kernel-docs-html-5.3.18-lp152.106.1<>,1DŽa/=„ǥV/酻9%{%BJ.IX\1qVn4P7=~_*QtCQgxHRx<|Ђqߑ1ccd*]?Lo'a }!bi'vf\;o(Ԑ @yh+ӳuuڽ! .ؕ-̹Jiс o_ƛee . p‰B 7Yp ʃn(3܏ *aanjcM,h>;1bX?1bHd & B #,9 Re|~G~ j~ |~ t~ 2~ ~D~~~999:?(:[8:d"9"::"F.G.,~H/$~I/J~X/[Y/[\/[~]/~^0^b1c1d1,e11f14l16u1H~v1Z@ z1a1a1a1b1bDCkernel-docs-html5.3.18lp152.106.1Kernel Documentation (HTML)These are HTML documents built from the current kernel sources. Source Timestamp: 2021-11-22 08:38:17 +0000 GIT Revision: 52078fe4a39daabc9696fae0fcf3388cebf87bfe GIT Branch: openSUSE-15.2alamb01ҋopenSUSE Leap 15.2openSUSEGPL-2.0-onlyhttp://bugs.opensuse.orgDocumentation/HTMLhttp://www.kernel.org/linuxnoarch^o?P2c$K^Jn||Vanygo*CSUT]y*S"l Xv(%3Hi+&D?VD?MA-ANGC'( !A! G 7[0 Z1/![P6:DD0.W./lC<{oHq)A( $ .IA<[, Z,=mHK]FBKG M;Mt^ !"F8 u-A- 2Q%)I   3=o7g- { /:$ =8ru q%07-c>oF=AZ :[} F m"G 12vf*#O 61OX?<l;,"{  ]@=^a ~k 'kCa+1{()N gͩw/ @U'. ]-6hw K sSZCj =-= 'C2 n_08 4+=OSU :Q X& V8C?]<f%`~D*" \ D7! lk4]?v0;TAy&D   +#+4M $3& ?> B54 7U!~NoX@ v ct I f h9}56 TZUoI<]_ s ia 3//\9nV#f8: ! MDK"%X<NUK ;*0zYa V f A!x  Nua- j?bDhB)@gQ4:WT) RF 1 /3/  07TJ! TNg X|U<Z !es#j cAi-~ Q 1} 69DEB ;Y}%@ ;b j *$D!1/3  I' '<U06G6[< tRAk&z>K$m[^c%uN1P  9lMe   EQ(+| 3; ;9C 6 b * AO '..j  p M Vd @+ $*[t5;P QX7  u A4 'P 6 7 M W!xY \s /}Pd *U  ?b n(< (D v $]!{ElXIK$f.1 W#~: k*^4%u I w 2=,q j W k6W!BTu)" ~ ">)B)q#J(HE' h-4O2jF>^6Qb9 C%Fye4 * 3  x;Cc'K7v1.@.+VV ;c4X-`4Uj @(gXgK Y nwsE. .k<~,6pl=y s GC%GwpQ(1|.P&%!0 |1O` "{ *w'Py z 57~d#8 f;Dq:jy- DG^)x!*XL,k@-G- }"I3xTn^n"U/=z t1% +?1H6O')(!&! udI 2o D6G".#-% >Vz ;CeZ9:N:L3k(l9b^*U?/ & hD+03 n*+V.j^XFh(4$=n&+Z Zd'>F!>5x 0^ K &\O]le8R  {$*/ 5N!,:F q$y i$m B j=K&6)s *V3a* m? VR8 8?  +t5I E Q 'I`8T 1 .(l1"=V#QrOFFM;!)QAnl*_h0wW!L0@lJIBWk1 bG5*xT6?%wxWL*O R(D ;aB0R $H8{)! C >(( a:*/ # MR ^'s h).=$+=- & NvB;<H ;4!`1. 8X3R7<|~MsFh '=" o .8X !t ,:v z %?Hud5&=vz,)!.x *.#>_ !*I +T""5)= 0$|z  xh*Ta,R<6MZZ+ci `/lc 9%GP4VCRZ[FYo^h^^B^XdgacSOT:h}rq>zYbW[˾b^YYOUY$voXam_c^/q5kH^SZ*\`g,l zN_kt_yfvFi7hrb lt}ztJecGbujcvlsChbPb7Pr\Voْ{Nweo]gw|S\(NuW6d$xweSk`N[Hs``Gv^`F["QThS`Z`W[Z[^?5/Vf?{/a0Tskq{7izmd$j^f+Wcd,q[G|ZSm}i<dDbpYlX`Y`[D<Ks`NjWR]4\;NO[kRw,[~\SXXf^UXZUTV6SwZqRR]Z6YnMRN6QWcHO|W<bZr_T=NU\I\SO{MMYOT,QzR&RRP3iT4>RH?R\mk%U@*;FKuMVCFWZ\;A<xJj?*S;QsRtLcRB>P]=[ZR +3 OՁ)lA1grZ.]T^O mj{W*ctQ{dM?L&qNP}F)jWB|/uX^ca\{~HH=8QQu^q/_Dohn=|i v8nrtmAe|#rNyzp0vbw lsf{\a;a dg'eckbmy`bmf'f9 I׮t:{ ĩb`z8e ba{61O1t`ko.\2\0\j*vfW}uf(a\kt1}cMa3k^6so=d#cX]lm ni_t\lc,]K-}`^P0aevS,c{j[t7jh<kj_y~Q]wlu^b`c,tlpc)`fg(f4vj]nll /-]{v.5 `_*B6G+Hf^i[Io:|4dI=S:(~KNOSAJR8HZb/K,QxC^VKIReOZ}QI4VeBHmNP3cghN[>:R%23LSA>{<xS-2$OITiJ>6y):J3zCKIq+(UXjK`RXM^ Bpf]AC5A#Omc$S1r1Z;gy~[ $  |~d-jN'aGb9aC+ ϯ@EKhmSdJkfsfQ%7^y<zx};|6f}%Mx~2{dz{40|E{&| ~^{'~OkV82FR\|Cr8L{}Z}}+= W}Jwi_zJ|}r[xsGz&9zy)|S}xUyLyzzX}mL #V?{w0yy{!~]}s =|}2,^z֭ 0}}{z{qPz{?9+E1YXE_̞@j6w69]DE2erI6qNW4QCwTE5YTUPDE~xQ [KU~Ureg1[ZAqyp?M$T@|T|=Kogr57=7^V}Ta$qE,@nF<BHSN BGpLQm[H?"ZA@,<0P Hj4{[$7nnXGVFW~ 5@ 96[ fT98ytcV;g[s\C"XdAK>_CmFQWBJ] B|TO#J*KLV4TQo1i{Qcs Ay9̌ah~K=hbFvKNQB('Eq]HVt 5JrIH%GGvMJHI?GGxIHJ9IrHJ@IG|CVHFMyIMIIKFIHCt\C B#H\GOON1KM `JWYPIRHKJKaHPGDB`Kj@3GJIKAJJIMK M QEIAJI\LJJMKLQx OVRqHHLUF6HBO]bCKLHfDFA:H~TIRJ8GMJ,JvITJJIN8HNlHI-MIHJEJ JTKEJvILD^DtGLJEYN^9ePP.PhJ!HMXQ?k@GeLLHtL1LPHIZHIKG;HcJAJRAW@J~QG@c,AZsx6dAOB4>'Bi#I HVxgSMKha2LFKaKOeh UlNkKZnVrt:fZHNtkMPMcbaQBL~A=DgfFEchFGNL9K$NpcK^*W~QUVKWRVOuR3g xJDEDEHIIkI5DwN:IoIO~NPRLJGIFI<ELditLdHEEIHIIPIP`OR1UkT;PTTMLdIMbSINEeh7FCkMDHE}.HD[$dmIAMf{BMXpYkdiKn*ul[k`+bqqm}OQ{Gif}`\d^0p g8HwzgQ]|4Q^6Wf}UotYJMOw X^<S0qp^a`Zd&jaa^UP ?SOQktKzd1pc[GzkKՏgʴ[l/Z>a{/Vu=qlopoQ_rR^jljqTCgXh sV9]UBc3`GFLj: ?6B%JUN Aj64%>A~vDa >]ZiAp6Md:vp~&gRwVśV0[QXH@d2]rACH:z>|fbALm$R5eo\ 7Vg7{3+HF*~\oJ [nIMMkqpvFN^*EtOz&aKSA|bzZ<W\EGKK0AJ?{WNVxgWhk2"u68umGTH~haT>MtsaZ-eѠN'UU6 *zUk<l'hhX1e nRoHr=iHA#&^C|Av~>:F ]f$HNKWZZ b-;E]Q{u:G:bcmt6F_#<R`N".b.Mo NuDVPRC]IRd`O>F]j_RcC~GCkk%iNLQtU7OmPDAIDY;F$yM-KKGdF[F;d33}4QR:{DC3?81Ng?d@7 n+:_$6z]9HVh=+AOB+EK\s"S?sa XATCa=c433W3/`A|Z jJ0Od.34ju{wnuREASjM?QcXW@־NeC+VXy&/?Xmn#m%A%J]5[50?zm3Wo}hT_S]2WwKNH{T2jSQkqh']zVU6[#GnI-VbvylH~KiFaMD'˯@kTyFF]%M|&B~4h?fH@*E3P~8(L R{}4\8ˆ]Kz{ uMI`KM_E"sOBP~Ce@JbS`eD9?qBp%;ZCN@u\MPU#=!s7UxkZf<RuyPfrh(L gf]&CM{ExQELeOSoKH=73]AAAA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤a8a8a9aaaaaaaaaaaaaaaaaaaaa$aaaaaaa8a8aaaaaaaaaRaRaaaaaaaaaa]~]~a8]~]~a]~]~]~a]~]~]~]~a7]~]~]~a]~]~]~a]~a]~a]~]~]~]~]~]~]~]~]~]~]~a]~a]~a]~]~]~]~]~aaa]~a]~]~]~]~]~]~]~]~]~]~az]~a]~]~]~]~a]~]~]~]~]~]~aa]~]~]~]~]~]~]~]~]~a]~]~]~]~]~a]~]~]~]~]~]~]~a a]~]~]~]~]~]~]~]~]~]~]~]~]~aa]~]~]~]~]~]~]~]~a]~]~]~]~a=]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~aa]~a1aa]~a1]~]~]~]~an]~a ]~]~]~]~aa]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~a]~a]~]~]~]~]~a]~]~]~]~]~]~]~a"]~a]~aQ]~]~aQ]~]~]~]~aQ]~]~]~]~]~]~]~]~]~a]~a]~a]~]~a]~]~]~]~]~]~]~]~]~a!]~]~]~]~]~]~]~]~]~a ]~]~]~]~]~]~]~a]~]~]~]~]~a]~]~]~]~]~a]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~a]~]~]~]~]~a]~]~]~]~]~]~a]~]~]~]~]~a]~]~a]~]~]~]~]~]~]~]~]~]~a"]~]~a!]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~a$]~]~]~]~a]~a&a%]~]~]~]~a9]~]~]~]~]~a]~]~]~a>]~]~]~]~aT]~]~]~a]~a=aaTa]~]~a@]~]~]~]~a>]~]~]~]~]~]~]~]~]~]~]~]~]~]~a7]~]~]~]~a]~]~]~]~]~]~a8]~]~]~]~ava>]~]~]~]~]~a@]~]~]~a@]~]~]~]~]~]~]~]~]~]~]~]~]~aM]~]~]~]~]~aV]~]~]~]~]~]~]~]~]~]~]~aW]~]~]~]~]~]~]~aO]~]~]~]~]~]~]~]~]~]~]~aR]~]~]~]~]~]~]~]~aW]~]~a]~]~]~]~]~]~a`]~]~]~]~ac]~]~]~]~]~]~]~a]~]~]~ae]~]~]~]~aO]~]~]~]~aR]~]~]~]~]~]~aS]~]~]~]~]~]~]~a]]~]~]~]~]~a_]~]~]~]~]~ab]~]~]~]~ad]~]~]~]~]~]~ag]~]~]~ah]~]~]~]~ak]~]~]~]~]~]~]~]~]~aa]~]~]~]~]~]~]~]~]~]~ah]~]~]~]~]~]~]~]~]~]~]~]~]~]~ar]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~af]~]~]~]~an]~]~]~]~]~aw]~]~]~]~]~]~]~]~a\]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~ay]~ay]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~aa|a|]~]~]~ax]~]~]~ay]~]~]~]~]~]~]~]~]~]~]~]~]~]~a|]~]~a]~]~]~a]~]~]~]~a9]~]~]~a]~]~]~a9]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~a]~]~]~aaa]~]~]~]~]~]~]~aa]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~a]~]~]~]~]~]~a]~]~]~]~]~]~]~aalaa]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~a]~a]~]~]~]~]~]~]~]~]~a]~]~a]~]~]~]~aa]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~aa]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~a]~]~]~]~]~]~]~a]~]~]~]~]~a]~]~]~]~]~]~]~aaa]~]~]~]~a]~aaaaaaaaaaa]~aaaa-aaTaaaaa>a]~]~]~]~]~]~]~]~]~a]~]~]~]~a0]~]~aV]~aa%]~a]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~a]~a]~]~]~]~]~a]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~a{]~a`]~]~a]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~a ]~]~]~a]~]~]~]~]~]~]~]~aa ]~]~]~a]~]~]~]~]~]~]~]~]~]~a]~]~]~a]~aaa]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~]~]~]~]~a]~]~axax]~ax]~a]~]~a4a]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~a]~a]~]~]~]~a]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~a]~]~]~]~]~]~a8a8]~]~]~]~]~]~]~]~]~]~]~a]~aa]~]~]~a]~]~a]~]~]~]~]~a]~]~]~a]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~a]~]~a]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a"]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~aa]~]~]~]~]~]~a]~a]~aa#aawawaw]~]~a]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~]~]~a ]~]~]~]~]~]~]~]~]~]~a]~]~]~]~]~a]~]~a]~]~]~]~]~]~]~]~]~]~]~]~aa]~a]~a]~]~]~]~]~]~]~a ]~]~]~]~a$[KMa$[KM[KM[KMa$XX3a$a$[KM[KM[KMa$XXXXXXXXXX[LPU_Ra$XX[KM[KMa$a$]~[KM[KM[KM[KM[LPUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaa a a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaa a a a a a a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa a a a a a a a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa a aa a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!aaa a a a a!a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!aaaaaaaaaaaa a a a!a!a!a$a!a"a"a$a$a$a$aa%a%a%a%a%aa9a&a&a'a*a*a+a+a+a+a,a,a-a.a.a.a2a3a3a3a3a4a4a5a5a6a6a6a7a7a7a9a>a9a:a:a;a;a;aa7a3a4a4a4a4a4a5a5a6a6a7aa8a7a7a7a8ava>a:a;a;a>a=a@a?a?a@a@a@aCaDaDaEaEaFaFaGaGaHaIaJaMaJaKaLaLaMaVaNaNaOaOaPaTaTaUaUaVaVaWaWaDaEaEaFaGaHaOaIaIaJaJaKaKaLaMaMaNaOaRaOaPaPaQaQaRaRaSaWaSaTaUaUaVaWaWaXaYa`aYaZa_a`aca`aaaaababacacadaeafafagagagaiaMaOaNaNaOaOaRaPaPaQaQaQaRaSaRaSaSaSaTaZaZa]a[a[a\a\a]a_a]a^a^a_aaabaaaaababadacacadadadaeagafafagahahahahaiakaiajajajakalalama^aaa^a_a`a`a`aaababacadahadaeaeafafagagagahahaiaiaiakaralaqaqararasatatauavaavawawaxaxayaza{a|a|a}a~a~aaaaaadadaeafafafafagaganamamamamanawananaoaoaoaoapapapapaqaqaqararararasasasasatatatatatauauauauavavavawawayayayayayayayapapapapapaqaqaqararasasasasatatatatauauauavavawawa|a|awaxaxaxaxaxayayayayayayazazazaza{a{a{a{a|a|a|a|a|aa#aa}a~a~aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaa a aaaaaa#a2aaaaaaaaaaaaaaaaaaaaaaaaaa a a a a a a a a a aaaaaaaaaaaaaaaaaaaaaa a a aa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"aaaaaaaa a a a a!a!a!a!a!a!a"a"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aa a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaa caf64e0977f3ee6f3d9cc2eef7594e8984e3924b1b96b332db5cf1a93f8063557987ada3f6a250a30ba04181f035b1deb1f2268d42516bc1783f58e653428ae9b978c79cf7f64b0e97bdde5306701df323ba971e67eb19d6023f78c1dec37ffdd0182cf4f9dab0a5fc286835690bb6ff2abbc4600b0549ff83958a887afff941da9d4e201f9e08fb285c8e335f7dd0a26d6d5583f3368ead8711be6acd4d64a6bde60775154e440d009089386333dacf03691deff51696284ac8efeeac5d508ee7f6b0269432874c8105e65e17c5a50b899771812fdb278a6583eca689f3376533ef0d5331d70eeff2c1c1120765a1d81686ca296b3200c3a0c409fee3a6a83d4a46ef89bad7277ba0b7dfb6236032a8c56799ad59c7b40860089dc50316716b828c3308ffb0d85203fe4278ef3b55ae692e7dda1f651e6192efbd20fc3443468a89d16cadbaeb05d1954c6112cdec2e36070f6579a6aafd50a0d146cb227d5dfdbb70d3511a5b3d429dc23e4d096af315a691bb63c687f05df01637255fb85c38a1c3e5ad996e30ec77bd465b695989ed632c949197c924bb9890d9bd1220c01be99c56bf566f63ce9bfbc13af6acc5f603587fe44ce676f2d785b224d85506338de6559b49e4dda2f183857ccf0d9a29d94e6f05267d865abf7eb4105db6cfb090c3cd45ea573abf28df03d4cc7ca326ef1b43aea8daa54aabcbe10d19a3ecd9c6f9183a58d7f7de264155fe650081d77cfb83aac090119871de7462aeb69469ffaeb4e18c4326083e6e056d61097c816d065da42f836f0b7eac87e205033bd41a4254c3fd8a48950006de1807f8aa4af8c340c5cb1b13894f0606cfaea46b84365f23de71bfd2e0fdb8582498ef2f5bdd0b3a39a1797ae9564448dacea00228ffd96485f2c67348ddfa07cb8c2c85fe4b86fdf0df68ce50431d8c9ed0f52859c27dc42fa9511be082853209390ddf8388fe8e7406566ac901ce37d9834cc3d1ab9344e0a67db37e6fd158b214c4917c3ad26fcd24ddd6443a63202efbd8917791dcb17f4939d26379dd68d68fe8561f1116409ca1d68178db8971ce688dbca61b59534d46ef241e30e1d078da474735dcfe39bfbad896efa5a0a3b9847f93932fc9a34560ae4140b245f87b75e0fb55b792076844893c8d556f404ebc8a5cbf398a8d1cd07b0add23dd3230ac7910cdd6ca26ccc3e0d26d146a7d09d9272c19401fb1a6ea0dfa55d15f9dc2bccaba98eee6114cad51844a70843de0b68a67ba8b5e9b52cb6a70a7afc7f0dd8e46e28ecb76e66586b210a8f91bf03b92b44162adf4a37a16650117a0e0033252d6d1c56a8e37b2cd74d4da8ec2063407704f62c58d22728a6c467fd44c126d4daa2d80b3bdb4e883310a5a4646b99c44945a96f0df1ac0042dec543631a3806cefef04beec166110a5ad364ce8335650b04f9208bf1cbc5907f4634c1ff6605c3afbc805a5ea835b40251349e8ac04d10f3a124380085c8f5e3dad4d41cd9acce1116fd3b99c152264eafe1865aa31b031b6f2a6164f6ad98df753d3437fa5df0218ab13a99a3a39fdc69c1e7f8b3ecd18de2d59e096d4d63a55a5d31dfeac21da56dffe98b863e5ae4829b899863512e409d4e6ec819cd88ae4aff371e4d0d720c00cf4aa21e78765344fa64037e82786e233432b7db04424da04f2d199a96887cf971e6e97169481bf3fa25d831a4f86b435f1efdca529b329508408c25874733f9de4a8500714287319520b8b4cb99e6f5c5345eef07cdb4fc54fbdc99252eaef0616946f86d53933287a7cb71773aeb1e1e3a9a13924800cc7ac22d09f46d094d14f9bf8cc398e74761d2cd1939748b68fa1c22606e3e0311a44950fb7dcd15cd1a68a9601afc2b36ab298ebb8696a92a4587842f327552d8e1092e204e63dcc100f228e5ee375d2faeb6049b3256d373c6cf205fb3e6104dc85cb9c3bc022905849e792459bc07f31e1619d33b86a587485eacefdaab97c131c885d46d34013b83e2db2781303a5ebb201ef607f77f85e49ee5f77224e20b4a52bdc0dc34a4291ec99269a3062200e8df5b0546b1de01b44fc93f6cf35ed36d3552a3c4992fd9b824434b263078a531c37cc6176dd0bd862198ccb902ae183ef28d2b86658d1ac6a45b693c4dafdb8b0bf9c036669eae356f3feb6126bf30c60a35c94506bde57a0f2036df0d206b1b476591e063e12d0a8084712324109a8c59efd4ef91a85a971daed98c8ff7de7a2088ee47fed8743ec9de5f8ac0bc7b92f859712b7f3921a648a270e062e8af667ccd6edc13904cf02f94a7e3bd5f9655565c24c977b44b62e18fbb28c47659806ff4ebc435f552b2883c42fb3f979df7e468f9236d7931c67a9c4ae858597d81e5f1caaedcad0259f6dec4ae0e9a2983c076c16e18484df4495036f7df9f5808a32808785e3ee3b93abcc1f243025e55320da3b1a409fdeb85c84709e3e130c1aa85c5b5b4609950c844b557a45370126c9f5dbf379251d9d140204a9072dd0990d6cd3de834f2269c2fb8104f7a95cf4af1be4e3d1db546b67b02a216340cb9043295b049666167af29b6cd3117ff571a30edb747a824da9a9f21bcf61956dd18b6d2bbd40bfe72748ccdc82a559b0e537e076474a1efb751f36e835ff9f6b9cde994095f8ff900b19448fe1f147d3cd6079fecc977899cd7044bf34b86bbdccfefb2f55e16ee72748ccdc82a559b0e537e076474a1efb751f36e835ff9f6b9cde994095f8ffd2c7be68c2be4009d0d9752c3d41008fe25499228dbda5dedefc0e7f30530d09a26c7f3f89b1d3f4afa6f8f175dd081a1ef9c03ba352ea66ee09b2e56e80d71572e358c757ea138c3e8da39c72d7a98530aea6023125a9433555f8725a5cb842861cc7517e81cb5bac9904931f2cbcfdc6240a0473ab993be9eb6c81f243b53b7267ef1ee9f7f4007a4cd9288a992a52ce07bb21682d8ca02582a01ed75c59553da2b0f87b3a24adcfdabc22155971a8d1b94371db43152df30ff52258d746c68d8501e588d1c4f8fe93380a97e8401dd67e3bf5a0467ea03b89983289034bc472c8f900457635ebe0bf51e2f361eb02e93ac6e6e58f95808d0300aa8e4e371bf9aacd5ab50cc28097f9120161dde985dcd41bd11c9b935f73a19fb14e997e81a6a2ef63451ddae0a2aefab89a6b5ee5b3e59de662483e0005c5c6a7453cd800432b9f11b61afaa9fd75871d2c943197711551d842481f97c90a46a4bbde5a8ff0a342a629f75cf9689921fce66f95803904be921c8eed8d5555ae4ef47980bbb8e982adcf93d84dae8125bcf39a87ccc34969c1815abcf729a316ff395544a05387ef03957ce21137afb83e32421d9d99f355daf6f997c699b1af11e23a9b7d5a8fa388e553dcd02244191f1e9c3ee1adf69d08c570bffa505ad1c4a0d88228e7157a6d0c8de006f0231038a4fe259e59fa235ba90e9a82e1ebb93c354edc9a91f0b5354598e510d7b8b3c03ee1beed90e46af4fbe815c62476832ed2ae5eab91f0b5354598e510d7b8b3c03ee1beed90e46af4fbe815c62476832ed2ae5eab81ee943a514e682bc226ac265d38a3c3ddad9f310af249613bdc87dbe1d5d2a7221178a04a31070c39ae37ed74a0d792e2b9466be313c5cfd7b9643ba0df911053e362248b21010d8fde6252f8e1f1ffecddc7bd8d053c1fdf268e1af08714f3dd5be9abf5daf28e146e82d951e6f5e28aa68243bab441f478337262fe051ab90a8cc7480d89b71a38452747c5d2ea55f8ce8e4d34cdfbefc4824a1e3052f4489d2e59a2fd554aa1a30b464da535b15d11e1ca4f8ce6f28c5ccbce24c8d24b2d4ce71033876dbc01c66538940ce3ef1a69eecfa04211a1535f53d03d54b89cba51b6dde389484b5f7359baf450cf9b3e4770a8b929e6e2e840c7a87896234531e6ecc40b782071028017fe795c6547245d848625288e9dfdefda2d1c703d63f3894cdb04b0dde174649ade104895fe8165eb3be1eabcefd5572acc81daff317eb47afcb67fb4423baf4112004c77b68c01ba82b374be60ff26d21597a05fa68f617f645f54ccc940918fb6f722c98115147999fbcfee8b593ea7d8d434f2966fad8d9e65ee915d591e40fd2a00370d6f2cc9592222a9e7b471966e1a591c39f7b0b85e0fb08258ba8dce57e8bc0b60719bf76887a91bb5339e1e39c1d847fdc844fc2a0fb76c3e342da1c3b127ca5a34f4f6e8161a90c253470a4d6ffefe974c40dac75ce108fb7f9cf4fdf67d27b2c46c1806fa127f7dbc817c03ddac9a43fddd743ce1867b89094863709fbf7afa5a6bab88d33b75bacac76a6cd727456375dc18956d84d17c59bf8e48e370c5739142c300d41fab49ffa02536fca32169275171778c7104a6513c1bd6dc5e272a29058a66fd941f8dcf3cda67dceefb3b5a2d98c26bdc99ee8ad41f363e55e43c3c331a3fd0db346d618f5dbd29a01573f2534c9da808a4fbb89d07075998e3dfba2967c100a50f69a947da9c8702b3752b691c7f71403a6a4bb0cf6873f6a49549dad6800b12f3c3892716f6cc2b9d4be57b068e81eedb4dbb65393db54266e97b1a1b14cf2395d84d175e1796129c788fd9781a70a5f1f6ac05b056a3361f1462958fd84b23f0bb24241ef6f45bc837cab18d3e25ced99a311b0cf5ed97375a28e2a7c5ea28d79b554e877b308b429fe50d8290e22040a55728d07d1a295cd4c094b2d46a98f672b1b40bf86b0585661a47360608ec8024c34ac0394fccb8a18a493403b454bbd4ab4d1d2df547fb8b08b9fa06f691da468b6a43abb61e54ae05301209a1bad6ddf949985d4813a2cf52f15355aa2f6c8c625a4e8a0a9aefabb0142f4480d95ca518093472f8d3eaead1c3acb8484d064eea3eb3b37d92e36181fe238c624bcc9109e81ab369875aedc4438ec2aeda81c1e925b397b4f5409e91255bb55ebdf3ae90ab711e0fc8fa0ef6ba859e3424e78b1946aeed361e092c9d2530eb2d00344d21217ce925c223ccd3a535cd52d240c4b37b00d76993cf41d476c4e3f161ec14edfa5a59ab31e3e2a7a6640395c771b3a579989b708525656a9987ca687840fbc69245331ee07bb6934fbbbc6ab7f59f58daa3ce866ecab9fff791e8988e96d19e8f8922e71fdea66e592288c5e5fde9a087599434465d3e3c9a0b78a15676ff0a8c78637b1a941fba6875cc690e76f3844d13eb064bf29683f83271945c4b669df93acf3dcbd6a7fecea5d7f579a9babe07e29a55579841324018ab7fff81b5e1fe8b6662277f1fda8ef71a1ac7d72ea875093a14fc02db8e616b27e770b4a7db2b2986a2b18d173ccdc5fab4ba373cd9a08239013f545278e510f3758c4273ad25fef2decefcd450f475783840a4f9deab501bc8178e4f8268fcea2f965fb450938d199eb09f480a3694d2b7b50d52299f4b86fb9fdf8311bf7b14ca8a4d256a639517a0df86dd52a6283224f55a16c297c939f67040f56c2375373151eac0cc2a35f79a5967c2e5305a41cd273d028fabd661676dec3ec9313763f0d50c18367bbc58bad742077c305ee5456a5c8edb37192ad756843aca063ee5019cdc4e5e2f0422c9e19b0dd54f504650d17cd4633709d84eaafd2812d79f98aba9dee48299eba8d198a4623e96e833a76bd62e796be79f95271d313dc8241bb71249d58d7e725cd858af12488c6d5a9d0405e4b39e0553a3412e62891465480140651306a63a1bb9971b4cad5f386f8b3dc6c62199fc67f38f424be19b12211752a8de6324e4b9c8a50df0250ba72e7492365b3121cddb369f23a9402f1f849c33b2cc47fa643cf83a7634024315683d7edad34dbd5a24e3c5f64cf36cc3ecc1a19915c566d7843ee16b4c34bc26c379715e733b1cba4f0d171dde8242a00434e0747cb5e565a398d2ecb0c2e00f573708b76f1b249685878aed37425feca92b03e82c84a8018ea80fcbd55e1f0956502d474727ab8cbe62ccc82a0dafee9d7727598f6f8dd5d74ae1fcbf0f65d8f9ff58c9b6a5866cab93fc148231a3b15b85efc47015b28f051186cb00726a61f74324f222651f08ba68ff46113d825546cff9db8939deae7107eed2a470ccffe3184831f586a53e0de38754a8fa47bb39c64f16b235608074a7f887bfe6249c6948abc1f0a9c086d9e4956bf044d982664b6c4fdfd72480c9aec24df25412d5b4f690b6d52959a2e3c410307af220e7b5dbee2dd8952d45acde20399b85fcc2e5f24d58a6d695a7a44f6464593553c038adb49ed13d1359b8eb2c6ff3c78a66d459c6beda81acd35594249b3accfc7cf7169669ea027414fce37226bc1199851bf0aa36dae160f40d40f5d80b69a625baff7ed48ede24f2c9119569ad773d603eeb1a392e13da3fd241c0b6af3bba84cdadfab0243aad7b82da04d9fc5266058d8422aa4cc661f5ad36b01d2732970cffc08241d4fcf8712124835d6010bed80bbb94a4113da12953dc56092238e74b376a82d169b0634f5fc286bde2371433521dd1f6b993188a060fc65656e769106169fc6fcb05143a176dd25849cd2add4967a3f8dc2edec57244c593599415d4e2de8b9e2e4cf5d0e4d1fe17b9256a871ce6caebeba48796760e2a84acf210e9e3246025946dd745bd96a470d60ab8a693b770cf743f8490639274d8312d1fef047ee963b8f68d05612b9fda11db224e5d2aec3f9d9df9c8b59cb2992c35515b968575023af13a7cc755571f6a40d4c682b4cf718b6315bc44afc1b388ef9b24c1d97c8ee19944937922e21465bbe97d191db4749439a3ddf731c590f96bc74e73d3fd2b09fba2c43a9c013f149703472e3a3f1b270b483a33f71b3c737dc0df9dcc11269d88da511e6688f0066e9e766a513ab5fad03d82a5850fa8dc3a3b554626d93ac977e54ffacf03b2d3ba2683054cb6c09fb27823108b0fccefee3a0127ad2b1d6dd311cfa7e2e93cfcdd10f3e9a0918437b0a505e7719da2b3cd4d8239f3638d584dbd35762bed8b3e3e80fe1b22a1e0be46dbd0c22d353bc370a9a869b26c2d2fb247e40ddb997302858bf39d74639f5fcd5e7d148568555cfd88af808f704aa9bed95de3c84219bcfb4d0c9a03fbf0bb40493a8143dc78a3cccb0889e76c426f4d401f2bae9d2ebec84b15a0a345c4315785639f9b29a620d6620a45e40b30d71da393af0b9dea87bd32b3b5edf1e235053dfda75cbbac0ce2d066f187d9d111a86e0ccdf8e7f0914123c4baaa84aeee313a51ee69c5704596b5be1bd330ed3592b50e6dd2f9067d922b93013c5d0ad689c4ed552aff43f40486b5302fab20fcc6ecbc6c6ff4250cff20f793f44067a57c115d613b2e49f0889fedf84bc24926b6de99847d43ed484867a24b9d7229541eb39175ddd020c20edf7b62247dd7981fd5e84052e62fcdb06468c4e4f6d8596fe951c148c6558975fefcf76b81c77d21265c26fb751c370384e514d27976f8ab671450fccdda8b2554a6ac7383c187175af4bee3968fd8b6fce892888c6be94ffb6d4c0c9d93047d75ea5019ac338f44a269a23426f492c2c4bd947302b2121cb9daa9c0118387d3106360c04ff07f2ad99b05f14c1c0b5899aebad32263241b560a3ee4788d25db4a6a9cc14078b50cc496d6bd1c04b3d89fa638395c9fb540f5a675d186f0be5320fb1373daac8e823eb9f43a29ef398373dc507f678a001875dec7ff0a4c152e59cfcfebbf3c349d81265ab11da29d938c30957704aff6757361fef0945ca32046eaae526bd8356703659e76b26cee4d81653e63fe7662379f08be4d1d63a019fa782f358fcb4abbe633bada747ff9c8fc187029677333bc75374bd26a332bf83151c08169cf24cb8602c57b497eb0007daef636754f2fc7e0b87d3cfc238e03c4b7ba66064794844229672a7acd7ca1b53879bc4ac4aaea3507e3e719dc45d495fa6c956ce856465e40faa924abdbb9d45357c4f16b29e55c928980ac88e0ab87ab46071d643b2f630e4faf24a341d13b8b5a8bad4b76960f15792c0b0a9d6096df8d9c1c0c877963005703552b48404a1561174ff1be3bcab96572c2d71803396fba6b474eda7d8328330ce713814f571b6acdda915ab81bc323f499684e2eb1f9bb51d4d161e7124749a18e13475e54bc5d1a814a23dfbfd69cfda4b0e564ae6f74d6938923cf9702a3d54f44c3ff41f991b03ecc5ecc9160d4af87bd6a2395792374bea6fc55b38a2b4eeb2e8f76864510e0a06dbde3fb5e83c4030b8a39facf603340851747d1f1eaa57c396ac5253e922e21921ed28d4cda00d713fef4ff23b5dcd6f2637b298c2f45a9819be6725a935206f19e0ccb918855ee0c6a1b0ccba284109d30c307f61f3583b4d2ea81271ae70cf67d6a46c84a835ee2c418ecf3aec3263dbbcdc88400949a8018edec3ef874783f6a2201c15cd481c5e78b3abe356baf0db61652052ce2783cb66b99a9eab97386d9a372f5f8467f4c6ff1486ad7d5de030f00c02a23543159cb35f836ebaedc325fb5ab1c3949e11308f1c75e54b60ac0b425482a4f1b25fef35d1074554a611a047168e1c3beacbaa9313fb04501b0c74b32f9386c7bb3646afef6539e348a71099eb158edb9620a7e60bcaf1106de1345608b0239ae1954bb70d4f4c616cd0b1bd9881045ae9362d72d330c49731a90ce67bfc13b7b537c750e8ca0498d06b19a463cd2f4fd0a3817988d52a702965cce2fe491853262e04775ea0f12438b741a0f172bc47583cd58a645cd28064b3fba4a6a8d1f3d114bb6e82c399f95b06cc3d61e6dfebd7e6832c55bac388e268b9a1226d8aef84677230e8f82bda4e6b8ea0143af47c6906f0df374d71f0f4226a7ee546eaf10c502ede1bba0f88bd874b31568deb8b5051dd93938ebe70e0827c6e86b843353c20e2d81e9f4b4ed422d2ffd48952abb9dc476931663c9063f5f4e68550b739017411f3e5f9bbc0939683238da231a75249a97d403337fde4027fa22da50d2e18d0a5ac1d85d01ac1f071d6308e009fe5e77e154995651739563922b0f04ae4081cdd3ba31ec409037950e05d26c9fc9e506263537c1e833cf52a10ef27d915b1b661e0cef5d8478d79cc5d07ad3e90e37e048afcea514e237effa892c2bf3577079412c5547f73207be6069485b1f7412fa559b2c69f7131faaf0aa1160cd58533c86589df09234e7d653b2a526cb0ce2b6dd288caf96ec321bdc6d92284b3d7771cd3f1cd9acc98ef55edabbfebb7f574f922e03119b76c3711a0865ef2d26384c023a3d59f64948f4efe4b0f3fda09b698b2e2c4af3d039e061f691dcbe8a282031e6273d7684e690e16b3e7f5f98014e416d6bae8e9f4f336bbfd2202b094cf23d0a0aefc882f00dc39aed4ea33dbaa9c9dbb6cd32990faa38a8a1b2007a366304cca4df601707673767a140181ff9287154e758f2e0d14a7707b94bf13a48404bf050f920d18607f097730981e93b70c4a0e35a4ee506e77b9222f01d25ff184f2347c7776ef0b2a564fd47762a3917b03e87bbbcd5900c229f72de04b31d32fe8f4937c216a8f4a2e2a4cae595ae1f7dbcb91870b93c7f714d9c88ffa81f7bf2d55620dc9dd7a7bcdbf008e00bae88a211d4a3d2fb4dbea8c59bf250d6a224aa325e54282a258dc1396d3fe6470643cdcaf7f8ccf7771e1a7c15fb3e2a04bd2a8e44676c5ac9296176b4b07287b3d8699fa66d7f1604acbf976c3b6ee0ce090e900770cd8cef64c0084bdef66f97c4c5e70e771c20a1905bec90daa681522b5d818ad2654ef32db787e6558eceaa0430fda4599d11a156bab07fa93732e374fb4a85f4b8d01eccacfe35881637db6bf23d4d846ecd7709649eaa2883eb5271b41effc0946cffbd36d052831bee69655f2f2a5a3899cb0975df8d78b69b2704d66d12b8042c51faa68c53f21d8f8254306cfc90182aaa1ed151d830394888e6874e1d91ba93c330f4f03a78b004c896bfa589118d002d3f29ab6bbeafc0fc830d9f399892e1e177eb6b9a4c64c6a9cfe34bb8bf787a04e283f8b51c6d895ef1cbde49e90581d8c28279fcf5ace01690ab67e54116f286cda9574050e8bdabd6e494b914c874c635a92943907c2b54e04cb738245eef79923bf816fb04e526a3ebef06eb2bfce5e238470dc93d70ca31f1e03dc482bb2877a6ed7693592c66138cf7c1846e7e04e396ec070785621224c3ac9fe1575cbed20bac4eedc38fd0485423111ad1dc6f279dd6ba6ec5d9134321b703dc68be729a20d31b7fd6e439580304aac92765dd4c3ca30402b32a825b10120ca370108a8d61d9fdb972eea87e6f7a38aa7725fa90c223b8b1d5d604f94aefceea38d0f737b824737dce8a4b9c45d9a8458cb701c89cba78f9d1f9838b524609ba3f5a30c6299e7b0dd6f6b7a429ef21a7f420e32d75168c7739abde403cfa7ce64de288c8d300da83fcc7fad4d817f9b64bfb0e73de03bb1175a0aeef867d1234a36d9d0418cbe8f565002e1bdb6ae99a47e9f175dfb9f70ddef0fdda7f44e4f1809d22c87c036347ca2caab958d2e0dbb86581f990f9eabee25657f46fec23ed04a5ec73f5fc30bc6ee38fe4f4fccd78497cd66b55182655317db71303246258e69cfbead187e10e9bbc92be6ea6f662973ce1090bfedf977634c35f552b45acd2c6926f6297c35121ce9dff7b1f134b1c9e7fa85bae4a66d065b7d055d73e3e089a90ce28d37b522bc7faf6c0c05acca4509b77431726fb97d6479b59ba20447583c217b4aec8ab29694d248db3b233255dc072a3f5d1ca796836e2272b5fa421c384399a1cc3b54d30bf2465fd3df1d3771fa9193790aa1ee608662c5e56b29bcbfa51be09c420e21348e3a7d8cb376c48333efc71fc6fe803eb2cea78a043bd2fa9cc17216a3720ceb134bf31b854340270fd195b253c695781d0ca5759bfcae70d435c87fee71bfb8110f002353346c34bbf6f8933cfa5679a288eb55169b24ba44ae0ae7a629b696ed57275642b17449339cf793811f1f64fad4ab9e7e79957f6631b69d2b4d7e2bc0dc3e31efded8f12268da7d69e1b3e1e11744227e05c8967b52cb0d5522e0cf8aac6d491a47dfb86e2e3429414a6aa602f756120bcdda775b340661e40e824d528439ad6c203632f279f747298c6fe8e57bb9544b89510d8e3fdff90ad688f4ebb8c0eae5b65c7cd9d1c7e230e7cc33c5cec9eb1ad7e8c1b94dde1852dbb3ea540a2aa775fbd06dd086a366d07a874a08320e60cda43b05ee1e74bc3b2e59cecd733152020f2149d3e65090e0f7b34de73e92c23b690b90d69672cd014516011d1c50efc780153633df69794b6b535f97130673a4c81163ee7869f7d5d0151afe33619bf3daf1a880bf84cd59bd0d45a251044657028cfca27bf1a3e0d322d434e9f400cedb1cedfc2fa5706f3053abd68a29243ccc519b134932fe7b44a4afefea52a97cf716c5453caa85b0f7eefe96230c358c0af619d756d5d8f0879ba257c3daf429a5125e75af3b3a9c7efc053a5707169a2ba5daeaa94e05f3660e6ad6e86cd13384f71633213ff59b16c9edc185b3630bcb1de881c140b6f8a33ad9c7a824000e24cdf39746fffbcf6a244a788f1689e989031a485c493e1eadce3c8fd13abc2d6cf9d1e8544a7c12514c98ed7ecb9cc9830e256b17a8d619de9d1936c15e6427ee1e7894989ce28ac223d5b9272bf146e34c8df8f16e42e98065fd22eea8f8f520e937b8c1dcff519e5f60b88c923f475cef50af5ebd195208bbff176512f57ec019768963990962faafe4321d16c75b8896c28e1e01e7ccaeba4e35eac700e5eb39443f74f1837a1ff81685a0b0b29cf7aa0b23fdd33c186ae3d83e492ae8dce12cc54c135d6bed2a843ac42a0d8a1c760c67d7d5dcf9a8c9f143641bb850a9c8b1f06a40a25c4bb370e90506c64b154855687d81458a5159d7957d0710cb326129f8752de28e021b396a223d80d23133e0b7b51b01ad83d4d5207365cef4176fcd2626d7100c8d1607ee0966bf81b2aa2cd4154395eff34fba089eca78a12658ec55f68b4e0dc82d878c998c758d3a1f73163915517f14b7ae7cd1662e4914f3485f235b77741cd3fe37cedc28e599c85b20502b89780cddcfb48e1c46ba7152615a81d45f9ebb7115fb8d6b343634ca6464b2cdc3de204a47e3b6f4820b0c7cd99e7d996dd66659f1251077d1687c00acba93a2149786c1b1b3514dc7fecd0f33407f453a0fedc44d5294eabdf7cd77a44d29ff9c74c49b0df12a8a53f9b9659d7cf80c894b12c8b41c69cfccf89d61bdb6bd4cf602727633b65a67aa1ec3af9e422fc356d475aba429e3ad0d95093dd77f87e20d88e1fc6d337bafb249676fbce571be9cbf1cb6e3a5fcc403eca1ebb87b01af4b6e853b3a20a48b56524bac4f450dde0e6d889e181035e374f69b6b40f06018a4a2e83801c0404e2ac1963df4c0b47e68b14e60161fcf9618c2eebcb755311f93bd31be35e6787ff7b392b39b7afbafe5efdcf59ada2dee7c09645331017094688f44e21d6c9f2a97e567e4306b582b38491616ff89e477300ab59c11696376174d6d6293174b2cdb7cc1e82796a4d2c132efec1bb8a6e3911e7e17c6a6a5881389aebe947b4bba689d472bdb3039dbfe17c090dda6a5697c6c067f54c8a1f6a94b20776ba7e6e266add431e585e22a412c8b79b2676e40ec2b97f354d0bed441b9921ebc800e2c2c616a091f4ca5bd72a8bfdb3220688d93a559e8ef88c4c940970c8d0c4693c9309ddba5690467e7cd9d25346d052f7805bee9712966edca43c1e68c51e2f3b6212d588133aa76d0cb76d5d7f712e8bd4ec2f43a59847c9f908c112a9805c9f651d9cdef0ec9dec4d71c519589aad616a43c89d9ea21e5edb5214f8cab24622a8ae8a50c498688a6bec5040bb48a8b7e07897523d829a34f046df48ec6e91ee5f43d73616da441ee8340b95d5f2b7e309020fb2c6177ee202fb21e60161506b37a91fa568a051dc4d83fb2f3e99e29e940238e3c9149ed6e936e910164f99eab440f5f204fbf746d8ca0beb6b0c90e376fdeae30763740b4241359a3b639c53584f944092bc5739bb22bb7acda3dd56ee34065ac67826079f3eb883a3949caed3cd2a83137d76138cd8355fa6d63d0200f8a92b01aa73880c6567f81b819eb7207a2a7e6cbf1d5fa9a5a7b5c64551187e2cbb0eea84f8ff54c750d5b6ad4a35b961d4a0887c3cccbde2fe88aa8bf97eb0fd182954fac55fb16502a381ce716d36876e41fab779848345780b401d37242ac9c52f02db5ddc70a9135657a0b4acfd45a0038f18c61ecd869a2bf777fd1a96de4dc2aecb63eece645da6b6137c72f9beb6f4960e8bc2c72ade4599a2b239c7db7ba7e6c8e1c08f50a71627be2aa27d85cd477a7c778ff98bfdcfc1d0dbcc318f5f36f6683cd1056ab346428b88af07b9445ad5bbbc34ea8f7a4c646e340ff1e09601e600b75c3bd96add83a776147c789f3cc063bd977684f5ade7344547672c0d511c4b281b943e41e9f2cb7ee6af191ba79d17f0101ffb95d6baa237cdfb85663b6480a787f5ffb1f7d6e24490dcae9a1dd8cdf91ac33482aaa914c307587fc9c86015245d5c37232ad2d7fc23972457b29ec17c572a626513a79d85cfff0c8ac1c31615972c9df5c14456451eb4a53f865178dad9ea2b8322df9c6265690164ab2460f68844e2f3304f24c7c869a6d8c1c76cfb009a4fa9683528d2217da82ac0c76d60e4a619a286d65c5f1b04f78a61e6f190dfc1953f63b4e0ca9a59619d4be69652d03a7294bb7b372875f1a4e16ae510d5582b78ecf9da087fb2cc4d5c040b15a877f478a34ade014f5a53efc2f2ea04fb596454bc68e5b2c1b91986d5449fba5e6f807a1c56c9fae3280fd0cd900bb1652fae235db0f25ec0f9bcce2278ef21ddc5da0c8438b1f6b2881eb50fae3a1eb0bec7613a5fdec3027b3db060f23aeadd02f384e726cccfb861b9430744a644180777ca81f63eaed8e21feaed3889b8125b320ba24a0e0d57c152b24986e01344b9bc71376f404b5723f97c64dd4b31602514867d9cdcc95b5a9790798e4ce739a6835ef28b1aad3cdff8c0925f153d9ba043dc7bbfcba6ecd29067284537ef1f414cd4e48442861bc56d16194d72aa57acb3a13ad1604895371e207592a8d17ab62a5832f3ecdc1aa005f05d184cedc32e5b1ca554ee124f31930a561cef892ee3fb15b6188dfd8443df4a887c7b86b28223cfabbdba7259131e51dff4e4a9b7ef69de50f7751a7da73ae5afa4073b82b1b74e7035efe9387d7871ee0ccdd121dfd27b735a5921c783484754319b6ccb15823687840a5d9cb4739f8ccc22a934ee197ab975717ed36a8e94d966c8b2295ebaa81809a1be0991729bb66ff260bf71682aea124dd7887ab0603df3ff37a9a003e7bf0118437077869e114a3b9d61d028f897c83feb8e001c6d0c42de4568ee66521eba2ebba1f1a56906e37ed5cf86d6a48c319810c221b3b906fa91a60b16e05c71fa9738a022d13fc27d4633be865fc7facb7f0159352e19802422222f665e29f138df0c85ecbccf50621cdd40f6cf6c4d750813cd21596750d4c59ed3faf1b79513c62d2e45c2f5ade05ffa93b78e95b22aa6af99621ebc41d16753f7c689e5bb0cd772cb4750c664ff8c841c3430152c48abbb0158bc854d4786d6d1cf95ec12ab0205a11c603218ef70da37b8f0a58be273b7ca6a181082de4a2189b5a2a5abd5c98152124e0ba9973c99f9859d0ae36128cf9d952ea163108834165360aa516650ac29b6b679f8d9267344f8f7cbf177c091a0f079faea1c38e1adc50bada3280f0849f5f807919c728c522cbc751565783806cf8babe59956d2769d6b50c0401c2c2fefbe437032772d7db6cf8bc318cd1ba35e85c97d560e1035ebc1285cc51bceb11f276e0c5cf05db4cd7f59ce8c7996d3c60302d59634b6eb9abcb5a86709a89f32784ee33ddb9160bb63d10a656f0a00c15c7d59e52d95f76fbb5ba0f35a1448965f93bca9d647344ca8796d041dbf06beff31d7cb0c3f9be01763d1a2c2274be3a728c3c33a88da6e53ef7794258764297b88de55097f7b2d49c5f3c02b63a6bc97ebc88f719aac340e62039feed942d5bf1b818e2f81ac6f154899a61166a1f1030c8e3a6ed27cf73856d67a49ba4d11b22e4117bbea4e901d6db89fa87156714ac4e822c105ea1639a3b41d4a6ee1136c3f70e1fa3d53aadcbd349c2e5b448919f6f86419a8c326eeeaaff8e31ca29c0489a5bd9dcad6160a906d942a539755e74440ca646adac5d52e3850e7b69af1aa3389a3b0c12804156f6be76a9374152e9ec2927e4aae57c499b257b7fa9a2628ef5ed7081149b6731fcda13627fbc43fec9f617a14a477c6f00f806b13a9ea99bd193620a708248a587184fc2888ecbaa6afe9474852e23de665a2cf90bd8054cbe86ee87925be4b49fb4f6280d1f0c23f173a9fd75cd429fb41dcab5c301a18625a9a1b22d4ffb6bd0a46461295aeab298b33d8b556eb648c32f0c5f1d0df2daecb599bb1bccd833ca2bdb326acbe095a8cf2aa6c08c9d97b6824b47658082c35365095488f8b79401b412a257ac3ccea54f3f5d9c198ab6bb23e926448eb565cfe53f86c4d9af36b33256f849de03dcbdb2399282e1cd431a38113a249da3fd643783231ef86a3ea257d618460f7d2c564c86490e21665dff620cb88fcf2f4f0ae7386c8832bbbd703a1835aa3efce7df8539b3a25480962ddbd2cb6e07e309ac32cc04912bf394ddb2e09f7bc4468be9b22c8e8a99b618258ab5734745e37b5e8e61f7c142fa9e24b17cfd80f59d8aee9d9937cd61756d26979476f589505d60bf7733634e777d275f5ae6b1c73fe6382f7d8521f92753c785fa9d085c5155c0340730ad107d45df6b5e2ffaa467f488f819ec1760ac6b898939a16ee3066a56c130ce4a2d167c25e90a50de327e6a2bebeacf4b0ecb0f82d7c9ab8fd00f40b9108e370a5e21ce83293f1a0a90bc260328227dfa7bc10b071f6cc4a50f0da7ecdaccb99f8436a3555554c3518de2f0b7ca2bd62f5e00f55eae1811b8675ea236699a71f5cd9285d14728ca089f57d009446d60ed71e94fb8b9299c56bbf81832f78661703b9289e70ceca8a4fd8b3a6896f74177f313b911670797b26de2b2852fdca9a29ea85bc70962b78a74a3ce274959122d0c53171197557df6bb27d618c150fe047738fdb38a835624882f3269d1ed0561753172d922860bfe52049b0134b04bb61c42db7551be76606f66a698e562d3de27e5884eed0144391057cfd9c689ca64cd0fcde47872d86138f693ea61bcd69742bf57a846e80b7dd8dcf1ef5189673e4a9cbace4853c95d609097249de69e1062ee7926dd23520446eee990f3fe32eeb097c314bc0cc2ed490aba5904bb09c6e666b8d06e092134b2ceaf1f98a694904e6eda2e0fe9674edaa9c1cf13300f5cbbfc14efac9847f7529baea5c282a71bf54ce72119d233e07b77721105dfc8dc1ae4e8b3436cb7cb1ec5b92eb2b6b8d7d87bd2301d48678920c671242342bfd0431eb384e73a9a7398d25f02ca8d53148170bdfedfc58ebc174ab2306a5826e03dceebc75cf948da27e5447ed16a086c7a214cde06877f6b1b99bd5583211c012039659a949fd95fb51193c9f1b267682ed00d179e2edac8e6286b3d5c11525a158cbea59c5545c9558e15258bba5029484a6f487f1f4045332498196ce966c7b24ba7f5ae0dcf645e54d58db31d918024004522e1ecb080e2e1486b2768ad5dac638486c53542032395a7740f3405de0a4f20cf16ea8bdf64eb031264adbd5d427af3c53f847a485267967cf8c54c49237bb5a9f6f22a86328f14245fbfe997e243b16efbbfc1c131eb1e320f2c5c634e0336537234cbe24de1973fe4073810a32b8018c6f5c2a2aaa76b17ca592bda668bd8014a2c3cf52306b74a8e85dfbac107e460e95569f612e3ab942a41b6fd3cac4e3968093d3bf1e7e02d44574ffd68ee92abb0148e11288e62ec11712bdf3d893201ef348a47093778b0cc8f2369ebccbe19e8cac686c252fbb25635b7da40381d7a5219c21c874aa38d91659aeeaf2628b2d8ca2a57a934bbf1f7f49cf8c6e85f36e1d9b70036e24ec0d9ee0ada0ef2f6a7d5afd6a8a618e41dd722b15874b1bc54ee1107f1b2c78d0b633bbcee7e9e57d7c296ddedc1606ce3ff913dd5eeb2ca6ce61eb777c13648085018db063d5923013906b5a35d0246c92231024cfbbdd3c2afa94b60e78c669a4761d3301e3d738390f1784ebb41f5ab73b42ca134b415a400af6724fd33955e9578f9cbbb1c241222489577fd6da8fa0a9543979177ae777277d058f4dadfa9c5a6bea21e0e663f849b0653fa2c371ade89a7569c7d4cfb5c62b367ca4618b5fd453389ef4e73e4e9e7f4299e8ae840a419504be7eb0e2678122cee0d73abe858fc7c858afcb578df37a55d7ff103aafd91e3f8279d289ffd910d40f24631b96c5edbfe453bf3fba0eea7e0b25fd278a46aca53e5c3a34f86a7fd848e68900705302995acd668662524da4e48f6a56d23d67af2db3892b8908111d89546f3a4eeaba125bd51e9c219835ac8e19125d28bfed382049674367cbde07b54aadf66d08d925630a49670f3601c56ee9dc13bb0623794e757d366245469ff77ad4031fec9d94c4fcaba435bc2b1952653cfbaf69d6d01defcf8f501a738a2f75611c397427dbc17653ed9a735b26feadcea6e1ffb36783eca55db5ab8957ec38cfa9ff81b0c622d7d5f2d3cda560a465a61c0f07701e65065a064c37c39561c61822e275fa19380ef1fc8d2fd486524c045d65bae5fc34f71ae658fcf1d1648edcdf56cd2986466d6f0a8688ff8e7e4f337757641cc378b68f3c4c94ecb302bfb4cc531a0825eedfe1a9e36717f18206f592cd9bf9e61afadcb8f6b45fa19ddec5abbd654db1e8d6568b02bcbd757e04a991c0304a8b8f419885ecc3462a2d2396823863e8cd09921eed478f77c8f6241dea7d27b02b205408325940b193c6b9c7fba1acb07499d0b5c49f5f8735dbd3c6c8fd998d9224a8e03a9be9b0aacfea75f13df3e1fae8cd0968f2054a2139b01bbb311ab1059552053415ec43406516c2c636e6a76dcefd56ec5bbd0a3fe14fac0f8839304f5b7cdd5289f31d1f6d47cbf01da04e87fee37cc19a87a9cc91e3cd6c06a8e17a1aa8628e5898626fee5c424e367e83a435c4d8de9115f36d3c33c80f44f2dc63618fd451aadd34727135081b3e2d3d781e45998b026e9561f825d607d7f8afa8692e55cf9c70854d3cd27525470a741e4d7ab9a63c308bc1b805d3fb010ea38196af777ecd4439c8c1025f247d014c517f107cf3996b954fc1fe0e7a2755086352f00ee9a0f3ab9db35d1c538447856539190c29c6db46a4f5ef96b3342bd1a29ca5dcae63af1204a904df4ade573aba6996d6149c51998eb8d51db4ee9b9eea66f95a5c3236e648a675602cb6e9996120bb8eabbde3c1696920c47b9daa66eec5b7fe3a3bbd14640c248065a3a19d6ae485428c5897db43e123684584059945004646b0aa398455ef27f2284a9d3cf95db80c20031ea118368888f3db2d1abbceb2d4765a80fb329f9bd5bfa2c0865e118318523837853b89abd6f22fea2b41a0728d7a7f33eab97af34c28fb864e55f5f5a7d2b4016a12c99b6e425beaac9035e49af9ebd7d7f7187e5f8ea09b2a2c5463bf788c28f7f376dcbddd12a69be483220ae4a86446f8ed5155e2597a0dd361f1c018bc05e93d95f05d88bf6e62b0d786fe5b95d82d7ede4b1c8c0724cc5f8478e9c819d2153b12f21effd19334db948acded206f16a38ceee239f963b7059ae06b5138b798273a553f1c19e05418e7211ac7e6cbe71a69c9a1675af42e1ad8eb9a66d5452aaf9f5721f0275e302f2d2ebdbc5e1368a8875a3e5147af55eceb9f1ae2c21b6960606589c989782146d3662becc3bfa4c7756d97d9789506a563fa71351c4d657dde1407a0652629106674abba3a25c495a549835b3003e9030d23df7d16bbf566aa21b5763d5fba15f121b1ad7b96f4f37c1e4dcdda88bf5f68c625194c1ac9083e688cff069b9443fbbb4b8ce344b789660a3d4a79c7ed0191498579296bf088de423fa9289453dcd58198965b12adc64aa35eca43915db296afdcddf1bbf7f02ef67a36daf99b2c999e755b8c02a6c5d4842142e054f61026894fdba161f9017e5fd10671fbde838f131be28fd86e32e7f08f1e7bc3e3d637824a494565f4ac104feb0135ed88bf557d997455553afc090d3711238014a089d9c253f9407e1f2497b9b8ebf1d5ba7974ef9ed6223b5f207e5e50e774ed77df959ba1faae1584e84e0f371f877e0326992ac1fda06b8e7a7a039bd0e017029c0e8187c448dbc7efc01d46275bcbdcd00c04633b636695e55e82916d8866c65936145484b35fdd5c4de65381fab80ee0dc6499efe307e18726752f18eb73d12c0936e9f2743e2275f21d3042ee1cbbebb2db076468e941c2902feca4e31cb3ab812effe13d3b42e4a323ecab887999adc44db2f78a118759064629e0bfef0e9d8387560b0aade80854b855a6943a63ae4b2f8a53d5aa7f8e50f2607d35c717fb001a97a0de62e8b766492d5e98d5e931646989f3de56e55f2412d73a0b21721764be0de3e055130833a6b8528ec9e6be605b942d07fd0235c4da8e39702849d3b0fb6dddf918f3a9aa414efeb555ff4c6a1d341ceb28f317698ddec7d59ea02860073495ac4c9017e65be93454a7154eb28c4eceec013f90e93b34b9e2e15e8a36007c8936c455a524fc39086eac539d5edf731ec66ade3e79acf3627a9c2ace67a633c5ccbd0cf5890dc2e387b771d9f0353ef188f50815a591f89e87affd05ea0f601d27ac218ffd8b789fa086597cb3e77425a4a6c1b471417d42848563614cd36774ea16175a370a82ce42349723d3c2219706c9cb1faefceb66be2166993b9bb54bb44e2270fd8f3de2a40e085ffc4774816cd2ca2dd835138cf9be80f19c4c8752f7f33ff27f7a9c67658d7ba904bd30c63aaf4e014b2c2d238f380b25f737b04f50250307b49ded17bc14f5932bedc96a4c47175a0733e721e263b80df3531f567a4abfb7e62bccaa1b9b6d100ea938954d2484bcdb883f52197fac5ee16019ab5ffef7c3a102b31cc98633d1bba44020150c665ed42bf4baed1cc1ff0838ec6d80a931cda00d5a4a955cebcc749e9a24f84eff79d762064dd5ac16a7f1c8bf36119b1d1ce3233de962e1dad21cfc6a115aac7b98c28d383aa1823c438da7959fb4b1103e02ce463c99b64a36dbefd5cce9bf5c7fcf982b5a483afb00437883d622cbf6a47c00308bed0d2b705f4008af8c444425b443a9a1d9f4fe4b02048a09f132cabc1fb6feb6445df18afd20d1bf2ee110e96920875b4ac220d6cb68c69d1ab5cbc7fea9f7e2f8f4875cf810bfa9a431d3150b208702c6b5d01ec08a526caccc06a90b9f1013e59ef4c3e830da7607e9752a6b48a273fb771f84e00d7d50a5aaf135d1c3bacd06055bdb857c290ebf0f08e2548eac810cb86969e7b11609e57c46fa4357309a9a5df40e44a439c003e1e2f93d2361513e6bf83b91f1f9fd01171b998870986211ab1cde0c0871d2347f9b92056bb8f516e797474e3d1370dfefab422073c968056623ca76dfac1c5e4bf25c7d1545c0736fb732d48237587c16c9ec9b91605f69a06c28eb628074abe31c9d48d5b16990a972bff695774f2de91a7a3261270c3e26c1a92cc7c16f5677c81f37b2391194bebe3c8f077f628c752f7efd9af031176efc9381eb2358f2b38c292df928b9a2933ab64f662c80ac51d2c03fdf280243eb1aea5ab54a266a3fd5b1cb82c4eeec9812821f9c568d015561e242afaa550258ae4c9812fa1c22a081cf1436ac5c5aa7aa5da57f572ba0e15068ac68c244d52f7a449dfe6869dc36e214c8da5e7118f0db576e2eaeea9ebfaa85d33a3b0134ad6ff96852678ed4f36da8f358c9bf414812f3b655281b151906b17224d4043307cd05313dcf780c325d0df80145e29c045ffdd73105a1cbee30d86876e4352be1220cfdd084e5fa5424b25f71d29da5effd25077d84f8e3f4942af9731cff469a94a199b8e79aef0cf4e455f9e5e0b873a67bcf28123da4eea5e6f514e1941f6944c0fbc11c8fa5989547c120029b9c104c7c39b4eba470d2cbbffd94761efcf5795f5e4011a6776850d8495be5010f4f982d18c699e5f20008fdc9c9230a0a71ee1e07a1340ecb28ee64a5ed7263492b4e4ee963569ba3fe78f775ebdfbcc4774de450bb4a0088b64fa56740743eb126df6fd51771bb52f1f6f1ea301749c89f117b5ab900dbc97cf5cb246cfbc208fd9e82f779516caac190267ace66b0cda2f54ddd8a0b01e1cdf747c2d22a4a6e7ad317b9f80d22279717b67470f6743bf559c073dd047bbb7c07309f32ee73cfd161ce0d7ae8bff4f32bc165f7ff64a3986e602566c57d514ddd2e97f9833e9f02ca306f93ea8d4d241e9e4158dfd1c0d45aa24f79ae109d618326d14e18df268234bba5c215afef290c114e97f998edf57d2a1c7b0364261517ee374533b793b406b46fdc45ececa7abd54d90eb295bc959fa96edab9c8256feebfdf9389ad522594f93995d748c74b10803274d7b203430e6d8b69b42c2dc40b28fc6b97b1066f1a8052de4b813942e913331e4e8947880afaae69045d3b17e156dfbe7332c288b1d07d1090db03a99562471781a5f5e711f8366efc2b41819a61a5bb4fc79c2346f92f2ef6c33222b8750452671cafb7a6301540c4d1b396dbd7d055c6774176d11a9dee436ad6cc0f608661f5cfcb5253bab68d3fae8a7349185e6e22a2a74f29fa809bae2bd33f53e35cef90c23798f9c895fd4365bacd455c3a05401678aa0d8a1306002aff589b788cd6a3eb155b0f568e8f0076eb026e1f758591de704bdc5681f531140fb3dfc3f6a7e09d287d565900f3ae6f6bd96a0fa2e5bbcdd7f1fe54e146a04dcb831b47aa2fa8b2bc9881a6e2391d19581d721676254b9303670eb87f94a49d6e6d39fd737ac9ebc1b2ff3c2acf803ef652ad78c118c27e84b3b48292651b05ff09f6d3bb064518fba72a5e866844124eb9e4efa31bb62ad8f3ae5965ea547f9684938996757578fe170ebe531fb1b38031267f1c4e0aac1bc0786a9f5e6972b8bf2c1fa886f949d494a951fa3d5e135000a05364ef13f35eeacac3856bc8c67d4e87287f08ae798425d2f65088d38e427a8f3c825c6914c9bf83b92a2f2b8312618a4666e09c89e46631a6d57437f58f344dbe2804695f112a20ad7cc396fdc475e84bc1651025fc463dc477739c1e90a10ae74070e2002c9b76b6b64a4a1e0637633a4df609ca52a4c52f4465b57fdf80b8f10da304d4f7762172e72eca9501f1d3d57689ec41b764a44a17cc4cf2c40732d0b93d43f1d0315e46c5d7f0fe2fdfd7ad031a804d4eebac77387e89b0ba24fbcbfc4079b538c2ea64fc996cc34acdfd53b35ecd8b601eb830aef6185a44c37e17cb15e0c6eb17b6da29d0af98c460b4d6466a7d02ec68bcbf37ebaa43e08584d4250e42f3ea7bed0abb9222dc05d85a46b4a6cada69378dd02cf5d8a7d7ad95ab1f32c53e713636591c5dd5358d408ad95f32a06ae6675f7502bddf63a2f38178cabca9e908474dd681960a3e12fbe449133a0de880a9de817a97b41bf5e9f1e7199996fda001e32450ad7c277764575396fa300a9b3be1e2e87971aff9ab8873a6a1beec813ba8b3dad882cb4d01bc919fa8e2b0a8fa5077a400a97b7c8c85c34b110cfa1102b8e45c665ee5313646ccbf2297cd4909e7399b8a02481475ef4c803faa601b78d2ad67ed124e980e1fe17d1cfaf4758b17f11a70a183c7f488c3cece6bd6eca0f9ef5307c44dfa99d9ce2a00d924c3cffa1e82dd455ff1761c0131aa16834f1badba2462cb1ca1bc4e0fda3cdc9925a143c09c811a2c893350e10310de56defa525abde36df83cebbaf4fc6ebf20f5370be64e46f8f6ed37847ff8d395e890abba12adfc1d8a566b0921282ed579167052bf9a98725799a080f31e950c6ef5578395eefa0bf3753bcf47ff5c21ebae76edc57aed3082093d19d8b60572770109edc3b618793dd07d74d444a459ded0ba783c01b626c3d30406c80c82d9e26256f1f6d25d7f2bee1ae47c0c00a6e7b2befd0b849a2ab59e02779041928dc2483ffa97db42c790fb27ca22fcc05486998881b9f6de64864600898d6e8860a0ec4c0eb62236eb890d22031009d4306e2e282c40821505099a7a53e9f694aa1c4943cf8da7a772101794af7b20859f35d71ce4560ce12e1043ab7a3d9cc70adb9abbcdaea336ecb19da0cc416fb4c0afcc710249c2c90084db341bebb168b33d806e12230952301bdc1860f554262f746bc97799a3860bf6d00427a29ad601a96728213e0dd688d421fce3bf476c0050f0cba8810ecdf981fc743b1212e271fc918599bd4da7f4383b7c488490427e0b98f94c22cd12285e96504e0acf4e75459c9d114a506bc68db13fcdb2bf146fbe618ed8c92c2ebb38ba9de3dfe2349d87a6b1b3b4c47877fffacb1e576616b82e388f381e172241f2f4a7af008d5dbb513437151873181e6d22ac924ad1001febaa8ce0c2c8cd4487fb1f5e8b066bea5f97a77c9a7dbdfa76a2dfe1017f85df3ff9428c18fc390cb14911d2c2042314cdcc057db85f05035126b12467d84c3b14297c344be87772a09539fa311b9950a3c5097641f3d22f6e2ab3c39df47e13c31e6c2eaf7ceeff3421fbf598b0bc8c0aded8aca2e697b1f583bbac3abea9ca7988f5697966a5972a1606b56d41ebcf5be7ab1872b1a4d92634a8cea2cca61cde11323667eddd4ce7ac21d3154111898b7f68fc08c546c0458c615abe9c0f2482b38ba84137dba7cb96e3223fe5517111f22ad05b4425f6b88a48bf9c92b31b47eb8d5c4748a953a3b31a6ad0632c493677c0fe95b0d477a288ad1d133422025bf1b32babe45a711f372513755a92459de97a66ce3fc59fb1ce15c5abe095491cd8bbeb25305944e6c7e2f26237b64009f9a027c9b1fcf6bde9e31b71ad12685b7cf1d2bc108a4e036bed9a5a3ed274e634cf38bff304a1807fa129bbc0df1dbe32f8e0107e27868fcf3d86627ad77d3b231667098715bb037925ffbc8d497d6722f25564f62885143fb7851fe2cb3bbb9072c43fa47e0efdd9d432232b22f6bab85d3d977852332f7e7ed0bd04b8b037ffe5ec0f5517bea88641c89bd205e6b9afa9e21d67335dde36adc12b6267a41cddc4feb78c3e1ba636e5c25bf0617c661f49e6cc44e3ce0ee71c0295c4754355c9f4162374434fd3a6b9386c4b12cf5d263a3aa8ceea311edaae5f8796f51f4fee3b39d685049be4e4557171029ea56aa9379f59f5bd6cdd10c57eb03ef57c31f147b787a98f39c7f4ecded81cb270427e8fd7da0e75af6f8033e4906b7d71e1bab458c380ea99fbf0c9236eb243889a66377e83023547ddb50a218bd4f1a01d666cf8021e44c5c9ef9ee144aa5cbb7220a34d714603859f11a8616a0c3811c9d71d0c13bae771a0ed26005ad276a1d683681a74e3f500eb3d90b78d9ea8d02011e65b39b5b4879718689fc8369e12622ff599fb0eee4d28ed86dd641b24db28541427898f29b6cd703f3e4bb5ff5a6b6f1d35d7bce30d3ee594dbb1a4a8f9bd9037ffd6b27986da26ae96167308349c0ccb7a0772850bb925a709d22d8129852625b1e5df4776f36921c298dd76bb7af9a9e1a264c4af20076b0607a6cee0262cb06a68ba44738f1b792b99a40ef3940e61e47d7cc6cef88658a1df28ff2594239bc9f81701a07d39e8f64b82ace04c3b4c7432fd0d489d8c3cf1b80f9d5b0eb88c6e98ce67338804aca58cfcd0d72e15ba17c0280914ae93de7bdea549625ed7707bc0136c8b86f45ec3bb910ee9814e0f528384e52fe4334e4dd4bd4dfe7080a18876db85d4ad5a03b0765824dadbd44d544eb670902d2660516eccd184bef048181db4dd4dd8431bf7933d71d31e954fe941aa05f344ada39a1357c0c43467c3c66c6677cbd500b1eecf9faed72f7a2584fb18def58d1f257e5da1c57a09a0d4f7779231f9b0ea53b170b86543414371dd35e92d25ea9b4b41f0b9b0c460df8f9599f04abece92e4bf5aad156013a4dea2d3a7dfee1ce10b1a1a40bbf327e184102485c771e59dfa33fe87851f2af6f3857bc2436c006902082e5e60be88a9442b92459c20bca46b5f9288707409ce49ca2898c69a21efdfc440f696e1a7ccad5f9fb9bab7fafc8efdbc23438e8f9484d7828122e9dc27b73842ddfab94131665c9030d5d7c2752b49071d7d5229ecc0f40d87b0a7861ea12c0fb0153e0fb3dc24c785e4b5f974b8bbf5f477bb03a0de9b6f2bc218fff271b1e679f2818b6f845bc15320fb05370b4404ae418c20cb91ec85cd98dba1d5aafa8eb7b85cc802a8ddde0143558d8d23bddb42485db097f15cd2e26670e13393d984dd21c89b007b20307ad491af74fa75a95978b2af199f66c06af275f3f0731f439e498b4756d5db188c59ba46a88b77043840e64bd10a318c074934b9cf791e1fd537f93f4d903a8bf69e65556e1ccbe73460b1b38d3fcb17c8d92a8544fa09a526adf38e35f7cc9237fbcd1ad8554e89ef4919163577a13050c71095d01f6eded0c16edce7d08a06f43be997eca65d21365d68e3245ce87716dff3a38b34729a215ef735e520caa72ae9ea8f2d2f056ece26a27991d7860b2ca0af6d357019d7c37b92e96da45fd6caea7822a35be8edfb648fe594ce168fe85066e24965a3b307d5f5d953eb72e9d5f94527e376723ac68ccd29950372f498283fdae5f4562a4fc08286f9edfd6de6c2d659e43337b5b29f515d1b682848ed80e0553256346732a85c477998965a1898656246d1f6c1ec100cd3d49d87fc3abf836ca5e91bc8144807276aae5b44c22b56dde146b338c7ffac0523a7406ed61016447ae755cd6fc3da440fdbc5dc731c1bddb69ad5d79d383df0b0c9763ae372134ad19fcba2cc5747ae377c939bc484dbb72d78ad3293f405742521a33ca2a06d3b6d796c2eee3aebb6fcc456b4759dfba59bdb67df2eb6fc0fdc173c5fe0c1af2077d18acc3fb582d98e6276567f7ddeb74963e12eacf533b49e34ad9bc719751afc58d2db3791b650be36a1c397dab5d0bda5d4d53d2a2b9cc98098fa226454533f3d2c067e130aa485ba933d7c81ee0f0d51671839ac1420aaac94a6adac6d4d4eaf33fbaed5531ef522bcc82d77a4475f51fd03b741aad6f7591c2a9c39d50a1eba0ac120a13050a96b8ebe777b724c6943550c011d60aee1dafd0f60128d832a3ec0086b52fc435239632a2629400bec5fb6130399df78d019f93fb40f79be4ed5d8de016424dd3ed095690b2639842fa08aa70e3a315c2b4f2ce5dab7b67304d6d8cb1c9c008ba1a164fd5d6b83f0f2c1c8c7e76bb86a568f73bfdf3e09205fdd619c1ee71e67c625e854b7dfd0c83b3acf2cebed7fa670d2a443729b66dda4f04165fa8fa0896e5f23952208b60203a54c42a5683e21e6143228160870dcd0e8905af493ffee0454cfc30c092f13be30a66a94009641ac37884365a8ffa6ae1adb078fd89cd5b2771db7e679dd0440a97b789c01b91ec2834ebfdce5aa835fa9c52e0cc4216998b6f4f58f513fa83f2ffbab3a21ad7250b6f8f7af0fc93ad769cc0b9736ef47dd61f02c6a9fc55288c8dd1506c13cf8edccd62e28cf7f07e5d85374e7576b877d6737c1053514ddf8bd810709a831d627dc3abe54bfa47943d1e584346cb34b71a5c756a64465c7f69632a4c18ba01594636b6c99cec770d2f50fec1456278ee5ca4c0806848f4bc431c52b22890d1b296c16bfa119d67497e70fa6455e9f30ad9c3dbd9e31b64b2d4e8f405e319b5c8c4840cda4f6a283e437e247788af94619a968fb6590803eae008d10f9b400b7aa1ebac15d8c6ca0e9784cfcb665b984682e008e348c3e112e4620460e3c8e5aa30207d39cb4d92c3f1529bd79cef1c4c79a795190b1f8f7cbdda85e8f9d06336f93314f5b113377e995f6e8ffe0536371efb57967fbde121b55ead97e2d7f8fbfdcede2cba0e29c1d73b4a040bdbc69c731080eb55a289c2475bf98e390ef91c5c2394a54560f82b28722af4b25876512ad39db321daecdb43ffe5192f9a1bf5141340b1556b789b93db71e68a7ea0fa5bba3b27c461d9e67536ce439d52d59ddeb53a10a124d0d04ed3609716bef2a1c13a2dfd8cf9977715a03645810b214183ce247e393163504b0a3285b5ca533696c49f9fd87bd7ceb96514f245a6f93adac974368420b153a6497d7211bc8b6fac07dfacce1d1c05d12bc237dd91d549412412b4ffac0b6c341e547ad2639eae9c7150a59d5b21419755ccbbec2cbe5977778c8394fb04a3c41890e2b7fe2f79c807b6c013a8e882ec4675a0781d2d82039dcd4433b52a28f210ae3844ce9f76e5feb1a4350081570f4fda4afcf12954abcbbd177ff9fcb37388ee7dbbac4e0c6db4a861487f747149b8a8b7eba057561b40c5a6accbc1abb51bbe2eb4701082f724986bf96cbe80129ff2b2d2baa5626a47167627b66e2967e41baa2f42c42a6385da4b896c6cd7ad3fe89a2d722a528e6c96bea70d1b45c97d996b39c8b2badaef64ac1f6a8c2d009ec3795dd2c614f4d707325c866d277171271a427fef328eebe9c2930d4843ece9973c120c6cc02d648826e9ba521a663d3a32401ce39a6a9778658aee008a9eff48302cff05d3290f9ad7d130e0f6804bb45980a4680fee7a9d36474502fd4fcbab1318de4bd286e2e9ec45481712769787c7186809b010a294b975f5be48d25bb9f37a2a15ef33a662c7ee24f743baf92ce80f7de995bb0741b2d52b03893bc73d2ae973dcf65384e502e750a9d638aabb8d5cb20093d656c3ce600fb5f8e5c7b49b77d46be69d5221919830ffab727bb50d1179bcda8e662bfecbafd335a80f00043187c3b3e32ff91f4e2cfbf224de4df3cff1ad0485ba220c771ecbbbc33acfe603dd81af395b5db234d5af345fc1782286fb34e697d424d4cd0f4deefb9ba3488f12e48eda7194ccb4683dd34159d0f045ccb8ce99cffbd13dbe6dbd6b5ff8ff7ee1b72d11994e86283ba045b961f0a7272436370f818d07cb607fedbbf0998904d9f7890829122dfded60f2c7f1455f7ebfb88ec060bb1bece05825a621bc3d29470487db7b31a82796ee30b64b44be6e7ceb0311f05c3b11033e3c729aadbdfb543bfd1c9d8b08fd8dbab7f73d010a387a388853131d4e5c0ec636cc70fa559ac7669fca568629c65b7c02082420aa26d51eed2ad4e5459432271a593d65d28536ce9be3b8c954fa973b5eadc2d59903f69fbdc39003c7b54e56b5ce23a9784cb06707f66f19502db9c4cb88bd2fa99e3c6611892a3def75f88c20d368144290ebdc43ca66f31e254705c9b02eea405bef4c66160c9d7aed80e02fb5d40416d5f1eab3c43645fb574a33968da7d7e33c49d9e4c5da7284ed982238a3f3ca5e34464db4f3e4af4535e7d5c825b0724b6f4664cecb1c5b44d5778601144360b65e87e30bae51466b34763f347197c6e2b533ab424b60377dfaa1342696ef5fb9662952814edeb3ccca4d1c1541810e7cc3b98ca7eb9197318b485e69d9a2c946bf2fa9ae382f790f1451aa885339328238158db3226ce7c7ce5d62aa86a3368c8b677336ceb61f752c3d8dfa53ef8bfbe30ca49eda1519015a8807eae186e7b646f4452726d7d37c16d480197b036def3e23c427070f6250ec6b9b898ef0db65797aab20b5ac715272345f40db63a4b60fffdda21f92330658ea712d9a903329352e04e25854bf5ce64153cfb888711dcd6a9989b3966d08544420f3bb5cb2d84e073ea80337fd16f7c69937944d5465bbf1324aabb1dea81d71d5043ce56f1916eab327430c24155f5dcf1e80d69d3a1e558a585baca1aeaade64870760171828ee042cd1b00eb2809ec59310f362086a76d3e4cce204a928cab11c863a61e9673c1e19f6a3db5b9b5d561b96845241f1abe5753d9a293a83399ec6004fc8be7cf2174dd321219996282831ab4b4d3348ccc9b5c0745281dde92ac8ccf1955a16682615f2f2e7b5e354938e829a8cb1cdd2dc2cf64b7bfe4902c7da30fa3f563761a95946c244fa1ae348bc6f9417ef39a1c2245928af400b7379eff230bbb356436f68a6e36568deaa2dd7404fdc88d6565a9214644c99c849990d85af73dab58d33abf852057c2137c70f2af47ef17caeec9970497990c30e64ed03781e4c43918c392e1871734e6f2457670a789276cb99c2583fd782bc87b4b770b6b0c7540d40b589f2a3734ba82ef0a880c90c521845375fbb785460f28ad93f6c33ffd1879bd93be5150ebc6331319fcf831c1af193ea7938c5c2e0b5d24005d96ea14ada6de520cd66369932dd0492ddb5890b3a346311fd752787d6839e364dd4f8c732f909067d8fc4a6a319a84a30686834f0f317bf452d5a894d4cfb1151f192e14b916849a3e448b5360a08915d048eeb1c037b9b1f71812b406b02130899866f183f47f73ac724bfcf0216ace7100733d9ed4646560d832efe164e7873e5993ff9ad8af5e93d9de51c5ff35f49af0197ac02ee86057ad3e06ce7287307e1421325a984a7d5a8e521960e8398e56dd3b4a6e4a5f6e341f227bbd534ed6d4a2b563dc4b5b341fa28384cc2ef0b69cad7b0729fe7d06f437b33f5b742f5ec866a76d8f6c2f62e24c844b0d44c4db049393a226dfdb0f580fe3df3172fd5bc30f51c19e26ddb3802136fee476480ff8718eacc25cf1ac7f84c976382c58c34be6cbae6e3d3563f642119db8af3b224a002b72eae674654adb3c0fc01a673f60de559bc4964c75536007ab867d5d33282ddf6a29b804326d7f88c3ac9c7dbcca826d74ba7ba6e601363597063c30e1a626166cd0e42e88e53496ecab2922b43b1bcfb80203c6701224463e7c7c278ca28a11fbc20f597e50e54c10a5d7ab0261dd7be13431047712e792b90d033e6680d5df2a777798b683afba267e33610391683c9c646eaa43185925f94660e99e43e49c9ec29190c75f896878b8dbab9e046f1fe9e4ede9575031c85941fb8ef5883716fcdab0ab4bbe2959d708e0aad021263ff91f7729462dd1204fee5e38e8665b6fcabe8646c3829e27dc5ff043230f6539cc06fb53b8bbc227af779c92ccda75e4659f5331147982544628cadb3170adf68f566dd7cbd8191140f9fc28a20d2741f88b795955ec4e9cd62966cfef608f50134f2d9c9d524056ce2498b0158a857b0e14261d76ae4cae7d35f9ce4a95b054de797aff3f14a8122fd95a2684762d0b13e2dd62385709542deaac9addbec2df26b22098830e8f618b41afecb8ef363817eca318db85e48f5f48044dde81b588007315447a914bb914c45cfcb4125bfca44c840dc15acb24fe40b791d111437e5bf679a16aad7f4359b71ebcd21ddfb06bf52f05b2a061134fbaaef50dec1473b5be00fe525b63cd9c31124af310a4e25968bb797d8d0ccfe5b33034b472ebe16abd4fe50b7c46ddf51d9ef48a0c0128fd0be5d4ef91d54f7dae539665f2f00a3c7d2b54ff99a5a65a84eab380330c903e20c353ff1b030febfe8d05c73ebc3fd807d22c6ba4a59d214071ecb78a08138e0e571eed335bd71e27d65ecc5d49450b1b062e2751e01f8b612b7316915221276b039523036ad30387cf3ab233b9b776c3720d074c8af26c0e5d1bfc2b77d1aadfeb4ae3c00a23cd5494038629ca770d6e61e57c837917dc72370a1adf8608e07e7c81520bc9d6c649bd825683048356c1cfefd83a965aa1e9a2fc2173d0d2ef77ca1ba489a8f43a32ed9e2d29d8af85596dc48fd1c612d2a9f3ca960c5e712b7d559619ae5bc979d83edb179ebe50c88fa355ccfc07635abea5e5ba359a91c86950f94ea497941911e7688c631e3de11d1a3c0b01b6c698c50630881e630bedce481adf5ac3a15dceb274922a7783edb7884f24f61af73de6d5024194d2535b08892aa9843578056efc0a2aec96ce9e4376bc8a2df2125eadedb5bc72f8759f1be0a90ce7fe96c9aa0f9ea558c919feedf303fe6da018eace78d2f0dd77367b161a8c17b6f2775e6eb8efb026118677212ebb080c1518d582e8e61e99aa958ee3ec05c6cf76079588736e29de395b68071605912135fa432f590d76cc06fd98a015b0954801ec925963b826be490d2750db1fe9a7b110c7ff6e1afce27508bf574e3ef2189af98d37917f44fd617379a9116e168b186a1f1bf109465a3e87b86acb72938cbe3ae391e9ddd2dd70229b01717b07975fa2d413b728988738705130fa98e1e16febefc732afbc95f34317784250afe82c007a7808507e414347ec728bf5dc790ccf6acd83a72264293c249deed5c604e9b65643f9cb13f325247aef8a4b9ed7daf393a09c63c025e64b1c60df3c741b6dc30f7cc5c43b16211f1a39ca024d9286a6fc969bc1f6f52d87b8fe869c2c4f71fa80cc65a54cc261981b375a47fe4cbd44611504f0a5f9dcfa6638d62b33dbed57404b2f9f7159ceca79c2e1b80900ced5b04e748f95052ea86e3c7ddeebb8e3733a8bc9a42f823e5195d1f0f85d63c961d2b96f8fc713cd7cc7f604dbbedf027be1a7e789d1dec74c57056580076d3116791a17f671326310e8a196f19bbd08a69a9c0ba3a311a5b7562d4203fd083f22293335ef884efce2665ac43c3a259f9573179290d57f769a6b1e76c258402c96227ad3d522ea24833f9717f45d5a954c09518124e8ee349c5632bd8e7d1eb124ddd8dbd674dc77dd5e599d5e1ea85a555ca9d8825659b0de2070d596d7eeb814faa389c9ea88e44efc78247db68b8748f479a80fcd01837542c81eca38ace4b93539e75b383eefa028ce6e19f044e7184b33ab9e46e3aeeef935873fc4569d3ba4bd0e0b0a6dab6c267421d4d681dc86421baa6e9e674c2ef66469c79da32b5d41a459b1a251bcb6f4fb53da69a19a9714eb92cb359dca8eb0760df8b8764a186fd63a3a8507c8a12d05d478985c5d2e7fc4a06fa4885d6a4b6b11543036f304098d26ea8991d2bf5da6069a501dfdf7c7eb882c835e9290f8c07353e3b442be9331f324e8ab25b4ab3b14e7fbddda818b1905c03a2775ad5bb4eb4ce4bdb04c6b95b20e7806e26d89fd71c1e846cab92ac67cd95000061db6fe2f09ef8983d458727c96b5c19293b5e7732895d46df2be83c5e7f551b20b595d7277124e8c717e1ff9225493a47d207e718b21caee98690d2a3aa2bfe243c6ce3160cbef5134dc534ce131e5880fd9f0b080b9d2f829711f8c28275ffe2246f81d37b20bacfca486ddf2d75282e9323a182d6cb78c7fc67c9ba9d8ef198983e1c0b794269e94b8d3c522c85d0bd4feb4bc0646b9c94c1dd170c43fe67b046057775b8ab518680d8a74ada6df408ad5716471ec76afae43f64d1a87b0b3307b9e309649886e408510db525d59ea1825380cb9a72f9441cad979ba5693bea1a97f076e4f4d3bde56b231444eb3f8511ae8e44926812526d8751431d803c45e8210127f87d0d84a9da146f94f9c10b01e2bebb66d106997dd4df9f7d113b70b60e8d629baa1544e5de4bb4fbcd8327cd95a51c78b418cf4cb56415de682b721ee49cdbf2bb4ead61c76b9a528146e503269be76cecca62ca0fadba98956bf9c7a51d87c35cedada35bbad6e8bc231d0b2662c5bb0bdc0e952fcc777b5746a6f5b81f3ccfaf258591fded939f42c1b276166a8ed0638bde2a633ca382b7a599b92f89cffe40a086406b68f1fd62fa801888f0c68649cccb999d9d94750264cd8bd9d1ada7241b8f5aa5719169c1bd9a8dec92f830fff5048c4bd634d489527901bbef9133b1e1f4bb7721c696fa2fd25c56525a2dd8d89b1035e3fad600444b24fe82be2ecf04eb60c8a4bcf21b969a256ff1e674e202112bfa6218d1ab83ecf910c4c67b47c45472cc099520cd0dc0a8a622d9e962534b3cb33aa1b0f76ef5215a1dc12d199792696c0c80079fb602976efbe01bb90f175d7a5561ad26e6e98122b58b711674370fbf5ee1e5ff4d866dc68ece47faf8056a92259d9930d8de03d84aff98178dc2879955545bde4420465863546216a13f2cc62f5f2760585cb27de77a657f26336c4382ae29ac5fb0bdaba17caa1ea3731ff265c23047941754a4b2f0b8fd670cb34ae4183df9fe1eb9065c7235e0f780273489fd7822c7f00e362e30bd6b28647b1c87676b261e6ecb3993b05eb15d4a4409b717c174acc4ddaf6642f374c505be7f7863af55db6144302434e6681f19403d488273d6c490e34a628adf663c8abd87f82f181c982f60352de95f8e5d6090732a1840271d5ab1e71c077a4bb76bbebab645a055ac5bdcf4773425fc176c9aecc5263e79b5b6c0748fa5fa71ccb8a2685431cbc6e15087426d6f09385d9aef9ad48a85dfb8ce351bd302b793e9b711282737dd7eee9ff7ca649c3694f10e417fad208abde2781af082dd5eca089ef6c10452820016a49e00747785e27b038698c79d48870f55889dbab42276c1f29f0587bbb0d2e0085ccea39e605b05343a8feeba8c37bc556d9e6da1e9e0c7593b590e6a853c49b6c3c8b475d5490387548b79936124394664a02482ec87ebd7945ed3eddaebf3de232cf1002f7b60e510eea452ad4ab50f1acce5a1fb0445c001ef019ace920eaa219b9dadeb1ea9ef339930c33fd77c9b4585569eef97b259c9d4776ddb5d2ad26c35d705ab6bd2bb7430246041b3e9bca2f2abca8ff9f639a88eb440a87f00faac7c73aceabb3d0275a1e1c43be5793fb48104a327984eaac731e7ae60638cf7eb7b6e604fb2c3ffd57aa226df4b8b9ae7c71b6cfbc858067809f2ece932b26e374faf5324649a2ba38cc7105775c019647edec28ad1b813d45074e6480648ae132cf30b1ad92aa2a04f6bd6435efb255ca18eb4b9802e3d0f4830675158c4b14015415b33e967136ffa9fd01cd9c4c5ccb2ba6f266c46002f2582d947927656bfa787b30f3dd57ca63d7321c3a04c4114bffa64f48993fbf83623eefecf45e42c27c6eda5fe2a795ac11cadb362dfdfa0c205c1b6a0a8e2556e65f5816221a2c61ea3ad12c95f6785f38d09a1f3916c74cc3693e94d9861e1e0aefc766be34f4439b40a098404feb6b734bccf4d66b7a75d60713483cf7230bda4925323d50d20a0244d24fa387ac7f6f82e0de7ca21241af798f7e9009fd5a8a238c97ee60e7e34b67538867ecc175d2b75422a68f49b8ccea787253ee5d1042b57481105f6cffc1602e2e6ad4291207a2308073562e8e857238a1794074e4ad735a76e5cdf53f9752469b7df567c182c7e41cf7e5fae8761c0bff7586587f65422bb93bafdd4e17a16b4af50fe928954421883f7c316df8019271b9bd3b966c59e217fd8a7f5fb702149b29b84cfc47355ee576e56ab0cdfd027c6c916589fb48056804074bc87aea3ca582257e5769da66dd29067de075f65c1996476a62b28d893d77a4c3fa51ce470bdff6c6a04b2fc73c918c184430394cb9953bec243e406daab9c087e2d85d8db3cf1fc8768512b918ea79244fc82494cb5342359c1be711c438d77e7bf06fff4ced140269d96f718e3a6ce91faecc716846db30f004eb53c5fe98a8b4b11f4b7dc33226d85d1fd6ec35f764544c52133717a861d4cfe457bdeefd1776837a507865feb5ad6b2f1988acf3e50f6a090074da8293c28df855b1bf7e574b74ac9c7079e098b92aae5f551cdf3c6ce5b3a2fa6b9cd32a788336c78f3cefa3157b4570174cafe026a55f76e371617fc901e3f5af923219b7fe84258587b7825a766f607028edfaf82f082dfcff1fd088cccba224d19c6b6f44aa185ea840972469c24307fec870db1c72d9c5b289a74b4adc9020d8035896bc82c11f43792e77136fb9c406b9e95d4bb1d9da57a44cb9eaf13150e7bf8b0456dc11d9fef63ea217f39a2fc2f158335a4db5974eb5acdec94b55bf37112d2346b112674bc8bd8d3707e8b5de3bd91ec41bee3fddeb568bfac4976559c67b328b1d42d2d2c2312d797d6bb8dab2e5cc8efa3e366ce1db429bc81dd0f66395f0f826dd306fb005b370c73a98e7f6df1439e631ef01eb4fa05a1565eda7c35e0139065990ad11e3358ecbfbdfcac2b11da8b5f3baa5e7547c3308766bef160a38390ea4c06f2cc3f568732287fd46c947d6629b6b824451eaaf4839603fb5f6c29629c247942f3d31e4d376abe9b6ed667222ca8a75c2e6ce4562a49e2dc5370cb2f83b00ad554676b6e81f0f594b791fcf5165cacf9104fc003917c22d0dc876393d1482ea0fbf9232ffc9f0c46be5429633654216088a07f1b0bcf46424795b9fe3a645be85968bf3537518397d90c416cf14a6f4ac083368fc0ac1c152cd0cfd34da5b183b2c2f66e80005fd5b96c79640f34bae2504da17c41dc4fe2bfb2fc90f2ae45c60312739f0fca234594f781bf12f614f9e2549860853ef8d97dfc7a9e1ed203c3ee99f9b61414839072650b0bd0e8c77eb4b8303d946c19cca7eece033d5050acce7bd64c7548748601c4544bac6adb492f59f239517d0b081ca5b50fab508d03fe96a64217229d5bda69725ede08e307b42736fa899717de37f0c8f17542b50581214448f8521c7058a12b6b80c47d6ea74a3213dddecc1abc51852a595e443bfeef3782a28c757a8a322b96595f366ad8f30a6ba974e8b5b7e7c330277fa6fcedccd60fa7d73a30a4d1d6875e09062855b89be3fee03e111d1e112973c80d993c2cc9af83ebb1a4fa355d4c789f6089668a67b854d7e14d66c7a99386ab6b30c4726bcf6aba54c05eada10a65a565f27b47c5692553d32dc1820ce13c5551f88559260b9ef7a08ca496a85533314c57bd84c021d93fa8aba443f6372daf116d2e1027761181de599deba0edc9cdbacb71578ee38ef9b8ee6886d2873bcdea2b8bb6f6aec741ad22bc8092a9be4da9564eab54e792634b2e282fa2e03ac836d1ca7a835b9cac4cf548bbd393bf71896a63e710e86693b9dc49f09d915a40b3f03978e4cd8273db951f142185398ff04a9cbf3655a287b100d4696ea04665c89895286c70316e07ebcafcf8e8e8d34e122217ed45d79821d13df1d0e277ca4d4164a54669e88bd5cfa56f344f64ed609301f674835904e08f832618e4fc36a5ffec5351c4fcd16c463d122ae18979fe5af838bab1f167e148ab17de11a960f2ab167e8e32d6110ce0666adf19d2e73c2257014be811dcb534c4d639ec3fb9ec1b8497bf65a0e52551ffc88b93ddd8c74fe57aead57b67bf821a1e78687ea3c05654077e706ecd95cc666c7ba23b8ce19e89a94376bed129394946260d0864255101bac8d2c0bb46eb217be2a3eb390f6e64ed8f250336d56d66b9598909e91438c08ad11c547e6d7e265ee865014b59f6d48d84e8196bfde333ede1f491e371528bae6365c8dcf4b804984d6d338a8c26dddaff073ac1eb1f419ac60b06acc57ab458fc647101cd68a9ab0c1c2d3e1e5373381a956885dfb0d9b6f482320fb65447d585c97d22d9554b28250d1ce8e139f8a96dd80a12d021039b89101fb8fe74685d5a69f2db773a10f0986d9edb93d526e00b511f71d8898a638ebb74ff5546ba904327136f0dbcf59353d4dbc3641e28f28e2998aac8e6a13885343d49754ebe46f7d5cb5f35c254e7d2d33d6d9e83f56906b1b83270c865440345e8f5475305e512ad37eab3b4037f8a842c75986efa59cc27b397473b1bd94878f823cd30ed5e04651986c0bacad7ce8383dfd18206de4a5df4dd92a53c3a328c7315fa20b07c7bfa214393de95a5553950fcdc5d6899c915d7c6632998e7762b6881f352661040f24c3d1078eaa11a405064ba010a0fe2c79f1c7588e69a4baae3cd383e563a3b3704b03a48089ab960148246b413d0ca382131688e3258d04965618cce4c14bd5649da330d209d7f51f6df11d362a35e584774c701db041a6e2cba03ea2a28bde6646f63c7cddc7af956b0309b5e8b6cd0eb658f811665034e20b69751c92b80a8600fee655d1f2d235a5e41c55d4c6ddda3a4a2f8b34cc8b325c1aba37dba3bb74b0ac9caeff33dd4bb5821fa7870a21255f00968818a62340c0dfb041165c41340cdc110908057f02a5558d3d70154f9e3675b28a324a96e7d49eb29cf3185fd762c7d47c2944912e6bd6c87b586a6075ff8ae873aae8bb5bfbd16780a2090de9cafc85c00814130e5839313dd726c91aa67a73efced272e7b7b0abbb6c7d996c85cbc2fe80297390baf9d405ef602d024bb41c0f98141f1d33fc0ea78193d40a86d9abb5b9a784baab1da700afdc063e6453839e09adc37f5c41da5c516b29ba9db4229f71b12b7352df307f5ef7b3b80a62df57be3b3af0be35a374a35b7faec6057d54162985db969cf077d72e0f2fbb73ce2343304b55b2c30b7f4abd3e78f185c5043964434a28d3089ce5bc355080c36a547c8ec817a613aafa8923cccd868f6a27f30c566a9fe15c4f4cf15b226f9074049895551b16d51534260f8d87776f06a692ca17e8f75e3c318b71c92fbc0d39e54a5516e48426d88bf81b962d60f49962f710ab152b314262ef91aa5b8b3e7fcca60492bd1f6cbbcfeee20d271194c72da884868023af4dc26069fcdc69baa336c77d6241a4ec587c1e9b898286f3707e15d99fc461c84ebffdbcb940c9903135ddd46099ad61280f532f073cad1890275ae43fd6299eef8337ea6d7ca4c36a168d911f1c0b59461249d4f0bad57c125028eaeb61a1139e927a48647f07de3eaaf9ed4375b57b010fc1489a3bbf3989ade0e9ab1bfe2a032566c451c5785277b036aa8ace1511bf6eb4f2594907667a4abee59bad9c560e21c71360c6f598e64ca5a8c26598d4db70ed0199446c38c7b7453ef0414e310522389c6e40a37d7b50489f25cdf9da177641eafaa1bfe240a361f5cda92bb65830107830852702c35daf87d69dba008876c7124f06151e3fbe69cd2e82cadcc83325fa16c58bf3ebb777df72098ae5ebb2c2059f0328ff42902e5cfea6f4cba8d62d74ad9c9320b9449f2e995f1024066be6321b5965d5f62c3a0b9efc6ba0e645d4cb9434d8023bcacd8d4f18bbd8002bf9947c6aa55d21f4785c67d7d8387b108c1a7f52267b9f405b8765d9be46e190843052a4a3f71d85b63c2ad209162617ce9b4831efa005ab722699dc9800a6b37170405c1f1df9cdf7cc67a0e393a66a4917249209ce2528369126eb7c190af512754302470c993bbdc4fa998b4d83d43455a58953e3ae4848696f65ba69dfc53ff27fa7c76c486edb4697ea1a9757c9cd37f57bc369196820f54a0f53975e38e255c3416a9d6a8d4cc039596d5f7bd90fb477fef21f6f626fe6455699123b183969a5bd1a3b4dec78f33d528dda9bb28416676aa7316976ee371e4b80d0564128388f9b3485fdb70b87b9661c0626fcc68fc76c717f72ae91a49900c26779d6a7f29038205c2f87b4187098ae5dd0a732d02cdfd6fd18861b4a6bec4b38d39c00c95d882bc8d1546efdd914cbf0b7d5e49162ab621c3c473a1c9e82353624c20023b1b6b9e55e04ee71e355218de902241f168aa5c3283f5250842a06e4b4585ecf9bbfa3239b49e29fd11706ff35c2b0bc6386c702244d39494c27a50d6466798924408f6173f854ba83376470f7dd513a072557c22c549a0e28109b3318a128b5f9ab5cd9d597b4326060e2c504d6afe6641e26df6029db5de74bc2b8df8c2a9b5781a30f71dcfe0adf456a2faa6c3a3467c35a4ba205022a9a29d6a1f2f087f473524c2526b4a617ff77f7b4d6c576f2374ed97de9153f40a1d66376b7c5909e7a07b24296a8f6b97ce3d923935e08c11705c7a245fb9a3d37181fd2d369b2ecff6494a9fc82bd59e0e3b56e6c302b3eda49bf4f9a4eccd19e7931997bfe922b7c35ac05d6ee218f840558cf7782fa9a1f9319416f0a74228c2b9a9d9adcb036d226b9948a6f9f0b5190e0ef88b0159d53b1e611589ecf2dcb7e16534ae1a62e57e32c8fa93f158ec56bf6489d06c3ec60210efc46f3929f28fd98e1b5a4d6b00fa89c068f47d4fe4e8e00d4e8a30ed0683ae7c216719a7f4080fb29ebf20372cce0efb18bfdad2b27848979da1ff589af8ec9b535269cedf35e0736fcfef835e78094836b2b4b8bcea00224268e898717fa4a131b14bb47ff57c05c173ebfea8343a5bc94c9236e63be97270a86a0e3117758b183d59cda23e24be890137b917967523c8675094e830ab9353ad4c829f7f07c8f6736b405971f283575dec97cc33abe70e3c7767a63d39eeecc40e4d2d5a7a7181a545d750830236e34793b26d41f7e87116643b543036a49450469ac4ed1d744dab3752b30506e66fa002e9b3a5bb6d07444c388d2bfbca39e19eecfcaa62098f7972f999fb07f1d7e95f263d922414b2eaecc25673095b8bc943f071c5cc3aaa9c97606d8b6e4a6948ca99d82fd91a272835aa375d76cebbe6f23c3b69faacb811819f936f5baf0897cc4fc9d3af0a53145fc8202028af07e6ef97143f4e68ecee96aeff9014528afef3ac23e3b26a96546f4630eb2e24245bce3b03f2600de72075fdacf026d9275dd05a109a703fd5970e9a305d74dfec5206d09927f990483d6f30e68cb518a7223f40aa8da98c7ffdb910c5239bc64e4a98dabd19825c277adc47f367004287d9b0d5e79d2fa38cac707340bc69686251c4035ebdad03dc556686939659a7440945041b039ce80fb00a68d4f3e3f2031ff06a1fcec62270834639cf9157d869aafad0c5f8cd60441b5a441281db0464cdba4d978bfb614c5aa4ee6713578bf429b3645e4dc11a3f7feb7495d7cfcdfd4da475480423f9341db3559c662ce235d7f74f5f787be36662cc3bf7719f51fbc9dbeaf4efaab0b8f21975ae47c043990e8f87aded18edb2fa162f34fa671cafe95c20e131568343e296f2ba003bb61468b81897922106e7b7f4215cff08e2cbe973d74f03102318fe03fb7b056851f7f6a5edc68058da13d2573739903d3456766dd72a5f9be9212e8184ff0ce9963737aca4bef7e5102ec6e9facd9f0f4968f451fd61aff102f455598aa845c11e0a36a0464b40f323a7cb0829d5efc6c656eec9d47c6cc43b5dd418196a8794f964c6ab3b59907b86136f4f9f95fc1b99b922033748f08e5e116b1666b4497ad2d536fa5c7986a42d384f31827b0f76b827500e1403bd608a3c90315cbb0ea6acb02ecf0cfb9ba243555f70f01f12ee5ffb2851f0d4dc7434512a0af793dc0c5f528f0fe9b6742ab8e75541459257e4d8efa3443935e7d24002dea9be2be91a46602c5d7386f4d4967985a32acc27e660b9ab8477669a44f12a8b69eedc6658ae3bcb4767ef48385133f8f615a7fb8b876c6cde8ac4ad2d878138debc54fd2530cbb8f148954785284364d3fbe98f8a74b4b776f68466c706208109df624cc1ce5ae86e36b230e448f00aa721e3507866bc7263b87f980aa681f5578e7e13f0be944a102037a5050bfd2ef10cb43d88eb7bf229598b8616f7705f3d5cd68c8ef9aca72d31b44ea0aae876a585de3f88877c0513d51adcea88fd668f45dce62f6afef5e90376383a9db0e5bba7f4d7c021b7df679c97589d2bd9a923ccccfae255818d08af06b292a053b2e9528d80e6caef1f754455606d5cb731675eab2b10e0eb6117773dc0ceea6d002ed27695c316d57b0dff83eb65635ff212f839440340ae929d5cb4f7f3f3458628d252780ec203f3198525b37aff8cb319bb02408001f1e93ccc123dbbbbab2b719446253f51e0027ceaefb98e7de157ab94366b74e9dafd79bf8e4d57e7f26e2048a24d76f4a91a1777ae9173a6a952a560197f5cb8f499e3b9e34fc22cadf9ac7ae0fec48b890090e2a5e64b38f4075dade539240e4d8fa96c3962f624200e4c82eb01fd26780e7153b78ede03f0db3224c5176cf1e4c51cabe0e3f13d815e75aee0560c42f22438de5fad7734acb1d87d3d28407d4be6007114ac65400809da0813312abc6e89e1188d5d8d9bf2fd7a0b75b244a55c90e805bc5b9082143360ebaec2a5b3b1ba2263c9ace012fb1fd703aa19d31c5cba870a68cb046272d496d34b37202135e39a112e762bdf000d570665a7418f59b58393ee6f73cdb96f9b77c227077cd40957187f8efd22d9355829d7dcce96dd2e72bb7aa9d647139b44b9ac22c97dad0ef93b3eb7fd4004cb6e2e012ef4dc58385a02aef2e7bfbdb60a75fc49b3cf2c0b2a4aa3cf984b4150d9066ac2fc560096a8456969b14b9450fe7c85fbf93ff30877dc461fd68242d4dbe72e41829837daaa9cbb6d45800f222fae87a06d55a3cb4eaff8e272110bcea23e9a4ee54d843b62d1e3f3c63593e45c730eb29440949f48f03f5706b2a74d8facb0be11c55c56c1277ebccf63b18e1d9df34b811d835fa844bcf009f4284659a4113213cc770badcc1f044ef51df09bd35f9d58b0d9f31573db1d588d5f215b82ddd1f9842373c055ae3abf78e3f36ef8cfd4ec8335d56fff37ac9304387b50b20618fb1abf56c98031851f84b502b580a57b771da76d66ee85e8179eb77a21fb845a4ceb35745a1078e1724e8b7a92af119da77c3e2e7489f06f70e5fba7ae042d23f7c0a7e62700806a27d97f4b0bb7fd93405a38c0d6e45249f610372b23488701fa014f504c7fcb5b42394662890fd529f740b4451c5fc8605d41dc3d8f01212c120052c274849c82b300607b744c98804561449a0b417732e8a283d2216322a8cf671f0ef34ddb78dc272de0d7c214710bd29ea69ee07cc599ba4fe2047a5fe8fc4b3c3f0fd12eb7104bde412a94c50a7db9318a03e9f7ee565df31c2e7398a45c9e634eab0655840b98054a576d49b61193ef97a612d9a9737e55a6dcbb46149455280e1a21beeb2ae18e9baedf6531bdad7a3686fb9f6d05d38cec0f0b2a22f3c2068f2b3effae59d02e411acb68b2089a552d6ce67f7d134688440d9070146701ce66b4d74fac60cc43dada74a5bceb98b05e1fc47fe09bc1c08f41fe82db157158c7fa0bdc9bb9a19c9b824aa63618393f4bdaf69a5a36c0c563bdd93d64b0c5ed28504e08d32a7544586f19eb439342cbd64d37cb218c57d634008a4a1c4715ec255c6ca54e80aa3044bdfb5b4f1ab559a88c22d7687b04d41b0a6ed4227ee266aee84379706ca42b233467fa52eaac7cacd4024da36a17d2d0f9a5e99f1633d5da60c6f9bda68849fae4d29d7ba16d4a279578a470513993763658349b32165af56df5e22afb90d0ff04eaf82f5ff6c78fe31d538f54a8addf62d8dbb38e6d91e34dd002e529cfb18f3255db3087080b8fd22434c777a3135dc412cd849caf4bf990c4e81c49c47b6d4a54181c03e24504bf05f7a63077e55348632474858527bb29a022561effa4e975694a00365304121902bdf96a59c6005737a2bc200c98be9fe13fc8531b397d7604976e40c0c9b5148f817b643fd0baa36f2728edb5dfac000e871187dec21e4b469bd7ea314e0c897f614bd40e28fb71d3d5c8dfb245f4e2fe801259ada59a31241e638177e6a48636c81cc80c4622f0e3ea1829b11083b900efb49411d4cd4e883a844ed9fa63a06806bfa9ebb47a2fbc603bedffdfac0cc1537cb86253d53c043567d99033a06718c53f4129f0be3cc91a7e4f8e146d403c62691afa6186ec913e145bd1c936eaeb2c80cbde6c081fa04d5a4433e93ff35ca5472a13d8f4467f82a595c941702726b195cf527b256377cb5f653c0e0505090f627072335163f45e16d257ba5fe7b57aafa0b9bff10a624f4ef1d8b9c7a2346095cceb81a9d1dea2605c5d9a5378d87e1cad372d2236e5a901ed11bdcb8f3246a5251aacae0ce4a36a1dcfd894f8cbc684629937f12848dbe0e9af5358a904396970a6267affa4d7075b4491bcb8f7da2e11545627dd30bacab6d4adc4d95937720fdc9ffcdf3761d8fd9825d860db497663f4e138d25fff54b740c1dbdb19f5fe3f8156789a2ddda54146e4b1544e856cf6b2e93e6375a0d018003a0797129ebeb1b8dffe6bdc8a7fe703c37900323c326caee95061e8be90215d66edad7ffb44b5d255b84d6331e4ec39dd12d36187d7a8d8781ebdf6e255b80e2453cd0ddca1e862d39ebf6332245a7c1de9e72c6592a2dde6acd66f88fdc683874eb73305c2a2b2fe9bc12833927bcc79aa82a743a9d6019cecfb4037625f06e7112f6f6820cea4b1c13e438342aa7d794812b5aee1b128e092eb74c3c2a787fe1583c2d94d4a281a3c177f20390190eecbd18e8517758733a158283ca8d4a073b2a5524d5683ffb084123d8eca9d5ec56e43ebd3f7666b73c59e957c12d324a34fa58196975094d93382f39bfd9c100e81a4b43ad75ccc62a203fb0a6620c712c863bd04234cf648801b69aacd63b018cdca374fd33577f5f46976fa3b8a5efc3ae1ffe0b271624379e7388fb96bb15f9242b839008890b047ed4abd981aec8a4f7c147a899a238174fad203126a5975824917984235715567ff5a7b538a3ea94b79a3bc1ce2febaf1c3c5fa10447b8e6e762545ef1cf2000b34e9d23c4803e3f2d1def1b0808b66f2c6ec74e20d3f3e089a7ae67f5214810d6f9287445ec2a3fe73c43b8ee289065874742d47364d6bf8b309a55ee2b0d4d552124fd393707f10cfa99a398b0a40a243cec73bd3deee490b6e1e78bbdc0c0c1118b331bc528f0edf0eb69a5ec9609f6791a6f71eb32970453ef82c35fe0c312e2dc80073b391472bb9d460c8794976efa0e5bd22eaa02ab46208902d9eee8bd899309195f6dcfa5e5640d7718e6e66e782e214853d8f9e14b00f77f35a44f267fa1be6f029b1038b07889cdb7051c64ea216edb6e1d90740811534631185939cd7bd5172bbf4e1e72e0181506c1526e244782e7f348cc8f901d51ac6499bc41fbaf3338bc259027432e5354a06025075dd50eb2f300c1ad7a80b63d134fc66f9641dedec8cad98fcf4aa2e063058c719706dfc9d380c98766234a9715eadb434e54199ac1556960d44287f217140d92d1df6210c41b052b1b8b0c13483240c61ba4fef89989a01071688f4d403033e93336bc88fb405032ed09044e240fb297af08bcb9a2a2215a466fb68d557fbb09a552c37c667e48479c494de620ac457450035c2d09a3d8ce05907a9447c262d1eb6241c766bbe664dc5e83ee34f702162914447ba3e68570efa24fbfaa165639358c4861651e954e35de30d8410369495d5e79aacda46fa94fb4d0e8df7906cb71113708e6dccbd85780638bbe570c132eb0dfb9d61ee0c0337ab4eadfea278ba21423db285d240fe1c9f1e423560f6a5651a95e9852440431262c17119597e5e73226b3adb9f35ac4682b47408c54ab09d73970af5d588e0b36ee648b9a6975439b2fba0dffb8b7ac7e3d8bfa7f05d00317d1a654f569016b9ecd61dd1a306e526395adde00dffa8bbabd474c58cfd6e9602d2307dba61acadfa3f66160fdc6af0d7362bc5fd99b7d7321590536518cd03e4f4d50629538fa292cb40f30c2dd92207cf33c465f8e860d54c68b74db97f7a40b06e3bed104abbf549cd46015c26522532f71891370130b1625e43e1aed648b86aedb24243ba828b51103cc6e3af5672cae9d7f5a02243acbd836dca6a87c3c8fed5c3b586b911758ea45b4d98d4b3cd90a23173d247423766bdfd39d4aa421d39d83dbbd325b6c11cbb228c2e8c35874d1ef053c3137e113feb8478e36d87acc8835e2369f736bd90c860c38afd76c563530d5cb47981ecaa0e57a8419abe46547715e71959c93adb1b68fc91d56b6ce9ce80071dc5492f1be5e1370bf82870cc409d9c496680b4c7a704623673af3a22fa8161bf1316203ac3a49e3794182bafd02c455020354ce8f21c2301b36559ef39fa26ebd492250e0c895377e8de3d8e34bd433e14144b10d93fe474348831265f3797f486ff678444b85b9b7ec4bc3c96346f4cb202d47184efaf81681de5f52c5c7d1dcf8e37923e802435493a2ee7271183eae666bb42bdc5d0fba9ac7d1d6c5ba974b5609d0653cf7d9a505f6ad6055a1166a7cdbb1e3189a540f0db72b50fd4258cc3c9a2df33d2243ac6fd11698fe2dfbca5950d8d1628a1b5e6401f5c24968ad7b8e89170281700331c70cdeff84cc7b8815d85b7347f5300882bc493d76162c15d916fd83fc2d9a0679b6af216eb645b1b57dbbd042fdf96ba7cac1088a1a8ec445086bfe880a25febbf7e00d9871a0b6077f29e60ebf0cf1b77e87c8d04a7200f7b4326dd2587596f4fbeda4abda884fefb1e400b15d9264aea81c3953774eea66a4583165cd317cf8fae98a3db9ec55b24d6c1dc9d82770c4ddbd5345a6adfbd75560e9e3ac08e44346c6c49b3e383c4e3c95169223437bdceab54fa72d79b97f30f73390e6a8d69a1bd5a2774dc5ec6a2868888144d030b6a4bc953e2df54ecfc4fdc0ba433b2a87f5a491eaf9759f3f755e459ae8e3d8bdf3e6263b8c84ef4c07d4999b341a01b618a785de478912f26e5c1a4439c40c8425beb2592bd37a52fae253fa1adcee2bfca2ac675a3c0643d58d6ac8f6c176ac48c68eaafc4d3b3e645bb5605aac97602309ab2a3d0efcc02254b9473184db36be018de835acbe00602b43c8acc2c8f1ec97f5c06b61ef47e2d2a68f49987bb1db6bd9fcdd480abbce1f33e3d20e74b45da9f6cbbc64cd313ed4144db5629977c57405e76070f1bfbd555724bc84f35021477dc7ad3ad7089cc4a8f25988cd04db94546c860268bca0223ce46785376f45e6dfb25532ae6c820ec1bcc2750ba2e6af787778a3df555d2fe3f03f7acf35337fbd963e2cf82e53a0311be0d38b10256ae55c3c637c1eac4ef9704f65935e9537ee4de472a6572dfc78b7cd341adcf6c102512330574990cb9b201cac6a3a1088be3752adce2708388917e6000a906f75d7e65f1745a1662dddb072be1ac85615498ef07ca9a7da60edb81fcec41039747e420345f2d22419b4bf7bb9e1ab80ee6c7546bc0c3d8c4f385d9a8ef0b17a22aefaac25336ae0e0c6700450106f70da143c65986fd85bec8512eb5917028aaf381a23df73a6e776cdb9ac0617d1605878185bd3784b8e3fce18142bb942eaeb23258c828ce64c7f93eecae1e0cf599e1099d0f7eac9671207a021e236a6b9fb340a4761e0ffe0d805a80f41ccecc4bca6b0df31ce1d45f662fd132124050ab7dd2751b51217ca2adaf6296f69cea87c3f4a2e5a5e52a5e7285f312818a5794171ac4ac2ef6097c6cff7f3e341366555759416bb9a91bc98fef4de6c7958e7400fa7ea3434f3b4376f4fd80b5fd971c221fe84f2fe5ac26e1acc84f89efd01e30c53b3e104cdb03586ab2da7cf92d88da7d360e71eaf4084fadaecc0b1fd8af1c675baf296d0ff1f8174a5c79a3356a8d02d2f5b9e586f871b89f9c0dbd45e595d109e4d518f27b433a084956611c8425cd14289a78ce1d8f8e865fd11e3d80a5bdb08faedfbeb172ab125d735530df9340539e100d62e67b91fdc2c0a320884ee344aaf10ec449d98c2eb3506405d1f510bdfad1b07a90f97c46b177d77c17b1f92d92d68432745b72155fee805abb2271fc7346cc8453a33091fb056f509492cdec644bcc116ddf3bd768b334c4662206e1682db43fe19a6682bf2b8b882fbb8a890328ac33c2c1214669e10bea2031627eed599ee9a131f99dedf096b70878947c7196b152f4ff27426412f97e4d61b29ecf8518d8b297ab1481c845954ff071104be0dcb75245d0afd4cf3e30f5592a122fe2a6ce13b6c00bb8a1c77ab2b9d6fd442096ef2e23ce629f4441d901fcf17b4acb6b749e118ade5f14d28842d60c65cc045697d1de28d9b93268557a184fd5c1dd72233f0d8d0d207ce0a9964972e825ec8a6ff0b79b75017640f5b0912203c75dba3fd93688dc008128eadf58bcc50bb3efe9ec7bd8ab49158ef4a4af792b1d1b21e5c26de9e2862ef8782001b3981beacb36f816384aca2b97c1ef77286e09eb4ddbfd36ffd6ded8363df42aca6cea38099d3128af4ff6ffebf62631845c62b2ecb36816a2aedb17c56fb86ae7e8d1b15c27ba33f23c31327ed20aacf546761702d0fa32c26ce80d7680eea563b59f628e8951f4d8f8aae04763a792cc12e8423531c7876555647f070248ebd6725ba88721a9b3d3326d6c471b2784cd70e45842eded83b0dcc92c86a4e1fc41785f60b96a04344c4934d8bb3322312e9ef34d7f91e753068f98b7c9e272bb5b2a13a8eeace1ef90e41c5c83da837143b14867cd61a79439220d35d6a29ec869f3a607c8f3a049617976b1e5042068d7f282ed548db6046ca535cfff53ba8f082bc8856db6e681bcd247e01602c902661611fe2b1e251f49f02cf8024e3fd06b4ed2382b2fe4727926f3294623303bb637f8a018b84568af0bf350b07920748a061a0ab763ae1daeb3d7c3d63a0dece6f61c68c76b988f712732615aacfd1e9dc1239977015416133938ac73dc5f13c0564372af37312b88cd5b3a52a82ef1017e86c7fe2d342fda5b5530c692aa58a19c6d89b73918c48bff9de8d4e5ab8c088c38f0e540bf730cd66cc9dcde209d327b8162ac43cbf6b903dfbe64d2064672dc57fd506fddb06a719e2b43a857cf5010aff9fefa95d576bb791cce2cca32bb2798c8a15d70f30944e5881625ce10eb358a60b81a6e26efad492b5cd794046427fdb21c49366d4200179ab7bde75fe9cb3e59db3e6b49da9552ba3977a1c80a86066eb49440b1189a666797ec6c9c616a24a6987bf75566e616fb72186c0b80e80482485fa2a02cf182c0a26c8203255879c5a8a95fef621753ded4aeaa982e23ab82cfcfcb9a6957a9ea7b94640c105e89c05cdc12367c75579b6566b195fc9f65a5239004e497befd8b703811a85a359885bb837cd41d7879e04eb5ea9e4c8cf43650fb2bb732bd93a4fa97418a4ebb21fd8017103693201f41d9391bba809fe706a25f31561254800a7ba6dd00728226aa5f288d8a1ff2ce2c04c6276d5a17b4cec33628b256d60d3163bf379fcc5d7dec2dee7d555894f38d9ba3920158cb22642757a17a3a0378ef65a964970a170abe78a7af358c5bcd872b87921ed92b8ac933171cad2a70a1c4c3454ac215138474db391a4b2112b05f74b1b7e53a39facf44f5dcac42740811be87f4777ad32f35c02bd392969bfde9ba19daf382775f3629ec1660979dbcc62de2a4c8e269216f423bfb87008ed83604c1cbf44463e20a273070b85ff654812d2187276079975840069204a509a2d437514fd4f64cb09e3edb19941b9b9906046700f555274cbbc3e699e37ed0da1b1198a1305cdf746d46a8b17f0d87aa4425f998dcfe49aaa78c218bf7f7da7c0e05702b60a77d6f1c0d08426a9b5a04e8992a9b6e69a671c41aba07c14ad42482c81d037286091226e5289bf936fb137296494510a5a5b4549f59a2eb2d1162e55b13d1cf421cb674e71d44ac1f89dbbcbdc8d86b6d0f89be2baeb61b632d7df185676e8b269cf75a6abba3c39e406e6dd463bad4658a86b314973892c4d6d8b1a1d5ec18cc274fe7b83c6dcc16ff7a209b8c8c9226db96521bfe1babcab0958aca8bfc7ee8c4f7d2f007541d4e1ff39b41e1920ebe77ffdb89fd22b919b3cd65de6bfdf048151be76631c7fe8391dcbfd67ad0cbf500d37b133e3c161052fa2ae014073f3565edfa27a3a93ab56004e341af42f86d65cf7c3dea233e19298b1b82db3d2b698a1cf0c230b63bde91b5364383d01fae0a31c53f32c191ae86fa43fd73d803175a46eabd6e077ee1806ea2d8e24630556eeb39f8a33062489ba1fc10a60fee79a42c41708ff7073939c3e7a6d97a5f1e8b7233367461167c7ad72e2da9ef5d70a6504f4f52072ef39e197a64da728d3702434b0b9f51e753cbb3cd3862a570cfafc333f9ba801fef3d8fc7815c1bbc77538635a27cca33ccd9584d8ce9455937b52be414b4aec970f112a96854a774dd149c2c97ba20e9e94a28bb2bd4922a4f23d84b1425b3c9b65d258e25ef6fd5518a3e86cb607e3acdc479f9791e4f2ac79df8d08cee7527856ffa12f91a78252e29a62c945d45c55f0658f92498731b6150d483f04215ad6b62773a27d10d08e5331c73df30652a27ecb568de0dfff9755bcee1d33468e00dbab9aaf84d52e3f6c49ddf5105feab27e19d20376a157af860a7386665e2d7b83dec35fc060d89165c60d72019c3d5d694e44a74c3c90e577614fe5210d1b59d91640facb7a3fb5dec5ede0a6ac51b5377d926a5a60ecb349d844c15d8c6bd7d103e2a3b0db72fd50c0176fefc77367cc34be36b6e96b3fda6178ff73dd721be7a054d946872c1d052cd3b66ef7253ac9deef97b0a71217d6f869b69abef9c37cc38b817650d4c1cb3ba5106ba60ffb26f322f64cb65e437af76a49d032207772970aac1b0deb966cd6f0dcdbeae0da2ece324c7f9e18c60515ced0daab0c25fa91b34e8189d48ba6bb1891dac175af079e1af4a01bfed845b80c1d38f0d556477456281a4f553c716a4b150b805555b7222cf1c266030d36d5f3b16f2c63d54ed75a49ff859c234080c48b33a79efaf7e94f32db3c52d33895ba15faf78dc4158d2261f6c2d37d8a0c304844ba2f4f725714a84ecf04404105d84c3e79c899a8ddcb2163a59552d8649601e06cb9e2c9c91b557922c225ceb12a529724a839aa3456e5bbcabbc32606203fa67304c9ea2c23f4f5e7d2fce86593925f1d53cdc21b27694a5ff68042e20cf2b647016e00f642d4258952a32c186a9be10f6cc7da8339726c9752c900335f81d35e63613bb743fc8c9fce25108300932998d4969222249e0154bfccd273644a2c76099c1ca16c4f045ea2dd6c4b3d22f3a63591785b0f52ada5e66867ba8e42b56eef98f797c98e31175006a280b6ea28a27db80eda6b34d61de039d47247be0e117d403546e9eb825c49c72a8a475c5ee231404d20882109b8351aedf63d1058d9746d595f6e44e784b6c4f1162a1b76fa9309784c853ebbfb7e74d798fbe22a0b3fd7faea5656243b987c79ed32ffb695da2ca502165b92870bffb6a84292c15486877e3eba1aff6cad98026c87d3f4b5160be2a893e1df822804e9ccb07c8b4a9124851beb446f9526e7cb14459e80622a0cf978ba688d06802519845775cbd8c29573878ce492e65d4e51f1b446cd8a9d204a308f817e14952c5f025e2d1ecddc37f378656b90180a2e593d568390f10822d005ec039252939c15feb6bea0dfacba81693702610f00fad3a018dba9a52d0663ca39a7ce6503f79dd20e328ac238199d8370fb7ef3c3d4ae73836c08a5a6cc26c1e511cdcaff043fb32149ddaf03e8aeeaf1d4a9b33b4948bbdcf4b5647513fca01a8d804db47ddf586b2cd77755e7ae8f9995dbf3a4649e230fcdc1d4ad658f4fce6ffd1e00dcc8ee7d0951fe2b0f1150931fe163c282bb22bead33dcab4c48b3ec1ffe8ba3ce944de21097375018a4617baf1105d9e5beb24a61c8a04741972725cac14734df06e627913a8622086b9afb7b235f622af97d2c3099bedf803f382482286da4f4a400d06e564f89e7007f299cb7f556247090fa9bd335ce0c8947a1b97f8f8dbfc64ce90e377bfed5742ec1162be481c0bf27d524e80b0d0ae41446a1cb61c45144e88a356d02c41810a8a94630f0df1fe11ba651840b4e2b1b42e7452461f8f288a35a04ede3ae79151d58dc3ce3452a0ab50b0a9afac83f5f53109848ed1ee506a7a552309f0d6e00d26e1094824e1bd0aa25687d0689aaacf1baf704eee11f55a9cd8df88626a60456afcf62f20333813de9be4abb76722bb8f020515f85a81c4600403bbae7d6465355f0b47e43c9d880a9416e85e47d4476e0591bdf51a1c6ca94449fcb1f1af1ca898842bae1790d8d939d283abe8a71cb1d32f3a6fa88087645c806cda9ebb8fca1e6d7a1b26eab5e9aacecd8fe90009c140a20783dea4424351e467408a757c87c2af7200c484ab16817f43995cc3f3999f9843b5b41fa8378a82655b489f9d5138f54891c1c9d812f1c8b045893984fa4a82315aabe516713fd8ab1ffbd93ee061503376efcc8051f107e9a1d9977a73d6cf1d79f1be103998a5710d8d452b704ffb52011cf7260d8f00b70bfbfe4c294209eb907b72ddb3310ad93ff6b5c0c90ab10c85fe3ee63c429ff6e61ff3a5d8be00e44a3d07d6a17ee401b177572d28969e893d75175d1b86795e2beb59d9e43c1a07bb7c52d90d9b710dad006f712f30fed68ba410ed6ad9f62612318ff22397cafc92abc877302fc7beef8802868c1f36b6abc9f7c320604041cf7580cc9fceca4597558aeb89a562684a86c79342a952c93ec5ff3097f3c18521ae33847220ed1f8ecbb5f5257c3137849d674f4b6a0cb907b12b4eec3607c638fc8406d88834b8ab94bc9aba9a0cb1f5726b7cf3ee3de6f2282e3e17a37e9c3fac4736f0dbc8d9ebcec0cb0ed725cf10f01d6b8048ec07184808fb132eb5042fb08afcb99fda0cf7034c7c5210bf3805073048259a69276cf912b4d62d7cdcedfea97dadb9c177bef1c1f3409ec275baea28260c8ae9b31744ab0b9f736ef37c92b9b8505a7d65f9e179e72c6e6062ed6540af5cdf9d320f08a85de1c2a60609cfde8a31d399fcfd0106a874a92a5f49cefedad09df0550397425f576ed7f2f0d11c4f95d1dfafba2b5996c17a43892db19f49875ad07d769555c6d2982ebce5d75a559605a32dc92dabf46adc0160b2dcded18bb71a7561b2812789e5335cc89f305affacff75ed5e7d6e3a5b365a1859b25e4f45b8eb77374761cddea1c2c2ce660a4765995b6bce810fd186dc6ddb42e47656e65e4bb4b43595989a3b5a1c8a9731c373af74c562ba22752843047a068bc9bc2ec82e5ac6a38bffaed6d01542846d7771a95ad9f0530f32431bd71d73f070c03f4f6a490210b2f439773cd89527ca3f5fa2e80ec0b53bcd8ee67b0f6c1fc2cbbc4dae8390be7af07821d306f024d435cdfac1374e8748549e157e166ceadf7d92efa7c1e39d07a1463701aabeeca5c722415a97a48a6ade6dd4897b0285dcc97be118c4327898344b02879f3e53b6dade13aba2d24502dcb196e3cabaadc8b50c5bf1294939869c0d87073eae227ce4d0c2b87ca6af4b1e6eb892c5af8a44fc0ca1de0a67a4e6a3e4f574f41b9a7c664c9f9dd684f0147a02b22680b6dec279122aa87e59471d83ceff54c985fdb8c16d5e1071274fbb4c1c521448fedfccc960ae8d72735fcdbcd0ac90ca9ba1476c16f7b0066ea7f311c7f4d7d620b48beb26b2e5f6fecbacfa05a09783f9e99e91a78a7124717b6e27e08a0e7262af73f33dfaae0f0e24df11d4e94cc45767d01ebeabad0c5110c014b9284b465645472307780f3ae951d86eb021b490264136a6930c39d7351c3be4efe890ce445380d8b5bd085d785f47049f7cd9dbefbb05baafe85cf6859caa3aef59cef559271e8e9dceb0d2e8f30f6fab62c4e3778ee7fa40a1cf5dd036dc562a8545410b36f027857bae19e25b3e7b74b70067748e94bc472ab2d63138e81e3984f6600f1675347a000f6567f2d5d129d0f9132387d5233474f21df803c18ab59012f8ae761f807e84f703745b29fdc90b309891cb11b3c8c345bfd5242fda41e82e35add042543afed5877218175a06d86ef7458fc77afe19006370abad824d8437df2ff0ab84c02929c9fc7fce8c24d991210397812cb28e5a10d0edda6dc8e01f31dc312ed0bfd302f96ecaaa41b166a2a48a2e14e788700ca8cbc1b749fa4845d857aa38c2efc6e55bed2b16a6309228729743d7cd95841629a1d2edad2d35d13f1ef77e8cf4f2552dc068edcaa8b5cfee37049a5ea752e243b12c884285177acaae2adee19790b4fff40178d2bcafbb55f92fd892d6f2245a85c609228bceb899cdd67337aafc710fa6fe311deeb15ca495909eba49f50dc0be33854c717fbfc04205b6bda25c7f9e7d42caf3cb3f799fb58d936d812083dcd0328b032e3d7d24c032fa1e267779fd0845ff71a9c1b0c0a04fd5f8895fd6169a4e078576e2900d3040ba5a26d244855db1ca779fbba564e8c5bdba32f858028612d93e36b01ebb672fad9453de5428524bc60fe247908c6394a3eee95e213ee6d523088676eddd0e099975cf23eb6260fb408674c5347218746c0989579f0b1130231113b0262c5893052aec24ca2c70387988142b19a8daf1731746609c126cb8ee81620ac48834e4bae992d2287cbbcab7862d84ba2d573895ae073052a1c00fc27e523469a3196424a040dd53fcf0ae8822aec628ab16c5637247e65668346bfbaa73506dd1e4c8a9b914cc128962c09cc64628d820866079b829b8529be7283511a2d30ed91cd4a829627bcd644e355452411eeb48a8f740be0963c47a06ae575dd50ffc80c38f835209cb695129f9a297e9933dfe86c486aed29ddc73f9be7dd64cd90aa9e5c8bebb19d13a12139034a2344dd26183b8b5766326860a4d3d522d9f1e0f05a7dd0741e5b8a24070b3bcca20bb9426d18b717cac2365d6a9bb9d3b65a52e48617a32533d44cb138895d9852c07b7555092b5907f2503c3df6f37fdfd496ff65fedcf0b5961c2b5ced678281eab113d6c425d89340c578a837a94f4442cff7761e4eb520c7827506408c086664538177b91658a8020b8f2ac063152d6600bee99a603ff7f0e6b5a53c1a21a95e0acf5b9eb11493fa94f30ba3726c44fb8392a3c6f69afa05616a4a05388a652d4fcd7c5f9da745a6d0c96641431eea658d83a7e29fa4781059509213bb216c915111dd41c06cd24fb349002058e262ea76312e16907ee54b1ad73c81064c49f0f698224556e9830e1977e029f47d0ea634c6adc66916816e74a8a6e6d7b3c2298263b006bc15c2fd49b6b564cf222bcbb3bec39bdc9cff693544d03e9d13e99c8616fdcc162e1cc713ec233bc2b80a5c7e41c16ce56e1e8944181dabcfdaad2c4791ea0d2b2fab15b3f49721dc8ed5832b617dc142a0f7bbca0d2fb6e12e89a94e368231d02d68ab9a123ea6e642536b72bfc401f038b64e3ef0397265460fa92ddaa65ffc38e527ad44e1a15a482cf702db71a15790ff99f9fa4ec41315073ca0a1b9ccf4a44eb1c2cb8be7c5014de57cc04a1b53300499e0bdc273ac3a37407d44e763c703773c67721af7561ea1ee1140fce90db18a298a435f24552086a89b0e1e0940371c6de33f9b23796fd6fbc12f8066550b50c26f9e61212e6384f6bf5b106f65d5d116b0c30103f6f2fa3221cc0dbaebfc4163ca8422638c3cc35edd8539846bd2b9dd2347884d2d961766e6f9a84617b85edc7d1226e1f0499cf5b8e885bc62a8c128cdc060d79a4a08a171f695f7079b287cf889ebadf10d13a3d006d021e6884780e8e418a53d133a22f797ef96480947ebf1e9e9db2a43773a15f90d3f7264b5c8be97c238e8c5fc8472e60c65fef809348de591b11ed1415ef1e4ef827386c1c0bcfd05816561dfe3b83c51224fd11bc61ba63066c95987ac0d7c538264269b92c8413206eddb405a34bbb8707806a08aeadf4c8b4a65fd8d4c3f1a19104ecb9d1b2d5a475d1fe116cf5386e79a9ea61a2e8a2124b0149a43d73d83bc5ae5ef7a48cf7b69e96d409514d4be3f30c12614ece2c8d276336bbd99829c52e2efb267f3f0986a934740adf933d7c347c979b3f336f4991e010edeb16881cbe7f485563b32e6d3543fd782e74457150a229294e82f4ba8203a0674d31309c8723a9eee2b27c2d3be586e38b6b16e19f3da8602eceb04e9eb5aff6e12eedf505cbb61adbf0aabe2a83aac1a52944b839e2fe0b9b298e46e1e3c45a8a6e19fbe3cafcb4e483ba1b4ab94ad48f88d8a937e6825eee7b0734d1f12b2444208906a18fa0e956f8364cbbe10f7e546e26224f360c814e59861339b6c697f57cde8cf3b5c9009bbbb3ff6e9df3b133b5444176f372fb6eb53e7d1138fbf855c9572fe5fa570e1d9e3c18c27ca09133c61ec3e55aaf1ab53f6a4548e681cced2612156e976b9a707b977d06a2741b1c71d17dc569cad7c5534223c00e6cf85d3b4b5f176c83c612fca394d08b50eeb885e8d8d800a91e92d0984f5b27edbbd3d025b0435544129473276a2c9881d95b8d4a13468f21def7fa9369313b7687b6fa7ab34bf61e6270da46de5491f98430225030c8f40a2b5e9b339bfad79e6231cdc33d4ac78f025c5ed20c179f532c1ad85a88c8f01655a5ab71b71e245e864e4019b665a3d50327dcc08f1856635b6995b3ac3ec2d4996713565295444cf98c7a8f67037b3b014d73c1baecead5083b96feea074bcdcd0efc27d83e13cf938b1bdc2efbb74ca147b05b344fce3448ff2c21574623b2aac83f83a7f5aa5ca53505ee2181d497fec0d60dcab5c716077e76c5843b92795454a9dd27fa5841eb1370508209edf66ae04c7c1885c366896af54e20aac3ee0ec130d920b37ad13c87cfe4ac3f5ec3f1075834e3b1b37ef727fe15c7ed4d7210ae9a4fa4cd9880f4ab74712e66315e3b6ab75ad54f6ad1013309d7a0727a94ab375bd9b892956ef56574f6154c90b22deeecb5d148e744155537ac1968bc22b4b28ae0880e50e16b82e4afac20ba434656d7f65cea607630140de5b377668c692d300f99f87085b49c4efb9d3ae6cf1c423fc8bb3387a24650d0ff71afe227d2c20aa08ef537a02f136faf81dd610789634111d29ccaa2e5f8f9e9ee1dacccb73c272b136273b67c44bda00e074e6ce7982c3912e84bc0a76c6e80f7e4f421ba83af0f9bd4dd6f3699d6b83ddc40cc4f58ecf174bf3a2fd5aa330375d01a1512772842c42d517aa4eac3ca6d00b31bc94dd7707070c6af5ab45c4e9444a6496dac9505972ca13238f5ef8fa7bc06d7ac80148aa0813153f175844c69aa86477f5c53ebb49fd257ad99758ff6cce52cd66451337831ac0f7606820033c6fbdae60e28129f3eba156940163fc4f13fd58bd61823d032fe100a1b1e47214390c7850cdc5239576e29144fa983b9aca311d53b49d0c87a5edf835ae6674db69468866cd4ab93e26192d012c0bfe88048f58b798455215f2777c2e62e79b5dea2ccd8e71f8d162632d6d778a4d15b7bbe2536628d8beed42a07501b7e12cde1af0ea6d3cf6715b3e865ea0f6164d76f88e9438b23b01043f3dfcee9a2d23c3b7f5a4c6423fa079b079098cb0df3bd38a7ce0c983bd09b2fd2a317b8831c9c7ddd36ab94ecc04fea891dacab2e3eac52ce2a10f899a414ef6158b5362190038df8d07606572b535bdc4b846eea7031055e5ccbb0c42459bee76cc4dedeff47eb1d9e937577837b10049bf64f6a3cbb7aa6cd2cceae5aebc9d3bc4df1e4c6e681bc09ca9e9bd0af3cd4aa752cf1051f57f7d448ee225a4bbc86e971f234fc3f961663f62240a5e2e36eff3a0e179be7a3900509987e7bdbaa93c8b5fc7490094348737c5eca74e89d8664ceee05f878ac947fbd192bb4ec6099472908e264c1e248e9f66d443ab7394b2ddf00a70620b8e3a8f3824cbedcb903d1939cc3cd577e82be6ea44396f35c384be2ed5a4366cac5e308717f033e1387976a2e1e4a6cf762ccc8d8c8f7f75b1d7182e1df284638eb04c37b56936293743c7933789538937ea88b5fcfa34e667150668c1c9e96abdfdd9363539a576edc2566de5e1697da34f176d3ee2db04c73cfaf899cf78e7aafd854a19a598e20759219abc437af7179fdb9880eb41639892c455a2ac22f232567fe8e0e51239bf0033805889ff2b5fc32f50fdd41fdf9bf9469b6308805cde62c6a76e558ef352ad00bc077dab3470cbf530ed191d63199d5f522e7d12af92fdab7695c6f668979d74d79864b3d3c479b464b12905230460bf49692868d806e58b1f1a081980a06e07bea0ddd0d267829e34b97b1d40be5f268746c293df1e3d14b34d1bea2dd888505fc1fa4d316a68e00a89d60a1a66b388189a80b371749d09d84772305fac957b9a9d942fe56c92b7de8ae112bfa6278336c5d51d804b94641c3e00f8b746e5bb25051dbde15d038c0ab3b3c3c2c7ab586f73c05796f0ade0113099bee3008dcac04420c9d4ea03dd05472e9b53dfac3018cdcdc84be1fa7b04b1046a0b453814e31b570a419c3a0de21da7999aca0a649f67090906b6c588f4dbc1e0c47f3ea4ccbf39b2b89752ac8a120c8efaea2c45fb46e5fe3e666bca58348daf36af875b79a4658f1384966f3b068eda96419532b736d8a6e733175c45efdeb3415c4657f7c6d0b401f548947ac790b0cf2be42fdfa47f15cfb5ff77e6f47eaddba6854e955c90233ede9d98be75a60bfe1421847d3ce4fc34ba3dd778521b0e8725d3fd68e42bd61ac2c3424ff1d27775736196e1d94684af62d5d22f79f6e811c5cc1cb12a15cc319e08c7971eb03393e66ca03d5ccbbafd101a66c645cc271a90513aa8656271110dc285d8e5f1b1528c62c9ddc3e4cd27fed24aa8949ec8e0167aebedde265a69e95df8d8f9812ff5eb8cafc0738ba4d6e7a69aa2ae49c725517ba2ce0d8a32307ef0b339ae20ff72ccba9e90da6664d4eed3484ecae14ef09b3d33e2de0eeb6016c219c1af338813ee7125191359d2c1b6328084adb05b3da29e7acd06132e0b5179bd752e741701d99bcb84846b83abad7e524407541ac3c9937006a3db11369b2c8fe08ae8300ce39cece7a2a99dad3bbda7378ac4c6e96467d3e493558de660cf582c8b943e3166f2681fe8f2d035642937333654197658cfc8134d708df2a418a5efe81b226b5da1d70002f22b6444f142354ae3cfb1b027518a3cd131bee153ba7a8b863cf5fa7a7f0d63aeb489affa1ae9967b131cf57b727b03ae23b2e6033a6494250fb926e1c200fc231fb94fa020f89d17375d882ca8da0407e9929ab55582c68e6b10b42d0ade861309d897275e22ab41d12dce0df878ef9d71884d3359663faa03b7cdeb33c302fb81d53ab7445bfdd23f5898e534f2f3606b1e8dd6f8297deaa2211d085bde39a0962bf1b78cf0173e8a5cedd22c5a53645ec1dfc9e7343d40428b8ba3f1d90ea31dc8cde6b6e65ade3bd47ecb0b36baec1194fcad1cad6b9977cf6c89e1ab81cc02cc0b88e5f352f7faa31937549a9db27933a0042c31d8429d6a370a2fe1ad5ae534434b8e4275488507d32ced652a1dcb58c5d58dd02150d758fa82d3219b8bb9841fcc40ab2df039392e6752b3d320a6f6278b849c97519755b30a1bc34507264a086d0bec70b6dd8e81fa9be1fbfb172602d925aa65d92c3e8e54bf612bac0f04d691e06f1b7d02952b748775a3d1fcc2acbacd1123cf483cc124bf7c99e02e4c7feaad19db12d4535ba03d8350083ddfbdfa4c3a5490d3ea74d6761d90bd0e06d2160382fc5b6b2c90c09d50bc664f83195c46707359d70910df13006d4afdaa09b3ffde0fec4edd5837061c4d9c17b6cbea8cdc192d6499bdb148c08b461e6574e884254a2ceedad8cd8a1a3a428f43e1c533ec2524f31609fc914c69f80b7cd87b44281238303e6c14fd144b70a07bfe055bfebf107fde8a22ec6dc67aa44872239fa23a000064a97bd9ef83e354bb3f109dabb62ee6de47a92d129e0111e201c2c6cf6e71107e81361d1d8524dd63a5c6746bf28a584c346a5f1cd27cc7ac5f6e8be867b76aeda6e36aa6e764c935fbe65835c28f6f15137287ea65b398d144a6cd1a9839a99943e47aad27a303c9de25349a5e663c4a4997c1b7bb6d5f443f4d211edcb54bbfa0f11eae793c7b5a95cb6da20d9b88e36cd30357328cf72343b88743dbc9c9af4d8eef7e0b73548e733363160f2170448c7a4d2a7bd3517e7dd7d7c37243ebc3cb0b37bb88917916a1bbaa5746f1393cb43879237de9532cddb9194cf7f1a4a850272fcb0a736d2b4a886901694b5e26e4526b20c86d3531018a110cf578d8720d2fdee9d4b30e5014cf2ff3817565b9cca4d8f86ce2e5b8a56a870e93f0e8b2f587543ea838ed2a2129419ecb32fadaa2a270dbb3a535039948d5b92ada38d2f7751eb992daa7592b467481233ecf3ba92aba94fd155661a2774dc711cc2788250c3865c02c4ac4b159bcaf3e237a05ce1e0e366b227a384ecdb64421561d976e1fdbc64a14453861696a69df2885cf5f249869613437c6a0750914077b0ba7ebf8966aa6c52802ad4331ba850dc52b5cbe695eb17bcf39c70c6050941f23226767ff00329c9869a8440b6a45af1c143b05078b10d24f5f03acebbdea90ccf052d09fc85a64b449b9922f29ee199fd4aa2a971e0f9ff8fdbb388f4c4b0c7c51972eb1a79199775e2bc3a07114cc502ee1dcc5697c1ae09911fc0484b2de155670de64e48a2fba15f5d60ec5a2b9ae876ba32c9881a8570e52ff37c4ba6316ee7928195ce518bed96a44e35f06aa79f16e3b279150fc7872a3e1f8e07db4f19f4ebf3444246f5cadd22860115e25c8b5b5ec15ac9ad0692b78737b1bcb50259b6a261bb7d472ccc44b201a22ed9852b54f4221d61cab260f0bb658b321c5df2173406d79e4afb64f28d5a7b585763a76430bea7759b95ea0eac3c79f06ce14be6ad7f8f84799fb9cce7cee83ddb261a9425d4fc82fcacb308c639ea6bb971bc97c8652a2c4043945b3a667d24b96d611c3b18529cb8095b03529ef5cc192026cf1c8699b2b84a0635163991505e7e8d10fc768e25f0ca5771ce1e1cf5241793ca8a65a73ba737130eeba77b286c9f12495b7488dc2373ed52ec51064aa1daa4e2b906b141251db3709098bb9236e7f352fbfc53482e9d2eaa4864c976419ab1ee887251cc6171bcd0ce5fdcd1967de653d1b35a68a8ca6100a37be5cb6b15a2699240f2254f10d7467cd405f219ef8327bfe48d74d98505a902301e150d7ad7f253dae1e114794fa9807eadda9032009f40744f8cfe34b4fa0dfff86b5188c4650abcf3affdb57a35da635c98f8a4f116c9d59d440cb23f93bba80535ae85c1e64ca31d11a780eb2949d4897245eea3f439ca63961c4ea4fb89b6291a22ef8165af7b71fcd62508a79074c7e1da08a05927e4c131b46e2d9ab21d2d179107638085b0c926b0a50bd9563dd45640a7905234af46559a8eb2c5543f40ef6130b522d09c8b606aca4e6a5d7106d7cb08fd8549db285e9eb4e588dbac66ac8dce5590c7a1e4df7a526b375fa645b2bcb9bc78437ca901fd4eceaa7f936f538ee368c154da2d68433d7bdbc4b7948b3ca0845d989e24b9797b396a107ffe78e26b490a3ae4e2374559835128fbba3a5da28ddbb489a1f048c40f842fb301fa336a61999caac9eee08a589629607283b92f9c27bd55f008ffff2935526d0f11b2662da080b7852f82d9688765c25cb603b0e7775b137ad77c94a76ab1f5144f7a144419d92345c39eb2e337d4f232d2544facd0a9943077e09fc1f8e104c6c57ab7a9d6616837583cfbcc3806a0b43b8f52b82642938de61a9f3cb7d8457ece2b25fecb67242ca1ea6d75fd5badf660b70689b5342058cac35d14a74f3db19f814304efa562a5d0e4c0d315250fd3ff5fc5baeed55f4634dfc297535f20f94ce668c86b3e675a4df460600ec8d770465c3769bc4159d1c9991d5974d86547b834ecd820a4531f98da4d4a1e1a7dbe0bc3f2f3a215c4084ba7e32afd958dbc60c156bf318c9ddcb5b58696144a6f6ec8dbbe45a1bc9fb8fd42231cfdc9d546f5781b0ea7f241f94003699cf738a73b89817c481f692764887cf3ba04a7d610edc2fe257414def0c4772b78efafd85bb56511676ad36625ce765f29cc1a888615172e618d974de4e01063e3fd2a03d6f986fa6d9a8b3409b02d6537cd95258939823506c4896b180bd0c5e3ffe01e9a706b7f4706ff320e5007df8c713c2216a9d137977b1a258e3c87898acc6074d1738dde26429fed733cdc045ad1bdc92113b866f59550718432afa754d6c96e9ce935ffb945c57fbc4b61c7a8a1b1c71c5fbd4bf0feedfb74f6021e1c4d917df76282648e148e53fc489ffe763cb985a140f4b24da9d6499f6c4a17abb1c2e09c1d68ff8a5daaf9ec5ca39aee69d7e43a2c68a5a0bc7b5b03ca263ce28b540ef91caecf297c548180fbef00ee9e7a56e61b74976800f891e604e26a0ec60d74092279cac9338ccc0547d3dd99a82a9e673441741c738f70c182f36c08d3bcb31cf5025cf83cc94f0df2a45bec80ed54a3007d008d430b652431f35965404fd424ce4eb025db0ba6875410276983a9ac054436df6d8831145887c2c463757ed367aa893fc6fe786eb827ae1b463430468bf9fc237f968d77ae5846aa4ec0a2507272717e25fce3db7e64c0243150a69cdaaa5b4b0a1a9dffebf5ab3bd9a4407b1872d5ebc0e222a7a988261f022a34d79dac08e09cf0e2efb65e6ad059bc4fe1719d250828dc647e7d8d448fc500563718ce513ebb1eb4fc15f9f5427f496651be68fde5e4420e01afbf5925250a88eb2962bcab3f80d8de9617e983dafae37b13b4ce3d65b24ca5974b0fc065d96faac6b2949ac7c58361e633b0897e50bd985b640457a3b7ce97e68c4f80b82193e2a18c37a2cab56a2b7977d1e0aea0227aa94673e5701ee35d920d5bd5aa423a0b206a668ae05e16438ecbf903298a6f58c99d0daa6a562c6a3dd699bfb97c70b361e7ca8e04b6fdc13f6b88835d762fa32a0588e5b76407acbc3f8bd245fce59da59812ce4d3d4e2d38e9b35fdb8ca24c0dfd90a0f073519b200fcaa51fb316338c930549422143de9dc9ccb3cf7958f91fc02e7a91c91eb4924930634e4f3b64a81dc563d19e40cf16f5ab318c088f9c056814bcfd40b79a62adb21a6d033add3b6329b2afacc1727e86af0cba6e69bb14004c30ee3a50955299d51eb88107c79adff066c02b71aa1d0a6e9701266b7df531aca60ddc35e580a2c2f8309bd63a57358a88486a1b992b170d55ef9a49c109dc7e52f92658a509a42c852ad6a5ea5f7da9fc6b6dac74079a005ad97ffea693b97a109c613735c85d71f0ac40f119a9af0a67ae9910d8057f1478361db677f99ee1455913b12ba5a3269460236c84906aaf0e3172f73070fe4eeedc058e92abd2395ac12d8b29c3cffbf544b44ce023a0bfba448dc48d350727eba9614183d48ab24f6101410c824b76ec705f9823e250726e8cecce8f0a5994954e6c392cc56deeca366df01871bc25c7cdfb19442e770d58f642bae382c4a8f50d5d85e7a886692a99ed4122e85027e6f683a38ffe490612a5b86a54fd91f0287332e31637a1297bdff1ec5731958e8335f930f35b5656462793a0b6ae944f4f856f28eac278ff1083a82dbab1a21b0164865bea30b96117ff55a26fcd6510139ba656e661bdac4e599efdf9578382621ea0c7bb96762cac0a540332a4570e6a29fe4434961d2f2a21936dea67843c0d5d996f420ea7380df2f8ad4d2b5dfbbaec1e6f906eb29172106bbfc9ca79ddc6d3cdf2bce33526cd4beaa6dea957e58b8cdbddb2f7a0ef85efcb4fc2aeb011088fc3182f2aa34a7f9ade6aacb73ef15228a22bbf7f3059def1d3bc1507b633d64c111bbd2ff854867819882b425e1a6834aa6331377fa86475686fb3d36d34594bb9c3548cdd7f3e4349bf8e251a5d6ed0a6d07c34de845b976917d48977b46fbb6359567145428c368b65cf8a7ca63f5b97c81b5bcb848229addd2b68a6ba3d570c623c0afc34a6a22c60c13faf455f3eb6e6192155b366174e361b15b070e7696019c49f769d9e167b16b836756ae768f069e0ad3437ff812ce52f22e6ac5ced6f6ae9e21b10f4f232e4c0d219f7f1ccbc86ff3d90adc14e844b0ae97436d9ff6f6bced647f38be9971355a72f6fd9ae85038e5e1730711afb1b61872731e527aa3bec91fa46b684761991da1bacf3e06214701bb766f1a2fb676a23b10678f6466a354c4eb6bb95f78b46220dc0755451eecc2d61481ad868bb19f291b72f0bd958dc910ae4a5945d9fbf86d41408f5f826a623d9ed08eb3f724e6fdb6086f80ef68655fa22ca6ccacd7a1cc54293c2811e659c1039234f6bf4f068712d23e8f577c5ecb227c2167a7079f06f51281507a5fc39494df8e55a104a7a8cc7e2233437129d44ccd42665f19afdaf5fa64ff6e6a1dd4cd1e36385c47f52dc18c24a55f5a4b627daffc5ee22e837ceb9befd375846c357a4cb203e58c23454e026e4779efc79ec6863b7b67850f346d816e28e597129c814391723b3e67fcabf9461555fc4bb06598053faa93cd6eb8c6003b8ee081be76693a155181b38ce58166abd79f01405586261b36024cabaf45f27dab686b8c4e65f2f46c4f32bf0db256db7c7e2a43b6b8e86274c036d1a1e4bdbb51a7d7771c338ce269ebd05dc52f1b773c9826524def2dd6ec91b9a28f2059a0f606c7264a4abb1b97eeaa941f1968a487675c572026dfb9c3674d1e529fbe08a376f577c03c16b1fbf21efac8e5242e9249a9014368527296968612faac6af9608cded9af791e0331238701eabf038ba4ad7d0bb5aa8f8baca072035369db91db93f2f8e3073cec66c420fa3aac80a60a9d7c844440e12dee5205d21d5bcea0cce84f60b00b1e5509eeea29c2555df7ba12f13a993a2d8d877aa765d002e5497515b91fd058c7ed49560285469b12c826195e4ff4f05b49265c244db1b365493c155787e7732dbf9b080cad532b5facf378720d439fa7309ce180d6823f41be45bc2db8fa4458100a7918c96318a3367fbbcdd2e953f4fe4eb45eff63d0be6083427d96a4428adb7fc62e0b58bb6fa230fdd8c426a014e2b85bef6c5682a5f3a51ef0543ca2edc4af898a1a3ccdb04b53bd3481d7e5f01fe190a906b1e2cab9d640993a441b1a9d395bdb8affb393bad49a8e6678753da0e28abd8607f654fb5a1349f62f1a1c15d957d1c57ba90b62c348d6f28cbade8a7da2323edd96df3df5f9c15c9c9114b64be37dbc4e796a5cf93e6ccf4943d8425007803695cb1a7ba5b2a7d20a9c9a2b35f4adb83044238800469d2aea3446d51a8473bae0194c8c1c67818b067845bb0e46451d16edabe2d372db4729915ff65cf7eaa71285acdf3ceccfffe293c304eb8804324cd345eee4a17525c57732f3da3aba39d77334dac8d37233921c5a530bacaca1fe7069e7314d88ef707d6d79b10e6bbc56efa5eb78e08ee45855b1317263fcf845306068cce8766ec87118dde53f74a46c83b79375928a4e83be5468f4f288f3b53fcb3509ccb1cba68652e5f04635875932ac19e7747b673f5f8844e76600150e78076768da0e773f2a9aa9034e1015c6371575004942a023305b9d2664a8d34edfd5eb9ccaa07126d7f424155957eead77c7bd008e09f9ef1dc3856c391e4f2ee6aed9692ca73ec824c17543e903bdaef6494fc6513da673c07eab3da98f5bee3c6c6a132be3708da9bb1c1e8d4822734bf02f99c69c3822e33bc62e788a656e58c349914d14ba4a773c6c366efa31bda11fd7722166725dcad721814a5cc4e73ef897364b46137efb6a3f6a414e19c2ecdab988b3d84f786458be7fadc25b18f189396b213201146ce3bbffa100eeb408315d4d0457ce98eec80b2a6a26cee0ad37ec3ac461079960a9712428f032b0d6be7fc46e4e8ae4117651ba413c2642adbb25ea735873dc666bcd7e6706d422792430c034f679e56ff3e5c227cc6aca9663057d3b9f86f88f9eff251e3e48ba0d7c5a745a0fb22898ecc30bec170660438b8991cc25f83d6a54c7126c0f3c4241510d1376183eb9d2c2f06432a9b38f0d528bb3ec46f52154003bd86c7050a8c3dba25f5431802f07bae5f0fae60edb2a5a12d44c042b2b51998a6fb53067be29a2968fee30f45c573abc9d010a7d418e4881b05eed255700b89877d75c7b68865ab99d906e79e41929f9834d80c4facb04e61219f8a564046eec37027c7a0343c792e91af5a4e7d06cd517ff052d5828478b62674e249eb31a6c831c860f3f44d972d0e6d67e6cb8208aecbce5caab589435d95856a64b8d6fd23a69471e5192ff690908bf1b9bc3231b49a91b05e31a8ef8464c55d3dc2841e0521c7f00d59bf4edef81149eb059feb84a9548819ca2d03d795eedf66d07df2fa8189e08ad00d489f9cb41ad118adca9d6466826b13cbbf27655bd44cfd20a081add47289205d60c5f73b819e14004eda16dd1be67a3ce1b467997daf3d358fd863e3d2d616064e76cbe3ee2b77ea7a8f6b3e29f84dd81bf36630e7f2b2c209f286a988de4f31889204577e03ead9bafcacdb39d79851a15ba0a09d660860bcabed8ab8ce6c482f6a54342f15ca5ec03dd04b5f1b338b788d03bdccc19556b4a0fdc72bb6f8223e0df765c817fd428512d5a79e8091f7030aaca8457219cd03f62bcadb17d6512600d5384a433c973b2efc99f52cb7dfd78dda397c28210ae72e9e52fb7b910a877b8f25fb3717702a81b33fac0c9e69d1373eb2f306c985f1dfa601027e4e6477dee6f217db84372a1dc8afa3db4406deddc2baffcd5c18faf97868505dd5e5451a72d1f656e0e80b26b47183112581a3d65a713499cdb8db14348c5b5df4c8e9f602e1cbb2f5b635d641c52f46393beff3a68487e37eec622777291f63be2ead9288efc9ee78028e5784dc7b9c42fea86abdabff703580ff47e3a12fe2d71c2df1c2af08679e51e47b84b18ddf0451cf9dd241f270b0fce25400b6d9351239a90dce125d3d38956f186e05eeb01e9d186145802e4fa6aff5ec2135b0237e30e71ddac6ca6dbb3dbfcfe0b0c4eda3018905afec1dfa444a91543d13e4bf11a303e917b85b5f0fa3a6eaba60de6228e4f77ac9a0166a0ca0ea1e436df3bd22857830abb716382d43e0c80e8dbfeabf7dcf834e84cfcc8fae14029a24315d7c4e797a50317bb8af65d26c05e7401fa592e0de9a69b9684afef1a80379b85b821d9f443a6bd90fe62c05c9380a430d0d84f36d4ff88cdc7d33b16dbb429c878e845d5ef7211fdb80fbe07f47eedeb0425fbb8bc7338ce641ece123cf077d13bace513ea62301d1c571de8cb462e4d0002a1b6f7770ce739027ccb22028638585818be866ec98e19721e855db6dc73062c6b1b26abfd24b711390336682f9d147f379592d391044652da19c2e8091d181c2c7df30ef99f13888ac06409ed35103bb628b8cca264a35fd4e04c4fdfa6da1e0389dd01eca95c45fb7affc1079d418a37a6b5c7982007695641b8a1757ea39d7beb6f0bf050d50ebbed2a20d37801206da8726947690e58abc98f60ab5c4c2b90371546360a5644d313d7b147d664a50531b9887a3b1713ddf8f31dda4e64426547bb5a6cab2cbcc6f5ea21dbc2c7bc14f26716cee71112ecde885a3fefca9b6846a08c5c51f0e3406a19493ee603fbdcf4f3657033dfa6b3e03ae8cbbcfcdc39ae50875bdaf3540b1b9575d6878a0725ded94fbb6b5f4e1f1f371f864f9ee7eb4a9564642b7059bf174ff7f60b00f7993599de3e4bcc8b753911496c2186124d67f12d7ad7da65e61e7a73d22a359cf13122d087d8b6c3a093fc5a6fa222b945ef751236c7c94a2446076178b4410d231fc3d517e2d1a473cbbd97c502b2aa9ea3c33bdca8a5e5a8fecc69ce0a0248aba50ab90237cd651aaea65993b6b30e6737219ba118e79914f705497a731d39b696fde30591b734669b6666d2977050f9be0f40afab9afbcf86c5dd93e035d738760d409e53c209d26e35eaa368f88e5b32e613a866fc29d89d70ccdca4a017bb67536f63f6f71429363ec4db9111675b12b971f4a8a595517223b6fab2193dc4cdcb09534764424904d4f8e0f4d5a5af2736e72e56b5e035486be166ea0021c673e406868842c9a8551e6b6becb3b1245848f5c1de570e57e11ef7e83741a6dc7fb64c2434c1b080b672c853b5e89b77d7cf33ec83d6a44a083f7776055a9a660e77ba6dc68cb8958a2a509d581ddd9f36bc7bd04dd843b262a7a42c446337d485fea2dcc84d3e15ac093cc56b0d2b39f2d3a8fd261064ec40635b4db43088e4652ddb5640d9bb20574ea756b405e25b3a4ebde5eb12b2d336277a51b15ca6ee4ad5df811ae9b38e4612fcf831f9f1ebf732dc7009d59ee62c04be8ac4253f62595fb237a52f1b676f7b27919e7b10b42fad69d6841f710fe7156ed9f39c659836d743b0b210a03a2087741d5a7856b4a126aa441671c802a191a582c3f0539d9c0ed80cf4249d7a824dc6d906c528322a336d7bbd9ab8a9e00e5a46e4f75b709ec1de9c10dc6fdab2b2250a4d7acdfce084e77f014048c2cbbc572e0cf5e29aa85373935afd63bfd40e711921de9f50d3898ba872c34c6b551428174475a252cf044610c488043daf6bb8ddb4afbd3eaae4cd3c3fc2ed800f3a5f0680414dfc76a6cbf1d01a266b0f8c5524ba411ecdeeae8d40a4d207e4d2d8f08a65edfc5ec9281d6a2b4ad1fbd45e7b524eb6eb7e159165c2103d64fba07761cad1bc6efd903b97458af505c8958a6b8fd91eaf99e7065e0363adf7f30d4808dedc6c3b2ae4b181f1f518ba9e550c8344fd3624f0c078b4ddbce989c6b5bd337abf1a6c5ef39ccb0e3091138b433b90fb60af93e09eff16a1fa016c2f1153e7e6ee6b1cf3d25728872e5914f4cf48478928dd1ead6eb57814d2a205a423a5aa985e5a26efbdd9b049e82cb91e8e874c695ec85e051e8ef5ce7a1ad01ed347dc0c364d113e29886ada8acb3951769fa8749103f44321f53335da3d47589f349561a52036f1383b40e529e9b4ac291c068a27fe8afa3e43752bc630c76796aa4c9a5c1d02bf82f436d1f99447a2aec0bb562d4c0f49309153ed100a25e6131e45834527cdcba1f9eb69d7e2385d0247f28228d54ef804656db692811891060b5f23533580eb8836b5ea277651c5c197ee258b4f62e5b3ef3ce93a6530cd5bfae58aa10deb478b443607825eff7aca94254ce52c1905a64e2f1d7a1cb7ebbcd6f1535ab1617baf62d3ca0cb7ca1f11f22393b70f41b926215a4fc4eb47837bd5530cd2b58bb7ae3fa3f2129c91888bec14f191faa94cf7ee03de5f149d220356f6dc01a516a450daf812c8d3b5efdf9d0309d8b13bbba4c8bee317d82d55be3a73666e2661a769b8b76b52885c4ada72ae7d39798bc8c5b03211efe81484aadaca5a526c538d01b897a8e5ecd103b3d2ad4ddb3b9d30f43921b3846fa4c08de93dac10613dab4a77c20f19b9d7043b09d86028f3100e743f86e7366dca94c25674dece00a0825c994a70f5d05da2cf322db82053e89458ededfb6f5f52d148632bddf8e3af7f0bd29c7297da1f680ea89b793a2908fa2232c1af3a3f2f4e27b785a58b6dd98d5b9744321d0a15c9825dc6ddba3b3d3b641e3b68dba1a595aaef75dcbe0a89d5134680d930f1c64eedbd1c2f5e028fd90765e6bedc34be52a05335afe40cb68b5c35fa97869c1283c29804700c1553fd4d8cf46de9d5520647491a2bdd37db3acfb79b98e2dbcd1d7110f699784adfdd27d170406ed48bad165eb3c27e6a23c188842d0cd46d8495f3b01de4f3c4302bb69c46ea8340b1263416d616b3943b7d526bcdd8fb4119ee5e533e2f2bef78051f4f70afdccf6b10f16f9b61aeca4a9c5faa4bfb0d1411c7f9b17bf5f8ff0b42d79cb68472acafcbc8f9b083744190e1982a66799c2028710d3c0d6abcee0155d9ecdc324eeed1c606accd07e90c0034c3a13a2be5fe39f60a7064a326bda67ee5f8ab75a04ddcc7394d42cffcd46d8d1b55bb7470d0da21b85374a1ec6335ff45ebe77f1909bd0de16621e43e5e39d0896708364a331ed2560fddf07ef0ec10e0343bc858100b21bad87834addd484a7317fd7e744ebbf74873f83d8ac95af1d053252aa04300cf245c48693ee0c27c116ccde0dfea4212073f4af0be45ef0167b48a20559ff3d15bd2984a4e1acd93a082022253dae1c8aacc2331d998195991659cafa47a028ea3ed71a232be002464eca9a50b052a3c956419062beb9213e239998c2a24b1e3eb15ea64ecd69d3cba33f5de51ed7ffb161a82534e1c7e741c0761128430e29e654b9320dea16c263a497229d5492e9b9cf061b92d8aa76cb26e87239903e4c37f26a4540093d119c6b94bd1e8dc0e2682cab21018b9582e2fd45dcd0f04bcbabd9b6e1e67f7e46c1569aa5064a111d890c0e1511bca733bbadcb8186763b8d13b6c84a7ca656cced6b43e63e63f287a3842201e2f1abdf6265923afb5eb4849a20c29080480f26054de47ab2869063e33b3f4e78e6b7c05d4574a685103c51c5b8e98cefffda8d378de483d6213b92e3886e06b7de6c6511163c471c07dd629fff0ffd28fabd0aec09feb248bf9309c91bcbdb90c35bad2bb558effc78c1afe10ad24cb47234f868a7b27d2def26cf18d5bcdb450104805e3f9559f9ae0f976c4ed7cc10926c9a32e1b4c3bd7fa0703e6da41e5b46da04ed78688736aa680d0ebd5e4f6a64b0943c126f3b3e21f31a673d593b799de78e8bb1797967e9ec4a95ddb2e8d102006e0613f3fd5383c46253098004078beef77248272e3c54086571898ec5908e010d0d923c70363e7fc0d32b6f1a68af1e40b4a9aa948de20d44285e50a93f20b69d7b1c18bc28a8cc51bec899d495a7b70077a9462e0ea94198e6baec73c744b2b885e9fe930a28d600dc6f727d525b9d7eb7fccf5ce457667c4c13b934ee12b6c939ce0bdd1070d3e2d61cac897cd2367d3f9a60195f6dd94a51482f466ee643d75d034eee4ff484798952761c189917d90ff25a5691cbb98d27bac32007b95c5892dd2e038938c416b2fea753d64568ef9a96180d3e3fa0628557aa06c903bcec651fb685fb846d15032408771be9e57ce2a5d55c419889eac4a958a47c90444ff5ed884ec368eb7b32fc1b1601e35e127f48267a623ee0350c6364e3f5bd7a2c4381bf36b90d89efe36272fa2fa774b9c308a510b7edd1086b5b4fcb087fa977863e71a85b1dba254cbf8ec50df25bcfa5da80afe4d90e918a5fc8acf490a828f26bf9118bf78a885a98f878b7b227c65090f1331ce175e607709ed76d67fb431307bcd3bc20a3c30af1033973e56ec1b2d36077b7e23560217198b98ca28d9c003784847476d6c11348674a56c182ffaeac41d9f5ce9dc5fc4d41338aec558a6f3b33207baef7a5105576827e3255ff5417e827e893606b7ab5dd707285460100e784b0dab6254c39c766f3c0144be29be4dabc605699330272d75b32900c74b31a6e3b0c3f852dda15543358888e8a1cf3e8c535f3ee7fc5efc2e4952b66e49ef9e9e986e24c3a8e9848ff00f8f04590e05bc6a07ad1b90d4225c38a26422830d8199563bc086f30ea73157b458fef375b567cf2a353dbcc318af9f04792deca577adc22740aa9386cacf286ecd841e30e92e81db2974ec7719b4f271182693453e23d840d0df6d02c2cb0edda01b99f5302c15f52a6bad57370ae90b0580b6d1905e60f067fe9f08b9b85e8940d28e5efbc952487732a3c1a5681d01e270b2a0f6179bec16730797f5d85d23af0be5669a215b6ad2ef73d2e91c47dce71d157fc08337b7a595bc227f0ea1a19a4d1b9d0f608b2e19c031b7fe79ba447132efee8034b58f565a9d8a23e3a714a477651c510a2d207637f55b8d9afa8d39430d5d3571c6905d0f2f1e777ca37bb51cb476fc88df8ed25a496ca48283634bd6a17eb999291756e68185de483f78a8f8ab9d9f1d17be2c8b08c8839ccc886a55c5c0762e3520e4d7801279400dcd89989b642b78c2fe7b0d9c4d03f687b5e58b51dc218eecae5c1aa2aab18c952abcc6650b2b328f4ed908ef67db5dbce29ac67bcebb1925ba15ddee617aeda6590490f5bc999715f23eccc32747b447c05ed98a7692ee7c70cba7ac98e10dea471c97d6b6d72003261cd9758c3326c8b69df9b8c4ccd3f9076357a8da0d838bb5c2d80ecb0acef6e0d16e3bd1b2956ace508b78c79dcab653fa75ed4110e7223275d1508f43467b976c5605399da7a403ba16b9ed24ba56afdd23ff0628a45dacb61d758fedb7304fd6f02d3c65f18abf6df9db9df1a08cf7510ddcb1626e10773d5d62a298adc499a7afeb1aa04dee556dca0219477c83c992fb89a4d0d454ce4df7c4b98c6057717900f3a3c65eec51e7b42486885dd9aa365c6a3b1eb1d2c908ae28471ca8821d5ca2d62056dd04c11a9aae9a1523e567fcb37b3642c3a386a8a3090ab42b74e810c5b43e748df2801fb7f1de1ed36d917cf1cca8d999fa50189dd030dd1afee4cda957e198ef3fea77b0d41ecae57a7aa220e2c9a1718556b4c29b16b4f3e04b50887d37e42121e45a51defe08c39f555d933e5e95a366ab4330e58894c360d3d60c3c8163d1785bc25f43eb89e94d0904f98becc58b045d7f719a1299c5e993f4afe410665517d655c5c6a3058674625b95e8e6b17c39bf34c0748bf40ad163375e309e1e6d3b7745cb44311d6ca15585c325390d889beb861abc0d82ca8859a6f3e2a8b7902b09be818402a1b1c97e50c5863f1985c8428d1b472ef7271e0f69ce86535a4d1dc5eaee58f50dd799575c3452928108bae8450d671d632cc8b41b6ee7bb557d0bd31089fd21861f249de8f1b8fd96edb2f8ca50e1c6827bcddde5bf2481bb1737f34ab2bd1ece4e7a343088e7f356f734cdce382472ce6a7c90e0d2b03b9f19a100536548881d70d44c8d3c995d8da15ba1dc38004b7f17c1ad9a18a5fa0db17369b819f8a4acb0aae4f7cfec4ee04d2898f4a1b73e933e149218d28203d97621d2fafc0263206183a4f2ef66a9f617b4fcef37182e6d1a448a9be02a139d58ffeb74e6e52909d7414b7210667480c9617bcd5a2e115f6d88c18ac049e8f41134cfb18f357ce850baa652f67c174b558aa18e97d73d5fc6cdff371c8bdcee262f75d2d4594ca34559b2184c50c41e337ccf4853aabc947e7d12c62f2bc02fb65aee40c088de021d7deb189bb19b4eabb7be1b7d2336f9990a82e51b3e753410f52c65f5e381dc9b093e39844d8c57e36771e74fd7896aed5b9c00adf0a8cb93c4b9a051df0201bf21bd835fcb5ba6f3b8d5760c6373c304325dcb8c8e11e0f40667ece2dd0413b26e3ba58ee0e235307488cb065313d47891278e3579d0fde2b71d22ef1688b68841d8ada1da13c08328cb4a0e00068992fc4c0cc15573fd6c26dd97df734a7cf474028852734cce823add940d49bda8a28f38ecc6f56210fe2d878c84360dcb19b8699c6372cef5ef3d97f7169f5cbed1c88cce9c2958280df11f69faae128c5f41e9e25cd83b9031e64fa4ede6c728de6c6b8c74e945ebcd1cdb684e371b4088844abd5ded6f861f31632e5efb8a4193649c0611cd074b9c5270431eab00b1923278dee3c2be786f7e271478041ba02c4076140f9d05e29e4399f99afa02df0855c76ea0b5a0e935e94518ae4d954922cde9fc9e34a24c041bafe5d903191509fce4b95b99c62440e5af1857b2f223b16177ff275467fcdd7003c0b7dc3a2a3976db93a92b7f7b61cc7fb6c33aa842a969e34875aec6fbd199c32244b36863f43aca84e46a69026c55d0a892527e6982522b42f66e18e2e8613881e1f09798b0ec53ad5bfe678c8f396330eeaa0d79d484f54646bc39e8032e790f056b6bbe06753e02b5108c2eb21a86ab9c5a0dc85ab388749d4817c3ed4c10f01bbb028a4e21bc173e31fe9e95d57002b75c7ecdc22d1f12de3b313c0630ad4465a29bb7582667a315005863eb57c22c2f4d22180686469ffaf0a24d648252a0f51f6d4d32c4a659c0318e0f442d26da8b2f165ebe2102160434a1590c20bd47c92a6c640883429af1084e1067d3b9901d746d95b7d18479fb03a3a16dae38ccaccd0db4e25e817e65e8a8b1a4d22ca03a061eddc95daed265ecfce38905741baf28813d7dd159c32e945a63d8f2d383b708b0e1376ea70de76995bf7f3a05b5f8f2ee56dcec3883a6a641fd53aa1921d3087866df4f64122e10cab0f758ac2016bcacd911291cd9df30d6a2f1134f8cd0a391211c1270b72cd3102ab7e8f733d416c6b2742c5a73877a03f9530b506109e290978e78776d080acaa5fb31bdd599efdb5cc2db06edc1b4fd1e7121bdf7e3aedd21021281310a1d86cb773e6e053687181ecb52501e2f350f217f90d598fbdf7949d6a99e8dc84843e6858ea35966864f221d122ee873e4c3732fbfc7e57ab40824ad4739e6fbab89d0bfd82a8407dc96711b55dbb1407b6ee859b14784d97edb286a83a91c187aefae3c5b3d1f5827ba4087069315bad87788e8c0166487a13559948194763bb550e7a2408779fb3e412807ec9ea99e28e7ddf740c388e433b51a6171bd841170524a9067551c044082d487f4cb73e5895134c0fbfad00c947f4672f102fc8e7c6891baf93b6e1fc07c19bb900909327739b448a39ada0ba05f76abac9280a46554c32deac2c026c4b67761cca97b0958971dd47bfd0d5139a7a6b97e67e212ff0359a9688a04ac13fcde99639beab6767394a3d6947167c6156e487b26961dd0c0dcac24d8fb2c614303f3e882c0921b49b91e931ffd8284ddc53bec3c5b6bc0d5f1ccaec18ed3c23e3f89e2c2965dffd90c3526932bf28d499accfec8e79b15dd6b6970a0fdbc2f8cb0e3f201f35eccf18b6f5cf37850c6f7e52b44bc2dd9356622e5dbdf4d3d75f9b6375c2f2825f54d92ff52d3671bd4ac2dba8491a5b8005395ad9ade84e2974e97957d267e34c8622e8841933d313b9fea0aea835c11dea8d0f634b5f9d84c58384233aef563a8c06b8ade3d7395d8ef6882db16ab275e1a036b84b393358571f7f8306cbd96c6f81c4b7f0c1d2b8468e7075a70b09623625b22e367a7c6ae754563029f16114b46f5ef4c817ebbcfdd6fc1956dffff0d94b159aa6d1493757de217ebe479983c0128b6ced47d870c7c817656c9d8a354477feeb2e4a069b1847ebd8aea9f1ef2fd899a16a6d0bd54a163646da7eaaf725a7e78c83000df41b97d9d9a80424daa924e9afcb814f0271e2140d3da0a1281da425a9ff6c1712188ebdc4c145cefcfc92978bdbfa2a208503e2f994c8b6ab176792b2ad692d88ff6a0f3a09dddf69f2261fb4d4a46eb6b3939e8ee07f97610d540f94ae7ee2ca3a1225d56093465f1b2a04ae707fc38d03923560fac6c50710e9b140f730e25f210d3e8e88fc045a7bf3c75aad7527d401d71e2c8a1416242fff6a27f98eb978dfcf3a98f92e2f23637d4fa4af0f344e191a8c56978a0f2f89fb2f564e6e645946051955355570b9dba377ee4847157c30493260d96d5d9baea6a657318a724bc3ac927cbf4b529a278848643b0c752ed1884607ab0890c2fd84592df2d51ad39dbf75b5ed495112852f10b7029b376570c1d7922c8ba090100da59eedf19be48814f2dc3cda1a45ebe2abd1d718cc77db6861e91d5ff8c66741744bff5930191a919b9cee8488b8c7ddcbda6df3a943b45225ebf1b0fdd167971e873bb2fb9174cc2132c27e1a1f5530712b7de8aae81cfc2f33f2cf3fcc4e5a348c54976d37c714dd5a94177a6ef56e1f3a46891371e8c69396e4b0b27440a779cf1a5c92b87f3f1f75ffac86ecffad8253ecc703b850827ca3e54fb892a90dc78fefc4f2d183738610156e4708d4014ba643818abc90cbadc1faa96ace7ff596ffbd89452910203577dde614b9ce730b8fc955944e825a2c0233e2c716b2aef4e230b66a38f0c2e20ec8d4d0a4944f114d8c3704854259e0789719ebc4aa2fcc7ca09bb41c26e990307cac03ea01b7429b1fff027e057ff4df01800f9b4721bfb7dbbdb00e24a4943141b0ad3787e9151a516c0c010e5e475c772aa5316eae9462476568ca8614860e1aa68c1c48330bcedda5973847005e09ee2630d93d2d3decf599fadf748cec19f02d27740e641c7f7e640eaeab40fa23cdb7199c56d26fbe51151d4cdfa6262cd59f2c7722b96845a9b500af1d4abf726a51cd108e4e9f8ae2070718bb746919d60752d74146318945e721988df9e51356183c28122a46f8dec0d47fe115614f6884fa1f56bfbe311ac29be2584b4a1b2e52c63ceffe230d1a8aaadbd4894306a4e2c3067a77eda0528206483a892d946252050d3ea6dd442f8e98c46e16833a40ef889c45f6a56fa37c8b6bb168df95034e5f3618a8a7f91d83a108bd020f8c10b2d4ae5f82bc9cb3676d855ee1bc63ff6d62dcd090fab341b7950662a55d890ad1625ba63be82f5f6886b92eeb8fc70624048a914e968e81dfac87a18f8317ad95b6765caefb0c9cba451c73094fdddc21d1488f584296f563562c5aa90d923632f1b7e203eae341ef15facb356a152bb07984e9c93067f235c8fbcace3ef97388bf8f64d7785d37fa830b21fc8d3caef7222e8e439850392deaab6c315e97b236db2b17a3589a8a039af2645b100244f1f6d32a34e296d12e7facf44d3e047f651cc68a5dffd7ca23e129b24cb88c16220fc5f4693872aef6a945609fa6f9061077969c216a1caee31ac3d944072deb1f1f4bc9ab341058683118a38ea2b0df90781b593c59773abae2e3e529f27ca307bea6a1ec51b6edd37e11e1c943a9a143f42a6d2ac05b30861caecbf5c3ac51e8b56f110c5d848c93e7f403f728b475c5d7485185c8d42539d853060d218c85c9822d73aff63bc608fc029996368d1b878e7966f644215b90119ec0610202beac48af5a2d4bea5f3a056badf911dbcd70a8eb4cb76570157b351cd033cae9c877d71f8068b6c38fd99977003ea4a07fb0110c7f7b3fc6f218e49081a21494361d3c72ba87126e2402f7f5ecce865effc3bc939efc1f22848020dad24713af5f53247c5ec7e5e3d0218499115409c0cecfdb5536f11a172dc6ee2a30249f279b113833441bcdc4fd509bea2b3193a154ec0cfa5298ecf838f3e06d9e0d57b41a18893273d58e7908b0b97aba00261b0073e50c32090e3f0e7f5f8e749f1bc209efd6fe4b6a53e39cc8883d09f12c9c4cb0b9fe28bc6dc2357b396bd0717812553be23293f50c18748ded243bb7947fd54a3df15e9055d21b495e1664c854986eaf1ba778d52477e24e982fffd10fb64b0e42c2b8ab49c50076d84a329e1eda80cecca29131b74ab386f70e0a1b8db656da6f3b81a0cc8d664e9b5d0575bb9bd126c4b5c81e94820ec14811f1fbb67eaf26d5a5df4753306fddc2995f6677bd198753fdfd654264b6deea43fe212c56bbb8b05c07cbf7d8e60759c6ad6cf0f25a54fb9948899b0a8eb357a9416bb424f2262efe2b2452a4a80a707950b5dbff8cd679e49fca2b26240f60a567a0f0aaf69f5c821033fcc2701dea54f4e736a78987e26b53a61b06c9b443f18bbf0b7c6e1d238e03eacb7222f2837c22cfc8291563142c1a0e837efbffe2d7c48198e5da94bf05e777c5bae970ca2d7393766e6c5beecc11457371460c4d5be04a75c94fdeefb133e5a9ecc0f2253a8311c2961b9e803e3d1cc69b8a02b935b63273bf7d7e088ebb7a7df64e482d433bddb2a897c4a9b0e7c0daba587218bcbf9c7b565f80062a2b76bd9c63422d039a427e277caf09bde3de67a9ce84bb33afa03d172ea64a4fa8bf2ea07a4923ba20da553805457b1d79c0ed35198ed4628800b60a43786cfb28632404ff7436a025a223f3ac1b6fd04d4285e42eaef18f322c1a6ffeb0f7e787ece21ee64a64e6b0a9cb77449c587817b7b11744ad4e842996b9fee7d4282b522d050bc56c4d44ab7d8365397ca7dbf98b719d530c7ebb94c257a40222c9eb9d54845ac822a196edd21b2c6020cf9d597a88bc329f7dd00a0ab530312b4ca8e56cf3d670902738ebfa38772630ddd779a4e6e8787e8a13388421c3ebd0d13635b746f385080b5255246d80615d4fb501bd39a2f9f03036e7a194c4ffed6805b349f955dccd630d3edc2638f8f8af811d3114cf6b1d86fefcc394290f1ea87a4e5eb5ea226a80d7a99e80aaa014b9b1b5c957d3e7cc4232a957aa0b4467a174e1c23ed83585ad3aefe91ff306f2de6db8d95f68675788cabbc8e98ce5b00e37cad390bb5fe788f55bb2ef2082dbfb105e5ea7849f756b6b7963f7d0096557fa14acf8b9f47ca27334ffa5adb44c87d6b59cef49b26a2133436b3a4b84e044ecaf9887639ba71d3ec24613c305d15e309a5fbb8761ba0c8acebbada51f738c829ed8c927b869889ed5ebc535b9b5b70b41c96ac3eeaa9eb6753dbcb34c38ea63c1f43e49d00e3818a847eabb4c42c76044e453be0790d1f04873742e6e7aecd8730277fc5907921f77a6a1e1894e0b193ec4fe62101af6f0c4b3ae64aa0092b9d0a569a8dd90ac2761104b9af322c6f29ffc7bfa679e9ff22bf2f8e99a4f8dfebc9845f4fcc4698be7fb85656268ead56340cbe83e796f078bc0a35505550ec31dbfd73497f1ba3ec502b3a25cdb8c636ad9c44e946aae5d399da74eeb19c3447a7a4c088b42dabbb3c2f310d561e46b3f259c2be06fa6501102003cf0db067c2cf29e54bdd37be61f1516fef13f75d3ded7350c3a51c2a82ec27eda62870c78136e596c732e4e77a67d8d81130277eb71629b458e918ab57fe4cb4e47378aa743751f8db8a9e3df6af18ea50fb1928dc4c11e0be2435820132496bf02311ff83640314fca401ba9e04c52a1ec7cae7151eb57f0de50741d4c4f2de6790775f8a4acf7976e285f85637329bf6805839abb2bba0c832f3f66a8fbc8aa544f2edfe1a7512a09eed878f483db382fbedb280eb5883c4700b3df2a4ab08e1e53fc736b473334320f1861fabe529285674bc07db9e967d424d7a79e4dd2d5935429eb82a38097e6371fafa6a4c5ff5dfa73988956c38efc125fd59acd1f159eaa99e9d6a4934442946e81868e3aaf819647de4a1ce3e9d1d0e31ee8447f9531abf01ce79536dccafcf235649555628c51ebed90e021f55d97d7e52f5c02c89c5f0abf937086397a4f7d5f6eaee586b247e130918ae359427f30e5b74ddad6e7ff16422b70d1005957874c5e7d91e713bec06e565e331d910a393b8126e01deef02a53dcb8b6506e42d5d2d366c1ff752f5a75d2eaf3adf4320f570e89967c713b3bda97c2cada8a58ee77e1c0dd6d58e7973d19280923d9859798447167ebd2295169f89a5d307f466df2455cbcc4ebf744313b222ac3025f2e47c90c56e8dd231944c6080e34abc2b32718599e7a5caeb23130650b67e942d86cf71d994d56ee15017f186dc7d92f8be6ee09a3db61b1860b5c2caa81ef2b47aec5e24b7e52095857aa23c28c465f913609a9dff7d5353d0c572eff200630cdcca73fd1ea442ae042f1b3150a324702bb3a983a3318250f3f3964be0d8c9daf21f951b7598a53ce37fdeab9cf7de0a600bb9c57e9ffb9439dfd1f2390dd19705927da72170461da49fd1f6dc11b2c55f4516b48ce94ffc4a70728f4de33d231fcf7bf5b4db5a678afefa69bf908755239c58c9c31fc4c1ec353e72d262ea0428a23bdab9cf0951e1c3370f9659b607d5f9d017cd9330778e5a817b13aadf431bb36ec50870ba70f492b2c32ec536d577660319d66660c9413a1514d9b313c5865c666d3dacd6e99b65cd04ae3bfc1c4f2ee060628b600ad986395058852ce1fffba70d0d2a33fa6b61012eaeadb4d30d6feeba8a170eb8bf7dcd7a00295d690863c7121caa3ccda0bf28850905adc662f6cf18a997bcff2f5dc29aa63d153f8e284f8e94b52bd812ab5ffb302e830b3648ea6d4d016c3f38817db7d085a32e07a667b0b021e90e231322f5359593aa7ad30be7ccbf8d1b79b8d81e0f3d6d0b18141616998d87c8389809203c5847d7f4a390df2fb01885d0d565ef3b95d4583f60639991ed6d43c7eb20030ee1981d949da8480786d906685172ace9b860d53d78f2783f6da1e5bb6f8889dbe5352ff99f90b23284cdd7180b7eb5f40a554b5d41788fb08424e16281e7e4b42db662e57edc33b32900ca169540b32e139fd2d77bcc4781ac86b5dc0a12ef7f638cf613f78a647dca7a559e8c1a8bd321b8c3186764a9a79ce7a1848c05773274b101ca975c9ef08de1b0e3fe684577256d595190b8f84fe8dc7f62cb579438ef32cb68b2c8a1c09d316c0106cad7d6e152c872514606da7c03241e99280bc140577861d1587537d0e6a6957127bda5a808483e646a31ffb99c71d540cbc3474cef8aae623f91cfb6c76973724ff30a7f640e82526cf76bb063ecf95333dd65275e19581443b87a1a17b8c4069cc067c1a841287096aefea27fa291bc9fc28048e1546e4a62ad57d1fa8f30dbad8e9fafb6324b7399f84d199df5b91c8a1bec4cc0239d35523ed241b6f254b77f303391f775e7040ad332975e7db2f951daa278a2adbeabaa82f704625a0be40f248f0888b236d320121a951ce6880099d5491b5e0ec669f5c9d1d1f23bfe9b6e789c5485ee7d6c7b4188ef405367868f9c2b79a34be7b33f251825f9f35f6c7e7cfe61ae7a8494bb9ede5a9f95187da417bcbb4840ae61effaccc5900d3cef3c9b849b721ab7b03563e5c8b57d9441975a00820f96c853b6a0a1490c2ae9378c392e3839a55e418ad48ef19ce8608421af8104d0bb305210f08c197419fc06b1555d99dc19eaa5e034e1b301692b34413c7e3dfd86e3aa126d2e8f9ef7eba66c0f1e79dddc106c32fd19e5bad55a2d43553b3ca41866e625a0b9cc9256b1d8b1d97e1fe23823393312662a2468be84b2ce9b1ca2562d70ac0c69f05e0eac9b61d9c5f32ceff7f2ce2cb74724d5ff7896fa1d155db19ce9eb093ca7c61face47a446cb9b59fbb67bf52d12edf6b868fea4b4e46b8188003bb1a816818c437da25b681eae271877566be176a6ac31819ab21820600872eaa4736e56fe7b852a0241abebdc10d360d10b38134863fc895b3764aae4968094b64c58d02bd483d1c3a42689e9770dc3e8efccc91d84b6b724d7885be1bce964da07e3c5d70f052167f221a47c4333aa9267ae5d650575d3e9aaec61a678faea004b99e75f03a5c0577d787b5b51fec05552bdc04e3f06cb28086f8b6c4b9f61fbcb6857054bcdb9e5eda1aa7177cedbafb9e398a9fee646e529735aba1cca9ebf7b9602238e5a9f05ab67e3ed53090ef0a14eb6861b727f2c2bb5468811be10b2bae105d1313db0a87a6d7de572b12addc2029e1e3159860466b6f3885fc3d9d70c516f7749e5b020496c581e2d0e15149f583cedaeb09b353f855cff4f438406a8cf051a57f3d136ae89c0994ba8f936f649e3dd32ece05434bd24fcb07d7422b4f0aac39757e8d89a82936e163a7a2b1cd7a2ff9d12bde9c8f7d4195f54a9f2f9ae711774e051154bbb4688445fd855b07e61668bee536ae50d719bea59dcdc1e78ca30873790d033403b7bccb3a1cd3bf27bfb477361a696dc2ae8cebbc045ff3b19aa94c93e3830c7a4ab2a9aa25a2fa3391832cefac3d6d9854691a54480a6e4098adabbb95cb7295cbd542900361e8e9633a8b736edd7fe2f6dccadce8e3f3caa13960975463cbf61281231f49572cbc3d7c42693c1a30e711e8543b80f2ffb55576c6e7f9e11918561abaec9f0d0a49a6a891a4143985a77bdf5b4915b2cd6a83fde53d58022ddc9eac45be2e42a58e9fad0d99d053d174b06c83e3252b97384697bf7f99083aec95a418ac070f9b1fbe138f3329629fe72a09f50a9766205abc18e662fd3ae4d3f68dbdd30a9f559ee7a818beed006a185f7ff6e6c8106335fbf88caab6d329dded61f6c8c60bc0ec747360b84b2996ed65412979cf92ed34c9813298b3352f2e47d22a23bde2f54cd084f07cd44d5fab2162682893ad096ad06315f091e17942ad3d2991b953e60658d4d56542a72610c81a7152d6267a5b1c163da280bdcf1a22047d84a1ebf5ce2e4bbc8917891078db4c66d834b2cddc1cb3ba28e91f22dca76f59c30d2c68ff7b07a619b7a206bd530d21727c7a15f5321a1123d9e7fe0d89cfac6008dae951ff94fe64176902d3f60f26362a84f4ed91c430b2c627f26b3a71ea1b73a619b51defe4075cba6f6c73bca38e73db6ba1b834b3fcab0acec857e65af5be44db03f2eede8e3e60f2dd76beb3201ade355f1a748d2d79f198868618f42d546045619bc32d83cea8331a80d1204d945e7c25b829ffe58916e9ddfc8eda688cf6717655f517c97b2a5fd4599a2eb9bf29122d228e4962377e0510392ef0a384fee7fb178763b92eb8dcf9c32cb3a7d20683d9d7fff9c0756eb6589ea8ecf8cac7bee6527e8b5e76edcd9d5447b5e0e2c3a29e0d045ec358ecb75d40fbe251100e01ae0c5b5dbddb51389dce4c8abcad1e605659e324a012814a76e5548f9ad3bc8ab054ceaee103d161f15be05375ec11348e2e1d4f8cf97ff90161ebbdd6ccc1c2541f2863068af3378b92094b5fee94a1b1d06da45564ee4c12cbef20f13aab07e481eacd9408d106e15254acbe94a1ca7ff0871f73bbf694e25db09a0b20e8add8e34dade1dd9b2614360233c36e44c327f06014e2abec27d15c141933cfd049ed51bb884522e40d4904af1c5482a8c4c838a24fb06446eaac73537c31508c4cf3be6b8f349adcf31a9dbc079e77b51d09f2ba007255e6b6025eaa39a4d0710914ae63dcfddd7be4ead6e6051a50e183d898341a04e9cf824c50a5494672385442101ccdb0700444f054e86d077e6d150772e89ba8c036cd4c72edf74a149c86ddcbfbe3bbd5048ca51ada2a73b73ae86a0dce911e7015b36cf240509997fdabc3664db5b701b7d386b0e8f05a470f89580b32e307fd6fcd0df47821669831effb2c21bead70814631aa04795023bfec540487c4f86cc4033789e5625d791911099b1e79fa65ba0b3956760a2f432877e9f0f7b0f4d66bcdad7c48ce35f20788fb932390ef6ce91c4b8d2780f5c848aa6639c40089f494e4b7155c91f64165565c0273748ee474d35ee2f00e1e50999db4280ff2f750bfdc1dec4638f5e0e30a6b8a97f5fdc828eca42ee82469be3c66bdd8fb7e3201957378b6058c0346fcefa815c98edde251e893ed41468f99cf0e8be46b1d97f10a5f971894321fd95fa7f40e23b63b2704e9edc9a34498c91332d9648a95ebf4867803e8a0b39cda824d0b9198503fa1daa54810b5b571f6ca170eb1d6bd2dd5120737571157d4f2a748ab511b80dc282ca22cf93c07165e8e1f61c3f5f284d3476e033f586300478e1f82f9119794f8927c86ddda8b6278abbd6b718d7220626d300ef62de574232710443ff56f610a3668738ebe4501bdcf2efd532e4eb6c9e81c1a0a2fd39285d5dc62d8d7370578e959f6ce8178cea9ddf27b67d42ac255716b45d1a8ba50c95b8a96c0dbfeea96818018db093c36640f6523d03cf6915fc5ad873e9410e78d8117ddbc735b96212c26447f8902374577f5794259311b445c9108505d961b7e062912fb8aa508d2abf30019d733b871c67407ab0dd96b1a2d80cf3efac4bdc710a344867293756738cb2ddf2aec3549cec06b7f8caf4d9439d978f8f63cd34592a65b783dfd09ad0cfa26c597b40f40268ef65da6c3e1c39ca05d79134061ea41b652733e48aef3a9ddd2d7a3e25c0bdc2d380f2f05aa000a4814ba05a9129e023b6ec60c826d82b962fe871e02ac2fe90a4641ea099ac0a0c9efe5e583eac04faf6e25746173f63051db38cc3e34a5791e84fcb79413fc4c19a342228c5646625789b9a8a64f963d4f0bc91b972d33e67d66b3aad13c4b9a6f0102fb776b4aeb95621dc90ab4404bc7887bea568d08862f440075d460b1235a0fa590f99d9e1f3948b226157eacf423f883ae6e431d4b32974c769187a2c65150c88a1fe031756e1cafdecf61761febd5ae3ec1951ed0ba3c2481a289567e3127905530d17db5582be45da9f3af4f55b25ea6adc419bffd514f88e8e1b734f1cdfd3d5354377c4d5942d839dc53bf4b95035f266e221fa26c79ac399c5cd981356231b7de607496ebf0af6f32796906e37cf481a5c884fee8fcec7b432e9da78e6f0050dd98dbe6171dcd49818f06de9cbc1c495703297f07136f38cfc8feb2536dbf9eeca0ea018f3bb859c58fd503180ee76b971bc6b69aa11e7e8ce0342fc4b27d44ce9282985b57dad1adb400b6da32ca29be2d1ad76a0ae8e97b5dce53f2f26ccdfadefa451764989ad3273de7f384b5df90c3cfca3baa4752a942764f486751cf70e6dc900d817bbe593a867ebeff5242e7d68d92254d6281053d6bc5baf092ca076315bf4ad0a45b1caa66eba818fdf95a346c912dada24027e68baf8d544adc8df5cdbd81f97c191305ec975b4f16fd10dedb1428330f0de7313accf0ce55bf899f784c1ed0bb7b298081e19c94b4046827fdd1a69bd3bd2c80cb083c8cf72831e1f02eb44217b53177a62f866e55cce4a070c57eccb862bede216d8269c4c45cbfead677f3c10125ef5382e3060a5e6721ae37df888c4be7e1c43823e5ab1d2aad374977c4aa864d7de9f7696e9a67ab636acd87be10ad96fb97978def50648f490314e7c85aa30fd58ca0cecea817c7ecd3b644a972583022a12855dddd8a38fc2f822ff297e161b55a627f13d4d5d2ffb93b75d29de2054419b692fad76c1d85d453b26277e380eac6681e9b890053985c9ffd3a732e59e9ec79b903c9e0a7117e85875da7e47a23dacf25df6bffdd56bfc608f253845bbcbf7b69f315f0aadd550687a6e2a9380053fc87eca6ca4143c44af8c6389de06883abb50be18605fbd14295d2362c1273306868924dc120f24be55f1472c4f198b2e31a57ac23fe25252087b6711dcfbee10e3231ea8a65755fe0f3398f65fd6d1105a0528d9133ec788e34933723ff622e9913233aec318c4393f34bef0715f3d51a19f6abf5e322c22b699d549d7f82c05293109b111d5188a9679f6f69196e0d98c8f26ad0f16c9bb2bcd18f5af2eeecbbe10c5b7c76f5662140bbd297e995215330129abed83645a32508759da2b80358aae1a5dec078cf06319639f5ba71c5ebf872160922d1b409c7c1104f16a6b0dfa6f637eca6787d7de29a4983319307897b39058321717ff1eadef7262df8ac79dec6fba3819b0d8ae380a72f94c25522308e842b2027622556ade98ad48cd55c04893ead96c35d38f3265050f7c726be4c20e3fd6350fbc930c3fb9d03e10675b533d15359a2c27db88fc352bbdc7646b5d2a812d8076962f89bf746644b72f51c8d8d46782df9ab41f0fa2562ac604d50b65ac62c009e4f9b50bbd616df629994c728664d184cde6ef7c2e7643c29b6c7d09075b72ac41972fcde624d1c9630111aad7d3e84e6e6a09e59f70a949bcba965ca697cc736a1d2a28f8fe9e9a31dae65699b0ac38397b4e3f67776aee0b83ebd4fe30c0a1684ae97ebec5b47cd58aa021b861472ed222a3af8086c7f3049d9db120b4bb4e122132c53b3cc8b570fbb01c4f4fccc6bbd8c7418a4cdb6dabecdb08fdce84ef406df157ab088eb73a570fbafca7909269901fa3edd6f5a6c386ef7b9eb27bf1ee0fc5ac2377c3c0700cd66df77c3ed3a044e3578d1f2edf0a17c80048b219bdf2696602a4e149143ae106ec9d4e351ca4b0f1e501533022b3b13cf2a1e3f480a953f847b5328d624f305bf51a6e81a1bc95027f9c3849a040bc594177b96277d7945b6ebb74da6323268fa7867df7dd9af851f5d0fa1d453cb91f63dcf66d4bb40b78ebc4136dae5123fe51d729d4dcf74d49594bb2aa3182de102795ddc906cc2f28e9e4400387de4aee72edacf3fe4d67f2254a30274366de5585239b6248712224af4fb2c611d32ebaca06ae34768b6d68a8761fb2abdfe72d0cdffc7cf3fb35ffe1f52cbe5c8c06267cb9580d8ad64344251353f0c604520c60dc3403f646d85e12ce0d0d7cdf27bd47eff13a8640595c4a954c84d5037fea3373480b0ff2bd10ed2310691d669050f843dc532aa03163fbe20ada37968bb277a8150ab88d6a64cec965875a7856a3d217381b281d78d7a74d3ccb6c37c180767af233c3c3bb6a6f6de1c86760af8251c967dcc58a03000c096e14f5f303e5fdea34b40f3dd9efa2b1236034c987f9cb8c20f1f469aadb98eea49b7399250c1a6ebd647ef3121cc11ef370cea3a42ae4c2feee39e07844c805393fb1e4015d5fc8d528acbc3e0d91d7c94cd35d550e01fb97c3ba6c946b2d1c38af16e03aeb64b57df0e7d03eb5fa6f4b69f65929075312f8322c2eee3cbd623b5e2a8a84d498c056c784229835a4dadca9804cd3c834980b450eb117895539c10402a3e4bf2abbce24298356963ed72a19160ebd1492107ad580dc0b12f523d6063838c04a1d1a9194b723c59989cee50eecfd03087ebe37ce5298fed1a053650cbe2d2f558a222877e21c25a9b71a92fa82fc0cdfc8404242a884f7adc414c4ff89895b4bc35267aeff1ec37c0310690678bb74859a6d3c4d58d964405f2b284a76871b032b43fb7614c63540a468ab760daf33cadb7cc4e4ce7001e1e6a56d803145b4aa7285a7bda4b8bd06605dc1b888c205a6e112ca1f31585a285ad57b499be35a48685f0e3ff5266abd3ef09f8c03fe15cbf666cd06f8dc25060c88db810698bbd3aaca8cc11d8972ee962c7a93a59ce816b67429686bb35a4f1798e3c0cdbaf6dd7e1ed60265f8b3cc6abc012939f26ec3e01d35cceaeaf2fe71ccd2ca571907b07fe0522e2f25ed96995df8d9f2ed153ba8b634b37847e6b5a65f3b751feff6f800a53ae17c99c1c792722abcf2a02271a211c6ebf3af7e5c80daa1bc771a27a6d5b2823bd67cc50b32d2317156b4783670bb45b50cc22e326840c0e12c8f75df71fe8a49d11b16cc9d758ef58f80760eb7c8ac8dacf07c9de5f74e86800f3a4ade49e504856a90d5efb979913b3c7536d0e6b671cd6943d3c2f2e80631716322762844dd6d39d0f089028577f01121d8880203df540cf9e2bb3a3b91081bef9bf34ceca9ce51c0f10ac7466bc57eb762dc3c4bd1e6d0d0dfdc9b218b1a8805bb1f82e85b6622389897081699a1cc660a4bca43891cc3391964fa8caa88b2609788271c10b5fee5eea88583e5f7eab6f3969ae5dd2ecd2f1cfe0619876ad2724f612ea391e04478f62e28c1ff4877603cc7f5a3e88fb81d2f286eaa895f55265a6e17ec688601414150932a98dcff3ed15a7605f1b5c82e658620c7e7bff597bc0c97da0d43bc5ef0f69a416081e8731afb42b96beee6b3dd7190bd6a05397c376942643a363cee4cad748aa321595b9eb1238ce1cde368c2b32f672faf6ce4580439e6acc5ab52383e9666a4222d7423d4e31b3b3f6a12a9bd146a8c647d9e3e2eca7ce726fa1b3af67f4d62709d13569d32c462a329a4625bf3bca4bccdd2e7fed1ce134edbda83901a69549d1500ddee15e44f41df219c34f43750e68d07375f22ae24edb15b7947d320300c5c9cea6822b9984a585b411be2dbd9862dc9c3c0bd6c6e5e3342d28a54c7b05c16bffb33138c97003d1772cca4a1c48409bdb04d82c180ea4be0cd2b6b3ad8e242a6d6f9c1bde96130c834b98ea6c9c1e4ef4dc85564698bcf48c62890362c5168f7b634a21e2c82b59beba782c153463af0d87db129d86a8eeede8da992dd0323a73873244487088e5156e6db0bdea24b8b94b8a641f4497c74d2bfa7828cd3b6cf54b618de6c6c55fb9d4c1276af727081e1fb90ae59010c4709199627eed64793c17094eb6c0451a5befe7225c7eac3786bb4611634d9f0bd93e7e4a6a623fb2e345b97907924282b17f975a0f7e46eace7e00e1bb0195774193d4aef9249c45eb9de91748d337ceb05018d3bd8227e23f5978cc9097d296ece784b98e607fa8f19c1ac03ec7ceb7e3434d265f214bde2fd6c7add9c315b8fff7336862bbb4a76f5d8f1d8a3d134bec140664316e03ef697651f32aad15c7eeffdd67ec569ef0749d8c679d860ea163136c4353ca2d742e3354801f1aab922e0eddd7c3d2f645b67b019d1dc8112804b59b630d6b9a240597e411b25952cc4686542c2280ca7a15bed63b6a63e80b44e94bd6bfd9c8e283e1c85918f73afd0993bc750230058d0ca667229de58a59979a6b479d89819db790ff7342e68aa0bf1c695356f650fad6b47b9b8eadc4d1b33b86f9d54e4056b39dc7c40e983731400c9e9271228eb53653d5945ddb95abeb399a5da60aa92376d4ab4e05edc5580a21e9820618eac156f38ac27ae4417381827e6897e5d059d16933ebf98e7065f181f82c2978d461cf16c431799ae8a467d306e449732a7dbea46e697d6e6d0965af257027a7b0ecff9a4ac42eb00e8eb7e2055a422ae944242eac7bc5b7d2f31c539af2f823d96e7937d5011e712949664a4291d78bbe713fa8d4ff5ea9b0eebf1f0447f06fac8ee25ca6389adb6d6153ef9c0d39533730fb55ede6d19f463550c9edef0ddda2460501186f1d5a0a7690bb8417941da1df358dc262091e03bf7cf41198fc61277e7cc7e67fbc4fa429462d50e1921a265ed08c570657e7266608f250dbbcf66584ae9ec9677bef77ec21d6c02d07cce72709838c7ba3074a8f111351facfd017a7a7116d23f7d79f9846c622fc2425a1c358022164f87c45af8b19f62ef01c84b3fd7fee83fa669565d47e7c91ca12c10f94798ce2e398a4af773df2a9d2714673d42a864914c3389749ed0dd9f55eb2385a34be94906dbf1dd22463c0070cab770c0289d987e65c7cdf54a18bfb6c3e43f6085e225890973afb04db0070ac204719f3e045dbf90d52465d79494f004acde2cf3abd51e32669b870ca6bf3fa69d49fb9a6e36563817136f12bfe6f0ed3081eca020b88cecf60c6e09b662088452d2883fbd252d7c7ac7ed84bd48259d26609dcbb4988971427eff08d9c54d6b164295f609af2a357af81fb999b210f073c81407375e083005ab903ce4bed53f5a0961d60282fea6fa1860709638ded13aa2d1f072aa69ba67e8d2bbb6365ae0845132e553ece0d41b0089c59d99b7fe06fbb0720975d0f42d282c947525c378628cdb573eb560f4c281d56c525891c957855c2cff216efaa2a72765010c1b81f4016b168fdd1bc8a1bfa6725ca9c7c4a2516553e520391e1669b1c786cef99086f5404a33a55609273f3c3cde3a55d029efff14e217333f7239a6631d7568ce06ec6d1e00a101c588d50ca01b074a72320069333fd39ffee8beb99be5f7edf0082239390d2a1f586fa081292cd45e00442aaa26d8b58d119280ec95e26b06646cfed7f1df3b7ba2119a33b04f039c347454b04775907920378f2ba9d2c890b64e372ddf52e3071ce4fcfd77f4a806220ae0f2322c8ca80af18f2cc642ea40a169667fee2a684329abd8f67d1fedc4ec6ab305149ea8d045ab3d88b692b34ae506c5d5539c81fdf2952512c5eb6e67f72ebdef54c9d39e26a460643a8f5eeb48d7121b432f912f0d8982062c2d9bac4902d37b66162e20bce605a7f702ac90737b34cb9134d47b6065feed82c0e11d2925abf2792b78ddb70890ba7bd5979bacb2a80a27c93884117dce9a4d5edc410dc331badf43035bf6b0222a1e022a742e3f4a019973a911ee1faf5f74961bc08013ae83a27d410e4834174ae3d02a970b39c5e263d640b1f0498cf13bb1c73e8a50b2f0ac25d9ccf3fd692f82507104a166ae59eeb0e3de86b1c0b90c30627fc7d56c7d4abac33766268fdc916e5c2d2c0b6fa7b9f8951f3980e48432881f2e7cff5a4d949de6d5f8811275cdd255711ceb32c364672af360120aace81da32e9c8bd691537dc21eb400066d210f23a42a51e0dde325eb39ef447eb00dbce815d4b3c62e2c37fbdcb3276147b9085eb7217000e3a3fb19db9f119e603c2e3a08705a0a2996382df66580d0c8e54d3f75b251e94478b2db7e2d7419be762aff5fba996919be2be42eaec55868fc3ec38f7ba434ccdd846f23ac2cd016562cd629d453d53cfe2d4b078a3fb2f9c9a8d9369c497e6d8e9e525e598c54b81f0109b2edc677c9b592bac1d1fc9668086f5ea01b46cc97182e0db03be3c71565a7334f3d7554548aba73d69f655a79b9fda07d0bf17af5bf887a3a480729fe701bb8c359a5c37ecf4de9b996a6bcc70fe85d62456c90b0c538d1d81829db2d33444684bf07e8c6fe666f48c32ad9a4945ab44923fddde0070f821ad9689c7440afba8a41a4ebf3a3ce75882b614ed527fec35e263a9357e50e2cccbf1dfdd8682497720c61c663bd6288dd870d036004d5a5f22642c07abf5e072d08922dcac65b63401d5fd9df5dd482499ea8193df49f526d569d20000bb38e767fdd7927536230b133034f61c34fe8b11c3ffd2bdfba7c504fa6bf05e19a6c2f2b1096581f87f88e00318e605ccaaee256da0356a86d7a9ef18d3ac0ae1fee176f75ea70728c399d12935765ea6482c528f08ddd98237472c302b6edc5313f5ba71842d678d281cc3e3c76dc6f6b67e0674e36f85d6300a895ba0d62381992e95b2899824bdb578eb336cc99575d366d5eac89aac9a44c2f66f29ee4704b7f0aee9401d9e642da6cb24759503271f9f2058353caefdae7d752e95d702c9f389a9e96f6a5b560135463f3278d05eaeedd2aac87326fedd6aa968924558f10c75ac5b9913b1653cf90b4d404892485823e45ca3ded6d853abbe27415024f428dcc14667ceed6c9a6fa6cce9972f31361959fece4e8f0d2bc759d2c862f98a1b396c435b8ba38d0fcd6c8031c5858b76ce9ff5c9706157a6eda7a5259b929980cc3bb7580858d7f47e62932be5fb627db3c60d52903104c359fddeb60ecf26c2965241abb91b02710317eda5e5aa6531293e0be7e91e7a8b19914a23333edada0069c67993c6d669eac7bc389cde564d3ecf877ecaf653fe816abb94eb65a1a29935423d0a95b9dce097f37aee8c34cac782bc592c512c5acaa639bbfbdc1962dcb6d7fd4065a51c55f1d1e65cbf63f5dcba40ffc7589b433d11a595065604ac077c0d933cf6cf1fc709f6591937a642b84f06259ed09f8d6f2723f5107635624e155d01403f43f1abe194ed403fb338b55d33eaa883760d65de7c7ecfd1b5b742201da45bf8b744a7e776bf0eb7e92b9fc58489132d7828858149bbcb6f641983c23dd1c846795fea46d90a0d7ebcb1a4bd0b1dd0ade62ccefd6aec8c4a9ee2640cf09552dc48dcc906dd16d61a371a88827f47872428f6fd35b917e3cb0fe33b4300f30c1c6e7c494139efdc15cfff04267d551c1de9cb089642afb5432782b29cb09f6009cde25da6e577bb744b3b9d3f10b6aa9ea2c7def6d7b40dd36702eb884bfffdaee6472c0434a5f157a88dd0bdc5318d5179278267744b7e10ac8c64d7bdf86f29e83a004f18d39bdc44e42a0e2881bacf524d61cc0c1300ec07cbc9db8bb58bd0c9f0a75dab2a6b88b0b803e70bb47414b495d58c0c72a919bde08e00bd0ce4e4c4ebb6942e356b04f072d0428623188fb4b407edef3df47c6b53c2ce358936fc21d50745149ec45d7b1e1744e91c5cb4d780ba416004b23e8785965271cdef2d504d88858cc10948b16d3acf786ebe0b7a6a3faa69d963d13f67dc313849ce6836ffc998ebd2206bb2a6d2bffbf1199669a8e2a5f270df14b3d450a47c3cd0f636f071d79f05c911d72f353fc28e6ae087d82d2781b4ad4665b30d99cc12d8bbf20f543fad777e016e7da196c4fb22460054c8f47da8ed3da916134c919a7e67e638f755b55b695a376e2f5dfa736c0ab87b955260d8f16096c506d2744454f80f8a6ac96b2596ed6c0a12105e9fd8ba06d31aa4559e010496ae492436777b75acbcf8ca4cadb0abbd78fc07f472d20cfebeee85bb42959edafaa73cd16bb37fab2678c891dd7d46bd5ea08a89b8534524352ed25f816e7c0da1cb8e08f479bd85a0fe5e8ee8adfb48932330b5d2c56b15e87f10e265ed82c21f56247a85ee5e446bb3ebca344408e1cb4ff9b5ec78cf7a8e6ade4385911e6b7b8e00bafe871cf398b47b1a5fc554ccfc9ed304b1c88bdd2e3053f5577c55383ed347dbc6ab0f1e74d487fe2d3314ed0dd7b5ed445aed92adcbe2728edb94d4f273fd08f390247f50a13993893e2c1dcf74d9c5566fb42a57a94223ea0ba56276146346b0d7b451611cb137ba578ac07e9fe6d13d620203fe5c224393185f7d32b9f03c7ecce6af8a7d53f289b19013e48efe38ad41acf9da52a5281e6321cfe92b7d4bff07bd9b4ede2dd8d117f773ba881ef827f0a3fd4e9cb57b6dd56c5b0fdcfbef169f9101cc61c9379cc10fc5e11cbd412e30671c0a2e35a2f0176a625226fa47051066467c8b88cc3c18d1f315e5e4887ab94ce1c5748de2095e7902f7a9fc161e452b69046ed29db2c6667f754f7d8e8df895a469d7d1fc3be639de0ce2c8bbeaa060347d2c3970f601330ba7d59b0bfdfbd5d73431ddde3a9a4d934fd8be336dba0ac1df6a2ac8db44f053bdf388f043040afc7f874615cd41e04fb9f838e174720f05e264a05edfaa36dd79acf015e67fbac4743671bfca9be302fcb585174933ff8b7e6ea666982975330204dc632ddca0aa4beaf2aa862d0597b6a1fd793bfba67dde4e06ae9e0bc078b9680c5855e05d55ee2ffab5735e8bef22bacf9a643d1e1d0cf7f4ed2da7a1f7a29110287838bedae9bd6c47ca908a6a8705ab496856bb82a41c1b2c7c4bd4b6f28cddb739e9fa88b973e96ca2450f1f5821435c5dca079465c325b184cc01748c3b5cd5fd10705bcd3da6cff087dcbd03d2dc959d0ec29b50c1db02273c136ce9c989a5cd72bab250e3522fce514628a78ebcbab7ee938df5dc2bf061240d02135e3e806f5a879c34dd3e90f7c740b42a8a2225a164518dc50838532d36d1872cf298b2ad523d4da8b89895ec84981bc028e0219c7a97667a97d0f061955bd7090e2f7372dfd16eb7db81e9c6173464c23885831d28365669eca614b421fb5012634065ffc89f99d4def322fe232ef3ff61068e531022a13ef4ee4b944f33ed0f9324246a81ecf0fbe602887597540f15715fffd8a164e7e9899a188e07af6af913be70a0ce7ea9873f1560b4241c677abbed8191b826a5bcf96e9e198353f01d718b8e69ddcc52a467d245436c4ca087d8dd99b9515c80168c91eb394779a62fefaa0bd3b92c0249a79e03f1d45e8b485b525dfb59b75bc7fb24ccf4f7f96f59e64431ce083652a3dfb52b3de7de7e524e2e225d0c6783ee8358713991cb73b5bb67a735902439904d3b0abd68dcf70c6ddbba9ca5107c3b5aa7f930440f989f8ba370e723bf859ddde17052b6ea00d76f4f2548920a7d7e8963fbe9ae6891265a1c69a2f6aaf98b2a2fc97e2441535e1a7182fa64c322eb175a6a07a4024e1098e5dd14fbed3b1b1afbfab7327c256749e7e744f667fce8288b15f07f188205111a9933d429b4d2fa51db511d2932c8267cf29167ae8a576efdcf2768aff6c266ceaaf97aaaf38ab7802d2c07330ed33dabc101c7745e4f1976a8a8ccf7108c0a0dd3672d8ef400f38856188b204540a35d8f45975b5f0da6d0634a4301608728e5c14c888e0632a4fce0206cebdedebe14955c0b95e04a85ce90dab93b200552a07d8bcd4e0903e5530a5241f96843a49b6db99b44c5f17ca22c3a11d13ec25ad967654e4ebae0b0e8129d59bee89552d24a0594e771beef279a6c145de18b864c7046cfc63702a97ecca8cbc90347f9e7c3098bb56b747460ca77d9c54a02308bc988e97aaf591d29f4009a8874943682f55fc2a2f34674b19d2f469a189083caa1c3de46e2db5a5f52f8ea00008b64fe636f9db07f62318987935dbedd742de7f91d75d15d554170d991ed772eee4e20a1a81038a1f9677a5f63ffc6a0385ece5ba7f6769136599cff0f365344d24c5c419dfbbce72052071b17c81eecfef6d3c35760334db9265267f2a160876b4c78d0054a3ab735345d47821f5ae0950d66a01b603da12bfbdac436d36aa02dabb6660e47088d78dee67d93e8778d7804742325e02a9ed279416ed5883b520c4f5bfd64150c36ab86edb55ed1e8bbfd032ad8ab38982fd61838c83b5998c1c9a18abe6d4d2a371b7ba0605081249f696cabdf7202f87eba856a6b808b303870ba5137b51fe948ce8a62451af38fa1f310cc6ca03f9f1a3dfc5a7d1cbcf93473433bf3c0764417d65344e71b2988c83ce10b54f753b79dcd9a546f5a6f91cc7e98593bf539fb65f7e53584c980cb6596913d8e85ec3c8c67792a52421732e99fca5ee7c14f4744d9e40d1d7f03d03d4c1adae19668c26ee151af8f50b2e513b1c768dc8edcd452132cfe3cf3b1833066db11953b975082cf8d1e41cab4c6daf01b880fcb8b48d65331165e442787f73ed701538c505d60189d407c766aaedd275a41028a6d826cbb650c0fe8bf7a485451ede32c5302d35b52483911d92c228ad91a1f90baf344e4a83c41f1363850457775d656e973b303e4a71d2e1ec64afad4747aa36c20d2be474cbc2550682f771a5d937b36ada5a2ccf3a802f059143058dfd2c65f1a0067247ccba24bac9b19ef4e037ce674189c2f4a9abb5fe11c13e2276da1ff73ff8845dd4bfc2b3cbc8b4bc4f390e813bbabc9e7ba2a0f138b6050bc5300ec8f370f3ebef78e436fe366bb00f93e328e1a4a952e713a6f5f8bb98d7ddb7e786e3b74d0fcff95325217627a562ed76299e047930dff8025356cc6417b52e12ba5106e28fb3a15ebc671b1a6485905ae69e914491454faf74891cbb4f58b82fb29b56ed1053c5464d4ac7e443f924630e77e9502de845c5ecad20e46f6f888d8e73c1f94d6ae3d46ba2b79b27568477bbed8f3a0ff495939c4ccddf38bae2f25fd45e81b6eaa6fe5c8b042daeb996c99fed1695288f682cc897a5b4ce1beed5fef243d12d4893cb35433a6763da0121bbc117f4dead629fde77dc458af1b2a90ecfea5d9720d0eb7aa1a5e37e91450f068bcc9b3a8f05c4dff6c22e3cb534baa0960f9dcb2f7743abcefad7545bf8c9c7eeeedffe6d1b0291246d33a4be300a90a9ed884770cc6a394a4f8a96b0c7444c3104afaef2299006b29c54589879f3c574a1d7f7b3f2ea4e18b4d86404bb27658e4d244dcbab27b960727c6966492ce01586f7bbfbb85415c27d4dd7e95b6f2ac825a9f7541daa6b31a82461f0ef44a143059bcc332100929dfae96bcf37a7ea185a8195ae96b9df98045e832120dd99fd4d9e306614a83042ba00b5d8dd78c72d18bf9a080408d9ca259f181ce734f2bf58f025c7ea9a326058dc25d76b216abd0166fd715d991043e2af41bf40f3abd1c51d580a9ea1107794de89edc277939af775103c3efb6c5ce2ec79f06e73d16981855110942b9d084c944cee6535d31625bae4e4459cd39ac8528badbdc1d383b5438e16ec7b615b0f663ca604e78beb9342b9339f402396a505e6aeda975db9e00863c29d712bdecb529640697fc2e865e9b350c5a9b5563d29abf5b0dc4931654ff3b49da12b54af4d019a0fabd4b00f26a48640b8a45384de7711f96300848895e628c8d2163e120c72f8341f7eb9449c8dab7f73744a09637e6a6f1d949872eb619bd9562f880d1837744f37a72727a42726246dc8505c9871eeca694fe5f860172f16cb2a2f429b23bb08ec8ee895f96c8c271da6a705b2b8a91472a3bf51354c6560d490776259419a7b0cf52c4e963c85ee4fc74fd8a55d045fd991ddf2b208dd9bf39a591f50e6ec793416e2867f54e8c6c7e89b68c2b61fc4383784ca3ff8589a1bb48d19d06fddc78d6120cbc9ad31f275f62f4cce0737b92f8825f5ed0740482819f3fba7826297908bbd44ff00b64ee95d262d60866319c7cf09c3d5b2926ea9d9f068801c8ee0724dac66604b03ac50b18295775fb8b0b215a51fc05bc152a12ab32d44cda758721c5df53f2aeab1b1e3490aa5673c831f9b63dee3d30aadbc1c6c5949769ce30b6fc27865fa5bb7b80d879b11fd1f489f9da78793c0f3fc05581c89ddfb19f6aed910a2030fd6af02b38253e3ba5080dd83bfbc09c8440ecc3e163b7352073f7428a92facb9dfcd04ba29188ba28e8a608ee322984d897fc7952921b91c872baca0f021cba843b99051745b45c89ca40639d0bb71502306afdbc8646f6ef362b79c54a8f9211aa290ad8b363575fc30ab04aa494f8ab239fba636663b950ccff763bd3b95a3c214ee2344ec895c4bc9a16aebf38c4b950f59b8e501ca36495328cb9eb622218bce9064a35e3ec268fae6dbf17a27f648218fac958b86dc38e169f6315f0b02866966f56b42bfe28c150b4390e5fd59aedc2c150b150086fbcba0b4dbde08ac260d6db65018d68a0aace75d33794eece4b28187bfc1df0bbd2888b5d8a56e01788c8d65d16be1d636e4683231f931eda222d588e944d082bfd3bdba02f928bee461c0f185b251ba12d2eab1fa765b6b05398fa7e047dd76293f0c051ce57a8f7b0c591c14d42b13aa5f54c6f2fa2e388fe0e675cdbcc6a81f6270a8bf9c03a5df8af9cb02281050bbe9192697e791e2ee4ef73917aeb1b03e727dff08a1fc8d74f00e4aa812e18e3586389bb4cd01b3f85bb3b622739bde6627f28bba63a020c223ca9cf1b9aeae19e2e4c04f2b04bf030684c4c1db8faf5c8fe3ee03d1e0c409046608b38912adbc4f95eb6d7f2738959cf0ecbc374672fce47e856050a8e9791f457623ac2c0d9027289ffa5d9f6c8b4e0782bb31bbff2cef5ee3708ccbcb7a22df9128bb2187083882cc6015984eb0411a99d3981817f5dc5c90ba24f0940420c5548d82decf25ec18f223f4c51ce1128a42e644cdc2244d88f89d1a51440d9dbe51f4efe89b2c5a039d3c0617c95882a3c5d27b04c18d044b759db3eb7898d1b974ebab6847e7fc50db3699f1ca41ce9a2ffa202c00c5d1d5180c55f62ba859b1bd6cc00854115199b96a130cba02147c47c0deb43dcc9b9f08b5162bba8642b34980ac63c67b5260b50a0f434e9b26585479ce67ab2184adc7b31c26d665642d3512835fe8d039d87d8f443d02abb76df25715de53a329a7a35cb58d4767c08a574fbe008d17c4ea84c916b767eb47d1cd119c84f630c6d318385c42454d7a6215f9f25cf808f0aa32fbe90fb9c9c846917faff3fdd4e236c284b76c02dd33753dc9017742d8fad13bc28fc726775196ec9ab953febf9bde175c5845128361c953fa17f4cfe678a4446900f4081ab8d74ef3d1f8b1002edbf8cae3db292fcca0637310ed108f280badfe5ec5168738c4f70a59bc6ea9d1e9243ff2b951386fb668e935023e61ad44de4625bdd7aa3b1ac8ddad355c919de8a23bd16fb36053901ff23cb9cf50e5bbf835bb3140275f7d12cd710ae0b2214bad8433c67d7ae76a0f75243423fac6b7e4a1ca4278a2afe4afedd32e9651ef36dd75d2b316a9e1dabe76de625e40d00aa215036b9a41f55273dff6a9484296c42eb492ef7df05a40ba6b7f957dd27a0f4420b4a27c01298e5400aded57c0c20c7e10ecd1924aa9aa1031d02a26521c18919b09bc54f701dd0adb8b5063ea5620ee03ba391084e4dace2d8e0af548c3d30154bbc4468f8012612b571102fd7e01e724496ae8653692e4973850ab0f575ac6a9dda00852d35a51c6381559b3c4fc5f8a2168689bacad8b12b1cbff8cec66a4c198be2747196f52e38034eeaf6c950a20d8a12820c3a044138de432048d6daa90d13717622b21b7f4c482c336da1ade6ae8ac7c8f607ae05759483c2ff0785768df50ee2a100319ef54f29a662eb4525d82f4c4897c7f55333d0a1618b9853ce369ffcf8e4cebaf33b58076b9d19fba12c4b3ea9dcfa6fb38ea7a2702f0ff04dc5f0d452c102916a33d0ec46c47433725a0baac92f6c9fff061b0d2b73ef1b48b8cadfa9bee90f027c01278a58c081eefc0edaa8df9e9011da87f80a5128958a0ec4afa7179ee6749f0368d96ad52c8c6b872cf12c7ddebb76f19e9c824dbcb991bd9c611aab023c70da2ebba0fd0430731f46fa396e31199b2b050a83fcae55c9a0981bc43ab6d89b372ce4d66612166827695516541d1ba593d5e44a8e8c11707fe4046fc15249a6891fe1a4721dbd6292e8dd7de4a59547af7f285f4b977dbdfce26a168882ba29e553140644ab1864cc701b924f4c8cdd926359807698f6d84fb8cf0fb6067e87b0886d93f5272f26bbc113c84680d4e6fd03bad6f13b0ad4977badb2aa9c3898a775d6275d050cdc39075372237bea0094cca3db872360c255544df783a9a1cb0948bd2c336456675538ba1d420e2273b7554ff7f6dbcabf4bbb76348a97b692a65a4ec129639c32cf6338594d4a37d4748802e12e7609240a9c0a7799a5b3355e8eaeb4275a80d5b34369a62540d7b630bbf5fb006fae4a82a0e57434d1052c3c0cbf8ea50d9d25dfc9a44bb8526fe51a5bf44491d982176073a2ea0da09b9e7e0977737c8bdaa48b9ff3aba6a3f32a28a998ea3bc95ba8f7beb558783d43cb50c02321dd8bce4c66f282ef251b69e8e0fb2b21812190c68d3e567b499a35b058028f70f5759b83f7c4039881e3abc43bd5646d474160d7701e194f28a3856e96bf3325cb914fa4886cdb9afdbea1891c1267eb71a7d514544993610f3403d8adf8afff2062a6c00adfdc36ef7210e3683e7560e0b3b2a1781edbfa8b6f749cdb93a9a583f6a0452ba4d17eba65e4966e47e01fb2e491390a94543ad0368a0e5912dc0b44b7ee35ea583f7c105e4f42e928513bff13fb6fe3ce8a5016b00d6afb4b5b1477c881445361d72e88b185962f0c90442452ad1248008583d9751aa73cd85cd840d560676cfacfa1963a3da8242f022a5e15e8277601a61d04915dd2b867312d4139cd9a6b664bf4b1f75d15ab65dd705c98b903054d53385d44e8732341e66563c9379f67a36131b704244729be211cf37c1995da90732d3afaa8ff49aa28541328f683f1844b6f56839d15fbc1c21a9a9ac48c475de22569953f8e4bbfd8f38f50a2c0bcc74a11b738526314f4760fcf141f78d1f90773136c46a61d9bac9d78f7ea4590f213af8fe8d460c90a806e3fb7feda0736ddefb306658ce1ce28ddcb9d3f449ef027bc2944aec93bed507c09778ec8fffbdf8f4bafce465ee06e4c6929a3329c742d562477be345852d2fd9179fc8d816cee9f8e261454ff848e7a24fcb7ef33123e8dd06c1bc1a20bbbac93349f4b7f8221d66e111a549195c8f007d5fd6695e5a92e24582f281c62cb8a79e7511682ef153c91620c41dc3c0dbeb82633450934882bd28170af6c16579cd6da569c5de1b56abdc413bada12db65bba96feae5015dca628d6befb8774dab38e73d60aaaacc949c083954c7d02df84251f92e139e0c42855754f241a9641ddbeec5532b9abecc82823f4a4e32bc3472343f2565230ed8b7f1fc45a6443b394b40878f7ddc8f0ff3a6d822efc4f3858fce25f2250bc3aa1db0a0d77dadaa4bc842042ca29c74c276341dcd0727a77e1ddfe94b3a8868b8fe5544fcf9e518549d691900fc80f0add6ae3a02425394d08f058fa51d6d9dd1536cd90ca1848a7b36534484c9cf4e09ff765ed8f35c51c23d59a3be04f59c5623d7eb16d2d67bf3f837fa35e6e53d314f2c4c968443eca530c2ec84df6fd06022bc993964f48f5db1438b9f05d8cb5b4c339ad5f03c4ffbef2767edbd9af73a99e2e566ac1935c8ce2483e4dda050e5c9f2bf24b7e6eae082963d1739db97fefd1d9847f6ffce50cbc988734aba6141d59874a2de8debaebb7eec295b3f16f4c024184f7edf17e5f491244c076768f52720b94aaba3a2273f6a20d28dd52e32d7b5cafee104fb629b0b6dc7d26e588b2f9e731fe830a43759ffda1f5207b2d094f1ee17480d55fcd096dea642d074d8040b995125914d90aa7d5011229be1e8791ca4e14ffab7a3cc4d03386ea135f5aefbec54e7b1d7042afd1e8d7250ffc1c2176aace9257bc4c49c38bd8cac37dc7bc0d6ab036b30561cf60d1f1f41c5c8076491c27f5f4da76eebae7dab7e4d34b32179ad3517778c8100f615b09f811c180ba327cc2028d46611d708296007eb6d906469835d632d11efa7f206d76167e00528a88f72844ca4be09e69d9eb0627888b785e7b8689e1bb5beddac3603595f4d0aeb8bc1df85dcd22a1723bfb0be289ae6844cbfee48f5ffcbe40de1917de5d9c6062540f6320986a85de58096c763105bc79e86e8f0ab2e510270bbab58ba515f8ef93697fa8697e905ce1cdce78de2e8e6d5b71148c8e12a84c1353d7a56233144f086f8bcc83e8e98ebbae4424be307c8ccc98bc326c258402b15f85b2714235820358449c39c71af26722d952881d4774044c82d5a17dd11ead544ca3f0175ecb75db72d7b8efcb0eaa99ad87f3849a8fb3b1d0a46ce1339a2c4ec5a81984a6f6393b62a8a6a8e180d1b10b0ee443c9fda93cbe4ea4313d2bb3c7a98cfaae357160fe3c54f24982e7c7a567d717d1853f12ea56e18bc69085e03417d8e656bbd2c7ae001376ec19e29c86510758de440f020d4278fdbdcfb87d38c753d0b3a7369df39ba226a27a040656734112d7c35b5c1c38d306c32ce5bf087dbce566f6090ccb985757b65cfeb7c385f2abb8c648cbfacaa670c0671fd27bcc0edea6675039b55b2de609ca69b3101f59294d425ba528c1b4f12d197570e56afd3ee3aa00bcee99fb9a4a03a4efdee4b1f4bb227535f9cceb583641c495d13b119023a7082eaf16da1392af7ff704b73fe84cad843dd87165365c9efc528b9d6140fef0bc8d09c62d893392ea5869529a07f579df91080776fc0fce4f69ecf4bb058b3c35ea16f732f4df090a3cd84ace2f75ae37a6f706efb30306eb2867db987e2ca80ede96cc5a5f6948a38af76f4129200d132138652328d66ff8804813df7225969fafb33a241151e3f0ac554fddfc5720fbb94d5b15d15a5918f6240e9518bc21825bf10ec1e2dd57a793f536b13ec80307c21725a663a175971b2c5e6498e3aec09ba91cf302e9c587a7158afbbca3df05a2d8928ea5fe623f6d907651172a038dc49ea81aa998063662808cbfeeaa9fe2202702535d7aa8f71940d192b1225f4e95203d02fdfa1ff274ab3f4570ce143a2021ff7ed23968951370b0f8101a7404ee3422da8109d067f00e96af2842edb5d652e583480af519180cc654599936a3214b153850471ced8f2df0ddbf5ceb5a5640950ef815c55788673b514544562a670e1cbfba73d2e2ef334c15fa86d227fb96bdc1b6dd9659e0fd0e95366a2db51d841bfa4605a7a05a6779263420d1fd8256685b3c89ffee93c9a8993329a95ef5dd63cea0cdc2fb37db7c1fe48f8dcf21a659fcaf07d086ffb046d74c7c1e3af6d40f4034237c4618c6a2c4b479ea23228294c257ae1cb5b5fbe0ab33be1b61229574ab45f8cdb066a4c5424478f7ca740f48ea0540186ccd3be45fe811f76b34628cfb58c687a9712c7e4685df8c30416a8eaf4463992c58ff828a6687cf0a93bcd80f84211ded8ffadd73ed97b63b523cb4c172c34785b002735f82b9d87aecf7e724f88e17ba225cc441d24e1699a4b1d0d6e82d98b42d99709f97700ca6bcd37e6c9761ccafbf45d94a8fcf000b65e57eca50a5ad48cab06057a4c30bc3458cc441aa0076d9a7fb9d3124569df7b90d2f5577ab00e95ce8c50ee0269b5ec2ad1091f7aab73c9cd848fb895f111dc9272abd2c8bb7a60c15fe94af6483bcb953141be197292feba05d610e6a2335fd230198bc45220c4f58cc241c3118c054890c8be7accb1a35284ccf75bf65b8ffcca7ae4e8541280c831be787443a2c518d3fb5d6bb8a112d63c98b56206c12c8a92e6552c2e92f357744773aab13b4856ca67f355f37a4e10f0eba5b98395aac9b722fb10c03c05281480edca0992c25c7a72a305f46f90b5fff0d7f96639ebd9a2eb0b47c7294d7f39c9ca62e008d2b503cb0e7b6cb8637dbde12b84c9221d212c17bfb28affeb07dd9297df267f3699cb0196c038fbad9481a79088d6196f5e74179640d48163c7d7bb447c36e9b2715a062d1613be411c29eb30fd140bcba0b5b43984f5494288b55ee17261dba682d9eb9ab8a10bdcd91d2ab1f3719a21602e6a2d6d95073a349315d3e0ed9d7cd4c61c6304aa610f8f4ace916e371e1fda11bf8350fbc25cce16bf80915be7bb7c38f985d4208bb0e385e157e6acdfdef35fc5b86c840d5952746f2fdfaab57243913110a543ecdcb6ef9d64cb4602447417dad9c7cafe6944252241cc8d92e532bad5432da668a816626066bddded09652285a406d3adb7531c3c1233bdf0598d69359905d0d6488abde2dcbe196a37018703e12fd26cf62f6452d92d1e0f5d144fef339929f46416f856afef0fd2f590fff176c684bfb66745e080067827dc5a1be0a5bf408fcd9c1f4a9134c5ed1d71a4c3f9b2e20791f59b7496295612566b9fd3e4c8be6614c6d0bb565b0913a479efe64a018db8ed64617bb4bfad345553d9c69661ae2017f05d4d3e296994eec4c529cb5f182d2d8808b4eefe8ed480007f8c0c038d1c6a0abdbc04eca15302096728738e0646e672eb04c5736b2ada4b46d8a89ac9bcf7959163e2ddf0174df191a478461303f313b8adf12da7c717f6ae921bbb07db80bd5e06c4b5709ce79dc95dc8e4872994b16892712c22804ff4858dadeee192250f7962bf34e6355f334a4e29fca57037e1cf2a0ee71c1fe26aa5a97287569142dba0f23e5477e787ecd176c8c908a92f11a67673b0990c4125e0ed7fc367dfa5ae48139c5ded546b7b80a647fc20c6dada6d2b5225369145ebc50b534aabc718ee8394b9618b0d1bb190adaa4d75bc71a928807153221691d30bcd0bb867e11b90c7a5b60f635bee870744b986c3eba270d908b6fcb90b01ec16d6b909c7dfa715a438d5091aef3df3d98e6a4bfecabad0c0e39afa6bfef960d71d17601f4e293450f108782e0ca79d95eef7ea409e4afa0f450a74fc4b9567dfabb2dbefe2bc5d2f9c497b149a5f1dacc81995aec4f060c45dd98c7027062fedb6c2dea11d1faf33c325663f5712f2e6d638588b85845d5f5c7a3328df98fed5fae6aa66bd60200d2f904a734f190c4b99122b3e0b056e53a39876b01eb27eddde81624b54ddbc4839afc1b1b8b225b0e80b5a6affefb9035b79a0c53bac3f20a323b8b067fc22a7fbca11229b66b269fb6e5f3d75293890396a3a750bc582e745de7d1e30ac967dc5be735be24e9b17ef07df7d154e08b17e157d5ffa79214abf6dbb2a5507af122b32887e163040055661acbc297a3369f95bee4986060b0ed6fba62e303c9abe691c302f009d2316109121b9eeb81f94df69ec95b82c378cf5c5a50ba4bbc6fc881a67338b474e7ed9c9cd58d72d7051d82fc2a818f66dd0f9b09c37c4e1a8fe5623b3652826ed4f9b0cf6abac3ea9bd3718ffd78721cf560075ee62d6cc46962c3dd67130d21e44ca15f68867a48245b4d71bb1c99fd335de3c752ae21cf5d0e56c59b3de038ade520c68e55b38c01241d5bf7f859e2f15edab8e091af2877a40c1ad7083acc035f759221b9a6d7b4eaf27e9256bb711e8ed76993c87fba0f47ce0227003b086913bde985e9dc0e91c21023cfb5b54a15874bc5a616361aa5009b73dddc58c0faec2ea88e6669674adfe7bbb9cb1de4bf259a33c69fb12c6407b96d48f7bdcf3f93d2903e4da3ff80a5621014180a5aeaefcd7f0d2e5ced629dc1deeca3f3d98ecbe4f29691f638a912dc8fbd518fce9a18cd3c93f7baef627fe5f417bc64060793bd540ebb08a753bcd56dc41385c6b1b3913b199e73ea5e6964c6ec18a8c27fec0859548f4a76b94d3ed6436065689e2fffa4ce14ac2b7d8d4bcca5eed29914e8a5f6cff8de5baedbd7cef34175be56e850d4220b71e0d99b424a54bb8cf9eb1c8de5d0b769418fc8032d4eb797120dcdc07d92d3165f72c496d5f9de51ff2d596b3159e1603eebe34f3dd05f74e41d857a423ad6cd171c5563bbed57354e0e97a198f1007b3ff6bdbf0a03ce6c875142e8febe563adffe8269dffc2f550d3371a0686fa2471e17fd043faab37d865c8f57a4f98f5547669128e7f5975da7539dd90129b95a5552314357f0465e7349fe27119e18444e439332f736289549f552548f42ea234fa32474feb109678c8a062a3cde9f7b315ba63fdd026401c54f0a5f9501ff6f8c08d8781157015cfaebf1dcdab30db294b23b4aa5a0d99a2ff97c3812378c57b85e5e3be6dea0d5beda8f3158d2560f655d567ebd883ffb3f73a0140eb901166a23d342d8cf4f17ef7eb45af5de5a697808f6defd9c49368a85736887c395242fe011032ff0a765c6d80f3e04783f0620454ecf4d7e5468dd558ee0ec30c64ade1bcb331fe5b47d09ab72c73eccdadeb1839d348d633b22306ec4da70e5947babbba6d11c76ee46d3379355318b6fc9d54c2f7d51d93d257dcf46e4963500ea9bcd21d4bc9f45a013619058c50d169e6f036453a799ced92b1dd1d1051afe4c86e52025f5aa547acba2e341d56943b6cf90ab94447e071fa59a2ddc7fcdf8d76c28437bed6382ef087d7d2899924405ce8a5bb9830e1a7e7c46bd30f5eeab3951e2fcf74b877ced326ee74bc8aa1ff8224de44652b5400666ddfa3c816b0811f778e167461872ae2cf05b245c5916b6b8e921b9586aea34dcd0a20d6b65002d45a2485ae40c005c9ff7097a80bb61eb93c772502f6dbccc3d44084675d36a7c70f8bb561338abd26c19c5f26020eb3fec3cd71dae9779bb6b7f3ad878d969466330330facd99ae571bcc43386eb7a73e1bf35ef61ce94df682eeead473e5b9e70d622d4548100d20bb29245f11494c256507575bf0b1442dc1b64d346950d1babecdfdad02053c2b5bd2e27ddd3a78d2fd18d5d60e046d0adf3f30ad067b669b74768fe8b5b94ad262bf50d0437b474d51e0704fcfbdc99e295e8de75894cea44347bed14daa1f0621448355d024a869ec80d542819e55f699817cd82cac4405a715d2aa9b08c70cfd3fae30e36f92ce65136c11b20d68b91f8d0eaa0f4ed578160b4b105e86ae031f847504b0c99e2e20d503f33076a942bd3a26411edf3d541656b4b3d5bec6a417f0b3598c97f87bd524f9e80646cd388a9510450cac088647b962194bbaf9dbe9d3bc05d6f9eb921b04207ee7308a5741ffdcce10ddd3adb75a695c95a8605e7beff41d46880116718291d1a05d3564f98fed203dfcd6194ec977e927ee7ed05baa2189c961b05ac634871edc88a991575a7d2fc4214b9920293f88e0275e47b0178d50d0ee0335ad39e133b10db9d464aee9fe21e35239ad253dee9aea56e0e917fd4eb571dcd5e921ee59dfa08b8eebd6e12ec7ccbe246f5371df62cad826fc42ef765302419bad3e67b0b7dcea489be79b7ae63338b1cd2ac46f63f5267ceb513c9ed0481e6d35ca29f37c0b20c8c370400ce0c5758bb6f4571c899c661b50e9993a7d9e615d11ecdfc2d192b767b7b11fa42eed0421422efc177fad16af6a477deb6cd5d52cd9b04728693f97d3cf4129a6d6153232ab6bbe04cea9700d3e3e0cf7150bdb073688781f0d1ce483fefab21385fc848598a882660d448acfd43924f999aa6d8ba0683bd7fa5a7daa5be6f905911d9d42b032122021a35aac68b2e36713a65edae6c3e97125722d2d409f021a793c7578fab16039c06a6a61a52c2d16ae5e6a2bd8ef7aecef9456c58102efa88ea04cbccc1df47429073ecb97b4f9a0e814f58e4f5fa7253676c1a38a3c81e542678f4d96517376696ef9ea0c977f1870526a5fd320d670b8ff250ea8edfd32fc1e65e91fe9bd3b95d67fa30e216ff4ff3191c1532479320234e966c025d32c88e12ff42b5d7934adb05b8b2552450589d4bd102fb8aef12f1ec1b1903fe3e4e20d63720832e3b738adf620a51f3a82309485e197ddfe4e8a417f0f3279b1e6b49bf9424f0d0a7c7130cd3a9bfd9da7c2bdf68af59365bd19a8b274f282cf44ea803515f767cf223c0939b40d41c1df784f67d23ad228da87b09e872a3f9d029315d8e6cf6f94190562510b5176441fb27e14432c156b06ddc69447f99937f07b81292e84778644dc9069ff814081e2c4e782b4bd078abe5196db8c74b6133d3ea7d09ebbfcf488dafa7f6ba26f3d4f46fd7b652111fbe7905eb120812920d2a43580a6ba9bee05d053103f9fce00287b5179643251147050f68c76b441101ce32552b6b64a14c3efad6f88cd88dbc69d76fd45da01faf426f1e6c42155ae550c5d830e9f41a29bb8279c7927212c09906ca40accf46f2fceff460d288934b44bed739fca085f6c3476ab6a33c3000282b76c76186021a4414d9f95f143e3a25dcc52e5858eb49085528b5cb8ade23fe35f403994cde9ccd3211c75fce5a7928c9b502e14b9f128e4724f4bb73b3175555c759600e7331714dff9e6e6a13c8893d763cf6e62be9a4ac1fa0fbc44ac4b247ace3d1b05f3712ce8a8a54865e740156865023c4dfe3b5223b0a269162703d6bc41c188dcaba605894c0c572ca8c52bfec27fa9f2f73ea298e00eaffe1b466c571c52425a7fe17200fce8ddd71cff52e7f86f936fd94f715fc21f435e0824184dd4d33eb3ab3f905464a8a4ac34ab37f78349118d23aa20255df5a805c5f0cd7817be00537edf52e821e1cb347faedd4b382b481a884ba192eea69380727a507a6eda4dea40068086f790d8a639de131d52d971a730700ebce64693f6307677a41b822c96b8a494f98148b9efcd2a73c260ba2f7c84d12ac8a5d4a00e559390f08a07b865a01b244071c85e3fb7e0bf609031f0000553dd21551b16465ffed6ea73e298858d4171162a3514b54aa2abda1267384f1c05b6f4d3b444048c3111ec86d3196167c5a487fdcee407a678a69daefdb4ef166351cead8c1f36e3b67e44fff1200c24636560eb5e066ad4b549842d4eb4a88347da5d4dd29f5f051f3d2e387e23c0adaf4c3891401c33d3782ed685f41cfd6b735afbc3245aaf417fe1b717e899533bbad333d7bb192c354ba6d49412a6ccf3453ce826a87e45ed24767263dd0909d2efaa6f21f9805f3cda768e20af8fcbf39fb7adf7fd0f8e209f8f3648cfc7ae0a8339042ac344cb36c70fb184ada6edf305580b9cdbdba4294d6d582329b9c1c8099b2fe0b5d1af3e88611a20a67466e52acfd0f03cd9b7eaf9b1320a26f63f8a059475706b732480a36de4468a520d8cd69c3603948e1a96f110bdd2bcf8f8c63569e277a77697ef3ff45928a0575147b84b98a44c821eaf9fa7f8d6c3ee1292da5fbf717b4d42fb064bfd51e96569ccaf7efc4de078b72d66121e2ee924ccda2a19bab7d1e3d73ac48427923faf5e3580b48cd879ebc47332a90ea9e23d75f1068a3e4d2fa7f80a5917926933d0f04ec5e8fbaf1dd19d7b3d5f71099c39a24fc9fdbfa9fb91aa2cc94180c64a93b6e4eca4826f9ddd26791472b9df8b3b9494fb7ce67836817e2584a4373967b5824b44e71ce5c9bc79696c3d1752ccab18aef7774b06cdad8c4582e06d20ad1e9c01aed0ea41bc081f18a2420fbbb6c1de817e1b36efff752a79a1b500d64b1b6d893c14f21146f55c04a7806b28860b1da49122fa42c8ca96eee18ceaeb6921d549cd2c65ec740185a2738042085a044c4359be4c251044d06a65af0d3534e2779f2a34cf0a96d2eb05a4181d35542022bcdea2b3e6b620dfcf12b44503153c538a2cc9f6ba69349515bc5d8e9abd0b599c132243af479177ffccbfb75282141b93944dc30030cc103b02db44fcf711ad791366d7ee2165991252c5c9e75cc5455f34896fdc3541b30551abb8dd582f1be6d71a15e4a84fa2a0f971ffba7376f8cf665a992e4c40fa3d9ef58209ab2c7de1a1ed6df21905cf78c884c1bcd87c927265363f5feb69ad076e054154fc671d65bafa819100c7a286563dc683956b2068e7e230d3e816ea9010255b7920c55041341efdbb547132a1ecd0b3d53c365277a0a9a2f84a9f14cbcf5b89e0b003daba510806cc9e21a3aec5ace5406dcf0c5822ed50e72dd53126d68e5f3c7d5d3cceb5b4f8c232188ce42cb85aa7d3fa28b18d249502693df3807eac9ad6dfd0e5d0fa7eeef6c53e8cfde467da09622061cc343a859f043e21b6b4307f3b4685692a9840d2e4f216d36f9672094e0c82c109646f2d232086a59703bdf3d87778df0ce04dc898a25719720ac6a28bab5b51fa0297c3f2a171780e9a6a85d583fb513bdc41f078374167f7722970ca5bffeced89f60cec516be31db8ad6697fe30cb503e7ad96d9db92f13a04a5a2dc12951727cd8f347e90eb857d1969ff628cbf7d666abb41f6aa3985a2b65e2a1f99d1ee097aea4ac121e2cffb388ffd028dce96d730d7dd32efebc3611f330c853b36c6a727a4236e7f2ed7b77ad759bc3f0a8097d0d086fb04e9fa7383abc9ceadf015dc86a3181aee6ec752d031099c341cba0eb964e8eff9022276f6f0961c1c6980e55c2f70ce6756063573b3cc22d2b8e6c1a305ce4794c9804cadeae8bb39dea58bbd3070a9e577e7366b9fdb9e77562d561aa32f49e3669ad438528bdf21311e48e40309bef1340b2567653579a98f2e6cd1e9c1bd6881da47d796329e18c31b2093919642b9dff982762aad2e97bcf4b25d51101e7392473012ea4f93cc9d264f911603a02925dd074d78aed3cc4324d8fe067fd0ede110e2f34ffd01d7c14d0d2d6e7bfda0525e9f67fb45cd5237038ea7c0caf96d9c20a48b827821bbaf1ec748d49b8902bb64fa41cf28cf46be5ec2754e91f25dcdd45ca6f30c003f0441ff617389e88ecf8b608fd0811d19c639eb1142a05865e4aa976607bd40025a099c24f649753a3dce88122024c3631440edccfac50feea34b310d799e86fb660cf599f387ed7ab1e1c5008d0ca01171ea4a1f9f3f6fbfaceeedc950fe7aed66ce2437d187d57a746b6b5b09a9437b3383c6436b18433dca52682868c8f7673e6f47d65cf27d9a18e3bf7fc6b5ee4d475db564b2e5c91ee7b66b03470f49e4b2d8ab696871f6072f226183a1b5ecc871dcf05d2325d1ad8f433d57f35ce4a413d68e1c877010405b7232f761b5e2e009932498f600ee7b251bd61a919ca9c58a61cdeca9a1199df293bc77202d9b7a43fa6cb73b3eb4511369c1a4ef616b7c2a68e454fbc01dae3f595dc10cc53f53078d07f2015b74f88f175a960fda0d5e2c1eb5545e7d146280e598e10a3f59586a716ca4a16b96d9b6fca711f69414142d5338ed5f3719b3f812dc18c362f35d4cca99d0cc664da7866abd5f2f2f0ab12cb22607b2c18f1a293653bf1de20449b83e9a073d3270f08690bf3259fdb9508fcb7a1acd43f91bd06f16dedd01860e6cad3aa4169f5145a31f2aedaaf28fc1d98a5807d61bea46163bb5cdc074f71a1b1141676305ed9d191916419a746f4dd70469ffb1be4fec324c7eff9c94fd2799ea299a1c31f2055569a7d0b8fc20d09a7ad1890582f1cf56c643bc2d9f6157ecd89dd7f60716654cc1968fd0fb4229329acf55166f0e39396468dfc321f673e572c3271c76ee246a006390e23a3cfdbb52490d005b800730c4c33f17de4befea8f3b14c3428c8a1012986a6f591d745443e29866f5de7b8d9ca6bd6226f832a1c74558122b2851bb030378f2d23808cec406cf48e9e180f97a6d8e39cb9c66685e7e2ca973bdcf8256bef284ffd5cd1365de721e524d81c27888aede75165e1704650003d618723ed3db30a3d95f77c121a3270a5d80f638fcfebe02743c72464cf46c16e15def3872cae3fab365e05815ace926954d3504d9aa1e40caf91419f68031e051f85ba5e368100c20e4d3a925d51fec469342aff74eafcbfc593e0d2e48882aefebd342bbbe6da28498c24e35d9f40d12449942890b1485c5427829167b7c78626fb268ef57c8cb8311e374f060db70a83741109dea16c279ea82ba185a756140e006b0c77a0fd967ed7647cacc76ee9811ef4b929fb23c9c087d3dbec8afca9879e7c7e898a5e0596deb8eca0b50c928cc6d4c502d15f920289b0588d9ca62b7b0e2390a0fd86b809c254c3a720b09a79aad17fa2b3f62fe1464f05dfc527b47ead8af13c6fe4ea6d2c31f609d76d7319dbdd9cfcbfce4115f79aa247abe5951b585e897650f88f254b5630d1d6ad7729c43254e120e0051ca236b5bbc4511450aca05f4eb33fb72e14fbf4b8951dd17e2b850aa4b6d45371f3fed810f20385f45d3992ea265d31afa95d7b0332968213edde9d2b27d664dfe24de73a93e3e46601bca7e2c01c1d36849ff1bb254093defd890241084c164fc18fa7c0ebec347e12fe95bd5176c4bdc45d8f688aeee1180f7f23e675adf95ae148870e86b2d40f15bd8127e434759a694f533cfdab8e2ee7df3505dedfbface597a67b21a4d578d4d2f5cae8e01f8f211d2cb3d1bd5be396dc52d244029a365ae39858ff7c884dbbabc686588752ede6f2870479b74088aad265c7c11ce45a89e6b9f68b02f0a512fde85812293cfb87e8cff49998b4ec6afa908000e1fc2041c71ec13c2dd76ac20846942ddea6675908c29662a8fafb20b38bb2f9cf728b33df6e09bd8542bfdc13797526f02f39a6a6ee62787f666c3af4c75795f860892fc20bca0d5594d73f997d31a36926a0893c6dda69dfe73e61faecc73de02713403a0c22f9ad6d3271074264fee5cb8abb39dda83b73cc3989f528ebca712d929723bb1331756c0c4f4cada222172b384a208c32699a2218353abd18078c13d8a2215bae502f7d87cfc54042b657aab2a19f1724989aab55c8bba94169828bd964be5ff499187878d6abe5a931c8b51afb8c0837ddacc11222468b38a4a700285edc4395d306703ac4b41ae5308a2436dad33fb761fadd801e5d989601a7b21adec4a80bbc130535bdf565268e6721db8c4117307c586d8f01204c48e1d9e45f49421fa409169e7886ba6066fa86ed7220cbd71bf84899df423689a5843cbfff35b2a8d2ed4aa530220ce59136440b2e9c7cc5b353cbd8d75197ea469322c1cd770aa46dc067ca260b75ac03abdecf9a44cf33404e6ed91531d0e4b637075b1066c1b7d744ce1b7d894ab8391d5057062aa9c52e9d5873536df95c0e5f274c387560de5d688389a3e2b9a84b41edc564f5644b41da3f90e1a63052f302c82f9e550a9bf2178d1c138c03ca3bd50d477f10b944f2e60c4b7ee7644ea10ee6ed6259d706f9584d0599ba392e405625c9382f584fa19e1e08684a918d3e667a8bc4aa3d6d96e15dd30290c9f8a8a9dd9e41a131a8f0e5167344b9d5e57045ca47ec19fa92e3d0656413ed56c7b81d2111100e7b21db2515faaa5a243678c2237276f2dbf8863d886253bec0b401eb648091098ac2235dcc33c04dae55cfd63c057dc255636f6d3918f4f439c01839969ed58200cd6123d8058f03721b7ab12874790d2caf4947b4e6394a9cc5dc48b4d15fd71cf7ed8c4feaf1dc43e3941a74f49f7450b54380965011dff1346b6d3ac84a8a335fa634b12ff1283e017e6edddefdb0488e4503dd1d88b37b61e06eacc3bcb632e7f603b074962adef98555cdc0d451efa1ca4cb12e8465b9d6ab876ec7dc854b29b29113697d10a8a9e3711c1ae3fa384447c936b9e25a0f691e26b3967d308c813e3452bead0f03a2d409c0d06dbc69b32e798b966b946da4072933f2241afc03dc924ce82152d1c85260133295b8fa7970fb95cd60ba65da90f9552da7b3a8b02b5f0e10c7ab62c6c9331cc7a2092e45e906ee3a0a7007bbed8922458973581742e85b664cef10715b51c72ef6b962334b30ed328b2bea02c8b9de6f9bc57475b44e0f3b5a2f2f14a9885e457db8496fee45673bf53d65789938f8d50a51d79fee1e63d7041dad3bbea24c98c9ed2609a651c4d1a67339981778b0a0968698b737b15c0d99661eb1fff4b2f150a4801d1ffe6bd3e3628c30ed73a6def0d5dd24ef7c96f1564c1690d47319c8cd67ca6a474c9ebc6ab1323293e68c4b15f081cd0b9f25db2a44279e4925321d588d95e1385dfcb65b2d32d692f0eb23ae2b3e7c0227daa35fb0ecdd97a654c66434103ffdad4e5d21671d9863e1039604fcf474a64fbd7086f71619b803ad9069fe84e555d53b60dde08063ace8cc3925e6826736c9573f8df6147411da218df5a05656dd7c5c1ffc5ec91e6bcda603856ce1574a28baa8838cd71b01d8736ebc82aebf5e469847e3d04c23568d14899b69beb073f9c6890d8b8fb032ebe5802ac119e008f48ee2b9437faa1872eb3246c81293423d95076041cb96578c61d9d113d704abba0aaa84e52a359e2acffe22f66fe4170857bb97eabd60ba5e77503cb275fdc1917aa1077863487c9dd50a4a8689b6f970be5cdfd96c57e0f539139c584e6ff0e9905bfc5649e7f87b1e00319e6498540f5eae375d80ac2f8831eecfee294263ed6aa23394c6da97598a37623ab832d3a23d4700b998657d34de15d013b5f172cb5e014de6dc8824fc8d1f8c61e52f695e1954f29bf5425708227fd96c4e9035a5d9248c92294f87a551fac7440573843a9d230108642252199e0145cbc1bbc73182c19788473caabf3fcdb252a924d6d0dabbf27cd75fc74981a4a3fff3546a3a7cb21985ea692f08cc87a2a9304a223ed48a27e61b26277509fed8fb74646afaa53db322205468a1382c7b429af8f6002a5a687a86323756e0f35e329b93097fae38df076f2603c13289593e5b666f280e15d8e8b4404313a422c129d242b106b489989fa57d018d4fa2d5cfbb5d491fba111c7e224d24679d07716159204d2e7ae56c4edcaa8f2c96e2ca67f0875ac21713eb2f277e1375e7f1479932e80271975bdeaa078337be840b93593ad78c57945b50e145a7fa8814e0f95e4e88eccf4582b4b257e4e3b9396588e99f5826167e19c52dfd8661a522ac28fea08acabb10d039e868163c6a854cdc066ae277a1e3bfa6ecf92ac0d6a9de45dd8186625204aa1ae0945b4b712746b2925a99ac3e361375710ee157abc8c97228d0f8c4823a5e2b8bc01a45f88831bc4852dbb849f414aafb294cec1a40b4f2a25c5ca7b9f1d5fd31fcaca928c6906a51a726aae1ead224cd2eb8f705dc01d98cfbed3d37903572937fdfe05520e2120063a06271713287379713a1f84f853d5742b334a8660713f564e89f08fda7d2cd7cc6961c714bd2f9d733d81facb4397e9256fe4bcfcf63d3207bf096c548de93668b90c553a34f466d0fc1d53978e0f8bc815f9f7f9901cb1b8084ff74875ac4029c062251aff192a11c0aec42ce069895b695deb7f9431ae5049a7dee57434c8b636f72c4e79614db689c90819e842769b7ac17003ccd53fc42d0cc4d1ec4d54f76c655b1230373b2dfb99a29d703452c32633eaadda490f326cd008a08957703fd342133ce0a3151265dee6b639453857cb7ea5d26b12e9fc006084ddde54410e51d7b74a4ae355248fff33127f3d2685874cc148ceb2ca147d405ffdf4de8f2b9331a2ad4a0a8ae168921507feb1c05fe2e687f7df2c6a5de571f60f57d6cbc1a4cf769879839f034da16f228d8c9ad0f948a6e91d863696cc595b95c398378453d5264fcd351fcbc4caa91b967d317d3e4bf8a21ff130d1770934d824eb37447c9eeaa613b54daf10f40bc0f5c497044c37acb5896bbd4abd8aed3822a82ce4d0d12dac773d04d4e63a8daa500f426daf86b43ccbd6f7127a94ab4065120e23227ea7129b739691a42d435812ff63f1bcc3a29fa7f6095792659e4be25b1f269d337e04560e31e6bc7b6986a4a7945e0c79c398ac6ec252876d0b40d9804a5bc19c22975ffd45d1c6940008c0ed1e9f106ffc39118243f6aee9bc5fe575233765c0495e3b8022d403e86ee8d12bc07477832fa329e8e86897f7e464cb388ad4a10fd4fa325b303f55de8c1ad6203de7981c017d488c6301264322e2fe21d4c2ecc9516f771e179f5001b4272f258c974263499327d381942536fe1e275a0de27acde7acab8597995daa3556611cc56550a020b781183ede086b21794b135fde562827ab1ace6fa5029c5347dfeedaa462bf603332c4a0e6f5d43b9dda201fefbe32e31db4fa82c49f4020a7bf6a950d1892078ba6979b6dc607fd4ede57a730075e2e5c8f19ed0b3a1a00df3a314fb7f401ac2e56a3b5df0c92b18c0c4e0f14912322b18a91112856102b4b6b7c49f6d2af4651a1b982636b6e152e8102d83f88e2cdc5a50c20614ae2dcee589fe244df9ad8bc3ff4260fbecba535dd90920b1e69f06a4a0587f74e251c66a1ae2c51a692796cafa74b3ab581e711e18f4cc88a9564c325a92be1f408cb8a8ac4078d30494bcb82484760cfe5ecd6bb3a04bfbcdd8c13445eae5bb09a5bd004ed2d23be4caf49f6a5d8e2b6ca6f13a87637182621bf02367c35f27dd818b095149d940576f60a8414937870ba5b2784856be084e09aa1585440bd0031296c539fdead70aa15bbdf4232192f24862d6aa1ccd167e0a4e34707c46a8713132b793a34a487ea65917219cb0c1e584b5a1a8e17cf048f9ad240487d065cc19bd75107ed3c2fb24729ebc0e4f935ee6e49a60107304f696c8a2c9762b92f37befed7cb9f53eb5e39bb19f015814d8f7c4d89e647eb4966ce5de8f12555c514174deb3907a0c24c68c0b2b0918dae9bf9c8eb4fc9d414c4dfb0335cbb0cf0d3a7554e5acca839b0a74e2e445f7efb3035b05512f1235438db054cac382b5d5c9983e042872b65adcae85040d6154c056f1a22fbd9244c580923b3a7b160302cceb41a4c548e2549add08d05a94c6f1575c8c382ea120d71237f4913794103de0016ba21df5500be081573b4400ac2b00ec85989e2a0a267d5a8de05b9737550d4e6085d3dbdfe7b44e6ac3c33409fefcea1e5c585024f72eccc2f011c1b9900c206033af9b7c9b499a58d9b90bbc2f6340a6ca237c882d229136eaabc54345efab47a087964d09dff4d217114b3a8f5eabf2f6b98da9754a714a77e49c07decd2b255339ae344f2f8527677addc16244881a9f21879ac6b67936ca82e30e246c6339a558e95e5c526061ee9ad0f84a0185d74cb9f17f035d89f0e3919e9e7c39632e441e3f647ea8a635c0c6a97a1f4dfbb6b3551ddef334e694d9d4f484013e320463869ecbe73ae1563837f6ab6bea9e3b37eb1f5ed2adc9fe4f51c369b9e4b453f1b8bbb3b29a2dc8cc4f2d4cbef39c930c6f65ea597f868ee90a7a992d9f3f3e0af2483a1ad8ffe2e77f2282e6f647c42ae73aeb5bf85108382a7cb3ba0aa669a1ff8bd3aa56a3a6b9aa5ba56d8d8c84f97ca66e33bf9ff9177391e618b29dd3b1a746e2b50ad6bab23320a67b6388eb120887b3155503cada0e07cad1b5a9948c37522d61fdc9b688321b30392b08e5ad5afaf03f436cf009d47da10eac6b6bc4d9193376586a1beff8202c2ed54f28692bad8cedd31e26469a37c6d5fbb57057dc49909166ae1506bfa2f6b5e9f3a47ba92d9db8c9139a9ca23b041414f38002bc166b061ce36cafee3665001f1653f01436bb169fdfe81a8c5e30ad180b1ee381338f45f6e18c3183a2266e5fdefba4e99827e4840f56a6712ee9471d28b29c65d64ec721a40d5efdc1f2f6e00830ac8c4724872c1872c67ace4b4c62343b550c6d63ceca3d89d88962c10829ac331076d2358e6483203cc4dae26646d6d24ca606d506bc823ec27fdbc80cf73f300965fc13ca5d294891183bb593017c96a393ada866e9cf81241274ce44593d1a58197225c3d031aa05f45d832a42a70f9dbeeb811b84d0177840981ac49e416852b793880203c1a766ff1cf15432d55a86a654aa17caed544550c42870140ddd5df9a9529e07b3a987465efad7f94add8b56c025373e2df8d31c5fdb3ab7633aeefce6d0438f9c49f94efcdbf25b656a640d095cf583341d227f9ee6a50fcdcfc06b7990a99d241075d348399b3155b416bbd065796fc127e486ba620c40ff7cce49e266d60782fc11d585fd5ddaa3864cd0ddf3e8a998d7ed55c6b69920309ae100a84071fefc1f11a229328d28c757ab532fbad1a5aaa76700693abe58a580da66e7f206a75f579bb3ff5f5bb6d759dd3df7f8ad6647a211ed2fd1eec030f1962056b9905bdfb302a4d8058778d9f6a64e4b146e8430bee0ae72568ba2067c7844059a98ee089a2b82c77c547755ff768690cd1b38f1a806e9c4b8bea23ec209f81bb02fba1127b3ccbcafc56f7f98775fe4cdacac0a7d945c40780c92e0b7046ddb7730f93899419c58e917db2c63d162ffdeb1e3789360165fd9d0a8a62cba9eea40148f6b3bd06b4939fc50041818d6fcab5b4bbe4c2a90786a8a355368b9698addfb97a1460a275baa7f50e841e86f72b60a8dc9f283496f11227ef2e19fe2192b6fd56ca7252b7d48a847e3a1050ffdb3cbcc51b14e1bde1e0e370d7a292c7e2c337536a816720c1b1580dc094e7318b9a7fa6af90530ce0c99112e1585cd10e0286a9c1cd64db1f65310b592ca00ea9f61b80f0641ef0138dfb73d6fa409d50c65be9cf49b4873f0c7b186466c245f1ba62f10d8d80182bac2832a1b38f885ef652952433445eb0c90a6248d34f474c38830aca229c220a9c2ccd666009e02a946b553a3c5d17eb83f179d239b699e3e659c9a2683fc7a6c44229b06a4f28b01427e176b64b29028e9259c22bfb3962624e5db8fc466384718e22240fce95fb8ab0d8c080191ecd5d8fe9b5e4f446bba529288574ebf94e0cc3558fd0f48ba9b3f795d6e3a52781f84c6f8ad5b44758c1b68da1ac380924f883d6233c1752f68d44fe456d48980720b8ebd9e3bd22ce03391b535eb10fec5fef6f6e415842f0140596b325e36d662283c1e9fe9a89b28373e58b3eeaf9292fc58acd389a0e1637dbf73e197052d069057db707cbfe6dfda0c812e2b1be1f4337cd5651d83b9b8d95b260cfbf710ba5d7e9e75739b980e7d063236694769be167a2cae1bce9b797f5aae5efc6fabaf6da8ee8fe60d47a1a2018241a2b55af74fb364f61a8c8633e14939e4235a3fc709fa13cf9b0e70c4d30fc292d306e64e52d02996bafddd428fa8b401547588dd8affb63e9bd5eee9cd29fa17837e514d1282c8bab5acc19e6adc05790438ecbac28c7c1aa90eee6bcfe4eb17c4860100ea14e30e6e12e6b4c4b1edcb7858c2e5e0a47b9e08eb5c7f01febc7c00e6d887aed7fff2b3d040c401944c38fe4c8cf6264b1e18cf34ec9820f6208b3e644f6729fb39832c4a7d54fea4459e0093fc3c9ffe3de04d7c3ef1f266fb041b4374266345adb40ef656eccdd43f4e9d4e08ead809c84cf4a30b9f81986d7d9e71144bf89780c9761126976c0ee2c02de7ce220b2012346d5b0376dd54fbdedc1932e1a70b3c4137b285070f9e5389fa8ef9f64a88050f5e88f49b4e813478bd78a9a9b18bf2f1e9561eeba52c8d8a263698fbc3f930619d0476dee3a73b62cbdd52b7430b33beab45420b5c640fcae916d8d0d6b3ea7b10a2a6a2ba000b98169de7e35338f6f9522999f27cf93054287ffc13d5bb67aa003719d0410ae3a9afef8b9e4e84c4c145a70a37afc7b178ab03dbe7aa5e69c215d226bbd30b907ddfde995a3671a259227b2497b222fe88169388a2a81d27ce8b0fac47c65f50c1ddcbae47451727b1ef93c4cf2bc9c321718f0ecc24487447c3bbfac871758bf79866d49b5a2135159e88de404753592fc552d91ba6cc9e8b86590bb65b6fd5301e8d626848e9ef5aac67fcea10a9a76e337e30fa9750fd863df31772a7eff3bc81506c06357d2c89aeecb25259021e18aeceea90405fc1da7d6b81332f98006f1a654696e29284a669a5498c4e7e5ea229bb1aa6b5ddc3f7387dce1e705f4a0abe4403422437240d6c482572500f6245cb1cff27b84b5bb9ebab9c2d216d8cd10221d5efc6c8e09e6944f3f270e0940fc7594d268439c5c4d00dbc540fa963bc695d209807a65a5d607d50f2140bb61822c09e92f1b9cd1f1b5428a0cc08d184b5a23a03b884607175c7a226a8eb56a1fa871cf60509ac8fdac82ed7a7c10e4a9477f7ee6aed86d97cdd09d10595a949a5f91920af7ceb6d0c6ceadd573e9a0c88c3c4b8c9f0db85fda69fb7107f97bceed20535138ce89f8ff9cd2788a9a858e2afeee47fbda8efcd362b6e4ed3f63b0b5806fa255fad2c58de71746b65de9038c8b8705fb1e402c97d28ce66328d5be8a9e832f114516d9246b45c968042cf9b4a795144fdce77229d4b21800f5e6fb4fbc2c3fcfa46ea7696812972dc3d2acb84062c335c10383bcb1493a05a38bc2d95e0844cb7b59d88d46ed240030aa25d14f25f0bee2267ecd8d05d80333db4c3bb5df18cb20a5ca5e9ed2d868fec866731bce40d95c920b9a77296d5bf5f14b70ec8e85293053b18616a316efd214851aff2104239d437cd4797570cec236a98b9b18c69e65056732eacf8c53effb9772e848080e1e3e5ec96f46cb2633cc693c080fe0ab82887269e0cdc12f6492a8c04a27e2c27e62258a4d469e9714627ea9412ce80c6f69ca7682981d17d9bdd1f20dbd9b663246debbbc988576a9f84d2fcd6a49f09e9492732400dda7b8b4037550e266ef61aa3982fa8af233de4cd357e957c2f8f8291be55d1fe27e861e4cf4cf0cd43cf4216f7f0bc2bf56be23f8a2a47aaf6d5ffc1ee1f9f822eea95a220154a2535db8781c09a31f4b8d969804a4c3c11b9a6db40d60421a2755c2c2fd60985c4e5d07e9d7d55f88289ce5691153fad54e1e72a84369e3089bef1f32d38f7e1e9bd01c66cc9d8103d9687b74721035ac9832b273445299e62a75a7fecfd774ef5cd67c9ed93d7c4f278b4416df0793e055320134c91d1136192d78bf73b1b41f51e421275a8085c9e9b6b04948c7e23d1cb74f121b7a5cfe494c8983eca0a6bf371e8241d9766d9ba053142eaaf1b5da11c0df566d59c1c8032e5d7c330d52006b6390ed41bd65549484180c417c5844b5ea215ef2bed86a45fb6e9b63f59dece016c2a94cc5fc2aad26a869a8f1b1f37c20badcdf84de14c052480df627d2d7ef93514bbf7533164f6295302d365dfe9ff92f78ea1a632185a07bb2cee9c1d5e98bbfcacfb4bbbcfe78ea6a4a36c437954fbc05b7d3728bb2ac181f394d96a50776f2668aa2a3cdfb9003f1ceb9d1ab537cc313131f5a5dec26d3648b1e885994d6156c81a61dd4c553866afdc7ab782407393785d803662021dabf26f2f1744be1a349e16f0f3bee29c3739ff868309626a6403ac506dbbb9321fd68c9a26ad9ae0fcf4a56284ad444665edb8d76e5011c855d12a693f3378fe79755bd2bc0f0d2331f000627a5033a7bc8de1b5ac2fbc73a1922add002f26f29116f030aed922f3effffd8fba90ac82f851624555aea6cc23483190e6a126ac2ae51521347b5c832f74c4b78479ec6ab2835bc4e090dd848978c889cd97d15c1696ff1640f2849e6b96cfa55c332346fe766ec21bddb9399b6643ce229cf6a461ae988f70b60e9f0605d95ba923d923499f5b186b043ff2b2b3d4c8522e3e25851a48c9c309028feb0251b213db367f022e01620ca7dd9d08ea4ae39eeccc6766d96fb91689e33f457192daae0d8496dab82bc7e92c895430807df97d298069a91ce9a730a6f788df0eb90af1cd73f8ee68a43079b9f8e7aeeb82e33993a52b83a3c343cbfa468c94280df9b6dde57b60a9ac65d5904c8f4b41ad74559bd4fff3d35ca89c5981ad4c7ac2a0fcc1e1a2568f6f6fba9b3ac82291d5728d5b3f261ff93a45acefc8721c5e9809d16bd98472dde69f0a038493a702ced4efe80c151d4de481ac9476c3bc691b976ae22079ff994756e87d697d25c28e4cc4675cf89adb6185b66db21084406d9e1c171f039c4b7d2c352e5e468edfab0f2b2f25d86c9e3b7524448ce2fcfbadb4208a2fcdb8cc6e7c46fe8c61e737a22c2df9c7e5a5a51d2bd285825bfe029236a9cac238d1f33d9996c7638511f2195f1a3db6372b03179da8f88cd65da3fc130088715d65fb9fa4b742fa4cd9ee77a50a9908ead26e03e25978ad4f17715d8765e95045d4e7a0cd0689dc32934c38c52bdf18ad1bf84c4ef5975dfb88d201efbfbd3f7b7dabf85e8dcaca35d6f24d54c0e5c243064a8cfad31530013594041021b15021d4d3648da3b0208fdf1ded7a5454feaa9774d78ef4b9a91e5ac171e7e0e3e89e5dd79294f5406d1f6b6dd6a7f9a98d0885dd1801c76ba954705daee72807479bd496ca9b50c572823d0cecfcc1c00e783b649929ec01f339004745a9d94e5800216bb388047621cd413f4c1f71f5cd584a268fa6f70682c5ba69d63f5155750311e0f2fcc00c70b9ed36cd7afafc90d2dc408ece345970e4d22f5cd7823fd7198eaa0ea0c06ecbec25d16259ee2cfe5cd39877dedc4c6614d688484ca9b8d2b56730916ca97851228c04bf97ee67f9b3b064a7609c17299f8fea05b4307af899eb6b541d82c11e740ed565242aeb74fbd31dc33052807b1c44b2d701b07c571be43f9d849ba83f4620ea51a142d767667d5c7d374dfe4b974fc3d194ddf26018549e37c15ed2399508d1314dbe88e7359167b6a6fd9026dad3a593f5f8356f32e095d3df9ed6439ae4e531067e7641283c7effe8658d66536dd8a13edda5e00c16228af6d0b264615bdf55e290171710bdfd8b3e789c1255e61f5575ddddf52f37c17f162a12fae162bad6d2709d7ea6eb448b87754aeb5b1f2423d75abeb2c72b602c1399285eae7790bbbedbd01bc6d046e8e6fbf93de08fcfe96c5a043b7f09e160b134155a7d21e7550f3e9b534c6ad9f38736376dc2dd33da399c20b9bfd4d153b7ff6d241e8d3fd2751989167dc1cad25081d4d1b0c3c40f25a1bfd7ebd2c40978db7f9eb4c9cbd37eee9a8071fc7e577e2510d59a99d593cdc4f82916092769db4f45391fba3317b403ca152e88cd5eefcea66497e0cce893134132e9851431d107670d86035c3b313f947e0eccc91c8d813ee45bf18ed73f58130c8aa3ab82c344075a0588aba62edf397df0ce46db1eb933544162cb15468ae6e7cbec168c4b856bd68275159dce254cbc1fb81064df4bd204fee5e11cedcf61a7b26983424ceb4cb05ef50ff9ea92d8ee1ed6cab027e05138e3716e33f8e8e70fe746f4c59a3175ea7d333daa4a290905968112339ec88a3123ccc50c232e4a66921cb0683de6b69dc96916567a349a3dda832a5d0ea695b1afaea95a084821ede398fb1b02d0e0632c280842b9d16fa9b8a7de361a4b05d2330e719b2af0277ad210a1459ce509855b608addd04a119fb5bdc6124dc1d5843de2ea954f43a69d8265070ebe229d0406b5e0c83c05468b0ee0dfe31768dbc18b333c2331a9173b14ce046b9b5eadc750f7059549e588edf8eb3703e8e936dcf022c70ebdf515cca737c4999f692ca00fe9d8156eeba41e10b1cbd58d7dd85dc710245c9c0acb8942dd00c61ce7946c70ff458277743fb1a33379b251cb5c65247c959644eaa41f611f3a17dd3ee3eca4e115b65775af82e55b1075dd947af41278bf126df68d82e72282971d9bf4d7e37be5a988eddca7c88a95b632ba102f4b3133a17ff82fb8f3ceda49cf94aa05d87789812fa4f27d52f43e4fb0c227e333150a8e37c66450f10655e7475888f773f0bbddd3423a3242c53a8cd2d7fd1e7d16b11d67975f613337b815b56733bb6cffd97e8b8a8e72588e8ef713bd2326a4fe661d72f432417de85fdf89f8a21a7fb4406cd9f5b9f2bbb4de37c822871d80688d6e9c160388170119c7a4b48ca7538799657d48c137fdd4d3c955a12b9600fdc9a7746d54e93762a3f5527892c9bc248dc6560f5404ac7bfc6111f9ced62f9af9eb5dd2a9194c23e0ae57133e96c7d693b0507f0c71cbd6f0c7f6ef6902502def15a13e6b3c9574cfa9ae717a4c08953c527d87b1977adff3fb28d01193b0d3ca3d92e850499a786bbd55bd307922c57376f65e1eaafe3f060a93003acacf2876de70e42d99c0a7217a0beb52403221d55fc0a202e98a32f066440b19e44b81d9732365d37484aff1278bad783a52528a78696d80dd975dcd7d9cec417cce4c6d6bac670d96382e191123a08f97d82e9a4be44e18abf9aad3656815ab0491c540d7a808fa64865fdd448791f40c9bb9609fdadfc0b4172097f41c341d9564acb7525db5ec25265e53c5e06064d54bd5cd9edc0a42ccc44b6e65ebaa0716a171109ac08fcd98e595f36db234df517d30f82715e669816acc213550e4c5cbb98a839c0b569e7d09a50c598f2c7210004e3d8580eee8dc33811bb08c0a8a43de86d27c927b48c576dd98193dc4402bbb1a0f7ccf4d86d472e7f9737d6cdfbe96f8302587199da068a78324a3b3caba3b3e5f24558db7b44dcb5192c5123b48139d017baed6811faad699327c1c5f4ab8de6a8eea3fb6a04967c28521800ae6ed2bf229ed25938086b52ca7684ee3075ee9d5c4878d95416f7f4a46bccf75c02958cec7cc110eed653328ef0f5b5455d556cf1ca348d0ed2af4b4f6fcba9f0ca3822b33564932a46692fce92afe538fe8adceafbe01f9d0132d16a55515e61a857148a12f31e9d2bcf2bd03aeb7b23a405b59eb39d30bbb947a512e0d65e71617e3485f81939a1605100ed9e797b41c76d1c3ee80e39cdd2467aef1328380d25024b92f9a41a49dcb7add103dda2a217d3c70bb157ae2f68883412450dcf9df66457b4f0afa516ab0125f5721579203a791fc68ebe5c9a61264d2d44048ac19fc3962cdd644cb0b5ce4363cb5440b618048be56ffc1faf2cc02cbe6c14042cc7155c9e9f81ce12d6e2e88c8ff3a886f13912fc061465a67096a9fdc82a7e1a1fd1b374381e05b38dd24aa9d4479e713cf6ee32e5bf419ac5be157dd7c8f55ad5f282798070328646d7577c62de274caa1e662866983cab9f0fe27a80760b01171b5e1e6ec67289e8163d460556fad8795ed9ddd2b1cb06ff086b2affcd16d07fc525c61e1a203bb7c616cba9e3e1f8d3b214ddc30b639859f5b51fc75a6268576a1566cc0185c9626ab72704394194a5bf2814225a2e15b1b28a4236af648e26fd286bf235290ae3d6ebcb48effbf18dd8d2038dc71759928f5fd581875c2f0e2c2b0442b3e639bea86574aba39cddbefbd2fe42fc6fdd87c44c6952787116b77dc64db72cd88d252eca2dfca732a18d31610fabbe97b7c9ff44bc94f71a1688337cb5f6a4931d130c52379f041a8d6cccfca26972f681ae07be4cec35638ed818b0fbb721e973c4ff770f4b7be3af90845cdb6fbde1c1cde4a9f8f504535b78c2dbbb94e13519ceccc7e32f1e54408a1a9133c3de792c2f2b5d8bfd1e474cf2141fb03d2a39c4836d93cb73d0b218a32def07cbd5c6717cfb91787dfaf810b557e116c964ba440d0956db93ae1c449bc1bc0b7d704afa53719041149312a1c2a4c16d70ee2e59d9fc93fe7778c77661e95d707e6cee5b7c77a381e1e13c1ba2c6efae04ac95ecf4a86b039e03ab65479b079ce957344062d1f8dc66c87e5e687b50c63b1aac4bbd3052e2ca58829591b65c1a472ab89e2c6d0e623056e15d66142e6b5bffa750ad39aed26332c1d9229ec859444ef2d3381209311cd3bee8cede07b48c808aab419055bec7e425bdd62922e489e6caa280787438033adb4b59512970c5d2f6563f38e3c40879e597894fcc11820cae9c0fd126bedefd1fc9662af43a70132cc62ce57b112d499d08c62dd715d9ac050085992eb8be7e9ac03a3c34563254f21ad1cdef5b846680990ddb2de7db3de74966c763d5dd4518f944db394ccb411d0a9ca7a7d391a16b82c5c985121718db41c012d9ffe57f24504b256e6f787d507ba4be505bfe55ca9b9cfbb4225ce904d8d3a63a6bc271faa8aca61788b173cfa28b5b9f0a08aedde8cda9a725ffb48d627ea765f7e2eb666458eb6c28a8438f8eecbedc7396de93c0de97d78c9d05527a919f941cc0705cfcbb2e93d075697bb3ef2e74860c94a9398bfeeba52b885347b2d903e114be0430e76bec91ed157328938f4f9e62e1946629e56acf484595d0565e37a12e4ba693ff7720687e296d5cb5d6dafc067bb0f841d3a1c04063b13acf34178cb8a2a939526af7013001e5ba937abb65d91a37886b5a6c50a971c687eddb28d7307229a8836b45bf3ff28e1318489de599d3c28af339d31a9a5b26e0f26e2a6c5e6da128ea7b3b4b319324e34959c6dadd9ca1efdc5fee086711a9e6ddbb8b8213948942bc5c2d222e53a68e2a1afc1e93e907ec9050ccf1192d4d7dd58beed998a66f44b6ac8cab31d7dfde89cd133337cda55fc3aa08cc91362051b9f028899000d2c85d61f79ec2d52d9b4b2668849b100865b3fe036dd69410fd62bd8c1f07ba545cc71dbb0f5027abea26bae5ae3a7c2852f4468096602f90d58ae979a7603ac9803cb18b9a824aaedc87e3ca25be40b6dfd6aedb5c750cdd2780d4a815799fa4ed2567c9db8a16d941d39ddf7f07fb6551756496bea4482287e9e39efb5c0a5648175e7bf9579c59e8b23f2678a015c7bd2ae20ed39a82a90caa8804cbc5f192cc5a28b8f9cbf25762d0794a649d396e5ac6b7cb66a553f8ba6c42c57a52ad1a210323312c12bc68af1a1d7eeb98076d070b1c6d00cd50ef1745a06d9cff051f758efca84105105d574c12140ab9caab775194f40cbcaf8a722fa1b6dd6fd3d1bf8041a4d198a6394c8bde1fe21ff1001a2583a6c55e8cea5185ef6e352575dcd05ed8be0a19bc93b471b157b2d37fc8c765a54c58d409c363920a1bb8ee8bc28e4ca8ff294eb8ce746fd49893f715389aeeaad9d1afb7d7dda76701b11bebbe3cf6afcdf304409037959f292f8af5573169bbf455d1765332b78180a0cd7b34af09b6cf3364645ed81677693e9283b39b7afbca9aafdede92a4dad6f49234bb4c500d9650196a36a6d76c0fe4558526f65cc71c95f7304d32ae7f0fc779971743f36acd046ac96ba079cc1daed42fc8694051886357cdf46aefe2d57871fa7a53aac09dc61f304c0ef75ec6f72bea1622284086a04753ab2ecc3357ec9ae27292cb9d52ce8d3d144197ef223a4cfa1b6bc43e58d86e2585f826b2fd134d227f1079ebdc45a37aa87183aeb75d670ce02faf4f3f75448d61a1d6f768d3a28fb082accadbd3215a671c2452e601d8822044f80d72bfc44ab7c1753f9ad6b8ae15b591665b19172ee2f961936a23de2b7085dcfded357b1661e7752049215ab25f2c2f3e03c843c70a69fa2e550ca1b0192deb3d733de06901bdc04e7d48f12f2b0f507bdc521dde6005ae246bc91a89127860ce1e3977ba2480f1c48d3c4e175a7305040a804964d82ccc97af8b10fa3b74c008e3d21ed5dc2f5a465432a9481e0285cb777721647ff28a2a9f110eeb982f4c79c8da5950ec9b091b5d8195dc37a8e151b22ddf512567e33e08170724c3c3e1afcefc6445e1e096259b1d8b936c6b48168e56b8e27c87fad5041b1ff0e31601455599fe03c6c3cd82df014bfba26741ff7383b9535168d11e98d9a9305b14aadd11b8d350bf6ba8417c621c1b55b2ac6b85b90ce4237dd420cd5aebac461a8c03c5a8dcb6c8adc27f1e152d1548c76f76db43952326d0876728361b99c1e42b52edec15da418d7281e66ac510abdd2dd4d26f0f9a09e6d721802bdc2990b61fa9305029cae3a55f80ed2d31a7a541e87ac1a494ec6bbd065685df696705369976022d987ca4d9bfa330d01a7a143ca990c7b8a457e944e1c751eee7494482291be29d4aae826b001af4a456782aac8b8d6f93c9f81742f5165f6a4de401d68d3a78dc30bceae5fc269c62cad37ffce04cefc2ccdabb43f979d0205704e8238d5a4c0753f98094a0e6753cf1fd22683422f8286329b98beef5243d8d5a6a763152f00457a6cf33da010c1ea9824f0135e1c91a3935ce20cf41986d561b1f5763317832b65717027604e2b5d4f8ce1f83f5090ada7245546006cb5adf86caca2df4f3d558a57d9225a23a2ba79fe4543dca3c572c4af485be453a8e2c7d9e353ddb0d7e4c629ea963ebe66ac6380fdc25f5fbe9baf024d5883f1148a7adb856cb25a58c35019290520f86e9bb71c4aa161660f2110cae372a35bc0f8633f88e06e0a201e157793464a5df987b24547f523eecd1b17a9c5e53cfd473e381fbfc3c2cc2d9a5c8c0af7682fa13fd3428eb69fb51ba657d602b1880a804d28be7cd04d1f99e0220566b7e20025898fb4e25e4fef2e3c308ed86a5b56f37ae0ff8b5ce67d69ddf5c665bf050a9c40ac3fe135a68a18f18909214660fe9173735008db3e6a9366c062e4685a823aebf3f4870ef1b9e1f190d8d4933143851f6b4f42cbe26bf8fe314a313133e351d0b0872b9785d73717fb95a29374f75ac0b14f334311ebe4d4924a5c92367f2449ba687d8f65968ff255e3fe3a7af39199343ee054d728a71e9afa30179d687d6dfa2df8efa205d744fddfa955dad8f62c1af403a6c3e031d7b9863a15e8f277038d5aa5913152f81731f72b5a12cd364bfde0b5c2a851a338bc6de2f4951a6160526959a1c256522a3d5c26b4c4fa14eb37628a6420ce9401bf2e567757bd3d94c63fa445c4b8deefd0f923f1b8f507006e038d24e92e427118ebb622f5c6294ed4802fbac1a97ea77df0a6ac972045a69a92fd25fda76dc610842ad7b5c5e6b5f5b57997dbc9ebe7f79d520d79fed5de6bfdb1fe3a7bb12b62c023c1d3a476fba371f869259bd9ba4d64a628ad792a8cee5b83d40ba1691077242a82aa092a6fc0f78f6147fcfc187e2e3c5e79fe26accfbff0e4d58a2b21ed8be6d0e9392c2d4a89ecc6825c87ce20c18c59bef126ee39a16463bbdeeebe2625d3a2b1537ba0eadadc571829ec2e995c49d25f6c97caea11f9caf9686b3e2ffd05fe4d3ea0fa541c6acf34d9d300ba3b8a597e4ccd779ebaf2886e455413d1749a78297d361afbf97b187890f44334fdd0f319f1bad07929857116986884c685648976d40e7c5f99434b1fb4d5c79d8c3da88ba0a7a885ea1c60fdb16390d7af76a6186eea3150ebcc0bb6064a3dcffb21b4870a6105f001b9af04adcd932b316f67d36c8c4278493bebddcb94ad4605cd03dd426d4a0c32314d0aa5ef164c00508a7f8230069ef6556606074a8d2608bb5cb7ee941315357530c2d88905c7a46a1e9d02271367f1aecb6cad41317a0c7302d9ae4cfb3e9c56c43661c9f5a83020b20e5bd2402e1e17a13a5d00cd248073d7d61b6c347f4ceb382ffb6c985a336951c3e987e5fa7c2d8ae75a9d60aeed072902f5db5242256f29bc9199b463bd4c20c54277b880af8c6b232e4d2dbb7acee55854ec0cd02c52403883f331980e22f74b55b1c8e3b9bb2e59052837f58cf6ceb34a094a1e04bd36a533dc9a70916b98af97f3473a415f325442aec35ca6c7288d6bc9925c1ce125f914fd86e87962b30a161e69f7c253c1063780d92c78a633df8e5ee8feeb972369cdd799f5bb2f2f57239f65cc6c1f6b616a9074417c154ca0eb92d2979bdee81ff03d234a59cfb69031d325f85e0b019f6d8827f41542a5e4f341b314a829841438c4de3c735443a0d65f1107e20d67ce46f8a549853ef908188452122725ef5cbd3e35344c3d05c92b0cde3a299590e8f2ade2fb5760b0d7b2b58a63a5fcb8bf9ea2939b300bd2e61c0cf472b64f796c8bbc390d7543c01b3abedee7f68f4c3fee81cee6571b05dacfef139468169e2954fdadb2d6ff3ae90c6517e5857bbd410d0a0915e8015c33980e4d0831d614e61141e683a711f6f414e69bef893219be9b5c5deb12cb744ee816c0532058f7373b7d9778a1a4a69983e427a1a03a6fa1cd87f0b39e908c31b6ffb5dd8d4f305da6a159ad63432a3a13950e3f0bfa68d33b290caf94e21d47a81611df3ae39f54d83ec7561e1119a4bebdb1ab3d9f2fe935db0e45252fde0ae997bcf51763f85fd5b64b1fbcea8413cdc79fd2f35bea79bd8475c76b2d32df8ae3d169abf7c0b3a8d8a21f9fbf1b4a7a3bd3024c205d22e064e6e94099e736cd242134c6b47356cc1e8c2e226ad1a9da7a43aa285969e581928833f88a9fca78b62d2b4a3621fc56d995e221f680d74321af0291f31d36d6c2684db2704bc89b3294892769c94aa7abe096ab914ab8a896d441473f178642df553af3d627af750fa7e45205e6d3f08e4696b4dfe1bd7658c08ca1a7f95adbf365eea62542888ad2538546694d5f39cdb1502995cdece4a49e3313f7f683524cba494755fbf3d67074cb10397117b69d3e011fe49efbb5a35ce53135d61eabec8dfdab8cdf158e3de0c05b1d8a527d17f9d6caa9559d44d52435f55460f5d08f46583135878bb116278f60be67e674dfa6f2a6e92ed6c346574ac0927bb276298f4652068edbf5f7f57cf8f22d51f50358d7d56e722784a7c3d4817797b95416b0c631a83dac47f94dd78410a6aac5423822023331c3e5b89600e9dfb93f2229c41d251e5f95f93819702aa4ed3af1def9c441b80eba1a685daf5b6817fa17a857d7dc0ebb8d5559844d5217a1efb09016d94201fb4578fa24e7c8141fa7c5c029a947c664fba9f1c553058d0e75c25a87a5b39435b8fd791807b98f8039a78e3b678290d8168d1e504d0ea83c13b03c52c4768cb7acec2462384f96f065b45cbdbc867496dfd6cf42def6402cf7d24f32a1e8ed21cb10d14569eeccd57d6de7c17a7c88d7103d76c367e918be6267a4c3846cd81fc634b04d2f76d66622ba7e4e3807d32795c2e601dbbea241f953a4a3329eeb378df6b5aac23e229e71df06725606deb46b5246a81071ef594fdee2616d539ef0bcf2b72354a2da45185af4933ec1b966d55f6ba76c0657bdf5e38175deb6b681a0cfcbb86bc8d5c7ebf02ce478485bb2debccb5aff580fba67f579175416de23ec9f1793deb02ffd5c3de6f174db9f4c2532119f0ca1b13fa3c8e45bb835a149bbe3860f98a851da6be909a93e6e144719078af6dd1dd146fb78f597cd3261a48e5294b1b14874c6cb95e8996c463b2b5c5e9f25616f06b2d277a2653a71616020682c61284c093d49bd76762eb5cb7a814221339a975782757808314c41e0c43a65c4b514978653209aaad89b2d65de33df00d2de70140c3783013b0e42d98aa7395b13fa7bbe7b097fa0b8156aeb5febea0225d7b3f9c1a495aa8b83ea8fbb20270767035683f266bd12f16e22ee2a7798d771a6c716ff1e02598b46447a44222cfb32e4532d34d5a00ffcfb9c4657bf07d3e9aa4a7478ce9dafada5500b83a544412cfeda39d385c6d7e6ebe72e86cdf8ac83d08d4e690d090a39a5fa93610ce9825590128acaff940b0cf6d2936fbcdc572ecc84b5e2fab22c2650bda532f181509557d21e5bb412a524f6d894b79a6b2c1784dd738d60d26e71b7bfdf9f6baef911e75907cd9951ecfcc2617305fa474e9af6025530a5878808cb288237dad56783199f09867a1aa19a75d1dcdbf20fdd5012c28ce40998b3a876c9ea12b2c57c937b3e6cd38b7198ba201e0f6f199e67f6a9b117ea47d9fcdadd93a55d67cdf59c6e6a43fcb7c3c4fd63e9bd13905872018575efa9c859c4f94a0e5ea3672ec94ce37159eba84fcda0708c4113585469fe6fb8a0ad5fab690725ff3f8e0efe1e11d0058f8d1763aecfdde6d3e49ea7411c0efe953d15e19717822d0e19fb54ce9e1faabb4f3533094c4fac1477ab1cf400d26eb22cf8b2f21d261f98b1c812e2d3f77ecebfef04715e3a13e242b1cd4b2b3033c7c4926cc7cc14a907454bc678077df8b7f9dc329c4f79ea065ccab7dc29103f61f74fbecc05b426d25a168e0fa98dcba3c7f445b3399f00caebb1ff5f9a25644207fa50ce847f1706002c1e35a79d9e595888383e14198abb1571766b67b2bad43270dd7dccc602ddeb21f08a31e796ca29cde6b04d4c01658ebc7d7ca8ba82ca22543bd2ef22b397179d507c7961e6644c2ce26fc2e526a8088e824cc0ac1cc416dc07bf9fc29ea1058c7d422883c3b591dc4a141665db346ff7b96f777591ec67381e663ab76eb4ceaab47b7244c7d67d6718b6da54d12535c2b60b7542f3f5d5cffd25a5fd501e24397eebb5977481d8180667fe1683ec5c69be28a6733b5a772b699c0a384a8e851e19290f1eadba4ebd21401ecc382f108c8853763ce9a0e58f16fc8cc8fe2767b551c07a6d4985bf4e2852844e7ad748c349af47afd4bd5baad8af4711308efc2cae67b0de5b69130a258ce14a658da168a6a264dc01ec0c591d793c2d70ab6878f7576216618618961976c22763028860c92f0052d319fbb6f9610400c12064a98c4303978b47b7cdc34a670fcfdae951ef6c1bb0013de2299d548da0a3ada49c34a476fb5e2ff52e9623c1e9e3ceace066f8e5038173a204558fb3e4aca2878229cba70749d3ced7ade3ac7ab53d3d74abe7e252baa0e74ad3bff337998cf59d648f27dcf53bbeac1eac4345008dc4140e7abf304120dfe43255de2a2bf30e61e4be48bf1646803141d55278b0c4884e21f8ddfb7dab493df65a72919a2d1d3d7e10cb825027b629e3c480263cf347538ab25547914c19b060a945b8106f895b67584ac2a53474d929ef7440a9dda079c236a4d679ce1bf60799f3fc812c32eee697a24b457f3b820b390ee1f0026e8c67e98aeb57684e3c8c1a40499d0316c484b6332f90de65c53eb879283fed0b92d1fbd76f2a268ccbf20f4931199dd668810e28de482397f89f30daab25f7dc84b2a8e3b051a640b73c85844c899c86c5d24eddbbb084162225b01d723aa46713e266ea238db9a962abcee1bfbc8ddd7003219bfb09b780100a3fe06acbade4cdf79bdc059009b932d11822e791fd78b6cfa96bc09258fd4b556cd69ae79c1d63caab930e102b5171bcb9ebbb4e8b89267775e452501ad8d286c944b965bebaa5b9512939ad8b915aa56658a0da18e91c53ead0f8acbab70afa082e74c61a8665ece867db73424c63c518306951721b7db9ce38e3a150e087f28b13d41ad5f40eac38a751c8a7524aadaa4feabd5618e98bc736df8eaee12fd70f23c1f519ecd595c81b5135deef91ca89c2d144e350ba40ca9d1e5c760aa42057849074c4df13b6888dcf70a17f4847ed96afac0d49c34a32fa93eb20dd6222580f671d846094c9aa1127eccbefdde34e22c4feaf9ae3a3a719f868683a08b78f5ee9b5901eddd5b15955178c0fab18fb60861acc0e7399b4e6a520988f6c1e6865e164376839f059c956bd94f6386b9020fd484206ddc7b723bde5ae59ae4ca0209cf5442c2f864da79473e38a9002e8fd19da5d960657b54ac72a497fae0986821ee8bc2d2eb3031c58d9ff423f00f1af496d8635cbc729b8f7b0b9420b3ffd4c6aaa8c197ba92484f86eedf9bf60db9266f60f898e38125b1a159f6badf84ed9d25860c2c68ab55dc9f2032197b3da2586d521d9557c889191ac48b538fd242945ed9d35627ac646265e424f90dc28927c3d903d80ee3d3f6573fd5ebd2dc14a5d0591c617944bc1d42bc4477f07ecc94e79fbdede0e2cac2a89d50f823b7fa71f471002296164349b781149ea21028dde28af2cfa6e34d07a2768dc0ffde46281f90e0b236d4002c90e05e6d6500ddf113bf301f89d476141b473db06235f7a743ffb81cb0918c9aa1d09d23f629bd9f043240ae3847e7d495ad9ba359993140d869623e6907b38c4742f162562c22587d48a9ef7d55e8091034dc872e505909ca1505b7dda88f7ee3f7315f52ea3b7f5ee2876b828a078bff25241a87c975b9b5f61e7c33aab923e916df342815a2ec96789a899026605fc28992ba2b6a1cb3620c39fe6eb734e36ec08a3ba46ba7dea85f833570cee2ae385c69666a838b6958a0f359566ad3b0eb745aa235a1b8b6cfd8cdbc8d76d565c2654f86dd0f7c44771f705652ebee21c9f533e6c471bb69a5228583d6ba5be4c13e7dc64b7bfc1755c92b8cb39c6bb6ec4eab4e8d48821ea613732e50f71e534e2b772c7c8dbb227e40f17beff4a3ccb3a4d2a06d43d28860cf2c2b5d0b8ec30c28b41ec676c9b0f75714760304a7f0a1529000f5f60210dbf9f67f511747310bf5c6375e3ff83a370194fc905a50f3e2dd1a3e0ddc25ee94b7cb743897b5e8bfe312bc5fcb75b18be703c957e946ce57ef36be9406524daac7378a83b5b491514c8cd269d2e4dc3c899ccad04ac49c1b25253743515f763307271693f80f5f6436d1288d169062db16107a18c5c554e40dfa25fd3f86f4b31e300f1ed0c3004d12ffa77208a89c5bb684c9a26c52ed7cf2bb49182851e705d26674b671bc65c9655ea0643f265b6b7f46401db3d0f818319ef42aa4d130b6b1dfa27ddfcfd56e61aa5bf741630d778be117c3d3e327f55ac95c2c5dad136a651e962d3aee76085e8942ca64958090b6cbe905a6c9481e0328fcb43f531e51402512a41805c9806b4af1669e7c165b070d43339c2a257c52f3afbbdf543149f9e44ad3923fe387a518e1d239febc5e5983e2680a32b999e7e572a90e52e8e1749b223ca77c0596ffaa734d6a96246fdbc5aed09a7cd7c7f7fd728e41eb69f5e82396975c12e6e5c84bee133b737c71e731bb3ce98bbb87ace5c7cbeed225c16f88f15520be992cb4080f09967bb9da75688c5d4a1f46f9772ce1cca10022378787214d14807b4eba01804cbe49d406b85bdb646bc87a79ed6361d0ea609110b0808cadab5a50e68292f5572fe40481c3b070f305930ec2dfafd84676b90cbef3cd51bf485fe39b2e4575a048d52caea55083b75800d5fb22bdfe05ea69ef4e1e21397f9343c10b7c7b8670efb30f806848d1c36d7399200bf3d9186911c02ade7f544ad1110496f51fe849022e21554f785b69e0d98c985ad8b03ad1914441159346d85a856cf83bf01287d3f046ed604425ac1ae5c97270e748f21a6fe244e7ef3096a0e77662c482fb0f5938f07b3f188617843a97c09639a112f6138403d43c11221e565ebbb77a5b0d44e636b6a0efa7fefe55bf60478fba7f763a7bd038360e76bcd43f8246c351c7fdf79c86605be083a5ca229dfb51978deb7ad6d9c3880abcdb9d00c99ee9892d13e87856e1e64fc9cfe18fd67fd12897da1bc497c5e18ead627e6b74a9f11b920212c9e9849fbdf71e62f666644c29e35e2f2c07f20a34a4239e6546d7208d83bf6551ea36688e6ff0cdf70ee58a82cd009161a375bdb3008f2265756c6f3dc5c425c747b02aa9ed0dc9cfab2d3bf8eb4efd6c382447b0111d884033522bf4ae4f5adb1a005d459c60b0a1616f29036ea86ace58acdec35f8cacd81eeacd0b4ebb5d2c3c741d4fb0d29e4f26b9242b828cd8159ecc4a538260a05a60d0e7c55828b4151e708259987ca6cdb158b9e48b13ceac2649151ffb6806f195cb51dda2f8382e4b3fa3d55448e54019407bc4666ce6b4f85f4c7b76ff7b9b07fe17384907bd89513bd8b4df5be224744d9f5718220a142a4355114b61c94c1fbdc51221c9c25f820d77588a8a9535c1db6a0e225aa1709c8df6900f247ba0400b6e04c82bfc1d0a34b976d2639c0c7fd0b37c8530fe228aeb19e2123b8b6d742b46c9fb7f2a133444e4e09affa10f7f2e666df70abda739f7d119a1c2749437a6939618be5e62b2ad7bd14dcfaca05cc921d247aab205ef179c10388c3b9cee59491bdd9f820c21e88b1ed197754945f214b8450f4848873a9e7ea84e20beead0f0b5fb29e18a1d105c96be48b96b43df14922aced6106c6f440c43fbdcaeb33bfd54e0b6c4761cd39435b4bf6fe64e3be0df098d24ba450faa24a6659e113f921742946fb3bea2549fd51e043569b60fcc9b8b6a88a59e7890f9aa8d190ec5efd204105eb98fe0bdab45c5010e4b90cb7410d0735cb6dbebb73f55c4361bd407c59da02928bc5b3955f9b4fb737967561ef32137213f2af31a9c5b9af258fe2ff59dab31833ffa6e62b83a4fc65803375a9393190d744855cef8ce2f87100f91e572397a827556aa456cd1440e618dc20a2f2414b0c2f86296af1aa1d1fdffc56286368a26b177423b3b6f2a7cf1de87dc69ec14aecf15b153f0df5b460f2eb1d18ecfa1d3c61a9decbd84e1889e759ac83f4fa3f6a6874fe3a098f82d620ea00b96c90440f46795b2e6893e0940797871df59b21cb6d575ae4f357fd76c4eef1dc339895d79170aee855082e2a4a3747488fd7689ab3823eeda27a44848bb9f5e89e73dc2bed60e20177da5f1197297b99370afb91890e6b94bb66956f86dd764e721bbf4a6c12a45a68aef06be24f4caf4b5c288816116973b0f12a80ed561ba48c89d15fff6902e473ffaf769e51a5c9430cbb13b3914143260379e26ccdb94c178d272eb1782b82ffedd23285a0b5aad5b725b9b2f0240577090f52248a590bd455ee2ff88ffbd3ed0864f1624019fd45f64c2ad75e203452c726f7b982b034d3b8393baf2fa61fc6f7764b13a957661aa29023f3a95f729dd3e8c2e2c8c5520c07f6d5f388f86254af1db54731d0457afe0351b49ebacd859fc3632f48d57c73a2f2cf54e00d7ccf4951db8208a1cc79a6e27a197de9075edb52a5b034ab65e54adb831d039a6f0f24e9d5b83a5ee35efdae4b778607c1f55a97d84ce6f28142b600b65b24acf727623d6b7ea09ff22863a978d3cdd8faa4ba6378f33c383fe027e30f821d24b7900201062088ef3c12e5086f1f7b8db95176a1315109c70243e39184095ead3697c5fdb344d73f1cd8b477bce3e48dda760ad50713e0d761d18892bea03a69ad6b13cb9bdac3868a35eac04a410a03a36aa1173ff8504bdfab5d456b4e3c8ba2b171d7abef1458ec2e6bd9775c46c98b8c50f67e18a8d8dd5fb68187a130b4574f49d274b5fa102b4701c9844cd783ca84aa16ae133ad0a9010809f5088c0f93fc4729e4a17690982b1f1b4ad68b685f69d217e9e562ff0065874d2145ee1abd5f56842d553ece62617102f985fa9d4fcffd430811ec4d91ed9d625219eb8dd6ceb65e149a833a4557593cd69036669027e5045314b15499fa2e841eb7573e83545e47de8ae76fd7e2697c7bb5b1a62858a25b977fd6c82181bcbdf388446efa59b58a182576febd5e13114dd2378526e3131c3045511ac975b4bd0d2c1112f57cda10c7e3a9b4081543bc2c24794b859ecea3229e2a1bd00d0d38cfb52750c5fd7710834beb9c0d5f2086db21aa0c30975bb16889be41dd583890fb7ac48d2015e8fedef385c66652e6d02aedfbcfa2d7a5a7f9eb1a803c6d1fd7776780ea6bf44a0d21d9d2fc0c3fb256ccc32de0df7d647cb55b13e463fe8533389b40f39fff0cde70273283b38e91c57da225258cd67ba57a946626ee8dc58afa04b77897c4ba01a1c35311cba4d9f28fa7382cb77e395a929ae1b61ca410056e3e56c32a2d8d7f265e2c60c6ff274ae720b016a0af3f11eeb8816ec54d15946df434cc451a2f6d4977e46dd7e3691daab1380e6eecc39e100de82df195d0fa1ad114367b086f28f83848b13078fb9975d45db6cf834a5778544691e4d2061b527cdd23437478a199867b278a91f3aa6501c57141243f43f1c256f267c6171e0e0fc2d7eb1e5cc4b559cd6c383daa5a5d3200341ba4d4ab49ec4ca4ab4e60fd6050df3cf3ebb72c55d7a5145a88a9ed05d21757fdf8e09f10a93618dd93e1941cf44ddd3cb7c01d23b1acaad4e2aea11f134df0231e64f88c3673722dd800d6e94b37e83bcc62493b4601deca58ecba79cc45b796da3e1808ca4301bfcf03383df36cda9d71ce50238f20a52383d8505abcc6b9c5487e2316e2168ce21cb61f521a2009a8196ff2608737a000c86f10b631fe4dac333e324f7ed0d8eb9c4cf1df5f1cd186e033cb2a8aa5fa4eb5450b7b64b956fe9c0f9dbd960d51eb628915873964d90b4d0cd5b10e806153995758048272c5220a428d0cfe212ead17370613a6a92a8608cb0d81a49c0a9e0efb65c9fe8d1c621413799f124136c05c3f3541dcedaafd13b3e387467b45a12d4f957c641a54efad5203ae5331a4235d27084d06fc1045c63b6ef1950eba754dcdf3129699aa372ac6b2c79967e14d853f1673bde883c584bb509045479d5daef10527376d16ebc19740f056f799d119fb8832a1d826b3a69a5d229a99ea73c7c9fc2ed3ecf41c1e2c504fe68e2a1bed4d4ba1312c12826b45f9646f02ba5cdd583ec3a34d94674e400c2661980ed19f10acaaa065f62b33e83e5afe97bdd178807f1cb69f10b74e953a2d1a110948e8cfe62e21777dd9f866800ffdafa9b055506005c04ed2315b584dd55a256592d99196b3335c8c699e5bca31395a6a745d6fe37629dc7c184652f0d8a4176d45bde794fc8ef8f415980db713c13d5e4141bd4ca3d5dfd29b1a8b8c8e9ff3bd174b46e543f6cebb77d96e4cebdec1092b4ce27626d36e9ce6f9990d7462af1b48c04bfbd957c5e1111f91e77eb424a293bb096f8b5605bb168fd06203d49220848706d08c301cdd4223a3edc9b89aae2e6b69649d6b64a39346bd1ff9cb78400e24c287834f3669babeb9413ba49ce747e1ac0e46f89e41d444b4c2716225ac4f1a89d0cfadcb6c00dce63eb3d129c452538a1792f1922dd26ecf3ca3d501b8dc7d9b9c61fd5080886cd6ec85ad5d00f45b937d99684f7c8eb8810b002a43e2c049118a2a9cd99a05d7cbd72ca5e668f4be8e6cf7a567a438d9d9b017b2c3c5d5b180d471e62a0402958837c5f19fb11e332ddfcf94a7f36d511ab8da12a8a320db6acd7ab4e290e21e4f3a109b4c83569cbed39f594985412b15ae10c5a4971c578a8cfbc863ed863c50d9f30cd03bd87e43226e1d4729a9b27be55478ae902f6e38855d13af88ebff98b80df5a9654e74cea888749efe46898c5ff5c836dc3b78e3cdcc6302a61e098c25c98587a4a7a6423a5c65946e2b26317b2f4445a39fb9f9aa7c34256479eb86c5ba9e778e72355e91fb1a23812c876291e5037b5aaea8ce68d725a8f8133b3fc698f96e3e28421c14d764430de0a9bc871bf4d094af896e3b967e417a2b82137debae13d4139c8dfe34d775899a38bcbd83b75958ac8a424ba9a7237b369cda10c9f8b60c90578992a43fa4262e015ca0307b6d9587fb2e48277b2192446570990d472b74d2269fa606f75f4d5bd2848ac5a88b349279ec2d544b88d68fb6da2b2ca485d474a46c03f4738133e00103ce7af6148c468b86a3142c309f376a33eadcf908b558cae7b15465d994b443341a65ef90d9ac595ffe07c2e13c14cd6794dbaa3384d21658ee6448eec6c8ebdce106ccf5e9f43b15daf08a0c74335713611beb85b0df9096a7ee5673aefe5bc4da2547b38667c328149995db7ef8b052025f75f153a67adbc58e1b69cd91191a70d6b5fe02859050a28c9da51f1393f2fadecfd2589cdda6f87340d9bc863fbd4c399ecf005c077b31d95c308000a0446397f9edc90d109753d5a0b0e45f8f8fab9c7fbce3d3d36def13919df9883b8addf09073698e95dd3aed60df78b44d1a144af6eb151cb22dd1cec929c0e06c17940133cfa99c733ea1d53b8c545cd8d4d610df1f94df6d3fc7b8c17dd5cbd59ece4aec6be7b3833345cd654dd8844ff3333a45bb8fdf18c7d75727b85961e5a19bec294802aa983a9b75e5a8e5caf3f8e5e0bf2b1c27e6a754cec8f48814b2efd29e3a620e676a1a13cc8d3ac4bf13787c10a16e1cffecdc0c54d8a069a56797fe558f09b9823f015948f73b35f7156c85b45967b47b9ff2f1e02b39e824bac25d6ba239f8a34b75290572a6a2514c293377cd068b1a6a5042e8ab8175842305381ec56d946550f6f60331f0f9b002cb2c452f83bc759c1599021b82d1cd79df26f73aa686f02d2d39fdd4e087c9cf882ced784e7202a20e3737dde68c630a2295f46c28991b50cebbeb090ccf9edbbb885ec7726d2d3e2b1ceb6fd6666502e42fffba11da928668bc713b4fef089192d6e3897832d582a9899caa7060b8c1388c5fe705d0c54e62462f66803fd40166ed590e276a770dc2cf912d714614a97415c4c388b03e05d1fa4e49326e5152cfc3aa7ccf70aa458d72fd74f463a472b22d05801815e116e7dee0818df8fa4f034e02122f34309067f7411db210983b1f6da5574cbe54fee4f0cf2b4e60e30cc0813f1c1689b197cca782a3441aa2665cc3b286399bea75e7bd7579fda163a9bdd0761a3d737013e416c33f1475df1e91744380c529d39a2cf39607775849c53e7b50fd8d2afcf6922366a6b99e5285f31e881bc597990dc1ff05d4c7febb12efcbe70a934a007d580fa4fe62f542c6ede9da387aac78b6a4f90aedbc822e49e4cbf20266ae8731874dfec5fbf6f202214cb0cf40f2e896dd6cd5d5cee27409f908336842f6d363045ea41b1825e2267aaed149465d445d496a81f3b2662d9775a4fd9c77686807892431d3797de4df8a9f73414bc7c662a3b1cf92ff50dad158ff511382fbb814200f4bd61e7c564ddcc8d6ef7743d24b7b2d90fd2203fea3a6ae809b67ccabcaff9df4213cdbed25ee46dd0f1626384e1010eb3b4b195da1e8ce42a081e61046db109d142423ca14780c62d4455530af20d112a30b181c8b944be689abc08d68642c49018f59d20e0592bb28162daeee0880ce0f38e66a39ad3e1f095bf74e527a3db0c5233c4948c6c46d2e65146481cb1daa1fd21440a09e2e6ea8d804d3c804ac199470e3763e610352d1e9b88dd8408b478ca4f7146d1bda107fd3b917a8b986b782b70734e2691353293f77faa82ef28fa2e06e9e2fe454fed392b50330ff18399d9b065c5a5a1447295a58461e6e000e529092d87f404fad796a285a4fe2bcfe63a55deed5970b36a568ca711251462b49acb2c6f7925c48598767ac0d6da8d3ec75b66218580ca8978bfe211bf576e4890b803920cbc57de651f1c4acaf592328d35b2e6e4d5c567807cafbe9a9d554523e39b3e4614f77ecdc6c68a19f9a376cfbe38bb09bdf9cc4bda1918446e66b2b1c191a812de08e827a8b72569a32364fbbce9145068d49f2d45423d0ac21bc353a25d53156d5c3cd317f227c7b7b4a8ba217efed6fa1d11c7f7217e164af2339aae6d431a5c72f4e872371ed69088c64d50882f5bf65668ea10ac47bc4be8a5dd5c05c81d9b4fdcbf9b03a1fb59d26745c7685d0bad189ffad05d3620a3e5c8dbf85608babc74b6aa7bd8368a58e7251302c60daa95398097ff640021eb19cff5edf0ce8fa51436f9b5741fbe25f4ad1f49800849adc45d47148e382f3de4650d6eaee0613ae2d49036359bfa54246428b8ad25bd504e9e317f6de4b60fcdcd7fc194b3f951f2eedd919e07b19e120e3a89ee9c2dbb898d6f5421ce692a69ad0845dbc02bd994cc97860789ef46f352db15a07523bc0dae4fdf21a89c1437655cc49dd98073ad353ce55ed4b9ea439405b9b51ea52844b2b34cf65adee0092186687a1bb9bd664bca6878f79a31332cada1b06422176ced0b83c8a76d4cac5c94dcad5c98759fb628a26134d94d3e8f76e028c17141f78bd63d4130a60af2ad51a424c75c8896a4fc2babde68a99224f25fd7b3b05415e591aec8e969763b648a31c62b3b420b72b94be71cd019c88a8032c8fa50eddcc03a80caa0e4837bfb16aa71d481d3559fa85e87eb876f1de73e04b7d3e22a14cbc236618d24cac717253967b8d57056997e68a3d4f7c33784703d6566a1158d67d6bf5de9e1ee4e3e1c5b6f0e2a8259f2811a11c1ab3a3c8e82b36f140f62843fcb322259dfc4c1eaf24f763b68588e97d19731897981058488a3e577f2d84b918817674abd16ac9fc7cc71be3015395ab159b889824347c0898e1665dd6bb526f84d10d2d0cc2b38187d577c5950a0e89383cd5bac0e5c05ea7d6caaebb29157694692ba1b5cbb549be95cf1f2da2800f6922d072d5a2dd8286fc34af848b68520265cd097e4734b107c388346f3ef1c6d524bc8ac0e45435607d266fa023b2e93c02818b041535880b5922c554a548cbdf89c0ff4ea579824050972f1813bf32e373f898a07f664f630cfad5e33c4de8be91c6740ce7ecb93ae7d14bd4b7e62b72d6d447ab252215c38680bc7fc40aec8f388253f6e43792a0bcade14cf64ae4558164814047308e037de8c579b37866169d29ce6205c81bc17c633d360fdf92888fd6d48cbf3628c716f05a4e47759963352a3b01ab3aaf3f2dd8b92faff5a9c1b43fb3f1bff65690afdaf19bd31d44e41faacb5a7ba876ce3c7fb74f26393dafd34d91030d8a13de0e1ab3eae48a1ea8c82f884849299aaf19f7d41eda1704bf9e5d4801bbaeb59371e01fdfc5ab0a65103275fb2d0ca0d731ab13751b2dbbb4eaf49313f916e0b79bae867f32a5928ce113c89a621e02544158c825011db0929f71deda58b21f630a44ca276275eb26eaa9f750ae627099695c942c3b2b02bc97dc17d37280d81be08b1eba932cadb4776867acd1377e2d38de828eaa56f8c5a09aabb536117767c1a2478a5f967ad8e2c9b29c6f49a311fcb6cd8b9600630c912769fe72676927a0b5684c11bbc193228ac1983fa36175216cf07c86aafee924265083eedf44340bba8c00edb6a493d5c4d4f3f79e20a4e4ec80842ae546aecd4aecc0d6b6ce3b043b07d96a657cb94a963a44bb8cb5898c4375b5e4e361d3f0f9f9d74e69585a9e8d65c76657bb398bc629bb01f934d4ebda8814e15d138e559f22807dcbbede8ca97e9290ff2105cfac45ff6c6b102070737bb7ce19cd4b0d923381f9686001bc511e22f1760b6fda8993f0bac1bd76acfe0cbfcbb5de91aeb86e92e459212ba6af512f5b2ca1847ec8aabb24c58af2fdf01cb2962342b701f26f59bafa7491d5856f1a8ee73fe8b9fdfd2354c75aa0d6b750775bd5108cd971a552462d03d8c823fc39b347712ab53c5beb311dc9f4f054ce54fb6b9269285bf18a714d28de2b97e33e001e6c30ffd59ae9c0d89b04b868cbe8b7ddbd170c63912180936be23dea11365ecb72f0eebf0b846c749daaff3319bbde43e5fcf29da5800b638932c19526690e8488e6e43916c58123d4a8d329e7a1fc542f8bdbca725817c50dffcbbaaf850237887e351aa98601168d94d3da2df2318241f9d1f4c166caf732c57156839068a77d7d231184aacd2e6d4c5ff11ad8f36d1dcb64c722b278338ff8c037a54a0e5d7a276143fcbd8e6e50a8d2f4906ae25f5ed4eba0af5688f02c2f2964bc993cb55056477c2ed53e0543d00b22e2f71d20f91ba2aa9f0544e27639451cf0c420be03264c69881a62ca9b92023892368b55b727550d0d4eaf29af74306fe736941b9303748116c32076a2b1531d1afb887324a597b5b096b20750e2409b003a7fa3040b009390ddf0d9b624aa35467f8ac92d11d8e91f47b2669c2aacc8a6cb19ab301fac8efe52848dc4ace618d3bc8acb79dcdeb20462450a1a60b87c2b71d1f58b6ce3de4a9e0f5582990b74ac6276075a4a9166d1b9678c94e49dfc375d57bb6c17dac55005445ded71d5fb39cb70101681a1b925c609bcf778596aa8571d5c1a3c4ea2ebb3f0fe716faed5130643896138758081e5edd876e697ee7c2651257b6b731d78a871cc2da93543f9b9ed46a2da65596f5dedac9ec60061fc4316fb6b6199803c4bf57225af4d0efe1ecf9149c3cb2b4a9a8636f1d789330c63c97bcf89c7b4d00e59048a922e38f06ab3ac14b83c995bcfc19c4dd9189608c8586baf7e47198fa93fe7eb1930f620a9fbebceacce61e274fa67e928ee0e8cc7d9ac1025231d92a3ccebec719dfbfac779dd7e4232d6aec03fe2ec063ed87713967f5691694124001698a1a2c6d931b1c4d5a3a3c8535ab35d55bd869a035d3613fa48442fe3874fdf2e565ab4135ea1883870836942c420efb129434064752603f6accbdc8e8dafa17a36132a3292a1f969ae4c4a9791f5f1ac4ccd75205ece2c35c33afa3aca99dd1726d2b5f34742c6724f2e8447f75f7522a04efb749aa9934ee41190988d61163efaf871e7d0f4bcee916b7428b52192a4a5739c71079db22a4aeaa51e53bb62efc4b52e064edac2f3e9e722ff46138c74f7bdb475b87dfa75711c022d1974070083112519e26eab86f949f2e210096d01f379b74fcc52f2e68229e3f237d38107124e90d2264b3b74e9d86bbc971c05a86b2e688a144716127a8254166d4e2f42e1f4497781d1b55a273035bcb4c741b380b43ba7430b035b886fd9a78338fdbd482a5e824c4c4de5b62830c41a8607112d7c16f373df9117c7024f7b2fdca2fa32cfee86d8f42ff59547d141f5ddc3f13901ad38c75ef375c4a5f6ca2534b05e2ff8ffb4ca9cc49eb40eb17840ab29562aaf9167ac3a6d34b7565548dea82f8f9f83dd42c7f7ce3c50b70204a02215842b11ed2ac3658faae667ffacbc625e956c89a753b3d9d9a849b24fcb65099ed214937d652e17b3368ef0ac8e61af7f7003aef889e8d8ce2d9f5c466a03f6476fd5f33de037d09bea1a12f0942581f8d625b8f2d53a6f7bbcb757ec765c6ed1ca414c456708834bd090bbdb2d3a242a6500bb280d091dcde69ccf844a7098b1b4cf929a28c1a68d4be018d6314175efac768a03d9da737f756a591eb44f84d877e61c763877793ad5a21e2087b930f15d7a6f4331ca6e1b465b814c6ee47dcc77bf38346737c0c75126dd62230c556fd8e55aaae425f7c77c9b4439fc21b401856ce9d0a6d511a8ae9d5fddafec386b421972276ad9abc63a9917ef3f015f20e93f41265b62953343950806f5c4dafe87cda88ee16e66c838b304d844239266082ce8eade6246917a1e1e35ffe95d374528c5d1b9769ac301560b1ff4fc07775dc4dc66a5c8d4669e81740d1fd9aac9b138e952e403eb80a6f91344f1fe32df7a0bba30ea9603e998293cfbd63acb31253f47003869186595b4a4e8a79090c0ad93aac60a86abed3258af68fc48088aa03f1fd2972fc7fe579b58051b465b52d4dee3e355656c02d9893147d5ba51d4708a5b3372fb785e597d814ee0c6b65ee82209e0415071ef9509fcb9ee4ba431c58d9f7cfc09362f388e1a51d3a5aee936d68da4b643744b3a97187852ef4ac8d80e34420b072d66d471c831a58c9e6d8fe986da237bea366d301376fec650dd7b191974dee67d4e9572d6a65e66d19e2f7c856a8fdcfbf77bc5aa1759184c9ff6789a429de5ce28c371ebee8f939cfc043bee2a8d75dbcfe97503a942a56c4988261e4fc96c7e0e3e64333589979af5f230d4012101866babb776e6328e52d795c8fe69a1bfbfddfdab99ee0e545ebde2dc08e043dc436d33bf90ae574f5d936e997d6dc3c4abe4b7e24b59293a9b0d6ec466eda1fedadd6c17b2319bbdb5719329bfafc5595630390ad69a00ca07defc08f79677501b58c5aa5e69f450ff69bd82a858498718d79e1efa2c76ff07644939e458912226fb0420e55c09a59da8d04bb69fd16af23b5656815cf05fe9b4a497c5d3d03308141c06e2c7220dfb7ae3c4ef6fc1e6324ba9b597d547db47a2ac4120f1d234d44fe270b1b3127be8a4186002611e01a66318fe0021e6e7126a1349148c257100f5c8c763b28e02f56025b36428c7427f1d748ea8a3b8ba2e79393b4a8367a001818399e1001b7b2eaf83ed85f6139bf0301b1e4f65e38a2ecfddcf2a6bae6eb96d31abf664d3c6e856e23aa016da8144b22044158dde97e72c6a6a56e4b550bab5b21aa8e8176bcf1e404b0323a1ab478173329d4bfd3bfd0805eaaf4b5623fc8c3421703fa79c2acf7a682c897310c156fa2d091260cffaa498cad19ae0845c01948e00313a59886080a6162bacaaa72d1e5015d5ad993d1087949b0599b2624effaf62de6406be520a5100fbff6d7b09a3fc3837712b06ff1bb5e4a0bb27fa27d4a975ce296b026084959bb319e7a97fa8b332200d553b26ae612fcb115175524282ade3f3bc6b94d1f5fb1ff05af51b0a338308de8c800e117410417a9595b56537b84f0511303dfe2c540a61590291849f6d8684c13932712ed774d9335dae3663fa5af387c97aa9c5e2d691975b80b2d2a90ef1a560c67d7f8efbc1da303ee8df847e1bbb88ca2bacfff51bd84f07ef7816769f4171471f39af469a84d3237c5ea324929379c8c47e4d779e606ece0425047c7003e5042640acb3a67baf8cc6974853574fd611e19b848cc0efd62903aad8ee40fa46faa93e95648f85b752790bd7963f7a79d81233db85e5b808f139ece2bf25900cfa4336fb6ff5ed42a349d599096daeeb53063fa104fecccf0df38e77708eed67ef13d78672925dbc310a4e0c8932b85c1289b61e12da0b1b71d7f72490a7993b83f52de36ae79fb753c703c75c66672f22dbf803ffd215eb6769b03dea7aa1bccfd86aafde8018a4a8708f6b082678c1410ff74d878d43a567d9ee16ca9fbaa6ac07e47c0f38df8889c3586da77a2dca303a728a16e0d922cb7720101ba17f8bd23d8a1de4770a18a3834e0410bbbd3c7f0ebef4e3c0f02859e7f31d95ea5bf27d1a9f84cb022e7efcf69363db7402bb99e2a503a5e9bf21ec2f77d2441b89d1dc2a974fec7958c81bd68e329b08598ca6b46701bb25f067c73af1d75c3c6f13bba72e4a958f51c795a44d91cc1aab85f1fdb9450d2cfc1b5ad7c341bba823abb312fd97e7463df1ac23ed3a452f4ba981f594d8b4c98ad83c61401c77fc6e12228a014f09148ac0fbc4f6f2337fa6cb421af6723b192f331cfc835321ed84fc947d2a676b2ef900a6bbadbb4997e1653c1fcdfffd1b9c37620a1ae54d54070a77b44d3f395e44c44e0648dc8a0dce5eaa4be48e2a8d17aadea300b08db7485e4b98c8a2ebe59c013daa9e7e8f0fb41eba454d5b4246e6c7f920b4dc6aad8024010a504243962d457629ada8aaafe0fd9cbe26568bb64e010dd4d2693acff25f64bbc4fefa101e1ce28ff4e256d750659e106729e3085fbec8dcac3a63107d10cbd4f0e7d8e2abeeb7b674f0aebeb15d5d4516df536ac3f0f6be523f4532e1ee5483150e1aa8bcbfc89a744e162b4c6c8b943412bc8591f316d3c956aba54022a409cbbce9396a5841567bf8230a1a588e67672e8c3bbca7f6e12331a81804a11cc4c2af9b8aa501fd2f051d94af24cfe7bfed8aee56fef1989845a7f7a23c5f95579afbf4180f1a6aab6de50c4b464aa9c1ce7b4c3d8d6169be364e13ab5b657ea626d894fdf7eba93c460ea063e5c9c47dd4f8953188988b30a54652fa4f64f09628051b2446c44a19fb6159890e5ba225b0b4eefde889ed9dde0d2b5afeb4b0246262943d1c112e8e2caf13ee72591d93d43a5290678a208713040bf37437cfbf2b08b140a03136e1d24e07231697989ab90715019f1e72ddac2d1a20d3a4276f67fa5b825b685dbf3a1d94a19a94a74a0fa5648aaab23636bb6f4332db1aacda75edeac170b83ce82e7e5b80a6adce9d78c1d809403c1222b17f5fcb8d1027b0aaddf3d9dc121f1fb65e6390c6f9a52c2298ece9ac6863997ae87da45c179f77fd58acaee6378c594abe9aef78d93a38b11df1fc30fb2539dddbd0f4a64daf195be14fd026b91bda670a4e313c48ca556e1ae58d0664f04c2ddd3e03f997ad1c684a37adf2604adf7b258bec5bec98b44f28bc257387205431f2aafd6d35f256a8c0528e045c43da2115b9b14bf9aa3bbf8dc5034371a778f89233f865b4a5f1b8a0f1db87036c7e996a4b79545b4da295b787530b2b730e4055fcbce8ef7aa4e8c2cbf6652cc8445c2d92f9a7ddda7553b4738092d57ae11961e0bcefcc01b4f48d1e1c8b36389649bd58d23f603ff9080026b78f4855b46dc73728e5cf6fdee6aaf2e7672e9e3a868a1ed8db846ef1a64eb1836bbbe901f31d3ac4b9a6e0a719f2a97e611bcf6260b4363d2e5bf4259e7a358024ddf0c6e3caea44522e7e8867a39e0a1fe2cb66116164f3758f333ebcb51a4c2ef216d009e24ad7378b56a90ffaca1ee381c1248358d89613639aabbccbb075f26e5a894575031f903391539fc7680e4030d973b074292be3d7ab5d168414b1ddc77aa1474063b76efa099052bd794ccd5cb3bf87bb36f0b9f5f3e90233228e7ca6584b88eba2e0b5b411c46f1bd1d2749406ebbaad7093063fbe7b17f966e8f864668fd056031335e5f3357aa40bcd4e6a8de0f582cb6934e52b531001d2a69f75bd311343f22bc301738c20cb4a2b3904495740e4714acf376fa87e34a69f36347c2f4efac681a6f9e202cb8eb1b91957967d02c92678a506de824d3ba92a427364960e0bc9139752efdc5f490fb8cb475d12d5948f801d2ffb425fb76a9b3b1a2e7b91af04620b5d2947ffd8f5d6c154fffe94855f7c421b4178a71c5014f82c535106f6537e0775665de8a1479d444faf483412f9a2fb3d35fb5ae1bab708605d5d24658da3f5f7d9b414982063bac556b0add6b757e07fc488664ef1c4466c212a8d2d10c311e1b697e07d01e86ad4ce0fc571f390a4702057aec3c25350fe64ee82eeb71a9ed8e5a84cf9322f5b15c861a167e8fbf73be82a106342a1b451263d835484c96bb8f192d5812af29c905c04acf82c226add2acb687bd47737460f0cf2d6d8853bed729f8984214e28dd4e4a6bb3c2d990a90dba15312e4ae18e3fff1133a38109c173e71f8352294fd73412263cce4f2a2b3254ca56afb62b9fb125b91f461ae541869cac29f003159093e970a5475e946b1af19b520923cc00195acdc53f27196080dbdd6530bbd3d60325e64b1a0c43f5745699c037331dc70e20f51bfbbef4b6d3ae2aacb7ae6fdcec9e575abd0a640460e2b9a0e09297063d2716a61c55e57e4a371c06cef325a6f5eb909a9920bd426b6a658177cebc3c148bb8dbe2a8303858e5a8b9ae2bec19d13b2609192c0f0ec2d4aa97e879a2faf7f63620fab85bdcca3e9941e28e4b3c17a375d11b7e10faefb0da38bd029bafd7d3097ce4f811ef2dcd778655bf12b93270ea8d4929fca0882cb2ec27361df384f74c44584a22d6501cfed921a5d0a2b0ba3f0ab5d831ca8c7ac9d51c4e3dd154b4708feae2f28cd6c2786e37702eeb1d13ad9192e792781e4199c155f14b4392edba266ad8b6d9d521e8922484f2f4da6b220af87210ed49adcbe059ab20536bba226e35835e34d87115336176aab29bce5aedda1b5a5501216f660a86fe3e436842554dc39ec03a9e1b100cfe8f9c975f9d8713fe014534a06606156b4bb3ee943ddd39b239d8342f2451d76ee5d620886e5d719305e18e63747ad9130f6eae2c4ecb25183739e4f62fbf6dc9c197cb33600922f04aeea8ea707b2a77fb75b5af2019efd53df1e3804872cf254b6e7315c094baf8c7a447c542711e2522429ea0f1f03c5e78d701e5b1d857d62464e8bdf58b248655c747226e8148fe35ec935ebf6c3e3fc35b9426c14740c0e139094eece0889ab86f6742a1536a2e7cc532f5f737af0a61598cb9dae7f260875f76f2e118c3505b2a76f36e6dfc646b20a8dce1dc993391ecdc11a0701e74b477c970d26b7be4e1740e5e51c559a85e9ef047aff9afab25cd5d13ba7e03d153f649a3913e4e8fb47cbd19e1b292d44d759e73745154780b2207252631ac9565b827f888d5b6d616351fe23c0bcad239af35b1068f6a45f273e1c4c2f673364e1eed40bb83b73efb897a43d27f753cd439d1a9b1e23526986b4518b01948bdb49643f4bb3c112d684ca6213e73091649ebdce077921fbaea02923bf335c19c1ee61fcbc8da9f24526a55d1d7c182c3d4141e07b3f2802fd96a58277941f511827f82f522092761981c763cb1ed203f8ff13b70e6bb08f7cbee38bdd21e4ea13d2898d5712f294901cb9fdb664f4d8008e322a4d780f3223f12375735d6acbf4aa591f26f99900ccf8f77985e6377e73508ce9ad6bb90b0c9c089ab144e9afb7cab34a85858b612f8d97622ed75cc149856e5318956116f86c7fe5d1d0a5b33b1deb6ee74cf05d1ec98e3c0cedb17b6460922128228eb5a17bb5cde9fb24ddfd13178dfe4ce00f15752964c951a0bed2a41f0e999e66b0cdadeb1c7cb5fa4aac37f95e548c3595c8b4bff97d4162c79f6be5d8e45973f7f26889f8708dba5279f68870172e64e1bdd59bf19d80222a54d7711c1e886237c8f46aae581d9290d7131320d1691b14058488b24c31a1ca691a9e29821cf4b3a6917b17eec5d4d521131eec8890855298f4f1c297e6d0f8857e335fe032b7c134b6757e3f5ff4aa5ab9183cdb6a5136f6b232030d82893c70031cea4bf508a44a62c6d505186398066f7b796e4185de71b05d26ddc454b5dc4faece6ed5e84e4571464a2969e73485d18a8706537d0b6412334e7b5b81e10b2bd637ea643e115fc6e7ecc5ddd9ac3ca9408015ead1d7805b767d52318bd678afd6690b9c7715ee3e5a8ed6d04766091e4f72900fdbbd8ae3a253d5b7dc22219370a058a6a2a461e381926853a50d28cf1b7428c73a7c93836ea0ddd9e7ee47cc9574007bf8cb9bf8151795951e0e849a7221a69962a5fab82c568f6932ad7fd5e470122fc28b6c427e6395d9274b36c3a2bc685373f4cf0521ea129ca196dca1b487cf4ada192f3c1320a1cea3f1dfaad6855f09abb461afc9517f155cb64a02a2ce1bd94474329181dfe851db80f39d18df3588ab64813bc77d6323d6f569f02aacaacdf058db7c7c3b40e2911f5ff52c81bf2ffc9bb1247136b584d621a8a617e25d7ec33ae14dca8f654871e7947b208b04a18c012ed0f0b887216c592a2844b90ba51d5ae9841f2503098b2d6e3d011c542312c3af976853d77d5ab2d3eb865a8629fe2d21f53aebcc5a6f6ab61e99b25754bcc0a770ff8054375f764ec7c8744248b69757006fd30ab4aed0d1584c24b93cb179529fc9910e2f677554469dbd46e27fe72c1d18a58e2f7d10c0c196fe452456b0cd60088d9b03ce5866bf8da9423b7880f4506db50eab62aaea659796bf8046538fffd5594d2af303307f95ae853133ba6a4603d475898779e0c86a863e152f532d4d51ea68ab0cee4c5e2680da1abf5a851f7b97c52c13e67f74f698ce0e4450d70cacab1e43190da1d1f2a2c96a70d98194df9d491fb9816b876ce50c7e874e734f8542902a1bf8d0af8ad92b06e2dbed3d8fdbfcf84e6058c26a1272dc897d1b4fb1aaea8ddc69ab172be34c84531422b94835d832edba1ca91ff1d1be2dee831e17e9b400b5bdf2230ebb4e8822139754c46bc122c84f28d5feef862b7f932c7016d9ac2bf5692d6d9de0ee1d69e44aeb7ace284bcd9556ec4d7db487b7477164545268d47977dda55b320623316c50058ae8ca33311edba4ebf9c3ba227c75c83f8b172115001358cee1ea8b53d17eeeb6e150dcd82529ef9689f65271e244731afe83103f6c672b25b57045518987fbd0bec185173d6242b37ae066520635b0925f2ac4ea494d0fd4d24710f52fc616ca55af1811b15aa42e67e87a0bb118c376c65af8f1fec39d04466b4ed62a204fcd943bcfeb96f00f8d8ebea199a86a3996e5b9a5a62205511fe5cc7313f874b9cc612ac0b50b73bf610bed4bd169d44f16c503978ba8c7eecff49c674164af628df1a3d43e8c460675055fd792ee9a47ec8940d4d33a8ae301ba169d02d32d154af9fb7dbc88bb34f030ca8717f117218d67e2c2e8c835546e21a0f75bda4f5b39f382abd9f69ee248fd8d9f0de984be55b0986d4c51b0cec248402ce222b5b91962335210c8c4aec9d1b8798b3c29347b28352a600942dbf9dff09b8269d4172fb8f843f8c9e402bf2b2e4f58932d17c883d069e9f154e94acb28de90df7c52aff678b84c2a8db262c61efbe6199153280a36dd3b87cbdc756e9337b1ecf7194e4e519d33742198eca4942430832f79edf1d3e605fd3eeb74eb43b31cd39925715cd39b704b8697efa842ddabffa579beda2f025cfdc35188b8370c5e0e25fe12dcd44d35884159b0ac553e33cc59458e3262c493221cd64055ab4021c9bd349d62d50a805b21ff37c7f0b6a956b5591ae0dc8cc0ec3e3fe075b21ce2b515bf2ddc7350f7d012094717b44fd7a82171dd5b1261364febe6af6fe6821d87cfd0169d115d95a913b0fdf47d42a417434b7f9f2c68d7a281404330ef17b710bfba36fa2abaf306152748c4ad6b756bea51d8693690dee62733327e336fede7424d9238828f1ccb9ae55d10bdb6617742384d2dadf3a9618642752690c7214453f57916296a59f2b9d5066b6a7cb354a08ac0bfe67f8f145a47666fd8fce166b8779e6437403d006a9995b54940faed07860140544ad3acc8e4d03bd996ab262babb21481c038b77fab8075314ab31a1e90da0d004251e9ed00dd5fde22d71bcaf96e6bd35a44d5dc611269ed37ee2bfe5476e0ad34f2f7f504bc9a5926b5a61e01d0ed3a5bfb0cc5147505ef64427f1f3eddff0853ebf2e75b7f2e7b9a7cea9453f02ee21116721304481436cef77ee0bb5e3517e0d27a14d0e9b7519073c762841229aeb9be471579fe8cecccbada0eb8998af6b58fe3085e9a66bfe4c7528ef9ea93d007e8117680b45eb468d6055db8049c4be8ab8e730ed547e3dc2cb221c870b58b19feaa8271918105b1603d3e7a985b7f377678e172aa083547861cdbc594c609c9a153703da8ea8962148a030f572861f4e7bb8a4c73da85f747a65f0b1ca4952fd94493ea61fcfe1ef4accb4e209d0cab6796c14d98a7dc29e2f2376f11d51da6c8b47b1ef41d77be1c6fa45c04354a052e4f3b63c241cf281ba4dce54f43069a12983bae452c2595ca984dcce6e786ff7ab1931f48702447dc1cb3e9d3a9eb50989e333cf1dfb99dc27026ec892f0da859765e482551a39251d8a546ffa7e26ef13e0cf75dd4d992fd7d769cb036c1c2626559de5ae405d24076ae6308e32177378874464a3162c6530ae71faf54afd7f4cbefa192f2e730a9970b092c581a2da418174f37de6b540ca789faac58119cd86fd36c5e05825a3daf321124b6069fa0249284c2d2d43653a9c3f9e1d5aa76e39c5c59ec7cdff109e77b4f08705a9edccc63967d5c0d29da96b27cec1124fb552368b91ef65804a0d218b7136b9e2c7d44d94c81c3d3aeef1cc93c43b2cebf6e2681dff19a30d89667eb9714aaad2c0f92543aa229d3340863d17e4deb758761ecfda0e51c97a3e05a7d7e0ff41101fdd3958be6e0b1a742e831d1712fd39a6fb88ab1bbd8b3ce8918040b734c4e1b31f23cfb56d370a3ceb39a9f79bcb7816bedc79b5a6039b5e94beb78447b7391b79175de4312fd79b126e8e0e0f15889a6e0c567545526113af2c5e5a9a36391b8b41a29d23a90b00ec06ecc0351f05c0dffcc67cf1f90542dabc815cda39221366152e309ee8dd6230b5683d21fae0a471fc784e0775d90b4ec1fc3502f9a2c8e8fcbaf1a1762abb905df03d7460d562d6d415e2b61ed3442f4c419d03f7e682e585fa33ad53aaf0c62ba4eb27305c4b628b678d6cf8c3c0bfaf733d58e93205cb81d64d976ea0d5c899b5d80ca33b12970e4c88a4e9c24d62efa27603cee64c203113d1d84cd94e88f4b374fc111c673454d1b9e704330ddf8790603cf7ac9726c8b63f305a99f369f4ca9b734c5290d25805b70a1d45db174e8cff6a7a7dea45a64a234417c635f7c01de20b33e32b3b5b624e459f2fd5e94ea9d7ae33edf887f0df3dfcbadd31bd751b1695fc854ace80c488be294c8ea23295fc235ce0a67557ee5285456d26d4cae12be4347dc8c37b72e8e30e72f3e5f961a9d82240b17609fc828ebec8b0a93e079c98b011bd07205c6861146b168e4116ab8c178e36f274d030239b4363fa6a7fa3e132c0c6f436008706ac819defff9d717331608b57bfa7dc1de6b5f748aa221e40e8a67460e8e7464b56c3696235708ed8873a193817f13ffb8fb1825b6385906d862b1e5ed97298195bc3fcb77d71667a6234ab405e0346e7af3c5c5dd9914f7db85af9fa33112a6217a2065992d43d9dd195f003dfe092631774acfe45a740896869cc5be0799a671bcdd0c847f9bdb8c767c630bc6c60e04ce426204f8a852a70d1a22a191b91733be14fc5b1d3e631594029377587f5d0b2cf538d7bee332a00b55ff6266791df8625898edd3cc82ac3e4ddc6de035d224056e861bbd060a29f1d28b688976d380d01803fae05e90c94a6bc854175fbdf5b1158fe3fa965506e3006deab23b9693228cd77819a390ca0547f1451dfbd5f755e36ef2759e1a99862d3bd40b2a0c172ca5a2a428a265fbc3a5af87d4cd0336e93d0ab9767d34e0e558d7e9d8e0a7293976358007341fd1d1ce9a119c9eec6dc37d085002b4f84d08e050001c2d7ed8662e17807796e80cba6f69731de53fd120300cc4a4b0d54a9de90bb6f3e153e21268894cabf0e48d0ecf6b36b595fc37076976bd49bc1069581f0e178d1c68358cc5e7f00b5f1d1d790e40ce8f10295e331c6dc80184254cb2a4b99f400f1d6b858af7fbab0108c21ece90f7ed521d7af31c66e71b11816f7e8fb36548091c6d14ffcef44b229d81effaa4e99e84f086c938e2ddb6af3847942bcc49c93e787f62517478674a8511e9b6f17a7f9d7776ae6524d32f7aa243d9b2112cdadf473503370305560829a28ef30f7e43756ce7ae671e930cef104e1f9b5f0461f4f0522cd487cf4bb8d15666927ef91b495c4a37906734814f9503e6ab421473ca76b6bc17c011a51d34d05dfbcd04ab7660807f2cd7451cc2bff7685dcb0c4301f70b3ef4fd5a1c3be64bc655bbc0600c60d72ff6cda6852485b1a684b4c82204b18b644585956d194d83eb597ecb7e00ad0b5e1a857a54ab52a66cc5cf5315fab280b7429e40c025975335a1333a858967fe71f0181955abd9f76af6b02eed6c201fd320bf7a6dee2f063005295476485d3a01e9b52034a79668b97e61d0e28626b4d6d243c3c055a19cdc3b1ba82e884b3d67befe9a2c1480f41d2f8a5e62084e99ee849ae206ef3a751f2dff7b97c5d404a75f420d21c3575d4a393b57444c3a88a5d8c96548ebe8c7aedf13204982e18a97b6aa0083660cd4515f7f7c11ad4f3f9abee4389f6c7c45ce06d52ed6493ffb0816354cd145db94081ce94873805b8414725545cba6ccea9665ef708331ce423ae8523779bcdbbda065c81c21df027b73b36749582946e6905c36bc0eb7a06015b38219d7a32821c53ae5e7273df72441abaa1bc9a3deab1f9a8fb15f58ceeaac740afcd83162ca25a7e496e57cd73b5abd7d828be1fbeaf5315302c18d1502e9bcd745a0c02952b3dc5225bd57c9139cb854560cf2dfa285c59e1300a5eccf803c3afacbd8e45a60e65d6a2a286fa26ae114698e3d4471d27a7067ef283ca55abd14e0f0c5374942a43cc6c5deab059ebae741ca794840f4add7a905c6d724e88c458dc8453f968d1d21ce99dc26fca5b8ff287f25b37ab8b118da15757a9c739aa948c128a0a8d6ee7c393d4542156f68fe45a8428ebc763ec7543335d7f98cca5b0ff3e4b02dae79ce6684ca319d3f1e55f03fa9cc2d07c248c420e7c7f025b612dba8af19862080271c336c887fcc01f9a0a433d1903d51937c389f2401efcb0e122f764a9b913f3853582699a6837af3576a3159b7d7a4f97638120ce61c4933569f39abf7f4bfb128c80a3cab9ffa07ac2825a596c335021dfc2526b1d600d98e29bb67f3c4b73e5cba8501803bf70fd9dfe8991dedd97af6fe65522800a42dc41e638454aa9c28512e7958232b36d33a0e3d1267c073669327f3b6bdf9dfbed38a6c77a7225b44a0f5869576c4ddc9f9ed532516e09462f94af1ee28dc6f77edf9397c7d3a7479a87626c9fa67d4124351e6795891cbb89900bcc0b5bce416a8d1dbea0935c9145a024f74630d03563d360149d81b517525d12839a7cc1a49da207616114a089169e9d1eee0a242c40120dda1e600e561f057cd7cace788b2dcbbd3dd821391e836e6046a1535236c7400f423ac782aa06679e5386b7360528ccfbdb2da6844574cdff365218c9fd62865dad32c1fbb9494bd8e67c080fa7198dde40ec06392ff8e072afd2a15498758f543ec7b7e29ab289109eaeac54497266a3a18a445b1afbd9c190caf9103d07978e2c58a30943d1efb2f3c5164e7e5ac739521941e8ad96c77c1a7c64090355817e662ad737ea6fc4f35504ff0362653f804b30efeb7b380aaa1767b75418f8365fa8b3a8a67e568a22cbecf01a2ed1e82bb051a8a49f36e058efb4dba515a03b92f26d9a87ebbbcf0c0b423ecaac2f2cc341138986403f9c3b2fac4313d02774c53114c82858284dd018862e261d3004f355aad60d8901eeeacab0f9e0d0429d7e0dedfb21386adcc235cd01d9850beb73acf5ed01e5f5de43c3ad2466b4faca25e32ef44f8c4950f09686dd4252563124b17563735d7b1b8550b4a5ddb7e585f0c9b030b1b92000aa8da04d68e59122f47a42d6d78d1b1b36ed0e99b3e069ea19f54cdd5ee3fb63de8ebc5f153f4aa8595ced1663bd2e75cc5c11ffa395e0d873a57a326176dd3897717819825819199e652d0c1463bca05e2d7389f4030b7a3b4a68fe5087518d9433b5ac42accd37586a26a4d263238201acd04d5190bf7793486bbe2aa452187636699b6a8ddf931382c13494313c643047f116255c553e423b0eac1807bda49e239b015007c4dc7b13e5ae91685b5107af48fbfeee4ba24a99097c93a9778d316db71390f70b3015ef84924df6430d3886dbfbc3988f9cafc8732ff1ff84c841e84644022d2688dae6189d7b9c8991ff111dd5467f631533d6a0e314fce52d9c5a45ed5512254e47cc5b847aa17910efbe8ef0a2a692709e5040d99f8e9ec5c695defa067d9384dfd18cea41e762a78ec5fca4872570a6135fce506cf27260b23c06e15a40af19a03119733a7424ea5515efcfbf57076e609e602a32b566f0547caa4b26796fe3fadb60e4d6f45c91c3d251f5c7b4be5b349b6aff3ed5791d99d17572db54629e59a8f0acc2e7d177324ec641c261fd0a2b1182f94466e31698400b7357d91f8bf3d495248ae0281b9fd36d0d6ab0a5b66cf0aaa6e538496c62d641fad609d14a90959a5d139bf8e6b08800eeaf492976814ff65ad075eb99edc95e3128636a2973188dfae9bcaeaf0b7e4432b4b1a7c66aba09ebc1691e7422f1b098a439f0d75f5a7a159311bd50bc65e3b47a17b9a4c3739aeaeb2df4d3afbdacfd210b1cc2cf5c580780eeac7fa8282195b382ab86c22d105411beef761ecc14875bf496d71bd23efaff91867f007f14fab9435ceca33d5b4c02fba23e511342569a78b587b911ec6505081c9161ef8e78545ca1f534c58bd52a11684d81a20fb8031e1080c04159fd9698e315a82096c3203d499300a3777fb7cd1f5d9529f7fcf75b842670a159fa88f0921e9fa12f804aef7f289fe4f57a659ae7c8ffc39e67d4ba77b1afd4e1f9b24ded50cc56e8b765dabe0735a82feea3ed682c4d8b41514ab7984753d9029f4790ea1fc552599f73c45c3509dccdace0cd229f22bfeb242504548dbe63abb01faae1656546b43d3f813dc2064193b6e7fe189d4e696c373d98515376ffcd8a5e9c8b446c84821d3f7e8e59824fffbb220e392b6ced5059dcb43a32ade086bcd9aec88def981a9e288149e597bfac731a3f590d7f420b133309d20ad2d7e706c37f490a2f4edc925550f91bf6c5c41d567012fd41dc1c0f769e652662c4e18d5d88c5e7d90bc6e38f2b5597bd4168e37eb17647aba729c4bc7d90d14004694bb3e2ed14c59b9b176f0be6b54e0f83b44e13efcd489ee34c7abbea0b7c1b1d9d1b1c11a9f5c74acf5a7b1921e907c9dbc79ca43357a5638f69851e458109790d6a7c7afbbf51865cdcb5aa6e99d6accbe52737dac7f3c45b41142020713588684d1dafa096dbe3d654fcf52a5f7dea353e2ccbf0f65c2af91066e08d2c97369dff15eb75431d988fbc52ba21ee692156f4fbb6a91a296a342c7df7b4ef57ac386d18eff9f9fca129719ef246d6c07fb2a0fee4a8a3fd05f52295082035f16472f39905154055e3787a2c5ffb973445372e994814998ccb808c779abe579e6fdafff5399c60c78c5b6f856c414dc3241fe37a66f88e068c27c4eb1a953cf25f55010d2d57507390c5e4ea38ceb3be383dc2a7f6df70083a4425bb20782f517fbbd0883fee3c6f51e6cc04d06adcb68e1e6e1ca89915d8e214333fe66e546adca8fba8e722e62f6431ec03e9554ddb18efda0d5bf3a9e228beb82c35b5af0d1467a57dc012c1ebc0adfeb0b25ef1cea995c57dc21c72ee6eb702ebe392daa879a43594627b462c3b2b4d9a7d4af32bdeeb7d443b944ca5deb5375179845e039bdd60e184046bc4b5147b16ab36521d476e2df53593626f854ceb179baa3a213a8672c64e1f67e349debb135fca722bd6f1b6d867dc4f0b356d75c30bba68481b423e702827569902f49cdece6c24366ce76fc01994a16db62b08fd2cf1a9a5f1045e24776e9c4650684e7b351b2262e7579cfc6b57b77c7859f5215828e8b3b174afeddc61ad6094b8f98ee17437137657fe8342cd13c542c8b51bcb2caae199f5389960e22095ff8dc713d8a2deede77e36913f84bf47a53648cce356af23b4a7d0e7ba4354a0baa5389b980f98da4a522a12d5b9bff7c2b7e501b2bd552338a4ed7ad6746265d7ca5669d6d8fe3856430fb167b8e9c1a9b7f5c084ec6d4570b121c8a9d5c0e60985fd505e8ada21b0f851908ebe04dd0aa18739291e5816fd8691e78e6f5c4d8edfdc4c75f3f25470eb3f54a399dbdde1c3b7f8effb3465b3001c5342bfe9608e94ada038183ac85566ae3c47a05dbc827a91764af0dc14495b844243c44826d001a55ebfad47494034398c2ec41fcf59a304d0eb66e19f6c5b56e8710ed8de068412ce347c0d315bd3b2414a837ed50c51f7948579a8de840b987cec08a5382fa2e5b6ce3fe696e52515b39ae96731672b109baa41324884915b73ce1edc32cbb0d0a791a6230d740f85f1a6666bec8f50a6b001bcb54bbd21d391056bfcee97b85061e19fa382bbf4a2c41fa08f1e23ade7f4cc60a550293e845ac3d9bc810c86912273c258be3fe08d254022a0e9877b37c2d149909bc90ed6bed00b59a66e6c09105595eb5f36ddc119dc7ff2916895b04c3ba08224e9300bcfd0454c2c1bc8081422848803afe9d2785881393129db3f0ee429ca3694e3d84f092e3e0c06f752fd5ab0e6b10db0060a38bd7a2a56e7c7d6bdc7381e14cd50faf0937b732301473f66e2b218f08f21f25c2ce91c892f4f985fe984343d6e95db80f0ddbd9b1cdf268aeb585412bc680ae4ee8daa5fe38ecc39ac56a9c29194ea6c5dc4159c948f48c24f10e903422a43e2c1c3716443893c137fa9ed3fd18b1690a42e5906a31f2b5304bcbcfb848e789ec7e7162c7ef36ad1570b70e198770f1c66cea0854511dd6b9d558c4b3e2628253a93485c826ee3afa7d2ad5316a4646775d43a1550b8bc04e069effbe29673fb1a3f8e3033fe42c8e47ab98b4036e2d70e36502f8927e08a609fe9a5ae8c85cc9df654ff4f37f77f02312ca1e76d5cd2adb9ba5a189666d409287a64a9c426da6fb8d51a1c9da8dddcc092f87f7efa620dd61fd455c1ca3eb3788230f7aadba5739c04b1c5773c0ecc4ba1f1387c94df192fa95464515f7bf299f27f1cce599dbdf972873dd0369e5b229e496e7cea52f87464d52be69bcd603d69f7fef9ad31dd6660c72229cd9fb78ad4f54ccfc70ad4c45ea035cd0caf003b8cfa91aa3041183aa848f603878223706cc080a6740527e64ffd0a96111e108f86a79aab543b4dd799560f8c8ec80e97df3aa549b256f2acc91de6e9c47b50c14e8dcab8a51080761a6a347cb07de4d98ff10d522d067a1c3a18529cc77aa557163177262640a73246f854c8d12e293860b21e65368c82f1964df9d761fd119df16bedaff0aad2170dbff27675535f9d6e02fc08da5ae63b0471453e373be2e508492ded33097954d3486b0967c5175ed62b8973c80d2f8ec6c49ce80fe9d2b8c2f00b409bf8d91c67d9894eba60d2a45ff79b129de46bff73eb09bd04ffffab908ed5c84f93005bf8a5aa6ab07c443ece1d15f363ade636dd1e3d21834da9ed0c8f1ae9e81de277f95fc55476164711ac6b30d67b55f453572e4f38f9c0135959e757d1a1c8b4d09cb385392ba10d548e53bc6efee047da7894b087c1796252283113cfd13dc3cf4b5d6a47171b82b68e2a8f324b511ee31988853ebf19a5a2d980b8671e71223df3f1b4f3dd91a0a6571111b4617c1e8c226a8eddd536e45a04b3699d7fd9f5261ea0efcc905309a5eb1771eff1c11c2bda4889509edfc2d34773f346c9d1d6356fe1998c842898fa944584c2d257fcd95fc9d2d5f38eafd9e4fc929aad6b25ecba3b959d862bc7aceeabe82637ffedabb2ce9b08f3ffa60d3495c36ce36421e119db60cee6a2240d4b747bd803925bddcc1a33bd4e70a086947a4db016c1824fcdcaf14905669b8ff3a2c81a18ab00470d49502d8cd59f8a20373515e1fbd6741661329a7408ea809907d56160bdc3b6193930048e83333f42f8802c4ae29303abc67017503e8507377ef8774eaa8176c0bdd980487ac30692d0fbfd790ed6ec0d1297f3270e3148cce20d72ae76c07a3271badab0466f8e85ad83bcc218577f852c142d4e620c49fe179a815f465875d1f886a33f946c3b9ddaed48e164ebf3136a6e94a768c08f7e6b28374a6d406eec68601d7439b57ff425b2faa118260820eb49a1ea6f6eef13ca871eac9e82b8ff61091fbfa9e00308da22f65008dfbc13e2e9226b863f6dda7ee6368735c1afa0dbd5331614f19e1978d6fafd31bbb17908e9e2d6e3ebc2189bbb789f8ff1fd77b1bbc0bad0511a693fe0b8b58dbe18f81bba5e7469900ac5473b730986c47359c9e818dc9a3dc642e68b9226c94e0daae6e7c0dad91a9a12589b64ae2b554db70b9d7aea99cf958c4db8fee6e1467ec4e9c3d6233095fc0c6259888021778e0cea2adc2b98c23e33e8d248e697bd1ec3af9eb20274f48cf37a429c048ca2531a154bd66408cf1b15718151b655546be078512547dbc950af942fe9654492fbfb87cb168c94869b7eab54ba958a60499ac8d854fa8a979c20c329070ecb0f9e4ffe3fa94700f76f9e6d454dcff87fe8c8db622d93b20643df26ba692ffaa4d2e5395a092eb51cda0b694284dfa53e27692513c765c191f71ad2910f562f3b3aa4d6c557f18d180912ea2670ca57d14808299f59c5864c1d8bd44f304670878311cd59153a96d764eb47e0034d73e2cd17e3b12d70b84190b19ee3cb16074f02cd0d2db96293e0977845b6a0e69c0109748481fa663229aa2a839de784540abf55181be9ab7ee66cd7fdbcd2477b4bde6960828b7927f1b63d33883c71d4de2cbd58e77391d3bf518229c947e35778e605032cbf9bcfcd5d530cabdb3f28bccee36938820feb9b1f4f87198c866946d29b9d7d3d0f5d27f2d8423a7065cddf409eed76b46f1ceb0d6477e30344e66be2dc02da9f90add9bb4f21b157b511397455eaa0a1452ef2cf32e575ecbb4f773cd6e1c9da0fa457e505b7d339124b7ed4173d91744c6b2d27e20587b23bd9531aad7d41f0192e1e591c958e16e88c1320ecaa4059fd6f284f71a5e81ed335882b9cdd727fa5184a9fbad6175db55c337e8443197befb7aff119313b5d6523abeb2425d2788310dfb46967d6e2f010ee5fb80f360cf93081f3b903ef3c74a05206d3838076725978066b3caa92da82b232b11f58d09fd0e26dea6991de022cb7855b0b80d72035a3d47fd50cf535be8d001cb9d801e2bdde4f1056bcdb4ed92418ae4f86d418ef5d1af19cbcb7f783535e7f90ced472e5b03b84b88f3955f94881b75ca9b39fdd708ca92c4aa4dc9442f1d215055706973d59d7bf9dbb7baa418133a39fab42db8b5a7cb142cc798c9ef98e3bee32f932041e64c37e251d709d4060473f7908ffd899242e9fa70dc67980845c5c68bae56eab31d49c96bbc555e5095b5af737fd91c341052ebd2d7d492ee11fe577c184a39871af5d6ef1471f58b47ae85e30186fd9d2d93d88da260331ba9021d4bc7dba38f567ee4efc0f9f2af9fdf8c44da207ea6ceec30b8a42094ef3a8474f56396926307852f2be0b19d9162a15abedf9a2ebe8fbcc366e65fab5c58c3cb6112d7d16a4819837380c1f3893416fc468599ed43a2562ee240f00cfa1d88c398cfd56d70f85f2f789653c4c3afeadae5922a48f79d18a8d9517fe6d4df5f83e5fda6edb22622991f5c093a3b4923f4a813e77db90e1a9a1a369ec59ec5852cc38c831770b9757b70f8e063c5c46e540d47982a531d95152c71f9c4c49c13fdb379e721a8e7d5878e8fc55e299f088025e5e26004e4c3a4047fb92f94b971500e47546b4fdab4f9f89f02505537fddc645ab4809c407407b21382cdd4ece924306df83f5a29b702dbc22674bcb3e4e4e07ae5b1c2a90f9dfdb849cfda8b165a43e275c2b725002245f60fd51518844263e2303714faecd86f429571e10351f1d0a8c2965290b8680a17200849e8ad4c7c536a310880e63210a5a10fc0deafbbce3578b345a955f44b61c4ce2a3a273000f474c15b7e82fefe618d582036937a79f4b0eb92dd3aaa9dc1ebe508a3326e1ad427ac5521fcd2207dcf332226d54af8d71a199758c8f4a2d660040c9a50f432e0b3f1785dbf58d658a98f816ae21d5d838e59811e571c79e0e09fa228afadf03b1cae820e5d3070a94286fb667044094dcb92454670570514612e79023ef08f3fef81ef4865f17c693d6f2161e59ec6aba26d0a8013f1cd7ebd9da01963fa11a21cd7a6fd203cf11a54676730c95cf793990283125f268b1cdc6ce59dded5ec99e0ea41f14340eb58656677d914efe09a83c4227a12fd37f62fec9fbe4565bd6662c2fdf93df7f4fea629ce8f550762e61397940e494a2b404191df354a9df1350baa5c0e8587c5dc6af73a8d6995670a97d2780a809a68db69ca8fc3236a88ad1efe216609d4f266cdbe8e77fbf3e2960533aa318e2f33c5a4d4c07f548f5768323ef8d690c68990de935c35a740835a0d07948ab198771f9e888b57c3dc9bea5458e48b80c4e213ca2779dc6b39da021d9c63a16c93d500150158c14a8884b235ce98961bf29b75979b3b24c7b0aec5d486145450d7c49c871be4fac55373278c8f23971f7ec57a1bbd1b436112626ef367d6c5be2aceac8f8773a681813a2263175c0fcde0c92a808d277e1be1f08c765aa56d03cfb96389f028dd6c51877994448185ee0bb8ac345a5d40ce52de2f9ee226ef168821695612678598805c4bb4d954bbe4a6631b85fbad51fd0adf50089e679c51fad317b83e646d24faa56136879fbd00baf657066852c8fd5c879f30d7df05f639c87ccb63045e1a382ac9bbd647c168597bec59dd637dab855601042a9b215cc9fd3e1dc3e7b83840decd2ff8117cb194ba28ed167cfc9e2dec0bf28d0a046319893232313c84c4c8b43e9bdb2b50397fcefebc73991f60d80a02444b93371da39b662dab5d681ea2aa0c51468948fb72a2001cc4c036b108bc11e3e4787af4ac374ff7da38c74ae89f58cbfda0529811d60f8dc12e1711bb9a6912c141d05f7e936398e8720e23cc717a74761024fefb01b9e7b44c7290dc2aaac3d22042d52a4aadab94fa799a00c21cb7ebdca94484d81d3bba6685dfefebe85800c5f958d747a4f397220b3f0b5c205d8e76d38b2985d21ba978f70db8c397b07b70dd9110436b1d0d11d2d16a75cb3989db605aa483cb16b9a15f3a70349df787e959adf297c2d0b27b55e9242177f2a2f4f451ba08d0daa8aa4cb6ab1ae55287538fe8c43d4c71adbf738eb58e77c91dc004715391c2261eb6971402c73be3ab23be01dd35f79c82bdff87d21383127b9334cefc64b19651cb49c67309f2859d10c660c034231774bf0a8a15c80d703cc41632cd578aefa2aaaaab8d1620e654e10fed5c41ab76cf5b6f19276a2d22ed9976e1fdc7e5b604a6b8395fcebdc379fab9dc15950f0703f0549b68aa02a6fda301f1b7eb23c79eefe277a15856df0842fb161ce857ab62edcf58bfcdcce4bc9f18591f33bcbfd35a9cc699994ad2b6c77d576f006c9ab15c7ff4d2e35f0a9c1c83d1581fc4f608600348629f19fda3193c5cfc41e13e95f78d11efe85f4ee1602add03fb3d4ececc44c4e8ac491a91b612b1d202fda79dfdd43390123769890ba296078179ee08538da82b0ec85cf44c0570a462dbd511725512ce573024afeebf7aa71d1db4a613f50fc9c6d17829c951f9f08ea3ac31a500078b5ed2f0319a4a60589f2eb34131e1e343e47f95cef094edd407e53fd8a1f34576f00c68ee68e6914599a7138b08146486fb7f7532ee0c63993a40c6735127676c31de48792a0915da38f35df9e811001826056f77ee473370085b34a5e234f7205b1cc38734b45ce92c3d69eb8bc208d76d776d3c312a3635110cbcd1c33d43c8d3b054bb3835cec39fa16b2ee78bb4529334616a4702b658e03f918e7a5be8adaa1caa920808db46a996f338d360e267d80b7b479c8e543392da492e74cf9349cee902f5a8dc58f9b8454696ea843181321bb50ada6b1b18951c91bc20eac03ecaf34e78abe855e570fc9ba8661bf1afe7b1fbce3c2d7c635dd11f06f43dc026885d6e02ba928662f04ee7fe6b38b4978d5d18f250ce215e9ff21f2dc9f58280b0fa04585f28dbb118d23edabc38b47c219ed408b8e7aaf961f5ce7c55b78661e5a91e49587b188c615f1e435996e7888094095f1b7624f9c46deb06dd43be92e52884f7903d374bff6fcbad0b1d1a4fe26ff80c17aa56f8bdc64eb51bfb3ffe23e87f677dc18cb13ffe780e5ee2139a05c196a1b12f3c42d4a65b8cc819317893b07e5bd2182b8caf28ff14eccb9ecc63e00c274c5b4c54a0d8655f6cb484015c0c4af1760c0eb177dab1b24e62463c7040a8533f0d0e1fe9d1b420202aed84b83af853e1ffeba8c847841e2071b6a37af00c2d5cdb728919425c2402796ed7381e704992100c06b49be29618a582a46a4de4a8b28b2833a259de29270794e29d4db7b7c54652c701546134154405ef958b1f3ef2882e2b30d369aab97195e9ea4a603af01edc95351402cff05b694a0acdee663a2d790f3608f3d23b521fc967d7f3939c8b5d6cc7ea6430fb5374198e4e9bec1de8a8e6288d2a44c867cdbb9688e0b5f5078435e7ace707b26983061b831176413032957748905283c06d436739de53a1aa5e215dfbaa43d45727ce3f8fcc52ddc14f2f4ae004ba1bcac15e34e65028667712fa20cec789aab9bc2d0be4f1af35d8a11128fe0f1becdd3fe22cce72e82e28cd72b5d1fed0b9f9ceafbf9f1543f2cb9a59ac0c1ea0907c19191598a5dc78f9ac39cb31212823e4db420c05d9974f5df05ff0953f537edb69c5e417f927f1ec27a5827147c2083c6b7e8a751d686a3e150fee83aaa7daf8d7771829625e9c821cf4b8b70bf7bc5b3cb9c80ec7aacd62b34c629a7e314485d55b13fec85b32cd692dd22d50bcb0f6d8a81d86fe8086b4d0bb6c66bffc1f1092c4485083dd54f424011cb6baa7830ad6f08ce5e346e014c7bdbd50b4bf7a0af1e70bd2362f838e9e30f12b5b4b0167d1416648417542905d77768c1598a7065760de0dddbc80fd5d416fe0bd1141300b6deba7407db0fbf27988598cfc1c6deb596184d0e0162c7f6976d65ee610e498e9929e773d0924f8a677a91a051ac43a0a2369483d5763cd80f2d90b3ed5e56dd3033b6d7f101e2bb369d220b8c0a6b5bf5771059d5440aea0abf9432c64592156170b143a2beb969a174aa371d2007699d5a9d43ab04c72b1e2e09dad6b119d0bfef5c7a750b6529a30f6227a07adea77ddc2e05e5c2eaebaf6fe557dbe5ce0f5590cad01fd1afb0b081493a54cc796b5ac8e11fc4859f97b29eb4c90889ae3abb7e17af8526c5800e58afb46a5610f9387084b60c2df8eee083dff22565ebfd1e613494c8dcc3ece328e35a3090b099fdb7a408572cc9347a06728d1c18d4ef3f08c2460b3af3fa48b07bd88a5afef1d2f9b4f24239af2991abd15a0cd0682b9a59c10e0386fd6e25afa94a985046eecf77382ec96bcb6a54f4c2336888a0cdabafe2fd81eb3dd9837927c75d258aae9feeca4fdaef7760a2a116a2d92aafcaa43b057c7d9d9310a3c62a8648fcf4fdaa4e256adb20493069431592c2f94e0d14cfb656a8f1b4b28d4a3ea580027c91db73b4c1fb940ab7ec2951f314a9cd1718dfb3e89a905ab9cb1c487bf183a8407753938862cc169ab6b99ef9ffe99983fa50283d7975d0caf1f354b529abf20086d90ebceb1dd9d3bf5b708d3b320519c1ad8d0da9612024ea9e5979b68cad596556241566c825b5303326a5f154830998983efff6ad635dee97716168a89031ae961a192ba8e1e5dab884d3a3aa2614ac1d5b8fa46df035be460b363be858d95779f1020ed40df9e94850e6b22dd5277f57f71c3356739cde0e6e51a27ffd7337c56ec20466ad697a116cb00aa8830db380de7428c3a10e4af98f27c599c0c2ebbdc3a1b15f93e7cb97a57809d8df2933af787e40ac9eadac2bcd6e92fc70ee07004832fe4f38fc72f59253d7df0765a75b5aeb0d4eed3fa1d370c9dc1f64bf1eec247c14fab1ccc4ea72ef590aaeba7fa3d802cb18b8813bb7740a53f168cbf3c73d0f73e84c23a56a291fe29bae253d7ad66caf1cbc6cbb415ba4196725d02d2f15d1c025c96044df39bede6ba00720c69d7b8999ff90882eba759f0faacb6a45e80e0aba7d3830343c16f99869231bde768fbdbdec5616eeb538f61f12787299a971ecc3a8e6bdb87bc093aad7ab1ea7ba594768bcee505eef71368a81ffc201cd5751c4a8d643e4327925a8b22b8c6c0315425689a677e90ae13b1013ffd1e5574c1d618ffb6b0e500225956fff74ca3c5c075d2eab14a200b472baf07223fcbaa4552b416cadaaba5b855be6506323a883fb15f21d5b50cdf980913f87f79990476ff4158fc372bb306936800f003ab4294f6ea46b7c9c65c43155b2e2e59a0750055270cd31c7778732397ff3310a9894b8196dff993f6b79c9ff20b3b1158ab5d2e9a876efa57068854c9e45e173163c968a1214c4f1dbd062d785a8a582b431a02d3f2336b59a1f3f54ba38d2994c463fad1e729f1b2a44d1511651d1dc38e6195fc27d538db2efe3189a01ec0d0b515803ea64b3c33b92e42b776dcc1008c792c3b391d0159cd71aee5b457d4f1ee043a11adb29765c52af1f920175d21748a76eb8cba9d32aebd98b3bd5ac173519b7618c0dc179bab362a8b2db25ff7cafaa3f019f8a29130878f869def1e664ccd417b308110907517cea39907e656c4476786b701c48c57c3e682ac4e8d34377c84fa067698d01fac5e8a755ea05393414a8aa3f48cdfc33404dd4c18b4536098b80efe6a15fb1ed6a2822b4c33ef5c242ce2679a75397c18800d2df26dc486bd0955757c84f6c6526815c7b39ca406c6709339ca960227849ac88912bd46a49688ae3fba6f3dbbd4ad10b336edee2dcac8c61afa7b03b33dd7a42af6787ecbd38fe914b8af3b2ec5b1a8ead48d36a7d4f483b57b7434a60e5e71b4a36e25e8eada637a98033b85a00d4e3672f1b284e16072d9dbfa8dc1fcf58990afab8437a41c839398e62cd27da297993db0e2f1d89f8d7da3b34b6bca8eb15c4ba674793e9937b7d05b08525bf11e3265acef5062c6b6d8c998d5873ceef5597372326384e1f37b3f60022b888af0fcb68fa40405ed746f0ce47b3c13862438d6d370bc48773c127f495fb4336bdb2a4879fa7c1235bec0758e57cc332f68e301ec54a6583842ae56a155d75680ca31bfaf2a05a2e848f3130b05dbaebb7caa48f80068b3f6d117ccb58125a468f40f60e5c43583203619e3b98e92219da8760fc02df86d95dc10cebaf2045e7e0617f3760e17885241dbf0647f06a19d77653359f8d9331664830814fe0d86e74cf09dab9517b8e00a5bd556676aa391ac6fde71ad2b4ddc567f88d8879ea8625ae5e49e67b8d4c3e9251975a8231460cdd62a925baf0c379dcac1ef2420fa07ab95c1596200886be381a8a7f1685bba3de9570f6263aee06e59e95083adb5f6cfe073c6b4616bade3e973a33b5c0ce3eade375069ad30dc3710e441763f5b6f77e1b01149fe434202a7289b33bd09681b8000a1f4aa869015419834288eddda5717ddfee513a6b61dee8625c274c85c87660ce0d996e9a57a47ff2c67cda2b679a84a71d3f1a6c6fea2994abfbfa56ea198141e40f0384008a388c0620b2e41784375fe6e9d1a21668ff0fb616c01363af794a4539ebf35e781a85e8319affefe74135e52220f67295f8bac844b31aa36123089b8c5f13e46bc1443de1e1aa13ac6ef358af92bd217a55c6ecc4ee081d5eda98e9c2df76aeffbd781317f794cdf8b7857ad6728111bb7d9c7eac8f8e24697b17775c062f8367128754bb9cc2751267c743524aadf20189c90c1bad9002aeb331923ce02b534820d0d08863225310426f07f872b46a9909a58f6dc0f0355083bc400252951b6ba1c8a1a30bde06ac8ed9da5e58900fac3a65cb9e0b566dd18104a662f60f01c7681e689869caf2ca8639b48adb4ee60d727d7919cabf1e7503f9d988c9bf9583f3cc783250e4c3904009cdc90960d31cb21614aad10b2dfef1d632d59cce81cbca94fd72a98694b44caaaf1bf874af42374f3aa681094365bbbe45198905800515c95b82dae61b3c87b468c45ca41e18908f2eaa461e960dbba802cbc6f717d85e9bd50f1d5a6b045c3542665b97ea8e090e685b3f410a9bdcd8b2222c1a12aae99a7506344dcbea9e39e229d329ef43d071ac4abc0d9d0f32afe1cc023e2b4d72f303c2b46e06c78fe8b37934a72dc6ec5749183dce480b235ef4a9d60f2ddf758c907a721d389557d962068a191acebea280d91e2b0d3e1d0f42330c28253213d6021e96a82f10d23a22a09b8a1a9aa38fa58f297ed883db79b6875fce5e7e524267391d20cef712a8c260d03f2f1cc2284d77b578c832d6ea903903136c5d0a5e12381b2e76a683067351791ef2e0764650c651316445fbcfc85277848408d8e77b65f414e55eaec54499d9a952a7a2462881aa1bc80cf7a17f7138c2af8ce8e9e18d5ac18bd4d55315bcdec090d0c64b007b6be02a7d0f5306dcf03cbc5992b07b6e9fb4ccc90d2732dbcc6e872c06300b98c9e520410d211a2ae13f65b9cf6df34d78636f0adbfc7cccff2dc73276e348757033268c8c41b0e127257ba25ca6cafce020a0400d9213de630bfbe1114ceb959a18eb7e7c74ca349c17fad69921c5b1809fdc893d5c9f0cbe7bfbe0ad07b8eff6d31ed26084782b92268be677bb09238cb963ed5f84c5ac77f6adb79b6c8de583b3f6b6174351887701bd95cfc61e971822a6fbf62573a0052dcc432c362498e4668b7cecd38968b7882147e1651b6545ace27458f48dd9e552c63269afc1e8b29e57f558990f86a8ea78338f2ad0019a0bb295f39ab56ca34ffd656a7309cd4ecf1862208516a7e3274c8da7b9efe057deb19f2f8f810dce61d2b98a8b2fbfff2ff40425e5280fe5fd2bcf607d00edb4a6284a0533c63a60bf998a27b1e7d2b29b9d5f204ca91867cde8d5df0a980043eff2d98b45efce5f870a1a7b64f375bebc880230de95525c65cd667db891d1b507ca7ff14358e9cc736cbfa31087960585d9dbe6e72d53231cec8cbd8a4de98a1ccd4fb700aeb0789533dfca31aeba0e371ab8d06b7f76a8cf5701d75708bec3172e7114dd990c338107e2bc9385e67f2ab1b3957ad6af584326abe581848fdf2e3d6b55bacf50c82ba418a875a85ace9db20c37ad3c4f6ae3f541525842dd2658fb7d024ce22044728684238fe9ae85d9cc579f4fa8299f3d30317eab357d41d639c211941ac38febd1f57e37c4caf0f5c7824c11dae85c05aa0e4be1c0615d6315a26c76e800567b9b77fc50ac19c6edcf940ad68672d6388337185922fe94e12aac0edd2ab907e48e35d9195152b4f89c9db29f0c315ac65f69dc1cbd77b1b118f752630aafb568c939a042090e146e74ccf7931c2cacaa706dcff3f25fca20f553b3a21ecda0b526fb554212268c2d7fa0adb93a0a80f2b6982346829aefc2412f8e5805bce2d714286f493ccc46e70b1416150657d48672b200b06bd7262c474f229f521689c1730593f0031ff06ea1599a34b85b03a59fe0191484ddca5124eae800290fea2e836491d62372c894a8304a87c59284739b78409b7a348c3e49d0829eee038ed5c617ca1b351d330d0267cc819d7b226e52f5a152712a18791f33ea9402051084dc98f681d87cfb8c59b3af157e7518c45ff08a8c6026651bd840c087fd1bec2b1afdc46a10faa04c230ad294ad79c3af2cbc8c71fbcb5687490aa5f719f76027a228847c3874c5c32a6cbf50f6cf459719e330caca17a847926d460b1a08cc1326941c396a60d6474328800de8529160bd48c8c342ac656829ad20d25524a521a2e4e3f4bfba621e5c66a3b777709fcd061f829b91eeeb730880507da8557ba27b3d76af9a37464c0148bf6293c218f0b08128645631a3446d6dceea4ebca7d115b93f04980d8dba2199df0a98fac886514e339c1f1fb362e3fa372d99b800ca6cbd8bcdd162feda79a18d2c0d4509f7329f4f4b4a491a7dbfff6ee55c6ddcbbab923716508363eb8119edc031409b5ecd8a28534a8e6ca9d61f181cf0d97e0964a3b5b1214585e851b7b01c69c519a6d493d2b5a7b0321ead2365d12b58e3ec96daeba378cadda3e8c5b8fe22a274f86d0d4abfac06fcb8f448e4dc0b872d31e2f7874ed57cb9d9a286804f732922379db2f6d8b15d0b0a5f5fc4189cf96753bc90c6fe159ed35503634c2b3d44117999a69fb45459e24298e5ad5dd6ba7e7f0ac77f45bb0763d886bb45bcf78ccb4ff2a3624c9c922ea725383836df543313f5484c6fcad5d233fade2d3f395846cda73495e09b6c179f62bdfb87931c2a619c962f90806b6e1f44953816dda6bad0102117e9b2ffd18c17e92b44c520e0c5d2036b4533d8d38f9538456b9b02b6877b4dea5cfa4c4e414dadede768a3fdd7c8e5bb2b4aa43b90732a2fda9b7a6a035e22493896eb4767c7ba24ce1233901b3561a21140c7d3963946b62810d3c2e9cc3f6089f6d33264dc154e32b3328130de98559bc53ba379f82d4dcee4e3853d188f1d18f0e349f9018eac95c62a1c87c1839573017579c9c1a695b7aeb93b931639ea15948a834fb2f2e77529557b5423c12ea2fc3dd42a416c6446f5a868992dd7c752b105c8925843e5e586394ee9776bff87272293ebf41af5334465dbcc4ee8495b8fc0d228929fef43d73ce0e06228c8e1e3bc61bb96b3e6bc00b64b761d5b8c782cbc495d1a51960baf6d3a4bc83c953730e2a5e11d51b2188b965414e45be3974e2d3c2f13ed5b4f9a5e01989227a5f8b55c19cefcb486cd6d17039cdfe4702079bdeb3a8c3bf7c2a7465111750eafef8dec31feb828c70d16bbd5b315b67f87c21dad64e8c014fcbc653f4d7a224bf6b1698671ce5bda5f1f3b7a85795d90c887a825a6b348e9d419bc27471eea2822dc48737649cddb3c58822e143c2ae195fc47f843474163bc0da82b8cae355355564163fa72aacd637330c83e80da3736c2975724cca3b40c68ffe742338b057b1e33973362555bfcb166b40474e843b213d77271c7b3c016749aa72bdaeba1bcb97323a907cf9914c1c7bd0b9627fcd1ad480d26283d7affc4ad3d19e90c9d73a7581c950b2cbfab8cfd85df61b60c47652a7ecadde3b68ab591f0fbb116bf2b3b5e86a554c13f9f8bd871052d72b902c62c7b017e60f7648cf1415a8c6eb0cb3b93f5526cb30baad29271d644411fe4a10a66e9d7945a2ca10bdc64aac974f19a27808c7371e4162636cfa44b068aea4624a00daade58fa4cb298c5d457cd984b678f7451ca2a30adb5db8a8b20a757279f940555e8156fef1cf5207dfa661a9d9ca608ca5c6aee2e04f3d720e07147e6559d4032bf3ab2c704b5891a67067d44ac15cc6fd3b3b52afae5fc0fb4fc22122ad71b66b36d12ba82de398ef31905fac58c4c5c41bdf5d871dc5649fbdeb3ee8df0ac4abfc531801bf7240f9720f9aebf595af3c23c701e7bb0da3c064db41b927119fedf0d288d511633a3479b025a891b40fde7bdd1c2158081fe6d94b3df15fe6c30d3f4f5f15e62d6bf454422ea9896cfd0dc507ad9baf7bb563f4e854332aa560cf044f9af5b5a2eab9afaac317d8edc1b58c26374108502c8d365488f159d17aeefd94aeb5ea2f6a6cec1cb38d36ff041a10a6340677026e188c550ee4c9b6ca2709bdada92c8e8b7dba110e85d76ad1037ca2a8881e57fa9234ac1623ed46ef723d5bc849f3ace90db51584d06b26ee57acb4822dbf71ade3b6b6d6e2c766c7ee593024a918e7da6b2564e6239368ffc29235a5ce368946888b6c16485dcfc65c63e7e0915fa946f9e84f8fb89954b33607fefca4a7023ecb3bfaba860286c55935a63b141824bebbd8a7e59af1db80bc04f936c2dd2b4a9b7ccc88f36bd6e210c686d1663b87a66aa59bdec9309fecc95a3e9447848e6d68c6f9d924489774b29d2fc236d842c20a07422bcb138a1c1dd69de067baf6848957fa6c56430ed00e3c6017829a2692074959258700e0f35f183ded897e691f44c41e196fc1f949d2a587dbf52d12061dfaa02afed7916605308b26db10431100e7fe5f594166cf3ee64b46e487b830577e46dc049f24ece5abcac179790cf379f2ae18714b68ffb95f212450dd41934d16233d9cd3cc3fd370c51f955fe47768966e90f8fe24470862a42cf679b3aa11931caa2c0679b923177cea12d9b17e0073951b8310459bfcdfedede2d6ca9a20cc7eef31a3b3ca36dd30401ffd2d13f17500bee1d70bbcae0345ad39ee9d7a622f91554aaf8b174e0dac35c17ca463f7b4e2d772e0442ebccfd827113ee12a0f7740bb63efeaa1f95341092fad16f8f3ca6115144c59ac9588624f86bbaa5538eaf341fa2b57dfcdba39b06ac4f08a3ac9de186a77ccc62db5388199f807fd677de860804f54673ce479c233c1f34f30d0ff3b8cd8a0c076a5268dbe458746aca9262b7253a5e08147048b805a4355d178c949beabdc546b1abfbfdc6175745be2609b1dd4397a37e6a8d56c7305f0c3206d17e0f48802573db0f9f1dd7c3ccf96cd2825c765680f0469c584fe4bb313e5ee22deaff795d6330ea88b39574a3f173984b23751bbbd485e692b60bb3472732507a553e109017ff9b2fe8da9650d911ea75c7bb9113c19e8e22482a0d18fbe9dac8ff7e53b4e4aac1c4be133d20aaea3fa661d77c4848c318a3a6e0174e862460f07f9bd2e6170b95ba8b6cd848d7683ee75fc5a13c3050336e7776569a57af3e634d334dfdc31466a940588ae42e73c46d1bdeb677a5cee65da2a7a6b1931f6c1b081dd144bd393237f4e967c17f00e293293519177ea97ee23f065104863b281c5dc4f5810612796619a6c4d7091ce95dfdc2fc5e59831d38c859bf78007480c95fcce05702407655fcc643864afb7748ae6eb60c2b56a44359c6a32e0020072e6a378f41ff43698985eaedad80ab9e14f643b2a783d117f5b72bcecb2c639b704448142331a30a0fa6090e3009e7969da165a0aca593cbbf7ebd00ca39c842f9e99220137b9b937c169de05277d238c24e18e93152c84273551fa7e2911c87c685844e69f05125a5d3cac33fea300ed0d4f2e8b9269db6273a8ad7108dfe09520d9b00d15cc1852c4b2573b51c4a5898c52fea0fcc9fcebdc5945d773da6f509125049b0a5912591c219b82827cef612c3ecf3380ebcbff7b4d255fc7acda7dc2e1dc375b5fdf7d58e0fea8d22242af8a67688826d3fb07879fc1c2b238c2f7edc60faf862f8d314414112f257c9e6426a8e62f9d8fdc36017309b95eb5189ea29d8e6e8592532e27af6a6ef240b34166627b5740be90cef2db1761f55a40266440b66a8e0164813b7d048c235579379f01ad56a9b24f697e944808e243d9a8a0dcefe3e379dd4001e56ee339752da81a617398c551f93f0e195c80590c64ac88f25599f62c80e13ee63e6874338303f8d57b828a2e143dbfe3cf38b587ff22f342929e5581a288af8b67c9c4ba356bcf8cc68d0958a767dbdd13f866421a5f363b246f02b3f859cbceab4d0f36c29db230c2326f7e57a4d8b54993d4a20aa9ffb77eb33ea3133acaa1bf67045a460c6788eda0da914154c3a2ccfb3e6167cde273b0822c2a6caabef574857d9e545e2a51d1c88fe82a7b04d4b89a16d5cf5d51588ec10f346e66f13a1ea42f6eee5706996c7102f94401e3ee74bc3318d197a074a20da4ff983d807f31c44ede76e20d365c0eb80a7a8937f28acff23b04f166e824652a8ca636dd5cec1385522cd86e87474e21eed0c2ef5b0017aa112c697e003575021ba72a73ad18c67d26365d810a609b86ec9282f25569581b752c1e1b752d39e8e3e56946a50c8b3d138e340be621fa912779146e9355b07b0d00a735f719c19d1aab2479e6465654e8dfc8de133d92308ae514ddd4cf93d6e64b8a0cfaf5957135a21715b04164be1c690b4d5619013e8e3b750e11473792befbbc7b729b6addd9eed0a0355830a86acf918282544ba956394d4b5d75a14caccca678ec08eac27bfe09dc79f1cd8f0a95c6e4731bad319a54770848f4d611066f4e4f0302d87612d2b7c50f1e5e2fc1b40de6f4611175bfd97fd3f2ad949cd30bdc96b1b2cbfec95bb5b766fadf5f7cda4d73891a18629a5579162af2adf0a6d2dac62d15a86cbca4dbd498d969212d4abb4ace9b656b0c8afee25d636af0f1f7ecd601386ebbc49232ece15adcc4f139836d89ba81ddc48d6a5f5475a1c9af41961587a4f4fb8fcced66f24a88c8b7ae5db7ba488e6f86b98b94afd492085f1ac6735137a89a03f1ef4c228b7c44107105069bc5e436370472b28da61f56cbf8513a3531d56a8cf54f594ef85e584d0e8a7c79d9b0c0bc7adc98f25fbf17a3d4df16cc615abf8acf1b5f5e82a9efd506ec2dc31f2228543a6c608d3c3399f7e1e622336539e7bbcc5c62efdc27b2bd6c6096ddb9b3407a0aca5e5090424b9b0363e8164eaee4d73b0a45a606e71cf18f4b6c14f802c9450a89a69b21fa6e2f702f316291da04fdcea62a69c0e9909ea65733ba25887435c1e8d8c998b740c94d04bb9c932ca565f6e67d7a88f992e7ec0aea41a93c7e19ef42888de81138ff186b23b8e2e1c3a79f73afe65dd3f96e1a95005ae5ad540ca67a65095c8de71dc724c4f83932b07eaa959c6291a9782d5c2a6bbecdefa23cb92b3b6cd7754a5cdd23b9a486786e58353fb65b7595f3799b71b8684f8d58df9c7fda27a8629dc64c65abc4ad8114560feb9bb91eba95295180981ad6f72225fee6b4f2b3dac24d5b8d4c237bdbb9f28585760ca4f51500ab97609bcd763a6309e6ca3a09dfce2ad104f516e962f1f6393c2cbdff1d5b61acd343107f3f46dfb22cab2a89a4d22c7ddd2a9e2e119396ea50410639b0b789b36d7008d8c4441ad30ad954ac0afadf2e4e952b45937d137becd550e51c9103ef06fedffb06bd42f18348916b0c03af50a84cabddd726e52b869804f4fa149a698bba66749d21da80b1da3d1ce33d3dc70696cc30d80d8c6e9fa1c6d7d1d476c56d4dd9ff4ccefc39fbd12bf7fc40394fed49bd81d44c61ac587a97b8397e79b917803ef77cfc7e061464d022db17035899b2643b41fc6924ee1d8a293f7bf68f61375ad41bcde6148029a0c5f6de9967767e60b90a04358f9f0108b0299ed170033d7cfc749ef376eaa24f5b8e9b11117b09772fb6fd534efaa1dc287f3370af17514265e014e8c3500dd45550183806763d332db62e63edfb457901efd0f9efeef34d5176979fde039cad24379a5490e5632905921c3c110045a6769b19003590c385f558f5fc432c1e305ac3d98205620b284557ae281fc1adb1f0c6363bead56b83e0dd1a7c5b2ae44cc6213aa9dd29552a0faaa3709a0b567b0606c937e1bf361fc85045274c21dac48393a3fbc644bce8bce2625b9dcdba96f0c32b73dda1680586177ff2597103bf43a2b52033c160a900b9b3b5be2c02873ddab6281ff3fb83df4dbae2649dba09bb6f07f839fabe11b83f6876282597e03a3ddb8a5aec27fdcdcba7ba54913a4fd181178f05ac371ef15499308f5154c1b7085e47e4b43f1f1a54ff0dd81cb8543db6fbaf84e6240d33a28069d35b73b413e90fc9ceb526cbd5ffbf70cf8a50decb7c7d284465bd60bf710a077e904dd4f2eb10ff13eb853d047b40b72c801d5d2a225c33ac4bd3e79a8c5945b22fa008989d03196c1ff8967f1b5bf5c71cfdb1ba001055cf49a20a0d723f35a87c72cfe048af0153a20fb35a75dd8f9ec7daae79e3cda8e81e8fa77d51105105111e68992ec50ddb9f4a6d959153a859b534445ec242937f51af84f6e88539f9a0572a3197bc88db39a9ccfe7fe154207499ebdf7e4dedb84ef4489c6de800321ee7f3b288b4da0c0923069f295aeea4a75f07d436dfa418db3b0659e39a2f01c1fa7960ef3344ca60d24adabdb95c994f9e42cb455c4cbd06f3270d894cbaab3a849c251540b80795d70c1a133f258c1ce8f2eaa90c4cc1caaff9a1db76925ab48a674725d4da77e3e0fca3917f7fce2b1aebac9c0f8d7825cf1a1e1bcba8e9006df60cf46a881f0eac4ad99194baac3e9a482b252bff9eac00736738e7ae0aa5bd390fc3249d6e755ad46e835b53ff57eb65cd580dcb7d22c9da1741a17d7e11de54a4c089749592a550801fb2069d034a50c4cbe8dbc923b02bba74faa65a3809e0ab8958fa76e1b41e91e0ff8e7e3c0db0269b82dfe9ed47cf58f8127d087c52137a9455589bb0ec7b1206e8f0c079fe5c20aa137516f7d44813c924cdc268639b08219e7783ab63701f77f9800b200576d146aaa4a936067c1b3e4244bf24a5801b749bcc3635dc27e728b0edbbc0f4c609411e9181a9a9b4ee0c72a2572141e5037843a4ed0edfe795b9b0f5ee017ec0d2d8c3b87d2e838f73a1834a07e2ee21feb2efad3feef68d3ee673edfa0de212184eb37e487c3a395659e1a8b79ee3faba136107908fce0016c7d088064aced997917fee80883f3203cac84bdfa8d6581f889995a6d99c807db553f935ca197c6d38e6b736891a9ca4636e917ace2eec92b42c323a2c9a45755f35c42751f78866bc66b55d67b6b5c8f8a5b417ed861632345d38ce4ca9f76632386a9383325edbf85b657f39bfdc76b8247ee6c29aa8a05d4ac40ff3ddf1c427258e9324aff4502ecea9205e117f8cc16ba4aa09665e099cc3ebcd2833a7f6b180775de9a9d0d9207e3e552873eb7d73d0e364479cad1f63e97f84f9cb6531026997337e23ccaef04f09a4b7246d3f6f7ee0262add9a6d3ec877be744ff15574e30454ab380e791486a4296b78e190155130d4a1069e4a4884ed322ff227db4a5bde0d87ed725599151a42506146cd174a0c45092e26d3e554b4d3f7e3e550c9a79d9b28abdd96890ee3a7cdd8032c98a47c7854c05cd3843cf0818f690f63ee29522f5179a87be4670c2c0b1e9c17e1f8b0f854e7873e61f0f81b7fad4f26628d82380698e65a966698766d55e9396edef5f0c975481ad455cf2118244d4491707965d6117003dcf1b06a8711aaa2585355fbabdc818aa9af14642e005ff8ab5eb302b3e0afc81aa942adc8b48de00acbe1a32b6c185e5ba88645ca735268be4c9c247f8340761d4988accda339544bdc65ddc9a348035f00147d9d9bca2d101db3bc2f04cf01200e3ca01e2f9b25354434a49eb557e2b6c380d28500901a5bfdbbe9dc3677717b3b1496d3d5e8f697550491a659a617a9b25be6983c62b852922454a22edc4a5d2217742f3ba3bc6e95d9b4325c8817225eddc7cd590576b31fe8b0a56cab683c73320edeed1c9249ef423b5e23a8781018cf2675248149b090d475cc00278c8080ce34253bc376a191abb624fc3ba890a046f9200aaa3e6d4346c26f3f6e81df17425539c531dbbdabf2a33e686c1afab63729711883cd7db2944282d4dd409ec95ede889fea3eb4385e6c71e991f8f5fff191fde72aee44812d8dc0eead06ffdc19883dfda00ec31e1f35953ab66a28652a640c7fbd172459438b07c935dd60d318980c51d63d0651774a1a92d79d7e5e7c442174e005a30be8b8251cf5e5ebc9f13f5703c6d239bac386732259b4299654710e6556a1db0cb504a183b53fd57d8fe18f18113b0f7566af3540c4ac8c1c046f207a91179030e291c05f8ba93cf8eaa98aa841a658d8c5b2f764add2d0a1dba1b4db1f3d69faedd9341c4457f8845c629dc933f10175b6b329afb4471fe4de1407716cc8d8ec2bb3081a089d3f0e119bd45d93d28f8ef9f28956f62fd591bb6ed2ea5bf355207c78d40b58ff41b32f19fe353a7e07084dc8ff39ad5ff043aba8bafee108091411f69e23f833865ad2826233163dd53655de7d92d5a34247b20c2af30312ec12cf35fdc05be9c6baf7f5d90aa178fa066070ac955b121f4392a92293aa662d074e703c0b5c67cefd847210e1d3b8e3d593c6896b83e35bad4a9f2bdd3b0a81ec7b32351ded2b3bbf3eed47921114dcc7a11185805c6e6a27331bdc8f4597068331769a25c44785966a120022fe568729effc4f1e39e9de9e9f1bb403ac9ec4a21eda6d12ed6057a11d12ffb3c4d1fcba8a9d3b103b0af30ddea07ad4651dcbd914e3f3f88e6dbb39ed743120fb6f7a457f4e3f5887a3fde151cb36da9d16a72dccb9b3451639630dd857dacb3e2a632a28f461cde08a7d3760a4816e1f90edf977659aa615011300b34ff4c80848bc738d0c0995c77eccb8be23c2e7d9b77044ae2f61eae075412b13e5c6686ad3acd6651a17dfad0abbcfd1c8f506eecd8b873fd033a7b80404c2c6c51f259e4b3a51ff77b1099bc3fcd5aebda36dc5ccdeda68295f7fba469645d0ac72182403201738d8a696ea128c8ac721376d659b6b05abfc6989564d0f2381d828de91b12e7f5571ac5c7766e97e4b6c4cf7cc2a8615240a13726262bf69d58faef6328d0e8e0e6f313371860a70f0aaac04b2778030393ba39737a441ccc535e79c70d52266b42260c831bda4d59ecbaf3138d737b3754001eca470d3999d9f78c4c833473890766629838c329fd061720b30f1343759a7f33a7d2320da0a4d5b5713830f7e4d9f4d386e06fa366c9b2fce9b5fe627721fd7328a3169833105eda728f34c61c606ac7c31b701243c62343c23aeb4d2397b7cd9994fd4b108624e708a3a4fb21c107402438242634a49ae31ec0d877e2da5f88270a95bd690d29031b23a7476773afb69c87dc20a968a5d642e406a1ffac1416a3bcef294c41be5fd000a847dd5afa6288cb5b12b93a0ebe3c19ede445156f886cb7f941e42dd42723ee1b2bbde1287cc04eea1a0e66e64734aad17749a1157e972405e84068ced9a5922fa5be373248421d949bc650605b90cf1c0ae0d9850fb6c730febcae19c3efed31d7d87f087167920548f4c98584decba0ee6e05794ff74eda25fdad96c45f6b8e176d8868982a10b241267cc3a691aeafba1b22224f2e5bd53496d461d48fba84c00d059b9802d628721265a439a818943f0ad9c9a7298e29f59ae0ee59dc7707c602b32d8d67a31a4db89488423b898163295cabfb56380256f2719690323a14ec43d07e7781a47afda8e24fabb4017581fa145e2e1548d7107ea7c7d775f243f1f8edebb0a53df03fefb9179cb90f7522c5497383fe2dfcdb3dafff9665a5904ca3716dd6aa7d6e1060ee33b775bf4c5805f52e44fcc0447c6f5493dfad6c0f7825bd36ab9642947cc0fe61186e681a46a7eeb7b496f1d1b24c536067bb23f7384ed3f799c785c3feb9b7ed162261b882a63f928d1e1f10880c98b70e5c7b2669d79974a05fabb9a72918450513b110d0599140a07e6c4be1ec394db44ed2575bc497216b6cf3b549752c3330bf81cdc6f6e0b064193ba5ca12bf4b3fdd3e7a323da8492cf3f3609725cf9402776eb8b9ff5f314d2c9ccf55ed430ed847a0f99514b6199e562c87240459a3b56fb991f7a696682e4f6c16412891aab6496fa707dc77f8c89af01a747143a5ba8a491264edd714429c7007f68122960f781244e52879d3512cd7f532027c303d40be82c952eddb43b3124ade27cc584424b0c530a982a1087cf428e5a37c65072b6508069a0b5010a86d71ee0e98a67e79136ed6f44e8c963a56f17793d50c92f2724fdf7ee1a858dcd9a3b0e7c63be8b6d30036d6d56bbe914dbe3df726ff4d08c40cb3a4eead4e522fe82afb6924894827ce64c967c77661b70f29ca6983fc894cfce00994a5e0eedfd500bc2faf2a824af1b77a3674f5dbde341153abee933ccc25e9a1ae110550a012f0387a5ea31ac31df0a90144de247543e2577454c8824a700d61ea09618fed1845685458b9907e751b582dd10d6039b99034488a1c37c0da790deee6c5d57db0778f9e432905f2f5a7c7d0b17318209d8d5cb004be811726e6bf366bc79c3e92393468cfcdd31d64aaa17f035819cdddbb3c4a62700fbae1d2dec6ee287f81289b8644f34d5352de073f2d16dec8e3f055050423b091263196ede1426473e5857e19ee0fc22b4892673fc4a9a6f1bad29d375fe118386744c4dc31675dedfaed0ab85a4cca8b7408a2ce8d7b71990c539d758c9c8be740611a5c49eba27c680abc544e5eed7a8da0f35eec7302da64bea565c8053cc13fe0093b346ba1fb32d41f86dbb7fb9ac9de2f8b7c51b4be8ca1abd631665ea3623e4ce3a9ab79e34d3d1e67b713b52d4623836e84456aaff7303acdcbe8edec96f89b586bd954f7733f1763e94587aff289f62c3732b99742239c13d54497aec14141a5eb199146e981fc47e95ac15b06d661875aed14d0dba4216c6b584814c907031c013a4624cb3f9a39032c40a65cbf69aa0a3453fc108180d028a567fade080c3983968378d72b71e12f63ccffcc3eeb2b8432f7f128c96d12a157b933ad2ea88b7108cc65082d8516f3c6b3e3bc8b4a857745e352ac3fcdc709f05b10898c10f4a71bbda67e98e843d13c7bb86b2e488abc3d40f150b7ff4124e42912bd28d4a72f9aa11a7cac6013a4f09601c2a5cbb40d6d612af1589952a508b78f11e816c5c4c16d43a543699db28da72bec38fb79237d7409db416b25cd6a1071ffe273d8bf774265eaa4cb84819a15bb1944da6114e531137e1a361849178cc7d78bec667f81bdb030762cebf9f2e56668d0c55e7e7c850f58ba1f06c0b46d12dc3e8a688524fb06d738d981e89153afb5db9652c2436f3ff7cb3f5ee85feabc495dc71f686e62ecf2c332728ed5ba2bd6ee80c8e80a22051ed45dff9b8bdad312bba0ee1a6ebbb8a137879195a95342b214e0a6b6dc7bfac40c85b3c87481edfd4ff6fac5cb06fce2258a573e307b2fb0aae31d2b6bc8ada830c3a0b06ccb023263ad91b9cbf74b06b7836e2b54d29558ceaacf225ac242b690789c78263d91d01fe3db100aa8c14d7d3782df41f0d0aeb3d6f340210083c2b6c5c7be6f40a6a8617ae7a24b5e62d96a62e31df43d3fb2db5a9e60e01511ed6c63225ff7f8ca5480caace3599d808a55462614691af08645c2476a9612ca8b7eb5711f0534451d4c6eeb6ba1c1f5ead927e90ead1c43a5200113ece0978a4d7b274af7fba1a70a0edd73fcec30058f7cc1f2b3367aa77a8048a79f95cf967f4207d03ff955fe53053bd49040bebcbe53df88db0e3d54b5d2e39e9b803784d1e2ec83e15cf2257c28a14708b91a80c18e4885680736bd38f6faa47ecc1a10eac2efab315004543b20c7c7c7c93b1c4fe5db1ba951dba036b9cf5a9a2ea3e3c7adb98844913427e33471df41ad10c3e1ddcf25fde04009347b8d9b2311fcaecb92afd75bc2b595dbef09e51b98225a71081804660232620d1f612674ee1b83478ccd9544aa83706c8f281ba99469bb1adecb24f16fced3654515c8e4d4543182da32a513448974712e5c6429f80ccd06d65f1bf3a198d3cc1956e340b41da24832a5f2dd8a30aff3107b776e80efc19447a956a1c9f406674ba55e85d6ce4222ccf2867609adc4c978618353d0a4fe2238f299dd797bccf6fdbf9f3795f55ee4b09106c4704d60edb380a1e3d6c63378e640955bb6bf2334cbd75dc034907722527fa1caed798e28e0c13e3122af61136dbae0a90640278d15f1e2d0459a2d91038df76b3f823c415e9eb7f278d45d08f722bfcdcd1a5c80bb79e9051f27d2c312e5b93104d2fc358d11dc73d0c68048d614e48f669beb537f86fe069fd953ae48bc7bf84c900b3296cfe33f1f1c12514639891df72670fe1935e40025fd5761c3939496b9355896c9c02d36fde5241871ff88e8f54347f675a3a503a6629279354485dfcb71357c88c26acbad03714b60c5bffa34a3453f845965e82ec541fcb10b3f15129f9838c6f288babb9f86cb3e85c74b8e7b6b1400d3f88fbdb09bf1108f9cb4e67078e0ca087b8174173058c6cc65612ea1e0b3e02d04185834216a89624327d242c6a09e8f9c0ad4f19fe64659e8c8deff94e472ff59c29a20aacf2c1e02a18f6f46d80d8d87eed706928412f1caa05c27aafe072307d0238e69f17ab4f5e6f9eacab76a913cf6415851408f92d7a5c1e1e5e5d9edf6f64f451f873b2178bd1cdf21f50f915ca1d3345ff5fd553bf6e8978aa0928d73fb52649a3ba230a9dd3384e47dfc685b882d3164dfbaddf2837143617464afd67570060abe43917bb8c630fe2b00a15f0b27030f25bcd7914a445fb74e73ff6e24ca292ee73b7466c397ea4dc600ffc582a5bf6489cfefee03e282bdce7ebd365a198cff1ba7e21645a246c83c19fd172f38f7c6324a7b7b1150aa9088f961cd92399615be0b7cf0bdea030f73a891081ac7ff3793bbd5989a6799de0df01a3bab57eb6d6fd93563d09635ec2065d34b6ac36b174b2a3b4ebffa342b0df67f5d60bd93117e400038ecf624471781c84dd4325c755c3b65e9aee778a1b268b0c6e5c2b94dc8210dc4efb8491a68f04a392418c9e98f249580ea199e75cd9f6afd2fbda22bb337e179dbe982556b2c9d5caa3daaa12efabdd9b1e2377465b2e647d07781e2b5c333114f1bc9371378fd76e04693d1b624ab5a34ccb64a0efc714761c52206b092e4458ce159c192f22ca5fa141cb891ce7601897292f3e191970d90c2423a5ee8a8988fc5759d9f1821edfbe126df9207cd5d4c1eca7a50b1592d42bce5d1936c3fdc511d50aab9e255d97bb5f058229527a045662ea8cd165709252c0884904816b0bcf8e77574733633e8e5473dd9d51fb16c79537dd4b172bcfbdcddcb03e490cfa4b3e61e4a3aa8d3477749a9fc8dfa79c93c7afe19672d4266806b22649037bddea2fde8d6b81732eea9371a7a16774c45ad6105e6a11a6410c17d8a234a1b214910a235d268a626af2eef2cc35fa5acc858e6d08ad80cf05cac4b9eedb9c580e4c2da3be7d7bd15fc980f569398a1e8cbaaa013740cd92cbb34ddcf6e6675efd767aa6cea25ee7a54520e98afee1ef4adc2a06b4b196ada73ad7e1345b8eb69f1b25b3eb096a3822be65af6296cab02f39d263f6c55f40186d0634ae1990fa0bcd82b7ac7528bf173a1d16b00bb1a8fb0d254f9b66de5d02e1f85a17bf498a04afc06fa602b0b871c54136a63cc04176deaf7524aca0f814f60018eef59b39807cf5802b3c5bff7ead60f7931170254f11bcf8010b7a62ea54b44f3cbab12b4c771f3d12661f70ac99f61c7f9ea89f8116fcbc9e066b100a848f2ed6d23bb2656b7de8b10f69010e8c5295a162e3bd809a21bf1ea9562a5e654c3f074467a7c13ebfc685ace93bcec80e33be4c0517cc25335fa711eaff194f59f985653c8e95f9f8839fdb10cc028259ca740262d46c0646df641676b380ad8d6b487974f3c6fcfe8d1843cfcdb5b1d7f94e953c006b9f04511aff9f674bfbbfc7f5987febe5a797d1ad1a9ac6c21a42fd062c3de9e755ed2406286ca6a459723b312dd083a9e63a2c2948e9c3124d118ed5d0af86e6c7091c37a84523de52d230d158ac1732fe0617d141fc984530b9f2e663f509c0afd1134de1b09e7862cdce489aa5a0da1d4034959d5b8c38976a517cc2e9b63eaca54abc8ced6dedd4dfbc6e4723da6a90a7ba6072752a29e324d10f690213fd8829128feba8fbdbd42541c957a37a02ae27695b77a0617e9d7a5fbcc13c306bb069ee00989d026172f4976c6a5022d7f12d4b0bc2460996ba3f13df06d6a9d7ef55b55ef554ae02581d545656ed01aff62f04420d305580e4779634fc2f2625d87783c5c5f1d86ccc3d020f040109277ee7f22563dd70c60987ba5b074164bcd681963992b42cffbc04e82ed50d1df6e246f6815b5d8f60af4b1c40228afa1a2e53ec5b571f405b8c30f01dcfb5b180cc99c8e3ca6c055fe42a2d97ecbf3c510320b6644b026324704ea2f87fce94c45bf13a05ce3a9f8ae3197fe56e0d415202152e67daa0a33b713985973eb7f96c7dbb7373f6b99719a5d9b20131a4be0631e532187fc76cb75927150d3888dbf74a600b0438058ddc83ea303db6aed547f338efc1a1c1c59167a9b021fd63cacbd38fb7ba5d9d62b3cbfaa95ec7d948eb7687a30d39315f4f63944f27b9c0973af23706d505c57c08a9df76f0990ef02cb79f02b282929def36ae88bfb1b31eae2de745d0c94ca7985e8af4d344c748cac5c3d5c86654dc8837313aef50d56aec41440833acd355c908f68785f6d98463ba6fd82e899b4276670b81256fa4c4c0a811280d590cd79dd5e1df8a05f74bdd775572ee6254aa8a31b6246f94b62f8be4609a9a47a8f3e085db53f807a9b74064c693f373106f36c5d09dc99b00f37bf41dbf6aa9c422dcaf4116246e396a76ef5761342fe726853bf93a8bcfe80e20f131fdd2f32c8ed9d3e48a7dd1536526efbd0277fe5cf65884dcaad3b960d55c146d509348baffe94cd716286f04c50ac96290a42c3bec611d260f9b2e7731f3980e2f8b7cbf56ccecd4d5996c674fcb005a332af7dc187078bed0aaacd9941de8976b44ee2ebe16a92279d32f4fb0cedabbd3e8dd4b82b26fba6c2cec52f89761a765e7f542deb633a36a8872b148d193f845a14908ee91711aac6f32e647a910ae0dbcff4393a9f37b1c3d030f4bd8efeeaacbb72f6cb73af9f6fcc1b2923a5dd0f558845251240b4840848db91ab5858b978dac518bed6f4e9b8ec45019bdb4887cf6186a42a5dd3eadcc4a34f98423df71868c416cc1070afe28c0d03cef9673a1cda40fea99a9ab3b08e14702eaa72c12b0a96c8d3832685659722a43e2c916ddbd6ba38917574ab85786857de99e28175885740235ab1866605f7538782cd51b29e1120031c9fe4dad96311cbb7c4c1caa6dc46b4137bc9cd4b4d1b99ace9948d930a5cb845a56c1d106ff36c9632bc6509c3cbc8afe5cc21b172723d150d0fcdda0116f0a83b3fad7e952d3ca937e600b23d9aeb68ee31bf4b31db177343fc191217d89a24f81a1c0c3587d062030ab8d6141991ed8f9ac645735ac22efa9f1366d3a28dd121e6007e69607425b4c04bb85ea8da8c9c7cbc1ea22498e4aa4b2dbedc65e5d774feebc2c4e1749fd5bafe37d2621077276c3c03129866d213bda7f9cbbd86ae13d40633cb7d8e675d42af4f7279e6da1dd9c46a33ec5dba76aa0319d353a3da5fc76adda5b42df2acf8c41c6bd319bfaad5d79025e581d06cb1fc18cfa859b608db09842f622e507ab7ad2a25b46356edf34814e79a06026f252626e48719f28455887477a27532f068766b4455f961fdea48a1932f9ad9e047a288cec74dfae981f54f68356a582432563a4832a55d6fe96094d9635217104dfc0895e2352b2c9b5d7427377f47b5fb551e681ac3718af60fa28dba007f59c2f2b3a267e53f8dd2f67799e524d99cf917c5bdea91626978feb830770536e763ade810d58766c1f4e6a829b81d426dffe0ef16a8536a403426d7978031df398df5b79f29ed403ae5c011d6cf6d9ee80562bd9542910350720eb3a7419dc7513083c7a05fa6daa9227878ad0b96fdafc7419993d27b0a498664e902392eed15cde93b57d674a1dbad658183ac4e0cf937d8f79d60ca35f82dc18ed42864b53c7b29188a964e5a566b53af41bcc4db1a580a3cb448ba71414f3ad2b0d45ea1fbef8c90b90d11dd81582bcf6e93130f3780fc0c8eee08f98396206a2f58a3733d037302c10d485834fed8dd4b05e5946f7cb6aab9241b15c78ee94ca494a31bf9f7255304da76e216e7c5e2d1aa57fd9767d7804c1acd172ffe4f99dc83ba86d43fe80d44ca145db533a437e982d6c5c2d570620e63ec726511e62b92e8768445704f07af5832e3a675109f2d110afacc65a43f37c7c5e92418ebdbfc36c2af6ad39f5cc1cb0fa0e1de3eae2ef11bc23e3478a2c99eb371259a22acf10715d9d0f6bc45ad48d647f18c1f5182a5aa49bcd6d98bbeefcb166a2fe30a479ee21d1478b37f87a7a3d107fc9e054701ad242ab6325bbef1b03cb1cecdbe872433716c678e9fdf0238e8b127c650fe7bf0570429644e04920b034f6cdcc5dcbcbefe24e6107a2ed3375b8fe158469447b26a33ff3dd9e1b57412067515a482a9b6fc1ddf0bcaa5bbe81995aaf9ef3db0d27da2f4117cdcf3ac71e77c1ab2a76ba261a4ad0d6cdaafe552a447294f3000df0b8735da300295e88fce2f88b534878bcec7562e4927acd6d51cfc3b84fa31252f5e0d3fb99e55e794da2ec73b91d83ecf8e29e29639569bd137f604962066df68499691337215b99fafbb63483c997d16f584f7b56f9f585dbb999a71a710597eca04746cc8c2fbfa4a5e4523106988c8a329d9a4c2a5607f2205ec98611a6b9e774c6606c6059199906ca428a565ef0ffb5d97ce4e75c94345417b7249074eb24af7472d956be5dcf5c6da3f1ff525da3792d76016c294d58976c42a24115f998f34b7f739735c65d0dc0142d7681454db6ec7d8e18f1cb6ba3415ddd63a138084c2bd8eef8ca6efb90485b19f37ca57ce7f0f38958cb8f00987eeb72da3407ba9cd8721123d9f6983b13c7394c2d95f1f2ecd0267a621980542a3655d4b2ae17c02e6eb40c2b15af3e500f84a4e14edc01833b41831a296c3e32721bf805840a9218fc2d4d249e5929aab53e418a33e7463356f32853b29ca2df4851cdb8bfebec69c8a3a4311dea23b7c26cfd8e5126f1190f8ed504c2f3472f85dd46f1b23d66987d622ade220bfc3f83f10eafdc2f545f720b9825ad83842510aa87bd571c32c4f894345a94b6b1aea11611c0959c114984f9f74d783b04bc0df336905d6c300c25b81d36a25cdb1a852e3308b8f0613ad80a2f89f3c3731eb97d4483312a25011cd617679ca79b9cefdb409aa0c9e17992b74fbf72683af220eb59d49f04f20cae0ae9cb254cfe621f3431ee5461607c76efbd42d4cb845b2c986fc0bceb2b533a197178ac15677004262e18fcdd912d75cdcbd777de2302540468c353142b891232a90c313b2b766fa28e0356a4891d63117a85d631a8be318bf8ff31863b73fb7720b38f28474349fbce7de2f92b33bf0fbb0b6cc950a89754b06b90a939e844b12065c4227f39a5c6c31821ff4c218a79b1dc4b3bc84481ac73a8263f568f71ccde9d08870ba23e846a1c8f8f329513618614bf8583d987763d98ed10674bae5fb5b40bea84a646ea4d32f91d57252840ec2996060d9b840eb25d36789dc0e4b02687d6a6c79a4266b65cdcc24c13bf8c93fc29b05151d2ce8f2048845f08541864b8b042ee5897fe111401c6632b525b531e126509ea8aef5fdb70d9130e9a742723b1404d34d19ffd6016be5b61872f02a2b9f01b16b9c8ac0775653d8143b6984b333fe0f89c00159802820a5140d145d5984db8aa06ad8cc51b41cfe6480c1cddcbe3aaf4e83c155b6fd22f6e031a83c6b12b0437b33106573687e97d794635e0acd719987038b8345cf40a061447ac5c0bcb631cd931a4aff16c3861b53ce6a5666d098fc06c6d21f38f03c3cf2c1cb515785ed42e30d76e2382d933ec3875547e765e698ad0fc237d29e6407648102d5691231cadf41be844f811b68cddf61fe504eae563015dca0ee2eedf640ab8f667f532db78bd71a384ddd47b935e8bd763158e947dfc67c077c4dac87fa6500b982251182294da62c2bdf36982b2c94b62679ff139fcaa1c6760e12d9a7fd4c2d9cbaa696c737b96814c1d5eb413ded84fc05661c1f2f47d5fbb0b2fbc994dd01309ecf629d35ac2c49b5dfb0772ad28623050e0f36001689df9fdd50cbdd3ad7f267a1737ef482ede01602fe1418b9bb3c2296df15051db1ae0b59a0ead15989fa1897ea1d478861133ee2bfaed12053dadfa86737044a33b99a4f1452f0991fc00ce8fde074570f03e5605a061d187d1b7edeb0de4f0c9ba5efc4b14182ea35d8cf074511064707f164b9b0593dc9b606a208b899522177787bc24601715f31f3a905c0846ae940984b5df1843c1fc6b06f3f539773524d74b0f6714009415ebaf615f0476a8bf9246c59e98cc28760e9a0283f005fcc89b7269f3c84baf7970bf462c553872284a9ab81d2c8d734db264729cc9abd46537205a33ce5b7a81f591c77e03c5a10e6d15a33e51f252d36dcf174c68bb266602f8d951c245a5133ea24ccfbe010570a4117065a61c04519780815d083b90b27562c2636968712182e0ebd15f0cd6c9befee11110f6b0f293ec77e7bb41dbafca23da137d1020dc137a449a4294c787645668ef2e26b9155ee2cc01fb5b61f18aab3c7486b7fa518fecb878cac9a428146abd70c9af11a487e539acac6c7329fb05f68b5f0fcf250afea4a206a05675c856a47fa88bbe68f0dd2550bc74ba98eb8eeb26e3f2edf6896f1aa92f9d402ad9686ec34f7001813589e807e6329ba56c3a4804adc53e24b90ba5195ba4eb86c06beccc99761fd8e3637742f0903890e7215f140430ed7f26c6cbf953a537dfbb892556d1f216aaf45df4430e3937877f93fc805825f379f3c208e888f4325bc04dbfca86f1d0c129337621b4004703cf7b638d96fb84647b499a97546e38be628f49b4ba51fe5c8406869fd5e054c4b5ad6a8aab13b4e0f701403c466a3b36ba7a5bd207e23e925fd2c2b50a5b8090d468684821938f594bee0bb5a5389964b002fa20be373bfd6e76c30b549ee34e39b2808b9bba734b86ac5fe89f445d70b6b3830c11a9eea54759844d21c961cc4e3daf616fc2d2cbe40d0567ae060af56c6e8966ad4cb5455d2791979e738958868247354734555fb7e7db377fcc18845207dc7e6ae8ea4556a2c3c80cebf9f8beb029c276132710888be40f19845af9279ea7fa469ba191ef0c983487e17703c7c4cf9f00aa275d032645fa300f2f3f9bb154da9094decdffe122b8a144dd96e1a06d658415cedd5e7789e7b387966ee4dfcc12fea5889b6e1415rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-docs-5.3.18-lp152.106.1.nosrc.rpmkernel-docs-html    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1a@a4aaaaaaaaaa@@a@@a@@aaa@a@a@a@a@a@a@a@a@a@a@a@aKaKaKaKaKaKaKa@aaW@aW@aa@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@ababababababa@a@a@a@a@a@a@a@a@a@a@a@aaa@a@a@ayayayayayayayayayaya(@a(@a(@a(@a(@a(@a(@a(@a(@aaaaaaaaaa}3a{@a{@a{@a{@azazazazay?@ay?@ay?@ay?@ay?@ay?@ay?@awawawawav@av@aqV@aqV@aqV@aqV@aqV@aqV@aqV@apapapan@an@an@an@an@an@an@an@amaamaamaal@aim@aim@ahahahahahaf@af@af@af@af@af@af@aexaexaexaexaexaexaexad'@ad'@ad'@ad'@ad'@ad'@ad'@ababababa^@a^@a^@a^@a^@a^@a^@a^@a^@a^@a^@a^@a^@a^@a^@a\>@a\>@a\>@aZaZaZaZaZaZaZaZaZaZaZaZaV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aV@aUaTU@aTU@aTU@aTU@aTU@aTU@aTU@aSaSaSaSaSaSaSaQ@aQ@aQ@aQ@aO@aO@aLl@aLl@aLl@aLl@aKaKaKaKaKaKaKaKaKaKaI@aI@aI@aI@aI@aI@aI@aI@aI@aI@aI@aHwaHwaHwaG&@aD@aD@aD@aD@aC1aC1aC1aC1aC1aC1aA@aA@aA@a@a@a@a@a@a?=@a?=@a?=@a?=@a?=@a?=@a?=@a=a=a<@a;Ha;Ha;Ha;Ha;Ha;Ha9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a9@a8a8a8a8a8a8a7T@a7T@a7T@a7T@a7T@a7T@a7T@a7T@a6a6a6a6a6a6a6a6a6a6a6a2@a2@a2@a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a/k@a/k@a/k@a/k@a/k@a/k@a/k@a/k@a/k@a/k@a.a.a.a.a.a.a,@a,@a,@a,@a+va+va+va*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a*%@a(a(a(a(a(a'@a'@a'@a'@a&0a$@a$@a$@a$@a#a#a#a#a#a#a#a#a"<@a@aGaGaGaGaGa@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@a@aaaaaaaaaaaaaaaaaS@aS@aS@aS@aS@aS@aS@aS@aS@aS@aS@aS@aS@a^a^a^a^a^a^a^a^a^a^a^a @a @a @a @a @aaaaaj@aj@aj@aj@aj@aj@aj@aj@aj@aj@aj@aj@aj@aaaaaaaaaaaaaa@a@a@a@aua $@a $@a a a a a a a a a a @a @a @a @a @a @a /a /a@a@a@a@a@a@a@a@a@a@a@a@aaa@a@a@a@a@a@a@a@a@a@a@a@aFaFaFaFaFaFaFaFaFaF`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@````````````````````````R@`@`@`@`@`@`]`]`]` @` @` @` @` @` @` @` @```````````````````````i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@`i@````t`t`t`#@`#@`#@`#@`#@`#@`#@`#@`#@`#@`````@`@`@`@`.`.`.`.`.`.``:@`:@`:@`:@`:@``````````````@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`E`E`E`E`E`E`E`E`E`E`E`E`E`E`@`@``````ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`ݮ@`\`\`\`\`\`\`\`\`\` @` @`ٹ`ٹ`@`@`@`s`s`s`s`s`s`"@`"@`"@`"@`"@`"@`"@`"@`````````@`@`@`@`@`@`@`@`@`-`@`@`@`̊`9@`9@`9@`9@`9@`9@`9@`9@`9@`9@`9@``````````````````````````Ȗ@`Ȗ@`Ȗ@`Ȗ@`Ȗ@`Ȗ@`D`D`D`D`D`D`D`D`D`D`P@`P@`P@`P@`P@``````````````````````````````````@`@`@`@`[`[`[`[` @` @` @` @` @` @` @` @` @` @` @` @` @` @` @` @` @``@`@`@`r`r`r`r`r`r`r`r`r`r`r`!@`!@`!@`!@`!@`!@`!@`!@`!@`!@``````````````~@`~@`~@`~@`@`@`@`@`@`@`@`@`@`@`@`@```````````8@``````````@`C`C`C`@`@````````O@`O@`O@`O@```````@`Z`Z`Z`Z`Z`Z`Z`Z`Z`f@`f@`f@`f@`f@`f@````@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`@`q`q`q`q`q` @` @` @` @` @` @`}@`}@`+`+`+`@`@`@`@````````7@`7@`7@`7@`7@`7@`7@`7@`7@`7@````````````B`B`B`B`@`@`@`@`@```````````N@`N@`N@`N@`N@`N@`N@`N@`N@`N@`N@`N@`N@`N@``````````````````@`@`@`@`@`Y````````````````e@`e@`e@`e@`e@`e@`e@`e@`e@`e@`e@`````~@`~@`~@`~@`~@`~@`~@`~@`~@`~@`~@`}p`}p`}p`}p`}p`}p`}p`}p`}p`}p`}p`}p`}p`}p`}p`|@`z`y|@`y|@`y|@`y|@`y|@`y|@`x*`x*`x*`x*`x*`x*`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`v@`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`u`t6@`t6@`t6@`t6@`t6@`t6@`t6@`t6@`r`q@`pA`pA`pA`pA`pA`pA`pA`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`n@`m`m`m`m`m`m`m`lM@`lM@`lM@`lM@`lM@`lM@`lM@`lM@`lM@`j`j`j`i@`hX`hX`hX`hX`e`e`e`e`e`e`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`dd@`c`c`c`c`c`c`a@`a@`a@`a@``o``o`]`\{@`[)`[)`[)`Y@`X`X`X`X`X`U`U`U`U`U`T@`T@`T@`T@`T@`T@`T@`T@`T@`T@`T@`T@`T@`T@`T@`S@`S@`S@`S@`S@`S@`S@`S@`S@`S@`S@`S@`Q@`Q@`Q@`Q@`Q@`Q@`Q@`P`P`P`P`P`P`P`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`OL@`L@`L@`L@`L@`KW`KW`KW`KW`KW`KW`KW`KW`KW`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`H`H`H`H`H`H`H`H`H`H`H`H`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`Gc@`F`F`F`F`F`F`F`F`F`F`F`F`Cn`Cn`Cn`B@`B@`B@`B@`B@`B@`B@`B@`B@`B@`B@`B@`@`@`@`@`@`@`@`@`@`@`@`?z@`?z@`?z@`?z@`?z@`?z@`?z@`?z@`>(`>(`>(`>(`>(`>(`>(`>(`>(`>(`>(`>(`>(`>(`>(`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`<@`;`;`8`8`8`8`8`7@`7@`7@`7@`7@`7@`7@`7@`7@`7@`7@`7@`7@`7@`7@`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`6?`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`4@`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`3`2K@`0`0`0`0`0`0`0`0`0`0`0`/@`/@`/@`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`.V`-@`-@`-@`-@`-@`-@`-@`-@`-@`-@`-@`-@`+`+`+`+`+`+`+`+`+`+`+`+`+`+`+`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`*b@`)`)`)`)`'@`'@`'@`'@`'@`'@`&m`&m`&m`&m`&m`%@`%@`%@`%@`%@`%@`%@`#`#`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`"y@`!'`!'`!'`!'`!'`!'`!'`!'`!'`!'`@`@`@`````````````3@`3@`3@`3@```````@`@`@`@`@`@`>`>`>`>`>`>`>`@`@`@`@`@`@`@`@`@`@``J@````````````@`@`@`@`@`@`@`@`U`U`U`U`U`U`U`U`U`@`@`@`````````````````````````````` a@` ` ` ` ` @` @` @` @` @` @` l` l` l` l` l` l` l` l` l` l` l`@`@`@`@`@`@`@`@`@`@``````````x@`x@`x@`x@`x@`x@`x@`x@`x@`````2@`2@`2@`2@`2@`2@________________@_@_@_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_I@_I@_I@__________@_@_@_@_T_T_T_T_@_@_@_@_@_@_@_@_@_@_@_@_@_k_k_k_k_k_k_k_k_k_k_k_k_k_k_k_k_k_k_k_@_@_@_@_@_@________1@_1@______@_@_@_@_@_@_@_<_ܙ_ܙ_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@_H@______________________________________إ@_إ@_إ@_إ@_إ@_إ@_إ@_إ@_إ@_إ@_S_S_S_S_S_S_@_@__@__@__@__@__@__@__@__@__@_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _м@_м@_м@_м@_м@_м@_м@_м@_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_j_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@____$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_$_@_@_@_@_@_@_@_@_@_@_@_ǁ_ǁ_ǁ_ǁ_ǁ_0@_0@_0@_0@_0@_0@_0@_0@_0@_0@_______________________Í@_Í@_;_@________G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@_G@__________________@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_R_@_@_@_@_@_@_@_@________________^@_^@_^@_^@_^@_^@_^@_ _ _ _ _ _ _ _ _@_@_@_i_i_i_i_i_i_i_i_i_i_i_i_i_i_i_i_i_i_____u@_#_#_#_#_@_@_@_@_@_@_@_@_____/@_/@_/@_/@_/@_/@_/@_/@_/@_/@_/@_/@_/@_/@__:_:_:_:_:_@_@____________________F@_F@_F@_F@_F@_F@_F@_F@_____@_@_@_@_@_@_@_@_@_@_@_@_____]@_]@_]@_]@_]@_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _@_@_@_@_@_@_@_@_@_@_@_h_h_h_@_@_@______t@_t@_t@_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_"_@_@_@_@_@_@_@_@_@_________________________@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_9_9_9_9_9_9_9_9_9_9_9_9_9_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_@____________________________________________E@_E@_E@__P_P_P_P_P_P_P_P_P_P_P_P_P_~@_~@_~@_~@_~@_~@_~@_}_}_}_}_}_|\@_|\@_|\@_|\@_|\@_{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _{ _y@_xg_xg_w@_w@_u_u_u_u_u_u_u_u_u_u_u_u_u_u_u_u_u_u_ts@_ts@_ts@_s!_s!_s!_s!_s!_s!_s!_s!_s!_s!_q@_q@_o-@_o-@_m_m_m_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_l@_k8_k8_k8_k8_k8_k8_k8_k8_k8_k8_k8_k8_i@_i@_i@_i@_i@_i@_i@_i@_i@_i@_i@_i@_h_h_h_h_h_h_h_h_h_d@_cO_cO_cO_cO_cO_cO_cO_cO_a@_a@_a@_`_`_`_`_`_`_`_`_`_`_`_`_`_`_`_`__[@__[@__[@__[@__[@__[@_[f_[f_[f_[f_[f_[f_[f_[f_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_Z@_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_X_Wr@_Wr@_Wr@_Wr@_Wr@_Wr@_Wr@_Wr@_Wr@_Wr@_V _V _V _V _V _V _V _V _V _V _V _V _V _V _V _V _T@_T@_P_P_P_P_P_P_P_P_P_P_P_O@_O@_O@_O@_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_N7_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_L@_K_K_K_K_H_H_H_H_H_H_G@_G@_G@_G@_G@_G@_G@_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_FN_D@_D@_D@_D@_D@_D@_D@_D@_D@_D@_D@_D@_D@_C_C_C_C_C_BZ@_?@_?@_?@_?@_?@_?@_?@_>e_>e_>e_>e_>e_>e_>e_>e_>e_>e_=@_=@_=@_=@_=@_=@_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_:q@_9_7@_7@_6|_6|_6|_6|_6|_6|_6|_6|_6|_6|_6|_6|_6|_6|_5+@_5+@_5+@_5+@_5+@_5+@_5+@_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_2@_2@_2@_2@_2@_2@_2@_2@_2@_16_16_16_16_16_16_16_16_16_16_16_16_/@_/@_-B@_-B@_-B@_-B@_-B@_-B@_-B@_-B@_-B@_-B@_-B@_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_*@_*@_*@_*@_*@_*@_*@_*@_*@_*@_*@_*@_*@_)M_)M_)M_)M_)M_)M_)M_)M_)M_'@_'@_'@_'@_'@_'@_'@_'@_'@_&_&_$_$_$_$_$_"@_"@_"@_"@_"@_"@_"@_"@_!d_!d_!d_!d_!d_!d_!d_!d_!d_ @_ @_ @_ @_ @_ @_ @_ @_ @_ @_ @_ @_______________p@_p@__@_@_@_@_{_{_{_{_{_{_{_{_{_{_{_{_{_{_{_*@_*@_*@___________@_@_@_@_@_____A@_A@_A@_A@_A@____ @_ @_ @_ @_ @_ @_ L_ L_ L_ L_ L_ L_ L_ L_ L_ L_X@_X@_X@_X@_X@_X@_X@___________@_@_@_@_@_@_@_@_@_@_@_@_@_@_@_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_c_@_@_@^^@^@^@^@^@^@^z^z^z^z^z^z^z^z^z^z^z^z^z^z^)@^)@^)@^)@^)@^^^^^^^^^^^^^^^^^@^@^@^@^@^@^@@^@@^@@^@@^@@^@@^@@^@@^@@^@@^@@^@@^^^^^^^@^@^@^@^@^@^@^^W@^W@^W@^W@^W@^W@^W@^W@^W@^W@^^^^^^^^^^^@^@^@^@^@^@^@^@^@^@^b^b^b^b^b^b^b^b^b^b^b^b^b^b^b^b^b^b^n@^n@^n@^n@^n@^n@^n@^n@^n@^n@^n@^^^^^^^^^@^@^@^@^@^@^@^@^@^@^@^y^y^y^y^y^(@^(@^(@^(@^(@^(@^(@^(@^(@^(@^(@^(@^(@^(@^(@^^^^ۅ@^ۅ@^ۅ@^3^3^3^3^3^3^3^3^3^3^3^3^3^3^3^3^3^3^@^@^@^@^@^@^@^@^@^@^@^א^א^א^א^א^א^א^א^א^א^א^א^א^א^א^?@^?@^?@^?@^?@^?@^?@^?@^?@^?@^?@^?@^^^^^^^^^^^^^J^J^J^@^@^@^@^ϧ^V@^V@^V@^V@^V@^V@^V@^V@^V@^^^^^^^^^^^^^^^^^˳@^˳@^˳@^˳@^˳@^˳@^˳@^˳@^˳@^a^Ǿ^Ǿ^Ǿ^Ǿ^Ǿ^Ǿ^Ǿ^Ǿ^Ǿ^^^^^^^^^^^^^^^^^^^^^^^@^@^@^@^@^@^@^@^@^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^'@^'@^^^^^^^@^@^@^@^@^@^@^@^@^@^@^@^@^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^@^@^@^@^@^@^@^@^@^@^^^^^^^^^^^^^^^^^^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^>@^@^I^I^I^@^@^@^@^@^@^@^@^@^@^^^^^^^^^^^^^^^^U@^U@^U@^U@^U@^U@^U@^U@^U@^U@^U@^U@^U@^U@^U@^^^^^^^^^^@^@^`^`^`^`^`^`^`^`^`^@^@^@^@^@^^^^^^^^^l@^l@^l@^l@^l@^l@^l@^l@^l@^l@^l@^^^^^^^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^w^&@^^^@^@^@^@^@^@^1^1^1^1^1^1^@^@^@^@^@^@^@^@^@^@^@^@^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^H^H^H^H^H^H^H^H^H^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^^^^^^^^^^^^^^^^^T@^T@^T@^^^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^^^^^^^^^k@^k@^k@^k@^k@^k@^k@^k@^k@^k@^k@^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^@^@^v^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^^^^^^^^^^^^^^^^^^^^^^^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^0^0^0^0^0^@^@^@^@^@^@^@^^^<@^<@^}^}^}^}^}^}^}^}^|@^|@^|@^|@^|@^|@^|@^|@^|@^|@^|@^{G^{G^{G^{G^{G^{G^{G^{G^{G^{G^{G^{G^{G^{G^{G^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^y@^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^x^wS@^v^t@^t@^t@^t@^t@^t@^t@^t@^t@^t@^t@^t@^s^^s^^s^^s^^r @^r @^r @^r @^r @^r @^r @^r @^r @^r @^p^p^p^p^p^p^p^p^p^p^p^p^p^p^p^p^p^p^p^p^oj@^oj@^oj@^oj@^oj@^oj@^oj@^oj@^oj@^oj@^n^n^n^ku^ku^ku^ku^ku^ku^ku^ku^ku^ku^j$@^j$@^j$@^j$@^j$@^j$@^j$@^j$@^h^h^h^h^h^h^h^h^h^h^h^h^h^h^h^h^h^h^h^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^f/^c^c^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^b;@^`^`^`^`^`^`^`^`^`^`^`^`^`^`^`^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^_@^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^^F^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^\@^ZR@^Y^Y^Y^Y^Y^Y^Y^W@^W@^W@^W@^W@^W@^W@^W@^W@^W@^W@^W@^V]^V]^V]^V]^V]^V]^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^U @^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^S^Ri@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^O@^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^Nt^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^M#@^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^K^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^J@^G@^G@^G@^G@^G@^G@^G@^F^F^F^F^E:@^E:@^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^B@^B@^B@^B@^B@^B@^AE^AE^AE^AE^AE^AE^AE^AE^AE^AE^AE^>^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^=Q@^;^;^;^;^;^;^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^:@^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^9\^8 @^8 @^8 @^8 @^8 @^8 @^8 @^6^5h@^4^4^4^4^4^4^4^4^4^4^4^4^2@^2@^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^1s^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^0"@^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^*@^*@^*@^*@^)^)^)^)^)^)^)^)^)^)^)^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^(9@^&^&^&^&^&^&^&^&^&^&^&^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^%@^!^!^!^!^!^!^ P@^ P@^ P@^ P@^ P@^ P@^^^^^^^^^^^^^^@^@^@^@^@^@^@^@^@^@^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^g@^g@^g@^g@^g@^g@^g@^g@^g@^g@^^^^^^^^^^^^^^^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^r^!@^!@^!@^!@^!@^!@^!@^!@^!@^!@^!@^!@^^~@^,^,^,^,^,^,^,^,^,^,^,^ @^ @^ @^ @^ @^ @^ @^ @^ @^ 8@^ 8@^ 8@^ 8@^ 8@^ 8@^ 8@^ ^ ^ ^ ^ ^@^@^@^@^^^^^^@^@]Z]]]]]]]]]]]]f@]f@]f@]f@]f@]f@]f@]]]]]]]]]]]]]]]]]]]]]]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q]q] @] @]]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]}@]+]+]+]+]+]+]+]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]]]]]]]]]]]]]]]]]7@]7@]7@]7@]7@]7@]7@]7@]7@]7@]7@]7@]7@]]B]B]B]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]]]]]]]]]]]]]]]]]]]]]]]]]]]]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]N@]]]]]]]]]]]]]@]@]@]@]@]@]@]@]@]߶]߶]߶]߶]߶]߶]߶]߶]߶]߶]߶]߶]߶]߶]߶]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]e@]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]]]]]|@]*]*]*]*]*]*]*]*]*]*]*]*]*]@]@]@]@]@]@]@]@]@]@]@]҇]҇]҇]҇]҇]҇]҇]]Γ@]Γ@]A]A]A]A]A]A]A]A]A]A]A]A]A]A]A]A]@]@]@]@]@]@]@]@]@]@]@]@]@]@]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]ʞ]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]M@]X]X]X]X]X]X]X]@]@]@]@]@]@]@]@]µ]µ]µ]µ]µ]µ]µ]µ]µ]µ]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]d@]]]]]]]]]]]]]@]@]@]@]@]@]]]]]]]{@]{@]{@]{@])])])])])])])])])])])])]@]@]@]@]@]@]@]@]@]@]@]@]@]]]]]]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]]]]]]]]]]]]]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]W]W]W]W]W]@]@]@]@]@]@]@]@]@]@]@]@]@]@]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]c@]c@]c@]c@]c@]c@]c@]c@]c@]c@]c@]c@]@]n]@]]]]]]]]]]]]]]]]]]]]z@]z@]z@]z@]z@]z@]z@](](](](](](](](](]@]4@]4@]4@]4@]4@]4@]4@]]]]]]]]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]?]?]?]?]?]?]?]?]?]?]?]?]?]?]?]?]?]?]?]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]@]]]@]@]@]@]@]V]V]V]V]V]V]@]@]]]]]]]]]]]@]y@]y@]{]{]x]w@]w@]w@]w@]w@]w@]v>]v>]v>]v>]v>]v>]v>]rJ@]p]p]o@]o@]nU]nU]nU]m@]k]i]i]i]i]i]i]i]i]g@]fl]fl]fl]fl]fl]fl]e@]e@]e@]e@]e@]e@]e@]e@]c]c]c]c]c]c]c]c]c]c]c]c]c]c]c]bx@]bx@]bx@]bx@]bx@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]_@]^]^]^]^]^]^]]2@]]2@]]2@][]Z@]Z@]Z@]Y=]UI@]QT]QT]P@]P@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]M`@]L]L]L]L]L]L]L]L]L]J@]J@]J@]J@]J@]J@]J@]J@]J@]H@]D%]B@]A]@1@]=@]<<]<<]8H@]8H@]6]6]6]6]5@]5@]5@]5@]4S]4S]-@]+@]'$]%@]$]#0@]!];];]@]]]]]@]@]@]@]]@]@]i] u@] u@] u@] #] #]@]@]]/@]:]:\F@\F@\Q\@\\\]@\ \t@\t@\t@\t@\t@\t@\"\@\9\9\\\\\\ޢ@\ޢ@\P\@\ڭ\ڭ\ڭ\ڭ\ֹ@\@\!\8\@\[@\\r@\r@\,@\,@\\@\@\7\7\@\@\@\@\@\@\@\\@\|\+@\+@\+@\+@\+@\\@\@\6\6\\\\B@\B@\M\@\\@\~d\}@\}@\v{\s\o@\o@\k\j@\ac\]o@\V\Q\N\N\N\I\I\G\E@\suspend if it is NULL (git-fixes). - media: cedrus: Fix SUNXI tile size calculation (git-fixes). - media: mxl111sf: change mutex_init() location (git-fixes). - media: cx23885: Fix snd_card_free call on null card pointer (git-fixes). - media: tm6000: Avoid card name truncation (git-fixes). - media: si470x: Avoid card name truncation (git-fixes). - media: radio-wl1273: Avoid card name truncation (git-fixes). - media: i2c: ths8200 needs V4L2_ASYNC (git-fixes). - media: mtk-vpu: Fix a resource leak in the error handling path of 'mtk_vpu_probe()' (git-fixes). - commit db843c8- hwrng: mtk - Force runtime pm ops for sleep ops (git-fixes). - hwmon: (pmbus/lm25066) Let compiler determine outer dimension of lm25066_coeff (git-fixes). - hwmon: (pmbus/lm25066) Add offset coefficients (git-fixes). - media: TDA1997x: handle short reads of hdmi info frame (git-fixes). - media: v4l2-ioctl: S_CTRL output the right value (git-fixes). - media: v4l2-ioctl: Fix check_ext_ctrls (git-fixes). - media: staging/intel-ipu3: css: Fix wrong size comparison imgu_css_fw_init (git-fixes). - media: dvb-usb: fix ununit-value in az6027_rc_query (git-fixes). - media: cxd2880-spi: Fix a null pointer dereference on error handling path (git-fixes). - media: em28xx: add missing em28xx_close_extension (git-fixes). - commit cc194ed- virtio-gpu: fix possible memory allocation failure (git-fixes). - rsi: fix control-message timeout (git-fixes). - rtl8187: fix control-message timeouts (git-fixes). - wcn36xx: add proper DMA memory barriers in rx path (git-fixes). - wcn36xx: Fix HT40 capability for 2Ghz band (git-fixes). - wcn36xx: Add ability for wcn36xx_smd_dump_cmd_req to pass two's complement (git-fixes). - hwmon: Fix possible memleak in __hwmon_device_register() (git-fixes). - firmware/psci: fix application of sizeof to pointer (git-fixes). - usbnet: fix error return code in usbnet_probe() (git-fixes). - usbnet: sanity check for maxpacket (git-fixes). - commit 4c5043d- mwifiex: fix division by zero in fw download path (git-fixes). - libertas_tf: Fix possible memory leak in probe and disconnect (git-fixes). - mt76: mt76x02: fix endianness warnings in mt76x02_mac.c (git-fixes). - mwifiex: Send DELBA requests according to spec (git-fixes). - rsi: stop thread firstly in rsi_91x_init() error handling (git-fixes). - rsi: Fix module dev_oper_mode parameter description (git-fixes). - mmc: sdhci: Map more voltage level to SDHCI_POWER_330 (git-fixes). - commit e68a671- drm/msm: Fix potential NULL dereference in DPU SSPP (git-fixes). - drm/amdgpu: fix warning for overflow check (git-fixes). - drm/v3d: fix wait for TMU write combiner flush (git-fixes). - drm/sun4i: Fix macros in sun8i_csc.h (git-fixes). - libertas: Fix possible memory leak in probe and disconnect (git-fixes). - b43legacy: fix a lower bounds test (git-fixes). - Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync (git-fixes). - Bluetooth: fix init and cleanup of sco_conn.timeout_work (git-fixes). - commit 58db500- ath6kl: fix division by zero in send path (git-fixes). - ath10k: fix division by zero in send path (git-fixes). - ath6kl: fix control-message timeout (git-fixes). - ath10k: fix control-message timeout (git-fixes). - ath10k: fix max antenna gain unit (git-fixes). - ath9k: Fix potential interrupt storm on queue reset (git-fixes). - b43: fix a lower bounds test (git-fixes). - ath10k: Fix missing frame timestamp for beacon/probe-resp (git-fixes). - ata: sata_mv: Fix the error handling of mv_chip_id() (git-fixes). - commit 276cbd3- Input: i8042 - Add quirk for Fujitsu Lifebook T725 (bsc#1191980). - commit 9545e5e- x86/msi: Force affinity setup before startup (bsc#1152489). - Refresh patches.suse/0002-x86-msi-Only-use-high-bits-of-MSI-address-for-DMAR-u.patch. - commit a7cad27- ibmvnic: delay complete() (bsc#1094840 ltc#167098 git-fixes). - commit f2c4d71- xfs: don't allow log writes if the data device is readonly (bsc#1192229). - commit 67ee0ba- series.conf: refresh - update upstream references and resort: - patches.suse/ibmvnic-Consolidate-code-in-replenish_rx_pool.patch - patches.suse/ibmvnic-Fix-up-some-comments-and-messages.patch - patches.suse/ibmvnic-Reuse-LTB-when-possible.patch - patches.suse/ibmvnic-Reuse-rx-pools-when-possible.patch - patches.suse/ibmvnic-Reuse-tx-pools-when-possible.patch - patches.suse/ibmvnic-Use-bitmap-for-LTB-map_ids.patch - patches.suse/ibmvnic-Use-rename-local-vars-in-init_rx_pools.patch - patches.suse/ibmvnic-Use-rename-local-vars-in-init_tx_pools.patch - patches.suse/ibmvnic-init_tx_pools-move-loop-invariant-code.patch - commit 35d2ed0- Update kabi files. - update from November 2021 maintenance update submission (commit fb4a33cb1752) - commit 24b46c0- x86/ioapic: Force affinity setup before startup (bsc#1152489). - commit 305e50a- genirq: Provide IRQCHIP_AFFINITY_PRE_STARTUP (bsc#1152489). - commit e709b2b- nvme-pci: set min_align_mask (bsc#1191851). - swiotlb: respect min_align_mask (bsc#1191851). - swiotlb: don't modify orig_addr in swiotlb_tbl_sync_single (bsc#1191851). - swiotlb: refactor swiotlb_tbl_map_single (bsc#1191851). - swiotlb: clean up swiotlb_tbl_unmap_single (bsc#1191851). - swiotlb: factor out a nr_slots helper (bsc#1191851). - swiotlb: factor out an io_tlb_offset helper (bsc#1191851). - swiotlb: add a IO_TLB_SIZE define (bsc#1191851). - commit 63c0e38- driver core: add a min_align_mask field to struct device_dma_parameters (bsc#1191851). - commit cb95969- KVM: s390: index kvm->arch.idle_mask by vcpu_idx (bsc#1133021). - KVM: s390: VSIE: correctly handle MVPG when in VSIE (bsc#1133021). - KVM: s390: extend kvm_s390_shadow_fault to return entry pointer (bsc#1133021). - KVM: s390: split kvm_s390_logical_to_effective (bsc#1133021). - commit ef66201- blacklist.conf: ed65df63a39a ("tracing: Have all levels of checks prevent recursion") It fixes a corner case, which should be rare. The patch changes a public header file and even if the API should not be used externally, there is always a risk. - commit 80def7c- x86/reboot: Limit Dell Optiplex 990 quirk to early BIOS versions (bsc#1152489). - commit 96ee990- netfilter: conntrack: collect all entries in one cycle (bsc#1173604). - commit c4117de- ipv6/netfilter: Discard first fragment not including all headers (bsc#1191241). - IPv6: reply ICMP error if the first fragment don't include all headers (bsc#1191241). - ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition (bsc#1191241). - net: ipv6: Discard next-hop MTU less than minimum link MTU (bsc#1191241). - commit c74316d- swiotlb: Split size parameter to map/unmap APIs (bsc#1191851). - Refresh patches.suse/dma-direct-exclude-dma_direct_map_resource-from-the-min_low_pfn-check.patch. - commit 0eae9b5- KVM: PPC: Book3S HV: Tolerate treclaim. in fake-suspend mode changing registers (bsc#1156395). - KVM: PPC: Fix clearing never mapped TCEs in realmode (bsc#1156395). - KVM: PPC: Book3S HV Nested: Reflect guest PMU in-use to L0 when guest SPRs are live (bsc#1156395). - KVM: PPC: Book3S HV Nested: Sanitise H_ENTER_NESTED TM state (bsc#1156395). - KVM: PPC: Fix kvm_arch_vcpu_ioctl vcpu_load leak (bsc#1156395). - commit 2ce76cc- powerpc/xive: Discard disabled interrupts in get_irqchip_state() (fate#322438 bsc#1085030 git-fixes). - commit 3106974- x86/pat: Pass valid address to sanitize_phys() (bsc#1152489). - commit 1702f6b- KVM: PPC: Book3S HV: Save host FSCR in the P7/8 path (bsc#1065729). - commit 4a60f84- sctp: add vtag check in sctp_sf_ootb (CVE-2021-3772 bsc#1190351). - sctp: add vtag check in sctp_sf_do_8_5_1_E_sa (CVE-2021-3772 bsc#1190351). - sctp: add vtag check in sctp_sf_violation (CVE-2021-3772 bsc#1190351). - sctp: fix the processing for COOKIE_ECHO chunk (CVE-2021-3772 bsc#1190351). - sctp: fix the processing for INIT_ACK chunk (CVE-2021-3772 bsc#1190351). - sctp: fix the processing for INIT chunk (CVE-2021-3772 bsc#1190351). - sctp: use init_tag from inithdr for ABORT chunk (CVE-2021-3772 bsc#1190351). - sctp: check asoc peer.asconf_capable before processing asconf (bsc#1190351). - commit c4ecd47- mmc: vub300: fix control-message timeouts (git-fixes). - mmc: dw_mmc: exynos: fix the finding clock sample value (git-fixes). - commit 15296ab- scsi: lpfc: Update lpfc version to 14.0.0.3 (bsc#1192145). - scsi: lpfc: Allow fabric node recovery if recovery is in progress before devloss (bsc#1192145). - scsi: lpfc: Fix link down processing to address NULL pointer dereference (bsc#1192145). - scsi: lpfc: Allow PLOGI retry if previous PLOGI was aborted (bsc#1192145). - scsi: lpfc: Fix use-after-free in lpfc_unreg_rpi() routine (bsc#1192145). - scsi: lpfc: Correct sysfs reporting of loop support after SFP status change (bsc#1192145). - scsi: lpfc: Wait for successful restart of SLI3 adapter during host sg_reset (bsc#1192145). - scsi: lpfc: Revert LOG_TRACE_EVENT back to LOG_INIT prior to driver_resource_setup() (bsc#1192145). - commit ea0ad63- net: lan78xx: fix division by zero in send path (git-fixes). - net: batman-adv: fix error handling (git-fixes). - nfc: port100: fix using -ERRNO as command type mask (git-fixes). - cfg80211: scan: fix RCU in cfg80211_add_nontrans_list() (git-fixes). - regmap: Fix possible double-free in regcache_rbtree_exit() (git-fixes). - commit 1fb45c2- ice: Add missing E810 device ids (jsc#SLE-7966 bsc#1157177). - net: hns3: fix vf reset workqueue cannot exit (bsc#1154353). - mlxsw: thermal: Fix out-of-bounds memory accesses (git-fixes). - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (git-fixes). - qed: Fix missing error code in qed_slowpath_start() (git-fixes). - ionic: don't remove netdev->dev_addr when syncing uc list (bsc#1167773). - iavf: fix double unlock of crit_lock (git-fixes). - i40e: Fix freeing of uninitialized misc IRQ vector (git-fixes). - i40e: fix endless loop under rtnl (git-fixes). - gve: report 64bit tx_bytes counter from gve_handle_report_stats() (bsc#1176940). - gve: fix gve_get_stats() (git-fixes). - gve: Properly handle errors in gve_assign_qpl (bsc#1176940). - gve: Avoid freeing NULL pointer (git-fixes). - gve: Correct available tx qpl check (git-fixes). - net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size() (git-fixes). - ixgbe: Fix NULL pointer dereference in ixgbe_xdp_setup (git-fixes). - net/mlx4_en: Don't allow aRFS for encapsulated packets (git-fixes). - qed: rdma - don't wait for resources under hw error recovery flow (git-fixes). - bnxt_en: Fix TX timeout when TX ring size is set to the smallest (git-fixes). - net/mlx4_en: Resolve bad operstate value (git-fixes). - qed: Handle management FW error (git-fixes). - net/af_unix: fix a data-race in unix_dgram_poll (bsc#1154353). - net/mlx5: FWTrace, cancel work on alloc pd error flow (git-fixes). - net/mlx5: Fix unpublish devlink parameters (jsc#SLE-8464). - i40e: Fix ATR queue selection (git-fixes). - mlx5: count all link events (git-fixes). - commit 64e7f77- sctp: add param size validation for SCTP_PARAM_SET_PRIMARY (CVE-2021-3655 bsc#1188563). - sctp: validate chunk size in __rcv_asconf_lookup (CVE-2021-3655 bsc#1188563). - sctp: add size validation when walking chunks (CVE-2021-3655 bsc#1188563). - commit e419503- powerpc/idle: Don't corrupt back chain when going idle (bko#206669 bsc#1174585 bsc#1192107 CVE-2021-43056). - KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest (bko#206669 bsc#1174585 bsc#1192107 CVE-2021-43056). - KVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest() (bko#206669 bsc#1174585 bsc#1192107 CVE-2021-43056). - powerpc64/idle: Fix SP offsets when saving GPRs (bko#206669 bsc#1174585 bsc#1192107 CVE-2021-43056). - commit 90745c9- Update patch reference for ISDN fix (CVE-2021-3896 bsc#1191958) - commit b1524c3- nvme-pci: fix error unwind in nvme_map_data (bsc#1191934). - nvme-pci: refactor nvme_unmap_data (bsc#1191934). - commit 3a9d8cd- ASoC: DAPM: Fix missing kctl change notifications (git-fixes). - ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset (git-fixes). - ALSA: hda/realtek: Add quirk for Clevo PC50HS (git-fixes). - Input: snvs_pwrkey - add clk handling (git-fixes). - isdn: mISDN: Fix sleeping function called from invalid context (git-fixes). - isdn: cpai: check ctr->cnr to avoid array index out of bound (git-fixes). - ALSA: hda: avoid write to STATESTS if controller is in reset (git-fixes). - platform/x86: intel_scu_ipc: Update timeout value in comment (git-fixes). - commit 26182ff- xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes (bsc#1190642). - commit 4a5d10a- e1000e: Fix packet loss on Tiger Lake and later (git-fixes). - can: peak_usb: pcan_usb_fd_decode_status(): fix back to ERROR_ACTIVE state notification (git-fixes). - can: peak_pci: peak_pci_remove(): fix UAF (git-fixes). - can: rcar_can: fix suspend/resume (git-fixes). - lan78xx: select CRC32 (git-fixes). - ASoC: wm8960: Fix clock configuration on slave mode (git-fixes). - audit: fix possible null-pointer dereference in audit_filter_rules (git-fixes). - ata: ahci_platform: fix null-ptr-deref in ahci_platform_enable_regulators() (git-fixes). - virtio: write back F_VERSION_1 before validate (git-fixes). - mei: me: add Ice Lake-N device id (git-fixes). - iio: adc: aspeed: set driver data when adc probe (git-fixes). - usb: musb: dsps: Fix the probe error path (git-fixes). - xhci: guard accesses to ep_state in xhci_endpoint_reset() (git-fixes). - ALSA: usb-audio: Add quirk for VF0770 (git-fixes). - ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW (git-fixes). - ALSA: hda/realtek - ALC236 headset MIC recording issue (git-fixes). - ALSA: hda/realtek: Add quirk for Clevo X170KM-G (git-fixes). - ALSA: hda/realtek: Complete partial device name to avoid ambiguity (git-fixes). - watchdog: orion: use 0 for unset heartbeat (git-fixes). - commit 2657409- blacklist.conf: irrelevant - commit 4c2a4eb- USB: xhci: dbc: fix tty registration race (git-fixes). - commit 8800f76- xhci: guard accesses to ep_state in xhci_endpoint_reset() (git-fixes). - commit 2947d1e- nfc: nci: fix the UAF of rf_conn_info object (CVE-2021-3760 bsc#1190067). - commit 9eabc0c- Update patch reference for firewire fix (CVE-2021-42739 CVE-2021-3542 bsc#1184673) - commit 2adc0e5- cipso,calipso: resolve a number of problems with the DOI refcounts (CVE-2021-33033 bsc#1186109). - commit 499c5a0- ceph: fix handling of "meta" errors (bsc#1192041). - ceph: skip existing superblocks that are blocklisted or shut down when mounting (bsc#1192040). - commit 329e544- kabi: hide return value type change of sctp_af::from_addr_param (CVE-2021-3655 bsc#1188563). - sctp: fix return value check in __sctp_rcv_asconf_lookup (CVE-2021-3655 bsc#1188563). - sctp: validate from_addr_param return (CVE-2021-3655 bsc#1188563). - commit 9f59a3f- Update patches.suse/net_sched-cls_route-remove-the-right-filter-from-has.patch references (add CVE-2021-3715 bsc#1190349). - commit bd39990- Revert "sched/fair: Add ancestors of unthrottled undecayed cfs_rq" The reverted commit is a followup of a7b359fc6a37 ("sched/fair: Correctly insert cfs_rq's to list on unthrottle") which is going to be reverted as part of short-term solution of bsc#1191343. This reverts commit d8d828e03d4f1e436c3580616c7b53db38e38dcb. - commit c6395e4- blacklist.conf: 3a1255396b5a x86/alternatives: add missing insn.h include - commit 9bccba9- USB: serial: option: add Quectel EC200S-CN module support (git-fixes). - commit e1df2bf- USB: serial: qcserial: add EM9191 QDL support (git-fixes). - commit b42181b- USB: serial: option: add prod. id for Quectel EG91 (git-fixes). - commit cff3cf9- USB: serial: option: add Telit LE910Cx composition 0x1204 (git-fixes). - commit 3ccad62- xhci: Enable trust tx length quirk for Fresco FL11 USB controller (git-fixes). - commit 55acfbd- xhci: Fix command ring pointer corruption while aborting a command (git-fixes). - commit bf02a9c- Input: xpad - add support for another USB ID of Nacon GC-100 (git-fixes). - commit eba25ff- media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt() (CVE-2021-3542 bsc#1184673). - commit fab3d4f- net: mana: Fix error handling in mana_create_rxq() (git-fixes, bsc#1191800). - commit 8c6d0b8- ocfs2: fix data corruption after conversion from inline format (bsc#1190795). - commit ac3ffc2- blacklist.conf: 4758fd801f91 x86/platform/olpc: Correct ifdef symbol to intended CONFIG_OLPC_XO15_SCI - commit c40c7ae- blacklist.conf: 225bac2dc5d1 x86/Kconfig: Correct reference to MWINCHIP3D - commit eee3b41- blacklist.conf: 711885906b5c x86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically - commit da61791- gpio: pca953x: Improve bias setting (git-fixes). - spi: spi-nxp-fspi: don't depend on a specific node name erratum workaround (git-fixes). - drm/panel: olimex-lcd-olinuxino: select CRC32 (git-fixes). - drm/msm/dsi: fix off by one in dsi_bus_clk_enable error handling (git-fixes). - drm/msm/dsi: Fix an error code in msm_dsi_modeset_init() (git-fixes). - drm/msm: Fix null pointer dereference on pointer edp (git-fixes). - mac80211: check return value of rhashtable_init (git-fixes). - commit c393393- iio: light: opt3001: Fixed timeout error when 0 lux (git-fixes). - iio: mtk-auxadc: fix case IIO_CHAN_INFO_PROCESSED (git-fixes). - iio: ssp_sensors: add more range checking in ssp_parse_dataframe() (git-fixes). - iio: ssp_sensors: fix error code in ssp_print_mcu_debug() (git-fixes). - iio: adc128s052: Fix the error handling path of 'adc128_probe()' (git-fixes). - iio: dac: ti-dac5571: fix an error code in probe() (git-fixes). - drm/amdgpu: fix gart.bo pin_count leak (git-fixes). - mac80211: Drop frames from invalid MAC address in ad-hoc mode (git-fixes). - HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs (git-fixes). - HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS (git-fixes). - commit 372fd90- pata_legacy: fix a couple uninitialized variable bugs (git-fixes). - cb710: avoid NULL pointer subtraction (git-fixes). - acpi/arm64: fix next_platform_timer() section mismatch error (git-fixes). - ata: sata_dwc_460ex: No need to call phy_exit() befre phy_init() (git-fixes). - ACPI: fix NULL pointer dereference (git-fixes). - ACPI: bgrt: Fix CFI violation (git-fixes). - ACPI: Use DEVICE_ATTR_ macros (git-fixes). - commit 1a13895- rpm/kernel-obs-build.spec.in: reduce initrd functionality For building in OBS, we always build inside a virtual machine that gets a new, freshly created scratch filesystem image. So we do not need to handle fscks because that ain't gonna happen, as well as not we do not need to handle microcode update in the initrd as these only can be run on the host system anyway. We can also strip and hardlink as an additional optimisation that should not significantly hurt. - commit c72c6fc- nvme-pci: Fix abort command id (git-fixes). - nvme: add command id quirk for apple controllers (git-fixes). - commit 210cebb- xen: reset legacy rtc flag for PV domU (git-fixes). - commit 2ae68ea- xen: fix setting of max_pfn in shared_info (git-fixes). - commit 2d2e1e0- fix patch metadata - fix Patch-mainline: - patches.suse/NFS-Do-uncached-readdir-when-we-re-seeking-a-cookie-.patch - commit b7dfcc7- NFS: Do uncached readdir when we're seeking a cookie in an empty page cache (bsc#1191628). - commit 5ca83d3- NFC: digital: fix possible memory leak in digital_in_send_sdd_req() (git-fixes). - NFC: digital: fix possible memory leak in digital_tg_listen_mdaa() (git-fixes). - nfc: fix error handling of nfc_proto_register() (git-fixes). - ALSA: seq: Fix a potential UAF by wrong private_free call order (git-fixes). - commit aada78f- nvme-fc: remove freeze/unfreeze around update_nr_hw_queues (bsc#1185762). - nvme-fc: avoid race between time out and tear down (bsc#1185762). - nvme-fc: update hardware queues before using them (bsc#1185762). - commit 4afdc63- scsi: lpfc: Fix memory overwrite during FC-GS I/O abort handling (bsc#1191349). - commit c7eb218- net: hso: fix NULL-deref on disconnect regression (git-fixes). - commit 901c621- platform/mellanox: mlxreg-io: Fix argument base in kstrtou32() call (git-fixes). - i2c: acpi: fix resource leak in reconfiguration device addition (git-fixes). - mmc: meson-gx: do not use memcpy_to/fromio for dram-access-quirk (git-fixes). - drm/nouveau/debugfs: fix file release memory leak (git-fixes). - video: fbdev: gbefb: Only instantiate device when built for IP32 (git-fixes). - soc: qcom: mdt_loader: Drop PT_LOAD check on hash segment (git-fixes). - ptp_pch: Load module automatically if ID matches (git-fixes). - phy: mdio: fix memory leak (git-fixes). - libata: Add ATA_HORKAGE_NO_NCQ_ON_ATI for Samsung 860 and 870 SSD (git-fixes). - ptp_pch: Restore dependency on PCI (git-fixes). - net: cdc_eem: fix tx fixup skb leak (git-fixes). - net: hso: fix null-ptr-deref during tty device unregistration (git-fixes). - net: cdc_ncm: correct overhead in delayed_ndp_size (git-fixes). - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() (git-fixes). - commit 4915e73- pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init (git-fixes). - commit aaf0697- scsi: qla2xxx: Remove redundant initialization of pointer req (bsc#1190941). - scsi: qla2xxx: Update version to 10.02.07.100-k (bsc#1190941). - scsi: qla2xxx: Fix use after free in eh_abort path (bsc#1190941). - scsi: qla2xxx: Move heartbeat handling from DPC thread to workqueue (bsc#1190941). - scsi: qla2xxx: Call process_response_queue() in Tx path (bsc#1190941). - scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file (bsc#1190941). - scsi: qla2xxx: edif: Use link event to wake up app (bsc#1190941). - scsi: qla2xxx: Fix crash in NVMe abort path (bsc#1190941). - scsi: qla2xxx: Check for firmware capability before creating QPair (bsc#1190941). - scsi: qla2xxx: Display 16G only as supported speeds for 3830c card (bsc#1190941). - scsi: qla2xxx: Add support for mailbox passthru (bsc#1190941). - scsi: qla2xxx: Fix excessive messages during device logout (bsc#1190941). - scsi: qla2xxx: Restore initiator in dual mode (bsc#1190941). - scsi: qla2xxx: Open-code qla2xxx_eh_device_reset() (bsc#1190941). - scsi: qla2xxx: Open-code qla2xxx_eh_target_reset() (bsc#1190941). - scsi: qla2xxx: Do not call fc_block_scsi_eh() during bus reset (bsc#1190941). - scsi: qla2xxx: Update version to 10.02.06.200-k (bsc#1190941). - scsi: qla2xxx: edif: Fix returnvar.cocci warnings (bsc#1190941). - scsi: qla2xxx: Fix NVMe session down detection (bsc#1190941). - scsi: qla2xxx: Fix NVMe retry (bsc#1190941). - scsi: qla2xxx: Fix hang on NVMe command timeouts (bsc#1190941). - scsi: qla2xxx: Fix NVMe | FCP personality change (bsc#1190941). - scsi: qla2xxx: edif: Do secure PLOGI when auth app is present (bsc#1190941). - scsi: qla2xxx: edif: Add N2N support for EDIF (bsc#1190941). - scsi: qla2xxx: Fix hang during NVMe session tear down (bsc#1190941). - scsi: qla2xxx: edif: Fix EDIF enable flag (bsc#1190941). - scsi: qla2xxx: edif: Reject AUTH ELS on session down (bsc#1190941). - scsi: qla2xxx: edif: Fix stale session (bsc#1190941). - scsi: qla2xxx: Update version to 10.02.06.100-k (bsc#1190941). - scsi: qla2xxx: Sync queue idx with queue_pair_map idx (bsc#1190941). - scsi: qla2xxx: Changes to support kdump kernel for NVMe BFS (bsc#1190941). - scsi: qla2xxx: Changes to support kdump kernel (bsc#1190941). - scsi: qla2xxx: Suppress unnecessary log messages during login (bsc#1190941). - scsi: qla2xxx: Fix NPIV create erroneous error (bsc#1190941). - scsi: qla2xxx: Fix unsafe removal from linked list (bsc#1190941). - scsi: qla2xxx: Fix port type info (bsc#1190941). - scsi: qla2xxx: Add debug print of 64G link speed (bsc#1190941). - scsi: qla2xxx: Show OS name and version in FDMI-1 (bsc#1190941). - scsi: qla2xxx: Changes to support FCP2 Target (bsc#1190941). - scsi: qla2xxx: Adjust request/response queue size for 28xx (bsc#1190941). - scsi: qla2xxx: Add host attribute to trigger MPI hang (bsc#1190941). - scsi: qla2xxx: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (bsc#1190941). - commit c17f95e- kernel-spec-macros: Since rpm 4.17 %verbose is unusable (bsc#1191229). The semantic changed in an incompatible way so invoking the macro now causes a build failure. - commit 3e55f55- powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC (bsc#1188983 CVE-2021-34556 bsc#1188985 CVE-2021-35477). - powerpc/security: Add a helper to query stf_barrier type (bsc#1188983 CVE-2021-34556 bsc#1188985 CVE-2021-35477). - powerpc/bpf: Validate branch ranges (bsc#1188983 CVE-2021-34556 bsc#1188985 CVE-2021-35477). - powerpc/lib: Add helper to check if offset is within conditional branch range (bsc#1188983 CVE-2021-34556 bsc#1188985 CVE-2021-35477). - powerpc/bpf: Fix BPF_SUB when imm == 0x80000000 (bsc#1065729). - powerpc/bpf: Fix BPF_MOD when imm == 1 (bsc#1065729). - powerpc/bpf: Use bctrl for making function calls (bsc#1065729). - powerpc/lib: Fix emulate_step() std test (bsc#1065729). - commit 3f6738b- bpf: Fix a typo of reuseport map in bpf.h (git-fixes). - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h (git-fixes). - bpf: Fix up bpf_skb_adjust_room helper's skb csum setting (git-fixes). - commit b5d0357- platform/x86: dell-smbios-wmi: Add missing kfree in error-exit from run_smbios_call (git-fixes). - commit a539d65- x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails (bsc#1152489). - commit dba5675- can: xilinx_can: handle failure cases of pm_runtime_get_sync (git-fixes). - commit 82f6db6- blacklist.conf: feature, not a fix - commit fd65896- net: can: ems_usb: fix use-after-free in ems_usb_disconnect() (git-fixes). - commit 5487063- can: peak_usb: fix use after free bugs (git-fixes). - commit 3ad9b4d- can: dev: can_restart: fix use after free bug (git-fixes). - commit 0943ca2- can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error path (git-fixes). - commit 2fec0e3- Update patch reference for soc fix (CVE-2021-42252 bsc#1190479) - commit f05067d- blacklist.conf: requires newer USB PD version than we have - commit a8bbe8f- blacklist.conf: needs newer USB PD than we have - commit d0d6a50- USB: cdc-acm: fix minor-number release (git-fixes). - commit 477b833- USB: cdc-acm: clean up probe error labels (git-fixes). - commit 576c313- blacklist.conf: 4758fd801f91 x86/platform/olpc: Correct ifdef symbol to intended CONFIG_OLPC_XO15_SCI - commit fab5572- blacklist.conf: 225bac2dc5d1 x86/Kconfig: Correct reference to MWINCHIP3D - commit 08dc820- kabi: block: Fix kabi of blk_mq_sched_try_insert_merge() (bsc#1191456). - commit 7832c25- tpm: ibmvtpm: Avoid error message when process gets signal while waiting (bsc#1065729). - commit 544cf01- powerpc/pseries: Fix build error when NUMA=n (bsc#1190620 ltc#194498 git-fixes). - commit 6c29f54- xfs: fix up non-directory creation in SGID directories (bsc#1190006 CVE-2018-13405). - commit f5a61c4- xfs: remove the icdinode di_uid/di_gid members (bsc#1190006). - commit 7385144- xfs: ensure that the inode uid/gid match values match the icdinode ones (bsc#1190006). - commit 0ddcc0f- xfs: merge the projid fields in struct xfs_icdinode (bsc#1190006). - commit 3a30ff3- Revert "sched/fair: Correctly insert cfs_rq's to list on unthrottle (git-fixes)" (bsc#1191343, bsc#1191238) The commit a7b359fc6a37 ("sched/fair: Correctly insert cfs_rq's to list on unthrottle") causes more severe problems than the problem it aims to solve (corrupting cfs_rq leaf list vs insufficient fairness). While both need to be solved eventually, revert the commit until non-breaking solution is found. Blacklist the commit as well, to prevent a regression via git-fixes. This reverts commit 1732b9ba91b4b7a0822e98bd910feefbcb5424dc. - commit b8c1ddd- Revert "sched/fair: Ensure that the CFS parent is added after unthrottling (git-fixes)." The reverted commit is a followup of a7b359fc6a37 ("sched/fair: Correctly insert cfs_rq's to list on unthrottle") which is going to be reverted as part of short-term solution of bsc#1191343. This reverts commit f3a38fbebab3f88070c129511f99a896f5532f7e. - commit 4f925fc- fscrypt: add fscrypt_symlink_getattr() for computing st_size (bsc#1191449). - commit 549a3d8- blk: Fix lock inversion between ioc lock and bfqd lock (bsc#1191456). - commit adb5e59- bfq: Remove merged request already in bfq_requests_merged() (bsc#1191456). - commit 0d474e5- fs, mm: fix race in unlinking swapfile (bsc#1191455). - commit cd60ce3- blacklist.conf: Blacklist 889c05cc5834 - commit ea30b1a- blacklist.conf: Blacklist 6961fed42014 - commit b6fb7af- blktrace: Fix uaf in blk_trace access after removing by sysfs (bsc#1191452). - commit a4f24d0- block: bfq: fix bfq_set_next_ioprio_data() (bsc#1191451). - commit 34735be- ext4: fix reserved space counter leakage (bsc#1191450). - commit 449ab75- ext4: report correct st_size for encrypted symlinks (bsc#1191449). - commit 3669a7f- bpf: Fix integer overflow in prealloc_elems_and_freelist() (bsc#1191317, CVE-2021-41864). - commit d4466f5- Add cherry-picked commit id to the usb hso fix (git-fixes) - commit a4c3be7- drm/amd/display: Pass PCI deviceid into DC (git-fixes). - e100: fix buffer overrun in e100_get_regs (git-fixes). - e100: fix length calculation in e100_get_regs_len (git-fixes). - HID: u2fzero: ignore incomplete packets without data (git-fixes). - HID: betop: fix slab-out-of-bounds Write in betop_probe (git-fixes). - net: hso: add failure handler for add_net_device (git-fixes). - HID: usbhid: free raw_report buffers in usbhid_stop (git-fixes). - usb: hso: remove the bailout parameter (git-fixes). - usb: hso: fix error handling code of hso_create_net_device (git-fixes). - e100: handle eeprom as little endian (git-fixes). - hso: fix bailout in error case of probe (git-fixes). - PCI: Fix pci_host_bridge struct device release/free handling (git-fixes). - commit 51aaf55- Update kabi files. - update from October 2021 maintenance update submission (commit c909dd500033) - commit d500b18- rpm: use _rpmmacrodir (boo#1191384) - commit e350c14- net: 6pack: fix slab-out-of-bounds in decode_data (CVE-2021-42008 bsc#1191315). - commit b0db75a- x86/cpu: Fix core name for Sapphire Rapids (jsc#SLE-15289). - powercap: intel_rapl: add support for Sapphire Rapids (jsc#SLE-15289). - commit 053c38b- series.conf: cleanup - move a kabi workaround into correct section: patches.kabi/ipvs-Fix-up-kabi-for-expire_nodest_conn_work-additio.patch - commit bc02214- sched/fair: Add ancestors of unthrottled undecayed cfs_rq (bsc#1191292). - commit d8d828e- blacklist.conf: Update for 51e1bb9eeaf7 - commit fe28675- x86/alternatives: Teach text_poke_bp() to emulate instructions (bsc#1185302). - Refresh patches.suse/x86-alternatives-sync-bp_patching-update-for-avoiding-null-pointer-exception.patch. - commit ef191ae- blk-mq: kABI fixes for blk_mq_queue_map (bsc#1185762). - blk-mq: don't deactivate hctx if managed irq isn't used (bsc#1185762). - blk-mq: mark if one queue map uses managed irq (bsc#1185762). - genirq: add device_has_managed_msi_irq (bsc#1185762). - commit 57a6cb7- hwmon: (tmp421) fix rounding for negative values (git-fixes). - hwmon: (tmp421) report /PVLD condition as fault (git-fixes). - hwmon: (mlxreg-fan) Return non-zero value when fan current state is enforced from sysfs (git-fixes). - commit 2560193- ipc: remove memcg accounting for sops objects in do_semtimedop() (bsc#1190115). - Delete patches.suse/ipc-remove-memcg-accounting-for-sops-objects.patch. Refreshing patch with upstream metadata. - commit 2d6ef2e- powerpc/perf/hv-gpci: Fix counter value parsing (bsc#1065729). - commit 628c3ee- powerpc/pseries/dlpar: use rtas_get_sensor() (bsc#1065729). - commit 466f31b- powerpc/powernv: Fix machine check reporting of async store errors (bsc#1065729). - commit 0b715ae- powerpc/perf: Fix the check for SIAR value (bsc#1065729). - powerpc/perf: Drop the case of returning 0 as instruction pointer (bsc#1065729). - powerpc/perf: Use stack siar instead of mfspr (bsc#1065729). - powerpc/perf: Fix crash in perf_instruction_pointer() when ppmu is not set (bsc#1065729). - powerpc/perf: Use regs->nip when SIAR is zero (bsc#1065729). - powerpc/perf: Use the address from SIAR register to set cpumode flags (bsc#1065729). - commit f3110f1- apparmor: remove duplicate macro list_entry_is_head() (git-fixes). - commit 514b75b- xhci: Set HCD flag to defer primary roothub registration (git-fixes). - commit 8f4e75e- USB: serial: option: add device id for Foxconn T99W265 (git-fixes). - USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter (git-fixes). - USB: serial: option: add Telit LN920 compositions (git-fixes). - usb-storage: Add quirk for ScanLogic SL11R-IDE older than 2.6c (git-fixes). - usb: core: hcd: Add support for deferring roothub registration (git-fixes). - commit 0a6378c- mac80211: fix use-after-free in CCMP/GCMP RX (git-fixes). - mac80211-hwsim: fix late beacon hrtimer handling (git-fixes). - mac80211: mesh: fix potentially unaligned access (git-fixes). - mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap (git-fixes). - Re-enable UAS for LaCie Rugged USB3-FW with fk quirk (git-fixes). - usb: dwc2: gadget: Fix ISOC flow for BDMA and Slave (git-fixes). - spi: Fix tegra20 build with CONFIG_PM=n (git-fixes). - tty: synclink_gt, drop unneeded forward declarations (git-fixes). - commit dbd9f90- mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug (git-fixes). - ALSA: firewire-motu: fix truncated bytes in message tracepoints (git-fixes). - ASoC: SOF: Fix DSP oops stack dump output contents (git-fixes). - ASoC: fsl_micfil: register platform component before registering cpu dai (git-fixes). - ASoC: mediatek: common: handle NULL case in suspend/resume function (git-fixes). - media: cedrus: Fix SUNXI tile size calculation (git-fixes). - watchdog/sb_watchdog: fix compilation problem due to COMPILE_TEST (git-fixes). - dmaengine: xilinx_dma: Set DMA mask for coherent APIs (git-fixes). - dmaengine: ioat: depends on !UML (git-fixes). - console: consume APC, DM, DCS (git-fixes). - commit 71b860e- thermal/core: Potential buffer overflow in thermal_build_list_of_policies() (git-fixes). - rtc: rx8010: select REGMAP_I2C (git-fixes). - pwm: stm32-lp: Don't modify HW state in .remove() callback (git-fixes). - pwm: rockchip: Don't modify HW state in .remove() callback (git-fixes). - pwm: img: Don't modify HW state in .remove() callback (git-fixes). - dmaengine: sprd: Add missing MODULE_DEVICE_TABLE (git-fixes). - PCI: pci-bridge-emul: Add PCIe Root Capabilities Register (git-fixes). - PCI: pci-bridge-emul: Fix array overruns, improve safety (git-fixes). - PCI: pci-bridge-emul: Fix big-endian support (git-fixes). - commit a8d4022- fpga: machxo2-spi: Fix missing error code in machxo2_write_complete() (git-fixes). - fpga: machxo2-spi: Return an error on failure (git-fixes). - serial: mvebu-uart: fix driver's tx_empty callback (git-fixes). - USB: serial: option: remove duplicate USB device ID (git-fixes). - usb: dwc2: gadget: Fix ISOC transfer complete handling for DDMA (git-fixes). - usb: gadget: r8a66597: fix a loop in set_feature() (git-fixes). - gpio: uniphier: Fix void functions to remove return value (git-fixes). - ASoC: rockchip: i2s: Fixup config for DAIFMT_DSP_A/B (git-fixes). - ASoC: rockchip: i2s: Fix regmap_ops hang (git-fixes). - commit 79aec8d- clk: at91: clk-generated: pass the id of changeable parent at registration (git-fixes). - Refresh patches.suse/clk-at91-clk-generated-Limit-the-requested-rate-to-o.patch. - commit 39cefdd- drm/amd/amdgpu: Update debugfs link_settings output link_rate field in hex (git-fixes). - drm: avoid blocking in drm_clients_info's rcu section (git-fixes). - drm/gma500: Fix end of loop tests for list_for_each_entry (git-fixes). - drm/amdgpu: Fix BUG_ON assert (git-fixes). - staging: board: Fix uninitialized spinlock when attaching genpd (git-fixes). - ath9k: fix sleeping in atomic context (git-fixes). - ath9k: fix OOB read ar9300_eeprom_restore_internal (git-fixes). - Bluetooth: skip invalid hci_sync_conn_complete_evt (git-fixes). - include/linux/list.h: add a macro to test if entry is pointing to the head (git-fixes). - commit 60017cf- drm/panfrost: Clamp lock region to Bifrost minimum (git-fixes). - gpu: drm: amd: amdgpu: amdgpu_i2c: fix possible uninitialized-variable access in amdgpu_i2c_router_select_ddc_port() (git-fixes). - drm/amd/display: Fix timer_per_pixel unit error (git-fixes). - media: TDA1997x: fix tda1997x_query_dv_timings() return value (git-fixes). - media: v4l2-dv-timings.c: fix wrong condition in two for-loops (git-fixes). - media: imx258: Limit the max analogue gain to 480 (git-fixes). - iio: dac: ad5624r: Fix incorrect handling of an optional regulator (git-fixes). - staging: ks7010: Fix the initialization of the 'sleep_status' structure (git-fixes). - iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed (git-fixes). - drivers: gpu: amd: Initialize amdgpu_dm_backlight_caps object to 0 in amdgpu_dm_update_backlight_caps (git-fixes). - commit 4c6f48f- PCI: Add AMD GPU multi-function power dependencies (git-fixes). - mfd: Don't use irq_create_mapping() to resolve a mapping (git-fixes). - media: imx258: Rectify mismatch of VTS value (git-fixes). - media: rc-loopback: return number of emitters rather than error (git-fixes). - media: uvc: don't do DMA on stack (git-fixes). - media: dib8000: rewrite the init prbs logic (git-fixes). - parport: remove non-zero check on count (git-fixes). - mmc: core: Return correct emmc response in case of ioctl error (git-fixes). - mmc: rtsx_pci: Fix long reads when clock is prescaled (git-fixes). - mmc: sdhci-of-arasan: Check return value of non-void funtions (git-fixes). - commit 9209c5a- PCI: aardvark: Fix masking and unmasking legacy INTx interrupts (git-fixes). - PCI: aardvark: Increase polling delay to 1.5s while waiting for PIO response (git-fixes). - PCI: aardvark: Fix checking for PIO status (git-fixes). - PM: base: power: don't try to use non-existing RTC for storing data (git-fixes). - PCI: Add ACS quirks for Cavium multi-function devices (git-fixes). - PCI: Add ACS quirks for NXP LX2xx0 and LX2xx2 platforms (git-fixes). - PCI: ibmphp: Fix double unmap of io_mem (git-fixes). - PCI: Restrict ASMedia ASM1062 SATA Max Payload Size Supported (git-fixes). - PCI: Use pci_update_current_state() in pci_enable_device_flags() (git-fixes). - commit 61f24a4- rtc: tps65910: Correct driver module alias (git-fixes). - USB: EHCI: ehci-mv: improve error handling in mv_ehci_enable() (git-fixes). - usb: gadget: u_ether: fix a potential null pointer dereference (git-fixes). - usb: host: fotg210: fix the actual_length of an iso packet (git-fixes). - serial: sh-sci: fix break handling for sysrq (git-fixes). - serial: 8250_pci: make setup_port() parameters explicitly unsigned (git-fixes). - serial: 8250: Define RX trigger levels for OxSemi 950 devices (git-fixes). - tty: serial: jsm: hold port lock when reporting modem line changes (git-fixes). - staging: rts5208: Fix get_ms_information() heap buffer size (git-fixes). - commit f3797b6- drm/nouveau/nvkm: Replace -ENOSYS with -ENODEV (git-fixes). - video: fbdev: riva: Error out if 'pixclock' equals zero (git-fixes). - video: fbdev: kyro: Error out if 'pixclock' equals zero (git-fixes). - video: fbdev: asiliantfb: Error out if 'pixclock' equals zero (git-fixes). - video: fbdev: kyro: fix a DoS bug by restricting user input (git-fixes). - usbip:vhci_hcd USB port can get stuck in the disabled state (git-fixes). - usbip: give back URBs for unsent unlink requests during cleanup (git-fixes). - usb: musb: musb_dsps: request_irq() after initializing musb (git-fixes). - usb: host: fotg210: fix the endpoint's transactional opportunities calculation (git-fixes). - commit f1407f0- kabi/severities: skip kABI check for ath9k-local symbols (CVE-2020-3702 bsc#1191193) ath9k modules have some exported symbols for the common helpers and the recent fixes broke kABI of those. They are specific to ath9k's own usages, so safe to ignore. - commit 7579b4b- kABI compatibility for ath_key_delete() changes (CVE-2020-3702 bsc#1191193). - commit bc02804- ath9k: Postpone key cache entry deletion for TXQ frames reference it (CVE-2020-3702 bsc#1191193). - ath: Modify ath_key_delete() to not need full key entry (CVE-2020-3702 bsc#1191193). - ath: Export ath_hw_keysetmac() (CVE-2020-3702 bsc#1191193). - commit 5fe383f- Update patches.kabi/NFS-pass-cred-explicitly-for-access-tests.patch (bsc#1190746 bsc#1191172). cache.group_info (aka cache.cred) was not properly initialized when - >access() was called. - commit 9ff84db- ipc: replace costly bailout check in sysvipc_find_ipc() (bsc#1159886 bsc#1188986 CVE-2021-3669). - ipc/util.c: use binary search for max_idx (bsc#1159886). - commit af97833- fix patch metadata - fix Patch-mainline: - patches.suse/net-mana-Fix-a-memory-leak-in-an-error-handling-path.patch - commit 12cbf84- series.conf: cleanup - move submitted patches to "almost mainline" section: - patches.suse/NFS-change-nfs_access_get_cached-to-only-report-the-.patch - patches.suse/NFS-pass-cred-explicitly-for-access-tests.patch - patches.suse/NFS-don-t-store-struct-cred-in-struct-nfs_access_ent.patch - commit a3b4285- btrfs: prevent rename2 from exchanging a subvol with a directory from different parents (bsc#1190626). - commit b88ab2e- blacklist.conf: too intrusive, gone in through SP3 - commit a81e8d3- blacklist.conf: too intrusive, gone in through SP3 - commit 4bedee6- blacklist.conf: too intrusive, gone in through SP3 - commit 0474866- blacklist.conf: kABI - commit e8337cf- x86/mm: Fix kern_addr_valid() to cope with existing but not present entries (bsc#1152489). - commit 1efaf04- net: mana: Prefer struct_size over open coded arithmetic (jsc#SLE-18779, bsc#1185726). - net: mana: Add WARN_ON_ONCE in case of CQE read overflow (jsc#SLE-18779, bsc#1185726). - net: mana: Add support for EQ sharing (jsc#SLE-18779, bsc#1185726). - net: mana: Move NAPI from EQ to CQ (jsc#SLE-18779, bsc#1185726). - net: mana: Use struct_size() in kzalloc() (jsc#SLE-18779, bsc#1185726). - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (jsc#SLE-18779, bsc#1185726). - net: mana: Fix a memory leak in an error handling path in (jsc#SLE-18779, bsc#1185726). - hv: mana: remove netdev_lockdep_set_classes usage (jsc#SLE-18779, bsc#1185726). - net: mana: Use int to check the return value of mana_gd_poll_cq() (jsc#SLE-18779, bsc#1185726). - net: mana: fix PCI_HYPERV dependency (jsc#SLE-18779, bsc#1185726). - net: mana: remove redundant initialization of variable err (jsc#SLE-18779, bsc#1185726). - net: mana: Add a driver for Microsoft Azure Network Adapter (MANA) (jsc#SLE-18779, bsc#1185726). - commit 44e26ca- nvme: avoid race in shutdown namespace removal (bsc#1188067). - commit bac299d- nvme: fix refcounting imbalance when all paths are down (bsc#1188067). - Refresh patches.suse/nvme-only-call-synchronize_srcu-when-clearing-curren.patch. - commit 44b2d54- series: Update meta data and resort Refresh the metad data and sort into correct position: patches.suse/scsi-lpfc-Fix-CPU-to-from-endian-warnings-introduced.patch patches.suse/scsi-lpfc-Fix-compilation-errors-on-kernels-with-no-.patch patches.suse/scsi-lpfc-Fix-gcc-Wstringop-overread-warning-again.patch patches.suse/scsi-lpfc-Fix-sprintf-overflow-in-lpfc_display_fpin_.patch patches.suse/scsi-lpfc-Remove-unneeded-variable.patch patches.suse/scsi-lpfc-Use-correct-scnprintf-limit.patch - commit 12f1564- Update patches.suse/Bluetooth-check-for-zapped-sk-before-connecting.patch (CVE-2021-3752 bsc#1190023). - commit 65458cc- Restore kabi after NFS: pass cred explicitly for access tests (bsc#1190746). - NFS: don't store 'struct cred *' in struct nfs_access_entry (bsc#1190746). - NFS: pass cred explicitly for access tests (bsc#1190746). - NFS: change nfs_access_get_cached to only report the mask (bsc#1190746). - commit 907996a- usb: musb: tusb6010: uninitialized data in tusb_fifo_write_unaligned() (git-fixes). - commit 11a541f- erofs: fix up erofs_lookup tracepoint (git-fixes). - commit 3009743- EDAC/synopsys: Fix wrong value type assignment for edac_mode (bsc#1152489). - commit 15eb225- kernel-binary.spec: Do not sign kernel when no key provided (bsc#1187167 bsc#1191240 ltc#194716). - kernel-binary.spec: Do not sign kernel when no key provided (bsc#1187167). - commit c909dd5- powerpc: fix function annotations to avoid section mismatch warnings with gcc-10 (bsc#1148868). - commit 9e9276f- powerpc/drmem: Make LMB walk a bit more flexible (bsc#1190543 ltc#194523). - Refresh patches.suse/pseries-drmem-update-LMBs-after-LPM.patch - commit e17894e- Revert "rpm: Abolish scritplet templating (bsc#1189841)." (bsc#1190598) This reverts commit e98096d5cf85dbe90f74a930eb1f0e3fe4a70c7f. These changes depend on a suse-module-tools update which has not reached SLE15-SP2/3 and Leap 15.2/3 yet, causing both build failures and unsatisfiable dependency of resulting binary packages. Revert the commit temporarily until suse-module-tools is updated. - commit 7d43568- pseries/drmem: update LMBs after LPM (bsc#1190543 ltc#194523). - commit 9763078- powerpc/pseries: Prevent free CPU ids being reused on another node (bsc#1190620 ltc#194498). - commit 7097b6c- net: sched: sch_teql: fix null-pointer dereference (bsc#1190717). - commit 0a89f09- kernel-binary.spec: suse-kernel-rpm-scriptlets required for uninstall as well. Fixes: e98096d5cf85 ("rpm: Abolish scritplet templating (bsc#1189841).") - commit e082fbf- mm/swap: consider max pages in iomap_swapfile_add_extent (bsc#1190785). - commit afb626e- iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate (bsc#1190784). - commit 7126cba- scsi: lpfc: Fix gcc -Wstringop-overread warning, again (bsc#1190576). - scsi: lpfc: Use correct scnprintf() limit (bsc#1190576). - scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn() (bsc#1190576). - scsi: lpfc: Update lpfc version to 14.0.0.2 (bsc#1190576). - scsi: lpfc: Improve PBDE checks during SGL processing (bsc#1190576). - scsi: lpfc: Zero CGN stats only during initial driver load and stat reset (bsc#1190576). - scsi: lpfc: Fix I/O block after enabling managed congestion mode (bsc#1190576). - scsi: lpfc: Adjust bytes received vales during cmf timer interval (bsc#1190576). - scsi: lpfc: Fix EEH support for NVMe I/O (bsc#1190576). - scsi: lpfc: Fix FCP I/O flush functionality for TMF routines (bsc#1190576). - scsi: lpfc: Fix NVMe I/O failover to non-optimized path (bsc#1190576). - scsi: lpfc: Don't remove ndlp on PRLI errors in P2P mode (bsc#1190576). - scsi: lpfc: Fix rediscovery of tape device after LIP (bsc#1190576). - scsi: lpfc: Fix hang on unload due to stuck fport node (bsc#1190576). - scsi: lpfc: Fix premature rpi release for unsolicited TPLS and LS_RJT (bsc#1190576). - scsi: lpfc: Don't release final kref on Fport node while ABTS outstanding (bsc#1190576). - scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq() (bsc#1190576). - scsi: lpfc: Remove unneeded variable (bsc#1190576). - scsi: lpfc: Fix compilation errors on kernels with no CONFIG_DEBUG_FS (bsc#1190576). - scsi: lpfc: Fix CPU to/from endian warnings introduced by ELS processing (bsc#1190576). - commit 1435c13- blacklist.conf: kABI - commit 3cb18d9- blacklist.conf: kABI - commit dcb25ee- blacklist.conf: kABI - commit d400b4c- docs: Fix infiniband uverbs minor number (git-fixes). - commit 0fb9cd2- usb: dwc2: Avoid leaving the error_debugfs label unused (git-fixes). - commit fb08350- ibmvnic: Reuse tx pools when possible (bsc#1190758 ltc#191943). - ibmvnic: Reuse rx pools when possible (bsc#1190758 ltc#191943). - ibmvnic: Reuse LTB when possible (bsc#1190758 ltc#191943). - ibmvnic: Use bitmap for LTB map_ids (bsc#1190758 ltc#191943). - ibmvnic: init_tx_pools move loop-invariant code (bsc#1190758 ltc#191943). - ibmvnic: Use/rename local vars in init_tx_pools (bsc#1190758 ltc#191943). - ibmvnic: Use/rename local vars in init_rx_pools (bsc#1190758 ltc#191943). - ibmvnic: Fix up some comments and messages (bsc#1190758 ltc#191943). - ibmvnic: Consolidate code in replenish_rx_pool() (bsc#1190758 ltc#191943). - commit dea5bd2- x86/resctrl: Fix a maybe-uninitialized build warning treated as error (bsc#1152489). - x86/resctrl: Fix default monitoring groups reporting (bsc#1152489). - commit 450cdb2- vmxnet3: update to version 6 (bsc#1190406). - commit 8d3dc67- vmxnet3: increase maximum configurable mtu to 9190 (bsc#1190406). - commit bd5109d- vmxnet3: set correct hash type based on rss information (bsc#1190406). - commit e1e474b- vmxnet3: add support for ESP IPv6 RSS (bsc#1190406). - commit 1687646- vmxnet3: remove power of 2 limitation on the queues (bsc#1190406). - commit f3834f6- vmxnet3: add support for 32 Tx/Rx queues (bsc#1190406). - commit fbdf2fe- vmxnet3: prepare for version 6 changes (bsc#1190406). - commit 7e0fe82- fuse: truncate pagecache on atomic_o_trunc (bsc#1190705). - commit 73351a3- xfs: sync lazy sb accounting on quiesce of read-only mounts (bsc#1190679). - commit 668fdef- blacklist.conf: 3bff147b187d x86/mce: Defer processing of early errors - commit 7e0dc1d- s390/unwind: use current_frame_address() to unwind current task (bsc#1185677). - commit 92c31e7- scsi: lpfc: Use the proper SCSI midlayer interfaces for PI (bsc#1190576). - scsi: lpfc: Copyright updates for 14.0.0.1 patches (bsc#1190576). - scsi: lpfc: Update lpfc version to 14.0.0.1 (bsc#1190576). - scsi: lpfc: Add bsg support for retrieving adapter cmf data (bsc#1190576). - scsi: lpfc: Add cmf_info sysfs entry (bsc#1190576). - scsi: lpfc: Add debugfs support for cm framework buffers (bsc#1190576). - scsi: lpfc: Add support for maintaining the cm statistics buffer (bsc#1190576). - scsi: lpfc: Add rx monitoring statistics (bsc#1190576). - scsi: lpfc: Add support for the CM framework (bsc#1190576). - scsi: lpfc: Add cmfsync WQE support (bsc#1190576). - scsi: lpfc: Add support for cm enablement buffer (bsc#1190576). - scsi: lpfc: Add cm statistics buffer support (bsc#1190576). - scsi: lpfc: Add EDC ELS support (bsc#1190576). - scsi: lpfc: Expand FPIN and RDF receive logging (bsc#1190576). - scsi: lpfc: Add MIB feature enablement support (bsc#1190576). - scsi: lpfc: Add SET_HOST_DATA mbox cmd to pass date/time info to firmware (bsc#1190576). - scsi: fc: Add EDC ELS definition (bsc#1190576). Refresh and update: - patches.kabi/scsi-fc-kABI-fixes-for-new-ELS_RDP-definition.patch - scsi: core: Add helper to return number of logical blocks in a request (bsc#1190576). - scsi: lpfc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (bsc#1190576). - scsi: core: Introduce the scsi_cmd_to_rq() function (bsc#1190576). - scsi: fc: Update formal FPIN descriptor definitions (bsc#1190576). - commit e13d431- Refresh patches.suse/msft-hv-2119-irqdomain-treewide-Keep-firmware-node-unconditionall.patch. Add else braces. - commit f230c58- series.conf: cleanup - update upstream reference and resort: - patches.suse/ibmvnic-check-failover_pending-in-login-response.patch - commit 2b5f056- kernel-binary.spec: Check for no kernel signing certificates. Also remove unused variable. - commit bdc323e- Revert "rpm/kernel-binary.spec: Use only non-empty certificates." This reverts commit 30360abfb58aec2c9ee7b6a27edebe875c90029d. - commit 413e05b- fuse: flush extending writes (bsc#1190595). - cuse: fix broken release (bsc#1190596). - commit 232b4ea- rpm/kernel-binary.spec: Use only non-empty certificates. - commit 30360ab- ipvs: Fix up kabi for expire_nodest_conn_work addition (bsc#1190467). - ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1 (bsc#1190467). - ipvs: allow connection reuse for unconfirmed conntrack (bsc#1190467). - ipvs: avoid expiring many connections from timer (bsc#1190467). - commit e0da213- ext4: fix race writing to an inline_data file while its xattrs are changing (bsc#1190159 CVE-2021-40490). - commit 4fadd7d- crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd() (bsc#1189884 CVE-2021-3744 bsc#1190534 CVE-2021-3764). - commit 4ee91a7- xfs: allow mount/remount when stripe width alignment is zero (bsc#1188651). - commit e701c22- qlcnic: Remove redundant unlock in qlcnic_pinit_from_rom (git-fixes). - debugfs: Return error during {full/open}_proxy_open() on rmmod (bsc#1173746). - devlink: Break parameter notification sequence to be before/after unload/load driver (bsc#1154353). - net/mlx5e: Prohibit inner indir TIRs in IPoIB (git-fixes). - ionic: cleanly release devlink instance (bsc#1167773). - gve: fix the wrong AdminQ buffer overflow check (bsc#1176940). - cxgb4: dont touch blocked freelist bitmap after free (git-fixes). - e1000e: Do not take care about recovery NVM checksum (jsc#SLE-8100). - e1000e: Fix the max snoop/no-snoop latency for 10M (git-fixes). - xgene-v2: Fix a resource leak in the error handling path of 'xge_probe()' (git-fixes). - RDMA/bnxt_re: Remove unpaired rtnl unlock in bnxt_re_dev_init() (bsc#1170774). - iavf: Fix ping is lost after untrusted VF had tried to change MAC (jsc#SLE-7940). - net: qlcnic: add missed unlock in qlcnic_83xx_flash_read32 (git-fixes). - bnxt_en: Add missing DMA memory barriers (git-fixes). - bnxt_en: Disable aRFS if running on 212 firmware (git-fixes). - bnxt: count Tx drops (git-fixes). - bnxt: make sure xmit_more + errors does not miss doorbells (git-fixes). - bnxt: disable napi before canceling DIM (git-fixes). - bnxt: don't lock the tx queue from napi poll (git-fixes). - net/mlx5: Fix return value from tracer initialization (git-fixes). - net/mlx5e: Avoid creating tunnel headers for local route (git-fixes). - iavf: Set RSS LUT and key in reset handle path (git-fixes). - ice: Prevent probing virtual functions (git-fixes). - bnx2x: fix an error code in bnx2x_nic_load() (git-fixes). - nfp: update ethtool reporting of pauseframe control (git-fixes). - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (git-fixes). - net/mlx5: Unload device upon firmware fatal error (git-fixes). - net/mlx5: E-Switch, handle devcom events only for ports on the same device (git-fixes). - net/mlx5: Fix flow table chaining (git-fixes). - mlx4: Fix missing error code in mlx4_load_one() (git-fixes). - ionic: count csum_none when offload enabled (bsc#1167773). - i40e: Fix log TC creation failure when max num of queues is exceeded (git-fixes). - i40e: Fix queue-to-TC mapping on Tx (git-fixes). - i40e: Add additional info to PHY type error (git-fixes). - i40e: Fix firmware LLDP agent related warning (git-fixes). - i40e: Fix logic of disabling queues (git-fixes). - bnxt_en: Do not enable legacy TX push on older firmware (git-fixes). - bnxt_en: Store the running firmware version code (git-fixes). - commit f97144d- fbmem: don't allow too huge resolutions (git-fixes). - backlight: pwm_bl: Improve bootloader/kernel device handover (git-fixes). - media: coda: fix frame_mem_ctrl for YUV420 and YVU420 formats (git-fixes). - tty: Fix data race between tiocsti() and flush_to_ldisc() (git-fixes). - PM: EM: Increase energy calculation precision (git-fixes). - libata: fix ata_host_start() (git-fixes). - power: supply: max17042_battery: fix typo in MAx17042_TOFF (git-fixes). - power: supply: axp288_fuel_gauge: Report register-address on readb / writeb errors (git-fixes). - regmap: fix the offset of register error log (git-fixes). - regmap: fix page selection for noinc writes (git-fixes). - regmap: fix page selection for noinc reads (git-fixes). - commit 0c36126- time: Handle negative seconds correctly in timespec64_to_ns() (git-fixes). - mm: always have io_remap_pfn_range() set pgprot_decrypted() (git-fixes). - commit b2d42ef- ibmvnic: check failover_pending in login response (bsc#1190523 ltc#194510). - commit 9f9cec0- x86/apic/msi: Plug non-maskable MSI affinity race (bsc#1184439). - Refresh patches.suse/0002-x86-msi-Only-use-high-bits-of-MSI-address-for-DMAR-u.patch. - Refresh patches.suse/0004-x86-apic-Support-15-bits-of-APIC-ID-in-IOAPIC-MSI-wh.patch. - Refresh patches.suse/msft-hv-2119-irqdomain-treewide-Keep-firmware-node-unconditionall.patch. - commit a89813f- EDAC/i10nm: Fix NVDIMM detection (bsc#1152489). - commit 9def092- scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V (bsc#1189297). - commit 913942c- netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (bsc#1190062). - commit e5272e8- clk: at91: clk-generated: Limit the requested rate to our range (git-fixes). - commit c432b6b- blacklist.conf: add efa non backportable patch - commit ebbcbd1- usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails (git-fixes). - commit bc5a062- ipc: remove memcg accounting for sops objects in do_semtimedop() (bsc#1190115). - commit 561fbd8- series.conf: refresh - update upstream references and resort: - patches.suse/nvme-multipath-revalidate-paths-during-rescan.patch - patches.suse/nvme-only-call-synchronize_srcu-when-clearing-curren.patch - patches.suse/nvme-tcp-Do-not-reset-transport-on-data-digest-error.patch - commit ebb6bcb- fixup "rpm: support gz and zst compression methods" once more (bsc#1190428, bsc#1190358) Fixes: 3b8c4d9bcc24 ("rpm: support gz and zst compression methods") Fixes: 23510fce36ec ("fixup "rpm: support gz and zst compression methods"") - commit 165378a- PCI: xilinx-nwl: Enable the clock through CCF (git-fixes). - PCI: iproc: Fix BCMA probe resource handling (git-fixes). - usb: dwc2: Fix error path in gadget registration (git-fixes). - commit 59e7328- thermal/drivers/exynos: Fix an error code in exynos_tmu_probe() (git-fixes). - drm/panfrost: Simplify lock_region calculation (git-fixes). - dmaengine: acpi: Avoid comparison GSI with Linux vIRQ (git-fixes). - mfd: lpc_sch: Rename GPIOBASE to prevent build error (git-fixes). - mfd: tqmx86: Clear GPIO IRQ resource when no IRQ is set (git-fixes). - mfd: axp20x: Update AXP288 volatile ranges (git-fixes). - gpio: mpc8xxx: Fix a resources leak in the error handling path of 'mpc8xxx_probe()' (git-fixes). - commit 75d69a6- pwm: lpc32xx: Don't modify HW state in .probe() after the PWM chip was registered (git-fixes). - ALSA: usb-audio: Add registration quirk for JBL Quantum 800 (git-fixes). - PCI: Fix pci_dev_str_match_path() alloc while atomic bug (git-fixes). - PCI/portdrv: Enable Bandwidth Notification only if port supports it (git-fixes). - PCI: Return ~0 data on pciconfig_read() CAP_SYS_ADMIN failure (git-fixes). - PCI: Call Max Payload Size-related fixup quirks early (git-fixes). - ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17 (git-fixes). - reset: reset-zynqmp: Fixed the argument data type (git-fixes). - gpu: ipu-v3: Fix i.MX IPU-v3 offset calculations for (semi)planar U/V formats (git-fixes). - commit f395ad9- Drop two intel_int0002_vgpio patches that cause Oops (bsc#1190412) Deleted and blacklisted: patches.suse/platform-x86-intel_int0002_vgpio-Only-call-enable_ir.patch patches.suse/platform-x86-intel_int0002_vgpio-Pass-irqchip-when-a.patch - commit bebba41- fixup "rpm: support gz and zst compression methods" once more Fixes: 3b8c4d9bcc24 ("rpm: support gz and zst compression methods") Fixes: 23510fce36ec ("fixup "rpm: support gz and zst compression methods"") - commit 34e68f4- fixup "rpm: support gz and zst compression methods" Fixes: 3b8c4d9bcc24 ("rpm: support gz and zst compression methods") - commit 23510fc- kernel-cert-subpackage: Fix certificate location in scriptlets (bsc#1189841). Fixes: d9a1357edd73 ("rpm: Define $certs as rpm macro (bsc#1189841).") - commit 8684de8- kernel-binary.spec.in Stop templating the scriptlets for subpackages (bsc#1190358). The script part for base package case is completely separate from the part for subpackages. Remove the part for subpackages from the base package script and use the KMP scripts for subpackages instead. - commit 5d1f677- kernel-binary.spec: Do not fail silently when KMP is empty (bsc#1190358). Copy the code from kernel-module-subpackage that deals with empty KMPs. - commit d7d2e6e- mm/vmscan: fix infinite loop in drop_slab_node (VM Functionality, bsc#1189301). - commit 016e8e0- blacklist.conf: blacklist an unwanted commit - commit 910824e- SUNRPC: Simplify socket shutdown when not reusing TCP ports (git-fixes). - SUNRPC: Fix potential memory corruption (git-fixes). - NFSv4/pNFS: Fix a layoutget livelock loop (git-fixes). - nfsd4: Fix forced-expiry locking (git-fixes). - lockd: Fix invalid lockowner cast after vfs_test_lock (git-fixes). - commit 59642ba- scsi: mpt3sas: Fix ReplyPostFree pool allocation (bsc#1181006). - commit a70a19d- Sort nvme patches into linux-block. - commit 090f7ef- btrfs: rip out btrfs_space_info::total_bytes_pinned (bsc#1135481). - Delete patches.suse/btrfs-dump_space_info-when-encountering-total_bytes_pinned-0-at-umount.patch. - commit bfb1107- btrfs: rip the first_ticket_bytes logic from fail_all_tickets (bsc#1135481). - commit 9722825- btrfs: remove FLUSH_DELAYED_REFS from data ENOSPC flushing (bsc#1135481). - commit 350aa4f- btrfs: rip out may_commit_transaction (bsc#1135481). - commit 4606638- btrfs: add a trace class for dumping the current ENOSPC state (bsc#1135481). - commit 631f16e- btrfs: adjust the flush trace point to include the source (bsc#1135481). - commit e32ea57- btrfs: implement space clamping for preemptive flushing (bsc#1135481). - commit ca710c1- btrfs: simplify the logic in need_preemptive_flushing (bsc#1135481). - commit 4b02073- btrfs: rework btrfs_calc_reclaim_metadata_size (bsc#1135481). - commit 7205c9f- btrfs: fix btrfs_calc_reclaim_metadata_size calculation (bsc#1135481). - Refresh patches.suse/btrfs-account-ticket-size-at-add-delete-time.patch. - commit bcb2da5- btrfs: check reclaim_size in need_preemptive_reclaim (bsc#1135481). - commit fba4763- btrfs: rename need_do_async_reclaim (bsc#1135481). - commit f764126- btrfs: improve preemptive background space flushing (bsc#1135481). - commit 874aca2- btrfs: introduce a FORCE_COMMIT_TRANS flush operation (bsc#1135481). - commit 7ec1638- btrfs: tracepoints: convert flush states to using EM macros (bsc#1135481). - commit c78869d- btrfs: tracepoints: fix btrfs_trigger_flush symbolic string for flags (bsc#1135481). - commit c805821- btrfs: add a trace point for reserve tickets (bsc#1135481). - commit ed22c30- btrfs: make flush_space take a enum btrfs_flush_state instead of int (bsc#1135481). - commit f6a0397- SUNRPC: improve error response to over-size gss credential (bsc#1190022). - commit 0678bd3- scsi: sg: add sg_remove_request in sg_write (bsc#1171420 CVE2020-12770). - commit 59a4a94- Bluetooth: schedule SCO timeouts with delayed_work (CVE-2021-3640 bsc#1188172). - Refresh patches.suse/Bluetooth-fix-repeated-calls-to-sco_sock_kill.patch. - Refresh patches.suse/Bluetooth-switch-to-lock_sock-in-SCO.patch. - commit 69c5b94- sched/fair: Ensure that the CFS parent is added after unthrottling (git-fixes). - commit f3a38fb- rpm/kernel-source.spec.in: do some more for vanilla_only Make sure: * sources are NOT executable * env is not used as interpreter * timestamps are correct We do all this for normal kernel builds, but not for vanilla_only kernels (linux-next and vanilla). - commit b41e4fd- Revert "memcg: enable accounting for file lock caches (bsc#1190115)." This reverts commit 78b761616bfb31a0d54806624e7c8db23fbeda9c. It's effectively upstream commit 3754707bcc3e190e5dadc978d172b61e809cb3bd applied to kernel-source (to avoid proliferation of patches). Make a note in blacklist.conf too. - commit eba498f- Update kabi files. - update from September 2021 maintenance update submission (commit 21030bc7f9be) - commit 63b67d5- fix patch metadata - fix Patch-mainline: - patches.suse/mm-vmscan-guarantee-drop_slab_node-termination.patch - commit bddec27- blacklist.conf: kABI - commit 2b1e710- mm, vmscan: guarantee drop_slab_node() termination (VM Functionality, bsc#1189301). - commit 56cc71b- blacklist.conf: cosmetic fix - commit c872ce5- blacklist.conf: 33cba859220b ("fscache: Fix fscache_cookie_put() to not deref after dec") Needs prerequisites to backport which could be problematic. - commit 648a5e5- usb: dwc3: core: Properly default unspecified speed (git-fixes). - commit 714137e- libata: add ATA_HORKAGE_NO_NCQ_TRIM for Samsung 860 and 870 SSDs (git-fixes). - commit 5a2ecd2- kABI: revert change in struct bpf_insn_aux_data (bsc#1188983, bsc#1188985, CVE-2021-34556, CVE-2021-35477). - commit 425bbd2- memcg: enable accounting of ipc resources (bsc#1190115 CVE-2021-3759). - memcg: enable accounting for file lock caches (bsc#1190115). - commit 925e30c- Refresh patches.suse/KVM-nSVM-avoid-picking-up-unsupported-bits-from-L2-i.patch. - commit f3cba28- series.conf: cleanup - update upstream references and resort: - patches.suse/powerpc-stacktrace-Include-linux-delay.h.patch - commit 0d42678- update nvme patch references and move them out of sorted section Within a few days, nvme repository was not only rebased again but the patches has been also reordered. To avoid further spurious git-sort errors, move the nvme patches out of sorted section until they reach mainline or some better behaving subsystem repository. - update Git-commit and move out of sorted section: - patches.suse/nvme-multipath-revalidate-paths-during-rescan.patch - patches.suse/nvme-only-call-synchronize_srcu-when-clearing-curren.patch - patches.suse/nvme-tcp-Do-not-reset-transport-on-data-digest-error.patch - commit 95e9f8b- rpm: Fold kernel-devel and kernel-source scriptlets into spec files (bsc#1189841). These are unchanged since 2011 when they were introduced. No need to track them separately. - commit 692d38b- rpm: Abolish image suffix (bsc#1189841). This is used only with vanilla kernel which is not supported in any way. The only effect is has is that the image and initrd symlinks are created with this suffix. These symlinks are not used except on s390 where the unsuffixed symlinks are used by zipl. There is no reason why a vanilla kernel could not be used with zipl as well as it's quite unexpected to not be able to boot when only a vanilla kernel is installed. Finally we now have a backup zipl kernel so if the vanilla kernel is indeed unsuitable the backup kernel can be used. - commit e2f37db- kernel-binary.spec: Define $image as rpm macro (bsc#1189841). - commit e602b0f- rpm: Define $certs as rpm macro (bsc#1189841). Also pass around only the shortened hash rather than full filename. As has been discussed in bsc#1124431 comment 51 https://bugzilla.suse.com/show_bug.cgi?id=1124431#c51 the placement of the certificates is an API which cannot be changed unless we can ensure that no two kernels that use different certificate location can be built with the same certificate. - commit d9a1357- HID: input: do not report stylus battery state as "full" (git-fixes). - HID: i2c-hid: Fix Elan touchpad regression (git-fixes). - pinctrl: samsung: Fix pinctrl bank pin count (git-fixes). - pinctrl: stmfx: Fix hazardous u8[] to unsigned long cast (git-fixes). - pinctrl: single: Fix error return code in pcs_parse_bits_in_pinctrl_entry() (git-fixes). - clk: kirkwood: Fix a clocking boot regression (git-fixes). - mailbox: sti: quieten kernel-doc warnings (git-fixes). - overflow: Correct check_shl_overflow() comment (git-fixes). - commit 835ad7d- mtd: rawnand: cafe: Fix a resource leak in the error handling path of 'cafe_nand_probe()' (git-fixes). - USB: serial: option: add new VID/PID to support Fibocom FG150 (git-fixes). - drm/nouveau/disp: power down unused DP links during init (git-fixes). - drm: Copy drm_wait_vblank to user before returning (git-fixes). - virtio_pci: Support surprise removal of virtio pci device (git-fixes). - commit ce46f13- ocfs2: ocfs2_downconvert_lock failure results in deadlock (bsc#1188439). - commit d85d8fa- cgroup1: fix leaked context root causing sporadic NULL deref in LTP (bsc#1190181). - commit d57aed6- Refresh patches.suse/powerpc-stacktrace-Include-linux-delay.h.patch. - commit aec8493- series.conf: cleanup - update upstream references and resort: - patches.suse/scsi-core-Add-scsi_prot_ref_tag-helper.patch - patches.suse/scsi-ibmvfc-Do-not-wait-for-initial-device-scan.patch - patches.suse/scsi-lpfc-Add-256-Gb-link-speed-support.patch - patches.suse/scsi-lpfc-Add-PCI-ID-support-for-LPe37000-LPe38000-s.patch - patches.suse/scsi-lpfc-Call-discovery-state-machine-when-handling.patch - patches.suse/scsi-lpfc-Clear-outstanding-active-mailbox-during-PC.patch - patches.suse/scsi-lpfc-Copyright-updates-for-12.8.0.11-patches.patch - patches.suse/scsi-lpfc-Copyright-updates-for-14.0.0.0-patches.patch - patches.suse/scsi-lpfc-Delay-unregistering-from-transport-until-G.patch - patches.suse/scsi-lpfc-Discovery-state-machine-fixes-for-LOGO-han.patch - patches.suse/scsi-lpfc-Enable-adisc-discovery-after-RSCN-by-defau.patch - patches.suse/scsi-lpfc-Fix-KASAN-slab-out-of-bounds-in-lpfc_unreg.patch - patches.suse/scsi-lpfc-Fix-NULL-ptr-dereference-with-NPIV-ports-f.patch - patches.suse/scsi-lpfc-Fix-NVMe-support-reporting-in-log-message.patch - patches.suse/scsi-lpfc-Fix-cq_id-truncation-in-rq-create.patch - patches.suse/scsi-lpfc-Fix-function-description-comments-for-vmid.patch - patches.suse/scsi-lpfc-Fix-memory-leaks-in-error-paths-while-issu.patch - patches.suse/scsi-lpfc-Fix-possible-ABBA-deadlock-in-nvmet_xri_ab.patch - patches.suse/scsi-lpfc-Fix-target-reset-handler-from-falsely-retu.patch - patches.suse/scsi-lpfc-Improve-firmware-download-logging.patch - patches.suse/scsi-lpfc-Keep-NDLP-reference-until-after-freeing-th.patch - patches.suse/scsi-lpfc-Remove-REG_LOGIN-check-requirement-to-issu.patch - patches.suse/scsi-lpfc-Remove-redundant-assignment-to-pointer-pcm.patch - patches.suse/scsi-lpfc-Remove-use-of-kmalloc-in-trace-event-loggi.patch - patches.suse/scsi-lpfc-Revise-Topology-and-RAS-support-checks-for.patch - patches.suse/scsi-lpfc-Skip-issuing-ADISC-when-node-is-in-NPR-sta.patch - patches.suse/scsi-lpfc-Skip-reg_vpi-when-link-is-down-for-SLI3-in.patch - patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.11.patch - patches.suse/scsi-lpfc-Update-lpfc-version-to-14.0.0.0.patch - patches.suse/scsi-lpfc-Use-PBDE-feature-enabled-bit-to-determine-.patch - patches.suse/scsi-qla2xxx-Fix-spelling-mistakes-allloc-alloc.patch - patches.suse/scsi-qla2xxx-Fix-use-after-free-in-debug-code.patch - patches.suse/scsi-qla2xxx-Remove-redundant-continue-statement-in-.patch - patches.suse/scsi-qla2xxx-Remove-redundant-initialization-of-vari.patch - patches.suse/scsi-qla2xxx-Remove-unused-variable-status.patch - patches.suse/scsi-qla2xxx-Update-version-to-10.02.00.107-k.patch - patches.suse/scsi-qla2xxx-Use-the-proper-SCSI-midlayer-interfaces.patch - patches.suse/scsi-qla2xxx-edif-Add-authentication-pass-fail-bsgs.patch - patches.suse/scsi-qla2xxx-edif-Add-detection-of-secure-device.patch - patches.suse/scsi-qla2xxx-edif-Add-doorbell-notification-for-app.patch - patches.suse/scsi-qla2xxx-edif-Add-encryption-to-I-O-path.patch - patches.suse/scsi-qla2xxx-edif-Add-extraction-of-auth_els-from-th.patch - patches.suse/scsi-qla2xxx-edif-Add-getfcinfo-and-statistic-bsgs.patch - patches.suse/scsi-qla2xxx-edif-Add-key-update.patch - patches.suse/scsi-qla2xxx-edif-Add-send-receive-and-accept-for-au.patch - patches.suse/scsi-qla2xxx-edif-Add-start-stop-bsgs.patch - patches.suse/scsi-qla2xxx-edif-Increment-command-and-completion-c.patch - commit 9a3c219- update patches metadata Once again, the nvme repository branch has been rebased so that patches from it must have their Git-commit tags updated to avoid git-sort errors. - commit cca729c- fix patch metadata - fix Patch-mainline: patches.suse/NFS-Correct-size-calculation-for-create-reply-length.patch - commit fbde034- series.conf: refresh - update upstream references and resort: - patches.suse/nvme-code-command_id-with-a-genctr-for-use-after-fre.patch - patches.suse/nvme-pci-limit-maximum-queue-depth-to-4095.patch - patches.suse/nvme-tcp-don-t-check-blk_mq_tag_to_rq-when-receiving.patch - patches.suse/params-lift-param_set_uint_minmax-to-common-code.patch - commit 5b98a5d- cgroup: verify that source is a string (bsc#1190131). - commit b8204f1- blacklist.conf: Add 2ca11b0e043b cgroup: Fix kernel-doc - commit 0b9195b- Update patch reference for virtio_console fix (CVE-2021-38160 bsc#1190117) - commit c8baed7- scsi: libfc: Fix array index out of bound exception (bsc#1188616). - commit de260d1- nvme-tcp: Do not reset transport on data digest errors (bsc#1188418). - nvme: only call synchronize_srcu when clearing current path (bsc#1188067). - commit bbe789f- VMCI: fix NULL pointer dereference when unmapping queue pair (git-fixes). - commit 45162f9- usb: host: xhci-rcar: Don't reload firmware after the completion (git-fixes). - usb: bdc: Fix an error handling path in 'bdc_probe()' when no suitable DMA config is available (git-fixes). - usb: ehci-orion: Handle errors of clk_prepare_enable() in probe (git-fixes). - usb: gadget: mv_u3d: request_irq() after initializing UDC (git-fixes). - usb: phy: tahvo: add IRQ check (git-fixes). - usb: host: ohci-tmio: add IRQ check (git-fixes). - usb: gadget: udc: renesas_usb3: Fix soc_device_match() abuse (git-fixes). - usb: mtu3: fix the wrong HS mult value (git-fixes). - usb: mtu3: use @mult for HS isoc or intr (git-fixes). - usb: phy: twl6030: add IRQ checks (git-fixes). - commit 2b2a9dc- soc: qcom: smsm: Fix missed interrupts if state changes while masked (git-fixes). - soc: qcom: rpmhpd: Use corner in power_off (git-fixes). - soc: aspeed: p2a-ctrl: Fix boundary check for mmap (git-fixes). - soc: aspeed: lpc-ctrl: Fix boundary check for mmap (git-fixes). - usb: phy: fsl-usb: add IRQ check (git-fixes). - usb: gadget: udc: at91: add IRQ check (git-fixes). - usb: dwc3: meson-g12a: add IRQ check (git-fixes). - tty: serial: fsl_lpuart: fix the wrong mapbase value (git-fixes). - staging: rtl8192u: Fix bitwise vs logical operator in TranslateRxSignalStuff819xUsb() (git-fixes). - commit 7e7cd62- media: venus: venc: Fix potential null pointer dereference on pointer fmt (git-fixes). - media: em28xx-input: fix refcount bug in em28xx_usb_disconnect (git-fixes). - media: stkwebcam: fix memory leak in stk_camera_probe (git-fixes). - media: go7007: remove redundant initialization (git-fixes). - media: go7007: fix memory leak in go7007_usb_probe (git-fixes). - media: dvb-usb: Fix error handling in dvb_usb_i2c_init (git-fixes). - media: dvb-usb: fix uninit-value in vp702x_read_mac_addr (git-fixes). - media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init (git-fixes). - media: cxd2880-spi: Fix an error handling path (git-fixes). - commit c67010c- drm/msi/mdp4: populate priv->kms in mdp4_kms_init (git-fixes). - drm/msm/dsi: Fix some reference counted resource leaks (git-fixes). - drm/msm/dpu: make dpu_hw_ctl_clear_all_blendstages clear necessary LMs (git-fixes). - drm/amdgpu/acp: Make PM domain really work (git-fixes). - drm/panfrost: Fix missing clk_disable_unprepare() on error in panfrost_clk_init() (git-fixes). - media: TDA1997x: enable EDID support (git-fixes). - fpga: zynqmp-fpga: Address warning about unused variable (git-fixes). - fpga: xiilnx-spi: Address warning about unused variable (git-fixes). - fpga: altera-freeze-bridge: Address warning about unused variable (git-fixes). - commit 6aaa769- dmaengine: imx-sdma: remove duplicated sdma_load_context (git-fixes). - Revert "dmaengine: imx-sdma: refine to load context only once" (git-fixes). - ASoC: wcd9335: Disable irq on slave ports in the remove function (git-fixes). - ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function (git-fixes). - ASoC: wcd9335: Fix a double irq free in the remove function (git-fixes). - ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs (git-fixes). - ASoC: ti: delete some dead code in omap_abe_probe() (git-fixes). - ALSA: pcm: fix divide error in snd_pcm_lib_ioctl (git-fixes). - ALSA: usb-audio: Fix regression on Sony WALKMAN NW-A45 DAC (git-fixes). - commit bdcb5b3- xprtrdma: Pad optimization, revisited (bsc#1189760). - commit 0acbfd0- Refresh patches.suse/btrfs-fix-NULL-pointer-dereference-when-deleting-dev.patch. - commit 2264bac- Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg() (CVE-2021-3640 bsc#1188172). - commit a21f4da- Move upstreamed BT fixes into sorted section - commit 0de160e- brcmfmac: pcie: fix oops on failure to resume and reprobe (git-fixes). - bcma: Fix memory leak for internally-handled cores (git-fixes). - ath6kl: wmi: fix an error code in ath6kl_wmi_sync_point() (git-fixes). - rsi: fix an error code in rsi_probe() (git-fixes). - rsi: fix error code in rsi_load_9116_firmware() (git-fixes). - mac80211: Fix insufficient headroom issue for AMSDU (git-fixes). - Bluetooth: add timeout sanity check to hci_inquiry (git-fixes). - Bluetooth: fix repeated calls to sco_sock_kill (git-fixes). - Bluetooth: increase BTNAMSIZ to 21 chars to fix potential buffer overflow (git-fixes). - Bluetooth: sco: prevent information leak in sco_conn_defer_accept() (git-fixes). - leds: trigger: audio: Add an activate callback to ensure the initial brightness is set (git-fixes). - i2c: mt65xx: fix IRQ check (git-fixes). - i2c: s3c2410: fix IRQ check (git-fixes). - i2c: iop3xx: fix deferred probing (git-fixes). - i2c: highlander: add IRQ check (git-fixes). - mmc: moxart: Fix issue with uninitialized dma_slave_config (git-fixes). - mmc: dw_mmc: Fix issue with uninitialized dma_slave_config (git-fixes). - PCI: PM: Enable PME if it can be signaled from D3cold (git-fixes). - PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently (git-fixes). - commit 9a711f4- Add alt-commit for a BT fix patch (git-fixes) - commit 3dbcbb3- nvme-multipath: revalidate paths during rescan (bsc#1187211) - commit b61f128- usb: dwc3: Add support for DWC_usb32 IP (git-fixes). - Refresh patches.suse/usb-dwc3-gadget-Enable-suspend-events.patch. - commit 8846c72- vt_kdsetmode: extend console locking (bsc#1190025 CVE-2021-3753). - commit 025c5d0- nbd: Aovid double completion of a request (git-fixes). - commit 7a1bece- nbd: Fix NULL pointer in flush_workqueue (git-fixes). - dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails (git-fixes). - dm integrity: fix missing goto in bitmap_flush_interval error handling (git-fixes). - drivers/block/null_blk/main: Fix a double free in null_init (git-fixes). - dm verity: fix DM_VERITY_OPTS_MAX value (git-fixes). - nbd: don't update block size after device is started (git-fixes). - commit 6df7d5d- blacklist.conf: add following commit IDs, - 27ba3e8ff3ab86449e63d38a8d623053591e65fa - 0ebcdd702f49aeb0ad2e2d894f8c124a0acc6e23 - 854f32648b8a5e424d682953b1a9f3b7c3322701 - a4c8dd9c2d0987cf542a2a0c42684c9c6d78a04e - 24f6b6036c9eec21191646930ad42808e6180510 - 5b0fab508992c2e120971da658ce80027acbc405 - commit eb9efeb- rpm: Abolish scritplet templating (bsc#1189841). Outsource kernel-binary and KMP scriptlets to suse-module-tools. This allows fixing bugs in the scriptlets as well as defining initrd regeneration policy independent of the kernel packages. - commit 940cfb4- usb: dwc2: Postponed gadget registration to the udc class driver (git-fixes). - commit e55ae9a- rpm/kernel-binary.spec.in: Use kmod-zstd provide. This makes it possible to use kmod with ZSTD support on non-Tumbleweed. - commit 357f09a- crypto: qat - use proper type for vf_mask (git-fixes). - lib/mpi: use kcalloc in mpi_resize (git-fixes). - power: supply: max17042: handle fails of reading status register (git-fixes). - spi: sprd: Fix the wrong WDG_LOAD_VAL (git-fixes). - spi: spi-pic32: Fix issue with uninitialized dma_slave_config (git-fixes). - spi: spi-fsl-dspi: Fix issue with uninitialized dma_slave_config (git-fixes). - regulator: vctrl: Avoid lockdep warning in enable/disable ops (git-fixes). - regulator: vctrl: Use locked regulator_get_voltage in probe path (git-fixes). - PCI/MSI: Skip masking MSI-X on Xen PV (git-fixes). - commit d2a4523- mm: swap: properly update readahead statistics in unuse_pte_range() (bsc#1187619). - commit 6ceb471- NFS: Correct size calculation for create reply length (bsc#1189870). - commit 7843408- sched/rt: Fix RT utilization tracking during policy change (git-fixes) - commit 8fc8b7f- sched/fair: Correctly insert cfs_rq's to list on unthrottle (git-fixes) - commit 1732b9b- rpm/kernel-binary.spec.in: avoid conflicting suse-release suse-release has arbitrary values in staging, we can't use it for dependencies. The filesystem one has to be enough (boo#1184804). - commit 56f2cba- kABI: Fix kABI after fixing vcpu-id indexed arrays (git-fixes). - commit 53f17d6- usb: dwc3: gadget: Stop EP0 transfers during pullup disable (git-fixes). - usb: dwc3: gadget: Fix dwc3_calc_trbs_left() (git-fixes). - Revert "USB: serial: ch341: fix character loss at high transfer rates" (git-fixes). - can: usb: esd_usb2: esd_usb2_rx_event(): fix the interchange of the CAN RX and TX error counters (git-fixes). - dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available (git-fixes). - dmaengine: usb-dmac: Fix PM reference leak in usb_dmac_probe() (git-fixes). - usb: dwc3: gadget: Properly track pending and queued SG (git-fixes). - ath9k: Clear key cache explicitly on disabling hardware (git-fixes). - ath: Use safer key clearing with key cache entries (git-fixes). - Bluetooth: hidp: use correct wait queue when removing ctrl_wait (git-fixes). - commit 6ee1085- Revert "mmc: sdhci-iproc: Set SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN on BCM2711" (git-fixes). - PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI (git-fixes). - mmc: dw_mmc: Fix hang on data CRC error (git-fixes). - dmaengine: xilinx_dma: Fix read-after-free bug when terminating transfers (git-fixes). - USB: core: Avoid WARNings for 0-length descriptor requests (git-fixes). - media: drivers/media/usb: fix memory leak in zr364xx_probe (git-fixes). - media: zr364xx: fix memory leaks in probe() (git-fixes). - media: zr364xx: propagate errors from zr364xx_start_readpipe() (git-fixes). - commit de359d6- cpuidle: Consolidate disabled state checks (bsc#1175543) patches.suse/cpuidle-Poll-for-a-minimum-of-30ns-and-poll-for-a-tick-if-lower-c-states-are-disabled.patch was refreshed as well by this patch for code adjustment. - commit 486ca9f- cpuidle: cpuidle_state kABI fix (bsc#1175543) The patch bsc1175543-cpuidle-Drop-disabled-field-from-struct-cpuidle_stat.patch Dropped the 'disabled' field in struct cpuidle_state because no drivers use it, They use the state flag instead. Fix kABI to avoid offset changes. - commit aa615e8- intel_idle: Disable ACPI _CST on Haswell (bsc#1175543, bsc#1177399, bsc#1180347, bsc#1180141) - commit da07134- intel_idle: Fix max_cstate for processor models without C-state tables (bsc#1175543) - commit 81641db- intel_idle: Ignore _CST if control cannot be taken from the platform (bsc#1175543) - commit b93fbf1- cpuidle: Fix cpuidle_driver_state_disabled() (bsc#1175543) - commit d669a61- cpuidle: Introduce cpuidle_driver_state_disabled() for driver quirks (bsc#1175543) - commit 8d2d96f- intel_idle: Customize IceLake server support (bsc#1175543) - commit 25d205d- intel_idle: Annotate init time data structures (bsc#1175543) The patches.suse/intel_idle-Customize-IceLake-server-support.patch was refreshed as well by this patch for code adjustment. - commit 2ed77d7- Documentation: admin-guide: PM: Add intel_idle document (bsc#1175543) - commit 65d3c96- intel_idle: Use ACPI _CST on server systems (bsc#1175543) Below 2 patches were refreshed as well by this patch for code adjustment: patches.suse/intel_idle-convert-to-new-x86-cpu-match-macros.patch patches.suse/intel_idle-Customize-IceLake-server-support.patch - commit f10f8c4- intel_idle: Add module parameter to prevent ACPI _CST from being used (bsc#1175543) - commit 79ec477- intel_idle: Allow ACPI _CST to be used for selected known processors (bsc#1175543) - commit ecacb28- cpuidle: Allow idle states to be disabled by default (bsc#1175543) - commit 48a3541- intel_idle: Use ACPI _CST for processor models without C-state tables (bsc#1175543) - commit 9dbf3f1- intel_idle: Refactor intel_idle_cpuidle_driver_init() (bsc#1175543) - commit 462302a- ACPI: processor: Export acpi_processor_evaluate_cst() (bsc#1175543) - commit 70c6258- ACPI: processor: Make ACPI_PROCESSOR_CSTATE depend on ACPI_PROCESSOR (bsc#1175543) - commit c99fda3- ACPI: processor: Clean up acpi_processor_evaluate_cst() (bsc#1175543) - commit 9eb9d8c- ACPI: processor: Introduce acpi_processor_evaluate_cst() (bsc#1175543) - commit c0d7249- ACPI: processor: Export function to claim _CST control (bsc#1175543) - commit 66eadb0- cpuidle: Drop disabled field from struct cpuidle_state (bsc#1175543) - commit c479621- net: qrtr: fix another OOB Read in qrtr_endpoint_post (CVE-2021-3743 bsc#1189883). - net: qrtr: fix OOB Read in qrtr_endpoint_post (CVE-2021-3743 bsc#1189883). - commit 78ff8ba- rpm: fix kmp install path - commit 22ec560- x86/kvm: fix vcpu-id indexed array sizes (git-fixes). - commit 3288077- btrfs: fix NULL pointer dereference when deleting device by invalid id (bsc#1189832 CVE-2021-3739). - commit 6bfce07- xen/events: Fix race in set_evtchn_to_irq (git-fixes). - commit cfb3b9b- nvme: code command_id with a genctr for use-after-free validation (bsc#1181972). - nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data (bsc#1181972). - nvme-pci: limit maximum queue depth to 4095 (bsc#1181972). - params: lift param_set_uint_minmax to common code (bsc#1181972). - nvme: avoid possible double fetch in handling CQE (bsc#1181972). - nvme-pci: fix NULL req in completion handler (bsc#1181972). - nvme-pci: Use u32 for nvme_dev.q_depth and nvme_queue.q_depth (bsc#1181972). - nvme-pci: use unsigned for io queue depth (bsc#1181972). - commit 01de302- post.sh: detect /usr mountpoint too - commit c7b3d74- md/raid10: properly indicate failure when ending a failed write request (git-fixes). - Refresh for the above change, patches.suse/md-display-timeout-error.patch. - commit 2088aff- kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data() (bsc#1189153). - commit 8bf2f14- kABI fix of usb_dcd_config_params (git-fixes). - commit 8726268- x86/fpu: Limit xstate copy size in xstateregs_set() (bsc#1152489). - commit 33182b7- blacklist.conf: 9625895011d1 x86/fpu: Fix copy_xstate_to_kernel() gap handling - commit 50f6bfa- scsi: ibmvfc: Do not wait for initial device scan (bsc#1127650). - commit 41aa06c- usb: gadget: Export recommended BESL values (git-fixes). - commit 96bbeda- ovl: prevent private clone if bind mount is not allowed (bsc#1189706, CVE-2021-3732). - commit d40514b- blacklist.conf: 6c34df6f350d ("tracing: Apply trace filters on all output channels") Requires at least commit 8cfcf15503f6 ("tracing: kprobes: Output kprobe event to printk buffer") too. Let's wait if there is an actual problem for someone. - commit ef40598- kernel-binary.spec.in: make sure zstd is supported by kmod if used - commit f36412b- kernel-binary.spec.in: add zstd to BuildRequires if used - commit aa61dba- tracing / histogram: Fix NULL pointer dereference on strcmp() on NULL event name (git-fixes). - commit bf4be33- x86/signal: Detect and prevent an alternate signal stack overflow (bsc#1152489). - commit 72c8a0d- slimbus: ngd: reset dma setup during runtime pm (git-fixes). - slimbus: messaging: check for valid transaction id (git-fixes). - slimbus: messaging: start transaction ids from 1 instead of zero (git-fixes). - mmc: sdhci-iproc: Set SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN on BCM2711 (git-fixes). - mmc: sdhci-iproc: Cap min clock frequency on BCM2711 (git-fixes). - commit cc02968- Fix breakage of swap over NFS (bsc#1188924). - commit 9f3f2ef- ASoC: intel: atom: Fix breakage for PCM buffer address setup (git-fixes). - commit 0bed191- rpm: support gz and zst compression methods Extend commit 18fcdff43a00 ("rpm: support compressed modules") for compression methods other than xz. - commit 3b8c4d9- SUNRPC: 'Directory with parent 'rpc_clnt' already present!' (bsc#1168202 bsc#1188924). - SUNRPC: fix use-after-free in rpc_free_client_work() (bsc#1168202 bsc#1188924). - kabi fix for SUNRPC: defer slow parts of rpc_free_client() to a workqueue (bsc#1168202 bsc#1188924). - SUNRPC: defer slow parts of rpc_free_client() to a workqueue (bsc#1168202 bsc#1188924). - commit a690151- PCI/MSI: Use msi_mask_irq() in pci_msi_shutdown() (git-fixes). - PCI/MSI: Correct misleading comments (git-fixes). - PCI/MSI: Enforce MSI[X] entry updates to be visible (git-fixes). - PCI/MSI: Enforce that MSI-X table entry is masked for update (git-fixes). - PCI/MSI: Mask all unused MSI-X entries (git-fixes). - i2c: dev: zero out array used for i2c reads from userspace (git-fixes). - commit 4d62c8f- ALSA: hda/via: Apply runtime PM workaround for ASUS B23E (git-fixes). - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop (git-fixes). - ALSA: hda - fix the 'Capture Switch' value change notifications (git-fixes). - commit bb87ddf- s390/boot: fix use of expolines in the DMA code (bsc#1188878 ltc#193771). - commit 46381a6- series.conf: cleanup - move mainline backports to sorted section: - patches.suse/KVM-nSVM-avoid-picking-up-unsupported-bits-from-L2-i.patch - patches.suse/KVM-nSVM-always-intercept-VMLOAD-VMSAVE-when-nested.patch - commit 30636ef- Fix kabi of prepare_to_wait_exclusive() (bsc#1189575). - commit da7e3ca- ubifs: Set/Clear I_LINKABLE under i_lock for whiteout inode (bsc#1189587). - commit ae93a20- ubifs: journal: Fix error return code in ubifs_jnl_write_inode() (bsc#1189586). - commit 50b39b2- ubifs: Only check replay with inode type to judge if inode linked (bsc#1187455). - commit 3cfd5e7- ubifs: Fix error return code in alloc_wbufs() (bsc#1189585). - blacklist.conf: - commit d0fe9df- ubifs: Fix memleak in ubifs_init_authentication (bsc#1189583). - commit abd23d2- ocfs2: issue zeroout to EOF blocks (bsc#1189582). - commit 7960ad8- ocfs2: fix snprintf() checking (bsc#1189581). - commit ca894bd- ocfs2: fix zero out valid data (bsc#1189579). - commit 42e68bc- writeback: fix obtain a reference to a freeing memcg css (bsc#1189577). - commit b318f10- ext4: fix potential htree corruption when growing large_dir directories (bsc#1189576). - commit 13d68f1- rq-qos: fix missed wake-ups in rq_qos_throttle try two (bsc#1189575). - commit edbcd21- fanotify: fix copy_event_to_user() fid error clean up (bsc#1189574). - commit a8937b5- bdi: Do not use freezable workqueue (bsc#1189573). - commit 60e4174- mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page() (bsc#1189569). - commit 1b1dfcf- ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle (bsc#1189568). - commit 0ace36d- ext4: use ext4_grp_locked_error in mb_find_extent (bsc#1189567). - commit 4329025- ext4: fix avefreec in find_group_orlov (bsc#1189566). - commit d7bfbbd- ext4: remove check for zero nr_to_scan in ext4_es_scan() (bsc#1189565). - commit 3ca5f18- ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit (bsc#1189564). - commit cd60859- ext4: return error code when ext4_fill_flex_info() fails (bsc#1189563). - commit 200d004- ext4: fix kernel infoleak via ext4_extent_header (bsc#1189562). - commit fd9a225- scsi: lpfc: Move initialization of phba->poll_list earlier to avoid crash (git-fixes). - commit 92c63a5- KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (bsc#1189399, CVE-2021-3653). - KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (bsc#1189400, CVE-2021-3656). - KVM: X86: MMU: Use the correct inherited permissions to get shadow page (CVE-2021-38198 bsc#1189262). - commit 7902615- usb: dwc3: gadget: Handle ZLP for sg requests (git-fixes). - commit 2a94579- Revert "xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype" (bsc#1185675). This revert was initially applied to SLE15-SP2-RT (70e4d04b75f). Since the reverted commit went into SLE15-SP2 (96f285dfa8b), the revert needs to move from SLE15-SP2-RT to SLE15-SP2. - commit f32a28c- Update patches.suse/ibmvnic-Allow-device-probe-if-the-device-is-not-read.patch (bsc#1167032 ltc#184087 bsc#1184114 ltc#192237). - commit 8a87839- blacklist.conf: add an entry for the reverted iTCO_wdt - commit 4c97ae2- usb: dwc3: gadget: Fix handling ZLP (git-fixes). - commit 5e0eec9- kabi/placeholder/.keep: Dummy kABI directory. - commit 9e394b1- tracing: Reject string operand in the histogram expression (git-fixes). - commit edab067- tracing / histogram: Give calculation hist_fields a size (git-fixes). - commit 49985ee- blacklist.conf: 1e3bac71c505 ("tracing/histogram: Rename "cpu" to "common_cpu"") Better not to backport the commit as it changes the semantics of an existing field. - commit 00d0183- blacklist.conf: 6c881ca0b304 ("afs: Fix tracepoint string placement with built-in AFS") CONFIG_AFS_FS is not set on SLE15-SP2. It is on SLE15-SP3 but only as a module, not built-in. No need to backport the commit. - commit 43483b1- bpf: Fix leakage due to insufficient speculative store bypass mitigation (bsc#1188983, bsc#1188985, CVE-2021-34556, CVE-2021-35477). - bpf: Introduce BPF nospec instruction for mitigating Spectre v4 (bsc#1188983, bsc#1188985, CVE-2021-34556, CVE-2021-35477). - commit f87c7ce- blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit() (bsc#1189507). - commit b15ef07- blk-mq-sched: Fix blk_mq_sched_alloc_tags() error handling (bsc#1189506). - commit 7fe32f7- block: fix trace completion for chained bio (bsc#1189505). - commit 47344da- blk-wbt: make sure throttle is enabled properly (bsc#1189504). - commit 7b07185- blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled() (bsc#1189503). - commit 798c57a- misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp() (git-fixes). - misc: atmel-ssc: lock with mutex instead of spinlock (git-fixes). - commit 55d9570- gpio: eic-sprd: break loop when getting NULL device resource (git-fixes). - Revert "gpio: eic-sprd: Use devm_platform_ioremap_resource()" (git-fixes). - commit 990b695- Revert a BT patch that was reverted on stable trees (git-fixes) Delete patches.suse/Bluetooth-Shutdown-controller-after-workqueues-are-f.patch - commit 127d54b- mtd: cfi_cmdset_0002: fix crash when erasing/writing AMD cards (git-fixes). - commit 0a223c6- x86/fpu: Make init_fpstate correct with optimized XSAVE (bsc#1152489). - commit 603fc19- kernel-binary.spec: Require dwarves for kernel-binary-devel when BTF is enabled (jsc#SLE-17288). About the pahole version: v1.18 should be bare mnimum, v1.22 should be fully functional, for now we ship git snapshot with fixes on top of v1.21. - commit 8ba3382- x86/fpu: Reset state for all signal restore failures (bsc#1152489). - commit f42aa15- blacklist.conf: blacklist davicom legacy ethernet driver - commit 78e9c10- usb: dwc3: gadget: Check MPS of the request length (git-fixes). - commit 0d1e1fe- Drop watchdog iTCO_wdt patch that causes incompatible behavior (bsc#1189449) Also blacklisted - commit e5dd4ab- s390/ap: Fix hanging ioctl caused by wrong msg counter (bsc#1188982 LTC#193817). - commit 7e146ac- Bluetooth: switch to lock_sock in SCO (CVE-2021-3640 bsc#1188172). - Bluetooth: avoid circular locks in sco_sock_connect (CVE-2021-3640 bsc#1188172). - commit f2d375d- Update patch reference for a BT fix (CVE-2021-3640 bsc#1188172) - commit 98aa089- powerpc/pseries: Fix update of LPAR security flavor after LPM (bsc#1188885 ltc#193722 git-fixes). - commit fbccd6a- usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable (git-fixes). - commit 5733c23- usb: dwc3: gadget: Disable gadget IRQ during pullup disable (git-fixes). - usb: dwc3: gadget: Prevent EP queuing while stopping transfers (git-fixes). - commit 124c915- PCI/MSI: Do not set invalid bits in MSI mask (git-fixes). - PCI/MSI: Enable and mask MSI-X early (git-fixes). - ACPI: NFIT: Fix support for virtual SPA ranges (git-fixes). - iio: adc: Fix incorrect exit of for-loop (git-fixes). - iio: humidity: hdc100x: Add margin to the conversion time (git-fixes). - iio: adc: ti-ads7950: Ensure CS is deasserted after reading channels (git-fixes). - USB:ehci:fix Kunpeng920 ehci hardware problem (git-fixes). - usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup (git-fixes). - usb: dwc3: Stop active transfers before halting the controller (git-fixes). - commit 627b67a- Revert "Delete patches.kabi/* workarounds" This reverts commit 23dc4d056cef31cecae571f847228481d51f62ed. See kernel-source commit 4e6a61720e0e ("restore patches.kabi/*") for explanation. - commit c1e6c89- Delete patches.kabi/* workarounds - commit 23dc4d0- config: refresh - commit a299bb8- ceph: take snap_empty_lock atomically with snaprealm refcount change (bsc#1189427). - ceph: reduce contention in ceph_check_delayed_caps() (bsc#1187468). - commit 93c7440- blacklist.conf: Add 'fix poly1305_core_setkey() declaration' Commit 8d195e7a8ada ("crypto: poly1305 - fix poly1305_core_setkey() declaration") is a cleanup which breaks kABI. - commit 37e4183- scsi: blkcg: Fix application ID config options (bsc#1189385 jsc#SLE-18970). - Update config files. - commit 1317caa- crypto: x86/curve25519 - fix cpu feature checking logic in mod_exit (git-fixes). - wireguard: allowedips: free empty intermediate nodes when removing single node (git-fixes). - wireguard: allowedips: allocate nodes in kmem_cache (git-fixes). - wireguard: allowedips: remove nodes in O(1) (git-fixes). - commit 6aa0bda- USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2 (git-fixes). - USB: serial: option: add Telit FD980 composition 0x1056 (git-fixes). - USB: serial: ch341: fix character loss at high transfer rates (git-fixes). - usb: gadget: f_hid: idle uses the highest byte for duration (git-fixes). - usb: gadget: f_hid: added GET_IDLE and SET_IDLE handlers (git-fixes). - usb: gadget: f_hid: fixed NULL pointer dereference (git-fixes). - commit f089244- ALSA: hda: Add quirk for ASUS Flow x13 (git-fixes). - ASoC: xilinx: Fix reference to PCM buffer address (git-fixes). - ASoC: intel: atom: Fix reference to PCM buffer address (git-fixes). - ASoC: tlv320aic31xx: Fix jack detection after suspend (git-fixes). - spi: imx: mx51-ecspi: Fix CONFIGREG delay comment (git-fixes). - virt_wifi: fix error on connect (git-fixes). - commit 690710b- staging: rtl8712: get rid of flush_scheduled_work (git-fixes). - staging: rtl8723bs: Fix a resource leak in sd_int_dpc (git-fixes). - serial: 8250_mtk: fix uart corruption issue when rx power off (git-fixes). - soc: ixp4xx/qmgr: fix invalid __iomem access (git-fixes). - soc: ixp4xx: fix printing resources (git-fixes). - spi: imx: mx51-ecspi: Fix low-speed CONFIGREG delay calculation (git-fixes). - spi: meson-spicc: fix memory leak in meson_spicc_remove (git-fixes). - pcmcia: i82092: fix a null pointer dereference bug (git-fixes). - libata: fix ata_pio_sector for CONFIG_HIGHMEM (git-fixes). - spi: imx: mx51-ecspi: Reinstate low-speed CONFIGREG delay (git-fixes). - commit 24af025- ASoC: cs42l42: Fix LRCLK frame start edge (git-fixes). - ASoC: cs42l42: Remove duplicate control for WNF filter frequency (git-fixes). - ASoC: cs42l42: Fix inversion of ADC Notch Switch control (git-fixes). - ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J (git-fixes). - ASoC: cs42l42: Correct definition of ADC Volume control (git-fixes). - firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback (git-fixes). - Revert "ACPICA: Fix memory leak caused by _CID repair function" (git-fixes). - dmaengine: imx-dma: configure the generic DMA type to make it work (git-fixes). - ALSA: usb-audio: fix incorrect clock source setting (git-fixes). - commit 20c4d69- Revert "Delete patches.kabi/* workarounds" This reverts commit c3b4fcc5ea4adf0539461ccd3af30d8856d131bb. See kernel-source commit 4e6a61720e0e ("restore patches.kabi/*") for explanation. - commit 44b1e34- Delete patches.kabi/* workarounds - commit c3b4fcc- scsi: qla2xxx: Remove redundant initialization of variable num_cnt (bsc#1189392). - scsi: qla2xxx: Fix use after free in debug code (bsc#1189392). - scsi: qla2xxx: Fix spelling mistakes "allloc" -> "alloc" (bsc#1189392). - scsi: qla2xxx: Update version to 10.02.00.107-k (bsc#1189392). - scsi: qla2xxx: edif: Increment command and completion counts (bsc#1189392). - scsi: qla2xxx: edif: Add encryption to I/O path (bsc#1189392). - scsi: qla2xxx: edif: Add doorbell notification for app (bsc#1189392). - scsi: qla2xxx: edif: Add detection of secure device (bsc#1189392). - scsi: qla2xxx: edif: Add authentication pass + fail bsgs (bsc#1189392). - scsi: qla2xxx: edif: Add key update (bsc#1189392). - scsi: qla2xxx: edif: Add extraction of auth_els from the wire (bsc#1189392). - scsi: qla2xxx: edif: Add send, receive, and accept for auth_els (bsc#1189392). - scsi: qla2xxx: edif: Add getfcinfo and statistic bsgs (bsc#1189392). - scsi: qla2xxx: edif: Add start + stop bsgs (bsc#1189392). - scsi: qla2xxx: Remove unused variable 'status' (bsc#1189392). - scsi: qla2xxx: Use the proper SCSI midlayer interfaces for PI (bsc#1189392). - scsi: core: Add scsi_prot_ref_tag() helper (bsc#1189392). - scsi: qla2xxx: Remove redundant continue statement in a for-loop (bsc#1189392). - scsi: qla2xxx: Add heartbeat check (bsc#1189392). - scsi: qla2xxx: Use list_move_tail() instead of list_del()/list_add_tail() (bsc#1189392). - scsi: qla2xxx: Remove duplicate declarations (bsc#1189392). - scsi: qla2xxx: Log PCI address in qla_nvme_unregister_remote_port() (bsc#1189392). - scsi: qla2xxx: Remove redundant assignment to rval (bsc#1189392). - scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal (bsc#1189392). - scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword() (bsc#1189392). - commit 4f97d8a- scsi: lpfc: Fix possible ABBA deadlock in nvmet_xri_aborted() (bsc#1189385). - scsi: lpfc: Remove redundant assignment to pointer pcmd (bsc#1189385). - scsi: lpfc: Copyright updates for 14.0.0.0 patches (bsc#1189385). - scsi: lpfc: Update lpfc version to 14.0.0.0 (bsc#1189385). - scsi: lpfc: Add 256 Gb link speed support (bsc#1189385). - scsi: lpfc: Revise Topology and RAS support checks for new adapters (bsc#1189385). - scsi: lpfc: Fix cq_id truncation in rq create (bsc#1189385). - scsi: lpfc: Add PCI ID support for LPe37000/LPe38000 series adapters (bsc#1189385). - scsi: lpfc: Copyright updates for 12.8.0.11 patches (bsc#1189385). - scsi: lpfc: Update lpfc version to 12.8.0.11 (bsc#1189385). - scsi: lpfc: Skip issuing ADISC when node is in NPR state (bsc#1189385). - scsi: lpfc: Skip reg_vpi when link is down for SLI3 in ADISC cmpl path (bsc#1189385). - scsi: lpfc: Call discovery state machine when handling PLOGI/ADISC completions (bsc#1189385). - scsi: lpfc: Delay unregistering from transport until GIDFT or ADISC completes (bsc#1189385). - scsi: lpfc: Enable adisc discovery after RSCN by default (bsc#1189385). - scsi: lpfc: Use PBDE feature enabled bit to determine PBDE support (bsc#1189385). - scsi: lpfc: Clear outstanding active mailbox during PCI function reset (bsc#1189385). - scsi: lpfc: Fix KASAN slab-out-of-bounds in lpfc_unreg_rpi() routine (bsc#1189385). - scsi: lpfc: Remove REG_LOGIN check requirement to issue an ELS RDF (bsc#1189385). - scsi: lpfc: Fix memory leaks in error paths while issuing ELS RDF/SCR request (bsc#1189385). - scsi: lpfc: Fix NULL ptr dereference with NPIV ports for RDF handling (bsc#1189385). - scsi: lpfc: Keep NDLP reference until after freeing the IOCB after ELS handling (bsc#1189385). - scsi: lpfc: Fix target reset handler from falsely returning FAILURE (bsc#1189385). - scsi: lpfc: Discovery state machine fixes for LOGO handling (bsc#1189385). - scsi: lpfc: Fix function description comments for vmid routines (bsc#1189385). - scsi: lpfc: Improve firmware download logging (bsc#1189385). - scsi: lpfc: Remove use of kmalloc() in trace event logging (bsc#1189385). - scsi: lpfc: Fix NVMe support reporting in log message (bsc#1189385). - scsi: lpfc: Fix build error in lpfc_scsi.c (bsc#1189385). - scsi: lpfc: Use list_move_tail() instead of list_del()/list_add_tail() (bsc#1189385). - scsi: lpfc: vmid: Introduce VMID in I/O path (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Add QFPA and VMID timeout check in worker thread (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Timeout implementation for VMID (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Append the VMID to the wqe before sending (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Implement CT commands for appid (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Functions to manage VMIDs (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Implement ELS commands for appid (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Add support for VMID in mailbox command (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: VMID parameter initialization (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: vmid: Add datastructure for supporting VMID in lpfc (bsc#1189385 jsc#SLE-18970). - scsi: blkcg: Add app identifier support for blkcg (bsc#1189385 jsc#SLE-18970). - Update config files Add kABI fixup patch - patches.kabi/blk-cgroup-kABI-fixes-for-new-fc_app_id-definition.patch - scsi: cgroup: Add cgroup_get_from_id() (bsc#1189385 jsc#SLE-18970). - scsi: lpfc: Remove redundant assignment to pointer temp_hdr (bsc#1189385). - commit e47f569- nvmet: use NVMET_MAX_NAMESPACES to set nn value (bsc#1189384). - commit da8a2b6- README: Modernize build instructions. - commit 8cc5c28- ovl: allow upperdir inside lowerdir (bsc#1189323). - ovl: fix missing revert_creds() on error path (bsc#1189323). - ovl: skip getxattr of security labels (bsc#1189323). - ovl: perform vfs_getxattr() with mounter creds (bsc#1189323). - ovl: expand warning in ovl_d_real() (bsc#1189323). - commit d2a0c13- rpm/kernel-obs-build.spec.in: make builds reproducible (bsc#1189305) - commit 7f9ade7- platform/x86: pcengines-apuv2: Add missing terminating entries to gpio-lookup tables (git-fixes). - commit e6925d8- Revert "Delete patches.kabi/* workarounds" This reverts commit 3522dc4ee4bcd51e6621425cb2870420dba596fe. See kernel-source commit 4e6a61720e0e ("restore patches.kabi/*") for explanation. - commit 43e01dd- Delete patches.kabi/* workarounds - commit 3522dc4- fix patches metadata - fix Patch-mainline: - patches.suse/NFSv4-Initialise-connection-to-the-server-in-nfs4_al.patch - patches.suse/NFSv4-pNFS-Don-t-call-_nfs4_pnfs_v3_ds_connect-multi.patch - patches.suse/SUNRPC-Fix-the-batch-tasks-count-wraparound.patch - patches.suse/SUNRPC-Should-wake-up-the-privileged-task-firstly.patch - patches.suse/nfs-fix-acl-memory-leak-of-posix_acl_create.patch - commit bd541fa- net: ll_temac: Fix TX BD buffer overwrite (CVE-2021-38207 bsc#1189298). - commit 64dedf9- scsi: zfcp: Report port fc_security as unknown early during remote cable pull (git-fixes). - commit 071c9e5- net: xilinx_emaclite: Do not print real IOMEM pointer (CVE-2021-38205 bsc#1189292). - commit 1e538f8- Update patch reference for a USB max3421 HCD fix (CVE-2021-38204 bsc#1189291) - commit 68d7672- scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state (bsc#1184180). - commit 435d2bf- usb: dwc3: gadget: Don't setup more than requested (git-fixes). - commit d278880- usb: dwc3: meson-g12a: check return of dwc3_meson_g12a_usb_init (git-fixes). - commit bc358f9- ocfs2: initialize ip_next_orphan (bsc#1186731). - commit fd80e8c- NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times (git-fixes). - SUNRPC: Should wake up the privileged task firstly (git-fixes). - SUNRPC: Fix the batch tasks count wraparound (git-fixes). - nfs: fix acl memory leak of posix_acl_create() (git-fixes). - commit 1bdda2d- NFSv4: Initialise connection to the server in nfs4_alloc_client() (bsc#1040364). - Delete patches.suse/0001-NFSv4-don-t-let-hanging-mounts-block-other-mounts.patch. Upstream now has a fix for this bug, so use their version instead of ours. - commit 350271e- usb: dwc3: gadget: Give back staled requests (git-fixes). - commit c4cb23f- usb: dwc3: support continuous runtime PM with dual role (git-fixes). - commit f340e0b- iommu/vt-d: Global devTLB flush when present context entry changed (bsc#1189220). - iommu/dma: Fix compile warning in 32-bit builds (bsc#1189229). - iommu/dma: Fix IOVA reserve dma ranges (bsc#1189214). - iommu/amd: Fix extended features logging (bsc#1189213). - iommu/vt-d: Define counter explicitly as unsigned int (bsc#1189216). - iommu/arm-smmu-v3: Decrease the queue size of evtq and priq (bsc#1189210). - crypto: ccp - Annotate SEV Firmware file names (bsc#1189212). - iommu/vt-d: Fix sysfs leak in alloc_iommu() (bsc#1189218). - iommu/vt-d: Check for allocation failure in aux_detach_device() (bsc#1189215). - iommu/vt-d: Force to flush iotlb before creating superpage (bsc#1189219). - iommu/vt-d: Invalidate PASID cache when root/context entry changed (bsc#1189221). - iommu/vt-d: Don't set then clear private data in prq_event_thread() (bsc#1189217). - iommu/vt-d: Reject unsupported page request modes (bsc#1189222). - iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK (bsc#1189209). - commit f116a8f- blacklist.conf: Add two IOMMU fixes b9abb19fa5fd iommu: Check dev->iommu in iommu_dev_xxx functions 474dd1c65064 iommu/vt-d: Fix clearing real DMA device's scalable-mode context entries - commit 2db8dfc- powerpc/papr_scm: Make 'perf_stats' invisible if perf-stats unavailable (bsc#1175052 jsc#SLE-13823 bsc#1174969 jsc#SLE-12769 git-fixes). - commit c109f3e- Fix filesystem requirement and suse-release requires Reduce filesystem conflict to anything less than 16 to allow pulling the change into the next major stable version. Don't require suse-release as that's not technically required. Conflict with a too old one instead. - commit 913f755- iwlwifi: rs-fw: don't support stbc for HE 160 (git-fixes). - commit 981ddc7- blacklist.conf: obsoleted by 8d396bb0a5b62b326f6be7594d8bd46b088296bd - commit d9ae913- USB: usbtmc: Fix RCU stall warning (git-fixes). - commit 8c8f7df- powerpc: Fix is_kvm_guest() / kvm_para_available() (bsc#1181148 ltc#190702 git-fixes). - commit 8c2e999- powerpc/pseries: Fix regression while building external modules (bsc#1160010 ltc#183046 git-fixes). This changes a GPL symbol to general symbol which is kABI change but not kABI break. - commit 5db0ce9- powerpc/papr_scm: Reduce error severity if nvdimm stats inaccessible (bsc#1189197 ltc#193906). - commit 9021659- firmware_loader: fix use-after-free in firmware_fallback_sysfs (git-fixes). - serial: tegra: Only print FIFO error message when an error occurs (git-fixes). - serial: 8250: Mask out floating 16/32-bit bus bits (git-fixes). - spi: mediatek: Fix fifo transfer (git-fixes). - ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits (git-fixes). - spi: stm32h7: fix full duplex irq handler handling (git-fixes). - regulator: rt5033: Fix n_voltages settings for BUCK and LDO (git-fixes). - commit 8f575e8- Revert "Delete patches.kabi/* workarounds" This reverts commit d5eb63647a4189f3cc8c4a838d367431cdcb6111. See kernel-source commit 4e6a61720e0e ("restore patches.kabi/*") for explanation. - commit 44d702a- Delete patches.kabi/* workarounds - commit d5eb636- restore patches.kabi/* The whole patches.kabi/ directory got accidentally deleted by kbuild bot in kernel-source commit b90650e6c406 ("Delete patches.kabi/* workarounds"). While we don't really need kabi workarounds in Leap branches, we prefer to build Leap kernels from source as close to corresponding SLE kernels as possible and since openSUSE-42.2 we managed to keep the two the same. With patches.kabi/* dropped in Leap branch, that would not be the case. Restore the patches.kabi/ directory in openSUSE-15.2 to match SLE15-SP2. - commit 4e6a617- fix patches metadata - fix Patch-mainline: - patches.suse/ALSA-hda-realtek-Fix-headset-mic-for-Acer-SWIFT-SF31.patch - patches.suse/ALSA-hda-realtek-add-mic-quirk-for-Acer-SF314-42.patch - patches.suse/ALSA-seq-Fix-racy-deletion-of-subscriber.patch - patches.suse/ALSA-usb-audio-Add-registration-quirk-for-JBL-Quantu-4b0556b96e1f.patch - patches.suse/ALSA-usb-audio-Fix-superfluous-autosuspend-recovery.patch - commit 486a747- ALSA: seq: Fix racy deletion of subscriber (git-fixes). - ALSA: hda/realtek: add mic quirk for Acer SF314-42 (git-fixes). - ALSA: usb-audio: Add registration quirk for JBL Quantum 600 (git-fixes). - ALSA: hda/realtek: Fix headset mic for Acer SWIFT SF314-56 (ALC256) (git-fixes). - ALSA: usb-audio: Fix superfluous autosuspend recovery (git-fixes). - commit 57d9208- net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext (git-fixes). - commit 4d3a9e0- Bluetooth: defer cleanup of resources in hci_unregister_dev() (git-fixes). - commit 38ad73f- Delete patches.kabi/* workarounds - commit b90650e- fix patches metadata - fix Patch-mainline: - patches.suse/NFSv4.1-Don-t-rebind-to-the-same-source-port-when-re.patch - patches.suse/SUNRPC-prevent-port-reuse-on-transports-which-don-t-.patch - commit 5e54e89- blacklist.conf: kABI changes due to kvm_mmu_rule struct. - commit f3e0e69- Refresh patches.suse/Input-ili210x-add-missing-negation-for-touch-indicat.patch Fix missing parentheses in the input backport patch. - commit 0913716- rpm/kernel-source.rpmlintrc: ignore new include/config files In 5.13, since 0e0345b77ac4, config files have no longer .h suffix. Adapt the zero-length check. Based on Martin Liska's change. - commit b6f021b- gpio: tqmx86: really make IRQ optional (git-fixes). - media: videobuf2-core: dequeue if start_streaming fails (git-fixes). - media: rtl28xxu: fix zero-length control request (git-fixes). - clk: fix leak on devm_clk_bulk_get_all() unwind (git-fixes). - clk: stm32f4: fix post divisor setup for I2S/SAI PLLs (git-fixes). - cfg80211: Fix possible memory leak in function cfg80211_bss_update (git-fixes). - commit 7dd3f8c- SUNRPC: prevent port reuse on transports which don't request it (bnc#1186264 bnc#1189021). - commit a89b568- kabi fix for NFSv4.1: Don't rebind to the same source port when reconnecting to the server (bnc#1186264 bnc#1189021) - commit 844eb4c- NFSv4.1: Don't rebind to the same source port when (bnc#1186264 bnc#1189021) - commit 4b89a40- btrfs: rework chunk allocation to avoid exhaustion of the system chunk array (bsc#1189077). - btrfs: fix deadlock with concurrent chunk allocations involving system chunks (bsc#1189077). - btrfs: move the chunk_mutex in btrfs_read_chunk_tree (bsc#1189077). - btrfs: Rename __btrfs_alloc_chunk to btrfs_alloc_chunk (bsc#1189077). - btrfs: parameterize dev_extent_min for chunk allocation (bsc#1189077). - btrfs: factor out create_chunk() (bsc#1189077). - btrfs: factor out decide_stripe_size() (bsc#1189077). - btrfs: factor out gather_device_info() (bsc#1189077). - btrfs: factor out init_alloc_chunk_ctl (bsc#1189077). - btrfs: introduce alloc_chunk_ctl (bsc#1189077). - btrfs: refactor find_free_dev_extent_start() (bsc#1189077). - btrfs: introduce chunk allocation policy (bsc#1189077). - btrfs: handle invalid profile in chunk allocation (bsc#1189077). - commit 707ed65- tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop (CVE-2021-3679 bsc#1189057). - commit 49b5ebf- net/mlx5: Properly convey driver version to firmware (git-fixes). - commit 44d8f42- net: stmmac: free tx skb buffer in stmmac_resume() (git-fixes). - commit ac61742- can: ti_hecc: Fix memleak in ti_hecc_probe (git-fixes). - commit 75096f3- net: dsa: mv88e6xxx: Avoid VTU corruption on 6097 (git-fixes). - commit 524d35f- Update kabi files. - update from August 2021 maintenance update submission (commit a13100d5f167) - commit 75dc981- blacklist.conf: add macsonic driver - commit 688a554- cifs: do not share tcp sessions of dfs connections (bsc#1185902). - commit 78eb685- cifs: prevent NULL deref in cifs_compose_mount_options() (bsc#1185902). - commit a798607- cifs: missing null pointer check in cifs_mount (bsc#1185902). - commit 17b0494- cifs: fix check of dfs interlinks (bsc#1185902). - commit 1db4f4d- cifs: avoid starvation when refreshing dfs cache (bsc#1185902). - commit 064a32d- cifs: do not share tcp servers with dfs mounts (bsc#1185902). - commit 65332c5- cifs: set a minimum of 2 minutes for refreshing dfs cache (bsc#1185902). - commit 1a16c86- cifs: fix path comparison and hash calc (bsc#1185902). - commit 9ae40ff- cifs: handle different charsets in dfs cache (bsc#1185902). - commit 7b185cd- cifs: keep referral server sessions alive (bsc#1185902). - commit a6fba08- workqueue: fix UAF in pwq_unbound_release_workfn() (bsc#1188973). - commit b02980f- can: esd_usb2: fix memory leak (git-fixes). - can: ems_usb: fix memory leak (git-fixes). - can: usb_8dev: fix memory leak (git-fixes). - can: mcba_usb_start(): add missing urb->transfer_dma initialization (git-fixes). - can: hi311x: fix a signedness bug in hi3110_cmd() (git-fixes). - nfc: nfcsim: fix use after free during module unload (git-fixes). - can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF (git-fixes). - Revert "ACPI: resources: Add checks for ACPI IRQ override" (git-fixes). - firmware: arm_scmi: Fix range check for the maximum number of pending messages (git-fixes). - firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow (git-fixes). - commit 7ff2c84- fix patch metadata - fix Patch-mainline: patches.suse/xfrm-xfrm_state_mtu-should-return-at-least-1280-for-.patch - commit e52bdda- ixgbe: Fix packet corruption due to missing DMA sync (git-fixes). - bnxt_en: Check abort error state in bnxt_half_open_nic() (jsc#SLE-8371 bsc#1153274). - bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task() (jsc#SLE-8371 bsc#1153274). - bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe() (jsc#SLE-8371 bsc#1153274). - bnxt_en: don't disable an already disabled PCI device (git-fixes). - cxgb4: fix IRQ free race during driver unload (git-fixes). - igb: Fix position of assignment to *ring (git-fixes). - igb: Check if num of q_vectors is smaller than max before array access (git-fixes). - iavf: Fix an error handling path in 'iavf_probe()' (git-fixes). - e1000e: Fix an error handling path in 'e1000_probe()' (git-fixes). - igb: Fix an error handling path in 'igb_probe()' (git-fixes). - igc: Fix an error handling path in 'igc_probe()' (git-fixes). - ixgbe: Fix an error handling path in 'ixgbe_probe()' (git-fixes). - igc: change default return of igc_read_phy_reg() (git-fixes). - igb: Fix use-after-free error during reset (git-fixes). - igc: Fix use-after-free error during reset (git-fixes). - virtio_net: move tx vq operation under tx queue lock (git-fixes). - Revert "be2net: disable bh with spin_lock in be_process_mcc" (git-fixes). - e1000e: Check the PCIm state (git-fixes). - i40e: Fix autoneg disabling for non-10GBaseT links (git-fixes). - i40e: Fix error handling in i40e_vsi_open (git-fixes). - vxlan: add missing rcu_read_lock() in neigh_reduce() (git-fixes). - mvpp2: suppress warning (git-fixes). - net: mvpp2: Put fwnode in error case during ->probe() (git-fixes). - net/mlx5e: Block offload of outer header csum for GRE tunnel (git-fixes). - commit 3de5d62- powerpc/security: Fix link stack flush instruction (bsc#1188885 ltc#193722). - commit 6d617e8- cifs: get rid of @noreq param in __dfs_cache_find() (bsc#1185902). - commit 7f4ff26- cifs: do not send tree disconnect to ipc shares (bsc#1185902). - commit 96ce669- cifs: Remove unused inline function is_sysvol_or_netlogon() (bsc#1185902). - commit 7d7b6d5- powerpc/64s: Move branch cache flushing bcctr variant to ppc-ops.h (bsc#1188885 ltc#193722). - commit 837e7fa- powerpc/security: Allow for processors that flush the link stack using the special bcctr (bsc#1188885 ltc#193722). - powerpc/security: split branch cache flush toggle from code patching (bsc#1188885 ltc#193722). - powerpc/security: make display of branch cache flush more consistent (bsc#1188885 ltc#193722). - powerpc/security: change link stack flush state to the flush type enum (bsc#1188885 ltc#193722). - Delete patches.suse/powerpc-add-link-stack-flush-mitigation-in-debugfs.patch - replaced with upstream security mitigation cleanup - powerpc/security: re-name count cache flush to branch cache flush (bsc#1188885 ltc#193722). - commit e35bcce- powerpc/pesries: Get STF barrier requirement from H_GET_CPU_CHARACTERISTICS (bsc#1188885 ltc#193722). - powerpc/security: Add a security feature for STF barrier (bsc#1188885 ltc#193722). - powerpc/pseries: Get entry and uaccess flush required bits from H_GET_CPU_CHARACTERISTICS (bsc#1188885 ltc#193722). - powerpc/pseries: export LPAR security flavor in lparcfg (bsc#1188885 ltc#193722). - powerpc/64s: rename pnv|pseries_setup_rfi_flush to _setup_security_mitigations (bsc#1188885 ltc#193722). - Refresh patches.suse/powerpc-pseries-mobility-notify-network-peers-after-.patch. - powerpc/pseries: add new branch prediction security bits for link stack (bsc#1188885 ltc#193722). - commit 3f019e2- Update patch-mainline and git-commit tags Refresh: - patches.suse/0001-netfilter-conntrack-add-new-sysctl-to-disable-RST-ch.patch - patches.suse/0001-netfilter-conntrack-improve-RST-handling-when-tuple-.patch - commit 758ec5c- Move upstreamed patches to sorted section - commit e174d5e- net: mac802154: Fix general protection fault (CVE-2021-3659 bsc#1188876). - commit 61caeac- USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick (git-fixes). - USB: serial: option: add support for u-blox LARA-R6 family (git-fixes). - USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS (git-fixes). - usb: hub: Disable USB 3 device initiated lpm if exit latency is too high (git-fixes). - usb: hub: Fix link power management max exit latency (MEL) calculations (git-fixes). - xhci: Fix lost USB 2 remote wake (git-fixes). - spi: imx: add a check for speed_hz before calculating the clock (git-fixes). - commit cbaa23f- firmware/efi: Tell memblock about EFI iomem reservations (git-fixes). - ALSA: usb-audio: Add registration quirk for JBL Quantum headsets (git-fixes). - ASoC: rt5631: Fix regcache sync errors on resume (git-fixes). - ALSA: hdmi: Expose all pins on MSI MS-7C94 board (git-fixes). - ALSA: sb: Fix potential ABBA deadlock in CSP driver (git-fixes). - drm: Return -ENOTTY for non-drm ioctls (git-fixes). - regulator: hi6421: Fix getting wrong drvdata (git-fixes). - regulator: hi6421: Use correct variable type for regmap api val argument (git-fixes). - iio: accel: bma180: Use explicit member assignment (git-fixes). - commit 4603b01- xfrm: xfrm_state_mtu should return at least 1280 for ipv6 (bsc#1185377). - commit c3c4cb5- use 3.0 SPDX identifier in rpm License tags As requested by Maintenance, change rpm License tags from "GPL-2.0" (SPDX 2.0) to "GPL-2.0-only" (SPDX 3.0) so that their scripts do not have to adjust the tags with each maintenance update submission. - commit f888e0b- platform/x86: intel_int0002_vgpio: Only call enable_irq_wake() when using s2idle (git-fixes). - commit 28541e7- platform/x86: dell-smbios-wmi: Fix oops on rmmod dell_smbios (git-fixes). - commit ffedcc6- platform/x86: intel_int0002_vgpio: Remove dev_err() usage after platform_get_irq() (git-fixes). - commit 4131c57- platform/x86: intel_int0002_vgpio: Pass irqchip when adding gpiochip (git-fixes). - commit 88a6182- KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow (bsc#1188838 CVE-2021-37576). - commit 0162dcd- platform/x86: intel_int0002_vgpio: Use device_init_wakeup (git-fixes). - commit 017d588- platform/chrome: cros_ec_lightbar: Reduce ligthbar get version command (git-fixes). - commit a8f01e1- Input: ili210x - add missing negation for touch indication on ili210x (git-fixes). - commit 0575cf5- KVM: x86: bit 8 of non-leaf PDPEs is not reserved (bsc#1188790). - commit 81b4c99- KVM: VMX: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path (bsc#1188788). - commit f2e225f- KVM: VMX: Enable machine check support for 32bit targets (bsc#1188787). - commit 388d3fb- KVM: VMX: Drop guest CPUID check for VMXE in vmx_set_cr4() (bsc#1188786). - commit c5de014- KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in !64-bit (bsc#1188784). - commit 08b2951- KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration (bsc#1188783). - commit 5f8f317- KVM: nVMX: Skip IBPB when switching between vmcs01 and vmcs02 (bsc#1188782). - commit ef7bd2d- KVM: nVMX: Reset the segment cache when stuffing guest segs (bsc#1188781). - commit 8984ecb- KVM: nVMX: Really make emulated nested preemption timer pinned (bsc#1188780). - commit 597c5f3- KVM: nVMX: Preserve exception priority irrespective of exiting behavior (bsc#1188777). - commit 9024fbf- KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap (bsc#1188774). - commit 7334e84- KVM: nVMX: Consult only the "basic" exit reason when routing nested exit (bsc#1188773). - commit f7ab15a- kvm: LAPIC: Restore guard to prevent illegal APIC register access (bsc#1188772). - commit 8a9a1d5- KVM: LAPIC: Prevent setting the tscdeadline timer if the lapic is hw disabled (bsc#1188771). - commit 7610884- kvm: i8254: remove redundant assignment to pointer s (bsc#1188770). - commit f768a8a- ceph: don't WARN if we're still opening a session to an MDS (bsc#1188748). - rbd: don't hold lock_rwsem while running_list is being drained (bsc#1188747). - rbd: always kick acquire on "acquired" and "released" notifications (bsc#1188746). - commit 5813020- mt76: set dma-done flag for flushed descriptors (git-fixes). - commit aaa3cb6- mt76: mt7615: fix endianness in mt7615_mcu_set_eeprom (git-fixes). - commit 43e0b14- mt76: mt7615: increase MCU command timeout (git-fixes). - commit 1ca559f- mt76: mt7603: set 0 as min coverage_class value (git-fixes). - commit 606bd07- ibmvnic: retry reset if there are no other resets (bsc#1184350 ltc#191533). - commit fccec64- cifs: do not fail __smb_send_rqst if non-fatal signals are pending (git-fixes). - commit 80eef04- cifs: fix interrupted close commands (git-fixes). - commit 9eae08a- cifs: Fix preauth hash corruption (git-fixes). - commit a2ac7b0- cifs: Return correct error code from smb2_get_enc_key (git-fixes). - commit ffe15e7- cifs: fix memory leak in smb2_copychunk_range (git-fixes). - commit f974156- uuid: Add inline helpers to import / export UUIDs (FATE#326628, bsc#1113295, git-fixes). - commit 5ef7dcb- Drop media rtl28xxu fix patch (bsc#1188683) The recent backport of patches.suse/media-rtl28xxu-fix-zero-length-control-request.patch caused a regression on Astrometa DVB-T2. Revert and blacklist it for now. - commit 1ae8d64- series.conf: cleanup - update upstream references and move into sorted section: - patches.suse/r8152-Fix-a-deadlock-by-doubly-PM-resume.patch - patches.suse/r8152-Fix-potential-PM-refcount-imbalance.patch - commit 425c935- powerpc/stacktrace: Include linux/delay.h (bsc#1156395). - commit fb8c7fc- ceph: clean up and optimize ceph_check_delayed_caps() (bsc#1187468). - commit 33a74a3- sfp: Fix error handing in sfp_probe() (git-fixes). - commit 3f0aed6- cadence: force nonlinear buffers to be cloned (git-fixes). - commit 4b76907- gtp: fix an use-before-init in gtp_newlink() (git-fixes). - commit 6e609d3- ravb: Fix bit fields checking in ravb_hwtstamp_get() (git-fixes). - commit ed39fda- net: hns3: Clear the CMDQ registers before unmapping BAR region (git-fixes). - commit 57704e2- wilc1000: write value to WILC_INTR2_ENABLE register (git-fixes). - commit 23af1ba- net: wilc1000: clean up resource in error path of init mon interface (git-fixes). - commit aa75b92- Update patches.suse/ibmvnic-account-for-bufs-already-saved-in-indir_buf.patch (jsc#SLE-17268 jsc#SLE-17043 bsc#1179243 ltc#189290 bsc#1188620 ltc#192221). - Update patches.suse/ibmvnic-free-tx_pool-if-tso_pool-alloc-fails.patch (bsc#1085224 ltc#164363 bsc#1188620 ltc#192221). - Update patches.suse/ibmvnic-parenthesize-a-check.patch (bsc#1184114 ltc#192237 bsc#1183871 ltc#192139 git-fixes bsc#1188620 ltc#192221). - Update patches.suse/ibmvnic-set-ltb-buff-to-NULL-after-freeing.patch (bsc#1094840 ltc#167098 bsc#1188620 ltc#192221). - commit 8147958- ibmvnic: Remove the proper scrq flush (bsc#1188504 ltc#192075). - commit 8bf9d02- blacklist.conf: kABI - commit 7c940a5- blacklist.conf: cosmetic cleanup - commit 29705c7- blacklist.conf: kABI - commit 839f900- rtc: max77686: Do not enforce (incorrect) interrupt trigger type (git-fixes). - rtc: mxc_v2: add missing MODULE_DEVICE_TABLE (git-fixes). - thermal/core: Correct function name thermal_zone_device_unregister() (git-fixes). - reset: ti-syscon: fix to_ti_syscon_reset_data macro (git-fixes). - soc/tegra: fuse: Fix Tegra234-only builds (git-fixes). - commit c39f899- USB: serial: cp210x: fix comments for GE CS1000 (git-fixes). - Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem" (git-fixes). - usb: dwc2: gadget: Fix sending zero length packet in DDMA mode (git-fixes). - usb: renesas_usbhs: Fix superfluous irqs happen after usb_pkt_pop() (git-fixes). - usb: max-3421: Prevent corruption of freed memory (git-fixes). - commit c637f14- net: ethernet: ti: Remove TI_CPTS_MOD workaround (git-fixes). - commit 2c19bb5- scsi: fc: Add 256GBit speed setting to SCSI FC transport (bsc#1188101). - commit 62c8708- r8152: Fix a deadlock by doubly PM resume (bsc#1186194). - r8152: Fix potential PM refcount imbalance (bsc#1186194). - commit 539ea44- drm/panel: raspberrypi-touchscreen: Prevent double-free (git-fixes). - media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf() (git-fixes). - liquidio: Fix unintentional sign extension issue on left shift of u16 (git-fixes). - spi: cadence: Correct initialisation of runtime PM again (git-fixes). - spi: mediatek: fix fifo rx mode (git-fixes). - commit 44fe76d- bcache: avoid oversized read request in cache missing code path (bsc#1184631). - bcache: remove bcache device self-defined readahead (bsc#1184631). - commit aaf8eb0- KVM: do not allow mapping valid but non-reference-counted pages (bsc#1186482, CVE-2021-22543). - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() (bsc#1186482, CVE-2021-22543). - KVM: do not assume PTE is writable after follow_pfn (bsc#1186482, CVE-2021-22543). - commit 3795669- xen/events: reset active flag for lateeoi events later (git-fixes). - Refresh patches.suse/xen-events-fix-setting-irq-affinity.patch. - commit e51ccb0- RDMA/cma: Fix incorrect Packet Lifetime calculation (jsc#SLE-8449). - RDMA/cma: Protect RMW with qp_mutex (git-fixes). - bpf: Fix integer overflow in argument calculation for bpf_map_area_alloc (bsc#1154353). - ice: Re-organizes reqstd/avail {R, T}XQ check/code for efficiency (jsc#SLE-7926). - commit 94fef56- series.conf: cleanup - update upstream reference and move into sorted section: - patches.suse/seq_file-Disallow-extremely-large-seq-buffer-allocations.patch - commit 07df461- Update patches.suse/ARM-ensure-the-signal-page-contains-defined-contents.patch (CVE-2021-21781 bsc#1188445). - commit 47f3aa1- watchdog: iTCO_wdt: Account for rebooting on second timeout (git-fixes). - watchdog: Fix possible use-after-free by calling del_timer_sync() (git-fixes). - watchdog: sc520_wdt: Fix possible use-after-free in wdt_turnoff() (git-fixes). - watchdog: Fix possible use-after-free in wdt_startup() (git-fixes). - w1: ds2438: fixing bug that would always get page0 (git-fixes). - commit 0fe04be- virtio_console: Assure used length from device is limited (git-fixes). - pwm: img: Fix PM reference leak in img_pwm_enable() (git-fixes). - pwm: imx1: Don't disable clocks at device remove time (git-fixes). - pwm: spear: Don't modify HW state in .remove callback (git-fixes). - power: supply: ab8500: add missing MODULE_DEVICE_TABLE (git-fixes). - usb: gadget: hid: fix error return code in hid_bind() (git-fixes). - usb: gadget: f_hid: fix endianness issue with descriptors (git-fixes). - tty: serial: 8250: serial_cs: Fix a memory leak in error handling path (git-fixes). - tty: serial: fsl_lpuart: fix the potential risk of division or modulo by zero (git-fixes). - staging: rtl8723bs: fix macro value for 2.4Ghz only device (git-fixes). - commit 966e79d- PCI: tegra: Add missing MODULE_DEVICE_TABLE (git-fixes). - power: supply: charger-manager: add missing MODULE_DEVICE_TABLE (git-fixes). - power: reset: gpio-poweroff: add missing MODULE_DEVICE_TABLE (git-fixes). - power: supply: max17042: Do not enforce (incorrect) interrupt trigger type (git-fixes). - power: supply: ab8500: Avoid NULL pointers (git-fixes). - power: supply: sc2731_charger: Add missing MODULE_DEVICE_TABLE (git-fixes). - power: supply: sc27xx: Add missing MODULE_DEVICE_TABLE (git-fixes). - misc: alcor_pci: fix inverted branch condition (git-fixes). - net: usb: fix possible use-after-free in smsc75xx_bind (git-fixes). - commit 74628f5- iio: magn: bmc150: Balance runtime pm + use pm_runtime_resume_and_get() (git-fixes). - iio: gyro: fxa21002c: Balance runtime pm + use pm_runtime_resume_and_get() (git-fixes). - misc: alcor_pci: fix null-ptr-deref when there is no PCI bridge (git-fixes). - misc/libmasm/module: Fix two use after free in ibmasm_init_one (git-fixes). - mfd: cpcap: Fix cpcap dmamask not set warnings (git-fixes). - mfd: da9052/stmpe: Add and modify MODULE_DEVICE_TABLE (git-fixes). - Input: hideep - fix the uninitialized use in hideep_nvm_unlock() (git-fixes). - i2c: core: Disable client irq on reboot/shutdown (git-fixes). - lib/decompress_unlz4.c: correctly handle zero-padding around initrds (git-fixes). - commit 14f42b7- backlight: lm3630a: Fix return code of .update_status() callback (git-fixes). - dmaengine: fsl-qdma: check dma_set_mask return value (git-fixes). - gpio: pca953x: Add support for the On Semi pca9655 (git-fixes). - gpio: zynq: Check return value of pm_runtime_get_sync (git-fixes). - ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20 characters (git-fixes). - ASoC: soc-core: Fix the error return code in snd_soc_of_parse_audio_routing() (git-fixes). - ASoC: img: Fix PM reference leak in img_i2s_in_probe() (git-fixes). - ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions (git-fixes). - ALSA: hda: Add IRQ check for platform_get_irq() (git-fixes). - ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values (git-fixes). - commit 006f207- ACPI: video: Add quirk for the Dell Vostro 3350 (git-fixes). - ACPI: AMBA: Fix resource name in /proc/iomem (git-fixes). - ALSA: usb-audio: scarlett2: Fix data_mutex lock (git-fixes). - ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count (git-fixes). - ALSA: bebob: add support for ToneWeal FW66 (git-fixes). - ALSA: ppc: fix error return code in snd_pmac_probe() (git-fixes). - ALSA: sb: Fix potential double-free of CSP mixer elements (git-fixes). - ALSA: ac97: fix PM reference leak in ac97_bus_remove() (git-fixes). - ALSA: usx2y: Don't call free_pages_exact() with NULL address (git-fixes). - commit eaa8acd- config: refresh - drop GVE on arm64 and s390x (no longer available due to dependency update) - commit d6ed2bf- crypto: sun4i-ss - initialize need_fallback (git-fixes). - crypto: sun4i-ss - IV register does not work on A10 and A13 (git-fixes). - crypto: sun4i-ss - checking sg length is not sufficient (git-fixes). - crypto: virtio: Fix dest length calculation in __virtio_crypto_skcipher_do_req() (git-fixes). - crypto: virtio: Fix src/dst scatterlist calculation in __virtio_crypto_skcipher_do_req() (git-fixes). - commit 2b4c8a1- blacklist.conf: add 4c9c26f1e67648f41f - commit db6c764- powerpc/papr_scm: Properly handle UUID types and API (FATE#326628, bsc#1113295, git-fixes). - commit 9bcaa28- powerpc: Offline CPU in stop_this_cpu() (bsc#1156395). - commit 01547d1- powerpc/mm: Fix lockup on kernel exec fault (bsc#1156395). - commit b063178- powerpc/stacktrace: Fix spurious "stale" traces in raise_backtrace_ipi() (bsc#1156395). - commit f074894- gve: Introduce per netdev `enum gve_queue_format` (bsc#1176940). - Refresh patches.suse/gve-Fix-an-error-handling-path-in-gve_probe.patch. - commit fc90ec1- gve: DQO: Remove incorrect prefetch (bsc#1176940). - gve: Simplify code and axe the use of a deprecated API (bsc#1176940). - gve: Propagate error codes to caller (bsc#1176940). - gve: DQO: Fix off by one in gve_rx_dqo() (bsc#1176940). - gve: Fix warnings reported for DQO patchset (bsc#1176940). - gve: DQO: Add RX path (bsc#1176940). - gve: DQO: Add TX path (bsc#1176940). - gve: DQO: Configure interrupts on device up (bsc#1176940). - gve: DQO: Add ring allocation and initialization (bsc#1176940). - gve: DQO: Add core netdev features (bsc#1176940). - gve: Update adminq commands to support DQO queues (bsc#1176940). - gve: Add DQO fields for core data structures (bsc#1176940). - gve: Add dqo descriptors (bsc#1176940). - gve: Add support for DQO RX PTYPE map (bsc#1176940). - gve: adminq: DQO specific device descriptor logic (bsc#1176940). - gve: Introduce a new model for device options (bsc#1176940). - gve: Make gve_rx_slot_page_info.page_offset an absolute offset (bsc#1176940). - gve: gve_rx_copy: Move padding to an argument (bsc#1176940). - gve: Move some static functions to a common file (bsc#1176940). - gve: Check TX QPL was actually assigned (bsc#1176940). - net: gve: remove duplicated allowed (bsc#1176940). - net: gve: convert strlcpy to strscpy (bsc#1176940). - gve: Add support for raw addressing in the tx path (bsc#1176940). - gve: Rx Buffer Recycling (bsc#1176940). - gve: Add support for raw addressing to the rx path (bsc#1176940). - gve: Add support for raw addressing device option (bsc#1176940). - gve: Replace zero-length array with flexible-array member (bsc#1176940). - gve: Enable Link Speed Reporting in the driver (bsc#1176940). - gve: Use link status register to report link status (bsc#1176940). - gve: Batch AQ commands for creating and destroying queues (bsc#1176940). - gve: NIC stats for report-stats and for ethtool (bsc#1176940). - gve: Add Gvnic stats AQ command and ethtool show/set-priv-flags (bsc#1176940). - gve: Use dev_info/err instead of netif_info/err (bsc#1176940). - gve: Add stats for gve (bsc#1176940). - gve: Get and set Rx copybreak via ethtool (bsc#1176940). - commit ffc7e3d- cpu/hotplug: Cure the cpusets trainwreck (git fixes (sched/hotplug)). - commit ea5f05d- blacklist.conf: duplication - commit eff56f7- kprobes: Fix to check probe enabled before disarm_kprobe_ftrace() (git-fixes). - commit 9aba4a6- kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE (git-fixes). - commit a579f68- kABI workaround for pci/quirks.c (git-fixes). - commit 04fb196- Add a cherry-picked ID for AMDGPU fix patch - commit ba73832- wl1251: Fix possible buffer overflow in wl1251_cmd_scan (git-fixes). - wlcore/wl12xx: Fix wl12xx get_mac error if device is in ELP (git-fixes). - commit e3971fc- PCI: iproc: Support multi-MSI only on uniprocessor kernel (git-fixes). - PCI: iproc: Fix multi-MSI base vector number allocation (git-fixes). - PCI: aardvark: Implement workaround for the readback value of VEND_ID (git-fixes). - pinctrl: mcp23s08: Fix missing unlock on error in mcp23s08_irq() (git-fixes). - pinctrl: mcp23s08: fix race condition in irq handler (git-fixes). - pinctrl/amd: Add device HID for new AMD GPIO controller (git-fixes). - wireless: wext-spy: Fix out-of-bounds warning (git-fixes). - rtl8xxxu: Fix device info for RTL8192EU devices (git-fixes). - r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM (git-fixes). - qemu_fw_cfg: Make fw_cfg_rev_attr a proper kobj_attribute (git-fixes). - commit 0ca454f- PCI: aardvark: Fix checking for PIO Non-posted Request (git-fixes). - PCI: Leave Apple Thunderbolt controllers on for s2idle or standby (git-fixes). - media, bpf: Do not copy more entries than user space requested (git-fixes). - iwlwifi: pcie: free IML DMA memory allocation (git-fixes). - iwlwifi: mvm: don't change band on bound PHY contexts (git-fixes). - mISDN: fix possible use-after-free in HFC_cleanup() (git-fixes). - media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K (git-fixes). - mmc: core: Allow UHS-I voltage switch for SDSC cards if supported (git-fixes). - commit f7d13b4- drm/amdgpu: Update NV SIMD-per-CU to 2 (git-fixes). - drm/radeon: Add the missed drm_gem_object_put() in radeon_user_framebuffer_create() (git-fixes). - drm/amd/display: fix incorrrect valid irq check (git-fixes). - drm/amdkfd: Walk through list with dqm lock hold (git-fixes). - drm/amd/display: Verify Gamma & Degamma LUT sizes in amdgpu_dm_atomic_check (git-fixes). - drm/mediatek: Fix PM reference leak in mtk_crtc_ddp_hw_init() (git-fixes). - drm/amd/display: Set DISPCLK_MAX_ERRDET_CYCLES to 7 (git-fixes). - drm/amd/display: Update scaling settings on modeset (git-fixes). - drm/bridge: cdns: Fix PM reference leak in cdns_dsi_transfer() (git-fixes). - drm/amd/display: fix use_max_lb flag for 420 pixel formats (git-fixes). - commit d72cf42- drm/amd/amdgpu/sriov disable all ip hw status by default (git-fixes). - drm/sched: Avoid data corruptions (git-fixes). - drm/virtio: Fix double free on probe failure (git-fixes). - drm/msm/mdp4: Fix modifier support enabling (git-fixes). - drm/arm/malidp: Always list modifiers (git-fixes). - drm/vc4: fix argument ordering in vc4_crtc_get_margins() (git-fixes). - drm/zte: Don't select DRM_KMS_FB_HELPER (git-fixes). - drm/mxsfb: Don't select DRM_KMS_FB_HELPER (git-fixes). - drm/tegra: Don't set allow_fb_modifiers explicitly (git-fixes). - commit b02b3f8- ASoC: tegra: Set driver_name=tegra for all machine drivers (git-fixes). - clk: tegra: Ensure that PLLU configuration is applied properly (git-fixes). - clk: renesas: r8a77995: Add ZA2 clock (git-fixes). - Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc (git-fixes). - Bluetooth: Shutdown controller after workqueues are flushed or cancelled (git-fixes). - Bluetooth: Fix the HCI to MGMT status conversion table (git-fixes). - Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip (git-fixes). - cw1200: add missing MODULE_DEVICE_TABLE (git-fixes). - clocksource/arm_arch_timer: Improve Allwinner A64 timer workaround (git-fixes). - commit c7cdd5b- ARM: ensure the signal page contains defined contents (bsc#1188445). - commit a1eecda- kprobes: fix kill kprobe which has been marked as gone (git-fixes). - commit ee1820f- kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler (git-fixes). - commit 865421f- kprobes: Do not expose probe addresses to non-CAP_SYSLOG (git-fixes). - commit e2cb2ae- net: atlantic: fix ip dst and ipv6 address filters (git-fixes). - commit 4278aab- net/mlx5: Don't fail driver on failure to create debugfs (git-fixes). - commit c19d4f7- net: marvell: Fix OF_MDIO config check (git-fixes). - commit f372318- net: dp83867: Fix OF_MDIO config check (git-fixes). - commit c2ac3ff- net: Make PTP-specific drivers depend on PTP_1588_CLOCK (git-fixes). - commit 0997bfc- net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy (git-fixes). - commit 2e479b6- PCI: quirks: fix false kABI positive (git-fixes). - commit a2a8059- tpm: efi: Use local variable for calculating final log size (git-fixes). - commit 69be865- tracing: Do not reference char * as a string in histograms (git-fixes). - commit 5ff7921- PCI: iproc: Fix multi-MSI base vector number allocation (git-fixes). - commit 9e70011- PCI: aardvark: Implement workaround for the readback value of VEND_ID (git-fixes). - commit 4bfb1fd- PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun (git-fixes). - commit dbaa5b3- PCI: Leave Apple Thunderbolt controllers on for s2idle or standby (git-fixes). - commit 900ca03- Update patches.suse/Revert-ibmvnic-remove-duplicate-napi_schedule-call-i.patch (bsc#1065729 bsc#1188405 ltc#193509 bsc#1187476 ltc#193646). - commit f55c672- fix patch metadata - fix Patch-mainline, drop Git-repo: patches.suse/bpftool-Properly-close-va_list-ap-by-va_end-on-error.patch - commit ec7585c- Update kabi files. - update from second July 2021 maintenance update submission (commit 44308a6ad508) - commit ee121a0- fbmem: Do not delete the mode that is still in use (git-fixes). - dma-buf/sync_file: Don't leak fences on merge failure (git-fixes). - fbmem: add margin check to fb_check_caps() (git-fixes). - commit 1116a4b- Update patches.suse/Revert-ibmvnic-remove-duplicate-napi_schedule-call-i.patch (bsc#1065729 bsc#1188405 ltc#193509). - Update patches.suse/Revert-ibmvnic-simplify-reset_long_term_buff-functio.patch (bsc#1186206 ltc#191041 bsc#1188405 ltc#193509). - commit 5fcaf8a- rpm/kernel-binary.spec.in: Do not install usrmerged kernel on Leap (boo#1184804). - commit 5b51131- bpftool: Properly close va_list 'ap' by va_end() on error (bsc#1155518). - libbpf: Fixes incorrect rx_ring_setup_done (bsc#1155518). - commit a14bd1d- blacklist.conf: add "block: blk-mq.c: fix @at_head kernel-doc warning" Also removed a remnant of a merge conflict. - commit ebd24f1- netfilter: x_tables: fix compat match/target pad out-of-bound write (CVE-2021-22555 bsc#1188116). - commit 5d3d4da- vmxnet3: fix cksum offload issues for tunnels with non-default udp ports (git-fixes). - USB: cdc-acm: blacklist Heimann USB Appset device (git-fixes). - usb: gadget: eem: fix echo command packet response issue (git-fixes). - vfio/pci: Handle concurrent vma faults (git-fixes). - [xarray] iov_iter_fault_in_readable() should do nothing in xarray case (git-fixes). - ssb: sdio: Don't overwrite const buffer if block_write fails (git-fixes). - commit 76c3ff9- serial_cs: Add Option International GSM-Ready 56K/ISDN modem (git-fixes). - serial_cs: remove wrong GLOBETROTTER.cis entry (git-fixes). - staging: rtl8712: remove redundant check in r871xu_drv_init (git-fixes). - spi: spi-loopback-test: Fix 'tx_buf' might be 'rx_buf' (git-fixes). - spi: omap-100k: Fix the length judgment problem (git-fixes). - spi: spi-topcliff-pch: Fix potential double free in pch_spi_process_messages() (git-fixes). - spi: Make of_register_spi_device also set the fwnode (git-fixes). - regulator: da9052: Ensure enough delay time for .set_voltage_time_sel (git-fixes). - regulator: uniphier: Add missing MODULE_DEVICE_TABLE (git-fixes). - commit a2b1a60- platform/x86: toshiba_acpi: Fix missing error code in toshiba_acpi_setup_keyboard() (git-fixes). - random32: Fix implicit truncation warning in prandom_seed_state() (git-fixes). - media: Fix Media Controller API config checks (git-fixes). - media: imx-csi: Skip first few frames from a BT.656 source (git-fixes). - media: siano: fix device register error path (git-fixes). - media: dvb_net: avoid speculation from net slot (git-fixes). - media: dvd_usb: memory leak in cinergyt2_fe_attach (git-fixes). - mmc: via-sdmmc: add a check against NULL pointer dereference (git-fixes). - mmc: sdhci-sprd: use sdhci_sprd_writew (git-fixes). - memstick: rtsx_usb_ms: fix UAF (git-fixes). - commit 0eb2f6b- media: st-hva: Fix potential NULL pointer dereferences (git-fixes). - media: bt8xx: Fix a missing check bug in bt878_probe (git-fixes). - media: v4l2-core: Avoid the dangling pointer in v4l2_fh_release (git-fixes). - media: em28xx: Fix possible memory leak of em28xx struct (git-fixes). - media: imx: imx7_mipi_csis: Fix logging of only error event counters (git-fixes). - media: pvrusb2: fix warning in pvr2_i2c_core_done (git-fixes). - media: cobalt: fix race condition in setting HPD (git-fixes). - media: cpia2: fix memory leak in cpia2_usb_probe (git-fixes). - media: sti: fix obj-$(config) targets (git-fixes). - media: exynos-gsc: fix pm_runtime_get_sync() usage count (git-fixes). - commit ba1b2bc- iio: adc: at91-sama5d2: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: accel: mxc4005: Fix overread of data and alignment issue (git-fixes). - lib: vsprintf: Fix handling of number field widths in vsscanf (git-fixes). - media: sti/bdisp: fix pm_runtime_get_sync() usage count (git-fixes). - media: s5p-jpeg: fix pm_runtime_get_sync() usage count (git-fixes). - media: mtk-vcodec: fix PM runtime get logic (git-fixes). - media: sh_vou: fix pm_runtime_get_sync() usage count (git-fixes). - media: mdk-mdp: fix pm_runtime_get_sync() usage count (git-fixes). - iio: at91-sama5d2_adc: remove usage of iio_priv_to_dev() helper (git-fixes). - iio:accel:mxc4005: Drop unnecessary explicit casts in regmap_bulk_read calls (git-fixes). - commit 74c2c06- gve: Fix an error handling path in 'gve_probe()' (git-fixes). - fm10k: Fix an error handling path in 'fm10k_probe()' (git-fixes). - HID: do not use down_interruptible() when unbinding devices (git-fixes). - HID: wacom: Correct base usage for capacitive ExpressKey status bits (git-fixes). - crypto: omap-sham - Fix PM reference leak in omap sham ops (git-fixes). - crypto: nitrox - fix unchecked variable in nitrox_register_interrupts (git-fixes). - hwrng: exynos - Fix runtime PM imbalance on error (git-fixes). - hwmon: (max31790) Fix pwmX_enable attributes (git-fixes). - hwmon: (max31790) Report correct current pwm duty cycles (git-fixes). - commit ac66984- ALSA: usb-audio: scarlett2: Fix wrong resume call (git-fixes). - ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D (git-fixes). - ath9k: Fix kernel NULL pointer dereference during ath_reset_internal() (git-fixes). - clocksource: Retry clock read if long delays detected (git-fixes). - crypto: qat - remove unused macro in FW loader (git-fixes). - crypto: qat - check return code of qat_hal_rd_rel_reg() (git-fixes). - crypto: ccp - Fix a resource leak in an error handling path (git-fixes). - crypto: ux500 - Fix error return code in hash_hw_final() (git-fixes). - crypto: nx - add missing MODULE_DEVICE_TABLE (git-fixes). - crypto: ixp4xx - dma_unmap the correct address (git-fixes). - commit fcdd7a0- ALSA: hda/realtek: Add another ALC236 variant support (git-fixes). - ALSA: usb-audio: fix rate on Ozone Z90 USB headset (git-fixes). - ACPI: bus: Call kobject_put() in acpi_init() error path (git-fixes). - ACPI: EC: Make more Asus laptops use ECDT _GPE (git-fixes). - ACPI: resources: Add checks for ACPI IRQ override (git-fixes). - ACPI: processor idle: Fix up C-state latency if not ordered (git-fixes). - ACPICA: Fix memory leak caused by _CID repair function (git-fixes). - commit 930000b- Blacklist already cherry-picked ASoC commits - commit 5cc6c21- usb: gadget: f_fs: Fix setting of device and driver data cross-references (git-fixes). - commit 8174fed- vfs: Convert functionfs to use the new mount API (git -fixes). - commit bc4a6d0- mm, futex: fix shared futex pgoff on shmem huge page (git fixes (kernel/futex)). - commit b5af159- usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW (git-fixes). - commit dcf2645- fuse: reject internal errno (bsc#1188269). - fuse: check connected before queueing on fpq->io (bsc#1188267). - fuse: ignore PG_workingset after stealing (bsc#1188268). - commit ad3c8af- kABI: restore struct tcpc_config definition (git-fixes). - commit af96f3e- media: v4l2-async: Fix trivial documentation typo (git-fixes). - commit a677fa5- tracing/histograms: Fix parsing of "sym-offset" modifier (git-fixes). - commit e43cdf6- usb: typec: fusb302: Always provide fwnode for the port (git-fixes). - commit 23df3ab- math: Export mul_u64_u64_div_u64 (git-fixes). - commit 3708119- rtc: stm32: Fix unbalanced clk_disable_unprepare() on probe error path (git-fixes). - rtc: fix snprintf() checking in is_rtc_hctosys() (git-fixes). - thermal/drivers/rcar_gen3_thermal: Fix coefficient calculations (git-fixes). - reset: bail if try_module_get() fails (git-fixes). - firmware: tegra: Fix error return code in tegra210_bpmp_init() (git-fixes). - memory: fsl_ifc: fix leak of private memory on probe failure (git-fixes). - memory: fsl_ifc: fix leak of IO mapping on probe failure (git-fixes). - memory: pl353: Fix error return code in pl353_smc_probe() (git-fixes). - memory: atmel-ebi: add missing of_node_put for loop iteration (git-fixes). - reset: brcmstb: Add missing MODULE_DEVICE_TABLE (git-fixes). - reset: a10sr: add missing of_match_table reference (git-fixes). - ALSA: intel8x0: Fix breakage at ac97 clock measurement (git-fixes). - ALSA: isa: Fix error return code in snd_cmi8330_probe() (git-fixes). - commit 8a2377b- memory: fsl_ifc: fix leak of private memory on probe failure (git-fixes). - memory: fsl_ifc: fix leak of IO mapping on probe failure (git-fixes). - commit b522bcb- Refresh patches.suse/rtc-pcf2127-handle-timestamp-interrupts.patch. Switched to queued version. - commit 1b185ef- x86/kvm: Unify kvm_pv_guest_cpu_reboot() with kvm_guest_cpu_offline() (bsc#1185308). - x86/kvm: Disable all PV features on crash (bsc#1185308). - refresh patches.suse/0001-kvm-Reintroduce-nopvspin-kernel-parameter.patch - x86/kvm: Disable kvmclock on all CPUs on shutdown (bsc#1185308). - x86/kvm: Teardown PV features on boot CPU as well (bsc#1185308). - x86/kvm: Fix pr_info() for async PF setup/teardown (bsc#1185308). - commit 80699a1- fix patches metadata - fix Patch-mainline: patches.suse/tracepoint-Add-tracepoint_probe_register_may_exist-for-BPF-tracing.patch patches.suse/tracing-Resize-tgid_map-to-pid_max-not-PID_MAX_DEFAULT.patch patches.suse/tracing-Simplify-fix-saved_tgids-logic.patch - commit fa5e842- soc: fsl: qbman: Delete useless kfree code (bsc#1188176). - soc: fsl: qbman: Ensure device cleanup is run for kexec (bsc#1188176). - commit ec1bcd7- ptp_qoriq: fix overflow in ptp_qoriq_adjfine() u64 calcalation (git-fixes). - commit d17e17c- dpaa2-eth: fix memory leak in XDP_REDIRECT (git-fixes). - commit 586c229- rpm/kernel-binary.spec.in: Remove zdebug define used only once. - commit 85a9fc2- kernel-binary.spec: Exctract s390 decompression code (jsc#SLE-17042). - commit 7f97df2- seq_file: Disallow extremely large seq buffer allocations (bsc#1188062, CVE-2021-33909). - commit eb7ef76- tracing: Resize tgid_map to pid_max, not PID_MAX_DEFAULT (git-fixes). - commit dfc48c9- tracing: Simplify & fix saved_tgids logic (git-fixes). - commit c530730- tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing (git-fixes). - commit 1ab86c5- nvme: verify MNAN value if ANA is enabled (bsc#1185791). - commit e620ef1- spi: spi-nxp-fspi: Implement errata workaround for LS1028A (bsc#1188121). - spi: spi-nxp-fspi: Add support for IP read only (bsc#1188121). - spi: spi-nxp-fspi: Add ACPI support (bsc#1188121). Refresh: patches.suse/spi-spi-nxp-fspi-fix-fspi-panic-by-unexpected-interr.patch patches.suse/spi-spi-nxp-fspi-move-the-register-operation-after-t.patch - spi: spi-nxp-fspi: Fix a NULL vs IS_ERR() check in probe (bsc#1188121). Refresh: patches.suse/spi-spi-nxp-fspi-fix-fspi-panic-by-unexpected-interr.patch patches.suse/spi-spi-nxp-fspi-move-the-register-operation-after-t.patch - spi: spi-nxp-fspi: Enable the Octal Mode in MCR0 (bsc#1188121). - spi: fspi: dynamically alloc AHB memory (bsc#1188121). Refresh: patches.suse/spi-spi-nxp-fspi-fix-fspi-panic-by-unexpected-interr.patch patches.suse/spi-spi-nxp-fspi-move-the-register-operation-after-t.patch - spi: nxp-fspi: Use devm API to fix missed unregistration of controller (bsc#1188121). - commit 8290109- Fix meta data in lpfc-decouple-port_template-and-vport_template.patch - commit d9e6471- scsi: qedf: Do not put host in qedf_vport_create() unconditionally (bsc#1170511). - commit 8665594- kernel-binary.spec: Fix up usrmerge for non-modular kernels. - commit d718cd9- nvme-rdma: introduce nvme_rdma_sgl structure (git-fixes). - commit 6ccb8a5- nvme-rdma: fix in-casule data send for chained sgls (git-fixes). - nvme-tcp: rerun io_work if req_list is not empty (git-fixes). - commit a286451- watchdog: aspeed: fix hardware timeout calculation (git-fixes). - watchdog: sp805: Fix kernel doc description (git-fixes). - gpio: AMD8111 and TQMX86 require HAS_IOPORT_MAP (git-fixes). - commit 79058fa- extcon: max8997: Add missing modalias string (git-fixes). - extcon: sm5502: Drop invalid register write in sm5502_reg_data (git-fixes). - char: pcmcia: error out if 'num_bytes_read' is greater than 4 in set_protocol() (git-fixes). - backlight: lm3630a_bl: Put fwnode in error case during ->probe() (git-fixes). - commit 6b8c8e1- iio: light: tcs3472: do not free unallocated IRQ (git-fixes). - iio: prox: isl29501: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: light: vcnl4035: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: magn: rm3100: Fix alignment of buffer in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: adc: ti-ads8688: Fix alignment of buffer in iio_push_to_buffers_with_timestamp() (git-fixes). - staging: gdm724x: check for overflow in gdm_lte_netif_rx() (git-fixes). - staging: gdm724x: check for buffer overflow in gdm_lte_multi_sdu_pkt() (git-fixes). - fpga: machxo2-spi: Address warning about unused variable (git-fixes). - extcon: intel-mrfld: Sync hardware and software state on init (git-fixes). - fpga: stratix10-soc: Add missing fpga_mgr_free() call (git-fixes). - commit b12d968- iio: adc: mxs-lradc: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: adc: hx711: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: ltr501: ltr501_read_ps(): add missing endianness conversion (git-fixes). - iio: ltr501: ltr559: fix initialization of LTR501_ALS_CONTR (git-fixes). - iio: ltr501: mark register holding upper 8 bits of ALS_DATA{0,1} and PS_DATA as volatile, too (git-fixes). - iio: si1133: fix format string warnings (git-fixes). - iio: potentiostat: lmp91000: Fix alignment of buffer in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: light: tcs3472: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: light: tcs3414: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: light: isl29125: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - commit 2299862- iio: magn: bmc150: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: magn: hmc5843: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: prox: as3935: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: prox: pulsed-light: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: prox: srf08: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: humidity: am2315: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: gyro: bmg160: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: adc: vf610: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: adc: ti-ads1015: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: accel: stk8ba50: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - commit 66bbafb- serial: mvebu-uart: correctly calculate minimal possible baudrate (git-fixes). - serial: mvebu-uart: do not allow changing baudrate when uartclk is not available (git-fixes). - serial: mvebu-uart: fix calculation of clock divisor (git-fixes). - serial: 8250: Actually allow UPF_MAGIC_MULTIPLIER baud rates (git-fixes). - serial: tegra-tcu: Reorder channel initialization (git-fixes). - staging: rtl8712: fix memory leak in rtl871x_load_fw_cb (git-fixes). - iio: accel: stk8312: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: accel: kxcjk-1013: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: accel: hid: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: accel: bma220: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: accel: bma180: Fix buffer alignment in iio_push_to_buffers_with_timestamp() (git-fixes). - iio: adis16400: do not return ints in irq handlers (git-fixes). - iio: adis_buffer: do not return ints in irq handlers (git-fixes). - mmc: sdhci: Fix warning message when accessing RPMB in HS400 mode (git-fixes). - mmc: core: clear flags before allowing to retune (git-fixes). - Input: hil_kbd - fix error return code in hil_dev_connect() (git-fixes). - Input: usbtouchscreen - fix control-request directions (git-fixes). - mtd: rawnand: marvell: add missing clk_disable_unprepare() on error in marvell_nfc_resume() (git-fixes). - mtd: partitions: redboot: seek fis-index-block in the right node (git-fixes). - commit a219c27- usb: dwc3: Fix debugfs creation flow (git-fixes). - xhci: solve a double free problem while doing s4 (git-fixes). - usb: typec: Add the missed altmode_id_remove() in typec_register_altmode() (git-fixes). - usb: dwc2: Don't reset the core after setting turnaround time (git-fixes). - usb: typec: wcove: Fx wrong kernel doc format (git-fixes). - tty: nozomi: Fix the error handling path of 'nozomi_card_init()' (git-fixes). - tty: nozomi: Fix a resource leak in an error handling function (git-fixes). - soundwire: stream: Fix test for DP prepare complete (git-fixes). - visorbus: fix error return code in visorchipset_init() (git-fixes). - commit e666eaf- leds: ktd2692: Fix an error handling path (git-fixes). - leds: as3645a: Fix error return code in as3645a_parse_node() (git-fixes). - leds: lm3532: select regmap I2C API (git-fixes). - ASoC: mediatek: mtk-btcvsd: Fix an error handling path in 'mtk_btcvsd_snd_probe()' (git-fixes). - ASoC: rsnd: tidyup loop on rsnd_adg_clk_query() (git-fixes). - ASoC: atmel-i2s: Fix usage of capture and playback at the same time (git-fixes). - ASoC: cs42l42: Correct definition of CS42L42_ADC_PDN_MASK (git-fixes). - ALSA: usb-audio: scarlett2: Read mux at init time (git-fixes). - ALSA: usb-audio: scarlett2: Read mixer volumes at init time (git-fixes). - Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro" (git-fixes). - commit ea3fb69- ASoC: hisilicon: fix missing clk_disable_unprepare() on error in hi6210_i2s_startup() (git-fixes). - mwifiex: re-fix for unaligned accesses (git-fixes). - lib/decompressors: remove set but not used variabled 'level' (git-fixes). - clk: si5341: Update initialization magic (git-fixes). - clk: si5341: Avoid divide errors due to bogus register contents (git-fixes). - clk: actions: Fix bisp_factor_table based clocks on Owl S500 SoC (git-fixes). - clk: actions: Fix SD clocks factor table on Owl S500 SoC (git-fixes). - clk: actions: Fix UART clock dividers on Owl S500 SoC (git-fixes). - clk: zynqmp: pll: Remove some dead code (git-fixes). - clk: meson: g12a: fix gp0 and hifi ranges (git-fixes). - commit b4df049- clk: renesas: rcar-gen3: Update Z clock rate formula in comments (git-fixes). - drm/msm/dpu: Fix error return code in dpu_mdss_init() (git-fixes). - drm: qxl: ensure surf.data is ininitialized (git-fixes). - drm/rockchip: dsi: remove extra component_del() call (git-fixes). - drm/rockchip: dsi: move all lane config except LCDC mux to bind() (git-fixes). - drm/rockchip: cdn-dp-core: add missing clk_disable_unprepare() on error in cdn_dp_grf_write() (git-fixes). - video: fbdev: imxfb: Fix an error message (git-fixes). - ath10k: Fix an error code in ath10k_add_interface() (git-fixes). - commit fc44520- can: peak_pciefd: pucan_handle_status(): fix a potential starvation issue in TX path (git-fixes). - can: gw: synchronize rcu operations before removing gw job entry (git-fixes). - Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event (git-fixes). - Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid (git-fixes). - ath10k: remove unused more_frags variable (git-fixes). - ath10k: add missing error return code in ath10k_pci_probe() (git-fixes). - ath10k: go to path err_unsupported when chip id is not supported (git-fixes). - brcmsmac: mac80211_if: Fix a resource leak in an error handling path (git-fixes). - brcmfmac: correctly report average RSSI in station info (git-fixes). - brcmfmac: fix setting of station info chains bitmask (git-fixes). - commit d8b0fc2- can: hi311x: hi3110_can_probe(): silence clang warning (git-fixes). - drm/radeon: wait for moving fence after pinning (git-fixes). - drm/nouveau: wait for moving fence after pinning v2 (git-fixes). - cfg80211: call cfg80211_leave_ocb when switching away from OCB (git-fixes). - dmaengine: mediatek: use GFP_NOWAIT instead of GFP_ATOMIC in prep_dma (git-fixes). - dmaengine: mediatek: do not issue a new desc if one is still current (git-fixes). - dmaengine: mediatek: free the proper desc in desc_free handler (git-fixes). - dmaengine: rcar-dmac: Fix PM reference leak in rcar_dmac_probe() (git-fixes). - dmaengine: zynqmp_dma: Fix PM reference leak in zynqmp_dma_alloc_chan_resourc() (git-fixes). - commit 8be348d- gve: Fix swapped vars when fetching max queues (git-fixes). - mac80211: remove iwlwifi specific workaround NDPs of null_response (git-fixes). - mac80211: remove iwlwifi specific workaround that broke sta NDP tx (git-fixes). - mt76: fix possible NULL pointer dereference in mt76_tx (git-fixes). - extcon: extcon-max8997: Fix IRQ freeing at error path (git-fixes). - r8169: Avoid memcpy() over-reading of ETH_SS_STATS (git-fixes). - r8152: Avoid memcpy() over-reading of ETH_SS_STATS (git-fixes). - mac80211_hwsim: drop pending frames on stop (git-fixes). - mac80211: remove warning in ieee80211_get_sband() (git-fixes). - PCI: Add AMD RS690 quirk to enable 64-bit DMA (git-fixes). - commit c400726- wcn36xx: Move hal_buf allocation to devm_kmalloc in probe (git-fixes). - wireless: carl9170: fix LEDS build errors & warnings (git-fixes). - rsi: Assign beacon rate settings to the correct rate_info descriptor field (git-fixes). - ssb: Fix error return code in ssb_bus_scan() (git-fixes). - ACPI: property: Constify stubs for CONFIG_ACPI=n case (git-fixes). - ACPI: APEI: fix synchronous external aborts in user-mode (git-fixes). - ACPI: sysfs: Fix a buffer overrun problem with description_show() (git-fixes). - cpufreq: sc520_freq: add 'fallthrough' to one case (git-fixes). - ata: ahci_sunxi: Disable DIPM (git-fixes). - commit 4b20cc3- media: siano: Fix out-of-bounds warnings in smscore_load_firmware_family2() (git-fixes). - media: s5p-g2d: Fix a memory leak on ctx->fh.m2m_ctx (git-fixes). - media: rtl28xxu: fix zero-length control request (git-fixes). - media: gspca/sunplus: fix zero-length control requests (git-fixes). - media: gspca/gl860: fix zero-length control requests (git-fixes). - media: gspca/sq905: fix control-request direction (git-fixes). - media: dtv5100: fix control-request directions (git-fixes). - hwmon: (max31790) Fix fan speed reporting for fan7..12 (git-fixes). - hwmon: (max31722) Remove non-standard ACPI device IDs (git-fixes). - commit 655a2af- media: zr364xx: fix memory leak in zr364xx_start_readpipe (git-fixes). - media: tc358743: Fix error return code in tc358743_probe_of() (git-fixes). - media: au0828: fix a NULL vs IS_ERR() check (git-fixes). - media: exynos4-is: Fix a use after free in isp_video_release (git-fixes). - media: dvb-usb: fix wrong definition (git-fixes). - media: rc: i2c: Fix an error message (git-fixes). - media: I2C: change 'RST' to "RSET" to fix multiple build errors (git-fixes). - mmc: sdhci-esdhc-imx: remove unused is_imx6q_usdhc (git-fixes). - mmc: vub3000: fix control-request direction (git-fixes). - mmc: usdhi6rol0: fix error return code in usdhi6_probe() (git-fixes). - commit 0231cde- spi: stm32-qspi: Remove unused qspi field of struct stm32_qspi_flash (git-fixes). - spi: tegra114: Fix an error message (git-fixes). - spi: spi-sun6i: Fix chipselect/clock bug (git-fixes). - regulator: hi655x: Fix pass wrong pointer to config.driver_data (git-fixes). - mmc: block: Disable CMDQ on the ioctl path (git-fixes). - pinctrl: stm32: fix the reported number of GPIO lines per bank (git-fixes). - i2c: robotfuzz-osif: fix control-request directions (git-fixes). - i2c: dev: Add __user annotation (git-fixes). - commit c37129c- can: bcm: delay release of struct bcm_op after synchronize_rcu() (CVE-2021-3609 bsc#1187215). - commit a57ee2f- Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl (CVE-2021-3612 bsc#1187585). - commit 64519f9- blacklist.conf: Append 'drm/vc4: hdmi: Move the HSM clock enable to runtime_pm' - commit 23b3543- drm/vc4: hdmi: Make sure the controller is powered in detect (bsc#1152489) Backporting changes: * context changes * vc4_hdmi -> vc4->hdmi - commit 84c924f- drm/amdgpu: Don't query CE and UE errors (bsc#1152472) Backporting changes: * unsigned long -> uint32_t - commit 1637ecb- amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create (bsc#1152472) Backporting changes: * context changes - commit f40c83c- drm/msm: Small msm_gem_purge() fix (bsc#1152489) Backporting changes: * context changes * GEM_WARN_ON() -> WARN_ON() - commit f02a5b9- drm/radeon: Fix a missing check bug in radeon_dp_mst_detect() (bsc#1152489) Backporting changes: * context changes - commit fee040e- blacklist.conf: Append 'drm/vc4: hdmi: Restore cec physical address on reconnect' - commit b32f423- Update patch reference for patches.suse/module-limit-enabling-module.sig_enforce.patch (git-fixes, CVE-2021-35039, bsc#1188080). - commit 8d3fd9b- blacklist.conf: Append 'drm/vc4: crtc: Reduce PV fifo threshold on hvs4' - commit 3780e05- tpm, tpm_tis: Reserve locality in tpm_tis_resume() (bsc#1188036). - tpm, tpm_tis: Extend locality handling to TPM2 in tpm_tis_gen_interrupt() (bsc#1188036). - tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality() (bsc#1188036). - tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality() (bsc#1188036). - commit 2c323b1- drm: bridge/panel: Cleanup connector on bridge detach (bsc#1152489) Backporting changes: * context changes - commit b16ae28- drm/mcde/panel: Inverse misunderstood flag (bsc#1152472) Backporting changes: * only panel-samsung-s6d16d0.c exists - commit 83514d0- drm/stm: Fix bus_flags handling (bsc#1152472) - commit eaa7b7a- usb: typec: tcpm: Move mod_delayed_work(&port->vdm_state_machine) call into tcpm_queue_vdm() (git-fixes). - Refresh patches.suse/usb-typec-tcpm-Refactor-tcpm_handle_vdm_request-payl.patch. - Refresh patches.suse/usb-typec-tcpm-Refactor-tcpm_handle_vdm_request.patch. - commit 25ab009- usb: typec: tcpm: Error handling for tcpm_register_partner_altmodes (git-fixes). - commit d172a56- usb: typec: tcpm: move to SNK_UNATTACHED if sink removed for DRP (git-fixes). - commit 44e186b- usb: typec: tcpm: set correct data role for non-DRD (git-fixes). - commit d27b294- usb: typec: tcpm: Remove tcpc_config configuration mechanism (git-fixes). - commit 20564c3- usb: typec: tcpm: Switch to use fwnode_property_count_uXX() (git-fixes). - commit 69ab721- usb: typec: tcpm: Refactor tcpm_handle_vdm_request (git-fixes). - commit b4b2308- usb: typec: tcpm: Refactor tcpm_handle_vdm_request payload handling (git-fixes). - commit 9417ed4- usb: typec: ucsi: Put fwnode in any case during ->probe() (git-fixes). - commit ec4c8d0- usb: typec: ucsi: Hold con->lock for the entire duration of ucsi_register_port() (git-fixes). - commit 9f0dcac- usb: typec: tcpm: update power supply once partner accepts (git-fixes). - commit 54348d7- docs: admin-guide: update description for kernel.hotplug sysctl (git-fixes). - blacklist.conf: we do ship the kernel sources and the documentation. They may just as well be up to date. - commit 7d1b971- series.conf: cleanup - update upstream references and resort: patches.suse/scsi-ibmvfc-Avoid-move-login-if-fast-fail-is-enabled.patch patches.suse/scsi-ibmvfc-Handle-move-login-failure.patch patches.suse/scsi-ibmvfc-Reinit-target-retries.patch patches.suse/scsi-lpfc-Add-a-option-to-enable-interlocked-ABTS-be.patch patches.suse/scsi-lpfc-Add-ndlp-kref-accounting-for-resume-RPI-pa.patch patches.suse/scsi-lpfc-Fix-Node-recovery-when-driver-is-handling-.patch patches.suse/scsi-lpfc-Fix-Unexpected-timeout-error-in-direct-att.patch patches.suse/scsi-lpfc-Fix-crash-when-lpfc_sli4_hba_setup-fails-t.patch patches.suse/scsi-lpfc-Fix-node-handling-for-Fabric-Controller-an.patch patches.suse/scsi-lpfc-Fix-non-optimized-ERSP-handling.patch patches.suse/scsi-lpfc-Fix-unreleased-RPIs-when-NPIV-ports-are-cr.patch patches.suse/scsi-lpfc-Ignore-GID-FT-response-that-may-be-receive.patch patches.suse/scsi-lpfc-Reregister-FPIN-types-if-ELS_RDF-is-receiv.patch patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.10.patch patches.suse/scsi-scsi_dh_alua-Retry-RTPG-on-a-different-path-aft.patch - commit 9a3a833- fix patch metadata - fix Patch-mainline and move to "almost mainline" section: patches.suse/qla2xxx-synchronize-rport-dev_loss_tmo-setting.patch - commit 81935f9- blacklist.conf: 1e886090cefe docs: admin-guide: update description for kernel.hotplug sysctl - commit 1332420- blacklist.conf: 89f5f8fb5bf4 EDAC/thunderx: Remove irrelevant variable from error messages - commit 7c3f543- blacklist.conf: d8778e393afa x86/fpu: Invalidate FPU state after a failed XRSTOR from a user buffer - commit 07e7bbd- x86/pkru: Write hardware init value to PKRU when xstate is init (bsc#1152489). - commit 05b202a- scsi: ufs: ufshcd-pltfrm depends on HAS_IOMEM (bsc#1187980). - commit bc82289- cgroup1: don't allow '\n' in renaming (bsc#1187972). - commit 31d330a- qla2xxx: synchronize rport dev_loss_tmo setting (bsc#1182470 bsc#1185486). - commit 8249f86- x86/process: Check PF_KTHREAD and not current->mm for kernel threads (bsc#1152489). - commit f14058e- kernel-binary.spec: Remove obsolete and wrong comment mkmakefile is repleced by echo on newer kernel - commit d9209e7- ceph: must hold snap_rwsem when filling inode for async create (bsc#1187927). - commit 288e232- ibmvnic: Use strscpy() instead of strncpy() (bsc#1184114 ltc#192237). - ibmvnic: fix send_request_map incompatible argument (bsc#1184114 ltc#192237). - ibmvnic: fix kernel build warnings in build_hdr_descs_arr (bsc#1184114 ltc#192237). - ibmvnic: fix kernel build warning (bsc#1184114 ltc#192237). - ibmvnic: fix kernel build warning in strncpy (bsc#1184114 ltc#192237). - ibmvnic: Allow device probe if the device is not ready at boot (bsc#1184114 ltc#192237). - ibmvnic: Use list_for_each_entry() to simplify code in ibmvnic.c (bsc#1184114 ltc#192237). - commit 6f12df4- series.conf: cleanup - update upstream reference and resort: patches.suse/Revert-ibmvnic-simplify-reset_long_term_buff-functio.patch - commit dc51831- ibmvnic: account for bufs already saved in indir_buf (jsc#SLE-17268 jsc#SLE-17043 bsc#1179243 ltc#189290). - ibmvnic: clean pending indirect buffs during reset (jsc#SLE-17268 jsc#SLE-17043 bsc#1179243 ltc#189290). - commit 4925dab- fix patch metadata - fix upstream reference: patches.suse/bpfilter-Specify-the-log-level-for-the-kmsg-message.patch - commit 4e6fe72- ibmvnic: free tx_pool if tso_pool alloc fails (bsc#1085224 ltc#164363). - commit badd4e0- ibmvnic: parenthesize a check (bsc#1184114 ltc#192237 bsc#1183871 ltc#192139 git-fixes). - ibmvnic: set ltb->buff to NULL after freeing (bsc#1094840 ltc#167098). - Revert "ibmvnic: remove duplicate napi_schedule call in open function" (bsc#1065729). - commit e5fa23c- series.conf: cleanup - update upstream references and resort: patches.suse/0001-ipmi-watchdog-Stop-watchdog-timer-when-the-current-a.patch patches.suse/block-return-the-correct-bvec-when-checking-for-gaps.patch patches.suse/ibmvnic-remove-default-label-from-to_string-switch.patch patches.suse/xfrm-policy-Read-seqcount-outside-of-rcu-read-side-i.patch - commit fc2830a- bpfilter: Specify the log level for the kmsg message (bsc#1155518). - commit a6b5aff- Blacklisted SCSI ufs core patch: way out of context. - commit 33b89f4- FCOE: fcoe_wwn_from_mac kABI fix (bsc#1187886). - scsi: fcoe: Fix mismatched fcoe_wwn_from_mac declaration (bsc#1187886). - commit bf3226e- Blacklisted libsas new gfp variant patches - commit 7d45a44- scsi: core: Fix race between handling STS_RESOURCE and completion (bsc#1187883). - Refresh patches.suse/scsi_dh_alua-return-BLK_STS_AGAIN-for-ALUA-transitio.patch. - commit 1a66f28- Blacklisted scsi commit that should be skipped. - commit 6c0722b- kthread: prevent deadlock when kthread_mod_delayed_work() races with kthread_cancel_delayed_work_sync() (bsc#1187867). - commit 4323f85- kthread_worker: split code for canceling the delayed work timer (bsc#1187867). - commit f950430- dax: fix ENOMEM handling in grab_mapping_entry() (bsc#1184212). - commit fa16d18- Revert "ibmvnic: simplify reset_long_term_buff function" (bsc#1186206 ltc#191041). - commit ae5a395- SCSI: ufs: fix ktime_t kabi change (bsc#1187795). - scsi: ufs: Fix imprecise load calculation in devfreq window (bsc#1187795). - commit 51e8b33- Blacklisted commit already removed, to keep it away - commit 2ac8cfe- s390/stack: fix possible register corruption with stack switch helper (bsc#1185677). - commit d57c991- Revert "video: imsttfb: fix potential NULL pointer dereferences" (bsc#1152489) - commit cb44bac- kernel: kexec_file: fix error return code of kexec_calculate_store_digests() (git-fixes). - commit c886494- blacklist.conf: Add amdgpu entries that have been reverted (git-fixes) - commit 41610da- mmc: meson-gx: use memcpy_to/fromio for dram-access-quirk (git-fixes). - commit c1d2306- Removed patch that was incorrectly added to SLE15-SP2 (bsc#1186949) This patch was suggested as a git-fix for SLE15-SP2, but the commits it fixes are not present there. - commit fc1818c- bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path (jsc#SLE-8371 bsc#1153274). - bnxt_en: Fix TQM fastpath ring backing store computation (jsc#SLE-8371 bsc#1153274). - bnxt_en: Rediscover PHY capabilities after firmware reset (jsc#SLE-8371 bsc#1153274). - cxgb4: fix wrong shift (git-fixes). - be2net: Fix an error handling path in 'be_probe()' (git-fixes). - netxen_nic: Fix an error handling path in 'netxen_nic_probe()' (git-fixes). - qlcnic: Fix an error handling path in 'qlcnic_probe()' (git-fixes). - net/mlx5e: Block offload of outer header csum for UDP tunnels (git-fixes). - net/mlx5: Consider RoCE cap before init RDMA resources (git-fixes). - net/mlx5e: Fix page reclaim for dead peer hairpin (git-fixes). - net/mlx5e: Remove dependency in IPsec initialization flows (git-fixes). - ice: add ndo_bpf callback for safe mode netdev ops (jsc#SLE-7926). - net/sched: act_ct: handle DNAT tuple collision (bsc#1154353). - vrf: fix maximum MTU (git-fixes). - net/mlx5: Fix PBMC register mapping (git-fixes). - net/mlx5: Fix placement of log_max_flow_counter (git-fixes). - net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa (git-fixes). - commit 060a647- PCI: aardvark: Fix kernel panic during PIO transfer (git-fixes). - commit ce71c77- PCI: aardvark: Don't rely on jiffies while holding spinlock (git-fixes). - commit 1bd7ff7- spi: spi-nxp-fspi: move the register operation after the clock enable (git-fixes). - Revert "PCI: PM: Do not read power state in pci_enable_device_flags()" (git-fixes). - PCI: Add ACS quirk for Broadcom BCM57414 NIC (git-fixes). - radeon: use memcpy_to/fromio for UVD fw upload (git-fixes). - spi: stm32-qspi: Always wait BUSY bit to be cleared in stm32_qspi_wait_cmd() (git-fixes). - regulator: bd70528: Fix off-by-one for buck123 .n_voltages setting (git-fixes). - commit 8ac9ce3- cfg80211: make certificate generation more robust (git-fixes). - PCI: Work around Huawei Intelligent NIC VF FLR erratum (git-fixes). - PCI: Mark some NVIDIA GPUs to avoid bus reset (git-fixes). - PCI: Mark TI C667X to avoid bus reset (git-fixes). - ASoC: rt5659: Fix the lost powers for the HDA header (git-fixes). - hwmon: (scpi-hwmon) shows the negative temperature properly (git-fixes). - commit ed194e5- fix patches metadata - fix Patch-mainline: patches.suse/NFS-Fix-a-potential-NULL-dereference-in-nfs_get_clie.patch patches.suse/NFS-Fix-use-after-free-in-nfs4_init_client.patch patches.suse/NFSv4-Fix-deadlock-between-nfs4_evict_inode-and-nfs4.patch patches.suse/SUNRPC-Handle-major-timeout-in-xprt_adjust_timeout.patch - commit e5e0666- series.conf: cleanup - update upstream reference and resort: patches.suse/xfrm-policy-Read-seqcount-outside-of-rcu-read-side-i.patch - commit cafffbc- video: hgafb: correctly handle card detect failure during probe (git-fixes). - commit 55f7ec7- Bluetooth: use correct lock to prevent UAF of hdev object (git-fixes). - video: hgafb: fix potential NULL pointer dereference (git-fixes). - Revert "video: hgafb: fix potential NULL pointer dereference" (git-fixes). - commit 83627e7- module: limit enabling module.sig_enforce (git-fixes). - commit 7f30f5d- Bluetooth: use correct lock to prevent UAF of hdev object (bsc#1186666 CVE-2021-3573). - commit 6781ea8- blacklist.conf: Add unwanted commits - commit 1da6dbc- NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode() (git-fixes). - NFS: Fix a potential NULL dereference in nfs_get_client() (git-fixes). - NFS: Fix use-after-free in nfs4_init_client() (git-fixes). - commit 3478e99- blk-mq: Rerun dispatching in the case of budget contention (bsc#1180092). - blk-mq: Add blk_mq_delay_run_hw_queues() API call (bsc#1180092). - blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick (bsc#1180092). - commit e31a7fc- blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget (bsc#1180092). - commit ccd1ac3- blk-mq: insert flush request to the front of dispatch queue (bsc#1180092). - commit acc744b- blk-mq: insert passthrough request into hctx->dispatch directly (bsc#1180092). - Refresh patches.suse/blk-mq-call-commit_rqs-while-list-empty-but-error-ha.patch. - Refresh patches.suse/blk-mq-insert-request-not-through-queue_rq-into-sw-s.patch. - commit 4ba4b0f- lib: vdso: Remove CROSS_COMPILE_COMPAT_VDSO (bsc#1164648,jsc#SLE-11493). Reduce delta to mainline Refresh patches.suse/lib-vdso-Prepare-for-time-namespace-support.patch. - commit 7b06299- Update patch reference for net keys fix (CVE-2021-0605 bsc#1187601) - commit 7bb3e99- Update patch reference for HID security fix (CVE-2021-0512 bsc#1187595) - commit 0506954- bpf: Fix leakage under speculation on mispredicted branches (bsc#1187554,CVE-2021-33624). - commit 7949a37- patches.suse/0001-x86-sched-Treat-Intel-SNC-topology-as-default-COD-as.patch: (bsc#1187263). - commit 349dc99- tracing: Do no increment trace_clock_global() by one (git-fixes). - commit 17da93e- tracing: Do not stop recording comms if the trace file is being read (git-fixes). - commit 7d357b1- tracing: Do not stop recording cmdlines when tracing is off (git-fixes). - commit 3306bfd- HID: usbhid: Fix race between usbhid_close() and usbhid_stop() (git-fixes). - commit c5019d9- dt-bindings: reset: meson8b: fix duplicate reset IDs (git-fixes). - commit cfc2db2- usb: dwc3: core: fix kernel panic when do reboot (git-fixes). - commit 35719e0- usb: dwc3: core: fix kernel panic when do reboot (git-fixes). - commit 9306e13- SUNRPC: Handle major timeout in xprt_adjust_timeout() (git-fixes). - commit 87fe1f5- series.conf: cleanup - update upstream references and move into sorted section: patches.suse/xfrm-policy-Read-seqcount-outside-of-rcu-read-side-i.patch - commit 3bedaae- usb: core: hub: Disable autosuspend for Cypress CY7C65632 (git-fixes). - net/x25: Return the correct errno code (git-fixes). - HID: gt683r: add missing MODULE_DEVICE_TABLE (git-fixes). - HID: usbhid: fix info leak in hid_submit_ctrl (git-fixes). - HID: Add BUS_VIRTUAL to hid_connect logging (git-fixes). - commit be65fa1- cfg80211: avoid double free of PMSR request (git-fixes). - can: mcba_usb: fix memory leak in mcba_usb (git-fixes). - alx: Fix an error handling path in 'alx_probe()' (git-fixes). - batman-adv: Avoid WARN_ON timing related checks (git-fixes). - drm/tegra: sor: Do not leak runtime PM reference (git-fixes). - drm/amd/display: Allow bandwidth validation for 0 streams (git-fixes). - HID: hid-sensor-hub: Return error for hid_set_field() failure (git-fixes). - HID: hid-input: add mapping for emoji picker key (git-fixes). - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65 (git-fixes). - commit c7889a3- can: bcm: fix infoleak in struct bcm_msg_head (CVE-2021-34693 bsc#1187452). - commit 02583ee- net: mvpp2: add mvpp2_phylink_to_port() helper (bsc#1187171). - commit 9bd57ed- blacklist.conf: the driver has not been converted to new error codes - commit 5e49259- UsrMerge the kernel (boo#1184804) - Move files in /boot to modules dir The file names in /boot are included as %ghost links. The %post script creates symlinks for the kernel, sysctl.conf and System.map in /boot for compatibility. Some tools require adjustments before we can drop those links. If boot is a separate partition, a copy is used instead of a link. The logic for /boot/vmlinuz and /boot/initrd doesn't change with this patch. - Use /usr/lib/modules as module dir when usermerge is active in the target distro. - commit 6f5ed04- usb: gadget: eem: fix wrong eem header operation (git-fixes). - commit 88ac26b- usb: fix various gadget panics on 10gbps cabling (git-fixes). - commit 43c2b75- usb: f_ncm: only first packet of aggregate needs to start timer (git-fixes). - commit 6960da4- usb: gadget: f_fs: Ensure io_completion_wq is idle during unbind (git-fixes). - commit 4b0a18c- USB: serial: ftdi_sio: add NovaTech OrionMX product ID (git-fixes). - commit a61b441- USB: serial: omninet: add device id for Zyxel Omni 56K Plus (git-fixes). - commit f1cf5e2- usb: dwc3: ep0: fix NULL pointer exception (git-fixes). - usb: gadget: eem: fix wrong eem header operation (git-fixes). - usb: fix various gadget panics on 10gbps cabling (git-fixes). - usb: f_ncm: only first packet of aggregate needs to start timer (git-fixes). - USB: serial: ftdi_sio: add NovaTech OrionMX product ID (git-fixes). - commit 6edf7f4- USB: serial: omninet: add device id for Zyxel Omni 56K Plus (git-fixes). - usb: gadget: f_fs: Ensure io_completion_wq is idle during unbind (git-fixes). - drm: Lock pointer access in drm_master_release() (git-fixes). - isdn: mISDN: netjet: Fix crash in nj_probe: (git-fixes). - net/nfc/rawsock.c: fix a permission check bug (git-fixes). - spi: sprd: Add missing MODULE_DEVICE_TABLE (git-fixes). - i2c: mpc: Make use of i2c_recover_bus() (git-fixes). - commit 623c00b- dmaengine: stedma40: add missing iounmap() on error in d40_probe() (git-fixes). - dmaengine: QCOM_HIDMA_MGMT depends on HAS_IOMEM (git-fixes). - dmaengine: ALTERA_MSGDMA depends on HAS_IOMEM (git-fixes). - dmaengine: pl330: fix wrong usage of spinlock flags in dma_cyclc (git-fixes). - drm: Fix use-after-free read in drm_getunique() (git-fixes). - ASoC: sti-sas: add missing MODULE_DEVICE_TABLE (git-fixes). - ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830 tablet (git-fixes). - ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L tablet (git-fixes). - ASoC: max98088: fix ni clock divider calculation (git-fixes). - commit 2b181d0- media: mtk-mdp: Fix a refcounting bug on error in init (git-fixes). - commit 1d82c71- media: mtk-mdp: Check return value of of_clk_get (git-fixes). - commit f37fbe9- media: s5p-g2d: Fix a memory leak in an error handling path in 'g2d_probe()' (git-fixes). - commit 08513d7- usb: dwc3: debugfs: Add and remove endpoint dirs dynamically (git-fixes). - commit 08559a5- dax: Add a wakeup mode parameter to put_unlocked_entry() (bsc#1187411). - commit 31da646- dax: Add an enum for specifying dax wakup mode (bsc#1187411). - commit 1d4c2a3- tracing: Correct the length check which causes memory corruption (git-fixes). - commit 0072a4b- tracing: Restructure trace_clock_global() to never block (git-fixes). - commit 6d6d42d- ftrace: Free the trampoline when ftrace_startup() fails (git-fixes). - commit 533e192- blacklist.conf: 75d3e7f4769d ("s390/test_unwind: fix possible memleak in test_unwind()") We build test_unwind kernel module out of tree. - commit abf9977- ftrace: Do not blindly read the ip address in ftrace_bug() (git-fixes). - commit 31cd567- Revert "ecryptfs: replace BUG_ON with error handling code" (bsc#1187413). - commit 7387ee5- ocfs2: fix data corruption by fallocate (bsc#1187412). - commit 684ec92- dax: Wake up all waiters after invalidating dax entry (bsc#1187411). - commit 42391aa- fs: fix reporting supported extra file attributes for statx() (bsc#1187410). - commit 36f6f1f- ext4: fix memory leak in ext4_fill_super (bsc#1187409). - commit d8152b1- ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed (bsc#1187408). - commit 41eb311- ext4: fix error code in ext4_commit_super (bsc#1187407). - commit 350d1b1- ext4: fix check to prevent false positive report of incorrect used inodes (bsc#1187404). - commit 57c9a0a- kyber: fix out of bounds access when preempted (bsc#1187403). - commit 491df1f- block: Discard page cache of zone reset target range (bsc#1187402). - commit 74c08d5- kernel-binary.spec.in: Regenerate makefile when not using mkmakefile. - commit 6b30fe5- xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype (bsc#1185675). - commit 96f285d- cifs: constify get_normalized_path() properly (bsc#1185902). - commit f4ccabe- cifs: don't cargo-cult strndup() (bsc#1185902). - commit 2296da2- Updated patch-mainline tags. Also moved the affected patches into the sorted section. Change in patch order moved devm_rpi_firmware_put but it aligns with mainline. - commit 000116c- fuse: BUG_ON correction in fuse_dev_splice_write() (bsc#1187356). - commit d2e5d40- sched/debug: Fix cgroup_path[] serialization (git-fixes) - commit 24c7edf- blacklist.conf: We don't support uclamp - commit 0b70e65- blacklist.conf: We have CONFIG_JUMP_LABEL - commit 093a643- series.conf: cleanup - update upstream references and move into sorted section: patches.suse/mac80211-add-fragment-cache-to-sta_info.patch patches.suse/mac80211-assure-all-fragments-are-encrypted.patch patches.suse/mac80211-check-defrag-PN-against-current-frame.patch patches.suse/mac80211-do-not-accept-forward-invalid-EAPOL-frames.patch patches.suse/mac80211-drop-A-MSDUs-on-old-ciphers.patch patches.suse/mac80211-extend-protection-against-mixed-key-and-fra.patch patches.suse/mac80211-prevent-attacks-on-TKIP-WEP-as-well.patch patches.suse/mac80211-prevent-mixed-key-and-fragment-cache-attack.patch patches.suse/mac80211-properly-handle-A-MSDUs-that-start-with-an-.patch No effect on expanded tree. - commit 9fdca2b- series.conf: cleanup Move a SUSE specific patch ("Patch-mainline: Never...") to corresponding per-subsystem section. - commit 811dc9a- fix patch metadata - fix Patch-mainline: patches.suse/RDMA-ucma-Rework-ucma_migrate_id-to-avoid-races-with.patch - commit c80eef0- series.conf: cleanup Move a queued patch to "almost mainline" section. - commit a847492- blacklist: add commit 4f06dd92b5d0 ("fuse: fix write deadlock") This is an ancient bug (from v2.6.26) which require extra backports. Not worth the risk introducing new regressions. - commit f0ede60- rpm/kernel-binary.spec.in: Fix handling of +arch marker (bsc#1186672) The previous commit made a module wrongly into Module.optional. Although it didn't influence on the end result, better to fix it. Also, add a comment to explain the markers briefly. - commit 8f79742- block: return the correct bvec when checking for gaps (bsc#1187144). - commit 22678f9- Update patches.suse/scsi-qla2xxx-Reserve-extra-IRQ-vectors.patch (bsc#1184436 bsc#1186286). - commit 3b95648- sched/fair: Make sure to update tg contrib for blocked load (git-fixes) - commit 9eeb58b- sched/fair: Keep load_avg and load_sum synced (git-fixes) - commit 8888330- USB: serial: cp210x: fix alternate function for CP2102N QFN20 (git-fixes). - usb: typec: mux: Fix copy-paste mistake in typec_mux_match (git-fixes). - usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path (git-fixes). - usb: typec: wcove: Use LE to CPU conversion when accessing msg->header (git-fixes). - usb: fix various gadgets null ptr deref on 10gbps cabling (git-fixes). - USB: f_ncm: ncm_bitrate (speed) is unsigned (git-fixes). - USB: serial: quatech2: fix control-request directions (git-fixes). - usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms (git-fixes). - usb: musb: fix MUSB_QUIRK_B_DISCONNECT_99 handling (git-fixes). - staging: rtl8723bs: Fix uninitialized variables (git-fixes). - commit b524f7e- Add arch-dependent support markers in supported.conf (bsc#1186672) We may need to put some modules as supported only on specific archs. This extends the supported.conf syntax to allow to put +arch additionally after the unsupported marker, then it'll be conditionally supported on that arch. - commit 8cbdb41- Create Symbols.list and ipa-clones.list determistically without this patch, filesystem readdir order would influence order of entries in these files. This patch was done while working on reproducible builds for SLE. - commit a898b6d- RDMA/ucma: Rework ucma_migrate_id() to avoid races with destroy (bsc#1187050, CVE-2020-36385) - commit d630126- Update patches.suse/Bluetooth-SMP-Fail-if-remote-and-local-public-keys-a.patch (bsc#1186463 CVE-2021-0129 CVE-2020-26558). - commit 3b40194- Bluetooth: fix the erroneous flush_work() order (git-fixes). - ALSA: timer: Fix master timer notification (git-fixes). - ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx (git-fixes). - drm/amdgpu: make sure we unpin the UVD BO (git-fixes). - vfio/platform: fix module_put call in error flow (git-fixes). - vfio/pci: zap_vma_ptes() needs MMU (git-fixes). - vfio/pci: Fix error return code in vfio_ecap_init() (git-fixes). - HID: multitouch: require Finger field to mark Win8 reports as MT (git-fixes). - commit 64bd478- scsi: scsi_dh_alua: Retry RTPG on a different path after failure (bsc#1174978 bsc#1185701). - commit 36cc9f2- kernel-binary.spec.in: Add Supplements: for -extra package on Leap kernel-$flavor-extra should supplement kernel-$flavor on Leap, like it does on SLED, and like the kernel-$flavor-optional package does. - commit c60d87f- perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3 (bsc#1184685). - commit 1c4876a- block: return the correct bvec when checking for gaps (bsc#1187143). - commit 1a99a11- series: Resort and update metadata Resort series.conf and update meta data: patches.suse/scsi-lpfc-Add-a-option-to-enable-interlocked-ABTS-be.patch patches.suse/scsi-lpfc-Add-ndlp-kref-accounting-for-resume-RPI-pa.patch patches.suse/scsi-lpfc-Fix-Node-recovery-when-driver-is-handling-.patch patches.suse/scsi-lpfc-Fix-Unexpected-timeout-error-in-direct-att.patch patches.suse/scsi-lpfc-Fix-crash-when-lpfc_sli4_hba_setup-fails-t.patch patches.suse/scsi-lpfc-Fix-node-handling-for-Fabric-Controller-an.patch patches.suse/scsi-lpfc-Fix-non-optimized-ERSP-handling.patch patches.suse/scsi-lpfc-Fix-unreleased-RPIs-when-NPIV-ports-are-cr.patch patches.suse/scsi-lpfc-Ignore-GID-FT-response-that-may-be-receive.patch patches.suse/scsi-lpfc-Reregister-FPIN-types-if-ELS_RDF-is-receiv.patch patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.10.patch - commit f894385- btrfs: track ordered bytes instead of just dio ordered bytes (bsc#1135481). - commit 9c3cf71- btrfs: account for new extents being deleted in total_bytes_pinned (bsc#1135481). - commit fed2922- btrfs: handle space_info::total_bytes_pinned inside the delayed ref itself (bsc#1135481). - commit 5426822- btrfs: shrink delalloc pages instead of full inodes (bsc#1135481). - commit 5e89cd2- btrfs: fix possible infinite loop in data async reclaim (bsc#1135481). - commit f95f181- btrfs: add a comment explaining the data flush steps (bsc#1135481). - commit a308556- btrfs: do async reclaim for data reservations (bsc#1135481). - commit deae828- btrfs: flush delayed refs when trying to reserve data space (bsc#1135481). - commit d82c207- btrfs: run delayed iputs before committing the transaction for data (bsc#1135481). - commit 6af13e4- btrfs: don't force commit if we are data (bsc#1135481). - commit 3380b09- btrfs: drop the commit_cycles stuff for data reservations (bsc#1135481). - commit c6ed5f3- btrfs: use the same helper for data and metadata reservations (bsc#1135481). - commit 188e042- btrfs: serialize data reservations if we are flushing (bsc#1135481). - commit 9a68295- btrfs: use ticketing for data space reservations (bsc#1135481). - commit 0cad012- btrfs: add btrfs_reserve_data_bytes and use it (bsc#1135481). - commit 7c494a4- btrfs: add the data transaction commit logic into may_commit_transaction (bsc#1135481). - commit 9327930- btrfs: add flushing states for handling data reservations (bsc#1135481). - commit ee0a32c- btrfs: check tickets after waiting on ordered extents (bsc#1135481). - commit e9723f6- btrfs: use btrfs_start_delalloc_roots in shrink_delalloc (bsc#1135481). - commit 08a821e- btrfs: use the btrfs_space_info_free_bytes_may_use helper for delalloc (bsc#1135481). - commit e18060c- btrfs: call btrfs_try_granting_tickets when reserving space (bsc#1135481). - commit e684a31- btrfs: call btrfs_try_granting_tickets when unpinning anything (bsc#1135481). - commit df0d484- btrfs: call btrfs_try_granting_tickets when freeing reserved bytes (bsc#1135481). - commit 4167827- btrfs: make ALLOC_CHUNK use the space info flags (bsc#1135481). - commit 6287797- btrfs: make shrink_delalloc take space_info as an arg (bsc#1135481). - commit 1eb212c- btrfs: handle U64_MAX for shrink_delalloc (bsc#1135481). - commit acedfaf- btrfs: remove orig from shrink_delalloc (bsc#1135481). - commit 02659bb- btrfs: change nr to u64 in btrfs_start_delalloc_roots (bsc#1135481). - commit 5b57ee8- cxgb4: avoid link re-train during TC-MQPRIO configuration (jsc#SLE-8389). - ice: Allow all LLDP packets from PF to Tx (jsc#SLE-7926). - ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared (git-fixes). - net/mlx5: DR, Create multi-destination flow table with level less than 64 (jsc#SLE-8464). - ixgbe: fix large MTU request from VF (git-fixes). - cxgb4: avoid accessing registers when clearing filters (git-fixes). - net/mlx5e: Fix multipath lag activation (git-fixes). - net/mlx5e: Fix nullptr in add_vlan_push_action() (git-fixes). - net: hns3: put off calling register_netdev() until client initialize complete (bsc#1154353). - gve: Correct SKB queue index validation (git-fixes). - gve: Upgrade memory barrier in poll routine (git-fixes). - gve: Add NULL pointer checks when freeing irqs (git-fixes). - gve: Update mgmt_msix_idx if num_ntfy changes (git-fixes). - net: bnx2: Fix error return code in bnx2_init_board() (git-fixes). - net/mlx4: Fix EEPROM dump support (git-fixes). - Revert "net: liquidio: fix a NULL pointer dereference" (git-fixes). - Revert "qlcnic: Avoid potential NULL pointer dereference" (git-fixes). - net: hns3: Limiting the scope of vector_ring_chain variable (git-fixes). - commit 4451268- btrfs: open device without device_list_mutex (bsc#1176771). - commit c922550- vmlinux.lds.h: Avoid orphan section with !SMP (git-fixes). - commit 50e12e5- regulator: max77620: Use device_set_of_node_from_dev() (git-fixes). - regulator: core: resolve supply for boot-on/always-on regulators (git-fixes). - commit a6466ca- scsi: libsas: Reset num_scatter if libata marks qc as NODATA (bsc#1187068). - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" (bsc#1187067). - scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN (bsc#1187069). - scsi: aacraid: Fix an oops in error handling (bsc#1187072). - commit a34cc53- Update patch reference for a BT fix (CVE-2020-36386 bsc#1187038) - commit 673eac4- locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal (git-fixes). - commit 12081a6- scsi: ufs: core: Narrow down fast path in system suspend path (bsc#1186996). - scsi: sni_53c710: Add IRQ check (bsc#1186990). - scsi: sun3x_esp: Add IRQ check (bsc#1186991). - scsi: jazz_esp: Add IRQ check (bsc#1186965). - scsi: hisi_sas: Fix IRQ checks (bsc#1186963). - scsi: ufs: ufshcd-pltfrm: Fix deferred probing (bsc#1187003). - scsi: mpt3sas: Fix error return code of mpt3sas_base_attach() (bsc#1186978). - scsi: qedi: Fix error return code of qedi_alloc_global_queues() (bsc#1186984). - scsi: mpt3sas: Do not use GFP_KERNEL in atomic context (bsc#1186977). - scsi: myrs: Fix a double free in myrs_cleanup() (bsc#1186980). - scsi: sd: Fix Opal support (bsc#1186989). - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors (bsc#1186955). - scsi: lpfc: Fix ancient double free (bsc#1186969). - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression (bsc#1186973). - scsi: cxgb4i: Fix TLS dependency (bsc#1186960). - scsi: fnic: Fix error return code in fnic_probe() (bsc#1186962). - scsi: pm80xx: Fix error return in pm8001_pci_probe() (bsc#1186981). - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe (bsc#1186985). - scsi: qla4xxx: Remove in_interrupt() (bsc#1186987). - scsi: hisi_sas: Remove preemptible() (bsc#1186964). - scsi: megaraid_sas: Check user-provided offsets (bsc#1186970). - scsi: libfc: Fix enum-conversion warning (bsc#1186966). - scsi: bnx2i: Requires MMU (bsc#1186956). - scsi: mpt3sas: Fix ioctl timeout (bsc#1186979). - scsi: ufs: Fix race between shutdown and runtime resume flow (bsc#1186998). - scsi: bfa: Fix error return in bfad_pci_init() (bsc#1186954). - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() (bsc#1186953). - scsi: aacraid: Remove erroneous fallthrough annotation (bsc#1186950). - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() (bsc#1186957). - scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()' (bsc#1186986). - scsi: ufs: Properly release resources if a task is aborted successfully (bsc#1187001). - scsi: libsas: Fix error path in sas_notify_lldd_dev_found() (bsc#1186967). - scsi: megaraid_sas: Don't call disable_irq from process IRQ poll (bsc#1186972). - scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA (bsc#1186968). - scsi: mesh: Fix panic after host or bus reset (bsc#1186976). - scsi: megaraid_sas: Clear affinity hint (bsc#1186971). - scsi: scsi_debug: Add check for sdebug_max_queue during module init (bsc#1186988). - scsi: eesox: Fix different dev_id between request_irq() and free_irq() (bsc#1186961). - scsi: powertec: Fix different dev_id between request_irq() and free_irq() (bsc#1186982). - scsi: cumana_2: Fix different dev_id between request_irq() and free_irq() (bsc#1186958). - scsi: ufs: Add quirk to fix abnormal ocs fatal error (bsc#1186994). - scsi: ufs: Introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk (bsc#1187000). - scsi: ufs: Add quirk to enable host controller without hce (bsc#1186993). - scsi: ufs: Add quirk to disallow reset of interrupt aggregation (bsc#1186992). - scsi: ufs: Add quirk to fix mishandling utrlclr/utmrlclr (bsc#1186995). - scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro (bsc#1186974). - scsi: acornscsi: Fix an error handling path in acornscsi_probe() (bsc#1186952). - scsi: ufs: Don't update urgent bkops level when toggling auto bkops (bsc#1186997). - scsi: cxgb3i: Fix some leaks in init_act_open() (bsc#1186959). - scsi: ufs-qcom: Fix scheduling while atomic issue (bsc#1187002). - scsi: aacraid: Use memdup_user() as a cleanup (bsc#1186951). - scsi: qedi: Check for buffer overflow in qedi_set_path() (bsc#1186983). - Revert "scsi: core: run queue if SCSI device queue isn't ready and queue is idle" (bsc#1186949). - scsi: ufshcd: use an enum for quirks (bsc#1186999). - commit 063da01- scsi: lpfc: Fix failure to transmit ABTS on FC link (git-fixes). - scsi: qla2xxx: Prevent PRLI in target mode (git-fixes). - commit df14b8a- blacklist: Add not necessary git-fixes - commit 203b357- wireguard: allowedips: initialize list head in selftest (git-fixes). - wireguard: peer: allocate in kmem_cache (git-fixes). - wireguard: use synchronize_net rather than synchronize_rcu (git-fixes). - wireguard: do not use -O3 (git-fixes). - wireguard: selftests: make sure rp_filter is disabled on vethc (git-fixes). - wireguard: selftests: remove old conntrack kconfig value (git-fixes). - wireguard: queueing: get rid of per-peer ring buffers (git-fixes). - wireguard: peer: put frequently used members above cache lines (git-fixes). - commit f17f786- pid: take a reference when initializing `cad_pid` (bsc#1152489). - commit 7fbca02- x86/apic: Mark _all_ legacy interrupts when IO/APIC is missing (bsc#1152489). - commit 76a898b- NFC: SUSE specific brutal fix for runtime PM (bsc#1185589). - commit c32c592- x86/fault: Don't send SIGSEGV twice on SEGV_PKUERR (bsc#1152489). - commit e986350- config: refresh - drop PCIE_BW (removed by a backported patch) - commit 8a54d2d- fix patches metadata - fix Patch-mainline: patches.suse/NFS-Deal-correctly-with-attribute-generation-counter.patch patches.suse/NFS-Don-t-corrupt-the-value-of-pg_bytes_written-in-n.patch patches.suse/NFS-Don-t-discard-pNFS-layout-segments-that-are-mark.patch patches.suse/NFS-Don-t-gratuitously-clear-the-inode-cache-when-lo.patch patches.suse/NFS-Don-t-revalidate-the-directory-permissions-on-a-.patch patches.suse/NFS-Fix-an-Oopsable-condition-in-__nfs_pageio_add_re.patch patches.suse/NFS-fix-an-incorrect-limit-in-filelayout_decode_layo.patch patches.suse/NFSD-Repair-misuse-of-sv_lock-in-5.10.16-rt30.patch patches.suse/NFSv4-Don-t-discard-segments-marked-for-return-in-_p.patch patches.suse/NFSv4-Fix-a-NULL-pointer-dereference-in-pnfs_mark_ma.patch patches.suse/NFSv4-Fix-v4.0-v4.1-SEEK_DATA-return-ENOTSUPP-when-s.patch patches.suse/NFSv4.2-Always-flush-out-writes-in-nfs42_proc_falloc.patch patches.suse/NFSv4.2-fix-handling-of-sr_eof-in-SEEK-s-reply.patch patches.suse/NFSv4.2-fix-return-value-of-_nfs4_get_security_label.patch patches.suse/NFSv42-Copy-offload-should-update-the-file-size-when.patch patches.suse/SUNRPC-Move-fault-injection-call-sites.patch patches.suse/SUNRPC-Set-memalloc_nofs_save-for-sync-tasks.patch patches.suse/fs-nfs-Use-fatal_signal_pending-instead-of-signal_pe.patch patches.suse/md-Fix-missing-unused-status-line-of-proc-mdstat.patch patches.suse/nfsd-register-pernet-ops-last-unregister-first.patch patches.suse/pNFS-NFSv4-Fix-a-layout-segment-leak-in-pnfs_layout_.patch patches.suse/pNFS-flexfiles-fix-incorrect-size-check-in-decode_nf.patch patches.suse/sunrpc-fix-refcount-leak-for-rpc-auth-modules.patch patches.suse/svcrdma-disable-timeouts-on-rdma-backchannel.patch patches.suse/x86-fix-seq_file-iteration-for-pat-memtype.c.patch patches.suse/xprtrdma-Avoid-Receive-Queue-wrapping.patch patches.suse/xprtrdma-rpcrdma_mr_pop-already-does-list_del_init.patch - commit 08c81db- fix patch metadata - fix Patch-mainline: patches.suse/pm-sleep-add-pm_debug_messages-kernel-command-line-option.patch - commit 9d4ad2b- kABI workaround for struct lis3lv02d change (git-fixes). - commit b20df4c- bus: ti-sysc: Fix flakey idling of uarts and stop using swsup_sidle_act (git-fixes). - i2c: qcom-geni: Suspend and resume the bus during SYSTEM_SLEEP_PM ops (git-fixes). - nfc: fix NULL ptr dereference in llcp_sock_getname() after failed connect (git-fixes). - ALSA: hda/cirrus: Set Initial DMIC volume to -26 dB (git-fixes). - commit 957e0af- thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID (git-fixes). - serial: rp2: use 'request_firmware' instead of 'request_firmware_nowait' (git-fixes). - USB: serial: pl2303: add device id for ADLINK ND-6530 GC (git-fixes). - USB: serial: ti_usb_3410_5052: add startech.com device id (git-fixes). - USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 (git-fixes). - USB: serial: ftdi_sio: add IDs for IDS GmbH Products (git-fixes). - USB: usbfs: Don't WARN about excessively large memory allocations (git-fixes). - serial: max310x: unregister uart driver in case of failure and abort (git-fixes). - Revert "serial: max310x: pass return value of spi_register_driver" (git-fixes). - usb: core: reduce power-on-good delay time of root hub (git-fixes). - commit 5cd70a0- mei: request autosuspend after sending rx flow control (git-fixes). - platform/x86: touchscreen_dmi: Add info for the Mediacom Winpad 7.0 W700 tablet (git-fixes). - platform/x86: intel_punit_ipc: Append MODULE_DEVICE_TABLE for ACPI (git-fixes). - platform/x86: hp-wireless: add AMD's hardware id to the supported list (git-fixes). - platform/x86: hp_accel: Avoid invoking _INI to speed up resume (git-fixes). - media: gspca: properly check for errors in po1030_probe() (git-fixes). - Revert "media: gspca: Check the return value of write_bridge for timeout" (git-fixes). - media: gspca: mt9m111: Check write_bridge for timeout (git-fixes). - Revert "media: gspca: mt9m111: Check write_bridge for timeout" (git-fixes). - media: dvb: Add check on sp8870_readreg return (git-fixes). - commit c7b5e47- gpio: cadence: Add missing MODULE_DEVICE_TABLE (git-fixes). - Revert "media: dvb: Add check on sp8870_readreg" (git-fixes). - libertas: register sysfs groups properly (git-fixes). - Revert "libertas: add checks for the return value of sysfs_create_group" (git-fixes). - isdn: mISDN: correctly handle ph_info allocation failure in hfcsusb_ph_info (git-fixes). - Revert "isdn: mISDN: Fix potential NULL pointer dereference of kzalloc" (git-fixes). - isdn: mISDNinfineon: check/cleanup ioremap failure correctly in setup_io (git-fixes). - Revert "isdn: mISDNinfineon: fix potential NULL pointer dereference" (git-fixes). - Revert "media: usb: gspca: add a missed check for goto_low_power" (git-fixes). - commit 337d971- cfg80211: mitigate A-MSDU aggregation attacks (CVE-2020-24588 bsc#1185861). - drm/amd/amdgpu: fix a potential deadlock in gpu reset (git-fixes). - drm/amdgpu: Fix a use-after-free (git-fixes). - drm/amd/amdgpu: fix refcount leak (git-fixes). - drm/amd/display: Disconnect non-DP with no EDID (git-fixes). - dmaengine: qcom_hidma: comment platform_driver_register call (git-fixes). - Revert "dmaengine: qcom_hidma: Check for driver register failure" (git-fixes). - char: hpet: add checks after calling ioremap (git-fixes). - Revert "char: hpet: fix a missing check of ioremap" (git-fixes). - commit 17141be- efi: cper: fix snprintf() use in cper_dimm_err_location() (git-fixes). - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared (git-fixes). - ACPICA: Clean up context mutex during object deletion (git-fixes). - hwmon: (dell-smm-hwmon) Fix index values (git-fixes). - brcmfmac: properly check for bus register errors (git-fixes). - Revert "brcmfmac: add a check for the status of usb_register" (git-fixes). - ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd() (git-fixes). - Revert "ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()" (git-fixes). - commit d3cc1eb- Revert "char: hpet: fix a missing check of ioremap" (git-fixes). - ttyprintk: Add TTY hangup callback (git-fixes). - commit dac98b4- kernel-binary.spec.in: build-id check requires elfutils. - commit 01569b3- NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return() (git-fixes). - commit 33829e2- NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config (git-fixes). - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce() (git-fixes). - NFS: Fix an Oopsable condition in __nfs_pageio_add_request() (git-fixes). - NFS: fix an incorrect limit in filelayout_decode_layout() (git-fixes). - fs/nfs: Use fatal_signal_pending instead of signal_pending (git-fixes). - xprtrdma: rpcrdma_mr_pop() already does list_del_init() (git-fixes). - xprtrdma: Avoid Receive Queue wrapping (git-fixes). - NFSv4: Don't discard segments marked for return in _pnfs_return_layout() (git-fixes). - NFS: Don't discard pNFS layout segments that are marked for return (git-fixes). - NFSv42: Copy offload should update the file size when appropriate (git-fixes). - SUNRPC: Move fault injection call sites (git-fixes). - NFSv4.2 fix handling of sr_eof in SEEK's reply (git-fixes). - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh() (git-fixes). - NFS: Deal correctly with attribute generation counter overflow (git-fixes). - NFSv4.2: Always flush out writes in nfs42_proc_fallocate() (git-fixes). - md: Fix missing unused status line of /proc/mdstat (git-fixes). - sunrpc: fix refcount leak for rpc auth modules (git-fixes). - NFSD: Repair misuse of sv_lock in 5.10.16-rt30 (git-fixes). - svcrdma: disable timeouts on rdma backchannel (git-fixes). - NFSv4.2: fix return value of _nfs4_get_security_label() (git-fixes). - NFS: Don't gratuitously clear the inode cache when lookup failed (git-fixes). - NFS: Don't revalidate the directory permissions on a lookup failure (git-fixes). - SUNRPC: Set memalloc_nofs_save() for sync tasks (git-fixes). - x86: fix seq_file iteration for pat.c (git-fixes). - nfsd: register pernet ops last, unregister first (git-fixes). - net: fix iteration for sctp transport seq_files (git-fixes). - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() (git-fixes). - commit 60296fb- kernel-binary.spec: Only use mkmakefile when it exists Linux 5.13 no longer has a mkmakefile script - commit b453c7b- PM: sleep: Add pm_debug_messages kernel command line option (bsc#1186752). - commit 735920b- media: dvb: Add check on sp8870_readreg return (git-fixes). - commit 2133cbd- blacklist.conf: cosmetic fix - commit ce72d5a- media: gspca: properly check for errors in po1030_probe() (git-fixes). - commit 1750a2e- Revert "media: gspca: Check the return value of write_bridge for timeout" (git-fixes). - commit b97e22b- media: gspca: mt9m111: Check write_bridge for timeout (git-fixes). - commit 7f3a7f1- Revert "media: gspca: mt9m111: Check write_bridge for timeout" (git-fixes). - commit d087481- blacklist.conf: depends on PD 3.0 which we don't have and cannot be backported - commit a396f2f- Update kabi files. - update from June 2021 maitenance update submission (commit f0fe006fa3e1) - commit 3b5c05b- HID: magicmouse: fix NULL-deref on disconnect (git-fixes). - HID: i2c-hid: fix format string mismatch (git-fixes). - HID: pidff: fix error return code in hid_pidff_init() (git-fixes). - HID: i2c-hid: Skip ELAN power-on command after reset (git-fixes). - tpm: fix error return code in tpm2_get_cc_attrs_tbl() (git-fixes). - vsock/vmci: log once the failed queue pair allocation (git-fixes). - commit e5695e4- Revert "media: dvb: Add check on sp8870_readreg" (git-fixes). - commit 3655f21- usb: typec: tcpm: Use LE to CPU conversion when accessing msg->header (git-fixes). - commit f61bf4c- xen-pciback: redo VF placement in the virtual topology (git-fixes). - commit 323098d- usb: typec: mux: Fix matching with typec_altmode_desc (git-fixes). - commit 2c2aed2- Fix patches.suse/nvme-multipath-reset-bdev-to-ns-head-when-failover.patch (bsc#1186681) The backport for bsc#1182999 bsc#1178378 introduced a bug. It's not possible to use bdget_disk() in nvme_failover_req() as this can run in IRQ context and bdget_disk() can sleep. Luckily, we don't need to set bdev via bio_set_dev() as we can set bi_disk directly. Refresh: - patches.suse/nvme-multipath-retry-commands-for-dying-queues.patch - commit f0fe006- series.conf: cleanup - move unsortable patch out of sorted section patches.suse/nxp-nci-add-NXP1002-id.patch - commit d0ca1ba- Refresh patches.suse/scsi-ibmvfc-Reinit-target-retries.patch. Update patch metadata. - commit e269098- nxp-i2c: restore includes for kABI (bsc#1185589). - commit 1786af1- nxp-nci: add NXP1002 id (bsc#1185589). - commit 9d43526- block/genhd: use atomic_t for disk_event->block (bsc#1185497). - commit 57427b3- x86/cpu: Initialize MSR_TSC_AUX if RDTSCP *or* RDPID is supported (bsc#1152489). - commit 1931741- xen-pciback: reconfigure also from backend watch handler (git-fixes). - commit 5795686- xen-blkback: fix compatibility bug with single page rings (git-fixes). - commit c1a440a- xen/evtchn: Change irq_info lock to raw_spinlock_t (git-fixes). - commit 085f359- series.conf: cleanup update upstream references and resort: patches.suse/ipc-mqueue-msg-sem-Avoid-relying-on-a-stack-reference.patch - commit a8331c9- nvme: fix deadlock in disconnect during scan_work and/or ana_work (git-fixes). - Refresh patches.suse/nvme-fabrics-reject-I-O-to-offline-device.patch. - commit 4805fdc- arm64: vdso32: make vdso32 install conditional (git-fixes). - commit de92552- blacklist.conf: arm64: add fix for unsupported SOC - commit 7c4e5f6- nvme: document nvme controller states (git-fixes). - commit 495f482- nvme-pci: use simple suspend when a HMB is enabled (git-fixes). - nvme-pci: make sure write/poll_queues less or equal then cpu (git-fixes). - nvme-pci: align io queue count with allocted nvme_queue in (git-fixes). - nvme-pci: remove last_sq_tail (git-fixes). - nvme-pci: remove volatile cqes (git-fixes). - nvme-pci: avoid race between nvme_reap_pending_cqes() and nvme_poll() (git-fixes). - nvme-pci: dma read memory barrier for completions (git-fixes). - nvme-pci: fix "slimmer CQ head update" (git-fixes). - nvme-pci: Simplify nvme_poll_irqdisable (git-fixes). - nvme-pci: Remove two-pass completions (git-fixes). - nvme-pci: Remove tag from process cq (git-fixes). - nvme-pci: slimmer CQ head update (git-fixes). - commit dd74a78- i2c: s3c2410: fix possible NULL pointer deref on read message after write (git-fixes). - i2c: i801: Don't generate an interrupt on bus reset (git-fixes). - i2c: sh_mobile: Use new clock calculation formulas for RZ/G2E (git-fixes). - iio: adc: ad7793: Add missing error code in ad7793_setup() (git-fixes). - iio: adc: ad7768-1: Fix too small buffer passed to iio_push_to_buffers_with_timestamp() (git-fixes). - iio: gyro: fxas21002c: balance runtime power in error path (git-fixes). - staging: iio: cdc: ad7746: avoid overwrite of num_channels (git-fixes). - iio: adc: ad7124: Fix potential overflow due to non sequential channel numbers (git-fixes). - iio: adc: ad7124: Fix missbalanced regulator enable / disable on error (git-fixes). - staging: emxx_udc: fix loop in _nbu2ss_nuke() (git-fixes). - serial: sh-sci: Fix off-by-one error in FIFO threshold register setting (git-fixes). - serial: core: fix suspicious security_locked_down() call (git-fixes). - serial: tegra: Fix a mask operation that is always true (git-fixes). - thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue (git-fixes). - usb: gadget: udc: renesas_usb3: Fix a race in usb3_start_pipen() (git-fixes). - USB: trancevibrator: fix control-request direction (git-fixes). - misc/uss720: fix memory leak in uss720_probe (git-fixes). - drm/meson: fix shutdown crash when component not probed (git-fixes). - net: usb: fix memory leak in smsc75xx_bind (git-fixes). - cdrom: gdrom: initialize global variable at init time (git-fixes). - cdrom: gdrom: deallocate struct gdrom_unit fields in remove_gdrom (git-fixes). - Revert "gdrom: fix a memory leak bug" (git-fixes). - usb: dwc3: gadget: Enable suspend events (git-fixes). - commit 62c76a6- blk-mq: Swap two calls in blk_mq_exit_queue() (git-fixes). - block: Fix three kernel-doc warnings (git-fixes). - commit e222970- SUNRPC: More fixes for backlog congestion (bsc#1185428). - commit c0de1ec- series.conf: cleanup - update upstream references and resort: patches.suse/nvme-fabrics-decode-host-pathing-error-for-connect.patch patches.suse/nvme-fc-short-circuit-reconnect-retries.patch - whitespace cleanup - commit 03158d3- series.conf: cleanup - fix Patch-mainline and move unsortable patches out of sorted section patches.suse/0001-netfilter-conntrack-improve-RST-handling-when-tuple-.patch patches.suse/0001-netfilter-conntrack-add-new-sysctl-to-disable-RST-ch.patch - commit 9d82526- ASoC: cs35l33: fix an error code in probe() (git-fixes). - ASoC: cs42l42: Regmap must use_single_read/write (git-fixes). - ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static (git-fixes). - commit 72126c6- ALSA: hda/realtek: Headphone volume is controlled by Front mixer (git-fixes). - ALSA: usb-audio: scarlett2: Improve driver startup messages (git-fixes). - ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci (git-fixes). - ALSA: usb-audio: fix control-request direction (git-fixes). - commit ad502bc- futex: Make syscall entry points less convoluted (git-fixes). - futex: Get rid of the val2 conditional dance (git-fixes). - futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI (bsc#1164648). - futex: Change utime parameter to be 'const ... *' (git-fixes). - commit c6c39e0- arm64: kdump: update ppos when reading elfcorehdr (git-fixes). - arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL (git-fixes). - arm64/mm: Fix pfn_valid() for ZONE_DEVICE based memory (git-fixes). - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) (git-fixes). - arm64: Add missing ISB after invalidating TLB in __primary_switch (git-fixes). - arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() fails (git-fixes). - arm64: link with -z norelro for LLD or aarch64-elf (git-fixes). - arm64: avoid -Woverride-init warning (git-fixes). - arm64: link with -z norelro regardless of CONFIG_RELOCATABLE (git-fixes). - Revert "arm64: vdso: Fix compilation with clang older than 8" (git-fixes). - ARM64: vdso32: Install vdso32 from vdso_install (git-fixes). - arm64: ptrace: Use NO_SYSCALL instead of -1 in syscall_trace_enter() (git-fixes). - arm: mm: use __pfn_to_section() to get mem_section (git-fixes). - commit 4accc73- blacklist.conf: arm64: dts: add fixes - commit 918cf09- netfilter: conntrack: add new sysctl to disable RST check (bsc#1183947 bsc#1185950). - commit 54ae065- netfilter: conntrack: improve RST handling when tuple is re-used (bsc#1183947 bsc#1185950). - commit 3e0da56- netfilter: conntrack: avoid misleading 'invalid' in log message (bsc#1183947 bsc#1185950). - commit 9338bce- net: enetc: fix link error again (git-fixes). - commit 0d4ccc0- blacklist.conf: add misc dt-bindings fixes References: git-fixes - commit fc2fb63- NFC: nci: fix memory leak in nci_allocate_device (git-fixes). - commit 2bba556- scsi: libfc: Avoid invoking response handler twice if ep is already completed (bsc#1186573). - commit 679d56e- SUNRPC in case of backlog, hand free slots directly to waiting task (bsc#1185428). - commit 862f15d- bpf: No need to simulate speculative domain for immediates (bsc#1186484,CVE-2021-33200). - bpf: Fix mask direction swap upon off reg sign change (bsc#1186484,CVE-2021-33200). - bpf: Wrap aux data inside bpf_sanitize_info container (bsc#1186484,CVE-2021-33200). - commit fc0b52a- Update patches.suse/powerpc-64s-Fix-crashes-when-toggling-entry-flush-ba.patch (bsc#1177666 git-fixes bsc#1186460 ltc#192531). - Update patches.suse/powerpc-64s-Fix-crashes-when-toggling-stf-barrier.patch (bsc#1087082 git-fixes bsc#1186460 ltc#192531). - commit ce0ebfb- ceph: fix inode leak on getattr error in __fh_to_dentry (bsc#1186501). - ceph: only check pool permissions for regular files (bsc#1186501). - ceph: don't clobber i_snap_caps on non-I_NEW inode (bsc#1186501). - ceph: fix up error handling with snapdirs (bsc#1186501). - commit 7d20748- uio_hv_generic: Fix another memory leak in error handling paths (git-fixes). - uio_hv_generic: Fix a memory leak in error handling paths (git-fixes). - uio: uio_hv_generic: use devm_kzalloc() for private data alloc (git-fixes). - uio_hv_generic: add missed sysfs_remove_bin_file (git-fixes). - commit 0e1067b- nvme-fabrics: decode host pathing error for connect (bsc#1179827). - nvme-fc: short-circuit reconnect retries (bsc#1179827). - nvme-fc: check sgl supported by target (bsc#1179827). - commit 97321b0- scsi: lpfc: Fix bad memory access during VPD DUMP mailbox command (bsc#1186451). - commit 192cba3- scsi: lpfc: Update lpfc version to 12.8.0.10 (bsc#1186451). - scsi: lpfc: Reregister FPIN types if ELS_RDF is received from fabric controller (bsc#1186451). - scsi: lpfc: Add a option to enable interlocked ABTS before job completion (bsc#1186451). - scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the SGLs (bsc#1186451). - scsi: lpfc: Ignore GID-FT response that may be received after a link flip (bsc#1186451). - scsi: lpfc: Fix node handling for Fabric Controller and Domain Controller (bsc#1186451). - scsi: lpfc: Fix Node recovery when driver is handling simultaneous PLOGIs (bsc#1186451). - scsi: lpfc: Add ndlp kref accounting for resume RPI path (bsc#1186451). - scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology (bsc#1186451). - scsi: lpfc: Fix non-optimized ERSP handling (bsc#1186451). - scsi: lpfc: Fix unreleased RPIs when NPIV ports are created (bsc#1186451). - commit 19dc8b6- Bluetooth: L2CAP: Fix handling LE modes by L2CAP_OPTIONS (git-fixes). - commit 322fe2d- nvme-fc: clear q_live at beginning of association teardown (bsc#1186479). - commit 6f0e9b4- RDMA/core: create ib_cm with WQ_MEM_RECLAIM flag (bsc#1183346). - RDMA/addr: create addr_wq with WQ_MEM_RECLAIM flag (bsc#1183346). - commit 18a82b0- drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang (git-fixes). - ALSA: line6: Fix racy initialization of LINE6 MIDI (git-fixes). - ALSA: intel8x0: Don't update period unless prepared (git-fixes). - ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293 (git-fixes). - ALSA: usb-audio: Validate MS endpoint descriptors (git-fixes). - ALSA: hda: fixup headset for ASUS GU502 laptop (git-fixes). - ALSA: hda/realtek: reset eapd coeff to default value for alc287 (git-fixes). - leds: lp5523: check return value of lp5xx_read and jump to cleanup code (git-fixes). - Revert "leds: lp5523: fix a missing check of return value of lp55xx_read" (git-fixes). - Bluetooth: SMP: Fail if remote and local public keys are identical (git-fixes). - commit 57f36e1- ipmi/watchdog: Stop watchdog timer when the current action is 'none' (bsc#1184855). - commit 725c479- btrfs: fix race between transaction aborts and fsyncs leading to use-after-free (bsc#1186441). - commit 9be975d- btrfs: fix race when picking most recent mod log operation for an old root (bsc#1186439). - commit f318368- scsi: core: Run queue in case of I/O resource contention failure (bsc#1186416). - commit 50bad37- USB: serial: pl2303: fix line-speed handling on newer chips (bsc#1186320). - USB: serial: pl2303: add support for PL2303HXN (bsc#1186320). - commit bc4a20a- s390/kdump: fix out-of-memory with PCI (bsc#1182257 LTC#191375). - commit b91dd8c- spi: spi-fsl-dspi: Fix a resource leak in an error handling path (git-fixes). - gpio: xilinx: Correct kernel doc for xgpio_probe() (git-fixes). - mmc: sdhci-pci-gli: increase 1.8V regulator wait (git-fixes). - drm/amd/display: Fix two cursor duplication when using overlay (git-fixes). - Input: silead - add workaround for x86 BIOS-es which bring the chip up in a stuck state (git-fixes). - Input: elants_i2c - do not bind to i2c-hid compatible ACPI instantiated devices (git-fixes). - PCI: thunder: Fix compile testing (git-fixes). - ACPI / hotplug / PCI: Fix reference count leak in enable_slot() (git-fixes). - gpiolib: acpi: Add quirk to ignore EC wakeups on Dell Venue 10 Pro 5055 (git-fixes). - dmaengine: dw-edma: Fix crash on loading/unloading driver (git-fixes). - usb: sl811-hcd: improve misleading indentation (git-fixes). - pinctrl: ingenic: Improve unreachable code generation (git-fixes). - commit 4488c4d- firmware: arm_scpi: Prevent the ternary sign expansion bug (git-fixes). - ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency (git-fixes). - ALSA: firewire-lib: fix calculation for size of IR context payload (git-fixes). - ALSA: firewire-lib: fix check for the size of isochronous packet payload (git-fixes). - ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro (git-fixes). - ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26 (git-fixes). - platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue (git-fixes). - ics932s401: fix broken handling of errors when word reading fails (git-fixes). - ASoC: rt286: Generalize support for ALC3263 codec (git-fixes). - ASoC: rsnd: call rsnd_ssi_master_clk_start() from rsnd_ssi_init() (git-fixes). - commit 309a9af- ALSA: hda/conexant: Re-order CX5066 quirk table entries (git-fixes). - ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet (git-fixes). - ASoC: rsnd: core: Check convert rate in rsnd_hw_params (git-fixes). - ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus T100TAF (git-fixes). - ASoC: rt286: Make RT286_SET_GPIO_* readable and writable (git-fixes). - ALSA: bebob: enable to deliver MIDI messages for multiple ports (git-fixes). - ALSA: rme9652: don't disable if not enabled (git-fixes). - ALSA: hdspm: don't disable if not enabled (git-fixes). - ALSA: hdsp: don't disable if not enabled (git-fixes). - commit 0897647- usb: core: hub: fix race condition about TRSMRCY of resume (git-fixes). - usb: xhci: Increase timeout for HC halt (git-fixes). - usb: dwc3: omap: improve extcon initialization (git-fixes). - cdc-wdm: untangle a circular dependency between callback and softint (git-fixes). - drm/i915: Avoid div-by-zero on gen2 (git-fixes). - drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors are connected (git-fixes). - pinctrl: samsung: use 'int' for register masks in Exynos (git-fixes). - i2c: Add I2C_AQ_NO_REP_START adapter quirk (git-fixes). - i2c: bail out early when RDWR parameters are wrong (git-fixes). - drm/amd/display: fixed divide by zero kernel crash during dsc enablement (git-fixes). - drm/amd/display: Force vsync flip when reconfiguring MPCC (git-fixes). - qtnfmac: Fix possible buffer overflow in qtnf_event_handle_external_auth (git-fixes). - wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join (git-fixes). - wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt (git-fixes). - mac80211: clear the beacon's CRC after channel switch (git-fixes). - Bluetooth: check for zapped sk before connecting (git-fixes). - Bluetooth: initialize skb_queue_head at l2cap_chan_create() (git-fixes). - Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default (git-fixes). - commit 6a99610- s390/dasd: fix hanging DASD driver unbind (bsc#1183932 LTC#192153). - commit f5a02db- genirq/irqdomain: Don't try to free an interrupt that has no (git-fixes) - commit 6059d03- sched/fair: Avoid stale CPU util_est value for schedutil in (git-fixes) - commit 3ca2554- sched/eas: Don't update misfit status if the task is pinned (git-fixes) - commit 7849a6f- posix-timers: Preserve return value in clock_adjtime32() (git-fixes) - commit 637287d- hrtimer: Update softirq_expires_next correctly after (git-fixes) - commit 123b070- genirq: Disable interrupts for force threaded handlers (git-fixes) - commit a3b0361- sched/fair: Fix unfairness caused by missing load decay (git-fixes) - commit 25deacb- lpfc: Decouple port_template and vport_template (bsc#185032). - commit 77503a8- workqueue: Minor follow-ups to the rescuer destruction change (bsc#1185911). - commit 682a642- workqueue: more destroy_workqueue() fixes (bsc#1185911). - commit 63656eb- ibmvnic: remove default label from to_string switch (bsc#1152457 ltc#174432 git-fixes). - commit 5e94000- series.conf: cleanup - move submitted patch to "almost mainline" section: patches.suse/cpufreq-intel_pstate-Add-Icelake-servers-support-in-.patch - commit 0ccf9b6- nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted (bsc#1184259). - nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange() (bsc#1184259). - nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request() (bsc#1184259). - nvme: simplify error logic in nvme_validate_ns() (bsc#1184259). - commit 56bb69c- smc: disallow TCP_ULP in smc_setsockopt() (git-fixes). - ethernet:enic: Fix a use after free bug in enic_hard_start_xmit (git-fixes). - RDMA/srpt: Fix error return code in srpt_cm_req_recv() (git-fixes). - RDMA/hns: Delete redundant abnormal interrupt status (git-fixes). - RDMA/hns: Delete redundant condition judgment related to eq (git-fixes). - net, xdp: Update pkt_type if generic XDP changes unicast MAC (git-fixes). - xsk: Respect device's headroom and tailroom on generic xmit path (git-fixes). - commit 7c9514e- cpufreq: intel_pstate: Add Icelake servers support in no-HWP mode (bsc#1185758). - commit d0a78d0- i40e: Fix PHY type identifiers for 2.5G and 5G adapters (git-fixes). - i40e: fix the restart auto-negotiation after FEC modified (git-fixes). - i40e: Fix use-after-free in i40e_client_subtask() (git-fixes). - i40e: fix broken XDP support (git-fixes). - mlxsw: spectrum_mr: Update egress RIF list before route's action (git-fixes). - net: hns3: disable phy loopback setting in hclge_mac_start_phy (git-fixes). - net: hns3: clear unnecessary reset request in hclge_reset_rebuild (git-fixes). - net: hns3: use netif_tx_disable to stop the transmit queue (git-fixes). - net: hns3: fix for vxlan gpe tx checksum bug (git-fixes). - net: hns3: add check for HNS3_NIC_STATE_INITED in hns3_reset_notify_up_enet() (git-fixes). - net: hns3: initialize the message content in hclge_get_link_mode() (git-fixes). - net: hns3: fix incorrect configuration for igu_egu_hw_err (git-fixes). - RDMA/qedr: Fix error return code in qedr_iw_connect() (jsc#SLE-8215). - bnxt_en: Fix RX consumer index logic in the error path (git-fixes). - bnxt_en: fix ternary sign extension bug in bnxt_show_temp() (git-fixes). - net: thunderx: Fix unintentional sign extension issue (git-fixes). - cxgb4: Fix unintentional sign extension issues (git-fixes). - netdevice: Add missing IFF_PHONY_HEADROOM self-definition (git-fixes). - vrf: fix a comment about loopback device (git-fixes). - net: hns3: Fix for geneve tx checksum bug (git-fixes). - commit d07ce98- Enable CONFIG_PCI_PF_STUB for Nvidia Ampere vGPU support (jsc#SLE-17882 jsc#ECO-3691) Nvidia switched its vGPU mechanism from mdev to SRIOV since Ampere architecutre. For the SRIOV implementation, they used pci-pf-stub module. We only need to enable CONFIG_PCI_PF_STUB here, other dependencies have been enabled already. - commit 8ab8eb0- nvme: explicitly update mpath disk capacity on revalidation (git-fixes). - commit 71b6570- nvme: retrigger ANA log update if group descriptor isn't found (git-fixes) - commit d9afd49- nvme-tcp: fix misuse of __smp_processor_id with preemption (git-fixes). - dm: avoid filesystem lookup in dm_get_dev_t() (git-fixes). - nvme: don't intialize hwmon for discovery controllers (git-fixes). - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT (git-fixes). - nvme-tcp: Fix possible race of io_work and direct send (git-fixes). - nvme-tcp: fix kconfig dependency warning when !CRYPTO (git-fixes). - blk-iocost: ioc_pd_free() shouldn't assume irq disabled (git-fixes). - nvme: fix controller instance leak (git-fixes). - nvmet: fix a memory leak (git-fixes). - block: fix get_max_io_size() (git-fixes). - nvme-tcp: fix possible hang waiting for icresp response (bsc#1179519). - commit 6431b47- nvme: fix possible deadlock when I/O is blocked (git-fixes). - Delete patches.suse/nvme-do-not-update-disk-info-for-multipathed-device.patch. - commit c1000c4- nvme: define constants for identification values (git-fixes). - commit ef03dba- powerpc/64s: Fix crashes when toggling entry flush barrier (bsc#1177666 git-fixes). - powerpc/64s: Fix crashes when toggling stf barrier (bsc#1087082 git-fixes). - commit f06d724- nvmet: use new ana_log_size instead the old one (bsc#1184259). note: the upstream commit msg is misleading, this is an nvme host fix, not nvmet. - commit 99e6038- nvme: don't intialize hwmon for discovery controllers (bsc#1184259). - commit 48fa885- kABI workaround for hci_chan amp field addition (CVE-2021-33034 bsc#1186111). - commit 82f4155- Bluetooth: verify AMP hci_chan before amp_destroy (CVE-2021-33034 bsc#1186111). - commit f6d837e- USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check (git-fixes). - tty: moxa: fix TIOCSSERIAL permission check (git-fixes). - tty: moxa: fix TIOCSSERIAL jiffies conversions (git-fixes). - tty: amiserial: fix TIOCSSERIAL permission check (git-fixes). - commit ec86798- drm/amd/display: Reject non-zero src_y and src_x for video planes (git-fixes). - PCI: Allow VPD access for QLogic ISP2722 (git-fixes). - cfg80211: scan: drop entry from hidden_list on overflow (git-fixes). - serial: core: return early on unsupported ioctls (git-fixes). - serial: stm32: fix tx_empty condition (git-fixes). - serial: stm32: fix incorrect characters on console (git-fixes). - commit 4d97fe4- video: hyperv_fb: Add ratelimit on error message (bsc#1185725). - Drivers: hv: vmbus: Increase wait time for VMbus unload (bsc#1185725). - Drivers: hv: vmbus: Initialize unload_event statically (bsc#1185725). - Drivers: hv: vmbus: Use after free in __vmbus_open() (git-fixes). - drivers: hv: Fix whitespace errors (bsc#1185725). - Drivers: hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM (git-fixes). - commit ebeaec2- iio: tsl2583: Fix division by a zero lux_val (git-fixes). - iio: gyro: mpu3050: Fix reported temperature value (git-fixes). - iio: proximity: pulsedlight: Fix rumtime PM imbalance on error (git-fixes). - xhci: Do not use GFP_KERNEL in (potentially) atomic context (git-fixes). - usb: fotg210-hcd: Fix an error message (git-fixes). - usb: dwc3: gadget: Return success always for kick transfer in ep queue (git-fixes). - usb: dwc2: Fix gadget DMA unmap direction (git-fixes). - usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel Merrifield (git-fixes). - commit c94cc71- ipc/mqueue, msg, sem: Avoid relying on a stack reference past its expiry (bsc#1185988). - commit 5e2321a- Correct CVE number for a mac80211 fix (CVE-2020-26139 bsc#1186062) - commit 747a941- net/nfc: fix use-after-free llcp_sock_bind/connect (CVE-2021-23134 bsc#1186060). - commit ffbe2a6- watchdog/softlockup: Remove obsolete check of last reported task (bsc#1185982). - commit 6d9c3a2- nvmet: seset ns->file when open fails (bsc#1183873). - commit ca1c5ff- KVM: s390: fix guarded storage control register handling (bsc#1133021). - commit 6757070- vgacon: Record video mode changes with VT_RESIZEX (git-fixes). - hwmon: (occ) Fix poll rate limiting (git-fixes). - PM / devfreq: Use more accurate returned new_freq as resume_freq (git-fixes). - commit 63ad411- nvme: remove superfluous else in nvme_ctrl_loss_tmo_store (bsc#1182378). - commit f263745- nvme: Fix NULL dereference for pci nvme controllers (bsc#1182378). - commit cf7170b- nvme: expose reconnect_delay and ctrl_loss_tmo via sysfs (bsc#1182378). - Refresh patches.suse/nvme-add-kato-sysfs-attribute.patch. Context adjustment in kato patch. - commit 7126f4d- watchdog/softlockup: report the overall time of softlockups (bsc#1185982). - commit 88ee1b3- watchdog: explicitly update timestamp when reporting softlockup (bsc#1185982). - commit e1f93d5- watchdog: rename __touch_watchdog() to a better descriptive name (bsc#1185982). - commit c09eacd- Update to mainline version and move into sorted section: patches.suse/scsi-fnic-Use-scsi_host_busy_iter-to-traverse-commands.patch (bsc#1179851) - commit 5bb3cbc- scsi: fnic: Kill 'exclude_id' argument to fnic_cleanup_io() (bsc#1179851). temporarily disable patches.suse/fnic-use-blk_mq_tagset_busy_iter-to-traverse-commands.patch - commit da3e4e8- Update upstream references and move into sorted section: patches.suse/scsi-fnic-do-not-call-scsi_done-for-unhandled-commands.patch - commit 0dfec7c- ath10k: Validate first subframe of A-MSDU before processing the list (CVE-2020-26141 bsc#1185863 bsc#1185987). - commit ea14c35- ath10k: Fix TKIP Michael MIC verification for PCIe (CVE-2020-26141 bsc#1185863 bsc#1185987). - commit 4eb2710- nvme-multipath: fix double initialization of ANA state (bsc#1178612, bsc#1184259). - commit 4aa67c6- ath10k kABI workaround for CVE-2020-24588 fix (CVE-2020-24588 bsc#1185861). - ath10k: drop MPDU which has discard flag set by firmware for SDIO (CVE-2020-24588 bsc#1185861). - ath10k: drop fragments with multicast DA for SDIO (CVE-2020-26145 bsc#1185860). - ath10k: drop fragments with multicast DA for PCIe (CVE-2020-26145 bsc#1185860). - ath10k: add CCMP PN replay protection for fragmented frames for PCIe (CVE-2020-26145 bsc#1185860). - commit e9158ad- kABI workaround for cfg80211 changes (CVE-2020-24586 bsc#1185859). - mac80211: extend protection against mixed key and fragment cache attacks (CVE-2020-24586 bsc#1185859). - mac80211: do not accept/forward invalid EAPOL frames (CVE-2020-24587 CVE-2020-24586 bsc#1185863 bsc#1185862 bsc#1185859). - mac80211: prevent attacks on TKIP/WEP as well (CVE-2020-24586 bsc#1185859). - mac80211: check defrag PN against current frame (CVE-2020-24587 CVE-2020-24586 bsc#1185863 bsc#1185862 bsc#1185859). - mac80211: add fragment cache to sta_info (CVE-2020-24587 CVE-2020-24586 bsc#1185863 bsc#1185859). - mac80211: drop A-MSDUs on old ciphers (CVE-2020-24587 CVE-2020-24586 bsc#1185863 bsc#1185862 bsc#1185859). - mac80211: properly handle A-MSDUs that start with an RFC 1042 header (CVE-2020-24587 CVE-2020-24586 bsc#1185863 bsc#1185862 bsc#1185859). - mac80211: prevent mixed key and fragment cache attacks (CVE-2020-24587 CVE-2020-24586 bsc#1185863 bsc#1185862 bsc#1185859). - mac80211: assure all fragments are encrypted (CVE-2020-26147 bsc#1185863 bsc#1185859). - commit e747a3d- ftrace: Handle commands when closing set_ftrace_filter file (git-fixes). - commit 7c0272c- tracing: Map all PIDs to command lines (git-fixes). - commit ed170f4- ibmvfc: Reinit target retries (bsc#1185938 ltc#192043). - ibmvfc: Avoid move login if fast fail is enabled (bsc#1185938 ltc#192043). - ibmvfc: Handle move login failure (bsc#1185938 ltc#192043). - commit 0d8166b- xhci: fix potential array out of bounds with several interrupters (git-fixes). - xhci: check control context is valid before dereferencing it (git-fixes). - commit c3f83a0- usb: gadget: dummy_hcd: fix gpf in gadget_setup (git-fixes). - usb: core: hub: Fix PM reference leak in usb_port_resume() (git-fixes). - usb: musb: fix PM reference leak in musb_irq_work() (git-fixes). - usb: xhci: Fix port minor revision (git-fixes). - usb: gadget: f_uac1: validate input parameters (git-fixes). - usb: gadget: f_uac2: validate input parameters (git-fixes). - usb: gadget/function/f_fs string table fix for multiple languages (git-fixes). - usb: webcam: Invalid size of Processing Unit Descriptor (git-fixes). - commit 4c3dc8b- power: supply: s3c_adc_battery: fix possible use-after-free in s3c_adc_bat_remove() (git-fixes). - power: supply: generic-adc-battery: fix possible use-after-free in gab_remove() (git-fixes). - power: supply: Use IRQF_ONESHOT (git-fixes). - spi: qup: fix PM reference leak in spi_qup_remove() (git-fixes). - spi: omap-100k: Fix reference leak to master (git-fixes). - spi: dln2: Fix reference leak to master (git-fixes). - spi: ath79: remove spi-master setup and cleanup assignment (git-fixes). - spi: ath79: always call chipselect function (git-fixes). - usb: gadget: uvc: add bInterval checking for HS mode (git-fixes). - tty: fix memory leak in vc_deallocate (git-fixes). - commit fbbea32- mmc: block: Update ext_csd.cache_ctrl if it was written (git-fixes). - mmc: sdhci-pci: Fix initialization of some SD cards for Intel BYT-based controllers (git-fixes). - mmc: sdhci-pci: Add PCI IDs for Intel LKF (git-fixes). - mmc: sdhci: Check for reset prior to DMA address unmap (git-fixes). - mmc: core: Set read only for SD cards with permanent write protect bit (git-fixes). - PCI: PM: Do not read power state in pci_enable_device_flags() (git-fixes). - phy: phy-twl4030-usb: Fix possible use-after-free in twl4030_usb_remove() (git-fixes). - platform/x86: intel_pmc_core: Don't use global pmcdev in quirks (git-fixes). - commit f8dc44d- mfd: arizona: Fix rumtime PM imbalance on error (git-fixes). - mmc: core: Do a power cycle when the CMD11 fails (git-fixes). - media: dvb-usb: fix memory leak in dvb_usb_adapter_init (git-fixes). - media: platform: sti: Fix runtime PM imbalance in regs_show (git-fixes). - media: i2c: adv7842: fix possible use-after-free in adv7842_remove() (git-fixes). - media: i2c: tda1997: Fix possible use-after-free in tda1997x_remove() (git-fixes). - media: i2c: adv7511-v4l2: fix possible use-after-free in adv7511_remove() (git-fixes). - media: adv7604: fix possible use-after-free in adv76xx_remove() (git-fixes). - media: tc358743: fix possible use-after-free in tc358743_remove() (git-fixes). - commit bddb0b7- media: em28xx: fix memory leak (git-fixes). - media: gspca/sq905.c: fix uninitialized variable (git-fixes). - media: media/saa7164: fix saa7164_encoder_register() memory leak bugs (git-fixes). - media: imx: capture: Return -EPIPE from __capture_legacy_try_fmt() (git-fixes). - media: drivers: media: pci: sta2x11: fix Kconfig dependency on GPIOLIB (git-fixes). - media: ite-cir: check for receive overflow (git-fixes). - commit f5f8b81- extcon: arizona: Fix various races on driver unbind (git-fixes). - extcon: arizona: Fix some issues when HPDET IRQ fires after the jack has been unplugged (git-fixes). - drm/msm/mdp5: Do not multiply vclk line count by 100 (git-fixes). - drm/msm/mdp5: Configure PP_SYNC_HEIGHT to double the vtotal (git-fixes). - drm/amdgpu: fix NULL pointer dereference (git-fixes). - drm/amdkfd: Fix cat debugfs hang_hws file causes system crash bug (git-fixes). - drm/vkms: fix misuse of WARN_ON (git-fixes). - drm/amd/display: fix dml prefetch validation (git-fixes). - intel_th: Consistency and off-by-one fix (git-fixes). - fbdev: zero-fill colormap in fbcmap.c (git-fixes). - commit e59ac4d- drm/amd/display: Fix UBSAN warning for not a valid value for type '_Bool' (git-fixes). - drm/amdgpu : Fix asic reset regression issue introduce by 8f211fe8ac7c4f (git-fixes). - drm/amdgpu: mask the xgmi number of hops reported from psp to kfd (git-fixes). - drm: Added orientation quirk for OneGX1 Pro (git-fixes). - crypto: stm32/cryp - Fix PM reference leak on stm32-cryp.c (git-fixes). - crypto: stm32/hash - Fix PM reference leak on stm32-hash.c (git-fixes). - crypto: qat - Fix a double free in adf_create_ring (git-fixes). - crypto: qat - fix error path in adf_isr_resource_alloc() (git-fixes). - commit 4f7d7a0- clk: socfpga: arria10: Fix memory leak of socfpga_clk on error return (git-fixes). - ata: ahci: Disable SXS for Hisilicon Kunpeng920 (git-fixes). - amdgpu: avoid incorrect %hu format string (git-fixes). - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (git-fixes). - crypto: qat - don't release uninitialized resources (git-fixes). - crypto: qat - fix unmap invalid dma address (git-fixes). - crypto: api - check for ERR pointers in crypto_destroy_tfm() (git-fixes). - crypto: mips/poly1305 - enable for all MIPS processors (git-fixes). - commit e379274- Move upstreamed media fixes into sorted section - commit 5bae3a8- scripts/git_sort/git_sort.py: add bpf git repo - commit 65979e3- proc: Avoid mixing integer types in mem_rw() (CVE-2021-3491 bsc#1185642). - commit 757f76b- blacklist: add commit b166a20b0738 Mainline commit b166a20b0738 ("net/sctp: fix race condition in sctp_destroy_sock") was found buggy so that it was reverted by commit 01bfe5e8e428 ("Revert "net/sctp: fix race condition in sctp_destroy_sock"") and replaced by a new fix, commit 34e5b0118685 ("sctp: delay auto_asconf init until binding the first addr"). - commit 7c2eabc- sctp: delay auto_asconf init until binding the first addr (). - commit cb84c72- tcp: fix to update snd_wl1 in bulk receiver fast path (). - commit 627e2e2- Update patch reference for BT fix (CVE-2021-32399 bsc#1185898) - commit 81179ec- Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op") (git-fixes). - commit 9e8eea0- series.conf: cleanup - move a submitted patch to "almost mainline" section patches.suse/rtc-pcf2127-handle-timestamp-interrupts.patch - commit baf1232- fix patch metadata - fix Patch-mainline: patches.suse/fs-epoll-restore-waking-from-ep_done_scan.patch - commit 220b548- series.conf: cleanup - update upstream references and resort: patches.suse/nvme-multipath-reset-bdev-to-ns-head-when-failover.patch patches.suse/scsi-lpfc-Fix-DMA-virtual-address-ptr-assignment-in-.patch patches.suse/scsi-lpfc-Fix-illegal-memory-access-on-Abort-IOCBs.patch - commit a062422- drm/radeon: Avoid power table parsing memory leaks (git-fixes). - drm/radeon: Fix off-by-one power_state index heap overwrite (git-fixes). - commit dad28e7- bpf: Fix leakage of uninitialized bpf stack under speculation (bsc#1155518). - bpf: Fix masking negation logic upon negative dst register (bsc#1155518). - commit 876c85a- ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP (git-fixes). - commit cb198d3- Revert "i3c master: fix missing destroy_workqueue() on error in i3c_master_register" (git-fixes). - ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure (git-fixes). - ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable (git-fixes). - USB: Add reset-resume quirk for WD19's Realtek Hub (git-fixes). - USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet (git-fixes). - platform/x86: thinkpad_acpi: Correct thermal sensor allocation (git-fixes). - commit 23adf05- fs/epoll: restore waking from ep_done_scan() (bsc#1183868). - commit b803549- iommu/amd: Add support for map/unmap_resource (jsc#ECO-3482). - commit 7b9e3ca- ACPI: custom_method: fix a possible memory leak (git-fixes). - ACPI: custom_method: fix potential use-after-free issue (git-fixes). - commit 2b51e47- kernel-docs.spec.in: Build using an utf-8 locale. Sphinx cannot handle UTF-8 input in non-UTF-8 locale. - commit 0db6da1- md-cluster: fix use-after-free issue when removing rdev (bsc#1184082). - md: split mddev_find (bsc#1184081). - md: factor out a mddev_find_locked helper from mddev_find (bsc#1184081). - md: md_open returns -EBUSY when entering racing area (bsc#1184081). - md: don't flush workqueue unconditionally in md_open (bsc#1184081). - commit 255ac58- genirq: Reduce irqdebug cacheline bouncing (bsc#1185703 ltc#192641). - commit 54b345b- PCI: iproc: Fix return value of iproc_msi_irq_domain_alloc() (git-fixes). - PCI: endpoint: Fix missing destroy_workqueue() (git-fixes). - PCI/RCEC: Fix RCiEP device to RCEC association (git-fixes). - PCI: Release OF node in pci_scan_device()'s error path (git-fixes). - thermal/drivers/ti-soc-thermal/bandgap Remove unused variable 'val' (git-fixes). - docs: kernel-parameters: Add gpio_mockup_named_lines (git-fixes). - docs: kernel-parameters: Move gpio-mockup for alphabetic order (git-fixes). - commit 6976ceb- md/raid1: properly indicate failure when ending a failed write request (bsc#1185680). - commit 67fde5a- s390/entry: save the caller of psw_idle (bsc#1185677). - commit d82aadb- rtc: pcf2127: handle timestamp interrupts (bsc#1185495). - commit f74f90f- Update patches.suse/powerpc-eeh-Fix-EEH-handling-for-hugepages-in-iorema.patch (bsc#1156395 bsc#1185645 ltc#192576). - commit b0c1c70- fix patch metadata - fix Patch-mainline: patches.suse/mm-memcontrol-fix-cpuhotplug-statistics-flushing.patch - commit fc7f89c- Update kabi files. - update from May 2021 maintenance update submission (commit 0a8fae2b39f2) - commit 8a0c3f3- rpm: drop /usr/bin/env in interpreter specification OBS checks don't like /usr/bin/env in script interpreter lines but upstream developers tend to use it. A proper solution would be fixing the depedency extraction and drop the OBS check error but that's unlikely to happen so that we have to work around the problem on our side and rewrite the interpreter lines in scripts before collecting files for packages instead. - commit 45c5c1a- nvme: add 'kato' sysfs attribute (bsc#1179825). - nvme: sanitize KATO setting (bsc#1179825). - commit f3a2791- patches.suse/NFC-nxp-nci-Add-GPIO-ACPI-mapping-table.patch: (bsc#1185589). - commit 4004e31- patches.suse/NFC-nxp-nci-Convert-to-use-GPIO-descriptor.patch: (bsc#1185589). - commit a3f193f- patches.suse/NFC-nxp-nci-Get-rid-of-platform-data.patch: (bsc#1185589). - commit 3e24d09- rtc: ds1307: Fix wday settings for rx8130 (git-fixes). - mmc: sdhci-of-dwcmshc: fix rpmb access (git-fixes). - commit d21fbb6- patches.suse/NFC-nxp-nci-Add-NXP1001-to-the-ACPI-ID-table.patch: (bsc#1185589). - commit 68d285a- mm: memcontrol: fix cpuhotplug statistics flushing (bsc#1185606). - commit 3bba386- nvme-multipath: reset bdev to ns head when failover (bsc#178378 bsc#1182999). Refresh: - patches.suse/nvme-multipath-retry-commands-for-dying-queues.patch - commit ee2dc7b- scripts/git_sort/git_sort.py: Update nvme repositories - commit e849c44- blacklist.conf: Add ppc kuap/uaccess fixes not applicable to SP2 - commit 4b4ca8e- powerpc/eeh: Fix EEH handling for hugepages in ioremap space (bsc#1156395). - powerpc/time: Enable sched clock for irqtime (bsc#1156395). - commit 5ee4c93- powerpc/perf: Fix PMU constraint check for EBB events (bsc#1065729). - powerpc/64s: Fix pte update for kernel memory on radix (bsc#1055117 git-fixes). - powerpc/asm-offsets: GPR14 is not needed either (bsc#1065729). - powerpc/prom: Mark identical_pvr_fixup as __init (bsc#1065729). - powerpc/fadump: Mark fadump_calculate_reserve_size as __init (bsc#1065729). - commit e08fbf4- KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit (bsc#1156395). - KVM: PPC: Make the VMX instruction emulation routines static (bsc#1156395). - commit 66099c4- btrfs: fix race between swap file activation and snapshot creation (bsc#1185587). - btrfs: fix race between writes to swap files and scrub (bsc#1185586). - commit 517921a- series.conf: cleanup - move into "almost mainline" section patches.suse/rtc-fsl-ftm-alarm-add-MODULE_TABLE.patch - commit 75e25e9- fix patch metadata - fix Patch-mainline: patches.suse/x86-platform-uv-set-section-block-size-for-hubless-architectures.patch - commit 5cf9a28- series.conf: cleanup - update upstream references and resort patches.suse/powerpc-mm-Add-cond_resched-while-removing-hpte-mapp.patch patches.suse/powerpc-papr_scm-Fix-build-error-due-to-wrong-printf.patch patches.suse/powerpc-papr_scm-Implement-support-for-H_SCM_FLUSH-h.patch patches.suse/powerpc-pseries-Add-shutdown-to-vio_driver-and-vio_b.patch patches.suse/scsi-lpfc-Change-wording-of-invalid-pci-reset-log-me.patch patches.suse/scsi-lpfc-Correct-function-header-comments-related-t.patch patches.suse/scsi-lpfc-Fix-ADISC-handling-that-never-frees-nodes.patch patches.suse/scsi-lpfc-Fix-FLOGI-failure-due-to-accessing-a-freed.patch patches.suse/scsi-lpfc-Fix-PLOGI-ACC-to-be-transmit-after-REG_LOG.patch patches.suse/scsi-lpfc-Fix-crash-caused-by-switch-reboot.patch patches.suse/scsi-lpfc-Fix-dropped-FLOGI-during-pt2pt-discovery-r.patch patches.suse/scsi-lpfc-Fix-incorrect-dbde-assignment-when-buildin.patch patches.suse/scsi-lpfc-Fix-lpfc_els_retry-possible-null-pointer-d.patch patches.suse/scsi-lpfc-Fix-nodeinfo-debugfs-output.patch patches.suse/scsi-lpfc-Fix-null-pointer-dereference-in-lpfc_prep_.patch patches.suse/scsi-lpfc-Fix-pt2pt-connection-does-not-recover-afte.patch patches.suse/scsi-lpfc-Fix-pt2pt-state-transition-causing-rmmod-h.patch patches.suse/scsi-lpfc-Fix-reftag-generation-sizing-errors.patch patches.suse/scsi-lpfc-Fix-stale-node-accesses-on-stale-RRQ-reque.patch patches.suse/scsi-lpfc-Fix-status-returned-in-lpfc_els_retry-erro.patch patches.suse/scsi-lpfc-Fix-unnecessary-null-check-in-lpfc_release.patch patches.suse/scsi-lpfc-Fix-use-after-free-in-lpfc_els_free_iocb.patch patches.suse/scsi-lpfc-Fix-vport-indices-in-lpfc_find_vport_by_vp.patch patches.suse/scsi-lpfc-Reduce-LOG_TRACE_EVENT-logging-for-vports.patch patches.suse/scsi-lpfc-Update-copyrights-for-12.8.0.7-and-12.8.0..patch patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.8.patch patches.suse/scsi-qla2xxx-Reserve-extra-IRQ-vectors.patch patches.suse/selftests-powerpc-Fix-L1D-flushing-tests-for-Power10.patch - commit e03aa0a- ibmvnic: queue reset work in system_long_wq (bsc#1152457 ltc#174432 git-fixes). - ibmvnic: improve failover sysfs entry (bsc#1043990 ltc#155681 git-fixes). - ibmvnic: print adapter state as a string (bsc#1152457 ltc#174432 git-fixes). - ibmvnic: print reset reason as a string (bsc#1152457 ltc#174432 git-fixes). - ibmvnic: clean up the remaining debugfs data structures (bsc#1065729). - ibmvnic: remove duplicate napi_schedule call in open function (bsc#1065729). - ibmvnic: remove duplicate napi_schedule call in do_reset function (bsc#1065729). - ibmvnic: avoid calling napi_disable() twice (bsc#1065729). - commit 5d92f24- ima: Free IMA measurement buffer after kexec syscall (git-fixes). - commit 2cf366a- btrfs: fix qgroup data rsv leak caused by falloc failure (bsc#1185549). - commit 210f7a5- btrfs: track qgroup released data in own variable in insert_prealloc_file_extent (bsc#1185549). - commit 4d34a1c- ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices (git-fixes). - ALSA: hda/realtek: Re-order ALC662 quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC269 HP quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries (git-fixes). - ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries (git-fixes). - ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx (git-fixes). - ALSA: hda/cirrus: Use CS8409 filter to fix abnormal sounds on Bullseye (git-fixes). - ALSA: hda/cirrus: Set Initial DMIC volume for Bullseye to -26 dB (git-fixes). - ALSA: sb: Fix two use after free in snd_sb_qsound_build (git-fixes). - ASoC: Intel: kbl_da7219_max98927: Fix kabylake_ssp_fixup function (git-fixes). - ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer (git-fixes). - ALSA: hda/realtek - Headset Mic issue on HP platform (git-fixes). - ALSA: usb-audio: DJM-750: ensure format is set (git-fixes). - ALSA: hda/realtek: GA503 use same quirks as GA401 (git-fixes). - ALSA: hda/realtek: fix mic boost on Intel NUC 8 (git-fixes). - ALSA: usb-audio: Explicitly set up the clock selector (git-fixes). - ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX (git-fixes). - ALSA: hda/cirrus: Make CS8409 driver more generic by using fixups (git-fixes). - ALSA: hda/cirrus: Fix CS42L42 Headset Mic volume control name (git-fixes). - ALSA: hda/cirrus: Cleanup patch_cirrus.c code (git-fixes). - ALSA: hda/cirrus: Add error handling into CS8409 I2C functions (git-fixes). - ALSA: hda/cirrus: Add Headphone and Headset MIC Volume Control (git-fixes). - ALSA: hda/cirrus: Add jack detect interrupt support from CS42L42 companion codec (git-fixes). - ALSA: hda/cirrus: Add support for CS8409 HDA bridge and CS42L42 companion codec (git-fixes). - ALSA: usb-audio: Configure Pioneer DJM-850 samplerate (git-fixes). - ALSA: usb-audio: Fix Pioneer DJM devices URB_CONTROL request direction to set samplerate (git-fixes). - ALSA: usb-audio: Add DJM450 to Pioneer format quirk (git-fixes). - commit 82d06eb- i2c: sh7760: fix IRQ error path (git-fixes). - commit e315f49- pinctrl: core: Fix kernel doc string for pin_get_name() (git-fixes). - pinctrl: Ingenic: Add missing pins to the JZ4770 MAC MII group (git-fixes). - i2c: sh7760: add IRQ check (git-fixes). - i2c: jz4780: add IRQ check (git-fixes). - i2c: emev2: add IRQ check (git-fixes). - commit da2180a- i2c: cadence: add IRQ check (git-fixes). - i2c: sprd: fix reference leak when pm_runtime_get_sync fails (git-fixes). - i2c: omap: fix reference leak when pm_runtime_get_sync fails (git-fixes). - i2c: imx-lpi2c: fix reference leak when pm_runtime_get_sync fails (git-fixes). - i2c: img-scb: fix reference leak when pm_runtime_get_sync fails (git-fixes). - HID: plantronics: Workaround for double volume key presses (git-fixes). - ASoC: ak5558: correct reset polarity (git-fixes). - ASoC: simple-card: fix possible uninitialized single_cpu local variable (git-fixes). - ASoC: ak5558: Fix s/show/slow/ typo (git-fixes). - ASoC: samsung: tm2_wm5110: check of of_parse return value (git-fixes). - ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops (git-fixes). - ALSA: usb-audio: Fix implicit sync clearance at stopping stream (git-fixes). - ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails (git-fixes). - ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls (git-fixes). - ALSA: core: remove redundant spin_lock pair in snd_card_disconnect (git-fixes). - drm/i915/gvt: Fix error code in intel_gvt_init_device() (git-fixes). - commit 2b66742- net: geneve: modify IP header check in geneve6_xmit_skb and geneve_xmit_skb (git-fixes). - commit f8b6668- net:nfc:digital: Fix a double free in digital_tg_recv_dep_req (git-fixes). - net: phy: marvell: fix m88e1111_set_downshift (git-fixes). - net: phy: marvell: fix m88e1011_set_downshift (git-fixes). - net: phy: intel-xway: enable integrated led functions (git-fixes). - ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock (git-fixes). - ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices (git-fixes). - mac80211: bail out if cipher schemes are invalid (git-fixes). - rtw88: Fix array overrun in rtw_get_tx_power_params() (git-fixes). - rsi: Use resume_noirq for SDIO (git-fixes). - ipw2x00: potential buffer overflow in libipw_wx_set_encodeext() (git-fixes). - rtlwifi: 8821ae: upgrade PHY and RF parameters (git-fixes). - mt7601u: fix always true expression (git-fixes). - liquidio: Fix unintented sign extension of a left shift of a u16 (git-fixes). - nfc: pn533: prevent potential memory corruption (git-fixes). - commit 4c3b252- rpm/constraints.in: bump disk space to 45GB on riscv64 - commit f8b883f- scsi: qla2xxx: Reuse existing error handling path (bsc#1185491). - scsi: qla2xxx: Remove unneeded if-null-free check (bsc#1185491). - scsi: qla2xxx: Update version to 10.02.00.106-k (bsc#1185491). - scsi: qla2xxx: Do logout even if fabric scan retries got exhausted (bsc#1185491). - scsi: qla2xxx: Update default AER debug mask (bsc#1185491). - scsi: qla2xxx: Fix mailbox recovery during PCIe error (bsc#1185491). - scsi: qla2xxx: Fix crash in PCIe error handling (bsc#1185491). - scsi: qla2xxx: Fix RISC RESET completion polling (bsc#1185491). - scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand() (bsc#1185491). - scsi: qla2xxx: Fix use after free in bsg (bsc#1185491). - scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe (bsc#1185491). - scsi: qla2xxx: Fix stuck session (bsc#1185491). - scsi: qla2xxx: Add H:C:T info in the log message for fc ports (bsc#1185491). - scsi: qla2xxx: Fix IOPS drop seen in some adapters (bsc#1185491). - scsi: qla2xxx: Check kzalloc() return value (bsc#1185491). - scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats() (bsc#1185491). - scsi: qla2xxx: Simplify qla8044_minidump_process_control() (bsc#1185491). - scsi: qla2xxx: Suppress Coverity complaints about dseg_r* (bsc#1185491). - scsi: qla2xxx: Fix endianness annotations (bsc#1185491). - scsi: qla2xxx: Constify struct qla_tgt_func_tmpl (bsc#1185491). - scsi: qla2xxx: Use dma_pool_zalloc() (bsc#1185491). - scsi: qla2xxx: Fix a couple of misdocumented functions (bsc#1185491). - scsi: qla2xxx: Fix incorrectly named function qla8044_check_temp() (bsc#1185491). - scsi: qla2xxx: Fix a couple of misnamed functions (bsc#1185491). - scsi: qla2xxx: Fix some incorrect formatting/spelling issues (bsc#1185491). - scsi: qla2xxx: Replace __qla2x00_marker()'s missing underscores (bsc#1185491). - scsi: qla2xxx: Fix broken #endif placement (bsc#1185491). - scsi: qla2xxx: Simplify if statement (bsc#1185491). - scsi: qla2xxx: Simplify the calculation of variables (bsc#1185491). - scsi: qla2xxx: Fix some memory corruption (bsc#1185491). - scsi: qla2xxx: Remove redundant NULL check (bsc#1185491). - scsi: qla2xxx: Remove unnecessary NULL check (bsc#1185491). - scsi: qla2xxx: Assign boolean values to a bool variable (bsc#1185491). - scsi: qla2xxx: fc_remote_port_chkready() returns a SCSI result value (bsc#1185491). - scsi: qla2xxx: Update version to 10.02.00.105-k (bsc#1185491). - scsi: qla2xxx: Enable NVMe CONF (BIT_7) when enabling SLER (bsc#1185491). - scsi: qla2xxx: Fix mailbox Ch erroneous error (bsc#1185491). - scsi: qla2xxx: Wait for ABTS response on I/O timeouts for NVMe (bsc#1185491). - scsi: qla2xxx: Move some messages from debug to normal log level (bsc#1185491). - scsi: qla2xxx: Add error counters to debugfs node (bsc#1185491). - scsi: qla2xxx: Implementation to get and manage host, target stats and initiator port (bsc#1185491). - commit db29123- Remove patches.suse/scsi-qla2xxx-Make-sure-that-aborted-commands-are-fre.patch Upstream commit 39c0c8553bfb ("scsi: Revert "qla2xxx: Make sure that aborted commands are freed"") reverts the patch. - commit 311c2c6- scsi: lpfc: Fix DMA virtual address ptr assignment in bsg (bsc#1185365). - scsi: lpfc: Fix illegal memory access on Abort IOCBs (bsc#1183203). - scsi: lpfc: Copyright updates for 12.8.0.9 patches (bsc#1185472). - scsi: lpfc: Update lpfc version to 12.8.0.9 (bsc#1185472). - scsi: lpfc: Eliminate use of LPFC_DRIVER_NAME in lpfc_attr.c (bsc#1185472). - scsi: lpfc: Standardize discovery object logging format (bsc#1185472). - scsi: lpfc: Fix various trivial errors in comments and log messages (bsc#1185472). - scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic (bsc#1185472). - scsi: lpfc: Fix lpfc_hdw_queue attribute being ignored (bsc#1185472). - scsi: lpfc: Fix missing FDMI registrations after Mgmt Svc login (bsc#1185472). - scsi: lpfc: Fix silent memory allocation failure in lpfc_sli4_bsg_link_diag_test() (bsc#1185472). - scsi: lpfc: Fix use-after-free on unused nodes after port swap (bsc#1185472). - scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode (bsc#1185472). - scsi: lpfc: Fix lack of device removal on port swaps with PRLIs (bsc#1185472). - scsi: lpfc: Fix NMI crash during rmmod due to circular hbalock dependency (bsc#1185472). - scsi: lpfc: Fix reference counting errors in lpfc_cmpl_els_rsp() (bsc#1185472). - scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO response (bsc#1185472). - scsi: lpfc: Fix rmmod crash due to bad ring pointers to abort_iotag (bsc#1185472). - scsi: lpfc: Fix gcc -Wstringop-overread warning (bsc#1185472). - scsi: lpfc: Fix a typo (bsc#1185472). - scsi: lpfc: Fix kernel-doc formatting issue (bsc#1185472). - scsi: lpfc: Fix a few incorrectly named functions (bsc#1185472). - scsi: lpfc: Fix incorrectly documented function lpfc_debugfs_commonxripools_data() (bsc#1185472). - scsi: lpfc: Fix a bunch of misnamed functions (bsc#1185472). - scsi: lpfc: Fix a bunch of kernel-doc misdemeanours (bsc#1185472). - scsi: lpfc: Fix incorrect naming of __lpfc_update_fcf_record() (bsc#1185472). - scsi: lpfc: Fix formatting and misspelling issues (bsc#1185472). - scsi: lpfc: Fix a bunch of kernel-doc issues (bsc#1185472). - scsi: lpfc: Fix some error codes in debugfs (bsc#1185472). - commit a4fa91e- series.conf: Resort and update meta data - meta data refreshed: patches.suse/scsi-lpfc-Change-wording-of-invalid-pci-reset-log-me.patch patches.suse/scsi-lpfc-Correct-function-header-comments-related-t.patch patches.suse/scsi-lpfc-Fix-ADISC-handling-that-never-frees-nodes.patch patches.suse/scsi-lpfc-Fix-FLOGI-failure-due-to-accessing-a-freed.patch patches.suse/scsi-lpfc-Fix-PLOGI-ACC-to-be-transmit-after-REG_LOG.patch patches.suse/scsi-lpfc-Fix-crash-caused-by-switch-reboot.patch patches.suse/scsi-lpfc-Fix-dropped-FLOGI-during-pt2pt-discovery-r.patch patches.suse/scsi-lpfc-Fix-incorrect-dbde-assignment-when-buildin.patch patches.suse/scsi-lpfc-Fix-lpfc_els_retry-possible-null-pointer-d.patch patches.suse/scsi-lpfc-Fix-nodeinfo-debugfs-output.patch patches.suse/scsi-lpfc-Fix-null-pointer-dereference-in-lpfc_prep_.patch patches.suse/scsi-lpfc-Fix-pt2pt-connection-does-not-recover-afte.patch patches.suse/scsi-lpfc-Fix-pt2pt-state-transition-causing-rmmod-h.patch patches.suse/scsi-lpfc-Fix-reftag-generation-sizing-errors.patch patches.suse/scsi-lpfc-Fix-stale-node-accesses-on-stale-RRQ-reque.patch patches.suse/scsi-lpfc-Fix-status-returned-in-lpfc_els_retry-erro.patch patches.suse/scsi-lpfc-Fix-unnecessary-null-check-in-lpfc_release.patch patches.suse/scsi-lpfc-Fix-use-after-free-in-lpfc_els_free_iocb.patch patches.suse/scsi-lpfc-Fix-vport-indices-in-lpfc_find_vport_by_vp.patch patches.suse/scsi-lpfc-Reduce-LOG_TRACE_EVENT-logging-for-vports.patch patches.suse/scsi-lpfc-Update-copyrights-for-12.8.0.7-and-12.8.0..patch patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.8.patch patches.suse/scsi-qla2xxx-Reserve-extra-IRQ-vectors.patch - commit 27785f8- x86/platform/uv: Set section block size for hubless architectures (bsc#1152489). - commit 47e611e- rtc: fsl-ftm-alarm: add MODULE_TABLE() (bsc#1185454). - rtc: fsl-ftm-alarm: update acpi device id (bsc#1185454). - rtc: fsl-ftm-alarm: fix freeze(s2idle) failed to wake (bsc#1185454). - rtc: fsl-ftm-alarm: report alarm to core (bsc#1185454). - rtc: fsl-ftm-alarm: enable acpi support (bsc#1185454). - rtc: fsl-ftm-alarm: avoid struct rtc_time conversions (bsc#1185454). - rtc: fsl-ftm-alarm: switch to rtc_time64_to_tm/rtc_tm_to_time64 (bsc#1185454). - rtc: fsl-ftm-alarm: switch to ktime_get_real_seconds (bsc#1185454). - commit 10147b2- reintroduce cqhci_suspend for kABI (git-fixes). - commit eb30081- media: staging/intel-ipu3: Fix race condition during set_fmt (git-fixes). - commit 7053b04- mmc: mmc_spi: Drop unused NO_IRQ definition (git-fixes). - mmc: core: Correct descriptions in mmc_of_parse() (git-fixes). - sata_mv: add IRQ checks (git-fixes). - pata_ipx4xx_cf: fix IRQ check (git-fixes). - pata_arasan_cf: fix IRQ check (git-fixes). - rsxx: remove extraneous 'const' qualifier (git-fixes). - pinctrl: lewisburg: Update number of pins in community (git-fixes). - net: geneve: check skb is large enough for IPv4/IPv6 header (git-fixes). - commit 8cd08fd- mfd: lpc_sch: Partially revert "Add support for Intel Quark X1000" (git-fixes). - mfd: stm32-timers: Avoid clearing auto reload register (git-fixes). - mmc: uniphier-sd: Fix a resource leak in the remove function (git-fixes). - mmc: uniphier-sd: Fix an error handling path in uniphier_sd_probe() (git-fixes). - media: staging/intel-ipu3: Fix memory leak in imu_fmt (git-fixes). - media: v4l2-ctrls.c: fix race condition in hdl->requests list (git-fixes). - media: staging/intel-ipu3: Fix set_fmt error handling (git-fixes). - media: dvbdev: Fix memory leak in dvb_media_device_free() (git-fixes). - media: m88rs6000t: avoid potential out-of-bounds reads on arrays (git-fixes). - commit e24fcb3- drm/omap: fix misleading indentation in pixinc() (git-fixes). - drm/amdkfd: fix build error with AMD_IOMMU_V2=m (git-fixes). - media: mantis: remove orphan mantis_core.c (git-fixes). - media: platform: sunxi: sun6i-csi: fix error return code of sun6i_video_start_streaming() (git-fixes). - media: omap4iss: return error code when omap4iss_get() failed (git-fixes). - gpio: omap: Save and restore sysconfig (git-fixes). - HID: wacom: Assign boolean values to a bool variable (git-fixes). - HID: alps: fix error return code in alps_input_configured() (git-fixes). - HID: google: add don USB id (git-fixes). - commit 20a3b3a- clk: uniphier: Fix potential infinite loop (git-fixes). - clk: zynqmp: move zynqmp_pll_set_mode out of round_rate callback (git-fixes). - clk: exynos7: Mark aclk_fsys1_200 as critical (git-fixes). - clk: qcom: a53-pll: Add missing MODULE_DEVICE_TABLE (git-fixes). - backlight: journada720: Fix Wmisleading-indentation warning (git-fixes). - ata: libahci_platform: fix IRQ check (git-fixes). - drm/radeon: fix copy of uninitialized variable back to userspace (git-fixes). - commit f116afa- scsi: smartpqi: Update version to 1.2.16-012 (bsc#1178089). - scsi: smartpqi: Correct pqi_sas_smp_handler busy condition (bsc#1178089). - scsi: smartpqi: Correct driver removal with HBA disks (bsc#1178089). - commit 1fed21d- fix patch metadata - fix Patch-mainline: patches.suse/x86-microcode-check-for-offline-cpus-before-requesting-new-microcode.patch - commit 86da738- x86/microcode: Check for offline CPUs before requesting new microcode (bsc#1152489). - commit 720943a- mmc: cqhci: Add cqhci_deactivate() (git-fixes). - commit e46a789- mmc: sdhci-of-dwcmshc: implement specific set_uhs_signaling (git-fixes). - commit 78a20b1- mmc: sdhci-of-esdhc: make sure delay chain locked for HS400 (git-fixes). - commit b9124c1- mmc: sdhci-of-esdhc: set timeout to max before tuning (git-fixes). - commit 3690227- mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true (git-fixes). - commit 23cd005- mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based controllers (git-fixes). - Refresh patches.suse/mmc-sdhci-pci-Prefer-SDR25-timing-for-High-Speed-mod.patch. - commit 9dd1a55- blacklist.conf: prerequisites break kABI - commit 2c4445c- mmc: sdhci-of-arasan: Add missed checks for devm_clk_register() (git-fixes). - commit 72c0b64- blacklist.conf: fixes a compiler warning only - commit 2e1acc1- blacklist.conf: fixes a compiler warning only - commit 0566d04- rpm/constraints.in: remove aarch64 disk size exception obs://Kernel:stable/kernel-default/ARM/aarch64 currrently fails: installing package kernel-default-livepatch-devel-5.12.0-3.1.g6208a83.aarch64 needs 3MB more space on the / filesystem The stats say: Maximal used disk space: 31799 Mbyte By default, we require 35G. For aarch64 we had an exception to lower this limit to 30G there. Drop this exception as it is obviously no longer valid. - commit ee00b50- x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access (bsc#1152489). - commit 542e5a3- mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two (bsc#1167260). - mtd: spi-nor: Rename "n25q512a" to "mt25qu512a (n25q512a)" (bsc#1167260). - commit 2c1a6eb- spi: fsl-dspi: fix wrong pointer in suspend/resume (bsc#1167260). - spi: spi-fsl-dspi: use XSPI mode instead of DMA for DPAA2 SoCs (bsc#1167260). - spi: spi-fsl-dspi: delete EOQ transfer mode (bsc#1167260). - spi: spi-fsl-dspi: set ColdFire to DMA mode (bsc#1167260). - spi: fsl-dspi: fix NULL pointer dereference (bsc#1167260). - spi: fsl-dspi: fix use-after-free in remove path (bsc#1167260). - spi: spi-fsl-dspi: Initialize completion before possible interrupt (bsc#1167260). - spi: spi-fsl-dspi: Fix external abort on interrupt in resume or exit paths (bsc#1167260). - spi: spi-fsl-dspi: Fix lockup if device is shutdown during SPI transfer (bsc#1167260). - spi: spi-fsl-dspi: Fix lockup if device is removed during SPI transfer (bsc#1167260). - spi: spi-fsl-dspi: Free DMA memory with matching function (bsc#1167260). - spi: spi-fsl-dspi: fix native data copy (bsc#1167260). - spi: spi-fsl-dspi: Adding shutdown hook (bsc#1167260). - spi: spi-fsl-dspi: Add support for LS1028A (bsc#1167260). - commit e0a1590- blacklist.conf: cosmetic fix - commit 501d484- blacklist.conf: breaks kABI - commit 25e087f- blacklist.conf: patch is a kABI cleanup - commit dc817ec- spi: spi-fsl-dspi: Move invariant configs out of dspi_transfer_one_message (bsc#1167260). - spi: spi-fsl-dspi: Fix interrupt-less DMA mode taking an XSPI code path (bsc#1167260). - spi: spi-fsl-dspi: Avoid NULL pointer in dspi_slave_abort for non-DMA mode (bsc#1167260). - spi: spi-fsl-dspi: Replace interruptible wait queue with a simple completion (bsc#1167260). - spi: spi-fsl-dspi: Protect against races on dspi->words_in_flight (bsc#1167260). - spi: spi-fsl-dspi: Avoid reading more data than written in EOQ mode (bsc#1167260). - spi: spi-fsl-dspi: Fix bits-per-word acceleration in DMA mode (bsc#1167260). - spi: spi-fsl-dspi: Fix little endian access to PUSHR CMD and TXDATA (bsc#1167260). - spi: spi-fsl-dspi: Don't access reserved fields in SPI_MCR (bsc#1167260). - spi: spi-fsl-dspi: fix DMA mapping (bsc#1167260). - spi: spi-fsl-dspi: Take software timestamp in dspi_fifo_write (bsc#1167260). - spi: spi-fsl-dspi: Use EOQ for last word in buffer even for XSPI mode (bsc#1167260). - spi: spi-fsl-dspi: Optimize dspi_setup_accel for lowest interrupt count (bsc#1167260). - spi: spi-fsl-dspi: Accelerate transfers using larger word size if possible (bsc#1167260). - spi: spi-fsl-dspi: Convert TCFQ users to XSPI FIFO mode (bsc#1167260). - spi: spi-fsl-dspi: Implement .max_message_size method for EOQ mode (bsc#1167260). - spi: spi-fsl-dspi: Rename fifo_{read,write} and {tx,cmd}_fifo_write (bsc#1167260). - spi: spi-fsl-dspi: Add comments around dspi_pop_tx and dspi_push_rx functions (bsc#1167260). - spi: spi-fsl-dspi: Don't mask off undefined bits (bsc#1167260). - spi: spi-fsl-dspi: Remove unused chip->void_write_data (bsc#1167260). - spi: spi-fsl-dspi: Simplify bytes_per_word gymnastics (bsc#1167260). - spi: spi-fsl-dspi: Make bus-num property optional (bsc#1167260). - spi: spi-fsl-dspi: Convert the instantiations that support it to DMA (bsc#1167260). - commit 7e2481c- USB: CDC-ACM: fix poison/unpoison imbalance (bsc#1184984). - commit 264efc3- usb: dwc2: Fix hibernation between host and device modes (git-fixes). - usb: dwc2: Fix host mode hibernation exit with remote wakeup flow (git-fixes). - USB: serial: fix return value for unsupported ioctls (git-fixes). - USB: serial: usb_wwan: fix TIOCGSERIAL implementation (git-fixes). - USB: serial: usb_wwan: fix unprivileged TIOCCSERIAL (git-fixes). - USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions (git-fixes). - USB: serial: ssu100: fix TIOCGSERIAL implementation (git-fixes). - commit 4c3112d- USB: serial: quatech2: fix TIOCGSERIAL implementation (git-fixes). - USB: serial: opticon: fix TIOCGSERIAL implementation (git-fixes). - USB: serial: mos7720: fix TIOCGSERIAL implementation (git-fixes). - USB: serial: f81534: fix TIOCGSERIAL implementation (git-fixes). - USB: serial: f81232: fix TIOCGSERIAL implementation (git-fixes). - USB: serial: ark3116: fix TIOCGSERIAL implementation (git-fixes). - USB: CDC-ACM: fix poison/unpoison imbalance (git-fixes). - usb: dwc3: gadget: Fix START_TRANSFER link state check (git-fixes). - usb: gadget: Fix double free of device descriptor pointers (git-fixes). - usb: typec: tcpm: Honour pSnkStdby requirement during negotiation (git-fixes). - commit 5c40ba7- USB: cdc-acm: fix TIOCGSERIAL implementation (git-fixes). - USB: cdc-acm: fix unprivileged TIOCCSERIAL (git-fixes). - Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL" (git-fixes). - usb: gadget: r8a66597: Add missing null check on return from platform_get_resource (git-fixes). - usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply (git-fixes). - usb: dwc2: Fix session request interrupt handler (git-fixes). - USB: gadget: udc: fix wrong pointer passed to IS_ERR() and PTR_ERR() (git-fixes). - usb: gadget: aspeed: fix dma map failure (git-fixes). - usb: gadget: pch_udc: Revert d3cb25a12138 completely (git-fixes). - usb: gadget: pch_udc: Move pch_udc_init() to satisfy kernel doc (git-fixes). - commit fb519e4- spi: fsl-lpspi: Fix PM reference leak in lpspi_prepare_xfer_hardware() (git-fixes). - spi: spi-ti-qspi: Free DMA resources (git-fixes). - soc: aspeed: fix a ternary sign expansion bug (git-fixes). - usb: gadget: pch_udc: Check for DMA mapping error (git-fixes). - usb: gadget: pch_udc: Check if driver is present before calling - >setup() (git-fixes). - usb: gadget: pch_udc: Replace cpu_to_le32() by lower_32_bits() (git-fixes). - usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS (git-fixes). - soundwire: stream: fix memory leak in stream config error path (git-fixes). - soundwire: bus: Fix device found flag correctly (git-fixes). - commit d16f444- regulator: Avoid a double 'of_node_get' in 'regulator_of_get_init_node()' (git-fixes). - regmap: set debugfs_name to NULL after it is freed (git-fixes). - mtd: rawnand: gpmi: Fix a double free in gpmi_nand_init (git-fixes). - PM: runtime: Add documentation for pm_runtime_resume_and_get() (git-fixes). - soc: qcom: mdt_loader: Detect truncated read of segments (git-fixes). - soc: qcom: mdt_loader: Validate that p_filesz < p_memsz (git-fixes). - staging: rtl8192u: Fix potential infinite loop (git-fixes). - node: fix device cleanups in error handling code (git-fixes). - phy: marvell: ARMADA375_USBCLUSTER_PHY should not default to y, unconditionally (git-fixes). - platform/x86: pmc_atom: Match all Beckhoff Automation baytrail boards with critclk_systems DMI table (git-fixes). - commit ab0d991- mtd: spinand: core: add missing MODULE_DEVICE_TABLE() (git-fixes). - mtd: rawnand: atmel: Update ecc_stats.corrected counter (git-fixes). - mtd: rawnand: qcom: Return actual error code instead of -ENODEV (git-fixes). - mtd: Handle possible -EPROBE_DEFER from parse_mtd_partitions() (git-fixes). - mtd: rawnand: brcmnand: fix OOB R/W with Hamming ECC (git-fixes). - mtd: rawnand: fsmc: Fix error code in fsmc_nand_probe() (git-fixes). - mtd: require write permissions for locking and badblock ioctls (git-fixes). - misc: vmw_vmci: explicitly initialize vmci_datagram payload (git-fixes). - misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct (git-fixes). - misc: lis3lv02d: Fix false-positive WARN on various HP models (git-fixes). - commit e422d77- memory: pl353: fix mask of ECC page_size config register (git-fixes). - memory: gpmc: fix out of bounds read and dereference on gpmc_cs[] (git-fixes). - fotg210-udc: Complete OUT requests on short packets (git-fixes). - fotg210-udc: Don't DMA more than the buffer can take (git-fixes). - staging: fwserial: fix TIOCGSERIAL implementation (git-fixes). - staging: fwserial: fix TIOCSSERIAL implementation (git-fixes). - staging: fwserial: fix TIOCSSERIAL permission check (git-fixes). - staging: fwserial: fix TIOCSSERIAL jiffies conversions (git-fixes). - iio:accel:adis16201: Fix wrong axis assignment that prevents loading (git-fixes). - commit b5d6098- cpufreq: Kconfig: fix documentation links (git-fixes). - cpufreq: armada-37xx: Fix determining base CPU frequency (git-fixes). - fotg210-udc: Mask GRP2 interrupts we don't handle (git-fixes). - fotg210-udc: Remove a dubious condition leading to fotg210_done (git-fixes). - fotg210-udc: Fix EP0 IN requests bigger than two packets (git-fixes). - fotg210-udc: Fix DMA on EP0 for length > max packet size (git-fixes). - firmware: qcom-scm: Fix QCOM_SCM configuration (git-fixes). - crypto: arm/curve25519 - Move '.fpu' after '.arch' (git-fixes). - crypto: rng - fix crypto_rng_reset() refcounting when !CRYPTO_STATS (git-fixes). - commit 781f7bc- cpufreq: armada-37xx: Fix driver cleanup when registration failed (git-fixes). - clk: mvebu: armada-37xx-periph: Fix workaround for switching from L1 to L0 (git-fixes). - clk: mvebu: armada-37xx-periph: Fix switching CPU freq from 250 Mhz to 1 GHz (git-fixes). - cpufreq: armada-37xx: Fix the AVS value for load L1 (git-fixes). - clk: mvebu: armada-37xx-periph: remove .set_parent method for CPU PM clock (git-fixes). - cpufreq: armada-37xx: Fix setting TBG parent for load levels (git-fixes). - ACPI: CPPC: Replace cppc_attr with kobj_attribute (git-fixes). - bus: qcom: Put child node before return (git-fixes). - bluetooth: eliminate the potential race condition when removing the HCI controller (git-fixes). - commit d53d421- spi: spi-fsl-dspi: LS2080A and LX2160A support XSPI mode (bsc#1167260). - spi: spi-fsl-dspi: Parameterize the FIFO size and DMA buffer size (bsc#1167260). - spi: spi-fsl-dspi: Use specific compatible strings for all SoC instantiations (bsc#1167260). - spi: spi-fsl-dspi: Use dma_request_chan() instead dma_request_slave_channel() (bsc#1167260). - spi: spi-fsl-dspi: Fix 16-bit word order in 32-bit XSPI mode (bsc#1167260). - spi: spi-fsl-dspi: Always use the TCFQ devices in poll mode (bsc#1167260). - spi: Introduce dspi_slave_abort() function for NXP's dspi SPI driver (bsc#1167260). - spi: spi-fsl-dspi: Fix race condition in TCFQ/EOQ interrupt (bsc#1167260). - spi: spi-fsl-dspi: Use poll mode in case the platform IRQ is missing (bsc#1167260). - spi: spi-fsl-dspi: Remove impossible to reach error check (bsc#1167260). - spi: spi-fsl-dspi: Exit the ISR with IRQ_NONE when it's not ours (bsc#1167260). - spi: spi-fsl-dspi: Reduce indentation level in dspi_interrupt (bsc#1167260). - spi: spi-fsl-dspi: Move dspi_interrupt above dspi_transfer_one_message (bsc#1167260). - spi: spi-fsl-dspi: Fix typos (bsc#1167260). - spi: spi-fsl-dspi: Use reverse Christmas tree declaration order (bsc#1167260). - spi: spi-fsl-dspi: Replace legacy spi_master names with spi_controller (bsc#1167260). - spi: spi-fsl-dspi: Remove pointless assignment of master->transfer to NULL (bsc#1167260). - spi: spi-fsl-dspi: Remove unused initialization of 'ret' in dspi_probe (bsc#1167260). - spi: spi-fsl-dspi: Reduce indentation in dspi_release_dma() (bsc#1167260). - spi: spi-fsl-dspi: Change usage pattern of SPI_MCR_* and SPI_CTAR_* macros (bsc#1167260). - spi: spi-fsl-dspi: Demistify magic value in SPI_SR_CLEAR (bsc#1167260). - spi: spi-fsl-dspi: Use BIT() and GENMASK() macros (bsc#1167260). - spi: spi-fsl-dspi: Remove unused defines and includes (bsc#1167260). - spi: spi-fsl-dspi: Fix code alignment (bsc#1167260). - commit 9437971- spi: spi-fsl-dspi: remove git-fixes Remove git-fixes. Prepare to update the driver. References: bsc#1167260 - commit 47a4219- netfilter: x_tables: Use correct memory barriers (bsc#1184208 CVE-2021-29650). - commit a2dbe0f- libnvdimm/region: Fix nvdimm_has_flush() to handle ND_REGION_ASYNC (bsc#1184969 git-fixes). - libnvdimm/label: Return -ENXIO for no slot in __blk_label_update (bsc#1185269). - libnvdimm/namespace: Fix reaping of invalidated block-window-namespace labels (bsc#1185269). - libnvdimm/security: ensure sysfs poll thread woke up and fetch updated attr (FATE#325581 git-fixes). - commit d1f996e- arm: dts: add imx7d pcf2127 fix to blacklist - commit d57b89d- locking/qrwlock: Fix ordering in queued_write_lock_slowpath() (bsc#1185041). - commit 06bc03e- rpm/macros.kernel-source: fix KMP failure in %install (bsc#1185244) - commit 52805ed- net: ll_temac: Handle DMA halt condition caused by buffer underrun (git-fixes). - commit 2c8041a- net: ll_temac: Fix RX buffer descriptor handling on GFP_ATOMIC pressure (git-fixes). - commit d2da394- net: ll_temac: Add more error handling of dma_map_single() calls (git-fixes). - commit d046726- net: ll_temac: Fix race condition causing TX hang (git-fixes). - commit a6721f5- net: atlantic: fix out of range usage of active_vlans array (git-fixes). - commit 4472105- net: atlantic: fix potential error handling (git-fixes). - commit 972b18c- net: atlantic: fix use after free kasan warn (git-fixes). - commit e77e662- net: stmmac: xgmac: fix missing IFF_MULTICAST checki in dwxgmac2_set_filter (git-fixes). - commit cc72eca- net: stmmac: fix missing IFF_MULTICAST check in dwmac4_set_filter (git-fixes). - commit 65142f9- drivers: net: xgene: Fix the order of the arguments of 'alloc_etherdev_mqs()' (git-fixes). - commit 96e1f9b- net: smc911x: Adjust indentation in smc911x_phy_configure (git-fixes). - commit 4801107- net: tulip: Adjust indentation in {dmfe, uli526x}_init_module (git-fixes). - commit deb82c3- Refresh patches.kabi/0001-kABI-Fix-kABI-after-EDR-backport.patch. - commit 79c9348- rtc: pcf2127: properly set flag WD_CD for rtc chips(pcf2129, pca2129) (bsc#1185233). - irqchip/ls-extirq: add IRQCHIP_SKIP_SET_WAKE to the irqchip flags (bsc#1185233). - rtc: pcf2127: only use watchdog when explicitly available (bsc#1185233). - rtc: pcf2127: fix pcf2127_nvmem_read/write() returns (bsc#1185233). - rtc: pcf2127: move watchdog initialisation to a separate function (bsc#1185233). - irqchip/ls-extirq: Add LS1043A, LS1088A external interrupt support (bsc#1185233). - rtc: pcf2127: fix a bug when not specify interrupts property (bsc#1185233). - rtc: pcf2127: fix alarm handling (bsc#1185233). - rtc: pcf2127: add alarm support (bsc#1185233). - rtc: pcf2127: add pca2129 device id (bsc#1185233). - rtc: pcf2127: watchdog: handle nowayout feature (bsc#1185233). - rtc: pcf2127: set regmap max_register (bsc#1185233). - rtc: pcf2127: remove unnecessary #ifdef (bsc#1185233). - rtc: pcf2127: let the core handle rtc range (bsc#1185233). - rtc: pcf2127: handle boot-enabled watchdog feature (bsc#1185233). - irqchip: Add support for Layerscape external interrupt lines (bsc#1185233). - rtc: pcf2127: bugfix: watchdog build dependency (bsc#1185233). - rtc: pcf2127: add tamper detection support (bsc#1185233). - rtc: pcf2127: add watchdog feature support (bsc#1185233). - rtc: pcf2127: cleanup register and bit defines (bsc#1185233). - rtc: pcf2127: convert to devm_rtc_allocate_device (bsc#1185233). - commit cdccb34- nvme-fabrics: reject I/O to offline device (bsc#1181161). - Refresh patches.suse/nvme-fabrics-fix-kato-initialization.patch. - Refresh patches.suse/nvme-fabrics-only-reserve-a-single-tag.patch. Context adjustment on the refreshed patches. - commit a68e30b- blk-settings: align max_sectors on "logical_block_size" boundary (bsc#1185195). - commit e302bd9- rpm/kernel-obs-build.spec.in: Include essiv with dm-crypt (boo#1183063). Previously essiv was part of dm-crypt but now it is separate. Include the module in kernel-obs-build when available. Fixes: 7cf5b9e26d87 ("rpm/kernel-obs-build.spec.in: add dm-crypt for building with cryptsetup") - commit fe15b78- powerpc/papr_scm: Fix build error due to wrong printf specifier (bsc#1184969). - commit 546dd4c- kABI: powerpc/pseries: Add shutdown() to vio_driver and vio_bus (bsc#1184209 ltc#190917). - commit 7b3a736- x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd (bsc#1152489). - commit 7205cf8- net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta (jsc#SLE-8464). - commit 43af4d2- i40e: fix the panic when running bpf in xdpdrv mode (git-fixes). - i40e: Fix sparse warning: missing error code 'err' (git-fixes). - i40e: Fix sparse errors in i40e_txrx.c (git-fixes). - net: hns3: clear VF down state bit before request link status (git-fixes). - net: hns3: Remove un-necessary 'else-if' in the hclge_reset_event() (git-fixes). - i40e: Fix display statistics for veb_tc (git-fixes). - net/mlx5: Don't request more than supported EQs (git-fixes). - net/mlx5e: Fix ethtool indication of connector type (git-fixes). - nfp: flower: ignore duplicate merge hints from FW (git-fixes). - ethernet/netronome/nfp: Fix a use after free in nfp_bpf_ctrl_msg_rx (git-fixes). - ice: Cleanup fltr list in case of allocation issues (git-fixes). - ice: Fix for dereference of NULL pointer (git-fixes). - ice: prevent ice_open and ice_stop during reset (git-fixes). - ice: Increase control queue timeout (git-fixes). - cxgb4: avoid collecting SGE_QBASE regs during traffic (git-fixes). - i40e: Fix kernel oops when i40e driver removes VF's (git-fixes). - i40e: Added Asym_Pause to supported link modes (git-fixes). - net/mlx5e: Fix error path for ethtool set-priv-flag (git-fixes). - igb: check timestamp validity (git-fixes). - igb: Fix duplicate include guard (git-fixes). - e1000e: Fix duplicate include guard (git-fixes). - net/qlcnic: Fix a use after free in qlcnic_83xx_get_minidump_template (git-fixes). - e1000e: Fix error handling in e1000_set_d0_lplu_state_82571 (git-fixes). - e1000e: add rtnl_lock() to e1000_reset_task (git-fixes). - igc: Fix Supported Pause Frame Link Setting (git-fixes). - igc: Fix Pause Frame Advertising (git-fixes). - igc: reinit_locked() should be called with rtnl_lock (git-fixes). - net/mlx5e: Don't match on Geneve options in case option masks are all zero (git-fixes). - macvlan: macvlan_count_rx() needs to be aware of preemption (git-fixes). - veth: Store queue_mapping independently of XDP prog presence (git-fixes). - net/mlx4_en: update moderation when config reset (git-fixes). - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (git-fixes). - net: hns3: fix bug when calculating the TCAM table info (git-fixes). - net: hns3: fix query vlan mask value error for flow director (git-fixes). - ice: Account for port VLAN in VF max packet size calculation (git-fixes). - vxlan: move debug check after netdev unregister (git-fixes). - i40e: Fix endianness conversions (git-fixes). - i40e: Fix add TC filter for IPv6 (git-fixes). - i40e: Fix addition of RX filters after enabling FW LLDP agent (git-fixes). - i40e: Fix overwriting flow control settings during driver loading (git-fixes). - i40e: Add zero-initialization of AQ command structures (git-fixes). - i40e: Fix flow for IPv6 next header (extension header) (git-fixes). - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() (git-fixes). - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds (git-fixes). - bnxt_en: reverse order of TX disable and carrier off (git-fixes). - commit 1b80b7a- series.conf: cleanup - move into correct directory and series.conf section: patches.suse/kABI-cover-up-change-in-struct-kvm_arch.patch -> patches.kabi/ - commit 7ead145- Revert "rpm/kernel-binary.spec.in: Fix dependency of kernel-*-devel package (bsc#1184514)" This turned out to be a bad idea: the kernel-$flavor-devel package must be usable without kernel-$flavor, e.g. at the build of a KMP. And this change brought superfluous installation of kernel-preempt when a system had kernel-syms (bsc#1185113). - commit d771304- patches.suse/btrfs-fs-super.c-add-new-super-block-devices-super_block_d.patch: (bsc#865869,bsc#1178418). Fix initialization of the the super block for a btrfs specific enhancement which we added. The btrfs specific enhancement augmented the super block to add support to ustat() and it is only used by btrfs. For that, the super block was extended with a new linked list which is only used only in btrfs. The initialization of the linked list however was done late, and if any allocation fails early on alloc_super() it meant that the WARNING check on free'ing it could fail, as the list may be read as not empty. This warning then is triggerable when stress testing allocations, and you run out of memory. It can happen regardless of the filesystem you use. The sget_fc() contention when stress testing with the unshare system call reported on bsc#1178418 which leads to a soft lockup is still being investigate, however this fixes the kernel warning reproduced when doing that stress testing. - commit 67dd047- virt_wifi: Return micros for BSS TSF values (git-fixes). - mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN (git-fixes). - drm/msm: Fix a5xx/a6xx timestamps (git-fixes). - commit 0abe8be- drm/ast: Add 25MHz refclk support (bsc#1174416). - drm/ast: Add support for 1152x864 mode (bsc#1174416). - drm/ast: Add support for AIP200 (bsc#1174416). - drm/ast: Correct mode table for AST2500 precatch (bsc#1174416). - drm/ast: AST2500 fixups (bsc#1174416). - drm/ast: Fix P2A config detection (bsc#1174416). - drm/ast: Fix register access in non-P2A mode for DP501 (bsc#1174416). - drm/ast: drm/ast: Fix boot address for AST2500 (bsc#1174416). - drm/ast: Disable screen on register init (bsc#1174416). - drm/ast: Keep MISC fields when enabling VGA (bsc#1174416). - drm/ast: Disable VGA decoding while driver is active (bsc#1174416). - commit f478032- powerpc/pseries: Add shutdown() to vio_driver and vio_bus (bsc#1184209 ltc#190917). - commit 218a8c4- rpm/check-for-config-changes: add AS_HAS_* to ignores arch/arm64/Kconfig defines a lot of these. So far our current compilers seem to support them all. But it can quickly change with SLE later. - commit a4d8194- usb: dwc3: core: don't do suspend for device mode if already suspended (git-fixes). - commit 82b18d4- usb: dwc3: gadget: Clear DCTL.ULSTCHNGREQ before set (git-fixes). - commit 072728a- usb: dwc3: gadget: Set link state to RX_Detect on disconnect (git-fixes). - commit 6a1e8b7- usb: dwc3: gadget: Don't send unintended link state change (git-fixes). - commit acdee65- kABI: cover up change in struct kvm_arch (bsc#1184969). - commit 3e9476f- usb: dwc3: of-simple: add a shutdown (git-fixes). - commit 15b84b1- usb: dwc3: debug: Remove newline printout (git-fixes). - commit 5104cc5- scsi: core: Only return started requests from scsi_host_find_tag() (bsc#1179851). - commit 49d7a00- bpf: Tighten speculative pointer arithmetic mask (bsc#1184942 CVE-2021-29155). - bpf: Move sanitize_val_alu out of op switch (bsc#1184942 CVE-2021-29155). - bpf: Refactor and streamline bounds check into helper (bsc#1184942 CVE-2021-29155). - bpf: Improve verifier error messages for users (bsc#1184942 CVE-2021-29155). - bpf: Rework ptr_limit into alu_limit and add common error path (bsc#1184942 CVE-2021-29155). - bpf: Ensure off_reg has no mixed signed bounds for all types (bsc#1184942 CVE-2021-29155). - bpf: Move off_reg into sanitize_ptr_alu (bsc#1184942 CVE-2021-29155). - commit bc2237a- net: enetc: remove bogus write to SIRXIDR from enetc_setup_rxbdr (git-fixes). - net: enetc: take the MDIO lock only once per NAPI poll cycle (git-fixes). - commit 2704809- scsi: qla2xxx: Reserve extra IRQ vectors (bsc#1184436). - commit bf4edb3- selftests/powerpc: Fix exit status of pkey tests (bsc#1184934 ltc#191460). - selftests/powerpc: Add test for pkey siginfo verification (bsc#1184934 ltc#191460). - commit 7ac835e- x86/reboot: Force all cpus to exit VMX root if VMX is supported (bsc#1152489). - commit 9520307- powerpc/papr_scm: Implement support for H_SCM_FLUSH hcall (bsc#1184969). - commit 878daaa- usb: dwc3: Disable phy suspend after power-on reset (git-fixes). - commit a403162- usb: dwc3: gadget: Workaround Mirosoft's BESL check (git-fixes). - commit e16e74a- usb: dwc3: gadget: Set BESL config parameter (git-fixes). - commit b02b13d- usb: dwc3: Separate field holding multiple properties (git-fixes). - commit 1087836- usb: dwc3: st: Add of_dev_put() in probe function (git-fixes). - commit b4290b9- usb: dwc3: st: Add of_node_put() before return in probe function (git-fixes). - commit a5796ab- usb: dwc3: Use clk_bulk_prepare_enable() (git-fixes). - commit 638e28a- usb: dwc3: Use devres to get clocks (git-fixes). - commit e717ac7- powerpc/mm: Add cond_resched() while removing hpte mappings (bsc#1183289 ltc#191637). - powerepc/book3s64/hash: Align start/end address correctly with bolt mapping (bsc#1184957). - commit 4735c17- Refresh patches.suse/powerpc-pseries-extract-host-bridge-from-pci_bus-pri.patch. Update patch metadata. - commit 2060b77- selftests/powerpc: Fix L1D flushing tests for Power10 (bsc#1184934 ltc#191460). - selftests/powerpc: refactor entry and rfi_flush tests (bsc#1184934 ltc#191460). - selftests/powerpc: Fix pkey syscall redefinitions (bsc#1184934 ltc#191460). - selftests/powerpc: Add wrapper for gettid (bsc#1184934 ltc#191460). - selftests/powerpc: Add pkey helpers for rights (bsc#1184934 ltc#191460). - selftests/powerpc: Move pkey helpers to headers (bsc#1184934 ltc#191460). - selftests/powerpc: Add test for execute-disabled pkeys (bsc#1184934 ltc#191460). - commit c89a30c- ibmvnic: correctly use dev_consume/free_skb_irq (jsc#SLE-17268 jsc#SLE-17043 bsc#1179243 ltc#189290 git-fixes). - commit 93dc507- Update kabi files. - update from April 2021 maintenance update (commit c41a65cc53c7) - commit 7bc7f17- interconnect: core: fix error return code of icc_link_destroy() (git-fixes). - drm/imx: imx-ldb: fix out of bounds array access warning (git-fixes). - drm/tegra: dc: Don't set PLL clock to 0Hz (git-fixes). - commit 90bbfcf- workqueue: Move the position of debug_work_activate() in __queue_work() (bsc#1184893). - commit eb68ae8- kABI: Fix kABI caused by fixes for bsc#1174426 (bsc#1174426). - commit 4ef9359- PCI/AER: Use "aer" variable for capability offset (bsc#1174426). - Refresh patches.kabi/0001-kABI-Fix-kABI-after-EDR-backport.patch. - commit 2c4de88- PCI/portdrv: Report reset for frozen channel (bsc#1174426). - PCI/AER: Specify the type of Port that was reset (bsc#1174426). - PCI/ERR: Retain status from error notification (bsc#1174426). - PCI/AER: Clear AER status from Root Port when resetting Downstream Port (bsc#1174426). - PCI/ERR: Clear status of the reporting device (bsc#1174426). - PCI/AER: Add RCEC AER error injection support (bsc#1174426). - PCI/PME: Add pcie_walk_rcec() to RCEC PME handling (bsc#1174426). - PCI/AER: Add pcie_walk_rcec() to RCEC AER handling (bsc#1174426). - PCI/ERR: Recover from RCiEP AER errors (bsc#1174426). - PCI/ERR: Add pcie_link_rcec() to associate RCiEPs (bsc#1174426). - PCI/ERR: Recover from RCEC AER errors (bsc#1174426). - PCI/ERR: Clear AER status only when we control AER (bsc#1174426). - PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery() (bsc#1174426). - PCI/ERR: Avoid negated conditional for clarity (bsc#1174426). - PCI/ERR: Use "bridge" for clarity in pcie_do_recovery() (bsc#1174426). - PCI/ERR: Simplify by computing pci_pcie_type() once (bsc#1174426). - PCI/ERR: Simplify by using pci_upstream_bridge() (bsc#1174426). - PCI/ERR: Rename reset_link() to reset_subordinates() (bsc#1174426). - PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities() (bsc#1174426). - PCI/ERR: Bind RCEC devices to the Root Port driver (bsc#1174426). - PCI/AER: Write AER Capability only when we control it (bsc#1174426). - PCI/ERR: Clear PCIe Device Status errors only if OS owns AER (bsc#1174426). - commit cf4418f- dpaa_eth: Use random MAC address when none is given (bsc#1184811). - fsl/fman: tolerate missing MAC address in device tree (bsc#1184811). - fsl/fman: reuse set_mac_address() in dtsec init() (bsc#1184811). - commit 40e0790- gpio: sysfs: Obey valid_mask (git-fixes). - HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices (git-fixes). - Input: nspire-keypad - enable interrupts only when opened (git-fixes). - Input: i8042 - fix Pegatron C15B ID entry (git-fixes). - Input: s6sy761 - fix coordinate read bit shift (git-fixes). - commit 0ad8d52- x86/insn: Add some more Intel instructions to the opcode map (bsc#1184760). - commit 1d99542- x86/insn: Add some Intel instructions to the opcode map (bsc#1184760). - commit 7c194e1- iopoll: introduce read_poll_timeout macro (git-fixes). - commit 3398015- dmaengine: dw: Make it dependent to HAS_IOMEM (git-fixes). - vfio/pci: Add missing range check in vfio_pci_mmap (git-fixes). - cfg80211: remove WARN_ON() in cfg80211_sme_connect (git-fixes). - ASoC: SOF: Intel: HDA: fix core status verification (git-fixes). - ASoC: SOF: Intel: hda: remove unnecessary parentheses (git-fixes). - commit 9608bf3- Move upstreamed i915 fix into sorted section - commit c0cf502- mm/rmap: fix potential pte_unmap on an not mapped pte (git-fixes). - dm era: only resize metadata in preresume (git-fixes). - dm era: Use correct value size in equality function of writeset tree (git-fixes). - dm era: Fix bitset memory leaks (git-fixes). - dm era: Verify the data block size hasn't changed (git-fixes). - dm era: Reinitialize bitset cache before digesting a new writeset (git-fixes). - dm era: Update in-core bitset after committing the metadata (git-fixes). - dm era: Recover committed writeset after crash (git-fixes). - Revert "bcache: Kill btree_io_wq" (git-fixes). - bsg: free the request before return error code (git-fixes). - dm: eliminate potential source of excessive kernel log noise (git-fixes). - dm zoned: select CONFIG_CRC32 (git-fixes). - dm raid: fix discard limits for raid1 (git-fixes). - block: rsxx: select CONFIG_CRC32 (git-fixes). - scsi: block: Fix a race in the runtime power management code (git-fixes). - dm ioctl: fix error return code in target_message (git-fixes). - dm: remove invalid sparse __acquires and __releases annotations (git-fixes). - dm writecache: remove BUG() and fail gracefully instead (git-fixes). - dm: fix bug with RCU locking in dm_blk_report_zones (git-fixes). - Revert "dm cache: fix arm link errors with inline" (git-fixes). - dm writecache: fix the maximum number of arguments (git-fixes). - nbd: fix a block_device refcount leak in nbd_release (git-fixes). - dm integrity: fix error reporting in bitmap mode after creation (git-fixes). - dm mpath: fix racey management of PG initialization (git-fixes). - dm writecache: handle DAX to partitions on persistent memory correctly (git-fixes). - null_blk: fix passing of REQ_FUA flag in null_handle_rq (git-fixes). - blkcg: fix memleak for iolatency (git-fixes). - commit b8efea4- usb: dwc3: Update soft-reset wait polling rate (git-fixes). - commit 54f493a- usb: dwc3: keystone: use devm_platform_ioremap_resource() to simplify code (git-fixes). - commit caa2253- KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged (bsc#1152489). - commit d511393- usb: dwc3: meson-g12a: use devm_platform_ioremap_resource() to simplify code (git-fixes). - commit c2f56d9- block, bfq: set next_rq to waker_bfqq->next_rq in waker injection (bsc#1168838). Drop patches.suse/bfq-Fix-check-detecting-whether-waker-queue-should-b.patch as the upstream patch replaces is. - commit bfcf868- patches.suse/bfq-Use-only-idle-IO-periods-for-think-time-calculat.patch: Update tags - commit ebb3c4a- patches.suse/bfq-Use-ttime-local-variable.patch: Update tags - commit 83db8f6- ext4: find old entry again if failed to rename whiteout (bsc#1184742). - commit 7f9cb02- blacklist.conf: Blacklist 163f0ec1df33 - commit 742fb7c- isofs: release buffer head before return (bsc#1182613). - commit eeef088- patches.suse/bfq-Avoid-false-bfq-queue-merging.patch: Refresh with upstream version - commit c0f05bc- fs/jfs: fix potential integer overflow on shift of a int (bsc#1184741). - commit d0e76e8- jffs2: fix use after free in jffs2_sum_write_data() (bsc#1184740). - commit 6b24b69- ocfs2: fix a use after free on error (bsc#1184738). - commit bbc04e0- reiserfs: update reiserfs_xattrs_initialized() condition (bsc#1184737). - commit 0099e39- fs: direct-io: fix missing sdio->boundary (bsc#1184736). - commit 4c56c6a- ext4: fix potential error in ext4_do_update_inode (bsc#1184731). - commit 3990053- ext4: do not try to set xattr into ea_inode if value is empty (bsc#1184730). - commit b98639e- ext4: fix potential htree index checksum corruption (bsc#1184728). - commit 21d8b4d- usb: Remove dev_err() usage after platform_get_irq() (git-fixes). - commit a9d64cb- usb: dwc3: Switch to use device_property_count_u32() (git-fixes). - commit 58512a7- block: recalculate segment count for multi-segment discards correctly (bsc#1184724). - commit 7146c5e- Update patches.suse/fuse-fix-bad-inode.patch (bsc#1184211 CVE-2020-36322). Updated patch metadata to include CVE number. - commit 6ecd48e- rpm/check-for-config-changes: remove stale comment It is stale since 8ab393bf905a committed in 2005 :). - commit c9f9f5a- dm mpath: switch paths in dm_blk_ioctl() code path (bsc#1167574, bsc#1175995, bsc#1184485). - commit 981c2ae- blacklist.conf: 66c1b6d74cd7 x86: Move TS_COMPAT back to asm/thread_info.h - commit 3533f06- update patch metadata - update upstream references and move out of sorted section: patches.suse/scsi-ibmvfc-Fix-invalid-state-machine-BUG_ON.patch - commit f170d23- rpm/mkspec: Use tilde instead of dot for version string with rc (bsc#1184650) - commit f37613f- Update patches.suse/fuse-fix-live-lock-in-fuse_iget.patch (bsc#1184211 CVE-2021-28950). Updated patch metadata to include CVE number. - commit 610fdaf- libbpf: Only create rx and tx XDP rings when necessary (bsc#1155518). - commit 02ec945- x86: Introduce TS_COMPAT_RESTART to fix get_nr_restart_syscall() (bsc#1152489). - commit 6cf26f2- i40e: Fix sparse error: 'vsi->netdev' could be null (jsc#SLE-8025). - i40e: Fix parameters in aq_get_phy_register() (jsc#SLE-8025). - net/mlx5: Fix PPLM register mapping (jsc#SLE-8464). - net: hns3: Remove the left over redundant check & assignment (bsc#1154353). - ice: remove DCBNL_DEVRESET bit from PF state (jsc#SLE-7926). - commit 1626bf4- scsi: ibmvfc: Fix invalid state machine BUG_ON() (bsc#1184647 ltc#191231). - commit 069588f- iommu/vt-d: Use device numa domain if RHSA is missing (bsc#1184585). - Refresh patches.suse/iommu-vt-d-fix-ineffective-devtlb-invalidation-for-subdevices. - commit 6ad821c- enetc: Fix reporting of h/w packet counters (git-fixes). - commit 2b6231d- net: pasemi: fix error return code in pasemi_mac_open() (git-fixes). - commit 9f74d4a- atl1e: fix error return code in atl1e_probe() (git-fixes). - commit 9030b22- atl1c: fix error return code in atl1c_probe() (git-fixes). - commit 138f514- net: atheros: switch from 'pci_' to 'dma_' API (git-fixes). - commit 9d0c126- bpf, sockmap: Fix sk->prot unhash op reset (bsc#1155518). - bpf: Fix verifier jsgt branch analysis on max bound (bsc#1155518). - samples/bpf: Fix possible hang in xdpsock with multiple threads (bsc#1155518). - commit 50946be- net: b44: fix error return code in b44_init_one() (git-fixes). - commit 405f041- net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup (git-fixes). - commit 418a7e1- net: ethernet: ti: cpsw: fix error return code in cpsw_probe() (git-fixes). - commit bbd1c86- qlcnic: fix error return code in qlcnic_83xx_restart_hw() (git-fixes). - commit 4792038- net: lantiq: Wait for the GPHY firmware to be ready (git-fixes). - commit d0452d2- Documentation/ABI: sysfs-platform-ideapad-laptop: update device attribute paths (git-fixes). - commit 2559651- KVM: SVM: avoid infinite loop on NPF from bad address (CVE-2020-36310 bsc#1184512). - commit 3916df4- rpm/kernel-binary.spec.in: Fix dependency of kernel-*-devel package (bsc#1184514) The devel package requires the kernel binary package itself for building modules externally. - commit 794be7b- blacklist.conf: dd926880da8d x86/apic/of: Fix CPU devicetree-node lookups - commit 92f0632- RAS/CEC: Correct ce_add_elem()'s returned values (bsc#1152489). - commit 1be7dba- KVM: fix memory leak in kvm_io_bus_unregister_dev() (CVE-2020-36312 bsc#1184509). - commit 631bb65- xen/events: fix setting irq affinity (bsc#1184583 XSA-332 CVE-2020-27673). - commit e88a4fe- bpf, x86: Validate computation of branch displacements for x86-32 (bsc#1184391 CVE-2021-29154). - bpf, x86: Validate computation of branch displacements for x86-64 (bsc#1184391 CVE-2021-29154). - libbpf: Fix INSTALL flag order (bsc#1155518). - bpf: Remove MTU check in __bpf_skb_max_len (bsc#1155518). - commit 3cfc764- clk: fix invalid usage of list cursor in unregister (git-fixes). - clk: fix invalid usage of list cursor in register (git-fixes). - clk: socfpga: fix iomem pointer cast on 64-bit (git-fixes). - mac80211: fix TXQ AC confusion (git-fixes). - batman-adv: initialize "struct batadv_tvlv_tt_vlan_data"->reserved field (git-fixes). - net: phy: broadcom: Only advertise EEE for supported modes (git-fixes). - gianfar: Handle error code at MAC address change (git-fixes). - drm/msm: Set drvdata to NULL when msm_drm_init() fails (git-fixes). - bus: ti-sysc: Fix warning on unbind if reset is not deasserted (git-fixes). - drm/msm: Ratelimit invalid-fence message (git-fixes). - drm/msm/adreno: a5xx_power: Don't apply A540 lm_setup to other GPUs (git-fixes). - mac80211: choose first enabled channel for monitor (git-fixes). - mISDN: fix crash in fritzpci (git-fixes). - platform/x86: thinkpad_acpi: Allow the FnLock LED to change state (git-fixes). - platform/x86: intel-hid: Support Lenovo ThinkPad X1 Tablet Gen 2 (git-fixes). - commit a1094b1- nfc: Avoid endless loops caused by repeated llcp_sock_connect() (CVE-2020-25673 bsc#1178181). - nfc: fix memory leak in llcp_sock_connect() (CVE-2020-25672 bsc#1178181). - nfc: fix refcount leak in llcp_sock_connect() (CVE-2020-25671 bsc#1178181). - nfc: fix refcount leak in llcp_sock_bind() (CVE-2020-25670 bsc#1178181). - commit ee06cff- Add obsolete_rebuilds_subpackage (boo#1172073 bsc#1191731). - commit f037781- KVM: SVM: Periodically schedule when unregistering regions on destroy (bsc#1184511 CVE-2020-36311). - commit 4a629fb- rpm/check-for-config-changes: Also ignore AS_VERSION added in 5.12. - commit bd64cb2- ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1 (git-fixes). - ASoC: fsl_esai: Fix TDM slot setup for I2S mode (git-fixes). - commit cf1864e- ASoC: sunxi: sun4i-codec: fill ASoC card owner (git-fixes). - ASoC: cygnus: fix for_each_child.cocci warnings (git-fixes). - ASoC: max98373: Added 30ms turn on/off time delay (git-fixes). - ASoC: intel: atom: Remove 44100 sample-rate from the media and deep-buffer DAI descriptions (git-fixes). - ASoC: intel: atom: Stop advertising non working S24LE support (git-fixes). - commit c53d82c- ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips (git-fixes). - ALSA: aloop: Fix initialization of controls (git-fixes). - commit 71addac- post.sh: Return an error when module update fails (bsc#1047233 bsc#1184388). - commit 18f65df- fix patch metadata - fix Patch-mainline: patches.suse/cifs_debug-use-pd-instead-of-messing-with-d_name.patch - commit 27776f2- cifs: do not send close in compound create+close requests (bsc#1181507). - commit d97055c- cifs: New optype for session operations (bsc#1181507). - commit d9ec8fd- smb3: fix crediting for compounding when only one request in flight (bsc#1181507). - commit 598fa94- cifs: Tracepoints and logs for tracing credit changes (bsc#1181507). - commit 1eadfe8- smb3: add dynamic trace point to trace when credits obtained (bsc#1181507). - commit bef40ec- cifs: return proper error code in statfs(2) (bsc#1181507). - commit c4b8c95- cifs: change noisy error message to FYI (bsc#1181507). - commit 569c695- cifs: print MIDs in decimal notation (bsc#1181507). - commit 59ea5c8- cifs_debug: use %pd instead of messing with ->d_name (bsc#1181507). - commit 11a6a1c- nvme-tcp: use cancel tagset helper for tear down (bsc#1183976). - nvme-tcp: add clean action for failed reconnection (bsc#1183976). - nvme-core: add cancel tagset helpers (bsc#1183976). - commit 5f7f322- x86/ioapic: Ignore IRQ2 again (bsc#1152489). - commit a2a38c4- thermal/core: Add NULL pointer check before using cooling device stats (git-fixes). - commit 4299a85- soc/fsl: qbman: fix conflicting alignment attributes (git-fixes). - regulator: bd9571mwv: Fix AVS and DVFS voltage range (git-fixes). - drivers: video: fbcon: fix NULL dereference in fbcon_cursor() (git-fixes). - usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control() (git-fixes). - USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem (git-fixes). - USB: cdc-acm: downgrade message to debug (git-fixes). - USB: cdc-acm: untangle a circular dependency between callback and softint (git-fixes). - PM: runtime: Fix ordering in pm_runtime_get_suppliers() (git-fixes). - drm/amdgpu: check alignment on CPU page for bo map (git-fixes). - drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings() (git-fixes). - staging: comedi: cb_pcidas64: fix request_irq() warn (git-fixes). - staging: comedi: cb_pcidas: fix request_irq() warn (git-fixes). - net: wan/lmc: unregister device when no matching device is found (git-fixes). - appletalk: Fix skb allocation size in loopback case (git-fixes). - ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr() (git-fixes). - brcmfmac: clear EAP/association status bits on linkdown events (git-fixes). - commit cb365ba- blacklist.conf: 04b38d012556 seccomp: Add missing return in non-void function - commit 0d7b046- x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc() (bsc#1152489). - commit 5c288fb- kABI: powerpc/pmem: Include pmem prototypes (bsc#1113295 git-fixes). - commit c94e7f1- net: dsa: felix: implement port flushing on .phylink_mac_link_down (git-fixes). - PCI: tegra: Fix ASPM-L1SS advertisement disable code (git-fixes). - PCI: tegra: Move "dbi" accesses to post common DWC initialization (git-fixes). - thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has changed (git-fixes). - coresight: tmc-etr: Fix barrier packet insertion for perf buffer (git-fixes). - dpaa_eth: copy timestamp fields to new skb in A-050385 workaround (git-fixes). - enetc: Let the hardware auto-advance the taprio base-time of 0 (git-fixes). - enetc: Workaround for MDIO register access issue (git-fixes). - dpaa_eth: fix the RX headroom size alignment (git-fixes). - dpaa_eth: update the buffer layout for non-A050385 erratum scenarios (git-fixes). - PCI: designware-ep: Fix the Header Type check (git-fixes). - coresight: etm4x: Fix save and restore of TRCVMIDCCTLR1 register (git-fixes). - coresight: etm4x: Fix issues on trcseqevr access (git-fixes). - dpaa_eth: Remove unnecessary boolean expression in dpaa_get_headroom (git-fixes). - commit 5b9762c- fuse: fix live lock in fuse_iget() (bsc#1184211). - fuse: fix bad inode (bsc#1184211). - commit 8283ce1- powerpc/sstep: Fix darn emulation (bsc#1156395). - powerpc/sstep: Fix incorrect return from analyze_instr() (bsc#1156395). - powerpc/sstep: Check instruction validity against ISA version before emulation (bsc#1156395). - commit 7671d9d- powerpc/pmem: Include pmem prototypes (bsc#1113295 git-fixes). - commit aa380dd- blacklist.conf: Add c420644c0a8f powerpc: Use mm_context vas_windows counter to issue CP_ABORT - commit c75afe3- powerpc/sstep: Fix load-store and update emulation (bsc#1156395). - powerpc/64s: Fix instruction encoding for lis in ppc_function_entry() (bsc#1065729). - powerpc/pseries/ras: Remove unused variable 'status' (bsc#1065729). - commit 9c1ced3- Update kabi files. - update from April 2021 maintenance update submission (commit fe55a5cff456) - commit c1ea1f7- locking/mutex: Fix non debug version of mutex_lock_io_nested() (git-fixes). - commit 3bace53- firewire: nosy: Fix a use-after-free bug in nosy_ioctl() (CVE-2021-3483 bsc#1184393). - commit 3abcfe1- media: v4l: ioctl: Fix memory leak in video_usercopy (bsc#1184120 CVE-2021-30002). - commit 968da96- drm/i915: Fix invalid access to ACPI _DSM objects (bsc#1184074). - commit 7bfde57- fix patch metadata - fix Patch-mainline: patches.suse/completion-Drop-init_completion-define.patch - commit 33fba8d- ibmvnic: Use 'skb_frag_address()' instead of hand coding it (bsc#1184114 ltc#192237). - commit 52ca26e- libbpf: Fix BTF dump of pointer-to-array-of-struct (bsc#1155518). - libbpf: Use SOCK_CLOEXEC when opening the netlink socket (bsc#1155518). - selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed (bsc#1155518). - libbpf: Clear map_info before each bpf_obj_get_info_by_fd (bsc#1155518). - samples, bpf: Add missing munmap in xdpsock (bsc#1155518). - selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier (bsc#1155518). - selftests/bpf: No need to drop the packet when there is no geneve opt (bsc#1155518). - commit 8d0ef1a- video: hyperv_fb: Fix a double free in hvfb_probe (git-fixes). - commit c457d1d- selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling (git-fixes). - commit fa2b85d- include/linux/sched/mm.h: use rcu_dereference in in_vfork() (git-fixes). - stop_machine: mark helpers __always_inline (git-fixes). - selinux: fix error initialization in inode_doinit_with_dentry() (git-fixes). - completion: Drop init_completion define (git-fixes). - lib/syscall: fix syscall registers retrieval on 32-bit platforms (git-fixes). - selinux: Fix error return code in sel_ib_pkey_sid_slow() (git-fixes). - commit 3909dc1- extcon: Fix error handling in extcon_dev_register (git-fixes). - extcon: Add stubs for extcon_register_notifier_all() functions (git-fixes). - staging: rtl8192e: Change state information from u16 to u8 (git-fixes). - staging: rtl8192e: Fix incorrect source in memcpy() (git-fixes). - usb: dwc2: Prevent core suspend when port connection flag is 0 (git-fixes). - usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board (git-fixes). - usb: musb: Fix suspend with devices connected for a64 (git-fixes). - usb: xhci-mtk: fix broken streams issue on 0.96 xHCI (git-fixes). - USB: cdc-acm: fix use-after-free after probe failure (git-fixes). - USB: cdc-acm: fix double free on probe failure (git-fixes). - cdc-acm: fix BREAK rx code path adding necessary calls (git-fixes). - usb: gadget: udc: amd5536udc_pci fix null-ptr-dereference (git-fixes). - commit 7e1215f- powerpc/pseries/mobility: handle premature return from H_JOIN (bsc#1181674 ltc#189159 git-fixes bsc#1183662 ltc#191922). - powerpc/pseries/mobility: use struct for shared state (bsc#1181674 ltc#189159 git-fixes bsc#1183662 ltc#191922). - commit e22e432- net: sched: disable TCQ_F_NOLOCK for pfifo_fast (bsc#1183405) - commit 3aa0c01- ACPICA: Enable sleep button on ACPI legacy wake (bsc#1181383). - commit 0d9d4e6- PM: runtime: Fix race getting/putting suppliers at probe (git-fixes). - drm/tegra: sor: Grab runtime PM reference across reset (git-fixes). - commit 064f8f4- ALSA: usb-audio: Apply sample rate quirk to Logitech Connect (git-fixes). - ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook (git-fixes). - ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO (git-fixes). - commit e6c8166- Update patches.suse/btrfs-fix-race-when-cloning-extent-buffer-during-rew.patch (bsc#1184193 CVE-2021-28964). - commit 2c0102a- Update references of patches.suse/edac-amd64-set-grain-per-dimm.patch - commit 881829d- bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs (bsc#1155518). - commit 5d2df4e- pinctrl: rockchip: fix restore error in resume (git-fixes). - commit 55f3605- fix patch metadata - fix Patch-mainline: patches.suse/mm-numa-fix-bad-pmd-by-atomically-check-for-pmd_trans_huge-when-marking-page-tables-prot_numa.patch - commit e108d2c- perf/x86/intel: Fix a crash caused by zero PEBS status (CVE-2021-28971 bsc#1184196). - commit fbc79f5- xen-blkback: don't leak persistent grants from xen_blkbk_map() (bsc#1183646, CVE-2021-28688, XSA-371). - commit f0c74da- blacklist.conf: Add qspinlock commit revert. - commit fbfdb5d- btrfs: fix exhaustion of the system chunk array due to concurrent allocations (bsc#1183386). - commit 419a4b8- btrfs: fix subvolume/snapshot deletion not triggered on mount (bsc#1184219). - btrfs: always pin deleted leaves when there are active tree mod log users (bsc#1184224). - btrfs: fix race when cloning extent buffer during rewind of an old root (bsc#1184193). - btrfs: fix stale data exposure after cloning a hole with NO_HOLES enabled (bsc#1184220). - btrfs: fix extent buffer leak on failure to copy root (bsc#1184218). - btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root (bsc#1184217). - commit ed1e8cf- blacklist.conf: breaks kABI - commit 7450a15- media: vicodec: add missing v4l2_ctrl_request_hdl_put() (git-fixes). - commit 1714c92- blacklist.conf: cosmetic fix - commit 1478eb5- media: cros-ec-cec: do not bail on device_init_wakeup failure (git-fixes). - commit 5533664- PM: EM: postpone creating the debugfs dir till fs_initcall (git-fixes). - bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD (git-fixes). - net: cdc-phonet: fix data-interface release on probe failure (git-fixes). - mac80211: fix double free in ibss_leave (git-fixes). - mac80211: fix rate mask reset (git-fixes). - platform/x86: intel-vbtn: Stop reporting SW_DOCK events (git-fixes). - drm/radeon: fix AGP dependency (git-fixes). - gpiolib: acpi: Add missing IRQF_ONESHOT (git-fixes). - ACPI: scan: Rearrange memory allocation in acpi_device_add() (git-fixes). - gianfar: Account for Tx PTP timestamp in the skb headroom (git-fixes). - gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP (git-fixes). - net: gianfar: Add of_node_put() before goto statement (git-fixes). - gianfar: Fix TX timestamping with a stacked DSA driver (git-fixes). - commit dbf2451- blacklist.conf: the fix is cosmetic - commit 5c3f4dc- bpf: Fix truncation handling for mod32 dst reg wrt zero (bsc#1184170 CVE-2021-3444). - bpf: Fix 32 bit src register truncation on div/mod (bsc#1184170). - commit af158b0- Update patch reference for a usbip fix (CVE-2021-29265 bsc#1184167) - commit 6988aeb- gianfar: fix jumbo packets+napi+rx overrun crash (CVE-2021-29264 bsc#1184168). - commit 9ae0342- Update patch reference of a PCI fix (CVE-2021-28972 bsc#1184198) - commit dc7fd0e- mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking page tables prot_numa (bsc#1168777). - commit c5a52b2- net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() (CVE-2021-29647 bsc#1184192). - commit f71857e- ovl: fix dentry leak in ovl_get_redirect (bsc#1184176). - ovl: fix unneeded call to ovl_change_flags() (bsc#1184176). - ovl: fix regression with re-formatted lower squashfs (bsc#1184176). - ovl: relax WARN_ON() when decoding lower directory file handle (bsc#1184176). - ovl: initialize error in ovl_copy_xattr (bsc#1184176). - ovl: fix out of date comment and unreachable code (bsc#1184176). - ovl: fix value of i_ino for lower hardlink corner case (bsc#1184176). - commit 6ae489b- ionic: linearize tso skb with too many frags (bsc#1167773). - nfp: flower: fix pre_tun mask id allocation (bsc#1154353). - flow_dissector: fix byteorder of dissected ICMP ID (bsc#1154353). - Revert "net: bonding: fix error return code of bond_neigh_init()" (bsc#1154353). - igc: Fix igc_ptp_rx_pktstamp() (bsc#1160634). - net/mlx5e: E-switch, Fix rate calculation division (jsc#SLE-8464). - commit dcb0376- Replace ANA log reread patch Replace the fix with a simpler version. The upstream community has agreed on the simpler version after the ECN has been ratified. deleted: patches.suse/nvme-re-read-ana-log-on-ns-changed-aen.patch new file: patches.suse/nvme-retrigger-ana-log-update-if-group-descriptor-isn-t.patch - commit 391a31f- nvme-fc: fix racing controller reset and create association (bsc#1183048). - commit 69b4441- Move patches.suse/nvme-fc-avoid-calling-_nvme_fc_abort_outstanding_ios-from-interrupt-context.patch Move the patch into the sorted section. - commit d6d55ac- series.conf: cleanup - update upstream reference and resort: patches.suse/scsi-lpfc-Change-wording-of-invalid-pci-reset-log-me.patch patches.suse/scsi-lpfc-Correct-function-header-comments-related-t.patch patches.suse/scsi-lpfc-Fix-ADISC-handling-that-never-frees-nodes.patch patches.suse/scsi-lpfc-Fix-FLOGI-failure-due-to-accessing-a-freed.patch patches.suse/scsi-lpfc-Fix-PLOGI-ACC-to-be-transmit-after-REG_LOG.patch patches.suse/scsi-lpfc-Fix-crash-caused-by-switch-reboot.patch patches.suse/scsi-lpfc-Fix-dropped-FLOGI-during-pt2pt-discovery-r.patch patches.suse/scsi-lpfc-Fix-incorrect-dbde-assignment-when-buildin.patch patches.suse/scsi-lpfc-Fix-lpfc_els_retry-possible-null-pointer-d.patch patches.suse/scsi-lpfc-Fix-nodeinfo-debugfs-output.patch patches.suse/scsi-lpfc-Fix-null-pointer-dereference-in-lpfc_prep_.patch patches.suse/scsi-lpfc-Fix-pt2pt-connection-does-not-recover-afte.patch patches.suse/scsi-lpfc-Fix-pt2pt-state-transition-causing-rmmod-h.patch patches.suse/scsi-lpfc-Fix-reftag-generation-sizing-errors.patch patches.suse/scsi-lpfc-Fix-stale-node-accesses-on-stale-RRQ-reque.patch patches.suse/scsi-lpfc-Fix-status-returned-in-lpfc_els_retry-erro.patch patches.suse/scsi-lpfc-Fix-unnecessary-null-check-in-lpfc_release.patch patches.suse/scsi-lpfc-Fix-use-after-free-in-lpfc_els_free_iocb.patch patches.suse/scsi-lpfc-Fix-vport-indices-in-lpfc_find_vport_by_vp.patch patches.suse/scsi-lpfc-Reduce-LOG_TRACE_EVENT-logging-for-vports.patch patches.suse/scsi-lpfc-Update-copyrights-for-12.8.0.7-and-12.8.0..patch patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.8.patch - commit 9b02aba- bpf: Add sanity check for upper ptr_limit (bsc#1183686 bsc#1183775). - bpf: Simplify alu_limit masking for pointer arithmetic (bsc#1183686 bsc#1183775). - bpf: Fix off-by-one for area size in creating mask to left (bsc#1183775 CVE-2020-27171). - bpf: Prohibit alu ops for pointer types not defining ptr_limit (bsc#1183686 CVE-2020-27170). - commit d95f56b- scsi: target: pscsi: Clean up after failure in pscsi_map_sg() (bsc#1183843). - commit 1af614d- scsi: target: pscsi: Avoid OOM in pscsi_map_sg() (bsc#1183843). - commit 036f522- blacklist.conf: Add 5ae5fbd21079 powerpc/perf: Fix handling of privilege level checks in perf interrupt context - commit a7c4b4d- series.conf: cleanup - update upstream reference and resort: patches.suse/netsec-restore-phy-power-state-after-controller-rese.patch - commit a6a1fc0- can: peak_usb: Revert "can: peak_usb: add forgotten supported devices" (git-fixes). - commit ab32250- ACPI: video: Add missing callback back for Sony VPCEH3U1E (git-fixes). - ACPICA: Always create namespace nodes using acpi_ns_create_node() (git-fixes). - drm/msm: fix shutdown hook in case GPU components failed to bind (git-fixes). - can: m_can: m_can_do_rx_poll(): fix extraneous msg loss warning (git-fixes). - can: c_can: move runtime PM enable/disable to c_can_platform (git-fixes). - can: c_can_pci: c_can_pci_remove(): fix use-after-free (git-fixes). - can: flexcan: flexcan_chip_freeze(): fix chip freeze for missing bitrate (git-fixes). - can: peak_usb: add forgotten supported devices (git-fixes). - commit 54aa0c3- nvme-tcp: fix possible hang when failing to set io queues (bsc#1181161). - commit 7c2d106- kernel/smp: make csdlock timeout depend on boot parameter (bsc#1180846). Explanation: this patch is meant to enable customers who encounter "lost IPI" issue to adjust the timeout to match their environment. The root cause is being investigated and we hope to drop it in the future. - commit 8e8af38- s390/vtime: fix increased steal time accounting (bsc#1183859). - commit c966973- usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy- (git-fixes). - usb-storage: Add quirk to defeat Kindle's automatic unload (git-fixes). - usb: gadget: configfs: Fix KASAN use-after-free (git-fixes). - USB: replace hardcode maximum usb string length by definition (git-fixes). - commit fe3af72- Revert "PM: runtime: Update device status before letting suppliers suspend" (git-fixes). - commit cc82105- net: korina: cast KSEG0 address to pointer in kfree (git-fixes). - commit cfb1933- net: core: introduce __netdev_notify_peers (bsc#1183871 ltc#192139). - commit 5f42996- ibmvnic: prefer strscpy over strlcpy (bsc#1183871 ltc#192139). - ibmvnic: remove unused spinlock_t stats_lock definition (bsc#1183871 ltc#192139). - ibmvnic: add comments for spinlock_t definitions (bsc#1183871 ltc#192139). - Refresh patches.suse/ibmvnic-serialize-access-to-work-queue-on-remove.patch - Refresh patches.suse/net-re-solve-some-conflicts-after-net-net-next-merge.patch - ibmvnic: fix miscellaneous checks (bsc#1183871 ltc#192139). - ibmvnic: avoid multiple line dereference (bsc#1183871 ltc#192139). - ibmvnic: fix braces (bsc#1183871 ltc#192139). - ibmvnic: fix block comments (bsc#1183871 ltc#192139). - Refresh patches.suse/ibmvnic-fix-a-race-between-open-and-reset.patch. - Refresh patches.suse/ibmvnic-serialize-access-to-work-queue-on-remove.patch. - Refresh patches.suse/net-re-solve-some-conflicts-after-net-net-next-merge.patch. - ibmvnic: prefer 'unsigned long' over 'unsigned long int' (bsc#1183871 ltc#192139). - ibmvnic: remove unnecessary rmb() inside ibmvnic_poll (bsc#1183871 ltc#192139). - ibmvnic: rework to ensure SCRQ entry reads are properly ordered (bsc#1183871 ltc#192139). - net: ethernet: ibm: ibmvnic: Fix some kernel-doc misdemeanours (bsc#1183871 ltc#192139). - ibmvnic: merge do_change_param_reset into do_reset (bsc#1183871 ltc#192139). - Refresh patches.suse/ibmvnic-fix-a-race-between-open-and-reset.patch - use __netdev_notify_peers in ibmvnic (bsc#1183871 ltc#192139). - commit ca7d43b- series.conf: cleanup - move unsortable patches out of sorted section patches.suse/0001-squashfs-fix-inode-lookup-sanity-checks.patch patches.suse/0002-squashfs-fix-xattr-id-and-id-lookup-sanity-checks.patch - commit 1d6e2f2- series.conf: cleanup - update upstream references and resort: patches.suse/PCI-rpadlpar-Fix-potential-drc_name-corruption-in-st.patch patches.suse/nvme-allocate-the-keep-alive-request-using-BLK_MQ_RE.patch patches.suse/nvme-fabrics-only-reserve-a-single-tag.patch patches.suse/nvme-merge-nvme_keep_alive-into-nvme_keep_alive_work.patch - commit 2e4b640- iio: gyro: mpu3050: Fix error handling in mpu3050_trigger_handler (git-fixes). - iio: hid-sensor-temperature: Fix issues of timestamp channel (git-fixes). - iio: hid-sensor-humidity: Fix alignment issue of timestamp channel (git-fixes). - iio: adis16400: Fix an error code in adis16400_initial_setup() (git-fixes). - iio: adc: ad7949: fix wrong ADC result due to incorrect bit mask (git-fixes). - iio: hid-sensor-prox: Fix scale not correct issue (git-fixes). - iio:adc:qcom-spmi-vadc: add default scale to LR_MUX2_BAT_ID channel (git-fixes). - usbip: Fix incorrect double assignment to udc->ud.tcp_rx (git-fixes). - efi: use 32-bit alignment for efi_guid_t literals (git-fixes). - firmware/efi: Fix a use after bug in efi_mem_reserve_persistent (git-fixes). - commit 5066b61- ASoC: rt5659: Update MCLK rate in set_sysclk() (git-fixes). - ASoC: simple-card-utils: Do not handle device clock (git-fixes). - commit f987c3c- ASoC: cs42l42: Always wait at least 3ms after reset (git-fixes). - ASoC: cs42l42: Don't enable/disable regulator at Bias Level (git-fixes). - ASoC: cs42l42: Fix mixer volume control (git-fixes). - ASoC: cs42l42: Fix channel width support (git-fixes). - commit 61d6928- ASoC: cs42l42: Fix Bitclock polarity inversion (git-fixes). - ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10 (git-fixes). - ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10 (git-fixes). - ASoC: es8316: Simplify adc_pga_gain_tlv table (git-fixes). - ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe (git-fixes). - commit 629faf0- ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current threshold (git-fixes). - ASoC: rt5670: Add emulated 'DAC1 Playback Switch' control (git-fixes). - ASoC: rt5670: Remove ADC vol-ctrl mute bits poking from Sto1 ADC mixer settings (git-fixes). - ASoC: rt5670: Remove 'HP Playback Switch' control (git-fixes). - ASoC: rt5670: Remove 'OUT Channel Switch' control (git-fixes). - ASoC: ak5558: Add MODULE_DEVICE_TABLE (git-fixes). - ASoC: ak4458: Add MODULE_DEVICE_TABLE (git-fixes). - ASoC: fsl_ssi: Fix TDM slot setup for I2S mode (git-fixes). - commit 01440d8- ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro (git-fixes). - ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air (git-fixes). - ALSA: hda: generic: Fix the micmute led init state (git-fixes). - commit fc72277- s390/qeth: fix notification for pending buffers during teardown (git-fixes). - s390/qeth: schedule TX NAPI on QAOB completion (git-fixes). - s390/qeth: improve completion of pending TX buffers (git-fixes). - s390/qeth: fix memory leak after failed TX Buffer allocation (git-fixes). - commit ffdf1ba- s390/dasd: fix hanging IO request during DASD driver unbind (git-fixes). - commit 77e1a65- s390/cio: return -EFAULT if copy_to_user() fails (git-fixes). - s390/crypto: return -EFAULT if copy_to_user() fails (git-fixes). - s390/cio: return -EFAULT if copy_to_user() fails (git-fixes). - commit 86038a4- squashfs: fix xattr id and id lookup sanity checks (bsc#1183750). - commit 8006352- squashfs: fix inode lookup sanity checks (bsc#1183750). - commit cd40a2e- PCI/LINK: Remove bandwidth notification (bsc#1183712). - commit 56c94c5- netsec: restore phy power state after controller reset (bsc#1183757). - commit 05da5bc- blacklist.conf: Append 'drm/amdgpu: Add missing BOOTUP_DEFAULT to profile_name[]' - commit 82b8ebe- drm/msm: Fix races managing the OOB state for timestamp vs (bsc#1152489) Backporting notes: * context changes - commit 58990b2- blacklist.conf: Append 'drm/msm: Fix race of GPU init vs timestamp power management.' - commit 5232b67- drm/vc4: hdmi: Restore cec physical address on reconnect (bsc#1152472) Backporting notes: * context changes * change vc4_hdmi to vc4->hdmi * removed references to encoder->hdmi_monitor - commit 7cd936b- blacklist.conf: Append 'drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask()' - commit 6048fb7- drm/mediatek: Fix aal size config (bsc#1152489) Backporting notes: * replaced mtk_ddp_write() with writel() - commit 5d50b21- drm/nouveau: bail out of nouveau_channel_new if channel init fails (bsc#1152489) Backporting notes: * replaces patches.suse/drm-bail-out-of-nouveau_channel_new-if-channel-init-.patch - commit b88077f- drm/sun4i: tcon: fix inverted DCLK polarity (bsc#1152489) Backporting notes: * context changes - commit 0c124bb- nvmet-rdma: Fix list_del corruption on queue establishment failure (bsc#1183501). - commit 8d20dc6- powerpc/book3s64/radix: Remove WARN_ON in destroy_context() (bsc#1183692 ltc#191963). - commit 418290b- nvme: allocate the keep alive request using BLK_MQ_REQ_NOWAIT (bsc#1182077). - nvme: merge nvme_keep_alive into nvme_keep_alive_work (bsc#1182077). - nvme-fabrics: only reserve a single tag (bsc#1182077). - commit c67a454- Update patch reference of x25 fix (CVE-2020-35519 bsc#1183696) - commit 6cd53a3- usbip: fix vudc to check for stream socket (git-fixes). - Refresh patches.suse/usbip-fix-vudc-usbip_sockfd_store-races-leading-to-g.patch. - commit ecca945- xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state (git-fixes). - xhci: Improve detection of device initiated wake signal (git-fixes). - commit 594832e- usbip: fix vhci_hcd to check for stream socket (git-fixes). - Refresh patches.suse/usbip-fix-vhci_hcd-attach_store-races-leading-to-gpf.patch. - commit a57cde3- usbip: fix stub_dev to check for stream socket (git-fixes). - Refresh patches.suse/usbip-fix-stub_dev-usbip_sockfd_store-races-leading-.patch. - commit 2ae7114- staging: rtl8712: Fix possible buffer overflow in r8712_sitesurvey_cmd (git-fixes). - usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing (git-fixes). - USB: serial: ch341: add new Product ID (git-fixes). - USB: serial: cp210x: add some more GE USB IDs (git-fixes). - USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter (git-fixes). - USB: usblp: fix a hang in poll() if disconnected (git-fixes). - spi: stm32: make spurious and overrun interrupts visible (git-fixes). - commit bc51b9d- staging: rtl8192e: Fix possible buffer overflow in _rtl92e_wx_set_scan (git-fixes). - media: v4l: vsp1: Fix uif null pointer access (git-fixes). - media: v4l: vsp1: Fix bru null pointer access (git-fixes). - PCI: xgene-msi: Fix race in installing chained irq handler (git-fixes). - PCI: mediatek: Add missing of_node_put() to fix reference leak (git-fixes). - PCI: Fix pci_register_io_range() memory leak (git-fixes). - Input: applespi - don't wait for responses to commands indefinitely (git-fixes). - mmc: mxs-mmc: Fix a resource leak in an error handling path in 'mxs_mmc_probe()' (git-fixes). - Platform: OLPC: Fix probe error handling (git-fixes). - commit 3f405a7- Goodix Fingerprint device is not a modem (git-fixes). - drm/compat: Clear bounce structures (git-fixes). - ethernet: alx: fix order of calls on resume (git-fixes). - ath9k: fix transmitting to stations in dynamic SMPS mode (git-fixes). - i2c: rcar: optimize cacheline to minimize HW race condition (git-fixes). - i2c: rcar: faster irq code to minimize HW race condition (git-fixes). - commit 31fcf0f- blacklist.conf: Add capbilities entry that was reverted - commit dc865b3- Update patch reference of r8188eu fix (CVE-2021-28660 bsc#1183593) - commit fc23dca- fnic: use scsi_host_busy_iter() to traverse commands (bsc#1179851). - scsi: core: add scsi_host_busy_iter() (bsc#1179851). - commit 583e298- Update tags patches.suse/ext4-check-journal-inode-extents-more-carefully.patch (bsc#1173485 bsc#1183509 CVE-2021-3428). - commit 41a8fa6- iommu/qcom: add missing put_device() call in qcom_iommu_of_xlate() (bsc#1183637). - commit de5577f- amd/amdgpu: Disable VCN DPG mode for Picasso (git-fixes). - commit f34c818- HSI: Fix PM usage counter unbalance in ssi_hw_init (git-fixes). - hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable (git-fixes). - gpio: zynq: fix reference leak in zynq_gpio functions (git-fixes). - net: fec: Fix reference count leak in fec series ops (git-fixes). - commit e27c26d- Update patch reference for fastrpc fix (CVE-2021-28375 bsc#1183596) - commit 00ee058- x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task (bsc#1152489). - commit f996a8c- blacklist.conf: e504e74cc3a2 x86/unwind/orc: Disable KASAN checking in the ORC unwinder, part 2 - commit 12930ec- Update bug reference for USB-audio fixes (bsc#1182552 bsc#1183598) - commit cd602fc- rpadlpar: fix potential drc_name corruption in store functions (bsc#1183416 ltc#191079). - commit cfa810c- net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call (git-fixes). - commit aa3dcbf- drm/panfrost: Remove unused variables in panfrost_job_close() (bsc#1152472) - commit 1350ad6- blacklist.conf: Append 'drm/panfrost: Move the GPU reset bits outside the timeout handler' - commit 5140c1f- binfmt_misc: fix possible deadlock in bm_register_write (git-fixes). - configfs: fix a use-after-free in __configfs_open_file (git-fixes). - mount: fix mounting of detached mounts onto targets that reside on shared mounts (git-fixes). - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page (git-fixes). - epoll: check for events when removing a timed out thread from the wait queue (git-fixes). - proc: fix lookup in /proc/net subdirectories after setns(2) (git-fixes). - apparmor: check/put label on apparmor_sk_clone_security() (git-fixes). - apparmor: Fix aa_label refcnt leak in policy_update (git-fixes). - exec: Move would_dump into flush_old_exec (git-fixes). - fuse: verify write return (git-fixes). - commit 55b045e- xfs: group quota should return EDQUOT when prj quota enabled (bsc#1180980). - commit dbe17e3- Delete patches.suse/sched-Reenable-interrupts-in-do_sched_yield.patch (bsc#1183530) This patch has been pointed out to break boot on qemu version 3 with azure config. - commit d2d00bd- smb3: Fix out-of-bounds bug in SMB2_negotiate() (bsc#1183540). - commit 860b1de- cifs: check pointer before freeing (bsc#1183534). - commit 03b0110- nvme-fabrics: fix kato initialization (bsc#1182591). - commit 4bcdc01- Remove patches.suse/nvme-hwmon-Return-error-code-when-registration-fails.patch hwmon_init() has no return value, hence we don't need this patch. The patch is only relevant for SLE15-SP3. - commit b165e35- bnxt_en: Re-write PCI BARs after PCI fatal error (git-fixes). - Refresh patches.suse/bnxt_en-Fix-AER-recovery.patch. - commit 05952f2- net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling ether_setup (git-fixes). - commit d9b9ce4- net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device (git-fixes). - commit 85c34ec- net: fec: Fix phy_device lookup for phy_reset_after_clk_enable() (git-fixes). - commit 6a3b52e- net: korina: fix kfree of rx/tx descriptor array (git-fixes). - commit f8b10af- xen/events: avoid handling the same event on two cpus at the same time (git-fixes). - commit d3a2816- xen/events: don't unmask an event channel when an eoi is pending (git-fixes). - commit 29c2c45- blacklist.conf: Add an inapplicable etnry for rtw88 - commit 65391e2- xen/events: reset affinity of 2-level event when tearing it down (git-fixes). - commit 43f9b1d- net: fec: Fix PHY init after phy_reset_after_clk_enable() (git-fixes). - commit 93f1c3c- net: enic: Cure the enic api locking trainwreck (git-fixes). - commit ee3b02c- net: dsa: rtl8366rb: Support all 4096 VLANs (git-fixes). - commit abc3215- drm/msm: Fix WARN_ON() splat in _free_object() (bsc#1152489) Backporting notes: * context changes - commit f2973f5- drm/panfrost: Don't corrupt the queue mutex on open/close (bsc#1152472) Backporting notes: * context changes - commit ab54c88- Update patches.suse/Xen-gnttab-handle-p2m-update-errors-on-a-per-slot-ba.patch (bsc#1183022 XSA-367 CVE-2021-28038): added CVE number - Update patches.suse/xen-netback-respect-gnttab_map_refs-s-return-value.patch (bsc#1183022 XSA-367 CVE-2021-28038): added CVE number - commit 91d5751- net: stmmac: use netif_tx_start|stop_all_queues() function (git-fixes). - commit 2c830e3- net: stmmac: Fix incorrect location to set real_num_rx|tx_queues (git-fixes). - commit 952bf43- drm/msm/gem: Add obj->lock wrappers (bsc#1152489) Backporting notes: * taken for 9b73bde39cf2 ("drm/msm: Fix use-after-free in msm_gem with carveout") * context changes - commit 37d3ff2- net: bonding: fix error return code of bond_neigh_init() (bsc#1154353). - bnxt_en: reliably allocate IRQ table on reset to avoid crash (jsc#SLE-8371 bsc#1153274). - commit f06fb53- drm: rcar-du: Fix crash when using LVDS1 clock for CRTC (bsc#1152489) Backporting notes: * context changes - commit 69d2605- drm/amd/powerplay: fix spelling mistake "smu_state_memroy_block" -> (bsc#1152489) Backporting notes: * rename amd/pm to amd/powerplay * context changes - commit 6a3acb4- drm/amdkfd: Put ACPI table after using it (bsc#1152489) Backporting notes: * context changes - commit c115d9f- drm/msm: Fix use-after-free in msm_gem with carveout (bsc#1152489) Backporting notes: * context changes - commit 485d7ba- drm/panfrost: Fix job timeout handling (bsc#1152472) Backporting notes: * context changes - commit ef50c07- video: fbdev: acornfb: remove free_unused_pages() (bsc#1152489) - commit 979bc2a- binfmt_misc: fix possible deadlock in bm_register_write (git-fixes). - misc/pvpanic: Export module FDT device table (git-fixes). - misc: fastrpc: restrict user apps from sending kernel RPC messages (git-fixes). - staging: rtl8188eu: prevent ->ssid overflow in rtw_wx_set_scan() (git-fixes). - staging: rtl8188eu: fix potential memory corruption in rtw_check_beacon_data() (git-fixes). - staging: rtl8192u: fix ->ssid overflow in r8192_wx_set_scan() (git-fixes). - staging: comedi: pcl818: Fix endian problem for AI command data (git-fixes). - staging: comedi: pcl711: Fix endian problem for AI command data (git-fixes). - staging: comedi: me4000: Fix endian problem for AI command data (git-fixes). - staging: comedi: dmm32at: Fix endian problem for AI command data (git-fixes). - staging: comedi: das800: Fix endian problem for AI command data (git-fixes). - staging: comedi: das6402: Fix endian problem for AI command data (git-fixes). - staging: comedi: adv_pci1710: Fix endian problem for AI command data (git-fixes). - staging: comedi: addi_apci_1500: Fix endian problem for command sample (git-fixes). - staging: comedi: addi_apci_1032: Fix endian problem for COS sample (git-fixes). - staging: ks7010: prevent buffer overflow in ks_wlan_set_scan() (git-fixes). - staging: rtl8712: unterminated string leads to read overflow (git-fixes). - usb: xhci: do not perform Soft Retry for some xHCI hosts (git-fixes). - USB: serial: io_edgeport: fix memory leak in edge_startup (git-fixes). - usbip: fix vudc usbip_sockfd_store races leading to gpf (git-fixes). - usbip: fix vhci_hcd attach_store() races leading to gpf (git-fixes). - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf (git-fixes). - usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement (git-fixes). - usb: renesas_usbhs: Clear PIPECFG for re-enabling pipe with other EPNUM (git-fixes). - usb: dwc3: qcom: Honor wakeup enabled/disabled state (git-fixes). - usb: gadget: f_uac1: stop playback on function disable (git-fixes). - usb: gadget: f_uac2: always increase endpoint max_packet_size by one audio slot (git-fixes). - USB: gadget: u_ether: Fix a configfs return code (git-fixes). - commit e8f5b15- ALSA: usb-audio: Fix "RANGE setting not yet supported" errors (git-fixes). - ALSA: usb-audio: Skip the clock selector inquiry for single connections (git-fixes). - ALSA: usb: Use DIV_ROUND_UP() instead of open-coding it (git-fixes). - commit 761b71c- block: rsxx: fix error return code of rsxx_pci_probe() (git-fixes). - software node: Fix node registration (git-fixes). - mmc: cqhci: Fix random crash when remove mmc module/card (git-fixes). - mmc: core: Fix partition switch time for eMMC (git-fixes). - commit c895b3d- ALSA: hda/hdmi: Cancel pending works before suspend (git-fixes). - ALSA: hda: Avoid spurious unsol event handling during S3/S4 (git-fixes). - ALSA: hda: Drop the BATCH workaround for AMD controllers (git-fixes). - commit dcc7c7c- Move upstreamed sound fixes into sorted section - commit 8879ec1- kABI: repair after "nVMX: Properly handle userspace interrupt window request" Restore the signature of member function of kvm_x86_ops, which is kABI. The implementation does not use the second argument any longer, so mark it as __unused. - commit ac3267f- jfs: Fix array index bounds check in dbAdjTree (bsc#1179454 CVE-2020-27815). - commit 8c97baa- KVM x86: Extend AMD specific guest behavior to Hygon virtual CPUs (bsc#1183447). - commit 07c11e6- KVM: x86: Add helpers to perform CPUID-based guest vendor check (bsc#1183445). Also refreshes: patches.suse/kvm-x86-fix-cpuid-range-checks-for-hypervisor-and-centaur-classes. - commit e678df6- mwifiex: pcie: skip cancel_work_sync() on reset failure path (git-fixes). - commit c95acf7- drm: meson_drv add shutdown function (git-fixes). - qxl: Fix uninitialised struct field head.surface_id (git-fixes). - media: usbtv: Fix deadlock on suspend (git-fixes). - media: rc: compile rc-cec.c into rc-core (git-fixes). - drm/msm/a5xx: Remove overwriting A5XX_PC_DBG_ECO_CNTL register (git-fixes). - misc: eeprom_93xx46: Add quirk to support Microchip 93LC46B eeprom (git-fixes). - ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling (git-fixes). - HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15 (git-fixes). - mmc: sdhci-of-dwcmshc: set SDHCI_QUIRK2_PRESET_VALUE_BROKEN (git-fixes). - HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter (git-fixes). - PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller (git-fixes). - ACPI: video: Add DMI quirk for GIGABYTE GB-BXBT-2807 (git-fixes). - platform/x86: acer-wmi: Add ACER_CAP_KBD_DOCK quirk for the Aspire Switch 10E SW3-016 (git-fixes). - platform/x86: acer-wmi: Add support for SW_TABLET_MODE on Switch devices (git-fixes). - platform/x86: acer-wmi: Add ACER_CAP_SET_FUNCTION_MODE capability flag (git-fixes). - platform/x86: acer-wmi: Add new force_caps module parameter (git-fixes). - platform/x86: acer-wmi: Cleanup accelerometer device handling (git-fixes). - platform/x86: acer-wmi: Cleanup ACER_CAP_FOO defines (git-fixes). - ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140 (git-fixes). - media: cx23885: add more quirks for reset DMA on some AMD IOMMU (git-fixes). - commit f5bb9e4- gcc-plugins: simplify GCC plugin-dev capability test (bsc#1181862). - update config files - GCC_PLUGINS=y - GCC_PLUGIN_CYC_COMPLEXITY=n - GCC_PLUGIN_LATENT_ENTROPY=n - GCC_PLUGIN_RANDSTRUCT=n - GCC_PLUGIN_STRUCTLEAK_USER=n - GCC_PLUGIN_STRUCTLEAK_BYREF=n - GCC_PLUGIN_STRUCTLEAK_BYREF_ALL=n - GCC_PLUGIN_STACKLEAK=n - commit f16b7b9- KVM: x86: Return -E2BIG when KVM_GET_SUPPORTED_CPUID hits max entries (bsc#1183428). - commit 3773bcc- KVM: nVMX: Properly handle userspace interrupt window request (bsc#1183427). - commit 3cc1c3a- patches.suse/0007-block-add-docs-for-gendisk-request_queue-refcount-he.patch: (bsc#1171295, git fixes (block drivers)). - patches.suse/0008-block-revert-back-to-synchronous-request_queue-remov.patch: (bsc#1171295, git fixes (block drivers)). - patches.suse/0009-blktrace-fix-debugfs-use-after-free.patch: (bsc#1171295, git fixes (block drivers)). Update patches related to bsc#1171295 which were merged sooner due to other reasons. - commit 2cd1e12- fix patch metadata - fix Patch-mainline: patches.suse/PCI-Add-a-REBAR-size-quirk-for-Sapphire-RX-5600-XT-P.patch - commit e2c9c81- series.conf: cleanup - move mainline patches into sorted section patches.suse/btrfs-unlock-extents-in-btrfs_zero_range-in-case-of-errors.patch patches.suse/btrfs-free-correct-amount-of-space-in-btrfs_delayed_inode_reserve_metadata.patch patches.suse/btrfs-don-t-flush-from-btrfs_delayed_inode_reserve_metadata.patch (no effect on expanded tree) - commit 00edfef- series.conf: cleanup - update upstream references and resort: patches.suse/ibmvnic-Fix-possibly-uninitialized-old_num_tx_queues.patch patches.suse/ibmvnic-always-store-valid-MAC-address.patch patches.suse/powerpc-pseries-Don-t-enforce-MSI-affinity-with-kdum.patch - commit 31cb799- Update patches.suse/apparmor-Fix-use-after-free-in-aa_audit_rule_init.patch (CVE-2019-18814 bsc#1156256). - commit 7636680- scsi: lpfc: Update copyrights for 12.8.0.7 and 12.8.0.8 changes (bsc#1182574). - scsi: lpfc: Update lpfc version to 12.8.0.8 (bsc#1182574). - scsi: lpfc: Correct function header comments related to ndlp reference counting (bsc#1182574). - scsi: lpfc: Reduce LOG_TRACE_EVENT logging for vports (bsc#1182574). - scsi: lpfc: Change wording of invalid pci reset log message (bsc#1182574). - scsi: lpfc: Fix crash caused by switch reboot (bsc#1182574). - scsi: lpfc: Fix pt2pt state transition causing rmmod hang (bsc#1182574). - scsi: lpfc: Fix nodeinfo debugfs output (bsc#1182574). - scsi: lpfc: Fix ADISC handling that never frees nodes (bsc#1182574). - scsi: lpfc: Fix PLOGI ACC to be transmit after REG_LOGIN (bsc#1182574). - scsi: lpfc: Fix dropped FLOGI during pt2pt discovery recovery (bsc#1182574). - scsi: lpfc: Fix status returned in lpfc_els_retry() error exit path (bsc#1182574). - scsi: lpfc: Fix use after free in lpfc_els_free_iocb (bsc#1182574). - scsi: lpfc: Fix null pointer dereference in lpfc_prep_els_iocb() (bsc#1182574). - scsi: lpfc: Fix unnecessary null check in lpfc_release_scsi_buf (bsc#1182574). - scsi: lpfc: Fix pt2pt connection does not recover after LOGO (bsc#1182574). - scsi: lpfc: Fix lpfc_els_retry() possible null pointer dereference (bsc#1182574). - scsi: lpfc: Fix FLOGI failure due to accessing a freed node (bsc#1182574). - scsi: lpfc: Fix stale node accesses on stale RRQ request (bsc#1182574). - scsi: lpfc: Fix reftag generation sizing errors (bsc#1182574). - scsi: lpfc: Fix vport indices in lpfc_find_vport_by_vpid() (bsc#1182574). - scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe (bsc#1182574). - commit 19f4943- patches.suse/loop-be-paranoid-on-exit-and-prevent-new-additions-r.patch: (bsc#1171295). - commit e598133- patches.suse/blktrace-annotate-required-lock-on-do_blk_trace_setu.patch: (bsc#1171295). - commit b590c4c- patches.suse/block-clarify-context-for-refcount-increment-helpers.patch: (bsc#1171295). - commit 252fb3e- KVM: x86: do not reset microcode version on INIT or RESET (bsc#1183412). - commit 16ce873- patches.suse/blktrace-Avoid-sparse-warnings-when-assigning-q-blk_.patch: (bsc#1171295). - commit fbf1322- patches.suse/blktrace-break-out-of-blktrace-setup-on-concurrent-c.patch: (bsc#1171295). - commit 3bfed47- net: mvneta: fix double free of txq->buf (git-fixes). - commit 1c0789f- net: mvneta: make tx buffer array agnostic (git-fixes). - commit 49c79a4- net: usb: ax88179_178a: fix missing stop entry in driver_info (git-fixes). - commit c51e8e9- mdio: fix mdio-thunder.c dependency & build error (git-fixes). - commit 89b67ef- net: ethernet: cavium: octeon_mgmt: use phy_start and phy_stop (git-fixes). - commit c74de85- ice: fix memory leak in ice_vsi_setup (git-fixes). - commit 7c0d558- ice: fix memory leak if register_netdev_fails (git-fixes). - commit 8c0fdc3- KVM: x86: list MSR_IA32_UCODE_REV as an emulated MSR (bsc#1183369). - commit 3238faa- PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter (bsc#1183366). - commit a3fe770- bpf,x64: Pad NOPs to make images converge more easily (bsc#1178163). - commit 9aadbb2- iavf: Fix incorrect adapter get in iavf_resume (git-fixes). - commit f71dec5- iavf: use generic power management (git-fixes). - commit 23712b8- net: stmmac: removed enabling eee in EEE set callback (git-fixes). - commit d783a1f- nvme: return an error if nvme_set_queue_count() fails (bsc#1180197). - commit a1a57eb- locks: reinstate locks_delete_block optimization (CVE-2019-19769 bsc#1159280). - locks: fix a potential use-after-free problem when wakeup a waiter (CVE-2019-19769 bsc#1159280). - commit 4a9973d- ibmvnic: remove excessive irqsave (bsc#1182485 ltc#191591). - commit 3c13549- KVM: x86: Set so called 'reserved CR3 bits in LM mask' at vCPU reset (bsc#1183288). - Refresh patches.kabi/kABI-Fix-kABI-after-AMD-SEV-PCID-fixes.patch. - commit cb76db4- iommu/amd: Fix sleeping in atomic in increase_address_space() (bsc#1183277). - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off (bsc#1183287). - iommu/vt-d: Do not use flush-queue when caching-mode is on (bsc#1183282). - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() (bsc#1183281). - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() (bsc#1183285). - iommu/vt-d: Fix ineffective devTLB invalidation for subdevices (bsc#1183284). - iommu/vt-d: Fix general protection fault in aux_detach_device() (bsc#1183283). - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct intel_svm_dev (bsc#1183286). - iommu/intel: Fix memleak in intel_irq_remapping_alloc (bsc#1183278). - iommu/vt-d: Avoid panic if iommu init fails in tboot system (bsc#1183280). - iommu/vt-d: Add get_domain_info() helper (bsc#1183279). - commit b6d08d2- KVM: SVM: Clear the CR4 register on reset (bsc#1183252). - commit e6e6e8c- netdevsim: init u64 stats for 32bit hardware (git-fixes). - net: usb: qmi_wwan: allow qmimux add/del with master up (git-fixes). - can: skb: can_skb_set_owner(): fix ref counting if socket was closed before setting skb ownership (git-fixes). - can: flexcan: invoke flexcan_chip_freeze() to enter freeze mode (git-fixes). - can: flexcan: enable RX FIFO after FRZ/HALT valid (git-fixes). - can: flexcan: assert FRZ bit in flexcan_chip_freeze() (git-fixes). - mt76: dma: do not report truncated frames to mac80211 (git-fixes). - gpio: pca953x: Set IRQ type when handle Intel Galileo Gen 2 (git-fixes). - drm/amdgpu: fix parameter error of RREG32_PCIE() in amdgpu_regs_pcie (git-fixes). - usbip: tools: fix build error for multiple definition (git-fixes). - commit 15f1b1c- rpm/check-for-config-changes: comment on the list To explain what it actually is. - commit e94bacf- rpm/check-for-config-changes: define ignores more strictly * search for whole words, so make wildcards explicit * use ' for quoting * prepend CONFIG_ dynamically, so it need not be in the list - commit f61e954- rpm/check-for-config-changes: sort the ignores They are growing so to make them searchable by humans. - commit 67c6b55- rpm/check-for-config-changes: add -mrecord-mcount ignore Added by 3b15cdc15956 (tracing: move function tracer options to Kconfig) upstream. - commit 018b013- scsi: iscsi: Verify lengths on passthrough PDUs (CVE-2021-27365 bsc#1182715). - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE (CVE-2021-27365 bsc#1182715). - scsi: iscsi: Restrict sessions and handles to admin capabilities (CVE-2021-27363 CVE-2021-27364 bsc#1182716 bsc#1182717). - commit e5416af- Refresh patches.suse/powerpc-pseries-Don-t-enforce-MSI-affinity-with-kdum.patch. Update patch metadata. - commit 5b5a037- Update config files. - commit a7710ca- arm64: make STACKPROTECTOR_PER_TASK configurable (bsc#1181862). - commit e710608- net: gemini: Fix another missing clk_disable_unprepare() in probe (git-fixes). - commit 6c94cd0- net: ethernet: ti: cpsw: fix clean up of vlan mc entries for host port (git-fixes). - commit 05decbb- net: arc_emac: Fix memleak in arc_mdio_probe (git-fixes). - commit 5898dda- net: gemini: Fix missing free_netdev() in error path of gemini_ethernet_port_probe() (git-fixes). - commit a31c30f- net: qcom/emac: add missed clk_disable_unprepare in error path of emac_clks_phase1_init (git-fixes). - commit 8bcb8c8- net/mlx5: Delete extra dump stack that gives nothing (git-fixes). - commit 8adc626- fsl/fman: fix eth hash table allocation (git-fixes). - commit 888f0c2- fsl/fman: check dereferencing null pointer (git-fixes). - commit 8b2d58f- fsl/fman: fix unreachable code (git-fixes). - commit 44dfe0c- fsl/fman: fix dereference null return value (git-fixes). - commit 54941fb- fsl/fman: use 32-bit unsigned integer (git-fixes). - commit b5edb51- net: spider_net: Fix the size used in a 'dma_free_coherent()' call (git-fixes). - commit 62d1c07- bpf_lru_list: Read double-checked variable once without lock (bsc#1155518). - bpf: Declare __bpf_free_used_maps() unconditionally (bsc#1155518). - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args (bsc#1155518). - commit 30d5020- ALSA: usb-audio: fix use after free in usb_audio_disconnect (bsc#1182552). - ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe (bsc#1182552). - commit e4781c6- blacklist.conf: Blacklist CONFIG_UCLAMP_TASK fixes dcd6dffb0a75 sched/core: Fix size of rq::uclamp initialization eaf5a92ebde5 sched/core: Fix reset-on-fork from RT with uclamp d81ae8aac85c sched/uclamp: Fix initialization of struct uclamp_rq 46609ce22703 sched/uclamp: Protect uclamp fast path code with static key - commit 04723ee- net: ethernet: aquantia: Fix wrong return value (git-fixes). - commit d7e8c64- net: dsa: rtl8366: Fix VLAN set-up (git-fixes). - commit 332c76d- nvme-hwmon: Return error code when registration fails (bsc#1177326). - commit 1f91b69- net: dsa: rtl8366: Fix VLAN semantics (git-fixes). - commit eaed13b- kbuild: improve cc-option to clean up all temporary files (bsc#1178330). - Refresh patches.suse/livepatch-dump-ipa-clones.patch - kbuild: use -S instead of -E for precise cc-option test in Kconfig (bsc#1178330). - commit 9b47d75- blacklist.conf: blacklist btrfs subpage RW related fixes As btrfs in SLE won't support subpage RW until SLE15-SP4. - commit 74db4da- udlfb: Fix memory leak in dlfb_usb_probe (git-fixes). - vt/consolemap: do font sum unsigned (git-fixes). - wlcore: Fix command execute failure 19 for wl12xx (git-fixes). - rsi: Move card interrupt handling to RX thread (git-fixes). - commit 9236947- net: usb: qmi_wwan: support ZTE P685M modem (git-fixes). - crypto: tcrypt - avoid signed overflow in byte count (git-fixes). - drm/amd/display: Guard against NULL pointer deref when get_i2c_info fails (git-fixes). - PCI: Add a REBAR size quirk for Sapphire RX 5600 XT Pulse (git-fixes). - drm/amdgpu: Add check to prevent IH overflow (git-fixes). - drm/hisilicon: Fix use-after-free (git-fixes). - media: uvcvideo: Allow entities with no pads (git-fixes). - media: v4l2-ctrls.c: fix shift-out-of-bounds in std_validate (git-fixes). - media: mceusb: sanity check for prescaler value (git-fixes). - staging: bcm2835-audio: Replace unsafe strcpy() with strscpy() (git-fixes). - staging: most: sound: add sanity check for function argument (git-fixes). - staging: fwserial: Fix error handling in fwserial_create (git-fixes). - brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet (git-fixes). - brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet (git-fixes). - ath10k: fix wmi mgmt tx queue full due to race condition (git-fixes). - Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (git-fixes). - Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl (git-fixes). - Input: elantech - fix protocol errors for some trackpoints in SMBus mode (git-fixes). - rsi: Fix TX EAPOL packet handling against iwlwifi AP (git-fixes). - commit 2608a34- ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet (git-fixes). - ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet (git-fixes). - ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet (git-fixes). - ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet (git-fixes). - ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr() (git-fixes). - commit 4e131ac- Refresh patches.suse/btrfs-don-t-flush-from-btrfs_delayed_inode_reserve_metadata.patch. - Refresh patches.suse/btrfs-free-correct-amount-of-space-in-btrfs_delayed_inode_reserve_metadata.patch. - Refresh patches.suse/btrfs-unlock-extents-in-btrfs_zero_range-in-case-of-errors.patch. - commit bafd254- kbuild: dummy-tools, support MPROFILE_KERNEL checks for ppc (bsc#1181862). - commit d053b67- ACPI: bus: Constify is_acpi_node() and friends (part 2) (git-fixes). - commit 5937701- rsxx: Return -EFAULT if copy_to_user() fails (git-fixes). - PM: runtime: Update device status before letting suppliers suspend (git-fixes). - commit e05652b- kbuild: stop filtering out $(GCC_PLUGINS_CFLAGS) from cc-option base (bcs#1181862). - kbuild: include scripts/Makefile.* only when relevant CONFIG is enabled (bcs#1181862). - commit 5819136- gcc-plugins: drop support for GCC <= 4.7 (bcs#1181862). - refresh config files (drop PLUGIN_HOSTCC) - kconfig: introduce m32-flag and m64-flag (bcs#1181862). - gcc-plugins: make it possible to disable CONFIG_GCC_PLUGINS again (bcs#1181862). - kbuild: change *FLAGS_.o to take the path relative to $(obj) (bcs#1181862). - kbuild: Fail if gold linker is detected (bcs#1181862). - commit 9094f62- kbuild: simplify GCC_PLUGINS enablement in dummy-tools/gcc (bcs#1181862). - commit 77ad0cc- kbuild: add dummy toolchains to enable all cc-option etc. in Kconfig (bcs#1181862). - Delete patches.rpmify/Kconfig-make-CONFIG_CC_CAN_LINK-always-true.patch. - commit 928cf1d- wireguard: kconfig: use arm chacha even with no neon (git-fixes). - wireguard: device: do not generate ICMP for non-IP packets (git-fixes). - wireguard: selftests: test multiple parallel streams (git-fixes). - crypto: Kconfig - CRYPTO_MANAGER_EXTRA_TESTS requires the manager (git-fixes). - crypto: arm64/poly1305-neon - reorder PAC authentication with SP update (git-fixes). - commit c931ac8- objtool: Fix ".cold" section suffix check for newer versions of GCC (bsc#1169514). - commit 4b4e63c- ibmvnic: always store valid MAC address (bsc#1182011 ltc#191844). - commit dbe1065- rpm/check-for-config-changes: declare sed args as an array So that we can reuse it in both seds. This also introduces IGNORED_CONFIGS_RE array which can be easily extended. - commit a1976d2- ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board (git-fixes). - ALSA: hda/realtek: Add quirk for Intel NUC 10 (git-fixes). - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ (git-fixes). - ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256 (git-fixes). - commit acba99b- Move upstreamed USB-audio fixes into sorted section - commit 28c79bd- ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits (git-fixes). - certs: Fix blacklist flag type confusion (git-fixes). - commit 83ee089- xen-netback: respect gnttab_map_refs()'s return value (bsc#1183022 XSA-367). - commit 5a927d9- Xen/gnttab: handle p2m update errors on a per-slot basis (bsc#1183022 XSA-367). - commit b394e32- watchdog: mei_wdt: request stop on unregister (git-fixes). - commit 1de5431- pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare() (git-fixes). - PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064 (git-fixes). - PCI: Align checking of syscall user config accessors (git-fixes). - random: fix the RNDRESEEDCRNG ioctl (git-fixes). - VMCI: Use set_page_dirty_lock() when unregistering guest memory (git-fixes). - staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table (git-fixes). - USB: serial: option: update interface mapping for ZTE P685M (git-fixes). - USB: serial: ftdi_sio: fix FTX sub-integer prescaler (git-fixes). - usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt (git-fixes). - usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1 (git-fixes). - commit b47408f- PCI: Decline to resize resources if boot config must be preserved (git-fixes). - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue (git-fixes). - misc: rtsx: init of rts522a add OCP power off when no card is present (git-fixes). - Input: i8042 - add ASUS Zenbook Flip to noselftest list (git-fixes). - Input: raydium_ts_i2c - do not send zero length (git-fixes). - Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox Series X|S (git-fixes). - mmc: sdhci-esdhc-imx: fix kernel panic when remove module (git-fixes). - fbdev: aty: SPARC64 requires FB_ATY_CT (git-fixes). - media: mceusb: Fix potential out-of-bounds shift (git-fixes). - staging: gdm724x: Fix DMA from stack (git-fixes). - commit 837d6c3- drm/msm/mdp5: Fix wait-for-commit for cmd panels (git-fixes). - drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY) (git-fixes). - crypto: arm64/sha - add missing module aliases (git-fixes). - crypto: bcm - Rename struct device_private to bcm_device_private (git-fixes). - crypto: aesni - prevent misaligned buffers on the stack (git-fixes). - drm/i915: Reject 446-480MHz HDMI clock on GLK (git-fixes). - drm/nouveau/kms: handle mDP connectors (git-fixes). - drm/sched: Cancel and flush all outstanding jobs before finish (git-fixes). - commit d2c4de8- rpm/check-for-config-changes: ignore more configs Specifially, these: * CONFIG_CC_HAS_* * CONFIG_CC_HAVE_* * CONFIG_CC_CAN_* * CONFIG_HAVE_[A-Z]*_COMPILER * CONFIG_TOOLS_SUPPORT_* are compiler specific too. This will allow us to use super configs using kernel's dummy-tools. - commit d12dcbd- objtool: Fix retpoline detection in asm code (bsc#1169514). - commit 15a53c5- ibmvnic: substitute mb() with dma_wmb() for send_*crq* functions (bsc#1183023 ltc#191791). - ibmvnic: simplify reset_long_term_buff function (bsc#1183023 ltc#191791). - commit 0960b37- printk: fix deadlock when kernel panic (bsc#1183018). - commit 5021e3a- objtool: Fix error handling for STD/CLD warnings (bsc#1169514). - commit fb7ed7c- ALSA: usb-audio: Apply the control quirk to Plantronics headsets (bsc#1182552). - ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar (bsc#1182552). - ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend() (bsc#1182552). - commit a815647- config: net: freescale: change xgmac-mdio to built-in References: bsc#1183015,bsc#1182595 - commit b29b589- Refresh patches.suse/ibmvnic-Fix-possibly-uninitialized-old_num_tx_queues.patch. Update patch metadata - commit d8a9644- ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk (bsc#1182552). - commit 0a8c8cf- exfat: add the dummy mount options to be backward compatible with staging/exfat (bsc#1182989). - commit d7a202d- exfat: add missing MODULE_ALIAS_FS() (bsc#1182989). - commit d9a7a48- ice: update the number of available RSS queues (jsc#SLE-7926). - ice: Fix state bits on LLDP mode switch (jsc#SLE-7926). - net/mlx5: Disable devlink reload for lag devices (jsc#SLE-8464). - ice: renegotiate link after FW DCB on (jsc#SLE-8464). - commit 51a1824- kbuild: dummy-tools, fix inverted tests for gcc (bcs#1181862). - commit e90afb3- ice: report correct max number of TCs (jsc#SLE-7926). - RDMA/hns: Disable RQ inline by default (jsc#SLE-8449). - RDMA/hns: Fix type of sq_signal_bits (jsc#SLE-8449). - net/mlx5: Disallow RoCE on lag device (jsc#SLE-8464). - net/mlx5: Disallow RoCE on multi port slave device (jsc#SLE-8464). - net/mlx5: Disable devlink reload for multi port slave device (jsc#SLE-8464). - net/mlx5e: E-switch, Fix rate calculation for overflow (jsc#SLE-8464). - commit 5c94309- ALSA: usb-audio: Drop bogus dB range in too low level (bsc#1182552). - ALSA: usb-audio: Don't abort even if the clock rate differs (bsc#1182552). - ALSA: usb-audio: Allow modifying parameters with succeeding hw_params calls (bsc#1182552). - commit 037cfcf- KVM: x86: Add RIP to the kvm_entry, i.e. VM-Enter, tracepoint Needed as a dependency of 0b40723a827 ("kvm: tracing: Fix unmatched kvm_entry and kvm_exit events", bsc#1182770). - commit bca7352- series.conf: cleanup - move unsortable patch out of sorted section patches.suse/ibmvnic-Fix-possibly-uninitialized-old_num_tx_queues.patch - commit be18357- Update kabi files. - update from March 2021 maintenance update submission (commit c35b1245712f) - commit ebf0b27- ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning (jsc#SLE-17268). - commit 2b2d062- blacklist.conf: c7ff651960a6 ("blktrace: fix blk_rq_issue documentation") Cosmetic. - commit ee4b49c- blacklist.conf: 179d16007236 ("block: remove superfluous param in blk_fill_rwbs()") Cleanup only. - commit ed3c6d0- kernel/smp: add more data to CSD lock debugging (bsc#1180846). - commit 08badc9- kernel/smp: prepare more CSD lock debugging (bsc#1180846). - commit d717867- Update config files: activate CONFIG_CSD_LOCK_WAIT_DEBUG for x86 (bsc#1180846). - commit f88a325- kernel/smp: add boot parameter for controlling CSD lock debugging (bsc#1180846). - commit fb4cf71- kernel/smp: Provide CSD lock timeout diagnostics (bsc#1180846). - update config files (CSD_LOCK_WAIT_DEBUG=n) - commit 59bec34- series.conf: refresh - update upstream reference and resort: patches.suse/ibmvnic-fix-a-race-between-open-and-reset.patch - commit 9ab8f38- kABI: Fix kABI after modifying struct __call_single_data (bsc#1180846). - commit 3c0b378- series.conf: cleanup - move submitted patches to appropriate section: patches.suse/btrfs-free-correct-amount-of-space-in-btrfs_delayed_inode_reserve_metadata.patch patches.suse/btrfs-don-t-flush-from-btrfs_delayed_inode_reserve_metadata.patch patches.suse/btrfs-cleanup-try_flush_qgroup.patch patches.suse/btrfs-remove-btrfs_inode-from-btrfs_delayed_inode_reserve_metadata.patch patches.suse/btrfs-simplify-code-flow-in-btrfs_delayed_inode_reserve_metadata.patch patches.suse/btrfs-unlock-extents-in-btrfs_zero_range-in-case-of-errors.patch (no effect on expanded tree) - commit d631784- smp: Add source and destination CPUs to __call_single_data (bsc#1180846). - commit 10244d3- powerpc/numa: Fix build when CONFIG_NUMA=n (bsc#1132477 ltc#175530). - commit 2b8436c- pseries/hotplug-memory: hot-add: skip redundant LMB lookup (bsc#1132477 ltc#175530). - Refresh patches.suse/powerpc-pseries-group-lmb-operation-and-memblock-s.patch. - commit 5c9ac54- powerpc/pseries: Don't enforce MSI affinity with kdump (bsc#1181655 ltc#190855). - commit 1c51dbc- pseries/drmem: don't cache node id in drmem_lmb struct (bsc#1132477 ltc#175530). - Refresh patches.suse/powerpc-pseries-group-lmb-operation-and-memblock-s.patch. - Refresh patches.suse/powerpc-pseries-update-device-tree-before-ejecting-h.patch. - commit 23f514c- cifs: fix nodfs mount option (bsc#1181710). - commit 94844a1- cifs: introduce helper for finding referral server (bsc#1181710). - commit f74681b- cifs: check all path components in resolved dfs target (bsc#1181710). - commit 91cd435- net: gemini: Fix missing clk_disable_unprepare() in error path of gemini_ethernet_port_probe() (git-fixes). - commit 401e086- net: nixge: fix potential memory leak in nixge_probe() (git-fixes). - commit cdc643b- net: hns3: fix for VLAN config when reset failed (git-fixes). - commit 4209fa0- net: hns3: add reset check for VF updating port based VLAN (git-fixes). - commit 9609b2a- net: ethernet: ave: Fix error returns in ave_init (git-fixes). - commit 166a8fe- net: ag71xx: add missed clk_disable_unprepare in error path of probe (git-fixes). - commit cead210- net: smc91x: Fix possible memory leak in smc_drv_probe() (git-fixes). - commit 342b694- net: macb: fix call to pm_runtime in the suspend/resume functions (git-fixes). - commit e7fb27b- net: macb: mark device wake capable when "magic-packet" property present (git-fixes). - commit 3e9fa11- net: macb: fix wakeup test in runtime suspend/resume routines (git-fixes). - commit 0dfe6dc- net: hns3: fix for mishandle of asserting VF reset fail (git-fixes). - commit 0c2ca01- smsc95xx: avoid memory leak in smsc95xx_bind (git-fixes). - commit 11f5fde- smsc95xx: check return value of smsc95xx_reset (git-fixes). - commit 02e26ea- net: bcmgenet: use hardware padding of runt frames (git-fixes). - commit b2f215a- powerpc/pseries/ras: Make init_ras_hotplug_IRQ() static (FATE#322022, bsc#1065729. git-fixes). - powerpc/pseries/eeh: Make pseries_pcibios_bus_add_device() static (FATE#324970, bsc#1078720, git-fixes). - commit 5742f0f- docs: filesystems: vfs: correct flag name (bsc#1182856). - commit 969c3e4- blacklist.conf: d0995b53130e f2fs: add missing documents of reserve_root/resuid/resgid - commit 95579b0- ceph: fix flush_snap logic after putting caps (bsc#1182854). - commit eacaa0a- Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() (git-fixes). - commit a24afd4- i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition (git-fixes). - HID: make arrays usage and value to be the same (git-fixes). - usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable (git-fixes). - USB: quirks: sort quirk entries (git-fixes). - NET: usb: qmi_wwan: Adding support for Cinterion MV31 (git-fixes). - commit ae76757- misc: eeprom_93xx46: Add module alias to avoid breaking support for non device tree users (git-fixes). - commit 761c100- config: refresh Previous armv7hl config update was done with gcc9 which may result in different config in general. Fortunately it was not the case here but we need to restore the header and CONFIG_GCC_VERSION value. - commit 31d864a- KVM: x86: Gracefully handle __vmalloc() failure during VM allocation (bsc#1182801). - commit 2b89cec- KVM: x86: Allocate new rmap and large page tracking when moving memslot (bsc#1182800). - commit 4ea5d1c- KVM: VMX: Condition ENCLS-exiting enabling on CPU support for SGX1 (bsc#1182798). - commit 41a7998- net: phy: marvell10g: fix null pointer dereference (git-fixes). - commit ba9ce5a- net: bcmgenet: re-remove bcmgenet_hfb_add_filter (git-fixes). - commit 46d342e- Cherry-pick ibmvnic patches from SP3 (jsc#SLE-17268). - commit fc08b49- kvm: tracing: Fix unmatched kvm_entry and kvm_exit events (bsc#1182770). - commit 0b40723- net: dsa: lantiq_gswip: fix and improve the unsupported interface error (git-fixes). - commit 966d874- net: octeon: mgmt: Repair filling of RX ring (git-fixes). - commit a1726f7- net: dsa: mt7530: set CPU port to fallback mode (git-fixes). - commit 7c6d69a- drivers: net: davinci_mdio: fix potential NULL dereference in davinci_mdio_probe() (git-fixes). - commit aad32ea- net: lpc-enet: fix error return code in lpc_mii_init() (git-fixes). - commit 023e4aa- Revert "net: bcmgenet: remove unused function in bcmgenet.c" (git-fixes). - commit 6e0622b- net: bcmgenet: Fix WoL with password after deep sleep (git-fixes). - commit 8a76658- net: bcmgenet: set Rx mode before starting netif (git-fixes). - commit 95bbb6f- net: phy: marvell10g: fix temperature sensor on 2110 (git-fixes). - commit 80b675a- net: re-solve some conflicts after net -> net-next merge (bsc#1176855 ltc#187293). - commit 1277782- ibmvnic: fix a race between open and reset (bsc#1176855 ltc#187293). - commit 1d1c0f0- armv7hl: lpae: Update config files. Disable KVM support (bsc#1182697) - commit d0fa566- phy: rockchip-emmc: emmc_phy_init() always return 0 (git-fixes). - mei: hbm: call mei_set_devstate() on hbm stop response (git-fixes). - virt: vbox: Do not use wait_event_interruptible when called from kernel context (git-fixes). - misc: eeprom_93xx46: Fix module alias to enable module autoprobe (git-fixes). - commit f380250- dm: fix bio splitting and its bio completion order for regular IO (git-fixes). - bcache: fix overflow in offset_to_stripe() (git-fixes). - dm crypt: avoid truncating the logical block size (git-fixes). - include/linux/memremap.h: remove stale comments (git-fixes). - commit f9b0dc3- blacklist.conf: Add 8faeb1ffd795 mm: memcg/slab: fix root memcg vmstats - commit 6424df5- blacklist:conf: Add 67197a4f28d2 mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary - commit c6bc092- cgroup: fix psi monitor for root cgroup (bsc#1182686). - commit 248e7d8- cgroup-v1: add disabled controller check in cgroup1_parse_param() (bsc#1182684). - commit 511e4ac- cgroup: Fix memory leak when parsing multiple source parameters (bsc#1182683). - commit 6c8979b- cpuset: fix race between hotplug work and later CPU offline (bsc#1182676). - commit dfdcc97- macros.kernel-source: Use spec_install_pre for certificate installation (boo#1182672). Since rpm 4.16 files installed during build phase are lost. - commit d0b887e- Refresh patches.suse/powerpc-Fix-build-error-in-paravirt.h.patch. Update patch metadata. - commit ca12b41- quota: Fix memory leak when handling corrupted quota file (bsc#1182650). - commit 2543668- dmaengine: hsu: disable spurious interrupt (git-fixes). - dmaengine: owl-dma: Fix a resource leak in the remove function (git-fixes). - dmaengine: fsldma: Fix a resource leak in an error handling path of the probe function (git-fixes). - dmaengine: fsldma: Fix a resource leak in the remove function (git-fixes). - Input: joydev - prevent potential read overflow in ioctl (git-fixes). - Input: elo - fix an error code in elo_connect() (git-fixes). - Input: sur40 - fix an error code in sur40_probe() (git-fixes). - HID: core: detect and skip invalid inputs to snto32() (git-fixes). - HID: wacom: Ignore attempts to overwrite the touch_max value from HID (git-fixes). - commit 9e6160a- btrfs: Unlock extents in btrfs_zero_range in case of errors (bsc#1182047). - commit bd5a9b2- btrfs: Simplify code flow in btrfs_delayed_inode_reserve_metadata (bsc#1182047). - commit bf6dd14- btrfs: Remove btrfs_inode from btrfs_delayed_inode_reserve_metadata (bsc#1182047). - commit fb6d272- btrfs: Cleanup try_flush_qgroup (bsc#1182047). - commit 13881b3- btrfs: Don't flush from btrfs_delayed_inode_reserve_metadata (bsc#1182047). - commit 942f628- btrfs: Free correct amount of space in btrfs_delayed_inode_reserve_metadata (bsc#1182047). - commit 22ecef4- rcu/nocb: Trigger self-IPI on late deferred wake up before (git-fixes) - commit 260172d- series.conf: cleanup - update upstream references and move into sorted section: patches.suse/powerpc-perf-hv-24x7-Dont-create-sysfs-event-files-f.patch patches.suse/powerpc-pseries-dlpar-handle-ibm-configure-connector.patch patches.suse/scsi-lpfc-Enhancements-to-LOG_TRACE_EVENT-for-better.patch patches.suse/scsi-lpfc-Fix-FW-reset-action-if-I-Os-are-outstandin.patch patches.suse/scsi-lpfc-Fix-NVMe-recovery-after-mailbox-timeout.patch patches.suse/scsi-lpfc-Fix-PLOGI-S_ID-of-0-on-pt2pt-config.patch patches.suse/scsi-lpfc-Fix-auto-sli_mode-and-its-effect-on-CONFIG.patch patches.suse/scsi-lpfc-Fix-crash-when-a-fabric-node-is-released-p.patch patches.suse/scsi-lpfc-Fix-crash-when-nvmet-transport-calls-host_.patch patches.suse/scsi-lpfc-Fix-error-log-messages-being-logged-follow.patch patches.suse/scsi-lpfc-Fix-target-reset-failing.patch patches.suse/scsi-lpfc-Fix-vport-create-logging.patch patches.suse/scsi-lpfc-Implement-health-checking-when-aborting-I-.patch patches.suse/scsi-lpfc-Prevent-duplicate-requests-to-unregister-w.patch patches.suse/scsi-lpfc-Refresh-ndlp-when-a-new-PRLI-is-received-i.patch patches.suse/scsi-lpfc-Simplify-bool-comparison.patch patches.suse/scsi-lpfc-Update-lpfc-version-to-12.8.0.7.patch patches.suse/scsi-lpfc-Use-the-nvme-fc-transport-supplied-timeout.patch - commit ff0a90f- rcu/nocb: Perform deferred wake up before last idle's (git-fixes) - commit f0bc502- rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers (git-fixes) - commit 7a90fca- sched: Reenable interrupts in do_sched_yield() (git-fixes) - commit 579dc67- btrfs: run delayed iputs when remounting RO to avoid leaking them (bsc#1182626). - btrfs: add assertion for empty list of transactions at late stage of umount (bsc#1182626). - btrfs: fix race between RO remount and the cleaner task (bsc#1182626). - btrfs: fix transaction leak and crash after cleaning up orphans on RO mount (bsc#1182626). - btrfs: fix transaction leak and crash after RO remount caused by qgroup rescan (bsc#1182626). - btrfs: lift read-write mount setup from mount and remount (bsc#1182626). - commit 2361750- arm64: Update config file. Set CONFIG_WATCHDOG_SYSFS to true (bsc#1182560) - commit 0c02797- blacklist.conf: printk: not critical; allow to use the full buffer when using log dumpers - commit 4e198dc- Remove debug patch for boot failure (bsc#1182602 ltc#190924). Delete patches.suse/prom_init-enable-varbose-prints-bsc-1178142.patch. - commit 55e7bdd- Update upstream reference and move into sorted section: patches.suse/target-fix-XCOPY-NAA-identifier-lookup.patch - commit e8f510f- target: disallow emulate_legacy_capacity with RBD object-map (bsc#1177109). - commit 9e5609a- powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan (bsc#1182602 ltc#190924). - commit f6d197a- lib/vsprintf: no_hash_pointers prints all addresses as unhashed (bsc#1182599). - commit f0a1f3e- drm/amd/display: Fix HDMI deep color output for DCE 6-11 (git-fixes). - drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction (git-fixes). - drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition (git-fixes). - gma500: clean up error handling in init (git-fixes). - commit af18775- rtc: s5m: select REGMAP_I2C (git-fixes). - spi: stm32: properly handle 0 byte transfer (git-fixes). - spi: atmel: Put allocated master before return (git-fixes). - spi: pxa2xx: Fix the controller numbering for Wildcat Point (git-fixes). - spi: spi-synquacer: fix set_cs handling (git-fixes). - regulator: core: Avoid debugfs: Directory ... already present! error (git-fixes). - crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key() (git-fixes). - crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) (git-fixes). - cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove() (git-fixes). - cpufreq: brcmstb-avs-cpufreq: Free resources in error path (git-fixes). - commit fbcd516- power: reset: at91-sama5d2_shdwc: fix wkupdbc mask (git-fixes). - regulator: s5m8767: Drop regulators OF node reference (git-fixes). - regulator: s5m8767: Fix reference count leak (git-fixes). - regulator: axp20x: Fix reference cout leak (git-fixes). - mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to 128-bytes (git-fixes). - mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe (git-fixes). - mmc: sdhci-sprd: Fix some resource leaks in the remove function (git-fixes). - Revert "platform/x86: ideapad-laptop: Switch touchpad attribute to be RO" (git-fixes). - commit 6d58f6a- gpio: pcf857x: Fix missing first interrupt (git-fixes). - i3c: master: dw: Drop redundant disec call (git-fixes). - linux/clk.h: use correct kernel-doc notation for 2 functions (git-fixes). - mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq() (git-fixes). - mfd: bd9571mwv: Use devm_mfd_add_devices() (git-fixes). - i2c: iproc: update slave isr mask (ISR_MASK_SLAVE) (git-fixes). - i2c: iproc: handle only slave interrupts which are enabled (git-fixes). - drm/fb-helper: Add missed unlocks in setcmap_legacy() (git-fixes). - drm/gma500: Fix error return code in psb_driver_load() (git-fixes). - commit e10cc76- amba: Fix resource leak for drivers without .remove (git-fixes). - clocksource/drivers/ixp4xx: Select TIMER_OF when needed (git-fixes). - clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs (git-fixes). - clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate() (git-fixes). - clk: meson: clk-pll: make "ret" a signed integer (git-fixes). - clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL (git-fixes). - clk: sunxi-ng: h6: Fix clock divider range on some clocks (git-fixes). - clk: sunxi-ng: h6: Fix CEC clock (git-fixes). - auxdisplay: ht16k33: Fix refresh rate handling (git-fixes). - commit 447d390- libnvdimm/dimm: Avoid race between probe and available_slots_show() (bsc#1170442). - Use the above upstream patch to replace the following in-house patch, patches.suse/nvdimm-Avoid-race-between-probe-and-reading-device-a.patch. - commit ef2652a- dm thin metadata: Fix use-after-free in dm_bm_set_read_only (bsc#1177529). - dm thin metadata: Avoid returning cmd->bm wild pointer on error (bsc#1177529). - dm: use noio when sending kobject event (bsc#1177529). - dm thin metadata: fix lockdep complaint (bsc#1177529). - dm thin: fix use-after-free in metadata_pre_commit_callback (bsc#1177529). - commit 3e2b6d9- blacklist.conf: remove the following lines because it is time to have them now, - a4a8d286586d4b28c8517a51db8d86954aadc74b - 3918e0667bbac99400b44fa5aef3f8be2eeada4a - commit e7046a1- KVM: nVMX: Handle pending #DB when injecting INIT VM-exit. Pulling in as a dependency of: "KVM: nVMX: Emulate MTF when performing instruction emulation" (bsc#1182380). - commit df4cbaa- cifs: report error instead of invalid when revalidating a dentry fails (bsc#1177440). - commit 2c3b276- powerpc/book3s64/hash: Add cond_resched to avoid soft lockup warning (bsc#1182571 ltc#191345). - commit a9f0cef- RDMA/efa: Use the correct current and new states in modify QP (git-fixes). - commit f2d6e28- net: rmnet: do not allow to add multiple bridge interfaces (git-fixes). - commit 4f39a57- net: rmnet: fix lower interface leak (git-fixes). - commit d007718- net: rmnet: print error message when command fails (git-fixes). - commit 9543352- net: qualcomm: rmnet: Allow configuration updates to existing devices (git-fixes). - commit 8b01fa7- blacklist.conf: update the blacklist - commit a0ee69e- x86/alternatives: Sync bp_patching update for avoiding NULL pointer exception (bsc#1152489). - commit 8753fb5- ibmvnic: Set to CLOSED state even on error (bsc#1084610 ltc#165122 git-fixes). - commit 7047a5a- ibmvnic: serialize access to work queue on remove (bsc#1065729). - commit 9671154- mm: proc: Invalidate TLB after clearing soft-dirty page state (bsc#1163776 ltc#183929 git-fixes). - commit c6ee8b1- xfs: reduce quota reservation when doing a dax unwritten extent conversion (git-fixes bsc#1182561). - commit 229a330- RDMA/efa: Drop double zeroing for sg_init_table() (bsc#1176248). - RDMA/efa: Remove redundant udata check from alloc ucontext response (bsc#1176248). - RDMA/efa: Add EFA 0xefa1 PCI ID (bsc#1176248). - RDMA/efa: User/kernel compatibility handshake mechanism (bsc#1176248). - RDMA/efa: Expose minimum SQ size (bsc#1176248). - RDMA/efa: Expose maximum TX doorbell batch (bsc#1176248). - RDMA/efa: Report host information to the device (bsc#1176248). - RDMA/efa: Fix setting of wrong bit in get/set_feature commands (bsc#1176248). - RDMA/efa: Count admin commands errors (bsc#1176248). - RDMA/efa: Count mmap failures (bsc#1176248). - RDMA/efa: Report create CQ error counter (bsc#1176248). - RDMA/efa: Use in-kernel offsetofend() to check field availability (bsc#1176248). - RDMA/efa: Do not delay freeing of DMA pages (bsc#1176248). - RDMA/efa: Properly document the interrupt mask register (bsc#1176248). - RDMA/efa: Unified getters/setters for device structs bitmask access (bsc#1176248). - commit f3e9801- xfs: fix an ABBA deadlock in xfs_rename (git-fixes bsc#1182558). - commit 2a9e635- vmxnet3: Remove buf_info from device accessible structures (bsc#1181671). - commit 7e4ecda- nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu (bsc#1182547). - commit 62bcd4c- rpm/kernel-subpackage-build: Workaround broken bot (https://github.com/openSUSE/openSUSE-release-tools/issues/2439) - commit b74d860- series.conf: cleanup - update upstream references and resort: patches.suse/nvme-hwmon-rework-to-avoid-devm-allocation.patch patches.suse/perf-x86-intel-uncore-Store-the-logical-die-id-inste.patch patches.suse/perf-x86-intel-uncore-With-8-nodes-get-pci-bus-die-i.patch - commit f696cf9- series.conf: cleanup - move unsortable patch out of sorted section patches.suse/mm-pmem-avoid-inserting-hugepage-pte-entry-with-fsdax-if-hugepage-support-is-disabled.patch - commit b1cf681- ALSA: usb-audio: Add implicit fb quirk for BOSS GP-10 (git-fixes). - ALSA: hda: Add another CometLake-H PCI ID (git-fixes). - ALSA: hda/hdmi: Drop bogus check at closing a stream (git-fixes). - ALSA: hda/realtek: modify EAPD in the ALC886 (git-fixes). - commit d3cd0e8- tpm: Remove tpm_dev_wq_lock (git-fixes). - tpm_tis: Clean up locality release (git-fixes). - tpm_tis: Fix check_locality for correct locality acquisition (git-fixes). - USB: serial: mos7720: fix error code in mos7720_write() (git-fixes). - USB: serial: mos7840: fix error code in mos7840_write() (git-fixes). - USB: serial: mos7720: improve OOM-handling in read_mos_reg() (git-fixes). - usb: musb: Fix runtime PM race in musb_queue_resume_work (git-fixes). - usb: dwc2: Make "trimming xfer length" a debug message (git-fixes). - usb: dwc2: Abort transaction after errors with unknown reason (git-fixes). - usb: dwc2: Do not update data length if it is 0 on inbound transfers (git-fixes). - usb: gadget: u_audio: Free requests only after callback (git-fixes). - commit 024918e- hwrng: timeriomem - Fix cooldown period calculation (git-fixes). - media: pxa_camera: declare variable when DEBUG is defined (git-fixes). - media: cx25821: Fix a bug when reallocating some dma memory (git-fixes). - media: qm1d1c0042: fix error return code in qm1d1c0042_init() (git-fixes). - media: lmedm04: Fix misuse of comma (git-fixes). - media: software_node: Fix refcounts in software_node_get_next_child() (git-fixes). - media: aspeed: fix error return code in aspeed_video_setup_video() (git-fixes). - media: pwc: Use correct device for DMA (bsc#1181133). - media: tm6000: Fix memleak in tm6000_start_stream (git-fixes). - media: media/pci: Fix memleak in empress_init (git-fixes). - media: em28xx: Fix use-after-free in em28xx_alloc_urbs (git-fixes). - media: vsp1: Fix an error handling path in the probe function (git-fixes). - media: camss: missing error code in msm_video_register() (git-fixes). - media: mt9v111: Remove unneeded device-managed puts (git-fixes). - media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt() (git-fixes). - media: i2c: ov5670: Fix PIXEL_RATE minimum value (git-fixes). - ata: ahci_brcm: Add back regulators management (git-fixes). - staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules (git-fixes). - ata: sata_nv: Fix retrieving of active qcs (git-fixes). - commit f91a4d1- ASoC: simple-card-utils: Fix device module clock (git-fixes). - ASoC: cs42l56: fix up error handling in probe (git-fixes). - ASoC: SOF: debug: Fix a potential issue on string buffer termination (git-fixes). - ASoC: cpcap: fix microphone timeslot mask (git-fixes). - ALSA: pcm: Don't call sync_stop if it hasn't been stopped (git-fixes). - ALSA: pcm: Assure sync with the pending stop operation at suspend (git-fixes). - ALSA: pcm: Call sync_stop at disconnection (git-fixes). - ALSA: usb-audio: Don't avoid stopping the stream at disconnection (git-fixes). - ALSA: usb-audio: More strict state change in EP (git-fixes). - ALSA: usb-audio: Handle invalid running state at releasing EP (git-fixes). - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode (git-fixes). - ALSA: usb-audio: Correct document for snd_usb_endpoint_free_all() (git-fixes). - ACPI: configfs: add missing check after configfs_register_default_group() (git-fixes). - ACPI: property: Satisfy kernel doc validator (part 2) (git-fixes). - ACPI: property: Satisfy kernel doc validator (part 1) (git-fixes). - ACPI: property: Fix fwnode string properties matching (git-fixes). - ACPICA: Fix exception code class checks (git-fixes). - commit 858c1eb- Move upstreamed uvcvideo fix into sorted esction - commit e05eaec- xen-blkback: fix error handling in xen_blkbk_map() (XSA-365 CVE-2021-26930 bsc#1181843). - commit e27d769- xen-scsiback: don't "handle" error by BUG() (XSA-362 CVE-2021-26931 bsc#1181753). - commit 0c27363- xen-netback: don't "handle" error by BUG() (XSA-362 CVE-2021-26931 bsc#1181753). - commit b515e6e- xen-blkback: don't "handle" error by BUG() (XSA-362 CVE-2021-26931 bsc#1181753). - commit 092d419- xen/arm: don't ignore return errors from set_phys_to_machine (XSA-361 CVE-2021-26932 bsc#1181747). - commit 3c70c9d- Xen/gntdev: correct error checking in gntdev_map_grant_pages() (XSA-361 CVE-2021-26932 bsc#1181747). - commit ee9fcdf- Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages() (XSA-361 CVE-2021-26932 bsc#1181747). - commit e4d325f- Xen/x86: also check kernel mapping in set_foreign_p2m_mapping() (XSA-361 CVE-2021-26932 bsc#1181747). - commit c07de95- Xen/x86: don't bail early from clear_foreign_p2m_mapping() (XSA-361 CVE-2021-26932 bsc#1181747). - commit 488df4e- xen/netback: fix spurious event detection for common event case (bsc#1182175). - commit 1ecc6fe- soc: aspeed: snoop: Add clock control logic (git-fixes). - memory: ti-aemif: Drop child node when jumping out loop (git-fixes). - reset: hisilicon: correct vendor prefix (git-fixes). - r8169: fix resuming from suspend on RTL8105e if machine runs on battery (git-fixes). - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case (git-fixes). - mac80211: fix potential overflow when multiplying to u32 integers (git-fixes). - ath9k: fix data bus crash when setting nf_override via debugfs (git-fixes). - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv (git-fixes). - Bluetooth: Put HCI device if inquiry procedure interrupts (git-fixes). - Bluetooth: drop HCI device reference before return (git-fixes). - Bluetooth: Fix initializing response id after clearing struct (git-fixes). - Bluetooth: hci_uart: Fix a race for write_work scheduling (git-fixes). - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function (git-fixes). - ath10k: Fix error handling in case of CE pipe init failure (git-fixes). - commit 8d04463- net: dsa: bcm_sf2: Fix overflow checks (git-fixes). - commit 8931641- net: bcmgenet: keep MAC in reset until PHY is up (git-fixes). - commit 1bd8cc0- net: mscc: ocelot: properly account for VLAN header length when setting MRU (git-fixes). - commit 8ecb099- net: rmnet: fix packet forwarding in rmnet bridge mode (git-fixes). - commit a6a4d18- net: rmnet: fix bridge mode bugs (git-fixes). - commit 6828c73- net: rmnet: use upper/lower device infrastructure (git-fixes). - commit 604e5d6- net: rmnet: do not allow to change mux id if mux id is duplicated (git-fixes). - commit 358ab29- net: rmnet: remove rcu_read_lock in rmnet_force_unassociate_device() (git-fixes). - commit 4387992- net: rmnet: fix suspicious RCU usage (git-fixes). - commit 5258625- net: rmnet: fix NULL pointer dereference in rmnet_changelink() (git-fixes). - commit 8bdc771- net: rmnet: fix NULL pointer dereference in rmnet_newlink() (git-fixes). - commit e563469- KVM: x86: allow KVM_STATE_NESTED_MTF_PENDING in kvm_state flags (bsc#1182490). - commit d0034b8- KVM: nVMX: don't clear mtf_pending when nested events are blocked (bsc#1182489). - commit c9e5f4e- ibmvnic: skip send_request_unmap for timeout reset (bsc#1182485 ltc#191591). - ibmvnic: add memory barrier to protect long term buffer (bsc#1182485 ltc#191591). - ibmvnic: change IBMVNIC_MAX_IND_DESCS to 16 (bsc#1182485 ltc#191591). - ibmvnic: Ensure that CRQ entry read are correctly ordered (bsc#1182485 ltc#191591). - commit 8ab7740- kABI: repair, after "nVMX: Emulate MTF when performinginstruction emulation" kvm_x86_ops is part of kABI as it's used by LTTng. But it's only read and never allocated in there, so growing it (without altering existing members' offsets) is fine. - commit d47d125- fscrypt: rename DCACHE_ENCRYPTED_NAME to DCACHE_NOKEY_NAME (bsc#1182446). - commit 8620c20- fscrypt: add fscrypt_is_nokey_name() (bsc#1182446). - commit da2337f- patches.suse/ext4-Avoid-freeing-inodes-on-dirty-list.patch: Move to sorted section, update tags - commit d9f0c0d- fs: fix lazytime expiration handling in __writeback_single_inode() (bsc#1182466). - commit a4f4504- ext4: fix superblock checksum failure when setting password salt (bsc#1182465). - commit 1201ea7- ext4: don't remount read-only with errors=continue on reboot (bsc#1182464). - commit d554ce9- ext4: fix deadlock with fs freezing and EA inodes (bsc#1182463). - commit 2354cfd- reiserfs: add check for an invalid ih_entry_count (bsc#1182462). - commit 2c4183a- quota: Sanity-check quota file headers on load (bsc#1182461). - commit 5a95e11- writeback: Drop I_DIRTY_TIME_EXPIRE (bsc#1182460). - commit 6f11bc3- ubifs: Fix error return code in ubifs_init_authentication() (bsc#1182459). - commit 97d2ec0- ubifs: wbuf: Don't leak kernel memory to flash (bsc#1182458). - commit bce8f1a- ubifs: prevent creating duplicate encrypted filenames (bsc#1182457). - commit 80e0969- ubifs: ubifs_add_orphan: Fix a memory leak bug (bsc#1182456). - commit bf8f1af- ubifs: ubifs_jnl_write_inode: Fix a memory leak bug (bsc#1182455). patches.suse/ubifs-xattr-Fix-some-potential-memory-leaks-while-it.patch: Refresh and add now relevant bits. - commit 0b538c3- ubifs: Fix ubifs_tnc_lookup() usage in do_kill_orphans() (bsc#1182454). - commit fdbb549- ext4: fix bug for rename with RENAME_WHITEOUT (bsc#1182449). - commit 5f81ca3- ext4: fix a memory leak of ext4_free_data (bsc#1182447). - commit 798e94c- mm: thp: kABI: move the added flag to the end of enum (bsc#1181896 ltc#191273). - commit 5a6cff9- ext4: prevent creating duplicate encrypted filenames (bsc#1182446). - commit ebbed3b- block: fix inflight statistics of part0 (bsc#1182445). - commit 3645427- blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue (bsc#1182444). - commit 25d39da- blk-mq: insert request not through ->queue_rq into sw/scheduler queue (bsc#1182443). - commit a0c44a1- blk-mq: call commit_rqs while list empty but error happen (bsc#1182442). - commit bc0709b- block: respect queue limit of max discard segment (bsc#1182441). - commit 78f8ad6- block: virtio_blk: fix handling single range discard request (bsc#1182439). - commit a829826- xfs: fix the forward progress assertion in xfs_iwalk_run_callbacks (git-fixes bsc#1182430). - commit 251c330- drm/amd/display: Decrement refcount of dc_sink before reassignment (git-fixes). - drm/amd/display: Free atomic state after drm_atomic_commit (git-fixes). - drm/amd/display: Fix dc_sink kref count in emulated_link_detect (git-fixes). - commit 0a02ed8- clk: sunxi-ng: mp: fix parent rate change flag check (git-fixes). - firmware_loader: align .builtin_fw to 8 (git-fixes). - platform/x86: hp-wmi: Disable tablet-mode reporting by default (git-fixes). - commit 3ec7f46- KVM: nVMX: Emulate MTF when performing instruction emulation (bsc#1182380). - commit d82f9c0- tracing: Check length before giving out the filter buffer (git-fixes). - commit d3dfea0- tracing: Do not count ftrace events in top level enable output (git-fixes). - commit 9eb30ee- tracing/kprobe: Fix to support kretprobe events on unloaded modules (git-fixes). - commit 19d30cc- KVM: x86: remove stale comment from struct x86_emulate_ctxt (bsc#1182406). - commit 0a00f86- mm/pmem: avoid inserting hugepage PTE entry with fsdax if hugepage support is disabled (bsc#1181896 ltc#191273). - commit 5527d63- fgraph: Initialize tracing_graph_pause at task creation (git-fixes). - commit ac6ab62- RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes (bsc#1169709) - commit f19dffe- KVM: x86: clear stale x86_emulate_ctxt->intercept value (bsc#1182381). - commit ffa8b86- drm/i915/guc: Update to use firmware v49.0.1 (CVE-2020-12362 CVE-2020-12363 CVE-2020-12364 CVE-2020-12373 bsc#1181720 bsc#1181735 bsc#1181736 bsc#1181738). - commit d2373bb- KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI (bsc#1182374). - commit c629183- tracing/kprobes: Do the notrace functions check without kprobes on ftrace (git-fixes). - Update config files. - commit dd6e75e- fix patch metadata - fix Patch-mainline: patches.suse/0003-caif-no-need-to-check-return-value-of-debugfs_create.patch - commit f7a521f- drm/sun4i: dw-hdmi: Fix max. frequency for H6 (bsc#1152472) - commit acb3f2a- drm/sun4i: Fix H6 HDMI PHY configuration (bsc#1152472) - commit 039ccc9- drm/sun4i: dw-hdmi: always set clock rate (bsc#1152472) - commit 0e99073- drm/sun4i: tcon: set sync polarity for tcon1 channel (bsc#1152472) - commit 03d6bea- drm/vc4: hvs: Fix buffer overflow with the dlist handling (bsc#1152489) - commit b8a95b9- drm/meson: Unbind all connectors on module removal (bsc#1152472) - commit b5e929b- matroxfb: avoid -Warray-bounds warning (bsc#1152472) - commit f5716ba- net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes (git-fixes). - commit 2c2d766- net/sonic: Add mutual exclusion for accessing shared state (git-fixes). - commit 52ed672- net: stmmac: Always arm TX Timer at end of transmission start (git-fixes). - commit 6058ba7- net: stmmac: Fix the TX IOC in xmit path (git-fixes). - commit 0d8ff7f- net: stmmac: Enable 16KB buffer size (git-fixes). - commit c5a734b- net: stmmac: 16KB buffer must be 16 byte aligned (git-fixes). - commit c88cefc- net: stmmac: RX buffer size must be 16 byte aligned (git-fixes). - commit d10b760- net: stmmac: xgmac: Clear previous RX buffer size (git-fixes). - commit 53673df- net: stmmac: Do not accept invalid MTU values (git-fixes). - commit ac657b6- net: stmmac: selftests: Needs to check the number of Multicast regs (git-fixes). - commit 8826854- net: caif: Fix debugfs on 64-bit platforms (git-fixes). - commit 7a8758b- caif: no need to check return value of debugfs_create functions (git-fixes). - commit 756b62e- net: axienet: Fix error return code in axienet_probe() (git-fixes). - commit 6ec2abe- net: netsec: Correct dma sync for XDP_TX frames (git-fixes). - commit 8040572- net: gro: do not keep too many GRO packets in napi->rx_list (bsc#1154353). - commit 76fde4b- kernel-binary.spec: Add back initrd and image symlink ghosts to filelist (bsc#1182140). Fixes: 76a9256314c3 ("rpm/kernel-{source,binary}.spec: do not include ghost symlinks (boo#1179082).") - commit 606c9d1- xfs: ratelimit xfs_discard_page messages (bsc#1182283). - commit 672719e- xfs: scrub should mark a directory corrupt if any entries cannot be iget'd (git-fixes bsc#1182278). - commit 55cdbf1- Drop HID logitech patch that caused a regression (bsc#1182259) Delete patches.suse/HID-logitech-dj-add-the-G602-receiver.patch blacklist.conf: add the dropped entry - commit fc205a0- xfs: fix parent pointer scrubber bailing out on unallocated inodes (git-fixes bsc#1182276). - commit 68a744e- xfs: return corresponding errcode if xfs_initialize_perag() fail (git-fixes bsc#1182275). - commit adf2653- xfs: fix the minrecs logic when dealing with inode root child blocks (git-fixes bsc#1182273). - commit 5d5cd17- xfs: ensure inobt record walks always make forward progress (git-fixes bsc#1182272). - commit 5d91094- x86/apic: Add extra serialization for non-serializing MSRs (bsc#1152489). - commit 52e6a50- xfs: strengthen rmap record flags checking (git-fixes bsc#1182271). - commit 0a8fcac- squashfs: add more sanity checks in xattr id lookup (git-fixes bsc#1182268). - commit f6143c2- squashfs: add more sanity checks in inode lookup (git-fixes bsc#1182267). - commit 81b879a- squashfs: add more sanity checks in id lookup (git-fixes bsc#1182266). - commit a860e79- vfs: Convert squashfs to use the new mount API (git-fixes bsc#1182265). - commit 961749a- mm: thp: fix MADV_REMOVE deadlock on shmem THP (CVE-2020-29368, bsc#1179660.). - commit 9d15b36- mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked() (CVE-2020-29368, bsc#1179660.). - commit 842b18f- rpm/post.sh: Avoid purge-kernel for the first installed kernel (bsc#1180058) - commit c29e77d- blacklist.conf: 20bf2b378729 x86/build: Disable CET instrumentation in the kernel - commit ae0a855- fix patch metadata - fix upstream reference: patches.suse/net-hns3-add-a-check-for-queue_id-in-hclge_reset_vf_.patch - commit 33a1a9d- series.conf: cleanup - move unsortable patch out of sorted section patches.suse/powerpc-pseries-extract-host-bridge-from-pci_bus-pri.patch - commit 05c22a3- regulator: Fix lockdep warning resolving supplies (git-fixes). - commit 83723b8- i2c: stm32f7: fix configuration of the digital filter (git-fixes). - i2c: mediatek: Move suspend and resume handling to NOIRQ phase (git-fixes). - mac80211: 160MHz with extended NSS BW in CSA (git-fixes). - iwlwifi: mvm: guard against device removal in reprobe (git-fixes). - iwlwifi: mvm: invalidate IDs of internal stations at mvm start (git-fixes). - iwlwifi: pcie: fix context info memory leak (git-fixes). - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap (git-fixes). - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() (git-fixes). - iwlwifi: mvm: skip power command when unbinding vif during CSA (git-fixes). - regulator: core: avoid regulator_resolve_supply() race condition (git-fixes). - commit c869ffc- net: mscc: ocelot: fix address ageing time (again) (git-fixes). - commit 2561722- dpaa2-eth: fix return codes used in ndo_setup_tc (git-fixes). - commit 14e0d91- qlcnic: fix missing release in qlcnic_83xx_interrupt_test (git-fixes). - commit d3915bd- net: sun: fix missing release regions in cas_init_one() (git-fixes). - commit 5243443- net: mscc: ocelot: ANA_AUTOAGE_AGE_PERIOD holds a value in seconds, not ms (git-fixes). - commit 8f77ca6- net: moxa: Fix a potential double 'free_irq()' (git-fixes). - commit 6d56ae2- powerpc/pseries: extract host bridge from pci_bus prior to bus removal (bsc#1182171 ltc#190900). - commit 9deaa93- cxgb4: fix the panic caused by non smac rewrite (git-fixes). - commit 0f6aca4- nvme-hwmon: rework to avoid devm allocation (bsc#1177326). - commit bc99792- Update config files: armv7hl: Set ledtrig-default-on as builtin (bsc#1182128) - commit 27d7915- series.conf: cleanup - update upstream reference and resort: patches.suse/ibmvnic-Clear-failover_pending-if-unable-to-schedule.patch - commit f78f850- powerpc/perf/hv-24x7: Dont create sysfs event files for dummy events (bsc#1182118 ltc#190624). - commit 2178630- Update config files: Set ledtrig-default-on as builtin (bsc#1182128) - commit e422083- net: hns3: add a check for queue_id in hclge_reset_vf_queue() (git-fixes). - net/mlx5e: Update max_opened_tc also when channels are closed (git-fixes). - net: mvpp2: TCAM entry enable should be written after SRAM data (git-fixes). - igc: check return value of ret_val in igc_config_fc_after_link_up (git-fixes). - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr (git-fixes). - igc: Report speed and duplex as unknown when device is runtime suspended (git-fixes). - net/mlx5e: Reduce tc unsupported key print level (git-fixes). - net/mlx5: Fix memory leak on flow table creation error flow (git-fixes). - igc: fix link speed advertising (git-fixes). - cxgb4/chtls: Fix tid stuck due to wrong update of qid (git-fixes). - bnxt_en: Improve stats context resource accounting with RDMA driver loaded (git-fixes). - net: mvpp2: Remove Pause and Asym_Pause support (git-fixes). - mlxsw: core: Increase critical threshold for ASIC thermal zone (git-fixes). - mlxsw: core: Add validation of transceiver temperature thresholds (git-fixes). - net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups (git-fixes). - net/mlx5e: Fix two double free cases (git-fixes). - net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address (git-fixes). - chtls: Fix chtls resources release sequence (git-fixes). - chtls: Added a check to avoid NULL pointer dereference (git-fixes). - chtls: Replace skb_dequeue with skb_peek (git-fixes). - chtls: Fix panic when route to peer not configured (git-fixes). - chtls: Remove invalid set_tcb call (git-fixes). - chtls: Fix hardware tid leak (git-fixes). - net: hns3: fix the number of queues actually used by ARQ (git-fixes). - qed: select CONFIG_CRC32 (git-fixes). - net: hns: fix return value check in __lb_other_process() (git-fixes). - net: mvpp2: fix pkt coalescing int-threshold configuration (git-fixes). - tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS (git-fixes). - virtio_net: Fix recursive call to cpus_read_lock() (git-fixes). - net: mvpp2: Fix GoP port 3 Networking Complex Control configurations (git-fixes). - net: mvpp2: prs: fix PPPoE with ipv6 packet parse (git-fixes). - net: mvpp2: Add TCAM entry to drop flow control pause frames (git-fixes). - net: mvpp2: disable force link UP during port init procedure (git-fixes). - iavf: fix double-release of rtnl_lock (git-fixes). - i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs (git-fixes). - virtio_net: Fix error code in probe() (git-fixes). - ixgbe: avoid premature Rx buffer reuse (git-fixes). - i40e: avoid premature Rx buffer reuse (git-fixes). - net/mlx4_en: Handle TX error CQE (bsc#1181854). - net/mlx4_en: Avoid scheduling restart task if it is already running (bsc#1181854). - net/mlx5: Fix wrong address reclaim when command interface is down (git-fixes). - net: mvpp2: Fix error return code in mvpp2_open() (git-fixes). - chelsio/chtls: fix a double free in chtls_setkey() (git-fixes). - cxgb3: fix error return code in t3_sge_alloc_qset() (git-fixes). - net: broadcom CNIC: requires MMU (git-fixes). - chelsio/chtls: fix panic during unload reload chtls (git-fixes). - net: ena: set initial DMA width to avoid intel iommu issue (git-fixes). - i40e: Fix removing driver while bare-metal VFs pass traffic (git-fixes). - bnxt_en: Release PCI regions when DMA mask setup fails during probe (git-fixes). - bnxt_en: fix error return code in bnxt_init_board() (git-fixes). - bnxt_en: fix error return code in bnxt_init_one() (git-fixes). - net/mlx4_core: Fix init_hca fields offset (git-fixes). - net/mlx5: Disable QoS when min_rates on all VFs are zero (git-fixes). - net/mlx5: Add handling of port type in rule deletion (git-fixes). - mlxsw: core: Use variable timeout for EMAD retries (git-fixes). - qed: fix error return code in qed_iwarp_ll2_start() (git-fixes). - bnxt_en: read EEPROM A2h address using page 0 (git-fixes). - net/mlx5: Fix deletion of duplicate rules (git-fixes). - chelsio/chtls: fix always leaking ctrl_skb (git-fixes). - chelsio/chtls: fix memory leaks caused by a race (git-fixes). - chelsio/chtls: fix memory leaks in CPL handlers (git-fixes). - chelsio/chtls: fix deadlock issue (git-fixes). - cxgb4: set up filter action after rewrites (git-fixes). - chelsio/chtls: fix tls record info to user (git-fixes). - chelsio/chtls: correct function return and return type (git-fixes). - chelsio/chtls: correct netdevice for vlan interface (git-fixes). - chelsio/chtls: fix socket lock (git-fixes). - commit f8ae7ea- blacklist.conf: 9ad22e165994 x86/debug: Fix DR6 handling - commit b5c23b5- xen/netback: avoid race in xenvif_rx_ring_slots_available() (bsc#1065600). - commit b061a0d- series.conf: cleanup - update upstream references and move to sorted section: patches.suse/x86-xen-avoid-warning-in-Xen-pv-guest-with-CONFIG_AM.patch. patches.suse/xen-blkfront-allow-discard-nodes-to-be-optional.patch. - commit 9ed652c- mt76: dma: fix a possible memory leak in mt76_add_fragment() (git-fixes). - commit 8ae7076- fix patches metadata - fix Patch-mainline: patches.suse/0002-x86-msi-Only-use-high-bits-of-MSI-address-for-DMAR-u.patch patches.suse/0003-x86-ioapic-Handle-Extended-Destination-ID-field-in-R.patch patches.suse/0004-x86-apic-Support-15-bits-of-APIC-ID-in-IOAPIC-MSI-wh.patch patches.suse/0005-x86-kvm-Add-KVM_FEATURE_MSI_EXT_DEST_ID.patch - commit e28768c- USB: serial: option: Adding support for Cinterion MV31 (git-fixes). - USB: serial: cp210x: add pid/vid for WSDA-200-USB (git-fixes). - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 (git-fixes). - USB: usblp: don't call usb_set_interface if there's a single alt (git-fixes). - Input: xpad - sync supported devices with fork on GitHub (git-fixes). - mmc: core: Limit retries when analyse of SDIO tuples fails (git-fixes). - drm/amd/display: Revert "Fix EDID parsing after resume from suspend" (git-fixes). - mac80211: fix station rate table updates on assoc (git-fixes). - iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues (git-fixes). - commit 2244f3a- nvme: re-read ANA log on NS CHANGED AEN (bsc#1179137). - commit d65941e- KVM: arm64: Remove S1PTW check from kvm_vcpu_dabt_iswrite() (bsc#1181818). - KVM: arm64: Assume write fault on S1PTW permission fault on instruction fetch (bsc#1181818). - commit 9e58921- net: ethernet: ti: fix some return value check of cpsw_ale_create() (git-fixes). - commit c1f82b5- net/mlx5e: Correctly handle changing the number of queues when the interface is down (git-fixes). - commit 2e18a60- net: ethernet: ti: ale: fix allmulti for nu type ale (git-fixes). - commit 1455e82- net: ethernet: ti: ale: ensure vlan/mdb deleted when no members (git-fixes). - commit 6a115f1- net: ethernet: ti: ale: modify vlan/mdb api for switchdev (git-fixes). - Refresh patches.suse/0009-net-ethernet-ti-ale-fix-seeing-unreg-mcast-packets-w.patch. - commit 0cae8d9- net: ethernet: ti: cpsw: allow untagged traffic on host port (git-fixes). - commit da85a01- net: ethernet: ti: ale: fix seeing unreg mcast packets with promisc and allmulti disabled (git-fixes). - commit 6a2d8f8- net/mlx5e: Fix configuration of XPS cpumasks and netdev queues in corner cases (git-fixes). - Refresh patches.suse/net-mlx5e-Fix-CPU-mapping-after-function-reload-to-a.patch. - commit ae37f4a- net/mlx5e: Use preactivate hook to set the indirection table (git-fixes). - commit a8003a3- net/mlx5e: Rename hw_modify to preactivate (git-fixes). - commit d8b9674- net/mlx5e: Encapsulate updating netdev queues into a function (git-fixes). - commit 0764cbf- sh_eth: check sh_eth_cpu_data::no_xdfar when dumping registers (git-fixes). - commit ccdc470- sh_eth: check sh_eth_cpu_data::cexcr when dumping registers (git-fixes). - commit 855923f- sh_eth: check sh_eth_cpu_data::no_tx_cntrs when dumping registers (git-fixes). - commit 1115b43- net: dsa: mt7530: Change the LINK bit to reflect the link status (git-fixes). - commit 7c5ca65- powerpc/pseries/dlpar: handle ibm, configure-connector delay status (bsc#1181985 ltc#188074). - commit 418b81d- series.conf: cleanup - update upstream reference: patches.suse/ibmvnic-Clear-failover_pending-if-unable-to-schedule.patch - commit 85f2019- fix patch metadata - fix upstream reference: patches.suse/io_uring-Fix-current-fs-handling-in-io_sq_wq_submit_.patch - commit 90ec2ae- scsi: lpfc: Fix EEH encountering oops with NVMe traffic (bsc#1181958). - commit 5afe23b- powerpc/perf: Exclude kernel samples while counting events in user space (bsc#1065729). - commit 50bd42d- powerpc: Fix alignment bug within the init sections (bsc#1065729). - commit 7810647- powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU (bsc#1156395). - powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently (bsc#1156395). - powerpc/powernv/memtrace: Don't leak kernel memory to user space (bsc#1156395). - powerpc/fpu: Drop cvt_fd() and cvt_df() (bsc#1156395). - powerpc/boot: Delete unneeded .globl _zimage_start (bsc#1156395). - commit 735e425- ibmvnic: device remove has higher precedence over reset (bsc#1065729). - commit 0b8e9f9- ibmvnic: fix login buffer memory leak (bsc#1081134 ltc#164631). - commit 5b8c72b- ibmvnic: Clear failover_pending if unable to schedule (bsc#1181960 ltc#190997). - commit fb1a56e- phy: cpcap-usb: Fix warning for missing regulator_disable (git-fixes). - platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352 (git-fixes). - platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on Estar Beauty HD tablet (git-fixes). - drm/amd/display: Change function decide_dp_link_settings to avoid infinite looping (git-fixes). - mac80211: fix fast-rx encryption check (git-fixes). - commit 504e3c0- blacklist.conf: kABI extreely hard to work around - commit e1f9604- objtool: Don't fail on missing symbol table (bsc#1169514). - commit 1518505- btrfs: Fix race between extent freeing/allocation when using bitmaps (bsc#1181574). - commit 98010f2- series.conf: cleanup - update upstream references of unsortable patches and sort them properly: patches.suse/perf-x86-intel-uncore-Store-the-logical-die-id-inste.patch patches.suse/perf-x86-intel-uncore-With-8-nodes-get-pci-bus-die-i.patch - commit b4f0fcb- fix patch metadata and move it to correct section - fix upstream reference of a non-mainline patch and move to correct section: patches.suse/net-sctp-filter-remap-copy_from_user-failure-error.patch - commit fda606d- usb: dwc2: Fix endpoint direction check in ep_from_windex (git-fixes). - usb: dwc3: fix clock issue during resume in OTG mode (git-fixes). - xhci: fix bounce buffer usage for non-sg list case (git-fixes). - usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop() (git-fixes). - USB: gadget: legacy: fix an error code in eth_bind() (git-fixes). - Input: i8042 - unbreak Pegatron C15B (git-fixes). - commit bcaeec1- net: qca_spi: Move reset_count to struct qcaspi (git-fixes). - commit 45b7fef- net: qca_spi: fix receive buffer size check (git-fixes). - commit 5cd7e42- net: stmmac: fix disabling flexible PPS output (git-fixes). - commit 20dce33- net: stmmac: fix length of PTP clock's name string (git-fixes). - commit 9f89a73- net: phy: at803x: use operating parameters from PHY-specific status (git-fixes). - commit e91964f- net: phy: extract pause mode (git-fixes). - commit c81698a- net: phy: extract link partner advertisement reading (git-fixes). - commit 18dc97f- net: phy: read MII_CTRL1000 in genphy_read_status only if needed (git-fixes). - commit d5eb04d- net: stmmac: selftests: Flow Control test can also run with ASYM Pause (git-fixes). - commit 26dfc56- cirrus: cs89x0: remove set but not used variable 'lp' (git-fixes). - commit 0385a3f- cirrus: cs89x0: use devm_platform_ioremap_resource() to simplify code (git-fixes). - commit f75aac5- blacklist.conf: update blacklist - commit ca67b2c- perf/x86/intel/uncore: With > 8 nodes, get pci bus die id from NUMA info (bsc#1180989). - perf/x86/intel/uncore: Store the logical die id instead of the physical die id (bsc#1180989). - perf/x86/intel/uncore: Generic support for the PCI sub driver (bsc#1180989). - perf/x86/intel/uncore: Factor out uncore_pci_pmu_unregister() (bsc#1180989). - perf/x86/intel/uncore: Factor out uncore_pci_pmu_register() (bsc#1180989). - perf/x86/intel/uncore: Factor out uncore_pci_find_dev_pmu() (bsc#1180989). - perf/x86/intel/uncore: Factor out uncore_pci_get_dev_die_info() (bsc#1180989). - commit 6e81128- bonding: wait for sysfs kobject destruction before freeing struct slave (git-fixes). - net/mlx5: E-Switch, Use vport metadata matching by default (git-fixes). - cxgb4: fix all-mask IP address comparison (git-fixes). - cxgb4: fix set but unused variable when DCB is disabled (git-fixes). - commit 8f53029- bpf, cgroup: Fix problematic bounds check (bsc#1155518). - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou (bsc#1155518). - commit 3ab5222- net, sctp, filter: remap copy_from_user failure error (bsc#1181637). - commit 32551e1- i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" (jsc#SLE-8025). - igc: Fix returning wrong statistics (git-fixes). - i40e: Fix MAC address setting for a VF via Host/VM (git-fixes). - mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() (git-fixes). - mlxsw: core: Fix memory leak on module removal (git-fixes). - net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow (git-fixes). - net: ethernet: mlx4: Avoid assigning a value to ring_cons but not used it anymore in mlx4_en_xmit() (git-fixes). - net: team: fix memory leak in __team_options_register (git-fixes). - net/mlx5e: Fix VLAN create flow (git-fixes). - net/mlx5e: Fix VLAN cleanup flow (git-fixes). - net/mlx5: Fix request_irqs error flow (git-fixes). - mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path (git-fixes). - team: set dev->needed_headroom in team_setup_by_port() (git-fixes). - bonding: set dev->needed_headroom in bond_setup_by_slave() (git-fixes). - net: qed: RDMA personality shouldn't fail VF load (git-fixes). - net: thunderx: initialize VF's mailbox mutex before first usage (git-fixes). - net: mvpp2: fix memory leak in mvpp2_rx (git-fixes). - iavf: Fix updating statistics (git-fixes). - iavf: fix error return code in iavf_init_get_resources() (git-fixes). - net/mlx5e: vxlan: Use RCU for vxlan table lookup (git-fixes). - vxlan: fix memleak of fdb (git-fixes). - net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq (git-fixes). - mlxsw: core: Free EMAD transactions using kfree_rcu() (git-fixes). - mlxsw: core: Increase scope of RCU read-side critical section (git-fixes). - net/mlx5: Query PPS pin operational status before registering it (git-fixes). - net/mlx5: Verify Hardware supports requested ptp function on a given pin (git-fixes). - net/mlx5: Fix a bug of using ptp channel index as pin index (git-fixes). - net/mlx5e: Fix error path of device attach (git-fixes). - net/mlx5: E-switch, Destroy TSAR after reload interface (git-fixes). - net: hns3: fix aRFS FD rules leftover after add a user FD rule (git-fixes). - net: hns3: fix a TX timeout issue (git-fixes). - net: hns3: fix desc filling bug when skb is expanded or lineared (git-fixes). - qed: Populate nvm-file attributes while reading nvm config partition (git-fixes). - net: hns3: fix use-after-free when doing self test (git-fixes). - net: hns3: add a missing uninit debugfs when unload driver (git-fixes). - net: cxgb4: fix return error value in t4_prep_fw (git-fixes). - cxgb4vf: update kernel-doc line comments (git-fixes). - cxgb4: update kernel-doc line comments (git-fixes). - cxgb4: move DCB version extern to header file (git-fixes). - cxgb4: remove cast when saving IPv4 partial checksum (git-fixes). - cxgb4: fix SGE queue dump destination buffer context (git-fixes). - cxgb4: use correct type for all-mask IP address comparison (git-fixes). - cxgb4: fix endian conversions for L4 ports in filters (git-fixes). - cxgb4: parse TC-U32 key values and masks natively (git-fixes). - cxgb4: use unaligned conversion for fetching timestamp (git-fixes). - cxgb4: move PTP lock and unlock to caller in Tx path (git-fixes). - cxgb4: move handling L2T ARP failures to caller (git-fixes). - net: qed: fix "maybe uninitialized" warning (git-fixes). - net: qede: fix use-after-free on recovery and AER handling (git-fixes). - net: qede: fix PTP initialization on recovery (git-fixes). - net: qed: fix excessive QM ILT lines consumption (git-fixes). - net: qed: fix NVMe login fails over VFs (git-fixes). - net: qede: stop adding events on an already destroyed workqueue (git-fixes). - net: qed: fix async event callbacks unregistering (git-fixes). - iavf: fix speed reporting over virtchnl (git-fixes). - net/mlx5e: IPoIB, Drop multicast packets that this interface sent (git-fixes). - ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (git-fixes). - veth: Adjust hard_start offset on redirect XDP frames (git-fixes). - net/mlx5e: Set of completion request bit should not clear other adjacent bits (git-fixes). - net/mlx5e: en_accel, Add missing net/geneve.h include (git-fixes). - bonding: Fix reference count leak in bond_sysfs_slave_add (git-fixes). - bnxt_en: Fix accumulation of bp->net_stats_prev (git-fixes). - net/mlx5: Annotate mutex destroy for root ns (git-fixes). - net/mlx5: Don't maintain a case of del_sw_func being null (git-fixes). - net/mlx4_core: fix a memory leak bug (git-fixes). - mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload fails (git-fixes). - net/mlx5e: Get the latest values from counters in switchdev mode (git-fixes). - net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ overruns (git-fixes). - net/mlx5: Fix failing fw tracer allocation on s390 (git-fixes). - net/cxgb4: Check the return from t4_query_params properly (git-fixes). - net: hns3: fix set and get link ksettings issue (git-fixes). - net: hns3: fix RSS config lost after VF reset (git-fixes). - qed: Fix race condition between scheduling and destroying the slowpath workqueue (git-fixes). - net/mlx5: E-Switch, Hold mutex when querying drop counter in legacy mode (git-fixes). - net/mlx5: E-Switch, Use vport metadata matching only when mandatory (git-fixes). - net/liquidio: Delete non-working LIQUIDIO_PACKAGE check (git-fixes). - virtio_net: Keep vnet header zeroed if XDP is loaded for small buffer (git-fixes). - net/mlx5: Clear LAG notifier pointer after unregister (git-fixes). - net/mlx5e: Fix endianness handling in pedit mask (git-fixes). - net/mlx5e: kTLS, Fix wrong value in record tracker enum (git-fixes). - net: hns3: clear port base VLAN when unload PF (git-fixes). - net: hns3: fix VF VLAN table entries inconsistent issue (git-fixes). - net: hns3: fix "tc qdisc del" failed issue (git-fixes). - cxgb4: fix checks for max queues to allocate (git-fixes). - commit a805d8f- blacklist.conf: Blacklist two 32-bit only fixes 50fe7ebb6475 bpf, x86_32: Fix clobbering of dst for BPF_JSET 5ca1ca01fae1 bpf, x86_32: Fix logic error in BPF_LDX zero-extension - commit 55cadfc- nvme-multipath: Early exit if no path is available (bsc#1180964). - commit 1c96465- kABI: Fix kABI after AMD SEV PCID fixes (bsc#1178995). - commit bf72ec9- mac80211: pause TX while changing interface type (git-fixes). - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() (git-fixes). - iwlwifi: pcie: reschedule in long-running memory reads (git-fixes). - iwlwifi: pcie: use jiffies for memory read spin time limit (git-fixes). - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family (git-fixes). - drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[] (git-fixes). - drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs (git-fixes). - commit 023b5c2- powerpc/mm/pkeys: Make pkey access check work on execute_only_key (bsc#1181544 ltc#191080 git-fixes). - Refresh patches.suse/powerpc-book3s64-pkeys-Fix-pkey_access_permitted-for.patch. - commit 7508356- rpm/kernel-binary.spec.in: Correct Supplements in optional subpkg (jsc#SLE-11796) The product string was changed from openSUSE to Leap. - commit 3cb7943- powerpc/pkeys: Check vma before returning key fault error to the user (bsc#1181544 ltc#191080). - powerpc/pkeys: Avoid using lockless page table walk (bsc#1181544 ltc#191080). - commit 8cb9fab- Add no-fix tag to drm cherry-picks Add a no-fix tag to drm patches that are cherry-picks and are not already blacklisted. - Refresh patches.suse/0001-drm-i915-Preload-LUTs-if-the-hw-isn-t-currently-usin.patch. - Refresh patches.suse/0001-drm-i915-Update-drm-i915-bug-filing-URL.patch. - Refresh patches.suse/0001-drm-i915-execlists-Always-force-a-context-reload-whe.patch. - Refresh patches.suse/0001-drm-i915-icl-Fix-hotplug-interrupt-disabling-after-s.patch. - Refresh patches.suse/0003-drm-i915-Correctly-set-SFC-capability-for-video-engi.patch. - Refresh patches.suse/0029-drm-i915-gem-Avoid-implicit-vmap-for-highmem-on-x86-.patch. - Refresh patches.suse/drm-i915-Perform-GGTT-restore-much-earlier-during-re.patch. - Refresh patches.suse/drm-i915-Whitelist-COMMON_SLICE_CHICKEN2.patch. - Refresh patches.suse/drm-i915-pmu-Frequency-is-reported-as-accumulated-cy.patch. - Refresh patches.suse/drm-i915-to-make-vgpu-ppgtt-notificaiton-as-atomic-o.patch. - Refresh patches.suse/drm-i915-update-rawclk-also-on-resume.patch. - Refresh patches.suse/drm-i915-userptr-Never-allow-userptr-into-the-mappab.patch. - commit 46ba73b- KVM: SVM: Update cr3_lm_rsvd_bits for AMD SEV guests (bsc#1178995). - KVM: x86: Introduce cr3_lm_rsvd_bits in kvm_vcpu_arch (bsc#1178995). - commit 49749c4- r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set (git-fixes). - commit ab82b36- Update kabi files. - update from February 2021 maintenance update submission (commit 1e925eb08318) - commit 97b2a1f- powerpc: kABI: add back suspend_disable_cpu in machdep_calls (bsc#1181674 ltc#189159). - commit 09376cb- exfat: Avoid allocating upcase table using kcalloc() (git-fixes). - exec: Always set cap_ambient in cap_bprm_set_creds (git-fixes). - commit eb2e605- io_uring: Fix current->fs handling in io_sq_wq_submit_work() (bsc#1179434 CVE-2020-29373). - commit 3f561ee- blacklist.conf: no change to /sys/firmware/uv/query/max_cpus - commit 737a803- s390/vfio-ap: No need to disable IRQ after queue reset (git-fixes). - s390/vfio-ap: clean up vfio_ap resources when KVM pointer invalidated (git-fixes). - commit d91ae22- powerpc/pseries/mobility: refactor node lookup during DT update (bsc#1181674 ltc#189159). - powerpc/rtas: remove unused rtas_suspend_me_data (bsc#1181674 ltc#189159). - powerpc/pseries/hibernation: remove prepare_late() callback (bsc#1181674 ltc#189159). - powerpc/pseries/hibernation: perform post-suspend fixups later (bsc#1181674 ltc#189159). - powerpc/rtas: remove unused rtas_suspend_last_cpu() (bsc#1181674 ltc#189159). - powerpc/pseries/hibernation: switch to rtas_ibm_suspend_me() (bsc#1181674 ltc#189159). - powerpc/rtas: remove rtas_suspend_cpu() (bsc#1181674 ltc#189159). - powerpc/machdep: remove suspend_disable_cpu() (bsc#1181674 ltc#189159). - powerpc/pseries/hibernation: remove pseries_suspend_cpu() (bsc#1181674 ltc#189159). - powerpc/pseries/hibernation: pass stream id via function arguments (bsc#1181674 ltc#189159). - Refresh patches.suse/powerpc-pseries-hibernation-remove-redundant-cachein.patch - powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops (bsc#1181674 ltc#189159). - powerpc/rtas: remove rtas_ibm_suspend_me_unsafe() (bsc#1181674 ltc#189159). - powerpc/rtas: dispatch partition migration requests to pseries (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: retry partition suspend after error (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: signal suspend cancellation to platform (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: use stop_machine for join/suspend (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: extract VASI session polling logic (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: use rtas_activate_firmware() on resume (bsc#1181674 ltc#189159). - Refresh patches.suse/powerpc-pseries-mobility-notify-network-peers-after-.patch - powerpc/pseries/mobility: error message improvements (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: add missing break to default case (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: don't error on absence of ibm, update-nodes (bsc#1181674 ltc#189159). - powerpc/hvcall: add token and codes for H_VASI_SIGNAL (bsc#1181674 ltc#189159). - powerpc/rtas: add rtas_activate_firmware() (bsc#1181674 ltc#189159). - powerpc/rtas: add rtas_ibm_suspend_me() (bsc#1181674 ltc#189159). - powerpc/rtas: rtas_ibm_suspend_me -> rtas_ibm_suspend_me_unsafe (bsc#1181674 ltc#189159). - powerpc/rtas: complete ibm,suspend-me status codes (bsc#1181674 ltc#189159). - powerpc/rtas: prevent suspend-related sys_rtas use on LE (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: Add pr_debug() for device tree changes (bsc#1181674 ltc#189159). - powerpc/pseries/mobility: Set pr_fmt() (bsc#1181674 ltc#189159). - powerpc/pseries: remove obsolete memory hotplug DT notifier code (bsc#1181674 ltc#189159). - Refresh patches.suse/powerpc-pseries-update-device-tree-before-ejecting-h.patch - powerpc/pseries: remove dlpar_cpu_readd() (bsc#1181674 ltc#189159). - powerpc/pseries: remove memory "re-add" implementation (bsc#1181674 ltc#189159). - powerpc/pseries: remove prrn special case from DT update path (bsc#1181674 ltc#189159). - powerpc/numa: remove arch_update_cpu_topology (bsc#1181674 ltc#189159). - powerpc/numa: remove prrn_is_enabled() (bsc#1181674 ltc#189159). - powerpc/rtasd: simplify handle_rtas_event(), emit message on events (bsc#1181674 ltc#189159). - powerpc/numa: remove start/stop_topology_update() (bsc#1181674 ltc#189159). - powerpc/numa: remove timed_topology_update() (bsc#1181674 ltc#189159). - powerpc/numa: stub out numa_update_cpu_topology() (bsc#1181674 ltc#189159). - powerpc/numa: remove vphn_enabled and prrn_enabled internal flags (bsc#1181674 ltc#189159). - powerpc/numa: remove unreachable topology workqueue code (bsc#1181674 ltc#189159). - powerpc/numa: remove unreachable topology timer code (bsc#1181674 ltc#189159). - powerpc/numa: make vphn_enabled, prrn_enabled flags const (bsc#1181674 ltc#189159). - powerpc/numa: remove unreachable topology update code (bsc#1181674 ltc#189159). - powerpc/numa: remove ability to enable topology updates (bsc#1181674 ltc#189159). - powerpc/numa: Remove late request for home node associativity (bsc#1181674 ltc#189159). - commit 88bd021- Refresh patches.suse/edac-amd64-set-grain-per-dimm.patch. Readd the second hunk which wasn't needed during the original git-fixes backport. - commit 9c3639f- rxrpc: Fix memory leak in rxrpc_lookup_local (bsc#1154353 bnc#1151927 5.3.9). - net/mlx5e: E-switch, Fix rate calculation for overflow (jsc#SLE-8464). - i40e: acquire VSI pointer only after VF is initialized (jsc#SLE-8025). - ice: Fix MSI-X vector fallback logic (jsc#SLE-7926). - ice: Don't allow more channels than LAN MSI-X available (jsc#SLE-7926). - Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" (jsc#SLE-8464). - commit 76b9a3a- scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit (bsc#1179142). - commit f3ce867- kABI: Fix kABI for extended APIC-ID support (bsc#1181259, jsc#ECO-3191). - x86/kvm: Add KVM_FEATURE_MSI_EXT_DEST_ID (bsc#1181259, jsc#ECO-3191). - commit 0e40024- x86/apic: Support 15 bits of APIC ID in IOAPIC/MSI where available (bsc#1181259, jsc#ECO-3191). - x86/ioapic: Handle Extended Destination ID field in RTE (bsc#1181259, jsc#ECO-3191). - x86/msi: Only use high bits of MSI address for DMAR unit (bsc#1181259, jsc#ECO-3191). - commit 077256e- x86/kvm: Reserve KVM_FEATURE_MSI_EXT_DEST_ID (bsc#1181259 jsc#ECO-3191). - commit 0deae09- blacklist.conf: no need to fix code for CONFIG_KEXEC_JUMP - commit 3abe54d- blacklist.conf: e45122893a98 x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state - commit f36235a- nbd: freeze the queue while we're adding connections (CVE-2021-3348 bsc#1181504). - commit 78453ee- leds: trigger: fix potential deadlock with libata (git-fixes). - commit d410ad0- Update patch References tags for futex fixes (bsc#1181349 CVE-2021-3347) - commit b3fac23- HID: wacom: Correct NULL dereference on AES pen proximity (git-fixes). - HID: wacom: Fix memory leakage caused by kfifo_alloc (git-fixes). - HID: wacom: Constify attribute_groups (git-fixes). - HID: wacom: do not call hid_set_drvdata(hdev, NULL) (git-fixes). - commit c0ccdd7- ACPI/IORT: Do not blindly trust DMA masks from firmware (git-fixes). - PM: hibernate: flush swap writer after marking (git-fixes). - ACPI: sysfs: Prefer "compatible" modalias (git-fixes). - drm/i915: Check for all subplatform bits (git-fixes). - drm/nouveau/svm: fail NOUVEAU_SVM_INIT ioctl on unsupported devices (git-fixes). - commit 274cf96- iomap: fix WARN_ON_ONCE() from unprivileged users (bsc#1181494). - commit 2958b80- net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid() (git-fixes). - net/smc: fix valid DMBE buffer sizes (git-fixes). - net/smc: fix sock refcounting in case of termination (git-fixes). - net/smc: reset sndbuf_desc if freed (git-fixes). - net/smc: set rx_off for SMCR explicitly (git-fixes). - net/smc: fix dmb buffer shortage (git-fixes). - net/smc: remove freed buffer from list (git-fixes). - net/smc: switch smcd_dev_list spinlock to mutex (git-fixes). - net/smc: fix sleep bug in smc_pnet_find_roce_resource() (git-fixes). - net/smc: cancel event worker during device removal (git-fixes). - net/smc: check for valid ib_client_data (git-fixes). - net/smc: fix cleanup for linkgroup setup failures (git-fixes). - net/smc: no peer ID in CLC decline for SMCD (git-fixes). - net/smc: transfer fasync_list in case of fallback (git-fixes). - commit a9e7337- mm: memcontrol: fix missing wakeup polling thread (bsc#1181584). - commit c0272b7- blacklist.conf: Add 4230e2deaa48 stop_machine, rcu: Mark functions as notrace - commit 9596511- blacklist.conf: Add 15ec0fcff6da kernel/sys.c: replace do_brk with do_brk_flags in comment of prctl_set_mm_map() - commit 7773384- ptrace: Set PF_SUPERPRIV when checking capability (bsc#1163930). - ptrace: reintroduce usage of subjective credentials in ptrace_has_cap() (bsc#1163930). - commit 1d6137d- module: delay kobject uevent until after module init call (bsc#1178631). - Refresh patches.suse/supported-flag - commit 2796828- vfio iommu: Add dma available capability (bsc#1179572 LTC#190110). - commit 6544fbc- HID: multitouch: Remove MT_CLS_WIN_8_DUAL (git-fixes). - Refresh patches.suse/HID-quirks-Always-poll-three-more-Lenovo-PixArt-mice.patch. - commit bed41ce- can: dev: prevent potential information leak in can_fill_info() (git-fixes). - mt7601u: fix kernel crash unplugging the device (git-fixes). - mt7601u: fix rx buffer refcounting (git-fixes). - NFC: fix resource leak when target index is invalid (git-fixes). - NFC: fix possible resource leak (git-fixes). - firmware: imx: select SOC_BUS to fix firmware build (git-fixes). - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices (git-fixes). - media: rc: ensure that uevent can be read directly after rc device register (git-fixes). - HID: multitouch: do not filter mice nodes (git-fixes). - commit f7694e1- series.conf: cleanup - update upstream references and move into sorted section: patches.suse/0001-futex-Ensure-the-correct-return-value-from-futex_loc.patch patches.suse/0002-futex-Replace-pointless-printk-in-fixup_owner.patch patches.suse/0003-futex-Provide-and-use-pi_state_update_owner.patch patches.suse/0004-rtmutex-Remove-unused-argument-from-rt_mutex_proxy_u.patch patches.suse/0005-futex-Use-pi_state_update_owner-in-put_pi_state.patch patches.suse/0006-futex-Simplify-fixup_pi_state_owner.patch patches.suse/0007-futex-Handle-faults-correctly-for-PI-futexes.patch - commit 16c5d87- Move upstreamed sound patches into sorted section - commit 84af2ff- ALSA: hda/via: Apply the workaround generically for Clevo machines (git-fixes). - ASoC: ak4458: correct reset polarity (git-fixes). - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 (git-fixes). - commit e5943b7- xfs: show the proper user quota options (bsc#1181538). - commit e34397a- futex: Handle faults correctly for PI futexes (bsc#1181349 bsc#1149032). - futex: Simplify fixup_pi_state_owner() (bsc#1181349 bsc#1149032). - futex: Use pi_state_update_owner() in put_pi_state() (bsc#1181349 bsc#1149032). - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() (bsc#1181349 bsc#1149032). - futex: Provide and use pi_state_update_owner() (bsc#1181349 bsc#1149032). - futex: Replace pointless printk in fixup_owner() (bsc#1181349 bsc#1149032). - futex: Ensure the correct return value from futex_lock_pi() (bsc#1181349 bsc#1149032). - futex: Remove unused empty compat_exit_robust_list() (bsc#1149032). - futex: Remove needless goto's (bsc#1149032). - commit 8a00d32- x86/hyperv: Fix kexec panic/hang issues (bsc#1176831). - refresh patches.suse/suse-hv-kabi.patch - commit 3bdfdcf- btrfs: send: fix invalid clone operations when cloning from the same file and root (bsc#1181511). - commit 090f75a- fix patch metadata - fix Patch-mainline: patches.suse/nfsd4-readdirplus-shouldn-t-return-parent-of-export.patch - commit 2f3e2e1- xhci: tegra: Delay for disabling LFPS detector (git-fixes). - xhci: make sure TRB is fully written before giving it to the controller (git-fixes). - USB: ehci: fix an interrupt calltrace error (git-fixes). - ehci: fix EHCI host controller initialization sequence (git-fixes). - i2c: bpmp-tegra: Ignore unknown I2C_M flags (git-fixes). - platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634 (git-fixes). - drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 (git-fixes). - drm/nouveau/mmu: fix vram heap sizing (git-fixes). - drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields (git-fixes). - drm/nouveau/privring: ack interrupts the same way as RM (git-fixes). - drm/nouveau/bios: fix issue shadowing expansion ROMs (git-fixes). - drm/amdgpu/psp: fix psp gfx ctrl cmds (git-fixes). - HID: Ignore battery for Elan touchscreen on ASUS UX550 (git-fixes). - HID: logitech-dj: add the G602 receiver (git-fixes). - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device (git-fixes). - commit 6194af6- blacklist.conf: unwanted NFS patches - commit 6f9f1d0- nfsd4: readdirplus shouldn't return parent of export (git-fixes). - commit 5e9f700- nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout (bsc#1181161). - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout (bsc#1181161). - commit 7760e28- x86/xen: avoid warning in Xen pv guest with CONFIG_AMD_MEM_ENCRYPT enabled (bsc#1181335). - commit ada97e4- xen-blkfront: allow discard-* nodes to be optional (bsc#1181346). - commit 958c625- xen/privcmd: allow fetching resource sizes (bsc#1065600). - commit 21fc6aa- scsi: ibmvfc: Set default timeout to avoid crash during migration (bsc#1181425 ltc#188252). - commit 9a4138b- series.conf: cleanup - rename patches to get rid of numeric prefix (for easier resolve of merge conflict) patches.suse/0001-drm-rockchip-Avoid-uninitialized-use-of-endpoint-id-.patch -> patches.suse/drm-rockchip-Avoid-uninitialized-use-of-endpoint-id-.patch patches.suse/0002-drm-gma500-fix-double-free-of-gma_connector.patch -> patches.suse/drm-gma500-fix-double-free-of-gma_connector.patch patches.suse/0003-drm-aspeed-Fix-Kconfig-warning-subsequent-build-erro.patch -> patches.suse/drm-aspeed-Fix-Kconfig-warning-subsequent-build-erro.patch patches.suse/0004-drm-dp_aux_dev-check-aux_dev-before-use-in-drm_dp_au.patch -> patches.suse/drm-dp_aux_dev-check-aux_dev-before-use-in-drm_dp_au.patch patches.suse/0005-drm-mcde-Fix-handling-of-platform_get_irq-error.patch -> patches.suse/drm-mcde-Fix-handling-of-platform_get_irq-error.patch patches.suse/0006-drm-tve200-Fix-handling-of-platform_get_irq-error.patch -> patches.suse/drm-tve200-Fix-handling-of-platform_get_irq-error.patch (no effect on expanded tree) - commit 772573f- series.conf: cleanup - move unsortable patch out of sorted section patches.suse/floppy-reintroduce-O_NDELAY-fix.patch - commit 39bee61- arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback (bsc#1152489). - commit 852fa4b- scsi: lpfc: Simplify bool comparison (bsc#1180891). - scsi: lpfc: Update lpfc version to 12.8.0.7 (bsc#1180891). - scsi: lpfc: Enhancements to LOG_TRACE_EVENT for better readability (bsc#1180891). - scsi: lpfc: Implement health checking when aborting I/O (bsc#1180891). - scsi: lpfc: Fix crash when nvmet transport calls host_release (bsc#1180891). - scsi: lpfc: Fix vport create logging (bsc#1180891). - scsi: lpfc: Fix NVMe recovery after mailbox timeout (bsc#1180891). - scsi: lpfc: Fix target reset failing (bsc#1180891). - scsi: lpfc: Fix error log messages being logged following SCSI task mgnt (bsc#1180891). - scsi: lpfc: Prevent duplicate requests to unregister with cpuhp framework (bsc#1180891). - scsi: lpfc: Fix FW reset action if I/Os are outstanding (bsc#1180891). - scsi: lpfc: Use the nvme-fc transport supplied timeout for LS requests (bsc#1180891). - scsi: lpfc: Fix crash when a fabric node is released prematurely (bsc#1180891). - scsi: lpfc: Refresh ndlp when a new PRLI is received in the PRLI issue state (bsc#1180891). - scsi: lpfc: Fix auto sli_mode and its effect on CONFIG_PORT for SLI3 (bsc#1180891). - scsi: lpfc: Fix PLOGI S_ID of 0 on pt2pt config (bsc#1180891). - commit cdea5d0- x86/topology: Make __max_die_per_package available unconditionally (bsc#1152489). - commit 0e0c8a8- x86/cpu/amd: Set __max_die_per_package on AMD (bsc#1152489). - commit 3044309- drm/i915/gt: Declare gen9 has 64 mocs entries! (git-fixes). - drm/etnaviv: always start/stop scheduler in timeout processing (git-fixes). - commit 6ef999c- drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is no reset-deassert MIPI-sequence (git-fixes). - drm/i915: clear the gpu reloc batch (git-fixes). - drm/amdgpu: fix a GPU hang issue when remove device (git-fixes). - drm/i915: Fix mismatch between misplaced vma check and vma insert (git-fixes). - commit cc8174e- drm/amdkfd: Fix leak in dmabuf import (git-fixes). - drm/msm/dsi_phy_10nm: implement PHY disabling (git-fixes). - drm/msm/dsi_pll_10nm: restore VCO rate during restore_state (git-fixes). - drm/msm/dpu: Add newline to printks (git-fixes). - drm/meson: dw-hdmi: Register a callback to disable the regulator (git-fixes). - drm/omap: dmm_tiler: fix return error code in omap_dmm_probe() (git-fixes). - drm/amdgpu: fix build_coefficients() argument (git-fixes). - drm/amd/display: remove useless if/else (git-fixes). - drm/tve200: Fix handling of platform_get_irq() error (git-fixes). - drm/mcde: Fix handling of platform_get_irq() error (git-fixes). - drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() (git-fixes). - drm/aspeed: Fix Kconfig warning & subsequent build errors (git-fixes). - drm/gma500: fix double free of gma_connector (git-fixes). - drm/i915/display/dp: Compute the correct slice count for VDSC on DP (git-fixes). - drm/rockchip: Avoid uninitialized use of endpoint id in LVDS (git-fixes). - drm/i915/gt: Program mocs:63 for cache eviction on gen9 (git-fixes). - drm/tegra: sor: Disable clocks on error in tegra_sor_init() (git-fixes). - drm/tegra: replace idr_init() by idr_init_base() (git-fixes). - drm/i915/gt: Free stale request on destroying the virtual engine (git-fixes). - drm/i915/gvt: return error when failing to take the module reference (git-fixes). - drm/i915/gvt: Set ENHANCED_FRAME_CAP bit (git-fixes). - drm/i915: Handle max_bpc==16 (git-fixes). - drm/i915: Avoid memory leak with more than 16 workarounds on a list (git-fixes). - drm/amd/display: Add missing pflip irq for dcn2.0 (git-fixes). - drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[] (git-fixes). - drm/amdgpu: perform srbm soft reset always on SDMA resume (git-fixes). - commit bd76ab9- drm/nouveau/nouveau: fix the start/end range for migration (git-fixes). - drm/vc4: drv: Add error handding for bind (git-fixes). - drm/sun4i: frontend: Fix the scaler phase on A33 (git-fixes). - drm/sun4i: frontend: Reuse the ch0 phase for RGB formats (git-fixes). - drm/sun4i: frontend: Rework a bit the phase data (git-fixes). - drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally (git-fixes). - drm/amdgpu: increase the reserved VM size to 2MB (git-fixes). - drm/amdgpu: don't map BO in reserved region (git-fixes). - drm/amdgpu: add DID for navi10 blockchain SKU (git-fixes). - drm/i915: Drop runtime-pm assert from vgpu io accessors (git-fixes). - drm/i915: Force VT'd workarounds when running as a guest OS (git-fixes). - drm/i915/gt: Delay execlist processing for tgl (git-fixes). - commit d9edd32- drm/amdkfd: Use same SQ prefetch setting as amdgpu (git-fixes). - drm/amd/display: Avoid MST manager resource leak (git-fixes). - drm/amdgpu: correct the gpu reset handling for job != NULL case (git-fixes). - drm/ttm: fix eviction valuable range check (git-fixes). - drm/amd/display: HDMI remote sink need mode validation for Linux (git-fixes). - drm/amd/display: Increase timeout for DP Disable (git-fixes). - drm/i915: Break up error capture compression loops with cond_resched() (git-fixes). - drm/msm/a6xx: fix a potential overflow issue (git-fixes). - drm/panfrost: add amlogic reset quirk callback (git-fixes). - drm/bridge/synopsys: dsi: add support for non-continuous HS clock (git-fixes). - commit 3790415- drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working correctly (git-fixes). - drm/nouveau/mem: guard against NULL pointer access in mem_del (git-fixes). - drm/amdgpu: prevent double kfree ttm->sg (git-fixes). - drm/sun4i: mixer: Extend regmap max_register (git-fixes). - commit f36768e- drm/i915: Filter wake_flags passed to default_wake_function (git-fixes). - drm/amdgpu/dc: Require primary plane to be enabled whenever the CRTC is (git-fixes). - drm/amd/display: update nv1x stutter latencies (git-fixes). - drm/amdkfd: fix a memory leak issue (git-fixes). - drm/tve200: Stabilize enable/disable (git-fixes). - drm/msm: Disable preemption on all 5xx targets (git-fixes). - drm/amdgpu: Fix bug in reporting voltage for CIK (git-fixes). - drm/amd/pm: avoid false alarm due to confusing softwareshutdowntemp setting (git-fixes). - drm/omap: fix incorrect lock state (git-fixes). - drm/amd/display: Fix memleak in amdgpu_dm_mode_config_init (git-fixes). - drm/amd/display: Retry AUX write when fail occurs (git-fixes). - drm/amd/display: Reject overlay plane configurations in multi-display scenarios (git-fixes). - drm/msm/a6xx: fix gmu start on newer firmware (git-fixes). - drm/msm: add shutdown support for display platform_driver (git-fixes). - drm/msm/dpu: Fix scale params in plane validation (git-fixes). - drm/i915/selftests: Avoid passing a random 0 into ilog2 (git-fixes). - drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume (git-fixes). - drm/amd/display: dchubbub p-state warning during surface planes switch (git-fixes). - commit 64cc324- drm: Added orientation quirk for ASUS tablet model T103HAF (git-fixes). - drm/amdkfd: fix restore worker race condition (git-fixes). - drm/nouveau/dispnv50: fix runtime pm imbalance on error (git-fixes). - drm/nouveau: fix runtime pm imbalance on error (git-fixes). - drm/nouveau/debugfs: fix runtime pm imbalance on error (git-fixes). - commit 406e9f7- drm/exynos: dsi: Remove bridge node reference in error handling path in probe function (git-fixes). - drm: rcar-du: Set primary plane zpos immutably at initializing (git-fixes). - drm/amdgpu/sriov add amdgpu_amdkfd_pre_reset in gpu reset (git-fixes). - drm/msm/a5xx: Always set an OPP supported hardware value (git-fixes). - drm/msm: fix leaks if initialization fails (git-fixes). - drm/amd/display: Stop if retimer is not available (git-fixes). - drm/amdgpu: increase atombios cmd timeout (git-fixes). - drm/omap: dss: Cleanup DSS ports on initialisation failure (git-fixes). - commit db34b82- drm/amd/display: dal_ddc_i2c_payloads_create can fail causing panic (git-fixes). - drm/omap: fix possible object reference leak (git-fixes). - drm/amdgpu: fix calltrace during kmd unload(v3) (git-fix