From f62b3e90b1b14ec4b80daa50b7b7a83b994aa028 Mon Sep 17 00:00:00 2001 From: gsadmin Date: Thu, 30 Jul 2026 17:52:32 -0400 Subject: [PATCH] Honor -ErrorAction, fix pipeline-stop noise, and correct certificate request paths BREAKING: operation failures are now non-terminating errors, so -ErrorAction (and $ErrorActionPreference) decides the outcome. try/catch around these cmdlets now requires -ErrorAction Stop or $ErrorActionPreference = 'Stop'. A failing pipeline item no longer aborts the batch. Cmdlets no longer report "The pipeline has been stopped." as an error. Select-Object -First, and Where-Object feeding it, stop the upstream cmdlet by design; the shared error path in InfisicalCmdletBase now lets pipeline-control exceptions propagate untouched instead of logging them and raising an error. Error-level diagnostics moved off the warning stream to verbose. Every Logger.Error call site logs and then throws, so the failure already reaches the caller as an ErrorRecord; emitting it again as eight warning lines put failures under -WarningAction instead of -ErrorAction. One error per failure now. Request-InfisicalCertificate: - -CommonName accepts the RDN form (CN=WEB01) and reduces it to the bare value, which previously produced a CN=CN=WEB01 subject plus a bogus DNS SAN. - -DnsName routes IP literals to iPAddress SAN entries, so the mixed output of Get-InfisicalSANList can be splatted in as documented. - The CA path sends the normalized common name to the signing endpoint. - The issuance path is resolved and reported before a keypair is generated, and a CA with direct issuance disabled fails fast with guidance naming -PkiSubscriberSlug and -CertificateProfileId. Infisical exposes no template-based issuance route, so no -CertificateTemplateId is added. Get-InfisicalCertificateAuthority table output gains a DirectIssue column (EnableDirectIssuance) so CAs eligible for -CertificateAuthorityId are visible. README, about_PSInfisicalAPI, and cmdlet help document the stream/-ErrorAction contract, subscriber discovery, and direct-issuance setup. Adds regression tests for pipeline-stop propagation, logger stream routing, SAN splitting, common-name normalization, and the non-terminating convention across all cmdlets. Co-Authored-By: Claude Opus 5 --- CHANGELOG.md | 45 ++++- .../PSInfisicalAPI.Format.ps1xml | 12 +- Module/PSInfisicalAPI/PSInfisicalAPI.psd1 | 4 +- Module/PSInfisicalAPI/bin/PSInfisicalAPI.dll | Bin 431616 -> 435200 bytes .../bin/en-US/PSInfisicalAPI.dll-Help.xml | 4 +- .../en-US/PSInfisicalAPI.dll-Help.xml | 4 +- .../en-US/about_PSInfisicalAPI.help.txt | 33 ++++ README.md | 158 +++++++++++++++-- .../CsrAndRequestCmdletTests.cs | 164 +++++++++++++++++ .../LoggerStreamRoutingTests.cs | 115 ++++++++++++ .../Cmdlets/ConnectInfisicalCmdlet.cs | 2 +- .../ConvertToInfisicalCertificateCmdlet.cs | 2 +- ...onvertToInfisicalSecretDictionaryCmdlet.cs | 2 +- .../Cmdlets/CopyInfisicalSecretCmdlet.cs | 2 +- .../Cmdlets/DisconnectInfisicalCmdlet.cs | 2 +- .../ExportInfisicalCertificateCmdlet.cs | 2 +- .../ExportInfisicalScepMdmProfileCmdlet.cs | 2 +- .../Cmdlets/ExportInfisicalSecretsCmdlet.cs | 2 +- ...etInfisicalCertificateApplicationCmdlet.cs | 2 +- ...lCertificateApplicationEnrollmentCmdlet.cs | 2 +- .../GetInfisicalCertificateAuthorityCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalCertificateCmdlet.cs | 2 +- .../GetInfisicalCertificatePolicyCmdlet.cs | 2 +- .../GetInfisicalCertificateProfileCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalEnvironmentCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalFolderCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalOrganizationCmdlet.cs | 2 +- .../GetInfisicalPkiSubscriberCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalProjectCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalSANListCmdlet.cs | 2 +- .../GetInfisicalScepMdmProfileCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalSecretCmdlet.cs | 2 +- .../GetInfisicalSubOrganizationCmdlet.cs | 2 +- .../Cmdlets/GetInfisicalTagCmdlet.cs | 2 +- .../Cmdlets/ImportInfisicalSecretCmdlet.cs | 2 +- .../Cmdlets/InfisicalCmdletBase.cs | 47 ++++- .../InstallInfisicalCertificateCmdlet.cs | 2 +- .../Cmdlets/NewInfisicalEnvironmentCmdlet.cs | 2 +- .../Cmdlets/NewInfisicalFolderCmdlet.cs | 2 +- .../Cmdlets/NewInfisicalOrganizationCmdlet.cs | 2 +- .../Cmdlets/NewInfisicalProjectCmdlet.cs | 2 +- .../NewInfisicalScepDynamicChallengeCmdlet.cs | 2 +- .../Cmdlets/NewInfisicalSecretCmdlet.cs | 2 +- .../NewInfisicalSubOrganizationCmdlet.cs | 2 +- .../Cmdlets/NewInfisicalTagCmdlet.cs | 2 +- .../RemoveInfisicalEnvironmentCmdlet.cs | 2 +- .../Cmdlets/RemoveInfisicalFolderCmdlet.cs | 2 +- .../RemoveInfisicalOrganizationCmdlet.cs | 2 +- .../Cmdlets/RemoveInfisicalProjectCmdlet.cs | 2 +- .../Cmdlets/RemoveInfisicalSecretCmdlet.cs | 2 +- .../RemoveInfisicalSubOrganizationCmdlet.cs | 2 +- .../Cmdlets/RemoveInfisicalTagCmdlet.cs | 2 +- .../RequestInfisicalCertificateCmdlet.cs | 167 ++++++++++++++++-- .../Cmdlets/StartInfisicalProcessCmdlet.cs | 4 +- .../UninstallInfisicalCertificateCmdlet.cs | 2 +- .../UpdateInfisicalEnvironmentCmdlet.cs | 2 +- .../Cmdlets/UpdateInfisicalFolderCmdlet.cs | 2 +- .../UpdateInfisicalOrganizationCmdlet.cs | 2 +- .../Cmdlets/UpdateInfisicalProjectCmdlet.cs | 2 +- .../Cmdlets/UpdateInfisicalSecretCmdlet.cs | 2 +- .../UpdateInfisicalSubOrganizationCmdlet.cs | 2 +- .../Cmdlets/UpdateInfisicalTagCmdlet.cs | 2 +- ...WriteInfisicalScepMdmProfileToWmiCmdlet.cs | 2 +- src/PSInfisicalAPI/Logging/PSCmdletLogger.cs | 9 +- .../Pki/InfisicalCertificateRequestHelpers.cs | 20 +++ 65 files changed, 792 insertions(+), 94 deletions(-) create mode 100644 src/PSInfisicalAPI.Tests/LoggerStreamRoutingTests.cs diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a66f20..a02d14a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,41 +6,74 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) loos ## Unreleased +## 2026.07.30.2151 + +- Build produced from commit 14c8c4f3845b. + +## Unreleased (carried forward) + +### Breaking + +- Operation failures are now reported as **non-terminating** errors, so `-ErrorAction` (and `$ErrorActionPreference`) decides the outcome: `Continue` writes the error and lets a pipeline keep processing, `SilentlyContinue` suppresses it while still populating `$Error` and `-ErrorVariable`, `Ignore` records nothing, and `Stop` is promoted by the engine into a terminating error. Previously every failure was terminating and ignored `-ErrorAction` entirely. +- **`try`/`catch` now requires `-ErrorAction Stop`** (or `$ErrorActionPreference = 'Stop'`). Existing `try`/`catch` blocks around these cmdlets must add it to keep catching. +- A failing pipeline item no longer aborts the batch; remaining input is still processed. +- `Start-InfisicalProcess` reports an unacceptable exit code as a non-terminating error for the same reason. + +### Fixed + +- Cmdlets no longer report "The pipeline has been stopped." as an error. `Select-Object -First`, and `Where-Object` feeding it, stop the upstream cmdlet by design; the shared error path in `InfisicalCmdletBase` now lets those pipeline-control exceptions propagate untouched instead of logging them and raising a terminating error. +- `Request-InfisicalCertificate -CommonName` accepts the RDN form (`CN=WEB01`) and reduces it to the bare value. Previously the prefix was passed through verbatim, producing a `CN=CN=WEB01` subject and a bogus `CN=WEB01` DNS SAN. +- `Request-InfisicalCertificate -DnsName` routes IP literals to `iPAddress` SAN entries. The documented usage splats the mixed output of `Get-InfisicalSANList` into `-DnsName`, which previously emitted IP addresses as malformed `dNSName` entries. +- `Request-InfisicalCertificate -CertificateAuthorityId` now sends the normalized common name to the signing endpoint instead of the raw parameter value. + +- Error-level diagnostics no longer occupy the warning stream. Every `Logger.Error` call site logs and then throws, so the failure already reaches the caller as an `ErrorRecord`; emitting the same failure as eight warning lines put it under `-WarningAction` instead of `-ErrorAction`. Those lines moved to the verbose stream, leaving one error per failure. `-ErrorVariable`, `$Error`, `2>` redirection, and `try`/`catch` all now govern module failures as expected. + +### Added + +- `Request-InfisicalCertificate` resolves and reports its issuance path before generating a keypair, naming the subscriber, CA, or profile on the verbose stream and in the `-WhatIf` target. +- The `-CertificateAuthorityId` path fails fast with actionable guidance when the CA has direct issuance disabled, instead of building a CSR and surfacing a bare `400` from the signing call. + +### Changed + +- A `400 Certificate template or subscriber is required for issuance` response from direct CA signing is restated with the cmdlet parameters that resolve it (`-PkiSubscriberSlug`, `-CertificateProfileId`, or enabling direct issuance on the CA). +- `Get-InfisicalCertificateAuthority` table output includes a `DirectIssue` column (`EnableDirectIssuance`), so CAs eligible for `-CertificateAuthorityId` are visible without formatting the full object. +- The README end-to-end PKI example issues through a PKI subscriber and documents how to choose among the three issuance parameter sets. + ## 2026.06.16.0217 - Build produced from commit 6318d06362ad. -## Unreleased (carried forward) +## Unreleased (carried forward) ## 2026.06.16.0215 - Build produced from commit 6318d06362ad. -## Unreleased (carried forward) +## Unreleased (carried forward) ## 2026.06.16.0213 - Build produced from commit 6318d06362ad. -## Unreleased (carried forward) +## Unreleased (carried forward) ## 2026.06.16.0207 - Build produced from commit 6318d06362ad. -## Unreleased (carried forward) +## Unreleased (carried forward) ## 2026.06.16.0156 - Build produced from commit 6318d06362ad. -## Unreleased (carried forward) +## Unreleased (carried forward) ## 2026.06.10.2018 - Build produced from commit daf1cdce6576. -## Unreleased (carried forward) +## Unreleased (carried forward) - Renamed prefix-related parameters across `ConvertTo-InfisicalSecretDictionary`, `Import-InfisicalSecret`, `Export-InfisicalSecrets`, and `Start-InfisicalProcess`: `-Prefix` is now `-SecretsPrefix` and `-ForcePrefix` is now `-ForceSecretsPrefix`. `Start-InfisicalProcess` also renames the pipeline parameter `-Secret` to `-Secrets`. The previous names remain available as parameter aliases (`Prefix`, `ForcePrefix`, `Secret`) for backward compatibility. diff --git a/Module/PSInfisicalAPI/PSInfisicalAPI.Format.ps1xml b/Module/PSInfisicalAPI/PSInfisicalAPI.Format.ps1xml index 34418a1..1e2bdce 100644 --- a/Module/PSInfisicalAPI/PSInfisicalAPI.Format.ps1xml +++ b/Module/PSInfisicalAPI/PSInfisicalAPI.Format.ps1xml @@ -38,11 +38,12 @@ - 28 - 32 - 10 - 10 - 14 + 24 + 28 + 9 + 8 + 11 + 13 22 @@ -52,6 +53,7 @@ CommonName Type Status + EnableDirectIssuance KeyAlgorithm NotAfter diff --git a/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 b/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 index 8f802e3..795e8fe 100644 --- a/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 +++ b/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 @@ -1,6 +1,6 @@ @{ RootModule = 'PSInfisicalAPI.psm1' - ModuleVersion = '2026.06.16.0217' + ModuleVersion = '2026.07.30.2151' GUID = 'b8a2f3d4-7c51-4d2f-9e6a-1f0c8b3d4e51' Author = 'Grace Solutions' CompanyName = 'Grace Solutions' @@ -74,7 +74,7 @@ LicenseUri = 'https://www.gnu.org/licenses/agpl-3.0.html' ProjectUri = 'https://prod.git.gracesolution.info/gsadmin/PSInfisicalAPI' ReleaseNotes = 'See CHANGELOG.md in the project repository for release history.' - CommitHash = '6318d06362ad' + CommitHash = '14c8c4f3845b' } } } \ No newline at end of file diff --git a/Module/PSInfisicalAPI/bin/PSInfisicalAPI.dll b/Module/PSInfisicalAPI/bin/PSInfisicalAPI.dll index ef4f494ba922f3601a421875dcf59e8a55d69de9..d5e7557a6b43b7197581390ed826387f88596e1e 100644 GIT binary patch literal 435200 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�{)4mE*>6b|x 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

