From c284e768568c5be3fc93ced717620431fd2718a6 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:26:26 +0530 Subject: [PATCH 01/24] Add files via upload --- documentation/AzureGPTQuotaSettings.md | 10 ++++++ documentation/CustomizingAzdParameters.md | 43 +++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 documentation/AzureGPTQuotaSettings.md create mode 100644 documentation/CustomizingAzdParameters.md diff --git a/documentation/AzureGPTQuotaSettings.md b/documentation/AzureGPTQuotaSettings.md new file mode 100644 index 000000000..a47a32ef8 --- /dev/null +++ b/documentation/AzureGPTQuotaSettings.md @@ -0,0 +1,10 @@ +## How to Check & Update Quota + +1. **Navigate** to the [Azure AI Foundry portal](https://ai.azure.com/). +2. **Select** the AI Project associated with this accelerator. +3. **Go to** the `Management Center` from the bottom-left navigation menu. +4. Select `Quota` + - Click on the `GlobalStandard` dropdown. + - Select the required **GPT model** (`GPT-4, GPT-4o`) or **Embeddings model** (`text-embedding-ada-002`). + - Choose the **region** where the deployment is hosted. +5. Request More Quota or delete any unused model deployments as needed. diff --git a/documentation/CustomizingAzdParameters.md b/documentation/CustomizingAzdParameters.md new file mode 100644 index 000000000..fbc1f73d3 --- /dev/null +++ b/documentation/CustomizingAzdParameters.md @@ -0,0 +1,43 @@ +## [Optional]: Customizing resource names + +By default this template will use the environment name as the prefix to prevent naming collisions within Azure. The parameters below show the default values. You only need to run the statements below if you need to change the values. + + +> To override any of the parameters, run `azd env set ` before running `azd up`. On the first azd command, it will prompt you for the environment name. Be sure to choose 3-20 charaters alphanumeric unique name. + + +Change the Secondary Location (example: eastus2, westus2, etc.) + +```shell +azd env set AZURE_ENV_SECONDARY_LOCATION eastus2 +``` + +Change the Model Deployment Type (allowed values: Standard, GlobalStandard) + +```shell +azd env set AZURE_ENV_MODEL_DEPLOYMENT_TYPE Standard +``` + +Set the Model Name (allowed values: gpt-4, gpt-4o) + +```shell +azd env set AZURE_ENV_MODEL_NAME gpt-4o +``` + +Change the Model Capacity (choose a number based on available GPT model capacity in your subscription) + +```shell +azd env set AZURE_ENV_MODEL_CAPACITY 30 +``` + +Change the Embedding Model + +```shell +azd env set AZURE_ENV_EMBEDDING_MODEL_NAME text-embedding-ada-002 +``` + +Change the Embedding Deployment Capacity (choose a number based on available embedding model capacity in your subscription) + +```shell +azd env set AZURE_ENV_EMBEDDING_MODEL_CAPACITY 80 +``` \ No newline at end of file From 652d622215c53af25b708be65d938d88c09ffaa9 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:27:24 +0530 Subject: [PATCH 02/24] Add files via upload --- documentation/quota_check.md | 102 +++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 documentation/quota_check.md diff --git a/documentation/quota_check.md b/documentation/quota_check.md new file mode 100644 index 000000000..8ce292da6 --- /dev/null +++ b/documentation/quota_check.md @@ -0,0 +1,102 @@ +## Check Quota Availability Before Deployment + +Before deploying the accelerator, **ensure sufficient quota availability** for the required model. +> **For Global Standard | GPT-4o - the capacity to at least 150k tokens post-deployment for optimal performance.** + +> **For Standard | GPT-4 - ensure a minimum of 30k–40k tokens for best results.** + +### Login if you have not done so already +``` +azd auth login +``` + + +### 📌 Default Models & Capacities: +``` +gpt-4o:30, text-embedding-ada-002:80, gpt-4:30 +``` +### 📌 Default Regions: +``` +eastus, uksouth, eastus2, northcentralus, swedencentral, westus, westus2, southcentralus, canadacentral +``` +### Usage Scenarios: +- No parameters passed → Default models and capacities will be checked in default regions. +- Only model(s) provided → The script will check for those models in the default regions. +- Only region(s) provided → The script will check default models in the specified regions. +- Both models and regions provided → The script will check those models in the specified regions. +- `--verbose` passed → Enables detailed logging output for debugging and traceability. + +### **Input Formats** +> Use the --models, --regions, and --verbose options for parameter handling: + +✔️ Run without parameters to check default models & regions without verbose logging: + ``` + ./quota_check_params.sh + ``` +✔️ Enable verbose logging: + ``` + ./quota_check_params.sh --verbose + ``` +✔️ Check specific model(s) in default regions: + ``` + ./quota_check_params.sh --models gpt-4o:30,text-embedding-ada-002:80 + ``` +✔️ Check default models in specific region(s): + ``` +./quota_check_params.sh --regions eastus,westus + ``` +✔️ Passing Both models and regions: + ``` + ./quota_check_params.sh --models gpt-4o:30 --regions eastus,westus2 + ``` +✔️ All parameters combined: + ``` + ./quota_check_params.sh --models gpt-4:30,text-embedding-ada-002:80 --regions eastus,westus --verbose + ``` + +### **Sample Output** +The final table lists regions with available quota. You can select any of these regions for deployment. + +![quota-check-ouput](images/quota-check-output.png) + +--- +### **If using Azure Portal and Cloud Shell** + +1. Navigate to the [Azure Portal](https://portal.azure.com). +2. Click on **Azure Cloud Shell** in the top right navigation menu. +3. Run the appropriate command based on your requirement: + + **To check quota for the deployment** + + ```sh + curl -L -o quota_check_params.sh "https://raw.githubusercontent.com/microsoft/document-generation-solution-accelerator/main/scripts/quota_check_params.sh" + chmod +x quota_check_params.sh + ./quota_check_params.sh + ``` + - Refer to [Input Formats](#input-formats) for detailed commands. + +### **If using VS Code or Codespaces** +1. Open the terminal in VS Code or Codespaces. +2. If you're using VS Code, click the dropdown on the right side of the terminal window, and select `Git Bash`. + ![git_bash](images/git_bash.png) +3. Navigate to the `scripts` folder where the script files are located and make the script as executable: + ```sh + cd scripts + chmod +x quota_check_params.sh + ``` +4. Run the appropriate script based on your requirement: + + **To check quota for the deployment** + + ```sh + ./quota_check_params.sh + ``` + - Refer to [Input Formats](#input-formats) for detailed commands. + +5. If you see the error `_bash: az: command not found_`, install Azure CLI: + + ```sh + curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash + az login + ``` +6. Rerun the script after installing Azure CLI. From 02070f000dbe7c74ee99c9de6c4ff1086be13886 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:29:56 +0530 Subject: [PATCH 03/24] Add files via upload --- documentation/images/git_bash.png | Bin 0 -> 30005 bytes documentation/images/quota-check-output.png | Bin 0 -> 12857 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 documentation/images/git_bash.png create mode 100644 documentation/images/quota-check-output.png diff --git a/documentation/images/git_bash.png b/documentation/images/git_bash.png new file mode 100644 index 0000000000000000000000000000000000000000..0e9f53a1233e4060da6a9ad52f2536ea69099bb3 GIT binary patch literal 30005 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 P7Em_nY)sg&_w4@w7%@{I literal 0 HcmV?d00001 diff --git a/documentation/images/quota-check-output.png b/documentation/images/quota-check-output.png new file mode 100644 index 0000000000000000000000000000000000000000..9c80e329886cb9619eef2a49e493d9535e9482c7 GIT binary patch literal 12857 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 literal 0 HcmV?d00001 From fd1e54f6c955f3ff6907b8bf7be6b8d9a2fa645f Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:48:27 +0530 Subject: [PATCH 04/24] Create ManualAzureDeployment.md --- documentation/ManualAzureDeployment.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 documentation/ManualAzureDeployment.md diff --git a/documentation/ManualAzureDeployment.md b/documentation/ManualAzureDeployment.md new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/documentation/ManualAzureDeployment.md @@ -0,0 +1 @@ + From 210af5c98c07ddf946a275e3671488e6bf454716 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:49:50 +0530 Subject: [PATCH 05/24] Update ManualAzureDeployment.md --- documentation/ManualAzureDeployment.md | 108 +++++++++++++++++++++++++ 1 file changed, 108 insertions(+) diff --git a/documentation/ManualAzureDeployment.md b/documentation/ManualAzureDeployment.md index 8b1378917..d59b2d591 100644 --- a/documentation/ManualAzureDeployment.md +++ b/documentation/ManualAzureDeployment.md @@ -1 +1,109 @@ +# Manual Azure Deployment +Manual Deployment differs from the ‘Quick Deploy’ option in that it will install an Azure Container Registry (ACR) service, and relies on the installer to build and push the necessary containers to this ACR. This allows you to build and push your own code changes and provides a sample solution you can customize based on your requirements. + +## Prerequisites + +- Current Azure CLI installed + You can update to the latest version using ```az upgrade``` +- Azure account with appropriate permissions +- Docker installed + +## Deploy the Azure Services +All of the necessary Azure services can be deployed using the /deploy/macae.bicep script. This script will require the following parameters: + +``` +az login +az account set --subscription +az group create --name --location +``` +To deploy the script you can use the Azure CLI. +``` +az deployment group create \ + --resource-group \ + --template-file \ + --name +``` + +Note: if you are using windows with PowerShell, the continuation character (currently ‘\’) should change to the tick mark (‘`’). + +The template will require you fill in locations for Cosmos and OpenAI services. This is to avoid the possibility of regional quota errors for either of these resources. + +## Create the Containers +- Get admin credentials from ACR + +Retrieve the admin credentials for your Azure Container Registry (ACR): + +```sh +az acr credential show \ +--name \ +--resource-group +``` + +## Login to ACR + +Login to your Azure Container Registry: + +```sh +az acr login --name +``` + +## Build and push the image + +Build the frontend and backend Docker images and push them to your Azure Container Registry. Run the following from the src/backend and the src/frontend directory contexts: + +```sh +az acr build \ +--registry \ +--resource-group \ +--image . +``` + +## Add images to the Container APP and Web App services + +To add your newly created backend image: +- Navigate to the Container App Service in the Azure portal +- Click on Application/Containers in the left pane +- Click on the "Edit and deploy" button in the upper left of the containers pane +- In the "Create and deploy new revision" page, click on your container image 'backend'. This will give you the option of reconfiguring the container image, and also has an Environment variables tab +- Change the properties page to + - point to your Azure Container registry with a private image type and your image name (e.g. backendmacae:latest) + - under "Authentication type" select "Managed Identity" and choose the 'mace-containerapp-pull'... identity setup in the bicep template +- In the environment variables section add the following (each with a 'Manual entry' source): + + name: 'COSMOSDB_ENDPOINT' + value: \ + + name: 'COSMOSDB_DATABASE' + value: 'autogen' + Note: To change the default, you will need to create the database in Cosmos + + name: 'COSMOSDB_CONTAINER' + value: 'memory' + + name: 'AZURE_OPENAI_ENDPOINT' + value: + + name: 'AZURE_OPENAI_DEPLOYMENT_NAME' + value: 'gpt-4o' + + name: 'AZURE_OPENAI_API_VERSION' + value: '2024-08-01-preview' + Note: Version should be updated based on latest available + + name: 'FRONTEND_SITE_NAME' + value: 'https://.azurewebsites.net' + + name: 'APPLICATIONINSIGHTS_CONNECTION_STRING' + value: + +- Click 'Save' and deploy your new revision + +To add the new container to your website run the following: + +``` +az webapp config container set --resource-group \ +--name \ +--container-image-name \ +--container-registry-url +``` From 3a5f93ddff0d4df9209400730318f71d0392d956 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:54:55 +0530 Subject: [PATCH 06/24] Add files via upload --- documentation/DeleteResourceGroup.md | 53 ++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 documentation/DeleteResourceGroup.md diff --git a/documentation/DeleteResourceGroup.md b/documentation/DeleteResourceGroup.md new file mode 100644 index 000000000..aebe0adb6 --- /dev/null +++ b/documentation/DeleteResourceGroup.md @@ -0,0 +1,53 @@ +# Deleting Resources After a Failed Deployment in Azure Portal + +If your deployment fails and you need to clean up the resources manually, follow these steps in the Azure Portal. + +--- + +## **1. Navigate to the Azure Portal** +1. Open [Azure Portal](https://portal.azure.com/). +2. Sign in with your Azure account. + +--- + +## **2. Find the Resource Group** +1. In the search bar at the top, type **"Resource groups"** and select it. +2. Locate the **resource group** associated with the failed deployment. + +![Resource Groups](images/resourcegroup.png) + +![Resource Groups](images/resource-groups.png) + +--- + +## **3. Delete the Resource Group** +1. Click on the **resource group name** to open it. +2. Click the **Delete resource group** button at the top. + +![Delete Resource Group](images/DeleteRG.png) + +3. Type the resource group name in the confirmation box and click **Delete**. + +📌 **Note:** Deleting a resource group will remove all resources inside it. + +--- + +## **4. Delete Individual Resources (If Needed)** +If you don’t want to delete the entire resource group, follow these steps: + +1. Open **Azure Portal** and go to the **Resource groups** section. +2. Click on the specific **resource group**. +3. Select the **resource** you want to delete (e.g., App Service, Storage Account). +4. Click **Delete** at the top. + +![Delete Individual Resource](images/deleteservices.png) + +--- + +## **5. Verify Deletion** +- After a few minutes, refresh the **Resource groups** page. +- Ensure the deleted resource or group no longer appears. + +📌 **Tip:** If a resource fails to delete, check if it's **locked** under the **Locks** section and remove the lock. + + From 55961d851eea087eb5da9b380a680ef8d8e3d60c Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:55:21 +0530 Subject: [PATCH 07/24] Add files via upload --- documentation/SampleQuestions.md | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 documentation/SampleQuestions.md diff --git a/documentation/SampleQuestions.md b/documentation/SampleQuestions.md new file mode 100644 index 000000000..559363dac --- /dev/null +++ b/documentation/SampleQuestions.md @@ -0,0 +1,35 @@ +# Sample Questions + +To help you get started, here are some **Sample Prompts** you can ask in the app: + +## **Sections** + +### **Browse** +The Browse section allows users to explore and retrieve information related to promissory notes. Key functionalities include: + +_Sample Questions:_ + +- What are typical sections in a promissory note? +- List the details of two promissory notes governed by the laws of the state of California. + +### **Generate** +The Generate section enables users to create new promissory notes with customizable options. Key features include: + +_Sample Questions:_ + +- Generate a promissory note with a proposed $100,000 for Washington State. +- Remove (section) (Any displayed section you can add). +- Add a Payment acceleration clause after the payment terms section. +- Click on Generate Draft. + +![GenerateDraft](images/GenerateDraft.png) + +### **Draft** +The Draft section ensures accuracy and completeness of the generated promissory notes. Key tasks include: + +_Sample operation:_ + +- Task: Re-generate text boxes if they did not populate for any section. +- Task: Re-generate text box for Borrower with the name: Jane Smith. + +This structured approach ensures that users can efficiently browse, create, and refine promissory notes while maintaining legal compliance and document accuracy. From 0b6f5110b8e45bc00743e4f554c8b3766e4b3b07 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:12:06 +0530 Subject: [PATCH 08/24] Add files via upload --- documentation/images/MACAE-GP1.png | Bin 0 -> 134826 bytes documentation/images/MACAE-GP2.png | Bin 0 -> 131958 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 documentation/images/MACAE-GP1.png create mode 100644 documentation/images/MACAE-GP2.png diff --git a/documentation/images/MACAE-GP1.png b/documentation/images/MACAE-GP1.png new file mode 100644 index 0000000000000000000000000000000000000000..4b2386f85bb1a6516e518147f7cd78bcc8e04014 GIT binary patch literal 134826 zcmeFZXH-+`6F$n(V?hLuA{L6M2nqoa1Ze__QUZcfLMQ=LI-v$a2~sSGA^|A@>AfW+ zkw8KVML?=ZCqgJ9O%jSA0R;nhQ^ z$GttkHK(VJxi<&LG0~m(UtptiUpP3n^T0Q+oA_JLj|QY39jMt_F2GhhI%;cPGe6oC zRuOt##+vp_fd6m4{{8$R_b>gWPtYP|dU`zS`8(`pzof+TXE*ErR%m@IDsu$=@yIht ziIh-T(mRgQRUc^DxG-eY%Br-HWB1p9O~$SDBIAODQ(~8Hhjf*wjeQF{3@qq>ugsy> zl!SQRsa@AD8&mVlRIB_r6?XscyU=3|JPN;V1b*^JK7#$ZbaL2_`0Mv&X409~oqhiM z3UzpT`uML44vyrL|L4K~&%zlM;gYX%d#Fs2y3=yGz$M7vTb?P$zE!vF#?>hB*F0X{ zSiXDvvJ&dLzsN6%*T0$lhZC{;jZ4}+gBzRjCGsIXeV`w+U1~VZtWMT}Cnn*(Ctz&0 zv%gvJXG3*g(XQzsp8Z`pFmPf<(%;m((M`Ye zkkvi|%S2~pK%TqeScuw#ii_`DonPM75nZ@P`&RM zqtfv)5z3f5F5njpFAW}c-Uqn^>-+9o{U8^$*%cmad&l9I*>TigXT0P>1PYJ01RCA= zQ2Dv5H1BRkKINkr@~Ybd-_H_Y20><9k~SENa0@CfIn$?HBL}xHbfcuxg)vQN2$Mx~ z>v7w|pUxvr94Hmts*w-}?wysFs}AH{&aZwiSe}HNxUnDS$hIefFvmwtGlO{>#%(&G z_*uGl>aor7%h5K1WBY$?-}8&o)T5C|&krXFPFHpQ&bL3M?2M>lyl#$|eBARWMfM(J zIgVU5)pqCY%4yZDE-yyHz~D-*+LO%5^YC8JI0c zl|YNp4f+jQIUqvUz(-=agHnU8+(h3H?05=ey{m3Jl7I2XKy&+dr&D-;iz{z*H$iN>1!o>3cZwWui)QfIP%?3-{oMj@4jk z^+kc0dt#vR`udu@RHW@S5ja;BRrh81d>thC!-I25;Qd#g)a_j? zEt=G=IUkgZ7oE1aN(nUW(&7XZ7}$hih!xSNMc_%+0a?KbJO?+OdIPukOCNf-n-%sH z)%$(>I>&NKG+5F2G{7r1cp{xU=t^})@9gUWTAi+N{*9TqfojLKLDgdw9&ea>8RKtn zyTIGDljE`O2E>ld+=~atQa%P9EFMtt^Y5Iv&q#i}?#Mdu-S+P&TB~@>Wk?5&!FVC+ zd}pTd09p{#X=A)L)UP-P54vrO(tY9H@uatiIm|zAWBEGZhnv z*XXZhcO&u+Sx1Fe&#OF)cv~4_{YoBBI{rj{-y7!u_~Fe&)+c(uFj`GO^)8qD1GpM;*5 z;t?rkU22RJ)YkmVcR@AZz^c~cn>O^I{?qJBLJSD;X#!#3oO&70(*=IDAz=|SeW8Dn z4^$7!)xz^#G_VcGZ(mk7-Xt9Y0Tv&yv?m{-7EE&3)9{UJi4d4Jv%31>%~Id+qQ3k? zb>4^VEB3hc`3>2=SiKt=+{HB`-mp>TLE3ta^?2Y89{Bm{{(DWaH4VDx^l4B+f7Bu` z1gdCG-(ugt)nOgwGJBi?YZ;($Lo9y4o?E}NNF7+}kd7Sl7tc~xx5^8tiHT<>7cT@} zyi@XRLRU(+lg_`tA-V3_s|4#qWtqdngn`{}^IsbYo2I<*wNW%UU(i^aPffUvx{5ne zIm5C!l=^gh{O*a92S-Z>MaCTaKueZ5b&F|ry)gEhCAVJ-3{7y0el(&&fy~itOy^ia zoT}xbgdSY`YNB*a1iiOQ3Ll_ymWIUKI)^FLEtE*V138;@$Y$FJt~MeC-tf=M8CNqQ zybXzl57gmS%M&G7E#VS&$rn2Gp^}6X#EIa%xl{T$>c(RR6Mp46e|{Xd0k1%DGX91> zBnEvr^@_r`!g2)p&EC0Xm&pRGNGZ-_)}S~bnO-$Os%5;r{WQM^l4d-2>Qd3ygKDSr zf-?3F>JaqwA$eznL;6F#cwVylnxPrZO3Wa*1LHy0uT60zYvnv139ye!SU^lQSt&u9 z1DnvNERDs%!&Mj0(!8e635xQ9w_{$$-D>v|#6PIM8M`|CsNx8xNO?OZ&U0D}=0^Yg zx$}66(}9`#)%J8$KIDCJl)`0uFNdJs<~9?7#iWm3#!RHcsU(&~-|X;ayw4Xt*rYGJ z42Oj(?Op6-a6;{&MT8`5Pv4rW1U>Vqb;w{p8Ptp$PnyU?W@&A@)fg1s3mW){st^Y( z@2(4$o<3Qo2oD-QwCeSm7_W-)8LZ(X@Cm{mSEMiHw2IF3N$lI~8uSb~K%Zdkz5Cb0 zOY-vEi}k7pG#|gQ)X%!NR;gBgx@^($_w3nX46wYmV zJdg+o$!2gP=SJ^9@|(NvtS7v^vzE5$$5WpwD%yK&Y-U!=COI-rjpS;Y_sKdg+J3o8 z8nhe@e{|1b=`a)p@7ilO8r{Fz{^ro7+@@(54jXe^!W|FH>fwjj0VlQ| z#6jE~-)Ge>(TBUrwNzW2O&Ob4zXf5o(&uu(m)Y_`zav(1lGeUTHz_>>3{zc}uhL+o zFzB7>W=@SbCax_v^@+&&iB=@6l3*8!vo&zWo4qr#j*3Z(KO2=-Xe-Xpk%6{%mNtZs z*v`#i1k6wky5L??YB&nim2w@5)A+EV}_h=%f5TVhvM8d};}u9v6@a;rn# z^53h_LBxbP_+{XvPzq?{04Q;UymHVBeXyv>B5*%@u|`3Cn>)qe~qi>bHs@8ft;$@!UyC8DiSeC zxcK>1&bBIEzp5)>TN<0bySO-Fg!jEmPKuat+~Vc?K3P$7aXGu_Mp^bn7aW+cyuJ5( ztv75q7dZReRW)`_%g;zkGA+-a3-~n$2Zx+Gn$XH^VV-QV39}5J9Z1~=g;Wfev>8^v zKRkW3f23ea4@y_4W&|MQsGR6B0I-q?QrL+ug*l%Jjx{NX->Hw&5OA6ZI{Y;@)9qm0 zW*J#daFij))@S*!%)+)WY2vKt_*=8Mr2}Vc4FzHTlYvFpmU=X#TFk3^GaL(2a zrYB3NVvz>&0?$1#le^Y=-CbB86-~bO@G0o*=!ajHCco}J`yjHU;DN^Bqy?xRr3XdABl+s=_N?gS`+Nd zd#7o$j1Rm;-Fvzbho^qQ(r(hg)p0MWbV+Z!7W7#!@goWmZ}XfmNA*51SmxK2o5+$P z=GGTLdI&3R_g;*bkU1$=S9@(R4IxN8LaVU0C&pcfM-Cn4_J82&r9a)chsF}zNII3Fz{9R-_3n1Xwr7#e7_1HUT9+MhH} zusf;OToDU8IoYa6I4441;c@D~*h^Ltma(2fL84GjbGB3o7%g_1-@G~2jq3Ghq|7`Qla~TTmm*B7B21M@lLRPQ!0#wdHbT+b9uIxU zY}FUDKeDAkgP{*yG!^ocfkl3+mBAG6O4+Zhdb8UmK7JFB2@ zFHhLlDApznL`zXK2W%%sl*q3jp=UT0F-$pYdXrLO2ac#1dwvrpepYaDWD}(i9G!!F1 zo?jJl2()oCk7!*3A*G1?G_&^S@{BSb>K=t6Tly{_vq{b;a(evzTXvz%&L;O!cIkMh z5r~}oQ9YfKCqM4cE)?ZPro?-ttwM=sX{`vfB$R|!4DSLun@dwXudLnx=95=g6fh3j|M)@O(Ymsz$zS+sjo zBSs#y#HKJIpR^*U_ff`_D=E3p?8RLy0lD7yy{Y7T6VtPEa!5zx@&wJ>WsIUEgY56P zf9viX4jZo+3>nl`fQ_k^@%`Ql2Y-R#^+jlPvs~uwC`7E55@*iH6GL~6c6~Ea1dKc< zc5>36uOf=d@?y_nM6@DwB3g~k-4`Fu(vb;x;}#`3-EJCXU(_)qBNU<~`QY6$2v z59$_hqrcz7Lt_L=sbr6w1Zuk_C|i(j+6A(lqpN%1ZM#|xagAps6yKRn#3UGOhkRFF zdP@Cr=0B#W>Fo0o1h!F9#?pyWy?$Ec-txKuU8s#k=7^x)LN$GZvE2cgxR)R~*)FS< zu$*re)oRpqg@JI6+6c}eBUU82YxAy&oIgJIG=p!B@m!NJs?M)w5@!KqYpcVRImdNg zxZ@n9M)xS#fME7c$G^Im zYEl@dJ%ej}es~)Bx_{%tGn6%kc)f0+FfN?Tz0_M~8VRktdxC#I?C}hbboUp>$5KFQ zyisJaR0qs2hZIy(`EVU~{$S4&K68C;qw$j5F#gdiBig;CH~N>~-BtgiSE=i9`zpmp z_s)EdED2K%L4dfa)jBoOZVtv`1+?BE>l?;yAcxO+^08%i)Kgyfdd%m5m%cL>)B@d5 z>sm!$&3d!xPn`(o<}6fGEa>YsZ44>tS6fLo(_Fu&$h6VkbA9wo)Alsk%?qy2WLXLpA90NWrom9{V#_cr8#x zumaL>Bj&q}=!fPLPPNr8AoANPSOX-69qi*j{-Q-OEa}(@@`)a=D%}1ZlNGR03Zrg43 zhj6f=PxNirm>PB z46|x31O5Bd2D(H)9x>60(J?8yPvepP=WNMi#@Y=o6cyp9R@ zVMg5V$IxW$>+TY%I%2%o5vy!d`~hUs;qdV4zplMN0KecMI1R|+MMK%7m;1ec#nbvz z!#O~_hS4C@ViULFGSkhqg~pV>GBsVsYiowfobeUvowC0ss84tDc_{$nRgjiW{O34_ z#&Ed@kxCsYmj68*2R{I?-6fjv5zy8Ou#i{N;hi`M))w@75}9HGp+36wo8FPL$aw_& ze$PFdbW2FZ_n^lvj=z28KNvo5m(}>q7IizJ4xA#jtFWM-_}y8U=P!YL+wIPx?^y9z2m*x^Fbw zS+C{`nL%84st-Mba@E96J{V1xf4l6^DG2!*-|}KfAoEO}g{U(opIa#NukqFQSuSrM z=zkjwQx2@>;68Eb+VQC5e9@v}+ECuxL*v<8U2Bvy)z7D-Mvn2D#SV7%qj&H7+`D<~ z#j6vn=Wp*LIDcol*F*rEE8pBo5g>C}RJD3lxiwrun#t&^v%U477nU(QIX7kw%@i`) z!&iTFlp>*Zoyp%v1Lf+>+UFGRu*v2x5>Yaq1HEr8&Vsl7^*YWK-A_uuzkDz7L0t~p zzr88V^b@JpV-Qk;zmlxC1_l_C&P#G5UzH+u02rSOuw#&2#yR!Qp#jWE6ulw)Jv5>Dwa;+wA zske(bmnnMaYGK$wJ5&L_wRGHt-sU%#CBq)5yy0iH%%=B`n`bK#-4m2k^S&A+m`YjZ zOMvx`)e&k%JdC!jI#!p^v12ybv;mvlo6}GBnHu1D7~RTHBZ39;b0&{ljanKpDYyEf zx7$wWy4@I5XF{4_Tx>upFuv!hnn_$M#>}z0Fjd z>nty8GS4sH@=ASQ{pmhS-2rny-Kb7r_ zyG&O;n4Y^C?mHN}k1!B6Yh5TH%%h)1U6oP&MzdmsFs=A?#4qx^c+hACswx$zVh>y#y-S1;_-?R5(OH0i> zI#GHrUhKt&&=wivL`=eiF9``!4~= z91L(zbP8W|3veJGmnpAb97Qf(!CM?oZK^1JFW{59N<6>%aRg$`g11RX`TN%S0sLr8Zl?vsACo{WF-y_A0xuN- zE46n%hcj)2``%sCT%1u?Ep&cCbEaP`vYmY|UmQX=+#MooWgAHBOI;cxBrzN44;i19 z6`3!7mE1zLoJ~k~%@0FNOrE4X-0PBeT|GVbt47%KH0`U|<3a17;U5Jm$c4N_Mz107 zDk`_MsvuCXp!B_a9u^DZRxT&f`nM(1*1tQrsUcpz=Q8bo>Qnomn4m63poIkFEdJ>e`8Ij=rl=2)AA9tdx$Q=J-Q6DHfuP_G&wBhTZlHDG;{$$09_b*NV2y zIK%Byt=rdptNZ=|Z^P(_hy&)w{-DmxiDH1?5*sl~SsAU4f3{@Wm9E;D!ofi{D|JBM zuhf*dfVG~qO8F%9meEtAS8?)}Qp)~8V_V5NGDE&M?d|O+^f^NLfk50w5h3N2d=dL~ zSEz;j#a6OgTa=477z{Y~%)KhQy605d0UZ3lSEeC9M$#-H&&;3}i^UeU?+Hci1avG` zwZ9(<|oy^ANv_r?9J!eWmS$qMl(YnW30xXJein-ALm6rJ?RS{{xKsZ6hO>eE}F1HQ9<3tZas4V~r@VlQhG7 z_p(;Le#NAu;LIeO<#IT9bpM0vGywA;%|C+;MNCh%QK;qz9`%VY=|8jlzqhK~kA4gr z_-BUS)()ugv_fP73Qf%Jq{vBVvwslB$GekZB#PaTY=S5~N}T^idu+Kwg*}}li34lE z{!;|~v;cVtQh&!CtiPvia?v~_SJECUIOnaO%OFF)zl9ja&P?0{R=bw?Cu;0xyp$T~KOQ&kQSt0Jz^(Yx>2C4?`M=zapH@?!bU+)(CPI^u zjha%{g8H@gw2B~*b_VCDDd*I9Xi%NaJ!RpPvUHqnU7#dhQ-&Pj{3tkAcM@4|DG3~VCi`S zmz9JACuv;nXx@W}QJ>6B^_HWIc99j*n!YKxw8c>aGRa@rjPa`ZhlaF*h)VDgBXP2Z z1gt-7*+1{o^8@;*+KiPKq}?B-uPC8rp35$LVCa(UB1J4I=b#k(4g}0R!DrEa&j#^D zY1dBDQ2#K7U5?t(2?xhKSz0h>^99IWu}0?PN+8_ zcV-@~_YRmKOhOo_>%`TK(hNtmC^!U_53@N|t*fj>fZM@9>;XkB*;trfNQwet!YvW}3!DNFxY!?5mHwyNhcJu}NPU0fQ2lknel( z-(I(?Je_RU*CkB)-+Mi&OE@mpfst&{iHcd^4=R)M{^^x?4*t(ahKj9fV(Q%83RkYM zhV|=s%Bp*3R^APlg(JI)(E<-nDBLN6!z!CwPpDVOkL4JbH>@gF`&H?RMcPphz)rRy zq|6C+)d}mDtnJ;K%pzI?YbIaJ%LneLXg=h(iVAOAH(4H1m}m#v4L0cGqnTpH%;~+u zyaWSR0lny+>AwMf6aOLwlEfrpQY@rtxOSGtJ=$`^s2ZDI&?4^Q20GsYkW7)2?Fg6$ z%D#>tN{E?0p$QY|@UmCYI&9m|dgX-ri9+`6{a*?08ZQImh|`W*z*`Aea4CFMu4X?O zG!*KS;7vaj_|&Rq7mf9pZc=T7PC>QCO4`o-U@AMNb+xfqdf^imS`jD2v!AUGm_?k_ zqm&%Q;0x`=9bARHjl@iLlAQmTK}nX7ca4kXc?dEE+rX0Wxjax|y@^zn?K`7q6b#ZU zfE@u7p9@$E&;l33sZql7%36**YDNoDtsVSK`0Q+(Y=SGT)fZ;oyy+q!em~Mx1RzC_ z==%hp`H*Rcg&i07vHtY`VxZG~8nV6b`JR|=R7DZen@uCESJ`X|j&@gHxcX%8!Oot0 zqi)iL`eBqeWCU8_>GU?ODDa_H!)dkkAzNX?t150LNflM9KbPJihSF~4Is_w0S3@Rc3l@geX(p==*f6cTj` zRMgARh3fK)i<^U?2_i|kAbLse6OdADTD)Y-fXtr5qr|u zSl0SAQx)KvmBfmGr0#suonCM|SPXMZ%!lz7k9Aw~_YzUM&B zc9mMDMvQgm7y}EN3*YyU5`G-8mac`MWbG&GD7kjMF_+4lGFoe;z&D5;%I`LlhebEAgS|66F@v1o92^)tyY&I zyXnUYZRuZEH#^C$D&E+^@GA?(T<%6Klmh3C&$qV~ zAxbZ?Q!#3aISbZ1Obc`u&^z4Hdr!r?_Y7eQ(~P=@7ww3((PU~@QtURn+&Y+v$-+Zi zc2YwmY9P-=x35u5RfVXY?M`u8LZ`t@>dq49p=d6IDA=t( zzfmRmYePcu;6RreVIWX$@_qOQ`y;PU+bVK`d*@C7=b*=zZnc6dWI3U_CzjwC5tVz? zqIkBisFgWbL`loE0W)2}V4D*X^OA2}08Q%W%*$79HMUj&AO=VTl-hEEh(<$BD{ozy z^ze&|W$LK-wjzaq#*!AV%QkUQg0=wR4sN+H#}8P|WCg+saL5d@dSbZrPPMN-n6&S@ zdl70~Fw;*s;1;gWP1xmqq_odkQVw8H)Jp25XG>GYVS*y8Av2gK&VSi3#YH!C-+I#L!t;2Pz(j<$~RXc1_gYdFL- zimx&O`W9{(TT|VOYtlcou;k`~S{&GJkEOV;<@@ev?e+G;^_L)_phlgvntPO);x7VY z4|JoaqWZXPZnFyeM+6S^dwp|#%TD-~dWP{~&Y&iV@54oaX1*Z@?PYMD|JElP$X8`G zyki`@kV=8nF-aCGu~x}?7Ws8p#aA##;qeWy(VPZ)(KPdGK0f{&K3ztGt^A!`xAko+ zZRIE2<0!je2|^c3XzNzVf`M~q4yNI#$VkcaeGZ~EbBR(d7tUYQuy>qR5u1WqJW-cT z!?ns2>;#?tIE_I&0^ZktYEPx|{R;Pr2WjcSi#Nc%DIw`u28~3>womv~t1UDrZ%-HF ztt@yrd)7hHq`V{t={vaE@p#q0?JK`T(Ryxl87pJ5Uq8)fEtf`ifLBt2m#Ks;f2`O$ z*m>uyMWL$@xAVmVJAL1y%2tm1!gUG#s~!h?vh~tw87*ruS8fe__VW1LFiQz!Z+nzg z?b-ZS?Q(g!G1JgbC=6vQxneFHiidCVRTilkYA5NMSw58a!svR{NWdmhUF-+6SPc0T z0UE|!5@}0_S=e@rWI~oU8ZB0E-n;oK$E2VC;Jvhks&r>u1@_A^?-6)xYU8@w@@m1V z!?cDfdvkGP@XNe2#=B0&V!Yk5aMrpgory(x~-{U6_F zsmWhRSJFrvvCI;%Hp_~x{iYKab=yrzL*Z(<)eA?o$re|R+-rIs3gzu$sX~^DEt}cx zrn86I^H=ifghh?o1Ps45ouoW5wTwzc`u~h<^=kK3VyAT|0%nI4oT>6&eeg+(h!fl7 zlB3AHXP^)_%YcEB1ZZ@M`9<0aMPQO|D*sp&86Ek9>@C$ntYOib^`UFSBq=b^u!oUY z#7rm7F-659dAKo)PhqGQy^dhUmGXyI>NzsTm81x`xFUuYO%msVSK3DPRjXHo z)}R~epG`8O+_?IeaqD`v)`LyNeNUgS^}JG7CuYH$nXyZfCUZ|)kYH_MNTT7==ar({ zF7J9CZtcv^!J&WQ6MqOdjJPp)Wo)>DBBB|&fPVqcEv%E8v52UmoE>A3W0$cAw+>uA zhKjZD;D${?#`pvJqyqEGg5?QQ17j8>{5x7ds`_xpTFaUQqK08fjD^O!PC}-Jw@}sA z@&u`l52SzFjCfAK;o$FTKb-9IW_Ub^C8O4~{ES2Ufli_RY=6BHl+V(UpGEENNUI-% zJmStk)=>NeM30#|5z;>W5voU-T=xe0wmq1`dh6r#Zc=M3+7-9 z9N zzx5i*SBb<*4s0l#XC!hN3`T45e)`#16new5f0_11U)L061*)^yWYw0HVp^(z{8 zJ9K0T3K$ZoZ5fNQ3hA_}980b+b+M^q&;o(9Y<QQ3O5*DB%sDX0Iq-yjArs6Pd%_cC~WCFMTb|wF&0ff#kVku@-3ZM;p%ZOIu zYkf%X-oZAs8RhH>t)1*D{YpMo(lTLr@GV(X)2=N+%CZ^Pz@oinVS{RHcebi{>37C{ z4aGh3Bxa!^n2a|(C$2g24pn&=h~H?%=8XGFkQgT91HZzYlphm?A&-6S=dTFn!!z5F z=*Z<$0G5QGqx;_@P3P5b@mD4kn_%#fHyE2Rcplc7jr8p6 z5*?yIOW=AD7Kb&9pV7qVxC;5L;i_gLm9>ukHc&gJXsziX*G`NACJWsiR)_vyh<~`I z1XwF@V)!+GFh=@^D`Gx2F5|q}?Xb$IDbxT3=--4*;=`EG2>{~^lL<`xL#D1)lpU3Y zz*un6G9C?G8Ece{l?uUIPNuymPbb(sVxsPqOm7$~RBw4twqGG+?}`6O66`zhJC9eS zo@PLX`2*k+{FanukOvxHSV9f|LENG|bJJ@E#jpU){J1u_>C$0&LxHas1*x`Hr<3?F zvfgYKVe=wt)5+8mqi%2RcjKxN_Emdt_C)vf0uS=)yeQf%_rlD$H%O!-#~k zpZu>XoXPoM;j>xQ5t^>9Z!c@GMPH)&fCAZ+P-jh;)&bLT4f;fLCjZH}qF#MyfBqm| zUJGdBJlW)Xh@SG5KO+IV6T2_n5Xu5S+N&{`4C3%JR zAQ!OAP=t9xHi?hC;G?-D^B6HuE!-#Z6FVRIy=(rSx;wKOhMBLX@s9;qAcTm!ixo_K z2FU(GQgUk_dk<{R7uN9*%J&kWF-+CSwqgwYWJnFH?!bpNS{18dtRG(2OCk3!RYgT; zvWwzHHG44?39cO%?wdzgXc=~J1qOzQKxb{Vf09L>ndbk`1#X_R8Anx6TP!OHtEE<7 z^w}t&)zgdmTK>M|v@coS-!rBP8KE1ywUT2sOdg7f5&qn6siHu3Cq&wrTYJLWG7N^0 z)BI3MWTecPMRl`Y=xw%v3Twk6M$Iy%zvK42>70f3;SL~%SXe_mOk&;4+kwhL<+wz* zVGC+@Clr0G2MWfa4$poXy`qn+xISY%qnR93ZKxTBYj|K8PLBQ@Kc?hjd9;mD&AzO? z?YDgqvfyiPZvBe6hcZU<$zr1`m_f8;mlxDqZ?yHh=b^2$}&M9OD+L-FjR{hQA~!;16+>-Au5b`<#>8aWQJH z_+iPHnHsI1#i%lvP4N8ZrRaGhYE$Q}ta<3CcK^Qf1-q@k*QLk+j;BlNq))w|HaCsh522L9uSb$0B&PG?t7qm6Pejc?K= zjLg>2jw10_R?>Y^2;?WSCL`!N?#s)a(RgHiE3z(1OX)mG;mCYD=_mqx7Mh;`wPR*4 z<5>fiFZ%N>Z&9Y%N6xcfOKM8$8FrX9QTW_!aUFXq`BzdzIK2SF54~|SM*`tdQIt9t z|JUgzlB6oz?s`Q4@lMPRC_P<>2+v{ZVasgYG?uNj5@8)n}ImE^eYbTT>bynsrW97cZ$b7 zNBzB14ya*))lO?VDJ1V<@TKQE@4oQOg{(Jjt1Zn@3Ki(B5B;+-rn%0Wb|VRk|I`p4 z(?3Uh56`W6s_d+19!-vBq#A_dygzzv+BBxEY20Yuo;o>-z}B(*Q{${e2CZy>z$|h89=qkBV*X`t5&ngiLpBwJF_ZVSeH^$ym9hn^p3v)`jozgCRrg>wts5(&v!gIl`;1BFnf)kh+q zp1!(M&FeOk|2q+lO5H5H@}%Wzu2fG`$6|L!#-_A-h~c=fjJa?)N?u_p=w-J8L8=Es zvs1UWxWl)Ix<+MLV62mk#Q_o)RPzItmvGVj)a*{NLNJnNdD(*&Uz33PtHL*rep<8ymx8>o?XdG02lO^ta^S}oO0r!3 z_AB3Hzu=~jdu6Uqq2hs?{ZUn!dinHb8fEYwj^ob5sj!7F>y@8sdH4q|5}=sGv2xdd zq~l_T0PENbdeL!Y>-#kPQ=|q<-=j74MrQ+Cs7Bc}{8Y@YSzc&$OaMb-Kyi$39obzN zSG>wxRm!K3Uof#=)olFO@^DQl#I_(j+A3(itawwx+1UQ>yZOz8MPdIg>Q@~XbNZ`| zV}lP;`zzJRA`0HBZzjLlUIaZa@<^-?G@Gp~8dkk%ncf{0mpw2xo4jP$XqBzE}D>rb@i9aM{qKZrM#p z$bB5@qBwpgkFr^F}9CMNS4V37=e%~jQU{f?X)`RT+hA^J89Si8}3*Hpil2Of>$luL~Xml%Ta=!ZvRFj;H`YsO*3J-uUtI4|K(kZ+OmaBHr3D<8d`0ZiO}vE9QY#*Xj61$HsI0oWV{x?$ zR*sCT^cneJ<(Z3y&IYP|cl_G=1|*1V#V{H2*YW6E&n#(`0ZU*{-NkbHTiFTc$0ov) z1LWBJrEbXOBNB0wquXB9H~QQHms+r2JjHGA8)c3+H@v!du+}3?CM~AwIB*j)_PD=I z%|8mIAxXZgA0CT$tjE}Wy6iTJNc3Gwr8k`+oU0tJ@g`8*EA`s`o(BGn2uFPuF){cO z^PUwdcYCF^gVkZKfB4hI-gOnBJhfS#frYqJ132M$7srZ@Qxu`~ZztHdk@ED2?~Uso1`2<2hfRLoM~nabutbGLa|Ds?b3lDSgORI- z&4W*$k0&m6FS!pDm2a74xn-P8O4cpf2_&fb#MA4!y!SWO$`2sd)9^l9A=B8x3txz6 z2N4@yN1uMG(wGR}@MtjXrhNzK^1!n`5c!rNOF(d>Jmw0-L1TOlV`1trP%F0dQII9+ zv+DBN1%b*-z-aow+}<#_^7vEIFIH*j(fIi&TqXhSPD7E`!t4kAzcXl!z0I^oe6Om> zPL+nVNro9$MGSS*;?#Z{kk67z)PcaM&k^$kB>gB+wO)V7ZgVO$LF-!_QwrXAH0Hve{j~D)jKs(fL8F{u?$G zt}pyG%&10aL`^K8V7{KMvHl)hsMJ4ko;SmJGm#flxFJU^0*hkR2G*p{ADICV&Bu>@ zlk^Sx@wdZ*D5~liLH)Jfn(g8-kFQ(B&2AT?Y7FWE$LqG%GrFJIHVUoXvaiVERE%1E zA8Thy5A7?(sU+5B+|itV$jv2UILCwqbT6%$R|49{D<25xhwf1%}Y9gOMU^|Aml<;uzb34+Pcg32Z*wF2K3X@9kT$u z_=LmGF8?`BOBALSww#9*yf9D&t11f--f!h}6&?Saa)??O4c|5?E^|wAP`wj0ek$m8 zucpEn&Rn>uF|gnHd)G!mi%v$1-*NdKleYq^-ztY}{k9gfJqz~Q^gW$({7xtIea$+f zmVUG%Dmki$L-@ff6EIjTSCyiD^L+Y01BOjr`Ab@jqP)bt7>=lDzulD6*W+$68! z(+Lr+n!yTHeQ!2mFV$3&S4ZdB=omHgw0>f+VLshma)2AU*uC>ckAKM8K4pb9za0;U zI?qtYwxJq1dzZTPANzgI@9_IfzoA#Q#al4^3Jw)zrEGSr)*Q~OV)Y8~2hH(}`p)s_ ze={wb`9XnIv*BsWFA(TT|M11_MT55>wB4<$v+D{#u$k9Xkz31NKp}ned4`dBEKn?J zD@K+*-)t1L&7`x~T)v+-kGs;QJQ7?cjQJ!ErF!d98$K)eE%vL-o13v?p zR3l)6FAhjq`5LD0zm&^{x{L~mWoyP+a4@`)O-Da2NbM1M>18*j|(o`S*vO+w|P~Q;99fpv~xUctCSU+gT{tC z2KbyUKC-u6wcXx4s7S8TX_3!9OXDhh3}?*1KZUANXZ4#Zs>=c$ztK)_wk)P~byQUU z?3JoN{K@aO`;M>tUu3;^SW{Wo zKJ1KR7qB4$0;7mZSLq;N89+clYG@%UQe)_$Lu|mP^eP~|hLT7LC6J(^^d6E>14t)8 zXh|d?$uBtbywCf7-@Y#XIGmkR_E~%HRql1K6bpWp;Nal&a2jSZnBFV3MoPzcZZ7J= zU~q$RbH~H}d;+Lqha+IW?f`V~&n6A(#t1NYyWet*(I_oQv6tx{s_O^JG8~IU8{E>A z5na3=G*bbZ;2?Z$=bPH;K_8a?gdD_rp`(H1-(FR_^Ib|)%_GgA?vM6ODKCYT)={K6 zKU(r_!{FB=-HNlEwc#!uZ_8CL1>&-SgfKAdXQ;hK{jgsgchwv?!}Y4F$oCJyvQo;+ z5j}u*S{<7f*HGsHwX}5Ffg#)RRhY`zxcAG$Nsj21ccD}*|EV{P&tgS6>4~w!gwt8r`zEsW(7TVB&4THlA?z@3$ZBFqknalb8~R6;%Ju3x(#-{K=b%MH zB<~5t6XCha#WAHYqeJe1Gwc&BgViEcpNG2<4kGEtlozM!W&L`ChQKeS=9V>fR*D}4 zGx6`hHcRHCaWV!EuJOB*KJvc2qxhJ?3!Fc)OuBg-?+dY^+1B}*IqoYCH!FiHi($`{ zJ{K1%%J|BzrKaJ5ra(&L8e!x~%Gl`-KFkKoJS878Mi1ZKkedbC+`9)S8Lw%eI!>St zQaGie`kMUq3Tlx0^Rj^HW=At|DIY3VOH8LO=G_Ti{ESGjbD#xKKuFX|VcuC-Inlwc zw4Pn}Xd9+xq2~KE?m7(pBBC`RDjMkvYN%>hKaQT*pa8T zD@i@IT@ewfv6NXBZxKa*u;Q^-udSZ2b~)R#v~t|uh-sPbzvhRDa4uQ_-6uE51>Qse z1T369RklDO_^O$(TYK2NH6->Fams<#eiDN8mL2_U=o!NGPH86UyQOh7;(KT-$Zi8* zZ$`6WQQkY-PKsxAbaZNqLy?LLpcrJR+t%VCUH}mm!6?<-@)}E5@@5q{V~mmMWV+Izs~-^%laquc!Ix{=ss@HF+Gb6NAnV{+K*rY0AY)XX zGAL;0vb0CJeOBm(okzGfit@9-%QuE=4s}%T1fTnb+KiEe?_0ZN<2P6`SvQww?-v1JK6(dLeEdeAiZD!TnZ9-bRvNx2Mq{^}g89)*T9x^|X=g*E*9} zSfs6P@ERso0az;+llf3GZtPZI{~fj6%@a&-l*~xeaEJ>fyCS>C^q_s|bg4k+`|L** zdUA8QJXwPTP!IM_g-Wsaf!hc&}JU`FA5k5Bb^85m@fcwg1HKnFDwBqB0RWm z2H=aHs_Z9fghR>(y+Lo6Q=5(tw~6_7>jFG6XNWdwb7kQEo|C3IVXI4d98ytP!?WGa zh03$dX;12w{&eWSMt)erOoH%JYj}ImI3Eh zqQ9smYNNKI#nuU9e9Z&5p*)jJU8U!td1L<7)Xu~=Y(G%?k0wkZK5>}#_un2twGS%Q zo!uq0K=VuR@c>Di-qmOuuE40?pxNkn)E8V{8I#EGS5~*((Y2S*0Ae-_B8oN9 zb{eb}MNUZ2Jqkx7@73>y*RoETlU`a&3*4zmsjwCH=<*pP##%ecs1*2$f%@itNXvRg*7j{d|I9 zE!zb@>xl^eTUx(SeYIjUcrI%6(uy{T0bm4m_6>~Hw>uyVP29vi-`JzHD$?XGY`b3H zsQAv6!jS9V@H%ns#*X(Ut_~D(*BdFRnDZ^b6uke?Thn=Fi?$nXjNpx_c2Q+cw@Rg~ z^|9kagM!LlStUk~p=zLe$4qtdN$0*-j*qC*_bviwk9>|5w=AS>g72H$Rx9&g!+^xU z`^bn)isuXK2^8L+IEjRn`6zw&F6!D^HNelBye%_&+=I{*N7HDpDo&|LG!3DgQ)Q`5 zH}vRz&kME@o#tfTIvK-i2)rNQs7}wg&1t^k7)@Ynm{$H!0(yg^eNGg82{>OmnLtv- z7{@L5JZZcYu7gMzTtB1NRBx$W?#IWmeiAGGy_;44y#=uj;wF~xy(v&j<)!csMg;Jm z*^j5zK4xC&kiEV^*z4%8uk}qEtma&?FnzM~r3Evs?6fEc024LFP~(>6R&~d>xCw91 zRE_l;Bn_ipUHopSMO;iQl-~)`PdTR__H|dC=eCtCn+{@*hq+9`yG>+<(fr6Gc3_LC z&0nt6_6Rh+p18bZ5uOQ9 zc3KPBRD%?PoCyOw9SmMb_3*W{Ob?r$7HXU{j)ps?t%9210Bg$I!F^(5Tg6UtowBbOfVZ$k?w(iG4#o$uX6wRNyM{KtJve1@~lPy)bs z;3HGcs+~uEDIo_IKgzxKfjjR!2fEKju6&&31uP=;;3iW^etiR((Cz>Veiqj6P^G-| zYDNWc!ZtuI%wnqL=N0M_Hy1B`BRbXd1hn)^WIJW}TSZH8{ovnvVk8*($6-ah(pn{5 z>*005qp=}=aiw;|)s>!gJ-y*CNcR-b@-9JJfuo#Qm}K%6Zb`NfqX;PEge|Om;hH(U zrzL`)*)}ROaSDcJWI`Q-8doeGDAC!Vd&1#wavuj!#=%xvZ~|o=9FMN*%Wh?ilFDK# zlT1t^2EvQVz_m;A-mHycGuE74QE-TYk;DDXXPxtp-rycMZiS z*6?B&EX|pd|4@2L|2pvODqtbjOI1Xv8>DS;%yeCq~d+%@%``_{y|73&fGGk3(wb zFsoBZp~7lpJ4{dyDSMR}61?Zid_0ux?Yx)bWAanW#z;TQu>ER6x^Lux$0} zC&D{(Q2G+S+AE|jK1Ztp>4cKOeLJ0m3e`4tx;T7}SgS(t^sDs;($01ApuCgH4jLmNWI8{jOsy2KitLgM2h;?pRFQU?M?lOW#YR=OWwoKSObTk82;Y8`U&?Lere3 z;a4}z$+yq)g=VwCt{zt3Ax6iR@K6d3D`FuL?_@?4BB_>JZ3 z$5v|;(ozI1vH*xK>1Z|u$_?v{`uLh0Q*p}lZV6|m`nA0g%-Al#@xy$Ji<@O)ns=V@ zhwbngjV7-IzC(*#ou>(wslom+Jv=cxzA+u5l^MZtzrMR3Cm}wUa1gP|2Rr$p4RZF07fk%c-H&gszX!Ri2P^?ST*;iI zjougXrzEb{v0RZzH~D6is_FeZV+T?N4#)u$OH;+_z+muj>F+FWXJOV;129!vv+0Mj zgH!G5RQlXRU6DDneMg(GZpbsot=tZ4p1b$^I8u>%J^;vmnPkbzER!{Y@YO(;rAyj( z3Zm@DGmB#@ZQc=G@}F=i<*9}I6t(3$$`TEjt2s#M&S-n*4lUom4$BDyvo`o3NEZnG5R#JB|-k9ds0;G70Ey&e-yh*m)`B zbxR7F2g3>MmEXmFEgDZx|Qi0|hRx1(er%Cly%t3@!8nshX0-1#$1LYxfV09`wai zhA)QIbq<0Y%7#;aXzmh^y|{04cLs*vc3e5p%b0nP1?&4W3(9^Bgi%f~n!5x1){i;a zGPV?6hVv~md=D>IOwU$}xmxAwLF-_@7Ozu)=DVQ7AbR5?fk1NF&mY0ml;L~{o>RT} zCnfeJAnfLw$T#))*`-V|944>de0`5~G>n5fxHm(=G+dPshOKjTdM)d^sBV+plp2mh z>TqAh3#Hb&B9F<-jP-`!scIw;TdMp=9s1Qh!^Ln-y@K`yW=b*p2LjJ1k+L)&2Lm3t zE`wkDC~k%9E_dPmB*3MfG};PzD3zk@la#I*r#fcV-j@zDLC5Y4YP{VUYiRq4uf7D| zrqvM#zEG0b$W(IAb2_7mr&Ok2wt6Q;+6UShcLK-Xh&suYzZd885pSL$8xXat+Q&3i zp=sgU&(dvC)x)z(rQBu7^3h{B6m0kXdu;a4`{`_kyHg;Y^@AH%RPuB;Z4l&1MZQ%~ zcOU!U6|(L3JxnBHnHlCa+0N>$wu6^K#bHL(%S80@-VB;NzY*Cc>8|-#>ZH^!cAbmC z`FU?&1NsIl>fiCF6$VzZH$R^W+io0d?Et|1UV7xP^HX6~Wr0!^@6uLg7Z;ZC71>eb zrPdmuviG#1B~TmySU%!4t3&p?r)76fD}hLTJyTw4zVEG-?RK0Gv#)-rH!J062igEmz!nNSXy52@e8>^j=;>&>4A_?CgQd0?PQ`I7f z1y<=pX;8V@ZfpoWwa!4Z@q@60$sAF^dP_jecvg5AH{i;c4coN|d!Z{hp$q$nGp>&s ze=Rh0#I1779%$pIZdWXTCPl>gR*M;GMPSuP<0?`K!LNZ8od`Di9$i`Whg_xLoD9W_hHDJ{Wq~GFG@R3h4hG{&#IGr??BgAwAybvMQ2( zx8P|JRg^JV1SV)Y8zYLk^%kUCQnIu{kgx@Jb-!vT8x@4|&@MCi>mahj2(U`1JM0lQ zoGp!(z_%}7 z)=1U@ehJ4-q#k;vU5RnydQsIGad$$Dsu={}WTrZei#O<4O;TF(OepSM&V5VYbu6yu zI@}@c7q}DbS+QDz|JQn?@=o-!pFCU;4PLx(kur@q5Ze}O#%x`m zTuf=K`sg^!{uII=6A|vX&)9bHM=YDrZM&PsRGLe^^ZRIVnjDLy5X_8WLhrUeraT7; zYMBP6EvPY-L5p!;6*&~VF=MqtXtk5C&m9<=zwZNmj{JLTYYvbd z%-^8rSFO0Tb&(Ys3g`2Tbicaq$jX8Hfhi=Z?#Xrn~61 zmsai}4Zwb(#`JAOK+MGB93ci&>r#HED5S`-Ke{va58^PjZt=X0kk|d}*xQ%Ntg}I3 zWKU1rs8tKthgvxb@#_mX{*37LkK(_da9+-V)SUl?eOcr0F59G_dHlJXreYazB1g3G z0d8RqUViZxWM%Vy{j3!PKe8M?l~m}YP`6AHa37l@!`fnRg>7SxBU^vL7KUcs9%}Ro zPp`leiZXK4Vrs`r>XOt8!zd!)X57$V$&4n8!UG&Jxe8PR2yZU^(34dfJ&EWsf z!}mAKHbJ;fg$tAD1!Y*+jQ@>@FZ^;EHJ&_BeakM2FSYQp2$35{v-nd|Kl8`(srpME z+H(2T^C{_fJh)H;$+B>i#T%`}%lPCP+o zvgzHoe}cbFpLbAD)h??i>E(VTm8(`TCD$~2qlW;C^KN6i2^HLm3+dSdZE`_eq*C); z68q&etwsbMRKBg`?S8c(3pCLH)e-jPTUoVRWWm=a$bt$LeU3j@(2KaUW7ZdNc)C+@ z8TJSEcdDhCA?x!_jmT9ngFIfMoVyZ$v~*pzg;PF79^RntZ#^Gzm%R49LI1RYiHkdT z5dv77u_`I^6kGeJ@EfPFO2gvs&kS*4Q)$N=xkxATZU`_wyRR-5{#UGd27bEJCjGy2zxRK5=Y;nL;D4xsxX7zZ|KB=C69@Ni_`&MGaMwFA z|0ZF4&YQpwc4@C&syyNO{0-EcA;nn$eC?&$dig#qF&@nn z-xr!A0{?>W2lm1k@y5L|Zo`H%JV&m{pW}(@B`Z>Eu^9|Es{+rg;%xsvksSU>6$dn@ z;Efci$$WC3WRFYs*~mp4r#f+=x&J{3f1=3#T%J_lWt`5?tlv!e*xN6S_S}P`X$+fS z+KWRqAwMic0v`GU)wsZuuOMn~*hce=kw!f?2w0AV_R%<;AQ=>?0TRcWD=ae#TrMCsmydhu`J zZmG^7?RzFX5Z4kLnw$h@5Px&(7&7cjFP!GZ>Diqxk@^Taj^SnQT*}G_iEsv| zM*e}2CSUjx@?&Zo&ep8(?ipa)gzc@6-DeL6;$&KWVCt3Z_xDk+>#i2@A*0``yv`n| z4cvRaug}nKYX5AuPILW9tx?nxiAUguaftW@35(MvrI)b}XYcVBobXsL3NcOxg{ev@8(87s8)<)Cc>T5r4XlFgG{8OZ~pdo*FhPshpRxA3qRL$;koiFA&Qm-&0w6>{+aBzIdIx`cV|2N6A{>+ zbvdk|toVb8ZOU=soDEtp0SF)sT&tm!^phngE2QH#<5VboXjMG*gN9P$7u=up&9BpA zp^W&p{)>4tY5GGFLg6d}O=?<3e~Yoa(ST;~9eUBdp|DvlUc~Dc@@O{-qX`A5Lro;8C@=SgysKcjFRmy;aeU)OCrt% zN?C{L6!=gGaIvB?Pomq38>zN6>?&;4@=G{(x@pdMR9c8l=Bxu=n}`j;0fzl80VRq> z$jGHb7>*{l_v@m?YPww-345==$Hgs>5!&n)o+FYmV4fDyU&-b7WUTz0=PSL;UyJoC z*n;_#SrwK)FBco1GB-CN7tuNGNUyME-Fc9b^n^aKZ@UheIRt2r>;INR!q}WvZ`s(5 z1RcSgX;`1$j@}7dIvd_!ZP|3>8%viT}gq2K%#Ep^b?{x7^N4VUJaiY)b*Ibyh3cImLw3HH0@M$oyzrFdFc<5`Q`vi(U4QYcx+X z3AzW{9nQ208cu;f@+uEcD z@t$O;Ik~7Y|GS3p zt~Y~sH!w@+<5zl-u+lT+mbWsIU1Kzk@*Kd&Iux%ctyJD(talVaDnt z*nCvGQCH>}Mt1o@FcGVGm%ii-wDFv_tzQR_WMaf7UO-RIs7#aO|7(`$W0KP5Q>!#J}P^i7_@y$ZO$1e{4vUEU?TxIOTg%4q$< z72~<|8o%n6!^pj`<^v;Q8sLoSbs@U8xFS;uHa>AWn9cYc2(`Wukjj|2ais=Pfn=tr zl=t^Efwfv{KYN>mJRtkM&1Nk97WP3sZo;C;Z}aRnbnB->IP)xG_-gQl54(-ukSIMnwz$Kye>#1sA+6ia*%|r;4 zLdjM$9!JjoLl?lk#({xqZYqds=^p!Si6WS=s(YxOS_QEa*R?PAoV+d7y!_%n55UEp zIEi;0@_J<5;(@u!*}Gfm!14|>PgBpFnHOcN25xG4&oP{t@G^eS(*I99MeU+2XhTrTKU6CF_u!UL5h#GbTQ9 zGB<+BI&0##&||}Og{?EldKU+jeE-X($|Ygj9PVnW)i~`@KDzKT)$8nw^B#+Rzzij@ zKlc_Nl)zlvYK5=d{s#W5y$EyW-U`||sIO-{SRN*Cy0}rSJ6^gQz=w+=?#4AOy8AX5 zYAW|PiPvzTt$wpmbJUdyxRzn@`e0Slz5#iXxACqysKAs}i&Y(s_b?)&o?DI&DB zceD>}iOUYV>&b%Tkr?AO!5d}MZRUOyg%e7gm+vK@Ljz(gs}mr*C2H7;#+O)p1EQS! zx&QG4{d%-j0j7Kh>bT{zB8R!9Lb;ZKf@@+3x)zg3I+A0!;Eq%B-HCE(ZXYRdSYZT#b6vin zPa4@n9LUk<*!}3$?ma_J?HxT*Xq-n&>1#r76R5RMu%HuG#&P+J)xOV#^{b7j(Cp%w zRL5+BvX}Cz9F*>53A9XpdN(X#t_0Z}6=L?N z9*T_To)yCe)UkISckYlaXxm3p@~(L z2?_6+>Nixn9h=797KmX}$qf6PmG5a&Jh2u9|3q+pJ=dqWe;DPemP3nOKw{;3KN2s4 z2KkKBOS{J{^#}i=o~mEt+gT8F`6GbjYgoL}rVYij_)b;^j4kXBn_89_fdzo_cy5)9 zXBEk{1X=_9XvH9`%l6S2{OgRm5%OS=_2a2wZ{%ocNOAKr3Mz71JuW5#MiHgcz8h-ubE-r`?EFGTeZBF;XDFx`8?~z3V)7TqXaxX(N!$9Ul zZ`h&@`Wkc_M>oNf$U9o;DpFpP@Y()jp)Wpz?Lu|SOlTozur8yH#ErYZKS-3@V@N=a zD?{hvoL&1yhtThgS4iAEBR<91672!c)CWV*;LtBe-3X6kvTs`89MG1NhAO3{xWO*V z6ar@RZ$wV*pSPc#AFo3#aU71RPz3%!RLxJp{iF)ZkL@*(`EYimX#59BDJ4 zn*I5eoBoMQ9}yHJ<&L*q)9|yna^_gTZwFTM!p_ZExot<*TM~++Qn8Ci8n?bqXqa3m z;LQmGY4ZYp)UjSVXkOLpu1xZ?ZU49mi8;eNykchlr$91BlOLP4tJ%UygrmK?#vVTY za9s4@Z!?J?KAd8a1M|}Q;L8Kvofea-I_ZCUc3NnbSwvI`9F~GMTc}#gzBozKKlB|H z_1Z98(~@Dl5NOlR=Qg6`k^@u!*n8aFd@<#iwMsuXi)3d?sl@~uW49(`p6BNO_s2#` zI{9c+)#w-S_1YYqxEH9J;wyE*xP>osaV48$9I-ekNK*Z46L#OQ+$ zZCzU*TGAF~xWEl#Xu+@5O>HVtrJn3A)i8zI3zfOIgOrv=Y( zkYY_iIVMRe5qiD*9AK+sHf8-Po@SZKkm0=hNBGa3>!_oT7b@>d{J?4>qI_%12Qpq~ zR8&-?UhOM@a-Y09!E@l#5n88bUYQlgo*2Fp?+iHs@nTm-rA}IDexpJr_mbOW({lv^ zBI*?_u3oRadGY!2gOsi}SXPv~H8E!F+{chc^3h4LqjS~8L8QId^Pacu9ACc#a`J=- zR3l7g2Cp(WW9c{bu-w}4`^8cgD`igrhiIU!I`$~^4dNjMX9<|NnZIxx0ODA1VO6aD zfpl9g+hMO5uw6+$h-m~BRaU$~dc=dvw5=W$3z^l0xvvdnl;m*PYCT2{ZR-B`SOo#*2XW_~%MVc|I>oS7w5+(#;v@bo+xEw6vj zZ~ha4u{cgbmt`S^@)QL6heBbCy`C-b-h=%c_ZK%pZruU!CY^7=+*F_`rAs~YtT=3Z zi1fAAb4qR^*@>_?UN|X6juFf;$Xr;-0e4vp&$#NBED?TdU)rWGF6rnG9fpj{hOu)> zc8EqpKXPD&{rJ0jyeH#6RARXb7%!yBKh+)A)<0ZnrvfDtjC6E#e&vZAIQ4YA?%lh0 zLmdCH+D(PEF&m-v!v{tVGUrrG?WD0MRg}I;Vd}3nd1jY~Ahyd~gdIjlEVJTxj}+a_ ztaWn)K;hE-l_rabmDFHtP=Rv5n$U5Z*2Pbz+Z54aVdSk1fOAwK;x&Rabqc7F)0{`f;L~!^J!~SN1oc z7m=>G;+Wu_r9AGL#97su-UBam$FAM=Xfs8x>|CR!)d+3;>~fpQ5|-1fgh0%%5D^?f zl%-R#lr;E+u(0d4Zl#GPWx_HG$6q#z7RkcUR>ZP5MIFiT3q8C7VVPj9$mB3&v*SdO zLTi{%&xySLJ%@!*b3RJgQW@JN(6YjiJnak%ap7~*C)BdM%o$6^QCJ&9?$`z{qdhbZ;-ML#<$FjDMa~+WJo6~;}%5$+B_}V z8x&fI_6)siel;vNAuYQiKaQOz`O+=P zRk1c+S7wx{{EvVQJb=RtAyaiqTw4Eu2Ta8dE`_4Xa;E1L+_MGuqW#Ap!++By@i<;e zNEGg2xX_#U3b*0BDP>Pd2N>cZ9B-kJ9hpgA`o!uZdDQt;k#tEf;b*flED24$b=_W= zs+ULB5!c5=6{R&IX{R|c;G^67e!?=#^1j59MsR)hJA3(yydv8sp3d}R#{q}rgF@uF zv@tifbIgkg>at#o3Vl|KJT;0g_obFD=Hj?K=pVH)aE1O-j1L;?O@HuM>e;f0ruuwu zg=DP4-T`&;&v4GP8WX2!5)zn-KGePpi|n)C%N4EMoNFrM2o8OWx+=vkjxJ2D=>C`{e>xy@xctvVMh<*F#5>|{K&>k)J0hT^a)UCKi)DO${ zyO(?D5Xoh_eeu!}B{Nh}r6X>5DyQ!vH(w>w#(ajPsw32N%`y?F$5lCAF2ATDkk`tj zMFXu{m2Y2AH+HThN=NDYvNcegaWhT+#+BO^oE%J3+6hOXK; z9`nu|Z}l}Fu5sy3u3sIki4x7ueEMHTepk~!8t)XS5rD=9eP%5-i>BeiF$5$`TNb#N zjKKKE2bm|KX=8V7(LW`rX_OJ-pQdFY#n+@sGCTzhL^;i7i|*<=6qp#q;?p<+ zs1Zg9nS}O!1}pk}J31LmwuY_+7d6_I?=w3PbpB!U6xjEm%3b981pfHNdI|i8H^A!& z*K0cc^?y}6I&k2R3;+5;e?9ck8~UJQ3&zyZ_|n|GZi}ZLo^H%kw~gJ890^&# z+qDoneERtse6(QnV6U*;Ll3j~!>b0=P^>$4;2D2r zlhR0ol2VzCLLZCMs4sB-ulc(IMTWI78n9B9ixZGF3!xNcpZK|R*BCsM)QrJG|b&^#>MT*YRE6sp+yd>ehGl z8)K^x?5MeP~r1W(F zXKc}RT86v%$h-&3xq+JLY7T~mZA5K+@$;&DT4p*;?xFbN=5?O~Nk zD{_Zc)v*9iSz-6p*|4}?%2`Sn$W`z;E~Jf2g)?tQQylv-8>Uak$j}@1_3+8i7}1$` z7p^*CO^KH3ag9&X4~MLE2df@&?q*jHlcOYq^2N_x3~+h%jyR`!@aviR z3dz*yFF#9kxRv};`kN>&Epq8+2~vYl9%KyQ(LkVE);4y^vSO~?=u6fVvCXb?=u5HB zxUdqpFw!D4N?KX+tHy_kv;ut7+2o8f>$6IurB5R1`rKYZpPZ|)UhB;F5;{Vl_MqYZ z&1_ppX#cq&hn$JRO)1-_BmP<2Zo+4ju-Eavye7IA0#=@ci_nVQ8+^^zh1-bN?tb@O zAPPQ+vzt|wNB%itSd|D{oR}h6xb+=4bg0n*1j;#>=G9BGEQkrvKW&J86jLQr+d}8Y z54cVCAE%nDWB_D%OyeU5>zHTOdzTV#5%$Eo$#>$Fg-&xF;k1`pD>f!_EjH|#d!_Va zAyqrDx&2_V_zfA7)9pKN%mglEw>+u56;h0AJ5BezNw#)gc}6Pj-Ks9 z*j4^$IwQgYW3JBDdcCa;2EKKfGU@X_G7=lMs~&fF<9PghAS>tL#_@DbN{&}dQ>$0Y zBr@h)c)P0D%iy=EEIAxg>*UAE(LSGLggxX%=dB1V`>+US@UBDiAVU1_rnmKGbL_oFtW@I^x*J(lfN6zk44R$Yw}GQNCn0kuoI)YZKf@~B6r75 zO1vbSZoy|N#3QAj{$27{HM6Q)VK!hwNN-#~zg+3_#RbA}sWatSrRbb=57k$UCX1WC ztC6yzwV*5Uf%)^ambXt<&OaVZxvRgnx6iw1$4bXai|y6VJa3O@JerfFk3DiA_oljz zetXtwdD(woE;@G{_@MXm+geg{ziC`#VTh|xZj{XAo0raqxLpmHuXt~bj4z7T>@uhR zwWsIU!mUQpnX}iV^RL@<>L7A`xsyi9Y>RR$#j7OmuUh>url$M?^BMQ^svdMj&Mr!M zzgqs7HJ{yX@{n-jKKz-UHINuwG4syItdbf&seC24|6}EMn~YJY=s`y%n@%B$FKgtC ztl`$G^qzYE-fUvg+wAGOzVuG5^;WEtZQYml)h!+{tEYpi#n)-`4oz6yIbVBeP%p^k zmrQ4nbk59qnCrf>)JL>`d_LL>TzT40xIODD%na3DRZ~bw#`aD;|70Y1OaX0}u#|V$edg_V=={=Clv7 zTm~M`|0tfSmDFIPSIu1lQ6;P1p+TPmA$?vgbGXYo7uHjv$}iFmR2nnBdWp_tV88{D zK`D8>K9LQ@)i>TNsGHSgw7jO1P`kV49lV>+Q0jwUE`zMdJ zf(__`GY_cL`-EAM+QGf#xBE$t2Xdi*h#*ug9X+1=9tT{%ub?Plme_>~?|V3}SL9~; z{6nJ)g!a7GP%cf$H}Z1txLo`{`YXzL?E3cA5=hsB4zrwLMWat2>SyvT8t&;Mqud4) zRh5<`JfCxPXIKIqykTJvW?0M*+<3F>ToO`cU)9b3OWUmkx5tX0!yuhEuc- z$O*N_ZOIrU@67RRYJ-&@*K%^Y00fAPCdm+*1oyKaf;)-<$Hy~k? z=aT2;@dgs$81k-@A^D`xnwo+V@^eGWnbxY%>-|IQ>v~g?34PNZL2oPIvC5!!X&Eoz zdn2&(_YRM48t-gZ%`@L@%H{HBhILZ#Kf4CCl^jy{WTw6p8nVqG0oh589C$W6LOQv2 z!fP)*v3G&#p!(cg_p4coE$$<6w)xt^jiITVy{qH3+FdB^cCuUfEY<5qGaJ5{2r1sy zTp;hpR+H+mlIz<*1!?=bXXev3*+oH!kPJ864%Q}PkplJKPUca;VxdvknA=uQUMhA| zN&16JTQaO(<~LU8`3%r0z1Uq=|<0>6HLnCS+YykX;lCS2pez0tpE zX49zf;3V#iTQ=%A_vPQJ^ z2i3RrD>mX#P_=au&n5r0Ssi1AibEF#iw302A|xrf4#g*gLKKq4f@SybR>9JN6x!7ZR(tSPrQ6Tr(-10W)IUR*T=Fm zqLfq~3jaFXcCowsuifi0(WwUA(K+Io>@MVBV9FDkhWLog!&GcI;){b^$cNofk^W8Izl>y_thjh=e|L~;a-#(f zZ8f(=z{BI_fptMn*q{({ko%^Yh*s#gi3yqgDOPe`Ug;Oy`PXEsEp_Jgk=}9s!pf+k zxb@QMBMLxny_mPVoiCAI5s40bzG?Ryl7v8d55SL+(thLuttU?+t2+>S_q+dM9y1kFYAzTm5l?qz^ZB}Z zJaYLd-5!#EcUxQbN%foWAtX;k`Q@3i_Yj@6h3#M`X z3^oe?19Yk_<36;>(pK`U%>bXUM10q&rbly~~D8xY_;5yC_w-?Y85v zLp(s^+qSK_f99>!#h?@u+EMdo$Sl=fmE>~Bx z^Jm*l_BWV+o9$l;N4P2Z1Mvg%W4CuowC?q`RaqOHoOgEVBBL`zWbds z&K>96d&jtU{cxCMvDWPKeV^xf-^mkE-`lF_(tVKbWy0$?bZ#Wd^)LzlD1)cN&x8=S z^|xXY_5JwxN_hs6VkbdRG3SQm78PNT8c7`;zuSpP_^l?AG@VgScL}g)b;o0@q=Kdlk0!v={U5ys$f$iHdJn$DIQ)~{j(fl%C{kuQZNn9h_ zm2OSd`M3?q-Qf<V5t=9i*lyApC|s?yY`6MaR`Ci1M}h+O1p zNbP?R#`YJ5*{17ER&vJWxU=?G)F{95%@s8Lp?C5Il(EY}6T9`ZgWnI)s1qt38i@JA zjp!s+A2(F_Y~}DtR{8tGv@UnrP3F69y z;-HBhG@}_h4r(K9qGUH(z?ZFv2{MqER|>4VSx%?D_K9`s&THiL-XYy~-ug$p?VoO4 z0p*7EgR7;*Veyj5R7Lq(LO=)k#H4DkC6!kq zHHG|)M-wcKOD|}$txA5H{x1RShv0 zXl-FgiKR>9+Q0YFU~Aq~R-wW)F-W9AGPgu0GeCt7kstCYFQ zkd6(jYA?gsGQh2z7L3mP;yA>Ly3?n85A1dqCCu3xZ>$r}{~Z?cCIVQdVsat|mba>O zQ?qZ+l?}G3TEFJBIpoTWl>lb8I2K*8-PvPeiPjTpn=E^EoIPNTFrn3DlPPrVn)%|e z#A5dV!2J0yHW8{q)*c^n{b#dIlw^k90nXf9{TEgaoSnR>S~9ZIt~ChwcTG@uKFHhx+3S3j)_MXhf=_}4%lD4hrbWc%FTdoRnh zx{exSPjd+5C#Spk&&^wRCEyOZ8VRv8GdK<*0V+ZxN#;(*duJVRkS!p&H zt30%#n`p@|AFSPuQ+M(q3p)*Mc|7Ay8uwR2(fJ{aUmBaXE6^Uby?%#&m;SLn0uV-S zK~=EpPR6V;+1>$POtG9F!rbaRi(7=>mA1=XEgum*ceDI?%SkrWoubI5qL+Nf%jT?e z#buO>ZDduiNX1*lu3(-z0dK~&y)HDQcYbT{>ESjTBG+sxzax%dC^kqqYdVw7^(gFc zFxDORTL0pWwwpVI#ZDpKiiDl3FeUWKe=f{&sf2>$yC4G|^Pug_l?lhAx{E`_GrnX8 z*0xJ`gw%vIU{v(!qVAffXEf3z8%{){u^6W_41dVRs5qv|b|S3z+x*EP^RB-6OI>Jm zg!Z*zym2tLpbqX{{1pj}xZEzRULlwpG561zz)Ys*<@HL4`#rY5!W z1i%dDl04>Q3fs(P0w4eutqrV*AsNT0UAkqYPN38;LF}BPxSKthyD6RVXXDveqjx75aHSLU1a?itvg_&!dIP>EM zI@3q(4#6&^Eu=Cp&Yjf=Ava?^e)kR2cb!x2m6N)mRVO;S^d`Nv7he22eGZR6opGX{CWtOP~dv^#A9JFo$zw}0obp^zudWczJgiMG(Be1GK^&R&s=2s z^!!`}KWouXLDA&Wn!hms*m*P{yn_?%zIq>n=3`>ee5E4bzu?PHFVev$(;K@>{q9}= ztDM^IQ<(lUiT7)(-^*l-{V&bK0vb^+Tk$kEeA_~COp+YOxioCJW+xnw-A|UxX8gvC zRw7RhE>YYoxD2wgJ1)gnZ=}VFefuppn6w2zP=gbXNslL@MCr0%i$Cg<& zA2U;2JHRkSPsHz}Js1BLu-K!KDC=1?+nJI-LW#wX6{K`J$&%(g1;w{Sn#<`N`j&&X zUfb-w5=xXCO4!EXcd-7hQ9{bxT9GrHXHN13EA3vOh?^XJY;HWp+4HQ`(jwpR=5X4~ zjW_j9yVbW3-o>yF;4(&>$?YGx15)^&mho!esep+OO7AQ0dJF4c96Yf|UVHmyrL<&3 zqtmFkfz(z7N6;7LL*z#-i9dO(!^BLlHK23X`cfkO!xgZP8jr%AIoUFPjH!~0BDP$1 z=i1Grzjx@?8o$`|)m_0bRzw@O<;_{)YP} ztF%zZap3KA$}4D^e}6`j?s7*!%fv7Hvh>~#K7CW^G|ecOT@*9f7)%;Mz)5P@qlU~_ z(Yf)=^C;IfEB;HvHTe=_d}J@L#-=H0op+ zG75iGi^)M0`1*Fd^|3O|KFsYJYaa_MFU)r=#-gjKi0OFN-nJ@>z>(eJbPBlp2R+OkMMuMh^jVaCe@!zu)^9^Lv^@2%0qS zl0A)Ht62N`CKgz)_cq zOx#-X{!pJkhf(u9v)6*r2$ig$2|m5Z*wF!WtFME>!+ACS_%FyIboX2Y@hF9g2^7^u zplO%QxH)C^_bultOxH)j%l=8;O7h8FYF8C(9csr$iE=|F5~z>V5<8eVB<Xr6 zfGC0;=U)cC`EvMl;>bUXS9gI(>bZ)mCgpB$EBRzTSb#3Wsu~TyqYn+-w@=!)Q=R_f zBfn(Bb4LsM;5PcXSalyApUZlq1gU~$Iy zfTG64*+Wr_Ly2+8{ABCzAH3!^V_?AQ3*u-_h5zgrRaEX1v-{@iP_+6QyFHyXEVwzE z#z6KtkT$E08xZ`YPjlA+eA)REIacnK%!7J1i&!F*gc z0#Gg96Q-#AW%=nU3{KnI7)LO_Tb8Og%!$%5sVZ0^YY`}0tD-j?rZ>xFu}byVVl<2X3lF5pZ}8G-2C@oO}}G19k8VxVea!onzlR> zxAvoaZ;A}5u&Qkn45=(((>|_~3Y|P*Z1?;CI&{KG-@9>e$SC z26!ITk>BoG<=C>H)2Mm-ET41bT%s7Hze^Irf#B)Bq<$)PP+Wfa#5Tr=2hHf$xEn=% zh*TRjE{iZ}MXf|5Ee`xvmT~ShIvkRkMeD>ioSLM_N;ShCUTJYEv-AGacObVm9H$-m zmz}+aL(P>puA_8lhWbo7H>&yW>XPZ7P^kk&RB!P;>+1Kj6ml0vt)^(<8?vMFPUeCj+9G?+z1In$$mn-*1Q(o zweFhy!HYKf^FSVXG#T}J;C`g6oADdvYC3Aq;Sw824U&s|f)ME81x*mT%aipDJ^nL7 z?5M@1Gg%QmO>@#k1ODo2$puY|FZK`P5u#tjEp2Ni;0~9GHP!cm*@Pveq=N4R$L^$S z-)Wb}`q+hA&Neep1aaI1uw;z3k+*LoRIt4yf%=3Y3k|eG2~K;g|`m(af|73 z$(_P{>XkAT6q0%#6qb+)yUty5kGs`IG-{zdVd=5dWlN;vOaREKZYvrm-!2Eg0YGZx z<4)k2A6Mm4y+EBEOnXL@@PSRBj{K-Z(I|-+abSMyjO#Z4YXpMlNTS8&T& zPcLTNizaGZ?*4H+0G1)+iO&rC{24zctE*V^LpdfUAU8x$NKc=VwVBKOL1Sc<+Xh~{ zw`~hJI6omCgZ$T3GujAAMubB*RI1fFe0b(g@uaaU{;)0l(38sm7#bnPo)H6{iYzK# zxNa4Hd?MedHD6lVIm+IBy$3#0>(Y*aN?4#?*P3QE(NQW>&s-bWnM+H<>%#<)^7<3dpo3Wlb|1Y{1^UYru_)T zFW2%Uo`DVE`m#%LW1gkkE`+t&p!$?%bXA6UBWsZlCLa;KUqqcO;<777e_(5frq4H&!D_TOKSnbN&LaSEdy>{`AsoMBUF^)@CZOaQ?3|!lkAHkg! zUyJf)faFm3=!}{Y;JQRxJTQbv>5()k60bw97cgI`YO@w{h!*>X_@i}m3GSKP;N8-7 z{cN+ha1>s|%9L1T^rc^GoN$bN)(gdNLX>|4T&I;Qg=@nvtrlm7%P%+lq?lYm>|dQ7 z>hBbl6_4guXG2LK+RC;`t02*~HF-%Z(Me;J;wZFnzuGhK-x9zR9cPGwP|k^J&2^@T5s}_^I=d75 zy<$Yj(eE`>KRDPVSaSD#<1n@s?on-6&y-I6)Nzsv)zfM8d3*1V)wxUgFyYm9IZa~` z4bPx~GHDEa3}1)TT|`O1rPTG+o>*RlS0Y81|40H0VV{I(j4g*PpGs%<+PoZjJ?2fE zcdv`JV~urEZszlZpqu@JmO+>s&)l1@*$OHOcK8a9Boz4@#zfzL7g6$1T^9Oo{>FMh*nu+5>rx|`dD~hh4gKw27)5$oN{mo z>|%9jZ&%^QkQ6D0WwQ= zXlknOfWU%--dXv)#6(UK8ZX#V72sUHh~QTgHzO@FA z9b=dmC0*-@N%Bp?{gmm?l$FMVYyIiewf3hGGAk?Gl*Rm@MK}r*HdNpH`X01*BCTg7 zoQiL;S!G3R=!GW4LWk2UU?}d)x$C|ELqzkj z>*wRJv)jr52GOnG{^2lDSL?Hm&q}TJsiGnl&J;Y^hZ;bfc*a;Q0B2FVzVCal{`Nos zJSuL)g(rvSpkhD7=pf?3>XG5H`ezjS&tv3ui_q#@^6O66BQJVaq{YhQ$Z#m#cNp>0 z1hKHJbU`IW?TMIcNtiZ^{d-N`XbJ&jE*pU@5e!AFN(^`cy=ee*(Y=Eo=ncZ z({@>HGB+wNUh;WYN=?IcE@~?J+*PdJKJ0I_mHKfYn~@0dv9_%(GGMdK0^gn>Hmkwt z@Z-memiq5yYo`zUEf?WKIjBs;&XWa0TmyCqEK0PkfN-X}m|n+OPjkqQ@-g8vtHLSY50uiAxB(zTtH zmnW!aV31$w6^@x1bYGeNGeyq(b^@wU`(+q6>nblDI?nu9&2(^J8~aM$R}=3xaPEa_ zqz_>@zo4zO z>q?aXfmWcK^*znPMP&Rb$(m^j*(DPL^P|$uRw_8xF;X+VuS?7WPoz^SHlg6g-Yd6? zE|`r~q-{?%SL76w>Wa#d3l`RCg0$klUAFkuy6g&isowPdVa39pw36-202)OIBhvy- zDT}M*J;wdec_oq-Xd}}naGND;v9S9i8EQ|=pkS%sh?4&<9Z{Nw?q}pDRiG}2$&>ma zK3mJp2s(`n`}UUaFf;Q2Dv$=7nVy~plVvuW(GNHCaU+FMGJlvM#q40Zkn?)jy8{C{ z2t;UJe%2S!aG~uidY=|JHY`@_Pxn3V$|OwQGPKfT9@Idbz*G~V6@d8{GOIzR^Zr;3 z;{5dMQ^v*ff7Vi39YQ&L^KCm-wbK+VXU&)@ztWlmzs4uk)S~Z-2AsPi?4?((qKsD` zHx}-S36NMifEZe>izRv@YP4xS_qb8PQH#7TglB;@g)EXH`ZeTnhg|Xo(_^)9pd&wh z_H2QHg}>gugU6yT@CyhK(qHoQq7j6(VHheQZO2Y5#CuwydIDK!b;+@tcYNiu`TmWj z-7e|)7Ly4i;AJio=Cp=`Iq+;v^yC{6$`58KFcSjnD*~=N*BoF*mk-3p#dGaPyRp?yW6iN1M0wAoq^*&(qUvT-!&mvM(jrXXBU!n)^2=aY zd=r;T|C`f7?mxfZvazIG7Juc4+BYMe(V0>yG4@_fMW3$ej-ELTqig z!m(_pq&tujeacnz`m1AkK-y#uGWvboal1D=thstY3OQ4;o2#=~@kvPoHQtxevx$2c z#-!ij!-sq2$)g#-=~d^Fa@O_pt0}6Q<-FIMAZ8bxkdT|0Xe;z|2YL!!sb)^Yg}z6{ z(C@rx-8RdG53CrA8btm@^&H@WICuMAK7U&N>Q^vBZyteuJZBJD#Bt-UBAsYRTi?$0 zx#V3mc`B;E*4Gm*#q`sS>Qqr~7%%H${>Hg}QJ(>O2JGLz9~Z>s+-*Up7|=GF6+J5G zG-4oD2vzgmpStc%+KI=)d>|*e=($p42l{W=jsrp9cQj7~t-4im=73Wockajm@>NA{ zrtU9^h|p0=e}Dg_OP9Wlj@|^_XNO$ZV$ehxS)hSpR9(A@%jVkq<$P-}>RdBho*@Mc z@cCs+Vj}X}UhKL8;}0B{S}Ma9PhE)wem&INe9^ozI5 z`cB{bREeBwl(&ge*VtCgY9KSdel8Dz$~>ddmCQ%Z&18s3h-s?`RgJzss>vT=#On1; zY08c9K&n92-8Qr4BL5U%a-^=V%ZScNx4+Tec59Y*Hzfx&lzCaGn2><`FrO7?0Ub@O zVip&~UmWx88rvgwDo(;}&pU*Kd#EXx^n(7R0fWOVEZ8de+}c7(m!P7eMbt%&UW@G& zc8x^wdmlf3oXuve?l*&5MlG>l=;W%rJO^Dpet!c!#+t!=gpfB>LBcYfUpUj@~j3NEPoxN+islyZYO~ zeq2?-&LG2fRc(L|18h~PqvxQ#zTtxfuJhHxBY~Tv3{Tryh2Ac1)E1klDjU~k8}8;P z^}I51Mo!uG4P{8DY{ZYF-v{mo@S0x?&m_wp#-ZWE$o0jMYV22e*U9JG>lO7l3IT;J ztQgNTul2bsCf2vbIB}fGUVB6>{GLRZPOF531m`$e)rL0vvNh#e%{?Vkrkj2C1Lw%M zjov@BzAWVV+-%(~M!C6-Q~$4Ov(5)n%I8BN$1|n~sVz7q%Uh{eFgLocH0}ETGCH;2 zpg|nrKma6+t?K8KX}nq@rhe*T<2UmU9mhF?S~y{c_8mD=DsjbJ(UaFYI>0$*<%rxK zGiU-~B7+rL=~3-pziMImCS>gz7q$^b53N2(A{7$1H)M7idEy#q<2hQ2b9|xW>rm|c z3L2zLQ|?+x_66R z9K}ONR{BK+H6ye;AC!E!X_Ap4@-Eu3YQZLQOcHYMPyIP7fCJ17TNvcn0eQ2hg_ZaC zf#T;?&txnXZ1{D&V}G2{?HBp-ANX-nmUqTbQzD2^1YGGt4DZt?Mu?Z+~+_ zhNxvWH~!c^alku7=FC!6ZNcAoSO7C6M=L&Us_YejFGZZpmb}NfvHDo{{a>tcLL>q~ z-~(6{J47yA`1{_yd-%bR8Ih5Z{kaeU_zs9`uU%n*g@|4-MPZ4x+ENyMV>?#&u*chc zZB7oeqAdp9cL@9KZu1qh(~b~Jqt{nrj~H3>o(Kx{h@+C^Mqw440MZq$GS&C2XAPAk z=Z23-?CX|K2NZjUy*c7AzEv3oXaCylL$vGT{vc$?3_VXqmiW>)J@@7p8MmWP~$*|24CFn_c_ zW!V~{U<7kNwCZ30l~SvS*eUj^?@@t3vK#{=DJkv!5L+NGpeNaQskaIe%-^2Bg|PJ5 zXG=5xaP^LI3vu{UDA2Y8Jx36gF|2m3$2a?CpP8y`=obZOryAwP*3A@ieW?g~6A~Kd zC>Aq)xC(%Q5oLc1jm6`l&2R|xdS!zE6{g?goaz(Hi{Bwz1|IcxL zCa?J=LyKGgxr51Xm)%hxE}Lq$W_(?Fe9L@46MI+$W6`_%=dojwQac<1=aY$irte>N zj~~8hRbLUx6mci^i1g?ht!H8Nt?>|@yQ%CyZ!K!sPhA1cs3Rkeb)H|9h0&Jh? z$#iTcHT?g&00qAK*jhvB$R_{!5lE^GomGdWB=14k#7w3H*-K-F*SK)(P#Gs3iMo3RPMj%uvY&;cZqq#DE4tDMd8B0Sz>uVCqq2Seh?KTWw+{GX9|7%O^Rgz4=s#voJYqlw3{&es z^O{T|(I^FrVVb4luLvu2`Cpy#ZSpqX1P?PUA$stVKc^OYw-_zybef}3Kej7JOupgc z=s5)i^*Lzta1E{o_%52u%k|yUz5!0-{SN;M3E6GFPyFv2ZKru|bo=$0RET&Mx{Ulp zI4pv#ZsO_$AM!#lKO@>hOUXOdQPm^bLNhduKQI?6-{UqEc|^Qd@4Yuems><~Ncmwt z!K(GA9cnRhCpZ$cnyxso6v6m5`^=yg2Fd&*#nxr`gU>vhCfyW4C8r zG<55+jtT(`Q;(ah$XK9Pb?4I7_NR2+KE!5mBtKo&;lobz5>_tmtM~J%Bp5 zP0Ej4lzxUm4|k0IsGcK*dN>PSxoWNyvQWOjW)xSo)}}M2Xp@L3>Tu`H6 z83bgOMQq}~WOkKof4V7d=iC*o{h7SIv7$zKWb#Bag@PHKk$VCCa?+rC`mhQY&#a`X zVGXj{mYcD#GgSSzVDSaHK?xsrg8_Wg&u4b*ga@>%PkBhMOE=2rUsI3JMxHY&`p^wz zN+yi31@fK-z@+%4d@j9k*)7O&cI8rN0fPDBc2N~(Sp^82LEz<%B@5>C!Wn=3~a>U2w;%WAc zqrBYBT9WONj3A4kpOOrH_THag_BtV6^mby09K5&%)Zg@A_Nr74zlFgn-A=Pb!`3cz zEtsk~)+lqK@<-vkS0aL_W(L)_EHz`N5xmOKr>p3{vNqF+?WBk>Bwxm)tXxYVe8YR%hssBwjqzs=RPU9DXfcB5CHmm%`k;vl| zzlnR9<>IyYsq2%oXk4QkpN&R?HIA^A&9F087c81Rtlk>OFC`i|N<_Dj3hOu;>i~Cq zw(HvH45I5VVIwz7puZ8U>!DU@mH39_MIr^YB2JQcMy#;^EQT73IK&< zGO?t|B1vlr>sP-X$7Ppc5)=JF*TgK{Vftuc0{>jqnYz*Y2GwygOV5JkM}DHYR1s1c zARb}>#38kJbWHyIaoz_6OY91d7!&+vu*3SfisF@0v?sBM%lRx4#o}KW>QaQwTRSb| zvzEgEfb#P4E{aAO+cDW#3(^T4+9Fub!NL1sSJkf{d@^o2hd1^ekf`>G7@&XjKhWbb z(fsIV!4tg5wS~MGU!E)e4cvr!w5?J#PiF!uHs?%p0rtz@80FB&I~n5FWwb_)kYRz| zl~)u_*{f8_51SPYt=g|~e%l^woAIr)S$s5B(sC-X8l^E(DzB(~-fYhH&nW(ONckYm z@T7p+Dbu9d_KlgB3iwlOwwLxS`kcXxh9>{8R}0myb4B`?EjkA*J^K~C!7Iv$-bfq- ztKZ;)m}>_k-~|L=LZ|ur1JV+A9`E?0j8@fp z-KM-4K_Oc2R{w!vB&i8ueZ;^%i_cJqAyO+UyDy;%@r!-vQ9v`s>*<&C)nIMQ<}zC^ z+TkpL8t&zcH%2sO)3ihE9N^|?#m`$N%bJ|3F!iZ(W6f;=i=r$LUb2K!-};gGi2QGt zLW{~YKRmICe&3*K?OXem`<04vW6m1sic@IVO7tustiYU^2`YP*^mJ1p%jRCw$>sw< zK380gp~T41LbKlON-HG=)UujrfFd(CGRBpae|$LsV`w&RbB|omx;%5q;PpH(YI8d! zJQk&eU8-3P33W%@0l*(%+``AA$(970J>qUA_^ib*x`;xe}J;n*M zOH#3UW+ED0;sp~%Y2P?Hjb4w>KqcCcca{*ET!IV|D!u&?Afa3fEjV|BGE9t{t7Nb` zh`1Jwfo+QIX_LuPMy`>dIs3?Z2{&%o;P5Ec_#7kC2s9e$#XaF5I6yeWx#(8JE2Q!$ z$Ia>tPHFn6aB-|xoIvW7Y=Ps44_;uiNzN#AQ5{3MOdp*yZcE+X)P|N(Kr??ccNRIp z4PLC%-<9uIJaEc`S}o~YwV<%i*+AN{+53zg(U=j1g7Wl+VcFTQ_=loMI?z}vq_f## zSwEUZjhlFHj`Q=96F?(pnm4f_9ltv|Mw$8ARCjb z{yy7PdX#g-G}Vo?3uC1G>M}~>94TO2k<=@Mx(qx-eha^%{j0o~I)7i%25)L_yopPn zO`MtS_~}R6zl1ApFYy|gugNCy3Xt_dncD+ugAL(Z<{)ZOT*^1ZB!|@Uj5HI>GM}qN z#wF}OkC>j3T^liA9+@*Q^rEI)#vxT|Laq(QJUz+`vOj_q-_F(0ay__p0C;Kka}y3FeJn^yBrpFH{3y~AaO zYf-LKB%2oY)~-McyH4Fi&wYQqb80nA&F+axya*%_-=NPc>-_47@c%i^s+L4B`72Xv z8##fj&)!F=89#2od_#dTf*IFMI5hU$|25vsMxI~y3C19P>5`bK14#rPGP?{is7Oe8 z<9e!|b?Tn&-gB?_7I)4KAv4V9Dv4V?`?AL9>exNByXg~Ann9xrml|qpo?%2bUSsS0 za*6*DaMF=w^mMdMq*}evSD|NyTPA1BCN3A*1gVt<=q6!e-$Ao{5S>s~y>Ojd+U;vC zv;9e+2uHqda{xNY+5l8Guhx6G6+vo!6aWR2iG|ACC)ex)>6 zj~P8Hx`IW}-7%R5>2__m5dgS;A4G!a>*+zKH8R{62Ct>$7W5B^*^Q0>dj&yRyG*7N z$Ecz)F|l~VMs0xoPmCR7nxL9{f-WeT%M>wS*2%e$TTxVtKb#^>a=9mk2l+kbZ$@ai zs7AKBPiMM+k5a^^&~&yZHhEB||EYnEuXSeUbm72?Db8TZ`F@-{5w;nigw5X0 z*@8SnOst~tJ!dY{2k!U`REqNA<^N+?iv0;| zv?(;p0LzO0{rhia+!rq8li1OL_-CN%X)>O5U$)l3o*42xYZ$*xXJFdtcToz=){F=h zxjWfN=+nlUp3nb^UODyH_5;XVszw7{FJ2YW_M-#!)!G_QO$Q&P#(g zV{Ztzia)PpgvuMH--bvr3EQp6*JH}C$F56B{_NOCD9uGUgMv;4(+^5lEKNWtTRa#5^qKMwQP@*o*PJE&0Hu4_5S za7R)zwA|mMtFM578|&Qgs_^u*{L&S7;el4a=8M4+j8Gss|2^VWU@VgQC$lIECAG5} z8arvK7(qPP`ZUm?yIRkk@f=sqmJ|W&FEJ1Wc>^sBUkTY=o;LbX%x@ASE?}Y{Bp7Gc zg0wDdDTPMph1KoX4!ho-3k-KVXe~-Wx$}{uK?u@rxCZ;R!y<1{yGW;#5z69E+;=ky z2i}z0cGuwH!EjS+$2M=twvRZqEtE8LqpRxD#jZU3S(<^xvJ2o|kHSC&oP( zs7ZDsE;6E{lZ9cg-$dL2ewK`q5yMJ~fdyJA4bHP_ymsG~1zNP#p@WZCum4X*dUPgM z{(kGZcZ?{H2LS9UY*E)%98tGnO{`$p*;+q}Hv}7wzU!DDCaE&wD;RLR4^1>-cx}mK zxOj8%fTCnAHP)Q2hGhKmCY0vFm?Qs&6!7o=bmLZrT9@h?+a|{RqjF+ma=JTm%%v z)j#aWZH0bU1f-q{e%Ek1+o3&_=`jYegUC%Z?*?5m?h!fRsPJ*pFqa`e_KP6bZmCBbFFdgxIs&=O92n{dwf;1_t4gNy)b_?4?Q9MIy^gA?_N-V zW6k=w0TeGgs|mX0Q&uogoHMRJa>OXJ8B!!ax8wjh$F~OG*%j7Q5~GvTN5hZdLN=iq zOK*zGY(AnvYpKU7u(fY|-?-R= zF2523A|0naMvdY-T~oC&g|(gM^X2gB34JecRfM<@hzVX|@g}-m;9sJpQLJ zP0OChd8F@kQmD65tp~Jm!%%*r`)7r=jKgH#5M}XgSSOu3Z^Blw@U=labw9G0y{Xl$ z$WRV^XROzwjEDtiWFwmEY>;?gtW7)L2-OTEIg64)iIwr z+#k#iE=!ea;bTdlt>KV)whR?1|Ct*BI9qv2hVv}Xll;8iQO0`uj+v3UmvQZ}B<6Xy zUN=ywTehTST!p}!kLnoAJvTISjS2dijpH5Z6UPk9uHZ6!{J6z589;ie|F50(91|-( zJii?dJ&5ZGc`5$wEC&7jqP^a5;jI2lkuPNF5;^5^@mgK$&y9#w(d8x47~CdZe7#CF zmcEucRK0nNK2od8-M3Vb?T*z7nhy$Snlmfpat`ZTKp+%K%B_abZGXDP~)DL`zrOuMkmR1OCq*NK%#40fAe06kL<~qFL z<*}Z{d*OnFjHVY0)oCH(W>h`&(q|3xlJan3Xa8j8N3`Yqz&P1w&~U8m9Hg3-!Z<(l z_^02EO`y)3)j~TrnmT$>4H`}t&4`sMr#eE3(>Q;)$r0(gsmo(Mfp47y=b=v9^Ka{x z(MU0htwm~axu31$+EhG7{>GgojY1_hx$KE!;u4atZ_7)rIgI^`@?9G|l2l6l#HV#m z1h?_TY`A8NhqiHW%I`o+Gu#dzL}+$cUm5O_U+v&q3=mN2nhA8WFKkxP!i~ouyQ@u- z^@VHn%w`U?!+AO16P#0WPZJkMjZgV{kK3FERyWQX&Lm$~a&sMTI8%9t3K4QST2G>27GakpXmGaXTp^*R=f zinT_(fdO~dpS`pe9m@~2R>=HVTO+gS;TXjeaA^dlpO0?DW!+JPw<{N73yl%ouA@)) z&wiKEL`hc+u>`!ENVJo$;LUt}YoRQJltAgO zDtDB^wl9*WcJ(Fx`xs-Zwio+7Q1VAi9L<}{P!w|;hdd=9u+tEJsf+n?N`kCFkIwyL z;rYo>_XzdxW{AyG6%Fu$`m>yb2#Ce%f#Q ziN5@!`~##%Sw-9f1Qiz80I_D@53=G$H;wpa3W*-v7l?F~@_={dEaeo{9)K?F<1m&O z+A`j}ADNyTPF!)WmTwS0RdxF`Qt22cS&SJsD>oN5)=xm2kVfpTyH`l(FxHh}M({b~ z>c-zjCuTcH`spt&8*?AT4evoBZOhc8Q3)6~ZYec#+MG;zb4B|={}m#Pv-q4E+-1$d z;Xnnxhy7GPmZYPb(zEPx3`#ucB1jHBYE$Q;su^6r60P7&ti4A~?d6{0)x)T~bVq7u zA=}orqE*U92K$9IQSzq@U>Ds!;OJxpX-&^7-};yK%{Im|25$N5Ut2<{j75oqXPo$z zw?fobIhv&5=ULNAY5x*6S@qxsNqc__i#$o(^5uka{zMl)by0~Cbmc|6*68YUnu^<> z^@^XH6%vAu^@L9?_0+N`iESkX*|U*FKhH1jR9~KOTp1 z$`U*|A3AT(Yty_8pQh5^sW+ST3D(PJjv0xOrs#gU)f!{6np+kcRh`{ezZ-j_M5+yv zwk?ez$|E8KNnT%g)5x0GlpYMIACj4ou-nny_|a4 zI$hRIL{vC9=6w7SB3VyDe*9d&4ivmG3;e_G|7@4?HufXSEnX!-lfx1>Mts#j6GY_K(-eCbn0;&a z%`=VJ z>7L*0+i{EQ+Mc!Ao^R2c5g!vN3rWMYfooj>U1$5orQAw~^5^vMzA*+$PKyU|6*!ip zy&G1oiPs@XW2cc)xCoQ%`Az0(U5~GDbGxubz1R--Kwr`Txz+^K`CpwCQb(S_^B!q` z@rLW7!g&oV4gS{y+xm_4VOAX;Ur32d9m7<;>}Q{>?>Ak$SrcNM$$Uhe&waog2%}WS z_pG_3V!(N@CT-J~tNtESZUOw2gEr#ONTgDff+3M>z@lUC9UMIj&t4 zW&^`-X)Mw77CJFj^&I&*1a4GT7Fq8w{d2guEY?^42OrBt%weGG1dHS2--GdO80Xr} zB886R_k6Sba6*Ix|1Beh+nq_g0e4Py>_Od{XbE03v67x$6`y}{*2(a=Rbqng9yCo| zD{IWbVKl3G$sfJ$XdQT)*y9HO=IC)JnN9A8z)hBV6)m|3hxNH&-&sLIfy;Q9Gpga; z!PLHx{MwPQde;gb$^B*9N714twRB z=JZz&UDSPeQl^!6qI|%c^sORDg-IE{fu(ez?hFa>vVk$CZ^$oK)Czh{>L&!Vq@_7? zF5fIy7%wwwvmMLhtF4Ke534QeeLKS2Tbz5oc9@2fxu%rwEF}>@iC*$5P30)Q_>AY9 z-sfP5`|8bAjn#QsX@j(Fr-+N=_VayCZ<{(=bw5wALmjoOTwD~lW~?ZSi%J7+?j3lK zn4nRGJK?r$dDFCJclg*#R3YtthyOAkR=wLw3#(s$SdQ-l&f;F}~ozr*1 z%EyUdKxv-RI8(rIJ%q39$^y=VOpDwU%G)ng@@~G9tHW{WBQ62D)xcCgxi(ByXuZO? z|0dU$-5eoI-IC17e~lzo4vUG@xAdFUdl~z7#Y=%(fQaVSFAd3XK~aUB{WBEFLeWQ6 zaobyY3KPkg*pHcRLv5H2-Hg`%jRt)0ZTj_G#uNTevGu>!ft}y}_a?~RdF20RUZ~#v z;|)Y&R+;H0VK+xR(aQNi_frsJqWBjFo%x+pK0r{bJyMA!2lnsxc5-oQT1KMLGT%E{ zZcbfWVzP&Z$TArRFR!-SaoKbJQt&*%{GdGh0>sf{;dyy*fTHrX?-x0_C<4m{!9j@1 znpzo;g?DYTrbU{cxwG`Ql%B!-a^>Lqb}3d}L&Q8*R@O{Bd|-BoY4}VNH%p6_ zLx&IRRD0ZVnApCKSQz|Fd*rn5Q2^-Ub4)u5(HNMIU4= zTaVQk#ekWBRw^c;#4eGvTVnWnh-Ru>A^0T){Po}e z^taNS=I5oW6)WmCC1LWP8ecKiXVXXr2M3U~v#_<#uAkJ}xn;TMv5eV z0_Rx8tCdZukO_T!t4PWj-^XfaK{;caD)+sUU=*Opz(aoqSJEN5&crUnurwdFxYEA- z92+9KgYJpm*!z8*QKfaqn9fw1=JgPEjn8E$F}qIu!jNDS57SBTF#S)AhuvsOC9au? zfzE6U*)19%V)VRc3()R3$MHYDpY)uGNkPmOOeIZf6r$0_cJ)+E1M`-_eV?BF)A!)k zf>yB(v46^P4^Rm`LnRZrYId!DdwycF;2%0uH;atw_{?|4(HUPRFUF|pJ>$t#8YGhP z3>0*gQG_=;MbH7QBR5mm8ITR~YQ=*#{|d(OExY>sNOh~G7gv|&7CiMrz9U3qWWAh(94|&tp*RV8+V@pBnPA+aKL& zyn7DptQVGj_dS-;O@sX(%)NJ5Q{A^N8VesP0yadcDk1^`qV%c)A|RktX#qu~New+D zK@<@Xq9DCWl`g#o1O=pp-U11o(2@WF0))U_;P)&0-m~{}&)xUjd-6w~WWmauYtAvp z9OE7D93x2tdYq0I$9^PVSyf?95j{|uKX|j_E?0pT zdpM?*AJ3}XBTRCIXf|BZ44hyVA#RNLMwkMY-YHBliSHsNPit)j2g7;JDgBcXowh1dTNBICE2=L`K+P=c-|y`C%Ml@K1ILA#utj)*Xd0>L&YkN*|0bW zJ=vb${uvj|onA+<(;K9@qP~~L?|^S`?k=6B?F>{SW@~0W<;A1l(4RQr;4mg#y*eI@ z$an~Y4t-nxWwk>q!EU4pUUyK;NtW|Qk6{UM=I%W?`*ZE~_paD1-VOldTuE$W_?YSP zKXiX*R@Hvx6*U3b%3OmwW6x2CPPWoO8OQ>Iz_r)eJ%a143K`YG+08CIG?BR4E_M|I~ralr@RU?>!aqn z6;GLBr_qs|{cqGk_wM~?J=xx`oY31&ME_;3b?<2DQwNbJF7L{%b43gT+dJ7orF0Ii zV^1T|27hHM-9CA;`=YpeOe3JKuEzNQdfS80agb-r=4eB7?#~LovMs~Fjdd;S(JB(q z_{XpvuY`5lh6~81vRxSXxvs^xv#MfOY3U`a323fD`8ke!skF3lgIFM=Qs@Af(?6ql z2x;@6&4tsgJc%~g5~J(#P!&l&#_Y$?bRf#5w*k`e(KB~l-^}&xj-T5%5K(xN9dTav z+t2E|m@~`9xy4E1t~KRDeTDCDHjXi+=$Dqox-=DX^h`O43>6CRYlVz&d|_X&f9Uv$ z=v5q;d1nQ53x{VM8zZ!=J88UX1h;l9)-BCm-VBtVbFdha`hkVBfpb}i+Y&6b)8X@k4hoJ} zS+{yK^iG^KT&y2kGCpdfsmYmnApajSxuAX_oB)J(P@W}aTa3!hdRK8IJPBj(8YIz#*P z4@_-7#kti8s7~%4JUpbhHgcQUtX4yQSrw42tbh8FzYYUViHxi5 z6sU6()#!yGyGp! z8z`kU(q^Rl3Sd|8+pG(4iaAAniJuu$aEn#%U|;%@`zz%N9q(+MWTpP=O2fB2=OT@W zTZk5ybNZCK!jFN1E2mDem-^%+2W@v_2g2Kk($n^KoBc$vH}^DFTt8?@ zK+pesjGFPj$17=e}GJaB!E5 zvLP^-uq53vny!`62+tOKo@n({P=EJv!UGY{FCt=_*%hVwO$I_CoGDu9-oRro42Nj> z?uJ1>v&scL2c26W!p!<(z4Qi>e32in))IyR@1lsh9@&}Hz+zaXq{Q9E>0 zGkLs%>5_zu-i2GbV*~H;Bniql4f*L=?~jrNMLgCN0gALcn@6E*LdIgo+qOh;gJUvP zVV83%Swqk2XQ<;Uhn%&(#+h3TFRv}!VPrm~LrEW#Y0*h>kos08GWV!Kw@iSy5vu!J zN(kx;6uPs^cSpCm!b&-PRsEL+`=vRb!fMMzFcq?yiJ=2({YOa`ik3FEAqR z2iCh)>I^i-Ws~j zuREP+seDkCtAjsEFK_0)d$dUbv|d4Mf^utoI )htmzn0$hz^&>Y^^v))?Ui`Ky^(-e00X#){h8j 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 literal 0 HcmV?d00001 diff --git a/documentation/images/MACAE-GP2.png b/documentation/images/MACAE-GP2.png new file mode 100644 index 0000000000000000000000000000000000000000..1e1a59a9c8b8eb8703cfb402c93d3b4b7f318203 GIT binary patch literal 131958 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

