From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from muminek.juszkiewicz.com.pl (muminek.juszkiewicz.com.pl [213.251.184.221]) by mx.groups.io with SMTP id smtpd.web10.93716.1684167818815374497 for ; Mon, 15 May 2023 09:23:39 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@juszkiewicz.com.pl header.s=mail header.b=rVkArQL/; spf=pass (domain: juszkiewicz.com.pl, ip: 213.251.184.221, mailfrom: marcin@juszkiewicz.com.pl) Received: from localhost (localhost [127.0.0.1]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTP id 27021260BA9; Mon, 15 May 2023 18:23:36 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=juszkiewicz.com.pl; s=mail; t=1684167816; bh=OwQoxWr2Ie5MFKMSZqkFmI1oRYWzA1+HUq2hCBArKCA=; h=From:To:Cc:Subject:Date:From; b=rVkArQL/0cSWnnCreK619PefG9iju/YPAAfkbPxLzrHcrDBxR+U+0VMZ98FrXui9N 1KvZ9rDJTSpQJxbw9aAgjIEPtGfvhtbpEkD8EWUElPf0MoFD8lYz60dWYIYKFfTWys ZtPnmM4JDqRP8heydlILKTCSkkEeJG8bre4ZdHvXbJsbdtdmLYWguDL4UceLt1t904 uT7hPZSReH7HI1QHyFikWQidiVPzs6MRPGxBIXc+ruKaeif9AvvoiuHbe8hMfEvqMg 4RKPIj1LR7BGsOxAT5mCaSkUTh0HymQd1sF/bF9SzUJO6V1Ad2cIzuIJublXDovbcb r5O0xDUTw1v5A== X-Virus-Scanned: Debian amavisd-new at juszkiewicz.com.pl Received: from muminek.juszkiewicz.com.pl ([127.0.0.1]) by localhost (muminek.juszkiewicz.com.pl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3cvVtNwevd4D; Mon, 15 May 2023 18:23:33 +0200 (CEST) Received: from applejack.lan (83.11.34.59.ipv4.supernova.orange.pl [83.11.34.59]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTPSA id 355D42600A6; Mon, 15 May 2023 18:23:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=juszkiewicz.com.pl; s=mail; t=1684167813; bh=OwQoxWr2Ie5MFKMSZqkFmI1oRYWzA1+HUq2hCBArKCA=; h=From:To:Cc:Subject:Date:From; b=YFpeABVpD4MY4zxljSlweKARE6fJWOIbZcntGck3W5GjoPxRC94dSPEybUrYx7BwO MSM3EEvfqs8LemHcDYwqqG6SraxRkereXmconpqAfIW3JAiZ1PiCuS9GW4drz4I9F2 XYvPxqoLlp2/wwwLf84RloyHCXeFXo41by8j4U900c60jErqAwVoKSJzie265xvH+v /aJOv4cKKT7CP1mmGoKenDAd1a4AhgAmK1ux8ZOb5VD19XNsfYTwG8BSJdrkEKCoDF itC/GWB8395mG43R+skMndx07aLhWkFQYJQpLwnis9yAQ4/T/9BqCcxOXgcAOgB7t6 XU5NB3V5hc/8A== From: Marcin Juszkiewicz To: devel@edk2.groups.io Cc: Ard Biesheuvel , Leif Lindholm , Marcin Juszkiewicz , Marcin Juszkiewicz Subject: [PATCH edk2-non-osi 1/1] Platform/Qemu/Sbsa: Update TF-A binaries to enable FEAT_FGT Date: Mon, 15 May 2023 18:23:30 +0200 Message-Id: <20230515162330.370147-1-marcin@juszkiewicz.com.pl> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Update the TF-A binaries to have FEAT_FGT support. This support was merged into TF-A: https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/19459 This allows SBSA Reference Platform to boot Linux on "max" cpu. Signed-off-by: Marcin Juszkiewicz --- Platform/Qemu/Sbsa/Readme.md | 31 ++++++++++++++----------------- Platform/Qemu/Sbsa/bl1.bin | Bin 19461 -> 19413 bytes Platform/Qemu/Sbsa/fip.bin | Bin 58098 -> 58098 bytes 3 files changed, 14 insertions(+), 17 deletions(-) diff --git a/Platform/Qemu/Sbsa/Readme.md b/Platform/Qemu/Sbsa/Readme.md index aaf920e12daa..d044297dd693 100644 --- a/Platform/Qemu/Sbsa/Readme.md +++ b/Platform/Qemu/Sbsa/Readme.md @@ -4,32 +4,29 @@ Qemu SBSA TF-A binaries These binaries have been created from the mainline TF-A code checked out at the following commit ID: =20 -commit 5fdb2e5471c6ae564ea60d986505418134e7516f -Merge: e550fa127 ccc61e100 -Author: Olivier Deprez -Date: Tue Mar 21 10:46:41 2023 +0100 +commit dcf430656ca8ef964fa55ad9eb81cf838c7837f2 (tag: v2.9-rc0) +Merge: 3011e1afe b1af2676f +Author: Manish Pandey +Date: Thu May 11 13:41:35 2023 +0200 =20 - Merge changes I924ea85d,I22e128c4,I7a5cfaac into integration + Merge "docs(psci): expound runtime instrumentation docs" into integr= ation =20 - * changes: - feat(mt8195): add support for SMC from OP-TEE - feat(mediatek): add SMC handler for EMI MPU - feat(mediatek): add SiP service for OP-TEE =20 This ensures that the following feature for qemu_sbsa platform is merged upstream and is included in the build: =20 -commit 226f4c8e35c4441e80ad523b9105eab4ca630396 -Author: Chen Baozi -Date: Wed Feb 22 06:58:39 2023 +0000 +commit c598692d0c6a79dd10c34d5a4a740c90261cfc65 +Author: Marcin Juszkiewicz +Date: Tue Feb 14 09:27:59 2023 +0100 =20 - feat(qemu): add "neoverse-n1" cpu support + fix(qemu-sbsa): enable FGT =20 - Add support to qemu "neoverse-n1" cpu for "qemu_sbsa" ('sbsa-ref') - platform. + QEMU 7.2+ has FEAT_FGT support added to 'max' cpu. =20 - Signed-off-by: Chen Baozi - Change-Id: I4620e879c71115451ae91a1643812d89ec7c071f + So let's enable it to make Debian 'bookworm' kernel boot on sbsa-ref= /max setup. + + Signed-off-by: Marcin Juszkiewicz + Change-Id: I49fb3e742b69ce7be5666e0144525dde21a68238 =20 =20 NOTE: No modifications to the source code have been done. diff --git a/Platform/Qemu/Sbsa/bl1.bin b/Platform/Qemu/Sbsa/bl1.bin index 51b22511db2ea1ef51afe282e43680cc3defbe3e..4a5bd925ae43430e72281001e= e5b39f8bc124f3a 100755 GIT binary patch delta 2565 zcmZ`)4^R~66@TCEa@;8(_XjTsvU{M#JN`#5huFvpS~a6-l*=3DU6I5{xX(wHh}G9u}) zXfiQloMCx4C5~|lrg7wITkGXAWhO>&+Qy{qG}2sKI(7nRreQix1*CeK^ZIt#V;nkx z`SyFi-}}Ayz5TxL?Y;gsi}o-#m^z1hA2~AxnR(GKYWV1s8GfU7?B4+@=3D`&*iC(YUIfa(a0SkqPlL08m{3T`svuZ6sXl5Y$?LKlsRhNrvdV6tET` zxSmFrI^kpgKo{F>y~smwly`(4(Pz7-98a(u_Ir%5qK=3DRm9P#!`{c#@DOXQEY51qZj zYuv?tiI#%fxvJ)yu4nx#3GZ)Qs?OLU_Dey_X%Fe;NV#h0Vf<>YdWP`1M55;g<$R0A zG!Gt8fR-@<{KpAr$)Hj^=3DQ)ZEoa4EpOVyuHgayDc#%G1d<9UkkZHgKMsMIUjoTnbw zS8;fpDf;T3LzGF=3D^pa+bW?gqBPraE)ICZ;AR296+InyTvaOli6QN4o|3+&mmeo5V@ z=3Dd_2W7s|1C`{lDQqKn_n0{A9h!`9#@d>tDKrwandjZ0`Zx!E>++~j1N@oCc$b|^ez z;u%|o|4j996REh^{3MHFlevR^j$fKrv-9Y(Y+y&Q*|M6Q!}lyJ*>)VEXKgrr!OuCy z;Xqn_9%JAaBxRU~gBJwon*tC*TxwPH`LvC6XRtIqZ{s^A2r4Fdz$GZ#7_c7#h1Ae) z0tbHmJtUVp!XWrv4uS);H!h(n>MAzZ2M)_IO-Gl)5Agj9cqRQ+?}uL}ddBGJk}upx zo0Yr*5%PhYqH5RRCT&@g{}r}n6gu7`Z-)t58fbZ@$T6Ol!Sfl*vPbEpwKGem9H*2W zX$PkyoXmK}bzNWJqJGCl-(dZHsSq67Md$B?m;}mj8a6Kytpe3O2zNhV!~{5H81TfR z9c%(;=3DsApAGt214c4ms~BkaqpXKQgL^F=3Dm*4c4bPe;J0YZFE>AHqpB7L83>yYyoPb zQBjT^$DKBxdzryX47|P7b+Pg5ppH>X6wgz?j2CT1YaQ`K&wlE!z<9RWO1AQyx|mj$ z-gB@-WfT=3DyQy0_mV799HH2rw@Fho17H6PyS`8*S)@hRmEO^RM@c3UqVc zX-|>;6>afh8w_a8bA1<6ZxA;_d9|D~UneTRB0SA!c{II>amNvs67I~Z=3DU5~hb-v43 zd$=3Dw8&%E^l-JdajG4-D_#HA?1XK?${zjHU1hgas6vb3&msm+u}dzVf4l32sW@E2l^ z^(0+9@r{h=3DPgnC%?K5){N5le47qQ(m`Y}Z+OZoI}qUTdwCHwX?{uQ3LV4Ae6V)#&~lu5PSb1J8RGA0EqA%{*c918TwYYLN}27`B7_TqoyBH-^Sk+6|rCAWKl88z`Wwe zEKc%jo>tsh{95i&)?%JW_{AW!^lI}Uw8$yo&jQ6(iSc3|ZIHL5$5c%V#2_}Bkae|wmE5(n!t zIlaEcmIlMaDBS68PNLZYpmiQ@PhwKv$$l+~40SMxwOp2;J&afc+t!Qu8;rNuYRo%~ zxyhLKZlcia@L$%au;wW76YPgBGGCU-TV zRVA&v%Axk<<~;|bYN?{Cy24xSttytbG_*+--mtvE#=3D@^`yu_OKeYS{x2?5Hb*%w)1 k%(Dn!&pfOc`u7d~z&w9&9v(FG3idrAva{i#C)Tn50bb*huK)l5 delta 2741 zcmZ`)3s6+o8UD}SW!*&{`-0^m+`Hgw7gl+#SS)atM-->pL^f?2Ygq(>v<`@1M@tee z*gS31T+b%hss*fxurZyfD;?>Cy3lmmj&)SXI+`|>#kP|s>I|TbtCH=3D1FT0FGCot!n z|NH*O`S+avKiA(wUOGZ7pz0d$OL}((wCVmErHnsb18yGREC73z>m*w6&GRLqrB3$` zHMm^>_5iN2Xn03FZnASIxI*k@01(XpZ<--n+=3D;l%s1(ZpE;vzto(I1Vog4t}N*wQt z|0yJ&QZs4PU0}dH$rwE=3D<<(#lhul%1GSE zActE)Qkp2~W~<3yKH|2Q)5LoQ2!5cHVj4VhI!VjKbC2V`W#U=3DHr$eEh8I1W09J35q zStYavl;AvyIDrQd{T0@?X|2Ne-P38}N%YVF7z0d#2Q}93A-;=3DVK7ax_lRfF;QF#}m zbw!lCyY*F!B-!+#O#oNf?pC^ZI}|d>@>y1VgI-aXVna$W$_#Mg7c@88kUX#F#24k5 z2G8tLJ~-DgHgJHNnMNYe*O*eWo&JR>CzrgjN~J=3DfGE;-fLRx6C%0!yz)2f4{$9rAH z5b`bh$&x~aN=3D*~hTgePXu=3D$$Ed;qvt1-aAKxL4buQh4*<2srgxrGfm=3D}V!)B$hjR5(+ z55QT9C)&q=3DQ~oUI&=3Da-WXi9H7bC zwZu=3DWv@E$uo3zy=3DpN?pMK>kcEx+fLJ9NM8fKyv6k9jjaSWvEB0Qy2E%B+Cao=3D?Z-z zNu)dUCSCd>T_b%-pXE@^g?ies5nWTsVm->j6XiiE3As5TMVv*>RZv#;0(_cg4+NglMdVsVqJy>AMLG-3{CP5?8FFU>DX$5^XSM7XKTWYDUmY z5q^g9r+DbydKi{E@n#(nuOfF3Gms+PdlV}881XEVV3q6-(mxsx5~H^&p;|#c^d2|; zijdd6j^s;>ZWN0rz$9Wbn>>mrVSI?1)2=3DCwtn@xiTSHL8}$MDU#Eoo z9NY0Wm!+xPf=3D?@+x00I8he$tt-@J-mGyi>gw6<^jb@0tt3?=3D?j68)JO<7@JH)P z{56E1;jvffxeSg2Bv{~Q@Q|GZox0G8Lnju*)~1UjCM>&9)^}@4D;HjHTigk)fvO0*c zZ5MS|TkwIOvt~McST;invh*&KYMo_LJRjoa9?bw2jxo-q*gb2?$GaKt&ROAcIqsX>KRhN(n0!GRu=3DKn(X4DTM(<>;)2v3Vq&Y}! z**{+P6Vkf+^N^EuL#t0(ebCBBfinRFeI>n^T}XD&C|i%}>$pK&$a}(;qlgy9k7FJ5 z;-I6pb}Hm3)h{6E3=3D@ZQmFgWR*DM$yQH-E8Vvwg)r=3DiR)7$7l+PfiGj6!LJsQvC_a zH^P_-NQ@vjA2BE}s?9Ya=3Df@91CUmH$LILK0%Fc*^9dkgrCXA_oL@|QWh`~C{0cCc< z0Es!gp%4x^heFH&Z|5)j2`2p z)0}d3k#m8XS4B)KzJkBIDH6gvYHKD^jEsV>uwA~uN4ASL{y(LBoZ3o#oIKpr2fl4-`J)Fmj;q}$PnuGIuva|>1Bk;q#HS1UJZP?vV+ty$yl90{*wLDv+ z{ki&`c@6f0LMYqUw7Z=3Dv;&SapIXOl4f^2R}?OrY~m&?n^%LijwOG|rGb0g>6yRWUi zp`N2#H$Kd$wpD&3kE^R~=3D9*jDxt$H%zBW`fHFFNf-nw1+dC_aU8#j%T-FN_dF301S s8(XV=3DUKXa4i?9&3zZK?BFVg>Y5%z`c&(YS+ESdC*n=3D8ow0I)^7F#rGn diff --git a/Platform/Qemu/Sbsa/fip.bin b/Platform/Qemu/Sbsa/fip.bin index bf00f9b671af634e49cd148eb36e7de0475e64c1..d68bb1fcf8e2878479c162492= 44ce46c3acda3d0 100644 GIT binary patch delta 8184 zcmcIpd014(vhO};W>^Gd*b!uAKtab{K@f}#XpF`UVGfsQ03<+evs5$H=3Dxd!l?AIzj!f%OpXl3YJ&Zk;}A{d!$#cc#>#HW%*Z%PY(}eR>;OxQQF4Lr&R9qiB;0a3 z!)Iws4vS=3D}ja8XybGdhNBpu}ueXqwTIbdv(LyUh%D;NqfKnSd0T?B5T4jwkO8%XU% z$E(tOSx9@)C)EbbWw7*A+GVD+bz_cU=3Dr5V9SDNHt+X$D~V4I8QR|WF- ziL3P^3-wBS(Wg})LYJd%T`GVRy5#U`A^%n|bBxfiGLz5U;VwNsbnBK#Gt_;GQw+)w zZ}(d3I-JSEc(GW3P$IKVubhLDtizckaLuq!=3D1uqD&w)3!cft2DxEA~=3D@YV;;q$Kdy zOcuCMTVZ!rCdR8&OnVXi%#pE*kR|2_djZR0_nk>`*y~>>d764?bbJ$~Y7+Qf%GD%C zd|^-`E*g|uPf68|IOb@U!)@3u+XebS6QK%@RTk12O~3eAY6w%aL(OueEf%v@s8~|d zOjE5ckQHR8n0Yv~XpE&8udu$^V690tC?<*32qk-hy;%-6b}HE-hq-3Z(G0JC67Np0 zc=3DhlfExR1i_yt_aLLYdg^N;9;*JwV;p5(2P_;gD3HAbHBb2C*)!gbtwO4!ejX|?ZK ze%sEw$(+}a+Aoo(8&fg_% z=3Dv@E*?triGyU7)SOgTd@g`VeE>B+Ef__OvQ;YFPL(Y}bZ&?7ii7S0X@tC&*8*dgH@ zd#F8P8gH>b7P(g9H%W<(qX$uC{1hM)-$wP(3;0j;P|rJjhCL}}J?G=3D>M|GDuw^Fs? z8~&($P3$#^_o0H`QQSbU_CCjRXhwVv-$)o^NxfXiN!iQIGEvRxyZ!XuvPqy`)4}S zzhB0NJI<{lyjXVmD?b3Xev;wf%vvuFPG+6I@&ZO#4re%AeXGABXo5dq;B)G4+6UzDG@3dvIC6<+ei2Zc;!KWW!3VAT(&~Xx zK1)44Jyi}I^w2!?a%5|eplbpDgws(H#A=3D&ytS;tp*q4pBG)z6-Y4r;p5( zdsN0Sa}T&a)|p*{FwZvesk*0G!Mt!foSw^9(4{^3lgx0vl>?b_A0cOY+v-va!h4N| zX?-6!x89VajBRoc+i9r$RxHyN%dFs4#>|3W@QOR*9z3z_MB>I)z-2UjZ=3D8=3D6n^hz6 zZa>p&d&48!y6{{F{L_8sR65*K{72#Zw8>Gn8i{q=3DM)&silfJr73Hy3`9}t_f zMAM(l`;vUZ!6i5r)A5XT(HnSy_s>qVu8b8_h_;RunAFUS>o6#hW@RSxiL~JTt(wO$ zQG3Vk;iJ`F*7|c;%{fxW6{+_F+E3c?Me5CfHj@G9}whCf;>Qw2Phv9)Mh|j93Z&N(CR^ z<@&V~e_UsH*rUl5Py3{&&GWR+*)tx`=3DQ9U0nH~20b3-3`dQZ99(fIw?1+BqvHCsA# zU`n6Ga~95-wPa4;RP;s+Se!SQWxg3IG|!>$4smt2{)OzK*bpqSKUQiREuyWdeij0(Fm72^PcsW zT|7G5V#dmjQrPVCJccgKp5lMShn0N~N4MY!cA3V`nQK@su`;#OSz}=3D{8%^9=3DUnsGV zi*k(38e&QT*P%uBvvUxb_tHmmqxf}doSUqQ-zo=3D^cHU{epT3=3D!CdF@|?(im;@ zp*?ItG3Va&#j zZizfN8Mn=3DMvc|S9ko_ed@DO}ELGJ+W1H_1zN%P!$zTYpG0~rqB+xc|lxp@8-{o}c5 z{3ROxe1gvmOm+!EAE#%YFH&jp&iPs|I!Q%*Hk_U%~;_-$-d- z?8Srn8xbz;-o?zVxS&mMN`b5{#)Y#;GaD^zZ~fVJVZXig2IwG}wjqL7w4MiU7H~h( zYx!|%FRV>Nhx5;?e0HQY(7r`_pLHYUMe7*bm`RO`;`kK0w=3D8gKR>PXR=3D|_ z-UYpi^^eMdI>r>!*P|LFKVGd0k*YPz3dY6S%-JtU72SuMROw)nQM|)yF*eh}o>V$3k8mT_{z5#F)D5 zREoTa&J^e)&Va*PKdQkedsKt3WmLoG=3Dxb7;rh2iSAEWriar`hnir;c|?OL2rJhrc#HSTmu!}zaK8eaKoR70r{g01{xf*jbVhpD!&(Nt?hRNn-=3D zm*lPV0{@4IY2UHHFUy(ljS9}p>x}Xuy9f6YTy!_!lYQmD_XTd9>F!RnVw?@Fi1Z;a zOCNm4GFWDV>LEGsZ4lxy;78c*Br}Z|gPT$KnHXqgnlFElRkmpuAcSoM?hSmmAxM=3Db z2fj|PEJ;@{1Ez$|E=3Df~WB*Llu3w!mq01z8B7L3A;u3|T5;FFN)bciQ74v&fH8pZC? z>cYav(OqVH07fy}VBpfo_k}5Hz2mpk<}XT_BBdm693%%`nje*uKYqd8 zCZ67S1islM2O?f*Y;E|2%w>orP=3D3LfkDO*JF3nk`CWirUyji6zz_AAdaKK9I7;{wF z1D3{do=3DQWP#i`fhcrBpm%cA%UTDolH#4O*gnbX%x;=3D8#LiG_GYi#H%Lmah$aeU*9W zKaBmw?OZko*;8E*GCY&XVS8-&?S2_ z9bTTSeh~+21hp=3DY>zN525dTSFSEPsSgK3xG9gj!U*NOO+ z#P(InVrl(~(Q3&Bom*k#7wO)L2|SO+t{n8_G`OWm3cDm=3D#`EwBmv{{`Bd0_fo6@kR z#DrJc@=3D^mg4YwY|Yf!VMzB1z7R>tPSySa@8MkAJ3vm+r-=3DeNAIg3hj-JHEeI2uADt zEUk#EW}$omaC#TcdvPaD100NJT#cDU+qo!_3hN>D82zCroUfv#MR9yRZ7&+eH`Cdo z97J7aR_U$vGFyI7#VVnV$|iZGG|coH*UAFdZnu<()QcOfNTX+!Xsab}YyFyB=3DGw3* z+!nys8dTP7tY87+v010W3kDvihw0cBKV>-df+@?wVAeudK&-G9eFOA2^!FZ{W0jaK z9fLBkIL4kiC?@>vf`e_UE(^9o_^n_QE(N^NTs!w^6;a2kX?~V(nL}U%)jn(W$6VWj zYs+N}PhMR@1B-iwW@#0@NvkkcvRxc9m!^a5bBk9>d@i-Dd4$)Iu_Ow=3DV@r|;N_UG( zC9OM>SAOM=3D@+~?<@UamM$I)*_a5AvsgUw&XG%zi_S2A3?5L>{Jkr`CcLpc)}+0~LX zB!0%V6ZjjnbnRyToL#f78|N1&=3D%xL|Cvm1N2xTHa)~UKJ7OCkPoaII-X6Oabay>MG z&&-;1{yX5xMXzn~a)Yb%eNf1-MMWAVv*w91h{{pzZ=3D+9kzm6Pd@ za~>WG+V6EZ?$O~7p#6THiND7|uNiddk5Qpdfg)zb9pjpH82Xn<8y-Rf*H6JK_Qmz# zkrRNs0yOFM!wK$(k zcbwsR*zXy-_nI!W4e=3DRQUs4NvMI)g=3D6)O>ZqG{u1qfZXZ zD9}&RC!70-_|_=3DV<;_OkNMT#1^h|J3gN>sxyO>#MFvc_cC@R^KJZUf};SsD>=3Drf>; zjsrbheFQE7)fg83tRB%p@Wpi*qwg}tKpG{%HwEc~@bvq4DOrh$@c{!KOxfHsiMq=3DG z%^g~z#LgErJ5eOMEpx1y!vmP(4vHquwQR*>um=3DiaMm)Wfnm{Yd%sRgsw~@$Ab>6Jt zc&9I{@>jkS*9T@lDKdQt1x1M^;mX;0atMU~jk5ZL=3D7&Tb3j zyF5CMD z4gVR$zP7$-a=3D>_pSRi;jb&^E-s8sK|kR-ZL+5_8puQbhMgxOoxa^)^Yi^`TWkJa|V za+`q@rr!_A3~wz9q;=3DvhgD#?`2+UMK(Xnfx`)yo+!Y`7Lg{R^}*e^h`cgccT=3DZTPUN*eA1=3D5;#yH$D)DmCZ1;j6&A z*n}~F6UGo~|5+>n{6}1;_2XZoSLe>3!;T3RZbLhh$(r4i$5seA&NNml3dggs+@?>N zOCENm*r@YkLz=3DPmx1P$Z78AJdk&~|N42B&%B^d;#Fyj#@1ydNCag;Kltm_rB3N>X2 z<#@9h#LnPw2xY~VSBUa4c*U4yQ2a+I-HgdaKUB#2bTU(31F!%@*J@GT?$oYx;C#@A zp+qWP;GOR8HXv3bT)?xMzhLDw5gHjF`e4c zzZg*{59(*KoRD9y;7L=3D|q#`1SW~i>Pqx?4;a@K=3DjXy1%=3DF%$N@3g7oe4aVa(7mR=3D)IM= ^ zakEoqGrW*C#BH?Tx&A%Hl!qJEVb%9wlNMRR0pxHXX8apUBf?Gs{)iqg-+*f6h4RG# zi8!pn(!$ED56!GF2E=3Dzo^{1^B!^1*7sLo4AaLZ=3D8SkVt#*u8S{)JpiV31P(T!>3(7 z>|wSw?PiKUTutvpxo<5~CX2{|b_K2(3qp{nz_*}}Th1tW$3y+AbhxrV)_JiqQ@VDO z5_Y{Z@KHoX-2<-zaVz1j31Zgr9wPFcC_k31W6}Zi!E|9)3^!88F1_DP zKV=3D;}c?~>eHW_#8io-B*GbR#;t`bt4F}Z+affv3m?h1huu~{6L40z*Dt{WlPc%{o& z=3Dp$wgwMQv|S2`K61 z`hO6_kLxuhag_B=3D44y>!`2Ch%duNb&TY8Z1K;6}f!+!ViQf_4qv0lMr zV1@srv1tbdEkir1K@Ysi^G>c1xd~%8TGFlcO$mG`JAjvVP)tLHHpa(Q5)s1aPw&lE ze+G@)NmDhNSJ9(YX_8*1^;Hw7r7D7atIPR)vQv0d?FyV-|-=3DLf$*}ShH_)qUb z_&e1fxe#r+=3D#eT~Ar-BVI-!eH>GNMG;Yf`Cy_^3OyPC3VbEIlF;oB~R8TR_xZz2*C zv(Leg81oiCIBf?iZ@T(>4Q_mer#<9p51_>=3DLPn}$-3-?~1TkLxd3*3TJ@_%6zQxn7 zLJI*C4L!_m0lhr!Ku??EX*2Dm=3DX3t;C1aY@kZV8Ra8wi?#h;qC|5c|A^5|gc?bdM} zeeu_F)rVKk3e}_O<-cV`KXLV}%TOjyyUNpgV~D--sUKCO&u$=3DnZXmtc^5p*jx#PFh delta 8156 zcmcgxd014(vhO};*caJBKxPI|a1ccV!6kA)V=3D!t^;6}3w?pqX;#03*ZG103rdMI)=3D zUK2o*h@;6x2ja!2afyk!(HO-*?#&8llIt49b&NXi*Jp-2Uf!2K-uvU}cc#0ms;jH3 ztE#J-j*sPzkL3*~c#-;fsLK*xR@qlQAHm-z7p_m-@5w3yb&4&RnRBmm*3gLYb(vWh zV9Z^yac{+z$yh_6H?!5zcs^jzbuU(VLuMw%SxOsP17me;VwCzU;N2Jt>JJV#?e@?@ zSH)H!DUH!OrExNMPYb34Jgj$+Ud;hvs~lwd7g|A3gb9LSHS5B#jvnxk@oqrfFFjnF z=3DE;KYmwvdzh_#Fpd#Lwira}(e0E`zdFsQ9^pe0pf8)(sJT6?JdF@Dc(-*^D+`)I|k zw$U^xhIgYsOA*1Be1sT*7A~2au6rrA`=3Dv)}f3`MC5t7>hH?iyy>gF9xS9N~;4dO0_ zp_>fq{nC$WfrKmv9I_k*OvsYQcL@GB1DP$=3Dl~pPpcLr*5eCv=3DciJozZFMHakCb~QJ zdgy^YO(-uK8xTTdoinIkKuGq$o+@B%&`(yFQQO!*09WpJfsb*(KLXr*&z_nJ`i2Dp z7HpZ+ja7>IIvw*ri*Z&#v?_RsHA0H9E%vKDH3nz>+ahKPch&Pc8tfX!Ptj!8w6H5i zHOwtqz4?^1!xqDAZE~mu$7T73cDsh@(xTOw^to$7uV-Aq%!Spr$=3DxkJShZTmQd=3Dh} zje0*;oT+2^10hArNQ!a`>HQc;8=3Df_)io_a(knSLFlLJkiLbl5x+6oc$j9Y?q$(Po+ zh5Ka4njxA#gDIJ5w_67PfUda>=3DcBBt?mCITM1ws|-9Pkp5LHXUbR2R@IM2V+i=3DO4Y z!^*v6&UcfGcN+f_J>;FkGijZ786QMGK0|mgjq-Vf|C?0w{poX`0sKSaz61DnYpU-r za{r66WNByS0CB#PIcq$R^SvN*(+X&>1*$hlte!EYF_W7E3W3k2KLsp_@EqMHdqUkF zmO9WB+_%@e`!Ij^=3Dc58<()j>=3D{}KI}zhOL6r??+_awgMx%>|WyC@Y?M-=3D1F<$%=3Dc= U zt#Vg7TJPEO-Tj&Wk2ETS{4CW( z#*lYpC2v4a;rppQayGw2V|(1@W2_HHt>S1t*I(p(J~bM@;)ASe^e+-ezNXq6idH3>J?a~8zV-*(HsQFuFJ>?&Iv z1GhR{8|K7a17K+8U$S$^{*yPNa2xBRrNmN3pcKZ@-7;Vw5MF0|Y)8 z{eQz7Rs^udHn`E*DO`OTu$zb@g3rx+_LKsQugk$ELGNMh(Ql}S#7x$w())70i`ESK zK)2G9kF$;#>?3tol2q=3D_ut&DRcnW<4c&%@+&K{a2hcAz0`Qb2i>@)Xmgmt!okJnFR z#o591NycP8lRn%zpMOb9cg6T0f`S_)?sY?sFkP3!El0^eGqn3Ph6cKt}o+AHYW zezk8D>c2vnnf-inVE5PM2up*+ymruwnF-Q&zf#6~J?V=3D~SIN|e=3DDwHe5f2)HFDJ`; zD5@^NtmJWP+ipT?h|%UK&;r(+pk`?fX1U8pWQ-_6`~ z{GNT|aZ|f)qmU~ z-u>Q?&okf&tf<`44x8<0E2(CD+@QXlqu)_Q{Q>;sEaz-1&t1fgzJEaWpp#52;&J7_ zjlTbF#B+1#(0F$mm+#JnIH5TA;(R?-=3DNtG6+MRFrU+biW>1hA{D)4-#_Pd|><9g#` zP6;MD+sV#$uCsl?n)&#AK2v7zIR86(+nu9FwKfUAJGEXBemAiflKZB|FPJuWTH(TJ zy$6d?V(Ose#2Km6r%q0umYR~rvYwwcx5O~m&_8u>Qqthmls<;Bg$oSH{jJ?57P(tj z7xa+$bb4z_C>@x*%(!32Di12GIR%%Fxa)*_iCgI`?v!P?y@Ke;DZ_a@=3D;!!I8jaqv zfU(NG6f*S;kE07yb9`=3Dku*x4{=3DLN`?ZqUeSGmMKQR_S85Hx#f*Eeba`EtFW$SvksL z4pP!VRX^W)avEal2efZS1pkFvW~AvxZjzJ8f99u%_+QT)q8q8o<1kF8@w1NdIo6Qb zWt_XwU*@DC_MV(`aqM}{Dj$?8Hv3b2 zG+Y(uWLL{dKX$qo`u*{}3H$@V>fqoT$o0AHo;{b!ehi`QToLVkt{2}--#<5jucU$V z;yk8eu?t}OCz?L5RM%^&Ttq+4Gw>R6ogYX2=3DLe0w2!AzPOK)cEr9FmgVVWe{u}TMS z&Vn~2KXxcegB3`VS_;^%rZ4UbZS86@Vm(ROgiu@E@g-n|fc=3D{)=3DEt~n!#;dz-~2PN zo_^I$YuKTV-hsoKGq~pkBWL*@TZS}y`VVWK#FY+(v3ydC3?Ao(%6=3D;uTRVjI6~*vu z`o1W_ZzP0xAO~0u$&*^%&4q?Nieq&JkD}ARIB3wz5ZnB*z5X07`r!NG_Axh!3tl-j ztXUVS*d)Mw@QJZoB(qIVlao$DaTn;N;?T%r=3Dm|{NRJJ30F5eMZBJDT=3DSg%2{AMGwS zgh3sZ?uKE_9=3DXGsJqw04pT>CPV61(<*uamG=3DYkmI9ewfJK)DNI{C5fR!|BZyv^TM8 zExocJuI!cGa#8lD>CK}~q&KfQF|2tru&y|?PvYdH_;97Mw@GOnEJmLAP+=3Dl3`bFzzD1lJ!(r>0 z(gBms=3DP-!nFbD$-LeKbxLSX=3DzB_-Wcx=3D3>ajD$2sz~C_@IWC7>uBPpy=3D;!;DAsfy= A zS=3DL(~krb;NE3&dX^DC-2Q~gRNp6Rx1(iy+-Zk8(nY{SW#81;);Md>+GdfMoIvfqVS z5qa}R&A!vhGg@}ST3cm5#0yu;b$nue31SI0H2dh^?fGU1Ral|ej7ZN4E10bc^zg2V zLySqbE!OX!kKu?a(xMobm*HH`l4(%{f09Nn8agK4vulxaYN5$Xs|DsD;T7qdk+D<8 zI!|>5#t-An*Wt@Up>rqz#h9Yl;12bSWwhX8seFn~E{fqJsAExC@FNIjs5>mJ!~qGzs5@K1`kRi2~Gs zJsqRRN<;Z#nqC@%q;yT`0KSnvEX|7+VMAvyH_2@A9?31eIqTlCGdi}lW0E_&#+VLH zNBx#XmFW@V&8|wLQD@F&jL*h-5$k9!_! z5laSWGckv;>3dcLphob{I+NiJRSLrubX%sL0nIgzF=3DO-g9ASom8sAE9wU-x*5;a`q zuSgbd2BL^wA%Z&+DeVkCsx7CMWfQzL%-75&pw>Yz?&tnZxPUZWIE&fE5>Oi%jN>HO`{XRt$kz zyOxi}Ddd)~=3Dku)XZXnlJO3NMrw7@x6uk%_UYRtp%?iML3dD8Fs7ECxZ_V+NX^(eIl9RdFe3tEOO#yDn6`0zhMw5b8;ut8zvOzP|vD>;V;E zkfr@2p4InBDSJO1sNRkcPZvjPCsE7Vp}I@HY7T|GYKZC6O}!1) zdcPMt%rHb8dmTI1O%-unR9j!(u_N=3DT4jUD$3~Sbq?!M}icpumX9aQ^Dd2hqT+hiG8 z5VL6b8~$n{@a;|+@o?l?^jF^Q_y zMftyg@?;mpFF`BB=3Dtd{kt>U%x_-h%#+izl91x#Iz>$esKm@wt7WO*&dqwTgm)Bv4L zrIy$9!RHWPah;{MF1*W}&@OYrsC`4+$RWu6g^hBoeeJFpHP46d~nh z;8NfS7wNHz$Rwm)(13Q7Tj3?GVjHay&0iu$nO{O|LQcyNqgtJ>8L_mv!l2zfTj^j$ zI8OfSiXml2oKSl?SMOl9cyF>#VU0mhKpS8}zjffukZLL5)(QItco9;?x!j&Ie1~n$ z2wZ%}v~6kDhIu8}$}L=3Df!m3hHJ`cus0k8%b*KMrzvb+VlDZJX3o9C4tYf4*UzMrz;e_X*)kkpKZ$E5#;&C z7-TvV-bg^^U;ai6A4A*Un9lo=3D@8(reJ}Ae`2pl5m$cCd3SgptoL;C}%?rq0wZL~IoKR?5 zXqm-QS+&VGy(=3Di5_ErxJiF1NFuNOg$(pRoYfJ*z-JobbLR(S{y!j>F~(5FtH48$FU zTL5B64ux}KOkqP4-5UDf@ zFDvt8#S25K!i9AOVew9*t^?;z=3DP}UIZ4tw6Yga*_=3D|UH()982RdLo+EL$l&8|Gfpi zdW$Y3h12D2v8mr(6)`f!P&ibzJn(24s5uzSEAb>b%Beik^!ETWdr6*$i`2TO3a|)|GEQ91zu<<;082 zkJRl`T~1(g9dvj5aQ-F@s~sXK5|!4DP7@`=3Ds|8xgARK{XUE?yP!gyyElxcizg!tD7A*Q3}HY=3D^LD0nzXd~Wl_QQLZybMC4##yLX2M@Xa{u>l!v}=3DKpuD}gcmM#xXG#~u&(yT{he+i|Cs)x5uIC(FM|a^WeR`SV z_D1>0U1qPM+{Qeq)`2*SoUwDg8P=3Dx8ufoduJahAD;f4D;rf7$#3MJil<-RKu)!hRn;L%bvL7bHWIuYN{fYkshuWl` --=20 2.40.1