From be030b0e5ea93a215aeb8a40dc0332859f0bbc6d Mon Sep 17 00:00:00 2001 From: XiaoDong Huang Date: Wed, 19 Dec 2018 11:01:36 +0800 Subject: [PATCH] rk3368h: bl31: update version to v2.21 Build from ATF commit: aec9b0b plat: rk3368: suspend: don't do pwm_remotectl_prepare if gpio0_int arise update feature: aec9b0b plat: rk3368: suspend: don't do pwm_remotectl_prepare if gpio0_int arise a47adc7 plat: rk3368: suspend: fix pvtm init flow b0cf3d1 rockchip: sram: add pmu_sram section defines c2b0155 plat: rockchip: move the function about dram spec timing to common e1048e0 rockchip: console: enable/disable depends on atags serial 1f45fd9 rockchip: atags: compatible old preloader without atags support ef42cbc plat: rockchip: support use preloader and kernel serial 3a118e9 plat: rk3368: add include path of parameter de92d92 plat: rockchip: add rk_atags support e52f4a9 rockchip: move pwm_remotectl driver to public directory 43a2da1 rockchip: sip: allow SLT to access all memory region d964b6b rockchip: ddr_parameter: fix param layout description error 6ce491d common: tf_printf: add timestamp to last log c7e8e08 plat: rockchip: support timestamp for last log 4d91fc3 plat: rockchip: add last log support b3ee1d2 rockchip_exceptions: fiq debugger support aarch32 kernel ca9181a rockchip_exceptions: clean up of fiq debugger 4654e39 plat: rockchip: support bl32/bl33 fixup by platform 9f2cf03 rockchip: common: make warmboot address 64 align optional 65aa5ce rockchip: fix bugs of disable uart fiq 824db84 rockchip: disable uart fiq when cpu/systerm resume 69d9b56 bl31: execute bl32_init() dynamically c2d3c92 rockchip: sram: add sram_printdec_align() a533f80 rockchip: ddr_parameter: improve param layout description 11d032b rockchip: pmu sram: support cpu warm boot from pmu sram Change-Id: I688f4bbfa580214a826312ac7d9e613f9c0c111c Signed-off-by: XiaoDong Huang --- RKTRUST/PX5KERNEL4.4TRUST.ini | 2 +- RKTRUST/RK3368BOXTRUST.ini | 2 +- RKTRUST/RK3368HTRUST.ini | 2 +- ..._bl31_v2.20.elf => rk3368h_bl31_v2.21.elf} | Bin 271056 -> 271056 bytes 4 files changed, 3 insertions(+), 3 deletions(-) rename bin/rk33/{rk3368h_bl31_v2.20.elf => rk3368h_bl31_v2.21.elf} (84%) diff --git a/RKTRUST/PX5KERNEL4.4TRUST.ini b/RKTRUST/PX5KERNEL4.4TRUST.ini index 8780c52b..4e6b56f7 100644 --- a/RKTRUST/PX5KERNEL4.4TRUST.ini +++ b/RKTRUST/PX5KERNEL4.4TRUST.ini @@ -7,7 +7,7 @@ PATH=tools/rk_tools/bin/rk33/rk3368_bl30_v2.14.bin ADDR=0x00080000 [BL31_OPTION] SEC=1 -PATH=tools/rk_tools/bin/rk33/rk3368h_bl31_v2.20.elf +PATH=tools/rk_tools/bin/rk33/rk3368h_bl31_v2.21.elf ADDR=0x00010000 [BL32_OPTION] SEC=1 diff --git a/RKTRUST/RK3368BOXTRUST.ini b/RKTRUST/RK3368BOXTRUST.ini index 8780c52b..4e6b56f7 100644 --- a/RKTRUST/RK3368BOXTRUST.ini +++ b/RKTRUST/RK3368BOXTRUST.ini @@ -7,7 +7,7 @@ PATH=tools/rk_tools/bin/rk33/rk3368_bl30_v2.14.bin ADDR=0x00080000 [BL31_OPTION] SEC=1 -PATH=tools/rk_tools/bin/rk33/rk3368h_bl31_v2.20.elf +PATH=tools/rk_tools/bin/rk33/rk3368h_bl31_v2.21.elf ADDR=0x00010000 [BL32_OPTION] SEC=1 diff --git a/RKTRUST/RK3368HTRUST.ini b/RKTRUST/RK3368HTRUST.ini index 8780c52b..4e6b56f7 100644 --- a/RKTRUST/RK3368HTRUST.ini +++ b/RKTRUST/RK3368HTRUST.ini @@ -7,7 +7,7 @@ PATH=tools/rk_tools/bin/rk33/rk3368_bl30_v2.14.bin ADDR=0x00080000 [BL31_OPTION] SEC=1 -PATH=tools/rk_tools/bin/rk33/rk3368h_bl31_v2.20.elf +PATH=tools/rk_tools/bin/rk33/rk3368h_bl31_v2.21.elf ADDR=0x00010000 [BL32_OPTION] SEC=1 diff --git a/bin/rk33/rk3368h_bl31_v2.20.elf b/bin/rk33/rk3368h_bl31_v2.21.elf similarity index 84% rename from bin/rk33/rk3368h_bl31_v2.20.elf rename to bin/rk33/rk3368h_bl31_v2.21.elf index 5e8c1c6143d86b038efce086c3f4f2543a337ca7..366868be5a7843f3d6d527f5fee2dd99e8dc0260 100755 GIT binary patch delta 15775 zcmbt*33!x6wsxKG>m;3!r90{DTX%NCmV^LdOTGle2&e&~;)s(@Izhsgm1Sf}C!(Ub zq##hZjC3M8knxUj6k~f;0_u!2>fGEY+!<$-5OqdJ#mFMGi22|8x+BQU|NQrP{(hb> zRdwprIj2sYI(2GE|C^@%H%-nCGRCI0vW{YE8(^lwV~kNZGbJ56QKTM=+HIqmEvwsD zN1wu$p2T+u`9Y+lvZcR8{;d5q zgKYP*#Z>%Vie8?N@@K8g!uG06{)T@~ddi0Vyr~z=+TUz3w3`NK_X&y(Kmqyq-Ct8I z?=uP`Q36>-I?<$%J0OFVIS1a)VjaH~l|9w%b$44gjOuMyNyBn@F32e8=%_R)67Os-|8`^~TDd~XAqlS*4;d($E{LZMl$`ulJ|6;B zF|nRYn~of?GJ{8IlW9}+^SnnE$TRgq}t(+&flQSG!z_|*z^P2)d^34WBLkCGon zS+2%l)A&EceZUz1Z)lbz{2Q9AfcJ|}{b>AX3)>aLdNlFhv~W%0FN@j!^u3u)=SL%) zi*2syoH+~lhIBDMfc8nS65|7FGx&mZ@m&C2G;1@t)UvI57H54kxG}xgKaj@JSXRhk zy%t~3d#ZxK^KWd_E_!UHLQq%u^J(H|K~ywvMIjFXy35)Zm&^<+os5<1YW<{;2LQf} zv22Hd@votJ1FSoT_d=XfdfMrSWT#vTY{!+4uH5`Pv zQVhj}HlU{l(@Mpvin?G*iZu91);$op$F|u3Eh*fVCc1)YgK4`TAA(|Z@Sws+#MlrT zuar#@w}eol60L~!A+)lkPpvr4FrQ_5Y11nQFR6^5SwaWTsH~fzxpjMYTn_t&Po7@MN&+ycbE8TGka4k0UpG*3rK3RlKB2c#!%2mTxh57#`7L8}k0 zcHa;9NoYpm9Dt@+xb)mH-Dj2*A3S$k3A8!q;H6D(9Ei<9FE4F6tgF2hh#?WIW9<(k zq8^`g0ZYO!*Y76Q@rZaglqOM)xD-lR0Z#|i{%w*ke-N9J$ z@taVokaOVB(Ntbp!uTK-j`i#~3bu{^F zp5I~030DAFM2?9T(ko(%iBjo#(P^RrlQWnfh5l^^f;rR1@Dt*56Fp!`3*krOe9*oz z{3UU>nI_YX!fmEmY5PNXO0uug8qD{CP1mInA%`^C$Qp_K7TITT(R(hNiC zTdzWSN*oNQz0)MIOdqkqP<{=FS%bXxF-ok7v5p03EywlJrlSYuT|$3eF;i?XrjUhc z)At3j2AlY01QxUtVQ?ql_&GR^yNY8O=#0{sPRufz_s&YMc`OrV3&qnSF~LI7;})1$ z$9Ygvpz#uW7*Ao$gLR|b`U=(z=3K1LYdNj@f<>K$u8I5)h~K6}ynRxQfLTU#&jHc_ z@duE+y%SX!(jKM-@#z??Kg0NbhSV#?>jxyg`%)1@^xd<#Z-T2)(uUV*F9F=9nYs1+ z;elZE+{Frxv00_>6ai2W_~zm(RgXRL+iN{i)U{9_+*h`w^Pl2Xuvw;Ac$XY< zDTOtTFSF^v&f@c`CHps!^&Fc=)(*|$N{MrTjG9L}jZ(nk zP`(ZQ-lP_C8@PVAHSVz{;5DmpJ0#8?NFk+hKnIonnmdIhgjql`S|f4{hQU zbK$W;m9qD4Wgh4K%%hdmCxqKE^X#i;TzKRm=4oqVp56XXa}e`XGV9diTeY2gZeWNi zoIB%{@8=l{r~bEGsN}*V7pwE}%#)nPzB#KZ-RD%b`&-q}U210KfHfGAdMAmQV@cgu)dB~p z9q>9xDKS);ZPOC?yD*1{&Dt(3Ao+4=Fj2BuLNt$o3EhIS#5*~(W%_FuM}$7puwGB; z3Ghgm#mL+dCgvs!b4zoS=Gy5X-httA`g=|F31S_Re)@Y?GWc^e-v&+E!NfI5^EgAH zdZ_ZG=!~U=^6fEPnc=fX7S7GUa)xRiEV!Oz8NU?3EAw4oVnt7GzMY%CQPI^TZY@P{kgPB zDDkv13XZj72%VIsWh=^e(5t^Va$`l#19FSX>t|l;g;0t8L)UxOi85Vxc%Q@(Skap z3Yn&G4hs>Ee^n(Cc9C%+Tj$yBJxQ0XK#vC!tQK6-=coaH3*;UwLP!)3@M z`vq|peF~LUV9^K7@a-_Kxme-$SgAJhonrTXEn~;NS?rrqm@)LRsKqF@TIr6&cgQ^t zXxrFa^IR;beQy=J<=`^|GxxnE6dTnQkGJyslDt9Ls1&Tn%C}u5!M{kVC2^K-<98;B z`)w5Ox824YeOXHiU+K+Wzc+`?g*9hXEjA}q zvMr65C5gNgn%4r;#H5jC)YF(uY}KHVm0ww2p|Wxp)IM5oNBx!Mx3Ho@g+JD7sD}%+ zu&ZcVuPC1kW#wHTGk#KyYRQ)FV?KQA3N*3~?)#At1LG^pE8w{Lt{~Efv0+!>7YDO) zCtSwupku!RZpGMo1%65IAndDLF8jLT7$u1Xsbr(;#F|u!Zo#Np_CvCd5rhswFmE&z z*`0@gY&z>Hzj zl_PC<3mwy$_rbN4uDdcKZ#kYPeF6N}9B4%DVMp_WFf&&&(_^;?AN)q(dpJvf`YtJ~0UqrUe<;PnSAd2D)pMvJtj`s8^jJJ#2 zu~b1tf{&$Hru^~zc_1tSqO9x|AC9H>TMmrp@qjoD&H?+W!>0-UQ6I9h2|N<;UCcC9 zFTXQ^oAq*xx4dv757En3Z~2pnJWwxZdCQw8aX-DB<1HIu6y{ z=YZ=<#>QNZCMehk%fHskc5k^pkAI<;S9r^8GXDq4@3H!+XT~6g zlnxRb61I0TKN%0z0w&A8B~Uy&j)Keu`TQ?vBb}y(i5HO|{y2^@l0(NJ62qb7Ses4dRL9VIY=?OGh>6#+`I)M@cqJVRJ$WM$+pkiYI1dsV0|9w*Jt)@R_h(!m0& z^gPxhIJZ$&4o2^blkyKS)_-Z!s|QP1RyR-&HXmnP9uLCW`2M8yo8idd#`5b4(i z**F!UydR$(BX-W9Hp&x`GieFsh}xOhN2iHLW@5t`FJ7HV`HDSDoS8}QC&*s+%a~G1 ze;yN4?|q7aAG&9n_;?nLRql=!p|fcZtrAborfGD$_;5C@PzD3UwS}~q+Ql1%RA!ii z;}H>4M5P8z=BkV6GxKT0>T>#?kZ!==x%ia0T_a(B%LhIMurRrI8&ZiA=C>7BT3CJcF&{C*!0t0M&+oI;=KZQDCH;<$L7&p*^_+W830SE z$Dw=-0gXOkAwwTvQik-%-nMHgoaj@ryOfrszl}}6NyzO4r?-$-p--pc95|_}*)m#? zQ}6d8s-xzDXRJPYEqJx-@|>^LGxguMeMAFzve# zjl)oS^iT`+Mqj=4s`_GSiKxfQr?=Oxs;~6bUqE2(jf^eXRYCLI8e#`~kiT>GQVs(|6H#t_13*HoqwvAHE%g*20y8no!)Z$4E~{B)?G#q z`*H^Vi(cOAt)DxSA47SM5*psY+9fQxhrKY9_X7wGEN+534?=J5J&(agIlv;mTR??$ zUQAy|skxgmB6fhkl;|2x0-3838?=>!L9G0J$j_|p0~F)Z2aymLE)oweq?v|F=2|S? zSx8w%meW3P@~*Hv@!3LJHdlFRhmP7=rEmtlv&~9;Te1r}HJI7vz$MnD6lhi>^dlZzL@|B~3we3C=w3wQ{CWy`X}I`c5#8u# zDB_dD#l*$5c3w8jpbyO#quqKr_o3Sxk#F%&Y&?nab{4k{oQI7LetY;doZ`UCIPf?> zgYifVq?}%d7B6~lPPiCaOd0VwZ-L z9^qUC38k05 z3MTs}Yo4d3X&xNmMejKWJwRy075oh9q)^`=Jr1~Yd9m9LZ?&G8rpd|nM;OobaCm=( zfeY<^iWAGr@#leZs;9%^QaPmr^sx6C-)I&YH_^Pfs5Pu(!#|~-nMEq37-Lt9@~f-F zoi|Z(i=y%-h2F0Ep=4L(DY(^BhXM2{{M?J*qOdQTSG*k`%;^{8r4nUy486N?Cr+KwfC- z{q|P6-)|XEhnb6UxmY{TdCwx9o4lzN+bi3bhX?3OdB&vY7t=7gWxiO#zxTqCUrd8u zcR>R}N*x7N@+il5)~#XVP74(&XFFp!y2WVeureQPVTdTQQ{3$x zA$&g$f1`Z$LzqR(8i+_eb%)&Q>g@|cv3F6k9|fLWDRDFD!xhCH=xf9Fm$>E4kxswV zNB{9q{!plR(N4)WV~P6=4k=|bc?5->Pr22oxSv83+0P=Q_|{G{Y==G{5sv`Y;?Huy zw!9Zs(d5q-SuvsKz`#1iqDtCE264QSk^>DTZd96=7{m{i2xPtxtyT0fO%yc_azwSF zDXwg?UEbBKot+KkZ-j`C9CX6aAH-i2N2)18dFC^5yqd0!(@Z=C*RQq%CdBn&{Js!4 zOI>XyF|CHOC-#_m6=2&|=^! z8FRHuI$pX_yc#riK_CgYb(r;)PS0;NbDdwlg_lU)*jU8{d((4pn39(aEo8uY5vSpo zHobQ6hz$Bv+)Y8RXF#t>iR8AviP)4ybmxLbi$stGn{^VO3?+{T@I458OcF!`wlI=s z0`>up+U-Hb()eDGp0ffteT==J;~1iN5^!WaV@1b%5W9><&XzD{v4O7DNFHg}^0Lg9 zb~H{uhm2ri-*Sp1vpBSzoaQf0TwWgAT+xU<@rCrxyMyY;nLH z#*K;GgYZ9I&??%fIIUvSDk}6FOyYkSBVJoY8R>Imgo^ukIsS4irP>@XB=e(izP9(1 zVNXf?zeM0_%1WbZa_cB5?k9XwGJLo$8$T~<>nLww zd&)S>2*@g(!_YT(FD}VC5|=`3+Ut<7P1cpC@lk%dUhFCSL)5^qT2eUc{r zQAhJlpf!}^<1=XEM?`Twg4}`-vAmwFVHvzcn#d;^7}rexjM!aIbCko?;)8mcuXNRj zj0On(LJbT$wDNhzwyew2 z7G%L@C-9$(cN-`zt0#-gFk}c5qIv7)_e$`JphHo1bmV!DN$#lj&f;Vd+elfVXUFm` zX&;gXn;>p%r0FRtP-2$C-(s>edpuvEHN-L>K-r9rfAAT1VAL`jsdg>y3h5G~{YJX<9` z*gzBMxCq>cZSy=aVI#e+M2-=sH`1L-yF;w~1!au=5(b?-hBe3_MGnEJ!8@$ecw4TI z>fmHvC0_jn)hXFQV&a|D=r;#FKhXQsoz$YxgCczkJx^8QFI#96u7z*fN-078?D1(l zHh^`^6s=pSt+F44`!VbL9kUAf(dDD!&gMbDIf;FuH7&qH7X3lb3$WDo;<6juHWr^( zTo&qPm<_Oz7j!(pnISIE3izl}BwSRt(72Y%Y)T7w$x0s^E6!W|VQx4d9Bp!G)5`~? zIHS6pj9vfxC^w}TaY#Lb%O@1_#%d`nZ=Is>|3O{Hi!=Bupi`ZvO_!@tHI~bL2G+pt z-4}OKDdbf_BGgGy%Cr6=!-*i^cQfTNWcE(GxWP%$ic%=q1W)Bdbhx!%b-Bub@ zHY(!THcFXTul|%uUm%YGR_EK=^r9=~+tFBX>@kRuHd+|v^~o>!@h-dyvPs_7Anp;B zcTsBGxsSoxz;b2OVjmePzyB+FFdC8lT7`JxF4~|N{YCUP%C@W?H_8`VKq-9@hdpeg z$CU&A;*7*72>2<6tBBt%a_^=$l)*xA{%%^VSc}AhduYDj3q~I9Cmy|rQq0$by*zVe zgYn1Y09wSm_aJ<91&R23DVF@jlzVBe#W`k_^sp^!43^pueo8!eFFBNhKNqL(#XSC` zLL_acRZ3~F*s-0s5)>ek?xVsf>xOWH1FtLBN;wIXB(q6#6ppu?Ep~Kiy*1!g!So6C}7VjE5OS&<>h9y%mG73jvvA;;@@_ zCoXU4MrWTRA^bVFhpuNBk&^%`Pw5qxgd=Vi#Wr+9Xba zMWjARTc}=iK1kN_b1huH9kk$PJRdQe?$i-hI3BS4l$0xq-z>gD3uV|M!XCmPMv1Wx zQMR%FD1slyT#LBvAxewySLBK?tT)!ZhgXhhK28;nK17Kv{ZdPg1Cjay=eb=55I+Bi z0PAr-Jd2QKgSk5UgdRB_l5?K*NAvHoS(B@Z3DU|3fHL0&iH{H)R_8efidKZWW!}~| zojd&1#|ZVch%lLqPWwaoG3-@w!8i3`ns00XpZ9?)wm(eC#`Y@ts*Xj7XCJ2gxc(|U zad9}~WcR&2xPU0on#c#lrH83QaYc(=?UbPu#EbuI$4*U46@P7~8A^M+h~|J>5=0TF z5}Dq`X-edptNQpJ_8ksG0hsufi)l^9rf1$-I|L9Pe=3RW)1-lWR}VsJHvM?-0fcyT9X(<9>K z|ARss-U|K;g+YXwikP>HrXr--vI}qB1{1}vcR|?t{_ zAxyi;PYM>j8-iU;%9+Sp#C5xI&eSGqcH_wW3sr30g|mqlc9S^=g2}kD6@uBIQX5{> zNp+S;b6sZrX&3u!yj+~yjU(>GB7G0dYSAWh-2Qdop_*ITtK8MFcP4YW#fsIpST7&+ zL-chLyJ5M0$CGZzKHGYp;Y2;IO(x{*w(Jbg0ZcSnH31NZ5f&O zuS_o(RQpjJ)ELY;CI5E;6I=1EWD2%1-xo4H(pxp4zV47zNX7uD3t;PKf zrmPbTv>2A3+`$?kJ@1Uh!$LHYhX!q^tLUQ!C(g}`xQnc4rv^K&1m#6)MIUQujbi1p zjl_Q%s;k(KdWqLV4V{s!9Aj&i_43(7#rxEtg|YJOvh6$6VD)cd<@;r$K`(=f&j`W0 zmte6J0F8<;*A}7yd`2X5i(Y|&q|J#O5X!xGo*Q?RpQm8r* z(FHPk1tL6ofL6MT06(L~W-kDPt2HNi$!9=PbCq5pTXq!rRCl$MqpH)OovRvMZsXIO zuV>I4WlQZyVXXfv0a_+sCU%vY{(l6J!*dB9D+oe3SWLV$KxyQxk1bN*2P!b%uS1j; zWx-TKM$TETA-x9UTqsW7iT6U6pV;*3GpiF?@0_FXPWX~eTy1yGA%6Hq=I%^oo|FF0 z@XiIu&tbf4GV?q+jd{Al<{az_BYblY?w`p#PZcrG({q^TSJ%oqe8k^jNV}$ zln-qCFmvTBW`p?(9}>4eN*hG~qhtw$UlH~sw&X+c`J+^-6in%z{1{b{>8+`}O}-G# z$2qBMCci^G^*9xT&zg4Geaf1_nd0lmX?tnUko5RH)AR_$I$qle?;|6S9z_P$mIB$T z2Qu{N^z5^E2H0xAbHVZ?UW&xqSRfAnk`i*guf_Wd_*YQe6a)M3L)bDGvB)o;#H5ng zLpoJl`=CAw&u>KV6V#FR1IDFqez8Yd?Bz?0rg}HbdODkJ5}iN;t3wXNY_E(Z!HiT#9VVpN$}~ zNIdK!dw9R&9Xz_k>vJ8dF&rRKCygEFeS}Z=R~9TqQ>FZltfEnk^jBdcpf_+aK2zM( zNgHr2`EDo0#a(vYgUowwbQS~XByJMaMUySkj-`jTdv!Q$|5Ekz7Ie`vDowtXb^M@) zcYlnIomP{&{|0qiv24WxJ{_OT$N6wR0M0${2Ai@@Pd|1YzLoeSS%#nZ^OLk9;q_%H zCOcfaOe=k9719>8eD1l9rNMJVvR={f`AGEL!OHGnb(X~s|B%yV)!bE#O|>C!#XIZW z3)S*5xQCXc@l$s{saE=b5wDp3q=_I>t7xBCL+T{ujZ5MQQWquTt88VGi)a)c@ zkW!Y6%?$`xwEn_lN-!NXSg`7DR1Z!)D5@0TKK(8Jl}4Sa%)20t%Jd$O_)bwji2M8B zslN2Bf@9acQ*iA5cM6ZKhf1Ws%J@{AQq`!bZ=k*iYv3o$^!7d$^bIVy9CpxQ_>9W% z)VSl5ZQ6y|NVoliOjD4`2PVt^A!ZoV?7W@>BSOUl*ZPx=X;g8%b8NWDn!t8QHJ*X` z_n|%y^^pCWR@kufqS#|lCo1ea@jHW>BA>$jQy%J{oSYeq&6 zLCKbnA%N4O71&`WFA8&@I*GbPaiE$R)C@{}fX+SM+Zd?6Ov>O}V&WKe{n*MH$MmWk zj2wO?>uOgwTW45vb7$mEnK31QymfAk!Swo&5BHkac3-;Rm(Ggt!r$?wc8j+h9O+HZ`pTd9(sr{Kt}6k5Hk*k*mnf_j z)tG@xGSg7!p8!Bs?Wn<))*T@P( zkR>`KIywx4FMmV7uluYp_wVN3kcYRQYTndXUENqwU)R)J(Nxo1(OB86x4~527lTo% zi&itm6EV;=az^o3w0et@-Xu;$t6!KJ>l~{bD{AX2n&h|MA!bIai7~4yL27l~9Tkl= z4eM%}n!QXJ+Y_tih#Z@mmEE+islH}yb;X*x>Y6J%z(`RIe*OVQTnDj`&@hvkKbI+L zW7TBgvZ^up?-gRs;O7VTAb&Yw-Zb6nO&eEDo;HI7yK0Bl%Z3w?;3ST!zm z-3VhF@%;kdotO!+7>&=Y_%j@<#`LbRsYWH(pRh~CPdcsM)v4+$7`1eDP~>E&e;>8%Y}F!(fao}NSX|0R?%YI( zo;V)4$VqBMZ`pYDdPPhb58y8+s`25oCV90w#h1=65PzJgX7pxFQr`>^6Q-$u7Z<0h zdBU$iojE6`!#7#>c+(hPx>(;((;rrh>IAmpX>Ub`FMYx#x-ibD(4R71rTEGBxf99LkyF_R0S3E#+IqK^-!-WLlpl6+RNSd%~Fog_u^bfnfVdGUKogo zZxXx7kcxXbHyK{fmG4VOA1pFF1!zE7KCrmO2WMY-AGfUX!54}DPz-nBja{y4NC+9k z={H`8+p!x>Nf19%4Jni;wx|XxrHCg~!(>BBAiqXjXE0=N~`I z{N~I#XU?2CbLPyMvFDhv=a|vurqIN+jlx|?t-Zonaa;)M5XQ9QC#UMijXSI~#ksIm zxVtqm?-YK&!FL}@(#5=A;rp;%96y-@m~QSkrN?&Mqzm`M_}!i;+>Z4oW91=}(JI7i z)r#(r*;ske=BrOby?>)Hi=Dbqe*>?OuM`78zVc(uUu`?)G_)DFCGI#$i5yB~WD8LW z^>I1TxQKn|*&A&^mVkQR343S)mXbrrLdI9?o4h7p(hnsO9+5HCDNVArcnASx^J@7 zpf#(ZObW+jIVZC#Z3N}fXiu4hZJNKesxb7qVd}6|by_=tZz1`02CodGsY#*bG6Lux zOLtPbFx=@9qE;E7*j&!9g;A2pQ6WPzgj>x*yE2iKsr+RaDUT)~)e_;glA;$Dl^siJ^2_Qw-3MChyGPL*aC{F(*j&Ln%J6OOw@H8A18l zz(l?)f>O1Qh#!fdJDr!-zqn7c@2t6`3;D%d+ILo`4(fiO<_leP*o0^0kujc?mVX}Z z4TUBD&Tsskt&x!Af>N3JfTuRxsG6asmE{X zo&5?=ggWJUtbzJ4`=A}f+DKQgu-l{#a>lJmTE^yy%0vr7Ry#4(%-&OiAb*A14lDteU*@X@USmIEG2sE z7Q^5ui1RH@`>1bm4h`cRGz_KyXEn@bw>HD;%oHp3`3i`(UA)|Rl!FbHRD?$hHsx~%-Ek?y1kd}B0aP%hsSO(jPANU51& z0EfzRIUf)ROw25%6s29xjak?RzMDcw-FhoT!*(1(H$0Ph!FwAVF5bpJ$ z9-h!Oe7%{niFmb{CYApp3JVf_e1bmaU(v@#h%roYJ=%xAyY;%ahs_~@|7oV=?A8s! zJq)5yd+F4`D8h`w{Uz9Hn2IV-B#(=wB+V7Z*TvFw8pSe}Vw@I?eou^jP$yT-Q}On} zKHY##)zHx{46h}kO{m!sq4HULzXOZwMd=sirM*J9YA6F6AC^)#mXH!nZFp6HTU|zJ z`SNgY`K6(Fk0?1V%BtUNzT(@B?@Q}n;EXu3(z`r84jOrbm&MVz@yEU%V(hRr`_01r zq$WPI1f09u{CG-mR)&bdN{CVBDwnP(;T3j7 z7~xfKVm?k|YpZpQw0qw~9}vH{2AVxtr5`_8iQhE*s`cX~omUSkkyk)c*MDoUw zV(^wI``|gB9Z9;rdReS)KyG(O)JtFoHo~QWHClfPodA_vy(UEohqyA(SwdIM_Jw z-iNS`U~JR(X^)HWq{4ckZ7q373|h8`K@klNHm8`1H=ynkgTNbfEV5m&kZapSgBUCd z6@$ts&dsmd_a&F!L=nla>>V~#C8hFRA~aTFQ*k?aL?R`pT?3;P=%0LU3K}%V%7Ga8 znW3Sgi#D!Gr0k%*vGU1uUY9KIO#IGsWq%y4G=C*E`O^Vsl_7 zfUWo#Q|z~RqqM`hHNd&q1J13_Y5#3Ard)N3@G;lglOW&2G-D&kh0~sR3Z+l032`zG zcy`E6efO63H32yoHlysy0=p{i3>h?s3U7?jZ(p^5@5&(QhGt#C!mBj<1RSwq+;=78 zx8me2YIg3kZ@&Q@c(O5-kMQue z$+Ntcs$^eK{v-l(f#sqcy9&GShbK_Fnwlb3*oAA`tD2})#A4Ab?_WWC4*Q*|s}89- z%6mFcPsjJ?f$vjLslxvy@ZtP?_^2m%Ujg7l0Q%NDe>-edm)0NSx)h2ZnIeTql0#|2 z{U~otp}XS>;E?(uiZTUj)s*8HXHSd9k*SntT$(KV)#lKdjO{s5?&fP!5v*J_$akjF zgJkD3spL#-9wR@-a4<_nnB5-bygX52&}QeKq*1o9xiAnih}tev0%4*@=2u1*$0l-TJ;U%-(t2$Dhz{0(11&U}_ z?AP)0@|wWzK(r3zCNqL%RWv59nfOR8@*nN&bF?D)QI-<&Sz{Hu1OMPBo-+T9je8ECH>?m#gY znN~T)C(MiczU}Nit89n)7J;B0`^qWcsWz)fmBM9{<5Kyt44UD*7c1G0Jzv;6SEiF# z;tEkK_;USKcvEpj-4XiT`j%keV;+X-J*Y2H?y2v|Z(*31+AHhIGYfxvt*_HlBe5I9 zpne2G#}$Nqm@toz`9UAvt}s#iJ{I4e_l4|7?5<+cQ+jZR1MyO|a!E=V-5Go`6TyU? zX%xjfrvTm#{8M^du5wvp;pWEzR$11(O`Jd6tNf+|gLVj)DIai6$6kp(J)qeKN~SOPQWoXeo`}STxxv0Y6ugFKRScv;A%B`f~W%V z^$4_USW)VGW0u_;gnB=4ef3;;7}Ohv>tpTSOUY^j_XnoFjlc0KoL64vpRT4Lem#fg z1a*#jVBtkFbgwKJ z|5d&ezPiOd)s5?cdtJia7$BV|v zPkn^5{fIA*lOOr&^ZfPd0@?4YJN)&Y0{M4eeUZQJ7%$&N{Y}wa`~@OACA>QKi3{W9 zTS?F_V5%N)E6JCa`p!c6ItZ0ZP)qlvWNsZpS?M$qaWgh-L^*Bez$^v^7u&muUkkw9*inb<+Zy!e!vb2d(V5c~u ziQG6*9Oepf^}elbOj478SjlHoZy(L%u5nbUIj?|HLNTo0@2j$8 zbqVcM+|Ilc_X{8dE~-S=SpJ=PQG%aS8MkLPR4s1=8me=noCl)=_= z8i#Y-oN}B1BYAZ>P1G!-_?PAM7WJ^Jf?|VPv*m%0iumyg8m+C3<3Ci;qqLiEn@W>t z2k)3li!@IV4^5>F)X5v{G~3XKvoiPCsoLOBUn!OJadbO^Vznkus>O{|-V+>KMI600 z0R9|cONgsx75~19vSW{Yfhsa2i_lzwRcy!ig08_TdWL8W@0vz2+WA<1ZW`T3FcE-=!fF>o;3vhX=Yrzj! z)27^$h~gD^GQdjEzoL#vt!Oy@=mt#1Aji#JldmBY(Fwl(TACZN9(bo9stY}>h3bM6%z!DW&00A_HMjc#S6!@zU>>kr1kx5PvTyziCrhkdZ2)WlN8r^~&m*ow zWHpuLb#xu&^WUz+C|~2~nUtY@7R$vmDLu0}Tv~8u5EnQ0+QHtcx=IjU$1!JTOo`@I zmK?MnnMphWig>b?ctDQ1?+*M0S!{`NhkQYB#? z)gn!9(dL7t3G-z65`Y4lXo1H)gz);oFELlBcg65;ucr#QwbR#AM$%nSr~}}i14Y;o znjr&)bMBp<5j^$=iX-GTZ=flLQ=6g+dGigF!`(N~?1JEfTYb}^mWb7(OM#^rydgN* z)1b*e2t)KAHjJ1XJdeDhpv~tOxpo$fF>aVFYao>i-R;y8OxLiSg@y14|8W+wuMhAi zvuIrGI!#S*Ol~7)q6)uC%s?@ZnN9Ijz|&{bq}Y03T-n;E$LFT9oQ`nBLnJKd-p+HphPEt|A}vgCdR~czq?(J zxz6Rv;=?!6sOg8$$({-J!KWtK2URlOa}Iid(Adr8ufa$O^-Gj}fV&n}dL8f|YlLx< zT0c$}#OPG0U3^EUkKr2?=w@vZu`^4{6oXFLv=`CC-CtcM;h#gd^tBnvrdA7t-3DEsaKgWFD1-=18%Kq%iV-%%dOWK6`eE z^Wfu@X(}^R=4nN)xj}5K(V=s2?i3eDo{Z|c{T52o=pf%aAB(Jm56q{WAbW_ci0bN} zPd^DV2)IaYuBYVk9_v32_tHOb@W;6X-!(KqUiDq6;9vXU_^zQoKYZgkz|Z>O{AxXo zDfWaRz0vrc^oISIbAYC4N~AW?9VXQZ@xiJCu<((b*FZ_m+L3Y(a+}z;eeH;;bA=dz z*fwJ;g$qCZg^`Gz_1wpR=g_LW0*4@nrg=vMXvEK}yec>D<8Ke}zcpMw0(`Z~t_)kO zI8><|ygDse3{~E=FOc<83{}2n5$wrg(7aE988py2)xiA?G})R93;G#g&R{Vf1FHQq z%%LS%%&~y^L9}_fypcAK4z0rB*{+N>nFNh=AuQ}xGgM$KBt#{1(GIHUxuN`NBO-|l zysU}drx`qF0X4=w2cE;ZAD`0phs&44`A-YzWTHivXa3=DhFC=^-Qm$;JfHB-dN zcZ9Uz#?G1(DTO0KUX5Ye2T2`SS_}Py5 zK#9Y@&!MXzKt+xh`1Bo=u%Oi>t&Xus=*M)72j&qKYvJ44JyuSD-tz%VfONfz8oi0v zO)?v>zX%vWSmj{15c_@b%`wsnxPl2W_3hswj2NEmHzRr7A}XXG^RE|?D|%_9RCkD0 zN30ZmW_cvMt70+Tg$zKv><|eR1X<6&zmp0SvXl;jWDU2?bOK5zM5q`(SuPmV~8Esm6b&!jlsvW!Lt z%}bH5hw*dEC~MRV6$aw=cG$@%?KI}6%A;_u)|sjBF=?`mX*o^IG)7AsZrrRc3%bsb zPK4;iNT6s{{zK>6nlNqTTb9EzXL0#mWHF{#F|8n2YsIlWO&0O8yJ$NXETZl-G2KnZK%XdZ#FOT9ov{jkI zv}y8>SJ0m3(JLq|={vZ#tN^YfT^{866;wF0)0PLzh78I{^q;=JrYh%1l8wY9rL9)g zX0~0ncBL1KMLvOku-<(aMhdTA;q9^U$rW_18h3v|pdU}VY~|9G2rJKo^X)6i5|t^d zl$m^hbBiTYF5`z+(pB1|1>C!muGNwja#{;~bN)iEXrVZ*cmdzkLWSktkNpe$cj7|v zOE@Yus5|(HqkNaH#h6(IYgMolqa@bL0M@{O^`TKxbmz)+KGs5+njwonYoXK;C!73> zjyZZ26j%b;Y9?O1|uRjxp3@4@wek{f+t zJ^17u)>h-@(efyKoKF#!Joykuuc7tYMHI!|%=S!QqCT|-9GtZNCd~6L}r=>1n z)7_M-r8IHH-Bh9FH}QRU(}UW;7!FxWsX^x&AqbCNOJ%Y9$6cNn#iTD!o(bi3Yw4=! z?(wogt&^NW%vXW@TPXj>TAC2OxlkTew?_(WpCVrmWz#)0#b}w}zp(dVPmx}}?H} zKg|!Xrv#&GqHG;M%wxRF-~;RFF71;MoV9^g20f1`1Rjz=Z`TY^-tzHWC@ZkI)vK*gx%wiM}c*==VAP~V%ZkNPqfl2njx6)*hH43 zo(A~VMstO-ogUw!?kg4TYx7IS5mk_ z^v4bDIpYGOP)j8?`$~AZA40qGx<6tS5_ww}*(9g9+2L4Q8TrhkW!%;40@aPBW zWzAE@|Mei%XnkdT)fT!oXjQO`HSo4AWQ%scuew7%yD#~;+6f-wV_RruiX&7$3LlLt z7dB&VE+R-pC^b-~iGk~R%#UfB**-$`HsDj#$Czc$NckJS|Hss*S?l=IA7iE7>fpGa z&=M^)j5qy+r1o+!$8DvGq8IvcPhz{;_b$rk#&Gf8xHRm$>@1d%46sUgkyo7kU#(>{qN>5oa{cG<}zq z!z|Ed~?MZKF)5f9Cp^NjW~UhY)|N4N2w9HN$v3kVB;%gM+hb(`UGPr!I>0s&DnSsxer9oY1})#w*l8 zY#^AkCCv%VLl0-wamytsJ+!kyz1Fgr_!&tPlLi{nQL`sp9@0UCk9|pUJD-!})*P|C zbsJ^bE+oj;A$(jx$lx0Euc2@E(NYOPdwjR#4lBR8jV5ce6FF)-Wod6E@}%ulrONf& zsfa%0XSY*K-cD?pEud3NkH8~lCOxhOe)jLkL->`|)1Zz4ozeVX+bPX#Oj435N77?e zl6jJ3C|lilA#pcf<3_gDlfvuW$e7Mcy^MH5-Hcl0hs6Kprd*oK?*uSM?)U*rk3}9K zuGm4v$kLs9l(I`(u?;tRQhZOqTJLN*SY;5Vy2~4SPrGU_Nc&!g7Wp_I-+@cj+S~ZN z;`R+oretp0LE#})$`T=K6jNeigQ|RAU{A7&)E=c|E&Dd^cog(+TtRQcIuFpNnZHkJ zPnLGBL|=4~Z)2nxpHh_hN;ij@lFTXT-xbx8B4hcVjP&uJICUqLImLK&K2}e#yh_vR z2qPXEFV%rbU324c%03Oj*(scj)wxw|b$aNL$L8YLx_`Hj4i`PHj;~7*powk~t${|| zO3|)6Z6$qpk^ue5P2UV1P)AmEgmnSW^{1ASA@unbtjg&>oxL2$>p$l^9IH;SE;>A$ zG~YW1Plg!8-rD2I7K2FZ_INfSmy|39J$Yi#eP+Du3wD`yO%j9cQ^eqb-xkWmM%mVIw;XPc31S=k~iFh$F-7Qws#|dYxBTPuOcC>-I669CjsA{7* zb@T9mB39J4{-|MXBOXpP?6qyR<5gHC@B~JrF80-~I}@WJO-$T1-|qEfs37A)vCSf) z+tFE_NMG`6)n10Q%D}zbc3}`YwBx}>EV`{*K?E-e7 zj9J-%3dpS8PRmvcB#%^p|BVn*|4%|69o{CmY7*h}vApDU5L%VkPTbY__FaCcr%1`_ z=Il?yH)s2h!s$>;-FInkc%e{c@|<75r=D0x#vqX*=Dx!p{(`DC$AqqNPf!CH2N1Gj ztFYdxZlfm1#k}iDDls(`UG^-hrLUAfdy=+P_w*|lccRF*BU|$A+bsSaxkppMW?Auf zsSv5>Kz=*$Jcz_!f?PI*=PBmrJ-96EIjU+Giut665~6$heLN;f^)Mz5(HV#CB6p?$ zhwf`D2UWZ~%;l&GGd7gUE?^3U*}V&AlL7u<7hRXr)30`A*CfekeNxjt+la{=(&)2F zf1K2#sRy_-OZet?$_(w%)LZS)Qr^@~UqwuoNKa z?B4m|>dnn>J|2osx9G?357%~t>tzN!u${N#R=rlo{~xg9dA&aPmkFBjkxI6a-hiFx ze$vNjn=kTnq}OPkFb>o7EL9e2dah;<;oCJmNn5*@*D3hIFYx~a=*3#_Ieu4_GtRR~ z*WcBiexE+inP-L=YY#{DwBvTFd%Hf@WVED+tx5%7=xH6N&|Zl4bRkY} zgzvUr;D0md$P%2#3w_7%HU-+X?J&RuAh!J`+y}+YK=;Nr9ZyBLyhdl=( z7{`9Yn_WK{p&ug6bBt$<)YnuMH8wUh6+t-sRjppUbd_bYrJ!{3_|nORlkzRs)-ShA z7;h;o7+-?+I~F&tDXeR3UcGo>-Gb%y4NDg&Dqa(z7j_kd>o*`ciqI1{I8wLpA0l)+ z2Zy8j`AGbe6{#n2n`*E}>a)2sQg7>WMd<~^_9)%n)oIidi9e3kn-OpOnBHvCTY1o= zpX45sZkb;jO+I*MpnN@0HkthJvw?C;jK5xB_Lm8PGBi*gH2UHGUWC|VB>8MA&o=9! zky^3135lKNI}mhWSP#VMHf}aU_`PPmBY4%qy2e#&yXs^0Y+|Qbx3WE6wZ-W_Pj6b- zQg?U#;#EpF_*&@Giyp#H?I0 zVM1|9UGuWlbq(lsansTT^4TmdP14gJP0|xAw^hI-@%Iahzf6eom%mTIW$zm~c|TA3OoDkB!pb=eBI6_bmM*9#aUF{yAHp10}bt zYEsIoYgw>rb#qs0j_x8pK3X^Ofjpoe7_BFCT^Oxb6PM@dW&Fu#J&K$2Fy0;csyRhy8CrR!3@Uaj$haeA`JJ=U+XhXdusNxW^Gp2d6f^-=s`z8=$caGZWD zgl{Z?(ce1>lIgZn5Aq~Qw0{f zvNrrJTUOs(*R-IeQB{QKy1pF8zOFMB`lCV4lL`Kz`UQ2tuysI=vDsl zOg%mF(sJaH!o_JjHto+J;OA!QHp4rg55>!8GasFaEorYG?Qd70{YL=J>qkSD&)0=18- zC@Vb&X<}T>)nlLWAdFMrE?lmv=cpc0DL8v>xNA{8&&Lh!;lR