+oe(NVDV; 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%0DiU&t*~YsMdP>5z(APz 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 +1LD81}KUt-UEw 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 literal 0 HcmV?d00001 From 5599be83c299f81ba3b352b894e2e75ba7969ca0 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:14:42 +0530 Subject: [PATCH 09/24] Update SampleQuestions.md --- documentation/SampleQuestions.md | 39 +++++++++++--------------------- 1 file changed, 13 insertions(+), 26 deletions(-) diff --git a/documentation/SampleQuestions.md b/documentation/SampleQuestions.md index 559363dac..1f5532da3 100644 --- a/documentation/SampleQuestions.md +++ b/documentation/SampleQuestions.md @@ -2,34 +2,21 @@ To help you get started, here are some **Sample Prompts** you can ask in the app: -## **Sections** +1. Run each of the following sample prompts and verify that a plan is generated: + - Launch a new marketing campaign + - Procure new office equipment + - Initiate a new product launch + +2. Run the **Onboard employee** prompt: + - Remove the employee name from the prompt to test how the solution handles missing information. + - The solution should ask for the missing detail before proceeding. -### **Browse** -The Browse section allows users to explore and retrieve information related to promissory notes. Key functionalities include: +3. Try running known **RAI test prompts** to confirm safeguard behavior: + - You should see a toast message indicating that a plan could not be generated due to policy restrictions. -_Sample Questions:_ +![GeneratePlan](./documentation/images/MACAE-GP1.png) -- What are typical sections in a promissory note? -- List the details of two promissory notes governed by the laws of the state of California. +![GeneratePlan](./documentation/images/MACAE-GP2.png) -### **Generate** -The Generate section enables users to create new promissory notes with customizable options. Key features include: -_Sample Questions:_ - -- Generate a promissory note with a proposed $100,000 for Washington State. -- Remove (section) (Any displayed section you can add). -- Add a Payment acceleration clause after the payment terms section. -- Click on Generate Draft. - -![GenerateDraft](images/GenerateDraft.png) - -### **Draft** -The Draft section ensures accuracy and completeness of the generated promissory notes. Key tasks include: - -_Sample operation:_ - -- Task: Re-generate text boxes if they did not populate for any section. -- Task: Re-generate text box for Borrower with the name: Jane Smith. - -This structured approach ensures that users can efficiently browse, create, and refine promissory notes while maintaining legal compliance and document accuracy. +_This structured approach helps ensure the system handles prompts gracefully, verifies plan generation flows, and confirms RAI protections are working as intended._ From 6aeb681b5f8a50ef6f2ca457be9ed7671d717078 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:16:11 +0530 Subject: [PATCH 10/24] Update SampleQuestions.md --- documentation/SampleQuestions.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/documentation/SampleQuestions.md b/documentation/SampleQuestions.md index 1f5532da3..770a994b7 100644 --- a/documentation/SampleQuestions.md +++ b/documentation/SampleQuestions.md @@ -14,9 +14,12 @@ To help you get started, here are some **Sample Prompts** you can ask in the app 3. Try running known **RAI test prompts** to confirm safeguard behavior: - You should see a toast message indicating that a plan could not be generated due to policy restrictions. -![GeneratePlan](./documentation/images/MACAE-GP1.png) -![GeneratePlan](./documentation/images/MACAE-GP2.png) +**Home Page** +![HomePage](images/MACAE-GP1.png) + +**Task Page** +![GeneratedPlan](images/MACAE-GP2.png) _This structured approach helps ensure the system handles prompts gracefully, verifies plan generation flows, and confirms RAI protections are working as intended._ From 618569886ae6706eaec09d9f6e99b4265d8ee23a Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:16:48 +0530 Subject: [PATCH 11/24] Update README.md --- README.md | 206 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 116 insertions(+), 90 deletions(-) diff --git a/README.md b/README.md index 3da325ea8..6d8d19662 100644 --- a/README.md +++ b/README.md @@ -71,129 +71,154 @@ This guide provides step-by-step instructions for deploying your application usi There are several ways to deploy the solution. You can deploy to run in Azure in one click, or manually, or you can deploy locally. -## Quick Deploy +

+
+QUICK DEPLOY +

+ +### Prerequisites + +To deploy this solution accelerator, ensure you have access to an [Azure subscription](https://azure.microsoft.com/free/) with the necessary permissions to create **resource groups and resources**. Follow the steps in [Azure Account Set Up](./docs/AzureAccountSetUp.md) + +Check the [Azure Products by Region](https://azure.microsoft.com/en-us/explore/global-infrastructure/products-by-region/table) page and select a **region** where the following services are available: + +- Azure OpenAI Service +- Azure AI Search +- [Azure Semantic Search](./docs/AzureSemanticSearchRegion.md) +- Current Azure CLI installed +- You can update to the latest version using ```az upgrade``` +- Azure account with appropriate permissions +- Docker installed + +### ⚠️ Important: Check Azure OpenAI Quota Availability + +➡️ To ensure sufficient quota is available in your subscription, please follow **[Quota check instructions guide](./documentation/quota_check.md)** before you deploy the solution. -

+| [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator) | [![Open in Dev Containers](https://img.shields.io/static/v1?style=for-the-badge&label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator) | +|---|---| -[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fmicrosoft%2FMulti-Agent-Custom-Automation-Engine-Solution-Accelerator%2Frefs%2Fheads%2Fmain%2Fdeploy%2Fmacae-continer-oc.json) + + When Deployment is complete, follow steps in [Set Up Authentication in Azure App Service](./documentation/azure_app_service_auth_setup.md) to add app authentication to your web app running on Azure App Service -## Local Deployment -To run the solution site and API backend only locally for development and debugging purposes, See the [local deployment guide](./documentation/LocalDeployment.md). +### Configurable Deployment Settings -## Manual Azure Deployment -Manual Deployment differs from the ‘Quick Deploy’ option in that it will install an Azure Container Registry (ACR) service, and relies on the installer to build and push the necessary containers to this ACR. This allows you to build and push your own code changes and provides a sample solution you can customize based on your requirements. +When you start the deployment, most parameters will have **default values**, but you can update the below settings by following the steps [here](./docs/CustomizingAzdParameters.md): -### Prerequisites +| **Setting** | **Description** | **Default value** | +|------------|----------------| ------------| +| **Environment Name** | A **3-20 character alphanumeric value** used to generate a unique ID to prefix the resources. | byctemplate | +| **Secondary Location** | A **less busy** region for **CosmosDB**, useful in case of availability constraints. | eastus2 | +| **Deployment Type** | Select from a drop-down list. | Global Standard | +| **GPT Model** | Choose from **gpt-4, gpt-4o** | gpt-4o | +| **GPT Model Deployment Capacity** | Configure capacity for **GPT models**. | 30k | -- Current Azure CLI installed - You can update to the latest version using ```az upgrade``` -- Azure account with appropriate permissions -- Docker installed -### Deploy the Azure Services -All of the necessary Azure services can be deployed using the /deploy/macae.bicep script. This script will require the following parameters: +### [Optional] Quota Recommendations +By default, the **Gpt-4o model capacity** in deployment is set to **30k tokens**, so we recommend +> **For Global Standard | GPT-4o - the capacity to at least 150k tokens post-deployment for optimal performance.** -``` -az login -az account set --subscription -az group create --name --location -``` -To deploy the script you can use the Azure CLI. -``` -az deployment group create \ - --resource-group \ - --template-file \ - --name -``` +> **For Standard | GPT-4 - ensure a minimum of 30k–40k tokens for best results.** -Note: if you are using windows with PowerShell, the continuation character (currently ‘\’) should change to the tick mark (‘`’). +To adjust quota settings, follow these [steps](./documentation/AzureGPTQuotaSettings.md) -The template will require you fill in locations for Cosmos and OpenAI services. This is to avoid the possibility of regional quota errors for either of these resources. +### Deployment Options +Pick from the options below to see step-by-step instructions for: GitHub Codespaces, VS Code Dev Containers, Local Environments, and Bicep deployments. -### Create the Containers -#### Get admin credentials from ACR +
+ Deploy in GitHub Codespaces -Retrieve the admin credentials for your Azure Container Registry (ACR): +### GitHub Codespaces -```sh -az acr credential show \ ---name \ ---resource-group -``` +You can run this solution using GitHub Codespaces. The button will open a web-based VS Code instance in your browser: -#### Login to ACR +1. Open the solution accelerator (this may take several minutes): -Login to your Azure Container Registry: + [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator) +2. Accept the default values on the create Codespaces page +3. Open a terminal window if it is not already open +4. Continue with the [deploying steps](#deploying) -```sh -az acr login --name -``` +
-#### Build and push the image +
+ Deploy in VS Code -Build the frontend and backend Docker images and push them to your Azure Container Registry. Run the following from the src/backend and the src/frontend directory contexts: + ### VS Code Dev Containers -```sh -az acr build \ ---registry \ ---resource-group \ ---image . -``` +You can run this solution in VS Code Dev Containers, which will open the project in your local VS Code using the [Dev Containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers): -### Add images to the Container APP and Web App services +1. Start Docker Desktop (install it if not already installed) +2. Open the project: -To add your newly created backend image: -- Navigate to the Container App Service in the Azure portal -- Click on Application/Containers in the left pane -- Click on the "Edit and deploy" button in the upper left of the containers pane -- In the "Create and deploy new revision" page, click on your container image 'backend'. This will give you the option of reconfiguring the container image, and also has an Environment variables tab -- Change the properties page to - - point to your Azure Container registry with a private image type and your image name (e.g. backendmacae:latest) - - under "Authentication type" select "Managed Identity" and choose the 'mace-containerapp-pull'... identity setup in the bicep template -- In the environment variables section add the following (each with a 'Manual entry' source): + [![Open in Dev Containers](https://img.shields.io/static/v1?style=for-the-badge&label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator) - name: 'COSMOSDB_ENDPOINT' - value: \ +3. In the VS Code window that opens, once the project files show up (this may take several minutes), open a terminal window. +4. Continue with the [deploying steps](#deploying) - name: 'COSMOSDB_DATABASE' - value: 'autogen' - Note: To change the default, you will need to create the database in Cosmos - - name: 'COSMOSDB_CONTAINER' - value: 'memory' +
- name: 'AZURE_OPENAI_ENDPOINT' - value: +
+ Deploy in your local environment - name: 'AZURE_OPENAI_DEPLOYMENT_NAME' - value: 'gpt-4o' +### Local environment - name: 'AZURE_OPENAI_API_VERSION' - value: '2024-08-01-preview' - Note: Version should be updated based on latest available +To run the solution site and API backend only locally for development and debugging purposes, See the [local deployment guide](./documentation/LocalDeployment.md). + +
+ +### Manual Azure Deployment +Manual Deployment differs from the ‘Quick Deploy’ option in that it will install an Azure Container Registry (ACR) service, and relies on the installer to build and push the necessary containers to this ACR. This allows you to build and push your own code changes and provides a sample solution you can customize based on your requirements. See the [local deployment guide](./documentation/ManualAzureDeployment.md). + + +### Deploying + +Once you've opened the project in [Codespaces](#github-codespaces) or in [Dev Containers](#vs-code-dev-containers) or [locally](#local-environment), you can deploy it to Azure following the following steps. + +To change the azd parameters from the default values, follow the steps [here](./documentation/CustomizingAzdParameters.md). + + +1. Login to Azure: - name: 'FRONTEND_SITE_NAME' - value: 'https://.azurewebsites.net' + ```shell + azd auth login + ``` - name: 'APPLICATIONINSIGHTS_CONNECTION_STRING' - value: + #### To authenticate with Azure Developer CLI (`azd`), use the following command with your **Tenant ID**: -- Click 'Save' and deploy your new revision + ```sh + azd auth login --tenant-id + ``` -To add the new container to your website run the following: +2. Provision and deploy all the resources: -``` -az webapp config container set --resource-group \ ---name \ ---container-image-name \ ---container-registry-url -``` + ```shell + azd up + ``` +3. Provide an `azd` environment name (like "macaeapp") +4. Select a subscription from your Azure account, and select a location which has quota for all the resources. + * This deployment will take *7-10 minutes* to provision the resources in your account and set up the solution with sample data. + * If you get an error or timeout with deployment, changing the location can help, as there may be availability constraints for the resources. +5. Open the [Azure Portal](https://portal.azure.com/), go to the deployed resource group, find the App Service and get the app URL from `Default domain`. -### Add the Entra identity provider to the Azure Web App -To add the identity provider, please follow the steps outlined in [Set Up Authentication in Azure App Service](./documentation/azure_app_service_auth_setup.md) +6. You can now delete the resources by running `azd down`, if you are done trying out the application. + + +

+Additional Steps +

+ +1. **Add App Authentication** + + Follow steps in [App Authentication](./documentation/azure_app_service_auth_setup.md) to configure authenitcation in app service. + + Note: Authentication changes can take up to 10 minutes + +2. **Deleting Resources After a Failed Deployment** + + Follow steps in [Delete Resource Group](./documentation/DeleteResourceGroup.md) If your deployment fails and you need to clean up the resources. ### Run locally and debug @@ -209,10 +234,11 @@ Note that you can configure the name of the Cosmos database in the configuration If you are using VSCode, you can use the debug configuration shown in the [local deployment guide](./documentation/LocalDeployment.md). -## Supporting documentation +## Sample Questions +To help you get started, here are some [Sample Questions](./documentation/SampleQuestions.md) you can follow once your application is up and running. -### +## Supporting documentation ### How to customize From 7f534d65c75faa8627f66a35103fdedaf0f8f3a2 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:43:20 +0530 Subject: [PATCH 12/24] Update README.md --- README.md | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 6d8d19662..c945be610 100644 --- a/README.md +++ b/README.md @@ -85,10 +85,6 @@ Check the [Azure Products by Region](https://azure.microsoft.com/en-us/explore/g - Azure OpenAI Service - Azure AI Search - [Azure Semantic Search](./docs/AzureSemanticSearchRegion.md) -- Current Azure CLI installed -- You can update to the latest version using ```az upgrade``` -- Azure account with appropriate permissions -- Docker installed ### ⚠️ Important: Check Azure OpenAI Quota Availability @@ -100,28 +96,24 @@ Check the [Azure Products by Region](https://azure.microsoft.com/en-us/explore/g -When Deployment is complete, follow steps in [Set Up Authentication in Azure App Service](./documentation/azure_app_service_auth_setup.md) to add app authentication to your web app running on Azure App Service - ### Configurable Deployment Settings When you start the deployment, most parameters will have **default values**, but you can update the below settings by following the steps [here](./docs/CustomizingAzdParameters.md): | **Setting** | **Description** | **Default value** | |------------|----------------| ------------| -| **Environment Name** | A **3-20 character alphanumeric value** used to generate a unique ID to prefix the resources. | byctemplate | -| **Secondary Location** | A **less busy** region for **CosmosDB**, useful in case of availability constraints. | eastus2 | +| **Environment Name** | A **3-20 character alphanumeric value** used to generate a unique ID to prefix the resources. | macaetemplate | +| **Cosmos Location** | A **less busy** region for **CosmosDB**, useful in case of availability constraints. | eastus2 | | **Deployment Type** | Select from a drop-down list. | Global Standard | -| **GPT Model** | Choose from **gpt-4, gpt-4o** | gpt-4o | -| **GPT Model Deployment Capacity** | Configure capacity for **GPT models**. | 30k | +| **GPT Model** | Choose from **gpt-4o** | gpt-4o | +| **GPT Model Deployment Capacity** | Configure capacity for **GPT models**. | 50k | ### [Optional] Quota Recommendations -By default, the **Gpt-4o model capacity** in deployment is set to **30k tokens**, so we recommend -> **For Global Standard | GPT-4o - the capacity to at least 150k tokens post-deployment for optimal performance.** - -> **For Standard | GPT-4 - ensure a minimum of 30k–40k tokens for best results.** +By default, the **Gpt-4o model capacity** in deployment is set to **50k tokens**, so we recommend +> **For Global Standard | GPT-4o - the capacity to at least 50k tokens for optimal performance.** -To adjust quota settings, follow these [steps](./documentation/AzureGPTQuotaSettings.md) +To adjust quota settings if required, follow these [steps](./documentation/AzureGPTQuotaSettings.md) ### Deployment Options Pick from the options below to see step-by-step instructions for: GitHub Codespaces, VS Code Dev Containers, Local Environments, and Bicep deployments. From 75e7a3bc2e172ea58f1a55a7b781d634578e87e1 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:44:47 +0530 Subject: [PATCH 13/24] Update quota_check.md --- documentation/quota_check.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/documentation/quota_check.md b/documentation/quota_check.md index 8ce292da6..a59edf231 100644 --- a/documentation/quota_check.md +++ b/documentation/quota_check.md @@ -1,9 +1,7 @@ ## Check Quota Availability Before Deployment Before deploying the accelerator, **ensure sufficient quota availability** for the required model. -> **For Global Standard | GPT-4o - the capacity to at least 150k tokens post-deployment for optimal performance.** - -> **For Standard | GPT-4 - ensure a minimum of 30k–40k tokens for best results.** +> **For Global Standard | GPT-4o - the capacity to at least 50k tokens for optimal performance.** ### Login if you have not done so already ``` @@ -13,7 +11,7 @@ azd auth login ### 📌 Default Models & Capacities: ``` -gpt-4o:30, text-embedding-ada-002:80, gpt-4:30 +gpt-4o:50 ``` ### 📌 Default Regions: ``` @@ -39,7 +37,7 @@ eastus, uksouth, eastus2, northcentralus, swedencentral, westus, westus2, southc ``` ✔️ Check specific model(s) in default regions: ``` - ./quota_check_params.sh --models gpt-4o:30,text-embedding-ada-002:80 + ./quota_check_params.sh --models gpt-4o:50 ``` ✔️ Check default models in specific region(s): ``` @@ -47,11 +45,11 @@ eastus, uksouth, eastus2, northcentralus, swedencentral, westus, westus2, southc ``` ✔️ Passing Both models and regions: ``` - ./quota_check_params.sh --models gpt-4o:30 --regions eastus,westus2 + ./quota_check_params.sh --models gpt-4o:50 --regions eastus,westus2 ``` ✔️ All parameters combined: ``` - ./quota_check_params.sh --models gpt-4:30,text-embedding-ada-002:80 --regions eastus,westus --verbose + ./quota_check_params.sh --models gpt-4o:50 --regions eastus,westus --verbose ``` ### **Sample Output** From cd145bc852887eebbacaaf98d917f0326fa2abb1 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:51:02 +0530 Subject: [PATCH 14/24] Delete infra/scripts/checkquota.sh --- infra/scripts/checkquota.sh | 95 ------------------------------------- 1 file changed, 95 deletions(-) delete mode 100644 infra/scripts/checkquota.sh diff --git a/infra/scripts/checkquota.sh b/infra/scripts/checkquota.sh deleted file mode 100644 index afc340378..000000000 --- a/infra/scripts/checkquota.sh +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/bash - -# List of Azure regions to check for quota (update as needed) -IFS=', ' read -ra REGIONS <<< "$AZURE_REGIONS" - -SUBSCRIPTION_ID="${AZURE_SUBSCRIPTION_ID}" -GPT_MIN_CAPACITY="${GPT_MIN_CAPACITY}" -AZURE_CLIENT_ID="${AZURE_CLIENT_ID}" -AZURE_TENANT_ID="${AZURE_TENANT_ID}" -AZURE_CLIENT_SECRET="${AZURE_CLIENT_SECRET}" - -# Authenticate using Managed Identity -echo "Authentication using Managed Identity..." -if ! az login --service-principal -u "$AZURE_CLIENT_ID" -p "$AZURE_CLIENT_SECRET" --tenant "$AZURE_TENANT_ID"; then - echo "❌ Error: Failed to login using Managed Identity." - exit 1 -fi - -echo "🔄 Validating required environment variables..." -if [[ -z "$SUBSCRIPTION_ID" || -z "$GPT_MIN_CAPACITY" || -z "$REGIONS" ]]; then - echo "❌ ERROR: Missing required environment variables." - exit 1 -fi - -echo "🔄 Setting Azure subscription..." -if ! az account set --subscription "$SUBSCRIPTION_ID"; then - echo "❌ ERROR: Invalid subscription ID or insufficient permissions." - exit 1 -fi -echo "✅ Azure subscription set successfully." - -# Define models and their minimum required capacities -declare -A MIN_CAPACITY=( - ["OpenAI.Standard.gpt-4o"]=$GPT_MIN_CAPACITY -) - -VALID_REGION="" -for REGION in "${REGIONS[@]}"; do - echo "----------------------------------------" - echo "🔍 Checking region: $REGION" - - QUOTA_INFO=$(az cognitiveservices usage list --location "$REGION" --output json) - if [ -z "$QUOTA_INFO" ]; then - echo "⚠️ WARNING: Failed to retrieve quota for region $REGION. Skipping." - continue - fi - - INSUFFICIENT_QUOTA=false - for MODEL in "${!MIN_CAPACITY[@]}"; do - MODEL_INFO=$(echo "$QUOTA_INFO" | awk -v model="\"value\": \"$MODEL\"" ' - BEGIN { RS="},"; FS="," } - $0 ~ model { print $0 } - ') - - if [ -z "$MODEL_INFO" ]; then - echo "⚠️ WARNING: No quota information found for model: $MODEL in $REGION. Skipping." - continue - fi - - CURRENT_VALUE=$(echo "$MODEL_INFO" | awk -F': ' '/"currentValue"/ {print $2}' | tr -d ',' | tr -d ' ') - LIMIT=$(echo "$MODEL_INFO" | awk -F': ' '/"limit"/ {print $2}' | tr -d ',' | tr -d ' ') - - CURRENT_VALUE=${CURRENT_VALUE:-0} - LIMIT=${LIMIT:-0} - - CURRENT_VALUE=$(echo "$CURRENT_VALUE" | cut -d'.' -f1) - LIMIT=$(echo "$LIMIT" | cut -d'.' -f1) - - AVAILABLE=$((LIMIT - CURRENT_VALUE)) - - echo "✅ Model: $MODEL | Used: $CURRENT_VALUE | Limit: $LIMIT | Available: $AVAILABLE" - - if [ "$AVAILABLE" -lt "${MIN_CAPACITY[$MODEL]}" ]; then - echo "❌ ERROR: $MODEL in $REGION has insufficient quota." - INSUFFICIENT_QUOTA=true - break - fi - done - - if [ "$INSUFFICIENT_QUOTA" = false ]; then - VALID_REGION="$REGION" - break - fi - -done - -if [ -z "$VALID_REGION" ]; then - echo "❌ No region with sufficient quota found. Blocking deployment." - echo "QUOTA_FAILED=true" >> "$GITHUB_ENV" - exit 0 -else - echo "✅ Final Region: $VALID_REGION" - echo "VALID_REGION=$VALID_REGION" >> "$GITHUB_ENV" - exit 0 -fi From cbbefbceebb9dee5506030d946e0bc9a6c0226a6 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:51:32 +0530 Subject: [PATCH 15/24] Create quota_check_params.sh --- infra/scripts/quota_check_params.sh | 1 + 1 file changed, 1 insertion(+) create mode 100644 infra/scripts/quota_check_params.sh diff --git a/infra/scripts/quota_check_params.sh b/infra/scripts/quota_check_params.sh new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/infra/scripts/quota_check_params.sh @@ -0,0 +1 @@ + From 206de3a46c444b1954e8dc46d47d99e3f91e35b2 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:53:42 +0530 Subject: [PATCH 16/24] Update quota_check_params.sh --- infra/scripts/quota_check_params.sh | 248 ++++++++++++++++++++++++++++ 1 file changed, 248 insertions(+) diff --git a/infra/scripts/quota_check_params.sh b/infra/scripts/quota_check_params.sh index 8b1378917..add6ac475 100644 --- a/infra/scripts/quota_check_params.sh +++ b/infra/scripts/quota_check_params.sh @@ -1 +1,249 @@ +#!/bin/bash +# VERBOSE=false +MODELS="" +REGIONS="" +VERBOSE=false + +while [[ $# -gt 0 ]]; do + case "$1" in + --models) + MODELS="$2" + shift 2 + ;; + --regions) + REGIONS="$2" + shift 2 + ;; + --verbose) + VERBOSE=true + shift + ;; + *) + echo "Unknown option: $1" + exit 1 + ;; + esac +done + +# Fallback to defaults if not provided +[[ -z "$MODELS" ]] +[[ -z "$REGIONS" ]] + +echo "Models: $MODELS" +echo "Regions: $REGIONS" +echo "Verbose: $VERBOSE" + +for arg in "$@"; do + if [ "$arg" = "--verbose" ]; then + VERBOSE=true + fi +done + +log_verbose() { + if [ "$VERBOSE" = true ]; then + echo "$1" + fi +} + +# Default Models and Capacities (Comma-separated in "model:capacity" format) +DEFAULT_MODEL_CAPACITY="gpt-4o:50" +# Convert the comma-separated string into an array +IFS=',' read -r -a MODEL_CAPACITY_PAIRS <<< "$DEFAULT_MODEL_CAPACITY" + +echo "🔄 Fetching available Azure subscriptions..." +SUBSCRIPTIONS=$(az account list --query "[?state=='Enabled'].{Name:name, ID:id}" --output tsv) +SUB_COUNT=$(echo "$SUBSCRIPTIONS" | wc -l) + +if [ "$SUB_COUNT" -eq 0 ]; then + echo "❌ ERROR: No active Azure subscriptions found. Please log in using 'az login' and ensure you have an active subscription." + exit 1 +elif [ "$SUB_COUNT" -eq 1 ]; then + # If only one subscription, automatically select it + AZURE_SUBSCRIPTION_ID=$(echo "$SUBSCRIPTIONS" | awk '{print $2}') + if [ -z "$AZURE_SUBSCRIPTION_ID" ]; then + echo "❌ ERROR: No active Azure subscriptions found. Please log in using 'az login' and ensure you have an active subscription." + exit 1 + fi + echo "✅ Using the only available subscription: $AZURE_SUBSCRIPTION_ID" +else + # If multiple subscriptions exist, prompt the user to choose one + echo "Multiple subscriptions found:" + echo "$SUBSCRIPTIONS" | awk '{print NR")", $1, "-", $2}' + + while true; do + echo "Enter the number of the subscription to use:" + read SUB_INDEX + + # Validate user input + if [[ "$SUB_INDEX" =~ ^[0-9]+$ ]] && [ "$SUB_INDEX" -ge 1 ] && [ "$SUB_INDEX" -le "$SUB_COUNT" ]; then + AZURE_SUBSCRIPTION_ID=$(echo "$SUBSCRIPTIONS" | awk -v idx="$SUB_INDEX" 'NR==idx {print $2}') + echo "✅ Selected Subscription: $AZURE_SUBSCRIPTION_ID" + break + else + echo "❌ Invalid selection. Please enter a valid number from the list." + fi + done +fi + + +# Set the selected subscription +az account set --subscription "$AZURE_SUBSCRIPTION_ID" +echo "🎯 Active Subscription: $(az account show --query '[name, id]' --output tsv)" + +# Default Regions to check (Comma-separated, now configurable) +DEFAULT_REGIONS="eastus,uksouth,eastus2,northcentralus,swedencentral,westus,westus2,southcentralus,canadacentral" +IFS=',' read -r -a DEFAULT_REGION_ARRAY <<< "$DEFAULT_REGIONS" + +# Read parameters (if any) +IFS=',' read -r -a USER_PROVIDED_PAIRS <<< "$MODELS" +USER_REGION="$REGIONS" + +IS_USER_PROVIDED_PAIRS=false + +if [ ${#USER_PROVIDED_PAIRS[@]} -lt 1 ]; then + echo "No parameters provided, using default model-capacity pairs: ${MODEL_CAPACITY_PAIRS[*]}" +else + echo "Using provided model and capacity pairs: ${USER_PROVIDED_PAIRS[*]}" + IS_USER_PROVIDED_PAIRS=true + MODEL_CAPACITY_PAIRS=("${USER_PROVIDED_PAIRS[@]}") +fi + +declare -a FINAL_MODEL_NAMES +declare -a FINAL_CAPACITIES +declare -a TABLE_ROWS + +for PAIR in "${MODEL_CAPACITY_PAIRS[@]}"; do + MODEL_NAME=$(echo "$PAIR" | cut -d':' -f1 | tr '[:upper:]' '[:lower:]') + CAPACITY=$(echo "$PAIR" | cut -d':' -f2) + + if [ -z "$MODEL_NAME" ] || [ -z "$CAPACITY" ]; then + echo "❌ ERROR: Invalid model and capacity pair '$PAIR'. Both model and capacity must be specified." + exit 1 + fi + + FINAL_MODEL_NAMES+=("$MODEL_NAME") + FINAL_CAPACITIES+=("$CAPACITY") + +done + +echo "🔄 Using Models: ${FINAL_MODEL_NAMES[*]} with respective Capacities: ${FINAL_CAPACITIES[*]}" +echo "----------------------------------------" + +# Check if the user provided a region, if not, use the default regions +if [ -n "$USER_REGION" ]; then + echo "🔍 User provided region: $USER_REGION" + IFS=',' read -r -a REGIONS <<< "$USER_REGION" +else + echo "No region specified, using default regions: ${DEFAULT_REGION_ARRAY[*]}" + REGIONS=("${DEFAULT_REGION_ARRAY[@]}") + APPLY_OR_CONDITION=true +fi + +echo "✅ Retrieved Azure regions. Checking availability..." +INDEX=1 + +VALID_REGIONS=() +for REGION in "${REGIONS[@]}"; do + log_verbose "----------------------------------------" + log_verbose "🔍 Checking region: $REGION" + + QUOTA_INFO=$(az cognitiveservices usage list --location "$REGION" --output json | tr '[:upper:]' '[:lower:]') + if [ -z "$QUOTA_INFO" ]; then + log_verbose "⚠️ WARNING: Failed to retrieve quota for region $REGION. Skipping." + continue + fi + + TEXT_EMBEDDING_AVAILABLE=false + AT_LEAST_ONE_MODEL_AVAILABLE=false + TEMP_TABLE_ROWS=() + + for index in "${!FINAL_MODEL_NAMES[@]}"; do + MODEL_NAME="${FINAL_MODEL_NAMES[$index]}" + REQUIRED_CAPACITY="${FINAL_CAPACITIES[$index]}" + FOUND=false + INSUFFICIENT_QUOTA=false + + if [ "$MODEL_NAME" = "text-embedding-ada-002" ]; then + MODEL_TYPES=("openai.standard.$MODEL_NAME") + else + MODEL_TYPES=("openai.standard.$MODEL_NAME" "openai.globalstandard.$MODEL_NAME") + fi + + for MODEL_TYPE in "${MODEL_TYPES[@]}"; do + FOUND=false + INSUFFICIENT_QUOTA=false + log_verbose "🔍 Checking model: $MODEL_NAME with required capacity: $REQUIRED_CAPACITY ($MODEL_TYPE)" + + MODEL_INFO=$(echo "$QUOTA_INFO" | awk -v model="\"value\": \"$MODEL_TYPE\"" ' + BEGIN { RS="},"; FS="," } + $0 ~ model { print $0 } + ') + + if [ -z "$MODEL_INFO" ]; then + FOUND=false + log_verbose "⚠️ WARNING: No quota information found for model: $MODEL_NAME in region: $REGION for model type: $MODEL_TYPE." + continue + fi + + if [ -n "$MODEL_INFO" ]; then + FOUND=true + CURRENT_VALUE=$(echo "$MODEL_INFO" | awk -F': ' '/"currentvalue"/ {print $2}' | tr -d ',' | tr -d ' ') + LIMIT=$(echo "$MODEL_INFO" | awk -F': ' '/"limit"/ {print $2}' | tr -d ',' | tr -d ' ') + + CURRENT_VALUE=${CURRENT_VALUE:-0} + LIMIT=${LIMIT:-0} + + CURRENT_VALUE=$(echo "$CURRENT_VALUE" | cut -d'.' -f1) + LIMIT=$(echo "$LIMIT" | cut -d'.' -f1) + + AVAILABLE=$((LIMIT - CURRENT_VALUE)) + log_verbose "✅ Model: $MODEL_TYPE | Used: $CURRENT_VALUE | Limit: $LIMIT | Available: $AVAILABLE" + + if [ "$AVAILABLE" -ge "$REQUIRED_CAPACITY" ]; then + FOUND=true + if [ "$MODEL_NAME" = "text-embedding-ada-002" ]; then + TEXT_EMBEDDING_AVAILABLE=true + fi + AT_LEAST_ONE_MODEL_AVAILABLE=true + TEMP_TABLE_ROWS+=("$(printf "| %-4s | %-20s | %-43s | %-10s | %-10s | %-10s |" "$INDEX" "$REGION" "$MODEL_TYPE" "$LIMIT" "$CURRENT_VALUE" "$AVAILABLE")") + else + INSUFFICIENT_QUOTA=true + fi + fi + + if [ "$FOUND" = false ]; then + log_verbose "❌ No models found for model: $MODEL_NAME in region: $REGION (${MODEL_TYPES[*]})" + + elif [ "$INSUFFICIENT_QUOTA" = true ]; then + log_verbose "⚠️ Model $MODEL_NAME in region: $REGION has insufficient quota (${MODEL_TYPES[*]})." + fi + done + done + +if { [ "$IS_USER_PROVIDED_PAIRS" = true ] && [ "$INSUFFICIENT_QUOTA" = false ] && [ "$FOUND" = true ]; } || { [ "$APPLY_OR_CONDITION" != true ] || [ "$AT_LEAST_ONE_MODEL_AVAILABLE" = true ]; }; then + VALID_REGIONS+=("$REGION") + TABLE_ROWS+=("${TEMP_TABLE_ROWS[@]}") + INDEX=$((INDEX + 1)) + elif [ ${#USER_PROVIDED_PAIRS[@]} -eq 0 ]; then + echo "🚫 Skipping $REGION as it does not meet quota requirements." + fi + +done + +if [ ${#TABLE_ROWS[@]} -eq 0 ]; then + echo "--------------------------------------------------------------------------------------------------------------------" + + echo "❌ No regions have sufficient quota for all required models. Please request a quota increase: https://aka.ms/oai/stuquotarequest" +else + echo "---------------------------------------------------------------------------------------------------------------------" + printf "| %-4s | %-20s | %-43s | %-10s | %-10s | %-10s |\n" "No." "Region" "Model Name" "Limit" "Used" "Available" + echo "---------------------------------------------------------------------------------------------------------------------" + for ROW in "${TABLE_ROWS[@]}"; do + echo "$ROW" + done + echo "---------------------------------------------------------------------------------------------------------------------" + echo "➡️ To request a quota increase, visit: https://aka.ms/oai/stuquotarequest" +fi + +echo "✅ Script completed." From 38b5dcdafa88a8ce12d08f8a597d2c1a3c011af2 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:54:38 +0530 Subject: [PATCH 17/24] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c945be610..5ce695128 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ Check the [Azure Products by Region](https://azure.microsoft.com/en-us/explore/g ### Configurable Deployment Settings -When you start the deployment, most parameters will have **default values**, but you can update the below settings by following the steps [here](./docs/CustomizingAzdParameters.md): +When you start the deployment, most parameters will have **default values**, but you can update the below settings by following the steps [here](./documentation/CustomizingAzdParameters.md): | **Setting** | **Description** | **Default value** | |------------|----------------| ------------| From 7bd436b9df39b3986e3c1c71caddd5bc08486acb Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:55:25 +0530 Subject: [PATCH 18/24] Update CustomizingAzdParameters.md --- documentation/CustomizingAzdParameters.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/documentation/CustomizingAzdParameters.md b/documentation/CustomizingAzdParameters.md index fbc1f73d3..0a842ab50 100644 --- a/documentation/CustomizingAzdParameters.md +++ b/documentation/CustomizingAzdParameters.md @@ -9,7 +9,7 @@ By default this template will use the environment name as the prefix to prevent Change the Secondary Location (example: eastus2, westus2, etc.) ```shell -azd env set AZURE_ENV_SECONDARY_LOCATION eastus2 +azd env set AZURE_ENV_COSMOS_LOCATION eastus2 ``` Change the Model Deployment Type (allowed values: Standard, GlobalStandard) @@ -40,4 +40,4 @@ Change the Embedding Deployment Capacity (choose a number based on available emb ```shell azd env set AZURE_ENV_EMBEDDING_MODEL_CAPACITY 80 -``` \ No newline at end of file +``` From b0232a495e9e89d211f6d8e1c6298393d2da03c0 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:56:02 +0530 Subject: [PATCH 19/24] Update AzureGPTQuotaSettings.md --- documentation/AzureGPTQuotaSettings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/AzureGPTQuotaSettings.md b/documentation/AzureGPTQuotaSettings.md index a47a32ef8..a8f7d6c5b 100644 --- a/documentation/AzureGPTQuotaSettings.md +++ b/documentation/AzureGPTQuotaSettings.md @@ -5,6 +5,6 @@ 3. **Go to** the `Management Center` from the bottom-left navigation menu. 4. Select `Quota` - Click on the `GlobalStandard` dropdown. - - Select the required **GPT model** (`GPT-4, GPT-4o`) or **Embeddings model** (`text-embedding-ada-002`). + - Select the required **GPT model** (`GPT-4o`) - Choose the **region** where the deployment is hosted. 5. Request More Quota or delete any unused model deployments as needed. From d77a4710c09ef339a0d51d5a86d9b94bfbde8ed2 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 18:57:04 +0530 Subject: [PATCH 20/24] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5ce695128..425ad4fce 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,9 @@ To run the solution site and API backend only locally for development and debugg ### Manual Azure Deployment -Manual Deployment differs from the ‘Quick Deploy’ option in that it will install an Azure Container Registry (ACR) service, and relies on the installer to build and push the necessary containers to this ACR. This allows you to build and push your own code changes and provides a sample solution you can customize based on your requirements. See the [local deployment guide](./documentation/ManualAzureDeployment.md). +Manual Deployment differs from the ‘Quick Deploy’ option in that it will install an Azure Container Registry (ACR) service, and relies on the installer to build and push the necessary containers to this ACR. This allows you to build and push your own code changes and provides a sample solution you can customize based on your requirements. + +See the [local deployment guide](./documentation/ManualAzureDeployment.md). ### Deploying From 4e36cfa2009e4b106478add25f1eca7519add32b Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 19:21:11 +0530 Subject: [PATCH 21/24] Add files via upload --- documentation/TRANSPARENCY_FAQ.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 documentation/TRANSPARENCY_FAQ.md diff --git a/documentation/TRANSPARENCY_FAQ.md b/documentation/TRANSPARENCY_FAQ.md new file mode 100644 index 000000000..ace333547 --- /dev/null +++ b/documentation/TRANSPARENCY_FAQ.md @@ -0,0 +1,17 @@ +## Document Generation Solution Accelerator: Responsible AI FAQ +- ### What is Build your own copilot - Generic Solution Accelerator? + This solution accelerator is an open-source GitHub Repository to help create AI assistants using Azure OpenAI Service and Azure AI Search. This can be used by anyone looking for reusable architecture and code snippets to build AI assistants with their own enterprise data. The repository showcases a generic scenario of a user who wants to generate a document template based on a sample set of data. + +- ### What can Document Generation Solution Accelerator do? + The sample solution included focuses on a generic use case - chat with your own data, generate a document template using your own data, and exporting the document in a docx format. The sample data is sourced from generic AI-generated promissory notes. The documents are intended for use as sample data only. The sample solution takes user input in text format and returns LLM responses in text format up to 800 tokens. It uses prompt flow to search data from AI search vector store, summarize the retrieved documents with Azure OpenAI. + +- ### What is/are Document Generation Solution Accelerator’s intended use(s)? + This repository is to be used only as a solution accelerator following the open-source license terms listed in the GitHub repository. The example scenario’s intended purpose is to help users generate a document template to perform their work more efficiently. + +- ### How was Document Generation Solution Accelerator evaluated? What metrics are used to measure performance? + We have used AI Foundry Prompt flow evaluation SDK to test for harmful content, groundedness, and potential security risks. + +- ### What are the limitations of Document Generation Solution Accelerator? How can users minimize the impact of Document Generation Solution Accelerator’s limitations when using the system? + This solution accelerator can only be used as a sample to accelerate the creation of AI assistants. The repository showcases a sample scenario of a user generating a document template. Users should review the system prompts provided and update as per their organizational guidance. Users should run their own evaluation flow either using the guidance provided in the GitHub repository or their choice of evaluation methods. AI-generated content may be inaccurate and should be manually reviewed. Currently, the sample repo is available in English only. +- ### What operational factors and settings allow for effective and responsible use of Document Generation Solution Accelerator? + Users can try different values for some parameters like system prompt, temperature, max tokens etc. shared as configurable environment variables while running run evaluations for AI assistants. Please note that these parameters are only provided as guidance to start the configuration but not as a complete available list to adjust the system behavior. Please always refer to the latest product documentation for these details or reach out to your Microsoft account team if you need assistance. From 796cfcfbeb2398f26d9a38fcab96255c7e6d0159 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 19:22:37 +0530 Subject: [PATCH 22/24] Update README.md --- README.md | 68 +++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 56 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 425ad4fce..3d4fb6b2d 100644 --- a/README.md +++ b/README.md @@ -232,6 +232,58 @@ If you are using VSCode, you can use the debug configuration shown in the [local To help you get started, here are some [Sample Questions](./documentation/SampleQuestions.md) you can follow once your application is up and running. +

+
+Responsible AI Transparency FAQ +

+ +Please refer to [Transparency FAQ](./documentation/TRANSPARENCY_FAQ.md) for responsible AI transparency details of this solution accelerator. + +

+Supporting documentation +

+ +### Costs + +Pricing varies per region and usage, so it isn't possible to predict exact costs for your usage. +The majority of the Azure resources used in this infrastructure are on usage-based pricing tiers. +However, Azure Container Registry has a fixed cost per registry per day. + +You can try the [Azure pricing calculator](https://azure.microsoft.com/en-us/pricing/calculator) for the resources: + +* Azure AI Foundry: Free tier. [Pricing](https://azure.microsoft.com/pricing/details/ai-studio/) +* Azure AI Services: S0 tier, defaults to gpt-4o. Pricing is based on token count. [Pricing](https://azure.microsoft.com/pricing/details/cognitive-services/) +* Azure Container App: Consumption tier with 0.5 CPU, 1GiB memory/storage. Pricing is based on resource allocation, and each month allows for a certain amount of free usage. [Pricing](https://azure.microsoft.com/pricing/details/container-apps/) +* Azure Container Registry: Basic tier. [Pricing](https://azure.microsoft.com/pricing/details/container-registry/) +* Azure Cosmos DB: [Pricing](https://azure.microsoft.com/en-us/pricing/details/cosmos-db/autoscale-provisioned/) + + +⚠️ To avoid unnecessary costs, remember to take down your app if it's no longer in use, +either by deleting the resource group in the Portal or running `azd down`. + +### Security guidelines + +This template uses Azure Key Vault to store all connections to communicate between resources. + +This template also uses [Managed Identity](https://learn.microsoft.com/entra/identity/managed-identities-azure-resources/overview) for local development and deployment. + +To ensure continued best practices in your own repository, we recommend that anyone creating solutions based on our templates ensure that the [Github secret scanning](https://docs.github.com/code-security/secret-scanning/about-secret-scanning) setting is enabled. + +You may want to consider additional security measures, such as: + +* Enabling Microsoft Defender for Cloud to [secure your Azure resources](https://learn.microsoft.com/azure/security-center/defender-for-cloud). +* Protecting the Azure Container Apps instance with a [firewall](https://learn.microsoft.com/azure/container-apps/waf-app-gateway) and/or [Virtual Network](https://learn.microsoft.com/azure/container-apps/networking?tabs=workload-profiles-env%2Cazure-cli). + + + +### Additional Resources +- [Python FastAPI documentation](https://fastapi.tiangolo.com/learn/) +- [AutoGen Framework Documentation](https://microsoft.github.io/autogen/dev/user-guide/core-user-guide/index.html) +- [Azure Container App documentation](https://learn.microsoft.com/en-us/azure/azure-functions/functions-how-to-custom-container?tabs=core-tools%2Cacr%2Cazure-cli2%2Cazure-cli&pivots=container-apps) +- [Azure OpenAI Service - Documentation, quickstarts, API reference - Azure AI services | Microsoft Learn](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/use-your-data) +- [Azure Cosmos DB documentation](https://learn.microsoft.com/en-us/azure/cosmos-db/) + + ## Supporting documentation ### How to customize @@ -245,19 +297,7 @@ This solution is designed to be easily customizable. You can modify the front en - [Azure Container App documentation](https://learn.microsoft.com/en-us/azure/azure-functions/functions-how-to-custom-container?tabs=core-tools%2Cacr%2Cazure-cli2%2Cazure-cli&pivots=container-apps) - [Azure OpenAI Service - Documentation, quickstarts, API reference - Azure AI services | Microsoft Learn](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/use-your-data) - [Azure Cosmos DB documentation](https://learn.microsoft.com/en-us/azure/cosmos-db/) - - -

-
-Customer truth -

-Customer stories coming soon. - -
-
-
---- ## Disclaimers @@ -270,3 +310,7 @@ You acknowledge that the Software and Microsoft Products and Services (1) are no You acknowledge the Software is not subject to SOC 1 and SOC 2 compliance audits. No Microsoft technology, nor any of its component technologies, including the Software, is intended or made available as a substitute for the professional advice, opinion, or judgement of a certified financial services professional. Do not use the Software to replace, substitute, or provide professional financial advice or judgment. BY ACCESSING OR USING THE SOFTWARE, YOU ACKNOWLEDGE THAT THE SOFTWARE IS NOT DESIGNED OR INTENDED TO SUPPORT ANY USE IN WHICH A SERVICE INTERRUPTION, DEFECT, ERROR, OR OTHER FAILURE OF THE SOFTWARE COULD RESULT IN THE DEATH OR SERIOUS BODILY INJURY OF ANY PERSON OR IN PHYSICAL OR ENVIRONMENTAL DAMAGE (COLLECTIVELY, “HIGH-RISK USE”), AND THAT YOU WILL ENSURE THAT, IN THE EVENT OF ANY INTERRUPTION, DEFECT, ERROR, OR OTHER FAILURE OF THE SOFTWARE, THE SAFETY OF PEOPLE, PROPERTY, AND THE ENVIRONMENT ARE NOT REDUCED BELOW A LEVEL THAT IS REASONABLY, APPROPRIATE, AND LEGAL, WHETHER IN GENERAL OR IN A SPECIFIC INDUSTRY. BY ACCESSING THE SOFTWARE, YOU FURTHER ACKNOWLEDGE THAT YOUR HIGH-RISK USE OF THE SOFTWARE IS AT YOUR OWN RISK. + +--- + + From 4245452be442de2d9aa3ff4d5a316d2f1b03e424 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 19:23:14 +0530 Subject: [PATCH 23/24] Update README.md --- README.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/README.md b/README.md index 3d4fb6b2d..dc87849bf 100644 --- a/README.md +++ b/README.md @@ -63,14 +63,6 @@ This system is intended for developing and deploying custom AI solutions for spe ![image](./documentation/images/readme/macae-architecture.png) - - -### **How to install/deploy** - -This guide provides step-by-step instructions for deploying your application using Azure Container Registry (ACR) and Azure Container Apps. - -There are several ways to deploy the solution. You can deploy to run in Azure in one click, or manually, or you can deploy locally. -


QUICK DEPLOY From 60466ea93c8b9ad106c3ee139ca17d74144366e6 Mon Sep 17 00:00:00 2001 From: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com> Date: Tue, 22 Apr 2025 19:30:46 +0530 Subject: [PATCH 24/24] Update README.md --- README.md | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index dc87849bf..435356ecc 100644 --- a/README.md +++ b/README.md @@ -235,6 +235,10 @@ Please refer to [Transparency FAQ](./documentation/TRANSPARENCY_FAQ.md) for resp Supporting documentation

+### How to customize + +This solution is designed to be easily customizable. You can modify the front end site, or even build your own front end and attach to the backend API. You can further customize the backend by adding your own agents with their own specific capabilities. Deeper technical information to aid in this customization can be found in this [document](./documentation/CustomizeSolution.md). + ### Costs Pricing varies per region and usage, so it isn't possible to predict exact costs for your usage. @@ -267,7 +271,6 @@ You may want to consider additional security measures, such as: * Protecting the Azure Container Apps instance with a [firewall](https://learn.microsoft.com/azure/container-apps/waf-app-gateway) and/or [Virtual Network](https://learn.microsoft.com/azure/container-apps/networking?tabs=workload-profiles-env%2Cazure-cli). - ### Additional Resources - [Python FastAPI documentation](https://fastapi.tiangolo.com/learn/) - [AutoGen Framework Documentation](https://microsoft.github.io/autogen/dev/user-guide/core-user-guide/index.html) @@ -276,21 +279,6 @@ You may want to consider additional security measures, such as: - [Azure Cosmos DB documentation](https://learn.microsoft.com/en-us/azure/cosmos-db/) -## Supporting documentation - -### How to customize - -This solution is designed to be easily customizable. You can modify the front end site, or even build your own front end and attach to the backend API. You can further customize the backend by adding your own agents with their own specific capabilities. Deeper technical information to aid in this customization can be found in this [document](./documentation/CustomizeSolution.md). - -### Additional resources - -- [Python FastAPI documentation](https://fastapi.tiangolo.com/learn/) -- [AutoGen Framework Documentation](https://microsoft.github.io/autogen/dev/user-guide/core-user-guide/index.html) -- [Azure Container App documentation](https://learn.microsoft.com/en-us/azure/azure-functions/functions-how-to-custom-container?tabs=core-tools%2Cacr%2Cazure-cli2%2Cazure-cli&pivots=container-apps) -- [Azure OpenAI Service - Documentation, quickstarts, API reference - Azure AI services | Microsoft Learn](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/use-your-data) -- [Azure Cosmos DB documentation](https://learn.microsoft.com/en-us/azure/cosmos-db/) - - ## Disclaimers To the extent that the Software includes components or code used in or derived from Microsoft products or services, including without limitation Microsoft Azure Services (collectively, “Microsoft Products and Services”), you must also comply with the Product Terms applicable to such Microsoft Products and Services. You acknowledge and agree that the license governing the Software does not grant you a license or other right to use Microsoft Products and Services. Nothing in the license or this ReadMe file will serve to supersede, amend, terminate or modify any terms in the Product Terms for any Microsoft Products and Services.