From c8750c018661ef51813d8664137561f4db3eaf5e Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Fri, 15 Nov 2024 16:29:26 -0700 Subject: [PATCH 01/32] GSA: Export Connector Logs --- .../how-to-export-connector-logs.md | 146 ++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 docs/global-secure-access/how-to-export-connector-logs.md diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md new file mode 100644 index 00000000000..abd92e31153 --- /dev/null +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -0,0 +1,146 @@ +--- +title: Export connector logs to the Log Analytics workspace +description: Extract connector logs and send those logs to the Log Analytics workspace in the customer’s Azure subscription. +ms.service: global-secure-access +ms.topic: how-to +ms.date: 10/22/2024 +ms.author: jayrusso +author: HULKsmashGithub +manager: amycolannino +ms.reviewer: sumeetmittal + + +# Customer intent: As an administrator, I want to extract private network connector logs from on-premises connector machines deployed on the customer's network and send those logs to the Log Analytics workspace in the customer’s Azure subscription. +--- +# Export private network connector logs to the Log Analytics workspace + +This article describes how to extract private network connector logs from connector machines deployed on the customer's network and send those logs to the Log Analytics workspace in the customer’s Azure subscription. This is done using Azure Arc and its extensions. The logs stay under the customer's control and management in their Azure environment. This ensures that customers keep full ownership and security of their data. + +## Prerequisites + +To complete the steps in this process, you must have the following prerequisites in place: + +- An active Azure subscription. +- An on-premises Windows machine running Microsoft Entra Private Network Connector that you want to connect to Azure Log Analytics. For more information, see [Understand the Microsoft Entra private network connector](concept-connectors.md). +- Access to navigate and execute commands in the Azure portal. +- A Microsoft Azure Arc account to manage on-premises and multicloud resources. For more information, see [Azure Arc overview](/azure/azure-arc/overview). + +## Extract connector logs +To extract connector logs, you must enable verbose logging on the connector machine and then stream the logs to Log Analytics. + +### Enable verbose logging on the connector machine +Verbose logs can be very useful when debugging Microsoft Entra Private Network Connector side issues for Entra Private Access. Verbose logging is not enabled in the connector by default. To enable verbose logging: + +1. Locate the installation directory of the connector at `C:\Program Files\Microsoft Entra Private Network Connector`. +2. + +### Set up Microsoft Azure Arc for the on-premises machine + + +### Set up the Log Analytics workspace + + +### Set up the data collection endpoint (DCE) + + +### Set up the data collection rule (DCR) + + +### Verify data collection + + + +## Share workspace access +Once you have the logs into the Log Analytics workspace, you can expose the logs to a user outside your tenant by sharing access to the workspace in a secure manner. One use case could be to grant access to support personnel (as required) for any support issues. Support personnel could be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer) or the customer’s own support network. This would help with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), by extension, customer satisfaction. + +Here are the steps to achieve this: + +Prerequisites + +Azure Subscription: Ensure you have an active Azure subscription. + +Log Analytics Workspace: An existing Log Analytics workspace that you want to share. + +Azure AD Guest User: The external user must be added as a guest user in your Azure Active Directory (AD). + +Step-by-Step Instructions + +Step 1: Add External User as a Guest in Azure AD + +Navigate to Azure Active Directory: + +Go to the Azure Portal. + +In the search bar, type "Microsoft Entra ID" and select it. + +Add a New Guest User: + +In the Entra ID dashboard, select "Manage->Users". + +Click on "+ New user" and then select "Invite external user". + +Enter the external user's email address and fill in the required information. + +Click "Invite" to send an invitation to the external user. + +The external user receives an email invitation to join your Entra ID as a guest. + +Step 2: Assign Roles to the Guest User in Log Analytics Workspace + +Navigate to the Log Analytics Workspace: + +In the Azure Portal, search for "Log Analytics workspaces" and select the workspace you want to share. + +Access Control (IAM): + +In the workspace blade, select "Access control (IAM)" from the left-hand menu. + +Click on "+ Add" and select "Add role assignment". + +Assign a Role: + +Select a role to assign to the guest user. Common roles for accessing Log Analytics include: + +Log Analytics Reader: Allows the user to read and query logs. + +Log Analytics Contributor: Allows the user to read, query, and modify logs. + +Add the Guest User: + +In the "Members" section, click "Select members". + +Search for the guest user you added earlier by their email address. + +Select the guest user and click "Select". + +Review and Assign: + +Review the role assignment and click "Review + assign" to complete the process. + +Step 3: Ensure Permissions Are Properly Set + +Verify Permissions: + +The guest user should now have access to the Log Analytics workspace with the permissions assigned. + +You can verify by going to "Access control (IAM)" in the Log Analytics workspace and checking the role assignments. + +Step 4: External User Access and Query Logs + +External User Access: + +The external user will need to accept the invitation sent to their email and log into the Azure Portal using their credentials. + +Accessing Log Analytics: + +Once logged in, the external user can navigate to the Log Analytics workspace shared with them. + +They can use the Log Analytics workspace's "Logs" feature to query and analyze logs based on the permissions granted. + +Additional Considerations + +Security: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. + +Monitoring and Auditing: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. + +By following these steps, you can securely expose your Azure Log Analytics workspace to a user outs \ No newline at end of file From 9dae6dbd76ff1a7425c534f631f4acba25f2211c Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Fri, 15 Nov 2024 16:55:38 -0700 Subject: [PATCH 02/32] Updating metadata --- docs/global-secure-access/how-to-export-connector-logs.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index abd92e31153..98c526d2a29 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -3,9 +3,9 @@ title: Export connector logs to the Log Analytics workspace description: Extract connector logs and send those logs to the Log Analytics workspace in the customer’s Azure subscription. ms.service: global-secure-access ms.topic: how-to -ms.date: 10/22/2024 -ms.author: jayrusso -author: HULKsmashGithub +ms.date: 11/22/2024 +ms.author: jfields +author: jenniferf-skc manager: amycolannino ms.reviewer: sumeetmittal From 17dcbd896a7fd1386d66d06583d286862ec78985 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Thu, 21 Nov 2024 12:19:06 -0700 Subject: [PATCH 03/32] Adding more content --- .../how-to-export-connector-logs.md | 33 +++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 98c526d2a29..3d8c7f163a4 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -29,10 +29,39 @@ To complete the steps in this process, you must have the following prerequisites To extract connector logs, you must enable verbose logging on the connector machine and then stream the logs to Log Analytics. ### Enable verbose logging on the connector machine -Verbose logs can be very useful when debugging Microsoft Entra Private Network Connector side issues for Entra Private Access. Verbose logging is not enabled in the connector by default. To enable verbose logging: +Verbose logs are useful when debugging Microsoft Entra Private Network Connector side issues for Entra Private Access. Verbose logging is not enabled in the connector by default. To enable verbose logging: 1. Locate the installation directory of the connector at `C:\Program Files\Microsoft Entra Private Network Connector`. -2. +2. Create a folder on in the local directory with write permissions **On**. + To verify write permissions, + - Right-click on the folder you created, then click **Properties**. + - Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. + - If **Write** is not checked, select **edit**. + - On the pop-up window, select **allow** for the **write** row, then click **apply**. +3. Right-click on a text editor application such as Notepad or Notepad++, select **Run as Administrator**, and open the file `MicrosoftEntraPrivateNetworkConnector.exe.config`to edit. +4. Add the following higlighted section from to to the file in that location. + +``` json + + + + + + + + + + + + + + + + + + + +5. ### Set up Microsoft Azure Arc for the on-premises machine From c7fe6d6e00c6e5e523d65884b68200f1088004e0 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Fri, 22 Nov 2024 16:36:04 -0700 Subject: [PATCH 04/32] Adding more edited content --- .../how-to-export-connector-logs.md | 144 +++++++++++++++++- 1 file changed, 143 insertions(+), 1 deletion(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 3d8c7f163a4..94f750d4c67 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -61,7 +61,149 @@ Verbose logs are useful when debugging Microsoft Entra Private Network Connector -5. + +Next, we need to Stop and Start the Connector service for the above changes to take effect. + +5. Type **Services** in search box in taskbar, then go to **Services**. +6. Look for the **Microsoft Entra Private Network Connector** service from the Services list and select it. +7. Choose **Stop** the agent service, then **Start** the agent service again. At this point, you should see a text file labeled `connector_logs.log` in the C:\logs\ folder. + +> [!NOTE] +> When verbose logging isn't enabled, the default log file location is stored at `C:\Users\\AppData\Local\Temp`. When verbose logging is enabled, the log file is stored at `C:\logs\connector_logs.log`. +> Verbose logging can be enabled or disabled by adding or removing the lines specified in step 4. You must restart the service agent each time for the logging changes to take effect. + +### Set Up Azure Arc for On-Premises Machine +1. Get the script for enabling Azure Arc for the on-premises machine: + - Go to the Azure Portal. + - Search for **Azure Arc** in the search bar. + - Go to **Azure Arc resources > Machines**. + - Click on **Add/Create > Add a Machine**. + - Add a single server > click on **Generate Script**. + - Fill in the information, then click **Download and Run Script**. +2. Install Azure Arc Agent on On-Premises Connector Machine: + - Download the Azure Arc agent setup script from the Azure portal or Microsoft documentation. + - Search for “Windows Powershell ISE” in the search box on the Task bar. Right click on the application and click “Run as administrator.” + From the application open the file just downloaded labeled “OnboardingScript.ps1” through Powershell. + - Run the script. Log in on the pop up to authenticate using the Azure account. The screen will then look like: + +### Set Up Log Analytics Workspace +o Go to the Azure Portal. +o Create a Log Analytics Workspace: +o In the search bar, type "Log Analytics" and select "Log Analytics workspaces". +o Click "Create". +o Fill in the necessary details: + Subscription: Select your subscription. + Resource Group: Select an existing resource group or create a new one. + Name: Provide a unique name for the Log Analytics workspace. + Region: Choose the region closest to your on-premise machine. +o Click "Review + create" and then "Create". +o Create a table under that workspace. +o Select the workspace name you just created. +o Navigate to Workspace -> Settings -> Tables +o Click on Create -> New Custom Log (MMA-based) +o Select log file from the VM location (C:\logs\connector_logs.log) +o Set delimiter as New Line +o Add Collection Path Type – windows & Path as C:\logs\connector_logs.log +o Click Create. +Step 4: Set Up Data Collection Endpoint (DCE) +o Go to the Azure Portal. +o In the search bar, search for "Data Collection Endpoint" +o Click "Create". +o Provide a name and region for the DCE. +o Click "Review + create" and then "Create". +Step 5: Set Up Data Collection Rule (DCR) +o Go to the Azure Portal. +o In the search bar, search for "Data Collection Rule" +o Click "Create". +o Fill in the necessary details: + Subscription: Select your subscription. + Resource Group: Select the same resource group as your Log Analytics workspace. + Name: Provide a name for the DCR. + Region: Choose the same region as your Log Analytics workspace. + Platform: Windows + Data collection Endpoint: Select data collection endpoint you created in previous step +o Click Next: Resources + Add resources + Open your subscription + Select your resource group from the list + Click apply + You should be able to see your VM name in resources +o Click Next: Collect and deliver + Click "Add data source". + For the Data source type, select "Custom Text logs". + Specify the paths to the logs on your on-premise Windows machine (e.g., C:\logs\ connector_logs.log). + Enter the table name you created under log analytics workspace. +• To get the “table name,” open a new tab and navigate to the azure portal and search for “Log Analytics Workspaces.” Select the table you created. Click on “setting” and open the “tables.” Find the name of the “custom table (classic).” + Click "Add" and then "Next: Destination". +o Configure Destination: + Destination Type-> Azure Monitor Logs + Select your subscription + Select your Log Analytics workspace as the destination. + Ensure your Data Collection Endpoint is selected. + Click "Next: Review + create" and then "Create". +Step 6: Verify Data Collection +o Check Data in Log Analytics: + After installing and configuring the agent, it may take some time for data to start appearing. + In the Azure portal, go to your Log Analytics workspace > Select your Workspace. + Navigate to "Logs", click exit on the pop up hub > “Custom Logs” > Double Click on your log name. This should add it into the query. + Select Run. You should be able to can see your logs. +This setup allows you to collect text logs from on-premises Windows machines and send them to Azure Log Analytics using Azure Arc. The data collection rule ensures the logs are collected as per the defined paths, and the agent sends them to your Log Analytics workspace. + + 7. Share access to your workspace +Once you have the logs into the Log Analytics workspace, you can expose the logs to a user outside your tenant by sharing access to the workspace in a secure manner. One use case could be to grant access to support personnel (as required) for any support issues. Support personnel could be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer) or the customer’s own support network. This would help with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), by extension, customer satisfaction. + +Here are the steps to achieve this: +Prerequisites +1. Azure Subscription: Ensure you have an active Azure subscription. +2. Log Analytics Workspace: An existing Log Analytics workspace that you want to share. +3. Azure AD Guest User: The external user must be added as a guest user in your Azure Active Directory (AD). +Step-by-Step Instructions +Step 1: Add External User as a Guest in Azure AD +1. Navigate to Azure Active Directory: +o Go to the Azure Portal. +o In the search bar, type "Microsoft Entra ID" and select it. +2. Add a New Guest User: +o In the Entra ID dashboard, select "Manage->Users". +o Click on "+ New user" and then select "Invite external user". +o Enter the external user's email address and fill in the required information. +o Click "Invite" to send an invitation to the external user. +The external user will receive an email invitation to join your Entra ID as a guest. +Step 2: Assign Roles to the Guest User in Log Analytics Workspace +1. Navigate to the Log Analytics Workspace: +o In the Azure Portal, search for "Log Analytics workspaces" and select the workspace you want to share. +2. Access Control (IAM): +o In the workspace blade, select "Access control (IAM)" from the left-hand menu. +o Click on "+ Add" and select "Add role assignment". +3. Assign a Role: +o Select a role to assign to the guest user. Common roles for accessing Log Analytics include: + Log Analytics Reader: Allows the user to read and query logs. + Log Analytics Contributor: Allows the user to read, query, and modify logs. +4. Add the Guest User: +o In the "Members" section, click "Select members". +o Search for the guest user you added earlier by their email address. +o Select the guest user and click "Select". +5. Review and Assign: +o Review the role assignment and click "Review + assign" to complete the process. +Step 3: Ensure Permissions Are Properly Set +1. Verify Permissions: +o The guest user should now have access to the Log Analytics workspace with the permissions assigned. +o You can verify by going to "Access control (IAM)" in the Log Analytics workspace and checking the role assignments. +Step 4: External User Access and Query Logs +1. External User Access: +o The external user will need to accept the invitation sent to their email and log into the Azure Portal using their credentials. +2. Accessing Log Analytics: +o Once logged in, the external user can navigate to the Log Analytics workspace shared with them. +o They can use the Log Analytics workspace's "Logs" feature to query and analyze logs based on the permissions granted. +Additional Considerations +• Security: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. +• Monitoring and Auditing: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. +By following these steps, you can securely expose your Azure Log Analytics workspace to a user outside your tenant, allowing them to access and query logs as needed. + + +--------- + +5. Next, Stop and Start the Connector service for the changes to take effect. + - Type ### Set up Microsoft Azure Arc for the on-premises machine From 6a562eefad1845a72f3b197ec71011f32cf3f4e3 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Fri, 22 Nov 2024 16:41:59 -0700 Subject: [PATCH 05/32] Fixing code block --- docs/global-secure-access/how-to-export-connector-logs.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 94f750d4c67..90afe28cf50 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -41,6 +41,7 @@ Verbose logs are useful when debugging Microsoft Entra Private Network Connector 3. Right-click on a text editor application such as Notepad or Notepad++, select **Run as Administrator**, and open the file `MicrosoftEntraPrivateNetworkConnector.exe.config`to edit. 4. Add the following higlighted section from to to the file in that location. + ``` json @@ -60,7 +61,8 @@ Verbose logs are useful when debugging Microsoft Entra Private Network Connector - + +``` Next, we need to Stop and Start the Connector service for the above changes to take effect. From b6e217be495d9825dfc3ce21e91aafe3b6f5b86f Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Fri, 22 Nov 2024 16:48:11 -0700 Subject: [PATCH 06/32] Fixing code block --- .../how-to-export-connector-logs.md | 31 +++++++++---------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 90afe28cf50..5ec8966fc8a 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -45,22 +45,21 @@ Verbose logs are useful when debugging Microsoft Entra Private Network Connector ``` json - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + ``` From 31f2f880232aaa36b17f84811654d8a0998a4d46 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Tue, 26 Nov 2024 10:21:17 -0700 Subject: [PATCH 07/32] Adding more content --- docs/global-secure-access/how-to-export-connector-logs.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 5ec8966fc8a..e7c879add16 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -81,9 +81,9 @@ Next, we need to Stop and Start the Connector service for the above changes to t - Click on **Add/Create > Add a Machine**. - Add a single server > click on **Generate Script**. - Fill in the information, then click **Download and Run Script**. -2. Install Azure Arc Agent on On-Premises Connector Machine: +2. Install Azure Arc Agent on on-premises Connector Machine: - Download the Azure Arc agent setup script from the Azure portal or Microsoft documentation. - - Search for “Windows Powershell ISE” in the search box on the Task bar. Right click on the application and click “Run as administrator.” + - Search for **Windows Powershell ISE** in the search box on the Task bar. Right click on the application and click “Run as administrator.” From the application open the file just downloaded labeled “OnboardingScript.ps1” through Powershell. - Run the script. Log in on the pop up to authenticate using the Azure account. The screen will then look like: From 1b25f629f1aca5517a46c440009f9df0c7b4bb69 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Tue, 26 Nov 2024 15:47:53 -0700 Subject: [PATCH 08/32] Finish adding all original content --- .../how-to-export-connector-logs.md | 339 ++++++------------ 1 file changed, 118 insertions(+), 221 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index e7c879add16..4715789a37a 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -3,7 +3,7 @@ title: Export connector logs to the Log Analytics workspace description: Extract connector logs and send those logs to the Log Analytics workspace in the customer’s Azure subscription. ms.service: global-secure-access ms.topic: how-to -ms.date: 11/22/2024 +ms.date: 11/26/2024 ms.author: jfields author: jenniferf-skc manager: amycolannino @@ -75,7 +75,7 @@ Next, we need to Stop and Start the Connector service for the above changes to t ### Set Up Azure Arc for On-Premises Machine 1. Get the script for enabling Azure Arc for the on-premises machine: - - Go to the Azure Portal. + - Go to the [Azure Portal](https://portal.azure.com/). - Search for **Azure Arc** in the search bar. - Go to **Azure Arc resources > Machines**. - Click on **Add/Create > Add a Machine**. @@ -83,236 +83,133 @@ Next, we need to Stop and Start the Connector service for the above changes to t - Fill in the information, then click **Download and Run Script**. 2. Install Azure Arc Agent on on-premises Connector Machine: - Download the Azure Arc agent setup script from the Azure portal or Microsoft documentation. - - Search for **Windows Powershell ISE** in the search box on the Task bar. Right click on the application and click “Run as administrator.” - From the application open the file just downloaded labeled “OnboardingScript.ps1” through Powershell. - - Run the script. Log in on the pop up to authenticate using the Azure account. The screen will then look like: + - Search for **Windows PowerShell ISE** in the search box on the Task bar. Right click on the application, then click **Run as administrator**. + From PowerShell, open the downloaded file labeled `OnboardingScript.ps1`. + - Run the script. + - Log in on the pop up window to authenticate using the Azure account credentials. The screen returns a message that reads: + `Authentication complete. You can return to the application. Feel free to close this browser tab.` ### Set Up Log Analytics Workspace -o Go to the Azure Portal. -o Create a Log Analytics Workspace: -o In the search bar, type "Log Analytics" and select "Log Analytics workspaces". -o Click "Create". -o Fill in the necessary details: - Subscription: Select your subscription. - Resource Group: Select an existing resource group or create a new one. - Name: Provide a unique name for the Log Analytics workspace. - Region: Choose the region closest to your on-premise machine. -o Click "Review + create" and then "Create". -o Create a table under that workspace. -o Select the workspace name you just created. -o Navigate to Workspace -> Settings -> Tables -o Click on Create -> New Custom Log (MMA-based) -o Select log file from the VM location (C:\logs\connector_logs.log) -o Set delimiter as New Line -o Add Collection Path Type – windows & Path as C:\logs\connector_logs.log -o Click Create. -Step 4: Set Up Data Collection Endpoint (DCE) -o Go to the Azure Portal. -o In the search bar, search for "Data Collection Endpoint" -o Click "Create". -o Provide a name and region for the DCE. -o Click "Review + create" and then "Create". -Step 5: Set Up Data Collection Rule (DCR) -o Go to the Azure Portal. -o In the search bar, search for "Data Collection Rule" -o Click "Create". -o Fill in the necessary details: - Subscription: Select your subscription. - Resource Group: Select the same resource group as your Log Analytics workspace. - Name: Provide a name for the DCR. - Region: Choose the same region as your Log Analytics workspace. - Platform: Windows - Data collection Endpoint: Select data collection endpoint you created in previous step -o Click Next: Resources - Add resources - Open your subscription - Select your resource group from the list - Click apply - You should be able to see your VM name in resources -o Click Next: Collect and deliver - Click "Add data source". - For the Data source type, select "Custom Text logs". - Specify the paths to the logs on your on-premise Windows machine (e.g., C:\logs\ connector_logs.log). - Enter the table name you created under log analytics workspace. -• To get the “table name,” open a new tab and navigate to the azure portal and search for “Log Analytics Workspaces.” Select the table you created. Click on “setting” and open the “tables.” Find the name of the “custom table (classic).” - Click "Add" and then "Next: Destination". -o Configure Destination: - Destination Type-> Azure Monitor Logs - Select your subscription - Select your Log Analytics workspace as the destination. - Ensure your Data Collection Endpoint is selected. - Click "Next: Review + create" and then "Create". -Step 6: Verify Data Collection -o Check Data in Log Analytics: - After installing and configuring the agent, it may take some time for data to start appearing. - In the Azure portal, go to your Log Analytics workspace > Select your Workspace. - Navigate to "Logs", click exit on the pop up hub > “Custom Logs” > Double Click on your log name. This should add it into the query. - Select Run. You should be able to can see your logs. -This setup allows you to collect text logs from on-premises Windows machines and send them to Azure Log Analytics using Azure Arc. The data collection rule ensures the logs are collected as per the defined paths, and the agent sends them to your Log Analytics workspace. - - 7. Share access to your workspace -Once you have the logs into the Log Analytics workspace, you can expose the logs to a user outside your tenant by sharing access to the workspace in a secure manner. One use case could be to grant access to support personnel (as required) for any support issues. Support personnel could be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer) or the customer’s own support network. This would help with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), by extension, customer satisfaction. +1. Go to the [Azure Portal](https://portal.azure.com/). +2. Create a Log Analytics workspace: + - In the search bar, type **Log Analytics** and select **Log Analytics workspaces**. + - Click **Create**. + - Fill in the necessary details: + - **Subscription**: Select your subscription. + - **Resource Group**: Select an existing resource group or create a new one. + - **Name**: Provide a unique name for the Log Analytics workspace. + - **Region**: Choose the region closest to your on-premise machine. + - Click **Review + create** and then **Create**. +3. Create a table under the new workspace. + - Select the workspace name you just created. + - Navigate to **Workspace -> Settings -> Tables**. + - Click **Create -> New Custom Log (MMA-based)**. + - Select log file from the VM location (`C:\logs\connector_logs.log`). + - Set delimiter as New Line. + - Add Collection Path Type – windows & Path as `C:\logs\connector_logs.log`. + - Click **Create**. + +### Set Up Data Collection Endpoint (DCE) +1. Go to the [Azure Portal](https://portal.azure.com/). +2. In the search bar, search for **Data Collection Endpoint**. +3. Click **Create**. +4. Provide a name and region for the DCE. +5. Click **Review + create** and then **Create**. + +### Set Up Data Collection Rule (DCR) +1. Go to the [Azure Portal](https://portal.azure.com/). +2. In the search bar, search for **Data Collection Rule**. +3. Click **Create**. +4. Fill in the necessary details: + - **Subscription**: Select your subscription. + - **Resource Group**: Select the same resource group as your Log Analytics workspace. + - **Name**: Provide a name for the DCR. + - **Region**: Choose the same region as your Log Analytics workspace. + - **Platform**: Windows. + - **Data collection Endpoint**: Select data collection endpoint you created in previous step. +5. Click Next: Resources + - Add resources. + - Open your subscription. + - Select your resource group from the list. + - Click apply. You should see your VM name list in the resources. +6. Click Next: Collect and deliver + - Click **Add data source**. + - For the Data source type, select "Custom Text logs". + - Specify the paths to the logs on your on-premise Windows machine (e.g., C:\logs\ connector_logs.log). + - Enter the table name you created under log analytics workspace. + To get the table name, open a new tab and navigate to the azure portal and search for **Log Analytics Workspaces**. Select the table you created. Click on **setting** and open the + tables. Find the name of the **custom table (classic)**. + - Click **Add** and then **Next: Destination**. +7. Configure Destination: + - Destination **Type-> Azure Monitor Logs**. + - Select your subscription. + - Select your Log Analytics workspace as the destination. + - Ensure your Data Collection Endpoint is selected. + - Click **Next: Review + create** and then **Create**. + +### Verify Data Collection +1. Check Data in Log Analytics: + - After installing and configuring the agent, it may take some time for data to start appearing. + - In the Azure portal, go to your Log Analytics workspace > Select your Workspace. + - Navigate to **Logs**, click exit on the pop up hub > **Custom Logs** > Double Click on your log name. This adds the log name into the query. + - Select **Run**. You'll see your logs. + This setup allows you to collect text logs from on-premises Windows machines and send them to Azure Log Analytics using Azure Arc. The data collection rule ensures the logs are + collected as per the defined paths, and the agent sends them to your Log Analytics workspace. + +## Share access to your workspace +Once you have the logs into the Log Analytics workspace, you can expose the logs to a user outside of your tenant by sharing access to the workspace in a secure manner. One use case is to grant access to support personnel (as required) for any support issues. Support personnel can be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer) or the customer’s own support network. This helps with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), by extension, customer satisfaction. Here are the steps to achieve this: -Prerequisites -1. Azure Subscription: Ensure you have an active Azure subscription. -2. Log Analytics Workspace: An existing Log Analytics workspace that you want to share. -3. Azure AD Guest User: The external user must be added as a guest user in your Azure Active Directory (AD). -Step-by-Step Instructions -Step 1: Add External User as a Guest in Azure AD + +### Prerequisites + +1. **Azure Subscription**: Ensure you have an active Azure subscription. +2. **Log Analytics Workspace**: An existing Log Analytics workspace that you want to share. +3. **Azure AD Guest User**: The external user must be added as a guest user in your Azure Active Directory (AD). + +### Add External User as a Guest in Azure AD 1. Navigate to Azure Active Directory: -o Go to the Azure Portal. -o In the search bar, type "Microsoft Entra ID" and select it. + - Go to the [Azure Portal](https://portal.azure.com/). + - In the search bar, type **Microsoft Entra ID**, then select it. 2. Add a New Guest User: -o In the Entra ID dashboard, select "Manage->Users". -o Click on "+ New user" and then select "Invite external user". -o Enter the external user's email address and fill in the required information. -o Click "Invite" to send an invitation to the external user. -The external user will receive an email invitation to join your Entra ID as a guest. -Step 2: Assign Roles to the Guest User in Log Analytics Workspace + - In the Microsoft Entra ID dashboard, select **Manage -> Users**. + - Click on **+ New user**, then select **Invite external user**. + - Enter the external user's email address and fill in the required information. + - Click **Invite** to send an invitation to the external user. +The external user receives an email invitation to join your Microsoft Entra ID page as a guest. + +### Assign Roles to the Guest User in Log Analytics Workspace 1. Navigate to the Log Analytics Workspace: -o In the Azure Portal, search for "Log Analytics workspaces" and select the workspace you want to share. + - In the Azure Portal, search for **Log Analytics workspaces**, then select the workspace you want to share. 2. Access Control (IAM): -o In the workspace blade, select "Access control (IAM)" from the left-hand menu. -o Click on "+ Add" and select "Add role assignment". + - In the workspace blade, select **Access control (IAM)** from the left-hand menu. + - Click on **+ Add**, then select **Add role assignment**. 3. Assign a Role: -o Select a role to assign to the guest user. Common roles for accessing Log Analytics include: - Log Analytics Reader: Allows the user to read and query logs. - Log Analytics Contributor: Allows the user to read, query, and modify logs. + - Select a role to assign to the guest user. Common roles for accessing Log Analytics include: + - Log Analytics Reader: Allows the user to read and query logs. + - Log Analytics Contributor: Allows the user to read, query, and modify logs. 4. Add the Guest User: -o In the "Members" section, click "Select members". -o Search for the guest user you added earlier by their email address. -o Select the guest user and click "Select". + - In the Members section, click **Select members**. + - Search for the guest user you added earlier by their email address. + - Select the guest user and click **Select**. 5. Review and Assign: -o Review the role assignment and click "Review + assign" to complete the process. -Step 3: Ensure Permissions Are Properly Set + - Review the role assignment and click "Review + assign" to complete the process. + +### Ensure Permissions Are Properly Set 1. Verify Permissions: -o The guest user should now have access to the Log Analytics workspace with the permissions assigned. -o You can verify by going to "Access control (IAM)" in the Log Analytics workspace and checking the role assignments. -Step 4: External User Access and Query Logs -1. External User Access: -o The external user will need to accept the invitation sent to their email and log into the Azure Portal using their credentials. -2. Accessing Log Analytics: -o Once logged in, the external user can navigate to the Log Analytics workspace shared with them. -o They can use the Log Analytics workspace's "Logs" feature to query and analyze logs based on the permissions granted. -Additional Considerations -• Security: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. -• Monitoring and Auditing: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. + - The guest user should now have access to the Log Analytics workspace with the permissions assigned. + - You can verify by going to "Access control (IAM)" in the Log Analytics workspace and checking the role assignments. + +### External User Access and Query Logs +1. **External User Access**: + - The external user needs to accept the invitation sent to their email and log into the Azure Portal using their credentials. +2. **Accessing Log Analytics**: + - Once logged in, the external user navigates to the Log Analytics workspace shared with them. + - They can use the Log Analytics workspace's **Logs** feature to query and analyze logs based on the permissions granted. + +### Additional Considerations +• **Security**: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. +• **Monitoring and Auditing**: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. By following these steps, you can securely expose your Azure Log Analytics workspace to a user outside your tenant, allowing them to access and query logs as needed. - ---------- - -5. Next, Stop and Start the Connector service for the changes to take effect. - - Type - -### Set up Microsoft Azure Arc for the on-premises machine - - -### Set up the Log Analytics workspace - - -### Set up the data collection endpoint (DCE) - - -### Set up the data collection rule (DCR) - - -### Verify data collection - - - -## Share workspace access -Once you have the logs into the Log Analytics workspace, you can expose the logs to a user outside your tenant by sharing access to the workspace in a secure manner. One use case could be to grant access to support personnel (as required) for any support issues. Support personnel could be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer) or the customer’s own support network. This would help with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), by extension, customer satisfaction. - -Here are the steps to achieve this: - -Prerequisites - -Azure Subscription: Ensure you have an active Azure subscription. - -Log Analytics Workspace: An existing Log Analytics workspace that you want to share. - -Azure AD Guest User: The external user must be added as a guest user in your Azure Active Directory (AD). - -Step-by-Step Instructions - -Step 1: Add External User as a Guest in Azure AD - -Navigate to Azure Active Directory: - -Go to the Azure Portal. - -In the search bar, type "Microsoft Entra ID" and select it. - -Add a New Guest User: - -In the Entra ID dashboard, select "Manage->Users". - -Click on "+ New user" and then select "Invite external user". - -Enter the external user's email address and fill in the required information. - -Click "Invite" to send an invitation to the external user. - -The external user receives an email invitation to join your Entra ID as a guest. - -Step 2: Assign Roles to the Guest User in Log Analytics Workspace - -Navigate to the Log Analytics Workspace: - -In the Azure Portal, search for "Log Analytics workspaces" and select the workspace you want to share. - -Access Control (IAM): - -In the workspace blade, select "Access control (IAM)" from the left-hand menu. - -Click on "+ Add" and select "Add role assignment". - -Assign a Role: - -Select a role to assign to the guest user. Common roles for accessing Log Analytics include: - -Log Analytics Reader: Allows the user to read and query logs. - -Log Analytics Contributor: Allows the user to read, query, and modify logs. - -Add the Guest User: - -In the "Members" section, click "Select members". - -Search for the guest user you added earlier by their email address. - -Select the guest user and click "Select". - -Review and Assign: - -Review the role assignment and click "Review + assign" to complete the process. - -Step 3: Ensure Permissions Are Properly Set - -Verify Permissions: - -The guest user should now have access to the Log Analytics workspace with the permissions assigned. - -You can verify by going to "Access control (IAM)" in the Log Analytics workspace and checking the role assignments. - -Step 4: External User Access and Query Logs - -External User Access: - -The external user will need to accept the invitation sent to their email and log into the Azure Portal using their credentials. - -Accessing Log Analytics: - -Once logged in, the external user can navigate to the Log Analytics workspace shared with them. - -They can use the Log Analytics workspace's "Logs" feature to query and analyze logs based on the permissions granted. - -Additional Considerations - -Security: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. - -Monitoring and Auditing: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. - -By following these steps, you can securely expose your Azure Log Analytics workspace to a user outs \ No newline at end of file +## Next steps From 52ae891f0b3d5ba22f1ef0209d414ce0822ca605 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Tue, 26 Nov 2024 15:53:22 -0700 Subject: [PATCH 09/32] Editing some format --- docs/global-secure-access/how-to-export-connector-logs.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 4715789a37a..68f70b4e2a9 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -208,8 +208,8 @@ The external user receives an email invitation to join your Microsoft Entra ID p - They can use the Log Analytics workspace's **Logs** feature to query and analyze logs based on the permissions granted. ### Additional Considerations -• **Security**: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. -• **Monitoring and Auditing**: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. +- **Security**: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. +- **Monitoring and Auditing**: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. By following these steps, you can securely expose your Azure Log Analytics workspace to a user outside your tenant, allowing them to access and query logs as needed. ## Next steps From a3d82140de7a8c5a492aabaaff725eb8f8d9e7bd Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 27 Nov 2024 14:47:48 -0700 Subject: [PATCH 10/32] Acrolinx and other content edits --- .../how-to-export-connector-logs.md | 144 ++++++++++-------- 1 file changed, 81 insertions(+), 63 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 68f70b4e2a9..dff2e585e76 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -14,7 +14,7 @@ ms.reviewer: sumeetmittal --- # Export private network connector logs to the Log Analytics workspace -This article describes how to extract private network connector logs from connector machines deployed on the customer's network and send those logs to the Log Analytics workspace in the customer’s Azure subscription. This is done using Azure Arc and its extensions. The logs stay under the customer's control and management in their Azure environment. This ensures that customers keep full ownership and security of their data. +This article describes how to extract private network connector logs from connector machines that are deployed on the customer's network. Once extracted, those logs can be sent to the Log Analytics workspace in the customer’s Azure subscription. Extracting these logs is performed using Azure Arc and its extensions. Customers retain control and management of the logs in their Azure environment, which ensures that customers keep full ownership and security of their data. ## Prerequisites @@ -29,68 +29,85 @@ To complete the steps in this process, you must have the following prerequisites To extract connector logs, you must enable verbose logging on the connector machine and then stream the logs to Log Analytics. ### Enable verbose logging on the connector machine -Verbose logs are useful when debugging Microsoft Entra Private Network Connector side issues for Entra Private Access. Verbose logging is not enabled in the connector by default. To enable verbose logging: +Verbose logs are useful when debugging Microsoft Entra Private Network Connector side issues for Entra Private Access. Verbose logging isn't enabled in the connector by default. + +To enable verbose logging: 1. Locate the installation directory of the connector at `C:\Program Files\Microsoft Entra Private Network Connector`. 2. Create a folder on in the local directory with write permissions **On**. - To verify write permissions, + + To verify write permissions: - Right-click on the folder you created, then click **Properties**. - - Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. - - If **Write** is not checked, select **edit**. + - Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. If **Write** isn't checked, select **edit**. - On the pop-up window, select **allow** for the **write** row, then click **apply**. -3. Right-click on a text editor application such as Notepad or Notepad++, select **Run as Administrator**, and open the file `MicrosoftEntraPrivateNetworkConnector.exe.config`to edit. -4. Add the following higlighted section from to to the file in that location. +3. Right-click on a text editor application such as Notepad or Notepad++, select **Run as Administrator**, and open the file `MicrosoftEntraPrivateNetworkConnector.exe.config` to edit. +4. From this section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. ``` json + - - - - - - + +  + +     + +  + +  + +    + +  + - - - - - - - - - + +  + +    + +      + +      + +      + +    + +  + + ``` -Next, we need to Stop and Start the Connector service for the above changes to take effect. +Next, you need to Stop and Start the Connector service for the above changes to take effect. 5. Type **Services** in search box in taskbar, then go to **Services**. 6. Look for the **Microsoft Entra Private Network Connector** service from the Services list and select it. -7. Choose **Stop** the agent service, then **Start** the agent service again. At this point, you should see a text file labeled `connector_logs.log` in the C:\logs\ folder. +7. Choose **Stop** the agent service, then **Start** the agent service again. At this point, you see a text file labeled `connector_logs.log` in the C:\logs\ folder. > [!NOTE] > When verbose logging isn't enabled, the default log file location is stored at `C:\Users\\AppData\Local\Temp`. When verbose logging is enabled, the log file is stored at `C:\logs\connector_logs.log`. > Verbose logging can be enabled or disabled by adding or removing the lines specified in step 4. You must restart the service agent each time for the logging changes to take effect. -### Set Up Azure Arc for On-Premises Machine +### Set up Azure Arc on the on-premises machine 1. Get the script for enabling Azure Arc for the on-premises machine: - - Go to the [Azure Portal](https://portal.azure.com/). + - Go to the [Azure portal](https://portal.azure.com/). - Search for **Azure Arc** in the search bar. - Go to **Azure Arc resources > Machines**. - Click on **Add/Create > Add a Machine**. - Add a single server > click on **Generate Script**. - Fill in the information, then click **Download and Run Script**. -2. Install Azure Arc Agent on on-premises Connector Machine: +2. Install the Azure Arc Agent on the on-premises connector machine: - Download the Azure Arc agent setup script from the Azure portal or Microsoft documentation. - Search for **Windows PowerShell ISE** in the search box on the Task bar. Right click on the application, then click **Run as administrator**. From PowerShell, open the downloaded file labeled `OnboardingScript.ps1`. - Run the script. - - Log in on the pop up window to authenticate using the Azure account credentials. The screen returns a message that reads: + - Log in on the pop-up window to authenticate using the Azure account credentials. The screen returns a message that reads: `Authentication complete. You can return to the application. Feel free to close this browser tab.` -### Set Up Log Analytics Workspace -1. Go to the [Azure Portal](https://portal.azure.com/). +### Set up Log Analytics workspace +1. Go to the [Azure portal](https://portal.azure.com/). 2. Create a Log Analytics workspace: - In the search bar, type **Log Analytics** and select **Log Analytics workspaces**. - Click **Create**. @@ -99,25 +116,25 @@ Next, we need to Stop and Start the Connector service for the above changes to t - **Resource Group**: Select an existing resource group or create a new one. - **Name**: Provide a unique name for the Log Analytics workspace. - **Region**: Choose the region closest to your on-premise machine. - - Click **Review + create** and then **Create**. + - Click **Review + create**, then **Create**. 3. Create a table under the new workspace. - - Select the workspace name you just created. + - Select the workspace name you created. - Navigate to **Workspace -> Settings -> Tables**. - Click **Create -> New Custom Log (MMA-based)**. - - Select log file from the VM location (`C:\logs\connector_logs.log`). - - Set delimiter as New Line. + - Select log file from the virtual machine (VM) location (`C:\logs\connector_logs.log`). + - Set delimiter as **New Line**. - Add Collection Path Type – windows & Path as `C:\logs\connector_logs.log`. - Click **Create**. -### Set Up Data Collection Endpoint (DCE) -1. Go to the [Azure Portal](https://portal.azure.com/). +### Set up data collection endpoint (DCE) +1. Go to the [Azure portal](https://portal.azure.com/). 2. In the search bar, search for **Data Collection Endpoint**. 3. Click **Create**. 4. Provide a name and region for the DCE. 5. Click **Review + create** and then **Create**. -### Set Up Data Collection Rule (DCR) -1. Go to the [Azure Portal](https://portal.azure.com/). +### Set up data collection rule (DCR) +1. Go to the [Azure portal](https://portal.azure.com/). 2. In the search bar, search for **Data Collection Rule**. 3. Click **Create**. 4. Fill in the necessary details: @@ -134,12 +151,12 @@ Next, we need to Stop and Start the Connector service for the above changes to t - Click apply. You should see your VM name list in the resources. 6. Click Next: Collect and deliver - Click **Add data source**. - - For the Data source type, select "Custom Text logs". - - Specify the paths to the logs on your on-premise Windows machine (e.g., C:\logs\ connector_logs.log). + - For the Data source type, select **Custom Text logs**. + - Specify the paths to the logs on your on-premise Windows machine (for example, C:\logs\ connector_logs.log). - Enter the table name you created under log analytics workspace. To get the table name, open a new tab and navigate to the azure portal and search for **Log Analytics Workspaces**. Select the table you created. Click on **setting** and open the tables. Find the name of the **custom table (classic)**. - - Click **Add** and then **Next: Destination**. + - Click **Add**, then **Next: Destination**. 7. Configure Destination: - Destination **Type-> Azure Monitor Logs**. - Select your subscription. @@ -147,19 +164,19 @@ Next, we need to Stop and Start the Connector service for the above changes to t - Ensure your Data Collection Endpoint is selected. - Click **Next: Review + create** and then **Create**. -### Verify Data Collection +### Verify data collection 1. Check Data in Log Analytics: - - After installing and configuring the agent, it may take some time for data to start appearing. + - After you've installed and configured the agent, it may take some time for data to start appearing. - In the Azure portal, go to your Log Analytics workspace > Select your Workspace. - - Navigate to **Logs**, click exit on the pop up hub > **Custom Logs** > Double Click on your log name. This adds the log name into the query. - - Select **Run**. You'll see your logs. + - Navigate to **Logs**, click exit on the pop-up hub > **Custom Logs** > Double Click on your log name. This adds the log name into the query. + - Select **Run**. You see your logs. This setup allows you to collect text logs from on-premises Windows machines and send them to Azure Log Analytics using Azure Arc. The data collection rule ensures the logs are collected as per the defined paths, and the agent sends them to your Log Analytics workspace. ## Share access to your workspace -Once you have the logs into the Log Analytics workspace, you can expose the logs to a user outside of your tenant by sharing access to the workspace in a secure manner. One use case is to grant access to support personnel (as required) for any support issues. Support personnel can be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer) or the customer’s own support network. This helps with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), by extension, customer satisfaction. +Once you have the logs into the Log Analytics workspace, you can securely open access the logs to an external user (outside of your tenant) by sharing your workspace. One use case is to grant access to support personnel (as required) for any support issues. Support personnel can be from Microsoft CSS (Customer Service & Support), Engineering OCE (On Call Engineer), or the customer’s own support network. Giving access to your workspace can help with swiftly diagnosing the problem, positively impacting the Mean Time to Recovery (MTTR) and Mean Time to Mitigate (MTTM), and by extension, customer satisfaction. -Here are the steps to achieve this: +Here are the steps to provide access to an external user: ### Prerequisites @@ -167,9 +184,9 @@ Here are the steps to achieve this: 2. **Log Analytics Workspace**: An existing Log Analytics workspace that you want to share. 3. **Azure AD Guest User**: The external user must be added as a guest user in your Azure Active Directory (AD). -### Add External User as a Guest in Azure AD -1. Navigate to Azure Active Directory: - - Go to the [Azure Portal](https://portal.azure.com/). +### Add external user as a guest in Azure Active Directory (AD) +1. Navigate to Azure AD: + - Go to the [Azure portal](https://portal.azure.com/). - In the search bar, type **Microsoft Entra ID**, then select it. 2. Add a New Guest User: - In the Microsoft Entra ID dashboard, select **Manage -> Users**. @@ -178,10 +195,10 @@ Here are the steps to achieve this: - Click **Invite** to send an invitation to the external user. The external user receives an email invitation to join your Microsoft Entra ID page as a guest. -### Assign Roles to the Guest User in Log Analytics Workspace +### Assign roles to the guest user in Log Analytics workspace 1. Navigate to the Log Analytics Workspace: - - In the Azure Portal, search for **Log Analytics workspaces**, then select the workspace you want to share. -2. Access Control (IAM): + - In the Azure portal, search for **Log Analytics workspaces**, then select the workspace you want to share. +2. Identity Access Control (IAM): - In the workspace blade, select **Access control (IAM)** from the left-hand menu. - Click on **+ Add**, then select **Add role assignment**. 3. Assign a Role: @@ -193,23 +210,24 @@ The external user receives an email invitation to join your Microsoft Entra ID p - Search for the guest user you added earlier by their email address. - Select the guest user and click **Select**. 5. Review and Assign: - - Review the role assignment and click "Review + assign" to complete the process. + - Review the role assignment and click **Review + assign** to complete the process. -### Ensure Permissions Are Properly Set +### Ensure permissions are properly set 1. Verify Permissions: - The guest user should now have access to the Log Analytics workspace with the permissions assigned. - - You can verify by going to "Access control (IAM)" in the Log Analytics workspace and checking the role assignments. + - You can verify by going to **Access control (IAM)** in the Log Analytics workspace and checking the role assignments. -### External User Access and Query Logs -1. **External User Access**: - - The external user needs to accept the invitation sent to their email and log into the Azure Portal using their credentials. -2. **Accessing Log Analytics**: +### External user access and query logs +1. External User Access: + - The external user needs to accept the invitation sent to their email and log into the Azure portal using their credentials. +2. Accessing Log Analytics: - Once logged in, the external user navigates to the Log Analytics workspace shared with them. - They can use the Log Analytics workspace's **Logs** feature to query and analyze logs based on the permissions granted. -### Additional Considerations -- **Security**: Ensure that you only grant the necessary permissions to the guest user. The principle of least privilege should be followed. +### Other considerations +- **Security**: Follow the principle of least privilege and ensure that you grant only the necessary permissions to the guest user. - **Monitoring and Auditing**: Regularly monitor and audit access to your Log Analytics workspace to ensure compliance and security. -By following these steps, you can securely expose your Azure Log Analytics workspace to a user outside your tenant, allowing them to access and query logs as needed. + +By following these steps, you can securely open your Azure Log Analytics workspace to a user outside of your tenant, allowing them to access and query logs as needed. ## Next steps From ba5cc575b4635519f7f6269c6c4e726d5225c752 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Tue, 3 Dec 2024 11:06:43 -0700 Subject: [PATCH 11/32] Addressing outstanding questions in the original Word document --- .../how-to-export-connector-logs.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index dff2e585e76..ce1c99aef49 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -3,7 +3,7 @@ title: Export connector logs to the Log Analytics workspace description: Extract connector logs and send those logs to the Log Analytics workspace in the customer’s Azure subscription. ms.service: global-secure-access ms.topic: how-to -ms.date: 11/26/2024 +ms.date: 12/03/2024 ms.author: jfields author: jenniferf-skc manager: amycolannino @@ -40,8 +40,9 @@ To enable verbose logging: - Right-click on the folder you created, then click **Properties**. - Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. If **Write** isn't checked, select **edit**. - On the pop-up window, select **allow** for the **write** row, then click **apply**. -3. Right-click on a text editor application such as Notepad or Notepad++, select **Run as Administrator**, and open the file `MicrosoftEntraPrivateNetworkConnector.exe.config` to edit. -4. From this section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. +3. Right-click on a text editor application such as Notepad or Notepad++, and select **Run as Administrator**. +4. Open the file `MicrosoftEntraPrivateNetworkConnector.exe.config` to edit. +5. From the following section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. ``` json @@ -99,7 +100,7 @@ Next, you need to Stop and Start the Connector service for the above changes to - Add a single server > click on **Generate Script**. - Fill in the information, then click **Download and Run Script**. 2. Install the Azure Arc Agent on the on-premises connector machine: - - Download the Azure Arc agent setup script from the Azure portal or Microsoft documentation. + - Download the Azure Arc agent setup script from the Azure portal. - Search for **Windows PowerShell ISE** in the search box on the Task bar. Right click on the application, then click **Run as administrator**. From PowerShell, open the downloaded file labeled `OnboardingScript.ps1`. - Run the script. @@ -182,10 +183,10 @@ Here are the steps to provide access to an external user: 1. **Azure Subscription**: Ensure you have an active Azure subscription. 2. **Log Analytics Workspace**: An existing Log Analytics workspace that you want to share. -3. **Azure AD Guest User**: The external user must be added as a guest user in your Azure Active Directory (AD). +3. **Microsoft Entra ID Guest User**: The external user must be added as a guest user in your Microsoft Entra ID. -### Add external user as a guest in Azure Active Directory (AD) -1. Navigate to Azure AD: +### Add external user as a guest in Microsoft Entra ID +1. Navigate to Microsoft Entra ID: - Go to the [Azure portal](https://portal.azure.com/). - In the search bar, type **Microsoft Entra ID**, then select it. 2. Add a New Guest User: From 97f2272e1e7f4a9b183bc6945a5fcda2874e6207 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Tue, 3 Dec 2024 11:36:51 -0700 Subject: [PATCH 12/32] Updating TOC and added Next steps --- docs/global-secure-access/how-to-export-connector-logs.md | 3 +++ docs/global-secure-access/toc.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index ce1c99aef49..e0f53db84a9 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -232,3 +232,6 @@ The external user receives an email invitation to join your Microsoft Entra ID p By following these steps, you can securely open your Azure Log Analytics workspace to a user outside of your tenant, allowing them to access and query logs as needed. ## Next steps + +[Understand the Microsoft Entra private network connector](concept-connectors.md) +[Learn about Microsoft Entra Private Access](concept-private-access.md) diff --git a/docs/global-secure-access/toc.yml b/docs/global-secure-access/toc.yml index fef1f772a88..04c16c9dc29 100644 --- a/docs/global-secure-access/toc.yml +++ b/docs/global-secure-access/toc.yml @@ -158,6 +158,8 @@ items: href: reference-event-enrichment-logs.md - name: How to use workbooks href: how-to-use-workbooks.md + - name: Export private network connector logs + href: how-to-export-connector-logs.md - name: Deployment guides expanded: false items: From dcd069ff7b2dd113fbc8440043fb5c5a36093163 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Tue, 3 Dec 2024 11:55:38 -0700 Subject: [PATCH 13/32] Fixing Next steps formatting --- docs/global-secure-access/how-to-export-connector-logs.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index e0f53db84a9..fc9c691a3b2 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -233,5 +233,5 @@ By following these steps, you can securely open your Azure Log Analytics workspa ## Next steps -[Understand the Microsoft Entra private network connector](concept-connectors.md) -[Learn about Microsoft Entra Private Access](concept-private-access.md) +- [Understand the Microsoft Entra private network connector](concept-connectors.md) +- [Learn about Microsoft Entra Private Access](concept-private-access.md) From 11adf3dc599efbf65c6e56db59c89ca977bade80 Mon Sep 17 00:00:00 2001 From: Mark Wahl Date: Wed, 4 Dec 2024 11:56:52 -0800 Subject: [PATCH 14/32] do not have IDs on roles always --- .../entitlement-management-access-package-create.md | 4 +++- .../entitlement-management-access-package-resources.md | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/id-governance/entitlement-management-access-package-create.md b/docs/id-governance/entitlement-management-access-package-create.md index a8f011ed64e..97216c84eb4 100644 --- a/docs/id-governance/entitlement-management-access-package-create.md +++ b/docs/id-governance/entitlement-management-access-package-create.md @@ -174,7 +174,7 @@ $ap = New-MgEntitlementManagementAccessPackage -BodyParameter $params ``` -After you create the access package, assign the resource roles to it. For example, if you want to include the first resource role of the resource returned earlier as a resource role of the new access package, you can use a script similar to this one: +After you create the access package, assign the resource roles to it. For example, if you want to include the first resource role of the resource returned earlier as a resource role of the new access package, and the role has an ID, you can use a script similar to this one: ```powershell @@ -201,6 +201,8 @@ $rparams = @{ New-MgEntitlementManagementAccessPackageResourceRoleScope -AccessPackageId $ap.Id -BodyParameter $rparams ``` +If the role does not have an ID, then don't include the `id` of the `role` in the request payload. + Finally, create the policies. In this policy, only the administrators or access package assignment managers can assign access, and there are no access reviews. For more examples, see [Create an assignment policy through PowerShell](entitlement-management-access-package-request-policy.md#create-an-access-package-assignment-policy-through-powershell) and [Create an assignmentPolicy](/graph/api/entitlementmanagement-post-assignmentpolicies?tabs=http&view=graph-rest-1.0&preserve-view=true). ```powershell diff --git a/docs/id-governance/entitlement-management-access-package-resources.md b/docs/id-governance/entitlement-management-access-package-resources.md index 798afdcf1d3..ef059822b6c 100644 --- a/docs/id-governance/entitlement-management-access-package-resources.md +++ b/docs/id-governance/entitlement-management-access-package-resources.md @@ -281,6 +281,8 @@ $rparams = @{ New-MgEntitlementManagementAccessPackageResourceRoleScope -AccessPackageId $apid -BodyParameter $rparams ``` +If the role does not have an ID, then don't include the `id` of the `role` in the request payload. + For more information, see [Create an access package in entitlement management for an application with a single role using PowerShell](entitlement-management-access-package-create-app.md). ## Remove resource roles From 7b5a6b08c4f5db03cfa055bfcf5bf0dec7adaf06 Mon Sep 17 00:00:00 2001 From: John Flores Date: Wed, 4 Dec 2024 16:33:18 -0500 Subject: [PATCH 15/32] Update policy-migration-mfa.md --- docs/identity/conditional-access/policy-migration-mfa.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/docs/identity/conditional-access/policy-migration-mfa.md b/docs/identity/conditional-access/policy-migration-mfa.md index 8ec1be166e6..94318e85732 100644 --- a/docs/identity/conditional-access/policy-migration-mfa.md +++ b/docs/identity/conditional-access/policy-migration-mfa.md @@ -5,7 +5,7 @@ description: This article shows how to migrate a classic Conditional Access poli ms.service: entra-id ms.subservice: conditional-access ms.topic: how-to -ms.date: 09/30/2024 +ms.date: 12/04/2024 ms.author: joflore author: MicrosoftGuyJFlo @@ -44,7 +44,6 @@ To disable your classic policy, select **Disable** in the **Details** view. ![Disable classic policies](./media/policy-migration-mfa/14.png) -## Related content +## Next steps -- [Conditional Access template policies](concept-conditional-access-policy-common.md) -- [Classic Conditional Access policies and Microsoft Defender for Endpoint connector](/mem/intune/protect/advanced-threat-protection-configure) +[Conditional Access template policies](concept-conditional-access-policy-common.md) From 1e2175630d9b9152be2420d203b7d333f5dee33e Mon Sep 17 00:00:00 2001 From: Mark Wahl Date: Wed, 4 Dec 2024 13:58:03 -0800 Subject: [PATCH 16/32] acrolinx spaces --- .../entitlement-management-access-package-resources.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/id-governance/entitlement-management-access-package-resources.md b/docs/id-governance/entitlement-management-access-package-resources.md index ef059822b6c..dc2eeafcfe9 100644 --- a/docs/id-governance/entitlement-management-access-package-resources.md +++ b/docs/id-governance/entitlement-management-access-package-resources.md @@ -59,7 +59,7 @@ If you want some users to receive different resource roles than others, then you In particular, applications can have multiple app roles. When you add an application's app role as a resource role to an access package, if that application has more than one app role, you need to specify the appropriate role for those users in the access package. > [!NOTE] -> If an application has multiple app roles, and more than one role of that application are in an access package, then the user will receive all those application's included roles. If instead you want users to only have some of the application's roles, then you will need to create multiple access packages in the catalog, with separate access packages for each of the app roles. +> If an application has multiple app roles, and more than one role of that application are in an access package, then the user will receive all those application's included roles. If instead you want users to only have some of the application's roles, then you will need to create multiple access packages in the catalog, with separate access packages for each of the app roles. In addition, applications can also rely upon security groups for expressing permissions. For example, an application might have a single app role `User` and also check the membership of two groups - a `Ordinary Users` group and a `Administrative Access` groups. A user of the application must be a member of exactly one of those two groups. If you wished to configure that users could request either permission, then you would put into a catalog three resources: the application, the group `Ordinary Users` and the group `Administrative Access`. Then, you would create in that catalog two access packages, and indicate each access package is [incompatible](entitlement-management-access-package-incompatible.md#scenarios-for-separation-of-duties-checks) with the other: @@ -141,7 +141,7 @@ If your application hasn't yet been integrated with your Microsoft Entra directo Applications can have multiple app roles defined in their manifest and managed through the [app roles UI](~/identity-platform/howto-add-app-roles-in-apps.md#app-roles-ui). When you add an application's app role as a resource role to an access package, if that application has more than one app role, you need to specify the appropriate role for those users in that access package. If you're developing applications, you can read more about how those roles are added to your applications in [How to: Configure the role claim issued in the SAML token for enterprise applications](~/identity-platform/enterprise-app-role-management.md). If you're using the Microsoft Authentication Libraries, there's also a [code sample](~/identity-platform/sample-v2-code.md) for how to use app roles for access control. > [!NOTE] -> If an application has multiple app roles, and more than one role of that application are in an access package, then the user will receive all those application's included roles. If instead you want users to only have some of the application's roles, then you will need to create multiple access packages in the catalog, with separate access packages for each of the app roles. +> If an application has multiple app roles, and more than one role of that application are in an access package, then the user will receive all those application's included roles. If instead you want users to only have some of the application's roles, then you will need to create multiple access packages in the catalog, with separate access packages for each of the app roles. Once an app role is a resource of an access package: @@ -150,7 +150,7 @@ Once an app role is a resource of an access package: Here are some considerations when selecting an application: -- Applications can also have groups assigned to their app roles as well. You can choose to add a group in place of an application and its role in an access package, however then the application won't be visible to the user as part of the access package in the My Access portal. +- Applications can also have groups assigned to their app roles as well. You can choose to add a group in place of an application and its role in an access package, however then the application won't be visible to the user as part of the access package in the My Access portal. - Microsoft Entra admin center can also show service principals for services that can't be selected as applications. In particular, **Exchange Online** and **SharePoint Online** are services, not applications that have resource roles in the directory, so they can't be included in an access package. Instead, use group-based licensing to establish an appropriate license for a user who needs access to those services. - Applications that only support Personal Microsoft Account users for authentication, and don't support organizational accounts in your directory, don't have application roles and can't be added to access package catalogs. From 88c527fb937dfa8c1a72aaa3b8810ea3d57714c6 Mon Sep 17 00:00:00 2001 From: Mark Wahl Date: Wed, 4 Dec 2024 14:02:41 -0800 Subject: [PATCH 17/32] acrolinx 2 --- .../entitlement-management-access-package-create.md | 2 +- .../entitlement-management-access-package-resources.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/id-governance/entitlement-management-access-package-create.md b/docs/id-governance/entitlement-management-access-package-create.md index 97216c84eb4..b6f8ce3c778 100644 --- a/docs/id-governance/entitlement-management-access-package-create.md +++ b/docs/id-governance/entitlement-management-access-package-create.md @@ -201,7 +201,7 @@ $rparams = @{ New-MgEntitlementManagementAccessPackageResourceRoleScope -AccessPackageId $ap.Id -BodyParameter $rparams ``` -If the role does not have an ID, then don't include the `id` of the `role` in the request payload. +If the role doesn't have an ID, then don't include the `id` parameter of the `role` structure in the request payload. Finally, create the policies. In this policy, only the administrators or access package assignment managers can assign access, and there are no access reviews. For more examples, see [Create an assignment policy through PowerShell](entitlement-management-access-package-request-policy.md#create-an-access-package-assignment-policy-through-powershell) and [Create an assignmentPolicy](/graph/api/entitlementmanagement-post-assignmentpolicies?tabs=http&view=graph-rest-1.0&preserve-view=true). diff --git a/docs/id-governance/entitlement-management-access-package-resources.md b/docs/id-governance/entitlement-management-access-package-resources.md index dc2eeafcfe9..7177f6562cc 100644 --- a/docs/id-governance/entitlement-management-access-package-resources.md +++ b/docs/id-governance/entitlement-management-access-package-resources.md @@ -193,7 +193,7 @@ Microsoft Entra ID can automatically assign users access to a SharePoint Online Any users with existing assignments to the access package will automatically be given access to this SharePoint Online site when it's added. For more information, see [when changes are applied](#when-changes-are-applied). ## Add a Microsoft Entra role assignment -When users need additional permissions to access your organization's resources, you can manage those permissions by assigning them Microsoft Entra roles through access packages. By assigning Microsoft Entra roles to employees, and guests, using Entitlement Management, you can look at a user's entitlements to quickly determine which roles are assigned to that user. When you include a Microsoft Entra role as a resource in an access package, you can also specify whether that role assignment is “eligible” or “active”. +When users need additional permissions to access your organization's resources, you can manage those permissions by assigning them Microsoft Entra roles through access packages. By assigning Microsoft Entra roles to employees, and guests, using Entitlement Management, you can look at a user's entitlements to quickly determine which roles are assigned to that user. When you include a Microsoft Entra role as a resource in an access package, you can also specify whether that role assignment is **eligible** or **active**. Assigning Microsoft Entra roles through access packages helps to efficiently manage role assignments at scale and improves the role assignment lifecycle. @@ -281,7 +281,7 @@ $rparams = @{ New-MgEntitlementManagementAccessPackageResourceRoleScope -AccessPackageId $apid -BodyParameter $rparams ``` -If the role does not have an ID, then don't include the `id` of the `role` in the request payload. +If the role doesn't have an ID, then don't include the `id` parameter of the `role` structure in the request payload. For more information, see [Create an access package in entitlement management for an application with a single role using PowerShell](entitlement-management-access-package-create-app.md). From c5ad0cb1fe42ec7e2b81109becadec50936336f1 Mon Sep 17 00:00:00 2001 From: shlipsey3 Date: Wed, 4 Dec 2024 16:11:39 -0700 Subject: [PATCH 18/32] workbooks-120424 --- .../application-provisioning-log-analytics.md | 42 ++++++++++++------ .../app-provisioning/breadcrumb/toc.yml | 2 +- .../alert1.png | Bin 83510 -> 0 bytes .../alert2.png | Bin 54044 -> 0 bytes .../alert3.png | Bin 80760 -> 0 bytes .../tutorial-govern-monitor.md | 39 ++++++++-------- .../monitoring-health/breadcrumb/TOC.yml | 6 +++ ...wto-analyze-activity-logs-log-analytics.md | 18 ++++++++ docs/identity/monitoring-health/toc.yml | 2 + 9 files changed, 76 insertions(+), 33 deletions(-) delete mode 100644 docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert1.png delete mode 100644 docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert2.png delete mode 100644 docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert3.png diff --git a/docs/identity/app-provisioning/application-provisioning-log-analytics.md b/docs/identity/app-provisioning/application-provisioning-log-analytics.md index 667ba22b73b..174575f5f29 100644 --- a/docs/identity/app-provisioning/application-provisioning-log-analytics.md +++ b/docs/identity/app-provisioning/application-provisioning-log-analytics.md @@ -1,13 +1,13 @@ --- -title: Understand how Provisioning integrates with Azure Monitor logs in Microsoft Entra ID. -description: Understand how Provisioning integrates with Azure Monitor logs in Microsoft Entra ID. - +title: Learn how Provisioning logs integrate with Azure Monitor +description: Learn how to integrate Microsoft Entra Provisioning logs with Azure Monitor logs and use the associated workbooks. + author: kenwith manager: amycolannino ms.service: entra-id ms.subservice: app-provisioning ms.topic: conceptual -ms.date: 11/01/2024 +ms.date: 12/04/2024 ms.author: kenwith ms.reviewer: arvinh --- @@ -137,22 +137,37 @@ AADProvisioningLogs ``` ## Custom alerts -Azure Monitor lets you configure custom alerts so that you can get notified about key events related to Provisioning. For example, you might want to receive an alert on spikes in failures. Or perhaps spikes in disables or deletes. Another example of where you might want to be alerted is a lack of any provisioning, which indicates something is wrong. +Azure Monitor lets you configure custom alerts so that you can get notified about key events related to Provisioning. For example, you might want to receive an alert on spikes in failures spikes in disables or deletes. You might also want to be alerted if there is a lack of any provisioning, which indicates something is wrong. -To learn more about alerts, see [Azure Monitor Log Alerts](/azure/azure-monitor/alerts/alerts-create-new-alert-rule). +To learn more about alerts, see [Azure Monitor Log Alerts](/azure/azure-monitor/alerts/alerts-create-new-alert-rule). There are many options and configurations, so review the documentation. But at a very high-level, here's how you can create an alert: -Alert when there's a spike in failures. Replace the jobID with the jobID for your application. +1. From Log Analytics, select **+ New alert rule**. +1. On the **Condition** tab, select the **View result and edit query in Logs** link. +1. Enter a query you want to alert on, and complete the necessary fields to create the alert. -:::image type="content" source="media/application-provisioning-log-analytics/alert1.png" alt-text="Screenshot of an alert when there's a spike in failures." lightbox="media/application-provisioning-log-analytics/alert1.png"::: +In each of the examples, replace `jobId` with the ID for your application. -There might be an issue that caused the provisioning service to stop running. Use the following alert to detect when there are no provisioning events during a given time interval. +To create an alert when there's a spike in failures: -:::image type="content" source="media/application-provisioning-log-analytics/alert2.png" alt-text="Screenshot of a provisioning log error message." lightbox="media/application-provisioning-log-analytics/alert2.png"::: +```kusto +AADProvisioningLogs +| where JobId == "FacebookAtWorkOutDelta.536279f615cc45f2be2d61e352b51eef.7a962c2b-318d-45a7-8cc0-486173dccfd7" +| where ResultType == "Failure" +``` -Alert when there's a spike in disables or deletes. +There might be an issue that caused the provisioning service to stop running. Use the following query to detect when there are no provisioning events during a given time interval. -:::image type="content" source="media/application-provisioning-log-analytics/alert3.png" alt-text="Screenshot of an alert when there's a spike in disables or deletes." lightbox="media/application-provisioning-log-analytics/alert3.png"::: +```kusto +AADProvisioningLogs +| take 1 +``` + +To create an alert when there's a spike in disables or deletes: +```kusto +AADProvisioningLogs +| where Action in ("Disable", "Delete") +``` ## Community contributions @@ -160,8 +175,7 @@ We're taking an open source and community-based approach to application provisio ## Next steps -- [Log analytics](~/identity/monitoring-health/howto-analyze-activity-logs-log-analytics.md) +- [Integrate Microsoft Entra logs with Azure Monitor logs](~/identity/monitoring-health/howto-integrate-logs-with-azure-monitor-logs.md) - [Get started with queries in Azure Monitor logs](/azure/azure-monitor/logs/get-started-queries) - [Create and manage alert groups in the Azure portal](/azure/azure-monitor/alerts/action-groups) -- [Install and use the log analytics views for Microsoft Entra ID](/azure/azure-monitor/visualize/workbooks-view-designer-conversion-overview) - [Provisioning logs API](/graph/api/resources/provisioningobjectsummary?preserve-view=true&view=graph-rest-beta) diff --git a/docs/identity/app-provisioning/breadcrumb/toc.yml b/docs/identity/app-provisioning/breadcrumb/toc.yml index e17bd9aa9f9..8abdb37550c 100644 --- a/docs/identity/app-provisioning/breadcrumb/toc.yml +++ b/docs/identity/app-provisioning/breadcrumb/toc.yml @@ -9,4 +9,4 @@ items: items: - name: Application provisioning tocHref: /entra/identity/monitoring-health/ - topicHref: /entra/identity/app-provisioning/ \ No newline at end of file + topicHref: /entra/identity/app-provisioning/ diff --git a/docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert1.png b/docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert1.png deleted file mode 100644 index 02453894114333c0566d8f358919e7e9a132a8ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83510 zcmce-Q+Q=f*ESm4NyqHiwr$(CZFFqgoeny-ZQHhOC;xi?_j$hk9qfI&*U?(@s#$Z* zQB|XEjEYc@6NiVvh5-Tsf|ryKQ33)2B?JNjc7p-|T*1<^{s00N{gf0DRPk85_&j#b zlT0M{xY~B4zuL^G+$?9-*5ci=E`GytjiPlNy45~}8(FaNm`@Z+C*Bhi4>{%J#$*X4NB z>NEtLMlYpFcWJFJvwy^Y{5TYk#ocOh9e=tM<#xB(ZZo~#;%&Fz zYMEVKMLwkYC+0xst19~H>hXEs=lY*}$KP-C{O_ys{GSI&<7xE%`j;9E_FL`O9nKFU z3Cq7IeGv&<+1XfiJKgN&7ObV!A6VG=Z7hA~mY+M$y}iBdb=tek9?K@P*m8M1_qICQ zdzM0AkDG0_T5K$LZ;i#**VhXE{xb;32E0K}SDWuqdEY(@BgixTpYPA~IxPyyx_Cb= zkcRrh5Z~X3M)rr}-ro}CeR4OyI7pXG2;M#wrTC_`J8tIV___QpH0-751DLAZjXkuU zRyNcR^eW&%yWruWk9xJf?@yVT*cke)PM*7c;8oi-hQ5H0we|UL;jpC& z%|C{Gs~w*8{=B^@Ju_Xt?@e}_1;o3eaa`Qg2)H~qL)szV)8ET$-`C%Mo=4e3bJlU* zd6&IsXJ;GD?$bl?=Qubx{p4+NAREakjo!~yfCpPyB{%)EG(jqUsp#tRx?f!oe7}ej z_Z+W{v{8e;XEXU{3==S@}=B(#`ec5l``uMCh z9v&MT8;Zes{zLG|?9=4+ct#u+H<8Zw>E8W*na*f@caN^$>E-%*_oMr3u{snHhs*tH zWBcoA*}nVnsI}g_Ufo$chu52p$98L@wXV_c?hiqwMr}bup~*=+k@0ZsVKT~m7N2b< zgig0xWnrPo-oWi2@i=U5vx#f}@1eRP>1v%W9^18s?>GJLsmCv{Sw5d{-V76bz3rKu z&NXF4#e~kZ>YFu&!e6g>-@{Y7+|<<67_?dsL)U)IHm^+Sq2ADH&M^yB zqEQ$^Hak%2t8I``@9bMEZKhEZZ?xLY5@6IcG%YTtC<8~dKx)dy!~x)n zIh?*;w|k=BFNps9ejhJb%w``4TS=L_^+Za&OvLcj_6zKEypVx&+RMMXP$3bZv_S7-^&UQq@JK_NSRh< zxA4Dg?5&so02Z#O<^NlTU^`(rw z&23{QD#9)=ZGWW1<>jHf-S&mZ;;`v-`B1(WdOTO{>2hmpYxU(7B%Lo+Mf}fx24qdx zi%UyOtD}a}oRyV{K*0Ag{r$k7PmOez!{5>AJREy)e`IzeDzu1^=l?aueZA4*__PhOXgPN#9R3rUd8kqfp)r`vMVzWwE< ziqNxXj?HRyaGdAwb~JJN^z@WOF5mTj)ee;E4*z;LZrC5{*{+bY9Rg)5n$2Rl=MBi| z=SQ@*Pbm)-S?u;O;!>|x*X}easi{-Byzf!;d<1+xCvUFjb#P_&(uaqpqU%jP$*bg$ zh!^}V{`#Q@S6i+1hMR5UX>|Wo+{@&l7$YYPww*FApza!6z;Kc!ut*wU`wO z`E#|=O8j^h^t{cVm}+_RbNxpey?!n*jrP6A_}8Jn-_z(Y0kE*svH#nAo(JAEdN}0S zWCpMF7*EL>AgXTnLz9=HqDJ8i8EhjhdwNnpODD7XKDVOM-Nw*m+TC`a+h3Rdsdq(N z1Ju`d^CLl!PnG)JbR^4vxSLV$KFBQ<)$o$*$bx94wEx)*fR_Z?06Ed;$$iW39MQg; zv;~6X7UCD5cpN_J-TOgO9Qe`2LK3~}+k@p*fn*XHt#%U};kvTUg&xv?{Eb2DEFJF` ziC(#8y_u5;ApMsU(pMKY3^Y^y9&ZU;tn-4OK@>+DAzcL|3M{IeuJ12zHhdvzA#eQ{ z9PWd0dKg&P-z>LXWo1-(peA|#Pm~?3&O>m^P~tH9bh>pUEQCn<%W?h>)BT|cudzRr zO%rW3y7gp~>AsU1ctk8(hu4JCn>}V1=jPyO#Qp_LJ#WO0qXH<$Q&K+tU!`x8v|RX(p{V+gLHC^3Jce6*2z> zfFOhIQ9Ps*9|PkxkbdUB1s%y53J{(s}$Y zH$X_QFR!FK#Q&43JLyyu6)9i--dK*Dc!5j7n#!j0Sk673FL!S@aYD4~6xLjPQJYVS z|39GurdY7WfN|-VEa&a*ylZGPI-vU(z5c%=Q)GkA_{=e_Ydl|v>y@DP;qpECj|l!- z@~?rs7gT?}<2-Njvg_`T>Dx2!;j(c#wdO^auUDX@{jOox=FDoFR%f%*MdtCUTwOoj z|K9T7`;Q+#H61@6=E})os9mgjE4$7A{-D$RYlF-8 zdusJgd0e{cn$r93Wg4WWEz?`>P*-*fYRoH{pq>B6xF?fq2GJpQ1 zGATPrJ4w4ceCs=Pc<#MKL@fs&I<&^64O{_x{=X=K7k-bGt!t{IH2-H2NX1fe9cm7< z(?gx!A^z6I^m?{;9LDZzrlv_O{RWmv4pVVHal~7D4~&bZepKR%|yY zLXsb&XY9Ovm+Gziw0jx`yqUzmn2{A&Lo)p4))=Uq7g&R~8n0(AhBk}6TC=mQpuh-- zg>tLY8vqJdYscQ2+^=&voz3WFEe|7q05H3qg~d&Z|8li{vqA4iU`L0kbQ(UNi$u%A z;+vYLW-DMb2K+uvv|iHtOHd*9B^sW3XKHMjGnO8bzTD!tA&0KUCG=Q;fc zw9P$3)wB^brl=9LX!@h{oSk2K;{m6p_No$#NBcbIxX0pgr@p8BiR;E@zuI*Fa=1Gf zy%`OHM9eRr{Ue6Q2`7lR*5bGiSX)iD>qo)8-p|)D*t|{vKmmz}3shq!lLx>Qwf2Wr zV=(N0Y#L&Lx+d?azRFwqXo5TYbIHmuQ3Xo+hxY<;**gSK@fXSCwP@pHC6*)_H}b{OjE7`rHA7+RisSy@%sz)7gvw zq=%e$H%rCHNY*mL=;UXl0@>V_EOnSfCuHWS}(oA9*>OypiP$d>l`V& zn!0+mW~0^P*j^ z4Q4GbFYh1)g9MBdyZO@vupfPlySatWl3Dk{;!;~@aq&>Ow^v)^WV_D(SXo)wH41Ia ze<|M=OvEKb&6*bGBOPXWWo2V&YiTF#ub-Qpm*nH@6MRqf>(z4Br)A!WW=Nf}oEk#j z4X{ z#NOWK%~Arf_(uj#@xzlYx4Y3`a^YJW0v~$U1GLxjptNt-entK zduut@y-SB1kaSj+es`1Aq7+9&678>7wlcJk*3wHg$Z7uo>mjbvLMqwkt&S7Q`L7y?$E!){+< zB6Yjl;18)P?*o_U_}PALFxW*EbR!e1~4{=5_v4a^N?z}nkT{x zbT+MKUE$xqCu@z?+5pCJ(~k&1=ZAE*+MQ;TG3U#lQz?%Vx`_XZF6Jo7ikklB$0?rN z)f2W>mG)(}{0+w%w^yCsRcJIEpX0pj$L#Kl2Z0&O2nK?IHG?Aw{p^56>c8E^_(xnm zkB=6t8$ech-6kyb0Mkj-cqkf>2gP)C@s_6u0~ULgL#p)K*$n$$9F2zq)i&6eYB?S} zIsoK)g#3YI^rS5>FOR+ulMO#mCkmbJfF!Am)%{AxU=U&8a6C1K(-p=lgU@yipg;6h zmnxHiQa_I;N%Ea04)IyT|NL4w{DDm)rfsb8r@58o57FrS{N!zv7?JuH7;S z&44uUz4rzpc49%gNxFr-osXwNqxv1_wA%)fepl^_#~p!Gth--1Sm1Fuk<&{LnQC%8f@u$9&K4G9AIJ*E=1sSZ!zi>-0@y&~Xy_w~zyUk{(H_wJXLseJR zxBlU)u5-VH;A8d*r+&=~8^R+>k2^qBQxO^n9)}Oj;n!aPpqoR~Pv9Zxt)uV$P-<(- zt2G|-c{?2jQczaDA4{Qj5)P&djYPoX05Xxu;$j6BSZ{X54#}p~qo$w|nFk_c9H6#@ zLnfW72^9LGBD6_ZcnN}Jvj;wAV`XRcM9V{cMiC*+$~Bf5nPzSc^e8FJi~1DgZ)BC9 zEmv_Nq=9DD>!7%gTAv7`)X_$W0oJHVc-Et&ti5CmAhOivk2qW zvs}I2dE!nxz=uORs~$%U@HBCX$F!K|(4RjH{XHTOuj3dqy(AoOJx&wC>Y!~^J%%MbseQ{FhC zL~nUZ+=UKCbsiG5j5$Pc^@VuZvbBT;lXE4^v(|q4(GHB3;y-G1cKhq#u6j3^n%Gg12u&3V#cOi>T8wcDBl|6Oo{H{0MZ^K~W zJNgN}7zAb>|3~uO?hAUnG1SWY-B`|Bx?FR8mRKNNKXzWtfB&DE1RcD}Ns&j{91G-7 z!?tNoo<#YM`x7{&PzgYXfmm)}R!Fwg8*Fh{P}zWBUMXz}Q>ZWuZlA+%O@FZ+(x8zY z#%2Q4sO?1e5S^;0r=}Q76b&evV)*spKM! znu?3X3_0lMIuu?O*o2W}gNnpTg%vXr!DxQ*G&^UN?t}km9Z$J?;I#tmHB_<{TCG9@ z@i;X6^oT2W5ttOwgW9P}l^P^?vK%N(-ifImNZw#I990JeyU`UDWsrynxGUEHT83rD z^}`+cpWFk$VWc5q+L?=_CpOm*O&?o}tM@YAnJP~5X9k^YK+@+#&{HWJM}gw9F)_G2 zy!!5KFStBPP%tdNXm_YA$PVy7YrQWob2)b`cSPv|#?K5KIZO#c3)D3EJUo*9eL;Qz z+xm#^mKWBjeg9^+1I}$A8PE4hU+RT{qTi@;-|a^_y_b~Og^cz&QKUl%siPuLfstJ! zrwI8rlp_2y@ZtS@)#vs*Kj<7Fdo_?-cZ~BOwdb=a{OD2ol|qa(;;bnu>KPFI@9vXU z!XonbLseT`3bFki-|g|yh2M*;$7sIYt8J})O>VG1SDzp-*dwdSc2ljPQsRqGT}=)8 z0%tV5&;Lo(ZnXeu1zm9B@qEd#Thw3mzo7j=H~jwRt*?q2L>PiU%yKlQirOJ}8j8D& ztEsT_X6X-7jOFb}pz}sTV7($iQn^vpv>N}Kh$e zU6CqL&GCdA3nf>b@4*32{R^`G=<2=sIMujZB~@p`mm8QyHEhxFBgf5O(U$8Uc8CdT z{H>$r|Gwn4P+ic46Dk=M9i18-;R2F}*si^_ zZr($j;BYRbG3|NpR?-!sHa(LPJSL`b%1Za9DR^HWUSm&O%Eb4PPh0tKOS|2t9NN}! zz*|rOujHZ4P`<0>eCi#66CZZMsoBBWp1VcTB|U)5?_4I6MBo{uD0@m2MLF=5F9(tD zNZ+~DTw(WUTjfn~NIVas%l6~@=eSPe5OYc%#Iqq(<2z_RjR*X4SO&<}jbP!PytStW z0f!j=YxVkh!b8j5!S@5B`_I(Z-C{t}q|>A!A(5h;6SxfccP*;@XQ!uMei;((+}4~b zsn|04bG!YJsxP(>NIrgsAyQ)RR~cxi znFb{)NnbowYWE^#ep8L579XDKQy}7z%i*eL639aU84crdK4@Vvn4?DIcc=4LAwDwY z7K&pUh8tm7#c}=_P1s7A-e$kaFB|I$1}LQQ6DDzX-@x@+HPCyNhm2=k8 zu&~l|pg9Z7^_&eg`2sKe)I&IQ?cUc__nFyFGfAnB%L_loQ!6E5MMJf423xw%mlI%a$Ov_Of-JvDeY_yxiHjhKt zVQc-#R`y<{*T{rRRkRXmM!@an;-F-uv}d;{1?qUUv3m2fex<)th_^NCR1ej5$W!!4 zty=3a13Q$n+O4JJ*N{wfW6q$rt)${uY^GmgHiP5%J@3XU%5OGVUE9svJtI8LR-@O+ zuld@qm0{yyv=!opwrdv{@EhF7!KdY=g*ioOC;=tt)+?O#eWG9;U0!C<1yEE6jn!^b z=~PT*ecP=LP7OXk+<^k-@Ib%-l@Co;Ww6P*&+En+j*tEtYY134|D3WXzXDJOE)Ts;jpH zmde>|yL-p;)5$kmDX?l(78W-(yLd2fq@Q~lIdA*1#3@Dw%W|TuFqF^RO}7+l1>nt zk0xCeI+hkf%o^*~%hl9ySI5%|yxt5wN^rP8d2U^q9KKS({U26l@5=62AkQCHL@kWu zvl)JUbVefv$SF$r0tCoydle{D*^!P89v`10aE*%zEM|Y8o;H7a&TL2p%m4)Uixp1S zGc=y>E-i_y8jW`ME3mSwVixD22S?)}j*Ha~qTbfxlfzNn$ZqAF>d@&xMG^-s*OG6A zGo2uS?>HdO_lo&7&ZqJ#(9k6OUm$=P;l zP_?zUKV483^EtT|c$Q1TV$c|nKg33ZbO-ilLi0y>YV-s)o>n(Cz?W-MneyOS}n=*`+7CcnDS!O49bL( z>(r^YN-+k4%4G|ZjfKyr6NHESkd~_yA4zEY%k_o3K8!{a0}ZkbTq?fK%Bv+e!F{lNiAxoWs$XC`WR?ZkU9OPgOGoEw-T=P z2e@?TI!iBR0YW!@~+xp-?afoBdTb>@hu05-1R3SHc4PO&f~BH6@htMaZHxm8VFkovMxbdCowR}d==UVtc}t6=Z( zlS(j!*!*MtG#_a&Fm-xsKF(n&RioFedUYya91)L9e<++I{i)XxILWV`^xReg6mKY? zo3Z@S`UMsC>h;(-MU9VLMqhjo)>Ho|ljW8!2` zxJNi_kbcPRc%?uS0a~?)?0cSK*(|X+o(#1LNyKSZ$$MBBi)E3#!YW{f&rSF3+2;Z3 zkCyAR#&Q6^V8>{P=>X3U{e>XNxE(d$$|*pQhze3~{%jWmIoL7P32`1Z&F8L^O_hTV zhY(wjqEL!F^wTf4RlD7bl_)F&MCYCe`294_{~~oKQ?~fHK-9~&R#8hysB(4qI8`=_ z?ai|`_&Wj!{Vqzt@RqQkF&3X&Nm2I}8<^%Ua(_Y_lVQG^yGVv5Lj49Yr2kQdiW=ga znJKNE!arLrn5kFD%Rl@gGf9LBF6cOlbhF#v{sv^>zET>X7h=S2KtoL2dq(%o^8oY5 zSWtv2s_Nn`3~X|{lgsD2?DX``2)QTxz(D(9%l@N&@!OreTtm&=-m!M|@b$qmcfR!b znqVh{ECD-yT~K!JXv4#lLIAtCt=)~}%#S%PVLTf<`8?7&3gJwlDu?-}-ma+Tu5vlj zcye8X8Xs-H5abaq58EV#PAg-k>R1Xswq{n*!=VXD3_1~BTshnX6lk#OIu4AcG4V@;MVq~ zlf39AJM7dmb(B(OJxYU#^s6=m9*91+NL;B{`Y#RxaGH`DJO6?Rbl`8`1uT+dVH*|a z?}1U&wNws%rMOzE+SZ*P(zL+8Qkt6FY_}Sq(KRs?!iR$2n#q`v`qO%@_kIE8rM<;> z!J4N+`rH6)y3Y^&Z}6V66x3!6bUMcQevU*>aoev4a{kwg`supAk;o4}JHU6Cw7uy` z`%8#fGEJ?kNQ=2wX!TFWGhMBFDQg07L;I&ZeF1Va0()UXyZ3G_Py5hvFihFJy2Hfw zXIgg-qj9EFFW+wp{@0T~{-0@intc$OMzD_wSeQ1PAm%hkotd69Dj>p-QL^tm8&eCM z%0vc~G~g96+@iH^m)Kmh8_gU?%uqom!bnK+m}XMjP;DWq#-MFn+@&f*9@2YQwo@u# z8lyus8d$N&p1W)Om2j))2p0l|~iM^_#^mzy`97^3C#rg9FEJ*&JJn>w*JS zI9QCvl1C4iwG|l}{^M*jSk4tT961yj*ENi3r=J1jOpuULoP8cSy*8)-K0BGkzRv1# zLx)a=6|vn6nBkW?+h9n@6YZ5u>hK3TU8V5*u19ov2F8BDyCL;)q8f!Tteu*lt{D+F z&}*d+uJUokeR_s_@h}J-{x4zOfEpo>!R6ol%%-o7-ZOzQM}q_<%gWTz3+q5-;euo{7klaRMS^>_C(&j zY&rb?!1ucnaSQ1)$XrRfKo)b*F3n9%W)3{m9C)`eND$Z^_z+SwHWQRuumMP@7FKp+ zcFkHfP7Z%k1q#eg0-Si>t{z{6vz_=KRs#F_YKkY9h^&_@gWBYBIj}_fGz6Udzqh~N zG4y@5QWeTyfwsfI%|rP(|3YvRHk7oLMT!QLn9Jq$b|$Ub{f-2v!<_8t*&NA(6MHJs z#$>UWhPU+T-7J+Dj99-ci;C2@e2)>oKjgoKFXr+J2OX3PZ?FOmrRbSHdrjvKkEi2< z?_~lWd7K1cYR2^S15AMo@V1&5;4v*x<~J4w(6r#Ne!OgGjUoGia4<0aLTG~nbL>HA z?DJjDMCpv9EH2lN4#ohV=4lrVhZty@H1`X4K5Yq9769#shNl3=7IFg7u)Hx{UTZx6 zi{hoGOnH*QjEbmMV7R_sS=kQ~yP-g>{P!bhFlQ&hfS2&)JS;Ny z<0>H1PDfrSIQP^DUke5sRjBBtrZ1nGb46B;y0RwQDKs$_t@z3@TZU>!oiD!v964Rs zX@4=`k6-Wp`1}qyxxWObj4^NfhIP!z76a}I1<7!ZZ4=PVg$UGGjZ7QFbz4Y$$ll#i zP%X8bAd&TM#&VS&9-GSupjamK2M$gl%7bVASY$~nJHe3%HLLcIYSGY+Zf~U zLudlrR2vPQi$#c$JM8;TA$kk0-`O3aQESdTlDXZE{a%|Uen4q8LXWs!!zASPG7I*8 z_twHgxt8h5=@JITf-UOiGFj*dE`iMy+@WC2rBpg|44pR`T3eC0HqIy8yM{k zK(8he^28UAfUfo`$b>A#;&3l9kE$XG=`y>I#GP3eG}4@G`M%%H$NvSUqNabIE5u)a zJeMuSnFzP|L9vlKc2K)NOej}R=`0$s6FOa*-&zc7Um~An#gv&9+$)5;)-=Rg0o>>j z_zb}>>%laoJzOobF5l1x_bAhEEB8wfeIUP{sGkvKWVTQ53|k;#xA-Rbc3;?Hv{P+n z2Iw0WL7-LvL{hKW4L*V?R)~a<_zMX~cfV0G*yNA#ej2LN@{8$p?jD>0BTBm2Rq$eF zdjO(*fRINPi;_D_;zr%PSvf?_2@<|LwztFi(WFgEAklCf9((2t=2n~NdY}3Ntm4Gu z3-&XhWbo9?AM8GnJ(O6=Qq&E03W9RQ1AZx&@X3J$r-D>YpLL9Sz6LKK{oM4o$q_kd zCq6TzhuTO-Mxy~R=4VgglNc@nMKIrPjft$|s0%Z43yZ_nyoNi%!i4szJd+HlLx~}= zN+mM4+Z7z7Zc9iN86pWedvZ3H0>-^Dd?@7tw)=~={nysWkzHc5J?utDh7;x+W2V?f zn`6KutC&aDjcvT@6P<0(&wIIR29k=Uj@d$nUTEhVh*=^BqTh=zND4taj08~)oV2K& zPBqQi{WtSMfymH~Pa6WBKjm0if#*rc`!?InFM$3)Qo6c=e&iIBj9@}Mdok4)r|3{( z1?<8-&xuUuLF|WHkAwscJ%p>VAg`^h2Z}gOf8SwrGrUEpzdP22k_2~zdYQYr(DN3^ z4p0Mq&d4zj_IaGAPTGxrh>>8)qkNyAEt(DgO(3T1l$lCW4mh6X&KWA6px2w2P?UYC z9S^hbd_B4`>~|nGIgR%>jJe(KZp+S;(;6wODCT-4Aj8qTA6#h94TYLTMEUtK4x#bZ z?;@MSl``<2(+{v(wvKVo)bhLCFs{wi0X1)tn>KLdkn)8vN~A@kWK_~N6Tztn1e~}+ zesa-AsR3Ff{+I@B0a?9k$?L@G%O*s9HQYTb-qP_v)leEH&sRBr#A1Tsc9;tyR!&{O zIn#XNsjBl6p@2K@PfPNmaT)KdP8WgcP5=VfR0i)jk2%!`WQMCNDf#h?$QB(%m&Ggy zh5&=Qv^1nZPnX{vcYtZ^ZX)s_9a|0+0gr+8r{ri5B^}`>;YbA*^Mtl+9of#aloBrt z43oB^o(`vNz_<%jWmvr!g-_?e&QMx<{-X;)A z>|&|K%*VXq>l2cEZZFds7IDY%9{x&)!9P=;0zLY zfc&-O&V9dDOBTS;0;SXA+w0gJQgw27sKqkj!pAKpW{JgpLlm{Fo945KLlN(7ZKbM) zpAJ|?Gnkn%!En#-0Cj^P6&nqns2XCP!0-Wqu~0KInH;-O)BMlSx9NPgZ$(iUr(QQv zTfahMy0%%X;S%?Cqk$XCvzG9IhXi@v3QEM{uj++rkP0E;NjqYH z425LkM-4^y&bfT*8=?W7U%7NzBQx1=W!IZeg9W6JnB(&H%^z86YC!-qa5-S|Vm92z zUUK8A#P0?C$Piyenvuf9?BGk6q@mmZDD^mLbuQ;XF6GK*1(2BmfGVL3$up@$F)b0j zCcCY`FiDw%C);^7cLwxt-Z2{3824Y~Nbjr6<|t0vQhT*zW@MBxq@{4_8iqNxuLJ&s z)S(O}rQ2o}*amIbYTWrN00R*U2WoI3BOuqn4XC9eO)jJnn0FuKj^O9Je5Ivr3|WHP zQ)os&&qVCa;_XAB;u{I`M6RT6HlHh(tjb^Mq0bRyj@W~p-1V3wXj2VI1k{rn&$&L- z9vM$??@_GLDq%!4vG5KPOT+{7i<2^4L%!;#4z8 zXfT4t0g)cD0@&4==?j=(b8V*XO*w~Tr!N8(F%VT|4c z!`^)0g;@X2Ofw|Due~VxiOC7jfrKC&X{8dakxDjnQOS5`Z@UkQ*3QBKC?$--h09CI zkYk_(7SK`7_#?En`n|g$c10XPKYo4a4d!ZpL8*u@ef?XG~=qx z&%8S{({L}*Iv~FXCsFiGFpUm|oY*E_$1e&VOiu@JWzjU7ntl%}>sLt$Bb zn6Rt}PO~iK!};cR6)<-M(zJ%kkv*9KOG1q+8oCg~VlwKu#Q8ytA#307h7kn*Cea)S zXhI84$nAAIK?pZPrbvh?V;QGlwEtxz1K)~@?po~Nirvq60xp@k12Ze8WO!)v5~vjr zVESB)$veu#GE=NN-Cxq0bwj}_+5~WiNrlDa;Nmp}^gZ!RQI;?#AnWB|v9Mw5kzA%& zL--{U-}TvgU<5M)d??)$c}+&rSUBQMuzcSpEQdznSb9W$CF2Msk^qPFwr6<+T+yfV z$GK#FFtC=|+FFwmka0Th&Za5v?amj=!;U9MN7w+(lJpW;2Dr-P6xq7`^_D&5^>)MY z;98!a0ArF8pOIR~Q!q#bqavyGc5jKA01&+pZ0vXu%`CCTxr)%SctRACAzGs4UVgfn zb_@bSC=G=ugKRS(fhAm)kgg=TyEj0HFm0Fwx!em|#RVm68JU_bewo;IT4Ov!jEb&D z^%0Bk}HO zluG(K7`00qPfCMXvu1Gm1#q_Mi(4XZG1=W@j2_i1@*jhLB^unOP9Dq<2IgY*NOiyt z$JVhBiIZf*PQkTL=mrn?+;Y1VscM~rK&I6lCb#65sW%rXQcXj1=L*1pAez63c2S{+ zG$0yh%1tW^_Tq7QNE9Q$rAb!w1~O9^xov{-qKD67!W+a1e$enwsDB9b=sQq(uPlS-(kJKzGcB`MxgJU^IIZJUXF(x|u+e{It>JVh&BesM`pdG()h=0u(ev9+}86 zn!A^EuzO-!s6-E^OHQn|`OZD( zmktISSk8^vS%6@06s{jrNhp0@nL7Kqk|-XbNi8)J8*Y}O?|(Fb0**m^ve~9aac;!& zx5&yf9lL%)I}c%l1xx4{KY5Dw`1BSh`g~jAf9>#W(D%nl$vixDcvAZ4gJ-6T(A~H( z!_F0vA4Y1*Ha0gpm#6=Zk4Ha~fZ&DxzFUyR1Y)e%qk8W^@nj+(F-P3@`(wTrI4_Tg7y>C6IId31{;N0KSY%8vVpEB z9;g3V%os@y-B222pG=8q0h@q1XF5(>Aw7@gw{%9C^=CClvKQAeA`aU_PcP^MFq@oo z4q7l+yNo%L!J%5V)?a|arik`pL*s!Y0ped-LORMYI9NKihT?P`UHv+jF*NBIYRI}Q zG}1S~@>8#pIDP|wqX;VlG#TR!LK}dUf<+;24Y|a~xOHtG|0nuJYfTXrIxZ>-X6`aQ&=vm=(%WMsWx6S<3r{%A?ima1a>CywD0(R5ked zZUQOZHsgtw7_KWbpCO&-!NV}HkUOkYAa;}<6YoOWx0m2$`!(}B6|Zc{DO4G$Hv}nM z^!s979-UUlzzfN!oN*?8skoQ9`|8XE&zRMi&qO*nK>F_PzI4Rq4=H>frhxI<$E`TQ z=S2xWtA?h$tbH$RQ>5OGYXCTC!D8P8W;@(G1tmW^OY}*uNoi*wSFx#F4wtRh^+qG{ zy(r*x3tAuQ(Q)aQDj&xkpvLyBx%<^M02@9ghI$_EP$xjNWJd5H%vLX#a4=|B*bcF} zIDk&Kt8ls3k_*b<)^4kSCLgTNY_yRr28_|*D{pZ@Lgt=@Sei*Pb`KeYPR9i+6cd3h z?#HO8_g;q$2}?((MZ38rV(a8wZZstV*lw?_0ID;>1%Li0pe#NJ8c@MR_Z9XeOcX z|MB5|{$yJdkgNts68wJa?(`Wdh4eyeueWW&s+_w1<=% zL1vyUOG+M*XVxFeXeN;^LluQGrL{Pq|4sv87G9l( zubo}S?Ie&|qF{^n^NZuYOl^L9LlRbrA&Y9uBy}j_F-wj}pDkO%d0@WLW_s-(BIAA- zeXXdrm29IFyKTSB->wGVe7J;K_@>Fi6!2ic?I&Q;gow4U!Br47eSF(AxBUaZO+aFk zW8}zon~;V#awkfm)8+;_|ALh&2;FPRte?en&Lk_LFPBd$uE%_w+-yy1 zE^|qE#Olb$6t$AeqcU)hRkGg=44#3@1~mgQQwMaz!c9dDYP-7EZ6*2TRz9nV?>8M( z<;?Js32t*j_W7wCxbu_W>L*l97j+NQYQ;gJ+f+8^{#{CNc*u`Rd=v$WuzrPRc#>PD z5A>@g2OV%4-fY8HQS|<`gbf@6<`^jyE*9aP%y<%Rk8||;UaX-i?O@aODM8XeoTXTB zC&hUzkeFL1LHk_c=pHnBQkD$vUm{li5|UHln72CQ@9OiNBYq8P^g=FqTbg#}t79pF z3OBg7Ucfzlbkq#F5jKb92EAc2XdQz}5o%1AyK=4ctGZ@i7K&4oSr)<-bwEt^rEvCe zpM4Zty_b|>_ZY{fuD~94r9hERiiw1GE&zsm$%9oKEH0bFlaV+!J`Kx=_SbGhegCge zWG+YnA*RP0+H`3gtM#&(b_?x70P`#bF5G&DWg8;@OOFO~3`0Qzd}dTZAzF)%g`o~t z5(M{4HmgAHh5G)GQALYd)Ha1*r=zolw>9``@3k#vhu$f=scGQJx za`^wsNRTaZY435Peo2zt&x2T=`-GVf|Ebn}AIAT&d)bUtV}Lx0voC%JSu*I+=tHxY z5O`hEv+0sr@Y|ZzEfEgKKgFlI4#jFsx1jmRg!|Rj0euG%;_k!2#17j!Y71q}^RTJ~LA* z#xH=X6;g2};nm#JpS1H>B<+>f&iYH65gO-m6IQiHpkY-x75&HSJQ`c~1VTXnhW~yH zyNvTs5!6s9T{}T~0*Gtx8fPxk-q0dR1G|);G~hwbyOVs@M3?fwOU5lr;mX^soJ0>| z9u?14B$|Q7e>0JZ#WczixZ-1tqk%}McjrqgJ?8I~c2#S;^om>L4^) z0`lF8Oa!-*uAac6G4qk=@3(5`Ib?9H$!XxT$VEQkIy+*^PqjADcLt--mH9N`p*YOU zxxhlZn)!pRbaZO`KzAw8z@f3ze-L_L_3Yt5)=UVpJ3+Q23ZW|G^0`_G7LYFae9VR= zz7iUH!3~2LmvUGe1hBFffT%D|dVn08;-pu&0h~i%5ER-o-b(lc45UI>LOJvfGIRN8 zN%9yGW`jBxYq{NMk}OluIJ`!(H{b_nq5AaQBCWx~&=p58jcsTHa4=(>`jJ{A{x(Q_ z-@8%rRB^+1#2~yQ{6o9W5rb?FKO@QAL}$y)gjdUeQOIXvR|2-2UvNipts)MmEgN9M z*aI=iA*)I$NI`8IN`x;-N|zm?0dp>I5A$)WX0oOSn9SpZrxR%9ltjFJk(zz&+6{u^ z-5+;R8zzeevyCu%3lOyu-yWJb2B*XpN{N1lAU%0*9>6_w2CrZjB1ddBcYlaSstk{I z8sEBnkDo$a&kuC8ZG>3xXRm=lpv3Sx0V?ZwnD(*XaX}7BmFAIVI=+up7okWR-#y z37Smi&h@z`IGZ4e{S5R#@8cP^XNun9zc>uX3fr4Y3jL>G2YbEOD1VLB`MA`pr z6il^RKab8+{v4agarN%U_=cXcuB~7q$uS=Pl^7o<;xH=oV{!{Qz~!<|gjinp^1fe^ z?I&s-1J}bY!*J?hSOgMBg6KqbfL3i^VPiv?Pe}kX0|d%;hOlwZk6YM%lW5;eAPWe{syq|JUnmv(pNk_#?F(L ztIcd~f|6r#aP)Y~a^V(}PMAV$u`F9}g_8&@%^7u^;0n_-$NBe}dSor6j7+C#5bDTj z1rlc`XJR~URm=G&}XRU3G!3T2Q*3JpEuL~IJ+NO>0w|3yNzV)ZITmr$Up9lq- z`BM)(4jW(fkx3h~OA0v-+I-%6G)!Bro%XKd1e?7Q_Ym^X93ECxomSLSAta(l&Z0K-ImI92h zOS`q%Y>UC5c&ak@Qybf4_G?QH!W7eUOnB{BVM*G)kCwX;RxyfgwPY=Ihpedjydvu6 zfbOR{B-mHBep+H5DT;_jLUmU^`@M}0F4x}fDQ)@TuS$tT zlk2Ytv7BA7_qt@&3T{dVX6w}ABEOy1VR>BtmlMMt$(6qUL)SZo*VVRdyE8T#8;#o7 zXq+^S(bz`Q*mh$z_DmYvHX7TuZEKDDdGF_YzqPh){mZXx6JyMAUDtUW`yP^NiYJkB zgzKV~XcR*~yf+@u^NBZnFRowSx8RPG)kryX28EP*c~!|KktBr&Z@WKxG_&jV+e3Gs zd0!e~Csf-fE!O5BF@uXK;vsBg+tg8Ku9I4Sa8U%vEwbovA3<%3HBE*N?qC9jmAD7-)An0Y};#~E0 zK@q1)-2Fws=}}kKs&>|E`;r?Dy9#HQbOaw8%8^QAqgY--so5>Um4#_`CXE#U~AP$kBM0F4q98J z8uFV)!c?(AD4(yR)WWA9w)mFAiS)ZG{w|`ci0OafkoqeNO*G+c{Z$KOWu<0v2{Arz z8SnR>EC#`jTzxSOr9?-A9naZ$Mb9;+#m3qw(|u6jx+IrQ>og{Vx*AB__9pK+@#nhk#ZZUIN*!mZm3rN zQNjZmA|tOjXZl1%7YEydp1V@*3;~BJC*O&#}Vl~xPCxovSln~J?Yvdr*a2xe% zPfT5+AAFkUC7e`Zv$DEG2+k(*%44g$E0M?w^NE*iGwY5l%}BhNt*={rLKDxi(^lF; zD@$aAN4O0Fl%)Fa{8YbHD576j#4y}~P1Kj$ie#X#g|N6AEwKCD0-BH&4_Kj*v%ITY zv-v@NlzBis!p(G)0S+3Zh{sB`N?|C8`E$8jlyW`ilOK8!8SF^Eue}}_h0FKkP=ZR@ z40vR?*0qep66T5N0=XPTQH@M?(i~y`j-T`}2u~W;@uEvrp-_G(3%A|Asi@%4;6LSQ zA8pxdK8&ya{)(z`VJmC`>A>}qkN5{Zwdis1P#5AXa&i+C6D2MYkNd+dr1}V(0l&|i zWw}DC2YDHX=Z|A(yODYtXz~dMsJI=s+`jSP7hMIpLe{Om4d}OKsKZ1gWUVu9n0`fD zY7;(=l*7?VLLN^HMC!@ybeTUl(h7CfYU$M4qH4{(#_&ZI6{;`SCIfLjboNTB<}&RN z?zA)3@cXnvgak5nzl!pr3FHS;bu@%i6@mVC0HRs*oJ2>z=pSiBd{krKG3J zR->VYCX)*i$~84(-8IojkQapLrv6ZoPy6R|v(;eI*d{;k+X?Q+?Hng221k>aZXgR* z63K5Vj$TxPw`GQtO**QBbX{4j{=!bYq*KqHJ7VH=2U!cr_VP+~&a zZMWA6bq#b%Np{m*h>GVRizkwP(AEe&RV1xt{=A>K_u0c$Jhk#1VIhrJ^uyONX|F&w zayEA4L^@0xjr&fiO5Kc0a;%R(Ev!89A+PS(qbAbuX_>nH^aBE}$t)l2H9mdW%_|>_ zTyYDjH}S_p^lAzmXnJthjGJydl)A|;!UUru;uw3K$Z)Be7=+Wq#wWz|%y!<%)Mv`| zm8eZa)!F8=jaWxtHT}-~A;BprI#1tUb5G4Ai+M^ereiu>b9W%Iwb>Gd=3|*#*_i0@ zV~#e%o>$oI#cA)@Tz_f0+6)B+JU%O2XxZSI?i_hy{znx*gPHxWuPYjJC)k!Qk4yp< zoT)gjh~kJH3`aTmnGQQODO6AK?tHVSSXq;so9)c4D7SM%2GI)s@#-5Ja&3gi{60>g zorVOMaAOaFVFaA6irAWjD5=C6`sBXM>#v{W`Fc>+4^F(`y{u1}xf!=mT>r<1|9N`W%Q(9%X=5b`LSg4GXmr zkwAb$z6?r6=r`B+$WQ-YDcIj==dlY$HI|Y6swnupAB9mzE)|U+==}?r=iYE*k$~~9 z@^=;Qy;}(NBqkl$S-6}xwH%u-f@hZ-Nd92={7QlAYutwGUNiI8qC+a)tC5;Mu*>+M*2N&8l$=AM1H=f8IWeZRMx@^P^`aB5M8( zu_jq}T{yUCO=m})v)l2Pi(SIIkrwc9mGIT0_NM0?yU*T=ym9;arLqJ7KZm$JXsQpm5$8m&$FFVSeA3`hd`u*9Ok~K|P(fg<~0sHr#TMG8Z_xBnQ z5YNgG-;c#KP;c?lU}qD&-TXOE2wkXkxH)M=(eC5E#64qae7_glBsfQ`qw`Te^oz4h zm5utOw)L4oIR@*J*IQdfp5yxkkBgRvb2y#oXT-qgc!(0OF=4v(o1^}X(f}J#cl~RZ z4Y&WrTiD}xY1TZ940DT+VVJ~Vf82(BYUjp7T_E5xjo7L$PAk?c(A@BiL+qHHp1Dzs zA4foPccf#$F#Js;AizEpg%-Q1vgT0XTOf>~z=sakDZE zqBr2+NY&U$vU4%H*}A~|y*UHfKTYch!S4D{s=*dN=T(-P^41=>E!%rxdB@{OX_rwN;;mH(ea05`pExWdyu6x>+j!ryyTA`MR-02k>eiC zoobCRdu};k*L+=1Pu_&56}K&*$staH!UAtI27e2=&fokJYwNvF3xnB5)G9j5!`fUhnn&}n!cM!Rq#SO1&Thh& zNs^cEXCfV;`v1~pkjH)OKK-2-5L9i!hXUF)u?NlyE&f~(oR}#5MbG#Ep}!fh4~Jur zL-3c@5R!FLtz-Y4Sf##LsPnMZ1In)jxuILT?j2KE zJ8q1hUU$(kmacbf7gAsySi5or?qzUYdwp{nyJP4#N6b4~)C^u3(i-q^v&4CcrB5T+ zgrq!(Qenlqv{2t6!M|{cm-j#E83>@Ekx5F-G#QO)Pk#=MmP=v9mL^s<2YN|9XquM#p)|HvUjz$vu6H-*MmRQ594A$_sHZBF8XA-k<)75Ot6`3?Uz5Ef(h z%#lZ5_etyQPVP<|jo{ls&UXs&D13f*fU3l0y#l@T6@i#-(5eT&=a#B0jHd6hYpOY} zr=Em*|F19`x~OZsD9a!8H%`#7UDk>kEbNu-oTant^evV?LZ{siJI6!nzc~NN<(DR4SNLiq0$*N2M_>O*z|o;KD9`}}pa_4cxP z{YIoy#JC$)XOfCg5}t7$hd`R@pDCLi$;3`iK;c8CTsmJ2Ndzx;s*J+k6jkhSD?FQU zUgY55bzs9Zlp%4(UhSl9>B-+v%$*UceUrIa9t3RNc(U^njl<7Ng04|M|Mml8N$8_6 z-u*S2dc|}$u5Cy4K%LcptN@$UB$dg{b(YiN7;Qff zOG$j!nyb)5`{0iHj#DAe*x7C8D&|mAGY!@0j|&CbYSgT8=Ft8WruJQgioP-518b|6xDJ_mKBTt!pa-5G=TMb=c?x3FzQH4bhFb@Pzl9Vk)I zO#lY#nNrp;jngWXunH2bit6-%qfu3yvSwQ_Xn65SH|qX>?*5p!T+na_GP_ZK^J~HT zP3GI4&D&nbYs33pgU@rr`x}s{1_*THlH=wo1DqtK^Thg9$F^G&Odav$W175rG236M zpSrLuf02nVTCiVbmHX$aO_wC81HMVqS^uK0gaJevYsa%+wGZZB8G2k8lQLxsl zK&}C%`0?6J+N#bSKc4RZa88edl$l)`!bO5wyqc=ANJ`Vh*Q5CF^BlI~0!{abNU&Hi zA4E7euXjq~Xxw6T(UY&$$p`SK3v}8YSpu!29Tidqd_$KOp9hfvA*ba=lz(vd zzWfyWCQvC2L_J?`$=oVq>`j@X*4aqD{OP3N77g89xzO_n1Mo`fO|GfodxBs173-iG z^D+Tw4)Ghv@b7T0x}R-z3-qn=U%0v2ajNGCBmq11z(tK2>Q^V{nF z3Za@+Fbf(QqLxX%AbsEV@w^`85;MYM&A;Xt?ZQxiQh=T5nxbPCn{u?LmDAI6(?}V0 zBNCC1wMWMO^F(z$ULL-C*fB25LRH#{yZp*(L((s4+6w_GWcJ$ZWM5`q<0G;PQGuia zi{YvUd>K=D#`8i-aarjrOd8@sUp1Q#{Xs;y%D!Y0xg*rPav8C7YC~s9ZgqrpD|>?L zPddsNxfU`tV_p{5#P71O=PO7fcCq}DMmZ#7f(>Tlx-sH%S*18h)DUj&4KC|zY9;A! ztiRM;OD>z7X8lCC2gk&%#rS3&=)W!sRd4+lQy<)R@_Fp$Q;cM~N+X z)CsvPe}ivVqbdJII=u0blvc+4hB5x6A^N!J3lY*S)6s51z`a5#QS|FZEg=T#7Q#(m z+rXe}ETg467#%E=4`6emVnSny|A)@iCIF(Nn**tZO4SwIXyOv=o~qY7nwy&sHqef} zCCLp549;mX`+y&etgLh%m}eg2Yq4rN{#|#^qv*qIp~S@TgLK-WK+<$#>r)eZdNIpE z(NbBmgN3E49%0SyCeir0$?5-+YTLjdx}DZ{7@~x0HR%sx|3&bGf{vYd!YgZ<_LU9( zm)YAv=}Sd`_oBiiYL#I{ylO?0s3Xt;+xa9{@rDCB{;GQz$!}s;`(FsK&xe`&+=iN# z0HxxblG8kIci!fwCHe9PHptT8j5amS^`_cO)zz}SWL1Vr>sDug+y$ZG}h6 z`Cj{R_+^Dh&-+}lcd;(70acmr?70R+KchV7?zVj@%Em|pcDg)Bm;Qe<(yqs27ID$W zxP5H@1SDb%7E(5j3-j~$tC=|eZds)&rM2Ys=5s1GqsM}ympz`oklb;&+zPz> z`7_wl-fu?tC3^k5@c6+QVF09|a@;eEt2L)*UGyjr3$&<4&pcLUX2XM-LXmXlmR9Gd zX73A(8Ym>bklvZk<_I&9L#@3XEVr)IjnazW-n@R+BuWkQX!G(xy;Qn*Jz1;)fGl5J zFE)T5Fp7V-*6RspT>RRO&2|pv7I%{OIsFz)4UB^8o*T}=71ne2FO_BiESqs?^N|Yx zNOO60`98P2t>Jl6nxn9)#%1m@h{<^tOUJ_Esfd>$Bl;Ye(h}HEvc!!`E)YE z2*n6(X7+tBwU~;qqSjkM*=fsL{A@pK_OIyebTsFR%@YnYmclUaa_y^T$+920b$9!@ zyuuRcofU(Xj!RQs_U>jToIWu?U;&6f@3$Rq^R2C||9^R1D|~Xv-p%`Xg`6nv*d|uv`0_z8l@le)q6w8mbObGa^E|>hoz3Sid+$h`DorLt33qHhdUXF50kMGJPlLp8i$Y?|aa@jF_6nbecZ@!(&@f$+^4LeHHI1_UO1!uzK5`;xK7F--fQHV{z5>_bYUH zUX?kw3+Lz1>alPYoh9w%JNV#frnvq2`rDtmH>^4n{SFB_e_{yE%WDwop9yv*`v-%M z-uETB-VEFx6N(Eu^KuHJ_fLGlp4$Z_!_v=_BfW4saMtyDMMp<+dUu7m@_)mh#{>_) z7@jO)e#5sDRb8F)=qQ3Se7+nCTjg4^SR#eVPf&I_Z=3WkDyHMByq?^itBnDll-opz z{Ve`KTHUfI<#azU-gIy2Hs7AMa}jO%H*A=|xn*@JtNit_(~TIFsD0ME%{i-(JID5X zt&L8tT)W0}Gzf+8p`1~-wGjXa&kH7VD>XDZ$76=VfVLt$qosic8IR_R=aAhUaS9Kfs=i zV3Sk#Wc}2P`DIpLr$5COlZVvn<;@HBP0i1`(>*G$nh3@G#s;-MjUU<3XJE`+o9bdUX>GBngRtMRM8+DGf{ zp6(i1CDfV7MJ?W4+cq3X$(pFS_wyQ?cT1 zZ3t!l#zrV^=dnOouEyBiLn>2UV7QhOOUl&0 z&qZen(J9=%1jtQFTH^Z@wr|L6$9vVqq0Q=)ACYWiH*3uEU;k*+W|4XDG~>`d?kREN z4>U`y^x6TZ>XnsfyA+w6=9xwpOJ9zTHiH9c2rK69R?Iz}04hsU@g z`+@_U2+M2P9q;zO%;Kc~e3`Gqes9dS?Ac8OeJ!7J?r11GB27#}S=Bjp*5UNuMw^jc z(c&#`{C3hvf$)AiCb-Cbtlo2iiNamKVVom8X;RAVSz+{^akp+$_#(Ks8fa26d-ns} zLQP!AHU!*+XN_}v2p_$q$2g20VrygzhIuu+BjT=f zyEgS<)NZV7ZG8a>)M^#Fk^kb5z0hW67P*eqDQqCjU`PIjR=;@0jfdORzW?;1dLJFU zDmUomxQ^mFXOqQY7Q^ae*kL=(Ri>9_uIc4 zSR_2C`9qDd3!@P-a#S=;oZJN#5OkH^*Q?;BTYvGcfKueqS=)>Z+)r)NZ6>)L6s_xt8aQ;8p0iEpMN=3g^Iv;ZsN9$2T>c#LcvRu@t{;4hKm+|JLEqMB+MWU3(g* z8~S!$(zHB->2Li8<=g&6oy$=E6s%<>J^`Yt@JYPbe8ql z?N(szd)t$u!{u$gOM|j7jaqRF@L!(KhllHRtzd%I79Kz&TYb|5z-nLv>2K!*t-^K# zAt@-{cS(G?riT0O4GZp-0-d{s3PU1Umm!QyQAihnjiJo7Oy%JUKGie9*4$s z<~0RZRBsysO_s~+qZZYkd&>(hq?ON-j%m?WPr02twhJt1*A_K*arI<*HEkT7*MDfa z*B>?z(ss4ee?u7Cdc5H0@ODgefS>R?svJJ(>3T61@g~Jl!A>_{a%i&}`qO;hpke?S z4;A-nDhi{2ieO{qzEM7uD4xuA?Ft1R;Z}SfuETz|rt)r=Rnrt)S3!9>ZJXrW{_&cY zMw(uJu%q+5`!uxii356Z!4A&;TcWa)PQ~%2!w`&m94Zy@ASh8D2W)+_qk^02qHV?D zpWVlG}g)^WMs%4{tC@ZjL#tmeO3k(>Bj%r1O~D6WWQz5e#K!ea!`@%HJg_?fe<>x;3; z>jK5`tufF`j19Yy!z30@VFD&mKY4Wy$GJ|`=v^m!C*od19*&UAgB z^KBvnbpmAr-lv<br1xfOG~@i zS}65A^e>wBzJBNWt7sh%-Mfiw?>Z9$VNJtXcm~INYiauOxyX`uh%ljJ6T@m4Jmgg^ z3{47S>$rte1r#JF`U^V=D)(DYb+uk;8K^f1civlB*@QyZ!AF2Mch^B4D0yL~x%rwB zVbhi+)divTWmKS!XnGd2^i*uj|K{fiKC5eyW}oOEUG+M9`svdK0pkliWT_0MOUi_D ze=$_?L_o&$oJN|LH(%tfhQIg&PeD|4KD;wWjeS3@Q%U@&J8>vb;+Sb6(g53#uVr5? zc}q!`taUd>l9osYoA+04y!!Iw+aU9UUF#59OM5 zQYk_IUB}-`o)C53=q0Ya+ei=pD)DdHO4QF@u=!3Shc(D9)Uz5y(*6n8SNOd(`=uxQ zCnJt-iA%k}!(r;xR@!NkNzF-ZaNb=3D4gObQWmXI)b$VFzV~)d5c_yW&DSpOdwsLmyQC0SCuX&@Na7nPdDJgR(QxQ^caG08p?@knx3}E-rB{O78`r<`@Qjz| z3Pf`xrPk1qn&0gv-q)+1w#MXY3Dahtmu^zVNi$A*Ol>~Z@<)3??w_{JQhytihQ5@>8E9_3$qFhT7+a(z%A z!V=7Up=}USezvK5H?-OfiiO6L6m9lk@$=4T_z`Hs%RrG zVCv0Ij3?iXAj@**@0UPoHgz0{5I|S)2n-`0a$dODclP(gF}k(>OMpC&bftIJv3d59 zZ+j%YKG*ZSn7KnzYpbeKq>Uv?{r-GJeNwS(-z0V+wuPiMU_^<1xNkw%2=}+fySDfx zQ#ElpDd~AZmWrX3qeY2*dhuHQ3lCP^!PlNdx-$I~%KK}yW-cA`Mc1Z4H&fY)`FjbH z_tU zY@$rgclq~EZ(X;oPshnyv|2&{6L%4>h=)Sp4M*rQDYnY{bKpJd>LH)TTtaUAs^vWI z=c85&;9)|~Kdr1h}rQP9bh+{g4ze!kXQOoN-;PvobcXVa#GuFywlmXLw2PwGQ>GSC96{pRi^_I8-hi-LxLk?&Pk;ry7A z|5-d1z7*0_Bqd0F?p+$u*g^4o_8AS`@B^xwB#Xukru~zv*=Q-nt^GTP#RUUl#DThDY%wZ0oywR1W@aom2@GpTtolu5C+#5*(6c_08J?(=nkJI<(C zTbP@>!<*kA{x3lu7DJ25McgT<@6A=p+zPEBtQztK;@R3oMo`%%4a`k|izRBY{+2pC z+RY+AH9>d*Jye(uewL|EF>h79pFx1g@?~=VAXnE__7!DNoc_s^@ab-zfhWy!_gcN) zXRgYAE=;xO zbS6CS3l0lropOkx%nG*J^Ypj3bkK6FHt25Gl>4wL_NOgZ|7-R4a;KH{FV93t=~h@$ zn9Z@@*2>ngg;C+m-uV1$q zKM9L0hiqxCeLfI}=Cq7jPTX@D=U=PD65?BR?6~|e0RNjA zh#ZGCp4sO|S;@Vv&?fWQsP_6>3x9;t-TbJ)WXSuGv#p8W9xh3%{vl6QE2hOaylH{yr zdL<;CvbW4Mw$n3{C8;2?SStu4>zdeP z0Z;agw;jLG*I^WbW*LF!vSzS?K&NWw&|a`7pEIlJykl-&&C#+4TSHth-;qryjdFv4 z{j;y8l$Sh-8mD0F#mpL-qsX&Irb?}nLTUCP`Cm}c1x;Xb&Jw!e&&5AqG-^sTNmk3w zA(BNPigOFh8+tZ5tA~Yaw|NrCSiPxj&ZjHm5nf-9W$_bqO8#P%ayEwgJ9ZoU$1ddU zVXok-?|l1#apX0#-d-Rx=Ef_y*wz>9o!a8w0bYNNj|w}1&|PNv zn*QbGk^9!^1FX@G6DY5=%jllh4)oTdv92@ywz71iuWDgop(V90ZOr_C$fM+Y>o}Yj z5)X&i)^OChIEz$VOek?;01XbIbvsMbsi>*2R>gUB0je%teX)FyH0-|)2A^5VLYhvR zq>iVADE~bPI__oV-*d?!BQL@saMG8|bQ&C?2 z-golGKxGyR+fuLTGIbLh2z9f(v9qtP>M%a2<`k){*CP++#J5*$Ru<)Ew`#Mj_cIaq z^?y@Q`O-cw`$?k%ychwPd8(_c0o=d#UGvm!BbN{e=qIJ6rnb)t{f{C~5VJG8uILb` z4wUOPSg$T|$YtK`XUdtdE!@epk6aTHriF!vH&`tfBOf34XrD~IfzQs8Sf)mRJZ<2S zT`S)R5VCv$#>#M@oVE6LfPkIJZI@kC#NwHa0t6^n^u0MP7dGzu-YSS}+-?pgfeCP_ zMveP%B7@8MiW^4+MsaAmpbIJ|0Vu(Gwb=VJj?-mbpAzqH%jIczSsnjH2krvXn|@)w|aBmB17;_~)2QmOAh zP4;aK17%>Q-U=w!p3Y}my~L-k00D#!1A|wJXp_ZH3$t->o%iZe5>dFte7V=f+jFMZ z)8VOBgMG)=)I$#`aA4hoR<6@RAYivL)mUW&d@Sv4g+CUnP1sCF)H@8kI@RgVa)HsJ zJb2_uE`!w#P&_r*tb211RT@3t0q}blpVcCSkC|VbiYqHY=su4HeprDpFsQ4ZZs(JW zHDj_tOUBNR3=aDvegvfN8_z%gGxUHgh4}l8F@pFj zM`Vxaoqti*uwP%ply}iYgWM@8FE~@T&xb$v-Ld1xGUsN~iJvt-djHK&c^s$Sk<$b> z!s*Osf~w>Tn`iL31m?@DJ{_ssOQt#bM7aoP6W(m&TyFvfDpduA3zY`ZGUC%)ay07MlAW;Id=Tto_Y_k#NC; z35E=R26EIzveTiiUxoaDakI^0H4MGJX1R8ItIxYYy>PPKIM}d}VS(hV3Xm3>u?W;# zjTC+te4qF6JF?d97+Vm+;DZLfTitfcl%(CI=e~Su?6d3ZD?rLu4S)t@x2E9rs8G}! z0Bsk(wsrtp`Vbwh=P(V;!Qpc15rJ&8=Oadqvc~r+K$`&g1}b%dSF_t}G%^O}!JN?Y z(#ddPNEX!7j=uGmQ@_{W9~!0`1M~LV!H~6Iwya;W9eP-Vi&UNZ7t09@jccXz;90LU zGGgs+!aP0#d6O00T80L<{wNZa9=%G-tmCbj!6Kys%e7WXvnqb}K`4!_!8qzNy$0{m z)H=XS160+zwWekZM`|szw|LDKku_9c|C5wW6E!?5St9PRYp=A-TZ~^#!O;Oe5N>dGM z95M?sO~f!mt>vQPDfG~nFT8*=%=2mHbF%(rwpcq#pkp8bOa~bumk3^~uTU!(_MD*8 z*fy|_`z0bo|I7`DSe|lr*agTWB%i~~vUb3R9vbtHVbTOcVP5QM@-H2v~0G&|$ z>MsH&a6+1%nb}}5KbDwiig7UB8;(op;zeFwqFTN)@$_?r+iIBqy$kbZw>$9Kdqjtf z&;tq&NXpHB(w6DCuu*YJs4XvK{AXNvC=Xfr5Ug&Zo3es-xJxCS*vY7Xb zgI8&xRsjfZ0J)*vbYEmAzEP)Ti?0~&t-dUNG(ZA7U22MB$vOj$Wl@YPg*FFOmq!Kx zOByQaz?Dy+jiC&#Kv+Dxg2Kch* z(6ihCN5~ioclCM}T6!&@N>C*wX?DNWWL9Gh=94P0UTcQwsyr*7G$o@TLnza1wDp5K zTWv^+gu@Y&4uIhG*ei`9`r>$SaySh*h>}@N5TX0{hMh4&jmBI~SE_!_{^Z}fo1jg! z0sLKn-^2ZV)rHGzHK5LBU0}kGXZ#i2UZ=x5!J(rn{b5{;90QW6bXi&nVSoFw6{MXcJ{hkG-C~WK}GNbqo3B- zb^tEI`WE5B4{A`Rv;#~NZ`i|0+X>;fj(4RRpv5)*-UTiD-LM!)ehzFwax~V?9fy+- zxx6mc^1wr3F9QGbFHIEIwPrWW@>%4QUKy`{G=oG4{D9X|$HGkxjr0pN8}PooW{VTr zWd$sMPJzf+H=dzCva=siNCp@U&pe;0&QNqwF%Kkb(HijD?RT^7{B#e^JyUeCiCsu zVldRu^v6dw@B$D9HE_H#dvK@l*y;;*-9c@I+hEj_b)wgYU&uCR z77za;ntGZBmEIozFz}9ALBmH5x4AIn7^wWIa#05&ieM3h)8=ry%3bYkvE;#OCSWm4 zjv&JEk~AQ{zPK@{Ua!wG_M^ zV(09}k(qg&3GSNjO$=ZJOjwzmPKfZ?1}A@k3t4q3GpL)Y(q)_kCl#q{S>s?bN1RyD zPTL5NQbDnU{_=diqeH(7(yo>eLC37n7b^e9Sm|P^oGY(!08}b)VWdKqviW;u1*w_~ z-fZZMu!)O!d$+?~{f@+EOND?^ay3juOlPasU7Cj)i@_OuDAPAlk(5Jq?E6Ck~r0s5_QA^InYqiGUy5|JM{y`rB< zlvVu|7La^)aIu6iATmJwSM87V2x)?VA`d0qE(&s@PcBW#S`RLOTUM=99X0hAALr=6 z#i+h-Up;hLzt1j1IoD^$-)5*}0R*p-<wOaJc>XPWX$3p5W9K9j;oK4L<~L5-4;Q8Ky<;)M->JnnA+_hhw`Kcar`#Ae*XM9S0Dbl^{!3^RK9v{ z7i{{U=ny~=+&VOH9ro zgdk_46Y^M};Gz2+8_td3^O>cfOoPa_fspW|gs&0cU<+m7^AT`6-xU2vNV-PQQNseH zW7C<~Is&h$?NxvYD^kzg=9ZM@!tl9s+y6q{JDd+igW1wskDTzG*g z$BkPHWKtZDW(Miu;NvcdN@p~paNvW`0!Tyd2O2IgJ3=53wQom|Z~ZBNY4Fzl6os$Q z9!JEmtfH3MF)n#8jimlPEV)LdtpL>cuW*=cLdsmpO3je>D@*gV3jesnzFW%Rlc`;4 z2TUvv{>9lwd$HXBIFY!%aDBWAIF$qd!w=|YZ_q<18^60Du5O8;`@);Thr-JFlaVpO zX+ic64~wBax@r@F=O))s?c6!+>ac}Kb;j3IkgQ>$N{7PiA%pJn+eZL9UJnbZ{yY+V z-!wNx0Mi|yi=yrYc56cAfV?zJI1UAa4!R8Aw{Frt<_<%+m!90#gHPHDFarr^e`lu|apvn#M#<2Skhwh_}{o}zy@ODYilRGFJ z!f2I1DG6H|-BK|`0`^m_SBOo1=dCt(8`N6akNa z+e|$>990)|Y4s=MjXK*d&q5gRMkHubBs)P6zl^<+XI)wphi`x4>@RQiZzd@cE?zFH zCHDDik}~!Bi0}96k~~u;>R-{P9n@RWxU7GWG-gqebjMy=!PoBEcd9il?!Gw+Bf2~P zWag4j4P#&K5u>G%P5s+`HIXjh5R?!Yw3R`E+;ZX5+q`H`7#-;mXFm_ zQzZcX9m26Prb-^lbCi+WUzQqyQFAlAF#O7A3;H$pzr6>a1 zH9A+cK9oXzkuj7)-DM)78DLqA^09#u@&!+dvx9j( zWP@2CUBK(;_Ottc44UtAphStUll9r3|@#r8P*w&b&z>=PhEaV5VZQS!U6RXk3 zE<(Gbok7cMth6D`j`uYWa)N^oElEtBy`-KOU>a94 zc93!t?8%0M;UKrUK2{bq+zPhB2fVJcx3h*0m`@#NWPAwg&_si@NZ5m_Yr3^M{nL=( z)#OqnOzMbx#Rm${vHa$kL+u*($m9&yOhGX>M`6`SAzEAg0;-zPm;E#P08}bLgpIk` z*@E&c(>`oYR(4<9!l8!!$BiYkOz*2c!Vb3fg@Y={F5eh&1XM$6ye|2{XhmE*I>Hw z&Tln@kCe0memahNT!Ga5k2S#Xo>Zr|0Qs5* z%=G)tqP)KMZ)(0#fKG5a5r zflV01B>>(mPy4-c(U1%iKapFXs{x49janA*Jrb_+t^ zJAAfXyc>K?DHoI_*|No|h4Ac|A%iNT%#74|ZGW*`hf1t38b{Agk6w3E{X}de8}1(a zguqayPHv=wJWzsGaM+`d6F2^1>tU?M>PleRbUy3vLc~C$^pG&Oz(+8Zo}vQF!8Nss zV1{8PFYuKrst1>M(@xr%oiB z0BNY|neebH!M#=wrXVPFk=j|FG?d%G78p-I?m(=?rB>s8{pw-Go~b9KL2vJ(19F>E zQc*_)%R{3Di2i*4Sh~cD3E2VAyC?>G&hU^!CUlxrRuUFYsZI;3Y7p3uvz}C5WCds4 zQG2AZaz#upqU`Qstn}HqHtCeU zub4d<=c23Y73F6xC-?7LOFXZY`+pi~eH7t0@#!1Wf_7)hKH2UceOEQc^do&@~}cEbbPVuZg$eyYMOAd?t&EOC;sn z3WGvSlaV#zii7DR-^c$+U3)>`VD#4T|9*{|gF;bQziHXpkfF#JI|@mzY((~{Y|lcY zpzTWRMWk_(c!i~Bbs9hJL_d3X=Qt7?{PtSSTEz^@?Gdj`SZ^!T>3?bTi@xDeQ;3e5 zS*s$rg}ako1_~BS6Pn`zv|umXz0n0JDg39S;7eoHTYzo`vXh} zHD}QMS|pCq$@>N41x`#jQ?hKbwo8WM9O>**=+~S3HooiiNXkr?>gv)`>@uG~XeqxW z?Nk69d2xacx)dy4OlNik=x=JgCu2Lc=U&?q_1ER`<$lHO+o*Zk`I4?|Gc7m~t|rP$ zIQoIRm`&e&Qx2WgU4jF@xFD|Zc}l42*~5@uf4R%i*W$1D$6=f|TWO%h^VjRxgxZ3h zU=O|))Q%>@@{qHUV0+&qo#S>v$ujCT;%$Lj6DH7zf@U{U7_UPOtmO1?<)S~}q1dUY zPcJteFw-C(gSz0ID(#UXn|)UZ{3kftE?WNB`KirNo2#sLz2*>!qQ~a`ejQCKp7IE9 z2MI9_>)^rjA|BHA#b}ifbG72OkC)N<2dmR4C(WKr2(R{A`4j6G1~pM#|N6k$U|U2m z(G^SjpQN`glP?FJjWFyBX2ox)Wf;#~VY)%BDrm!88%iN5N&>#X|A(n}jE*c=*l=Up z*2K1*2|BiI+s?$cZ5tCinK+r)wly(spL4&n?)~4ZyVqWOSJke1-{)ZiM)YSxlb6gq zSwMNCyaUy(^uh#mV~FnelP*qX@{V{38)}*U-$Lpe8)(gq=<=ttbLgsPNfB=JV{FRu zx+cvgjW}Uv)qCf{^$19`q_m|D(6lUmJ>|gPEv2b)h-F>Dz7kzldyPj`hezbCO2iG5AGC({7q!L(0_mN^9U3ufBc%l*i!m$xALqW zs48674*2r`EG{Tb}F72D@g~3vPoEPT3&O z%t|i)B?`|NB1{R?oIxvf^RE^1>+5cfjGWj&H(Vy568ph`6UksEEi3VEum zQW43}5m*kvn-EB!<6tdo-bWSK z+Dc8uoSv53sc>2NjKqcxpolT^$%?f_GW}3jt{XVlqp338G4S#lfoH@TN@~9{Ug|OU z!n9^t)uEc~D(v;Y{p}uT?ZS=!Cr#}A%U1c~^pxN+!4$dRUh1c4?o>%DmHaBA6@eIP zPz|3ZIqh>2bS(-9{tmGGO^>ga`Gr!*R>S3>yOOk-i$dcQzv`E1m*taTZ~j;~ozzi| z2i;`Eys?%=2X4e??X0dK-Vuk-y77iE5V&D?@t~>Tco}bO_yl|GpRG#AK;z`FEE-RN zV~?xrCr!%EXXLQeo9Z`qZpcbx4()diNR6NRW}oqDsCq}WnF2xSCvZVPLb*8Rw8}?O;GXzHn?q?f{cHp zGRkrZu7;702jKG8p9@ob#C*OCZWM48PF)=E9@o1@^zmm~YwqH-MJ24k#Y^s)niiz0 z%X8p!Tm|#JIA$1p@JvucI#J#&a>j8FGfo5#gF>h)_p*H|l&8Sgi6{P+Xe|?9^xuv{ zywc#I@W^gp86ksQa+WzjItHwgW>a_%N zWHM$kla(st{Jb9aAjqv)&=rC@@mDndwA*Jy?xh|>jxw+XL~_4n>9werbW{N)8*K8{ zVyi13v`Klyq7KQIqL|>Z++y9jKJ4sYB?dKn)deb)OYvl2Bkwpwa;UJX5x=cKf%P&-H;g7$h56>GYk*RI-tsSHC6yj< zaYh3(r-hAbl*F@VYY@6hNnRgLJ67S?s^)^6-`=7%CS}x1%d8dzZOvSzj?u3*C>;~K zdzxksw6$z`i%s5l)n{NlEAqaRp9x83w5pIQDex94e6s@SZ<*YYw6NM!ao$VulnR+O zGb-Ap&2zQ^`n{-b1#^k>(#H&|)ptAXa8A(|$#7c_$94c|>r~|SKzAjYC<$=Q1@GF2 z6kEcAiAo&U-74Ml^jS@6H`(8>y@(q?uy`{q<6m3hDIO`hQw_o$pz z8O&zYj|oB#*#eZUI@Jt8Wqk~+qqt1(^0hWDR{UH-!aZLn3!)5+A7O|(IaqT6t++Fq zP0*7ILk()9&QVAE-6K)qwDX0sS)!FL^XMThv8x*#Rxqk&3pfk38n-y+MRlt>Q7{|1 z@T!Ulk~3Qylw92fFGHG61z7PKMxsFJNU zo0|77PETgG_;@Y3a~OC3c&ST!(rdPZC?YK^%Mel(IM=5^44AYT`3X2vRN^?otb#z) zY-e9#pDeg^LM32b(`*;N7`R)HB)6D{H#z2gfNf?Hz4v$nv@y7_5fXiCo18Y}6M^sN zm8#{zZ9z6X$H@UG(9aQ_Lm<>}BmQnznN0JXU}EGL0!~cwls1LgTrugDKm9VpNJrEe zbP-CFh6?k?tJ-VmBUHFSQplFjRDuUXa5mARuDpCi^ocUNy&jH1YU07Ip_j|~qGJh< zvjcxfAZR4cw6KP%p|DT9zDDmc*Lyym7B=+=D#3N@F3b=Er&X%3C0th#>)~cO3&XLk{ z)w&6O9v%SQZ`2q;va{NmVsa_SgT&zaL8K@VS@#__Kc9wR7mkJU+6~X<%^p=f@7V-S zZi)HuW5Ps9RX)A`TW?d~&$8)EJwqu~ zHqs_d(Qt-fV&KR8|0akO0TQ^DiZ=cW$8wrR?qY4sEbH$i9|uBTV%*|^ z8CFobU1pPIkCtP&nKaWM(L~n|4Id^QVwl2DI)xg!o}15_D&fe)U)xXng1oIF%YAbRW8&VU zcMc>k_;c#~54V6BRHIHilV>k!K@^+uW8?cHf3Ks2@A-NUA1jyF4^D^_A1(w;wtueI zZyeN&f&%<7-)BQqO3etFiLMK|-wMRb|0Gvv4r-j{$Ez1}5N<5&V!FuPYR7n%#WV4m z=gl@>fakk~&?k*vA;1?R4+JY4FNIufDD%W1p3G-$pBS#ObM7J?T61r)e*SCiaVzpB z@Xom(+tSjKAQud8S%{A8j@5J=G0eD_N;52R$aF7V9-w^p^?qZ&+3B0&$MDG8I$V>%PEkL?e(w5O#;hu~)IO=Ps;*>{cp}J;9 z)1Yp#=vk3bNBz`Jb0dG~o}x+{sS0V1Uh^JA$G|O*8!GhCN>rQuyKC4i^m=F#BNx}s zh5W`m7mas@ShknkXbh2n`&0(X`U62MEawtcrh&#Z zAS$L8$!;TyQ9v(&fMa#DCLWt9M-|!8W=?4}-{w;V z*`gf*!qe+K5jKqOT<#(2n7X~giU`Zbaew!(s9Nk@;SE76Ai)dDb@8om?wFe)@;YOV z;mQS+7dAP&`?N1SPT5ck8FX${#5FDRhOH%ztM*Lcn17SG8KC0G_PX8~bEh!Jgla); zz41Ge(0`&II=`Y-j&bx`uU3Ke`MxS&b1BYt8xFO=4L3d_m&aI$PRjCrMU42(2UN{k z07E4s*aq#1C{1=io0BwB&de-wmWBbz2vF4+nz-bIhI46Veju<@+#c;L$&KNAgt8BdL-4W0WY6JuXA#CW)(=#zYZY%x_C$H(C{_~|p)IZy zrzBB%xOEXSPs>S--BD-D(G7rYQc@K*!$LXto2jYI#Xf@X6kA_9Fy(v>VahO;ZQ@UXG!{bUj*I9bXg~1>#pwtU4PGCLA$tgE1co zg9#$2ml;Wc`I$vDAHwN1XyfrXmw2JJBr8$!422;%&8sE|bHjd(*_Eud*llpyuQq6Y?$RYQ;MCY40~s!zr{CxyNu3Z7XBE|Y`$3Td41mr zrg5WD3L5}D!vc1Zbkov0IHTptZC}_|`Hg=%2YD)9c4E!wkyIG57+Oxj+fZ398R8Bc z@^AXPdsTa{FlSS0C#@E%sh;`dSh}qP52b)jA85q4k52Gy!@b@bFRyit}3w zvDh_`8-}bQ2T?;1#Ro9x4Xnm5%q)~SO~*PwzP(zd)f6&dH)#msWQKHYbbgq`Xi*^e zx9J&L`I9rfNvDy?87N`A@g+l8jEeK^)jG$rep*TON)2a}vPDGtt9b)Q7|>u*XS%g! z4zgovA_q%7K={4Xp8t7ifmPfRd6J;yg#&A>*)fkd8N&hX8s1Z~fP;4D1OHg5LZw5d z^LENdLmtOo_Nwr^sY`y!Y`i7Y#7hCM%F(6n0^UMaqlP(sI7W7bgiE_Lcs%Jdde;Aa z!$3u?Q7>(SN_iV0MieJX#p>ObbJ+f~+i_z)jXL;-8|}~#Y6WLHWqM2^(dk?!M7nE}OEiE;-_n#Z@5~IvAW_>yh z`ai4ZEl0553i)khx;aGpu3T;g%?e~7`g`N%O@atJ-xwPk>8De7%>kWX*A7a~_6?QI?&ooP|av93&Gnv_mlzfVATn zFF}=>(cAiCG$^)W83QdmYYr{)kFj5hxD|BHpv^T?VO6^r7l93PtOK&>^I5A{M~_RNKx`p~c-3c$9@5_>FNSj1$gcJWTs=CH=x@$3kY?bFbw;=k-tNA` zhqt3+)?+!pO*{C@@zX!DN!r?-cNT{xJqG^)B#Al0oYiEOZ3hNp(Pv6|-sSE0`cGWO zvTXh4igdLp$IT`Bo*S?Vc{p2BkB%hp3dBIlw1*|`;;WJ{|7$m7y2VEgLLMz=5wDDC?yRltN{=`^vE zLvEuIxE*-K#KR&fA?Su`hP{|5d;}5J^v(`xKmOGRnC*MkjCP^I1g~~;@cezc-WtB? zvMz<1^C!iSpYAk&xixaFq+``!Ck-zOoKz6{3}Lo#a*5Z=eap9$-vw8Aq?r1#3dV-G zfBN@F!1w#k9YOdJfuj{38d}^`T*?>}hLoXHidlTP&o3U)D`4_^c>sityWHbuI}(JZK*L0m&B%NNdlohNaYQB+%wkLrBGysfp}5=}Kp(iXKTF9}kO! zuISl9a1tQ@=^jg6As_spjHBwU^4=4N6gt#BGsr8TiLK{U#~dO#G#}pyrRj;(7zX}g za>^RT&6Q>(YTbO|D0mTJWvkxO)@p>|2D=jxoH1`qhLI0;)F5Lo(R{HbE_ZMROwEY8 z_UnLfln)(4Q-cHD3R(SqkJ-N5@26;rcR z^^g~>#;hXrV!w08t@-d<`(M;l3cAYm_zQV z@q!wQ_Jz;iLkK7M7hbAu90dAnfux}OCp)~2Ai_BsdC^6y+^I-PP?~P8w?PT5O_;n~ zK8rxk(vYNCj5?#iwHU7wH2!-kDuwut(sI_HcZ(Wa@IqOr@sB2Iikzfy*QgpiGw<{J zRJt;Rfv3V$1U8d`_h9Mqz$}leE5dbxI4ER;L@Rd+?vMGD^9|T@LZL6;td4zyxrw1l zb6O?t@nRB?Uw_DfXfo_F941Jt@xXzi!$3PKmwX`yQ|$6TdKUgL$RYPV>uj0hDEnSf zoJnpoaB;~E4}rG3YMSjTb19L(b_5!9Vdf=?{S3k062Ou7nE=J0yzwe7HoLS`Lxv^2sscCDD%l zZXo$9wboj~`uqn9@+aGQ|x?-~t2=c=NBd zsMbkR(%^!SO!?i8aflM&AscAZXq6}-Tq+qE`E$D?^h-A}zb|=uZlxRe8|4n6WZ>C? zTCAQeSjgh~Qtn~V+7=1!qY+T7aDs443lAD37`Y659NDjQlTWsFjD)b}Hd2W3M_z09 z@Os|N|2VN=`SX)Yz?eH9*sB1p(rN6&Dd;kXttTc>Cdo-PC<_#v=Yt4L0uZ94dHcNB zIJKj~y`W!M;pn65D_|xD=wD=ZHeRAYqKhCn%%^kYcTgdD2Wvp`Ey^S5*WhMp;r=Yx z-q~oWbN9WqHy%vQLZlxunD4^Fr)wgFw&Ud8o0rb{GyX-u8yJ!B21fQ}()j;H&y!$q zE$+VpWs(8UxgPU#{VMR%C%v!7H)6ZNMC{MLrGQ1yJ4CvUp0h+6$v7fV`?2sRe5DAg zNGt|Gk+?c%mSi~urh;NYn&UB}9lqe9!RvH=Kxt*n@&P-V^h&$AFjnYMbfwSj?$@K? zCEY-W#-!UH=go5kr;&=E<=B{R zk6pcY!@@RIx^53DFENUZ@apCRJP@I04pR6l@Upw0TMPLrIc3&)W|ngID&ssmZHjt% zLIDG9cH;a30HW~^FDx!m9T;N=CbT;F1shbe-MVKO7vO$PDw(IEON?>VX-Bv_xjgIhbKd4t1Hvl!f+=+@wyFJiuRFfGsV-9;0{Bo669~UN7H>kS91 zsbp&dHWe8$>h)9_i+YS%tm2>p*Asb&Iz650>&!}J2zD)kTtTMjm1<}|Hu0f?-c8v; zV5e`y3JI}Ujy_XDhj4(~0huLt5x0SK40&wC|G{Wzz})YgF}MEarM{FAjtEIvl3(_m zt`ZkT6BH4bYGuwAN>rgTtF!Zsq%;k%ZpHmeh;mYijpZR}(z=!c8{lQ~TmiPT;EB6ve=U6P^3<3pb=quzh z|1qH!>tq3$_6Sp%QA5gYNO@3zGlVR{GMwRKSg?t_acv!T zJQ~>_Lm=q0MM`BCHN+vTG|*$KdCjf|?&W*v&;|)owoTt*SVa=&Nn%P&Y_|zHoWhuk zs##`@W~T{EEDPbIQrXC*F#Vf*{9OSzy(e=Ucn*rE4|BE(oC@IIXGV@FbL?=rdbz_( ztB^_x9^kg%ko4!4QsWFC!ZR5bs36>;mUu*~zh~oknyy}_k}2kiGH(VeH)%)cJ5Pq-G^ zPnaA`VAAab-011sQNk`%3~YAKqJW!yRs8t+TLARiyhhsx;boFfu`6$C0KtX>Sh0`F zpeXQRKk*zk12=`P<>wZuMdit?vc9oc6v@?2g zvNX9%q3=t!AovFjXr5G;)329n2tGk31OnNh@>@Ti9lC>*jA*k)AC6}caq*W^J{afh&RsVRV=35$ zJq!~$Vz<_{vbvRe{Xf@W|8h%+5XfNxyxtdX?N_%eYzm;305>M8*L8I55XT2ta3T~; zMSxV9~7o1@TwbOn`2CK>`ipwSZV!smmS!OfD)q_>fr8lX^E8 zgt0X$kR>?=TxH^3O;r^tvaO4ja>am1DXa5BnH-D3FNrdA1g^j_d&s@Ry;tkac9ct) z2l)e1WEB8D4!LNC*+T*x9f9<2^Q<6SyypJS=Mxu#*KL3*W%#tq;1yiGJf|{6D876s zdV8gJ)&%-t2*fzVhl2j&~s?+Je$=6upRd;vLX0>kP|O>h^}okfxUHU}3XDl^!hS;XXx;VyOf zfuTRk>!!0yip1W874zqqoQ{;Jf}i|}@9lt(Dur)laGABED#R@|C$VV=+bblbdWLB` zf2f=~hO7i9Ur0`dm;5Qo>n>~BpsYynUpUt?L|jnsd)mmCgYIYRhYg25Gib6gnH>32 z6($h}J`edUcAnrbV4+DE@gP5LhOxMtZ7sQ1MB!$;qZ$#T4F0i^b<0eA+Ib0RqLOrH zJm}+*`4&6G3JOOeGSrF1cx3ZEW$sxfj1JM28&N+hpP^EjWsT1mAbXJ=g5mHi=wePw zlS-F`4q~Pqqhq&PI!_%O)ZTZAL-1?qm0qB-$0zAaSfzh}H9jurObS~;Z`Afup7rUhwxfig?CR#to`&h14&EMA%tn;mHu6SIS!|f<432EZ#b4` zD&F#ay@F2m9R-3Fw_BrTa*TNki(_ww;EehMPJS@iNJeobsT2w=qOf+@=}#=7NjD;L zCWyAcK+&45QEjb{rA4(JL0pXNtmpN)BR*E5@U-diee~#=EGGzN>d=#vFTA54>_6XUaBGZU<6({87et@b(4nG zgWzjIAwk(xQt?D%O~oPLlTyZy&84S1(ZwD^e>(GBv@SW0eX+%gXf|u0Y{fb8YJf2c zAB#n!ITVT*YTZlIHR1x&L@Xr5Ou)^gv4^ZNa2Kl8wtp#UOHIznQQC~Lq-Zg!i^?eq zuM3wu$WpDA=lk9-XFHsy*sO{Y7TVixAy4Exbi-LM~x5M^AaNbM|2n`I$kU< zrQS7p3u@m7f20@qp5Eyb8En|*~6%{d|nVP~$GH(WTiAWvzv%Ky-_w!KQ8ZPjfkO>B;56tSpP3=xW z|AD1(v|42+eAVabdLLKb>y^dlC8;?88m$U{ZYMZMBb?eXPreylwACK!o@adGt|yqP zVPVWY%vQ5-;usqJxGU~7Dg%c`GXC`nGtGvwD6@Z`^Te(o)~&1?I)nX=uKiaP-GGaO zZ%s(h5122Ai3%!6w&K|+fBBj0-1~Vqaj55U&Lgn_9(-*HK% zUJ~%>ZwK}{^`vE-6~oGc8;7iE)GNQdm1WzrHo4*cA3gpnjJ~gF~5K6 z7Ly6zLTvrWFAPt(Uyd9uP`8`6iT3gslEt7hjFU20#0XX5vSxofpHgqrK^ zrx9~5UYR2il7CNmgMsUTc%FHpMav$h7I%`=AX_?`3j?q6M)eU#rBFWR9~auNMr8cI zp-`G@;*mc*ghot}nhS_9S%EL2{^^9`;u#Y0;cD#~3Nol@F)#q;2UQ&S*oOp0$!G;< zE|81jXjH%2Y1a@ducym3i)#~U=Sll5V_IgF&OjnBLO+Y+1t(^9ROy8+drAj-TH5WN zNxX=zUt)tpS}K-HV{gm@79Q8a3G)~Q#M&9tj+r^?HAJk3@W&^QmC5}2oUzB(t3}*! z&hvqyNKD6y%j0E>oxHz85`@kM#~-@~y=%-pVS+h_YD#Ie@R_f=2?tU$t{W@*b)Gu~ zg^ebqeVYM@f(^EYN}^A&Th`t4y2-Ka))A2?c{+LxO&1FlSd_b|_Gna5Og7B<5L!}0 zTwQK!mr?}C3+4E7_kgr1N*B9@GV)N-Y$w@~prNxmK!TJcJCg@-;B%540}Fa&II4o< zLwWvbH0X%t+Ra}XQ9i(c4M7)3X20ID z$A>^DG=OrL;wK&MPcJWgU7p5!TNZBMUQR69&I$1^48LaTeEb6ap<(1eQZODVg9VGz zK)0CG2$MEwS~+0lmSJ;@$~U}v8Y%^sd)p1hKK`quJwti^86}*f=0!}~P_YvgycRju zp>tJJe487j;5Vd|yL(ccowWv14T`zM9Ia}Q4cx*fs8Kk*2c&F%_IlE#v3}z(BhKk@ z95qUo#27n;r4%<*T%Y5wkKu7z1)C+>K-fHH;z&s))=&@pI8*fbb2Ti+b{4n$l*u!R zSlOVABzxGmaOFYe1@cOK)&Qa_YcR0Hb#&S%5h=mOOd7Rt$jY#MNL#DG5FfeJ^2F+Z z%P*%)i?9ed+w{TH*q@K~NHOLw3z^x53k|P{?b>e_g-x`nO!hf@GSezD6y?9 zOQ?N5FkUc!w|6gB_}FGrhMz*Cv8s9p62-zzLMugjR;=Idwg&z5V!>|qK~LoQVFnY zSZf|aB6|8eT;tnm!K3A)33fF4JpIh&|E$9mRslxo6Nj4{Lcj3xUL1}*n=9}~HAqsG zAoOWsSO#I_5Krl1p>P0;|k>t>;t_8$ju1vX=sQPBiG13aEV6Z#wcI!#Q7} z*eH&QvON3%d-r*^xPao$m6(*#P!&nc%>2NrVGt>~TR6{>GfEE76l_ zRy;Id7!|f3G&dV4-2SC(M`|I%Ha|G`rx|Pqe4nxxF>8eS)?CL@K^!dSvY8S5-Ae9|#Y=q?RVKmj_vnLsUg_#{dk zYdaVJReI3hp3q$RBWO?GLbt7?ogYK}HWfnFfrawEQYZ~6Z;X*?sabvq$7~eBX*#n)u^s5ROm9Ggw)BJQMEP-O$JtH%4CSVx7TJH)A9s-*ZOE~ zUl*+kDopaqHwD$ze5L~T>c3cL!G%|i$Ek(ir?b7ZYvfMV1zdW=bM3X$c(VC ztJa%2Q$<;7lg@BZ497X2Cr7x4IGqcBz2phSeW!P|vy=70)CIEhF&xl093?J$lF6`Q zNJAi#)Nc=pn7sI2QHd(r1hULL@v~N>6+kU~QPGrhB&WR6(uwDcs7-jX=6|0*S{{c> zzb;(QGC(!jNy+ddM;;Wns9IP;ncRLULp`Y64OZd05aY~!OUJylQu@}B2)|GkhfYI| zV)<~LV|@q`a4QdC_t_~vuD-^whKn`}uIZW03--k=!p$8S)q&eI_d&$@C$t#mG@k?n zDoYfG!^56pFL&t}4D0WxId$cX>C(^|MzHY~NP?L^3CLtpk~#v7aSN{*nmv2XIMD_q zAgrz&_9w;-W0+4tOF`E8`Nb5UNp9Y^lVFB}donFEfjOen;O~Tu1l}d-8Zu}7Evh7w zcn!^mgDRG$!vYERBrmu+Cbo;q%w|Dy{0@OAkP98fEbL8z_N3Sl%!ObOGc&_qPNif3 z*{4X@S%|PG#j&|g5L!Iu2R#(pokQ*CGIHcP#+Xt}ghN!*6_?HHCGhiB&o~95QcP*y zg>&RRFb~Aj!J!nWlB~>RZw!4@w8rKr-SL~VtHLpL`@cw~G(){3x+~t=AThnRjx1c9= zyA4#~8Gf8(M%jnE^KpA_3No-IvSU%M2qg9X8R!Imq3Vf9pafyv6hAK9i~*X7Hq7jT znpwAn(48_ieiflPx%1MZps8UkHiDe`9n(Z}G5vtwAqt{)IPq|x#hdnFqGpk|{N5Ox z6~TEyL7B2|oVY3L>$bV+_vKU!-%8m&Xj1)}q^)ckKgC#TRY!@;W)arzz}r#{f2CX0 zFRwFO+fSJ$1tFBTnu1}0RR%*-6BwlkOrL^K|NG=e2;Fkw!TL%$rQOE(h}O4m80)}y z$aMcs(W3hM$U`u00R#`h7*hU(Z#(wLM~f59eHj^%GG;0>o&7B^ijN=_dWl(@vO(KFm2wYP~xW8HB>iU zO=$j-Idw1=K>FM50xD&E2|)udq-IjYZ0S>}`WbRsNLXb6YhV_eU56Sc(K7!!5A^b% zS`wq4!8f&C#u4Z&Vz_-BGX!8P*Q~&lH&I95_B~H){IinhG(U_tsg}z(uZL@@cy4{p z#)R-zy-s=JP>6c39yybiEuJ+M-y4WfBiI_dwJ;U3?> z=pjugTGzI;(}>DTRV9?q*#u%{ziwO72G|DY;mB6&DwiW_gtMhfCf7dx!P&KHNGVb9 z#hR`A7yn_syo4MXg!R~~iTrOZ=Rdrq6(qw-&$9OD3FklYgh%MgCK9jO9QbyXigU7` z2pbO2JCMmVKacgha+iK82^}xZ;3$WWR;Rx5c%IJf%58O&z)2|!b(T>Q#FpntyPsd> zN7%-xWs|4iM=E3fzrqRez<&%dvQER9&5)wv+>jHhi~qWCbWK!D?Bxgp)`jl5#qk-= zUa98PxToKh1JrglJ&R5ao(cmG7I2KU;ppf>i})e@;>WO;-j0j)hC`S8U5%-a+Rw7i%(K60ea&g zE0MIlTOY4`x}uyOL@TSS>22%y;7o&x7H2#vN|NT|4#Bx|+RHVWPq04rROLYhGc|#1 z6!?G3dsG&V-UTqbK)h%dFci;7gI{1i-R}q z=6c|~>WbPLKY@4-DvEhDFn_YBr7o!dBS^HD5mlB$URbzdvN)v)aY-fVSGPu;r5E?u z?2R=8Z3etXXjTqV`^yqjK;cs(YuEqp@9QUmkev8NBJ*nOSv%L+DSKFHzTJYK^q<}s zcwMdk-~BdU4Nf0N5Z>W`_iE8>KI15=VFjS!N^Q=0aeMJeV*9C4rznISrQPe>v2bl| zV-s?o^Ek{lEOQvs=U5hwo^F_>^V{KSv(@JCb}yY#e^)^H!(-wQ0Fv2H=CKHbl?;s+ z%#zPg{V7Hwygw?5L@%Jo0K%D$)XtRT#>Xv#L9pmywt3v;_EouQ#NAh>9&fz@ekpqI z0iywPLBRxu_Cdd2woRY;HmzS8jF5Ux9-SX?=+g+`)l`14O;sO^gZ#IP2E45`pf!{J zB%3G#Hwk~B-yGzEW#>2|&_+IYfYdopaJiDD9Q&&Fftbb_KuW3xyJ^$@yeAjH8wcEf zx#m#_AEeA}KO%4pNFtE}1yrPWv>g|a9ddZPnnxaAx6m4*JVj|5btxg2)PYtY{r9j; z>0*OCQ-f5(dEJbXonc~(Jk_4N^J3`_Jlh{OnY|DHma1gSr1cb!hQ$-6bhhA&|e{{V$b?7s>5_=i}E!;_w=^+NG5Qs_xh`IXotxovk41{`z^M$Q-S$d>+?|Y5Rbz zgV}JZ-v|}79nRu#E9a?n6mH^)|K}DW>mlpkH?69vNhlQrnTr4+67UYOkuFMAB=iN3 zxYZue*VXOqaXRo;P*C=RYic~2Gvin2b#{_-YaKIrs;H{6p0nQR?a9%s&si@4jba+R zetS*r%BE60U{!0T+S zZ6Tn+M|s`$f4ZosU{wBZ*yy_($`d<+IjZch;a>gUQwSW+q4y1w?i4R?5w-uNRewnuv)>`n(6? zA?`$7-l*72^aXVGT5V7E6_FOc)j)ha%VhmsT`kyM-mO>lx~(m%QY*yy=_2D|AG{Pc zM{gj|?4f;O9ItjYnA)-9Uam07;CpVYM($f7D{-A_ufZW!x}1I%F$qNgU4pB;3B^T% ze+2sB;d5H)-`c`%f#A_KOVG~#(q5GTEZE zT^NkvLv-oH@IIxf;{X=!m**GAonyLBGq1}m0X!nS?VYfO zw~4(^p0ujV!!FHk)4-3f+rK|%0mQ3wYioa3p1Hfl75rYN7BG@HOMWZDcaYspkrTbQM52)0(+ zd4a>W-Dp$WQ(0>0eKzO!T`g|;tWu+k_P9}g@fSAnEs{ugzV+<#|MdQ2Xwc>U@9v;? z&Ofy?C&3TMY6lH#>(Wtb+yI`1GBPpo`Mxv^MGyc|QhCg@6mt11jjMuN#N2$su9j=F zfw(bXN9P|ft_+?xmsACfOz_nV!eN7(&fnE+F=X-I(|;`oPyZo6Bp}t0^(|d8cH-&2F#cg=DAh0#6G!Al0(ubp1M_x}X;+@Mlik_W4M z8cRxsF;+X>s^Otp+6sG#*a+)g|5;ZSPv@!`mW4>Xt^7mccl76(fdB-`BM}Q8>IUWV zd8n(ahaq=$`HTe*&~CTFWB8SUtSl|_I!wSS#R-sf!hNTu=#Ka6vg*v{8|2To+N_9z zgLQJqwk`AGvp+X-tDm>i7B!g1^29X?2*47}8wQJ}&EyCQ7*Z4e6YO+8YBC-GGR?Nz z?6Q-bdwO8$V!Dhy&kxOV?%XZ(jS6NYa`Az)8%zTf8uhLxfyE$@`_}=aK}u2v=me_i zsTB8Ci1+Ly1Dgrzid}vItbyVOd=~3o+`xlM&GwHEeyr&@&wGqiJnHxzh2MB2bMMzjw-%dudo-vyOr}KZvmOr+aD(-k z*&d>`)faGcs#Hu6aHyBdGY#?%Qe0GI*YFpJ(T~&qH>-^TE0U#-S&f0PaRfXyzCw3%oMM&1 zae1y9BK|?ZEuQ;(;Zg(uPVuMDGjHL1rcA*$P;SV-mMQZEp)8l#JreEcV99HWo45TlM}HJ`%%uqA`1>oC%l&#auaIJ}&t`@3 z1pO596}CALr$1CI+?U5{p8S^m*(w#8s7ANL83-E!_%`XX+yOZn+M%cYp}mDMestUG?zEV$?}rxMr)T z%VTY8Qv)H+l^I+R8nxYsHE^V}CEz!XW#7&z5UAJeezQJqOfe?RC1cVUy z-5#gN8`LiMNRbhJaOk{t&p~a6Nk#>viWdgM;Esivd}tBXrD6$d0P~x>x6H~2-}@u*eINTSr_9(bZm#a0 zDL)3hW^is$1jQPVUarOY0YEq8c4ppdE+CO=Hk<7aE{JD)PX!EJ_tD3zivzI15-;?2 z`c%6S8DCOg@A-V4|NUXG<9Xn*nYP32sEy>r%XoIX_v5A6_zPlK+RUcZ{;E*|tTi(nh6OX;j*_ZQHhORob>~+qP}n z&V1`TXYYN^ZSUTH(NS zN1xzV$SDK3mfOdXjQYr`jrxF*0m}o3<;T3zk~D5K+Z=1Vx}uPxZosGYg@oLs#2JcY zvN=qorKa>`;iCHxkVH(v2ri)4eo2>Hneekrs!hOx5%Y&4=S zERlPLS?;X^Pr+U^E(ggMaj5Pn?hH)+_<;KR5g4fF$kPV^C}>w%&%pFMoyDewEAlbp zpj+?ybqL)9ERIWeS}+_)veo+&ta6gPpUl`d?5FPc3)sr$0=`_m&34yK`wv)wLn?m~ z{K~*tcE_8Zs7s-wQCyd6c9r`NcL`+iIJ&eTiB6J(dL4|!0&E+v0k<9UuM~)$L;q7I zi=~}hc&50)PS;z`n_7$GDpIqGdA_x)$};yIU)v&<()Tn6o2RP%;V2nE8R++y*D7hs zDJplt%`pJh)GrJGvd4~Sf3ZS0Uo5q+DDlBtNF1{YU|QYT88_)0_?eKg*lAfBs)|l| zX~#jCce^Ga{bF#n(HXC`y}Ed)zYL&qg1-m;-9y-tL`s1NS;yD*Lb&e0Zw4q`*slPp zgo#N)8rgw4%2e;R)@q>>SpR_oe0tUC0Vhj(Fntb@Ishe2uib;^mvzHh zX!}zw69Dr`gUq{>RdgQq18CKj?Uiv^)KbDByya5GU>InI?*I%&N<`#+fjs_rGBded zlg@>**}9O}lS$yZMZ$&{e{eEiI4UDi+TjB^;0wU;oO|zNu?%S?@*hj)iAT`Gp2g|* zOZ%s3i59}&d{E)qonuP9n)P)KPgc(t+LCda)UK*B09O(K+Snx*Dh=&J-?gVSZaf)) ztpw-c2O3W*h55axLW$u@=l#Ko9-dkoY~0Zw!bx3cTZc^GY`4|nmO&6^#qIrZ*}T10 zU#x0Q4>NGtYcKoOhqS?*#c8$&qKEgBHQXx~YP6M8z@12Ph`Q_fs-1v5=>iX^zShw! zwmI`EfsuN~Mk$i4im5%b&1tvS zLTWJ$AS`B#@QG>+*h-lLKx3N@It{-ry}kk{FSZ`2hU%i|dwauo`-8;}A(cH(u1v@wZ?w)3X5SVd#)_5 z_%Z!vD;aZ{&ReMn!(oF-k|ga z#yN(d`S@+lQ#2z`L_$K`7YycL8Pbyhis!2mjm%t%{BPhCMRQJ20D4xA3dgci?xT-_j#iT#093| zJdfFXV`9GycBenqfnGmi;v4y%E&;gU15p5AHVW(v*utHPu7F4DUCNCXIx()m!9hK? zz6i?LsYld!D3hvm?j4(}@>ey#M*xCe3(g6P8fy=pZvA2)y*#=;2_~l3GwI9XBFg#a zKNb_Hf=_UIF86oWcbDi-3NlN(+c}{vQ0hQkyj7y}uedn*P?L$2*=DdzX@~nID&c27 z%;5O!@#VfEd!R^Mt}(jtu&}lEV*q*iaj+g($=656pm%aK5SOpm1cU9+l+lvE*Bvh^ z5Y%d|!SL{JACP2GtJz;`8J8e5f<&J!&@tka77q3BLME(%D@XO@=6cee5LBD(J~}A@ z<&=hS~$TU05IdX1`?ap;;PNgFaN^+wC0}%@ds5frmNH32KOdo(gIDDY+41->M0d>;Nj2 z!5RyU!r-Se-I_3T9T!pc`9339Mj9}Bt$A!S+_65ss8zxN7S4BP}7M|*_rbb~^W z$K`ShWyQh}v>0@X>r7lM3^EkO)`t}YC%H#TVWN*0SDPA8R?`So%lICM!*)Pag0UA* zDqW@4Dg0iGbA-!mS>o6K6W3ZRp7pnr^*_j7J(!}pusJ>J{ZaG{6(sXh&~Z5T!&C{z z->Q+negD|!L-M5ypdj0Y3ec6@)spF3I2H*ZPlQOqxdbVu`1UAQslq|_+6n}Fo-P8J zNS;2N&O2PfLK8s;79V_XZ+U>LBpIH1brKk;%>6;{^%10d2q7@!Cqe#Ih!+6!_m_}d zfpcqpeLF)v14mKkwb^z1xZ^9ejqD8|Pqy=UYoE*Y-531%2dB-C6BiqxYFRQxClwbb z8I{LZl6ElHmTQ25l{tF7;~>4KA0zyM@a6kV8x~T%Lv+Jsi&*79B>Y2^&EqVBZ~;}) z$nb^j=k_5C4i1hh&`E;$(O~`#PYW7->}~>)qk~Q0>kEQ<7>w^UtNndYK+o}R`s^_t zcmsUmFg$U7SYZKKcPIh`POIy!MA7G$QSgVv%ckTK^g0EhQ^hK0;bB`GUJ>VQaC~T6 zY(FTbAVdeK$F6~nDnRaNLime5L>8SdjK;hXBnD32^OpYFK+_K~55GMLQ%3rGlB2BM z<%t2+w|~UXxO3U#`}NsCS^+U`Skzlu!=j&=F;f{3f`x@u9M>xrk{8x8c6T?+CsX&l zBO@sdS1IkQHEW$r?G2gC-cq8kGTq3pSYBSuaTmBjm>76+UtN^_`1C6$5SsrPp5{_h z+nC+gm(1rVs%p}jcQ zeXFuAc&d^HN9T`i-n|h zIZ(0yK0E>&9sXS2A4b zulXPtx$lYRNit`<2S$XrN64pa?d~q(5_SwqanqFl1`_q~(8s&7?v^J%!xdM{LPEoW zBE)a_Ac-F71r)QYxjB7Y7EV<(*+@!FQ*%r9It-?LNhzb+lUyp!6qE&)1tir#=WUKr zKi|GYrR+{L#Vj`9?Lwe}tDvA@US7HgfeZ0l+KO;9uy)azzOf&)#%BSv6Sr#wlLtg; z{^11eccxv^))~Bb2p{N>s1HH-i7z8KZo2MiM&A+3Evn9+y{in#gV%Ywh(@gFv2p<% z)?j6VKVtn-a#KsN1H(%Fa4cMGpg|%9 z?D5{Alzit2L~=}WbWf8Ra$t8BbLaz46_r_~F_{$0rs%>Idx0nZf|DyRz-d6~e6v5n_hn^;VZbVH@%#id16T0H?SvMQ z|7P-ri&ZFN&IS0rhxqg_v!!SZStA~^Vns(6$!h+70&Zk?y904kkvJkY2IW*%SM^BB z&mSNQ3%xas03(#apy0RA)X{XEbWrxzM^F52vhKP9N(w!sFj^WY9vLH zBtA?D;hv0ZgJS_47k+eK6ava*Y54?JFE0dw>@##~PX~dwyQH$b@V7mYF+4sqdW2>& z$s+@8<>}u3s;2++Dp|?^IXh_4;C=w@t>mNG7A+Nkyc!}>MK-Z;Y%3k6BVe25SSh|0RNtl&HGBRa-H zbG?HWP%lCt=-61vB=|Tq;erk2H1qvDw`|FH)+KjIH_oz1alIIykdy>oh^u^}zL$u@ zgdkw8_(mzbSbl7Q+3a4`(vgfkHvays-&LpzSVQeKP2W3HVlNjkTAzC%o$p#YAxU<) zB`|0JC^t?}k(r=q9ZO(&jPWG?~!>#{9_8v(07L_ zA$dG^nV{IL9>|L6xT@C_0M~%1svbOHea6Gh3|F5k#fra&&=HyaN&p}FK>rriR6&EE z6};G5jS~y$kwc$C%-qo;xRikU#@R4P5j=3rDe?%JZe(a=5_h?Y;I6*}MOsm2^ z`|yyUv*F(s%OyNd_dAEBce4@sF$&I*;j&9#zlAI#qBs~6R!)GiFxNFr(hu%RU%YsK z;_DH~J2qWp#^)If;evr*i4Gsb3Sa{fD)M_zB2??#r?n^M=hgLDQ~SOgZCIf+e&D?N z!$tKn<(b?pp+@;3m6(RBO9w5>F?dG>is2ovJPSCr_&gK<+;9SN@Q*5@kc;cH+XDVJ zI|pM(4$SFr8%kxTMwpYluH^jNct;IT1vp=5V4TiXSNq^Oy>R^a&nyJ zQr403vT#lChEbAu-Gqw%AaAg{JkIPZi}mS{khP)HGH`&6&|<}(hdl~+u@G6dM-Ewm zz*%=L0fz`WOY|{nvXEi1yLRgUC|WlRcfc=1-~}?J=+pj_9cErn!9ouM4^cJbX6iX8 zix_Ep27xO}kOtucncl%Ntz}gP(y1K&Z6-g}L)yTAHdiGBt*pd{`BBcn2ALp~`PYLF zPL3vt4^Hp%=l0F<zJGLTG8d`pXWhQxE%>)ed=~ z33KdGP{r{0_(DI#bkX549#;NLN-UOHll0vlaUAnepN_-311G_P)p1URH~ zq7kv*y)9<1ey5b7P1(dgCZd+6n+x52E)Mr~A&_3|q<=&js9zEu0}F_N5D& zp&u&mtapPAy`M9$>5NYI5eLSnFL@ty^oH4I><{MB&fJq9768o!*iMwade|F3?{d3> zMjkS&dftptJmRv(S=JlBv3zcGsqt|{08#>VApv9mTi!pj{*RVFF~WcU1|k6%`d_{O zX+b3YGxWdY{MV%a-NIM>?}Y&R^IuE;PwW38@IPV@{?q#Zi`n5IRpm&)`B$FF-vrVI z&u{-<|fZ>6!#nXBtMR+o*d z9W_Mz;@^Qpav6O)Q|$4>PXUAq*#8ky3(*_*uY?j&M1NvHcUlXV+_OGZU;Hm##3;lb^|6`qm;S621hh|c1_Qqu)g%`c~+Gla0|0M)o zs!~@m>yl8qrL*3`;o6SofA#4!vv#&~w6{AyPo=D`)1Ljga5{Kip$N$YzRzNMXYLpW zWZR?&;{N+z;jigxLjZAfWxO=EAH-5=e&jEC&BjT8oz}tn4xx$sg#Ru1d69N1o?B=z zc6oEv(%hJnE2fE-0S|8-U|j-1`Av{q7iS)@)aPUakydPx1M^ z_i;7cUuvtsJUuIAcY+jEztgj8pdQ{$vr#RzaEV>E8~Ypg zRSV{#-Qq0dtiEhYM=iD5&4OQ`5b)9-tsqg=6NENDMoxdk#`Z=oz#bS*`FJze47w{0GEo{xBRyB-u$MfJ-Z z>!y2V!e5)1e9f1Uf4wx26BgIxG^{n$ftJcQU#xCAU0+qLcUWj-!FGZ&XRh}f%x`-2 zhnJ_@RtU&E$ucd#XLwGYkyl%jRhp|dv3_b^b~)8wBXX?CGTrqSJD2>7=7a>K(q7|w z<|KJ^P0=m*IGc60dgZv7dd@d`-Dp!ry=Q$;MCTqcVyft@I=VbzV6MBXFmr{xjOC6| zh)ejnPTfg%5oRZcyGhMTPkjq1q>V=1u{%Y|~ z{C&A&Qf+D>>~NDl)q;cbY+uOGXpq!#rnFr(E4$6s2vx-hIT=p2ntb$8D7gD~yK7JE zb3MqSiAb?jP$3g+rItn&j*-X4#mR%dm&NnS!(P(Y#`R^yTBY5}g1(mn8tmTp6>wJH za%~K_kDY>yy4Ko5DsxV*%cR2H_t7)*`KQWdS6tWsKDl(%Euep%xc@U*4JL`*4N~R0eqLudM--Kje&u~ zj_{EeXW6!#l6|GW>+`)Ew{KUufP*70@~Xb{n!Rhve*KN&S(J2GPph`4tg^mYmMW&f zC#T{nw_Vg_BO)q;<$9Emdt~R5Ga8Rg7h*o^5Pda)^PbwTkJxcs_!o(VW@K``F?rG+nTC6 zdb%1}Iq=O1&G?veyKh^}e^*@Bp5$^L^n4TAbjP}boI*L1RaB1G(G(hYb$+(yhzWe%Y&A17FbXhz%972!a?#+D z9maWMWn@N7PLWfWtFPZyJ|lO1idK>8&0j|0zC1WP4zM!atoF?-o4`IwUfSroluF04 z2#bS8irmU15cZn>{{3B|bi(Q~$d0ma3%G zN^n3!#M$Q2Q!-UKN#NNYFqB$zlQNWKU9rhy`&t?G=N6=rT1G;|$CBS%N~_b&X|vNO z#T;o-hU@+L@LKAx;kFxUR(tfu7DHAha8eF#lDSg3cWRiLf;9I-7Yf{D_Chb$r@-!P z*d&gZa`bYiO{AuT(n{0z16M$BP3TIMcfjK1JqwLb=lo{VGvz_lPme};B^$1~Bkj+s z)}*q7EFrh&q0d7qo7*0D_2IFHwDm?FVuy?6;m++cZ}{A(ULXtumj{#$Yp;Z@tyLD> zXRU{ks^6{4FWgo)+aB6&Zu9ln@6*N}+cj+cO?zn zI<1}VoZwW|x3O`u(SK(Pip?5-V>LOYTg>Nrd2L=T`79n4!DUxB)^iY$l(uxNbr|cB zu-j-ephqgyJ4i=QAKfV~F@gsR!eI_`YHxSA4R%-u+)!yW!Q>mnGt}SweCLkdwS*o| z9~vEeJ(S|sX=XD5 zG1y2|C~?asudHo%2>#piW3cr8v)@2_`zc3{fR&S-n3$`(=Ed1o(9J1-@XFEhdU>O0 z(No{t*xD}axUr##D`#-gX_3`{;pjHiXn@vq`mD%F-`!c?-rZ?Fw=re2zUi=mwW)MB zZL#starVn-F>+V#mI_Bpxj6jKZHpOr)>@H)2I<(k=AbUEBu&avrM3?zD0>h?y1J^A z=#-@Ncvc3(Zd=Lj$K2RWsGstt{p$y|1Y*TY!NkQzpO~eEd(zOcI%>MhlHrj(!##F) zz(i}ESu<Fm3%A~Iw<2$8K_8t)%H&FBqxW zl&!eCOc~cnlN$N@kLFBK!J}z7-i|Bk&#Bw3s}v_X4i6RQ%c;NG%-3=E=14dgOi;#< znI!%qREY4_G@S0#JzoQ%e!nCOgOqXkKc3I}JPZvmryT-y87puU?$lj{IT4r+< z8YLqwIeKw{Q^%?)4w}0bJlgt%%Wo*L32Xogz~(b+&E2hS4LXFTP-gOU7#wB0KP+d- z_I_$j2}IsM&~!JpmbDdBwB#3bl++VDybIpky@iXA-02}OKpHQ{L_@dOOylV(?Xxk* zT8o#jo3Dos9zF_{JwQne5g9y0QQ9FzRk31v#KBMtvI{%ai?yrF3`m!*p1d5Au@ym- zvl~5SgODQ`;B5|B3Y8EKmypailJ!qOTmI#d*|l4{x)AZ9;iq>yia}c}Ri0ng^jg`x z{dq8N@FM*Y(w5vxEaCDkDlhKtYWUG}(=xtqb$$U47j9*37O;iyVswmF&F|&Xkd{u> z6ug9+C8w!x&Mz-)q-7zeW@T%t=&T)PW`qP85~HwvGtdWRS8{dHG51p77}$Rn%v?Xn zM&C6vwi0GqeL0BOz|JcPKQ zNJMZ5F}I$5^GM0U%}GJgQeWJ?$xc6ON5#ruc;*Co)82VhUTK-0o|}cMduYC3647JG z7`4(GH&9r~?Ty76^z+JPIxtX3mn^7INu?T8)=E;vBXk_~`e~}c4D^zjotciJIFw`4 z-r}d=gty(|6qmmAxkl8hkb|_hn5-$$^9a(0Eo&zCb`GD#(@lvguBNxx;>p0q-5Dy$ z0Px>PnNzGZMYRKVom;1;sGfMhdpEsF4QgyVl8#t{`c`dba(S44FG8b~J-9h>%}Uer zbhetGL<+#f5)lm!tPGPVW}GEl6A6hoxDb>vDP z=c2FuL1TG}om1@ui~d3Z-(1^>)vo*yt6_0@_5Kn+z2)`%SyzTB86-X61RT(B)_Lld zGViSNZECL$SEuIS0skStTR`EcV9P+PaoBq+$?+!K!k0e3%)^P1oZyFXGXS_l(AlKV zM_MsV&5ZxCP~RD5Zbl1>(%^M3_yh(Lcn==F+`BH zqOG=Y;JN6?EyTJq(Ows1F~}QKppB5Ov|(p=4>nU>tFI{l1I`y$-RY}q%xfyNagAFt z25WCQ4KtPPX8XGd?n19)?N}lEf(MVUe z>}yQ$F+rPMjw=yjscBJQ`&4>9sjq6jCqz<1xz(9@`4pQh;chm#wwv#YuUcB(%kyo& zRgSev5Hmy?XgEi9TeC!1-3~$vDd00fd)+&ScobU<;cC_+XmaT+bThY}9rMT4;vm>VpB=yfLo8E-jwJyn|D{tg0sdNX~@&bLWELIZb{dG#69T6H7Wz94Ue zBkXebzGZJ^Po39pM(fg1!($fb0u@hdw|E{7&78n6{P`NYWN~rK{=PF8RaKNTJFG=2 zmd@Z#*HQI1XvO(ON6%fa=kN?0xyZWTm< zM3_j)j%O1=7aRT+7aQr#{u&(bArbLrscxrgY;2&Q%>e{=;S?!%eG?t(tOj38mowAc zJZehoEiH9sDXONH=VK$I?I`GDx?F}CUCx9z&~b*j#lxnLG;n$W5yu$5MpO<0|=2eKZovh zw7W16I88I|Oh6c@^VM_lg$7BUVbHa@tV*z$qNAijWh8S~^|CdntKGHdp(R9_j=MS( z<&`nev7cs1hh0_K+=QB~LwdrJmvG22T325SPkc^-0A!pL+hKA?(+2Z zs7cGF0@x<{=1VUXY{Xp018BwJ;^W6j%4KI7rgM39;wxBz?X`sz%{dRsx}s`IIG&D} zuogaUn9X8dU@-9w{e$Dnc9Hq>&~}h!v$bLti;EU*pVe>g!Jp76@30nL9u`>EWK=pj`Hp!ckZMNEnBqKRWMos|_1s5qH zo}I$b`jC<)Myfh^*q9%G-}*Y3i#U6zv}lI#5Hs?$7}?WQWC5*J*6xh}d-2dEnzI14jtt-BAr?5&Nxvti}Sz*U;nMXGjo2WhPMzD zV*&gGE%U2`j}sYr@H}tG>_OsTP=)g75`WINzjq99y_B>JL`?~bC;-~BH z{~n>Kq_45#`%LKlDgWc9n#u;c=rq~jW8{=Mc~nwqBPKaIMNQWKG*)&-YJ$3tG*3(W ztInUlk4CctiVcfdy0F0L_yBb#fKjfg?B_3xOB1^N{ZX9>i zr0g^RGRLyxrF&1|IE%VtQ(8MH| z*;aqyMb56o^>+7C!#C9_!Q+TVFZ1)(lim2&_{sew|E)wc{a~I^%xS=}P33T_^t84Q z>M9R{tE|f0$ZFgcf&*Qg5MfU7#-e+1uA{3oc$Ms3Sgcc9sGd5lRCrbJTf7JDJaPz% zXZd3c8(wvBwU{09&|B+nQt8%N-u&lyKRub>0*zbpcO~|$J`h~At2H@)4K8S}{&o2_ z81?6EwIirSw(h6Rurb*2ruOz!`K*M@=OuUVo{SH}-86SL`EN&Tv6`7bHzq`$l2jGL z#0AHwNh_V)jn0@lfUSV>3w3^Fqp8I(SSUz@bYg<);o<2X<)klZ6LfNHjN)x?Vby?C zI-YCNkcE!Pqlb2DktHD^ZGLcLpWb^meQo{K9ycW$f;{=7gzD7$uf4J5wb>q}zF4SXOkT zcE5NAJ!y$$!`*mjWkJ%^5IcVV@K7n+CPWuD>iccdH=5^@6Q8ZqLzgiQJF~+xeRGzD z)tiH?qP3HyyMUgn7@@hdwpB@KKJc8sMiS)0T%5N4V>Dr!=kLjBD-kw~$TSsp~4W=oN90Tp#x z2&}t1a1UjXxjhA1bOT&2z9@n!EOg_PS& zL!(t`W~q&LbM)|<>~6-NpS+V6d5(&#f(W|*N&p0lIh-k7tmjC8&qh(*lCiFcVL-UA zaIm+N8^%va0R|?*+~D|&+E2H4gy;QZAkpF{S3o{($3w+OSgMfgFYVv{-j73<4#zZs zBEtH9HCwT_X4BeG$?5BS%R~o;F7Gqyu9DCc8iuU7p?FJqxLPfaj~hYZ8&hHNI<~kF zwIL5DvUtc zKy1tbqH!NSX1xLPvC}Uj24}$ZgCQgB4YhnxS`}6a(t}xYf|RH*KPLCh)9y^uR`sB= zrw6b(V8)4(VdlcD(v_7N?4j_|Lb)6n>)t4p%NLD{+4kZY);)v)b{K%r5 zlmNM6VM22PCcLjC`q=R)y&1?F94wQ~iO75GQq;-6;zq zun80?4YJHPvpH>zyPlgxyU7x&a`TOG+-_<~Ze8xTF32t8`WYx~CjRmI5{0fU=0J)x8f=d(!IUX-XS6aj>On6loP$n*x^#%|Dr$ z8qd0IPD7F7h4n;%Mo!fo$;|9EIiR<*ZCR1Hd)xbLNZn!Rl4hjTm+jl^cI5wf?m&9^ z>$DrKv!~R*=S_whuq(X$AG^J|=jl!fNZ*1&fkDo%Be3u9v5LN0^BrpNR42GYNRNu8 zP&c&QlrF2X93pj&p{X)AVYWX5z=ZXT%PV-+YS<$T(gG^XOwTVc1RcvN%y@a*>_45= zl&IWbU^ZBD^Xks(%7jsEOBH70w7h_AtGoOVlh?J>)_FU?>QDe~ni7#2sNwsq_urj2 zeH0`3in?}QnY&o{ewJ5DRoou-oq@z=C)ii8W3{>S1pI&BRyh_v)z6=OB6o0BO&VKX5oMWYG*0-4<5SQ%O z*qXtGIOxqr$oRV`FEWD!3*yD^gy2!caGr@hAkcxyNUG8{x9}TnIy=JCzvYkaW>s%N zn4Vr(oMW2KC`;5{NUT36PNV}8Bs|CF?x2QgQYI9;TJoX}(ibK={-zaCIkIm1HM+L9 zw;9KW8Z@zMCNe#)z8Vn@(Tz}xosaO-G7NwT)$IHP6*`RRZi?C(X-UBEKS^2)Ryq1r z(ckBgFOw5>LkT5Oe(6jq=2SzS;VxwWjybwE1a>SoI+A}k0Gqz{w&Q7hf44Bf2|_`@ z-jrWl-B_M2bCU;RnAq4*y}nfP7`7ct1dcc}Tc_vN@F-Dt=#S-ad>?)J znL57GshZm*m)E2f*P6?tQTiXj5(v}~{9)-S>N4Ck4OuujfNLEeqNB8Ra}&QGT>^H- zsj0%55k*wkP_mnT+FAo*09M9ouWsJ8^Q@CY;AnS9z5CT5SXKJcYUX;EwTP-LPvh!=J zqlzl6 z#vBT68LlTNAyOK{4S?**BT>K=)cKADB``CTcc%|EQ729$!Km(~C0naZmp?I5vdebo zn7(>h*m9so*Vo)S_9CaLRoc~iJLY??&>QNnEbm3{wH8A3zBR2g+7gYcj)7->?~BX_ zeltQnVnqsl#v3qbDO^zvKZXC*y=`s!YkMG*jnl4aihpzcgrhwy-FuJ7LvYeF5$%aa zFA?L0oY;HM)X)GPG}Peqph}5Kpa#M^B72R6ZaAhYx2~xw?{Rt-nbsD3SC;00R)vh5 z$f{M<)hnm}dtxLOdtr<`(PW-wVy<{)<0CKZ)U1l%*vrF(XDgOW-eg-;OX2v?qFEGN zOq|%Eq?eXEsF`=)>=ZBFAgaUCiV$)+t19^7H*R82%XCfXg^jvk&l-P4-q-m%RML2J zIB>f+LkcWr(h^n756zdgU@K>5RI|TqE@E!567hF`$AycJV39~1q4}ZH+0huKr9}jZ zdzhJz^1;8hS|ZjLaBm*tXQ)eUS0@;}E)=kNfZ&S*zRN9MDI+Vl7{ zMiB2`$bggyqvnqR)tM5NL2x$i1q8taZ%+CSEj%|_=>+DslCqX1Kh^v~i})>~CsW=+ zh6DNtb}@)rRTdY728sIOl*-z(a=8BbE6Hj~w=wtj?$nS`!sgP^vKAEk;8Eirj*qhh z!-BQLPOC?_f+ebLHvoX!{rmF(fg6#bBHUP}qFsxv{az$O9_{ zYr#oFOH=2~{!IETb~ad#Tw>VLm#2kh07w18VN=W5Y>)io-f$|gXt+BU*g^1{KjtGGi;X4z-q$pdO^93h?o~)LZnC;ppHcs{j%k4c%;-1vF z4Jr*R98HXy9yt=@3K~efhxYoKqok+6;WS&W(lWz95}VB%|E7-+5hRTp5B(FCrmD<$ zwZ>?|;c=y}U;*E&fa|X2)M;m*b->_iB4v;+EH+M|w^#s$&G989a$VEkoX@~xW2VG4 z&Ub=L$rBnC*6mIhgYoN)8h@ee?Z^+G5H?6ss10RTH1Lx8C^X*T;BPKEeMnfS7~a8T zNqd7eRk=05DL}%eH`S3lX`Zo0!Wy2g9{2u!YG5Q_VPFi-u3-KS^;eN^Tm8Gkz4an_+>UeeNw<g|%BPS|;j zgsb>Tpb9iPKN%e+HaWu~hLKU0YO8B&tT*IW9UdjeW>urU(ILQNlHM{-IED-t-(m|H zIZ>htQuq1M%b>mh^1d|S0GR!~D|=gn#X7yWBtZiY+_L1u**z#=>8}&~*80QPUHog@;=(5Mh5K14!apM$;6EUBIP~&jP&KI@j}&7*?3wJc^9yJE2zf zi13-xogtvYaP_rH#pV+O`t?g7`|#79YVA`8VGDW)#e4By{VMMi;ZXPIKvHc-QysO9 zy;Q0<3D`MVImhKdFL8L%Luqx=Nxa$LRL0wlqLtAkL&MbNxT zafw=5Dw33@DIJLgdjuU9uL#M{CKG1sLFb9e;zhUUjNr?(SydRl^6hb{nc5C4F}I0C zMT(GjJNDV)o$@t0>*4IT)=4WjID8I|gKwqUE!yo}_l*ZNw=-~F$0{R#c-Dz2bC9O` zl`PU6ITKFX#P52yyXX2$O|A9Uu+QIKgjpOiBug0Y*itC#M~xj-@xAFYwAr;O`%2#gf!H&^uDL=x(h}Pl$zcPS93Q zD5v<#@tVUD)fDa#fN3lo8sL{LD;&?U=uz<(7@K1w2ANfET2h0QMo@Djsh*n_9q`D9 z>p98}&zgFEO`w9S@PQB*80Z^^{mjfnVW)~?>83Sr~=BMQ^M5pmSon@vGHT zhH52cmY7#*rcmRzXG_gh$GD_k$uucWJBbqdLnSBM96ozbRORHQOGeP-JyBL731l;< zVjB}@yT;ne{EoIXxh&f(J$+-5d#>;Wp6(iC$Pl9gb1c$EDKsD%1q&5rY21V07BIU8 zrgC8#W4nN;_9hlZ4uu+}d?>$NU6SL;8nU|O*-^!H>x;z=Cc0+9bl$@T5@PFS>-ntB z52$9~PQ2_04c?JmuvfoLa%JX>hL66#O`&lfg?}s>lS1# zvkL&6^n<1yf54BdCt|BED_60jggWQw>7lzmH~Z{@pFdrEXEd>Cx_0eW3>4uC*|h#R8-0H zQMpQ&xXPo4u_DULf;zV50Nk0G0uV6^tn~T%ds(9vj)R!HF?GyfXM=3gMrFlRr1U*| zXm=*#QH(lvXHzIt=DNbvp<~W=Xo~b1S^oP1syP=`kdPQQD|O=TP044f?-WoW!f*T*}IBZvQg zt$k%w9BsE{g1cLS1t(Z=m*DR1?(Po3AvgpJ794`RLvVN3#@*d}>iz7_UEjKQ?wT2X zuzEFgS9euC&pBtGv-h6M)0|pmem~s3#k>VTDm{|UqIAh0e~afGYph(5YuGqy$|_2F zicfsHqOn|7E>zW$TmfEV`$rHmS#{QEKloZ9^@q!t@e%O{^We?VlS}DNVG*YTM1?`+ zotPF0lvK7aEDs)<**T`jdpp<;`YPX84Eo9x41XL@mN>h?ljVG#?Lb{zT%CrQHt;mX zcGN3`(rt&-3eWIU)Kpdmi3mFqr)vpZO;t5RYdssj#Nm%-)lOk8+qv-ok%Q2p4laz` zW9de4`Zr%wCR1(Xt=CYwbOgP$LN?p;_|5OIsN08RQMC(0336jrS(|uMRVJIm%-VEz zAIeC3hpy_X&Dxrvo)&kDE=eM6O1|2o4;l_}SQBaGT0K`0?hfmQ>sRF(jp8_&lav*3 z@>|CzcHf8D8uut3QfFI4i1_@C-ev1JqK@)NyyP-z&J9kKoJyAv?!{OhxAejS#hh2& zIjKo0_xcSl>usmE`H{T8?aK^qKR9K=?ClYk1^kGQ3BIfp15ZU_b|Pq)fE3fM z2iiLo_v7uM9Z&3`D@s1`yQwaDhlMVa$94XGzuY+yx124>#jA*Sig4># zX8Qs{2{P7fq0W&o@65%)YWLOEU~xl6+y+YTL~ZN6u3Z53p1WRid4t-*N5NKZuokKf zzvsEM?rc!i@oC<;!GiqpDJWOPSEat(?)6ZCcuhj(*fP1cbM0WADAjxahHx1|&ysyMhTR zZhiK?&gH~jzho`YeWd_Yxco8-j(QPrcwUxlTk%8OvAH4S&yP@HT>{x@z4Em_-!9#0 zXM&vWKKg?lmFxCg&sF<77ecx5vb6NpMy)`HkE*e5&6(xCjw79w=~hf8G_h`dJn7}u zjSapUuf%({R4%#yd_Jz44S-}Xi>=+ujPcJ*d5C{N+4Q(JphttBpE zx88j>_T55tVf`)JN`JCFTeY->O+WXpYuWq2?zHlI;C0Yi`+}kF(*nnh`k2>^bmeCPPBzkSV?0K({N!5A&*krl zN??4$K)VFI;0~Nzb_+FNyni@oLABmggP16tgeg)q0;tO+l)4U=*^G*O)z`Y)>n!cB zZ(d8a@0zz?*UyjrtRTr%N6@?tboxyPvsz&JRPD%~X!| z(KxZ3cEKKU-bbB7QwWYr*lo_;j>pFjFG=|e%{ze7 z@+>mv;G9h*7;97UDmd!8@As%_+urKBaowIs{IIj$Ll@IpQGdAjEb@FDQ2nFRDat|} zfYg1dprqT|4YmDUAzNI|qgu^+HQ9D72;F7N(6)`~M~GUVh8J9YGu^M(?)miZ+Aj$W z{f*p0RPYicU%RK{?VETW`t03Cg;!%h3*vS2r68h#pF(GtPVuU}+z#?!7zRdHlxMUs~kB*2H=36OJRY zN?0FmYz~I+@?~gV&ha>}99Jz#pE;UCDt#D0({)5XQC>eq{=kDV_5Ci?lEphQX5Sp- z?*=(u`Ij*nSqlN(Aq(%Tu460h;cPsu=RXW-mjezrP-+o68-SD%B# zXTLtb-c~q{Gk?p!^%#r-3sRA>*P8c(vrc*J&7ar5gQLd<8lt32I|4YRTXdgVQEuJg zq{O|p`a@n*=1YnIUPC|9Ka*?NfzFcK z+*JPY7FQy;rOpejuY4F~nS{~C=+r;{Ns01QiX13%%sP+#7mMuwmfnR%_y5Ww1J2_= z2yFk(BK!33e6oKX@Lyy#h<`o$7j5l7zRiC;`uD^9ceJ&y|IU;9_rv_R?708Y_u9B5 z(Qs?^H8kw9sy{n9@p-i;$uz=MmzFduJMXk49jmk9k&%#eTD|H^YiIVaOXLYqibi&?oSAPS z{dZ{@ida}!AZ=`IA7f#iookt<6cyv+(I{`>r?FC6Q|vFBdp0-pZ%YTZ**_x7%0_2Q z`ir7Ca1+8#eEB>1@B)%T!x@++Ff{y2f;A!r&?r?QMnOhiLxDRuJX~K|3SCW=DO_G& z-YcY3VekuqFE1~@?5nP>etUa6tEi|om-D|GqH=Y0HLG2c@7&wp$K2Z9HZsO$3DQDF zK~Yip;p$RXSy}l^Th-jWw6>?l%DP%3@Wz=@>z!ofjG%1c7R&&x~4 z#N=pZ7HX`Ptd4MXZNJunjfshgPUQFUP@S7AJf6FnOnJ-w@$*+QX+%1NHCl33a>fhxG;N1G9;yX+H7h9uClygsQ3nSHSJk=RUJ++! z%qtB&JtA&3SyyBMGT-Q!n1+T1KtXo}t@*aT9{6B?etkk=jEYi7937Pj0=g0W9d%6y zmmWJzh<~GpK5Syp<@#|{=$BUf&iI)zIyBzl`Rb)_Pn;ba6%`y3diCXLeu>2#kl~nH zo>tP-bbPug84PzAL^D$TQ?4EJs_F*}5;dcglLi~)a1|64pwlA3!;g=RsSauE7$hYn zJH3s^j4!6*<%S|!>~RBNQcn6n?;{Ok=YGd3dR+`fcDrmij;oe9lWj0pa#{$^cBNXP{Z9L|z< zZEdXxOi6k$G(Z6dD7CyqP>49L+x^jq`xCWELXwh_z@i>Xq!JPq9!eoy#Qpe@nUiyI zb(H`IN6M`ktbHIeLQ4yO312Kr1D}aiIyfi+oQkPmkB?l~q~!T{=tRlsDS3FQV^*~E z^t;EInVFL{v$I&DvvA57f#jskH8n!xJhW(2e0X25Eg5N&z#iOIs5F$(` zCM00s;c>FFAAzg{(aV|^@q!srm4Ttea&3+!&-XEGoQz**V}0oO&9ln@-M^cgn?Fau z%3b%|wn43Nx&JGST(jk>czLvgtC)V6r z_~|i3!sdwhPzVTs?@r%&;D>dUs<6LaT_Fr<|D|!GOP1OV-)8)2eVpZIE7SRw(frGWP3O|c6qr)fiW3w8GN268lEPgFVa z^2*B6>!v|W+dsM8W%h6oA^e0_7ysaK|Njeq|82DW*J1u=!H_+^+d0ve9!TPER{O<_@y zx|-U$kw6haHReG-ufc-_1c|w z_oDF&3JPdxM`DMM>+0*XI30QU`8QjeB#UMQi|FY;kB<-2G0^0jn3`eX;(kEtK?zIk z*s!p%vtgZGfQ4D-_ui8+Ffaf@?wZ{*!vorOWzVJuxw$h}Cg!&BZUF_Crlu$$eD3MV zwWPV)mpep01K-tNrPcVGhW3jeuRDKVzxxh0% z+`Ks;Q9C-*DJ>^gqg5W8PgGt`4_Ia@s;JDmGm2ibbFfiTP^ze^$;io-S!oE;(9+UN zhR2qdmOmydvvy&^mywh3pEa9jdp;JVto!a~nrHjoC8_K6%kw%}cLnV3?fpnfe)0h& zzw`9%7>|jm1I8VHTJ>s;+vw??9iNU#$WM$)WT$7YC86s%Sm0DQD{3gbEAN^GXZv6K zgSYkto-cw>w~UO_fBxKHjYr>Xoy?Vbn|0+`1HdA!y;?~jwx zogd{=_nTCIoo+;xD~$h{#%*JNu9@Fsw~v|fT(OuNon>C%P{-=;cqO8vbJD)B`%SfD z*X7I;y>j8yZ3h1_#jd9k)kMAHt)nA9KR7hh%e87`>~`&?3b=D;7sD|L@$eqlA!;^; zdhW*MfLO_}e^n3(>~12|US2H|8T`-#q$&Zg2I?B0z(y)zy;Oc78O`_6t9ioUuCbSN z`%CO{+yjwldCtvqKp}S)S0C;DrTiq596>s$A*t_5SFRumJZOdaCe~zSWiiXM)-ZE; zV{6~4%a9wqigIlkfsJrRNV2dnU*#Z@lA`BBLd_WGKvWpMgF5p)I)dp7eNNTWKK9EW zVE*kyA&r)OXk&ufcRxe#yk!rC&JUWFiYi^M%X8Ho_04UK49#$HTR1cGyz@TG|7UdO z4ElqVm)8@Z2OS#-WM_-)pj&sSMttx_KL2lKAL-YU)}rUd{p__C&qVnL+9c3am*J5I zSXME*C!j5Jt$e8D?N8iKbr9W4WGBPx+_{(is+Nt_W%Js-dE(lK50*heuXUkTqzt{^ zfTSonK3Pp){T|sPYePKW!1ryb2>29sy1u%KiX?BL{?++QOCKny)hl$ww8c>RI@}u? zy<1v?AnY-35m8aovlk@rcqy4lw*cRQo9xZacwJpt(@F4FWFp{c((Lm%4ao1MCnPu( zKLc537N7UsqItIN%N2wWEpY;ATs}!WSkBjxnUy>^qw0Ci)3_%gJyBU#wcttM)!EWA zep9%aA$?9wTRAa1<(b~pp$jv#uRydIyA5_=8yt6e3HWNq@EKn;H#bWT4QXnonNMVx z{S<8Y{_)B1IzIkqJg^&X=i-@YYiW^^k|rc33JVJZv4&GpLV{60A}Wf27=Hi@NNXP} z-*!7+?!jl^UB*HN+EUsZN^TTVM-dOs^_WB#S65)CzO8RJYlQ;^OW!d5=;9QOMFs3FG?Wc%c#%896#C%IEH}Xu)2` zcoDp{Bbn=}{N#XK^qH2HjOg)lfSCD>?0PZ?<_Y$PU;q1?kmBM&K$JHmEQIL!1&@Y# zyE7XD{T2lg@$~dGfS!vmW;6;ZcXKr4AOT9F=PQe_P=c$Q-9Epe zR05l{wDj-N((trmd>tK~)y4B~toC+t>@77KKmSq|;(eHr7kE6>f7{86<@dSl+jkVO zXz<||5XeqT^L%#u<9*(7-HkYbnT3Z>$me@Bo8IXUX|JNABJ&1&a@75J4HPP$S#I~U zJof;7>pU^COsEe?)1mU*Kn((TeFN#9&p=cCxDFs`Y0OcnUlinfHv}jW|M@Ba5|R#& zj^5+#d_J|ugV15vN9XRnyL)(`4m@4-n*Seu8)g_^=HU|25|X6aZZxP zHT0+y?!+rZM7U~Ro#}igbavdkB$_as!{LBD9hsQGCpfrAw48M|GxPFiFtjZ;H&ZEf zfezT1RFL#IYj+1x91Ht0^Y8%mj(z*pRit4KNs)Z^Q)}n5s)z?(KI{m&bnpSm%sVK2 zv4;tP=cu7Opx(RM3_CY2Hq6QS%e*Atd3Ser$`r2}#mlE8B0jA_-4V{f2(m zr)0sc*;jbD_+NKY{YMFw!QH3PHEe>OPXXiBMZN#0kY{gt1mA_*_WO2oBlEl zY2dcE<`^QL5{&*Z2_=I%w)oR=2=k@m#z@QR<0}HkH!C(aw&t9D2$rIOrI$Ya zm$2dkYElrf-^2S?K!LP7h(6*}OgEp`r(*#3I-WPvJp? z`zLx8@RNv*vzE4(kA0cjYFAQDe13jz)2sIGB7%8(PJ>?s6qOCe2Xn4(~xhGO{hDtc6ptnbQ$fzcY=2kW5uIGOAbGW zqmY$PS(wN@-^_H15_kXk{kzof`dI(c(@3a0Vtc?JyoYZgDwD78`DogWXyz+J^pU{l zHc1^2c|-_6bN70Fr2^9vwYD&x=C+qFH1 zBKKS0=96(c1KD^u+z+=>GOYUAkQ}?9XXoZ@HRxnW;l%Y?TrR)(U*XCuq+K&k46$r8_bgJ17+Tr9NY!Do#!9u6|(w*uhRTDG}4_n&>+OpW!iMW*Abb28Xi zibQeW`k)H)^F4fhzu-Z95T)8qejP8)ZEGuuxM){Bk%gN_{|ak_5SUTw7abAfbs4gs zHZZHUu;F?@l#`Rw`Or5J6d2@yIyzhZW<0=e{vJ+*C=$F2dV?_U`Hi51{`nM$b1uu) z&*njinVgO%1}HdF$?hP(bpD2k=rWV8+WgX*T!{U!s4}6wICe^6sS`dZN)C_AASgrz z4NXP4xW4S>AzbBz#LzGpVs>Ap3n)mZ*lYthGoO3^K^mdLiM?Y{K6 z*o4h7%*jBI3T9maOlB$;r~jg!&m$$PCg6O(M2NJ;I}QVER*6 zLnAINUQ`sPL{*jVYGFfUf3)BgF&Rv_NXc24`HHA)|}7AEn-- zd*_p>loK;8uR-vQX0$;j@B0aDZC%qAl&+_Pyx0d?rv-ce>-2Bm-r2U>%CRFwFnEgN zt*_rLpYkU$NQ#q&T)xr1FCn6x8QW`zM+(SHNJt3q6-|qrmKqz2jitsTgU zUz=;q|1v4dK9~C{dzJ`?cXM0nJ%6 zj)-_|LO4B?)F4wHp5Oq3{c&HIG?bCCGmaMR*|IQbPJi!m@{`8y#c<(ch|o&(vaz&e4z5&UH2(TD2^0prkbQBq#H zmWJD%MoB`z^4(bn8JsqgV73)iz=3 z-31G@e-~VA@~BToQEOOf+?$1#4tWZ$Ku95CNZ<~-grG!TW&7Pxsf|GX{Sq7B_WI-4 za$GaAbI#i<9GNrA4=%i-rz8VuGqI0`B159+fv&7@;f&dDrP*&-4Z-f7cWFiNFFCsy zJz|*%C@7R759VM{Cjd)X>FW!0V@Jdt{ORSCFcYaUiiD*+bzwAPKhRbn;6;AL%tJ** zd_Jj_ho2beUstROS50&r3MRsEJDe_XU-wJz7+@_>)*gPQB+SZ+m=RhlP$n!fI6aD# z1xm@QtC}GN#r#sc#&`zVz!q8Ied&jg#|G#}>oC>zG8$kh#~=bYeiy^T#3&l(s=?7?@qGRAP$FJS^;7C0OxcaP0z{Dn>b1KYp+X8@-ZNGD=_ze~~K#Rt6K zT}9bG-B5@9x7IhBco+o7>GdSmJ89E#uq8Mun_d@RenTc)NiUMqvgkIG0IHc}e_kLj zaU#WC3bLzIf=k{Rb7W*f2cgmJE%k03TOCtU6*|C=K0FfOpr&*$FNO!mGi30DO?*u+ zC}p(#$}Kh^6eE-+D{TP z``~PVj2kP9{~Llp)eO|Ks+7`nAUi%La3dh?{W_VJ{2KiEp)V3wa>P{ecmK%#UMhQ{ zix32lbaIu9o2{8pr5aUru9WmM93n-0Y%6HWbR-eVK^5Q9Gw&?W>|@YyVm zMe>`;zuvIO-_P|;_RBoMtaoSh?QlXvo=+=85a zXO@~bBGjuSBnBw8f2QAKrM|CpUIvSHgf_ z&k^_xPft!B4v#d0G5$v^boOEchGONZKcC?1!I)WX?FY0g08pgAp%MB%Nyo~yMbj%b zJTjtbIjAQvYPb=o6UYz>p4QvjysmCYu@tZizcAI79%)>1&5Sb1Z%xR}T}rd`XH7h9 zI<_hu>OMI>b#7fVvJt8};~5EvmA66^_Lv(Db{0sM`Smkiw>`ecXz5$$wmO_BS(;Gj z?9VyhSX1UGyaOjcp1h)|_y>{GP}dzZ7Yj%isi84Zc*!U`p~f!Aa>_@EnbY5M;_`83}x4l!QQmf!M&-&FKVC5yXE6qhPe(8whyqaAh2>NyG zo4El^=4}bzDq(JTWKzFvJS;68Z@KiSV4~Fp`A4Cx!ONV7w!S`RSwXg)92v1!hr@+n z)fesA{7gz*VQ;w7j_!klEKMjpC|dY6Ak5M@M5HLQ5#e z5wVN3yT|G`o>?&3DAmlu9~RLeJh zkaMfDqMEw8r#tyF+aU(8aNp`+W{iw>Zijygc5y(pWjILM+Mc3nUbwgDXyvw7d>tgi zgzGS`+TY4SK7;51f0AV6BNTer`?mB)s z;U4t2stgV)9IqtTDuK*T%I77S=jZM1khgZPJXu;=TS{$=Q5%c?A%j0+7QL&K&wFQ@ z@3E}G)M}#xT3Ywyg~MS8OWLtXU0I%9U78y2=LP=dtRSyFdTeZI+~Dwx<3_OAgNdbZ z{Qb0)QWl!^xrMnn>m7w#3fuZeu2~|U)ii@R(p^dFOR`iK^X|c#sV!G~ z0T`%}V>fqK7Z+Ez8rBH+97HJjcZ@srbJ&zf4s@O2A?JnzR^hm$$*l1k5$|c27iWQ% zX431tE`zN+<=(yVoHKHOuQZu;dgNU>1rJy%{;COgrKX3sW*yz$;L3oFhX^vTuOau; z);90?90nII3lEK_tKqd2V#z0`v9YMKQCv&xA~;~783`5n*2VpD>!a=R$xX};xyFGQ z58WDawF{9h+v_N`aaYQZ^F@tBuz|ZSS3k8I4w9&-Jh}~7Kf*yj!Q-ri-QC{a-QP-$ zz-93Uiek`L)+l@l4p9FfZO*+V?nAUhCwpOnPS=VXIG1EnH_FQo6?y+|FcFj2a3fPL zlMuMB^86m9pAc{WPI;heAv&ER@C=@g8mi~n+K|{t8Cse5uREugGxnT4Syhuo-YfM? z1;gLI7Lq@|!p*y{Y4%<~fzZ21jm8lNfdT4X-a=k}B6aFvkPD~s^KN@SfYrB=em~;tW|xZUO;Nz^YCJGS5O#bhlhuaAiw7#|Hs7DRh?a$y}dmE(`K2T#(O1p(0Zx@?GwJF zp%M8uwfz1*IM6N^f4Mt|8XJ}1kPq^{RL|>jI6YFmOXqZoQ0(#p!pgS_He+rsE{SshDlSj4!v z*dHQ%*qE4NV&*0%-<95JkL#-Kw61)2L%}yO7WP#%+&l@W6!_DI+A>iytt3GtF0?x{ zGXsESk6rHfxQ{sF=X&BJR4Ou~dyY`atINy78FzlL7rm{mtsi{g=zQ=4LoTaG2(HEa z*wb*fwv2$+Cgb2nMn;Ce^We36`;q!909`&Sas!o0XGzAKXAyCS*G!}y6a#H-!{p-@+pisQ$ai#VVXoGQ)d(ZK$+K&x2ktIG4DP4P#f~n9 zegP54nWhc~1{MyJ6LZCXPEL?`3YAo8ejQ1^K6?5P@Gpy-lG`3vLyjIkTyCd)(dSpH z+Cf)WRRug|yd51K@9#pwkkOwc!AHwlVq#)mT3Y`4`chI(qM{)`Sur?7x=r&iJsAQ8 z;CNTY_tNTq^_$a(33Ft`g`HBx83@{ul6FUaM+gdpn3+~`#P?thycrxpI`fe$Q{XBZ zmU=RKJX)qfZ`t_uDFz+^379tM5;ie62eo)&Lc@t0xi8KrDMxU12MYxT0igEM;^I5L z!#)ltO64U=;-M0g##xxKPf9IHJzPmzo($+J5F}Jo>npxe4i_-Awhlm zCoO&~O`JP(nIN8Li^x#17%qyRnj+Xn&+D=eXa=#du}?!RX=(}vG&a}ICnujXID-d} zB!pdDZh#E`XL7RJfxKAWG~=7B?)?tip2- zQZcd{`TK;hphf23)2xIl_+7kt+jm@wIVxTP)x_u((7nh|=9og;gHb{Kt`?UacJU`n z#`V*ElSwzXPNv*Pk7xE}$VRgMYma~-8p_M7kuN>f8<$~=*vhRbdR~X4X)H)a;xecm zhcw+4XLe%7V!V`%NOlqpM^2M2a5&0vz%@U|B3Cb8!7Zz3)w|hQxnq@~gy9g-X8Krj zsM9Px@09?DlbJ?9r<-zyf`U+1USj5y5uc@}rZ*n8Q}T<3_VP2EDk3NyM>gtVv_}Gd zzfRxBQE8i0R`zD4s)~^l7=NO4;raBflEr*@Yz!W$ZEUtPr#gV;7x|`;!XU!c6=nax zB`r{dZB+u>cC@kiamxwFeUn}E0@jJIC$$sZPA_JEAo*O6X7TOYx-hwvR=t3z zP;w!~Q4uJ6c2tcQMb4lGnSjv{knghHkIc|g(-ws-SjI)vgR)T80)=Ct$8J2`(w7wq zl98X-+20r3T{`^n)YCcD|KM)nK~2xcM$Z<4MxL1bO}lZBP3?E;Z@0ji zo4{yU2A^|bLm>=0;vp$BGe$+fRQ%A;|0#wC`@h`5PL%uY9OGx4F84ZD`gXCS&IHiL(qWnN@{*02A#G7$gTsw^5@P-kAr_ zztoU?Ev~N=pg{FXsvPM0j4q~*))NiBJnQ{K`Eh&u!%>3T6-mMa0+vvS9KUJ^YnfTn zVy;=Tf_U9?NgPmuY1!_9`UTL$G5KX~GC=F z_5J(C3yn!mC;BuArm0S+N9Kwc8=7A7!o#rNA`%R&tXLri=L=axR&&d%WuAG98heIs zWR30(IfC!szqgwGqYPLrte#hD9H+MzPZRoE zlk>1JQVj)67d5?u!kF2F)0&#`4DOH+BxK|+kBzfdudT;|NLr<@CaC39oOB*l5%h5{{!o1bx zm^O!92EQ*22Ne$sAL0JDQUiQDn2!WUUA9{9DpwKU;jhHM!YysQgv$$g;h{IB@W|U~ zlWCY(3w1wWb385;Ws@o>%3B4(8lf2u53VRhTtZuvnk`4LZxsXUH;EdeXU205gG4A5 zhXBPWY~uLzRCz|$D7@H_6%L*WWCKFzT7Y6ky=3D>{<)h(tFGt&>I!!j)On>qBE%}O zhmo4GHQ(wrkJbDctt_jfqpZxvZ*l5%66o!0Xbfrur{6Lt0JyS9`IVEi=M+f;lz34C zL3U!gGz3oW7a6$g!sngcz21R7p`37*X&yLMo-@68DgWN1s>Zd~-BKB|*#@%PTUQzQ zRCp|_4*~GN;3PEkBQ@F!Lc8!hMVB<2ij@_O7SLQAz?yu`&CONU^MnrCSL^`4J?E2P z6#4y8C;DzMMaDQjlJbSA_Vym7>_@7Bl@kJvgb2ilxf7ye$^gj&5u?TL@3#It?dOq3 z!e1>$B2D}Mc-NN#K{!4U*m7J$oswd^;ojC;&)Y6uu1D8!WhmRETe4C^D)P`P2L~UU zxhO#gzYI1_4Gfy{LP9(#&lE@#vJG^Dk1qJonr>!Q657oQizJ9)d~omI zp$Z9e|EREL#G6D4589AO-AWW8z{Z9?4=~92T6e@{2!QI{#zHK;3NAIA5kHd>GoxXu z>P<~4+LU3}BR@L19)<7^$mYx`%JYjbep;@nGcjw+o37%{^Aob5czmT9$UcUFfr+D~ z^yctc_!gtz=5aXzewoPj+)Jx8QAd@os)7pi%}2$kCA-g{8nJnw*pGdCcWe0l20~Py z6XrgM$-s}-B}N41Ye^qmwbjE+fi&*s)}(tA=a(EU_VjA%+#v@tl>WAy^JDAdMQvHt zTawzYs~jm2TMvDgpP?7Z&8qqRrG3>}v=FHeA7kpIY4qr+Pf3=Hw^nR7XW ziu}TC=7=97Y!0u=X!`$2a<%`ZAQyeTDpNFpJM!WT2lrIshCiVL? z;us{rDzve*6f>g&rSS+!H@TnIZNvw`_9lc#`QiqNOIQ6c3O=lv4#c9RgDOaj78ooe zJ(KyQflk*T_$dlPo75D|Y2rtaJ&8^{O2MgSQp$bb5GF7?7-1P59kYhg6#WQvof8B@ zj!7+1hZ6Jo0-0S9EYLCz_4MQn;vKkh>1fo=)F^eN=xMhNSlNR$4s^4R?~8$nCnMXT7^=}f#IQsN;cVDy5UIkVATsK3yL*f8C& zH09BkcnSy<7i{lDZKM7&)d`W_xZwQ8D{Ce(`SAt0LuxmrDuU4t>0YdmH&Z7f1M6O^ z5Mheu9T2wNzN86?@<$V2g$*Q5`}0960+QqTkzLh;yfbcmc9x2zy9J3psDFYx_Rcav z26>8EWCVm(ea0asm~S)Ks)%yq#Ccsri>c^{U00f;0XasSi;(06XmAGX0n=Mhy0>2Mgc!5DQ%T)4lypW-4D9^;Yhpu=$Yn&E2&U=g3PXn49f%K;C^m%tPUq`e0T$JheX65FRr6 z6GvuP*Dx)tOrm`t`dbsoriwO7kc$Q!??d=`#Ga_Ml$McZ4WNJBFC}OThLl&^`tm4O z9$D-8CUSKyib2CEK64yjWy{Xpy~p22$l@Iw$$}QZ`0IDzKq@eT`xguca7Vrwps#&1 zi2p+_F9#qag01%WR|93!1 zbCgFMz*SRI1lNik{%(1c0 zO4CYuG9y$vo8Fier3Xo)aNwT4a%}_X9CE;`Y!0NX;a|XF0aH^a$*)G1t}6EW=F=5V zB)H_COJw@h)RMH3z~A3QIn3s_2)zW!JAc<_Q!=@JmX~5m!vWxixtaqWmi<%0mEXpe z9&59mEu2l1qQjU9GLU%JNBx1e=Fg~YB2S;;=MnzPIo*FTU@oFB!H{YF+~i`i+QILD OA4yR;kqRM$!2bn$a?E7_ diff --git a/docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert2.png b/docs/identity/app-provisioning/media/application-provisioning-log-analytics/alert2.png deleted file mode 100644 index 3478cb7c71ca896ca76bd3176942e9a99e84a2d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54044 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 *G~n@%EPRFxH2gP$Aq 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

