From 20aecd7f30dc47d403262609bd2c41c67a0702d0 Mon Sep 17 00:00:00 2001 From: Bavneet Singh Date: Tue, 18 Mar 2025 15:11:00 -0700 Subject: [PATCH 01/22] add pester tests for connectedk8s cli extension --- testing/.gitignore | 9 + testing/Bootstrap.ps1 | 30 ++ testing/README.md | 116 ++++++ testing/Test.ps1 | 99 +++++ .../bin/connectedk8s-1.0.0-py3-none-any.whl | Bin 0 -> 62802 bytes testing/bin/connectedk8s-values.yaml | 3 + .../k8s_configuration-1.0.0-py3-none-any.whl | Bin 0 -> 42351 bytes .../bin/k8s_extension-0.3.0-py3-none-any.whl | Bin 0 -> 52893 bytes testing/owners.txt | 2 + testing/pipeline/k8s-custom-pipelines.yml | 374 ++++++++++++++++++ testing/pipeline/templates/run-test.yml | 112 ++++++ testing/settings.template.json | 12 + .../test/configurations/AutoUpdate.Tests.ps1 | 62 +++ .../configurations/BasicOnboarding.Tests.ps1 | 62 +++ .../configurations/ConnectProxy.Tests.ps1 | 98 +++++ testing/test/configurations/Gateway.Tests.ps1 | 116 ++++++ testing/test/configurations/Proxy.Tests.ps1 | 65 +++ .../configurations/Troubleshoot.Tests.ps1 | 40 ++ .../configurations/WorkloadIdentity.Tests.ps1 | 239 +++++++++++ testing/test/helper/Constants.ps1 | 5 + 20 files changed, 1444 insertions(+) create mode 100644 testing/.gitignore create mode 100644 testing/Bootstrap.ps1 create mode 100644 testing/README.md create mode 100644 testing/Test.ps1 create mode 100644 testing/bin/connectedk8s-1.0.0-py3-none-any.whl create mode 100644 testing/bin/connectedk8s-values.yaml create mode 100644 testing/bin/k8s_configuration-1.0.0-py3-none-any.whl create mode 100644 testing/bin/k8s_extension-0.3.0-py3-none-any.whl create mode 100644 testing/owners.txt create mode 100644 testing/pipeline/k8s-custom-pipelines.yml create mode 100644 testing/pipeline/templates/run-test.yml create mode 100644 testing/settings.template.json create mode 100644 testing/test/configurations/AutoUpdate.Tests.ps1 create mode 100644 testing/test/configurations/BasicOnboarding.Tests.ps1 create mode 100644 testing/test/configurations/ConnectProxy.Tests.ps1 create mode 100644 testing/test/configurations/Gateway.Tests.ps1 create mode 100644 testing/test/configurations/Proxy.Tests.ps1 create mode 100644 testing/test/configurations/Troubleshoot.Tests.ps1 create mode 100644 testing/test/configurations/WorkloadIdentity.Tests.ps1 create mode 100644 testing/test/helper/Constants.ps1 diff --git a/testing/.gitignore b/testing/.gitignore new file mode 100644 index 00000000000..29f33294b8b --- /dev/null +++ b/testing/.gitignore @@ -0,0 +1,9 @@ +settings.json +tmp/ +bin/* +!bin/connectedk8s-1.0.0-py3-none-any.whl +!bin/k8s_extension-0.3.0-py3-none-any.whl +!bin/k8s_extension_private-0.1.0-py3-none-any.whl +!bin/k8s_configuration-1.0.0-py3-none-any.whl +!bin/connectedk8s-values.yaml +*.xml \ No newline at end of file diff --git a/testing/Bootstrap.ps1 b/testing/Bootstrap.ps1 new file mode 100644 index 00000000000..ad21cfddad2 --- /dev/null +++ b/testing/Bootstrap.ps1 @@ -0,0 +1,30 @@ +param ( + [switch] $SkipInstall, + [switch] $CI +) + +# Disable confirm prompt for script +az config set core.disable_confirm_prompt=true + +# Configuring the environment +$ENVCONFIG = Get-Content -Path $PSScriptRoot/settings.json | ConvertFrom-Json + +az account set --subscription $ENVCONFIG.subscriptionId + +if (-not (Test-Path -Path $PSScriptRoot/tmp)) { + New-Item -ItemType Directory -Path $PSScriptRoot/tmp +} + +az group show --name $envConfig.resourceGroup +if (!$?) { + Write-Host "Resource group does not exist, creating it now in region 'eastus2euap'" + az group create --name $envConfig.resourceGroup --location eastus2euap + + if (!$?) { + Write-Host "Failed to create Resource Group - exiting!" + Exit 1 + } +} + + +Copy-Item $HOME/.kube/config -Destination $PSScriptRoot/tmp/KUBECONFIG \ No newline at end of file diff --git a/testing/README.md b/testing/README.md new file mode 100644 index 00000000000..33f12b5b1a3 --- /dev/null +++ b/testing/README.md @@ -0,0 +1,116 @@ +# K8s Partner Extension Test Suite + +This repository serves as the integration testing suite for the `k8s-extension` Azure CLI module. + +## Testing Requirements + +All partners who wish to merge their __Custom Private Preview Release__ (owner: _Partner_) into the __Official Private Preview Release__ are required to author additional integration tests for their extension to ensure that their extension will continue to function correctly as more extensions are added into the __Official Private Preview Release__. + +For more information on creating these tests, see [Authoring Tests](docs/test_authoring.md) + +## Pre-Requisites + +In order to properly test all regression tests within the test suite, you must onboard an AKS cluster which you will use to generate your Azure Arc resource to test the extensions. Ensure that you have a resource group where you can onboard this cluster. + +### Required Installations + +The following installations are required in your environment for the integration tests to run correctly: + +1. [Helm 3](https://helm.sh/docs/intro/install/) +2. [Kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +3. [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) + +## Setup + +### Step 1: Install Pester + +This project contains [Pester](https://pester.dev/) test framework commands that are required for the integration tests to run. In an admin powershell terminal, run + +```powershell +Install-Module Pester -Force -SkipPublisherCheck +Import-Module Pester -PassThru +``` + +If you run into issues installing the framework, refer to the [Installation Guide](https://pester.dev/docs/introduction/installation) provided by the Pester docs. + +### Step 2: Get Test suite files + +You can either clone this repo (preferred option, since you will be adding your tests to this suite) or copy the files in this repo locally. Rest of the instructions here assume your working directory is k8spartner-extension-testing. + +### Step 3: Update the `k8s-extension`/`k8s-extension-private` .whl package + +This integration test suite references the .whl packages found in the `\bin` directory. After generating your `k8s-extension`/`k8s-extension-private` .whl package, copy your updated package into the `\bin` directory. + +### Step 4: Create a `settings.json` + +To onboard the AKS and Arc clusters correctly, you will need to create a `settings.json` configuration. Create a new `settings.json` file by copying the contents of the `settings.template.json` into this file. Update the subscription id, resource group, and AKS and Arc cluster name fields with your specific values. + +### Step 5: Update the extension version value in `settings.json` + +To ensure that the tests point to your `k8s-extension-private` `.whl` package, change the value of the `k8s-extension-private` to match your package versioning in the format (Major.Minor.Patch.Extension). For example, the `k8s_extension_private-0.1.0.openservicemesh_5-py3-none-any.whl` whl package would have extension versions set to +```json +{ + "k8s-extension": "0.1.0", + "k8s-extension-private": "0.1.0.openservicemesh_5", + "connectedk8s": "0.3.5" +} + +``` + +_Note: Updates to the `connectedk8s` version and `k8s-extension` version can also be made by adding a different version of the `connectedk8s` and `k8s-extension` whl packages and changing the `connectedk8s` and `k8s-extension` values to match the (Major.Minor.Patch) version format shown above_ + +### Step 6: Run the Bootstrap Command +To bootstrap the environment with AKS and Arc clusters, run +```powershell +.\Bootstrap.ps1 +``` +This script will provision the AKS and Arc clusters needed to run the integration test suite + +## Testing + +### Testing All Extension Suites +To test all extension test suites, you must call `.\Test.ps1` with the `-ExtensionType` parameter set to either `Public` or `Private`. Based on this flag, the test suite will install the extension type specified below + +| `-ExtensionType` | Installs `az extension` | +| ---------------- | --------------------- | +| `Public` | `k8s-extension` | +| `Private` | `k8s-extension-private` | + +For example, when calling +```bash +.\Test.ps1 -ExtensionType Public +``` +the script will install your `k8s-extension` whl package and run the full test suite of `*.Tests.ps1` files included in the `\test\extensions` directory + +### Testing Public Extensions Only +If you only want to run the test cases against public-preview or GA extension test cases, you can use the `-OnlyPublicTests` flag to specify this +```bash +.\Test.ps1 -ExtensionType Public -OnlyPublicTests +``` + +### Testing Specific Extension Suite + +If you only want to run the test script on your specific test file, you can do so by specifying path to your extension test suite in the execution call + +```powershell +.\Test.ps1 -Path +``` +For example to call the `AzureMonitor.Tests.ps1` test suite, we run +```powershell +.\Test.ps1 -ExtensionType Public -Path .\test\extensions\public\AzureMonitor.Tests.ps1 +``` + +### Skipping Extension Re-Install + +By default the `Test.ps1` script will uninstall any old versions of `k8s-extension`/'`k8s-extension-private` and re-install the version specified in `settings.json`. If you do not want this re-installation to occur, you can specify the `-SkipInstall` flag to skip this process. + +```powershell +.\Test.ps1 -ExtensionType Public -SkipInstall +``` + +## Cleanup +To cleanup the AKS and Arc clusters you have provisioned in testing, run +```powershell +.\Cleanup.ps1 +``` +This will remove the AKS and Arc clusters as well as the `\tmp` directory that were created by the bootstrapping script. \ No newline at end of file diff --git a/testing/Test.ps1 b/testing/Test.ps1 new file mode 100644 index 00000000000..7c6f522d082 --- /dev/null +++ b/testing/Test.ps1 @@ -0,0 +1,99 @@ +param ( + [string] $Path, + [switch] $SkipInstall, + [switch] $CI, + [switch] $ParallelCI, + [switch] $OnlyPublicTests, + + [Parameter(Mandatory=$True)] + [ValidateSet('connectedk8s')] + [string]$Type +) + +# Disable confirm prompt for script +# Only show errors, don't show warnings +az config set core.disable_confirm_prompt=true +az config set core.only_show_errors=true + +$ENVCONFIG = Get-Content -Path $PSScriptRoot/settings.json | ConvertFrom-Json + +# Install the powershell-yaml module +# Needed to parse the kubeconfig file +Install-Module -Name powershell-yaml -Force -Scope CurrentUser + +az account set --subscription $ENVCONFIG.subscriptionId + +$Env:KUBECONFIG="$PSScriptRoot/tmp/KUBECONFIG" +$TestFileDirectory="$PSScriptRoot/results" + +if (-not (Test-Path -Path $TestFileDirectory)) { + New-Item -ItemType Directory -Path $TestFileDirectory +} + +if ($Type -eq 'connectedk8s') { + $connectedk8sVersion = $ENVCONFIG.extensionVersion.'connectedk8s' + if (!$SkipInstall) { + Write-Host "Removing the old connectedk8s extension..." + az extension remove -n connectedk8s + Write-Host "Installing connectedk8s version $connectedk8sVersion..." + az extension add --source ./bin/connectedk8s-$connectedk8sVersion-py2.py3-none-any.whl + } + $testFilePaths = "$PSScriptRoot/test/configurations" +} + +if ($ParallelCI) { + # This runs the tests in parallel during the CI pipline to speed up testing + + Write-Host "Invoking Pester to run tests from '$testFilePath'..." + $testFiles = @() + foreach ($paths in $testFilePaths) + { + $temp = Get-ChildItem $paths + $testFiles += $temp + } + $resultFileNumber = 0 + foreach ($testFile in $testFiles) + { + $resultFileNumber++ + $testName = Split-Path $testFile –leaf + Start-Job -ArgumentList $testName, $testFile, $resultFileNumber, $TestFileDirectory -Name $testName -ScriptBlock { + param($name, $testFile, $resultFileNumber, $testFileDirectory) + + Write-Host "$testFile to result file #$resultFileNumber" + $testResult = Invoke-Pester $testFile -Passthru -Output Detailed + $testResult | Export-JUnitReport -Path "$testFileDirectory/$name.xml" + } + } + + do { + Write-Host ">> Still running tests @ $(Get-Date –Format "HH:mm:ss")" –ForegroundColor Blue + Get-Job | Where-Object { $_.State -eq "Running" } | Format-Table –AutoSize + Start-Sleep –Seconds 30 + } while((Get-Job | Where-Object { $_.State -eq "Running" } | Measure-Object).Count -ge 1) + + Get-Job | Wait-Job + $failedJobs = Get-Job | Where-Object { -not ($_.State -eq "Completed")} + Get-Job | Receive-Job –AutoRemoveJob –Wait –ErrorAction 'Continue' + + if ($failedJobs.Count -gt 0) { + Write-Host "Failed Jobs" –ForegroundColor Red + $failedJobs + throw "One or more tests failed" + } +} elseif ($CI) { + if ($Path) { + $testFilePath = "$PSScriptRoot/$Path" + } + Write-Host "Invoking Pester to run tests from '$testFilePath'..." + $testResult = Invoke-Pester $testFilePath -Passthru -Output Detailed + $testName = Split-Path $testFilePath –leaf + $testResult | Export-JUnitReport -Path "$testFileDirectory/$testName.xml" +} else { + if ($Path) { + Write-Host "Invoking Pester to run tests from '$PSScriptRoot/$Path'" + Invoke-Pester -Output Detailed $PSScriptRoot/$Path + } else { + Write-Host "Invoking Pester to run tests from '$testFilePath'..." + Invoke-Pester -Output Detailed $testFilePath + } +} \ No newline at end of file diff --git a/testing/bin/connectedk8s-1.0.0-py3-none-any.whl b/testing/bin/connectedk8s-1.0.0-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..08f34250036f455aad7e3e820c65d08d790e1201 GIT binary patch literal 62802 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

YVX(toUj*0P8con1X*tXmm22nWyt~gf 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

4OLf9N*^x0^yG1@+&DtXglO();gI7nFsJg6 zsrU z8Ne;Lu5Duy%zeOQ)hmbboxwOqj&2qvhh3I)T_6`=Gi-&?UFLpQyNl0|1f}3G;}o+} zuHA#fUH>75s0wAS`>~9)WmdfLk%EQu8DR{0&4>b%0CJcI#;OoX!XWv%uuX!Sq}01W_AqxakG)`&S^V&CCdeJ>YqG5&jt(B>AZ)qAAZ_@7K}zuSVQb(Iv@cjX z|5b+gpjtVNUP6%OkQvN*b6s(Yin9lQy$M3YJ%qOd7%lgRnBH3-eU9>3q|`tvUmVd( zmD#zybtNmQxrjvSR@WwqoYIg%g2=F4OFSOA(f}*qgIIsmVIuw4jx_4qT_AXlcM4QS6Pm3k@(Bp@+B{QeDt)JB&wsd?X1d=)SdS77^YtsFgY`ib<=R?wj3K_#Vr!xy27 zngg1ipOje0L_ez1DrSYq=>*7S36lFlmtNx$Md0;Sew5?Qtbn zTGIc^M1*>Jg2BZ_+Ul99OEQj;$P|sK@|`PP7a9t#QAe%%D3zDp?{d!rpdwU?{I>eV zE^b(VVf~;^6>b=>h(e^`Fupr_%1?NQt-E<+))nq;Jf^oVFVWNQA+83wc>b5rVbzXG z9O3nq#N(ctVGcwnX+Sm{GCI+3LN_cEl6UQ*3Kt2?{$5H_pzmdGMHAair=--<(Tn&| z)LXko=c7r(8G+$ns&*PnGqQ6hg6v&z5W^;{vB0V9Tv9p+Je;}vo)_?RJq)jO;4E|d z)Z)x9_2ff;TU5#%mvW~$qz0e6xHJKH^2_-;(;pS@&m$f1xO-m0*!~tn{E;Ra7u)+i zyXW9wURqXni2fbyNo}`7LPsN#iQQgGs>goVmTWP!!xjVK)vv`8I2vV4>3GH#qflgVYNpF^4bi;Roo^aO7%DNqVkn7NX~N{M;1cA@Oo4vIihf#h zEnRLUO++ol4O+)|nCQ(Z8e!e0d3;d0x&*}E4dDVIG^#U~W~t1z#C65kgcM|FJIZ15uq7O~K#xefTlYjHvpO6?@Yx2nYfVWdag}A2O;&f*>ISimwM|I@tmx@!{1~ zu#g0Xk>^C!%A>uku0^0JmJm$E;zZJh&{gF|Ko+YQZZUB;J~UgoFeBq4$OE(NqPS-q zl2F7IT-SiJq(pqY$;il@nOK(xZ`L5(6vOy_?dQb~dJ@IOx(4|Y#`*26qT0oxsiIgT z!MY#VAqs}mw8lWVs>xY}%EpQ*D3Y8!0bdm;>coRPr|=yK#xVfO%8Cdkn)VCQA2JfGO4V<3|-2XphU|`kG+{CLJ@-?9UT!h&G2H z6EW@aG;_N;yOD&p-@p>m!GaEqKr<+^K#s=aSQ>^kRm_q?^e+XCt_=_k;pU$Yrj&SBJ>_m}V|W|Od3)Z^HkS#R#0_Ha zp{#3U^-0wV6XZ{wQRoibrLMw7<0ewcUAVQN)HSLGPKxA9fTfJrhDQ z*4{_v|Wc@Hvz2QjI&7-JW*aXQNEoQl<_+BNK=kE>h6;2|P2`p{%_W&D-fct+bI zH`w{B_Gf4Ab$;Ua0{uJwr^HZi^euD+4*4OvwV3uztQUU74JyP)+#id(xGR_AafzMe z(-liniKQA3c-sx^v9|TKJjYcujD6y$;h>4+OqNCkX?5(-_Vuw4sY?O+Yelw;lkZ@t z^LT9b@wOGIuCHDttUVS9qo>%kscFd}!^mrP8PbyCW?7v1w(JYG7?Mp4FmS(hEXuxG z`jT#Okf@5!DT~~E7)~XdAU3r!&VrR|Pky1j# zUK_=rW&pLUh;#?SM*2m!3FaClL-f>cLUQ-^)$j2d|J9OlvrX|!38%zxAY~ZXV9Pec)Wlw#nusT2)!L%0oImeDw2n*r7Y!f zH;6RJvu^X7esyqV?hd`j9n^L(yjJULj}rVwFh>#3MQ7KRQ>{!{G2BzA3meZDPl~%V zlP9o(n>2tMKC;xe+laXo$uXi*XCr-|WUUJP+OaR$r5(3#FInD))g1ma0+?wA1;CPCRadZ-WJ~vfd#ETtHmpbW1uZ3vQ?Y_S9c8@y$6vA91kD^az=kK z8*o)b(qV z0hOddjnH?UaAUJ7=mG{8VL0&hg7?J7bmVQI4+vu~hiO1kNsz&B+3`G01H=_k*B?_A zigm1=D0Kc6gIeAAa<&cP4beBKqb+h*BuUqS0DP0I*DybwuuL3sH9eU9q1n8QMGbu%tVC9~c zKP=O-(FmR}17TVcZr5D1di zylfvRNUSi@EJ!1e1xL#==c!S(`Y4UacYhW4qxi&0e9Fhd*n8pSN|n*^AAk!C?b~r3 zIf$D5{!H5Aq@n$lWBSf5^s5{oMO|Zghe~Q`HdZTG&4e{9QldIROe(i;-~FJ;So(yA zf?J+>3^w@d#}(+t6IqhbY*#=g&PYz9XFt-c++pl(*LP2dyrj;e*6si$D$hf(PEg&6 zo>?*7{cz;%h#_P%pLa{R-DWVpR687FrblkzGx zDngQ>NsCJ$@0WzN{oO4nMA-U1LlAb|6xuD;4+{46(}_&GKv~M)D;qJowTcRXgVo#h zl6Fal&#P5^<8E|Yf{sKdwcW5g9e}1OuqZrPTx#=BwGYA1U5>ASTfL)08Ga0Q+@}TD z7u+uGwxLdP)ZxyuvY&5@Tf1zN8}`rLiNCJ3yh!inc$D0n5xuEP7Z>Y`QR{a8RBL^3 zGpnUMvT=QBL2Iaef5psdPrCYbzhTb_uKivwYg#P+0W-6}x?<9N&^Ry@Z69En&q1gW?B>ZQq*9ee8{>oknx!)-e^~42s;GF>y z@O4CA(^=-NJr*pdaZSjWplPzkBUz1_XFe_*C#iXR27LCRMmVp}&Jf5W{A zE;TgYY@(SMW#@V%w{TR-S$^8Io-8cFZ8v|8TIC>K6G-sEJxc`fe$FxoOnaGP>UjjX zi~1*K9*Pk~S=FWm!}Bu4LN};-|FRViaOa9V$v9%Vz(&rzC2HIQsa2I=2P!#^gEdp1 zNmR&d02A+zw$`must|7f!9-1)X{k|MNPhY@i(D2*g~y+-Yc>C1ViSOga2)@^M2ok7 zFfp4vx(YNDs+FTUK*=RfpEW8d7l9CIAAzMo35k$hR4RtKeSA=4*L zC(K*q;O$VID!><+Rbb|sfy4&4LEuGP2!rVFx$W?8vs>aIgePX-yZ7I%5+nLpl< zY3@uG`U0%>W|qoOKE9m(g|BrpmFAsnkVwgYqXzrB8qH?gk~%!k6Ov;+o=?9$h%7IE zBKEfGA4JUjLqtO&&qKFPHUJS#6wqG?2bJ>~0-*w%awg?M>xNa?=#2AlL%J})>=tzC z#NkY;^=4zIwNE7(p92C-#L=jJ9r%q>m;q-t&MxoZs*lMrp{5JV{;uG_S zYk>FU$-M)0C}_p9I90Qj3{BD?Htmsa?J}M6v^6arykCN-cZJ9OKLL za|_4?rha>S&&5Ts1!VJ;Q-HNO4{v{o=ODlHxf^oa)0aRtK!s{@p`kP?-Ajcz&j#p`bGpI?ON-;bjys#f`eKBaMZ;|Kz+Q_;ZOD zc%R)d810jSR1sSM<|tu49XLbr(}Ck`F`13y#<{9|n_^h1Bo2BxU!)CqHDnZ7^K+k) z^*O%#IQBzPx@i(Hw)Z6*r+PQFbqT`7X;mM66i{Ks9Z?=`U#$Mt~#j2YA zG>VC}LFHxFE6wIDatp4ItieYvNa53-p6Ib*pO^ZuwQfpTqgAGLJby3Teq(_P&;WTZ z5pcc!zr~7!zR4e~$p8D%=~ajAucK27uX>J^KT~ra0=XSYeXOXj28ko=XQ#wmQ$o)0 zHNNlu#Q6m65q{-dQ7cwS*L%$5?&BtExTU4HP1`Ecz8xe7P3A)rDYtW{qhA9vsKpv8 z;fTLL^d*K;??$y+-c5-PJrvFiuI|&pjh#jh{J>ez2Z9L_LuY-r9O4giNV7AQQYmub z>n;hUde??x1WcxppDnVEDJm0qNi`TF+&RS{ZwWq2pw8=^^ssKn13(4nd2J0-fpaLA zgY`{t0dm)QY+8XcYD=?@_vHQ=kJNkDYF#edhsKTdI1X9r;-Jn-;XgkkSNWVbJp6Fl zP3o!RE3dPNF#8YXEZ2LH+T8imL20iMq88Qs2W{4M&u4@7O?F`a#|WED_`I1x#9~p$=t)54hQ@KRfru`w;pkp& z-2_+D1C*6jmR5lIn`@lzi|@njr*vlebcLZUO6!~m%h#}&!1mGd{ z)&%8I#2dW7L#>q5HVqK~wFCgvg#VXi2>`W!(}Lxt!T~4sKW2_m0=ysG$-GbmflV_F z<4)Fv=t7trr)zPsL+w%mAMPUZi0w0br#eI@lkV1ACQx&fmZwrOi>I0_fs5%hr0c7f z`wpJODdV8$jSfreVb2?mOOSI*$TgOjA^7lcTy1EIpvzvfh>;?oopQ%MQ4p`wGR=Fy zT|`@~_vyUpAtxE{fpI;m60(3~5h;EKzb8xi$)edT{*qaIb=};4Qv=(N79UHQ$8TID zJHsFiv@Pp6fu*woRMPlDc&mkuw4!*|x7&0rTu4( zb8%iSc5K&2M=cpgV*>@Ta(FWm#qiYWa~|*jIYkN^jBvn~cnVOlRE;d^SwKOb_UKA9B;x zOK>Z~nC-RAo|Le+wkB%F;RK>2kVFTM*ki)8jqZbE(i~YX_FU1OL1t zz^=S<@|d1^@x}w64jDxo)I5`BRAkJ77{eBSes^bh-Z`5s`2hYq>hx)vDM7%$e8~rh zs=WU@)ctk$pkiqaFb{oPYTJtP{Gh-#><`PMj{!=3^~;e!B{uDb@#mFjm=q#ainBWf zUA5khU4W(-tz&G!!;JN~Y(?A3l=cD*6~)lbLUXhIZFLVN?Y+W7oF3{ywQ5(m`-9Dw zDoHeVfPb%RB9J%@61P_<$rqF&Mp3Rc*EFE6yFS29NP*l%oa7iKuzdX0jKhyZ{4DUJ z%GWl0wD38d6te&U6P2G(;ZQcD=V8qhr?c*`5IHG9fe934vNg7sz1r44s4-a zzT*IWaImwt6}Gm1k5U$yDVK*qBtwg&zNCtcm|%oKjYS5TZi)%-7%59h4_Pr!j>p%t z7!4F0*$cCi2ndrb%cB(QMscAl1WxB|>4#w_i>sh88*b;Lf|1LIwHFjkm+Gra?MC}V zj!TkMXd*yVVGoQJ3UczI5*Z<#HtFA_!hW(|kW?BAGSE>G?u0s4#S9JqpNw^d) zuY}@4fRWD08^%;+)eWt2m{iLs6iv;Nry@$@YlkT$?z72%FwA+s{7MzIu%}0+O(#6t ziwm1SoiHFWs=cCpOomm;$_gqr#M2^Jmb6}nDto7l;YwVnSth3K`9w_bK08noDZkLD zyU$Hg7_9|SY#0)bFD=oWNhS%j#tKS1`$2cOLbC_n7Kud3e8}C#@9FMM6xQYWH6fk! zzf)Ifm;mZ3@88r_tN*FG>i93}Dx7=l2Q9~5TRzUV6xW(Dt9DPuc~ee@s_{?`Xjjk- zu(PV8O;->=FCu`RlCnnoBm$=S_&K}kWF{TM{d0|UB(fRY>8htZdPkUi@Y)g#D-MN) z<68>h(Q}n3qIfO&5E8mKF}1x6V;_=PHqPRTveg&uTjcdXcdzJ?Qw$Eg$=SHtP4u&G9f(Y#f0_S$t+d$$LWnxS&o3ehcn$2Vq zDtEao)yi~Ah1OG^E>lOsJtKYZ8BKMgfJACkXi7PgwFyyXLr2s@BcgBLDw(Sp#_EZ?}9^YlHeOAfi7uhtvGt+&Grf4`YWM`l#b-j%kI*}bVq+cDP|8d+| zTME|!S=LJ6Kjfm9qzA;LfL%ep=5LQNdo4OKkuB@tTciX2Q{8{db7|;mZd2dL=ev;n zN@)(RQYU*ex=jjx*{1R}??LjY?2=_BrsLpet%|{q(-Z;sctwBQj@_Tw3mi_*<`SN5#_J+Lo1#sW+7CzR&OW0 zN`npXtW34%@fT6(?pzkIpuxN8%Fo;$*JGRDRc<@n8xp_gx6aNi(OwJOPHnP7lJCCG z9DT12b+YEgtQOl!UrWJ!UIv8S5_g%v|bi)d6S2_HoDl&mfdmf zsMioLb+hJGkmYW?I>;hxK0`8k%fqBX*+DjB$Lkk15VEQmFmB6qeFn;RUeHhO1WFRP z(wTWRYZ^DzT@Fc8jS&e^aE8|{FL6egLTF5`QGeh7cJpc86mtUC-NIE4R(bzs53cyTg~w?z0a@w6U5>v_&KBc} zlX?8qVyNww&eVpMCgaj}J>WZnF59?zF{6+HD6lTXcBRrg_saC@^X!OaJzsE}vCcpu zSjprrG8)I)xLn>~X~IMvhDTg+0ubnt5s)$2;X>Ow(FY^*0V1phIImRyIVfNW zXtSN%0gkK!xjXB>Ia^MCn)FBix?4I3-YKiRUweu3nv264;fTHFY~E30S!{7>$e zq0LdIJwUs80yx)6{$K5||1Xm+z!T&6kGI7QDoXu%!6V>whcHS4w3HDH#ATq$ifrDL zdomSBI2*;H&P2{u{`qbq_wprd6KVo2-eWo%FOL&kVk-F1N%Udz)eMf+`Y~iB=y$BA zy=YC1#ERQEa;Y@pQPv8vj4tR|Q=nv64|;6$@z2`}|7LVTc62|1AP3%+EuPFisuhB) z%=@^W;E9t|uUx4fK}a(_IkQ9(m>Z5swMlzdxZGYJ`7q+OXk`*w+~gWuL@qr^@wYs| zU!`r6y#ZiE4n`p6K^0b^uHv1;{%me~^u4`!bQc%j)DUsBk1#KYkMc+8v*xR}oSu~? z7l49tziyA#AZ>(dDkWMI$E1PH#2zfEQm+QT)|86elekjtZc(@^BOEeK<^I^?HI!p(rn{Qc*&cr% zNhW-9u|>I(q=#)Y)zpP8b3gQzzU zK$Fl00Mq~ExMpZ)XKkmgYhYmN0I*-`T4D{>a32A=Ush)|7ut#0 zAl<29EKg)~v@Q=ITu5&ej5w89C2YBSc>F>ZFKe*;*;#$XL!!{~Swo};zks94$^l<* z2ZyEkovo~M!(ODKgEYN&4Lt-OJOa)&T8VU{x=rw`#&7HA$c{5a`tZdIyZ=>){;s$C z42vFnQMQVk4k0{qEqN*s2}J37uKD-KN6G*&nlKboMQl3isjS1AOD?Y5yRX;dUx?u@ zah=9kj&qbm$d&LGCG_Abp*Ko9Nx=-MewbiX^U@Quw?*NO;}>U+&_`X=N5k@zrmC4_ z3Z62GDN*Hr4y^JuBX$Kxw$O{kB?z;DXQzfPD;0hfOcfb5L;ZGV2y90hKl-yG9Q#2d z55`K#pGFNHy(CB23Wi;R@FF;FDloPHnJ9)?63WV-pVebU#~OEF9{ZWQ1mjS71u5Vh?R8UtCp`(VKw?k8el{( zT8LFa0m|2iSAAk%=`{N!#!AX!e2~>IZyaxeAnQJRJF?WsuT;@GhdY!udD=Mj@!=oz zI%Ett?u~|#xR=nLbqDU(cmtXDTbtI7UM6x&(QKTbJY+Xo=FSHwRi^bxVYXx|Dz%JgD|-o0u=}V!ukLR6Z{{PtN#*V|K5c5My>s2 z*t3DCz(0Zt6*o~*qDsVVDp?*Oj^C-;6B~w0sCwMyaKeYCYASxP9J1bWzdL6@Ry0$m z|6uw5ri+Yllni<}2w{RQ__dV61qLGTl^^qU#Kr`NyQ9JsO z-{GrD5$d&x@=lpBt%W$|=0`y%3|5xa@|^+olb7hSfMt@{o);q?RQ?lXCZ!h>e^BOO zpQSliX#N+WF2j2W>jV&bl&z>?VdqAvWgNR z>vYEx=bh0neNjhJCEKNyw|fN#m}0!g+Lgd6XX5b4K-V@O^MAPAu#45=Yvjw(r^XRE zN516pt?8jMK9x(#VNB%6{lo3{uxN=EwacOBUDHh?dceSZlAWT4UrDo{rc!Dl7qMf% zxP^)Hdiy;97{!jlL#_@h;YYV>kE{LzEap0JcLT3fRa8;6 zNqy+gk_9J-l`#h!#;D~G&wm=rgSgp3g1eU=x2br3Lh*4@2mv`tt^R7uQmd{f><@bd z2P2TGdD9=pY)73#C=wga?(@>Nod=WSYm*%Q zM?bT>Q`6ThK&Kh`V_P3~`)Qb;>o)ZJY~Xs=D6siK>*0GzqdLBNL*hW0i;+eSI+C2S zrg`v+SWQb*rF1$QZ>6uQ!-9*Wxdk&H^ThD)<4ny&@}Ba4UD~wSHVU?YV%KYc{~VKg zG-PRF?8jcJptx}3VpTbm_`&AtvL7Vr691MzyC8bU=O|&bBDA64K9|++v%=G5d@V(V zP3AXUeW=EvEd@HSH7Uh;O7HzILvVlWYNYF3@{s^|djjCi@qY>Lf2*GWh_C-;=(G{_ z^P5&8rX)~P5-kJ|bK@gdTh})pUpt$s68H*$_^Rf5ttNh1fHlY6R(dLHJhng?qbiDV zgky6_u1?=$1GN(|r4J+cIWIDo2$5R{0%1FbLQ=)cTZGZNsp{ zUYImW0pNDNmbQ+QJ_ZkwbG*l9P*qoeqm%649G&t&gAiWHxn>UM>*EMe6*20&{G(Pg zzuw${jv^PAO)S26K>{G&9v)c&#UvYsQ;>H9aCF)g{sr;8u^ql!7f8Q30K~Wd3GptE zx2{7Gwi870{-m`O%|!lD5gv|_xXI@KhqHG8j{M!WhGW~dt%)bj#F=~X%?Ti7r056rc3h3-ax#}M(PSzB365SA3Edg$O!{eDYfRC`3cn~H3Z zvls#rRA)%s_<--m!`8y6?ube=ORN0bHN+94x%F4Z$uVQ+>0l*7;S>yO3evnwvuoM8 z!z@Qhv~w%Jo~p0;_I!Zj5eh}J-X@(VJR+r%norItECC1~9qrxw)uT9dV6)%IuF*3a zA!m5*`DiB$&&T+X;>;DIs|On*SFs$Tiz>G6%io0h4}?=6{|Igu6GONlcNtr67BCen z+!*&Mw4GAA{*^9#q8#D5rq33D@>Rg95U&3ic_rYrN$@+DGK3Zn4Hb#~MisX*PTOwZc|Fx&^Q&V7 zSbgZN;-}^s{+z`wmzG>u&LEeqARixOhe=Wf2j2CaBL1pdNcK=9QDc`PxM(QeP2PL_ z>3!js)ZQAdzyZ!(e21X027W(>@-zdT^xUHgvSwKQ#U2pBYkLi@vzhN42chA& zRJFY-p5$d4gI7We%KMe`Xm8NY5ehMGuvKz%x&5~c!YV?Vfo}p@I?QTp=Fwvxu|>@a zeg#ycx~TgZ;0+sxLmB?c$OshPn6NF)Me3?{qTjnZ9D9JOcdhq4h7yFb5-Yh?=V*=T zWc1PD(WP}gH_gIZVllL$!Mt{OqJ*yxP$(kmWQ;`BHvyMdc0TdH<48`s!-e*%B!vI6 zYN1u1=C}rmY0H@E6(#fPSVGX(h5x=5v*&bwJl}WOE+F&XFDR^l&sD^@eTQkM?#;w6;9uY z(`ohZ16%jjWpkQ8oj<%=WIe;9pSd8TGfSA=q&>z_e2-s~3q|Z#MiF*`J#F$s>eeRJ7w&nK+qZzDH}MY%#t0YZ6!=A+al|b*I;QKkmK} z>>3?6dk{8z`esH;>%Xr*eW>xf-&8_o#dNm3$&vqeZLxp|l#~+y#_IqW|9@Bn{QDr= zKSr|tp7s6{#{Vzj`e#6ICaqKn8nAh+WQngwedEwQ#;V15l%MZmlZ!Jx5A;;#l2mP- z&3d~R>xsdzrS*#avV+|-Id|~vcL0=)+u&1c^?%lJX{JV$*MUoAa7(2{TA`O8;U``qBoLjkYnDZ(`W3T%rb;ffka!;Icy0CgoIal|sH;>vBBS#+crGU5DTh=;bO<{qFoP!90$bBfe^rq~T=Qni<4F zltcCqG15gTWOG{HLMR;8?}qJg<$U1d`s zK%DT576=zBJIF)|oVrhtsB$WkI(j)?EC6lvKgetx@uL@8D0C+7it(8d;GuDX*>3yI zN$jkGu zRzA}k5Z)0@nGD5e1}Px(OY@eqg%DH+<_Yyz??Gn=#}j_YHrc0xespOE7!`tqW~MZz zxJiVzl$}Q)u$GmL89vMMxKB90??PYf?HyP95n^?OXiH1$yH?YNzMI_aj`MVV2tM!M z8zdew{(D&dDxVJUqW}UT1mKzNKM2b!p67EKkz6}d80tis}GYC>W9a+kLgL=?C3F4c$fiG?2SL)p^{Uw)O zU#a4m@RzexU5PBdDkY^zAX0s^T|-c;8zrj}0o)x*Z3(*hkl4Lf`#N3T1OFoQC4|f_ zC_ZnDE&K*qahelDT!WcJ6*W;4%VPwcPrW5k(}5?bu`jPYqbkC^mlAA?!?@1=T28Vm zbi%2?$f-=;;4Zr^*nrm=;-QjLM@L)lh|uZG$ve!u#;AgQ+0xv+RK2NT0mriw0fV1$ zaG>hb2I^sntOoKC!%M!H5k>}P;fVO_%%3k9x1#8wU{8&$lsyUSdM;Z+1VQGHL`=qH z6%srgsERoybcChdU9L;{!|ZJ6cVaP?!)g5Wv*j*$B_bbLcSKO!_@~ak*lss&Yz3M{ zv*jwHl_ocJ>J9OA+SBbMob`pn1F`_tiIR_KPlUkS3Ju0IK1yXi*=rHpJZJsuYrRA6 zZ~V>c=Z{Cfdrsg_XSI0iiaiD=Oaf~o>>O%xd_(qNjpwcim-I47Iw%t%qgPd&tKi)G zmw4x-Qbdbt_79D#;PEx0eo$(Cv}XQ-rK#~hQ^DSAT5S>5qTf0`zLHQl8{CsFLrF2> zlcy&p!PGa;P}kgKbrF!vFFCkQ|!5@3SkKbhY6FGT7X znmO27>bZR)GwyF)tKbW7m|QM0YRxQ2(64CJOmM2~L?>V63|CYvq#(#CN5eW_sCXLD zNe@d}u?ipG$b8I!XAC7Vqbo)UJ4In#A8Y&cac46m&CL84Xm z!Z5k?S^E)*q2+-sCf-WOPd#uD|D7)!>j37Hfd{Gb`lwR$q4BDj*o>u1@((kC08lU#8jy ztHhZ|^yQQiYRZ zyfC0^ef>#k%|x*~xJ3D9$s08bF?Cx>gsawyglBwUg zs+$XN?e{feAE5sVmY>j+Y2jR#`wW%9VPlWS_ zcuDlj8O}s*a3W zI$_TG?|dAuRFsN>MqCQXwxyB@$2vSb#bJFe)drYGXri@f3%yl1Z9%-$8p+$OraFwX zP>=4euCB%#`%B+WV0xbP&zcI{EWF8PXXA^F@*9ZcpR6*_s~7>&uha)5rQmW@vwCB_ zu|^{U{J1l+KMe?13-VOsYcj$pit7`R2poK;HW$7{9cYpmiqU)?RbZNzSzyM3eew^L zTLRyQs=E~x&M9lL81nH3yK8c~^5P}3ai=Z@t7Zy-0V%DJBdA2_heLL9*FpAsbe;@6eoV6SViO$i_z(Tn9NBlAl#I z*&O1Uf0`-g0WOkK{&=6JB*ul`Wqe^oJ8~*lxP~OM^r%<=s@m^u_#GH@GKla%===2A znP3|R=&d_Q-cY_Zue_z!mS9#n^*JeElTa0H zeNe=urmn>{x*4c12r$iDt9&8@OKm(TQ?lyDt4W#F{u)*aGqkR~628pj0 zi|+Y&-{bx}HeM=lj6?vDj1rLcasJ<7%YLt?)N6J2{ zs}h%*iPWT*IlV+xIdb(J&NDG&Ac9#y(B|4Cjo41LuPzMP<(J-_zUL*3OME-JR~y9N zx2*KbSt%ZX%r7AcO9D}mx5tUKnqsk|9VAC6fG#Ms_FQ`V)(m2F^9+@nAI=*Of?m|A zOg#+-pRG1PGnn9OlSnLgpSpDdc}$^ig}w*2e`7@6Z*2pDtpo$C-dOE+t49fmM!!M3 zd~HAgGrybhfSk8|Bp^@=l8qxpnO>HXrx@v4G_~h`qk*BGEP!C`eJ$#3Repn|ofnAny9rs4eMQn5 zNUm4<-S^*%aU1B3SBW^@71NVy5SS@D?}Se%P@;-owCA+GmAVq_g;IPw>p$G6 zu;UXSAaNM$gJJ#nj>}7wi+Yb!!{CE=OYrgbmuscZsHG?IoR$wjrZV7+{ZINtw)Qrz z|A+a*KPMglRmrcvRVAxoK%;W?fU1OKHcCaqo|@W9Wp_htB+3F&)TM-xy^C#aCo4ngdZh%{Dt^5{A^}K|CysLpR5}ugqFx-IJzlVJ}+hY5jNb z9MjA{{>VUM?@N|#TG`@*(S5k~G9WJqh5H|g6eLBXt1eCn-*ENGf?w09=!xqfDWb~F z2k8S1J#*i3M)0cS;%vP^3Ru^I7<>NAD$0pJ0#AnZPx#LGQnb_Di5#mbG9-3q_ili9 z@G`t}3L$&iE7TKZ)|+^^aWm5~gR;9p=?YH z0h=}t4^F8$T88qKycIvEI)x^<7%eW-BPyEuw z&%pb0VMr6PD|S_@l5-cwuKh7MxoSh)`__XOH0IOH??4+R7FW#Pgc~$_9t7KE&V(6 z|Cw9?cTZ2x z1bg6_UCHDh>*%wSBLHs)OXlSUv-|wt6#=n$eUgCc2QBKMgqbXZg*!-8SrAN(s9v0B zOmX5Z2T=WRx&9&rOx~3zo$NTnApZ2))W!ptpTMW;{LTF2bKa)`P?l>pDaVIXF^W-r z&ie?ZzlHWszhPmlr+U;^g0I&L2n(*=sT`uv&*>v7JPtF!%TsmqR4h>o6FDMGhOMp= zeNNsXfB7x&Iq!47Hyiyq?=u%un>QHWU%u=EqFi@^aNgDd-~jpGIPkJ_e)!0oN!e|| zgw=n;M=!Jeo`%a+D?E;`9Al7E5AzOjAlSX#M0tv;M_y0mmL#*Am&rIquVsR5Vt7O((L+XB!40Top{-KF<2C_VW zKJ_ES(Md|R^1)QVsrrSVQD%;gr+lSs1(|Z@s_WLyY71Uf0ii9Nh2N3lbs%olyjYGgp3Y6coF8mDQ-{!!zLg%v?HIAq^Ki`V8L=_w zBKfo?loV8yZbTZc%n{DG{g69JG+S=T>36So)7rVAkW4< z1q6Yz3<{e4U@alVd77o6SQl*Z!k#PN#qo| zx@kWG%$C7JFH+F71>mZe1x!fFRfWzbQV#b#@Aq&G)LFtFd*IvStHb!DBnv!S61@{w zTd7EecAm2weENlM58W}{XqdVxZ27D!jV;>jjvB-(JVbyn-=zNj3LAVA75c(VE!LI* zQZ2%PL|w=l{pH*O*yN}#C=Zj*9UKo^cm;+~c$iI6YyR1{R}5)qt-6++y6HOv_1WiV zTd^D;P1Lju&T<;7pTv{6b2YJ|_$s(y(XQ7$A#A#Zjs5~70281uEHB)VmtNOV}UHifo3qD*k*&{K8@AIeI{O^~=h5w>y(jEf2gw0tq+^J5Q`TRWUJ`F9F8YhVWa2Dc2&CW=_4C3n2kY0N~Hn5xON( z@!e7JzM`+AK)we{BA8sVlcBMk!b3`3H)pkz`cHi5_0AzOy+j4tM$M%)RN_o$?p^)N zVH1h(Jc*fyn`Akj`V9VcCzs58(HAL_bb1X6>Mir;hBXY7fWgp5y5ib3p6IH9Ch@#J z*k1xbQ8%5HRj!P>0+nR6U933YXYIBo@cS*!5dNy+`b>q6%*abx03-+mkl;VjJ^Ygd z|2zo*MEFZ0lmSSDK>e+0Vdw^?Ale|pWO&rAMhf!l&0>83qo39+U~2`PWcdVygjvO~ z!;TEfZhMx@Z*iL4x3hc{Z42X>hAj)UI7|10`9b z>HG)BW+nRA0=-^76Cs$HFLMCR12sVNK(5nwN@M}hJj5w0NyHf@GC{b?o>BG5i$@jDE7e3G6t4qUq;_*jNGob4X0{sU*9hN*1;>` zpvxPOgQ+N#g@m>1f)jmO9XG*r^7H2b;Fh+fCQ8rUPq^vfM9e5`Z~^&Iv7CIXVNNe3t-04=wx9_QWc zdj-)Xdt1$tFq|LC+Zod!pz9E-^*m(c^3SV0qtCdfoC?iE!EQGD&?#lA^ zc1L%c+p`1|>7}&`ELuo#xx{0J`HAw-cACkOuyLiAdT~ZmWY|-ta{PLytoJJ4RIws* zX!Pd~UBB|wzpfFmL9KnM8@YzzZad$7XjzQNajOVMFu*CX^M1uT?F7BE(p zt(+%}fT~vjlPXB1wo}XKIhj+wn<%^24@5T}uCUFi{$o+&!{civc#Hwx(tp7qZ??K- zNneYOBQ6RZOGR@pZe}GF(u{$qV1}dy7ag}31Qn`J&{FS(NgENyv6RVawVM<;k@ zmZF7vmevPIyFG$AoReJfGD-$AU$(IY9&rff>R7=I5?o%Ko?1qc=|>4i0S=YNdLZhb zY~0*sanw)>d=gUFEyeZiJ(1#rew^Tf~zXH?HGH{giPv~$UONcbuwWhy;~(mbdqzDuDpeK$;C{5yLLxdOxWUTQL4m9P<3C*^5riV+;wmqjm>{qMb#|wf)Xly`zhZ3d-=S9a8 z8KXd&BYfgW!PJqke zT6|~$)}-LtKg2iH1KU=|T{U}6`YoF;KD$$yV?KYY&dr6(=g84Wm)47l>%vn2gWB2O zWP?D@qTM=$U1w|jvAO%hFSPlpRd~s-9l{D88 za#+jrj#KjB?0?t7=^^O6FYiy9vv^Ro0Lt@STaWYRfR~=kapPLlh2G#m&u(*God_R> zMb=FlzAVI_()1?Nbz4HU&zZEx*}dv!=+C&^lY4!4h~HCEZ7J(bdzm05OrDG9xBQOO z&T5ovgH%+hGE6OzajCNpBO+#LgV8#n6!aIbu)xHaTX}?R+&3a;;X0yVMMvw@ioXH; zN)5ufVE`pMiY;8PO(rED*w3;NN}6mBLH%fi(4uoItQ#^Mo2;DXB8t+W4b|7|dKEw$ ztMrTKCH}$Fc)09*SZd4hs!NT9^~@s5x=%Ou%D;(B(2EfC;1?%7@Wv7bx$Sb>6lUH=`;Byce$5OGz@wO@|5h~!*f+lovf8E3 zOd4fe1U@61sGCS3+?cG_T?J)SN=#VqRXj%a2`UZy!iyf53&Rl@3Gc>BpM|W4(A5`s z+10mul4@HrQkv|aQSOZDmWPF(o=<5l1pdwbUES+D*N#;x)65HZ0>{Ppceg(m{DtL^Fi zAcI$<)T7kLF#`eYnFC`=o#kwe2y`zN939^q?MzgP0kWBoe{Y(tul;b52GH`;w(5Vi z)8HS1tp85Sf1Y!ngHix$o_tdCv^NRSgBs4zkEl%pYzZxV?yx`=i|tEXORR*GIF}RX z$HON%!z?{Y7-nqO+ud#iwfxu$X6~F0O6ONkVN|+K^=dU{GbQFBAst$LJ;+B?6}k9| z7Gi9FAA(q?L4XW{{HT`K9LGp&j7L^noV4Feoy2Wi4nC8r{L(Pg+r3% z9t~-y5G-(rl8KhwBxVYCQ%qx;@Hf{g>7#I+Re+|&A<&=4oI9@BVzSGR+kO$B_tr!$ zY2=$KtOm+8^5~W)pC=tV_9bijxVs1peeLG5J+m+br@ba5@hC|+RDpU{>4oK%qO!C|JJ_T)?X7?hV_F=Ec}>2YlJ zS?6&k`HhQerTUC9;dy|wP9{PzXsqZNBgg^K>z}K+7cjlAPa%o@TvN1bpD2TPuilX#LLuMW)X zY_=8bXhXP{?uX<>8>^j{Z<4cSCMJr?@`4KJg$Um89E={P<5UKy2L5eIGhW->1<~&= zczkq~ML$=S0&y(Z%6bl(Vw+qw89q8>O~u@_T_L`=+= zqwE%qaF2Ld5=KCHO1Sm5VG{9h5A`tyocszHt`aM#TV%cax|KzF>iquEvN}%BK990a zSA?n)EZXL6!&ZAUz7wCl!k~M{^Oz^2px1_B_P&<&t0_(bQ}lN%l=e23+#?z<@<$r? zOs+Pi@-oN2i25m>P`nw5zy(}K2LbZY|5Z2RzXU!1ZfGAXXwk<67j*H2?oY7Nn|8zS zH34r>*J$dD{hO^N`IT)s5zpH7MNz-jAy%6*N9g3m*AZI4+83L9;c}OUWf*4;T4dT{ z!ew@=z{qvL9_>N_rv$Etej4>_F1(BYY?yAWm`PK6w->`N&%O{4HZjDFP(wqDS#}7F zKc!H+NL2Y*zs^D)LrJ6MP+*WJQxWH1#91_^?O+E&0M@=RmkyTwOrOO-5Y9&pPU#K- zL-~Fbrt$;<>SzvD5v-<#dSj@iS2mG^mB4XnX4C=G6MMMiK2c1`g)0(lS2Jnj@mg+t zOtiS$VJM_%&Jp-iQz8238rYJui^^XsDZvEGI`CA8N&pr*p%*4G7ww=uUrGHX$h^ zloT0Occa?X8TbVodiEz}odiQso{h)k@ZmH8)+w9TIt*XB6bn?yEsNgO3Is>lSk+s(1o(+VX&t8wS>_qa=uX*$to zT3B*qGnx@LbS8!J5?_!`#@q4^ldz7TvDi{r)gY)^YwC0e6Ct}~$wyqH`4pZd(29P4 zeodIM7+|YSX`sw#MiLYXZO;9$l&x~3fs!Gy?-OjN{kDxZxTQE?@U!m=<} z>r7j*O-HHLbw@`wExJaOSz)4^aJKgEg{OrtPu|P*Ko$LJRg16&X-3&MWWZLnhint9 zBmLi{3cpg|=KnC=-f9-xhOS=NouDTW*~8ZBB)c8C9~<1SmcQD2?$Gh_s*aM+b#2|7caM z+$DMK70q$97VQ($@n-i-j?Dv0h$o#Kh05E>9Ea@6UM$$`VSaSwi1z^ncBMCX|yBuIYo%J`+v z?}Q*MJqP=yay)aO^$Iq9EBg}hEq^|tPrIzH_^?lRe~e8S39U(R-dEPPsrD`xG2C2< zuJpZNs}kkM9hGOVx^DrgYSl``#)NB)taSQ&XWZGh8_^FkxMc;JB*9>EU+{)z1fOw% z7$Bsv0H*yFnOKdbAB)UMm@f`J(M>cgs(lsk3 zN8BrMT!Ap)^LM^?P6D`)``bIFIz1eI9iejF0QaIT8oS~dQzTHK-$!t<2ogXMdQ_`a z(dRrgFOBYT=PHPd6B)9ucIxB5&7Dfh*jm59KZ5U+&w0d;!muN%=elkLk(E&h|4dKrT3-Z%%jO=D?lYPttP*fbi>?Txf7>fV5$s~-muxfD^qh)9Uhg?-3x}EX=OrWF91cIDTZnDKCEogxypC`CBxbm^ ziw>rzTQtM@u|o&KlA`;}Zj{$D&Ct5%Tcalqs7r zH~xCp!4yc}19eJ(aySI6YwS2RpVY|(NWtOxYlls9Yt3u*C0Trx%uQu94Uywi--DKo8+u&5VTQ9f#lw( za#=qxJx6aq2&syKsHQTPv_Ots+87JM7CdET5GyJ%9(z~;v}X5;Qi+)|=H*ZIu4AjX zq(QvKTQpqcG{ZpnEMX_t#w57-{ zDJfwnI7>Nh74n>`5a*an{qUm|5ATPbb&ygkX&Y-d%buz)N8VCI8TD3X6APN66%tle zW$`UrMl*k)Pwx z6D%vE%&ti6s@VyptC&$_nn^>12={SjCcs4}60p)u6VVi52{Q!RWN9GgaekysdAsGFSJ|bcffG7t2G~TDq%vF{ zsJIr?;!t>U-A(AMdi^Jt=NPV-@LwxYAYPB7awL#6w7Y?5mb)B7N={iQHdq~> zX_Ks~qvuQFMEpu)D4-M?&PY-AK>GTZN7`n6G{jI4(%E5gjsS}jHT4C+%@%>RVKHq2 zJlBlazR7Xp`!G?Jahg-frqE3}kAo56CUs0bT4Wsm1RHMR-g!O`DCj{sZR}p!k5biF zUItNi`E9Tww~sT{%)eRXSLIKhSj{<_R~4LZvcxMljqWp-YjI~M`erjg9jQ&RMlIta zIs0qIv4{=ucD8`PTQYCQeN-(H<}lh>H_thw>S}l&(MP@RL5%WoT@b`0J&pYsYnAYf zm+8TC#L(?#a)h*w9QFy#;^m}v#sT(t!vYTR;&s5y@CQ}Bc=n8ly_FY$U|A(mSMe08%6k?A^m;YG_g=PozT9s|FF%Sg*YV|KuO{S6CCInHIw9RgNL zADlQ!9?D-Aw7#voVq;@22g44F*S^nOAuM{?O^p_Hv6L4sU(j}+%mh((fV4MpxD&d= zx~x$YHnegzwD_~2CTLD3mm;Nhe&T9vlmybo)OQ0Ml)<#t-*U`@0fJe0VPh zDNW@gTEa4+If4)s6`)a*Hc8#5Q(@7m%i55{9*8`b6X`||`Kob#^)QdUy3XOIuww^| zmrHqHgP_haoMnYZoaI(Y55$ML?cO0g1df2#K+-=-@Qx^yiZEyyy^uCu!S=L#t`>#K0L#(YZVY=_6WR- zdO!W@fIY@{ftWyM-aZ{>J~6Htt_pJLA9Jel{R~NZI^hN9sKJfppSm4od%a zSb($*6r7GB_>0|kHePR7)66-!Mx>Oip;0lvs{^pqqO#sevzvRVmUGg^xHBhOoB@`B z{UB0}(I+Bm_I4p%eCYq4XC5!qAH2b5E7pFHUz9jJ#q=i^gQg}fjr(i}Z2kc$Tt!g?J zwhE{g7#ItNTm36I@!%q?{WO*v{EBOjPJ6Zzd+R7YD(+Oi{&zBy$hu6ag7On|%jGC3 z(G;p-(4kuu0m)G3$CZH;4F}CUZ14_`=hjWJcA=l}W;og+7UZ-FW`T=SX^V39e!#AN zqj3RDi>JV>73AA!Zg!G9p)h^)PH3WTBlQ$ri1@aA@Tnq+3wBvm?zd+lX8^0fP*yS7h3oc!N#-c>;QMY} z$}Ne=>+0g`X7@%AN8@L)&$@4`-7ZJmbiiL~e7}saFf@W1CxEf*7fqO+7fHyU;ar8pPmu^Vfh z{-&~wfn^`W_aOr#{!<_EfWJ;*=Omru>vJjxpkfZcLm%oSg%eYLMmFLZlxn2$k_a(& z-s``HwnWH}7)8N{RND?5`L-tz;@JwZvn2DPSD5c57(I3?-4g~vZ}70hxsr;dp&_BR z@~VKw6p69|jrr#)+8h%5CRRU>D-Ise`vJeBcHgQAVb-Pw80yWodH1i*)T45#CadZO z@!e^B=PW75w}<)zwA04J&3Q}RT(UE$NN0cFQJ};_&bgzSux^uWl4*|hTl`&52N%44 zMJd=iO9iXn3*bK7?OW*WX=<~Nx+-9I)1_n$x)@XW;&zOIXmo3?I<{ajhn%t&g}BxzM@Vh1>f%$Tt7a6rp|MBW5o>YY%;5 zNqW}PUoSS3+pNefsXDujiFgc9N|DLLi(^ANY`I^~!+kx?Tv*L8MHUp~2gA+oAz%3z zXgh98M^&6gV08%d^gS4J?uX3URU`Vau67^RrV9rl0$p|N^f{!Xxio80F6`j#f!Bxr zC@n3!$$M-2EFTeC@>VT4uj_Sbp%U;}z1UrCMCxCp;D|6UqurZz-NiPzkhh7{=)_AX zQp}2Ak_McaW2@C8_g6IaFJP+Pjh+9xls8Ex*-HOravp3s>euv~UKby~Y9@gP9&a+j zn)ydIZhe*tqAMWSYKf2_Hp_o>+)(5EZ00Kp;@7nh~O!T-gt3TIjFQtGzic-A^%+w5TBa6TRU2H+Fy<{2PPU@76%)T6fu5Ox3Gf2UlR46V z`XDiih$;#zNXRKke3xagcW@j~8Tp)x0Eh`7?uZ4{r6gJlAlz;1a3cM3M=Jzm!bwwq zO2cTP@aSw1laERs7drcraHnpMX&4X3dN8%$Ky2-rgHftekKw^Qo)(#+ao5{6+7_43 z!MLBkNUImSI*-GGJ*QfLS_fArSFlt?pAl@*?4b{Xp)T#X*fNsnl`o$36m)_Y^=N>p z*T&XHC6g1QIED+ZDxk+2hmjkB6{KcPwxC$Dq%wi%Kspd-Z~X9#dcZQ!-Nh>@zxAif zBy}zA&U2JIzJIq5EP2%U2~?AMgf+W)CMwbom8UvnoDxkeiJ*RO?F__^YA7 z_b!{aIpc3C4626=-V)Ogu_|XW!Ee2$Iz67t9HMR5__Jlf4PH9O5n@Wa3r|k?;_pq^ z=nf`F?1pdO*Zh=hdgz0KFwK(Z3K7ZjX^+FZEoa4lseIcI_ZuuUNX52tI*)UjolUyR zPePl;abv{sk^!&EcZya)%J)x%_<7IqOanS$uy-7nsV{-n#vwcBHaXV{c{(}YKHOP8 zno7nrY^;gSrW^)rpd&$2B=0D(Hf21*x9)?*BaILTde6dVNjR8K21fypDU9Wf-2;CW z>pX}Mm$%!;ZF`-3!jIi87btJ&rEIpd&51s9ZHDdJf>>8W1BVI44T&TAds)V{6NT+3 zd+)NwQLUQqEX}+d!GWp3ImdAN)%L59(C8I3C6^hGuu9@g&G_H&=Dp+*a7 zRl-HC)*SunrveN*fM*<&EUM3muFLnm{h`_!S7G6M@;7hlZUyh;LWyFabQ+}NAYbg; zGi#{`^4a?aTh&y{v>>z}SKFtP=vv5q;1kZhFna%8){t){Cj@_GA}I7!BGS1Tbfs^U zq=+x#5aLJ|GQTlpBv0#=H038kTZn6Zemq;C^w%0{-?zW4fBhucsicVVE}-|@4!4HrA1G@__xNNJCv=dqpZZ(D<{1F*Jz{i5Q`krkCu>!%K^s$g9iC z#s*XyUI%2ww|X>;u?`RX9~a&Spvj4s+WZy*la!~BT>GKQvP<)mKiRK>@w-qe(3kJ)uf$A@*FYEQ7sv zpWK&9BWr0n5g%D1vDCwI*)k<$lWs&&>j?(q=8WC~OKlDJpF5|0Zp@L%ID$7f!^ z7j#snMT-3s!%>2~XDIEVU2r_1=9gT2(ik@9@({jyG2p4j>peOJxh{tee;@CzDtg-X zcFcVt1J#hV>sHc7QK@M1bZa9rEc%RKSOCeGcK{4*PkJb!doI8KW}4k-FqvL>B#>iD zoNp~vJ=K}I+n{pmuhPWo9G#vc!i~W%*+D>=TADgKT1H|w?u>RikVR19l99EO%a3vV4b@(3-!|Xx z;?()-X(ZLYq?o~49%=4T-_D@4@heDCP#V-vv_Jht`umBMZ-Z;l=m3nM0-pa7D~>j{ zI+jMxMwSeYu8vaWk`+{;-zO$VrDPZ+WJVgP_CbLD)fE5y@~2szDm}m#e?BCD=l?g_ z{}2}ym4=-Zml>aim!hYc7@Mq9V47py+_V2aE=4a%H^Nw}ATBvV#}LX0Nv$x&G{wq3 z#X7aS2lIQ9ar%yK0iKFpa(qO(R)LC|MrLmhMnbwtfvT8oVSIE_YF=inY zBUa3GVCHD;Md+o^Sv+bgJiSbk(L`HH4REM>Aq96Q#<(2TQnUBCns}c<8;~Uns|hb^ z9klgeQsYoq!=J`;^wyrV+oe#FD@&WT^O=xSRlbeWMRamS+Lj**>`$l0K>d(R4Cbpi z?SAnHpV81SD(x-a2PYn{sE|n`3#xYDh-6hJ?@{l4vq?xK=`F~VDE}r+V@-G5e@Lgc z!)5PW>6o=xGt)5h$9-&{tv4*3B`Cd5<*vz``mAO-br>q#Rc7$VY3{Cbp<`li^3C^y ztPft3A##pyV_+y_(Chjo$1nv!Qlk~DF@={fB(7qyTB!I^*F^tMYi9u!)%Lb=LRvzR zE+qvdRRk$TLOKkZkrX5yh7^U7GC&ZKL6Gill%X610g+Hr5Cug*x~2Kf+{3bB!P-d7X4mIdXzAmmC_9ZU%kEiE~=P&Aua zIN1K$LU%B~E_b-*Omh*_G|5Ja9G;|7&s6t>7_4rC><+zo&+w-%q@yJFha3U%OKw+a z#OESS-s>?oHH94u`_@9pvWDXs$=lgwd?o6nePeE39s>h}WL_%pXjsS0_{J0g{;-}^ z%6!T)Zbk*K%;tEPRX2}OSW*>(PU-w+tgg#l?tYShiU-`(#9sa#ngpoj2os%&BK@it zko}`~*}tT6wa}&& zQ{lG_RHqf1@`48#T)L7D>^oxGhIjXdPVj2boD|EyU9 z)#FgXR&7jTvZb^JNrSDdXj>Sm>mtd&oS+NPRCSD$lx4C-%0c&?#Aj4^7p1;rq%KM6 zaN_EeU-R(Cr(t)anroOBBa*u2tZociC!J+1e}Kq2pWi1!c8e`{-66b4!s=A>rL&FY z5S(Uv+0<|8vyV%;w_*-e?URLST5*%k+&40Y8dO+&q(6?2@nbLKOlqK3r^z#_5;+<| zP}VJ429dtVKBVT1>>aIAgq(tZWsXTTe^^pgslT#x_QMUL{G}VgZ)lr_)*hU)&d|3? ztW}&`Jg%BRq8rdlq2{S6Lbbg3WS_=Gkqdl|x1~Z~A|2vq$COWeEW2&y7NSmSWOy(l z>XB#?U37T#;G9%{i~saDLOP1rp&I$Gw-TCOW*)qjsk^0l$9%q5Kmymp`wYd6{K^25 z(d*{+jy@%U&FrZyA){UIrf^h^g}*2jEeo0A^^Vic>XGtW6MwTZdxWzFnxNyd$@lXE z-c(jM{3h`+y|;H~OL@FvQHoNrDmK1vhcv^Jko+5i%9pPz#UKXOe656K z1~ui_bHh+xc za~G^NV34NXS=y>HB5RiLWkZ~J*{o!>mn&-JGHJI6Y(D0y&H-**qB=^8@Rq=++Ty`i zLrrH*4z}|9b`l(2HE?Bq_gVjOh&5vgkMF!^<{*>sM2=SmZ4Dc4d#lPj6cXm!eykTF zCQNXl$M$_WBsrlv^<|Nm{biB+BaH(Mx_2#y42OdrOfPw)CxB zQqn@CK>Syl!~?Zb_yHr5))dAn9|<-J<|8<@&(c z_bJIzyh2@9WuSg%Hnsg%Ka{3&J8 z`L;>Q8}ZeuPhUfp1o^{-lRao%0!asl_!5|Kq2@Fux3zi?6YsCA{dkt9i-ovS<_%<3 zNEzQ#&#OVH%MaOqy<4MU%v7O|C=Ei?74s|shx)WZ!A8It2m--&gx_akolN%5VrIJ%?m~PI@j(7tz{T>Q zXAbF6wqF_4Lvr5XObz%QWN7h$92$t|9lVmx?nCh5rin_iq>_<=(b;GMz%W;{XH9J7s;xd5*S)fGy|DYuC^d^P43#W) zNT8sSmi7GXbHV*5YGZUy;qXyGj;d0`Rf+HcymJu z>7n9MZ$w`CJCaH3i%SW3H@M9-nJpX3PueT{trA@nBCqxwct2|3nxv+B&D?WB{A7*3 z05YwL+O4e2Ftqr*rA{WkURFLi-b=PJvFh6DdC3CDE+4^D6Kz7tsjHV7xgXyBPUsE2 zMl;tDg&$~3Z{{-N>Zd8c(W+#0uu znrL}9;ZrAOHRY-j0}p$|im=nPy^RR@T&^lYxHKSltO-`|%BO~;3?=B)sgtH1)TKT4>!$RNS~Xam zIXHPUqMKN5Nyb^~4xYfi=U*2J^hsP}QrkbTxFwHTQK9UX5E6*>k@Gn0(A~nk5;0V} zuj6|B2m3+#Wcu&|v61&rKO9gzcG))ZZ5vO`#(uA>Db%IBKAnE33()7|o{OO_hNw=Y zfU8}-nkcy@ojSMY1o`Td#5o$|QmB%9dXECe+Q)dhsi#!7`!2H;tw*En z^>hYa-OeJdybC-VHj>pxKIxwpRF)1N5^21a?kwV!ftQh<%tUTMgc zX7hC(vNlz_exDY$Tg>uCN0;{dS@4KQ^SsIyy~^GNPwS!-iMv4>JK<7&hN2I3(@@rQ z*|Duccrv=idrHSkXZ)b?**Vnlt6bvjckYiSJU5q)KhpHhO*nUIkt{i*=NiYRo87wN z&5?fKOInj_@jx$Jyy|tR9i@QA6$W@{;W}WW>&!kcVdpx|2luw(T=8A6;`Ptomn-b) zGj$=w6nVz}VUFyV`-dN=S}M%e=!H8Z@&uWQomll8S*4jH;;;-c(_CQe0ywhLa3Ydn|Cw#iRtDcpCbO{FspR(%Itl3YM2%=WNra66i0gQ5tGj z$Z@~QqvoD{M83|o@AU2@Y(4{4L=NBl-W;{MrG=#8~DRsU7Ob$OfVk&+O^$E~IB zX|^OK`?zJ6v;&@ybFg!z_AfC<(|^qtLJ1SOD&*-dik)01L^Wtyj8RYDTtlisSwGMU zaCP!ln`jS<(cp5j@z8yK&)LA=N8@>OQgDS3m7uvl``if8%4+}p^RJ;7Na!!P;J2zs z-73&mqD*=|rNFFeubeE>uEl88qBLwTzu}iKoiLqEo-O$@ge;984_b6lAWPHpcA{q- zrMf@C^AQ^|tEN~LZ8nzHYC1TgiLK5YI*c5Nv3pE7?k1*^NNFJKW)RhE{)nKdu}b#5 zfJ8SF-Wun0tM4EiWn7Do0GA6vw?&#`VAAQ?1IOQ;mtYeaRw1(s6I=_MOJfw_w^rw; zU%gWvr!gC*T%zQ3ylvt%Dz&_F{|#oVl&;VdM<>k`%nWD_R&X#Gx83p$>oA~?H8or& zE3WFI6}9`MnET1KqFFy|@H}!UWjxR^Jn6H&A^+vzM~G6&u!*(bkV&3vREDPp^16K_9rny>%wxx$b@$i3m9>(`;A1@A`?2&&ImuX2>PsN){5K z6pGfqpB=rmHd5A+(_>u@MJsi!8tkoXRfc-Y4A8EN^$&R&jWtGcymVi5KK3lE^AP3q zFD7azU`1Rxw>5?%v?UsJh_iwI!d&lZDb~-Ak~u>J*}w3aXslJi;(a?>BlP>d?2O;% zLkJWpo(rRnTwzDL2Q&k2Mb+|Z6Gsm}dmfgjf(w0AtEJ!zu9J77XYd#^7CE15CpKSw}C+* zz+*13mjA$g-9te7;a6ZoCHm%i`vA0ncd==i+t~oMY#~;r<}gPn+EMIhNd!_wXN5{` z@+lza2rO3|-qr(NOX0e}T|8Dvz{eD3>Hu>FsiA{4%V9+n0Ks|!!Lsa769F>$u&G%& zLhVgqASrai3NQ7}x&zB?UI%b+n0839080zlq^vFNoUjPNwB@sV03ih+!kukup~5cY zWC}I?tLg-}v!tBeP0s=UM685^!@Q$SgTR1eYm*Di#tvIY8A&;D!hnui0vdK?hmr{} zu-KGbP3>%eRYgZASPuPQmDoPqmmiQp|8Vb+JHUfg?r*}5mCB!kMQdgzOb-kIO-%dO ziR*)1)7;VC-qgVYTl-k9W`@lG>s4i~;EsFBi?w~`F3vDVd(dd2&#)rD!a8ptLTR97 zoI4_Y1=JkD(s3|LXV{Je+@IqFE28^v`zVD6s{ao~J5#js|GHYQn=1Fw0^^$qWcH)& zFt(3UxTeOhh0*FeCI*PJxut_C)COJ60vv;oB6mL*&?7g1X#o8YX!|IIztF~t+UfDS z%ansY3np78-C2N{fEIXUkKUfJeU!q5F6=@1$IJ%#S8W$i7-$%CuTteCK$rwV**O#$ zx_f}RT0))wcJ%zYf6&6QJWV}uK;HxbxBbVrLjYb&;h*&OApFmki~rG0?YV2@RRCZF zm`cy=0JIwJ9boF|0<{Ec-oR{NJFI}f;Uv0A6Ep&}d4MLrgEkH%OJlhRb`JMH;b5ix zvyB8yd_x7(`T)?*GyZLAxeYCa)0*v_h&da~?SKp15{l&<0GDyckkoAcfb?@wcW`jv zqSYAWTf6@cnmGLlcH8w1945HLD~5Lu`e(eq3%-JR;5wfe-XiRedAsx} zxXL4jY3ue!%)i{?z!8EgUSVj>w|1a0YZ6TZ zm&(D=ynO$Vw#ztzOQv9m!~Xx3_@jWz&z*?=Q~(#Qz(DHm{2pYNXu!1tFrcja{}r@t z!44WGbUa{hcMJyl;CC^*LqEQ10z z=fE%y=lm99msr5Y1sIN9{@yv@{nA(h0&m5}fbffdAA}_;^!x_iPKtqLKidQB$JDv& zy)F8>0q>#2K$y$^8{}VK-FNP&1fS&KOm7T$y7s?;F@b_c3|sOe26OK9FOp+GsgOSh zfGy(-qnzIS3*}u`Rj_3TVRSoywUHmaj4gR{N3IaKz2L+kjIK!AFLeJ(69Vgj^LQ|N t?|!AXoz(-D1V4AjNV;_XqKSV$h1XIg0B%9ihR@U$WwIq6!mIqDkP+L)M|Iy>k) zncLdX>gt-?m^2Gvb&hl?)Mr z6A%6VOj}bqErM+kbg!d6zrT<7(CNDd7isWYXa=uspnrYC0YII@jcRd%ONM>O>@R4;JUARJB)Vk*HNY+f4-%qw9Yp3W-CvA(~2opunQOV;QrrH_QnKXf>M_EaCR zKT*f6)x-X|%SrjYJ^O?oWQIHlM|NzS+=13t+tgf`cM4=K+6|GEoSM3u!b&ZQKlSK_ zcofTSEe$_bEGT!FxxnlxrNitP{i(E@m!QoozY$|!=28v+op>;BROjXidtSWQUsRQ^ z$z9J{osRngl>0AiFykQfgZsyZJ0Ji6ivNxchF0drHcq-G`i4%n4(|UUg?oP0D$nn3#*B(gSEcXf5NFyZ!^FLy-jqCM@1hemehWs(hQ}L z4}2XYm!y+rcYTcgj{VnnR}zS1ZVrYv{QC9lD=TX6CIkVD$gRL)wqp%Kh$5t2MJmSO z-nk}Bao(u(&J4Ni$gj@o5>4;-)u#CoPjJ(Ky!?R$u_iSw&1>8C=ww@<{@&}zWq98CS zj2q^nQ9|aBrGaLPVum@d&#H{ZgamoD9-e#I!KLHP=yg;U-zEi z&8S4H2y$_t>bWHwQn|d!amz6op)G`jVYs}v4;G4{~}-?F}0u8K3-V=-l{L!m{QSdL5rBIP$V8j1!y zv+{MHCRHEqSqtI<3;|Ngt`eJtksxRzEUK_PfKND?XiBlfNr4&1^g%6MK))V5Aa~6& zThKt6NN6*4_>`66>Q<9rLWYi!Nk4fWnhw5~mCc-(Q_?(ltN4+3P4u5~{+m1hJ#)0f z{yTr*ulT&2U`8Fw1T%CM0BGXcd&nnT+4Q}rq_1&Qu-`kpx*BK;fD4x8G-P#nxS5UF z?tQi@49Ut74yLJ7fz3l3_Z!vK)mNZx{cb`YVR7j&b=i85vutcAR@n16ar2_ABz*ym zQ4(WBzFdz-NOd?^RY7VqTx(|8+rOudQ1>Z*1m#^8CX*u5Ftyas1|xs=#b9#C)tm42 zm<#x;tMC;jF%<#(Lq9*CG+9_7y}!I~KLR_tmG+}i#Blc72mr&P7FbyeTPo1{^_fSy zy;D+zOcfJmd>aOjq#gLsGZ6u9CVsM)Q-x5}p&eDox}i8TdZJYWH8dHlhmtS@r0as& zbeI`&z0r7uRn(Xu)^sOELQ<~JIZ4X)CyFXQ- zUEmu0$GVY)>;2$tfM#AAARs~ts8*Q96O<5NS6#)t*J6yvXE-?2iA_(sSqBM@ zU*mfA89m@uH>|4EP;p1BfO0__H_o>X+n6^LXqz$yv?RhJvDI$cypPtAt$86wk`FPG zC=OA*`u88NwHdjBK~JwEeP8gEv<$0$LK)#yEaBQ)@GF_wVr?%eNIQHDPfUn{AMo&z zVtB-O23d1FsujzZ9hfGnbp|EmTQU?nsaCZJJnKc|<+5a3A3d&Y4BfiZepEGhj1{EP zVR@fCq?J!fLNq!~ayD0dxPZJ;wvcqyX2Ktr91|ovx-3lFC{~9GUoFNKiz90b$NAbs zDTGD3cS4|U7;+XBJP4U1ffDxu^;n$EF~}qQ&@~@Vu-~_eMgBK4;AYU2#fDtet-v<(m65IvNJas zM|*JZ=yU{wO|^qs%A_w z0{QV}7Tv@dWogWWN*9k)b0j)WX6J4BfPpY$zCIaG*4q(Y#3c#+(t~y9V$fKez{zMAph|r~2})Td7t16OqNSFr<(JOn z=qBZEK5e=>XJ?Q+!w)O-O;m(DX2`2#2J_*ld(1j%UBKFX|G}8UJjYASxgRlaY^$(* z>Gf5ZS;TzAkB$ZRUfO2~gbc00Ut!aWqA_K*eF)6jO&%{U-TM5go$Wn~H;q~!R;jCF zd6pX!JGpX{HYPvG);&E_k<6WmZ$=tm)eJY4U@YOGnLiP=7_17m2kj0*+1%=4T-Dno zOYC|bqV(24pe17U?ze^>I2iix$!pI*vvL5QVtP~#Wloc%WcSe&@uF9}qOpaM3o-W# zEINZezHcB170J^yY??uikK42D0x#B{^OgyVX)yU~oygiCQ`XlAOEdZJ&90BGPHi@R zz(y_}pP*r0=3T+Jp``+KgiRk|;JlJPG0Krne)7ND`_K&II=41ovir9H)f?;h*u?Er zxt=prr+*Bp+@OtAyci*@bv_EiEh1VL9e$$Xjow5TRzeG{(MZefe zY+0v#>`?d+j~C$N-Qv+z_v0iuaAxue3dK|Uo1daL0Zxuih002BzP}spE2%#ZPZ_{4 zl5Oe!O~S<_eYGaN2U^)$xx#w%%==&KO;$YnfaAaB`vwjGK>FV`Ul)BVb0htKr_2A; zoMB~s$t^zk?;KtFoM7T(#HQedKP_R%6n~K^d=Ri!y2p(-r)|=#WMt2MZ;9K9(QcC{ z#9kL~rZ!t`cVt*P;kys+T=v&cB^4g0`0)kV6cen>6-VtUs31$L!uQ22&G<;*Q^cUM zhPz&s#F#gAX6*)`k!V74ypZCX+ zce;JG${31~L=J#|$cAHHxHRv~Ue%mZEtXyf-Y-dwR`NN2>uIq-GxL?LH;-%ru>2|6 z@l+go@=b=P$2Y|yG)xwnW|239CzB#Kg$gmcj)yrof@X0}ioJJ-TsYXaZolsjUzq=Z zk?aS`>fI&Z;|Kd&g2+qCyC(-q@B8E)Vhj=&PEaQa+UxJKwfLkMjEqy^|DG0y-MkdY zs`eWT&q+^GL_uMJ-Fte|Qg zX8Hc(=`^%W(&XB@mAa8xOMS@i>rVCj6LOWn86i>#N?d}aH$Z@-h2{DR zlGc>&|Df$#m4X7UU9&&sKf3WS3*h4ggH?sjMM+yxZC zFO4Z?+!W|l0^nXEZJ$mW6C_(iHITfFW}MGYF+KT4c0$lF>~!^HUU2GY%)sBBGPrM_ zk@G2Vc}=ywm{kHHo}?RC4b}^67kNKCY*fYb#YOaaHI>y5d7XMPbmM1+RM|A#H1J*~ z_jmnJ;w|&nbeVsFpfpgWsnfTN^T&)FH?{gyl;vXSCkmCw3v{7YsRwe;#qZd*w=}Gn zFs|P#$i)$ZVbCj*(?nx-8DmSx`Hn(~{q0ylmVuRg-x8#|57oi%0y=k;&UdFggen8} zEsh?KZP#vcz{u{!QgG4_C8K^DT#|WxN`@&su05NNt#C)(7ra93hmH$`FU`&xnE+l? z{hTI8?`nrNmvpv>mT)%)KPs)s!DpAKYfQ_X)EL3q**lCSA654RYfapueh_Nr^nyms zfN@E2AK%wi$XNF*qYi7Ly%uMz>xa3GR5f{Nh&nD{pgQx}tbZstO$x7+zIE3#N0Z2U z{}(>g$sj{&zybiA@c{r3{5Pf3(Am++*7{%7oW|02++=ys?gfg+6Pp&3+K}Yrp1tos zWlNQ!!9ybJ4lNnX7Z)>-M&R;msy2DpwM7Hq_ahWuSFx!uH-yxpdV%@`y$ho1IW%<; zm{D&(UboOj;7yNjRUb&#oBT84KJKPvTm>TGs4Qx_wXihVOK+C5c|NVTlnvu@^c6Qwa39UR(9l=X`XxurjQCV;=LIvSVOCAPbYB=*M1C;6ezBJe8 z?UQ+%B@fNw2xi-bZ&gYOfDE%w^$shKCL+R>KUhuli6)<c30>c^#&O1mv6Q$Nf-zCBY z4Fbx2hzzO3Fmcngv0kF zPGt*8cD96Lj!fxq0ZKTOz%7HkKS?6%Gs-b&b=lkoz6Q?FyeOSH{8%s95vbIDW)*;2 z^UNsRgLoqat^ed-0Um1suTY9$2yzjGUT44StuxKt;tO&!tI01nxgq?wxTOSI-Uc9&jzFg*v=pb4e9!ltRewioKWj zCX4Bv06v%-f>86Y@TK?yc5dZO2!78##ax;;{9yJZp!I5I)>Lw=#7KF1GxU3YhDq=+ z%tMPjuD7F~A6J`;wY+`5ygrH|R9$?a6u)$lY0qN|El+^q3tqWW$%Fmt6Mgv5gQSy6 zO9T@6LKI8DYkd$f1FMy?K{qw&wPkmBnSb|m?wOoXhtWPhny?A+)ZTHtA14Y3ntj=$_n1Y}GUxRbM!4r3X|UV*NQs zp$^NV5Vx^2=mGLyJmb;Pe<@!;53&YEaS=Tt)K(@?Tf-rdr4vFblmB3<%xPIzTIeeR zJ1Cp`%NbyE`ZsvUxp^h7y5hNGtUx}Kc`*zzE!>8YFYhI27jo=1LQ_m=jgck5IPB5x ztX~bpp$M^q*A!=z94wQ#<#A~}N`_@S56A%Trpf6DV@I;9FgNGP#P!T9vJFz@_ii3F z5il!hq@ zKS&TRD)0@YrpKUTCEh--+(Ic}&Aj+L1Hx{Z#A8MDc^TGFBY*2OlZi3(`B*7XN#6Gg z^&CPJhjyKO=P5+FkXv}FyCO%BBCC6NSI`naYgL6mw>S-Noyvyl`8)EpRPNDs4F;0} z8Sx&mGqp8o4r?x*OQioQ%8TvO>F1Bm4s`Sx7EsAdIY-aw88=@U-Vn+U)n ztzunrFcu=p2(4nmQWh|a8joW4`WxwtLy{+733beDofIB!b2$K<)li7U*wVT5hy|e7 z^5c?okH3Hw%Y$9K>q8xb?QTq?B~xo38@tD=cHuSi2R)*xN5jsIraDP?lq0`py|x0^ z7?q{_6_E21cA}$QkS3zzSk?vN7lbr38<&Htec^penQ{?@MgXkcTDrBgo!HlqrC`3c zWTiAqg9#eP)eNuE@~z@a7BmV^L`I-QE{;!Vz`KmJeO}Wi*GbrzXK7G(8Z5y<&>jL7 zm|>R1l4zAmkd+Bx(2mX7N>E0Vx%&JO3=311P1NALpeMe=I=8>EP@Jf3F0{CZ-%23M zn*0WR=z763v{^#VBx%`sAlxq99p}yB;wn1R34q&@Pi-`hY*)>q^9?2MNlr9Rw<3?qL6J^Ea%F7Q?Ul$a&e(rozn9m>RK5->Y)X)Gm}hmFJ*?d1SQ zh7q+X@dbT@b(*BPOswu@llTu*_;0NX(b3$K^8%4ON&V}|&1+vZ z%gedl>F;Ih4(=^K`R-qC6SACQa&>=0DtZPn^Z;*-_CFvvg6fwm$J~%yYc^K_wrE{6 z5J_$h6o0h9s+Q2BBsQ`^@e%m}B9eo`IS5p@T~UCEXbgmX82J*1aKv2km!{d*&0xc8 zv02XF4L`oR2a>rjT261ZbO&ZfCmZ>+!3NoTl>9o@*OI#@A~qWdy-&-!bIu5F>TF5{ zyMwf{a(#6Ln#M#S-S4|e5^(<_w8Pc>0JKGcrp8U9RIc8Ro&%N!q`G?5)}%!0cBOl& z7Iep*AFlL+3UtrG620I|0;Y3_Y?LG+nzS1Nr|CH_>&F&*+g&5lz)+CjbWvS$_PyO7 zy&-Lp&D=C6j-8+;Z47dE*Rk+l%b<<`dbPQA%0bMn;v;KH$R6wnXCKn1tc0%q@m=-( zVF69x{Tsn=zqso39Uph4wbB^SjoT zA_zMm^J>3`LBUnjV-OA5n)WKuXL)v$Z8IZxJlslCPpu!SLa!aEPDMNuJfwcu?L0N1 zuANTC$3LpZW#vYB*(W4iG0-1K*i-_n2oJW3pNFI3A@s#2bL7G8B{mQ<7Mgv3MWI|u zVyM1iZW#1p7T2gb@r|*={)~T2PHX`~V8vg)+}&g8kh4RZicxe4>(QP`FimvAUR>%5ac03^LY_o!sgpO z)WgJ5ILmDG{Dea}1=sauc?f{)s4Y2(3Jd?ICc>hFk6L7-V&$qzH}WQ|G9mzF`f*}m zpnvQRY-bW3Nb#b%b5FmBD+AVj{cma!TY2Zu{B*e}?9XS!-MgMQ_wCZS#wHGf{-pOz$}Hu4mNP6Oh)TqJ9QAvX@aDo za@a_a%qLGBWFbuLs8a24MlUVJ%m)e_7joq2<<5ZKrEX?W>mtCK<3)bZ;SwQrP}yBw ze+?f;V`p=yLZ}bB@tJp$C&`20=fql|4aecf2MRYG3-KRa>pski%v~qjb;>f88A2Te zh~EfCswVFSvg5{)^=dD#nabf$na9#0HcYNq0_?%e?sQ&AAthOl|rd z2e1_fzV0w^%s6z4&bd<*86&e8pgX2Do&JZr^503T)vcu)T$_UN9z-9?LyPT`#cOAY zCyeRGABjVrpZfR>-g>37Gn^S>Y4up&X@zQ8tG8`kue`A%?%5akvT%ADxpYC1Xvx;N z4Hc(R`Q1$ra_IYNK=x?GMYE@9_|2oHQnp3K{qStoia**F6T%ke!|M(VLUo8NtO8Tx zNwTJ9E1A?XoXM*&bW2I~@DmDlTU+a`<>7V1aKz>1fHkz&@CwFUEd|H{YW%jvll_gu zZ1JOp_=9S?>s$RM@3@RDjnCfyWcCkWjoB8cl&%C0t0unjhp^B$BGy{`#kq`W_O&+_ z#xt02T~#VWb#zPcoYZGb|3xEL&L}FB#Lg8Up+tt!-jNcAUBs<(I$G7)wiU4)#-#Op znNG`=*)*1~OpySOD|RT(>@ps-@&;jZ+mf5z^P?lqJ~dx-iDd`SDd1*w7sjaH|K--WF{okK_n#o;{%2N@|2M+a$=K1!@qeBqsE(zF9iW32c9pp= zrlE`D#3v=@=m(WMP$+~KjfvcQQLEkqd49>wvHphrWHw#g|NC6%g$J|QCO9i!Jgzs> z9I+Es41(=2LdE=-c>%3>uhTR}36n&MBz{0dz_;Vat}plu@5*|Qfm8XIe?E^egnxE4Ttn~kb=Kr@~Jh#qnN8tegGXEJ?(*JM4{0EV) zrL%#tgN^aO_x~~gqU&gAY@_dBZu`$yxMsJEEo5ui70vjCzxFw^DX$C>UAU-XTDT_W z69`yDw+g(~Nro;F?Bn_)CSZ2$+bdIS@uA$vSh=l!EfKARVwLN7$IfH>>+bXj&cpk2 zcRJryF+1&(>Qb0`Um4#Rn^{rK)q z`l;Wy!JarSm%@r}XdWhIdV_!dhmB!9a>Qe$?ca&wqZF72W^>H(XQE?ecO!$@UFJ@~_#_;YgE(|F zKUrNsWm6S}5xB+F?vIeuU1}A(r^c->>*T z&!1DYgw4*#zqb#q*V^H)6m%$=wF2^}4rOb0-1o36g^=Vb4^ z+(HWVk-2K_VG1r;7K^z&VS>Jmk{y{XhSI5bwh+qBgm8@(H!sB?A~=q8^LvW|TtJn<`tU+6L@EXSKfWWJs=a zBGkc!szTX!-avVPaAvm&p0n|}9F=-smH5Iz|ENS@VzrMj#wjKV&^B_8G7wCfOmv;e z#4xnG!cP-eV3Cdb`{um#F*pWToRBAZq_e^2=H&CY>d+N-^#$qsZBc2z4_XA!^Lp}Z z=|ytPNxZi8IaV#DM;sR z+W;?evJ?#^Q^6#=C}r$Db0{h?q; z;i=C@Zbf`Q2|*|lmIP2Iz(%&4T-`=m4L(m@jyH$rw{AFPcZq{@5@9=7vqIFjIW4x! z8;NYT0c(=FWv!6IS&$|yw$;+w{p{FwEWAwXtDKIz%%_=1D?;0DPJ3_x_&oQg+72-- z>)q(HaBIpHXRBIK-Q0IXa}FgQv}h7K9RheYGVcM$40Vu|NDF5itTV~5V4sj#*H|Rw zUwm8vC(xWibz)b{TUpm!Vw4TE4Ws2U*nsM(L@}B3%#l}qKx?CTO&>>7QZm(LeI5$x zDRmf~_n2ssDQ*7_p(Xb(X1_<7W9yjn$9Nq&Sb$x?pwd5&KhMH9gU_veEZ}WV>xfxK zlcJ{|yP{W8+P=>hp-<`=0Ko=Eq-;*4G8N@n3odm=&c7KNx{^X!HpOhtUx=;;f{T$y zSvLP-i=VPydgNS^YKoOTcnF&0tRh0B5fBXLG=yP;-8%BWmMSa*GE>4kh5En6Fz!x zP)ru$_|Ui%gIvT|3>E{(h*~6S%X3X+$wg}8?DU{R(7w?LoWrl&6<(|>^l^2Tw`^ZX zV6M3+U8M8f{1x*xocdb)bZc4Lgzz%#T{cIL5)zS;MF=%8mMMcRseFR5q-~Tnz@QWc zu*oKg;*(Pn6KR%3E%1Ucl=uh>AR zs?)z+v`Y|>O7=~>FjyG5 z=M`BV4Sv(vfiKR({f64)1w;>Xm7Z8#lnW4sku5u!d;oniFdcV-Vd$-s#!jnG;Ot1{ z9dQ8OI5B%Cba8@<%3ZRPB!uZA$PCKm#<~N>fN9Z5v|5gKYJi)~i42x}0%L=xc~X~5 z&pk2asF3z8GP`O={z`NeXzDyrztG&IL@{bk>|L)Z)nH`KvFVO>7rd#sh+SkW(XKY$ znAf-Iid6mpUiO5fvgfCtF)EV#9wE+EsbjtEajYqGNLvJ#Vpws&t?LI`UlK&w$vEE0 zfKVx}b>tCL;-NO-K~zXBXK9`~U_5YxR77K_t3;52-H(XH)p$#kpus1{g~kYOUL*76 zhW{AzcG5}2|D-bl=?{h_?hCBFJ!dyhv9P-3DJgZ3XHm2r%}p>McKNbZ#IKg2uXW`_ z-aSUWjgqR?djgn*KB$aat-`Bh6h05&Q2D!hP^!!_tT^L5(~Wv$MdZ2j!-= z*ZkDZU-Zl(lt?qwc9;@T7XC^PJIk=bE)|U9e95h@kP4-^3+)o@m@b1%9*&A{c&hRY zpY1MzX<#79OZDA){}NWm7k~a2*%9^F1PXcc8EiAzUid!XtF2k-9O)cW!+?wSfrw@) z;=Pehfpmb<1GvC^61-2~_&V(!XaU+Y9u8Wek3^$S>0u*8m`B`!Cy{-QyJ>1lo^8Kp zv9@_*WQ9q1QbXv}B^%$detx5{a1BZJYDE0J;vR^`Ual1&^Kz|EvNUVirtf+P-twZG zyY|`R1jKA0@(B^o1g+C<9%PP0HnAX=4X~_zAaJbO`k>j+N&&oVWL(*Dk*vE{-fj?@ z*@+3MjRXcG0C4pHX=WGp(h)6Bm;yV2hHD9rzyFpsA}Wn^*KRUyCl3>zzS~Wl?2#+m zun@O1g8}dXy2byU2caB}x&j^=%a(k0^@wIt7?ZpLDCw?CUZXtoCFf)7F5;<8{%pKI zKcGn`@rRB`(r30v*ErJk(#*U90dae!?%Ig=daYrm%(f<<@DVaylZ>AyBrFm%pG+9X%CNKeKNQbNzGe1;=$YC90fJt7D}c@b?+ zbIjE5fPW@~Ejsaz$jEUY!U05}R{-7J7pNEQBSR>GBlRxp(g9QbS)85@ow5h7^fOT; z7(S9TaXHei91Ac$0_3U^AkTy+IqzRb!wqX=8T@CUeFBpF*y7zLV1pHgSz!O6?Lhz9 zG807;DHPGnn^p!~#H1MYoJ+oGXEJz3rXv5+=Q+pAxoz3oW1m>Q>}l4IDOWmJZldf_ zlH2X9T;cY&d~I#h*lZl`i6h4(1=P!BODT5V$)V=jc5!yN-I3e z^5J&|-fdUaXIE_8)w3r$n=CqC6guUl|HkuRu?*F;8&~G9K=P=fxc`|Tjaya_7w*ap zlZ$cR!xpIKbpTp)d%uAPYsN$qo00BZMufJi$uXQ>^UloOIB|xZfoC|4ea3Q{#kosP z#5HE%(WuTrZnHz(8+tgGU(w`X=#w}xF!W2R&t2aTxs2HyzCpK)K(%mN%OE^F9v)fv z1F2q`?gT0CE6Zqi2W;i8HsTw|xy7n(6hIoUqk2(;0^Z1jJw+uF1NQuthR^AjLgd}( zPFNgO>E8rgYhBb^g>)}7VtFGZwBqp>#t3$ESTbIIDVRYu@g5OaH`Z7yFu%(8+b!OO zO;tv1kQozNJa!^2a@Eq9ONgCqB+!vG(kXebBWihrf5++WYaJbAZ`x(wqAG1|iLTXN zW)oi87)QTS91I~*BTLLn-LmQppM|)NOij|d!)>+Bo%J5bbwJ)VHnoYQ*LKGNqi=$FgDhfHI|Y!6?KBFZSu^Pw#P*IVUC38g(Ok8xf|Ez>0tP5 zQ+inSY1G<#d}{DsY!(C~8oxp(xc@eXdgV16_-_mm)KLzPwbyEb$3 zMg%YSHu4)RTGvA%cmJ2+6|0TeQf)rw=c6<;bGxUry==1>ijpknv`X3*H&ct%-64g` zXZ`sD#a*ll{MF-ePp4Kb_kHuUJ|RJvuw5KU{;Ofv6tLH?EnIQMiFLHdoOYvd$D(!O zw(mm<)_Nhjh|1=e)OJ&-LKnP<&NoF-d7Hw@Pf_>TF(G&9?KQqK^P;U6`>SWmJ)5f(iv89>H|{Rz*HH5T z*Q2MF_xAlq@a^Y4!X`rS_mi%8q?%Txz6*W0i=wkAX?#o=Ul(g?ae5qW_SgH^t@@~a z&*8cBi~aXAR5<81<41e(S4>)$nDE~yS73wg@@H#ev~6;>Zu!^Z1y2XNZ#M9^CGDSI zE=+3g-|kmkJNojUPg>H&n#xVuTGGY}BZgHP;|}GU&DG#y!Vt+L+xYOqBa9<82*)#hzKgG$q{+-nv!AIBSHgy#k3YL8#eWN3@4@iS%c1R=>mK5j_k1`Bg<@Q{(5txA+;W^1PX_nq$>RNG4Z-P%w?64Lk3R(rxZzXD@QUt`6{Q4Ybgp; zqRQ+2t1auL=CI1CvL!-*RHbe$Ybgy&n;Ep*ZR_;KRnaLO(Pkvz_51GkX3TV!JE`+C zS5jF*_JbxMGWfW#`+6PT!>h%^r63lWb`Xkm^1Eo6@pR88 zYQ0tyqXcoSmMvWFsuGCD18YCj;HouItS7C|`d5oN04EovTUE5{;A_4kHn%n|KXvx* z)cJNe@^x2q(nBc5o_6TVcyWdH@QY!6RNOf!SG6`)($_iY2`TJ?^ovkv^n=J0WVS}T zyxZj%VPNV(uL0Ry%yok<%QtYX9#)!&p_Re9=E}b}=LU3|Bvo zbJP}flB!k1!3Uh5#ym=C%w5;l!tu+JS&F0ERNMxyEMjH8AtQ989VRjCCT@`t#c&d# zeZk7yEtb@3y3IZhDTC04{|vm@x@d^H&jq%MaAKW?DgO_kc74D&u7B~NJUrzdokk$( z)G@+P-JOxyK)5s9=%RI2WB2uBxo+LU@T7HCJ=W?TUD6wqPGH7~oe7#pv{J^5Q5%`N z@9AMvTu6U@%PX@pHKh@(YWl0enqmOUUG=0(Ce2);Vj=7KitvW9AY-^iZw{kH?36n9^d{OPoGf5R# z)#{?&);MBn0+lU;3Kwfz6<1PNhT|Iwpz4l(Ob7Qg_g2f-ZJ2%-s{OvQr1^!0b;!=jsGmg$+}tr)d<41@R$tcoQbY83qo4b+bE@8 znz!L^sDqbm2mYAxvu0;Ihel&}?FLiow>{=_uqte_G)dRBNC?bD^I}TOU`7Rk+QB2d zVNyTCyo24VHEr(_`G#?kG{;+*@yr@kz$1&7!PZjTxX4_i_!EAJ`Ovib4{@75%ZN`^ zNYQ1mFDRuaT3ATZMT#>=tfnAVBTFz&P+CiT&avH+mdR#P~bHj&e#;6-vyL#*2yR2<{zqx@CU2Do8S-Zp#xz zdP&aeyf;*PX!R$~{ZrFS+)3iRC-|>0)_gFRBa;g75Z*Bma)MO1*io?k8hgX_N6upr z-VVH+(Ai?gFbETHPXoe%3eo@fV)J<|nX%-Zj*^pCL%Ph6{fTHrqbBdsZh@Q$sODr~{~WV~1>m z&oypH;8>`_0VAh6z=ewuf}0ohm4!a-8uB}UK)#}WNUL4f)n>%W;nqe+A10J8Jz=FQ zXDIxhJ5z9FiAZ9EobMUq{jG*Dj64E@i}Rt~hO9{Sv4kH)4xz09V3iuij2!z!SU5}^ zVJ|Zwb4~ih2z}X2cW}-IQplMAUZ;A;BjcsUT#cbHV_n1&A3vkf6Wq9v8WYf|qa!(F zju=ZRPvXm8@+x(K8WS~w%e7WzO_|bqi?X3zxW6kc<3XN7cr#@N)%l{5OT|8Wu%)=N znd~-(^n5*V|KN!Ml%Pqb&CvY;-avGX1Ob z2ITF2=K{XqG9k#N034_<>Sw>ryy2ZeYYfQ-(I)lClpENGR=m0JM}M%0dxGm$6A@~I zx|hJ>!KpdHbGGfJm)@EH6g>&7{QO@Gyy@;2@$dQfjr+o;U4)=5Es!P=9_Bpq4#=|a zUl}x!0vrLlL6PVq=pE~-7!B11AlLM>YSe0)W1_^;u0O5(EqeI~4$8w|7Pg)lU^)cH zkei;x@yU2H5XuLJtY8~uQgI4o4P!CKITQ(#-{Tdl?ZJ?Jt71<#8SXOo|4wtLfe=a-iBpEh(H5#DO}q6_sGqrCuG8rU_7crq?W2EAk}P0Q)aL5mxP+ z>PSeBIOD_vg}ma?t#>umaIsri?ODXnn% zc@p=Dx9jPjkf0y$kZ<$j_a?Wp!^RXu5Sb|^(dtFJDh0@hI?=JbXXifRr>sQz(NVet zz%=#?{+#f%-?L4^+bN~p!($AJH^gwZ)hR^yTT<$wh~dN3@Aa>(yYp3TG6ij8uoQZ= zWsXn5H15;rAfbn~L7=Jc;x+>x+$!NYuIgYtR}lrnhygMxv1zfY(Rd9At&IUOE2-lO zaUE()-mAPtxrenQh^dhm|;nF&5n4{CH^f=Lm5ap14MOEE7^PWzp?b{*XH^ovaQ?U^6P0Jr| zpmnl9L3YBdPUSSAdY$1|n`gG*UIhBP3O1IA(0%FjtK3f{#BjPQ#p1MZAqskw%J zF%LvFaIb*qa!HElLYrQMPnFl_#46|`5%de(rl*e2v_e@${}iV0>Vy~VoQXL-UIGQp zX|TX_r9l1wnd_NCYmmnMI7!U}+GEK*nq#AnZ=m;8^FjvCU&9C5;US|vdXtRaCT1~zRZRH2+x>CE4IxjRaDIq7Zk|JH zP5)&9?<3gpYYO}TT`t=%exMt0x^+Ois|#@czMUb8&k6C%e_yjj#-5f3+8Vrb69C&G zm2ewwn*AwGC`x}Vvqp~Y;Ki1V;CH7XT3=QBtu-Xe(+!Chf;iDKMT|%q!V=?91TvHn z<*-IyGO~0(_QdDta!64JZ+XrYXp&RsXrq6n9SqZj9g{DFHXtj$x=;hl zwfE`9%QM~Wr$|xg2?v7skfnZ*y&4*%4eieS{IG;--y6mqHypGZL#lj&$@j=saN7K+ z>=bn!r6gMy^3BLAB9qb)gJ~Jwep^s=HCV+xBy;RhQgWyT+%j+Sl5s0kCD{!+9e-~t_r%lDqlUU{!=fD6r) z>k-cVqG*^}51AMA_z=+jjw^$75iQEYgUKn?uUFxz&(f>|DcX4)O|soSF^)RLTjhZ=H3=7*?J1X$K+{w zN+mM@2&= zya!!K`UzJL6-Heh_m27)WJR%T;5p$8UMGd-XdQHh0lz#DLK{bfgabpcZG>Bxn;?1v z=RtbN5gbQ318xi$)iP}@gd~h5BXbD8+*H)5=xV6r03tO$(PAztf~8-lw*>}x!gsnV z<2(s(7mcDcx0vWB2644)j{C;-UDTC^Rf;RE!f9mEC?n%Y*IpY(WksWjDauGT{|9H^ z6s1|WY?-!gRi$m)wq0r4wr$(C?X0wI+eYW>zqil(rJ;wdsF5S^CK#_~xZTI|8hz#vl z?tV(WH4QJs9HW*;^qH>L(j7TdMZVbpk&H}(7hbk(`e!tPH2yHRz~kNPYBy-vGp=mx zXPc?l_~W)6<2g@|w*~iyG{csv~jLNr%?K{(AOZ~gR2RyBeHtp16OzKm`(ru=-H?Vv*f%#hC zuURX{a(43-AN1Ht%bp;Ey!@x8zI7Kt^0yllAJ;$l+41nQF8J9rsE<7nEn%aebAm}E zLpei#gu7m1Ol}?6Aw`zE)rKZdW!6;>h>339IyG&(5nZS@7Cs<(aymGl?}qFbziM8J zGfo(2?sJxm5TUl^AmBAC(^<{>?_+dSe`}%lzb+C%cetj$DLi=DO>OBs^NnUa`(%gD z#WjnfKYVHUxi`@R|&oQ}0PJ7{6 z&7oLUzCC!;!9g3L^p~IG38%&w3$i}!&ak}}tEabCGvyDGGZ6f@{y8hQB z=)(e$t^Qm7_}lb}x5Bq4?UPq^bvi9Y_SO4rk@M-StFx7@OB*73*?(13*MWxZij+G> ztcENiq6Z;ydy&Z7T-TfSn1xf~@qlbWcXxHl@Aa3kt2@-I*ua^s3k*BRTng2y4$p=u z?R^1@_JZ_E2NJ$^kTzR9eBB=$-4WHPByXy2dl4JbCN1|b?#`V1sm3Fh;>8es5xDs) znQC;v^M;lV``RTp=Pq3BN6F%Q3v&E@;G`|Km#O=!gvl7IYO=p>4WDrfgAEOR&LKCN zR+ydaFsxO^qUM22S*F)3mUgZ9Ii_J!@0$)y3glc!A`|0+elgYG>** z6tEPdVCL3hGmAJTOt;`WzB&}z`)4?WC(V~-)^@bC zU5oOxB|vc>gA0Gv<=XMw6;~IuQ1NU8ipY0&0Y`J=Q3kL^4PF}?E#zEoNqf8ERnTUE z`#_ztZt(eBJ$?T*G5*v7dl}S%-eo`A+g5nKCUNR=VDNOR=O|zd|Avfr^`JVc*fZOD zj1>FY|BT`6-x7S*QGZY&%0!U%7?J-8L`}=@q`{|cK_Pta?)xh5SN&^xsMWGNC6|^x zc|~WuHYA@*M<>BS?HW!JGcD3sxvpIkbNenFR#0U_o&-G&;K?+>zS`eml(YYT0C#$DwV@FLHKz32a@nZ!}o?ZSnsTJhnJrM0}JvmM7mV>5? z;}gaab9Mw3b!{;)X9#WLRMDA>^{Uo8S(#o@2w zRcP@CFaLR^G=LE7P~wF}zl++tDI6jc}?S&DTWHw9F6 zf+ZXU$`f8QAb+{CP|j^u6DX1VZOa+R$_hVF=gYijx6i{a$1&Jw$fLLG8);X|JSgUb zKZMw6Xl1aW8IX{E&v_H#YfoTtAjx# z+trt~K`BV!1c{GY(!yT~yI*QGqvpzHgc*DzM(b^J+hT}iN~O9mHjPWKJ3#DWd&o*z z&{BT(1}EfIx$;YW3(oIaXQRgEt1BwMw6v(HmIW8}tN53qEPzUrz$J<3?K6`&8eq+; zB@6o#_Zy*etD6Om{c9oc7_k-c7#OZa@KnbjCK-eggnV*GpW8VQzx|m?eF_RQ$_UjjBqdNJrh5sPitFYG%s?o7@`HsK#Z598|^ z5-&{pKnp#VtzMs~KSD2)M!O4m_X=()m>eIU-c;+(*qX8CUW@k1#y7oK0hwc@t!-!@ zV=1Hl7nr(TU2QV&t2YjMZ8Yuv7{bImtMd}y`zC5*WZTz;$u@DlJ zxn^#UwGW^R1@EnH?l7muSWoAjx)wLxBIDZ*QeiS?jlF?3GX~-_1k(!IkunXCQ|Wg* zR5z_28vSajtlf2V4+!gLx>u~STqYXgWqyj7$r8fhWSt=)U4d5P6rbXp=&9K{*t^utp=8kZgR=N;}g6lPifdE=CFsjG%iGM;A$U*Muvx)N7A~yqfC{6OofVp40W+;Qh-Fz=B(Ef0qCoBSI5amb zoaz}My%2_9c3i)Ey71rwt2V_}n3<#`sE*M~eXSDIwyj+>s#Q@Jas^oQH8Gf*nQ7Z3 zR#(c!_f?wpVq?yj%GuNzAH1vBCW2X<7)D`TVC}x$&3`fk#DoqEdN&Xhwyc^yg0_KH zB?cAE1ulS4*5|rmt0frF)`+O(3B?NtMQHz~?;6uvQg;d%1{;XbD{WL{)m60*0$Vc& z?>yt;P}Sf(1N~Wemcyb@A5i5V(Ij9Bw;i0bIDnJE@SkOyY4E}RFf3DsuF8wmILepc zCv*EH7ay6NZ?n7qy0}3**gQaDF3-Hjd4@Bkt?{M~KOs?lpitQ!JJcuXl)kSeUZKnw zLk%=ICDR_0#>8c#Lx*gO!Ecxk3+Jwq{0BKq!)T)S3 zsErN4F`F=jY9+pG)5@04M+c9nn_z)>*)2N35^sRHc6v~49yxaLS>~68YL$_TAf1Sa zeDvye((o6T$1)K`B(HhYWDY6SANbe|3DqjfnDjmAln{jDcSy0q?=_RTmOxuZZGLic zZS=hDG*yHh0e6E&|FgCiuJh|ERcuCARypWpSY1(;37@~=nsr0;=@VTqcdgCs&xIK>I_Nhp)exG?ta379TqK!Yzk(8u1ghJ+DO3 zvY!251hB^%vCxwG>gT0*HImQmZ9VRvzPf|87Fq-AQ506{r2@viF)WkaaF#w|8Sx>C zuM>sLLB%g71o(R&+*D~kIma!h7v;T*WbF=g6o-QcM37cf?R(-bWl_p&VWQ%v9`>t! zt7>LDGQCg2U^Rv0pk+X$)GVdb+ft-42+M|lk2q!o{MCJOz^O3*HBRlsrpm6!=4SV{ zXKDXtZ}0BR&`cR}JUry&>OL3OdC^-kyh7<+5BE779n)MQdXMFl8KOM&HsXwO_HpC+ zDtHTi9KO{;{z2ORZ&df?X`6t{pAzNrr(F3@RQG@0S7#%8haV}xe|;Kb`K|lu5QLxE zhtOAhfuNlhVW9&l0+slnl%J!y#kD|XnVd}>-Z{d;-2pl?X7As(r}S4ibZy?%s&pH0 z&P%d>uRE}YR%C=0sqY>{+U`&kcR5mVa6CbEG!KD*LV(6|swZ7_a|-gr3SU!0{t;xu z<^5WMQq3Ph@FB{~NtJntkP4&|RiYYOm{KB|^UP3e@GLihWOkEKR*+-=sA#29S$T|u zhOz^LXB=f{UT0lfMzNg-j=Uo6(2t{UFBI9vg>GzlaXxh;&O1D?TU?lpuVvQ;t9SCBi?cj_to)8rHMXCp(Q^h z^aPtD8K#| z8jEzWNfO$p^XvaDwxbH+!Wtv(3I;vsyvvH02$`OFVUvhAssUd{>^#>Lj@mhORz9n4 zO3Sa7&u<+B&7H(a9gR<7tM2;lJGIUDJl&-M*C4@*FX%NjH0qS8;(K0pcDK7&NfM5p%9}kk9Nv8M&|#V}NYBphvc3;J~jk7`o7V zd=T$|p1__q;5G2=EdZ<_%?7#L5%zV1h9^f?l(%IQ`;*s2OHXx`PKyqdkwq$|o{`0) z8rya&%RKcjYDa9av{y6iPd!7-XI72+r$&Z^Y1LM27xQ*jU%4)s$AOEYM;7WKB=RUD z0_SYO&@Y%M1;C1|Mk6K$jrQcRwI==VnGUiL2%3Ua<%0bmsL* z>Y1?1q6`HvhJ(sy=`|0vM0CE~i(bu}5xgJAl_ua#n0 z7PIStUA-A3t9unRKXYbB<-0><4kH$t{O@e1AcXOeo|pS6hu+x-NJ6dR}fd9 zd`xooF?q$KLXkhxGefUUUR?aDfvvQA1$>Q4Ov;mA(hPp)!yp>q^B}iP1ym$2WtLmD5TjXKBN#TwPBAMi*dP2W zZ()s?`;DTl$)#-g<@)&Gv?*{I$)oKN6p>j!4$Pu{HnCR0tk_bOqJX!Y@<*U>_7vx#Z#kk@%Q%5zB}8yyLnze z^}ejksxhzu4LP|zT*C;^ZhG&auwsgy<30;U&!0JQNi$Zu)iHe7Sap4g1yGt>D1kf{ z_%_TvR+t7&lpR>|w4@<4g5dY%@ge z-pH*TtXa=s9ad1W?=C=t{z&^0C=Oo5^o%l7;9OPwSv5#L#VsmV6-BGfQ_}BqH*eM^ zE*tYDr5m1?FUGCd4swtu*dVE!EuD1HcwbdEV2bA}cg$r>qbV}Kpwd&IBaZDIin0-KBK5--15ziD225gRhJ~|tfUfze znTl&O_X0DSWK*6JV$}OrMAD%<46nz<5KXO`)-i`9YFL1QxXBrV-;la8I63>Kn7(=f z4ymuxmA`ilP;JZ5$E%Klg7AW1Yb5xGmhyhcF+g!7e29439*AKqNbLuXMN6rkIB3EFfVkSLlTg^Nq)W&v-& zb(2dMY9mLTelcNwrG;)V!QK)&r;c&~1VBeq!0$c=5|WHX5h)%fXrQ7R0xl&rY7tMQ zc9Fgkyt01gEdtw|REuHuYTtMO_iVttT;D`o#$3$_RCtC#FuTMlarL&iLwKmtDZq2% z69FGS^JRjp6~;e*=tu|r{t$TR#9}K<%*fuwJeIn#o;nrS#f$@!2ibBwL@nV%O{wxZ&iJ6k!Ve?I*(m8W2Kxi9a}3e0&=0d@z)s8vdEfJhJ-n z8T`==^pxz=s0uey;qQK#^cSo`85n#fL&8v19M(GT4<8*z!res-0bm zu;-&fMKaA1) ztDJH8(Lu74C)q)+DJaGaa1;4huxn{iiY$<3T~x5@@F2{yBXMlp-~&7hX~Uc@3hqNL zW+l0!HKREW8l+D(QjLU5?Mn*IAf7r7IM;(DD@8n~^@OUNYNgjxoTLhAPJ3#Zq;B&B z7O21&ftaJgCmFxH!EY?SAY7y1e0}16KoECNH>C>F$_sgXPH{a?gIB_N&UHu6nO{ul zUARN)U)1C*YlD@+Ry>|aiH=Xum)Jqg@sM@n&3}O{bp`vlz>)3b?1R1M@u^ZZ@TmD` z!RT-qL|v`6%ApW{pG(96I!Qb1srY>c(+RXA@cbxHI0KH4qZ=0snx4mO9xlh^z&OuG zZ(@6WwhhzatPqBcd`Zo3I5!i*`R3z?xO<;{0&94C;r2+3IYj*;zS26mv>XG`*vA&L z>)bO>iIDGOxKI|EhV45J-nkze{5~-x>J10fihyUbx@hkw(z&Qkm%xh_h^Lp#{}q16 za%rjH$?|)~A{WlPr2WmC>RG!T6Ug11(yRW>Ee!&HGw`aDm|lWR5kp=F)s<7w0{#TP>2Xmio~QHiP9JWp`Q9q5>HsMo+N<>!Y7Z-v%Eylj+i9@5#q{B0 zhiR~v%r_o`cUuU8HFhw9U2gBY3=prhS{oisNfGulOt!c}>rJ>cu5*&qH9fdC&-r4y z!H8N2QJ{`sO?*08#ZVb)e^%wZcrYDj%?6U*w)}Ke_YCleX8i_uOGcq!dK7e>SQoZy z)Dy%Oe1W&cBCq>Id6484Ruv-9UoL}ZBQ$Lab$|rq<|-g+m}ogw9fq%nwt2p=bwS;o zC!5h8f*^0u?Uq6t4xU?DJT^4*Ez%bXTJ$o0Hk>wRe}cWMHrvcG{I7BKTj4@3#uif- z@8{g}nDgE!&W$>*I*1d;!nM}@*M2z>WadJD#960DDc!91e50aXpaF0VWD;m8S!l6f zE6htd9p^^-+p>wATN(XQ8)AjwQ?Ewi$6KJP6B1e!P0t(9^5GTQ3@6AG+-6E@zgv(M z?QMI-3XIIy$HNnx{WA|8{fV;Dh+#J@2z84T*Jdl7}KviuS(b_W5Ps_x2Xp zC~=vN+BJvmYByi_eM&z5YHL6cmU25_Zv)i16f?_Z;g}}0{Jn-#6d=z{s)NPcG7iyn z3f$qPy!|L1X{=>s7Ht$u`b|AZ`uPkS5?xuwN8mL2>Jzo294ea^!-Sq0tjNny1BeTH zzIV1n+`@*Md+rO{qL-idVRL^YjdkN3GdxQ=nE7aLK-EdnH+a|3b-yX3G_M| zwN#VGuy2qfT~o6CDb}4Q_)v{JL{t-V1o?}h*-E#Ag`QDKx##>ovI@N^!(^#1XKVnF zm_=hOrO#+zy^hf(>~)i7e|cq55q}`g4Go*ZPn<`q4E?>g^(?lfM~&T;IQtu^x;is< z8IQ^Yz8QWXX}(-0`T+j!;r#vtBPevq6bamlYl{6&kbZ#=PUf-EO!rm@y0c13FSMfn zI3ar-Z$DAbI9N?zFUx1tNAJXG3Qpx*?RCXBtIv&!@KiPi3)CKE>qFNFklKm76=GsH z-3I>@pCIO^=9$M3r|I(Y;rULt*M`-_LWtv008 z9?Do3c6}9wf>-%*ygC2v7Dj2j-tKtw@dm4N_fupHy02yB>@(XMB)qEIR&Pt>BV7C1 zoa?GJ>QHC3I%nB-%O%lo@}Ne`C19b3i@}AV)TaON*cjkdjAlbT3xAn|Yti0&W4KF@ z69CP44nt9Ggodsvu?S;SjWU+hy<+J*}y%p|iZ!HaGNm^gx_p8e#^IEBN zZBA%bPk%V>iDcY0%|yj++V6o}-GyrLA@9=!Ca#{4L@#UDmG|I=dwnhIM!UFb9f9L# zd-w&ps%wwdIx)uKD~ZpuiI}jiz{29V=m_pXr{V?3FxS`aYP%=D1K^f!*dfI)Rrvl; zluCtq$M>2~c!CAQ2`mQ)1sK%gwlD7b=N{3V^T;nqACG6xweN4wHQIrh4oA|SH|Tut zO`jE0;N|bSg3SH!+Bz@Nf;y62bzy!Re>_LZW9W{v>JtE4W2VL5K>uuiNzC%9QQ-jqMq~j1 zIRD3kod0Tnb#2`k|J4HHSlDc^+;#knG5}0UZmQQkP=?AbyJtfLL6q^MG&QyADhA+0P}j zTZC#c+Pm2qWE>x)(?1h!i}y~8fBV*<^68#-|ny|hh2q0D9a2`VyAwwVRPwcCGZrd@rxh= zFt}z=p+wNv*AZ9$R${CwN0$b^+gSe#MF9fXr(~5-Cs=szStq(<R~o5n-RiA#`9rLQk^WPelaFrTX%-lWe*YTzk1+6nar5jDAoZaU$g_TqugvU zC-e!@!KGTl?z5Q}2&CNruA_>!3UQuEN#y6sZejgc5LP*l6%I zUbMGoroZLQiGO$xBz{0EAd3Ykt*wB5d#g{ItW|Jg4{=R;j%5mS3We0LBin2cvxZ?+~5)Q@#5hSX;K~ z4V?8_ckzD@@8oLtu0lO;hca3k)x(YrpIq(?lV+ZS%UB zN(Gjc$t%#Kh;}vPn>$Pl?JZQCr-=q9ERBRjldO35nWfcPh#OJ5Cu;M~0uVrmyWMh@ z=%pDLko&^!uWM8Gshl6HD{tK@TRdTE)T$;S;9wB%NbuA5pfrCL$pIWf%Z@}lFUhAPkH41+=^0U=53BG8$5WthGbPvClC{l*Ld3BvT z9gKSwC&6IPXPg!6JaV}r#zRw2QkFKF9Hhd8hVru>L(s7oen+U%(yc$>uBB>gPJN8hA=D5#pbV;83{AuxmY5LW;K zBx*-$Kf~-}eJ&KVCG-OTmrv@KSKRUyI9CjVJi(o8C$LY}&nmI3U1{&e$#xJ8ztIhz((U7>N_Q@9Q zFUXhyw`q&S`TJX1YXNkVX0*-Q7e`Zp&J^mMQQioLH274lg+Mf|p7?f0U^2HDhSob2 zMRI5%-WUm81QqHEs(mhG1;-H554#cQ4wNS&R(&#cD-1g6aQ8zmFkZOn%QbbqoT8Y+ z)A!9z=3P#d3F}7QG9jc%aszN|(9seG@p#6re4YDFLM6c-$0UR#h`v%r+7zsWp1Fj6 zB>jx^f-aIz_X;!j98MT12jn8&8pjLo%%*!@qvRQ`y1n>nZQ^%9RHmrG^N zTSb1lgibtXmEXD7tYA_j8IAWCPdsyaw$53LdU}rna+_OdT$%zLb-qn<+zHpKEOnfF zv-Oz@+l2dSa3|fAa-&D-9cgvp1ICwi6=fug{poL96bLYMSeW?;=Z6{f?wT~qNwET( zps@(Vy%60&e9w=%CY4Gfne4Z|p`iBnv56J$3_|ci)it_^7*dWS&j>DN$@HVLXJCV5 zm~LZ5_oTZe9sw}InGFiWSbv!*StKi5ltTo}`d!;~b4J+Um%0Jp)a=q`1Z>OG3$Mqi zf+KR*jSaMLJtOgToc3W9Tx(a0r)9a;h1car2y-dFNiw(bwt^&4&|O~W41p_?-`uC$ z)=)D%lxo)JbjsST0fP^rhKD~Flv`0+VjNE>W0V|mX`J|LK_4G$Xt3fk9|z8Q54)Za zf1IZPK)c(62x|Mr;ZCZ`!@8Xe{xY~%HYGNx;o$#B8mwzNv7TVaW=6+_q$!_R7EEUu zOK0J3qb*+E2A3l^cz!Q_{N0D?=}wzXpHBQPdk~pmePx{Nn}}uu9?0f5%?WA*c6oC9 z$xGFU*BdhDjO;^vsfK!+K?|%$+8EphZ-SZCgGhl)JQU(-wanMPdI_~13kN0>z$nzY z>jl#JScYAkWa}^=Be+1&cWbyzHqH=?63i}g9dmpJ%b?DMA;7>OrmAS?Yea6q-64p) zg(bdb>(Q8c3M{kjMBg}!3|YPWUo0Z-WbBx^a68+SC#p~{6aCR%YO$m2V5SywK4bVC zyL{t<>caq!P7FymqGF`j;K+Y;d>T1)vPUi%QPCB_FsloBCS8+YlQyW;`P*iy#CVFV zv(lC5rBLYn`yFhyefG*hL=CWSQ$zpITHiP4KNU~Gsm74!dSthLF3-BwTi1r%n*!4r zrWda(jx4O5*}^)ScQG#@Cog^mE7@(TW>wU`M*)lZF?bE;8UU<%Zeeu7`UlEZ`M6qQpm?CSCoHdqP{}F}gSQI+kvAxz3;k^0?8UYL-N~u$F_A(< zjA1_QX=%V^xs;Z<*lhawM#$ZcO%`!aD_f@Ha#?0Fj?&ZjsDMg+9D&>0D-%6jWw{m| z+~5`WgKD;Jo@Eu$u#Z=Df9SdY@)TNrCxz#vNo}Li)P0axR}{ruZT_Ni+=S$n8QUN% z>ds2hO$Ag+kU)&*^3jUBlbU~Z##SZ21W-yBcL*how>D>XXyJ8{;QV+!x^R;yh2njb zNAm{CXXYwpn}!luSS~>!rw3ap8{cZxsNAF<21Yd>hwW(M=shi2vSN#zzbP=JAN7*G zov+5_?0~z1Sx<{JHqDd#ed}^*&QT$qn=_t;A2S5?P*&P4InT_KP>2bWu*O`bMk|;& ze9Y=i$qAFkG7HU&)TCgB6%WTXbBr8*%*-z9AUS^^xn)g6foMl7$j8DPt}(Z>V?dfM zC6Md-_O#AkV}{dLA8&~-DBQe9($c=o#N;t>7Z-5`wx{?diZ&OUs2tVkh+F@DO?^XU zDh;|q7u40$R_Co(Q;GkflLE@KiykPu4EL2&gGeIEbIZ%?lWcw-0vWTNv znZC+n6a@2{w-ZmNoH_v0Is(p1kAY2(+jd=wIm#Y99!JLv zEP-%m9a1^QG){?V-bkkKTfUArj;$kOfTFfTa2oh#AHZ>;LenO(YF4n~DOWl4Vh!=J z40@w9%MN5b`Np)c6DZHF-=Mry{@HOD8g`f7%X#aF6txXagO>WRQn6_QLyA({q*a+Y zSv>wk#0~zLCU&@~L8=;2F^vPJAgopWV=4u5G);UNV(Ifq&baZX;#xeN#qD zf`eAL11gz*@lKx$y;GGJNPlUG+GJghK;7`+4JDyzu4UL{p9&wZ7xnWc#(bYxb;2;b zH?^fafYLSk>Z=efhs`E(vsltqrll1fJ8QYi29W%k^TI2eoSVuU^o(G>Ia8AKhRL}k z-M7R~cjVDq5l!{&(qL@cmRv30bjiON^E~-%{a%EI=TOCdI}_5 z^0*z7Y*{i;|D>QRaL3KfqcD!rNE^ke#j2&YsDCSf^oKh3+Y_4DM2Vo+1r8^P^@;{gzIl_;>V>e8d<^Po?Sb6&$T7w~ z!z7W)*QXJ~jGb>ZrIL93;B&a)sAi2eIqI2K$F-I#HuUx+-eW?tSsjb=ZNMU>%Fr6j z;@Teh)sJ{FXNFvU_QYIRm^LwbT_>p&ZVOqNVMKy#&AOeJcM;*9uqWwQQq+HqTjN^E zpsbW58RT&*Br@rbH+64X zOx%ny(ACu`q0wEre`8i8p88Fbr$+{}Via)fP-oBRI7bN8JFvUYgQ{Q4$DNbDqz&{9 zyr9%a&~v+d;N3atUa71ek-sKx`%GUn!hfrmH%l8ziM-e9W|q@~71aq2A5eLTei`Po zB@*hiG8Qp|O>t^H*;&iw3ty$&mc=j%L}52KPU=^Wh=9~i{OKTcyDU}--1PWb(P1I` z!8Sf(*rclcx!}2VhVL?sJ5^+?yFKZMIaoHF3#F^8-W5o`h6BBX$G-o~dgYGAHv9Ka zpq2eFzqtO}fo5ZC^k43||73o}(OV4AAq2U6hl69r^X<1u2JhsdU_ptuCu|ich zk+EO9Fp3$kaZY0;ZaX-xPBFxW$2eB>N;j@ETyBq!|6{H!i^h zAhV=WeOS2AL4a&bK&<>FQf~0s>-E@?;<%ZuAY6DNDA#!UGI}Y{r2efTwR@>UF2~b?3ofOk5@-Y%RPrF7>(j^jFpdyotLCOZS zaK|*HN;)!)W#o4{;!InNF8YUW5=0%5^uV1SwX3*9*iCt>F*8bKKR{)#QD3gY@&h7c z75g5F+AW(ku>?#@EI)!FXj1%#d;oP8%&UY!ml%-$v?a@V48*n0elO1VBsNh?C%L_X zoi%i^c=a7ufLMIX%+u8YRf4j*_7 z2K5R$0%RMXen1N70w;Fq!A)ko&)LFCG|{4Y@)e&L3^^g|XkA1F{Gb;>xCIzXdm3Ka z8W!A_yMx2x5$1WO6#Hm28tiXFXJ>oocCJ@_H+znV^)rnJD(q1=QRq+l5N2^j75b#& zyud%W>`X-9ng>PLu=RXT7|3t4>2~JKvjJY1SojA0`@No?iFG=dlZGj#dY~U!l&B z!v5!fW^s)`wNZDPlGtCW)cs2N{BY`#II~!Z0;Y(fhj8Z|lvtXq&zdQ{_UH{)=`I3W z(Q9^N#hIq#Bt|K4{r6{9*23=vjx%z7%>yHro!jB2BeA4nRk6eTPUrE2YxLYmxt{2T zX$ix8o$R+^2~{aW#BH(+hCtsEZ7#*6T&)m>AZG^NuXwI-*HENb8H{KFsXl-ofFVbE zn+86{`8S7lSLNTa-WU?TPf|qqw5%mic^!*z0&&+_B6`d|!>tK=ykI3=baE5LV|5C{ z(#FR=JqTM(ZNi^rF)>cIx;NhSfv>N;u3WC$`^*8=Y{YP<`=PRx!qHa(PRVP`9sgH!rq7q6CFPh(!ndYw4ZYF1EM^dp718a9g8L%8 z)}V6}e0sc9&zz%?%}+@dKB}WC@%`&&Ax!qoSRzP(X^0$P9J(=zeVP5pCD4N4hS7}~ z5$^5m6b)^yd$=P;g$|s(}w5=BvDgM}HKY@Sn zP)oKomP?kj8@5%2BIRw>|M{FYYgLOJz?fXP?uf|1A_w1d$IrdQsT)u?K#^Eu>Nk%4;q~yba{BB2s1b{JbJMrL(D5!$F`B8#H+i}erY{w_ zY7^s{cyV;$W1;q)rHz}Dy)C1@Z^HfV!WE8GQ+dHH{r3@_m5M}T$9|_^nL#`Nyp-A%WeFSqI-VuH0}SdB>kW2F$dj$ zr0{ynjUz5>dUgeo z#JMk;$DWJ;t&Hs07;&Z|7!~ky1B-v_QcKijelocG8oM|H)+1|d(A8@|Gl>_UfQn-r zI+E|OQ<6o1=DCGNH^7h+L}MJKYVR@ywoQxsJ47og9g!Q0RnoiPuDd<53DwY7`-DCN z#cB1SM1J`p`(YFTQIi8pr3C{)ymZYfiNd3Jkc&`e8t8#SXm6=e$xIcWw4yw~IOGB5 znDdSQb|F1y)76h=xrLS3Q_zDg!5k0M=H2=^^R~gJgkQ5msQt&&1U9`q*49Qc# zq0bcTn`*3lfnq=xb!9{Pq-f*v)H860gN<#)3@!iBicNvhr-XRVLc^GRyljD3O@apE z0$L($W8nhKIoh_+6?(>qT&}+sCngGHvJeDVkLsZt8zG+waT5Ts45<#mu0C1TfX0Uo z=%jYnP-l>83jjCFL1#C4zR1j%Bw*^J21FkCoTXEPqIX?V#8G{E4kC-4PG~RkBWx81 z7q}LwXba3@A}xL|PyDGgO{DryZGgX!YO0-{S@cvNK(wrn;1M8_Qo1NP^=Eo$6GQBG zW=@XEIm}`Df^%*K8|5tyE*FRUgRS$!{l&>HznWENa`qBoV`-8&kJK%aFydHPXg=h~ zDg)gdMC1yP#gF9_lpIx%fR4Q}#%UTK|F&zvqZEK?tt%fIAV9-dn{V<8z?4qYNTN>A zf%qmU%R>y$!z#+edwKQK#`aP4PAtq{-&xgP3V_VFp`yp{2vP)X26|O z5{-QfEjHcGLUu00+sD0ayW!oZk{okMru!)33~8@$Lb5`&K@gTC^W!pV986>vR31wZ z1C(ZiG7Zo}?Vx%f0Vpy{+t3Ukmx3Mt*Fr2nbExTY$q9QZx|-mbRq}K~7!7MHCu9eK zwqgt|Mh~kgUv74hBQ25IA<}0tdbX`LOCiF!<}lprU}*CU5}xhU}`n9JP|Die~WPjOjIO z;zj@?lV?=lnM=JqpxaTCvzfbxA68io1SY$%&QNgKfYM)Tq;d`#rJW!T4dM#folS-1 zDRlUwF@@tT^&Dv)64R7wW_HsDc^tIvw&h9QGn z-_eIo&EW5K&iCOxkT44#I1}#caSaTB5v)a8cJN!t{f^lc1Y-LSXHFr87 z{zbpPE;B((`^_B7|2Sr}FHAU4zcl z7?r|#sudqc79@}L2;HCTy)`wo5eQ-o+^-{ZD?F2E_x7W~!^Q2g8>;E2#EJ|}Sb}6O zEmLdE$~4V$cBj;h00m0ciss^?-b=9aNv6L#kTPMXNg5yDJ0D#OQo&=WYpaXnWKddF zMIWCX4XB$fqvte>jTSzHwasK}6lCT7*f9oc36YryzEy$g;ikgqBAOF}=Uwo7Zfi3$xB3-qoY}j- zu4ePXg7tk(I^^@`S+yoTB2)%e58wc|)#~xaD_-b+E4@Hg`AWtnZC6Ed>2wL zv3d2Z9ygG%+psTpyBBRPFWlxqO<|k-U__}1=my=+VcJe0fmMn!c!Qwgj>i^21XE!yDi)D6vcj=)lyddt9OU2)aaht)#e|8TNHp*m!L37g0++s6%sp+uI zZ*kSlp`s8P^d?Yl{{zw8Xj9|kyGB*yeJxpAQSZz9LEDy{W#k<>Q~;2-RAe7D0>KtO z4Z|WYE^8b$;Qg=8&I786ZR_Jy>74-5B{YFR0OC%h97w-LhXrA83dy_RQ$*h&%f6tjSlQVnv*_#M`BJ^BrpBIki z&XO<4ff#I8M6S;Oc?Y}qEQCRw`H4KZ*sqE*xe}YHr_}mz^spOO{GkziC_RXuiVGG| z)bvVKVs2tZwCbp2kUVSi*47j5^`?pKg}KZL87 z=mR3lS(*=rZKXx_IW2{zb4Nos7pG(vr&gt`q8=SO;X6xADA?IiQ39 z^+Qn)5@_hv$X7j*-%Q0{RHJBmAM*N(!#rrOedOU49=SCW&G)U(To_pr_r#tO%)$Eo zBzx5_wi!HEs+=^Hs&AYMF!6os1%sF4*-tFFcKUXJG##Y7&cR@WE?R7dN{5z|}9ZBb3CrX2a1;OZ-rL8jpWP8`zUPwt< zPZ6S~tFNY`E$HNoKpFfs(Gcw{r~Hs^A~9s^b{1z5Y>8ql1cmr6z9P@N*@M(Iq2A~c zJJ`%z98`Ns%Ro%Zl&^T>YLq8uD($?!wSkPO`_2xfK;wqx8L#pcmX1^6kOEoB zs_i^xpH~!q7a6Jxvv7g0Os;Zt+N6Vah}}ePbVP#_Z{T=MU?a^RMqB|(_SZMuAtd+D zvCB!OchNGTX)d7vX+V+Q&V?<&nS`%7RD3oP5)uyy4Q|BDHdIoR-F=OmOK{J5B|Y`z ztqpC;{B(v39_%f1kwO%C&O#&&66us4*cRPi+qVg1{(kEM6qc`W5O6hr!*y^Nu9Q?)XT7hoogpk%)#A$}`ChV&RwTfP#I-7Zs`#m5zlWJ< z+8Ze=ly##cE+ne9+^o?#k(< zxIS#O=KfJ;d*>8TySaQ zpA3B9FHCv^H~L(%CbM=Y+>B_UUWlhUUE>Q~B?k*RzwIIZfis>P0F~e;xb4Z2TGBL& zetNO~{l%+FkzI|-2SU?1$*L-b!JZ#zVs$(5iI9bzJve=isr5oS^m~Q(g2{Emss~L? zFKyG!>A-YN1h|HX-+61J=x4%>oB<>0x-7Iop>TwK!F^h^)_U}wAiHvxEv8@lbXM=$DhlmQtw5&?5JKN7 z{^vgZOF{LBSo7nA03k;Yrgf5(;uNSJsjEJMQ&X`N+^SDMzqW`Txh^>%NlXF0GP9gC zD9Q{NNAq^dO6}}&gB7S|fQf8w_o2`DDsZzpW#186jHj;TF+TfOL1fH`dN4x1#iGYp9TUztT+HLAv96G>O%CHGWUXT8$fXU$VpT9n;#@&$(Y* zywCsDj#31HE9C&DO#{+zx0&_tJ?o-==9Uz#W&?5LC*^#zsd&#+(vF#`UsfK0&e_TE%BhH zjUeo1mY58aO`M~+oK9^&?)Cnlrrr#zv++QAearh3&evu*B&Vr`53wR~b;Tz*}b1$;MT9ogNL%3`REexA&#^ zcpImf%9f~KiS(B5$kX|9c;?rh^1Veai4omH7|`qKdJ4kc0cL0AYGo&ga7Snqsu%Hw zbs%{ob=o^LK57bq)CF2Tbxh*?G z3sP@u(R>BrJr=th^u#o#mDN&W@yX~@hJh3di|0 zb&Wzg@(f&-#XZuehQP?*}p4_RNv- zH5-56!~Ql{nl%>c8B8`mq?D5tsaef9TC$*CaXm@ef8^`*2I_^Lcz#fs$YWLY_HWqy zsNOv0Pst8n6k;1B8pc(K*UumdKZKErGVEz)s0*_{{!Tkp-`sAzRuy7yputrH4BZe# z-pM2Z-p-&0Q{}JHjx~6oVtZ~=+}e>w(X;tfOEkNAIVZy%1VjO{qOUmOK+sD3mZ{6_4)PnPh%OA{lOlOG30!P~%SCpGeq*;Y@+}82(vY&c4>g>ny z&@;igVvLuy@KH~EbwbNG%DG-r^}a#UyRrD5uW8!S)xT+WPUvO67c!;7v6ZcA8rSyx zLzBB1^l2KkBvWzSbw=lBh?oijYm-VUt<&3Hyz>L1YcygCb=RL{p{4O6eGcPl@LuIzGA{bX%6hb*b> zAAiUL0$9Ye6jzg3cbs$Q$2FNNk77JLRF>zi4Xu|t*XfcO+#X0ERyWm(@o-}c^v1zUV+;?bWNtn>lvr^a zyPTqAMRC`x({SngyK`A&YiSp83(7@ZE;Wm^2pFa&CgmgOq^|EMxe|ZG6;8NJ>tB~v z0fmom>U0u0#km6H7i@xFs*|sd>qD?3Q@+1l<{M)*?tbWZefUD;xe!mlfo$sn&yB|r zF5#7Ct6WgRmGn9%*t=I6Eui=1BdaqGn|S%)mU6@j1+MADYdCLNEY9GjO#R6KX^E*^?{u1GjMrvdhkn3 z#!LPoWhh69dpjgk6He^>*sTKLugehX7jziD6F`r-TV)=lU>I2g14t&Ej zCg~2Jjo6`A(;pbf27N4s7(VoL6|pn#%PQ*vf(=7DzEMcms(j|WQh2jU*aFIKV|Iml zg>N^3S z9e0MB%nzD6DV2ftqCUIpVH7c*+8o_?EVwthYi9|%Lb}}LKi{b*_nCJ}TL-egEmb#M z65R;5Jft@_lpSW@``l9wJ#<;AFWRrnla5>5MukyqOhjfdYnHr&7L;>)eqnDd=9(-D z)b4}c0o+3A)G#$smZ1i4qx3wai5Ar=m>1>)VBY3u!PufxBHRI?M7p7F@JC?tG)2kv zEst=%himry(yH{`Go?B3(lsj%vZUB2tF8iu)j2#~IqO%G zO1MiYCtmheFsVrMQ|>KRT&gC=q1J6Bkzima%Wgmo(94E9Na(so8nulIFDZQ2LV-0FEk=@rqtW!55^2bSr( zCY#$%t_lP#G^yRjKT;J9!;e`pX%_wJSC{H;^2rMIl7#YeHh(z` z6xLFY7gm_ErlG_%g=^+#-o2TWRRi@SoJf=)=W%{^MsB$Hs3lnK!57<-w`Wx@FV-3{ zgV`!o!Z;ZW4MlaaXCR^Ao%c)Zw1Hi2d9+=Y`2Chg%(C`P!_E0Lb963<_f3HmxVb#l z**V|4H`Ze3&wh8;@48#-Gu}~rc!ykZN=)%yn%kDN*VRXUXDnvT9#rMud`jJRBYg61 z);NP{k)leG1ONc3&I;G9_7r#{O;C?}wA5Li-MXL9yPad7I%5t7j^qnnz}jwq&U8Td z+Cw?XE)hQkU-+Gg?NR~bR2Stm+rfs-0rR<_h~TuyP01ZZhqcY>QEe#67X0~>arEiy#^6SDupTSrHG{gHRe%Ff|8 zG!a3&K`{DvBGj1Hq1*Y-GzW7h^S|Q1F!weYUHixxZQTw!$0YYJ);XZ<{iAiilnVNp zxl;&%usW3aqsuj8{aAlsk^VgBz?VNU|K9$~4f4<6<37~N=F`xDJ~XNS)`yb*0c>Fp zhnwHEbpB0imT1!w8KYAN&0WI6I`_j&^gGhOfa=edTDUkP?BTz`{aktbxPJJL1?jKE z{%72Awd!92t1x%_XY6s7vmXo6pBQcQpW5?p?7x@y#-w9b*gl~ToR)qpb((tHn9`V~ zs!pVdL{GV6e@XwbHy(Ey%yhOVBI+uC7Wp+}91LcA*A@YT{pOfsCTTsv_o$v4kD0O+ zv!O8aQl5w?Yo1!1oft@KI4Jxn@g7P=EU`08otKQej!`50kl z2s=^P)BA5#{uR89xht6SuunvGZ~kv0|351mQwTEz{Y1#d>Aw}i2uR12!i-Bkk*Y=f zw^FC*e*cP6#%EcgFK=|uH6*AC23qZ2VT-~UDI zpPCpW@aX3j{@vr56I0T{PUA-5Y-w*tudi=u zXX&D^Pv_v#qAY7)#DLKANGkT2^~OXVnlqN)n4Y3sC}HIi9yU)zvit0t-bx$BO^ zN0n$+g2x5k|Ki1LzmpF7*VhOHT0+*V{=xK=5C!o_N#juF+H$vbG*u64hCmTYjsP4D zcXL;R@u0R?;JQ9gPTgYQ7U7}nx_!nVh=cZPCuo^m#(G8`1+SVB&&pWv8H1}#b!n~m zDR0w5L3>HyeN)p!NRlj?6cG0LiqJz=b}6~jiCS67oHsRQY|!F#J3inZx6+M=%a_|9 zv>BYVr7ujX^C4`oeF+!Sb!#Y)0HM+aF85Za^>vxsm4_ZP*E;+r2!MjBI>5Q2H`E?O*b0O6KJB98C0oL$w4qKUVeql`(8WjS}PzQSQz-9qp6*q}^T%^>wxJ>XVI{P5v^_Pj>P2i1AP~(fkh7P9x9l{`7Xn zDb=!;l@A?L)?iI>=C1Qmnxhk|Vd7|EXP=k;v*4`d(GcQq67IcMsi=LCTJd>|L$}n> zy!7Y6Y?u$@j`WMjo8JMX*@C-T9*yCnh;zj71s0Y+_N_@=kHYxYV(N^}-f&J-S8C!< zu1n6TfANEXAxpRJA3sX|@q_GtkZ!I}MSzi_JLdT|>T+9l z(rgukof{<(`8^aJfzt3hnnG(RE;Ur-5$TlUKoz9}sWQHI5YiP9((lb`VFUs(fE}SP z6CLwmgz)8uu3DRf%R`K;T_2&<3uec(M;Uw}EHQkGpaw(`sSF#8rMu+Pu&>HI}=0T2>3FKD={D{2dX=OQ%CP$ttZQjp_Xs!`nsYg7)|WTKJ}9bNu1^_&w(7%5Tr69(0i5`gbZJCyF>S?$0mx zI$&anR%&mvF3ZJjJ)CbEo-|2_rh(@+yvnX@FHz3w8PdZW1|ZtJ%j(-7;LYHNg@c;1 z5_(*^7=5nAnh`&&y}U{v5zbtx7wG?n-0E9OhV38ZUcdkVc>f#ZX7*0DhA#h6gm_u| z!T&&=@_|p|n4f}iYT0JlC4;pIXa}LHdnnY(Qj7EWe4B<~V9Or+wz%ng_3A2i=P)Lb zgxIa%Wzw?)VWJAhtjow*IkMJ4N++6>GuXuF5QxLTb%a}KiQ&73suc#+szw-OgJ5PK zCG7#_JZwz_4rnVcGxZdb0)Py;JZwO8_{nEoXtD0Md$?3=W|dE5+>Kp#F2Md{5di;k zn(w)i0zxB;vU>M@2E`N3ez7oUK^~Hv2Nre4`AFZydhk%j0*D{oXbL@5sBsu#vYFTL z<>LMYKj(y}x1H#Wz4=SduFysJ()A2Bzq`oEuRSUkZeueAHkQ=1VJf5kUL2)EOCM{S zcD)8J%zZR}v6nUpu)Hd1IjtjgPIsFEPF(83L|kGWV^!ew^V_WEkqxtp|KAb!5DSBq z{TK1Ce-X#|-y&{dYUA*qcqa&212H0m+|kJ$LwkZT}*qjVcvY|Sq3^duPl zImPIBWY~_*mR5D0wkD5rx}~zQt!$N)EZsTURPe7QVLhCO6u^Jpv6vz@;VP~R9gVRi zarhhKiZ`KHoDGXpNMW@y_rBM3NwQS-?9!3ROUFJnVf4ZJX8@x|k3NuQXN^T@Ust)! zm12YnPFA(Vmp{=yK4u1JU69RE@DE04x*H8W*)2-q+1?X6(xmdFOJFruzoc80;78V* zeEvef+|Z1uqh@l%T>yb(pKw933FYtfEpkbnul<*INDER*i z@f{4E3~inN0nwu_Yrn;T(DSJdvl(PlU4vim4=)xk+=ktz0X_m`D_FlQags{bLXuMR zdFd|UBN|c6)n)18G@ik3k7v#?ZN2_AY=4hcE924H$l<9GiTYQr;?ld<3m zTeG}h&P6)NuQId#(Q3B8UmZ=U(1c3*-B7lijyWA|$1(Yn1@1WVxxfXDe=iWPux?H| ze_H!Z>em7h(`kozDz)A+cP=^|7MuO9wxk2dqq?U`q&c3{QN zPMDU$H?YA;&#BDET^iO#LwSJw|a`W086$kI%VID<+5qx8gCdw#MkSzD+HG4ecd z-q`X<+eUI`1`iwP#IR0+Tnx+MmVT3LF>?%1OmY@*{O(0an*u6v)4AMutHZ@I8alam z+h@?4Qof?YIz?XrYc9jan653sC^~*J6-TbsJJlG(O3H%X!x4vww30+Y*EDavnLGYu z3KQSZ98_9MaF>Yd9lZPi+}b4FINp*jvuqL_D17r+k91`G}q0Cl4q6^h| z67z*ZH}M`*$4zA${=y*m6AmwEUHrr8)}d?gm~dvhA*S3AE$705ZS1Pmj$HPq;15Ca z$eL}kz8PJQ;1=_PA&{S_bJ|!Ts6GAd&6NH48bq)2yl#b)6E5=l3O-*4LfY(49sH(Y==Z?9F5q6Cl1A^6h}V3PL8hn6 zrT1SbwuhT9y`(~a4S#EkOYD;0hs+h$$z+9#<-e;gl!YXJ{*NlAUIig>^iNZ7zyJVn z{})aD=U4vu+kd${q9kkm_n)o(m&->6*fzp-&|VA$VM5AKmR^)26c6iFYN^8#a!r)q zx40fXSs3IjD6JVuEc*6lJ6-+{(WyH9C9Ymd-*f_G&h1Kx)or>4{G8H66xLMbEuoYX zzy;!+BdrIUuTq8g>w^|rBoN%eRqlDQH&C^R@_7#E0vVKJ3E#0y0GinOO&}lfLykYN z;4*f8t24-~cfNoi&vNl&#l+nH?f8(?6{@7P{KLHb3E}41OV$@-fU<8_qH*@dB$9tr z+SVq6VVftTuw%6K81Ew2Q-!3Sdi@P-H}>ZiW7xaxI1Sb}R>_s1Zwu_Uq^-GD;=-cz zjUgtV__*cNSzDYfHnm0_dL@wztQ&$#6ND~HCwMMu{VB7c7>opNgNK3aLhusE>*-e6 z_z>E5eCxqF;HOW_Mb-!FcFFBY#6fY0oWt1QQ5S%&(_$_79r%NsnlyAh%2dY}ZMFKd zyi@#we@mDPT}-gZ zYt+K$HU)<^4*tFmZTh-MY&b`wBX~?#A=k(wT*!AwM>|v8A2xjbN;AprbQjX0zts`V zBD+Ipl+vdeeYE*Dwf{;sQd@S5bVU`_f_#Dhx7ORuiD~iuqlM(Zhx~t|$N%&~wx%wI zCWbDCbXLyxc2y@z06-@d3YY7b z3lFBhc=CxziFt*Ud4Wl5wdnp2YaL-J^Ks=v~@l9-eK8Hma`BwAR}!ifCi(@1a>;G&I1uPO&HR1WZ7$l zmWN(iMxf@`i7?VyTY&fStq)5calRt%{K7yIQnHBu+doUZH1 zsxI#4l)aq%)%c8IhM^Z=MaPgbnX$c{v&;VwC9WZMPyj~cQ{p`g z5k(+jnFR$g5`hazE-;Wz2pb&D>2lm!u79n`U*HSi#_Y=`?vp`ByDclbS#s2IS^Qz7 z^ES`P9kFYRI@Bz95X*2b227tTwMNU0vaxjp_yOU8P9OdzO zO0I#(6PlO0+KVCQE+ASc9TgUOlN|X&@S8Wz_xGJ+lKrw5)l4)N5^StN{;Zl% zcAVjj#JA~Oo^49s#NG>52lee@=JntV?7uS=)S0~}7#aWogYp0J@2<`+_O|~qWmuN> z*d5PZzM$$rRFLtba%`e)U{3?C+0|Xv<^odOrqjqD9nBzAqGxqcEubf9ptKxWkuqb&ns zL<5P8h{j;5$@^7Ho`DP`L_pBy3r=4gR>K3Z)o(=(K3z<;M+(rs5YO!J5xWP0OLNsB!bcyxCrr+3bRuY2M zQtC594Dn1kU`~lK2gk;V#_QV)Adyg*k|{D~S@vRN%&^9IBb619I%7>%3olu}%7cFV zhxw%LusAt)ETNd)#T*&+WSFz0UH8mc$o;_shyH-);kD?RE{6(E#?^HyJfIw;jP$NVlxT8p-*|LRo;#c~WA&};1@v=>1 z{RmyiJc1;m`wc2Zg8+h6mrb#_RUDsol5GQg6Bq)CN}ZZ9U!*O5euMo+^ZkzS8q2Ya z(fI|J2Q^2@flrdj|q0VX|RIYF5>UBLM|ZaG{2|*#%2&I0f4HO z%o9!MSF{4v!|Cm;lH?UQySfU1yUrsf%nu=qT*?DueyG{BGduQJlxjqKOU=^D-7Vf{ zEVjxWPm9EbZuuZxp(D~hC5s?!wHsN*8wGwSz%JY*2kohMikqk=Z5r3jft&ai6zL9G zLkqisBa$C$jM z;2&;Qlc$8MBA^W?sq`=jO(6{%J@edtK}|R&bYk^`Fu{fLR~ba4{0h$cj(2>BRr21M zQYGGhJhYIWk9=~6LWuL{qzbP22_exV8vD4+j`}RWx5BQn7pMGq!~1Cw)p~JUI899C zDQ$FAyb9D^WI)*WLali^mnpHtO63EmUi`TlUKH1GXsyIkE4{J>f1ba*y<$n5t5vJI zy{5#7G}bA}zyC%%v7glQA{?WnCD^WO9Qfe%Z8FyNUgP(n&Ajl7 zWk6?|?k0uasE}=UPHUqu>QtK@9g<5=Q(F^&YGkaH3A4m!I66ma58YX?iUR{PJCuvU zh1v+NMu9uxlX#4fs0?Y4Z3Wv@X6A^%etW$sUWJ^B*D}&XK+;h-k%Tc`)eH?ZDq%f5onb9>&GD8)rBG>Fmv*a+?|19Gg|V`n zo#>tlN_}*LK5cTs`dKdy^EccC)Y<;(HsnKEhjrW6RZFzYZ3|^w;_Pvq9&VEM_7Rl( z2j@fev5f1+H$b)tq}+3e>yfHxl4Hm2_ye9P>wb>d?OSqXGg&n{6*p@3PA{P^j7ayg zwuu~n@|t>|_pif88kRERid+1lEA#<&Q7#Pw#Vb55dcRd%1erc|IKw^>Fg?cCd%@#wh48fr~4w zi3@E-l-~Q%@*P1}>;-D^bKsx_zynM?LaP9FkhGloZM~8v%Qr4$kR2B|1j{(-F_R54 z4Ry^0EvNNqs5}`7;{88nXh)pX>oPa2xnq{Z!CJml%#2Q$Tm@;3ab-XoO;e*T7VBnb z-gI!|hmV$%135lOgQz>8ra=b2#%IULV9oKU-&4hUOA_rjXi}wVQTEum2igOt;VM4z zz^I$3tRs3i29GG0Lagjfh{ipFU<;pjZnSF><(8QM940_)U>;>Hy0(* z?qi?|zf1)I1@U3~}%Q z;e3^imY!}U8TC@|dTu)={PHkecw9B;d96}=&girSzJ_ketd_mKDQgWmF(vH7Gu|AO znzL?9@S3za6@5SdfC})k(|b1|$|}6`{I_A@mZafA*|$`o+tgu5^VkOc+sfnCU))Qz z*Z02q<>|kQ-@D>#F|1-V(faNLK5aTSZ*Aw4oj#RN0g$tcoFzG~3Onb$|HnCkpPDOo@8Q$S zqm6s*f`>YLLC>n*%Os}Kpc$3*JJQIY3v!+JBrR`J^j4ppLwu@43>Egm7!+|ushtro{@0>Ivm&YPq z{iYdDXrgI zP+z8!#&wP+JMl;vs$XvH!P4@BN59DcxQO60RJ97fXD;fYu0DJ?X2GBa51Zk+zC&ma zyMw>)&b0L*ld>-q?wwo840T=0<9VVjqhx#S!R*jI@nE|rYxO(~>}hTa9{oagmDG5y zS20#6KDxNS>e$-OXUL{@e&4s*QBCC|9gQ~Wg*Id17x2IB`!Jwy4;Tml06H810Q>*a zX#bn3y4aaI{l6CUw373AUX)__Hg_ zkSmBj{IK80l|ZH5GUf*y8eGg8JcW&*2)1UaJVKE7XN&BXxS5+Wxhp_P_> z$647Omg+Qyst9|XO3#M5!Wsc~WkfJ0cA;L3dDCQrxl#$6CWE$(&Dtem5e_b|muoVC zsY`j)QFSlQ<9j>xZ_n(jbb)qvN{*{a5=6Ly0}ipx z&uaQpus^3Pmz$e+NSegSY*&~uua60&PEpgCRO4Wy9^xRyS3W9R4+ju$dz={nD=kQ_ z=O>XoX0iJkFGp2(yE8y=mP^!<2P64Hc3=ugk;~gFFtZN+mkxD0dLRQyU3d zfxb_k$+$KiSULlz{CIr2zfQn@hSU}7Lu5vA#w~@nvX(}RTknERE;}jp-f?i=l{%TI(t=8X=O)L*wSj^C?yp~04z8rlL z8ys~V3RcaN1IT`(fY5GdWQp?E1VHNo8j)lpXp&1IIsV^zlpRkl@h-jdgu3!(kIPOP zBqkDA2+feepmh3gvv8WSWQ4qIBw6GaZJD4`=FFFeyig2Pcx>{4BC6pIy(yPIKM+$; z1B*lmf9rI#{&gP{W5y%weP94;*;%Br8F|rlH`Qn79PewFvPfzm z3Q|`7J&dgtGA-L@ILCi^N6 zmwAF79syr66#DSBCI)`+xKh?$dZjSs4Q)nPjc1MXkVI|+`>8>2rLjHJ44;&eXjv56KLLLS`_ zM&!>$^F&1i1l5W{Mw#<(8J=i7Ui)1vGUeip^F@r3_>>*lv!)HAX2~b~i}aND!mDP; z;(f~Oq>d;hCYU26d$##_zBL|s0zX}`IA`{)0r;in!;i@3i1UVMW(?^8$aRgZuuG|Z zV35VbppY%8j?H9oat|19&_q|Gi6cc0TjZy`SucinkY73GS^ljgoTqU# zrK_GTay98-v#qs%wZ!pYk&IoDOdF(Y2%Pd{U=@T37DZQeGMdJjx9B8El14a+Bnm@U_}9MV z9iZe2jrj;ER>}0wp`r?FkPC1g<2LlMeIF=|iplxnh-8d~(XyIkg`LsaPL!*h#2}Xu z#yDT=5S=#mG&HUpz$6w7+OD+Dh3b7avv!mGzMU zQ$@JxY1gD;b4Ut_aSTpH&20pZ63SXGvO3Lk8;hMRkT%%zKPhkBkg;e)I(>Bq8T4Pl z01<-Gy|p~4W5Oqq6j(wz5;Q!#ytTXXy|Z+7rEj$*MNL?+HPnfvC2h=D@B}Ejq(7|* ziu-|N#`-pmt*NUg-Ftibn9iNFEmh@R&n4~N5u)L1V8nV`-WEW&%wF&`JqwiM;N9yc>y5cN>0^LaIf3BzwS+NE zV|Raqgn&BWgeRUh7{F;lA^%KrY_cSQ4Hc|E`_r_8b5Dny+)3Kch_y z$YIutXhb^((B7U3tXMlwf-5(Txd$;TJh-$G)`cEWhuLx5rvWI_!onpi!8DkvM?|eY>RRUxzPR z55)+LGaLhSMe@(UNctq9mnWnLF^J4z%B!1Cg-4@x@wSlm)}RBYEJYY&cub(3Y@P|e zD#2IrtWYwZK|z5Yh@1$388CFR<2KhSWAGdww^lB&(^i30%Bicvjf#IS%0uBIs6{4X zdSXNZ^QV*O;;A2%=Y|TRbzJ;Q#NEwaWqThINcXvMSs@Hv)La?4xIVeEw=<*A0|CEY zK)W6=w*1woUBF$Pj8Yw#Y*PRxS3+G5*TUDH;cUeb^}Nh5%HscsL|5g&JP({-Lj0A?o?eeQ8_;m|52BXxa{B zvJHu9vyyd}6$L|lGGd71vPa!RQunXt!-rn$8>TQEN=|QYnlr-J$9{|OPX+kotG=JN z&+qe`!N(%rGvf_}F^2@NcLiWA7Z9a|Nnbh&v;yO@lA~(>ccUECfn_(X7dSb07TrU`g2>qUF<gXLiH&(x zsuC4AD67bUq(nu^HVDe;<|x~VL3FsONZ74WZCUpJZlr4kTE;80~oJHoqr z;c;JvD*rkLQSo@XvUWX%X|x|D@%A^811M&p1KCi}45RhGDh75i%KY0xS)643jh+4b zy&CCZXelF}+qEuNd^Uj(&j7yb{@0gb9LtJ*s|rYLN`@M?>Bb$2+gP&Z8i!o4acVV& ze>9*7SB43S^+>lZ*6I2^47V9&n>bj?ndSRjxG9vldl8A1y1w4qj`XB1h}J7Mp3i@} z*8k0`Oyvt;MnqRX)dXtoq-`vsojJigc2g_?#l9^j4tS%Wk6{9SoAb`tD)MUTTeV}| zptwiNs{W>)|3Nq#DVi^?s$V4jEkQfywam~H7^*E^BK9LE_kDsVJ4jVEU)*f-4NJDwua`Kwtz;=r24GVF zw5HCT0{G!X_=Q0{jlLPjA(A3!8tvhDNH8!ybv-9Fpv}Dd@};P2i-?^E1tF4$At*V3 zs$Caww_g;&3D~49f@BBM5Pc}okpw($8-(4C)?pYBZ*un=1<$wl?texxwXqoq0@Q$` ztVRP!N9Dv}^ImaKZaa|FKm0C;CJiw_)#|s>EFXw`(S)0L@u7k(>UQ29*Ph@c*pVN> zl_-=-P-P;l>o@VDR@t0-J!_D!IZqIWt}k2r!es&$&~x=}VmEl8$V!&19t_a1*Ba4N z-0_ZQ>`_jsPZeV?o@x@ycTC|ZG1l=1Zg#Gcu+V70s|;k7Y;zeVmj1pcBYrTqQ9~mT zpR5NTHY)t;iY$s<@!_QW@4|#jEMhz%MoPM|bFci;*fw!FAgRmV@_Y@&h8;nNHhqS#}E7G#+V zN)ABHoQoGussFsq2HfGW8EwCyIRwSVC(EY{kKJWBV+!N8e$U!a*xphPY}a3 zm2C#)wU|z>eY$g&j8G$a7N_nwIe!CUzR;e>N7%>fP_5pAsG@Z>;9m=E*A;G?s+$He z6KzEW@kIYrxPFxhtSu%Kfs{J;SiZURu3s9-nh;|M>u3Ok3EvJa=y4xA?fEyfSr= z^7w41_veonX8tzL-kkaz;6Ph$&x@Z#|4TBo?jbsW7C3(%Oh1HFfL{$}FT8l`{?LZFdea z(Fw0?$_v~RMEeUP{#^qREZIQZ&nhhUJf6-EJ;pCF z&P?$2ch&blJ-mw`8zoC5xxBorhMt3!$e-pV>aV=FZ$AdBRBbI7Zr5gmc*52!4t8_e z5`&iSO1LGfMwB2DR^IWLd+4^@jP>Ubl8WBx(tgmn^Y<}}ODyxMa}LzwV18m}{(M2+ z+sN(x2Bap9UX7C`hGfA!z-%V(O&PI=)FLvn7RN`0)V$2@p20+?23E9r z)Q0+lmMGcV%+fCxr1BK#i8F~E>7)W&eNms3s1Q?yC~O*?E$F+axP1nmy3m`E?_kW& zUk$kf#>g|uJy}iU3Aw*U_LBGQUmJO31)Lxlqc&sl8SY%0R1)Ww4f@5v66Jbj^yIUj zOCuD?Z&agOZ_cFCO+0f$jW+546I4S=of>&G{ziFFR|ouq?^W+qmgk&#MAxg_g>97->6G+_3o%(n}}pZye_oWXi<;5g&zLYGOs(OcCC&o5>opgl{4 zS-IvOLXu;G-T6WW1=LzxUb#8RS^1%-p5YDSW|64ck{p*bwReoD6HF_Jl3V%^sz?L9 zcykVJ%PeVqAWC?h$`l65@Uy)5JV{?pMZHj+nO3Ps!BV}cC_BYNX7y0j%$#L6emX85&;^@`1UUe=y$3M-Z0rb|p#kdWJ9sVi> zwFV-{@Z-2OS5)w)ZZ!VyS_jSz7TE-?HF;^NRc0FY4W9@SmSw+Vpbk=ab2v4qL_8GoW; zu6A-T=I_l2SZa|vTx3l=R+`o?vn%Bhh?$6wdj_Ez#WcQ@r|;+<`(wT_IH*pFeMnmh zRh5Fjjd{nf(Qy&}{GUb0s(;47h-L4@uh~5&U0jqr@?uy& zIlLw#e=tAneD^4YMU3|~8RjB*t;gcsnH>-Wr~vMi*=S-~%31O$Xy^jUD}DTclmB5O zyZwuuYlPmefl}^Nw86|Q=Y6ZfX`R%=K!)2Z8CQw2 z;l2b*tXe#2HE9GduadjWDXJ()jKP!D(#U|DdxNrgo;Sx06yagC055gQpF5ptTDJZC zl}lv9BElvM^GIUWfR!VkH&g8ipgnu>%+!8j=Uz zp{99K1-0D#I<8A`Yt2cfvDKBtrqoqREkB=itYFPRFqMOw*y;u)8v~1 ze2v%oGei^^t7Fw{cibpb4XQiP?MV>M7+Il3!{C0uSb326-9;6%*agDX(q8spf_E7g z5bok;{h_owT*BMqtm6tI?b7T@_c$r(!@jw!*sTzOUt!pm^@dW4S5(QIQi$kh81V2( zE4DawSmo3&9?>7E^SOyhfM>KK-FGJoB)=7;qAII#Pg(%)gJeo+$C+X+zW*Xu=aRx@+8U%6P{8*Y$c!ZCW2#mukgkhpCO>(2M`eF}y|xUW(xm-Hz`Y8E zLnXfr9SH9seC(EcbW?4TbCD`Ww8JrI5!9Ub6;r~h&OH?S^n>X(DLN2t5k(=jw5WDd z3)~q^@w-EQtVO7T5spDcUu%>1aPX-kP}nXb7h72N&_36tV3j6(AdA==U8jxcIT|K!J^rGabl4G!|f(8!CD%4G3s!*ZEzl|<^y zWj^D_Khc=8F4x(tkd6<;<@1_zGv?kA+6DhbM_+4bdWl;x!z`>sV^9OtIGcKPt)h)o zT`jrav^pP%gTPfxJITV~rwob}hJ;0&;Gc)M`YPYU86rNs-%k%S*_@tvMNfkH#fE`W>g%i`i!Q zW+M!Gg54;agPkYWZc{a%Gs?EJ@)PV+{wFp8jt?EF2Xvu+Cd*S;$ViXUm~xj0v=2eE z$RV8>@;ELi=ewAotzm0$cEW3p7X->$s>QOf(4~#THPVg?i_u4}%bNoOMEBL(%rZ(7Qz&$m|U%IiDbHa*NzxYH@6U@IZ%8pIh zD~y4UaC^Xb7t|Ro3|X3J&XYs0Z7!1Hc`<<_2{Fxt36RJaMHMi7Wl5L>K3{_06E0Rw z75mjLFE>g4K|deCFE)-MPNY4#sJA?8$gCVzp5&@4u#sWYq2w9M7R9$$svUV~9xstU zV>m^o@iFQ{7#qs?rQ;=u-Lr zH8mHuw{tPH{I{i({C6qP+~R*u8qV;1+y7;2>_b2M?ceIoZFcW^0QYS75^MY88%sa8 z#szy-{7z^N(JWG@YE3GbY-11fd&@2yi9)H^rA2-{)e1r4#F1@38=tHn|9<=S`I3cx zL_)u6+SpwajxRgmft12IXHR88AJtu~nrIHlDW^>2&q0Z4e#{#MjPvD;)DYd2zN|Sd zrL@iD+7L zNsL6EtygBFXwG`aTz1^3*HA5#Zvq-vE+Ip$MoL|Z?R)4E`ps_IOXQ9ja}&s-pIGWX zQHh|JR=v#dWUSjrAeBTgxgX#gEUuQ?@5g*X(^Y1PgwLMzE47rFL*$Pwm|UmE64inA zQzS1Y@zKBbCUSSiR_0Fo5}r>Fl|E(0};N7mpK z*eRtH5;Nv*m>LGpQh~LH3Qk>lgm7;^jz>(!U}Yw^*c~f-G9##(TZYw`Piju+a^ecv zOm-hl!h@2?qTPZOxR-0nsDK$JfCaDSF|B1&7KfTnq~Me~V52#l%YLC7@WNzuWtxnB zMN;E2GIs3Ti3zcK zO4Adtp`LGJn$2cw#C3(@WV>_KYNgwct*kuZ&Y5(7NO6r>;F=QV+CXDDJ*b*^Z2D(T z3MY)YEIJTYjg*0zxU(ma0SKvI(?gIL+=;ajlu$8un`BC>lm3r^Y5@PE9e40Nln@10 zc;FeKyD^k~Vl%reehz@}K$``5QpD<%c0B66npH=EPeuy)LO_o=qEAnp%z6ZDlu^?o#scW;C0Ap)%Ms# z4s)KWaoQepD0I!HO4fHZZUG?l6X>Rr3EUu8u6${zv#AJNo}-NJnBX)v^H45#qjJ56!Klavlu9-n2vdF%0j9(fJ)##I%5^Thsf)J?39!ZNO5E9cK1^T zkP)$0^Q9K+-olx!{-S<%yJ(R!b4G_+oZUinY&5xSaMq-{>z9?V6$)MV5LNmX?6*&y z*M^LfGOe0}M%V&Tc2;7thDbiR=h-8xwM;bA;U<+ECL&lv&P-@2=KHtq+E=P(Hsda* zBYFqxy+`cfV56V<3Ex_3gwjjM3EuJgEffX)+JQErqs75;Dkss#^H}{(H;>$Cqw$AF z)-=TI!4qiZmgVbEP2hj5(DO1D$*_v54?~5`%ea!K%#77)g%H1hk!5wabXZIZCn%BE zSb!LoTU3Gepr^lq70V+x$6xiV+S#$DncvU=r$z9y`?&nD^|JMT9&QefRQPq+>?~zZ zNCwpxwc3YU8A!uL=y)`S2kZeLWqZufdLuKrCKMftP83uORd{E|F*e0(EOl{Rcgh5( zY>{gcv2B6Hdy)azZN2RQ`5*eq>Spzl+R9GteffO7r0QobPZ5j&ZgN2!d#JP+2Z=Hb zy|r=Vz`-Uo<@Ecm<_aK1GgvhdM0B-CCRKeLbiDQdgnfel^760e-Qx4i3BX`tga+8y zG*8Vnh#ghZ!uhpi6VyTekzwn z$baJzev>Y)%RZ>GAPuuolLVi1#t&Rzs@OBRi}v3HHlRFsJuEJGHxc!3hI!e{P}$tB z1;cxIkSpCHtftg!E;A0HSBa6cTqQES`cYBtW;RfRdkLyFQ`8Ulv&vWF6qna2SF1aE zDG2VjR-J@f#O6a3YNo0mbyD7FMsv^K%J1j~@}#vFj5I z)Ck8{iuWE7mgHO(O^;NF=E#e_3R~3}ErSF_RR5QoDoMmloV`3b(>e-JdrxmU*aSe8 zdw_;=Tnq#{SlR&OV{HCcf%&-#3w|$~EBek0?>CDVB9jzp!18fkx=!;I#tJj=S+&CI z_*IsKj=c??_EIu1uy#8*`WgUz0Wl_8dcTe0yMlDak%h$e5*UJ*te)gAy?iaClrE-{ zhmF*5HFBg$Q?Uvc+<-)#JKrYm_olvndC5~GNyfXny&o%qe+;@CPi~>m0JT1L-OtAK zIB$B4b&BF&%Mmu7mzf_%%WaW&4Yotey==3t-WrXnHt`S0eCFtm!4@vzP#(1rUN+dE5b1?z5`3v2}-*1L07+2GjZfeRFPFDy8+Z$t=)tjxI;byEcdJ8z2d zI?ocqz{!n{C>dnnvRuYsy4Jgl?FdJkF^7(|x6EB%_d|Vc)3QEbLH>!e0-w`By#yNs zPN^4iJee=G0{RMs>{@m|)6Aqz$QD=VsOT%K>?HO_d(r4$YCru_s85NCm-$UtTr*X( zI*Bo0LirWJnSG|!nNiKAp8JLEyfY#;xOc?YT*$dszH9z#%5e3AWzXBCfhD|TsaMHq zsot{NZV>*JH3C01#+wAcwl7aF#avS(^fpdAAe1n9Jp%fww{0TJFd=a{r4;L`+2kUB zbXtUlB8MKZtKOhX%zL<3ct?KVUwSFGyn1lw!;u0YRvrc0ySsj=K1@=26O1+nh>;|s zB$-SHFxeV5h6HOkDA;e%LgIcnugKO1o5+Tc*f~1@!()h$4a-ZZY%`5c(Keb+;`(w` zk%r-{CZ+VepfS}2+k9y6U3N${^W;KVJlz-wwsO=y>MhK7aujzPF47LiKM{S3%y!Nr zGtP2eP*~l{%NyS>J87K5#DZ}5+KZ*dob3n&l?%&dWtf!1J8Z$UV4SyOW(56-1Q297 z#!|=s4|DGnU0K(y|Hi4 zb+>vO^XapXXY~FXRJ!eOD6H)I5H3OOCsY>3FE^s72kB4Nf8vX;&lQt25FDrmbZ7XL zG=)+8LUH^QP17De{7S7kK(KVUK<@7sON3rsFnc1-_u0D!b#wtNZH%Shw0K4>kH<_r z{3A}2llFjZW8^!*Zqe$_DCY@Iv766H!sRiD5oiOGP;OF?xK%4ChY`-CR;zRQXuo#S zW3P;iS&m_C8c)*&dC4V?O{5q22oB*?<^3I9o8pYb)G>VW{3*0F7?zhz?}HjUPS{;l z^%`uOYt<24>Lqr8 zC9b+^1a~SZ6Dg_yto@SB{;-b4MMSTOSuXWTsk|Zq?z`PWw|1`oY`BHMfBgvn~(EdlSXzwB?GL8*q*c#b2(cnjOQ@3cq}2;{MITPY~r8Hk*f7}?%5*&^?TMnZDcX6>8!jBQpS zFP*l8xE=FbWB2*{#kvW{SIG;ScbI#}A_kbd)ROaHY4Y{sr9?iDV~V*1XVl|&kbY7} zgR8&JM$E(UEBd!{*>(>FE)y#y{sW$ zO5k71zJrbuA#(hVgL6=mLV`&PQG))1m98{Aix_XivhunMSxsi_ZjysNVE z4Ti(XPW3f`RI+Nybo@aqrk9shmCL!?{PBXB@>^ZzYtO$kct|{$k%8t_Tzi8w`BsG4 zn3l<}#?4xH1vbW9$xYc_X4}KA+eFW0YceS<;xMZrr{A7m_y%`;DQdA^Lt6 zw==hQqqba*Eb>b z@)lBmop>5jxFEFZBjh|;XxsreZ0o=Bjwbm0HOD}31Zxn4=6eTa7PaR}-eKZf!a2~Z zg#=%5a%K%okPTgp&-xQ^xB&HexL6+~1qMz$ds&D*W}Y_Us-oHW<@ECnPsQ@$+VCeEL(J3%)uW9*mfcaquu{!H}c!kZJYG<)QM$-C68>D^d{LAz^s)*L6Ut*z*T;J0poa3)N`j;v)+xt)XXd9TgUn8HF*59 z?Paot?NR(1Pb>q$m8)tA19qxi@Tcy9S9ym3HwG~5r+XP(o?Me}~HH4ZLj>_%*MM|CE%z1bI_g9iodfozX zP#m492AzAikOqAW!afKg6vL5OYlfKg{$S)`e!DaBnnyS)a<>+TwH*mjJ)6~(r8#u; zN-0#kEuLA!ck*mxI%#7T-VX11fzg;#2yeOlF}YUz?5^q6k6x$=e3~sD$q+C&BmCyG zO&a$MNHWD4`PmaDcW4+-m_I6sH!f|=LkkMJvjh!yPBvl5XWq>!2I|gXsh>>i=38!^syPdcsB4{)_Gl^efRk*gA<_%wE}0dY>?Gx0wp_U=tX; zO}V||E||eo#FTI|*zT(p5dn&m;MV$tJMy*;k%l?rzQr@*{_Yb*;&B+|tMS^KPX&D` z$zjADtmbr^NM}!+?MQ$(LXnWg!!WJSKU|w_h!FO$M^vuh&=>STxodV}uo)!;JoZ%E z+BN@fUEVxu##TGjT)*0clT>A)J4J`}_RKSCSR0z=X_Bx_^F6s*Kc3RRN4j6;DbRP2 z6HB4;hK;8LiWZYaaJxS&w*P{LO&NcG%J_HKP;;V>&Oauti$_wI_h^`m);xNx&5{YO{k=5o8hb^Nm|0Sds%I3GALAO);~WpJb6j?Y)$UTyZb zSNn`~)`c3O)*E6PgWMp-N}r=`)+`$m!BYxo4+L!H?X3~c(0v)tOF1W^iyTIX+&rdj zylqxoCz2II`{XRwq_c3%Jm<}_R+}0_O})TBR|;u2uxw-KghIa?grcT@F5)0u)rvE8 zT_1`Pr8V7vOD{>B0goxh9G=~QY>dCr% z1R8{D6!tnj#ytZJ5~5bL!sa;U6e%KPd%19x9I{dW7u_`+>&3CS6V(abOb)}K`v&ye ztyNuTSYe{_aA>+2dmhrZU0GYnoik>u-ckVLW*pL8TEGOS{nKm2b_X*XqX+Xx^6&0W zdve&c0K~Hv-XMyp4b~5sajIWEx>45if=Xpy`I5=8rnMF&Ms?}`IJM|IAo$gq%+`i% z4YbFJVb=&QlG6X>)bf2hwc`b458qDhDUt5G9$5V8f|>Gw<|*vAQ~UAh3I+F%Q`@)6 z2eZaqZ7-vR>)N%cIwuz~Fj-8IhHBZkvl{vK(`%vu1I%EON$H#U0%vR@?wd)mKzB~V z-NxI!u?qF*G3MU=wrcGkaAknLR+ar+y1eP=-7)R08uR5?RsIZnt+;u3Ru#DT(SwhA zG8Kr%sh3ifd=l(;M*z29I`r>?=xZ`DgJLk$l9Bj+I*{` zN$EeZT;D?!{D>!Hz)F7p2m|c~VIXh{2J4y%WNUNekszXwm)r6Y#_Uz|O_&OJu#rEn zZ|8i}9X@`Ux3vb+4NKT|W)jEe#DU!5J$7w_sDD*`=JAjcH$c#cZsuFE;1`*|j z@M)OD^7dan9cxtYK<>H3i34Lqr;a}0M12FB0E0V_GN0M@o3o84epfdWq5}&7KN)x0 zc`AFSS}w`A6KdK1b#DL|1e)}A^HUm@fGt(qeZ9j zn+{|6JaI>_0qg*(jRvH`##xsEBX(wa*-m=S2vmExvPtSB11@#?D9jzxM43&37e|Fo znLu?GZz)z3I$u7}N3Z=xHG8iN;KI$#@yY`#$PDN@*OPdxGqqK8rAMp)buwJI5jcqC zj^WB17jAPfl8ud&6?Kku0%Ya08CNKtxNa&~=&U2msX>YASSZ6SVWma(h#c=o!P{vb zOK;(nmpgt|`8{UevADx6>mM1G<)9fyON~wPgE9r5qlQ~5KI;4h)lP@I-&&%NVbn;6 zyTkZbvmTa3S1#~-;f20m0_Oky3-I5FeN{1n&>&2(qR)Zue;ILfSGdDz`ZQ0$3#T~Z z))D~`TU%}rynQCm1PuIz19oGYHC(u)eu?%4hWjlis}-nNl}=On>c*1rZMnO%M9&z@O-N44)d#Myr&NF_ z9v!*!q*1j4_V|>OZTkWL#%eylOZiyfLjbqlDmJ%w0}DEhWtke%-pJnf^+|bu)uIQ#8hEA6D-`V9-RoXs7 z0I~Z`{r3SVVVdfi-XDo%ts+abrnvG!UQwie#+@ibj7xe+9h$GMhE9;bbNK1nt(b1z zX)oQLl_fhpdn{@FZM19=B{ZOR2YqNUi3`k3F4fRwLIXtxH=Gl>AeIWHio6DsqtB2r z3KqZfP?@M1X@V;zM7<|>AnM*2G zK$TkTi*|-{*%Bo4P2hL0m53slr!VrNmuGi2aEx%M=`mdRf~*(nRgiuv*VF!_rWFdY z5_63xi~yyok77@gLC0W^+?hCJoune65o$2nRa)0?`RGp3X*D)RB;^?(yfNEhJn~>u zOAOH(cvkkkH7T`Isp2aD=DoH7dGI-_bL@JxV6ayY=7b3859Xi3LnhF;?R!;$Tp@Qp z17aetwRT}OlT29TD<4Bnl?@=>8e4}luCJ9?5lKVhxt^jk)lX@;zgj|psTv# zK-P~ASJMO=`z@-DTR`WUu&o`>fpe2eJ-N3o2yl_;H zrDC{ThO}13YT*m+SS!qOI`s5QZYs23cCd}A2TaA>Yr7;ud@cgun|ij&d@r9Z*8rmN z_eF_suZ){>2D}2`s_7tGaD-GVl&_&5?H##HG7$;Fhi zy`l~^r&3;di4w0RUTu}(L(7cwD-AR|5YBJ%tfW3{7R2(@E0?7~?ut4I7j`Y>;6+VpPm$utB<=(X+d$&34 zwI8=z%85HW)cpPp{L>dKmdN#;{@}i~NB2J@5V!BaM|&qz6MbhB>wis!v4Yn90^j_< z7c@}(dYH|8BRc1cHgiCxqK2>7Pk>us1Ag*HBmYbqt^jwvSz9-PSmt9R2NO0 zAa?N7*(IrYtuPP&fp~B0$!Ti00t{oEfGDnnn+v$OM~kr)^RGv#U~IflY9b52&Qgxe zX@gZ5+qnq~AN;66;f_wlYB7W=u0S>4LTe-Z{O6U@AR>rEslRN7UA%!sy-cbXrI4Ao zzylu9Ggsd4g+^9HG=R48g%1xKM%&ho-e|9-)C3gr41F#q>)Ej+7vdKV08m(&wL{+i zhTn_iH_$T@1pOv%i@5~BVcwanD5vBSVf54J^10;F?(sD~_-_w?UBBk%zkP?u$uT$Z zz89be@_%j!`L{**ChVA5n!7p~{uec@O69wp`X&IL(?Cr3AsaC9qDF?)>Jd7u5wEb} z3|iJu(?yxGAydIpwb;%1UB^b)jOp6UYv-(_5P2%VY7)ljYm>xHu=FEW?_SiD5 zj5k6mElvySklu))nN+TF@s%vax{O-@tGmJxje_Kft{GGPy|Px#ZPpMfktTKE4rXUZ z7^w4S-E-XM<5b`pY&79B*!BPISj##n;Yu)s)M@XvbV58zgG9YBs+4Nsj4Ap18m09t zvrYW`wO8FYm#D_BDWP2mCW=RZsKZ|mlUTm1FKdHFn9vo90Ij4&u=KkowVl=Q;4sAs zy^&z}X@A>df^9*ozA!d}$D}_%=I(IFPE*iQe)bA4;#;{wqPYbhaILpdWB=I|m0wy~ z)KtrchxS=aqAU-j)+BUEE`IwAkVFTrS+!x~eBym2a%=Up#&vor1RW!@B^!glvksl^ z7{sFdVfsTcxuehX97NFROs&2|AX^SJ+a-FT*x5o96~5m8)KKb3rM?-fQVwT!^lO5U z!-Yu#W>Cy}+v5}G4xKlXyOBe50$bVax`x~riz(RJfNiVSFUm;d@09880{*>{X9^bA z`^Qh(bvGRCSS#N}CsnhXUhJUEF^bkU^!Krp(ZCBV{jRPyxwq9DXM;BS_CQQgvYpj= zsjq!=jWNpYYZJybkz$e+iAYaz*I{89?`$~_?=LS0@$E?Dme^w{nv`S5nmbF)%9cn+ zO^oBrNRqz0B@2^%JYWwXaduxQ9}zYp!ZMG{?XmU&43W^i)y*B&)EK*&yiY*t~Q)TV0i&xOEe!#tQmCZ8o5I^fv zMnCX90o3p*Eld-A(x9D7)>}~#e{y*Z=|4-uZchS+Ms%t;bi0XS?)4GPA zEK$bl0W1nzb~X#J^#|;57Eaq*C$Gd^y3mAwO*d^8$u0XzqWlcsJJ|4^{EQbbkwZOMWZmcQV~CBJ_{aScO^_j)|-zq{ZLx8v*% zTeVLT3N{-!bZYMN#&jf!-EJiaZb2|tg=$*Xp15Rn0H2yszqht`a^K{kqfO^g2BS7p z#^*XUz%Jd>%2_v0q&ilMgG{zynRdUehk7=J!-6=QJ83)2@-fRY1~(Xf$;Z}(QgBq|#r9WhA?sL+3P zPpzm&8-i})W;l31xxCe;{^+>9&2X%6B)d7X2xoYeo<3~pxrq;$bQvk`U!m@%biWJ@ zjftKRKgY@Xc-tIeQ-3EsT($FA^}XeG6jeWhdPnHLR3Pp5b-q$9`*&W06E2Iy)we<~ zzYCQAX?OFlN_8`J`UeyLEyk)?L8}2qMA2uyA&M>1$Z!GnO%o&`r~q={5*G$(W9^~2 z)VR#0mKvM+Sx}J?U4gO2g)$9&IolOziDQF7wU{H0Y%Oc~s zxjOZgCOUFT0m|5ov2vH^O{}{BS}%J^M4bN9zqc)Ft;oEge^GYd2VMI0O^Aaz^Nl2n z-HMUpj@C2N50!bPOUIPU;{(Tc^@mLB`m1Af6vA0NQU#OiHoND#i~Te34P5wF;Ua&} zk+HsBY2Ewse~gkn4%H)dw|wj<7OorcjPqr4O|M3X;2{x!qx zGo3{dwCe3-m?=?6~fl50^tYV^c+aYdWh6k6UTlUTm*pVI6o%f zejiMGl?Hhji=sEkMt3P|wAAziQJj6qsE$yAF6N-ebxw-PQ>9Nj9gNRC7WltQ6sW+V} zn0uIj`aOtfr>wl+&Rho}C#<;FL`c;HE*j*6N-yl{jk{ixr%Mnf~t=4_3Zpx6Y9L8i17XciyHU!+!XLs=c{z{Agx%!2*iWh z;9Q&-NsRj(jO~0$=Md|*w!wH2AyaW_dHw|Vt?)@CPR=>9`PQxflG3NQPQiv2XwWm= zr((0&wmA#YYXjTpg*o|QFIOw&B#lkn5{qm+plAgUBK`L;;CSHCg%9Qlbb^utvZBNs zKI71bjnSo|I0(VgVPUR1j@P|sZ-9o_!yASOGbZcV0v)_l${SK#2%h4rwQHb4!n;{6 zKI@Uvm0N_O#p8F0cVi6xS*=_P?CSnc2e?&&i;j1KH7@Xr&XsP6K0=pmHvdu9EB1)ashba$plx`W8PZaG4#O%{0~k|*ljaYP9zNKR$>UyBf&qwB`1EP zJ^R_dnB5*HFpTbveS#Wcm^Rg{ek3Q%KXA4gS?aPKh7R1fQ=bPn)N91w^HAg~3R|ts zz6O{{pS(pBHCkARtq~Wn?rKX_)7wApleOh7yzg9d7=~CVFCOw+j7#b!XWEQoQy$i% zHTrLJbDoW11a|$7_tsJ{0EcK_*QU+x_LQ5}*6YrLOM&Z2hMT}{>sTQl;()m0ZQy3l+!D-%)V+?6cu(rYh~akuOz0*x6iS@J$$P9nP-Z-f zun}S%LQP~8;qJVF9eJh%>BXnV*N;9IQdh7opNa0mz*HPZJFWOCF3lcXCZh)`2*W%; z$NPtVuIAeu0MR_fF68o04YvccokVOvS79FwDl1vpV&J%KQ#)grjJmD@U@^%MB;gO{ zJnq;)g&M3m?`-7Eyqa0vObW-LSLxyRFY&5i#x3`mJB85z((0@a=;0G_<%M!?U<)J5_4{09xnxsn2jGAM z8}THNY6}l@6fZ6)#MF~q~W zT2HG{Lz({by=41+iKtY>24yY=V#NU!<%Grrk0>`dX%0@aMzim)m+#uF4+}-l=cBxR z!fUtUEIDBbcqZ>7l7n3Bzp!O&b;t;p^t-I{I`P|v#zBETJ?gc zk-emwI(ah6|Cj*80=#!@#0{ba@WWYn!&F9{L;-duf^a(NpM z(2?yuroYGB(#dseQ!aZUi2VIKGY*J;3e2K9AMPn-j=S$o%OW4?P=NwBkb-jFda@#7 za};X7{am3AK()bDPz8*H;RGTLnBMmEburnvc;w)+Q^Hyvz@S?cvK+iP>DbfRS3KcEYyU^MiaossC zOL^(I{zut958agmOj!luR^Ug8YbrOw`mn~zt1{Xju6f{uOZqK*WY7O-#ZuzbV=QpC>E= z`?c$ufHDBki;cJ(6V@2}D&bdb8e)O(u?hKs3+ZWypIK}9$p6YvJHd!;R8CJ{_3^E9 zZxm(yV!f3S7|d5Q{+?Mb(pymVa!W~ZH}3#@rZq?C(fvGv^|~B4ic_%xChR{aJ)Ck% z@g?HaI6=awMW>JF(Qj?Ufyu?qM)0S?n(v;S$JT!s29;46v_LE`XcZsHu{#)rFcuq# zv!eS+fMoo7Nw>SciA|#2;Y@K$;;)_YpfVXPl1dq#H{0;lpI+Vqwjy+c5qRG2)54xw z_;q4%`aXqL{JeentNC(9;{hv@&v@<&44reD7f6Df+6Qud3!-J-V^|T0kOOtYUT^DlIl4<`2Y{V#QiV zCad;YA=`VJXSuwVUiJD}w;XdX8^q5#2zSfiB%dUT=TDT^R%=1BMBh7y^yArCmgV5^gW|0x z>34f!rcSAJw-|0OuzF44fnj_N9xgK#vgvaYLPXG;%9^94W70!Jw>_)u7ZVTAn$RBd`>z~Pb`b2#2tQ01surwLzV(8JW2fkVj5 z?y@*6x{58|ccIAmjiDKEe(lB<78Fy7f6YbE52mGQfMSN?YxLem^hG2b9H8cNICQo>_X# z9~3iUVDtCpEll*i2b9-!+^LKZ12J9)R3LIs8_=^5&$JIav1ipZOKo%gIhMdyqpK_a z#RoSA2Bbk0aVHQ1Y8@QJOOp6aV9br4K6t6+#E8aFqKaAEgg+wlaCmlJQ;%Saw*Sp~ zwSHEJpUfH6be;J1)j+hQjbAb-!T;ugV@U>S>0S+3V5#t))xeXogT2OY6$XGI(c2~$ z&s~Pg>=C&KJCQmyj`S*QVhuw1khoaW_!Ag;q;`byvGdv*O=6zXZ?CSQBH;4Fg}Nho z$?fB8F6DpWx4tn7^bnZKVx4L|r?VBJz>1!*&@5mjRzqtWfh^U~A@l#O8@Iv408LQ0 zwOeI05HVAGkHWxUo)U#C^w9-4) z4P*XkSRd&s2;vBK9}Xv=8(SNsg-?eu7q~ef0~<}bGr}*U7>jCwADXWxD~eb{j(A}_ zLwE|L0uJdoJ6v!=tf(OdE$GAK+KZf?3P*ffuL+60H}#!+*v@b{{;magZf$f}^j2iu zeB5?G!yJBq`n~`X$<-}w*mXZ0m40rX)U1RSzX6t6Q@A(6eB@r>O5P*fAhoeJVCLv& zV6l5$vQs7!CR2mAG{o$cnC+ER|1eM+`9vHla~&;+KKOZao*SzDjb0|AVq#ZLcYP67 z6!?+u19ULy1xYA(#;kywUROMx&;{a5*gn+Zkfu$rmMU`?u&R{P?x%v$>Oh(SU&Ows zN|KZrv%%hvy)66ZNasmE&U|Uze6TIZbX%B%)@8f z304N*3-Zjr+)#Z*k6j)`5G2o9Mr$ovAJ5NON;E<4R}X4yWF>=TcLG_1sjqD^6M;bo zJMl`NTw&$Iq8X%83nEdKaac@yOd;VKSD28U`Hb|UHn6dPX1^v>m9>D4@*=% zcl#lGnob+|3Zb%$RMSP=)zYE&dENa4H)?4I*z>(-Tz8f~JpuAmmCxxt2bU}LP3b4Lo)uxu_$ zII!fa*~5m^)=e-QKd#sC+`fe1`vv~|T6P(6RJiBX3~2Upot0rIvX;NhxO#phlEmV~ zTv5ysTvDxke{s+3nrEzXTF!3U#Wzbth+Q?C&)qh8G-fr7-~zUp8OZ>6Mj#sf+dri3 z4rRpqNNn5PRBe_>W7SVYXZ}Oa&t>A`N#SA1MsuH+6ql{b_tg^JP4XGn>p=oL_x)@N5ML63MGz zn$JlBBP_n*SK#bHRx&fMeTs=0CJ@7bFQLhw25668@p3bo_=Y%ZPP#F(miiNXzd4xN zYs%F7E24Eam<=_|m7s}&IaHalsWirgre)|=gJ*w{(Wr9vIOx7cv-*qu&cMqmXL2FV z#y^M5v#II9AqY>Y5f*dD{j=tkW#z!DMl$w>WX;^*iR{h1pcA>*i+-2@H?E)(k&Lp8 zR@9#h9oaA5T*h|~nU=V{IhGaSPB4)RyIDql*l7SHV`}hg0Pwv+d=AFkmSX>sfwe&{>jyjSy z#t*qxp=c$ei;5TnzT_HHl%~~qV5s#>zng^u(|G&%mD+xLN=O*T-D}bnAuH=yo)6CT zwm~!Q-blW><;pN^B5nF03C(<{A#ZB3geOSRqGrDijvZMiFG-s0H5Q+3T*L0;&7Agi;^ zvj#)cXk6Xc-@$D{#wSi{dkUX%t8yP)C5)_S`f_kyHc#p829u(-W1tu==*OpDzLwboZ7Gw51h_SjW?Nod#-!Mfup0Ut&_r<-!Ou5#yrL;e$dd*JQKWy!OmGZehY znhSnBZ5!LIzkbxI=l&>3!|ao|9)(imP`er`PfWLt)*J-PaWekNRsXT^!RNFSZa)|{ zqx_B--`VpFk}zMsbSSHRQlFB6zBUWHZn1&ji_bZDNrLyfMtr#W3gZiCM^k72n9-z( z(|Isty%RisLgISpVLG=p{(O7R3an*bDytcmWU*Q2vI~JXqZ5Ai)111g?;6fjIDdtHjI83Ozm>T6?bky4*)5hVSMfq z{L0pfxlR(Ca=r?-aS@~T0<%%;8(Pb15__d}u;u=+g%<}MNnTWJu4N0jDAL3$#pT#& z1ZMOYKP5cqT<;wzaB_J>#=l|&-~wczQ4LVwNCsZhceyVOA0 zRF1IOJ<69c;I7ihw`C+|WjrxXZh%QELnW$Bi(Jm>fm7;w9dpZWfcVO+q=TIc3*$Av zhhI%SYJm*xsGgWn)uHlpHS~(+Y)6Z!_+4I=Gm}h*X$VNpv%VrzKKs<#@8F?hJ@R-L zI5zO@dK#=-%qexF1Hm`-I%dVl@#O>o@SvFpm5%te7tLE+@wT}CfMjSKzHGRuVNhg7WRYlUw- zp=$jjb6q#+>xY8E-V#4mq5TuW3~6;3VOgCdI4f!{fTw39c*x8%OJ~=}1ygTU7Y(5q zm>3>E=|Lf7izZ!-54xTLkn1#I7_PFfv z+mAFqAY0>t(&nys(IYuefT}uwg=j<@Plk$|_QzJc4_%h$(H2@~Cq5J%U}>gd)?;bgy?8yFMrT;1JH8VB z87qSdU0go#wO3~1swwrPu;fp*tN;YOt-X0Z#val6yFpyffe@UlecPKfyW4w=-mTte z1g8wRXW8F0YC+d7elL#QCgVag{Q~vr+b+C#&9;xHP+X#=Vt&%=y}9C?knSbHM~$M& zM}f;NYdin>;+f`mr;wuEZ0ld-1f_!}N&i_qJUxh>%CO3+5QoC}Npy%72tYq-N?eRV zTh4!V)&=GNPrJ}9Eu}*SEsI))L7f8j)BAQ$RJ);3l;UiJE3O{>nR{$`z0m0RqJa8y zVUM;&l|G*Mu!T9Uqc~`Fkp-@onI0vMU3#-m9~tx57v4$IYI>Y_yP>?&tqqNVS>IBF zm!cmjMpP4Y^bL*yH9r)?0*w|J>f;&Svw&OUS4knnizf3DTx_5Eg`DIfQi+tNWsxpV z_(+zbdr0VJqAZEO!c*dbKYkL$wyD2`TY-1>)aqok+TO@|y~MhGl&PDlfV}54OYmQK zOyC|smO$}_I**VQi8X|g%8yTqm-XtSiOYR8dcW1p`}Uo9_QV~!h+Ivjxf^bQYVY!R zu2p8l9G&yf^Fk1b?5Y(SphTmI4jY5(1hFPV2#tHwB8%v~aaj7Ec{=;_1EgV>DnG`e zNy@=&e3C3q+}@NQSFY1J9^FRvHv}|_$}JaY1xPXVz^GGx_eP)$dWDiJcy18dp&EGqG<5x$v=JY%zgJNwmJxAM-`6`;u*F_#$8;hkJXqN9ko zd}@8M=EW!>kJKBrVj95zY;OT}Pd`6>X2uE)9`Z}mq#~AecP#4GX8rwVyUwME zTJ{Q7(wyyW+$tox7!#)(!x>4XRVqPub7BdXPME@v$+Yet)KTGtT7R9UIm+eGHyVQw0-zbHa*Sm$hz@&u6 zD=i;3%<$TuS#W~m$rQLQk->Cn2u(utP<8oT^&E_*saesaUDiqR>79rAHs}u2img@W z4nanLaYhj!=rW{yOQeG{wsQJK`;-O+KI{>qed#e{$J zlGq87Q4ykrq}ejMZYnGP&Ox>@ZWCVQ9kG%@P&wE~E^4HS=xeHMly!>qC)bjLem>kR zFb^z(lhNEgSFb-*8YXClZ^UWMFtb*3~uTy%sgVfgRHAs^*{0ZV*DR)QlT*< zvl%F_hVK=Fk3e~n;H~sm4Wni}_mRk#& zmpHawqqL*t?>6zT%J4VN-c*h^Q7nm5LWO4SLd0nny!EFUHWv=Vx}4>n#Lsi+w{(s7 zz6P>2$-d4KySa*Lx8o_ak;(8O`Bv!M|3x*ALX6OH^1|CqS}tDx6yH;!3-m3EPRx z-(mfv(27fSh3Bo}f)6oRCuT$-K(*fYf zA(QNmg3M8HYgW528fTg8Ac3z8VNVt*YTfB(^XzGrQ<5!vALToOE~tPYQ!x^ds}8H? z8AIT~s~eg?klfUWnecfEe{83i%3=6$%42s!G$DawN4|CrFvw=$Skr|13&^q_71!>E z6g?y|5TvxGz)hRL8^Ze`zw=ghnznGxr|55tJX zW!#Qh*sEQoV~5WYjfA(oqC{45)%zuMxG4xCnbE}JOY42g23@W=g&*IUC+r{+Dn~-6 zm}7TKkSt-2$wLlN!O<#tMZzutU#D*)c%O{F(7vk_NMWz$;vTVj$5~7>2h6a*27D4$ znxRHR%bW=t-tI0UjFRSv%p5nKqgoC3`MmrypU5nkvEtSy(I*#J1Fj)UvW1vViRbpD zmOM&=B%QGmGwuTv@Ta*1Z;}aVL-h}uWX2R;iRBt+)Tc70SAH=nUfYZ@*Dw6;*);pD z*4=Vv#QDY1re&1?h7^8+_~u3q*K5DWe3+)=;v=AdJV^W>o+Jjtl1^^WyLcV#A4t!q z`uXll5#MeiCsY0}M`yh3?OJUQw*e-M&e#i7iyD0hoM^!rz=`7ef&ecEwL-;=aE2&* zNUO#d5_FRed@+JZ)KpXvauiV5%MX>IQKBqGBNZ>VsF7ov;dO4Q<@|1e1xD*KPT3|) zjbdDXjC@QOSjrnOjumDjP3LpiN%D*>eYdyq56Fh!Lu+P`^T?ZfZ*)~+Xs~rrOgq)p za#p)#^O!y~?_c~A799sf;>k9vH7)OKKC@opZHD8WM~bFosTQ#E>=#7Xfj?5%r6FC| z`x8E6J0P9q4^Ex~^0-ce!Mb@ptQq_Xh&@u}|{-}Tt$`$PDBJhFu zSR3-b69lx&gZ}MsTuRKgv#GGujW;NT?70!j61+;UEsE)DUK74`#;lkO{V+1QfjE+b z<^GM|vML(xzYJlA{AaddSn=#OiU?N6ey|k@Xr>b0j+`Ljl|+(A8GQ^ZHNEbz9r&Ey zTQ;O86(BkeGhEdB!hg^YawV~<{pHBZnR6+$@ zE8*HeMl8rdd; zl~Z=;i|cf-`I&t$pyUnEaxB==I{cC@hbu>c-a$v3;E*-6j>{$iq#Poct$?y0A7Z@P zFZruq(!BUHFMqDD?L|FR8zE=4aaEqz`{p^vgG-O@r}1TMFz(d6neCGjo(-5Le}McH z*E$2KBR1zs`mcYyN5@Nlmmu~xX0PTZN6$Z?&P_y54h4)(zEVN(Wa?8xR1K`N&fd^7 z$9$w6I%iKbPyH3XeWOv#Uuug)FSuR_)I3!0Qo4L#aVwz3CjPcYzaz$(+{alPNu2zC zrcccPzi!UaZj<_Xo){XHWB!y@E=clrXhYd*8;7LVE<+#LyoF9ts`pz2Tn;we1|qH3 zMiRKjL{i#3Y^5a3_x*gFrP1dVFF8d73PuM*Dr{>ivbT;akMq_i-%`QgsWSJSy07B9 z)?Q+_%ZI_U(JtsGvKbs7*IOW`cLilyXh*5Q%xJO&K!8g(7h3H1O379^8T)H?G$7|% z->h7T^*7SP#t+!cmqcSysfmCj&4RplcU-#OGC|Dkrt2z&8E2JmI~Ju@9`W&(UVply zszlypB5rWf`xcZOt!2qwivV{(*US&dC~6_HFSg5)vh?}2MgG!qf6OBkZ+{&&ftas` zI$8MrVsZNB@-+7cmVeWq&$ApC7eMUzW76z3jQc1k1$IKEG@#7+t*UM?C~Dx@)Qim2 zV$SzOSUqYyw=zM+yu{)7M6im`5mE<;LAmJ%=qE@PE7=ll)xy*=1O}It&#Z7?5ME6! zPK!ilt)fUepZ(0itS=%-z^Ds;hurdrT{`j={D_?vptZ#@E;NJuli7Oqi-Wfi;_qG+VSyM8Zts1 zBraEj+e_ow77Ccq{^x|f>nyB&8%E`)>#Bd3*3#cgomByD@$T(fI@~+NOUz#>HxV)6 zq~TAk!NC-6%3@?@Q+x(*4VT**3lAL~?Y!X&pRg=QVz)D!xs(FdpvSu=`#KRN!N;Gm zzCFMdhjKRYHWfOni1bC=%k39PB;ZYKP!y?yvMkyL_A5l*mjMXQt&}#Nv0IQ;W7)0c z?RBi;l&ZfQL0v%qvZ{gxW;3SAOJ~L|&^w5WSs9Z|Vy-T%BFDTHO9splU{F)GE!gWA zH1E^N@X00>zHejIY8Vb;z+XwXK`n{5!-cDrn6+^}lz>bLf^1kL7Hj({8pq*#{fW=D zB2i_HKaM?FK?<&bxXm+Ba+ycB_A)U^GmYq<2MUGCN}wqpVYHbKA%Yg)X#~%>n#Bwl z;98_qiAlgP789Sbt=U|WbhQJaoH8{c59P(P<`m+rJX1=j#WIu^#N~GcR=D5Us9T-L zGtV$Am*51$vg#O4D<-Cj)MV*kW)hhQtZe+|gLb?JS@b^sI7Rn8G9dl+i>r{}z=QkJ z5-g8;d$`fA{5}fBBeobzO-{8{E=F&FoHS37Ioy)XgK|<(x*5 zNl4hP`ceb^Eo7PIN@k&<>SjYCt<;xv61F>Jn^(7M^n67MY#|wR61_c6*kX z7Wnbw;}%D0)5c=R&!9tZ`c?kAj4ark`oCd4Lr;&dno||^NcENfS7mP*7I%_<4dW2p z9fG^NCb+x1y9N&)Jh($}cZc8(3GVLh?oN0+|9xk(!;{^a>Ferl;KMn0$*-uYTh8sF zc3Q=pZ0%xRj>gRh@I(N+HNLi2Vy&%rVMm#D-$eWD4)PY8nuDqf(1-r=SOkOSMIxV< zC)<~sbaUJUzgZk}SG38?PyTL<~5w^zxsv-sbJ-)c4iR+Ua{rvX*8GS2Q z&+e}{?v`cQBl0CIat))E4CF@mHz%K3m^j?Mi*Fs>bX`1^oaoV;o};Vk2ipc+-kMaE zr*Yyr#DCv8?eUJNDarQk~2nTl08W*0o>2uHT zDjcuX$l+<<^_^m!a)cZ2hR)}H8unUy6suDNW44v@C@>*ieuoeqK1@7m-rNEoVQi*U z#r>YwKTuJjM*T%0?lkl|-^$3()?8qTjQ`CKu!s|cm!>svn+cO4Py_V7a6vK zv5fLr_lyzWWmd&6+QbS3x4}7g-8D|R3nr>yHcargsP)fR1{`YEo9^-HCsfM-(PpFV zc9P@7$@*O4lmKEjkLV2?`3IW~>LL4-Se8@g0A3}BW>Cy@!m#Vds)Ag@DSY!WcKqTs z5yK;&6Q4freBe2+yy z;qYwkFJ@EC)|i=m7thGlTu>@TdxGMmg7^@D;i$YvuU7oZmVSu^nhw@k6p#ye|xm3 zrKClbc8npnRt~moQms2T`MGb(R*cFGJEg>Es~J+s(g&eb(zi8d)RQ>$AZpcfi%EUz zZEptKkv!iL&`D7?l)*x9;sw$7ulgA?0-J4AA(@AV*~CX26=z=+a2TC*;=@g~ykXwV z(m&n$UzHC$ctwuFA4(+*!$a#d!^Sjg7u=*CMab@Q#^@n!5f+GF*7fW_8G8E@9+mJq zPwsH-JoFh_v?Sk4;vA#g>fw6|1yuMU4IrC;MqW!bsxIrJcDUIg=6>EkxiD@4{l@p= zD7OXtrTcEBt!yLR<9uFVf6tla3V9ezyzqVUmWz~eJC_VTuMzAx7Y$D2&{tJ4ZGRyp z6rBkd3zjCYJZN?_o@m1;!d>`)3?Z4m!d==n(DHd^il!@Bzrg@ZobDUL!RAl(U+)8O zpSfk^Biy~w2Hxc}@Wgm=3dx7VQBh?<<*%Q^2_5Fh=ckyEXSCZ@hsho(P5CjbCHBy# z-(I1heFN*O8-00|Z3Km4;79<74qgIe8*%=l=-?0frhqK4e@8+NE6H0f^1*uDRv`8Z z#>70h`a2?_qbIm(6Z)@oNdw9+6YggIaT8o9JBIbEr&&+O;Nb`P$(DLVn1e7E&{GD>;`8EBGS+BNLk!GNV z!;dCk1Y_lYtHyhx)PK#;o5@4R{c0+J{sluG0a(2LSh+RppY(kl-+i0=p6O9^cWLqqP_lU8isB=u~nZ@@IGILgp-EPT}K?!nx({;}O+LI6)cxY7sOscU( z)01db0PAF;qH?sm5zP^WI; zDGEZdnMMb;%)#hEfx(-wdI#gr^Gj!d$AASezkUFgHjckFzidAk|0{p;&xsGwjFy1J zkpP#M5I7|FAkHCWTg+hRzM#3i7Kgxl(iL8cDCqgb;G?+*v z=!9s)px$2^$2^EIVr>%&`F6ir;t?5istGh_k$)M{!Pc`w;w>$sSw?q3{4O3MZg2!` zU|4=)4Zjg4`Quexw=8r%wgOtAvEM*cq*VDTjAq^DkzY1M`}@wB3rV6Q$agsBN084< zou=o9Hh|a5=s2PNm{b<=*gE7f5%fqGfIfYj2a#zcn0Vjjw0?d< z&07d}BWGI-2KV$_Ro{x4kTAbD_wkTK(ftaY4$)-3RO#RFIYWrDgGrF2nCwOb5O&(u zfkR1Q#LpLB4I^8OOYbu2(AKN+#f2|0U{I07v-_BkIw+Zx_<%FmMGo|2 zOE8$K4H!X{`NlQ||@D+%Z3!4+i(q$d^So#Y@cQ%FSY?zFGqz<4ZlM`D5@!eVVoWMgGDizJgfLowq z$4#lnCl=3GPrAMU+=m9$nU*Ort`{y_^bNrml-qCMG!hKbx9mX| z;s$hD`+-E~0&VOtBS{@kJmEV{cO?^KAV>J!s?<axx`BSRz zW8TtxQxF$@8JW)0hzMPz$4`Y|txVmZ&Yja5kK5j|vXPfgZVhCucw4C=SShjVHGZa$ zHGbZs@NF4+zG)85j8_-WY$`120`M@2ok4_}$g8`Is%`HRXf$NXl=Eji6iw$R2P`@= zSYTQ{f36S5hQ^l|Qv{W;-PRPt;;3Qb{ zpq`%HWwP%G38A=>A~?lYo1iNMHx*8N5%JBb!XqN@H4?$Z1?dGHkXq~HltTr{|7baS zh1uOTept^5%1L;ZnJO1TF~85*-rMVI-FNslwFsY6CU-0JbCLrYW3-TZpF~cqd^1x{ z5x0f}{`Amxa@L?kc}gvI=^R$8c8!9(p^#VzqjuGpo4*w!CWk64f2oKnQ*&BvUm=+j zixX@EY030EWl+a2#q;Lxt<+0S8m8~zKs017Q=d$>#~P&ERIKdw4kk2`mc`CeabdzB zLb}~LK1oSXl{2_($rI2CC+^T8{Gc<&C4UL}k@jZCS_Nl2UIljP+dPb{#6pk2OF-^Pn7My#VrkVN`85euchDWIf)fRFl?CqsqDd?a=K z93WN{m7?3_+d!9vZ?|hiH)sE&tuRgOJ3Q$v7;+p?(uJtv@^Gxutm=oT0fWPW+Yym3 zq(l7)aOYw+)4pm|1~zg;fSOkgDVLA)jHr*YWh~cqmJU4>33un{Tx?8t`>iQYA&GDOnTvT)smw#Dgyl{4N+dDF%nLyHT59VAO zl}N0)vIRbbu7UmchDovpLO2A?fn*VWHth6VYmk9&tfeXo?H`5_W`8 zx8w2!wcFtF;_xHAs}a82)6UX12jlI2XjiPDMTk7g#&hFst6eqUW!}{tW{#c9 zkWf|%JI=+vq$IYQNfRCxGF5{x3g4g?&-dw4TIaPSi?lt16Norj2f5;l_JwtYZ^u6Z zwAw@)rYL}&X}D(%cSbH6!`lq=mHkYmO=v&Ph%{?kMEk3L2lDFJDwn#|Pz4X_m0n&j zqjsnZ7W^z&&9PK$aJ2g{F2ig*;`lr!U4P73w)fsnZILOf2j?17vr*BJK!hFddAsBK zQ)&U^pmNd`tD4Ceq5aL#+M2f0sS__Bm*U;WlG6-y1>E^~iDS9ud6`ytgg1ps(}g{z zl6MXIvN&i=wW{&1Ue)^nrn zG);_Redr3(_su#B#LCkK8trP04*|YmyMz4`?A+Y>eWy>*$JR}RR!l3^InunlD`a6v?Up#u(LjO4^z10Fw=n5CiaJQ`-(Rb;%7y9y|!My1V2?2YHZ{cNRKw>6IUVvh&bsf|=t^N(3S)+d+!3Tq7K z#Ww69%c2W_5F;_&+p|z)m*dFQPtIW6^Y!@|ohK4}^BU?^M~|~@-p7x#IJXs^IE^*o zJihQcN$=l6AYFi#TwUUMk9J+f=0UjJJ3TRSEzWCmv^b!;V=q&gq$)AYsV2`AaFWFU>n0qLD=kLX+#FYix^H`WzLpF5|K=`3i=<;=a7`oQPcac~SRhU|n*Na{{K>`iUu39rsGn}MwCK^!gNQG$Wcg>Uz%zJs?!VNOsCc^CgRA0z{ zER<#{2dzk#r(VRF2amb}S-EcUwaCjGb30RtDZ(rWU1p04sXcL`g^FSUd4-}0yJ zAt1RNzp0P3XNIl&`qS#bkFCt}k#_gSJrwAKpJK_EZS>>kWk(q_kVR-~wL!iBe`SCz zm1bUcXsyA0x_)@5?q_D=oVV{t-)8M$@OHX6uyVTTJ~-Mgj%nEa_&ze3iW?P=daWfd z=>E$(M2vr;7P)vP!>T`i{8%@}%>+E;JYs0+n@h}L3cKX3&ekv)O=;x4(lCEFc(Kw` z8;Uu<$gK$D_s}E8h6XkC+Bcl4TxP~Nt`hAk8mRs7SklZ+Kbk2R!TL`|y-gakXEEp( zBE(arS5@$@5R5P|kycP6kFiGQxq5X{=KWR=SO<_dB-e)CX3^m4*4^=Y}I7`LW)P#vn@i0UltGzmJ8ew0b9~XQRVqZeR z;INQ2N3Asj9myMZ9!i+d5PZ6jwPm@@xL*oW+(MFZP>T~?RY;S~g2eT4bxAl)Fwyr| zrhGY%FW@C?`BQe)hi%68E4g~RtD`-^0PUpp_cwV7m}rXvq8W<{@LdsF&BCi+z546E zEb|2AE$U>3Q7g5I8FJ@sHoGW5&oAMg;wyX|YxQcn-Go?Kx^7%;OM%D<%yl!|a7B;1 z%S34!d$*W=z#8tl*TtGBP0h^1IvSkfSxtuh!|7VzUT1I#9`nF;azWlF*;uM31w4($ z#xxT9>$lvgyyVaFXBSb9AX{6j6|3=0>SMVY_u{n;)0QMiMb0HL7dn1~Q_*@y*Xx9<4sSiY4;sQQDI} zDV%S9qMaP0T%TuoB=&l%5}?639j~f=KBO!(*kPp|eZOm5sTI+UIXrdR9C{E!5!5MX zXHcJkU(-OsXLpLp`ZxMM-1wo7L>pRo)^T%;;&NJOPo19;)RP_(dW4`o$ zy|){Wzb{y^XKS4DEILBAw{cy>Px@*W&B2D<^3m1?Rwc+p{dwdVD=Y+0roNw|J4C|I zc%X_n!ESYMb$11!GaZf&8Kt~c(m*Yh%`%D0+B;Zeb#7m#dD-aP>E`{PSLwtJ1k4RU zNt{txARzUBd}{w+cXY20^0=0^iyRlt-r&(*m90_nU)9#o+nV^I77uA3peL4sgyjlD zgcg?uvLkY1OhS)r+t&q=#d(kF`frSZt&QzCm~lr!nHAn<`sb7A(n?gNJ~O#}GI4PR zu13*VVyM=DVG+;Y0~g2KcBEY6q^1Z3&vN}7Q3Fd!5P`Y#MSGpazj0LD*C9etX@}B8 ztd!C1e9`rqL#TqW-23w_NVHZbYS<4S6d%ky5L!x5siZ&De{Xww;^sqF}XRUIXGX}33QOqb33s5eSqOU#2}@H z*4$yMXvjsy!bmd%=_q%Mj_Ra!p$vgs#iSoF;=KD&W7Lq0+GB;{3KcP`qcnNd!cZE> zMi3tsDUw4H$|+i5-jD1d;LvFX@j}yIJVn*5i#E3;y_dIiyzk+^#>K%gXO5nIZOx&; z>|H>*VX0w4IZ!l3swP1Pbp#_3yfk$L;T-WH_an@hF{NBrC2nLm*l;cws2?wF27Z0=&Id28RawsWgBTM|IFiE7`pwiD*NcD@Io_WMbCs2f} zx8M#ivQn}rCGB(a=US$ym(+|5l|$I=cqwSB5@S3>7Dvu~NURcsBOuHAV$vM$NbziW4tE$!XJmDT6UrWa zMXz9O4{K~I(n)}|AYed|?|n+{cE6@%vD=$V9}n?j59-0##=@%>-+1&}sgr2q7w>(4 zo0^5smGTThw{k&ql^JcdT!B9>CdMk$yxEq%`5W3)F{|#+J{?zt$*Xj}JiP0a5Q}s% zt;6Yzt#__0I(@qb>mQ$q_rmM0^PXNkzl&Q)3#xP-VnYEt^v(blbd#M`4Jp(qR~BD> zNM#!$fm$&ZL52kX@*;*jj6%dqve)5#EEMqJR!7Kb7B4Z;KK~~OkxtES zfqPa?nULIh2FW?eS&MXKY~nU%ajG#v@0p|zr}p;?CynAnzcF1+cdy0IOHaXySvDNw zwPFfF@GxVY-ANB?6JxS=V+O_3s-o-j7GtdR7Y9>ZfBCUIXl8k5;E^h(oBai>JT#0% zVlT-1gI;U8SVBaR3M&xtX`erBJ1j;cD(FH zurc}IzW2=v)Asw>Vz=)&HBtE0nIPUr+Z1(T$*IU@3cE%w?P2dTDim z#D1ayqD`|lqi_SLtxIZ5a^-P`-q{;q7v1l3s*E?vVW%x2j4YNBGShE#5!JZ*upRJg zaMb(8=yLQ+dvUyBLvNkCRue66wv%l$wKmCd9~Xw(oNFqU9p^^doF|Ky9i`$d2w)g? z*TS0%UQkF6zu3`SxwAb=jIqnVY0BM~<|Xi^D4DYM&Oqbj!FtCHk4Aq|h^`#hJev(- zDz00{gqA5Pir}4kF(vcu?T^0NsukGdAey-8c&52C*s+qtFML|7CxblPB>Qefk5e8Q z$)}2!@Fn+NikF@;OZDj$1mr*F!j#<4ZFBjlCdV>PY2ltzJqCqlWd~}EHuUP&Ek`hh z5y7fjOgIY`|-?jS#|7}^Lr=`tm@*}*4!|ilci~!9PhGKk*ij?oE#r<7} zr54K!MwNWtRj+ z6Tj8&*F70dE^@9j>&mhfy((S@yZt8hu*XU8_<`aWtX*^Ns-mE@n7juK>KKu?RZOFu z6GR%&>T6{+eC+W@67;pX@7{l(qN;37O=P5+rf36({=w8eGiz$-;>6lQfCFoZ=dNjv zryfYoWm@q7s#LzT*5ZcP>0>BuOj&Ce5}W*TQX>?AZnex`s$~wj^MErS%v+B##d8Le zQ#+bE7nIq-w3;a^3liBkg$t2dynvuCQwB>z{Dj{g^t7Z3o&oBDcwN)!0($=gtopsr zkt_js2H%ZszO^T_w8^o+i!8<(;i^7)(CRi`hr28Fu~PBs_q5E1hZsAoFz7)2K|AG@ z^sPHyf2Wvs#ps;0!~SYxxXF=+2W+cp<7;9g%p>a>-yw})oHJiH!IdS z{|7mm+maJk++>L>bE%iE3(RSQr#e{|HJbKlDO68<XfxR24{2R0HZwIsrDu}o+ahGvb|UKDly zgFA%x9UgW7{Bd8TcID*knM+BqR*}T>bHPI62;I)508C0f?+a%DhiJSj_bwsIWlCoZ znnrx}MId)I+si!;cYDjO^=zhgYA*q0dVJOy;+?!+A__w!CwMeV8)K$y0us}4ctm1|cM0=?1m{I!vVxAn~_Y%J6sh))NAI+H_a%8gnbXCM(qD(S62)}GlI4^lBcqv(?gwlerAz8-si=rcGPl&oc* z#{e;q;DoN@A^Q0gKJfyy6tTC6SpHu2IcrFmpV4!a?Ehgj+{zj=7A5 z1@?wj9NxJ zGLm&T(1r0Ua(dDIFgD7SUg1Q?3;CchouCb9Z(IW-wn9n?O`kOWPQORg3rr!JUO~qy zAO+gM5Z5$a9!18Iw~j)4CMgz~dDvosD?El~;@*Z4Y4qWrj59jll=P4E*ST4kd?u6J z^nCzQ=1<5kB}*Y+^u>wKn0HP9v01E*1Uq1ZS#*X?% z`i}Z^77n&H;R=H`0FCb_G~WVP2V)#(6f=bkGA7`~pzy~xi5`LBKJ;yASKDrC4iQifGliWrDjqtZ22c7iJbJ@NHU=`09E zG5_AH7@Q$Ps>5Vw&U!bce|xAvlMIO81?PKl*%pDVd=gi>6I>_3;eqsulV&ewh$}C9 zjDg3G?>P~OK*j}jj5}!L+*|N+R_TrEB1Y%pK))RTMmf;|w!+L*D9J4${Okv58 zp$=_+>KMrn-Nn@}zT+lbjUC^x9_*$%8{-AVKhxWjxAHy(vN*R<(HaVw$8xU-+WXjU z-;E|Jj}>6iT(Habk(b_Nlf+9qzug`-_b4?a$XoFMRzU^Km04W_!2m@d?c1zfa|0d% zwt0-Wg0=2{)KULA&U3Sflz?<$pr7x*9%o0}54u*y&Hy14$B&MZr4nTn!J~B)5s(u_ zuHTdHUA10;GsnG$*8%|ld=mrS|NB3Ps+h2_6wIiY^zb;GBrVm*&}fYU!xZzHz3i|g ztprU!eYJv^L_ZB(Fg;|E{20R+Gus&R*cSA_DE;^~%?um`t;BG@RJ8&HC6)9xw768g z0!1Oq%A9w(%jm*di?|8(Zq5=V{st=Qq-eqOrimCXJvGaWL~{fWPEx2 z&P-@{{TmgnIIOc>H|e8xCE7BK5jr86F0u1%qaGUxn_UT2tR(gKB17OY zF|rL^3e#v3Fp7g^%u&W?_{ewhzO%$>VoX&XAR^_66b@H$aPI?7Gt3Jt4Xb?R<=;?- zkp@k{FNUkY3{yAhc7P|sh^_;|C@k$Y@c9l_W#IE+(!hP8IAe+Pr$g+i#yygiS4Ygm)VAb0uHnIc)?k6tP1k(KE#og~H>0PKB| zIR2?BCx@6rF;WkW<03S|iYR>BSe!`wCSM`-T>rxDParuF;6yHRjhb2+zflDF*}5K~jW$ofY>%}T?_ z3=sZ;vm?)0H6r#ea@#O(hRxC8Y5S>e^v!-$XbH<7*fiEq*|AQm`Mgoay6#Nq)LrgL z3C~%)7lYN1{CtTBE1uMI*}HQWpEy!e_bFTJIq)V*D2X)d?!EM6-FXH@OAv6`XWSPY z1UfU3Pqw)3JV31Ev)Ds5<*$W#sJgXsLt%y<4kOTeg|+%5 zaFVYok){jI`|DTkdv&H3OR;N@4)VyXwo=t(yF$1;Pc5$vL8RK zMDQh>e_?OSMjl0WG>di-L*X*)N9{!4Nnc|K96I?iF7hL;k%+*~NW=HmjjN0nv^<2a z#~AG@ryYD}Uql$9gXmo#iWyB2Yh2X-&brH#SZWp2uum46Mc$9 z-Kwx1OK5s;J}+S!C4O__OLvirgOBXC-?@zuq?dGV6*HltSH`%j?Q%=DARdxSIM>osj)faf9Ye zuCvAZm0*jw#(J8b}|8BrXRCmp%u0FiHM$jZ+X7lvNOF zO_Z$3mO>7^MPYmaYiiU*ui+CGI-vlufdbo-Aq0o|@es+(`&?Tf3MjBqQ$?iUnK4v4 z1W+N3mhzOdXHc8T_2D#YgWzA;@F4y9(0S8F}bP# zUZzQQLP?{CS$2J|m=-BDx61nmu?H!xvg^cECu^A7*s$z_OqFhP@JAZ`Ck|^9WrIFv z95q#!x93c*jqJ@S@kKQw5!zE=RDn}C_>TaTq;Z6fB> zmJo7?v`C8JIP1e@IN}ufjnvKHQ*xIJteVrz`iR);wy;Bj68ok>45Xoy@Cu2gZ|fe? zHEJi2t7}dY`*8H!0;(vQ;K%Qfxt0|2K7Pwn(2qgimbtQ^nI!P7p}7{hS*_#R@8&q_ zrUwTbcHv7D7W5~(zP5_;8@d5Vt7}>qshauDlLnUOeQcKmSJMXfC)FJk%`ERG^OEVE zc3C3y8EVvT${{c~3`Z7hM?1d2wua1R?)p4;ID*POrQmS-6u}4jXsS-AaL&WWs*L|} zyI9{cIu>NU(g@|OaCnkiT-_;JlOozrZYqUD6!eJyIhRYx&)@dW%w6d#^9WTH({_o$ zYG`GhwvxEgB*xJ2eN%HwKdgsM#p}#Ml$JC$I)q~V_#`6|EQDF z`-9oXF##B-)UUv^=SY?-spUypH=o**CXFFB*(vLKvaLh(8+ zt0&YLACWM-Cj$pb~9DX+)RAhT5ikr7}0XeZH`xslm zH5i>^T<}?b;Xvw;b@BM7nL!vTRewdP59XjccwO##!(|Y~(V@Y&wD(-Qy~e@rGze3e z<9iD}x#1uOyu`-9$R&>tdnfXKGnrc_OMB7}6AJ>FV)9Be*?CaJ?L5B0Xakv%WjobL zR09wnzp?LcYQ|;-CQGLyo1XpjbhU^!%$r2z@HMK7#;UD)Hq9mw`Lw)0;b`dN<3mJk z_!dbZ#SrM^B)A>v7Qb%_O-vx;W~NqdS1Dxf*+0Plwi1{E$ooZbPSpw#lq8pYzh=9z zp5lh)Rr>O_ueW#i6cm$GdTx6ycrfzKVqQU-Q9}*CWdS#sNpW|xnb-;=ox}GEV?i=$ z&T}N+f|V^Btr5gAQahl{3uE|e?BN2TZWcd|y_FwIW6koLy&EE-HT?&~C*`{+0qUyh zf@&wjPWLFroS!OOxg6JJXOY`ZRo$C7RwGW8}XOs-Q!vyGX+3XT!tBCJa`eNWT?f zxhLE2>fVm$gLtVj`d^s2>ru)vX=Bm&VRCKa&Z#0zYTqkA<}Ax|!Qu+@iN&}vr?ljI zYG&x67m7GG%L4>uTlAG`z7|-_OWAZ;+wkgRE@u0JZ@bRfE7|j$Yl2@Up?_t*7izHz ze@-HMYd^s8c!>s7lHk;1MC{5iB_=a{J5x&7Zgf-Y>~Tp7z}owI^os8E4FI5unY zvZCg4>+$5cB@M1JdX$#-78P5i3Cy|7p1H3@Y7*b+dv$@@@HKluSJ%3WxKpqy2q)t6 z*gg}^$DV|BcW#*zDG~z{LM7a9e%4iZ4sYRc{Zvz3W@VUW9N0<`KrLjxi$aZL&EPXH zR-d123ZGTEdYEgv_pSq-#kZcnD>vQp={ORJnt6T-e>?qBqkZG%A;pKcI7hMfHhs15O`m0|NG!AgEG`j@3%)-s5Xf1dA$a zXpl~FS3LIB6S7-QBoupPnqJ{`E6$e>Q2%6zbp9w*KaY16Km%a^R5pv=C{(`1!k?XfL@bvr^&*7ZHS_h8CN;+rI4{ zO8V%?f;~WtIWPz+=+E;N6wqEuib854qTwdsWGw=SEP4z0>mRRNpPxVdPSoW;ln7sg zF)*ZPR{+5B0AN24F@L;reST(2{TA$BvM;(O`i73S_O5^c_1Bmd&k|B>08Dql(I5X0 zK)`pd4+`M8^jl05TYGDL$KPPNiUh$)1F)U|Sh#<}3IJIATP!nUs}H|HQZv$ujRv5E z0=6=Lwh9)o!TBxH2Yq|}|4XiU-9pt8D6uVoRVNTYKzM($Y94Uc`8zB?XZ=f_<297c zsEEcp0K`v09`Zjy-NF7BC^x_*s_vg|OkRTqn@jyT0obSW|4b2gz+v@w_8Hn*TkG2x z{mdkK4JPI^Pu>ZztP=qE=f>s(y7Kp6HURC&-#~#ou($dHgbpzoUqfXh{ud}G2S;1$ z-#~o>_G*OyOeYNZf7L1bqw8{g^a1nacUA#L)6vG*{?`?>13kZ+lf5xOxfr1HW^Df( z689f^K$8H~gbIy+1@QeMX(9M$B+^onP6o#IHpT$?#@`SfeHd~4DY|R{m_E#ZumHYu zefC)XHj$vdg9Bg;?e%{{prm%eEPxDn&Xr!bqhF{`41-SJpoz`d>r&Kic~{Z~ZSbW=sFd^YY4f|DRp?J73^0=&8!Tg8r}j+}}B$ zegU^s{}u3`Tv4wre(iYr1&memSHS=0hI$S7+FA4qu#(aG_`wKI<;jfJR b*Hx{YBsky%^Yh?A4x|a#NYixu{O$h(4U{Xp literal 0 HcmV?d00001 diff --git a/testing/owners.txt b/testing/owners.txt new file mode 100644 index 00000000000..c1bbe9a9e5c --- /dev/null +++ b/testing/owners.txt @@ -0,0 +1,2 @@ +joinnis +nanthi \ No newline at end of file diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml new file mode 100644 index 00000000000..712d6f67762 --- /dev/null +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -0,0 +1,374 @@ +resources: +- repo: self + +trigger: + batch: true + branches: + include: + - 'main' + +pr: + branches: + include: + - '*' + +stages: +- stage: BuildTestPublishExtension + displayName: "Build, Test, and Publish Extension" + variables: + TEST_PATH: $(Agent.BuildDirectory)/s/testing + CLI_REPO_PATH: $(Agent.BuildDirectory)/s + EXTENSION_NAME: "connectedk8s" + EXTENSION_FILE_NAME: "connectedk8s" + SUBSCRIPTION_ID: "15c06b1b-01d6-407b-bb21-740b8617dea3" + RESOURCE_GROUP: "K8sPartnerExtensionTest" + BASE_CLUSTER_NAME: "connectedk8s-cluster" + jobs: + - template: ./templates/run-test.yml + parameters: + jobName: BasicOnboardingTest + path: ./test/configurations/BasicOnboarding.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: AutoUpdateTest + path: ./test/configurations/AutoUpdate.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: ProxyTest + path: ./test/configurations/Proxy.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: GatewayTest + path: ./test/configurations/Gateway.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: WorkloadIdentityTest + path: ./test/configurations/WorkloadIdentity.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: TroubleshootTest + path: ./test/configurations/Troubleshoot.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: Connectedk8sProxyTest + path: ./test/configurations/ConnectProxy.Tests.ps1 + - job: BuildPublishExtension + pool: + vmImage: 'ubuntu-20.04' + displayName: "Build and Publish the Extension Artifact" + variables: + CLI_REPO_PATH: $(Agent.BuildDirectory)/s + EXTENSION_NAME: "connectedk8s" + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.6' + inputs: + versionSpec: 3.6 + - bash: | + set -ev + echo "Building extension ${EXTENSION_NAME}..." + + # prepare and activate virtualenv + pip install virtualenv + python3 -m venv env/ + source env/bin/activate + + # clone azure-cli + pip install --upgrade pip + pip install azdev + + ls $(CLI_REPO_PATH) + + azdev --version + azdev setup -r $(CLI_REPO_PATH) -e $(EXTENSION_NAME) + azdev extension build $(EXTENSION_NAME) + workingDirectory: $(CLI_REPO_PATH) + displayName: "Setup and Build Extension with azdev" + - task: PublishBuildArtifacts@1 + inputs: + pathToPublish: $(CLI_REPO_PATH)/dist + +- stage: AzureCLIOfficial + displayName: "Azure Official CLI Code Checks" + dependsOn: [] + jobs: + - job: CheckLicenseHeader + displayName: "Check License" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.10' + inputs: + versionSpec: 3.10 + - bash: | + set -ev + + # prepare and activate virtualenv + python -m venv env/ + + chmod +x ./env/bin/activate + source ./env/bin/activate + + # clone azure-cli + git clone -q --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli + + pip install --upgrade pip + pip install -q azdev + + azdev setup -c ../azure-cli -r ./ + + azdev --version + az --version + + azdev verify license + + - job: IndexVerify + displayName: "Verify Extensions Index" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.10' + inputs: + versionSpec: 3.10 + - bash: | + #!/usr/bin/env bash + set -ev + pip install wheel==0.30.0 requests packaging + export CI="ADO" + python ./scripts/ci/test_index.py -v + displayName: "Verify Extensions Index" + + - job: UnitTests + displayName: "Unit Tests" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.12' + inputs: + versionSpec: '3.12' + - bash: pip install wheel==0.30.0 + displayName: 'Install wheel==0.30.0' + - bash: | + set -ev + + # prepare and activate virtualenv + pip install virtualenv + python -m virtualenv venv/ + source ./venv/bin/activate + + # clone azure-cli + git clone --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli + + pip install --upgrade pip + pip install azdev + + azdev --version + + azdev setup -c ../azure-cli -r ./ -e connectedk8s + current_dir=$(pwd) + echo "Current directory: $current_dir" + pip install pytest + cd /home/vsts/work/1/s/src/connectedk8s/azext_connectedk8s/tests/unittests + pytest --junitxml=test-results.xml + + displayName: 'Run UnitTests test' + - task: PublishTestResults@2 + inputs: + testResultsFormat: 'JUnit' + testResultsFiles: '**/test-results.xml' + failTaskOnFailedTests: true + - job: SourceTests + displayName: "Integration Tests, Build Tests" + pool: + vmImage: 'ubuntu-latest' + strategy: + matrix: + Python39: + python.version: '3.9' + Python310: + python.version: '3.10' + Python311: + python.version: '3.11' + Python312: + python.version: '3.12' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python $(python.version)' + inputs: + versionSpec: '$(python.version)' + - bash: pip install wheel==0.30.0 + displayName: 'Install wheel==0.30.0' + - bash: | + set -ev + + # prepare and activate virtualenv + pip install virtualenv + python -m virtualenv venv/ + source ./venv/bin/activate + + # clone azure-cli + git clone --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli + + pip install --upgrade pip + pip install azdev + + azdev --version + + azdev setup -c ../azure-cli -r ./ -e connectedk8s + azdev test connectedk8s + displayName: 'Run integration test and build test' + + - job: AzdevLinterModifiedExtensions + displayName: "azdev linter on Modified Extensions" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.12' + inputs: + versionSpec: 3.12 + - bash: | + set -ev + + # prepare and activate virtualenv + pip install virtualenv + python -m virtualenv venv/ + source ./venv/bin/activate + + # clone azure-cli + git clone --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli + + pip install --upgrade pip + pip install azdev + + azdev --version + + azdev setup -c ../azure-cli -r ./ -e connectedk8s + # Installing setuptools with a version higher than 70.0.0 will not generate metadata.json + pip install setuptools==70.0.0 + pip list -v + + # overwrite the default AZURE_EXTENSION_DIR set by ADO + AZURE_EXTENSION_DIR=~/.azure/cliextensions az --version + + AZURE_EXTENSION_DIR=~/.azure/cliextensions azdev linter --include-whl-extensions connectedk8s + displayName: "CLI Linter on Modified Extension" + env: + ADO_PULL_REQUEST_LATEST_COMMIT: $(System.PullRequest.SourceCommitId) + ADO_PULL_REQUEST_TARGET_BRANCH: $(System.PullRequest.TargetBranch) + + - job: AzdevStyleModifiedExtensions + displayName: "azdev style on Modified Extensions" + continueOnError: true + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.12' + inputs: + versionSpec: 3.12 + - bash: | + set -ev + + # prepare and activate virtualenv + python -m venv env + chmod +x env/bin/activate + source ./env/bin/activate + + # clone azure-cli + git clone -q --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli + + pip install --upgrade pip + pip install azdev + + azdev --version + + azdev setup -c ../azure-cli -r ./ -e connectedk8s + # Installing setuptools with a version higher than 70.0.0 will not generate metadata.json + pip install setuptools==70.0.0 + pip list -v + az --version + + # overwrite the default AZURE_EXTENSION_DIR set by ADO + AZURE_EXTENSION_DIR=~/.azure/cliextensions az --version + + AZURE_EXTENSION_DIR=~/.azure/cliextensions azdev style connectedk8s + displayName: "azdev style on Modified Extensions" + env: + ADO_PULL_REQUEST_LATEST_COMMIT: $(System.PullRequest.SourceCommitId) + ADO_PULL_REQUEST_TARGET_BRANCH: $(System.PullRequest.TargetBranch) + + - job: RuffCheck + displayName: "Lint connectedk8s with ruff check" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.12' + inputs: + versionSpec: 3.12 + - bash: | + set -ev + + # prepare and activate virtualenv + cd src/connectedk8s + python -m venv env + source ./env/bin/activate + + pip install --upgrade pip + pip install azure-cli --editable .[linting] + + ruff check + + displayName: "ruff check" + + - job: RuffFormat + displayName: "Check connected8ks formatting with ruff" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.12' + inputs: + versionSpec: 3.12 + - bash: | + set -ev + + # prepare and activate virtualenv + cd src/connectedk8s + python -m venv env + source ./env/bin/activate + + pip install --upgrade pip + pip install azure-cli --editable .[linting] + + ruff format --check + + displayName: "ruff format check" + + - job: TypeChecking + displayName: "Typecheck connected8ks with mypy" + pool: + vmImage: 'ubuntu-latest' + steps: + - task: UsePythonVersion@0 + displayName: 'Use Python 3.12' + inputs: + versionSpec: 3.12 + - bash: | + set -ev + + # prepare and activate virtualenv + cd src/connectedk8s + python -m venv env + source ./env/bin/activate + + pip install --upgrade pip + pip install azure-cli --editable .[linting] + + mypy + + displayName: "mypy" diff --git a/testing/pipeline/templates/run-test.yml b/testing/pipeline/templates/run-test.yml new file mode 100644 index 00000000000..f1d42ae9714 --- /dev/null +++ b/testing/pipeline/templates/run-test.yml @@ -0,0 +1,112 @@ +parameters: + jobName: '' + path: '' + +jobs: +- job: ${{ parameters.jobName}} + pool: + vmImage: 'ubuntu-20.04' + steps: + - bash: | + echo "Installing helm3" + curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 + chmod 700 get_helm.sh + ./get_helm.sh --version v3.6.3 + echo "Installing kubectl" + curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl" + chmod +x ./kubectl + sudo mv ./kubectl /usr/local/bin/kubectl + kubectl version --client + displayName: "Setup the VM with helm3 and kubectl" + + - task: UsePythonVersion@0 + displayName: 'Use Python 3.6' + inputs: + versionSpec: 3.6 + + - bash: | + set -ev + echo "Building extension ${EXTENSION_NAME}..." + # prepare and activate virtualenv + pip install virtualenv + python3 -m venv env/ + source env/bin/activate + # clone azure-cli + git clone -q --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli + pip install --upgrade pip + pip install -q azdev + ls $(CLI_REPO_PATH) + azdev --version + azdev setup -c ../azure-cli -r $(CLI_REPO_PATH) -e $(EXTENSION_NAME) + azdev extension build $(EXTENSION_NAME) + workingDirectory: $(CLI_REPO_PATH) + displayName: "Setup and Build Extension with azdev" + + - bash: | + K8S_CONFIG_VERSION=$(ls ${EXTENSION_FILE_NAME}* | cut -d "-" -f2) + echo "##vso[task.setvariable variable=K8S_CONFIG_VERSION]$K8S_CONFIG_VERSION" + cp * $(TEST_PATH)/bin + workingDirectory: $(CLI_REPO_PATH)/dist + displayName: "Copy the Built .whl to Extension Test Path" + + - bash: | + RAND_STR=$RANDOM + AKS_CLUSTER_NAME="${BASE_CLUSTER_NAME}-${RAND_STR}-aks" + ARC_CLUSTER_NAME="${BASE_CLUSTER_NAME}-${RAND_STR}-arc" + + JSON_STRING=$(jq -n \ + --arg SUB_ID "$SUBSCRIPTION_ID" \ + --arg RG "$RESOURCE_GROUP" \ + --arg AKS_CLUSTER_NAME "$AKS_CLUSTER_NAME" \ + --arg ARC_CLUSTER_NAME "$ARC_CLUSTER_NAME" \ + --arg K8S_CONFIG_VERSION "$K8S_CONFIG_VERSION" \ + '{subscriptionId: $SUB_ID, resourceGroup: $RG, aksClusterName: $AKS_CLUSTER_NAME, arcClusterName: $ARC_CLUSTER_NAME, extensionVersion: {"connectedk8s": $K8S_CONFIG_VERSION}}') + echo $JSON_STRING > settings.json + cat settings.json + workingDirectory: $(TEST_PATH) + displayName: "Generate a settings.json file" + + - bash : | + echo "Downloading the kind script" + curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.24.0/kind-linux-amd64 + chmod +x ./kind + ./kind create cluster + displayName: "Create and Start the Kind cluster" + + - bash: | + curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash + displayName: "Upgrade az to latest version" + + - bash: | + curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 + chmod 700 get_helm.sh + ./get_helm.sh --version v3.6.3 + displayName: "Install Helm" + + - task: AzureCLI@2 + displayName: Bootstrap + inputs: + azureSubscription: AzureResourceConnection + scriptType: pscore + scriptLocation: inlineScript + inlineScript: | + .\Bootstrap.ps1 -CI + workingDirectory: $(TEST_PATH) + + - task: AzureCLI@2 + displayName: Run the Test Suite for ${{ parameters.path }} + inputs: + azureSubscription: AzureResourceConnection + scriptType: pscore + scriptLocation: inlineScript + inlineScript: | + .\Test.ps1 -CI -Path ${{ parameters.path }} -Type connectedk8s + workingDirectory: $(TEST_PATH) + continueOnError: true + + - task: PublishTestResults@2 + inputs: + testResultsFormat: 'JUnit' + testResultsFiles: '**/testing/results/*.xml' + failTaskOnFailedTests: true + condition: succeededOrFailed() diff --git a/testing/settings.template.json b/testing/settings.template.json new file mode 100644 index 00000000000..657126c20aa --- /dev/null +++ b/testing/settings.template.json @@ -0,0 +1,12 @@ +{ + "subscriptionId": "", + "resourceGroup": "", + "aksClusterName": "", + "arcClusterName": "", + + "extensionVersion": { + "k8s-extension": "0.3.0", + "k8s-extension-private": "0.1.0", + "connectedk8s": "1.0.0" + } +} \ No newline at end of file diff --git a/testing/test/configurations/AutoUpdate.Tests.ps1 b/testing/test/configurations/AutoUpdate.Tests.ps1 new file mode 100644 index 00000000000..d55029ceeb8 --- /dev/null +++ b/testing/test/configurations/AutoUpdate.Tests.ps1 @@ -0,0 +1,62 @@ +Describe 'Auto Upgrade Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Check if basic onboarding works with auto-upgrade disabled' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --disable-auto-upgrade --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Auto Update: $autoUpdate" + if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Disabled") { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Enable auto-upgrade using update cmd' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --auto-upgrade true + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Auto Update: $autoUpdate" + if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Enabled") { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/configurations/BasicOnboarding.Tests.ps1 b/testing/test/configurations/BasicOnboarding.Tests.ps1 new file mode 100644 index 00000000000..541327682c0 --- /dev/null +++ b/testing/test/configurations/BasicOnboarding.Tests.ps1 @@ -0,0 +1,62 @@ +Describe 'Basic Onboarding Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Check if basic onboarding works correctly' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Auto Update: $autoUpdate" + if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Enabled") { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Disable auto-upgrade' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --auto-upgrade false + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Auto Update: $autoUpdate" + if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Disabled") { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/configurations/ConnectProxy.Tests.ps1 b/testing/test/configurations/ConnectProxy.Tests.ps1 new file mode 100644 index 00000000000..4de00bbeba0 --- /dev/null +++ b/testing/test/configurations/ConnectProxy.Tests.ps1 @@ -0,0 +1,98 @@ +Describe 'Connectedk8s Proxy Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Check if basic onboarding works correctly' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $provisioningState = ($output | ConvertFrom-Json).provisioningState + Write-Host "Provisioning State: $provisioningState" + if ($provisioningState -eq $SUCCEEDED) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Connectedk8s proxy test with non-empty kubeconfig' { + # Start the proxy command as a background job + $proxyJob = Start-Job -ScriptBlock { + param($ClusterName, $ResourceGroup) + + # Capture output and errors + try { + $output = az connectedk8s proxy -n $ClusterName -g $ResourceGroup 2>&1 + return @{ Success = $LASTEXITCODE -eq 0; Output = $output } + } catch { + return @{ Success = $false; Output = $_.Exception.Message } + } + } -ArgumentList $ENVCONFIG.arcClusterName, $ENVCONFIG.resourceGroup + + # Wait for a certain amount of time (e.g., 30 seconds) + Start-Sleep -Seconds 60 + + # Display the output + Write-Host "Proxy Job State: $($proxyJob.State)" + + # Check if the job ran successfully + $proxyJob.State | Should -Be 'Running' + + # Check if the kubeconfig file has been updated to use the proxy + $kubeconfigPath = "~/.kube/config" + $kubeconfig = Get-Content $kubeconfigPath -Raw | ConvertFrom-Yaml + # Extract the current context + $currentContext = $kubeconfig.'current-context' + + # Validate that the current context is for the arc machine + $currentContext | Should -Be $ENVCONFIG.arcClusterName + + # Find the cluster associated with the current context + $context = $kubeconfig.contexts | Where-Object { $_.name -eq $currentContext } + $clusterName = $context.context.cluster + + # Retrieve the server URL for the cluster + $cluster = $kubeconfig.clusters | Where-Object { $_.name -eq $clusterName } + $server = $cluster.cluster.server + + # Validate the server URL + $server | Should -Match "^https://127.0.0.1:47011/proxies/" + + # Check if the proxy command ran successfully + $kubectlJob = Start-Job -ScriptBlock { + try { + $output = kubectl get pods -n azure-arc 2>&1 + return @{ Success = $LASTEXITCODE -eq 0; Output = $output } + } catch { + return @{ Success = $false; Output = $_.Exception.Message } + } + } + + $kubectlJob | Wait-Job + $kubectlResult = Receive-Job -Job $kubectlJob + + # Assert that the result is 0 + $kubectlResult.Success | Should -BeTrue + + Stop-Job -Job $proxyJob + Remove-Job -Job $proxyJob + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/configurations/Gateway.Tests.ps1 b/testing/test/configurations/Gateway.Tests.ps1 new file mode 100644 index 00000000000..37dab0eccc9 --- /dev/null +++ b/testing/test/configurations/Gateway.Tests.ps1 @@ -0,0 +1,116 @@ +Describe 'Onboarding with Gateway Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + + $gatewayResourceId = "/subscriptions/15c06b1b-01d6-407b-bb21-740b8617dea3/resourceGroups/connectedk8sCLITestResources/providers/Microsoft.HybridCompute/gateways/gateway-test-cli" + } + + It 'Check if onboarding works with gateway enabled' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --gateway-resource-id $gatewayResourceId --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() + $gatewayId = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("resourceId").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Gateway Status: $gatewayStatus" + Write-Host "Gateway Id: $gatewayId" + if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true -and $gatewayId -eq $gatewayResourceId) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Disable the gateway' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-gateway + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Gateway Status: $gatewayStatus" + if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $false) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Update the cluster to use gateway again using update cmd' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --gateway-resource-id $gatewayResourceId + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() + $gatewayId = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("resourceId").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Gateway Status: $gatewayStatus" + Write-Host "Gateway Id: $gatewayId" + if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true -and $gatewayId -eq $gatewayResourceId) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Disable the gateway' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-gateway + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Gateway Status: $gatewayStatus" + if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $false) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/configurations/Proxy.Tests.ps1 b/testing/test/configurations/Proxy.Tests.ps1 new file mode 100644 index 00000000000..bda7b06e4bc --- /dev/null +++ b/testing/test/configurations/Proxy.Tests.ps1 @@ -0,0 +1,65 @@ +Describe 'Proxy Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Check if basic onboarding works correctly with proxy enabled' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --proxy-skip-range logcollector --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $provisioningState = ($output | ConvertFrom-Json).provisioningState + Write-Host "Provisioning State: $provisioningState" + if ($provisioningState -eq $SUCCEEDED) { + $isProxyEnabled = helm get values -n azure-arc-release azure-arc -o yaml | grep isProxyEnabled + Write-Host "$isProxyEnabled" + if ($isProxyEnabled -match "isProxyEnabled: true") { + break + } + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Disable proxy' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-proxy + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $provisioningState = ($output | ConvertFrom-Json).provisioningState + Write-Host "Provisioning State: $provisioningState" + if ($provisioningState -eq $SUCCEEDED) { + $isProxyEnabled = helm get values -n azure-arc-release azure-arc -o yaml | grep isProxyEnabled + Write-Host "$isProxyEnabled" + if ($isProxyEnabled -match "isProxyEnabled: false") { + break + } + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/configurations/Troubleshoot.Tests.ps1 b/testing/test/configurations/Troubleshoot.Tests.ps1 new file mode 100644 index 00000000000..c9cb4e26010 --- /dev/null +++ b/testing/test/configurations/Troubleshoot.Tests.ps1 @@ -0,0 +1,40 @@ +Describe 'Troubleshoot Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Verify cluster onboarding process' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $provisioningState = ($output | ConvertFrom-Json).provisioningState + Write-Host "Provisioning State: $provisioningState" + if ($provisioningState -eq $SUCCEEDED) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Verify troubleshoot command functionality' { + az connectedk8s troubleshoot -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeTrue + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/configurations/WorkloadIdentity.Tests.ps1 b/testing/test/configurations/WorkloadIdentity.Tests.ps1 new file mode 100644 index 00000000000..c728b6a5236 --- /dev/null +++ b/testing/test/configurations/WorkloadIdentity.Tests.ps1 @@ -0,0 +1,239 @@ +Describe 'Onboarding with Workload Identity Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Check if onboarding works with oidc and workload identity enabled' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --enable-oidc-issuer --enable-workload-identity --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() + $oidcIssuerProfile = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("enabled").GetBoolean() + $issuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("issuerUrl").GetString() + $selfHostedIssuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("selfHostedIssuerUrl").GetString() + $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Security Profile Status: $securityProfile" + Write-Host "OIDC Issuer Profile Status: $oidcIssuerProfile" + Write-Host "Issuer Url: $issuerUrl" + Write-Host "Self Hosted Issuer Url: $selfHostedIssuerUrl" + Write-Host "Agent State: $agentState" + if ( + $provisioningState -eq $SUCCEEDED -and + $securityProfile -eq $true -and + $oidcIssuerProfile -eq $true -and + ![string]::IsNullOrEmpty($issuerUrl) -and + $issuerUrl -like "*unitedkingdom*" -and + [string]::IsNullOrEmpty($selfHostedIssuerUrl) -and + $agentState -eq $SUCCEEDED + ) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Disable workload identity' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-workload-identity + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() + $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Security Profile Status: $securityProfile" + Write-Host "Agent State: $agentState" + if ($provisioningState -eq $SUCCEEDED -and $securityProfile -eq $false -and $agentState -eq $SUCCEEDED) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Update the cluster to use workload identity again using update cmd' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --enable-workload-identity + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() + $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Security Profile Status: $securityProfile" + Write-Host "Agent State: $agentState" + if ( + $provisioningState -eq $SUCCEEDED -and + $securityProfile -eq $true -and + $agentState -eq $SUCCEEDED + ) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + Start-Sleep -Seconds 10 + } +} + +Describe 'Updating with Workload Identity Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Onboard a cluster to arc' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $provisioningState = ($output | ConvertFrom-Json).provisioningState + Write-Host "Provisioning State: $provisioningState" + if ($provisioningState -eq $SUCCEEDED) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It 'Update the cluster with oidc and workload identity enabled' { + az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --enable-oidc-issuer --enable-workload-identity + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() + $oidcIssuerProfile = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("enabled").GetBoolean() + $issuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("issuerUrl").GetString() + $selfHostedIssuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("selfHostedIssuerUrl").GetString() + $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Security Profile Status: $securityProfile" + Write-Host "OIDC Issuer Profile Status: $oidcIssuerProfile" + Write-Host "Issuer Url: $issuerUrl" + Write-Host "Self Hosted Issuer Url: $selfHostedIssuerUrl" + Write-Host "Agent State: $agentState" + if ( + $provisioningState -eq $SUCCEEDED -and + $securityProfile -eq $true -and + $oidcIssuerProfile -eq $true -and + ![string]::IsNullOrEmpty($issuerUrl) -and + $issuerUrl -like "*unitedkingdom*" -and + [string]::IsNullOrEmpty($selfHostedIssuerUrl) -and + $agentState -eq $SUCCEEDED + ) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + Start-Sleep -Seconds 10 + } +} + +Describe 'Creating with Workload Identity Scenario and Self Hosted Issuer' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + + $SelfHostedIssuer = "https://eastus.oic.prod-aks.azure.com/fc50e82b-3761-4218-8691-d98bcgb146da/e6c4bf03-84d9-480c-a269-37a41c28c5cb/" + } + + It 'Check if onboarding works with oidc enabled and self-hosted issuer url passed in' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --enable-oidc-issuer --self-hosted-issuer $SelfHostedIssuer --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $oidcIssuerProfile = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("enabled").GetBoolean() + $issuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("issuerUrl").GetString() + $selfHostedIssuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("selfHostedIssuerUrl").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "OIDC Issuer Profile Status: $oidcIssuerProfile" + Write-Host "Issuer Url: $issuerUrl" + Write-Host "Self Hosted Issuer Url: $selfHostedIssuerUrl" + if ( + $provisioningState -eq $SUCCEEDED -and + $oidcIssuerProfile -eq $true -and + [string]::IsNullOrEmpty($issuerUrl) -and + ![string]::IsNullOrEmpty($selfHostedIssuerUrl) -and + $selfHostedIssuerUrl -eq $SelfHostedIssuer + ) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file diff --git a/testing/test/helper/Constants.ps1 b/testing/test/helper/Constants.ps1 new file mode 100644 index 00000000000..43006f78a69 --- /dev/null +++ b/testing/test/helper/Constants.ps1 @@ -0,0 +1,5 @@ +$ENVCONFIG = Get-Content -Path $PSScriptRoot/../../settings.json | ConvertFrom-Json + +$MAX_RETRY_ATTEMPTS = 30 +$ARC_LOCATION = "uksouth" +$SUCCEEDED = "Succeeded" \ No newline at end of file From 40926a37d93e192bcd5e8798df383d4125af1154 Mon Sep 17 00:00:00 2001 From: Atchut Kumar Barli Date: Tue, 25 Mar 2025 10:24:35 -0700 Subject: [PATCH 02/22] Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy --- testing/pipeline/k8s-custom-pipelines.yml | 4 ++ .../configurations/BasicOnboarding.Tests.ps1 | 2 +- .../configurations/ForcedDelete.Tests.ps1 | 38 +++++++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 testing/test/configurations/ForcedDelete.Tests.ps1 diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml index 712d6f67762..a93ebb4826a 100644 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -52,6 +52,10 @@ stages: parameters: jobName: Connectedk8sProxyTest path: ./test/configurations/ConnectProxy.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: ForcedDeleteTest + path: ./test/configurations/ForcedDelete.Tests.ps1 - job: BuildPublishExtension pool: vmImage: 'ubuntu-20.04' diff --git a/testing/test/configurations/BasicOnboarding.Tests.ps1 b/testing/test/configurations/BasicOnboarding.Tests.ps1 index 541327682c0..6605d54c383 100644 --- a/testing/test/configurations/BasicOnboarding.Tests.ps1 +++ b/testing/test/configurations/BasicOnboarding.Tests.ps1 @@ -52,7 +52,7 @@ Describe 'Basic Onboarding Scenario' { } It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -y $? | Should -BeTrue # Configuration should be removed from the resource model diff --git a/testing/test/configurations/ForcedDelete.Tests.ps1 b/testing/test/configurations/ForcedDelete.Tests.ps1 new file mode 100644 index 00000000000..ca38873dd54 --- /dev/null +++ b/testing/test/configurations/ForcedDelete.Tests.ps1 @@ -0,0 +1,38 @@ +Describe 'Basic Onboarding with Force delete Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + } + + It 'Check if onboarding works correctly' { + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait + $? | Should -BeTrue + Start-Sleep -Seconds 10 + + # Loop and retry until the configuration installs + $n = 0 + do + { + $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Auto Update: $autoUpdate" + if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Enabled") { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + + It "Force delete the connected instance" { + az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y + $? | Should -BeTrue + + # Configuration should be removed from the resource model + az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup + $? | Should -BeFalse + } +} \ No newline at end of file From 8f068a85f1a0121b22cdabfccc83f444d96683b2 Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Fri, 23 May 2025 13:10:52 -0700 Subject: [PATCH 03/22] fix CI testcases for nodepool image issues (#8) --- testing/pipeline/k8s-custom-pipelines.yml | 6 +++--- testing/pipeline/templates/run-test.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml index a93ebb4826a..90dec9b01fa 100644 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -58,16 +58,16 @@ stages: path: ./test/configurations/ForcedDelete.Tests.ps1 - job: BuildPublishExtension pool: - vmImage: 'ubuntu-20.04' + vmImage: 'ubuntu-latest' displayName: "Build and Publish the Extension Artifact" variables: CLI_REPO_PATH: $(Agent.BuildDirectory)/s EXTENSION_NAME: "connectedk8s" steps: - task: UsePythonVersion@0 - displayName: 'Use Python 3.6' + displayName: 'Use Python 3.10' inputs: - versionSpec: 3.6 + versionSpec: 3.10 - bash: | set -ev echo "Building extension ${EXTENSION_NAME}..." diff --git a/testing/pipeline/templates/run-test.yml b/testing/pipeline/templates/run-test.yml index f1d42ae9714..a15d47f4384 100644 --- a/testing/pipeline/templates/run-test.yml +++ b/testing/pipeline/templates/run-test.yml @@ -5,7 +5,7 @@ parameters: jobs: - job: ${{ parameters.jobName}} pool: - vmImage: 'ubuntu-20.04' + vmImage: 'ubuntu-latest' steps: - bash: | echo "Installing helm3" @@ -20,9 +20,9 @@ jobs: displayName: "Setup the VM with helm3 and kubectl" - task: UsePythonVersion@0 - displayName: 'Use Python 3.6' + displayName: 'Use Python 3.10' inputs: - versionSpec: 3.6 + versionSpec: 3.10 - bash: | set -ev From ad1ce1d22bccdd91a87a085666102ae4c6c1b847 Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Thu, 31 Jul 2025 14:23:20 -0700 Subject: [PATCH 04/22] update python version to 3.13 (#12) --- testing/pipeline/k8s-custom-pipelines.yml | 4 ++-- testing/pipeline/templates/run-test.yml | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml index 90dec9b01fa..1d9541027b1 100644 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -65,9 +65,9 @@ stages: EXTENSION_NAME: "connectedk8s" steps: - task: UsePythonVersion@0 - displayName: 'Use Python 3.10' + displayName: 'Use Python 3.13' inputs: - versionSpec: 3.10 + versionSpec: 3.13 - bash: | set -ev echo "Building extension ${EXTENSION_NAME}..." diff --git a/testing/pipeline/templates/run-test.yml b/testing/pipeline/templates/run-test.yml index a15d47f4384..bad141f95e4 100644 --- a/testing/pipeline/templates/run-test.yml +++ b/testing/pipeline/templates/run-test.yml @@ -20,9 +20,9 @@ jobs: displayName: "Setup the VM with helm3 and kubectl" - task: UsePythonVersion@0 - displayName: 'Use Python 3.10' + displayName: 'Use Python 3.13' inputs: - versionSpec: 3.10 + versionSpec: 3.13 - bash: | set -ev @@ -68,7 +68,9 @@ jobs: - bash : | echo "Downloading the kind script" - curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.24.0/kind-linux-amd64 + # Get the latest version tag and download + LATEST_KIND_VERSION=$(curl -s https://api.github.com/repos/kubernetes-sigs/kind/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/') + curl -Lo ./kind "https://kind.sigs.k8s.io/dl/${LATEST_KIND_VERSION}/kind-linux-amd64" chmod +x ./kind ./kind create cluster displayName: "Create and Start the Kind cluster" From 2121694c0d46249be19ebad91a1676805c633956 Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Wed, 17 Sep 2025 13:29:19 -0700 Subject: [PATCH 05/22] changes to support gateway association/disassociation for api version '2025-08-01-preview' (#17) --- testing/test/configurations/Gateway.Tests.ps1 | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/testing/test/configurations/Gateway.Tests.ps1 b/testing/test/configurations/Gateway.Tests.ps1 index 37dab0eccc9..ea000a71380 100644 --- a/testing/test/configurations/Gateway.Tests.ps1 +++ b/testing/test/configurations/Gateway.Tests.ps1 @@ -6,7 +6,7 @@ Describe 'Onboarding with Gateway Scenario' { } It 'Check if onboarding works with gateway enabled' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --gateway-resource-id $gatewayResourceId --no-wait + az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --gateway-resource-id $gatewayResourceId $? | Should -BeTrue Start-Sleep -Seconds 10 @@ -18,14 +18,12 @@ Describe 'Onboarding with Gateway Scenario' { $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) $provisioningState = ($output | ConvertFrom-Json).provisioningState $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() - $gatewayId = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("resourceId").GetString() Write-Host "Provisioning State: $provisioningState" Write-Host "Gateway Status: $gatewayStatus" - Write-Host "Gateway Id: $gatewayId" - if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true -and $gatewayId -eq $gatewayResourceId) { + if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true) { break } - Start-Sleep -Seconds 10 + Start-Sleep -Seconds 30 $n += 1 } while ($n -le $MAX_RETRY_ATTEMPTS) $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS @@ -68,11 +66,9 @@ Describe 'Onboarding with Gateway Scenario' { $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) $provisioningState = ($output | ConvertFrom-Json).provisioningState $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() - $gatewayId = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("resourceId").GetString() Write-Host "Provisioning State: $provisioningState" Write-Host "Gateway Status: $gatewayStatus" - Write-Host "Gateway Id: $gatewayId" - if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true -and $gatewayId -eq $gatewayResourceId) { + if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true) { break } Start-Sleep -Seconds 10 From 3c08eac156b50a1730d7e64c695b1d4b508f43bf Mon Sep 17 00:00:00 2001 From: Vineeth Thumma Date: Mon, 29 Sep 2025 13:14:50 -0700 Subject: [PATCH 06/22] [Azure RBAC] Deprecate 3P mode flags, fix Azure RBAC enablement bug, add E2E coverage and improve logging (#20) * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * Parameterize for airgapped clouds (#5) * Add parameterization for the airgapped clouds * Fix azdev style * MCR path function * azdev, ruff, and mypy --------- Co-authored-by: Matthew McNeal (from Dev Box) * Oras client fix to work with different MCRs (#6) Co-authored-by: mmcneal * fix CI testcases for nodepool image issues (#8) * update errors for the config and connectivity issues (#11) * update errors * format * style * update python version to 3.13 (#12) * Update cluster diagnostics image to 1.29.3 (#7) * Update cluster diagnostics helm chart to 1.29.3 * Fix lint issues --------- Co-authored-by: bgriddaluru * RBAC deprecation & fix the issue * typo * fix comments * update tests * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * fix CI testcases for nodepool image issues (#8) * update errors for the config and connectivity issues (#11) * update errors * format * style * update python version to 3.13 (#12) * rebase * fix tests * fix version * fix mypy, lint * fix test * fix test * fix test * fix test * fix test * rename test * deprecate flags * rebase * rebase * bump version for release --------- Co-authored-by: Bavneet Singh Co-authored-by: Atchut Kumar Barli Co-authored-by: mcnealm13 <57726243+mcnealm13@users.noreply.github.com> Co-authored-by: Matthew McNeal (from Dev Box) Co-authored-by: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Co-authored-by: bgriddaluru <117554445+bgriddaluru@users.noreply.github.com> Co-authored-by: bgriddaluru Co-authored-by: vithumma --- testing/pipeline/k8s-custom-pipelines.yml | 7 +- testing/pipeline/templates/run-test.yml | 6 +- .../configurations/BasicOnboarding.Tests.ps1 | 4 +- .../EnableDisableFeatures.Tests.ps1 | 111 ++++++++++++++++++ testing/test/configurations/Gateway.Tests.ps1 | 12 +- 5 files changed, 126 insertions(+), 14 deletions(-) create mode 100644 testing/test/configurations/EnableDisableFeatures.Tests.ps1 diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml index 1d9541027b1..2cfa227661d 100644 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -28,6 +28,10 @@ stages: parameters: jobName: BasicOnboardingTest path: ./test/configurations/BasicOnboarding.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: EnableDisableFeaturesTest + path: ./test/configurations/EnableDisableFeatures.Tests.ps1 - template: ./templates/run-test.yml parameters: jobName: AutoUpdateTest @@ -177,13 +181,12 @@ stages: pip install pytest cd /home/vsts/work/1/s/src/connectedk8s/azext_connectedk8s/tests/unittests pytest --junitxml=test-results.xml - displayName: 'Run UnitTests test' - task: PublishTestResults@2 inputs: testResultsFormat: 'JUnit' testResultsFiles: '**/test-results.xml' - failTaskOnFailedTests: true + failTaskOnFailedTests: true - job: SourceTests displayName: "Integration Tests, Build Tests" pool: diff --git a/testing/pipeline/templates/run-test.yml b/testing/pipeline/templates/run-test.yml index bad141f95e4..cd2679160a3 100644 --- a/testing/pipeline/templates/run-test.yml +++ b/testing/pipeline/templates/run-test.yml @@ -41,7 +41,7 @@ jobs: azdev extension build $(EXTENSION_NAME) workingDirectory: $(CLI_REPO_PATH) displayName: "Setup and Build Extension with azdev" - + - bash: | K8S_CONFIG_VERSION=$(ls ${EXTENSION_FILE_NAME}* | cut -d "-" -f2) echo "##vso[task.setvariable variable=K8S_CONFIG_VERSION]$K8S_CONFIG_VERSION" @@ -60,7 +60,7 @@ jobs: --arg AKS_CLUSTER_NAME "$AKS_CLUSTER_NAME" \ --arg ARC_CLUSTER_NAME "$ARC_CLUSTER_NAME" \ --arg K8S_CONFIG_VERSION "$K8S_CONFIG_VERSION" \ - '{subscriptionId: $SUB_ID, resourceGroup: $RG, aksClusterName: $AKS_CLUSTER_NAME, arcClusterName: $ARC_CLUSTER_NAME, extensionVersion: {"connectedk8s": $K8S_CONFIG_VERSION}}') + '{subscriptionId: $SUB_ID, resourceGroup: $RG, aksClusterName: $AKS_CLUSTER_NAME, arcClusterName: $ARC_CLUSTER_NAME, extensionVersion: {"connectedk8s": $K8S_CONFIG_VERSION}, customLocationsOid: "51dfe1e8-70c6-4de5-a08e-e18aff23d815"}') echo $JSON_STRING > settings.json cat settings.json workingDirectory: $(TEST_PATH) @@ -74,7 +74,6 @@ jobs: chmod +x ./kind ./kind create cluster displayName: "Create and Start the Kind cluster" - - bash: | curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash displayName: "Upgrade az to latest version" @@ -94,7 +93,6 @@ jobs: inlineScript: | .\Bootstrap.ps1 -CI workingDirectory: $(TEST_PATH) - - task: AzureCLI@2 displayName: Run the Test Suite for ${{ parameters.path }} inputs: diff --git a/testing/test/configurations/BasicOnboarding.Tests.ps1 b/testing/test/configurations/BasicOnboarding.Tests.ps1 index 6605d54c383..8d5975dae67 100644 --- a/testing/test/configurations/BasicOnboarding.Tests.ps1 +++ b/testing/test/configurations/BasicOnboarding.Tests.ps1 @@ -10,7 +10,7 @@ Describe 'Basic Onboarding Scenario' { # Loop and retry until the configuration installs $n = 0 - do + do { $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) @@ -34,7 +34,7 @@ Describe 'Basic Onboarding Scenario' { # Loop and retry until the configuration installs $n = 0 - do + do { $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) diff --git a/testing/test/configurations/EnableDisableFeatures.Tests.ps1 b/testing/test/configurations/EnableDisableFeatures.Tests.ps1 new file mode 100644 index 00000000000..ce5ff9bd367 --- /dev/null +++ b/testing/test/configurations/EnableDisableFeatures.Tests.ps1 @@ -0,0 +1,111 @@ +Describe 'ConnectedK8s Enable Disable Features Scenario' { + BeforeAll { + . $PSScriptRoot/../helper/Constants.ps1 + + function Invoke-AzCommand { + param ( + [string]$Command + ) + Write-Host "Executing: $Command" -ForegroundColor Yellow + $result = Invoke-Expression $Command + return $result + } + + function Wait-ForProvisioning { + param ( + [string]$expectedProvisioningState, + [string]$expectedAutoUpdate + ) + $n = 0 + do { + $output = Invoke-AzCommand "az connectedk8s show -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup)" + $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) + $provisioningState = ($output | ConvertFrom-Json).provisioningState + $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() + Write-Host "Provisioning State: $provisioningState" + Write-Host "Auto Update: $autoUpdate" + if ($provisioningState -eq $expectedProvisioningState -and $autoUpdate -eq $expectedAutoUpdate) { + break + } + Start-Sleep -Seconds 10 + $n += 1 + } while ($n -le $MAX_RETRY_ATTEMPTS) + $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS + } + } + + It 'Onboard Connected cluster with no features enabled' { + Invoke-AzCommand "az connectedk8s connect -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) -l $ARC_LOCATION --no-wait" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Enable azure-rbac feature' { + Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features azure-rbac" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Disable azure-rbac feature' { + Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features azure-rbac --yes" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Enable cluster-connect feature' { + Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Disable cluster-connect feature' { + Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect --yes" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Enable custom-locations feature' { + Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features custom-locations --custom-locations-oid $($ENVCONFIG.customLocationsOid)" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Disable custom-locations feature' { + Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features custom-locations --yes" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Enable all features (cluster-connect, custom-locations, azure-rbac) together' { + Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect custom-locations azure-rbac --custom-locations-oid $($ENVCONFIG.customLocationsOid)" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It 'Disable all features (cluster-connect, custom-locations, azure-rbac) together' { + Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect custom-locations azure-rbac --yes" + $? | Should -BeTrue + Start-Sleep -Seconds 10 + Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" + } + + It "Delete the connected instance" { + Invoke-AzCommand "az connectedk8s delete -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) -y" + $? | Should -BeTrue + + # Wait for deletion to propagate through the resource model + Start-Sleep -Seconds 30 + + # Configuration should be removed from the resource model - expect ResourceNotFound error + $output = Invoke-AzCommand "az connectedk8s show -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup)" 2>&1 + $output | Should -Match "ResourceNotFound" + } +} \ No newline at end of file diff --git a/testing/test/configurations/Gateway.Tests.ps1 b/testing/test/configurations/Gateway.Tests.ps1 index ea000a71380..9948e326d09 100644 --- a/testing/test/configurations/Gateway.Tests.ps1 +++ b/testing/test/configurations/Gateway.Tests.ps1 @@ -12,7 +12,7 @@ Describe 'Onboarding with Gateway Scenario' { # Loop and retry until the configuration installs $n = 0 - do + do { $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) @@ -36,12 +36,12 @@ Describe 'Onboarding with Gateway Scenario' { # Loop and retry until the configuration installs $n = 0 - do + do { $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) $provisioningState = ($output | ConvertFrom-Json).provisioningState - $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() + $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() Write-Host "Provisioning State: $provisioningState" Write-Host "Gateway Status: $gatewayStatus" if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $false) { @@ -60,7 +60,7 @@ Describe 'Onboarding with Gateway Scenario' { # Loop and retry until the configuration installs $n = 0 - do + do { $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) @@ -84,12 +84,12 @@ Describe 'Onboarding with Gateway Scenario' { # Loop and retry until the configuration installs $n = 0 - do + do { $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) $provisioningState = ($output | ConvertFrom-Json).provisioningState - $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() + $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() Write-Host "Provisioning State: $provisioningState" Write-Host "Gateway Status: $gatewayStatus" if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $false) { From 903822739ff02f58c9b12633e148777486416d39 Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Wed, 15 Oct 2025 13:37:44 -0700 Subject: [PATCH 07/22] remove hardcoded public ARM endpoint url for fairfax and mooncake (#24) --- src/connectedk8s/azext_connectedk8s/_client_factory.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/connectedk8s/azext_connectedk8s/_client_factory.py b/src/connectedk8s/azext_connectedk8s/_client_factory.py index bc1b613fd9f..0a795ec9c92 100644 --- a/src/connectedk8s/azext_connectedk8s/_client_factory.py +++ b/src/connectedk8s/azext_connectedk8s/_client_factory.py @@ -83,7 +83,6 @@ def cf_connectedk8s_prev_2025_08_01( KubernetesClient, subscription_id=os.getenv("AZURE_SUBSCRIPTION_ID"), credential=credential, - base_url="https://management.azure.com", per_call_policies=[headers_policy], ) return client @@ -91,7 +90,6 @@ def cf_connectedk8s_prev_2025_08_01( client = get_mgmt_service_client( cli_ctx, KubernetesClient, - base_url="https://management.azure.com", per_call_policies=[headers_policy], ) return client From 002220d6dc6eb4a0b2016546000f8b47d454c1e4 Mon Sep 17 00:00:00 2001 From: hapate Date: Wed, 15 Oct 2025 16:46:08 -0700 Subject: [PATCH 08/22] Bug Fix for FFX mcr url (#22) --- .../azext_connectedk8s/_precheckutils.py | 2 +- src/connectedk8s/azext_connectedk8s/_utils.py | 12 ++++++---- .../clientproxyhelper/_binaryutils.py | 2 +- src/connectedk8s/azext_connectedk8s/custom.py | 2 +- .../tests/unittests/test_utils_.py | 23 +++++++++++++++++++ .../azext_k8s_extension/custom.py | 2 +- .../azext_k8s_extension/utils.py | 12 ++++++---- .../EnableDisableFeatures.Tests.ps1 | 2 +- 8 files changed, 44 insertions(+), 13 deletions(-) diff --git a/src/connectedk8s/azext_connectedk8s/_precheckutils.py b/src/connectedk8s/azext_connectedk8s/_precheckutils.py index b10c9a22241..231f2b4c659 100644 --- a/src/connectedk8s/azext_connectedk8s/_precheckutils.py +++ b/src/connectedk8s/azext_connectedk8s/_precheckutils.py @@ -212,7 +212,7 @@ def executing_cluster_diagnostic_checks_job( ) return None - mcr_url = azext_utils.get_mcr_path(cmd) + mcr_url = azext_utils.get_mcr_path(cmd.cli_ctx.cloud.endpoints.active_directory) chart_path = azext_utils.get_chart_path( f"{mcr_url}/{consts.Cluster_Diagnostic_Checks_Job_Registry_Path}", diff --git a/src/connectedk8s/azext_connectedk8s/_utils.py b/src/connectedk8s/azext_connectedk8s/_utils.py index 6717ed907c1..e3268806f7b 100644 --- a/src/connectedk8s/azext_connectedk8s/_utils.py +++ b/src/connectedk8s/azext_connectedk8s/_utils.py @@ -58,11 +58,15 @@ # pylint: disable=bare-except -def get_mcr_path(cmd: CLICommand) -> str: - active_directory_array = cmd.cli_ctx.cloud.endpoints.active_directory.split(".") +def get_mcr_path(active_directory_endpoint: str) -> str: + active_directory_array = active_directory_endpoint.split(".") - # default for public, mc, ff clouds - mcr_postfix = active_directory_array[2] + # For US Government and China clouds, use public mcr + if active_directory_endpoint.endswith((".us", ".cn")): + return "mcr.microsoft.com" + + # Default MCR postfix + mcr_postfix = "com" # special cases for USSec, exclude part of suffix if len(active_directory_array) == 4 and active_directory_array[2] == "microsoft": mcr_postfix = active_directory_array[3] diff --git a/src/connectedk8s/azext_connectedk8s/clientproxyhelper/_binaryutils.py b/src/connectedk8s/azext_connectedk8s/clientproxyhelper/_binaryutils.py index c655b4269de..5097fb952cc 100644 --- a/src/connectedk8s/azext_connectedk8s/clientproxyhelper/_binaryutils.py +++ b/src/connectedk8s/azext_connectedk8s/clientproxyhelper/_binaryutils.py @@ -76,7 +76,7 @@ def _download_proxy_from_MCR( operating_system: str, architecture: str, ) -> None: - mcr_url = utils.get_mcr_path(cmd) + mcr_url = utils.get_mcr_path(cmd.cli_ctx.cloud.endpoints.active_directory) mar_target = f"{mcr_url}/{consts.CLIENT_PROXY_MCR_TARGET}/{operating_system.lower()}/{architecture}/arc-proxy" logger.debug( diff --git a/src/connectedk8s/azext_connectedk8s/custom.py b/src/connectedk8s/azext_connectedk8s/custom.py index c5ed8ed8ec9..d90c0c760c0 100644 --- a/src/connectedk8s/azext_connectedk8s/custom.py +++ b/src/connectedk8s/azext_connectedk8s/custom.py @@ -1318,7 +1318,7 @@ def install_helm_client(cmd: CLICommand) -> str: "Downloading helm client for first time. This can take few minutes..." ) - mcr_url = utils.get_mcr_path(cmd) + mcr_url = utils.get_mcr_path(cmd.cli_ctx.cloud.endpoints.active_directory) client = oras.client.OrasClient(hostname=mcr_url) retry_count = 3 diff --git a/src/connectedk8s/azext_connectedk8s/tests/unittests/test_utils_.py b/src/connectedk8s/azext_connectedk8s/tests/unittests/test_utils_.py index 768290b902a..32d1da1e3b4 100644 --- a/src/connectedk8s/azext_connectedk8s/tests/unittests/test_utils_.py +++ b/src/connectedk8s/azext_connectedk8s/tests/unittests/test_utils_.py @@ -9,6 +9,7 @@ sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), "../../.."))) from azext_connectedk8s._utils import ( + get_mcr_path, process_helm_error_detail, redact_sensitive_fields_from_string, remove_rsa_private_key, @@ -76,5 +77,27 @@ def test_redact_sensitive_fields_from_string(): ) +def test_get_mcr_path(): + input_active_directory = "login.microsoftonline.com" + expected_output = "mcr.microsoft.com" + assert get_mcr_path(input_active_directory) == expected_output + + input_active_directory = "login.microsoftonline.us" + expected_output = "mcr.microsoft.com" + assert get_mcr_path(input_active_directory) == expected_output + + input_active_directory = "login.chinacloudapi.cn" + expected_output = "mcr.microsoft.com" + assert get_mcr_path(input_active_directory) == expected_output + + input_active_directory = "https://login.microsoftonline.microsoft.foo" + expected_output = "mcr.microsoft.foo" + assert get_mcr_path(input_active_directory) == expected_output + + input_active_directory = "https://login.microsoftonline.some.cloud.bar" + expected_output = "mcr.microsoft.some.cloud.bar" + assert get_mcr_path(input_active_directory) == expected_output + + if __name__ == "__main__": pytest.main() diff --git a/src/k8s-extension/azext_k8s_extension/custom.py b/src/k8s-extension/azext_k8s_extension/custom.py index f7626d06e58..6122ea61224 100644 --- a/src/k8s-extension/azext_k8s_extension/custom.py +++ b/src/k8s-extension/azext_k8s_extension/custom.py @@ -763,7 +763,7 @@ def install_helm_client(cmd: CLICommand) -> str: "Downloading helm client for first time. This can take few minutes..." ) - mcr_url = utils.get_mcr_path(cmd) + mcr_url = utils.get_mcr_path(cmd.cli_ctx.cloud.endpoints.active_directory) client = oras.client.OrasClient(hostname=mcr_url) retry_count = 3 diff --git a/src/k8s-extension/azext_k8s_extension/utils.py b/src/k8s-extension/azext_k8s_extension/utils.py index 767550ccef8..345d92f9016 100644 --- a/src/k8s-extension/azext_k8s_extension/utils.py +++ b/src/k8s-extension/azext_k8s_extension/utils.py @@ -361,11 +361,15 @@ def create_folder_diagnosticlogs(folder_name: str, base_folder_name: str) -> tup ) return "", False -def get_mcr_path(cmd: CLICommand) -> str: - active_directory_array = cmd.cli_ctx.cloud.endpoints.active_directory.split(".") +def get_mcr_path(active_directory_endpoint: str) -> str: + active_directory_array = active_directory_endpoint.split(".") - # default for public, mc, ff clouds - mcr_postfix = active_directory_array[2] + # For US Government and China clouds, use public mcr + if active_directory_endpoint.endswith((".us", ".cn")): + return "mcr.microsoft.com" + + # Default MCR postfix + mcr_postfix = "com" # special cases for USSec, exclude part of suffix if len(active_directory_array) == 4 and active_directory_array[2] == "microsoft": mcr_postfix = active_directory_array[3] diff --git a/testing/test/configurations/EnableDisableFeatures.Tests.ps1 b/testing/test/configurations/EnableDisableFeatures.Tests.ps1 index ce5ff9bd367..8c6f1f5d1f3 100644 --- a/testing/test/configurations/EnableDisableFeatures.Tests.ps1 +++ b/testing/test/configurations/EnableDisableFeatures.Tests.ps1 @@ -106,6 +106,6 @@ Describe 'ConnectedK8s Enable Disable Features Scenario' { # Configuration should be removed from the resource model - expect ResourceNotFound error $output = Invoke-AzCommand "az connectedk8s show -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup)" 2>&1 - $output | Should -Match "ResourceNotFound" + $output | Should -Match "(ResourceNotFound|could not be found|not found)" } } \ No newline at end of file From 6c0a24be9e3b5432f16c924d6058669555e00ab9 Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Wed, 15 Oct 2025 17:34:53 -0700 Subject: [PATCH 09/22] [connectedk8s] update release notes and version (#26) --- src/connectedk8s/HISTORY.rst | 5 +++++ src/connectedk8s/setup.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/connectedk8s/HISTORY.rst b/src/connectedk8s/HISTORY.rst index 29729594ce8..465bc004fa7 100644 --- a/src/connectedk8s/HISTORY.rst +++ b/src/connectedk8s/HISTORY.rst @@ -2,6 +2,11 @@ Release History =============== +1.10.11 ++++++++ +* Removed hardcoded public ARM endpoint URL for Government clouds. +* Fixed incorrect MCR endpoint URLs for Government cloud environments. + 1.10.10 +++++ * Deprecated '--app-id' and '--app-secret' RBAC parameters from the extension by adding them to _breaking_change.py. diff --git a/src/connectedk8s/setup.py b/src/connectedk8s/setup.py index d911326cd31..2738252ec48 100644 --- a/src/connectedk8s/setup.py +++ b/src/connectedk8s/setup.py @@ -13,7 +13,7 @@ # TODO: Confirm this is the right version number you want and it matches your # HISTORY.rst entry. -VERSION = "1.10.10" +VERSION = "1.10.11" # The full list of classifiers is available at # https://pypi.python.org/pypi?%3Aaction=list_classifiers From 3ca7ae1286d0df4b6249d27f6da288f2fe1af84f Mon Sep 17 00:00:00 2001 From: junw98 Date: Mon, 27 Oct 2025 09:26:06 -0400 Subject: [PATCH 10/22] Add Helm Overrides for AGC (#23) * add agc overrides * update gns endpoint * add indentation * fix linter error * fix ruff formatting * move overrides to it's own method * update method * update ruff formatting --- src/connectedk8s/azext_connectedk8s/_utils.py | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/src/connectedk8s/azext_connectedk8s/_utils.py b/src/connectedk8s/azext_connectedk8s/_utils.py index e3268806f7b..15547848469 100644 --- a/src/connectedk8s/azext_connectedk8s/_utils.py +++ b/src/connectedk8s/azext_connectedk8s/_utils.py @@ -1315,6 +1315,7 @@ def helm_install_release( ] # Special configurations from 2022-09-01 ARM metadata. + # "dataplaneEndpoints" does not appear in arm_metadata for public and AGC if "dataplaneEndpoints" in arm_metadata: if "arcConfigEndpoint" in arm_metadata["dataplaneEndpoints"]: notification_endpoint = arm_metadata["dataplaneEndpoints"][ @@ -1364,6 +1365,10 @@ def helm_install_release( "'arcConfigEndpoint' doesn't exist under 'dataplaneEndpoints' in the ARM metadata." ) + # Add overrides for AGC Scenario + if cloud_name.lower() == "ussec" or cloud_name.lower() == "usnat": + add_agc_endpoint_overrides(location, cloud_name, arm_metadata, cmd_helm_install) + # Add helmValues content response from DP cmd_helm_install = parse_helm_values(helm_content_values, cmd_helm=cmd_helm_install) @@ -1839,3 +1844,51 @@ def helm_update_agent( logger.info(str.format(consts.Update_Agent_Success, cluster_name)) with contextlib.suppress(OSError): os.remove(user_values_location) + + +def add_agc_endpoint_overrides( + location: str, + cloud_name: str, + arm_metadata: dict[str, Any], + cmd_helm_install: list[str], +) -> None: + logger.debug("Adding AGC scenario overrides.") + + arm_metadata_endpoint_array = ( + arm_metadata["authentication"]["loginEndpoint"].strip("/").split(".") + ) + if len(arm_metadata_endpoint_array) < 4: + raise CLIInternalError("Unexpected loginEndpoint format for AGC") + + cloud_suffix = arm_metadata_endpoint_array[3] + endpoint_suffix = ( + arm_metadata_endpoint_array[2] + "." + arm_metadata_endpoint_array[3] + ) + if cloud_name.lower() == "usnat": + cloud_suffix = ( + arm_metadata_endpoint_array[2] + + "." + + arm_metadata_endpoint_array[3] + + "." + + arm_metadata_endpoint_array[4] + ) + endpoint_suffix = cloud_suffix + + cmd_helm_install.extend( + [ + "--set", + f"global.microsoftArtifactRepository=mcr.microsoft.{cloud_suffix}", + "--set", + f"systemDefaultValues.activeDirectoryEndpoint=https://login.microsoftonline.{endpoint_suffix}", + "--set", + f"systemDefaultValues.azureArcAgents.config_dp_endpoint_override=https://{location}.dp.kubernetesconfiguration.azure.{endpoint_suffix}", + "--set", + f"systemDefaultValues.clusterconnect-agent.notification_dp_endpoint_override=https://guestnotificationservice.azure.{endpoint_suffix}", + "--set", + f"systemDefaultValues.clusterconnect-agent.relay_endpoint_suffix_override=.servicebus.cloudapi.{endpoint_suffix}", + "--set", + f"systemDefaultValues.clusteridentityoperator.his_endpoint_override=https://gbl.his.arc.azure.{endpoint_suffix}/discovery?location={location}&api-version=1.1-preview", + "--set", + f"systemDefaultValues.image.repository=mcr.microsoft.{cloud_suffix}", + ] + ) From bbebbcd88e22b3eb873fa66c6470e7ba41c4ced9 Mon Sep 17 00:00:00 2001 From: Vineeth Thumma Date: Tue, 28 Oct 2025 16:39:24 -0700 Subject: [PATCH 11/22] [Azure RBAC] Remove deprecated flags (#16) * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * Parameterize for airgapped clouds (#5) * Add parameterization for the airgapped clouds * Fix azdev style * MCR path function * azdev, ruff, and mypy --------- Co-authored-by: Matthew McNeal (from Dev Box) * Oras client fix to work with different MCRs (#6) Co-authored-by: mmcneal * fix CI testcases for nodepool image issues (#8) * update errors for the config and connectivity issues (#11) * update errors * format * style * update python version to 3.13 (#12) * Update cluster diagnostics image to 1.29.3 (#7) * Update cluster diagnostics helm chart to 1.29.3 * Fix lint issues --------- Co-authored-by: bgriddaluru * RBAC deprecation & fix the issue * typo * fix comments * update tests * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * fix CI testcases for nodepool image issues (#8) * update errors for the config and connectivity issues (#11) * update errors * format * style * update python version to 3.13 (#12) * rebase * fix tests * fix version * fix mypy, lint * fix test * fix test * fix test * fix test * fix test * rename test * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * fix CI testcases for nodepool image issues (#8) * update python version to 3.13 (#12) * changes to support gateway association/disassociation for api version '2025-08-01-preview' (#17) * [Azure RBAC] Deprecate 3P mode flags, fix Azure RBAC enablement bug, add E2E coverage and improve logging (#20) * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * Parameterize for airgapped clouds (#5) * Add parameterization for the airgapped clouds * Fix azdev style * MCR path function * azdev, ruff, and mypy --------- Co-authored-by: Matthew McNeal (from Dev Box) * Oras client fix to work with different MCRs (#6) Co-authored-by: mmcneal * fix CI testcases for nodepool image issues (#8) * update errors for the config and connectivity issues (#11) * update errors * format * style * update python version to 3.13 (#12) * Update cluster diagnostics image to 1.29.3 (#7) * Update cluster diagnostics helm chart to 1.29.3 * Fix lint issues --------- Co-authored-by: bgriddaluru * RBAC deprecation & fix the issue * typo * fix comments * update tests * add pester tests for connectedk8s cli extension * Pass the force delete param to the API call (#4) * forcedelete * format * add code owner * mypy * fix CI testcases for nodepool image issues (#8) * update errors for the config and connectivity issues (#11) * update errors * format * style * update python version to 3.13 (#12) * rebase * fix tests * fix version * fix mypy, lint * fix test * fix test * fix test * fix test * fix test * rename test * deprecate flags * rebase * rebase * bump version for release --------- Co-authored-by: Bavneet Singh Co-authored-by: Atchut Kumar Barli Co-authored-by: mcnealm13 <57726243+mcnealm13@users.noreply.github.com> Co-authored-by: Matthew McNeal (from Dev Box) Co-authored-by: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Co-authored-by: bgriddaluru <117554445+bgriddaluru@users.noreply.github.com> Co-authored-by: bgriddaluru Co-authored-by: vithumma * remove breaking change announcement for removed flags --------- Co-authored-by: Bavneet Singh Co-authored-by: Atchut Kumar Barli Co-authored-by: mcnealm13 <57726243+mcnealm13@users.noreply.github.com> Co-authored-by: Matthew McNeal (from Dev Box) Co-authored-by: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Co-authored-by: bgriddaluru <117554445+bgriddaluru@users.noreply.github.com> Co-authored-by: bgriddaluru Co-authored-by: vithumma --- src/connectedk8s/HISTORY.rst | 4 ++++ .../azext_connectedk8s/_breaking_change.py | 8 -------- src/connectedk8s/azext_connectedk8s/_params.py | 14 -------------- src/connectedk8s/azext_connectedk8s/custom.py | 2 -- src/connectedk8s/setup.py | 2 +- 5 files changed, 5 insertions(+), 25 deletions(-) delete mode 100644 src/connectedk8s/azext_connectedk8s/_breaking_change.py diff --git a/src/connectedk8s/HISTORY.rst b/src/connectedk8s/HISTORY.rst index 465bc004fa7..b80684c1b19 100644 --- a/src/connectedk8s/HISTORY.rst +++ b/src/connectedk8s/HISTORY.rst @@ -2,6 +2,10 @@ Release History =============== +1.10.12 ++++++ +* Removed deprecated '--app-id' and '--app-secret' RBAC parameters from the extension. + 1.10.11 +++++++ * Removed hardcoded public ARM endpoint URL for Government clouds. diff --git a/src/connectedk8s/azext_connectedk8s/_breaking_change.py b/src/connectedk8s/azext_connectedk8s/_breaking_change.py deleted file mode 100644 index 07672e334cf..00000000000 --- a/src/connectedk8s/azext_connectedk8s/_breaking_change.py +++ /dev/null @@ -1,8 +0,0 @@ -# -------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# -------------------------------------------------------------------------------------------- -from azure.cli.core.breaking_change import register_argument_deprecate - -register_argument_deprecate("connectedk8s enable-features", "--app-id") -register_argument_deprecate("connectedk8s enable-features", "--app-secret") diff --git a/src/connectedk8s/azext_connectedk8s/_params.py b/src/connectedk8s/azext_connectedk8s/_params.py index 31dd29baa15..5bcd170fa46 100644 --- a/src/connectedk8s/azext_connectedk8s/_params.py +++ b/src/connectedk8s/azext_connectedk8s/_params.py @@ -440,20 +440,6 @@ def load_arguments(self: Connectedk8sCommandsLoader, _: CLICommand) -> None: options_list=["--features"], help="Space-separated list of features you want to enable.", ) - c.argument( - "azrbac_client_id", - options_list=["--app-id"], - arg_group="Azure RBAC", - help="Application ID for enabling Azure RBAC.", - deprecate_info=c.deprecate(hide=True), - ) - c.argument( - "azrbac_client_secret", - options_list=["--app-secret"], - arg_group="Azure RBAC", - help="Application secret for enabling Azure RBAC.", - deprecate_info=c.deprecate(hide=True), - ) c.argument( "azrbac_skip_authz_check", options_list=["--skip-azure-rbac-list"], diff --git a/src/connectedk8s/azext_connectedk8s/custom.py b/src/connectedk8s/azext_connectedk8s/custom.py index d90c0c760c0..d0e399bcbb2 100644 --- a/src/connectedk8s/azext_connectedk8s/custom.py +++ b/src/connectedk8s/azext_connectedk8s/custom.py @@ -2975,8 +2975,6 @@ def enable_features( features: list[str], kube_config: str | None = None, kube_context: str | None = None, - azrbac_client_id: str | None = None, - azrbac_client_secret: str | None = None, azrbac_skip_authz_check: str | None = None, skip_ssl_verification: bool = False, cl_oid: str | None = None, diff --git a/src/connectedk8s/setup.py b/src/connectedk8s/setup.py index 2738252ec48..814204d1716 100644 --- a/src/connectedk8s/setup.py +++ b/src/connectedk8s/setup.py @@ -13,7 +13,7 @@ # TODO: Confirm this is the right version number you want and it matches your # HISTORY.rst entry. -VERSION = "1.10.11" +VERSION = "1.10.12" # The full list of classifiers is available at # https://pypi.python.org/pypi?%3Aaction=list_classifiers From 979a4c3c12b74fc15703d38702eec8c1af4e0dca Mon Sep 17 00:00:00 2001 From: Atchut Kumar Barli Date: Tue, 4 Nov 2025 12:03:22 -0800 Subject: [PATCH 12/22] update prediag version (#27) --- src/connectedk8s/azext_connectedk8s/_constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connectedk8s/azext_connectedk8s/_constants.py b/src/connectedk8s/azext_connectedk8s/_constants.py index bb327ad3812..cb2f3d4f174 100644 --- a/src/connectedk8s/azext_connectedk8s/_constants.py +++ b/src/connectedk8s/azext_connectedk8s/_constants.py @@ -418,7 +418,7 @@ # Connect Precheck Diagnoser constants Cluster_Diagnostic_Checks_Job_Registry_Path = ( - "azurearck8s/helmchart/stable/clusterdiagnosticchecks:1.29.3" + "azurearck8s/helmchart/stable/clusterdiagnosticchecks:1.31.2" ) Cluster_Diagnostic_Checks_Helm_Install_Failed_Fault_Type = ( "Error while installing cluster diagnostic checks helm release" From 09119b801541bbb3e15a45885e525d4665395c6b Mon Sep 17 00:00:00 2001 From: gabemousa <147850546+gabemousa@users.noreply.github.com> Date: Wed, 5 Nov 2025 15:34:07 -0800 Subject: [PATCH 13/22] Updating the proxy version constant (#28) --- src/connectedk8s/azext_connectedk8s/_constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connectedk8s/azext_connectedk8s/_constants.py b/src/connectedk8s/azext_connectedk8s/_constants.py index cb2f3d4f174..7c0292e601c 100644 --- a/src/connectedk8s/azext_connectedk8s/_constants.py +++ b/src/connectedk8s/azext_connectedk8s/_constants.py @@ -476,7 +476,7 @@ ) DNS_Check_Result_String = "DNS Result:" AZ_CLI_ADAL_TO_MSAL_MIGRATE_VERSION = "2.30.0" -CLIENT_PROXY_VERSION = "1.3.029301" +CLIENT_PROXY_VERSION = "1.3.032281" CLIENT_PROXY_FOLDER = ".clientproxy" API_SERVER_PORT = 47011 CLIENT_PROXY_PORT = 47010 From 22d204214510c64108aef20da5807d15b127f3e3 Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Tue, 3 Mar 2026 10:37:25 -0800 Subject: [PATCH 14/22] update broken test in CI pipeline (#37) --- testing/pipeline/k8s-custom-pipelines.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml index 2cfa227661d..dc5b5ee2b38 100644 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -137,13 +137,13 @@ stages: vmImage: 'ubuntu-latest' steps: - task: UsePythonVersion@0 - displayName: 'Use Python 3.10' + displayName: 'Use Python 3.13' inputs: - versionSpec: 3.10 + versionSpec: 3.13 - bash: | #!/usr/bin/env bash set -ev - pip install wheel==0.30.0 requests packaging + pip install wheel==0.30.0 requests packaging setuptools export CI="ADO" python ./scripts/ci/test_index.py -v displayName: "Verify Extensions Index" @@ -193,14 +193,14 @@ stages: vmImage: 'ubuntu-latest' strategy: matrix: - Python39: - python.version: '3.9' Python310: python.version: '3.10' Python311: python.version: '3.11' Python312: python.version: '3.12' + Python313: + python.version: '3.13' steps: - task: UsePythonVersion@0 displayName: 'Use Python $(python.version)' From 532f5039c67c700a2d6833a6630ea0a7acebc100 Mon Sep 17 00:00:00 2001 From: shlokpatel57 Date: Tue, 3 Mar 2026 13:37:07 -0800 Subject: [PATCH 15/22] Update CLIENT_PROXY_VERSION to 1.3.033281 (#36) --- src/connectedk8s/azext_connectedk8s/_constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connectedk8s/azext_connectedk8s/_constants.py b/src/connectedk8s/azext_connectedk8s/_constants.py index 7c0292e601c..4ec7bbb96ee 100644 --- a/src/connectedk8s/azext_connectedk8s/_constants.py +++ b/src/connectedk8s/azext_connectedk8s/_constants.py @@ -476,7 +476,7 @@ ) DNS_Check_Result_String = "DNS Result:" AZ_CLI_ADAL_TO_MSAL_MIGRATE_VERSION = "2.30.0" -CLIENT_PROXY_VERSION = "1.3.032281" +CLIENT_PROXY_VERSION = "1.3.033281" CLIENT_PROXY_FOLDER = ".clientproxy" API_SERVER_PORT = 47011 CLIENT_PROXY_PORT = 47010 From 92383b87820666d08c86db56437fe944f76e6dc1 Mon Sep 17 00:00:00 2001 From: shlokpatel57 Date: Thu, 26 Mar 2026 13:19:17 -0700 Subject: [PATCH 16/22] Updates in CSP version (#40) --- src/connectedk8s/azext_connectedk8s/_constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connectedk8s/azext_connectedk8s/_constants.py b/src/connectedk8s/azext_connectedk8s/_constants.py index 4ec7bbb96ee..66d4091d5d1 100644 --- a/src/connectedk8s/azext_connectedk8s/_constants.py +++ b/src/connectedk8s/azext_connectedk8s/_constants.py @@ -476,7 +476,7 @@ ) DNS_Check_Result_String = "DNS Result:" AZ_CLI_ADAL_TO_MSAL_MIGRATE_VERSION = "2.30.0" -CLIENT_PROXY_VERSION = "1.3.033281" +CLIENT_PROXY_VERSION = "1.3.033581" CLIENT_PROXY_FOLDER = ".clientproxy" API_SERVER_PORT = 47011 CLIENT_PROXY_PORT = 47010 From 11550d493715d3aec3c199a7bfe1836d99c3c94a Mon Sep 17 00:00:00 2001 From: Ashlee Nanze Date: Wed, 15 Apr 2026 13:36:14 -0400 Subject: [PATCH 17/22] Add ARM64 support for Helm installation in connectedk8s (#34) * adjusting arm64 support * editing * adding * Revert k8s-extension changes from this repo * changes * changing order * fix ruff: ternary for arch, remove unused artifactTag * fix ruff format * fix mypy type: ignore comments in _utils.py * raise CLIInternalError instead of silent fallbacks in _resolve_helm_pull_target * use requests instead of oras internals for manifest resolution * add MCR anonymous bearer token auth for manifest resolution * fix MCR resolution: add Accept header, fetch child manifests for annotations --- .../azext_connectedk8s/_constants.py | 2 +- src/connectedk8s/azext_connectedk8s/_utils.py | 4 +- src/connectedk8s/azext_connectedk8s/custom.py | 161 ++++++++++++++++-- 3 files changed, 151 insertions(+), 16 deletions(-) diff --git a/src/connectedk8s/azext_connectedk8s/_constants.py b/src/connectedk8s/azext_connectedk8s/_constants.py index 66d4091d5d1..65b3f985009 100644 --- a/src/connectedk8s/azext_connectedk8s/_constants.py +++ b/src/connectedk8s/azext_connectedk8s/_constants.py @@ -491,7 +491,7 @@ # URL constants CLIENT_PROXY_MCR_TARGET = "azureconnectivity/proxy" HELM_MCR_URL = "azurearck8s/helm" -HELM_VERSION = "v3.12.2" +HELM_VERSION = "v3.20.1" Download_And_Install_Kubectl_Fault_Type = "Failed to download and install kubectl" Azure_Access_Token_Variable = "AZURE_ACCESS_TOKEN" Provisioned_Cluster_Kind = "provisionedcluster" diff --git a/src/connectedk8s/azext_connectedk8s/_utils.py b/src/connectedk8s/azext_connectedk8s/_utils.py index 15547848469..420fa60e5ee 100644 --- a/src/connectedk8s/azext_connectedk8s/_utils.py +++ b/src/connectedk8s/azext_connectedk8s/_utils.py @@ -104,11 +104,11 @@ def validate_connect_rp_location(cmd: CLICommand, location: str) -> None: "Failed to fetch resource provider details", ) - for resourceTypes in providerDetails.resource_types: # type: ignore[attr-defined] + for resourceTypes in providerDetails.resource_types: # type: ignore[union-attr] if resourceTypes.resource_type == "connectedClusters": rp_locations = [ location.replace(" ", "").lower() - for location in resourceTypes.locations + for location in resourceTypes.locations # type: ignore[union-attr] ] if location.lower() not in rp_locations: telemetry.set_exception( diff --git a/src/connectedk8s/azext_connectedk8s/custom.py b/src/connectedk8s/azext_connectedk8s/custom.py index d0e399bcbb2..d1dc4b2ac87 100644 --- a/src/connectedk8s/azext_connectedk8s/custom.py +++ b/src/connectedk8s/azext_connectedk8s/custom.py @@ -1251,6 +1251,134 @@ def check_kube_connection() -> str: assert False +def _resolve_helm_pull_target( + mcr_url: str, + helm_mcr_repo: str, + helm_version: str, + operating_system: str, + arch: str, +) -> str: + """Return the ORAS pull target for the helm binary. + + Tries the arch-specific tag first (e.g. ``helm-v3.20.1-linux-arm64``). + If that tag does not exist, falls back to the manifest list tag + (``helm-v3.20.1``) and resolves the correct entry by matching the + ``org.opencontainers.image.title`` annotation on each child manifest. + + Uses the OCI Distribution v2 HTTP API directly so that the logic is + independent of the ``oras`` library version installed. + + :param mcr_url: MCR hostname (e.g. ``mcr.microsoft.com``) + :param helm_mcr_repo: repository path within MCR (e.g. ``azurearck8s/helm``) + :param helm_version: helm version string including the leading ``v`` (e.g. ``v3.20.1``) + :param operating_system: lower-case OS name: ``linux``, ``darwin``, or ``windows`` + :param arch: CPU architecture: ``amd64`` or ``arm64`` + :returns: full ORAS pull target string (tag-based or digest-based) + """ + import requests as http_client # pylint: disable=import-outside-toplevel + + arch_specific_tag = f"helm-{helm_version}-{operating_system}-{arch}" + arch_specific_target = f"{mcr_url}/{helm_mcr_repo}:{arch_specific_tag}" + base_api = f"https://{mcr_url}/v2/{helm_mcr_repo}/manifests" + + # OCI media types required by MCR (HEAD/GET return 404 without Accept). + oci_accept = ( + "application/vnd.oci.image.manifest.v1+json, " + "application/vnd.oci.image.index.v1+json" + ) + + # Check whether the arch-specific tag exists. + try: + response = http_client.head( + f"{base_api}/{arch_specific_tag}", + headers={"Accept": oci_accept}, + timeout=30, + ) + if response.status_code == 200: + return arch_specific_target + logger.debug( + "Arch-specific tag %s returned HTTP %d; trying manifest list.", + arch_specific_tag, + response.status_code, + ) + except Exception as e: # pylint: disable=broad-except + logger.debug( + "Arch-specific tag check failed (%s); trying manifest list.", + e, + ) + + # Fall back to the manifest list tag and match via annotation title. + # Annotations live on each child manifest, not on the index entries, + # so we must fetch every child manifest to find the right one. + manifest_list_tag = f"helm-{helm_version}" + expected_title_prefix = f"helm-{helm_version}-{operating_system}-{arch}" + try: + response = http_client.get( + f"{base_api}/{manifest_list_tag}", + headers={"Accept": oci_accept}, + timeout=30, + ) + if response.status_code != 200: + raise CLIInternalError( + f"Could not resolve helm binary for {operating_system}/{arch}. " + f"Arch-specific tag '{arch_specific_tag}' check failed and " + f"manifest list '{manifest_list_tag}' returned HTTP {response.status_code}." + ) + + index = response.json() + for entry in index.get("manifests", []): + # Check platform fields if present (future-proof). + plat = entry.get("platform", {}) + if plat.get("os") == operating_system and plat.get("architecture") == arch: + digest = entry["digest"] + logger.debug( + "Resolved %s/%s via platform field to digest %s.", + operating_system, + arch, + digest, + ) + return f"{mcr_url}/{helm_mcr_repo}@{digest}" + + # Annotations are on child manifests; fetch each one to match. + for entry in index.get("manifests", []): + digest = entry.get("digest", "") + try: + child_resp = http_client.get( + f"{base_api}/{digest}", + headers={"Accept": oci_accept}, + timeout=30, + ) + if child_resp.status_code != 200: + continue + child = child_resp.json() + title = child.get("annotations", {}).get( + "org.opencontainers.image.title", "" + ) + if title.startswith(expected_title_prefix): + logger.debug( + "Resolved %s/%s via child annotation title '%s' to digest %s.", + operating_system, + arch, + title, + digest, + ) + return f"{mcr_url}/{helm_mcr_repo}@{digest}" + except Exception: # pylint: disable=broad-except + continue + + raise CLIInternalError( + f"Could not resolve helm binary for {operating_system}/{arch}. " + f"No matching entry found in manifest list '{manifest_list_tag}'." + ) + except CLIInternalError: + raise + except Exception as e: # pylint: disable=broad-except + raise CLIInternalError( + f"Could not resolve helm binary for {operating_system}/{arch}. " + f"Manifest list resolution failed: {e}" + ) from e + + def install_helm_client(cmd: CLICommand) -> str: print( f"Step: {utils.get_utctimestring()}: Install Helm client if it does not exist" @@ -1263,6 +1391,7 @@ def install_helm_client(cmd: CLICommand) -> str: # Fetch system related info operating_system = platform.system().lower() machine_type = platform.machine() + arch = "arm64" if machine_type.lower() in ("aarch64", "arm64") else "amd64" # Send machine telemetry telemetry.add_extension_event( @@ -1271,20 +1400,18 @@ def install_helm_client(cmd: CLICommand) -> str: # Set helm binary download & install locations if operating_system == "windows": download_location_string = f".azure\\helm\\{consts.HELM_VERSION}" - download_file_name = f"helm-{consts.HELM_VERSION}-{operating_system}-amd64.zip" + download_file_name = f"helm-{consts.HELM_VERSION}-{operating_system}-{arch}.zip" install_location_string = ( - f".azure\\helm\\{consts.HELM_VERSION}\\{operating_system}-amd64\\helm.exe" + f".azure\\helm\\{consts.HELM_VERSION}\\{operating_system}-{arch}\\helm.exe" ) - artifactTag = f"helm-{consts.HELM_VERSION}-{operating_system}-amd64" elif operating_system == "linux" or operating_system == "darwin": download_location_string = f".azure/helm/{consts.HELM_VERSION}" download_file_name = ( - f"helm-{consts.HELM_VERSION}-{operating_system}-amd64.tar.gz" + f"helm-{consts.HELM_VERSION}-{operating_system}-{arch}.tar.gz" ) install_location_string = ( - f".azure/helm/{consts.HELM_VERSION}/{operating_system}-amd64/helm" + f".azure/helm/{consts.HELM_VERSION}/{operating_system}-{arch}/helm" ) - artifactTag = f"helm-{consts.HELM_VERSION}-{operating_system}-amd64" else: telemetry.set_exception( exception="Unsupported OS for installing helm client", @@ -1296,15 +1423,15 @@ def install_helm_client(cmd: CLICommand) -> str: ) download_location = os.path.expanduser(os.path.join("~", download_location_string)) - download_dir = os.path.dirname(download_location) install_location = os.path.expanduser(os.path.join("~", install_location_string)) # Download compressed Helm binary if not already present if not os.path.isfile(install_location): - # Creating the helm folder if it doesnt exist - if not os.path.exists(download_dir): + # The archive is downloaded to ~/.azure/helm//. + # Ensure the directory exists first to avoid file-not-found errors. + if not os.path.exists(download_location): try: - os.makedirs(download_dir) + os.makedirs(download_location) except Exception as e: telemetry.set_exception( exception=e, @@ -1318,15 +1445,23 @@ def install_helm_client(cmd: CLICommand) -> str: "Downloading helm client for first time. This can take few minutes..." ) + retry_count = 3 + retry_delay = 5 + # Helm binaries are downloaded from MCR artifacts for all architectures. mcr_url = utils.get_mcr_path(cmd.cli_ctx.cloud.endpoints.active_directory) client = oras.client.OrasClient(hostname=mcr_url) - retry_count = 3 - retry_delay = 5 + pull_target = _resolve_helm_pull_target( + mcr_url, + consts.HELM_MCR_URL, + consts.HELM_VERSION, + operating_system, + arch, + ) for i in range(retry_count): try: client.pull( - target=f"{mcr_url}/{consts.HELM_MCR_URL}:{artifactTag}", + target=pull_target, outdir=download_location, ) break From c9215c4ca3207e4d26494abad6e190af3272b566 Mon Sep 17 00:00:00 2001 From: Atchut Kumar Barli Date: Sun, 19 Apr 2026 22:08:51 -0700 Subject: [PATCH 18/22] Handle removal of --all flag in Helm 4 (#42) the tests passed, the typecheck and extension index failures are not relevant to this PR * switch * fixswitch * addhelm4test * specificexception --- src/connectedk8s/azext_connectedk8s/_utils.py | 24 ++++++++++++++- testing/pipeline/k8s-custom-pipelines.yml | 5 ++++ testing/pipeline/templates/run-test.yml | 29 +++++++++++++++---- 3 files changed, 52 insertions(+), 6 deletions(-) diff --git a/src/connectedk8s/azext_connectedk8s/_utils.py b/src/connectedk8s/azext_connectedk8s/_utils.py index 420fa60e5ee..732b7bf3621 100644 --- a/src/connectedk8s/azext_connectedk8s/_utils.py +++ b/src/connectedk8s/azext_connectedk8s/_utils.py @@ -1484,6 +1484,25 @@ def redact_sensitive_fields_from_string(input_text: str) -> str: return input_text +def get_helm_major_version(helm_client_location: str) -> int: + """Returns the major version of the helm client (e.g. 3 or 4).""" + try: + result = Popen( + [helm_client_location, "version", "--short"], + stdout=PIPE, + stderr=PIPE, + ) + out, _ = result.communicate() + version_str = out.decode("ascii").strip() + # version_str is like "v3.17.0+gabcdef" or "v4.1.3+gabcdef" + match = re.match(r"v(\d+)\.", version_str) + if match: + return int(match.group(1)) + except (OSError, ValueError): + pass + return 3 # assume Helm 3 if we cannot determine version + + def get_release_namespace( kube_config: str | None, kube_context: str | None, @@ -1494,11 +1513,14 @@ def get_release_namespace( cmd_helm_release = [ helm_client_location, "list", - "-a", "--all-namespaces", "--output", "json", ] + # Helm 4 removed the --all flag (all releases are shown by default). + # Helm 3 requires --all to include non-deployed releases. + if get_helm_major_version(helm_client_location) < 4: + cmd_helm_release.insert(2, "--all") if kube_config: cmd_helm_release.extend(["--kubeconfig", kube_config]) if kube_context: diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml index dc5b5ee2b38..100c8a118c4 100644 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ b/testing/pipeline/k8s-custom-pipelines.yml @@ -60,6 +60,11 @@ stages: parameters: jobName: ForcedDeleteTest path: ./test/configurations/ForcedDelete.Tests.ps1 + - template: ./templates/run-test.yml + parameters: + jobName: BasicOnboardingHelm4Test + path: ./test/configurations/BasicOnboarding.Tests.ps1 + useHelm4: true - job: BuildPublishExtension pool: vmImage: 'ubuntu-latest' diff --git a/testing/pipeline/templates/run-test.yml b/testing/pipeline/templates/run-test.yml index cd2679160a3..e9e37318dd6 100644 --- a/testing/pipeline/templates/run-test.yml +++ b/testing/pipeline/templates/run-test.yml @@ -1,6 +1,8 @@ parameters: jobName: '' path: '' + useHelm4: false + helm4Version: 'v4.1.3' jobs: - job: ${{ parameters.jobName}} @@ -78,11 +80,22 @@ jobs: curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash displayName: "Upgrade az to latest version" - - bash: | - curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 - chmod 700 get_helm.sh - ./get_helm.sh --version v3.6.3 - displayName: "Install Helm" + - ${{ if not(eq(parameters.useHelm4, true)) }}: + - bash: | + curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 + chmod 700 get_helm.sh + ./get_helm.sh --version v3.6.3 + displayName: "Install Helm 3" + + - ${{ if eq(parameters.useHelm4, true) }}: + - bash: | + set -ev + echo "Installing Helm ${{ parameters.helm4Version }}..." + curl -fsSL "https://get.helm.sh/helm-${{ parameters.helm4Version }}-linux-amd64.tar.gz" | tar xz + sudo mv linux-amd64/helm /usr/local/bin/helm4 + helm4 version + echo "##vso[task.setvariable variable=HELM_CLIENT_PATH]/usr/local/bin/helm4" + displayName: "Install Helm 4 and set HELM_CLIENT_PATH" - task: AzureCLI@2 displayName: Bootstrap @@ -93,6 +106,9 @@ jobs: inlineScript: | .\Bootstrap.ps1 -CI workingDirectory: $(TEST_PATH) + ${{ if eq(parameters.useHelm4, true) }}: + env: + HELM_CLIENT_PATH: $(HELM_CLIENT_PATH) - task: AzureCLI@2 displayName: Run the Test Suite for ${{ parameters.path }} inputs: @@ -103,6 +119,9 @@ jobs: .\Test.ps1 -CI -Path ${{ parameters.path }} -Type connectedk8s workingDirectory: $(TEST_PATH) continueOnError: true + ${{ if eq(parameters.useHelm4, true) }}: + env: + HELM_CLIENT_PATH: $(HELM_CLIENT_PATH) - task: PublishTestResults@2 inputs: From 83bb4a1550fc01c973f467ac44d184291d9b86c3 Mon Sep 17 00:00:00 2001 From: Ashlee Nanze Date: Wed, 22 Apr 2026 11:14:52 -0400 Subject: [PATCH 19/22] bump connectedk8s version to 1.12.0 --- src/connectedk8s/HISTORY.rst | 9 + src/connectedk8s/setup.py | 2 +- testing/.gitignore | 9 - testing/Bootstrap.ps1 | 30 -- testing/README.md | 116 ------ testing/Test.ps1 | 99 ----- .../bin/connectedk8s-1.0.0-py3-none-any.whl | Bin 62802 -> 0 bytes testing/bin/connectedk8s-values.yaml | 3 - .../k8s_configuration-1.0.0-py3-none-any.whl | Bin 42351 -> 0 bytes .../bin/k8s_extension-0.3.0-py3-none-any.whl | Bin 52893 -> 0 bytes testing/owners.txt | 2 - testing/pipeline/k8s-custom-pipelines.yml | 386 ------------------ testing/pipeline/templates/run-test.yml | 131 ------ testing/settings.template.json | 12 - .../test/configurations/AutoUpdate.Tests.ps1 | 62 --- .../configurations/BasicOnboarding.Tests.ps1 | 62 --- .../configurations/ConnectProxy.Tests.ps1 | 98 ----- .../EnableDisableFeatures.Tests.ps1 | 111 ----- .../configurations/ForcedDelete.Tests.ps1 | 38 -- testing/test/configurations/Gateway.Tests.ps1 | 112 ----- testing/test/configurations/Proxy.Tests.ps1 | 65 --- .../configurations/Troubleshoot.Tests.ps1 | 40 -- .../configurations/WorkloadIdentity.Tests.ps1 | 239 ----------- testing/test/helper/Constants.ps1 | 5 - 24 files changed, 10 insertions(+), 1621 deletions(-) delete mode 100644 testing/.gitignore delete mode 100644 testing/Bootstrap.ps1 delete mode 100644 testing/README.md delete mode 100644 testing/Test.ps1 delete mode 100644 testing/bin/connectedk8s-1.0.0-py3-none-any.whl delete mode 100644 testing/bin/connectedk8s-values.yaml delete mode 100644 testing/bin/k8s_configuration-1.0.0-py3-none-any.whl delete mode 100644 testing/bin/k8s_extension-0.3.0-py3-none-any.whl delete mode 100644 testing/owners.txt delete mode 100644 testing/pipeline/k8s-custom-pipelines.yml delete mode 100644 testing/pipeline/templates/run-test.yml delete mode 100644 testing/settings.template.json delete mode 100644 testing/test/configurations/AutoUpdate.Tests.ps1 delete mode 100644 testing/test/configurations/BasicOnboarding.Tests.ps1 delete mode 100644 testing/test/configurations/ConnectProxy.Tests.ps1 delete mode 100644 testing/test/configurations/EnableDisableFeatures.Tests.ps1 delete mode 100644 testing/test/configurations/ForcedDelete.Tests.ps1 delete mode 100644 testing/test/configurations/Gateway.Tests.ps1 delete mode 100644 testing/test/configurations/Proxy.Tests.ps1 delete mode 100644 testing/test/configurations/Troubleshoot.Tests.ps1 delete mode 100644 testing/test/configurations/WorkloadIdentity.Tests.ps1 delete mode 100644 testing/test/helper/Constants.ps1 diff --git a/src/connectedk8s/HISTORY.rst b/src/connectedk8s/HISTORY.rst index b80684c1b19..7c209f920ef 100644 --- a/src/connectedk8s/HISTORY.rst +++ b/src/connectedk8s/HISTORY.rst @@ -2,6 +2,15 @@ Release History =============== +1.12.0 ++++++++ +* Added ARM64 support for Helm binary installation. +* Handle removal of '--all' flag in Helm 4 to ensure compatibility. +* Added Helm overrides support for Application Gateway for Containers (AGC). +* Updated CSP version. +* Updated CLIENT_PROXY_VERSION to 1.3.033281. +* Updated pre-diagnostics version. + 1.10.12 +++++ * Removed deprecated '--app-id' and '--app-secret' RBAC parameters from the extension. diff --git a/src/connectedk8s/setup.py b/src/connectedk8s/setup.py index 814204d1716..725c981a28b 100644 --- a/src/connectedk8s/setup.py +++ b/src/connectedk8s/setup.py @@ -13,7 +13,7 @@ # TODO: Confirm this is the right version number you want and it matches your # HISTORY.rst entry. -VERSION = "1.10.12" +VERSION = "1.12.0" # The full list of classifiers is available at # https://pypi.python.org/pypi?%3Aaction=list_classifiers diff --git a/testing/.gitignore b/testing/.gitignore deleted file mode 100644 index 29f33294b8b..00000000000 --- a/testing/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -settings.json -tmp/ -bin/* -!bin/connectedk8s-1.0.0-py3-none-any.whl -!bin/k8s_extension-0.3.0-py3-none-any.whl -!bin/k8s_extension_private-0.1.0-py3-none-any.whl -!bin/k8s_configuration-1.0.0-py3-none-any.whl -!bin/connectedk8s-values.yaml -*.xml \ No newline at end of file diff --git a/testing/Bootstrap.ps1 b/testing/Bootstrap.ps1 deleted file mode 100644 index ad21cfddad2..00000000000 --- a/testing/Bootstrap.ps1 +++ /dev/null @@ -1,30 +0,0 @@ -param ( - [switch] $SkipInstall, - [switch] $CI -) - -# Disable confirm prompt for script -az config set core.disable_confirm_prompt=true - -# Configuring the environment -$ENVCONFIG = Get-Content -Path $PSScriptRoot/settings.json | ConvertFrom-Json - -az account set --subscription $ENVCONFIG.subscriptionId - -if (-not (Test-Path -Path $PSScriptRoot/tmp)) { - New-Item -ItemType Directory -Path $PSScriptRoot/tmp -} - -az group show --name $envConfig.resourceGroup -if (!$?) { - Write-Host "Resource group does not exist, creating it now in region 'eastus2euap'" - az group create --name $envConfig.resourceGroup --location eastus2euap - - if (!$?) { - Write-Host "Failed to create Resource Group - exiting!" - Exit 1 - } -} - - -Copy-Item $HOME/.kube/config -Destination $PSScriptRoot/tmp/KUBECONFIG \ No newline at end of file diff --git a/testing/README.md b/testing/README.md deleted file mode 100644 index 33f12b5b1a3..00000000000 --- a/testing/README.md +++ /dev/null @@ -1,116 +0,0 @@ -# K8s Partner Extension Test Suite - -This repository serves as the integration testing suite for the `k8s-extension` Azure CLI module. - -## Testing Requirements - -All partners who wish to merge their __Custom Private Preview Release__ (owner: _Partner_) into the __Official Private Preview Release__ are required to author additional integration tests for their extension to ensure that their extension will continue to function correctly as more extensions are added into the __Official Private Preview Release__. - -For more information on creating these tests, see [Authoring Tests](docs/test_authoring.md) - -## Pre-Requisites - -In order to properly test all regression tests within the test suite, you must onboard an AKS cluster which you will use to generate your Azure Arc resource to test the extensions. Ensure that you have a resource group where you can onboard this cluster. - -### Required Installations - -The following installations are required in your environment for the integration tests to run correctly: - -1. [Helm 3](https://helm.sh/docs/intro/install/) -2. [Kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) -3. [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) - -## Setup - -### Step 1: Install Pester - -This project contains [Pester](https://pester.dev/) test framework commands that are required for the integration tests to run. In an admin powershell terminal, run - -```powershell -Install-Module Pester -Force -SkipPublisherCheck -Import-Module Pester -PassThru -``` - -If you run into issues installing the framework, refer to the [Installation Guide](https://pester.dev/docs/introduction/installation) provided by the Pester docs. - -### Step 2: Get Test suite files - -You can either clone this repo (preferred option, since you will be adding your tests to this suite) or copy the files in this repo locally. Rest of the instructions here assume your working directory is k8spartner-extension-testing. - -### Step 3: Update the `k8s-extension`/`k8s-extension-private` .whl package - -This integration test suite references the .whl packages found in the `\bin` directory. After generating your `k8s-extension`/`k8s-extension-private` .whl package, copy your updated package into the `\bin` directory. - -### Step 4: Create a `settings.json` - -To onboard the AKS and Arc clusters correctly, you will need to create a `settings.json` configuration. Create a new `settings.json` file by copying the contents of the `settings.template.json` into this file. Update the subscription id, resource group, and AKS and Arc cluster name fields with your specific values. - -### Step 5: Update the extension version value in `settings.json` - -To ensure that the tests point to your `k8s-extension-private` `.whl` package, change the value of the `k8s-extension-private` to match your package versioning in the format (Major.Minor.Patch.Extension). For example, the `k8s_extension_private-0.1.0.openservicemesh_5-py3-none-any.whl` whl package would have extension versions set to -```json -{ - "k8s-extension": "0.1.0", - "k8s-extension-private": "0.1.0.openservicemesh_5", - "connectedk8s": "0.3.5" -} - -``` - -_Note: Updates to the `connectedk8s` version and `k8s-extension` version can also be made by adding a different version of the `connectedk8s` and `k8s-extension` whl packages and changing the `connectedk8s` and `k8s-extension` values to match the (Major.Minor.Patch) version format shown above_ - -### Step 6: Run the Bootstrap Command -To bootstrap the environment with AKS and Arc clusters, run -```powershell -.\Bootstrap.ps1 -``` -This script will provision the AKS and Arc clusters needed to run the integration test suite - -## Testing - -### Testing All Extension Suites -To test all extension test suites, you must call `.\Test.ps1` with the `-ExtensionType` parameter set to either `Public` or `Private`. Based on this flag, the test suite will install the extension type specified below - -| `-ExtensionType` | Installs `az extension` | -| ---------------- | --------------------- | -| `Public` | `k8s-extension` | -| `Private` | `k8s-extension-private` | - -For example, when calling -```bash -.\Test.ps1 -ExtensionType Public -``` -the script will install your `k8s-extension` whl package and run the full test suite of `*.Tests.ps1` files included in the `\test\extensions` directory - -### Testing Public Extensions Only -If you only want to run the test cases against public-preview or GA extension test cases, you can use the `-OnlyPublicTests` flag to specify this -```bash -.\Test.ps1 -ExtensionType Public -OnlyPublicTests -``` - -### Testing Specific Extension Suite - -If you only want to run the test script on your specific test file, you can do so by specifying path to your extension test suite in the execution call - -```powershell -.\Test.ps1 -Path -``` -For example to call the `AzureMonitor.Tests.ps1` test suite, we run -```powershell -.\Test.ps1 -ExtensionType Public -Path .\test\extensions\public\AzureMonitor.Tests.ps1 -``` - -### Skipping Extension Re-Install - -By default the `Test.ps1` script will uninstall any old versions of `k8s-extension`/'`k8s-extension-private` and re-install the version specified in `settings.json`. If you do not want this re-installation to occur, you can specify the `-SkipInstall` flag to skip this process. - -```powershell -.\Test.ps1 -ExtensionType Public -SkipInstall -``` - -## Cleanup -To cleanup the AKS and Arc clusters you have provisioned in testing, run -```powershell -.\Cleanup.ps1 -``` -This will remove the AKS and Arc clusters as well as the `\tmp` directory that were created by the bootstrapping script. \ No newline at end of file diff --git a/testing/Test.ps1 b/testing/Test.ps1 deleted file mode 100644 index 7c6f522d082..00000000000 --- a/testing/Test.ps1 +++ /dev/null @@ -1,99 +0,0 @@ -param ( - [string] $Path, - [switch] $SkipInstall, - [switch] $CI, - [switch] $ParallelCI, - [switch] $OnlyPublicTests, - - [Parameter(Mandatory=$True)] - [ValidateSet('connectedk8s')] - [string]$Type -) - -# Disable confirm prompt for script -# Only show errors, don't show warnings -az config set core.disable_confirm_prompt=true -az config set core.only_show_errors=true - -$ENVCONFIG = Get-Content -Path $PSScriptRoot/settings.json | ConvertFrom-Json - -# Install the powershell-yaml module -# Needed to parse the kubeconfig file -Install-Module -Name powershell-yaml -Force -Scope CurrentUser - -az account set --subscription $ENVCONFIG.subscriptionId - -$Env:KUBECONFIG="$PSScriptRoot/tmp/KUBECONFIG" -$TestFileDirectory="$PSScriptRoot/results" - -if (-not (Test-Path -Path $TestFileDirectory)) { - New-Item -ItemType Directory -Path $TestFileDirectory -} - -if ($Type -eq 'connectedk8s') { - $connectedk8sVersion = $ENVCONFIG.extensionVersion.'connectedk8s' - if (!$SkipInstall) { - Write-Host "Removing the old connectedk8s extension..." - az extension remove -n connectedk8s - Write-Host "Installing connectedk8s version $connectedk8sVersion..." - az extension add --source ./bin/connectedk8s-$connectedk8sVersion-py2.py3-none-any.whl - } - $testFilePaths = "$PSScriptRoot/test/configurations" -} - -if ($ParallelCI) { - # This runs the tests in parallel during the CI pipline to speed up testing - - Write-Host "Invoking Pester to run tests from '$testFilePath'..." - $testFiles = @() - foreach ($paths in $testFilePaths) - { - $temp = Get-ChildItem $paths - $testFiles += $temp - } - $resultFileNumber = 0 - foreach ($testFile in $testFiles) - { - $resultFileNumber++ - $testName = Split-Path $testFile –leaf - Start-Job -ArgumentList $testName, $testFile, $resultFileNumber, $TestFileDirectory -Name $testName -ScriptBlock { - param($name, $testFile, $resultFileNumber, $testFileDirectory) - - Write-Host "$testFile to result file #$resultFileNumber" - $testResult = Invoke-Pester $testFile -Passthru -Output Detailed - $testResult | Export-JUnitReport -Path "$testFileDirectory/$name.xml" - } - } - - do { - Write-Host ">> Still running tests @ $(Get-Date –Format "HH:mm:ss")" –ForegroundColor Blue - Get-Job | Where-Object { $_.State -eq "Running" } | Format-Table –AutoSize - Start-Sleep –Seconds 30 - } while((Get-Job | Where-Object { $_.State -eq "Running" } | Measure-Object).Count -ge 1) - - Get-Job | Wait-Job - $failedJobs = Get-Job | Where-Object { -not ($_.State -eq "Completed")} - Get-Job | Receive-Job –AutoRemoveJob –Wait –ErrorAction 'Continue' - - if ($failedJobs.Count -gt 0) { - Write-Host "Failed Jobs" –ForegroundColor Red - $failedJobs - throw "One or more tests failed" - } -} elseif ($CI) { - if ($Path) { - $testFilePath = "$PSScriptRoot/$Path" - } - Write-Host "Invoking Pester to run tests from '$testFilePath'..." - $testResult = Invoke-Pester $testFilePath -Passthru -Output Detailed - $testName = Split-Path $testFilePath –leaf - $testResult | Export-JUnitReport -Path "$testFileDirectory/$testName.xml" -} else { - if ($Path) { - Write-Host "Invoking Pester to run tests from '$PSScriptRoot/$Path'" - Invoke-Pester -Output Detailed $PSScriptRoot/$Path - } else { - Write-Host "Invoking Pester to run tests from '$testFilePath'..." - Invoke-Pester -Output Detailed $testFilePath - } -} \ No newline at end of file diff --git a/testing/bin/connectedk8s-1.0.0-py3-none-any.whl b/testing/bin/connectedk8s-1.0.0-py3-none-any.whl deleted file mode 100644 index 08f34250036f455aad7e3e820c65d08d790e1201..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62802 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

YVX(toUj*0P8con1X*tXmm22nWyt~gf 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

4OLf9N*^x0^yG1@+&DtXglO();gI7nFsJg6 zsrU z8Ne;Lu5Duy%zeOQ)hmbboxwOqj&2qvhh3I)T_6`=Gi-&?UFLpQyNl0|1f}3G;}o+} zuHA#fUH>75s0wAS`>~9)WmdfLk%EQu8DR{0&4>b%0CJcI#;OoX!XWv%uuX!Sq}01W_AqxakG)`&S^V&CCdeJ>YqG5&jt(B>AZ)qAAZ_@7K}zuSVQb(Iv@cjX z|5b+gpjtVNUP6%OkQvN*b6s(Yin9lQy$M3YJ%qOd7%lgRnBH3-eU9>3q|`tvUmVd( zmD#zybtNmQxrjvSR@WwqoYIg%g2=F4OFSOA(f}*qgIIsmVIuw4jx_4qT_AXlcM4QS6Pm3k@(Bp@+B{QeDt)JB&wsd?X1d=)SdS77^YtsFgY`ib<=R?wj3K_#Vr!xy27 zngg1ipOje0L_ez1DrSYq=>*7S36lFlmtNx$Md0;Sew5?Qtbn zTGIc^M1*>Jg2BZ_+Ul99OEQj;$P|sK@|`PP7a9t#QAe%%D3zDp?{d!rpdwU?{I>eV zE^b(VVf~;^6>b=>h(e^`Fupr_%1?NQt-E<+))nq;Jf^oVFVWNQA+83wc>b5rVbzXG z9O3nq#N(ctVGcwnX+Sm{GCI+3LN_cEl6UQ*3Kt2?{$5H_pzmdGMHAair=--<(Tn&| z)LXko=c7r(8G+$ns&*PnGqQ6hg6v&z5W^;{vB0V9Tv9p+Je;}vo)_?RJq)jO;4E|d z)Z)x9_2ff;TU5#%mvW~$qz0e6xHJKH^2_-;(;pS@&m$f1xO-m0*!~tn{E;Ra7u)+i zyXW9wURqXni2fbyNo}`7LPsN#iQQgGs>goVmTWP!!xjVK)vv`8I2vV4>3GH#qflgVYNpF^4bi;Roo^aO7%DNqVkn7NX~N{M;1cA@Oo4vIihf#h zEnRLUO++ol4O+)|nCQ(Z8e!e0d3;d0x&*}E4dDVIG^#U~W~t1z#C65kgcM|FJIZ15uq7O~K#xefTlYjHvpO6?@Yx2nYfVWdag}A2O;&f*>ISimwM|I@tmx@!{1~ zu#g0Xk>^C!%A>uku0^0JmJm$E;zZJh&{gF|Ko+YQZZUB;J~UgoFeBq4$OE(NqPS-q zl2F7IT-SiJq(pqY$;il@nOK(xZ`L5(6vOy_?dQb~dJ@IOx(4|Y#`*26qT0oxsiIgT z!MY#VAqs}mw8lWVs>xY}%EpQ*D3Y8!0bdm;>coRPr|=yK#xVfO%8Cdkn)VCQA2JfGO4V<3|-2XphU|`kG+{CLJ@-?9UT!h&G2H z6EW@aG;_N;yOD&p-@p>m!GaEqKr<+^K#s=aSQ>^kRm_q?^e+XCt_=_k;pU$Yrj&SBJ>_m}V|W|Od3)Z^HkS#R#0_Ha zp{#3U^-0wV6XZ{wQRoibrLMw7<0ewcUAVQN)HSLGPKxA9fTfJrhDQ z*4{_v|Wc@Hvz2QjI&7-JW*aXQNEoQl<_+BNK=kE>h6;2|P2`p{%_W&D-fct+bI zH`w{B_Gf4Ab$;Ua0{uJwr^HZi^euD+4*4OvwV3uztQUU74JyP)+#id(xGR_AafzMe z(-liniKQA3c-sx^v9|TKJjYcujD6y$;h>4+OqNCkX?5(-_Vuw4sY?O+Yelw;lkZ@t z^LT9b@wOGIuCHDttUVS9qo>%kscFd}!^mrP8PbyCW?7v1w(JYG7?Mp4FmS(hEXuxG z`jT#Okf@5!DT~~E7)~XdAU3r!&VrR|Pky1j# zUK_=rW&pLUh;#?SM*2m!3FaClL-f>cLUQ-^)$j2d|J9OlvrX|!38%zxAY~ZXV9Pec)Wlw#nusT2)!L%0oImeDw2n*r7Y!f zH;6RJvu^X7esyqV?hd`j9n^L(yjJULj}rVwFh>#3MQ7KRQ>{!{G2BzA3meZDPl~%V zlP9o(n>2tMKC;xe+laXo$uXi*XCr-|WUUJP+OaR$r5(3#FInD))g1ma0+?wA1;CPCRadZ-WJ~vfd#ETtHmpbW1uZ3vQ?Y_S9c8@y$6vA91kD^az=kK z8*o)b(qV z0hOddjnH?UaAUJ7=mG{8VL0&hg7?J7bmVQI4+vu~hiO1kNsz&B+3`G01H=_k*B?_A zigm1=D0Kc6gIeAAa<&cP4beBKqb+h*BuUqS0DP0I*DybwuuL3sH9eU9q1n8QMGbu%tVC9~c zKP=O-(FmR}17TVcZr5D1di zylfvRNUSi@EJ!1e1xL#==c!S(`Y4UacYhW4qxi&0e9Fhd*n8pSN|n*^AAk!C?b~r3 zIf$D5{!H5Aq@n$lWBSf5^s5{oMO|Zghe~Q`HdZTG&4e{9QldIROe(i;-~FJ;So(yA zf?J+>3^w@d#}(+t6IqhbY*#=g&PYz9XFt-c++pl(*LP2dyrj;e*6si$D$hf(PEg&6 zo>?*7{cz;%h#_P%pLa{R-DWVpR687FrblkzGx zDngQ>NsCJ$@0WzN{oO4nMA-U1LlAb|6xuD;4+{46(}_&GKv~M)D;qJowTcRXgVo#h zl6Fal&#P5^<8E|Yf{sKdwcW5g9e}1OuqZrPTx#=BwGYA1U5>ASTfL)08Ga0Q+@}TD z7u+uGwxLdP)ZxyuvY&5@Tf1zN8}`rLiNCJ3yh!inc$D0n5xuEP7Z>Y`QR{a8RBL^3 zGpnUMvT=QBL2Iaef5psdPrCYbzhTb_uKivwYg#P+0W-6}x?<9N&^Ry@Z69En&q1gW?B>ZQq*9ee8{>oknx!)-e^~42s;GF>y z@O4CA(^=-NJr*pdaZSjWplPzkBUz1_XFe_*C#iXR27LCRMmVp}&Jf5W{A zE;TgYY@(SMW#@V%w{TR-S$^8Io-8cFZ8v|8TIC>K6G-sEJxc`fe$FxoOnaGP>UjjX zi~1*K9*Pk~S=FWm!}Bu4LN};-|FRViaOa9V$v9%Vz(&rzC2HIQsa2I=2P!#^gEdp1 zNmR&d02A+zw$`must|7f!9-1)X{k|MNPhY@i(D2*g~y+-Yc>C1ViSOga2)@^M2ok7 zFfp4vx(YNDs+FTUK*=RfpEW8d7l9CIAAzMo35k$hR4RtKeSA=4*L zC(K*q;O$VID!><+Rbb|sfy4&4LEuGP2!rVFx$W?8vs>aIgePX-yZ7I%5+nLpl< zY3@uG`U0%>W|qoOKE9m(g|BrpmFAsnkVwgYqXzrB8qH?gk~%!k6Ov;+o=?9$h%7IE zBKEfGA4JUjLqtO&&qKFPHUJS#6wqG?2bJ>~0-*w%awg?M>xNa?=#2AlL%J})>=tzC z#NkY;^=4zIwNE7(p92C-#L=jJ9r%q>m;q-t&MxoZs*lMrp{5JV{;uG_S zYk>FU$-M)0C}_p9I90Qj3{BD?Htmsa?J}M6v^6arykCN-cZJ9OKLL za|_4?rha>S&&5Ts1!VJ;Q-HNO4{v{o=ODlHxf^oa)0aRtK!s{@p`kP?-Ajcz&j#p`bGpI?ON-;bjys#f`eKBaMZ;|Kz+Q_;ZOD zc%R)d810jSR1sSM<|tu49XLbr(}Ck`F`13y#<{9|n_^h1Bo2BxU!)CqHDnZ7^K+k) z^*O%#IQBzPx@i(Hw)Z6*r+PQFbqT`7X;mM66i{Ks9Z?=`U#$Mt~#j2YA zG>VC}LFHxFE6wIDatp4ItieYvNa53-p6Ib*pO^ZuwQfpTqgAGLJby3Teq(_P&;WTZ z5pcc!zr~7!zR4e~$p8D%=~ajAucK27uX>J^KT~ra0=XSYeXOXj28ko=XQ#wmQ$o)0 zHNNlu#Q6m65q{-dQ7cwS*L%$5?&BtExTU4HP1`Ecz8xe7P3A)rDYtW{qhA9vsKpv8 z;fTLL^d*K;??$y+-c5-PJrvFiuI|&pjh#jh{J>ez2Z9L_LuY-r9O4giNV7AQQYmub z>n;hUde??x1WcxppDnVEDJm0qNi`TF+&RS{ZwWq2pw8=^^ssKn13(4nd2J0-fpaLA zgY`{t0dm)QY+8XcYD=?@_vHQ=kJNkDYF#edhsKTdI1X9r;-Jn-;XgkkSNWVbJp6Fl zP3o!RE3dPNF#8YXEZ2LH+T8imL20iMq88Qs2W{4M&u4@7O?F`a#|WED_`I1x#9~p$=t)54hQ@KRfru`w;pkp& z-2_+D1C*6jmR5lIn`@lzi|@njr*vlebcLZUO6!~m%h#}&!1mGd{ z)&%8I#2dW7L#>q5HVqK~wFCgvg#VXi2>`W!(}Lxt!T~4sKW2_m0=ysG$-GbmflV_F z<4)Fv=t7trr)zPsL+w%mAMPUZi0w0br#eI@lkV1ACQx&fmZwrOi>I0_fs5%hr0c7f z`wpJODdV8$jSfreVb2?mOOSI*$TgOjA^7lcTy1EIpvzvfh>;?oopQ%MQ4p`wGR=Fy zT|`@~_vyUpAtxE{fpI;m60(3~5h;EKzb8xi$)edT{*qaIb=};4Qv=(N79UHQ$8TID zJHsFiv@Pp6fu*woRMPlDc&mkuw4!*|x7&0rTu4( zb8%iSc5K&2M=cpgV*>@Ta(FWm#qiYWa~|*jIYkN^jBvn~cnVOlRE;d^SwKOb_UKA9B;x zOK>Z~nC-RAo|Le+wkB%F;RK>2kVFTM*ki)8jqZbE(i~YX_FU1OL1t zz^=S<@|d1^@x}w64jDxo)I5`BRAkJ77{eBSes^bh-Z`5s`2hYq>hx)vDM7%$e8~rh zs=WU@)ctk$pkiqaFb{oPYTJtP{Gh-#><`PMj{!=3^~;e!B{uDb@#mFjm=q#ainBWf zUA5khU4W(-tz&G!!;JN~Y(?A3l=cD*6~)lbLUXhIZFLVN?Y+W7oF3{ywQ5(m`-9Dw zDoHeVfPb%RB9J%@61P_<$rqF&Mp3Rc*EFE6yFS29NP*l%oa7iKuzdX0jKhyZ{4DUJ z%GWl0wD38d6te&U6P2G(;ZQcD=V8qhr?c*`5IHG9fe934vNg7sz1r44s4-a zzT*IWaImwt6}Gm1k5U$yDVK*qBtwg&zNCtcm|%oKjYS5TZi)%-7%59h4_Pr!j>p%t z7!4F0*$cCi2ndrb%cB(QMscAl1WxB|>4#w_i>sh88*b;Lf|1LIwHFjkm+Gra?MC}V zj!TkMXd*yVVGoQJ3UczI5*Z<#HtFA_!hW(|kW?BAGSE>G?u0s4#S9JqpNw^d) zuY}@4fRWD08^%;+)eWt2m{iLs6iv;Nry@$@YlkT$?z72%FwA+s{7MzIu%}0+O(#6t ziwm1SoiHFWs=cCpOomm;$_gqr#M2^Jmb6}nDto7l;YwVnSth3K`9w_bK08noDZkLD zyU$Hg7_9|SY#0)bFD=oWNhS%j#tKS1`$2cOLbC_n7Kud3e8}C#@9FMM6xQYWH6fk! zzf)Ifm;mZ3@88r_tN*FG>i93}Dx7=l2Q9~5TRzUV6xW(Dt9DPuc~ee@s_{?`Xjjk- zu(PV8O;->=FCu`RlCnnoBm$=S_&K}kWF{TM{d0|UB(fRY>8htZdPkUi@Y)g#D-MN) z<68>h(Q}n3qIfO&5E8mKF}1x6V;_=PHqPRTveg&uTjcdXcdzJ?Qw$Eg$=SHtP4u&G9f(Y#f0_S$t+d$$LWnxS&o3ehcn$2Vq zDtEao)yi~Ah1OG^E>lOsJtKYZ8BKMgfJACkXi7PgwFyyXLr2s@BcgBLDw(Sp#_EZ?}9^YlHeOAfi7uhtvGt+&Grf4`YWM`l#b-j%kI*}bVq+cDP|8d+| zTME|!S=LJ6Kjfm9qzA;LfL%ep=5LQNdo4OKkuB@tTciX2Q{8{db7|;mZd2dL=ev;n zN@)(RQYU*ex=jjx*{1R}??LjY?2=_BrsLpet%|{q(-Z;sctwBQj@_Tw3mi_*<`SN5#_J+Lo1#sW+7CzR&OW0 zN`npXtW34%@fT6(?pzkIpuxN8%Fo;$*JGRDRc<@n8xp_gx6aNi(OwJOPHnP7lJCCG z9DT12b+YEgtQOl!UrWJ!UIv8S5_g%v|bi)d6S2_HoDl&mfdmf zsMioLb+hJGkmYW?I>;hxK0`8k%fqBX*+DjB$Lkk15VEQmFmB6qeFn;RUeHhO1WFRP z(wTWRYZ^DzT@Fc8jS&e^aE8|{FL6egLTF5`QGeh7cJpc86mtUC-NIE4R(bzs53cyTg~w?z0a@w6U5>v_&KBc} zlX?8qVyNww&eVpMCgaj}J>WZnF59?zF{6+HD6lTXcBRrg_saC@^X!OaJzsE}vCcpu zSjprrG8)I)xLn>~X~IMvhDTg+0ubnt5s)$2;X>Ow(FY^*0V1phIImRyIVfNW zXtSN%0gkK!xjXB>Ia^MCn)FBix?4I3-YKiRUweu3nv264;fTHFY~E30S!{7>$e zq0LdIJwUs80yx)6{$K5||1Xm+z!T&6kGI7QDoXu%!6V>whcHS4w3HDH#ATq$ifrDL zdomSBI2*;H&P2{u{`qbq_wprd6KVo2-eWo%FOL&kVk-F1N%Udz)eMf+`Y~iB=y$BA zy=YC1#ERQEa;Y@pQPv8vj4tR|Q=nv64|;6$@z2`}|7LVTc62|1AP3%+EuPFisuhB) z%=@^W;E9t|uUx4fK}a(_IkQ9(m>Z5swMlzdxZGYJ`7q+OXk`*w+~gWuL@qr^@wYs| zU!`r6y#ZiE4n`p6K^0b^uHv1;{%me~^u4`!bQc%j)DUsBk1#KYkMc+8v*xR}oSu~? z7l49tziyA#AZ>(dDkWMI$E1PH#2zfEQm+QT)|86elekjtZc(@^BOEeK<^I^?HI!p(rn{Qc*&cr% zNhW-9u|>I(q=#)Y)zpP8b3gQzzU zK$Fl00Mq~ExMpZ)XKkmgYhYmN0I*-`T4D{>a32A=Ush)|7ut#0 zAl<29EKg)~v@Q=ITu5&ej5w89C2YBSc>F>ZFKe*;*;#$XL!!{~Swo};zks94$^l<* z2ZyEkovo~M!(ODKgEYN&4Lt-OJOa)&T8VU{x=rw`#&7HA$c{5a`tZdIyZ=>){;s$C z42vFnQMQVk4k0{qEqN*s2}J37uKD-KN6G*&nlKboMQl3isjS1AOD?Y5yRX;dUx?u@ zah=9kj&qbm$d&LGCG_Abp*Ko9Nx=-MewbiX^U@Quw?*NO;}>U+&_`X=N5k@zrmC4_ z3Z62GDN*Hr4y^JuBX$Kxw$O{kB?z;DXQzfPD;0hfOcfb5L;ZGV2y90hKl-yG9Q#2d z55`K#pGFNHy(CB23Wi;R@FF;FDloPHnJ9)?63WV-pVebU#~OEF9{ZWQ1mjS71u5Vh?R8UtCp`(VKw?k8el{( zT8LFa0m|2iSAAk%=`{N!#!AX!e2~>IZyaxeAnQJRJF?WsuT;@GhdY!udD=Mj@!=oz zI%Ett?u~|#xR=nLbqDU(cmtXDTbtI7UM6x&(QKTbJY+Xo=FSHwRi^bxVYXx|Dz%JgD|-o0u=}V!ukLR6Z{{PtN#*V|K5c5My>s2 z*t3DCz(0Zt6*o~*qDsVVDp?*Oj^C-;6B~w0sCwMyaKeYCYASxP9J1bWzdL6@Ry0$m z|6uw5ri+Yllni<}2w{RQ__dV61qLGTl^^qU#Kr`NyQ9JsO z-{GrD5$d&x@=lpBt%W$|=0`y%3|5xa@|^+olb7hSfMt@{o);q?RQ?lXCZ!h>e^BOO zpQSliX#N+WF2j2W>jV&bl&z>?VdqAvWgNR z>vYEx=bh0neNjhJCEKNyw|fN#m}0!g+Lgd6XX5b4K-V@O^MAPAu#45=Yvjw(r^XRE zN516pt?8jMK9x(#VNB%6{lo3{uxN=EwacOBUDHh?dceSZlAWT4UrDo{rc!Dl7qMf% zxP^)Hdiy;97{!jlL#_@h;YYV>kE{LzEap0JcLT3fRa8;6 zNqy+gk_9J-l`#h!#;D~G&wm=rgSgp3g1eU=x2br3Lh*4@2mv`tt^R7uQmd{f><@bd z2P2TGdD9=pY)73#C=wga?(@>Nod=WSYm*%Q zM?bT>Q`6ThK&Kh`V_P3~`)Qb;>o)ZJY~Xs=D6siK>*0GzqdLBNL*hW0i;+eSI+C2S zrg`v+SWQb*rF1$QZ>6uQ!-9*Wxdk&H^ThD)<4ny&@}Ba4UD~wSHVU?YV%KYc{~VKg zG-PRF?8jcJptx}3VpTbm_`&AtvL7Vr691MzyC8bU=O|&bBDA64K9|++v%=G5d@V(V zP3AXUeW=EvEd@HSH7Uh;O7HzILvVlWYNYF3@{s^|djjCi@qY>Lf2*GWh_C-;=(G{_ z^P5&8rX)~P5-kJ|bK@gdTh})pUpt$s68H*$_^Rf5ttNh1fHlY6R(dLHJhng?qbiDV zgky6_u1?=$1GN(|r4J+cIWIDo2$5R{0%1FbLQ=)cTZGZNsp{ zUYImW0pNDNmbQ+QJ_ZkwbG*l9P*qoeqm%649G&t&gAiWHxn>UM>*EMe6*20&{G(Pg zzuw${jv^PAO)S26K>{G&9v)c&#UvYsQ;>H9aCF)g{sr;8u^ql!7f8Q30K~Wd3GptE zx2{7Gwi870{-m`O%|!lD5gv|_xXI@KhqHG8j{M!WhGW~dt%)bj#F=~X%?Ti7r056rc3h3-ax#}M(PSzB365SA3Edg$O!{eDYfRC`3cn~H3Z zvls#rRA)%s_<--m!`8y6?ube=ORN0bHN+94x%F4Z$uVQ+>0l*7;S>yO3evnwvuoM8 z!z@Qhv~w%Jo~p0;_I!Zj5eh}J-X@(VJR+r%norItECC1~9qrxw)uT9dV6)%IuF*3a zA!m5*`DiB$&&T+X;>;DIs|On*SFs$Tiz>G6%io0h4}?=6{|Igu6GONlcNtr67BCen z+!*&Mw4GAA{*^9#q8#D5rq33D@>Rg95U&3ic_rYrN$@+DGK3Zn4Hb#~MisX*PTOwZc|Fx&^Q&V7 zSbgZN;-}^s{+z`wmzG>u&LEeqARixOhe=Wf2j2CaBL1pdNcK=9QDc`PxM(QeP2PL_ z>3!js)ZQAdzyZ!(e21X027W(>@-zdT^xUHgvSwKQ#U2pBYkLi@vzhN42chA& zRJFY-p5$d4gI7We%KMe`Xm8NY5ehMGuvKz%x&5~c!YV?Vfo}p@I?QTp=Fwvxu|>@a zeg#ycx~TgZ;0+sxLmB?c$OshPn6NF)Me3?{qTjnZ9D9JOcdhq4h7yFb5-Yh?=V*=T zWc1PD(WP}gH_gIZVllL$!Mt{OqJ*yxP$(kmWQ;`BHvyMdc0TdH<48`s!-e*%B!vI6 zYN1u1=C}rmY0H@E6(#fPSVGX(h5x=5v*&bwJl}WOE+F&XFDR^l&sD^@eTQkM?#;w6;9uY z(`ohZ16%jjWpkQ8oj<%=WIe;9pSd8TGfSA=q&>z_e2-s~3q|Z#MiF*`J#F$s>eeRJ7w&nK+qZzDH}MY%#t0YZ6!=A+al|b*I;QKkmK} z>>3?6dk{8z`esH;>%Xr*eW>xf-&8_o#dNm3$&vqeZLxp|l#~+y#_IqW|9@Bn{QDr= zKSr|tp7s6{#{Vzj`e#6ICaqKn8nAh+WQngwedEwQ#;V15l%MZmlZ!Jx5A;;#l2mP- z&3d~R>xsdzrS*#avV+|-Id|~vcL0=)+u&1c^?%lJX{JV$*MUoAa7(2{TA`O8;U``qBoLjkYnDZ(`W3T%rb;ffka!;Icy0CgoIal|sH;>vBBS#+crGU5DTh=;bO<{qFoP!90$bBfe^rq~T=Qni<4F zltcCqG15gTWOG{HLMR;8?}qJg<$U1d`s zK%DT576=zBJIF)|oVrhtsB$WkI(j)?EC6lvKgetx@uL@8D0C+7it(8d;GuDX*>3yI zN$jkGu zRzA}k5Z)0@nGD5e1}Px(OY@eqg%DH+<_Yyz??Gn=#}j_YHrc0xespOE7!`tqW~MZz zxJiVzl$}Q)u$GmL89vMMxKB90??PYf?HyP95n^?OXiH1$yH?YNzMI_aj`MVV2tM!M z8zdew{(D&dDxVJUqW}UT1mKzNKM2b!p67EKkz6}d80tis}GYC>W9a+kLgL=?C3F4c$fiG?2SL)p^{Uw)O zU#a4m@RzexU5PBdDkY^zAX0s^T|-c;8zrj}0o)x*Z3(*hkl4Lf`#N3T1OFoQC4|f_ zC_ZnDE&K*qahelDT!WcJ6*W;4%VPwcPrW5k(}5?bu`jPYqbkC^mlAA?!?@1=T28Vm zbi%2?$f-=;;4Zr^*nrm=;-QjLM@L)lh|uZG$ve!u#;AgQ+0xv+RK2NT0mriw0fV1$ zaG>hb2I^sntOoKC!%M!H5k>}P;fVO_%%3k9x1#8wU{8&$lsyUSdM;Z+1VQGHL`=qH z6%srgsERoybcChdU9L;{!|ZJ6cVaP?!)g5Wv*j*$B_bbLcSKO!_@~ak*lss&Yz3M{ zv*jwHl_ocJ>J9OA+SBbMob`pn1F`_tiIR_KPlUkS3Ju0IK1yXi*=rHpJZJsuYrRA6 zZ~V>c=Z{Cfdrsg_XSI0iiaiD=Oaf~o>>O%xd_(qNjpwcim-I47Iw%t%qgPd&tKi)G zmw4x-Qbdbt_79D#;PEx0eo$(Cv}XQ-rK#~hQ^DSAT5S>5qTf0`zLHQl8{CsFLrF2> zlcy&p!PGa;P}kgKbrF!vFFCkQ|!5@3SkKbhY6FGT7X znmO27>bZR)GwyF)tKbW7m|QM0YRxQ2(64CJOmM2~L?>V63|CYvq#(#CN5eW_sCXLD zNe@d}u?ipG$b8I!XAC7Vqbo)UJ4In#A8Y&cac46m&CL84Xm z!Z5k?S^E)*q2+-sCf-WOPd#uD|D7)!>j37Hfd{Gb`lwR$q4BDj*o>u1@((kC08lU#8jy ztHhZ|^yQQiYRZ zyfC0^ef>#k%|x*~xJ3D9$s08bF?Cx>gsawyglBwUg zs+$XN?e{feAE5sVmY>j+Y2jR#`wW%9VPlWS_ zcuDlj8O}s*a3W zI$_TG?|dAuRFsN>MqCQXwxyB@$2vSb#bJFe)drYGXri@f3%yl1Z9%-$8p+$OraFwX zP>=4euCB%#`%B+WV0xbP&zcI{EWF8PXXA^F@*9ZcpR6*_s~7>&uha)5rQmW@vwCB_ zu|^{U{J1l+KMe?13-VOsYcj$pit7`R2poK;HW$7{9cYpmiqU)?RbZNzSzyM3eew^L zTLRyQs=E~x&M9lL81nH3yK8c~^5P}3ai=Z@t7Zy-0V%DJBdA2_heLL9*FpAsbe;@6eoV6SViO$i_z(Tn9NBlAl#I z*&O1Uf0`-g0WOkK{&=6JB*ul`Wqe^oJ8~*lxP~OM^r%<=s@m^u_#GH@GKla%===2A znP3|R=&d_Q-cY_Zue_z!mS9#n^*JeElTa0H zeNe=urmn>{x*4c12r$iDt9&8@OKm(TQ?lyDt4W#F{u)*aGqkR~628pj0 zi|+Y&-{bx}HeM=lj6?vDj1rLcasJ<7%YLt?)N6J2{ zs}h%*iPWT*IlV+xIdb(J&NDG&Ac9#y(B|4Cjo41LuPzMP<(J-_zUL*3OME-JR~y9N zx2*KbSt%ZX%r7AcO9D}mx5tUKnqsk|9VAC6fG#Ms_FQ`V)(m2F^9+@nAI=*Of?m|A zOg#+-pRG1PGnn9OlSnLgpSpDdc}$^ig}w*2e`7@6Z*2pDtpo$C-dOE+t49fmM!!M3 zd~HAgGrybhfSk8|Bp^@=l8qxpnO>HXrx@v4G_~h`qk*BGEP!C`eJ$#3Repn|ofnAny9rs4eMQn5 zNUm4<-S^*%aU1B3SBW^@71NVy5SS@D?}Se%P@;-owCA+GmAVq_g;IPw>p$G6 zu;UXSAaNM$gJJ#nj>}7wi+Yb!!{CE=OYrgbmuscZsHG?IoR$wjrZV7+{ZINtw)Qrz z|A+a*KPMglRmrcvRVAxoK%;W?fU1OKHcCaqo|@W9Wp_htB+3F&)TM-xy^C#aCo4ngdZh%{Dt^5{A^}K|CysLpR5}ugqFx-IJzlVJ}+hY5jNb z9MjA{{>VUM?@N|#TG`@*(S5k~G9WJqh5H|g6eLBXt1eCn-*ENGf?w09=!xqfDWb~F z2k8S1J#*i3M)0cS;%vP^3Ru^I7<>NAD$0pJ0#AnZPx#LGQnb_Di5#mbG9-3q_ili9 z@G`t}3L$&iE7TKZ)|+^^aWm5~gR;9p=?YH z0h=}t4^F8$T88qKycIvEI)x^<7%eW-BPyEuw z&%pb0VMr6PD|S_@l5-cwuKh7MxoSh)`__XOH0IOH??4+R7FW#Pgc~$_9t7KE&V(6 z|Cw9?cTZ2x z1bg6_UCHDh>*%wSBLHs)OXlSUv-|wt6#=n$eUgCc2QBKMgqbXZg*!-8SrAN(s9v0B zOmX5Z2T=WRx&9&rOx~3zo$NTnApZ2))W!ptpTMW;{LTF2bKa)`P?l>pDaVIXF^W-r z&ie?ZzlHWszhPmlr+U;^g0I&L2n(*=sT`uv&*>v7JPtF!%TsmqR4h>o6FDMGhOMp= zeNNsXfB7x&Iq!47Hyiyq?=u%un>QHWU%u=EqFi@^aNgDd-~jpGIPkJ_e)!0oN!e|| zgw=n;M=!Jeo`%a+D?E;`9Al7E5AzOjAlSX#M0tv;M_y0mmL#*Am&rIquVsR5Vt7O((L+XB!40Top{-KF<2C_VW zKJ_ES(Md|R^1)QVsrrSVQD%;gr+lSs1(|Z@s_WLyY71Uf0ii9Nh2N3lbs%olyjYGgp3Y6coF8mDQ-{!!zLg%v?HIAq^Ki`V8L=_w zBKfo?loV8yZbTZc%n{DG{g69JG+S=T>36So)7rVAkW4< z1q6Yz3<{e4U@alVd77o6SQl*Z!k#PN#qo| zx@kWG%$C7JFH+F71>mZe1x!fFRfWzbQV#b#@Aq&G)LFtFd*IvStHb!DBnv!S61@{w zTd7EecAm2weENlM58W}{XqdVxZ27D!jV;>jjvB-(JVbyn-=zNj3LAVA75c(VE!LI* zQZ2%PL|w=l{pH*O*yN}#C=Zj*9UKo^cm;+~c$iI6YyR1{R}5)qt-6++y6HOv_1WiV zTd^D;P1Lju&T<;7pTv{6b2YJ|_$s(y(XQ7$A#A#Zjs5~70281uEHB)VmtNOV}UHifo3qD*k*&{K8@AIeI{O^~=h5w>y(jEf2gw0tq+^J5Q`TRWUJ`F9F8YhVWa2Dc2&CW=_4C3n2kY0N~Hn5xON( z@!e7JzM`+AK)we{BA8sVlcBMk!b3`3H)pkz`cHi5_0AzOy+j4tM$M%)RN_o$?p^)N zVH1h(Jc*fyn`Akj`V9VcCzs58(HAL_bb1X6>Mir;hBXY7fWgp5y5ib3p6IH9Ch@#J z*k1xbQ8%5HRj!P>0+nR6U933YXYIBo@cS*!5dNy+`b>q6%*abx03-+mkl;VjJ^Ygd z|2zo*MEFZ0lmSSDK>e+0Vdw^?Ale|pWO&rAMhf!l&0>83qo39+U~2`PWcdVygjvO~ z!;TEfZhMx@Z*iL4x3hc{Z42X>hAj)UI7|10`9b z>HG)BW+nRA0=-^76Cs$HFLMCR12sVNK(5nwN@M}hJj5w0NyHf@GC{b?o>BG5i$@jDE7e3G6t4qUq;_*jNGob4X0{sU*9hN*1;>` zpvxPOgQ+N#g@m>1f)jmO9XG*r^7H2b;Fh+fCQ8rUPq^vfM9e5`Z~^&Iv7CIXVNNe3t-04=wx9_QWc zdj-)Xdt1$tFq|LC+Zod!pz9E-^*m(c^3SV0qtCdfoC?iE!EQGD&?#lA^ zc1L%c+p`1|>7}&`ELuo#xx{0J`HAw-cACkOuyLiAdT~ZmWY|-ta{PLytoJJ4RIws* zX!Pd~UBB|wzpfFmL9KnM8@YzzZad$7XjzQNajOVMFu*CX^M1uT?F7BE(p zt(+%}fT~vjlPXB1wo}XKIhj+wn<%^24@5T}uCUFi{$o+&!{civc#Hwx(tp7qZ??K- zNneYOBQ6RZOGR@pZe}GF(u{$qV1}dy7ag}31Qn`J&{FS(NgENyv6RVawVM<;k@ zmZF7vmevPIyFG$AoReJfGD-$AU$(IY9&rff>R7=I5?o%Ko?1qc=|>4i0S=YNdLZhb zY~0*sanw)>d=gUFEyeZiJ(1#rew^Tf~zXH?HGH{giPv~$UONcbuwWhy;~(mbdqzDuDpeK$;C{5yLLxdOxWUTQL4m9P<3C*^5riV+;wmqjm>{qMb#|wf)Xly`zhZ3d-=S9a8 z8KXd&BYfgW!PJqke zT6|~$)}-LtKg2iH1KU=|T{U}6`YoF;KD$$yV?KYY&dr6(=g84Wm)47l>%vn2gWB2O zWP?D@qTM=$U1w|jvAO%hFSPlpRd~s-9l{D88 za#+jrj#KjB?0?t7=^^O6FYiy9vv^Ro0Lt@STaWYRfR~=kapPLlh2G#m&u(*God_R> zMb=FlzAVI_()1?Nbz4HU&zZEx*}dv!=+C&^lY4!4h~HCEZ7J(bdzm05OrDG9xBQOO z&T5ovgH%+hGE6OzajCNpBO+#LgV8#n6!aIbu)xHaTX}?R+&3a;;X0yVMMvw@ioXH; zN)5ufVE`pMiY;8PO(rED*w3;NN}6mBLH%fi(4uoItQ#^Mo2;DXB8t+W4b|7|dKEw$ ztMrTKCH}$Fc)09*SZd4hs!NT9^~@s5x=%Ou%D;(B(2EfC;1?%7@Wv7bx$Sb>6lUH=`;Byce$5OGz@wO@|5h~!*f+lovf8E3 zOd4fe1U@61sGCS3+?cG_T?J)SN=#VqRXj%a2`UZy!iyf53&Rl@3Gc>BpM|W4(A5`s z+10mul4@HrQkv|aQSOZDmWPF(o=<5l1pdwbUES+D*N#;x)65HZ0>{Ppceg(m{DtL^Fi zAcI$<)T7kLF#`eYnFC`=o#kwe2y`zN939^q?MzgP0kWBoe{Y(tul;b52GH`;w(5Vi z)8HS1tp85Sf1Y!ngHix$o_tdCv^NRSgBs4zkEl%pYzZxV?yx`=i|tEXORR*GIF}RX z$HON%!z?{Y7-nqO+ud#iwfxu$X6~F0O6ONkVN|+K^=dU{GbQFBAst$LJ;+B?6}k9| z7Gi9FAA(q?L4XW{{HT`K9LGp&j7L^noV4Feoy2Wi4nC8r{L(Pg+r3% z9t~-y5G-(rl8KhwBxVYCQ%qx;@Hf{g>7#I+Re+|&A<&=4oI9@BVzSGR+kO$B_tr!$ zY2=$KtOm+8^5~W)pC=tV_9bijxVs1peeLG5J+m+br@ba5@hC|+RDpU{>4oK%qO!C|JJ_T)?X7?hV_F=Ec}>2YlJ zS?6&k`HhQerTUC9;dy|wP9{PzXsqZNBgg^K>z}K+7cjlAPa%o@TvN1bpD2TPuilX#LLuMW)X zY_=8bXhXP{?uX<>8>^j{Z<4cSCMJr?@`4KJg$Um89E={P<5UKy2L5eIGhW->1<~&= zczkq~ML$=S0&y(Z%6bl(Vw+qw89q8>O~u@_T_L`=+= zqwE%qaF2Ld5=KCHO1Sm5VG{9h5A`tyocszHt`aM#TV%cax|KzF>iquEvN}%BK990a zSA?n)EZXL6!&ZAUz7wCl!k~M{^Oz^2px1_B_P&<&t0_(bQ}lN%l=e23+#?z<@<$r? zOs+Pi@-oN2i25m>P`nw5zy(}K2LbZY|5Z2RzXU!1ZfGAXXwk<67j*H2?oY7Nn|8zS zH34r>*J$dD{hO^N`IT)s5zpH7MNz-jAy%6*N9g3m*AZI4+83L9;c}OUWf*4;T4dT{ z!ew@=z{qvL9_>N_rv$Etej4>_F1(BYY?yAWm`PK6w->`N&%O{4HZjDFP(wqDS#}7F zKc!H+NL2Y*zs^D)LrJ6MP+*WJQxWH1#91_^?O+E&0M@=RmkyTwOrOO-5Y9&pPU#K- zL-~Fbrt$;<>SzvD5v-<#dSj@iS2mG^mB4XnX4C=G6MMMiK2c1`g)0(lS2Jnj@mg+t zOtiS$VJM_%&Jp-iQz8238rYJui^^XsDZvEGI`CA8N&pr*p%*4G7ww=uUrGHX$h^ zloT0Occa?X8TbVodiEz}odiQso{h)k@ZmH8)+w9TIt*XB6bn?yEsNgO3Is>lSk+s(1o(+VX&t8wS>_qa=uX*$to zT3B*qGnx@LbS8!J5?_!`#@q4^ldz7TvDi{r)gY)^YwC0e6Ct}~$wyqH`4pZd(29P4 zeodIM7+|YSX`sw#MiLYXZO;9$l&x~3fs!Gy?-OjN{kDxZxTQE?@U!m=<} z>r7j*O-HHLbw@`wExJaOSz)4^aJKgEg{OrtPu|P*Ko$LJRg16&X-3&MWWZLnhint9 zBmLi{3cpg|=KnC=-f9-xhOS=NouDTW*~8ZBB)c8C9~<1SmcQD2?$Gh_s*aM+b#2|7caM z+$DMK70q$97VQ($@n-i-j?Dv0h$o#Kh05E>9Ea@6UM$$`VSaSwi1z^ncBMCX|yBuIYo%J`+v z?}Q*MJqP=yay)aO^$Iq9EBg}hEq^|tPrIzH_^?lRe~e8S39U(R-dEPPsrD`xG2C2< zuJpZNs}kkM9hGOVx^DrgYSl``#)NB)taSQ&XWZGh8_^FkxMc;JB*9>EU+{)z1fOw% z7$Bsv0H*yFnOKdbAB)UMm@f`J(M>cgs(lsk3 zN8BrMT!Ap)^LM^?P6D`)``bIFIz1eI9iejF0QaIT8oS~dQzTHK-$!t<2ogXMdQ_`a z(dRrgFOBYT=PHPd6B)9ucIxB5&7Dfh*jm59KZ5U+&w0d;!muN%=elkLk(E&h|4dKrT3-Z%%jO=D?lYPttP*fbi>?Txf7>fV5$s~-muxfD^qh)9Uhg?-3x}EX=OrWF91cIDTZnDKCEogxypC`CBxbm^ ziw>rzTQtM@u|o&KlA`;}Zj{$D&Ct5%Tcalqs7r zH~xCp!4yc}19eJ(aySI6YwS2RpVY|(NWtOxYlls9Yt3u*C0Trx%uQu94Uywi--DKo8+u&5VTQ9f#lw( za#=qxJx6aq2&syKsHQTPv_Ots+87JM7CdET5GyJ%9(z~;v}X5;Qi+)|=H*ZIu4AjX zq(QvKTQpqcG{ZpnEMX_t#w57-{ zDJfwnI7>Nh74n>`5a*an{qUm|5ATPbb&ygkX&Y-d%buz)N8VCI8TD3X6APN66%tle zW$`UrMl*k)Pwx z6D%vE%&ti6s@VyptC&$_nn^>12={SjCcs4}60p)u6VVi52{Q!RWN9GgaekysdAsGFSJ|bcffG7t2G~TDq%vF{ zsJIr?;!t>U-A(AMdi^Jt=NPV-@LwxYAYPB7awL#6w7Y?5mb)B7N={iQHdq~> zX_Ks~qvuQFMEpu)D4-M?&PY-AK>GTZN7`n6G{jI4(%E5gjsS}jHT4C+%@%>RVKHq2 zJlBlazR7Xp`!G?Jahg-frqE3}kAo56CUs0bT4Wsm1RHMR-g!O`DCj{sZR}p!k5biF zUItNi`E9Tww~sT{%)eRXSLIKhSj{<_R~4LZvcxMljqWp-YjI~M`erjg9jQ&RMlIta zIs0qIv4{=ucD8`PTQYCQeN-(H<}lh>H_thw>S}l&(MP@RL5%WoT@b`0J&pYsYnAYf zm+8TC#L(?#a)h*w9QFy#;^m}v#sT(t!vYTR;&s5y@CQ}Bc=n8ly_FY$U|A(mSMe08%6k?A^m;YG_g=PozT9s|FF%Sg*YV|KuO{S6CCInHIw9RgNL zADlQ!9?D-Aw7#voVq;@22g44F*S^nOAuM{?O^p_Hv6L4sU(j}+%mh((fV4MpxD&d= zx~x$YHnegzwD_~2CTLD3mm;Nhe&T9vlmybo)OQ0Ml)<#t-*U`@0fJe0VPh zDNW@gTEa4+If4)s6`)a*Hc8#5Q(@7m%i55{9*8`b6X`||`Kob#^)QdUy3XOIuww^| zmrHqHgP_haoMnYZoaI(Y55$ML?cO0g1df2#K+-=-@Qx^yiZEyyy^uCu!S=L#t`>#K0L#(YZVY=_6WR- zdO!W@fIY@{ftWyM-aZ{>J~6Htt_pJLA9Jel{R~NZI^hN9sKJfppSm4od%a zSb($*6r7GB_>0|kHePR7)66-!Mx>Oip;0lvs{^pqqO#sevzvRVmUGg^xHBhOoB@`B z{UB0}(I+Bm_I4p%eCYq4XC5!qAH2b5E7pFHUz9jJ#q=i^gQg}fjr(i}Z2kc$Tt!g?J zwhE{g7#ItNTm36I@!%q?{WO*v{EBOjPJ6Zzd+R7YD(+Oi{&zBy$hu6ag7On|%jGC3 z(G;p-(4kuu0m)G3$CZH;4F}CUZ14_`=hjWJcA=l}W;og+7UZ-FW`T=SX^V39e!#AN zqj3RDi>JV>73AA!Zg!G9p)h^)PH3WTBlQ$ri1@aA@Tnq+3wBvm?zd+lX8^0fP*yS7h3oc!N#-c>;QMY} z$}Ne=>+0g`X7@%AN8@L)&$@4`-7ZJmbiiL~e7}saFf@W1CxEf*7fqO+7fHyU;ar8pPmu^Vfh z{-&~wfn^`W_aOr#{!<_EfWJ;*=Omru>vJjxpkfZcLm%oSg%eYLMmFLZlxn2$k_a(& z-s``HwnWH}7)8N{RND?5`L-tz;@JwZvn2DPSD5c57(I3?-4g~vZ}70hxsr;dp&_BR z@~VKw6p69|jrr#)+8h%5CRRU>D-Ise`vJeBcHgQAVb-Pw80yWodH1i*)T45#CadZO z@!e^B=PW75w}<)zwA04J&3Q}RT(UE$NN0cFQJ};_&bgzSux^uWl4*|hTl`&52N%44 zMJd=iO9iXn3*bK7?OW*WX=<~Nx+-9I)1_n$x)@XW;&zOIXmo3?I<{ajhn%t&g}BxzM@Vh1>f%$Tt7a6rp|MBW5o>YY%;5 zNqW}PUoSS3+pNefsXDujiFgc9N|DLLi(^ANY`I^~!+kx?Tv*L8MHUp~2gA+oAz%3z zXgh98M^&6gV08%d^gS4J?uX3URU`Vau67^RrV9rl0$p|N^f{!Xxio80F6`j#f!Bxr zC@n3!$$M-2EFTeC@>VT4uj_Sbp%U;}z1UrCMCxCp;D|6UqurZz-NiPzkhh7{=)_AX zQp}2Ak_McaW2@C8_g6IaFJP+Pjh+9xls8Ex*-HOravp3s>euv~UKby~Y9@gP9&a+j zn)ydIZhe*tqAMWSYKf2_Hp_o>+)(5EZ00Kp;@7nh~O!T-gt3TIjFQtGzic-A^%+w5TBa6TRU2H+Fy<{2PPU@76%)T6fu5Ox3Gf2UlR46V z`XDiih$;#zNXRKke3xagcW@j~8Tp)x0Eh`7?uZ4{r6gJlAlz;1a3cM3M=Jzm!bwwq zO2cTP@aSw1laERs7drcraHnpMX&4X3dN8%$Ky2-rgHftekKw^Qo)(#+ao5{6+7_43 z!MLBkNUImSI*-GGJ*QfLS_fArSFlt?pAl@*?4b{Xp)T#X*fNsnl`o$36m)_Y^=N>p z*T&XHC6g1QIED+ZDxk+2hmjkB6{KcPwxC$Dq%wi%Kspd-Z~X9#dcZQ!-Nh>@zxAif zBy}zA&U2JIzJIq5EP2%U2~?AMgf+W)CMwbom8UvnoDxkeiJ*RO?F__^YA7 z_b!{aIpc3C4626=-V)Ogu_|XW!Ee2$Iz67t9HMR5__Jlf4PH9O5n@Wa3r|k?;_pq^ z=nf`F?1pdO*Zh=hdgz0KFwK(Z3K7ZjX^+FZEoa4lseIcI_ZuuUNX52tI*)UjolUyR zPePl;abv{sk^!&EcZya)%J)x%_<7IqOanS$uy-7nsV{-n#vwcBHaXV{c{(}YKHOP8 zno7nrY^;gSrW^)rpd&$2B=0D(Hf21*x9)?*BaILTde6dVNjR8K21fypDU9Wf-2;CW z>pX}Mm$%!;ZF`-3!jIi87btJ&rEIpd&51s9ZHDdJf>>8W1BVI44T&TAds)V{6NT+3 zd+)NwQLUQqEX}+d!GWp3ImdAN)%L59(C8I3C6^hGuu9@g&G_H&=Dp+*a7 zRl-HC)*SunrveN*fM*<&EUM3muFLnm{h`_!S7G6M@;7hlZUyh;LWyFabQ+}NAYbg; zGi#{`^4a?aTh&y{v>>z}SKFtP=vv5q;1kZhFna%8){t){Cj@_GA}I7!BGS1Tbfs^U zq=+x#5aLJ|GQTlpBv0#=H038kTZn6Zemq;C^w%0{-?zW4fBhucsicVVE}-|@4!4HrA1G@__xNNJCv=dqpZZ(D<{1F*Jz{i5Q`krkCu>!%K^s$g9iC z#s*XyUI%2ww|X>;u?`RX9~a&Spvj4s+WZy*la!~BT>GKQvP<)mKiRK>@w-qe(3kJ)uf$A@*FYEQ7sv zpWK&9BWr0n5g%D1vDCwI*)k<$lWs&&>j?(q=8WC~OKlDJpF5|0Zp@L%ID$7f!^ z7j#snMT-3s!%>2~XDIEVU2r_1=9gT2(ik@9@({jyG2p4j>peOJxh{tee;@CzDtg-X zcFcVt1J#hV>sHc7QK@M1bZa9rEc%RKSOCeGcK{4*PkJb!doI8KW}4k-FqvL>B#>iD zoNp~vJ=K}I+n{pmuhPWo9G#vc!i~W%*+D>=TADgKT1H|w?u>RikVR19l99EO%a3vV4b@(3-!|Xx z;?()-X(ZLYq?o~49%=4T-_D@4@heDCP#V-vv_Jht`umBMZ-Z;l=m3nM0-pa7D~>j{ zI+jMxMwSeYu8vaWk`+{;-zO$VrDPZ+WJVgP_CbLD)fE5y@~2szDm}m#e?BCD=l?g_ z{}2}ym4=-Zml>aim!hYc7@Mq9V47py+_V2aE=4a%H^Nw}ATBvV#}LX0Nv$x&G{wq3 z#X7aS2lIQ9ar%yK0iKFpa(qO(R)LC|MrLmhMnbwtfvT8oVSIE_YF=inY zBUa3GVCHD;Md+o^Sv+bgJiSbk(L`HH4REM>Aq96Q#<(2TQnUBCns}c<8;~Uns|hb^ z9klgeQsYoq!=J`;^wyrV+oe#FD@&WT^O=xSRlbeWMRamS+Lj**>`$l0K>d(R4Cbpi z?SAnHpV81SD(x-a2PYn{sE|n`3#xYDh-6hJ?@{l4vq?xK=`F~VDE}r+V@-G5e@Lgc z!)5PW>6o=xGt)5h$9-&{tv4*3B`Cd5<*vz``mAO-br>q#Rc7$VY3{Cbp<`li^3C^y ztPft3A##pyV_+y_(Chjo$1nv!Qlk~DF@={fB(7qyTB!I^*F^tMYi9u!)%Lb=LRvzR zE+qvdRRk$TLOKkZkrX5yh7^U7GC&ZKL6Gill%X610g+Hr5Cug*x~2Kf+{3bB!P-d7X4mIdXzAmmC_9ZU%kEiE~=P&Aua zIN1K$LU%B~E_b-*Omh*_G|5Ja9G;|7&s6t>7_4rC><+zo&+w-%q@yJFha3U%OKw+a z#OESS-s>?oHH94u`_@9pvWDXs$=lgwd?o6nePeE39s>h}WL_%pXjsS0_{J0g{;-}^ z%6!T)Zbk*K%;tEPRX2}OSW*>(PU-w+tgg#l?tYShiU-`(#9sa#ngpoj2os%&BK@it zko}`~*}tT6wa}&& zQ{lG_RHqf1@`48#T)L7D>^oxGhIjXdPVj2boD|EyU9 z)#FgXR&7jTvZb^JNrSDdXj>Sm>mtd&oS+NPRCSD$lx4C-%0c&?#Aj4^7p1;rq%KM6 zaN_EeU-R(Cr(t)anroOBBa*u2tZociC!J+1e}Kq2pWi1!c8e`{-66b4!s=A>rL&FY z5S(Uv+0<|8vyV%;w_*-e?URLST5*%k+&40Y8dO+&q(6?2@nbLKOlqK3r^z#_5;+<| zP}VJ429dtVKBVT1>>aIAgq(tZWsXTTe^^pgslT#x_QMUL{G}VgZ)lr_)*hU)&d|3? ztW}&`Jg%BRq8rdlq2{S6Lbbg3WS_=Gkqdl|x1~Z~A|2vq$COWeEW2&y7NSmSWOy(l z>XB#?U37T#;G9%{i~saDLOP1rp&I$Gw-TCOW*)qjsk^0l$9%q5Kmymp`wYd6{K^25 z(d*{+jy@%U&FrZyA){UIrf^h^g}*2jEeo0A^^Vic>XGtW6MwTZdxWzFnxNyd$@lXE z-c(jM{3h`+y|;H~OL@FvQHoNrDmK1vhcv^Jko+5i%9pPz#UKXOe656K z1~ui_bHh+xc za~G^NV34NXS=y>HB5RiLWkZ~J*{o!>mn&-JGHJI6Y(D0y&H-**qB=^8@Rq=++Ty`i zLrrH*4z}|9b`l(2HE?Bq_gVjOh&5vgkMF!^<{*>sM2=SmZ4Dc4d#lPj6cXm!eykTF zCQNXl$M$_WBsrlv^<|Nm{biB+BaH(Mx_2#y42OdrOfPw)CxB zQqn@CK>Syl!~?Zb_yHr5))dAn9|<-J<|8<@&(c z_bJIzyh2@9WuSg%Hnsg%Ka{3&J8 z`L;>Q8}ZeuPhUfp1o^{-lRao%0!asl_!5|Kq2@Fux3zi?6YsCA{dkt9i-ovS<_%<3 zNEzQ#&#OVH%MaOqy<4MU%v7O|C=Ei?74s|shx)WZ!A8It2m--&gx_akolN%5VrIJ%?m~PI@j(7tz{T>Q zXAbF6wqF_4Lvr5XObz%QWN7h$92$t|9lVmx?nCh5rin_iq>_<=(b;GMz%W;{XH9J7s;xd5*S)fGy|DYuC^d^P43#W) zNT8sSmi7GXbHV*5YGZUy;qXyGj;d0`Rf+HcymJu z>7n9MZ$w`CJCaH3i%SW3H@M9-nJpX3PueT{trA@nBCqxwct2|3nxv+B&D?WB{A7*3 z05YwL+O4e2Ftqr*rA{WkURFLi-b=PJvFh6DdC3CDE+4^D6Kz7tsjHV7xgXyBPUsE2 zMl;tDg&$~3Z{{-N>Zd8c(W+#0uu znrL}9;ZrAOHRY-j0}p$|im=nPy^RR@T&^lYxHKSltO-`|%BO~;3?=B)sgtH1)TKT4>!$RNS~Xam zIXHPUqMKN5Nyb^~4xYfi=U*2J^hsP}QrkbTxFwHTQK9UX5E6*>k@Gn0(A~nk5;0V} zuj6|B2m3+#Wcu&|v61&rKO9gzcG))ZZ5vO`#(uA>Db%IBKAnE33()7|o{OO_hNw=Y zfU8}-nkcy@ojSMY1o`Td#5o$|QmB%9dXECe+Q)dhsi#!7`!2H;tw*En z^>hYa-OeJdybC-VHj>pxKIxwpRF)1N5^21a?kwV!ftQh<%tUTMgc zX7hC(vNlz_exDY$Tg>uCN0;{dS@4KQ^SsIyy~^GNPwS!-iMv4>JK<7&hN2I3(@@rQ z*|Duccrv=idrHSkXZ)b?**Vnlt6bvjckYiSJU5q)KhpHhO*nUIkt{i*=NiYRo87wN z&5?fKOInj_@jx$Jyy|tR9i@QA6$W@{;W}WW>&!kcVdpx|2luw(T=8A6;`Ptomn-b) zGj$=w6nVz}VUFyV`-dN=S}M%e=!H8Z@&uWQomll8S*4jH;;;-c(_CQe0ywhLa3Ydn|Cw#iRtDcpCbO{FspR(%Itl3YM2%=WNra66i0gQ5tGj z$Z@~QqvoD{M83|o@AU2@Y(4{4L=NBl-W;{MrG=#8~DRsU7Ob$OfVk&+O^$E~IB zX|^OK`?zJ6v;&@ybFg!z_AfC<(|^qtLJ1SOD&*-dik)01L^Wtyj8RYDTtlisSwGMU zaCP!ln`jS<(cp5j@z8yK&)LA=N8@>OQgDS3m7uvl``if8%4+}p^RJ;7Na!!P;J2zs z-73&mqD*=|rNFFeubeE>uEl88qBLwTzu}iKoiLqEo-O$@ge;984_b6lAWPHpcA{q- zrMf@C^AQ^|tEN~LZ8nzHYC1TgiLK5YI*c5Nv3pE7?k1*^NNFJKW)RhE{)nKdu}b#5 zfJ8SF-Wun0tM4EiWn7Do0GA6vw?&#`VAAQ?1IOQ;mtYeaRw1(s6I=_MOJfw_w^rw; zU%gWvr!gC*T%zQ3ylvt%Dz&_F{|#oVl&;VdM<>k`%nWD_R&X#Gx83p$>oA~?H8or& zE3WFI6}9`MnET1KqFFy|@H}!UWjxR^Jn6H&A^+vzM~G6&u!*(bkV&3vREDPp^16K_9rny>%wxx$b@$i3m9>(`;A1@A`?2&&ImuX2>PsN){5K z6pGfqpB=rmHd5A+(_>u@MJsi!8tkoXRfc-Y4A8EN^$&R&jWtGcymVi5KK3lE^AP3q zFD7azU`1Rxw>5?%v?UsJh_iwI!d&lZDb~-Ak~u>J*}w3aXslJi;(a?>BlP>d?2O;% zLkJWpo(rRnTwzDL2Q&k2Mb+|Z6Gsm}dmfgjf(w0AtEJ!zu9J77XYd#^7CE15CpKSw}C+* zz+*13mjA$g-9te7;a6ZoCHm%i`vA0ncd==i+t~oMY#~;r<}gPn+EMIhNd!_wXN5{` z@+lza2rO3|-qr(NOX0e}T|8Dvz{eD3>Hu>FsiA{4%V9+n0Ks|!!Lsa769F>$u&G%& zLhVgqASrai3NQ7}x&zB?UI%b+n0839080zlq^vFNoUjPNwB@sV03ih+!kukup~5cY zWC}I?tLg-}v!tBeP0s=UM685^!@Q$SgTR1eYm*Di#tvIY8A&;D!hnui0vdK?hmr{} zu-KGbP3>%eRYgZASPuPQmDoPqmmiQp|8Vb+JHUfg?r*}5mCB!kMQdgzOb-kIO-%dO ziR*)1)7;VC-qgVYTl-k9W`@lG>s4i~;EsFBi?w~`F3vDVd(dd2&#)rD!a8ptLTR97 zoI4_Y1=JkD(s3|LXV{Je+@IqFE28^v`zVD6s{ao~J5#js|GHYQn=1Fw0^^$qWcH)& zFt(3UxTeOhh0*FeCI*PJxut_C)COJ60vv;oB6mL*&?7g1X#o8YX!|IIztF~t+UfDS z%ansY3np78-C2N{fEIXUkKUfJeU!q5F6=@1$IJ%#S8W$i7-$%CuTteCK$rwV**O#$ zx_f}RT0))wcJ%zYf6&6QJWV}uK;HxbxBbVrLjYb&;h*&OApFmki~rG0?YV2@RRCZF zm`cy=0JIwJ9boF|0<{Ec-oR{NJFI}f;Uv0A6Ep&}d4MLrgEkH%OJlhRb`JMH;b5ix zvyB8yd_x7(`T)?*GyZLAxeYCa)0*v_h&da~?SKp15{l&<0GDyckkoAcfb?@wcW`jv zqSYAWTf6@cnmGLlcH8w1945HLD~5Lu`e(eq3%-JR;5wfe-XiRedAsx} zxXL4jY3ue!%)i{?z!8EgUSVj>w|1a0YZ6TZ zm&(D=ynO$Vw#ztzOQv9m!~Xx3_@jWz&z*?=Q~(#Qz(DHm{2pYNXu!1tFrcja{}r@t z!44WGbUa{hcMJyl;CC^*LqEQ10z z=fE%y=lm99msr5Y1sIN9{@yv@{nA(h0&m5}fbffdAA}_;^!x_iPKtqLKidQB$JDv& zy)F8>0q>#2K$y$^8{}VK-FNP&1fS&KOm7T$y7s?;F@b_c3|sOe26OK9FOp+GsgOSh zfGy(-qnzIS3*}u`Rj_3TVRSoywUHmaj4gR{N3IaKz2L+kjIK!AFLeJ(69Vgj^LQ|N t?|!AXoz(-D1V4AjNV;_XqKSV$h1XIg0B%9ihR@U$WwIq6!mIqDkP+L)M|Iy>k) zncLdX>gt-?m^2Gvb&hl?)Mr z6A%6VOj}bqErM+kbg!d6zrT<7(CNDd7isWYXa=uspnrYC0YII@jcRd%ONM>O>@R4;JUARJB)Vk*HNY+f4-%qw9Yp3W-CvA(~2opunQOV;QrrH_QnKXf>M_EaCR zKT*f6)x-X|%SrjYJ^O?oWQIHlM|NzS+=13t+tgf`cM4=K+6|GEoSM3u!b&ZQKlSK_ zcofTSEe$_bEGT!FxxnlxrNitP{i(E@m!QoozY$|!=28v+op>;BROjXidtSWQUsRQ^ z$z9J{osRngl>0AiFykQfgZsyZJ0Ji6ivNxchF0drHcq-G`i4%n4(|UUg?oP0D$nn3#*B(gSEcXf5NFyZ!^FLy-jqCM@1hemehWs(hQ}L z4}2XYm!y+rcYTcgj{VnnR}zS1ZVrYv{QC9lD=TX6CIkVD$gRL)wqp%Kh$5t2MJmSO z-nk}Bao(u(&J4Ni$gj@o5>4;-)u#CoPjJ(Ky!?R$u_iSw&1>8C=ww@<{@&}zWq98CS zj2q^nQ9|aBrGaLPVum@d&#H{ZgamoD9-e#I!KLHP=yg;U-zEi z&8S4H2y$_t>bWHwQn|d!amz6op)G`jVYs}v4;G4{~}-?F}0u8K3-V=-l{L!m{QSdL5rBIP$V8j1!y zv+{MHCRHEqSqtI<3;|Ngt`eJtksxRzEUK_PfKND?XiBlfNr4&1^g%6MK))V5Aa~6& zThKt6NN6*4_>`66>Q<9rLWYi!Nk4fWnhw5~mCc-(Q_?(ltN4+3P4u5~{+m1hJ#)0f z{yTr*ulT&2U`8Fw1T%CM0BGXcd&nnT+4Q}rq_1&Qu-`kpx*BK;fD4x8G-P#nxS5UF z?tQi@49Ut74yLJ7fz3l3_Z!vK)mNZx{cb`YVR7j&b=i85vutcAR@n16ar2_ABz*ym zQ4(WBzFdz-NOd?^RY7VqTx(|8+rOudQ1>Z*1m#^8CX*u5Ftyas1|xs=#b9#C)tm42 zm<#x;tMC;jF%<#(Lq9*CG+9_7y}!I~KLR_tmG+}i#Blc72mr&P7FbyeTPo1{^_fSy zy;D+zOcfJmd>aOjq#gLsGZ6u9CVsM)Q-x5}p&eDox}i8TdZJYWH8dHlhmtS@r0as& zbeI`&z0r7uRn(Xu)^sOELQ<~JIZ4X)CyFXQ- zUEmu0$GVY)>;2$tfM#AAARs~ts8*Q96O<5NS6#)t*J6yvXE-?2iA_(sSqBM@ zU*mfA89m@uH>|4EP;p1BfO0__H_o>X+n6^LXqz$yv?RhJvDI$cypPtAt$86wk`FPG zC=OA*`u88NwHdjBK~JwEeP8gEv<$0$LK)#yEaBQ)@GF_wVr?%eNIQHDPfUn{AMo&z zVtB-O23d1FsujzZ9hfGnbp|EmTQU?nsaCZJJnKc|<+5a3A3d&Y4BfiZepEGhj1{EP zVR@fCq?J!fLNq!~ayD0dxPZJ;wvcqyX2Ktr91|ovx-3lFC{~9GUoFNKiz90b$NAbs zDTGD3cS4|U7;+XBJP4U1ffDxu^;n$EF~}qQ&@~@Vu-~_eMgBK4;AYU2#fDtet-v<(m65IvNJas zM|*JZ=yU{wO|^qs%A_w z0{QV}7Tv@dWogWWN*9k)b0j)WX6J4BfPpY$zCIaG*4q(Y#3c#+(t~y9V$fKez{zMAph|r~2})Td7t16OqNSFr<(JOn z=qBZEK5e=>XJ?Q+!w)O-O;m(DX2`2#2J_*ld(1j%UBKFX|G}8UJjYASxgRlaY^$(* z>Gf5ZS;TzAkB$ZRUfO2~gbc00Ut!aWqA_K*eF)6jO&%{U-TM5go$Wn~H;q~!R;jCF zd6pX!JGpX{HYPvG);&E_k<6WmZ$=tm)eJY4U@YOGnLiP=7_17m2kj0*+1%=4T-Dno zOYC|bqV(24pe17U?ze^>I2iix$!pI*vvL5QVtP~#Wloc%WcSe&@uF9}qOpaM3o-W# zEINZezHcB170J^yY??uikK42D0x#B{^OgyVX)yU~oygiCQ`XlAOEdZJ&90BGPHi@R zz(y_}pP*r0=3T+Jp``+KgiRk|;JlJPG0Krne)7ND`_K&II=41ovir9H)f?;h*u?Er zxt=prr+*Bp+@OtAyci*@bv_EiEh1VL9e$$Xjow5TRzeG{(MZefe zY+0v#>`?d+j~C$N-Qv+z_v0iuaAxue3dK|Uo1daL0Zxuih002BzP}spE2%#ZPZ_{4 zl5Oe!O~S<_eYGaN2U^)$xx#w%%==&KO;$YnfaAaB`vwjGK>FV`Ul)BVb0htKr_2A; zoMB~s$t^zk?;KtFoM7T(#HQedKP_R%6n~K^d=Ri!y2p(-r)|=#WMt2MZ;9K9(QcC{ z#9kL~rZ!t`cVt*P;kys+T=v&cB^4g0`0)kV6cen>6-VtUs31$L!uQ22&G<;*Q^cUM zhPz&s#F#gAX6*)`k!V74ypZCX+ zce;JG${31~L=J#|$cAHHxHRv~Ue%mZEtXyf-Y-dwR`NN2>uIq-GxL?LH;-%ru>2|6 z@l+go@=b=P$2Y|yG)xwnW|239CzB#Kg$gmcj)yrof@X0}ioJJ-TsYXaZolsjUzq=Z zk?aS`>fI&Z;|Kd&g2+qCyC(-q@B8E)Vhj=&PEaQa+UxJKwfLkMjEqy^|DG0y-MkdY zs`eWT&q+^GL_uMJ-Fte|Qg zX8Hc(=`^%W(&XB@mAa8xOMS@i>rVCj6LOWn86i>#N?d}aH$Z@-h2{DR zlGc>&|Df$#m4X7UU9&&sKf3WS3*h4ggH?sjMM+yxZC zFO4Z?+!W|l0^nXEZJ$mW6C_(iHITfFW}MGYF+KT4c0$lF>~!^HUU2GY%)sBBGPrM_ zk@G2Vc}=ywm{kHHo}?RC4b}^67kNKCY*fYb#YOaaHI>y5d7XMPbmM1+RM|A#H1J*~ z_jmnJ;w|&nbeVsFpfpgWsnfTN^T&)FH?{gyl;vXSCkmCw3v{7YsRwe;#qZd*w=}Gn zFs|P#$i)$ZVbCj*(?nx-8DmSx`Hn(~{q0ylmVuRg-x8#|57oi%0y=k;&UdFggen8} zEsh?KZP#vcz{u{!QgG4_C8K^DT#|WxN`@&su05NNt#C)(7ra93hmH$`FU`&xnE+l? z{hTI8?`nrNmvpv>mT)%)KPs)s!DpAKYfQ_X)EL3q**lCSA654RYfapueh_Nr^nyms zfN@E2AK%wi$XNF*qYi7Ly%uMz>xa3GR5f{Nh&nD{pgQx}tbZstO$x7+zIE3#N0Z2U z{}(>g$sj{&zybiA@c{r3{5Pf3(Am++*7{%7oW|02++=ys?gfg+6Pp&3+K}Yrp1tos zWlNQ!!9ybJ4lNnX7Z)>-M&R;msy2DpwM7Hq_ahWuSFx!uH-yxpdV%@`y$ho1IW%<; zm{D&(UboOj;7yNjRUb&#oBT84KJKPvTm>TGs4Qx_wXihVOK+C5c|NVTlnvu@^c6Qwa39UR(9l=X`XxurjQCV;=LIvSVOCAPbYB=*M1C;6ezBJe8 z?UQ+%B@fNw2xi-bZ&gYOfDE%w^$shKCL+R>KUhuli6)<c30>c^#&O1mv6Q$Nf-zCBY z4Fbx2hzzO3Fmcngv0kF zPGt*8cD96Lj!fxq0ZKTOz%7HkKS?6%Gs-b&b=lkoz6Q?FyeOSH{8%s95vbIDW)*;2 z^UNsRgLoqat^ed-0Um1suTY9$2yzjGUT44StuxKt;tO&!tI01nxgq?wxTOSI-Uc9&jzFg*v=pb4e9!ltRewioKWj zCX4Bv06v%-f>86Y@TK?yc5dZO2!78##ax;;{9yJZp!I5I)>Lw=#7KF1GxU3YhDq=+ z%tMPjuD7F~A6J`;wY+`5ygrH|R9$?a6u)$lY0qN|El+^q3tqWW$%Fmt6Mgv5gQSy6 zO9T@6LKI8DYkd$f1FMy?K{qw&wPkmBnSb|m?wOoXhtWPhny?A+)ZTHtA14Y3ntj=$_n1Y}GUxRbM!4r3X|UV*NQs zp$^NV5Vx^2=mGLyJmb;Pe<@!;53&YEaS=Tt)K(@?Tf-rdr4vFblmB3<%xPIzTIeeR zJ1Cp`%NbyE`ZsvUxp^h7y5hNGtUx}Kc`*zzE!>8YFYhI27jo=1LQ_m=jgck5IPB5x ztX~bpp$M^q*A!=z94wQ#<#A~}N`_@S56A%Trpf6DV@I;9FgNGP#P!T9vJFz@_ii3F z5il!hq@ zKS&TRD)0@YrpKUTCEh--+(Ic}&Aj+L1Hx{Z#A8MDc^TGFBY*2OlZi3(`B*7XN#6Gg z^&CPJhjyKO=P5+FkXv}FyCO%BBCC6NSI`naYgL6mw>S-Noyvyl`8)EpRPNDs4F;0} z8Sx&mGqp8o4r?x*OQioQ%8TvO>F1Bm4s`Sx7EsAdIY-aw88=@U-Vn+U)n ztzunrFcu=p2(4nmQWh|a8joW4`WxwtLy{+733beDofIB!b2$K<)li7U*wVT5hy|e7 z^5c?okH3Hw%Y$9K>q8xb?QTq?B~xo38@tD=cHuSi2R)*xN5jsIraDP?lq0`py|x0^ z7?q{_6_E21cA}$QkS3zzSk?vN7lbr38<&Htec^penQ{?@MgXkcTDrBgo!HlqrC`3c zWTiAqg9#eP)eNuE@~z@a7BmV^L`I-QE{;!Vz`KmJeO}Wi*GbrzXK7G(8Z5y<&>jL7 zm|>R1l4zAmkd+Bx(2mX7N>E0Vx%&JO3=311P1NALpeMe=I=8>EP@Jf3F0{CZ-%23M zn*0WR=z763v{^#VBx%`sAlxq99p}yB;wn1R34q&@Pi-`hY*)>q^9?2MNlr9Rw<3?qL6J^Ea%F7Q?Ul$a&e(rozn9m>RK5->Y)X)Gm}hmFJ*?d1SQ zh7q+X@dbT@b(*BPOswu@llTu*_;0NX(b3$K^8%4ON&V}|&1+vZ z%gedl>F;Ih4(=^K`R-qC6SACQa&>=0DtZPn^Z;*-_CFvvg6fwm$J~%yYc^K_wrE{6 z5J_$h6o0h9s+Q2BBsQ`^@e%m}B9eo`IS5p@T~UCEXbgmX82J*1aKv2km!{d*&0xc8 zv02XF4L`oR2a>rjT261ZbO&ZfCmZ>+!3NoTl>9o@*OI#@A~qWdy-&-!bIu5F>TF5{ zyMwf{a(#6Ln#M#S-S4|e5^(<_w8Pc>0JKGcrp8U9RIc8Ro&%N!q`G?5)}%!0cBOl& z7Iep*AFlL+3UtrG620I|0;Y3_Y?LG+nzS1Nr|CH_>&F&*+g&5lz)+CjbWvS$_PyO7 zy&-Lp&D=C6j-8+;Z47dE*Rk+l%b<<`dbPQA%0bMn;v;KH$R6wnXCKn1tc0%q@m=-( zVF69x{Tsn=zqso39Uph4wbB^SjoT zA_zMm^J>3`LBUnjV-OA5n)WKuXL)v$Z8IZxJlslCPpu!SLa!aEPDMNuJfwcu?L0N1 zuANTC$3LpZW#vYB*(W4iG0-1K*i-_n2oJW3pNFI3A@s#2bL7G8B{mQ<7Mgv3MWI|u zVyM1iZW#1p7T2gb@r|*={)~T2PHX`~V8vg)+}&g8kh4RZicxe4>(QP`FimvAUR>%5ac03^LY_o!sgpO z)WgJ5ILmDG{Dea}1=sauc?f{)s4Y2(3Jd?ICc>hFk6L7-V&$qzH}WQ|G9mzF`f*}m zpnvQRY-bW3Nb#b%b5FmBD+AVj{cma!TY2Zu{B*e}?9XS!-MgMQ_wCZS#wHGf{-pOz$}Hu4mNP6Oh)TqJ9QAvX@aDo za@a_a%qLGBWFbuLs8a24MlUVJ%m)e_7joq2<<5ZKrEX?W>mtCK<3)bZ;SwQrP}yBw ze+?f;V`p=yLZ}bB@tJp$C&`20=fql|4aecf2MRYG3-KRa>pski%v~qjb;>f88A2Te zh~EfCswVFSvg5{)^=dD#nabf$na9#0HcYNq0_?%e?sQ&AAthOl|rd z2e1_fzV0w^%s6z4&bd<*86&e8pgX2Do&JZr^503T)vcu)T$_UN9z-9?LyPT`#cOAY zCyeRGABjVrpZfR>-g>37Gn^S>Y4up&X@zQ8tG8`kue`A%?%5akvT%ADxpYC1Xvx;N z4Hc(R`Q1$ra_IYNK=x?GMYE@9_|2oHQnp3K{qStoia**F6T%ke!|M(VLUo8NtO8Tx zNwTJ9E1A?XoXM*&bW2I~@DmDlTU+a`<>7V1aKz>1fHkz&@CwFUEd|H{YW%jvll_gu zZ1JOp_=9S?>s$RM@3@RDjnCfyWcCkWjoB8cl&%C0t0unjhp^B$BGy{`#kq`W_O&+_ z#xt02T~#VWb#zPcoYZGb|3xEL&L}FB#Lg8Up+tt!-jNcAUBs<(I$G7)wiU4)#-#Op znNG`=*)*1~OpySOD|RT(>@ps-@&;jZ+mf5z^P?lqJ~dx-iDd`SDd1*w7sjaH|K--WF{okK_n#o;{%2N@|2M+a$=K1!@qeBqsE(zF9iW32c9pp= zrlE`D#3v=@=m(WMP$+~KjfvcQQLEkqd49>wvHphrWHw#g|NC6%g$J|QCO9i!Jgzs> z9I+Es41(=2LdE=-c>%3>uhTR}36n&MBz{0dz_;Vat}plu@5*|Qfm8XIe?E^egnxE4Ttn~kb=Kr@~Jh#qnN8tegGXEJ?(*JM4{0EV) zrL%#tgN^aO_x~~gqU&gAY@_dBZu`$yxMsJEEo5ui70vjCzxFw^DX$C>UAU-XTDT_W z69`yDw+g(~Nro;F?Bn_)CSZ2$+bdIS@uA$vSh=l!EfKARVwLN7$IfH>>+bXj&cpk2 zcRJryF+1&(>Qb0`Um4#Rn^{rK)q z`l;Wy!JarSm%@r}XdWhIdV_!dhmB!9a>Qe$?ca&wqZF72W^>H(XQE?ecO!$@UFJ@~_#_;YgE(|F zKUrNsWm6S}5xB+F?vIeuU1}A(r^c->>*T z&!1DYgw4*#zqb#q*V^H)6m%$=wF2^}4rOb0-1o36g^=Vb4^ z+(HWVk-2K_VG1r;7K^z&VS>Jmk{y{XhSI5bwh+qBgm8@(H!sB?A~=q8^LvW|TtJn<`tU+6L@EXSKfWWJs=a zBGkc!szTX!-avVPaAvm&p0n|}9F=-smH5Iz|ENS@VzrMj#wjKV&^B_8G7wCfOmv;e z#4xnG!cP-eV3Cdb`{um#F*pWToRBAZq_e^2=H&CY>d+N-^#$qsZBc2z4_XA!^Lp}Z z=|ytPNxZi8IaV#DM;sR z+W;?evJ?#^Q^6#=C}r$Db0{h?q; z;i=C@Zbf`Q2|*|lmIP2Iz(%&4T-`=m4L(m@jyH$rw{AFPcZq{@5@9=7vqIFjIW4x! z8;NYT0c(=FWv!6IS&$|yw$;+w{p{FwEWAwXtDKIz%%_=1D?;0DPJ3_x_&oQg+72-- z>)q(HaBIpHXRBIK-Q0IXa}FgQv}h7K9RheYGVcM$40Vu|NDF5itTV~5V4sj#*H|Rw zUwm8vC(xWibz)b{TUpm!Vw4TE4Ws2U*nsM(L@}B3%#l}qKx?CTO&>>7QZm(LeI5$x zDRmf~_n2ssDQ*7_p(Xb(X1_<7W9yjn$9Nq&Sb$x?pwd5&KhMH9gU_veEZ}WV>xfxK zlcJ{|yP{W8+P=>hp-<`=0Ko=Eq-;*4G8N@n3odm=&c7KNx{^X!HpOhtUx=;;f{T$y zSvLP-i=VPydgNS^YKoOTcnF&0tRh0B5fBXLG=yP;-8%BWmMSa*GE>4kh5En6Fz!x zP)ru$_|Ui%gIvT|3>E{(h*~6S%X3X+$wg}8?DU{R(7w?LoWrl&6<(|>^l^2Tw`^ZX zV6M3+U8M8f{1x*xocdb)bZc4Lgzz%#T{cIL5)zS;MF=%8mMMcRseFR5q-~Tnz@QWc zu*oKg;*(Pn6KR%3E%1Ucl=uh>AR zs?)z+v`Y|>O7=~>FjyG5 z=M`BV4Sv(vfiKR({f64)1w;>Xm7Z8#lnW4sku5u!d;oniFdcV-Vd$-s#!jnG;Ot1{ z9dQ8OI5B%Cba8@<%3ZRPB!uZA$PCKm#<~N>fN9Z5v|5gKYJi)~i42x}0%L=xc~X~5 z&pk2asF3z8GP`O={z`NeXzDyrztG&IL@{bk>|L)Z)nH`KvFVO>7rd#sh+SkW(XKY$ znAf-Iid6mpUiO5fvgfCtF)EV#9wE+EsbjtEajYqGNLvJ#Vpws&t?LI`UlK&w$vEE0 zfKVx}b>tCL;-NO-K~zXBXK9`~U_5YxR77K_t3;52-H(XH)p$#kpus1{g~kYOUL*76 zhW{AzcG5}2|D-bl=?{h_?hCBFJ!dyhv9P-3DJgZ3XHm2r%}p>McKNbZ#IKg2uXW`_ z-aSUWjgqR?djgn*KB$aat-`Bh6h05&Q2D!hP^!!_tT^L5(~Wv$MdZ2j!-= z*ZkDZU-Zl(lt?qwc9;@T7XC^PJIk=bE)|U9e95h@kP4-^3+)o@m@b1%9*&A{c&hRY zpY1MzX<#79OZDA){}NWm7k~a2*%9^F1PXcc8EiAzUid!XtF2k-9O)cW!+?wSfrw@) z;=Pehfpmb<1GvC^61-2~_&V(!XaU+Y9u8Wek3^$S>0u*8m`B`!Cy{-QyJ>1lo^8Kp zv9@_*WQ9q1QbXv}B^%$detx5{a1BZJYDE0J;vR^`Ual1&^Kz|EvNUVirtf+P-twZG zyY|`R1jKA0@(B^o1g+C<9%PP0HnAX=4X~_zAaJbO`k>j+N&&oVWL(*Dk*vE{-fj?@ z*@+3MjRXcG0C4pHX=WGp(h)6Bm;yV2hHD9rzyFpsA}Wn^*KRUyCl3>zzS~Wl?2#+m zun@O1g8}dXy2byU2caB}x&j^=%a(k0^@wIt7?ZpLDCw?CUZXtoCFf)7F5;<8{%pKI zKcGn`@rRB`(r30v*ErJk(#*U90dae!?%Ig=daYrm%(f<<@DVaylZ>AyBrFm%pG+9X%CNKeKNQbNzGe1;=$YC90fJt7D}c@b?+ zbIjE5fPW@~Ejsaz$jEUY!U05}R{-7J7pNEQBSR>GBlRxp(g9QbS)85@ow5h7^fOT; z7(S9TaXHei91Ac$0_3U^AkTy+IqzRb!wqX=8T@CUeFBpF*y7zLV1pHgSz!O6?Lhz9 zG807;DHPGnn^p!~#H1MYoJ+oGXEJz3rXv5+=Q+pAxoz3oW1m>Q>}l4IDOWmJZldf_ zlH2X9T;cY&d~I#h*lZl`i6h4(1=P!BODT5V$)V=jc5!yN-I3e z^5J&|-fdUaXIE_8)w3r$n=CqC6guUl|HkuRu?*F;8&~G9K=P=fxc`|Tjaya_7w*ap zlZ$cR!xpIKbpTp)d%uAPYsN$qo00BZMufJi$uXQ>^UloOIB|xZfoC|4ea3Q{#kosP z#5HE%(WuTrZnHz(8+tgGU(w`X=#w}xF!W2R&t2aTxs2HyzCpK)K(%mN%OE^F9v)fv z1F2q`?gT0CE6Zqi2W;i8HsTw|xy7n(6hIoUqk2(;0^Z1jJw+uF1NQuthR^AjLgd}( zPFNgO>E8rgYhBb^g>)}7VtFGZwBqp>#t3$ESTbIIDVRYu@g5OaH`Z7yFu%(8+b!OO zO;tv1kQozNJa!^2a@Eq9ONgCqB+!vG(kXebBWihrf5++WYaJbAZ`x(wqAG1|iLTXN zW)oi87)QTS91I~*BTLLn-LmQppM|)NOij|d!)>+Bo%J5bbwJ)VHnoYQ*LKGNqi=$FgDhfHI|Y!6?KBFZSu^Pw#P*IVUC38g(Ok8xf|Ez>0tP5 zQ+inSY1G<#d}{DsY!(C~8oxp(xc@eXdgV16_-_mm)KLzPwbyEb$3 zMg%YSHu4)RTGvA%cmJ2+6|0TeQf)rw=c6<;bGxUry==1>ijpknv`X3*H&ct%-64g` zXZ`sD#a*ll{MF-ePp4Kb_kHuUJ|RJvuw5KU{;Ofv6tLH?EnIQMiFLHdoOYvd$D(!O zw(mm<)_Nhjh|1=e)OJ&-LKnP<&NoF-d7Hw@Pf_>TF(G&9?KQqK^P;U6`>SWmJ)5f(iv89>H|{Rz*HH5T z*Q2MF_xAlq@a^Y4!X`rS_mi%8q?%Txz6*W0i=wkAX?#o=Ul(g?ae5qW_SgH^t@@~a z&*8cBi~aXAR5<81<41e(S4>)$nDE~yS73wg@@H#ev~6;>Zu!^Z1y2XNZ#M9^CGDSI zE=+3g-|kmkJNojUPg>H&n#xVuTGGY}BZgHP;|}GU&DG#y!Vt+L+xYOqBa9<82*)#hzKgG$q{+-nv!AIBSHgy#k3YL8#eWN3@4@iS%c1R=>mK5j_k1`Bg<@Q{(5txA+;W^1PX_nq$>RNG4Z-P%w?64Lk3R(rxZzXD@QUt`6{Q4Ybgp; zqRQ+2t1auL=CI1CvL!-*RHbe$Ybgy&n;Ep*ZR_;KRnaLO(Pkvz_51GkX3TV!JE`+C zS5jF*_JbxMGWfW#`+6PT!>h%^r63lWb`Xkm^1Eo6@pR88 zYQ0tyqXcoSmMvWFsuGCD18YCj;HouItS7C|`d5oN04EovTUE5{;A_4kHn%n|KXvx* z)cJNe@^x2q(nBc5o_6TVcyWdH@QY!6RNOf!SG6`)($_iY2`TJ?^ovkv^n=J0WVS}T zyxZj%VPNV(uL0Ry%yok<%QtYX9#)!&p_Re9=E}b}=LU3|Bvo zbJP}flB!k1!3Uh5#ym=C%w5;l!tu+JS&F0ERNMxyEMjH8AtQ989VRjCCT@`t#c&d# zeZk7yEtb@3y3IZhDTC04{|vm@x@d^H&jq%MaAKW?DgO_kc74D&u7B~NJUrzdokk$( z)G@+P-JOxyK)5s9=%RI2WB2uBxo+LU@T7HCJ=W?TUD6wqPGH7~oe7#pv{J^5Q5%`N z@9AMvTu6U@%PX@pHKh@(YWl0enqmOUUG=0(Ce2);Vj=7KitvW9AY-^iZw{kH?36n9^d{OPoGf5R# z)#{?&);MBn0+lU;3Kwfz6<1PNhT|Iwpz4l(Ob7Qg_g2f-ZJ2%-s{OvQr1^!0b;!=jsGmg$+}tr)d<41@R$tcoQbY83qo4b+bE@8 znz!L^sDqbm2mYAxvu0;Ihel&}?FLiow>{=_uqte_G)dRBNC?bD^I}TOU`7Rk+QB2d zVNyTCyo24VHEr(_`G#?kG{;+*@yr@kz$1&7!PZjTxX4_i_!EAJ`Ovib4{@75%ZN`^ zNYQ1mFDRuaT3ATZMT#>=tfnAVBTFz&P+CiT&avH+mdR#P~bHj&e#;6-vyL#*2yR2<{zqx@CU2Do8S-Zp#xz zdP&aeyf;*PX!R$~{ZrFS+)3iRC-|>0)_gFRBa;g75Z*Bma)MO1*io?k8hgX_N6upr z-VVH+(Ai?gFbETHPXoe%3eo@fV)J<|nX%-Zj*^pCL%Ph6{fTHrqbBdsZh@Q$sODr~{~WV~1>m z&oypH;8>`_0VAh6z=ewuf}0ohm4!a-8uB}UK)#}WNUL4f)n>%W;nqe+A10J8Jz=FQ zXDIxhJ5z9FiAZ9EobMUq{jG*Dj64E@i}Rt~hO9{Sv4kH)4xz09V3iuij2!z!SU5}^ zVJ|Zwb4~ih2z}X2cW}-IQplMAUZ;A;BjcsUT#cbHV_n1&A3vkf6Wq9v8WYf|qa!(F zju=ZRPvXm8@+x(K8WS~w%e7WzO_|bqi?X3zxW6kc<3XN7cr#@N)%l{5OT|8Wu%)=N znd~-(^n5*V|KN!Ml%Pqb&CvY;-avGX1Ob z2ITF2=K{XqG9k#N034_<>Sw>ryy2ZeYYfQ-(I)lClpENGR=m0JM}M%0dxGm$6A@~I zx|hJ>!KpdHbGGfJm)@EH6g>&7{QO@Gyy@;2@$dQfjr+o;U4)=5Es!P=9_Bpq4#=|a zUl}x!0vrLlL6PVq=pE~-7!B11AlLM>YSe0)W1_^;u0O5(EqeI~4$8w|7Pg)lU^)cH zkei;x@yU2H5XuLJtY8~uQgI4o4P!CKITQ(#-{Tdl?ZJ?Jt71<#8SXOo|4wtLfe=a-iBpEh(H5#DO}q6_sGqrCuG8rU_7crq?W2EAk}P0Q)aL5mxP+ z>PSeBIOD_vg}ma?t#>umaIsri?ODXnn% zc@p=Dx9jPjkf0y$kZ<$j_a?Wp!^RXu5Sb|^(dtFJDh0@hI?=JbXXifRr>sQz(NVet zz%=#?{+#f%-?L4^+bN~p!($AJH^gwZ)hR^yTT<$wh~dN3@Aa>(yYp3TG6ij8uoQZ= zWsXn5H15;rAfbn~L7=Jc;x+>x+$!NYuIgYtR}lrnhygMxv1zfY(Rd9At&IUOE2-lO zaUE()-mAPtxrenQh^dhm|;nF&5n4{CH^f=Lm5ap14MOEE7^PWzp?b{*XH^ovaQ?U^6P0Jr| zpmnl9L3YBdPUSSAdY$1|n`gG*UIhBP3O1IA(0%FjtK3f{#BjPQ#p1MZAqskw%J zF%LvFaIb*qa!HElLYrQMPnFl_#46|`5%de(rl*e2v_e@${}iV0>Vy~VoQXL-UIGQp zX|TX_r9l1wnd_NCYmmnMI7!U}+GEK*nq#AnZ=m;8^FjvCU&9C5;US|vdXtRaCT1~zRZRH2+x>CE4IxjRaDIq7Zk|JH zP5)&9?<3gpYYO}TT`t=%exMt0x^+Ois|#@czMUb8&k6C%e_yjj#-5f3+8Vrb69C&G zm2ewwn*AwGC`x}Vvqp~Y;Ki1V;CH7XT3=QBtu-Xe(+!Chf;iDKMT|%q!V=?91TvHn z<*-IyGO~0(_QdDta!64JZ+XrYXp&RsXrq6n9SqZj9g{DFHXtj$x=;hl zwfE`9%QM~Wr$|xg2?v7skfnZ*y&4*%4eieS{IG;--y6mqHypGZL#lj&$@j=saN7K+ z>=bn!r6gMy^3BLAB9qb)gJ~Jwep^s=HCV+xBy;RhQgWyT+%j+Sl5s0kCD{!+9e-~t_r%lDqlUU{!=fD6r) z>k-cVqG*^}51AMA_z=+jjw^$75iQEYgUKn?uUFxz&(f>|DcX4)O|soSF^)RLTjhZ=H3=7*?J1X$K+{w zN+mM@2&= zya!!K`UzJL6-Heh_m27)WJR%T;5p$8UMGd-XdQHh0lz#DLK{bfgabpcZG>Bxn;?1v z=RtbN5gbQ318xi$)iP}@gd~h5BXbD8+*H)5=xV6r03tO$(PAztf~8-lw*>}x!gsnV z<2(s(7mcDcx0vWB2644)j{C;-UDTC^Rf;RE!f9mEC?n%Y*IpY(WksWjDauGT{|9H^ z6s1|WY?-!gRi$m)wq0r4wr$(C?X0wI+eYW>zqil(rJ;wdsF5S^CK#_~xZTI|8hz#vl z?tV(WH4QJs9HW*;^qH>L(j7TdMZVbpk&H}(7hbk(`e!tPH2yHRz~kNPYBy-vGp=mx zXPc?l_~W)6<2g@|w*~iyG{csv~jLNr%?K{(AOZ~gR2RyBeHtp16OzKm`(ru=-H?Vv*f%#hC zuURX{a(43-AN1Ht%bp;Ey!@x8zI7Kt^0yllAJ;$l+41nQF8J9rsE<7nEn%aebAm}E zLpei#gu7m1Ol}?6Aw`zE)rKZdW!6;>h>339IyG&(5nZS@7Cs<(aymGl?}qFbziM8J zGfo(2?sJxm5TUl^AmBAC(^<{>?_+dSe`}%lzb+C%cetj$DLi=DO>OBs^NnUa`(%gD z#WjnfKYVHUxi`@R|&oQ}0PJ7{6 z&7oLUzCC!;!9g3L^p~IG38%&w3$i}!&ak}}tEabCGvyDGGZ6f@{y8hQB z=)(e$t^Qm7_}lb}x5Bq4?UPq^bvi9Y_SO4rk@M-StFx7@OB*73*?(13*MWxZij+G> ztcENiq6Z;ydy&Z7T-TfSn1xf~@qlbWcXxHl@Aa3kt2@-I*ua^s3k*BRTng2y4$p=u z?R^1@_JZ_E2NJ$^kTzR9eBB=$-4WHPByXy2dl4JbCN1|b?#`V1sm3Fh;>8es5xDs) znQC;v^M;lV``RTp=Pq3BN6F%Q3v&E@;G`|Km#O=!gvl7IYO=p>4WDrfgAEOR&LKCN zR+ydaFsxO^qUM22S*F)3mUgZ9Ii_J!@0$)y3glc!A`|0+elgYG>** z6tEPdVCL3hGmAJTOt;`WzB&}z`)4?WC(V~-)^@bC zU5oOxB|vc>gA0Gv<=XMw6;~IuQ1NU8ipY0&0Y`J=Q3kL^4PF}?E#zEoNqf8ERnTUE z`#_ztZt(eBJ$?T*G5*v7dl}S%-eo`A+g5nKCUNR=VDNOR=O|zd|Avfr^`JVc*fZOD zj1>FY|BT`6-x7S*QGZY&%0!U%7?J-8L`}=@q`{|cK_Pta?)xh5SN&^xsMWGNC6|^x zc|~WuHYA@*M<>BS?HW!JGcD3sxvpIkbNenFR#0U_o&-G&;K?+>zS`eml(YYT0C#$DwV@FLHKz32a@nZ!}o?ZSnsTJhnJrM0}JvmM7mV>5? z;}gaab9Mw3b!{;)X9#WLRMDA>^{Uo8S(#o@2w zRcP@CFaLR^G=LE7P~wF}zl++tDI6jc}?S&DTWHw9F6 zf+ZXU$`f8QAb+{CP|j^u6DX1VZOa+R$_hVF=gYijx6i{a$1&Jw$fLLG8);X|JSgUb zKZMw6Xl1aW8IX{E&v_H#YfoTtAjx# z+trt~K`BV!1c{GY(!yT~yI*QGqvpzHgc*DzM(b^J+hT}iN~O9mHjPWKJ3#DWd&o*z z&{BT(1}EfIx$;YW3(oIaXQRgEt1BwMw6v(HmIW8}tN53qEPzUrz$J<3?K6`&8eq+; zB@6o#_Zy*etD6Om{c9oc7_k-c7#OZa@KnbjCK-eggnV*GpW8VQzx|m?eF_RQ$_UjjBqdNJrh5sPitFYG%s?o7@`HsK#Z598|^ z5-&{pKnp#VtzMs~KSD2)M!O4m_X=()m>eIU-c;+(*qX8CUW@k1#y7oK0hwc@t!-!@ zV=1Hl7nr(TU2QV&t2YjMZ8Yuv7{bImtMd}y`zC5*WZTz;$u@DlJ zxn^#UwGW^R1@EnH?l7muSWoAjx)wLxBIDZ*QeiS?jlF?3GX~-_1k(!IkunXCQ|Wg* zR5z_28vSajtlf2V4+!gLx>u~STqYXgWqyj7$r8fhWSt=)U4d5P6rbXp=&9K{*t^utp=8kZgR=N;}g6lPifdE=CFsjG%iGM;A$U*Muvx)N7A~yqfC{6OofVp40W+;Qh-Fz=B(Ef0qCoBSI5amb zoaz}My%2_9c3i)Ey71rwt2V_}n3<#`sE*M~eXSDIwyj+>s#Q@Jas^oQH8Gf*nQ7Z3 zR#(c!_f?wpVq?yj%GuNzAH1vBCW2X<7)D`TVC}x$&3`fk#DoqEdN&Xhwyc^yg0_KH zB?cAE1ulS4*5|rmt0frF)`+O(3B?NtMQHz~?;6uvQg;d%1{;XbD{WL{)m60*0$Vc& z?>yt;P}Sf(1N~Wemcyb@A5i5V(Ij9Bw;i0bIDnJE@SkOyY4E}RFf3DsuF8wmILepc zCv*EH7ay6NZ?n7qy0}3**gQaDF3-Hjd4@Bkt?{M~KOs?lpitQ!JJcuXl)kSeUZKnw zLk%=ICDR_0#>8c#Lx*gO!Ecxk3+Jwq{0BKq!)T)S3 zsErN4F`F=jY9+pG)5@04M+c9nn_z)>*)2N35^sRHc6v~49yxaLS>~68YL$_TAf1Sa zeDvye((o6T$1)K`B(HhYWDY6SANbe|3DqjfnDjmAln{jDcSy0q?=_RTmOxuZZGLic zZS=hDG*yHh0e6E&|FgCiuJh|ERcuCARypWpSY1(;37@~=nsr0;=@VTqcdgCs&xIK>I_Nhp)exG?ta379TqK!Yzk(8u1ghJ+DO3 zvY!251hB^%vCxwG>gT0*HImQmZ9VRvzPf|87Fq-AQ506{r2@viF)WkaaF#w|8Sx>C zuM>sLLB%g71o(R&+*D~kIma!h7v;T*WbF=g6o-QcM37cf?R(-bWl_p&VWQ%v9`>t! zt7>LDGQCg2U^Rv0pk+X$)GVdb+ft-42+M|lk2q!o{MCJOz^O3*HBRlsrpm6!=4SV{ zXKDXtZ}0BR&`cR}JUry&>OL3OdC^-kyh7<+5BE779n)MQdXMFl8KOM&HsXwO_HpC+ zDtHTi9KO{;{z2ORZ&df?X`6t{pAzNrr(F3@RQG@0S7#%8haV}xe|;Kb`K|lu5QLxE zhtOAhfuNlhVW9&l0+slnl%J!y#kD|XnVd}>-Z{d;-2pl?X7As(r}S4ibZy?%s&pH0 z&P%d>uRE}YR%C=0sqY>{+U`&kcR5mVa6CbEG!KD*LV(6|swZ7_a|-gr3SU!0{t;xu z<^5WMQq3Ph@FB{~NtJntkP4&|RiYYOm{KB|^UP3e@GLihWOkEKR*+-=sA#29S$T|u zhOz^LXB=f{UT0lfMzNg-j=Uo6(2t{UFBI9vg>GzlaXxh;&O1D?TU?lpuVvQ;t9SCBi?cj_to)8rHMXCp(Q^h z^aPtD8K#| z8jEzWNfO$p^XvaDwxbH+!Wtv(3I;vsyvvH02$`OFVUvhAssUd{>^#>Lj@mhORz9n4 zO3Sa7&u<+B&7H(a9gR<7tM2;lJGIUDJl&-M*C4@*FX%NjH0qS8;(K0pcDK7&NfM5p%9}kk9Nv8M&|#V}NYBphvc3;J~jk7`o7V zd=T$|p1__q;5G2=EdZ<_%?7#L5%zV1h9^f?l(%IQ`;*s2OHXx`PKyqdkwq$|o{`0) z8rya&%RKcjYDa9av{y6iPd!7-XI72+r$&Z^Y1LM27xQ*jU%4)s$AOEYM;7WKB=RUD z0_SYO&@Y%M1;C1|Mk6K$jrQcRwI==VnGUiL2%3Ua<%0bmsL* z>Y1?1q6`HvhJ(sy=`|0vM0CE~i(bu}5xgJAl_ua#n0 z7PIStUA-A3t9unRKXYbB<-0><4kH$t{O@e1AcXOeo|pS6hu+x-NJ6dR}fd9 zd`xooF?q$KLXkhxGefUUUR?aDfvvQA1$>Q4Ov;mA(hPp)!yp>q^B}iP1ym$2WtLmD5TjXKBN#TwPBAMi*dP2W zZ()s?`;DTl$)#-g<@)&Gv?*{I$)oKN6p>j!4$Pu{HnCR0tk_bOqJX!Y@<*U>_7vx#Z#kk@%Q%5zB}8yyLnze z^}ejksxhzu4LP|zT*C;^ZhG&auwsgy<30;U&!0JQNi$Zu)iHe7Sap4g1yGt>D1kf{ z_%_TvR+t7&lpR>|w4@<4g5dY%@ge z-pH*TtXa=s9ad1W?=C=t{z&^0C=Oo5^o%l7;9OPwSv5#L#VsmV6-BGfQ_}BqH*eM^ zE*tYDr5m1?FUGCd4swtu*dVE!EuD1HcwbdEV2bA}cg$r>qbV}Kpwd&IBaZDIin0-KBK5--15ziD225gRhJ~|tfUfze znTl&O_X0DSWK*6JV$}OrMAD%<46nz<5KXO`)-i`9YFL1QxXBrV-;la8I63>Kn7(=f z4ymuxmA`ilP;JZ5$E%Klg7AW1Yb5xGmhyhcF+g!7e29439*AKqNbLuXMN6rkIB3EFfVkSLlTg^Nq)W&v-& zb(2dMY9mLTelcNwrG;)V!QK)&r;c&~1VBeq!0$c=5|WHX5h)%fXrQ7R0xl&rY7tMQ zc9Fgkyt01gEdtw|REuHuYTtMO_iVttT;D`o#$3$_RCtC#FuTMlarL&iLwKmtDZq2% z69FGS^JRjp6~;e*=tu|r{t$TR#9}K<%*fuwJeIn#o;nrS#f$@!2ibBwL@nV%O{wxZ&iJ6k!Ve?I*(m8W2Kxi9a}3e0&=0d@z)s8vdEfJhJ-n z8T`==^pxz=s0uey;qQK#^cSo`85n#fL&8v19M(GT4<8*z!res-0bm zu;-&fMKaA1) ztDJH8(Lu74C)q)+DJaGaa1;4huxn{iiY$<3T~x5@@F2{yBXMlp-~&7hX~Uc@3hqNL zW+l0!HKREW8l+D(QjLU5?Mn*IAf7r7IM;(DD@8n~^@OUNYNgjxoTLhAPJ3#Zq;B&B z7O21&ftaJgCmFxH!EY?SAY7y1e0}16KoECNH>C>F$_sgXPH{a?gIB_N&UHu6nO{ul zUARN)U)1C*YlD@+Ry>|aiH=Xum)Jqg@sM@n&3}O{bp`vlz>)3b?1R1M@u^ZZ@TmD` z!RT-qL|v`6%ApW{pG(96I!Qb1srY>c(+RXA@cbxHI0KH4qZ=0snx4mO9xlh^z&OuG zZ(@6WwhhzatPqBcd`Zo3I5!i*`R3z?xO<;{0&94C;r2+3IYj*;zS26mv>XG`*vA&L z>)bO>iIDGOxKI|EhV45J-nkze{5~-x>J10fihyUbx@hkw(z&Qkm%xh_h^Lp#{}q16 za%rjH$?|)~A{WlPr2WmC>RG!T6Ug11(yRW>Ee!&HGw`aDm|lWR5kp=F)s<7w0{#TP>2Xmio~QHiP9JWp`Q9q5>HsMo+N<>!Y7Z-v%Eylj+i9@5#q{B0 zhiR~v%r_o`cUuU8HFhw9U2gBY3=prhS{oisNfGulOt!c}>rJ>cu5*&qH9fdC&-r4y z!H8N2QJ{`sO?*08#ZVb)e^%wZcrYDj%?6U*w)}Ke_YCleX8i_uOGcq!dK7e>SQoZy z)Dy%Oe1W&cBCq>Id6484Ruv-9UoL}ZBQ$Lab$|rq<|-g+m}ogw9fq%nwt2p=bwS;o zC!5h8f*^0u?Uq6t4xU?DJT^4*Ez%bXTJ$o0Hk>wRe}cWMHrvcG{I7BKTj4@3#uif- z@8{g}nDgE!&W$>*I*1d;!nM}@*M2z>WadJD#960DDc!91e50aXpaF0VWD;m8S!l6f zE6htd9p^^-+p>wATN(XQ8)AjwQ?Ewi$6KJP6B1e!P0t(9^5GTQ3@6AG+-6E@zgv(M z?QMI-3XIIy$HNnx{WA|8{fV;Dh+#J@2z84T*Jdl7}KviuS(b_W5Ps_x2Xp zC~=vN+BJvmYByi_eM&z5YHL6cmU25_Zv)i16f?_Z;g}}0{Jn-#6d=z{s)NPcG7iyn z3f$qPy!|L1X{=>s7Ht$u`b|AZ`uPkS5?xuwN8mL2>Jzo294ea^!-Sq0tjNny1BeTH zzIV1n+`@*Md+rO{qL-idVRL^YjdkN3GdxQ=nE7aLK-EdnH+a|3b-yX3G_M| zwN#VGuy2qfT~o6CDb}4Q_)v{JL{t-V1o?}h*-E#Ag`QDKx##>ovI@N^!(^#1XKVnF zm_=hOrO#+zy^hf(>~)i7e|cq55q}`g4Go*ZPn<`q4E?>g^(?lfM~&T;IQtu^x;is< z8IQ^Yz8QWXX}(-0`T+j!;r#vtBPevq6bamlYl{6&kbZ#=PUf-EO!rm@y0c13FSMfn zI3ar-Z$DAbI9N?zFUx1tNAJXG3Qpx*?RCXBtIv&!@KiPi3)CKE>qFNFklKm76=GsH z-3I>@pCIO^=9$M3r|I(Y;rULt*M`-_LWtv008 z9?Do3c6}9wf>-%*ygC2v7Dj2j-tKtw@dm4N_fupHy02yB>@(XMB)qEIR&Pt>BV7C1 zoa?GJ>QHC3I%nB-%O%lo@}Ne`C19b3i@}AV)TaON*cjkdjAlbT3xAn|Yti0&W4KF@ z69CP44nt9Ggodsvu?S;SjWU+hy<+J*}y%p|iZ!HaGNm^gx_p8e#^IEBN zZBA%bPk%V>iDcY0%|yj++V6o}-GyrLA@9=!Ca#{4L@#UDmG|I=dwnhIM!UFb9f9L# zd-w&ps%wwdIx)uKD~ZpuiI}jiz{29V=m_pXr{V?3FxS`aYP%=D1K^f!*dfI)Rrvl; zluCtq$M>2~c!CAQ2`mQ)1sK%gwlD7b=N{3V^T;nqACG6xweN4wHQIrh4oA|SH|Tut zO`jE0;N|bSg3SH!+Bz@Nf;y62bzy!Re>_LZW9W{v>JtE4W2VL5K>uuiNzC%9QQ-jqMq~j1 zIRD3kod0Tnb#2`k|J4HHSlDc^+;#knG5}0UZmQQkP=?AbyJtfLL6q^MG&QyADhA+0P}j zTZC#c+Pm2qWE>x)(?1h!i}y~8fBV*<^68#-|ny|hh2q0D9a2`VyAwwVRPwcCGZrd@rxh= zFt}z=p+wNv*AZ9$R${CwN0$b^+gSe#MF9fXr(~5-Cs=szStq(<R~o5n-RiA#`9rLQk^WPelaFrTX%-lWe*YTzk1+6nar5jDAoZaU$g_TqugvU zC-e!@!KGTl?z5Q}2&CNruA_>!3UQuEN#y6sZejgc5LP*l6%I zUbMGoroZLQiGO$xBz{0EAd3Ykt*wB5d#g{ItW|Jg4{=R;j%5mS3We0LBin2cvxZ?+~5)Q@#5hSX;K~ z4V?8_ckzD@@8oLtu0lO;hca3k)x(YrpIq(?lV+ZS%UB zN(Gjc$t%#Kh;}vPn>$Pl?JZQCr-=q9ERBRjldO35nWfcPh#OJ5Cu;M~0uVrmyWMh@ z=%pDLko&^!uWM8Gshl6HD{tK@TRdTE)T$;S;9wB%NbuA5pfrCL$pIWf%Z@}lFUhAPkH41+=^0U=53BG8$5WthGbPvClC{l*Ld3BvT z9gKSwC&6IPXPg!6JaV}r#zRw2QkFKF9Hhd8hVru>L(s7oen+U%(yc$>uBB>gPJN8hA=D5#pbV;83{AuxmY5LW;K zBx*-$Kf~-}eJ&KVCG-OTmrv@KSKRUyI9CjVJi(o8C$LY}&nmI3U1{&e$#xJ8ztIhz((U7>N_Q@9Q zFUXhyw`q&S`TJX1YXNkVX0*-Q7e`Zp&J^mMQQioLH274lg+Mf|p7?f0U^2HDhSob2 zMRI5%-WUm81QqHEs(mhG1;-H554#cQ4wNS&R(&#cD-1g6aQ8zmFkZOn%QbbqoT8Y+ z)A!9z=3P#d3F}7QG9jc%aszN|(9seG@p#6re4YDFLM6c-$0UR#h`v%r+7zsWp1Fj6 zB>jx^f-aIz_X;!j98MT12jn8&8pjLo%%*!@qvRQ`y1n>nZQ^%9RHmrG^N zTSb1lgibtXmEXD7tYA_j8IAWCPdsyaw$53LdU}rna+_OdT$%zLb-qn<+zHpKEOnfF zv-Oz@+l2dSa3|fAa-&D-9cgvp1ICwi6=fug{poL96bLYMSeW?;=Z6{f?wT~qNwET( zps@(Vy%60&e9w=%CY4Gfne4Z|p`iBnv56J$3_|ci)it_^7*dWS&j>DN$@HVLXJCV5 zm~LZ5_oTZe9sw}InGFiWSbv!*StKi5ltTo}`d!;~b4J+Um%0Jp)a=q`1Z>OG3$Mqi zf+KR*jSaMLJtOgToc3W9Tx(a0r)9a;h1car2y-dFNiw(bwt^&4&|O~W41p_?-`uC$ z)=)D%lxo)JbjsST0fP^rhKD~Flv`0+VjNE>W0V|mX`J|LK_4G$Xt3fk9|z8Q54)Za zf1IZPK)c(62x|Mr;ZCZ`!@8Xe{xY~%HYGNx;o$#B8mwzNv7TVaW=6+_q$!_R7EEUu zOK0J3qb*+E2A3l^cz!Q_{N0D?=}wzXpHBQPdk~pmePx{Nn}}uu9?0f5%?WA*c6oC9 z$xGFU*BdhDjO;^vsfK!+K?|%$+8EphZ-SZCgGhl)JQU(-wanMPdI_~13kN0>z$nzY z>jl#JScYAkWa}^=Be+1&cWbyzHqH=?63i}g9dmpJ%b?DMA;7>OrmAS?Yea6q-64p) zg(bdb>(Q8c3M{kjMBg}!3|YPWUo0Z-WbBx^a68+SC#p~{6aCR%YO$m2V5SywK4bVC zyL{t<>caq!P7FymqGF`j;K+Y;d>T1)vPUi%QPCB_FsloBCS8+YlQyW;`P*iy#CVFV zv(lC5rBLYn`yFhyefG*hL=CWSQ$zpITHiP4KNU~Gsm74!dSthLF3-BwTi1r%n*!4r zrWda(jx4O5*}^)ScQG#@Cog^mE7@(TW>wU`M*)lZF?bE;8UU<%Zeeu7`UlEZ`M6qQpm?CSCoHdqP{}F}gSQI+kvAxz3;k^0?8UYL-N~u$F_A(< zjA1_QX=%V^xs;Z<*lhawM#$ZcO%`!aD_f@Ha#?0Fj?&ZjsDMg+9D&>0D-%6jWw{m| z+~5`WgKD;Jo@Eu$u#Z=Df9SdY@)TNrCxz#vNo}Li)P0axR}{ruZT_Ni+=S$n8QUN% z>ds2hO$Ag+kU)&*^3jUBlbU~Z##SZ21W-yBcL*how>D>XXyJ8{;QV+!x^R;yh2njb zNAm{CXXYwpn}!luSS~>!rw3ap8{cZxsNAF<21Yd>hwW(M=shi2vSN#zzbP=JAN7*G zov+5_?0~z1Sx<{JHqDd#ed}^*&QT$qn=_t;A2S5?P*&P4InT_KP>2bWu*O`bMk|;& ze9Y=i$qAFkG7HU&)TCgB6%WTXbBr8*%*-z9AUS^^xn)g6foMl7$j8DPt}(Z>V?dfM zC6Md-_O#AkV}{dLA8&~-DBQe9($c=o#N;t>7Z-5`wx{?diZ&OUs2tVkh+F@DO?^XU zDh;|q7u40$R_Co(Q;GkflLE@KiykPu4EL2&gGeIEbIZ%?lWcw-0vWTNv znZC+n6a@2{w-ZmNoH_v0Is(p1kAY2(+jd=wIm#Y99!JLv zEP-%m9a1^QG){?V-bkkKTfUArj;$kOfTFfTa2oh#AHZ>;LenO(YF4n~DOWl4Vh!=J z40@w9%MN5b`Np)c6DZHF-=Mry{@HOD8g`f7%X#aF6txXagO>WRQn6_QLyA({q*a+Y zSv>wk#0~zLCU&@~L8=;2F^vPJAgopWV=4u5G);UNV(Ifq&baZX;#xeN#qD zf`eAL11gz*@lKx$y;GGJNPlUG+GJghK;7`+4JDyzu4UL{p9&wZ7xnWc#(bYxb;2;b zH?^fafYLSk>Z=efhs`E(vsltqrll1fJ8QYi29W%k^TI2eoSVuU^o(G>Ia8AKhRL}k z-M7R~cjVDq5l!{&(qL@cmRv30bjiON^E~-%{a%EI=TOCdI}_5 z^0*z7Y*{i;|D>QRaL3KfqcD!rNE^ke#j2&YsDCSf^oKh3+Y_4DM2Vo+1r8^P^@;{gzIl_;>V>e8d<^Po?Sb6&$T7w~ z!z7W)*QXJ~jGb>ZrIL93;B&a)sAi2eIqI2K$F-I#HuUx+-eW?tSsjb=ZNMU>%Fr6j z;@Teh)sJ{FXNFvU_QYIRm^LwbT_>p&ZVOqNVMKy#&AOeJcM;*9uqWwQQq+HqTjN^E zpsbW58RT&*Br@rbH+64X zOx%ny(ACu`q0wEre`8i8p88Fbr$+{}Via)fP-oBRI7bN8JFvUYgQ{Q4$DNbDqz&{9 zyr9%a&~v+d;N3atUa71ek-sKx`%GUn!hfrmH%l8ziM-e9W|q@~71aq2A5eLTei`Po zB@*hiG8Qp|O>t^H*;&iw3ty$&mc=j%L}52KPU=^Wh=9~i{OKTcyDU}--1PWb(P1I` z!8Sf(*rclcx!}2VhVL?sJ5^+?yFKZMIaoHF3#F^8-W5o`h6BBX$G-o~dgYGAHv9Ka zpq2eFzqtO}fo5ZC^k43||73o}(OV4AAq2U6hl69r^X<1u2JhsdU_ptuCu|ich zk+EO9Fp3$kaZY0;ZaX-xPBFxW$2eB>N;j@ETyBq!|6{H!i^h zAhV=WeOS2AL4a&bK&<>FQf~0s>-E@?;<%ZuAY6DNDA#!UGI}Y{r2efTwR@>UF2~b?3ofOk5@-Y%RPrF7>(j^jFpdyotLCOZS zaK|*HN;)!)W#o4{;!InNF8YUW5=0%5^uV1SwX3*9*iCt>F*8bKKR{)#QD3gY@&h7c z75g5F+AW(ku>?#@EI)!FXj1%#d;oP8%&UY!ml%-$v?a@V48*n0elO1VBsNh?C%L_X zoi%i^c=a7ufLMIX%+u8YRf4j*_7 z2K5R$0%RMXen1N70w;Fq!A)ko&)LFCG|{4Y@)e&L3^^g|XkA1F{Gb;>xCIzXdm3Ka z8W!A_yMx2x5$1WO6#Hm28tiXFXJ>oocCJ@_H+znV^)rnJD(q1=QRq+l5N2^j75b#& zyud%W>`X-9ng>PLu=RXT7|3t4>2~JKvjJY1SojA0`@No?iFG=dlZGj#dY~U!l&B z!v5!fW^s)`wNZDPlGtCW)cs2N{BY`#II~!Z0;Y(fhj8Z|lvtXq&zdQ{_UH{)=`I3W z(Q9^N#hIq#Bt|K4{r6{9*23=vjx%z7%>yHro!jB2BeA4nRk6eTPUrE2YxLYmxt{2T zX$ix8o$R+^2~{aW#BH(+hCtsEZ7#*6T&)m>AZG^NuXwI-*HENb8H{KFsXl-ofFVbE zn+86{`8S7lSLNTa-WU?TPf|qqw5%mic^!*z0&&+_B6`d|!>tK=ykI3=baE5LV|5C{ z(#FR=JqTM(ZNi^rF)>cIx;NhSfv>N;u3WC$`^*8=Y{YP<`=PRx!qHa(PRVP`9sgH!rq7q6CFPh(!ndYw4ZYF1EM^dp718a9g8L%8 z)}V6}e0sc9&zz%?%}+@dKB}WC@%`&&Ax!qoSRzP(X^0$P9J(=zeVP5pCD4N4hS7}~ z5$^5m6b)^yd$=P;g$|s(}w5=BvDgM}HKY@Sn zP)oKomP?kj8@5%2BIRw>|M{FYYgLOJz?fXP?uf|1A_w1d$IrdQsT)u?K#^Eu>Nk%4;q~yba{BB2s1b{JbJMrL(D5!$F`B8#H+i}erY{w_ zY7^s{cyV;$W1;q)rHz}Dy)C1@Z^HfV!WE8GQ+dHH{r3@_m5M}T$9|_^nL#`Nyp-A%WeFSqI-VuH0}SdB>kW2F$dj$ zr0{ynjUz5>dUgeo z#JMk;$DWJ;t&Hs07;&Z|7!~ky1B-v_QcKijelocG8oM|H)+1|d(A8@|Gl>_UfQn-r zI+E|OQ<6o1=DCGNH^7h+L}MJKYVR@ywoQxsJ47og9g!Q0RnoiPuDd<53DwY7`-DCN z#cB1SM1J`p`(YFTQIi8pr3C{)ymZYfiNd3Jkc&`e8t8#SXm6=e$xIcWw4yw~IOGB5 znDdSQb|F1y)76h=xrLS3Q_zDg!5k0M=H2=^^R~gJgkQ5msQt&&1U9`q*49Qc# zq0bcTn`*3lfnq=xb!9{Pq-f*v)H860gN<#)3@!iBicNvhr-XRVLc^GRyljD3O@apE z0$L($W8nhKIoh_+6?(>qT&}+sCngGHvJeDVkLsZt8zG+waT5Ts45<#mu0C1TfX0Uo z=%jYnP-l>83jjCFL1#C4zR1j%Bw*^J21FkCoTXEPqIX?V#8G{E4kC-4PG~RkBWx81 z7q}LwXba3@A}xL|PyDGgO{DryZGgX!YO0-{S@cvNK(wrn;1M8_Qo1NP^=Eo$6GQBG zW=@XEIm}`Df^%*K8|5tyE*FRUgRS$!{l&>HznWENa`qBoV`-8&kJK%aFydHPXg=h~ zDg)gdMC1yP#gF9_lpIx%fR4Q}#%UTK|F&zvqZEK?tt%fIAV9-dn{V<8z?4qYNTN>A zf%qmU%R>y$!z#+edwKQK#`aP4PAtq{-&xgP3V_VFp`yp{2vP)X26|O z5{-QfEjHcGLUu00+sD0ayW!oZk{okMru!)33~8@$Lb5`&K@gTC^W!pV986>vR31wZ z1C(ZiG7Zo}?Vx%f0Vpy{+t3Ukmx3Mt*Fr2nbExTY$q9QZx|-mbRq}K~7!7MHCu9eK zwqgt|Mh~kgUv74hBQ25IA<}0tdbX`LOCiF!<}lprU}*CU5}xhU}`n9JP|Die~WPjOjIO z;zj@?lV?=lnM=JqpxaTCvzfbxA68io1SY$%&QNgKfYM)Tq;d`#rJW!T4dM#folS-1 zDRlUwF@@tT^&Dv)64R7wW_HsDc^tIvw&h9QGn z-_eIo&EW5K&iCOxkT44#I1}#caSaTB5v)a8cJN!t{f^lc1Y-LSXHFr87 z{zbpPE;B((`^_B7|2Sr}FHAU4zcl z7?r|#sudqc79@}L2;HCTy)`wo5eQ-o+^-{ZD?F2E_x7W~!^Q2g8>;E2#EJ|}Sb}6O zEmLdE$~4V$cBj;h00m0ciss^?-b=9aNv6L#kTPMXNg5yDJ0D#OQo&=WYpaXnWKddF zMIWCX4XB$fqvte>jTSzHwasK}6lCT7*f9oc36YryzEy$g;ikgqBAOF}=Uwo7Zfi3$xB3-qoY}j- zu4ePXg7tk(I^^@`S+yoTB2)%e58wc|)#~xaD_-b+E4@Hg`AWtnZC6Ed>2wL zv3d2Z9ygG%+psTpyBBRPFWlxqO<|k-U__}1=my=+VcJe0fmMn!c!Qwgj>i^21XE!yDi)D6vcj=)lyddt9OU2)aaht)#e|8TNHp*m!L37g0++s6%sp+uI zZ*kSlp`s8P^d?Yl{{zw8Xj9|kyGB*yeJxpAQSZz9LEDy{W#k<>Q~;2-RAe7D0>KtO z4Z|WYE^8b$;Qg=8&I786ZR_Jy>74-5B{YFR0OC%h97w-LhXrA83dy_RQ$*h&%f6tjSlQVnv*_#M`BJ^BrpBIki z&XO<4ff#I8M6S;Oc?Y}qEQCRw`H4KZ*sqE*xe}YHr_}mz^spOO{GkziC_RXuiVGG| z)bvVKVs2tZwCbp2kUVSi*47j5^`?pKg}KZL87 z=mR3lS(*=rZKXx_IW2{zb4Nos7pG(vr&gt`q8=SO;X6xADA?IiQ39 z^+Qn)5@_hv$X7j*-%Q0{RHJBmAM*N(!#rrOedOU49=SCW&G)U(To_pr_r#tO%)$Eo zBzx5_wi!HEs+=^Hs&AYMF!6os1%sF4*-tFFcKUXJG##Y7&cR@WE?R7dN{5z|}9ZBb3CrX2a1;OZ-rL8jpWP8`zUPwt< zPZ6S~tFNY`E$HNoKpFfs(Gcw{r~Hs^A~9s^b{1z5Y>8ql1cmr6z9P@N*@M(Iq2A~c zJJ`%z98`Ns%Ro%Zl&^T>YLq8uD($?!wSkPO`_2xfK;wqx8L#pcmX1^6kOEoB zs_i^xpH~!q7a6Jxvv7g0Os;Zt+N6Vah}}ePbVP#_Z{T=MU?a^RMqB|(_SZMuAtd+D zvCB!OchNGTX)d7vX+V+Q&V?<&nS`%7RD3oP5)uyy4Q|BDHdIoR-F=OmOK{J5B|Y`z ztqpC;{B(v39_%f1kwO%C&O#&&66us4*cRPi+qVg1{(kEM6qc`W5O6hr!*y^Nu9Q?)XT7hoogpk%)#A$}`ChV&RwTfP#I-7Zs`#m5zlWJ< z+8Ze=ly##cE+ne9+^o?#k(< zxIS#O=KfJ;d*>8TySaQ zpA3B9FHCv^H~L(%CbM=Y+>B_UUWlhUUE>Q~B?k*RzwIIZfis>P0F~e;xb4Z2TGBL& zetNO~{l%+FkzI|-2SU?1$*L-b!JZ#zVs$(5iI9bzJve=isr5oS^m~Q(g2{Emss~L? zFKyG!>A-YN1h|HX-+61J=x4%>oB<>0x-7Iop>TwK!F^h^)_U}wAiHvxEv8@lbXM=$DhlmQtw5&?5JKN7 z{^vgZOF{LBSo7nA03k;Yrgf5(;uNSJsjEJMQ&X`N+^SDMzqW`Txh^>%NlXF0GP9gC zD9Q{NNAq^dO6}}&gB7S|fQf8w_o2`DDsZzpW#186jHj;TF+TfOL1fH`dN4x1#iGYp9TUztT+HLAv96G>O%CHGWUXT8$fXU$VpT9n;#@&$(Y* zywCsDj#31HE9C&DO#{+zx0&_tJ?o-==9Uz#W&?5LC*^#zsd&#+(vF#`UsfK0&e_TE%BhH zjUeo1mY58aO`M~+oK9^&?)Cnlrrr#zv++QAearh3&evu*B&Vr`53wR~b;Tz*}b1$;MT9ogNL%3`REexA&#^ zcpImf%9f~KiS(B5$kX|9c;?rh^1Veai4omH7|`qKdJ4kc0cL0AYGo&ga7Snqsu%Hw zbs%{ob=o^LK57bq)CF2Tbxh*?G z3sP@u(R>BrJr=th^u#o#mDN&W@yX~@hJh3di|0 zb&Wzg@(f&-#XZuehQP?*}p4_RNv- zH5-56!~Ql{nl%>c8B8`mq?D5tsaef9TC$*CaXm@ef8^`*2I_^Lcz#fs$YWLY_HWqy zsNOv0Pst8n6k;1B8pc(K*UumdKZKErGVEz)s0*_{{!Tkp-`sAzRuy7yputrH4BZe# z-pM2Z-p-&0Q{}JHjx~6oVtZ~=+}e>w(X;tfOEkNAIVZy%1VjO{qOUmOK+sD3mZ{6_4)PnPh%OA{lOlOG30!P~%SCpGeq*;Y@+}82(vY&c4>g>ny z&@;igVvLuy@KH~EbwbNG%DG-r^}a#UyRrD5uW8!S)xT+WPUvO67c!;7v6ZcA8rSyx zLzBB1^l2KkBvWzSbw=lBh?oijYm-VUt<&3Hyz>L1YcygCb=RL{p{4O6eGcPl@LuIzGA{bX%6hb*b> zAAiUL0$9Ye6jzg3cbs$Q$2FNNk77JLRF>zi4Xu|t*XfcO+#X0ERyWm(@o-}c^v1zUV+;?bWNtn>lvr^a zyPTqAMRC`x({SngyK`A&YiSp83(7@ZE;Wm^2pFa&CgmgOq^|EMxe|ZG6;8NJ>tB~v z0fmom>U0u0#km6H7i@xFs*|sd>qD?3Q@+1l<{M)*?tbWZefUD;xe!mlfo$sn&yB|r zF5#7Ct6WgRmGn9%*t=I6Eui=1BdaqGn|S%)mU6@j1+MADYdCLNEY9GjO#R6KX^E*^?{u1GjMrvdhkn3 z#!LPoWhh69dpjgk6He^>*sTKLugehX7jziD6F`r-TV)=lU>I2g14t&Ej zCg~2Jjo6`A(;pbf27N4s7(VoL6|pn#%PQ*vf(=7DzEMcms(j|WQh2jU*aFIKV|Iml zg>N^3S z9e0MB%nzD6DV2ftqCUIpVH7c*+8o_?EVwthYi9|%Lb}}LKi{b*_nCJ}TL-egEmb#M z65R;5Jft@_lpSW@``l9wJ#<;AFWRrnla5>5MukyqOhjfdYnHr&7L;>)eqnDd=9(-D z)b4}c0o+3A)G#$smZ1i4qx3wai5Ar=m>1>)VBY3u!PufxBHRI?M7p7F@JC?tG)2kv zEst=%himry(yH{`Go?B3(lsj%vZUB2tF8iu)j2#~IqO%G zO1MiYCtmheFsVrMQ|>KRT&gC=q1J6Bkzima%Wgmo(94E9Na(so8nulIFDZQ2LV-0FEk=@rqtW!55^2bSr( zCY#$%t_lP#G^yRjKT;J9!;e`pX%_wJSC{H;^2rMIl7#YeHh(z` z6xLFY7gm_ErlG_%g=^+#-o2TWRRi@SoJf=)=W%{^MsB$Hs3lnK!57<-w`Wx@FV-3{ zgV`!o!Z;ZW4MlaaXCR^Ao%c)Zw1Hi2d9+=Y`2Chg%(C`P!_E0Lb963<_f3HmxVb#l z**V|4H`Ze3&wh8;@48#-Gu}~rc!ykZN=)%yn%kDN*VRXUXDnvT9#rMud`jJRBYg61 z);NP{k)leG1ONc3&I;G9_7r#{O;C?}wA5Li-MXL9yPad7I%5t7j^qnnz}jwq&U8Td z+Cw?XE)hQkU-+Gg?NR~bR2Stm+rfs-0rR<_h~TuyP01ZZhqcY>QEe#67X0~>arEiy#^6SDupTSrHG{gHRe%Ff|8 zG!a3&K`{DvBGj1Hq1*Y-GzW7h^S|Q1F!weYUHixxZQTw!$0YYJ);XZ<{iAiilnVNp zxl;&%usW3aqsuj8{aAlsk^VgBz?VNU|K9$~4f4<6<37~N=F`xDJ~XNS)`yb*0c>Fp zhnwHEbpB0imT1!w8KYAN&0WI6I`_j&^gGhOfa=edTDUkP?BTz`{aktbxPJJL1?jKE z{%72Awd!92t1x%_XY6s7vmXo6pBQcQpW5?p?7x@y#-w9b*gl~ToR)qpb((tHn9`V~ zs!pVdL{GV6e@XwbHy(Ey%yhOVBI+uC7Wp+}91LcA*A@YT{pOfsCTTsv_o$v4kD0O+ zv!O8aQl5w?Yo1!1oft@KI4Jxn@g7P=EU`08otKQej!`50kl z2s=^P)BA5#{uR89xht6SuunvGZ~kv0|351mQwTEz{Y1#d>Aw}i2uR12!i-Bkk*Y=f zw^FC*e*cP6#%EcgFK=|uH6*AC23qZ2VT-~UDI zpPCpW@aX3j{@vr56I0T{PUA-5Y-w*tudi=u zXX&D^Pv_v#qAY7)#DLKANGkT2^~OXVnlqN)n4Y3sC}HIi9yU)zvit0t-bx$BO^ zN0n$+g2x5k|Ki1LzmpF7*VhOHT0+*V{=xK=5C!o_N#juF+H$vbG*u64hCmTYjsP4D zcXL;R@u0R?;JQ9gPTgYQ7U7}nx_!nVh=cZPCuo^m#(G8`1+SVB&&pWv8H1}#b!n~m zDR0w5L3>HyeN)p!NRlj?6cG0LiqJz=b}6~jiCS67oHsRQY|!F#J3inZx6+M=%a_|9 zv>BYVr7ujX^C4`oeF+!Sb!#Y)0HM+aF85Za^>vxsm4_ZP*E;+r2!MjBI>5Q2H`E?O*b0O6KJB98C0oL$w4qKUVeql`(8WjS}PzQSQz-9qp6*q}^T%^>wxJ>XVI{P5v^_Pj>P2i1AP~(fkh7P9x9l{`7Xn zDb=!;l@A?L)?iI>=C1Qmnxhk|Vd7|EXP=k;v*4`d(GcQq67IcMsi=LCTJd>|L$}n> zy!7Y6Y?u$@j`WMjo8JMX*@C-T9*yCnh;zj71s0Y+_N_@=kHYxYV(N^}-f&J-S8C!< zu1n6TfANEXAxpRJA3sX|@q_GtkZ!I}MSzi_JLdT|>T+9l z(rgukof{<(`8^aJfzt3hnnG(RE;Ur-5$TlUKoz9}sWQHI5YiP9((lb`VFUs(fE}SP z6CLwmgz)8uu3DRf%R`K;T_2&<3uec(M;Uw}EHQkGpaw(`sSF#8rMu+Pu&>HI}=0T2>3FKD={D{2dX=OQ%CP$ttZQjp_Xs!`nsYg7)|WTKJ}9bNu1^_&w(7%5Tr69(0i5`gbZJCyF>S?$0mx zI$&anR%&mvF3ZJjJ)CbEo-|2_rh(@+yvnX@FHz3w8PdZW1|ZtJ%j(-7;LYHNg@c;1 z5_(*^7=5nAnh`&&y}U{v5zbtx7wG?n-0E9OhV38ZUcdkVc>f#ZX7*0DhA#h6gm_u| z!T&&=@_|p|n4f}iYT0JlC4;pIXa}LHdnnY(Qj7EWe4B<~V9Or+wz%ng_3A2i=P)Lb zgxIa%Wzw?)VWJAhtjow*IkMJ4N++6>GuXuF5QxLTb%a}KiQ&73suc#+szw-OgJ5PK zCG7#_JZwz_4rnVcGxZdb0)Py;JZwO8_{nEoXtD0Md$?3=W|dE5+>Kp#F2Md{5di;k zn(w)i0zxB;vU>M@2E`N3ez7oUK^~Hv2Nre4`AFZydhk%j0*D{oXbL@5sBsu#vYFTL z<>LMYKj(y}x1H#Wz4=SduFysJ()A2Bzq`oEuRSUkZeueAHkQ=1VJf5kUL2)EOCM{S zcD)8J%zZR}v6nUpu)Hd1IjtjgPIsFEPF(83L|kGWV^!ew^V_WEkqxtp|KAb!5DSBq z{TK1Ce-X#|-y&{dYUA*qcqa&212H0m+|kJ$LwkZT}*qjVcvY|Sq3^duPl zImPIBWY~_*mR5D0wkD5rx}~zQt!$N)EZsTURPe7QVLhCO6u^Jpv6vz@;VP~R9gVRi zarhhKiZ`KHoDGXpNMW@y_rBM3NwQS-?9!3ROUFJnVf4ZJX8@x|k3NuQXN^T@Ust)! zm12YnPFA(Vmp{=yK4u1JU69RE@DE04x*H8W*)2-q+1?X6(xmdFOJFruzoc80;78V* zeEvef+|Z1uqh@l%T>yb(pKw933FYtfEpkbnul<*INDER*i z@f{4E3~inN0nwu_Yrn;T(DSJdvl(PlU4vim4=)xk+=ktz0X_m`D_FlQags{bLXuMR zdFd|UBN|c6)n)18G@ik3k7v#?ZN2_AY=4hcE924H$l<9GiTYQr;?ld<3m zTeG}h&P6)NuQId#(Q3B8UmZ=U(1c3*-B7lijyWA|$1(Yn1@1WVxxfXDe=iWPux?H| ze_H!Z>em7h(`kozDz)A+cP=^|7MuO9wxk2dqq?U`q&c3{QN zPMDU$H?YA;&#BDET^iO#LwSJw|a`W086$kI%VID<+5qx8gCdw#MkSzD+HG4ecd z-q`X<+eUI`1`iwP#IR0+Tnx+MmVT3LF>?%1OmY@*{O(0an*u6v)4AMutHZ@I8alam z+h@?4Qof?YIz?XrYc9jan653sC^~*J6-TbsJJlG(O3H%X!x4vww30+Y*EDavnLGYu z3KQSZ98_9MaF>Yd9lZPi+}b4FINp*jvuqL_D17r+k91`G}q0Cl4q6^h| z67z*ZH}M`*$4zA${=y*m6AmwEUHrr8)}d?gm~dvhA*S3AE$705ZS1Pmj$HPq;15Ca z$eL}kz8PJQ;1=_PA&{S_bJ|!Ts6GAd&6NH48bq)2yl#b)6E5=l3O-*4LfY(49sH(Y==Z?9F5q6Cl1A^6h}V3PL8hn6 zrT1SbwuhT9y`(~a4S#EkOYD;0hs+h$$z+9#<-e;gl!YXJ{*NlAUIig>^iNZ7zyJVn z{})aD=U4vu+kd${q9kkm_n)o(m&->6*fzp-&|VA$VM5AKmR^)26c6iFYN^8#a!r)q zx40fXSs3IjD6JVuEc*6lJ6-+{(WyH9C9Ymd-*f_G&h1Kx)or>4{G8H66xLMbEuoYX zzy;!+BdrIUuTq8g>w^|rBoN%eRqlDQH&C^R@_7#E0vVKJ3E#0y0GinOO&}lfLykYN z;4*f8t24-~cfNoi&vNl&#l+nH?f8(?6{@7P{KLHb3E}41OV$@-fU<8_qH*@dB$9tr z+SVq6VVftTuw%6K81Ew2Q-!3Sdi@P-H}>ZiW7xaxI1Sb}R>_s1Zwu_Uq^-GD;=-cz zjUgtV__*cNSzDYfHnm0_dL@wztQ&$#6ND~HCwMMu{VB7c7>opNgNK3aLhusE>*-e6 z_z>E5eCxqF;HOW_Mb-!FcFFBY#6fY0oWt1QQ5S%&(_$_79r%NsnlyAh%2dY}ZMFKd zyi@#we@mDPT}-gZ zYt+K$HU)<^4*tFmZTh-MY&b`wBX~?#A=k(wT*!AwM>|v8A2xjbN;AprbQjX0zts`V zBD+Ipl+vdeeYE*Dwf{;sQd@S5bVU`_f_#Dhx7ORuiD~iuqlM(Zhx~t|$N%&~wx%wI zCWbDCbXLyxc2y@z06-@d3YY7b z3lFBhc=CxziFt*Ud4Wl5wdnp2YaL-J^Ks=v~@l9-eK8Hma`BwAR}!ifCi(@1a>;G&I1uPO&HR1WZ7$l zmWN(iMxf@`i7?VyTY&fStq)5calRt%{K7yIQnHBu+doUZH1 zsxI#4l)aq%)%c8IhM^Z=MaPgbnX$c{v&;VwC9WZMPyj~cQ{p`g z5k(+jnFR$g5`hazE-;Wz2pb&D>2lm!u79n`U*HSi#_Y=`?vp`ByDclbS#s2IS^Qz7 z^ES`P9kFYRI@Bz95X*2b227tTwMNU0vaxjp_yOU8P9OdzO zO0I#(6PlO0+KVCQE+ASc9TgUOlN|X&@S8Wz_xGJ+lKrw5)l4)N5^StN{;Zl% zcAVjj#JA~Oo^49s#NG>52lee@=JntV?7uS=)S0~}7#aWogYp0J@2<`+_O|~qWmuN> z*d5PZzM$$rRFLtba%`e)U{3?C+0|Xv<^odOrqjqD9nBzAqGxqcEubf9ptKxWkuqb&ns zL<5P8h{j;5$@^7Ho`DP`L_pBy3r=4gR>K3Z)o(=(K3z<;M+(rs5YO!J5xWP0OLNsB!bcyxCrr+3bRuY2M zQtC594Dn1kU`~lK2gk;V#_QV)Adyg*k|{D~S@vRN%&^9IBb619I%7>%3olu}%7cFV zhxw%LusAt)ETNd)#T*&+WSFz0UH8mc$o;_shyH-);kD?RE{6(E#?^HyJfIw;jP$NVlxT8p-*|LRo;#c~WA&};1@v=>1 z{RmyiJc1;m`wc2Zg8+h6mrb#_RUDsol5GQg6Bq)CN}ZZ9U!*O5euMo+^ZkzS8q2Ya z(fI|J2Q^2@flrdj|q0VX|RIYF5>UBLM|ZaG{2|*#%2&I0f4HO z%o9!MSF{4v!|Cm;lH?UQySfU1yUrsf%nu=qT*?DueyG{BGduQJlxjqKOU=^D-7Vf{ zEVjxWPm9EbZuuZxp(D~hC5s?!wHsN*8wGwSz%JY*2kohMikqk=Z5r3jft&ai6zL9G zLkqisBa$C$jM z;2&;Qlc$8MBA^W?sq`=jO(6{%J@edtK}|R&bYk^`Fu{fLR~ba4{0h$cj(2>BRr21M zQYGGhJhYIWk9=~6LWuL{qzbP22_exV8vD4+j`}RWx5BQn7pMGq!~1Cw)p~JUI899C zDQ$FAyb9D^WI)*WLali^mnpHtO63EmUi`TlUKH1GXsyIkE4{J>f1ba*y<$n5t5vJI zy{5#7G}bA}zyC%%v7glQA{?WnCD^WO9Qfe%Z8FyNUgP(n&Ajl7 zWk6?|?k0uasE}=UPHUqu>QtK@9g<5=Q(F^&YGkaH3A4m!I66ma58YX?iUR{PJCuvU zh1v+NMu9uxlX#4fs0?Y4Z3Wv@X6A^%etW$sUWJ^B*D}&XK+;h-k%Tc`)eH?ZDq%f5onb9>&GD8)rBG>Fmv*a+?|19Gg|V`n zo#>tlN_}*LK5cTs`dKdy^EccC)Y<;(HsnKEhjrW6RZFzYZ3|^w;_Pvq9&VEM_7Rl( z2j@fev5f1+H$b)tq}+3e>yfHxl4Hm2_ye9P>wb>d?OSqXGg&n{6*p@3PA{P^j7ayg zwuu~n@|t>|_pif88kRERid+1lEA#<&Q7#Pw#Vb55dcRd%1erc|IKw^>Fg?cCd%@#wh48fr~4w zi3@E-l-~Q%@*P1}>;-D^bKsx_zynM?LaP9FkhGloZM~8v%Qr4$kR2B|1j{(-F_R54 z4Ry^0EvNNqs5}`7;{88nXh)pX>oPa2xnq{Z!CJml%#2Q$Tm@;3ab-XoO;e*T7VBnb z-gI!|hmV$%135lOgQz>8ra=b2#%IULV9oKU-&4hUOA_rjXi}wVQTEum2igOt;VM4z zz^I$3tRs3i29GG0Lagjfh{ipFU<;pjZnSF><(8QM940_)U>;>Hy0(* z?qi?|zf1)I1@U3~}%Q z;e3^imY!}U8TC@|dTu)={PHkecw9B;d96}=&girSzJ_ketd_mKDQgWmF(vH7Gu|AO znzL?9@S3za6@5SdfC})k(|b1|$|}6`{I_A@mZafA*|$`o+tgu5^VkOc+sfnCU))Qz z*Z02q<>|kQ-@D>#F|1-V(faNLK5aTSZ*Aw4oj#RN0g$tcoFzG~3Onb$|HnCkpPDOo@8Q$S zqm6s*f`>YLLC>n*%Os}Kpc$3*JJQIY3v!+JBrR`J^j4ppLwu@43>Egm7!+|ushtro{@0>Ivm&YPq z{iYdDXrgI zP+z8!#&wP+JMl;vs$XvH!P4@BN59DcxQO60RJ97fXD;fYu0DJ?X2GBa51Zk+zC&ma zyMw>)&b0L*ld>-q?wwo840T=0<9VVjqhx#S!R*jI@nE|rYxO(~>}hTa9{oagmDG5y zS20#6KDxNS>e$-OXUL{@e&4s*QBCC|9gQ~Wg*Id17x2IB`!Jwy4;Tml06H810Q>*a zX#bn3y4aaI{l6CUw373AUX)__Hg_ zkSmBj{IK80l|ZH5GUf*y8eGg8JcW&*2)1UaJVKE7XN&BXxS5+Wxhp_P_> z$647Omg+Qyst9|XO3#M5!Wsc~WkfJ0cA;L3dDCQrxl#$6CWE$(&Dtem5e_b|muoVC zsY`j)QFSlQ<9j>xZ_n(jbb)qvN{*{a5=6Ly0}ipx z&uaQpus^3Pmz$e+NSegSY*&~uua60&PEpgCRO4Wy9^xRyS3W9R4+ju$dz={nD=kQ_ z=O>XoX0iJkFGp2(yE8y=mP^!<2P64Hc3=ugk;~gFFtZN+mkxD0dLRQyU3d zfxb_k$+$KiSULlz{CIr2zfQn@hSU}7Lu5vA#w~@nvX(}RTknERE;}jp-f?i=l{%TI(t=8X=O)L*wSj^C?yp~04z8rlL z8ys~V3RcaN1IT`(fY5GdWQp?E1VHNo8j)lpXp&1IIsV^zlpRkl@h-jdgu3!(kIPOP zBqkDA2+feepmh3gvv8WSWQ4qIBw6GaZJD4`=FFFeyig2Pcx>{4BC6pIy(yPIKM+$; z1B*lmf9rI#{&gP{W5y%weP94;*;%Br8F|rlH`Qn79PewFvPfzm z3Q|`7J&dgtGA-L@ILCi^N6 zmwAF79syr66#DSBCI)`+xKh?$dZjSs4Q)nPjc1MXkVI|+`>8>2rLjHJ44;&eXjv56KLLLS`_ zM&!>$^F&1i1l5W{Mw#<(8J=i7Ui)1vGUeip^F@r3_>>*lv!)HAX2~b~i}aND!mDP; z;(f~Oq>d;hCYU26d$##_zBL|s0zX}`IA`{)0r;in!;i@3i1UVMW(?^8$aRgZuuG|Z zV35VbppY%8j?H9oat|19&_q|Gi6cc0TjZy`SucinkY73GS^ljgoTqU# zrK_GTay98-v#qs%wZ!pYk&IoDOdF(Y2%Pd{U=@T37DZQeGMdJjx9B8El14a+Bnm@U_}9MV z9iZe2jrj;ER>}0wp`r?FkPC1g<2LlMeIF=|iplxnh-8d~(XyIkg`LsaPL!*h#2}Xu z#yDT=5S=#mG&HUpz$6w7+OD+Dh3b7avv!mGzMU zQ$@JxY1gD;b4Ut_aSTpH&20pZ63SXGvO3Lk8;hMRkT%%zKPhkBkg;e)I(>Bq8T4Pl z01<-Gy|p~4W5Oqq6j(wz5;Q!#ytTXXy|Z+7rEj$*MNL?+HPnfvC2h=D@B}Ejq(7|* ziu-|N#`-pmt*NUg-Ftibn9iNFEmh@R&n4~N5u)L1V8nV`-WEW&%wF&`JqwiM;N9yc>y5cN>0^LaIf3BzwS+NE zV|Raqgn&BWgeRUh7{F;lA^%KrY_cSQ4Hc|E`_r_8b5Dny+)3Kch_y z$YIutXhb^((B7U3tXMlwf-5(Txd$;TJh-$G)`cEWhuLx5rvWI_!onpi!8DkvM?|eY>RRUxzPR z55)+LGaLhSMe@(UNctq9mnWnLF^J4z%B!1Cg-4@x@wSlm)}RBYEJYY&cub(3Y@P|e zD#2IrtWYwZK|z5Yh@1$388CFR<2KhSWAGdww^lB&(^i30%Bicvjf#IS%0uBIs6{4X zdSXNZ^QV*O;;A2%=Y|TRbzJ;Q#NEwaWqThINcXvMSs@Hv)La?4xIVeEw=<*A0|CEY zK)W6=w*1woUBF$Pj8Yw#Y*PRxS3+G5*TUDH;cUeb^}Nh5%HscsL|5g&JP({-Lj0A?o?eeQ8_;m|52BXxa{B zvJHu9vyyd}6$L|lGGd71vPa!RQunXt!-rn$8>TQEN=|QYnlr-J$9{|OPX+kotG=JN z&+qe`!N(%rGvf_}F^2@NcLiWA7Z9a|Nnbh&v;yO@lA~(>ccUECfn_(X7dSb07TrU`g2>qUF<gXLiH&(x zsuC4AD67bUq(nu^HVDe;<|x~VL3FsONZ74WZCUpJZlr4kTE;80~oJHoqr z;c;JvD*rkLQSo@XvUWX%X|x|D@%A^811M&p1KCi}45RhGDh75i%KY0xS)643jh+4b zy&CCZXelF}+qEuNd^Uj(&j7yb{@0gb9LtJ*s|rYLN`@M?>Bb$2+gP&Z8i!o4acVV& ze>9*7SB43S^+>lZ*6I2^47V9&n>bj?ndSRjxG9vldl8A1y1w4qj`XB1h}J7Mp3i@} z*8k0`Oyvt;MnqRX)dXtoq-`vsojJigc2g_?#l9^j4tS%Wk6{9SoAb`tD)MUTTeV}| zptwiNs{W>)|3Nq#DVi^?s$V4jEkQfywam~H7^*E^BK9LE_kDsVJ4jVEU)*f-4NJDwua`Kwtz;=r24GVF zw5HCT0{G!X_=Q0{jlLPjA(A3!8tvhDNH8!ybv-9Fpv}Dd@};P2i-?^E1tF4$At*V3 zs$Caww_g;&3D~49f@BBM5Pc}okpw($8-(4C)?pYBZ*un=1<$wl?texxwXqoq0@Q$` ztVRP!N9Dv}^ImaKZaa|FKm0C;CJiw_)#|s>EFXw`(S)0L@u7k(>UQ29*Ph@c*pVN> zl_-=-P-P;l>o@VDR@t0-J!_D!IZqIWt}k2r!es&$&~x=}VmEl8$V!&19t_a1*Ba4N z-0_ZQ>`_jsPZeV?o@x@ycTC|ZG1l=1Zg#Gcu+V70s|;k7Y;zeVmj1pcBYrTqQ9~mT zpR5NTHY)t;iY$s<@!_QW@4|#jEMhz%MoPM|bFci;*fw!FAgRmV@_Y@&h8;nNHhqS#}E7G#+V zN)ABHoQoGussFsq2HfGW8EwCyIRwSVC(EY{kKJWBV+!N8e$U!a*xphPY}a3 zm2C#)wU|z>eY$g&j8G$a7N_nwIe!CUzR;e>N7%>fP_5pAsG@Z>;9m=E*A;G?s+$He z6KzEW@kIYrxPFxhtSu%Kfs{J;SiZURu3s9-nh;|M>u3Ok3EvJa=y4xA?fEyfSr= z^7w41_veonX8tzL-kkaz;6Ph$&x@Z#|4TBo?jbsW7C3(%Oh1HFfL{$}FT8l`{?LZFdea z(Fw0?$_v~RMEeUP{#^qREZIQZ&nhhUJf6-EJ;pCF z&P?$2ch&blJ-mw`8zoC5xxBorhMt3!$e-pV>aV=FZ$AdBRBbI7Zr5gmc*52!4t8_e z5`&iSO1LGfMwB2DR^IWLd+4^@jP>Ubl8WBx(tgmn^Y<}}ODyxMa}LzwV18m}{(M2+ z+sN(x2Bap9UX7C`hGfA!z-%V(O&PI=)FLvn7RN`0)V$2@p20+?23E9r z)Q0+lmMGcV%+fCxr1BK#i8F~E>7)W&eNms3s1Q?yC~O*?E$F+axP1nmy3m`E?_kW& zUk$kf#>g|uJy}iU3Aw*U_LBGQUmJO31)Lxlqc&sl8SY%0R1)Ww4f@5v66Jbj^yIUj zOCuD?Z&agOZ_cFCO+0f$jW+546I4S=of>&G{ziFFR|ouq?^W+qmgk&#MAxg_g>97->6G+_3o%(n}}pZye_oWXi<;5g&zLYGOs(OcCC&o5>opgl{4 zS-IvOLXu;G-T6WW1=LzxUb#8RS^1%-p5YDSW|64ck{p*bwReoD6HF_Jl3V%^sz?L9 zcykVJ%PeVqAWC?h$`l65@Uy)5JV{?pMZHj+nO3Ps!BV}cC_BYNX7y0j%$#L6emX85&;^@`1UUe=y$3M-Z0rb|p#kdWJ9sVi> zwFV-{@Z-2OS5)w)ZZ!VyS_jSz7TE-?HF;^NRc0FY4W9@SmSw+Vpbk=ab2v4qL_8GoW; zu6A-T=I_l2SZa|vTx3l=R+`o?vn%Bhh?$6wdj_Ez#WcQ@r|;+<`(wT_IH*pFeMnmh zRh5Fjjd{nf(Qy&}{GUb0s(;47h-L4@uh~5&U0jqr@?uy& zIlLw#e=tAneD^4YMU3|~8RjB*t;gcsnH>-Wr~vMi*=S-~%31O$Xy^jUD}DTclmB5O zyZwuuYlPmefl}^Nw86|Q=Y6ZfX`R%=K!)2Z8CQw2 z;l2b*tXe#2HE9GduadjWDXJ()jKP!D(#U|DdxNrgo;Sx06yagC055gQpF5ptTDJZC zl}lv9BElvM^GIUWfR!VkH&g8ipgnu>%+!8j=Uz zp{99K1-0D#I<8A`Yt2cfvDKBtrqoqREkB=itYFPRFqMOw*y;u)8v~1 ze2v%oGei^^t7Fw{cibpb4XQiP?MV>M7+Il3!{C0uSb326-9;6%*agDX(q8spf_E7g z5bok;{h_owT*BMqtm6tI?b7T@_c$r(!@jw!*sTzOUt!pm^@dW4S5(QIQi$kh81V2( zE4DawSmo3&9?>7E^SOyhfM>KK-FGJoB)=7;qAII#Pg(%)gJeo+$C+X+zW*Xu=aRx@+8U%6P{8*Y$c!ZCW2#mukgkhpCO>(2M`eF}y|xUW(xm-Hz`Y8E zLnXfr9SH9seC(EcbW?4TbCD`Ww8JrI5!9Ub6;r~h&OH?S^n>X(DLN2t5k(=jw5WDd z3)~q^@w-EQtVO7T5spDcUu%>1aPX-kP}nXb7h72N&_36tV3j6(AdA==U8jxcIT|K!J^rGabl4G!|f(8!CD%4G3s!*ZEzl|<^y zWj^D_Khc=8F4x(tkd6<;<@1_zGv?kA+6DhbM_+4bdWl;x!z`>sV^9OtIGcKPt)h)o zT`jrav^pP%gTPfxJITV~rwob}hJ;0&;Gc)M`YPYU86rNs-%k%S*_@tvMNfkH#fE`W>g%i`i!Q zW+M!Gg54;agPkYWZc{a%Gs?EJ@)PV+{wFp8jt?EF2Xvu+Cd*S;$ViXUm~xj0v=2eE z$RV8>@;ELi=ewAotzm0$cEW3p7X->$s>QOf(4~#THPVg?i_u4}%bNoOMEBL(%rZ(7Qz&$m|U%IiDbHa*NzxYH@6U@IZ%8pIh zD~y4UaC^Xb7t|Ro3|X3J&XYs0Z7!1Hc`<<_2{Fxt36RJaMHMi7Wl5L>K3{_06E0Rw z75mjLFE>g4K|deCFE)-MPNY4#sJA?8$gCVzp5&@4u#sWYq2w9M7R9$$svUV~9xstU zV>m^o@iFQ{7#qs?rQ;=u-Lr zH8mHuw{tPH{I{i({C6qP+~R*u8qV;1+y7;2>_b2M?ceIoZFcW^0QYS75^MY88%sa8 z#szy-{7z^N(JWG@YE3GbY-11fd&@2yi9)H^rA2-{)e1r4#F1@38=tHn|9<=S`I3cx zL_)u6+SpwajxRgmft12IXHR88AJtu~nrIHlDW^>2&q0Z4e#{#MjPvD;)DYd2zN|Sd zrL@iD+7L zNsL6EtygBFXwG`aTz1^3*HA5#Zvq-vE+Ip$MoL|Z?R)4E`ps_IOXQ9ja}&s-pIGWX zQHh|JR=v#dWUSjrAeBTgxgX#gEUuQ?@5g*X(^Y1PgwLMzE47rFL*$Pwm|UmE64inA zQzS1Y@zKBbCUSSiR_0Fo5}r>Fl|E(0};N7mpK z*eRtH5;Nv*m>LGpQh~LH3Qk>lgm7;^jz>(!U}Yw^*c~f-G9##(TZYw`Piju+a^ecv zOm-hl!h@2?qTPZOxR-0nsDK$JfCaDSF|B1&7KfTnq~Me~V52#l%YLC7@WNzuWtxnB zMN;E2GIs3Ti3zcK zO4Adtp`LGJn$2cw#C3(@WV>_KYNgwct*kuZ&Y5(7NO6r>;F=QV+CXDDJ*b*^Z2D(T z3MY)YEIJTYjg*0zxU(ma0SKvI(?gIL+=;ajlu$8un`BC>lm3r^Y5@PE9e40Nln@10 zc;FeKyD^k~Vl%reehz@}K$``5QpD<%c0B66npH=EPeuy)LO_o=qEAnp%z6ZDlu^?o#scW;C0Ap)%Ms# z4s)KWaoQepD0I!HO4fHZZUG?l6X>Rr3EUu8u6${zv#AJNo}-NJnBX)v^H45#qjJ56!Klavlu9-n2vdF%0j9(fJ)##I%5^Thsf)J?39!ZNO5E9cK1^T zkP)$0^Q9K+-olx!{-S<%yJ(R!b4G_+oZUinY&5xSaMq-{>z9?V6$)MV5LNmX?6*&y z*M^LfGOe0}M%V&Tc2;7thDbiR=h-8xwM;bA;U<+ECL&lv&P-@2=KHtq+E=P(Hsda* zBYFqxy+`cfV56V<3Ex_3gwjjM3EuJgEffX)+JQErqs75;Dkss#^H}{(H;>$Cqw$AF z)-=TI!4qiZmgVbEP2hj5(DO1D$*_v54?~5`%ea!K%#77)g%H1hk!5wabXZIZCn%BE zSb!LoTU3Gepr^lq70V+x$6xiV+S#$DncvU=r$z9y`?&nD^|JMT9&QefRQPq+>?~zZ zNCwpxwc3YU8A!uL=y)`S2kZeLWqZufdLuKrCKMftP83uORd{E|F*e0(EOl{Rcgh5( zY>{gcv2B6Hdy)azZN2RQ`5*eq>Spzl+R9GteffO7r0QobPZ5j&ZgN2!d#JP+2Z=Hb zy|r=Vz`-Uo<@Ecm<_aK1GgvhdM0B-CCRKeLbiDQdgnfel^760e-Qx4i3BX`tga+8y zG*8Vnh#ghZ!uhpi6VyTekzwn z$baJzev>Y)%RZ>GAPuuolLVi1#t&Rzs@OBRi}v3HHlRFsJuEJGHxc!3hI!e{P}$tB z1;cxIkSpCHtftg!E;A0HSBa6cTqQES`cYBtW;RfRdkLyFQ`8Ulv&vWF6qna2SF1aE zDG2VjR-J@f#O6a3YNo0mbyD7FMsv^K%J1j~@}#vFj5I z)Ck8{iuWE7mgHO(O^;NF=E#e_3R~3}ErSF_RR5QoDoMmloV`3b(>e-JdrxmU*aSe8 zdw_;=Tnq#{SlR&OV{HCcf%&-#3w|$~EBek0?>CDVB9jzp!18fkx=!;I#tJj=S+&CI z_*IsKj=c??_EIu1uy#8*`WgUz0Wl_8dcTe0yMlDak%h$e5*UJ*te)gAy?iaClrE-{ zhmF*5HFBg$Q?Uvc+<-)#JKrYm_olvndC5~GNyfXny&o%qe+;@CPi~>m0JT1L-OtAK zIB$B4b&BF&%Mmu7mzf_%%WaW&4Yotey==3t-WrXnHt`S0eCFtm!4@vzP#(1rUN+dE5b1?z5`3v2}-*1L07+2GjZfeRFPFDy8+Z$t=)tjxI;byEcdJ8z2d zI?ocqz{!n{C>dnnvRuYsy4Jgl?FdJkF^7(|x6EB%_d|Vc)3QEbLH>!e0-w`By#yNs zPN^4iJee=G0{RMs>{@m|)6Aqz$QD=VsOT%K>?HO_d(r4$YCru_s85NCm-$UtTr*X( zI*Bo0LirWJnSG|!nNiKAp8JLEyfY#;xOc?YT*$dszH9z#%5e3AWzXBCfhD|TsaMHq zsot{NZV>*JH3C01#+wAcwl7aF#avS(^fpdAAe1n9Jp%fww{0TJFd=a{r4;L`+2kUB zbXtUlB8MKZtKOhX%zL<3ct?KVUwSFGyn1lw!;u0YRvrc0ySsj=K1@=26O1+nh>;|s zB$-SHFxeV5h6HOkDA;e%LgIcnugKO1o5+Tc*f~1@!()h$4a-ZZY%`5c(Keb+;`(w` zk%r-{CZ+VepfS}2+k9y6U3N${^W;KVJlz-wwsO=y>MhK7aujzPF47LiKM{S3%y!Nr zGtP2eP*~l{%NyS>J87K5#DZ}5+KZ*dob3n&l?%&dWtf!1J8Z$UV4SyOW(56-1Q297 z#!|=s4|DGnU0K(y|Hi4 zb+>vO^XapXXY~FXRJ!eOD6H)I5H3OOCsY>3FE^s72kB4Nf8vX;&lQt25FDrmbZ7XL zG=)+8LUH^QP17De{7S7kK(KVUK<@7sON3rsFnc1-_u0D!b#wtNZH%Shw0K4>kH<_r z{3A}2llFjZW8^!*Zqe$_DCY@Iv766H!sRiD5oiOGP;OF?xK%4ChY`-CR;zRQXuo#S zW3P;iS&m_C8c)*&dC4V?O{5q22oB*?<^3I9o8pYb)G>VW{3*0F7?zhz?}HjUPS{;l z^%`uOYt<24>Lqr8 zC9b+^1a~SZ6Dg_yto@SB{;-b4MMSTOSuXWTsk|Zq?z`PWw|1`oY`BHMfBgvn~(EdlSXzwB?GL8*q*c#b2(cnjOQ@3cq}2;{MITPY~r8Hk*f7}?%5*&^?TMnZDcX6>8!jBQpS zFP*l8xE=FbWB2*{#kvW{SIG;ScbI#}A_kbd)ROaHY4Y{sr9?iDV~V*1XVl|&kbY7} zgR8&JM$E(UEBd!{*>(>FE)y#y{sW$ zO5k71zJrbuA#(hVgL6=mLV`&PQG))1m98{Aix_XivhunMSxsi_ZjysNVE z4Ti(XPW3f`RI+Nybo@aqrk9shmCL!?{PBXB@>^ZzYtO$kct|{$k%8t_Tzi8w`BsG4 zn3l<}#?4xH1vbW9$xYc_X4}KA+eFW0YceS<;xMZrr{A7m_y%`;DQdA^Lt6 zw==hQqqba*Eb>b z@)lBmop>5jxFEFZBjh|;XxsreZ0o=Bjwbm0HOD}31Zxn4=6eTa7PaR}-eKZf!a2~Z zg#=%5a%K%okPTgp&-xQ^xB&HexL6+~1qMz$ds&D*W}Y_Us-oHW<@ECnPsQ@$+VCeEL(J3%)uW9*mfcaquu{!H}c!kZJYG<)QM$-C68>D^d{LAz^s)*L6Ut*z*T;J0poa3)N`j;v)+xt)XXd9TgUn8HF*59 z?Paot?NR(1Pb>q$m8)tA19qxi@Tcy9S9ym3HwG~5r+XP(o?Me}~HH4ZLj>_%*MM|CE%z1bI_g9iodfozX zP#m492AzAikOqAW!afKg6vL5OYlfKg{$S)`e!DaBnnyS)a<>+TwH*mjJ)6~(r8#u; zN-0#kEuLA!ck*mxI%#7T-VX11fzg;#2yeOlF}YUz?5^q6k6x$=e3~sD$q+C&BmCyG zO&a$MNHWD4`PmaDcW4+-m_I6sH!f|=LkkMJvjh!yPBvl5XWq>!2I|gXsh>>i=38!^syPdcsB4{)_Gl^efRk*gA<_%wE}0dY>?Gx0wp_U=tX; zO}V||E||eo#FTI|*zT(p5dn&m;MV$tJMy*;k%l?rzQr@*{_Yb*;&B+|tMS^KPX&D` z$zjADtmbr^NM}!+?MQ$(LXnWg!!WJSKU|w_h!FO$M^vuh&=>STxodV}uo)!;JoZ%E z+BN@fUEVxu##TGjT)*0clT>A)J4J`}_RKSCSR0z=X_Bx_^F6s*Kc3RRN4j6;DbRP2 z6HB4;hK;8LiWZYaaJxS&w*P{LO&NcG%J_HKP;;V>&Oauti$_wI_h^`m);xNx&5{YO{k=5o8hb^Nm|0Sds%I3GALAO);~WpJb6j?Y)$UTyZb zSNn`~)`c3O)*E6PgWMp-N}r=`)+`$m!BYxo4+L!H?X3~c(0v)tOF1W^iyTIX+&rdj zylqxoCz2II`{XRwq_c3%Jm<}_R+}0_O})TBR|;u2uxw-KghIa?grcT@F5)0u)rvE8 zT_1`Pr8V7vOD{>B0goxh9G=~QY>dCr% z1R8{D6!tnj#ytZJ5~5bL!sa;U6e%KPd%19x9I{dW7u_`+>&3CS6V(abOb)}K`v&ye ztyNuTSYe{_aA>+2dmhrZU0GYnoik>u-ckVLW*pL8TEGOS{nKm2b_X*XqX+Xx^6&0W zdve&c0K~Hv-XMyp4b~5sajIWEx>45if=Xpy`I5=8rnMF&Ms?}`IJM|IAo$gq%+`i% z4YbFJVb=&QlG6X>)bf2hwc`b458qDhDUt5G9$5V8f|>Gw<|*vAQ~UAh3I+F%Q`@)6 z2eZaqZ7-vR>)N%cIwuz~Fj-8IhHBZkvl{vK(`%vu1I%EON$H#U0%vR@?wd)mKzB~V z-NxI!u?qF*G3MU=wrcGkaAknLR+ar+y1eP=-7)R08uR5?RsIZnt+;u3Ru#DT(SwhA zG8Kr%sh3ifd=l(;M*z29I`r>?=xZ`DgJLk$l9Bj+I*{` zN$EeZT;D?!{D>!Hz)F7p2m|c~VIXh{2J4y%WNUNekszXwm)r6Y#_Uz|O_&OJu#rEn zZ|8i}9X@`Ux3vb+4NKT|W)jEe#DU!5J$7w_sDD*`=JAjcH$c#cZsuFE;1`*|j z@M)OD^7dan9cxtYK<>H3i34Lqr;a}0M12FB0E0V_GN0M@o3o84epfdWq5}&7KN)x0 zc`AFSS}w`A6KdK1b#DL|1e)}A^HUm@fGt(qeZ9j zn+{|6JaI>_0qg*(jRvH`##xsEBX(wa*-m=S2vmExvPtSB11@#?D9jzxM43&37e|Fo znLu?GZz)z3I$u7}N3Z=xHG8iN;KI$#@yY`#$PDN@*OPdxGqqK8rAMp)buwJI5jcqC zj^WB17jAPfl8ud&6?Kku0%Ya08CNKtxNa&~=&U2msX>YASSZ6SVWma(h#c=o!P{vb zOK;(nmpgt|`8{UevADx6>mM1G<)9fyON~wPgE9r5qlQ~5KI;4h)lP@I-&&%NVbn;6 zyTkZbvmTa3S1#~-;f20m0_Oky3-I5FeN{1n&>&2(qR)Zue;ILfSGdDz`ZQ0$3#T~Z z))D~`TU%}rynQCm1PuIz19oGYHC(u)eu?%4hWjlis}-nNl}=On>c*1rZMnO%M9&z@O-N44)d#Myr&NF_ z9v!*!q*1j4_V|>OZTkWL#%eylOZiyfLjbqlDmJ%w0}DEhWtke%-pJnf^+|bu)uIQ#8hEA6D-`V9-RoXs7 z0I~Z`{r3SVVVdfi-XDo%ts+abrnvG!UQwie#+@ibj7xe+9h$GMhE9;bbNK1nt(b1z zX)oQLl_fhpdn{@FZM19=B{ZOR2YqNUi3`k3F4fRwLIXtxH=Gl>AeIWHio6DsqtB2r z3KqZfP?@M1X@V;zM7<|>AnM*2G zK$TkTi*|-{*%Bo4P2hL0m53slr!VrNmuGi2aEx%M=`mdRf~*(nRgiuv*VF!_rWFdY z5_63xi~yyok77@gLC0W^+?hCJoune65o$2nRa)0?`RGp3X*D)RB;^?(yfNEhJn~>u zOAOH(cvkkkH7T`Isp2aD=DoH7dGI-_bL@JxV6ayY=7b3859Xi3LnhF;?R!;$Tp@Qp z17aetwRT}OlT29TD<4Bnl?@=>8e4}luCJ9?5lKVhxt^jk)lX@;zgj|psTv# zK-P~ASJMO=`z@-DTR`WUu&o`>fpe2eJ-N3o2yl_;H zrDC{ThO}13YT*m+SS!qOI`s5QZYs23cCd}A2TaA>Yr7;ud@cgun|ij&d@r9Z*8rmN z_eF_suZ){>2D}2`s_7tGaD-GVl&_&5?H##HG7$;Fhi zy`l~^r&3;di4w0RUTu}(L(7cwD-AR|5YBJ%tfW3{7R2(@E0?7~?ut4I7j`Y>;6+VpPm$utB<=(X+d$&34 zwI8=z%85HW)cpPp{L>dKmdN#;{@}i~NB2J@5V!BaM|&qz6MbhB>wis!v4Yn90^j_< z7c@}(dYH|8BRc1cHgiCxqK2>7Pk>us1Ag*HBmYbqt^jwvSz9-PSmt9R2NO0 zAa?N7*(IrYtuPP&fp~B0$!Ti00t{oEfGDnnn+v$OM~kr)^RGv#U~IflY9b52&Qgxe zX@gZ5+qnq~AN;66;f_wlYB7W=u0S>4LTe-Z{O6U@AR>rEslRN7UA%!sy-cbXrI4Ao zzylu9Ggsd4g+^9HG=R48g%1xKM%&ho-e|9-)C3gr41F#q>)Ej+7vdKV08m(&wL{+i zhTn_iH_$T@1pOv%i@5~BVcwanD5vBSVf54J^10;F?(sD~_-_w?UBBk%zkP?u$uT$Z zz89be@_%j!`L{**ChVA5n!7p~{uec@O69wp`X&IL(?Cr3AsaC9qDF?)>Jd7u5wEb} z3|iJu(?yxGAydIpwb;%1UB^b)jOp6UYv-(_5P2%VY7)ljYm>xHu=FEW?_SiD5 zj5k6mElvySklu))nN+TF@s%vax{O-@tGmJxje_Kft{GGPy|Px#ZPpMfktTKE4rXUZ z7^w4S-E-XM<5b`pY&79B*!BPISj##n;Yu)s)M@XvbV58zgG9YBs+4Nsj4Ap18m09t zvrYW`wO8FYm#D_BDWP2mCW=RZsKZ|mlUTm1FKdHFn9vo90Ij4&u=KkowVl=Q;4sAs zy^&z}X@A>df^9*ozA!d}$D}_%=I(IFPE*iQe)bA4;#;{wqPYbhaILpdWB=I|m0wy~ z)KtrchxS=aqAU-j)+BUEE`IwAkVFTrS+!x~eBym2a%=Up#&vor1RW!@B^!glvksl^ z7{sFdVfsTcxuehX97NFROs&2|AX^SJ+a-FT*x5o96~5m8)KKb3rM?-fQVwT!^lO5U z!-Yu#W>Cy}+v5}G4xKlXyOBe50$bVax`x~riz(RJfNiVSFUm;d@09880{*>{X9^bA z`^Qh(bvGRCSS#N}CsnhXUhJUEF^bkU^!Krp(ZCBV{jRPyxwq9DXM;BS_CQQgvYpj= zsjq!=jWNpYYZJybkz$e+iAYaz*I{89?`$~_?=LS0@$E?Dme^w{nv`S5nmbF)%9cn+ zO^oBrNRqz0B@2^%JYWwXaduxQ9}zYp!ZMG{?XmU&43W^i)y*B&)EK*&yiY*t~Q)TV0i&xOEe!#tQmCZ8o5I^fv zMnCX90o3p*Eld-A(x9D7)>}~#e{y*Z=|4-uZchS+Ms%t;bi0XS?)4GPA zEK$bl0W1nzb~X#J^#|;57Eaq*C$Gd^y3mAwO*d^8$u0XzqWlcsJJ|4^{EQbbkwZOMWZmcQV~CBJ_{aScO^_j)|-zq{ZLx8v*% zTeVLT3N{-!bZYMN#&jf!-EJiaZb2|tg=$*Xp15Rn0H2yszqht`a^K{kqfO^g2BS7p z#^*XUz%Jd>%2_v0q&ilMgG{zynRdUehk7=J!-6=QJ83)2@-fRY1~(Xf$;Z}(QgBq|#r9WhA?sL+3P zPpzm&8-i})W;l31xxCe;{^+>9&2X%6B)d7X2xoYeo<3~pxrq;$bQvk`U!m@%biWJ@ zjftKRKgY@Xc-tIeQ-3EsT($FA^}XeG6jeWhdPnHLR3Pp5b-q$9`*&W06E2Iy)we<~ zzYCQAX?OFlN_8`J`UeyLEyk)?L8}2qMA2uyA&M>1$Z!GnO%o&`r~q={5*G$(W9^~2 z)VR#0mKvM+Sx}J?U4gO2g)$9&IolOziDQF7wU{H0Y%Oc~s zxjOZgCOUFT0m|5ov2vH^O{}{BS}%J^M4bN9zqc)Ft;oEge^GYd2VMI0O^Aaz^Nl2n z-HMUpj@C2N50!bPOUIPU;{(Tc^@mLB`m1Af6vA0NQU#OiHoND#i~Te34P5wF;Ua&} zk+HsBY2Ewse~gkn4%H)dw|wj<7OorcjPqr4O|M3X;2{x!qx zGo3{dwCe3-m?=?6~fl50^tYV^c+aYdWh6k6UTlUTm*pVI6o%f zejiMGl?Hhji=sEkMt3P|wAAziQJj6qsE$yAF6N-ebxw-PQ>9Nj9gNRC7WltQ6sW+V} zn0uIj`aOtfr>wl+&Rho}C#<;FL`c;HE*j*6N-yl{jk{ixr%Mnf~t=4_3Zpx6Y9L8i17XciyHU!+!XLs=c{z{Agx%!2*iWh z;9Q&-NsRj(jO~0$=Md|*w!wH2AyaW_dHw|Vt?)@CPR=>9`PQxflG3NQPQiv2XwWm= zr((0&wmA#YYXjTpg*o|QFIOw&B#lkn5{qm+plAgUBK`L;;CSHCg%9Qlbb^utvZBNs zKI71bjnSo|I0(VgVPUR1j@P|sZ-9o_!yASOGbZcV0v)_l${SK#2%h4rwQHb4!n;{6 zKI@Uvm0N_O#p8F0cVi6xS*=_P?CSnc2e?&&i;j1KH7@Xr&XsP6K0=pmHvdu9EB1)ashba$plx`W8PZaG4#O%{0~k|*ljaYP9zNKR$>UyBf&qwB`1EP zJ^R_dnB5*HFpTbveS#Wcm^Rg{ek3Q%KXA4gS?aPKh7R1fQ=bPn)N91w^HAg~3R|ts zz6O{{pS(pBHCkARtq~Wn?rKX_)7wApleOh7yzg9d7=~CVFCOw+j7#b!XWEQoQy$i% zHTrLJbDoW11a|$7_tsJ{0EcK_*QU+x_LQ5}*6YrLOM&Z2hMT}{>sTQl;()m0ZQy3l+!D-%)V+?6cu(rYh~akuOz0*x6iS@J$$P9nP-Z-f zun}S%LQP~8;qJVF9eJh%>BXnV*N;9IQdh7opNa0mz*HPZJFWOCF3lcXCZh)`2*W%; z$NPtVuIAeu0MR_fF68o04YvccokVOvS79FwDl1vpV&J%KQ#)grjJmD@U@^%MB;gO{ zJnq;)g&M3m?`-7Eyqa0vObW-LSLxyRFY&5i#x3`mJB85z((0@a=;0G_<%M!?U<)J5_4{09xnxsn2jGAM z8}THNY6}l@6fZ6)#MF~q~W zT2HG{Lz({by=41+iKtY>24yY=V#NU!<%Grrk0>`dX%0@aMzim)m+#uF4+}-l=cBxR z!fUtUEIDBbcqZ>7l7n3Bzp!O&b;t;p^t-I{I`P|v#zBETJ?gc zk-emwI(ah6|Cj*80=#!@#0{ba@WWYn!&F9{L;-duf^a(NpM z(2?yuroYGB(#dseQ!aZUi2VIKGY*J;3e2K9AMPn-j=S$o%OW4?P=NwBkb-jFda@#7 za};X7{am3AK()bDPz8*H;RGTLnBMmEburnvc;w)+Q^Hyvz@S?cvK+iP>DbfRS3KcEYyU^MiaossC zOL^(I{zut958agmOj!luR^Ug8YbrOw`mn~zt1{Xju6f{uOZqK*WY7O-#ZuzbV=QpC>E= z`?c$ufHDBki;cJ(6V@2}D&bdb8e)O(u?hKs3+ZWypIK}9$p6YvJHd!;R8CJ{_3^E9 zZxm(yV!f3S7|d5Q{+?Mb(pymVa!W~ZH}3#@rZq?C(fvGv^|~B4ic_%xChR{aJ)Ck% z@g?HaI6=awMW>JF(Qj?Ufyu?qM)0S?n(v;S$JT!s29;46v_LE`XcZsHu{#)rFcuq# zv!eS+fMoo7Nw>SciA|#2;Y@K$;;)_YpfVXPl1dq#H{0;lpI+Vqwjy+c5qRG2)54xw z_;q4%`aXqL{JeentNC(9;{hv@&v@<&44reD7f6Df+6Qud3!-J-V^|T0kOOtYUT^DlIl4<`2Y{V#QiV zCad;YA=`VJXSuwVUiJD}w;XdX8^q5#2zSfiB%dUT=TDT^R%=1BMBh7y^yArCmgV5^gW|0x z>34f!rcSAJw-|0OuzF44fnj_N9xgK#vgvaYLPXG;%9^94W70!Jw>_)u7ZVTAn$RBd`>z~Pb`b2#2tQ01surwLzV(8JW2fkVj5 z?y@*6x{58|ccIAmjiDKEe(lB<78Fy7f6YbE52mGQfMSN?YxLem^hG2b9H8cNICQo>_X# z9~3iUVDtCpEll*i2b9-!+^LKZ12J9)R3LIs8_=^5&$JIav1ipZOKo%gIhMdyqpK_a z#RoSA2Bbk0aVHQ1Y8@QJOOp6aV9br4K6t6+#E8aFqKaAEgg+wlaCmlJQ;%Saw*Sp~ zwSHEJpUfH6be;J1)j+hQjbAb-!T;ugV@U>S>0S+3V5#t))xeXogT2OY6$XGI(c2~$ z&s~Pg>=C&KJCQmyj`S*QVhuw1khoaW_!Ag;q;`byvGdv*O=6zXZ?CSQBH;4Fg}Nho z$?fB8F6DpWx4tn7^bnZKVx4L|r?VBJz>1!*&@5mjRzqtWfh^U~A@l#O8@Iv408LQ0 zwOeI05HVAGkHWxUo)U#C^w9-4) z4P*XkSRd&s2;vBK9}Xv=8(SNsg-?eu7q~ef0~<}bGr}*U7>jCwADXWxD~eb{j(A}_ zLwE|L0uJdoJ6v!=tf(OdE$GAK+KZf?3P*ffuL+60H}#!+*v@b{{;magZf$f}^j2iu zeB5?G!yJBq`n~`X$<-}w*mXZ0m40rX)U1RSzX6t6Q@A(6eB@r>O5P*fAhoeJVCLv& zV6l5$vQs7!CR2mAG{o$cnC+ER|1eM+`9vHla~&;+KKOZao*SzDjb0|AVq#ZLcYP67 z6!?+u19ULy1xYA(#;kywUROMx&;{a5*gn+Zkfu$rmMU`?u&R{P?x%v$>Oh(SU&Ows zN|KZrv%%hvy)66ZNasmE&U|Uze6TIZbX%B%)@8f z304N*3-Zjr+)#Z*k6j)`5G2o9Mr$ovAJ5NON;E<4R}X4yWF>=TcLG_1sjqD^6M;bo zJMl`NTw&$Iq8X%83nEdKaac@yOd;VKSD28U`Hb|UHn6dPX1^v>m9>D4@*=% zcl#lGnob+|3Zb%$RMSP=)zYE&dENa4H)?4I*z>(-Tz8f~JpuAmmCxxt2bU}LP3b4Lo)uxu_$ zII!fa*~5m^)=e-QKd#sC+`fe1`vv~|T6P(6RJiBX3~2Upot0rIvX;NhxO#phlEmV~ zTv5ysTvDxke{s+3nrEzXTF!3U#Wzbth+Q?C&)qh8G-fr7-~zUp8OZ>6Mj#sf+dri3 z4rRpqNNn5PRBe_>W7SVYXZ}Oa&t>A`N#SA1MsuH+6ql{b_tg^JP4XGn>p=oL_x)@N5ML63MGz zn$JlBBP_n*SK#bHRx&fMeTs=0CJ@7bFQLhw25668@p3bo_=Y%ZPP#F(miiNXzd4xN zYs%F7E24Eam<=_|m7s}&IaHalsWirgre)|=gJ*w{(Wr9vIOx7cv-*qu&cMqmXL2FV z#y^M5v#II9AqY>Y5f*dD{j=tkW#z!DMl$w>WX;^*iR{h1pcA>*i+-2@H?E)(k&Lp8 zR@9#h9oaA5T*h|~nU=V{IhGaSPB4)RyIDql*l7SHV`}hg0Pwv+d=AFkmSX>sfwe&{>jyjSy z#t*qxp=c$ei;5TnzT_HHl%~~qV5s#>zng^u(|G&%mD+xLN=O*T-D}bnAuH=yo)6CT zwm~!Q-blW><;pN^B5nF03C(<{A#ZB3geOSRqGrDijvZMiFG-s0H5Q+3T*L0;&7Agi;^ zvj#)cXk6Xc-@$D{#wSi{dkUX%t8yP)C5)_S`f_kyHc#p829u(-W1tu==*OpDzLwboZ7Gw51h_SjW?Nod#-!Mfup0Ut&_r<-!Ou5#yrL;e$dd*JQKWy!OmGZehY znhSnBZ5!LIzkbxI=l&>3!|ao|9)(imP`er`PfWLt)*J-PaWekNRsXT^!RNFSZa)|{ zqx_B--`VpFk}zMsbSSHRQlFB6zBUWHZn1&ji_bZDNrLyfMtr#W3gZiCM^k72n9-z( z(|Isty%RisLgISpVLG=p{(O7R3an*bDytcmWU*Q2vI~JXqZ5Ai)111g?;6fjIDdtHjI83Ozm>T6?bky4*)5hVSMfq z{L0pfxlR(Ca=r?-aS@~T0<%%;8(Pb15__d}u;u=+g%<}MNnTWJu4N0jDAL3$#pT#& z1ZMOYKP5cqT<;wzaB_J>#=l|&-~wczQ4LVwNCsZhceyVOA0 zRF1IOJ<69c;I7ihw`C+|WjrxXZh%QELnW$Bi(Jm>fm7;w9dpZWfcVO+q=TIc3*$Av zhhI%SYJm*xsGgWn)uHlpHS~(+Y)6Z!_+4I=Gm}h*X$VNpv%VrzKKs<#@8F?hJ@R-L zI5zO@dK#=-%qexF1Hm`-I%dVl@#O>o@SvFpm5%te7tLE+@wT}CfMjSKzHGRuVNhg7WRYlUw- zp=$jjb6q#+>xY8E-V#4mq5TuW3~6;3VOgCdI4f!{fTw39c*x8%OJ~=}1ygTU7Y(5q zm>3>E=|Lf7izZ!-54xTLkn1#I7_PFfv z+mAFqAY0>t(&nys(IYuefT}uwg=j<@Plk$|_QzJc4_%h$(H2@~Cq5J%U}>gd)?;bgy?8yFMrT;1JH8VB z87qSdU0go#wO3~1swwrPu;fp*tN;YOt-X0Z#val6yFpyffe@UlecPKfyW4w=-mTte z1g8wRXW8F0YC+d7elL#QCgVag{Q~vr+b+C#&9;xHP+X#=Vt&%=y}9C?knSbHM~$M& zM}f;NYdin>;+f`mr;wuEZ0ld-1f_!}N&i_qJUxh>%CO3+5QoC}Npy%72tYq-N?eRV zTh4!V)&=GNPrJ}9Eu}*SEsI))L7f8j)BAQ$RJ);3l;UiJE3O{>nR{$`z0m0RqJa8y zVUM;&l|G*Mu!T9Uqc~`Fkp-@onI0vMU3#-m9~tx57v4$IYI>Y_yP>?&tqqNVS>IBF zm!cmjMpP4Y^bL*yH9r)?0*w|J>f;&Svw&OUS4knnizf3DTx_5Eg`DIfQi+tNWsxpV z_(+zbdr0VJqAZEO!c*dbKYkL$wyD2`TY-1>)aqok+TO@|y~MhGl&PDlfV}54OYmQK zOyC|smO$}_I**VQi8X|g%8yTqm-XtSiOYR8dcW1p`}Uo9_QV~!h+Ivjxf^bQYVY!R zu2p8l9G&yf^Fk1b?5Y(SphTmI4jY5(1hFPV2#tHwB8%v~aaj7Ec{=;_1EgV>DnG`e zNy@=&e3C3q+}@NQSFY1J9^FRvHv}|_$}JaY1xPXVz^GGx_eP)$dWDiJcy18dp&EGqG<5x$v=JY%zgJNwmJxAM-`6`;u*F_#$8;hkJXqN9ko zd}@8M=EW!>kJKBrVj95zY;OT}Pd`6>X2uE)9`Z}mq#~AecP#4GX8rwVyUwME zTJ{Q7(wyyW+$tox7!#)(!x>4XRVqPub7BdXPME@v$+Yet)KTGtT7R9UIm+eGHyVQw0-zbHa*Sm$hz@&u6 zD=i;3%<$TuS#W~m$rQLQk->Cn2u(utP<8oT^&E_*saesaUDiqR>79rAHs}u2img@W z4nanLaYhj!=rW{yOQeG{wsQJK`;-O+KI{>qed#e{$J zlGq87Q4ykrq}ejMZYnGP&Ox>@ZWCVQ9kG%@P&wE~E^4HS=xeHMly!>qC)bjLem>kR zFb^z(lhNEgSFb-*8YXClZ^UWMFtb*3~uTy%sgVfgRHAs^*{0ZV*DR)QlT*< zvl%F_hVK=Fk3e~n;H~sm4Wni}_mRk#& zmpHawqqL*t?>6zT%J4VN-c*h^Q7nm5LWO4SLd0nny!EFUHWv=Vx}4>n#Lsi+w{(s7 zz6P>2$-d4KySa*Lx8o_ak;(8O`Bv!M|3x*ALX6OH^1|CqS}tDx6yH;!3-m3EPRx z-(mfv(27fSh3Bo}f)6oRCuT$-K(*fYf zA(QNmg3M8HYgW528fTg8Ac3z8VNVt*YTfB(^XzGrQ<5!vALToOE~tPYQ!x^ds}8H? z8AIT~s~eg?klfUWnecfEe{83i%3=6$%42s!G$DawN4|CrFvw=$Skr|13&^q_71!>E z6g?y|5TvxGz)hRL8^Ze`zw=ghnznGxr|55tJX zW!#Qh*sEQoV~5WYjfA(oqC{45)%zuMxG4xCnbE}JOY42g23@W=g&*IUC+r{+Dn~-6 zm}7TKkSt-2$wLlN!O<#tMZzutU#D*)c%O{F(7vk_NMWz$;vTVj$5~7>2h6a*27D4$ znxRHR%bW=t-tI0UjFRSv%p5nKqgoC3`MmrypU5nkvEtSy(I*#J1Fj)UvW1vViRbpD zmOM&=B%QGmGwuTv@Ta*1Z;}aVL-h}uWX2R;iRBt+)Tc70SAH=nUfYZ@*Dw6;*);pD z*4=Vv#QDY1re&1?h7^8+_~u3q*K5DWe3+)=;v=AdJV^W>o+Jjtl1^^WyLcV#A4t!q z`uXll5#MeiCsY0}M`yh3?OJUQw*e-M&e#i7iyD0hoM^!rz=`7ef&ecEwL-;=aE2&* zNUO#d5_FRed@+JZ)KpXvauiV5%MX>IQKBqGBNZ>VsF7ov;dO4Q<@|1e1xD*KPT3|) zjbdDXjC@QOSjrnOjumDjP3LpiN%D*>eYdyq56Fh!Lu+P`^T?ZfZ*)~+Xs~rrOgq)p za#p)#^O!y~?_c~A799sf;>k9vH7)OKKC@opZHD8WM~bFosTQ#E>=#7Xfj?5%r6FC| z`x8E6J0P9q4^Ex~^0-ce!Mb@ptQq_Xh&@u}|{-}Tt$`$PDBJhFu zSR3-b69lx&gZ}MsTuRKgv#GGujW;NT?70!j61+;UEsE)DUK74`#;lkO{V+1QfjE+b z<^GM|vML(xzYJlA{AaddSn=#OiU?N6ey|k@Xr>b0j+`Ljl|+(A8GQ^ZHNEbz9r&Ey zTQ;O86(BkeGhEdB!hg^YawV~<{pHBZnR6+$@ zE8*HeMl8rdd; zl~Z=;i|cf-`I&t$pyUnEaxB==I{cC@hbu>c-a$v3;E*-6j>{$iq#Poct$?y0A7Z@P zFZruq(!BUHFMqDD?L|FR8zE=4aaEqz`{p^vgG-O@r}1TMFz(d6neCGjo(-5Le}McH z*E$2KBR1zs`mcYyN5@Nlmmu~xX0PTZN6$Z?&P_y54h4)(zEVN(Wa?8xR1K`N&fd^7 z$9$w6I%iKbPyH3XeWOv#Uuug)FSuR_)I3!0Qo4L#aVwz3CjPcYzaz$(+{alPNu2zC zrcccPzi!UaZj<_Xo){XHWB!y@E=clrXhYd*8;7LVE<+#LyoF9ts`pz2Tn;we1|qH3 zMiRKjL{i#3Y^5a3_x*gFrP1dVFF8d73PuM*Dr{>ivbT;akMq_i-%`QgsWSJSy07B9 z)?Q+_%ZI_U(JtsGvKbs7*IOW`cLilyXh*5Q%xJO&K!8g(7h3H1O379^8T)H?G$7|% z->h7T^*7SP#t+!cmqcSysfmCj&4RplcU-#OGC|Dkrt2z&8E2JmI~Ju@9`W&(UVply zszlypB5rWf`xcZOt!2qwivV{(*US&dC~6_HFSg5)vh?}2MgG!qf6OBkZ+{&&ftas` zI$8MrVsZNB@-+7cmVeWq&$ApC7eMUzW76z3jQc1k1$IKEG@#7+t*UM?C~Dx@)Qim2 zV$SzOSUqYyw=zM+yu{)7M6im`5mE<;LAmJ%=qE@PE7=ll)xy*=1O}It&#Z7?5ME6! zPK!ilt)fUepZ(0itS=%-z^Ds;hurdrT{`j={D_?vptZ#@E;NJuli7Oqi-Wfi;_qG+VSyM8Zts1 zBraEj+e_ow77Ccq{^x|f>nyB&8%E`)>#Bd3*3#cgomByD@$T(fI@~+NOUz#>HxV)6 zq~TAk!NC-6%3@?@Q+x(*4VT**3lAL~?Y!X&pRg=QVz)D!xs(FdpvSu=`#KRN!N;Gm zzCFMdhjKRYHWfOni1bC=%k39PB;ZYKP!y?yvMkyL_A5l*mjMXQt&}#Nv0IQ;W7)0c z?RBi;l&ZfQL0v%qvZ{gxW;3SAOJ~L|&^w5WSs9Z|Vy-T%BFDTHO9splU{F)GE!gWA zH1E^N@X00>zHejIY8Vb;z+XwXK`n{5!-cDrn6+^}lz>bLf^1kL7Hj({8pq*#{fW=D zB2i_HKaM?FK?<&bxXm+Ba+ycB_A)U^GmYq<2MUGCN}wqpVYHbKA%Yg)X#~%>n#Bwl z;98_qiAlgP789Sbt=U|WbhQJaoH8{c59P(P<`m+rJX1=j#WIu^#N~GcR=D5Us9T-L zGtV$Am*51$vg#O4D<-Cj)MV*kW)hhQtZe+|gLb?JS@b^sI7Rn8G9dl+i>r{}z=QkJ z5-g8;d$`fA{5}fBBeobzO-{8{E=F&FoHS37Ioy)XgK|<(x*5 zNl4hP`ceb^Eo7PIN@k&<>SjYCt<;xv61F>Jn^(7M^n67MY#|wR61_c6*kX z7Wnbw;}%D0)5c=R&!9tZ`c?kAj4ark`oCd4Lr;&dno||^NcENfS7mP*7I%_<4dW2p z9fG^NCb+x1y9N&)Jh($}cZc8(3GVLh?oN0+|9xk(!;{^a>Ferl;KMn0$*-uYTh8sF zc3Q=pZ0%xRj>gRh@I(N+HNLi2Vy&%rVMm#D-$eWD4)PY8nuDqf(1-r=SOkOSMIxV< zC)<~sbaUJUzgZk}SG38?PyTL<~5w^zxsv-sbJ-)c4iR+Ua{rvX*8GS2Q z&+e}{?v`cQBl0CIat))E4CF@mHz%K3m^j?Mi*Fs>bX`1^oaoV;o};Vk2ipc+-kMaE zr*Yyr#DCv8?eUJNDarQk~2nTl08W*0o>2uHT zDjcuX$l+<<^_^m!a)cZ2hR)}H8unUy6suDNW44v@C@>*ieuoeqK1@7m-rNEoVQi*U z#r>YwKTuJjM*T%0?lkl|-^$3()?8qTjQ`CKu!s|cm!>svn+cO4Py_V7a6vK zv5fLr_lyzWWmd&6+QbS3x4}7g-8D|R3nr>yHcargsP)fR1{`YEo9^-HCsfM-(PpFV zc9P@7$@*O4lmKEjkLV2?`3IW~>LL4-Se8@g0A3}BW>Cy@!m#Vds)Ag@DSY!WcKqTs z5yK;&6Q4freBe2+yy z;qYwkFJ@EC)|i=m7thGlTu>@TdxGMmg7^@D;i$YvuU7oZmVSu^nhw@k6p#ye|xm3 zrKClbc8npnRt~moQms2T`MGb(R*cFGJEg>Es~J+s(g&eb(zi8d)RQ>$AZpcfi%EUz zZEptKkv!iL&`D7?l)*x9;sw$7ulgA?0-J4AA(@AV*~CX26=z=+a2TC*;=@g~ykXwV z(m&n$UzHC$ctwuFA4(+*!$a#d!^Sjg7u=*CMab@Q#^@n!5f+GF*7fW_8G8E@9+mJq zPwsH-JoFh_v?Sk4;vA#g>fw6|1yuMU4IrC;MqW!bsxIrJcDUIg=6>EkxiD@4{l@p= zD7OXtrTcEBt!yLR<9uFVf6tla3V9ezyzqVUmWz~eJC_VTuMzAx7Y$D2&{tJ4ZGRyp z6rBkd3zjCYJZN?_o@m1;!d>`)3?Z4m!d==n(DHd^il!@Bzrg@ZobDUL!RAl(U+)8O zpSfk^Biy~w2Hxc}@Wgm=3dx7VQBh?<<*%Q^2_5Fh=ckyEXSCZ@hsho(P5CjbCHBy# z-(I1heFN*O8-00|Z3Km4;79<74qgIe8*%=l=-?0frhqK4e@8+NE6H0f^1*uDRv`8Z z#>70h`a2?_qbIm(6Z)@oNdw9+6YggIaT8o9JBIbEr&&+O;Nb`P$(DLVn1e7E&{GD>;`8EBGS+BNLk!GNV z!;dCk1Y_lYtHyhx)PK#;o5@4R{c0+J{sluG0a(2LSh+RppY(kl-+i0=p6O9^cWLqqP_lU8isB=u~nZ@@IGILgp-EPT}K?!nx({;}O+LI6)cxY7sOscU( z)01db0PAF;qH?sm5zP^WI; zDGEZdnMMb;%)#hEfx(-wdI#gr^Gj!d$AASezkUFgHjckFzidAk|0{p;&xsGwjFy1J zkpP#M5I7|FAkHCWTg+hRzM#3i7Kgxl(iL8cDCqgb;G?+*v z=!9s)px$2^$2^EIVr>%&`F6ir;t?5istGh_k$)M{!Pc`w;w>$sSw?q3{4O3MZg2!` zU|4=)4Zjg4`Quexw=8r%wgOtAvEM*cq*VDTjAq^DkzY1M`}@wB3rV6Q$agsBN084< zou=o9Hh|a5=s2PNm{b<=*gE7f5%fqGfIfYj2a#zcn0Vjjw0?d< z&07d}BWGI-2KV$_Ro{x4kTAbD_wkTK(ftaY4$)-3RO#RFIYWrDgGrF2nCwOb5O&(u zfkR1Q#LpLB4I^8OOYbu2(AKN+#f2|0U{I07v-_BkIw+Zx_<%FmMGo|2 zOE8$K4H!X{`NlQ||@D+%Z3!4+i(q$d^So#Y@cQ%FSY?zFGqz<4ZlM`D5@!eVVoWMgGDizJgfLowq z$4#lnCl=3GPrAMU+=m9$nU*Ort`{y_^bNrml-qCMG!hKbx9mX| z;s$hD`+-E~0&VOtBS{@kJmEV{cO?^KAV>J!s?<axx`BSRz zW8TtxQxF$@8JW)0hzMPz$4`Y|txVmZ&Yja5kK5j|vXPfgZVhCucw4C=SShjVHGZa$ zHGbZs@NF4+zG)85j8_-WY$`120`M@2ok4_}$g8`Is%`HRXf$NXl=Eji6iw$R2P`@= zSYTQ{f36S5hQ^l|Qv{W;-PRPt;;3Qb{ zpq`%HWwP%G38A=>A~?lYo1iNMHx*8N5%JBb!XqN@H4?$Z1?dGHkXq~HltTr{|7baS zh1uOTept^5%1L;ZnJO1TF~85*-rMVI-FNslwFsY6CU-0JbCLrYW3-TZpF~cqd^1x{ z5x0f}{`Amxa@L?kc}gvI=^R$8c8!9(p^#VzqjuGpo4*w!CWk64f2oKnQ*&BvUm=+j zixX@EY030EWl+a2#q;Lxt<+0S8m8~zKs017Q=d$>#~P&ERIKdw4kk2`mc`CeabdzB zLb}~LK1oSXl{2_($rI2CC+^T8{Gc<&C4UL}k@jZCS_Nl2UIljP+dPb{#6pk2OF-^Pn7My#VrkVN`85euchDWIf)fRFl?CqsqDd?a=K z93WN{m7?3_+d!9vZ?|hiH)sE&tuRgOJ3Q$v7;+p?(uJtv@^Gxutm=oT0fWPW+Yym3 zq(l7)aOYw+)4pm|1~zg;fSOkgDVLA)jHr*YWh~cqmJU4>33un{Tx?8t`>iQYA&GDOnTvT)smw#Dgyl{4N+dDF%nLyHT59VAO zl}N0)vIRbbu7UmchDovpLO2A?fn*VWHth6VYmk9&tfeXo?H`5_W`8 zx8w2!wcFtF;_xHAs}a82)6UX12jlI2XjiPDMTk7g#&hFst6eqUW!}{tW{#c9 zkWf|%JI=+vq$IYQNfRCxGF5{x3g4g?&-dw4TIaPSi?lt16Norj2f5;l_JwtYZ^u6Z zwAw@)rYL}&X}D(%cSbH6!`lq=mHkYmO=v&Ph%{?kMEk3L2lDFJDwn#|Pz4X_m0n&j zqjsnZ7W^z&&9PK$aJ2g{F2ig*;`lr!U4P73w)fsnZILOf2j?17vr*BJK!hFddAsBK zQ)&U^pmNd`tD4Ceq5aL#+M2f0sS__Bm*U;WlG6-y1>E^~iDS9ud6`ytgg1ps(}g{z zl6MXIvN&i=wW{&1Ue)^nrn zG);_Redr3(_su#B#LCkK8trP04*|YmyMz4`?A+Y>eWy>*$JR}RR!l3^InunlD`a6v?Up#u(LjO4^z10Fw=n5CiaJQ`-(Rb;%7y9y|!My1V2?2YHZ{cNRKw>6IUVvh&bsf|=t^N(3S)+d+!3Tq7K z#Ww69%c2W_5F;_&+p|z)m*dFQPtIW6^Y!@|ohK4}^BU?^M~|~@-p7x#IJXs^IE^*o zJihQcN$=l6AYFi#TwUUMk9J+f=0UjJJ3TRSEzWCmv^b!;V=q&gq$)AYsV2`AaFWFU>n0qLD=kLX+#FYix^H`WzLpF5|K=`3i=<;=a7`oQPcac~SRhU|n*Na{{K>`iUu39rsGn}MwCK^!gNQG$Wcg>Uz%zJs?!VNOsCc^CgRA0z{ zER<#{2dzk#r(VRF2amb}S-EcUwaCjGb30RtDZ(rWU1p04sXcL`g^FSUd4-}0yJ zAt1RNzp0P3XNIl&`qS#bkFCt}k#_gSJrwAKpJK_EZS>>kWk(q_kVR-~wL!iBe`SCz zm1bUcXsyA0x_)@5?q_D=oVV{t-)8M$@OHX6uyVTTJ~-Mgj%nEa_&ze3iW?P=daWfd z=>E$(M2vr;7P)vP!>T`i{8%@}%>+E;JYs0+n@h}L3cKX3&ekv)O=;x4(lCEFc(Kw` z8;Uu<$gK$D_s}E8h6XkC+Bcl4TxP~Nt`hAk8mRs7SklZ+Kbk2R!TL`|y-gakXEEp( zBE(arS5@$@5R5P|kycP6kFiGQxq5X{=KWR=SO<_dB-e)CX3^m4*4^=Y}I7`LW)P#vn@i0UltGzmJ8ew0b9~XQRVqZeR z;INQ2N3Asj9myMZ9!i+d5PZ6jwPm@@xL*oW+(MFZP>T~?RY;S~g2eT4bxAl)Fwyr| zrhGY%FW@C?`BQe)hi%68E4g~RtD`-^0PUpp_cwV7m}rXvq8W<{@LdsF&BCi+z546E zEb|2AE$U>3Q7g5I8FJ@sHoGW5&oAMg;wyX|YxQcn-Go?Kx^7%;OM%D<%yl!|a7B;1 z%S34!d$*W=z#8tl*TtGBP0h^1IvSkfSxtuh!|7VzUT1I#9`nF;azWlF*;uM31w4($ z#xxT9>$lvgyyVaFXBSb9AX{6j6|3=0>SMVY_u{n;)0QMiMb0HL7dn1~Q_*@y*Xx9<4sSiY4;sQQDI} zDV%S9qMaP0T%TuoB=&l%5}?639j~f=KBO!(*kPp|eZOm5sTI+UIXrdR9C{E!5!5MX zXHcJkU(-OsXLpLp`ZxMM-1wo7L>pRo)^T%;;&NJOPo19;)RP_(dW4`o$ zy|){Wzb{y^XKS4DEILBAw{cy>Px@*W&B2D<^3m1?Rwc+p{dwdVD=Y+0roNw|J4C|I zc%X_n!ESYMb$11!GaZf&8Kt~c(m*Yh%`%D0+B;Zeb#7m#dD-aP>E`{PSLwtJ1k4RU zNt{txARzUBd}{w+cXY20^0=0^iyRlt-r&(*m90_nU)9#o+nV^I77uA3peL4sgyjlD zgcg?uvLkY1OhS)r+t&q=#d(kF`frSZt&QzCm~lr!nHAn<`sb7A(n?gNJ~O#}GI4PR zu13*VVyM=DVG+;Y0~g2KcBEY6q^1Z3&vN}7Q3Fd!5P`Y#MSGpazj0LD*C9etX@}B8 ztd!C1e9`rqL#TqW-23w_NVHZbYS<4S6d%ky5L!x5siZ&De{Xww;^sqF}XRUIXGX}33QOqb33s5eSqOU#2}@H z*4$yMXvjsy!bmd%=_q%Mj_Ra!p$vgs#iSoF;=KD&W7Lq0+GB;{3KcP`qcnNd!cZE> zMi3tsDUw4H$|+i5-jD1d;LvFX@j}yIJVn*5i#E3;y_dIiyzk+^#>K%gXO5nIZOx&; z>|H>*VX0w4IZ!l3swP1Pbp#_3yfk$L;T-WH_an@hF{NBrC2nLm*l;cws2?wF27Z0=&Id28RawsWgBTM|IFiE7`pwiD*NcD@Io_WMbCs2f} zx8M#ivQn}rCGB(a=US$ym(+|5l|$I=cqwSB5@S3>7Dvu~NURcsBOuHAV$vM$NbziW4tE$!XJmDT6UrWa zMXz9O4{K~I(n)}|AYed|?|n+{cE6@%vD=$V9}n?j59-0##=@%>-+1&}sgr2q7w>(4 zo0^5smGTThw{k&ql^JcdT!B9>CdMk$yxEq%`5W3)F{|#+J{?zt$*Xj}JiP0a5Q}s% zt;6Yzt#__0I(@qb>mQ$q_rmM0^PXNkzl&Q)3#xP-VnYEt^v(blbd#M`4Jp(qR~BD> zNM#!$fm$&ZL52kX@*;*jj6%dqve)5#EEMqJR!7Kb7B4Z;KK~~OkxtES zfqPa?nULIh2FW?eS&MXKY~nU%ajG#v@0p|zr}p;?CynAnzcF1+cdy0IOHaXySvDNw zwPFfF@GxVY-ANB?6JxS=V+O_3s-o-j7GtdR7Y9>ZfBCUIXl8k5;E^h(oBai>JT#0% zVlT-1gI;U8SVBaR3M&xtX`erBJ1j;cD(FH zurc}IzW2=v)Asw>Vz=)&HBtE0nIPUr+Z1(T$*IU@3cE%w?P2dTDim z#D1ayqD`|lqi_SLtxIZ5a^-P`-q{;q7v1l3s*E?vVW%x2j4YNBGShE#5!JZ*upRJg zaMb(8=yLQ+dvUyBLvNkCRue66wv%l$wKmCd9~Xw(oNFqU9p^^doF|Ky9i`$d2w)g? z*TS0%UQkF6zu3`SxwAb=jIqnVY0BM~<|Xi^D4DYM&Oqbj!FtCHk4Aq|h^`#hJev(- zDz00{gqA5Pir}4kF(vcu?T^0NsukGdAey-8c&52C*s+qtFML|7CxblPB>Qefk5e8Q z$)}2!@Fn+NikF@;OZDj$1mr*F!j#<4ZFBjlCdV>PY2ltzJqCqlWd~}EHuUP&Ek`hh z5y7fjOgIY`|-?jS#|7}^Lr=`tm@*}*4!|ilci~!9PhGKk*ij?oE#r<7} zr54K!MwNWtRj+ z6Tj8&*F70dE^@9j>&mhfy((S@yZt8hu*XU8_<`aWtX*^Ns-mE@n7juK>KKu?RZOFu z6GR%&>T6{+eC+W@67;pX@7{l(qN;37O=P5+rf36({=w8eGiz$-;>6lQfCFoZ=dNjv zryfYoWm@q7s#LzT*5ZcP>0>BuOj&Ce5}W*TQX>?AZnex`s$~wj^MErS%v+B##d8Le zQ#+bE7nIq-w3;a^3liBkg$t2dynvuCQwB>z{Dj{g^t7Z3o&oBDcwN)!0($=gtopsr zkt_js2H%ZszO^T_w8^o+i!8<(;i^7)(CRi`hr28Fu~PBs_q5E1hZsAoFz7)2K|AG@ z^sPHyf2Wvs#ps;0!~SYxxXF=+2W+cp<7;9g%p>a>-yw})oHJiH!IdS z{|7mm+maJk++>L>bE%iE3(RSQr#e{|HJbKlDO68<XfxR24{2R0HZwIsrDu}o+ahGvb|UKDly zgFA%x9UgW7{Bd8TcID*knM+BqR*}T>bHPI62;I)508C0f?+a%DhiJSj_bwsIWlCoZ znnrx}MId)I+si!;cYDjO^=zhgYA*q0dVJOy;+?!+A__w!CwMeV8)K$y0us}4ctm1|cM0=?1m{I!vVxAn~_Y%J6sh))NAI+H_a%8gnbXCM(qD(S62)}GlI4^lBcqv(?gwlerAz8-si=rcGPl&oc* z#{e;q;DoN@A^Q0gKJfyy6tTC6SpHu2IcrFmpV4!a?Ehgj+{zj=7A5 z1@?wj9NxJ zGLm&T(1r0Ua(dDIFgD7SUg1Q?3;CchouCb9Z(IW-wn9n?O`kOWPQORg3rr!JUO~qy zAO+gM5Z5$a9!18Iw~j)4CMgz~dDvosD?El~;@*Z4Y4qWrj59jll=P4E*ST4kd?u6J z^nCzQ=1<5kB}*Y+^u>wKn0HP9v01E*1Uq1ZS#*X?% z`i}Z^77n&H;R=H`0FCb_G~WVP2V)#(6f=bkGA7`~pzy~xi5`LBKJ;yASKDrC4iQifGliWrDjqtZ22c7iJbJ@NHU=`09E zG5_AH7@Q$Ps>5Vw&U!bce|xAvlMIO81?PKl*%pDVd=gi>6I>_3;eqsulV&ewh$}C9 zjDg3G?>P~OK*j}jj5}!L+*|N+R_TrEB1Y%pK))RTMmf;|w!+L*D9J4${Okv58 zp$=_+>KMrn-Nn@}zT+lbjUC^x9_*$%8{-AVKhxWjxAHy(vN*R<(HaVw$8xU-+WXjU z-;E|Jj}>6iT(Habk(b_Nlf+9qzug`-_b4?a$XoFMRzU^Km04W_!2m@d?c1zfa|0d% zwt0-Wg0=2{)KULA&U3Sflz?<$pr7x*9%o0}54u*y&Hy14$B&MZr4nTn!J~B)5s(u_ zuHTdHUA10;GsnG$*8%|ld=mrS|NB3Ps+h2_6wIiY^zb;GBrVm*&}fYU!xZzHz3i|g ztprU!eYJv^L_ZB(Fg;|E{20R+Gus&R*cSA_DE;^~%?um`t;BG@RJ8&HC6)9xw768g z0!1Oq%A9w(%jm*di?|8(Zq5=V{st=Qq-eqOrimCXJvGaWL~{fWPEx2 z&P-@{{TmgnIIOc>H|e8xCE7BK5jr86F0u1%qaGUxn_UT2tR(gKB17OY zF|rL^3e#v3Fp7g^%u&W?_{ewhzO%$>VoX&XAR^_66b@H$aPI?7Gt3Jt4Xb?R<=;?- zkp@k{FNUkY3{yAhc7P|sh^_;|C@k$Y@c9l_W#IE+(!hP8IAe+Pr$g+i#yygiS4Ygm)VAb0uHnIc)?k6tP1k(KE#og~H>0PKB| zIR2?BCx@6rF;WkW<03S|iYR>BSe!`wCSM`-T>rxDParuF;6yHRjhb2+zflDF*}5K~jW$ofY>%}T?_ z3=sZ;vm?)0H6r#ea@#O(hRxC8Y5S>e^v!-$XbH<7*fiEq*|AQm`Mgoay6#Nq)LrgL z3C~%)7lYN1{CtTBE1uMI*}HQWpEy!e_bFTJIq)V*D2X)d?!EM6-FXH@OAv6`XWSPY z1UfU3Pqw)3JV31Ev)Ds5<*$W#sJgXsLt%y<4kOTeg|+%5 zaFVYok){jI`|DTkdv&H3OR;N@4)VyXwo=t(yF$1;Pc5$vL8RK zMDQh>e_?OSMjl0WG>di-L*X*)N9{!4Nnc|K96I?iF7hL;k%+*~NW=HmjjN0nv^<2a z#~AG@ryYD}Uql$9gXmo#iWyB2Yh2X-&brH#SZWp2uum46Mc$9 z-Kwx1OK5s;J}+S!C4O__OLvirgOBXC-?@zuq?dGV6*HltSH`%j?Q%=DARdxSIM>osj)faf9Ye zuCvAZm0*jw#(J8b}|8BrXRCmp%u0FiHM$jZ+X7lvNOF zO_Z$3mO>7^MPYmaYiiU*ui+CGI-vlufdbo-Aq0o|@es+(`&?Tf3MjBqQ$?iUnK4v4 z1W+N3mhzOdXHc8T_2D#YgWzA;@F4y9(0S8F}bP# zUZzQQLP?{CS$2J|m=-BDx61nmu?H!xvg^cECu^A7*s$z_OqFhP@JAZ`Ck|^9WrIFv z95q#!x93c*jqJ@S@kKQw5!zE=RDn}C_>TaTq;Z6fB> zmJo7?v`C8JIP1e@IN}ufjnvKHQ*xIJteVrz`iR);wy;Bj68ok>45Xoy@Cu2gZ|fe? zHEJi2t7}dY`*8H!0;(vQ;K%Qfxt0|2K7Pwn(2qgimbtQ^nI!P7p}7{hS*_#R@8&q_ zrUwTbcHv7D7W5~(zP5_;8@d5Vt7}>qshauDlLnUOeQcKmSJMXfC)FJk%`ERG^OEVE zc3C3y8EVvT${{c~3`Z7hM?1d2wua1R?)p4;ID*POrQmS-6u}4jXsS-AaL&WWs*L|} zyI9{cIu>NU(g@|OaCnkiT-_;JlOozrZYqUD6!eJyIhRYx&)@dW%w6d#^9WTH({_o$ zYG`GhwvxEgB*xJ2eN%HwKdgsM#p}#Ml$JC$I)q~V_#`6|EQDF z`-9oXF##B-)UUv^=SY?-spUypH=o**CXFFB*(vLKvaLh(8+ zt0&YLACWM-Cj$pb~9DX+)RAhT5ikr7}0XeZH`xslm zH5i>^T<}?b;Xvw;b@BM7nL!vTRewdP59XjccwO##!(|Y~(V@Y&wD(-Qy~e@rGze3e z<9iD}x#1uOyu`-9$R&>tdnfXKGnrc_OMB7}6AJ>FV)9Be*?CaJ?L5B0Xakv%WjobL zR09wnzp?LcYQ|;-CQGLyo1XpjbhU^!%$r2z@HMK7#;UD)Hq9mw`Lw)0;b`dN<3mJk z_!dbZ#SrM^B)A>v7Qb%_O-vx;W~NqdS1Dxf*+0Plwi1{E$ooZbPSpw#lq8pYzh=9z zp5lh)Rr>O_ueW#i6cm$GdTx6ycrfzKVqQU-Q9}*CWdS#sNpW|xnb-;=ox}GEV?i=$ z&T}N+f|V^Btr5gAQahl{3uE|e?BN2TZWcd|y_FwIW6koLy&EE-HT?&~C*`{+0qUyh zf@&wjPWLFroS!OOxg6JJXOY`ZRo$C7RwGW8}XOs-Q!vyGX+3XT!tBCJa`eNWT?f zxhLE2>fVm$gLtVj`d^s2>ru)vX=Bm&VRCKa&Z#0zYTqkA<}Ax|!Qu+@iN&}vr?ljI zYG&x67m7GG%L4>uTlAG`z7|-_OWAZ;+wkgRE@u0JZ@bRfE7|j$Yl2@Up?_t*7izHz ze@-HMYd^s8c!>s7lHk;1MC{5iB_=a{J5x&7Zgf-Y>~Tp7z}owI^os8E4FI5unY zvZCg4>+$5cB@M1JdX$#-78P5i3Cy|7p1H3@Y7*b+dv$@@@HKluSJ%3WxKpqy2q)t6 z*gg}^$DV|BcW#*zDG~z{LM7a9e%4iZ4sYRc{Zvz3W@VUW9N0<`KrLjxi$aZL&EPXH zR-d123ZGTEdYEgv_pSq-#kZcnD>vQp={ORJnt6T-e>?qBqkZG%A;pKcI7hMfHhs15O`m0|NG!AgEG`j@3%)-s5Xf1dA$a zXpl~FS3LIB6S7-QBoupPnqJ{`E6$e>Q2%6zbp9w*KaY16Km%a^R5pv=C{(`1!k?XfL@bvr^&*7ZHS_h8CN;+rI4{ zO8V%?f;~WtIWPz+=+E;N6wqEuib854qTwdsWGw=SEP4z0>mRRNpPxVdPSoW;ln7sg zF)*ZPR{+5B0AN24F@L;reST(2{TA$BvM;(O`i73S_O5^c_1Bmd&k|B>08Dql(I5X0 zK)`pd4+`M8^jl05TYGDL$KPPNiUh$)1F)U|Sh#<}3IJIATP!nUs}H|HQZv$ujRv5E z0=6=Lwh9)o!TBxH2Yq|}|4XiU-9pt8D6uVoRVNTYKzM($Y94Uc`8zB?XZ=f_<297c zsEEcp0K`v09`Zjy-NF7BC^x_*s_vg|OkRTqn@jyT0obSW|4b2gz+v@w_8Hn*TkG2x z{mdkK4JPI^Pu>ZztP=qE=f>s(y7Kp6HURC&-#~#ou($dHgbpzoUqfXh{ud}G2S;1$ z-#~o>_G*OyOeYNZf7L1bqw8{g^a1nacUA#L)6vG*{?`?>13kZ+lf5xOxfr1HW^Df( z689f^K$8H~gbIy+1@QeMX(9M$B+^onP6o#IHpT$?#@`SfeHd~4DY|R{m_E#ZumHYu zefC)XHj$vdg9Bg;?e%{{prm%eEPxDn&Xr!bqhF{`41-SJpoz`d>r&Kic~{Z~ZSbW=sFd^YY4f|DRp?J73^0=&8!Tg8r}j+}}B$ zegU^s{}u3`Tv4wre(iYr1&memSHS=0hI$S7+FA4qu#(aG_`wKI<;jfJR b*Hx{YBsky%^Yh?A4x|a#NYixu{O$h(4U{Xp diff --git a/testing/owners.txt b/testing/owners.txt deleted file mode 100644 index c1bbe9a9e5c..00000000000 --- a/testing/owners.txt +++ /dev/null @@ -1,2 +0,0 @@ -joinnis -nanthi \ No newline at end of file diff --git a/testing/pipeline/k8s-custom-pipelines.yml b/testing/pipeline/k8s-custom-pipelines.yml deleted file mode 100644 index 100c8a118c4..00000000000 --- a/testing/pipeline/k8s-custom-pipelines.yml +++ /dev/null @@ -1,386 +0,0 @@ -resources: -- repo: self - -trigger: - batch: true - branches: - include: - - 'main' - -pr: - branches: - include: - - '*' - -stages: -- stage: BuildTestPublishExtension - displayName: "Build, Test, and Publish Extension" - variables: - TEST_PATH: $(Agent.BuildDirectory)/s/testing - CLI_REPO_PATH: $(Agent.BuildDirectory)/s - EXTENSION_NAME: "connectedk8s" - EXTENSION_FILE_NAME: "connectedk8s" - SUBSCRIPTION_ID: "15c06b1b-01d6-407b-bb21-740b8617dea3" - RESOURCE_GROUP: "K8sPartnerExtensionTest" - BASE_CLUSTER_NAME: "connectedk8s-cluster" - jobs: - - template: ./templates/run-test.yml - parameters: - jobName: BasicOnboardingTest - path: ./test/configurations/BasicOnboarding.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: EnableDisableFeaturesTest - path: ./test/configurations/EnableDisableFeatures.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: AutoUpdateTest - path: ./test/configurations/AutoUpdate.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: ProxyTest - path: ./test/configurations/Proxy.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: GatewayTest - path: ./test/configurations/Gateway.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: WorkloadIdentityTest - path: ./test/configurations/WorkloadIdentity.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: TroubleshootTest - path: ./test/configurations/Troubleshoot.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: Connectedk8sProxyTest - path: ./test/configurations/ConnectProxy.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: ForcedDeleteTest - path: ./test/configurations/ForcedDelete.Tests.ps1 - - template: ./templates/run-test.yml - parameters: - jobName: BasicOnboardingHelm4Test - path: ./test/configurations/BasicOnboarding.Tests.ps1 - useHelm4: true - - job: BuildPublishExtension - pool: - vmImage: 'ubuntu-latest' - displayName: "Build and Publish the Extension Artifact" - variables: - CLI_REPO_PATH: $(Agent.BuildDirectory)/s - EXTENSION_NAME: "connectedk8s" - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.13' - inputs: - versionSpec: 3.13 - - bash: | - set -ev - echo "Building extension ${EXTENSION_NAME}..." - - # prepare and activate virtualenv - pip install virtualenv - python3 -m venv env/ - source env/bin/activate - - # clone azure-cli - pip install --upgrade pip - pip install azdev - - ls $(CLI_REPO_PATH) - - azdev --version - azdev setup -r $(CLI_REPO_PATH) -e $(EXTENSION_NAME) - azdev extension build $(EXTENSION_NAME) - workingDirectory: $(CLI_REPO_PATH) - displayName: "Setup and Build Extension with azdev" - - task: PublishBuildArtifacts@1 - inputs: - pathToPublish: $(CLI_REPO_PATH)/dist - -- stage: AzureCLIOfficial - displayName: "Azure Official CLI Code Checks" - dependsOn: [] - jobs: - - job: CheckLicenseHeader - displayName: "Check License" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.10' - inputs: - versionSpec: 3.10 - - bash: | - set -ev - - # prepare and activate virtualenv - python -m venv env/ - - chmod +x ./env/bin/activate - source ./env/bin/activate - - # clone azure-cli - git clone -q --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli - - pip install --upgrade pip - pip install -q azdev - - azdev setup -c ../azure-cli -r ./ - - azdev --version - az --version - - azdev verify license - - - job: IndexVerify - displayName: "Verify Extensions Index" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.13' - inputs: - versionSpec: 3.13 - - bash: | - #!/usr/bin/env bash - set -ev - pip install wheel==0.30.0 requests packaging setuptools - export CI="ADO" - python ./scripts/ci/test_index.py -v - displayName: "Verify Extensions Index" - - - job: UnitTests - displayName: "Unit Tests" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.12' - inputs: - versionSpec: '3.12' - - bash: pip install wheel==0.30.0 - displayName: 'Install wheel==0.30.0' - - bash: | - set -ev - - # prepare and activate virtualenv - pip install virtualenv - python -m virtualenv venv/ - source ./venv/bin/activate - - # clone azure-cli - git clone --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli - - pip install --upgrade pip - pip install azdev - - azdev --version - - azdev setup -c ../azure-cli -r ./ -e connectedk8s - current_dir=$(pwd) - echo "Current directory: $current_dir" - pip install pytest - cd /home/vsts/work/1/s/src/connectedk8s/azext_connectedk8s/tests/unittests - pytest --junitxml=test-results.xml - displayName: 'Run UnitTests test' - - task: PublishTestResults@2 - inputs: - testResultsFormat: 'JUnit' - testResultsFiles: '**/test-results.xml' - failTaskOnFailedTests: true - - job: SourceTests - displayName: "Integration Tests, Build Tests" - pool: - vmImage: 'ubuntu-latest' - strategy: - matrix: - Python310: - python.version: '3.10' - Python311: - python.version: '3.11' - Python312: - python.version: '3.12' - Python313: - python.version: '3.13' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python $(python.version)' - inputs: - versionSpec: '$(python.version)' - - bash: pip install wheel==0.30.0 - displayName: 'Install wheel==0.30.0' - - bash: | - set -ev - - # prepare and activate virtualenv - pip install virtualenv - python -m virtualenv venv/ - source ./venv/bin/activate - - # clone azure-cli - git clone --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli - - pip install --upgrade pip - pip install azdev - - azdev --version - - azdev setup -c ../azure-cli -r ./ -e connectedk8s - azdev test connectedk8s - displayName: 'Run integration test and build test' - - - job: AzdevLinterModifiedExtensions - displayName: "azdev linter on Modified Extensions" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.12' - inputs: - versionSpec: 3.12 - - bash: | - set -ev - - # prepare and activate virtualenv - pip install virtualenv - python -m virtualenv venv/ - source ./venv/bin/activate - - # clone azure-cli - git clone --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli - - pip install --upgrade pip - pip install azdev - - azdev --version - - azdev setup -c ../azure-cli -r ./ -e connectedk8s - # Installing setuptools with a version higher than 70.0.0 will not generate metadata.json - pip install setuptools==70.0.0 - pip list -v - - # overwrite the default AZURE_EXTENSION_DIR set by ADO - AZURE_EXTENSION_DIR=~/.azure/cliextensions az --version - - AZURE_EXTENSION_DIR=~/.azure/cliextensions azdev linter --include-whl-extensions connectedk8s - displayName: "CLI Linter on Modified Extension" - env: - ADO_PULL_REQUEST_LATEST_COMMIT: $(System.PullRequest.SourceCommitId) - ADO_PULL_REQUEST_TARGET_BRANCH: $(System.PullRequest.TargetBranch) - - - job: AzdevStyleModifiedExtensions - displayName: "azdev style on Modified Extensions" - continueOnError: true - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.12' - inputs: - versionSpec: 3.12 - - bash: | - set -ev - - # prepare and activate virtualenv - python -m venv env - chmod +x env/bin/activate - source ./env/bin/activate - - # clone azure-cli - git clone -q --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli - - pip install --upgrade pip - pip install azdev - - azdev --version - - azdev setup -c ../azure-cli -r ./ -e connectedk8s - # Installing setuptools with a version higher than 70.0.0 will not generate metadata.json - pip install setuptools==70.0.0 - pip list -v - az --version - - # overwrite the default AZURE_EXTENSION_DIR set by ADO - AZURE_EXTENSION_DIR=~/.azure/cliextensions az --version - - AZURE_EXTENSION_DIR=~/.azure/cliextensions azdev style connectedk8s - displayName: "azdev style on Modified Extensions" - env: - ADO_PULL_REQUEST_LATEST_COMMIT: $(System.PullRequest.SourceCommitId) - ADO_PULL_REQUEST_TARGET_BRANCH: $(System.PullRequest.TargetBranch) - - - job: RuffCheck - displayName: "Lint connectedk8s with ruff check" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.12' - inputs: - versionSpec: 3.12 - - bash: | - set -ev - - # prepare and activate virtualenv - cd src/connectedk8s - python -m venv env - source ./env/bin/activate - - pip install --upgrade pip - pip install azure-cli --editable .[linting] - - ruff check - - displayName: "ruff check" - - - job: RuffFormat - displayName: "Check connected8ks formatting with ruff" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.12' - inputs: - versionSpec: 3.12 - - bash: | - set -ev - - # prepare and activate virtualenv - cd src/connectedk8s - python -m venv env - source ./env/bin/activate - - pip install --upgrade pip - pip install azure-cli --editable .[linting] - - ruff format --check - - displayName: "ruff format check" - - - job: TypeChecking - displayName: "Typecheck connected8ks with mypy" - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - displayName: 'Use Python 3.12' - inputs: - versionSpec: 3.12 - - bash: | - set -ev - - # prepare and activate virtualenv - cd src/connectedk8s - python -m venv env - source ./env/bin/activate - - pip install --upgrade pip - pip install azure-cli --editable .[linting] - - mypy - - displayName: "mypy" diff --git a/testing/pipeline/templates/run-test.yml b/testing/pipeline/templates/run-test.yml deleted file mode 100644 index e9e37318dd6..00000000000 --- a/testing/pipeline/templates/run-test.yml +++ /dev/null @@ -1,131 +0,0 @@ -parameters: - jobName: '' - path: '' - useHelm4: false - helm4Version: 'v4.1.3' - -jobs: -- job: ${{ parameters.jobName}} - pool: - vmImage: 'ubuntu-latest' - steps: - - bash: | - echo "Installing helm3" - curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 - chmod 700 get_helm.sh - ./get_helm.sh --version v3.6.3 - echo "Installing kubectl" - curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl" - chmod +x ./kubectl - sudo mv ./kubectl /usr/local/bin/kubectl - kubectl version --client - displayName: "Setup the VM with helm3 and kubectl" - - - task: UsePythonVersion@0 - displayName: 'Use Python 3.13' - inputs: - versionSpec: 3.13 - - - bash: | - set -ev - echo "Building extension ${EXTENSION_NAME}..." - # prepare and activate virtualenv - pip install virtualenv - python3 -m venv env/ - source env/bin/activate - # clone azure-cli - git clone -q --single-branch -b dev https://github.com/Azure/azure-cli.git ../azure-cli - pip install --upgrade pip - pip install -q azdev - ls $(CLI_REPO_PATH) - azdev --version - azdev setup -c ../azure-cli -r $(CLI_REPO_PATH) -e $(EXTENSION_NAME) - azdev extension build $(EXTENSION_NAME) - workingDirectory: $(CLI_REPO_PATH) - displayName: "Setup and Build Extension with azdev" - - - bash: | - K8S_CONFIG_VERSION=$(ls ${EXTENSION_FILE_NAME}* | cut -d "-" -f2) - echo "##vso[task.setvariable variable=K8S_CONFIG_VERSION]$K8S_CONFIG_VERSION" - cp * $(TEST_PATH)/bin - workingDirectory: $(CLI_REPO_PATH)/dist - displayName: "Copy the Built .whl to Extension Test Path" - - - bash: | - RAND_STR=$RANDOM - AKS_CLUSTER_NAME="${BASE_CLUSTER_NAME}-${RAND_STR}-aks" - ARC_CLUSTER_NAME="${BASE_CLUSTER_NAME}-${RAND_STR}-arc" - - JSON_STRING=$(jq -n \ - --arg SUB_ID "$SUBSCRIPTION_ID" \ - --arg RG "$RESOURCE_GROUP" \ - --arg AKS_CLUSTER_NAME "$AKS_CLUSTER_NAME" \ - --arg ARC_CLUSTER_NAME "$ARC_CLUSTER_NAME" \ - --arg K8S_CONFIG_VERSION "$K8S_CONFIG_VERSION" \ - '{subscriptionId: $SUB_ID, resourceGroup: $RG, aksClusterName: $AKS_CLUSTER_NAME, arcClusterName: $ARC_CLUSTER_NAME, extensionVersion: {"connectedk8s": $K8S_CONFIG_VERSION}, customLocationsOid: "51dfe1e8-70c6-4de5-a08e-e18aff23d815"}') - echo $JSON_STRING > settings.json - cat settings.json - workingDirectory: $(TEST_PATH) - displayName: "Generate a settings.json file" - - - bash : | - echo "Downloading the kind script" - # Get the latest version tag and download - LATEST_KIND_VERSION=$(curl -s https://api.github.com/repos/kubernetes-sigs/kind/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/') - curl -Lo ./kind "https://kind.sigs.k8s.io/dl/${LATEST_KIND_VERSION}/kind-linux-amd64" - chmod +x ./kind - ./kind create cluster - displayName: "Create and Start the Kind cluster" - - bash: | - curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash - displayName: "Upgrade az to latest version" - - - ${{ if not(eq(parameters.useHelm4, true)) }}: - - bash: | - curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 - chmod 700 get_helm.sh - ./get_helm.sh --version v3.6.3 - displayName: "Install Helm 3" - - - ${{ if eq(parameters.useHelm4, true) }}: - - bash: | - set -ev - echo "Installing Helm ${{ parameters.helm4Version }}..." - curl -fsSL "https://get.helm.sh/helm-${{ parameters.helm4Version }}-linux-amd64.tar.gz" | tar xz - sudo mv linux-amd64/helm /usr/local/bin/helm4 - helm4 version - echo "##vso[task.setvariable variable=HELM_CLIENT_PATH]/usr/local/bin/helm4" - displayName: "Install Helm 4 and set HELM_CLIENT_PATH" - - - task: AzureCLI@2 - displayName: Bootstrap - inputs: - azureSubscription: AzureResourceConnection - scriptType: pscore - scriptLocation: inlineScript - inlineScript: | - .\Bootstrap.ps1 -CI - workingDirectory: $(TEST_PATH) - ${{ if eq(parameters.useHelm4, true) }}: - env: - HELM_CLIENT_PATH: $(HELM_CLIENT_PATH) - - task: AzureCLI@2 - displayName: Run the Test Suite for ${{ parameters.path }} - inputs: - azureSubscription: AzureResourceConnection - scriptType: pscore - scriptLocation: inlineScript - inlineScript: | - .\Test.ps1 -CI -Path ${{ parameters.path }} -Type connectedk8s - workingDirectory: $(TEST_PATH) - continueOnError: true - ${{ if eq(parameters.useHelm4, true) }}: - env: - HELM_CLIENT_PATH: $(HELM_CLIENT_PATH) - - - task: PublishTestResults@2 - inputs: - testResultsFormat: 'JUnit' - testResultsFiles: '**/testing/results/*.xml' - failTaskOnFailedTests: true - condition: succeededOrFailed() diff --git a/testing/settings.template.json b/testing/settings.template.json deleted file mode 100644 index 657126c20aa..00000000000 --- a/testing/settings.template.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "subscriptionId": "", - "resourceGroup": "", - "aksClusterName": "", - "arcClusterName": "", - - "extensionVersion": { - "k8s-extension": "0.3.0", - "k8s-extension-private": "0.1.0", - "connectedk8s": "1.0.0" - } -} \ No newline at end of file diff --git a/testing/test/configurations/AutoUpdate.Tests.ps1 b/testing/test/configurations/AutoUpdate.Tests.ps1 deleted file mode 100644 index d55029ceeb8..00000000000 --- a/testing/test/configurations/AutoUpdate.Tests.ps1 +++ /dev/null @@ -1,62 +0,0 @@ -Describe 'Auto Upgrade Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Check if basic onboarding works with auto-upgrade disabled' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --disable-auto-upgrade --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Auto Update: $autoUpdate" - if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Disabled") { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Enable auto-upgrade using update cmd' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --auto-upgrade true - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Auto Update: $autoUpdate" - if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Enabled") { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/BasicOnboarding.Tests.ps1 b/testing/test/configurations/BasicOnboarding.Tests.ps1 deleted file mode 100644 index 8d5975dae67..00000000000 --- a/testing/test/configurations/BasicOnboarding.Tests.ps1 +++ /dev/null @@ -1,62 +0,0 @@ -Describe 'Basic Onboarding Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Check if basic onboarding works correctly' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Auto Update: $autoUpdate" - if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Enabled") { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Disable auto-upgrade' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --auto-upgrade false - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Auto Update: $autoUpdate" - if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Disabled") { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/ConnectProxy.Tests.ps1 b/testing/test/configurations/ConnectProxy.Tests.ps1 deleted file mode 100644 index 4de00bbeba0..00000000000 --- a/testing/test/configurations/ConnectProxy.Tests.ps1 +++ /dev/null @@ -1,98 +0,0 @@ -Describe 'Connectedk8s Proxy Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Check if basic onboarding works correctly' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $provisioningState = ($output | ConvertFrom-Json).provisioningState - Write-Host "Provisioning State: $provisioningState" - if ($provisioningState -eq $SUCCEEDED) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Connectedk8s proxy test with non-empty kubeconfig' { - # Start the proxy command as a background job - $proxyJob = Start-Job -ScriptBlock { - param($ClusterName, $ResourceGroup) - - # Capture output and errors - try { - $output = az connectedk8s proxy -n $ClusterName -g $ResourceGroup 2>&1 - return @{ Success = $LASTEXITCODE -eq 0; Output = $output } - } catch { - return @{ Success = $false; Output = $_.Exception.Message } - } - } -ArgumentList $ENVCONFIG.arcClusterName, $ENVCONFIG.resourceGroup - - # Wait for a certain amount of time (e.g., 30 seconds) - Start-Sleep -Seconds 60 - - # Display the output - Write-Host "Proxy Job State: $($proxyJob.State)" - - # Check if the job ran successfully - $proxyJob.State | Should -Be 'Running' - - # Check if the kubeconfig file has been updated to use the proxy - $kubeconfigPath = "~/.kube/config" - $kubeconfig = Get-Content $kubeconfigPath -Raw | ConvertFrom-Yaml - # Extract the current context - $currentContext = $kubeconfig.'current-context' - - # Validate that the current context is for the arc machine - $currentContext | Should -Be $ENVCONFIG.arcClusterName - - # Find the cluster associated with the current context - $context = $kubeconfig.contexts | Where-Object { $_.name -eq $currentContext } - $clusterName = $context.context.cluster - - # Retrieve the server URL for the cluster - $cluster = $kubeconfig.clusters | Where-Object { $_.name -eq $clusterName } - $server = $cluster.cluster.server - - # Validate the server URL - $server | Should -Match "^https://127.0.0.1:47011/proxies/" - - # Check if the proxy command ran successfully - $kubectlJob = Start-Job -ScriptBlock { - try { - $output = kubectl get pods -n azure-arc 2>&1 - return @{ Success = $LASTEXITCODE -eq 0; Output = $output } - } catch { - return @{ Success = $false; Output = $_.Exception.Message } - } - } - - $kubectlJob | Wait-Job - $kubectlResult = Receive-Job -Job $kubectlJob - - # Assert that the result is 0 - $kubectlResult.Success | Should -BeTrue - - Stop-Job -Job $proxyJob - Remove-Job -Job $proxyJob - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/EnableDisableFeatures.Tests.ps1 b/testing/test/configurations/EnableDisableFeatures.Tests.ps1 deleted file mode 100644 index 8c6f1f5d1f3..00000000000 --- a/testing/test/configurations/EnableDisableFeatures.Tests.ps1 +++ /dev/null @@ -1,111 +0,0 @@ -Describe 'ConnectedK8s Enable Disable Features Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - - function Invoke-AzCommand { - param ( - [string]$Command - ) - Write-Host "Executing: $Command" -ForegroundColor Yellow - $result = Invoke-Expression $Command - return $result - } - - function Wait-ForProvisioning { - param ( - [string]$expectedProvisioningState, - [string]$expectedAutoUpdate - ) - $n = 0 - do { - $output = Invoke-AzCommand "az connectedk8s show -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup)" - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Auto Update: $autoUpdate" - if ($provisioningState -eq $expectedProvisioningState -and $autoUpdate -eq $expectedAutoUpdate) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - } - - It 'Onboard Connected cluster with no features enabled' { - Invoke-AzCommand "az connectedk8s connect -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) -l $ARC_LOCATION --no-wait" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Enable azure-rbac feature' { - Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features azure-rbac" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Disable azure-rbac feature' { - Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features azure-rbac --yes" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Enable cluster-connect feature' { - Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Disable cluster-connect feature' { - Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect --yes" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Enable custom-locations feature' { - Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features custom-locations --custom-locations-oid $($ENVCONFIG.customLocationsOid)" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Disable custom-locations feature' { - Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features custom-locations --yes" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Enable all features (cluster-connect, custom-locations, azure-rbac) together' { - Invoke-AzCommand "az connectedk8s enable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect custom-locations azure-rbac --custom-locations-oid $($ENVCONFIG.customLocationsOid)" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It 'Disable all features (cluster-connect, custom-locations, azure-rbac) together' { - Invoke-AzCommand "az connectedk8s disable-features -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) --features cluster-connect custom-locations azure-rbac --yes" - $? | Should -BeTrue - Start-Sleep -Seconds 10 - Wait-ForProvisioning -expectedProvisioningState $SUCCEEDED -expectedAutoUpdate "Enabled" - } - - It "Delete the connected instance" { - Invoke-AzCommand "az connectedk8s delete -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup) -y" - $? | Should -BeTrue - - # Wait for deletion to propagate through the resource model - Start-Sleep -Seconds 30 - - # Configuration should be removed from the resource model - expect ResourceNotFound error - $output = Invoke-AzCommand "az connectedk8s show -n $($ENVCONFIG.arcClusterName) -g $($ENVCONFIG.resourceGroup)" 2>&1 - $output | Should -Match "(ResourceNotFound|could not be found|not found)" - } -} \ No newline at end of file diff --git a/testing/test/configurations/ForcedDelete.Tests.ps1 b/testing/test/configurations/ForcedDelete.Tests.ps1 deleted file mode 100644 index ca38873dd54..00000000000 --- a/testing/test/configurations/ForcedDelete.Tests.ps1 +++ /dev/null @@ -1,38 +0,0 @@ -Describe 'Basic Onboarding with Force delete Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Check if onboarding works correctly' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $autoUpdate = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentAutoUpgrade").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Auto Update: $autoUpdate" - if ($provisioningState -eq $SUCCEEDED -and $autoUpdate -eq "Enabled") { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Force delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/Gateway.Tests.ps1 b/testing/test/configurations/Gateway.Tests.ps1 deleted file mode 100644 index 9948e326d09..00000000000 --- a/testing/test/configurations/Gateway.Tests.ps1 +++ /dev/null @@ -1,112 +0,0 @@ -Describe 'Onboarding with Gateway Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - - $gatewayResourceId = "/subscriptions/15c06b1b-01d6-407b-bb21-740b8617dea3/resourceGroups/connectedk8sCLITestResources/providers/Microsoft.HybridCompute/gateways/gateway-test-cli" - } - - It 'Check if onboarding works with gateway enabled' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --gateway-resource-id $gatewayResourceId - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Gateway Status: $gatewayStatus" - if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true) { - break - } - Start-Sleep -Seconds 30 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Disable the gateway' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-gateway - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Gateway Status: $gatewayStatus" - if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $false) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Update the cluster to use gateway again using update cmd' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --gateway-resource-id $gatewayResourceId - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Gateway Status: $gatewayStatus" - if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $true) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Disable the gateway' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-gateway - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $gatewayStatus = $jsonOutput.RootElement.GetProperty("gateway").GetProperty("enabled").GetBoolean() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Gateway Status: $gatewayStatus" - if ($provisioningState -eq $SUCCEEDED -and $gatewayStatus -eq $false) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/Proxy.Tests.ps1 b/testing/test/configurations/Proxy.Tests.ps1 deleted file mode 100644 index bda7b06e4bc..00000000000 --- a/testing/test/configurations/Proxy.Tests.ps1 +++ /dev/null @@ -1,65 +0,0 @@ -Describe 'Proxy Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Check if basic onboarding works correctly with proxy enabled' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --proxy-skip-range logcollector --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $provisioningState = ($output | ConvertFrom-Json).provisioningState - Write-Host "Provisioning State: $provisioningState" - if ($provisioningState -eq $SUCCEEDED) { - $isProxyEnabled = helm get values -n azure-arc-release azure-arc -o yaml | grep isProxyEnabled - Write-Host "$isProxyEnabled" - if ($isProxyEnabled -match "isProxyEnabled: true") { - break - } - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Disable proxy' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-proxy - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $provisioningState = ($output | ConvertFrom-Json).provisioningState - Write-Host "Provisioning State: $provisioningState" - if ($provisioningState -eq $SUCCEEDED) { - $isProxyEnabled = helm get values -n azure-arc-release azure-arc -o yaml | grep isProxyEnabled - Write-Host "$isProxyEnabled" - if ($isProxyEnabled -match "isProxyEnabled: false") { - break - } - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/Troubleshoot.Tests.ps1 b/testing/test/configurations/Troubleshoot.Tests.ps1 deleted file mode 100644 index c9cb4e26010..00000000000 --- a/testing/test/configurations/Troubleshoot.Tests.ps1 +++ /dev/null @@ -1,40 +0,0 @@ -Describe 'Troubleshoot Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Verify cluster onboarding process' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $provisioningState = ($output | ConvertFrom-Json).provisioningState - Write-Host "Provisioning State: $provisioningState" - if ($provisioningState -eq $SUCCEEDED) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Verify troubleshoot command functionality' { - az connectedk8s troubleshoot -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeTrue - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/configurations/WorkloadIdentity.Tests.ps1 b/testing/test/configurations/WorkloadIdentity.Tests.ps1 deleted file mode 100644 index c728b6a5236..00000000000 --- a/testing/test/configurations/WorkloadIdentity.Tests.ps1 +++ /dev/null @@ -1,239 +0,0 @@ -Describe 'Onboarding with Workload Identity Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Check if onboarding works with oidc and workload identity enabled' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --enable-oidc-issuer --enable-workload-identity --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() - $oidcIssuerProfile = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("enabled").GetBoolean() - $issuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("issuerUrl").GetString() - $selfHostedIssuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("selfHostedIssuerUrl").GetString() - $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Security Profile Status: $securityProfile" - Write-Host "OIDC Issuer Profile Status: $oidcIssuerProfile" - Write-Host "Issuer Url: $issuerUrl" - Write-Host "Self Hosted Issuer Url: $selfHostedIssuerUrl" - Write-Host "Agent State: $agentState" - if ( - $provisioningState -eq $SUCCEEDED -and - $securityProfile -eq $true -and - $oidcIssuerProfile -eq $true -and - ![string]::IsNullOrEmpty($issuerUrl) -and - $issuerUrl -like "*unitedkingdom*" -and - [string]::IsNullOrEmpty($selfHostedIssuerUrl) -and - $agentState -eq $SUCCEEDED - ) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Disable workload identity' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --disable-workload-identity - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() - $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Security Profile Status: $securityProfile" - Write-Host "Agent State: $agentState" - if ($provisioningState -eq $SUCCEEDED -and $securityProfile -eq $false -and $agentState -eq $SUCCEEDED) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Update the cluster to use workload identity again using update cmd' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --enable-workload-identity - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() - $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Security Profile Status: $securityProfile" - Write-Host "Agent State: $agentState" - if ( - $provisioningState -eq $SUCCEEDED -and - $securityProfile -eq $true -and - $agentState -eq $SUCCEEDED - ) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - Start-Sleep -Seconds 10 - } -} - -Describe 'Updating with Workload Identity Scenario' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - } - - It 'Onboard a cluster to arc' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $provisioningState = ($output | ConvertFrom-Json).provisioningState - Write-Host "Provisioning State: $provisioningState" - if ($provisioningState -eq $SUCCEEDED) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It 'Update the cluster with oidc and workload identity enabled' { - az connectedk8s update -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --enable-oidc-issuer --enable-workload-identity - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $securityProfile = $jsonOutput.RootElement.GetProperty("securityProfile").GetProperty("workloadIdentity").GetProperty("enabled").GetBoolean() - $oidcIssuerProfile = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("enabled").GetBoolean() - $issuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("issuerUrl").GetString() - $selfHostedIssuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("selfHostedIssuerUrl").GetString() - $agentState = $jsonOutput.RootElement.GetProperty("arcAgentProfile").GetProperty("agentState").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "Security Profile Status: $securityProfile" - Write-Host "OIDC Issuer Profile Status: $oidcIssuerProfile" - Write-Host "Issuer Url: $issuerUrl" - Write-Host "Self Hosted Issuer Url: $selfHostedIssuerUrl" - Write-Host "Agent State: $agentState" - if ( - $provisioningState -eq $SUCCEEDED -and - $securityProfile -eq $true -and - $oidcIssuerProfile -eq $true -and - ![string]::IsNullOrEmpty($issuerUrl) -and - $issuerUrl -like "*unitedkingdom*" -and - [string]::IsNullOrEmpty($selfHostedIssuerUrl) -and - $agentState -eq $SUCCEEDED - ) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - Start-Sleep -Seconds 10 - } -} - -Describe 'Creating with Workload Identity Scenario and Self Hosted Issuer' { - BeforeAll { - . $PSScriptRoot/../helper/Constants.ps1 - - $SelfHostedIssuer = "https://eastus.oic.prod-aks.azure.com/fc50e82b-3761-4218-8691-d98bcgb146da/e6c4bf03-84d9-480c-a269-37a41c28c5cb/" - } - - It 'Check if onboarding works with oidc enabled and self-hosted issuer url passed in' { - az connectedk8s connect -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup -l $ARC_LOCATION --enable-oidc-issuer --self-hosted-issuer $SelfHostedIssuer --no-wait - $? | Should -BeTrue - Start-Sleep -Seconds 10 - - # Loop and retry until the configuration installs - $n = 0 - do - { - $output = az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $jsonOutput = [System.Text.Json.JsonDocument]::Parse($output) - $provisioningState = ($output | ConvertFrom-Json).provisioningState - $oidcIssuerProfile = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("enabled").GetBoolean() - $issuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("issuerUrl").GetString() - $selfHostedIssuerUrl = $jsonOutput.RootElement.GetProperty("oidcIssuerProfile").GetProperty("selfHostedIssuerUrl").GetString() - Write-Host "Provisioning State: $provisioningState" - Write-Host "OIDC Issuer Profile Status: $oidcIssuerProfile" - Write-Host "Issuer Url: $issuerUrl" - Write-Host "Self Hosted Issuer Url: $selfHostedIssuerUrl" - if ( - $provisioningState -eq $SUCCEEDED -and - $oidcIssuerProfile -eq $true -and - [string]::IsNullOrEmpty($issuerUrl) -and - ![string]::IsNullOrEmpty($selfHostedIssuerUrl) -and - $selfHostedIssuerUrl -eq $SelfHostedIssuer - ) { - break - } - Start-Sleep -Seconds 10 - $n += 1 - } while ($n -le $MAX_RETRY_ATTEMPTS) - $n | Should -BeLessOrEqual $MAX_RETRY_ATTEMPTS - } - - It "Delete the connected instance" { - az connectedk8s delete -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup --force -y - $? | Should -BeTrue - - # Configuration should be removed from the resource model - az connectedk8s show -n $ENVCONFIG.arcClusterName -g $ENVCONFIG.resourceGroup - $? | Should -BeFalse - } -} \ No newline at end of file diff --git a/testing/test/helper/Constants.ps1 b/testing/test/helper/Constants.ps1 deleted file mode 100644 index 43006f78a69..00000000000 --- a/testing/test/helper/Constants.ps1 +++ /dev/null @@ -1,5 +0,0 @@ -$ENVCONFIG = Get-Content -Path $PSScriptRoot/../../settings.json | ConvertFrom-Json - -$MAX_RETRY_ATTEMPTS = 30 -$ARC_LOCATION = "uksouth" -$SUCCEEDED = "Succeeded" \ No newline at end of file From ae26c76d8f75712276d8c24128dd1465bac21eef Mon Sep 17 00:00:00 2001 From: Ashlee Nanze Date: Wed, 22 Apr 2026 11:52:55 -0400 Subject: [PATCH 20/22] add connectedk8s-1.12.0 whl for E2E testing --- .../connectedk8s-1.12.0-py2.py3-none-any.whl | Bin 0 -> 199944 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/connectedk8s/connectedk8s-1.12.0-py2.py3-none-any.whl diff --git a/src/connectedk8s/connectedk8s-1.12.0-py2.py3-none-any.whl b/src/connectedk8s/connectedk8s-1.12.0-py2.py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..344bd7db23328841fe25eaf086372e369a0aa5b0 GIT binary patch literal 199944 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

>!z@E@gEJn-=QAUTB_<@^IvIUA@+O>$DSz4M8 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%0A6Bbi0h{>=#W8!@(c$pORzS> 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 literal 0 HcmV?d00001 From f35e56cbc87f12349150d1e6650010b44f4f5277 Mon Sep 17 00:00:00 2001 From: Ashlee Nanze Date: Wed, 22 Apr 2026 12:05:29 -0400 Subject: [PATCH 21/22] fix version to 1.11.1 and correct CLIENT_PROXY_VERSION in release notes --- src/connectedk8s/HISTORY.rst | 4 ++-- src/connectedk8s/setup.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/connectedk8s/HISTORY.rst b/src/connectedk8s/HISTORY.rst index 7c209f920ef..9b7b245a0da 100644 --- a/src/connectedk8s/HISTORY.rst +++ b/src/connectedk8s/HISTORY.rst @@ -2,13 +2,13 @@ Release History =============== -1.12.0 +1.11.1 +++++++ * Added ARM64 support for Helm binary installation. * Handle removal of '--all' flag in Helm 4 to ensure compatibility. * Added Helm overrides support for Application Gateway for Containers (AGC). * Updated CSP version. -* Updated CLIENT_PROXY_VERSION to 1.3.033281. +* Updated CLIENT_PROXY_VERSION to 1.3.033581. * Updated pre-diagnostics version. 1.10.12 diff --git a/src/connectedk8s/setup.py b/src/connectedk8s/setup.py index 725c981a28b..76e54950857 100644 --- a/src/connectedk8s/setup.py +++ b/src/connectedk8s/setup.py @@ -13,7 +13,7 @@ # TODO: Confirm this is the right version number you want and it matches your # HISTORY.rst entry. -VERSION = "1.12.0" +VERSION = "1.11.1" # The full list of classifiers is available at # https://pypi.python.org/pypi?%3Aaction=list_classifiers From 2c5d937c1ef33113cf24e6a5978094d633846a36 Mon Sep 17 00:00:00 2001 From: Ashlee Nanze Date: Wed, 22 Apr 2026 12:25:37 -0400 Subject: [PATCH 22/22] update whl to connectedk8s-1.11.1 --- ... connectedk8s-1.11.1-py2.py3-none-any.whl} | Bin 199944 -> 198108 bytes 1 file changed, 0 insertions(+), 0 deletions(-) rename src/connectedk8s/{connectedk8s-1.12.0-py2.py3-none-any.whl => connectedk8s-1.11.1-py2.py3-none-any.whl} (67%) diff --git a/src/connectedk8s/connectedk8s-1.12.0-py2.py3-none-any.whl b/src/connectedk8s/connectedk8s-1.11.1-py2.py3-none-any.whl similarity index 67% rename from src/connectedk8s/connectedk8s-1.12.0-py2.py3-none-any.whl rename to src/connectedk8s/connectedk8s-1.11.1-py2.py3-none-any.whl index 344bd7db23328841fe25eaf086372e369a0aa5b0..56b45978acc9002b5367274137c44e293bc1ed55 100644 GIT binary patch delta 60496 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≪=xg+^x5EFR5*l;R#JIrG8eUdX`f=t5i92 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

s$=?c4) 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 F{tuXqH=Y0h delta 62208 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%0A+#j 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

3c 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 KI5&U~^Zx?mo3J1N