From 43c6690413b205228323d771385ed04269d5a891 Mon Sep 17 00:00:00 2001 From: bhuvanapriyap <178453891+bhuvanapriyap@users.noreply.github.com> Date: Tue, 17 Sep 2024 14:09:09 +0530 Subject: [PATCH 01/53] Update using-addons-api.md updating v2 --- .../publish/api/using-addons-api.md | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 12ac08aead..35e32bc6b1 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -18,6 +18,12 @@ The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatic To submit suggestions and feedback, enter an [Issue about the Add-ons API](https://github.com/MicrosoftDocs/edge-developer/issues/new?title=[Add-ons%20API]). +## Versions of the REST API +As of September 6, 2024, both v2 and v1 of this REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. + +## Important Notes +Secrets are now API keys in v2 +The new Publish API(v2) doesn't require sending an Access Token URL. ## Terminology @@ -31,7 +37,6 @@ To submit suggestions and feedback, enter an [Issue about the Add-ons API](https | _product ID_ | The product ID of the product whose draft needs to be published. The product ID is a 128-bit GUID that is associated with a product at Partner Center. For example: `d34f98f5-f9b7-42b1-bebb-98707202b21d`. | | _submission_ | An update that is being submitted to an existing product at Partner Center. Every update to a product is a submission, regardless of whether the status is `In Draft`, `In Review`, or `In the Store` (published). | - ## Before you begin @@ -43,17 +48,20 @@ To use the Microsoft Edge Add-ons API, you need to enable the API for your proje 1. On the **Publish API** page, click the **Create API credentials** button. This step may take a few minutes to finish. - The API credentials have now been created; you've enabled or renewed the API. The **Client ID**, **Client secret**, **Expiry date**, and **Access token URL** are now displayed on the Publish APIs page: + The API credentials have now been created; you've enabled or renewed the API. The **Client ID**, **Client secret(API key for v2)**, **Expiry date**, and **Access token URL(v1)** are now displayed on the Publish APIs page: ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) -1. Write down the **Client ID**, **Client secret** and the **Access token URL**. You'll use these values in the next step, to get an access token. +1. Write down the **Client ID**, **Client secret(API key for v2)** and the **Access token URL(v1)**. You'll use these values in the next step, to get an access token. > [!IMPORTANT] +> Publish API Version 1(v1) > Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. You can generate multiple client secrets for your client ID. For example, you can create multiple secrets for multiple projects. +>Publish API Version 2(v2) +>With the new Publish API, the API key is generated automatically by our backend services. This means that the ClientId and API Keys are regenerated for every developer. ## Retrieving the access token @@ -225,7 +233,13 @@ Header Parameters: Authorization: Bearer $TOKEN -v \ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} ``` +## Getting started with v2 + +> opt-in for the new API key management experience. + +> Next, regenerate your ClientId and secrets, which may require updates to your authentication workflows. +> Finally, reconfigure any existing CI/CD pipelines that may be impacted by the changes to access token URL and API key. See also: * [Using the Microsoft Edge Add-ons REST API: Check the publishing status](addons-api-reference.md#check-the-publishing-status) From 8f8baf8a5bb0a62cfb63618292b50e90e52eea26 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 09:14:19 -0700 Subject: [PATCH 02/53] Writer/Editor pass --- .../publish/api/using-addons-api.md | 56 ++++++++++++------- 1 file changed, 36 insertions(+), 20 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 24ddfff9fc..81bb4ebc44 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -6,7 +6,7 @@ ms.author: msedgedevrel ms.topic: conceptual ms.service: microsoft-edge ms.subservice: extensions -ms.date: 03/12/2024 +ms.date: 09/18/2024 --- # Using the Microsoft Edge Add-ons REST API @@ -18,12 +18,32 @@ The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatic To submit suggestions and feedback, enter an [Issue about the Add-ons API](https://github.com/MicrosoftDocs/edge-developer/issues/new?title=[Add-ons%20API]). -## Versions of the REST API -As of September 6, 2024, both v2 and v1 of this REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. -## Important Notes -Secrets are now API keys in v2 -The new Publish API(v2) doesn't require sending an Access Token URL. + +#### Versions of the REST API + +As of September 6, 2024, both v2 and v1 of this REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. + + + +###### Important changes in v2 + +* v2 of this REST API uses API keys, whereas v1 used Secrets instead. + +* v2 of this REST API doesn't require sending an Access Token URL. + + + +## Getting started with v2 of this REST API + +To use v2 of this REST API: + +1. At Partner Center, opt-in to the new API key management experience. + +1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. + +1. Re-configure any existing Continuous Integration (CI) or Continuous Development (CD) pipelines that might be impacted by the changes to the access token URL and API key. + ## Terminology @@ -37,6 +57,7 @@ The new Publish API(v2) doesn't require sending an Access Token URL. | _product ID_ | The product ID of the product whose draft needs to be published. The product ID is a 128-bit GUID that is associated with a product at Partner Center. For example: `d34f98f5-f9b7-42b1-bebb-98707202b21d`. | | _submission_ | An update that is being submitted to an existing product at Partner Center. Every update to a product is a submission, regardless of whether the status is `In Draft`, `In Review`, or `In the Store` (published). | + ## Before you begin @@ -48,20 +69,24 @@ To use the Microsoft Edge Add-ons API, you need to enable the API for your proje 1. On the **Publish API** page, click the **Create API credentials** button. This step may take a few minutes to finish. - The API credentials have now been created; you've enabled or renewed the API. The **Client ID**, **Client secret(API key for v2)**, **Expiry date**, and **Access token URL(v1)** are now displayed on the Publish APIs page: + The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: + * **Client ID** + * **Client secret** (for REST API v1) or **API key** (for REST API v2) + * **Expiry date** + * **Access token URL** (for REST API v1) ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the **Client ID**, **Client secret(API key for v2)** and the **Access token URL(v1)**. You'll use these values in the next step, to get an access token. > [!IMPORTANT] -> Publish API Version 1(v1) -> Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. +> This applies only to this REST Publish API v1, not v2: +> Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. You can generate multiple client secrets for your client ID. For example, you can create multiple secrets for multiple projects. ->Publish API Version 2(v2) ->With the new Publish API, the API key is generated automatically by our backend services. This means that the ClientId and API Keys are regenerated for every developer. +When using v2 of this REST Publish API, the ClientId and API Keys are automatically re-generated, by backend services. + ## Retrieving the access token @@ -245,15 +270,6 @@ Header Parameters: Authorization: Bearer $TOKEN https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} ``` - -## Getting started with v2 - -> opt-in for the new API key management experience. - -> Next, regenerate your ClientId and secrets, which may require updates to your authentication workflows. - -> Finally, reconfigure any existing CI/CD pipelines that may be impacted by the changes to access token URL and API key. - See also: * [Check the publishing status](./addons-api-reference.md#check-the-publishing-status) in _REST API Reference for Microsoft Edge Add-ons_. From 75b20b58424644b6022b71035185e10ed3faa7a1 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 09:32:42 -0700 Subject: [PATCH 03/53] full name of API each time --- .../publish/api/using-addons-api.md | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 81bb4ebc44..ecece57f17 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -20,27 +20,29 @@ To submit suggestions and feedback, enter an [Issue about the Add-ons API](https -#### Versions of the REST API +#### Versions of the REST Publish API -As of September 6, 2024, both v2 and v1 of this REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. +As of September 6, 2024, both v2 and v1 of the REST Publish API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. ###### Important changes in v2 -* v2 of this REST API uses API keys, whereas v1 used Secrets instead. +The REST Publish API v2 differs from v1 in the following main ways: -* v2 of this REST API doesn't require sending an Access Token URL. +* v2 uses API keys, whereas v1 used Secrets instead. + +* v2 doesn't require sending an Access Token URL. -## Getting started with v2 of this REST API +## Getting started with v2 of the REST Publish API -To use v2 of this REST API: +To use v2 of the REST Publish API: 1. At Partner Center, opt-in to the new API key management experience. -1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. +1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. 1. Re-configure any existing Continuous Integration (CI) or Continuous Development (CD) pipelines that might be impacted by the changes to the access token URL and API key. @@ -61,7 +63,7 @@ To use v2 of this REST API: ## Before you begin -To use the Microsoft Edge Add-ons API, you need to enable the API for your project in the Microsoft Partner Center, by creating API credentials. Use the following steps to create API credentials. +To use the Microsoft Edge Add-ons API, you need to enable the API for your project in the Microsoft Partner Center, by creating API credentials. Use the following steps to create API credentials. 1. Visit Microsoft Partner Center and sign in to the account that you used to publish an add-on. @@ -71,21 +73,26 @@ To use the Microsoft Edge Add-ons API, you need to enable the API for your proje The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: * **Client ID** - * **Client secret** (for REST API v1) or **API key** (for REST API v2) + * **Client secret** (for REST Publish API v1) or **API key** (for REST Publish API v2) * **Expiry date** - * **Access token URL** (for REST API v1) + * **Access token URL** (for REST Publish API v1) ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) -1. Write down the **Client ID**, **Client secret(API key for v2)** and the **Access token URL(v1)**. You'll use these values in the next step, to get an access token. +1. Write down the following: + * The **Client ID**. + * The **Client secret** (REST Publish API v1) or **API key** (REST Publish API v2). + * The **Access token URL** (REST Publish API v1). + + You'll use these values in the next step, to get an access token > [!IMPORTANT] -> This applies only to this REST Publish API v1, not v2: +> Applies to REST Publish API v1, not v2: > Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. You can generate multiple client secrets for your client ID. For example, you can create multiple secrets for multiple projects. -When using v2 of this REST Publish API, the ClientId and API Keys are automatically re-generated, by backend services. +When using REST Publish API v2, the ClientId and API Keys are automatically re-generated, by backend services. From 64ef6557ce0e07a235c0586e7ceaf2e315e0251d Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 09:48:25 -0700 Subject: [PATCH 04/53] improve v2 intro section --- .../publish/api/using-addons-api.md | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index ecece57f17..65b660ec0f 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -19,14 +19,8 @@ The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatic To submit suggestions and feedback, enter an [Issue about the Add-ons API](https://github.com/MicrosoftDocs/edge-developer/issues/new?title=[Add-ons%20API]). - -#### Versions of the REST Publish API - -As of September 6, 2024, both v2 and v1 of the REST Publish API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. - - - -###### Important changes in v2 + +## Version 2 of the REST Publish API The REST Publish API v2 differs from v1 in the following main ways: @@ -34,9 +28,17 @@ The REST Publish API v2 differs from v1 in the following main ways: * v2 doesn't require sending an Access Token URL. +The UI in Partner Center is slightly different (as described below), along with usage of the REST Publish API endpoints (as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md)). + + + +#### Dates + +As of September 6, 2024, both v2 and v1 of the REST Publish API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. - -## Getting started with v2 of the REST Publish API + + +#### Getting started with v2 of the REST Publish API To use v2 of the REST Publish API: @@ -46,6 +48,8 @@ To use v2 of the REST Publish API: 1. Re-configure any existing Continuous Integration (CI) or Continuous Development (CD) pipelines that might be impacted by the changes to the access token URL and API key. +Details are below. + ## Terminology From 09e1c96c86d3bffb6c66272646cf6766632f4cbd Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 10:21:32 -0700 Subject: [PATCH 05/53] add todo cmts re: v2 p.c. UI --- .../publish/api/using-addons-api.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 65b660ec0f..d58f8bd643 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -81,20 +81,27 @@ To use the Microsoft Edge Add-ons API, you need to enable the API for your proje * **Expiry date** * **Access token URL** (for REST Publish API v1) - ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the following: * The **Client ID**. * The **Client secret** (REST Publish API v1) or **API key** (REST Publish API v2). * The **Access token URL** (REST Publish API v1). - You'll use these values in the next step, to get an access token + You'll use these values in the next step, to get an access token. + + > [!IMPORTANT] > Applies to REST Publish API v1, not v2: > Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. -You can generate multiple client secrets for your client ID. For example, you can create multiple secrets for multiple projects. +You can generate multiple client secrets (if using v1) for your client ID. For example, you can create multiple secrets for multiple projects. When using REST Publish API v2, the ClientId and API Keys are automatically re-generated, by backend services. From 05166a6b020d6fedbd10e37b69419b5445469b84 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 10:26:36 -0700 Subject: [PATCH 06/53] rewrite h2 Before you begin --- .../extensions-chromium/publish/api/using-addons-api.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index d58f8bd643..13b0565c3d 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -65,9 +65,9 @@ Details are below. -## Before you begin +## Enabling the REST Publish API at Partner Center -To use the Microsoft Edge Add-ons API, you need to enable the API for your project in the Microsoft Partner Center, by creating API credentials. Use the following steps to create API credentials. +To use the Microsoft Edge Add-ons API, you first need to enable the API for your project in the Microsoft Partner Center by creating API credentials, as follows: 1. Visit Microsoft Partner Center and sign in to the account that you used to publish an add-on. @@ -109,7 +109,7 @@ When using REST Publish API v2, the ClientId and API Keys are automatically re-g ## Retrieving the access token -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the **Before you begin** steps above. +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the REST Publish API at Partner Center](#enabling-the-rest-publish-api-at-partner-center). ```REST Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v2.0/token From 10c49ea03f890d6df38cbf585264d2cb3f548892 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 11:16:04 -0700 Subject: [PATCH 07/53] clarify "auto update n/a for P.C. extensions" --- microsoft-edge/extensions-chromium/publish/auto-update.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/auto-update.md b/microsoft-edge/extensions-chromium/publish/auto-update.md index 1965579775..980ad72ad7 100644 --- a/microsoft-edge/extensions-chromium/publish/auto-update.md +++ b/microsoft-edge/extensions-chromium/publish/auto-update.md @@ -42,7 +42,7 @@ The Microsoft Edge Add-ons website hosts your extensions, and you can update you > [!IMPORTANT] > Be careful when you update extensions that have a dependency on native binaries. -This article doesn't apply to extensions that you publish using the [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) dashboard. You can use the dashboard to release updated versions to your users and to the Microsoft Edge Add-ons website. For more information, see [Update a Microsoft Edge extension](../publish/update-extension.md). +This article doesn't apply to extensions that you publish using the [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) dashboard. You can use the dashboard to release updated versions to your users and to the Microsoft Edge Add-ons website. For more information, see [Update a Microsoft Edge extension](../publish/update-extension.md). From 26a2c2aeeea93d25329eaaa1546991095577390b Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 11:54:39 -0700 Subject: [PATCH 08/53] state scenario of applicability --- .../extensions-chromium/publish/auto-update.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/auto-update.md b/microsoft-edge/extensions-chromium/publish/auto-update.md index 980ad72ad7..6e0d95e6f8 100644 --- a/microsoft-edge/extensions-chromium/publish/auto-update.md +++ b/microsoft-edge/extensions-chromium/publish/auto-update.md @@ -23,7 +23,13 @@ ms.date: 11/04/2022 limitations under the License. --> # Set an extension to automatically update - + + +This article applies to externally installed extensions; that is, extensions that are distributed via an approach other than Partner Center; see [Alternative ways to distribute an extension](..\developer-guide\alternate-distribution-options.md). This article doesn't apply to extensions that you publish using the [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) dashboard; for that distribution approach, see [Update a Microsoft Edge extension](../publish/update-extension.md). Every few hours, Microsoft Edge checks whether each installed extension or app has an update URL. To specify an update URL for your extension, use the `update_url` field in the manifest. The `update_url` field in the manifest points to a location that can complete an update check. For each `update_url`, this URL sends requests for updated manifest XML files. If the update manifest XML file lists a newer extension or app version, Microsoft Edge downloads and installs the newer version. The same process works for manual updates, where the new `.crx` file must be signed with the same private key as the currently installed version. @@ -42,8 +48,6 @@ The Microsoft Edge Add-ons website hosts your extensions, and you can update you > [!IMPORTANT] > Be careful when you update extensions that have a dependency on native binaries. -This article doesn't apply to extensions that you publish using the [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) dashboard. You can use the dashboard to release updated versions to your users and to the Microsoft Edge Add-ons website. For more information, see [Update a Microsoft Edge extension](../publish/update-extension.md). - ## Update URL From fb86547c9c8f95803f6fc333f87c5644f777d5dd Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 12:09:28 -0700 Subject: [PATCH 09/53] externally installed extension --- .../alternate-distribution-options.md | 29 +++++++++++++++++-- .../extensions-chromium/landing/index.yml | 2 +- .../publish/auto-update.md | 4 +-- microsoft-edge/toc.yml | 2 +- 4 files changed, 31 insertions(+), 6 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index e175c71a7b..9baec89c71 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -9,6 +9,10 @@ ms.subservice: extensions ms.date: 05/05/2023 --- # Alternative ways to distribute an extension + Generally, extensions are distributed through the Microsoft Edge Add-ons website. There are some scenarios where developers may need to distribute extensions using alternate methods. For example: @@ -16,13 +20,16 @@ Generally, extensions are distributed through the Microsoft Edge Add-ons website 1. Network administrators want to distribute an extension throughout their organization. -Extensions that aren't loaded from the Edge Add-ons store are referred to as externally installed extensions. The following are alternate methods of distributing externally installed extensions: +Extensions that aren't loaded from the Edge Add-ons store are referred to as _externally installed extensions_. The following are alternate methods of distributing externally installed extensions: * Use the Windows registry (Windows only). * Use a preferences JSON file (macOS and Linux). These approaches are described below. +See also: +* [Set an externally installed extension to automatically update](../publish/auto-update.md) + ## Before you begin @@ -147,8 +154,8 @@ To update your extension to a new version, update the `version` string in the ex You may need to uninstall externally installed extensions, which were installed as part of a bundle of software that was previously installed on the machine. To uninstall your extension, remove your preferences JSON file or remove the key from the registry. - See also: +* [Set an externally installed extension to automatically update](../publish/auto-update.md) * [Manifest file format for extensions](../getting-started/manifest-format.md) @@ -160,6 +167,24 @@ The policies for `ExtensionInstallForcelist`, block list, and `ExtensionSettings If the `BlockExternalExtensions` policy is set to `Not Configured` or `Disabled`, that doesn't have any effect. If the `BlockExternalExtensions` policy is set to `Enabled`, external extension installation (by third party software) is prevented. + +## See also + + +* [Set an externally installed extension to automatically update](../publish/auto-update.md) +* [Manifest file format for extensions](../getting-started/manifest-format.md) + +Microsoft Edge Enterprise docs: +* [Microsoft Edge - Policies](https://learn.microsoft.com/en-us/deployedge/microsoft-edge-policies) + * [ExtensionInstallForcelist](/deployedge/microsoft-edge-policies#extensioninstallforcelist) + * [ExtensionInstallSources](/deployedge/microsoft-edge-policies#extensioninstallsources) + * [ExtensionSettings](/deployedge/microsoft-edge-policies#extensionsettings) + * [BlockExternalExtensions](/deployedge/microsoft-edge-policies#blockexternalextensions) + +Chrome Extensions docs: +* [Use alternative installation methods](https://developer.chrome.com/docs/extensions/how-to/distribute/install-extensions) + + > [!NOTE] > Portions of this page are modifications based on work created and [shared by Google](https://developers.google.com/terms/site-policies) and used according to terms described in the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0). The original page is found [here](https://developer.chrome.com/docs/extensions/how-to/distribute/install-extensions). diff --git a/microsoft-edge/extensions-chromium/landing/index.yml b/microsoft-edge/extensions-chromium/landing/index.yml index 951f11e003..b96eeb6e0c 100644 --- a/microsoft-edge/extensions-chromium/landing/index.yml +++ b/microsoft-edge/extensions-chromium/landing/index.yml @@ -177,7 +177,7 @@ landingContent: - text: Update a Microsoft Edge extension url: ../publish/update-extension.md - - text: Set an extension to automatically update + - text: Set an externally installed extension to automatically update url: ../publish/auto-update.md - text: Using the Microsoft Edge Add-ons REST API diff --git a/microsoft-edge/extensions-chromium/publish/auto-update.md b/microsoft-edge/extensions-chromium/publish/auto-update.md index 6e0d95e6f8..f1a30110f2 100644 --- a/microsoft-edge/extensions-chromium/publish/auto-update.md +++ b/microsoft-edge/extensions-chromium/publish/auto-update.md @@ -1,5 +1,5 @@ --- -title: Set an extension to automatically update +title: Set an externally installed extension to automatically update description: Set up a Microsoft Edge extension (add-on) to automatically update in users' instances of Microsoft Edge. author: MSEdgeTeam ms.author: msedgedevrel @@ -21,7 +21,7 @@ ms.date: 11/04/2022 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> -# Set an extension to automatically update +# Set an externally installed extension to automatically update ## Update an existing extension in the Microsoft Edge Add-ons website -To update your extension on the store, follow these steps: +To update your extension that's at the store (the Microsoft Edge Add-ons website): -1. Go to your [developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that you want to update. +1. Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that you want to update. 1. Update either the extension package or the metadata of the extension. If you update the extension package, make sure that you increase the version number in the manifest file. @@ -34,11 +37,11 @@ After your extension has been created initially, you can update your extension b While your extension is in the certification stage, and before it gets published to the Microsoft Edge Add-ons website, you can update it. If your extension fails the certification process, you might also need to update your extension. -To check the status of your extension, go to the dashboard associated with your listing on [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). +To check the status of your extension, go to the dashboard associated with your listing at your Partner Center developer dashboard. -To edit your submission, follow these steps: +To edit your submission: -1. Go to your [developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that you want to update. The information you filled out during the previous submission is displayed. +1. Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that you want to update. The information you filled out during the previous submission is displayed. 1. To open the **Extension overview** section, use the left navigation bar. To cancel the current submission, select **Cancel submission**. @@ -54,9 +57,9 @@ To edit your submission, follow these steps: After your extension failed the certification process, you need to update your extension and resubmit your extension, incorporating the feedback you got. -To edit your extension, follow these steps: +To edit your extension: -1. Navigate to your [developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that failed the certification process. +1. Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that failed the certification process. 1. Update either the extension package or the metadata, incorporating the feedback received from the certification process. If you update the extension package, make sure that you increase the version in the manifest file. @@ -66,12 +69,21 @@ To edit your extension, follow these steps: ## Remove an extension from the Microsoft Edge Add-ons website -To remove an extension, follow these steps: +To remove an extension: -1. Go to your [developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). From the Dashboard page, select the listing to remove. +1. Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). From the Dashboard page, select the listing to remove. 1. Select **Extension Overview** on your listing. 1. Select **Unpublish** to remove the listing from the Microsoft Edge Add-ons website. The extension is now removed from the Microsoft Edge Add-ons website. Users who already installed your extension can continue to use it, but the extension isn't available to new users. + + + +## See also + + +* [Set an externally installed extension to automatically update](https://review.learn.microsoft.com/en-us/microsoft-edge/extensions-chromium/publish/auto-update?branch=pr-en-us-3269) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. +* [Using the Microsoft Edge Add-ons REST API](./api/using-addons-api.md) +* [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) From edc24c45353e58cab9d49909a78daf9a06449252 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 12:23:51 -0700 Subject: [PATCH 11/53] normalize leading spaces --- .../alternate-distribution-options.md | 89 +++++++++---------- 1 file changed, 44 insertions(+), 45 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index 9baec89c71..2e97318541 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -22,8 +22,8 @@ Generally, extensions are distributed through the Microsoft Edge Add-ons website Extensions that aren't loaded from the Edge Add-ons store are referred to as _externally installed extensions_. The following are alternate methods of distributing externally installed extensions: -* Use the Windows registry (Windows only). -* Use a preferences JSON file (macOS and Linux). +* Use the Windows registry (Windows only). +* Use a preferences JSON file (macOS and Linux). These approaches are described below. @@ -38,11 +38,11 @@ Make sure that you publish your extension in the Microsoft Edge Add-ons website, Also, make sure that you have the following information: -* The file path of the `.crx` file, or the `update_url` of your extension. +* The file path of the `.crx` file, or the `update_url` of your extension. -* The version of your extension. The version information is available in your manifest file, or in Microsoft Edge at `edge://extensions` after you load the packed extension. +* The version of your extension. The version information is available in your manifest file, or in Microsoft Edge at `edge://extensions` after you load the packed extension. -* The ID of your extension. The ID information is available in Microsoft Edge at `edge://extensions` after you load the packed extension. +* The ID of your extension. The ID information is available in Microsoft Edge at `edge://extensions` after you load the packed extension. The following examples use `1.0` as the version, and `aaaaaaaabbbbbbbbccccccccdddddddd` for the ID. @@ -53,8 +53,8 @@ The following examples use `1.0` as the version, and `aaaaaaaabbbbbbbbccccccccdd To distribute your extension using the Windows registry: 1. Find or create the following key in the registry: - * 32-bit Windows: `HKEY_LOCAL_MACHINE\Software\Microsoft\Edge\Extensions` - * 64-bit Windows: `HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Edge\Extensions` + * 32-bit Windows: `HKEY_LOCAL_MACHINE\Software\Microsoft\Edge\Extensions` + * 64-bit Windows: `HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Edge\Extensions` 1. Create a new key, or folder, under **Extensions** with the same name as the ID of your extension. For example, create the key with the name `aaaaaaaabbbbbbbbccccccccdddddddd`. @@ -62,12 +62,11 @@ To distribute your extension using the Windows registry: ```json { - "update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" + "update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" } ``` - > [!NOTE] - > If you want to install an extension from the Chrome Web Store, set the value of `update_url` to `https://clients2.google.com/service/update2/crx`. + If you want to install an extension from the Chrome Web Store, set the value of `update_url` to `https://clients2.google.com/service/update2/crx`. 1. In Microsoft Edge, go to `edge://extensions`, and then verify that your extension is listed. @@ -85,62 +84,62 @@ To distribute your extension by using a preferences JSON file: 1. Depending on your operating system, save the JSON file to one of the following folders: - * **macOS** - * User-specific: `~USERNAME/Library/Application Support/Microsoft Edge/External Extensions/` - * For all users: `/Library/Application Support/Microsoft/Edge/External Extensions/` + * **macOS** + * User-specific: `~USERNAME/Library/Application Support/Microsoft Edge/External Extensions/` + * For all users: `/Library/Application Support/Microsoft/Edge/External Extensions/` To prevent unauthorized users from installing extensions for all users, make sure your extension preferences file is read-only. Also make sure that the following conditions are met: - * Every directory in the path is owned by the user root. - * Every directory in the path is assigned to the `admin` or `wheel` group. - * Every directory in the path isn't `world` writable. - * The path must be free of symbolic links. + * Every directory in the path is owned by the user root. + * Every directory in the path is assigned to the `admin` or `wheel` group. + * Every directory in the path isn't `world` writable. + * The path must be free of symbolic links. * **Linux** - * User-specific: `~/.config/microsoft-edge/External Extensions/` - * For all users: `/usr/share/microsoft-edge/extensions/` + * User-specific: `~/.config/microsoft-edge/External Extensions/` + * For all users: `/usr/share/microsoft-edge/extensions/` 1. Depending on your scenario, copy the appropriate code that follows, into your preferences JSON file. - * Applies to Linux only. If you install from a file, specify the location and version in `external_crx` and `external_version`: + * Applies to Linux only. If you install from a file, specify the location and version in `external_crx` and `external_version`: - ```json - { - "external_crx": "/home/share/extension.crx", - "external_version": "1.0" - } - ``` + ```json + { + "external_crx": "/home/share/extension.crx", + "external_version": "1.0" + } + ``` - * Applies to macOS and Linux. If you install from an `update_url`, specify the update URL in `external_update_url`. + * Applies to macOS and Linux. If you install from an `update_url`, specify the update URL in `external_update_url`. - Copy the following code into your preferences JSON file when installing from local `.crx` files on Linux only: + Copy the following code into your preferences JSON file when installing from local `.crx` files on Linux only: - ```json - { - "external_update_url": "http://myhost.com/mytestextension/updates.xml" - } - ``` + ```json + { + "external_update_url": "http://myhost.com/mytestextension/updates.xml" + } + ``` - * Copy the following code to your preferences JSON file when installing from the Microsoft Edge Add-ons website on macOS and Linux: + * Copy the following code to your preferences JSON file when installing from the Microsoft Edge Add-ons website on macOS and Linux: - ```json - { - "external_update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" - } - ``` + ```json + { + "external_update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" + } + ``` 1. To install extensions for specific locales, list the supported locales, in `supported_locales`. You can specify parent locales, to install your extension for all language locales that use that parent. For example, when using the parent locale `en`, your extension installs for all English locales, such as `en-US`, `en-GB`, and so on. When users change their locale in their browser, externally installed extensions are uninstalled. To install your extension for _any_ locale, don't use `supported_locales`. - ```json - { - "external_update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx", - "supported_locales": [ "en", "fr", "de" ] - } - ``` + ```json + { + "external_update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx", + "supported_locales": [ "en", "fr", "de" ] + } + ``` 1. Verify that your extension is installed in Microsoft Edge, by going to `edge://extensions`. From b56265ee5de4a331d4020e4f46c467569779b018 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 12:27:00 -0700 Subject: [PATCH 12/53] norm indents more --- .../alternate-distribution-options.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index 2e97318541..168b845da5 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -84,26 +84,26 @@ To distribute your extension by using a preferences JSON file: 1. Depending on your operating system, save the JSON file to one of the following folders: - * **macOS** - * User-specific: `~USERNAME/Library/Application Support/Microsoft Edge/External Extensions/` - * For all users: `/Library/Application Support/Microsoft/Edge/External Extensions/` + * **macOS** + * User-specific: `~USERNAME/Library/Application Support/Microsoft Edge/External Extensions/` + * For all users: `/Library/Application Support/Microsoft/Edge/External Extensions/` - To prevent unauthorized users from installing extensions for all users, make sure your extension preferences file is read-only. + To prevent unauthorized users from installing extensions for all users, make sure your extension preferences file is read-only. - Also make sure that the following conditions are met: + Also make sure that the following conditions are met: - * Every directory in the path is owned by the user root. - * Every directory in the path is assigned to the `admin` or `wheel` group. - * Every directory in the path isn't `world` writable. - * The path must be free of symbolic links. + * Every directory in the path is owned by the user root. + * Every directory in the path is assigned to the `admin` or `wheel` group. + * Every directory in the path isn't `world` writable. + * The path must be free of symbolic links. - * **Linux** - * User-specific: `~/.config/microsoft-edge/External Extensions/` - * For all users: `/usr/share/microsoft-edge/extensions/` + * **Linux** + * User-specific: `~/.config/microsoft-edge/External Extensions/` + * For all users: `/usr/share/microsoft-edge/extensions/` 1. Depending on your scenario, copy the appropriate code that follows, into your preferences JSON file. - * Applies to Linux only. If you install from a file, specify the location and version in `external_crx` and `external_version`: + * Applies to Linux only. If you install from a file, specify the location and version in `external_crx` and `external_version`: ```json { From 1643cfa79a7de90c1e1ff6508ae6bd30a1dc671c Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 12:38:19 -0700 Subject: [PATCH 13/53] try 4 lead spaces in 1st section 55-71 --- .../alternate-distribution-options.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index 168b845da5..f89288fabc 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -52,23 +52,23 @@ The following examples use `1.0` as the version, and `aaaaaaaabbbbbbbbccccccccdd To distribute your extension using the Windows registry: -1. Find or create the following key in the registry: - * 32-bit Windows: `HKEY_LOCAL_MACHINE\Software\Microsoft\Edge\Extensions` - * 64-bit Windows: `HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Edge\Extensions` +1. Find or create the following key in the registry: + * 32-bit Windows: `HKEY_LOCAL_MACHINE\Software\Microsoft\Edge\Extensions` + * 64-bit Windows: `HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Edge\Extensions` -1. Create a new key, or folder, under **Extensions** with the same name as the ID of your extension. For example, create the key with the name `aaaaaaaabbbbbbbbccccccccdddddddd`. +1. Create a new key, or folder, under **Extensions** with the same name as the ID of your extension. For example, create the key with the name `aaaaaaaabbbbbbbbccccccccdddddddd`. -1. In the **Extensions** key, create the `update_url` property, and set the value to `https://edge.microsoft.com/extensionwebstorebase/v1/crx`. The `update_url` property points to the `.crx` file of your extension in the Microsoft Edge Add-ons website. +1. In the **Extensions** key, create the `update_url` property, and set the value to `https://edge.microsoft.com/extensionwebstorebase/v1/crx`. The `update_url` property points to the `.crx` file of your extension in the Microsoft Edge Add-ons website. - ```json - { - "update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" - } - ``` + ```json + { + "update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" + } + ``` - If you want to install an extension from the Chrome Web Store, set the value of `update_url` to `https://clients2.google.com/service/update2/crx`. + If you want to install an extension from the Chrome Web Store, set the value of `update_url` to `https://clients2.google.com/service/update2/crx`. -1. In Microsoft Edge, go to `edge://extensions`, and then verify that your extension is listed. +1. In Microsoft Edge, go to `edge://extensions`, and then verify that your extension is listed. From a1c952636c16e415ade80785f918da9d7d87086e Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 13:15:58 -0700 Subject: [PATCH 14/53] desc: & See also h2 --- .../publish/auto-update.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/auto-update.md b/microsoft-edge/extensions-chromium/publish/auto-update.md index f1a30110f2..4f7552601b 100644 --- a/microsoft-edge/extensions-chromium/publish/auto-update.md +++ b/microsoft-edge/extensions-chromium/publish/auto-update.md @@ -1,6 +1,6 @@ --- title: Set an externally installed extension to automatically update -description: Set up a Microsoft Edge extension (add-on) to automatically update in users' instances of Microsoft Edge. +description: Set up an externally installed extension (an extension that doesn't use Partner Center or Microsoft Edge Add-ons website) to automatically update in users' instances of Microsoft Edge. author: MSEdgeTeam ms.author: msedgedevrel ms.topic: conceptual @@ -25,11 +25,10 @@ ms.date: 11/04/2022 -This article applies to externally installed extensions; that is, extensions that are distributed via an approach other than Partner Center; see [Alternative ways to distribute an extension](..\developer-guide\alternate-distribution-options.md). This article doesn't apply to extensions that you publish using the [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) dashboard; for that distribution approach, see [Update a Microsoft Edge extension](../publish/update-extension.md). +This article applies to externally installed extensions; that is, extensions that are distributed via an approach other than Partner Center; see [Alternative ways to distribute an extension](..\developer-guide\alternate-distribution-options.md). This article doesn't apply to extensions that you publish using the [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd); for that distribution approach, see [Update a Microsoft Edge extension](../publish/update-extension.md). Every few hours, Microsoft Edge checks whether each installed extension or app has an update URL. To specify an update URL for your extension, use the `update_url` field in the manifest. The `update_url` field in the manifest points to a location that can complete an update check. For each `update_url`, this URL sends requests for updated manifest XML files. If the update manifest XML file lists a newer extension or app version, Microsoft Edge downloads and installs the newer version. The same process works for manual updates, where the new `.crx` file must be signed with the same private key as the currently installed version. @@ -169,6 +168,18 @@ For example, in the following code, the `prodversionmin` attribute value of `3.0 ``` + +## See also + + +* [Alternative ways to distribute an extension](..\developer-guide\alternate-distribution-options.md) +* [Update a Microsoft Edge extension](../publish/update-extension.md) +* [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) + +Chrome Dev docs: +* [Autoupdating](https://developer.chrome.com/docs/apps/autoupdate) + + > [!NOTE] > Portions of this page are modifications based on work created and [shared by Google](https://developers.google.com/terms/site-policies) and used according to terms described in the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0). From 721162f40422072fe6f5cbf46b59dcf7a6a486fd Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 13:27:31 -0700 Subject: [PATCH 15/53] link to Partner Center. add See also h2 section --- .../publish/api/using-addons-api.md | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 13b0565c3d..b11ee2c6c3 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -42,7 +42,7 @@ As of September 6, 2024, both v2 and v1 of the REST Publish API are supported. To use v2 of the REST Publish API: -1. At Partner Center, opt-in to the new API key management experience. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the new API key management experience. 1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. @@ -69,7 +69,7 @@ Details are below. To use the Microsoft Edge Add-ons API, you first need to enable the API for your project in the Microsoft Partner Center by creating API credentials, as follows: -1. Visit Microsoft Partner Center and sign in to the account that you used to publish an add-on. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), sign in to the account that you used to publish an add-on. 1. Under the **Microsoft Edge** program, select **Publish API**. @@ -153,10 +153,9 @@ For more information, see [Get a token](/azure/active-directory/develop/v2-oauth After you have an access token, you can use the Microsoft Edge Add-ons API. This API exposes endpoints for getting a list of products, updating products, and publishing products. -> [!NOTE] -> There's no API for creating a new product or updating a product's metadata. For example, the description. You must complete these tasks manually in Microsoft Partner Center. +There's no API for creating a new product or updating a product's metadata, such as the description. You must complete these tasks manually in Microsoft Partner Center. -The API is available at the endpoint `https://api.addons.microsoftedge.microsoft.com` +The API is available at the endpoint `https://api.addons.microsoftedge.microsoft.com`. @@ -173,9 +172,9 @@ Body content: the package file to upload `$productID` is the product ID of the Microsoft Edge Add-on that you want to update. -Follow these steps to get the product ID: +To get the product ID: -1. Sign in to Microsoft Partner Center. +1. Sign in to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). 1. Go to **Microsoft Edge** > **Overview**. @@ -294,9 +293,13 @@ See also: ## See also + - -* [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md) -* [Issues](https://github.com/MicrosoftDocs/edge-developer/issues/) in `edge-developer` Docs repo. -* [Microsoft identity platform and the OAuth 2.0 client credentials flow](/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow) +* [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md) - REST API for updating an extension. * [Supported APIs for Microsoft Edge extensions](../../developer-guide/api-support.md) - JavaScript APIs for developing an extension. + +GitHub: +* [Issues](https://github.com/MicrosoftDocs/edge-developer/issues/) in `edge-developer` repo for Microsoft Edge Developer docs. + +Microsoft identity platform: +* [Microsoft identity platform and the OAuth 2.0 client credentials flow](/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow) From c924fb86fff216f205b3a53d1160b4659dcc10f3 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Wed, 18 Sep 2024 13:38:19 -0700 Subject: [PATCH 16/53] norm'ize Check Status step list --- .../extensions-chromium/publish/update-extension.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/update-extension.md b/microsoft-edge/extensions-chromium/publish/update-extension.md index 7705327b77..542ba2489a 100644 --- a/microsoft-edge/extensions-chromium/publish/update-extension.md +++ b/microsoft-edge/extensions-chromium/publish/update-extension.md @@ -35,13 +35,17 @@ After your extension has been created initially, you can update your extension b ## Update your extension during the certification step -While your extension is in the certification stage, and before it gets published to the Microsoft Edge Add-ons website, you can update it. If your extension fails the certification process, you might also need to update your extension. +While your extension is in the certification stage, and before it gets published to the Microsoft Edge Add-ons website, you can update your submitted extension. You might also need to update your extension if your extension fails the certification process. -To check the status of your extension, go to the dashboard associated with your listing at your Partner Center developer dashboard. -To edit your submission: +To check the status of your extension: -1. Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select the extension that you want to update. The information you filled out during the previous submission is displayed. +* Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select an extension. + + +To edit (update) your submitted extension: + +1. Go to your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) and select an extension. The information that you filled out during the previous submission is displayed. 1. To open the **Extension overview** section, use the left navigation bar. To cancel the current submission, select **Cancel submission**. From b8948a8a50b3276320db28a95c2d5b74c1bea1d5 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 00:34:48 -0700 Subject: [PATCH 17/53] (CD) --- .../extensions-chromium/publish/api/using-addons-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index b11ee2c6c3..4b51ac340b 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -46,7 +46,7 @@ To use v2 of the REST Publish API: 1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. -1. Re-configure any existing Continuous Integration (CI) or Continuous Development (CD) pipelines that might be impacted by the changes to the access token URL and API key. +1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL and API key. Details are below. From ec35d2ca40a87e7428ea0455f8f3a767dd4ec473 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 00:39:51 -0700 Subject: [PATCH 18/53] link trim --- .../developer-guide/alternate-distribution-options.md | 2 +- microsoft-edge/extensions-chromium/publish/update-extension.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index f89288fabc..c515159fde 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -174,7 +174,7 @@ If the `BlockExternalExtensions` policy is set to `Not Configured` or `Disabled` * [Manifest file format for extensions](../getting-started/manifest-format.md) Microsoft Edge Enterprise docs: -* [Microsoft Edge - Policies](https://learn.microsoft.com/en-us/deployedge/microsoft-edge-policies) +* [Microsoft Edge - Policies](/deployedge/microsoft-edge-policies) * [ExtensionInstallForcelist](/deployedge/microsoft-edge-policies#extensioninstallforcelist) * [ExtensionInstallSources](/deployedge/microsoft-edge-policies#extensioninstallsources) * [ExtensionSettings](/deployedge/microsoft-edge-policies#extensionsettings) diff --git a/microsoft-edge/extensions-chromium/publish/update-extension.md b/microsoft-edge/extensions-chromium/publish/update-extension.md index 542ba2489a..f9f093f370 100644 --- a/microsoft-edge/extensions-chromium/publish/update-extension.md +++ b/microsoft-edge/extensions-chromium/publish/update-extension.md @@ -88,6 +88,6 @@ The extension is now removed from the Microsoft Edge Add-ons website. Users who ## See also -* [Set an externally installed extension to automatically update](https://review.learn.microsoft.com/en-us/microsoft-edge/extensions-chromium/publish/auto-update?branch=pr-en-us-3269) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. +* [Set an externally installed extension to automatically update](./auto-update.md) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. * [Using the Microsoft Edge Add-ons REST API](./api/using-addons-api.md) * [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) From d24902d8490176a24ab1616391b70394a91fd23c Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 00:42:29 -0700 Subject: [PATCH 19/53] link trim 2 --- microsoft-edge/extensions-chromium/publish/update-extension.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/update-extension.md b/microsoft-edge/extensions-chromium/publish/update-extension.md index f9f093f370..70b5e9a399 100644 --- a/microsoft-edge/extensions-chromium/publish/update-extension.md +++ b/microsoft-edge/extensions-chromium/publish/update-extension.md @@ -13,7 +13,7 @@ ms.date: 11/04/2022 You can update a submitted extension or remove a published extension listing from the Microsoft Edge Add-ons website at any time. See also: -* [Set an externally installed extension to automatically update](https://review.learn.microsoft.com/en-us/microsoft-edge/extensions-chromium/publish/auto-update?branch=pr-en-us-3269) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. +* [Set an externally installed extension to automatically update](./auto-update.md) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. From e1c51d4ed4981501bee20764f50faf74f4ec00ad Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 01:24:39 -0700 Subject: [PATCH 20/53] Rewrite "Before you begin" headings --- .../alternate-distribution-options.md | 4 +-- .../getting-started/part1-simple-extension.md | 6 +--- .../publish/create-dev-account.md | 5 ++- .../publish/publish-extension.md | 35 ++++++++++++++----- 4 files changed, 31 insertions(+), 19 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index c515159fde..96b14ef029 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -32,9 +32,9 @@ See also: -## Before you begin +## Gather initial information -Make sure that you publish your extension in the Microsoft Edge Add-ons website, or package a `.crx` file and ensure that it installs successfully on your computer. If you install the `.crx` file using the `update_url`, make sure you can go to your extension at that URL. +Make sure that you publish your extension in the Microsoft Edge Add-ons website, or package a `.crx` file and ensure that it installs successfully on your computer. If you install the `.crx` file using the `update_url`, make sure you can go to your extension at that URL. Also, make sure that you have the following information: diff --git a/microsoft-edge/extensions-chromium/getting-started/part1-simple-extension.md b/microsoft-edge/extensions-chromium/getting-started/part1-simple-extension.md index d312772e86..1ab52068a5 100644 --- a/microsoft-edge/extensions-chromium/getting-started/part1-simple-extension.md +++ b/microsoft-edge/extensions-chromium/getting-started/part1-simple-extension.md @@ -16,11 +16,7 @@ The goal for this tutorial is to build a Microsoft Edge extension, starting with * Adding icons. * Opening a default pop-up dialog. - - -## Before you begin - -To test out the completed extension that you are building in this tutorial, download the source code from [MicrosoftEdge-Extensions repo > extension-getting-started-part1](https://github.com/microsoft/MicrosoftEdge-Extensions/tree/main/Extension%20samples/extension-getting-started-part1/part1). The source code has been updated from Manifest V2 to Manifest V3. +If you want to test out the completed extension that you are building in this tutorial, download the source code from [MicrosoftEdge-Extensions repo > extension-getting-started-part1](https://github.com/microsoft/MicrosoftEdge-Extensions/tree/main/Extension%20samples/extension-getting-started-part1/part1). The source code has been updated from Manifest V2 to Manifest V3. diff --git a/microsoft-edge/extensions-chromium/publish/create-dev-account.md b/microsoft-edge/extensions-chromium/publish/create-dev-account.md index 17fbf483e6..77dde777fe 100644 --- a/microsoft-edge/extensions-chromium/publish/create-dev-account.md +++ b/microsoft-edge/extensions-chromium/publish/create-dev-account.md @@ -31,12 +31,11 @@ To add and manage users in the Microsoft Edge program to manage extensions, you -## Before you begin +## Create an Microsoft account To submit an extension to the Microsoft Edge Add-ons website, you must be registered as a developer with the Microsoft Edge program. You register for the Microsoft Edge program at [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). To register for the Microsoft Edge program, you need a Microsoft account (MSA). If you don't have a Microsoft account (MSA), create one. One way to create a Microsoft account (MSA) is to use your existing GitHub account to sign in to Partner Center. Follow the prompts displayed in the dialogs to automatically create a Microsoft account (MSA). -> [!NOTE] -> There is no registration fee for submitting extensions to the Microsoft Edge program. +There is no registration fee for submitting extensions to the Microsoft Edge program. If you don't have a Partner Center account, or you have a Partner Center account but its Primary Owner isn't a Microsoft account (MSA), you must either: * Use an existing Microsoft account (MSA) to register with the Microsoft Edge program. diff --git a/microsoft-edge/extensions-chromium/publish/publish-extension.md b/microsoft-edge/extensions-chromium/publish/publish-extension.md index 661f606158..5e18159d64 100644 --- a/microsoft-edge/extensions-chromium/publish/publish-extension.md +++ b/microsoft-edge/extensions-chromium/publish/publish-extension.md @@ -16,19 +16,39 @@ Publish your extension to the [Microsoft Edge Add-ons website](https://microsoft -## Before you begin +## Prepare an extension to be submitted via Partner Center -You should have a working prototype of your extension ready. For information on how to create an extension, see [Extension concepts and architecture](../getting-started/index.md). +To prepare an extension to be submitted via Partner Center, to be published at the Microsoft Edge Add-ons site, do the following steps. + + + +#### Have a working prototype of your extension + +Before publishing your extension, you should have a working prototype of your extension ready. For information on how to create an extension, see [Extension concepts and architecture](../getting-started/index.md). + + + +#### Create a developer account To publish your extension to the Microsoft Edge Add-ons website, use your active developer account on [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). If you don't have a developer account, create a new developer account. To open a new developer account and register to the Microsoft Edge Add-ons program, see [Developer registration](create-dev-account.md). + + +#### Create a zip file for your extension package + Create a zip file for your extension package. Your extension package must include the following files: * The extension manifest that specifies details such as the name of the extension, short description, permissions, and default language. * Images and other files required by your extension. -The following fields in the manifest are automatically included in your store listing details. The fields are read-only on the **Store listings** webpage. The store listings webpage is described later in this article. Before uploading your package to Partner Center, make sure that the field values match your preferred display on the store details webpage, as follows. + + +#### Review manifest field values + +The following fields in the manifest are automatically included in your store listing details. The fields are read-only on the **Store listings** webpage. The store listings webpage is described later in this article. + +Before uploading your package to Partner Center, make sure that the field values match your preferred display on the store details webpage, as follows. In the manifest file, review these fields: @@ -46,21 +66,18 @@ In the manifest file, review these fields: ## Submit your extension to the Microsoft Edge Add-ons website +After doing the above steps, the extension is ready to be submitted via Partner Center, to be published at the Microsoft Edge Add-ons site. + To submit your extension to Partner Center: 1. Start a new submission. - 1. Upload the extension package. - 1. Provide Availability details. - 1. Select Properties for your extension. - 1. Add Store listing details for your extension. - 1. Complete your submission. -The rest of the article provides details about these steps. +Details are below. From ac5972780b4860e07ab1c15511066aa61630a010 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 01:31:25 -0700 Subject: [PATCH 21/53] typo an Microsoft account --- .../extensions-chromium/publish/create-dev-account.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/create-dev-account.md b/microsoft-edge/extensions-chromium/publish/create-dev-account.md index 77dde777fe..2e18e5d3cd 100644 --- a/microsoft-edge/extensions-chromium/publish/create-dev-account.md +++ b/microsoft-edge/extensions-chromium/publish/create-dev-account.md @@ -31,7 +31,7 @@ To add and manage users in the Microsoft Edge program to manage extensions, you -## Create an Microsoft account +## Create a Microsoft account To submit an extension to the Microsoft Edge Add-ons website, you must be registered as a developer with the Microsoft Edge program. You register for the Microsoft Edge program at [Partner Center](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd). To register for the Microsoft Edge program, you need a Microsoft account (MSA). If you don't have a Microsoft account (MSA), create one. One way to create a Microsoft account (MSA) is to use your existing GitHub account to sign in to Partner Center. Follow the prompts displayed in the dialogs to automatically create a Microsoft account (MSA). From 726b0dff1457f3c3ae495e332724f2ce728319f1 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 09:18:35 -0700 Subject: [PATCH 22/53] change v2 to v1.1 --- .../publish/api/using-addons-api.md | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 4b51ac340b..066eea1959 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -6,7 +6,7 @@ ms.author: msedgedevrel ms.topic: conceptual ms.service: microsoft-edge ms.subservice: extensions -ms.date: 09/18/2024 +ms.date: 09/19/2024 --- # Using the Microsoft Edge Add-ons REST API @@ -20,13 +20,13 @@ To submit suggestions and feedback, enter an [Issue about the Add-ons API](https -## Version 2 of the REST Publish API +## Version 1.1 of the REST Publish API -The REST Publish API v2 differs from v1 in the following main ways: +The REST Publish API v1.1 differs from v1 in the following main ways: -* v2 uses API keys, whereas v1 used Secrets instead. +* v1.1 uses API keys, whereas v1 used Secrets instead. -* v2 doesn't require sending an Access Token URL. +* v1.1 doesn't require sending an Access Token URL. The UI in Partner Center is slightly different (as described below), along with usage of the REST Publish API endpoints (as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md)). @@ -34,17 +34,17 @@ The UI in Partner Center is slightly different (as described below), along with #### Dates -As of September 6, 2024, both v2 and v1 of the REST Publish API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. +As of September 6, 2024, both v1.1 and v1 of the REST Publish API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. -#### Getting started with v2 of the REST Publish API +#### Getting started with v1.1 of the REST Publish API -To use v2 of the REST Publish API: +To use v1.1 of the REST Publish API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the new API key management experience. -1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. +1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. 1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL and API key. @@ -77,33 +77,33 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: * **Client ID** - * **Client secret** (for REST Publish API v1) or **API key** (for REST Publish API v2) + * **Client secret** (for REST Publish API v1) or **API key** (for REST Publish API v1.1) * **Expiry date** * **Access token URL** (for REST Publish API v1) - ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the following: * The **Client ID**. - * The **Client secret** (REST Publish API v1) or **API key** (REST Publish API v2). + * The **Client secret** (REST Publish API v1) or **API key** (REST Publish API v1.1). * The **Access token URL** (REST Publish API v1). You'll use these values in the next step, to get an access token. - > [!IMPORTANT] -> Applies to REST Publish API v1, not v2: +> Applies to REST Publish API v1, not v1.1: > Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. You can generate multiple client secrets (if using v1) for your client ID. For example, you can create multiple secrets for multiple projects. -When using REST Publish API v2, the ClientId and API Keys are automatically re-generated, by backend services. +When using REST Publish API v1.1, the ClientId and API Keys are automatically re-generated, by backend services. @@ -112,7 +112,7 @@ When using REST Publish API v2, the ClientId and API Keys are automatically re-g After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the REST Publish API at Partner Center](#enabling-the-rest-publish-api-at-partner-center). ```REST -Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v2.0/token +Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token Type: POST Header Parameters: Content-Type: application/x-www-form-urlencoded ``` @@ -130,7 +130,7 @@ Header Parameters: Content-Type: application/x-www-form-urlencoded -d "client_secret={$Client_Secret}" \ -d "grant_type=client_credentials" \ -v \ -https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v2.0/token +https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token ``` @@ -145,7 +145,7 @@ https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v2 } ``` -For more information, see [Get a token](/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow#get-a-token) in _Microsoft identity platform and the OAuth 2.0 client credentials flow_. +For more information, see [Get a token](/azure/active-directory/develop/v1.1-oauth2-client-creds-grant-flow#get-a-token) in _Microsoft identity platform and the OAuth 2.0 client credentials flow_. @@ -302,4 +302,4 @@ GitHub: * [Issues](https://github.com/MicrosoftDocs/edge-developer/issues/) in `edge-developer` repo for Microsoft Edge Developer docs. Microsoft identity platform: -* [Microsoft identity platform and the OAuth 2.0 client credentials flow](/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow) +* [Microsoft identity platform and the OAuth 2.0 client credentials flow](/azure/active-directory/develop/v1.1-oauth2-client-creds-grant-flow) From 4fa992f2876d0d10dd66bbfc7105dd96d082ca9e Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 10:09:34 -0700 Subject: [PATCH 23/53] tabsets --- .../publish/api/addons-api-reference.md | 12 +- .../publish/api/using-addons-api.md | 133 +++++++++++++----- 2 files changed, 101 insertions(+), 44 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 5f3b214348..1b222aaadb 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -16,9 +16,9 @@ For an overview, see [Using the Microsoft Edge Add-ons REST API](./using-addons- -#### Versions of the REST API +#### Versions of the Update REST API -As of September 6, 2024, both v2 and v1 of this REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. +As of September 6, 2024, both v1.1 and v1 of this Update REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. @@ -48,7 +48,7 @@ Uploads a package to update an existing draft submission of an add-on product. The following request headers are required: -##### [v2](#tab/v2) +##### [v1.1](#tab/v1-1) * `Authorization: ApiKey ` * `X-ClientID: ` @@ -121,7 +121,7 @@ Gets the status of the package upload. The following request headers are required: -##### [v2](#tab/v2) +##### [v1.1](#tab/v1-1) * `Authorization: ApiKey ` * `X-ClientID: ` @@ -242,7 +242,7 @@ Publishes the current draft of the product to Microsoft Edge Add-ons. The following request headers are required: -##### [v2](#tab/v2) +##### [v1.1](#tab/v1-1) * `Authorization: ApiKey ` * `X-ClientID: ` @@ -312,7 +312,7 @@ None. The following request headers are required: -##### [v2](#tab/v2) +##### [v1.1](#tab/v1-1) * `Authorization: ApiKey ` * `X-ClientID: ` diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 066eea1959..eff4c6fe3e 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -10,43 +10,71 @@ ms.date: 09/19/2024 --- # Using the Microsoft Edge Add-ons REST API -To publish an extension, you first use Partner Center, and then optionally you can use this REST API to update the extension. +To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). -The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatically publishing updates to add-ons submitted to the Microsoft Edge Add-ons store. You can use these REST endpoints to automate the process of uploading and publishing new versions of your add-ons to the Microsoft Edge Add-ons store. You use the **Publish API** page at Partner Center to enable the API and begin working with these API endpoints. - - +The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatically publishing updates to add-ons submitted to the Microsoft Edge Add-ons store. You can use these REST endpoints to automate the process of uploading and publishing new versions of your add-ons to the Microsoft Edge Add-ons store. You use the **Publish API** page at Partner Center to first enable the API and then begin using these API endpoints. To submit suggestions and feedback, enter an [Issue about the Add-ons API](https://github.com/MicrosoftDocs/edge-developer/issues/new?title=[Add-ons%20API]). - -## Version 1.1 of the REST Publish API + +#### Versions of the Update REST API -The REST Publish API v1.1 differs from v1 in the following main ways: +As of September 6, 2024, both v1.1 and v1 of this Update REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. -* v1.1 uses API keys, whereas v1 used Secrets instead. -* v1.1 doesn't require sending an Access Token URL. + +#### Components used by the Update REST API -The UI in Partner Center is slightly different (as described below), along with usage of the REST Publish API endpoints (as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md)). +##### [v1.1](#tab/v1-1) +v1.1 uses API keys. The UI in Partner Center covers API keys, as described below. - -#### Dates +v1.1 doesn't require sending an Access Token URL. + +The REST API endpoints use specific request headers for v1.1, as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md). + +##### [v1](#tab/v1) + +v1 uses Secrets. The UI in Partner Center covers secrets, as described below. -As of September 6, 2024, both v1.1 and v1 of the REST Publish API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. +v1 requires sending an Access Token URL. The UI in Partner Center covers access tokens, as described below. + +The REST API endpoints use specific request headers for v1, as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md). + +--- -#### Getting started with v1.1 of the REST Publish API +#### Overview of using the Update REST API + +##### [v1.1](#tab/v1-1) + +To use v1.1 of the Update REST API: + +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience. -To use v1.1 of the REST Publish API: +1. The ClientId and API Keys are automatically re-generated, by backend services. -1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the new API key management experience. +1. Update your authentication workflows, if needed. -1. Re-generate your ClientId and secrets. You might need to update your authentication workflows. +1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by changes to the API key. + * For example, moving from v1's use of secrets, to v1.1's use of API keys. -1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL and API key. +##### [v1](#tab/v1) + + +To use v1 of the Update REST API: + +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. + +1. Re-generate your ClientId and secrets. + +1. Update your authentication workflows, if needed. + +1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL. + +--- Details are below. @@ -65,10 +93,13 @@ Details are below. -## Enabling the REST Publish API at Partner Center +## Enabling the Update REST API at Partner Center + To use the Microsoft Edge Add-ons API, you first need to enable the API for your project in the Microsoft Partner Center by creating API credentials, as follows: +##### [v1.1](#tab/v1-1) + 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), sign in to the account that you used to publish an add-on. 1. Under the **Microsoft Edge** program, select **Publish API**. @@ -77,39 +108,62 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: * **Client ID** - * **Client secret** (for REST Publish API v1) or **API key** (for REST Publish API v1.1) + * **API key** * **Expiry date** - * **Access token URL** (for REST Publish API v1) - ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the following: * The **Client ID**. - * The **Client secret** (REST Publish API v1) or **API key** (REST Publish API v1.1). - * The **Access token URL** (REST Publish API v1). + * The **API key** - You'll use these values in the next step, to get an access token. + You'll use these values in the next step, to get an access token. + +The ClientId and API Keys are automatically re-generated, by backend services. + +##### [v1](#tab/v1) - +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), sign in to the account that you used to publish an add-on. + +1. Under the **Microsoft Edge** program, select **Publish API**. + +1. On the **Publish API** page, click the **Create API credentials** button. This step may take a few minutes to finish. + + The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: + * **Client ID** + * **Client secret** + * **Expiry date** + * **Access token URL** + + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) + +1. Write down the following: + * The **Client ID**. + * The **Client secret**. + * The **Access token URL**. + + You'll use these values in the next step, to get an access token. > [!IMPORTANT] -> Applies to REST Publish API v1, not v1.1: > Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. -You can generate multiple client secrets (if using v1) for your client ID. For example, you can create multiple secrets for multiple projects. +You can generate multiple client secrets for your client ID. For example, you can create multiple secrets for multiple projects. -When using REST Publish API v1.1, the ClientId and API Keys are automatically re-generated, by backend services. +--- -## Retrieving the access token +## Retrieving the access token (v1 only) + + +##### [v1.1](#tab/v1-1) -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the REST Publish API at Partner Center](#enabling-the-rest-publish-api-at-partner-center). +Not applicable. + + +##### [v1](#tab/v1) + +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the Update REST API at Partner Center](#enabling-the-rest-publish-api-at-partner-center). ```REST Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token @@ -147,11 +201,14 @@ https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1 For more information, see [Get a token](/azure/active-directory/develop/v1.1-oauth2-client-creds-grant-flow#get-a-token) in _Microsoft identity platform and the OAuth 2.0 client credentials flow_. +--- + ## Using the API endpoints -After you have an access token, you can use the Microsoft Edge Add-ons API. This API exposes endpoints for getting a list of products, updating products, and publishing products. +After you have an access token (v1 only), you can use the Microsoft Edge Add-ons API. This API exposes endpoints for getting a list of products, updating products, and publishing products. + There's no API for creating a new product or updating a product's metadata, such as the description. You must complete these tasks manually in Microsoft Partner Center. @@ -161,7 +218,7 @@ The API is available at the endpoint `https://api.addons.microsoftedge.microsoft ## Uploading a package to update an existing submission -Use this API to update the package for an add-on. This API uploads a package to update an existing draft submission of an add-on product. +Use this REST API endpoint to update the package for an add-on. This API uploads a package to update an existing draft submission of an add-on product. ```REST Endpoint: /v1/products/$productID/submissions/draft/package From 6e1520fce78e253375be46b358b2e15d5e6b1e3b Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 10:40:33 -0700 Subject: [PATCH 24/53] key not keys; isolate v1.1 from v1 info; ClientID --- .../publish/api/using-addons-api.md | 34 +++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index eff4c6fe3e..a4e0e8961d 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -28,17 +28,15 @@ As of September 6, 2024, both v1.1 and v1 of this Update REST API are supported. ##### [v1.1](#tab/v1-1) -v1.1 uses API keys. The UI in Partner Center covers API keys, as described below. - -v1.1 doesn't require sending an Access Token URL. +v1.1 uses an API key. The UI in Partner Center covers the API key, as described below. The REST API endpoints use specific request headers for v1.1, as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md). ##### [v1](#tab/v1) -v1 uses Secrets. The UI in Partner Center covers secrets, as described below. +v1 requires sending an Access Token URL. The UI in Partner Center covers the access token, as described below. -v1 requires sending an Access Token URL. The UI in Partner Center covers access tokens, as described below. +v1 uses Secrets. The UI in Partner Center covers secrets, as described below. The REST API endpoints use specific request headers for v1, as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md). @@ -54,12 +52,12 @@ To use v1.1 of the Update REST API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience. -1. The ClientId and API Keys are automatically re-generated, by backend services. +1. The ClientID and API key are automatically re-generated, by backend services. 1. Update your authentication workflows, if needed. 1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by changes to the API key. - * For example, moving from v1's use of secrets, to v1.1's use of API keys. + * For example, moving from v1's use of secrets, to v1.1's use of an API key. ##### [v1](#tab/v1) @@ -68,7 +66,7 @@ To use v1 of the Update REST API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. -1. Re-generate your ClientId and secrets. +1. Re-generate your ClientID and secrets. 1. Update your authentication workflows, if needed. @@ -94,7 +92,6 @@ Details are below. ## Enabling the Update REST API at Partner Center - To use the Microsoft Edge Add-ons API, you first need to enable the API for your project in the Microsoft Partner Center by creating API credentials, as follows: @@ -111,15 +108,15 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your * **API key** * **Expiry date** - ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the following: * The **Client ID**. * The **API key** - You'll use these values in the next step, to get an access token. + You'll use these values in a later step. -The ClientId and API Keys are automatically re-generated, by backend services. +The ClientID and API key are automatically re-generated, by backend services. ##### [v1](#tab/v1) @@ -207,8 +204,17 @@ For more information, see [Get a token](/azure/active-directory/develop/v1.1-oau ## Using the API endpoints -After you have an access token (v1 only), you can use the Microsoft Edge Add-ons API. This API exposes endpoints for getting a list of products, updating products, and publishing products. - +The Update REST API exposes endpoints for getting a list of products, updating products, and publishing products. + +##### [v1.1](#tab/v1-1) + +After you have an API key, you can use the Microsoft Edge Add-ons API. + +##### [v1](#tab/v1) + +After you have an access token, you can use the Microsoft Edge Add-ons API. + +--- There's no API for creating a new product or updating a product's metadata, such as the description. You must complete these tasks manually in Microsoft Partner Center. From a75eab59e1279986a7fda8a25f3b457899dec782 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 11:12:52 -0700 Subject: [PATCH 25/53] resolved todos --- .../publish/api/using-addons-api.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index a4e0e8961d..6a1c47105f 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -52,21 +52,19 @@ To use v1.1 of the Update REST API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience. -1. The ClientID and API key are automatically re-generated, by backend services. +1. Write down the ClientID and API key. When you use a REST endpoint, you'll specify these in the request header. 1. Update your authentication workflows, if needed. -1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by changes to the API key. - * For example, moving from v1's use of secrets, to v1.1's use of an API key. +1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by any changes to the API key. ##### [v1](#tab/v1) - To use v1 of the Update REST API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. -1. Re-generate your ClientID and secrets. +1. Generate your ClientID and secrets. 1. Update your authentication workflows, if needed. @@ -108,15 +106,18 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your * **API key** * **Expiry date** - ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/create-api-credentials-button.png) + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the following: * The **Client ID**. * The **API key** - You'll use these values in a later step. + The ClientID and API key are automatically generated. You'll use these values as request headers when using a REST endpoint: -The ClientID and API key are automatically re-generated, by backend services. + ``REST + `Authorization: ApiKey ` + `X-ClientID: ` + ``` ##### [v1](#tab/v1) From 489899bb8d7f1ff59d5facb36fc045d52cee4a81 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 11:47:13 -0700 Subject: [PATCH 26/53] p.c. 1.1 pngs, tabsets for code in Using --- .../partner-center-1-1-enable.png | Bin 0 -> 177120 bytes .../partner-center-1-1-ui.png | Bin 0 -> 127683 bytes .../publish/api/using-addons-api.md | 144 +++++++++++++++++- 3 files changed, 137 insertions(+), 7 deletions(-) create mode 100644 microsoft-edge/extensions-chromium/publish/api/using-addons-api-images/partner-center-1-1-enable.png create mode 100644 microsoft-edge/extensions-chromium/publish/api/using-addons-api-images/partner-center-1-1-ui.png diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api-images/partner-center-1-1-enable.png b/microsoft-edge/extensions-chromium/publish/api/using-addons-api-images/partner-center-1-1-enable.png new file mode 100644 index 0000000000000000000000000000000000000000..9a9712c1ea483c85d13280268d138e7dc2481412 GIT binary patch literal 177120 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

fz%QrHj{|yY1-#zpved+YjNLKaL>{nDAI`aiN1t z%9r%H1L*XE?kkivE``*25m%>h&+Efu0Ae`y|K#_vY^)(m^J|e1f$=Zq zUAMXJFCANH;~8DgV0QET5Yp~Wx1Ss>`HB)t0dOkt36b&c33(h)VL-) zeYgonY6ilE@7~Kj8Ak9@k4)k3 zWY^~(o<*H1TgpsrvRB80Kc+|1$q4}kAxG#MZFt0QsaE#x|;_Gb) zqZc}1km%Vnw4k25-f7gakgR*Q=2sZ6M3w2`m)e#L-Jr@y2c4QQ>uuPfgqNEdiOM)YJi|vxpki0rY-7*UZ4QHv3RH*`z9pPX15cQw-QTpu$;E|*vDv(`!ED5w*irrn zf}sODFJf@boH8x2&&Yn@7sbMJ(o{W=Sjw=m^S2UYiVkpv;qk$@YJw`7@bb)9fY;E+ z3hc$fdPwwQ|H>inbK-@6?ivx-v_%llsC{xO-sA=DYTR788+Rgev#+Rr*i)MozN61Q zirQwACASZ{#48>3-B3z!ND7j5OS3B*t8B7^{F-|@zHe55ufv$3_Pk3=Si+Sq?x^}> zn%=y^v#&`71fA1?9C(od`yN5QfNCXB*mzE1!^26A9 zly|$Vbjz#;`7EzcU1b(WS9k{&dB-2nDl-l3K}{KHAozcO}V*sNA*p_<+o4JT>Z0y37jw> zZ8p@!Nb3?2vBlZ8#lq;T`2O}J*_=U#)=(7Q5eXS#Gf?X6tXQ&NKG^0}v#mj}OcPu& zI8Ci7ICE?Gjb?TxsXi|ps2!{z??3-q>gAfq9w|slx_F3~U1MBrM9B$xuyna2#j|>4 z>9|2K_o8m1$7ZQ|;E+sLO4TnZD1?B&=zjMe94+)Zp#*t710p^L19CsO#oKk-~*G~xBJDRp^{$wj)wgF zOOVD=03>_k>+pZ?=wxH+AN6-GtAHtnJPqC~t;yI}O)Zr1Xmg$}P+q*sHz zz?|W|IgOC9#nmP?zhR>%h)A(yUp0RqQk=m{frG zdk_sC+*|$JwOb_NvHse^V&%C=TGkLFqazXJ;4DMp-l*+ zdwMxMSsbq}y3G?Ld$p<@urN|Dku;a43zKX4&{W;TM!Y_TeJ?DR{Ei z4)9ifn$piT*+)r5ByV8p!Mjj_MG4UGMrDbe&JbugZx(k4?o*He>e?XdKV9;F{{-t~ ziy^$@{s*TfdF5rEr+$#rg3`!%%9Zd38EDtE+tg21}8qPTMvVL??UD0zFhy8h8oO?TKyh8 z-wrY#8g3VvIIY8O^cJoXj|PCoQ@VRe&)h-3jT84u{e#RC7_9=TW713ImLrA@V=<$_ z+@ril)(N#|#Qpw|0Hb|$vR!$#M~e`edy_CjpRJ6TeXnNUgVm<%!LBEW9cNm^`<3uv`th3(cuJ|;|yLKfGpqNXdNkWu`}3!k@#&&oLG9YrrA)VGWTRHBF4}4!0u;zo(Q@3N{!8?u`SgO>wlOywk@Iq z%+~COOOPl3`^W(1c>2wW5APb|=ZP zd8we=bKGRNRc>@gg{Au7xnork2zl;5+c3+{aOdY-u(m~xdd|XRtKRXeu~WS$=mOXG z@pIu*^sr(FbKa1K19;b@{`6K*0h;>t$;K z{qaiPvilpJCt?QKD!Dq$AM)q5W$zR-OQ(Ch2#rK-j6=;jl-azU8bhveu)#m>J|67v z)%(&_>sK?7?X1S#2@d)x;xy-DfI)evQAouk$dcfIrN`&(TcJjcB)vEEgkJrp5c)IR zL10ZRj?*}$;nN`9;$e20(v!t~V7>P9C$kk=OS>Uv&LmP&((Z>dFdEV{ugR#BRHEj< z4`#7_Z0}%?V#cJIW`JkhF&pQP{;%TMCyp1JYe2hUFvhAh@l<(&+cE*8=sLu;&3N|= z9&@3ouo2hXu{yfAq%Un~erG)+NY%LLhwO@%L5)LA#8}8(Ohd=M)9D+q>AW)ux#oRVM^&lY||~& z;_$*P?9|SzR+U3~eZ$|!xtwZiR33LReHv`poA`9b+{B}k%J=q9y=KC0LSCosGXM91 zbDSny>xBoV0tGSdbeX;4oiuIZkr`o$NY-I!idTPin6l?&SVxMQ?45aLBRTtOM~Vsf zt1x}N4+LOzSwb08Bnerqa)Fn$qP{sMyq6Kre2&@WN85-fN0=h- zc+x2aHjbwy!ghgDTLu|eX#`QtA8r4Xoe%`wepD^{qcBO!XN(6t+MM~)->9jX(Iscl zRVs&da10|WVxLe$fFj(pQa8-$MiPp?j(0i8zF(+#J_nKB7zxY!yBQC8tJiXqRoSGCjDMT5C%@cbC%V;CGU^sNXzk1eR#T3UeE1e(FZ7u#(<3>qQC z`?d7lwFMDF3HCugboN3`Tk*00Jb1{P(id+uw7|6F_Q>X;4(bnx+m}Iu?{A;J!yVgn zM^cmE-LV%{AIUKE+-+tID;b0bVN&Y{wBR7^hLPKTRC?M>7y=kpWX?1+H2%!wJoG0nT_nuemvsoIQ6m&RZ# z7is#_Gf~y6OZw;MVTx`~D;=vxQ6kwK3T*=0m^nYk(=e;KLAKFrft_QUfZ&zAO1%X7 z&Z&!|m_;^$MC1|aAUN7E$RNiZMYL@mR(&$W=++L_P0s=Mc@&B;2tZjJI-6NJ2s z(EK^%U|%czvT%n`^0MeBT{}VN@EsE=44!|iqpq<2-Q3XXc~mCtzXIv~r6^fN^vRK9Ay?2cD@?_S0dp3zdT83{j^%fSy^5Rek$b?aT>_ZxGk@7r>?Rn2M% z4O;%_L%8N>8B+XH_E1NFJt8Gyyvp9Z7TGyOBYjYOU)U+^b^n0b=*+`8U*D*wc*X}u zDJXu;TjuMQt*eCW;rX;XvfcNm@A(#fK$Z7OVnno4xoHDkYGe%vi>G8~bNb}P;zkDp z#_(tr(rm{X;Cp)REs&*xMynKNOwy?n3v?CYZ1uDdR=h{u@j+gke?C`NwdRv_xrimm zBPG(#t2rM{St$$eanZ8#Ti#eq^n790G23Z;^-!oWDkqd8 z(XxsPQN>@r#oiDS{dY2DJ-ec{Pd5>Q_;W;tRDR&2Kd1WIY4aI7#}*Im;OF+i7sHAJ z$VNok&k0AS>q|fPX8O!V}t463mU3L z%dn4!9|(9wUiPZeACK+s`+I={2ksnd{r~^p*WX+HR!_`+*@Fa~_`BqbKL2_(Y(2s? z8F1*Qk|CIflDe?gqb+_@KwJzpp1HUWWzcGzyDo%z^yvQc37`Izv`uERkrtu; z!&ynsr6KBBg@C!6jHPkXmY`3SO87=a(9-ZHPC-3J`-{VR^%KXkAxu?dOOon;A36B1 zD*XKRiU-;U8ZXou`{%)l-xm1p8eO%vf;N6x9kJ{@=;`KOXE$P7dKK zui2Sdk80iwMuIjmkpoc61j5K{R;fQ;(+v`{l`y<0xgr1P8YI>NJjNZTO{m-A1-9~F=22EUKu z;P$|dYxf6(>aC$rD53i8+vCozJ%hI1&Bd@q(FM_ctD=`h`}q$0TbAIBiK8|qRv**s zx1v2f&@`Mfxnf3G&gm_KtV|9uRVHr;@2(eVqwN13w&35N@+l2`^nr#SREz%H=dJ3&kRpy%n+pRrTGuxFqwf0*;M!tbyR~IxTC7(Sv zZvA8U9{Bb8=UmXnWUNd;SIce#+M5Du+GCVQ7KEy*TGU-;KRgb{1d@~>tOm?{@29&2 z&wqc>zwbD9=WwxbIe8dL1WAIO_4vm48dcPGI>E^$cW)&z!U^g?sWsu&+K?+Z8UiWrhd4yO0bP%$M{MQA`lgexRxvE)8e}5=`>eoU@_nkpXb9!N^*NK$M?L|9xO$d2VeRcH8MCDi zViu}@z{6MHiNLfe;P9<^b{Y$U=GL63!jmrtN;PO?Yl45Gg=PLSH{a*I!~Hc?_?$N` zO416nj*uHSFhxg74JE}Jw5Z!1=6=}(a$4Cb-EZz&Fy``eX1SyxNSGvY*ZQt=bF;R` zM`?YWxpS1}nFG(0t;Rb8h@o>+m#A@v#FZi`4u^)$!28~9h{TDM--dSe2aX(w2H_A2 z_W$l(Lp5ki4eAER#>Fr>!#@NaD4)ZYGK#aZgd}gle$FX{?7ik)XOg^ar*%a_?@>0e z%4L2RwKk_raqyNe;K8Azd!Fu2PWdxhzn+_u8#g(3ciVXpenoCOx0Q!GE&;2x4~>^0 zA9byEP6dF>Z{Hp{A@JaFd5!!y&=ak9cxMPL`y5Mh91I!PfFxO@5;ynG)P^T%YA@Ec zy}B1h7l4Y5NFbpe`ZJ&NcUhYUd=7c2CEx}}!C|?g25TICWo3gOe36cmigi#X8_RrF zKR(B?7J}xi^2v&A+xb^3>>v&*OJ- zMiwv4ZIB;I2wY~2k{gofE*%N)#oQQ}1fp{0U2pz|mFL+52UIdtQmUUc=Em)JyW;=t zbNrlATEG_9ui-63C?ZIC`sRzAGH*(=O|4tfeSnhQe)yu|%e<(XFczq3XBAu;-XXm2 zuF2uJJ||fdNwKH-Zce9>Ob@4JsE&i}TlRR^)3|hO;!^VOC@bnVS`vOxFWmdG#*;FU z<+wpB+VWgPlAg8ACvLR4n|tRw{ump}$Da>TRaG?sE^%(RTkC(yaf#1*n4*~02m{*5 zY8B1fXRz>WF@FW=rdx{0y1rt=9p5eKjhD(fpkjbUPpb&S*Ue^Lc9OLV+W2D+Yfo344|y9*gOUq9WqpT8iTVbz_85c zN6M_IJb(4!Pp6p&`;`&vR11;hXG4@6(Yg7rU%#$@|Ee3%&SQC2NVse^#}-lEvNtMW z^ypz_PD6jndH`*+w7j{Wofi8ERNX%PYg=1lA9Dn1|0xv=8!@Z9K`9*hV)VyjqF(dW#WGkz*|2j#sR zHwzi3UuD7McvAR!PGso4GcwalF+*LhTo=aPoNf!^eA*rGb= z$zlnM0{C4A=g_3??YCE4djiJC^J>kYTHGGyaxR!F;wtBtB>r|bAw?dq62-0-aI|p* zoDds}%86pEbim#Ac8(JAq+0t5`|@;cd%VvI#s6V$o#i^t)PAb>GBD z<^E~d!B`8g541~%&57>irAH3j>iPM0;7X}+;Rgwax{sb_b%mWF3BAK9=i_T~i_-+x zl+#~Rhs-#KT{=VNi)7p2t1c9i@$;-pN$1R-^=5f{}5|%1*jLruZ zY}Sh_8uD`eM$`Kq>#rV3*_n=m3FIvS1VG7@(n5aPDD#~KHZOuE<9hf%FPB#zPFU!y z@q1c`6rF~VBkyH_vNK8*hqO|S*`RDo`ykEI4KZ*2Za=Ft>Snb1gN(QBh^wYhdl>_~ z?#^{BM>i&&1#PP^n=@Fj@aHb15n=tcPDGXA=t5}?7S((|p2%{YDXo?&1!w6&FQm8H zpMZUM!a{8v!QG5%E;(sFD%;l=6X(OY3{{OET?k<)irFa1H(6)aj|{`fqh`)aAz?Wq z5{xqg1YB`bD?TX`?%i9c@brwk|eGZHDArg-VOEMc)$4QX23F-)t$h48Nx%Gl)*f>CuXzi0APA!~GTtND;4e?-tQ z_BC_o6d<_lvy3t;eq6Z_xzb;VgH${i5U*vy$0H7V?Q7L-7j(?pt6UusS%Y}r0)!@A z5Fm{Yi@a1d9JKT>0IfOKli{UMk?cy4b3M&FId%u+*j4X!c8+i6Q(Mo&@Z=~iugkG6v@oWI89W|vc9ionP_Sl}S1;zU+tdQm6?Pl_|yc}634|?JPh-&L_>;6tx1zec_3yi{Is|dv_dj-&%rnH_(9rYGW z^k)opu;3pPHSK!2}V2B|I6g1Q7yM>VT$(Lxgd?D1!mmsU>=jUyc9BAi;3T2`B9Zm{#7Q+>N8 zrNEOzfKgfv^3e;TW!^3WyjgCmfOCY~VJ?1Q{6$$Csx;Jqu}}f|(eNFM_!i@3r11p3 zA%!Wm?M->qKV{w0*BLX;JiRB>-vR9@{-rzu+u6MW07B5a{QHWwugfE@^+c+k{=Uaz zu(Z1g+>g&K1~%y_N9;@Et`C3Yj@rAa9c1ajSdL?W?C{Wfr6DW4XpX7*#mof5yFLN$ zn>Qv;(KZDkEl)LrqqQL0Ry|9B^D6=#)j=~M@elA85kD+w%w@T~mYOnS{{bqrzG7^f z+xE?yPP=gd-qJz(v;@-UXkl1$@FNeT1f&CTB>z)*5=bO1zgYFPgty%{3+Pl&-&E~A z0|)AC1XH-cCB9I+7L9T$Eq#-31Lgf~iX0iI7bT45x-32dX!qCPoZ}fDH!5=<9aZJW zstuoO^jS;}F<_RJkDlb2b@lvOTWm9eU+}ml)qh7)Ne%EWzSVX`59aIwM)rTr?dK|v zt+(0cAWdD9R1fTMH+BYv2ay*DWHgt(QLQ` z`kkzHbL6^!@9rhwI%DsRho7@O6-dLb&TJs_8g1`{FCvVNw7^L?HxB*BR7D9K zpMGqY0H)8zWyKHIE#7(3}&VV!=2=qrnQA zs|OG@!(0C9h9nMA*(k9L2bhXUUPrbPH5AR;2@iwrS-iy7Up-p%$?jBnV&9R(O5(T+ zGQ;MIKNPpvFwm85`CeYf@oe1UDv!H~LkY*#^leG~y4TJI%Qd7xP+_06Zh^0Ak z!LOCz@7s)D^sM%)@?CPOZb{wkfY9q)?i}c1hAzPnX1b)7=)k@73m-*xHET6@m1@@# zzJF7&)>WW3BKm34Kx3$^g>^V?z}UI^6zYB1!*{LYyBFu`<8Zx`LbR@o72z9{F4^H7 zk@tCaj%}CwFU&u6aKML0bo7`Os!DHfCr}Q~1|f2^w+7C1c@GRvK6X&ER8|)Gjh{0c z#x4YS+Ono*A%(-M++HaG=Xg?^_|m9_z`-;V-nEfg8Y?1+6c1*_lkqh)wmahOK1ekj zZ(vl|uMHPwbLuhzLbE~ODM-_z{2Vdhk-B}T5k_n0BACC6QTS;KGQQ^%zXWDg zkbOEl1=seb$9vWnqf6I`0N|~E=8nSQ#*q(L+NKEp@^n(<15!-s z`l2)3no&KV7+Z;muKBqsFkbBy-Lw3KQyuM2@GfC^%ZT(2G-xgi|H3Zag|WgB_ca@J zWH9xd2x3}kj#h7EifDhV$o5p!VI*URxf};sEnxeZ|GJJpj9#DU^a6xYBj=NNmEE@w zhOJKYnC-6W;r4G=UETlGAAG*Aqi3FjvQ>DMtZJEfzNu_sp(kK?FPXugxrfwUG8~GR z-^=AbyfeF$=m5Tz?7h*v6uG)QI#_*Ys|=iMA3g;#sGkS}SIfPPRA+g#l%(z#A)8mY zrq2t|#%qP2~ z&4r+ua<>|18fM*xcPt@ytE0qETbQx1^Ixvw{2FKg(@h%ai3V-5z;8EyA$P zgm@%94zpeu~e@|*BqC@qV2wINw*g|+(fAM=dyQ^0(^c15OF!$G?lQzR99&!H4h zur24ISnxd$-V=k_AC5_|iU`f=LlUpMn7l))jxQ@OXvhF85`M)9;g}afK*v~4S0zyu z7II8$i{?IY0g5;4-O*yTJRP{(Km;i57!+?bKtG!|j>Qd@AVeHr_iS-4#Jo~ zq_5ijSfZk6(OMbWF@c?YTM>yL3qDt6_QcG=Y&9HF^4Y!8zK*bG+U{3i2o!NTM>F)N zUH*kCEbE0%6Q%-l)SwOhGaio{N5Wp3BgeV}5btm-H-DGRhl=-g^Kd-QZZ4n~enqau z3Ro0g6WcgC4Qu}1byU!$H_#*I0^108ffj4@fECFtdASePy19Lj1N6a1`@GOW==ES1 zWUfXBjmO=9np#&@?B1!2efxP`$7Z%qDF_Il+9a6o*V)rXirzfdbYkdV*J}8l=fKbH zT0oedb@NKs^v*j5v`hbFM(kAZHo|*o!sW@INhha^oZa4~K`URn%Abnw>*PBnmzn6i zovk=(rr_ZI6zDx0QKR%GuwC`xsic)3dN)tuFF{2u9SmML{W!t(TCitA_8syks_L0= z;)ZEJK<1W!lN#h?1&qSbMg(qS=%X~E? zd)9`ZChl5<1;$Sg><0F)+EF(e?k9vNI=)biD73!(E=I1ZCjX+*fPB|^>PVWv_A3+3 z%?z74N%i8V<+3x6vYRaBtDjYIz`+S*17aM{jh`X^*%}d(_2rhGWKH z9}W?9j$u_F$IQNSRZs8+6kcX#Z;wU9%x=e1?fM>xSs4t^HDDt&_jV13E(qq;1jd!F zs|5Qs5$WUjDpi>6RMBz(fmLD1H*iUuXB2Ld8_KK>rNOj<_nW=SdEFUvYpAfwhI^*VHgiGlQKj{%6kv|MMR(ubj!4yk zvELd)1pjbl4^X8^Sy7)HL)NV6MyfsA1d7;px63^CSbbK+fx4lgy&_&&pdi_e{WwkdGi`BQ8O% zd2Nw$f=lF!F2qn;-Hp5)f?&J1QfX;djq_**!7pe?v^P@2e1KX17o7mEUF^X<-nuKJ zpRhbf-i#b%uZ9$K?9a+h=O>zIdnUA%M69-?tbIrfz%@{aSLKnlEbDr;Me)v1dLnjv zv1125hfOCFyrTCv-$$(0!Y_J~_BtsGx-6tc;IgbiInnbxYFUqaa}S_-f3JUO)_OdVx*SeEs7itm4pUfNB#Zyh^|RAiA0DCX75 ze+U9^vn}^yr}>^}5+liIxLNaF{q=^ouBv=tOnPNbTN}W*9PL-M0Ubq~xq%WSquh$V_w;?33)gJ9r2no@h52x*8BPJZ?~C7&AFR;^*+nen(^O512Up5bgH z&-8G5hEA2PkhikuXz-LTGGUHgZMJGpWg_@&xRej;;)$v!A(}Z;kRxl2os$ z%qnwo5F{OQ`5B6paP)3>C&ygUOg~FCX_<)0uD0r0Ls)p4Is2lNcrL&Zq5Ljkk_5;p z&6iR%{c4{jwY;15p{M%8UFtw#woB>F7Fo%q6+7XYAyK;8+z&XUw96kHUL(5ASBK~* zaVo@QS3T(Rw|jw_K1CE}9gc7Yy(xs9N_;T18rTjF`Oqh>q4Z_poOPFC8!DsPQ5yq* z5^NxCpN_`P&c7*)S9o<@P0Ik~vUwcu1`W%?4^(f=P}dh@*A{*2@0`-NA=nQz$3F0n zf2tg^q~Y0AILGQq8*UZDMR|P{df3T^)3fHHmJfq|`hPQX&KHzvIvTBH*2RZEZ3>+_ zjvT5xU;6p!i&PoIwcje_$3Sw1OJtIsi>o^bSeRosZ9R*W^Athf<>9lN0KIO=-TU!EAE7nvr-t?yXBvM=-Vd{@_9VmV^>BC+^q>(RnisXIXX=hNgW&WyvRe$|XY-RUcTuj}c`bI8+Khqam_xT8lvsXIa1zl@j zh;+HYNENjySiQ8Sdi(m)waU39z3Lem3wP((3+C2H=**r1L9TNC0BA0E4PjVH0VA@< z*^w>H(`PgLaH(f52$z#YK@r5)ShPnXmD^}VBZwWVmT%h?(XUOfY;gKG680Uo;PC-&W;Xe2|mTi*;vhLNv%Dc30Geg(^uf7o zB5XS@P#cyZ$^K4c>UFK6dzm%_xaOYLPQ@%MCueZ^@PP5=izP5|hxNrC?1gpSO4R32 zia%4tJvc;ZxMyVd?5gR8O2Pg!6M$?9ooH!> zr3Oy>1`g>T?rFKT78z0qQm|hf-K^W&dq?|g_t`Bs>*8pU665Z~y)s_7&ByiSZ$Him zme$t#!Zwn{t7jtn0}~V}Pn$NTC{vozt95!mHc|Ewhe&YjqR`sbpDiKZtQs2gqi4?RotyP!NE*%UJyhn0`zPVGDON?EpgyBLtCAsA;&&cU z6ChD@omZ4LMd|3l^>d%Z*iKK(M-IkD1_8sybY^Kg!zvKh&O@5!JGurUApFWZi|*a1 zlDCOVen)gUu6qpMq;0a-b<-GQ!sy7k1uGL1WL%DBwxb1_CCb@033bwG(8I5e&WyZ~ zjD>pcP0oGqds!B;tUY{B-1ALf2R%^YnkQAp?u@)*4{=t~CbR< z+WgYKO+o3ht!Z~I$~a=uV`?%x#VzLdQagqvi@FIp*RgJd7x)!MWKVmJqk2t)B3x{OW&vd6^D;zvrIH;z=RBPTPFaF2d86oZn0wF^RZ8#U{*aB8B~F~Y+V^&I<62I z@z5Lv0hj_@)-T=dipvDl0JF_o6tQ7|z8aef6_Qcp+TftYZalSc?jfq?%R+uvO}C}E zVnT~NtUw6;T1*0`_ClV27Hs{_9xY|_&YkeUZ>O%JDF2bc8an4+>uRznf};ft!+1;N z49eY`Oci$%uGuH~oo4b$^4`G9*^~$OCHv72tp2Q9R?GeREYv^*U|M*{e>=WDGiA>A zqAyY3HqjgKscj2%ah6$X1{te^l!1Cyc>>(&tb4?x_goe%;fwY1Y)~Bfi)#Vw5{xLn ze93*oqD^C*`BjbI)75WZ=f?)$^8X5xFt?5L^`}T(xsyB@Rr{bMJCHx3O=y?Qn11BH zciHI-F( zUz=504lMYyEr9p{^$WUJH3FsoW&F-Pv=|F5z{W9I8weW41zpR4kY@~fBrH$Spz=T*9VCI zId?JMFRm&_893_1=A)G<;4ZL;;({El&Na3-{|H6<$^Cc*`K$afp3|G>%$==2DOTLi z7uz@yaKhBAQSwrLS^bF7pD!{$Oe)SHOuQPeTEBi~jutN*hEH9$KlDQLRfpt{(MLr} zgzEk1M!sm;g(V5Q{JPdc13i6<#`25bejTTx0PXRLFYezADKUL``;)nz9J2u<;eOKZ z`ue#CZj$)kw+9aowXB>eKI7{Sv$k>>bb9sSLW;*wnboqkea*uHy;Eftr4QdlM11Fr z{ZKlRI$!G|n2{T5aTRe=s$0ec;M_bj!!O^CBWkp0Hw%sqr>d8gi?wf`_F65SF3UnQC~@(5WJyjHFA$T*LNj4B&SUcUP< zr#037l_2zK`;21O0b!6=vS$mr`wuIJW^BFjrOQ7)S?N{{E!*O$C-Y@t_Ih@L@-Biv zX>5l`Tny9`C#2`MF&CC(5|rslMlN)*@#lij{C&(X;&o28-R;Er-Cl0DUQGPQL|&+p zw4|zm$O-4fbHa|xZ8qAsJ)~ZB@O6lwjGcuf{UmK$E*3Q3@kIQoF)}9@VToNztSRxd z;}3ROKaNZPaNg-n8`q@kXZ9T2{T&rwt7%0_330FWIX@X^B*)|IXM>imJD^~bb4(=6;m5+9R6_{6VNS(HBMag-d{ni1zJ%S%lxQ32 z!P(K~7MRKUiC!lKWe2Bk4+t41(j=L6HKCP8WxizR`#5w~2c*yLUj1YgAJ?cuT9V!m z>nGXgQf0b{qxE`HnVGIxky!WJ`17LFDnvZnIj4`|dp7g5h0!}o@luKs4%E&WcouY~ z0fO#DZ9xt&m;1Zmu-EqW(`PCB-Q`br6-Fh(#av6pCq?jd;8F8TjQ`k#q}tZbi<5H> z=X#dPB_W7s`_1*e$Yor^ZlT-Cq8C-(5YvUrD*4n#r*}Pt1Z3=P-_yT~ubdr$Sg8ZV zx=7{@bHb>b3U)-!%B!0Sy~7+BtAeOeI<4cpHe=eJ@P4gLag>HmHzf9=0JJTercKko zb~ygwf$!rkj3603@sCtR3Oc4K&+m>0$v)WaQR|WxCTznuw%?QWw)>>iC=t`+{4x5O zC48kj?_%sZrPaXurIO}OyZ-RXMeXKx*FVtnal^}VYL+?2993sp-0~#P2npwRIm%#i zFd$MPOzB8Tj$aJzLfX|HzmHn`JN`}k&82s-*kfD%Cc!b5DR5DCc;cqrXTu+x6p^i8 zGLomxjDdF?&E7~3cRW&^q6G&>eh@}DQxYDh(3BO-G1q@8A6PNji?lM&AA2FwUbDFW zr_2r6yDdh_n1(x>^Of~J-DXmD)=0JG>u{L=y{!{>6!r)?PBV&P5*0zSAq8R^pOc1< z)O{%9DgAh5W3T9Kl3u4(zPb4{nBaZ!9s!cobf;&e_IX{ax2Qg(QNIpG%_~03UsgV9pv{#C4%iF(Z7Tzuh2@{VPLhz` zyBv$NKQpY~_@_KEL!q1!usW&%wC->Of@>zt&w-5u>TwW?heJ$UHOU9c6>4{!mmf|) znbRp_Vov27{8;i~8tY#Vx|t_2)~bM;DK@DI6x=#Oq3V=A-SuH<}pgoT8Um z$&$6jCAa~|J3D*2(#lj9Y#oi&{cvGqO;M!Z!()+k^;)53M^ex)%{PJLs_&Ga-WRQ` z>Mi|#8I`XdRj5#`lVX*A`3E$<&z&yGdRp~KPmBQMzhvVyMz06b%C-=teg?5`MdxRC z^4ZRv0IzXatk**R>Zty1j^Ie#Z34@N|>8 zqXU!90EPLwyT_2Hu}AO2-L=B&WP<$M^iT%~398M3NG^KAq87&67!q%iR=}o3KuD4F z3}mKw9ML)9hUBj?c*4F2A<)t0$zSuHnH{V$RUc8L=UJlB+`&(3zz#cgoR_y!AKR#R zU0T1e<|P$44!9=u5CI4#r-vE)l(4BPa3hcJL{M))R2}$eZC`>sy zc`+L%^`;!6i$6H=4VdFrQEzg{!oF^?5Vwo8Tqg3k_r3IW5)jzbV-*wr0&EFXs*lP19XA(-ZXiW2?D{H5csS`T_oh@1R!!vlyaJUlOOpZ%}jPKPI?0u8V0@>C76XF&4`Z+*n zG{cV+)ZWFPxQ?k^totcJ@*r#(*f}hHB0`T5A|mn*zO90LjT3&3I|uHgHGU13-9X1w z3BSm4Z~q=k%#S0^F8)eN7gm{W5JwCgI8r z#oF?r>8R_`VIC`F<}ulxrxOWI-RI0E1Z#9sST=zUM8QwrCd#pD`kzhKXfm=TpAcERU$s@(><1|KOd%0lIOl5}PArqvSZpNec3`7d4P zk1Bw0jt0Jmxev1B8^JQ@p><8rz=ZC|sKSNo%D8mpW~uAcVAO%zn8%VGxEy& zS(tX&zHxo|dFN=&EV^gyiY1S7iBSc|fZ^oNGezKxovLBkn@)LdnVA*Q;%VtpuWABZ z(`&r;JMaF5Ru0{iDoq=B{9|1#wNuJ6UpcyfE^!4SMYhGW9-)`Z^hTx2Zr4757DpeI z-3LX|75-Y+3_YZ8aSbZ^_1jPk&y-X3Y4DHLmT=rjmD9ENe7rsuB!Bo}C8s4|W_*)= z{(f8UcHdh*<&{HpQA2=frR=xBMHh^c$cr|<@YGK#>M2#r4$l$K2W;7$!XlhhXUp35 z-v>HYWHw*eP~JR4X9*SSi-;CEo!2Q71x!W_f~Gk)>m<`fP4os8bZzTJ)4m62#-dBw;rj;-ouaU)3*ASB zs=x+5dZ<`LRMg0*VPl{Mbw{{t`BgQ*d#^HB)c!MqvVoVidE^WXNdMOV>n<7f{e9Du z4Qy@gJ}RPG=UnMGJ=gk@EBq5q{V6&xgbVpECSRO*Zh3kxBBlE7fLqZp-1jKep2>t` z`RQQt*~n^G4`ZHa%}u~hL93E;`fC6srKgN-ZR~^)AGGASoBjFfsaJ1zikqsROU43q zchFAw8hM~0xL?BhYu8vROL*r#Iwphxcfd=< z>Uw6J3SZcrmJa_#&S%nY^MrX zWcp+AWzl!99)g-OU{%X!n5%Mioe$tYUrcWEBqh{qG&WT?;{+#o@PV2w*VwA)Fl;VCEH%jl8;KO5)WD%`07Is;mpJ!BVDfH$r5|_ z2SEeMKXCD;oT66}CO8++Mb+QN70y0#Z}1nMM0k|fO=lKrB-lAQ-Vl|NPZk9!l}q5q zmYg5slByO#=&Kg}O;FTkgts!Z!SBd^`~)Uw^x{?v^e-Y=t#CXgV&IpIH_8E3VFK;- zXm0g*>dx6*=8infM++vD^H1u=($Ush2j)5Az}T84j0*0lnd1P&OG%q?W4A4%ankqn zrPl?vklnT2*eQ2&K^aMptP}r)WIOmg(uW>qx}~dVic*hKSkmH27YuuS<4b!-y_aau zV}bQgpir03a)68H-{wyJE$ZE{-vl9p#Vy=sNJ!`8p5js;^>@^*P+)cD1HHOyxu!tQ zFZyV>)ji4`us6=Gofp^-p9I&gkRiLf zcwNl)#L8F7wA-9igXN@^YGXdAq!Jf(R)^iz2EQ5;HhSjKFruUw3>P?QiX7{&%lLX` zY>KCY$NH0ESH{)vbf3d`>dE{YvL8x5pl)`bXZ0P>bIngoyeX&qZc6B(MzjxmcS-bM zqnvN_1Yy$agbuEY!OEdI&&1 z)W6_cEaGVv{3U(%4!l$Ez}`Ezgvt(R&bzEFhS@pE`aoy!%I}j>mK1Vvpcu~aIA=AG=^hUPrcUva95bQMm@NB5x zL?<~+te?xBeMW5XQf*Ywigyb$e3}<9kwN4Wy5d)sXarzpB{4pjqc?9EJGIdX ziy+5Sr}IQ%iyOPj&-{C@^qI_d>#UZ7;Z&g)p^ncS2d^0#^z7N(P!F;RB9g-NU!-!& zx|G@zcoK-o7GJFv+~A^G-BZLiBV6nzE}`~s?QloMR8D&r`{!_i^CIUV9KKk-=8W)J z-Vx$|Z1DO4-uS1gZ%YW_SzLqV%wM)9i@ucvB1WD5`ew!zJCQHZPmb?HjN?RyU3*|7 z3t{oT5DU*D5&XvbYw_jCsQ85QW2(C0_1Ss}BjMIoCZ|Trc_hy}PQjCVyiWCT6jh6F z`?_9A$zu}CTovIZXM5U2_}uEMkrokQ_Ok6gnB;7}^5xVtcQoz|=25!b4&+w(i&dV+ zX$_33j=bHVtj6}vnpXm6$_9|`6@)Bk$3~A`FY)FmYHFHP=uBNaneQJif+xDlRNM2v z7;fd5kO^p!F?rEGF2kmS2vV^$&SBOf4HABr;{<`lA(W3v?RjuB;;EmrHh z@74~%aayXb?4&hi*bFTtq(W-I8GK~pJ9h(OgRysCR%?c1Qx}G3iXr7n7x1|~AC2SR zdd)ow0=i%-05NqDe^e)iw=j!}a?{mr4v0>JK#@Sr;7fKwa$%Z>kxwRy_4bx zW5&yq9UJy5({&0Rr$}L{wXXNZ&rE6xLh=NUXPHiF){g%85Nk9LbU+wYl`*q)e4{|m zbn&63E244hRRi!sH~|GjXp)KbJIG^VEzMOmwDS9*jcpn-QjycytsKeF&QoS=FhnfX zxS^QZIE1PQ*}strtokK#)AmM5z?q>(ilrt#T1Q9tCfauky}S>Rr4}lb-NxuqP@)X# z93PRr#q)>rt+C0!3{|xsKYsRi8drvFNB1>nG$vJGm)RkCUe7e;Y(}Kl7rcA36WU>7 zGO-N4iaIz<=hK#kQdlGP(M?ZrG8rPNiWbfk3V5;;K5Yx>3w1LK@u{qo?)_lsNbFUg zC#}ZyD}L4`aP(kWJ{4*x{eG+1viGYqlY&s9e@z*V_i4mX-SYwyRj9 zw)3TH@4gA;uT`(UTv#VzdOIae$f7N-2qA5#3ouD>$hXmgn!m# z+ViAI@_T_p++T`U$io<%jUI~*K}Ct%+m8CZ3PU9V{UfI+%$ zn1sGYW!wGb?k*?F=>RW@cY2bhb^a2e5}-ZyMM99`P9MEKe^kH{TT z_lPUpWOOKt!lnln^R>9T`%u9CqpGg{lSsCPJDQ(;gDXTZP6N1KU*6v}xff4F+v4~k z^Io!&eI&1f@lrlp?kq?1CekOQqauc(U)Gc_ey8nAa-wV0_{SeEeS3b=tJ#_d z+!d!+oluSjjufCXJ)99$y0abQ=)O-5?8KYt$2eh=z=Oj{S!=6MBjDBaksnr}w|bOX z1kve*)O>#QOUWowcMTrj>7G&2Q~JW=2j5(GWtzx_+d>~wN{E@*86RO)D{uo!L)a3TD*0Fa@zou%B)KJ!EA8E1U!_4>=u`l zdOc#+8j0#CGMIf5pwr;iTyd8duM%SC@Xc_4GFUt7Q(o5%*8$J1x-m7<1xHqkk~^r60d-S_crPhwe% zvIWF3j(=}{1HGj7FlKCHwcN_>UijPI+7ZVem#g-IL|>QP_ZBW(Mc8e0yTC_5&Lgxw zT%m(&q}|jZF6d#wl5K}P0sp<-Wz1eF$vH4))7916gph++(yNsKngVPjKRG8YIvl@G z32bO8m|#u4;M=LzlTmy_0C`+%53DuD@Q9llRWu*?@NWpb=M(QSXVtpOVFsbUGy2_WMnbA|fp4s!It-opsTd%V_;XDY2 z2g&5lk1Y6z8=GKUdY!)A9_#+F%9C_Qv;P6{p~>NeiNJA8MW?WdwQ=-vPBh%SS>DiZ zDbS~L>!fyNj%Duym=v|F)CH6|3V7iQu}l6f@}rra#n~@M0{uL|s49kr%kB`59A)zGBj9_#`r(vR_(HP&=JGS;NwY%Es$)@&i~#c{d2FWV@c- z)93pp(^O-E-~eYnz?AOC(Z_P`o&}xY_QyuL!}PVmK+ntc-WvK)P8E4ni5IQeLC9+N zM-Mfv6Tw#2j$J7R@+0$~)j^KtUzUFwd}e>MtgXq1RoZHN3&7NGsz^Ld0Zw^0Mqvz^ zHCXcsoV9(5MaiXtt~7xq&B8IQFFEUGiD@R|>y0L%t7mbQy8Iq9bBH@RbSW@80g(TK#*0W{pfRPEMWz4R%jIZvH*ROBXVPk z`e3q=_H`4Lr0w`26yqObXQE8~MlgSoFD$<~IMWFf)Nd2^B{|x7FI(-kas1Q08w^^w~IO;W7wRCPd-=DAfNrfSz+ zgTBB8M$G=zqWpi9S|m{rZ2O701}O{K(Qlkiby78cnay$aY#)E|2rd@6E^?5W$BR0d zG;nn6eADrZelc3;1MjgUvsw4~DC!`_4^L+gj4kYS(Km8bg+TDLT+KAvw42>$bDL9A zg33#xc&#l2X-$-}PzW3q6o8BbLg-16D`QAfg1#E}!-9p?iBq^TL4lr~O4$&bJQ6F{ zO5nqX&QC$`bKQCG+v9i~kitgKjRQb&LW}k{9Us1@OfX)P6TAB0h`sZ?r(TUy0C+ey zTcG#rsIW{~wU@}iz^}S*1qZQ@`UhveTvJu)u^&;7|8feHnf0|hT{hbBIO+}0{G&lr zJZg3u^j$>vHvg5f>F>4AWQN(~M7nd;qCl@3%(uAbV^^;wd^XHG_4v}~s;BjRlL;{0-1&r5vv1NjZb^0Kj-ty3pOR4r zQB4z1T+lO71HD~wDJ?xISw%+~T)P}2e`j(u9=}rtUKHzb9xRUv;ZCxP-n?{HX8*W&9em2{V~3q{z~D>Ku#RR{ zo~h6pR%zMVI`lY`5Cn}hys(&>7MCNHNg4D%&%LT7uYSF6tcqT>a06SjtCFkhe!n5gA`B*)DyzKBdsCQ{{W9bIxZe5i_Lk-yTb)&9g zhMi9~x7NlM_iHQ$#h@32ZsiG$um|BjRb5}M^K?jl?w1l!BmP%i6cOI^u&0k`7mLf> z=;J|^!Q}2ubf|0a(lL`Y%)ZN1R;1;dW*6(9w|d)#$~_c{NHVh;d+Tm^gCKM*%{ z!{q1IxU}TLgLNMzNl?E$cgiV0CvBL8O-~Jvtbc>H4T9cmgCamc$qa!_8 zl5J;3JD#O)Y-3#G%lYVm@V=pU`;q3-_`QLZbV(n~K|fGZod;QYa1^EP#*N zW}s~v2`g-IafOQFI^Tu#ykrMRUU1Xl<)lE?i*6{tV;$vM=4S^Iz^B&s?5juXC!Mnr zjP}QZvr=&GZmzpfJ2&U7BGEoWw-gxAiP_h}lf3f^c{som9e8MljYX+ep3V{|;s)}S zPW2V|?tNP-BR$Jqavl0^ksMnq>(!-$p%9*LtdE)q^?oy{rM7)pWND{td1LmrOrkfr z_Yd7D`PdZDPBWEfHkF*m0d|a{`b+^z?`~%_vaSFHpcX=94blR;@Rigb&4H6EO%DbH zzS$R;eYGsFt$EyDD}l}`SLvIStbo)R(um|ILCEBuKntvSjV@I2Z;1CeU>xv|ht{)y zRNZi@gVS(rF?PdCMi9U0ZI6fDWz*zUyPcjLWEip{9(A3vVP1P}M6QrlMPOPFSs z8l<}T+apd>55)fDc`KbX*~dY|V7F$sShGg(Y9f^Er%FAf8U3MHV5>?>Z8KGRr_kj? z1;y9I`yUznc!ali(0XZFDb2Cqj6sVu&&JsT{2ArIXeC!s^Sr3MxN^aUXj<&kM`KOL zmtDyyE6nUJC(`4FnrWW)2gTISzvi1iEP`qjZqEub=L(CD6+{Hv-avKnOWL{Oa;~`+ z8Rc`gYMeT}lxC3E)a!GjJ>X%1ddF==YeZs22^#p;XcJswQdqdr=%)Ml@fPpO=nMb* zsrRK;KN(IvWW#5x;gBtQd_?RbbAiZ&cUE9IxmawIt}{I*QGiW* zg`Ee9&L|E+&g1tTE5v;LNw|c??hxA*>Zpcl_j^>)+7vf?L9`7SEH2#-FI-}OXALcFl>Uusb; z%Ut-bDehO!k}GuBNBWF>zdA&vi{;!IEw!>w{MF=HQ-FIL;($2kUe1!Wej zyyjR@^UHt+Q>p|1wajQ4&Hv>JvM=?pI13Th zMnHS5F2yPai z+#MA48LcJJ7KFxU&<1){KvcB;1pW#}p*l-ID|QgLDUf|>gKCeK@i7LKnx|gM4*f_R z0t8LOUwF_KxC%z4knpN7k`~BDx$_@B%GceO?9_X))a-qfmN{e6l=JuUv_1a%A5j+i zI%@~Ag|qI(-;SRNA}q2Ev&dxx#GC;J2}(^@8%!kEdI zvWklC9V8$JSrG}P>CgtRmj{TzOajvOyFQB!6cRKeC>Ky?tX3)>JCn`po}3+Oz=Jop z6x*a6=-aB$AdBvD%P|kl;&&_p*B@X5V1u3#d{Xz3G>YI}6*N&yv;1SbGcbH*ynvPiLJgp_EOG+aEUMotKQ57UVJw*! znuD?kHrPdMsJ@>ll<6PKyKw__G_LEDixX3psTm=c(rZWxii-@M%X%|-k4r@dc(f}D zqAaLr%cCLwz@UaMBU-W)b}&N`I?}zLPs+M@HcD;qlVZa=I-O~inni1pimaac87Jh6 z@f`!b8Oa21Oy(z91R77N9kyi7do3myuFQoBqUpU}pn8fw)TQwZ`@hEBK!0g1^}S+o zL~_w`ZLi+7gBqq^XMgfRybgyu%^GO+ATs;K^yDx#&;d?s!|+c-S8nSx^bX!t{-j8{ zp7`n0S3`8gSaHs^-_WUZ%-)n8gfHHJvK_1Y8^6&fpsNBamAW&TJ{BB%WWFnNChB(_ z!E55TvB_igV(BN3ccuSa`g8Bs@eC=s$`kZ4+TS7V2U7OO_LtJ!i{S+ZS;3?t9mT~f z8Q#Q+h=`b>#UzXJlJbTpV`f2RB;tlMk}cyuo5hgDv-UDItw`A$-Nl`h>pNiYEJo+L zDV?R0H~&0mw*BFf!`~h@F&aWL;{iYV0M6z*F;o(bnl9^rIG^1;N7Kd<#4->+Nv5k667PDA7jZS?Li zlw^Sq2t;GhG9HyC|2C!n=cE7p`lg>Z`EnU4B*1!XTD?L5+ z-yY(x;Joz;A23#KMt@J~k`nSrpn!^h*#7kJrT0aI?C<;f%o@D`9D{n_0PYlPx$CQ?TRPMSdgKmE9T!C%5eY3*^K{62b!{660 z{@1bjKkXW8+uwT(479z+5AVJF5Bd7n-~S)9{lDA$zw`jZ|7mmke`(!+&*%Rh-`^AB zzvsb!_rd?>JlLX5ka@X^%7dP7QIy>!JTx>OoVGhm4)F4{7r3bX-SaN)7Q+QNIC2QYr%43`lYVo}rcWEP zgoq}}@o6PRpk*Ok1Hfd7e{T8mYtStPl7^`wR4GPK`7&x!_n|~mq_-gEDNS6;&8xTj zX-s&^sW`Lh>l_lPyfTGfB3=pH^Vs{4)zMIayo}W4Y!riRjKO@vj|XelM_8>wHV{5n zYryX5d_H-!CwwIISk9b(gF=*NyuJF18&;julBnbQU2E#wQ&K@6zkwNE2lYp@ZFkQL z<1)CRDS>5Gr~Y`#6%TG z`_PTpj-2)NTgbB}4b7#9KW*{=kW5LmbKn~~$JJ_RNR3EhS)eqJ`4nfUZYG|WE5mO$ zSHX{9ny%6$Y3}SVZ6H||@d2omK*ilMtLIuCvT`3Q$2`)S?s5zHG7_JsQ;n<=E@B&K zpR6$KIIbvZw8Rqx2EpYB3Xe(cNPENwsDSQ< z;-%DzKQA@yETW`9>JAs|Xeh4e_&7E>e;`<>8`IMF;>1NEDP`W0g2F{NZy{yBPhXx* zAF1`LlMzWd;MFWt!)9&ghdoCI29ePk1@P8g5Mk4*$#;dr{oBbpSGAaU<*X=nIbg&v zVen5@z^uTF?AAfU`Ej_gRfk^C{6Q_xY_Mo2kZXXp5DIf5EN~@>&17|TdTRq?Mr9&t zrh{&#k<9icxE46c$Pf#9lTxe}gGE-|FbKxE=W4%~Ww^W8Knyva_W()EExmc*dH>f{ zKzaKS8@{y1S6xomH{vuE3MW70?o$aYXz!OJF-*d7@KWk*5DmVA^Wq7iwveNRwiv}oLL zmlNhOXK3A#Dh~6tFgd19+H+^CHR-z_D^14Ia~vM5Ypr$ke_Xci8>*L56vUW6Av|k3 zjCSw1n%m33z`oiY_h2wHk=dX$tfH{vZ5k8q`yTBg%-@_N4Mg z9QhUnP-liFM8_j3-?6zuldLoquv)E{U4jF0MkRA(0Peg>hwc9Uyo8@)jzL^1tc8f0 zyU-NO2(G5RplvHz{(h$0H2gT}7+~Fza|-tA9?59WsFXtVv&QSrMCYPtQY=l|!D1Pi zh=fb^9)#R`jKiA`afB=`Hen*PH*Df@v(er-0C&`hjBVpb>a4XFBwL7hQI}v2{!2^+ zw@)*CQ{c>@WLP`aJIo!UtXhwKvS;m@hQZey!#&&^I0P4;)Bxv(<<)NLq;N+fCb-B@ zs+XA9rN1$V3Vq@~RC>Z$c6L5U{)Y1Q2*R{sq=zywUP&{A(H4;r^?F0gAEiT{^qTJV zjg$JAhJ{~Qy%46}oFSpIP>C;cd+Q;C-^pLTaxuJq;x$K6@KF-y?2TT3duqGGwrXf` zM42ha?7qRQjuZ|yPV$mBTUqo8N=JN7{Nw5Q`c_}ZW3NVNdr}K^+D@#$G|aVc%6fl2 ze3i|ExpN?D6c_@4i#<&W>XO@tX*->IfHrN74_`X{Ri@U@H&EC$Tet|$eLCpiw4lq-@P~o+1ckk_P-|*ZATZ=2#BNETzh>8S zz2yK`pDJwSs6VD85T4()m^C?@*{9HfIQ-~qX3M>Y~Y=X89-#8#YC2DSHm?}*1Fu_MrdUB%Ho}2jPigGd2v`v*{ zQ}>v^>$W>TR1Jb>nLgl;^({7P5R#OD(&D2e*rFyA?%{;!Q~2gc>$ovZ(z*{oZEA;S zL@)z}k`i6FAm)cP!d88L2tji9%(Am5wY_!xfYJvmSdz4|tnd}5cCu~1q_EE4otk*= zVr@}ayI<-@9ZH(_r#A5+kbRm!?Y{-!ie6>^SJ~_6Sv@vo{i0>%V`D>IS$~FpXWTs(1@Ax{;>aA ziACh(M^(>5n~H(@qvz>bF&oYU!9t1XV^_ZV#aFRUq}7(njrbXV;a0f##BQQpml=w?^ERmZ&WeEz%T-1Ix+bHt-1&E?NMc*gC?@8n?deu3jDBfb66e^#_E zxug16()*7g>B^kKtecT#CQeoze%)tZQf1A;*??t&USwue4*3{(+1Xr)%O0h2?(jYz zsXrbDOp*Y1l}6Ww92!YE2j0f`x|+$#?gL|0_e+U*3vri&Ba<^aV_^O_yUREm(7LJp+ZSkMgk zcsdxiqV<4blasEVmAYTs?*az+BbKv{?xiC-#GKh}iSOdHBUNKM92vJ682oB^h39|0 zK^V>t8$uQB3K!o_Sj6a42w%vQHwT(hkv~5;1UcG@1vxE$A6r;#_(iORIjzQTcP5u^ zX{2Lz$6z_r8;t=HA%k1dMvWUI7f%ccnJ#~lXpc*xDxu~1BD@!6GYPVWGqJ96P;Opx zXWmvKHp)BHJfa3#ugEg}B+nDb$r1uISDbMd>J*Ro2te?9GdY@I707-t0)7!)GY_sX zmuUd!!|{)%!`L?0!@XBuB(3raMArXj=NO-&cTQ}T@adRq6-LqkLihLzbJ@0OpWi$u zrOG!tjnBfgLEg!EOmm~y#fG4pwdu8MBpc|4}sZY zCw#J#!aEMw1yi`Th(65_!Gt?W?lc)g%IP^bG&_dk_UH4tB8HV^m~Ue))t}!=*y# z-q`cT-M!ao@|y!T*7^w77mf0X{Tb<{H5JncVO;&Y{7s%F@IwA)yx6)k*caBP*Qiuk zb-KJ3Srvp}A4pOPIk2}1F(f-~R3-!8S}T;UHc!djfJ+^%(`$GyNZDGEVw)G-BOq%j z<3NX(dz3itHB-p6fXP^}{YyX>F^N@WX2hcutJu|^S{uS8dfKr8qp+X*&8$`?1o++S zAy}WvR~{>;wcNSzCP9d_N`?Uk9}hgOE>+QrPL*(4a-fOy_22fjd-L9^xLw4e|smqwX+YzTS5O-VPd;v9D59|B(UZ}Xg%BePf0(_B?xL4g-NGg z=^F1;oZA#tGml|k-Nh_HmBCCT-tHg{DQl3 z&PE1cKIP~g(@`RehjvsNyH-|^5DOpS5qkF?pIZnZhDvNx03R;HyoZnPy>oX@KYZ@u zxCTh;tE=CBI$VKU8K^}?9>Ke6k-R1cRFN3L5FvwoN8of6uHyJs%=tQ5H9^x$|bn$&^c{c@F%tEoMDi>x{;?aQ@WR))yLCVHqaGy&iBz zCTd|ENo+n=JO-;^4-Y)+aDvwM*zQY!SSS$8Qp)#^rv&b--smY_o(=^PM}e10GV#!N z52?W+k_LNa@Bb`i&tL@V?22gpW#hqu_QT8J^#q@>nB!aKikT951r?OX>p=kly?l3W zs!G{aP%YO@rvN5qZtodea2yD}O<5=)v2Q)7O_AFKbqd!6zO{7!w-P^O5I*l3~ z?4GU;pXL(OvkOr~(-sUpXFFcha%VIXv*-}PfyPWPQw0nr69ns7(Doa|1ql`A@ zd6>beHC>lnx|skO1RSjAI2;~fQ6wfUS$ILPqIqwv;1FFab{!l+OS&9%PdIEsz44{X zxt5f7kC_YKZ_8NSv*b0@M5G&^tE^mWv%-&xbLpQ7H~QzE`#;#&@4eZPnF29b$oOz*_CeijA9O z7}COO{=@-5I052ZRh-3-& zX_bqix{1nn5Vy>Ok6>IrVLqMKFw6axCZ}bIsMe-FdNmNH2Cs!@)rE^Wp7gEbont+c z$=aBPUt9=0{`LJ$@mP-QLH~(2y+^YH8CbFx@_ZX5IyR*wiS>*f0u2|P;rjkVeQ>Mu zz-sW0YworTO(b!Ds)JXUrQL*rrmKosvFr~z4Ev2ZYA87!Q0Od0AuBPGq&~N#%?EV( zzH^u&qs5oR%Qz+%Jz+Las0&5ne~?deagwK7(#q|q*Oq8I5dAKpaquJtETD;vD- zLi-kWuN1_q6?*nda?J{?dIYynFX|Zn!p>H0>KVPvk_P^MHPTy5ys)!O;G)9x)O0@O zFSU61&usXxl#TboWVpj7@0*OD8V_(6TeBWCa0thoH?p*`aN|=-4tNHbx0!kq(%Kkl z0~H#Lv9+RC zRe5oGz!-L-1aQ43KdTKjzjtP;g}zq{XRc*6t5nI)kmi2vZ*_LT{R=H#l78rGS&dIh z1wBV@sBsGSWcX@M`PwYGMHI9Nw$BODw8d^!fc{LZyXr;1=vM6Z;H^$HP|L8tMw2#? zZzv|B7~lttw|;_bx8xi!za{EC{-eGsbl{gf1l{tQ@x|EulW-WZ3-|j_b~-_#NidXz z{a$C)^=quHDycn!+LeoSjLg32UGGUU;?wED7?j1VJ4gz-r$^uz4eFE(q60tJ;}){3 z$88Pd5k?xH7TdexhhHS=#o_r&Rj94Wz`rX2oa8K0q|xrs!2I5aOAinG>6Qzz@wu#< zK;*{?T7XK;GDQKp*xzJL1Q8Zq!?Am#7BOBR=qWbNhhR$(ff({7DAr}>x8|jN0Yy69 z!YLgM1uU@)KT`3Ve+62T7OnK|Ddu~Ouc;V@h@fVx%`{i``u*4Hk&#t?OaFu(Ft{}~ z0u=(gqgH@L9_`@>#x1`$k@mWI`2w3NdhB$m-MSN7q29K=cfqXOj8{p|OhhI({lxk< za3JjU?w{!1+OulpX&)12WDFE%F!5<7I+9yI%-r%N1VGTAxdDvXA1?i&%CypK*93Ku_ zKT5K;q&?sO;HI+;bBK6-*p@St-y|gP+Q-=VOn&Fua`8cdV+9>T@Xg;IpbqRf-_&G( zqVMiX;o^O_*`us9?#B_Ex8t}!71Yx_1%9A}t(Ft%OK74JoAV6Gk~^idqWuG1-GG;i zJm);Eg6^R1@ta8`)(=jWQ%W(s!gNOlX(jA|wq)m+{eF)nG|+w|Wck&Q)2V-LF0X@h zPuav|@}-;kELw2?y*j zFw0#LAZF0<(eJc*kD%Hf_3Mdx!R6B-I(8)S=~sT@fWO&1d($uFTHsvW(t7>H%%^Bp zHk-OhBZLQ1vl0UrydLlu36Qe_q=^Sp?|Z$Yw~yZ~st-d?i;pQ+Z3Lj8oM*Qs3c9PXFT+bGx@=y7{ggm<1Wv^j(5465Goy{hF-P6QO z5zRq~2cv$dOZin-B{4E=O(>E>nq=SbhxqMsLu=hI(YXh{N;kr=4hEKJO3XxtUD%_2Wu4{^Q{dx80WFku5M&mzaK)uYNGVdBHg zO=4g;EKOIdrpLF*E9IyXYZ3%q19x#!ZjIA*^6&{O`?6@mCpD_w{-r!Vb_us(uPCuN z4^#!Ng?9ioR3EP;e1=-5%7fT0bKn)x-fW+M%?CjRHDhTHWaUbuT?%}X_xikptlAm` zJ64rTixh@-X@m7AF2QZ>1qWOXEt_iO<0bNcuLt%ace-)XqG%U!2q6@5-dvGz=Z2G= z7mJrrv?9XmYClo8S=CMBDR;@~<3mZ5H_#O0?(E(I@y>*p zZ1ib{I{dW4rBIf=SfeIiBycaJYr^H`zh)Jm@)T{}>tsQ1%n4@|u)Icd=k1ggPNlS; z?WHeVW2FUTLN6SrbIEW*WZ(pfJ|B>@J6`WdZ8`tzXcmJJ{>XYL02EqMBVznFmT6Z| zAus^EG+FLWsa&lv9P-ievsMj7$AYViXd2GU$kR}DO%MEf<1m?g9Gh!ti4=;T;?#vK z&)$)_qaFS<+<&RJbZ9wb9JQ5z>%U{G(JSyQZgPI>%y1km**DYYIx8l41J1PtFTxhTO=+f~~ITVM0g+HqwlzH(2@U zF51j}VR+rxA06+ytwS4M$p=Oeu_0W-JrF*qkU_rt2AIBa zi+a{BMfI+q7^8BsHVNh;NLg{=#*Bu^v9SXA+)|BDkHvc8A>~<08mhZJ1?E6O#_L*pAS3+8t;ViK(BZh=DLg`YnFZgV}`^VTv$ z^uR2Fz}WnFE2Cq*Cb;Wu+$pgbi;EK{1_zgOikctF&adBqS>3&}+dm%QQC*fe5yxNm z!yl*FW_v=Q_sik@XJg0u9+-pD-m1Dm4AcWM!tygjxuL06MqujB9S_w`H9h}YQNat4 zcZ79GR5AUoQ&u$C4skPhDpMgnvGFN(%cxho$2P6*I?oIb*ZWNO2SC6>vvg?yFU1+P zUGOfKm4FnDimi`K%wIIuagQA9KAtgGIHdS*_%!@-bt?tQ=6oaW^iu6q0AJr-=X7t{ zscN(Xi~q4T>e$)Y`1o;1z5$BIe#`B6w)zJqRvm^k+jT|H>?TJWchm4)6jdT~!dnC~ zuXiWpp4bM^KcGt7yi^kKbqDVG92rMSlcf1eb~ms6i%X{PJ2J& zjY+++e$-Lrq*#~wfyZ`_;b-53(U!*OH^1`J)qqcV-N0fdSm2iIF*3WwRb?+pA+1GQb=pNj5Dal%&);F*b#o3ctv-%|caBzS$ zI;V_nUr?6X`nY}!191=VDJZuigkAR;)2y}IU?=1}r-%0Gq0h3{QK*~?*huOD=askh zQzEK8|70t?eBt3^b)2)D>o`39`NYunc9%b{2pOerVaBaHO8cA09}Lt9nn>qWoLOT=%LpL5oP|F%poj!sMA(^B>-GF+Nz9g041< z2d+%Fe5ViC_LE)WlwwVqUtM zrK;ey-7f>>c3y+>2utiCNytlv{qRn>FzuQF>zNpB`mA#?R(|y%E@(N$=((OC`N{OH zKpfrNn<7eDuNE7gK3&}JFDC!xr%EHO2zp6(BLLXXdiiYNZzt@RQt#~{;oKsck7xiu z2j#3q3;yZ5aIk;ex``4M9`2CP;@rEyfb{s=Kr-Z-xsr#-X})r|vH5oRCW`7))U$W0 zDn7A?D_Pq5)iY8D23Do}eZ58@X#Hgtk)EzIpy^5j%&2gf7>>4k168Fwpl+sNY(Na3 zvolk_ReTXd&0zX|kWHsGFsc?!#3motQ+4=6xEEE03|zSUt-aK6dt+J0jSBMqi(zyx z`bAyHzB4S_X0fg<+Tx;a^EB|2%BCG3H2-F$1qDA|xnVzu#ti)Wmp{Cr;)d(K;iOje zC}&3`)?B*s{JxOXB5b_c@$QXCoa9D~bo>|2FK&{oM6T9|KL)|9e8Xn^Ls0oe!2Eiq za4vXx_05}7q2H&S!PHit?4F`=y5$OC8skLpxdKB<+h<9?&jo&K!9K88uCf$j<2#*z z;NLDb{qU$4>Ia&3=qU4dFhO;~v}Ut;<1HQ*nu5U>u0`bMQa|I$nVH{bwT$2jq$m?E zC0|kPPgSspFVB!knj>@h46KItuaXi8j15b3a`7+R96hdE;Mw;N zcOIcj`is``W=vKJyG-Xkk|4MMB54d67{^!Ze>Au3O_h>R>&}Rb4Rp2Zg16qm^8x}4 zY;G1Zho{kx5qz#zjMM}miRvNz-pi6<^)j8Di4}`8vGKyBvckXFYP9=ctF80+bEN;l z-g`zhnRf4^IL@eJLq!3pDheV(=v82BAObQ72oeHHr1ug6gn*6%(ovA!l+a5sbO^-) zM7kkBs0q>u%>Mu{D?B_Q_r0HeUwiLs@2mDO4d?o4 z7o=b4P4R3GCrHiAEw{2C%X^wO(_+MNRSHq@t^6M39oJ^{3!il=M? zaWleQn58x(WYAA#x`Cl6=MvMJR1W_zxib@YenT0y-27#lXb z7wAA$!f!}P7fNk}Nd<+G37Uu2=5Mm~{&CyW1Pjx2R7@vsl^!Pkiex2ReW=jCX?DIk z;6%orrcV51qn{6&jo12Pre6Wk(fNYFegd9QJD_MWr7oc@yIqI)wF5Y+Bjf)qEgE5->JK98G|a8&)iG zzIyKYkUuV+q2WsRvS)%bG8i4-lL~%8Io(|Y>x!U0E;UEJselL{^b1%#H{tbCY~_4H zha1~2c6D#rH*C342xxJB7fqA#0-Xu2{2pEvhP2u`4`T-Z~EdB z{;nB6QjNi#9e^$t-c<;S9DV+2QWyUCM!mmd)0WHqmss-n+0DbkmqGKK9gO2jy#zuk z-#LS3)x13({eoafUR%!^wd9qeNa?%+$ zb%XQJoyB4MT!E}BNTf9HGBK4;J0d-e#MES5+}dh6BaWw8M)OSel(Vo)rnbhHBmqg- zj~`ediE46DUQ=Zrvk2{Z{xUm8&35N;mPzVAM*D7Xl4)>B*7Ad}&-c|g>H)>tCv(-s z#p$^z4e}7`+}G=Y@(Tlfox3~L(1o|34)vOJ)PX8u_Ld)hdS`}9$w&$KvHbGz{W`We zxJF#_%&P}EOGzGO>f!X*G_1YBbx6(Ch5oEFw@*;RB+dBjG|s(Zti{~MJ!oG>yTf;u zlNaS8@0O{xoAo%JZ0!3&QHu-s^m+m~6#pW)ypwX|zoV+rx+!oya%|b04Aj~Gs>UpW z+-BlpmhG?onss7oUgqZqSgG@V^*U<`T>ks8oH-4I|1r( zc;?S4q?8G>KQhaX9GjM9qXmM{tgd(W$6r*#FazdwqK_^5;-?0sYx)#jw44mCr)l&y z-m6<~e*^Vt*n5)I`onZC*kMerCS6fUKXg)Wd3=Y7@*uwmEP_wSw&@yx?T5!tV1hr% z!>bsiR6?UV5&1j@r=|plU59A@wV5nvto7p-Eytn@!5W_adfB4_*(Gck#;8>fD_0?D zq-7D3iVz+M&Z*w$^GQ9rytxJwupt&hWzM&yP2ivNAP2zvU*%%L4f)%>ha2BM#6k1f zFbNl}%KPK}$guU!j?Wd`Q(pc>rs6jdLGmvdasQab$D$Rn-{b#PAK8EF+SKA8_dmK9 zCWrS^TL1Gpck@5h;Qu`R-(T|lcM$;V`2TGY*4dZe{6i(VM)C^X%&hqpfHbt^%8)Cv z06hCxWcZ&wAnz_6`9Ey=UyVTjSns<_KRw_3Dy1!+;63-`07M!2IKmYTCe$`KX;{7X6gMbC)$z99EnO&~?t*pR>wtKm< zc3&zvsewCfT)SiQyJumd+`is4Rs2~PP%Bs33*+Ib&z=6C+vucn#CdqGzW)y55Vk*| z%#O{^oP{+u`1kE!4!k}(;kJL{`8d7*6n~V@;ZokNpX}rgw6&DHJpJ>6?cV+W=c@7k zL;v>XVQ4|q*}h?B2a-829*2Je%xqbE=m!h#Uysp~IuYStg0yrmM@Jj6vb)UJqWibV z*KX@87qSEFV1BeRpzPqCKyhAO2bFk^XwImb4y@nn1oS!%odFtP{=+lSWIhpH~f25APgF>mfFAQ=hbHZ3^H6n$yZLNuLSc()F1@ngS>&>JTo zdVt59y>Bt^@{lwGYr$I_75xG3hJ!YT8Ah)D%-!L#!~Au*++cQCbQ^bVc+2kj3$&i0 zN5)ib-Id4J28L6{m4%HxYRo@dmRC!=+UW|V&L&VvggBnRjKb` z<}eRxCD?dW#86~+n)nr9W5+PuRQ;K+Z|pib0)-ua&ls+sNVP@*YQl+Llk@7VV2|Q} zWY5SpmDCJW(+_6;HV@Ag@%^pw%D(;I?@U7mFz16UIE+cH)tm)USH*Qf7#AbL2 z_0}3K%{(1mCG_ym=e;l%QyWd&0;_XYu2lIQM{{A?1D#*kBRCSe#ND%_n02nm&T2yK;6mj|7IHV^+o#Lx?ILK>!^E$ce?Ew1ve} z2gKr9Dk~H8o%*GF<(0=PKuuy!89>K7@@e^4m0Eo0H;b`N+)~TvoQSD%SJu4?_d;#o60su}`2|+UM zdgfd~$|%*<1V@`Hg$G2Ovr7{^5k}2T+1nnB)ioqP-U5Y%UJRviM?M9Du%RVN)&U-| z^R=>H$nM^I5B=*_qvLwqPz9g87FONIPJ8TpzD+kxlHE)#RN9FH7M9{xmHcKcz}8q9 z82eb*d62rDNymg(vv#$gT3@dWQxXfiu!E@H9&;`|mxq{`>%W6|>aSr>?WA0M`Mxs8 z1@x@Gblmj)QxqXZe=jpZiri3w*&ZwWbM4y1>o7O;;uk&|KknFunDkq~F}A2K7M&E5 zKv67|E3{C**2_3Qb_sm9XqZ~i*UVJOZc}O{6 zF7p^F(G4B9%4#t!Ugo_a24-@r+7(=5`g+`;=1-5_rpHa)-iu~x?z?1^*~L$IBFfJa z_Kdh1&r6Hp1;}(>t>C;Do48SI;WgJ9z%|{s;*XfTQuw3rPg|kJ z8kL~=wyYa+oSm@U0YHn9)N;y8gj*l3$jmUrS5d!P?QE?(V>Nd_bQh$=QGaw7LE#g_ zro5jg&!HDzf@0oe^iU#B4z2nKS06?eDq=$P5jL#LsYA&@$)|s4|H8N65t}k8XE%NOOzRiccJ(`kq!{hu{WW)xeY7pVXk0Or z%jfcZYXVdF{t9}b$3eKsYc*%tvfTS0$Ffi1BQ;8>>P(H4ea8!7RUZ|dNI)Oze-rrr z+s8%`FE97VkvFwB06a>%4HnLGyu7TT3BS7sd9Bj)Kl`##QKm%O3}b}FFr=J1YofR} zp9T>=#ZWt`2}d0oh>#8EsF{I|rco=%0&gEZ-nmhB?Bz7cz7w*3?#o_9V{nO#@kC9U zf8|vAFFZfakC`f|KJ5ieczVPrjekP-2A?c!?53Auwz-8kwocdFW*Y*niFdx0XH%ng z?%^feZMup=UDrpc_L?>E&UC>2oNT32jst@XuGu^~Q>A?67{USO>7uH#$C1W^kN zg}+x;aV?D)djWjSwfi5YLJNBZe?vmI_R)g8COpjBUoQ25B_AfFAwqx923;DOXLVy- zC|jawkB{g1Uu6~e57e~=5wqE`&ZespFTRRyJSr?$@%=u|Jq_YAxo+R7>urrGI^eCA zFCEt}P2QEO#i8SdO_Liz>sSyM2>qhsFl8zNmW0%;1^{b8Dl^60nuM-yR75R@FE)t{ z>)N-Lut*L!)*^12Fya)6Fr)QD|B>B97OzWC0|?%#hj+m zqqZLXLOe+qjkSluES?R*j53qr#yeBgmD&%;?xf#t2rjI(!j&mbZ3yp9ChG*Gj>GSG zusAM$s(LFIUajsU8w&UFGV`f^Be~>GYy9!LK5Pb-(lxEuBD#;AR_Mp-^G)>JAE)W0 z>Ii8C4}W6w>oH~Oudi-4>Ch|N${L+LN=^F1R2Pg^f=qz9{0Cvi_zYoBkYN}vI>#ld zbKG{tC>~7j6vZo=7YL19AeVU7Q?-b6Bn2j?WHF5K(f9L@eWG$3E98_&ZfKfopzrow zfb+)CuiW43Q<5kG$yv(?rAxT2hFsRNnKKsp3;3wnNpQOeV@Rmwbq#+ z8~~?%+i?82Y@F$Yn{G653OXd$7~0Yc9q$>=pUQHC*rsNcp;tC-2()!%nH#8xEG=N% zLx3uH>A%fQYV4sm=*+}{GznulDWyoO8aw>F4xH(4Y{uGFkOwU_&0ZkDSM zWb<8xOT4OeedoGOf|7CVoAlPpIix+?kRQ0MLLGbAN)aR+2hoDJC4 zO%fp%0q|7(axHp^Hip8$d%CwjXJuTZ*ruZc+T$rkA)I3g{40S2sTg8onXvM=MniO? zPs$R(6fyu#2Q)^gS>RSHri5-&YA z32xT2Myw$oXq{+1VR*(1x9HS~TCp?k=i-;xwf89>S5{{6>3)~MM3FC{6-|&h25W8< z`P9LEY{D(O%Ln1bT(H^+4>Fygx$M#6JK%B}542KnHM?H!9QM$P4Tt)YY0q3x!FUH- zxVyL1BAdoBs2{@2@Hw@0I`9Bg_%1gVyUFf>k(rbUCz{s75pqV^PFg77g;gb%ECs7| zp4<3U<>;<7K9a*bC2ojkm=To!QXO!bb43g}Ew&3h@{DR}VW0x1vTF>3?NAAW!%Ct) zHGgIZS@?BlX2=t(WTLx1+C`4r5^gzFsbH?lwvi@vKJ1a~(ApVC544}=9d_(lg;VA! z=}T8VLyRgi_~uQ@1EqaMJA%*iUfB>`mWFicxh$jyG9G&5eLgVD`^%YuB8C|32^8~Lr_w0~mu zb=LHfK~ivrbSgTboI3JGIN+){&vRS3TKCxTThF%mFlA47APR8~8tG>}uWWvXw`pD( z&&_yD!|cc;9jn}#JOVr-o`)#J*2BTTs_MT4VVy%AO)5smg z&56d{W#$ZP28Ka$L9<_}y6xgRMkMBXCdQLGG!w&VP#ZD#h#fg2aUQZUz^h?oJo1K2 zl;~;|1BEcKfJ_yPdXIRL44iMqrbfTk$f-U`O)v6$y?RpuR@R%S`$BD-aBn(G5bYwS&Y|*WfM6adY5a?5}!1yu`cXS*UOK@T~XNr{Z&hm!c zqkIK1aU(eKdn46XO5NaZzZz*-&kuF=`1l*bhLSb$65ezpv!UygXBtZ@x_mUn#6w4` z?S4y5=uDxooZB))V#en&jcdNXf^|}`-7j;sdlb@qJ=D0*Sy8nBK&VPiPu=BmngcJ4 zF*)?+mB|y*#IwT0IVVlQN&0T6WkoD8f!~h)adx0HXP5c?%chSG_wf$&NBe62A;2xz zy4yB{ynZn|^O20I6qgMl9ZXnEfD(7Ep`F+f4hmY@clP4C0*t!#ZWFz}X08lMC2im{ zm;IJe!TnjlY|#h(U{=#yIMNnAcMrB@9GWct%tnm2s7E-C2Gi)e9@zh1}ZC$7D3tMXIFP`~fLuWas z#2Fd_2jd_u8!Oc;QRxk@K6=AAy-2IC?l8~C?8?c|aD}yl4R2-8PL$QanK89vE6biz z^d`raT?VVzSV$U$%@gnc%F4LkG%gm`liFV9B-z0Sj`66UUB)amu0KHI)z%xrg0j)vsrsu_%4kW`bYotsQ*8Vc5{g>4Yz~#opdrC7ZFdI+SJo#q z!#H2&xH|zGd@gMr;~FLecu@m3Y`Pv^KG6?3dSHYoS|oI*w@fe24(z%zA zb(Op4sEf9{YT-1nj8l6Om%eyx9!z({wZ(B4T4KWcJGh(4+-t}bEyK`^LG-dgQRh&} z=}ih4rQu?^B@XW9t#L?gw(cFLePe8Ys7Bw>%dlNRgoN3+mz?)~o?nEd1+KP@o_QID zq!I4O#mer?+~)1L-G)6&s7odF?>_k>)cfgE;)V8O`j?2KN_&n^A%sNOyuMhX$BkTf z=-7d;jVZ;DRt1J_WwaVN13KIMz6!Tkq?&zxW#YcamuZ?=asTyJ>G(Mz_Q}M8;QEz1 zG45qb+0hQMsWwZ4APOI*2x&RgFRg8z<~Am%A_Ld|?yQ}dMT~#3Sc}L!li(hxma&=c zcgzrZ?yqaaRoO%F3(4gNTlyWk!axuyaH8K7_s^}8q#j25&dB)b-;$U*@j(gh+F})5 zpH>n1w3ilR>#VJ>GaYZVf+edE+T>}K9yNXNQ=)1+XkazkwyT1sHL_R#DO&DUYA&yR*K28$OBl1ti$pJk>N zE$+U5mZ_QOaSi)75O{7l6omD!tUXSbBId5iaS14Y`;j z=g)VU*cB$!j8wPLlBq;dTj#7b?5+*lb_w6KGpnqd9?JLe(=gM%hq$OwH{69W2FWMW+F+T_ZONni5ke{$e!enhAE_#g{Yv*uw?D6ygJ*`pdyqE?=Z z{&@F6o+rQh;%hMKU*+jh5DZF2Ug+BWho7pkc_q(2`sgSbB9;9eDt91;{-KYmsS26Rt6~Khh>Q{vl+DB3fZyvt8sW^w<2dlwqK(3XKAxqc|L#q0kxHMrK}_=<-j#EwDfYKiEjWjw&mts8;@6(loC_t`P=+j;?16pPd|K#4N5A_^TdtJz~|xM#0^00!v`jr z`{t0I3GxzyS4c2hO*VyjGWNmb2#fJ}H$HaStFLA}ks_}<+#B0Q_}yg5i1 zihK70ALN%;=y}_kbDaGu!e_@O?5!GKd&6g zLhp%x`>?Y|_hCJ$5s&MQ9!XUy)LWX2w)z6?AlwB_YZS(NkuntcKHzU9kp(ZI3bgDY zy~UR`@VHgSO`Y!D>EHPdc_HX3{7C5DTn6g>=&9><7Ke|;_Gc=CC>fddw=ow5u`8L~ zp05_IX$A)eRjE~LU5#RwFMe5b)*_oCfqsig>HY4c;^>S{hmM)~Dbvhc-)eK2WlFkp zX~l!X&m&$dNAU10$>u)JD|}sWMf~q-H+}kac9FLw;wok3RVg{io~$&zd>yp^J#jyxO_%#uWXY__-x1vC@Q$H+N1+!3slzVD8eMA@16w z8y66CCl@1DCu`X#-U4%_L0w3wJME_DAZ>J%a4MFem{Gp-WG5rJV{E8UjwB>23sbP7 zW3@dNwMx7W038H(fz;yS#@56+cJ5W%b9SB+BD@1#WDHg&13ZChX}OX?akcNy0=2X1 zLAY5^vwZs>^aAISiU&YOc@E-Q5=Z$g>d4!1OxF0Ki*mAz@a95($IWMoUrdsMCS=i3 z?&n{s@-3Ld>XDlLTlb;Lvcf75)N_QI9t`5QENtX;xAIdLO!(E2=PR?WHEO)s+QrwM z#!>1!uI<(Hj^*p3HN?U5ElE1r%gzrBh3$8|$Er399qt>w(6a79xu*Giz?3Fg_(f<= z6YQ;-0XI&MY1|fh^*dj%r@Y|zX;aMB0)bRf7D8}a}P+Ip~ zb;J&(2#CuOl+yUtgD#sX%wJ!7qT?x|Yd$4eUw>do@e^}K2xfih>di$1i(vx~Y1i}D zlE-Izpd|V9I>pV-^^}+Ir^exEwz{!#XwfUtFa39zrHSMvUz6GN_`;cuXXS>J?IUeh z>Kj{;lr{+z3k=jyA@3)Dng%c@-=+_yhd{U~Z;YR&chx& z=bK2UD_jnLzFj+(Km0JKOf(J?(w`Vu+d#$aePI-X;Im$jHMB27htx*&<#sas)qYLd z1M$C70)dlAzjClkf`zje#RapCTlvD-ft%IFwURLVNYJc@%l~+neKLEPsSROB$V-Rw zhYyuD7RaU-LHkgK_Faj|7!JLD)_pKKa4uW|I1U$&YAIE0obyFD%Bk`%LVn@703wRO zgk#JmwX0y3%5UEwe_OXD(5P1MRs-$y+*d;~_n2^`9!2sl>pSEk}TdzNvd#)=|tU0=fx#nN$AWdQp1()7a;X@ zuRg=I5R8RZ9-zxa@eLslu1^l8)Jzq1R#o6;jaH_|UL2;xG79ZquU9ou-XF|Zw9toW z`uKzW*w1+wIlW)z9W5WcY!dK{s+&WarFz88I$5L8yK&++iv{@w%FQ`VtZ&nM3Ht_O zIT*j{a)dD%shMTF7o8g6dL%>_RHI$rknLFQ{V^ewpL_P@CBUJjFcc&WL2E$%9nu z=4NK7dl=Z%Oj@>NZB$7$l-g8*;cj>2Kg^O)5i6~X@^w<}14>h$v3i=Kly{PGilf>BsrT1H9IbZ_-iv(zKNaS9{1>Sn z@mpD{rP031a&+OnEcr?~>w(>i3|;K?=z34C!gzqLXhP`sO$Ax7Fn0Wvn4DARs%V!FkoN-6L?cvej}wXy{qI4n$pFXMp5}8c;y0pj${BCAE-9B5~oP zOE8Sj=-aR9Uq}4!>Z{#F&>gsKM7RC!EBeT6G>b71aHTxSA=diU4>hAsN@C z)HPKqN+l_oOm2^EzUp@#Q};SPUPPcp zCC89fu1olB(Z9mPWckHQg)XbJROxYa)uxCi*TwQKTGgViFmz2<+1pcP!G&Y^FKZM5lGCANzE&0O*^fy@ly6!%x}PytkHrLmKDM8#o1%r@}ai@ z%TQLvy7V|1tklBZp)6=g)?S#*^ws`^_d8^0kfiq1y0?rZh_&{k7Hw{H9*c=NC=@n{ zRdfy5ukK>^v7G6>Uu(+cx--U<@k!dnlgob|Rx5GxzozLse-dXCZ3w}#{*=rWsRzSt zb`aU~zs1=7YEHFwNvM|y2UDtCNud&MF*Xn;8Cj7C$hFR~rbb)06WRcCp`<&!D zI%d5(n?AQ3PMuv!p%lBVsR#vO>!C(Q6qTik)AL~!a(4%au7le0>^qgS{*DiyRgHa3 zVW+88^v)_>+=(-ck?-t)$p7l>y%o=uz0hG!@qw2^W^Io`$u`s*9Q z*^0z*^VJwJIjrx~NA3Dh=Had)059RRGV=n=h3&fk{@T0Z3F-LJSEhs?%i*uyOiUU6 z13IQQ0#vj{2&b;=p1xI?f6On!{fJ{;VTno|sD~-V&(?O$>_2|`!k$Y__5q%EOQfSf zQCmz_EBdBRPia|Gk@#9p;#r>Omjv#4F9ugi^uMK^TU&LGw_kDcxt^TFw%TS{|M$LQhyh96NVx$6j`)pM(hlAnPu%x3I6m!Lh6{RC1gw z$6qvJPVeqll2x=={uDW~bXDq6bG1YU;gW=sv<7@Rzi~bni|_7@n(tuq%sBfY(&;w@ zvMV}RQ+{9QKME~8Vhb62E-lR>Sg;m?v1T?IkIy{iSK8EOfgd*|r8kBaYDe3Zm6)2r zKzAw`LLzOGK#7w@y-v)Zv+)lz?A8&O+TW@O)1O;~mjC>7tJL|ju>^b7pwP&xy*a{1 z4AWAgN^1nOQzIH*G+BOI&6d;M^EN$4iVns#9-VJFU=L42hs??0u*3(Bd!W~y0CMHdq9|?&c{Saas z#Y4ud39rcT`2`F8r7&3-&;_e2+>1`o4`_&({yWH&ICusu-UYIWuO~X8>ViJ-vXsaB z0m`Dk$#430_l0ab7+X!Fqf@2#gdUwh7Ck$_(?B%tR^4jU5u#Dok4-&3BGC53leu|f zzBl1W@+yUX`d7HE=qK&pD{=8DPxVgv_TjCJ)c7#vs#Ox_&C_2;1wkrxH776F+BK#? zfMogBtsyzkrrJ9=j9XVhZ-@bCU(A@%bDqzASp4?lO%4Bb6Eb3pXNH*0l0;vVVg^ z9$NNb=Px8LtElH-hswl|-4hCL4PSB{jls5=51fFh4;AF$Y>b=t&c-b&I9YsmompFI zl|IMJ6Ko1mrod~+DLh;wU%94V)_SxATBdH&*ZBX9T~6Dr#QBK-QNMDVzU;5J8IKOy zx}OdlPmyc&;5=w#&-%)mu}j^wVq9_M@`%6cFm65MFz)t#YGQaviDBzyGXAO~+vbs_ z_MJaA|KO_{Hnoh6k1q`I_jfW}z1ptFn*?dBmZroAi%-CZ^@rE)soemL)oqc6>sX?A zouw!s3^jI9-O9HmzNIL&&9`FSv(J^K5Q~st4^y(b4f)X}4JR#N>oLt)zUC-Kr@9m>WU=-tIKj$^kn5bwX*- zlxSVjf(1-hccack>v0ZyU53LQkK@XWb8*~?x!I*1ZpC)q9pVb^7O{y_X%fv{w3WXo z2|FPu;*rq*R8LrPt66>g6~YI!QBe}bV%)S1Q_=NU$_T`sde8pT-J^Ip)1?HZPzCGr zar}^g%~|OhuX;~5&jm8C*-EnOJ?1!cKj*eUHvXZ=`{-8`x4g+af1rBAl;0YdLh7}T zLKUbt-ED38j9;$1ho-9P^|59GOs2jG*6!g(f=>iMNDyHaEzQH{?=%Umb%j%7e-NPYCbUJspZI8^Lx1np1huSt=yS$(f>a)&yqFbV-!sy0b zJl${&gTgpGX*o}+53q(QpC$Mt!{q{M8IQS6U~=c@CC-SAt4pltTI%s8V6p;U&#yu) z1<8}1^KN0v08#x+Ns~+(6U^K^A9Xl6N@ENiF+y^7b_Y$#eO1x-AkrDH^+t%ws+y=4 znPH#Y)o}@UZEeXNT9q$-a(V|_$Z%eFmp*jxVD;W` z86Z$dHW`d>@w4>oOw64-g!Eqy-m_Y=CN6e<_>!nKm7ivotT)(60w_%a#ucLYv9Z&# zT0*D-I}j&d!@{NT?cA_%846vZqN%BcLOJLwGs1jQadwdcV%!V15JjnlA!R*3H-!I! zFMf<9)TiYtq2=_{XZ%~c1Q>o761AnSZ)eA6m!>4;O3BD8Xwe=|8dx>rkjI-PTvIJ^ zW#Omu_3c+W-762g1~QXShgI!N<#M1tc4O)r{Lh(SgkQ#*bK0tQ%hWB#yNi8gF$;Sp z`3KFta4b-7l>1uzXADI>DMm@OOQ(LHyQrk#H^2V*EXGX0%eddPWc5aR@zk)=2SVM> z_q3#nIEZYQre@-7N_kmrqk?PVY~$Rp%?*r%MnpIh$?)x?1NFXyE=Tb=qFW~RrQgOg zzJ+04b-15v;)W?FuwDv>RjMc&bLnc7k(j{$DG5+DWwk$zR_bVKEADK#bE-A{-WckX zwWyR3Rk~DfG;560kVkpTW8j%9_lJhdsHBA}3fk2-RM(y3N9Ne(+j3G|FPG97%4){d zNwhXS%DH%%xvnr3|0aWPv#F4{H?>fVCcW8}oJ;U?Qy!-G-M>+Z)?f&<9qB50oVy$G z3|04`Qq)HhUf58HRqdqp_F6S!e*gn0z+iivcJdhf;dL@zDcSow)Bb@mZGx0IL?*%V zT7R%Nod~Jz3-O$TtGBr$3kM|@hMBqodtn2Fw!?%(KfJEimXkHvbE=p#G6&g+>@zIH z<SoR{3lkg*1B8_Q%E*au z%M*o*h3)wzbV_3WR4ryS;Tx=lWF?xO?l!Ylx`*M0&#W9$t7_t|#| z{UkN>lSEZRYp1aYXUb6;5@Bo(qYIoHA)djyR-4u?tli?-9g+&T1BGpX3(V@jsXYp9 zv)`z59Xu04$EW4+{wY^up(T;JV#LXB;io+b2WaC#qOuOzwk^mN&ro7Ls`>InkO%}6&ze4@dn@;_as1LAIT6~msLr?Rz&w7OlRumL!8|Pe& zH_3{tx3d$MNxdF*rOQbtYnO`$h|6A~znKZ(s@vS-SwZuvIq3a}B>Yp(_bTRAfZN#1 zh?EkScqM(?$d2VFz4(^QV>s9E0*;*m{F3Zu+VW^NuSox4Zyl`eIQW&b4F913QY=pV zs+_G(lUj~#dO7r|?_?rOyUEe885wY^e1afmtdf55(9%_X&Lpgv?apk}Vh7N)yTv!I zbWuYa0J-IBn-!`XQs%?@Y;i_=)7B)1+OkzGmUCVyX~3Gclrc(UjNO|08EiFIm-z4H zy!Px8pV()GP@QSWYayvg+)5j6aC2&iH(a_i^wA=Ow5Kvv4Zw3=px47;V}qA|9=uWZ|oW7P0lU}Z96pgkfa%pf4` zgpt>Mqs-sB9G2GYb#D>rtdxBgMTJjuiKL=~@)5luqOv3!Uddc4>tGl)CPa{wvSD?1 z6wYtoHnmFJ6@$CtBzQ%&%w*+qp|6vz-Mm_b}f{cF-WA)SeR^NrWjo zb1QOpVDJY1R(9yKFIYT&(#x@aNR}QKmv5&)e&oTuy}Imjq|jsd6?CEZRT6h`Wq#sK z!fyjiJ9k~ud1I9Okq2p(0&PCExlbo0VPS~EZ zYE}1MbK&?>$AA-$N1SdmR%L|VtnLV!I5m9GZqnm({_b-rErG~c^Xo0@U)NYLuJvP`+)6%je^+__ut`10 zkYb_pXKjgO>EPnVp>&Gq%Pj2SnKvCPGh^CqvAVk@jnCdu?-{3=2^%-+c8G^IO65T6 z8x|3nS3`<&rua5O0~LH_VWukgw6h;gi3sS1s4;F}<@lM9o7Zib?m%|vOGBDlRNU=J zZ+ZR+g=>UTRO9Bo=EkRw2YepXA*M!3&m61=SUjU*jWM`a+!H0sOk_hUKq7%6 zW>;(Lhws!@vMI3X$LqZ-hz{;79-2o^d_!P^SWR(cetbs zh!)Jid@2_632B^vb!9Q*D?{dGTwMN^Q_-hysZebnhJ$G74R%3RG#Klw+m{ zt-@nvJm)6VfG$sXWcPl*6VJ4gPfLr2&@sP!fQ&mlZ!DWRAU0$ZVpcw(K01^KFIty| z&c6TJUy`qVaC`M%Vc>7X;N+_UvRDTHecoZ>oq${K?|Ge@{CU@-Ked%&2Z7>funH~e zx&3Y9XFW#04rOa!RlQ@}=+z_))H@YKN26c4O31A6eiRg(A_Iy7>xaRScnLJ>g>w8@+kIZ4Nh!c}qCea423w@U?(Q}UaE+Uk89H#gcJ5Ah zShCzFXa761$YW5$*6nRh!{|dk!qI_E7ogosAbXR7Ds;6zp0RqBct+UmQRg}@?U)(# z3uvHSj?nqbBxZ|yfM+t4=^G~T(MsVbzx${D)W=h3JEZmqC`&9Xr6hX134)&-7h79f zMiod?To>AF(jhPKrxV;gqC|iBw-SO5pQ3*11;67w-k`*;-`1Zg>W8Ih3Kw;J0U!0t zKIs9tPvR&5aTbr~JQaGb^%qBXzuzxR0_a1_J@-=-?a7f%3aBHO<9(UoMLv}PvK6T= zD&)RS(?s~}`;+EIZlFzXc9i4`{LjWb;P0fx|w|l%U?%bEmcd{X=2FXzGo zM~+4LITQi`(GVQCj+Blsiuvt76|4jg0$(@G66@Q9{Nstgk)5#D-iNIHc}NOuh5tcY zz(;zkl|@c3#S|qJ6o?Tlb@}~pMF1o3->*M9_J8|O@_|SyfLQ=JrS)Tu~$IasCvcay0gh@K~ zdMbJ88L~`>t7B`U++IhTY0V)qyoc5e1-ge3nTG{;w_`JJ$SC@W$DSK=zWEc+#x7 zy#&tL4hLA~NCNM_SB{4#nc}z1-Ef^EDpo$$m z<+rD=XECW=*_iJu$uyx+-1cWZi}}(nblN#Vfog`{6;&- zciA`9Cuugukf`Ue#wvy+$Mx1iA&zE%Qscdegr@L=sG?h3Z4!ML_e z0_?i?zbi4x_fMOGuiDI30!K5)Rp=6d+VB|TPpF?Q!L^Dgu{%j8CB&O|Q}Nz6AVv<4 z+~YhzatZ0P1gWFwj+;%oQ+QZITfK4d)YdQUE$lDm3s+;@Mttwk~ z`>fuxjMp8_414e?HNH)dzoqWJ&C-g`zhops@(_&Uls zii{$?Sph-7NDoa%fl-oe~da4pBsJFuRP}Z z@w{$;qNxMZo=6KJ!c~ro0Bj|H4{383XSkezcwqZJyLtudeJaOsd%g+aGgheH@iOkv z=j_APZ_uah)Ynj9?;PKM+o;!$g~_wI`G~m!wU&q1Ln;yZa{O~4;xBpL)#xGjJrvV` z{<`vrOQ)4oaN{~{KwC2opO)9-XA#Pr$a6Drey!&M|z!Ne&0WcvX#{o5hX4Ta{o0BV6Q436G&V*=^8(@BEIT-S+d8?ZD)D({CO#pkx{lmb)lksK z#|zNOcPR5FBGm%3AV2;+g&a4pl)V4CFq9^bU+-;)-}du~+kR4*OvL{x9{1c_Y4tbq zvyJStMBv_0o)Mu0T4vc%Fnux5O+$bb?Gc}ZVDcY_G4Iqh02*Z^clRjotn>59yE8j} zxX07z?U3cAiY$PmeO0vyAV!u_VFOpJ{~qke-KV}UodVyUVe2L!q4B$lGWJu~6PFYs zRvulR;C4FW^eaq2r6#~sD<{L(YovcWTg3E+2Pk-z@oYhq7)jlz{?5KyVIxY4^$73j ziQ`>=!QFsC>_+GVnr7>@9!<7#EbUGH>iKs_EN~Yz`yGHL{52i{?S25D6!5I&48M`c zO9VOk+>5?R1LTtIUo?amj}+s>h2+`o->Sr)J(JfXCyB>jrO#|1HSSon+uC1!Wh>XjVVe8{p_!=KcQ*zW|7Op5CE-V^$#^KzG0c6HY< zx0L-RW}A{L_CvgF+RnS4%B276(c;WLW}|iqZYcmWr_X`8qNa*Ap!dQ|jxQWNjoS_? zA@_oQ;**=E+8t{2p2?;+oE6Y~Nl!(UI}bHL9sNiN_?h~BdEJn&u`-SS<@TON;!Pus zI?^}7|DJ*GfC(Eg!^~I^JNFRGQn?lfr7KJtt;Di`nM-jl?3k?!QxVo)ubQcMJcKYP zby5=Cs^Rv3>dLt|PKvycdu#m99^h}>_?-X~gSUHmbm`y*I^T%jbX^z#han+0Q1oXZv3+{ z=@l0rql_E&uMr)9-8YzORwsU!(B|xFV5DC{ig(hnVFavyz^L9B=#z0_rC5Q^gCpD+ z8etdgx6&qwFwySxB&TayPJ2(5P$3VSzs$Lo{QR$MNZJGlnOghz%J;{4RtJEj;!U~L z7@)`3tzUiU)I8?n>r6AcODI`A=|nG$KGUN@p26-s>9XmDeixDQ5NS%0V`Y>_4nIF= zf?xWR64+vqt8Mb-I;Raas990Mmxeh#x3T?ZG=>?KC+~$&ISJrre-D4ZQlP%p`aRTD zmB;g*Jk+p&(RQJ)nRoKq{ADZcm%{B-BQK6e+lVh=b~0CI-q`Kn#HbcNFL@OPp7~NC zAIE7_fZjAS7w;Hnt`sB8X=ML$V0CPCX0IBF%K(^U>bdYU)D6;s>v#6sY~Y3x0ju7( z=TcsB=#eMzGZS{HGS4T`$M`^}Jle(JHj1Yq)bV6t&&wmzU-?7v#G`JJE=d?Zw&ZtB&7-7nS0C^HTaK>Lel@lz&>iBH0w7uWv4oEVMz8b}Vs2+5<1;$i1T zVX{Dam^0;-TP2d)++93bq8U^t>&~f$Lvh*5Wlg*DXbUa zxn{}VrU)=Bz4{Ju&b3S>o`kYCN>pJCXA$iXX}O8kpJ@^A&SA6_WLypM1=nlio%#V$ z(im2PfW5;sK#lniz2&+fRRVxfX9Yo_*c7W~cat83no9=~O8rD~*ABTpPEH9%GShjt z4-9&8G}Y(j3Ai{NeJ57JZ(drwWK5kLt4ROYNk=$ZT$}H6$2IO57IUe7eMOIqIl5}J zvN_KNsi~BW_`V!I8Q}vxm_WCSzkt_ayC(FY({^&r4VMq|1+#8io`-?Cv|M(qETeH;{Js>)!Flxn^b1Cr>B_f+hHPWO_J>V$mOQ#iN5{3(eOWWy4UA_ z{5Ox}v0ML^6qfq&)8DW*@V#!{`uTf};_va(_2WA4Bk9z8w}u*dy(ocm$= zFTKm}Fa7Uda{O;%IsRup|F@iE`cdJXamq@$-72;2Pt}?~ylW3*`tO>M)Q`KtbN_O+ zM|{%%^X~u8#jp+EZ!Lu{kGdYTGd3!a-iEY4b(;TJ(3aHyH=^psN}C&Xp2zrQ>VQYj zyLgEHPHw(UWFUbmpQsnH`{0i!`{T!g*o7Me>r@L^4MG~K1r3Ka(APrqQC7lQm?N5%gR~ez(WZLQ87`$ z30?Cj73?Q3U+(RHzkwfkgYXWiak11ihn%~dND9>yUi;V9#^8R6B6WS~a}ce?DK-d~ zRmHX-nSEg!OV!g|kxuhi8h$HN+3Y6-4@MJCH3J2D9!lSW%(>&PDHW7+>?&2-r>7n&~jcWd&K2Mxm<-joZJA z<8i*qq$S~K5jL?=N&@B?v<@)_q(>wj&Zt~YntZ>myI|(3#%&j)V*qAD=m9BoDlMo+ z6PcK6yBtXW+~4}lA!(D_Q9N~UQy_9#vsziby^VtLvzm9O=bO ztyUz1!CIjMCM1i#Hr}O`CMg^oDN@XqJGZA(OfmN?fag<<>CqQ8uD&oN;G$Dni1s0Hqw)6g$v!qlebNGhB&-{3R83%%!1lQ5F_>XM(W z1VPY*j|N*V7cf;+JgvPo999p7X@sq`0s`@kAuD>sNQ5_)6Z2kKu95LO+COyUn92Tz zCFD*-*~$vpwtAIRUk%!gmo*7p@3G1X_k&~3`!)vHiR5P^g72Rah1#8Beue!L-xg%k zQS>1YKQWdNmqXTWnVt`O`=sEL=GsUtblt_{1M9WH0$UHtPDdu1>WcE~i3S@afahwV zbBIGRZX)=~>F$XbtP=F|XSFLyNrJrZNRB}!XCesW#f0a6dL4STY?x|3xzcjB?zSNi6~tlw(N|AeS0B#45eV6 zBX9VmpA(y9orGKSgDDZgE@la;i^a27@`c>&!`-g!FV}-4S`LhHh5Ru?64i*RbU9-{Yzpo zSIAmrTW!!8k2Ii7cxgX*mBHG#j4zerkuXBDuTpI?t3A4Et1pl}Yh8TooqsaWi&8eC+mjXmlnq>6 zuv`NF{`K}#wn-0yYR=5Wn}WH4=1S;2>x3?Je*8PH!0zDoO*4%!OXWf_(EMW7aM^<( zb-#8|K(9BT=;Ojc_|)IAh=YT5ZQ8vV>YtDm5Nsfn;?XWDQ`w}Ju_?jZ3Wb%A4NZuc zDoazy6O5rVIvzi(TVQwcL|7j$8O5%WM#v@&rS{;R&7y)zxj|L=d&Xc@xPXa}o|~_h zCBHU-5YR5>h4emcf~VcP)a11y0`<%@&p|I$#>zXa`LwCb7oi^vz3(Cv5z8J3v|M!7E{$skShiCjtxf(?&b?WHe_Z4B*n_D*5ySzT5+9tqm-n$E77 z;IUhbZY@FM%3k|Hu4-xF0^&sd(qgY@q+go-b`sQ8nG+BSW_Kz}axe4uUgVgZCz1ng&35Cx2<|$r`YaZv=-^Bc5GK^cF z`Zqd1qA((su;tg@yUceAGjK`ur2njltt6f)${U!lTXn8;$)AcdCx~^TaSax#S`xa6 zUJj%0jJ3#oHV%hoLoS2ZcP8M{r0JPA)S2;>1KWwR7J(sDw$R+{+IR4dwK zqSYDJ_k`Luyz>h@?$T-FTv&Q}0Jt|Hsz z$rKe$VU-3mY0QIL<;`o2jEU22o7BdK442gh5)U+HA2%+wI3}8K>Xid~k-MBo)V&^? z2)Df8JB5e{R^dqLr+1Fq76xDmG9&pj5E%95T(eXt;;DVD7osy1wb_X~jf-isT~iU# z)CKNdI=iEr2uTe7mU$tM+SRT~F)r3Gt}` z%Q4?x0yXQxRaQ-ybmXY)YOPD3ix709@ytFCQ8Ub4#FX_ctL>|v3HvJ}D<~*Xc7AH8 zH-SJaTFTs{NO?~F_(IQwv#NgZs@o-zJxT_v)Qa4gD-+75?fwILynped-k{8iXlU@n zb&T2%t#rx~b=hqy?#XHKl(xw?Z*JF`=PFoe)MIw92WP^845_zolT}l6kw@F1W#jiw zR}{ghi(8{T)GVQ|5Xe&p>V+>lI0_rPO7r9USDRAd-HJQIkx4l}Tgo*mNW9A}fOgd; zYj}COpYoafv23PE%l9c;EbzA|MIY@NZ>F3t!FOZn-%sZTJe~eZBGl4B7*eynfGf@q zHulzNjeo!T5#_W;%lSOC`qh5*S6in>W4PK}Yv+8DifnAX@Ce?NaHD_W3}E6g*#$Q4 zrKu4R&ur0J%9XGi8LqykuEw9)M<)7)_?w8BrlFBu2~%%-XZfMOk-~d<8>qiGmQ@Kq zTxeAFGYDK~a#kfp2F9DR8=|A9Y}$4#TJx3vamJlof5o=Yj;DVl;-4{zp&jNb8tI71 z>L-w)aMJ=cg;r(Pn7O5DX9!DI@_T9zpMshaR};H3aYqrA1|7I7?2c610pYe0WdY_+&)dgzPtZAQMbhUE5dGU)LP=rWz7?&h-QAvpFlC9p*@}_OtsHiBDSluG^nhw z*{-6QlA;m(&SqDiq&PgXs$CJ68KohYwfSpM{%1|OZlYJE`^4645^$S})=x`}I~{*Z z9N=N-%gA=%JIPHoAw-x=e&lRU<5yE;0->^9J3}MAoW0|`pNcfrii+&X zi}JYEqhWYX2YamOj=oqU2?U*18JG5r@tYR}g{&nsQm4fw$zMyHg@L5uKvk@Xw$sQk zMWKQQlvdjqHEW_#6PaZ69N8GhxQk3!&2$jwzUD#BAO&Zuf{8iX&aF8xGx1IGE{me- zI`p#6p1)S^AVTBYY;6}6nRsR0FYXHLwEsV4pjq|TSCi3n$##A8LQB<742d;KJCzuJ zxCbM#FmzJmc1KtB^}*J^1D+UZ%ik^pU@yJcCJ6mIyhSMV*;Y^gE@%S1ZNDdh7|ebG z*OKww!UcmWKhIs(|0{eA*xsJ0c{Y`FQoT!~sx3UoY=V52q9wm<1r5#%@Qe?odo4PxUhX2TO)L-~ms+pw?~)+)8w0s-A5Jt?LN8d~g=t~G-}~QS#<2nK?%$aF z(ucFG^ep*t0`Y`eyzZMgM`#xgje2*@2)y%cKCZ)>6FaRZF8U7HBJFFndqA$K@(NpT)aKI@lriV1+Bb{avi4Md8&CYZDKG95)AdL%u; z`Racl-7jv^dMn3wE&mNRNuBzC3^slGelq*#(>dNx{q}#tTK}KJaK1~G{59_X5BmNe zz|Zl&%E|xgLmdDA3I%`E6pnL9srt39>S`QpQCF$rfaYn14X-?A%gKA95p-Jh>mvbh zko!4aUhG{-#JQrpfO~n-J9Oy6n-_&ie`#$4XIT{>KHt1$(;5byfUzg5-TMoIjQZ^S zKOS3+Ip{m=I{xnO6!6i0Jb-WCzaPDU631q?@6B1&x*CFuNYgLG#l#Q3y`UN&%o@+! z7T>wwx=vKDFn^1TIoRG>IXqa|$nU)|{MN69iB{blG96U=9(;EzTb7$;3XKps``cLg zXb|F$#?ST`O8UVM9Af}#H=hgb*Wt(FwGUQD9&Eh6^~7msgHHOko*`>nfWc^qMSc6& zNH5GSC@qz?HIJC)-WHjA+ zvOt#{!ls{X5!&|%3?`;iL%BA=;0is#082Nx8L>1{K_dV0l|EqH4SQr{;V4`}JXG>j z>`a`Eq|*_OAgA8e0Vyp{g9PEwUrt@Ed}$*p`O{1P4Tt;Ml9EB0h(-lxg7%Y)(sS4V99T>OBH^1b}h$Jj3l zr6>!fTO4267A<9J8_wh6m0S1QRpqQHA#Z8eW5Xu2uctZQzbG#eB2{vmi|zW>RcY}# z*0joATAz7bJOV9v^rPMij|Hx$WZlUy;^ZUEhqgn#Qi%}BNj^1*^F|kZY~nt@lDR45 zm({$tyR9@c3k%$My;m(WTfq&NZt0Ni!!9zoviSX$BZ(EqD>DNa3lR-0Y&GCXz5ss5*{&OzBx84*olPEK2+k0FzFxnuuT?(+;GfT=oiCkrw z*cv<^uEMl?ChHa*;Vx-vJ@ZN+fYF#0gtf1BhJhowxB8Q!&rKb$8fuyCTk-8Lg?$?@ zkSU_RnC*Gh^&W*jJhjX7Ce+(2L8*S&#M7eM9D7=VYD%8-#=csW3gy>a<#Ty>jw>Jj#PJ|>+{9AYTr}aXY)NIjX6{c6kKbF8 zLG`ZD2ENOxIwXb*NDm+TpNk@G+|~gPU4}aKjxvsHnrLofT1!n(ZdEUzKhG&Hl}Z{I zNRblLxE`mQp-X=nYog`{U26%hzAx#I44}Wubd5QvI^1lZQJ>m2LQnDttN12Z*SfkC z8Rja#3v6Lm_`zfj7LpF6$Oi+Nn6!PM$^8T7AwH)x>wbXIM0$)^kdsw{R^&Z{_F&&@ zQRUm07n&Lee9^euC;GW6K;@pG1Uf8(MR3it|irU-X?jvZXmR_H+Dt#M?n9BbU3Qh}Pe+An4*#fjo-y zO2llko)dGtp2R|gQUq7R`yy+Y`JGQuRc)+sMqPMdUzr=1m_}ngc+=EalXvRyfL-eY zEFP-{ms6bOuXC+yw^I8W5fg0fJx&qWtY1%A*#}JM>3r(zA`1&$^I(`FU_8Soi<)}C z95-VJR;f8n2jMWeHM1)^8 z)h%Ma%v>o;5UiIA{PDf54@HD9=sGf%Y~rlw*B-FTY;cRok60{OEir~klPNqmhD%?Z z7R~XoG&gsN0Wh%lDoVPWLwBK$zSkqZY*+i=h74I`;J(VWuW%<*uYC`sxfPfJzzW0@r#M0rnPunL6 zqjVGF3JVJvL7z@Yz734@9k25sA(ONZ!dmwNUhrdqIP!p-gbp+6u}YzI0`S_%Xh%oE zpL4>nNHkHek`)rgTi&5}CY#tKr^2I~zTGRkA@=o#YipFHSx;$v zG)dIg>t%CJIO(;6$Ld$~dmEFxHAgEG7O{!_;TBc3@9jJ0o9Dkd>c6ZkeydSPEF-Jk zY^VV7_2ml9UD2Tjr}kmx5x|l~Zjm zU!=gs6N<^t?7QKBCtm|L5iQum3G{>T@+i>0POHdLru<8?++L7KI-^B8b>BBr$SZa3 z6r3%(OK<#!K2{yIz2kgB)*&ICARgCJnRPC(*_H$l(X=}Mn$Y5OYpJ=l(T9fjE~|=L zE4To19pHtI-X=g`OQ~1-How?Iv2Q`3x5XOs6{JuweQJL>wD#kCLLgC1ayQU8Mbh;j4jC?dffseHoDwnz$B(4Eb$kRTv zr_qyeVvuehINW!4CG_U0?2Y^2TGH**=XD2i3hARkXukcxfzYKe-=(mi75vj(=k=W8 zipqqzfe9a^V2fPhT8X(ys&`|ho(fo;dursqu(>ILjMfL{zb7151VjMzrA6sLxTfUb zS3!jM6vf0c+w@0?rj;SA&;H|HC6oO1mZS4^>2@T#LYO~v9kkqB8DWlyDQs9|s5L0v zF`Ro^C!f6Wu=GY|yRpMk!rrKj&7?gR;bUUkA98r~c;Ef2XE}bdhS(3y=C#H|>3BHH znJL%QT^ujCDvwW83T_h;gO$02)LTlZMK=A4>THagyg^3u1?#^4@T5LOKxRE` za<6cmGdQZfN3obOQaFrg?I>q16SLy4hA`OPJz(uFZ5y6+6Gw&~&TnV$ zhvjm`OQ>*p#ULM|YL{R=Mpd-E!e zD%&wdAMfR@AkM+p)rNy&OP-fQyasFN_DMA5q!Xcv%dIlXin5EVR$*%@HA=8CBd|>s zv#XHlNfK@4kL+&^U$0pT9<>jB7s&Bire!O;b+fwgYB>IEcg}q1Ms*`BINH(kOIjg5 zKpOyly}>QPf?bO0fo5-Zqp|P1)^kUK$0`;-E-fyosa%`b9t#PvKU?PK0~GNO#cJX%( zDL^4E<{NGI-5}*nKH(0-X#&b%99&ei%SgJ9KycFy*YV*l&G3$IR^y=#hE^E(tz2s< z@5WX)RZB?UlTX-Pvp7FR(64-1vVOyj9CF@tHRu-)gYHPKCo@^q5C~&o!tz_dwRYwp z2xYsmV*XODWK6++bnKNI1${1tF6+XmeMfYFg@ z3t4(TT@oCt$);uE>?pdA%R&BdolWVUaDUn}$-sYrT z!$d>1RttqIw*miL$J8lkXDMtOlciV>-VW*#5aIDsAoLi>T%PH=N5z0Q}X+$O>)mTeyH*mProP-2+T1GfoXb}=V zPRvogaIbj>Ga;#7Q0eK}!-)D-v8)<>Q5W8HQOt9{0MQA@!xJF^oZ=2qQgYe%&nStW z6YeqlPj_S#A}ldjJdcXjyg6y!lf?QL?z zP*oW8<1>?S6l6lPUqC566|9ZctkIAr420m;a*CH`)?)(g4eRU))U7PgoAx9?D0LUE zWMa8*Fm5E`c;;PpO~3UeRBM3uIMM3oddA>cfZQ3gg-uBnUgP7-&IuJ|WXoWprq?^276qjNkFnV%L%`GJ{dWt84Nr!a zUPhFF$D`)E7p|VnwQ$pa@9Q_-{7`3bqU-b83i+W@rlDaxu}^c|<-RG25t44#Q0d-W zf9+6fFtqL3sc(_ROA4LOl@Ktmn!~#*EwxNTLLqHAzPb3PHg6ls0W5$*f5fa3d&Ow) za~z8=-4bO~B_SzY=0|QQEB4A0n*1Eh7ovpcGv}@~NFsS#4!v90tu##%tr<8t52&@R zry}>>2E!~XY|;S(Yd_p=@6$RsD!z3S3^aW`()8J6?5zyAg|g<*mgBHK&4aCZ>EBUB zin4Z-YxdDzgK_wA+(~p*{-h$94GL%Xj#26!_NVRbrZMe&{0BePrcQBrfg@R;Mpj2H z$SS~|(l)8eNW-Tnk*wDP#+OG|x1gSb1$)q$TP}vRnJ$Z)bzNp1a)g#XBBWW}@r@TS zB^y0UW8)7}!!_VQ^BfPtL?a zxZc!w-Fjza3p@JDYlfGQnQ{xgI+(uH*_ugkrTHcGzzXFFWY@^}?tYF9BRu}GIucxZ zx$%vC`ltSF{F!m{OtB%8!*?)VT0g3Gzwj2MNU7Jc`hq5LGO9fMz{oOwVL<@eGCG{v z-S2^vUvFwJpL@N*;xdd+iPnj)h?i)X)Xwe(UrR;wR|Y^h_q8})`+GYoYgWYsMD51oi zw#OU3RQnM7sgNFSjp^ARw+CG=)5bfdxXdM5Gc_vHt2JvYeC@|RTK)XYNHs!!A);uY zm%lSX>=`QcaA(fvO;lYWV;;q)B2^f zxzijHi0PWVxgb&RpGZY7cM;t>mP=m0ky2di!mI^v#Fv)-SfweY|oh#T>!m0tbKFezAZh+Mk=&MI~D zUQB8kZF=DVOjozAYW=qQx^P{c{A2d&H0#!!)^ij&=@Nc{glIPw)mR}yBt=`TxxN#7jag zHdgW|n7AMR=YHmHgna_c#bN1Fh-6JD5_Go^18=We88n=l^x$QwtlT@eK2~%N+fn)~ zc@J+`ks#x0#-6_M1c+M&s?E(8`#&V}1msK3yumHYfrFwZz+O%@&zZc~rzKsMA2nP+ zZbqDJ(fen4q*Ep>$}%B_ly%?u<{V*i_bhjgSfI3i!RNAvr==2O)1M3o#~zDEVRmJ> zIT+p#pfxKM@i;>nr-Qnh&Ne4+9D(2$Z=4zA-!=TaxlzW))gbRn*MW4IR9rw+jzvph z@DwJzcg89Otw78-X^PK0qNUxf4?g_C-C(4JSs(|2IMIobEQ=@c7enijC4P(|{h`gt z3ok@c_P2@ZE6y>jkt3WUuh47cw$;i|rO-DNAjfz6<1oqQ(G3TrF+~slO$s`vjW= zLdZ&boQ6oAbVTcyBky=F#Ymws%#>}f#e(L|-?n4B)}0*Ogdg6#+mjXQH4FclZP)^x z?HSu_m7^4$&R1Dc3M#GzCd-s#Fux6$7MJ#l^LP$h37dz`U0d0ro7heo zio2))H(1j%-Lf_O9Eu>0*`r|4_WtaK1x{f&xWB8+aFe=4$a${ieC?_;aFQ-4h&4&y zJr>aQ%%sWmVwFlr2fCNb#IZruGesU@p3ZAxV(1-FUE#dowxP1rJx+%cZjG?e)FDKTfHKcl>Co9)F@)fX2Z5DnW~$<1@FP6k2vXoeVq><9N?K zW?`ACg1&(+sQdiN&xGF5nWz`aC$N0@DWatmB(xZy2P@Rk2}R`goN#GUvOt!^Kd*ew z2yxkS`PP~BWt`LSTGRD=_heAbn0{3*YhdAv_vBxl;Wj6}9H+pUewFdzrjmF1kG$yE zeJ&yl!NI^1_5nI}Q1W9dOjLMzpIZN0J))Q(BHBe%Lp6rxU^g^P)PnfeKo*DQor`jm zYkh_JUjzw^c;!D2%251ajMw7|{rPZ%uC?zk5pz9R)%ucU8yz16-j^ZBDFsCK=&=W5 z@8`!UecFdnEE?t8cfgv2)X}j|{PG7*i6PXj5(MAy2bmd0e7KA)PA4i zdeM_`rT#gjK_*q^DCG48-~`kA9sIJ%k*yhCRlIRLG-A)m*#M!UZo};-pDn0hTPk)M ztUYg@&faU(SreR?#52AoH;w8!P&VBnjMMno-ut>4dM>`njGX4Z)JdVG0$E{ADQSX! zi|Y0%joqrA=PXVbB<3s0MA#@c7wxpQfNszw-}Y7l zyVHd8;B6(7%)l?j)s=-6`YY=Q@5y^;&5!Q8P5AU^}S{%VqDF>>e0t=CiffbGBU z;qMHuB@=zZwkzYZ%txObmgIUt7CVF?E)fd4#&94hk2fR(NUukr;?S^;eXzNiMF#tI z4$dJ%bZg~&-e{MizxdvL4wl~&eFKggsPy; z`$HY#VUR z!AmvFjNtFkLZ7f|jpCvD?pkSa$yBZ$cqigNYj7)5^E3RE(X(-4=UfK)adBL>kVsQg zMWqqRsV*--UAnti%5bGdc!PWw=y^^mjq`^0hL4tuwmK$Bx*1JGGwVkOY+6VgC!n@ zdMdj1!Q^M(2+{=Gq@zbTo)uMBHZ$KAYlUs&#+P@0jSS2xxZSZ= zIog&OUsez-qS@^fZ5V8T0P2A*a2EFP+tK6mFP6J$9W(Gx;Rpj$*ykU1$n#3cq5pA& z|Bk%^Quc8hx>mU|SXm!7`?OQ@1ruF5eoz&ZjtX;LP9B;wF>O#sRve~hW)@Yv++8NL zl^gUaDk;6I*b6b{nzUjek zbK`zf)`Q$0?@`659$zW4ylK}S4NJ?&z|o747}J~0ZKIAcnp)dk#;z-ewaEQzKrM5> z0_5pxh89K1$;8)W$bC{!!3|lrsYcf{wUnt}M$*GG-^j<#Xj-4~elWm^po|=b7Z+A; z$DtB~P1-cnWuPHu24gfr+7S*ITEer;Mtf^_0bT5nr~Re2=;TtcpZ_T$7gobee6nf) zJvNaQXw}l6O#oGHw#>% z(i2_rnS2e14ihsWUbW0x*fvfO5M$g$r5(N3jk-~lWGl!U*eoD5VIf{0A6Pj!qMuD8 z2sXrDQED$5xgM#iVp4^qC~Xl~!Ui9r?Nmz2j8W;0s@NT@N3HnA=-nxuOJpM_ zV)62P&HLP?QWU!g+@SDU^v46Ev3FP8L>ylpKUf3-|Z{RR*rS7e#J_n&nG1?~!I47v5xw>Rc{iSk!g*I=myZ|iP& zjs&gGh2!TLY=-?+p;~pLn-p{fb$$e&Wr_?)MXoo}r;(6ss25 z3pY&=RYxnGpS;MEKs3uZpc}^s@kkiFsI_QA z(B+P!^YS=px7|F(@ufo4#8N@hE#ZQb_gsgRpz8JGAqt6ks!D5ekI}Ee0ZTK?d?3%X z_*&`w3-Rv5*kh(eAs|-z#&F6MP2#MivFsEKR^RJYQ28dF-_mR%Voo7i`-I*K|M5HY z^2Mx_$cwuCYx;~S-dbs|f(vd2k+!#eda~||sabkX6rD57JELa(%}OoMU~Rufnos4j z`cjZXyup3{-kF>%h3bo*i18yE{Av_O8KD4xIP zIy4)DHw3^?bXL%(T_=C2hnblLwlxO}2&M1`1BH2WrAviIQt*#2PIX21Ex&KPW4wt! z(RuVZ+Wwt%b(DomPgk0_ck&5nU)jrnyKEif=RX|hPk&qCN^t9Wxu`_0nd%Gmb`Vjj z;OyO@zg_t_XOgY{I@jK)#y$Xji}iFRM-cSJ`L~Ho4ah;uu*y+_8+LDEO9i zY%}q5t}Pl?!xUO9Mb%7(ZN2vBeN(Y-EpZ-kLW6evtz*poCS!#XMonyeuyLDP^RfWf zO*XnBcE=#5B=;)2F>t<{&zwiz`=kta&e=fMG)3g2Aj*bH4-Cr ztfCamuRyU@TE4gBK0-A*q9>;jkLr)zd+Zo$-W!)Q;vJ+jKqEOCfBX+eb3ICn&yoiJ zlBT2M!M%Iws6I+VUUdJynLP2X5L^FYTeO_NN`R+>$>?c3Cd4})r&O=b9`2sUm#
y6SbYt$QT~?^G*)0FgHO^x&_RBOH(<9FpT)&7M^bR9XC5c9#!f^YLstA z+WHmlz3IV3;VED0zU|!#Con>~BL}`C#_X@FF6+7T#(jvnW1tfkEZ z%jg%SR1KD(d&}4A-p&DWF0C&3mYgAGHsF^b)(C*RWD3!Ra_$n7en@6)@%z8Ox2Hl zQEb1)Ud5{zI`%I=Y21g-U#)FXoqwh7vcoG1D`tOHXj8$X)oYdLFJ|Q~A>b-o?A&JR@?b3#y?FzP^?a&22%rSfZcvjSG-SHI`Du zy+MemZ&tKOjK@@waFD^^ST!UUCpP%8`82rws=Vvxm1F5B_N6C;GADkOJ9b^ zOW@yc%oCquXP<4FC_S8N%j$cSB52YO;hQ(P9p9r-L70>Ikdkj4?@7PJt8Ph&5S!3lpybs9p3J!hF@>0A zvhmyAI-obDazZKOa_Er_`}E$YL-+zQIE*V-LwiIv zpPz@daZJm>L7b2&pES3$Ue%`T&Zx68bL81STl=sbXr*!#6qySwondTPSjKgiL3*G6 zU+leSP*eTaHmbLUTMi`w=?tP12bgy&g{K^>$mn=*SglV`d{y)*3bVH7M>7Y zC+Lf-WpXP7!K`e`0x!np+-i*f6UZOfA(s-~$J*KLH?-8g>5Z7BkC9>7`t}yh@$g}c zmO$T>!a*UtMr?yCThi3fIZsyZiM6%IaJJ#~Wj+Q0>oMM2X51{vx{m%6g6{6-CXybW zKdoGA6e~(~6A`&P=(adEals&{M@ig)xMYQmtvm zUz`t{@7*_XgsZ8!kDBY+LF&+r2d{M}GR1ewG;`hlG0^^;B~sKWv5L<;5=B*K@SjA6 z5hFQdT#eu=PNO;QQ73_2WNSh|81WBc)J)kQ!lhe!4xm->JuEmngK+R)vqM~o!tQe# z%r~pZR@<;1Ky?yow{>5R0`Gv-+%Z<{hOv{F?PP1^vkKr(E;?0a@=Ettl>=ti1|-0X zF=mExe4rFTu`Dwdrb_m{tpNoA8z&p`l8b~l^n*VgBea&5sHhhRS?!7##tDp#=4@F5 z4g&fOYTxnMxq8^STOXT|@>V^`uOt-fcMjNlH+1OZZ*-jms&+AwXV)WnK@Ye-js84e z1b`eGe0Qct@jOQc#tKr%!twCe$ei-=S0X`6Q=e17f&?eexbpgqqRJ3I!uhfYg1Wh+ zy1iunW@2wdL@QNgu|kg?UG;E!hk%4D-CrLbR*>jGr1Jr`%;pok{=TNV*EzRy&x_h6 zp-`LLIo^8g~B7dV3h-Z~+Z}N96~WtP)|$ z!csR8Il>F9@&3jJHHif9`rA@%(4{jkfsGDB=??@2quFhO?tt6qY0pl_F`9@2QgL*4 zDQOxO%Els~8%ICL!7FS{4G@ziY}$8SlRK&7Ph-bd@nAYb3`g38joDbc{bS?rb7nTu zqb7R)&L4Q$aoFa%j@0uBE^@PsvBdrdVQl8%%96TeQEP}-Bz;-mUP&uD`}Wl0epUPH z-Wd7y;*`3k3=#7id>V04yO3S*+&ttD=~$l5u(b#uFValB`ELU?!6ozgIKl>8{ZjhO z)^&Pu+fmo;q2fiI#F$I(>FN((VSfaT2;ki?8rkk-f7yG0Kf~V3i_Y>GRotxN0EUK$ zST#Si30_XyqSUyf+ZCvPD86(i0@rFD*t4B(fO98lX=(JBOn^QY;?GBV9xh+u<*u6W zNuuoa<5YPdor_4|{I}_ozChwE$<#s9&Ks2`)z4R@l~z96VOjEtPh_9wZkl$Hj49+U z8kj;^1?sIz4;dA9Zo}uXQ-*pvbSChh }gPAYRID|3mQ9U;a!%ODv&Yq}jpvghev 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�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

*^!9diNeq5BT^2~i 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%0DEFkpV7xr4tGifjE^ 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

c7*Jr_8|9;!CR?Z}ORek|<6 zs3nuQpms224JfU<=Hdw}C`K=ck1!hTXD>Tp-@tuzF0~!8zKpm%#^F*%*ggYF;fwFG z$^Iv|ufmgMyPfbaKsE>6IR0gwRLs>i1n^=iX6M7spKFPx&b|ltbn7qRr=LD~Fm;fV zTl(f*^3L~f^Ti8Uf)nUM#}-fX%|Xs@%Y9Y4AuD*oe*YFTjGf2%Ae=UDdGNJo1qMbL zw(yO=Tfh$p?~SL$!Z!xzJhwvSA02csly?Y z*4x{A0pG=2cW?j+m@HZ4B;aYJtE_kG!5IC3w^cjHDRXlXH5gc5!w*E;^HV`;3Ey0Y8XQIW;C#)iXQfUwN>fm*SdG#Ud zte0CXsIhk5Wy=ZD<|wFQPY2h!pml@QE1RZ32#sw#i7h8C>W*)~o$m*=r`98Z(hOt}X13 z=3W?vaZH225denj8;q?>Q*$1__X~$2&j0mzar`^tk^8YB(&XsHnY~>)jzSrNsf%O; z^{8$3*Xi4|txdPGY936%2|UJz(3+2I2Epj9A?IaW>~65^p%pU$>9fyUq{du3>p13R zy`!Dqmu5W?lnF3i9D{Lhbgq5oxk28_r!+3kM7<#b6tt82Ok(jG%I|qF3h~bR?WweL z@=#|5Zp+lHzVmbG$;X@V0@4z-;cM(ORq{*~_PQ4$udYTi^wcZZNV#a}R`!FC}%xSIVXmTwgwm z(FRnK-UUX#PL&6iTUuyJ5{Bpc8RoX?huQN9qXIOL>d@Tt!e@nN+E+d~+GEI!Q?@h~ zjZj&c0U7Nnfer6G|De4n6wcNUzlA^cr&@oxOfsRR)ps#tyRYg9wM3G0q+Kr}GBS)2-#%FvZ`N&B;Gyl!;hK)lA7*=*0-1De@rw944` z1f$4s+61#TEvwHGG0Nbi8zaJD$KgAzB?I^>Lsds6&^EC3f`_y7m~QQoGgOH`-C zewKUuE9rvBt01P>?wTjFm80FayY1FH->khF zlqUnQqJU*NzaLxeo{n){Vf1Zo+qagzzz95)xdxVUqBXoRWzHwqB6R&-rlHbY_*@gf z;e67ceZJ5n^#2g|-f>NJ-MT1Nd{ICIM7q8R2na}T0s;aGgx;%)bO9-$gtAlwl&VM% zJwPZa^b(qafb^P#77&mYdJED|^!@f%_TImH?%nt7v)4bYtV}Y;oO8^%Mtz1;yFzZd z{9!fisbaw1Sx(iU_0v;=hHmpm(?0~WuNHTqFWzROk9e;blI(ZotiMAO7JkN@;p?@_n`sZZ&6`C^uZ=yt<$NkuS6*9M zH%hR)w7k4z%NgujzS7&wAlzGwk(*e|i(Gwt(U5O~=+<)N=oapQ@ z$AG%$z$G86%s|8*TNZZ{atOv!EvOcCKN^AbF?hmww;W|5eo;Ms_&NOtoPqC?pm%N> z%&GUR|LMjT>u=iOzEcV$+^hW4zagT{;b!br4SNKQllP>zdB9*t}YUH4DLxzIpP`ojtC@^GKxNDWV4V3k7wh=Ck9=hZoxa);L9q4 zNJ72#pCJoj;S6(I9#^a&E?P6xxP;5AlMOnhF22qSKcU#6PF>WGudU&YteI6OVoJvBFYW%gUar+ek|kOgeHdkk9{B1eqM2k>iZBjMiL{dwiRKE zUjwjMg`xpUXrjx|A13Ngj0zo3Ju`brhADeR*xkFz??sS@UBRXk_XO&lhHs`6SL|%? z&0;MJ{@n8yte{k`$BGhYdd^K6+XLp?Li2QaS2l+2gdTy?v&L@~tX0e^h|)%A5}t!? zuGE?EsmR~WETRX$HXpx{ciZyobMJj6K~P^Mtz4^O&L2U6RyWfb<>#4QC#uYfIU7bn zFX8*!O_h@dCo*W_)~8OnjWmuR?^-GZe3?P9{QYi8M$EbR8}2;`^+}a@*8*T6UQ`tE z$m**uH{Ify4Z;3Nm#b)R*4*jda{>Icjy*)FA4SaWpna%$?aN{Xp9a=%p<5)OtIX0SJ!W2sS!tW78z{!?7(Wq*U;Q~keS!5sT9*>aau^MQ& zWyoPnn3kJXfA5LQ8v&Z-P(wfm#GP7r!5LHXmbb!V$i32IT8D876}91c<~+7?%`Iz} zJd(mfev^(;lS=Oc23uzHP{T)W@^8~_l-b8O+lCb-1sUe!NgUvPh!&WV{`_*{LmJU@ zuc~~=S(8Npt9)13E>g2RkEZw;^3uCJ$fk5wia1iL=)C{)3;5PjTo3?hyYg5EqEzdE zWM!3u7OyVFaNQ41j+>FKS@!m?2%|18p4*|}O^8#tsT5#~n@EgC!-CmdWo)D>VY;y_BVchV^c3-)N4Ti_Eqeb*g zOid^Pi-(674+i%5$AGRWy9s`QG9QgvlBzbUtCx~n71t|~RFsgpz)vtj#a+`;e8$L! z{??j-s7hcWcnLG8crXc(DC-}ZfI8}lZR(Or+!Nl!^u+H&WY3d`CP35(elU?*AGBWy(~PS;luOp^a%F`doofWYNrgNzzS)%=yA8CH zoSI&LH1^l=hd*(e4ZA?Q^pUw~_<()Cl2X|xBI89S(1-~C_RHq)Eecw~x3<3A(?=q?Fl z^#5R9-m$hT$(gASq=S1VI0;i8PYD4(jjJnOi>X)gfNQ~@fpo!J{%YJ_~TQ>?PD`}2HPHX+McVaaCWRW$SH3x-lU94stCq0 zoZAt*yp%A$+gRSA@~9$M5=e7zva@C^p01=M!xX(p0^RCNNO{VxbyZUNJ@Oc+qNK3= zUe+Zv6e;XxqS5&rl)B@UhqghJ0a;5=s6KPPg;{7Mk>M3~rDRDY4tXo#+sCop;soHZ zFFtreb>T;xo_M=+>((AE0IiyB4HBE^%tW$R_*a28q4!W6zac60^+6EE8t7 zcAP!Lt%bow!omj)Kfq~k@d9cxL3G?|9rJwRlSue8!1cvqL zYeTU2oL0{m@hi{&3Uk{qGHuq9&tO2&kX$4Vif)^r-7Vm|0!hnxR<*KLR$QT9iP?o* z&%Jo`RnT$cpFT1v|0@Q%;3%M-X&M5rV=R@q} z?RR=pdjFu_y*gZ|uk9m-VK+`UY$KXM#$@T=F+Z|OgTT%2Q3`mK`mIN8RrL;aON6tZ zfoZ(!$D#zwIr*6ivVd`$W9%=G!&{LWgHOHT?a4$TlC{{J=ij|HA zYGd!i+duD`ouC zz9GuOsRAXzgY+{L-y43#PN&}U$O%5#XgLpief@znCJ!8myAkjR0_Wg(VU#x)zN58u zW%cB%2NoziqF)$DoihjU5*U(thOiW7CS}M6`1?#!#L%1zG zBrlX-I&GI_k4gOz`E@*OtW-WoF_iWd>86%QOFN$(BE0K^LWZx_+wtcv@25b`FK|nR z6Yo}Lw{Bj63O2LUUb}7aw%Ce}5Y<6q*r)j{Nolid3-08X7MfN!K<0KqBocaP00_)k*bVf;~x!?6>hDT(NU4QObbg5(X0O9{g+g^ z`>suJ zC^_JZZp>G+>&0Kawi0a9ngZ*r%DmmO=N69TrFC9PvvKxqOqr)1*zM493B|u2)=w}t zRf**%T8Ee3y>Db9>!r1{&51vFvCVnD(B()=(B|i>!=Y@}Zi5jyZ6l6c>kb`f=gdfx z%mh0@y!oM1cMnapSi*2o-3JTjlj@ZKpwq&Ni&avf#`cZ>*a>gt6T;=Onw>wm_txhZ zyu1yyaH?`+}5G}=7vw%XS)V%SY)CN!F_1r61@boR*8HKQ{ ztKe9+qVPn7(OAEWp_R|zfy%pm(TO|8+A$5gl^7Zw-Q1ub+=|4+1MPt7TP9`%AZ%jd ze87_nl_vH}Vq$%)8Cl^bcL(22X7JuAn7m%Sypf%8u7myXj!19nyHr@Gul-r`2T;6s z9z2S_(8-Rm_f?6=sTBjS;6cWgvFY;=Sz^8(eYC7|zP+Fsni`rha1?NO2;8)YHRU$1 z(^DLW=7lZH$f4`CmT!t3emT#C2G+=Re;gl^Pr1m=Iagd&$XM#LN^PMjxc?G*88K^q zSr+cqo7gR1R}d+2p5o`NZ%vu@LNBpM4UY^=Md^q0pvOLhQvT=tx1$lR*dbl`&lC-h zq0yV3KP$$DdL*8&Ii@Zh#5=pnMmI=6inbY^M<){!C%^)izB}!>q+Hk#2db7Z0G}4u zUo3Vb^A>gGs>3BRNv=wSgF8+$_mSFD2*L4S7fVT(*-rn|)c$t5^98b83(R?FFaN9Y z(?@!C_Hxbl8seT=;boA8UbL-*!?%eDkH)Ym=h;-%RA9ZwlMOJ+77Z|QfmxSY%}RdP zO|7=!gr4K9V^8D&g0;o;tBFBkU92p~!=xjPa(dJzo3-TIP}$2_EbA=H8EDBhr#~7x zU2o)WeT_^Nv8|otmylZtU9K8+seJZ={!7eOh&g7EuK%73X7mpxbhfI+1&F!JN%gmY zPRi-W)KJDKj^`OwP1U7q0ZlY@*noF&2sAHQs}UBs>?(~0>Ko9~n2?LD{CsVrdJGhe zc0!)igQBtm_et>7rVW!Z$A&OLXmB34Sa4AdM~v&s&~4T8dxcKq&=VYG=Q*y=M zm_63!Xd+%WsCENWX8V)*suE@?A%&v?n^+sB_vb^DR@WYTRXR^g`l|+l{KCvJI6HT8XB|=5XB7MUA$-l5D6M!NgA4;7ZptWF8Rtmq2w*RBJe=h ziplzRQOGckCJ+NbiHo0N<;>chqS`}own6^e;sq*0d3py ze|OG3B0r#@`2MGW;2Zd_&RRO4F)3zXFCm>~@z<(N~VJKlC3~)K%eH zJ13SOnR`b>?uusV<~6Tw@BGLQ40?LsC#j~xym3o}8v>=IqAn(cTbR$Ue4AEk<&$BZ ztG$d(oKt|y0GhNTb!_YS6U&r_m!f(yi#0fg`gT0 z0b$!Dc>Hv$rsLQjuH|Rt?R6JtU1O#E*4mQDVA*mkWffHq(mI<(OSAmN_k6l_=liR^$;>;N|GF#Ijyk_6Anp*^#mr7IsY<2ZP0xExMo1m^V~TyV+{j z>77t=)28J}MNK1Jrf^kHr+g>ezIAkzs;ydBTBb>yZM5nv%P8|n9ufBpU3i(~!dt=P zUrN=T?TWY#pPc;4XWy0Zkz8wZJaZ6w_`6Wlt3(fL|78vwMC?4Xq}t^~jBNQ=fNwQf zUK5@2K0euL?B3{Zicr0Nu&$T=3#^mvi2S~ppi}m_0u9>x*}T3t=x;C-hvVgEM8BDN z?f8StZNnhV-tBP?^|HmP1chtmEo5t5W`9dHKKP`-Slcphue+3K8zs8O4APX+`Nr<7 zHS5Ks1snD7Z_^huWy=-X9Ez6&s+y9XWUaaRb6eW#LHCFT35u~EvI19;<`sbGpJW`hbdz38 z_>OXhObk|ql~XSb4o5-^F7u+xIkSfChDDJaV~%Pj%;PATwyLgRo)72c(=L0{WG|kZarJ(ztOQ~6^w@QLWCRS@z#&O=XK*JTr-vQOt z-;6XjWsS1V7qpkmqe>>k8$Mluy4FyH{ z*T)Z)4CO)(u4SH8yA{D9VL+?1x8@0?m4j>xa(JZOPYZK`G{tM_@^jVt7M46MTn{@h z5sU)@-qZumj)QUAQx=o;@Uiqs4K}yd~10S@ryh=mg5)jEkP`f#)O$+y^ocwTd+=notj%FcEO3@`LHLdYL>c>_~e3Wxo)t> zW$~Syhk*zXfo9pfF-rgTVMF1?=4Ke~8;?cgZD4e~D!*LyiZ1VAf%1MRe1)qzBHFww z^%h=L{pVi#m*PFcL;7dKn#U``HRkG~u|;=Jv%t9Yd#$b2r)zlf{5IZXTaDeqS04An zaS1$WT_*FlTwa91(id9AcB8P#Ut*@;+d;vLWXxr#07HVbwPHmqEuY{qIK48~B3#f1 z$aSlT^-QSR2klFA2&KvGweZ3NH@bkkJorM3{j#z_HI=AOZ^zDE}@f8CawN-?UiBp z)8g$mNrB4cAE>M^gksiRt@&$Y;pF{n`d;#dcvWSDcu$2@EA&nv?0=f6AO zTKUMVzfHo*-4=sPIvhpGcNTg^2^;3IE%=6InQ|XUgfs-|RI0O6Iu74ifRySirQpu^ zu5P^|3wN*PZ?UZ=m3L}!6aXimtoyUCZGQks^D!KoInlC=wNfIs)avIbX`lC)v1#V)9hlp*fFQT*ExWm{k9(MbVOru9cj;X(laSf0CE0gS8V_)Y?4p6Y} zY*be#EJIEPs6z42xdY1dpW2rPun+7%UBF7+PjT6&!$l_7!kjvE+lxh1$%M9 zD_rKbae-p_PJXZ_NBb~yC#+uVntKkHmw-SQM2(*Je!=@~8{_E??Gxec#LBZ?>M1r~r`buSl*5>An{-SnvYy3l4om@5ispqT2nQ=%-pQ zE9wtjG`H!#f<3L&VLknEiC3MlmwXX_+z~49Jkm?Sq*9x64Apa};f*QZv~=h)asyD; z8a~xoHJM9l8Z5ZtKK8y(m0p3^^0O{^YI6&(8)t7KH#ozi{73TO5bI!Vhgg7fu#8Lp z+3C84?~X|d4N^3Jh;3}mQ=VEICo1oB1zqbBr)Fv6+c!9kftKV;V<33cK35mR@-hJ#Jb4)CUi}m zT+UlKitTKy*TN?B;x}HOY%L`19Hmb2?{TT$&o?-Fkr!Rl<|hFNr70FMWh&m?p7UXs zcuY$oJwvN>WL8Qns2pw_Dz2dg8od>KhmyRKP9K=qJUxXc3NY@&ob4L*a?sw|a4(uW z=$R>R)qX`I`w24fC)P_{)x{$x`pOKuBjN-?gI>-Lt=FWr0Q{sOOtbHj6}#cmR;`tl z!s*)HPDpQ~AW(w|QZXrZpK(1Xjche^(%M^}66w3hT>O;Y&DhTiPc79sNq|)=h^piH z?H|SqjbMX`uM*w94KW?4Ep$#|r?^fOTg5L8ReV0Gc1hWb$Ma8O*OB0Rch@r1&>d2f zcXftnl|$maO8Ti{FBDFN#NH_lue)I3emYedB7W4S3Ecg1o&r?kDDh5R;Uv*>Min&a zZJL*0Lxc)1JBP=f9HdqqLlUezPIMQ#K_+Cwdv}w%q7Sp9eBM;v`Y@&a=JoAY`833A z9;tmn%WBKxSr?;^L60~yKQ$gKmWXZ(c$>ZaU~6$S9dJNECoSy(9zwB8keQgZ=)`tr zTj(w&&>nbsmCwTT1Ha|{>aMP-reaR-<%tam-<53EQ1=+zyQ1qHn?O0cS*ncv68 zW`2&>RW79<`3qhSU$D9cck)r*3ya-+nrK~t=gG$Ge$k6~k;mDZiZ~Mm_HJobT&xf& zoH9H~Qnk(PJE(W3h;-Zhh+{AXM)&|R{0w~>`S$$yDAQ? zlpb56k_5Lhw#+qgeAWs$#-~(5ho2_*p|um#PxtuePL>H_um)rw`9(bjT|er25CE1fv^!MnjJ$BB^~@HCv*$6z}+dXJ~kO z#og+#s*1Y!vi-u3AEq#pppZ~63vgyi$j(g1X-(1w(>E^e*=n#GGoz3#(Gh9%gvQmj zQhJwk8K`m2vSfCOb*bKuwjlcdj`x{%0;O z+UfQ6vN=i#hc@GYnyi4Wa`Tydm286(9A%~CIA%sew*bW{4>F)fc>neW%6zsX2W;AEgD% ztx%LWm=_7o9bOHyw4!%#KDlAyaJ2D^buA`*-;(Sjxt`C71I&CsJ=Zco59m0PK3v9s zEIYR??yFwN06_=WdM1~Ky0L?B6!w(M?~8Xbz}O&yDQX3Kc?TM}=RmQ}Ag@=>*??V5 zu{WQQpKC}&7zFwu{?c+tZkr7}WFz3sJ$K0ZvKYk!uOQN>!x#n}+1c6YJr%UK%&WNn zewT>?IQfa%1%A$KS+gV_luau7=n5mPatF9<$tD2w*%jtIh4;4NZmk#X>eFG0`4B2K zsIs^puIraCLNHT8KPU%cUJZp1F(VJDK~}{{G#o>v)NXGE@`a=vkHWYPy1uwVAb~CI zOOBC7-N}Z6Q`=QB*vo2%$Y1{G6j)0DfOAgUJV3kL>xjXhZj7ZLY?pG4E%DrNB_{q9 zm|L;T%?@$(GIkRgZZGv#>D{V?$szshIw|MG`*WI-d+>dmRantt>(FFS$u&{1#IQ_ zu9Q%H9^a72C=@b)CQKuRBHrmIs90wdesVLlEFVuWM zHqolxIHip+((lf*q(A%M`%f~i%Wiq5d;$A-wSb&}redbJo_o`A)vgJ}NtTy*|9RPe z!!B4gYoICnOA&Wvk#rKNB#Z|x`n=0eVBH3X$=KNL_P41sENqD%QBVX%UQnif=EIm# zud&WN_rw6OdO00wYyPR;@&Xl>T{B~7kptI5w(_?o#K$jA>Tw}mXlyzB9>gjt5HJ@% zn|S{ncfk_V`-8vbikiTq<7>9UJx?mK?*+sjSKyc$#-F|_yel)Gj20=4xJ5>A`F!DQ z_Qk^P04zsT{$;nz0t!3IG(9qCA+x9Ryp%-|o;cZEZr2BtIEqSGB z>@*o1^n&IMeZ2JdYoMkK#iH&N=fe^ceMI|EV2c#DD(O+|LF>b!NwWhopbg(m=MM&* z-(J30musb+eo}DV(AXRy9ChmZp7Umo8QCm}`u_cie3M&x@Xr=b;xDJ)PavFQu%vFi z>MvK{fE#134a^1jamejI1;=syjomN3AlvvX>^Z>^kw&>e-b;n6K92QoemY{q>=yz4Sqb9gdN60z-0jWhDhIn{Utk<8AQ|5RBiH z1Wit5czwfzuj1tEs|?| z{_Az~=09Tu{Po?{tC#+b1^?do(j{^Qh`)dO>*oCVzc10f_6|4)hh z596bF@ZeVs(to}Fi}d}~|NjGl|I*9`|H45O|6zT9umArb0|LK2L;pnN|7!;P>vZ_1 z|NM39sFE2(N+BJs`5us^M~UyeiUT@Pmnlxka>Bp1thvw1N8 zDk)Qclp%fRRaiSo_uXtv@SR^SFIjy-utuQ%a@$Uon{UDW{d`f; zvUn52obrTude%3}!}5O`dpuT&AAv*PuvJSI<{!Nk-8<1v3GHpC(hu*y7utTs$aAoV zYJH_9Q<0xm7#OSoskYtut$BZiI9MTNy!8EL4ii#>lj(wWRB&qt9*U>O= zdp@+66WiHA)?bf3Tv=*o__(d2(l?BFD{XtuHW&k9YLN!+CduG(UcowqWjQ*0v`sc0 zzaf*hJhS)}YFD>`Xkhv_b&!R#w=hY)DsfnyI@XSvDW@l^45k-wm6ub7ICAb;yqURX z%Q!XOBJ1}ovQ4n34E4xLU3e(smOR4cL>ku3ZLkx!j}sehgESz{WC^D1c28OzCfMlb zmjl=smfTOZ1Q13Y2Ca2VX+Uge>Q=SalwvqZ{{q+ojwd#CU zT@1Hbc6}bzG|#RNyv+_u)pI|DS<0|70n4FjCzGef_%Vt6FQwX?x>b7WSo!ebTel6L zepHbN{CQK=cX_d9AfyZd7x#r8w}0aS>jWEXUON)BUp`%1N|jm7o<0{P+iB{15O83P zE#SG#3cH}WZde1xa)L8C^CL~G&r!T`XKWtm*~-%(2@b_q^vLQZh5NYta!f}9WvDEx zTWr*Utbg00SyqLz*&xlN|laBAv%x?yyuT zYI{Qr#L7eafs4&Nui4}}-~v)BJY0}q?hAr$PIQ3e_flZyhMI4U~Pfwxn%@=l!c*anYSCeVtN`!N8Q51bnCeuSVJZt6JMp}(ip&)>^f~Xr#4N> zTpsOqUQU&}McP*k(xr8g_neCo9nAN;GB%9IOfRY_Q!Zuie_{X@_`ehGupz&n2bsxh z4}ct!EsLp#%*c9$qpvof*Y2~1cpE1x-!BtYT2fVlL1XUJ`axSpf>t$FoOMXfH^UMh zsKK@!;}US>Uax>Vp~XDY;l3ZN#Gwl(=n!A-@!I-ZVF{}4>NR9$51_T_#!)ms%xYfi zSv>=sKO6Y?1nW4r`zK!8a&O=jOoe98qRoC&kwDn1OUyI>n#_-I6 zG*D;;-sun{ZLr<$NArovjUDY!E)RN7-SFm{` zldninSK5XucENa4`hx7S7nV-HQmCyl2Iv_;B;1u?d0bIW=#C z{R5d&ZhC=aN0%$~QH5+MxD+Iw!I@6B)3uH$Fok_0QW}K3!OBAlW@b@^=?m2Jp&l;7 zD|V?w7u{kdyrY3d=-uApnIC#~D`NmGt+^~Ln_2j5xgZ8{|D|^TjXvc#MQb~4Tu;iF zNCuapL(^nY`l%8|XwIxB7K~TMOe$2o3)p=*C=mlCT%ulIHxqW+Nck?!Mav9@6AEyk_$}>Me&EV(3!ZFTOJA?jxGDIaKb-FuoW91YzrBoaE9_ zltSK-+BgAfuUO1rqY~q)7ZT5DNK8W--;;erm~Fem*S2Yzpo-?_D(|QIda=-COEhnv zoDxQRM@qf$XMlOxt%&>r5BH`PrFKOv;Cm>#M(HB__j>U z8aG)VH|Ew&V|`?dzfL}=%!X{FGkXiZPJ%FNPbf?ratqOz-hd}U0*Sg1u6k!M z(rp-pEgp^Pdlf8#7dPj1Hq`Uf%FFBRUE}fH{?>ZNg}PB?KOb1TX#}q-8b3qvxte|2 zQ88U!+~nM+>g9TWZs#Z*0)#EeFc~@ZdF_>1^uz{3b)ZnV8H60a$%q)LwZZ>8qai%Z|pQwGiWuq9b=^$St!*Do8Sv-fiCmV65R4elw>G(_ppkHF+-kXoe!g2n6->e0b8+` zD>`>1>~;Qkg@e(!1@Upvoelp@+E21pt5@d z!=rme#m5?zF)I+2U9L`=r)06kT+oBwTqJad6CVGtIMWK82$bnahgtIhM&m1A7Vqsw zZpsjeO{uAvC*F<~Ysn2-0vzmrLWP%d63vZ4@7QJ($OBzcRD;R4O15$I+R#tF5BbY*s$4v?E(&0Ve`BZ(JdC^5%iQC zO0}yj^~KR(;UrZS{EnR1a%0yt=1{q4<@0vs7e}C6b7LivE=rOaY*<+yLq&xb z+<-^;RL|55cS_`Q-zC908d-0Anwr(-ruEfU%BDhs_mmTgyd}$MXh;);I;3}_+T&P- z!n!mGkX@o^jBK1RD)9QXoaGgm=xljgta6cG6DieUUBtRUa4;y`l^lM6dmuf=xu7tx z38>(tJ(8aVnA`qM3wh;U)M+&TZB}F89K$L}Yfzqnb3JM{zTijm+cMVH&fb@~*JN8; zC5dc!(B|IcU5EKGWbuJO8}rROd=2;5tiXmT#*PIBGv_!kSzu$!XUeW0xE1>jUn$v5 z7DM_JA`An)Tl&kGzrS-Y+a5EDKmh@C{2mu2h~d2psJi9C8=c?)hi zCq+}VS8G5IsiTdTR#lTbr!B!Ruq}DU5*6jGezn2iNSZp3HDFNk4Z73(6~BM;UPZU1up$VOre1Pwf2=IRrObS^lG-_;`G#&!Ad?L;d1gs4a+PrD? z({?WqBUjFKdS$|Vrt7yv)2-?$`Tj(J6Ul(IujJmsjy*^Sh0?HJEB;HRT zsI_1t(1tvdfEWUq`5`KTg?;DDr5xhojxMPlc5atBJ55vh;)6>kKqE!$C82wzYW9eB zl^-%c?5TZyK6D3|)lK-MG=7l3>IgVOWZ zdM3<-TUd3vcvcFGhbt4cP@;%)kH{fs`b_iWTsTKA@{|uC;Rmv`racqziR*HoR}C0f zEZ~p#r~#8xPAiy8kLJWng4FtjRiU55m{_LXl-TVz`C12s7ilUu7St67J|FTpcg`yo zWDV>ju0tIO3oLnz((ZuB4!W~ms0{We_&e~fcEDK$B&DUl2(Ej9*x$E+> zU-s7*oD4jUxqj+6MsJr6(U>bT7?G3P{CgfTyEg^R3?~HzYyUnn8jWPb__{|iwI!x& z+vgUH^q(I~6jZ-hYfht1)APy4zQ6aZAPyoO)+mQ|cJOs!(ujyLgI!XUq|+A(DWC&- zhjpCZYt%0_8jrufXIg!mW(m922^=p zYao=I>?{H8mKRjQxHaEsI%l4AHnyu%H*q(LN83-AexV7Wybc9$26@*UZV22p{s{6p z7GJwQ-p;yr94 zy48IF4ew*HHbu{;&Jq|M6aej1a^=IK9LX$8RK$eVstzcwojmBjK`SS79 zn5}E&W%=`Vl{NU>*^{V&qsqf|(qdpR<`N2-Jcr{LVa{`m=e zq5Bj`m$uc*=|J9Wj=4u!iKy;DvqOdQtE!;P@vlq2663&$iLPB(zyTY>?rLLX96+@A zOSBnQX;C+WgHasnZ=q#FIRb8^$O9%d=no*~fFGCKW9w2Cp|KZ%BL#(nXYMod^n7Wxj;@RW!9Dj|A7Pm0C9uXH|jlyHI3DNcW0WX8P-~2&&Vn%3Ycl z1~qyi<}Kz%t)12S_=cRris0&bpRe0xvgkA`i{01za@L?i>#2{++h(H9+6_gnDKRPQ zn?S&0Y>JPCdLiN=9QhQ^Lo2AI!R^+b56(9Kkt5@Rg!?WtFEl zb+iYZR)eV@cwLPl8BB>piVJm$C;)drdlM3ROW_Jt5ih3F1We&{zIjVlUZ-}|rqosy zO2Vs0u#>=-vDRZHk5nl4DyG&$Ry#26fLUYjC|ZJ)M>V)U1Za&S=t=FROSnye3i}0Z zJGT1;Q>zpCbL4Q?ijH$z3OJI#!A@9vP~p56_i{#sN}CDgtbp&zqn@b}1L5P%tdn{N zIPNYBjCJ*sW!7oZ{l`uhc4fuJuSMhSC-C)mS)2%W2&LaJJ^qh(W;QzW1GgvvkVXdl zzF4)DoXy^%Z<}~(U#WeoAAxQzxtc;q>DI9X8v)H?CQqRA9nNPXzmq;2}h~Nc6L@CjMrvVHRof#fS(Qw8YqNobf*gN z4r!!OQtNut*S+nE!npaq7vX&Kf+fYXjwu_aX-ePKX(O>vY-oNIR)zG_8d_P0-`v#* zHaDR3Go6%>Fn$8!2TX|tvFu5ksrQ32uDdA~9C-?#6%|~IFDutXmiCwespbx7{h0!c zL9@e;^wKG!b*-ov0=3<9<^0(P#mgdEL!a1L2ZhU$TzZKi{IUiXj|z82B2#CN8n|vN z8N^W*yjRg+8!Nb2SRjzgFb}%L$Y3dV4A+G6=l)WkHh=a2mmMYbstwciLcQAc7LBZj zL)fDs{Vc@X&iWCP5mU3tGs~Z=Ztg~U>pjA9{Jj1=z91&W+G+UAlE6H6ZM)39Z$S~} zS_`iqvGFO~K(_6q>Zu#0-OrDTZaadO6Z{k}6lxx6_3Z65?dIs@zkb7>GTIFHki=!YV|9g=#5)5zTy-L=p=^#M$$ZG2{b|UUS}Ju%e=w8I(m(L zw9X9brKq=%p+_7q_j0}22h%yp3g<|M`}Pz`J0}9xW7|l%fqJHIq-Q9pe?B~FlE|IjGe#!d-$#`j`19@i`3_g3=UOl*)P z8H)N-uYH{cgIb1r{7@%V>vAXA*#}J|r`b%l@Mu!QfoI;j0x~n#t-qIAAVGFkBrody zAW&OQ7(P{xNsrvkT*jCMc)uJqZ5@LYI#d^f!KT7iQ>Q)zDbJGL`9_4VPSP@=xtHa> zXV%K6zfkmtzL#Ve53Oy#x-x*O*>wBImCaFgbQiL&k z%m+&7(9ikBEFVthKi!khrNjFgI~95Xyu>`-`xEO{bf5E9%X$yK&<1B^xCu{Tp>ja+ zo}$zmYg|@*`H)hSW08TYg3JrgnbHV$t72#^j8FYU{ToUE@(T-oDBppH(e+Uky0Y(6B2{5md zZ7dv6)Z7N&hU-sPvkZOrY`3fxO}vkarqtY3?U9OsIxFCpj_$G-t-yY=)?trtnCa}k z7fh{uSr?%w&)eQaj>c6u7H;?yq@^S^mCsqX-*e{)e83d7%vHU$>jq0hHBl(5r}R@8No-1W9y?F>A%C65jxSX5WL=}ohR!8NX4H;rWV)T z$Qd5^h%D3Sll|3blE_i4r;phorCW^(?G;A|5kUPsw5jZy#41rm)~Sndq?*TbKqd=7 zCr|ev!yZ)jAX89cnnaqPGT$iV~>!_S#uDhOHNJWQ7l}Y zKm1m+GG1+iZu*FhjdEIrv|Qy@6w#q2)#+y#7p4xLBCJeU57caoOo-cYzPrZrnekQ! z@`S4aAh9}q+&JE6^(M8Hvk$%~9;n`Z+@SAR8TbA%j;ngt(R9kBzIbXO(2*0@*p8wx zvdbv#WpRg>+nMlhDWarsEK(7Bj@Zd-L3TD54WjIx^yVen;3)d_QS~Ir)=<_=*ghw5 zWoi=p(d6`d0gQB_gl;m+0a$i*!{3Rd%DKlgjr)aH6)9Nz}$8AAHz=kvd8!BC-cNHnpTL>Kysi8wa>QWI= zI?|+x^b#QS5}Hz__t2#GgwP2P2)PU0-?#TU-|gp~bMudR9+Rv!nRAXc=N#|*8-!2j z`Ojm851Lf>vTqR&r|gRCvJZJ`;`Z}{D%0~xW8zsE%drN;R+AdXpGNZgMhzf53ZZR| zadw`B49hDMbSEjwtZ4k|hG2MxWxa86udkAm0*b2k?Y)zddAZ|@W|Lo_J~^Qiz<#k2 zSeVtagUnBeWZ{t%SyR=bcNFY{*wXA5STH+JQvYz?`6#D5xD;0wc|hYsi{ECi7p0^dgRyWu-)$t7>AzbTNfc{7$Olvo!##O9(pr5`}^-| z78?1Oht9qZ`g|@fv8Tbv-slj;L^fJpME;CC21a zVxn?Faxw8ysI5>BHi5#j0`a6OeTp^4tfO+$ljX{gl(8C~s49uh-gKaH>;adtm~LU0 zGnv4}e@i@~SSm)sbVnsUX)XAk*Elyw2RQ8uzvr$IxVv!%+vexGHjz18Dpu-z*okqk zoGojw8qeVM&3mv@DHLTV0c|mXm2$D7@Fg;oE+5gk1G%}qkeeWu6Oko$MvBf zv?GX;hIuItbjUVmB7CRY8uaq^Gv->Lt<2Qa$7{IUu(Sl^94fv!L=?|LS)0&ybS3F#UAoO+LT{f-8@_XOhdW~oTUE#tY zoW(46MjUt7ax-#(>M=a;kNBQr=8^B3wz(cev*WhH#sJ&!t3+Tz*)Z(Mp;CPud0o0) zkto4$9C1~ZX%`Ib$IvdOZ?>k9pQdg;Vq{dDQIh^Y1G7*`q#RdrsjR=LD zqY(~q(bN?sgqR)3OWN0^B50MxqkwXa>p~IBE{v$ee=%c3+K{ml-~y?#~^7;n;yFGD#NXQAy|8ci~|1Fj|m-R znacANidyKoR=y`Re94YX0-C#_3TjgNhC7?!K1f0=6TVopb>UY0Lg-M0*!AG86^oa# zs~$v0R&nzzj}bXD58Jg~53G)~fE@MG2O`X{!0y@gsrdsMvghwp899W?M92>1gi*jq zEpm8+5xz3aQtEX$g$i?Nm6R}jpLVb2>(63zaByPhAl{|Lf0$ZRgTGJn_3ox6C8IfR zd)!O@bV&I4z1aBD$)g9}0^IQGlw7r9sje}NNYM`UK9rN7Tav3zw*c3?U8vlu5iK!ifYe$6zQ(ldrv?N z-OlpU+S-M<oPR2+8*jk3igl85lncFTLH8Zau$PDeo4Qr1de=xIDngaP8%} zVJlAP$HjY^M&W_?D1Kue{@nu>q&)mm7}sT|I|Dx1F-{6*uGTnaA#LhR2?PX-hPjU# zj3-^q=6(#)ZRTF1yFX_tH!0gjsIuK|$ccNgs^yj1U+$Uy%dlt0 z8cNH#zUwmZ4xpKCxr{+i|Jz+$9(8>)`trnenb!v<&qgI=ZXvt584PVCTFywihY{WVdv>Ww{Ikx|%L3#O4+XBulE>8+7EJ_ocb z=+rvn$p|or7cU_=Z$ByuqyR^+P2tH3leYx#QDuF*YtdJ{n)Y}Gnu`QVWAhty^KBgkR0?PLsB0@hE|0*EQOg4yQRs>3ap6>dCOAa_gJT2t-7{+9edC; zDyHk%r|Av5w|^z|f}P^z(3HvTybU{`^K;3gs!-4KB4lUjAaYT)eVCOOjEHRMYNEC= zC|A-QHGHvp^?`41d*p)Vy%e3M{Y}LSzs~&}gza7H^fPxm$K4(aj+eeHj#jERErkjGZ) zpMkR3)!#;cm+qq-A&(q-DL02tD~%om-OyR79csny4#UV&lh&t(#s@Voqx)3%gc{zW z#&ff+`mGmh4!${3oIkI@#Q#l+A~P*1%UjU{wWSZ@;V3qtTL%^5kDAPjRd$y( z!fY;ayK=cy$?kOhfF~Cm6;+NdUMlDx?$mk8oTOCdK&yJ~TmKR;^pIlC%BCGo()cVZ zDa|m=m&Pk8O-A-ek-c*wrF_Mk@^~eYAzMi?WgzgVKa)!Rp0j~wmZ7I=MR4=6ZRWZ# z&bhpZJ?f=ICVjR(lL;=&GFVA}ff$>vpqgFJ;Gv;Cec|${cK5qm6bT|ZHlA$*Alj+R zVRzN*Ah2hr6;OpWr3x_)1_>!ZFr9%9jI4CC1uh60`3tx#ckrgiGjSDn0vFTrH~31u zrcVZJtLepN${1I4{=A73t{NJUe530xV6VH+lh%DwA^ywrnj~;(1?3Z^ajnu!oynuA zBxIe}PjPqANwW)3&8iBDvs@b%hP8Uw4sQo7OpX~R18A^J5-DlP*Pp( zIx2R$k^?+eiJ09J-`(dV^BLgUNyO)eY3Lf>G>g_?)|sA+(j{~l3{0Q%cqP;S9era~ zDl;Ew@b{pia9c@j6o%ch4q=~+J!iQVSDAZAGcc>&`Nh6EX{ESA!``<2A-km%d=;sl zn&9afsHM~QN9*?Uc(6cp>ZfMRO>iF|j?TOQJTxS=hxCl>0_$lg1O^O%0@xEK{< zB~Vbr64}#6@dw!-J-fBL63U;2)un(vlefLVBZ?c>$MwKDqdP`r4GS0)t@KJ-NUzH; z4uNqkC3K01iEgi?aHB6~7%3Q(K<#l#gL#52p|p#Nc&qlvOAIbVE));(bx8T)A153x z2`t^^CthMviPg_~d;I`e@ZLd2_MrD%8;+{NBOe7}Yt4W0=KXJIRO>HjR0-hbQt_J_ zHL~%wTvoNzXUdxMM@IOn=&4id{IXO@8TVs69XnZcEl?sm22(1jKs)E_%tGZMqM`}I z{%zVf|P)O?Qan2y>!{M!aiu?IRCwJ$0T*RWDU3gR$Nn7w0i)AO2t?w+&HAegcc*p#Mv2O&U8M>}6BT{ZN6roL zyE7aVs97YNR-dsqYTU=5h8R4e#-_C9Khg@AHapdrxt3fwKV(}x1gfF#zRd&Axd%k~ zKI>L>;&*P~72nmh=cJ$7rO&yu2n{_n1v)W%Hh~Vz2|CH=7ct}4FEvCybTt?USxfkk z;7bysRfm#u5gwWENVg8$C`I|B&FfYytDjd3&CZBWi@(O_8~Izv+%L?w+ihMnPT@1v zbb2&mM`doc#gLXCwz-;nRbbFb%cHr!f-TKDgt_O^L1NJUY)cuC|N1ATikidY_k_tY(o zv@3_bN`OQ~&gT@+XZBK2tQl6V6{i%PKA&Cin8C0v1hwnh1g7=p1jhBgc2z5EG~{`g z4(g7^>m$QNqtXrCLv|(?0pH8u(^T)o^pZAB%J+T^fqdlb=sqsC4Nl)2JXk>~w$rC# z&(nVu%YJ%1`tjuO)jUTLTRZOl7d(0nRr)K^qplC+{7Ds$w^}ZsqwxAt>JvrJ6i_e} zUI4R1IdvIwm@=sR1O#RIZyXF7f7LCCn??NVb%3Be(daKvD)Guh?wt~ zi_U#a3W_yL3~okdT_JD3*O)nre1s=&s5llHouSCls__2u<>yPks@c1+{kE3KC0pkE z{JE|yc2=>pVzTUj%3v)TYw#tiq2r@?rpP~NRHjniZcY&gHeL5`dm|*voMen&@}O_G zQd=j)w;RBKuu4^n-3yC2)zZ=0#OU4*v%wdrK?;0Qq)^~^Vpy1BwsyXo!d~1HvjH#z zH1VAw{C4EPLiB}z1G@E3pH}3Hv`-H7 zi3GwMnU8{dn5a}$zw)bcRSfgxMxn!AspqPqU5@wT2QvKBEZJ+XZ`W>T^G+U12E zC%~5aE#ZQC0`WjKSaLXC{~+-z=wp=RBYzyOusQt|qz%7DZzdj_nyL2f>ELwc1apZ15DVy1w)cE9ht6UL6_1!#PX$h0&S&7-f5sqVK z*4z38dY&)n!&5BXKoI<2VO5@#RX&}Apb5QMqxir%4ArQrIXZk~^j;FPR=g3Td>i^o z@>!`FItuFZhAQe2Mhcq$n&^J zZc1dd$OY~W^*hVPDrPLP0(@F@;!i^}rM`X`-39mPu_Tys#aG9YwRQ$FJ!nn0GS)4` z@?f~;moMD^cH1zAdtTpV2A_4~NQSuqNeR(K8qcZ9_AE0!iGi(%Yqq4yXtOv!tz72O zy$>@CLgkV>Ip!TB`Q1U;zvPady~I%xs%g2}2`!OEyV+3)#4qO{G0I#C)haA>(lN-& zqcx-Ca~{IB2`{`lkD?j3Ox}yIq+vDCFdv&M)DAYj&3WQBEQC6)T|+~znQ_sdhh~FL z7~}!156{Nqjlj6-_1DDR*45T->yO5i40=T>R;arO@oM>gK~P;MH-6R5E9SF}SImQ2 zjo&T?z~I%H5Y+x)bg3vA*`8qPzXe^%{tM`;98z_|801`;GBs>Ui~3}{8m#syHkjM? z3tA}De7kgk+#x$hVe%7Q6GFqk4nq2xMdxO38!ACEK74{fx~uo$r?MvfLXIbhbq@7Ye%M zA<2hNgch^h*t;OLgF$PkrL(mCI><4TMzyt!Oni`@`F*R{zQc24u0d)g#S$-Td4rj| zGkj#-M?!Aoz9qkp+Tj1MAr=_je+H0gpu`LFmJWATQ#sspK!zUy{FjS5DcdoGZ$2)Y^Roj zF}aaqOPs8S$`74*;?YFHiK%J@g#?zv$LA?vhu?v4>o8{Tt5%6KSevfGyIu9_KyJcy zL|8zOc3L2rlkM*4)G1bvOF?!>+CtTSugrS(5sDH0w41!X6r z#u1g0!}UDDjSli1i5Lr@7>Wht7u2KXSxUMlu4GiaI?o1@_rPi{c)5M-sLzrnR^dw5 zJjYg;fM7#!*Vg4Yk7nzR=Pm1vMV+E9UA*{CngE6CNS4tS|H$Yg6r3R$Z4$_o&4^1i zNVoOT^ieLNSnTq)3Lb5vDcZqV1?TbXlW{*Y(`_%EsJ+c8Un48kw*sUFHC#5wY&?Zg z%bG=_yGK&I{^ri-V{CQuMm$ z&sPhSxF7rx_sn-2t&Y~9ONq}D_4EifL(KCP<1uO=jfx*+Yx0iD^vxeDCr+#%D<^ht ztvkxbR$WhAxC-!U_Y*Pv7MR?MR~(#r5eUOr<|h-GRQmn*!2${n-``;T=t1!SeaKnn zl*mHwm-9~51L`K;1dfb4w;1_&XDYuR*QTp$LhGx4JSnXKRhnF>3ynTzpWOweGb?oJ z7^$-MXmAB?ZTwHEJ|PBC66YBnJaHSIEEn+LnRPeQ+Xq%bFdXX6<~Z3`y8xFAV@OI+ z#|zj>bN0zm>|r$(!`G$e%-gk=0`m5(RORQhi=ZXgtOFLaoKR+m1n-7~=DicNDzp2k zZ5^(SuR9r~bs!{1G^4mCVoq^$ex~-O%zYZ(3MuP&s%DR7Kf`NKo2z6zh;;`eTJkO_4jN@4XD0 z;f^wJY&pRo&{pY#(?k`AZQ{Ryv-!0kD5&JIh>8_gBZ5bl(ySp&i`+cdA5CFAJ@uI zxB{<~c(Au(T^m@!>w~z-{#9*^*o;3z3zFE?ADDnPn!PA<5UQh``v9rE}_f) zxvTDQ6Lr418XcGc7sVF;nj&EAsAMYt_R}n5CQCrn;>r>o-#3Js27*s@DCzKPGkr{y zoP?W`4TP&A7kqN|HlCxlo;i$x3|sQjtO6?ZO%_3Jk)8_&R>_0zy(@8F<~A+gUKuSU zd<_u4Ui@5A1*5@1mkAaGAS{^I!U}@sbZXe0V>5E!;*_QZEMOu z+QhGY3?4%sgU6tGNd0`fW#LB+Sifqhoy2sCzH`)OIao0R|AhCc5bHeywc=~@Ol4(= z!T>vSwKBU}ZOjh5$T?qKD{o zKekx`yLxe34m%zBD5i<8$}MdYXm$K;m8wFjh#g|B_U_|An#x5M* z3tcBYFAcnLd?X+18+X~;hEyr2qt3ku3PHa$If4i>0A!H;*CNP5#Q%;U13(7Z{}FbaBR4A?G0kUs<&i?#% zsbe?RoJ;eNdKBdhZ$C$!>3_O54_qYH(}eT~uqg?RGo`m59Z3sa zx&sN~*J4_V{4apd9*PPq)cxJLlyG+fltC%85f7YuDSU5rl5Hww1Bf?oCpz z)I1F~m8UMcmcQ&fOKqmN*buBga6}X*&RSrb+m~^eHf=H7l>b;1-$OacgGMai3Gv-< z@q>c%br;Yy#$uQcv;JjPo$r;R;&1ldh?nhRUQ5wjVeZ2Y#=0W6-KD(H4t20*BZF0;8Qe%@tS{2c zhx|dUr`LA5TGPN-2C4XEQW*obw>F4#9@wOY0K{O^{n%fG#w4WsA*YehlRk$Z`Z}15m-?ks6xgD9)X#B-k z%Lct+WO{wSSQP8%%Ft5#kqe!}39!g6<>mi9#@aDrEu;8$5sb-#sJ@o@^SNO}+ph8e zct(z!1spw9*ag}ow^vr;72^42^qt1>S!LT=9VwKff(vIV%+AHOoBIi-O=N^RIpvOVOE@|@qR;LL@`mOnrI(H{qjsynR8CWN zxxSb-$Z|bqF^5t<>xs0Tb(zi#aZl21_Ra-n8yftVHb$uL7vb9p=klHz<^JJ3JXHv` z8C=!a=V*N@eGGG*1C6hOw&yi=(_-Vi?PpitHH}6Vee;Ri`9%t*TN_=OxA#_q73XnC zI@a;r^xXM_cz2R08K}~GMc|-U-_W%z|JNQYmW%GT3kl<{u$}P+_mPXCoF8aM&BSMo z)C~?uqN6-=0*y=DP9AlP7o7!-F#U_xPgrO_zW=>HzpXT#`fFboYHKWEt>qrgiAxxBV>sl|K0j6oWIhwkD}5a&Z*<&Nf0kxjH?0&@zZsq z(*o1AyvEd?S;d{japKt{()qj#M$%^F3s$Qk8mV>_&^iN=j;snjZ9|FG{MxdT;bWCA zoO;<$9BZAruWeFIYd$(jp=?=nwBe+C#t%d2?dKPmu6JLHKc=*0wSxLzdgrpSsxDwR zu0Y$$_b2e`mFDq7rX+1mkL1t8y_Rm0&4VSHlJE45$}mVg)b_U7VJ`r@iL7~9n;jDe4Fis zQ|hk&%*bpJ@=6FP(`gENHn=GP*kg5So|jCbe&!A&iilQQV;ky>b0UW8a)&{=rQ=yFf*ykaIUK#@YyxPg7ftm4761Vsk zzZTlq@hv=ft=JW7fZGwE!^PMs#2uxr7U)XFMltskbL?g}?u>YYgB zb9icNe)3;Jt*gPalnc)M1Jq`mKatBydn%Q(sj{tHXqrOPz>BY2YJzk8D)@{l@xtrK z$P9Q=KE8=z7I}KxLJBbm-Ys6`jfnQe+Y2g9LP8d!7rxi9^aKpHZ>wpfq5KDG&%z6$ z8{Q5E8jz=s0qHMj7Q|$UFKz`xFOi8-^(@WF9}os_dS%H9SqEMhF)!9mS4J~AHg8f; zsuQp1xt=|jXGklQ>(wC*y3OR+I2Np5YUFzOp#fEfx6*^Gx3t~T#PcBWK|9GK-Gd-`@5i5UlW9{J@efd{~B1T!eg|XU@jy^=Y47C z1LVcK4HAf1Zc>v!@f$7(y4wBBJ3i;TO}Mw9XkOQWcpy5be=>p$QvS5ZLvPC{4djTF zmst&`H4V4|hFi&FH{-PJI)*@ydhl=jda)wt+HpAhj-gQ;Q9lQUj{D^C7$XYf>-}+a z^XzI_Ab=o2w(4942sT(a068P@-SGw&REKzRcmu)MzUSMUlX);QFPTNl;~)yYzNKS9 zOAwgbJuVrA@4Fz&c)oadSXIuuw+di7^SSMlX~;gq6$IT|kW*xEdu{ai-=F*P_Ze&J=PY(kVZUHRy-_^LXa!YiK z=}2prr5*{kD1(RcQSW|(>HLClqGjKX#s0EYkT9R){O(%JoOhC5=&!bsk=-bu;c!N# zB2>T)zs#sy%$HF+|7MO4p&4T)?QGh$HHcTaFK#_kI6>B<177v`bSuX9dqBwaHX~Q2 z0wA-`+DwwBxuQIF+(3N?hk`H0H$i?xqhWp#Nm5xHeson=I}? z&G_mM)#lkY)Y=%g2%xqbo0@cQ|9Mw`{`1;isJ{30zp&rFrLR??Nx$d+-@Y*Q zN%r5v+$dXqy4V~r*aVaMY8ZG zRqw$#cJwcRSBFb3xKT)`N_@te&(NjC>WyYbcsGeyhvy|D{a%cm`s|fXw0u|gxuLPt z1J*E(F|QlHdGB5e!|C@G6~eGnQyMXU=7|M^4K^Y_VSraB{&{`yR&Gok;_LxUclXL8 z;v~s%a=*(hSO3JG?_a_4&p!ZdFEy|y?Kx!mw)fFiuLw#;D`!qEqs+pbU8wxgJ%zTs zv2>2q7lZw1sOe=ncHWKmXA%Q@N5Q4I7h|NEM0(|zLM{x{9D?*4>LtL^a96HSFrBj} z+!||rXkbe})`IF2{BzyDhZjW_UGXo4t@+SIX)OgZ%w~Lj4nJ4SCc1orG8C75v4x4K zwwqX|ITN8Llu-_^@{GD?JlN(p2H_*zxzc{?si6%qO4#e& zCPsWzNnnA8s0iq?#KEl59Pxgp(O{6s*iI}_;a8a{08Fk!e^<`Rg?(}N`4YEzr5P2L zUS0hjEB%|7H+amULzExw;To?6>&Jmc%*{_i-%eZoGyu!FqwH@o`bfB>?UAz!>S zJ>76npJ%aM+G9c!n3r~L5v#qHNto9Z?m3SQazwM4VAqyP<9I14eEf?^zz0W6 zd`O|_Qr1@+4kdRMyDX&D`m8gTDZqGO&X0WC?=8Ij&=~fF=v3f`jc(IyE*kDlFq_T_ z+%6F;WSoeRKDA9Q4~No5#T;n|Q`c1LJi#BbOf1VKnY4MV*zeP=Nq zF+Q{xf+D;w3Kq?=^L_vfHL3Z@Pz|n6`(7Q-6A=i|)GSS^qjdjI=E<&^UDu9wbv%D?6V!?VFJyU%%`l6yWUMimo>$S zn0zUt@dP&JEJCb1x7j=%de=$b&!h0o%FwU~q=N1Cwd^cmgd|pd*(44Vm=g~x&~{=y z>%2kB`#CA{YdF2kdo12ciq4Fyn!7T(U6LG6oeLA8J`2nobmK}EDxmaKP!6Qf!TN%l zMiU*U3F{D>N+f zs9B;B4`&`lUmX1P2ED;l?n#wB{dX0J#|BxV=?Sj*CrI$LLMs=Q`vudZc*UPvin93htK7jOfvWjiM03Z3Cq2Zo!&JCg@Yv(}(doB|UDjPiTY8#ld0>Wc|)xawUB2gdJZZdYw55~h;SkpAPE zD6&Fw!7;Sh=goK1Ny~~dV4lS#9q#EIRZ}Hr@BK0)Uwg7~Y zOM5kQau^9x?gnwx6G(N^B9+X9LtgFCHd55k>M#$bv{vH?T0;*A-uppRc4Jw)9Z$_0 ziE$psWq0d0{6!bLv*vJ<*nMLOL=1jm*>r24ljJ&kk=RnIEN%i;Uq?MJ4H+?(4ig== z>y_9gYL!#f%1BjiwCosx0^WO>8f9at+rI7BNdvH^I;e;2$J&QgOd&~WZ_r1f0l7^I zV>{t1n%A#pV2@1GR_T5GUmUrmE*@oQumCmg^;?Gs(PV)-gZ#JMOvqHlIYZRqcao}O zvnlZ)lt*)9Lxb4A*AF$b$4YS=+&_|~9mlHJ^p*&az+zYaXSH|V+~!}Yty&4)h#-0U z9^sPG38b+q#=ZM(&Lq;LCS|mPg3Y->wX=isP+!(V<@VhP)h8$1El;cOo#RT2(zzV&prmzKkuxn*H|p!VIGuCRH=at6Vn;^A zSM3BtzY*N)j1arr@#7;SBeAg6%2n*qdc=8CclPaNF%kBV3J7m-UbWj%7@C_9v7+4U zaNh5yJgU-9Syt6$KSSgKDHF_I(qZ);Y8Gk1RS@%jM|dwfG^(2JutJ?{ zp84YxR_MSNX8kiC^&|<<&UcPlh}kLaqFG!jeS5L#r(T^D?g=>6zojFzfaUDsoy|)J zDewYmp?jhI>uD!Y*=wOLGJ}poA5IogXWf~}#EeyjKmHIymp1Ai#pJ0tHiR6=2^NF@ z&|M8sRGO@MOq5vJf^k65n=RXi@kte{3`sYw=f)W}`^SQ2hbRftW~3g{RYs&$BNa>C zNMpAH<|{fM(9aAuFR!`_SjxK{3=gF^w$sns#^njv54RK@qXQr6mdCeD$MKF-UM8}Z z8%&qeZ9J)o5zQ&3rsqwkchKcE!l{8Boly*0�-F;;U@>ntC3>3wcahR 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 QYecGwnonSl|9ta*0LXIS{{R30 diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index cc63dd60a9..d2a6532534 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -34,7 +34,7 @@ The REST endpoints use specific request headers for v1.1. ##### [v1](#tab/v1) -v1 requires sending an Access Token URL. The UI in Partner Center covers the access token. +v1 requires sending an access token. The Partner Center UI shows the access token URL. v1 uses Secrets. The UI in Partner Center covers Secrets. @@ -52,7 +52,7 @@ To use v1.1 of the Update REST API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience.Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. -1. Write down the ClientID and API key. +1. Write down the Client ID and the new API key. 1. Update your authentication workflows, if needed. @@ -66,13 +66,13 @@ To use v1 of the Update REST API: 1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. -1. Generate your ClientID and secrets. +1. Generate your ClientID and secrets. You can generate multiple client secrets for your Client ID. For example, you can create multiple secrets for multiple projects. 1. Update your authentication workflows, if needed. 1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL. -1. Retrieve the access token. Details are in [Retrieving the access token (v1 only)](#retrieving-the-access-token-v1-only), below. +1. Retrieve the access token. Details are in [Retrieve the access token (v1 only)](#retrieve-the-access-token-v1-only), below. 1. When you use a REST endpoint, specify the access token in the request header. Details are in [Using the API endpoints](#using-the-api-endpoints), below. @@ -118,20 +118,15 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/partner-center-1-1-ui.png) The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: - * **Client ID**. - * **API Key**. - * **Expiry** date for the API key. + * Your **Client ID**. + * **API Keys**. + * The **Expiry** date for each API key. 1. Write down the following: * The **Client ID**. - * The **API key**. + * The new **API key**. - You'll use the Client ID and API key values in request headers when using a REST endpoint: - - ``REST - `Authorization: ApiKey ` - `X-ClientID: ` - ``` + You'll use the Client ID and API key in the request header when using a REST endpoint. ##### [v1](#tab/v1) @@ -142,40 +137,34 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your 1. On the **Publish API** page, click the **Create API credentials** button. This step may take a few minutes to finish. The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: - * **Client ID** - * **Client secret** - * **Expiry date** - * **Access token URL** + * Your **Client ID**. + * Your **Access token URL**. + * **Client secrets**. + * The **Expiry date** of each Secret. ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID, Client Secret, and Auth Token URL](./using-addons-api-images/create-api-credentials-button.png) 1. Write down the following: * The **Client ID**. - * The **Client secret**. * The **Access token URL**. + * The new **Client secret**. - You'll use these values in the next step, to get an access token. + You'll use the Client ID, access token URL, and client secret to get an access token, per [Retrieve the access token](#retrieve-the-access-token), below . You'll then use the access token in the request header when using a REST endpoint. > [!IMPORTANT] > Be sure to write down the client secret now, because it's only visible immediately after enabling or renewing the API (that is, after creating API credentials). This particular secret isn't shown again. -You can generate multiple client secrets for your client ID. For example, you can create multiple secrets for multiple projects. - ---- - +You can generate multiple client secrets for your Client ID. For example, you can create multiple secrets for multiple projects. - -## Retrieving the access token (v1 only) - - -##### [v1.1](#tab/v1-1) -Not applicable. + +#### Retrieve the access token + +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token by using the client credentials grant, send a POST request to the Access token URL (the OAuth token). -##### [v1](#tab/v1) +The tenant information is available in the Access token URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). ```REST Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token @@ -184,8 +173,8 @@ Header Parameters: Content-Type: application/x-www-form-urlencoded ``` - -#### Sample request + +###### Sample request ```console > curl \ @@ -200,8 +189,8 @@ https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1 ``` - -#### Sample response + +###### Sample response ```json { From 7d7fbb8a06102637f1b57fcdcc0f22ba33d21d8c Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 14:21:05 -0700 Subject: [PATCH 32/53] anchor link fix --- .../extensions-chromium/publish/api/using-addons-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index d2a6532534..ddeec7d042 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -72,7 +72,7 @@ To use v1 of the Update REST API: 1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL. -1. Retrieve the access token. Details are in [Retrieve the access token (v1 only)](#retrieve-the-access-token-v1-only), below. +1. Retrieve the access token. Details are in [Retrieve the access token](#retrieve-the-access-token), below. 1. When you use a REST endpoint, specify the access token in the request header. Details are in [Using the API endpoints](#using-the-api-endpoints), below. From 9629da283d451d29b2aa304ce76a02f5afd63110 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 14:26:19 -0700 Subject: [PATCH 33/53] reseq title now that it's long --- .../developer-guide/api-support.md | 2 +- microsoft-edge/extensions-chromium/landing/index.yml | 2 +- .../publish/api/addons-api-reference.md | 12 ++++++------ .../publish/api/using-addons-api.md | 4 ++-- .../extensions-chromium/publish/update-extension.md | 4 ++-- .../whats-new/released-features.md | 2 +- microsoft-edge/toc.yml | 2 +- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/api-support.md b/microsoft-edge/extensions-chromium/developer-guide/api-support.md index 287cb22bd7..6c223b95f8 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/api-support.md +++ b/microsoft-edge/extensions-chromium/developer-guide/api-support.md @@ -133,4 +133,4 @@ This work is licensed under a [Creative Commons Attribution 4.0 International Li * [Chrome Extensions API reference for Manifest V2](https://developer.chrome.com/docs/extensions/mv2/reference/) * [Chrome Extensions API reference for Manifest V3](https://developer.chrome.com/docs/extensions/reference/api/) -* [Using the Microsoft Edge Add-ons Update REST API](../publish/api/using-addons-api.md) - to update an extension at the Microsoft Edge Add-ons website. +* [Using the Update REST API for Microsoft Edge Add-ons](../publish/api/using-addons-api.md) - to update an extension at the Microsoft Edge Add-ons website. diff --git a/microsoft-edge/extensions-chromium/landing/index.yml b/microsoft-edge/extensions-chromium/landing/index.yml index d2d62e74ec..40645ef63d 100644 --- a/microsoft-edge/extensions-chromium/landing/index.yml +++ b/microsoft-edge/extensions-chromium/landing/index.yml @@ -180,7 +180,7 @@ landingContent: - text: Set an externally installed extension to automatically update url: ../publish/auto-update.md - - text: Using the Microsoft Edge Add-ons Update REST API + - text: Using the Update REST API for Microsoft Edge Add-ons url: ../publish/api/using-addons-api.md - linkListType: reference diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 9e3b259231..3bf50550a4 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -12,7 +12,7 @@ ms.date: 09/05/2024 This article is the REST endpoint reference for the Microsoft Edge Add-ons API. This API automates publishing updates to add-ons that have been submitted to the Microsoft Edge Add-ons store. -For an overview, see [Using the Microsoft Edge Add-ons Update REST API](./using-addons-api.md). +For an overview, see [Using the Update REST API for Microsoft Edge Add-ons](./using-addons-api.md). @@ -101,7 +101,7 @@ This API has the following expected status codes. See also: -* [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the Microsoft Edge Add-ons Update REST API_. +* [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the Update REST API for Microsoft Edge Add-ons_. @@ -222,7 +222,7 @@ This API has the following expected status codes. See also: -* [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the Microsoft Edge Add-ons Update REST API_. +* [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the Update REST API for Microsoft Edge Add-ons_. @@ -293,7 +293,7 @@ This API has the following expected status codes. See also: -* [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the Microsoft Edge Add-ons Update REST API_. +* [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the Update REST API for Microsoft Edge Add-ons_. @@ -508,7 +508,7 @@ This API has the following expected status codes. See also: -* [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the Microsoft Edge Add-ons Update REST API_. +* [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the Update REST API for Microsoft Edge Add-ons_. @@ -541,6 +541,6 @@ Here's a list of common error codes and possible reasons. For a full list, see ## See also -* [Using the Microsoft Edge Add-ons Update REST API](./using-addons-api.md) +* [Using the Update REST API for Microsoft Edge Add-ons](./using-addons-api.md) * [Partner Center REST error codes](/partner-center/develop/error-codes) in Partner Center docs. * [List of HTTP status codes](https://wikipedia.org/wiki/List_of_HTTP_status_codes) at Wikipedia. \ No newline at end of file diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index ddeec7d042..d91ecb697f 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -1,5 +1,5 @@ --- -title: Using the Microsoft Edge Add-ons Update REST API +title: Using the Update REST API for Microsoft Edge Add-ons description: REST endpoints to automate publishing updates to add-ons that are submitted to the Microsoft Edge Add-ons store. author: MSEdgeTeam ms.author: msedgedevrel @@ -8,7 +8,7 @@ ms.service: microsoft-edge ms.subservice: extensions ms.date: 09/19/2024 --- -# Using the Microsoft Edge Add-ons Update REST API +# Using the Update REST API for Microsoft Edge Add-ons To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). diff --git a/microsoft-edge/extensions-chromium/publish/update-extension.md b/microsoft-edge/extensions-chromium/publish/update-extension.md index 62ced7ace1..4c76fe29f1 100644 --- a/microsoft-edge/extensions-chromium/publish/update-extension.md +++ b/microsoft-edge/extensions-chromium/publish/update-extension.md @@ -29,7 +29,7 @@ To update your extension that's at the store (the Microsoft Edge Add-ons website 1. After the `Status` column displays `In the store`, your extension update is available on the Microsoft Edge Add-ons website. -After your extension has been created initially, you can update your extension by [Using the Microsoft Edge Add-ons Update REST API](./api/using-addons-api.md). +After your extension has been created initially, you can update your extension by [Using the Update REST API for Microsoft Edge Add-ons](./api/using-addons-api.md). @@ -89,5 +89,5 @@ The extension is now removed from the Microsoft Edge Add-ons website. Users who * [Set an externally installed extension to automatically update](./auto-update.md) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. -* [Using the Microsoft Edge Add-ons Update REST API](./api/using-addons-api.md) +* [Using the Update REST API for Microsoft Edge Add-ons](./api/using-addons-api.md) * [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) diff --git a/microsoft-edge/extensions-chromium/whats-new/released-features.md b/microsoft-edge/extensions-chromium/whats-new/released-features.md index a2caec6aa2..52689962da 100644 --- a/microsoft-edge/extensions-chromium/whats-new/released-features.md +++ b/microsoft-edge/extensions-chromium/whats-new/released-features.md @@ -42,7 +42,7 @@ To share your feedback and comments about this feature, see [GitHub discussion t ## Publish and update extensions using the Microsoft Edge Add-ons API -You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the Microsoft Edge Add-ons Update REST API](../publish/api/using-addons-api.md). +You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the Update REST API for Microsoft Edge Add-ons](../publish/api/using-addons-api.md). *Released March 2022* diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 92db4fdc5b..3c57da6160 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1112,7 +1112,7 @@ - name: REST API for updating an extension items: - - name: Using the Microsoft Edge Add-ons Update REST API + - name: Using the Update REST API for Microsoft Edge Add-ons href: extensions-chromium/publish/api/using-addons-api.md - name: REST API Reference for Microsoft Edge Add-ons From d7ecfd67ec0813508e275692c537fea44fff159e Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 14:28:40 -0700 Subject: [PATCH 34/53] add "update" to Ref article title --- microsoft-edge/extensions-chromium/landing/index.yml | 2 +- .../publish/api/addons-api-reference.md | 4 ++-- .../publish/api/using-addons-api.md | 10 +++++----- microsoft-edge/toc.yml | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/microsoft-edge/extensions-chromium/landing/index.yml b/microsoft-edge/extensions-chromium/landing/index.yml index 40645ef63d..3a29adc823 100644 --- a/microsoft-edge/extensions-chromium/landing/index.yml +++ b/microsoft-edge/extensions-chromium/landing/index.yml @@ -185,7 +185,7 @@ landingContent: - linkListType: reference links: - - text: REST API Reference for Microsoft Edge Add-ons + - text: REST API Reference for updating Microsoft Edge Add-ons url: ../publish/api/addons-api-reference.md # ============================================================================= diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 3bf50550a4..adf7469ac8 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -1,5 +1,5 @@ --- -title: REST API Reference for Microsoft Edge Add-ons +title: REST API Reference for updating Microsoft Edge Add-ons description: The Add-ons API Reference, for REST endpoints to automate publishing updates to add-ons that are submitted to the Microsoft Edge Add-ons store. author: MSEdgeTeam ms.author: msedgedevrel @@ -8,7 +8,7 @@ ms.service: microsoft-edge ms.subservice: extensions ms.date: 09/05/2024 --- -# REST API Reference for Microsoft Edge Add-ons +# REST API Reference for updating Microsoft Edge Add-ons This article is the REST endpoint reference for the Microsoft Edge Add-ons API. This API automates publishing updates to add-ons that have been submitted to the Microsoft Edge Add-ons store. diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index d91ecb697f..9918563ad9 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -298,7 +298,7 @@ If the request succeeds and the update process begins, you receive a `202 Accept See also: -* [Upload a package to update an existing submission](./addons-api-reference.md#upload-a-package-to-update-an-existing-submission) in _REST API Reference for Microsoft Edge Add-ons_. +* [Upload a package to update an existing submission](./addons-api-reference.md#upload-a-package-to-update-an-existing-submission) in _REST API Reference for updating Microsoft Edge Add-ons_. @@ -351,7 +351,7 @@ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submission --- See also: -* [Check the status of a package upload](./addons-api-reference.md#check-the-status-of-a-package-upload) in _REST API Reference for Microsoft Edge Add-ons_. +* [Check the status of a package upload](./addons-api-reference.md#check-the-status-of-a-package-upload) in _REST API Reference for updating Microsoft Edge Add-ons_. @@ -410,7 +410,7 @@ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submission If the request succeeds and the publishing process begins, you'll receive a `202 Accepted` response status code with a `Location` header. This location header contains the `operationID` that's required for checking the status of the publish operation. See also: -* [Publish the product draft submission](./addons-api-reference.md#publish-the-product-draft-submission) in _REST API Reference for Microsoft Edge Add-ons_. +* [Publish the product draft submission](./addons-api-reference.md#publish-the-product-draft-submission) in _REST API Reference for updating Microsoft Edge Add-ons_. @@ -463,14 +463,14 @@ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submission --- See also: -* [Check the publishing status](./addons-api-reference.md#check-the-publishing-status) in _REST API Reference for Microsoft Edge Add-ons_. +* [Check the publishing status](./addons-api-reference.md#check-the-publishing-status) in _REST API Reference for updating Microsoft Edge Add-ons_. ## See also -* [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md) - REST API for updating an extension. +* [REST API Reference for updating Microsoft Edge Add-ons](./addons-api-reference.md) - REST API for updating an extension. * [Supported APIs for Microsoft Edge extensions](../../developer-guide/api-support.md) - JavaScript APIs for developing an extension. GitHub: diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 3c57da6160..4fe5a87d71 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1115,7 +1115,7 @@ - name: Using the Update REST API for Microsoft Edge Add-ons href: extensions-chromium/publish/api/using-addons-api.md - - name: REST API Reference for Microsoft Edge Add-ons + - name: REST API Reference for updating Microsoft Edge Add-ons href: extensions-chromium/publish/api/addons-api-reference.md - name: Set an externally installed extension to automatically update From 79797c10a4c5bf17fce606b4ba3684c741a18f10 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 15:19:43 -0700 Subject: [PATCH 35/53] clarify lead-in re: access token & url --- .../publish/api/using-addons-api.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 9918563ad9..d45cd07842 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -34,7 +34,7 @@ The REST endpoints use specific request headers for v1.1. ##### [v1](#tab/v1) -v1 requires sending an access token. The Partner Center UI shows the access token URL. +v1 requires sending an access token to the API endpoint. You obtain the access token by sending a POST message to an access token URL. The Partner Center UI shows the access token URL. v1 uses Secrets. The UI in Partner Center covers Secrets. @@ -159,12 +159,13 @@ You can generate multiple client secrets for your Client ID. For example, you c #### Retrieve the access token - -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token by using the client credentials grant, send a POST request to the Access token URL (the OAuth token). +You obtain an access token by sending a POST message to an access token URL. The Partner Center UI shows the access token URL, which is the same as in this article. You then include the access token in the header when using an API endpoint, such as the endpoint for [Uploading a package to update an existing submission](#uploading-a-package-to-update-an-existing-submission), below. -The tenant information is available in the Access token URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). + +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token (an OAuth token) by using the client credentials grant, send a POST request to the Access token URL. The tenant information is available in the access token URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). +Description of the endpoint to use to get an access token: ```REST Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token @@ -176,6 +177,8 @@ Header Parameters: Content-Type: application/x-www-form-urlencoded ###### Sample request +For example, to get an access token, send a POST request to the access token URL, as follows: + ```console > curl \ -X POST \ @@ -192,6 +195,8 @@ https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1 ###### Sample response +An access token is returned to you, such as: + ```json { "token_type": "Bearer", From 957d3b04b2c2a5a1daaa854406f5cd93cd9ced1c Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 15:38:27 -0700 Subject: [PATCH 36/53] title for Using more like for Ref article --- .../developer-guide/api-support.md | 2 +- microsoft-edge/extensions-chromium/landing/index.yml | 2 +- .../publish/api/addons-api-reference.md | 12 ++++++------ .../publish/api/using-addons-api.md | 6 +++--- .../extensions-chromium/publish/update-extension.md | 4 ++-- .../whats-new/released-features.md | 2 +- microsoft-edge/toc.yml | 2 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/api-support.md b/microsoft-edge/extensions-chromium/developer-guide/api-support.md index 6c223b95f8..4c7fbeaf85 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/api-support.md +++ b/microsoft-edge/extensions-chromium/developer-guide/api-support.md @@ -133,4 +133,4 @@ This work is licensed under a [Creative Commons Attribution 4.0 International Li * [Chrome Extensions API reference for Manifest V2](https://developer.chrome.com/docs/extensions/mv2/reference/) * [Chrome Extensions API reference for Manifest V3](https://developer.chrome.com/docs/extensions/reference/api/) -* [Using the Update REST API for Microsoft Edge Add-ons](../publish/api/using-addons-api.md) - to update an extension at the Microsoft Edge Add-ons website. +* [Using the REST API for updating Microsoft Edge Add-ons](../publish/api/using-addons-api.md) - to update an extension at the Microsoft Edge Add-ons website. diff --git a/microsoft-edge/extensions-chromium/landing/index.yml b/microsoft-edge/extensions-chromium/landing/index.yml index 3a29adc823..5c10375a95 100644 --- a/microsoft-edge/extensions-chromium/landing/index.yml +++ b/microsoft-edge/extensions-chromium/landing/index.yml @@ -180,7 +180,7 @@ landingContent: - text: Set an externally installed extension to automatically update url: ../publish/auto-update.md - - text: Using the Update REST API for Microsoft Edge Add-ons + - text: Using the REST API for updating Microsoft Edge Add-ons url: ../publish/api/using-addons-api.md - linkListType: reference diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index adf7469ac8..7d131bb4e1 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -12,7 +12,7 @@ ms.date: 09/05/2024 This article is the REST endpoint reference for the Microsoft Edge Add-ons API. This API automates publishing updates to add-ons that have been submitted to the Microsoft Edge Add-ons store. -For an overview, see [Using the Update REST API for Microsoft Edge Add-ons](./using-addons-api.md). +For an overview, see [Using the REST API for updating Microsoft Edge Add-ons](./using-addons-api.md). @@ -101,7 +101,7 @@ This API has the following expected status codes. See also: -* [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the Update REST API for Microsoft Edge Add-ons_. +* [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the REST API for updating Microsoft Edge Add-ons_. @@ -222,7 +222,7 @@ This API has the following expected status codes. See also: -* [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the Update REST API for Microsoft Edge Add-ons_. +* [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the REST API for updating Microsoft Edge Add-ons_. @@ -293,7 +293,7 @@ This API has the following expected status codes. See also: -* [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the Update REST API for Microsoft Edge Add-ons_. +* [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the REST API for updating Microsoft Edge Add-ons_. @@ -508,7 +508,7 @@ This API has the following expected status codes. See also: -* [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the Update REST API for Microsoft Edge Add-ons_. +* [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the REST API for updating Microsoft Edge Add-ons_. @@ -541,6 +541,6 @@ Here's a list of common error codes and possible reasons. For a full list, see ## See also -* [Using the Update REST API for Microsoft Edge Add-ons](./using-addons-api.md) +* [Using the REST API for updating Microsoft Edge Add-ons](./using-addons-api.md) * [Partner Center REST error codes](/partner-center/develop/error-codes) in Partner Center docs. * [List of HTTP status codes](https://wikipedia.org/wiki/List_of_HTTP_status_codes) at Wikipedia. \ No newline at end of file diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index d45cd07842..e35109200d 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -1,5 +1,5 @@ --- -title: Using the Update REST API for Microsoft Edge Add-ons +title: Using the REST API for updating Microsoft Edge Add-ons description: REST endpoints to automate publishing updates to add-ons that are submitted to the Microsoft Edge Add-ons store. author: MSEdgeTeam ms.author: msedgedevrel @@ -8,7 +8,7 @@ ms.service: microsoft-edge ms.subservice: extensions ms.date: 09/19/2024 --- -# Using the Update REST API for Microsoft Edge Add-ons +# Using the REST API for updating Microsoft Edge Add-ons To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). @@ -163,7 +163,7 @@ You can generate multiple client secrets for your Client ID. For example, you c You obtain an access token by sending a POST message to an access token URL. The Partner Center UI shows the access token URL, which is the same as in this article. You then include the access token in the header when using an API endpoint, such as the endpoint for [Uploading a package to update an existing submission](#uploading-a-package-to-update-an-existing-submission), below. -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token (an OAuth token) by using the client credentials grant, send a POST request to the Access token URL. The tenant information is available in the access token URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token (an OAuth token) by using the client credentials grant, send a POST request to the access token URL. The tenant information is available in the access token URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). Description of the endpoint to use to get an access token: diff --git a/microsoft-edge/extensions-chromium/publish/update-extension.md b/microsoft-edge/extensions-chromium/publish/update-extension.md index 4c76fe29f1..8c3a74f04e 100644 --- a/microsoft-edge/extensions-chromium/publish/update-extension.md +++ b/microsoft-edge/extensions-chromium/publish/update-extension.md @@ -29,7 +29,7 @@ To update your extension that's at the store (the Microsoft Edge Add-ons website 1. After the `Status` column displays `In the store`, your extension update is available on the Microsoft Edge Add-ons website. -After your extension has been created initially, you can update your extension by [Using the Update REST API for Microsoft Edge Add-ons](./api/using-addons-api.md). +After your extension has been created initially, you can update your extension by [Using the REST API for updating Microsoft Edge Add-ons](./api/using-addons-api.md). @@ -89,5 +89,5 @@ The extension is now removed from the Microsoft Edge Add-ons website. Users who * [Set an externally installed extension to automatically update](./auto-update.md) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. -* [Using the Update REST API for Microsoft Edge Add-ons](./api/using-addons-api.md) +* [Using the REST API for updating Microsoft Edge Add-ons](./api/using-addons-api.md) * [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) diff --git a/microsoft-edge/extensions-chromium/whats-new/released-features.md b/microsoft-edge/extensions-chromium/whats-new/released-features.md index 52689962da..b88c0e57d4 100644 --- a/microsoft-edge/extensions-chromium/whats-new/released-features.md +++ b/microsoft-edge/extensions-chromium/whats-new/released-features.md @@ -42,7 +42,7 @@ To share your feedback and comments about this feature, see [GitHub discussion t ## Publish and update extensions using the Microsoft Edge Add-ons API -You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the Update REST API for Microsoft Edge Add-ons](../publish/api/using-addons-api.md). +You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the REST API for updating Microsoft Edge Add-ons](../publish/api/using-addons-api.md). *Released March 2022* diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 4fe5a87d71..19af9a2207 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1112,7 +1112,7 @@ - name: REST API for updating an extension items: - - name: Using the Update REST API for Microsoft Edge Add-ons + - name: Using the REST API for updating Microsoft Edge Add-ons href: extensions-chromium/publish/api/using-addons-api.md - name: REST API Reference for updating Microsoft Edge Add-ons From cff19aa88782c1eaa2a227319c5ac5e6bf78777c Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 15:54:39 -0700 Subject: [PATCH 37/53] not "cover"; clarif "opt in" --- .../publish/api/using-addons-api.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index e35109200d..9e7830e656 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -28,7 +28,7 @@ As of September 6, 2024, both v1.1 and v1 of this Update REST API are supported. ##### [v1.1](#tab/v1-1) -v1.1 uses an API key. The UI in Partner Center covers the API key. +v1.1 uses an API key. The UI in Partner Center provides API keys. The REST endpoints use specific request headers for v1.1. @@ -36,7 +36,7 @@ The REST endpoints use specific request headers for v1.1. v1 requires sending an access token to the API endpoint. You obtain the access token by sending a POST message to an access token URL. The Partner Center UI shows the access token URL. -v1 uses Secrets. The UI in Partner Center covers Secrets. +v1 uses Secrets. The UI in Partner Center provides Secrets. The REST endpoints use specific request headers for v1. @@ -46,25 +46,23 @@ The REST endpoints use specific request headers for v1. #### Overview of using the Update REST API -##### [v1.1](#tab/v1-1) +To use the Update REST API: -To use v1.1 of the Update REST API: +##### [v1.1](#tab/v1-1) -1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience.Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience, by clicking the **Enable** button next to **enable the new experience**. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. 1. Write down the Client ID and the new API key. 1. Update your authentication workflows, if needed. -1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by any changes to the API key. +1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by any changes to the API key, such as if you're changing from using v1 of this REST API, which uses access tokens instead of API keys. 1. When you use a REST endpoint, specify the ClientID and API key in the request header. Details are in [Using the API endpoints](#using-the-api-endpoints), below. ##### [v1](#tab/v1) -To use v1 of the Update REST API: - -1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token from the access token URL. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. 1. Generate your ClientID and secrets. You can generate multiple client secrets for your Client ID. For example, you can create multiple secrets for multiple projects. From 2d61c95c65002d6cafe65acd5ab7d38c5f8d894f Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 16:08:21 -0700 Subject: [PATCH 38/53] convert mid-sentence lists --- .../publish/api/using-addons-api.md | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 9e7830e656..9b010fc6c8 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -211,21 +211,31 @@ For more information, see [Get a token](/azure/active-directory/develop/v1.1-oau ## Using the API endpoints -The Update REST API exposes endpoints for getting a list of products, updating products, and publishing products. +The Update REST API exposes endpoints for: +* Getting a list of products. +* Updating a product. +* Publishing an update of a product. + +To use this Microsoft Edge Add-ons Update REST API, you must have the following, per above: ##### [v1.1](#tab/v1-1) -After you have an API key, you can use the Microsoft Edge Add-ons API. +An API key and a Client ID. ##### [v1](#tab/v1) -After you have an access token, you can use the Microsoft Edge Add-ons API. +An access token. --- -There's no API for creating a new product or updating a product's metadata, such as the description. You must complete these tasks manually in Microsoft Partner Center. - The API is available at the endpoint `https://api.addons.microsoftedge.microsoft.com`. + + +There aren't REST API endpoints for: +* Creating a new product. +* Updating a product's metadata, such as the description. + +To create a new product or update a product's metadata, you must use Microsoft Partner Center. From e155b55414d69a91832bb509da5ee41eb34eafde Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 16:12:56 -0700 Subject: [PATCH 39/53] corrected list of endpoints abilities --- .../extensions-chromium/publish/api/using-addons-api.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 9b010fc6c8..0bda6bf142 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -212,9 +212,12 @@ For more information, see [Get a token](/azure/active-directory/develop/v1.1-oau ## Using the API endpoints The Update REST API exposes endpoints for: -* Getting a list of products. -* Updating a product. -* Publishing an update of a product. +* [Uploading a package to update an existing submission](#uploading-a-package-to-update-an-existing-submission) +* [Checking the status of a package upload](#checking-the-status-of-a-package-upload) +* [Publishing the submission](#publishing-the-submission) +* [Checking the publishing status](#checking-the-publishing-status) + +These endpoints are introduced below. To use this Microsoft Edge Add-ons Update REST API, you must have the following, per above: From 6144242c3cc79d674cdf752c471d20cfc259f1c2 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 16:19:57 -0700 Subject: [PATCH 40/53] endpoint root --- .../extensions-chromium/publish/api/using-addons-api.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 0bda6bf142..0ad46c37ab 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -231,8 +231,7 @@ An access token. --- -The API is available at the endpoint `https://api.addons.microsoftedge.microsoft.com`. - +The API is available at the endpoint root `https://api.addons.microsoftedge.microsoft.com`. There aren't REST API endpoints for: * Creating a new product. From 7ecd579608fe64b6c3ecc2bad272a4d056de4d78 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 22:34:15 -0700 Subject: [PATCH 41/53] missing colon X-Client, break curl into 2-3 lines --- .../publish/api/using-addons-api.md | 43 +++++++++++++++---- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 0ad46c37ab..7b44f5b968 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -242,15 +242,23 @@ To create a new product or update a product's metadata, you must use Microsoft P ## Uploading a package to update an existing submission + Use this REST API endpoint to update the package for an add-on. This API uploads a package to update an existing draft submission of an add-on product. + + +#### Endpoint description + + ##### [v1.1](#tab/v1-1) ```REST Endpoint: /v1/products/$productID/submissions/draft/package Type: POST -Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID +Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID: $ClientID Body content: the package file to upload ``` @@ -287,7 +295,8 @@ To get the product ID: ```console > curl \ --H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ +-H "Authorization: ApiKey $ApiKey" \ +-H "X-ClientID: $ClientID" \ -H "Content-Type: application/zip" \ -X POST \ -T $FILE_NAME \ @@ -318,15 +327,20 @@ See also: ## Checking the status of a package upload + Use this API to check the status of package upload. + + +#### Endpoint description + ##### [v1.1](#tab/v1-1) ```REST Endpoint: /v1/products/$productID/submissions/draft/package/operations/$operationID Type: GET -Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID +Header Parameters: Authorization: ApiKey $ApiKey; X-ClientID: $ClientID ``` ##### [v1](#tab/v1) @@ -347,7 +361,8 @@ Header Parameters: Authorization: Bearer $TOKEN ```console > curl \ --H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ +-H "Authorization: ApiKey $ApiKey" \ +-H "X-ClientID: $ClientID" \ -X GET \ -v \ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/draft/package/operations/$operationID @@ -371,15 +386,20 @@ See also: ## Publishing the submission + Use this API to publish the current draft of the product to the Microsoft Edge Add-ons website. + + +#### Endpoint description + ##### [v1.1](#tab/v1-1) ```REST Endpoint: /v1/products/$productID/submissions Type: POST -Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID +Header Parameters: Authorization: ApiKey $ApiKey; X-ClientID: $ClientID Body content: Notes for certification, in JSON format ``` @@ -402,7 +422,8 @@ Body content: Notes for certification, in JSON format ```console > curl \ --H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ +-H "Authorization: ApiKey $ApiKey" \ +-H "X-ClientID: $ClientID" \ -X POST \ -d '{ "notes"="text value" }' \ -v \ @@ -430,15 +451,20 @@ See also: ## Checking the publishing status + Use this API to check the status of the publish operation. + + +#### Endpoint description + ##### [v1.1](#tab/v1-1) ```REST Endpoint: /v1/products/$productID/submissions/operations/$operationID Type: GET -Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID +Header Parameters: Authorization: ApiKey $ApiKey; X-ClientID: $ClientID ``` ##### [v1](#tab/v1) @@ -459,7 +485,8 @@ Header Parameters: Authorization: Bearer $TOKEN ```console > curl \ --H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ +-H "Authorization: ApiKey $ApiKey" \ +-H "X-ClientID: $ClientID" \ -X GET \ -v \ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} From 575cd0808e162fb15d73567933ce50ef1630370e Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 23:47:00 -0700 Subject: [PATCH 42/53] $varName, hints, tips, links --- .../publish/api/addons-api-reference.md | 67 ++++++++++++------- .../publish/api/using-addons-api.md | 44 +++++++++--- 2 files changed, 79 insertions(+), 32 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 7d131bb4e1..489df92454 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -23,9 +23,12 @@ As of September 6, 2024, both v1.1 and v1 of this Update REST API are supported. ## Upload a package to update an existing submission + Uploads a package to update an existing draft submission of an add-on product. +See also [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the REST API for updating Microsoft Edge Add-ons_. + #### Request @@ -34,6 +37,15 @@ Uploads a package to update an existing draft submission of an add-on product. |---|---| | `POST` | `/products/{productID}/submissions/draft/package` | + + ###### URI parameters @@ -42,6 +54,10 @@ Uploads a package to update an existing draft submission of an add-on product. |---|---| | `productID` | Required. The product ID of the product to which the package must be uploaded. | + + ###### Request headers @@ -50,23 +66,13 @@ The following request headers are required: ##### [v1.1](#tab/v1-1) -* `Authorization: ApiKey ` -* `X-ClientID: ` +* `Authorization: ApiKey $ApiKey` +* `X-ClientID: $ClientID` * `Content-Type: application/zip` - - ##### [v1](#tab/v1) -* `Authorization: Bearer ` +* `Authorization: Bearer $TOKEN` * `Content-Type: application/zip` --- @@ -87,6 +93,8 @@ global in article, & check using.md * Location: `{operationID}` +The response includes an operation ID, to send to other endpoints. + ###### Status codes @@ -106,9 +114,12 @@ See also: ## Check the status of a package upload + Gets the status of the package upload. +See also [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the REST API for updating Microsoft Edge Add-ons_. + #### Request @@ -133,12 +144,12 @@ The following request headers are required: ##### [v1.1](#tab/v1-1) -* `Authorization: ApiKey ` -* `X-ClientID: ` +* `Authorization: ApiKey $ApiKey` +* `X-ClientID: $ClientID` ##### [v1](#tab/v1) -* `Authorization: Bearer ` +* `Authorization: Bearer $TOKEN` --- @@ -227,9 +238,12 @@ See also: ## Publish the product draft submission + Publishes the current draft of the product to Microsoft Edge Add-ons. +See also [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the REST API for updating Microsoft Edge Add-ons_. + #### Request @@ -254,12 +268,12 @@ The following request headers are required: ##### [v1.1](#tab/v1-1) -* `Authorization: ApiKey ` -* `X-ClientID: ` +* `Authorization: ApiKey $ApiKey` +* `X-ClientID: $ClientID` ##### [v1](#tab/v1) -* `Authorization: Bearer ` +* `Authorization: Bearer $TOKEN` --- @@ -279,6 +293,8 @@ The following request headers are required: * Location: `{operationID}` +The response includes an operation ID, to send to other endpoints. + ###### Status codes @@ -298,9 +314,12 @@ See also: ## Check the publishing status + Checks the status of the publish operation. +See also [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the REST API for updating Microsoft Edge Add-ons_. + #### Request @@ -324,12 +343,12 @@ The following request headers are required: ##### [v1.1](#tab/v1-1) -* `Authorization: ApiKey ` -* `X-ClientID: ` +* `Authorization: ApiKey $ApiKey` +* `X-ClientID: $ClientID` ##### [v1](#tab/v1) -* `Authorization: Bearer ` +* `Authorization: Bearer $TOKEN` --- @@ -345,6 +364,8 @@ None. A `GET` operation status API can be called in the following scenarios. In all valid scenarios, `200 OK` is returned, with different status messages. +The response includes an operation ID, to send to other endpoints. + ###### Response when a new product is published @@ -543,4 +564,4 @@ Here's a list of common error codes and possible reasons. For a full list, see * [Using the REST API for updating Microsoft Edge Add-ons](./using-addons-api.md) * [Partner Center REST error codes](/partner-center/develop/error-codes) in Partner Center docs. -* [List of HTTP status codes](https://wikipedia.org/wiki/List_of_HTTP_status_codes) at Wikipedia. \ No newline at end of file +* [List of HTTP status codes](https://wikipedia.org/wiki/List_of_HTTP_status_codes) at Wikipedia. diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 7b44f5b968..9838ba4902 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -174,8 +174,9 @@ Header Parameters: Content-Type: application/x-www-form-urlencoded ###### Sample request + -For example, to get an access token, send a POST request to the access token URL, as follows: +For example, to get an access token, send a POST request to the access token URL, by entering a `curl` command at the command prompt, as follows: ```console > curl \ @@ -242,26 +243,29 @@ To create a new product or update a product's metadata, you must use Microsoft P ## Uploading a package to update an existing submission - + Use this REST API endpoint to update the package for an add-on. This API uploads a package to update an existing draft submission of an add-on product. +See also [Upload a package to update an existing submission](./addons-api-reference.md#upload-a-package-to-update-an-existing-submission) in _REST API Reference for updating Microsoft Edge Add-ons_. + #### Endpoint description - ##### [v1.1](#tab/v1-1) ```REST Endpoint: /v1/products/$productID/submissions/draft/package Type: POST -Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID: $ClientID +Header Parameters: Authorization: ApiKey $ApiKey; X-ClientID: $ClientID; Content-Type: application/zip Body content: the package file to upload ``` + + ##### [v1](#tab/v1) ```REST @@ -290,6 +294,9 @@ To get the product ID: #### Sample request + + +To upload a package to update an existing submission, use the `curl` command at a command prompt as follows: ##### [v1.1](#tab/v1-1) @@ -327,10 +334,14 @@ See also: ## Checking the status of a package upload - + Use this API to check the status of package upload. +`$operationID` is the operation ID that's returned in the response header from [Uploading a package to update an existing submission](#uploading-a-package-to-update-an-existing-submission) or [Publishing the submission](#publishing-the-submission). + +See also [Check the publishing status](./addons-api-reference.md#check-the-publishing-status) in _REST API Reference for updating Microsoft Edge Add-ons_. + #### Endpoint description @@ -356,6 +367,9 @@ Header Parameters: Authorization: Bearer $TOKEN #### Sample request + + +To check the status of a package upload, use the `curl` command at the command prompt as follows: ##### [v1.1](#tab/v1-1) @@ -386,10 +400,12 @@ See also: ## Publishing the submission - + Use this API to publish the current draft of the product to the Microsoft Edge Add-ons website. +See also [Publish the product draft submission](./addons-api-reference.md#publish-the-product-draft-submission) in _REST API Reference for updating Microsoft Edge Add-ons_. + #### Endpoint description @@ -417,6 +433,9 @@ Body content: Notes for certification, in JSON format #### Sample request + + +To publish the submission, use the `curl` command at the command prompt as follows: ##### [v1.1](#tab/v1-1) @@ -451,10 +470,14 @@ See also: ## Checking the publishing status - + Use this API to check the status of the publish operation. +`$operationID` is the operation ID that's returned in the response header from [Uploading a package to update an existing submission](#uploading-a-package-to-update-an-existing-submission) or [Publishing the submission](#publishing-the-submission). + +See also [Check the publishing status](./addons-api-reference.md#check-the-publishing-status) in _REST API Reference for updating Microsoft Edge Add-ons_. + #### Endpoint description @@ -480,6 +503,9 @@ Header Parameters: Authorization: Bearer $TOKEN #### Sample request + + +To check the publishing status, use the `curl` command at the command prompt as follows: ##### [v1.1](#tab/v1-1) From 842a6dd3b60be26894ada5b666d6eaa98b2a9dfb Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Fri, 20 Sep 2024 00:08:30 -0700 Subject: [PATCH 43/53] revert auth token url to v2.0 --- .../extensions-chromium/publish/api/addons-api-reference.md | 1 - .../extensions-chromium/publish/api/using-addons-api.md | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 489df92454..3d04b11ee6 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -38,7 +38,6 @@ See also [Uploading a package to update an existing submission](./using-addons-a | `POST` | `/products/{productID}/submissions/draft/package` | -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token (an OAuth token) by using the client credentials grant, send a POST request to the access token URL. The tenant information is available in the access token URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). + Description of the endpoint to use to get an access token: From 39b45c2bf30608b32cf80b506e73004524e07c92 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Fri, 20 Sep 2024 01:00:17 -0700 Subject: [PATCH 45/53] $varName consistency, keep /v1/ --- .../publish/api/addons-api-reference.md | 29 +++++-------------- .../publish/api/using-addons-api.md | 4 --- 2 files changed, 8 insertions(+), 25 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 3d04b11ee6..ac1172264f 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -35,15 +35,7 @@ See also [Uploading a package to update an existing submission](./using-addons-a | Method | Request URI | |---|---| -| `POST` | `/products/{productID}/submissions/draft/package` | - - +| `POST` | `/products/$productID/submissions/draft/package` | @@ -51,11 +43,7 @@ global, consistency pass in using.md & ref.md | URI parameter | Description | |---|---| -| `productID` | Required. The product ID of the product to which the package must be uploaded. | - - +| `$productID` | Required. The product ID of the product to which the package must be uploaded. | @@ -125,7 +113,7 @@ See also [Checking the status of a package upload](./using-addons-api.md#checkin | Method | Request URI | |---|---| -| `GET` | `/products/{productID}/submissions/draft/package/operations/{operationID}` | +| `GET` | `/products/$productID/submissions/draft/package/operations/$operationID` | @@ -133,7 +121,7 @@ See also [Checking the status of a package upload](./using-addons-api.md#checkin | URI parameter | Description | |---|---| -| `operationID` | Required. The operation ID of the upload request submitted in the previous step. This information is available in the response header. | +| `$operationID` | Required. The operation ID of the upload request submitted in the previous step. This information is available in the response header. | @@ -249,7 +237,7 @@ See also [Publishing the submission](./using-addons-api.md#publishing-the-submis | Method | Request URI | |---|---| -| `POST` | `/products/{productID}/submissions` | +| `POST` | `/products/$productID/submissions` | @@ -257,7 +245,7 @@ See also [Publishing the submission](./using-addons-api.md#publishing-the-submis | URI parameter | Description | |---|---| -| `productID` | Required. The product ID of the product whose draft must be published. | +| `$productID` | Required. The product ID of the product whose draft must be published. | @@ -325,8 +313,7 @@ See also [Checking the publishing status](using-addons-api.md#checking-the-publi | Method | Request URI | |---|---| -| `GET` | `/products/{productID}/submissions/operations/{operationID}` | - +| `GET` | `/products/$productID/submissions/operations/$operationID` | @@ -544,7 +531,7 @@ Here's a list of common error codes and possible reasons. For a full list, see |---|---|---| | 400 Bad Request | The server didn't understand the request. | There's no package (zip file) in the body. Or, `Content-Type` header is missing or its value is incorrect. | | 401 Unauthorized | The request page needs an authorization. | The auth token is missing, expired, or not valid. | -| 404 Not Found | The server can't find the requested page. | The specified `productID` or `operationID` doesn't have a valid GUID, isn't valid, or doesn't belong to the developer who is making the request. | +| 404 Not Found | The server can't find the requested page. | The specified product ID or operation ID doesn't have a valid GUID, isn't valid, or doesn't belong to the developer who is making the request. | | 408 Request Timeout | The request took longer than the server was prepared to wait. | There was a timeout while uploading a package. | | 429 Too many requests | Too many requests were sent by the user. | Too many requests were sent and they got throttled. | diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 83aeebe83b..d78ca7f2a1 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -268,10 +268,6 @@ Header Parameters: Authorization: ApiKey $ApiKey; X-ClientID: $ClientID; Content Body content: the package file to upload ``` - - ##### [v1](#tab/v1) ```REST From bd181247693320e5903fd270e24ec4f6af5944e2 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Fri, 20 Sep 2024 01:24:57 -0700 Subject: [PATCH 46/53] PUT -> POST --- .../extensions-chromium/publish/api/using-addons-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index d78ca7f2a1..d07a9cbf45 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -84,7 +84,7 @@ Details are below. | Term | Definition | |---|---| -| _operation_ | A REST operation such as GET or PUT. | +| _operation_ | A REST operation such as GET or POST. | | _operation ID_ | The ID of a REST operation. | | _package_ | The `.zip` package that contains the files for your Microsoft Edge Add-on. | | _product_ | A Microsoft Edge extension or theme. Also referred to as a Microsoft Edge _Add-on_. | From e0e81ccda3b0957ca86c359123b4a97231c809a2 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Fri, 20 Sep 2024 06:43:08 -0700 Subject: [PATCH 47/53] azure to entra 404 --- .../extensions-chromium/publish/api/using-addons-api.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index d07a9cbf45..c7e712d821 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -210,7 +210,7 @@ An access token is returned to you, such as: } ``` -For more information, see [Get a token](/azure/active-directory/develop/v1.1-oauth2-client-creds-grant-flow#get-a-token) in _Microsoft identity platform and the OAuth 2.0 client credentials flow_. +For more information, see [Get a token](/entra/identity-platform/v2-oauth2-client-creds-grant-flow#get-a-token) in _Microsoft identity platform and the OAuth 2.0 client credentials flow_. --- @@ -547,4 +547,4 @@ GitHub: * [Issues](https://github.com/MicrosoftDocs/edge-developer/issues/) in `edge-developer` repo for Microsoft Edge Developer docs. Microsoft identity platform: -* [Microsoft identity platform and the OAuth 2.0 client credentials flow](/azure/active-directory/develop/v1.1-oauth2-client-creds-grant-flow) +* [Microsoft identity platform and the OAuth 2.0 client credentials flow](/entra/identity-platform/v2-oauth2-client-creds-grant-flow) From 0cac749cd580fc2141199bd7977f4391e89ce6ff Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Fri, 20 Sep 2024 06:53:09 -0700 Subject: [PATCH 48/53] {operationID} to $operationID in send lines --- .../extensions-chromium/publish/api/using-addons-api.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index c7e712d821..31572122a1 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -517,7 +517,7 @@ To check the publishing status, use the `curl` command at the command prompt as -H "X-ClientID: $ClientID" \ -X GET \ -v \ -https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} +https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/$operationID ``` ##### [v1](#tab/v1) @@ -527,7 +527,7 @@ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submission -H "Authorization: Bearer $TOKEN" \ -X GET \ -v \ -https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} +https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/$operationID ``` --- From 39a14c5f8951004d3f5f5103dbf1c176979187d1 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Mon, 23 Sep 2024 06:46:04 -0700 Subject: [PATCH 49/53] Update released-features.md --- .../extensions-chromium/whats-new/released-features.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/microsoft-edge/extensions-chromium/whats-new/released-features.md b/microsoft-edge/extensions-chromium/whats-new/released-features.md index b88c0e57d4..23dced8ad8 100644 --- a/microsoft-edge/extensions-chromium/whats-new/released-features.md +++ b/microsoft-edge/extensions-chromium/whats-new/released-features.md @@ -46,6 +46,8 @@ You can integrate APIs directly into your Continuous Integration / Continuous De *Released March 2022* +Update September 2024: v1.1 of this REST API provides increased security. + ## Addition of breadcrumbs to Microsoft Partner Center From 33c792304fd4f7205e08ad8362ab35f1b32654c6 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Mon, 23 Sep 2024 07:15:18 -0700 Subject: [PATCH 50/53] not publish extension. CI/CD expansion --- .../extensions-chromium/publish/api/using-addons-api.md | 6 +++--- .../extensions-chromium/whats-new/released-features.md | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 31572122a1..683d979b3e 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -10,7 +10,7 @@ ms.date: 09/19/2024 --- # Using the REST API for updating Microsoft Edge Add-ons -To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). +To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). You can integrate these REST API endpoints directly into your continuous integration/continuous delivery (CI/CD) pipeline, to publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatically publishing updates to add-ons submitted to the Microsoft Edge Add-ons store. You can use these REST endpoints to automate the process of uploading and publishing new versions of your add-ons to the Microsoft Edge Add-ons store. You use the **Publish API** page at Partner Center to first enable the API and then begin using these API endpoints. @@ -56,7 +56,7 @@ To use the Update REST API: 1. Update your authentication workflows, if needed. -1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by any changes to the API key, such as if you're changing from using v1 of this REST API, which uses access tokens instead of API keys. +1. Re-configure any continuous integration/continuous delivery (CI/CD) pipelines that might be impacted by any changes to the API key, such as if you're changing from using v1 of this REST API, which uses access tokens instead of API keys. 1. When you use a REST endpoint, specify the ClientID and API key in the request header. Details are in [Using the API endpoints](#using-the-api-endpoints), below. @@ -68,7 +68,7 @@ To use the Update REST API: 1. Update your authentication workflows, if needed. -1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL. +1. Re-configure any existing continuous integration/continuous delivery (CI/CD) pipelines that might be impacted by the changes to the access token URL. 1. Retrieve the access token. Details are in [Retrieve the access token](#retrieve-the-access-token), below. diff --git a/microsoft-edge/extensions-chromium/whats-new/released-features.md b/microsoft-edge/extensions-chromium/whats-new/released-features.md index 23dced8ad8..83503d3156 100644 --- a/microsoft-edge/extensions-chromium/whats-new/released-features.md +++ b/microsoft-edge/extensions-chromium/whats-new/released-features.md @@ -40,9 +40,9 @@ To share your feedback and comments about this feature, see [GitHub discussion t -## Publish and update extensions using the Microsoft Edge Add-ons API +## Publish updates of extensions using the Microsoft Edge Add-ons API -You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the REST API for updating Microsoft Edge Add-ons](../publish/api/using-addons-api.md). +You can integrate REST API endpoints directly into your continuous integration/continuous delivery (CI/CD) pipeline, to publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the REST API for updating Microsoft Edge Add-ons](../publish/api/using-addons-api.md). *Released March 2022* From b967f24ef92eb4dd5f2ce097b37b689364df5970 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Mon, 23 Sep 2024 07:24:38 -0700 Subject: [PATCH 51/53] the api --> this api --- .../extensions-chromium/publish/api/using-addons-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 683d979b3e..95b23a8509 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -10,7 +10,7 @@ ms.date: 09/19/2024 --- # Using the REST API for updating Microsoft Edge Add-ons -To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). You can integrate these REST API endpoints directly into your continuous integration/continuous delivery (CI/CD) pipeline, to publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. +To publish an extension, you first use Partner Center, and then optionally you can use this REST API to update the extension (or use Partner Center instead). You can integrate these REST API endpoints directly into your continuous integration/continuous delivery (CI/CD) pipeline, to publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatically publishing updates to add-ons submitted to the Microsoft Edge Add-ons store. You can use these REST endpoints to automate the process of uploading and publishing new versions of your add-ons to the Microsoft Edge Add-ons store. You use the **Publish API** page at Partner Center to first enable the API and then begin using these API endpoints. From b7d9106d6a43350ec5f9a1ccacf31852856c589a Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Mon, 23 Sep 2024 07:40:09 -0700 Subject: [PATCH 52/53] restructure Intro --- .../publish/api/using-addons-api.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 95b23a8509..54eee072f6 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -10,9 +10,19 @@ ms.date: 09/19/2024 --- # Using the REST API for updating Microsoft Edge Add-ons -To publish an extension, you first use Partner Center, and then optionally you can use this REST API to update the extension (or use Partner Center instead). You can integrate these REST API endpoints directly into your continuous integration/continuous delivery (CI/CD) pipeline, to publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. +Use this REST API to programmatically update an extension that's been published at the Microsoft Edge Add-ons website, to automate the process of uploading and publishing new versions of your extension. You can integrate these REST API endpoints directly into your continuous integration/continuous delivery (CI/CD) pipeline, to publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. -The Microsoft Edge Add-ons API provides a set of REST endpoints for programmatically publishing updates to add-ons submitted to the Microsoft Edge Add-ons store. You can use these REST endpoints to automate the process of uploading and publishing new versions of your add-ons to the Microsoft Edge Add-ons store. You use the **Publish API** page at Partner Center to first enable the API and then begin using these API endpoints. +This REST API exposes endpoints for: +* [Uploading a package to update an existing submission](#uploading-a-package-to-update-an-existing-submission) +* [Checking the status of a package upload](#checking-the-status-of-a-package-upload) +* [Publishing the submission](#publishing-the-submission) +* [Checking the publishing status](#checking-the-publishing-status) + +These endpoints are described below. + +To use this REST API, you first use the **Publish API** page at Partner Center to enable the API. + +To initially publish a new extension, you use Partner Center. To update the extension, either manually use Partner Center, or programmatically use this REST API. To submit suggestions and feedback, enter an [Issue about the Add-ons API](https://github.com/MicrosoftDocs/edge-developer/issues/new?title=[Add-ons%20API]). From d8dd8b81b9072caca53cd1ae028eb2ae56f16cde Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Mon, 23 Sep 2024 07:59:28 -0700 Subject: [PATCH 53/53] clarify opt in to API key UX --- .../extensions-chromium/publish/api/using-addons-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 54eee072f6..00412b957c 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -60,7 +60,7 @@ To use the Update REST API: ##### [v1.1](#tab/v1-1) -1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience, by clicking the **Enable** button next to **enable the new experience**. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the UI that uses API keys, by clicking the **Enable** button next to **enable the new experience**. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. 1. Write down the Client ID and the new API key.

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 literal 0 HcmV?d00001 diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index 6a1c47105f..aee8428085 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -99,20 +99,26 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your 1. Under the **Microsoft Edge** program, select **Publish API**. +1. Next to the message "enable the new experience", click the **Enable** button: + + ![Enable API at Partner Center, for v1.1](./using-addons-api-images/partner-center-1-1-enable.png) + 1. On the **Publish API** page, click the **Create API credentials** button. This step may take a few minutes to finish. - The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: - * **Client ID** - * **API key** - * **Expiry date** + The ClientID and API key are automatically generated: + + ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/partner-center-1-1-ui.png) - ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/create-api-credentials-button.png) + The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: + * **Client ID**. + * **API Key**. + * **Expiry** date for the API key. 1. Write down the following: * The **Client ID**. - * The **API key** + * The **API key**. - The ClientID and API key are automatically generated. You'll use these values as request headers when using a REST endpoint: + You'll use the Client ID and API key values in request headers when using a REST endpoint: ``REST `Authorization: ApiKey ` @@ -227,6 +233,10 @@ The API is available at the endpoint `https://api.addons.microsoftedge.microsoft Use this REST API endpoint to update the package for an add-on. This API uploads a package to update an existing draft submission of an add-on product. +##### [v1.1](#tab/v1-1) + + + ```REST Endpoint: /v1/products/$productID/submissions/draft/package Type: POST @@ -234,6 +244,17 @@ Header Parameters: Authorization: Bearer $TOKEN; Content-Type: application/zip Body content: the package file to upload ``` +##### [v1](#tab/v1) + +```REST +Endpoint: /v1/products/$productID/submissions/draft/package +Type: POST +Header Parameters: Authorization: Bearer $TOKEN; Content-Type: application/zip +Body content: the package file to upload +``` + +--- + `$productID` is the product ID of the Microsoft Edge Add-on that you want to update. To get the product ID: @@ -252,6 +273,22 @@ To get the product ID: #### Sample request +##### [v1.1](#tab/v1-1) + + + +```console +> curl \ +-H "Authorization: Bearer $TOKEN" \ +-H "Content-Type: application/zip" \ +-X POST \ +-T $FILE_NAME \ +-v \ +https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/draft/package +``` + +##### [v1](#tab/v1) + ```console > curl \ -H "Authorization: Bearer $TOKEN" \ @@ -262,6 +299,8 @@ To get the product ID: https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/draft/package ``` +--- + If the request succeeds and the update process begins, you receive a `202 Accepted` response status code with a `Location` header. This location header contains the `operationID` that's required for checking the status of the update operation. @@ -274,16 +313,34 @@ See also: Use this API to check the status of package upload. +##### [v1.1](#tab/v1-1) + + + ```REST Endpoint: /v1/products/$productID/submissions/draft/package/operations/$operationID Type: GET Header Parameters: Authorization: Bearer $TOKEN ``` +##### [v1](#tab/v1) + +```REST +Endpoint: /v1/products/$productID/submissions/draft/package/operations/$operationID +Type: GET +Header Parameters: Authorization: Bearer $TOKEN +``` + +--- + #### Sample request +##### [v1.1](#tab/v1-1) + + + ```console > curl \ -H "Authorization: Bearer $TOKEN" \ @@ -292,6 +349,17 @@ Header Parameters: Authorization: Bearer $TOKEN https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/draft/package/operations/$operationID ``` +##### [v1](#tab/v1) + +```console +> curl \ +-H "Authorization: Bearer $TOKEN" \ +-X GET \ +-v \ +https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/draft/package/operations/$operationID +``` + +--- See also: * [Check the status of a package upload](./addons-api-reference.md#check-the-status-of-a-package-upload) in _REST API Reference for Microsoft Edge Add-ons_. @@ -302,6 +370,19 @@ See also: Use this API to publish the current draft of the product to the Microsoft Edge Add-ons website. +##### [v1.1](#tab/v1-1) + + + +```REST +Endpoint: /v1/products/$productID/submissions +Type: POST +Header Parameters: Authorization: Bearer $TOKEN +Body content: Notes for certification, in JSON format +``` + +##### [v1](#tab/v1) + ```REST Endpoint: /v1/products/$productID/submissions Type: POST @@ -309,10 +390,27 @@ Header Parameters: Authorization: Bearer $TOKEN Body content: Notes for certification, in JSON format ``` +--- + #### Sample request +##### [v1.1](#tab/v1-1) + + + +```console +> curl \ +-H "Authorization: Bearer $TOKEN" \ +-X POST \ +-d '{ "notes"="text value" }' \ +-v \ +https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions +``` + +##### [v1](#tab/v1) + ```console > curl \ -H "Authorization: Bearer $TOKEN" \ @@ -322,6 +420,8 @@ Body content: Notes for certification, in JSON format https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions ``` +--- + If the request succeeds and the publishing process begins, you'll receive a `202 Accepted` response status code with a `Location` header. This location header contains the `operationID` that's required for checking the status of the publish operation. See also: @@ -333,16 +433,34 @@ See also: Use this API to check the status of the publish operation. +##### [v1.1](#tab/v1-1) + + + ```REST Endpoint: /v1/products/$productID/submissions/operations/$operationID Type: GET Header Parameters: Authorization: Bearer $TOKEN ``` +##### [v1](#tab/v1) + +```REST +Endpoint: /v1/products/$productID/submissions/operations/$operationID +Type: GET +Header Parameters: Authorization: Bearer $TOKEN +``` + +--- + #### Sample request +##### [v1.1](#tab/v1-1) + + + ```console > curl \ -H "Authorization: Bearer $TOKEN" \ @@ -351,6 +469,18 @@ Header Parameters: Authorization: Bearer $TOKEN https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} ``` +##### [v1](#tab/v1) + +```console +> curl \ +-H "Authorization: Bearer $TOKEN" \ +-X GET \ +-v \ +https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} +``` + +--- + See also: * [Check the publishing status](./addons-api-reference.md#check-the-publishing-status) in _REST API Reference for Microsoft Edge Add-ons_. From 26c014427f5c62856070099782f4f97a54efea21 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 12:41:12 -0700 Subject: [PATCH 27/53] true code in v1.1 tabs --- .../publish/api/addons-api-reference.md | 10 ++++++ .../publish/api/using-addons-api.md | 32 +++++-------------- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index 1b222aaadb..fa78db0e81 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -54,6 +54,16 @@ The following request headers are required: * `X-ClientID: ` * `Content-Type: application/zip` + + ##### [v1](#tab/v1) * `Authorization: Bearer ` diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index aee8428085..b1ba95ede2 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -235,12 +235,10 @@ Use this REST API endpoint to update the package for an add-on. This API upload ##### [v1.1](#tab/v1-1) - - ```REST Endpoint: /v1/products/$productID/submissions/draft/package Type: POST -Header Parameters: Authorization: Bearer $TOKEN; Content-Type: application/zip +Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID Body content: the package file to upload ``` @@ -275,11 +273,9 @@ To get the product ID: ##### [v1.1](#tab/v1-1) - - ```console > curl \ --H "Authorization: Bearer $TOKEN" \ +-H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ -H "Content-Type: application/zip" \ -X POST \ -T $FILE_NAME \ @@ -315,12 +311,10 @@ Use this API to check the status of package upload. ##### [v1.1](#tab/v1-1) - - ```REST Endpoint: /v1/products/$productID/submissions/draft/package/operations/$operationID Type: GET -Header Parameters: Authorization: Bearer $TOKEN +Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID ``` ##### [v1](#tab/v1) @@ -339,11 +333,9 @@ Header Parameters: Authorization: Bearer $TOKEN ##### [v1.1](#tab/v1-1) - - ```console > curl \ --H "Authorization: Bearer $TOKEN" \ +-H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ -X GET \ -v \ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/draft/package/operations/$operationID @@ -372,12 +364,10 @@ Use this API to publish the current draft of the product to the Microsoft Edge A ##### [v1.1](#tab/v1-1) - - ```REST Endpoint: /v1/products/$productID/submissions Type: POST -Header Parameters: Authorization: Bearer $TOKEN +Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID Body content: Notes for certification, in JSON format ``` @@ -398,11 +388,9 @@ Body content: Notes for certification, in JSON format ##### [v1.1](#tab/v1-1) - - ```console > curl \ --H "Authorization: Bearer $TOKEN" \ +-H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ -X POST \ -d '{ "notes"="text value" }' \ -v \ @@ -435,12 +423,10 @@ Use this API to check the status of the publish operation. ##### [v1.1](#tab/v1-1) - - ```REST Endpoint: /v1/products/$productID/submissions/operations/$operationID Type: GET -Header Parameters: Authorization: Bearer $TOKEN +Header Parameters: Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID ``` ##### [v1](#tab/v1) @@ -459,11 +445,9 @@ Header Parameters: Authorization: Bearer $TOKEN ##### [v1.1](#tab/v1-1) - - ```console > curl \ --H "Authorization: Bearer $TOKEN" \ +-H "Authorization: ApiKey $ApiKey; Content-Type: application/zip; X-ClientID $ClientID" \ -X GET \ -v \ https://api.addons.microsoftedge.microsoft.com/v1/products/$productID/submissions/operations/{operationID} From 0366023d0dbffb2a3f74d2fcf8cd685e9f84639b Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 12:51:10 -0700 Subject: [PATCH 28/53] linkfix, add Update to title --- .../developer-guide/api-support.md | 2 +- microsoft-edge/extensions-chromium/landing/index.yml | 2 +- .../publish/api/addons-api-reference.md | 12 ++++++------ .../publish/api/using-addons-api.md | 6 +++--- .../extensions-chromium/publish/update-extension.md | 4 ++-- .../whats-new/released-features.md | 2 +- microsoft-edge/toc.yml | 2 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/api-support.md b/microsoft-edge/extensions-chromium/developer-guide/api-support.md index 8a570ab871..287cb22bd7 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/api-support.md +++ b/microsoft-edge/extensions-chromium/developer-guide/api-support.md @@ -133,4 +133,4 @@ This work is licensed under a [Creative Commons Attribution 4.0 International Li * [Chrome Extensions API reference for Manifest V2](https://developer.chrome.com/docs/extensions/mv2/reference/) * [Chrome Extensions API reference for Manifest V3](https://developer.chrome.com/docs/extensions/reference/api/) -* [Using the Microsoft Edge Add-ons REST API](../publish/api/using-addons-api.md) - to update an extension at the Microsoft Edge Add-ons website. +* [Using the Microsoft Edge Add-ons Update REST API](../publish/api/using-addons-api.md) - to update an extension at the Microsoft Edge Add-ons website. diff --git a/microsoft-edge/extensions-chromium/landing/index.yml b/microsoft-edge/extensions-chromium/landing/index.yml index b96eeb6e0c..d2d62e74ec 100644 --- a/microsoft-edge/extensions-chromium/landing/index.yml +++ b/microsoft-edge/extensions-chromium/landing/index.yml @@ -180,7 +180,7 @@ landingContent: - text: Set an externally installed extension to automatically update url: ../publish/auto-update.md - - text: Using the Microsoft Edge Add-ons REST API + - text: Using the Microsoft Edge Add-ons Update REST API url: ../publish/api/using-addons-api.md - linkListType: reference diff --git a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md index fa78db0e81..9e3b259231 100644 --- a/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md +++ b/microsoft-edge/extensions-chromium/publish/api/addons-api-reference.md @@ -12,7 +12,7 @@ ms.date: 09/05/2024 This article is the REST endpoint reference for the Microsoft Edge Add-ons API. This API automates publishing updates to add-ons that have been submitted to the Microsoft Edge Add-ons store. -For an overview, see [Using the Microsoft Edge Add-ons REST API](./using-addons-api.md). +For an overview, see [Using the Microsoft Edge Add-ons Update REST API](./using-addons-api.md). @@ -101,7 +101,7 @@ This API has the following expected status codes. See also: -* [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the Microsoft Edge Add-ons REST API_. +* [Uploading a package to update an existing submission](./using-addons-api.md#uploading-a-package-to-update-an-existing-submission) in _Using the Microsoft Edge Add-ons Update REST API_. @@ -222,7 +222,7 @@ This API has the following expected status codes. See also: -* [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the Microsoft Edge Add-ons REST API_. +* [Checking the status of a package upload](./using-addons-api.md#checking-the-status-of-a-package-upload) in _Using the Microsoft Edge Add-ons Update REST API_. @@ -293,7 +293,7 @@ This API has the following expected status codes. See also: -* [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the Microsoft Edge Add-ons REST API_. +* [Publishing the submission](./using-addons-api.md#publishing-the-submission) in _Using the Microsoft Edge Add-ons Update REST API_. @@ -508,7 +508,7 @@ This API has the following expected status codes. See also: -* [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the Microsoft Edge Add-ons REST API_. +* [Checking the publishing status](using-addons-api.md#checking-the-publishing-status) in _Using the Microsoft Edge Add-ons Update REST API_. @@ -541,6 +541,6 @@ Here's a list of common error codes and possible reasons. For a full list, see ## See also -* [Using the Microsoft Edge Add-ons REST API](./using-addons-api.md) +* [Using the Microsoft Edge Add-ons Update REST API](./using-addons-api.md) * [Partner Center REST error codes](/partner-center/develop/error-codes) in Partner Center docs. * [List of HTTP status codes](https://wikipedia.org/wiki/List_of_HTTP_status_codes) at Wikipedia. \ No newline at end of file diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index b1ba95ede2..ea56eff1a5 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -1,5 +1,5 @@ --- -title: Using the Microsoft Edge Add-ons REST API +title: Using the Microsoft Edge Add-ons Update REST API description: REST endpoints to automate publishing updates to add-ons that are submitted to the Microsoft Edge Add-ons store. author: MSEdgeTeam ms.author: msedgedevrel @@ -8,7 +8,7 @@ ms.service: microsoft-edge ms.subservice: extensions ms.date: 09/19/2024 --- -# Using the Microsoft Edge Add-ons REST API +# Using the Microsoft Edge Add-ons Update REST API To publish an extension, you first use Partner Center, and then optionally you can use the REST API to update the extension (or use Partner Center instead). @@ -167,7 +167,7 @@ Not applicable. ##### [v1](#tab/v1) -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the Update REST API at Partner Center](#enabling-the-rest-publish-api-at-partner-center). +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the Update REST API at Partner Center](#enabling-the-update-rest-api-at-partner-center). ```REST Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token diff --git a/microsoft-edge/extensions-chromium/publish/update-extension.md b/microsoft-edge/extensions-chromium/publish/update-extension.md index 70b5e9a399..62ced7ace1 100644 --- a/microsoft-edge/extensions-chromium/publish/update-extension.md +++ b/microsoft-edge/extensions-chromium/publish/update-extension.md @@ -29,7 +29,7 @@ To update your extension that's at the store (the Microsoft Edge Add-ons website 1. After the `Status` column displays `In the store`, your extension update is available on the Microsoft Edge Add-ons website. -After your extension has been created initially, you can update your extension by [Using the Microsoft Edge Add-ons REST API](./api/using-addons-api.md). +After your extension has been created initially, you can update your extension by [Using the Microsoft Edge Add-ons Update REST API](./api/using-addons-api.md). @@ -89,5 +89,5 @@ The extension is now removed from the Microsoft Edge Add-ons website. Users who * [Set an externally installed extension to automatically update](./auto-update.md) - for extensions that don't use Partner Center and the Microsoft Edge Add-ons website. -* [Using the Microsoft Edge Add-ons REST API](./api/using-addons-api.md) +* [Using the Microsoft Edge Add-ons Update REST API](./api/using-addons-api.md) * [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd) diff --git a/microsoft-edge/extensions-chromium/whats-new/released-features.md b/microsoft-edge/extensions-chromium/whats-new/released-features.md index 1fbed32df3..a2caec6aa2 100644 --- a/microsoft-edge/extensions-chromium/whats-new/released-features.md +++ b/microsoft-edge/extensions-chromium/whats-new/released-features.md @@ -42,7 +42,7 @@ To share your feedback and comments about this feature, see [GitHub discussion t ## Publish and update extensions using the Microsoft Edge Add-ons API -You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the Microsoft Edge Add-ons REST API](../publish/api/using-addons-api.md). +You can integrate APIs directly into your Continuous Integration / Continuous Delivery (CI/CD) pipeline. You can also publish extension package updates to the Microsoft Edge Add-ons website without using Partner Center. For more information, see [Using the Microsoft Edge Add-ons Update REST API](../publish/api/using-addons-api.md). *Released March 2022* diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 5203ec2dec..92db4fdc5b 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1112,7 +1112,7 @@ - name: REST API for updating an extension items: - - name: Using the Microsoft Edge Add-ons REST API + - name: Using the Microsoft Edge Add-ons Update REST API href: extensions-chromium/publish/api/using-addons-api.md - name: REST API Reference for Microsoft Edge Add-ons From 69f67db054842bd5b69f2789df1661029989dd1c Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 13:34:11 -0700 Subject: [PATCH 29/53] shrink "v1.1 vs v1" section, link Overview to h2s --- .../publish/api/using-addons-api.md | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index ea56eff1a5..bc4ed2757d 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -23,22 +23,22 @@ To submit suggestions and feedback, enter an [Issue about the Add-ons API](https As of September 6, 2024, both v1.1 and v1 of this Update REST API are supported. Later, v1 will no longer be supported. The date for ending v1 support is not yet finalized. - -#### Components used by the Update REST API + +###### Components used ##### [v1.1](#tab/v1-1) -v1.1 uses an API key. The UI in Partner Center covers the API key, as described below. +v1.1 uses an API key. The UI in Partner Center covers the API key. -The REST API endpoints use specific request headers for v1.1, as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md). +The REST endpoints use specific request headers for v1.1. ##### [v1](#tab/v1) -v1 requires sending an Access Token URL. The UI in Partner Center covers the access token, as described below. +v1 requires sending an Access Token URL. The UI in Partner Center covers the access token. -v1 uses Secrets. The UI in Partner Center covers secrets, as described below. +v1 uses Secrets. The UI in Partner Center covers Secrets. -The REST API endpoints use specific request headers for v1, as described in [REST API Reference for Microsoft Edge Add-ons](./addons-api-reference.md). +The REST endpoints use specific request headers for v1. --- @@ -50,19 +50,21 @@ The REST API endpoints use specific request headers for v1, as described in [RES To use v1.1 of the Update REST API: -1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), opt-in to the API key management experience.Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. -1. Write down the ClientID and API key. When you use a REST endpoint, you'll specify these in the request header. +1. Write down the ClientID and API key. 1. Update your authentication workflows, if needed. 1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by any changes to the API key. +1. When you use a REST endpoint, specify the ClientID and API key in the request header. Details are in [Using the API endpoints](#using-the-api-endpoints), below. + ##### [v1](#tab/v1) To use v1 of the Update REST API: -1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. +1. At your [Partner Center developer dashboard](https://partner.microsoft.com/dashboard/microsoftedge/public/login?ref=dd), get an access token. Details are in [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center), below. 1. Generate your ClientID and secrets. @@ -70,6 +72,10 @@ To use v1 of the Update REST API: 1. Re-configure any existing Continuous Integration (CI) or Continuous Deployment (CD) pipelines that might be impacted by the changes to the access token URL. +1. Retrieve the access token. Details are in [Retrieving the access token (v1 only)](#retrieving-the-access-token-v1-only), below. + +1. When you use a REST endpoint, specify the access token in the request header. Details are in [Using the API endpoints](#using-the-api-endpoints), below. + --- Details are below. @@ -89,7 +95,7 @@ Details are below. -## Enabling the Update REST API at Partner Center +## Enable the Update REST API at Partner Center To use the Microsoft Edge Add-ons API, you first need to enable the API for your project in the Microsoft Partner Center by creating API credentials, as follows: @@ -167,7 +173,7 @@ Not applicable. ##### [v1](#tab/v1) -After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enabling the Update REST API at Partner Center](#enabling-the-update-rest-api-at-partner-center). +After you've acquired the necessary authorization for your application, get access tokens for APIs. To get a token using the client credentials grant, send a POST request to the Access token URL (the OAuth token). The tenant information is available in the URL that you received in the previous step, [Enable the Update REST API at Partner Center](#enable-the-update-rest-api-at-partner-center). ```REST Endpoint: https://login.microsoftonline.com/5c9eedce-81bc-42f3-8823-48ba6258b391/oauth2/v1.1.0/token From 4f20802c292abb3a578a87b036439c249be286b4 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 13:44:26 -0700 Subject: [PATCH 30/53] state the png shows initial v1 UI --- .../extensions-chromium/publish/api/using-addons-api.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md index bc4ed2757d..cc63dd60a9 100644 --- a/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md +++ b/microsoft-edge/extensions-chromium/publish/api/using-addons-api.md @@ -109,16 +109,18 @@ To use the Microsoft Edge Add-ons API, you first need to enable the API for your ![Enable API at Partner Center, for v1.1](./using-addons-api-images/partner-center-1-1-enable.png) + The above screenshot shows the v1 UI, including **Access token URL** and **Secrets**, prior to clicking the **Enable** button to switch to the v1.1 UI. + 1. On the **Publish API** page, click the **Create API credentials** button. This step may take a few minutes to finish. - The ClientID and API key are automatically generated: + The Client ID and a new API key are automatically generated: ![The 'Publish API' page at Partner Center after clicking 'Create API credentials', now showing Client ID and API key](./using-addons-api-images/partner-center-1-1-ui.png) The API credentials have now been created; you've enabled or renewed the API. The following items are now displayed on the **Publish API** page: * **Client ID**. * **API Key**. - * **Expiry** date for the API key. + * **Expiry** date for the API key. 1. Write down the following: * The **Client ID**. From 5a0995b60ee5b679576e483efd8f883d842d7f6a Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Thu, 19 Sep 2024 14:17:35 -0700 Subject: [PATCH 31/53] token vs url --- .../partner-center-1-1-enable.png | Bin 177120 -> 202987 bytes .../publish/api/using-addons-api.md | 61 +++++++----------- 2 files changed, 25 insertions(+), 36 deletions(-) diff --git a/microsoft-edge/extensions-chromium/publish/api/using-addons-api-images/partner-center-1-1-enable.png b/microsoft-edge/extensions-chromium/publish/api/using-addons-api-images/partner-center-1-1-enable.png index 9a9712c1ea483c85d13280268d138e7dc2481412..f798dab897a311b137a07e62ddb8ee531571b998 100644 GIT binary patch delta 136684 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�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