p(55}DieifgM^d})? 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 [!div class="checklist"] > * Create an access review -> * Access the audit logs report -> * Access the sign-ins report +> * Access the audit logs +> * Access the sign-ins > * Send logs to Azure Monitor ## Prerequisites @@ -80,13 +80,13 @@ You can track the progress of access reviews as they are completed. The **Results** page provides information on each user under review in the instance, including the ability to Stop, Reset, and Download results. To learn more, check out the [Complete an access review of groups and applications in Microsoft Entra access reviews](~/id-governance/complete-access-review.md) article. -## Access the audit logs report +## Access the audit logs -The audit logs report combines several reports around application activities into a single view for context-based reporting. For more information, see [Audit logs in Microsoft Entra ID](~/identity/monitoring-health/concept-audit-logs.md). +The Microsoft Entra audit logs captures a wide variety of activities within your tenant. These logs provide valuable insights into the activities you need to monitor. For more information, see [Audit logs in Microsoft Entra ID](~/identity/monitoring-health/concept-audit-logs.md). -To access the audit logs report, go to **Identity** > **Monitoring & health** > **Audit logs**. +To access the audit logs, go to **Identity** > **Monitoring & health** > **Audit logs**. -The audit logs report consolidates the following reports: +The audit logs capture activities that fall under the following categories, but is not limited to: - Password reset activity - Password reset registration activity @@ -96,24 +96,27 @@ The audit logs report consolidates the following reports: - Password rollover status - Account provisioning errors -## Access the sign-ins report +## Access the sign-in logs -The Sign-ins view includes all user sign-ins, and the Application Usage report. You also can view application usage information in the Manage section of the Enterprise applications overview. For more information, see [Sign-in logs in Microsoft Entra ID](~/identity/monitoring-health/concept-sign-ins.md) +The Microsoft Entra sign-in logs capture interactive, non-interactive, managed identity, and service principal sign-ins. For more information, see [Sign-in logs in Microsoft Entra ID](~/identity/monitoring-health/concept-sign-ins.md). -To access the sign-in logs report, go to **Identity** > **Monitoring & health** > **Sign-in logs**. +To access the sign-in logs, go to **Identity** > **Monitoring & health** > **Sign-in logs**. + +You also can view application sign-in information from the Enterprise applications area. The sign-in logs open the same logs from **Monitoring & health** > **Sign-in logs**, but the filter is already set to the selected application. The **Usage & insights** report also summarizes sign-in activity for the application. ## Send logs to Azure Monitor -The Microsoft Entra activity logs only store information for a maximum of 30 days. Depending on your needs, you may require extra storage to back up the activity logs data. Using the Azure Monitor, you can archive the audit and sign logs to an Azure storage account to retain the data for a longer time. -The Azure Monitor is also useful for rich visualization, monitoring and alerting of data. To learn more about the Azure Monitor and the cost considerations for extra storage, see [Microsoft Entra activity logs in Azure Monitor](~/identity/monitoring-health/concept-log-monitoring-integration-options-considerations.md). +The Microsoft Entra activity logs only store information for seven days for Microsoft Entra ID Free and 30 days for Microsoft Entra ID P1/P2. Depending on your needs, you may require extra storage to back up the activity logs data. + +Using Azure Monitor logs, you can retain the data for longer and enable powerful analysis tools, such as visualization and alerts. For more information about integrating logs with Azure Monitor logs, see [Integrate Microsoft Entra logs with Azure Monitor](~/identity/monitoring-health/howto-integrate-activity-logs-with-azure-monitor-logs.md). + +To send logs to Azure Monitor, you need a Log Analytics workspace. Once that's created, you configure diagnostic settings to integrate with Log Analytics. There are cost considerations associated with integrating logs with Azure Monitor and Log Analytics, so review this section of [Microsoft Entra activity logs in Azure Monitor](~/identity/monitoring-health/concept-log-monitoring-integration-options-considerations.md#cost-considerations) before proceeding. -To send logs to your logs analytics workspace: +With a Log Analytics workspace configured: 1. Select **Diagnostic settings**, and then select **Add diagnostic setting**. You can also select Export Settings from the Audit Logs or Sign-ins page to get to the diagnostic settings configuration page. -1. In the Diagnostic settings menu, select **Send to Log Analytics workspace**, and then select Configure. -1. Select the Log Analytics workspace you want to send the logs to, or create a new workspace in the provided dialog box. -1. Select the logs that you would like to send to the workspace. -1. Select **Save** to save the setting. +1. Choose the logs you want to stream, select the **Send to Log Analytics workspace** option, and complete the fields. +1. Select **Save**. After about 15 minutes, verify that events are streamed to your Log Analytics workspace. diff --git a/docs/identity/monitoring-health/breadcrumb/TOC.yml b/docs/identity/monitoring-health/breadcrumb/TOC.yml index 304d36851d2..526790e2eba 100644 --- a/docs/identity/monitoring-health/breadcrumb/TOC.yml +++ b/docs/identity/monitoring-health/breadcrumb/TOC.yml @@ -8,4 +8,10 @@ items: - name: Monitoring and health tocHref: /graph/ + topicHref: /entra/identity/monitoring-health/ + - name: Monitoring and health + tocHref: /entra/identity/conditional-access/ + topicHref: /entra/identity/monitoring-health/ + - name: Monitoring and health + tocHref: /entra/identity/app-provisioning/ topicHref: /entra/identity/monitoring-health/ \ No newline at end of file diff --git a/docs/identity/monitoring-health/howto-analyze-activity-logs-log-analytics.md b/docs/identity/monitoring-health/howto-analyze-activity-logs-log-analytics.md index c3a1a0d3354..959c08eeb2c 100644 --- a/docs/identity/monitoring-health/howto-analyze-activity-logs-log-analytics.md +++ b/docs/identity/monitoring-health/howto-analyze-activity-logs-log-analytics.md @@ -117,6 +117,24 @@ AuditLogs | sort by auditCount desc ``` +To summarize the count of provisioning events per day, by action: +```kusto +AADProvisioningLogs +| where TimeGenerated > ago(7d) +| summarize count() by Action, bin(TimeGenerated, 1d) +``` + +Take 100 provisioning events and project key properties: +```kusto +AADProvisioningLogs +| extend SourceIdentity = parse_json(SourceIdentity) +| extend TargetIdentity = parse_json(TargetIdentity) +| extend ServicePrincipal = parse_json(ServicePrincipal) +| where tostring(SourceIdentity.identityType) == "Group" +| project tostring(ServicePrincipal.Id), tostring(ServicePrincipal.Name), ModifiedProperties, JobId, Id, CycleId, ChangeId, Action, SourceIdentity.identityType, SourceIdentity.details, TargetIdentity.identityType, TargetIdentity.details, ProvisioningSteps +| take 100 +``` + ## Related content * [Get started with queries in Azure Monitor logs](/azure/azure-monitor/logs/get-started-queries) diff --git a/docs/identity/monitoring-health/toc.yml b/docs/identity/monitoring-health/toc.yml index c6d1877d2d8..4b3e502d977 100644 --- a/docs/identity/monitoring-health/toc.yml +++ b/docs/identity/monitoring-health/toc.yml @@ -139,6 +139,8 @@ items: href: workbook-cross-tenant-access-activity.md - name: Multifactor authentication gaps href: workbook-mfa-gaps.md + - name: Provisioning workbooks + href: ..\app-provisioning\application-provisioning-log-analytics.md?toc=/entra/identity/monitoring-health/toc.json&bc=/entra/identity/monitoring-health/breadcrumb/TOC.json - name: Risk analysis href: workbook-risk-analysis.md - name: Sensitive Operations Report From 8b7b1945e2297a99963089dfd200c097007c9269 Mon Sep 17 00:00:00 2001 From: shlipsey3 Date: Wed, 4 Dec 2024 16:31:25 -0700 Subject: [PATCH 19/32] link-fix-addition --- .../application-provisioning-log-analytics.md | 10 ++++------ .../enterprise-apps/tutorial-govern-monitor.md | 2 +- .../monitoring-health/concept-provisioning-logs.md | 13 ++++++++++++- docs/identity/monitoring-health/toc.yml | 2 +- 4 files changed, 18 insertions(+), 9 deletions(-) diff --git a/docs/identity/app-provisioning/application-provisioning-log-analytics.md b/docs/identity/app-provisioning/application-provisioning-log-analytics.md index 174575f5f29..5659d08b0c0 100644 --- a/docs/identity/app-provisioning/application-provisioning-log-analytics.md +++ b/docs/identity/app-provisioning/application-provisioning-log-analytics.md @@ -16,7 +16,7 @@ ms.reviewer: arvinh Provisioning integrates with Azure Monitor logs and Log Analytics. With Azure monitoring you can do things like create workbooks, also known as dashboards, store provisioning logs for 30+ days, and create custom queries and alerts. This article discusses how provisioning logs integrate with Azure Monitor logs. To learn more about how provisioning logs work in general, see [provisioning logs](~/identity/monitoring-health/concept-provisioning-logs.md). -## Enabling provisioning logs +## Enabling provisioning logs integration If you're not already familiar with Azure Monitor and Log Analytics, explore the following resources and then come back to learn about integrating application provisioning logs with Azure Monitor logs. @@ -139,19 +139,17 @@ AADProvisioningLogs Azure Monitor lets you configure custom alerts so that you can get notified about key events related to Provisioning. For example, you might want to receive an alert on spikes in failures spikes in disables or deletes. You might also want to be alerted if there is a lack of any provisioning, which indicates something is wrong. -To learn more about alerts, see [Azure Monitor Log Alerts](/azure/azure-monitor/alerts/alerts-create-new-alert-rule). There are many options and configurations, so review the documentation. But at a very high-level, here's how you can create an alert: +To learn more about alerts, see [Azure Monitor Log Alerts](/azure/azure-monitor/alerts/alerts-create-new-alert-rule). There are many options and configurations, so review the full documentation. But at a very high-level, here's how you can create an alert: 1. From Log Analytics, select **+ New alert rule**. 1. On the **Condition** tab, select the **View result and edit query in Logs** link. 1. Enter a query you want to alert on, and complete the necessary fields to create the alert. -In each of the examples, replace `jobId` with the ID for your application. - To create an alert when there's a spike in failures: ```kusto AADProvisioningLogs -| where JobId == "FacebookAtWorkOutDelta.536279f615cc45f2be2d61e352b51eef.7a962c2b-318d-45a7-8cc0-486173dccfd7" +| where JobId == "string" // Customize by adding a specific app JobId | where ResultType == "Failure" ``` @@ -175,7 +173,7 @@ We're taking an open source and community-based approach to application provisio ## Next steps -- [Integrate Microsoft Entra logs with Azure Monitor logs](~/identity/monitoring-health/howto-integrate-logs-with-azure-monitor-logs.md) +- [Integrate Microsoft Entra logs with Azure Monitor logs](../monitoring-health/howto-integrate-activity-logs-with-azure-monitor-logs.yml) - [Get started with queries in Azure Monitor logs](/azure/azure-monitor/logs/get-started-queries) - [Create and manage alert groups in the Azure portal](/azure/azure-monitor/alerts/action-groups) - [Provisioning logs API](/graph/api/resources/provisioningobjectsummary?preserve-view=true&view=graph-rest-beta) diff --git a/docs/identity/enterprise-apps/tutorial-govern-monitor.md b/docs/identity/enterprise-apps/tutorial-govern-monitor.md index 38521f5a7b8..e2a1dd3c7f4 100644 --- a/docs/identity/enterprise-apps/tutorial-govern-monitor.md +++ b/docs/identity/enterprise-apps/tutorial-govern-monitor.md @@ -108,7 +108,7 @@ You also can view application sign-in information from the Enterprise applicatio The Microsoft Entra activity logs only store information for seven days for Microsoft Entra ID Free and 30 days for Microsoft Entra ID P1/P2. Depending on your needs, you may require extra storage to back up the activity logs data. -Using Azure Monitor logs, you can retain the data for longer and enable powerful analysis tools, such as visualization and alerts. For more information about integrating logs with Azure Monitor logs, see [Integrate Microsoft Entra logs with Azure Monitor](~/identity/monitoring-health/howto-integrate-activity-logs-with-azure-monitor-logs.md). +Using Azure Monitor logs, you can retain the data for longer and enable powerful analysis tools, such as visualization and alerts. For more information about integrating logs with Azure Monitor logs, see [Integrate Microsoft Entra logs with Azure Monitor](../monitoring-health/howto-integrate-activity-logs-with-azure-monitor-logs.yml). To send logs to Azure Monitor, you need a Log Analytics workspace. Once that's created, you configure diagnostic settings to integrate with Log Analytics. There are cost considerations associated with integrating logs with Azure Monitor and Log Analytics, so review this section of [Microsoft Entra activity logs in Azure Monitor](~/identity/monitoring-health/concept-log-monitoring-integration-options-considerations.md#cost-considerations) before proceeding. diff --git a/docs/identity/monitoring-health/concept-provisioning-logs.md b/docs/identity/monitoring-health/concept-provisioning-logs.md index 615cfc2fdfd..369bfb9f918 100644 --- a/docs/identity/monitoring-health/concept-provisioning-logs.md +++ b/docs/identity/monitoring-health/concept-provisioning-logs.md @@ -6,7 +6,7 @@ manager: amycolannino ms.service: entra-id ms.topic: conceptual ms.subservice: monitoring-health -ms.date: 11/08/2024 +ms.date: 12/04/2024 ms.author: sarahlipsey ms.reviewer: arvinh @@ -70,6 +70,17 @@ Select an item from the provisioning logs to see more details about this item, s - **Summary**: Provides an overview of what happened and identifiers for the object in the source and target systems. +## Using provisioning logs workbooks and Log Analytics + +With the querying and alerting capabilties of Log Analytics and workbooks, you can create custom reports and alerts. To get started, you need to [create a Log Analytics workspace](). Once you have a workspace, you can stream your logs to that workspace, which allows you to query and analyze the data in Log Analytics and workbooks. + +For more information, see [Integrating provisioning logs with Azure Monitor logs](../app-provisioning/application-provisioning-log-analytics.md). + +There are two workbook templates available for provisioning logs: + +- **Provisioning Analysis** provides a high-level overview of the provisioning events in your tenant. +- **Provisioning Insights** provides details on events related to syncing users from other sources so you can see analyze these events in one place. For more information, see [Provisioning insights workbook](../app-provisioning/provisioning-workbook.md). + ## Related content - [Integrating provisioning logs with Azure Monitor logs](../app-provisioning/application-provisioning-log-analytics.md) diff --git a/docs/identity/monitoring-health/toc.yml b/docs/identity/monitoring-health/toc.yml index 4b3e502d977..d71cfdb7b9a 100644 --- a/docs/identity/monitoring-health/toc.yml +++ b/docs/identity/monitoring-health/toc.yml @@ -139,7 +139,7 @@ items: href: workbook-cross-tenant-access-activity.md - name: Multifactor authentication gaps href: workbook-mfa-gaps.md - - name: Provisioning workbooks + - name: Provisioning insights href: ..\app-provisioning\application-provisioning-log-analytics.md?toc=/entra/identity/monitoring-health/toc.json&bc=/entra/identity/monitoring-health/breadcrumb/TOC.json - name: Risk analysis href: workbook-risk-analysis.md From 324aea416d72bba0cd493087d59aa0fc0a584223 Mon Sep 17 00:00:00 2001 From: shlipsey3 Date: Wed, 4 Dec 2024 16:38:27 -0700 Subject: [PATCH 20/32] acrolinx --- .../application-provisioning-log-analytics.md | 4 ++-- docs/identity/enterprise-apps/tutorial-govern-monitor.md | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/identity/app-provisioning/application-provisioning-log-analytics.md b/docs/identity/app-provisioning/application-provisioning-log-analytics.md index 5659d08b0c0..727ead753ce 100644 --- a/docs/identity/app-provisioning/application-provisioning-log-analytics.md +++ b/docs/identity/app-provisioning/application-provisioning-log-analytics.md @@ -137,9 +137,9 @@ AADProvisioningLogs ``` ## Custom alerts -Azure Monitor lets you configure custom alerts so that you can get notified about key events related to Provisioning. For example, you might want to receive an alert on spikes in failures spikes in disables or deletes. You might also want to be alerted if there is a lack of any provisioning, which indicates something is wrong. +Azure Monitor lets you configure custom alerts so that you can get notified about key events related to Provisioning. For example, you might want to receive an alert on spikes in failures spikes in disables or deletes. You might also want to be alerted if there's a lack of any provisioning, which indicates something is wrong. -To learn more about alerts, see [Azure Monitor Log Alerts](/azure/azure-monitor/alerts/alerts-create-new-alert-rule). There are many options and configurations, so review the full documentation. But at a very high-level, here's how you can create an alert: +To learn more about alerts, see [Azure Monitor Log Alerts](/azure/azure-monitor/alerts/alerts-create-new-alert-rule). There are many options and configurations, so review the full documentation. But at a high-level, here's how you can create an alert: 1. From Log Analytics, select **+ New alert rule**. 1. On the **Condition** tab, select the **View result and edit query in Logs** link. diff --git a/docs/identity/enterprise-apps/tutorial-govern-monitor.md b/docs/identity/enterprise-apps/tutorial-govern-monitor.md index e2a1dd3c7f4..fd742886b2e 100644 --- a/docs/identity/enterprise-apps/tutorial-govern-monitor.md +++ b/docs/identity/enterprise-apps/tutorial-govern-monitor.md @@ -72,7 +72,7 @@ If you've assigned guests as reviewers and they haven't accepted their invitatio ### View the status of an access review -You can track the progress of access reviews as they are completed. +You can track the progress of access reviews as they're completed. 1. Go to **Identity** > **Identity Governance** > **Access reviews**. 1. In the list, select the access review you created. @@ -82,11 +82,11 @@ The **Results** page provides information on each user under review in the insta ## Access the audit logs -The Microsoft Entra audit logs captures a wide variety of activities within your tenant. These logs provide valuable insights into the activities you need to monitor. For more information, see [Audit logs in Microsoft Entra ID](~/identity/monitoring-health/concept-audit-logs.md). +The Microsoft Entra audit logs capture a wide variety of activities within your tenant. These logs provide valuable insights into the activities you need to monitor. For more information, see [Audit logs in Microsoft Entra ID](~/identity/monitoring-health/concept-audit-logs.md). To access the audit logs, go to **Identity** > **Monitoring & health** > **Audit logs**. -The audit logs capture activities that fall under the following categories, but is not limited to: +The audit logs capture activities that fall under the following categories. This list is not exhaustive. For a full list of the audit log categories and activities, see [Audit log activities](../monitoring-health/reference-audit-activities.md). - Password reset activity - Password reset registration activity @@ -106,7 +106,7 @@ You also can view application sign-in information from the Enterprise applicatio ## Send logs to Azure Monitor -The Microsoft Entra activity logs only store information for seven days for Microsoft Entra ID Free and 30 days for Microsoft Entra ID P1/P2. Depending on your needs, you may require extra storage to back up the activity logs data. +The Microsoft Entra activity logs only store information for seven days for Microsoft Entra ID Free and 30 days for Microsoft Entra ID P1/P2. Depending on your needs, you might require extra storage to back up the activity logs data. Using Azure Monitor logs, you can retain the data for longer and enable powerful analysis tools, such as visualization and alerts. For more information about integrating logs with Azure Monitor logs, see [Integrate Microsoft Entra logs with Azure Monitor](../monitoring-health/howto-integrate-activity-logs-with-azure-monitor-logs.yml). From e7c7d709ba19de246c4acdf1cc9d66b79f896f51 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 16:44:24 -0700 Subject: [PATCH 21/32] Addressing PR reviewer comments --- .../how-to-export-connector-logs.md | 176 +++++++++--------- 1 file changed, 89 insertions(+), 87 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index fc9c691a3b2..dd7454bcac4 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -37,55 +37,55 @@ To enable verbose logging: 2. Create a folder on in the local directory with write permissions **On**. To verify write permissions: - - Right-click on the folder you created, then click **Properties**. - - Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. If **Write** isn't checked, select **edit**. - - On the pop-up window, select **allow** for the **write** row, then click **apply**. + a. Right-click on the folder you created, then click **Properties**. + b. Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. If **Write** isn't checked, select **edit**. + c On the pop-up window, select **allow** for the **write** row, then click **apply**. 3. Right-click on a text editor application such as Notepad or Notepad++, and select **Run as Administrator**. 4. Open the file `MicrosoftEntraPrivateNetworkConnector.exe.config` to edit. 5. From the following section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. -``` json - + ``` json + - + -  +  -     +     -  +  -  +  -    +    -  +  - + -  +  -    +    -      +      -      +      -      +      -    +    -  +  - -``` + + ``` -Next, you need to Stop and Start the Connector service for the above changes to take effect. + Next, you need to Stop and Start the Connector service for the above changes to take effect. -5. Type **Services** in search box in taskbar, then go to **Services**. -6. Look for the **Microsoft Entra Private Network Connector** service from the Services list and select it. -7. Choose **Stop** the agent service, then **Start** the agent service again. At this point, you see a text file labeled `connector_logs.log` in the C:\logs\ folder. +6. Type **Services** in the search box in the taskbar, then go to **Services**. +7. Look for the **Microsoft Entra Private Network Connector** service from the Services list and select it. +8. Choose **Stop** the agent service, then **Start** the agent service again. At this point, you see a text file labeled `connector_logs.log` in the C:\logs\ folder. > [!NOTE] > When verbose logging isn't enabled, the default log file location is stored at `C:\Users\\AppData\Local\Temp`. When verbose logging is enabled, the log file is stored at `C:\logs\connector_logs.log`. @@ -93,39 +93,39 @@ Next, you need to Stop and Start the Connector service for the above changes to ### Set up Azure Arc on the on-premises machine 1. Get the script for enabling Azure Arc for the on-premises machine: - - Go to the [Azure portal](https://portal.azure.com/). - - Search for **Azure Arc** in the search bar. - - Go to **Azure Arc resources > Machines**. - - Click on **Add/Create > Add a Machine**. - - Add a single server > click on **Generate Script**. - - Fill in the information, then click **Download and Run Script**. + 1. Go to the [Azure portal](https://portal.azure.com/). + 1. Search for **Azure Arc** in the search bar. + 1. Go to **Azure Arc resources > Machines**. + 1. Click on **Add/Create > Add a Machine**. + 1. Add a single server > click on **Generate Script**. + 1. Fill in the information, then click **Download and Run Script**. 2. Install the Azure Arc Agent on the on-premises connector machine: - - Download the Azure Arc agent setup script from the Azure portal. - - Search for **Windows PowerShell ISE** in the search box on the Task bar. Right click on the application, then click **Run as administrator**. + 1. Download the Azure Arc agent setup script from the Azure portal. + 1. Search for **Windows PowerShell ISE** in the search box on the Task bar. Right click on the application, then click **Run as administrator**. From PowerShell, open the downloaded file labeled `OnboardingScript.ps1`. - - Run the script. - - Log in on the pop-up window to authenticate using the Azure account credentials. The screen returns a message that reads: + 1. Run the script. + 1. Log in on the pop-up window to authenticate using the Azure account credentials. The screen returns a message that reads: `Authentication complete. You can return to the application. Feel free to close this browser tab.` ### Set up Log Analytics workspace 1. Go to the [Azure portal](https://portal.azure.com/). 2. Create a Log Analytics workspace: - - In the search bar, type **Log Analytics** and select **Log Analytics workspaces**. - - Click **Create**. - - Fill in the necessary details: + 1. In the search bar, type **Log Analytics** and select **Log Analytics workspaces**. + 1. Click **Create**. + 1. Fill in the necessary details: - **Subscription**: Select your subscription. - **Resource Group**: Select an existing resource group or create a new one. - **Name**: Provide a unique name for the Log Analytics workspace. - - **Region**: Choose the region closest to your on-premise machine. - - Click **Review + create**, then **Create**. + - **Region**: Choose the region closest to your on-premises machine. + 1. Click **Review + create**, then **Create**. 3. Create a table under the new workspace. - - Select the workspace name you created. - - Navigate to **Workspace -> Settings -> Tables**. - - Click **Create -> New Custom Log (MMA-based)**. - - Select log file from the virtual machine (VM) location (`C:\logs\connector_logs.log`). - - Set delimiter as **New Line**. - - Add Collection Path Type – windows & Path as `C:\logs\connector_logs.log`. - - Click **Create**. + 1. Select the workspace name you created. + 1. Navigate to **Workspace -> Settings -> Tables**. + 1. Click **Create -> New Custom Log (MMA-based)**. + 1. Select log file from the virtual machine (VM) location (`C:\logs\connector_logs.log`). + 1. Set delimiter as **New Line**. + 1. Add Collection Path Type – windows & Path as `C:\logs\connector_logs.log`. + 1. Click **Create**. ### Set up data collection endpoint (DCE) 1. Go to the [Azure portal](https://portal.azure.com/). @@ -146,31 +146,33 @@ Next, you need to Stop and Start the Connector service for the above changes to - **Platform**: Windows. - **Data collection Endpoint**: Select data collection endpoint you created in previous step. 5. Click Next: Resources - - Add resources. - - Open your subscription. - - Select your resource group from the list. - - Click apply. You should see your VM name list in the resources. + 1. Click **Add resources**. + 1. Open your subscription. + 1. Select your resource group from the list. + 1. Click apply. You should see your VM name list in the resources. 6. Click Next: Collect and deliver - - Click **Add data source**. - - For the Data source type, select **Custom Text logs**. - - Specify the paths to the logs on your on-premise Windows machine (for example, C:\logs\ connector_logs.log). - - Enter the table name you created under log analytics workspace. - To get the table name, open a new tab and navigate to the azure portal and search for **Log Analytics Workspaces**. Select the table you created. Click on **setting** and open the + 1. Click **Add data source**. + 1. For the Data source type, select **Custom Text logs**. + 1. Specify the paths to the logs on your on-premises Windows machine (for example, C:\logs\ connector_logs.log). + 1. Enter the table name you created under log analytics workspace. + To get the table name, open a new tab and navigate to the Azure portal and search for **Log Analytics Workspaces**. Select the table you created. Click on **setting** and open the tables. Find the name of the **custom table (classic)**. - - Click **Add**, then **Next: Destination**. + 1. Click **Add**, then **Next: Destination**. 7. Configure Destination: - - Destination **Type-> Azure Monitor Logs**. - - Select your subscription. - - Select your Log Analytics workspace as the destination. - - Ensure your Data Collection Endpoint is selected. - - Click **Next: Review + create** and then **Create**. + 1. Destination **Type-> Azure Monitor Logs**. + 1. Select your subscription. + 1. Select your Log Analytics workspace as the destination. + 1. Ensure your Data Collection Endpoint is selected. + 1. Click **Next: Review + create** and then **Create**. ### Verify data collection 1. Check Data in Log Analytics: - - After you've installed and configured the agent, it may take some time for data to start appearing. - - In the Azure portal, go to your Log Analytics workspace > Select your Workspace. - - Navigate to **Logs**, click exit on the pop-up hub > **Custom Logs** > Double Click on your log name. This adds the log name into the query. - - Select **Run**. You see your logs. + + After you've installed and configured the agent, it may take some time for data to start appearing. + + 1. In the Azure portal, go to your Log Analytics workspace > Select your Workspace. + 1. Navigate to **Logs**, click exit on the pop-up hub > **Custom Logs** > Double Click on your log name. This adds the log name into the query. + 1. Select **Run**. You see your logs. This setup allows you to collect text logs from on-premises Windows machines and send them to Azure Log Analytics using Azure Arc. The data collection rule ensures the logs are collected as per the defined paths, and the agent sends them to your Log Analytics workspace. @@ -181,49 +183,49 @@ Here are the steps to provide access to an external user: ### Prerequisites -1. **Azure Subscription**: Ensure you have an active Azure subscription. -2. **Log Analytics Workspace**: An existing Log Analytics workspace that you want to share. -3. **Microsoft Entra ID Guest User**: The external user must be added as a guest user in your Microsoft Entra ID. +- **Azure Subscription**: Ensure you have an active Azure subscription. +- **Log Analytics Workspace**: An existing Log Analytics workspace that you want to share. +- **Microsoft Entra ID Guest User**: The external user must be added as a guest user in your Microsoft Entra ID. ### Add external user as a guest in Microsoft Entra ID 1. Navigate to Microsoft Entra ID: - - Go to the [Azure portal](https://portal.azure.com/). - - In the search bar, type **Microsoft Entra ID**, then select it. + 1. Go to the [Azure portal](https://portal.azure.com/). + 1. In the search bar, type **Microsoft Entra ID**, then select it. 2. Add a New Guest User: - - In the Microsoft Entra ID dashboard, select **Manage -> Users**. - - Click on **+ New user**, then select **Invite external user**. - - Enter the external user's email address and fill in the required information. - - Click **Invite** to send an invitation to the external user. + 1. In the Microsoft Entra ID dashboard, select **Manage -> Users**. + 1. Click on **+ New user**, then select **Invite external user**. + 1. Enter the external user's email address and fill in the required information. + 1. Click **Invite** to send an invitation to the external user. The external user receives an email invitation to join your Microsoft Entra ID page as a guest. ### Assign roles to the guest user in Log Analytics workspace 1. Navigate to the Log Analytics Workspace: - In the Azure portal, search for **Log Analytics workspaces**, then select the workspace you want to share. 2. Identity Access Control (IAM): - - In the workspace blade, select **Access control (IAM)** from the left-hand menu. - - Click on **+ Add**, then select **Add role assignment**. + 1. In the workspace blade, select **Access control (IAM)** from the left-hand menu. + 1. Click on **+ Add**, then select **Add role assignment**. 3. Assign a Role: - - Select a role to assign to the guest user. Common roles for accessing Log Analytics include: - - Log Analytics Reader: Allows the user to read and query logs. - - Log Analytics Contributor: Allows the user to read, query, and modify logs. + 1. Select a role to assign to the guest user. Common roles for accessing Log Analytics include: + 1. Log Analytics Reader: Allows the user to read and query logs. + 1. Log Analytics Contributor: Allows the user to read, query, and modify logs. 4. Add the Guest User: - - In the Members section, click **Select members**. - - Search for the guest user you added earlier by their email address. - - Select the guest user and click **Select**. + 1. In the Members section, click **Select members**. + 1. Search for the guest user you added earlier by their email address. + 1. Select the guest user and click **Select**. 5. Review and Assign: - Review the role assignment and click **Review + assign** to complete the process. ### Ensure permissions are properly set 1. Verify Permissions: - - The guest user should now have access to the Log Analytics workspace with the permissions assigned. + The guest user should now have access to the Log Analytics workspace with the permissions assigned. - You can verify by going to **Access control (IAM)** in the Log Analytics workspace and checking the role assignments. ### External user access and query logs 1. External User Access: - The external user needs to accept the invitation sent to their email and log into the Azure portal using their credentials. 2. Accessing Log Analytics: - - Once logged in, the external user navigates to the Log Analytics workspace shared with them. - - They can use the Log Analytics workspace's **Logs** feature to query and analyze logs based on the permissions granted. + 1. Once logged in, the external user navigates to the Log Analytics workspace shared with them. + 1. They can use the Log Analytics workspace's **Logs** feature to query and analyze logs based on the permissions granted. ### Other considerations - **Security**: Follow the principle of least privilege and ensure that you grant only the necessary permissions to the guest user. From 461f8a01d5e0d78835b9f8457e8ce4752cc7a8b5 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 16:47:30 -0700 Subject: [PATCH 22/32] Reformatting code --- docs/global-secure-access/how-to-export-connector-logs.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index dd7454bcac4..55a6168d7f6 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -45,7 +45,7 @@ To enable verbose logging: 5. From the following section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. - ``` json +``` json @@ -79,7 +79,7 @@ To enable verbose logging:   - ``` +``` Next, you need to Stop and Start the Connector service for the above changes to take effect. From 2d1e0f6468cfe0e55df50568d4f1d79368ea2922 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 16:51:14 -0700 Subject: [PATCH 23/32] Fixing code block. Indention isn't allowed. --- .../how-to-export-connector-logs.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 55a6168d7f6..e6ea7bed4b6 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -46,35 +46,35 @@ To enable verbose logging: ``` json - + - + -  +  -     +     -  +  -  +  -    +    -  +  -    +    -      +      -      +      -      +      -    +    From 14814d685389d175da40830b0e9be82f1ece1999 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 16:53:12 -0700 Subject: [PATCH 24/32] Fixing code block again. --- .../how-to-export-connector-logs.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index e6ea7bed4b6..82a19e157f9 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -50,33 +50,33 @@ To enable verbose logging: -  +  -     +    -  +  -  +  -    +    - + -    +    -      +      -      +      -      +      -    +    -  +  ``` From 681f8b619b57b767db3c2c10451f981fa26239b5 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 17:05:43 -0700 Subject: [PATCH 25/32] Code block --- .../how-to-export-connector-logs.md | 32 ++++++++++--------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 82a19e157f9..7766b4edef2 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -50,36 +50,38 @@ To enable verbose logging: -  +  -    +     -  +  -  +  -    +    -  +  -  +  -    +    -      +      -      +      -      +      -    +    -  +  - -``` + + + + ``` Next, you need to Stop and Start the Connector service for the above changes to take effect. From b2a8c028019043c34a5a4ac1ed3638fc7b52e1b9 Mon Sep 17 00:00:00 2001 From: shlipsey3 Date: Wed, 4 Dec 2024 17:08:01 -0700 Subject: [PATCH 26/32] PR-review-fix --- docs/identity/monitoring-health/concept-provisioning-logs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/identity/monitoring-health/concept-provisioning-logs.md b/docs/identity/monitoring-health/concept-provisioning-logs.md index 369bfb9f918..2d2318e86c5 100644 --- a/docs/identity/monitoring-health/concept-provisioning-logs.md +++ b/docs/identity/monitoring-health/concept-provisioning-logs.md @@ -72,7 +72,7 @@ Select an item from the provisioning logs to see more details about this item, s ## Using provisioning logs workbooks and Log Analytics -With the querying and alerting capabilties of Log Analytics and workbooks, you can create custom reports and alerts. To get started, you need to [create a Log Analytics workspace](). Once you have a workspace, you can stream your logs to that workspace, which allows you to query and analyze the data in Log Analytics and workbooks. +With the querying and alerting capabilities of Log Analytics and workbooks, you can create custom reports and alerts. To get started, you need to [create a Log Analytics workspace](tutorial-configure-log-analytics-workspace#create-the-workspace). Once you have a workspace, you can stream your logs to that workspace, which allows you to query and analyze the data in Log Analytics and workbooks. For more information, see [Integrating provisioning logs with Azure Monitor logs](../app-provisioning/application-provisioning-log-analytics.md). From 1e07e8bfde53ade68a07d29bddd72897c4d69a9c Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 17:09:25 -0700 Subject: [PATCH 27/32] Code block once again --- docs/global-secure-access/how-to-export-connector-logs.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 7766b4edef2..a01d4aa53c3 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -44,8 +44,7 @@ To enable verbose logging: 4. Open the file `MicrosoftEntraPrivateNetworkConnector.exe.config` to edit. 5. From the following section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. - -``` json +```json @@ -81,7 +80,7 @@ To enable verbose logging: - ``` +``` Next, you need to Stop and Start the Connector service for the above changes to take effect. From c29d081fb94a0415fee68e697127e74c7666c41d Mon Sep 17 00:00:00 2001 From: shlipsey3 Date: Wed, 4 Dec 2024 17:13:52 -0700 Subject: [PATCH 28/32] link-fix --- docs/identity/monitoring-health/concept-provisioning-logs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/identity/monitoring-health/concept-provisioning-logs.md b/docs/identity/monitoring-health/concept-provisioning-logs.md index 2d2318e86c5..8dadbb057ad 100644 --- a/docs/identity/monitoring-health/concept-provisioning-logs.md +++ b/docs/identity/monitoring-health/concept-provisioning-logs.md @@ -72,7 +72,7 @@ Select an item from the provisioning logs to see more details about this item, s ## Using provisioning logs workbooks and Log Analytics -With the querying and alerting capabilities of Log Analytics and workbooks, you can create custom reports and alerts. To get started, you need to [create a Log Analytics workspace](tutorial-configure-log-analytics-workspace#create-the-workspace). Once you have a workspace, you can stream your logs to that workspace, which allows you to query and analyze the data in Log Analytics and workbooks. +With the querying and alerting capabilities of Log Analytics and workbooks, you can create custom reports and alerts. To get started, you need to [create a Log Analytics workspace](tutorial-configure-log-analytics-workspace.md#create-the-workspace). Once you have a workspace, you can stream your logs to that workspace, which allows you to query and analyze the data in Log Analytics and workbooks. For more information, see [Integrating provisioning logs with Azure Monitor logs](../app-provisioning/application-provisioning-log-analytics.md). From 42c6ffdbcdbc77131271591adef979ee36df07be Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 17:16:00 -0700 Subject: [PATCH 29/32] Code --- docs/global-secure-access/how-to-export-connector-logs.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index a01d4aa53c3..2fd5414f963 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -45,6 +45,7 @@ To enable verbose logging: 5. From the following section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. ```json + @@ -80,6 +81,7 @@ To enable verbose logging: + ``` Next, you need to Stop and Start the Connector service for the above changes to take effect. From 9ce7aed860f09cc294013bed40393ae05c2a3419 Mon Sep 17 00:00:00 2001 From: Jennifer Fields Date: Wed, 4 Dec 2024 17:19:07 -0700 Subject: [PATCH 30/32] Fixed a line. --- docs/global-secure-access/how-to-export-connector-logs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index 2fd5414f963..ba9d16ac33e 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -84,7 +84,7 @@ To enable verbose logging: ``` - Next, you need to Stop and Start the Connector service for the above changes to take effect. +Next, you need to Stop and Start the Connector service for the above changes to take effect. 6. Type **Services** in the search box in the taskbar, then go to **Services**. 7. Look for the **Microsoft Entra Private Network Connector** service from the Services list and select it. From 4d782ffbfeb0cfbb89e76158d33a1cb9649a91c5 Mon Sep 17 00:00:00 2001 From: Anna Huff <92125952+AnnaMHuff@users.noreply.github.com> Date: Wed, 4 Dec 2024 17:46:47 -0700 Subject: [PATCH 31/32] Apply suggestions from PR review Delete extra word, fix indenting and list numbering, add missing period, change single-item lists from numbers to bullets. --- .../how-to-export-connector-logs.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/global-secure-access/how-to-export-connector-logs.md b/docs/global-secure-access/how-to-export-connector-logs.md index ba9d16ac33e..83e1b269430 100644 --- a/docs/global-secure-access/how-to-export-connector-logs.md +++ b/docs/global-secure-access/how-to-export-connector-logs.md @@ -34,12 +34,12 @@ Verbose logs are useful when debugging Microsoft Entra Private Network Connector To enable verbose logging: 1. Locate the installation directory of the connector at `C:\Program Files\Microsoft Entra Private Network Connector`. -2. Create a folder on in the local directory with write permissions **On**. +2. Create a folder in the local directory with write permissions **On**. - To verify write permissions: - a. Right-click on the folder you created, then click **Properties**. - b. Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. If **Write** isn't checked, select **edit**. - c On the pop-up window, select **allow** for the **write** row, then click **apply**. + To verify write permissions: + 1. Right-click on the folder you created, then click **Properties**. + 1. Go to the **Security** tab and make sure the **Write** property is checked for **Allow**. If **Write** isn't checked, select **edit**. + 1. On the pop-up window, select **allow** for the **write** row, then click **apply**. 3. Right-click on a text editor application such as Notepad or Notepad++, and select **Run as Administrator**. 4. Open the file `MicrosoftEntraPrivateNetworkConnector.exe.config` to edit. 5. From the following section, select the code from `````` to `````` and add it to the `MicrosoftEntraPrivateNetworkConnector.exe.config` file. @@ -84,7 +84,7 @@ To enable verbose logging: ``` -Next, you need to Stop and Start the Connector service for the above changes to take effect. + Next, you need to Stop and Start the Connector service for the above changes to take effect. 6. Type **Services** in the search box in the taskbar, then go to **Services**. 7. Look for the **Microsoft Entra Private Network Connector** service from the Services list and select it. @@ -116,10 +116,10 @@ Next, you need to Stop and Start the Connector service for the above changes to 1. In the search bar, type **Log Analytics** and select **Log Analytics workspaces**. 1. Click **Create**. 1. Fill in the necessary details: - - **Subscription**: Select your subscription. - - **Resource Group**: Select an existing resource group or create a new one. - - **Name**: Provide a unique name for the Log Analytics workspace. - - **Region**: Choose the region closest to your on-premises machine. + - **Subscription**: Select your subscription. + - **Resource Group**: Select an existing resource group or create a new one. + - **Name**: Provide a unique name for the Log Analytics workspace. + - **Region**: Choose the region closest to your on-premises machine. 1. Click **Review + create**, then **Create**. 3. Create a table under the new workspace. 1. Select the workspace name you created. @@ -169,7 +169,7 @@ Next, you need to Stop and Start the Connector service for the above changes to 1. Click **Next: Review + create** and then **Create**. ### Verify data collection -1. Check Data in Log Analytics: +- Check Data in Log Analytics: After you've installed and configured the agent, it may take some time for data to start appearing. @@ -219,7 +219,7 @@ The external user receives an email invitation to join your Microsoft Entra ID p - Review the role assignment and click **Review + assign** to complete the process. ### Ensure permissions are properly set -1. Verify Permissions: +- Verify Permissions: The guest user should now have access to the Log Analytics workspace with the permissions assigned. - You can verify by going to **Access control (IAM)** in the Log Analytics workspace and checking the role assignments. From 53b318e4f45a00ab787ffa70a7e31d75517efd0d Mon Sep 17 00:00:00 2001 From: Chris Werner <59959532+cilwerner@users.noreply.github.com> Date: Thu, 5 Dec 2024 10:00:06 +0000 Subject: [PATCH 32/32] Adding old policy Ids and new requests --- .docutune/dictionaries/known-guids.json | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.docutune/dictionaries/known-guids.json b/.docutune/dictionaries/known-guids.json index 5d827674abc..13b96c2db63 100644 --- a/.docutune/dictionaries/known-guids.json +++ b/.docutune/dictionaries/known-guids.json @@ -3837,5 +3837,17 @@ "Microsoft.EventGrid - Public cloud" : "4962773b-9cdb-44cf-a8bf-237846a00ab7", "Microsoft.EventGrid - Government cloud" : "54316b56-3481-47f9-8f30-0300f5542a7b", "Microsoft Azure Batch - Public cloud" : "ddbf3205-c6bd-46ae-8127-60eb93363864", - "RDS.DataControl object in VBScript" : "BD96C556-65A3-11D0-983A-00C04FC29E33" + "RDS.DataControl object in VBScript" : "BD96C556-65A3-11D0-983A-00C04FC29E33", + "Core research area - Azure devopes-docs-pr" : "79134C72-4A58-4B42-976C-04E7115F32BF", + "Power BI Report Server and SSRS from Power BI mobile applications" : "484d54fc-b481-4eee-9505-0258a1913020", + "Export to data lake" : "7f15f9d9-cad0-44f1-bbba-d36650e07765", + "Common Data Service - Azure Data Lake Storage" : "546068c3-99b1-4890-8e93-c8aeadcfe56a", + "Insights Apps Platform Prod" : "99ff962b-6252-4b98-8478-0c65a3ea1925", + "Old dummy policy ID 1" : "1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5", + "Old dummy policy ID 2" : "2bbbbbb2-3cc3-4dd4-5ee5-6ffffffffff6", + "Old dummy policy ID 3" : "3cccccc3-4dd4-5ee5-6ff6-7aaaaaaaaaa7", + "Old dummy policy ID 4" : "4dddddd4-5ee5-6ff6-7aa7-8bbbbbbbbbb8", + "Old dummy policy ID 5" : "5eeeeee5-6ff6-7aa7-8bb8-9cccccccccc9", + "Old dummy policy ID 6" : "6ffffff6-7aa7-8bb8-9cc9-0dddddddddd0", + "Old dummy policy ID 7" : "7aaaaaa7-8bb8-9cc9-0dd0-1eeeeeeeeee1" }