;6o$^nrn}1Iie=fLXQ(DBYCbFrNv&NBv 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 Md#)9hfORY$dP+JkC`1(zro_Sz; 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

>ly&UN%DBtdaYKMEC3V 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 z zm|$>pIzGe*4aS(DjAwfoV2BYKj4?quhVhu797`Vq3^783F(xSAV2laMxs1mELyXX1 zj0s9V<1xSxBQzLef^r_?F~ATbG+*>5rRzs%FvbMs0v;Cw3^783F(xSAV>|{JVuS`` zOi(5>9s>+9LW3~|Q_^uEMrbg`1Z67Q!2m;y&|r)S2GiIcMrcr`^Y|EGh!Gl$F+rKZ zcnmPaWM;ZtBG$tILyXX1j0sAW@fcu;5gLp!LAj9e7@*9ej{$}lp}`mv3@%E?hZv#3 z7!#C>*&aq{FvbLf@ALQ=p}`mvluLMg3^2qP6O>C?9|H_A#ssCt`WRq{5gLp!LAi|a z7+{DI8jLYPnay|%FvJKA$`4o{0}L_71m$wp#{ff&(4btw`WRq{5gL>^td9YP7@@%! z6O_4(#|RC^m|!q3T|dMK4a$5T4+9J_LW40TC<_>m0frc%!59+^u4Ml(LW6P@kBxOJ z5F<1gV}i1f@fcu;5gLp!LAinP7+{DI8jLYPxsmZ0V2BYKj4?sEiSZa4j4?r3#`+kb!59;i+gTq23^Bq4WjX6(fFVX`FvbMs4#s1EAx3C0#suX~#$$jX zMrbg`1m&)De25Vmj4?sEoAoh5gE1y3_ppB$V2BYWDEG2H1{h+524hT6e#rRyQv(b! zLW40TC=W0m0}L@jgE1y34>BGDjL=|=3Ccr^!+1qnCn!&_90Lr|V2laMlZ?XvLyW%Y zKb@`@VuS``OmGJ|R?d^UFi)($bmaP5NwGUYP(6!5JFI@YPwSTepj)M;${Jp_H8JrA$fAFU39KFu* z>&#hajUgk4>^Y@2d5d zt@reLpRD)7`me74*81yiaP$U!8(hD^(hXkO;EfG7*l@cI7jL*?!{2T=Vxt{4+GnE! zHmYoN-bV8_x?`gsZ}h=NLxztUzSr<0hhH$fKK!2H&kp~?@OOr?fPbp*rG79dWFVI8kykK}Ve`qvcE;*)Lnj z1@a}CDO<^9vbA271-VJSEDhO4?v!oiKG{xwBwvxHY%fpC4)RmkNq(hU`-6N<-jJ_L zM|P37bj$DRmfx4%WRSPJY~<}BU-1Ij!P`^+6gyVF??{Qg@5l=8D1A8|El+#n ziiT-q%;Lnhg{F!o!f1#Y}&yxB6 zMY7PpSeE$TmplDS8+@?7RAc_Fh> zewBGv-pD*Boy_y{Ugnqbe&!|ld*)a2Y3A4RkIc*R&&(_0_q-~-J&CN-)0PoEugfMq zZ^%|Xf0FHbI`Y+?H)Z#pw`Gr>cVz#bzsNy7@5*<2-jic{{wl}!yf5XR4`fEqhjL-h zM{-He$5QM0o6PR{MCSDTUFP91Ti2E~-}X8i4;(*H zqj7Q7M_9Gfy~T7}={lddeb~gs?7nB|V-~u$`0E?{wKMYUX&Spnb?4oW{LY?sZ?AaJ zM(^~h#vKl}`G!x~_~KDE&aK$3YIAM+OX44&(r@wbk*kGY9^W(Uu+XRq^JyXKBhzx+Sf z@7}}DPqXVEceH)RcU@xF+;6_kht0Qn!)>=ZJJEdp_4d)0y7Rp1v80dFeZ8e))5l34 zIUU=5K39F5^h!t{t^3(b$FBN}{GUF;zg~aUJ?!3x`Mvf$tZq+MU31lKrN=dKpreno zx}{%S74QCwb&kB+J{RdD{5#M7^X_>(#$7*KyX)tEcm1UM(>;51&nhpUZ?BDe&UROn zn+?)uXTP)T71BLpoVWO6?WB*>{Rm6v>6^d2w#deJ_FP+I?`<}I%Uwn3O!9NLmGqI* znJ|5XbnE+_Wv|0|?y7$CnRRvS_aC#z{j&N7bS!>!OI?KJ!&T-H9V_Dk~ zxAaDr|IWqk$C-E43HmtQk5CCK+Ii-YvouZ{cfQ8+FPf@RhS_s9Fx19ZTuk?TVbgZb zyv6QG+Ii><+xhaz|La+J@^srd+P&i()YX6FK)cSmhuWnRCfK<1wf1qobc~G|x8^TT za>sRwjs5OjyZeki;hy)~-8Jw7_q>129bCyek<(s*?j`Z12pSA8Q@Z78I z`ok7f^>{y;Z)19G{Jqcim$}zza*xfw*Rt_`cYS`_U7y2xY^N_{|KVRovQ`5bg^zZ_WpB;9M#_s+9 zv3vH@qZ@pW-O5ZCuXpeA_qv##jkjDLyIJlv_bz$*srL1r9_cOD-l&h=?;>6QPwv(I+9h`B&V%e3=)P}B&-Q1B*`+s4wDIjHZR~zF zyXU3zn+<);V_Y1z;7-jyns4LbH{7Su`^h63yU$Gex?U06QQi4s*GcgTF}%{liaJUdwUt_zu7Jy|W_o58pJ>l&;I`YnpXt)H)BSp!aMf$NmGrpM znee~=YI#Su`0AlHCa2nX*(4hub@^#7f4KJ}?W}sWq_gX)Gk^O2_=bDk9ka+jU#Fic z`-}YcX!|NycJv_4KX&uOzV3B;-Zg`@lfFi}&rwz^LHgWnzqVb!dq2BhQ~SEtSNd8@=fL!lKfY#+ZZUoQf4zsRZudWLtDui_ zkDF=Jv-eYXPFA-MSvRM3ztYpsgXy!7zNRL)Ir*(2c5eLUP#e2n*F86FZ?|~%H#ByS z>dsevmjC~LN3b*DNAqp$ezpF;c}F;6kbMQ6@8Z=izU<KGR!`k11^8X#Z~91wDaG0&+ybk_Vx0; zHS9TD^<1T|ssA_kgx%*beTAOmX00D~&0VYRVft)d-#ALo>IF9(uW{IdlQn)c-^Rml zI8CGXlXEn7KYn^di-*}OwmY9S)OON-ny2rEhumQM>APX~KK$Rj19tDvn*$f<9%fcf z*LcH9(G7 zb6PsfrTfr5+x+=lduNr--rY-2bKeP!b#r6-4M4h1_j%}Ee|59ps_UnZ^IyGx+4I(Y z_Ez`)wY7UKbZ_OpD{s(q^6$TYrJoj~!S+0SHrB>L?%uC*sm%{K(Z1q-HExkU=A$lN zbEf^YSbNI$r#)_Czq|YWYU6fY=ayS-Y`D*iYq?qCK6ih+>bXi^3+ZRr^r}ujDL>=B zIq5#4@4EM$o!vX~688xrw~yWKNcXw8*WKq|d93ZcwU^!Jce_4Oj&XOkQ{A(?e1E&n zT6@|!d%&*w3wM|3udw-~lI>4*Gt8GCvH56sCtq>*;pzUT?|1*Z?+owNqyFOikcTv1 z^*h7vBl_Yy!^d>ZZLfPqU)Pw`3H+0@;cf9Xf|UE@CvvGK*R_8#x> zL+sLYopk+lY4;gUkGK0Z`0*;Q#8tm-&YR!pK3sdr>l(YiHSK=1_nxs^U)|F5n~m3( zzO9dN+6jNvxbuO3(>QLd-T(KF`CN0~T_NY5X&)!OU%JfQ!=LNsnHSwFC_Tno+^0q3 z`oD4eFHhJ}mtAbHw>RB2nV!QxxpUb4$ld2^b&u0Mw)-(xJ(KBG)IHaIaRz!0u-`SU zrLp%m8`H7pEgq)%s`KRPIy2podZ*i?ORtBC?$h*}XWR4EeGOdhu9Nhev|pTN*B^b* zCc3Tkn*4lFPV*UVPWy(t-#DdgAK{uuY<%Pfdv#?d+Sk{&9@ zG+pQ3A@=cq^SJFCKhEao?P>FL>(k+f+=_i-; zZtcfi-*P;$hCO>{t!ZQTHyfRUY-iPPHrhvbf3sol3ID6ls>kYa?L5dHWA`W4?qgZ9 zmt9(RSI(+OntlpfwV%1(j(XL7noF0auaun+ENlOQu6}wikv=2ob(^l4j!I+tZg}Ta z_Aw82uc@kwf4KED?PMG0XiU#fZXbI+r|*f~?~?!B?~Lg?UAnic{(Yq3uIgd)?f&n& z#KtfF(qZ2vk2~6S_H#?Cv+XmI{;lM>wd^aj`?*N3jh4F``S={WG`p`I+vqx<=`8*F z(hIb|x>x1BmrmEE@egNdOkY#ouciY_HSPDEF-K$fD}B{hQ}^tb9(y{Yc0YsN&u{no z-QVG-cRuN}oL&Rnub^~RNzZWl*Poe3*=Kp;z*V}3>EGa1cjk9E*q-4Z9b?Z@`q#kj zeOUEgB7K~V+=(a`aO$jZ3!+{cTHb^4P}2HwWda2vich-&;3%$*I!4iq4{8q zzWzcgtN9R(z6{kRo($9I>+h)6(R@9PzO1iHJpB#TP|Y{gC7%9{YF*8T>k?0YOSQh{ zo9Gfxe@nHY=9}sgPk&D}T=P--J1b9rPc=gGye{|jH&r7w-$IvrvZY2}e_1t3^Q|=c z`s=E^<^_$u{<><6=G$uY^%quKYW@|CzW&N;E6sP%=*zcsT~B|_RnUAl9pTCD8h!n3 z*LIo*8ht712v7FZ=*w8yQS-et`m(qFPRo;hH2Siy{#MJA{WSVg(%)-&`bG3EnjawF z(0rUmUk=i(d2+BuUw<#Qo92gU^yLWMny0@W+e7p3=+-QfpdPm;4{7xEcc!y7e?+6NzvsJL^G7xM@|YgCCy#6N^*4U= zH2<+iUsmYRd-8-vU!K&X_v9&!zWxUA8qJ^4=u1nF-jknb^ktTfhW&t z^yO!I4m|k}jlMjuXTp;gH2U%jJrkb1sL_{S$`Z|A(&+1N3zusCYmL6Vtmng%S2X(a zs-6!|eyh=!-|1QLB+=+gTYshK$?rA#@|vC-Pk)(sx8{G;bK}YD8h!np;(eO`Nuw`s z>bdds7mE*Q{X}PK+ljTA8PdF zBRxZ&e5}!zPxK6V@^_8Ce5Pl}lYeOR<#Rnlp8QjzueXLPHTN|7;(O0(uD^xTyvO^Q z=DiwqPV=7Ed`*oyr+Giud@YSSr+F`GK3Jp9Y2Hhk57DS|n)hqXhiTL~&3i@j^)&jj zf%mHB8*23Rx0t`ve7HtmHul<@kI<-dn)jOKBQ@%r=KWFg%{1zq=DneLPNU9gUPtrM z8hsh#y`}jU8hzQ)dq?vxY1BE*`-|oUjlO)@dr$LiH2Siw_rB)aY4r8CpdV_!y+&Vu z6Z)~{J8Jaxx1pbCzLQ2@cJ@Bi{A(J0`MUQH&3DnL^PBfi&G*!(^P8vtlf5+P{N`me z-$$d)Z(gtF`)Snq&09nB{Wa?R=4CY>r_tAc`eSX)57OxCKhLp_=7(t1xy~D^`C%G; zIow-U^CL9+a-_Gu=HJoi%hBG3nvd7$>p#sfT=Qc!`tn_GgyzR-^yPSOq~<4R^d869pRLiCbG+>|KUbqK{oeMPpQq86^SvE4pQO>33%s2)|DHx)CVOAge2PY2rh2<* zK24)9)4gwKK0~7~GrezV9%z z>b&Y5uKD#EeOc%osrd~WeYw#)O7ojE`ud+mjn~|0)H&8WR`W#~b&mCp(|oZ;onyTd zG+(Mw=UA_-c|)VlvEBsDmud9%_r@n{zFecPzdP>J{7#KJ-+C3z@7Czcz20e>|4^eZ z_jzY%e!oUv9`Mf6{6USr{$~j1X#TK9Umo%LHUE)DUmn%p_j~$F=JPdw+`B;YSfejL z_9kn-LZdHFcvCfhQll?VdDAt2TBEPOb)KntOQWy9d9G@{QlrkX-Ym_Z)2MT-cd_RG zp;6~p?-I>l(CEw0y_)8~(CEvH`d=7$@=J}ryyRW3`L8tU9P7=|{1uJ9{+@cC=C5k> z<+t7f&3~uSm&ChD^R`A`e(znQ`D+?=j`gn7{B?~w$9fAj|C2^ve~W#i=5K2B#=W=0B?WmKyc`&3|0;tu*Rf=QlMkXwv@LAEr^~I{yvL$7|HN&hKb`tVW&d{I@hePNU9s{yUnV zpi$>K|1X-CHR@dFzo+>GjXKx)?`wXtMxE>Y4>j-8sB@kFvE~(xI@kH1XnvYTUrzTw z)%*;NzMSd*L-VsV>iwkuPtDKKsP~h;=j;8XM!lc(Gn${TQST@HUd=DisP~ip8k$em zsP~h8R`aPE^?uS{Tl47}eYxCUNAoK*`ZC8Ks`*@vzRdI2)qK82z4!Ci*ZfM2dhh3N zsQJ|z_1@1PuKBeZb&m2!Xnws$oul->+|fBoqs~$OW}4rmQRgUsl;%dG&QX3|^FKoC-isH{639(Pw0P5^9MBQJ)ysg<_~GqdqV#knm?jZ?+N{HY5u52 zy(jc{)BJIbzQq0>nm0A-eB~E4U!hUwD}Su!PioZp%HLb_r#0$)vbxhY4qhE{`s1Ju2Js;GZ$#?Y1I3`%w)|o8hz=_Ox1jlM!gTrOxJu( zjd~xLnW_0&8udOfQ`LO1M!gTr%+h>_M!gTrT&(#pjd~xLxkU5zH0o#DOil9*H0o#D z%xuj!(x{(pGnZ?=u|}OIGjlW_snM6sGV?UwT%+CxW)^6k)2R1>nX5D(tx@j-GuLRo zg+{#(%v`7Wmo)nN-?A*!d~1!q6f!qz{$-8&IX82&=G$u2&$*ep=3mjM_ko!K&3DwO z_ko!un(w4h?*lVSHUFAMU;n$9hUU9!^yM3wWtx9eqkb;VEZ6+o8hzP4bEoEeX!Iq> z+^u<0qt26=do>@cQRm6beVXsBQSTKq4`{xhM!i?eJf!*l8ueZ=^N8l-H0nH=c~tX* zH0nH=d0g{DH0nH=X=;9$M!i?etkC=jje4(`c~bN5X!PZ%%+s15tx-QCXIh#cqfzI* z%u3BG8g<^wJgfO>8g<^w{7myRH0r$fKX`i=I5~>z-oJO}{X!Np7LQ<%3C5TpEFK07 z2Cr5R7W7!O5&~l^k7j43v1WIcnOTW7A(#+C2*H>TE|<$CT*BpYx%>%#{)7-h2qs*D z0253wAp{eGF~%4ZObEe*5bpP!s_w3y?pYBh_b+|+H@`YnT~%FOed^S+Q%}NMAbKzL z6#Q%uy_b3#-T~2jsb}CbAbKzLEPMxu-b+0Pp9Rr-spsM6g6O@}3-I$m`q8Nu;pc<& zqf;-zF95OkQZK_V1hMy0ufQ(?vG-E1!Y>A~_foIHF9EUlQm?}=1+n*1Z@@1DvG-DM z!Y>E0_fl`cuK=<4Qg6er1hMy0@4&ADvG-E%!mkDg+2iyc{2Fl3`!A{Y;n#xnsZ$@o zuLJ2*r!e=u>%l?xL#5z1fP>!er84jv!9nl8r*iO{Ky1HM0e&-x?UyRSZvnCWQWf~E zAhus>9{e^Cy_%X2za2!crWU~O0MVYkO=+)Fh_+21+HMJM~ZVcR_5w)KT!i0( zaL{`$bsYSAAbsuB=iz?~qDxaJ!v79Lm!^i`-v{Yyr-tD_0I>s8%i%u+u>(^p;XeYg z15+dLAA{I|sZ-!T0nxYYYenCJ=-bp<_)kIfZR%9`KY-}l)EN99LG*2E1N@&r^lfS* z{Ab`G``XTczX#IqPMryV9~@+l+gWfgeHMHmy$L=D4tl9{6`lssx9J)@3l4habRAv+ z2ff|WTj2A+LGL5!27Ep^=Lc8z8HQuh|QV41b!q)pE`Xh{AduHGkqESSP)&Bz8ro$h%QZE0Y4EO z^uCb35FeO9f#}2Z_3+a{^kMo2 z_!mLO4AVElzXT3?XQgj~e;FL~Hl=Tde+3+5ui-85&ETL{OWz6~2M4`+`Zo9kIOuIj z-wxjj4tkCB9q_M$gWk6Eo$w||KRSIEd5)^yBbLKy+#P3HYTTx-|VH{4x-`H2oC(n;>>+`f2!YgV?3%XW+jBqCeBm!mkF= zpXuk|*MR7#^z-n$Ky+041^C?{Ix77l{2mY;m3|3+FNp1zei?ori0zkt1%5w>?U#NP z{s4%+O1}nw5XAONzYc#0#P&vHd`7zjO-z9Ek0g&cL4s>9?kH zaCVl$|1MpCzX;NAO_$&=f!KlR3jAddJ1{*D{t7tg{U|*j{wj#RN-u!_1Vmq@_kjOB zh`vfMg#Q#oU$Gw_eFdVg()+;w5kz05_l5rxh`vhi2mcv}zDh5GzXzhP(g(ob2N@?! z9|->dL|CuIF?bE6FPYf@uY>d@GaKPsKy0ea8Sn;(O_ezlz752t%A5tC1hJ_yo8T>wakESn z-UfNEGd1`u$a|fs!_NhIuQOZVzXI}JXBzOYgS^+7ZSY?Od9O2*@LvOYuQM(9uY-f$ z#hJ6=zX1+2GE(g#TBN{$}PP`0s-BH!~N*{~L&1l(__cBZys;xfFgAh+UMq z41P0+U6i>TehY|Ql(_Reg}wMl(`0eCy36;TnoPo zMCW9#gWnA@CYHG#{>LC=VwoG@e*$6`Wp0H3DTrN^xe5L)5IvK*8U7%Mp2^$-e+Wd+ zWNw8&45DW;x4|C)(KDIb;g5mnnamyV$3g6w%$@M>f!H&dyWoEdV$WpmhW{OiJ(IZy z{(TU8CUY@)B@NZ&B~EW8NPH_ScUpeI5RBkbYwJ4fy^b{lx5>@K1n)-T~RS z;J*lB&t%_*e-gx=$-V>s6i7cY`!4*`ApOMbd+=WZ=_h92hc5=156yl6{|tz2lVynC zI~>He$)?~(f{dqSGw{!X^ck}`_%R@T#%uxpIS@N1TY?`CqBFA<_z567GdmCd1rVK? zoey6MqBFA#;LAXCW_Azw3J{%{T?ju3L}zCAf}aecGqd}^SApov?7r|dAUZR;drgAbK);ApCR?J()cS{zVWynLQZ(B@jKCJp}$`5Ivba6#f+u8!3Aj zd^3oRlwATJ2eFZ|N5CgQY^3Z_@U0+vGJ7<98;G9F9t)oY(UaNZ;4P58XZG{(vq5a6 z?1}IWh>esTg3o~1NZDcd4iH_MT@IfG(WTjy@N+@>p4k!jc_6wpdkXyPAi6ZW8vd&w zx-`2M{%at*Go0vZi4>~$OvAx3ja?aBY4>w{6B;AG_!U1wIDss>=yWSAU(}&1AaZos9km&{P(~? z@5byT{J(>Y+GSht{{b>;mpvQ)KS8u;wgbNvM2lu;;J1Nj(d-WR?I2n-I}5)9M2lw6 zh2IIHMYHF@?*h@H+4JFdgII3a3*h&FSZ>)1;rD`AZrO|A_kmb$*^A-#gUsY+FM1k#!ga0{5PcwTtd?!dxGkXR6QIMWy_DcA-L3*0mtKfeD($mad4gU^E zPcwTB{4YUzn%QgN-v#MuX0L<)6-ZArdp-QGL3*0m8{mHfqM5Td!oLTinX@;+{}x0u zXK#l89f)Sm-U9zVh-S{-3jYC!X3pLQ{~?HG&fX6H5r}5a-U0tHh-S{-3I7R*<(9n* z{`Vl7IeRz!A3&_N>^<;*1hLk#_rm`P#9GVV2mcv}X3pLZ{}+%EyzB$;e+B7XW*>xm zxd-6`xrg9`AR0UOFgy*Sv2%~WvmhEf_ZU16qOo(2!;2sqJNE><45G1fPr`Qt(b&1C z;2#0e*tw_SyMy#PbI-u{0O@t+o`o+2(bBo+;Cq8;>D=@1UjWh4xfkFc2kB|%UW6|K z>1pO(f*$~)nR740KMA6lbFaWZ1=7>Zy$U}BL>uQ`gD(cr#<|zwp8?Uvxi{d4gJ|R2 zoA4t+v~lh&_-8@1aqeySF(BGF_YVAXAlf+hF8p{9ZJc`#egcR#&b<%+0*E%weE?qy zqK$I{S+p^THqNEsD?qeyE(1RaL>uRF@RLEbajpPg1)_~}CHNW;ZJevXN5MgFU2YzH z3}lr{Za#bi$SRlI0{BLd*^t~G@H0SWLvjn@XM$+s++Of6gJ|R2KJc%AXye?z@Xa9F zIJX~s97G%E7QrV#tk&EC@CJxB&K(Hf2BM8~2f-&nda1dC;nN^iYwi$u8)UXOcPP9I zqJeXV!FPaY;2dqEHw&VHb4S3>1<}B{qu}R(jQ-`0hMx~I`jqI+{|;n#xb-rTA1>p*mGZVY}s$S7ZK1N;UMYc{tLej|uAn>z!36NojN zI}?60h&7u#3w{fT?#*q2-v*+4b5;25Ai6hKgWmz7dvkU8oglh5w*`I|i0;ib;CF-Q z-rP3$Js`R_HwnKNMBnCG@cTh}%DJ=Q4}e&(xeok65DPXp1Ahp_g3axKKMZ2Q=4RoK zfLO4(bK#GHSg^VC;E#j!lym39p8)A8=PrOh3DQ%}T?l^)q^F#_2>vukPdRrn{27p* za_$oNvmia?+@qHl9o z!+!*#Z*$kce+;5;bJxOu0-|qo*TMfDq^F#_9{y91RW!L9;BSFg#km{dZ-ZFHxtrkc zfP>!8ayP@@1?eg0Zh^lC(o@de3V$D@r<}VD{sG8LO8$2E0LV;A{tkEwWJOK>PIv|! z^s@Q8;5l&6%jfTg7r;TUn7;>J0vY|w-wUsRjQ-{CgU|2Vx=T zKY*_X8CA%$pvOB6#466G;9mmK!}$#S%OH9A^l?*(sz=;Zu9@Gi&-oczA< z?I0^~^83Nh0a<~QUj+Xe$O@eN0q|c2(Y^Tt;TMAF-uyxEi$JX3{K4?w0I`1ahroXm z#QM!23jZyTk%atV@Napay;s-)FN4eu z6lUT3fXogQ&V}y_GCNQ>556CW%~m)cz6iu-D_j6S0AzJa;X?Rfma4}~k?$AIXE!d39k zf#`?A)$rp%^h4nq_z58Tp>Qqy3m~(uh3nwMAhWK8>*32mR;LthfUg8uol>|FJ_2HQ z6>frW0I|CYH^VoA*jiWXM(IkDclA>3uF~a;db~Y5ZkG62YeEwCtJ7^ z-U8{#7Vd(d4bqb>+zs!5^kfV7z-K`0sKUMQ9Uyj8;Xe2*h#gh9AAT-~9aVS$ejbP& zRd^77K8PJvcnE$0$h%y47=9thyIgn#ei4WrRd@`3F^C;icpQES$mn0;3HUcbM)(U) z!haj&-7Gu>zXs&pEIbXr7UbP5JOjTDiy(GL;RE;&K;6DOc&0EO8UjtdqTgbs*2N{to6yR@w^z{lQ z_&J|ORV@c{U~An$weK=^(j?|bne_#%+^ zy?8ME0Fd{+cnJJJkoUcKDEuIh_q})+cyMtEl23zJ1;r!4q2f_UmV&g=#iQZNK-%cy zvG5fjZFKQC_(>pbbn)}>lR?_(;)(E8AZ>JU2)+iSjV=zuM?u=?;&S*pkT$xw622a! zjV_MBPXigzDxLyA9b`nSxElUNkaoGa7QPvzT`ryq9|vidi(~K!kaoF9Ywv9ZX_t!| z;a>%5my2h>n;`FX@l5#HAn$eYEO-axy)JHo&w#ww#VULU$a`I^!Dm6<-(nqpKFIr9 z+ycJ<F2GS=g&cH7R zX_t#T;8%dO%f(svl_2eM@m%;-An$weJoq&r?|AWi_;n!fc<}=G^&szf@k00wAn$nb zBKVCU?|AWI_)Q@1c<~bW%^+=Y@lyCLAZ>B+GWe|^ZE^8(_-!C<;);Q9^mmHa!yf|a?-Xx< z0skJzI8yOW_}_wzBNgw0{~d@9Dc%kL0f-JM-UI(3hz=><3;z*F|D|{z{3js&m*V~K zzX$2R6d!>96vTcgJ_vss#C|9~1b+v_ekeW+e;34lC_Vyz55#^bJ_dgu#C|9~4*vke zekeTw9{}mIl%9mAK>94Dr{EcoK1=Cocn+k`QhEkn0O_-oo`sh{`YfgA;1!TQOX+#| zJdi$1=>_z6XeoD!mL}2%@7(ufX>L(NU#W;roE-sM2fjeL-|o z>2>&iAUdk_27D2Sjw-zgKLA8WmEM9M2%@7(Z^I7)(NU#$;0J@)B&B!Zhk)25rT5^6 zg4iLY_u+?w^jS(Dz>fs!vy@o4?|l};CMl)h$AH)&r40Od5IdxlgP#Cmhm;ENFM#O4 zQVG5kL>$oNm`Aow;A8>VzH zd=f;zl@5WQ4Wi#lhr&A`daQI9d=|t$DJ_AY3u2#?j)0#BqTfnK!OsWLZ>6K*7l7!u z(y{OhLG)YcIQT^%`mOYN_{AXlt#l&%5)l1X8iHR6qTfox@XJ8-TWLA`auEGiS_!`b zM8B0r;8%j^x6&!_t3di4rPc7OL3CYdE&Lh~+op6X{8|vbR~my~2cq{%8{pT2=)KZL z_zfU>uXG0dMi9MMIum{qhz(OZ3;qWnEAva6;C~3RGQU)X{}IS6WT^)KV~|A{~5^md1(^&OD*`HgV;-@v*9~I?4?o%{wRpO zRGNW*8^m5J?STIU$hb{u7XB2-xJ~I?_|qUZQt3SSGa%zOrSsv>f{fdgE`UD=GHz44 z5dJ)fy;Qmg{sPFVhSJ6Gmq1oElrDk446>4;bSeB*5F4p<8T>U68>w_T{B;l;sdNSW z4Um3Q=}P#UApNG&Rq(e!Y^2iF;Ll3efFG2uMedcag%6akgAaoAgUZ*#(;)qz@(u7T zNI$52BRmh%4=UdTFM{-g$~VKyAmiTUTj0BajC+@Fg?|KO+`D`me0LBXRlXg*7l@83 z-vQqTL`RkHgzpQYqsn)|_XE*O<-6erfas<2J@5lT^iug=_(33gseB*&U=UqYz8`)l zNdKt(0Q@kJRjK6%;YWb8HkUmlQY4`}piv994@KeA+Z&mqO_-c?Hn&s!B%YJ{JA}h@DnG4*npBomT!l{2>rKt$ZTg2>eM9{Z>8&{uGFQE3bw>4Wi%5YvIp;=(qBz@Ml5vTX_ur9Eg4^Z-74! zqTk9J;V*#n2g_%`Uj)&0;buEAde(R<}O z{B;n$SKb1D14QqY8}K(l^j>)z{4EfBuRIBV8^qo#x8U!9Xu|T@@OMFMxk?8<0AkBk zX5c9hTduMLo&mAtDzoq$h%Hw+7hV9d*1dPvE?c^zz+wp zBCm; zfUf|t-zs;)PX_6?R_=nY0Dhc`{Ad9 z^i?Ylz`qDGwp@7-{$-G{<;p|wuYmMnD-XjrgY;o5kHE)4`mL46;9EiZt(C{&Uj^y6 zR-S-2LB^9SPr|1_#*-^g!KXpSlPgcd+aTk~m1p2xkn!Zov+(U8&PiZ-R_dRo;aEHpu#l%3JW?0a;T~c^m$pL3Tw|-huxYkX34x zcj5mPWR+UwJ^1f}tWvAI5C3l#H0a%4Nr87%G9^Z+K&-n;4*mxq)?K9l z|3eV#u2O>k5r}nHslfjj#Ja1@gZ~MLbyt}W|5Fg_uCf6BEfDLjvIqRnKr~@xA^af_ zO<36r{xFCptn34S1Z1SEvM>0TmHoh{D~rItt{eb9S2+;;_-+RgazBuFYPW;oi$LC~ z-41~t05Yeu+oAAJg3Rgcb{PCqAn(_1OW>addB1i$0{%-Nw#07qe!SzrLGSq8j)s38 z#ID%wSon$HN_NM8pWW$uv7`31f!e@V2fj1#*8?vM0Cn3}qh5d^__(=7Y@9*)L_sv%i}CNN&&E{<-6FD|3IE z`$=w({CC&yGJ4+ucf4tnNoL#x4a!2Lv%6BV=&p%;)d;Ztv|LXkv=6`$scjv#j`>VUZx%+1q zY+dkI3zmNLzpZ5ISJ^#m^zrW`zdk*Y1Z?DE)?Y+kK z{?gvt_WrHCe`oLO_WtqSpV{ZDzwo7fzqaoM`)>aDMf-na|L^br)BTH!zPjkvMd`0| z#$0ae;Ika}ZvK5U&FOW%gWtuU_}Ef$Rvg*UpU7_)ryK4IpE&K$MV1n<|3*IXSCc~L z`2v2|ed5#qOPrq`*qz<(OW5mv96Q~QW1su+>~cSzJ?_894)+_`-~NZ}Zoiwo?SID3 z_CI4^`-ALif6zN-;9>7r{ysOblW!yK^o}2RgzqCg;+?<_{1XR$@7$?%9{K~y(`l@`3lfZ z)`ai$-sSJ0%ud!D?_|yHPS(0U%Ic{{S+}&4)k8bIpJsP7I-y`R3ObzFDdS~ID#eF`1|IfUQgZJ|H5P$#5U;ZN-2Y2IdC4Z;#xA7y7dQJWw zhQG?+Tl~GtUw;0^!QJN%d(HWedOLQfTz22--NfGmyAONM@wa@zceE^qa|frFFL>0e zeQc+9(Z?S3F6H-ser(wLEB=0e;iKN6d+zks@A;_rMSi#MIqZFN&!2sCIQO%UPVD_1 z@0fjlyl^=8Oi#XJ6l+NMp*8lCB8b#}N}?Q{=rim|~+TLil zrX~qx#mmo`Znb^KhE6?rl-7S^yV0$WPMl+%y|?|DO-tf6WQhu;1P>RM^h6V`IwH90 z$mFY3+>OI#;aJ6p%S1?mYjug&Nsz5=Z&|#wH8WM49j;E;+P}bh8=#? zXJNx*zj*u!$86fvY}KmG4k=G{k2u_0!KGh0+&iT{tFPo}wb8~ovaF%^UTx3fI{m26 z9P8A=!##=H8zovVo=uU)GwO%kuztlcUSggXODb_Ml`bDY{HUXr94pGiJAQR*e1;cR zlOE{|4{2&jhCM1}ccRsv99ia#j`6e_9qM>0TJMYXc56ku zUSB%4ew{bkZLe>c_g&qT9`BtItZy07dT;FpZ@Xx%O`A07;i@Lg&+6(lIM&!QDkD&5y7ON15~*;T5VSm)Z1hA?%Kw9E&gbvrY$BBy}8ku&CN#5FX8ZY z=qz4YpQ^XJMsOtxa2qeUYY0B6Q5fMm;;dVV5A|lWbt*I$=gB#0mR3xER@jkAdMzx4a33HSn zme8ozM!Vh#!$kxVVqI0LS41pNKS3;^N5;*2F>WiXbq`k|;?Ltnx2scPahx?j$i`NC zTW7jjtJ`Z`w?@%!O*ERmFHMkjiQiajrd_LtGOedQG70CrG10(@9<{J33`0*x5_Ych zZ#lfk-upUgD~az`T7=U^i3_3F9F_4P^Yqpn|QPBe~>T(e=S zarTTKEO5;DQVFuYy2ak2VO@2L&rof$PK}&s_yHmU4Kdw_25{WsKZaox2@nxTh~=Gb zB!KG{f0Vq3u2U2K4;q#E&;E7rBTZg9tGb5NaXe9a9( zR$P&U8k^bNBh|VZm&PRP>YY||d%frCRy+w*UZ@c5t@X;Ld%}#7&n_k#8gsZa%|(*e z6|LrYy}bs#ytZxQ=@CstL&!x`jHo+t$A3*bT_SY|_g6=fZU zvaX40v$?ri+s1WP!gZF(b*A;Smjw>ZRkMNWv_8YWLwuZKvffdNQ)KvS?ow!ofRF6on4^`E=Iy$8jWIf44mhP zuAM3MrL%ZQkkJ+|vp6JMfkS*8r5DI0P?EeB<}nD{6Nl~Hbp5oPXk0J3YGhn`JwZsv zxqd6H{To-8jAW&4IVVc$H4oQ!6mN)C$#ir8R$5i)?C1avE zZn=!U(eiWXOOAUhgIX2Js^jCEmbcrjw%E;d?d!Y&f>_ z;z6Xx5|<8F<1*i1kNZR|{J6hs-N$`tT0}2njK}?4%RAB6H@oAWuE`zub2 z`1n0W+_a8|aqZ{0Z`_!UhZz}<%fyb3OGBeN?&lcOaZhxqv8Cf)J%)8WfTRBA zh{g$(l=FT@a6GwWi#Q(6Niei@%_aK!>MhALRBK7Tfj&#}#O6y9 zhX!pt{}Ed@?j72$alfdA8TXHwu<; zHP7O{YN5r&zBv{5aT5JdfgCF<9$9E(#r<46D()MYQ3+n5#T57St)RG1s4K*3iTj5N zA=y7r3CZ4$VH1zrnjUeFQyNnVSy{o5Zh{z7U~4NuZYxJWZ-#aoK=LA?Ad**0iXwttDPtgPDA7VA#*2GIA z_DtVUBlHQ{%g>RSEJjZH2J_3QZvazNeZ7ab(qXPMArUWRGm*wToJ^#}YSB_^a*})_ z6~DD(tUH_JDOE2X)o?Xg&a7h><9nvjp^uduYt)#-Cx6NQlMg`pu0YO<$oZIeAs zdz zC&aaWHc1-1M#@VO^t4CS33#5k|5QdaTJ{>W7vTgzd15R z3o_keNbDuh+=&!S?-up3F%U-Xf0zM+8O?YQ2s3DoN@V8 zCVsuB^@JSTSGkX`S)LJ7<)%#gd-AyE402k-f7ScMAp;h3#=y|dOuNIFPy9xQXWB{P z<+VN@G{|EN_rxP&*0!(Ts(N)Ieg&PQxG*r05`Afo&Gbq9!ez6ltVS)+6sxP}jH2VH zD)F#m+Zxl$tDBe7mL~e^@MEHnT)BFt*=;mwBl-thzHNqKNCqAg5?{N$-rgb0K2V$5 z04L;+nTNR4Hn-AOjC)2#IFf@zx{}F3#_H8}ZEHOC(P}qAx`KJkWFJ!-`}nCzI#-Bg zbtxB}ftoAWXuBcfqtv?OghaXu+bb#SQak4GCeD6WQU&AXv!R_JT#BYm^pHyA=%wMU z_1d<0oLWhB2p9vkPZ-}AAL=Y)Aa=6aj7P&bvTfkve(RYDOt{31aCfs4$y2* z3aR}wxfQwBaUIo43T8St(hukxL}Tjf%c?GNnvm78I_j&vp`G9rXae69N(?2v*Es{w zeVxQq5@KlLK|yiE`%! zOG-U3Hinv8SSZ)sns6(!WNQv@-m^J;14Bnlhfv*zIMoZWGa54(^j6;7-x1X z9z@nSb~B25;wYr^dTUMQ6Mm1Q^lo&ebTqZ;`V^$@_eT+@g*IN|daCN$Y3bP9< z;!(Jx)p6gRvFgMC(#M=T7CXk*kr6~$+1jrN+ANnaYAvydq`_^sx+ItA?P!g;LbW=q z)JS?>tFWv_`}$%Vutq`$ZQ`Y1Eu>wAk&>D-j7-Lv>STIN@stA9w7!+-sfsDdPuiRK z6>`sOW@NE!+>a)Xu2?@`GyI=$70Zs-%7cu1g+_xk?5vfI2k}*F+{d3*#rC6*824W` zW0oU{S+=ykwYt60N(jZQN|Km<)zo;kJ+4EO@wlyd(8pK0u#Ksi`r4^}0Xj)JsdnNC z$;4!W*jBGZKb>exxW*aHO1#drMTuTPS12J`R4hehE?!rksJH8k7bk?XZ4IN?bpESN z>3g&r<4GZTUOE<=5J~S~Y(fyH)zaCIMp6<^AghA9iQy<`R)8k^Inzo0;ABE}?2}6H zaq`eVkS(=!t!C0~*g=3Hc>$!CvR#Kc6Vft|N5Dls@!M#cgXBI0dGkOmbx*;|G&l6@p0hLaiY zU(rmA**B?l^=3lKL@OQM1Rtk9^$8Ies0mk-vAMiij+k(fT>&}ncPp$_mJrfW9tpl~ zW1ryNV>2X&unP_oJWpa}7g{5(98HUp;IVwN+Gw);OAN&LWh2vly?7C&Nlv)Pyg>;b zYQmYhITk-8UAnA3QDvYe;acaBC-{y`%8s2R4>RD|*Ixz&XA-W9%t!SLWScfwP}kYY zYSd-b*@UPxlv(Vb9Dwd-vWL_6Hl;Q)l^ifwhZKK;!6Kx%SFi#p?iIQHp>8}t&+4Ig z046;rs|goItcA5Y#}dCdRHpqxjL6=Sex80BW|>^yP-ccFp1Q5saSv0mqGF1KfRsI4^bldNVjWXAt@W{+Q#O;be1KYbr69>$hUT>%Oyi4u*&3@{Nq+%oWg@ zEW@mGNGhgqT&Yh89q{YpXEy8g@iY~#kLS92x6Q7-#5}E|+nrDxx)SM_x}h>Q$-*#QLNa}4wRA;y{DN?6tKUhIjfL@WzFKf}M{>ZS z_7*luPIZ%gDODza<_;rcu;ZwocqV#>Y2zXMY#Qwq_g~f8($DMU9SJE8b;A9tu_qua zVrai+;>q}Hi`cgp_tXc>*m07dYhLvWU^*>{zOjBwVkj}vl0A%8PxK4g)A$XUwh)c0 zD>dT&Og+Sfesvq_oK#QnHm_fYfyaqPg10UU+C>;03|KlFPkIbAAd3X(p#BBdncn zqTez*2@5>Hg`DAC8p**}0&kNgpVgamj_GQSY_VRUYMcx!{b150NF*SBSl$har+^(|qt zmtkZ|wzrDqz>o=>Rkrwatd5&Lmi(|e!GxBTg}UuQ3G;XQEAi;+LiI9CWM=K43N00B zWMQFtMkNx)>A`3S*F9BdsM-vLdEAF=++Yfy)rKC;q)bd$m&D^QMAS$Ehi)Hc0AL-l zv?c>FyC|6hvP&1eHTCWeDvS;oOt52>aw7o0BOTf6zqY+`E7R0tvYAy2QpYRQB^!@I zmu!Yu-Q@n+L>)>cb3u<^a~HbIBVh^CaAQ)ZGZ?+nB$Adv>a~d;l7#9$4Pw}YERoc> zjMb-JmP&Z(eao6il?RUDR+X_Hdm-~6TIRCMQG-PU5(y2fT_9??8hUOyjLdS%;R-KMJ1E=ei-lI_2VYj)hAoqCx@@Ph6dz@!pCQl9)&=n~%+okD@j`>5R-b&e1 z7aUF!h{uw}&hZ{{s0AjsPNC@m9D4AJx0QKa!`$;=ylQYXjJHPT0kJJKJM?R1r+1Jw zck!!vEPAYrSq5tq#ST8WgZSuv}TSsI+_;50MVizwnk z(FSZywn6-@uGYzV9?LfC(p-;LWHV-oysA6`duWCesqL#tZWE-z74ooGk5BrcwMxsK z`2t-==tQtoCf_C`(P{fDH}5P9))H{tgqJqM6=^D>TSQ%Zrz=V{N_^#R>Z&dtHWk%S z2^U*BtO4Ru3F}w3Anu4jLP!w?zJWu0?5zf#u3P+rMaG)Gpl3({DNpA0&Ar7 z4Cm{GYPjfC=GAN}*DTXM299MdMm}{tv0mkj+6F21$|R0psyPT1mB=KBPSFMlxdSQT zMLp}C&0`CeIGaZoI%^^A1RKsZvaLGe8zg3zgqoGmHWp`Xv~0Jg@-PPyTwxbSo4Q~Y zN}J3y?b>J)OW>*nOrK@AOj^U)=Mu!uv-g)#tH0}>cKlY>bz((RW-p=1BZ@AF$e8x( zl&bDHB^!}-)tXRLB4MyBgT>VvBqG3^41LMXNv)1a9PYfxPL)`y3$ZoFe#armUPLhA ztlJjF5*Yfy&G~D$HCus0GA(PjRjLGaroZAdMk|7!P)>l6HMuhAfaQtNz=UCkwb9}h zf3aEAAte_$G!lQQx28dhXcm5ZOY2)2W=2-5a+&BhA~Wz1$c!1T-g+jMGOJ=W<*^#? zgNa*Npg{d5n)a>UlrWMTX&*GO647*G;HyKtdoAD40~^U)Voa*QBWR^nB6lB^=sxEl zbZkMoDfr%H>Y7#Q_ymy#j_~$;Z&Um_=csGdHA;VNpGI(Uuvp!cfxmR!6hz=M5z*|( z`imgtz>ErRB3!_(5jf73rU4F{J@XC)SB8V`Vf2v|@8)okI_H+NW%wfGQ6okKDw>eS#r2G44S54b_JCjU&SUBZJ}i`mh*D1ueM3R zcy}}q{l*o{Z!un{Ne7GHH0jVK*}@=`eKQ;s!~~RF;Hn|58W<1$L20sbGAzj9Nemoa zO{u9cXv0F-=E#;Q^2t$Ub#JD_?_?d*4~Hbi8x*YT*StgoZP(WXHw*eb>8Nb1Z^q`) z1^(U+hmW?VXXLz{z*DZY?Lpry0>Lw*B>M+4<&(H|KqK&Ha?Oby!L|Y~P(|{F@GKgk zm%mxEN9vnoa-+eGtgLqf-u7=@6%Mnon_HAAvG{bjDFS2vq7K`vGv+V@Ep@TbL{Vy< z1Bcw4+0>wNpLUr@ZLieO-SO5;SE=YEr^0Ehu3J@1IH0foNee?wsU@r!4J(z@&ic3; zxs2^K>YRe&BtW@{_3Mhv!-|`>_DLmp*f-0KL{fL%qViWX+8l)BBwllPu!P8yXN^YC z6Bj9e4&9SNH1m-1Jj_t57L9MxnS!_HMbY!pdy=KzL4dCBDR(D5H`}TxQyIoGn$dWv zz*r_u*oYvw(2ghCN9DU1Ld8ll&$l|Ib&bAShocdj!Kre=pr7JU2Dh*D+>(jxxvJ ze;`<`<1@8xc%fg)V|7Ppnt?Eora#nfS7$?+AETsPopL;Ehgs#_#%8vvbRAzmJ^NJG zwzWXQXit{b#4Nyat`cp8H95Am-fY@~Uc9BVRO|J`H)CqIVG`1?#?)4pE^;J|aoTs$ zICLP=P=89mEI2VT(-kpX-arQHjf0ndW!;>E%TSgj=B2H1!lMZ!Suiyzi~%<-u`9Kq zdZZFp&xR{iDZMfY7fwru>GsO%=g4}K2RAzU5snq9zA?gd{&KdQS zm0udr=OPa`ftd^hd%}2FvWiu%VWvIcYeXNYbcEgB=d7L3Y{+&oy|*RMj63tB>3K^(PzU*ZnOI$Fhef2) z8tH2jNNqV=Ww_WjHxi3B!5gdXDRIaxhP(Cjz8q&g*vIFIkteqLXOA?4=X8%F&gGq2 zb-GUOs@7lZ97}m+1ECruRvYo=l7;o`iZbURN5mcHJYClJvoZmqEHfvG_# zGXvBcHnt^FlS+_E;`C}8wXG&sx=+&N%crt)(%Pm=t6jL!JBAz0W4M&qY7H^c@qcag zT;1qU9$YKyz~l^aF){)n-O=eC>dlhxHVXy473`(i%87T~tU6C!VYAQ78Q9U=`J!F#J-#J+-8EV#yK$KWc*89o9>sBLY}zE91Kv+SxT zc(RYg9!}c_>Gz13oj}`YyW8V4?H7aD-WimLb^7Jv_(pb$YQe=NcBH~yHCa8!xt`|H zi9B@iYB40wv(TY3LjyB&Odh5kdy`I3uacyOq7t_7*71zt&RN`Cr*}n*qq&t|(*UWM z32hb2uN0=}Fkj~L%~m!;nAYa6lF}sGeVi5!O=~w$4Oh*1pc<#yj5&8WGg&1!KFnl} z#8O}3$076a;$vTiK<>}PXojU_bCS@Fu_pB-4;GirG{+OK+0;q8K&vkv=I}*&D$xXb z#Ec;6+_zbOK-0&7kGyZbLevQail1F<)h1J7*4i<~kXK7wp5{->qdx33pT`5DYIHH6 zv5p#CVN-1X>PD~?S0V@ z>QE(v&?v>gvmxgqODKs#`=nAYq!Rl(k@fmyA5B(|6XpH#w799} zGyp7)kqO(y^OI+lfOkd}Sjh-ut7Q@~?<{+lHJQ+*&(f};52YP{yR~L87y(C@>5PXT zO`?aCqD*%72JV&VlZkA)HjgDLl2F0yho5dlz+_qU8xPE`O^tQTZL?5bW0l`7f3D_T zS(_fIPO>7XDPJ?FLn$!cZ5=0dCAx^z3RpeM9&qc3CA~oojF1gYd_`d~d#z3Jg=1bK zlD5ZDY<{SuF+V?eKR+p)$eLpRf|#%t&4U_We#%Z}c%Zs>yf>49yygcmR=#uT`c@F1 zZZkJg7+Nzwl3k~rwq+5OSVdlI&uor*m@J1!L2&hS)Mbl%gn>UzTuJcq$*_~@D;fhN z?rZEg$CrvE6SGrW%xkX?GnfGg_5*2J31VuJ*k}npQVxuCgd65Hil{`wU_?Yyi3ox_ zi%2m6BJOQ&9P3#(=Sd%NX=~EsMi~<^3&*^+t{>AoM4OncC(^)a&Y}{@8IoX2z8@qM z1jBY3AA=kE)e-FK8S_F=cR2r!wn#4xUBMkW)ygb8W$Z}$VJNdYEZXLHGEd3kwJE>z zq>b^4v&W~*1Jf-Brq8H{0BEA-DMzLCDbLKTc{*yPlWZD=v-w{ycHO2higin9rrKFrR&=csWje!ae6Em}lE7w58@; zivkhL*^y{$y=N?#=wea{t4}q0j)I0xl1uo6a~CvxlDr-q@}NZ{)^oqp7&MMK10=n? z&e8`pL&Lh~`t%G8$pf{MLGlRw?oW?c?p3F4rDBTJXmTi1xS=HCk}Fp8-7tU4zuq&G zelnqwcxZ&iIA;KB4q^&dx9CXAVsgnMA7ZkgJdF7DIn7AJxatcf|$JJ7N%UBc*KZap6o-DO?usSRSy&KUj~M^>}TXm zgBR+D!^4FW?$_o#S^uQ1w&TyRSZ%B0p5t9|La`>o%tSddovW9&%MP46UO_qXPRQr2 zMB~t}_o=CIjKrC)iLZ}zGfpUCWxpFjF2Y!&S7#4d(E^N0B#dJSM}sDM1UXIgoepCN z0{T5Qx`7S(t`4`x1eQ-V2lkv6&7gm1i@roMZXXDw<%|eeP;BBGSsSc7^89^pftjev zf^7x*fwwRmPbhSZHm2)M(vq>!={h6Pc3o5OQ9DdhIjo7P2iMn6iwW_y6S^`xyi)BN zn&wavlt{8P4CqHI(-EOGygbr`xd9l)Xp9G{+4b=kS-4Z$3H}jH8TyNQ4P8M-WKB#c zmOx_eIR_%^GmI{k=OcXXk;xu2SgjrF>+MNBs*jI&w8Hb0S+0ZnwV%&4W^tIDUr3=O z$d}n%pWs1fKqilZr>mV5=CwmfJ@Au?$>_0vOpw-1*KJ-MouhNbQc3MViYu1Tvhrhw zBlf~LZ5*NyU9pX$S3K@q*<;l(OV3%vGKk~0h+6#NCJ!DCkI1S~-%hbYh8*aL>STYr zA)%P@(#wP1+4`1V>AEHReqSy0wuct628Dw-S~>v2lWBQ&8Jlt)710kusxvg3)ER#8 zQ?sB$+v-8V$}CbSpqtQ^{X#9)SG6fc22V`DF@j>4@VO!Jl$|W$1g+_v`5Iwa*YR?8 zHw4qbkpTV(=P=*DF+({KZ>OtcmiZ@!3L_b#(3`;mxqea25sI1RIedE>|2aas?e`qP z%&8r71fbZZ+RhQel>Qt6oM$jcD5s?D>y}*9a(uEAHZjny{Cn1(CC0&nNR&Hqn`2RT z70T(mBnItyrio$PrQ3*99kD zaZ#ehq_6-zy!hJ)Tr`*@uKDNI8 z=F#=_cJAK{w0-!HiI2r3M~U}Sl=fj^UzxsTB%HZgC(lhMNXBUUg)n`hxk8vOQY=L5 zo*7(>BobD?NdGq)rblb32^9(9RPvyq+Q_k#w0V(mvFwbmnmxb2;h} zU2QEN)V6!iBf)xWMX;+dDR58SND9KMZC=eJ&)EB$7$`bw(mys=iS`d=^kaX2TfY4R zm`wNgcb-iDKopD7M~Qc=GZ3oQ<_Hummi__VV(A~s6ia`9TP*zpm}2Sg?-Wb_Ku(1) z%D8{=^!In(ao;}E3E434$?W0w>@;$w^&*o-G7aKQ^0#4X2aSs9g)ts@2*yLqghRT+Hb7Vg`cF_T9>R`o1Q>Ff)2>dpHNPNo}((kfINhinM+* zj}R5i@#wW!WI)QCs;hwN%+Migx};NX##B6R+A^~| zz&e-~w@l8#vecgyBRXBc7fy@?l990VseOSsGG!J>!&$RH6il225`XS25ZLLnz&&EB zK;U+E)#+dvPlda2-V0x9%E5O98D~9{FZ0K(*xV;axDXTLDgOHKKo(p%+zDixZFqTF zMy=^{wAAQi>oA(gI*dlK4u5RiI)ik4cgGwM&s=q_F6T0mzYeR^_|g5SI*#j^9W;h( z-C?N8xMVy?&Q~(7mJIWH9o-JLbY_B6d%aB^(+C(BUMz6(y*3+Rkf$+OhRe6gbXJKB zuokCLW018m)%9hPdbkcu3|5YJ)?$fEB`kAM5+JNnRv_b-LAq8pI%amISm&muxpo=r zi`8f|+wdkD#K+Q8c5NvQV!^aGYyY_EhMvgdyvlmqiZ0#eYFR_g)&>1W@$&7&0{ zP;KvYtZ(y)E=LvEV{v9=h%yupSJ8GD#f~J@Ow{HHmiWvOqSuSoyjSGZdB-^I4b{^> z?Dck=?q0u$PV4nFwX|2tjfoN6D>jX8uheO;d%c`{GmVlB;Ep&-+3M0h+A1>!iDYa? zgPE6LNfo=@W;xgql~|KG41Y_$KS-&gj#@|k5lPvxV}2tdJ8_{*W5%U2 z)*hGg6cUAvc56yHH~x_sW*9t@i9qCLA`nJ05lADM2&8T%0%4FXUVGCD_=Txm2vdmK z!s)6eibq~gna^V&K-M{#5HVq}iJ97}!@V+tC*L%WUK=Fu)YBm1k+AV_o{A%k+@~W) z>)PE&eD-mqncRbv};?9 zKwg!Iz~nA+;=ZOLPtZAqKQ@0Wi@l^c$+&;Yknojq5K-XMJKySfaU79OvSO4w(&gia zA9d7{W9_4`PmE}n5647ii`rpi2zuJ*v=i6y|JvR?g;o)Ra79`8ytU`D&nEKQ!YVd z*1lfWsB%;QdvSFG&7HqU;{|Tc*U$sv_$AKw;DbC%@n6D#B;vx+wo|w#jFm#_uKKd1+fPE zrTqLlHk^zaGU91!Y=T_It$Xt>;kC2jxBWEwoQ6Oq?5||pxybM2C#2(gNm5!H*k#e@ zY6(J>o5Qz{*GkS-9JMW_WJ7Z3IHlYjr{0|79vRhq$q|o^RO2*@wj3$X-f;yjRKyH* z0!#;k&YCBumG(^*`^4ji&vlH_j~z-E+?`nG=4ui&j-DqI$fW?Bq6_4`kKd1{NA9Sm z;8ID-zE%1i5cf4Rf`<7ZfN{`i(IFH4GIPf>;{?_rQQ490o>Rum?e+6>4jr>K)}FA{ z@y5;ZTBfXwCQ$=QbLqMzZU0jv>KQny_5&p0OYX1tF)_)A1eI0BMNBf`NVOaw;XhY@ zwA;uU{#PFCHFnLFUA>6Vs!y`W?y~OeVl$4lg|Vuwvx|GqL@~)a&()+E5txy+h{$F< zBC{*DbX{`9gH^b}Ml@*{>7hIBm7Lgxs@834CO7&f`CnJDb%GWkkZ5`Pr$U(ghI1)K z?O<9uBDr9-`NE36LcM#vX%WJ2uxNsFhtOUR&rMEe&{xcsec(1^4I0-l$$&1M>v(GV znEOPH>$hDr#lX?Cc!dVvgjOOiVIT=w%)l!uLC>gKM@>&Kl=qeORKwobAZ5XvD zB|F$;Rr@&@Ew)~nT+}PG9f#$NykJ9a7mGd;kM-{rcigmCqcx=;q0yYMG(7k)osmkq zacS2tD63Jhk~yHn+**&wY85|(cCBP-)>vKlNq3~PX?nJSM7lX)?z+Gbjk2b&LGl#PChgxWvx4A?h;-cgCR^0Q zlO6V;nDIuLR2CQ6p*=7zMjw#L&4iPsnzG}h1RYn93rAD+PPh7%-nmTfhPvxWXf8Ay z8pqtM5)#v2w%f`o%;zXCrM%$k#K?`h1fyrv)Y>QKK#5*Yi}}p)(V8R3c>(mGnf=Gc;$* zD>~_B%dS`GtFBlSlK+^{4;{^o1dU2;0~szcj@4uyid|kzb!NBgXOFZ4Gg$R&^-w=v zEPn)x0rQv)8%Gx7`EoO|HpUa_`Xc*Qk!KENu~D|{ubbVGab9qmKdOZJFpVRyyUBw9 z&hDsC7VNGGMD7P}0^ziuio8ZL9b_Jf92&zZd+HV+3f=#pmA+xFTS_`&#df@!-?SU$ zX>2xA1I#>*NyX>X=XTY1@CNbje68-grIOD2j;*?wHum7maIHze=Tbp^?pG1tEm`(C z22<}aJMq(*k4uARZ=W-LQAV&%sy7*Db8AM}U9wZ5eh{8;(q!Y}VCc5v>HH)rPOfBB ziE3aES~YjKl#juvD{K!q|tgKocHMN-An1H z@ujoV5(@*+b@M*-X5Pl;nfX$8MftV8N=;Nw@|K%g(3e_deon)$MzFQ6NJTD5I_^q{vi%#2e^ zY&tk5Cq9>q_}tHj@0M)%T<%_LF9Ru!mK>!;vT|`uC?Wl2OBy0@1aFx0WVvVQqXuCn z7@!Iq6l=gGTJ49}%_Nfg78&H%ffowNE@+C~wPRzMTaO6j79s+_5F$b;iHM*ccFawr z{_1>FD6UJk1&8jQcGT}XqE%(1j1)}l2JENvw7&XWvhDNLbq-yX91bzcX+Fbe!bZNl zXKHLz)SDUIEno{t&L)!4)(+VZ)|xXQ7D`b)6o0Q@L%s`V>zJ`p# zd{=EcQn8`}A1jxeOpJiVlW_Kvf$Hybku$XAAB$n$6!XPE4cE_4uWL3jLUsJkzaRPh3g=kbEch-7Y^-MA zFLa5Yv7vpx&?SD6!n85>$|PLRw*^fO^k`Y_R@XaRi#dfQszqE~Bs#WB2tOh?s$3`Vd*mg~m@VTk9 zzROfo-({AX_%45~iSG{TmM>sWan0EFa=7ivde`qt(L(CUEoN7&e(7Tjk@H0dak3Ia zeoPkp?~jSZQTYC-tZ9NhHsNqzR5jDk$~L4RSF%d1cc{q*BWpphgvb*@IWG!#D-C5r zAW1R&6ow68-k>14#4s3Ia_T@3$Vtt{LNmY1FuaD$sdU%3=7`6=^LQ#fd5s6KhV~o@ z*l`5E`^IRDy#wC- zbK6eW-G30%a^zQVId7TUpG>~j3Epld61?53Bi+;F z@-p4Qn^I53wzhO~7Ogf*&STWm&1BTa&1KZ5 z=aHGLBqtW}bJL1=n3g@Pkvc7FBXqM7xkv`5lP_`8Nq!T;_At2s9gUiNU-1BLqH$mM zF5R~9U&u~GCM^29_;bDL=>oe-wEwgSJkw$7f1ZH@x6ep@gN++i!tQjegAKIua57>xlPChF9R+s2n(AJd6Cc|cc^bv@>*AqZBrcDRC$8q6}* z$tHaL5ec&&?V&9q3@WFz^vy;@M5EFx>TL^qu5cfLy;L5wtn>F{3KDdLo3=UueEY?= zFg+=l_om~=<_Go_eNSjtWf`xU`8nN=pqRY@j6nEqrpN*+pV@GZ?$8%tS*xaBW%dK9 zS)}csF9~kY(R+?DLr%qp4F_vv&5YyP#pThBXyM~aPD~D+2zH^F%B^RNhBB&^e!9c| zL|~8iE^^~U&bySH2PX`7>bQ0hx0sk8K6GR|oIWX2Q)K0vRBEa9QHfN{@W_2PTwE$) zow}s4xo+_{$3(kQO;e99cBRG&aV4fTaV4fXaV376;>!HPZCzPVsIJgHWKM(bFwqkZ zmz#$jETb_MoSi&+EC;85gadqf$BYXkdFg<)8@BFTce?+=1aDd(;8hEF_!;4`fQa(XAj<|7Fl_oWjJzH^Lr5t3bdfcl~Hl#ok$%q>3Bdne38EapYW08!c(a|{?J#0U(hRV_nxRi1BO7?BhY8Ph3tQ^=fIrAs45IFQGLkpkaU z7?}q=c8KF~SVSok^!~LXU-Fr-MmS!9is`j&OsavmH1K|Ofw0HC#;obNs@L954&fT$ z$st^eJRZU*VN-CiEVz-!Jl%L>p5`h0;`e69kS3Bm|}8Oy30I62wjaK4r(} zIK!-3&tneOTdRkRPOIXV5F(V+dJptAugW>(K~53#Lw21jB6nw+nW#whY|j=3EhbE2 zl&mJ}Utz|EHPHl7??wnGw0`l;y5&CD^y2u2F7acNq^2OhdZek4pjjTPcg4NBwY@G& z?fj8kQEs$ly0TKa79HwF9a!}2G;B<%!#o z8fEgCsiGOpc;J{eofBGrEk&vMGN-?;xZ3mNF>c@vs*R*zc zW`0MQ#A|enKh&;Q^@t=C--}Q$`4zXX8iqP2)s0V7qNW(Lw|Hvp7@asL>>^;&Of*b9 zM)8S}BNC|wQHi8QerxutS8l)rv8Ec0U^+~Tm1JXVN0oHUk3_DkWtYxs(mvNcuE@k+ zcD`C~OGT>Y0SdTkE_9qH>le=Ws7aM^3%3`P7IQc}Id=pI;+_478 za7iL;@z@^AXoyKEE)5#AxECqKg~7fg8>^-zolEP+5O92!w#H4uN+hhmXlOj}ib~KP z@_A2lc$S7SlF-hxHsBl~dcEYi+JTE+uhE#D>oT989rvzTp zas=|;MFbLpGuwNDL?ymK=jYSBcYf-jOS8s8C(73MWHR1&GHB$}ZQQVVQ5qAoo-Dtr zaq>%tk3U9M*lVFIvxocoUzXMqiwTXU3&KcF>`L+#)yYP47OQs~%fHNrt33UPVBpe2 zAl6P1NG>x+Lda{PA}O#Qk?J0AXi6fTW-q(Bj`5UsV>A7y4(~VP?V8V+a2k`J&48hX zj8zkRHb-KJVE8!*6b@XQp%%w2-wPI<4e|rYGYb~O zn9AWF(I}rMm1W(bw`uP}w_GeM{k53v!Hyb7OgJ7y+OzFrIoq&ioo%+%d?OmG%UfW0 zSlq@f>1r30OQnYST;z5T+82p;kEkY{*GT!;FPfM|RQUJ{9)o`3SaqV_H5FC;*vz5{ z2M!)jz=Lv+Rn8!YWK>@ZKcc|l+(IC8?jevhIq_V+^{KM}^0^($N2W07jEhP{FTm7d z^Gy*8&B~ztoc?mpXi!~vsTm0zsw)B)Z@&rC zvjR+SRPLX_?C4t7z^7*?l5e5wYD6g}xms7kuVD~PJ{rry9XS_ct@&cAcQUOY8W{QL z7$+C_TkCMv8UE)LH9HUeFJuLwx%Gg{W5jU|adWD%VfdS@1rm>cdu;W({GaxQy{6aj z>fRJCZ;zVSf=%JB;pTH)aPQDjuMPXEm5zAh-v0P?z&5h8y%}7>#=XU!w_rLJ+FP*R zt9pDn(@m>3q&cX2d|*Y>;+R=t?2^*{8m5R-(>NS0eRqkBMa<2P1 z$QwA|pk0>#z=B~XMsru*>bc?#b71P;E=&FM|F+nAO8P*Pr(M+OQdet_g!1MrzZq)s zIAK3j`7PMsgtlcfXB~>hzKhy;>|Es%jj5+h=DfpkYKGL)4|j*loX{WU>4&lZM?C#_ zY&~~c63sWsADXYy;!Wl&!Fq3AMSiQ)-I}-6^XAFhC$Y7?rQWRP?Hjt6akc0QM_cYC z@7|E3AsXIhEiGPd1!g~eLE;GUo8RK`ew-)yn{HKWVYg&g)8ANpEd2_wJayR{T zrf99r-l3{VlG53=HXS(F*QRslxZ`=9q}sQu9Q^zA??CPUMw-zYGw}Jj?|c_}WWFf@ z^Q2XqY?VP%8MU&k39Jb1wHb~eO{kzKk5VsB7MY(VJ`N}=a>4(#s0~`ON(&;JlImim2; zpe`Tcwwt>s&!1B#L~}ZKOFJ<3^W8}_jekoyhV9zFuU;61s+-6?*HbTWD zRn>Gd+uY3lWPwQ|5)kDq5lcr$igjH~ zFddSCeb#XGj>I^;dB)Gbx=*H~Z|46mnLgxr3a&u`ND)j?aGNQlL$zq4ecuzjf%(&f z;fOE_V@jX6SCSsM$fzX?cW5DP!+%;INS%Hh{g#Ci?{;F8p8Ql;1NP`}rC->iT+tPa zH+2~GO&)-$za6gIj?3FO`mjcbXIj%^>eBO;M14m!PhmdSY8-8HAa^QnlXqy{J4f@$ zm!Kk#Y#sg+dcEY^^tHYHB>%k+*Qx3AO+U@=1rz@QY5zrPdSzAbOz!P0&x^bh>@}zQ z1!Ev*|3}zlVVUmQuJ#s&cC~w*x1W?k)M|_PZyTX(qV>b*H~)G1BQ#+gAI2uz-!tio z=8};h8FTO!Mq~aIPfuPqZ{^RM2Uph;&tXX~{T!BCq}~QEG`*@>>Jv4U9^6)*yVPN7 z|2(O^^3Irc$Q%2Qea51+2KJrnX?Yv|PkV0z9M^HBi}m1lKmbGFk`PG=kU)#HAd5fX zpF~=sB?yE_toZ{GphT^tNJC&q&T8;u%s?V-sdi=nB~q4ttF5vVJ8LCU*4jw*Q zuClAF7jMe0+O3i+cFLPrd3H)p*~$8qww_!ir{pScUcT>~+jD>B-kAYK`N65jpF8*V z?LK|_^yza>pFZ8U9-Y*ewz{4&V^;??MEmumlFAT@WV6TL7vA`)(Hnclz$w+zrACQU zwR#|^HtM$#)Za2HeNFjAZR?E_6JwuwIR;(%$FhytDQ2`jPF@=<%n;RUQXr^<>eogJ zoB`)s?^A#Rr|Opv)>qr&HFvKTUZ~|G?0e4k)o;st>Le=vyszhKaL<|g#sR8zU)8RlZo{TeU664XHQh!UVw5;Q;-g>WVIK}ev&Gm9X=RF$LI~Myeg{!%= zPTxm*ZySdm;)KY44D#Z~*N?$^5*6ylj-v|o<8pxdk^YQ0`UEkkL-|PGaAS}|RR3(F zHbk^DzuKvv06^|FtGBt4!u{!>DACfG#`tnxxd}C z)oaK-_#fvXBj}gTm{sfCqogG@d=}C+UD0-{hO?)ZoSXrE3t~@mwNBRw%uPqCQvIzq zTWi0M8&`fAI|#}JYi_WgBga)^kVAc3Q=@wv67RL~+a%QJ>@PcN0`zLYrt#`)kPZ#l zG}SOe6zHSwv6Fdn8P_h&o}kuIZAfnm=c3fmT!pdoNU^22>U5uTziO-UFs5{`z>$i!^xozT{k|A_3a&@+VTdedzk9w;~I(17l>)$-+?) zlsEIJk9f}EPJ5O4=x-pM2Jx#`FIqt9^#sbzarTV0LT|ieFz=oRoy0S8Lontd;GuY; zmi%QOsbg&%u*2SgAVnJRO>D8gi6B0Z$m#mU;I2~i-@j~4DVuhwhH3)N6Vlt7$_MzT>0KtkSjA7nAxVg2egMpW}K zVnX(rVY3JSO*5>f-F_{V#)<$TsZOL_KpR4>6SZ?pEA_Ow)2`sqVo>{w9H1qv?o@i& z2sZjJj<77^&MrzFgv?bUwNbQA+NMjW*HV;mdh=odn5~mY*Sz$&&S0gDIq?-hTxA`t z{UjD@MvS>BoO2BMRbNZK)?sLTv$L8fl?yD!rvX{@@gi(G=C-zsZL_(cSX;fW?T@x6 zX^jwXt_doYt%XWx8jnajjMNWO4jMeusP~6`UmF@RjZ~c&@?$;NuRaoCh3plf^5#4W?DN?!H0MvWNtHu_?c$t!5!ADCLFl#FG;#;d{+1C)~0RH39~dq-uQb7o`lVWhFO z=b5HfJ?(u;1kTsY)?K&;_E169zXQHNaC+4X7H_@WIz9G$N>te;Y zbrR9hrg;)jR5}wI(|p`8dfLvNRa%(lQ^4vJ%0)#Gn$}b1j4|8e-qWU~%pfe&Jcjzl z5N9v~?Ss0ui~(02g(GPF4C+vxGtG|x$3d>#-aRT5C$EuDJ^vCRGe6gPDbqNDSehKh z(Wm`pwzKa!0@;UN#3uP6jUH!i@W8%t{OX7&?UnDyg^S1+u35E%DQ#z=;AD$~fXn6_ z92qx8K?eq(z3O+tk+&esM1jG<#9_$>c!BjCGP}@?W9X_uELT%7bJ*@f>M(v)P*ac- zHkon=3^@<6!>37suEYHfbDJ#O4x%eapg|DdcJe8-AtwY>cywpXp-wK*GlgWbW(eOf z+@7T6L>OCp@f=;}0bsd@q}?4&6J4g!kaasXyUhGIup_H!$UNre28^l>hCpzjnhthk z8a-t0umfc$f_cZxQLx`hU_Ofb)1dCSxexzG!Io1<@$x42dG})|L4&Done`gTXpIvC zwag$~`@BnfGCWAhuB2s<17u^ssnd9qc6n(M`93c_=*7~gFy9NF*l!LRiUyjLcbL6$ zuf4h-DTmDMq%Q{GC|WW}(`+AyCh?^+M0;CVU!!YAz!?`Lox}GcdVu{iX^x@nUULBO z9t7Q{@O)a~!PKjM=c~_szYlosuaxz@Uq1%EBIE<$okPa7Q>@X^_GyH5Oo)IEI7Nzo zIReDU{;S_lLMGOMLoLbS7dPJNi(>OhAQFO6BMo>_#;g~GV!~fjv_u<;ti=@nyjser zaPxy~9C?aL&s{`*^V}aw25YvEFFYq!Wy{N-{=V@EO}K6zMR(O%GU=e2U>;LkuEin2 z=2I|U`^Let9zPu*Go!Pvh9jW2i_czr1cO9qhzFK_KUjo%zW98tzVw(n3b|`Mwh!2` zy{fVN%tyiOBM;o!kGJ+vXFbf}r?!}#@2H7F1B7x^8Ep#hfe5=Ze>m#?~DOM#) zl&ytv(g(pjT8l%1j2<`I<2VK5_?GZEj_!T)*lH*p#Hyj;7a7|Vhj$eGP+#2|T{f(d zIB%d}HJhUIo2P0~pZ#ukS4GR&Xs8Wn+U=7**rUQyg=sI;x%)_>hN{n1h zZVYm$C+<*V5g)*iF+$UB5hhUGh>WeHFu+dN8Z!e_=jULzL_s!>)$X}0%s`s{ac$yy zZ5r>R>X6kEv`b+`_YQa1MYY^SDw;SfxJpVqv-p1j*wCX_-DXObI{leh&G>D+)=*#H zKL$)akHQr0X@#l`56pyUZXK) zJ|ewXUjw}oxeCxYFW6c_y)YWhkveJTarU8=;2y)rxqh0Qs2a3YsZiFsjXG| z0GaE-)l>V6Fo}AiR;?rBX3n(wT4E6({mD!J4YFv z1O>ojWCiqOGyZSlM3l}AVo!fsM&Bhg@*pDKeM4t+--4oym3l+!nKCHVTswbBRjMVWN)Mn^txn|eo?67Ts zwRcna9Nq%is@^@aLmdo-+IpL|S1ih*-n5^B&PTX#qW;hCpaH>7OokL;+4+;|;L zW(tkW0?$S7od^#T{ybCj+)Q3`{phT(flG*)2<=82DUIC|KM!F+4&!RX~St8$11 z>3kIfF>;GeH2uQ88dY1UFK>>9mh@!1}nOw)Mf-bQ@)ru1uV0I+a!< zGo#V_h~~(uW>{B;L8#}j9V&_(b!6ua(RGXYvQ&!|f}9&?;YZ5@PUWL;RaZkT$r;_o z)#=E%x`QohXkM@?9l4r%Lw$QFy4?-9WIO0dpaaD0V_=%^WqPZ_>g?A&uuQ$;-%ogpj;-`&|AkSEXzY42gOMxaK#Oj7`yR5+$DH-boG*9ECLTx z{NlCfnCK=3Nzsr%U*+0(v=VC^n-FXCag~L8*>;Ovqp_dnPiuAe1?gTI)D#u$?nwy_ zo4_3-5>?c5dP?6pceH6_Ax8~!TR~ET4GyuZxy#PhF$qW+V0a_|pYf|f=;qAoaAAKj zI+<=TuG4y>+D2AMXkO%mcy%=esb=>T)R7^P%Klo^8{&eUmt@yxIH+@{I}B|IA9se% zV1*;P=S=gwF^8hXIh8)+Uu#Ub2BHl&o~wiaNO4?JByrV|Yw@JMP$+u5Fw8-Tm8EN=K`5~i!GQq2nue~YoTDTa7jL2>k{g)a z+-zqzr($84$a9wB>h!eYRoO>~l?n5lt^-H4uU=gtp1vcljdj$YoOc^lzf4eS#tQ_c zKc&g)+D8|_Y4E!jn3#z@DK~mYYJ5Khacf93Mee^_T@9f=skvV4?P5xU#dURhnO7?sM_!T`r33erSks4-Ez`{ZmU?tn-j1m??b@D zZrGI6gR}$jbx8bHJM7ty-rkkn6+4vYIqnwO>wl|firVuY&LCm=oZ9D49|3;kC!QNfsiUVx+T56&;-retqNOMBmR5Tf`EVX;uWm6Q1vEOuY|xbB z($))rge@Ff;x;0f8;+qI&--Kj!A%P01}&x2Wa8#+yfN5wPAivFdtySoEv{yho_j~@ zPS3FdwPTJctuaCS~3* zjZH9Y7jWt342Lkum8NqPcQb%>1Y0ilU<1tw)I>^|?)#97dkWdZ=7zirXBKVvG*X$1 z)WlYsj&a+|NBl6oga&d2*KweMEDJ^tdi~)|FG#fb4bicFd;Fcuz zq-h<*Xfy4cQ(uXD1jAWe8HuzDIQswoG3?44=shl#p3alWVey#U;35y@%7#V}pO^ zIYrQoxPHJ)^Y%co6r0IXY?clLJH^-yA!*SFmIJ!0Aof|X!EwM3HQ3#7sfHlL(?e1D zqFPB2&+YHrTzD4-o=3L4`3%xjwOT(9aP9WzF{|jThad(baW8%``c*W#!9$hvh|Kdh z!JAz*+7;wHPl6+uZ40%M{|usvB*XVabn78Wrh8pEFV!8al&>89^f@Tz)IBQSl<%!? z1U3g`qRMO4fIBg!^|aT-os=A2v>-P(QnoY{Dcg4p^;dlfX)C3nN-zJ{iH@PpDM(jH z9qcl9cYj9g{|&nEP5V*I^`|grp8&H^J_qORdMXn423Mf(CXFbKDG$|314l_fj-Y2mkVL{^lxt4iAmE)HfTms)cm+Q9JCAG=M>GzR{%i@igkme9nsj9muJ zhIfrpom)eRISGejg)x;xmar(w=~DJ!DzPu%9pwje=|P^vR}CqyaH|TSfk6!DV$#hd zYNpYRK_k!#Pds@etVy;LV^Ez{1^8UA4UNo!dx2kGa9IVjewHfHKg{T0 z^l#g@hI4pNsJ1Q;B7T#nGAyH8Gep(^A66mZkE7)v<(^tfcUASIFH^b3O=(Catw*`) z-eb}_k9XEdtKsR1<}bjkcm~D{>)?BCdM)DK}V{4LFS|2X^~$f&Pe`?ofbP*!3JXbtZ?AQ|Z;f_lp8(rNe&w z*>`qxiK+pPl^Ro;np+G!H$j~1B8az&clN%j13zZbM>q$|d-d57P=}V0#~s##8KNH! z`0@I7yf(FZ{jiz0_7;uc#J(QS%6JVN0PV-jG{85(`s&c`?)vxy;f3f{lXED~tjdda z7y2owE!QcPs>wjhBM-_9miOwrcAQfUGem&{{!N2%|ITBZA@!IJH zr-ybT0SK|v3x7VV9Y5;y!VhzG*jqb11mUXe<`9ha)LY(06w^r!M$L~2WT)CgGCFrh z@wh#{lKHsF#rJ^(OhtzgYklWpw`)J8=S<70OlIPZ1#xqY*v2-&6Il-`bz>lD0 z)NxyWC!47m^H|%apv6Lai@fE1aHRq3Vk>DuIS`E>?2O1T`{?>UqQw!pQTFO;@^dn% z|4=P!&C}*_)x(j>eXA0uP=Sioh8~#Cas+tHCx1 zIYjfC6!NtD)o|w#@TRqIVki_DT^vUt51WsJJFB6GC?&F19sQgMa$ar^3!t0#g2;6< zVAI$NN_9GbtaLZ6PvVRp(=mZXN;!;dbT{5|d4T@EJ-E^(#F_eT{BnUtXY*RyPTyPl z2DHY+z!dIv-e~Lg;d5tv4c>e+2J)6af*Xb#vK1#E)H~v#{)v={fq26yv}p!3iGX=1 z9wxmVEENa!xQxVwRYK)lmDG=cik|#DT26@*fo%=CrYq%QAm4NpZCQYOjI+=P*fpqo zK}yEJ1$XVoQILK*?guB)_o9+rmTi!0pE0-ibM33jwHxhDqbE(ESE`}yHeU$9x6V*_ zJVqL;p$3G`2~cMWzK>(DEswxTI4;gb9H@7jA9fU0^qc9?^k$zwZ&XXYyp>i5%0$5r ze}Vyvo4vXeWdo*Qz1-}tnWMY*oXB+h1#U64zE)Xp^Hp!2i zaYhAIfwG?sw>>T|F^GHT;P2j!(n)} z>kpPT>FUy)Ia=A4M~kE7okywQ;iN1<9cPa&s&21`pHjNIylSzieS(m)RT$Tz-__KR zc(j@(Jeapui)&%LTUIHo$HmNtp|Z_R$P4@p z_F>{gT%9_G{QTPhw8z5GYEg`1bd~U{?EYHtqd6+^P#DLcjZkYGX@Bf=rBt{-68Bd_ zR&I>yrAGSCOokz@w!J%D3&`$F$(uy6bnSs^M@A7`jXPVtD+sSiv$(LrX`*iEPyFe% zXjKqqtybBby6yd$2<1|%tI{U13Rc!g3T>@7DMnXLH{Rwr7;IzoJGZY^A;hEMkkPrJ zaVONVE+4W^dk@N0naJ^!i?5+}E4WjK%F^;7hrwTc{KTuSmQ4?$qGVQEpC~f6fh!QS zT@uA*3SH7;0aUzpt&c~ediRmJn^T)$NP+FWhT>;-)7kEwFh(bP96WL3_u9Y*#>{4U zq;ns?3#QH#8_|PQd~sUieYh;Zs7;0gApHxvv&Ej^PFGO$G9lw5rj)>ozkt*j|ZfSNFYuP1BNE!4!Wsh6geiyPw`o%i}fzaAzn=u9~$N|Hre} zyZ~K-XAI#GJRKU~%h{HmK+hxPIFF!zl1R*;E2_&fS5*34(xL1uMj7o0JbgyaO6RO` z8ePuyyu{K+!Jfp6kBqEtu|2^i(YymIlD>{wAM`t#-muq@A8b(Ho$WZYq1sz#`l9@7 zJoZzEpt4oaLtA|)ph`LVdnmrV_IWI(;c@DL#d=TQ2!vetBZg*Ya0piW?==ir{pI@U z3U5f8j*I9ehVGdSL7^g10mW}JxJZ}M8J5I_b-VC6iEh>J+%pJ{V=pXiqNRZsf5)IO zN)a1ztz%6cqf>y%DXZ?I4?WM-r~3ac~J$PsIt(=k@T$VIO7@<{WRoZFIJ9?Zd}*iK$_1gikn(PgRM2l|;hV;KBN!jaP!09j1Y;-9Cw5+sUT*ztKg= zpakl94LJ-7rD#b|9R_K?8fIk;r-lBoM~};xgB`-bN2O`Iq;W!$Gga~F@T3IOP>L^L zr^hptBS*Cr%CWjbq`J%FL=5+SxI*{VYBG6>_;yc1|W zr6RkBBgsVI9n}N=PK;9ViO^T5ERD_0DwgcG!#I{LGiVP&G>x(a9Qi>hy;BC8e&@DY zann@s^g{yQ9#eLs6wnEPbwqO@n4|tWv^A;1D1b2Hn|nVNq_L0Lfod-_4P%S;SMW3 zYg){h2WiDnJdp)HWx6zM2q1+zQN9D^Ym{Hb+Zw)N=qhH@p7Wms)P2EZG7kvaLz;Uzg-ae{sO6UMT zUH*7@g&QsC>hyN}P`3F4OA~k6FE&yJ*u90iamhQK;{?n^o_G;-kr>Du!_#6;JLycS&y<=;CunKnHU-Aj?PYBYY+L$NAZ%U?bDhp}{BX8; z*(4@w(Kei${>WgOIwm-h^y`@7jXSYg8U%p>Q8s6#uf|u`SHb!MEvvyv9M9F0 zU2+mF-0C+K>|!}78e#w+my@D%nvr-;iY~!ToH`RzCr_e}7O@Q!&=EC=SrBb%+Ps{f zd2XQSc2-aKMQ6i0)33U!#YcUvx|5bH>NrGeRcEhp6pVq~Nv%#?@xAEveoSFc-K~8) z4ZLX;(+zAlbMl@tk#>W+tO-MBF1D?v+YiscQjY4`7`$#FUN%77`T}SZ*jBnY-xA+z zq>0@!n819MrR}rw6Vr75EL3*+bsTtdRCq2OKcoOhZP42N@6En=j837pC^rnTBQ>Mm zRXE?3bk*3!K@DJvuu$stxV+{-Jk}GUsU|`B@TWi$w{XrB|G|+8?yeN8#yuW(0DJcU z>nJIxJZfhLi7nPHwkZ`H+7s4 zZ)`36JnTt0ly$xtRZB338L%@lj+?OUV>a2hLHTQ?SamCF+2sLjZq_!}%5UzB!l}Vo z+Jp7V?gFKvY*gCNHD-UO>cb7vst&x#D0rMz&5Jzr-1OXdt?Q@W98G;3s>RhGC0h?a z7xY%un|pcEDHFj1o-T=A^A?#VvoiPRFnG4nE$7fdG`_vR%MW7ZtCoP<* zw3AU4joLuad4F2n&Ny6ywW_DntJmv0F3D1dM)_zKWMo?#4D~;_S`MM!pq`~>wEn6f zRN;g1@Vq^~Rpb!W>)xlnW&xkpDKJd04#Qf|INz@3OtU_C+N*i=g!HDzyWThp<|LiN zTwe+(*H zzo*W<9lk^2YM6_DcXncTwNqsedV(xrmpMGff>UkJNwg~bp3b+RV}>Ruhbx`3!Q7Ds zshnCpgc7Wk!Ko&w)Tm^ERGGoi5YM{9oXKp5LW9w_j$6LcK;W}+rTSuT>+pSSk3oEl#b49gh z3ghtt4t!IQbpfg~FHtSV{Zv&oc3L8UMYqD&H|CJPzjQ=XDnywW91ChV%2Llxf5|9p z{r#6%Pp7Lcx65R4XOQ!>W;$Rad9aTYu_25=@|C({!F^Ef91iHF0{Jni$k7IP&tEQ{_lS|DQ-GTIFmZhv z)z(Rg(fIzYrC9=aAQYq?9<=^&r0Z>QwMFO_kx4Yu*g zLx`4E0l9I9KYw+N@zTRzF1nsr=`rdrTU}>kGQD&0x>Bl*)o;ss*+z+Fg+Umk=sHf$){MxN{ z$LOBgbw-TT;-4!bR?*P6!gw!MH&;13nPQW3dMaDb*Q8&n=afv>IvI{QhbQK-(U%$* zcLeEqA2jPrR|cgRAQbUR$6l-YLg@b=ggLIJd@R?M4Lo3E~jAlg->Y4 z^hLgS&WRO|i8$}J80pPR#^h~%+V(iuI(H`qN>3V}oVt*Dq?u<_R<~M@W3(F`G0iRh zRlQ6ENZ_p2n;$N^q@g9pfJe3R{U?Bs2x`@;lY`DAwIjU{H3ms*gy~LUl$`6>qQir^ zZL+F=aZcMkztu9%5Jdj<`7``U@a#aZ3vD=J%39-aQ~uy;GP}kne+My zC_hi^251J?bLW*8*F_VB9I}94R?QA%nvLEe@7#$Ls!c`(Xs6Na_aox(CPHA7-H+BE z@W7)*n1`YfPahNDU2d1xYJ5U0lDMrEydJI93A5uu;)12N=!6@l1^cOku|9t*3{GJ6$0fyHAcH z_KecETOO1`N*S*XMqY4?pe^{KmhBOa(%@t@*os{ebrw|%>A^Zi-By@88iyLtUt7F# z!MaWNG1S1b@7cemoBBu{A&4O)WNlI z{ic9TGY6t#k^N3}&uqG-8bM*JnKA&-IE zswZm!uECzsdUXeEl6t*-M_Ou0Zi_xNE%*RK-PTGYW_ zsjgK=xXm4?%Qx*>s!LtJj^MP*k7tyY@lSpdKF5kzQx?5WJA#oFUaH!v{@OgZiNDTh z+W5=y=vt3wswv~gFhG|;KgQKlZ+cd*?#5jxen`>SP`AK^65yTc_D)HzU`v@RYTa6; zj@nmsVh6_JV35AnU8c)tR$5PEhdU?+`>m^nbem$2``TUz6RAJp?2<>sx>Qu@(u zqgCN;XAZWODA2Z|&A{22wS}n<$i1}p)Y>7ccBiREZI1w1odv69p$Gr!1Vyit<{?<1 z+-H755D)4%8(nZ`fPSNuD$B4B@jFxx0Ba@i zHT?DzcKGX34q-D!`v@2Lj#@|VD6p9o9YqVvn_St*{@Q(#IOQ>0^*FKa>!`gG9;*e$ z(YWX4B(qVfjRHIFT;OvMN2bua)Uz+R{h zA1QxGEdV=LQ)%i^!_r4}h@Fc_$rFUGeQ$F$Hb9h5y*VG3V-tHk3O7biQyO^~(H>Bv7LS z9W>hlqhO~yi`HH7WD4f+kRX&X=^Bop5tOxaM+U8syBDyq9UeKlAnPBc@)fi7B)_Io zqMKVO+v%a>ablD|JT`JSekqlA%ayYl94>HFN6=%^BD;w=+S(4*@ffhwNV#FaHaHeK z$b_|YvFC*Ij&ShKNr8^NTaSZ?)53MjWA}adAXg4IF2hibQrjDR@APUgK8jXzXVy6S zj8fC?SO?aljbdE`20|jL4~nhAeG|nGqpTQ#?(HNq^CReUdK2gmB0uR+QCVsCyjW3T zm)fl?W&Z}}`#S5S?&t7R(}QkJdJ6d0Y_Y8m!!#q+&^U;7mrF3WwITdoD!|^&iHyR-`?>C;8pRfdns&%?uGZyz)96=Sk;~`>d-GBD*74x zQX_r=%A4h9Wx_DK}%*K~tOfTzv0Od41&QkIWpd14=P5>JodrXQer3hDR8AqOn zTxwNnyEDGFFovZ4sGRQPQgSK2?6t$Rs@57D!nRYJOyVzbn?kRAR$9*|b08ky5m1&C zj3{+$e5nxpJK}SCyl(qWIff++4&}cZ9r8yo1*b6Ltn`FzxwBE-5mEN0;NeMC+5-Mi zN*q)~TaSZkv_5S6t1!lwqOXRo zr!absfR6%LA8wSgk)^kW52C8Vb!h~0m)gUV@2XMtc&O^bz^DuCP71r;sk11~*=(s= zdWE`(7O1t?NUi#Pp`H>3qG+IQE=Z?`{1A0QL;j$qtj8^NAiH0l_SYQS^Ef0&SGkBK z*PAfPWCtHtsfZ1EkaK)9;K%WVyyLz*zD?t3_NtUVYJY2a&>kn%O#7dJn+wRVk>%bP zF}<9&`MKTnaysFsx%q6ZmRH*&!62-V{qoG}U|nO|#$dKIwBfqsx<5VgXAl4K-+X`S z*LRqf!9*h2%-IxfdVBepY8`A!q*856DE&h_eg>Sk>}Sy7p$iPx8NMMv>m~{TtfdoX%!}u#o_ed2^d-PT>#l zH+q@+1DX1h?Fp@?xjm6`+MD~F6A1w5a~?`KUASrMNtl5fO)G$uzuxY?MTKYZIyq>V zZ-c=zv$qVI4Ty0~AO)>&LbU6^2D7fcsW;u%`)Hy!-KIaS#yI7Nx=l+HP%fFAcUy z`#nk=47@m4Y5YslnjyfDR=?!7`Xz1kkT!Nm`u2Y5&~jFPX8Gfkms;D=ve~8^O`B;- z^*dP*Bh`vqw5+}PM&o?WnN9X2@IK{af#!{*R}8DN_>Z^oO%=GOLvv+^pi!+X%aDbc^Vd0nDui0pwr zExyiX^*O~75DEU^9sX%Ei?4UGbKMNMuav0(dc&6(2K0tge8UCw#%6L8`C9Tzhq>KG z26%QI+SuompGPau&8Sjx;1)H?E!imnvJ9k>sT6<;=E=dPrVXZNL!zU-In_j-Xabd+ zQaw#w?X9TkL?Xrf9fM5+se$I+@|T6LQsC~UN(WzI9nOSPz9JobMG-Dv(GH%_4xZ=& z;})M6mMuQt?*1mFE~KM+FzA<(&XkgON)Y2sG8V5m#TP&$bhp4sl0K5* zg+5nkoedDOyCM%3QqBU~zp$gdi=~7H_)Q876#9#V^SJXkUr7pn@lSDhT#1WkeA!vD zZZPZ#7Qvtd!su{x27AgW{Xn{-B2l?wdQo`~ED=YpOZCw%K{Wzd|ia)XGKUojKS^TL8NH6uLeHB$xd^hy&-3?ZE ztO#nww_RA}6>XUO0{7zEiaRoB2@U|zv-m^&)2ziGLU5(P!J59keVw!N<^U=zI>m1| z#lPv7aW5R+Tl^-OqPO@mw2f2z5d~*c(j=f{0b&>R=y)m|2~vRe;YWU_!hM!erRprrx}0=9yK>Z%K-O(a7H?M z5-=Z{dPK7$McV!kLMA+rv-=@=lQ0%W2)+CR5|-f6a+)^XASG_QrQFLMkcvW*myyhL zA@nzr8{5}G3S$hNNI(d@1uT+DC~ZDs+(14nhJtVTom5v3H3Es|lzvJ6EIq^|m>-%7 zQ^F~JAmplW+mLeGhfaBjCCWoCxAB+U_MyvdA680WEMn-CU}SVji7vMUe^H{ufhZX& zC3-ZW$0_$ni5|BEe_4XREYZ^rV@fm<5q$@2l^AHHguu@_sQ2PqPVr|@Wl&*ixVhFA z2*lzrQIZ1R6$NGf68^9Yf4G9tu$DOPl!v7RbI@+%FH0PEOB{Cxzf;~XC5k`C9saS~ z%0G7t?U(TY42n#VU)mC-iPqtSQPZz9Q2}(Y0_dPqKInotCPop@D+#oAAOZ#glmA@6ex((vK9y=Vw4%U^|AaB)6#vO7{+enY?Dosv z;;)2t%dn_1l7GE!5E&o z{kAxz0f9BvGuVoLWZIY{kD=>&OE8Q|TQLg20^J<@P-I&re{V}0-mp{ggO~D-Kg|hL z$IdCeuudl|$UvJABrR>l_&MCfgpDYPx-K&jgepnm7T3ZkZFfqyI;EXt0I-u&+T)hr z4vBOIGcAr+)lEYRhuVZidZL8Z8Mdum1+L1lqCppG6j zAYpNphh(s-@zTMZ};go*jlzyyr{ZyKypnfble%f7WEAY6q*;<2aqGxHB z#Rx6E>C&R~9ZQ7Ln*!xKj^B1llD5a9X?x6qC{{q^1VmA;xoSYe(SU|6pqUDw;{swv zuE&J~go3c-$~z?S$Y%fSSqUu2c1g9$2yVZ3ZSY7TNoZ5g#$Xza#PUV~y*UH{uP})f z&M9?OFch^_5_MX#j8)oLc`aJAv~i2_sZ+X#BTaijub37sKkBBqgYq88p58R1P;VL| zjU4-EMXy{E8D4r59ZMw3m$Z!hQm?#;X9)Syn>%1Ml}1!bjED>x*M}1Wu(~LwOGw7Q z`|SuEcdI|4qG!Z?9C4*~X++by$p%Zdx#UWr7c&E8i7i4{g6L(T}-4RKwB$ ztZ)2YR#CcqSv1G;<$kwMR=x{;&DSZ-e;N59lY5s-+E?F(z0L|tF9ID+%8Iu6w%DMq zT6|vKEPqilf6ghR17>9&f#!S;-h(6zcsN$T{6rVBxCL@Ky^&(iN)#$Z{-fCkx7#3m zfMU%jKiQ5sq0I%sDdeK;{ki%^oKgw@bXr1!mR!Q}mxL`5T{VV^KSv|s?ZD&ps@Gg; zR(jScJ@1sBrDpj7^Dlo{u3zP~^gOP;%P)38rfV)_`eb{zhZWpZ#aEot7x}vQiU4uv z8Up2&w&4VXZ;FE7PFkgYoz;dXvs7|l=JXUd%dhbU0@zvkJ4{X4BLC1I;1KTHF#DY`g;#bi|2aLbV6dC zP~gRO8Izm`p~&BgVfh->tyB67{NvmHe&I9_{527XK}6B7Ecy3vGqIxu({CWDcNvpT zGr+1+Vvouj;smhDvcMKai(iGrcZzReUKoVjCyuLN8u$k@`_v}ar{#7s!Mo9 zAE-At2Xf_l+S@RGbqtp=8PXiT6Y==rb?xnNJBZR)hR=~uY?ft%VeY>4xS=xibHae- z_botL>>T?11*ewZR}L+|-vjZo@8$)1Q*T;1rEkldpJ*~?t3U09NLzvX zppy3&;$RX4`)PXj_m;C2cP=MM0R}Fb-Y>oPOZHNK7l~CmjB$)%1VPiBYR9nU(_2hwfITzhf`4TYCZ5r%ewn+|=o{D{qVk=?och%X1cb%7kYO3%$m&n=&I%a&){ zp5rfiZuzYC-11pWhe00c*5yJ6jcau9a$&1lKDg`aE&ZsHLA97Tq#!-u@vNMi(%#Dfr>IZUZg8q#AZ_p0<(WW40v`51i>$bH`QkY z5hcQ^_=BX)qi$7wEhGC^o+YUs6Ue*k05sL)EVMKNq$8F>c_UY;R36mkd|A0%MpTP(FB@f+CR{tOkG=me7g7 z#aR*q5O?sDh?#+bhRlGY8E!OgC%}*C0=Ur(ws*2^KN0nsk~N4KrqjsRJ{ zEN^s1Fx9H$8^Yv=nfU9Bh>1igHpCw_m}nDz138Tq6T8jTl_NIr&ta?cjI&lQB1r;sv(e|*DVXJj+P6Z7|$ z-WtGvUx_)GZ*YpQ;h*riJE^Vwa23WW_kxtYPPtE&2)qJ&`g+R)Pz%DOV2Kf$ za&UzmZZn4Y!7jZkbRG1rh(n;_<&aMGrZ(IRy_sffT>z z6u$yQu^90+4w>>-T$)^A+6b%>Ja5If{Ah2%SN0Z+)Cubb@S* z*=mwb2`NM(6(L>wEntw!-hSQQ0w}qYT>?nxlUMQc9S&O9-GJqce7b!j+faJlDSbs4 z6b*;K|C&=m^^d zT6qD_H^|L)h@k3py_9fIg3hQ5qD1{Yl{R4{d87d&kTlZ*JQ=H;&d zQpOg9Gvza_;T0Ve2Oyd?4>0E(;#cAj(WE94=sxIk6avhedIIN#NB6>CD*1B>!%;QviJFe$vyw$!3Vx^`^f{z_qL4v`CWbg!++w~9bR5M&8Kub$SH*RL~U902Pa+c zkNn9a-phk>y@qFbn+UyEJE|j+H8Xd#FwW;R;|Ae zfqC=EFhbE8KjB9#CW{}zm@Ixoqq9_4$3MvOriyj^uLG^p)>*+L~ ztY2&tZQ0B1jd@hZ@3usv5}W$b}MV%e5w|?f|=_= z=3Z3tjB-cKj_`l;W`Avrqj~T4dWCFsyRxwE@5-CKwVE4!y!>ZYUxd74_heQ^T6BLz z*BK;y-rTo(9H?t(nE7|tA0!wa3a4A)X>?5EX#pD+Xby4{Df^Gx+k*%CUmtI(t@8}D zRL~sj2^(S1G{HR=PPM_cG0M!^!9#q!?^0JA(f;k__wnQ(d)Re#R@>yL{px-&_bADu zPFILl;}3`g%i^kMV7sgqg+bi+KHNH^ifBL8L;7AyWbd4>YCzFU=x;Z~VnJFG^{F@I zOX5P|<}Y@ge`7g8ToyaE->>L+K$1V(NpIJCHKw)ti7cl_Sol%+L^U@lzTSr0ZBg76 z&h*LX{v~O>?T?tAB`_M22yTv!Tr7D z{yvQwi&yv{v-viJEWh5$>l;Mn$6WY@v$*&}d-FE)%jHER(Q{FJxup#k)X~p(uki93 zK_KuNw;$M&AM)u#_X&X#3c1vSuezw0-{(tSO3xr~ z=`G%U8<%CGu{`5uTRz(j0)Z)n0hSBRZN2HHHZ~EfS19&d+?7eI@(w%}e`BFv!PD~V zOn;7d-{M^d@S|Tzn;|upH}b_X7X2kJzv^hS>sfd#9~NS~Mm|6+H?pq0K_2Di4m=cz z^9n()e9ujmJZ~eV^cpV0dMiI>XB`+MH)w*f`X!Pi*wFT`YkX!q3OcW?qJP8Rq36E?7^5GZ144Lwg;(XLNPLWy|PH zy-Rfsw%XfNs(TPKtrw6D3qvkgzxmRd5(04nu;& zP&?d@s9~rJfgiXL6owcvf%Q1LLz|jfkz*+Ze-^H?^9PG2zzJWb46=)&p)}#49?mV3RIYk}lb#rz=TMw*qMK zimYBhK$FNF=7C~m*`01%mTVLl)^SUDbAfD8gGLpVfhL%2Ml9E%mRxR z5QM8RaF6AMuYygQrCt{d34+>IPzxd-+`E(x4kqfrlsgVg0p~uE>d2`5Tl}GJ=|Y2w zKddCa?Ipe~9s0I*=-Wwl=!#Q(yIZ;p+eQ$VP<*=+Ptr&L(VQ>J0-xwvfh9ftGT%}2 zq6@JOfhb*BjVQjNWnPi0UegEsaCs5?aTv^teN~hh=!}1aT!Q@I!vF~fe2Q2G!OyFy z9-)zFN6pxU1gH2TeOM$v%`EA8L*dQ4p)uupv?@k#<8$vkx_N40JCgD@995 z3$N7UCH4?rN!MyhLb1}I054(51#h2x z9!JlX?$Mqt-6NP{m2KF?6ze<0bXYOPTIdl0fmk{=_N>A?D-Vz8!z1$WxIRF@DQlOG zd$=5zN`{>hR*$6@hP9I8R61a<{V>a5%Rq zGs&G2MaD761~Zpr!;d_CNguw{XAl?p5*kbFA$)MbVlh!+#4T2hx!s9LM7f0J`LA4u zQ7^caw)R0RbMpcJLjhx-g9inp9^q_&F1t-Y6a`KS5N`|{NN(;LW0mVf-waXWiisq5 z7!DvcLs^ihRbu!9Z%P6FfVruIN^c;GQ^KB6STA2=_7qH?uFAdipw=Um3Gvag9}Wyc zin#?e6LpLwgW`0lf|J};Fe$y6+A`P*odyy40&CsnsOC zlpYx?B@EOnBHb9ZE^LI-8jX`ywUSifgS}gnDc>SX;iobz-}Hv%n=&jfAu!z?mI!30 zczRQZ<chL8!bQLt!-)0{?FIxjfH4t4E*20|a4RWeG&Tnih)#)w z?W08@A8*h?nBQ`z)X`he*Oephc?iEJ7`&$#yeBMEa7yo~w1?3_jO2J7hwX^l5DcZuk8k$u zOqb2syRL!grflN;>=$4mYe%~2GE;*k)udQ_xtr!q>C2VjLSqN<+%NZ&gBi<>@>P|9 zr$p>%l@Ps@LNeaEL{#KtxWjsrcWwBkBd*FnSPQA!feE?atq0jJ5Ny5(Y(`khY4NX#D`5=a3GdBcu zpt9v1hyxjc001#w#nU=!iti)lXn99FbY$u85#%}8g4j6ZQlUFj8LV=rcDLTDsO@Ec zxCxrVCN3+hFQ1i%8Ewss9o@@kD->BiE8++M&bs0VF~bI zBa)@Y=d_aNq}aE#*te9`Fn5KdhL1%opwhSDA_BjI2Z#8dgo3|Fi+A|As>4c=(p%Dp z6e!?6nnk5Oc1p)V!|jCvWTOJvC=bW<;h2p4=RojIvd?p%D*iw_XqX@Da#u;hWdUyw z(JwCu`sIcGVMN4|2S}ERm~my4RPw4^f6Uz!WMoi8G;aH#?(reC;x7eS@t5-OD}DG? z7fOJ1YFk=nh1Ce5=!yZvswM0_ik3+D6WD%) zvw;H+2vIz+2F271GhM+j zK`~rY4wWA3Z5}eImzb~yi)GCJTJ(#AlFNBeY%n(M`Ey5X-U#~2AYQn2CrYzHfi18s+4+Dp!`Ix z?^aUZlV`cYkOEe)pm>$G!Db@0%lq}`puD+DuF?*eL(D4}mnYK#cE z^rb7lDaoaWkW7mOIhTlzyn9}2a+|>RKy_PWp-x#HuhfdTFFnJ1gkbXi+q^;r@j7G6 z$TL?9kT2bur0ka>zhySaW?pwN1=5&cALn)XbxD6t?!P7X9Tr8c3_Dd>@)&cJ7v%m` zx&D|bkTbmgY8~3|N)jfNzL!jxB-Wj<9F{N%Gu3q6gNx~flk;<9m!>ldh3x#?)Wya5 zr}7EpVd9S>v{^T>Dj$-TR9P{LGd<9&4A2~%pPS1}7dk4?NSIAWGUwCC zHIXKP3Yo>pOo6oNJ~Nkn5=2CuONEPfupf-s6{^;SNJ{LgK=l%h`J;sCz%u|9rsg+# zS@4`aj|LSowQ%UVZ*hKhBD;{uW#=-*uP6@1e=&JEU&zevn#@cuEoKXsca1JyUMS38 z0E=9_yzA_N;X|Vy_WVmh~DaAN6P zE<63%%;l;1Co*$~r>E~Yw`bq^^V2hXXJ%#&>@jA@-^eYMMgqUZOyNj&nw*keylhPA zer-bOsN00m`CJY?BJ?|&naeC@r+0Y;9^d=$!?vx3#q8XLYmNG&J1X!kErqC=$&aVH zN3V4QK+=0%k{(=hB>jV-;a)8BkIpY#ULRszijls_rGW@2%EI+M>Q zb}7}jhvdPD`I$`4Ckk{3h+J9+xjP*eK*khba7Xoj>h|A>^j!KvW;Qcd*ag8eKbz+0 zfZREC?oTjMb_~|awxcqd_cc12_w6}%e&4|Zx2I?J-M&Aw?|?DW3DY)qiEWOQS55Im zi5I5pDad?M=?QK0Ikz$6r*_?!&1FFT`D;Hy?y9tBlh?mcqbFu&(VOQ{Z;gJ2K6HuE z;}sUU25keS+k7-rxT*5S*TRv71qe;)yjl{z<#;wp~)~XSH`?S`+XBD+8BVgN9E>}2UR(62D^ETi^=%BSK=!<+C+?fi z&14qqHoQS?q0q!)W;K14HlJF&keX)taDw-TQNx^H(MTPWO zfN>uF80@rhZEFn`6gy^9RGyyDyS*P)n0Tma)yK0-%rS(0E_~r^{fGzyIQx`zY z)Tzo;3W7BTe9TVks#H9czEHQa+mtw;s6!lpGUf*8_VHO7I^KY`2HOm#i{o>cCFOFF zishPELFmcmlbNTy3VgB+Ese81_h>N>>53GJD?z!1ied#yTsc}6DCdnEZ-B-X`J@){ z3N&6{h$KCH^`i1Y{hAF4reN~;=F_BAW=cY233Q(t{ zQmqjZM=dA@77g=wT=wGs4wgNgnVo+!6Uj8S8gi!iXD+d$XBhBOoX;-KVnC#S57Uh9 zKy}=8Tl|Mg+rpgv2i>fHQ)yQ8@cV;q-2Yl>T$POYgKpRVQ)!pSiz+LcGHo+r0@=g71oUe7qsNe zldv`mSgo2rU)c3Wc{r9&F6D9$q;pG|V^}!EG85KVLRmbg@}9=M%ERfI{pT~cpWBk0Fh>WQ1&fWSXlKS@DhaB}`8~ zIJpMvY{Xh_C{;PG!bQrU8PC6`YrR|(#fpT>e3uu%;$+mkIK{C@sKxYA7|WRJ5~kOe za4b7BlL3JBSZmhgiFDy2!mYsI`pgw*@lzAaZ2t6ofn#D)s?c(aOadBgGAW|vPGkyc z2;Q`E{}V)pqi}A7uK#5?7eM#5huO>F4qSUE zzLqe3`6sdq5*NT#^|86>`5B14wTJ3|1*U`mAD_vuJ>32qs4g8aGQ`&&f@HolyKb)X5iU5u}T8(ieIMzCS_C{(b`#a4J%SJ`kJtYQT5DC z=tdZ9ufV*7M||-q&gI4~VO?)c>T|L|x`3dlb4!Ixerlc(M{AA^I41=cVA)r~Om#lt zpKchlDPf#6B9lhb3t6m>xy#a;(>Gf{&(OfHXb(JhV`RJYUp&zQcb|05;66}WqgVeL z)wn4~JcQO9!HQJlegdsUElD-*>(#YKM0R#HPpvsTIk`T+n9aabBJtD8;?tO|&d({^ z(j_#%q|7}%zcg21*sII;PiE()!P$Ju%_Ei>kx@E#o|`Y+n>jzf=)T0`$aw@J>x_6d zeTfR=IMz)$NhS)I*pB2bFtqC8EIxLPDrem3^g?SVO)ASHCmrQ*zmtMk%+=963%p48obM$YO0D5m#77D`_i<7@b`)!Ff=}LPMo2nYuM`gpOG4Fq34+P=Ebu3R zDx}A{x0m9w0GsL32QZaTfThlqG+^jm9%Z!=m5LCN?YcUcO#yppEZ|RLV>zBqBc}Q( zb@qTUGEXU+9Z6pX5?d3de|iahqIi(z`{rt{KOju8U~um;V^Ac47?#nF3J#cgZL*h7>ER-sZx6;PbV&2 zw9_&kInt)nDkjJd)0HvEw)q%*Dl>}>8U=9)``A=VvJxL>dx;DFfGsj1>qzHhF9Rq* zj)2@alSgnd9%;uSbOG(p%)n`9lQ{_T*$c2@!CO8VvpHclz+1@RtW!SUqwG)F67eFP z!zv3}PY!Zl%dn+1N(UJBhUn zp>%F+agpBqfrQyCDVdp2bTg@s;G*l?xA$Hq&$^t#ckBz+@PzvL3EJ2F=p7nPBFTIr z(U$|((Mu@f*FZlaXeCf(-GpU-CsYY#WBC*`u( zytXz`qaIj;4i_$XR4k)4h#!5qK9#o?Cs>>W22fmsWc({w4ng&|29czbBy5+gy}?ZF z>z{9-egef|8Tj&u7*kH;Nt>>v3&T?mRXI9D&`s_OK)63iE3dH;!KG zW1;1~_NYgVY%!dgUwimbBUhYOYmJT##`Q<0dC~{H5^3vq z#xosEXl8as9N8=+4m$cN`D!uqxh1&#Tz^N!7*VGuyxPXltK@TQ$QD=eA4k2oOwS2X z$igd~SycB8>zUE>J6xw$7@q55uXu3PHD4&?)CsBp$KVNDoTD$1z8Kn{e9|hyxTvoh zwb989IL6R#>5^+CCq?OEr)SQ^Nqy?@kgGqI^{`CEL7UD^z=JwJGd`zCvC3RJUpTdp zQExl_WY$3+cyR(zesJiiTP*N~zDG6=6FWdrw>({H>CeNnXFZJCLOT8YD_GWfM}InY zz|lh|WSLE8b0ae|i>OoG;%KzHLDVJ3bRK@OB5gYBcwBQMp!i>Ex2-+ID0C|tYwe-O zUbQyK+QW{MTX?{|^JLbdmw-Kt$&NbP*B%WSM-iTTuf0hbS7oRIur#2nn66_Tf`>yJ zB53VVmIjL#`my%#q z9Cj2rKD+WX3|lOV(;lVK3o}n`Fj>+LuJq9Yn_kM}7^lo4^V5!k*>`aaCmkV%5Gh>X z%}-}>z5^HHkw7SZPKRm5 zNiQ^xt<8NOtcWOL1`cBk5~`_Jwn5MnW>0HO9Ekz5j=An#LI@c)xB96a1tg8Z8-Pv|p?UcDxj><*sP-O>fz-|3 z^G>AkR~`xHGcj-)=s?nUu)24G6g?pD>!L9gECufa>DdlWU_@Fcx4pXeb?PKi563WN z%f0Z?1W6mLwt=38i-J{jk9d)NRBw;QRM~c~aPdd16r!G$wrDUFh!ZI$<><80YI?7_ zjZn|54&1EAxdnOH*Hz5b0L?_MV@QsAwujr9tl@fM3~$x=oO-odMi4*PJTeEzSS(fb zG>DH#Rdl60XxEKnzb6Br7=(JOuynPq67mMBgamCP=GN=rc}Kim((Aksqri%68|_@W z%pfF)MRPho-NF!Pi3N1=+Tf>{9Nb5O4OZ}uq3Ei}R$l`9Ivj}7GsymGVN@zuq%*LW zWP|Xg$8qEkSdeUwaIf%`JGxVo755w&TL22fwIjE?VRq-NoHn{B@n`m-`H9(lb3T7@ zeO`9Y?aWW7=Wu4ih319yY*QLhs}IJE#?V1!fzFJSj-jSY>tNP;XPtrnW9sS@WvlXQ z)fL^WB(w6*@$-R#G-jB2B21vziV@Yv?r4SRA{#-mMv9RTk$_5MHh(p@#h}s#TWtw` zYQOl0VkS4V9mzbIozAqJK?JxxMZ9{Qpytc-Sa<4XP6x=r<^LIjTdhm#MKXP1V z|4eTg85_k@tmN<=pYtj5BBa5|`Ni3Eu1!x~=s;LJf+RnmnZXFXq<3CL4^GyQU88b3 z$;o-G0^See(>#jrj??KNNb~;Fs<}Hy&S77k*4=q;2EqG!-*PN_;bO};W5Kb)>7M6Ile;)b^ zQTbfE!hF7E^3=pw)5MrpdXn_DO*rlYJ9-Maz~Y=~L`+@~<}Kn@*}ijp4%O*N-Exq2 zqX&V!XiwPQ?#ZuM~JgiUY1y-**DPV}pxfXy+4xqBc0O-~E?u=G`ySX4XF(F&psz7W|)nz0FMj3-29s^zh>Qb9(Z~ z+GP z{*j~Ddz*eFcCn40@QwVf>4k%&wUnR^#Q* zzuyihVUh&F{l_OC1rVu=r_Jz<`Vw)gdSEyro%xR8|Jm=hnKI?H`={KzA9oL!N%I)4 zW9BsO#?2{n63^qf-iLesd8_5${lA2NvFYDp4)YFXhyS+y9bj>{yoF-KFUNxa4^${h zJYdph5pc35XEJ~}XU>~>$+k^OP2p`Csd>Cln*#F9<4OO#(ei%+XaYDDkSmMy3lWh1 zwd5H#_V0dk4)?HufM3Fl0^Y1ykUB1-MQJ=CtO9?IO3l-F8bl5AsDG(aKTIgpgpb=* z>N|pbc{43|EL8Fl&V_;j7QT`Y~U*?fIi}E>8a}XRK>|qbL=>8R8^)4^9nJ(mc_pW*w|Kt1rKT_cT1B4AP AqyPW_ diff --git a/Module/PSInfisicalAPI/bin/en-US/PSInfisicalAPI.dll-Help.xml b/Module/PSInfisicalAPI/bin/en-US/PSInfisicalAPI.dll-Help.xml index cb37781..87b7aa6 100644 --- a/Module/PSInfisicalAPI/bin/en-US/PSInfisicalAPI.dll-Help.xml +++ b/Module/PSInfisicalAPI/bin/en-US/PSInfisicalAPI.dll-Help.xml @@ -1066,7 +1066,7 @@ $RemoveInfisicalTagResult = Remove-InfisicalTag @RemoveInfisicalTagParameters Notes - ByID retrieval currently always resolves against the internal CA endpoint. CA Ids returned here are the values to pass on -CertificateAuthorityId to Request-InfisicalCertificate. The Type property distinguishes 'internal' from 'acme' when -Kind Any is used. + ByID retrieval currently always resolves against the internal CA endpoint. CA Ids returned here are the values to pass on -CertificateAuthorityId to Request-InfisicalCertificate. The Type property distinguishes 'internal' from 'acme' when -Kind Any is used. Only CAs whose EnableDirectIssuance property is True can sign a CSR through -CertificateAuthorityId; the others require a subscriber or certificate profile instead. @@ -1281,6 +1281,8 @@ $GetInfisicalCertificatePolicyResult = Get-InfisicalCertificatePolicy @GetInfisi Notes Default -PrivateKeyProtection is 'LocalOnly': the leaf is loaded into memory without persisting the private key and PrivateKeyPem is scrubbed from the emitted result unless -PrivateKeyPath or an explicit -KeyStorageFlags binding overrides it. The reuse path completes its chain from the Infisical bundle when local stores are incomplete; pass -LocalChainOnly to suppress that fetch entirely. + -CertificateAuthorityId only works against a CA that permits direct issuance (Get-InfisicalCertificateAuthority reports this as EnableDirectIssuance). The cmdlet resolves the issuer and validates this before generating a keypair, naming the subscriber, CA, or profile it will use on the verbose stream and in the -WhatIf target. There is no -CertificateTemplateId parameter because Infisical's REST API exposes no template-based issuance route; when the API asks for 'a certificate template or subscriber', supply -PkiSubscriberSlug or -CertificateProfileId, or enable direct issuance on the CA. + -CommonName takes the bare value ('web01.contoso.com'), not an RDN; a leading 'CN=' is stripped because the CSR builder adds the prefix itself. -DnsName accepts the mixed output of Get-InfisicalSANList: IP literals in that list are emitted as iPAddress SAN entries rather than dNSName entries. diff --git a/Module/PSInfisicalAPI/en-US/PSInfisicalAPI.dll-Help.xml b/Module/PSInfisicalAPI/en-US/PSInfisicalAPI.dll-Help.xml index cb37781..87b7aa6 100644 --- a/Module/PSInfisicalAPI/en-US/PSInfisicalAPI.dll-Help.xml +++ b/Module/PSInfisicalAPI/en-US/PSInfisicalAPI.dll-Help.xml @@ -1066,7 +1066,7 @@ $RemoveInfisicalTagResult = Remove-InfisicalTag @RemoveInfisicalTagParameters Notes - ByID retrieval currently always resolves against the internal CA endpoint. CA Ids returned here are the values to pass on -CertificateAuthorityId to Request-InfisicalCertificate. The Type property distinguishes 'internal' from 'acme' when -Kind Any is used. + ByID retrieval currently always resolves against the internal CA endpoint. CA Ids returned here are the values to pass on -CertificateAuthorityId to Request-InfisicalCertificate. The Type property distinguishes 'internal' from 'acme' when -Kind Any is used. Only CAs whose EnableDirectIssuance property is True can sign a CSR through -CertificateAuthorityId; the others require a subscriber or certificate profile instead. @@ -1281,6 +1281,8 @@ $GetInfisicalCertificatePolicyResult = Get-InfisicalCertificatePolicy @GetInfisi Notes Default -PrivateKeyProtection is 'LocalOnly': the leaf is loaded into memory without persisting the private key and PrivateKeyPem is scrubbed from the emitted result unless -PrivateKeyPath or an explicit -KeyStorageFlags binding overrides it. The reuse path completes its chain from the Infisical bundle when local stores are incomplete; pass -LocalChainOnly to suppress that fetch entirely. + -CertificateAuthorityId only works against a CA that permits direct issuance (Get-InfisicalCertificateAuthority reports this as EnableDirectIssuance). The cmdlet resolves the issuer and validates this before generating a keypair, naming the subscriber, CA, or profile it will use on the verbose stream and in the -WhatIf target. There is no -CertificateTemplateId parameter because Infisical's REST API exposes no template-based issuance route; when the API asks for 'a certificate template or subscriber', supply -PkiSubscriberSlug or -CertificateProfileId, or enable direct issuance on the CA. + -CommonName takes the bare value ('web01.contoso.com'), not an RDN; a leading 'CN=' is stripped because the CSR builder adds the prefix itself. -DnsName accepts the mixed output of Get-InfisicalSANList: IP literals in that list are emitted as iPAddress SAN entries rather than dNSName entries. diff --git a/Module/PSInfisicalAPI/en-US/about_PSInfisicalAPI.help.txt b/Module/PSInfisicalAPI/en-US/about_PSInfisicalAPI.help.txt index ac9ffea..d86c500 100644 --- a/Module/PSInfisicalAPI/en-US/about_PSInfisicalAPI.help.txt +++ b/Module/PSInfisicalAPI/en-US/about_PSInfisicalAPI.help.txt @@ -84,6 +84,39 @@ EXAMPLES Get-InfisicalSecrets | Export-InfisicalSecrets -Path .\secrets.env -Format Env +ERROR HANDLING AND STREAMS + Every cmdlet derives from PSCmdlet, so the common parameters are bound: + -Verbose, -Debug, -ErrorAction, -ErrorVariable, -WarningAction, + -WarningVariable, -InformationAction, -InformationVariable, -OutVariable, + and -PipelineVariable, plus -WhatIf/-Confirm where ShouldProcess applies. + + Output is separated by stream so those parameters mean what they say: + + Error The failure itself, once, as a non-terminating ErrorRecord. + Warning Advisories that are not failures. + Verbose Request/response trace and the trail leading up to a failure. + Debug Low-level detail. + + Operation failures are NON-TERMINATING, so -ErrorAction decides the + outcome: + + Continue (default) Error is written; a pipeline keeps processing. + SilentlyContinue Nothing printed; still in $Error/-ErrorVariable. + Ignore Nothing printed and nothing recorded. + Stop Promoted to terminating; try/catch catches it. + + To catch a failure you must ask for it: + + try { + Request-InfisicalCertificate @Parameters -ErrorAction Stop + } catch [PSInfisicalAPI.Errors.InfisicalApiException] { + "HTTP $($_.Exception.StatusCode): $($_.Exception.ApiErrorMessage)" + } + + The ErrorRecord carries the API detail, so log scraping is unnecessary: + $Error[0].Exception exposes StatusCode, ApiErrorCode, ApiErrorMessage, and + ApiRequestId on InfisicalApiException. + SECURITY NOTES - SecureString is used for ClientSecret, AccessToken, and any secret payloads returned by the API. diff --git a/README.md b/README.md index ba2e9b3..6a1abd3 100644 --- a/README.md +++ b/README.md @@ -146,7 +146,7 @@ Disconnect-Infisical ## End-to-end: request and install a chained certificate -Connects, selects a project by name, sources SANs from `Get-InfisicalSANList`, picks the first available internal CA, requests a certificate, installs it (and its chain) into the current-user store, and disconnects. Each call uses a splatted `OrderedDictionary` constructed with `OrdinalIgnoreCase` so parameter names round-trip case-insensitively. +Connects, selects a `cert-manager` project, sources SANs from `Get-InfisicalSANList`, requests a certificate through a PKI subscriber, installs it (and its chain) into the current-user store, and disconnects. Each call uses a splatted `OrderedDictionary` constructed with `OrdinalIgnoreCase` so parameter names round-trip case-insensitively. ```powershell $ConnectInfisicalParameters = New-Object -TypeName 'System.Collections.Specialized.OrderedDictionary' -ArgumentList ([System.StringComparer]::OrdinalIgnoreCase) @@ -159,25 +159,159 @@ $ConnectInfisicalParameters = New-Object -TypeName 'System.Collections.Specializ $Connection = Connect-Infisical @ConnectInfisicalParameters -$Project = Get-InfisicalProject | Where-Object {($_.Name -eq 'Platform')} | Select-Object -First 1 -$Ca = Get-InfisicalCertificateAuthority -ProjectId ($Project.Id) | Select-Object -First 1 -$SanList = Get-InfisicalSANList +$Project = Get-InfisicalProject -Type cert-manager | Where-Object {($_.Name -eq 'Platform')} | Select-Object -First 1 +$Subscriber = Get-InfisicalPkiSubscriber -ProjectId ($Project.Id) | Select-Object -First 1 +$SanList = Get-InfisicalSANList $RequestInfisicalCertificateParameters = New-Object -TypeName 'System.Collections.Specialized.OrderedDictionary' -ArgumentList ([System.StringComparer]::OrdinalIgnoreCase) - $RequestInfisicalCertificateParameters.ProjectId = $Project.Id - $RequestInfisicalCertificateParameters.CertificateAuthorityId = $Ca.Id - $RequestInfisicalCertificateParameters.CommonName = "CN=$($Env:ComputerName.ToUpper())" - $RequestInfisicalCertificateParameters.DnsName = New-Object -TypeName 'System.Collections.Generic.List[System.String]' + $RequestInfisicalCertificateParameters.ProjectId = $Project.Id + $RequestInfisicalCertificateParameters.PkiSubscriberSlug = $Subscriber.Name + $RequestInfisicalCertificateParameters.CommonName = $Env:ComputerName.ToUpper() + $RequestInfisicalCertificateParameters.DnsName = New-Object -TypeName 'System.Collections.Generic.List[System.String]' $RequestInfisicalCertificateParameters.DnsName.AddRange($SanList) $RequestInfisicalCertificateParameters.DnsName.Add('myrecord.mydomain.com') - $RequestInfisicalCertificateParameters.Ttl = '90d' - $RequestInfisicalCertificateParameters.Install = $True - $RequestInfisicalCertificateParameters.InstallChain = $True - $Certificate = Request-InfisicalCertificate @RequestInfisicalCertificateParameters + $RequestInfisicalCertificateParameters.Install = $True + $RequestInfisicalCertificateParameters.InstallChain = $True + $RequestInfisicalCertificateParameters.Verbose = $True + +$Certificate = Request-InfisicalCertificate @RequestInfisicalCertificateParameters $Null = Disconnect-Infisical -Verbose ``` +### Choosing an issuance path + +`Request-InfisicalCertificate` has three mutually exclusive issuance parameter sets. Which one works depends on how the project is configured in Infisical: + +| Parameter | Use when | +| -------------------------- | ------------------------------------------------------------------------------------------ | +| `-PkiSubscriberSlug` | The project defines PKI subscribers (`Get-InfisicalPkiSubscriber`). Preferred for most setups. | +| `-CertificateProfileId` | The project issues through certificate profiles (`Get-InfisicalCertificateProfile`). | +| `-CertificateAuthorityId` | Signing straight against a CA. Requires **direct issuance** to be enabled on that CA. | + +There is no `-CertificateTemplateId` parameter. Infisical's REST API exposes no template-based issuance route — templates are consumed internally by EST and subscribers — so when the API says *"Certificate template or subscriber is required for issuance"*, the reachable answers are a subscriber, a profile, or enabling direct issuance. + +The cmdlet resolves and reports the issuer before generating a keypair, so `-Verbose` tells you exactly what will sign the request: + +```text +VERBOSE: [...] - [Information] - [RequestInfisicalCertificateCmdlet] - Issuing via PKI subscriber 'web-tier' in project '2122628e-...'. +VERBOSE: [...] - [Information] - [RequestInfisicalCertificateCmdlet] - Issuing directly via certificate authority 'intermediate-ca' (bf661d78-...); direct issuance is enabled. +``` + +`-WhatIf` names the same issuer without issuing anything: + +```powershell +Request-InfisicalCertificate @RequestInfisicalCertificateParameters -WhatIf +# What if: Performing the operation "Request new certificate" on target +# "PKI subscriber 'web-tier' for CN=WEB01". +``` + +#### Discovering subscribers + +A subscriber is a named enrollment identity that pins the CA, TTL, key usages, and SAN policy, so the request carries only a CSR. List what a project offers: + +```powershell +Get-InfisicalPkiSubscriber -ProjectId ($Project.Id) | + Format-Table Name, CommonName, Status, Ttl, CaId +``` + +Pass the subscriber's `Name` to `-PkiSubscriberSlug`. Because the subscriber owns the lifetime and usage policy, `-Ttl`, `-KeyUsage`, and `-ExtendedKeyUsage` are not accepted on this parameter set — set them on the subscriber in Infisical instead. + +If the project has no subscribers, either create one (**Certificate Management > Subscribers > Add Subscriber**) or use one of the other two paths. + +#### Enabling direct issuance on a CA + +Direct issuance lets a CA sign a bare CSR with no subscriber or template in front of it. It is a per-CA setting, and Infisical rejects the request with `400 Certificate template or subscriber is required for issuance` when it is off. This module now catches that before building a CSR: + +```text +Request-InfisicalCertificate : Certificate authority 'intermediate-ca' (bf661d78-...) has direct issuance +disabled, so it cannot sign a CSR on its own. Either enable direct issuance on the CA in Infisical +(Certificate Authorities > the CA > Enable Direct Issuance), or issue through a subscriber or profile +instead: Request-InfisicalCertificate -PkiSubscriberSlug ... or -CertificateProfileId ... +``` + +To turn it on, in the Infisical UI open the `cert-manager` project, go to **Certificate Authorities**, select the CA, and enable **Direct Issuance** in its settings. The setting is surfaced by this module as `EnableDirectIssuance`, so you can confirm it and pick an eligible CA in one step: + +```powershell +Get-InfisicalCertificateAuthority -ProjectId ($Project.Id) -Kind Internal | + Format-Table Name, CommonName, Status, EnableDirectIssuance + +$Ca = Get-InfisicalCertificateAuthority -ProjectId ($Project.Id) -Kind Internal | + Where-Object {($_.EnableDirectIssuance -eq $True)} | + Select-Object -First 1 + +$RequestInfisicalCertificateParameters.CertificateAuthorityId = $Ca.Id +$RequestInfisicalCertificateParameters.Ttl = '90d' # required by the CA path +``` + +Prefer a subscriber or profile for routine enrollment: direct issuance bypasses the naming and key-usage constraints those layers enforce. Reserve it for bootstrap or break-glass cases. + +### Subject and SAN handling + +- `-CommonName` takes the bare value (`WEB01.contoso.com`), not an RDN. `CN=WEB01` is accepted and normalized, since the CSR builder adds the `CN=` prefix itself. +- `Get-InfisicalSANList` returns DNS names *and* IP addresses in one list. Passing the whole list to `-DnsName` is fine: IP literals are detected and emitted as `iPAddress` SAN entries rather than malformed `dNSName` entries. +- `-Ttl` (or `-NotAfter`) applies to the `-CertificateAuthorityId` and `-CertificateProfileId` paths. Subscriber-issued certificates take their lifetime from the subscriber definition. + +## Diagnostics and error handling + +Every cmdlet derives from `PSCmdlet`, so the full set of common parameters is bound: `-Verbose`, `-Debug`, `-ErrorAction`, `-ErrorVariable`, `-WarningAction`, `-WarningVariable`, `-InformationAction`, `-InformationVariable`, `-OutVariable`, `-PipelineVariable`, and `-WhatIf`/`-Confirm` on the cmdlets that declare `SupportsShouldProcess`. + +Output is routed by stream so those parameters mean what they say: + +| Stream | Carries | Controlled by | +| ----------- | ----------------------------------------------------------------------- | ------------------------------------ | +| Error | The failure itself, once, as a non-terminating `ErrorRecord` | `-ErrorAction`, `-ErrorVariable`, `2>` | +| Warning | Genuine advisories that are not failures (e.g. issuance returned no certificate) | `-WarningAction`, `-WarningVariable` | +| Verbose | Request/response trace and the diagnostic trail leading up to a failure | `-Verbose` | +| Debug | Low-level detail | `-Debug` | + +A failed call surfaces exactly one error. The `[Error]`-tagged diagnostic lines that precede it are on the verbose stream, so they appear only under `-Verbose` and never compete with the `ErrorRecord`: + +```powershell +# One error, no warning noise. +Request-InfisicalCertificate @Parameters -ErrorVariable Failure -ErrorAction SilentlyContinue + +# The ErrorRecord carries the API detail; no log scraping required. +$Failure[0].Exception.StatusCode # 400 +$Failure[0].Exception.ApiErrorCode # BadRequest +$Failure[0].Exception.ApiErrorMessage # Certificate template or subscriber is required for issuance +$Failure[0].Exception.ApiRequestId # req-SSPFN1gc2zHvkV +``` + +### `-ErrorAction` decides the outcome + +Operation failures are reported as **non-terminating** errors, so `-ErrorAction` (or `$ErrorActionPreference`) governs what happens, exactly as it does for built-in cmdlets: + +| `-ErrorAction` | Behavior | +| ------------------ | ------------------------------------------------------------------------- | +| `Continue` (default) | Error is written; a pipeline keeps processing its remaining input | +| `SilentlyContinue` | Nothing is printed; the error is still in `$Error` and `-ErrorVariable` | +| `Ignore` | Nothing is printed and nothing is recorded in `$Error` | +| `Stop` | Promoted to a terminating error that `try`/`catch` catches | +| `Inquire` | Prompts | + +A failing item does not abort the batch: + +```powershell +'web01', 'does-not-exist', 'web02' | + ForEach-Object { Get-InfisicalPkiSubscriber -ProjectId $ProjectId -Name $_ -ErrorAction SilentlyContinue } +# emits web01 and web02; the failure is available in $Error +``` + +**To catch failures you must ask for it** with `-ErrorAction Stop` or `$ErrorActionPreference = 'Stop'`: + +```powershell +try { + $Certificate = Request-InfisicalCertificate @Parameters -ErrorAction Stop +} catch [PSInfisicalAPI.Errors.InfisicalApiException] { + Write-Warning "Issuance failed with HTTP $($_.Exception.StatusCode): $($_.Exception.ApiErrorMessage)" +} +``` + +> **Breaking change.** Failures were previously terminating, so `try`/`catch` caught them without `-ErrorAction Stop`. Existing `try`/`catch` blocks need `-ErrorAction Stop` added (or `$ErrorActionPreference = 'Stop'` set) to keep catching. + +Exception types are `InfisicalApiException`, `InfisicalAuthenticationException`, `InfisicalHttpException`, `InfisicalSerializationException`, `InfisicalConfigurationException`, `InfisicalExportException`, and `InfisicalImportException`, all deriving from `InfisicalException`. + ## Automatic environment-variable discovery When `Connect-Infisical` is invoked with one or more parameters missing (or set to whitespace/empty), the cmdlet searches environment variables and uses the first value it finds. This makes invocation as simple as `Connect-Infisical` when variables are set up in advance. diff --git a/src/PSInfisicalAPI.Tests/CsrAndRequestCmdletTests.cs b/src/PSInfisicalAPI.Tests/CsrAndRequestCmdletTests.cs index 0684050..debd2c3 100644 --- a/src/PSInfisicalAPI.Tests/CsrAndRequestCmdletTests.cs +++ b/src/PSInfisicalAPI.Tests/CsrAndRequestCmdletTests.cs @@ -114,6 +114,170 @@ namespace PSInfisicalAPI.Tests Assert.Equal("DE", countryProp.GetValue(result)); } + [Theory] + [InlineData("CN=WEB01", "WEB01")] + [InlineData("cn=web01.contoso.local", "web01.contoso.local")] + [InlineData("CN=WEB01,OU=IT,O=Contoso", "WEB01")] + [InlineData(" CN=WEB01 ", "WEB01")] + [InlineData("WEB01.contoso.local", "WEB01.contoso.local")] + [InlineData(null, null)] + public void MergeSubject_Normalizes_Rdn_Style_CommonName(string supplied, string expected) + { + Type helperType = ModuleAssembly.GetType("PSInfisicalAPI.Pki.InfisicalCertificateRequestHelpers", true); + MethodInfo merge = helperType.GetMethod("MergeSubject", BindingFlags.Public | BindingFlags.Static); + + object result = merge.Invoke(null, new object[] { null, supplied, null, null, null, null, null, null }); + + Assert.Equal(expected, result.GetType().GetProperty("CommonName").GetValue(result)); + } + + [Fact] + public void MergeSubject_Normalizes_CommonName_Supplied_Through_Subject_Hashtable() + { + Type helperType = ModuleAssembly.GetType("PSInfisicalAPI.Pki.InfisicalCertificateRequestHelpers", true); + MethodInfo merge = helperType.GetMethod("MergeSubject", BindingFlags.Public | BindingFlags.Static); + + Hashtable subject = new Hashtable { { "CN", "CN=WEB01" } }; + object result = merge.Invoke(null, new object[] { subject, null, null, null, null, null, null, null }); + + Assert.Equal("WEB01", result.GetType().GetProperty("CommonName").GetValue(result)); + } + + [Fact] + public void BuildDnsNames_Routes_Ip_Literals_From_DnsName_To_IpAddress_Sans() + { + // Get-InfisicalSANList emits host names and IP addresses in one list, and the documented usage + // splats that whole list into -DnsName. + PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet + { + DnsName = new[] { "WEB01", "172.16.32.24", "WEB01.contoso.local", "127.0.0.1", "::1" } + }; + + List ipAddresses = new List(); + List dnsNames = InvokeBuildDnsNames(cmdlet, new InfisicalCsrSubject { CommonName = "WEB01" }, ipAddresses); + + Assert.Equal(new[] { "WEB01", "WEB01.contoso.local" }, dnsNames); + Assert.Equal(new[] { "172.16.32.24", "127.0.0.1", "::1" }, ipAddresses); + } + + [Fact] + public void BuildDnsNames_Merges_Explicit_IpAddress_Parameter_And_Deduplicates() + { + PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet + { + DnsName = new[] { "WEB01", "10.0.0.5" }, + IpAddress = new[] { "10.0.0.5", "10.0.0.6" } + }; + + List ipAddresses = new List(); + List dnsNames = InvokeBuildDnsNames(cmdlet, new InfisicalCsrSubject { CommonName = "WEB01" }, ipAddresses); + + Assert.Equal(new[] { "WEB01" }, dnsNames); + Assert.Equal(new[] { "10.0.0.5", "10.0.0.6" }, ipAddresses); + } + + [Fact] + public void BuildDnsNames_Mirrors_Ip_CommonName_Into_IpAddress_Sans_Not_Dns() + { + PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet + { + DnsName = new[] { "WEB01.contoso.local" } + }; + + List ipAddresses = new List(); + List dnsNames = InvokeBuildDnsNames(cmdlet, new InfisicalCsrSubject { CommonName = "10.0.0.5" }, ipAddresses); + + Assert.Equal(new[] { "WEB01.contoso.local" }, dnsNames); + Assert.Equal(new[] { "10.0.0.5" }, ipAddresses); + } + + [Fact] + public void BuildDnsNames_Ip_Only_Request_Does_Not_Pick_Up_Local_Fqdn() + { + PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet + { + IpAddress = new[] { "10.0.0.5" } + }; + + List ipAddresses = new List(); + List dnsNames = InvokeBuildDnsNames(cmdlet, new InfisicalCsrSubject { CommonName = "10.0.0.5" }, ipAddresses); + + Assert.Empty(dnsNames); + Assert.Equal(new[] { "10.0.0.5" }, ipAddresses); + } + + private static List InvokeBuildDnsNames(PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet, InfisicalCsrSubject subject, List ipAddresses) + { + MethodInfo build = cmdlet.GetType().GetMethod("BuildDnsNames", BindingFlags.NonPublic | BindingFlags.Instance); + Assert.NotNull(build); + return (List)build.Invoke(cmdlet, new object[] { subject, ipAddresses }); + } + + [Fact] + public void DirectIssuance_Guidance_Names_The_Parameters_That_Resolve_It() + { + // Infisical exposes no certificate-template issuance route over REST, so the actionable alternatives + // are enabling direct issuance on the CA, a subscriber, or a profile. + PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet + { + CertificateAuthorityId = "ca-1234", + ProjectId = "proj-5678" + }; + + MethodInfo build = cmdlet.GetType().GetMethod("BuildDirectIssuanceGuidance", BindingFlags.NonPublic | BindingFlags.Instance); + Assert.NotNull(build); + + string guidance = (string)build.Invoke(cmdlet, new object[] { null }); + + Assert.Contains("ca-1234", guidance); + Assert.Contains("proj-5678", guidance); + Assert.Contains("-PkiSubscriberSlug", guidance); + Assert.Contains("-CertificateProfileId", guidance); + Assert.Contains("Get-InfisicalPkiSubscriber", guidance); + Assert.Contains("Direct Issuance", guidance); + } + + [Fact] + public void DirectIssuance_Guidance_Prefers_The_Ca_Name_When_Known() + { + PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.RequestInfisicalCertificateCmdlet + { + CertificateAuthorityId = "ca-1234", + ProjectId = "proj-5678" + }; + + PSInfisicalAPI.Models.InfisicalCertificateAuthority ca = new PSInfisicalAPI.Models.InfisicalCertificateAuthority + { + Id = "ca-1234", + Name = "intermediate-ca", + EnableDirectIssuance = false + }; + + MethodInfo build = cmdlet.GetType().GetMethod("BuildDirectIssuanceGuidance", BindingFlags.NonPublic | BindingFlags.Instance); + string guidance = (string)build.Invoke(cmdlet, new object[] { ca }); + + Assert.Contains("intermediate-ca", guidance); + Assert.Contains("ca-1234", guidance); + } + + [Theory] + [InlineData("WriteErrorForException")] + [InlineData("ThrowTerminatingForException")] + public void Failure_Handlers_Rethrow_Pipeline_Stops_Untouched(string handlerName) + { + // Select-Object -First makes WriteObject throw a PipelineStoppedException-derived type. Reporting it + // as an error surfaces spurious "The pipeline has been stopped." warnings on normal early exits. + PSInfisicalAPI.Cmdlets.GetInfisicalCertificateAuthorityCmdlet cmdlet = new PSInfisicalAPI.Cmdlets.GetInfisicalCertificateAuthorityCmdlet(); + MethodInfo method = typeof(PSInfisicalAPI.Cmdlets.InfisicalCmdletBase).GetMethod(handlerName, BindingFlags.NonPublic | BindingFlags.Instance); + Assert.NotNull(method); + + PipelineStoppedException stop = new PipelineStoppedException(); + TargetInvocationException wrapper = Assert.Throws( + () => method.Invoke(cmdlet, new object[] { "TestComponent", "TestOperation", stop })); + + Assert.Same(stop, wrapper.InnerException); + } + [Fact] public void SignCertificateBySubscriber_Uses_Pki_Subscribers_Template() { diff --git a/src/PSInfisicalAPI.Tests/LoggerStreamRoutingTests.cs b/src/PSInfisicalAPI.Tests/LoggerStreamRoutingTests.cs new file mode 100644 index 0000000..2c01d6f --- /dev/null +++ b/src/PSInfisicalAPI.Tests/LoggerStreamRoutingTests.cs @@ -0,0 +1,115 @@ +using System; +using System.Collections.Generic; +using System.Reflection; +using PSInfisicalAPI.Logging; +using Xunit; + +namespace PSInfisicalAPI.Tests +{ + ///

+ /// The test project references PowerShellStandard.Library, which cannot host a runspace, so the logger's + /// stream choice is asserted structurally: which Cmdlet.Write* method each level compiles down to. + /// + public class LoggerStreamRoutingTests + { + [Theory] + [InlineData("Error", "WriteVerbose")] + [InlineData("Warning", "WriteWarning")] + [InlineData("Information", "WriteVerbose")] + [InlineData("Verbose", "WriteVerbose")] + [InlineData("Debug", "WriteDebug")] + public void PSCmdletLogger_Routes_Level_To_Expected_Stream(string levelMethod, string expectedWriteMethod) + { + MethodInfo method = typeof(PSCmdletLogger).GetMethod(levelMethod, BindingFlags.Public | BindingFlags.Instance); + Assert.NotNull(method); + + List called = GetCalledMethodNames(method); + Assert.Contains(expectedWriteMethod, called); + } + + [Fact] + public void PSCmdletLogger_Error_Does_Not_Write_To_Warning_Stream() + { + // Every Logger.Error call site in this module logs and then throws, so the failure already reaches the + // caller as an ErrorRecord. Duplicating it on the warning stream put failures under -WarningAction + // instead of -ErrorAction and buried the real error under eight lines of noise. + MethodInfo error = typeof(PSCmdletLogger).GetMethod("Error", BindingFlags.Public | BindingFlags.Instance); + List called = GetCalledMethodNames(error); + + Assert.DoesNotContain("WriteWarning", called); + Assert.DoesNotContain("WriteError", called); + } + + [Fact] + public void No_Cmdlet_Reports_Operation_Failures_As_Terminating_Errors() + { + // Operation failures go through WriteErrorForException so -ErrorAction decides the outcome. + // ThrowTerminatingForException remains available for aborts that ignore -ErrorAction, but no cmdlet + // should be using it for ordinary failures; this pins the convention against drift. + Assembly assembly = typeof(PSInfisicalAPI.Cmdlets.InfisicalCmdletBase).Assembly; + List offenders = new List(); + int inspected = 0; + + foreach (Type type in assembly.GetTypes()) + { + if (!typeof(PSInfisicalAPI.Cmdlets.InfisicalCmdletBase).IsAssignableFrom(type)) { continue; } + if (type == typeof(PSInfisicalAPI.Cmdlets.InfisicalCmdletBase)) { continue; } + + inspected++; + foreach (MethodInfo method in type.GetMethods(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly)) + { + if (method.GetMethodBody() == null) { continue; } + if (GetCalledMethodNames(method).Contains("ThrowTerminatingForException")) + { + offenders.Add(string.Concat(type.Name, ".", method.Name)); + } + } + } + + Assert.True(inspected > 40, string.Concat("Expected to inspect the cmdlet set, saw ", inspected.ToString())); + Assert.Empty(offenders); + } + + [Fact] + public void Cmdlets_Route_Failures_Through_WriteErrorForException() + { + Assembly assembly = typeof(PSInfisicalAPI.Cmdlets.InfisicalCmdletBase).Assembly; + Type cmdletType = assembly.GetType("PSInfisicalAPI.Cmdlets.GetInfisicalCertificateAuthorityCmdlet", true); + MethodInfo processRecord = cmdletType.GetMethod("ProcessRecord", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly); + Assert.NotNull(processRecord); + + Assert.Contains("WriteErrorForException", GetCalledMethodNames(processRecord)); + } + + private static List GetCalledMethodNames(MethodInfo method) + { + List names = new List(); + MethodBody body = method.GetMethodBody(); + Assert.NotNull(body); + + byte[] il = body.GetILAsByteArray(); + Assert.NotNull(il); + + const byte Call = 0x28; + const byte CallVirt = 0x6F; + + for (int i = 0; i + 4 < il.Length; i++) + { + if (il[i] != Call && il[i] != CallVirt) { continue; } + + int token = BitConverter.ToInt32(il, i + 1); + try + { + MethodBase resolved = method.Module.ResolveMethod(token); + if (resolved != null) { names.Add(resolved.Name); } + } + catch (ArgumentException) + { + // Byte sequence was operand data rather than an opcode; ignore. + } + } + + return names; + } + } +} diff --git a/src/PSInfisicalAPI/Cmdlets/ConnectInfisicalCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ConnectInfisicalCmdlet.cs index dd80ace..553e941 100644 --- a/src/PSInfisicalAPI/Cmdlets/ConnectInfisicalCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ConnectInfisicalCmdlet.cs @@ -205,7 +205,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException(Component, "Connect", exception); + WriteErrorForException(Component, "Connect", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalCertificateCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalCertificateCmdlet.cs index a7ee2e8..059ea1b 100644 --- a/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalCertificateCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalCertificateCmdlet.cs @@ -50,7 +50,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("ConvertToInfisicalCertificateCmdlet", "ConvertToCertificate", exception); + WriteErrorForException("ConvertToInfisicalCertificateCmdlet", "ConvertToCertificate", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalSecretDictionaryCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalSecretDictionaryCmdlet.cs index fa96447..037a070 100644 --- a/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalSecretDictionaryCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ConvertToInfisicalSecretDictionaryCmdlet.cs @@ -66,7 +66,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("ConvertToInfisicalSecretDictionaryCmdlet", "ConvertToDictionary", exception); + WriteErrorForException("ConvertToInfisicalSecretDictionaryCmdlet", "ConvertToDictionary", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/CopyInfisicalSecretCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/CopyInfisicalSecretCmdlet.cs index ea85a76..c8ba03a 100644 --- a/src/PSInfisicalAPI/Cmdlets/CopyInfisicalSecretCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/CopyInfisicalSecretCmdlet.cs @@ -65,7 +65,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("CopyInfisicalSecretCmdlet", "DuplicateSecrets", exception); + WriteErrorForException("CopyInfisicalSecretCmdlet", "DuplicateSecrets", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/DisconnectInfisicalCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/DisconnectInfisicalCmdlet.cs index 404f705..a57f23d 100644 --- a/src/PSInfisicalAPI/Cmdlets/DisconnectInfisicalCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/DisconnectInfisicalCmdlet.cs @@ -27,7 +27,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("DisconnectInfisicalCmdlet", "Disconnect", exception); + WriteErrorForException("DisconnectInfisicalCmdlet", "Disconnect", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/ExportInfisicalCertificateCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ExportInfisicalCertificateCmdlet.cs index 5e1d40c..c0dd97d 100644 --- a/src/PSInfisicalAPI/Cmdlets/ExportInfisicalCertificateCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ExportInfisicalCertificateCmdlet.cs @@ -85,7 +85,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("ExportInfisicalCertificateCmdlet", "ExportCertificate", exception); + WriteErrorForException("ExportInfisicalCertificateCmdlet", "ExportCertificate", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/ExportInfisicalScepMdmProfileCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ExportInfisicalScepMdmProfileCmdlet.cs index 3daef68..72150ad 100644 --- a/src/PSInfisicalAPI/Cmdlets/ExportInfisicalScepMdmProfileCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ExportInfisicalScepMdmProfileCmdlet.cs @@ -58,7 +58,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException(Component, "ExportScepMdmProfile", exception); + WriteErrorForException(Component, "ExportScepMdmProfile", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/ExportInfisicalSecretsCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ExportInfisicalSecretsCmdlet.cs index af61551..641026d 100644 --- a/src/PSInfisicalAPI/Cmdlets/ExportInfisicalSecretsCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ExportInfisicalSecretsCmdlet.cs @@ -92,7 +92,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("ExportInfisicalSecretsCmdlet", string.Concat("Export-", Format.ToString()), exception); + WriteErrorForException("ExportInfisicalSecretsCmdlet", string.Concat("Export-", Format.ToString()), exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationCmdlet.cs index cfa4f95..db11a1b 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationCmdlet.cs @@ -54,7 +54,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalCertificateApplicationCmdlet", "GetCertificateApplication", exception); + WriteErrorForException("GetInfisicalCertificateApplicationCmdlet", "GetCertificateApplication", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationEnrollmentCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationEnrollmentCmdlet.cs index 6001970..c8d3db7 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationEnrollmentCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateApplicationEnrollmentCmdlet.cs @@ -35,7 +35,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalCertificateApplicationEnrollmentCmdlet", "GetCertificateApplicationEnrollment", exception); + WriteErrorForException("GetInfisicalCertificateApplicationEnrollmentCmdlet", "GetCertificateApplicationEnrollment", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateAuthorityCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateAuthorityCmdlet.cs index b5435e7..6b161c0 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateAuthorityCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateAuthorityCmdlet.cs @@ -60,7 +60,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalCertificateAuthorityCmdlet", "GetCertificateAuthority", exception); + WriteErrorForException("GetInfisicalCertificateAuthorityCmdlet", "GetCertificateAuthority", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateCmdlet.cs index 7109748..4ef7e24 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateCmdlet.cs @@ -134,7 +134,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalCertificateCmdlet", "GetCertificate", exception); + WriteErrorForException("GetInfisicalCertificateCmdlet", "GetCertificate", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificatePolicyCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificatePolicyCmdlet.cs index 840b9c8..1046afe 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificatePolicyCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificatePolicyCmdlet.cs @@ -47,7 +47,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalCertificatePolicyCmdlet", "GetCertificatePolicy", exception); + WriteErrorForException("GetInfisicalCertificatePolicyCmdlet", "GetCertificatePolicy", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateProfileCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateProfileCmdlet.cs index 737d3ee..6e14bf7 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateProfileCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalCertificateProfileCmdlet.cs @@ -50,7 +50,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalCertificateProfileCmdlet", "GetCertificateProfile", exception); + WriteErrorForException("GetInfisicalCertificateProfileCmdlet", "GetCertificateProfile", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalEnvironmentCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalEnvironmentCmdlet.cs index 01efdf6..8f1cd28 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalEnvironmentCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalEnvironmentCmdlet.cs @@ -43,7 +43,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalEnvironmentCmdlet", "GetEnvironment", exception); + WriteErrorForException("GetInfisicalEnvironmentCmdlet", "GetEnvironment", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalFolderCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalFolderCmdlet.cs index 2ae3ce8..8e4aa4f 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalFolderCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalFolderCmdlet.cs @@ -45,7 +45,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalFolderCmdlet", "GetFolder", exception); + WriteErrorForException("GetInfisicalFolderCmdlet", "GetFolder", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalOrganizationCmdlet.cs index 5e891b6..cdfaabb 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalOrganizationCmdlet.cs @@ -41,7 +41,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalOrganizationCmdlet", "GetOrganization", exception); + WriteErrorForException("GetInfisicalOrganizationCmdlet", "GetOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalPkiSubscriberCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalPkiSubscriberCmdlet.cs index 35b4c39..5a1a37a 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalPkiSubscriberCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalPkiSubscriberCmdlet.cs @@ -43,7 +43,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalPkiSubscriberCmdlet", "GetPkiSubscriber", exception); + WriteErrorForException("GetInfisicalPkiSubscriberCmdlet", "GetPkiSubscriber", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalProjectCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalProjectCmdlet.cs index a239a79..05f5da4 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalProjectCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalProjectCmdlet.cs @@ -47,7 +47,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalProjectCmdlet", "GetProject", exception); + WriteErrorForException("GetInfisicalProjectCmdlet", "GetProject", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalSANListCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalSANListCmdlet.cs index 998fca8..460c368 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalSANListCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalSANListCmdlet.cs @@ -82,7 +82,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException(Component, "GetSANList", exception); + WriteErrorForException(Component, "GetSANList", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalScepMdmProfileCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalScepMdmProfileCmdlet.cs index 59336e0..19e08ad 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalScepMdmProfileCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalScepMdmProfileCmdlet.cs @@ -86,7 +86,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException(Component, "GetScepMdmProfile", exception); + WriteErrorForException(Component, "GetScepMdmProfile", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalSecretCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalSecretCmdlet.cs index 972ded1..d7cc80d 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalSecretCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalSecretCmdlet.cs @@ -93,7 +93,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalSecretCmdlet", "GetSecret", exception); + WriteErrorForException("GetInfisicalSecretCmdlet", "GetSecret", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalSubOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalSubOrganizationCmdlet.cs index ab8ff47..d23d8af 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalSubOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalSubOrganizationCmdlet.cs @@ -53,7 +53,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalSubOrganizationCmdlet", "GetSubOrganization", exception); + WriteErrorForException("GetInfisicalSubOrganizationCmdlet", "GetSubOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/GetInfisicalTagCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/GetInfisicalTagCmdlet.cs index 06d9dce..3905af6 100644 --- a/src/PSInfisicalAPI/Cmdlets/GetInfisicalTagCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/GetInfisicalTagCmdlet.cs @@ -43,7 +43,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("GetInfisicalTagCmdlet", "GetTag", exception); + WriteErrorForException("GetInfisicalTagCmdlet", "GetTag", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/ImportInfisicalSecretCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/ImportInfisicalSecretCmdlet.cs index 4eaa520..c6852ba 100644 --- a/src/PSInfisicalAPI/Cmdlets/ImportInfisicalSecretCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/ImportInfisicalSecretCmdlet.cs @@ -66,7 +66,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("ImportInfisicalSecretCmdlet", "ImportSecret", exception); + WriteErrorForException("ImportInfisicalSecretCmdlet", "ImportSecret", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/InfisicalCmdletBase.cs b/src/PSInfisicalAPI/Cmdlets/InfisicalCmdletBase.cs index bdc69ce..bcb6735 100644 --- a/src/PSInfisicalAPI/Cmdlets/InfisicalCmdletBase.cs +++ b/src/PSInfisicalAPI/Cmdlets/InfisicalCmdletBase.cs @@ -1,5 +1,6 @@ using System; using System.Management.Automation; +using System.Runtime.ExceptionServices; using PSInfisicalAPI.Connections; using PSInfisicalAPI.Errors; using PSInfisicalAPI.Http; @@ -44,12 +45,54 @@ namespace PSInfisicalAPI.Cmdlets return current != null && current.SkipCertificateCheck; } + /// + /// Reports an operation failure as a non-terminating error, which is what lets -ErrorAction decide the + /// outcome: Continue prints and carries on, SilentlyContinue and Ignore suppress, Inquire prompts, and + /// Stop is promoted by the engine into a terminating error that try/catch sees. Scripts that want to + /// catch these must ask for it with -ErrorAction Stop or $ErrorActionPreference = 'Stop'. + /// + protected void WriteErrorForException(string component, string operation, Exception exception) + { + ErrorRecord record = BuildFailureRecord(component, operation, exception); + WriteError(record); + } + + /// + /// Reports a failure the cmdlet cannot continue past regardless of -ErrorAction. Reserved for aborts that + /// are not per-item failures; ordinary operation failures belong on . + /// protected void ThrowTerminatingForException(string component, string operation, Exception exception) { + ErrorRecord record = BuildFailureRecord(component, operation, exception); + ThrowTerminatingError(record); + } + + private ErrorRecord BuildFailureRecord(string component, string operation, Exception exception) + { + if (IsPipelineControlException(exception)) + { + ExceptionDispatchInfo.Capture(exception).Throw(); + } + InfisicalErrorDetails details = InfisicalErrorHandler.BuildDetails(component, operation, exception); InfisicalErrorHandler.LogFailure(Logger, details); - ErrorRecord record = InfisicalErrorHandler.ToErrorRecord(exception, details); - ThrowTerminatingError(record); + return InfisicalErrorHandler.ToErrorRecord(exception, details); + } + + /// + /// Identifies exceptions the PowerShell engine uses to unwind a pipeline rather than to report a fault. + /// Downstream cmdlets that stop early (Select-Object -First, Where-Object feeding such a + /// cmdlet, Ctrl+C) make throw one of + /// these. Reporting them as errors turns a normal early exit into spurious "The pipeline has been stopped." + /// output, so they must propagate untouched. + /// + protected static bool IsPipelineControlException(Exception exception) + { + // StopUpstreamCommandsException (internal, thrown by Select-Object -First) derives from + // PipelineStoppedException, so the base type covers it. + return exception is PipelineStoppedException + || exception is PipelineClosedException + || exception is HaltCommandException; } protected string ResolveApiVersion(InfisicalConnection connection, string explicitValue) diff --git a/src/PSInfisicalAPI/Cmdlets/InstallInfisicalCertificateCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/InstallInfisicalCertificateCmdlet.cs index 03b635a..b9dffe0 100644 --- a/src/PSInfisicalAPI/Cmdlets/InstallInfisicalCertificateCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/InstallInfisicalCertificateCmdlet.cs @@ -56,7 +56,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("InstallInfisicalCertificateCmdlet", "InstallCertificate", exception); + WriteErrorForException("InstallInfisicalCertificateCmdlet", "InstallCertificate", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalEnvironmentCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalEnvironmentCmdlet.cs index ad11bef..b0b919b 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalEnvironmentCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalEnvironmentCmdlet.cs @@ -34,7 +34,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalEnvironmentCmdlet", "CreateEnvironment", exception); + WriteErrorForException("NewInfisicalEnvironmentCmdlet", "CreateEnvironment", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalFolderCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalFolderCmdlet.cs index 46b6f97..67c2aeb 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalFolderCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalFolderCmdlet.cs @@ -34,7 +34,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalFolderCmdlet", "CreateFolder", exception); + WriteErrorForException("NewInfisicalFolderCmdlet", "CreateFolder", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalOrganizationCmdlet.cs index 2d67d01..5e45df3 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalOrganizationCmdlet.cs @@ -32,7 +32,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalOrganizationCmdlet", "CreateOrganization", exception); + WriteErrorForException("NewInfisicalOrganizationCmdlet", "CreateOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalProjectCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalProjectCmdlet.cs index 73cd932..6a6f2b7 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalProjectCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalProjectCmdlet.cs @@ -40,7 +40,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalProjectCmdlet", "CreateProject", exception); + WriteErrorForException("NewInfisicalProjectCmdlet", "CreateProject", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalScepDynamicChallengeCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalScepDynamicChallengeCmdlet.cs index abaee4e..6954948 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalScepDynamicChallengeCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalScepDynamicChallengeCmdlet.cs @@ -42,7 +42,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalScepDynamicChallengeCmdlet", "GenerateScepDynamicChallenge", exception); + WriteErrorForException("NewInfisicalScepDynamicChallengeCmdlet", "GenerateScepDynamicChallenge", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalSecretCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalSecretCmdlet.cs index 604de84..eccd520 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalSecretCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalSecretCmdlet.cs @@ -99,7 +99,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalSecretCmdlet", "CreateSecret", exception); + WriteErrorForException("NewInfisicalSecretCmdlet", "CreateSecret", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalSubOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalSubOrganizationCmdlet.cs index f01c580..80fa582 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalSubOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalSubOrganizationCmdlet.cs @@ -32,7 +32,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalSubOrganizationCmdlet", "CreateSubOrganization", exception); + WriteErrorForException("NewInfisicalSubOrganizationCmdlet", "CreateSubOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/NewInfisicalTagCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/NewInfisicalTagCmdlet.cs index 3014fcb..c4b8746 100644 --- a/src/PSInfisicalAPI/Cmdlets/NewInfisicalTagCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/NewInfisicalTagCmdlet.cs @@ -34,7 +34,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("NewInfisicalTagCmdlet", "CreateTag", exception); + WriteErrorForException("NewInfisicalTagCmdlet", "CreateTag", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalEnvironmentCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalEnvironmentCmdlet.cs index 48b3c24..23e3231 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalEnvironmentCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalEnvironmentCmdlet.cs @@ -35,7 +35,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalEnvironmentCmdlet", "DeleteEnvironment", exception); + WriteErrorForException("RemoveInfisicalEnvironmentCmdlet", "DeleteEnvironment", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalFolderCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalFolderCmdlet.cs index 597defc..e189446 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalFolderCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalFolderCmdlet.cs @@ -37,7 +37,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalFolderCmdlet", "DeleteFolder", exception); + WriteErrorForException("RemoveInfisicalFolderCmdlet", "DeleteFolder", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalOrganizationCmdlet.cs index 5adbd6e..ab51732 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalOrganizationCmdlet.cs @@ -35,7 +35,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalOrganizationCmdlet", "DeleteOrganization", exception); + WriteErrorForException("RemoveInfisicalOrganizationCmdlet", "DeleteOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalProjectCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalProjectCmdlet.cs index 86bf47a..9341265 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalProjectCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalProjectCmdlet.cs @@ -35,7 +35,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalProjectCmdlet", "DeleteProject", exception); + WriteErrorForException("RemoveInfisicalProjectCmdlet", "DeleteProject", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSecretCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSecretCmdlet.cs index bccec64..52892eb 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSecretCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSecretCmdlet.cs @@ -79,7 +79,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalSecretCmdlet", "DeleteSecret", exception); + WriteErrorForException("RemoveInfisicalSecretCmdlet", "DeleteSecret", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSubOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSubOrganizationCmdlet.cs index 28ae190..fa86350 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSubOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalSubOrganizationCmdlet.cs @@ -35,7 +35,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalSubOrganizationCmdlet", "DeleteSubOrganization", exception); + WriteErrorForException("RemoveInfisicalSubOrganizationCmdlet", "DeleteSubOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalTagCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalTagCmdlet.cs index 9280a22..87729a4 100644 --- a/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalTagCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RemoveInfisicalTagCmdlet.cs @@ -35,7 +35,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("RemoveInfisicalTagCmdlet", "DeleteTag", exception); + WriteErrorForException("RemoveInfisicalTagCmdlet", "DeleteTag", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/RequestInfisicalCertificateCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/RequestInfisicalCertificateCmdlet.cs index 2a761de..cde6140 100644 --- a/src/PSInfisicalAPI/Cmdlets/RequestInfisicalCertificateCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/RequestInfisicalCertificateCmdlet.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using System.Management.Automation; using System.Security.Cryptography.X509Certificates; using PSInfisicalAPI.Connections; +using PSInfisicalAPI.Errors; using PSInfisicalAPI.Models; using PSInfisicalAPI.Pki; @@ -79,7 +80,8 @@ namespace PSInfisicalAPI.Cmdlets InfisicalPkiClient client = new InfisicalPkiClient(HttpClient, Logger); InfisicalCsrSubject csrSubject = InfisicalCertificateRequestHelpers.MergeSubject(Subject, CommonName, Country, State, Locality, Organization, OrganizationalUnit, EmailAddress); - List dnsNames = BuildDnsNames(csrSubject); + List ipAddresses = new List(); + List dnsNames = BuildDnsNames(csrSubject, ipAddresses); if (string.IsNullOrEmpty(csrSubject.CommonName) && dnsNames.Count > 0) { csrSubject.CommonName = dnsNames[0]; } if (string.IsNullOrEmpty(csrSubject.CommonName)) { throw new InvalidOperationException("Subject CommonName could not be determined and no DnsName was provided."); } @@ -104,6 +106,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception bundleException) { + if (IsPipelineControlException(bundleException)) { throw; } Logger.Verbose(Component, string.Concat("Infisical bundle fetch for reuse path failed (continuing with local-only chain): ", bundleException.Message)); } } @@ -112,12 +115,14 @@ namespace PSInfisicalAPI.Cmdlets return; } - string target = string.Concat("PKI subscriber '", PkiSubscriberSlug ?? "(n/a)", "', CA '", CertificateAuthorityId ?? "(n/a)", "', or profile '", CertificateProfileId ?? "(n/a)", "' for CN=", csrSubject.CommonName); + string issuer = ResolveIssuancePath(client, connection); + + string target = string.Concat(issuer, " for CN=", csrSubject.CommonName); if (!ShouldProcess(target, "Request new certificate")) { return; } InfisicalCsrOptions csrOptions = new InfisicalCsrOptions { KeyAlgorithm = KeyAlgorithm, RsaKeySize = KeySize, EcCurve = Curve }; - InfisicalCsrResult csr = InfisicalCsrBuilder.Build(csrSubject, dnsNames, IpAddress, csrOptions); - InfisicalSignedCertificate signed = SignCertificate(client, connection, ProjectId, csr.CsrPem); + InfisicalCsrResult csr = InfisicalCsrBuilder.Build(csrSubject, dnsNames, ipAddresses, csrOptions); + InfisicalSignedCertificate signed = SignCertificate(client, connection, ProjectId, csr.CsrPem, csrSubject); signed.PrivateKeyPem = csr.PrivateKeyPem; if (string.IsNullOrEmpty(signed.CertificatePem)) @@ -160,24 +165,123 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException(Component, "RequestCertificate", exception); + WriteErrorForException(Component, "RequestCertificate", exception); } } - private List BuildDnsNames(InfisicalCsrSubject subject) + /// + /// States which issuer will sign this request, and rejects an unusable one before a keypair is generated. + /// Direct CA signing is only permitted when the CA has direct issuance enabled; without this check the + /// cmdlet builds a CSR and learns that from a 400 at the very end. + /// + private string ResolveIssuancePath(InfisicalPkiClient client, InfisicalConnection connection) + { + if (string.Equals(ParameterSetName, "BySubscriber", StringComparison.Ordinal)) + { + Logger.Information(Component, string.Concat("Issuing via PKI subscriber '", PkiSubscriberSlug, "' in project '", ProjectId, "'.")); + return string.Concat("PKI subscriber '", PkiSubscriberSlug, "'"); + } + + if (string.Equals(ParameterSetName, "ByProfile", StringComparison.Ordinal)) + { + Logger.Information(Component, string.Concat("Issuing via certificate profile '", CertificateProfileId, "' in project '", ProjectId, "'.")); + return string.Concat("certificate profile '", CertificateProfileId, "'"); + } + + InfisicalCertificateAuthority ca = null; + try + { + ca = client.GetInternalCertificateAuthority(connection, CertificateAuthorityId, ProjectId); + } + catch (Exception lookupException) + { + if (IsPipelineControlException(lookupException)) { throw; } + + // A caller may be able to sign without permission to read the CA record. Defer to the API. + Logger.Verbose(Component, string.Concat("Could not read certificate authority '", CertificateAuthorityId, "' for preflight (continuing): ", lookupException.Message)); + return string.Concat("certificate authority '", CertificateAuthorityId, "'"); + } + + if (ca != null && ca.EnableDirectIssuance.HasValue && !ca.EnableDirectIssuance.Value) + { + throw new InfisicalConfigurationException(BuildDirectIssuanceGuidance(ca)); + } + + string caLabel = ca != null ? (ca.Name ?? ca.FriendlyName ?? CertificateAuthorityId) : CertificateAuthorityId; + Logger.Information(Component, string.Concat("Issuing directly via certificate authority '", caLabel, "' (", CertificateAuthorityId, "); direct issuance is enabled.")); + return string.Concat("certificate authority '", caLabel, "'"); + } + + /// + /// Restates the direct-issuance restriction in terms of the parameters that resolve it. Infisical's REST + /// API exposes no certificate-template issuance route, so the alternatives are a subscriber or a profile. + /// + private string BuildDirectIssuanceGuidance(InfisicalCertificateAuthority ca) + { + string caLabel = ca != null ? (ca.Name ?? ca.FriendlyName ?? CertificateAuthorityId) : CertificateAuthorityId; + return string.Concat( + "Certificate authority '", caLabel, "' (", CertificateAuthorityId, ") has direct issuance disabled, so it cannot sign a CSR on its own. ", + "Either enable direct issuance on the CA in Infisical (Certificate Authorities > the CA > Enable Direct Issuance), ", + "or issue through a subscriber or profile instead: Request-InfisicalCertificate -PkiSubscriberSlug (see Get-InfisicalPkiSubscriber -ProjectId '", ProjectId ?? "", "') ", + "or -CertificateProfileId (see Get-InfisicalCertificateProfile)."); + } + + /// + /// Splits the requested SAN values into DNS names and IP addresses. Get-InfisicalSANList emits both kinds + /// in one list, so IP literals arriving through -DnsName are routed to the IP SAN bucket rather than + /// emitted as malformed dNSName entries. + /// + private List BuildDnsNames(InfisicalCsrSubject subject, List ipAddresses) { List result = new List(); - if (DnsName != null) { foreach (string dns in DnsName) { if (!string.IsNullOrEmpty(dns)) { result.Add(dns); } } } - if (result.Count == 0) + AddSanCandidates(DnsName, result, ipAddresses); + AddSanCandidates(IpAddress, null, ipAddresses); + + // Fall back to the local FQDN only when no SAN of either kind was requested; an explicit IP-only + // request must not silently pick up this machine's name. + if (result.Count == 0 && ipAddresses.Count == 0) { string fqdn = InfisicalCertificateRequestHelpers.ResolveLocalFqdn(); if (!string.IsNullOrEmpty(fqdn)) { result.Add(fqdn); } } - if (!string.IsNullOrEmpty(subject.CommonName) && !result.Contains(subject.CommonName)) { result.Insert(0, subject.CommonName); } + // The common name is mirrored into the SAN list because most validators ignore a CN that has no + // matching SAN entry. An IP common name belongs in the iPAddress bucket, not the dNSName one. + if (!string.IsNullOrEmpty(subject.CommonName)) + { + if (IsIpLiteral(subject.CommonName)) + { + if (!ipAddresses.Contains(subject.CommonName)) { ipAddresses.Insert(0, subject.CommonName); } + } + else if (!result.Contains(subject.CommonName)) + { + result.Insert(0, subject.CommonName); + } + } + return result; } + private static void AddSanCandidates(IEnumerable candidates, List dnsNames, List ipAddresses) + { + if (candidates == null) { return; } + foreach (string candidate in candidates) + { + if (string.IsNullOrEmpty(candidate)) { continue; } + string value = candidate.Trim(); + if (value.Length == 0) { continue; } + + List bucket = IsIpLiteral(value) ? ipAddresses : dnsNames; + if (bucket != null && !bucket.Contains(value)) { bucket.Add(value); } + } + } + + private static bool IsIpLiteral(string value) + { + System.Net.IPAddress parsed; + return System.Net.IPAddress.TryParse(value, out parsed); + } + private X509Certificate2 TryFindExisting(InfisicalPkiClient client, InfisicalConnection connection, string projectId, string commonName) { List candidateSerials = new List(); @@ -192,6 +296,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception searchException) { + if (IsPipelineControlException(searchException)) { throw; } Logger.Verbose(Component, string.Concat("Infisical search for idempotency check failed: ", searchException.Message)); } @@ -208,7 +313,7 @@ namespace PSInfisicalAPI.Cmdlets return InfisicalCertificateRequestHelpers.ResolveKeyStorageFlags(PrivateKeyProtection, PersistKey.IsPresent, MachineKey.IsPresent); } - private InfisicalSignedCertificate SignCertificate(InfisicalPkiClient client, InfisicalConnection connection, string projectId, string csrPem) + private InfisicalSignedCertificate SignCertificate(InfisicalPkiClient client, InfisicalConnection connection, string projectId, string csrPem, InfisicalCsrSubject subject) { if (string.Equals(ParameterSetName, "BySubscriber", StringComparison.Ordinal)) { @@ -217,11 +322,49 @@ namespace PSInfisicalAPI.Cmdlets if (string.Equals(ParameterSetName, "ByProfile", StringComparison.Ordinal)) { - InfisicalCsrSubject subject = InfisicalCertificateRequestHelpers.MergeSubject(Subject, CommonName, Country, State, Locality, Organization, OrganizationalUnit, EmailAddress); return client.IssueCertificateByProfile(connection, CertificateProfileId, csrPem, subject.CommonName, subject.Organization, subject.OrganizationalUnit, subject.Country, subject.State, subject.Locality, Ttl, NotBefore, NotAfter, KeyUsage, ExtendedKeyUsage); } - return client.SignCertificateByCa(connection, CertificateAuthorityId, csrPem, CommonName, null, Ttl, NotBefore, NotAfter, FriendlyName, PkiCollectionId, KeyUsage, ExtendedKeyUsage); + try + { + return client.SignCertificateByCa(connection, CertificateAuthorityId, csrPem, subject.CommonName, null, Ttl, NotBefore, NotAfter, FriendlyName, PkiCollectionId, KeyUsage, ExtendedKeyUsage); + } + catch (InfisicalApiException apiException) + { + throw EnrichDirectIssuanceFailure(apiException); + } + } + + /// + /// Backstop for when the preflight in could not read the CA record and + /// the API rejects the signing request instead. The raw 400 does not say which cmdlet parameter to reach + /// for, so restate it in the module's own terms. + /// + private InfisicalApiException EnrichDirectIssuanceFailure(InfisicalApiException apiException) + { + if (apiException == null || apiException.StatusCode != 400) { return apiException; } + + string apiMessage = apiException.ApiErrorMessage ?? apiException.Message ?? string.Empty; + if (apiMessage.IndexOf("template or subscriber", StringComparison.OrdinalIgnoreCase) < 0) + { + return apiException; + } + + string guidance = string.Concat(BuildDirectIssuanceGuidance(null), " Original API error: ", apiMessage); + + return new InfisicalApiException(guidance, apiException) + { + StatusCode = apiException.StatusCode, + ReasonPhrase = apiException.ReasonPhrase, + ApiErrorCode = apiException.ApiErrorCode, + ApiErrorMessage = apiException.ApiErrorMessage, + ApiRequestId = apiException.ApiRequestId, + SanitizedBody = apiException.SanitizedBody, + EndpointName = apiException.EndpointName, + RequestMethod = apiException.RequestMethod, + Component = apiException.Component, + Operation = apiException.Operation + }; } } } diff --git a/src/PSInfisicalAPI/Cmdlets/StartInfisicalProcessCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/StartInfisicalProcessCmdlet.cs index 2165517..e3553c5 100644 --- a/src/PSInfisicalAPI/Cmdlets/StartInfisicalProcessCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/StartInfisicalProcessCmdlet.cs @@ -155,13 +155,13 @@ namespace PSInfisicalAPI.Cmdlets string message = string.Concat("Process '", FilePath, "' exited with code ", result.ExitCode.HasValue ? result.ExitCode.Value.ToString() : "", " which is not in the acceptable exit code list."); InvalidOperationException exception = new InvalidOperationException(message); ErrorRecord error = new ErrorRecord(exception, "StartInfisicalProcess.UnacceptableExitCode", ErrorCategory.InvalidResult, result); - ThrowTerminatingError(error); + WriteError(error); } } catch (PipelineStoppedException) { throw; } catch (Exception exception) { - ThrowTerminatingForException(Component, "StartProcess", exception); + WriteErrorForException(Component, "StartProcess", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UninstallInfisicalCertificateCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UninstallInfisicalCertificateCmdlet.cs index 9ea61cb..0089ee4 100644 --- a/src/PSInfisicalAPI/Cmdlets/UninstallInfisicalCertificateCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UninstallInfisicalCertificateCmdlet.cs @@ -74,7 +74,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UninstallInfisicalCertificateCmdlet", "UninstallCertificate", exception); + WriteErrorForException("UninstallInfisicalCertificateCmdlet", "UninstallCertificate", exception); } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalEnvironmentCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalEnvironmentCmdlet.cs index d042e01..bed08cf 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalEnvironmentCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalEnvironmentCmdlet.cs @@ -38,7 +38,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalEnvironmentCmdlet", "UpdateEnvironment", exception); + WriteErrorForException("UpdateInfisicalEnvironmentCmdlet", "UpdateEnvironment", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalFolderCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalFolderCmdlet.cs index 9305ae2..61f62ff 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalFolderCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalFolderCmdlet.cs @@ -38,7 +38,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalFolderCmdlet", "UpdateFolder", exception); + WriteErrorForException("UpdateInfisicalFolderCmdlet", "UpdateFolder", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalOrganizationCmdlet.cs index c8aeb60..cbc5559 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalOrganizationCmdlet.cs @@ -37,7 +37,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalOrganizationCmdlet", "UpdateOrganization", exception); + WriteErrorForException("UpdateInfisicalOrganizationCmdlet", "UpdateOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalProjectCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalProjectCmdlet.cs index 3d929d0..5d53627 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalProjectCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalProjectCmdlet.cs @@ -38,7 +38,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalProjectCmdlet", "UpdateProject", exception); + WriteErrorForException("UpdateInfisicalProjectCmdlet", "UpdateProject", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSecretCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSecretCmdlet.cs index 1586e10..1e35f32 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSecretCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSecretCmdlet.cs @@ -98,7 +98,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalSecretCmdlet", "UpdateSecret", exception); + WriteErrorForException("UpdateInfisicalSecretCmdlet", "UpdateSecret", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSubOrganizationCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSubOrganizationCmdlet.cs index 3c463aa..32f33a2 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSubOrganizationCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalSubOrganizationCmdlet.cs @@ -37,7 +37,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalSubOrganizationCmdlet", "UpdateSubOrganization", exception); + WriteErrorForException("UpdateInfisicalSubOrganizationCmdlet", "UpdateSubOrganization", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalTagCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalTagCmdlet.cs index 7b5f01c..462caf6 100644 --- a/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalTagCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/UpdateInfisicalTagCmdlet.cs @@ -38,7 +38,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException("UpdateInfisicalTagCmdlet", "UpdateTag", exception); + WriteErrorForException("UpdateInfisicalTagCmdlet", "UpdateTag", exception); } } } diff --git a/src/PSInfisicalAPI/Cmdlets/WriteInfisicalScepMdmProfileToWmiCmdlet.cs b/src/PSInfisicalAPI/Cmdlets/WriteInfisicalScepMdmProfileToWmiCmdlet.cs index 87bbbdb..6b6e0aa 100644 --- a/src/PSInfisicalAPI/Cmdlets/WriteInfisicalScepMdmProfileToWmiCmdlet.cs +++ b/src/PSInfisicalAPI/Cmdlets/WriteInfisicalScepMdmProfileToWmiCmdlet.cs @@ -62,7 +62,7 @@ namespace PSInfisicalAPI.Cmdlets } catch (Exception exception) { - ThrowTerminatingForException(Component, "WriteScepMdmProfileToWmi", exception); + WriteErrorForException(Component, "WriteScepMdmProfileToWmi", exception); } } diff --git a/src/PSInfisicalAPI/Logging/PSCmdletLogger.cs b/src/PSInfisicalAPI/Logging/PSCmdletLogger.cs index 178d189..8f4410a 100644 --- a/src/PSInfisicalAPI/Logging/PSCmdletLogger.cs +++ b/src/PSInfisicalAPI/Logging/PSCmdletLogger.cs @@ -36,10 +36,17 @@ namespace PSInfisicalAPI.Logging _cmdlet.WriteWarning(line); } + /// + /// Error-level lines are diagnostic breadcrumbs: every call site in this module logs one and then throws, + /// so the failure itself always reaches the caller as an ErrorRecord carrying the same detail. Emitting + /// them on the warning stream duplicated that failure eight lines deep and put it under -WarningAction + /// instead of -ErrorAction. They belong on the verbose stream, where -Verbose opts into the trail and the + /// ErrorRecord remains the single authority on what failed. + /// public void Error(string component, string message) { string line = InfisicalLogFormatter.FormatNow(InfisicalLogLevel.Error, component, message); - _cmdlet.WriteWarning(line); + _cmdlet.WriteVerbose(line); } } } diff --git a/src/PSInfisicalAPI/Pki/InfisicalCertificateRequestHelpers.cs b/src/PSInfisicalAPI/Pki/InfisicalCertificateRequestHelpers.cs index 4395c75..6fea182 100644 --- a/src/PSInfisicalAPI/Pki/InfisicalCertificateRequestHelpers.cs +++ b/src/PSInfisicalAPI/Pki/InfisicalCertificateRequestHelpers.cs @@ -32,9 +32,29 @@ namespace PSInfisicalAPI.Pki if (!string.IsNullOrEmpty(organizationalUnit)) { result.OrganizationalUnit = organizationalUnit; } if (!string.IsNullOrEmpty(emailAddress)) { result.EmailAddress = emailAddress; } + result.CommonName = NormalizeCommonName(result.CommonName); return result; } + /// + /// Reduces a caller-supplied common name to the bare CN value. Callers commonly pass the RDN form + /// ("CN=HOST") or a full DN ("CN=HOST,OU=IT"); using either verbatim produces a doubled "CN=CN=HOST" + /// subject and a bogus "CN=HOST" DNS SAN, since the CSR builder adds the CN= prefix itself. + /// + public static string NormalizeCommonName(string commonName) + { + if (string.IsNullOrEmpty(commonName)) { return commonName; } + + string value = commonName.Trim(); + if (!value.StartsWith("CN=", StringComparison.OrdinalIgnoreCase)) { return value; } + + value = value.Substring(3); + int separator = value.IndexOf(','); + if (separator >= 0) { value = value.Substring(0, separator); } + + return value.Trim(); + } + public static string ResolveLocalFqdn() { try