From edda1c686053770cba4a90b853d60a2ed19a4b82 Mon Sep 17 00:00:00 2001
From: geoffrey <geoffrey.bucchino@protonmail.com>
Date: Thu, 30 Jan 2025 10:19:38 +0000
Subject: [PATCH] update

---
 dns-trace            |   Bin 1945288 -> 1533448 bytes
 src/dns-trace.c      |    11 +-
 src/dns-trace.ebpf.c |    28 +-
 src/dns-trace.ebpf.o |   Bin 37032 -> 37064 bytes
 src/vmlinux.h        | 70338 ++++++++++++++++++++++++++++++-----------
 5 files changed, 52732 insertions(+), 17645 deletions(-)

diff --git a/dns-trace b/dns-trace
index fe940ceed25c53b4bc5ad96e41a4c652d411fadb..a72c4b8e5f1d4cff5e3960eb5c6849ec7b642fa1 100755
GIT binary patch
literal 1533448
zcmeFaeSB2K^*?@>BoGnZpkSk7UF}+f0wyXpsi0Zez+K&FECk{MBrzleg^-e62}LBh
zyPE5DZER7oRvVvM+G@pzYCs7ao)UZv2%3s$6wtda3Zg<lAm8_ynR|0HANKqCzJ9OQ
z@4s$K?w<FYIWu$S%$b=pv)3gB{)qz|4#oVWC|4;&t(?b^e38&`%g@9&Mafrkl~eI|
zq>`l!1e%I}`65+*W~A^0^O-LA2&Q~RB3*ut5Pas-tRX!qU$Rg0RGwl!l?+Z(zBKw;
zMt|@rV}GsZvDv&L=F^^!mDedMDm|Cq#A{|g?fFPID}TjGRaQ>w|Ag|`$90jYhp6WO
zkd#lkne!{R_kU&(13u={)F;)E{?&?V%Fk@dgpc`@^EHcn^3%(+Ddv;PpwA%uqwh)E
zM@;w(;Sa?uZ}OhNOv)$M&!o-znNKrck;vEm7_Wi+oOwDg$b6dhyb<}BK1DtLw?~Fx
z_>CwpS^J8zIHUPA?emg3vv0fN@=NB-96e`tO|X7+eeM;buef|n-MlfEvJ6x&7yePN
zPP)EWL3hRo6Y5t6G;rFKM`^=EI`QwC|6^IYI;XYi-OiUvik?e(#Cz^h;-Pv|9^#=7
z$rGl+X!`y;{39Nw564o%2N1Rh|F%@VH#hHqZVop}>-Xt_fYbURoVXbUod|yh$tS{_
zQGpZT+mgu7NFtw%=tOd!Pa?;ggnv$wdS04D&g3L=o=n0&F^T+G5`O9*7yikgpC>8z
z{3LSzo`nD8B>H?aNxwXn1ivte{545%Z<2bhNFx8mByzq>!hb9Y{&Euhz9jXT0mYxl
zu9hZ|<4>Z`AxZe}PtvXnlJLKrME<TM{Hv4jpP7WeB?<qVN%Y`PBIk@G?RqeYo=;DL
zf0d*@6O!Q1C6V)wB>WdA;r~1de`6B<kxBUPNTQ!*N#v|dqUZ0D@Mk5_^ME9HO_F-%
zCc!^SQvcVJ)aUUe<yIu&Z%BfdC#la9N$|8Jct?`@oC7_(@K65So}@mDlgMvMqMwCH
z@b8nz8J(n_U!j60@;@C(>Ukgu|Jh0SzfMxmIZ5iXEQ$PJ68_&L;Xjn5+-MU03`oL%
zX%ak`M9zpL`1mAph9uG3&LsTrCz1bL68!EY_>m-dYLfaiCeicLN%|#{ME>9;{BI?Z
zKP`zK7AD~zmqdPXl6H-P92fq{pDjtsot&gycO@xzI|QF-d<{<`=e8u}?n+Yswj^>E
zCgEQP`RB`x1^qGP3{^%bv0A?WGxtGCsc%YQ>CDRcm9u8o1uExHDV#88UQOkc^4sQA
zDy5~f=FY1rtqYXT50sX2))O*T&Z#QBvvPjj?0Gc`eV<>xU}kxsoW5UidFiamKxOsJ
z`N}Lx0#QeV?R!mdE+cCy>jQNaTmsl?!A41DHYP)4W75rpiaF(VbzH*CdYb?$r!FwR
zW@bH0teii8Zrv<P9O^r>Jjj!7L+fj-l$v>gN{gsl*jEFp5fe4Ha_+qO3oRZJRawPS
zP+o1IuXUm|cg(JtNy%IpR{JY~nvEd!QBl8}S6f+g#pU=yn!=-E&b+!xrK-H5qOz{8
zJfO_3sSK3X1m=}1zpa}$KY&iEs4p+Anq5;qXZG(Z6{J+pQL0#G`d+7?N)^@fmAU0}
z=FF>57R;ZG)>YM2R^EZK1GTefDrn8zd3RPSbAvT=%WIXHv**{8&jkqr6)7#9T{o{H
zFR!$!uA;oA3N*H)6~ZXymP2o)rS-M50L+Jm=glvj51^`c{_L7SRcS@_9jyGhwaV<O
zQW6`O2VGRwE0B3dWk9K$Jqs0As(34dtl-Mpd2{BJRs`lK!5Zv(@1P3S5ic52URPNG
zVfY%D7o0PPzSIzarp%u+d+zK2t8rb8t$Zjbu&}nW^tMuJKV*?MN~yjT<pEa1sz4<~
z)dr#Os`-_bBozM_JhclMPig7=%JMn2<$-EOmd~G6TUuK_A6<jt5vZy|xyUo8vW6Zr
zgRDlCHFrV?l_-SJS5%fHQC+G;U)L?HtC+`BduP9z6An)0HZmWyuri3=st(MnL8poq
zQYCF|<*HjyKAW_KQ9WOoJ&zO#^;zoS^?}N30&{q+Yeao(%V$;AkrAN@%x0><OLZi*
zl+Q$2)X}%04_H6VAtPe?zSG{{rKKphW*%v~JU|`+imj+FCw&S_s^gX<`Wd1Fl{wUq
zKzYR-q}|f0^4W6~YC4p}4PTji2kcUTnSceV2+W3sqE%!@^J)W1Rpq=Y1%`=1M!}IB
z`u;oXTLpc)Lb=)RyQVZ}%%x*48*`b0KxOe1pMNrdv3BALJJF9VTbTp_6H1Za`j%&X
zyENDOnsd4J^)ke1%v?FYvcC2)^kJ9wabDJ!ekp2a3b<^{<>cB2AR3dZIM_1<-v@w7
z!;{by-~$m&BZ|KB^mOGUfe;UI4Mqfwp7cL@a+K5dzr=O2#c5BWayiXQ83L|TENPT7
z2vJ=wooYy>(34V5W`CXd+gFEF#GHtOOB>3lRLrerDST3MApJj>izz<k!oSPj+k?>I
z5ak<S^l?DqyCS^^^uvEzHJG@M2<#C?pQ;SPG)OZ3$mqe!FhMslI#oH3Pm_>0MA;?s
zlKj(W&pw4_{4s+6Ohyk?as}P^&?5+kIhAV!y^PVPD20Naf9C9y6turY(2uh8la!f)
z9>(OQEAs^XGe!?m77F?v#y?OA3Hnt=rzsB#I(QbzPf;EdbbysNKzR-{eayJAIsZ4+
za=b;vlTExx;4ul`y#)&id^#ok8-aIA_(6g1m+-+`xtt7@SIjJTn85QT+%51134d}o
zm(wWWx9#9~lZ5|P;L9cacLHyg@SURE4hb)NhwH6N!gV1>@%3+)$)6$N&4NEy!cBfv
z!e0>lwGwXf*GqWOeOM6U(;(sh7IIcdxG86)gy+A&<+Mon8X>1!!c94bgqw2qOL)7G
zlX>ll_2!arvt3ydzE#L6l5n#=B@%Adr%b|k3OS7uZpvwra8u553IAHiiAlIAr$fSB
z6d=W?Q^I?MoE`}`<tW$n*PAIPUBXZLgpZ4C2{+~BO1Nt|uTQ>&pDE;2OSmbgR>GBL
zE~j3?FBEc`CES#=Lc&csD<wQv$mx=BQ%<*pn{o^ZSB0Dme}8?Naxx{{l;e`{5+O&G
za8pi^gqw0oB>WB`r$NF^IgJu-%4w4D#X?Stgqw0=5?-tG{_2qM`-GhR5^l=rk#JKE
zn*d?grk`IX<YdvrXv0l8*%F@p3a?MDg#Ss%DU)zhPPK%aa%v^~X(4C1gqw0!Ncana
zzf;0Z{%#3>UGS%0f8zFLO89!gpD*F2{2~c|Pw>}ExXIrr;add%N(ndlV-o&};5Q`P
z<nNL2U4q|r!-?CQE#U_Qe~E;f@~b6$z)ms0OSs9uT*C8T=l0Vq;im~X9TINJ>6CC&
zPM3rq7xh<)PTbyf32$D_>yshjr;7UIO1N2{d<i$@s1kmLkW(w+rkr{SH{~=)c$Sc}
zLc&csD<#~N(<0%Q3OU^pZptwvym>cs3(9^8|Fw{ldE<%o?2>R(PL_mUBjglGxLKbP
z2{+}GNw{CgX_RnNPLqV2a+XW@WFaRe;ijAp2{+|*O89gkr$@p~Im&PP>&=vtF5$C<
zoNNg<<>X4ZDJNgT=L<R25^l<=m2gu|y@cN-<TOjTDQAU*XYAqjvr@vB3OQX8Zp!JF
za8r&U;f+F0#^nC`H08J?e3{@^CEVmMlJNWu+&`2^_@9KF1_?LiG)lNBr%A#Ky14&r
zk#JK^hlD>Z%H1#FCciSJzaCx@{8<ui^5;r;tKct_aFf4Q!rvGC%O%|8Um@Wi3;s?C
zH~G6IeEWa6e$tEkx69<ul<?g`e!hg8{6!MJPw>}ExXIrr;Rgl(N(ndlV-kK`@Ea0t
z^7lyipig;wT~klo-fRgUF8E6%+>~D};pYhcCJ8tBn<e~G!QUa_CV!WNtAbydcH;VH
zNcc3tpDW>}d{x3{2>x0LH~AYRyi)M5kZ_Z~MZ#+Zf4792{QD(*iQvzqKoUOYy4vK=
zlJGwW{vruC`O75yS;5~Z;U@ob34c-W$0Xe3@09R$g1<+?P5$(o`nT&t!JjSRCV#$!
ze<Ap*CEVn%m+&71f3t*}{3|7V;AecibV<0$Z%Fv*f<Hst!<75WCE+f?uS&QnzeK{b
z1%HEtoBT}@o-g=YB;4fhknkyjf4_vA{K_r;`)j7)&ysMHKUcy7g1=0{P5xR5ZxsB?
zCEVm+A>qpff2V|-{M{11Lhz^G+P_^Uf2M@LDfsgx+~hBk@J_*BFX1MCqlE7k{3|8g
z<c~@CQNeFWxXIrm;The+|4%=0d$T3nE%-|$+>~D};o}5<lZ2c6%@TgC;O~%dlfO&C
zZx#H?j1$*CL&9qWf3Ad^@>L06DEMn7+~jYN@QC1FA>k%}i-cc67sl}EmT;4Qzl8r$
z$j>Z2aeGw>e?st=Ncc*DS4;S6f!9m;dVx1e_!faLm++keUm@XUxh)cI2>uQUH~G7g
z;6@U>CkdWj)?aTwiE=X~e4yx;ED1kL;JHa~Rl?2smn6ZfCHzt$zh1)g1>Pv(*9v^O
zgq!8Akno!Ye~W~h{2dZLOYnC~c#Xgf2@eW<zl8tz0k`uW2@eT=rM!Q?L<OEM;Z-6Y
zo+07px;<0E&GorU!XFj#vn2d!foDs&xo*#uaC3d0FX84oT$S({LVl5io9ogN3ICVi
zFOzU{U0N;S=J{8xguf}|)JwRz{%??Qa~<0#;pVwjlZ2b=*yR%bt|+%z!gmOKg@k`E
z@RbriLfB7>gy((4?J6eWCvWF?hlCIKg5#YMZu;Ra2{-r4-4bs4Vdb{|c59A{bP3-o
z%FU4QlLekB;R6NklJKDd&yw(BfoDtj`2x?C@Jj@qFX2}TT$OND;6)OCqrgifyj<XA
z5`MeDt0lZ%;I$I|y18GL@OQ;Ny+Oi15d4i29ue}JB>Vw^FPHF@0&kY^hXuYu!v8Mt
zl@h*I;4KoqQQ$EN|4QH;68^TpJ0;w-|1Jqn-No&^Tf#pQatsOIBk=taen8+o65cCt
zrJ}$64-w_2OZb@rcS*Q8Ua}<I^kdl)Zu)^-34eYMZ*RVYe=P0^s1n{T?59Y=&3U9m
z!p(W4Ou`=*<yK3$*)O#cZu*US3IEcxX9@2V@*5@mh~RIMaC2NVOZd4$|0^W?GJ&s@
z@QDI%k?<J;k4boqz&j*7B=AlNH|Mo334cuRcT4yRfg2LOTHyO7{2hV!NciUhXBTg5
z@sooBPp1nxHvAM}KN%A47I>zF=L*~<;pTjrCE@10nJwYwyqPQEejz_!!pj7%N_arv
zMG}6mz)K{2xxmXL{5gSFOZdwIua)ptf!9m;I|6Tz@NEKbl<?04-X!5Y0$(oSL&bP$
zmhg)NzCyw$2z;f4UoY?$37;kKn1q|_hYkrh{Yj^U&lhsKBz&pByCpn(8ZM*ZV@SB^
zm-b8e!$MAvgs%{|QrX|mO@Eax;ikXJknmT8oJ<K{D{z;Dza{W23EwI3YzhBP;JFf>
z_NDOi5`Lz@RSC}#c#(wr1YRQHB?2##@R<UymhgoFZ;<eR{+9PwqlDi-pW{suu88&O
z@+9~Q34c(?St;Rv5O|A(|54yE2@fyj_34!GM+ASDg#St4-4gz|zzqq1Qs6xj{*=I#
zs{VHPoWRp1{I3Gfknq0?+$G`93p`80R|-5^!e0`2u7tlTa8<%z7kH6`zaj7v34c@I
zWfHzt;I$IIUf}f--Y)P43GWbiqlCXL@Z}QzzQCI$`~!inknn8+Un$`q2|Om@I|SY#
z;hzb-Q^LCi-X-C?1a3(9R|4NJ;a>~9N5a1qxH7B1y&VvEhJ+s!c&3CO7Pw2oj|n_W
z!X0&deC0}bn!xiV{3L;^5`L<{izNJXftN{mrogKue1yPjCHy>r*Gu>>1>Pv(7Yn>e
z!Y>i{atXg&;LQ@AC-9XLewDymB>WnI$0U4`z&j+|FYqo2zfs`b5?(BDL&9$s_<jj5
z6}VE}->zl~JYB-81)d?{a|NC$;qwKaFX7ic%I!*(@ZLu_UL@f|1%HWzUnB4`37;bH
zY6(9m<kw1gy5O&u@UsNoAmO6~-YDT$3A{<div->*;g5>>YlVb&?#2)0@L4J0D+GUw
zguCd6c=*I5e3jtuknpmPIDe;vZxsAp65jkF=kJ#A4+Os<;hoz#|9%PoPVo0gc!uCt
zX7{(lw0pQcq)T}17hHaZgvUahKU2b+Kj-`|3EwaHvn0H^oAYN&_!*);xe~sA2j|b1
z@NB`aO1Mk#7fJX8!CxZbP4r?Ae99#JX2D-A;Ta!u{#psI75w!Q-uVINZ;<f&1%IQ2
zy99regg-0zmrJ<oYc9W8!q*A@6%yY08RuUq;oAj&i-b3C<@_-T|3>h4NO;p?eov`W
z!Uqd`=#ubmF<!bQJWKE!65g<r*Jr<kXN0+Z_DFc=7S5ku+u#08x=g~&-?vmt_+#St
zFSQb$E9iO&cL};#!ee(cb5lC!@%qraa!%$D``cy1>Gw$Hr`v}6Ob}1QhKnk))crP`
z-oayjVxm4&I=z?2{AA7H^`ZAJ@gC$U**2VOlH<8HobS9io^Qi>k8oVI;k+b{7uj(3
z-XIPuB{rPuWPZwQxOr!S(yDDZe(+>{YHc`v_+@?SZMgXkDN1ax;rL;f^=Y)>r&_3@
zG}&;c4PS1<huZLF8*cxd_zD{?UNyyXt+e6vo+k6tV#9}<Af7QBeufS2u;G1gTEp*3
zY<Q-PzsrW7X~Vm1_*pjGu;FLh@clO2{_>|D8&2=eus(D9?C|Fni2F=7{9GHJVZ&WE
zJky4sXTx1K{CpdpWy61A!?SI;+lJ@b@C$5sz77AS4OeaWg*Lp%hG*IE5*t3!hL_oJ
z^VM#YTy4WIw(-~6aC-NF`Kh<zqfHRc1{*%chBw;qOKf<P4bQgW%WZg$4R5yLm)h_Z
zHvBRhzS4%XAG?aQ78^d+#vilcSJ?0l8~!UB-f6>gZFrXr&$Hp(HvHE%+_2$S+VK50
ze4GvMvEk!wxKh(+|5w@YbQ^xP4bQOQ`8GV$hI?$d%Z6WL!?SGo1RI`h!@V{<*M=9^
z@O&FS(T1xwe3A_>vf-)?FR|g*+VC<Pew_`kw&8voUTeb(ZFs#6zuty7*zg-{c%uz3
zvf)iO{6-tT+=kOTYs^ox4WDd+c&@PFQ*8K38_wUn#}iv@xOgQcONiO<X*M|>HoU}!
zciQlqY<QOqzuAU&+wfa#xM9O@wc-11_;efIW5em4Xx2xpTWHQNwLtiP8(wC^Gi-Rd
z4bQaUx7l!)4X?1_SvGv84bQgWl{P%rhF96}d>cN?hO0Kb+J+a|@Yy!J#D?E)!^>>=
z9X7n$hR?C#wKjaN4X?N1H8#A#hKpCUveZT!{#zS=lMSD5!<XCeIvd_>!vi*ag$)nd
z@Rc_FP8;50!xz}_m<_MD;T<-d-X-+k&wn-WUk&_M1OL^)e>L!54g6OF|JA_%KN|Sn
z`ST-cXm7fzr)_bjDQYAZ7|`3PhBl<HX9f0-J#ccGa-jEu@9}V+s}Mh1A0LQ+-rL*T
z#Apgg9*A$TXbMCgh__jE3Zq}LXbL<Yh(Be~w52`}f5@UK(0Cxe)S_v#aUlL%i%w^B
zxkXbz@j(1Wi>5&0fw;$_DS&$*o@3DzP&^Pn&!Q=icpyI1qA7rQAnvee3LGAYe|Ow$
zF9m+lev766BHC}!6gWitEt&#`2jVYTGzALLev766A=+=z6c|MNEt&#?Xum~MAn-uE
z+@dJ}i1u4F1^&=}i>81d+HcVm=tKK0ngV=izeQ7E5AC;T3h1Hz$ISM-82!0LQveU`
zw`dC7q5T&93r4?W(G;jd`z`tcMn7cH6qrN%E&4)6|JI_j7+r4B6o5nfEt&#vXum~M
zzzyxUXbQBU{T59DHniWODX@n2TQmjK(Eg)l`zery{<mlfprQR1O@TAC-=ZmChW@u`
z3Y4M!7EJ*%^uI+@U<~cIXbOm-|1FvVVd#I0rT`e)Z_yO^Li;V60$ympMN^;)?YC$O
zaH0JcO@S@6-=Zm?h4%kswm+ZIpIbBqu+V;sroa{2Z_yJN{gOpfpbG7`XbMoF{T5Au
zDYW0BCo%fB7OgV6+@gJqzR{v7Acgi@GzFs2ev7666xwgm6nH}WEt&#OXum~Mpb70i
zVz!?GOz3}$roa-~Z_yM`Li;V60!iq9i>3e)+HcVmI70g^ngT{>zeQ7^2>ox-6d*$X
zTQmiR(Ek=q0U@;CqA3uB_FFUsfY5%6roa!{Z_yO+LHjM50zGK|VYB^ZjQ-rBDX@d~
zTQmi9(0+@qVDw8CO#vLV-=ZmSgZ5iA1#HlMi>5#g+HcV`0ipdCO@SG--=ZlXgZ5iA
z1!B;Ci>3e!+HcVmctQIungT9pzeQ7^1?}%K+h5D*&n=n)E@;0+Q=kRyw`dBmp#LqJ
z0xM|0Nn>`cOsClu<AUZ>(9zWXbVQ;TOLS18=Sp;?L{FFKVu>!4=mLozFVSNqdbC7e
zAkpVY^l*tjMWWLr`dCVT{ro7=-$?WxiQXyE+a>y4iQXvDYb5&L68(ZiKPS;oNc6)J
z9hK;aL@$=;phVA==t_y6F44sjT`1875<Om`$4c~QiM~Lh&ynci5`Bt9r%Cj&0aE`<
z^fwZ{N1}I1^md7USE4sc^cso&w?w}n(a%Zr6B7NfL`Nk$BGHQ_Iw;X|CAw0gr%QCP
zL>EeQfkcm&=&=$#TB0wI=yN1`xI~{K(P<KW%pvu^M1LdEdn9_NL~obqcO`nGM6Z$P
ze@pZW68)S+KOxZ%OLSDCBNDw>qJt7WSE4H=db&gxOLU<`7fAGYi5@G_qb2$Ri9Sc7
zhfDM+5}hW|#}ujmCHfnacD|N+K`N$O=gH33Q!k*6rSs&Lr?9h&pS<3o7^5-Aw=1;Y
z(oH_&%oAW~C%|YuVC97bNH%ubF<!2*`2^U%Pk_;Sz>>%FwtS76uCE&7JU2`QC{=8~
zo%4-P+cHDdzEDHE_ZLkm$cg1_R-@xj#kRM1_)op5$`5@xfNzE_)M(l|dgS#4hGVP$
zDVS)he^PI^^V|lKyk0!P{}|&R`v-cAJg#c{)wXZ1R@-_~RL3TD%kjW42zWsVNbl{g
zV(S(&KdoOH#?M7wC3tbM8XA8;I2Bdf6BwfE;~xQGoOGzS*O-ZhZAvQupJO`mTIEyz
z_yQ!-mty487VlNHV7ICjcd2>-{^e(>T0zg!#d{HTa0Cj)mnGvvi}%h8Ttt7D<lwIo
z7>mDE!3&V9N7aiVA%niQ=Tr1RNn{EFQk2BWEfiu%oYa(XG__Fj^z~->2##cHi$6gf
zI%ldd654xG1#)6)dqFqxwig&AM2!}9qnu8?;1i#=*~7%FqI7K&wEx3#Xk2SIK7k>j
zWa2bby|8Dddhrk@GmvIvzyLN|1#63swx`WTHu^O6t5CkGE$)zNvzCG^#y8Nd^Yxgv
zt~Dh+U0F+k2_ueuoL2BjXz?e?!ZT5op)*ogRh~N7+uH(7_r~u5n;I?XUQL0CR{Ue>
z<)}^-+Bj4}g*&M7Yf*WvU^g%79u!rj6?{SMMw?k)ReKL?S=cy5Vhcy{Y}ESJ>8wbm
z6Js_qA_Ew&MhUD2i4*`(38`b4sSXGD`qY7baKRSVQtufbk`~bkYG`qf5*)<jCaz<>
zo{qncz_3IX>tE%@VCDR(_Waa^O5#F}cxvhv5K=jRQ~p3DF_chsb#cudHS-qKpyA9)
zl9W56U%7)>x$y@{Ul6jIs%B~L7pOg|k{T$aze}d#Z%W`&`n%*>{B;DVq5}d$6XPgv
zRlDN5epCJcC2_SNCroB!wn?gtJWr4+Pd$xDbyZ*G)0+rMQu}78yH9JP_BX+HQIiqQ
z`||KjFW9R_hegm3av2xjngYK#KwYjzho6h@s-yF&UYIVcuSbcWi5!Buo>eG5s1GUh
zQjOz33hkhUg%cUFOCasagzG(p)D;Cv{5=btd;=t}wdJ~o<$A$}Ok&96Hsm)9(JUd?
z7yJF2@>7+>LaJZ8GVQv_N@6bmUNq%5N}`;9SAEw{q#E3yByQkHVIMM{5UO_xNl%R7
z3{y&`D2em=cMm?SnE$mSCc}PnY1krThhCD(9=XPv?=hl2R+)>)xy3d}ygx8M(cyeO
ze+Ug|8bxQ?8Ga!c^!yBrqz^I1(Y4$~GUo5_UuMLZ<wNcuib088G>E_cj!RZUv0=R6
zckHZhb5<1Gung*?vfGV)Ts(DsH_!8=J<p>&50csqU5H2iN38sF5lTb#;PLQ}Rd0qp
z|1_Q-N$tjU$PXi)ZZl%iT?us80w=r@6Tu3*>oeep^#Z`;QwzGGjz}zsxrQp*ZY)L&
zQ^27fhcnVPfc$kQDu%~4dQi6(!+~v6mpfkz5BL)x=WATwYj3it@Rb7?&js5Yp~c(I
zz5AWDm}?c|#r>GE3%W>5ya<xbQU{?_y`VE%<j{&cNxWTlN79s7TX(vn13q<AQkMUR
z%*k1jr?8USl9r0(49EX9In&XBDJH3a|D|MV^IOi>3pSz0-iBS13P5&%e3O$9KoiE3
zKeDL|X>WmQ=4o$Lg%)o@-~J8V@c*?2|JTO-zqI`w=j+okMho82a}8r3SvxxM6Riz{
zJDT>pX*NT;9Y({=r}kTBCTu+1W@niMmQX>LLxmM%94$w~Fb?wyx||O@hLOZ`Uy9sp
zbkkD8K5uTO;`<FCjGrQH@tZV!>_dmvFwwNVQ>k*~I*M271z`FRsy&XifvTnb>maRK
zhQCOUXxeR<($KE8uyn<!;N!f@n(%&e2m^pdVQ6u;5~PL3-<affBbRE*78;-M>46Q+
z^B;F8TERP^#qTHq;(kbQ54O1fWpYP{-_H_1q#^y*VJxW%Izx*)6)f(cT#;|<H`HuC
z?5iG76kg)(eKKnMWPFG@8+A2MSA$ELA*4KDlj5?ZxVaSOpa$bVfr(<hB10uKr4?+0
z17ZC*p2OVjE<saJC6=uY-c*C@hgFj=KhMrLjrgL)NZjUWp#`6+ZCOo+2(2hrL7T5Y
ztzg=0Ik_4TDlqm_glCbo<1JK2E7*^w>{o)*Ao{~%W^G2>-adsC>p~%kTT!9?tusjm
za!-HP?1ZDivyu08kvD?8?P-bc`RX$<SWnx9@9?Z`l$~-;pmK$}58V&xtXk3%?kd!K
zbHDvdRjBuL=Y7|cKBL2(x2M3cd)126)qH7D)r2}cbXF>D2f`$fG<^^1WT*E?^g9y$
zibOA!=xT}njYLnC=#wRS+syv;`D#jk`mjWQF46Bwbc;kkEzvtAdZR?YL^SlYjh?h^
z(I=%|JTVn2^YVDIs!z;N^Co2k)A7xPZ>}?Ap$-Qa^3jEp%6!^)K5c8XwwJbqcl-58
zC6R-7Uz4*nadK5tU<UBK5AVKE+dr~16mx9padfH`9cpxlM*n=#AszlaUq;<WYDH(>
zhfDsWMpOTQe+`Av)L3Djnh_l1)AL=vymj+0@TKHu;R`bqzjH#&uf^6k`SWgcE%-As
zC)!wjv6&?tn@ZmQ)E-sqvHG9Ud54_KVtwsv7=O+I7^-Kgr`V_c=$YcvwiQp-ehN&`
z(^h?#s^qP|bLcHOvFV;$J<~liNHp|<&1f6aZt-iM`?as9vw_AL;)e~)KxX;==-4p+
z8-ttDR)gE&*A5xCBU#lplCJ)OVYmRPG#*|74CoR-vl+C{Xl77wRD0SOWG1iKLVx0S
zz!#eG+tW@%8hzqZ0K@*r?mL5=?mnZOXFsPsZQp+S&qpCU{fUnPpH)A!<1kWvn&H>J
zBY!^p_E{<1Zy058EAbwzMXLJZ0b*NwOx2fU8J~ScP1!d+{vp0_y)gS3bmhRnKyD*g
zH3d#r^*b|=AtOE`Ve;t{v-2ip2Qr*b#;{z9dX-+@ANs^md6Py3-gQ1<;kMFw{6f{Q
zQ1z?hLm{k*dh6)gpQByIjc^u)k==nYm^C-$Z1rp1>Y?w{$kxEc{=Cl@T(OE8-{jb=
zbsYM#cCZ%n=XKu+yWIdj&#jhy5bMcmv<SAmF0ecCmQQ=fWN1Ks#WSUNva0=LxZfL~
zplx?wt!?zsfBRZVoXYIN6WZYL=Isew=+(Ydwa<)O!RLIfXi(^jbE`r}9Kp{T>W8?3
z|M6<wx4@v*Hx=aUzGXTnRt4CVXIi25zGtdWJ4nWO%nxD;!Wi#P_G{}g4QHy_6nDBY
z5M7I^t9k1K=c&5aovua$=P1`k@47(oMe$~9b>snm-mdxQ8>f&D4{gZwYhU;^#A5bQ
zsbt2U()e!?9BL|b{OHR&cBc!C^j{o+ppjkvy#04>@;N^BI}Z3qevx>CwaY(ppD(o6
zk+an|@+d1O@eFV8G#WOjqjqd<_Yg&)wRXC3Cqz^IA~9$9DJW+XIpT9_H>D~V4}12d
zD2Xg9UX*s`wMfmIkmU^j9;|9;eJ-5QJD<Ra(Y&hs@HfGa{n}T?X|OTBex*;_=+}CU
zR8YRCH*J7Ao{C*CYZX1Ni;f%R*A9{l|HwG|Pc9gP<GsDBKVyk^jlu{#?jQNJ5kv)1
zN)<09_$Rus0u}UW2L{oA+9(GnWDE#4#H-klL;s*A=rUu^?%v+STZlWc-Z?f|UAng$
z!%)?hxv^`+^8vStr(X-Zi`er4cL|>1SRmgyGVCtHcjw3l+_mhv%-z7Ae|9&q=d<o+
z_I%#Gl09E_$Jp~tcPE~<6<F9!|2b!Pyy#4~%ct%4NBv|9VYh<t*(wETOa-X3s(IZR
zt%Oi=HlFRUnhZ1$&mq}(5=W+S4wR*>AK!~$(1N>QE;(CU9jWOk!gz*KHb!Fg#eP_J
z#RpnD>EWC`&?CTX_?wr$#CM(73F}E7>Iz<^F5S?L@=S{tdNsb^)!XaUU7kaqB%o`>
z*wsg`CcVB%q07XJ#+4|+<^f=B+}C1syi0@s2aFErU;ALc*V#7q#=Qs-E=T8(8B#^H
zeaNA;k&e=Sc72NCDOTItAi0-mX0kB^#j4KM>9D&EuJDe)NaJHPw9ntEdd9)jo701-
zn+lXtVsxmXjgIh+;FqSYthd!p_$Q20uRbZ$)>BY+PE4QVg0`Ux1uLQY3%v09i%EYv
zhP1T+500SmYWX7!Y<DVgt`8!Fu+12Sw%H0~@mzgkYTl&Oz%aYdH0KBXjGS2B&jM-O
z8&@@Xrunpw#E_-2iZIt1`otlA^nN<lP-@<~x@`CzpY|R(Y*oKLL)Cs%D{{R0wW(^}
zp}-|x=Zl5uYN##s+US(Q>ENILIVzmhf@z}HREejwul}KR=>?I^fgOc<fh*@=PA{w`
zF{V$yKD{u@?`Tu=I_k3ZU^@J_-|77#)b3CnSgjxM=Di=t)CaT~DgL}z-B!IIoh7XU
z9yG|=hdlbJK>Z`X^yyctTELyDI$y-{VnmLr`Q51er^Z6qrB917XS5W$M=?2DRUN55
zZIG&UQQI@rLkFoJGEo<1Ht&11fyNE!9Y5S_hEHFdt!izaix<0m(bP;eudQw@pYQac
zZC|H2j%Y(6RdsxaDx)b2;>;;)8JJL^8=G46;`GF>7VJBF6MMM-<Vy}RVk7$t?lm#{
zIA8Oo^^UtFP^4<#`n7%IE)JYwoQJN5LtVyKB4Qn4?C9?8^=Pr2SOHeodnPzvn{q)f
z^YP)WU~M>ZiF4VylRB;bz(l}B8c!o57$Y&ybiNvDAj2eIju{n`9KY0eYn+ztcNfu&
zsGl<t6jo>3iBlcfsYd6l&rO`d)`8@<^AZ6BNw0(gecDcg?#IF5?STp~6b-HgRHT9B
zj*fl|UJb_uk6xRi<m^bC!Sxwh?+E=gD{!T%FUFAEm<w4(7i<fHcB>UTus*qnvOy&3
zv6I)M>z3*M=%{s`TTzN<`uc|PQw<C<e{^&yo?^M^HR1u(2lij6wbT51+>fW}M7BZy
zKVs?h9zxrgY2SuBFF`ccHh{x!6#y-ernpBKo8UDt`v-6G=u?YeNh5svM65LK_JzK7
zApZFqaCK&eat8*huT)cm6{=p8P79HXz*g&zdf}|~tNa=)jYgfm(uD<t@$xYTG#!}8
z^+1l4O0*oQGx91aedz|On9ZV0eTHH%%g*5aiH*#z)aV25e9QvOxwO*i&mVo&jes>A
z{rfaD(v2-?1EBxmzrGIZJz8C2aXP-2%7~`TxG@F%X<t#;-8pd`pG8LgRK!M2PV7c6
z+B|9%WisC0i7}#mT}XQX45h=|=^B?~uU~R=d@OWs)PL5uUS;cVn3ldI(`bMNBF=x3
z@fBp~%AqdmR=YdJJiu04Y<<TT7IVp6YwPq0*`b~RIIZb9FF0JEFpe_bG94p-on>D@
za$>j8*-!&niGD|}e#<z%P|Si5cmQyOHo^h4h4%CyYvL9)>doq%PK!q8i)~_j(P9st
zuvU%qVhCbEjA5{-*4Xn2zO+xEi#$;AqIzQ+0s4e8fb|5nhZ^XC4=wavs(!k9<vlCV
z4LJV7vhV^fs0`r{<0K4wWUWTlGBd+9s$QRAEa5_tl221LO3F3vurNXZ)u$WN7`CX|
zxSqbWPpIZ8i_(qp9DvCX>!J)}6bFR3HyVK(nZWc#nQD88Ncu#27Y@7ys>@f59iL(+
zKOqzK?Y(6^_Sdw$`xRwigYZz7)L$MPC+;S1MvM(hMkv8kRDBTXAg#C4gC(K9ID>SV
zW<0%vnq82NDVmah+1ptV*}ZUx@iB0(_Qj!(agu^A!n%PL%I17#+=1l8b_|j*t0~!&
zr<j&0ZW^9c{5RBR`VyCsfvUs4PB!i%k$RTr&`z&D!G)%JaE^I0&8o-9@)l(pKav&e
z6<L^4oZ%)&ZdjC!b^C;z;PqiF9YznCh>;LY%fJKklcA^mc^CP``g(W)_^_$Bu;c~w
za2E84U7_bzxRl-kxHtIN_*TRotD2a!e*%NF7xCcIuIJKj=F(aywjE9T4<3n?!hXGQ
zptN!~?Kx*F8-8p5OokL4y9A<)S~QbQ5EOt;JMu-U5}%G_<_{$P8;C!@AOBm#zX<%c
z<ptIYwBL#JI>YSLCA6d#Tg9V+GF6{eowEbuQ;m*#Ty5Kv25)?kUY{B1tv}UR0rT)-
zGOZ@CJ)hYQ&Rwgio6m;9W*UF}kIA8XFCz2Kq|U^$-Qm0PR(I|EzvGBHbeFqK3EXb_
zx2X386gI5Ehxxb!^LwWn*%9zy=%L6oV=Riq$V2U6Q*Sgwm~jot!1t9TxIIJ=eT<6<
zZVwSmA6m`%uAJj8oBsqk)%C_LNav^MiEn8gN_!i&!esN|TKdmp8h<+zo>O1bO!?a*
z;=h=w7~StvNNY`uU{cvqd@+7P%>eG_yp%>CWb5GH=xb-+*DmqZ2z9|S*R0^Yl$$=_
z?cv`rM4j3^IN<gO@vw%sN32%0M_L3QE#h|=V=;xI7HpzfwTaa}n_BV$|DHwP9mjx&
z7S}3)3;Nb)YINM=)Gun=S7~a>;%Xy-u%UY8^xFA*ATO8l{pTYly8#8Fegx6SSO-{-
zG~p}I27>UR4dG^RATRlvoE<*x6V~l*y9ZvY-*sW8p>t`Js#dV<*S32v%%sfN56*wz
zxScU9hSfxfi9YR&kG>gxo?3##^=bm}tYuH?kPit6EiO}>;kWS>o(kSV%(vQ4e#b6n
z_(|ZVQFW6k^f#(+KBTt(52N~!!B^Vs%2-cOI~}T{vGByNFnU6|0CJ6|Igl#=)p!U%
z`-CD+FGdR{sO)?DgnaSLpl<e&#V*~@0nC5p+%o4q9)QLaCas`^aq4SYpkpJSFxVsM
z8wP;~eT<QS^)($Fr9}Efdhbp%_QB?mfu<=Vg)+nc!hZN_BmUiXte=dx!4tpl7~BM3
zXYh`USHi$(zF_ma)}!8+cF(5>!?OJeUsL{o5CQFzyHFZMF|eTayRp9Wy7T?`recNn
zE9XeByU01x?=EwWoZ_x^j{LK`0qo9^&$`KwoFkuiH?!xf?v?EMraOkGZJmZqtg5FC
zMA_tRt}z}!rE${*s}gM=rT`UD6xtu7h3%>C4CJMKFV>P+lhNKRTOb*|!`JOh#isRQ
zTFGN4XKrUt#R`mCAXc-+pP?q3!^Ha1+FUK&tDpciG{lW%o9#O`UA78`-I*?$xwN0K
zm-R>IxHF6{sx#b;*u3wXj14SSV{5KX!KNM}Tj>wB<VD-Cj)|>08P&lS|9kbHm<S%k
z`|`12FlM5gZoUaRaE85TECn2+e|BdeBWAOEAqjz)2k=m}ubDVnlr+)Ufz}rJqj$N7
zP$2bNz<%wB@gbzqdUq(4F~p;#x)bffFB8`h3b`QvO2Kt9=Yn1n%`6@D8qLc3%y>ZX
zOfz|g#23PTt@#}0MsbB7(KK2DlWr{K^CLQRKo(FDPvEhvzId-$-aA)O+deZ!i1L1B
zmX{Gf$zGnx|GePe3mu@P&d4qpw3%mEd^;#3{{u5*;YB>^wnrS$^w((H3dC!3U}cCh
z7(*~J;@8lKya!Fd{7Lf%-%N$p#?VuWGm-_bpz5!;fWS&cjU04FhNF-C(HGyrqm};S
zUR14p#wDn{7Fq#5tsOntcnHa~)B#|GsIw@H{EajGGt2|3_Rkm-xX(z3-wO4lIKv+i
z5d9-bMKxEkYNC$SN3msmvlNGfaAhnLImdgzY!ot=@y342*dC%Z`rs?M8~WgDC;vuY
zX(Z6c*uDkYdV^{TlycJtUwimBxED;)P0&a?YYz0&ZxU_~kuvBbmV9D(VZEuZT?yED
zmMW%gj1NIhw%>$$n$REE1~?<HQ$_&qZzU#HSA+?f@jrmJJ73FB!~V75h{Ji`2+)n8
zOs0`nx<$U%p-Zeyq2dTXsk2f>BP9pM-EQonK}o|Yg1l9p(Bce7Fw=vR<kPCyAVa;X
z#vj7W@@s0FrSxT{(!a;N$(0_zm-$M*e(mGD_BUij=$_4eoVS9L`&nasr``DW{LwT%
z9a}Zi_<m1wGhZ_c1vafkZBT9*I@@TbL1oqKceadEkukmxri=3f(_GFs>yyXoGaVA*
z?^u3c$R#5()P8c$V)^)JIDQzJ9_5*Md+qr$`sK6NXA|Ws<@Fi6w1_K4wBjF>wjF79
zQ5#_jeO3R=*0e>$K8#nv%i|kjJVp)%M$-7x4q@|eoDSRJA?v`!q(dtjj1@QX5d_DC
zl|5}o`qtsB62?R-UfTzwGZL&(I*qwP&7huHhq1SjY7{fR?ZM{dDf@iE*OuD%<nQ&V
zLlDZ-rd_U29i~mn4t4*eP0Q7%j?nMU)Qa;}eQK7rc$}&|yc}k$PjzX<UVUo1R$Qb{
z&CrUcgnG_)hJQq{dddp;FWgR5R$y$vP?Qy^&d8PYOm{}6(K93Xs}-)`<Q4hBc?UNj
z5vRM#!41eoBX~uFGqQmJ$li@F)ONO$h930maDB5FTWd6`8;#<J`DdVADApBtLB9_3
zuSnl-r5`-R((?lk>DP_0(iK<=&;KDyr>ca5y-=lo9paKCg(ah?G_V>g1((AaE&-Q*
zo!b&M+!Cepq8gmxag4`h@tkS#%o2hIIKwVhTrnb=6j2&`0eBELV8u?4UkyGpesCS`
z1c`Pv!613Pf6fa_cZUB?)5UcNm<pa{;K62d80R~9klG(_WCOneDuo^q_z}DroOcN4
zeT(xJF<$VcT70n^%yR$Ac}DcfGrmW3P%9W0KTf7@Tff7uaNAd(hNVwW^xEFg;Q`M3
z;?$|yq0o^5!NI=JVYtQDfOz%%QP)H--$>Q-gnG~@I*)0n&sBmW{n}gFcj^aUBZ?Kg
z9Ek%0cQ2WOrz1GS+vwbs?{dH*pu+Xh>v?2d{oo7jJHO*Co+t1QLSPwwZ8Ni*CN?~c
z&ws?Vj!&Wg#Kyk*LS|}kuvc>?{=vo_yTQyPb3f=uN)z^FRbYvSS?Bc$-p4$J(MW>n
z_#i%;F-$`o7G<M*@8k@#ECv+}Hf>RSoE^TkjwdDXxf?qJxCjcB)7hJC>E?B3VobmF
z4h)v2fO(kK!AVY_im>H4pBmWPkUKb-g7Ytr^R)tp2d4;1qt`ts41RiZs~&1XLCF1J
z2;)-KA8!O1GO*q19*F2_N`B&WvCa;y&qsXK8NLO4enfJx=Av`3A@7N)E4Z^^kqe89
z$05KMEpVt6cU-Qf%)#207PyEfy9bS{asK{!B#)cp{5`paapyZD&ro@bveKN9*|dnz
z??Pa3#oLhCa95gwbUJbNM{AF(6%$7Jv^HPfCTD0Q^7^8|0e%F#G3$;*6|ULj9n0&r
zX@bi^VL~|2Bg~*#mq%#)?*E>KHne72(LGM3B1SGP=d2s+4R^T*EetF)Hf*N6s2u`#
zI1<TdN4-%C==y8YwYJWq7myw!7c)H~X5WwtZHyotPsj>&A7hI;+SwrdO$)<aSOih8
zO$3CwKVAV#fL+1I$H}>v@g>TPB}Vwqq^BPEr{~xgxF8D0I$QnjL1-w=+c2-cV1V+2
zD<c(cjXRn7K^KMEe#C%6aU4G$0pHc!47+h9P@gc$iyIP!6$j(Yg|Om+4^y+}1}|Dg
zzbx#Ne~1pS*uj|bEb_)*>>K|~PtIip3h6(-2nk$s<vB4X3n6|-Oe;_lpD|NtEMP{I
z*m9@~VQ_7Ou}r7f1?(Hu>p?TjCB-<Dqw164*w75o%v@C8_ytv949aOQpxu;`xR<Pw
z{pg#ld_0Upu%Fpi>u+)CD}ERr%Cr!{@>(Cu+r;uAW9eV&0F){k|2N`!89Zcx(Xow%
ze1Ty69yn)-FZ-W`Jk(c66$$t)W8qC6&6<op;@X`^>1pUa<IRqK4x;IVySvcd44YdB
zvx8L_gt@lxY1@q{kb_|Rq#W9o?4z*nrR_k-0-uKVu(b7QyD6R~_G5J7t-QrJ0+T&U
z$GIomaQ(#K=T)Aicezu2lY$>%fVu~k2H(dPgoWHcGwAoq9&HmgaI5LOP@@$hZr6`3
zw{_=Stk)6)nVn-*yU&PHC9uz;qhM=P2Cu{(i?)hhZ9iW};@XRG%_draW_u2O>cuUV
znGg@z+o4mo#(^UoO0r)z?uSU5Kj*gtXyb3+4L8GNumkPhkYeAwhuzEZivu|8DE9ko
zsA6^Y74GC1+aZ+geW4dhf53eYw8l2bZ2OAsu>#c^<2RB~z%zbj%qNc_b^(6{Gxwvb
zsTSglLP3jI4=h2lrQ@BJjz17Oe!EY{JF%MNI(`j0E^Rb*JYDF4wty$G>zn(Gr#5ii
zQk(j8dn0t)48*Qm-XH8f0d1wD<GtBv%S&W3yaAB{@+3H)5|-|1#lY(|{(|#}#Gj2!
zw8QjQEFLam5d0p~_sEwDd6>a)djuX-)jm?SA#P&}%&Xz2nS9a5^zaw5M16?cKeAhY
zh)qme@4nNoucApwt>}tg(@XPGVRX)*{DhP1(-&&bFU;E)xS>#AfH?^lRt_1}=ma&d
zE4WM5aC75Jg2qA@IG@}STC5BR{zBDL-E>~6x46*DM(#i9j!gcbP&e+#^qd-~gFY~P
zLK`wo>thGX4X6dGhpY{(Zn3*RrplVLrT!RI6A=_lnx~<1VPZ$C*XR3jF8Lyzez1Pu
zX>>tfsLbwo4U{O>cMXeO_`wl7w%t_Vf}f_5GYINta~Lj2V)m!b9feCq@lxsy99*kc
z!YMk#MIh;z80%H!!*Ga>jrh@l3V8WCBpV!DUuJv=!5*-6x24bt*V4UNG!3%OiH@H!
zMj8~ENJP;OndZuV>j1-u-s*NysOD#W%!rwY>s*GMbh8HQbnO3wH#l1Z?w`@DnTcy^
z=nU38I);g%`IF#0%_BR^i2G2&`{*TYU8tuw7z04-2IDCDlBNY@C_;sc(Ju1YhI=mt
z0$-dVu*O(D>&ZbN6ARp+&V5FI76om9cr_f!nHP}O<E~z!&A1uaj6JxM;nfw-p)Q=t
zaB%~$(ME}{;CRyXFfZc97b_w0XS07jQ(z|zHt*|o*XP7Sy}beaa0}n9IyfV2(;wQ~
zfGB^Te=^=i@o3yuRr`|vHt2q|7(kmJwuQxUZ{T&`(!;%2+d1#0^)L~=PUX%Sg^|t9
zMp_M2Irqg5_?#ED9dO>1=3PmlwVCb=c%*kmAz(KX9NbUQH#jC1hc%YP$Wf7zUCJ5=
zm2Sb3H9iTJLh%g}YRXvzIaUEXUPK@N-Lh}SBNq})y9!yz364fFiAOP>{91=6^tpq?
zs#^^INgW4N=S8st&XQQ1e2cLS9YE!>TW4m-%DCG!xqqPUh=RZ!88@%%?QM-Q@7!)g
zA)iG~0@oYo;k%w0`e|t3W)GtJxOsEv6XVUb(B_UnHAT#_vBrffMVp_bGk-WY8c}rL
zh8FnN3Xq*U(&W^Dy!}%U590B`%Kwoh#xd4!iMKs;>%W)XD-vt?rF+Ra$Y#P$X<|sg
znU?Vf@>*iP-~pv}qXt@mVW8!-(rf?)%fJ?VpRv0YV|(be$KO)(Qr*FsI7g7p?QT-p
z(hXED9p3S%L6h+lGU~aALmTJa<A4&lLSFFEx`5R2wt@7sNqgE(99SBQz#rKWd@At}
zH<y2cla0Wq!RT2-+nhw0KUpNzvxeHvT$|AgE!lQAEN(`}ScrVo;3_XWkgLSy%vxN<
zeNAoqJWZvWIPcf}8o%>gFjigl?mPUWj%-&ewyJHtX*d}_tU5lbSJk}ZcTT{0+*;}&
zwe1UJrAsClvBM9KLt9|iW<?Kw1^Y@xGx)I@^X%!?IVSme9Qs@1neM|N_og?o+G96S
zFmKscSMV>;QiM8&7Ectppk9M*;$}uFdEjr2L9j%u_XD?i)?iJ9uf2hjjeFLR^I(U-
z=)Y$h9Ne{Yt)|h5EYtsWs4aDH9V*QHrR72307Dxx(3iX`xj!dX6|7!;jypB+o-v|d
zDOaHs6u{?@=-5)#EM?D^=(c8K26Fc6Al(17tuR-x#`WKHVvPh8!&z-JT+YZ3Y$1gW
zkw-h?)85B%0R3hYQ?5t*(W`C5p#WWHiH<ccPEiVQB`BOAnbGk_Ct-s6{c$mRosE}6
zPC*#4<g;mHN5@`>AT`)3QDdW;vElBYv#}Vd%z=5e_y_n|l6o?>b86czSI*|u&@`>R
z)RWeSj&ap_R;8mf=fiED7D`-u5psJqILAZ(iF`x*Qq}3(P7CE*-I+Lj8AfBpk6EzD
zpz+Q83Qq4gzd`Dyn}Rg4Q0uKOaYopMm8Ba<Q<ejv+pVU3p$#5t>a$qvGlBJs(aZp@
zn2z;c$eOsCk|Qjcny8(Fn&NV!w%2I5n`WTlrxKsmmZ)Xp2a`%>d@y);|6>(+6KDJO
zmy8X96-Z=5w0F1g=za4I_(yX7*ExUUJvLwS5>Mqx&sd_0O;N9ssH5lz;pfCQ=W8HF
z=9>ib^^Rv6xp=Z6ah08}a%mr65asssepxv&I&8~Op?4RQhx<oRvr2p2dues$i{6!b
z3~jjxRWbesqlV*K1ZDmLv}bK9Wq4{8MNH|(C_iWQB}<5={Zf2)sZp;x3o#73goi;}
zh+~fM7#ILHSq)eHy7ku(flaB;v5D4)5h@%zmon_+{UZ-}v@HlURY7{9Q;f6d*k>-_
zbK030-8A+ibI}W^(xos}&)PJq(y3OJ{tad-H<Mla>eD|J)&Wz+ks7&=Cy>iC1#|Us
z@Uv+e)tf4=h~n}fox;RnyzH`tmrlCAWmhhYRLHpbCfoqIid;_IHpo9NfX32x(a{`j
zsIy?K!`M%fgTI0Q$hED1$ex%Us8S&aWUU%Rwq?aXa6bW;Ea$k>1E=`)pc4N#Gl6`C
z-M36UX^cQNn+M_NP5m}o{oQAnZT0lDPjHJ4vmT6uhBf^J84eRamq!mi?1nxO`eOSn
zrV}_hfAo~Ie?d!|wEL0F_gv0`4!GjCUPr~Xy->xK<FPPOmdu0MEM#M5pE3Ff67^-~
z{!%DnuGn9ik#sM*ZWqMR9k4_v8xPWbmA{-1r8c1>P}^lOcE9B;w16#_<PKQq1#kFs
z%+FY<^(GpO9^^B}2hDwpiv9XTY=eF*gvBA8y}+fWEXcxrK;v$VBpCXy^~Ek+fx_<=
z7H1eoUZeKmM-JcNOOtie$aopH20mjoo{8<Ie7)GsHUMr^0?Iko&6sff^-5v`^>_d4
zQdn>G`Fr|-uYL{cMVDChMg@b6EEpRPTvhe!E$IYAN96kR4m-n}n46x60l19~FI=^`
zOx18OdkG&e1^TUSH{C|XbsMktsi$`<wymL_<IaeIzV_$c<<1c2gK%i+{_}d&=;bM1
z=j$~CuZ<2Hqvj2B*UeHfr)3su-}<nF$WTXa^o{(s5Laa~?;K5abQ#_MCWpVzXe86s
zfxv!!s4)h7yE9Bb?k?28j*y0t1{N-c#?%4TvClX_V->k@xi-~Z=-B7iGYTVHoe?@b
z)z3g|I#3rna*{Lh2dXbFP*P%e0wrFLAk|ca<Lfg$$nQqmczYtW%`*KX+ac2gj*exj
zD~KFic&Bj}>g?4H(Cso$==gD3xgAWD+Qyr%;(pp@XZSxDXgG2~;7b(KyCuG{&;P>4
zXI~@SeCB7wijq97r~p*L$}@(dsCETfz$SD<u5G`M*~tgDn~4-9v5DnW(Ons+imENA
zZZ@{RN_nwkQWEQI!&^E}&LZK?a1Z{fp|#C;z+#T6+V_Y!Im3rRV(aS+(@h^W^ae|Z
zht(sLPmSsn3r7Fp+>Da^QFb(|Mr$*T54VWfGLYj59fi?cU=!ifixF9!0YpUa6ez+t
z{Zq6Y8|}d;X(hxd0n9i57A3t&@>xlggpykDP(zz?jX73HW0`gCW(iyZFK95U?AS%7
zw*Rry?jNz<rv;=n_nY&+eqRUjVJ!c=6<asd)VL;R0R8^ry|{s1#2^U+MkVyMw4Py1
z#<^fg;8vTLaJ!ZeFg}5nR(1+4IU^rJCOey^eU5skL!r9EM&{;|jqsJ_cb|ag24<r9
z^rOu4`q;*J`q<tgwk)tAdkxDDKk{z^Pv@YAF#~KS@Hn-m&wg$G1mQ=v*vHxaPPEjk
zFR3rUL4RX22<^wUXtmPn!XFq5uKOD=!(7eZ?5qKdncxPTW#VUH+P7W}NeI0Bk(6c_
zw-113>qmHKekJW&XQg801^pSPzf5`Q$1(^SVufzJ{1T14Lx(;yvVs(AJ{{9$4#dXL
z&a0?NG2{Im#1d2z|1h?Jn-2h5-Q)IbbZlHG10s#*z=^=~8K_SDcTkJ*EaN8{{8)!C
zV>EvCqr`7Uy4BxU8EFSsodew5>0+`>hc0ZZqp+Js6sB)FXrOJy5RBF#<Tr6>h7~o%
zKVPjR9q@xv{Y^IuNI}u`whCkUDqN&vJIO$aI$qh|+q<9$GstSH4Q)@do~Lwd@HQBu
z|1v<qwO8kZ&ysX3Z>eP4@)nmtXcI{lgo%sL3GK6tS60G8mL6l$FU9g0QUZU%8kr2R
zz0RRv(xpm4ZwqZUIQL^rRum8LXnPs6E3rweKdCwoA|t#bGJS&kI;P>~A`^>wu{Z+l
z-)ES1c@8Ccxm|uvS<DD}DkWS@J@Y&C#0l+l>E7k6vDQm*!fx6C;J{*S5gDiHB5{M*
za&A8buAmVQMG>n_QS_f#grZ2I<qPcl0R2(&2b=CA$qt%kE<=V^dJ6+w!-b;<D84m!
z&Yd&6CRh)ZVbX%9c!UCHI4v?tN~o^`UgPQ)`A#Hs6emIfG!D)YCqbt}l+b+Pd=|9&
ztI*y$81<1ZXyRHhGd+_`<5#5v&;hv8voP04{L7LVcu+_g1SwcLVmZz3Xqo*$_p9Ox
zlO*Cp0e3zbsf+J^N6?Bs8)_TjLc9E!qlw7P2SF(=<J_6tXnzMKV7?khE8sVX6${LK
zXPA7ms=q?h1qQtF-K)?Fh9_}RoQs>X^S;LzTc`wVt6li+ha13*{7M-BHTs6i9;(B*
zaT&F81C5dwiA{fovamoY7Q8qdbvt}*yVLwB&#){SlZa|z$&u<N-;z;)z2Gq8@GIn)
zs0<P{3;s^TcW#9}Qblty6yi4kXZ8t3<B=EOd>|^_x3q_ikZL|c_yR&``KelH*-x=i
zoK$f?bT@8+q01(HM1H8(_ze9W|2?*befDe47i2lczKigJn)UtC3$zVlT;VFs*cszR
z02x9Ld<bDzgW2eLo_9GPtY=X*cxS&4cC)kT{%Cvw4WK+&NT2^=>qY!Ri(O0pk!>Ha
z!P|!|-qO7ts1#o<LR~mzwT-M6B%u=LK$hv`e@h*O?N+qb(UQ(`?o&t7=>Fm36m<N)
zLhT0}c#opUPu@D!IjPf_hl-OmjHiCY!tau!jE?+(+`iBn>R!bez81rwFw*OHdVj=N
zB{OvSv9Z7<abL;{)YVAD8yhM}w!RpX$8qBfE;w?W1Y?^M`e}qS?1LQVeJ9i4Vy{NR
z7UaCl6r}wuaCYdYvq7E%64O*Y9v<#pu_f`M(pmoKt+-%{>94f`b?Ob!D)2LG6ryQI
ze}<qefox~vr_h5j=%2m4GfG1}OZ-@drF&`D=DhC<)WxgeXT(^r9x?)dWkcup^acuA
zsDvlu3+-%3vDOyP8QDfKznyE_>Gj!90ht<B)DaqGv~qW`wibYL-nSOAthSCtMbTDg
zgx*SI^?(1?v4(i2il*=eo{fC0)x2#N|ARKFQriZy%HQR7@dg@?JV&itavNKM{Srop
z-Yvv0udYABJN#T)-kb`&i7WouGnnFg@#s^0ybKJXpDsqngn9aB{nPW2P6xjk?I@nK
zhry>ga$@mU+1PC$(1+ho7v?=jrsTYDBSuRL{`JQHz&Nn3;PTyE{*wOk2Y^XbCwj_Y
zq{ZI@0@Wd(g&!CWyo<&x!&|V1>WyD!@#)3b5Tc42-s@#nZ#YtoSD;6lH>aTo+3&|#
zWEq>t$<Eh5#?cB+*Zlh5c(39FP5X+uMPuBv^gHq6feY~?x;i?pqLn^u{ye{SC6-S8
zPq<J|vbC-rwhQe>P}vu1WuppLqt9jfDa266`<}k_;XZz0N-G;q`h^tgfB6|!Qt%PF
zAYPdFFUq%|lc_K9uw_5C^<ikQs_HMgz-IFlm@lyKp-ZK-b1^4g{9Mi%J`Vsc?1%2g
z&oVqJc6RB|2lkzh^Pgo*Eb&L(opfZnL<yYctGG8E{JtyU#`z@+cFjL;M%e<~1wvl5
zteHC88GecQ1V!&Z2)HkYL&MB<Ii(xF{u8a1HZkY_uT=CT5AM$r{i;7wPxac2EI$3U
zYJ4xy@9n@Nvel<Q0^dsUM`O<;VlE1d@-(z&0L2#OUi_uy((>Ecq<v!^oHeDuDZ*7=
zv!$1QtV-K6gwDkMZ)fB}T(?HYsr^?OmVWiMtn6NA<O}ROTH(BCfw9R=dk<%14Oyrt
z-}B~EFg<7ZPvE0koW^UhD3{LxRE4$JVDO*hSn(jA-by`YJR4<82)fns;M0)0hAN&o
zr3roS$=l})KL||lVg>UExb>n`9AaplZAK<PXdM#VT1BrUct`Mg;CPKWk73f+FGuL0
z-B|f|W{1yv+6$m}Wk@^^Le2fP{u*m2?k+DxVk?E;(9oT~V0t#Y(;4|WTIbOpWW1Z5
zk<r9U!od3yc(wI?tXoea)<<~X3H?FY#Ck6iyRnb=dB)588G3z$bd7(+doy^?vx!~W
zpB1NVO6w_{^%Ah+Hddc4MsDiQd>sAPdMalgz?n1pDv{Hl`6Xhe=sPO0{e0FveZ0f_
z^J4d)v<~OIe+O@Phcj|2FbbMpF8YIvp5}2Q_fhm78x?r};|g<cA@=obf8o53?k$Ua
ztu&b%mpz1z6r*aB*L@n+sXw6r4>J@1=??tKa(I}<<LgkOPp3Z_4s+UmgN(}Sd=1kl
zh3$tGXh##}eB9a2>z!d5NCn~D!GSow9~xMMzfNa(%0L1U^gWFJhF3TZBkohO2Ip&&
z#8LkcXXG71+9#1o459cK{nQ96i;edWQ1ZH*_g(<I(mo~Rbe&eC?G(HZp)ACSkf*N}
zL!FTv04hz#4yrbU4k1POv`MM9^HO8cGuFPzdEckt)NypO4Qn>q6gaV<VIfv)JYzZZ
z_shj14r(z*y$cTGCu<x)=PeMz2D<T?3+usQkkL2aBfS~5z>?x}%6{xIocXbvH<KR*
z?_VGY8c!G9K$7};2>pO|hU1v4*vU*czCe%ZaG7-d8DBH-^(~eRKhlOT<YQjKoE?7^
z1e@Q?`jM>}S5y5SLQ=o_vHFwU8s{P%`;vG8%iREoY>K7RATWB*W#c6y-a~EdC!a=?
z@flA~kN@+3q|@Lu)*?M#ChLdEr-5$#1?e7K@+TDvKVz0p24XBhy0$*PnW;Yvq_2J~
z{9nrQZ-_7M>mTiF3iZX$gy$;I|4P1vw%d{M;5U8NNaTVSIL#a_&d5h7-=jatJP`)w
zArx*pt)o9@RqW$^3A_cIw;%#$dSyqea9i(#xxasDWZcZh6_CMI6F2DwKI19Qoz*A1
zlyNiXiFYVCBj*vf@LhGRBJF+5xr~{)!~)tVVG(cnu8Caq&^~UmbdTQ3nuy8jkHjo|
z*O{F8^gia>P_C!X;roeMIIq3u2$SewI;Vl2t^`lB4RTEXlc07a4DFwA8h&lZ6HbR~
zNMRM4mTH@z20Fv|O}qkkayovG1Nm5y4WrmBHkNqr*H&M2(hzOS(#=p`nn$}Kl>)?X
zf(<{yCr<hyKHi4&XeRj;O-;oMD~Gh_A0?~7h9>w;ya~K~6h$WEtF6vXXN29R(|<*-
zrwglNT7HB_Q-<8D@hcHx=ZSA1kzv;W+oY7ne~o9~`10uensiFw=V%W6-ZmJd@O$a;
zLC7NP9nAtvF<@osTlh23qfJYVe~B^8#~X8S)C5fCgW~U5xS!(hW{(AL@#y!~Lv=Zu
z#Tw{;u8v}~EP9WvBCthAuoeyd%L5pnpB%K;-zsk~l{W+BQKTPXk-i1mV@=iqEnJGs
zHkW6d^04XeDi|00ahHm(V4`&l?m=D)sue3CcIrN!a~Z>_CQBg<`mpKY)5A>fzUZ_e
zr~%!_&N6<D6*fC)bH0`y-W>c{;#}(QhQn6}hB{wU@w%3nBfL2<xZ&`a;MeG%#Mk)I
z&ZJbWjoD2qvm1167?MMV1KUBIw|szAZGK_&uKO~Z^a-gt4p#PI^*W@jJ4LJO(Iy-<
z?hRu`R<sE}`0_preu5Q!R(t{k;1C>b!X!TS@ssHI5$9i66krY?2J30ug(N<gO``0y
z9BYq{g{w7v9P`nSpCty=0_+0J6y}|m@|4r#6&NaJ3iHdec*@ZD2wMvC$c0EDkG>ri
zW@f?YRgBAdmaO=LwiM=s&*CZR@rkw+vPVN<!ZyZxVFjiz=6Aos@1e<q##bT5t7D}Q
z--uf%#*!z{UHuju8TOejKJXCscciiSQFJw1dc+%m+2YxK_ZiuFw)nXWooCzQ8<;|I
z>FW#pfMq7c9bBItNb`gWhh>D;G(bB1NE(A(xDbvnn21BWaFsiTH2sNX_)CuaWjrY!
z(RvBK;K!l(OCd;Vxnk`3GwhRG0R66qOC6y<97Ym_PrUjX3OoibMSMMYg<mhM_35jc
zfv^ikvylb&B8;JrI{4j*#K=DXKoR-ym*DWy8%Yisx8gPw51KVD1*$zkL0nW=i%>m1
z+Vm`sR^aN(PummxCc)aCkO9)ZQreza`-g+;;g1iH^MQU`2iLot;cr0ot#|Z-S~b){
zl~)2cw@0Xn+4zS&0DDbTd@Z<X-=|Nq_?(gZ0qTuxGT9vTw+=!EOlY0>T_UYW=1_6S
z4^)Yl^89)e<K7y)qLu#ZX5fCBbBAYuA#rct`AiF2ACO3630M*@uyqISjxwAw8?y*U
zRNRZU<9&QsL#MJ!!0#LH?iK0`mg*zi&{ZnCW^dOYJEwU9*JH4+=eNIATnUUn!|RD{
z(862kxS|+`nftxkVf+XJ<NK6R#E&i72;yA;UN9C3MtYN;2q=yvzL;?kcjnlCUybA-
z`y;G4D_H&!C0`05M&Y0OS-&{%!=WDg38`P7m5-N^;78L{+5VKOe4M-B7SMQS<QLTI
z+V|H+FW&=wD8{`Qc+6bc;h8=e2QUT5Rf*hnxcV}#6Ym?z$NadFaaWUZ>(}M`^%T0Z
zz-ssdYPc5DEcV~1oL8?X@}^W4sd+o`QzxLliXT>I;)wyH(i{E{;jKcOoDG{O!%4hw
zY&LOJPsbAJWCYI=cg2Jv9LZg$7Z-W*w%t7j+g`QefPP)}$dBN0?~G2PSGsLXRUJ5i
zU~~8O5f1z^i@(|CN53{#&53z6R3k(`NMk?4Q!9##&?uE>xNAGKJ1igf(Nc^*JPtd0
zm{{pOFq|1}qhp=1UtUDrXOz+{GBB_gG6^33a;7JkTS5RPekEomn?F)Rzspjb;YQj@
zAry-vTZ#kWCIvjxkK(3Hdg52sc=9y#WCqW|(qe)m)V+UPzBBwa`l`?Ve4$Ma|CM!F
z&QLyZ{DdMK??lPHE;{U2e!SzN!1-DV?#za|4~>fiU-cY}r3c^h=qcH;@pO$nxK6F8
zL+cmOrG|o>&56NuKk`F0?>(H*M^o_ztaWOr`?$L0YkIR+G_~Ddp{5q*eFukw&RDQb
zjb7^j^8(y+@5ywAPa-42`%$oF8tCv<Oh7-Z^Hscx-3j@xuZ*Dx(xOwDUHyvj=4XST
zi^Oz)*tii>8OX(SqmkZP^_6i0E@1$<qYt3~2#}ll8ajj;+Tqg+vT-e$9a!q87wUyd
z!N~m>N6Z9CM+GBsLt*UC(Qh71(*@du)FO<lC)d(jhM4~Di9s|v*D?)u`qM<0irMdW
z{)l8RE;oPi6Jj3D$P>&Q^N08<CZ~eI5xB|$ZQ_pO*C}zjfn)2j$XCdUBS^Yu@*OI1
zcqB8P^HFxoEjZju=;ROaiZUD(W;o)T!QI!teLdui+>DgOYfKWv4CZ2Xv<e#}QMQmV
zJ0N9m<Q&_K3r?`smy&Si#BBGOJyUaHs}XBZ)?SS+;xWqT=yM%-uN56-owA(tUw;#(
z7+m$bd+06wP8H!lwf5DtK4=}73a1=1);vc3bCXf9jI{R^e}jV2{s>VQ<3>gOk^=1q
z@d8Wsc2whR;$$ycz!f@dt39D(X9Sn?brCL4QLP|1@~H63^)u+o+3)EvO)B~t6z$b7
zMyWVFF6JdhzNx<oCztHXGG7nl9wJ^A1a&^clyvAn5Z<_kRgXo^y!tOtiTE(cXY+$s
z`-bz^asHin^FkaVjmaVt-KevTcib<JE~sDK44puMI8kq}=0-XRM_xGOnzN9d4QBc)
zy2<qDB)s4KattWE@yp$SSBi?$u8L|^n_TPDMz{?+vtozn=#o|s78|2bO~l^2J)6RA
zy7z+BD?A+uH0MJ&9eO{gr?`;6{%~6{b31g@4+o#>?ib3<f-=Z|(Jeg|C%O}ZYy-P+
zVp}rYiw;LQxS`T*vp=yP@oM!WFqF0GTk)127pkNfvtdJkeA>heWAPvHCPkW?abM8w
zXdQ!Zcng{8oY2{Vt6)m#2;Q;x5nk5Y<Hb?l5aUU(!%;C8avNMI{dysT^tlS|jGxGO
zreKyH(MmLa--rX7g~tad80(Xb@`uo^&evwr!OjL3Vk0<_9gVuE5aLqxY`@l%NW;zL
zy3syo>$ZcbQ`3XPJq<@o>HcZM(J{`4*M+wP@KelE2q|Ox0>}uyN57(c1m@_&OKQ<3
zx*d&xH7dtyIUZj^-=yG03A9})&}wp3_7YwU4}_K`W@FiT%;9__=4qce4h%|L_aKip
zF`q5`DEO?06#Vt%O~ip#8GX~I-b(w_Dfn(U5#^#EY&je0{0Ab6AOVZKiBsUv@nTn2
zrg3IH+bw8Y+Txj^&+!wP!-%du55@xh`h1UmJzhRHHJv%ioLC{fpc%KPahuUtx|;gw
zkg*CkG3dRE_;1RPd10bnbsloFac;bc;fi*Y(FJPUlXix`M-mPW-DrK_WahXx8I!<7
zx3(^xT<yc{D^`};b_6ed8oT=_E-)ZU-eTPqcfQyOv!nZw@jqZj5O(B`mJM0@MK7-F
z;)Nurh4rGm|HIjvz(-kK|NjXI5H<QlMU5*_(-zzcYLp1n8A)J95{*TaDk>JG)HUji
zU;zmxAxs}fY1LX=tyEi=+E(iVxFCrv!L^7R?uZL_j0zP6L?!?C=icX;nV|iB`}*^G
zX`Z?JJ@?#m&OPVcb1#}}&*#Bpqo|(EfGNGu?1eFNcS-j3Bc(8nU9b(6#;ZR`zLe=j
z3wHJ#;#i5=)Jc(ygj(b!|H@M{^8E_>)m6{cbD87B*P@GslJSAB#j88x-bh^fJ2KPk
z2%&ps;`Jgo74goI6DSqh^Jn~2t~{r)*Q*|@6cu)^JU@I?_;PibdHXs(I!6jyDR*^=
zdCnzB^H`AiEypojMx4dM{A>HN^YY71qO3WIk>(K}*_*=qb6~^>5g-?>;C%Liv*RX)
z%fH5dXbl|##CHC$RHj99wh?#}r)Gl|aE*_(B3h#24O?<OcQKGezy4bd)W$D3l(oh;
zY`gdcy?15u?dAwDNFm801-4#Y`aYF2qo{73V6%qwW%!Cxe%pc|OoOR(J?P%U(+~lB
z@d)=Hi74r+b*}VEN?Ql1JP<hP>Wi^1s+&kfoqxY3X+@0nW*ChHzBX8m-W87%0~R`i
zz*yNnG8sSt`n(`o8q40q2=Rl&!JnQ<x)Twz_Ax7STgPcUczx%%DuqKi7m!6ErintN
zHrUA4Lrg8&_E@S_G$Is{e$IF3GI1K;RxOWRl@&0*gKH4K%xl?Mg_><#E^Q3j^sgu*
zgeLw^w!s0)Pc5;eNaw+@K|H9Crl$?6OB1&*Jz@yziE%O(aM%AsdmBtX^<|t!_r@An
zQeXX<yJlKXRL%IrnS^Oetg{+T^8{#*iX5NEcCTeO`j7klqyDJUSmA2IZC%m9Xf5AF
z2@-@4d*-(qne1_igScaz*k7{W*c{AvHb%(lpI&xCs`wz<D)H_gQOw>g=E7Q0i5ia=
z^;Imd`@*rco(B>-elA)91K@C<J<?9GFxvi#c(8uvKA+B<AC%W7|MJk&<5~@=(=G|<
z5^m_f^K<|{{Uf(9iFDOJ56tc9pW^@K-y~|?x@ziGWS)DFGQr{@<OC6*3(QdZi_Q94
zUL{`J3p5<|cQO50*N=5(l<VZ9&9;*l^E&zTVLK=-tNuwB-LeCd4?Di9t!YtUo&1%O
zTjx@WrMdnher4XJi(uZ-C-~-!2M&$WM~FkMPe9RP>7CEFeeW@mKLKlCM(ZnJ3l}hi
z-1*uGX*H>eOeYOOKT~hnNmOKhM6+fQvvuSvv&QA;(W65-^5BW$>=_%c6(T9*cjC}|
zf)k8)JGzsVXBN{-cYXR1OGmoXjNJyj6`j!g$>0_(YD=Yi&)d|?hD$VaEY7~JOZ60Z
z3d+OWx|kblb?rmIX*z9&a0>matz+!w;Dk2LTW~_Lbz=69WY<K@m)8ravGm$~z*{QN
z(&_w4R~<pG<}N0u4RW<mF~~ST8R;P7d@}qoC8)4Qfj(YKlc+;_1X{|PN)E^v)j;Zq
zny8^9lAcwD#24T9H}@|K4<SDU0ExyQWcoL1RBre8qQ#uKYZtHeKQy#?gyK!Xwa2M{
zwkY+?z+f%|>|Bn~Nc=@B!6Q7~%XG;U?d|8W=52d<vpr=(DF#V>Jb*Ro8W_M0(k54o
z_~vySiHhUZFMG}IwXUG0(`jjCkXu*1)|>qj%q-^bH9B2<9!}~{ao{c1Y0D$(Qu0CM
z0Zwhh3a8wIM2}mrv7=ek&L2b!^IA$PZB6_wZ`!oY<|r@^TpD4iLCkL~v%x%YstSP0
zfFqi3%sT#n@h98{zV1IKI0TN%6J_IQUD44FiqG2Swrx4kLh(PUAW=$0Uhb>P;Uiki
znQvt8<~2nOl@sBVzMUiNDmAlOg)B>HjIXj%JQ^Zi>#6L9%+ws7;VdO3G|m%TwRHkg
zy6WHk*>77P;GC$<nmM2UE#|*&3S-X{&-@q+PN#+Z&H*jGpT*+k)Uj@9R$I}aX5{bL
zb!*T^*uj&S*Uc^Dz}v>z+qiktmZE-$i1WfNZX<Dy8!m|iu#O@gXPMBk4REJMSi~*N
zoCq@2p}rlE8N?`o3QqRSDeP^IdOMWf+;o1&q@)e(HmAp>A=B&?WaYj6<v!LPkR7uX
zC%Rz%6efQb`8Lz~*SV|{$r{|<^$7P@?ER%6<|c8GW_{v3tnz%>?qSSaU)q&Gp!(nB
zN#3QW5;2g^seFznZs4xYKa^j8scfQjtkYc_;}ch^OaJa%W7&oclDJ8!Q`o^%aa9>u
zTImfOUs>S|<ecFR#4l3Hm2+eMF0tmX`g*fvK8mGJ*$_+fCJGUsM-lX!7%f@-s>}_9
z2T%N1tPwTV9^3w7nZS5pXPJroJ<X;Tor69I;*4G_{efI=#1?A&i*eKb)SJ^qPu4%%
zTIkL0V78;LUW+&c1o45plvG>^l5oYgPpo;UH|1ofl@?8YuSO;kJj~3ooMJd)p5+|2
zah??f^Ej*}4zrdD&^o|6NyzbI&aWk1_vOtmy~km0Mn|%YXeIV#KF-niKqkexka-1a
z0$syq40wDWg9R{9EFNsDIWhWO+%(Z6*qv?GQabebUJ?}Ew3~w(ZJGxu+*xEjzN>|F
z58Cq1<9i7n-*?#G+Oe6vmEWsX{7m+Pv4X}cR)cD81;tT@24pos0H1)FPr=LBhPiU{
zHe+Z`(y3$hSMHTsO{kP!E=IKthSfq(5M5na>dL`q`~D95U;BIin*ZPZNdXk<2h_jS
zT`Gxljs1-$1{aUAzd@ZT>wD=<q##}=;^67hZg4|@Yfr;Ed&WHdY8E5=Zp_oQO3nq+
zRk&!KqwWI>x)x=}v;BQ1jVF3)H1}+SIgY?X!e11f2kX@LXn|K;(7d*P%)9f&D~^ml
zp`SVUs$_3&1EqHN8<FPMo3AHl4~uc{&X+HLN9db_N2r^9W$>yoW+r$6hUz}T64MJE
zF1s#Kte8yR{Ly{g*&1Wf9Kbc@hn%wu6EXf@l-!L#UJ%RHnPdd~(dm?z%q4&Kq#WiC
z`AodJ(@bOjXP(vC9v$y4s&%aCC4YTy{uqy~wCSnh<aqVkch1;?rt=HLXcCVQoUnOo
z-zoRCK9#(Cq110(cZBQNJguZS`P;5Pg}?nPO7*nOI&&~{k@r{Y<$NscO{L5QL6W^7
zSJ-YZKDhHt@K#2sq=qcWf>z>RUOae}`6aa1+BmUCnonk9F!bin?2FE*c^%4z?p}$Z
zys_m}pHJ=$2e`^=1Bi10kw@a%2gk_o=v}kxAN8l$Wjgg2f_8i27vB7-eO<#v$%Fhz
zKg?OuK9yLc&EsAHoU>g&q^`Gd+T*Ha*!Ar=sHtwK;I}GYhv&7NI~cPq%<2qR?M8~@
zZF&k|%8pO?sOd7K%sg7R_!-KKb*W_v&aoQc+Ta|DQ(HEtuCjlgmaV071=+A8Bua>F
zxtQw7h*kC)`x&KBF5=uA|4A>o@UlPrqvSX}yVW`~Spn^gVo_Zv6z|zW15|&M#IkhN
zF4U5CYCw<-rYpH9NZvI_<}9h?O<k_^R`#VDLARvjOpyG3kZc2PrK{cylAjBbm%7p`
zg5*bn<fJ5Fu8;)De+rUcaLIoSlG|Kz>pB|oYdPobF`OK+o@P^uemCO%b~(5T-RVa<
zuH@Jy<h>;BGyq3$6o|-I<;Yz%)oZ-gv!GXzmQBf>C{$78wf+hS`StxacW@xUSLGG5
zJ8S!q$YB{n-+Ht8Jd0dh+9NBcIie~-%&@fgldH{T`fRkjXT3?%RIVU#4nLqK6h(V$
zy*ZuScnTTT#-wqhX!#R!#&@IGYu%gi)*&60NPQW3w8^eNn#$Wg?iGakP?EHl=nE>$
zy&Olp`CttyI7}tFmw<#%j@I^C_yfv`!)MhO6ac*_GPhg}YO2qxEcaSpAUD99`eJ#$
ztYw&NHvG<ob+B-!nBZ0?8Tg$GRr5BH;-}(}!xPJ#c8JCEnfZjNVUBBQp|j@tg2L@O
zJc|yyZjd|@)Z?sR>pdLQt8?|ZHsr<?mfJ5VcWqFv(v^#J{i$cUilE$iLAh@bWth7F
zmT6>pgZAnwiLzlk9vT#UiGqH8slvYu<2{)jYN|VkTtp(X;DMalQnX3<rw17EA=+ig
zncZMTEL`s7#99w0L3Bw=U8f@!+htBS1EzhN-ifzw2y@r^9*xtkG#K>JCskXL=TFY2
zSYX_SOI>X@oQ<&Q@Y-u3{&Wb!+*BI3I@p(JDkR&;i+`Y`7GIs!S7u}@7hnDk9F7Vq
zKMSPT3_al>6$xV`I7My0%s`p|=q(h~AWoHUL`~{FoiwWc+7CK7`7dyckAYU^p&Wj>
zo%D}$b8wTVY!A3;dxvoAcWD4O^uHQU9^8s8-1-G@D^JyyWqwCLb|ehpM227`;rH%j
zz1%nsRX(>R=|P*~*cpz5y~_kRrwJRG1&@n(t(^>tl2y?2@PKg(?PQMDOq#ds?6n-i
zm$yLH!a3Z8FwaV-V1a-*rvNJ#P~7$Uhz>)_a%ZoU2G)*98_SlsAuPe3OIHoxN&(pe
zmHlUdFA-*w*&I%5M-Ar(7L~J2kL1#UZTizY!p`Nc$36pJ9nE<k4;afF#Dyo#gbVv8
z7pI=-__!Qd2tRFZob?B=-h!=9MhZ$GqIYidn%@UNl2cp=<oLu<Wt8lbD31H1%7j$H
zLPA$%_M|g^bg_d2Q)IkfBU+oYv%|TUZAPF$AVL3wyZsY66<f@q=%C#xdK5)#Qd=@j
z6m;OtsD+DAfb;<GPT3|;qoj`31M<6V0TN~%&~r<0q%A{7tPMT&VZ|(*mSsznsf5kE
z7x0^Jq<(YD>BNseW=qOR?mOE?jzyw(iU%mtk@=9_5ex`~vY@EYrWliL=TEfbX1JFo
z{_9+i4uJ+{OC~7!-+;E0>Ta9ofHs<f+ri%#^xh%g0b-yXd<gMPR0h))XR~)Cn{cwM
zpx}xBiN!WM4|7Yl)CXT>=SG<wTqD0yHbd^tEF&BIA?p~;_+P(P>FoLh;@s$LYrhLy
zqr$f#b{|G|W>g;DKV)-EKc(wFn1kF{b<kit(42y;xBm8Uy2sJB-BUH%8TiX9#}2Y0
z?A2z^aM|;-6${BWKbk^6{hL63d%p4Jx5-$VJJ0xin->0Fxyc<Pa~3F%Ba#GOGb5=(
zW*I39Hvkd|kNGDQcV29sIcOhS^M<^dBWz6_H|>Jin(SXEKenl4w*Tm9HYUF{zGtno
zjd?O7It$%Jy9hZT9o#M+M+5L9STq-m;Y%M3w030~>dlG-qW+LQk;oH6&=_B}6PDV|
zt9hWz@@X2&JIX6OEMsfTGv?ZH(J-x^4IHg^S#p5_hYip{;xQ(M>Ca2<SLa_?@|bL7
zHfSI5x9C@rq|^f{+4w7oMa$}?s@OsrSDK;5Szm$QT!jsP8G42*{4wPi8C@Lv#k!eb
zZeqp6WpA_9%<L<Ldean9+x+1QyE6&ScVWr$=HF1DFg0S3Q~RYx9IX$82Htq$<5WHx
z^f7@j?^@v?Bu=Ej+(|R2;!$3Ut=IBP%JtM+Y<JV9Joltf=2^>N1#2^p0W%+~y$JcG
zIg_$PwDSky*g#|EO~8YrL-O9tXb{Hy9hjJ7vwdZzi`nLmr&izKj~WKd9sd=6_{8#-
z99($i-WCbBaAeyq78V?CR3nuvK1ENpx(eP+3eor{G?AKuNc1%jBQ7|xz7u;01+~mQ
z{0*@8X4rOuS1#MkrpM?L!gz=La+b@DFTCZI*wJYYB!Bo}{DfTwcW3%;C=AcN!Ts0F
z7weVe^aoNMm@5Rgr<y<RJ#}bo;xqV|?bPKlAK7`E*B3T#?M@urbo@Dq^-VJi&q-#Q
zX7)NK`F_*PqH~B_JhS+m#B0q@5wiFxo|wu3Q|)K%aXN^_kTvS`%-?i0*2D-M1Zu_o
z>t%Jz+g&Y{LntRHdDP_Ku`>{TdSzoQ^{n3rE}_7cLU11Vqkm@MIAodByHX1vnwt#f
zXXQ&trhl>}qA%FZ(hFP_B&x9;f>$}-c{>#Pm5zMz7-B3!%wzCgZKPPb#oiIE<L?8u
zwGMSN&OF%3nw)v2y$9~id5+Ub%zwgmnp&Q6`pa0FCqStaUHq1CuZ(fl`G2=%tR*zP
zbL~3_3has{96t_XBxpn)ZK8(tx3RZC8PNbn6#ZG0*QI89*I!FVc5HzG^^X@?4`FRi
zose>4Fn>NB&B_9~DKD=}PcD^N<4K*8uC;gXiQTxH*0;S7D_&{!Q#|xaW^`zMak5MI
z^XD-ND}L{2TSW)}?6s+{YRHp<1*Y;qSs=vuu?l6g=^Kz$&5Bz@9d5KuIF|+9&MWdy
zus1UYVc{>aD$!K5E_E4RD_4y(o4{`|!-zmTHI_P|+;)Ae4n_V6m?|KW1c)xdNej?k
ztM2*Rq`&lw&@@#q(@rh*T5bV#6cbDI*nX7g!<t8M_?J7yGd#qJ6wJYsP~S@><*L;h
zJa3BVMO~GfO%t^gB3y#2F38DlfwSPG=4rf4L(UKgPqKfeitemlz*{f^KeXi*m{Cq2
z>3zx3jXdeNPNz#7yR_5n$4ogdu8chznvQt%Fm|XcR~=h=>ESxHZfRthA1T)JXVIpa
zI~8zhWfT%2YDw$ItQ)v%7Ab0)-mJ`TAmo}<EPZ3;t(rN<zX7$xXf>lh0eSqSl^tUY
z#tuH(@mY}>OpXq-L-41G=^Z`16(fCdSF9Pl;-3Cq>%Y~et{O(=;?;VGZ5HTgp~ltW
zB1YXvtf(yJ_X13b9qOu0qHK9&I#WHw@|bl&jYiBr6QqVe6060ySo3FkhPZlJ@_-C>
z)<CZk>#YNE3@Sp7*HT4BtoqfYv3P|^2It<zk}p8J4iDdahiPZujMT#QJ2m3yq5rVk
zUO;^?XGpt#RZJvS&1!nB_#ax7!37CV1cIujtKPsh!X8D`rrhu9xZXNQFC->vQ^tJ#
zJE11lHH<w34v7`HU?KXeZD6|CoIKP6EO3OXsVo5lIx)MTUC_^QCEkKaarFwX?J5LV
zt{!I+%q-yhK(Y=LOZUTP>FMNdnddcWYkyejwY2j?Hi*x@2Ldx0asYwx3@;-B8pu;o
z=iI)p*ZLHk&A+TftEF`}CvalS9S3*zTCV|ac{@F^qt)hFi*?ku?&=`wrNMUR`Bxm9
zY^rdNPr=)cO(W4q1j=H!CZG)fs`x8@q@<?sKdI6Ofb~CFIxQwK+AM(0Z8z!WenxJk
zPR}sZQ5Ql^2pGTzdSScL0Al_r^n|Sk15H{hh@+`odpdV1DmaC98z|evuo`qejV@-w
z-DW5~z)CALQ}LBNS?hguF>9%~5+|cPwF~Qm;*o|w+fmXjB<)Ldrd>}2>jpmGBi5BM
zNc9$p_L#A{mn}%0UOOQ=FH`wzEmZ7w$!(LJv_oQ@^cjGU1}r(GYByDbb#0-6%w6D2
zxcp?#B^y!Pq5eb))UeAdG6!i}0Dm0l^0&#3rP;=gRbyWRV_PhWqFnphj=bt%ie)#K
zYq~_mpR>iSX_=jauazr)Dxh}IwYw3Uxq1Btir*F%50{1FcFEFJf3^b|Q{wYJHj^Hc
zU8RimI{EI%2joUB|HMp`w!{5hkIQ^|=UrYCL3N>;-{7iFcD3tOepkvz7k>d*GJW_o
z3oppkmpq4aUt%xaMBx>B^X6p0qVRC5_?R?zd-=ubljA931~_M23{f?h^cCz4nWQ3?
zI=WISa!EBD#jJ+e{HOsfjDNg82nJ)`IMcFq(cKdB4^+$Ci@h!i`fyWn(p-0;XcNh3
z?N6<g+TL!`wf#kTt5+uadkfk_jR9{r$bQM4D%1zBdd=(k5%rJJ?*8JEoZ@G-lADe%
z@LJ^GB8AMJo0#O#;!3ae2~u!}s<a1fh3+_$X~X1N?^Gpk{?&a!v|sFun|A7Tbn2#V
zI<WNS^PB<4btMcXL2K-GI0t*yZvc2hj1HVB5%(IzQwEqNI1yQNbDM7nWB>^4C-U}t
z`3iJ=RE*E{u;gfS%SDugfkZW?ve?AaOJb=PxdI^n_2v$)6CaW~gQUKxlS?Me<$iIL
zOAM_`g>TJEvDfGATP5V(1#sqs?~_Mu{FQj>xko=?9h~R?tWUOZbgJ>ME=K9wPmk?3
z0TBg(s6bM%w|j^u(L+o%R6tBc+L%ny0uFw-!Bb_OTk8W)a{Q+SF{wcAt)wq8qc3)%
zh4b$C5<1X4qqI-r04R{=4?EDqn*fNO2br^eQdmGJqn`=l+EF;Lr#=JJ6$0{9NV{Fg
za{Si{3&e$Ptkj_L^va9q02-&c<pC-O6FV_tU7T0hSnprl$XuptE^_ysYR;(-W}tW@
zb_V9!i!^+vnB71@Sd`ZyMsFV6NL=YMz8p1U_(RMAzqE>YR@ZA0@s0a8MQ94cySqo>
zTpZBCH`b?KjM~!+yZh)H#U-pXh<}K=3avyPQ<eKo>$Oy`CCVaFkQ_=EsX0dQ5dW`B
zy{KA~<FmHfm_fup1Sc&}(cBZP{85#yORX}mRqLr{ujMWw5!`;Vwcg9?l>0EUdz6@^
z=kbGm^#p$bbxCF(xuXA_9bzl7&UX8UvXi~})3j->fmhU~wrG#+#liFx)Y)_ox2lAA
z>NJDzq4@`1Hd;A&o}9<6#(<fbzdoEd$9ov&;PzZVo`dO73lgbU<p1$Veh?tycZ}26
z@fts`a!7sZ6NxRcuDt^}z((sBdTZr4=Iq&{cAV3RxRx0>T1)swed;T4Nui(PMK@N)
z$l(G91BzMQ;cliEiaU1Y{QA^ZdEYdM*+kSMvL8JL{lxv_1oR;QB4VzeC<x+rWm@^F
zBSKIlGs(e?mA5Q&NBfibrvhJQGz{*)w9jg04yUl$s+H*M5IG0xma4bfMw$SVJ8v(n
z;45?4%)$bDevdw?-z<3MB(CiBIFP#Xfe)NNilfHYAi|tCD350@Hb3(?`cJE3N%Wig
z^Ze@-PCk*|VKN$Gr-gZ&r$%L!>9e&E=q&{&Pqz0yGFJID1kPm1q?vy$MrF?W)-wYy
z-rW8(_x(Jp+vutDaq_J3m2V^PIfaHojokeMxnu0E;Nuym`@XG2OwgP}KPWrA>qc0V
zA>Qn90-L{=l(O!29GE(Y!scL#nj>i3X)-dqQV{&M{Eiz@V?y9eof!b;@+@Eup1On6
zTkwpU={mQ^`0YI{D?hC_Yshk-+}kYW`%I_bp>9yBM!d+z5o~8zmoY2{t~OM**&enZ
z{f-*_`IIn?v>A*Z7Q*OhPvZ}+as}ZNHzhbfZZ=o^0zkN+e!O7j9?pJug3|7j91rWT
zX6Pk2o@HKZQEN>k+xB99n~GRHoZ3fUDM2Rt+sYHMS>2ZE?2<{fSz*?#-}lKAD$jXq
zi}Xbz?B;I9(L<q>!w>ZbGEt+*AJyRAV-0mXiC#+-Qn$N151&+Cr9B3%V*!0MF;<X+
zuK+&ifRv?TC7EeIMN81XAZW+#pQgo9%@rj3q^59j!zo^ivqQ{RpGF*f<WIev8VXgt
zQ8UWATct_G-D-`5tu$8~@VKg#$JMT(Jm=0kD*}HjZJRx!&qJTmRUdDWNNuLcw~)oL
z-R9ndf079lEH2>x=24JX@<V;oqH=yCFqFqqt@FtDZi)<`NorHk?O)r&yU*Dk2Du*g
z-mZs*p9`e!9^n$fGrn-(`0Jnga=`fOc{Y1O*GOyM<2XAyHuUPoWPQv(d0cGZ3%W+x
zv85>P-A|A0g;OgDQgCJeSo-0?D;SE7zq`dIw#jxFs~%aF9I2<+9(Arib{|X`*YyVW
zUO_KimG14tY%?9VG1GSTf5i`a%||gu|G3Zi#o$d^jj!$fAwdTzahdRKVzV1UZ5jIl
zZYK}>HZ~GPD#Q=CZ&AYh-BwAiG&|Av;7>!xF8dBbeusij4;`PB^X|>uo>#nEYz%3O
z%3jNdKm=ktcoP>dW2yIzToG}zxM_trlWr&`_sRU4GQh*#L`+g3*u6=Cs5|MN(ydQr
ztf~xO;_w+<$l&JjL2&OYTtw?}L;@Ex?+;6}`ntqDQ;*Ssu;;T$=OZYUGyI;1L5DXS
z-MgL#e&%c1CXl$Il5{=scqM}jw0mpGNR@Zp^SEpb?(o_5v3ZWvsP(c8!U4}Q1A!=w
zI{NVc6MkS(uuJ0#?X`^G7M^wK;SHQE1=ACBcyz!#Ff*G1cK=&=ZZ<#2W_m5et+HeY
zn1(O}to5laxd7t8^v*MNQWvwVr@V!$cfGwv>R@{(PO6UB-x^;W?w3h(xo<R~YgCS&
z)eTKHCV$119Jb6W+}a4X440RT-7+28GJij0h)@tWt1u2(th%-=d7;!KPs%J{-)(X8
z*?tuXQUv_7D;ao02BAbFA}oV@1$&Da;oas?=H+OwOfwI3o#fX0`;aVzj%+`@Gs|!v
zzwQhnngd3gIB0-q^8rStkl(zwO_9)caWW|w0BqFr=o4@8E3*>B4&DM#bZUn8Okps*
zS#Tk9E!Ev!0f#@Cov39#V$g1!-=$An6#gy$HPxj{mkEs9)2p%HN3R_41A66v|9{h~
zy22N_UdzgxmTtXL5Db24GsFD%&qCNbD!fGd`MdNgwLog4eE!szAG!U3At3wSh~`TG
zs_7wL({I^cLQ6~E$ebzDL#B0dw*MT{>LCs~{zZE;^4p_{9=~aSNPa%QBisGX_CFK1
zdigB!I@HmxFe_aw9xh!2#P}uM{ZCFb_nal<Zb##ai=iAMi(A^0KSU4swklXf@xRRt
z5RO>ttcY&@2hNI??}S(2-^UXR_Bj3;46hQ3yWX<<!J0*v*pn0&%I~oJ!15HB{Q<~y
znD=^%AucgTj?>~u4`p4ryE3N2resZ|T3gHC{kA4bF=P1D_VE5;^#Wxk_D$KpxQP92
z0vht_QRRt}Sm&s6@+5m`2&VmX^{69a&UmZ#{5Gxi_qV@8YJoDtCT4t36L~A@?7x0n
z`~RywWrpn?{y()hYBGcCfsfhsMn=LG?B=)TwC|rE_%b1u>cgLLR-S<KCwfaDIAkFU
z$5U&gCQRv1Znn{VVyP+P*fOcpCxm!r5t#ks);C8_1;6O&PCu1;6%|$LOZ)m0kH$!n
zz^#V|f_8Ae?+=L3r%zdpEd%Yts;fuG3SST3fpc<LN8(uNoaOia>=G*@owwd8HqFMF
zZ0K!c!wqf6lX($PIyzM2|KPT>i+P3b8)h_<XMpL8II#q+qe#p@{ADs98)CnQxAPrK
zClS=LfhPu2+{}g6u`j$98xAAg?^BAi9oPoF)2cF%;I@aYH1|UMtP8k`ZlOp`>S7G3
z$x>~l9b$fwtl?8mignfs)i|-&Rs??s=&#^Pu!3|=Wnrp!=B#3T#L5-X7P+GL;dFz&
zGmK7==Z_jg(-}*RMaREouPgt~FAf!BEBMv_%Dec5#5r~VzkcM+{wsYb3`5uNwO^Zt
zr|6;}IV0BD`&xY|H+^_3pEmCH^4`DX^E-X!?js-%KV?_qnoon3_~q5`jmuyb=F(HO
z9CDerB*48}e}+xO#j(J?pOHD71u?ZYF}w9L<s@=Gws&rG$Q0~%tLU^QY!>jk<5`-f
z;Y-Fdb^>5(`2OL27_-%x=>B7!fB0wQ>gLSHUH!8B;He?8YUAE3lD@RPu=-c!vgaI!
z3a>7Ges^r*o965>LjNwW*#d3g+wd(*17ib0Qn&uRSXiW$CnQKbo#?HL>b+N(FCkS6
zg-&&;A6!M}@y#EgGi&Up<9VDsNxW#$dXKdO%dO~=>fr~G<h33P0CZDjdGE}b%nYRH
z?7bg3`sWSo{UM3``ON*<%%85u9DNNsEzWj&nP1=fLGlmSQ?HkN_~uWwCRwtYX%hIC
z+r%to&0J`E?_cBSsok((;IFJS{3VRSRADC69Ckyqni^Zc1?m*BU8KQV;w%#{f0ex$
zXvR%vF}uxR4#9zpd;m8eoPw5f6eW@0j-rrc;I2~`&oOp9s3i+reA&B9WzP|I-I#a&
zZSJm~vKQMh-TRVy*4;1OlJn1p_I-!`Hh1q5lz+1Be=C1r*#7AMt$amL{(uwzxAOZX
zPUk(ebnic-4z+JuHFxio*aubPA4zEL-j}S6e8s$)jz_hfpw_7!A-xgy>dsSanL{b_
z@9&l&bpoljR@Vy0f5P(+%Q<$8y#n=n+U%h^mOg<+d8bLTx(ms&R{h#24_@1=eA~Fv
zt?Vza&Ex;kMI|H>oB8c07;+d_dTu=RkqA8k>HDOkfIs!oCd%1E5qfLuLSWV*c-E!9
zkpDp2XxggLo3nVVuQz9*3&aiqCB4q}PtqAbVN6KX8e*QYY$)}Rsx_1Bb9j05(Z!Yi
zCu0C2wfu=L5+LimniU!LBkGhEenR9QXDssU4W2$Y$9n2~$xC_CTebA1sLV^q!9VBf
ztC@i&)he_w;dIxgj?Hk^r>#g3NBSqOzgHgb(Vrd&3HyttKC>_04(hta?%$yC!)ct2
zWcH_h!QuSjddC63s9v;Rlj_?1rrC{wrphz_v5ke(N$-3)ePw2o==h%7jqh-m)Y=K3
zpK9B4=fXvA(U{qhrn~-Sj%v`Lto#)E2Z=pO+iti0Miae+y6pLb;J(Wq<h#0IK=PbT
zk+NQip9KWK60$4}m`krtVRjnbTD7}540DdVW|pYTBLe@>0J;B9IeCJ8R3DDt9C}g@
zmfm%1-gXYgD@74+zGl6dc5hlNH!r;N7BazZyHEU4<xU8ClcwEy>U(8wE3X9pQ8YWj
zA2pt+STIw3q6!m(dG<8Xug;%{@jM%h#jYC&F%HOU@UH_&!1TIadI8(2jtkN|TzW@d
z)k$+XZgoABHziAJ^WQT5zUQ?hB5XuJ1C_fTvt(g4uR9~eo8in?`z?ISxFMc;oxS(g
zf~*q}JQhGF>jdZzkhaG<6$C++)|vGXS?TT>{fRMuk#?9llajI2ZH^$wfD`B>`nfm9
z_Gi!ODQ8RinXip^-u0S=ZP!ZkHqf^IL0wB7K8CU&DqQqG;oTPu5k1Jy3VI&gj<H92
zK&zV?9P_z=xTVaS{p;S4ocX7f&FNR!{CS}_e--L|E9iK$FC~k2ClPkAO-22irGCSd
zGv_$?X5GZKaer|;%}Jy52wX-+EQx3@5SCCz$XOjqtHCissiiy19Ap)db?G0x1end-
zBe`_43_S3z+k>85<Uum$lgS-Tiw98xWY<))Q8&_OP`?HZ{KM1*v^fU{FZpti?H^@c
zJtgaa^GEO<{n7$C?8MS_cp`FLLoYX_-GeK&sr#)1JV76Ad`g*h?WLe!!P6(rwYOXS
zHqAU}-W%9r?b`Y~kLm001N`-m(xV*{^uI=>HIbGot~5I`(r{#hApWMB!MQDqC5_Ne
z)};0hABdcC87B4@wxg2R&=bnMwuwAk;mxlN-&*DxxeC_GJCX3m`c9Svt#dW(q!rdf
zG6xlIzhqQsL`k%|w!~|@i62^<SLSPNmWBLh5~6_+_9tv9q-D2a`>~FGX=P{acxFQO
zS}>?~kiOZ3#a{%pC{@3oyp)i~V|7G2G>>0F6NF`ys|x~R++QG^)AgGHvSF5+6Q7ad
zNGzyT#7ssz5Ny4<<5zgiK2a&QLG0^K5NJ2mRGy0)y?k|_oX7th#e2+dpxQ<pvMgd9
z!<5V;53AR)joeNvukkM^w>NSp(7a!)*#5Cpzsl4J`<bgxq*!`tiD_jYS+lr&1$o0w
z82V`m{V-Mn2d+U3m^oi0G}if)Xr5_-J1{L=L2wN+n_wdW)FGB$3s)jB%v&s}uH7&3
z<K`KI_DKx%YsafyUBQX@$uhGt8ZzHGQs8ygHqaTzkyGVJ=57%sD*Jh@b5PdlDS?@d
z1zyX1idecg{vYTT-p6=%&gAB4gAVjsuOlb!x6Pv|jlcDHK*sOYN>1G#BquIhd;ke`
zT*$BUD=htB;K~Gk<|NoG@ljG8qti7<bjLS;i8gx~*P*>@wgL=!&y5G#@l@MAK_@LM
z=!Bc@fp^<Gqh-%qU=Nz95p1nxxN}|F=(Pdf?s)TJjin%g-PZQVY(Ah_er+MS&_*lg
zY&3X7uYxHDW>(P!_I_N?T7IP7I5xzG-ma2f^L&lhzj*^cI5Oaa`8F}So{ED{3WSp2
za^%#qg2Z!CRvV7uwH!lvu6`x|6<yx;2ld6A+f_OBj@gm1;dNn`{4aJkJU`!UM!?%@
zQkf?uB-=BnYrc;6<?4LmuYzD&OvMC{BS$E2NOBT&&6AvtV2)66&Aq4OBss=ne)8$<
zR{VEgbHv*LA!Dw*3+x`tT)P#XJ=e(_cWn&hjk6l*UfxsP85BX}=S^&|T`D)Rjd)Vp
zkec1*f(24Swrg%6A|MDR#&tL5X3l(wwhmHTmfq&I_a2KI0%}aIy?tm;jRE5C1Jq7x
zZ&g-aVpq(iAg^gmVFBmxnQkQRF76<GV(AkivBKqDJWCN_x!WVn#}y)xKf?%P)f<wZ
zN||v&jUPX(rYKG@_Vy>?0PM2sOX<0OB9ROBIN?E&`EGMF(o;ZEbRP>J&qmbC(Nvpa
zum<RcUVzXZ{4PiyoLSB)yZOp#kD$X~QY=2S&0*U;<hm4xaw$2o6Jc0!GMb0>PCgp~
z30e>{kBO!PwCG*clm(;PY<xt?a-R%v?LXwj-TNJ=3(BnHK6FoID$KIu!^mRiiswQO
zUpka4sPc1F0iNn;Eajdm%fu|eFU;QxLTlGw^fk5I+(88freD^4Y+gK3k*;lhE^U&V
z$4KA{$C03cKJ$Q<Im-$*s=g-d593j%+Wn&bNIZ&bD;PzCh7vJ*GhtF3(bV;4!K%DA
zb^fVMLyk`pcY$Ap(dG6bNCN!t!(g>?aug_sb1Y%es6GhyUV_ZpAZ+v_hk}0Qvyu3e
z44|+j^|T?{U&y|*SEM`E>`cjsSx6~b;JoibtsKo5;F$1l+$Hc$Fn5na_Fgcf*oJW8
z3PPFYheO36GlQxc2#mN$i`KEOm${14@?X8N0~H6QOCsKl%OfTK@mk*$<<_oW#Rok!
zFj4E&T;X{1kW_nYXcR8JCqNSvD#RWlC?yDiSsE)EWERn1O==?UJH?gU=_3XjUOz;^
z9^4)t*PBtenb{X<Sgf=4D1}!#H_{HTc|5!zSXDf~%p$ItWEa`2$CWXc8A~B;T>E43
z7(5fa)O%Ew_av`w?in0|_T<vLdwbmMPM4XVKzH0e&@4Bg%ge}S=H%?b6jr_HqCbOo
zW-UsL%+5BqMzduWtY%%d(8nsYNQLAknWK*kK%6!hfyxIX_>IawVarBnPrf_g{pc^k
zz1;H6W=&wM?4!%N0s=T*mD+5jCU66<k54mG^ZUb{=ze<@XAf8jZ2X`1*(2%?Nrbqp
zaP;&#ZvN&?t*;tAl2&4V3|saXE<o8M=}dYJ2Kxb=GUHKXG1Kfey=ztYRES3UdPRc?
z;|HIgq2YEjU!^w!tLUP0Ht_lCS3(1Y9r)`%gNfWgk>DA4>FwOOP7B6mlDXVJkn1jK
z-9zKSaQ=#ZPZAj<Mt3Afs=v!raQ+PWCcTp_DfgtQJqz!x!Zj2Qo}RDHcE6WK&(zH(
z{J4U_?MtqmbA9@L&D88zqa(WwAGg*yqcj>j=?*Flw!E|r+GnFY?a>uXmoZ&KsbKUs
zQ!?|^mJpZ=@m|3}3BqZ?7=pCjT&i-d;Q-9s|5k34${n3;Z}NXD*I(s6q@0#cwCL3=
z9(=4-?dC9@IfQ)7%dnTd{^7tu!DSYpjHKJVp+dbW<d*DNO+Emnc~W^9p>2AP*Z(fW
ztNJ>G=^f++th<vE0XQ>ySitm&g!|B*mvxx4awTp?1)Q`wiLyWE+{mvw|86l+jK63h
zy_QG#mSq8_nvbLl{YTV_DXm9Rv}utzFS<{0HA(j?XD|ZMhQzK@C*p6@Gj5DKo=(3y
zD3j#%_D9r}Kcn32`AXpLl$dEg9u6+si(7I{DlO!}0GTmIf1(4KUO{^F7t-N;aMf*Q
zv5LBTT-okIeX+DZ@``O*9E@@eeaUg>F}r%LZkCEqhGYxe6#@;qv)uZt!?15s0s6g-
z{T)zKb38p~4yJHU#VwLDb-fnLMR`I$Ao+r*45BFQrj#n#v03`#3fHHMHkV4?A|wgl
z$$V=P%e8J;sPnLo&)_8@8Z|IPCKr|bL6uyTE9q;YKmAO&QMJhyjXptN>V$E$sPy%=
zv>p%0oJDC0-tjkKSGM=FRqB_yHjh=Cx41Shr%l?*T-9U#J@H9?opt{G7Idj^v0B3S
z64L_&vLT=^I^H4BUm1iD>Z0i(&Ky2<_bi}t@HKA^{k}D}byt$*@NJ-ZnD4Vfw8{4e
z6CT_|XJB;Kb(7}0^<^UKO~<E}iiC{vNH;%VH4Y&>I~0|?nUWmZAUWZheP~Hi5FdU3
z<;_tHAaEY564cXGBk%12+g>WQbFP#}DKngwDSDmV#DPPdU9Xq%QZ(-#mu>SsRzh;D
z;LYW~?d*r4Dh-z#8Ak86^~#ua&M+G6i%`|}T51aJ)q($)H9xmdJhaDd*WT&>Q+tuH
zJzT|pPg7Qpr}5@geZlzp{txZNQVZ0`_t^vdQ8oX^{Hq1G|7-p=;duQ~NB_UuJN<uZ
z@9126GVkZ$8S3v*py9)mgND~S3Ary=5ooa2dYS~n=9v=^vAzIp*-hL%=C0Hcq?^Js
zVQ4yR`)3W);rg<l1cz(c9#P<I;kMV3Sh}XLJGS{h_U2dfj0s@+60c<;^|=R?XvjwW
zee^&9x7%LW<pg1tvgvggvoU`aJ|bTIHcEvF_+}Fu_ifmxIfWvqC??23^?WFAU5aeo
zqLFNup}9K$9-R*CU9HzO&g7}u;(AYs*G+oFD{hrVD~$j90+sZz=K8wyu%GgfVXqT;
z)gCR|h6C6@N+%GDc?q5$US{AXgO1^?mr{}If2Hc>hQmajmPb<^4CgvoeA&W-R~<T{
zc=IOG^q7||eHsBguH<qt`yX#~Vws~;Juw*ROgbbdUWn3W3D^6~B_zOLqKBT20%~Fj
zZ|`6jZsfo7haecD80K9K>%yksxjf@8{ld1y8a)U-W~<nZ4WT<OV+jrWd=ddIED3?i
ze2xbsw&Vr?WgoF{_+q+_!J}KpcuW`q>>t?p1WhwVVS7tWiEU4J&F=az*WMkpXCtRM
zy`~kaGe3jK*x%*`+KnzkSPXVX2JC@1tgk^ISsH!P$|v_5`sQaXkPDd8sUOipyQx*<
zKX5gI!q-rkA#BVWLVuO&X27%?lp60!wdR%j>KsbF-lNnpuGC(6rCw60hbR@uiCg&O
z+#q^_?2M{E=f9f$eX65pqJg<xmOL+{d1uz)I8l#ya$NJw@x_Uw*;@y4QNllYNWA*R
z<PYjn&(slX;{rB2En+WV6NA%pq<!joJD{ItG}JxM9?|uxJKvb2Y<iaFbUo?PExkT{
zQ1jM(5?oy$HG$2N*r|Ezfr(w{HkR6jKAMC9cqPaD-#SIto_YSa;+=i)7jpg{lNF{h
z-#}{paj<!SDL1uiypBH%=s|ySun6dH+tDEw{J;1Ehe!uck*%`arS-#D^)EjV;(-{4
zoeiHl*0v{eG+-;UwgfJ2TfA$Yc^KI6b&{)^GaI#R2k`!Hsd?lyki?(XX#Rc_ADtr_
z1p|&~rKu|pQybW(A!Swb>89)EJabE)|Iw!8?pB7KWueE_Zmrl{b#XZY(_}ft{1Vr+
zMl>rajQ+i)_pV-k#ZR~fdU<thaW+2rz*n88ZEr{>Zi9H*jz&Xy<;YmN<;ZzzTkSF#
zw?7fQ2clqLY(GccWkE3TEI@EH^KfX9#hoT9vv+#d9|Ln7073y1iwb_@c}OU&a_#bO
zn9Kk1qZu0Wn<YZ&u6)N@^jN2sMe_V=A~*sk_G%u|EBUz}8-fz6%erSN;9i8s1RdPv
zcRTkb?L;Z;5<{A%PA^D&>^C*hZo1*a=C$7@o^IZ<Px3W?w%9C19#fUGvQ?6Jr`Bkk
z?+)H%WS@i+&{A^Wt{U}Y4Z>1)T7A6DN*rnfWqg>q7&?)KSM%Z_OqWx_{-kCwSUGy6
z1rFtzJpS0zlBP)8#nx^WOSM$WmDX-`ujLF2!HtUJ_^r`{h_V2ST0T!#h~O@kM(dmP
zUM=CTtJ1fEM#JrV(AEjG1&KZFiH7@}UrLB<r*dmM>1eEiseNYFTpl)@m?~c&TqU}V
z|309Az+kB36xWdRX|>**a1S;`=OE`V?9KTLO*(_!OkKw-Ygv_O<AQchzHQoiM6!rC
z2nargik_#*RwX~loNJ-fL|xrFkqTII&#Hiv3Dmy>Na1dE-X$zMzpGwE(N${x$_Nw^
zs+1>AtZVUO&V+2ueKoeoHDM8)jBj;L#?A`3#{7b;sP*CtoJ6l;K&E3b`eV_T=vahl
z9U%dJ-73lRiE`xdsXxjJ&AIs@EJ%XZlgUn0fAgx>O<#5W{pU8@ei(0021ki;|EK@=
zbnqeYUuI)@E#vuZeb&u$Ukh`cC8vN?y`h}?h_fxI@mbe!{NwGp)Z&93>6;rg(oW&S
zJmAmZv#7qZG1u0^<TWi)D4Bx9n>3f0uW4TLo<oj$UY$y9{tj~Bh5rZ3PVYJ*M3BGH
zfJ2ZYy!rjGC2eToE*l*Mdb97v4~(HWfxpH7=W2ZXWsdKdLD}&UCOMqfJK7}c&8eSr
z#9bx(HFUQnGzz=Tl?2Y;<EYM4WLLdp&Sa>efBLe(4gJ@Uzbjq|$loF3z>O+O^>9o7
zgZb@`nZtMRWj_!h#Fwi7jxSX&X7MG!pqE%ko%)|OPapnW?8(w+;ZHoZg@ZnvGdWn?
z{;;?oX+-c99qbqP8z#dMn#2+6(%1GvVnL8yk>!^bn02Y;nfEWr${W$saf3hPk4THB
zK}`152Rq<fYY|V02<gl<@v9Iy64gyZkErv{FH8Is3mt~k#07Fgm?5jBmg$#+EC?#B
zB7eO(BwI1rX+Av+;Ul~q0pr1=y~hqmxc(r)T~6MhUuP;@L$7r`lE2^3kgYSlUDmZ-
zF9-4kS96vADT^XH38r*+Eks@r?Tx2i(EBmV+?KX?Zf1RQ4~QvkH@=MRiOb_Y9u$gq
z{G3iG=~M2Br-{6vc*k+V4Rr06g}-PRFTUjB9bXN`gDw{>3()23u@KeHPRW~@V`(gu
ze|W{@%AL6HDz$%|SGxg%>$UuZ0(xj9UG>&m+BkKoFYR&NJVGndE$pHjvK(5D_uBp@
zo*)+l2Cj(e&<&SRVn5QucVHyun?pp?ZCHAo`_`G~0C+5LxG&S(*eeT3vj&1#`hgeK
zD)e%IxdRk;T4@EK@AO)h97$Gsp_G=2Gr@Ao1~9}71jf9)BE^GFHjW>2=eb`WsQ)g}
zIsN)tASuLBCc3=1FR~vNjc8|^Kn_?K-|Y|ZiCJ_Zf5;HwQU;&0IO)@D{G6=i_Mpva
zVN^rh-52xP)>1+(R#1Pk#>O|?s;!Z4KFcs$P32RFWFhc3P=)Mv6=kVUx5u|MzXH%6
z>&-sh{<?UOb<u24LF`JMOGJQ-e`pSXI*$o}r@JP__{Ei5_t!_~k}oKqk-r#t7x(Lt
zX%()bdCMqob{%Aaq)2w%$O7ZGjGl6YObjIf#>6@@6<$lZ)@jyKfr~eOdhU;?U$17%
z@SO|f7o2>nUU(zt-T139jG`Tx!R4p-c<W}1p_k(pYvsA0Q6T8A>-T(Un)1bLqCY#m
zaS))vt6clu{L(U>6J=RT_p(^fywyv7%(CuPU|&Cy$gmKc6C7H0XO`S+%k0G8u)XFj
zKfdyyxIbfnB-g#oejpF4p}uStUE+|Oq;}dt`q;$PEYjZD{YH8mx$XRunUwt0>iq@n
z)QzVXY~hbA?7s$YLEsWC#Dqh%tkyjKWI6ffc~+0^Ht=n`JB=m=f6Dq;;<VX(%2Y%4
z`JoE2x?gEJ&g*Cl2E<;;mk_E}l3C!j-c_tJ)<C)THZ^T`+IUr4OH=i!yH!xb0S!w*
z1%Jc<`ZpwYU0av>wm!9fG2ret#oCv$UM?~BY78I&A#zrS$I@2mE!)jM<rdVr#M(gI
zdp`=eSwb9t{jDhQT3%+M!K2f?*;`>C_5S${AU?hr{LuD)egN5S`_C@?1{jtCfb4Wy
z&f@{AEKSkJ08O)wyV8T|rQhtter})XT*h!i8FUHeLM_*SNaL@lN10|E_ggKT`7SpP
z52WM3zF5qJ{Q+_Rku@|P_ZPMECzkrytYmPZBhMUg9yb^<l52+-)pcK*Xoa(QEk^@G
z``{K>UUQSw7wgRGA37p0-u4&^BKkWh$a})(B~Om0FRCmKEAB+5mgx4N;*Y3EoxwM_
z<b{k?=v(HJ`v=K?4wAnDWEKqT&1ZkqtemuU;{Jev<0_*LmE$%3Xxa24tL+P3-B*;z
zOk(uJ52-isinB(4BF+BnZ1tz`+GN}wWDE}a>vGBe36l2-lJEVYE&Y0sT;!6ial(<k
zR*})nXhtjiZk`5uw07`|E{cOnF931vlfRLiIZ*Qwd+}$K!34dQ_Cq0?>3V$jxr!fK
z7|}SII}5GefDo~r1Tx;D^WOSGPDwuq=nwpG&W^G4X>dh&h9&6G48Z*=j}yPQybsM|
zQm#uqZ5bQY(^bC#z~-fs7{Z?{_Rc6PmY&UPouMgeBndv?$f`;CIj?Cm*!s~_eS`VE
zs!mi@La6@6LG=sPl+#;3;!WY$_0N522rRD140FXs2gROu#m2c}Z9%aCnLQ{LPaj=v
zgWfF$4_M}lDofa|!S*v_w3D<;H7X38&UE+uqjsP6(TGlA&sh}417{g~EjAH49a!!A
z#YMGago(q%jve3P_K63|%Vq~2*{#q=2@*LUOzP|3x=Ho7qfPAhSZ^&wy2=FUuVJIn
zGG3<QEPlB=#>7(N5U3`XW#d%}ctZm@Hk`+q^$hi{t)f-yZR950N<^LzcD$Cq4CG@X
zdzmA+*Y-PpMVl6vgI36R^=NnE{*-Z&mqv}2h-v>Dwj2*ffO1+SmM&c>t;7MM=O{$m
zBZbA2IwHN`bL}PGGpUAeV$~~>AH`-ZU!nf0w<VX=Sp(5Z_Dg^r=7~BM!k;n$>6ZCv
zeE|0WS+^@hbLwxh#J)naPe3wqq^vi;>L=bUnhOVLrw92}o~2a_HtcY_+Lm^I#5rAb
z%lTmZ0ca>>0|+;om!-ZU5Vb7iu$l^5vx3fels^D-pX>2kB{T?aZ#JjwANrhJNUl=O
z*&*w5!UI0zN_jzjZ+l)>n28pu!9o_)68Fpny^dBdow2WC;Bvo|nmMn-(&TDeu6il=
zLEvL5am8^EJBFiSd^A`1u{qUY&N{)y9UlZd=1iwAD-2<UXF-_V;8hl^)Odw0gl?@u
zn)B2WYk~RcXprbl@49I}Kw~lj3U?816>kbE<>CYpjaDBG`XK6{Wo$gM6<ZiaVvB7)
zw@k0)#HwHNn#W4a_jd&;&g9n7Q&yCUk~XP%Mjxg&wm8`@wUT#ny!q|;7771nzlEhP
zmL5?U8#<og-z}XQe`-nB4T6sXg2%kp-|oijiJ>vzQHT}i){`tz2>lC=Wme|bCxS5(
z&n{sutuJ604jeipZk%N<?#p5334zTz%Ff)iEAHr)>*K@3aY6AKkYxgeu>j`Q!Aq_V
z{V&12KmSg<F0l*|C38L<ac~n#K88vO%9F9Cd%SN~fz9U2_7LxqHC-1&k99BQrY6SW
zH<YIAL)yfps?c`XRge9^ow`?P5$`Ay5NyN$%C?a>w9dbncsA=z{qbtIR^k4V+^QN2
z8f3t8yUeC3jv$A3+Vv8RP~R(ndI_Y%lCn@96JF$80ok<0Pc;vLWIij&#)p8w(kx5&
zM;r!~+#%H&@ork)vA%z#WSiG|3&<avxPe!6z2>yO(??&~JnZw{UdvG2NTWloDDSmg
zNv|m8P=yYN@&4}YV(vBsyV5*U$r=S)@{8St+;+A%+^Cs>ca{P41->=@Q9yqUbIES#
z&&{nBt{9+$PfX3#Uvj<6fO3#=!%muw9I+wUNMP;kfgS7-%YkZajMDyy3Y<4LUonIl
z*DXS-0WoFvU=%UcBfR*hF+Xa-QO><oo`qWGHJ?b+b*V0VNsD7edn>*SxLalWW9u+t
zZ4^INn!isb1^eVhulXTca!=qMmp`062Hs9ujkn;6KJ`PbSnD;9Vq%uE<8&I`w6w3+
zx=x#g#f#JpolxdAujZ%Tobq>%cYIP50H}G5H>@aGB1-;8nq(}Z?9tS#dLi-W{T+Zf
z<p7|ksV}GEK^96FMC_wt2LPgw5+6BAAYuj4WC_oE9i?@1?vbzTtienLR~qcI*t`iJ
zn}{AJyq`F?ooy~SHmI}KH7IAy+5>4%U9aL-eBx;hwW;@O4?UY>+{jqmzoZcWjP9dI
zRy>7Wm+rTcm#PSM`9^JO1-`1dbk{Z_h;Yn2ntK{}dPSPHl_z%O|E*r@7tlze3Kgfe
zKwu_m`e*eiD6n}g2ObOr(wBA5+O};QrP@|k0PE_sf;#XjDR@~kG%cp#wRBjRr#ApH
zR_CXXKAN@P9X_bh3xB97yWkP^73XZfcou^wkA=eQt1>f9tx4Tl*+dmZ_-T}KVX}Ek
zvj!0-D<V@P^H&_dsWrYUi1h2Vr1w*ek01d(8c}_wtVY&dtKFb_)#-kWRc%dHt2l8l
z4cqcss##M>0|I$}=m@1H5_+wx4q_S{7{;+^qf5M&e?V0MC{2*2b{e|&3F(7Q`n~5d
ziCFb(UQ072{mJ87KTUpA<Hz<Bjz+8hlYBi^9ji#bq|xz|S_G-%6(l=;5oEJ!R)|DV
zBEOBVtT=^5jr)6=_i%iQj*I>*R!vN#8u)Fw<}t{deffcQ+{C#%38XlqI7&nY{zY*t
zk9MA*Yf-s)l>|703pB*jwLBwE0H*{;|7Dqz5Vr!lmz@W6&ibVy%XD~c#RzAE-^3?;
z0*ib2{9}=DkCmLlO8*gzYa)XDIKEfLCN?%;l7c8tjl~F-ArvqR_F)mNKlM2iE`L7Q
zY}Pn4b_1AQa)5eYEX0X-wzcy||M--gqknvgDCi%btKAp(H}(b~{^EOFva0JJCAPS)
zg4XV-z0HaHS;dG-!2&tCw>=PK^SLni%sjW=oui}v0$s<Da^`yW0K<|DW5+s^-{uJn
z)1g3g2?;%kpmgGv2!2qX+Lk>J+Wn?qgVdWOB`D*0qOBwHY2#9_`REelC7w#|SXW$E
zG}LR6t8Lt$ugMeM|G$yM`zRIjElI3Hbg&AVn@NlMXQ{TKcHDomU43Jw|AQ98Zaxu{
zkC_9JZVQN=7=+kMSCzaB)2F+7-y@`0IWc*JXXe}!v`kkwS{y_=7*p$Cr~MK4&*n;c
zfHyVOqxVY=^v6JwJPcDmEvie`+(c`Q#d<`L$K!c6tD_`ZL<rC77q2|tYPx1EnWwQ;
zZ%KA=Y8K}xr^AZDNRXVa(p4*7(jlQ9m2Kyek6A+VS`-=lAXdyDF(}>eg&t_1Jpz_#
zjs6+SAQ(3iULEs{m~oHlpypVkW{x-V4&?$FtSyS5$W8fE$|SM3Ubl;qqZKL@(M{m^
zP;RZXP9ZryakgllinaWL-#p#e!1c((=eG)2g8;A)MIFY>&D-<}uuT}eO3n$#Aa)}e
z5ny+cfIgBT5@s<dqJ1A>??n8guQ9hG6f@;%Ekd(Sa~6vwa@5aGigKDqjCYu#{?uY`
z!E%rdkB&%@Uvo`K>M1!)bc4GwVzk7bQkY?+83j^|58RUC8RIS9HP3RN2Xj_*;D+eH
zmC;S@aK?osVQZZlr9#cn<|fv{YkppG534YM_cR)0NFqc_%&P?tto1xy^*D<XOZDp%
zMGRP;;sjbuIW|J<mN;G~h3C`_J&#xSS{{VqL2EPJ5E`pj%M)X7Lvo6zx*RLIav#R$
z&8KSfnhnFscw=@iVHn6=)sZ`iohh>M;_+a?exJI1>-J%|T?3iqScsM&1Qm^O<*E*w
zD(f>Yj?#s-XA^$Dop?gP%hgPr_ZH(FAFu@v^jcO}K=|5%wZOi|9(3Y+yn3bA{GKhg
zE9bgM9b!qnw9|rNt=_MEyq(&0l5}`@S=*6|NoKdbgq2EDXb#T)|FjaMm7T^A9I>?0
zj~#}9i(j-5%fFCK*40lNCO&J~JQ_ibj{b_gsIL1YKO~m+e#v*^ezGE7{h!NUtxv6}
z^~Vm058O~+z4D6An$(K8fAQov{>*k))OriX^dXO{S-_+s3P4IH)rcWQ{i4(DifY7z
z*!`yg{FgZ@L{F(ry{IBX%-ElZqA#t`1P08SURmC4g@bu8n|dEd7%OsJ#4kpJ@FN*Z
zaRUdK>0cM>Et?7mLR~smnjZE%Gbu=Y9{T!x!+fx7cYN00$uTu^*~iax?Gc{;(4q3C
zHxsw-`<zgc>X?O1O-S$6c2svV|J2L=k#wnDRgse+>jyp;@A#%yop=8lGh`o7R}{t;
zV;{SB&3^M6P$~P2I9^pN7+LVfQ@6Ro=Gq6I?7K0ovdn3NcncEp9Dmmwh(^f@Xgjc3
zn-?~bPgvwv?d}>&sKyV3bdeKN#cMfuK=_MyjHgEy)>S98LFQ2m>CmcWoIdv%pnkxs
zP(F+WQsJ&0M)QsUW_}164D?5uhm}45w$hai6%`LsKJ#rR*l${Q^>0HJ)A9!xYG^g2
zsI4lzlETo#v4|)y@<I$mjt6p*J2p={n(G=LTInvItQLOQldKN%TDAs+k$?+_zu(No
z<+WRb{w=(ta%#0Itiu^>IM5x`_o;TE5w`l+65&Ts?rm66-Z0-8O3{H7<!+JbU;`2A
z(t>;p;Hyi$AUS(07n6`O4{o9dc9vJWLaL)dnUgRtECyA&&5AuJK_?g(-Ut;@HFt~0
zm>G1yE!^|37I8xq%&fuDx_O=FwVnYju_p@urn#&v(j0D3E7+dboy*BB=39s1!Ebi$
z;noFdhpif^egiLK@@s}hh;wh{J<(6;JyWko$3WODIF5m|*)1o5Z-Ci+Tz5C|SfWkC
zDqGLs?unK2ti;#cUL+|mn(Ac*z0?_HnL{?g2Zigr*ZizQ0mmw(^)`Q}sm$heEG%b?
z8m1J9!$&(lDl)$n6vT}Vg~G-rJ|uj_kjn*>sROa74cjny6EQGi6IYoPyUC#XxC)3*
z$ZsH$c^BP;1Lsx!0&vPJ|6_Mn{PM3BoJY{RqjBlsyUqX~_5+H+U@!mfV7sds?1>B(
zh!diyPo$~4D6w~rRkY3B*xgMcdvi8lb<nO_*0I>}v7bS1qMJJ4XeaBdvlrx-ZFfd-
zZR&*5OwpHG*{ZizI1p(^&852l2{SK$gnH;toFpi-iq*H4o=aVU@c=UO5CxpN?Zu!8
z(?GUEPHSNJjY<HU2^QCDQ}5YrIpT%fk+8q!Hw!#O1w#J~s|3)o>T(a;rn^k>)euV6
z&={{Fd#(F^rnAfWYz%uCg~PQoEqwpYi)A##iaI6SS<)uZdkI&r2zUou46eRWV-7WB
zcm2J*eRT7!!yM<e{`v#(<J#S6L|8DLU-5}I3%7OW7^917$-k&BeRNsW+qDn>jnv1;
z3jJ?Ty}L^mZMGNe3a!++eh&?8y*cK~!U9HyVTHTZ(;16c@HnSP;_Q#INCdNyQk*`V
zzG#1_YN^*6u>()C`&gfTqSFZ`h$J*-S0@SecLmUR(_(5vhbdR!>gFxGa8(r*gjz}N
zIH`FXIPx!k*QO?w1X6)iRNsCf$t-(GO~TqC^uigMJ6cNtAD*A<qN$On*=mb93=iuS
z^==$_psD>M(CHkB)Tjw^pLdyga2KY9&uqC>H?1>2WjSa^?A&WP0xzK8vR$n|i521o
z`Cy$I0nXlx!2+g&@d+?x?&f(->U~^b^h!pJc>1!!+Uie;XT({K3+JjBp(1=U^?CM@
zFE9C8EZtB#3uM91<k{xWkOq&w5{dAE@~&N+{StmDd;9%E_epN7O<lqR)^_%4QU?*!
z#f7^(h%7Vv><-j%MZHQSuoI}5)t&?WgYagdSS+XEEA?7->=&d)JLTS=Z49xue<4Cc
zYUE+g=XPLNFzk*JI~Um!gItM^0<8^)2Rq1k`m`YupMUXdusJnyfFQfAOhCJ+vLRF0
zB_;gk%sNPPc(}^cz!^hcgINiCV7jW|8B2`*T*bcnjD-mcOI@AWoeGYQ{flW@wqRe<
zc699UKijI4s0v&7w}lDkxJ)6t66M7PZ4q=G{MQ-kIK0_SfC0)*_jEp*=%SXHbuO_|
z>%JPrBm{NaX~=)8zNhbh&9i-fe6$FU)$#S8PTfPox~3qkqzMlQIoZ!2veh1<T4oI(
zVhndqarO`olm&*Z?+AukNR~{h0>L?NQRd8{79fsf{sgNHs2KqoH&|%?O{A(lWZre^
z=4M1NIN&_t$Dy^8A-!rf_E^@3vSUkc%dcQvcu_tj%>)8FHeLwx1?yQ{Vv=L^Ir$q=
zP-&}Kl<rKu7`=W*{Yy%mzgcZ+WT^&JVy{|oovqzYcDZzG6VEQq9Bai0_K#E7BzWRJ
zUrhtED6fu<Pwt$jj7bc(cKP1(H00{nBtZvDw<6$B%+)U41bWHbw?@l>nC$d6FQU4!
ziW_QK4i30iQ!minbT?KYRs4vGKRbInz0H+3vjSFU6Tr)H^gPHkSR~7yhOMMfyu263
z6P<+Zke)x1A(b;EtWlZW>@vUtatIz9k~tE7TAy0W_~NM*jP3$<1HrEIak5RVta?}e
zSX3?N98!=u_Y+aD>$dQ%P4<b1xbN#HEHCr6{Rw5Yw<CW{>^8NRC#fB+CTG&5J#c8I
z!q0cL0F2=-d?`ZI-%%yUQj+wMq0j7>gZVv?<40yFIkLx6lS6iRk#rFt4q@;#Wi$Q4
zuI#3JvLk;$RuH;Vr9OMd4M-wPxg9abEc!iy@^0`Js#8?<DatPH=AU@%Aalb`0sul|
z9(CBvrB0SNMsceP&Rq4S+MkIgZ0C*pAyDW9VIJ*EYf0FvZOxpRYsfuJO#lCM4RsHq
z<SmpW)`=K#?w0Q1;FjGA=1t0EFSUCuCqeqzx|UZ@-0)b0T6BKb0kHNc{c0OTkOwAO
zl4OZ0HmdaDy=l)(=x^&vZvmGb#5BvyTc2{%uG!s*)5OcKMoM0tdIM!hpLmg#3FKM4
zrynbp5DV|KSPv9VU|>@6MXPVu*k`T~g^B1n8j<ZuIumgehv!6ODvQM~Y%c}bN+`;R
zFD!*=6~Ri;&V-aGSzu0LG~rLqSW66Kf`wX^1Hg4l?93Jj0BWCM)}^_>kv^|aL)Xq+
zgO1c!b5-UxTk0p!QM2O?B7(^e(EbNeO<-bYBBL|hvd$6GWfyP>n_nfJwI$jMgq0{w
z)oy8SFJ^e?t)NI;#Q`(4A~8Enrd1;AG2m_h+zYja0Ti#kpoaMM6&CDIE)r9HJ=XCa
zz`Wj$xw<fUtbZBr|NN}jLbA?}mz|KV`5{8zxrg1dd0XlY@BZb0ITbxxdYi(fHL2Hu
z_RB}~g!a9GMv=hzjJ$#gDBz4Be;8u{G6H&;1vG%q0y~tAcsR<u*Odos@%^%$wg+|#
z(1`oD_W*XHDAGm1$0d=v>Wzs>91swpJ~Mv-`GE4eC~Is%>hm<8gQEaglAJBzm1VAj
zAM3oUM-A+i-Kq=VFKq2^fv+wP4=qRW%pTMw#di;9e;o3r2=K@3nx;???<75_lG%xD
z?bASoXo=>(fovYp{Jola{|#48M1=>bUZ_p2rpY}5N*2<Vi&b=CUQtUn(^X@a=IBpc
zWo``0gqll8bh_#_`VGcq4pym4D8;EoS~9dS*>`wuUTEn^fr>oK_%R*ge=<Z~K@qR@
zz^#lFn<3V~viQ(PM1sBMQW67KAhWQ9@8BT35k$5J;q@j8*RjIre2{okq@>tu`8!|2
zR~#OM=2?e_(=5<x+0GDZTSw@<X@u%DNVAo$D!k0e5YP6u3%iqc3$HR+ohWMB#pSd&
zcoiz=32{HY(l#ztn_r88<TBfE#M-wu$8gmb0>zrQ?S&0na1+xZg@Hd@DcVt&dZP08
z{Ovjr|7-HB9ilu|9lX^vyGhEDpqHN3bj{6~)X~ZP3b;6vdPF95X?l5;t0Z}!gnQZg
zdL`#^{KB!y&{+V@IwIwWp--s89oJl3q$c<UPy`$llK%k0sQI`j0<64iu5^^6Bs$c>
zBC&IDa`0N#+ojlmPJ+{#UcW%U8tYhJ1TaTFB09iP(Yhi}ubgbRe)O~kVXh>GFAwSN
z#<CBnni!f6ZUN9zo#Pg+AnA<QW=<i?y{3=oMRur&>0o8lXv8ky3+jF15=))xf7z}&
z#H<*{)j5j+<LU~xsL>|Ut%t^i!Dx5bat|lyv-rgWCP$LXNo?bNY9_{un~j|#rh*yt
zgXw~_$({BlN|02cqzU8=;J=8}7sq=odQN-!i0OscHKKm2TuYaam;pKB&B@88zK?Co
z9bub=X-uWe9AlG<>_jdmRSq0KEw)8rNA4=eSX=sGI|JEgSFu!C*q>*+xtefdwY{6y
z6hZ$uaZM>+K4PZDrK!+sY=5;AGPgo!^2mj#M7rvnCvyAt!hvkc`LBlD`&x?-Rt(5;
z?~<GB_Km9KMMw?J|L!*D1&D()dHOj96H4bxot|kA%36!0HEV_@NMYLK%%JxfQo3sE
zza+yr52`-{VDsJp+CPkupe&C&oia9GY|HQ-`Re=&07=;*U~)k9TDpOJ9XdXadV#q3
z&ZTa)PLgs*oIgnBYB$Yl{e@SQKe~i*R74kw_gRs@^Dz~16jYMAIZcKCOyQ<!SHte^
z-Nw(~@IOsp2xI^30gYW%vi@HOtI8!*0XhuF%4Em)%2l~RA`p0`a1xt;MA;KGmUPwY
z7dg5!rqG^UT84jZlUD`F!-C`=y5yBX@(+S!&m}(-B<~U=ZxKmNS3MmhZ^kkxR{36z
zs7mipX3o|s2EG;#$=auL827y|$r0SSBwLLbQx{FQ3}-f1z=HUQn#yLT5|=py7tqXR
z4mtGw#RYC&(}KSL0+KvNTcWkET<G$C{OvY7t~un9+!<7f1yxe2QsS!I8&vt`8&~CG
zS7lj{yhl()e%rLPI7r^cWlT-{N|*e*AbDMoe2z<=8zip`l4CA;YA~EfU2^MgB(wif
zr2JzwgMvBqBPFx-Wf<BOp`c-=z0X6i3u2f9pW<rTkDD`WNVLkabOfp7)Mt38ejHCu
zzL_Yk@ylv?vZC1EC1pL}&|)Ol(*B@SZNa3@5m;$6<2HSdsNCyeMB7Jx&_hZd0Dt?g
zl-#sCsJt%#%ao9BZ&LL*WE40uV2=dn(O~BORV*DtfPJ#Hz=ptIa4)79q-)P))4N}?
z+D@SbK(E%OXm@C_hnibMc2EskmaRtEp)vqhm}w{93jH;y52H44ZswZ}ssg6b-oHRH
zc1-7zKWj@asiehS7+@$=XC{8>NYU%twmG_B1GczLKm1OOC7$+0n@k&ZE#=5O&wkMt
zGThcc)H%ZnPrNk!x;ck(D1fb5eIsxSnSuZKJjQPdwr*o^k3XQfbT%tV|4ar4;Fv#@
zB<1Lzc~wcBf*}NdT8UY1e~%C@D`ALv#3c*~5@O~rE+M9b&JhhZy>mn)_*-TfP;i4_
zhZmVcYOOYmC7}?MyAB3y4p5noS2_@iPMv0n4h32%kXc2=kb)KeUBJzwUlUd0pVZZ9
z_~d`9<Y@d`*JkcyN%Ae0ttY(?Z4W$TS{ooK(o;)Co$SX+A9&}K(wD$3#C`HkwxjWg
z4axQTgXr_Pyz##CH;u|_U!b<#<^>hln*t)Lu>P3&gk@2SLo|`Hkn5b})L6GuTnE)y
z=5=r*?3l<EmdZbEeR0FSuTaxZYMxfse(qk^vpJJ=E<Jof_nDhtP<ztXNLtU__L_Ft
zX`C{49&mmz&~()az&J$G1Jvj*E$|!;|20?u3RuSS?ST}C<rSz23fOMUJ7lBhIV^KB
zUGb2YTjs|5)R}Y|`3&blHT5kc1U7okxr{!<b+o3)cO|BS7b>%$!X?t}jG<{7Yc~mM
zE0c}jo_%~)pl>(h)#}}L-hr&jGiQ=jGrO@2!PcRMWdr>gSdM{f2ko!wlWlc288hI8
zJ$k55tppoa+j-~~6IVyYI4wv%uAoX)Sj7&<Hhw|2ajk_KZ&%5kR5HEuofEOPocEQZ
z0I%7Nxjj-;-)?90Yt=fKl2%`=`*Ai71yV$J;xevqx|>d^jpjF-#4HlS2R}V{m0r?W
zEuHjRPXi|#MS2Q%D(u5Yww=@xLK+`W4IW1#S+T_JeO`x6BOlj_Jw6Ych1rq*bq%dW
zd%3{uL>+fgI$Ll1``x+mog0qNeDS3n9AOvQ-S{-P<8y=KPL&;;9oO9y{@!u@Q-V$~
zuFLytTxJ?&|Bvxx<JXTnFP6QJ%w}Yn6rA%Grlkiu<WrQk-ygaQ!e2ca;U{+ndtZHC
zuYxD_gZU7S9T~&ADuZvgez7fxw7eSwsY`vr3Y;liU2Q#A*CLUaaVxTGfCNrZu<Uz`
z$vURZ3uC$W&r-`azisZO(bNFk30|CQ{>XQDF}<r}F89~J0(HQ~J46n;7uhwMbO5ke
zVcum3d5fWQd*0n_#V$$p!@E#dvvACv?&3`2c+qtTMp3uEdih}I=Bb2N=!^Fw=bygl
zXbNLRl3|A)U6~ja^KsU_5SF>F4poAtcgu1%Jxm|5Hrej*=LkDC^Y8tcc=OV7%Nu*%
z^HQ=4U>}6u2>g?T-}XM{2wJ5@w7-5?(_`Af1w_A(SZvLUuh6vcH_A$WxR6bz&UndW
z^2QKk?n3l)c`#A?dIu|fp3SpJkSGb`9hgI@9GmsEeY<TpzkKtXv58A;ri0JsH@R;8
zaqhmRYmfK}3iNPpjX!cKFHugd@Mo3}UR9G?Zid~UrzNl2!Mw!%Ccj|wYKB-wYy^}A
zC1x>c)_@k?Z{RrS49@#Y<IrucLrK|Lq`(YrCQrF~ZMk|jXai2=%k$v3eAIr0Z005b
z#=?^|-7B2%E}4OQTIU2epYM;)Q=Yv~YwP=?%JSO_9=`q7+>V6HY)3y?K~I(r5%<JY
zgN3N4w0P%Xlz9Uwt`_AM$VW64LJ)qnS@{T}Dsg&U&p2b|J_4*eBszD2U{J%&s?<^&
zpLFx<X2!m1?668=1e`@pyKfX-r8m38G*Z<)f6;X>_(>UqfZlD!<<fs+=Yxfx1u}zp
zB$XlTV2-6gur`E>$Sp2<ZI#c`59HjLW%!%E%XEc997a=Lnp*}TVA!x}yG?Br268Pr
z*wT96XuZ`x+XBgV_46wzs6C$t&c=7snm?`Fyx0~#8c8tl(Pca$V)@85#2L2g2h+5V
z!|?p}&9n{M!n^p}^=;|AIg@-T{eYvaqTj6NXXl7A`b5n6B)a)6g+jirmd(SnDFvBf
ze28wCgQ*vN0)7lgRocdYH9Ol>F*FD0Oevpv5Oep%iRTV<fHFZtSmo}-IpzcUbwJwR
ztl-;)`U*!(2>SqE^Jo45S{OI;*?Ti{CSiu>4IeP5{+U!ZNi}cdsySNO_18T74`^T*
z^T58mH0zUvOe&8bv{c?hf~di&#2GPvM|WNNZ470x^a))1IAuLKR}+x-^{!HT|4jF!
zJ977=FFxB+<(fG{S{TDi=ta#tpKa3vUv5m9{|M$ldyf2nt;zX4MC=+r3C-B#&G`#I
zo|HuGjv$|dlx`d0%}y3u>D}GjR;tiG;`i~WVYHKgb8TbHpF5Ar*5O`;-k84=b0GNW
zy*8BqN)fsxet<uB1=)DUw4Ou4llWqY)NH)4uwYnWa);U$SfZ?sG?V}eLp`tUY87e6
z9q-AK%HoLjTPt|L!F0}1YEqjUk)!>|f=b!K*PCAixg0<lhJ$Q2`i0lZv*o(~s|8>W
z_v8zxdZ(4yF`TG5$i0pmQxNuPB`7kc=+k**G;@p;preb=p&fG`&PL|aPqnj_WHyl!
z;*(lH*G);eO%T~BmU{28fhw>o>M_jh`a5otcPUCleNOdub*em){!-aQ!B}UDl_2@V
z_2SaMTNS8uq76Fckb>8ig!@K5QCoQfODnyB2>0GVoWs3==ivfA5M!;G^;hk0;#GNb
zTA5pvDm}qA2qY#q^|XlAou6ovpiNs+lj`35u32)wU^!M4F?{58vOv&oehEES#HvE7
z2V`$gRZb1f%%r8j4^43B#ZTFF?IRXJdU}tC&a{|&WUByb_NBGV2+j*(Jsc(5ZM~gD
z7eFb`n|(hCU60t`42c0Dj~rr;yNu`cJ!qkj7F_<qg-q6BnYsR#C<SgN$1LmWIlB-4
z`JLIlq4wI1PixWU?onPVa;RN=*WK4)cNeHTRBO=x?HZjMG)jf=^ibuD@5iXlN+w~3
zZC7Xfck8^UQ);{Er8>8&P6>7LIJR{V8Xp{G#dKEp3%Pb?8_FcJ`r}X@(e<wv%nJKk
z`!4g2@&~Y5q5LI&Gk8^|mUDhq-j9y8vL~m8{mww~l<vJZe|Xp>LJL+7Rh*TT{OCc>
zR*)c*?+4(7`7*=KNLM}hGcEP-?j$OhpC4wGYN<CUr+7P&!B2B|d9q1A*~1f|Eq?FT
z&x>G@-keWKMMF#7u3zfR#LMFb0@Oz;CLUxsm1~2I6v3Nsi}jzAp6vojsnh7u+|BY}
z9K&Vq45Xv0@VLD(42s^*h6m#Mk800as#!qLc}O_ezkcst!4UqC9l~UW5J=bQ-p%}=
zpUDhCy|Yl&^d_8B<f*ylOn^=B5IZ@>FnAL<{tKp_T7u-#7ssV%Sk2Vx%_}=h|I9?t
z$l?9qRgV@xy%ygpq{DM>4AWQx5CMjbHJ$4H|8e)`;Z;><|91jGqk=msXjH0Eqeevy
zN;DDF9C9M(K+sqm5K+-6rFBA0Ac{cnoIp;u2dQ(_Dh{o-+G<;iiV9(nfU_uyB7!)r
zZ9s4WoXGF<U3>476ZCn0&+}gI_5SgCwdCx**LbgcUiZ4!??~8fkL=rZ+OGV3m4Bj3
z`4d!rpzySuA!V<3<ZQ8~NN@|at{R!P-iUQ#73X(ZQ;y!TreaeiVn9WOf|@A1Pado0
zc8e#rlH+3}5Ak$tErP3vLvmAw4Ndp#mWem=<yPiix6Nl;_}w^7)DQIbMaGyzNJW69
z7Ras9^cs$r9`<*pPq1?9qP}oz?ovn+JarXsYTT>YbQsL#Lnp><t0&%m4UNO+N;qF`
zzQm^<N&HA0$^Hy*!kPT;-f*k1>pKYq{C3E(N;IgaXEQCheJii=+<co!dRU|D?g<G+
zh>6Z-vkAlDm>XDY7A>ht$k&hAQl%pC|D}YvK2$7}@+;2Mrkbc>Mt2$HpILbkir5qI
z?J^VWD|5Oa(nEKI#GL5DNYhWbd)q^E1#XXqjoot+pKMFKaJ9yL2mSa|v0^OeREe#8
zmx^EV+g=e-HidkUAxR*q&XU8T$ow%EIGme$VWd<64b|<jAI+-44|w9b)8f||C=EwQ
zE8pYoUw6yVF%MKnIKWs&1qWEc%NjywpV5>8Thva^?DDB(Anw3zrU{pR<ebPTdznVd
zKDKR+FtKlhUC-vzD<nj(!5WOk(qtu%JR|qs*Re+<)|8qHrgp?ILvnIj_`g=Ma{l4;
z29DeTV*8EihO~&)S2URm)CC(vcs~{O{Dql<16XbwwCqy?FT_a*_xfJLQ)5aZODaoq
zt6Rol;U$ZO*;y*WJ+uou5EayPNs^`5_yRNi6S+*SFMDBp+Ey8B&Wt#Ni@IFxv8w)V
zoi(#w(lba<U_L{=$H9aYos5#lDl1l(Ya96JG#|sDRT#^1Jzgg3@Zp2}C+S}6YK04B
zr;w(ay*~st)+hkjyeo=WvSZ{ZwSj6)Z6`_03`=w5Ur*!sT#uR!{)*m8>pqJ73m*cG
zX1g`s;}srg_g|E?1NB*#;+FEwwfO5Z1I+g>rP)rC1iXg?3!NFdSdm|QIWyj6-uyyO
zyOho_=Q-oaU49cN!2J;E6Q73{!MJxG&y`m8qgY1?Yszr8nR5@ZVxZ*>ihDCv$MUmk
z5@>E&73IRK#}Ij){nxOMo$j;1Hd)qjy;T`ZFIdLcA7!(Q!>DB2=~OoNWgeljIsL-i
zoFsv6`_Z3yCaft%&f91e2dJU(Q%l00@_uyok7Ro0FB-Ye34EX6eYo0Kl`)LNyTY%(
z9X~$$RQPex$JzY*Z|(5olNf*<CxYO@pS3%~Z#SQI-5%Fb-V#0F_E&W6MFMP(T>LTG
zL6GbdI<T(qk(!hNJ&yV5trko(_cv}gt~)4bS^xko2XbY1jcZFN|5;1#A$-&!e>3hn
zVF%m*WQ?ZPSnL6@ANsRJY_JvtW`z!8!r<?&@ClgMi`E!RmmQ}Gb!205KMc4FBKEkV
zPZ03M4C&;XS3VS>ft3~^5ee0)eY_fG^a~V2clTM=S+*D5Fp}(k786wk#hi0~C&kp?
z3bl-{!4LWh4aVFoMRDu}D2l73DBi;WqHca<%e&FkYthsz=GlkDBFhF?PrDy>GLE*r
zbHTXnfO`UMn<Ic%CvgAcY0<YU>Qi94Y-h^*B)Hl38t{nx&gv6X{YXY@>S>m>fuOvd
z@XeZU)&}Tr)w;ulvlg#>|AFK?gT9pxbQ$oEq~2ShtegZVU63u|qs8S|p#Jet_Vr_J
zdBvjB48iJ0K@o4H0u-7xKH?;wQkitw0b*9fWiJh0&(`bInz=+{=yP8_o9h{8EIndp
ztRP<X=9OkAeIl`FM|&LOO(~5l#KCd$Z8VSiL^D%fQqG!{z~Hex74^;Cs?=?kUZ&D`
z;)!@bDKRBmw44$Hcm>Vx*U%#;9c54UXLf;a?GPV6qL}hdf9RE1^s#JzsJUC!QwxJ?
z6C6~vm8ou9R<?6{eH7V=ORasby=#>DeDH{6NN4Ya1}Nuz`)p;5&!-9NO8LzHT%P$n
z%{&G?w)bDKFy)cdCc9{<x3d&5z(hN2U9m1jnl{TJ70fP2ezZkvas(nzlOp%!5xuQ)
z+n@`U%NLmlT?P5{tiGpPp_PO2|KgAM#lGaF7@hG_*t}g?UW&o;QiSp4()X5j`YFmR
zV<@|akYlUw9gz?A9``|Lq2P3$?AvX46f&CF?aWa&LXnk`t<N;^967_<3Rd|5QP54M
zz|7E1J`qn#uHL4QS{<|d8-?*BaFrY;Y);c8JZQH8DH)=`l3+B{6(LT(*@$CFwgEy~
z%770(r+JAQ@cjj$UoFE=JLSvoDK(D}ei^Zcoa@V%7&u_Zjm2UI?T<FyV>n~Xm^v%p
z2gQ_L<1C6JbPD0!K@Lx;k%g$Dr}2fCazzAqo9@#NHG^~CV@%QIN7zd?-*Jf7K0DKZ
z%pId(XO~geoCu(^&@ITXc!uyn-uQG`D~*QSq3CDaK_0;_+(FnUUO;|rkQ_DZRN83P
zz~BR|{;Pp=#glk{ZScNP^G%OnKmVGYAX-s<^edJ^e4xOLg6)cMrL-MDf8cUqW-%J}
z0hf!k3PFBg^TR6NciR588N-^3-}(DL*amx5lQHj-n)DD1$Fp+V55{lS^xetzJ4MSm
zzoxC0YG)2?qfG(caSp(!_;Jphp^R=60U3>q<L##J4ktBoa#_T=Z9%kXX~R5T)F04v
zat`>P=-kh8=IqLch8Wh9<qOW75xO!hx9R)C>%X?vAZ@>@YKYDcV(BY$&FL%%r<k4r
z{dmt+#59-L2TLwP9tRy{EtpTgVSZD~#kpB~+WHcdf*SX??1v0ugM}PO%6Ui7W)|~E
z78g<ot>9h6k1WyFYE+=)0>GdPE^FLlF>7WGulRAo;lt8>2Z<=&AdYCj2WBg9h10gQ
zQq)Pls0!&xxs;svHmka|TC2U$EEi{I&916Rqw9)L$)(=E^~}g&UWoPGhHx{jEQY`m
zB2}DO#c-@<%N1}8qG;qO3%{C*Z?8FYXnJ%R60yS{$ouBXU?4LXLVY#Cs+^Ae_G-di
zMYNh-C!Smh!3ro{ynFELc<Oz7*>tGS5P(=1Pd60A)06XqSeaO^`4p3a-K0kdPAB8Y
zaO^_Bn!cL&oCcO}&>QVDGxbv+c(tOekKU6}?fdJq>}m1XfWel?I$?dft_d$?QDcD!
zy8Jc##glhy@!H_UR{zC4#hZc``OJ$F4;2fP@(yb1`j3~76)QGGFJ*Vu`Y&&^50Vy*
zDyB`GG0tH(7B}(W9OmCM=^S=X@ofA2Q1KJ??_<TS`U`cBvo`)To-!=|Eh18|@41Ee
z^c8%a@*A=IUD$8XIWqjxXLHQV-rN3%nB`KBT@~>Af!zSsDJ!L|1b%6mUxk2y#mfu4
zF^xOYIt$3#t{z(2A5;ty9;pH-0&Zm^oV!@q`3?p&x%n!&9Luu(2hjIp{^je=j6N19
zuovbaWtqG*awN<sRXd>+MZJXG9t7uE<}@Fx8iZ>jEvyGvrqfOfoMa`7jUIAPPW?`m
zNpfhh`2yN6_cI1+b7p^DC`Vv(L<2}{EpcW{&C?=Bo<H0|5Vfvz!zz}#)q*=ptmQ-c
zOo|hU9|gh}@@{tU?rHv-3&63^UvM$gMfv}cy!NO%#r-#PiL&pO_t(|je3Nk4X}OHf
zt*=)q(Ks{dZES)REFhE<!;pf+F)&iXZP7cS#t|^Z4`VyM!8<OHUvA$`BAZB6kxj0~
z>%*Pt?}7n1%MY(?0U9<J(km3S*%9U0^sUuh0C{Yug*7{oJYfgkx;_4lk3qxg4}9&7
zdDt>e@=QTHedI|TX+kN#l0RZ8^Wp8fP@>uYT$Z~+3Nn!o_*Q_2UAc1oFfYJG!sI#E
zTGT|9l_#S}4O2efmIqf#ut@7zn!vv&eTvJcZ4$;Ju+rXN@i3J%tmZ@26uRaZjplyz
z>||^GD}kq|9-S3VS8BONO?n(5tDgBgmqs$X=EJ~T)k!l0!M#+fYH|ikF*Ft3xK+XS
z`Rxh#g@xC8*&iVm>W4*Bi;HfL8&+F@rCtMk+Zh<|o{XmR;)-ko;|xlB4^cGSf50Jd
zuLbJR`+T7O4kWU(d{nEHE_>`v|NRZjo}&|XpbZR^GXNyi2|+0RNQ}Lb490Io1-_&p
z3R;uJg<vpynd3&Y8tk%-_p>16kmW&YDg@#ATP+A*6bKuw5-$*r>twu_BPs;H&003U
z5NF~!!$^{bGgO5D*jTFP!uA=#{FJ7RMKuq-W1-O84Wg6wYa^DnFmnXn(w~Awh*+gu
zR85M{0SXz)$Asb#<AP7Rx9@D_j=xy$prbjAkZ(?X6PQ$NXz=Xo>eSY#;9!pDwL*^X
zdrQV4Z}2Mnm#kRMAkR=^{m%GAK%v2QCJZ~n0Hl*{#z2EPdGCjIHfU{|ejfm;F@<|F
z4?J0A-k*Hd`Mmbp%?|`{QCR-RBDyy}K%Thu(WCV0PkOR+eha@+M|k&H+r1LCw<M=w
zFqC_kI7!Zg!A+A6%dOsfLnQIZSDYm+_b#?0Vb%Mr84N-Y-*KtcD_#2YhS5sEFKD5m
zz$!F8Kl6^DB8}xZ%?DGe{bTc6de&y|qSQtl1MY1?rLya7YlQFm=9`>Y{nc_*>{A4S
zM&exrMuvc>0>&1$-hIMTSNG(~WURB$u&`jlzB}x*9{|KxZ&*NhU#SsV%qNt@Nls(3
z{+gzH72x;wsTIFdm4y_H#5y1GPd$L)q&P5CIK{|={ZKudZ03(R+k`WXNP<6y%^@qi
zXQipy4-C4Y*36<w4)Dka_OYo8hEr!p&jd{_Z-h01kAGS*n#xlofjOQpQDz9tB3o8Q
z@hKlkEmKKB?{D%#>`8&F9Un?^PVWw_PX-1b5yRz&YIu)AWj;)wrkM_J4>j>7OxgFR
z(@XoaV&o-e9xqk0B+8XBTUL4>%C)dJ-CEw`eN98=F3LP_HF$P5Z_|_s7O>xeft3f|
zOO)eguNKw5l;VDC(G*EVL@q72NalX7#V7aXT|PFOV;Hc%!1Jg__1!egem}1sr@A6C
zQVZJWXW6f`bsjs)nWW=fvb%mHcei)-XT%tzZ?Qlj)@vdDYK4Ynw2~uCrXpA0N=z@X
z4#h99J7S&s<YaX5&OoV39G;66x|8-v^dlHC?VD}3`V>x;){9+ofC(YM)XgW~`b&bW
z?QXWd3e*z=a~l3=PK2vl7s4#L5EPU8riG8`O+2gRR^Bx%p=kyzmOpjz=S-p7F8-X6
zKeO06=Z{79U(Da1`tB^dgw)MK@pReIv@Ij<2T%{KeySWf5=(q4=9BriCXpT?Z{sH?
zg<hO;OrBo9<i+{KHa=x)!1H}?jd{)5+o7Z8L-dExQBw+R14j*3TU0dMC2p;@%X0AD
ze68C5Q$NkUf3&>qaUy{NKaDwvmB{GtnZ2;=`y-~U-^%=DDtFP~4N&nl_&Wuj)DMx=
zx6<RK#gS~rs`9h#msj*!?3Z`<_)0b}mijLqDsELF6!(?<)qhr-f1MwCIg7uw{>vLP
z0RW}EK!Ha>YQw))8~*6^7b^zfvEnAa4QJ)f%jDi~ky4UA{ndE7@)+stRW-Q_vhIcH
z>Zhqa(Mo}Df<Rr9AZp0Wd|7&Xz(>3<CE6s-_D04>-D~_XlK1I_ew}14tkCb<nZQ9W
zGI}Mx+iOBCw<(}(ez*UG*l@R&O^@#moe&xBjx6HW(Gy4)Iv&wckMfrIu5`k2Y`-;@
zO2c$`?myuO4E9+6_CvG%+1RoDmsfLqGNkMNn;~ciCcMllS3@LWP#SmILK02=W~V4g
zW{I5GPOsPKe=B1<ZQ|gCf5S{Q$=G*6iaW?N-0mIojs}d7w*0b1Hbqmk1#Q_BgKl^j
z_^Fs)C3TQvxyVUYsbzdhX@%3m9!h_q@{Sl6S(Q^S*t*hpO0|uZ58xtA-=XrLfl-dp
zumQ-|a^*-Gm-vLdWhg^6K{mw13l$W+I0{D}qwt>O6AYOjQwRim%pRrdG&f9N$Tmzg
zjtdTa=<y8O|6D@BfGcG}?5J3dGZVh?;4&L-2f$e-33l>}qEJlKf-ctD;c92v;;p>>
zSw8*Ds<1+Y-YyT8h5%vK$2!e@y}}&(k^;0|@TvehbQnwDSiF{b%vJDL074MsRV_i0
zmH<0k>oD38W965HC#e~=97TdBXK;1xaXj_1cNt<Z)Q6jwV<FlTVz(`*EPo9hAF-3Y
z>U&AVX;1rFNp7H08nL^Ozp#!QkNoe}F;y-he(thu9a~mIG^rA=HESH{K3`N=3Oj*a
z9J{4#ioS-#j-Y(7@BIhW-`CcsazanNcp`L-NIEVzMY}rkMnLcG0TUj0o0>sLqFKH3
zmDWismR>5ILo{n{;3pT)<#;F1P^yhcAiZ7h+6H72gBPtd^sifKsMXv;8|Gf>@HU#-
zv}I)^mE(0tM5lNeDkCrWoqsS>or@AX%qS|hRp&@q^<Go?b8LA%Gi<_7o?#9q%FD=e
zzFP5uGPq~&SDa;C-|4b-<;XWKn?=dVII0ut#}L)mRmc<A5xON=FGLbjnY@B*ib|*p
z1%2}`w5;@|knzA-*)J&PhYFVKpO`rT9*5>$KiOsre4mdslIC-F)i3LVPM4j}z@*Ck
zqYaHxo7uqa9RD4h4>#uN<`zB)F~QS~3RVFl3z}Q!G0_ecs5LiZPNEI?$H(f=4z{OH
z3-MGMta){bzmNrHaqz3q%(cIW8O!)f8pa_F$7G^1Bj;zuC!19&KJ6zPPke$~vSoE7
zwZ8p+h%U*nwf6FEDXdG{OxcmQ0CE3**qb+@eKuHXM80lWohoTxXntZ=S?<Wde;oQF
zyWY3dRd$vm7VNUZrpPJ!RxI_>@Kl@5EO(KnB?tM^ROUO2Q>taM(&TPT@r)!p%Q`<!
ze+x;b6nImvvbV_e6yLD^r`PK*2>nm*A7`no-vvH~nrAm!Id2wmGX^{<P>Eq`>Nx{a
zr}>_p0nW6=<-Dy)t;}*GhIY_*M>x~>V^G!Zm1K#Wb7f(r;!yUs!yJO1hmwxGbEa=Z
zIFkJoO^`Vuk?NDc`7A~SLot7X>xF)c!>G!U-6hH5wJ=mr>N)$P=CDsW3atwR#0q1I
zhEH)t(RW-%$Atl#ST@r7H0;w}?CVL)zh&om`gElE5+`{ufMRex^Wv#DbYDPZNiJ6q
zjO`XrZL{VP`<$q<C*$Rji)FZbL6OZ&7}JB!BOJ^R5Z!WJGi%>mXaV-><Ekb^Aizah
z3$V3NWLL{UQ@`+=T-xIE;<~Nss`(&XZPNGarRnNW3t$-ghake%ud_els$(&zNSvu|
zoaTFJ8{!+U_Q&~U+F>02Af#iQ0%6yr-m~d_+f)D<0ZE&04^r<4WCSzfZc3FpCPNK;
zZoUuPvb*S;L(a9><!49T8;eB`qSA76=LVGWq<x`WrnVjK^sGs}V<uawX0qnZzU-+?
zWyySesPV5<I`2?&B&6DEa(~dATS^!|4wGk(5e}ZXlC3W#rW@Bofk;0Qh;%!+;mjDv
zh^*l5kRX+V6De7V?_e9xW}n5|I-aSN6cj?RpEDwI2A=hKdKEg>cOIaYAz^dlLcrt9
zd#rd9CC@pZSd;o<b2c0oOBvxjYw+g0-{spI<0v)GUKvN3219ML7SM(spa)nj5E}L1
zvLk6bec~wnaiUu*2}g2!Y<RJIPW9f)BZ+m}B8i1I80kRf0^ekwcj7=`!z-FvPW6A=
z2ipJ61}G>fn_DH0m5do-cEzF3Tt*U>x6EmI0v6%+xS6I|+LmrSSsGwnXg6{ujSW2t
z_H?$5j0>jTYeheet9mILf0cZlmjle83AjvwnYtigpMv^V1YJc&Mb53MTWWh_O=zE}
z+aMk(^0as}n<sPaUqX^<2}V-fUQO{x8+p_jjpWBF3DuNMqd*?7+ZJqjmtn_WXA!or
zWK2u5*bG!6^PnPDm?@s8NrB9$X0KZ9Fq-OFY~JBuVbtweY>{<QeZEg$6S%nmU$HIG
zhnWcLiS_AO41&dd<H(tD8ME+D!g4Ht#;fs3Cy&G>Gdy)E5l&U5Igyr2`+NIZ?@pAl
zB!1%J+iiGiG&*Gtm12nq$PRpaN>oorBG-aSBH+kL0>RoiD?fzCJS1qQ7I;MOpjuTT
zN&Qd(g(N8YXII-{C0aPw+;Zc?jCbkM{w7Xn6~Ds@-rGEM>hpwWHU~cbZc-llqBHqC
z8fNXCp|Y0Gg?hQUTWic*n)}hC)f$0Fs5M$<fYvBok@FVNofXNJf2ht$td11KO__G_
zfBmi0N{k0aN@5t-Lkzx(toHl0Q6MbYlQ#f43zblBdM_=UHs?}ai{$oL#sO9V`4E=H
zCyc2W&NguLdvN(K9w3FI(Vn%$q7JJ6h$CCoy*6f#JloFW``KZb-Ye%@OFf9!xrlDO
zH*uj@xVTR*W%0ysZ|83q?{xbhe?R(A>5$9j1(MIkJLNJp`l(6xJl^}j{%!(U8F=H{
zmJ4}bGmy^psZPBY+45dARp6!cepU#Nho)^0kKf;D;W5kv6WYuW$Ii;0Pc+48uyolT
zno}Ngin_hElM~GA_e+@9qaohPW=Souxs|B0<oCAijh}4;&%g1~EMK5EnfB+^5Qofh
zKE0zJ(2{p#a4<81B5j0ZpIhjWXrZUz7i>L;!AXDAfV%`I-9-B~I7t^P64BSY*bK7G
z_b#qZ?dAOr2xLUrOBxa!_}Tl>2hEw(v_jE5iV<SYq89i|G~3NKHYF?6=!X-KBV$;X
zXzGV8tJ>cho?>@E;?a7rd-xOGf#$p<t7E~<Fm3}}?jX(W2$qYv33g8M3s%lT)rJx>
z*&qZe-RmXTw;vSxz00g^6yXz}GOFa}bI$iG?+qyvOnud%iXZIxf{(lxfki&@E*umf
zFM_+rY93gJt0`;y^O5&tobYPP!^rF~7e1$_Oz0FuGj%FR!j7>870w#)y&q$+`2I5J
z(G@wMiFDcKLqLwtY)d_}kmK^jAjiX0`GwiqY4&=Yp;5nQX0{87*<`jONBOfof*~^7
znY8c8(4Wu$gOi<00dBYkzD;yo%HrEpn($Y31*r?XgJ}X;FD9MhT-p5`Q}KP&SI!VF
zsH)Ff3z%pXb<L^I`m?pH+{TpUdri0oyH4Cv#ZLz_@h@!oY^tc|b};W!f%j^FVt$${
z_9!#TdtW@PtAF%?Bjg{<GM(5!+0JxgTO!MJvN{~eu~4C`MI;q`B#m1`skAisf#Tu6
z>9nE3HzoSv+fiS^X1LO!zCm_WQuhvG#(_%p`)y})JTpCGbL>a3mjGN~-g+hk^^3u;
zBGYPru^pYIrY{6Pv3|H3B6H>~@E3NmYpPkmz^<A5(YB8EyE^Tk>x+x#9l_|#KLK{Q
zyZQ<*lt>11QfVh_+!cxD4`)sGvGZcjQU^b4NZlnD=w*Bnu<ZP$*e_;vBw=2r5PUSo
z#V2f509UD)vI)Ty!MSvv@Xl%y=83QLE3^n5)vzb0o$2t<4zru4?^|+?y~oi%!{%W^
zNH`_wi9vI_R8KPN<mGU@ik7)ako|JqLw=bZ=ptC323-O}GyB^?*2{hHjo$OBr+w9M
zlpQnHN<%fn@CMUTsONr0=_Qorz4-u;;bPoJrAgka{_L5)XsXBtFpZsM+hM!GKQy&#
zi_av3r8t@(MtftP`7?8~>n8s;j{I08^`)%ERM+q~MJMW(^#$?NT49;JNy)-o>V)vq
zx`y;A-(2{m#C@0WK1IUC7MbI1Z%u-i^{1a5PrajSOt;}|u&4BDQZLAs#iEB*UNGK<
z({wdc`9d}U-2kMxueeKwGhJ`0gH^a#F-#-YFdbi$yDaOx-qKFHG+JW$)2&26+Bmp_
z*m^fdJta92#6<*njAcq^StxJ!MzKtJ+ch{sdRT-Lz*0I+XCRm$^^XOL5)4i5vdh^K
zQicbeeFfK@<Ts4I#(nTkipQt@=m)Yt!aEtN*Vq|qBeTMpkQa9&cyQO}qsbF$0FKvc
zpOZLswtqL9;w|KyI>#p;Vj%*&Jqe63=gfhw{I(|+Nboc-M`2&<k?NoW{b8NGU)l@(
z9;r3{NdNt<2BwkPwqmJ-#^}s=Sm5TSfHBktugwqtLD$~$J{TuN#VhOM5qjJ@SUb4-
z9#$86+@dw$+TA{>pa+Yxi{{E$!17U#(4<up3(QVGi1pC3y2qo)WrwNPJVYD*Z#uI{
zCha0o87857=0BK3AFbvB`Uv*mq7)ZZ=bKT~5gO)eo?buR<Mz;ps~Uwk<P!ZZR3VR_
zW}7Lb8FLWTqN*0CTT;W!6hN8feqsLpeh@=Anb~&X^(8g#m0jIrHhQl!qBo!6i{{0*
zEK4^I*ui{{4N|XgUREqi(RX=4V9rWSIkC8;liddE24MnG+#Uo}5{pTTjOhu<u+M1}
z5l~<4C*>QF3=sYpLJ@sF5JQtOAN|{B`1$7D;8%fpjbGliEOe*-X-{2fb?Ays@MSU7
zjd_&lFvp+`baKyKSfRj-nr+@ui-8YpSD$OP|K8_k8GhCNxhVqVK0gra2^fNZRe2D?
zwUp_1;R8?e!aopYSy6!`qK$=-ysL4ED%63f<H3}8x^`16&1F}(mS;`@m4|ZGP&>Ds
zC|-*D3ON3nBcByJ2YqfXwwT*k6M$+*%w)4WlgRLfPJZwDTS{4L^eHXjxzbpF&L6};
zKhUCsf`w*3_F!XmMw<@ZRSQX18JffPIF4cov4nAf3&wNx4@R+X4HLss-f0r6!BS{I
z^yr_>*(qqTKuNK-n6DP<ERH>v-<3a9{7Z5dlh(4IiDw4pY*PF|TK5^nJ(;(8;7L^8
z>x+A$^B&(|DaTK8q0EK^mnQ;Pty<;N4cYhi@<6dbZdIq&`GnN|pyjJ94ChGkH$j_`
zd=LHF=NpK?ck6+KOuNrRy4>i~WfM&k(||MoWAh}1Al~dDoPI+vgprgpb^oMri8tCd
zT$y7=@C@pastH%>MpI9Hx$D)9uVXIvJK2}YIz%=TySAf!mVe%5+JP1!oT2K$Y<&;1
zSTBBX1)%#Se$a&x5LNk`{6NW5&b|5u6ol)GbH{VPw9qwOw&5TN|IdsAh@pSZZ7Z<V
z9)r~DrDEVgWRRhTZG`mc_NQ&A`Om@cZbx&69lvYRW4dQd^sP)?Cc4dZvP8h$2;mab
zqpWl;WNYzJdXHKCxQcG5*WP-d>P)`^JTSeV;DfezeNT2wo90==%+LeQ&S-HrX<o%t
z%PJA@sp08McJVIaQ}CQJK{)@v7=$^W?)_c&?|}Z($}`~MFV5mW;ty<GtqAQ>%P;JH
zg*Ga(BkB|Di?Ub+)W(!hQp6#wegY$?KPMAU`7y6!>A`T#(>KYZee!nklt+jD?B5qz
zR2Ur#kga_s$hP?(;tkyUu3eV)-y#?6E+_t4oI}C!{tx(+wGp_7r8+;{%cuPwPY`6F
z9Y);q)o?YocI$W00sM)BW2sN=$#vMe8G4Df1{=9!qMB{NuHr$l!N9zzrt{kQAWl0*
zw0-;2#D}K)EZyJEVDJ!&%ttVO|5$2&Ccz>wkEmOUTs5!%9g<0Hf#6TMigr;Uv$m-&
zol5mqvtA}=>R9h;A<0H6ggaBDGO-7vyR(n&Z%u75^C=w2XKA!%zAf+XOzB|s<M!EF
zQwQq113GjeugXAQjLgTeo1-WJq7|2=yCZqAB|ktb&N8+_nyYaqqBP+aCrECKnM5Cc
zGLDO@oH=<XC0pwc8FX~R*$~CBbp1)W{g<0ZAni^`_A6hEP3$9N&dA-!`H>4aqm2IZ
z7=#f}#R-9IThS>m<B1n=xb~=Kj5QUezJwdBEvfeg*f3pt;@Ikqq2As;FVH&$ZBBBP
z4W8lyFwog;{ODCc$Csa$9+rFGLd6;Voij<z_ysf1-bDM<1jsD>_<l+DcQJ!Lj{`h!
zCS=zI;C^|1|J$$le#L+NeU`qT`d@!<)c2!)@jIHn<hX=>7R81MIYg`@_0Kp0GQuPc
z{2Wb~1>qYlwkE;YP5e-##-04te>Qw$7C)q4Wu<Beax*ANgZ4NG*YNW*NHIwMMET4)
zYQ=eHpQElCy8SuotaCN@^tDtKB{tLA6K^Uw@PogJAcWwYtAQ<4>Y(Nx6RvZI7Py0Z
zYJ*1u#DXg#*J9t8yBF)d&>pIUwEjQ~?au{#l6w13K;s`=h@3A%U&bRAEiU1-wLQtz
z=Wx2`MZS4y3;5`6cZR0nJQNbac#-7p#52fMw2u;Tg>CV6mx=#ojQ?uh+_2Rj$M@*e
zHu%ZnkuL|I+Sg8U$0|+IY<d&cQ7A$k`zX4BCRD$u|FZVKW}%Sq^Zys?`^r9c>KC(}
zV%PWU<*e_vNB;NgyY9N6g@4k*|9E}Rr+d4;?ce^tw7&Z=j_udi>}@A`XvD5>0R!~c
zcluxdyY;mpaA>L=w3xR339#%Js2E(ojmu!!r)e!G7QGLo6-hi-+(hZVPV;d*roI(D
zJjRQzRJ^hEf5QR(w^VPQ1)j<UaqT6h^kG6pa1tYWw<jQ{dA0^NZLy|jk3R);sc@V}
zc$d-t8?FmVp}F<ntfJo5A~EB@KcpbqK6ezdnrP*pv7~)X;Wr?{jXpn*V^6^ZdR-eJ
z$&Kg)=8nH~qM0?kv*e3k{z%FrKtEsxS;UvIPpv(5h7Q7z`0T&ReDuEobJr!h@)vXB
z{MU?jbN#rOyQ}Z9*@dM?=~^F4pVHgfX3GWWbnji;ceDFip?&r&uS5In!o4h-t|ac!
z(&BGk14vi@Im<q4zc5&z{;hzR@Gzp}O6keHv{A+uzKv{MYzAcPn?~fOu;b}b+-8Ha
zxFpIZEt|{DQ#oe-c~<qB6ddQ+ZsobRMMK{%u~DFZfm3A8nUKe2@^EaK=ZWw3aHgLJ
z_jFGw@XqG1FZa`Z5_{U&JrF2PCiN<0_$ylgJH~xTTAG5*gN$B>^Ma&HXlb*5L-#fq
zX)K{-VKCBAs@v3F!^Ej;C>^S3LGaLp+6=bALm!)8QMfG#9@<ys``YrI!9&*rWwWDw
zY4tRs60<SR`oGU4n$17ooNunTx>U9G(;(+WTR~hYrnf!5=i|Nk_k)3fVN>r-*eg8e
z8<Yy^#|G=RcjCX*|IZBY+doXJ^eK{czrcn5zeMp%GALf|qqqUZ!NlcLhQ)Hf+&=Cz
zlaJ-D-gfnW92nrXOE{Fd{edj|!fR!6Av~;|0a{{bTtfWk$4-k*++^7qkFsE)@mTHS
zc5Ja;u_hQ8XZuIAcA0RTJ0c%bzlb9W&V>H%h@L#?g0MX%^y54d4<$V8HQ`XVs&{*F
zC;ZW^iWp7~e~W{^CHjkY0TO&T_eg#dDhI~*Gfkr``JCcgE<d9ldx|}z9uwHVFw2%b
zEJSWTK@c&MaJPHyV4azEf2X}tBzvWZ7k*gY?H7v@to?CIeJ3fLOx<Yep!OR~HAO=*
z2rZR!*mw5nV1wyH$-q+iwaB24E#GOW^svvC0*=x5OIV<cz8xX|U1EJn7XJCxr%N0s
za4Hadu*d61#M~GMla|#Fb<b{WUfy_N%pH#bN}yWD8xlzkgYEW)jiS9?b-Gx44c9{&
zY$L2y0=$g<Z7!W1utDuEx4&%8<$230*adkj=P4{BU+$A?-r6__WX=6!yX9nHA=$SV
zVD3$*sSkkm7V%-T2Q}Jq)Tmdl8D9egLirL%7P4S=nR9;s*2L7(eVB3{)z}bujep%M
z3&nv+51unmm|}w(Ob@6(<iOGmFjvRnB*XQUCm&;Np;>e^SJu4%)P`@aiV)}fD0LHC
zH#yA@@B<5L1REzDjL;Fh{>$d}<7NNNX4jE^C8tI3vuxX~D%9Vi_Co`H+hgy}nrgbC
zH3F0hBMck4E&mj1b*Ff50O~~Y*xjy0*wgOW3aGi{YT=F`yJ{))`suv_me8fW)#q=p
zY~OJ;iBDz;{}9jjP^SKQw!Q*5KQ@0<3lC*l@Foe|d4S*C)cJBOFSRb>f5>%myZ#LH
zQ#wIUgktI^cM3lCuSpJmky~Aa2jL84(Ky+D0NH|g%u%^H>Dq$Cx{Vx?mg}2Y_qL8_
z&Q&KC7oL0GqFL@Wh3;h1)|tAKEHS?WJX6(0m=3R4c>3Y|oH9C#Tsi>eWzL<NHiW7F
z;Sn?NzAh??wGU7Wlf=Ph{O8j;Y`Ek#?3O|w9rY)=)s@YyQ~LK`HLJ!gUZcH{zV75$
zoROE9>yYah@A74BWRExIPA=8K?~3y(r!F_W{sdM`jy88(yC)yY%}@7i>o}LvQp>*N
z_bl@g<7xjWLqCCTmlNh6)A-yWQ67E$&B~jzQeXPsrXSB7;htR?b0?O&Q=_I7CIDRP
z3GJ;P6T7qj25$SV<ZN5F_T4k>>yDk8iVgLZanOoO-IzffuWAwSF3B_Vn1Cq1ex(A0
zKQOOCZvgSN@jegJhW(@^bh4`P&~ph2wk|@#P34EUMl(AP&yC!Mku4wanJ?r&<9+Hq
z?S1gZXQ~QN&7M!JZb)VJe6`D@cd?316Z*v5A*C@l52qOWjBX|JK`C~7(5jE%{<?bR
z>$~+vTQcl7;5mKA$9ucJv{x~)a>~KBt-8%&bB7Z3gfi5P*Cnx3u2dwo{a4$Ph$n3O
zj-R!i$^Q_xAC8yJZH>3LoOtzzureheksY*m;m43rP1nZ#9*^IyeXmo#+4aV=XlX3p
z9U?p|gP8iS^5;k9O?9_Y-Sv*S4RklT$ZTeh+jlbUAL8QMkhXfuc#wd26sxDrc<0F#
z%@tnhvOTXv)Y%a7TanR-^J`x=ciknSWq0X*p}rkoXZ-Ik@PQyOEabwn!IINqu~=Iz
z+6Tcs#s=$8k*0apbK*3Uq>&xIw=m|fW>yVlsi*Wofn;4cA?Y$G$dE`w6i9396!YOi
z?E#pCq$M9^KtMzQhYKK%OWeHTXzK6Uo}tCmpVV}!SzeI#+2Utb*nP%hJTXrSdrtju
z_coCp%7k^|ZPDgdo>{zJ5T-@l6?hp^VwF<9R^~V<CGjwq{82#r+-~_Pw`~UBX?8ZP
z<uv@&T(wNGqSMujb`inv-2+$O&RjAyUPoM!d;8Lof}aAdb%=}jSRL828r_MML>tW!
zqb-R(ba^L<u3Si!Hruee!uGJ636a$P-ZRjKU3Z&D`ak3+eD+Qz^1PDO`1Iu6F5RXN
zi*C!=_4T*LadrN6XKgaFIJh~#71uB7!u73-Tb|LJHW4Dn!*^uad((D@vTZHql{b#*
z!Y?wB705De55-f<1lZnim}j8vbZtlC`&?%RLBu)+ON1o>7qWfX`Rk3NtmR35SG?%l
zBzrxvfIC7a6Z-I_SxsFZm`;+wtDJb<pkmcmLXrNP5Bolr+ol_f_hfpClqld^ZyTL?
z*g~!}?oJ*Mecl4h!L{DlevwpOv5l#S=PqGyVF%o`dk^YYpFe14r@5SY@$M9M`Ih98
z$%Ffg@)V<#6uv-i?Ssb7LUHY#dV>*Lycj!+7-Z<|6v8&G<#^-*pl{>tH3Rbjz>i`7
z=)di>Eug)a-J>AN#b=?SU&X{p&e`*|#4`KA`zu<JDv$C0gM7cI;QjM@|L4ea+SzEo
z(HzC%|AM^^J;zgTN6uvLb6!qPzFl%e4R(#lC2Prj_a|$%0uBasT@^>wZkyXgDGoJp
z%62%A)Mn!%^ATM&ubMJ7@xxSShE`39cj{I#dN$yf<n_%lf523Oq~y_%Q#GUVIL&wS
zh+V7Bx1;r0=7-y$G`9qb5H<Yj95t-a@;xj-d}h`*pIJX_@!3c9`d!STF7-Yc8P?k+
ztKLo2vw3s;CW`_Xn~A)SJWn`Yhj%Lfn9o?Yz}{EN#1r?Y;4cyfx;5cMoOv*}LS;UO
zJ`Wt^&QgM&FwKg%+dh`siW0t8t{rbvd2S@}J{wtfo48?<d6t^d)WJ{wsr&XAg0*BZ
zMCy1(K3)5sdDqtP!z^Al0~u@9lFL@WDT9QJx(8oCqcHs`$B+U7LGd9H5r6RS!YtTL
z^VD_Spe#w!nTLmXV1Gi_E>vy1DSI+iF~rFCLCsKjs7mMfBALCjh~+BEM)ftrsjP7y
zpKY<g&9f??oEGH_2ys%*ds))?`o}-xV{eyM<g4xmaH~q(5tVLQ&rx@TF0Sn7Rz-1I
z58x*fG9gS-gGH&=dvTLa4skrug*^9-B);FrNuCY&in-6rl9l?moB5Qu9tb;yf@)ig
zqz8W^mNXr%iy!g(119bldwSNF{=K#}&V#QzH+)1FerpG)8Ta|wyokD0gSb>U>Yh8m
z%E2$FZg<wJlOH=tjjFa<6#aQ5wKSS~o2wjaz?S^TS*9NSH0stB)}+3%R<`UHx2iN@
zdfIW6(GUsS3C@mItgAnQJ$%tEH(Jjxrl1+iqT^!R#k_K}sHN2EXP=qVpaHR&@+?~0
zthpx^S7vK#;@703<m%oSH}(FuRrmIKvP-caVDR~jTL!pqSO&N6cqBQ~cOQ)Ap=55j
z7Wo)gwSs<6?@6e@m)Bu+51%izl;hr^)q`&~f6iZ<HTMn21~DgpMG3FBEmo-urF!l{
z*A4q+L1PP5s#BkOvY!IFG;ea6&Mn7F_5B%IjuEn&hK%!trq0Yg_$=RtmAfMbD1l)(
zD|b?<_*5__EnhfLb2D}#6r9y<f#0oNAG{tNnFVp0FV&bC0arJUWahoysv7XAMY*U0
z2u-Ug?wivD-z1E};>M$VGnXeU;<e1+!D9=Y($|c)H-*SvNlYot<5n_$+0zi%73MKE
z;`}7v%{KnRtr{;9;Npr@RX<SRB5ycNb<!V)`DqW8Y@UXauvnT?zhm1F?W=T{;fkE0
z2+%Z<SrSfF<LORZ!b$a|g!dfvv|ehRJk2~YgF^2!yCGN!q;2~R4|(et{n%M??Id$v
z=L@2<0ko+hkQOL<I)y2HC+5z7+Ag?R*NYI_o>a1Y&^=`k?Kex8P)a@Jrw*n$Py+`l
z-d4(jZ~lC2ULJ1?-+cT+&&?f?S@=D1IfVYnzo8R(3QjjgEKt^cCDYdXVknCNHOfYq
zIzGoqCh{!GThu3W8fTi)Wg~w}7)82wQ+&a?9>cqn@}t@vI(m5O9i9AWCaWfa6Z3Vt
zp6WU=9l<%l^68ul+GCwR&WL*&8K=(9pAQ+rJ3-RxeuD+ugF(g<_8MPmlaX3&No&Qc
z@v$1%tOGn3kcrAFrB3oSUM9ZIO>EsrJblq3C;1V2S$M^ny%FJ}LjvDK>Jj=f|DFl{
zmqbz<kfio((nUSsIAGL^r>o)}f`zrH=W-(47pvo+hO2CFnm18D$&G9gcVeNm`p@Z#
z;VC|r;gKYn_-318=QGobAZ34q%~!L`KcDSlR>tf_!x8t&(Q15^<_e?^AoY@f=HApq
zvkJUK1Lqjk)Y9&d06&$nqp)RkvBL$+js2HHr-d3oj3b+U<Ijs_>Ax8IT>GV2_^$|@
zZSf;&ipRx|s4s@Web*zlU|Wxf^Y|<L|64N&<wFai+Zg)>tD+0Lc!U{mHkUrd%FrW>
zsF08r^u5B!z&kWXC-FD~=H@21FXxR{)vv}?5qF;}p3OICq%UOG&=lb!keE9FpAji8
z%=zfM*a0`0gVWGjYPB<m`6wPLwL*dJfs#{R%e0W#8W#6jxz+i#;K|Lx=~fN1AO9~g
z%jaw(L9l||xhBt<Df)&^wW3>3^QT0mJ|I^}2=`M#pTEQP#%%H#$cfyG+7w4Y8OQnh
z1)ubQpQrQoaT^Qq;_PY)Zqn5GsF$&6i!`yeO3OH66{{QGl4xnn5-sP0QK)gkq^@cl
z;{pzYU_;GcL5M=-i#aC|pz<1C**r1g5B3Bu;%yi81rSH_SK&iwR(;_r1g9~BEtLWz
zEA1o^?m6Ziml^dgPL%KIBv(;^gM8nd%Ae1Hz`kV94Iyyfe>5SB>U^oNUzD~-){(h^
zkF>onbi#NAd&*1>%9xA!YBSXY@+Qva;%vHt0Cr&f)hM+RXf{!hfnKc9foAk$zJD_3
zLou`^Gc0=u+WzvwK=DF4^`Lofy3Nnk!o&xX7r?pU4^+X1^=<?CGxjAgV312R)`eo2
zyD{_#E(tE9E%I}d@ic%Zj>iYz%6aPNG+PDE9WscgQm6S_5f|<To(7N|pQpGxLkfzn
zwH@y?uiy>qM2_uI+)I$!$Xb~kkXGjyo7brFk{RMpxt;Jl>>?qkB_UIW<oA{`fsi1W
z^BAqCKxXBUVv;OnLX@zH^2CPjSyb#(=(lDy*@Y56VJLn~TVe6A&47--H9HcL<}IWI
z@+UE0v&e<LK)xMhKr-H=aGS&@o0R4~W#Ex2Ku)CHIE*_N?gO%V=40j-PYoHPLjgMO
zmmI|+#@#22A7PwUAYWu>LpC>Fm`hX~TGv;TpW=bY5IyKW?|6!ac#=W4W5#qY_nwGd
z@2~L6S>g}AkF>9;+}kPx%`w^m9Gds^=V(v#Qp_Y6ua<1{;=KAX2RHEnzBHy9um3Z<
z@qnJVH+eFaCDwJr%r$$6!}v3yIZe%*O^24_n6p|m;vtPx%ZaqjXwqN)^RC6_@#U17
zw(E2$mCWs$ZrhMCw$M4e$>5`aAc1c2-R!ypGQF2Cl#?nfx-T^EaF!NiO&%*cJDk2d
z4Z50Pc7BQtJpBa8eh;eK5y}wF${*QIaAEu9nf}DU3aJx!?e*zCi}V95MNd?iO9k&+
zO;!Fc^X!c5?p6=YbhoY|>~0Jz6Lxn!wT0s?|E2}vk%YmP6Fhi<3W-~Q{2k^D^>Pzs
z%&0CMT;JKjv`hzAW_7Ty=JO|0?AHo`8gTxTs2%ioO;AU=>t|?&-b{6N9>B}8uEx&l
zqR$8cyIAjc@&YA8`d|6c@TxhM#5oAj0-KS`#^Eh0*=$zImRf{Fi@2wbkGN-zVSi)Z
zwHnX8tu$k|xGySTlYAf=O8bH6q)-UwapAz^4q}x5gbVwT!MpRN|7KLOQ)|&d;2mvd
zF$1q=94#+Xa~?jeU}NSo(N1c*PzVp1lRU7$RQq{Ld5)$UM@HP+^%H@h^bE1|bJlgB
zZKg^c-sPx)A_XJ_w7W;}2k92qt0Zspc?<i<S+KSs^vdaV6R(8$Bwv)5&`I_!)+DFv
zJ>7|^$#^M2s3zZHBAG3<c-?eWzzxy|f!GvVu(n6M`zhmejh!lB-a9jYO$Cm`6y?Y{
zf8=eOa`jZ0<Jr*(AHnW(FkeK{(*TL4oC^=)_1VGe-vzI)_FtbFydDv}ei%T6_XLj!
zzU|m-TWVf)1j{q&0Os@tzev^*ult6u#8`Jc63X?ozZ5!FeWseWSs=f&?3&)6gm}!<
ze~4$ikQ=G^hrr;>GzU>I)gD{$(GKzM_e!w4-8u8+Bnh^|6rW`McFk8E%#b)w&a80t
zLELo%OnuVtiuCVFHdd6|{ufiqJE@=>BU{#R>5!=%!pgGxE9K(CEKc|O0DxJg_(U9N
zX4BtkgPaS}^27ava3$;akGu1VSYgn%e&>1g(qT#`<RXB<^$px!&gUj!&MNcU1Spo6
zH<G6u+@^Y~|LWt?H(2<XT1l;zBV9U>dwof7(`Pz$f=}+C67!#{@a2Zj*O%m*-fFbs
zUNt)LS^82VrsD?HvVLWgphjfLbSsRqoV6NXGXWUDpHM<7W$8~>AI0lwiyz@_G_^I{
zOCb&v<t%;VzYwo@kfJ_+mc71UEvqtJtJ2h1l+*C5rp5zkww62UcPP=6z6jJ=^YCL@
z*F~)By;|3)3%QbUr?4G)XUz-vx%^BePVxu!?_M$*8?b(D2=9isBksLR`GU8(dH+42
zVflekaQ21x@Qpq-?UKq4#9sS9{C3?D<<1;j8zO9(`O!_4Ej;R7p;K)i3cXo&VVfwC
zW2#_%FbbPWqMG-@Pw?`d^L@5!K0*M7gNe+S#^xjoVa1(jfKo#}ue+3!rg?>Qj8FL_
z#^ifYe>Xa4>5tL}=AXx%9_HR@+EjYbLG)clHR*kU|K7iJ#A%+3au;!@+nGZ-Z<BRl
z9!yX(KcE9RIdispw^Js>Pe?#!dV>-AH?Vz9UONlnYhJc*I1UuP`H++3qW^~>9cJzw
z!07w0iYKOw&uQ4b{p4VMShje@`Qs-XjsN=Y*n-dCIa9_3wqgB;ffd%Ul4uA@nl$+q
zRea(bTGcCw>ypfhr*GFi&w%q=8Jl+!H7YzzHPWNGt4U_T_jW7eH=RSMKi<mE>|V9m
z-mqt2<JR{wvq+pMc5*U{q2A*I&mVvFtEjBZVN6cLK3*=JhI$ZeWq8FEW1Q(?&%@Hu
zzcZYkO>y^>ku~Y!rD3ezz720%0Mx&xL<6Y5t?hgG<Dh=L;)?Ok^xsoImL5(01s?&7
z^T#D7F|0M((GPGT3OCMo#}^srH*!kxVBIIqQ<ZtxJpbVez;WsEAlOc^G)Laj12(ny
z0@z8~rR78`7m*&&;6xH_xlPYneLd<_b1~)u60S6?6??Sfn9<0r$Ii0+W`BNGBT}y?
z8ap@AbaC<Z{#<9soxz~Wfdky5L~9`aG<aYAVCgaG7+~$ivf%7nWbWaAx7$XQDr~on
zoMd<OJAdoQnXv`zBfD|B>>}&}e9^=BV~+c^3d{HDAIzI^@By7Yy5mP$`Q%n!Y_Io>
z<!(~$n8fD?QVE?rX6Fr<3Y5Js77~<OInK?KZ`Gax$ahOk4qj5VRBp%q2~<PCoRfT?
zA4+G8-;cwXmVNKQ#4Pi1hvk{W9$}!ctMs|~Zf%}s`o^J>P8-?}mj5v5Hy@2W*R35B
z!=TQ6(>*IMTJgCveILdcb@z>IUbG`wE%u|MIv7Y~L3?-b8%L9Q>=xL9J$2+Hj|VhO
zjo0VY|1EmN$f9^%du-siN+;2#YHnru+(IU*&G48eQ52!)+Vprfga{<s6x*^6_1bB=
znWZrk;p29WNuJ_$_Wr#WLDx9{Uy5?wmMi9$`fXk;bq<Fq0HJo<$477u)MhR<Xx90r
zxI43mg=DMH9?RlRTNbG%ePeMG4d_^6sd*3kN+%IZtz<q#V`X%4cMv%U3<rp)njT<G
z-E65IPVy!Als50%%x;yM4qk(l!GiIRNv$|9U~*4F`d$oOA*4Td!We7D9E6cBsv`t)
z4*$P7o?2Lw?)!R(|M9w^wF(&`QQxm)n(}aWXgN&a#h{(U2|XJ6)YJ{m<8VXGg51Q1
zPGVVQRSQ2!vR@dhc&A}?eA>dL%x-wan+^YDE5YYu!_vJUQg=8UUXRz^o-gdKI1^Fz
zcSxXV^7Y`+gZ$Dhw+GWLL+hCmv||Hn3mQ0SQCUipIk6sUnf&7oTm=&H(Y@O&A8nqd
z`kA*0cH;$6wrZGfs46%~g1s_K-bsGKI7|yk5U_9MXrK8FFLXwx&=&w?pYY>E#SW?~
zesYo{Y<th4(P&w>nM<h*ojP+WcTB9^e{5pwZVhiHCiU!Sctxg>O1a0HQ?AI(nTyaA
z3;y#4RcMQ+mYCBfS()&ldrf{=*z8MtZY(eL;)2f$6YFU3`<`Gv(F$V|-;pxt8-9gl
zA;}Gw)0oTUC#fY;@Q#||Pg=WHQMb8;9_5ip)$NanX_~S}j??@gBjS>?;i*p<%dY4Y
z-k-Lruo658ziy#U{|%k|&~oZP)lD?QX@Ar7wB?HRT(vU>?H8rFUhySQYp&)VZeDU5
zA&ezsQOpJocl#ChUuFF%(beL4^}mYMRoWBGeGb%2&cNLP@)x?j@4|Jro5YCoR9nT$
ziLZ9$w4q#fk_VB;H)}zgbNuJoj2o*3%VokCbNdy(NZms21t0&a-I<c%)>S*3AM@B3
zk`N!wxn|UtD`IsPS}6DXTIF7DUMrhG*Tm#f(DOjR6sK`A!y*B`aT4>;qE*H#LTZNe
z<CEruK>*p04}2C!Lg;_m|3QfI1jZDM-<w8Fe|)Tmg7FH2h<Q?V)fCg!l0EDh^d7&0
zp6YJ3CXHY=QYcy=pCWgr)TF*0o_aOP&ywL>tV6mAf?i%yy2w(_y$5tVyyD7&hEc=a
zLxWJJyz4FM#V`+sr#^zs#E5bzYPxO;?3RXv52co=+Ymt~xoscF^t!1a&^P=_rG;9-
zCO{KEk(<c>X>B6Uc*O?|@O4&JiS@|T!Z}Oj1bZXGwkn!Jy6j<WTeJHEoeG`PT*fMT
zF}AHU{A!+5N4resDdMTUv#30FmNTa+H?elpph~CtVFn_h0iqOE54@t*x$!1T+w&!7
zS(*EUkoEh8m{Z>y-_UHnu$CWS=K64tS+AQ|E^fCWW1Jhh)5dT=UwjT>-!NKnk>;<Z
zMs6|Be}+2fzq*=NR?%^iarms{*&g_xEQUx&_!iD6J0uJU`6N(!Lc}Ttu`pwE>R*l{
zJj<!RJ9GjZIfbwK+?YAxpU#}_sfCGkTbjOaZut0-{D!qnlX7z!-gB$+5?imDdO~9B
zl~Z2H^suPfSJAnluHn3S`OFjqpY)AI@Q2%~@|bi^`@R0W6Xt68-9-Fl^Jeopr(t@v
zZ)&58G#ndNKFL;gniUO514mNO8)e0szdGu}>`kHedq8QsVD{AxdbK2MJJhAGAYnt6
zF1;t~7hb5d;%m66bm^g#!E*liBN!$t;rkbaJsZvGa7*96@E^o4{)LU^i<3kD!o`h&
zPCI)eog_N8InCegC00)M0>w|PS00AIIeF)Okl_QAvjTB<@G7$(I6So_zzbnSCnp$!
zmO22zHA8|cUU3S7Yaz4?PnG0)N<ZBxwKh2x3f|0#8M=<UXQ3RNQXb3wJXSX}FP84R
zlxs9oOA}jnaAt5JHxi-O(yw9Sb$Qcbxl2##SnKy6;wqU1$3@+X@-ev)+`@i#=<`Cf
zPpowkOKV%Ia)tlb-{N&(i3H=X8(g3}YS4`m>m1)yoY4Y66E7CYT5K7Cal{Q0Id1I$
z6yrf*i>VQLV^dY#e0n;WrS=|Go0)in80}`aR!%cG{b;6Knq8V6)I1w#{L%ozh8acT
z#ZtPZL$|V&eo|FE{ccvW0$$V_Q8}FQ>Ry%CIs4P>>?!IbF9d&o5ddQX05~_|yYKKX
z^b7ehieE`Mgj7{tY=J4t^gBkSU$(wlNd6l#)T2k?kU*ybV;(q57y~OX;|TJ!7N@!Q
zI58Ic`QQ4CUMv6H5DIt~fVr7**WGceo&PYvlSF&BdeWGdVYzPQ0H)qKq5uRdKo~C~
zTh)yfaPFLegr1qdovCqzHOwj^pd!;2Hx-^Sv8{VEod_R%ILe&%e#A`(AE|a9_T?QH
zm25ySp4XeAu!GAsi5)o2dGr-==QQz_5coO2?Ve*V?d;!L@v7521Imlt$@`hSXSE66
zjdnw*pqE-5p^ZMO-M=Wx$6oP4@UeNYL0Z0)d1(=kA+Y2>D3eK1Fx;I!o3j0vN8EXj
zsK?Z%q3HpCk^d#dB_yqRx!*_Jn*6*}>_-_{?Wi)(gHz;38kwtIAglX@8rlvFPI>%^
zlUv{3D}pqxuK2`BDvW@52x&ou=SahPAzLL|={E3cjd}iJKBddbK30h~v#s7r!MRa)
zGSkB;wawg3m*`(OpHoX0m_lEt>)CLJ)USp=xL2!O3`M`hTt!Klg_>^zl;VyDPJBph
z%GB%SG@r{Cln=p5%12VCWTNhQ$VOl#^ERMY0)XNb3!LN;d{4DiSM+UaXlH}c!Ykh0
zGHJOzOPr(vFJg7oJ)NgE1MhN7x#^q1WcL`@)eAi>c-Nq2+w{^g^HQCi@w@9Z*fk86
zM0A@lAj!;H>o(+>yT4$+YfkNszOLD=VJz1)>GK*hjW3%kcii7eu7;E9$Tkz_tgLBN
zlhQ)envy8>n55Q89_h>(9B9F8e2=D9#GTp1h!WrJ<|Ow4CzL8Mxf?%Z@f686FPCzl
zgdZdh-;<@e8wJ~JCalamfJw~)EQzgqJIOQ9zFe-0Us&Mj0x?|xfnBOhQop~FvSm`v
z>fW*z2D|gI+}8swmB0u3{~04H5F=8|L_j)cg3;ar_9WwVi$mvbEO$ZEGgj4gk}GT@
zRh`^SjJF8B<3>6gDNrNV(}>k~eQ}7S$}wB;d3f)v$JufugSAmAXB;Cn!yue|I=Al6
zjt}ixRT7^BSNZZzCia72vDpjm7>}MTwoq+v$*4X(vze6P3=1d^XQ+HTn#CE~s`3LS
z(UWYUR!jOVn;PB<^er2Yp|-EeZ+{?^-|&hYa|#2t;`mt)Heq=m-zy<8^XO>Ch~iQr
zU#i~dKPP!N|4NJE6c6m5WH8bq@dR=G7W?By`{NvlsAS#ixVYov`rTyUnpZEkht13q
z{>I#M;T@|QaKuXexx8p1foAk$Dh30+@r=uCRIzFH0GBi4KHj*6I(WC?iw>QuToVCl
ze}q?nMK28ZxwCeV{(6TTTpi{^|I=4CUy#4KG?P!>UzwwIT~w#Io1>HOs)<%}sfwHx
zDhn4NgQP4JY1Sy-(z0tU9GQDjs4oz-jeXtsb&Lw>3$cnS^aau#N_<_9pQs!ToLm5E
zgaJ8D@=4l@y2Chued&1diJ1@b0_#~xVVn5bzPHaOY_heZQ3Yg%L@VlQr%c9E8XK0*
zyBOqOSW|a(0s6&)Pj?vJ{XbURZ-o-u7&Qt<!$Nm3X`Y^+O?%o)rG*7+yR#3{#0y=l
zjeCaulO#`M^LHzI@}M>-aU*|B>u(t&T~1AB=>sfLWw<><R376e{H>vu-I?so79F>d
zQ!dd&Lt>btnL=Xgz74y&2}w%5>c2N6(YyiPTHxHe0Bz#d*8Bx6TpvxQexz58`{&t|
zv;o`~QoF`I$W6@RO%PzkD6MSq8;qu&EWSq{d97-0LQ~*D4tY1BIR?|x20}0M@p*QO
zGSwGnEK8a1-qNaqHpY;GD|v{y%}uOk>PCNuiMLOvmFx&Ze@h8hq-^Q>BRPLnB4<jm
zyz;U1lf_MHCbg#H4d&Yt?@0$$7Gjc{HSV8g>vOug0MDm5ZJ}~CH@_&9!?+_*ZMF9w
zO8EXz23cC;J~56FDU);aEua@zaB^fm;(-bqYbv&?k&+sxYAdU49)R`Wbg<&;BfJPp
z0HH#pt%{7?BrP?KyU#Z9Z|I>CBt#m7;6GRVJ|6;5m`lF0YnJNh173{$9T|-I*u=ds
zu?k{SoJ2E&jwH5n^m-D%L@4M1T%)wP;Z)nHZPf3%Ymc$iV|E;2hiuph_WI9k`qJ-o
z44p!QA}z4snvph>bvx2RHY`AyG{&x=KNA@MpJw%$4t;M=cIhXa*p2iNr1tedg{J54
zQrAxNUs<eZYFHyjFviGcEFvUb6koB)xgiJDRR(iy9Opj{tP}0w4WXEpGw*KM#t^4<
zD9HasD0s}gISyXdRvlBJw(45_!Erxk;;YtuKAt6bthkAn3VUjFl0U-Z#B4ZXwWxjH
zPWr>P7%zqyt1!;=<0w><zWDDs@dY0fp*EJl3ZHv`;%`S_+NIqaUJb1>)I1!wz_F2D
z&}z8=sekLN8h4QPVCv5y(!jcDs(RT~*HDxzS$@n2Wed&CTkUEzAI36RKhAJ>$6&)r
z>9$n?son@Pj&TdQIf%$q+X-N6M5=?Djgf&q@3}f<7XOCN;b0=cHZ4u$c>93Qo%4l*
zNgQ%d$XN%lJAk>3y8QfX3Pzq`i5O!od8y4M7w6=R9Ob=(ME3b+Bykd#l}T~ML4+vv
zgMZ;Q`NlgH_n$kV+_o8!5euKL+%ag@R{(c~8TDV*yjlIhoHPVyPOGrEAeyep>FNGD
z@7L;gLtRb|8D+im>B!P)jr;U?T0|Z7w7FvXF;870pCZRDc|~o`D$>|$9FfB*N5dAF
zB&r3T0Pk5Vh6GXZI{t_wn-#=rDz7U|*d%h8{LaixbWojo$6L8hq`<v@_N;cdVG@P9
zbomQklAAlJEP?p?VRUHA92JO588g@M)w_)*+-6x2aH{4Ly93zGSPw^iY^{f6g6Vma
z_{Xn4acH28m=mcSk_Uv6A(7SSXWmNa#E&x`>HfQkY3SaBxrdFuY2mjeqi-Vg7^nW4
znDaPte-9$w{9^*OHTd6)q#%}<$ANBJRU-&N#|>j57mN)13Q4g+{fxJ!q)&g<I&c72
zi0kUD)ppas^1RV_-ZzcaTJRWS8=xk4Q=E+ZsKt;N%mu5S5rUDHLNO0T+*-1zn5t%m
zdthV-cVgOgZW_2VX%V%H+>Y|{{)CNlak)agW$nO5JA!qW_^#PJYrbs4-xp7<$M2>A
z&>RheBgz|FI=tf3hF+X4@!PGSUHk>Hgh#utPS_~LnU%HCiMo{!abh#nnqLzHVDrva
zyWP2(%Y1dHU0p;;x@<piz&BOz!9-RJ%{O@8ND@Xuy4@p9C&Az@&ljKGVg_F92f!qE
z$3kSz)v1m4nvcLQ*Qv3@k-=f~_g^@w1qbz|abmV+&g0YkbrX;9FAt0D!(;wKD}Q2c
zLh@4um-5$5s5lRA*@x%+hu8VzUB;ryo9g?lAE?G>?S05ADGkLq<f86KcF+)&AAiga
zs=xafOaE#&Hg}0RLhY7c&EIhhnQ-sd-NChpXpYof7mL+xVj=AIkm<?v<-_xN>K7B+
zyd|H)RILwbJoz934rk6tLnY_07QgLP^162H&>g??%asQdXO32(p=&hy=fzjp-CMtw
z2|WXX&Sh&!_%U|{`ZNntRp;Z!d3jog|0{lYdn50dSCfw)FK6LL)p+f}S=M_-aXnpJ
zLl>Cn_WA^6^(ipN!G(k?B?{(fzMYYPg^fqbbl`iV(~{topNjF$_`u5X*Gxc;H7We2
zK+Fs#g;#*h*UE9E<v%ReEeG=?ykp^+ChFP^*LnKISP)x9=FJP$B}$DF<KkZhgQ057
zWsq+8VQbB?c=t4<^2j-nQJ}C_E^fx(QvS}@d8UZ{*X(n!<V|l*`N>y94(4>(Zw6ac
zz10QWXUHw<2bo)+hq-PI5Z?&}9v_VC!^E<p7$#!8``P2<kNI_>Hx99BZee@`s+6OJ
zvzUwE8}JM7C5XUmh3ok~-)+MA^gYFz7+y;EO~O?++Y{zB>4$6>5;?iU>x9Um`k@)*
zSr*!|8`?fZ`8=zP04@cJ(A@M@j5Tn;I?atdi2}bn(jKQvj^o+%`@{B!2s6nQWBUF+
zPOOYcRF1#dH;MZ3Ei{R|gDj$5#2FIll`@HL|GlJb<^-Ylm-mIEoE5en(ebc*cmrnK
zMOMOTPy?{YB?{I9fgnnXV3fh^YPT>IooZUJZU>@t3o6@t`F3S%WvpUheNm!3x8W-r
zpR(Tig4Ebv9M4l@_t6*~<pYYz{?Ed&aVNPW#ATHq4u*o1`OV9x9_Ur^((=V6RcK&s
zTz|lSqE$AFXRgpJx<o4_26k)s(5)(m(%%aK-LTkhx7i&*v*DCnE9_;{HQKhaRF6>f
zC+|TM<Oo7x)SblMH(7*o#Vmah;A=Ye3Up1aCqdSJTyyG6C^@n9r-q$vNLKTE%rFRQ
znGvR5*_G%w?-1tHDQmU=pq(W->*k|!%T&A+oc3l(cd@3pca)su#C36>&mfrL`^;M#
zieC^!`QriVWsm+0f@68gocXUROB@fj(A5rb(z%#fAaPma8$RQC@qBQhVm(SPI*#2R
zyB+M5k8q}FUGekZTKVJ)r_`tIJ^m+5XB$khE7MtUQ8v>#03K+Wjy#z@)7h0*mgz(W
zHc6B?=^uY!MR7!S;X4F9H3{ipJ=>UD$9PmA|9Tg%iSoYOgf0J*5ujmY*z)}dj*xxd
zHUntf_l{VFb!$j{FEOtTgV;K~8aB4$F?ma#hkaN-m5#Q&3-B6FR=WL91BGe`tz`v-
z{}$r&u7B53V4*jPx~LDZE9xCwDIyg6@?FclG>+LgAS}H(&F=yN&*Ps!VpvQtPrU~V
zQ-WX&k612r%7sBYJIQsByVmJF{>nnk_b$QtG@R?_gL6Jk@+vTiovB!2@_523Un8!F
zEO&}SRHRBx#pUBCoQbtM{<P3&sOdgtoD7B0-5XYGUzbb_(iG1+Sk`g<i{|pt@?V+T
zQEs$tTVPQw$Zs04cs7v8x%T_3Q{OS8m^GR3KYZnLwl(L%tWey%xxApNpMdamRYXBG
zIaKu;<%A3Nl6Gg6&D?hbU)0eo*YFgPg4(?H9{C7PfT~Emj<lhISgtfOS((xaV|i}m
z;#l{{NJYBbus;+Q`mfsKzv#bufo`SLmB{v%3(IM)*uX1z_A^HV{Xg?ve9hdgXp(f<
zkH=}yJ~xe_d3m3JCvA2QS?VbxwA;B-CA=3=R?M-?Ju82K_Xr^9zd1`>AQeBK504<8
z{3GAaeVHcB52K`{mTMJ?=vwMrpLgD64(YPj8H2CYElK*jU&+~2A-d9A@pix`E!L*X
zs!!lx_k1vjcrVI^ywGWWekBO^I;Evbrcd0UXrdNeUec{DgX3gMCdb3h0HQWkeY967
zQ}Yc}^=8@LnixC0$G13%Zumn4YVs?@$akjCIM}1^nEc4oMfTxCbL0d&)tSq{Q-QzH
zDs?gVZIn|e5MaYKh?rSoL??Dkg(W195gSd%aw*tQ0I}*D|I2v>zDYL4IW0WI(>C^V
zE+ft{-?K+3VKX1}i4)(ew$u}$IdbR3(pTrEYRT&|M_=6Wy;B4JpnEIbSiWRTG<E5K
zv8fS*+}hr$5$uSM;H-`T_Ro=?J={;!^<9BX^v1IQQTI=>oOB=+mj`<3DxT&+q^zE4
ze_M0oix|5sB5ySRWB_|VOJrlj2Cd+7N}-ZD2d?BD$)nHmUqp_39uOC@7fHDqX^w*|
z<t!bkW%E#2*=B8`KeAKTb05!5IFYTUH(lQ3blFKSac4<4>Ig1Z>zyz^I<OI6;oZPd
z22=BfhQn+R{$@b(N=b_~oIrpgW)RL2*{Kb#UFx(9VCm$JFJV&UH2&_3wq(RTJI`!m
zx0*g$3Mj+rF?Lnfm=jnJ{<6(rj@D1HGpd%RYIex;j%4gMNX>K~sVPCuLF%A3PPQX4
zrsR2TqUO+;^^QdrBAaoaLI3_GeyJ_7v@e#;<bMR>_*$;1$cW<8tgpz%m-ZDj?*_PN
zONHKo&FWr)HSd^!DP4*cVJ4hSGgkHnNfb_c%kS0OZ25-O?(GVjT~-9^>+NfM3CV$|
z=yEgVBu&_V<zkbznaA)u0vT*c>FU8J={p4`cLjvHJ^kRQLx*Or^*#}$7VunTKDpYb
zqasU3TplXiMfE0YNOyN|?^IPOi43N4^{0f;>jQMF%cTPnpY3nn$9E^JmOfr!r6b%N
zUR+O9s6Djl2ekYdrC~dz`<UZJ0cMyAuE7d>8l4C~Jv_tLcRsgL3_`1(@gt)8wIs|6
z8Io7yl9YuW#hDNj97AVF&od;GLsJ=k(>x1V9_Txz%f-!v(BdFMqHnqI$VVcqX7d?O
z{sv#LtHqy@ZbQEF)VMr;juEca)hozL!5l3&(2nBD?}9AT)xqW0?499crcn~XwjU65
zGgA%M7hjwjz`n){`7wer#yLqMwDfk226CA{kXWv9OXWVNFw@y{Aq4gZdSt>+IxTEE
zs&AjlQjK}u-M|K&K=CmInkkrB)LUTYo#A_Cjw|%RO;fAHXh2H2X4Vki<$eFUJb~mR
z1Sd1lN+JqEX6xHYmOFn;S???Uu>fC2a}OOG;PowPYd==Y>_lV@gJGxJujyUKc;e{M
zVgphO=QPU+%DzQR+QvO#ygZ@k8Q!7jlePqglPw+;N-kzj(hXXD5r0KRpn6%JX!fG-
zpw)mCs-Dvv4Vv~|<A?JUJB)GnIP^CGx;y7dwRkT;RW{g7jOdFK?E2KEO6}P^X2Dwv
zRUP`$BqGntbhKmBfcHTe3uubX;_B2Vrky5&H`?NS!R#{%#g)}S1o(tX2t~v_-gM)=
zB_giABfL$-b0223GiUOStd1UM@#teVG*o*Q(B4MMx6>h3#J5+=0`51N5{bn{nRRRa
z8xZvRAehG{4B>sB;CD-0m!FT!;FotX>l3Qq)=?zQXMfC9l(-~oB2lK>UB-$QyZHE?
zyq@LV3*SfoR<Q!2Oim>}(wAl&a`z1<ub<QfYgT(NzbYED`M$h|U&_#1%-yl+={wa^
z!%ji4dHpaP0EL_~l-`H`yBUs`6C4e0=O;HTAIOQs#MV9&cX?(^UJ*OP4=%X+5O+wq
zt?;_j+(apuQ(|%9qNiD=j;wqZZjZU6bTieIQ%HIht6LgPpSoit@!{6E^Z2q@#T)fF
z!nmTu9*iYk<8*l!-T(kA&~Iw+zdnx_VWds#G^+hRYlq6U8cVU)IQTi?fu7t!#qIak
zxTo>{4H`(7ZJ{;?ZBs9r$<(*iz4I;FaP%wnr7d%WEn`M!3Y-`euwSbWRtx5&%-8+-
zs{Z}_I>hHG+sZ4?zzF;-WZ%Y8Z`Y(2DmjN?-xf(+KY(-cjShLY)@JA3`k_`V!Djc!
z&JGi<KPl-Tv2*=X1wlP;uXSijKEM2*^k4Yj^*`zVLH`ricI{tN=kTR&s?xmsFAsB)
zm_LE}Oua%=?;U0kvC~irG3*rc1H$?j(^L81nZK&}^Y@R;c(ISvy-y$iqxt)T_+|J{
z>g@l24F9J-{Mr0h5d0F%|JDA>I_Hld_`l5m)c^JTSK8(G=O3OA)XfF|O@bf!KT5z&
zMD*tRonq<pJ7NcXT|YF)i(^F)?CXL?L{3|qFRy-<#ph&c=6)8R?XL;1M9tPMBdMS4
z!ES8=prjG3s$<=BZI5}gWh~G1KHYtNeH0Q+TUL2&RH4<(t7UZ7)n>|1XBdc6#6j}4
zJUZosJolROhhWno(04WJJQwnkhLFF7rf~$;QR>RreC14u-O0Nm*vVr4mYDbX#s%n6
ziI!HnaVM83fbSDJkEEtn*3^Aw?^slX(*h`gI(UHScQXCjC`o;J*#A;$zr-~n=2fIA
zmta%H0iQ|EL2TLVQOy-}gLYgg=T>px+H!6>5!T>sqgx-Z8GLEfExwb#<!<jg;bO(}
z<m|E#;0ZPA@*H!N?bzSbeNv;>hg7+LeJPq%G&QC;@-(an=JtiX)g@J1GFQ*6W`8P2
zQl}JY>POOh+?`m&`Qdo?iJZ}EwXDh>kA|-;vHg%)*d8dZq%h%*Mg5oeZ=IJ@43WMK
zlB${W)y%YQ{xwtgGntyYe#L|^meOqctRfBr$E;3&YKjvLr{mqCQge!OlqnyUKI3xQ
zof@@gi3$GaaP(P4Z8}5*Z@((fJQ4JAClwNT#RUH9NZSRK&dep0ajO~j`!slyECqII
ziYrDJ7fpH3YF$l(3UlgTOTFhk#W!omKR67!BH3Ev2a*P0ljTIVtQubTgEXtB3Fp;`
z4YF$;D7Nk^Ul$SJ=JkM8_<X6()(`ViHQOr6OZ8~r7?8epG*z&xITJa&?pyOuj;h!j
zYt(<d?G)+D<bUhZ&WV|J9?WXzGs4u`=lK1$57oHCetTugXZQP*%1^iD{dwGudL6pH
z?&72O5BQG#?)DfuqI-_T%qhd%JPwl#sYLmyWD9twfrE;j8<aVPMXB_@<cIP@oWc2-
zblI)6Xq`60XfEIh-e;)nf!r}~K4}qN?U9z|v5+52&n+=;#|4-UbN*vsCMn#!zuTHo
zRxuB2kRqyQ9;cXhGoP~df05*cy+mPUyJb1FU$}-DKZyQfUZPG0KG9UaV&kzdOz{Kl
zhy(vO#l5Q_1M;;I!_%+WyO;-y7cTXc1e!~{@`}yhsax%yQiOHHhQm7lkWG{AnDsqP
z%^Xh6&heRHUFu&>ea=%CQ8(PIxIwjB%^s@z1=tvGdqFCyy^7sTW_5w4eep+>KgPY>
zYV78ttMMP@727XDV!kx_UzTNkArQ6e`EV=$&anBbb*uQBh~k$e2VMvFE{<hV-}rlQ
z+;nvqNi`0``qV!~`lr+$K)8+KnM?4>p*B*gf5RnsJ+UyInLCQ?)4g|U-*p!LIAReN
zI!OY$Gx^l3p2b>Am$eYyW^raOMr;m@!Ii_i@L+mLD$p*+Vwdta>sahZdOdBiMx4ou
zn~6uJ<zTm|hApo#L?VG4l)G3PO|L0AOr>O7Y-ipgVBnnN$xOsGW-+_b-@<F{>eh-6
z+ma)5#J@oayQ`}0vLf>oO1ci2`G@PKk7T(_-4M8E=3YAGfVA{P+Vx$W>57++xTklX
zetkXlrgttcp`Siwb1gIuTq|gpU9JKTHnMDH8UXR{_q6MUqFbA_Ld@Y8mq#Z42-c|n
zlHu;&@x%{YN4Awo4Ns3)%lZ@z*ZSPSi__A*_YT&lM)#2=co*ioe-dWT`j|Dr`b-?p
z`rL3z*7~#$4EKLiy^&eCuPkKjb#S<S%xxHK83;|-)l^eC108YTSY|;RCZVv^vXV*^
zH!DVaQsToFnZYg-@*>>X1>{SJT1fn`m%W>?Kr2+r<Ng!5`)!#w%|e`WGVwx7I>Gp?
zd%n*{EUqw(Nj>`krubj33<%ZqW!bV4C|G#AJx)2*+8o^$&GPnrq6-CC`U&%&+N78%
zWz#F+@;!VeT>L|R3xd|_&z2S=#VGRho&rCSPTEuG8)ek_W-PoO%MdS5*|YsSMT*0)
zWY&?3Po)Z~Gmp6YX$5}fYdm}M1<96_d_|JS6*$Tr!ry~G=N1a`FN6m_MT&Uzi(+-d
z`YCTt-G~yrW5kY?nA2<F$c$1l_wTeGtE(DB_*7*OZAMDos&WBY5!?-XwKrINj&ts<
zhWr8fH5E80>c_<0qlUX<S$%ewzA)Q9kxB&1rUoaEBr-?X`I!M%5HpXk>@dHxn`d_J
zzsZ{W9uzS9MPX_TNd?<-P++tV-52~Q`9HM133!y%+5ew`AcIDqsHmx8jcxP|N-MF@
z5<$(t1ZQNTQ9yA)(I~~OBFqR>5O5~I({Yg3T3@TJ;#O_7udNH45)!tcRz+|@QNaz*
z5E0zi6!QOk&+|+&N$v0Vzy8<t=hDoxoaZd}xzD|w``mZl>37=?&kXfrzb;w9`~MT=
z+GEYl_=RFCp0eD$GDLW{DeMktdCsO`>}3?KO0c)zoZj}$@9j6+rp(2j8``xYJB1|(
zyjh=np0=yup`a$pTt_)|am)_Q?R;FOvSqfYN3YuPBT9^0FN`k`pB}VE-2HYo>_H?O
zKSRFj(Yl(R(YleiEhS3K(sSD9BthY5T{ZI3$Y2d}sOBQbgHo-L+{AeKNQnd3a)duW
ztC=76P-B%i+Q-L7)2B$ktx-xiCTR30?GyBdH$hLIV#oD+4!nC4^rE$>_a6*sB<pB@
z_-0<3nS=jdOil<nmENGRe`Na;O5f10VkeI41pnL??Ro=dp=u;@Cdy(7*2wWAWX_4>
zHrDZ&qvO~tbFs|iqM2-%aCB<~J}-!YQC!;Ql(Za@!^fhU%J1U?Fv+N%KGef6M<K6_
zaAmE4&E`bAUJ~nwoQyb8Q;aiPVWjKeF+_n55zDo@GSSz$<2;Zq+nYZi$_ldrvTsr3
zG~nYwVf=Nhx{Z!YT6yBphrHx1*<G6bg?r6IBW3LwR0i2IcYiH;MuyCO7P{W|efi!D
z<U7x3oTCug=cvK6GS4MLx#fu6RJ53)R`dYfvhzHA6n=q9@l(*9_kmX>=H4o`JFVRO
zw|6nX%+Uog$FtM9@abTFyzTZFpaicjjj(^WdNIiCu4L7omA(aq=hnWlx*>fe&*L}N
z7svNV`X**AiVpQlIk2Kz;S%FkaP~PCXsq0uu(|o94@1QL^=W3Ze%lt>RgBDAoF`#n
z<|xRNS4>~J=d1E9%lv-Y^+TRDEuHj*(4X(bu<nNva3JoGvGcUGf879Q?(L!tLk2ld
ztztj8>yRouYN5S9kz=ir9dhXVP5n+Qh;!~13po@iPT~bG|G|<-^0b1)vr2z}y4L!-
zjVu^{1OwtLR`-AfiJ)x$S+37FU!y+nbX*A?X7ZWp_g6MT0y-pQxr)Bv-A+!p_xPs1
zaeB|}!}dji?Qgj=S5D38;eFh-xgN836rsnxLo=4%$vfNMr8;a|5Pvzu3Dct!E0cSV
zyZOdgdVEPVc}79vIh}dicfY9n0iv&unjL3=ACQF=A$C6$fqj=bnEq2vIC$8X3ijY(
z;oWv5TFFn21BbWWdXRf^OLz5~wVEH<eV!WGutV6pCAave@JY5GIIr?{enyO}*fyLP
zU7DR2Zyn@~e-LwBWk<(OXBWuXAlN`_{E&zrUB8<tWy3$}hX?oOarzqKNG8cNR+AoH
zj{nF|COK&Fhv%w`P?nK<R3A+B6UBJ>w@P2WqC=$vuPdLrLd?Rq7v<K=Sz0gV3`QX{
zfUto8{iyC8I(Y6?b}98WLr=FCRpxYEXessMLgUOcP1=5X@UVFx>$VPezuUD5s_I0(
zGlw%dXvc}}Cd#L2kRpCca`%z(U&>&K#D^Y$=Yab~Eqfu?_ObamS#8Zt^sv<|7^GN!
zIq6pIdWFGOzX-|X`S8blXzL0)k(W6Xw(A{p3!k=s=*^eAN4e*n$ZPzBX72e$N^9yN
zmS-pvnifj#Nlqw%&%GifsVlsV!!jH@^w;BX>qTqZu!avSfeK4$eK#i1Nah|Gp+qZ)
zZ|guoYr`dZK;kga!PE;;@a6eTxBsTo`S&MxdVg@I_eGuVALw)+?R0<5$sOzeZKwNR
zb-F+1|MLAoo!*yp`o5ymeY{ioKX!V*veSL%?|XK7AL(>o-06OHr~8jO-9LCzM|k|A
z)BA@z-QV8n{_#%VhdaGL`Tz31OQ-kOcDk?ZbU&uk{e({UFL%0ssMGy;GE3&;*W;b;
zH+Q;EcKUv3r~A*#JJx49-EZ%7U)8DpOFGrJsZ;s-PWJ;lmH%^oed3JL*XKh)^0YxO
zc9awxZ5w`e8tX9gLfLxODSXT@VdkeWEy$jeddWV#w5&*>H4zG%70dRjvO+Jlv1j3J
z&=&#dmJ)ei&l}YyHpLMQ?cvF=^`OeU54FKKsPm}1yCzEEw1wClgNqT@3YtC&5^625
zmIp<I?mz4Gz}iUqu3V6-o+p%3Cc#)%YAgs2q0#7n|F;?vFJy0k-n82XGP#l1L1fWs
zTFqINZE}z3^T@>outn?rvFuO0A5QeF&jB*jSE^ec7!efUk>dtPyNV+za^I$>a->F(
zv${wYLmuoP%)Mff_8*0D&Qw_HrwqICRrVMpJLsAbhHq0HP;M@*8uwS0ryygVOGC-;
zx+d<Xp(4Ok+!<~?eYiQP@$_4}RqBrqy6#?IR+v##lcTT7QESzXnV%OFtGh*I7)w5%
zN7wVliLIWOIs@>HtkPJ^*I<grcF1^kDdf6*A2E;6{dyd}!ey5dN>8U;$8bF=xv$ij
z{VQ?C%n_F|A{=1a*akvvPpWR)Z;84e=KNnjBqmknh+jXhBl@Nv$1rUg#GjLRZEce|
zPN<<ywT;iIzaP8+J?8N=r~a*g%eV};<;9$SpLw!u2JI1!c_!<`v*Os1tEVJ{+IKWv
zkKqkBCKE1DGSec7N9~=WOK&`ebzmnwFBMxhe_Tq}R+&5dTeiK;af3XDbvyOD)R64A
z+szxAY%Qmcd1g&V+0&S!dDK$$GahBTawq%aEihYJ?Unrslo@N^%l4H0*kX_l6ch<w
z+4b%BN9cZqcc0%?3%~!Ov&-ZwZob4Po_=oa=k;^Sd8ZeF=82JBZ=UqN&m9{AJ|XB#
zJA5oiq(zRh+0AnJqyChseH3SfzwHIGO8%&5%;I>~I*&&^c*HGs>Q?hUK*}?pjP>nR
zEUVHybhFD!Xr&_*GQS07KV)kuQAMWdiWf=m6b4LI1DR4}N*GaYi?72HOys3J@aNyO
z`~nJOlVEsS6)DIfbSgI<E1z8`duP;b^%e&fPqw~n)`4-t>0pPRf-_1pfN_mTIYRx~
za3)+)0ut5K8R!{4;m3dk+j$eyP!4A#c1(Rm&-Cd4vrsEs$nj^rb5|{Tpao#E`+%eS
zSU%){$+Qwh`tKXYFlp&bDX)9E8>#&;4r;$k#Xa%)VDslj`7*lI#m=EM1!n&*saQ@>
zfCo~4Y>D|?Pn3;{v>IQS%f3~61lU|@lBcRD)7wVC5=TQY#^r5V5=qd{4Dy!g3CuOm
z9=!6X$Od|m2cVo`SZ>et4mz@6P&~kPb$g?`uRTSB1x2#;c#^uPSmuc5PJ~qKZYLF%
zep-8NXelM|BGlhZwU=pOJ-CdQL`df-_TsY27%}J;b7Z2&0*m)wRe<*;yEfvv<IbY6
zqO_)D9&6fm+|2JJ;}Q@67v|9MD}TU<oRV@nbEQVt5h6Zb0r+n7=x`)+SJ`|DiLus3
z7F}_DLEUfS1=s78%0GC_k+a3PLb0y+qks04eQiUG%g7>)r__Ho%3FH$53jc{&O-Jr
z<|8Hy7o*4`T`~;&c5=jePYJiw(hU7BI*Pv(5XtC6H3h4^6E$`Q#_NF&*vf!yula1A
z3VSD9OSyD<dq-c5(H4%heP_-MR2Z_mdLcU#6&rK#zmHlh%Uq1DvLMs|IU|nB_pNb9
zI9sCAY8W%w)?|j-=jMiI1(R)%rQv<sr{`<cklf!I2XA+o7r{)`M4TK*2niI;LY~+_
z(il8icfHBHg_=G;E{oBobs0Xcsu824`3LLTU6Fm4scqx`6&piKZ3mZGD%!xi&UnSA
z*}vqTdqdL10LC&w3XdROa#v-C=uywPx$*+Gb^x%2yht}%Hu?CW=lXhy8n+<Q+opM;
z7i=vST+qt*LDFo1M>%?=pwqUA#p*-FPERUPO{U@*I^(V;<kV!Zmg)-fD8hc(HfANT
z46?YB`2OtwxgO0-k#~Y{)6=;cIjW$i2oOPUnR!radB{#F)AE@)m98#T=d-`1m0W*w
zJt30xMvEcYjew?of2(4h9SDQZHt`wx-+tba9%rX(pRjFz#$B;%qxltO@UFa?H|D-m
z_P0KNIpYt#@F0!1e3Zvd;Gdp;JrWV7U7YDCv!%*PnEHxF*h@Xt0IkA27DGaj*Lj*b
zYl}|G&w7q)Z3013w=7nT5Zq$c*jBRwS5LbrCQpr@8hSx9BC?^n+bC#TW}<SQLN;V(
z@bLlRZbhj?%I#(`90}^5Xyn;a|JkGdGo@$>9B<39*Jb8<k3-H~D_j2C;;lL6XKl>S
zW@7Z~_n?!##-dUfZ27uRCpcp{CVvNzZ3ngwzle)zRGv%c7Dt-TDq&=hinB`n-*W%A
zuYOl}@V530ci%G6by($k^C_!Yf^FZ3TOM=AP}eBxs`BfqD%H2#`*nH2`K%Qt(%h&m
z%9gMEapda%Ucs(P3t+_9Fyp6HY|Fth-D|soLmZpC=L9H$Ak4ETs{<Po+jV9b7auPo
zR_UbI%)Pw1WVFr-+urEH4n-HXKf16TWVWn)BCF4TS^KGPnmWu}O&^)N(b*Wai4UTS
z*!jrMU6kXGO8J+Yca29@)cpI<g>AA%2w5ZMt{NV5Uq&XvV1`j%G6&|Y#(4K=v*3mx
zv=NJHGaQMHA~Fc#c)^i>(%+%Wg<6lo@EGqES#reGv!^ef@~it7SLqXuI)r<F8Ch@G
z>tPLdb?Uo7%A@IXv277m=Fi}7q~VFbdH>{b!BICI!UsdwMs{t9yuKChIVX7{<#=0e
zT~{LHvsfe!!-j3d8A6Ox{sVTFUg1`^ezVjXo|KzaU@3-2E97XOB2BQk&{Fk`K=C%~
ztmtAvsP{I-p(|`h$><BYaY#790NRJ+<=f&za`dK#-7JP*lfD59;u(yd14q0smV*uv
zCRy9-4SN8XatUQM6!UEbpC?|lt#ZyIXpiA5bX)0!yVL^bH@3;aN7wTHDL2>l))vU+
zq~^HXLOKU#CgGSLfO7A5JRmO<cA57zZb^1CxRXA{Y+@8=LL+W1C$%puIXlyHYlO%&
zZiH7|v|)KxUp!M*4#=r6NL{SU|1UtVWy$+MuZPb{7ag!jt1GW+>b17+U!RliXSD0+
zv|K8@t>K_LxAAl7BOL|}EqE^slHl%Rk~)Ko=>wEC&mtpH1X$u-Lz!?HCV;@r6&UQ%
z$DsU+aF}h)_Ti7WKEORrjHdJk^52?0j6Z5m@W%V<0R7^9H8hCEu#*y+sBE2OFan`R
z-*G~CQ)vdj(V|qELG~IhXV+|!HP4TP`Tn0KM`)_BGOVa5v1QhZOdQ&BhSxtoicFkc
zu#t>=Aa?E6ks9<Cp&jiENBJEoPzF6H`s-c~DjIW-+VR)YFV^?lN|}cfr@F0Fc~+gk
zMfgVBZH%FzR(28A(Z&xVRaR*1F3)XEcqs%)-?}!68yC}&=;`mb#xgh1ZT_dGIz<BD
zj?{+)U1)`uGmZ}woq_$Bkp)rrD9y00858Dh2JCLfliJY;&4d%d`y?*h0cQcv7$6CD
zZSvO3EJ~&{9RdU<kh~Y|L$~x$nn7-7Q>f;C9ZQ$8i9lc<))*V~Ef?5w>}Hn7j^7gP
znkbIc9Z9lj=*|h?#+k`R=LFm*rbh!ScP*#Essw(Xt64hJf}z%tn8_#iQF=uM3W~WN
z=^=pR#2y?;obWdybKZ?_Yg-~(#aA3z606(6vzYsnT(|S=&tTNIIq%AdG7<x=Lv=pH
ztUHO-)LiYcFp{Y1&0zqI2^@lg7O(AMo>CDI0We-NI$Lo9{upf-nm&t-^IMP4%gd@_
zk#s+{!d3)Kim_IX?lt{0vKNy)r<+;-U(}_Xk6YO;<|1f5)J0qE>$!t2Shkd&&V1W`
zCi<F_ynZ5ah~iAMBRJaYXEjt^{p_AMl=L+6>d;=D+7n0nEfu#<Vjlj6+@01|WY?Vg
zvge7J{G1FvZEip)CbD3OX~~QQBP|-GZn(RwbLK8H?H$i&ZyG!RhF*M(Q$JoRg}W+U
z-AkjC`ws^;`>nFwZ!)Jl^>0(wltG0pA$^fM=uVLG_Ry?g^lwp^AJHdYmiwRRJgP`l
z!vHGv93uKNTKSuZG*8m&x{)+rP44j**~UsIIHk42dN9V^vbACbR_CdP9g|WoP~&Rb
zmN==3-CS;rKxaK0IStIRf`Y}^G$#DGyF=f4u8_RK$*Et+EN(0Qlpcv=M!HrPH`oH)
zu>gQYre_r$LijA2$KGM2IV5I`lVUH=p^=GoLxtvja7=pHKHep(ds%KaE>HgCbcvSe
z<bTVjWIp~0`c}E!3{*-ldCnGac&b7>l?a`093`PsPKbYt*&V<~*#Ufze6UaOU7LTL
zdF4}SWcuKe5^wuopG@Kt2q)-d^UX<BbFT!!&2RLvpY~SU=VmkyydxIP1-QBuWC!w8
z{J;$9(9YFu?L0xpw9}||9NKBQ+mnM2?@+#fTlube{n~^LDqBYjUYE;lRn*hWb3cpI
zzmCssx7&1jrq5417_8dl!S30gNKcvfL-L+S^L!4)uDkdXo8Z^SkU=<6=gg8A7tPe}
zj%0`*&o<`yu|SjWpWykwHO0@AZxwJoBKjj475d-KmYUt^m%pbukzPVXJqwm-LOzYN
z@MtKd4G-6&Ea+U|CM_%TIFx-^&X;*;u_*x|apWx#B2A@$5)Kgc=p&s+*9mF`O--;5
z*`XO<-j3;v_z{m-AZzLOPlN5|=Cc9x1ps=Uxuq1phxb`))JB(03tovK+~fYOI**^2
zVU$moQ{LT9GR7M?rAwtZAKC6(ax`_fJZ*kTIUi?)S~+>p(yN?5fF-$!sE&Mni~1yu
z`$vAiqk&bC-m6G+P7t%|%CWs}{iP?vd~tSq&}K7~b1k0aH03RO8h^@9&C|zu4jg$)
ziT#H~v^_mqxhm$IYuFe!K8IYPwzlW=(fs~6b7ui!SfXqcpM)@L7tA0aQ?CE8xthvv
zrVWtB5~{qR*R99H*@6vf1!oaso`e_rJ$u7bKTpU%@!{DMrjux0{&6H)x2e>_O#0V9
z&UJrt8{4A;Eloe5KimBAmTSY7(YewW_LAqw4%R}fZZopo<jL`2=Vtm{Wye6YxGu`F
zFoU5$Y*rO9hG^v%@j>*w!1i3Z<24LMu-0tF)z2TnI&TES@<-s;W8sRLR=E<$Zf+lq
zIhk=Nk9?_h56l~+k3R?fz&P`UDEvSUL8SJ|>%MYQubUl|vY=~Izw@q&aeN*$%Z?R}
z{e)qG+Mqx4t@0E_a?_rnXaAHw*Xf@32wwJar1#o9`NIF6<A99;$@N};q#m~SM>}?E
zzR{j0U132Hsaz3p&RJo3*2c-iIbVqp#=6h=ay72&8>bjkM3;3GHNQYRH_zGI?W}l>
zT=E|qX**BjIY)T?lZ*VuDW950di`5FmhRZ`Ny5xt$vpoD`Z$t<9Nr+u|C{iDM0!ai
zeF%QA5K8O+mN^eXiGBg03`GL3w#5g*Pk43wlpLMx)zi|+tDf`e<kwgO&HiIVCqMBI
z-5w4zY^Y*3J-S%Ig3ieRS0jX&c~I3hx`<W4wDKSXM^<XlId_VcO0>a*dk~f62{%^Q
z@sFR}x7L$z)R-ik<D7b8QOhr}v>MfRfR!+!C{%rM9Bh{ikSaW3;y!xi2@@`j=o!jw
ztgNr33DYi3Ncp$Y#C2`ukEa<cd_=p_c^rA*v{t%MytP4Aya-|RD&$M^C}^TV9jif6
zYrf2Ijh-b}j+a-6-DS1>_?e?U`z#x38{QWOwdWfSZD+=}g{g95{GZ09<gSg_8Sp*<
z_~xQ-Me#=$h*KAs>)Pv?*H+IVdG(w|Jvyx5;Tz0lFzLYH0jEBrnKj4oItwB4^+|J#
zt&i5+P4J7;sgkm{7Ps?@twZ=gzWSb=&_duNZ38fl;<olL%WHp$%KxIR{PXSQH@}w~
z_sx0bf2Z==z4Jhlv`r&aOyK$R^5r#?se%q>Kd0B`I&OTvmDK&q^uH5*ili@uo}61A
z>HQXGd@A-tj$acAEKhflJ~UnK=~c74Krm)-W$A}UXjFbRn5gnE;ggdtp2-o=*6Fj0
z^JNsfJ|Ql<R`YRVVjSP1^+D1g&X%fSUn>u1&JBbEFZON<xoa}#I2@l0RlYc3P^fav
zgmWXuH_v>PZ)Zfh{<hTpRr6WGCvXUtAl&|vjc7H8M1DHB9Cyi5k7jyspID-C<A2*m
zOTFip*yp|Sp0|^$9RJMuPm5v==s+=0Ac-aC+}=$%3sG^uao2}L-3TqQm^!0NH}+fb
z_H7>=Go<AvfBuhR4}Czd#LXx^VfRbxsU%O=!|jTge0lP_)_BOSbB{{gNB`vK7`djf
ztl*`42Zjibat&&=t|KR-Q%A_;TN3Gw>1%Ct*Qb%Dt%rqrzl9C%)=O<T>Fvg4n!V#@
z@tO0q*vi`k^u*PGXh6r)ZoVCY)ZC1T^F3bszoOmj&owS@-u=2UFRAX9$8+n&9K`t8
z!SFXX=W*GRHe;#8=M(v`EKlDU?f_0ydAmPH!#d$!&(2vvICCWjl)nqPZ-JLEwdrKq
z`DC{<hrNP=NbkLzfsVSn2*-U=WG0<yo$h#PK($e7egplLwF}~nqBU1vWcq+_L%@>j
zurIa7FGmz-ms6^+{UXM4&}Jnh3vYKRl3i~p4)^}b{DK#;z;(qZUk9e5VYS1sKQJtJ
zO-`!u>}7~w8$`D_*vU3HipUT^(9$rkc}VyJdfD>4IUhiACwmx4p@ZhOBj_vPj_D-n
z2y*cBZL?8d_Z0?~r2l6JWn$^sh9BHbQ|tN73~o*T2046%BAeA@t}iHUDFS~{?n`5p
zE%7s>?t7Kj6(zQF1bpaW1BR3&KILq>H86$Cf(*UT{F5F6D^BL|1e9Bu91;xV;_VP+
zB+|5{Tg+`XKLQdS--=%qb!{g?>DlTM_E;NN4f!j5K*+V-lzV*$^PH^O)+Qi^R%Ck-
z;*oq63PKotBr#w?X%h|sqtzi=ZVxq|WuesaKI2L2sAD4Pokg{V5+p-{GM7ese;;MO
zf<6{Z`nkCYO2@nt#?~ED5({kRr<Co0NODN2wVhe{DM!b0^RlIVN=nT3!|jw<lS|9L
z?D`FjRIIQ}w{M`p&O*)vN18q?X4w;Ot=-hpYaV3b;}ZAX<V#n~S^Ml5XW@=Wk5`R0
z?5b1S5(B{pBAk{slw83A)A=i3Sv^j;fMn$?_?jY@L}tE9r1AnQ(&zj$8jj$Yf$-^T
zkiBKWJlXT!7^&K17ID9BC>aBiH+@`c)=|K(x0y@6@!DHrZ$3~RPjPvPUfkj}lf9n@
zdCUNKYk*tWGkt?CtydRPjAqo@aQ9_1K3DCP45N-4zqwKNxmwV-`VMKq4E9P#8tR$x
zzwp0dkH%|$8DyDJW)USiHeXd>kDW8frcdd_Hw`5;B{+LsSZ~GD>^`+@)7E{!Wo9@W
zxZ4QWARS0|nu=1U!YrbcMs2~bH1>YK=j-`@0KY88TF;>iYTPE=j}~i_6?2sPrlsH(
zA1(a#oZY`-e)33Lsw~I@IWTRJR{NJD_qU$D8>mb_FqGWK&hk>=p%=%3aW*LC_Hbql
z!FxV3FQc#8p3-BqX!9LvKN=6yjS~g&7`gSjpM$j|$+vhKsS^_Mw1^p4rWt7DshW%b
zC~U!%+~VY3(>e2?KC-iO0KMT`bBCU!y}q~8yPx5QpyA~Ro?S;v?6@=iPwpYt;9cgb
zVx$tGwz>AOe0v_C*<i=Y{<ZRlMKB5fO6T-yo!*>(b9!^Y&FTH8vKbU|dOu=)0-WAY
zmd&^K&srx2r}qnGjojzK7y2RX--`i_kXg!W?fgK)W!{n$n?9=wdQ;e!HxLC(XPXUM
zxs0y^F^7IwCyN#4=|k!FJiotU4t;gX3ugKMZ_h;||BpRCf`|@uehIK`ZIC=;#tCo#
z(=b|?h`c2|GC92ppO1Y%+L_$47dtjd7{GyIP~=S(xA`;J#>_V?!%4&_VxLgR;>6=>
z=~n+q=HO`eE(N12)_GB(8nc)IJ^5Djh-Es4W$F_pyGE<|&|hVz`AuA*_I{=tmK@E9
z09?kH@;YnjkEK1@W`Vd}F}tw9?6Jm??G4wsMFr+_MF1H=tp8!!JZSv|S3?dZTF6!O
zucC2@f>wDz0`Kj}ZgQ~?E%*;#jrG2=pw*|Q#v=)(!gY)1-VRFp#!oE$bGg@D?P%SK
z24zMC+;`0p*2v(I7({PVO@pFg6p-K3FYOTWDWq0ysd^=EDN5y5v(|0Umfqg5P^<Ji
zYk=`5<uUa!>pf`@6*cd1LoO0b!)bdk(St22$zQv5@mFlN+|sfX-+IIpw&5)N%Ax^`
z15~(TJ~$`~z+As-ODSjC8_PIu)}>c<gIE;14Rt({yrHdI=?^Dgh)}wg$i&?vPIL#U
z&bvmEUj!n~vei<XgYfhZ0P~7={98r$v&T|P9s>CG0#9aizvW=o2+(0kLAPATwM!i|
zkD=j(-5aVJmZ9$eJh%QEhGy0>2@T60w2#aRZ$=^wI$=1Orp-TdPZk3FIr`uMeIRB<
z9p=v5Yw@d_^m+zQl%#{%NiOe_oK_Y15w6H(@(nD=j5xnba`WC~W0CXJicG)a+_;jj
zb~6#xr2VFo+4Xa)Ig$KH{Nm_Roe>kJAtFcHmRKk=Tb=W8iNlM9&ceo-TdvR`aOR8j
zSZ(%VFll%*pkrg(%{Fd4eqlc1l9OeVmey~)wG6%2leg0r6cint={G-wvC&)%Q4d#s
zocNT74a>$euE%A9@n=(m$r1L@<=G6c{(U|?k6n9^G{~`<aQfUqm0voup8&F9Jb>#T
z;-cY-2PZSMZP6EU<1|%j2fcSPHeK@Ta`1P=JkCT}y0D2s&X-By`uYO~XA1v510X2I
zBg1d{w2Q{>EZoNM$#7h3lol`dRUOPK(&G#Bv2cK+R+Ii7X@e}40|==7wE)Az_jFRI
z;WN}tLo<Emo4@j<w>CFvZQjdm!xfNWbv2_}-Ocj6b~lkoXyz8RCpab>OXyo}Qm(eG
z*A1HVK!f!e<<s+3kHD#Vs<}zu5;n)a0tm?8gY$!pXW$*QYsRf6oE{R!gEN8giR=sM
z;b`EuplM7*<2gv$UGM!fZYig(P_cVnuZTM(=-yNk|9R8auJPXPI(BK+=JYljQnGPy
zpfFwg{n)0ey+P+Cx0bv_YZ4!8lEZGJH@}?1T3gZTer2uZf1pFAif$nO64;TGqWatN
zYTJH;=YN9oW!?=+r<zt`Ue|?o?ACCRgKxgBpR-SfF0kkKB`kSz5=>R>B#(c4UVk`6
z!Hju>Z;r1m=s>?|{*s_<)5_&-hKW1g#aV+p)Dr3Jv@hOn9;Jl!IrGxdgcj>1)?MrC
z55PYSFupNz+r#xAHGy@w-Fm@Ue>QU>TA2T)r`~8Q$a_=dy;<zB<?Z@5Xnp9+R|K_1
zdGr<GIOS}kQXW}Yhf#x3WU7ir*<~OZWJoWd6Hj<##jJ<(HProfvOs7~q%H|s_wZG_
zpyeQo2u@Z3z>;o`>(POix53x?3+J4Lk<_gw0FW2)F=6xY#tX}J<%O~xJP4<sEZc3{
zY1=mSGLLwU#MT)m!h7o*TyDK$t5S%lgc2!mcQ`K+?XMg`sHd|=kO!UYMF~e#d)cc}
zTslf4nj(ZcjHXVi3UVMUi<R}6hvL_>Ftsjz@SL7_nXuWK-0dW`t_~OWDNrl*Jt<37
zeLN?^7(T|BKY38ZZ<t^0be9z`Q3nAW4<qKUxOiL}!L8G-sM_lExhP~Hinfq|`bj_?
zb66ePhF+1~zy=AHQ8Y8;8~o`UoaF<~EM-o$JB3ZuU9oeqn$SKS)3b}kVB3b-P^tCt
zRUpFuqH5mPDhM3%r+JN4Zp*{PnA@rLMi~J|UCh}|r+{<oG-CBg&9>&YZML2I*LcT_
zYtq^&a85rJOq^Fk&Wmk;vB0*Vu~!y2&YJ9dRuZG<S<i1Xl)1TxJ~e$<Xc0Qu)XNN@
zN4ep7#)%{I2FRBTE!L`VgBt|Gya9dzLTi9WGC<Nd47_1bd}woZcoVe3izA}*FhMzu
z2}3NVu%PL?rqM$TE-Y5mZ$%2pB4hh<V{%`WlM+Nind(3Yn(tN*3U~c`9<|<XS{41S
zU5eVlZ9^TbSzY>=8xP2-`Bd66)VDWfZtlB8993l;)?WUc&n}`Q0P4A9s$W9<R45V1
zerbgyRShSb+G>*2uR5Lw1lcqAZb=oL1yWbCNnm$I1Nbt+@PG&MT5I-9{+JuOby%^U
zJi`LDJ|4vJ=;#{iYcY5(SS&X;K8-~NYl(!M#WQGbqzyao*$gwcT;(P|;UOm*kHVkY
zk5+F^>bk%6;){~Ir{CNiVopYZ&bmR{Ih?hH`&(s??O<a<p)H|OdnSiwnY&tSZptvx
zmS|e}xQV0sudur+j2WPZ_yA0HaJ25+T3ps55%(n+Qk0PUYgianI&|&!4bK@@9G)}g
z(5gA(4s%BZ-AGZ$y^w6vIX|Y5yn1q`o=%VRBoOsC2S0%&J!A~s8|ArexQGW^lp}Fa
z;v_SnyVtE!Vn~d^_A}~h=SKV)nm#IY4lOKB4jCgaHw-~5auy%&F0ZY2`YPwC{W3+s
zz-qkX7%wkA6fotfvoPx?ZF&Kre+SmKhJxv8&Kg&X5cf$}*K&y<+nhdYjQsRbEb%Qx
zy5KEjgpHhL>2=`VCR4<0+SJ>-Fs_*fB6QgE6oWH8KUEP_ZO&yqrpEw7ksUMrzx*yx
zFdV>RFln?Tk&{a0&=#+Db1@#H<ozrszl@x$`#7l}2Ye!REZk_<p+O0!WoKuK{5+n-
z1Z}Je6e38FKoRSDn=r8j#4HXu|AJAEQcvV%-_KH_zG-s%i8;iPdAUg0L{|7m*@xrP
z)gJ4(G+iCGPo@esYjAoY$|T{*ck#g-Dm1SXRy<u(6{Z}cn#ic!<*@Wz9H={SBC_L1
zSC4Q~eNfkITlSzm5LSf|e9*lL?@@&_Y=uzk>JeJEeud4s3PZUH$#oXAClMBDU<Cz)
zUl=;ZSwk%BQP@W@QmTuO@WT9@8VQdyCbY=P2bumgsuaMu%X781;5cNvDJD_u)PF5t
zd!c@0Pbl&2>F~u7-3mH0#;hj0bcx19s|r5Kd7i>C1?D+|9xv8o+YF=WNyB&w*ytCN
z)nq17Y@uo1<t&d(;5>nO?J_TMkC4J`t!|&^mg_MdsLYdI>Ecl4xfx!o=8r0ozFU--
zf|K>pEbpTdWF~I&1gZDIL<;rtU$o0n3aH8pT<`1`0+%O7J>k8GSR$>uuZ262oKuv|
zdU4*%TvVqotL1Qkk_7cdJ(G`aslw9)v%j+pwW`3Z2O^5kDMSCSd6=9W3^;d8Lt1yo
z^^}+5>Z)Q4ADH<iFFx10k7b3Q$u2^1yDtIQpt*t|z_w2noS54MrkQhjA}fYf7kGvu
zKb09r_233gq}1FXl(MmZc17G*b4t6E`Qf~=x+F!-P~DVV<=OZux$)Yz_|vfLEbsa8
zJXgI|7vyY3fpPTNlqufpF1nG9uL{3qw4rnjT0Y*Uh*tei+NpE}yG)Fr@3xX7&~xEZ
zt>z_)>dlp$dvB<_r_dG?{@7xZSU06=>tUYoy2!r1Td%ditJCLHAuh$?;l!)305jKo
zflio{_q`Z)m(@CRwLh(F!I1q+$X;*^ncZ{9`Pyzem+7+{yX;lpf~Pa49fpuMG8l8J
z*Hl9-qUjomXpQ&<5s#&)p=6vLWhm39*&IYy$TUP}H4}i|>|s`H6<&WhYYM!1a47QC
zw{UH<20yag#`>jzz(a*o3oR=6gXqT~_@=nPNxg_Qp&`+|s~!2DsJ!7yjI{#U9o~%x
zliPID4Kt_SBy>|Z*}ECXjR#C-#{%;L@3r?~)ceq@e-Jk!2Z06|qWJ1Z+e|sns%Ct8
z9CtHUNko^r=~>Q4Fg+&7d)_rnya&_OcMOi;g#@^BQqv{AXl;9gvW}cD6Eind$%Nc-
zBX8#^8+xgw6sRF|-$S1h0V-(Q&w7Ge{CWLr+nb7Q=0MgqxwO>}<<cJ5GF5z#fY+h)
zEYSdZlIb_k98NnkZz(>LS=Wx-|L*2hfFid4ik4w+W}l;ltq4-p+;4b0;}&8VE}U^o
zaY5qk^u(UjBPXNe>LSx@DUAKJ(oEv0Y!xP2r+yJj9qL-k0fG8=?ezs?FdF<Qn!a_E
z8NPR4Yp8kX7%EmULd%0_USvbxhM8?zFxRsllpM|W`Z-w@a+Vo3SAGj{pTJWulpHz$
z*Tq!l$ZbWkEqM0e4ib5o@9L1Oa!9rdlZuCABc&vbV{9TV<~5DWL$bK-zlGAweLC^x
zq^9x+SvR?=D&)=*_-5|2DFW`W(dHp>#cf!50G({Z%00B)aBa}DvwyCeZUqP0!EVw`
z4lCE`W|>bsR&gVMH?*zyXL#bzs5RH}Hk>JZJleFmR3`4Axsw7`*3d}mRaxCU52llK
zGtxKoU#FW~Z!XhKH-@Kg&f~_Tb3QVwlo`lVCZtMfXqI6JqNHcm{RuC0bB#->Be<y+
zVXeW3O9*=K;Sdg9=UH_Bsig$=7xOrOB$+<*%$xGtgFy3&E|}Has_rYaoECG_vF;vU
zlC2%oXtm~S3YwABoh_A}s;XxuQN$ywJ!K+A=2{^Pw2|k;D$PAFH0NuMMzT9+zo(6C
zPtd}C@2Orqw~)<53e5==w)?Dkm4{T8272V)Wo2&n<pZyt{PsSwfVBPSqUT^<K_=40
zyu|bDy{vt!XL6oWQcN-bONz<<3KdA}3kk-Tl(Oq(<IB-=5&aG#9k?KYjvtA0?ZO-n
zB+Bt4L5?4ZaoJx|mu;7j<XZFQ$(<}y)^MoVE^i(wLycbPpN{^V2$WdS5i?Uon}^ow
z1uHtD-)xY#>aSRYE0>>VzVg+rJ8{6IxTkC-P`PZo0{&z;W%eWsJ3ATUxDTcC*Is>!
zYVC|#UT?;3qQuFTyhZ9vq-k51?2WczNj&3Kr}DHh29X#2%gzTk)UTS%tyd`$=vBM+
zAyttBWv^v=>;ll&r@$-tnqgm4ve<rA^xX#@DwbR!I={-COsueWOpUqQ%#ZZM{eZ%H
zo-b3hZq`5+s1x>W`{wGWyy20zMX<rU@dSy-C~Q{yuk9AWVtcdK3S#89R&Dgv-3D_x
zM5sq6e<}V?b=t=<F6DiB<yOC*y7AW+n47#CXiARlUCxt+y746cq>l5s$qvckLwZ_O
zwC-QguICUD?(Jw@Q?%;^R^5o;dyyHm2d_I$&_P$z6_I39(0SFpX?Oaj@AZr6a!<mf
z6SeGn0gS>(;4K7_Q*!IV=G4Y4a`uk&+282*oAlYc^}9QL_V@bb`>zrkqIKt>1ir*>
zJryW9@7zf!^2F~bMyn~7R<k2r`;C6TN!RYy?{4g;ZQ9O;Y=q+Ge&mY|3Zi!&$g{t>
zuX!do_NfUH?!IL0a43jt0B{F=PzzGAFtsz8xzrC+%A%9avcSCio{yTc0buFnbo?r_
ziie)15eS5c-oKii?A*@XlsZ297`$pYqALNSF;cw64XLBr_Kn+!`cht4qOMZ^u&B6S
zLb1P3FTwR*RdmIeLR(Qr<$2#wjj0Q+MSO_dlX~v%(vxfSfr!59yfpu{-8DJeKKWot
zDP>h+??$RbS*><=V`{n<Ew#yAA*(3{((S&?$f9`$2TyPF0*5DeyIrh<Gez^wR@Q1}
zB6e(Rn){yGGZQgG%EoHG;BK)Ra^K~)K_t<fMtQ229d-|G45JMd{VC3A`W*(!kGfdQ
zU(?cNj!PT{<JZjPF@Ey^IjlNNe=h!jwQpbG9Z<;`x$%(jO|Ts%|8eT9Xq+*<yg&$0
zOn^1vfwgHf-$izu^b3MoWL|rhKJv6U2Rv*BW{DokGGnuSTlk@?2ppOIcYo0izzO(1
z+1fn3@n8uA|6v{nO4g8#&L<EodLKSz_lfjW`>2_o_n3!xYGLVHv@I~V@sOr4qTAMK
z@)nv@CF@!4`uz^h=fP7W?FdgnI3J$pe)Yrf9AW$2ZpWT)YsxcM-@^l>0(T2r{aoTt
z`VK>~5ek@j@|VylfZ{ggwD7Bs{sCZQitaIg(kKh5!XKq|n6#<;-0fB{?vaHq?gWQ4
zxF0jPf49@)V6k#ORcL4{%x|$Aw!07}TZ^38n|O&MX#uF`;+IjlBp0%*ipSm7L3uIr
zrYNLh-4=JcU()IRjURW6@AO!w_YZZtU)|~cl}`8n>U4iYr~B(V-Cx`3exmN_cj_X3
z+vD}ype6Fq86fi(+YeLA;G{)md8+|eL@=q@4m^2lQ5Pq5H8jTV8T3Rrj@125ekPIh
zX}G^}Dp|xEHS)kvI<eb4^CnV4avFcg@RE9tI#3<I$DvKm&}DKhVXGiq)s+qPnS~~C
zJ^S;>lf~h5vIH$iRsi;ZR_hxA9T(QGn?fEE6?Ya)oq3QlgMFphNDssSL*#4;#D{*Y
z?`+uqIoGio+$OIs8v(cJv#xknH<_;Xcq1w^XXHuzacfaGXEujZ=-dSub^BKUt4LkX
zyCZ?G&S)j#sPvm6NkLCC@Z=scs37L@FtMAa%>y6NBHGNH?|CRkI#qr~Xm$4hsEOn&
zN6wx$E|pVH#qyf&cx<<-U`Z9j2=`u|DO}!rx2oX8<4W440+^tJBvDt(({1u!HKRHw
zSh21;(`!JeDN80^;xw+=^`-MvQ>N!C>MH2{R;K4Gx~P0>Qs1nCN?3XFRf+|OjI--Y
ztavafJ_!3?gnO^6{K}cdmNi4{e)AjEI0rIpySxfTKBU5u@e$~m7x0W)WbNn2w2D73
zs#24?v-|gZ@|N{;!6?b|V1fI3Q?|r?HTmIj98XPdIWD<55Dzk}Icq6h(Kt4_AAqjp
z+I~e+Y=;urXL!&yUU!WLl<bqX0SjfjKlBFo2*YKZ&@FS3J-c!sc#bVIgC3FYS7_u<
z6dhMBX8UG4Uz2NfE}8GZuHA0eEU~1K6}|Nxa`$B4+1Gx*NI@jBazp|uJ|HY$?)w}P
zCW!nEzfdow3%h@<i_$8O^{Ukzx@}+UJltY-5b!|fySlCpD63rj`t+ot<o+J<@T8-Y
z`@6?aNbV0Nj^MaH;Ah$|fz*VVi2X(J7TdTUpx@7sgIYwxR9)|^4ixA`LHZx|IWboc
z^9OgNEkw*jTaO<G;F1-#i<hkMPiVeLzdYZJ^p~s@ad4Dnb1OIMV#SOBw6!YUoAqS=
zI$6FmpUF+;el9u86tAEc$=uF>?Vml<FWdBIp&5h93W$@_p#Tym0su<)XJ!c-ORSj=
z1={H`OhtYBS{yXldSLu43xj0qL5aRf9daef)wS|Qz7AS1sO_Ho=(w@Ty$7U+7sdNS
zSkCVXCe0({ja5o*4}CZYY&-3G>Y|S6NV4rWcJ;MzRPZ79)Xreb@|@lG!q5^4R#8ch
zH4r5Kw6eB{ydVrE(PqsYDp4q?-?7#1dBvgCp~Li~r~k%^j$sxReriQT$m}-h0*x?|
z8FFYWGlV_ucZl0L4Ab>qb1{k$o1m~qpp;rk1)PabJE^~UR}cEZ7?LZAnX@^MTYK|O
z-909q8p#Yhl&DXh<FuI!HrnbE&qXo>s(#V;NEzcjS0W?Y*i#f=L;TL2cC!`Y4aX(E
zeg9!w!E+l*#jIsl5qqXOZj%jEG~(WHK2*CGvuhs0k8sq*_V^_AtsYVwz_%kig5@Cm
z^+rq1cp<@8*J5rQR?5iva=RG^J-O&IZ@~2qAFLj77y)p5RSxOtqz>nv)VR^~nP$vu
ztm}zvQ=TEk?0oK=1tWbF=n@|ZA_Ni#w_`;helZmVvaho&+vo{U!4S;Q%$+%?5QT*j
z>1oja;aKW+=HQi0@ff1i-OJP4CGpSfEUzloCoMb4kDM8M1Mz!3!sQHtm|abQ7B`%(
zDatNY*?FN0Yux7ct$+E4vpdJRAF)APYd%v54`?L(kUNslcVNE}1nrBdQ|!?5k&nT5
z{XQj4;aCMz=mTRD0gbc?b56ai@L=>Ph<+Z5FfYoqi$6AEWcnA<0*g4S!7ofYJ*3cb
z*l4D3rZSc3fYWcbiRMTTqW&OcJ(d|?WDnj$G{R*A;wkc5a0D7kI=d(Iwqje2yT9dP
z;ZwQ>M|H+i1O3C*O-c=JGYs5h0gOz5Q!Lw^rSGbH|3%~)hoT}5I$>_pL(;1Za8k!H
z|JK{zeV>ev)#<B)nbA1jeyAAUt$5dmoydpD-BnKNT2^6oz}6!__j@=@NVbu?Ra3})
za#l~sC+q<I>2s}SFT2kL)B&k;QZ;@nrN|s6g2%EtcsUQzev}pysFlakWo6O2SrU0j
zb*mJiYzc<kxq84z2gL$A+;Je$^~fU;5S_@;>FPokl5{DliMRw->4^aO(y}Thy~;uZ
zd<2kT6URRr5QQy9a4c)JxsoT4UqUcAsS6mJ1dUV;7xK;T?ku=acnST>jQ?JY^ybsY
zR<4cX^Ry#md2iHtc*n$$vv3_3YbOo>Qw|qh=>O|a$ViQ2R9)e$NMHwnc|E$3nP6*i
zW<AWxr>4XL?>QM1Yfy2MPid5a>|HDx%U42+tq>r$>#$2acy~La(<Uq+_NMt%a<zrh
zzqA8dWy-j-OlFn2XoC2O<u~VWDW*}u;KJ#mvUoWMIurkG&lbyBGwc?X8TS)RH@wu8
zOk_&@_C<8Fg<8bvn~UUt0!XuugIivg=?<pdLkgVwGx=u5^h1b)ZKF>6bkc3gHe*5x
zEoOhKHTwdWX3VGi{QY)s!TP*N`54&x#5b8H`e==sw_ak(m3_$@Ml-kUZ80(7vhMta
zFWIR9j!x=mItsuSOCVCFIw!e-o-;8yH)!W!0_UvcnIew%Q54m3>h5D*J2sh1uCRzv
zZW$;*Yc^4yMBU}cnqGW5ix>-NB|W|{ls>o6{mNa_WJ;R0mbCRkc(J<;FLqD7D2Erd
z7B7w_i_`-j<?v#5B(S>;FNFBvwEBe+?Q)?cc~(Fn8_e4(nIA%<{(_^12UjZ?bQE%D
zFf<XP0aixnK#r;kd>~{C?8M4mcX?4wW<t@}%2yN5cyao@gFz6WLNH*iL|bS?3`SbY
zoCGtW)@UZ&j7fhgQILr4#KYotc|uuXeMlZUM%!06b8Br8UAVQXfzlQb;h%XG*bVy@
zTK#kT(IXr@gG3Jr#s)&T63^JQjWML*Ql(V&s#QmV=DEwIzu27~RUS%D2$~0Z)^b!%
zj__Qh`h?PhWveYu_9=s1^aNc!*>N>j;*%j^s#E_Qx2Rq-e#^~WjTWtaywx#eoD`@>
zzvV3pIv6~BdsiF&zJe?z9S@%m@f=y(;}G%*!47O@08^O!%#xV+fuNYPpn%9IeQeJp
z^Kz!HO^?ww9g`X9G>?N$i{nf@4YEf--$--4$hrPSlArC4^xiYGsgwukD>zSBULuhT
zj^ox#d`%B2a_ft@Nbc@2>1WB^-6s8vRn*-^wA6ZFQJgUG{D3<3>#TC$w9jvHcTr+}
zXvUd+oqEx5zy})F59Shmpo$+K{*k(RaRN9+JQk_rumJPjCmMJgR^k3ZZ`|AKEsLOC
zjywz)behe8vXu=@Ccs(H7!4?}F^k|d$PsKe{&(xj<>^9iGhN>N$e&IcjR?Iqz}5YJ
z5|4gATI77WU91nQz_23qNu!UK^-I=U`kI-tQ<Li^f^KzDvK6m41&%{pbY^R}(AH>r
zzhP&}nFAdlMLFf0Hg`=f)gS_{1-vu2l~-QSx$Ha4LOZ-5UnK}i#P=e^F!UMcGuusi
z_~oVaP)r85Bdj14WJjW>wa6x?a;y}I<=~)~)mEff`^o7EFn68AV-b{?##IyoT_849
zg{;xa!QVLbV^j=SGg!+g8La=wa`8_R+v0!Zj+euc`v;XUQI5;0A9L7mYa3s{4lIge
zZ@BVN4b_>8{Y)&=t4<*9%K&nLEUG-lP&hc9dej0rqq-rD0vD7KzWG}?9w44AdBj=x
z7PLBZAYU;@QY6^9x;yB;J(GO}#EhLz<ZXPI0)Mc^2?Ed*R@G$s&4R!2s{R2$46F*N
zykB+{AGE_eeRiQocimT;z9?~bNelk$I5B4@`6rl;KX1+*I?Ka>waPV4Mw=gW?ST04
zp4$|SrTg9HP5yh<$WhH9^X!!rOUIWNwS201%Guiib!C%tTZTbp2dd8FX3#s!lY^Rk
zbFXU9G#|@bEBt65%+9x+Yi3y!)-U1?E_TljYVO>#i+lvl9>M4&H;w?E)58j@-4AQr
z-L(+sK`@4=J`iKT9}Nl#Ntt(m)d-$rE5;OZ^h@;3`m<dSb~!ryR!*0Sxgt|i`HHm}
z%Mp=7oce*_4brQ^_b32Wa&!04&L(m--p62+Cir3Ahi2?4aq3?Ik#`+na{|^kaXog|
z&|oXsUY^r)vf$xY;nY9QO|0&mB4#Pt^kHeVM^miwwfKRaSAq^0D2^S9jXRt%aU8;w
zp3i`8g(-qr?huS2)>NtU>WlFi#5W7C^W@6n92rEJ^x)jQ`bIzmqhIYLm(f><oGQ%p
zzm2*uqS(;Fwa&63U1~WB6L6O|nnDx_D9rh^R14THqJF9_{r48al00`%jOvDLQgs!L
z%xRH1kxu~IK}=SWM~5ge^L@E;0HM^mz)H!m^{E|(`Ia@#SR#w+>0<Fu|9%ig0}Urn
zrDR037fOCevfwlo2vo7UVTJJ?Kn{TNC=Xzn{!3_1L+Ge)=_>+cIm?E2LC1(x?#}tq
z?zMaAv**~F4})g^L||hEV$QN*UB<e@iFJ2=+i1Hn+S~*%;$Eg710dKDnpV#c;XYV4
zsX<iWEKs`Q|9O|>KY$|QzMcH6B;Bte#PNsv5KU#qw_<adGzEd@d==`quzu&{>yjUR
zrj}{Vw$bCOS}OUS0Ngm|aE4@7cik_YJo^r-%7ZW9%nU^e@!)AE;Xw-7Rx|w%cn_;t
z9&CpMvr|Q7(2LwAZ%_zOnf`BS!8Cd}VXol&>?De{jru}=j{O2vDsTY>yn7olTUa`o
zV%|3wRy5{N%p6APi!RHaNcna+KDRMYaG~{v{kjX%(4}5Yq0!c26?I?F>)XAIL4ErG
zu$onrwvk#X5YjA%&I_^Km+Aikv)=N*?F|(2)rBp821qF|%ZoqY*_>mUpFMjv7-<9C
zc^<ZsOoHL`)1C?Iv@p8&RMw2Fx_u?-ZvViNs`#PUo@9~Abelj8F(+)qh+pR%Yx;SK
z4S3jo_?EUg&>5OcZ#G9&v30{m{ScWU8q|5YOeYtZ$KJ-ftnN)MGB)o}6)TP6Q>K4!
zWsto+oY~KTE6KgE-6Ae(GJ^^U29!>Ug|KRfeLjokprLmR<F#EUY#&VWy5LC(ag2yG
zfjL{uYG?*sA=gYzrcZaO<1ops<2hSIZH0`=ryof5IA{GbY)6BZRO3{?s=>g=o);hU
z21ODSHRfe^5zTn>E!*5>mxlr?+Zs}CH7|})xbk^*WBP->Srqb%ECx+=QaTir2Q8&t
ztMw}etWUftBrrEq{lyn?8mAPPv9)J%WDlQUZ#_`<H<Y#J9jKCDgYB&uz}F$-DcvKO
zd!R;|0t6mAe^_93<}LwIIbSZJ0K-97PXE7{_$$g`qDL56NltESanbBrgh9bptJ(Gd
z05Z_Wb#Lx#ZMi48x5!Cd2+Ah69!Q)a8o?^$%&r!3Ne@)?<DDir!paHlrkw*Kbx8p?
zeucGwP>?Byx&O-C@SZsPW!OEs{rU|OxhtAgw`;hn-xzbEjRIV#brJ!Bn`odl*DsKc
z4u$AY=;F{N3_ZJw!C5@1$xL01$Td)v7gKq)6p~E0o$GUz>x$?QsvY0%LbXua@<7{q
z0wpMZ0zF{-o#4FojeV_}qwIyYwHfW}j|dD>2}qNj^N;43FB2c8^$1(59LA<T>*@TO
zG=y5fgh<DJ5XzJ^s!@6RLaJ;HpEAI;&&zhS-AijfWTRcH80@fuN>=Ghgc(dHxLOg-
z$y~(=8tREla@>zULL`$aYovoHQ4O-MV(E}kh9V_q4FUs%biCw<z7>rK7!aC+AS@p5
zs@xB*BXQs;jFWnD&jC*ANNSuhu)s-Ot*UufoE{e>K*iiA@eqsBl=5@3gWpFWiMby~
zGf$RDAyIo(dSC9};2r73IoF#px{()-jsL7q^>m!K-qW(k(aT~Um0L-c3j+1w!<tQx
zXFIL0`>g+QwLZ1osv@Sb9PliFFz)?;b`*1;QP13G%JGFtCq<Fmq`armjhxxj02TU?
zGrJcCK93*)(Yb^_Bi_W+vT?CY9eOE&)V8$@v;9op?sWo`cK6u4j$g?~^J+Zb^r5vU
z;pN9lEDjHR!mh-OrZ??(KK;CUBfIpv+I9uz1A3)^%fW)g{hY~(-_*XA&@3A1O*HvJ
znbiT)gE8XX&lAo3-Ta2Ay4co<GKy|#+{J<iSH9X1s!Wwx3BUewil-;YyGtE7PaU9^
z6uu9Py&qGGI_IPuDwCgCVXn`0Yml3xcvfjv^^Xcd?p<YND#)y8M9E}dU>b1mO84W}
zwY8boR&%+WCgyaZ36czAb3nHWBnQw|Ry$7f&^O5!PQRe+9@`qIOqm=rTWxB8150(A
z$rS0#nMWI11#Dt&wFqv$!g{V(^)u;_mNo16mbI+oO#cVo5tVI?%W0Y;>=w<LxEU(Q
zz^cs9??iufjXMm8=S3y192|7+n25>(F7_dQh+y+Pc;OBXX7|!XYj^L^hu_c#k6!y7
z*#DaCz>nKHAS|k~9S8$X^}u!s_!A7rG+-Q&Rd+m?#GXY2^=l072I9u+<@b6~=weN?
zoGE2m=>v~*>R<GSF>3K6x^llD7sBl}Z~zx~mCd)Wz4Ql>%=1-%+Bx(<w2xBf(DRGG
zjy!7DvzjVZ&@|3L^x>pP;i<5CEjtd2bjgGQEWSS3jqP;r2d3vi_L!NTELx&~kfL4i
z2=uga?m*_+ncWtrzvJBf60f{$MDtI*LWXcUJ&FVi)ySRos{pkq!6;{emk=Sw+{pvN
zS#Vx4Ne+Vp)+Ugd*+f27Tqx6j+N+o{)-nCpb8%k8{VM8IuT3=~*ASnn|A7$Ziq`Y}
z`G-bW3<&Sp*LvCIkg&M5S02L>wf#<-1GQl@dnxUy<Txp3|5bxGh3t*UP5#P6Az4m%
zZp#L5AsYB6W}T-k%P>7wm~)`s;ng}h;=T`wY#HIvIlRT$qOXT%E!Da)m#{TtiS<e|
zPc>AoP8@}jR%|ndY%%Y>YHjB!Y!ocYYWUX*&IqrqeAk)#M;>99BrfWJkh{s-R5>7V
zKefMK)G|LeG`m5OTQoXhvqXpXST0fboeE+4RA6)>(huaH9f*p?4h!Yj-SFH?IHT(^
zsk|K#++h`DEiQjyfR`u0c;mzs8dvPeS)^vk=}QD=$WuIf9T$1}yw4H*;vVm+`@JPb
zK1oT6?5J-s_u;-dG5`(NrMni=6n0<uy{HbO^a;;fIIm@|K@HcT3HTlx28^<nQTlqP
ze4_|ka0XtCT7RSLF^vzkC}7n%32idNaeZMC#H}TDi8aojZfE<_vQct>at`fE^rBMc
zfaNuWt%;Nkc_O`!a7)>j7`7I+aEMrPpk1ba6#|`k8L!XW++-i|mQI)jU^fT1sKny;
zI(&*D9NFM5|1-ONegmJi)q&a7W8V@T#s|%TGWWOy>2CyEk*=bZo`?@W=Wga15GW_S
z!F(K(R&13tZ9X>nnD8Xx5(03DAe0_W(Ew`A5i~FHzO7ZAW(*_Y#IyHtWfHH*9Kkre
z^L4(x)b7q9{@B1LI?YoOCh}2G{swcWYL&a+$(|RBaVRW8TpwyL7DSnb7&?)r;mIgU
z38}uU<iqCPDswMStW|28llqk^(PATeX#qPWX_z$!I5(NA@y>ErV|ctGJrX1St%dGd
zcaMztS!=}qkX>%}Z;p;-jyUV(02Y#kjpvdgtA@;qA*EKVDgb37veU-^rCCS}Smtl@
zzeGteI=0#A_mi4LQpd_so$;TenZW`l^*;R?i~T4yf;BQ0Z;-@VTJDAkv}yZsRReZ=
zw$PTPZS)h9mECTVgU4oMALO_ApRq>;E31QvyT(@Topgu4U+APH=YjstLQ7|?Tv;yS
zUc$VT>eFE6ED`d)t`5t4^cfiVl)_1s!&X!txyx>#7FLDReP%P?rLww~f$ds8eYK8D
zT27@3<`;qf1_)8nEC6jq(M@L02d%BLApKL5f$S5j+~=gWfR%P*Ek~DdJ&Ju%*s{jg
z%kWkK3#`*ZKJ4ZJBkcIvc1n*dV%+?HS+H_6Hj}$}=551NtbLp^Dem!?0R{y&BZ}8Q
zz9-)OIDKCoteS&y9stAyKtih*3mOrp{!gH+w@nbDpdA<AA!%`Dnk|i?Ju5l0SN~I6
ziFOzCeNjt;@S<t!asJePM8ld<C*@xiCgh8gx>oc}Cg!^uk6)YJOjG(UmKn`H%mwVj
zybTBEAw>>$>Xp%1VFS^XZq>|TbkcmlHp*k}n=#f--*6_<O0YBS#|&U+W;HuA*OygQ
zyQ|qW)g+hJu#;N@k|!{X?Xd<2y96dc{#Y7wFQW-If;r8|{{uN4lXzV-%JwUjOFS76
z<F*QL<sfA(PX0XE5!RPbN7MG>DjMlM+b0Kcn|lv(*YBYzP}7;cg9~psPU=d)7tIVU
z0zHLB<kPwV0}?Bo!N}grcsNJ19l!B#JyIP5$(&_h5EEloiO^CD`+jP)+v|RNq4Xiz
z67`q)t?vo-;y=Z`$^(F`a(n!jH=*`W#hlSpkr>XlQ&Ft)+eAZl824@KAy52^RHAv{
z7sBAIh?K4>%)UZd5AW#^!UuikgwgK8tRhZndp%YOM7_O|?0CKu{fpq)RN3A6v$i=%
zYS)?{Bf`FS8oI-9==d@7VwlG<D{xG=Tdeo;Sf;Qz!do_GIC9tM$G??hD2IOgnsZl6
zQ=5kTstbjpIGu~U4J$u>jN+9jC_=?XE0(5jEY*=_Q-H)BNlqJ3kT|^M93P&NCnA-j
z2i$x*5nHMddO3Agcy@YfY0$jB9{EmTC=%}~`hTqJ)m8SyRS)aGv;}*Ta}g_^k0-65
z0MHp-uCVx1qg_Wcp&N)Q|7X?+N07}KELX0~t1r=SF{YJr9U^*Z2_v;}Z*w^fa&}+k
z7vMx|-)Lq~ik_7#J&Gzb_px|t+^dTfTa0FsZC+D8eImcPUPMXB24!xp?yIlzih&_S
zVNT}gp`8!dpm}&ro*R{nFdn`1(?~?w{kD<kFsy6;I{&~km`Y11fweDtehzcgV!9tW
z;5V6nF=E9WXg0UeamF6MLAi8beW>x9%xD1wHqG;^(Idrd{<hL9SFI{S>7KTlKiCOh
zt#Yg2^XA)THI-N#b$>1f&Gut1>*NWHwcUz7&yu;8jcwyu#Hws<dD*O7<?SDYM#9*Z
zzk-dVVw-PD%>3*z%>LrtaMRBsnbDigEZbZhaIXkPh^|->k+;id<~Lq9OikT3WQ$rp
z8<rXIcZ9XIrFkG1{R_bupg`rsV>>i{ATztU<snNK<*7~=icp-0Hv4yc{Pd;mrpHtB
zSC9OE+GLCTlvDZFq)33a^ik>y9010I6zx*V4tv>|{u|-pQj?42FT|b<N3J@UV#bxq
z6ch1W&}4f2(EO1>CU<v9bPrduJ4U_`s6gow9Wj#T{{(<!THwa8KdYoErQ;ah+9Dd<
z!8g-rgBX>j?ponNrvIuYZG~(%_t}{h1~@4K?~1{e4UkVuZNx1svyzeaZL8YWt7hd(
zYkb(i<T3dSrT<SPnt+7c&CAQB+DgW#|AZDz3wTYmS@^A`V^ODJL^oV=cXJFRu(R;I
zKw?`gK#Z;}<{<_GO5Lw{w+br?0+bXjx>hH*WWqlM{Ysiy#B}>y>Jyys{K;@zD;Hb(
zIKY=DfHB-mZQuaJX^U<Ufq_oFv>5ZEMy%mt9iX~615h3sSal?gv*qgqo8qe@**xo}
z;SGoc*7!+$s#aH(@T!)ABg!K32(mGL{Wh&bW346Kz<eTZe@jYfLEAF8bAH@JtH9?L
z;3IWL6P>5d+^N3ITsfJid3!dPW9^ixy;5+&ZZgbdwaAbUwQn`wZ^cUbn4hNc0kf}h
zUu${*fsxBn;v$!VcA5TTe7O;$xs;9<`9xRm5E>@H3HajBoSx`)fa>&Cbl`-sN8Ypl
zpnh{Ky)}<hX)XZ!XXd4(YL2NtTdmt5EnHxy-`q&e+2iO|yMATmajo%VU(#NIWeb{N
z^Yxuprag+sfJG+75A_6^JXLxFgeKk~+PO@4YZ5E=A#{8BJ8l)I+>!=RT%X3=aY6G3
zG-OiEX${cUQ9wvBPRngNU$cn*HyrMjuE(qAu5ejzQ^yx7bCQ;OTO8CCS}*-4S%5{G
zp@hKTk6C7{Lm}Rv;I+1_^!S~a&MB5j`uW0+hTRpL;}Ndt-{@=!7dd*~mN(2_PZmDP
z2j(AX5$lA;>nO`84JLhN1PhlaItDKpAw)7T#aeX~#jykNi13A?3Z-oP3H=TLdP@5k
z5ft?`*QHzwvZir7nhYVPTrXmT`3Lt<DQ+K8(M-yQ*U$pu(c}8!)?+=p-(}V&{G|VW
zyV(h(ls~WjD!?o(9|_3$Xg(jwoRK<$51?UA{ZtIPB2YWjF-_hV=EbG$bNdJmw$8#-
znI<w*yI(G#&g{o|IOBz~Z}|kd`(W<Uf3mP3KEa$8Ds)oCAVV%5h&n!xvN)N%2OZUr
z<)Nj2k<9I7M!)WIaXa2@)?@zB7m<vJNn=t|;$f%$3Kj!a&%3CqyHkGw5vHudvE7u=
zVM{;;^GvOI25%|=QW%uYF4nqgc#Vw75vtI8I{B!r0uioaqvYPc?4XSX(`1dVRUcxR
zN6Km`st05AAp0SIJi6&|!#(l={sQW8Da9<2tmS45H|Wf*&z6nn%37=JZ>nqtzvi7S
z7Jp0Wh-wccrb?h46V03hEqgV>p1fOB)=nc=%Qb}V)tdPtSt69r*hhEShKPj<S>yvo
zS{n_lRwk*gca=@1=BRrCl<}^zQCtg6$MB$-d+DB`ITw_KW{ib=T7mCR7ADTDqku6)
z-a4$CMjx)$XV{zyffJYzc!Qx`@8p1E4-5Rvy06@B<7-LU&h#(9fnJFBFAhLPh`gm)
zu5Vl<C`O#H2P4Tr-mx?DXahs@4>M^brJBaID$LDf-K^1#3<9<aE=ueL70lp5+R%6_
zKcrPY&t^4FoCMJk9&KJ@2&z!I$DGuq!Ul?$0uqZcnf`-U(QA5Z8%saw^&nkhle^j^
zduOeU1U8uqpZD--nM~v_U@k5wV6FX=JE|%av;!@X<ldv5S%2mk*3^R{Hb>PhB@8*h
zuIyIi;i+tE(EH64cY5Dmww7P>zd204n(rc+$sh#g;z;Fp&aB})nZc}*g;np|cd4rP
zUNbfK#V_m^IL%6giB!Jq%sQSYSSJJM;;DUw1qFjnb5h^(D}cb4)xL&EyRq~mWgFCO
z*0K6y{z9!<F#n5msN$nkyvp3+KmH&4*qgejyG_iY7$#BE`_pJ(8(WGoCv3AJj<J+j
zFs`jw=dT+~GL_ls2S+eXMJvB`ZeOn+iNhxwOCyzg6CX&pz{UVAt-;rg=Ed?k_bh?1
zQ3yER{LjZ&As34owBZa0Q3W0_1XhYnOF>gX2~Fl^9-A_5WNEj?ra3VZNI0p#iaf8Q
z?(T38JQl_i1<X8gJBl2f?R4wcGW$J%*dS`)@x5slgFNX>%sJ*x235P=t@vRxrk}*T
zR5NegF5sTapp&{?c1VuGcnKSk@CQ;u?#AMxe34J=^sp3YnnQhTEw?VpJ%dyvv^|Im
za^X3tE_#w2#9@%sQakx6OHZu!j;05m7q>9a!hW~t13?soD|{zX=atigQu_c35cLCZ
z4D40rB(I{jX!<#0!HHmnWRFofXbR?eh8>;fvN~9LT3;)tWcpcM%v0>Hg8`Ut)pzxF
zG<QIvub=18Nu~K%ISu^=l#YW$y^Yc=>PFo5JzP~p(OkteaL!jq_&UTTn!FKGCA}{_
zvM;M!Wi+&6=J!wZ(=ED9J*jvxni<J(tIN$ZXL+pgdZwDG;kaq)w|r!031yP@YcL|c
zFHB|?mh%c3PUYgkb_l&-IlWL2=HPK^mF`Pvc5lS~&3!w>q}g0uZ5mhDq#pH;TljI1
z1D#hccwMWjVtC+5XiZiR2xQYVnv*|l-JsyJE2ZyX*nNI8_F#`wgF2SvRq-pa)jYL8
z^ov}YT8!s&Bc1Er-!TNh@HmCc4V>SE1I_2!9%X_aNeF3E2c7zhM5<@5lrWQLqhxWW
z_(niwtn}x-6@db4n)l@*<iQFWRB9W}%RSaso~{ZEEXCIBL9l9x((^nxmn+DECd#Rw
zWeEnV3H^M8;){98+WEp9Jk-uo>S_v@wa?k%rS;u>3M6+Q>ZINTn0%#s#OU`YvpN;?
zM=I0q7p-j?jRccbjI9|che-bzYBv)%?XxaL+o3PguQT03KM_j`6EtZrx`00}&b^Sr
zwbb+*OpJm?c3Yg}9N-Ryat_8WfjkWLkuy@a&a8CX@UsF8BWq}BAbSZU$**_D<PtD$
zs$Kn6#bil!7Q$tO`@LU<OIsJw)B_k?x$44J)gtskd|Vdr6LYGU*IHqsqVWQT`Qa*d
zv9x*VYr1xWP~#NfHD8m>EWG~^iK`ITo%%{q)O2B4gd-G-cBss*4<qjFW&hBnyV{v?
zy{H8^RBX->i3Hm7^h(S1Jo~D!Z1FL+?q|#9(PbGVnm(0_4$`<Tx<2WBVb|K*IhW&@
zdjoTt0MAFG!PQ&x;Xb#4imVspovMjNw3`Q_QIfhcFO;oRL#{O2N6PwAB$j!$tdVCv
z9GzvLdr=wsZH>EGB#nJAs}uZvsi!X=L^OMex~Y4ab?eMv{UW{saF6;$%tEWMJ1J@L
z9gF<YFS06E1o;ox6md)xw+PyzntH#?gMOL%>7r@QvW=3hG#Z@`@|SwRG*^}Kh#}RM
z5c`MIC?k$77#nuaE{oOOZU-xYY0mL96K1J2Qj`#)P3E{cgHL2PcgjJbT^qv8h+a4g
z|Gb%>P;z&0(m{)k<dc~5aN~qQs1(cAlOoP8f|C)nJgzwNJtkAjPv6*M7nTQPH+Y-U
zDIOOTSWyOoUlVvG+`Ey@_c??AYpm<FGh-TUrnXXQZ1TH<oVhbtltMO~E#R(leX~r&
zrhT+c0-Qb|r|I6IW$lf5Enh~<{ygTxs{^o@atkbxvgry|<TinbZli76Zr1tesmae4
z*&4$>{PTfs>uIhk(IE5A^V)Xv%K^oLmbcpIR}Nsd!@BWSNnu&`Y4$~lf6qD@Z`ntE
z1x<u~O-G^F=6rjAF!^??%?KAZQ#D>y97$mXRxon)Gd;K%sxtLQWatT!XE^Hai1uC+
z4K&t3YHlAxmDb#wTuzpf*CxE4FZ_JjF8rLsB<F;md*96oKiT~V*XCXf13tqjq60pE
zC^4t<T)i(h<^ENv`LV8$$`5G3-S9akYMz}(|B%j8R#qpj&5X&tL4?=3sr$%oVzgr_
z*7@T>xO``Nk65}2`EA4WGuvgiuM!`%ci-+Ni#SPkI|U@kb${bKZQVbU_AH&O58I}y
zARF&m!pAqmmqQSHzcg0r8c^y&;+ihloVwiw?+9_2v)e2#&VyDqRy3ld4;P}2QNS%G
zWRBoK+vCg)v<6}9n^oFF=?9VYpfYQzFi$@%SV$Rgt09~aze46yDn==vdy<vz%I#fF
z;b7m%LP;EW?f-flc$Brk_#C)JT7_$}iWU#wp`#xyf|Z_3`+{{av{<GJws$=twP=EP
zrpI&VK>V3=n_BbP4fM`eh^*YIu2ki^Qml(?F&Jv@qZ4{pn|n7#7oLumy%0GRr?ht7
zv#KWWZPsPtbNqhS2A|nx@5cv2_-=EZNg$IN_x=kk?{fO0(1R_ot6ZPjx|3ZZ;hB-)
z+gzl$>t^xaz4K%!iDB5ze7chjQMuVcS844YJ=jDzSu2Y<si&-Pz(mO8VtIJQiw?Gu
zdswO#G`^@MMm66)V^SpXXqr_J_yTfFBL2%#84@If44{Bs{KLM0BXX_6X2B*2ZPgJw
z?a!zb11K@APXbH3WWM#UN=*w_S&m<UMpMhiSW=5vKT!);%R<F#tz8itql1r*`5nX0
zZpSHJYp2+*FP*Lvs#Rr2+d$WBw9$RRA(HXQN5&%`rVp{2B=mkm13yGt>K|bjEBmHg
z{vT8y-4$)(5>wf1Ucfuvu0oGkqqwmIty^XPE3hylU|#$d{d<QB?0R;a;k{-SU&*4u
zjDOuIB*erU6UkRq<Af8cr^Ni2Z%uF74RgzCT@l*#ZWyUZL=#_Va(A_w1KYaQtO?@{
za@z^*4Lpq|^@9y~_6)N`Zk;$fW&5kP7syZJQ#ZISv$-OBEYH<E9FYEgXBSP5x=ho@
z-jTx<V7W)#@XOpm$(x=J6d*>8(a<6q594Et;cPw`<!O@_XP+eard<M{zwf1S7+$AB
z>z`20?}>t>v@d|G?E+xguyvQ|e;o*>FZIcG97g?5I>_?bQ~5;Q=qvb+vJG)J03ITF
znOfdtROTOio;?M^(Z0UvwWRYO(<iGfWGLeGJ^NR{V#mw-zp!kFcN}Zhf$Uh!(D+8-
z4BF0Kj-xo3QDrN$9wm<me{&RP*G2~8{>jc|b`ltjd6Y)nTqlC<-(7F<-s|K|Kq6aC
zac>qZ-OCQ6fatLK_^<SQ7r`~2we@OZ70S%wqy4~qdA&aufJJL1XWX8mb{ox|>pe1)
z-Mu}puX!_+{g<?GLCjgW#-Ge-q;S&AjO61VoSA$0#+*gpH2P9nwG-{}0C$D|iTG^x
zZU}t-{bl-c+TZen-$4JZJ^6x)M)J%C3v6(R;U)qdWR1_chq<<4>ne6K>{XVZ$kuLC
zS>MOYMNFCEK{$70xI@egk+KrP;Crd#pxkQdla$ZjKMrx-&bEO05le>TtTlC?M3W>Y
zNPWTw%S!lTUSnzItoC<PBVnnl-E0_xJ=<_cI<t0BD2zQPQ_TsOKX2ubTcmP>Gj}tO
zBbkv|4q#`_K8jR?&TUGY>&XLRoLc@f2h<Mhc7RiVGW9wOBRwOT*nvkyDqrCs8*j%Z
zi52QB9FNNVk#~ClYT?_u960_!&KPl(jzCe~uEun+>+O*HQn+g^Y0~Z_pWF5`BbDnz
z&Yv1X$M3GLe0{>nNMDH)-PdA)UGd{W*m?-1jVXXc^P6+20@~!eYPkboaKpZ20)Fq4
zX8~5KoOU2FV5Sg-Msiy73VEcp?Sq>kkL_#Aa|<Y`yF)%-4kkA%rf;kH8_3eBX|Fyl
zBy?Ok3?2#K5pdZ~H~0O8MSUKx=%UKiubZ5tFV5|9s?R3czVY`o%tmH2dwg4Y;ghyD
zI3LSigjvd41iI1LFx6^ZdHWY_d!ocw52t@!oW2}a3$}$7P&joBGvvM>W}|^DZL5Cn
z+}Rke+&AfF_WCBo(x=1%E%9qP$V$i|a|bYxZnJ#mz}jJfE{XGTj2cEri8Y}>c0zS^
z<(^4ZU<*SGd=dZU&LP1b@rbi<$d8?c6HAj#fxwP%U`@F4LnkG?Qp~oWyWdVYBwV?F
zQjb``u;LSsdHc~wXytjv2rH*?ME)5-Cn>2H|0AVA^377PTuZtb8b-csNk+XA>GbfE
zG82BB-22hQf2j5+*ffj<vhjy!R@M&dT9~+RXXt<)i9a|C&pVo&AAzqX{4R{&RK2rs
zO0U3P=e8*Tmj}-5@m!>*92RodX{iPFf_+WZdZDSYcJ6bya27@ZJ@&A%?m@UF2eN2)
zL%`f&LHG4&;1&0l(wKW)i95V3djh5H#&z}>uDtoy{6v&^@XTz8vDp3VSY}dHXk;vN
zW5nBRl0!jxBz+^tg4<$#As$KXC15&o1b#a=mQFY_yB)aZ^sCD2N}XAp=RqvFB`B=h
z8gf6E`<1B#H4t>-?{OY3mfY+NOg>Jr#4G9HaKVW*G|&vCh>izPY6165;5p_ekTMKg
zdiIb+ouDaw#H;A{G{Jzc!vXV_s^;W;YSX{f$w%}fo9{1Bd&`a_@R}L)sQt!CU1C8O
zE<4g)KDNm?cm+)->yZ7#{r!A>2P-UT+ks6SBcvd$dMCUfg?Y=H=16Mw;OXuE+g#a1
z<X<e#to^#L*{?IIR9GLuq%e=0FrX{UgQ>R<WdqL3_u}=3{I1?&iS15Bny9s*TsE0i
z%oSAD%8SG;re3?Q4|&*w$UEW6tI9?s@Hs{f25SinW4_8&huO)xtJ+YT_@R`Wg>;__
zFXD){jw0!*;)-?nsbH&#%k{Ck6lf6qqFz%)e42yeKWF-3gd4cev*ul^k7usbP&)uh
zOwQ65>qN52bhG`}er<fA?fYlue6N4;_h(Km8^Pq<n82p+S;bDVN5Pj)6px+ff4>S!
zkmDQ^DeTvAh+oG$ssrQKjfvMZ%FoQ3pb8au8!dmKcQ*RxXXgC}eHe==FhoSt>b{n|
z{XfLL34B!5`S_i{2!lj#)F82<M2!jsYp9@%V$F~VOf*Oo5UQvsN^M<=l3^(V!7Oll
zJBoF0ZMD1B*6s>uF<}c(7X(GzalhlB;06(u{J+n0?wz?4g3|u__T}>-bC+|^dCs$)
z=RD^*&oS|Lhf()q{BL*P5XM2$#U{1XrZN+wpZ@C$FIMk8jB@5H6!C(1DR~<u-I-E^
zm+cyLYpT07P~CQn0DqoUovH5UIt|g<sHjMrbWg~<p2utV=kzxaUgeMP%s;E_&vk{s
zFrS#xt;{Cb6f+{M-6^8uGE`pAGqnW-*Uj$f2%f#Fv3cf+oFxY>^DyD>5>O%3)%KNP
zqHxU4(d?!$vv1V>)xBc=^o#C%ImU#3)nplKWX5(St|h;7-(N>ftdwUql&yfCQs_a&
zK=hxJu*TdfN~P~sG)4b;u{`+>)H4PD5kS>Zl%uJo;2<SIjmlrD&ye`u8VJRR^cf<7
z2D%{iW5Ly;V6;x|_@swPfUfyl#SW5?9CSSHiW~u5$Scu%4W;E=VQvlMM=T(3ZMV!l
z{2q^^Dw&<iQngsn%gQN2G|dzweuP^rOs8s-Ee%41GpK>#he<>Kblt4{a)~=l#>gI~
zg=lQ3G{$@l&n}kFA4==wmzRYU6E6d%p<GRntD%fR<-&%=(ZvR`ZK5vwxtEARK6y)h
z+it626BV#9W;OOQHHU;L#1r#5Hm}jV=Jc0Q&M7!SJhNfj&xL6c&qa5Hj(jY^{%QON
zd9{7{Deq}Dd`g{O!5xOXZj~6q`w6ohPfGb2thtP4nPcS8=66HZL%V2x?)NozrX}A0
zgR02mR>N$7pt4Yx+8*`o1OuD_aCN&#LwG4Kpam}9?Es13yJNF(HcsHJbmk_KgyAOv
zEg_xj#@XXhR@;jSsZ4d>5_!sBlYUtFM9Mczp?;ZtkcW#<6?NlY{}2M(N<@|T-h|qj
z5x{Evg%qE^QrIIC5TeJVh(F((Kvz05CNbg|FM_NBa}ZLiP@^P<4!+UoC#&IRfUzEq
zm0lLb?ba|CxKTb+g%@N)uwPj;zcr1!831uM1EcSY`p!Re#!&*8UcxP5E_W*Ak$DSp
zfiN^sDS%Qh$+UX=?%9w3E}vq|sbIabni>uk(gPuDbH)h(q+M%Euaa3$-0kUWNL=~~
zSRJ)enwh*g{nNcmn>7iR@ZVFYmcjWW<beJVjoZevDUfwUSKMXQwC|%FUsNx-WnVNu
zz(m*E)q^GrPs0Va={$Ojr|mw(6HznD+<dk0uUXYnB&B7?j{C!(1*be}f9h690wgsC
zr?Vq|Fbr0RLu~RE_#$y!wKJGK0mS#~penuz#!%t92k8`83A>fjXF+X-Jrb5N5Hcpe
zn-3s*UYptknFFKA&oY0j2s9dIf@G6LekF<>qmqSU5-a2=9J3IJqABGI5oh;n04idR
zMm|B9R7zx^uo`6o2Vg^CRB0qI3Xht+TNirSy`{->+;TdhzDJ&@4v|&f0ZPqP(m7Qu
z<+`@}UC~go$g3V=2#jug7pDTpnwvb)tWm76hjTI#VPf^mvBu8a&bg8aSD2v~SJbWe
z2A38BzbKiVKLLA5vwpcmbs8Nagw}LMK#7Ywn<`g@65uvWNM0s&q1j}i=r)|5yqu`Y
zObi-WO;bde*C*4OYS!+&vL1>TR6CP~%HHd)lM1T`Oe$+mvF8|P$5kTwmz9PWR+n}+
z_S>k)wrP)yPL`f16n}av8>4j9g!l>PB)2aVWo$g8_As{fmgZCTx@Xc!qfhL&(u{;e
zE>^I03UQB<;j`M|_@1@37gV3dq6N5vkLzcL(PuV@AULr*muK-X;|3wn>_Z02<d74D
zwVT~<5!NOM+i@rE0f>quwWnlu3$RAM(RM>wh{jAHH2<p7?%ID=c4G|I?up_F63l!m
zN`<2RR5A9GNb-1XkrPhc!wUr@@kpwL>qRJ=2@zaB3F58Q)h=C;*r!7GT7cl$L`HzK
z1sK3Ul*RFU$K5IxSGeC`vrXzdq5}Xr>H$r)$cn_foXC^(<MQrUuP$gfH2u2Ns#lxc
z$L}&d4tXEbgZ6Ywhj>Aau~i!ziT*@}>|*FFwl!!M9zm9J$L%ohInA&^qhXZe=s}tG
z!0(FN0#BLMp2j1jI-n|7?}miw;^AjmR~b_HG*8=;nGZKoxx6VB1}!wBF6u+<&i8OP
z!K1Z55GwQ#ASBe8dA7V<gonnP<&0z97j@%a{m5?FFz}j2LBV5XdH{|Z{m;9y9;N^$
zMyou?SV}!rT}KvH4H$_AiM`O~o|dUJ@c_%Oi8;E1K<Um(2|(7up8yW=HG$F+pFCw|
z0l>Lk>^S&UImtYG7<q+&arbPf<GnQ9&M2P5U=)r}AvXh|G=<y}*})W++_rL0)JJjp
z7jz`O(0%!iptAPt*D+DMZ3zp%j10X#Mi7<>t1$;H4`@dCCcaqc$3N_(cf>s=%|nP#
zX<Rc;m*^Xz(PDYQzXJ{Z<Qx+rpe45@rm(S;1URiVL<xCY=6-ewnud74ncXpk&xR{^
zZnQVEJ}MMoLhOgNcSHM^U$DY0kPc<pRrSC2CoDB4dlg83bX}}|Ye`OjiZfu6(&YNm
z0y-oyHVQ_8TN?zUl|}+!$RJdtX@?U6MhRdvLdA?dtnIU+CGF4u3+?xl>-w!_IqiEr
z=hZ&r^I#93eAC58V2QgHJ(s~)pIlIp${?s^fcnC1K^BnlItcIMtd(e-?|+m29y^dS
zRp~FFqh@pr?C0(u1ph+t7{GKV1V3EB&k{TXzpf4>d+jIie+9j<;yrr%Y**kmTpU2+
zbF>kFq7!=Gc56p^tAjt;YvP~21b-eLl-`|*4R{ebIUq~sJhSK_x=w{kxyoRXf(1Sk
z^mA8U6o9{XF8rNf@!4DU0{@R51pfbD<^RG!N6rS#0YY@rkpemrV27;yd-V9jAOBbM
zfOY|T3=Vc<0YH9vH!8`N+o}F|;}5{EcHG|e*IxL^{qw{CD!b;w&<Rhs-0a)W=h?fK
zu#An>v#psm3!T=gYjXZpnOz6eSc68g%S`U?rJ~5?xLlHC_`yay<$fk<2*`C}u~NHG
zEB*f6rFB}?tOfJ>*Cw6_d*MD_$Uh$bq4ZuZWT2T;W1g_WPq5LT=Ee=IIrae(*)^8z
zwK5;$ZHG?Q<cx4yFOzruNgiVL$40UGPh<_K|7C2N>5ofKR)@u=o5_DJALU0Z6Ba91
z@*{8Mb3MkI>!DoVrq3DK_|0?s_onbF_vo9{C5Dl{Q1Xz;#^pkC4IP05FV*@u@^~V#
zGj?j3C_CA^i9Iv1w44qNrqVoj(Ma*_4J++oH8ygO$zuOZYO+&Wfqo{Yp!r5--KLgI
z1*55;(kU$!?LTWAX5NvIP)AE#hKE|WE<b9$_zdH;mK_I1U^oaB{h5mKCpmdLH>WpD
zSwuyBsOZ^6vL_|ovWP)=E!VO+s}9)2Kea^eUvz&=|GoW%V?BN`oT5IRdnud4CwKBd
z_=LG?6~}af**cymmdTn)q=S${9t)2M!hK4QExpQ+`DJ#+LS|8c9+~U7L>U&jxA#(#
z+?4c4GV_W-YnS%tt%pPR*bxCtokj;g26`V;Ju;XQAhVe252o(riC_vW)p4o)=hO6~
z-o4^&rQ3L8Kz=#syKRYT>SV8}_p=h~3-A>IjEMKhx0BfOis=bi3rc80?VwzfYN-1r
z<hO~xYkY5JRK!vcsotn^I0R>VfgYoxN2=&3OJ)5EsmwimI6!YBe6tH+^ZkqB?826s
zknN`&h<gS3+TF*%UqG2={B`5(T^tB48X-DX8Xw0DU<-GF?)bj+YUYvnW0+x+m9w?n
zx^1<n0JdMg*77!{y70XaxtU*~Jwnk(?$>bbOIbgzh5Ec3yQG9`aajDCqeE^j{R4L@
z=XyX2eH1~X!jR66L{*dv8%dL4_h#a=u_NcmbfVm_CJU{kK=_e1&tb9Zu|<K@e*vP-
zWvdL?%J^dTpbhr>FnY;YK^=M1-PIr_y7L+Fv_2x2EnBfiO_xDq$k>84u*()&XTO*(
zL&7rUoLBfmG2u&Ckc}|~If4}=8XWOEb;IoZP1d2Z;_q<P?-$wI#Q%OCjii6(p7^6q
z>7o23)QGFgSd4%%ae^Dvc;GOWt)jDXXd^z0Ah$7nm2FI$`DEEuQV~ZnCwsZS1uBmi
zJme|c0pyowF27>Nb6G4c@lPI$z$o1$%0`|AW&&n^KxWp^MWSz-wG0&;AeG3I_1^Dx
zeIrdsf8<SD<_Tq4zw~B-i$$_jx_F{f!Noi{NWAS*rjWv<1}s!$=#xcSPa}W-=#{xw
zpYSKo7=R6>bzH}Fob&4uHKa>J;&nmX9@YM#iBt}x@Apwc`Yy`I(_f;D#HVzXJ9u11
zUMIzIY9vh?%Dm>F9uZTPKb|+uh6MmPQ-MwP`e2vb4%vnal->Qfci?RI&vZ&f`4k7g
z$cwWE*qe8**Qt>?;5aMMUxO8e3G@(#I;zfNeJh`@(vQ0@*f7;Me1C@8&pGNF{<)VA
za`;EcZ1OEWC|3a`E@(0gkX7PPp^nEM_86=)D*S77YcDE%Bhs3g#hi!GWDF(~{gLfl
z4__^>a1WHeWIN-}XEXg#V$R>%3^Y0Y5snECM%mG)jyI3}f<DTiWcd4Gm@-K3JqD&2
zp7_pt6<;h4u{H*7VNJnRe6b`$RciAj%bM59JD%LjuiJ`nXK-;QeGK42K+nZRGf$Y;
zby)~5jQyMGzlzdc=(+d)X9ndj8H{V%w9jH?2L@vq!lX@+12;d|iw2+z^g<Xaw-@*F
zgkB6=kV8?^AGJeu?9ijCRQV$vFaI2UwTGL6poaE*8Gjga4r^9{(;;XI{wQz2;1pZY
zblFj(AB_vpeay%)o^ECEzYd5pkay~XSlA?ke}mLv;xEQB&KL`NjE>dww}P!)4s?0I
z`crnal%bLlGcZ~j&56wC<&K-hM;TUG!<+cxAHZN=mn)cOy;f?5&OS>@xYO>-Knl8+
z{wy<w8VthUn<=B@=6Va)Ib*Pot{|oY<Le-}SjJa9Z~^`Y5C+hdqSCw}HmbTBz|^o#
z_BwnA%>6FzK!!prlBwVgH8ybP#+Ed3JTJ+RDtLi00z;~xPPSmH4JLXl!e{A!dG?q4
z)B51}`p*$MzTSS1j<0vXApTnD<Ui_=`cgwD`~|VlKCCru{j)ZoiMlXK-bhM6?2mh;
zlrdKg*03`KWuTn3mSLaBTXAuaW|LoU&ThstJnNj@8wRJtWM~@Hyi^C?q%0m1Mt?VH
zUVEay*aP0J<0<HAF%Juu?ngt*ZsiaA!7(iUidxDr>9LIgCcRaMrd;uojv-zzgROwV
z^!3GOjqNk{bGLvSd-DZ4rug=*uIIo#`%Px!7KYt8@&A(Yf|OBC=mA{Q1h%^D>}|NA
zOP(`(g6wx9EoihI3xoWthqZ<z|7jjY#fYwF>+!A4Y8NFA<&|JYU-2S3QC`V><I@;!
zTBnHpD?<*2Wqktv@&O3APS$of27`oyM0K_^DdjjLJ!wgj9EIZ6pT2NY;6l(Z;T5$p
zQUcbV!6rrciv@{j|Cd>@1J5R|gGKJD{P*4Qd~s%S*fFv!xx>8+9I=5jN*b0}gh~?|
z#fwV5oR!7?oQXUD9{-K8Kim1Dd+2;HSIn7Ei^eQb=ac=By=iX)DeS}!+hL`TML~_&
ztYU=ZxtD_dsND=o2hg0JYhuQqtT-IyjeP7F@z0-{^}Ksmok&0)8%G%3KL?Tkffq%`
zM(tg4EWsvm+uuh+G9y&g;oM!?%ze(lcqb2lPx2NqRI{3SbXEQ5-K{2Z(2rs|>&BDA
zi$^uSICtdP$v#J?_g^FnP*sr?wWqMhr<UC^z5WR&L%E5E3FTN)NfRFD?wCj4G{U1b
zPeOFkGktyObcJs4(BM)L96^ojH{qHv8rETH-I5fl!?9PH(Qw<_YHFee*;gTt@WQ{o
zWGD|}_9jIrO%_8ySrP)9_93#T#+^?421TM{q?1{sUJ6nLFM`zUJTD7Z2Z#hrAzD8^
z0ad9P4DQNLuhIEtqBiM#cT8kLGq)3Tqv_(@DUislL#RA?IZKEc5pmK3B#Qm{WeT3u
zbISeRoOy%r1v?>U9$w$pW$rhG4`X}8MY*@kl`amA%28e~)u;0tU!3>1^hV@qso2!Z
zy1`_iM&w`4Q@vbD+dKI{CB=OU0A*E-9Nj}nI69Nx_tUr0FB0RCfRa9)bcpn6=ku7u
ztef<rYkv8(6JR*)pZJeNp_+Kty{T1WP~J;9F(@<Y72K*$)x$L8ygpH`ohww-(wc32
zE;I=$SD6qOE)i9!aoAaOx?j*wo#XWuTn=Y;_o(P6_bnJi{cpk_!VMYzuo~;Qg-1k#
z22z1|d6_%lca9QkmAl^@+94Vj_FUmE6z;Q661+mW_e_&aC8zQ{eWT$EvVYo=cK-2$
zd^Ed%`K^AI`Ys&imO?OpK3;eFpe9sjf+U`&7d3XFlPfTT!tSE$S+&e71kS}o@o41F
z3ZVxtgR654OdP;^`g?pyFbN`utOVSF<6y9Us5fKJ3~FB{lypBP{-dE;QibjJi-s<F
ztM_}5&-J*yWu!WKEG#&J42UV)2~Gi6bnma--LsKI@htt+oeW0cC&T|HUoxi|jjOa*
ziHdq$^thb&W^`01I?4SeT@q``>K`gqKS##nfp3rLk)$fQHtzI{OAfZCfnu~L&sh^s
zRtyz&b|d>)c~I0deXyakES$^nK{7sx?s^~bExJ?1_ue8;cb!NimU}9FFlpS4?jj62
zupS&kbLmMzE5N{@9Z3B;%zfE%|5tg?Oc*p)C3)!?*t>Te*xzL&?;{huP|UuJ6=kjp
zWD945;NEnlr?p@>?I9FpJd@wS-mfS<xyPK)-?;qJ`NORR7w`oq7hr^Q-`83&(bOQE
zp#x62T<~eJ_d8I2arcd!vZw<v6w<HMcGlve`?S1VC@gZJK*&W*s-op;(aSYb?G9g&
z&4&ZbA#@9m1Rw;^y72@q_E5=I<KN`5ua>t2M%_gje4j)S#rOGaEs}JDi*_^P29@9~
zfX(_(ds<EGc58Pk!hpqo^-nFUNsj-KLviQ<4-T=K{-6&e*Yr>xFvk2!AIS0U!+3C#
z)$|j6P{sptITZ6_aN8s)J2^{_2kh?t^mwaD4!fgBiHJivj|Nyx5`E-U^y2|3kUl-p
zYFeld2J&Da4^FX~TEUc4F*voH7s{XRikYI%#c$-L-8J&qLEjvJq@m7lm%{ct!~=@H
zDTZTX_5jpP6*0i6yQwo1zmQ8`Jz~emL$cSQw<-6ZsTzo}Vi3VosV_9)T{)WXJ#$9&
z06aI0124m0DQb6nQi{e>C)0{Mcb51VQ=b!&;EiWNc^@}Q@}m<%AfmnkQQs`QGK|rm
zF+WG-*9hY@yJrvyq~S2PBh90nO14?IA=_6lt*=Vf{HQ8fS&MAXoko(e{qoWWh<?<7
z7!GQ?*tbW<-m1NN9KVp-BNq@~<xZI)no=wgHA;|A-zv&j%~s=`Gy@X~kO2<#`UNB~
z))e5XbP~kX@0j^}^5SzV-o~;elHG{uo&64jmlG1(ri>`C`ZkOivi1t&)$08rdM|u8
zQ}280y|CRxy+2&<h25s=eP6v7Zks@D-?y6XMu}77RZOy)X;Ti!JxIl(f=CV#iwl@G
z$c9@8UrvIC607mo@<hgZ78b~O2Fojse+=*>MgW6taPdU$qRzNd?qJ|1KH<c{egxNq
zQKpSVO^_EeQGyTgZdw&{aX26NGo<>q?^sRW1F|aT!b!4z!AVDRCPtkLCrAh*8{=<_
zl^%nWcw%Xh_0Yu9W31bjixoKZ1(N(|%@@XaN9^L9p#<7v=MfglgX`n=qosAU2T&DO
z(_ajT<+QrcJREN|{Z4x^Cr)Ey<-0IG%pb{HK3&8weX8MuJGmr}0K>DHEK%b$tLcG|
zB6F%YV+BV=3}c5%WQLF+E)~{rQ_62OX3;XKMj}g&Ba}rBW4>~FPps=lr5$_R6|$g1
zByGF9v-S&4gK3voUN#or!|RMZIwqMEN3R~}RF_^);8LM=!|y<y3@VKhU`YvSMvf_z
zbtbmAN`E5HTlIhDS6~a1MC{E>7>d<!CpZvyfb`eveh}DM1ZzR@+JifX_<QoT6DqAA
z+C4E=W6)&f32+i4<gSrjS?wt~??Ls3vU@e#l7!=<YH4-g`qU+$Ak$yaV9=WANgUKM
zc~;{$>8yk(-7rmpj@#WI@GI?$-H^K6&$k&At6(!JNeC+PTi<rEwcsFuy}s=NYe6q_
zHPTw}4RdvdwP2)NF-Bbvs9ZFZ8kK4u_LGOaEcAYh<aafEDi2HLMm{Yz7bZ!ye=UZl
zUe~vs!igr@N_Hi4(2H0Bd>WP_DYOsZmJ5`}kRO%41Bb|v{2R2^-!Hqw?{|Q3Y>c9s
zPJrJFG=YkJ_oXz#<CXHuKld8KrL>QMzIjud49K*p-RD<v!mr{ebp%~mgzZ=;JlM~@
z6r0neuH?K38NcDcIvRo8qTjAhF-Em7qID5g`3DL{TTQb2mxsdB@(+!Hm`xNz@^0fE
zt#2D+H8G(glq>Zu&|>UmQD7L;84(03S>~iwqUd-hD!1Cb5vkY<tHW{>3A;V7HEh?F
zU%m^A&~C%nRd8kh11FO7vTih^2L}3p{Rvn;RO0R)qSPW|;Z4f$_g?M1NqMP+Y~^%9
zrL7v(k?Jn^5HPTq8>bp5=I~32)Ya5YJ~$brBm%^of;WMOgVv_%sm3k3PDk2v86i>H
zWrJP>hoUCrpJ4tzei@0s$@>g#Q`7lUv@poZ<!I5w$_J@Bfsyyh=zck043z$<3%{}m
z-x(G;)hnvJ5B+QfU|b1|eyei5rVb8FAJyOMO#-Uy^*Kg?bPsd~d?z?I!^;pMdR$#v
zyrhIHbsf-ti0eG}Ky-=vRPX^@_kA&_#7(k?!I{8fZ1(KU748zyo}s7CpUk90CLh40
z&2$c!OigUxv7^8VOX_4r;d19fH6NbWuh~a<`tJpveZ-HEiq7%#K1}b!bMC&va~FvG
zZ{ep`E`BZwz_a}7eZ)_Xy}+}N_z@8H#y?MjdLKXE+*f#Jfylk#=ig!;1`@+O?uY;!
zzrSi9@$vxx2j%HM;a>qkShrYog37eJ6m<JIIdWfNxg1#3UI@sO$Wk%&cP>l0awOuM
zE7~Uoz_{beeMHGCz#Gsuo<G9VH@dd8OeO_i4w1VU0{a-~v#(80rfI)DoHe8*AVSyP
zea>T&X=%{fa|dm3YuHaL-o4<SDV;x!Wh;MS^qf(4OO<4Ye3~Oo?A>NdcOSkv|Jzx=
z<(HH{jE3B;<d^7JUYtjqO*d#mv<9%K`D>IsXV6;rF$x=ia@LFY?xa!2af+|2oi5Bz
zn5%8&rYafVj^DU2-ne$|=rfZAUD5|<<ipI@)@1$14>#$2txs2PzV-ldYwkne1>-^g
z@o3*aMJv|yOF8t{b0HU+b9=dceTfWLOj9wCmob&gQ$K|J8FcW8cQMuOZAcgs7!shH
z&;HU3ZT6gT2mX@Vr!4ZH%fK|aG~HnAg%2CG6YUb1*6z9l_oaqnF}oLi@5}g4;O(6C
zq;BnlbVmCj@>oFmJooE?4&8Xg-aC{t#yv~VGx8W6r>I&cmWCJRC+5T6K=B4R0MKDQ
z3(3960&eQdaPo+EwRF#Mc5X+f&WaBHjMLE*_%l|sry=Xlh=Vob&o~T^L;60AtNE1_
zQU6H#4(OBdPdJ}L^nicj%A57$6bVS$-B-ZRp7Nh@Q}3<UGWSY@k+^dp?i#rI8U|Io
zi*WS_xO&6fDm;q^rVD_>@bmI4KeyE@D^$yxpR9+xxCnlJdkRdbCzX2ZA(#97oWUx7
zs_6%F%tRbThypI;#ESHxS$>npz|wODyGVH*;CCgX;dKkdsmE<5wsx1fWA-43)hLM^
z_8^Mkccre+-_l<C)+vkJ0f6q|{m+!^K)*S#0QBo7g>2s+wNSWH{ZR*rKWaLZ$jE<&
zZW|>uBtW;n-DKz%*O?~R?)Bgeipk&amV)jryifg2oK8L9giL*+|A=S*)ZY1}3viO9
z>o;`0+Tmz6(NkAJ(W+$4mUuE+B3kT5q4$}|qWq5j;*C7_{lzC3h^8t;(6;?XXuJRA
zxw;C_V!}Ed)}1V~>BU4C>Vlq@1DZpu1-%6t@h~m;g62T|pbdkXWp7AGtjY{cxR3!<
z{H+B9*%XP=E8$+Zov|re78u?A!M-Xy%a*k&_j{KK0mTkZeMfOy#~0FC@98(hoO6nt
za|)d(9<2@5Z7ZVoi?XiLKvuz0%1YyeHVi9OQ24}}-qpFbfX9X0^qqbtr*RdlEmg@U
z4VUvt{hE@PfF>ZOCT80+dU9)>lJq&1S+_X}Ngsuz@YSHT>4)4CL8ZV#?@7t<V(NOn
z_rNm`^z5iT;(r*=^hl<F0%LY4iMW~Din<yqJ=Un?GH}{2F7c==A(fb?Y@U&@VPc01
zO5Hy&Ns|SVc*Zf9*pDG`!V34t;L%$@{}1@>vj2qNHq29W<te)0x0`+hzy0LWedM<T
zX%bPtmtN-Zn`JGaLXY22Q<<?&n9e7*kY13~IloC5kk4;F5&oBTY>(e|;s5EB-wsiJ
zD|F5&*c-oz#R>o#l#}89&Nxl@Acxar1GCDL;j_EuD&oGcI>w#gz-O}g)qN7&38#55
zC{v~FAj{37qQHpJ(VkXu3-Fl{@|;<!LNDlBCRhT6IyKGUQsvP%NS>VJ<7y9mkvm82
z1>l+S+q1{WZ6XN!GLWz$1PH8%kSYg-EdxpnAq~4PO!nx<ocUY(3Qr?M?g)>ur;nz+
zFGrAjMWDsUFWyHC9HK4idg52uqy1s&j6FJx8|=}o*rP>zw?|vD<M*`dm34m9CZi5A
zcestr9S4*-_UQTk_$^9t#&u9xjWd`R%7=J}D(_}Q%NR{)YMD+gJAyyH<V+Gt7Rdqg
zD=*qB9;`-*J<2gp%k!Kw3vkYNqoqS;%*F-|LI71UkOdHeOL|EWt7*2V(&2?jX~R@5
zRXxja5d4l0xK(&lvTauEE+bDDks<|OSl^vG6o(fgPp;A1UY$Rn_+y$L>BX1uIho`h
zvV!Yg0P2j59!_1$gMe^J{W^acw?rCUb`*cU(jEoH%E~}$d_G@;F|b0f@vKnJ!`Wlx
zZJ^>kj2<&icd%#v2uZMKPQDOo*uFipSa?+J8MQ}$uJ-65QpDJ!>`;b0-g?<*9|(@J
z>t!!C>BlJ<9Nn{_at;Et{}QQlFCca%HnP+rk&vVkjZ5H&SfktJJ~_M`i&R2)=ANbN
z+y|;W`s-nt_?*SFlyr|0tET*X7Vx;|P0U#jOD&~!gAY#yqtQU{P##OjK8J$B7xJfA
z{`3<=)LKAC#S$S<O4gu%${km|tp#_=6<@3SKrTvnpq@Ngk3|s5^;S1Y7?Wi@2#!04
zkV2oeT3JVDX{5kDi{0+K&aj$(!2{h58n?#`mDmM)45^@I^>7zm0Bf;oAZvNjXlBT^
z8sCv`%-DB<#-EurTy_vk>Ly?VRMurzY1I{21kx*S5x0bQEYU7D@5)kyr)BL;v#hLr
zp7B7cr+FpzUj44attKII>f6Ec9zOkU3o^COWQY^|WU$-;!)^>tNgYZ}-uff<@cT2A
zl0W%Kg|MFRvD8U2sC^0=0Qq>U=_YPdL-+_!@Qp@3MZU%f5OMnnFW|zUDiHIy5I~Hz
z#4=jGfK*=2BMc^j6$LP?tM79Pq+DLX<wP<UP-rG)q|jyT^}=+*>cffux@SsFl=Er8
zGyjWaD^{6%uvk_sLv@FQ1@<_}aZ#+{T0Pv>Z)XW9z+?zX$P4*Ecp|%14x*nXKKRSz
zg{fN@7qLv;$O@(MGF0x9=lq%3Ta7O-2d4KTFLzHj`u{^uUJfUM$~_JM1M9~r*>sSV
z7e7L!L~NJ-Fu93OssD7eIqx1Q&axKB?sTqLp^|}tD^{p*ddSsD)&kid!4-lea{-;>
zk>-deeKEN;+yH418tW$>r%H6giPL+)xXQspxqt*<UB6^)*=Ki*bT2xid6{hdHe$C$
z7)Qmfuhq1I$42b>z{~KzCx-*=vxu44#ro?nq{LWOTE>*~6G9kO3iqFoC7xj|ZwIo~
z_&i@^q|o5YsSvgRE`c-VREP~y?o<rpr-a^AOz-Yglyg(+R7mWFsG3vc*<fx4BE+dT
z3}5pcJ67ZmUYC?hzMRzWI?ZY#J5qZ}vbZfWtnYVTD5VJSM-lba%O9oyKH=Oo=ObDr
zS|@zd>xZ?<5l3%Vx$8NfmuYy}olnP=AD0s0oR|9WS=5BN7h53pdiK7z+;7O<_m%tQ
znfrb6M-YyuOsyP!w%jDo`52BSfM~<qS$p^+zT?M3yfV$`f8yqh{wE^NJ?}g$kAOcS
zJEiJm^!yBH_ZU5W`v*Os!?4aAAWF{}mqRI01R5BNnmd5c4ZlrAii~^W+qfs@-P&R7
z9Rxcv_AVV49D9d>WHa^-5nsZEN)`02xJPa`ev54T>4rt_Z28>8(Ueg*GcHelR}hdL
zmn-I(aamZ1dZ6>)uTxB&`o7Zn7~ZEi0g>~kKo-o~KtH^A|8d$k?b*L=uYfSMu-r@O
z*?-M$`2^I0ySZb7xXT;w<1S#gTp&d{v0Exqx%fGTNFxw$?3UX>s*zt~uYE<Y#eepn
z^6NLQRVoy`=ke=Li6V1<JLZ4Kuk2#+__bN2#9j%JI^|c9e{jA(uw`w<A1U`rEY?2q
z>%Y$R>5<Ce*S}%H1o`zAf<1*ES$+*oRZRU5&lUc$X}mZ5ngXCs`Bi%M6_m>^w)%pd
z;n%;?v;P{uR>GR#?#Xk4xT{g_72E~*^#Li;3BTU*b}oLV%{KT^JNs>r`aj~=x%h^e
z8ckI7!hA9P1Ne1E&Hs*HB@oBx*Fy03CH(p{1O(^j16!6~UlR7yxy?TE>*4ZwC;GMP
zTe<XjW0s*umS4wSt(bbjReoK;d&930DBLN(YKV~>$G6uYVTKuhB;SKyyC4StHGaJf
z)PlPsM+b3tuX1k(e*NrhA3u`0DmyQH<BeSWXuPMdUrz?9|08~V@=B$`A5^`-ucys~
zUq=A+|H>XXGQ+Qvz~7hf>roI8od14Q5a$Dxd;bmndZm2c3BQhcJ(nIQ5h9waUw=)q
zRV4fCs%YFpcyIXC23ei*tMu$Y*RSW&v;P{uz6EN*-8I!g+-(=u?C8fhONw-&Ur%~1
z7e9wgH~3Ng+5}Rw{5nQmTjHMBs~^MZf}A3)lJ?UqXzDftOvMm9I3BT5M_8gCAz7Vn
zg*wukM|hs>yjd@~H=iYt>prNb+>hyo?@#(a!_z9_pj)&49eDDC@Lcxagy)q12%c-t
z4B+P(fcvlE=Xa3*-^b5uRRMTn|4n#$|3~ng6NKmQAj`+kKF!BY3(m)GH1jcb%Z(rf
z@}Bdt^|hJ#*kw~xs|-~21Mfd_9r|~59E9%cd`w&JuvsFre}`dEJ<-g^2py1F@(jYL
zL$Y?<d&c+h3m|fMz+Tr#9A;++Wwh}ID5BcfS~!n~GDEwe!wl^v@QhX|2HLCz@e^S)
z)hd%^hIW=WpK?YNrhhEw%Zy+$=(YcDO5D)ur}W`eDA}1!i+L$CyQ`CH&hry)(ftr@
zI^{R>ugrYzmX~t%)3j?9jMTq8|3I?WF4o-8-{0FJ1>G^cPu(K(xwU|wtG~Vdc~RM)
z_pEpN?`D9=amcRW0r-=Z<U3@ifYSq<;*DKyyi0#)=TWuLew2D+3p4%**>@C(52!Uz
z4OFOv{!@kiBYgi-^q=BIPaO_JdH&o_51(<qcrj#?OBw2OFp>R3)x#uzYUIx(nRr_Z
zHt(nFO~U|`eBjN4HY6)k^=(I!&z>nVn5dSfCx@Ei`P;wMzQyQoTrjdn1qaX%Y0{b9
z2L;=s&1$%cy2yh;_&;IkvW|<pVGCW9#qzmFYZr6&Us&pINQui|;daJ^_W&9X;jj*X
zOD5m*_y#s8mtA~i>KtCyM{#Ye+EWozlc(i0c+$G@C%h9ch0p^>Vd&U?TyRVi(JYJ+
zLbgo$YfT<(`sq%t6n^6Ti%&?Q9j)JeXksa2&ETH6pA60uzt^o;0|Zw%#ge$vl4rIF
zy>IL-&+=bLTkx~)BU^4Ybmf`G1*EEAstiBr?n}GX-+y@_!hysUxNpXUJ!OX=87bW<
zFt@ltEA3No@Gq345mEbDJwU+Y8*pzmyhAwNJ|Z$z=<&U5CmRWD>H<7oU4SLfjtwEW
z-QxM|)yG*#qc@!h-=<_^lHs#tuNN*+c{%lEm6v0#L0(v>!)Hs4?*WO=kHoRRrwveJ
zxi)j6Hq(!0)(4v5JoXLq`lOB(^km}64F1+w4F~er;BPH;XYj|q$e3=7{2P>H{>%PT
zmh21MTd!tIg?&nll(Ge>(-rDENS&w9wF`afKRw23N(sg)N`UM#9^fwBq7O=WAVPx6
z|2ZD`4%2cT;pu$BJSsD=i(|HFg?Tho9@S84q}8;<JSvw*>}$cL+w><M;mJ(h&#y1<
zf~^r5c)Dl_fk)Z`o=?HLQz7ugcmO=ICBTO#&LiM?+dNWuq;cSR$vhgGdX@_rr?lVW
z<*D?0!DOz~Y5bK0IXrdi=K+4r&|@x74Lu^%m7z!G{Y9DghvmFiFC;m6VW}HWr3@^V
z?%fH!kIa1kybP9trn^8+XKY%YWmEX)EkfEmsqaZ18+dK%L){sScvYSjaDJDIk2#+D
z86Rkwo|I9nHI1exhFd)9jL-)@b=U}Xx<2S974Qk<8mtcnroO?i(4qdl-bQ`Ye-W}4
zTqbR>xta99nlZIRS(LG^uvmDN3;E4+Z)Xo9IxRI=`lfQF+Fdl}UNk&v0BtTBR5f}d
z5`aeUc5zUn3p`Rqa(D`TYQ_o@n9!;Y2_00g*0WFo_LIHNH1*sN&tK2TAocK3xqvD#
z$K^t|0m!<8vhj~m49>JtQBrBpFAhKarTD*f5!hhFUB8Tx>>OI~E8{noQ>oNmBTpco
zEM|h|35NLPqC9%1T(&@XdPl}l^u{KhDBaVy^6_QzF~5`KS86NwFBIrZ{c<ruUTH&r
zrkyKHJF*}|J9T@sbB*6lsz2jXrsH8K=5?HnA=>dz=wT|P178+zw5MI=S0T}M*VAsb
zX;+nF?^Jk?c6YFy*zomVgvR^OrPK;O*_VP+W|AO*-z(%dWq0~z>bl_L)Mea>InkVY
z5E&Ly-wG1y*OkDk<-(Dvh1_e*B)thff0cXp{4+4OGWuWq$Fe`Y%5JlF2J9;&0~FbB
zOYRw8R&)VbmW#r!Idd&%-@1fl^;_Y7_ARQ<t>5Gf*&!K2zR>x&&P><P;Xs2XTbZQf
zxvaFrUDYgt$SSFiZxI%=CZsxp#BFG4Z?E|TWFK~YiJ_F-cN^x;R&ywKJuzeN-*vu@
zs>3$HdlFCbFG3~VO~bHhmWicjRu!}Gi)FJ|A<bAe(?ws+Un%hKnFoSBh7vg%iaS?|
zwcp!nlC^xNq9~?k_Q+BUR@{EF@M>3MIhMqrnyedQ@eQG3v$j|c?sXjb6CZ<c&7yKJ
z_7S%GRi*u6sFR^Q9=xO<?<HZy!TkDREO$X*b9DDY2{}_E?T>=5`qNkvA0X0$2C^%P
z*)?m~hjZ_4I!%l*nYvfntG(sB2C9^g*q*)Mmta_-W&5B4?2|?46ZXn6+`mFIh-Rva
zN{t=`I0Z5YVYc7ydvJ?4$&uhlz!q?ClJlxN%yoWMuDx;x2&ncuW~cRor(@1>92xx>
zBcE`VnjEjveZ3G@Y!!DaQG$5&zDDInZ-MyzBqz-XMaO~<_{@Fo)L{2}@F+XpCVPEn
zf^y7Xi9A(~xr-`OYtgQvmxU%dR8S*XsU!r_efvYfN}k(=u5#djN111Mq?C~@roz&V
z7t(Ahsnw#XvROk&6GA_J4N<AEk2^qMwaFaPPqcHP`v9yf8vqM|gvr8*tN~vcle3B0
zoHwX>C-&u#wkK)+4Qxj(M;YB!`ga-z5mrM4+{7G71Sw$1u_5m2NDv`ys2P8~4SK5{
zO|k6CLk>FS!_;XRdJBx{zjUD8J9J%Ma5RW}rBp43cL|#n-S?E5mkS`X{vNYmGq&bP
z0QTrN5U^wR<$0;|X~O-v63PelRKXZ*AxqA!V(R$JD6*y-Q_cD>r?J@^M4PB1p;`kk
zWc&NQU?4{W-N^$^q2~Y<b&esKCOBl7><p-8BQSiGC-Jp~OUm@gA2fj%T`NFwIlnI5
zBJY7h#1iE|1ct<D6uaFZlFTn~(%6S^QEcKZKnR<g$&^#Yy<DJ%ix|X-KZ_0ZDX_;1
zaN>}F@6A7O&#ecq(8G)03eo<u68`M7|I@t`QvBEaouANQ$UFBGp`IVNm8Y!R!9Rb2
z6zRm@S@F2?Kqk+@F@%+gKUn>pw}Ty{Uv&K1`+9_gYpn$hnfOC$mH0ze>e;fg*ZnYo
z_`}&_Rr(85r67nuB_z}R?a3&k;C`4YUq0X*?0y(WVh#xv86Ji^g3Is60DzfDe*neQ
zYX`Z<QK3=5dy+d62sK=ksXzTY)n_IiaMKtC(t1j8=C)mof|?-mat+8048|G$_zJEN
z+hGN8X7*diIKl{<iEsFl{T3G)P+n3I247bKj5~b@T@Cot(r0AwMJTKec7m)CVLK#V
zX%l`}>SKypRzYyHH1RF8Ci^}13@VhN62Z8SpG=w{@|kJ<f~*E!pa;`~GyJv`e00!M
zr^BM~?P@8M;oG=!vG8qw+5b{6dLJXb_FP5!Po7Yu*IxwE56S4kj9+Xv>=#@&zJPMV
z$EON?o&+yhTSMwqezw~({zJJZzffj8()W>_CXE}K*y--f;E?<AY(Qy=x4gDrynhRa
z?dG?{*{IgCh1)gG=rG4X&F5%j(hUtwp3VHC0Qy~j6DhCghrOCe#`@(2@s_tKy*i%%
zLEzIfKbHfmBD)fs0jN&!_aC)){ZmCg{{8mC``DiJ*XdsEoL!s_3%qEkB73>r5_Lj1
zS0_Wa2~3d|Id^A7$#5qm@AtF2gE5uP735!AHj^TfGw(4OhGnmvdkWHq8D=$zZ5D4W
zuaP%$yxwAn(k}K)6;gXulzrDlW@_BXGXkNyR<J{FVrhJtn8Z=a)Zi*8cFK$7dMxKV
z7DX5G&0_y`p|<I^Lgp%AZA`y0OYcd`F(?cRQ*1Iw*N~f8M*vbn585C@@U6>R%R^Gb
z>hdo6b`5!MR+5oT6EIF$v`lspE|x#(pL<7?reBdmQCe5Z(J}6$gUD(1M3$%E4*SEF
zcZ=&^?>nV_7pB}o5oP;R>*3|`<mp{5f`uoC7R2-0ym==3ZwfqKDNUXSuT(z`?XYtS
z@jQgBb#_ggQ}em}ejXRRgK5=6PPD*UV@DYW&3&Mrm$aUubE)g*Vy&k@zW>;%Y1^Z|
zE$Ii1UJrbK_rLRf>PoPHTxY+x8blQa>&W!yOW;TyW9sqy<wOgme{9VulHZ~|`)M_7
z#~#Vz%;=lF;Vrd-!orLMdOo~C(}ZHFy)v5Q29fi<6BdQ=!M&&gxAm~)j1Ntj|LHwx
zdz1B~Rk>+OOH0_E5t?FKNV>Jw9vyZ@7szh`$Ir=cp)<Njev9gN^_^bmj4uZ3<BOf~
zedM=KZUfj0gPO+(T+T%y@d>Sh(_+qnRrZI`9W7n0#`}eR<cvJh(mmx=&2&bDU>-c!
z@%$%AJc{CpJZaq^OCt53b+wwvWyI$tQRmEX)ZW-Y>Y92gj9QOJIsfj4I<6CQqdQi1
zP0XxL#zXb#kkxP;pU4S(YdH$j-cr8{m;Uc4=R`wnY9c}FQ&y}MIl2Z@>bWZGPfV1W
zIq0YLx(lW8`qlaUmnYU$5e9EhD2UmUkeskRRpzoFGmu|U&c$uI0UB31=kgZQ6ZDS+
z{Ynb=9}_$pq+1O?nqoekRtueOri|38n#NRJPW}w3&M!Ab%6+$Ex!f|pJex9=etUYp
zohcBtH^=O?fYpx@2CO49#ZJh8?zgp0>iJ^4e>!IY1>(+m#s2FDM)CTU%xgKkQ{~{$
zLCulgwc(6@A0LXG7fNh*&JIULhZC;#@H(^y2j3Fzy1Kw<k#4nB>~%;a&p|ziSdYD<
zI9=+G4|7A2nW4nt@_jsvsaoHxUy|#sw!%3u60XIfTandIR5Va48v9%ke#%A8*`Y{0
zlz368TE7~~F0bwBd@C}v_O0}4<XU3y^8(*Hy@CJGy~FQA&Uv>o{*}o|)ES_qy}9AY
z%noq&R5;%fI2V0od%!z7fG_9lg2?EC#1`kg!pQi-#AatiQDkJ14A+K_qT?lPDhKqb
z35MgPVMDd^op7}kJ6_h}3#*;)li%~r+TPB{LR(HZ>X&=;BI!dkgOv^}QF~MV=4jW-
zB6~ICNgwy(6X8fQ>?0nl^bkwV4|aF)u(DxCVjPLG_;j2cO<8hgGB$)^pjGCOVfQ(T
z@N`0@b9n(JimJO_CVmR6z-Pg>j4mV^`>RyWBvX!l?qi2j92<mx(WwkceN$R0^TH^`
z%8*kTmWJdyOr|aQEpRFerD3@)bSg!GRu<(#FpkQj&d72Zl&_=WK`*9H)Nv*1fP@wK
z)|#l@EsC;{ixG5V1g&uujz%snx0=r26HW&!bBgX15X05U!Q?O9>F&l=1~QgPexqN0
z9RuwFWqa(VDrep#J)GD*b&hB>4VGV>DwIxTxs!Z+pSGlm>tAE={Pchsr%r)g=g6hC
zK<(pXufp;9=;XBwqCfPVwRPZ(l+m*6i{<XoJsJIwVpHnd_M7o7<tbAjzH!U_l1)GH
zY;<uUAKaf;-X$-w=Kj1o4jS!cJ=`8k#^!a6wruH={+r^1Q^j=9u-Ey5{rf5edq3i#
zR1fKxft={4p)Ujo-SF$%Us1J9QWB7D@T<+H#$@h&)+EPp{Z>*7eV;uVod5ns?dfD6
zt}Spc=nosTcBNjhHXAN!uRXvWp${uOPtZ!@-TjPhzFvvJ6GD;4PhciIr$7#uY~d1z
z2;6Qp$fzJ}JC_3iy|aynOUZE@-ZqV$3)|e2^tOoG36BBnJooikd;$lbp0~ZdeMWT@
zx))U2lR4n<%96NU(N7)}#ak;TD5&=ANo>A4Xm!OEoXK{YhIVTI<Mp%Sd5NtgKu)}q
zer>VXP=mx*QQ$8BfwI2)y?&A!Xq$T}ztRR6F3j|95rc7*HPSFrvc`Ve@Jf86TfZg0
zwrEP@hJ@vG!&e*WUi&TO1<`NO#ZulDy^21qvVOIG+F>wOqR2Tkx>$gX^p06Eh9uEH
zsS9?gJ!3s|c6ZpYYGbOB<KL-1{U?Q=vnX~|*&mE?&I`qyi<kwhuasfirW#b+KjD8?
zfS!xz@2qUt;PkaOTWiQ1ZFAyCE2mp;jxyrbep|<Z84Rx*obL9ANN0CzofZ4g9v`Au
znAB(k;&$7hwc4Ij$jR~;4uwulNUXO|b$)Z?gM@2u*ReRi)%w#%w%dPuG=D|nfv9s%
zNFZ{)U8GRm2~<&MR-q48b^cR(2kU#Ly)T37v@e0nsZnb+?9`~0S76}W+!>rdjbdEX
zx8Z^PwE}ofA8{KPVA)TdzXl+ylEd<2PT!bd(C!X>HVX>t-vx_L*G{dpH$Nh%Mj!rv
z1#eUkyIBz1lK4sXTnQaW;`SG6v&Ef}#W80RGBdJYb^hBNNIHF9-2Ncmk|OQk59wRn
zUM{<EoOvbjmUp|v^OvjiGsecP;p-REfp)zfxjr8GFm6@65Vv1(e~;coOhr1`Up@!7
z;|qg!#0QM)7te2X-#cD}<LZ*LlCfi{{lb2te~ff^^8jaLiFsC?za=^`dZDKe<(aP~
zf+narPd-XifCQSV5(>whdF9fzxHEcaRdPIZpo@`p#x9J{M?l)=SqsESl&PyTuZ%p4
zbZ(6agNv-8b1h4x5DQjuYa}M>dOEj0o*b;xNAh91t59I(eEHf-nbNV&OeXSp|K*Uq
zDc<sW7dNCGomM9Ey|a=<B;CDoXv{u3mVZS7{|lKL5{O{y3{ksV@8)~1In7m$t{h)R
zI)kOGPb7#pD3$mUQO;6WwT`b+C>|Jq7C~S8S;^4*u^QzgYn<`r`O71lrk&ilBhe#$
zB;5ryHPOh*>psT$-G4cEWlm^Oyz9u4+9QnFt7!M^GdF#VAKIc;FAi5dfOT*sqsU{U
ze5-ejKVBeV%o9hP(1oS7+N0wfV%fv!O$Q&$teVK~>ptnfo2xQs*u(Lzvq~^m50k<h
z0Pb*^hdGcgUK3eIxpiEXIfHMGcb!^dJv6d={T7DRwyuc-tcOPUH?`e#W|fz^g_Mqb
zA05xB$*lvs<YjCo!xPoc@d6OWk?{-o?L0|4Pf9y6C-j%<uH^u9!a_bLjRHp;Z;>4T
zb)dZyxCR2(6(yBUJfw>pYg))-zNK%n=5yxF`7;WvhsJdm^A~&ca3NaEZVQqui!aVl
zZgnsJL>4nz8=7l3j!I5t%ve<ro&TDepv$AlD28*Wd{pwPy5jU9-uwdVT1t(IykC27
zC5BGS85OFGtf_rFX0MCc98K|#I~C)F9MBwtBv0ZT#qf%GvK)vtnZy+M1$^Bx0DNWS
zhtvs~&4uhCjXT|8ou26<Jvu_4nwrQa@V1F7!P{RIZ}wY*HdNcIqyOA};sFTOHuvTP
z+FQ0?SdG60g9dJSv2X_X6wB=<9^=K7IHh-Dr&W|pdoAvqMV3HZ4TEoX4s2XIZ#|(r
z&Y7_5nrR1l?VlSr4}^bP`#;4UytE|V^#}0CXdUycUp+Bxe9Z2~x#~g!l&+Fwf2TKk
zy731{w&eMK)y?Bdz_@~60QKsp%bBpG!~jSa&$<Vvkk1(4hFn9AXI<O*C-FhXQJG%l
zmL1KFiAD4DQT<j?Ld9n$2jA~>)3cb@5tmhMr*S(StL>4BzbF2w6}YGH<9|Tn*ZQ1e
z3&1|dC%}{+_3r|r-b?H+geW)s2pu+F_lf;{f6{!{lsN-`C>+_^4I;N&4^?_1a<H|a
zFOwh~kdKoI+j_Ve+cOg=kVi6HF|#Ta6*F&eMv=Goyh3d8_?>Zk-6&^xG3pFQ-#XZ<
z+Quc7zpl!DrmE%5{i^yu!^sh&1cCnwNxI)3^s92N!;F3>+J11g6DpNevm@e5dtHC#
zyd|?v`ME}hap1%9SpQG4ct#~d&7+*5(wgKdElM>}$&^K-oOyC@HB95SiXcP|{;g(N
z*{LaPuL&a`uT<f-sKUxm_S(`9wzbz_3LTIx3Cd{=472{ak3F;$ftH#Qr%R+VFLAFk
zJQS%6CGN!09;pl`7NyddrlNO1yP240)v$+~{@{~dF1(aqXIv0JPaFKa27aD)#(DT5
z+t)e|XIS_ct_E2vncVpJ`YCPxpYe4bl?3or!R=Sz>(9sk-|<Caf=FdSVqxlU5=dj1
zC(M$XASlYOa89xkyON~u4_Ahe>=PK;s-0n_EYz<miem2wzdb9F2z+uNpG57EtbVkH
zM@8OAyej%(4Qb4TFTfpGVtNZZTtRcVIh4h89?Ap^KGTU9y1Gw%iO*-SSc~!+<QFy@
z);h{L!)LQzslHSMy)%5)Q!DP2&t`ahHuE^a+jg|zUieHEp;PqNAfHu+P8%+K_JeR_
z4typq^J7JyTMcaJ&jTmK8LeV^5-Jtm&2xSreh{niG6d21GM3}Z*v|Rqly*+VpYd`^
zQY$$LCM`SN+azKG{7Dp*OqdfoeVyk$UCeKWQwv3szlu|xQ8@kAQO>Lhz|95m{JnE>
zk<ZDp8vTFd<U><Gq7r{R^ypGMqcdK9JtO-=-YoTbxkp;^_3L<^EBAwu`>7?uP&3|_
zfw1;hl%v|>5q9XlXk>G(oSeXDlbL&BN}+$?JIV~V``kyuKjvZ*H;BsSxbnBF?dROt
z+jfKbgvD$q{n+BokR(-wMX5Gf>I|-=hBSjo1D|>OO~+T|udTA5(vxt+07rvjtTHc;
zJKd@xEmqTwlpMvyg5Pj~(OqSKBD3f{ZSLyG@+xcO`s&EKYO7)$b4XUFt9HK0D#_HV
z-Lk&o&RHRr_at(0Q_;JltUrA&hUqS5Tc7j)88O1I=p)AKk!L1Dr&ZZkt4Wz_n#2SM
zOy55(k9U>BCOr#X!*P8*8?eWN&t?53Iv)EXV}F@$VoG0!bFZTvv`E}f_C^AIs<2pF
z-s>XW&R^wCGg`33Sx$O_pA^Ry#dp3T9UbhBJThZ_A76z8`PMfOZ{+`Gtnee<8xH@X
zeUzPGX=Y$)x-t5gOx05|_y^2ov)+$A+;wERnSbbdnKLr(`yuo`xnJUFF=&zhzJC9W
z9Ua*|;}aIa)Q0}E*w8^^T*hf#j~ZWtt15qeWc&0ojzH;e>MHQ~7JGcW+EY?X|4mNF
z)RUR_u>SO&;;aoWI1KnR)!wj)m8wpjFch0SI+nwoT94|IN80``%uzKY#z?^C+tc0Q
ze+-WTyBQX9LQRq7iS2N)u9HPtYV~;w&oM-{N1nDCM8#LbM^OM2XB$0OVb$LU^0ACL
zy#rTcTlxUct`obxgFRvfUMBR`L*?D0_VZOOuXQmte0Qti7_mv5aV6FH>taq93757d
zkT_0qWSuphRyovaV7UpyC7wS@&XXBcX7^bTv%g9BPAx}2wP}Aca=+=ikE6yS9pPD|
zqwKc<vcC_ckw>q5&~A!3gMV0!rVvv;D*hG+-^&{OEpD;6T(<PZhKxprT8$c5Ti@2b
z_UqV_-D^vya2`n`dMJ-s2`gn!11#oM)#O-XUUj~!3uJkesolbRdR#*HT2g(<j%Kf`
zUmnu0C5>HlDSz^COxBRbpUc&i<@qUA#nFl7c|Luh+aa=!>4a_%EMunZCrQDsCof5y
zT_K?+Vb^9%m9u{E4Of>I3-0+1dx#%pRj#orpHI!lm{B{@Uar$#sUsYJ`d#M9NZZp)
z_2c%qp_wUf%e&vQ8jqx_?!UeU`K3bC3<I&Btph@;#;JtcD$5{hDn<*~%aOHKqa-Pd
zIv3&Sof=LNmmXNd=3Fo4Kj6f@)Kw*YVO4TMK^3zbfBsXJo&Q``$H4^Wg`8=4iMF}<
zYCA0F*s}h(eD#~^$Qy~54L;K>L!!q_{cht{VwS9j)+0Sc!>tdfJ5Qd008kUJil;al
zDGw)}O+PI7i7u5WzqCLo?;jKBMkS{dn8}&d@GD4XuNkz#pO-Pt6X&|#Y7qBH)VY3B
zK{Rsx`hwbbs31Mx)M7OzsMBxBYLq-qyx{?b%L}5c=&FNN8eHQSODyB6i1$T_zk>uE
z<Wmd5f(ftO!GIsNL4|eW*QiWSdII4EAiN;;g}emwd_`c1_r*#cYO%&<KD2I>v>Z|E
z;c_fCmbtmXLSe$$jKxN-5D()wWt;gMMZkKv3UyQ+Nhda^B&0dIRJH8wTvkR_TMgH8
zL0p;6N88;k+q@$#GEaq!XX1_((xfKo<27J{Gg9lD5s>AIia5_vGTHGoo*eOc{C;3*
zPjs_qaL|T1PAPhbuO+jdZO!L_@1Q8C&!b~?@U7pSKVw+=!WpDt{ES0<>%LQzk7glb
zs0>p6`GxpP!tNahix1nlt9d0QWc|*4isw0DDl1HWo0v1YCgxmRUXd(1EV9X}m*71d
ziS{n0jsyBIk~G)$m!&#;mt?W2<1Knm=e3NIpV+I#Bf+e8@L%FxuPYhU&J6vN!@J}?
zk~cb(SDDXAiZVU}>IK!2)wSnY51pru22n{>tPRJlUu~RL0~^yqEV6mpC?@4JSW<0o
zNQW2gy&aCvt8Xt!{MP7m_oIVyu<4&)=f0SEp5Ed<nZ0?^e5d2380-(wDH(&}^V`MY
zZY}sR51e^d5x93jwNuHwcurnbq^<TyaetglJv=CJPcRpg+}g>4lR2D+ZJvbPgUv;m
z+k=a`Ip57=a&B+CFtw{N7!%|E3oZ!MpSV|!{w|lg;_k(;jDE9PzEM2-{>5DWASmji
zmnG_ArCBbRexUmXpXi~`CGZO4pQdm&<9l?hyQ)L!f9zR0i=XIt4KDOoPU^Q_p({%{
zZkGvznw^nXNi^V42@ouk2tm0Mzlq%oMJy+?gfVW!aI*guvscyj&=t6s(6zFKVW4<p
zwz-eKA>CN5?v@F>Vq6#~RuLAO)GKR9%xx+Q)BQZUe`c|4!D%LMT8%F6>f8Eod<-8-
z=;uONYnPzUB)<d}*AN^Vo?l&BEhl6W*f~(QfXV!1$OchJl~-X(T&=@f<BN%3b2bdl
zhApyOSxi(+jIeG7t)Yaol&AmV$$>bP^D2^k&d}IXUiHD|7`_?5^0`F-#(kzMs|9i<
zjPxQ+YFmGNC$tp`xo<GFl(juMH$CL-F_UD12=5gchmL2tB2POv+pYM3+<_Z*<7^vp
z!XR<*U?veu_WV$(iE7=OsI#*1%~`*T*>7-)<a%!H;`Cj@Uyq1$Hu|Wjzx3PKS&zNR
zmHW!myICHhzL(1goYC4GtqqvjB#>bKO1;rXweTRSOaI2)$h?+dpCOm?ojRJv@|iBo
zx#v?XsB|>TnEgWP=cq~dbbX1Q#a%30LsOsf)bCr356$QdG+z*^ri-*d!!aNNeS^Xj
z=#P8n0knOf^yh4tBVaz$Pmy=oT(FkpqdQWVhMl~JkrA(~{<df2-s5_Vd&iWrgoxL!
zC`S||j}{Caa<^|WB8fH=m_v25i}LJ>!o+}T`xu*pka!l(P&@HWD9x;Ri;VSROq=#u
z@e8LnWLIq6o^;N**3-+}Ye3(g{qxUIl_-~yV<W4l^~!!9cP_xiKQ`jd_{4s<Ki>3;
z;?ru1rlH;{Ccvq+#}Bx2tc(}&e3wNS@-hFkz}KttSe7)vjp(P@liXJ?B24Sa008)B
zJFNdx@yNJT+|wzaiY~b6IpI6;=sTm!MNSd^6Yk+q=lmAgcUS*uK1b>C)bGE&oRf%}
z+8DSZo3V_ibGlv~uW7$r?e`bxhwo1`_Ph1aa9ohj8v8LnaW<Z_dN)+R<+DVE^G!Jb
z=y_O7G$lX{s!k5sfJX(+eezUJ$PF*5a!$sWL+syi^I;y!99tdvgg6n89<0?zCYBb|
z9_{xbzePh)IU|ex5V@{UanZqr?E&je$6IG4n5aEq&<5}kUmm{`glYhv`xubPQ@dj7
z1?G*G*Qt>%kIZA3t}Gv(40Xp^sow$~B#7Y+ei^H6SI0|(myEwV`bY_{qxo%$?CNB%
z^Na9AED_8*gYf|2agaLh;l7%&zu|T+vg;L010*!iOc<7#t1i<|wH{_7zb?M<^_|P}
zMt5U3Y%l8DxqNC}52W&DiV+@z2E7#bFy1X;9A%rB)|6lS8ufKaT<25@M>O={+s5Xl
zvbZjtp1g)H`=wWU`u*_zeg1O`Gnet!W;Jtvvq%v<Xv5Brn6S@T<i6KKN_VF!im)4~
zJvEO%;FlJ=)*kIXq3`7k24!+njWD`TU+3&1n*Xl#r{{@uv3JEHEz?F++nb1sI6@HI
z-RHZfSx+!tY~!|Jr8(bf{0jus2&X`OVXfu5rS3VIwo@kql<A+nX6GB%-khpXD8Y|d
zn2T{XDmvhV%Bcn?sduQ_(_gY?)a#ameKKY|7iQ(i5hkf9hvG3|lBeO~YWrEtuTtTW
z&5}i4+VSKk!za!_nBj^N+`{&HW|DS`2?}AJ_%_(OuTSC#;zGJu4HEjs6`^u#c#eB7
zeW&OHf<N%?Xt;+Jf+0c_yT3dSe$Ye4?klqzenI)_WTL=?Dp?H-S$WCf?NJlA%7RgK
z@~TGvoZ6_v9wXK~B+Sb!%G_8$`DmmyW>vR2;;EIH#;opkYs<Fc#6i)PH@h+=+4-?7
znTU>&DH)4RiH8tO@-Ew-M|bX&caQK+XrDW#(xd#^0dxYcP7Z1B?~P(N4w8e_-gIy8
z?lWQ9^K&>ABEuJWd>eBv539gdMOIc@Be$e~mf@#FI902pYoK9SKAJq0A-VP-{wx-j
zk6H088q_JhU4}mn;itoC424(S2hDx@&I~`9!(BDH+G-dKa@<|rB;fk>oiEsh8q^t3
z$3DNP<tC>AGi=elmZ<~`$DA28nEb+T#mJQi;v&F_CPPQEQ<Qj->9wjcJblZoNSrBm
zF#0e?#UdX~BjZ4Tk91uJt!ab;?kaJLe&`G?bgx7T@q&rA#mm0UeE=!ox(r1ci==C<
zO6)KO19noz^0%k&bO+F#);tWxyv3j`qdQk{aJau0B+x^~n+*H2c;#FS?|+9*;cb`1
z32bQ+lQSv@R6l1wLEl$>AD_VS28MYk(qq6iOf_vXBSE><B`+3fBTXw~9)UWtAjDYh
zrVk2^pXk>KHL=KNGd`9@EY2_P|2$n4SGtTm3_B6GHX?_6S4Q5MM!4C9^bQZn=Jc=K
z(fj4}t;2Ys_>>`Pn|pFw25J8g^Cs-pvS@)D7fY@!-6|jY!38GgK+b+g4q1V?_S4n&
zay@`Eh%d2!@S1b58Pb%O`X@LJyq57>@CnXL0G=$&Yk;`~D{N#8Dt2E$7NDlpkbr&t
z;Bwret>toZpKN)q?H#u#U{FXnxm{T!HU=T&cIDVgaY^rV@1rkqF@V(fYc<U6CVr0(
ztL^u3(70dcEjyxc7F<{y)$_Qw^4@y5>y*>e_gD>A0{4{D?@3#Y-{-M2CKQc4W8JVn
zDj%&^7<0}l!b2{58|)|hKgU*pZt=)d){oXm*|UhWxUztQ*!x!@<`DWvSMxYp|2oPn
z#+AK+1u$7gaK^>s`J3bU{{qShz`+o?L3Y)xtvxbYpUSru{*%&m*O#@U-TulYudRlo
z0jw(jWj1LRR7F-<H(*bQx*M9lTJ5DftCOW&M@8PUZn%Uc)w(%Fd9`%$Rrj=~b!DXS
zYMwfy%Hzp7WoC576BL!vZQjxll!_0yu*AI>my@Etn!<K*Rg!S6dU#9QW19w8d_!t>
zW`}AIak^Sh*|Q~3k%X=iyI2u+58SMc+1F5S_2exgkDoEw6@Kz8&*+7Qp)&fbBDA`)
zC?A*0y3=W(*lK(Ua2899zmM<M3XSHUqU}TpTeQ~3Fmts<4#ADtXGuh4ML}vZ%%*nx
zvs@sH6PTW9lpjZrwyu-`-92I;rn_u`s<K}aWHt5yy=d1OL@1s-;=B{{^J4j1m_p%s
zT4~jvF3g~EgFAUXhMcI@0WwhM#6i>`udmNw{rxp>%q~D)<0V!06NGZYhTAHgIUJF^
z!(GOFND;gr2#zwaMC;$_JB2gP83u=UWl~Al;hB>|kH8(?egcmB1T?-6=dVYPSoPDS
zm^c)~e;|+)1odPz@|?s0eCokr^hV-)dJ4Mi>`cN%I)5q}z><MMN@^VF^67!kt1>i-
zQ4}3|lKQ-^Uxnu|uhRJj{fKdN`Yz5~)IR(SLWwOqDzZDVCG&m#O7!k!r3Kc4wNy*s
zYihUnB?HyIq>FtLzj1wIakk!H`t=@3y?(c^2}!qCS@qRuY?k|L2T7MZ>PuPYdRF@V
zzVUc_OOI9qet&PE-krEjBW?qLSPi3Lgdi|E{XE!*=LRrtMtl01I-GBO=;jo7M3H^F
zs?9ytDEI9jj~=@_z;zX<;rv<BDv&{Jn>+qRBcp3E%u?cP^q`yr6|9E)d60opEtnXs
z$sPjevBUj6JCl?i$10qySS8zlb6Ur0WVv1mdey3;?0A!{=jac;dY%Speh+6T{xS33
zgxh4HVXydSy#Z)C^m7ScnWgM);D3uS0&C=6uP=GQ^m?OsQF$zwc=;_@5f8nYT^(RG
z{6W7NrQalnT*NAgu&*!9XZJ&#Z|D1r{X*R!?<rXQx(;QJma^ZYtjddf%<j*z1H@8i
zw{PkdFmIms3_SlJwL0_sBTkYw<uz@9GY)+*WCY^WbzDslq(=yJOLe6gU%GZ;V{xsH
z;565Kc6>>u8@~{(v_QUjig(t-MAZ$MB(KdL2=^*p`8EB~e0|hWd#JS$Qo)V9rY|vu
zndFeWvvv5$I!X$C*VJ*qfIaHyBCpTXIz&^PL<OGmbl*8H3q(IHA-g@ECyd4~u_{oa
zn`z>&*$R9J?x9rb9SpVr|FPRHdBELYNADsF$ssX1rwVFXpvJ%RNhRx@$paQrF#W8#
zzBcobr62jNM5LAZnNP;aC(l)CJ7eS;=iuw4<)N{8M@VCCIM7rT-%*iLtCDL<*@DUd
z(>;GI^&iDM8F$6rVb9M7_ZU*31pT8cKKuMj{G*=`ofj;9+n%M(xMP;b**H4nmrNRT
zmAts4H^@D{{d1!NBshYtiKX2LG+Zh+E_Ra|V(v3Ez#&@sCZB@!aICbO*gLgnh^<o_
zLH6kN5@E)#e@@99*O6JU${EBn{;NSdymq#^^ML{rG9hw&IZ|ZIubG#NCrqAQV%{@J
zc-7sHYZDY}HQc9gvY`Eff+{xJaRO~*#q@K;Sna>-^Q?RuKoKwUl~X8nE>}VacMPR?
zX|_VUm-CLXIx&RVRq7jBrh#U}f_dF$zuz`@8WD#4LIiisr~0W|CKcvWc+})K)lul~
z=8dT_{TKHV0ZQ>C+~IbS(i>5#Irgo`4?Eln-UKQ9H>%pZzr0t6(v5qTHvAy<r)IEv
z=gph6J<p~l=9iRjkLBUSRz|_q8wgyCYc7R8B_P3VLYe89@ijFfYdPEit|9%wI}lBr
z@zwS&>_hP-mxz}=d+L;K&Zhyl{z1{+iSaR5rC)S@o3uLP65>KkXl2}f*)0T5f&$?O
zav%s(5lflzKK~v_V5$kZmSNmZD?RJw3;Sh*eF&0Xtoqs19uo`At&v`s$m%HqMgfrH
zB@oEziFFW1V*#%ASU$*hLi^>m{84O7KBF79_9D_eZ6IQRXt$?E@W)pK!-d|LDwn+M
zKRb?Rz{&>nRCg|Y`$y@){03UUdgI*Be<x^~d4k=_^n;zz)ezcn-8W&_s`;PGVi3zI
zx9-ek51otRA2s|WRf&Vn{iCUFAg7qMQk$4ornWbME?e7(U~S-7mKoIT>(wU{b&U=u
zYQyY65sy1lRbny|$B2LqenQFn4e`UWp~Stc3WHU1haV8@I(e+;-B_{6eQ^gOV%!7i
zl=}pC#_R9-kT(USBcLyvWxn^3a|#wkPgxXmPK(SKJAHrkO`CD}7J}Y{d7Q3sXQl#q
z5D`c2FyLen<!}L%iPY>#@^A*gf#eo~W4jI?%goPAUd8We@V94wKZXuoe@~MB#va%H
z#{B-4X8L=Cx}sxonAI6mES<N97X|wNNv8k)L${S@IauIeE6=}c*h0~dZ{ImNM?`Ud
zgOG_5wolln5XNFRzZ-vIx5O>i%3Q)Z&7CE)G}$_2uXc|xWTW%P@kl>8onj_ZD?WL>
z25Y&`VTxnVi!UNqvnPlYScw&C76pVpk}CvmOFx(KgNI5%Xu8$C6w*q3bk6ET+?gB7
z>B3MJh{Edxx2v#S7yd(J99Z2qdB%fAc`$17Tk=dOH|I(EB1Z1dc#dv{)ij#%Em!1U
zSISTy($g^zKpC+1m|5lIPs(6D{Y`;eXn3!oDdPOH=$t`k(zber62wu@#)N#|eVO(=
zECiyOPX-Hd4-4$DQ2o<YTX?t9-YTB2^b_ufA9Wz=Qg<|T?!e!^w+Qdh!e2_~#XIzI
zmAxryKjFT*R+(%zAt7uDO^{%4PDxbHUeKAi>8}$na5piJHp6G_*@K!#!4%!1b>GTM
z^v4ZZY<H!1%Vd2mW>02Xd1WRXEwvk|HRFV8?`<v`Qp9CV#<%4Tpc_UuHAFA{mV1~!
z5ldL(1kxJ=U0NhDdYfbu#S^-T0zvv>jN4oLVKvT^4t`Z%_Rsd^++bgh{ffSPQ~I*V
z>&Fn&kH<6p@a4(9;KSVhyc~cY`Oo_AlILRpZ7r_<th=?~ApmDz$Wa@uMp>7qQ&slP
zsQozEo7_{^7*3V*Vx)712|J;d5bA{Igiy<sh3E4DvAII3Gx8EAM_b-5ri*>;uR*TL
z9?Xuu7xt)jDI3FrOF5|#Xdj<$yOrT%_~gnlbCB#l8q{mANdJ-kxL1DQ&qMsEj$$7v
z60hl=rSFA141HhO8$JXXES`m(sWohz4R@VdUO%rSpUVO=HewbqbTScV{${uTQ!b)v
zov}-_*eU8K4k^j<Ni;gaaBOmkMLwKv0iWmh=T`h7AK=R@F}{cxPR#23jYPIw+1)t_
zvBHRFA70;R{hNJbcBs_-B`fo|LOwqv=7dVC>=iRklDqv#R4IL-E!e$97XVHS<s~k}
z`5(qTww34i*X0q&-`Ju>KB%@|z*_z_D@Hnx7(jfMbVb}h4DuZ?ze3u`H;YhF^0n^P
zoe@hUmLR{jKijutK~HkzVLycAbLg=Ik20HpM;6<I`z1%@izyOi-#oid*l;qVguJ!r
zq4X_=p3(ZZ`qchJ>vOu+UV|3?eQsgdQLEcYO?lIDQ*N0BQsxXgFlCWfQ{o|NvPq)I
zKHPA0F-|N_9IYlQ0MD|*niAiJDAr4)-)Ct#FoXHz_D7baJE?)Z@~NEKLL1(A31^T<
zX?xt>l%v{l3CBqX!?>flAhGvEWkWehYA8I)#Kb!)NzWK1ncX+GcTkXKJkI*m=Wks|
zEji81lucK2;|L{Ysm6LpL(+0TtMM8pHApMAgZtx^Mouf`5pwE`DMxa|5gg;VcYMOt
zlV=t<6*blN?qsYBHVOtVuflE*1l*r{$kAGOMXM)E03Xg&G;&$ME9#EgC}mB!h(wZ*
zVI(<ZG4mugb=}O5JFJEH2&yeJfib8SN|`;k*rCLmAdc`&7*gE0o_<s%$yc15NcvPh
zD%50sQJjPBGs~4I;_z9RPZcZ+#0ONCsPe&bjIx)V5$^1$=&fdG|FzWX)F%4z9rr%X
zzR6RoQJl0=a7cyx3fzg8CGdq&^;Ngf|JrK&jaTjfDMxijIjm>YzUL&$@%&IWIrh-@
ze0Hh2TZd}_HX=-h&vAo=s`6J=pT<smt5Fse74vLpmsl2ANhr&Y7v#qa^DiuS^FfU)
zC&#*0)<pYnHvBF2$IQSa;BNxR{FTB5xsm6_peH`764&vrL0I%)(V1Bg?@CzIL+{IU
zf<bih_2gOH;gICT{;dBl-c4|S;=dDU><LBgtY(3OuQjN4HbA?_ZIyW)kJ!GX3tQq6
zb_;nLRjp|TNR=UXS6ZHmpQbhMV!%vAr0m%DKG%7t+LwOhk}Pz~`X56zGXSeWQ!23p
zsY@GeobUB>>22e3t5G&iM(rnewzN^1)z~D@?JwMAErzFWmwV}7X4nyF>tH1OWxcVG
zA>VhE!rR;fnbe}8&eXBT4iN~xO^@Y^5?&N;d82F86ZiaRk5?*1)%!z7YUL^sf9BCW
z>2Ba?IKKc!Q5_(V|LNV_@wUVGV&*@(c}@b|1tWLynPTK)t0BoX!4n+7R%k7#<A!DQ
z^!tbqyST5LCMbBM*`T0aUgn@cBZ?M-udJQ);8QaEYJ~rJn3HtZ?a8DQ6r7T^l2|{W
zF05S1DCx)Ur#7NKWIR1w`;)PLvL)zojQ)O>`pW*=9}L>C3`LTc+7145$6JFBd%KU3
z9_y`zvNM{l+8;&jXT&UA^O%5~Knn&bUQDSD6o1TE%eAM*CGnE{>l(A!%L|pIblfg%
zEf33Mdjj3PLNgy30;b+v;n8<MZh!XZZ%=)n!AH6i`kM7UL2Byd+zy-hs(H@}2kU>G
zz0cZYVuN^DD`XcCCK=WQJ2-5VF6P6EWOX5$cE9c)=I5cFj>FFA7+;@_lQ3%?UUWT%
zg}3w6?Dk{nz*=}HO~~f{Fu%z$?ell-21IKCn~?G(8zZZ23qImnWP}nD(y?D6%!iFH
zb0>yC-(@m;AbQkll)BWKljjd3w!Rhk1!cv|eY3V_v~E}_c8S<8EpHUtU1ZMy!$;(U
z{Jb7%%)yX-K0(OiYm(Jn+UZ`YMCNDXU&}TADBC|12g1%)M%s|wGXFKIt!vyMoKR;~
zu44u5;pX`=C=e^0-(!7`HRSmaE2X}?prF3IQ1ULwt_NSBbz60LUipqy-D^*Ed%c5_
z3nXw&KkdmoQbi9<rjI}4sz9_3Q+qVkAB;^|l(8S4#C`xbtgx?rTj~-YnWsi2O^|P|
zt2}u2O6p<?<%o;tPn9{Qh9rBuaSF&rhpMG1@tq!9Y~QAALE@J$!&^tbfUMoD#y3Hf
z1a&sN$b}(PgN)Ddr2som$iJBXb+SxL^!kG5<rUiHh)0cfdYF4XrCuH`ek^NHh=%tx
z(fn<SuIq^Vl=T!Se+B?EAV%#ALmtgbWWi|vtlb>xgx)L)980bD5J}%-y}ew+Tl&sl
z$D=w)cNSj`p+$8-=rDxFi4YKK_q4Zi^m+OXx4%Bg&Jdn<d+QU4YFdmb*PebX>z@~T
zSr4s^E<S{}sRvmj$|0Ds=Q`3$_p+!gGc0H6RsQ~eNUuYzMxl+;tCb6nUXOAqcFjU)
zCNe4UV`BKllhc@5&+dF`J)60!Z~e(=q{MpFedawS)+KBJ3prziSU-M`-9tjUigJ%w
zIL0>bUH@d{GnZaMn~IDO=F;Y#H#*WLsZRp55&Roj(6Mw55Hpt6&Xn<EBOB|dA6dVv
zOX9miaeo@1>-iU4n9Bcv^FqmYLo9}n*1bgeao$0OJG?lfxN|k(2sLaE{={x+d84mP
z*2b01{}&&0m#`COREa(DAel8uh#m2o>DPUj<(aodI2+$4@B(RVZ-Me)GZM&<lzQWR
z9dFV2VfS~LI{Z0oCV!TEuj6SC`RGAD+LPb({r>X)#=XDqDetf8^nFM8B>8iyA^>0a
zFNaUH6Mei^`gj$gpu4)vxLnXIbc5sFoiLO7s^*oF@n^|v8DEv}Y0Ju&iI-*l+T@>@
zF9v*p#?5LL3TI4-eN`8nJjO%kUQJ!WVCVE7bI@b-r{R~z9W!UCmEm6Tu<&+bY_5IL
zi8*!gYQ{0l$**VZiv#QlvM%fOj2wo-2B|w95n9#(YM%SzmK^)YV-$C#KF*pE?|9{f
zz8N1GM}_o5)ylAFe})7%$Z`Zmkt+I6JT1TfyQ(#g5-l(LH9C%qo#^)ijJ^=vaMeRX
z3h_m%3dvOu!k8UQtclpc{)A6rRuNdD4!YGLc!?{Sg&Ey2J%u8#D6h1q_=>!*=!PD0
zK2S&azDh5s&b}aKyMFkY+MVhMebqfZC8V3xL>JO8y5D~l>g$0z#zIf8aVP4d>|mSz
zM-D?6{T!U1+(M^(YkYz9-|+7|W+RPjXNq3=f9$<`e4Iyh|Gy?qV}d~jObI2BCAEl6
zY}pQuV>=;{V#$`ik!{6xLdb=+EUj!|-KyQS<!}qw4pCLpv<;V1zHLhRwm?gpFN6Rs
zm)yg(bpnKt00||)3X_mh$OSvz-}`fB=DF;yB&YrU_p4ui^gR1KGiT16IdkUBnKNg~
zt3Ko8sU~G<o~bhnITJnFtKe7of$usD)aVK4ITc)aoC^M;*6{)}u3ho0V<S^&H!m#z
z8B6ff%{vPAJ(i3=boq>*qVY#P`|YlF#S&Gaa^<(&>}vDwn%dOq0au|W``TRMYxB=P
zv)Zhzo=`MYO(@>Y)CBqX^&h0_;rfG*Afx%j-`n?OJz`<t?JuE!c<o2ZsMCzGP|{Jx
zL(g~uGaY*4bJu?w8V+b`DxLW6L>2l;>!%~t)?UptjIO|5AyM)6@rABS^neU=4n)<q
zIq{I0RkwIf`b~Pgq+dJ{`bBx<`&CNnkIGlss|5T1Yl{87J~=)Ae{<h6mAAqF_aC^=
z^Z%!w3;&z$Z&T2S|8Zie$Nw*`<$t78;QxnGd=u34Xx?40?@7KfIpN0JN^z4c^L}sH
zo;55VEiC`XgEEq^&8zGlc9tJ@51I1)?qN>(n|jc$u{(Lt{J-x0FVS!OH($C2USaH`
zAamZ7hCY%q-R)%Y=auwRt=mbQe~d{nJTcZbPEenx%JYy_7RJ|R>=*|4?BdmF&Hqoy
z*s||g!j=9QhHv=nODEP6r}ek;$z0D19_5tz2_Ba})^N*~=Uww#9OB=hq_=E2L6K3v
z%CmgM-u(l;-2Wn=?|Yg9Bo6blc|X&*c|0%x5J~khPUcWxmVLjO#RO)K#({RsB^@|C
zp3>HE3!gF0G4b5QR8b-I`6-j)JQ6RIJkyJ;Qm@j}GEy!jrJh%5gdtgbNY<=mIC(18
z@xc>c;*(ug{?^CEB*hEZjC2R6u;x}?#uTbN@x7yLqLP_xXTnT2Ce-)cIg(f_clHVG
z1j>S<?10x8$kHbj0$|_R?9=xAFREQy(sJDZJHkHc`0R@S$~1h%yv)M7S@~m_m$l&)
z`P0&H3p=nnCRQvc|L7*B0=N5dTjezSa!zrme`K<m$pV^knR&E#1o{_Q$jYC69v(7h
zxQ~C6_$YOt{2_fj*?oL-^~bmCqhhN9_VbC426mf19&#V=Onfx3YxU7~;T}Bu-}orw
z|G(ImMf&pRE?f8SL_SOI<6M1w8z0Lrc_1h<lkecSZTOm$(_DEcO%mp>ReKfR^^3Bx
z!+8s=OUPz@iYCkR68&Po9dbaN;zeQ=c%zvtney%5mAg#C{>zOk&s*@N3=0}`pr0es
z;1;t4?}mplW6s6Cq;@Nx&$rOI<d)ce@a6^A^FjURzWepfnW}HbIHML@D7F}9#PKT7
zKD}r8!rsr~y*zX7DSsB(60&}hBpkwmiMs1>JNgXN#6~PD$Hj;UAuM|yuP;7vmR@&?
zG0JD#x6;e6cdkC~hhioHzDNZ+WV=QH{H%Nd=sSlEw;z`E6@*XAzPo0X_k%qiKMe;I
ze+CN&Ufmwex6m$}F=ya5@{yuffsye3GQ~)<dn4Q=JeD24Mz>YAG0^dQ`^5YO<hbN7
z#1S3$+_eoGM)~C#?ecT&lIUb#7DeB6r&<*Adyv3pC?W0x;8}=m*nhKdpnEnOM%px@
zo#zv)*aWitvGS?7TMJu@s@d=!iJXp!-E^q)E%}eEv2HK_#%#BDg=GIrB?FVgHmS}j
zl+bc_TmP)i@n=Q0%it8bZtYiW1s!^FK#L45_q2^ja0xR)M1dJQb_~iYE9&n_16m+g
zJ_nCH09ixa5z5>`>hcSrpct(DQOcMs!|g$@KjAwvkuT(MK~5Xl(DPXN^bcaDb=3R-
znz43+-UhpV{TLbliHwfks;sRAQR8w$s+QL-qnX;Y;r?gk_tB_U?qbR{cV@Z7ZWw<Y
zhv5x9zdZbg(BIl8<}Q!~K6v)8j<`-;eiJ3CHuv0>qcPhEbB*k54FDe!Be6<0FH?M>
zNUEkO-;bGH#SWphXe8?6KKWa0e%HtFzZT#>^X$>e;lK2BP~fgk1?zTU{=P$^@&hEW
z$SG#GG5&hrZyj=A<MAqgid0s`4ltVRr|u?i9R+_A3i~6$T20*zS8!~<hc=~<0)(;b
zCoB6#aJBKC1t<lx`(=6U>oD`)!L)9>Sj9T%^{66~UniwlgKnHLk6U0)&bI>Q(i2{G
z^a6(|6m13xutnvqlxKqnDMiX>D9}p29u}CqiL4y3@$37LN)KwSgjBTChVi4FJ%`KR
z3~76nc0Xy${~TUj%qy8&|CIGc*Rtf8+-ay7(QbOix9EG0l6g`5Vc35Nq};)GkKC03
z`hR|#JTHy&{0(^yf35t5Zz<`slQ$T_f`2BH^W{&Lo9PCUp4K<<xyn+fDwjO(AB8{X
zOREz9=e;$F)t+wtVg6pGfiVF&sr??U$7Y-;JokRucKja7EpPjwZB3fP&WL?af4;aN
z_SbrU6>#VMCHOehIXEb(LjLgAQVMQ$`Q>kXCo1kgevm4zF)r?mDT-?aX}4JT%koQo
zd0(wpo@s%<F%L5AIoG^%US{HrV+5fg61ObhYjhkBrh-UYiS0wgog_u+hvmOHM8{wL
zsCN^?+`L~j(?rKcQWmtzhiFST+7%DAPrM#dNa(+XhG%MKsmgCab%8U=jW_DvGiPGU
z*x`34Ft+w2-o?D2M_YTP<6W>##>KmsH&wigzxy|2N}YHY5A!}{jdAfV66+i9`i1-=
z+xN{~z{v88rxD3)Bv~Q#<i5{q6B^b0@`vevDRrUDPIYv}=ReI2O#pl5iLdg{S)P~s
zXKb7&Zt%}iLHqqPi`XX~@XyWV7eHqwBe~_omHB0P1Kq-rv|)dTurbkk5`8Clavyn`
zx-vEjiNx60snO(JcRtPAs8y43t{kA16l-1=pAi&XO3`_*<ou?)K|&*QJE1#%|5?@U
z9~Rt4Yj<*g#E9~SzbEVGXF)8#<o!zya~AD7#wW`!|JS1xBbS*r1I^0IAU^`I)m3d2
zG2=VhQx6h|z{h6a^(V*R4D{n;Rzo*v{VwQPv==Q2?|&f;(7F0Qi!bfO*>K+-Y^XG0
zeU11LF}d1TO0w|>PaUn4%ioly$dH|xBszkV%jIwJ(hgM{|K(E;mw$7;l}hfyQzD5g
z_OHmz(KY{@Oy!q?e3<X!FZ#^qyMSkPSIDXp7ap~6A;0;OUNh0!mf#TP6KsJP|A`v(
z=r`0G@Q{1Fd@rhpC%}{6OLhG<ao1lAnvu-Yn1hqB_sA_Z(r33hPthpOu*Ms7w_lb|
zU?orT=jQU8XblE?*I%tad4CRtaWl_Gw^5ilUZ+fKV$7L+vX*>T-(DDCn};?R&5^e9
z2`Wa^4Mn*{?qKNDo<^4MI%eHZu>0AqtAD%u^p1n?AUxtvE8oEe_Ji1z61I?$kC<!|
z7cG!yrlJJmn_$JQzH9Ub-d#3vQE#I7E7>UNiodm}kZgxfA>Q<sZMEgTB316>KG?zb
z(lQrSaWusiPRvae_fgJJyCO>W)8nC!jw+Z~zktwK?5`U=?eKY$_niJmq-vo#a3Xe;
z1??xSJ%!JO(;x%QAW9TD+#xJu`!3jw7Wmdx6Kh*LXFc7)Zqs*K>PqE1ezj6oWmX!2
zIy{Ha!b>LQhG}%~IQVusVhV2QW4O?m<B=NSJ4!FFu2+#HGy-xsUG()3#8KiNN(b3h
z6hHc|&WT-@O|0#8RVy%Sb+{WgrM0dZ-adySUwxRfz+L;(4meS%=<mAr|JCl-bR2wV
zz>av2Cr0$W9<$Kolj?h+_`4{M;x7{^ucs{(gu%7hj}yaz_ooj2M_4lChKywX9P~)^
zu>A`@#tYegVbssCl+Zcx+Kzoku}ysTg@_~^#eUg-aNUd9m-&v3M5TW1VS@3x{s1u)
z@2YqX8xf1YLf;xidLRbo_ISzo7kFEi|Msi&!o+gx<fqXXj1FJgNx^PxyO*vVCO+43
zf*uIWYq)kE*j)40dBA+by!X-J51#l6ZXFy-*wFSgs|j;D#&c{)r^pxczWm`2ALHYC
z#SZm~|FwH5tK**a$X2I87MCO0G>CQ~nD8e%rTp2iP%=Tz%m3&e7MA}H51Q=t94UWD
z??Mox63c>G0zL7soXPBytom=5IITmc0(27VegC}_(t?GMrK*Pa-pLO$K(N*F+$UAz
z%=l!>czN~DYvOKvjkp{C>UWc!N92I9ta;qc{n*5&+2cO8G%LC6n;c>#Nc*OG=KmRI
znx9|!cgIic5kBNj@M6pDSL6%j4(P(;v3=IvQU9cxgvW{ES`s<2{BcO8Y1ro*tS-VH
z-##W|53K%q!yjJ+6SiFQ)}2_G&ZXowY@IS8iI_H+e46%=9fe%x6LoM&2Z8WreTzT_
zud?|<v#smb#wkYTg#!>2Er89706o}(N8-~jZg|h-tcMXk!2BTP1bJSCuo(NVh1~ln
zeHO(vgP=-W{otN=%RTdTAQCXcGw|^58C@)OI~%x_^35FmaRSLEE;U>?;4LugTjLM4
z<1N(O!QA||A3v{y1#o`0w@j=eQq^rV+|`F<>0(r8J7B5d@ENZE`gM;M0%6PVQ_F}%
zU=C|D_y)>3jNp3~wVZe<)M^%O2QkZg|5QOj--sH<Y^`JBawfsd8eWa5vt!~dA;2xM
zZCQsowf)N>tnKHUp*Yb$?pZY1{;hKR!Bg+(oH$cpHelA?e=d584qDwB;?QlF7<6B5
zroONe(?X`r78NuKrTkC_VP88YPNMI;@87ie`wc=VpR8tUW+rXz#%Ay+j<Q?Wv3iw1
z^Fa&N_valGZ`4W1#nUMQ)c0iBA%4Bdb=J;qoqf;j_fumG9k-PpZ@GIt;vN*)Jwex^
zM=lc+mDhaIy3%!zz<v$;TS*SAWg<@2=JoyPOAh)lo^b;UF4LTI;<UE$pC}E5a$o=t
z%R;+o;|sK3cHzW|n<nOembO3qqIk&xoA>M3$$zl*U}pT@mWg?*?=AfT#qBd0&b1>5
zOcAcRMrffzHqeLSFQvy?VR6DuG`G$AwoZfE_j0Ks2VZshzuKzAd2I?~`aQ}rzS}^&
zd(N?7qxAPi|5L#gSGA0PwQbS&I$=bDUSF|n{luvgilew{!wGN7VuQWnq?Ua@KCN~2
zPaF1q;_CwZ!dU|RWO1pW5*)(GTL<@I;NCxqKh>|>7JYle#Kl0H|B($RT%6r7elM^(
zPU6oS8QVCArbQ0m`#*US7Uh<G&z#h7;3GVaH{jVgt8+EBRP4wM9r!1APC(n1Yu?$M
z!LtChStqq_?O@E7)`Tgv_duo%?DjwNBDKdklOI9<gm=bocfqc2xA?(91WmjVsdFeP
zg@`A7_vAb9EGFw7ZspNGmil(LZBd;OPAFu8bEOoTGA?IcRXOuj&hM&#cliRI&yPs{
zxwuy5ts_xb?)-os13rDb9|Jz&9u}7Wng`hd|D1dIQU1tG?MBK-hio|TJqAc73K~$;
z-bRiOCa!8e;i@hS0Ufvf<ayF7kFdp-0g6-n7;RC;|Cs#F1hVf4L&izSSe(pT{N}(G
z77V3vGvDmOyL|j<=XM_T&((|@E#qHrS@bQ*A380E8qWVv!!51zw551o`9;W`=e0Df
z{c6kj+?#aTS;y*Ml|C&z3JwqYjx#l$1Re+1V!-%Pg{pAo)q&aEKc_$K4I2-YUw<d|
zhhJk?a`pPS^Ff!L{^RDEzW-xP5G0RUCkDBX61E#%ViDgrOl&u)MyW_Ob}172r&g@B
zF8UF2ZNtG8cW;<@t&?kymN-D3@+D6;O!Ug?hXa%5QFMA_88O9i^o_*X_cy??a~O@8
zPTcjiS(!G4z<5AX`$dNdw(t5+B-ids$nDmN*+hVC&Jrn6gZn9eCgE0U@;^IF))BXx
zmSE6A5OW%jV){T~{5Wqb{JswEc{MnlB8T(&*SD@_pT#BE6I2at*J(A3Pq8|*jXz0j
z>6=uQ17};?UPFb9at^}ysn;h4Xlkga(<i>qjnQk7=G1WVDH_6J^=laUipcFx@1!^2
z?E|wBpZ_jG^)N%wcAAfd*y%Ka+3S7m^m!ILy|y(N&q8CYbdB+3=@q8%d-=ElyQj7A
zTI%4M<NQ=>5T}2m8UvMZ)mJsR5Uu)wI^zrNkQzLviqo%2r22slD5$M;QY2g=(UT+s
zarZ@phW&p5jOWgc5dlt_yc_^QzK8nrYNq;s<-cG5DDM9I%%ZUrb$HevLXrK?uo%4j
zp~)w?C3NWnw@J#lo_!vwl=S6;Z}_)y45r^8rL6@yg`Bg&%jXac7$xB8NpBW$kqUo=
zkL2WcF$<z?YAedYv-i*&{YL!+g!1P|C@@c4V_^1@%G(|kKJh~Wb3I_b45z$Po1@Eb
z)DSYhejBofDN-=d?>7Mwbm<3KPGzKOo4BaiEzgV)*!uCi>DIUajJ4QCho6q$Hfyr<
z(!;06<GaN-y|8QbZNw8}f8>QkQN2!4RL#<$h5sYW1DI33eDXyUr~L%S%9r5=Bn9}W
z))Pol#zD%7#nK~iu<61NwyfUOyyrT`44k|<*8(4X2=Z!jmY<K`nV)xR`G*`G3g-7I
z8z<knt*il4FUN1~VA@VEXk|ksiqp1^@h#g>gSM&vx9Fs?$-ks+9Di|y6ze<^w>E0O
z?>0A(AK+-3%>J)7*wRSL__D+>{ycU?*qF^&KG{yrPMuNtvVZ@%r1{wkF426f{6c(H
zCkOFrv>DUG@6m+n4WHvy?)hU)obF7t$7@Y?pC-*7a-(j4@8II+?R%Cj^&ewKWx=dC
z?~WZq53GK$W<K*P<}*(bFo;p9bz<>9cM=MXrB*wW#B0NQo-cW~dc_CX^hxll_SHWq
zu2ETs{{gFs-_a>=z6Ui`I}!U5sO@|Dmks+jG6_Jc6EMw9zCi5o7h5I@&FbPW1GVK3
z5d-m#JJ}<pc?mI-IG5`2S+}FwzLND1&LL{)T75hIfA=pUa(fFLLd5ky$hJ-l;mlEX
za-CuGq|%FpAbt`To;&|0PBw*KC<;_tR$tM)=WkI%h1m<Bo3Od=#|)Jy)5{;4Xm3W&
zy=?MVH0$-eQHaCKn0fp=zuA0-N-^t)<!}GFcy8|_)&t77yxn@vmwzJ0yM6K_q_n1#
zsFU5UeZvXsPiY%xfG1X}Y4WKd;=ARayw}Eu{XI{@i>BR7{u%hNe|6vC*<u|gABT_}
zVx6yWhuyEcRrmWE#y`h>@+SU3VEB7m`DslVJYTA6<Ihrcb?^p<=B<w!n%;uiI{u&K
zTX5ri>Y>R`P`YVVPaZsmprs$YGaF{!Hj`_c*wu9py;_ufu%qXqE+&5Oc&Wzs@!9Xu
zZ<!NT-}cV`P;+)nT#;3iu7VGlR{Sw5%BN-Snf)%r2=P-2&6f7=J&&~jROz(#*xB=w
z<s7x}L(W`z-uTxK{~rDOL8YY)=*9%Ap1t~q4c9&l0&3d}S1-;IFB}$`b@%GW8?JrR
zt+L{teckOS-j8wQ(W&xpBQ7)YMDaZ*Qxb)pz;*&>`T6g4^ejT9_MWd;^RVcqV_?wx
z=ad(H>8K;d`Yc;=+Z8*V&+En)XFDd=E)#;F)^cW{tK-bKW;-|*_q?0zs1Ipr-~57U
zi`k&1byJ2K^T1nhZk_Ce-hMnz=(Uq02wP&)0Fn~e!p+9RGuL*tjIV{HZ(Y_gzIN64
z=v+d(A5cS-e@hWC9gNz(Zww>O>CER!uX0SJM*qFH8gE|oW5=61U5N9tSoQB(77OM}
zZo@(F;<@7&&pYAb*(Y2)f4qwW|C%)|mj=ke0GPza??qU@NYl$!KuzH{DEsTf<xAl}
zFH+AVKkcr!T~f8BGv5u~6Z15EkK$6TzP~ts{9d;1PRzfq{or{ARkZ{6?JXl`iJZ3v
zOs;zokl5M$nTeGOQ@m51_lI<w{Q$g@Pw=anj`!a)GuTU+->4PKs85_5_Q2uU0q5@`
zJG^Y0;Dk0J)iEKlGY)Qh>@<`@gvadC^R)%zfX-*(=ZWs;{x9>>7;k*VO_QIpA1BfH
zt9Ldxyyv^7NVwtUcir%^6iaOR4=4TbQd(g%UnVUd_(MNwIrbSpY59$NSXllA51O<*
z%6)PJA)V;JdpZ8=sq*H%){dY4k!#2Esh-mS4*w_?xE9A$Yhphu|0#vg29tjRH$fXH
zFj>LRSD;REpdNX|f%;D>Lbv&o)8VG?W5ltR8ym4q4^FOODB^MQR^aeO`R^GsR4((V
ze46|X*Zq?#r)A$;n<Zz_j(IWp=lqd;a0K~RdTv;_xe)KF$&U~>O-OD*e3|Sz59tzQ
z*JL|@HLxE>7gv>X<HstKmjN-^TaM6)A{jgR0exi@u1r1%=<-#!&^hk8-Cn$nw-U&c
zyA7xPVllTKnU3fEu3vnR4}?xULE#`V1$8Rw1jd=PlgxD_au(M`iaK%w)4}`9Wrpzo
zx;M|^bct`$-|hUPJ0)DkpJfQY903?xH{Wv@FxDxaAq69>J5gRtJt=;F_)81}nR4l~
z>g00QQvZ1|UrYh`;X5@4AHdRb@C~2hxpTaC!NT%o?7uaWO3=)FjN#^%6V`WWSt|=9
zWQh)se0!JMf!eAFjxV2ljKZvcYmtFh4c9)zo7VAT@<O=&Pt;iWChz@`+=Ac~P{&lW
zs=V^kpeLhE`3owWr#a<M{k3bfPjGJ?Kg{s*4$_yeAgNo>aZ9N!UsU6uG`aTB3|*8>
z%+P<1%ESy^je;mlxw$m^@^AT+FW)hSfh;cv73lpskH_iU%ReBYLVic(sa_wv&DX2p
zx&`1OPWy}zmO4hhF}q9U8_C=@{&dSzXn<@4^c3J{8$n%+4ov}%^3B&utw4e}w-)p3
zVBo;zrgJ<iiwpvIjs@j*`eKLC?D7ALJP3d%D|8AMCca_+hiGzTBV^;-yUcJ#>+HT*
z{!V|6DyLv>3w<!RYakS9o6+4cGyPWk+Cw}y7vNZRe)J1bomV5cd~@%)N#CwxOQUnZ
zy6#mrT7bB0NG)gjKV9$-npg7)EsRPib*PluTyH96`$6K$C-r&kc{*6;L2b8Jdl_CB
zeTh@eWZlmlSNtLTOzh?Ispy1OcIgr~&S*Z5On~o;S&sda#cg8l|HVOqX~gN{a`rDj
zjn2sT(j#aIL}D#XOb&szqboaqn@9io%&lxKop<<Ceb+Z!$BBOxm$2c$n`!RJ7MD2i
zpLqAlzjSQyICr(;c%Dp?EBRCYi<{uzgirgV;FS;XmXi=Cf65QX3ct@A*CjrVn~8wz
z|Be4Rr~G~o|GnHN3BFn>w~~C4t(}$fC*XmYe&#PrPfhv*Oss1@VI54cr+s{VS38GY
zsSB^)N|N9|vi!c_>rnnW#Id~{rTKTS?Kd|E?ar{{4_Y&sy^oi_`cKh*53QC(UyYBf
z{1eV6M0|V0mrmjkuB@Xgu~az_cb062or`YgNSk@?dx@1Z&M{8KU)3I(4$c*wSkpf1
zSSJTqeU@&597AMMUh>2xzurX*k7Kr`q{yqk`O-r8+4iuEf2%y89wr$`2n7VH4s%2k
z*DPo=H{@#h@^?%6MXqYvKd?b=jvX*<7Gry{AYEhyV#xXSYLZ<Xv3bhl<u3xhgT(^y
zy%JX}Vz)A8FMlYmkJH<2my%d-$v%rzb0QO)(ts>l?Xw;(e+7c#M{okGgFoyz7ht1b
z#noB?jTBAP`@!CGhvc4L=-%^6_5W=79pEk~<)3^~YQWFRKj2R2&nvDXzt8UI-`?}U
z;oE&|r^A08<7e%KFgPdaUwu0M)!FiEL>L{(aUDQG{;J7$^5FH)$d5X)`WX00Q8$wO
z$C;M=bp6HF(~~iFP`TJ7n^>DfW?@CR`5)CCE}GLRNB!}KI}dJ~#kRM3Hm%<<{-g2@
zEUKs>*0U5#rzZN8V(XNb&>4t@gM!AI!{g=0=}P-=wLr)XZL^U<#5HE5m~ZDpa2mtD
z5T)b}A55ftCFLfn<ou<;mtB5rJ7VE~3Vdg$@ohiIIpP6dxp+LvSSWn2^!Tz6hl*T&
zyY>3FW?>V}V;(V2j>pTtgMkJXDK0`vozy;S7oDtJh5YX&ke8i|a|M6kDsg}L193Zv
z-k*nY&}!D70&CL;o^BuCl)Y!YdWnv`y^5vFlHweV>nQs^))0zUAG{bX_O~zDvz#S4
zXGu}0`u9G3Ql_|D;nN6PY|E<+FUFQl#{%jI;WOAjXB*xU{aJ8->rOHUBFmZ2s6!rn
z;pZMiap3Tpp80>mLV~SoUL%C6pdbEQ&u>rNz6>*L!+vcRY5%-ZYO4Uwgs$}VIYLR#
z?_xWP!)JVKp`8_c4R2F$+f7zT9RdIL@l})OLmyvG3brz~j|1D(<k{}myu%;X{KV8!
zhePum5d%PhEau_u`<-P~S&ZN91V65YH`!suyZ(`^f4hZFQl$*f_PLX%k<!6^>h|U=
z@Av=FF`CxsVP(|PWAZR5s`@+QgLrW*b0yZtwzl`I#~ZtNo~BNF=B?hd;B7C~saCVF
zZ@&>nSpWi=)o)z*j#rX!!NIOsgvxl&d=9_k^McUN1A7_8Td8f&8yB4W^0&!rWiH>q
zRTN+X_ooj3gZ~RKTR$*+90!_NhhqOZ@oU=2W+g`imOt|k<_b0U$+g6-`JE@*=FBR+
zP=kRxdVumUeG@I_-txUaUv%j3Ptx^Go~dE}JHe|RSL*ih8x~vxZV3St{MpNgSWsea
zHBN-EJIdeE>XJs~S8K%vZ-dokJd$}v_>}+FmY#meh%vAHA)dV&&hPo<pZ~pyX8g~~
zIi^OYpHGa<FW(p5b08ukP5DATB4yc~RX&HuiNbsa9|of0#K?SxJ{h!cxP8tc-t25R
z@Dw&)IRVdN5pQ0L`5gSqujmU6*WN&7;7=?M8V{C$Ov5ehIwqN=i?5GvbH2tuMZ-5g
zw#VctY1)bBf75UOPC``U%X{sq#*w^8>E4k%tzmQi+XP`qFgm@O*@^5Nt*g;#hhf`^
z6${V_=dlDiuVJ6ImTR$)ig$G!oPRA}=8xaD=s!-FyTIcy{yaIFaBLn+$s9<Jr=11*
zD1Z19;6^sAvJC1^07r37=CwnIIm;iyLxB-Nqj#$a107_q{2A^I^U9}Vw&8gKgUH?G
z_pt~)e$`R*Izp5`p_32}wq|CHw>{mm`Uj=2%jKN4KLYEk<T;2d>2v>Vz5L*Z7u*Pm
z%WENxN~T`pcX4p*K8)$iT6<M=FZ)qm;`m&%{lyC!u9XQxO;Ra;=%AXUD|u4&gR+7^
zjfcw{m}*k712WZkefHsUJ8GW#>!<NoM=>lCTfrc88Km};I9`y0$M^mA#67Rr_oGuw
z=ka(#>F(BvopVWDy6^D6KnLEvV9!hT{pgh9C;2c(huvL68G8Sc;$u34!pWbu)xX$1
zvG$(X|45Tn4!`SqBLE6^dEfs*;l#n0xifWCV49t7&&J6gcP%nzEwTpP8^)YJ%N>4j
z?c=lQn*$5xYqfcmk*8(+`|T`>kLftaW~rL3<~>z@_aD{J<##7!x@X1rfreY=UGv*Y
z@kHd(b@N&dwl0{p`mWL)n&5PCHWM?T`4W?cnwozZt7Eg<Pk>EO%Lc?R*x|phKvP1s
z?JBPM%O4W2&!tqc#9df@w#cT#OAcnYxaA6|bb0wLf3JRd7g3k*8NVAyBWBrTaTYI?
z3pt>pw3Wj-4txiG@7s5brT1SjBZ=jYN+O6B(~5zH{of`L5av(rfw-<G&gQH*>xn&h
z9lD-4IYxWqLpJB`)&<*UHInq5WV%w7-PQ^};?KjDfUoX*1m0zW#p^3AQTwc0^`gCH
z-!Es4y{B{hqc$<-<c`kqe^_umRc{;rriinUeJ_!|-ENJj#%3p@+NHgH-y_G`UjX3t
z*F4ew{5w$LU(oX8`Z?GjOH8cW4))QDh*brnylwT`gL4<#EEB<X?=$T^_YzDG6@PZ;
z!Sh(JJ*Rx^ZzZ;iAA+Uddp2}wJ2=F#4!?N&J)IK{yUq!Rnp$O{{1Z-TxK{oNwtPoi
zBYH|F6xR|g3zSq@^J@`8I5dkIS9&@u>>Pi>yzuX`e$(Ls)0f|77&IKv86v5=w#td~
zkz?=rvFNM%E^MFmP_oL5F%1Wnz*bnx=E~kI%cO~~YtQ0I(pBqg6C;>~ZySFiT1S|-
zXCt$Vd9<rLd;LA_vz{i{Jq<cnA_ZP!5;FVRiDgU$8uqUQ)WLUD_Eny3xV9hqieF^+
z$LKPF*VBu}=U&@^^y*wa0BPRyT9BRmIGwPMK6d%6(xVNxv^2DwwXWe~4W$R19j2z3
z!#7&udBsN)fPMfuCbt2ofk?@h%VOEEUtzg;f`#uf!GKY7e+&8>eo-Gcj<xwX1vh6(
zA56f)0l6~CVQpr&6W`ujRwVxec3!8W-GMtvgYrF}&;~Lc{v&R4%WqYqFDt(V?-xm#
zF~|Mo-}`I#dro;CPm?<TgupTYJrhQ6*#A}vnpD*Ei9g`r&fRkw_KRN<=sZv89H0w%
zdaRp$+vBI*Rz9tH6$ezR-ifsL3)q`Ti?DX`Pv_>)*w@`GC`^FV5ivp(7mQtV-tW*L
zZF3qv0Q*I~axzbDt4QaB6EF~H-YnT2x=c{)KDA|Hh4!}}ytK0Kx6d}bM`k)LWyneD
zQLA`+7*kHWF;x9!Ji+D~U0Np=xDm#z)=u(Y$_k!Y&KWk!uV7+mCXnJwCf|VOVD+Au
zhh_Zz<9G`^T%Lo)6X9Gse6WqRtUHV6u-X2znq<>uOdK*9X`N`EbLsM1TgUHh1$CU7
z&)$4UlBxW4Tsbeh+*ZOtsHnkh=LYTD5@rnMSQF>9EV^_2uD0=?N&fozKI;)$&-moE
zKAIJH2-iU@)EeJp+A}<b-_G9{e#J8;<eu<Y%fY!XU;UlkC(B=J?jK>cIZbAphs!N4
zS?PN%2-H@EXe+M6oOJkx4dcID{v;bKI-!<E*j3C82^3EqHd-BQdAsF{G-joI6z|T-
zm$P)L#87SW1^yWzYG%eLwrxCCzVmT#!nSw~h}yvRW0{S|mmzy69}qo}v|W=uWR{ec
zBjS~$%uHU&0Pe;39hT!~)cWrZC@-o<`BncXptkGZL|#L!yhBLgvTyxhj<ax<U-Fl{
z925*X$HK{d04{&&uQW)Qb$Sb5DA4BbG^Lc`JA}di{QDmY{0{~GhXVgYf&X7pV3r;I
zmdW&V4-E|$vpu8v?qWVW+Px=R81C7XF9xEl>+T=O_hyU3+3o#9+;`@){X@n4XkT|v
zKHFHpu93+c{piuk&;I6U<u_a>@%##|Gr5|%HgR=x6}S#?y^rg!xjxDDWv+X<9^n#<
z<Gp@C+Q!0~#wE*_^=2BEoIS>$<;x2EeZBoXo5$X4rm>J+*x0+M@oW<Ho}4L+_AKok
zDl93Ef_hVa`$%8Ya3-$a@JN2hs@F$_6YmFxyL+?4+uxG!DP{(9z1_ubBTbyKFVLm0
zH#^uplC>ng`63x|l$QWyDMv<!cZ_xqX7WR0t5@aES@HUwl`GHb>&a{}vaiVs)h?GN
z+t=%U$A$TJQZtP95AE1q>Px`ikuO>e!WY$KsC$swbab|DY}wG3+0wn6jQK)ofRw}8
zf#Ds6OmTS0aH%*_DpD*>tM~r*&iuegX7_M^Z)T)8nkf`VOVFS+)IU4~_NBp0-=5w~
zaqmdJH{VCHf$pLx*E2j+C}t?5INDG0zS2;S{mD`B;&5hn_h?2GD&%<$ZHt-Se9u6x
z*uBF**@J+uTtP{@hKBbHWjZ@9ys&Fsu5;7+TxZ**ZJiviF*-!H?WG-=f&T3@WUjH4
zYb@lJjWu39mTT<IcoyC@nlDo7_Ix3;%il}!tCD}Uw6M3ZbXR_KC_k{&fG!n>K-|od
zHI0R(jfKooQuZuu>|NT|+dtGd%u|Mj&Z+8ap5Iu??8@)W75cAsKX!Kyl=AV<!S1nK
zeh6CR3zk+H`v$sq=vRMc?WT?EI@aehOScaX7nef1zWyCcq7vQjrX5#jng#}T4>oy3
zc6AR76!s3n<O2g^*~Xr1<BHX*3yrV4;>{;tb#kWh>QZ+5-Xe8wY+Bxzy{P{}_ppHn
zM}>^5xmt?i)`;Pn3d6dZGM%kC$i2B`^P6&AEnC|&OG|~(r4V`LiZ$Uequ)!%R;|pf
zT(M-Jf2cIJWXDj+r9?)!bOoL$_jQhb2?__=LfQOo2%`l050h;#_T{W|<}zy2fx@7B
z=ttb-=*`f@aYk-rfG)gqc%U~w>N#LZ;?<HqIy^<|@}JjO&ulFAX8Q}-(;Ew?Q{@Y{
zuCqT)`LSZ=ybI3HH0^Q};lao&Bpg1&BgH~y_wuHdf!}D)LJ@%}K3LK}v_$>Be`pAF
zV3i$9x<^O5_hyX~jH^i&ae=XpaX<z(@6HVk_vRxG(gR&2aFBbXB@0a+IyZ5qxCpdI
zyNyz=XXb`S3c1XV{7_CJ3z8YuzJmy@+|KTy-huF;$>dbi=&;?b6Z939QfE3kJ-H_X
zd^$ynfWO~}K*|q}6!&H&SDK(=cW>`#t}r5zx;#qTKSUk+oj4pBw(;WR=;Mg0;=Y~H
zSUBTkBN+`~RdIqA)TxHy?>oN)z}8I{wQY24*;G`cHCcDfWtv9w1Ay<z4;AuJG5&XU
zxG&2<K(lMG+MORQNPJo4o5*Oj*F%1wDJEm}?<UxMm%Y58I#u#ToUDlkDrB0r7u=tw
zOmAs$aBoh06(MM38R{O$=0`_|N3-2U6a9??V@r@?nT3P-!7So^k&$JD0XJv;#ZhGp
z@tBjyqi5yRW{o{gR#D3{O$=rt;b#C`&v%)lFH19xgI9Dfxw>V^<;#|=&NW?iX5&D=
zOAg!~#Ei=jl|&EB<qAkQO68gASSl;4&hye_(SwXR{SKa!TS=ki&}%B>3)Vbov|e|?
zRbFy68IZVY^?$o!osi2Viyge;%}cLZ3h+0txoVAWCtu}dVN`N7K6ud4Z>x%jX^i=r
zrM@MTgHN&@*0^>MO&f<Y5um0*rc~%<9OX|E7mw1KtE?oGJJxj^$s~(V&YV0-ydTOJ
zQ86^$!Eu?f-Vv9(XUt_Q_KevJlI`j*x_9n5(>IzonQ7lm#C8{p-90<w@<@mVA>o^l
zBx|y5*8kUbU4phav?I@m)7v<-M1L~pbq@^>ou9!Oj6r+jC70zcYTLZAtuuFN+vY7D
zn>PBF?JZk!>d$L8ZMvwVE%9>8o3^ZN>FmtCadS&oSKDU)1wqu4A1Tspb7INu-95Y3
zWV%Optm!F^p_t@G^C&Sv;z-@ddd1=Q&sw%@`Lbo;w+2P<b-jzS${&5zxHna{voedb
zg<bt4$f_M#YER*G)Iu>o($v(HvEE4E><gqxzECR}z0%E<v7aMNd)$L`P-{kB6n0UE
zQi0#2#ifJ&Xon0e$(Nq{&-Bb1?oEX=<F3HVpxPuJEs5zlj-L}5q8IM7?|Knz>o-YA
z;l(t`Ra%6FgKw`=SqvpFEF3z~4|NG3@K=e7JxifJiX<v(&(eH&8cVz#i(hAY2D%X*
zef^BV-92isjAL|^xBkKI(Y?{nJSoy`bEa<`e^0bc_|miod`5C;C}(E+q|WW-J~-S<
z!+~*Meyrba`XJQ9CwtaMd+;6Z%nX{1{n1-#IXyc@hf5=8X4DJaUwxr7H}#F8DWa9`
z_Psmt=)d)hphQ^DUm8EUZ;nrG)W{6%Ddy0~bVIqf``BQ=dnn|0tQ;7oZ<riGixBe_
zc5PqEfSB(d%#C!97NA-BB_nCC^n3p{{ZnrT3)0R<dvcH|f0lIpJ-Ocg0(yUOcr@dx
zY^8)oPQ3Ds?cOW}6`y{o1YOR}fl{v+zVl2elJCOv$Z(;U)7*7M&6}0sP3p6LL|@Pd
zhrl?>>wi~&&oL_+3(yMrp<Zeq<?+9xJpOko&uG49cQTLv9p&-AQ+b%~jlj&(#G<ki
z@1nekch&ht&+7c)T{3@om&&hxTO0_rrWB<@^o2Ktnl~`ApGG1gVewew62nL1jSWej
z9mtZCphxf6m6Oc1k18p8$Vmr{ehC4MmL5AjB3nmuex%5`uS0zXRbLajm8rsYhFV6O
zf&;n><$8EmX~c7QZji}lLVWAD6)rwiPofj+U1_K=!h~07=ZiTvs%8p3JM+D{o&oxs
zJt4L{>C`WxM^!Z@23l_TC1|ehq3gH?Nej2!p3(kd_jb+9P0Zv%D<OGI_0HLBB_S;0
z7f2NUgE;|(nN||uxNHNXCFT`{of$nqN@a1sM+QmXpJ%9MGL#$c%b8BBZ_$sjf~hUS
z$nr$PpdlIIC71zugh%&|eC7{I`4WSqu)-1`@#sqJ*K{gZ@To8}Aj$lX?X=urpuMp~
zu#*6LBudsjip?a{u^*m9Zo09@qhRk+5{eWgv*t+2Cif~9sFYDFP{YfF1Vs?!!p}sZ
zD@=?fQCnH_W<}0RsC2SAFIVIu$(T-C^SabKvI4E&gjz_-yOnj`tzbYjL6%Ba^{z%z
z04S0jZo=)9rHuRG2HfZe!)b;wrN3{lM&FXAsEnb5-90{qM$u5b8fHZ<ApnyfR!;T7
za;Q1Yc$R1Z%MpE0-}XauB8_YGFd!+7AD6|7yS7ISn-UuZ#xHumtFND{xw%fPAD{(|
zMZBozpb|-6$t9;dp^_Sus`<g*RX3*6RW*{Ot3$Z(KB58?*3=@cWg!V@gj99H+|Ir9
z=!TaZOZ5Jul?>NSTsLxEuiqayT6u!|BV32LZsi)`+Q!wzbq&`t(qy^jaW(5VSC*@N
z?y<`7^N&@UUwEwY2+!AXZR5Az$$*Osg}H>{X=DF#nnp`R<#NVA`sIxgvRrP@n^gr-
z;L|(1${J=95N>$K5az$$tn3-t{LpTUoX+~Q#$GX(*g0Gp=*@1=XNQNl`m$%phIz)~
z>=|al-~kK388R-Ofl)>OrkJ!WUw!tf)hm~+TIN!@bmxU>%-T&$Hn(Bll{P08`23Um
zBJ(|p^zZ=I-|9423}hLZ(h9oNv!k=trP8S>p-5E<N1&<U`KF%+UOI(?7w8>V$PD%@
z15kmc?8f0Nt<=+3$QDW?nn+#X2^8|>2m01vqU$g6M|Q1XcL{V%rK?+rOF4bIY<D5s
z*10Y#%exSZtzK5X@du_Tt+;dxVFpY~?>J2*q~NF1V{Y9J{(?V6`WSC|t|i==mnksY
zH#$5BIu0cxXl*%+z+rA|24q;0tTWI@<w&K6*~}ye{rxYr==@l=55Atd+%&!+r=%`$
zP#%VM6sl2A;oWG4Jx5Jvam-^_@YJzJ2<WHjTDRPVSk4z^ry^J=7YSi~dJR=8X+exd
zfb1KxjV0f2r%H!mH+w~6=_+Kw)yJ9M77;?)so<KixDMoL)2AS(`&V`S5|-<LN{WAK
z)BE)eQeyxc^JIzWUoX8`vR!&sG+d6U@R#)%zKC#{DqUn-k5W!wPqVLQg&nI|k`r*W
zFbVLTH9Wg;S5M!LMV<p3?a#oRSvn)zKR7bLB9Doe9r@A4*`A%<{DuEn+hKOf;v%e4
z%a3MdpAK$e=!{|nqi1+<1ksK<?;#yGe!atagVbjt5L>fbB?<@yIC0moX}_=O&@la)
z7v1R6F2{`NjW`MUH%&czV(Nv3712!ujEEM>o30%aa76RP*#OO&AqDQZ+LggPw5nyc
z35myOI())#>_k`=<(qXjqvZ7T7#N1JeI^tAC<>BFuB8@H9ju!e2W>gNssRH&_1n)c
z)YAo~OQ+FGqa*AK((p5j*aLgh?L8g+MK9yAZfQTP|9D`65Xzk?f4Ub%%|C5^rVm=R
zwn~O_Vmg?fpf$Su;PB|)>_x6Q!cZ8}yG0oByrfG_@+>PrdEXhPD+jAXk%b#y2o<jn
zKb@=wcs+WtbQI){sd6P7b5SO`2e<d{C=Hhw-4VE25~lCCr)2q||0Upfx<zRvAp^cu
z^m9w#VdXgxuWov#xV_ns5^WfpDCse_+rI!G&1Vp6p!5bu`aL_*nX+)WiFY`0lqK<V
z;rYGU(e8e0l`~2M{TMB?O9sxkAlp+KWu{&XdUoLO06)fma93}Ctc28l*K#L%V@gYj
z=^(p}tjfJv<nB&VX(>?}2Z&48ShvMhEWmY@=^rw98czJ8Yc|N=?P%w4n7k~^sicZ7
zG2X_v5(5cpXPo}Mz2sNVnQWFud-5_1V;Cwdb(-^1jWmwjGo*LAeKLKhM~sJDS!gTR
zpUTTvW}Px1WqSTh_@D(2b{Ch11qz`yeLjy@oqRLk7mC1JsTfd9@tvOr`MDacAPOh?
ziA_&!WrphFnBbb7HZKm#UuI~>l<hTG8d7`9ScRQ3%UZdT27LXRlp|oFTf)`o7<xuX
z$E3gw6)d#dx^S4y!83AMkhelst6Z-8Gh=kstdrmR*Ob|+^wmVU)8{jlUj9de-Eg_G
z;mwp-Ez=Sk<5mh+<Z0h<TCYo#H+4Nt=qhjAl*d!gC>upSr}WRYZpng-%i{J<)DIUs
zG&r}qiU|Ow&cjK}%fujc@Qb^i&tqeoCqYQ>6Uj`WqGZa#IMg?s+rBr4Bbw%2>sn#1
zK)H}_D=k;Vp3RWy+b)t!JLMb(iy4Q9^y?x6g0k>cnj`Hi4)6d%5vhI_3raUn^1O0J
z!Iu!=N2{!u^h)#zN+=k07={;T11n-(+RgB=BhQT5{R{bHV##bHA4cKmL~FhIZk#^U
z$E8(&g<?@%YT?&OpJ2_}^yWC|Yjs6q;VM`4FgZ0>nlNZlrI7z3Y!mr`s7<^zLzPPO
zvC@cuo1#*z>c?#+G{R@~LTO>cS?A!U>NOdKkZ6Or14*IZ%Us1+l=ke&=X(uez~?!@
z3+v>Iv;8}UhBbSy-~X6QfYy@jEZFsiZsA!HtfB#z5L|_PHZV9sMy@BtocB_285S<8
z<_Gbl*VBCO32aVx@IyCXLbizRiF`4On8T(<`2b^~^{GWh!H!nzWmO||pxe~&TuT@T
zGadj(2EnR<ep)!FSOeJj3@tSEUM7Qe(z7fEfi-{VA1VxaOG=@%eMy8HRH&1$G?X7h
z>(M+zgOAlx5a=RTmzY$^;!&&5#dN2A%|9zL1vv?@SEeFgI<4uPF<2Zg6xFHg;1QJ>
zESmXVSZfeN7Rs2s$}}hoWK^H*LL5fTlZr|Y_w~`xfkEoP55grt&@y738aq}A`D5nj
zEsZ!4D=grP^Rs8sy{h%xVDHE-+%Yh`9jl|(7#FP(lGwX){k?c_QZ0w98f$UZoCCAo
zbW&TcYx)Q-)0v|5VCRogBfre<7$Yqqmb9~l=_csJC{)|rByj^CQ^RxiGa2uu%b%7f
zvSkKzyeZfB%urs3L`mLknQ=l!(VlKehkkgVH;=QR3BxqB(A$msyp)XVF(V#XS27X`
zE1!srr>i_3{l9>p30Nj8`9CQ2kBULJmoPCSTs65t`H~%DcyzQhLU&T`kZ&eBGJc9v
zYDgLKWAJvQHY+5ftG62jB1r*gZQ0tgrEP6?7q-}ddB{&XFLPq%h&6qAGrOXp>6)zl
zY=kxQqnb&H2(@q$VgoO*C6~5rcA~=QUqiQg<(s&*S|JcU@{F2H+_z(qa0+!OH^$mn
zdhehkho^#SuSJ-6fDQSkEZ3N4@8I^~0TXya-%ky!#Y2AD#i-%9orc!DpfE_MbX5%L
zBAJAtI8ve9h!piv0S@VbD+9bJcXfVrIE$J;+MO`bg><3cOM(<xGqPbLlGj~ZH!sfa
zV0OwdpT?(dJ`?4#O52P!)lrVGyq3+ITi%o^u{K|@hB1j|35-@W%xcrgE`!r9{cH!?
z%HF_q+1Dhj>oL9J`Y5fhNN;ULYRfU$jBi0cKr>T|rlObAjpDu$;U*@FC<utFRkPai
zrmL4_N%2=)uVg-FY4+VPMUmR_T-vE9GF5u1UG*qZo4%SJ3Eb*Z#Hu#~T@o-FOIE)?
zncDJgU3|#^>xTm<Hu&7jYVT|^UR(Am>=blWmkBZ@UYEst&{XN#^5Qg<6P*2Ndi8MU
z=`V(^%{OiPt?=EmPCg{TRE?LA7crkmA|)EHJ1hCIM7+Y-CEuGV`WyLJ>QI{_Z4<&<
zqs4UcBd)izy&Vsfdh|(9(>3F9U{eoHoY`?Ei|lTT!4&ll@+hn%Io=Bkc(v_VPtLY&
zykvuhcHLL5ND9Dd^M|5yxl%AC)us=YA}24!t@ZgUOtPXy+f;^HxZ)UNEN7#S=2?yt
zLwW{Kc6rHnjn0K%hh{4%0QMHH2qMC%^r#*2Y$h!~XMi&!q~pcMlq5f|i;#-Ytuy}D
zsUP)PW28YHUxWNnooshk^7n4h&b?4gr^C<S#iM@kypYMnL^%D;>on8iC#<4$@d!=3
zc&aBX0$9bhcvD1O@>YFGfrMPD*B*u^hEm5kag#)1^my`Lg4MGq|HXi-@fg6oATKR+
zEaE3(Gtw=tv2WFG&wa*|5<W~G<8gM%dU?jI1J3pcu%po!b_RUR)S4x+(JJ&`^HY@A
zG%ZhrL;q&{<Y`Yos|1b&CDYNgr9wN~SPpX(Npcsj42v20>A#6bP!J>QiOu0{q&0LL
zmB5kNsKaOmx}eo+r-dVogo5X~KoD~{QQus6W+Pq|-T-CWXYGxz^^EmqyNMaJL}1NH
zl3mACF0U-4ne2G_XV37+UNsnvV%sI%bZ17CXQazox1rkRG707jeO7iKRX)H;yJMmH
zUeSmaE4=9aPM~?)7^7QnKltSnNyK=vEyn%98o<p8%y?sV#u^BPeD`S2&M-5P+LkP~
zaUfVRVmuRY-7w4W8JWe3JFy?^>9)1s$g)i(6ZK5wk0qmEkkg@?o>wN)yU{!(tm-d`
zbPli5&~afF=%2`MIkh#>m{&+qR!GOpcX)J7RO9MZJ(GdS6}^zpTbH$BC<B<I&bf9+
zT;roOS}<c|NFNhtM~SU3QGq5>46&q@!y}oXb0oWiU1gziF7nP<I5)FTFv)+r2U)}@
zjhQ(zIgENTNA;JGb4qqJ$|kbL{8x>?H^LhF&f?3$X|f77-><EQ%O}6}=_?ZGHj_Q2
z+5>Kyd{kAsQtStW>69Llrd!azjc`E;Nm+V~{UiE?^zs-D(%4KCX?449`nXL6h4$Ko
z3q1JL*9#NyrBTlaKMZP0EE${D2V=bBmW?ftYP_k^Pif(_41xYJ{2sZ;ny*u-A47rl
zVwT(;_&RhM9vYC5U}y&{(z2QO2G(jCikt^19eH7ZF5c}PC=9!VQbj`f#y7E1NWlo`
zB)tiUHty7#do-qL3wqYub#v^LVCR6^v|ns%(<;l0Q8(@%RpkLhcFZYZNN0>I7f(fD
zA#5f6MMw~#j4;L8xA1h^e0=)!`qr9YU(-+{;bgr!L6<7MYE9OUYeAWnbxobx>ot@e
ztc~e@QUga@ME4Hjt`a6AR(#ZE)pDmMe=LZCVrW@Hd)B0PW<W8(_Wa&qAHoEKu~dmP
z%GP10gyR51E)%F!`wdcTz{bhLgaO?Yr~oGvAqf`~+B0=RZU;_X6V~FOs8*izUOFYa
z_O!^bkWp6ShTCV-dqG&<i1<0cf!*bZv)8POp)c7;n`P?+J6E-4kQnF!zBT#Nqwl#^
zhtd2Jy{7Ml=8DVrc5mF9<u3z&tMC|VSb3YFyc)Q%^zrb#6*a(N(J2(@G=Qi`RWj~>
z(IB7t9-Ddtyzn_`zJ>RtgQC^3XsVbGgg(LYzXK;Gk4-FB;{2#3>R^~9Tz=LF^f6(k
z^8;(QS^SYjs(dXT)56gRBq;_ci_cI)ziIK2@yiCI!4eN(inpqnj$*n^o1fh)gW@MI
zD%oiryq$0Z+%e=PMML>LutQP%s71wvbRV#+t!LcQ-Mw!SKAvnEX<4bpl~zm3Htu4I
zUFztVScy-MyIyZ&170*Ls45a&Mx#)^PiMv?+XjLYMd(72sU(4KSYh}2opo>PPHr8p
zhW=IQy*d)p*N>^rN70iY);eN3)zNb_M&RzOH4<bRTp-t=ptA(VjOwX<5N1M^2NKSJ
zTJW&_fi{bE!aKo#R$eqT+pH#;NfVI90)_}&ZLK?adT0ZLZNW&D>v2<5CYMW$z-(i2
zR!WU6g!;wLfibtx{D!cg8sG$NC4~3zARQiw_6g~Bv5_v&BubR1pEnbb%6t(apc`Ns
z$6OPJa*Ymnpmg`_weFkL4xzyrFcktmV1p`<9@dy+Qb)xq$`VIr*_k!`K~6spiuvEK
zY^jC(TAx~2tJ+#9PU9En*NjH%>xmJG)$pFtVfJ2Yp6)!ywrkyxZSet-P|sR8#@fgg
z7Z%2rLnY6m{xlUHZd?r57!**lMg6!EN&jX#H?9m$I#54Lst{g0+6>*sx>`JAdZqgi
zD!W8Z5&=-H%^xZ4sif&8`Kk1{5F#SA3(RH%p3a`t<9_b+zmU(S=;@?3*GRt-g#+H{
z{ONSrg#ph<EvU-py1P27w$}LE$+haxZLC`-%Vjl#J|dqGwMW7y#+)#Q*pq<sn3@T*
zcw*a7RK6d*eEc$ox+oxy2A-Hc+FmX3F4^aN#pU5FkJ-jvFRlv2;BZWrpi9gJ&S?j~
zrx--AFksdQbeuW8Gl_T_Ax51|B;@yg?2#v?lN!lkhW>@<;k^gpP!9Ry@`FZgZHN5v
zkW)KNf)tGTAkH7JOxj>;1M!StB0AJ7%_i&g_(W}L=$+zt4<zuD`g+I^>f19spe?TA
zpWdipO&v(nCBn!2)XjS3#~ZoHm>9G%D!`4>+rFIY^avUZeD(6B>^_MtoKu-5LV1aN
zaTC~nA*fFXI2zn46w)W=Bj(AQ)F&n1p@zM$rdMsgK!&Tw;(0{O&(-O{V~rp$IiK)7
z(U`$TRKj&RGjFnafjG3p3;4j&>2|3LKS&F2Uksu)l*hiPP_2mH>ca8D!3ZG(C)gzI
z%K|bLJ*}QTzx8};AlV)gHDwkO!A{t%XM}68T+g;4FJ3!J2*5O*Z1QcT$<?8{wZ&b+
zByP9r^z~agu77oU(-E)k_0tJ_5b89#>ou4|)G__g5a?MAFG<Rv^GlVeVI|+PQ^E0C
zgLytnS6^ZZ6Wt%6NxD~;uQ(7(hWj+TD!A#YH+q<Na^!o#Amqk?<0_vyf{#WwnzyNM
zPuM;e@l`b*Dg0gjz}_hs$5TFAT(k>jiQ87-!OTFvi1vj6lr6K)$3Bm+WRS6;d}Oa5
z<-DZTAnKW3n{31<UOqcpmIqLqKNf3}PXggxujqv_AI9Z*j+Jw0ESRjkWZv3xV!bN~
z!73@->9aw+gmJ}+P(>1eYvG1mUJ9|h35i*it6n_<P;C=8XV+4;dk1?Qn1Kdj*R6k?
zFFj2P?1Cy4Dqu_{R6+@hrE_k_T(~zojCwWNkIOF8<$U)plYg4X#f!YA_JsNhx^M7M
zVM8Q|vejBe6~sSHrd>l0o7vQbqb6aHHm7Tgl{P%$yo+OcCCc5-J}*mETX0pK;q^M@
zO_M)0cd?#QC;!y-R`IyR^vl-Z=R2zRxgv<X<BYf1;%h^8FutOOUJxsmb;=XIwZ6hB
zf~W94Q(D^;aMZnzhivuoyNQ(`NZc>9>9-c2(T_~u(KhxZlTAgx2#2`GyH!gdD}NxJ
zxHbaq#a2DML?4^`q$-w#QlAgvJja2^H03+G7_{RgPPF<S^XGK>iKCA5Mx~_(joQ`o
z@K{F>8G6i~YX)|?RSB>9gK6NCy5*}i*x4D4@_J0_H<VPR=TXp-^C5jw_p7G{)N4nt
zQd=ulwTS;Dd`y;Udh1#w;Gd8Wu04Dflp&u5X%DYfvuMa)zrfhqVw@?b>%<tC9G8we
zzt#n&mFqDivnxn1b(UX4A*!cm$Xfg@*a)wgv0IMxx=0M&xT>%V8)}hpS{#x<t6uw{
zqOqS$%SH(;wB90tTWoe~1hx3t{!+8M!I7FR*d#Ngvk!eNa-hS;O8}91Fv2UDF0!ph
z*3GzIMfB3}>h&q@CABaxZXbnFGL)Z4@9OIplAlAB#TF5s33xH-y){BGT|MAy?QnIW
zb{$rJMpp+fT0qYIY`<VjrZ+=Z`JvX8|8e<Yah$b_`lZ&zUt6NttCA%|>bl&PmJMB<
zZ8^nFUEAK$u~B0iwHU>aj6sIbsRJbfqG^~WghBsM?h0q{e4CKJ$}IqmVCs$x40Y-m
z<IDP{7UZWyHbL(=lTh`BQ@5?xx49Q0E?jZ6$vKoC=a20h^`M~F*98>dr1Qj><4u+y
zT8I=f=lp2eeq8+GM2|<@?dUZ&j-k|Tx424iyQe_a%kN2MvKy0(?>lkIP|ql+GhV%H
z4T%l3!D8$eF<fA%>Eb<g?}j95XCEss7YqUg3pQA=ZdEr9)bZp@#)S&;qo&U1_lY~6
zWtTf4|3h^CrPJk#=^qo_<eka6<bJdGyNh=+HB?vo>VO7;{>Kj|4I$*OE1zs==*Cdf
zPrO5h2K+1ox1Zq*<IeZ8P;2k?eB%SGX>C+due3gxW}#5NPj4$jQ>TvUS{L77%Iqt#
z3EY-rgQgHMY$&g8e%~*ghrf$u5Hi-u7se6FfDDPXuY~JPG?s?^SND%3jWRJ)c%Qda
zI-AhBNv*Uu`OL}8opS3lj*1=TQu)0Gq{+Wm0ieD#7tmGI4Q67g^kyc|_h=bPVOXH5
z?UV%rZ=GR<);XZn`svyFK#aEq<1h_G(KUeVhvq=msC>7s;MNDU5mLTqF~h|uxxf~h
zO=Zt?b?||ks@BWm{*aLWu1OQ}AL0S(>ahr&2%k8Ajr>nR@$$b0P@t=q|31(EOZo3G
zKjZ&}{P&<@D%9;~$(dBNW^=}xAfB%{(^)*OVi{7C-@g7J>!;9zqEOw(Ib@jN4|ENk
zFNqZU1H;B)b40Qb_vc9toWJHgI{fZ_Rz!HzV0ONDPzvzswRa*G2P!eaIFiK9cEp?Y
z6MDxKd7{G;>JIve{B`A$*Au6J?fBU@UZ_u9IPth&3+lP$CqOEpaY7JzlX4C~o${-j
z%5;e^$EcIuTk{F*>B7onVI>RZ7fT<%xu8DXm^j*UpyE(y^KA5+z8ZtjDmG%!HbrR9
zaIt?-M%g;}Xr&ng8H)m1TqG14enkjKhh`|mk=AsToGR$2W%b~h;~+YJu4^+#3T=H;
zS6i;_vaLc5gmeUgwo-)S5vG9?vuxb1E(nD@g{#(qX5a^i?V>`5jDZeeJ{bJMd{J(_
zCfce)Dv#(4`83rL$QfPArh*fuoyP?v!5`*dlXXF!pasE-Y<sj;-bQ;h`E<)>aeHY(
z6!x^ol=fNSDa)tf)FpDOEdff*M{TKi7zvkUUu3A~x@eQGtlrV-7T`s~gdMNLPhR5`
z*j5+IXWvHlz%EfeVz{Pi5FH5m7clR-@i?k@Egm*>$LXsgc!u=C!vLb$X)7|Zz=Vkh
z@Ado;9?FFs(?J1CiSk@f7(trI{snk3zr{q4N8p5;kqdN2@xgL16&yOc?di4kZDyx#
zsySVGUfjBkeIOJOi6TNi*RE=QBH*|T=C(CP2N}gCN{9u8I@z2@_tJ7gV0cVNwr~{S
z#PzjEG%QecmpBp4Ad)X~H3;dQN+)kaq30}mRLboLLY`I2)o4wC$W%l_M|(_URAOJb
z2!4tWg`Hg6OncN1i$7A29*J_)MH7X1q%h+Uzj08(yrevsZU?u9a;*a9bscJzs7!+H
zF}+-mRzA@;F3@#>05?wWMZe8ys#C{!#Ob5RK&~yYjV+WaOz$+aRF&N^&gYmxrurU9
z8O=qAaASEA^^McVd@k62Dc{+32r&|9U0a_xA7e!xM>a+c_1PsFUqZHszV*t(jdqat
zSRu@clqjtpJ>v3|iOC4on5dX(%Zc3+vhivnOdD`=#Bs1{>ltSeeQL6KiC3F1#@Bij
zO|J1i!SXZ89oLd+yb}JFYuqjx_(}m%p+8ex&L*N$7WWVhFU^NF`NXsuMZN2iLWtm~
zt7%VN&zDfY6rAGlE|%*^4`b>uJH`J9Z0jXQ-FzB_*KG;ph@53z04}~cxV@N!cUT;6
zmSQmYj?@58^viXT+}K_k9La9(?AXw;HMgN{L+7To7iAaHSrrJkuxN31?=VA9|BjtS
z+~Y*6VHu2YDUY`lye834A~}oWyO*hJ!$u9+mlb1mw-(w|Cn-6|n5OK8?p-+YF~Lx2
zqhXV<cNruE7-<*!vk!UB`GcR{uy>IZ#-%8Ewxg`7642Rmpa!}8&~RzTPG@&Tq6a$r
z<%X2^RLqGQ+tVJOo_(jypYnCu-9K6^QD0Y3$Ubd;kF{p}n)0Xk-s9`KMXDhGMf-OW
z?Gfsy<qI7r7h;0i5>to;<EzM6Hzj`6`TK|B(8A^&jZ<$ln~OIGy7)F8z5<rSpIlMZ
z?ND8gHxU`%CG%G2GdG=?DhQ(_!p0c_Gr|#IcNVF`Jymhry^FC!nANXO4PG$<h*5?Q
zMLlm+^_(t7_wo^!rKs4tzniA}mYEUXB*7AxRpk@^;Qm=0#Z!`QDsBiF>(;}im!m;d
z>cujib?dA?=YtVudZE0yFFAXupDe;^X*rEuz{~m|5Nl5!(3+qOgx(uM=OZXAf-gC*
zV6RALWRy8X_@#H-{T+{wiFuVRSXMb*xp@M#2uC7>5i`_h#{8DC)~|1dd>B2LM+P^K
zP-sG4C+Nsb2McBmc_P&#B`*@?#vpw4^5%{)W4=1)>78fGSLfSaGA7m<8JV3k?N;Dh
zSXi_4WW3K<-X`#g;2Ih_r;h=Ly#{_uN$|7Kpu5vKx&+e|EIMs_;1pCCwz$9%tJnac
z0myCE49m;DSN#{^X_>5$-DQ1TJ!B@l<nbVkjwhXQr+L<<)>#wutJ9v|HNyL>C0n)*
zy@GFw^=(3YiYAPikrbyL(UP#7Y;#TqYMs|@^IKu+z>D#b*;FhV2X*ZqLm!z5A9=aM
zKYr_rYnnRcgivWggD{K~KR*u#JqLeWvpL586Q?f<`Uq5ziWvFr$t<;Z&rbHhA?+|q
zNh6|uQVyVzrceDf=ZDm7C)7Tqpo``z^>ehJ=x_NXS?clik|o&-+t#yGEBjNnb5lzz
zf7WN0EIGNcz_+%It+ik3!HL^PN7hB!yc0IT=x4kf4#Z5H9;0>r=-e1lUXy`{Lg$|x
zUKumNMbRguG+Pn<W`94|qG?m`Tn|!jI{)OjH;EbRgGmfkb@(Ijg*LUA%IPYe9&hTl
zk5YTt8{mdHPjV4xs`*g_GdV$W>RZ$vF}#|2QdRae|HqAIRZ2`N(&-`~#DlIq2en3S
zYa%J1MSn`OiFE@Q>K~8G&XR$QNQa<c>zFcx^a;cwlG&yfdWvg()8^fb#TJ*uF|~HM
z`fv&s8pJGPYGvj`><nfjp`R$mU?O}H^hg>MBHF}bkMM}cskogI`{R@D#1a--pkN9Y
zNz6L_VRhj+=Z~=YCW2(j4YG5IGtx1Ciy`-BUuQdMn3P?e)bF1Q{3N{KX&>5cL?Hq&
z3TannbokWB@E)u`vYqc4jv`g!w@ZVEd@)~2915Gr{$#eNbF(d79i|>c8^A7bp)yh1
zB5PR;FVrW21udQ1(9-2B@8-nPc4^zjtvL%O=(s=5ALHY>jbn0IT!zJq-9tUKdRd%4
z^4hYgIYL=msHwYi;+ndgD4#PdPm$6580y$nG5!!LzaIXgr~7K=Wf^U!)eEgxXygqR
zZmWmR9gtDj^xQiABd)($iIVy2=B#b^gp<#4lw6x%vt5tjVkX-J+3C$LIo~al)|fBr
z@SQa<r*jSjD0Q>emYbB~!JAG(B_(+xiq+;H86GLIaE09><c4?MHd=|2s&OQybJ~AT
z@<{`glRowMptc<4sV*qshf){tiK5Kf-e*K4hh=EhEW6NG5%W%9>pFCe%Z)**gQwJ$
zD4%Jnnw+@~ynF%kOU7@T7leK4kmRfdRqHk}U2I%a0|fk2w!cungglS4n!(VmbcHSw
z(g%66#)h2;blATOip1oI4P}OY0-ScorTpk)c+(c2KIPRN*O(g~&4uH-y;jh5fqS^=
z{1C;@S;;kGX4*Dy-bAQTG*o+;W0|6N5e}A_C2eP2*s-2lOKa<9&Q0Ia=ASoi+S+ny
zOGl@EuE)7g_s-2EdlOF=wzRJEw^rRR*`l{=TQ;t3>ul4Twe209y0?;{^CCTL+Q8qo
z%R07f<-V@vl1{t3vO7Arv|Y^Wj*U`FH@9usVn4QSw%esGLZV}n{%mRO(96zEo4UAd
zSl7`hd^d37y9(K`W&M_p%k^es%Z9eCn>KZB+Nip1^yxNkQb-KF*wor~sofF&?tWR@
zT6^%IHg3XxX)m^Pxer?}w2D9%hXW5=F6j~)JZ)9|H(q8)Zt99ZZQ}U(b)B2u$X7-i
z0qpAN5`t88t7>HTjhh5%(`KQvxn<*eCD^=aov5(Ir{A)9Z96}=Ubgi@qxB_gJKI{+
zD3`gKw5(m*wgm>b;XBV(TJM|s+V8&?x%bYHb~-p)l{b-pg@0a<csD=soP;%diuX$M
z>u)>UANBW;@7q<s@2vVA(%n48`|$n0a{p)*%p3T<pR35#%e9rOm1_mp0<QU7v$=l#
zt!FEba($cYPOh7|KFW0i*M6=dS1;FAu2!xUTsK3T1>EOz&F1<wG<lTkqrCq%_dB_6
z)^DyGxb}0k=C`wckj?lz;Y96!#vPpG#S`c5?ZBdiT|CqHIzqhZ@(EAQq-JcHAU|yW
z22ZVZQAGS1^1+B53@C++la?XU;PO~jha_G?h4D#B;7+8a$$76yYv#K%KY-4V&D=^|
z?YiIJ!|&&KKjia2QU}fxyvuTBzWZ#YnM=<j+;5_cn|SX2!LyYszgPb{`u+6#`BlHG
z^L_XsmtOaq{q<`P`y2dz8<&3TI+b$6@1wjo(#d>VU=fRRU^#PocNmYflO9Denj0}K
zs!^Q18@=fsHTg6ES%T1HDfO7)VEu)cV8*Y>7Y|pa=rQptlm=-zQ~blgoh;cgz)Wz=
z;v^VOA&Ic79*67H+iB)<_p8Yj>p^w$O{>@keBn*J+G~kDZDy)GQ~qfiYs&ml1?x5%
z1Ni1#)N*OMPgRfOZN!=CV{m3_#3}0)Gu4!hsS4!O5Z*fnNBUwRlO2^J(=#w!$S-Wv
z?jGi~ypV3J6N%)JmD5U=cB@Gj3f0(=Cv+02`U^T+?c|IirJCaCCeyu{f!>uXG7?(u
zH6}|LTys6lYk?n*nd9T|uF{B=6N+#<$oaL#rorIHQitI8^=4?loLjYbt&_<p3PrX^
zqU;|1smjKwBUdcDiawxCcKWg0{g^QyxHb_XD(1tXQ9G{*!QZ=-a`*`@;a45M3?q;z
zBGJwqRsjw0ZLq*O;3A`A^;??*qzJ6)x{ji5oOOqeIMEL<vtERF$3UM3YQ`w%``lEJ
zJaQgxh<)3e?gv{f5|q_lwwpY5{FGhX>K(Pa3%uz97qB2<(QBRQJy1kkQE+U*rpOQ-
z$dO9~Nzo$#SHq(noE1^gu@;ufo<Qd5@@uyL-^q^~Tb{Gm={Qp(AOq1<_)o<Esr1$j
zy@pWSq1|4N*wu8&bGo7-1OKbHkdA34ED}wdBRsSPkM&N^j~Z{Bp_eS7Jv%mTUA_`a
z&t=&1o%RCV<&pz!!*X0SU#;6)>1n>tQI0)D<r{y9uS+9HyL?U|$k<xukJB-hjtDw)
zZ^>j5U_$?J{UQh=FDO!U4O8kIrX{2z=uoB}MKf>ua9(UP^r}pz7SxoG43iWdqJtA>
zF$tz(3}26V+~;sr_@`I8hkvK=TcLckdDJ}=u11t|d`Hfm*OVD3?CkF==1R!s(fCn~
zIuHa&#{1{0v(j-hcK6xs*>7EOA4KI$9`{0s9tsIRtsOFJ2wbaCr8jyiMNjO9O+1$}
z=QS42XAPfoO~mPiOcR%WX0i)29CzQF$u^5~WvMd#dr|7eqKt+?De2yYETbh$LziJs
z#NuD}#m6f1xR!A>b9HfT<GPXSCazn#4sl(>bv@Sz*TDQ^l`FZv&o!6pyq6xU9Ob(6
zmB%W3PURcd4le!H^)r8k-&5U{FMLy;FTCnl<<VCktIR%)XYTr)yo&s;z8<afPHB{H
z@ycVBR<8YAU*MX1w!2!nKg#cKtf;+CJ*W1a(kYMVHxvKOCQabSdiUqe@O{<{-^Kg-
z7y6Ng1aF|Sm0CJ5qEDlWOsx`N-pMRp6nDo#cbk`CB*&gByaEnh1^Slrgb2a-V|ibV
zm)U(&enQpDH{y9)p-JE$!%MDyXw{I!UK(rV!+NlJzYu=Uof7F?VWz5=B!B2>3ss^?
zU_2VTM>Nm%6HN2;Vai!sdLZ0X@U6Zwf)@LW9C?gWO4KHMmhy~nU<Ft29HeRCB#Muq
zENtn#WGUCm6^oq4vc?^tq|>g(2(dsABbl#tR|(U?H?I$xvMz8txvmP@4DjmW+u3^A
z(k)y0f7$UMJT1O4o;5&&0~4dJ)%?Ez$Mp<Yz@0B4M=J|2GO)MGK~TP|S(jQ3Y$0HX
z$H)PYLo%2cLG4s>Ucqh#&i2R!nd~$|?KROjlJf7a+ka}?DOrEhX{sCQzfk`~>#^o!
zsCnL^rx|a-QU3+Ff$0_9Fa}(8Zo_|}-oVNguGWDF;&;EGc-;7PY~UoEMHX&2QE|ir
z!FOlsH;D{Mmh>QP{P&cjS^l5&%g$C0oL;$dMNKcCp<ntv1=xCm?1WY2YPMqt{)_v+
zi)g9ceS|YDjQ04a-a^qoNv(BXrRwVGxa6T+@6=Ob2TC?$BFWwKoi3{tW%qB|_KVf}
z>G{wtVnn@-!O)*Xp`kJCkU6gMG?1q921KXD(+Lo-vAOf^`-}3icV~qq*RSjHeLUZg
zhZ~2<vlN;HgOaHJu9N26;|%?h?H>^_+%PF?837+>$Y*+~jm=4nhV$m0<k!>jO-cqx
z$0kB#U2jIlW-vNDTtu67W@UbB2AyFC?Gi<~685^8ZMnDciZ`E(7i%sj)1~%eV!zDy
z6p}CcM{>nsdo2|`KbG$iBV;p8tn=lYSYjU`TP8d-=>Ug}<~Gd`3?m8lkjCX_U-9Ne
zS7iz4JLEr2@!HaYU`Vz=Ao!K1dZXQAnLO9%cJ5r;2Qs5QJaYB$*vlhVFOP-(3{ki<
zg?_!}nX6aN+egSalG#3@G(2+^^t_7yy<B^^wr56H^Piuq`MH{(%a`fm#qwpmS-woK
zmg~~1<$ASTug=n?S7+(fS$g$)U3&F;y?VV~F&A3CLa$cn)e5~jTbEv)tygDnkL8Nm
zLuWxGq=q7i7c_YcYsczQp<lT4v3*W<%kJ%k;Q^+bZmT`&l`=YCfAjSBJ989=T~Xuf
z#!an;YhDKi$6K=1<_b4rek1xow}UCuc=h%ddKAD6*;mN#un?qD48=<>ivSpN8lU1b
zZJW`<9PH{y>{Y>y>uam*u71H=OwM|Gv&c4gvAv{=qm*Gz=inhDH0JspRqNB$^)<Mc
zY-!!fc7>6V;Ze>wcg}F=8nwQG=rD?>qD^N@1*wULrkx6OZT=wJONFK8rI9PJ?V%@6
z#ERYQL@6wF+s~J3H0&-e#R(4oh7gxCEjJy0DZY>kq&vkUiggl&SFNI#v+-zXfHto`
zYYFoS^Pt2*kXX--Km00w<i6u1aJoGckzXx8hhkv1QIm?`$}x3%v(CYcLOWTm<R1E)
zPVH#h%8pwOrj^FVbL*QnnhKaiDGgt+5<7H)oiu?_Iz0l~+EijJ3cxF)uEI_sr_s=T
zP15;-YBg2nC|gzi6a3%R-n!YQj6UreW)<o^+Wj#m-bBT6&z}3;52KoUbRp2~xw@ZK
z^@pylIddP?peLu3ooqitagJ+O-A-|SvY07OlnvQ^*Nq$6b#-IVG@WepqqA4Hap?S4
z81{=@MO~;b7zYc^8Jbmhba@JRR@AstvKaK$^-b|}VJGth*><;&as&YF8uoOCa0ey;
zs@dBdrb<jaSTS(>R*d1(^@-_X>p?CGe?*R0w5SK9&~SZfN;*MVT&{h;vFZbhQChu-
z)8S&iFe&Sre_<rwkng$v5l<^LhUf>|q(<==5)`%d6jX=ONfxWu&;3T8a9TqUfleOg
zk)S(u_%`y&mQW;Ds_GKNK~;ZvPW(X_Dv>oR&JARNSsYPl)g+fx^R+T(t8qJSI$IHo
zrljOm;@N6Sruj#^eFkwVcT$JOVJTMU(=TKq<wM;C{<keg)_h{yDdlNGFCeiAlxfpP
zvQw;K$rncH7x}rTrUhxdW4@Oy)HS=Xl3rh@rKjX`dbGmMI?Y<!#VyjeHS09sYR8cn
zA9yd86AWfnnVHd=vVKmIuxY`1<jjDkqEi}<3zsw<rKW;odWXcP*7hu_TIj{bAa#3#
zA5p}P#<J7V&)~<RDkw#vkUA&}EJDUb@(&`~35}ZZK5nO|9#w-#J@!e;{s1`8$Knsg
zU?qn0MDU(IUQs%|3nT1CFP<4t5GwAp3s1Q^{9C77^jP-5+1OT<AEc+i*O5DMno2Tz
zazLIUznoXIe6vtZNW*Amo=T4tX3iuZ%s8%7Ra^+~?5#A6Jj*21I43JPa_+V9Tp_94
z{2=|&%_XqH6wxIT?QV2(b7r00Wdc65G0|beP*gJ>SU%S>Hr{FZFP%APD{Eq=t}fR>
zFSzRXru7_L?U!5Cp2>Ep!BK=r(YLmK(iO?q+&ECOq1Iq%w|Bp&5aus34Ld+NgkMhE
zaWZ;96r<>mg>UlB2+!`sxA05;5ooH#j3ytUC+TIzpA3h0f;&|%!=A|gLG8ERx-Mgj
zuq<HPfj{=kJU;^0O1%yl?W+eCxrCX=y(UUop|)_5ig!_QF6`LYDkuFgE6OCcx%#0-
z5OWtP9nO_4(fr9(L2m07QnMy;Yunn++}4)$5#$JrMdC?*L0RtEvBaGk=_hqqiM6Kz
zO~lIS(P<&tX>L=u7$bKscl7=uLf>&(yyy451?^1A?itkqUZVyl8F4O+x6_a~PMukw
zj`*_%)fP!H5B~!HOt(+o`%4u12X*F>TQ-8;DLZwm4Vp4cq5gQa3<bv5EVk_V>1^Cm
zHUS9xN>b<hGE}(@X~I)BARGHw-^ZE6l|bYP=kJ#>_6TRyiSZ~J%a$#;xLrLLoFOpL
zKL<--a*nI)Y~M_#f2iov=wU3=9c38HG>JK*-&NloJh8rYAFZW(V10~`z%-J_bhpJ~
zmY*qMdxmCNqkg7;W0?zFL8>uOa@(~P*Lf+0SFS<gcUG)9*_bnvlHpRHleb^$1*1~@
z!ZJB^pz0-EU#C7tS=AAOpF;G~vJ=*EbZ?wcA|QuXfBZ%z_L&P+e{cMj=wG?wNc`Ih
zsIF9SrHYfq)QzyPeOn=Zj=hD1H~jBomFnxgH?p4m9ItapKmV`de4pa?+xV?(|6j)M
zlW>1c*}9ZZY3A@;eO352_8hN&BK>v13;A9PF3<2=*VB{{-Y4&u^In(oDa|*?Q+<8w
zBgZP|{Ka#-?jp}ciG2Ua^PRxfRZP53!VTY*PicbOxg>G0U67=lVIS11NIpedcO_JU
zR^<0{=!`xl)@a!)+(}yrJtvWTA;TS@3FbS*jrmf&BQ>>CTxxA7Ba|Bu3V4V2nhk5N
zGwPk%q_}ufx^?G}K7j`+O_W<9D1y-@2_~YzapcEX<g!Y()=BTID#6n;vL6K;T+Qm`
zGu-^5r%vcY^s1t!4yJR*<(ikD8H2Q{9tX=#Y@D^PGIb``JrYZ3QBt+285Weo7U?y%
zXw~0-umhUCWDEx;<uPFu`#GbD{k^jI!b_>~DcZEmhvc4RZCXCr?^>?<WP}NH(Kkt0
z*$`|w$?M|bd(z@aT2n0Q@$p)7#1JH*XeJ;O;(B3xdI^~e0g`}yOTxfAu!*PW*Wo=0
z1az=_M?Zo4Z80w3r}uGotvqo~@D7ai1R@x6#~wIOG2it<z9iiE^h<zGlP;;m6)1=O
z>8ur4v)d;oYLw54A8VoPCW53y@MLV&{K|g_-7Vs0;cpN^$MkkG+$U-~KRvG={;sUh
zwbOjRp?d(0d=U0gN$HgJEa{9z+HD&#n;jOJC^y2_);K{Ho!1qRE;pp}6sSoU>M>Qn
zLar!mir6w}^Qm)5tMf&j%e$dkPx7=}cge=JQlGbO3ey2|IQC8F`g6*%@2vX92?5VU
zKen&dNih@(!Kg3WbgQ;Q!|hY_;<!DbR}(RW0x!#O#guV09Lrm;-7UTA6SeEpRpXDP
z^}AiH`-XbeOJ|1eHR<zcs_?5G4kG-j(uEijkvp#)De63PQ*tOa8Q4k}&5xAUfTf6u
zqzw4R>12v%lTkl$s=-w0Lg(@tbQotXD3B(s(X@Vwa`L&tPPlOhC#qCwGn8jb%3eA>
z=X}C7F0Fq3eZ44WF?Ha0UrC!(NwxWG>TUDoq&~plZA7R|Z*-<1+*;E@maY_y%`G0p
zbX!WsrEW4xL}0e1F7+`zm*@xUa5dkz>p1z4D#NnfXl)ud9f}emhoW>Y==^q;-NR>J
zlBp*%rfahNHSlV%^tFii!cPGu-Xzn)soE}p-eSeyAZ`PDD%a;)+4{LY*RgTkrkql{
z?c2T8@-*gWGaV(sTQjPi64tSp-!#%9)a#{B^{X(pClaP$*0#6thjZVHGdba&7zZ?q
z0Rippz}?B!0z{*L>j7@qFPB^>wehaXe=&xq;4Lx0Fs}~q;&g6wz^rHy_5zV=)A?na
zT;CovymaEa^<gA2U+Hw>TDTUMt*2NgtvIkYJx6~q>s8&;kd?Y#dg@o25_}!_BcuI;
z^}+A`8~l5jo1DjWD$iTF>zeD|>3z-R^W5OSh5X;<_dk5xU9-7=n5)BI`?>2~y-VLZ
zZ+2Jfr<qIM68}!V*SF;LuFs^?Z3BkBpYo++l|HV^zQ~-I`xtj!4{&Atdwok@S>7w3
zE~U|3-<79)ue(-p|K@$iDi!X!K9+c|Z{eEr?PHbFx7_b0?#ds&T}S@6&97A6|DsAI
zdvc}nL+<zb>udg<-dA5|HB>5Z;k_<>3;C5N@RLM|A5juxu=OajOFEY<dz7EPoy?lC
z2(#{SbbCJHooK8^XffH+;Bj&$8mUR<x6ovm9l6ag8JiwS-^nbk6}`zbMChkME~m~U
z(fh`N?I&~M!;BkD2AsO9ICD%Ki<#&RKbW9kSF}&b*Y1tJhqtnFML%4wkUe@$U%Rrg
zQqgrY*X-9;D&Oa>E4<VD>T5CS^zKUT$#i;7_TNah5o5#6=oErFo(xOds8t5fRiIB&
zMLuRV@-~7Cb*cb3)m}61Y9-an*d%^o5{W~&b5lep*-_D9wqA=|NSYc~>LfE1O|g&)
z%oNBr!<EeS)C{?@vPOP}<|rIRnYXkH`;pM(MVBdEW$V5H+gNX(p<G97^$hBzAZKB!
zZ3A{<oz>4R9J<jA!<wpoZfbwd;!5QrF5PuKd#1bY<oSlg`|!Q`K1P~ZuRP)0-j`-F
zyVxkveD{&c2YJ5nn@1|Qa=(fD1Kcy;IZ`?0wVBMx-0xhK$;{{e{f(K-tGQ?1mdTvO
zecL-SnRVQ=@62Q_=l)0Bhq%wZCX;zL_wWBvCi5lkN8g*t9O8Zra6f<lk;)U?SAX|N
zW#0Tu=2P64asL|kF7CHIaHKNAef9T_RIca#6!)9BU-QtB$|3Gw`2LZ~uem?_F!;SJ
zlezxik5pE1f8xhSDxKUjkAfHXEcYV!Te)Ay{SfyLbAN>UP2A`GlzRMbCbNwDsobyU
zzKr{g+*`TN``M97FZU7dALgDdAE}gepFC1o@p97t{77Yh`?AAFDmQb#k^3R;hqyn=
zecNN;!)B=`xL?ox(Bnrck8tmL;z*_W71W3OW!y9W0sXnp`_+-k=eRH9eu(>x+>h$}
zuc_bfasSPc%1-Xfo<36fDEDUWpVRMWpoe}R0p2Sq=h%_T$GC5+@SgjvvyN64p9&t&
zJ6h@DKJTQXl@D`oo^!PFDEFJ5&-Yh>*9(qT#<<@&_h{u#?oYh%Xr;{k))yVEw7(j-
z4M!{cxsS{{TKSmnFFsoNKKGkmO8(QhzwBt`I_`&l_h{uC+_$~_Xypm+*T3Ru<-9E4
zUkQBfhfW1P_pVnTtz=%q_tzY)baJ29c(n2b?uWR~IUV|(b+mGs?q?sZe3bjVbB<PK
z|2}Y5|9|Yge|%KM_5XjfJAuH$x=O@=D61kyMOhRz0@@9PWb*@9BtX!p3q}n#YE)EI
z&|nZz14fG)74522v86U`X{9Z-QK|B_)TWiTRI#Q?Ew!{p<!xz6a=*_rckb?HSrB}D
z-hX|)k4N&lb7sz&UuVvonYs6Fm%R$K##4T<8O$3&y00N$Fx+Kt20Ovr6X7fBvSVNy
z*b3H1y6gh<x~+`#V5l5A7zcNPtzehLg8_~;+QAWE2Uq|`E4u7zunk-;IEDI1{M0Tx
zoKL=BB^a-w++ZuXLFiyR7@R{sU<m9Iya>LN=?}0HtOx7B4sZ<^tcD+K0JnmH%e(C6
zQ%Dc40|Qrf*}+pue-(7F6I=rZz78K4s-t~IK?iHW@YVD`7zJCw7`O>+2DgE2U?<oP
zs?*>D^T5D0^fMR&!(a@o0>jsmAJ_?Q6nZ`N1LN1BH>Xps8=!;n1(Y9b1$TmNU>Dd9
z21b((903MzL|?!V7zM*%4HyL%f-$fOv~HrGB_7-%@!%dX4hBNx1C9VY!3m&sGxESN
zSPMqMMPLKC3Ty_~f*s&SFmx;YV~}?n`U8d+kuO*e#)S^92iw8TptYFsAn{-)*n9_i
zeFl6DlpAaYo58>m(u1AgfHP@_`_U&b@F497HhhD6fX(25vB(EUfE{1~7+gg?zz|pi
zHh_!3X0RD-2iJlf;6^a`5bX|zz@1=2OP4+NEYgD!Fb-COp+_mF(7`65gK@AGTn~1F
zTfm0LC?6PpoN}E_JFZ3!Xg!HOf-!Ih7>Ywb2RUE^*a@xz+n?&PJHWO-l8$*LwhcMw
z5)al0{s}o?{B7z#4!Q53cVHBZf*s%juoGMk2DhWnU<hml!{8>+dKddL9y*u@#{NwG
zz)r9gjDJA<1nLLog3W(LpTYWnqL*OsW7_*X>I+ta&7aUeVC+-I2^jvY%N}+<<=IX9
zgW(?9N6^N8eGT~*-+cjteY))yu)S}$-2ui1b=&L0&<A(hJHcj96;i(;d}{`b5AC+&
zVC<M~dl%StY`0x85q>ZRwgvgNjD(NtwmZQNP)(v<U>;~4-))Zq17H{oft6qstOe`A
zMPM`7Ea4G+PetNKcH8Y>=Sh6qrilDcfe&m4n<RW%x4i|7p5ATm5&CHInT(uJw_OE>
z#!yc%46XwMXLQ>Gim4|U1na>GU^`d^hR*D^7fKl11h$^lZ3jxI|2gCfb`;PKVDq`e
zgMo46EAi)d+mQ(JO1kZ}VB2lfqZB#d8ZfY!a)Qm^s4~L0Q+}`++$rHZ;4dc(t`WS8
zb_BzB^Ie|`%CVeyupO)hJMSeQFuH>8zktnPU<&15NqxZf`)N<Gp_z1G2e?_n4^aQ9
z@IBOR=YtIoBM+>9gzo}@osV|gT|$41_L)Y$k9XU3U^w1wZvY#fqP#)}yTHKH$cd6a
zSP8a+3&9Ss3G4*pVDQ;)J7+raV5Q)5$O9YJq9+#+21kLR=ZOcK!Fn*hj&J#ZZQxcg
z`~u%Qnn8MSDcJBm$^*t)>Ay<q0oH+Wa4Fadwt#KmI<Nz513SU3p!I$D!5BDfCh5Q^
z*a6mn){naF)nEv01!LeQFz{peB>ZBxT`-ICZXiD}{uA^S4E~h*&L)4b2n_s;`hd;g
zYB0Ew{K44I86Q=|zeK&j4loLae?dLKW^ff4Y(sy*PEgGu{$<(=YzD(%@KxFy4E&OQ
z2BY8(u=O?c=R)#%1HA$}!R=uDSLn$_q~Aihz|h;2Taa%Og{o=SchO%k`e)>U;rHMJ
zTi>U@FDCo};~wk)H-hy$_~y_h#D9o9F!m92F!)dO=u+DClWw~KZ2e#QH%31H!R~-j
z4`<bL!M;6qCs+@vd6W;#1KUAfOR=ne>}7yKaGiwvlOAjZCtOB32KLzN!8SkqHN+p*
zW9Ng>6MO97<;XjUvw5%$jDxY0;RowMbp>)x;eB{8bQ=3Mf~WV`yTBNjb0zgXgZ&V&
z4O|5Vc!#_L?Bt#CP%ZQV_Km>sx$L!oo#1M)bsX>2gQ4-fcP?}=XFlmC@Qymza31-B
z*7=-~gP}0*tApV}$_EA}vM+TN<)4InuyZo?0NaY$e-SL<d>?F%kRA+|@*Kj~Nms^R
zkYIU_T?+;(-~;1e8yK2GIqFCcjsV-i2pF42`Gp?kY#)qIC*9S=gF!HM0qqS&XZ6@k
zV8bQs5rKhA*|!4YVBi|$$EY9J21dZ>+#b6IYzG^_*gV<?>;yMR__7{*E7%O~2HU`4
z*AfpFfx#O1!TQVL7dp6F@Cxz=+iIzIJ$My+O<?Hjv=<n>n)-mP;3_bD4c|JDFt`P5
zsAqpl@H*PzI`rrU_SC@E1@M94o6#3A3a$rZ;AXHM+zvK?onYt|>U%wSEA0(-+}2~S
z5nP0xfX%m4pBunC&?7Lsgz^a9$u}3kc5pWsYeerCP%m%-*szpuG=PD-=s(c9oBjjq
zn`!48;R8p3(T6B67=9T20Yi`Q{0A6op<Ql*?=kcY41hIY5L^g`z$P#b#wDKTLe_&(
zaI@fQ$^{0WB)^*}4>$s>=edtsF!U7rd0-rD20OqtVDmGy3)rv*{aHwRev5j5p=Z%^
z!L>bh3urx$d@%5B`s)_>zy>hz9oh#BucQ5h{$1MdR`Owgb2Zq^UT5xY#Ipw)1Eb&q
zFa|CM<KSx0VlQ<)*!ffRcM<jY8TtW+zzVP#Tq?Mca)VL!JKMnqa2MDL<}4=MM!$h^
zunuem8^AVj6&QP&_5wRV>vr;em3S}&t_H)uM8CoM*ZKCw9ptkaI|j!7hyH6oJ{Sh$
zU?o`3K51OS;6|_=+y*wVx0<_z{J{{|0ak#WU<_>d19HK3a2pu>BjvdhIbaA3Y@^>K
z46XrVe<B^&@HTQADc3vb2N>8+yMe)X(Z{8f|2^nn9BcsV->03xh7V}hy9n>#dm&&m
zxD<^2mHL7W;7%|Ob_xCsd$5dl1FOO4-_ZlG9$W{ue?)q);UC!jyGaLDfE{2Aw06<Y
zU=Umm#=yAH|4BW-I2c$?`9DVA!A>v^wsoS9LjRO@xCc7e07gHf9l+S<^fwsjV%*(J
zeZeZQ9$Wx+f@{E7H}wVsJ)9BTM>)VC*Z@|6t$YDwEm)t$zA4!3vF-dO(ka_+0vm?d
zc9(>Ywe5-(=m!`Bqu>HC4z2||z>Q#FxNUEh_@Hf%SV=q>0b9XpunnvS>yNYTbztat
z+ujL=N7#1Ye&m4pV2HigN>Hv`2du1HFR-!}2C|MG&^M<!%b^b=F7nD=d!(c(>KhOk
z!QWW^;y+*yt1mbHK(Rls>@eTWIStm=hK@Vs%n`>!)pD!BZ9icTO$g?a{4iNoJM^gV
zn@jSdDXf>tuR&;&{efkkNdx<MZl*+*CGqR{JMPuJHYOk?zCIDZ1@f)L=cUF^)6trL
z7xe3i|95J<=U)l_0o1#6(_ULlQ8NE)6Y-;ne~S2*dd2@J5nn<4*M7Ozz6VV3dmFMO
zK@d_M^tG?;wI`&;Pj2*jPuEFw8fp8s*Z10m-V_;<=1gxQpY^19_l>>w-JX;*-rGHr
zK-zjM@lp0jW1w6@+sXavH}~2;O>t;l&|08L+sY;B0?1qg?Ga6JXd|G7ezVu68}udV
z3ZRXG=E|#pRsk&^+KH0y6n|i)XQDrEg?F+)*rba5`OC5k{h`J_)B5}KC;5X!P4ovQ
z`g2Nr5hx}8V2Mkaicsmp)yT_f-)j%$-f7RMU&<i)Zy;^}aWf>2OK4l5RY5yUQyiV?
zfK~}@zR<|9$>W*a-=9<JtMccF9$U2Y8saZX#25PWmU#>P!A9jN>F>`g)P<brE7G@<
zr2rAq7QnX!zV8^m`#qEWc`K!^D^$dv-z0Ti)~Co{(Ac-cAHBK1zo5(?D)i@1OsRP>
z^%Pl4krn#wUb{OXi^f^$CFu$^F(E4=vWom+&yNvSw2!cePmjxXWbHuK<<bYbzPdg|
zQlAokLx1nlS^fP%r!q7?Tnuggaun_L)?WJ?rVJ}Rk=}hrj*We0`U@id@Kk?fia$El
zAG*e$PeUboQu-{4oCV0K5jhcm@DAPBPXE*qx0$%pC5}tdG(g({?LJdp(~fC%FLdf2
zlO8E3-ly)RKChx$1+;lu6BkPT!u;(dp8@ReW7c)MtdRa{l73#MuBMw^U7VG;pXHmT
z$wgY{M88L6qhH8)FCl}fH+gB>Wr}<ovuPtw8OjWWR(C{3e4dGrDm1CsA3%eoP+}Vw
zA#W%07WS??t+ql<mVQUxvOeWf_cDL;;hsk`R*?*@@V6Wu@y8Fp5-cPovc=ABM}7`x
z7RO6@BmTe~YBGV_-Oz*3ah)s+{a)sww2fYhSnVi$p+Bd>SH%4!e}MalZ<arAsu=nl
zZAZuUVeW(9FXe{6(c}3q-8|Vh#h)YjRuUiOjN}NBU*r#z!<Wx(9rP;bR|;M0CVIHc
z%h2~oW~4+TOMO-W(JiE1P1+ff2hFy^Q*PRtak+%l)CajGzD3--Eltu<{B4D|jWZc{
zJT*!E+%dhA^v;;px*>Tf=Aq`d_u8WvJ5sI{Vz-QLV7GL?dUt!$I=0v+HYW`4(sz?K
zN90vPYk;<cd#CJ4J((o(7>FLvE679r5{gpji;=t;-m!nCZLwQYmiwhF``7|K9!mTh
zf))M^;ZlD`_zM3{urs_6EF|oCC!>)l^NAksCXWuzrtZy9UssR4r!b&;De@$r_pEf<
zM4#BNq8#*zv#q7vr?;Og@6t4B#iCy#9~E%BPwa6svTBeuQ|hmElLU=gM^-yMhe8(n
zJlhGBX_c(-1xdOYzNWwKwNDUzL6baRM<WY;o;g5?v9r5K)56(VF18@0ZOeMwS>3i}
z{+PE~Ov=87w%k_)dqF?+ne(-gX6%}|4!hMPw!qAFCH~f6slP4g`F($X2vth8mW5hQ
z19B=kkE{JcITil)6Ffcp$|=%)uo*dvcI~wvGvj3+z0tNr*A3h4Y2A-0(eqJmfBZAf
z1S6(Q`^YL6yJU2*LwP>P*iMDIUt-AG%DJNWM$+a@o+5v978X~=dbv;A!KI|JI``VY
z1|0oK+GbaOJh1dq$H~5mG|D8OxE8%_ueK#SkYA7dEK`Qm@vY_4O<A6WY0MLK`Ge?A
z5$B)U9}>NqjzX3DYWW}WVGu(Uxrj7vr1>;a{))uBAXCD9&W!7*Im#$wa3MTRoS%vx
zm7<H8=DiYsN0uIr8I)1a-&Kg%jJ!ph!|qP>8E(0;8_BuE^jW=kXqJCr)ZdU*>t9&t
zufHLqHcUpO73Ocm0LJ&{_|+NOuf!im!&`$3Fh&#6^lRjv`X<a8PEHURwaDl~#uDzu
zCNA?V=>M7?$zgxaYmOh(M4H-vGlsvoO^W>W-gh#O&qANr;BCmN;N1C0BWs^Nr(?VW
z)9qPAkEPs!_+y+^AC+j!1K8lOrzWHNQ*S9p3|XpcuYHq|wbE0T@T;_)K=(YJrySiQ
z8%If;F})hzNcUd*9Al^V8Hd`(G=18h<+&hZK_b37%CQq!6Ra+KaRymhKeVh;@ii)#
zoxF!-`Imc2{mq`aV4=)c(Tqw`?(<9~MM+9ZZ9}U3w7<8@ev!N#{Z9JFNuO5x$EE%#
z8k50!6aTmZ_BF_AL)N$G(=Qk+Md-A5d}hTc6Mc^Gw;Opuo)P#=bOT*XZP#R5xW2ph
zn9SnJed5D~S!`@QqRYO^^lz%3C47egqG!G5dXz?1L5X2f=&OQK+>6qL{5bMeZkPSA
zl$AA=DXU&*=yue0-IO)#Juk~2neUHA{E<R`ICGCp^m(4Ax%c&=3w;-6B)|IFmS4a5
z8?u+a2;ubP4(_riC-ix$=yP)3i|BPinm!l%Zgg4zC2%xcoG-DR4I=NTF8glorEi;L
zd^CE?{XyEpxP<7~B-d$^HeU}<Jv{FxbXn_`ww*~^H%WB4#9z+}B%|T<T<Kqks%KUD
zmuF34PMYSgN4C^4R~+c0yX^l3q)eIT_Qh#+WIj);<3#Ex`c{KHdA3C4i#($vdfj0B
z!H|)b(1!>MPEnAAdjzY<YDLyoWF4ERdnVgt^daWGJG1Uav>(`othL8>+0UDDWv=HX
zY4xOJY4wzWRfCKQ9R8f)UH115Shf<UUz)SL?@Qq_t=T+(+mC`eYx?!%)A7PyTigbV
zo@?y8tWQ(+3boREzem<LTZs=H-(^ot*nZ~1RDZrqX4LsIC{w)!aTE0#I(HD`dPJ9f
zg~-?YQ1Ca(IxmJ!;*{comiR7C+_PlSd=>C5JVZWJ*;)!;D}1=+`VyKv@3sz_t|MWg
zt%J5UjV8~-t$`+{QLZ3=TcO3F%@qPpGV8N2{z|cr?UPp_<@2|PG`mQ1rKG_IieJVW
zi8`{rn(2-<{9K|(u&4|1%#&rtyh)3(A}v0bGzs3^M4v34xo5>ZMcQ&9e=&G>!<%U?
zO^#KquVw6QAT5JNl=<doREUW0a_E!xS@qMC(q7xiyJaNL+HfzIjO|WntDrrPznpIS
z)8-|a)4bnd*_WY2lcatkH+&@Z8=Y)_#9NinI-#A(y>*E{P|5mN=ylNZLS6Q0La%b@
zB4a7^5OlW>!_Zowje@5AIr?WMQ*19gORXFG;C*FzuGx1@Fj=onw<BZc7@qY&o?KFf
zPG~!z=`zgl2c}cDvCwk{<DWsVm4sR!FhyGDnW++XcxvKa?6<Bzd}DbIPR5;FdHhvE
zi$R+%1jY~gCtCp427>j(ts!o?6bf6II`<~q-}p2Q*`6i-<=MC)*=*M=XHTsm`!++k
z9Gpnl8})KGlO#8q6y5;7OZGe{<%V(#SV6eR-;&KfN%jo*Fl!m6g(4qQXn&GlLh?eB
zTpVGk*Qle=>2Y25aoo$eTIQLC3rn2{Mu=-7?qwMx+NVg)Ny&N{yIk+-@h_}o?kQsK
znTQ3O;ji~xm{FCPRWeP=Rvp=FB+s4WyX^nTU~l!<DoxpgYz=x=<D*Z(N3R46@zbRV
z_BFrdKJSHDq$nn3l}YLJ^(Y!4!ZVES{;KYOXhqO4x%!g%xe{6w+A*drGS4fQrOhiP
zzT46$<vu)^UTfx3J#Vc?ejwas|4eeEt&=`iqnd|?qE?urLg7yM(=)j**Ysj-x!p7&
zM5rP7A;>EgdD`B)dk%GQIeTD*KE{J%`nBE{z_S`2cg#v#R6uJ<qs5@Df~IwbG%^Mk
zKx>6Il6$Mt8H2*#1bs8~)b@=-+XRhaqc2If9$GuJqf=;`p>2nDtf5Ih+oA1*HcDu-
z9eWeub~kjZkZ0Tgi+w$_|0nx!GpH~vsyF?v<=&m_E^^6*uf8UB-@A;tRq_b4Ill^7
zYebf3fj=<UpOepR74%UPyX?z_uI&kPsJjPO=}sBWKIl@?)|2*}#MsH?(-@nuf#qg<
z&@;!sEjY>F5sZO_5N^phoJ)N5WWNLX(MetQIPnMc*!*JoSEtGMd@o}LlYMn2VT~yW
zSxCFcbI!vi^IRhLmZwR#i}YPR^i9xZ{*X&(OQE$v6O$;H&|08vgeKFJTtZt1Z9@u8
z@@a#%9@-d5RGpktwn5*Xl2-V4LEDx_lMUUiX|!Bu?J2YZc=Mrcf%Z+wXO{R2(S*Nn
zyQ3(Kxyim5F2-wHv}>@;+vL%9vj*N!ahH9b@Um~qxYT>#Ql<vtDv5L3L+Z2&S`=DT
z(%+V>(>mzO)6%v<TM8|8t`)i4ps!0yy9?Ud3~ALd)EBzj{!)fKXj`C#qzo4&%MgOT
z1G?lPmtYaJ4rs-i;`qW<(1w+C*%K2wmt6lQ*O*49!`^c<yTT<t4`wo>ktQ$cmp1ZI
zrCs(_X6z(wVal1ruN*U)SX?l9%NXr~w}5BNAC+?JF-i(EMz2WpX`%Kd@-ZyyNPB{$
z<&t_&fVMe}7KOGWjaDN@iD%POc^5((2JIRV##O~%6SRfUj!Cpx+Bi+_VPXTaJQw@7
zWtHQ~Unl_%5i`u^+NYPg?nL&4DP8u{l9^jq?cZ=VCuUC17|z(u9ZtKFcCw_cclv%T
zxAG3b9_Tj;y_bx+$Z(D?ihW`>oqKT-!z8VNFU&LdZwnt2PwIID9-Q7kyMdWjc8V`y
zUY0W?*%@$3Rix*<waD0xj5pZFar~xC{)N#e{MLK3Gq#7`)06${J;<xBMrTc1r|OOD
zXqkx<1xyAwX=+ZyphHpQgoD)Y65a>MpnuXQMvk7!Gfu|I^BZv~wO*}4X2Yeu$KzUP
zi=cgtG%{z3Pc1sw27OIh+O5#y8Pe{8z8ShZXUjO3_d7O0n<V!sa`T{frO6!yZBGWd
zMbLw>-sP==HVj&NdF!DUrKF9J?NVrAXj8<GJMjEe<d1sa6kEYiVEd3Q4~B^2%S_Va
zv|Z$1*4u~JA@Wmbd1SK(+5~9#axXSnPT+Fb$d)$EJs$srxJrrR5?VgAE@+~DatUn$
zv^~&L?Pe6(ZfL3Xmho2$eOL|e=LoZ26R_00iemuw&`W%b!N4RvDM;E?q-`Lr-aDjh
zEGt=DdIZXnJMYd~w~e&9m(!<NFfw3RYv4#T5qZ8NuDKQCZwG0tE7+HiGzV^9IaA|2
zE$DgNzmo?NI)fL29H<37IF=b2UA8Fo`YD2OtKdDCIfNyT)bnNWJ)J%(_tm(!B#ZIa
z0N(=m-aOc{;rpz`)!<M7TjBUVo(D3PO^+wBTk;N4M{RPgzrV6wpHepI-(e$|2j`=g
z+{+c=F9fX;+Pgx~ZCNVk45f)P>*StvDeL*!8B2zqb-=y|Sv!&SkFyBSK&gA1$vM*O
z4X|VLw5-MVReaWL&wKqlvnKmHv*v(wSC;p~{@fKqnF3A}O1($Nb!JU>DRvfj7m}t7
zES5Ac3Z)#%B>$eQQg*$k3-uh49)Vh|5z2<Xh7tjFekbJUyUwf{P-Iah+zm_K>pFk6
zyI0k*&t6pn@mrtdy%W+pYYz;+o|kSyYaI8xSPr(#I%Kl%TK86;<+s5<_M6FZWqf%C
z7l%5Azpxkol?nbL$&*FMQusfSd#$$^6th=m&fXfb>R6_-2+z8PB`ackZDlh8s$q>F
zXF@!=mw146JvPiE55(-d16?GG-F>%nq#f5HzX|y>rJUFVcHcOL<HQ3`G6-oi@mq*5
zmUwMnDv2wREh&tKV=H!%W)ErZNu;5fSmMcYM+S@Nyu43W!}~v}ez&|^7lXzy(wC%@
z_v{uy6B{F!&?=xUOyL#(ECy`>v^MV3+t<ShrZEg9KF+K2D7SG#^crF{ynEmk^Cfkb
z=QpIS*Fz6H%{xiPW~9#Drq4q7Z@o4*C;2=yNE%6&*EB)GFT`6Cdy$I~?m)h7Cv-yl
zEBXvRxfc}iUGM0ZDR2dR74Q{2!@FIIfVK@u|81Y~+?nNFl6fMN<5b<AtC838Tykv?
zhTaNo6|`-My0cl?B<BV4d{bwZ=N?9`JYNw7Cqck}PF67Diz8z<GD6SekM$*>%b7eY
zP43lbU#iR>@8kV-mVYgea<%rU04G7Y3@j(S5S&QZ^HN5`#N!8-lA@ZFGr&TTwa&v`
z8I-8uy)`WbMH0PfIhp;!R@T*tdQM3>Q`XO<)O(Ml0n-Mf%<b|HX2<ut>`S>vZ^HV_
z8U>d=>LhN&54voxhkzdMdT$&pSSHWtHD=4+xaV6KF&-z$nrqCPNa&RjC-<}=f8kS@
zUw+7Yquh(UCJ#?dnSEq=Sgj@1l|{e8BwGMa!+PHN6CS<a;@UiqS#~fWdB#H?zjJn9
zCi|FW9AgNJjDZcv81|zs`w7!NneB}`cX&Jx_;-4k4m|ZB2HWGALYM8k`K9M`X{WqX
z$>+zkVLt+ybR@YJp~d=m&&aIHas;INvle-Ezv!~}5_Z~M_osgTOt(8ao8@6gu2(Zp
z)@RxBu575S%f5L3x&ZG#(|FnLC#w#4D_`!iZ_Re{&D>6jy_E`o>+#-Wy&2V6k4u>|
z#*U)@UhA@-G38n5p)TeOkh(0B=hkFznj@aUG)ww}FIsmtBWDqEcD~+auarj8ZJe|h
zY2(m+)~UkZS?qZ+WARFS-Z!%Rdx|*%F1ZMtC`ljCHw`7VV4)CJaZ^T$QbVW#ndnOv
zfx_V(tV{|Fh$G|2+!T{Ul4=>RrV(VkMowdW{5$p}6XR;1{*7mO{zM=3Hn=igm%<zR
zeV6l$YJ}PGB0a5XJ&zN&l(-)lxv9^YrrA`?pYlABv2AdN=lS<2DxN(Zq!wbLrQFu(
zj9=b!jV5%9k(PQ^#?z~w>a=3>)JX)^3GnXWo!DgAv>nxF)5)?KJKEs!tlLl7WIQiN
zR^2;Y_N+uXl75I8A0cywoS3e#ukkdcFB6xb*ASwtGB?Zn+;zNnE2<_}m_K>9yB6AC
z5_(MeGw5;D^PhdS7+WT75FX8Z`Df1QjEwu`xmokvO{qM?$$5C<IpDDDuV(aMbs6QI
z@omU*%P8fJL))50TMw-rnwTcJB%Qoxz9lW)c4(WSxqI`HuG7d%rKu2hA}w7Wv|TAQ
z@xewx+XL<QQrB{STb8$m;jLXK?dw($zo8>@d>EEG;upT(Wj|=zs!7hY%zjge?BTqZ
zI$1<~EaZaph_emCiQ)ugv?62c2fT-!7-xF^(soq)KKg7oCKF@tfd;SmHl6UR4-f5Z
zSMtqggLMLY_hra8F>iW*mY%P;m3ptO7XGH4UG_f-i>)(0l}wSGVdgm-MmVYz&ss&=
z=-+u~JJC+4e4?E~ayl;01vu@(CKK+ACGYpI{;13Tk;qS-Q$w<HHFGDkk<?{3X+!@o
z`+n0B`%$zP=ee=|uTq@X@I<%BBs|^Cr-*G`cmw>6J%i^o;m_e-u4?`w(3+sVE(Geg
zQqGf8#}adGV;>LO^wKYkZD&DT<STZ@E4x`xBC^n*rU!5$iIeAA<aZ(8)p@a-8=>ui
zRwj9xHGwp^#BC#P)Gq9aiQ@oSE9x-9yNRn$iKBtoFp%{^q4WF~o5`)jKQ6q~C6j;c
znUtns#lGu$s~kmwJ%%jB`}*%B?8AQNI9V6rRA;ac#&24Otd@WA+>4R5Ql4R7A!~2*
zeubWQWsB&V4AU;}Sx}x%WE6FF+2{5ykG9!miD%A@KfsXWxs(hAn&b;2YXSqR;1iz9
z;$GJ8O&s%vJS-69A$MkZ(d8IvHj(DWL>leuan^KQLhVa@SGXfU`>3nn34F@8B4m<6
z?n*qjUb<xbi+ax<|H4`LO%)uU;yI=}8se~sZtg%{^z$zJRZ&>v9nc5Dsy*)UZ)O*u
zJ*x^V#Ljsh$=C`ae+MFq*uQA&VV{J2zEFOL*ZW##|EkdE_2&9_dReu2@lkj3azclf
z4HSnm(dT`k5BJr?mYPU*z;}A58v>gg-o=F3sPN*qYi`eWZgAw`atPjA*vs%<0EOqQ
zcJkO3#Tlw3kD1VB_`G+@J^le=_VCxB*kJckEgAQt&c>GUZ3K4=j(`@1HbTCeAo?`N
zAEc{tru&1J`}52Ep_%%LHr)rcq?^EZ6mB7zV;{8cmL;B-CV68YnY??O2U((G+!NNI
z)K{Wk7D^BhCw;sb`PKhN@~e=ae-8etd=G+q$0jg$89#}6UY_X>nbIfxlM;P?-Fq5x
zN}oug%f1xZ@&CiJ??8Ur|3TTso`ee+1IYeN))$$^R&t%Br+92_275BuC$^#qSuK1^
z!`-J9d*ZGo_1gXisS{thwn1(1<c{b2491={;eW+EZ#y=Kxl#01f5T-$w|yk{a!I-O
zz*h$?FX2~bvden?Si-vi;!tE<E{d$8b7_b3yX}iJ$V&5rizr-2Mo~;$dB|!;R%N)`
z2Fx=i^Yk+&`2^*gGYg4(RN|68gq+(aAIxC|JAvqJq}@f@)rq-+`lUXnspn&Ft#Mcq
z!$}sbl2_h1_H!n7+uu&jYZ<mle1z4mQ{e1z7Lm4{w9_SRnLJOhSeIFXVg71}4@~N|
zpAdpBH@<<{BdC>Eqe64^ATM$p6@89;T`~*ZE^Codhm6f)jIfSu^e<qNc~$gAzNHi7
zTPr6^UD3hhd@XxIZC=k7^d>RnCi%on?}2Angzt86@AylcXE%DM`ol6WIa>{7K2Jj;
zK>rkxG&COn6TTayul3xNsa@s0j|zX=ah{FLO1Pz|7Oc=GKFC7kgqFGc!fnSj_F0zQ
zq*i!WA~#5U3-P<ky6xrMyKNSdw^?LvHS4d9q^T<B+aIQn@8^MSckQ9q&#7aN)#s-f
z$DZT!<e)SYD!T1EWzMCK4md|Pdpv*6C@bP)NpDpmt0CHLpJ~cv&O1x|E&7Pl)0mj~
zBl^s0De0T1^Q{r7E0^eB3$%66<_ICFGx$1<3MbMyzlA<YyNR?Nq`f1Nwk+W<i|asd
zULl7;LE<|}JNANZ=XnXOt25<2gi;>w$tiiwndfrP!(SkcJI{#?$%j^vLaTu`0a^sw
z$)c0G&C<?fb^99|Qt$1`Y(t8C`s{k&-Eh5jh#*?N=@gjR?f6;bW6p1wSj?Us`S3c0
zR<nefmzW2L69jxQWOX8I0kS^fKBdfQ&yySfFRGt<*>{($H1j^ah?MeHo=<sab=%Jh
zAvs3KBlX=V_l28;>6zr4+Iyske-TI40%T1SS#;zwSy$-2=v%bUNVn;C(l?WCHR&$y
zosKrb(UIj93B|s4l5Q*MW+l?GQ;cp@5FWsxW!`MQsnfeZlWjvwn6*6nWLe%d(xJ3H
z13dL0HnD$Qjl6Ahy6wXyFRp6->Y?p`rr-IbFU_-Yx^48{8G67PthXD)DLm&Gy*#6c
z56`?8#d$Wa9r@~_ZhM7fn3SJ<KHph~v9#`GlqUJu5A7um?TaBI7-oJ$-qYM4K%Tt3
zkm|Ti^s#v>IXLS&OnQmVp|>GKWF3D?!;F9O_&xVd9(wJl+l2Ykyi4bqo0bRfUpaa3
zwiQ~Y4<ZZ&zrmrD@lI;5ipp5tO@3B2-(&*h%H=Poko6^HU`vR&<TH6e=((gFAapL_
z9}6vzMvFij0Bx{N<)o{ImIrNM3a#GAbMqFPx75g+A?fI|#NL2@-rU(5DDm;ooO7$!
zRU6=$fb5GBJQ%vfGwSYkLXt<yE#GRZg~!!LnFp<jj4x<M8l6v`4L5Qgzz*)?D0%WN
z1pWMo$SQ!Z`ciD4$lwy1d;@MFG>#<o739Bs4{jB-r-i~A-6IR}5+COY@}KvNAulCO
zFxG9CWf7qM2bg<!@5}SMjH8Y<vRq<+wu-#De49$-p$7+)7xTP<ynPQH8O0(iIEnEz
zk3LMu(l$QLCTM#p>vtT_3>Ja0ByC-Xtj)-}jeD!K_rA-m?vyr}eHPvTZ&dp6IlV`_
z2EM>$-S+*$M}1bv8H+yiO0oZij0HSFb{`$h$4AH~c?Y~T@Lphe&9nPDhXwvTO2N1x
zPSOs*!D%7wb&0e{TjrgneLim8#8Q_6((WQ{lSymzW{S*7eE*;^TkO~cy^9nkZ9RNN
zHQn~vrajHsL2@04J#FkW)!&vQyMgJx(`296@b$<DU*2uMAbHE%k@Ef=dp8o-PTW@F
zewm2dkcitw-0~~Tn9*~Ir$Q<}g0wl4**_%?)zNL-B)-%#Iai#U7<W?d5b1W4&aHRq
zdlS`q(OV~<dI--=d4fy$YT>K6693i6H$H0bIs6%aJ{cxvY$;b9z8&yQ5x(U7SEb8E
zhsgXVV{bF*2Gn*t&oL2>@V6aW1X^Q;am6~ci3jW5`K;I<_C~V&1yIsvGvpNTmtV~K
zY<{=>v5}SZvCVUatbe_&*b12j5;bu8qz2yb*HeA2IeLA7D`qtiS3}%%BiHQpXxmRo
zmT?~0p5@IK!TZb|i{NjAe`#H}{fw7@wjJ2P)c56+KA0S6dUl!zJ7OT`Jz0xEp2U~q
z5w?0dvv`>z!#a;A->xzVXPSg$C;b{OK_9Q>`*_?t>j>?i@a)T#{z$PuTC3m0V?sA;
z3UTVh4_FA_fcm6QmwK*KCViuQ4P#fr`*{kq&{vVEv?1hgLw+^#=k_j_tQEs4g<+yZ
zsZb&*(*TsF1)d}P1d?`G+d93D)orQEG>vy-Ja_wBSfR%~H6Wjz@OV${o3ZueP*vpD
zA;0Q&e9weFrma_!`Y0#(-a)*_!E&CQmYSDPaa%I<j@zbNkiX}SZo4ocU+Y4${7L^!
z>%uI$k}WQe917~r-@ka>*P}`~M{4M{U!yM0JdJ#_j^)|SEYCB}I+GUF&WI$Fu~`FO
z!xFyXDFiMVn+u^;-`Q<nD|(x0j!L#Q?=X6=W&mWU`DDG8-6ZnwGCD}+jULvp?A@31
z-`UqL^09Jc!sUTX>|`-Eql#?1;M)e@!`wUb3ch&nvp@Y_A_Ffmq9@A}H8K<vlp^2k
z-UKU*xGFZ~hb`-No*_xvEzv)A&W+NQ^m;G}57Zp@)1h_9SdENYWSsAD%6Gr)2bpi|
zB==R!`YL*xzpBC?o8qsU=#O4TYtevdrVKawN`F<kPE_cRR%?do{wnTupA0C+)-C7T
zo{2umw4O6#vN=mWF_9scB414EkF3@Ab*G$-(zdB~DXELnzo%#JU;VCSh6kl4>vxYg
zlE)st^}1S-VRF3c_h6If=caucvg9F-j5_4);T5W^sd#%+Kwh$9{Inx-7|vP2gWdMu
zjBQQ*CXlwxG_joXhj~jYQtppltZf~RzchTRwT}2OhLio#sK1I0uyTJmLmHm<;2R<7
zTlmGkx&8f-ss8A6-}U}Tg+GcQ-fU)7FBw+)BNGX%(kY@kh6qxZ`y)K}f-RR^D_GkL
z(OOQOI;m6TL+nE*=8I&%=<`}V?o6A7dCeqJ=8qQpt4jT`3bI=3k5p^%6yg?LpjkTG
z{XKo|`L92MUwDyI&_W7?vdIGwYbc9+lQ+`RZ6Dpw?Z2eHrP*5^rcmC+UVn?K^v6{-
zh{07XT^+(5An%bW@0cv^W|O4SP1429bO;w3f^5K|duc<Xm}e-3RiqdB*CM@D@lKu6
z@AZzD$~+tAo37bzIg@Rc)U)Kc_;7z&jLNL#vgasvvWa}EzLngk6<Qox4Ybp_mrMJ9
z&>EnfAOwBZDNn{Zb4)vNtBBLSKVu@*PtoVJ;+K946PEh&eMFwV>t)nR<nXx{1)G#h
z9w9a&YM$-3kCMDu&rBufu-rnggT7tp*mH9>r~MecuBXkNvGU};<AVl}IiU#|IeZKG
z86#r_?kV<I`-s}7MmKqzy;rg1dC*>;4S;t6f7_%y$Qmhno@sv3_DA=b`)m!L@hJ5C
z*}tKXqy56!AWBep2RJPy?D<1RqbF0a-b0B-@u$DtZU33D*rXNWN2ksy)WNfoO7wOU
zdEzCF0(+1@`CjyT<guM?_Lk?!e%%yzziv0=O{8fj%_LcTYde_cS0wAoceJv-13kRh
zIg|H5BmTAcz^&PHgu0|pMzv)V`1>R;Ci!fTQI_r5U|tLrex3`2xPiYm{x;*cwP#->
z@;Vf$N=+_o2<udZq>@)ly(cl2@onSTH-L=g?8{8}Qc!17&dpR3Fp@c3BG+H{=dK9K
zG#WcbRX0w@FK=VrEb}AvUMX$8?;iggMx8V+gVtFZmicaXw1`hPI21h*_evwnX&Gxl
z7LK{E@I7qqow0U-9&4CUYXWh3#O?Q+L&<iRbC2gTwy)k%FykM2wXb$3-hY%a5r<X-
zZJhXYNj>HTvlXhix1TKMG}&TdP_Z=gHd&v2??P79rf&QCgg=qAW7^(o|5J|%ddB1V
zN5%p>@8cA(S=01dcgpj8$ZC?a_~d#>KAF->tBZYCr%}Z8>2_X@ya}&&C*Cb?^h|qI
z8d}<U4RKN8{vcyn>vvkYlkLnIo7X$sld%!>zND<>b|bIjjpTlL>K>$?*X5Znv45#b
z!w8rD2vst^f7NXl_b!X}vD4;)G9I^-hg&jCH!NI`wFp`HZ+6>nCH(bF^)hpDyT`jM
zbLVQ?6GYw?<Zbv3-(=@rbhXh_MMdJAnXteim89t;O-;MmgE47B@|r?Qn%tSpccghX
zMNZgrXRkB`q^bCAcj9>)C$9&3rKu*(PSWW8p8e$2K$@c8bvy4eC(6w81}WuPLz)iK
z9H?HKNz?S!f#vKXP5xHX?}_qYdQDzM)Hg7T^)zWtPuLXwY$y9gseAV<&v=Z1?g*uM
zdiwd<5OS)JQ}>5%+h_W=iO&SFR>CXPXL4Dd&8cgph(5<@f+zCFZu@1^?#tvI(?-S=
zzU$+OMMI%p^K2mPF48VB^3C@F(Zgl(olB2?@-%JVaujkq;Vb$R`YZLL4VHOkNFLMu
z=vOx5CeK+8vwP;uKf&4P%RAlnE2d11o=W*x*wb#K1)=M2`fu;Hds5Qy=nO|>PQyx?
zTIB2^O|lQQoHeOwnn=^axAxa2<XnpWvd?e&N6Ozynh|`5-+eAT@x2_D-}2p~JZI}y
zk9EnngY;|O<9t3LbE>RV|Kti48?UPHr#iarAt`AvJ$m0KNZeB5nk5d~W6tFDIq*$R
zbFtPfm(6`?Iu0itgD$#M4evI1?-Aal?Pd*VzHh1Rmi|r;J0)x*WUv%czBR}R{-xXY
ziyXba)!TM@Jhu^-OWe{#+;r(5p0kwCkd)~2$Q`6<AkDp^E0ja;?a3Ju&-&yg+f4Vl
z*tlE{9XsAno=5Dnf2`LCZn-h(8D|{l>^p|61t0Lc8b(hu&(V4lbJM=dpAug#<ynJ_
zW`0va#+Canvb4)a=xd?tvmTx^<;_$1e5Rf=wh=e%uif_F6LvbeZ=GCQ=sM^pCViRb
z3_U+do8(_eemnX72vH0@2c@l5bYE&)jgRFK7du05M)V%-0%XNIyPa=7@g7B%2Td~j
zx6Q=mev&zE9dXO|6StYTuKmRAAg=z?%rY$wP<9Y^2i4-4R?5Pv(UfHvagoou?fVjO
zw<h8Wh}%fqoryTvb8+@ND~Sv3?zXQ^#PI+%apFVC?`te2?nH@W{eZ`YZPlMg(fiQN
z#IGX$WQo_~jr~Mc^mFv^a`x&+5Ve7HtG^(f<kvyEHKZFU^2m>;me^u;@)I4Bjk)#2
zPZa&s_5V9%Ez<oojJTcrM#pWEPRH@WCiN&FSU_CG=iSaX4=JZvt6<*~{tqT_U$<U(
z7r-0%cenkz855~%H0Bd|mI~hgrnyQ*`gxyLc-QP9U*Xkr*i`8>cHU&X7wd9wB~8PB
zyPbE-<#8akUn#Z~gr$?Xt;Fp(0Dmrr$nmbs{T?DNw>xuO1#!!XOYe7S=UU>n6Zf*@
ztJ`u9g>v5SSV~;8{Y7obTco|5$r7LFK^wf4R*&=Sk!}z9n5B0XW=&=dZH)6tx07^D
zo*w%*+&l9g2Re;j-bBihkAa$LuTaa(y#)RB_SpBEIkJ)Gw2`^a$kZoo0mMuoT}yV4
zW0wgFEedT_8m$Iea~f?Sw5AlA=tUE><<Op!Hqtt!ed;uw;thvh?NF-qaWlMKeR}Nw
z!s_tqwR0Np#c8}Hnpa&)JNEr@`G(;g+waTey9nMr@P3*4Zh*JW_vP~44R2_`m&-R4
zWBd&~^n8PKOC7wmetu(wduQxU6ZOM5%Gh<rcQa|WenFb`qzUtzJ_nMsjWp}NAWau(
z@&fypBRUzJi@hez-wshHE8wk$x8MkVe>t(gmt5Z@pU*OLF#g+%46qEYgdT5VL)Ia$
z>gXQ#9oUe(ASZTB=I71CttRevML^HbI<K^|53{yy@OauXW;NLthCO#4`zgbF67MSP
z<FnxZH1?5$IsJSa+gl7XvUBzlocW;&8H<8F_D9Iu|9He}>@}84wEdRfb_yNWV;?VV
zu5IN9RCJ;qtF6Qp9p969ha~gdu{BNZME#uEE_m0Tz;C!nnYhGWS(l;D(E7?fm(X&d
z#i7X>KrW%>Lt71PzNR=d`K_rvX|yP`$`L)z_YZ`RzZz%_&^{Ml?SJZLHTd4T=Z6W8
zoo7|0kDG=6#2#m!@IIC04_vDETcix@h|4*t$2rR<9Okc0(nH%NZKY-NsZ9MGh=)cH
zvyRWe@g-+L@?j?elYPv}=HB_Xi~fzQlY8tRBSJ38E3bz9pk1LU4s8^)oKt%2afT*(
z7lt+#ntm6M{15#7{<#^oP8RUu=Qbg$<<uVgA0prLus?8#KZoVIwFY|qs2+Q?sbl8v
ziE$2bGafV_)J)Yzs{ZCat5jr49lMYlIjzU>ZwLp4emVXSwEsw6wB9m#M~R=`_?VuM
zv-T>;V@cCIy2p9OfI6q@px$GaJ<hvPK?;&MCM(uIbKy{!r|F1&p3uWJv6_*sLi`Sy
zscY)mBYEa!_HDzWKjLPSYwst}sx!S_FS;ndbG9D&3%M74G0$zVCX>}11g$Pk`wXM=
zbH?=8izO|W^mho_0%)fv%D3OWR(&v(vBP=KsQ_7vkX3aCzs+N0rS26QKd_#U`K68J
zNxnt!Zh*J$OvZ8_0$T5qwl%GtIDg^c$PB9yUbv_elbh+$OYdL38H+9pq6K7Ga3%V~
z@4Wq;d&l15PnomHq;1#zB=30Lld%9LzNs1M^6}RUk0eR^x03GyeoyY1M83&&Sla#@
z`Bv<=4qE?_wGCORb}mrM{0mK{EV(4z2x#rl#%PK&RtunYL1R0GvC5_c&vHrmqR@-R
zF<&YI$$ruEP}=*D#q8G}mbsN9dabk?S%c^By?)8VA4~nrtF{*#iQjxac0uAVOnwt+
zEA$TNZXL!Fy%XAYXt+MQzmm_`i8XXLO?Zsam`t%r!$=y$;H$40e@FY*Vpkcv#O3oB
zCVmI;KjGf_mLAV)a6mDQPm==W?m30n_Bzro4D%abk``m!<hfkic8Oa~ToZApB;qd9
zapFg;AudkbD;|gMetD>QpR;76Yw;}awVC}0y*DTQxf^-GNj<&Z3(dKT_j{n_Nd8=s
zPJU}JKZO>87J@bc+Jllv*8vM>o`K*IAbG7m`EDZPT-v?{o@RJ%5FXl)-*pn3ip`NH
zxoLY0tNwU@;%$HDEN?Y@+u$3Xur&wJ^{D6LjALm(AJCM(?Lz(=vt0d(_R=rulVM+{
zzlw~0&5`|N=l6%CP6fm@5jRl!MAu0__rs34=Vy)*Q7O)}R}f&?O`uGlLDa)n!|yd7
zpXf`T<;&cc*iY|CnY+^2OW264V-w{M_bPvcVr?frpWlMq%Dwbe>b$AXBzawrcQV&H
zGgXQMmo|q=TjkeT)@w7}wt_ABx`KYTM}9AIHF@<(^i|Rx?_-yu9^T~1V33P_^E25!
z$$u^KFHGd$yRSr7Hxoaql;5r6UM`_+hgJY>kfu2ES0}V0Xj??lllDnJGf|d!CeF;S
zQSY|Q?O&$-RQc`8&HNVTD3PBwo~wx4PTVPpIA=V|ytjb3PU2jj$@mZK%Ot+p7xu8#
z)XOzyV^4Il72cW|ne*I2+(P2g^OUyONn8_g{iHlxq90w*mP1=EeMb5B@img?Ve%-j
z=h=+2iSrJI{I2Jg${w5JcP%UR9R;3kbsP(#M)0?Qw4Etwlh05(&-CMh=-=^?-vrH@
z+2cHqnr3U<r`SlV_b6pdZXtaw>8Y0K5A2LNbC7RvInFSH5|icJqaP$y*J5AcyF0;`
zv}tmNXA)1;ACz?%WqNSFe**7rcwZ7;YMHEyJU<=sEK9YA?8fN+ho@myk9~N;?_sQ@
zo{{rJkUW*#tN-DxAd6ObYi9F%tR}zIF|E(;@CF&vY-09ugZKTEE;SH&^6}yw$ooM;
z9yT`hH{0}D&;2k-!bUi+Hl{k-=w}QWQRG!t_1K;-wgYm?cyC5KQ0~j@u+h_^x9iEn
zn$zQaCo*jeXRtN@&X@=Fm+@rru=Can&6<imbp0JX(>BA1%ex3$k+9YKwQ2e+p-<*L
zbge7W)^*5hx!AN#nmtbGyY*>(S1M1-_v%efDn#B!<W*hLW4|x;Kwj!PMElR8fU6wd
z#5yD*FS@6#OkfuqG2nXEv&cI_<Z($JL1^kyd=DY$JecQ<t|sze>${i4(*5UAkG!SG
zb8WKZyA)b;3QhXB1=?z8dotLjef!w)<Ebu1N?iy!-$CDjEcwmh!=(;fG6wfRtA@7B
z$j{Vv`arE$#hmr>SR9$wdC7JXc@bzEp~Vg)PiFHpc~aM<@OE6rejN9XFF|kVHT+zR
z4<BgOt^{Y)Vu-kRJ{IQO<2SjVX4XEj{C;pzO^@@uOij`!-U+=9`Vo=`m$Z8qw1sK3
zzyivXLX-J)1hnQfnPP9{H;Feue}H>u{?m37tI(*JzKq!{_i<`q?wzyS1@Hwg?{VH^
z)xMKkUypIXsbq!dkf|^uXaZTRgKs%}^Gq9OwtZgxYb&XbE{NkRy1Yxu%Wp)#ZOWUO
zUu=?eQo`1i?{EA~xRHLpGIeYu?Ra8rq<^%A7kSc@K>OuVzb52uMxOipa^~{spE{JO
zAyGgvFjBuQ@NcXAe^b98@`l~Sd^*3!c?Yvh{PxAY-jysOO_(%mNR#6wkhE!KiRT6I
zAsYF3npu{}PDN_l>bgtWmm{aHj^F*wCZKKle%Cl9Je%YFU1rBjpL>g4--f&`*BRfP
zay5Bs6KgH`4eJi#Mv>0ZTW1|6VfkI_-Na!YjJ;z%H1<w!qB)*S;#?(6`l9R6$qeab
z3^>V)_1<M2X_u3BO(JblU-Z5a3n-q`?ltYRgwkVmExcXuy8hc(WNd`C2il>mX{D`q
z!xy}v$3E>~<~8|^!PXJ-YlRuMrX%{j{i1~ky|KsnUaOuX^!rJiYc5mr3p<`##|d)U
z!ubx#LU@|s(Z34<Ppa>!?K{Ri<-19YnF2hUH1p0XJVw@=kQKYBC*ylA`^w_kw+y2A
zLRMYI2z(A{v;12q@6G(K^N|EHl{fYLyEDr>y>G?_)B6Upo>_>zCnNk8F!vVkoun?_
zB)=Bo7d7?R4=VyXzXOa1-jI1H^LWsDDz<(n^0qW5^+(%(Xq%x)dE^T57q}IF2wJHS
z$hRr6Ru^;Z?2{DxE^u$PZWh7Q3D4QW!<EZl6|`Xw^f=GxvH-r2(I@q)hdvg%e*X*k
z=J(K&_QLUBd2ha#iPN9e7R$kCbk)cTBCid3BOb(Na&KuHHBW4mJoBA+pL+*sqNH)h
zj?{e*v<hfB!pBv>-vAD}BhdCcK6$T8ugfS$!k@zU3U377jqv_Ngi$Z!Phh6anofAr
z_k^)lQkJFghQGnuS;ixm&|0AVw0N&A+naJpo34YF|4>ijx0!{W&)+8Kt<Z~wklc%4
ze}yON%@it%S50&$X}6O0-Tnl$US---G0)s#XD4UYD}D_0yM6s@*$`>v8TqxWsN$yZ
zQiiXtuUg=%7Wk?KzG{K5THvb|_^JiIYJsm>;Hwt+ss+Akf&bsOKy$rQbvYlBYsYV8
z!;qil(f=*$pC)XA*5_&A{=ak5bNrR@$~E!nk+o?Aca=I~Kk3tw?>G454yQcx-f{3c
zgSQ%d*T|Qx>H}S|Exlv!GyJm6Bx`%OyuDMg-<8G}PvJZ15cs}p`1Y5No3EQ+^lqm{
zKRQId@OK@)pQrJ;`!8-jF1q=-e6OeRx#`l;<#WsVyF=u2^Lsaq?_kUMQ3{_vhfgn{
z3A^PCKI*i~o-fJQZ@Z&^(tolKwZAKoUyGC9kQBbq{+OV<d{*4yJLyaE6{PT;dkFbO
zQuw5tU(^q7Ijg=T-`7+4q?`wv-{KU$15_{3p7r-R?Roc?<Xe@-7u-*#ZvTaT=;ZfU
z8ejfF@;z<%MB7f^508-D{M;npP2n5u5;I^r--{`Hhmzl`DSU^L-<v6X8H$%6rI+)!
zUy^UT;gjwC16}F)eUOr$yWgIPKb`N>6uxsZF&J7ppXXi2zR0oMfi9OX{Gy|0M|?@X
z9#c;DtbTuay7|R_>g4A)`5h|XV8fTUzl;n$J-_@f$#;g~8;abc_}gFqC-U3j6kuEm
zpOp1r`6j0DNuCGGSCPUu<Pi8~r0_{O2k@8aO0VC=DST4SgXNo_!YAcCSib8GpL_Oo
zu<f$Q@Et>5NAveZe1X4`h-*n2-xrnB<y)S@cPeteC_kMU|5h13X-lc&7x9HRnfW1&
z?~BUm@=f06*oon$0ADz7nsiT_{N$YLIQ{~Lo(`_Qxbz>U@$JulP3L<lh3|wz$nQ64
zd<UD~+bMh}9zuS<|C7_6(k{a1gt$q&((AXw<kvSXU3xH`?_<L!$ASmC()m6&d>k(x
z@Ji?FF?{>eFIQMPU*A7FEiuSVupdn4JJRqCB)v#D*!Dce@cH49F?6teXQc4S+<CBk
zkrcj>hrl;Gg%7s<Ug_;}iQ$uRCpvSm<-FYR$+@)f9xPwI;TsH(%+&|WcZcC~?aIOO
zJ($8L7VcpA)}-*kw%;qgJ-=u8<XHo;5eI80UP<9Q{t)>7kisW<9c=yHPvMg>c(CQ%
zox&$$>0tT#yyuimo<Ed6JXpR#DSU35!oJUy-VebPKCx*Bn_nn}Pi)%3@`Y3Q#vB4)
zWeT6zn1ju)CWY^?L*QGG!gt0Y@GVc_6We>R<!nje6I*exd}~wq&O8LZjVXNMqaAF1
z?J0c69s=Kv6uz;Cz}J<+CqC1`mNU?i97n-J;2V*`ch({BO)z}2R*|uLu;nZ>eBzVK
zUgp8_Rj2UD9C5IG*BCw-3*s{!tR1|?@QE*fpex<J+?B@X&P(Ys()rH*i&HYuu@U?o
zZ2i7r@(aRq8h`t{((~J2I%y}lo-lIV^0%6>`>fngO<4L~u2)T1`c<yqny~1HT<@B&
z^qpL;Jhz@ZO}y)8y78|6=!RYY&JDYMq8kos>6W$E$aDSOKBj%$eSo1R?5^+Ku)7{|
z<+=LehNXYxI>Ye0>yoeui%!c`X2N2-<#PFDZj|dn6Ys39lJTOWa$RZSolx@sHHLnp
z!T){BDPf}tuP}Ip**A9A3$FkFh>3sNpzGhe{<`abUt;22|M3MAcKt&4d}E`byZ*Q9
z|GDQ5u3z_SlkOdZpBWrx%75-3oqG6w@1W;>2i<Yut|MK2Pqs+!JGXs)XZU>v`xrdj
z;7o(Z8yszLyupaU=?3Q-yvpE0gD;x(%CF73>@5?%%fvSsY&H0h!RHPB!r(6r{>|X8
z47%;2K5*LOkB0tNgP$6-4Gu8rh8XPKI+o?OkK2E4`>*?}BmZr4e)YPkPrCj*Zqm8s
za{J>$lfK==|JQ`wc5%xw+?4A~gT)3fF?fx^MuV>2J!-;h4gS>N7K48=__@J>rXC{<
z78rE(GhHt$Onl7X0)xv8wix`D!5<iW$>0`)TMfQvaF4;mO}m_8aFW5P2Cp>e>bu+S
z*Bkm0gQ3}ug>uL9Lx#TAV0yp&(9nNj@C}3S8vMjy_J>aY4>35#V5z|>gEa<kG3fTI
zi{H7<Dc`-<8%t`&vt_WsBwT6YA2j$4gG-k<d{L9`VMBk+;Nu3LG?;JFJ!Qh*GWe{)
z=M7ewbn8sG)!_FHt~VGn>0UJ9pBda}@D~PaO}bZ2_;rJu4gShty-D{Q6MoC!R)c>u
z7&PhLG2!<Nb{PD?V2erjHxvHI;J*xhYA|BbeQv`4G1zS|>jtNt!zNv}3HLMTH#o>(
zfk~HV!ov(6XK<v!kV$u{36C~7*5J7Y-Ff$X6P{?W#9)O%cYd92!ZQtCXz)^luAfq4
z!nFpkHh8^3Q@s5``6EudI4@YR7h%E^4OSZbT)%+9n$?7d8XRTte1lPgZibH-{chjk
zcs^@QIQW4R{)q|4{^*2%X~OY8IN`Tk{@**{PfR#q!rA(V`got>eJ8%H(Wy`TFHX4A
z4R<)<!6tp@J5D%c!a)<BWWvo`o%jn)IPkU;t~cTKx18|3F24z{al;=u@vpe)-*dvh
zH{tm2obW$QxOuVT8TB{i?J(_;Z^8}lI_U#To%*%^)(N}*)UO?~<%a*17XHA5UH{RF
zIX&e1XPy6J?4jwn))LvRbN2QHU44^%bh$Q|c=z1EjsM>s`&x<L>4>u&DfoNF(RTg4
zfGLmb|9;;jbp2m<ytw|Q$dt>7wE}exgVPGU$6^G@+FCBx4|e_WwdK9(aTDQ|J4Y6+
zT&}<G=I{EyZo0j;Q$N~SlX^@zW*mLngxzv>n(#bRk^h+RiEhE2Z2#Z=zsha#-XcRW
zCmc2yH5fBkZ?M5&v%$E*R)cK@+YNRY>@;Z2we%G*DBq2fD`YTiFlsPnu-;&U!DfST
zgRKVJ47MBWFxY9(n&;#fFc>r#G8i@(H5fBkZ?M5&v%$E*R)cK@+YNRY>@;XyX7V=}
zG#D}%HW)P+Ggxo1!C<q&xWQI~Z3f#7b{On5Xw{hf4F(N{42BIx4aN-C8*DJxY%p%H
z)nJ>!c7q)TI}KWwoBRz14TcPc4Mq*d4AvWLFxYG`Zm`v0o56O29R@oMx)0I?u5ii`
zG$`Nek}GU5YA|N7-e7~lW`l8qtp?i+wj1m)*lEzZ(#a=aFlaDjFl;btFlMmcpu>IW
z|8wfIHB(j^Ythsh!OH9BUUqr##vA5ddHFauy6}RMF+u*x-sgd?He=@>HI7|@$tP%V
zf4ta1TguXQyOTn~a+OS)G%lDwbKZ^DEVwZ^X3XhhPY<0o=0+VHbNd-*oE{o`vLWkN
z-94JyF~0SS98rZYIF;<U#tFM7-w7rEkK)#2owm|zCa<<r9BH*GnI`paf=>U#2i)|b
z(N6jk%$&K~<mXOVsl0OU<oEPXUH;g3hrh5-dP*nkr0;p%P0z26=!kpWJ*hM{C;dmC
zxaq^wo%A1$OiO5jPWspDl&ODcp_AS^`9SIK`dK3VQ%?HNWdAtB<;Yh(iS)m4()Zs_
z`#S00@MW9wgkN>iH@bU9X?Zy5?-=c-cU_*={dBmK{+w&v^bH?6@-LW@CfEd>{vHtS
zW6INUrdP*2y3|R~WBNO8(x-!y-#x4Q8vce24*xw4q$fA}eBbkK`oKmf;d4$gttYkP
z<ZRpS!wkX6&tB*9x4q=>pXT~ZX-p@h`Po*M9z0E1kJnmOmb)8y<)q$e%X9h;X|k-5
z-@Sn+M}B+Msl*N!%P?H-R%EH{`PVG4hDQjL=Vad^5i_0p1;AkWSMKTi$5QB53n421
zR`GARjQ*JXE6?gP_yPzk^nK1i?#or*W66}5!zAR%zMTdidHPt(8kj#!<cz$xn)_1*
z$L0Q=C%GRrMDiW^`f~11J6Z}i@>nPX9~`37OnZv^hllF>f6nH<#YtaHj}CnFXwBQX
zi2KKeNL}XU419b*0mdYE%Oen-d$yG&E&};X$so%b`8*XH`1sJ{AdP&T!8!2BVG^@4
zD<>8c+Ob0WNl+K3jRoPrpF8)b(S!rrhUsj-P0J2^MHgYPv_VXsKOK1q1@l)A>L>S~
zQZWDA!;h5vb)@#!4Qi76cd7VcM-TcnOmtH&EmpknF%FwU-orj5e(*o|S0P0fd)q(p
z&l=nhy^2Zr{;ZK-Z)9ngfAmq1nzPF8;TaR|P8-8N`O_7(tOv608o-x+j<BwTHh)2!
zuR$T!nm?CrkUKSh_2Y;{V$S>*%w51bYyLO+%*3EE|3n*ej~H!PgU;+L#j$c{jwf(-
zKdEU>ZslnN&e4HD?wWD}1v-$I8(T==TpbAJ2F@oiP6zUHyJ*Zo<8>gE`|6nlCg?yx
z?h|y$p!0Mfocp)a350bZl6y@)fkGXK=Ki;az(gIW$_-yfplEPkMICaBXu?6oxdRB)
z=E?_&21RtK>vQE7*9VpAz=B-)-N->@zHX|sF!u@+dC-(2L^T_7BS8XF4||Tlow@&>
zMqpab;Ye%D-4!4({jlQ*EYBT#BY`;srH7kyr%1IgI_gwnT5>-@YX(&hIg3C%cP*Vf
z=we-*wYkhd)}TxJNkg~hUQ1sLy0ky4WNpaZw1z-Tm#r;#3!{0^yqs|e*kq0T>3Otx
z-yza<4`z*$mOs@$ulpPn#6yC?LO)FuPl{#wd+>kAXkHnG8axu}ynj)m!6EK+!ZJ7E
zAZz6HsLzpO^Lz*yEd3mtMdUZK3Wq^{z%PN3A;#_CA-O*yi;+zz%;2H9FU$S^Ea(2{
z+&^(YSTrH_0I4hE1dob%U+RZeP47!U9ZMf%sp~0>N4@kQ3q2)2m#WlEIyYNccVZXS
z+b6KFQ~zCtKB;e@s{PdMv~_=VM2=<o)JaP)UTXC$2AcX5o8(uw3}Wc0M{5`@>NuL>
zaCO^p9N(#S(KxjNLzb%spG_T9KMFEfO+b^6Qe!AXo?0@`vWBSRpSG-_>cpp52&<c>
z@(7vQaI|F|qn6`t9;=E`h~a8YrDX-x8J9@gzJOXCul|BPJ3(E*ygWi3PRbM2I4V3+
z{ev=`q;5HqR~nRuI-aZs(io?x`*HqGRo^51D7AVO?XT7y&*R1F@e!6aTD^Hc%O|xZ
z##mMFpU+W@^7f$*)zJ*WvFZ=ES=L!<e2Hb9tu|5Gb5s?)1?r0FmUXV$exGHHQ-3_w
zvc{_;bNN(}Dx=mD)O`<G)_KZ9Kb^0N9=5EnseHywSZx}^*M8N<lxL!vw#c$3sYmGg
zBJ~r>Fj);@Ra~r&S;?;rtKZy;kyN+(`2}ZHkGhqq=k64n{&(tIp}t2iOi`D7oo|7v
zTYQ!^O*IYW;}hyyT4uVkDD4I6Uk#QuLk*>bm1^(FmNirLr`Kkwa@u*eI)_%OQqxZ2
z3uo%((HtPD(P4h|Lv1{q4>+jD2V2&~>hT$tb&2|n9=TLiQIeQ?B8pj8A76nss~-Me
zrUp`%8udf^{c<%OeZ4{rpq;N&HzB81jfQu=`a!v6U8N$YSk~9o8JF<^9<`&)vaVK(
zY1?a5X{}{ltB%4X*Q=M0<x6R*l(xEFO^aC84XS(+AM#Uy>-h4Ey1&%2Zc^W4nBA-{
zL*_zt5p8&j^3AraTh-mmE$cRQM++Y`QRC-X)?#%pb-!Kx`3TFpL!AhvL4BXrUZVDL
zf2Z<agEdj7qUTH1N;K^*wU_o^rgG8eyVcRueYyJfqn34#Dk`+BdsQBFzfVn~2b<I=
z>as$;d@8e)x{ZAASC5>D1yaYNMGvS^l=eY&N)}^S{UC>jB-IhuTh>GBo+m8pVf9Da
z{}FX^F-A%?pJrK)st*}2kE!ohS=Qrf745THtwl4RP(Oc$kGH6ozF}G4RJT)xxVo89
z@Ra&4ZT_@cFwwG}QKjhE8g-o4vc9E)^un|1?-MNRITgN&k6EfR{y(qYJIk`Ztv<WZ
zvc99nqK)g+kEdDIch$>vmi2;am~2_!Qw8)ztC~CCvc9j{>9rrI^N{~TRYZ>Km4B>d
z{YZsqlOL;>89^_qZL2Yu>ihYY^%Hf*J$yt&T{_URex@FyE*sS>^z-LR7AG&M4NENR
z7wVNWSgfeUCtB9aY6hD2ih41^F|Rs;9^9nH(^kJ!A6?4FKUDyod|kau`}{+Fo4(kk
z20zG)Tk2U-{!4YzgCDE@Gx@}b8gsg3eWISFwLeuW`dZd!DxcQgt^WBn%lcn+PpxHr
zuFgO={;hJG*}_r})1LoPKfczo{_B{?ywO=l_s3e?Op{qz`R8EmEKmNt5<unOORcP&
z{K*UjE0F(;go63~=yEHZUrzq0ll)3|mU^d5jOswDuT-oQ9&2R730Suyk3xH_;gZA1
zt0=&bqlUf!VdPtw!6A8hSId1LI(Nv>JetB9`H!c#KYDPS`{7Yxs(S>&v7_cn<emH*
zGW?X^(NM#$CbCkJ4ISU-E$&qz4PmKr{%5JnD4|EyaPL*u@L#Eg{LfZ*^1qL2;(uTD
zF#mH@od5mQz?;Ry-*-GF-a2azEtfNN$}v7n_c`?5(5Zc;_}1b)QcaWFoW%=&h^3L+
z0TZsh;tFf%^qf%yJQL<$eYG|8f}A1(${H@^I!#iILDuckYF0`AQyfQU=yjJuRI4wR
zQh%F4m!%#*S4zE=j`pex?hpxc)zDi#H%US4=PAf-{iI2-K7pZ&J<kbwDAI=Beyqs1
za#x@hL+{dQRPK@41eW!aX3DYV4j6imXB&woESO(o4ZYWqGofAr_Zfyi4S}Ia2Xd@C
z=AwXsp||wyk7>B@>bdpS&_zlLJbUKlB)eNlp=N)?h#0y;NlC16-+Go-jdM42llQ-H
zsU3`8OSMyuEcG+m)T5SPBUL+@|4MyAM`x?wER_zKdYp7f@e$G?d1y^PHTz2GkT+-q
zpUS;U=G?pI%ba^=ADMG+Wu`bx)!ZO+?f^#F;VO2M%(>A*nR7oN<sdcVC|X4AoFg-D
zjB*~Se#z(<tfqxz{>^6W=c)V8N1s&xrzx`<uVnsxm=QWmS!c@p`?tqs{#`#?=HGkE
zW&VvbM2=I}Kf?TLjk`8cUrTKhz5gIA_04-&>if0PQs3OUQr}3C)Hk+L>f6n*>Z4vG
z_rB`WDN^6hXGnb)U={nT83j_`k4Qg2W#23Hoz3|5tDO%?eFsjG`fge#^*s#A5$bxh
zbCCKwZJ4V@Q<o!E32i%A{S`$zO8HKgI(n8%9Vaf3I{xWKspI9xN*(|DjMVWctlzO}
z@;Oq+pD&g=-b1?`XN_A*GdaC^qN+HI3hbc`EfrWTwY!Cqd(@c>XRrF;9;w}@^j)@^
z>Xq6pz!vpY1A<b!a%#~}Ev8lbt7isD?bbmVpyX$^2CDaH2fyk+MrwB{JsVJq?v~oU
zfczuW_bB-w^)i}}tGuY#kt$4I4^~gp*GH-IP_aC9DSb3Vg+@y48qk)b)%%!{VM>wX
zG3tm*rFLiYf4G{nLTdLcZFQXLTQ45eN2TIHJ;aPNLjBq=9@Ls)7#ZcIY$vJ0QQ|?3
zzePN#z39~`D(hR~K`nVwJg8f*5)bMDTJm%?^=9#)z6MuFHJ~A5)b8QpLA^O!JgAGH
zj8#*YhzIo)(#}@9sN*^6tVhLz8bZC!Rc{hI&Kmdo>)kf5RWC`KUq)V*>U+4f`Kgac
zn|}<!s~#OMZQe+GW~<O~(&knDrOofYK-zrRDrxf<vCjR~a~^5)ODXLDb?T|o=Bp{2
zU+q4RHn*;eBd$laOJ0l7`7DQ$o&CO0N@EGi^z7>bP$rRYmRj_blw=oru2dU6m80ey
zBYiiCHVmrc7%5@ZO&J>UH&-A(D?dQjGNt@bK;`R0tDO8TK|+E2QHy|J{*oa;IRC@d
zK*RXs(R9gs{PlDctk(DuxpJe-vSA5@(d&!DtZ^$z>nQ4jM?G*PX+Fc?SZW5%m8Ir=
zO^SNWInrpCQ*ospxmg-*`($af2!^7s`uPn~g<m`-jrPP?X|xT+(rDwL4^XpOq|xq$
z;#cEnqQlf4N*qut*NCDHqe@4pf71Aa)Sqt?MU5RHih9w-qNw?F$5HAz21TAKnIVe$
z&|Fc}y3wMji~EV94yR7XsQF=0)Mu&6aP@CGG^l<-zQ?JP9~4DB60>lE`tB8?s4dj!
zL^X<T9jUHEg-%i=M^WF&7e%c;TNHI<r6}ryMWU!%<D#ga(tM|@X4Gl4n)9?M>UU7)
zG3u%%qNpz+=S+3;X`-mFT`r0`4@dfJCEr^=N69Z#6{w92lXKPE)OVa}=YG5@rLQKa
z7cfNUsj*PbS3kN)ocuM^C9Ixo5hwpHlw_j1cA+@=)ub#^-6-K?)kr%RtI_v~lm9jY
zEuyZVrlsnQIpXBsyFi@$V52zs(`Sp5e*zsoRprpL(^S!k;^c3p@20CCQ_~An^*!R`
z7k@*X{0}j(GgUu&WR{vi3(r<RJzkvr(RYcH|H_Tx<gdU9yhwFCAx{2#NWNJ0FBT{N
zh{fXMKTbQx)Y4PL$^YMh;^ZGjD_y3}ILX4ve}A4h`O8rFE7bX<yi&aky;e1?5+}d^
z$>QWMr$%2_^7A!ys+#t^S``$ClRuyGU#qI>#K{j*&g<02cZid}@|)u1zf~hn{)JP;
z$v=WzZc-6O;mxY$esS`jWGLODejgPle;Y&WHuabD#L0h-wpy$vP@~(``xlFozv}^p
zkh+UrSfb9qTAch^>fWgSLOU!~|0)wF|D7q~<R1<1-D)f5Wx2YG@p6y)5KXvO-8Dv>
z{2wh9C;yE#;^hAkeOReFP__HjSx<|TAEGV~sI#9CC;z%3;^cp)UYz_NP|k<co7C=M
zRd|^=`Loc>7PW`+JgSCNi<AG}AaU|vy;hw3TJm~A-9o=SsTP)slYbi;9#^x_x~J4D
zeZ<NC`3iCJPop)~s9)bAPJT8T^{m=JTRo?4MNihMi^%tR^$_yEt=i8OC;u&aaGg47
zusHcQP>UDTZ$jeakINA!zw{<?@{cOiPW}XO^3Py&tXEH>hd)x^KSP}Ssc6NE>YG=I
zlRu3<`ic6CGXGQ!JW`zeKhW13Rd|^=`T6AdlKS0Paq`<3#cgT{ZT_<Q?Fe!5Z%5{<
z>LJqO<kyIk|Hz5r<o}R-UsqQ(@MTD~4o&zURXmMfNl=H8%dgbWFW@VZ>SO-@TK%0`
zzp0MD)v|u0j;`ewLe$laqu;9Y(WT$1n-*EtTWS@pwAH%4Fv7w3Q$wCQ3LEx~Jj~70
zLvpm&7!+sk87H8E3+7&F4P7%NN7Ci^2BN(~zvaXQd>_!0L!Wg*xzSO`eQt>Ok$KSp
zjIp))KIn_zK&t15<VZ}uulzAW-*$LHzTxQR(C;{*vC-rIKfb;LJgVaBd*<Go%_cWx
z6K<A}Y?37jWJ7|cZ3v+lI)X@%-V9ZwNpI3bx*|mo1k?ZuibxX?8zR^%C{|Rk{_PzV
z>-Rfn<}S(mf8TGPXEyVjIdkUBnKNg~oxK6t!=)<hUnd~vfd<hupH$hiR|4%-bUg~w
z(I;v96p}TDeJz@jc0kq8-@YsabWovc`#fwt?LkF5#uoUb9a3m~kKd8^5Z5=Uhl!lS
z9G_+HA{if6R157SXg}?ULW_G`IDr0Ty5;r)iJV7O&KjE@U!^^!(E1*G&_j<i-KHKp
z5r2Z?HTDj~(~c^td+i}XpeGgDWA`I;OriaD5A<T%QwkmGaTU;U=5fSs*&aD3R11&U
zU!hfLPb>7i{SUlM+A|8BwEY8to>e^Fu^%LPpHt|4J8cEf^9r3)+m8e2WS%dh#gyYy
z;0|AEa0g67*~iO@6#sn%_VJ1Wmc1HdEA3T<y!P8MK(8qjXRoAQJE@S*e&uqYQwlk%
ze_wClrT$G-{riT>3)#<+Rh(9+Q1$McszpVrci&Q|LiN<!in7XHA3(Wx6l!m;uz=oG
zsIy%`z4M+zSJ+)U0G&}>dWb1k-j1pC!v=q&t?T9RY1pToZQxToB0CwARoXdK(93QA
zNP)N>WTPK*pZM%9X(0PV<)qq2ngD&OP(V}`!+k{8z{1kvGKMt3@<LVuSnr{Cq%{e(
z8dkGSwDy>E6RkZi9ZYMFKf<*3_z(P2w6#B))*g%c)7s-RjKNrIWm{T%Y#4>LhseG)
z3QLW&D>8O~x4j)68oN?8nC*lYfUZ=?vQy#P)4D6<wL859)FUH}+8rmdNV2h3dhrYR
z+wa2tSbLQ4F0UWChxAgl7Yuvh;NsG=eg%<}1*el9R5dwYy$z7hz-oUlvb`dUSoNlc
zr?>FXp_}zeH)?o8I6!F~iKm7?4!2-h<1i6e*0nH^D60dE$YW)q8PQflI9so^7mA9p
z{se<qs}0g^YcP5x&Kk6c7F~OK(xPi1+<T&R-&$I9walbN*O=9`=(@0k7F|cGY0-5F
z27EmcE=9IC{n`h?Pc>nzYC_8y!^VsBaqh011P&jWNzJ|P8=_@BOw!GL4K<}tR?T%D
zF#x78K&y{X!HIDGap`j!rMs0}uM0Alxw>E&6I%L>Zowa^;P(*No4&SZq~N;R1#eXa
zwN`KQOahse+>Eq(>p0SCAB<ZA%O#BU8l<LgT}KqZw;+noF;PkD)nuXwPYNO>{hmEk
zPdup8cdB|s7L^EJdL7CCz-N@rBJb5=u*mzA7!I4seg<gx0V?>>3F7;xg~8}tc{BJv
z=A&Z{<ote|SRSvS95$U3nq~clAbVP~+~@^(#$`!tI;~1njR|DT1hnS$p~j4bnMkXc
z8e@&Uo{Z?1%}BON;199IL?3%ZrybBt4X6V%-lUSRBTrcC?xB+T@LYz~l}lEGqh(FT
zSc|f*i6isdSU~3YSpu2g%7tuxFsE4Si3~EoPhfa)qSKyo&HbibNVZOK2P~aOeD`2z
zSk}i;RDRbDWRxG@P3!eppsBKkV18T}`V}n@GPGqr{urUJwv%k3x98%IH}qXG{`f*~
zm*P(_w7xO^RE6Fdgg*;g$VT`hu<cniiz3+eWUzuQ(PAGg2*pK<S5{KQCt93Cg<v6C
zOob(biD(hnM3IG}MI(rhk8F|348f?=$|T*QLt!Y;+6#>ctH%z~*K?z(U2U3^reC~`
zT33KZM_J2nCw&d=K>GS>1hqE-DKXaBwxqAPg`}^44d~0Vq49XDJ9s8oUt@SATI;dW
z@>yRtrQy0XOvCj)c#L}1qfmk)dU^x5$pMg~SvIs0*eGMkCpSAX7+{kESlb6q$$3O`
zX-g#I74)=-Y4#KZ3A~{I@p)T5Ml|gpK>+_hi22MxM+M&1pc@(<cu#}*a{$h`HFyIb
z$O}|DRE6XZHBEdMfU_D5Mn4D6X|R+^f22!SS%E0SY?+1K$(Twg%3%4V=yna16m3M2
zv{H6^asU*kk<snUP$*EL43nB@8vVhcnT2r>unhLZQ%NL|{r+UE$^%Q}>)FsVjnlwN
z-D;c0W?;2KmhFWR2G%R7yzQxXeRefzV2esiwg0*kXsbfO!oHZ?0(UATt7PGgs335c
zj3U*^HnQ-;zQ8pax0QuQTLW*?xScF~<`UrT8n>5)H(>!B*r9O;S!hlKzFXstvak{Z
zCUB3&on+xF$ANch+*uaJldQWmzFZbQNmg*L#$9CL5ExqEK8?G|!kaO>1a@nDg)F2q
z$iV#?caw$BlZEWj_)1wgz7Y6fg^ljA@b4>tkLdiKvT)u8;72s>B@0)s0e(#5t7PG7
z7;fNkjeE<&mrUTJ8uyWfd#JrnYTQ>AzCrRG)3~23?2f?{cuM2`vhXvwh`@1;2gpJ%
zhDzXs#sg(xH~50U(;5$wg}0G@p3!))EW8iP;J~vQ50Ql@S^z(%@laqm&cO2;Uo8vi
zyf*NH#?`X${%e6>)OeUI+zD$7yrl7PS$GDE(7?+YkC26ZhXcQ&@km+Nq!sY18jq5N
zPYnfrP2sfBvOSIKBKt6nmA90QmbIsGT+yCJYLz{J+VhFzZ9`{!WIv!U73yLCDS^I|
zJV*4mza&llAbHvzY@a8)yPznm?SGd8{i7(y*rClp|4MHKY<Rr=DoG>^MicET*8)j{
zc}{9i19qA{`xd0tGgyXM_AMl9ib4xTl{YZOFfYr&z<wBAGu2?Hf`R?nohWLkaU#1-
zZ-O1VMn<>&`PivzWOjSXhaI~{R=2I7oUKt*x7P4Aa}=udkO!M&3_@Maeys-~CL4TS
zKa~c(SSbI6M}?nhZ@irgC-CQ!py;3)BJ8(j0CiNzvcE-*fpH3X?dw+pjaMknrg=Ru
z!SD`)a(wnRZGk4L#-`d?{eiAiDA=AF9kO@VN7^!_z9Rb|sePM5CH6<~?t$%!bD8}N
zb=MA6y25^uWH_Wym2y&t6=i3ejpSj4uCNQx34x~-We@uT8XI^<q5k%1xX-{#xafl>
zR~OGEWBx#Ofv}3B$(BD<q+YAIh+1}5L7!Fp<BNdj6il^>hhGKwt%5<T7zP8|QZQr{
z-%7*idj*TE;xEaI{h(llrFKnUKm>Y_B<?ar_PlH0$O9E-u#xMJo11J?!tS;JWh+g#
zH%m3Vg+d-tS%VdRbPd(r-8_u4)?#p#)^#XjSXqr}(*2~GCf$EwlTlWqfi&s9T|txX
zC708r8$FvQ-AU7E(p`cMvaPkqjkB)XLX+;>l{D$Tj`<_eI*wX=RuT9lS)ZY6lC5Qn
zXwpq?j!D-VKZXt_pTerauNIjZspiWNs6}HqEL4Q$SW#QGNXX3T2*IpXFluSd?@5xr
zR6{bRbR~m4>d+#`pN>*8^dwe-SmgA?A_@c>;9R{{ChXQ1@-9PCu*D-V8GL*#mT%=q
zu*C?p1)r)Gzu&`=g<?U%2$ajbBJoDlJ8;spDI)VqzM3*{^hlA}o$sOyoL*WYGJC|$
zwm>qyyi8>Fj9Y>@E{>pZW-pUu4qv$ry2<Q)7;z`u9_f9#fN*xa0?^M#6<8wt18jU&
zR_fJxAlrEgr><$fh0vIAx*{Vhoq^Zswh17|8G{_3vk3E2RxX27rzKjL)rdjR`2<~@
z)!3N^vXJvN)RL9QpvXB3W6sJ?pnF~wPGfX=Rug7j<va?nomIe~vqP^X%qnEi!`Yq+
z(9}nw^%qS^s_PKt-McBK^}YiKcQRP?3Q2xB)(FAUSc(g$e-D6i25p=ajP+o128$eW
z9KjY0P7G>FWUU!ka?mq7f!Z<ZAO&B^`M|BMN_09uOBqDNtgA6xtWrQ>-L;L(;zjr$
z>~3KSrWI^Leg9`mGT;N49-=Kz6@4c_OEK1v)@0IaCy`}bI-bn9J&e${7VjW49tR_f
zx329*X1uF2nekj0yw5s_$-*ZZf0%${@Fh-fs3H9OMkF=7X&ppy=$9=GZ;2zZ(6{9P
zYZ&0M^KU4b-8e|?X#8eFoSX-eC%{e`e=!sBhRI|<jT@FAo|jDa)40n*#0yn?ZU*8-
zDqbIaa>}@DQ}m<w6?JhpB#L2GIXz<zLvrUgjL4j;l0IiS_N)Quop2|B&nbYSbNVny
zcH)Uw--O-Bah!$doSc3M#{p8EM_{};{o`K+2s&q~0R}J#ISn2H7|3OcoZoW+1~IoX
z=etb+gBg@NW&mIag9>LgG@dh*L8Y^NEWp(aS~?Sl0aP<+EgGM=322x}O{%KOxmm^x
zKo{EQE=B4slB*PU6qJ**S|Q86(*#;06Az<^*Z#B*&|1lD@Y&fDfYwQtJJo&?7LaqR
zq72%*FyM05D=s0s59xY?LWTDI@H{!UDas-{7gmw8QK1UaamNP0P0~CLHCLtPBpNZ#
zkc>;Bk(^{`881Hrlx!qX|5)~rUO@E}in2T00OS}+??GaZ9fGUNNikSruRZN8Aiu$_
z@rjOC^areOn4?ic7FAQ_%em2r`G+c8d>`_bsDi@Id=Y4=D(Dp*%f|vPGt9R^nMLHi
zYamJP5cy021lqct#0p$P<K-6gnPIJ1MdRh(I2tc|t7*J!8cw65eHR)pFTq;9*1>r+
zYC6EcW38{Su(7SPSJOywZlsa20lH4G`plw{G7P@PXT8>*9DWQOO0w0l0Xh7>=mE#t
z+kqT@V|@Fq=&tl6sw@c>XWfK>(ZGtk8)rmT3h2{C<LwxnxpPe)gdP^kT@aIB2nMgh
zmFC{SZdf==P6I58qh@)X3vej8H~Oflan9RE0T%P!L7$WKF2EA|SxKgyhlb=X<(!~s
zoD&1I%sd4SS;Svy3U`JPw=%q>spYYxsSQ&}Q*EIO(>m0NG&MSvG?k6kdaOg^NK;4F
zlBP=G9Ad0TAqTGKwIxlBn?joU9^Dx)8V~D+8f(nTNM#Sp*Qv5T=qEg<FQdw47g1$r
zM^R-J*CJUo?gNeG9yND?bc5_LezeGa$N3uI1_q7k=5_9w)W4B3oZ^16y^fPHxiw0O
zN^_bbr2)ROH`&lZqqOLr0QQ0r$WD(=fT%!Aj{yau9Rpe3;H2xOibfgHiQAzxpXjuD
znew@f1DlcEVmgGP-!xbqvQgBU+>xaI7qgUMecA>I);SC?uhpn0nZkIeC1?#E4R<Iy
zWpr1J^0Lw{!ORqfKdMO#WvB5Uy4JrfG1OoYp06Z^UI)RB#Ly>Ta(80raV$meNeqpE
z)$L3SHHV&dC5CEBaq^!S`q_iWEQz5nZozYw#L(Y&;XzAcXeexHPhx0Z6dtuChQ7H0
z&sq{ir@cO1|G<`DZ`}_w71s3DB!AyKA-`yR9=(-Uo!A-K{%-i<8^)s%i6x0+=c7O@
zLE)zh#9=cBQ)1rK3rJ}>b&klJ9#eum;rPN}GdF?Az0Pg0n7sMX|A5HnoI(@wZseR)
z2c|CaRx$`VJ)!KpwG4`!x8neIdFke8h4VR<jd}Mn>ni7_z5s`Lo!8lkgI@Ap;4(c#
z);QGART{f1(ATF>GBxjG*%A&kNTPizm27tKILdskb}e4}4=6bA3#p_NSy3Rb90BR0
zYe=>~<TxZ)2de<AZ(v%|T7Y&N)@LwMEI}J4gL__-an!9P+NfPij9R^VdBLA&t2`WF
zqZ{(#4X!iQzLs>AXf$X89sx80f3h<Yuw%;$7*(i-rO$Nv&K(Boppn=CIbORmA1K?X
z-v!8L{{;Ka%QX_|K22(H1n%zVHCE+<s?LzAGh{c%P|0heP`>>%26JAaLQO>02}t0l
zuJgB}ui0<`*`Gn{6?x5!Q?5YG>j>1s6=-)RShaEmnl%;ZGKEr=cx{w;K_y;0#U-S~
z>!3s^QsQ+|s90q6My1*Rz*tiA#vAd)S|t-*3AjTixvFO6PElojBI_+G`xuO_C~vbd
z)h)Z#ExWx264of>Ri=Tx6dk<iZn|4>O0|1ZH|;Ul)`F_j_Nq<`iL7KW&c0+ZO68p~
zwz;)@;MTGkip<lyBAngMBI?=bI$z!&#%nJ1UoJJb=O5i3k+qYk+YKS=IP-6pI^NWV
zmP_WGV6x0!k^OQPB1|_MV<58SWYi(datX7DQ}(TsNvY)~-3DUn3QZlHG+N|g14U<M
zUYizMdDuV^!n39<pq3^d0{HBDu$H`5D$l_J8l1BGb_Kh<4(6LK+fJ?!Ox@Y#yXO{^
zz1-#7b{$X`g?zRTUNNt$5;s+3Eh4^;2Z?WQvnf0ui`%yj-+p!Y_OHWtKpnmVBYfW@
zzK#2k8pfE{x_qy7`Bpv$DaM+CiOBKV|IPp!r#a!LGD!5(6~2xIn62{uj`A&}lqL9@
zeiy!CtKo!VJ7W;37^zQmd=&|K|3>-t5bXh?eYP$wS)a&0H-|dX@O+O<Zma3hJx(XI
zd6q}@jmV<Xm0fEvA5%?vX`VDp57zw?02aygS-5|&NdAqvaK7mHIeFC_kC_Jwe<8lE
z_yvVKAW}<Ig2GQb?d-rx(syIeY9z4?d9DmsVm*`B)Z?Klz4p#FK$m)=*MrVye?u;+
zSRwRW7bN<LE_>@W#O`j-S)}k&$-H|!Jf1|5t~2KC^wb+yPW;B*0}i`9G1Gy3cKj1S
z_j;U{fl@{Gr*OkHGRqhZ7`$%ySRsQ(N@hz`z&vF`gQpFzy>A5kb)G`LAhxYCWU#=g
z_NuAK%2z00kA`cJP1NuU+7r3}6{x(B{p}&3LWK&0BS(!EvZ;|0-vbWCPJxc(CF%&J
zz5PH6(53G2N^>j|Wsxd(1wSs8#VW4{KQ5Ie3iakku(DL4{<ggn<;sluA9Tl67*>P~
z8{TRdQnme^g}id3!7$W5#(o}yOg1x;CqWOB?02GpDhyWHEc@kwK+RR{3+*GImz7Ep
z%WXPMmMxT9TVp@o45+0-Ywh^kfLbZE&R$#%)LNli`9ZF{Ou3~^B8xiFPj&k_MiPd7
z3(zIzgU=z=xe;E%Jmh^DOE=+kAn;HO-SP4|B#wEQJIU7)-C{nhdc|qA3K>UuTEs*+
zhj^c&FN$TaTuWp0eoq1fR>reO8;?D6HVotePyN3z@#EqInaf^fE<TaH6t?udd_ew&
zOl2T@CD$$NhcO)FK83u>CibgU0?zA~An$+-%t1e-+Fv#SdPwC3?FMM3d{m*3edk7?
z6ABgC>B&GZ%6bb>uEKtbH2<2)tFl{=ot=^?i;>sap4JHHb;)h-VLu5C$v2fO{q3X!
zKyRsX)%H2+_qX-QsxtX^C7b*tHtREr$t-(Z4G7;?i<!Bq`#w-;p8dvl<b9~neET|d
zmprS`0)Chw&&d?JBfQY=3ysN-WPQ3pyV%}^HNN~<)v(;Yb}rDT3f*kC-U0NP5^N3M
za*$Y9k(*m@KS2uok3yU53)CPSDwCPi@I4RtmCC!<UW|Q`{92(sHr?is-zv)ed}~AM
z<L4vx4Xu&)y`p^FUOEW~htX8uF_A@v;g`+vMX~HoYoO%31D*$v!oKUE>$~VKLEa%{
zJYJhlq4FN`B+xJBe0Cz`9afa7tm?cY9)AOPm!Q3V2=X3PJ}+c%tOxX%LWTCXtAHN&
zr00OL$lgilsLHFbqp+6Bds3m6b^slncgzzAfwBrG%5TAKoRo5#;UGa7=yrqe;t2bt
zk!ax#Bl<sAk!&9=1iIUGB8@Hw+G%i$``f2F0_{>RteT~f_bS&g#{R87^6pc4lk6Az
z0_|34mJN#(a*uKi3+?`xkL3e~|2NdP+@97OXs>c2YwQ&2rF{ymx91E8I-p#`CcDpi
zpo0qCZnxS1^q@kU?aRVI4;jgSfoF~V+)AJ$M!k=FVee9W63bBesNuUEQl!e;_&$hy
z+(;OO+@LJ}lg8&0M)CzLpF*<uX|lxQDz``$(|$odt3<Dm#eO1wUgcKF;^b<;7mXB&
zMs$|N6G>j2Vbdn0hb;c}O2C(u68g*HnV8MwD_VQ9n8)Ht#d(Y@=D~PM>rWQ*Xnb9D
z!z@`$kJ#mDgXg}5viRQ|z&91~a#?&WypDWJ!8Nk@RTA<YqrMHPHp${I9KiQfKh?<M
z`^l4>QQrPuSsVjfl<%vu`(^Rr0>BTA3?IrKk;OjPpTwGywn)chaW5Kf=T!GRFN=qz
z0)A{nr-1lnDY9r3_-T^#bL{pq#NHye+IKd&)t5Y@T<gnwxz3#YiaRG4JO;acRnN&d
z4h4PogEL^md8a%{&>xSn*Yy}vBj>ayopQWt<h-RufKQE_w-s{K$azPNoK!V(-cxx&
zHFC}<l&eP0`)cHb?43Ty^P$QsvO8fFmUmX6GW#UlZr(Xhx*xSy2tSQ1KMTAJo*|g`
zg=eBG@RzPrU^noU>lDa~=Y6e^b_(C91y`y)lbC<25H1|`ndEL3fAOpXTk97XwXj~r
zMhI6Xg0!pdnA#LYGNTjkLcafQeDSvW2qLlMu;^DqSQrk(k|8fAI`J8zdeNo&Btpe8
zCiQ=T#PCBnhnN*=pLLnqe1|%y^`R5MQXte-EzKNq=Amxv%j2AZ>j17~hv{?3eTKR-
za2)dMp&krU9db0Go(uvG-CYY^#USXAQxElKkn5255A|UXa%dQY`o+VVM3F<@J~WVB
zYK24YJv4~PsvNrE7aGi<y+f`(bTyN8cF4DfsyU~JGb9Kwj6rXQ23%+)gZ>T;#?UAR
zgB=>Eq0u}9s-5Q_1Q^dbV;mX|p$QDeJ2VJG>N3$J(eaP#q2{L1iG|RczZhTK8C?*G
z<uB53EUh(#pVkc7g)u0dR}{S+6l~-r(Y3c;mC?~u!fRia1ir1K8;}wB?A<p5wT%u^
zC#Tx<mZ`js(P`9IL6OxRf5Kz7!8k*q?p3<`@^$y+4MKedEV|dBdv>8h264^`Qbbb*
zK8J4Zg)U*>IJ8O)6){M4==NWzm_fjy>vy3N-W>)VTCj%7I49)LIyV$%Q0NT2380*}
zbVW*e6`WHhvUWk(DsSjkX-<Hsyhje{%MHi~hHjJQQOcmLT?iLPc$dT5`w(u95VCAK
zwFuoVlP;cGgf`0t7f&rhTVxWST8OHm&>hk&XyY=(wTM~_?{XQEe+$(}AEs8Qo=zP?
z+gyfp>JZwlkUDh;?NIE4LHc=B=x)U&M9tbMP5K$7P21?uE_DY3&GLorljc%n&_+14
zTMNM(;n4lA5VR2v?UAu`=gO<v|A5MiBM$qd`53XLU2bT<%Yt^fp#v@p+U150s%pJd
z=#Vsjh!lFLPNBnf3O(!=>RA+8C;PU=1M597#LxyA)f?T>Z0W54TX6}1z*NjiA>8<&
zj%v2V0l;+*QgXBMwE%l%6e;0GIc>x&5qeNYQOldnSdT1R%b-Sx>@!$J^a$N7_n{^l
z2BB4Id8#`eZ$+Sf!X9}%O0AZ>WA@qomjbO(d8zhLs%))7f%eo+3<eTCJAFEaN$6>L
z!R7u;9q!M%+^@!*7<x{jID38#(DMr6tmhC4`$>xI6HSQSbw(vt4lL{>HH`}UQB)L~
ztd4QKs@JFJ10Rt+8q)eg%Zw3jvE^<tHtrQ_(#Hu7@y+gpRf;dP+gR&T-(QCst18xr
z$fkA7Lh}<z>zMX$(^lB_yo#;P7iyL3wcj5L^rc#j`*^KvekJ{%b|Tk7PSX5Zp$a=Y
z2=t9Y{cU=@Zep!W^~@4}5+wWwW<p<nOm2I)6}n%WAM0F-xM&H>&$qQmH}Fy`i-`P9
z@D=_7p3aw_I0$iP>2~~X#g|HP(Q^E#i6TEqO(w$s57qDtY}S`we?8ICo!9(S=1Mip
z68Y*TuI11wJ3o!L_g*n=9{gA^DnBC$?nsH1sl;-=Is&?2x*r+dL0P!~*-A)jP$di`
zKUdwEwKhr?r7?@*vj&YGfXtAG9;P_fpvh=;eiP1fq6Ym_38cJcYLv(#Nt;&Vi-`Go
z;brP=ALSQucuWEeBmdGP#BU#3o?pyPQ#gy@*Yiu&`I_@PRy_G(UPk(yOQE#<W(<;?
zshD;1s~99ZzHERt+z!WSS_IIRL8^1w3($^1z_|fqCBHob3<Q#f=OWrO$I{MM_@6*@
zI&GUZK80wf*^AXNzWG-xEc>mab7-kCcOach^TTxOzN?^2D;dtwXT97Qnzshu0jFj?
zcMl9PG!8u@WN7R%{4qj*G{PS%WDUVXjcAd5ABI4Y87DsjXZr?JWX8*sk5H?y@7oEK
zpsdZZH=#$(M1{P3H{J9p6lbrpke8&8k8i4*$qG4qQ{AkmP%7V4Hywone4t{cC=|3?
zKqS+zP%a-onDy1MJx*My<&}M51JN~*&Fm$YVzgK-S5jk+qk3sg97+n=gVl#=T~C=-
zqk8nv>V8-i9)5!`+RB8J^jhcp(L<{(@zAn04^GdvqHd&zR_*Vk$9t1U)8oCp=&D5P
z2^fjbItp&M&k>}@d!JuHkM~YsErnmUE~m$PJJ1n+Q5lQHypnB^+)dT{P*zyGV4Bhz
z1$skd-wrbwY%Z6lksq8gYN{|-$aDh2rUi_-Qf;(x>3~{C{(!AFMPz3dpoF<iR=}Is
zbRFE>sho+hPdo>-OR3Epq(Niet5BTnLtD(fGUlJQXor1WHPAj)2M+3pfA;A`#Q1ed
zZpuCd12^ALm$=kzC-b!AUtSwL-I;GHWZJ1%RGDw7YAm}7+BM(RBG`XGQRaKD2oFNR
z<{5>2_K94e_Z4#Nzor76RVdZ&hoNGgQz(FYS>~tmFGzKx95Zr?Fh7%NgqqR9-TYjt
zhob&gNXmYsCwkTVK{m%i$WDisHh)xHggv}B&`%0ky!SVMk<r=k9`NcC^w|x%QQ_a^
z7%EH`{LKsQEKJVM{6o*e!vA3*Jj&nDWRrsA*`W5%$JZ4l=)HA_@S>iNRYhZCF^CF%
zcM{PKBBE{R;}IfSKPt+x-X^U+K>EOOqh^aHt-X}fFA735xh#<mC<F-F`~!l155J1U
zwu<1lJjB~64TQaMm^GTT%<Y1?hN=+liJ{k7dJIGzQYqaBM~<{`eK@9yCY{$H$@vkh
zw<eb-PoNUcZdBEzOFe3ax8;awvqY1wd~)M+Joh4}TZ0WKlG<_v4sDxU$;;ND^DO0b
zXAq)iflYdFya<n$LF}h`J1v0stU(1$#vcc?-ow}t)*TIKL_9T&M(fgKXjp_3LttOv
z&FBhQXdWquQOCp%{fwd@R&Q-eMgrIj;+*380CCzem%z*m;<aNQ6b498ju}6?C`f4y
zwgc%E0R{E>8dJY(4uPV9mpTQn8aRjnP>{4PQg^bdyX6#|{T9^Ib+aIjs=GbO>2vlr
z1ebJ9avZKSz?G(oX>AvRvn<FufCf9i?F3ygjpD*NW&$*1<$9e%F#m#Vt?AsB067d&
zoeSdtav202S}hbbV%{OA36=*1jbrKG02Vo`R|Dknd{W`iu}?vWK}+64738yURnC)?
zqbAGtj<^Y+puu5?)7fc)g>*q7ll5?dqX3$wK8BqBP9w^>gmbE$Oz5cK(&%Hz8R?9i
z2vEd1pF01*XBQMZCz11o^FF+5K?zIn18)!uN}22zCydFXpp3!qcui0%7zkN}pMDp^
zSDuIg`?>|fPyH3X9QF|^Oew<XbVgL;XSDVCa-Xt~LcPv#emaVr0O$Dlepz7_Z!c4w
zARJU-Lp9YpbW5=?he57r3STd(z?bW5F0!bO!4h>`nNG<uX3dBwkU%n`9P3ghh^&D`
zIcz0<nwd_?F=ntf<$9O0p~zZHl;5V|hn4A+9Ak>%wRj$NDX|KmAKDMDDa23E(kVH{
zJXftKGn!!Zcw`zqx`#}YRBGjDThB9cf^2dn#?ue5cVWf1p;46%JsVcxa*QhL{5m9C
zZ=oNftPSAo5mj+=t~9SkAv*)pq?{+covEGnr%<+>uaIT`-56+rLSE6+C+EoPQKs23
z2q~|ZSp=q1)o^a;zic|@PL(s|eqv1b<mD`x{2gi(HVs)hTg^CDd#V|3cOm{%-U<Vb
zt^ti)B7Z}IHLVoD+6&hvt;w;}jPn*XW9AfU#v`yZua%2w)Ms^v<pf3c5XfF3?~v0m
zB7###jS%uq_n?0&hMc@hoo{>9`F4#u-;U!gfZQf|6OXk@Gf-~VQzCEa<=v9E^g-Uz
z%X=hm=|jAwmpdhI>EYx^W<OQ!r#FoFsZH5y#=>Uh&yt?y@adKOMe;)mVc$;6fb(i1
zR%g)iH#LF#?5rKgGt@C)D*viXnrbf*6qQh*)>EQEPob=K(1)=4Z$lZYCYkhPI;5vd
zry*Hne~v$ntZ&dWBh?wHMq&+$2wt<v1`1icN|R{{d3lv4(-n&2RhkSagvnzC+Ecmv
zZdZ`D#!3>TZ#@!(&a<TT#Y6}qD(^<8t4{4~93z?ovxuhUe4^<M28NY}fo@vkZ$q**
zVk>M@R5@~xVfrwKD|rVS^@u<3<Kz&7P1LgU=Yhvig}nANaX?oq6lWjp091|3Vwccd
zSCuM<8|E<LM`xIFgi)W~RwL{!cL0rcS(G;dy2fQeQ@tFkenH~1`wj-W&WNQK%HX#$
zsdAvP1pJy+Y(e@kBZ}JAtkr6ONk$Y&j_2@$gs74|jhJ3;J9-)QMpHZN>z)GPRqCkL
z;@?%u-U`7IHY2Z(LUHP8Kwq_4_1V9yL0&&~;+twezZR&!I?)c=H2ui|3N>s`jl~+7
zWXx`U8mg1ijA{rHqz$2*t`5od!-g4(A^+Y|&Qx}$o|ev1VmNjb+9GEwgmq#9IQePo
zSotsfsOsOjMh#M}nQ#fhx_t`ht&f&c|BgnoY4z<-{hNCo^>22Q6!H&CjCYV_6AQW2
z@Qno!_Q^+qmKh0@rH93GBkltrm>pe+^wT}H?DLE8$Wz{Ad~g-oL=SdvR>BE;H@aM|
zGT7;R?G4F5x2RpYFE|Pp$K+}wnpSqHb`KBo)))!Q!|pr>XsxO$Wb;A%I)#etNyCtL
ztKw2&zec^cUZE<x!D~PpjQSr#lFq!Kmba<A9`*q;^NmWf{`TwvK%10)2iu1?0^P3i
zs_pS)%$pS&X@6w_ZBczW#@<N1zE$Oo7k;|p>L*?EG)WI?^oG_?z3r!Ei=R4ZxIhQ_
zJ-zWoyAP($1)5&~J&Vd&7;38LzKm&$WNRhHw6MA(Dsc=Y`=oiVMcii3**A@!3}T}}
zUaOzGsc%XJXCtr#sUoA>RIC)zOez>-R$Z+osE#jTI*?CiC2mEse;dAdkNYGdu`~{2
zSD|8cv8)<UWDJ4}zA87d1aWYgthi(>9)bIbxq+{lcZE*%lh@4{0n$FX=@iGj>K3>f
zseN<f$p^%kKj_&q;{=%Z%Z;OHF2?*ur#2<O-L{Wz$Y@;bKs=)g{^_~ghLn!!wzHBW
z`zR*E3K`$z0FwDpvrK4`Ob@7qz3pl=G*PXqg0>GcluT;EhtnauM><e)6JE3x*;PKE
zdI}Yb>~Ar?f^t;hZ^YA+jJ(l>YSGCTyyP{7NtERc(t=x#DddH<kB?a8wF;#QKXq*O
zK9o+C;|t6Bf)$;*$_a%rYhh4Akxx|QUfylW>k6}o5Mzs)lU>q^=Bp=5Mo?jTj4qFr
z=(f?juH;iCykZNAj&GnF<fWxKlR)X8jxWAQvI3FV$ZZmlorpnIB}bM<_XEEb5247Y
z(li3X{*k?HX??n@;<e3q<Xu~uI<*wS*iX<H9$V_CD>S&qhV6$OSE|;&Hr+ds<JB?}
z&w$zhO(^AOZ$*6XL{3x)PkrcTeAxwCur8L9OXr~0;H2R~PAT>0!5Inr%v~ruRq^!(
zhfjxZn5K}=?uwx#r<byxQ`y1HP*vjE+N9}1&QvJZ{&Xz}XK8Un_Dh%_ddTZbvr&U;
z;#}24p_({PHPNe@IA1jp9Z5}Gpej$bqu?dw4XW~>{mo>cMGA%NA<;lLmZlb>f+CxK
zO(7ST`pbbTlxmhJS*q;kV6SqiLhWttzGVt^#?=aF!_QyEDC&<RxEh9?-5u(RlLyPD
zQUgB6Vp={}mQGiJ1pkOe9xAhE!<e*deyEI}FXC76JK$o1@<`c{NV!LJxgd@m<)dZx
z5-zq6bn-EUeD;S9(BlfFip=klP)&UwZDl?HpIR5EFq8#fS{A*2sRmJok7$X|1F!nO
z6M8E^nC6=XD<Hxq|4k?|?@q%nQ0B5X=pM-@Z7P<$7|xuP2%?EhG%Z3zS&E3rMdnW(
z@HL8wR=PxD+!OG!O@B5yIrEQA7+u?ZRPvxp!td=BIg4&V)=Y!*UXA2YO!&=qxX*q8
z{cavM>d~Q~cOa^!2gvGi6}=T*xlc?tI>tB1a^4(|LWc}L(PmL0z9iLVb|p4HO+3Yv
zLSMpPj_={OtwcTTFGG=M4G+A57)%5-S6<{UGF#6=;ii1kj1C-`fyyT+{BK?XJxs|4
zQC<o$-$+Cxn8^7IizxFs#rr`wS?7Jc8hNJ-=KEnJkCjZ1jAA*ByTebOFy{p<k<HVJ
zJ_g?NqKJx=(uAMPCTHlA=z}cDeb6LA%Di&EhmUSLN3zLvr97^Y4qBA8<!pxPnub;3
z$q@opG?Ox$%-5#iRZdN~hE)+Fa>t!Tju?%uJu10tAB<#jVY*)vOKHMS4^?umx*DX%
z73pg(smR$AMDoij`3E;yNlH-o>6uC9a17tj4z4Bzimug?YBWb=N*HM9F3zv~?|lA2
zrO2$p;v%%2i3ZjsVvEW=wGH`OIDbLie5yn<xo{~K5-&5+-9$u}Ig~iuYI;^7+MEu6
z=-#BmL_m*4M4P!Qa3s*&^E{={T@f+koz3XvhYZgdN+Kf`Imd5Ae+*Ou>L*HO)9OXP
z9lJCqt{04t>PSMjDvO{P)=bb%PWSb2nM+hxmP81CM83#8w;XTYN=u-t6rCxHA|huP
zMs}!$Qv66tX8F0s%m?nk$^9_4*TrrLwwYLh!cWgRGKb6o(GVuuOGIop^e`rtw#>1V
zhWDid=L`*?s#VGXoF-DPioXa7KRuCZGYX!l;4)9bP!N!cV(GqCEz_qvXG#dZDnP|W
zo5EZa>g;J0DMWRPHajtb3OaiFM3PxJS}nz1{EA2+dY#{h>7hJs8Kxsjokr#8XJ4@t
z6aI0Cj@w^>-g(^ceMS{j)<XrCdv--Ch%n>EiOi<(X`#E>PM#nl$`_fHCQ>(Y>c?*C
z#kZR)6KfM51K#aD7wYg9ZMI@K6twfCVH_#_aFuMDY;~FC8}M$mD|n!WiHNhvONh)t
zSZ0S>alIoci(ay+R7*wq8MOMMT;cCtg(hBrb1Z1#xieDV|5=DhxPg9poSyRqBoAG#
zOzTl9KA(m7DhH$D1r~ySV5Ei)WvO0O8hU6fh_*4&c_QMcdpR9$#9+ByvatoL-LhoJ
zsw}sH8MN7u4zVjeEs2WFh#j8N&{r+Md`Bv!^rL*XR(e_>GRJw5^##{EH&Ou$M=wUv
z-B$`_Szj~J*1AMW_+^Wc{}tyy9LZN%8>sQWaMt^gEap%7n!o2x5WU1izeR{t`G*@J
z>ov}*KMV!f?{In5wCEiejlEbwT`8Zlcpx%=ZYgK*SnUB4;V;AB^wV>>Ot}DSh#S;^
zr_zh*i>68SwYdvoD=3Y=uuTQ_Q+DRQW+-@vhX&PN%I7aGs3__5y-gM-xh4ZV&kzA|
z7Mb6)gR}#<zF#PnrR4$6(q5FCa)qBBTW0Rr1}=S)h(UwlC_{(&vHUDT%>f&yLqm&G
zNik)V&pauHIRw?^48IOGguB3WpJ5;ouud+jFy|vUofJp8-^oPK*Fxc((Yug*mvXJQ
zQ1T!o$1X<}CO~5g_EkeAJJ;Qm$^7U`<aE3lzq-2G!><{Bit?hHQu62hkbF8Sm8_Ru
z?#IdOl$90a%(@c<MbYU*{!d+=nH3X+2=?SL?u<ZL`VxNn!EWXYH)4D7Y8LG}n^P7^
z7<(JZN;<_%yAJIrll)@)fkY7T4=l78KRN>nyonW<dG<Jl@N_n}4Mh7td@-kyYl$Ua
zEd2E9;&I#1*XBAkNOS5f1A`}(&p$yNxML|M{A1cd+%KV>f(kZ)FDReKDig7|ZC0Z<
ztnEqvQeI?|6>aM8M6qU`;K=_fqQ_9jTp@D5XAPAT5v}n=&cP{=?G71FoO)3**F;F<
zOhAcHxe|41B#&e48~k^qg6g@kp!!8Qwbew$<1Xg{ni2X`CExER$8xzgAx!#KUeXhk
z%vEJ(H9*QOtYUimqULclA3PG20KZT&3&$}f0KI0kP2<bZ@(!MqQ6OMtv8mBAOXOU#
z0cMz_%&?dUIFA*X*&NFUORbHrpe#0f7JmFxP^5Ox>5pXp81U&u?@B3Ym6!)1$U4>#
z{Y5iju`YhafI?*cRRi|xl4(@kA7QTsz%kf>8B_*wit^|e53#(WW!s@IkvReW)%-g7
z8xT;aC7++(`jxp2#%+Dars&6VvzF(Jh$1o{g6&!BS&DKZ`X6IE^QKDV*D#Zwk$mMj
zJHmoXPw)uF5t>$=5^c<Kl-d;__pyw!_=`*V^U&VRqD9D8E5==v&vvScKC%s2&A6wJ
zQ`W^<DCgBM25P`aAjQ5*d0Zmr;Zhjxc9~4)f#)fizX%EckA>*u-k{5UP<3+pH6Y;a
z3l-KJQgHB+d%1Mze6fTGh=Z81p*ia7XvX)Zq>H`D1>dDU%vpgh$ZaH(h@Spum*UK&
zb50Y}Y{@59%OXs3x~xKSiSmj&B1L#-(rW^imY!hTE7-+S7oDK&h(UH1y}DE(KQpd)
zrON-fPQF+y58n+3xL6Ls(9g+vD+?9fqtp^NMmH*!)spk$ROF>8xkHo}(FlG>4vWZb
ztpscz$zuU?I(d*Mr9-EqgWNok`THH1I&NpzG5KQZ`#}(&PoiJ)E{mk*T)7>o-%E$u
zbtffvMnq)(Fb~O}#FHFH-PBn6#j)~3ne<cr+%Gx*UCNIvVZ``1mtY)x9!=(zITc=|
z^jEe?aV^Lq+QY&UGj4G<XZa~ht>$lCfj-VsHdR8&waj9ESJe5lOsRo@ms1`^MCM2L
zU=Hre4tN%&M*Kpp7%!Gp%a&r8<ac87?f(}!Q|3I2v4-Dvv3(yU(umE8%)8*ptlN^Q
zk*8fQBJ+7@#kwbzTKT=3s(oYI)zHc+$tw(dESS*+@z}3Af;8t(OomMt8cBTsvMEp1
z{}Cm(vpBhuk}1El$ow02X8g{YqxVzC-T~WJdZKbXt&3il!uE`R6Nr{HORqHe-w9t|
z4#GbZUb<Ql?uigyWR`j2dQ7<o*`SV7zFJVE?Lz7<WtnFwnR}PMAmpV@@i;g!p3r&9
z<0fsAm*k*Kf=qZBV~V)=#~}|As4p?DZ8h4w((utgTI$snIxOE5*C<+zuXaSsQqdRc
z_yU$z`WP!>0Oe6-BJ)w0OzB-L>})qxiAJ_0at>feT8h^t5L)9B;EfZvVe-mWlh=Vr
zO&n8`7rhHK^G9qJtvi#4#o{HhL=-VLkvRZOD&5NUe&e#$B6YxMvhHTPh#p_J)UDuT
zZOX|;GKE?U{q#o38BJHf2n&q(O3EYy6gdfKcGJ;H?>#A*bvyoGE*@_+il<-qWxigF
zPOWBH77+z6^;mVw!9o2tJaZsS(ip--JN}yp`n@d=CzjKg;3yG9`d8%G!y(oU2J4<q
zuv9}w7GeGUPkFWeUw%DN7k%W`=V8i$smQvFVt%B>A;hF_kz&3k#zPMst4C$<kx|Xe
zg&;Q?gRC_YS|T(k1&Dd=AtOR=Mq*TmK5|TsX9^WO3$kuV=t`-cwVMBd69&fO6pda1
z;U)x$2YNF=wOOa<p;ew8wLsCHS^(7M4v7Kj_h42Ub<+*F_*Gso5lWegUtX2Bre?-p
zE9B?pd>G$~{#{JmSC|6im*pAsqoO!Ix&Nv>h3~NE$6blulfRS)=%-04@4U_v=`m2`
z?d9yUd?Cn=&sMSoeB{;vlUcR5m$#xiX`&p6kaDfqqN>Iq6?ag|s3}vB7DHC>F2WlK
zLt1KfHv`b;CG0JdNX$Exl)oeG7lb7G@!nnK_362BHmc4<NTL?hC?T5zH$#Zox<QH^
znkin55Q!0UNV~7xvQdSx2W0eepN<G3X3#!E?AD|gW0_n8g$|V4^Qq7Tko7}>J_z-x
z%!3j3ZVX<TKW3FtkLgE)b|ix5h^D0hgIAU>(Qq9YQ_s(ZMck^>$d~Qb=`eY(D_YHN
zgJ@-ul)Yojh3o{0S#nRTtCFY#kE{Nhi3+D8q|onWPn6fA-(S+riB$-!wWpQV4gl{%
zi1}xSAyV>H&&o)Qc+*F|Snh2z2@3GtZQw^ln2`~b)~4w~hHzsvuIM8_D7SY}A=27w
zDDVmbYi*V;gUiS|=2b;RL~9>{_I;{En5CNLnjLsWH~5jV;LSW$I-T@sUZnwP?o&+!
z&6z`W`m@l+Ul$9TuCS!h#<1UuTE%PUSr{pMai46e#i6yLr0Tu9bb9SRp#pd-%cM2<
zNwpd+lk${KZ)cvUXY0pPc(g1kZ$YEwXS9+2Lmx)VVl`SCpg;-*8ZC>}XekH21YyXX
znq5${`w;?hzpqmL-XBE0sWA2XEvnyV08c>>(f8v4$285s5N%*Ha%s7@90D1SA!|K|
z)**OTYMP>srfB^Ia%55K^ZZA5`mYftZY<(4SCq%zM+~Xc?*TK|mFo0Abr~VtSb}au
zq|*<9_8@{s)EO$~SzVMm_bD*f!^P`XUb_oo%pQ?pG19vkCRSdgi^Fs9M{d1xD)+&x
z@(vVx2~|Et)ppc`?0CD^2K{S+qG7cFMA2S&EZk=L7zcBN>iLtoV2RHV^#?tFB|I3W
zpqAxrsMZTe{}F-vxwY#1rY4@iAf(W3+}7nbdCKd6#~~ygfNN=8&Ks|d!1P}LVKuGG
z`F~X&20BDk<Zdo2=cmHY0zXYuWDHg1sZ{^Fz;93*-SB8r&cC3PFnIb`e@UZW!{hC8
zzU~%6T4RJHy3F0KyaBBYngi3nBTU+i6+yf5TuSQ++?~=s#$vjCdBdwv$8g}G2q`m$
zO%WZ+)A}RrdSH4Y7&C9P6hCRzT#R9T#UI(F+`D@k%x4wIR)T&xf`}f0p<K~OD^fIU
z2NUR5?p-q-gj<nyJBT(S7^?yHAaXB(MF3ADLbtq)=>Tscata}t7)0HNl%IjVMwoC2
zpjubZRLc_e5EAjT0O24+9S0~vq>#XC0Q8{0J%Tw^mz!755Z6E?n1r>qW`PGjnx=E_
zDxF`~N-O%HUVJ3({(uS}H3?~AOhP&q8Ce6%V@*)<$Qp`@=>@m!PF+gtzsf{L)^(tr
zfZ*AuxvEJhdO6JHFP$VsF)6mXJgJbX*@UcxC^8>G#H@SJ5OIxF56DQ&X2DTtM7ehz
z6}lT_t5IMTLj7S_`?zJyNX#u`y(?pksUW!%v|FhX5feCIh=#hBi!r4r)H1F-<~ge6
z5|BNB68BRnR@?qaAvflCMeAK2TRBs!?I;R7ioj|+qRZe{vO4x(4(T1xo<{IIp(&Kw
zxXK?QRk|^^W%8PG`vJGgA5i=|w@R1N5^l^b6X_|54fVfN<@vf*{*3|Q)sDxA#B?Kt
zyrSIvn5vA&+B6v~`2Y5J>glfi5cX<r)PTHb^enQxK1R&n!gS4t?6W|n>jlO+ZKJ|;
zyOH(|?Q~iAFtfK7lF|p&N*}7zX&W;2V!CInPN$uVd4~oh(58z-=6;<{0zIzM|4X1(
zHO-dUhImKOc&3QXjk>1^^F5tMbN){%j|ZeMU9A)60K5`ZpgE`NNyDA>)3vIJvZ@Yc
zjjI$-P}8tc_~|txe)@H^pI*71o>Yi6s+tM*XRC3OsvVfzIu!kZnIKcG0rJpaSqKSq
z<2$RoDdi3T?uL*;FD_|V&M$G;0DKdr(aIoO%^0VEpG1i6^}H0Pbw%)bZPB>ga_>oO
z7L85F%7=%|LNIOu=z~ai0`mc8A~Ko4WPsZdxs||3fX5Jd2qBrcHMj>U4Gz-Rll1j6
zeZ5OxpVQaR^d(-9;;MLjnUy)Jt#p7g1u~GLi-p-oCvX4W5ZiPzt!1&GB0snQ-@T0a
z`0mf1^C3M?P$yjMsvb=vo)h=2-p0hGKG89U4RKzpK#F%r1&zyNE|3ZuAnScJ<vj!u
zO)K{#Es7z&BEtOg*xoo|VCVWRh`vNfBf4}=C&XW%iwx6ftXQKEJVBkWJ;OI}X#FFs
z-Iyz)Y*g-9LDl>PvQ!lJBdF=^u1Gxz<b_Miy%VsQ<moLBM2!%5dZT}VQ%-=Uw_b?!
zAVAaGFhs6KNG1k6z0Clch``g^F<k-dl0Q7XZ9(ov1fJd=L}VWUn%-VQ<T(WMbzP38
zxAqW;+y-@*n%ut8xplkf|Crq3b$=SdjYTH6^77bo)LvRPeuQezBCwZsDXsr16X}be
zK>GuNCt35a<)sHis&r$?y8W`KJoYLq<hjbI7&Huls~oD!U=^cd@w!Z;$}G^PBX~yC
zsnYyIn;*HfiC_+8MXh~&!FmfnbE~DPbt+5yo@2fB3}-ITG~};$D;nBsn7`_DVtZVt
zlk0YsL)!nm4$m>JmonRG390Nqx-8B}OjjRNHXHR_9AF|+c1EqTtrU%Jj(3&Ls@w6A
zrr=58CHTQxH#%>KE$0IqNv-nni<n}|ThR+266qZ$(k{=Y<A}tas{rE4`BW^C-h~1X
zEP>|f6eB^oyL@$mk)%&B=uAK+m#5MTed6c`K(bzWB1+=Z@K5;TAH!VpNlXOvxsSg=
zwe@dkAV8x07;Z_Dv_M~m5fbSAEI);VbOtgMcp#<G`&@nwCy*#}fM-w|z18LCa3-Z~
z0A7oL#rXL!pS2tU+JlgMLoQavv@QQV%*QJ4A@MCDr4{*wutRUL`U&_ugd~#xk1&fL
z8w=AyNTL^9{Tb$`J=wsS2xhZssx^(OrFawVpaD4--)cbi)VX#0W!6QXsaBh1>)HtM
zc9>6eCN6~b9_av1?}k%Idl__J^1X0;XT<Tll1W&O;1f^Njy$897(bDsyg{MvITKDG
z;<$0W!R1UiiNQbF0Plyr#2>#TgFU3L8!E)(s@8?{=0$wy;D$cf883ojNsh<EjYy2v
zXl*${0x^0#TtfLXfJahVy{jm#6`eJn1b!YN1vk8pD)IgS{FRbO=A&UgpKOA)Rwe>(
zu8xN5k&GjNuSO`Ld!0{)`Ik!O+WqsR+hM{utR*x>av1VG6^@>81N_A(WL=Lk^na_3
z0RXEJxe3Ahm@Yt1aU#89R$T@Ih@J|<mvp`q*~IX<u=gY}+>ESyP<{t7yanJeB8Lbp
z0(cIQ6A0cnbZNTENZe;|pVOS#)9@~YVSJzo=%DrsFjhpu{8y*{2l|UcpmZwcPP@>x
zC(J)}z<v&8&2}1)%P7_b;5p0zI-P85kV@Asth$wQVI&LOxMxCbcGuTpx3CtwwYAvo
zuETCkU3TVuwJ7O_r)YueJL^(<9?_KVt-`v%KM`t4UpfW<7*E;U8ajr;=VSE;HrILy
zuf$e{bIIa9fu7GGu*IzmU&0m{hxQ<_#jOlCCyVO>T!z5rb+a<LM}Qxow29*8a3UEO
z{ha@2gc91#-yBY+G!wHy#xs!Z=5T$&#@ecqQ4>c3W-8b|W!i*EVwD;-jpDItL%8fo
zobwzGUpT4cj{XgHF-QX`zK29|PuTP=2EWXQ4bd4zst}B1fYpesBH#hohR7WV-m$v$
zr_d8DK^DP8iR*Pb9h(s1`aswm?Q(q$<z691#PwT5z9v9i|3>6b1n-Lf!L=9-j@D`P
z*yc{~BI~0io@;$;tFY)Jwa}_>ZF?yP5D=brx*R<sGk?~AEbmRlL>oX+!~pt(t?(Gy
z*y#+%?5Y73i$hOev>R`vSWhZuj;KXhREM(UJ@giRJX16c+g5t~Dr~`(S?#BjO?=Ko
z%&K?=42EW>!Ql!zvChZVG6f-lUW_wD%}VQl=Tcf1ID?^Ke*PJgh=)~3%NTVN4kVOe
z!5=Nip#OhY9p={~nrja&V8g2pXOqoTqs(B0=zU>Btaw$)AjKN$zd7NUe#_8HuOe$M
zXl5W7PXX*eWD7zvku^Ajlr$>-RiyYnDt>=_92b2Nl+U_F|AWX!RFp`fsHo`!Ekg9<
zzEb=eVeu@ncsSmhKoZ=5tW?nW5cuJVOJ_z(unzGhC+A1+TZ%ID@T3Ct<p?5%nCIvL
zEJZ^d^XgLax_r<3D3nSSiTbn`7^6up#v(OL&yV9hK__tTK-`7rdo4Fz=rO~(D0#qA
zh)+ff59sZz)9cQz=UQ4WXUIvrhGP*WxUrz7kT-<w7fB(s((Q|?dn53&^I2U6s@AbI
zT_&>Z90l4D2%eWTg<9!$pelX;Lm?x=v8l_U52|P8|3*MuIoFe-i`H5<U!{{Q;l@(j
z2FwlH^TC)KFb%>?aT_p5m%&khj=?AJC(?i$L3;xNY=uOcr0EPn?}n5!!}hx_=XIc3
zgTR|Gm(F6k2)7-`--h6suKB12n0>W&n$DHtH!!5$Q!6Aov)H3^f1Uw*!Z^L?kcbAZ
zXg|3k8fC(BlV+@j{GWw5_ESUNr-%F&)j-T7Q&wUonKT>(m(UMK9*0~95wI%kqQ>zL
zKwnS_tx39s`7u~p62=jQg=l}$F38#~oJzm7s6=7~0$bC~x-vt!G34+^_6^&qsF*vW
zD^fclur;mKWw18YG0a5#iKuS`Xs<@_+@>kC`nqV?_!UExfO+e7Yf!@ssBWgtp<&Sl
zIZCm@>xxx(SZvb6f))i(Jf`A<@N|{hXX0&h^y$mrV72v0xI9u|WjIU<yb+SkL`axJ
z>IhfSQu`S2Aq3V`%W!?t)Op|^5m-}aHCHLz7-n<+$jid9ZBYYj%1#D70&B{pH2<qi
zL{kCKrXhGf)%<IXlwTrMy0J)=?ZUCUP-Pws!TDU5OJWK)<`Pp~iqLbRP9;UIeAFG>
z73zUQ`i!gbBvdK0hc0nZnGG;IkutNxO-Y%}AbbG=D>FMB?hKtw0v>}9ptWyyxC31&
zqaOyZCp!9NQ+Bu)UGn(=_!I&wJy$8+!S*Ksft9`}q5(JNHcIA&V;{a*E4>`_WeBVY
zm(mn&%q<g9dMD6!K=3T9qYo~=K2oI{bBoJ@aBMAwyV<62V=iGWh2LJM0+Ie6G~p=C
z(n}HP(}lmuOuOEqH0y-RDLNby(l44>vrf282?*~3z7>Hr=2sd!4SW)THP$#Hz8iC;
zk`2PKU!w2WOuqvC7YN*Bm(mn&%q<hq*q@-ifZ!>p(;zNh5vkIRxy5Bh9gVr!rf_2}
zVJ(fds#AgR(+}CwZyb$V7-27I;D?u#+OV(XkKDQty1Enw85^!7wc+AI`Wx%9J}%=e
zXi(EX7onH%Ib^^;mlco!r#j$`kgx@-zn{xW$$+m09)Lg_Z}pCd<v?>Oh2Cj@zKmV$
z_rPCL8oAx`WxP*yFqwG~3Wk(nqq|!7)L&)ndOIScJp#{A_h`WkF#)7fhV5k_=iV6(
znt=$c-jkXRovdTEwZ`--Kzk#C=S@wa-R&X`X?$-3bLDQai!#^g9CEjhAV*>zn+nNY
zq3XKZF_Be>S)~iokJ*0ag1z80dgD1p?W)u1QOI|y1AIEe8|i>zbO3eOcV%JSVfA+6
z=u)05Q>Qs&k?%u35?WCYCDQCAKPpQnryM_J)HESKDNCdGhKqW8Z$s9xGD%3jO9e*}
zZbrWW_3^J7kCj#7I77rSljCLV+2e`(i8B5jW*oh~M?PJ~Kksby5?I9Jn#;>&>BLRs
z6L_O6@F4-=ZvhGX^wY$K<ukB>DhrT&ljy-ZK0l+;^pRVyz8&^Nzj(}2_Vffg=N^QF
z_u%}p%G#14xAVh)BLpUiU|AlOcpm6+gp31NJ7kyflh#<X>MFGaysLzcc5=%6bXUt<
zdv1OT8j-8okccGuzi=6E;;T^^pNp7l-<hA$V;~;3s@E-=YhRwvmYSz5dJf85i2xhV
zE92vqmZ^9UiI6fDDQwLPfhHl8OhgJFy_joH&cBS_-f}<w*OqE_L9i_zbZyY4K3AFg
zX_R`Ec+sy_=aunWZY}`-h>$_QS)Hdk+gy8ke)RiyVRe$OxM6<@c5-=H{Ot7@4o(dk
z&;Z9P2u3tOA4Iwn_ydLJAu^S~cL4hkp?@fvObntLg7#gYR}i8u0Z7K0Hx8js3xFR3
zs<xQMSk3>dfsDk2{>XEs!L#eYzZ_(jpl~6AFneiP{nz5`9@!W@vY7Ur__vMbYMq&l
zp;dA#XPU81<i%}i%)jbU5ba7SK0sCo^HE)D$SC}PU6rD3Xir%RVq!i38)@@BO+`Nh
zoWWGR%~-l6+Y`B-S9CjQ^qXfipb@@BG2{bZx8*d#pSf5OF8!?0hNe$iOjj+_p|1}#
zhXrslDH%$4TuqJ!RE>cSBS%69I?Z)DRa2<a^|tzC-D*4?YO}kl7Q3Do*?F(6#g4SC
zt|@u-@wS#2Qy@Jg`B*FIVl2{~E6Sqxl2y?|l2+)-7Sx?Fw4=LK8?%hWB866##hyW-
zRC>}Q%tWnM`oWlh(W76jwMXXTnLM`pLFz2@Q<Wy7pY+yOM0iN$xkp#RntM<K(%fZC
zg9H8j^XWkUl+GgMU8}Nmi#ykCvFEee9DlCGacv!r-uNulXLbGh^19pvpVK6yDN-ro
z+oE|zWyYW2#iu`4Kwb2&&-t8Y2qJ?B&^gTnM8+Wq9#BVh^9|v~BFb!0W*6OtLNuV}
zqQD#~6itWbYjhV&F^KBDx-4lS2$KmkC|ZcGR`k^wUr|@#Ya<G-MQBhB;Q3Y;?$Dl&
zR9J{)tqnZ2)-mMpNA4?&dB_#w5O^FUA<U<=8z&u|MfOEIdx!3#;Ny;r##%*m!<Jr+
zri>nzKyDdC<Z6Z4SyPdh$W~O^OY{()Svr$`s%@^<fPUQFSyA%YuK8pw7Nc}Uyxo*7
z@pijfnTzUV!k_%5Gp8<uV^o<jk*S0weMd=pa=!4a(*4DDd9Ma!m!~ybbdTwFC8_5h
zm9C9)&1DzWLt}qwt-%`Fq!d|#I%7;<uey|P)}p*hQ>vj|eUZ{!`#WTe)t$(vZ*Gsa
ztHCWSRSxIQ!c$zEsIvytkQzng4zNKwi`w#Z-Fmfm5}r|-hLtk27OyXLh1ArQwHU?U
zUfX7BbOVGZM~^+)>6@);4aC-U3V7X`z5Qy@Tr|RyE<?Qis4v#U9T#D}R+d5wkYGcD
z%#$yJ(qFlC$X2}o@s?de3)**J;V&cb0>oR^iWVTjbnHbC66n1cF=biwT8y#4gDLID
zMpzY>1?c4%M}X=7#s_FQ6<bzFt10}ODDex?(ZvG0tO?cE18FT0N+yZ;vH;0w;<8fo
z_1K~g)dHd;Xly5!MfctUCvXT^2T@`#g0TzWLqy&quo>WYM1CQ#3Lq^5z5pTSIKZR`
zJ2#dMk?3QFW%M1JQRXbjx`4hdf^iyPDI$vzL<|YEPIHivSbZ)J4o#)gn1rKRH=@9;
z#DV15kH}sEB<WL#JV}7sa1xPM5xn<lw*SM;(lt1I;2C1fZfEqNukg;vR^3*Yy6AtW
zj!s8KE`LiLBt6zEi(N^gHbvGKsQ+^W&t5G9*{z8Ab1$?SQI{L@vpnDsD2plI3J&q$
z@Fz<DhQO1kOIf?LDr62eJU>&dG>Il<VtJ0BCehC$T6JT(9$^kK;zCprO`<^*$fQD^
zuWQR{p3&$NthKv?m_2C?&dL^RMX5(G^sj)@D`ud%rEL9^^l;gyHioeNx9@^w((?QB
z(k5j6m!Yzz2yFeImo_Ks-wM2j(&)`E|0xa9i(kG1euvWN{V!jXX5NLgPFZ-6h``qW
zWvP#>e?9PW1h)RKO7p3{_km9$ERlOKD|}O$*cz2A$5{BbRF8!<^D}6qeOKCm-U~wu
z>7?vp{FtVcuSI4CvBW^&@p4o*36m=I^N*#`i|>T;$kwVr(-MKLa6BSo2#|d)MPv~H
zvfQ1B+=;;B<z$4N8>>BDUbzEhXuP}y`d5hojhEzx*gzqu@$!@AfNM`WR(rhgf9|7N
zb5I})f#qq5NF@OpFIOPag#fi-5F!H*yfMN5Z3HZ@Jpx)@94{%_KK?)B<svnY7ni>!
z=8+zMDvf=V^ho1nD(at%;7QOj@Oa@B&_JCc#VRWGd#Uj^m7?cgi&0_`0<VBJAaW}K
zS^@1sWCwy8a*t~kLb$P9WYI@PmBrk57YfmkJB|WJ5qQYCl(?D}DXq%TkQ+^9Xvn<-
z`nR|uTDLwQk=2c<A}}xvxh+(PhTMNp;4>=Zc|{lC=9-UaL__Wc5M#QbGe91BYcT6(
zX_c#y_dUi#z2{-r^1)I`n{i1KFmKf#EWMPs>imwS2TQxsWa8sD6&)(&XXJ^r>63>_
z`Qf<Qj2|vln{hfmkq@g^19hRj<%gwW)V527*j!3`59YtQw2=7IjexC+GG8&-UfO^p
z!I{kloD!@o-M^mzo&~5sAg|a)o9yApYe6jjfEs>5NT36On@WRJItSySK7!|UU7B9t
z;Q3qwT5`<#z83hV#?@4BVg92t_~k69iWXO~(%qAJ4k$V3$+<U2gSrM>b>5v3>h**_
zkfo*SG$VgIe5)X>m6m3b+ezd%F_o5HO8zS`>N?KhW5LAFZUQJPO`?<5#5cnXa_ETF
zHyYO|!leyIU^-5mn~scdX#p{d<991HE6t*6;^rnJr$W7AJT4l0P}y7qeo0lOdNY(d
zdugHcAIGn+Ygrngqn5Z09Z;r~dP!7%TvQ%V`_fph=+}+_9ZGGII<B$^prZmfN*R;`
zUw$tpo!C-7t=o?)e)NH#<PTOdJJ411Yn<590($q*5Oh;_gaDm}#FloVtLOIuZ$?Ne
z9e^rIGpWqyz#k)Iyyk=1C?9LA?ae13391EnHIDcLB(08bN3m-fLbB9S-*6OGzgl@q
z3j@!nV_GUak}Qq>4TbnuE9qd<0701IMI}A$4IQw7DWFQdCv2)S>AgAyoJpH@bAV1J
zo9NET?(R0|p1OHPX&N;Oo1-iJ^bgL`J9QG`^^#;#OA&5K(g)9__=8FC9<8L;OWKi=
ziXdVLfq$fPx`dT99Jnt6E9p)3o?KT+Z>d+UZ9(>}2y_MJtr9*bdIInf1paByAYC!M
zx{fIU(E4{uq62qpCA|UqQwaE79Q<B~h-TfGtxL)GN@D3h$Fh(97zNHDc)DnM<)ewi
zD4iljCCpF$QxbbKN~Mx#_l&Jg&Gjvd)aS+`^_?w=ebue+XVmp0)pzrMao8HE&y7Vm
zd|DFggRWU(D;E(2&$ike%<HvkXe-zhw6v;M2Sy=WR@RwhH9b_OzJU|5o!2!9z1wLD
zli*$joV4LB)Yj$dk<4hLX2Lr~Tx4xwDdl=xrSTrh)dZDzp>BzHA|>3$vgI|L-y6Ss
zDB(j|-x9@hq}y*>XJ9A51NG^W=46rSP(wY0q*vhjo>lhN37GCIvAsR#+S|xh?NC+?
zz!ys5cmR6Z=?chkniDkGi19rJv^=mz3ePm1&f=wa-hlsGtcF9?b7~xX8xe2ey%3M?
zO>8fzqJOe88)A$jQOLL4UBd4*GuHNC|8S2o{b!K<2txF%byCdG9HlsgSy1jS@pRvX
zzFv;3KS1*f0zXjxBtrKc(RIv?<s<s~jWC1|>d=_Ng7HQkve17cZ;asiTJvCYNBv~*
z$0B@bPbTjziCseVlfgGfnPyb(ncC&J)X7MxCRFNRN$g{8sVh;UGnIO?b}1e%aoXH)
zwMEA~t{xvKiT%OlFdn7HBB(K)s!4GfL&qW`<k6DY5~!broreO~Q?(hIiW@m}xfY@u
z=q@fo&>{GRfF>kEouabUGxr#C(<PP?%+pj8DND%4tT{(n!v3d~CER2vO1br~J=zlH
zlyo6W*bZrKM&Q-_^(B{3eo|xHJ3?B<i-kC4E;0JHML(^rna|F1zOt4@pqYV?G-3k&
z!>KZvCx9QMw2!kWjW28c2K+4ouk5dUMmuORl+5FXlIYR9p&42gH_8*DAp)<L`ykSd
z0Ilq=M`R{}RRFgmaw`I_?5iW}+*qdWDcT9|!WM{E_D4Z~h#1hyK01U`D+IN&pRYOK
z$I3cZdu3ln!cncMDBvKlJeMF+NPt%MRfx1CKyB!cNM8i+2F;8*4gDFl_6V*j^BGW`
z)qR$G1qzRzo>iLp?-F%(#1~7jfxGosViM_dQAzAp5}Ag@B*-xl!LwP*qGk^o%=;sa
zrhk_!7nj7%ydR}#Ft0#~1ql3%?sF}Z6x;M*&LX-A;C>i1hY)x`yL2YgMF#Y9$bSaG
z^R?!q1~eD(M@A<7176uq`-yiz{+7$ur7^`*poy^k68Zljw&}G;t{#RT>8fzqUB^sq
z5pqjO>>d)Il=BD5|Bj%>uB{mv!i{;{Ld!~GKXMDj<zpF!pb9mP6mny>Tj=JJ*c^-^
zt|<cr(h)obwWT%R)LlSRVijmFPKiNbR%_8|zMH5r)sT1X2s2+(%zQK?@yoMX+VvdM
zfakauHJ~HFZHkXMS7Zs()eTR6D#K-sW6Ck^{AarAAiD3gAp8@B7_<LxTCtuMx?yU0
zHV^CEhR;;s1$AnstkMo>w5y!0?e=O1G_9nB98eLoQ;3j|dz?zO>I2HIz?~?Krl)Bo
z{pgqU6M=^#@MXCEnynNSWIr=YVnSfcm*MUO%~k}y4Cm6B!i{M;_%ht%51<TPhI<qA
zZy>0HoD~t~ZY)v=_uGD?LbR*=6a_w}LM+j0T?mgANg~{uOLHYU527E5&@)dH@ksFY
z)`&C`@%nsaH2nxPcx8#CmBh)XlxG+jap5l?)Ed09q>MC})C7VfunX^A5~BQWz|9dd
z&cdPnKgzxXOsZmOyU(26nb{%kB5}zQc6T<+EKxEDN|qpsfs7at5G05a41fv<hzbgV
z63vK$qNoT)RKS2aAfkv76~uV?-?zH@?5z0R=l=UV1y$Wu)u~Q(cXgjLegEOY`&k$M
z1o9sMhzsv;UHDI+4>FA|yuWqfd2xeZ<X~`T(Y?4=XBRHkp<lY)IrJAX@ZMR)krvnx
ziZdJxiE{zsCT{{Viv%6|Y9K2~(6zn*WGg@%`Za+%hhY|yKRWcuk3fc@nj_%<jtc0|
z6Zv?D8(<y!y{f@84oh|D>8u<}?FfOk0IAQpKn9YaL%#&bMI`9ZrvTw6)uUTf?TPNW
zltYh|IP^Pq{7(+OL_!?8D<{po$NoIKI5wJ9rq5c4dfWmCKdW^qap>;`jXp@J^YQ3m
zuPqLJEhJU~#G!wtb;28uv{9_i4paMRXnzqrI{@OH9iK0Jf#-b}`R@S22UJgrL$44#
zGu5ctIrM{I|I(>-Jif^RPoVZU<o`;wC#60e7*8(z-qoT?FkSN)@ABf<HEbq3C!+vO
z1Xv+o72yW0Vi9XaI9Mx=ZFEA}5U3sqH3(YZurf|)WO3|>6Uv7`9w3~XT3i2j9RfP^
zOgw+39C|%%1RZ)in`!qr&g=H|dItV{O-kp6H!C6je47&V=i{sz{~G#p*GaU_r8dK9
zhCfdP{@nEj`JUB!=r*aupS#vue||AWDm&f_n`hl=Z?k5NwSxS4%Wi*My-`kaH+rLP
z=$zJo@^lut#qwVLa?rDx#w*!*#qznF%tGASKw2iRVCP%!Ga6|l0Pz*Yc)}lp`)X4c
z+KPR<0^Kl8Y~oL?gJ&F;;YO-`ahbazCN{AQif#vlje1ZqSO2I=^AhVb;I*E&FE>>a
z@uW{y=F6UzEWO{#cS3M{;py`&gSBBAZ0^42FoUUxXEvhRUbo^{5&9&w1zFFc{3ij4
zfy(nT5=;AfY0_fN4jG39#@C`aHje6O<{v}VhiuYP<+n|8G91@A;HB~5M#Oeyvb%!e
zi&0%WrSy@{jNrxnU=U+Z=paUln{yEVMj_t<%1^n8QXRUYgD*r(vM)fUnP_oC%IpXI
zIzXnGn44y{P0Q@G2q$B9rs$i%WDdxDa6b0AcA#g0z8WCAg0HkXc%Op(SH3uM)n+u9
z4)}5KYygOB-UsAk5}ZW-0P-t|c_3;gu|5aLB=TFJ&S9y$f@ct1lS!l}_&Wn+5}5;J
z7Qjv-Ri3jQ;~9sgP9oh{IhMK<0=H2E>$4Ha1`?b^b^v*v1lzzbHthjK3skL6B54Z;
z{@bSD8-7Yc{-PDtR8J5nwI?VM5L0rcq#K6?rc|pqww0BqDSd+)eGLc~Yptv)jY+BF
zyWoW>Nj;6fMsxUJ{3SVfApX$G$^)?ttI---W$Qf(=siBe*6To0)-q$a+Kw$Tyz928
z;T=deq2V!3`a7y6hIb&@mWFpF()eo<Vt8LB>rmz}=nny6cn6cZMODN5+Wz?N5R^Uu
zAcl7+DX$PN27MDi3@`kQJ^*GaRC(VfBfmVUgSH(!&jMsP8O!*F1P40W6rc41hzT&R
zP#++MS1nNIuvEiqPSsq!oD2SbRKV5C?LheElQq2Ns=+f3OEtXh)Ih^q2Z2@8!1`<h
z@+=7&-kU&nlc3@41M(>#+Dp}*U`M4EFCUZ`UP2$C69h^bUWtGho+~BYI4m%{Ka#O#
z7&I}w-%z7p0pWgHD{FYSq}1^Y@Rk_fi<(2jyHavscwha~@LFk=t>Nv(cxJb_8dtZH
z5+LrQhL>fZES!sYPpRR3lI$#ohnXn?5X1W<*_(#f2sGa)Obl0XofPaL(V6%U;cZlA
zZ%Jj~cTINfl{iVY7N0nw;HzB0?<ZTZ;EpJuEeqz6?fc1&EckrT16gpV|6cGL|0wva
zI}j4L1y?+w;9p$9ZzY?t;7KT8JPY2mh*IrY@FLLjS#bUTUhvERD7fPVm<MdZho80&
zRY_N~*ChD(dQv8rhfu(MEO_2^l#<Ei70@rR;Lv|B_`xr&cZ9=XSJ&%(CEn<^1uxiy
z2H>x%KGfc_2cFe}?@uP#;)5vQGk`2j9!Sc2xOJMt=>W>#Sr@yZq`a;;2lPay@qWjH
z$$b7sz#-6k0hvSA;37m)e$c&B3+&zj5*K?UDN)oxp!+h7aj^~7>D&tXMy7F7wIL~S
zvDZL950LPxt9rV*1<PA+W3p@pHomfe{|h`v$afx|=(9IV3yo(UBOey<k8TCuXk^vJ
zj<GgC7VwVG7rtPnokTu=GdFy`>XAp!ip&mF@1Sb8fbRtM4o<D(@y*-d3DovSeqXAc
zTS~3TxNV_lzSmJH!E6&y#xu!^?bysUU>gbf;Q+gU@2iSJ#$hN={=65HvGEk*95x;T
z;{u_nfsn(3RsW`BY`qh@0Rq<rLU#m04hx*tQ_0vjPUv<BECz&^r8d#urH$jNKLTUp
z!poj)AdK^yW^&aZx0(8SFjtfO9tXm}DeA(7O2}frr4n5154O_&G%ogCkI*;YsA_c)
zKSzTy)P4>8zUv2d<1TI-to6-OZx|MD-m0XWYJ3T8739_bRrYzQz>o}b+YCV8S70m#
z#98uL!%FSPf?93`y*kf1$>nw$x01_~?Mft<CkKjT(=$=z66==R269WR7dF|2=&eOI
zcaM6KV0FK2HTcDoEK2s^1AQNcWDP(b)LWAcnEwLkZGglFDqecYO{a|$#73APn&N(n
znP<x)lWqIF<Y`oG>Xo|@0sdrl#$fvFx7OD?WdFxoX)kC^E=l$#`!6W*BUh74lZ{!E
zi%&ra1yHNbX~v9pYZMKmUvAyS$H?CW5O*=gx{F$^Km#g|#i`>M>n_d*-47t^mT$B=
z2ndwLD2z)+9(o>+1n2y@;F$xE)xcIDkCWg!VLy;hNpJ;WTI28+gsfZs3e-8QzHO#l
zDEna>WVmi=2$^hvtXnPzav8v`TWWuy{bC$e)oH+mvZ<^bOPvmZsno#w+y>-U5?r^e
z1G0()+wdHaX8_S=s#fhcWlvjb;d1g`J10OQ{eUg^M2S)>ml6qyy0~)E%suSSE0VD<
zSY^7H_fU_$fN(3Vi?~d2+FgT2KT4?y$+FLGhZMu;havG5K%90rt&?ZoA|IUgDDsVl
z_F8Swr2ui-j?Wjqz`GVAKOYe8t$I?N_LM;NeyVm(yFJ+3I<=0+H$Q_XP}>Ljy{UFu
zDYe#VuMV2#Fda^u*(9UCu=;e`!yrEdV4ZeHRfOo8Vs2Qx*~wVW4(-vg5V$-Lx;zka
zSP*-kl#C5>Lf1lIMj&)!Amp&XX<wa;t#CrOLSP{vJYV^x=ls!M*v8OlZv}5Dr+uGh
z(rF*CnQ)~D4mjh}sC$JJmEpQdh~v&vf{wfD3!>geX<V<+Hrv|_rxa0|fqL!B_^u<!
zH`4N*;JL$hYbmnatvB{^%+l5uuYAfbe`5AOtaKlJNnKTkq=btfMwi?RkbrxKWP7^k
zgP^})8l8NH<T>=zk+ulXAg$K<wQ-X)nf*NU;Nz(LJ|F(@;!M}1{6Jd~_zD1-PhE-V
zPf}jo=>@tiAl?do_PiId?{B&SUC}!!U$geV)JpQ(&Zi+4L!jR-;7rC3R+;E!>c07<
zXXamxLL)Ds4!^5#x)}iF-UZ3nCa4H~fvg8n<XS-JT@ZVLybXv(Rnt#Mq$c^mM`W6r
zZt9<mH&b{K#m4Z<D<fWPr{+<~jGG`LrwZRd(SCrODmcD0<1pzG{KHr5vnaz;g;+Zj
z4zRD-cU0vF0V)<&DIOM_?h2|7fvO_J3vQEx8aXT|2}coEQ;0_qIS^<>p>Q)55L1t?
zQA*vR-dKPClr+(zixB&>${gJ$aisgE4lSl>;|p<t(N2!+I6FDEN}j>lt^$YJYn`k*
zjf%3b4`W8Pi|`FkTD$u^Fu&EWsrgk&o=VwXsAn@kdFrT|%%X}NpdVlw7u?m7jVRL^
zy!8OJau9;5kqr5#qHcJHTo&8ecJ_P<`40kQ_N-}V&p$!`2$0#crky=ob-;Q6AQv1z
z(JJB~0)Yk(sy}@h{m2WBqrfu~AQv1b0+~R97aV5+xgKCA;Gb26F;7rM?PR3Jt6=2h
zbtjl^2gtPc3Xtt2IN^N_<Nygyh0%@%TR*7djc&6=d&|5Ebv)`A@e24j={5yV9zZ7D
zYk*7z=%lMso~f-^>ZJP}HL#?)5V(mNSckiSEG5B7_W>aHkzl=_2C@YZZKldf+f1nm
z_YvLwf&1vca+jKHOStW1s}gDE1NL2=WULSSj+5=%DF01BxRvsV72C;HQ#^BsQuUH$
z<2xb6$@V))><7qX+eV#(C*RHIWcxO?bF!`83HAn%$=31t!WYbndC1QJggdGpseu)_
zEKps8-oZ__t-*eZQ|owqM7dKY+n&hpPPOAoskQTFQ%%EQE9PT}`R6rF#)h()?3_W6
z=j%XLXjmZRu&{_gs6jGzn-dxXfzg4`)q#-1$~d9iWb8dBGy?+D0O6U+uk)r30q4yl
z;4L+8uGLKbvSKAXy@5yPBWuFPQwB6FKlg`%WxA}PWpKJY%?jFmj_VBC;W*W(htEq=
z92lkr-*o|5Z!gUn>~+EmwICZHdIwfiZ~Jh3<{%+^pAJuW(iQy33IDuhzrLY<>u4fD
zzjY6K<Q9NTn@1C^Ic**R{T<UdZ5~Yw;ItWspQ;7Od;-g@V+r~F*>RvRVA{$k(<&`N
zDQiLB%QX7IV~Ltfdja%TK!k-K&?=$%H2I3j*qYa23w3uP7zv)Q0HI1CLY+|)Kqw3%
z6G#O>^r%V~A~BfsWE~-a6FIZ?)s1=PdX|ut%(xuo%6wNJI%)%CzH@wdgC}r&>?Fuw
zz6()CJ}CqK<^VgH<^`;asT^}$+$rw{rY>ZZmk-AVwQv|U^UuQ^H<Uu0<Ay+B5QV}u
zRlu6%Ol>GXeR?aH*;w5Vk8-!?{Uyr8ADVa|U^4#un*QZQxB(ud^DHP@WPI0J8tUho
zdky;bTCD)nSsc<#)Aa>-yCEUbM)tX#FMmkLKD9zil<WPNsKm+6PM(J?VX}YfYRnr}
zZpP!*`uMGG{&~xWzN1F?Mxqama2h(`GC+AM+?9}nw2wf)$}}3%Zktxz1q%XzOsIPj
zh14?<^e8~BLn9IION7#~5BC=?u(!J2PDu3XRpjpg$mID>LPF->gZ_ePys7?9LN3A9
zJq_1u0WzU((rV+37Aq+as*84G&^V#C2TxmoOsHo7=|zGQ>JT7<0Cqy%ttw#FRPk;i
zGHDMOIWdg~(-=x|%31;BE)tx~wgA~gg45gwK;8t%j`s6Fox|!$huX<?8*9hOHRE)Y
z1(3<L3y@O*c5)4EvP0n+how%g-B>x6dKLuwQ3LBU2FPd<tm$+h*N|Wv<^!1vh*np%
z|7CK$t7LM`QR^(tU21YI;g-qO=}$Aiu^-<{#GYbRIe)B0`Ktlp+FA!bKH+02go#`L
zGZ`JUyd0m~j}p-lZ$ZWN$a)6in*gCnAPxfg43I^(^o2-aJe8k@Xm~dW`2A_=4*<zW
zN)90XNf2FubRzL0hzo&S01zX(CMdQsi`|+CO?VR}(TFC3X97TsXf}`=NYIFu0=W%f
z{3}%aZRlMDLHk(pK^~9X7d4k}rN3fx^{sSPlRFN1EuHJ*l(*7nZ?-nTscE0;oCs|z
zHJ!s!5q*QQbY(rKWt!L-HFB=%$I`=}C_g*g|1L#oGb=3T&guU;)_eX<p*q;lgC1*@
zL?ymRM6=&UzwkR<o6#p50OGwJpKlzd&w_aGZ5&*B@3+9ehkYqiLs+Y6jJ%Zr?|q1j
zRQ@@bJ|m-i3~Zn>dd6XacK0!`!(je_0(R-rMI~?%Ua_c(c!v_PK5PT+^*AK{rj!`=
zD}m53Hg;bkHVusS#`_zZXXk@YwObmVir*^%4=urd7f%lH>G6zTTSZ!7NS;<E4sEWc
zbI9Mb>EVTQ@me|pudcQn_9)DZigltHn6e<@xDOPodoV>=Ju83@%|nxG3^nyDt*PR_
zX$lvsaoDxXZuCH<wS!TEhwS3Tqt)9v=AlHBk~!w#gly2t@|`?yLqcB4D=Y6PJ(`f$
z@XB5}2RR$9pD)L7BM3Pbu^%Pfn2?VvVx@E={H`r*!6SCGs@aDFlhpWkbwau;kznDq
zyTK~}WI|e&kPq+;2Hg)(D>4_a<|QJO!ApQcD)WOTD{KXpAfLaM*>Y+t&s^kV$(4vM
z-iw2IZ#EKUA;GH=&&VPY9lOESq6gwM9Egl%c-Axg7=MESf3mB`^M~(4$Xptk^du}w
zYwnr5s0-SC)FN~@vK~XRj{-uAK)eRzRY0{_AfjO{>3jL2qec&)w<60xu%BfBABfP%
zJGOAN>|_<H+|e^RD1=p%utSEw*nL?$+)J6nFDz4nHgSQK@btBDeM5>)h4v<~{qTC_
z7n3NMhc;gisS$A?$19k6HLxI<W(O?sm>sD;!GP8K0E5Fo|Fnc$!90Y<egu%E?X-kk
z!OZUtw+)b`?X-kk!R!gTGoaS6Y6!>Kr7axj^ja5IB3)$(O7L;lxfVaUJ0p=p8Xw}6
zmGI1j1coL;d@KN8^SsuM`eIQ04OUrRT$_+@3q1&WJs>jeHqTtG_4m!@1bXuNM7hh}
z!{E$Emi1K~b+-4+OJuk;k<sye6ii?B5|nHQh$D1-zHt~$g@0Vez6zz{2tNk@hX5P4
zxgc0d3|FkYh(HKV@jnz|LEl2)kO(nsGd8G^!&F9=v`tt$E@}UOz;6@^pQ8fSh0W9!
zb4fc2%(Nce`dsZ+2mZUt#P5HuD9toenP4#-9@;2Ig>GqK2jl;sg0!?(t)Na{ElbTd
zCj7T@a-AEFXcdLXOd<SsO3<t-0Rm&!54_+il3Uq|wPu%tadxvy-mx33RhBGy_k5<t
z*)7q9OWx`|FwB6OV=o?Qx+ls%41tNDM*_;vz7!klL>+pa-JqXm8owOY!+M=+J#l3l
zQ2yS2Oe-Sag`kHpjj^Vli3Tk1KG3%SYQ0h!QSn4%FVfI+Q{`6z&Pd3w1myI>WdMN0
zpZeJ4au3j5n0Du>m?#rb{!05O&?5n2&;6{8PX#?5Ag4E5w8>}^&GpPgWW+}>2(A;?
zgJ(5BR*>%k*+YVB%U^-~OoFS<YQ6DlBS6-=uLbHHmaWFdK+=OBLWXPI?%?kLkhSh&
zAd3KYt^1W~@QlM!*SgJEIhMKx0{2h@>+>v-tt7bC-3{ao5^Td~Kt2IP|5mlMGnj;1
zBBj3GoOIS~qJuVCLnzH%YOPzsElUEYKg|@f9|tF5OIcN}9gd;=qkwSeQL9y+D+wfZ
z&=mac9Hq`qgsXoHDF%|to&gDf1c;VveLQn6`4C8wAW|Ipx&P$x&1mohL8LawZv_b7
zt2(4~bT+@wGgZq+Brm}1czL4};ohtZ-*fH-`5pl4;hqmFJ%g2*oQQ@$0V5sHP%xbf
zi13H=9G`D)Cm+1p3M%CCZYp@DP@#P9b$?LyKE-s)DPHXz3Q_q@5ST+DS?V1QYT+<j
zag^kidP~842L((Q-rjvnCDN5~KqA%*6}QW__cT*_NBX8t(B}>d3K*A&T*4-^Z`PxL
zwJapU?>i&{p|x!D<%!r{GL}Q}Pk?C?K*9`;FD;O8%K5JN%aox{ehK_9P<gmn>gdT0
zr{^^V9j#bcb$I6{VzE!5g4VYe;%`%he1GE2pneX6f094%ibR>26k=V!g1`ZQ)YWmO
z8HcHeVO_^lhIKs#{-Z1?{O$>LjjHd)3P!Pts>8b=QD%p$YqSrf3FVZ_&Ojq{Y#0~$
z9K3Yt_S5E!i)_{0x6grlhO1<*tb}Eu?Y2JTADFgq$y9tD>KyKI{Bl~$=(+g*xyp@4
z`fN>aX|RjXbSVu#FGK0RvW)Xxr_)7TlUi)bt8o60s*5Z5C6*~2by$oKOSz7q{C1n=
zCcdU_-`0<3PvQF78FsyW57yhV!ukqAc7^4c?5i+ew6~L(QBQZV>)~ag&oRMph1EWB
zIw!Ggba7Qc`R*0rh7%R|(f;P3ivcpRbx73V#MU2lFMv#J9TQciLF1L6$1trI6m?2u
z79;Hr(0Du0)Z!%8IT6Z26*<+*R=S>62QLFBFgVD5ZXYa$Tj@=Zc?=+1>6d`KK!RK8
z_kp|vF#Z`Te&~QPM<9sNExGW9d(wSD_2Zgil{XM0%wkRWVil4et2Y~c6V<@#L)HU7
z9mKS#SNbNJkn>2dFAi)_vaCL%2|15E8)^LkvigiB<UDc`=rI6kbIi4Q!Sq_|7vKt)
zTa6x`R*Q>*GB%*fuP4>&+l+M5u1;r6&%7HKAIc;;lU@UT%K=!9mbFv$Zcr}*ibo(t
z7Nh>c@21H%rL1j{kF~__;HcFM@wRe_$N+ZQ!a26@$7^##=EEX%9je)SzxI6-$Rz>N
z_nm=sBEh~t6G%URb@sk~%EdE3QAIM5QSl2f(jQ*}rjY;}l~q1OW!=YLpn`vN{7YCY
z9sg|b-$3Q!_=^J8e8o-@5eQ*9`v!$r(CrXdEJ9q)Zc|n-z*NRMe%6leXbl8bQ7BwT
z1*|jKrG3JcYG*LZPVJZXeNiH7)We9uV2%14{)0Wum~Q+Kp9cK#S-nVP+yY{QKC32N
zR(WJaS|ydJn?m@bQdB)wO4Z61_OUnqbmies*S}_~7>dS?zgE*(_5WB|x97h&b&);C
zF0#KvXyJ7g;o|*dn0nwGGyKMGx#P=^gQ9tS7J4g_><?`qO3FY_EI?0;)4rs>@ye>3
zff9Y!r!Xxk%``SBbYlwB6T*ZYb4m73n$0f%$m&q{c-Zw*_)q1r>-f3wm6M9(X7`4B
z?0C&DBg2NMzz4tSV?L><HC^C#SjI+xxVuS3r?Z>d_D9?TAntB*Q6}BpX=fT!7a;C#
za#6!#r2PbXFVpDmrWBn_-ShF>jRItjt%<c%k?bz}pM`T{KxY1ErpaZ_w?S`W+9XWY
zR~N~7%q3?d6bX<}_%%fm3Qt?OZOin`i<@CrTvWXyp1h-A_=!yIhvB8zA_-ZfEj;|J
zJ%OH4Bmwi9197(jkU0}fGmGRx#3;}s0TM*Nwn&2L(?CyT8iVN97D*8O3DBzmnVb}^
zD~fPZ;Fo0^0Wue$<m-wunbrezN2bw{U2j{u6!bzs`wn^VMny~Rx82`;XlLB6E{azx
zK%>8c$SFBEjxH(_M<>1r_UEbQ^5sF=x1c`<nD}5w)cFRv2hfn!MN#yuDaJgV1BlG<
z5i?n3i}1`0uzKr?%71(a5B`J5x)?ko0HGBi76ZA7#3B$ofoub0Q6_y0Qqs;t1(DM5
zB@zqwZJD0_Hn2fRW-KRtABabRJOCK*J&0ASZMm{S+_1`3!eOYU{CQUuhUXqcv0Nd(
z31NO|#IB~QY3E?$q?qr7rWR&APa(RmeGvGRLjFoEWhUzR0kZiB!!-RjH2r*}hrX8d
z^o8rU*q@~20;sPv$oQVtnU7MjWz=BKz-DQ-x<N1pio*?+|5+@z{2ofQMkyD&QZ}TP
zf@?z{jXx))n0reV6Kx(8W0@H?Vh!z&dAL5UI}+tRq+05ryq&H*w#xWP?Ju_D4=n&O
za=4Ad!HS8$^Fi(K1^#O({CThrbe!Av{ad^Jy~@v`yI6kPp~kQAfE{TTJ++joYX72&
z4Pyo7JZPn6UxdRzD+P~g{ChN=+IE!Ew&!28ndk$`&x)ZDS}8mU+|{^Rr<*l=5*{up
z6T^dJH#Hw>i)7}D?$EBi!>Yju;7NNDLZ2OmU#U6>lTA_d)8A0>g@*@cv`_a;<{D?<
z4!h9V>YgIM_*)p>xnTPlc6t~PngAm0d?17iK~w^gNun2s20-cp(r1F`2&6SYVxd*m
z*m7`nf^Eny3{|CW#zMz{XEZ=!p|gS9K!UN*yMWvQh;~+K7Za7mx*zM15)&nkm}qA=
z`<SpRvdX2f_;XZ4PfWNbaum<`TunjaSflrfGEPG$g<7Y1<|&l9k(DR}@e7b|Nz?;T
z7hPBl5IPA&FCbk=L_k~(<O)C*wWW7O%EO@60vZkgVLi`qU|%5VBS88X5ETYvX$VNa
z8bn(l4FLmg1o7&6+hLL4K)AYwO$GR8uXAB^`*$ceneLf&5Lg8WH30EE5PsMuR29TW
zK;9z}191$<Pk_h>gtj-Yaf4Bh>KYejEQY!ojC#AQkZHrL28e$XiT-t;75N|I-_f77
zhz-yw5AfN+@`aBspC2wN&Jh!hEJPd4T3do=`m*Hig&F_(9+lsKtSUp$uYk}h5D6gp
zOdwmsXOMzP@+o}z5+ykuX=W64v?vUXh7M_%%L<#B%wk}lNHpjFuVG@$rvz2KRg3wI
zRi!a^Ma@oQRT<bH3S=<A2KM`^lp1mR!UfjHa<d6n?qd7EOU3r1gH?{Peen${$0-5>
z%3piBJgCrptWdwgP{$uo2kyYGK>1@?A^zIabwFm4;4a`cAPWH|@)|nP*_&s!QpL!^
zQ2LKx{03Q%g6SbjeFEY&ATI;NkerZjc2TIPFyj-HEB)=V(#==Qq9GB9R##8=zZz1S
zj!$4n4N8t&#E|58!uYRh7u3hfc?4>Xp3);%dGyf1)fTSYg3qF49Jl{R>o!Q_<-oWq
zVK&JM(mM2PP^U0@yha_GXz;=C2lZ*>E`Pe!9_IKh#y0;&&7-e>#OCQFw4`KKl*v$z
zXZ@|(BI<hWAG-Ex9(Da$O4q=D(-q#WvliXI|G5%W+yK4|UEnGiJ(4oLAzdrDPnE(5
zB;Zs*n*ztASQ*+F{=8j9W#-U7GT`(D#{Y9b_$1|$*+(=K>fXyU4huBwEh@9qX*dGu
zpQ)jV^4s}qhI$QNn?WrxzL>w-7GcTz6K0u>+i|X2RQ*THU+F{9UO=w>j@1uE4dpvl
z_Gt*;YduMt`6?fJu--lc;_@_{1eq*=JPi$i)F;8Gp(&7JfQ^~gRTWq}QpK#I$Q?g}
zk@4nkVCn*pNc5FJ#*tu*`W7HJlb8qMQ6TpLBxYV5sB>6NWB(X4-^bc9X8sZQ-v&s`
zyy`Hl-T^jd-di<z#$h$A0>e+}Ud+m|)Eo#j07!k>0ck^mG4nHk^diAF3<h#OAbNqS
zrM;DyMXAe|B~kF`Z7G&s!u{W3<`=1cL<KP|dM^~k-e6T}L=#c|1VDJS@`wpU+HMG$
z%DV3LO(CUjEAlV<1yaM1H4hRu073&m^capey#b+aAT9th43I^c>X#wqa_Y)fU2w}t
z_dhsE)Z75Zsg$Ie-+&w;K{Z(;u<Zk6kv*Mi5ScMK0RCm{?SR)RR(nDq-mF*^p;6V1
zMP;_5s_6&8b{S;O1w_AAE_L7;{*%A>B7lieoVdLlx6W$CR|e=X4-`eOI)XYeI#LeH
z=5&A!!zdrZFp6p65{9Wm8HQns!Jh!w7*C6UH5*S8LoZ#O@{V9?PezHkuT%%*8HWYh
zUCg}?n0r&ewB+iv019Up#g;>#U6N*NS#~^48rIW6>AhI`vqf1Qj-r~ikTn8|1_449
zLEH%BIzR@64(Q6(3$UP<w^Rx@b_&*mf2~vSB#_O3=us8^@nV#Rw`SWQ?Obh|O|veL
z8M4M+9h5ebRs6FkV;D-123dyTLB~ua!*fMt?qC&Y$uFbC7Xjf5l}B3MlC$b8@cvfh
zclZ^$IF(l86e?5aEOp3;2T~uV&T3$isnca4e9A0NokXHp>MQ@(sq=X);$NrE;AG!6
z?-QMtLuMz-yt}B(L{vwb_dc5TE}OSsd8B#%FZ$Td$CGmxc<HYtD4*eXbc=BRcb%1a
zIp!71gy^_k_vqXtyI6!mjQ^mT$%Z!Qqhq2`-fm2vXfPpzFPKCzH;3(vjU}XANEyGG
zdMBPCG_>NjLUOlqsOB=}-zzoO?Wh^_uV}(uQZ`inIZALwon(a~cG|ClEtF=`cfP9C
zwVTyy8o$EAqIM93^Z(L?i?k+Dm}8e71Er4V$ORr}gbXl#u64Wy9Us?$<n1B9nG&p1
z8BB%f_mVn|)lAl@tIgD@erQRZN&<si<8aJu@q=}IDSX5KE$rG+TKG8?X0`6I!fx^5
zJL96_*GegF8EoqrE-+!YXs`z%<CA(2!YN-4LfTg}RR#^f`Noiwaf!K5LV+{xw2t#C
zJ@vyUi!sI$@jq7BhM~a2u->l$5(@mSP~x~Pu@S5WD9^hkzZc4DA+LgdlxbcTURShf
zr;WmP10bQmKMV7y`+d+`0hyD>^V20&yC?7sC+wRC0y6Kf&9ns5UIhIJK)!4EpF;g;
z#Dc-K?g7v7!pvi63Bu2V<sENRB=2|^(0Tz9xbti<ZxZOf0C}I=E0XuQv*FpQ0_0T`
zuc%sA_~W*qlT73F@Q@7{&H_CFAW=o%Mip^{GDL!aX*LM>9`fI$+$mV>q}d=~2;+E!
zX+L8DmtIui478^k(mDb%uf_}<E~?N4Y2!d&3Ml4JbwzAI5~mY`<!6h=7Ij-;2S;uq
zoOPEau&6^pUPe*m=RZ+Vu1FR_#XNwlRh|Q~g#=esG^meAaDC%pVfZ@;Syf#WsB;*)
zRsOiDYEIQ$RW*T3F2KIh0%R({uBv9K1~_WPsyYo=Rqdb#mO38-H&FxYvku4_5?ob1
z31l+~w&4{ZF9D*<RT=Fak0(6LkbnE~$|rgx0STksq!O~RLDZ|%(yD}AW-M1on(4&O
zY*7?z_7^I`328qn@hKpDuU3Q}JDjd%*m+q#%osHPY^o?*RJP*ZP{F$iAxQiM74nkH
zy(;OM$>hV`geO_lXcScse02bFhr#jr!WZ06C`Nt)5MGyB11s`Ypn6U|RJ)g4P6c~M
zfT(pmzF7jEK<$~x?*|CKS4yp&&-UDHP0cgwA>;KdDsvi}#@@LQG9xIrS9zpEWcN~0
zHQ}DEVi{@=-s#x?I1SfAdKxuUPAyq94AvCSI4sR+7+;jJ2^#F0LYU_T#W}2^V{Ttm
z_LwW~E)=zt#VtCaxR(MA4vRPq6^ml||IsGj59##)drRV=3RP0pSW)aeaN5<|cd2Fg
z4=%Ia$T@Wic!Eh@=F~%)`vt;{Yf9zn)z=w=F$K~a7=Pq)tBG&(Y`456pDwsrGx-+m
zVO1n|Xx*dJS8g*x)q=q$e2;R=Io#h)FO1c1sw2utK6yN)x`+V`(u4hq#(z}V9z(qc
zq_9ChYdp{^#_!0a^n>3-3HqX`R=}4pTRQi~=XRCNa8<_RJ6UHp6Yj4Hq{_}RNca;{
zRPWWgOhdY}2x>+{q~|5<nc@Fq()8WXleJ-K){;;5x<R)y>znZ0^;!(W=THjeb)*Fk
zSz9<_2MNb%BM~Ak&&#u~7v`Zp=6O_h3!r?}JDAp-r`bP(KFGA&uVPx4V(`@(jkya@
z>+*VdW2CS=_3)Qz@c!=ZLOGf`1G%RHGOJ9+sY#)nd2a#zC?MV%JEKk^&r}|7J}Iog
zg1<)cr_4GVS&fmEc@*{DUl?NzPP!a7(*T**&BRM1g;CCeg`jf)8N7qL<6)%W&kL{y
zHUXbsDok7I!P7Bp*B$&_0TQ+w4rC~aS;!d&WDFpB@L?<HV$gCXie;M%-AS+rk-L#4
zw{m-^2%nxOP!yjYdo?`T3a>V4E?+p_9poDSFHPq%{|`-<>&6l><;%)^sCdyhn*E5a
zlTI6Y=5zRn+g`dA^EF_L_EKinrc_N##*^6QzWR{WRf5&E3C4S~F#IMuKJ*UQW?T;6
z2ME0a;!Ys91Jd__*Z|~V65oM%4#+bAf0wFdD>p%j^&lpCNYi=DECJ&3LBCCzK-+uR
zmR^EsZOl7`mHp!?{Vc363*69};a7DU{7EXzy-5q3ZMOm$epbM=NSUbPET?13ySDF4
z_<HRwd0+}?iL6$WI1qe!`Fae_+CsT%UMa0TnlP@g99DD2<IzF|9uXs@HKi&vFA!pY
z5Ij=#t|*ijsmj)-;Do{|N%*0%i`Rp=var(Lp19>9Kf5`xQ0{t^yWp}>_~dM1<f3jk
zfgW?^1anWJsWcVqS+A{qdOgO^EAV&+Db1xE9`S-Wo#(j~ctOQ$S7_e`<1G>pjrp)v
z<Q-QKP59i{Yx^AvQ?BiIEVS45Z^atf>tr8adu_jyE!ke%?^GziRw;+U!%;VWpx<kv
zb>lYJ)~!iltCG4kDeS?zm8FaEnia|wSW~Ghy4Ncxti<~GJo&Ja1*wt+R?<{TE(3D|
zW#(a)Wo}T|qNJDxg<VU!prIYG3ep7)3v<{7rqjB6p{7b<Id2|RROF8+gG$i5R47;{
zS#8K@d$DS2FIFwgy#doZe<r26?HsI!PR2=ofjCvO5<2j=%KitZIx4CglcNQ#xG{O}
za%0{A*mpb&y3m5kjKQi4VBhg97$Wa@f<74_SC5Vr$ejYYYQ&K}Rv_<kV(ywQSC5Vr
z=+&b+)8*>YZv~+<;qH061J{mzFAyg@0NVNj<f75<1>%IS1br#M9w}($vBu3uCqT*K
zFkAqS6xM-f4M2jZPXgIYf<e?*fV>2-L8qTog=cnAMMh!9un1HzqO}i9?*k;F<@kK#
zF!mb%c(Ldw7R!iMXe?3)a<ORWJ+@b|&{8am68K|ut2PR%#)9mL{E~p#VU`ulh-&p`
zt#~4z3GEeFLU@1**igqTZ3u7W+y-XxSEVi#@g@;h54`lwyIIEHs51QI#B(B}zCXi{
z21j9iy>>X|PvJaNnzL#OXM5bFSI#5Y4wr)|(U+Fo;^B#!31?}|Wu;Lwm1vYg`16(E
z%rVfa(m+AUeWz8*BOb6Gw`?C-!>-GR1Ao{b$)C5Zd`u1dqXOA+H$pGg28dyQRB$>C
zyEo|WOylnK<AQ25?8`xq0*Il0S`gY%WDPa*n<sH-T_Bfi79)QVdBPasea`sj(3n5B
z#=Hi(_W;Cj`)lPw=0`dcDD9P@hWj*lwgAL%Uk9?21P%9NARhvZf1QeRUb+H;cD|Ak
zpYQf-{&r=eLEK%MX?f~BGaAB2%6obyj@Fb{md7$&Uu&)m*Dp%Y>in`xZ70hD5Z#N4
z=m@>v#O^6<M9hS<mD7&X^ji^}&~eg?K~@tS(5|vNPFt-5I)XNT2as{vY8_DRaoBeO
zWSq8I2h<L9bAXJ~v;P>U=j=FLg8Y%>;W%w8HBQglahikN>j8G0v~nSnPVWGvN6|`g
zFe|}xH$cYeQ6P_y;5a=G<T-$KFuq295D%h?_X{$1mVpXB_j|$gCcuWwl@H%%4kW~I
z#liHW3?0n3;6Fs=awoc*vU<j0R>b;@*%YGB_yYpJiO@I{dq$w&VHH%0UTLeVU70J;
z0)Pp(RRQa0rfHwh_<jU4jgKo#>?IxvjPJG-rjsz9DNI`friYY??x$U8rq@d>)awBI
zR8HFRCCaJy{Z6pupOlxje53L*eu&q8aCI<zT(fD+{y1$J?RT5yRr`$wK|fyIHsNcO
z)7tL`qm5Z-?RV_W)^PW@K3vwmyxQ-&0{OIKV{~F2fY|T4f{yeveL?qP8vV?=g7fHS
z#(};VAohD-LFnBC3<__G{eijvervu<k$ne1jPo8X8Q<B>#ehR%Q8_iv_25|xu(KbK
z%_L;@1M(8U_|K>~$MFdWrVLT%V2JjlFnwH_saL@CwK8!W!)SbprgKup5kF8Ho@+a6
zK|S2VQBD~fzJwKSrn$7Ua0ex9hx6lv*V+#6Gu!G|9XJe*w1iTxEs)F8pP_y40i?sP
zEs)F88Hj?W1Ej;REs)F8xuEL-q{FW-2wf_UedTny#C$_R#W=eOMk99&XW0=L0RA&5
zGa<^)ck3!=2_5|$>p&(TcPv20=sK-z$Ta2{p^)Ykbd2VL=O%!R(Q+Vnk>D6T1mppL
zbs*=?(T19~RI$1sqfAAppaXdxOwRzsfjB;VOgE5#4*YS2ax06a19=bpd#PL;$UVx6
zpELQV5EdP;P>2rXD+nAAAv%zC0jtAO9mwAlV(pGW;1>#oZ&Ly5KpxdTq2VRaloWG0
zs>cs_9XN$)KxwAW-OHl>0cE1$O)t&#r!sNpi+yZmtpOd#M&(oo5-u@Of8i2)XPI}5
zyQ;{Gjqn3cDx!X5CH%-)nk|0hRVC<0qOe9ZN&U#mWXU{8Kk|O6*w-myr<4+VMa4|`
zi1NsDkp0jKm|lS#DQuf>?P5p<#~7o$%&V!-L9K$0T)Cez0V{Ptc}{k<3*^1$j@VhH
z1LUZnPC*f6E}w{ZvjB1gP_MxKw9!??S6ndO)Gw(0C_EO{jaSJLK*It#0yuLL7E1sL
z<2Ndhd%yERU%|9iFx18ca^#RX8K($HlcRzh`-EJAw6g$mRFG33_kLdo{R-3giP)Ti
zleoD`n}Qe$)3{O0Er@WFv<YdC0OS}Tw?OU!zYY3LroB*&d^N~-2=wPn`?(A*5EsbN
zKn+BIvH)^45HFCUfv%w20V?xoAiqHFD&GuxDnO10t}bZFmum4R#{>7?;-1FS^U&vo
z1(E1Uuy=;m_dw)zfCSzD1LQXn49C}=iq#500`(n$v;@dkt~Lbf&Vf1}33RK(2Ngn>
zfoC{{-T|>0$m0NeB(O`RuxU}Os?-n~a3t_9HSkE_MF{Mm2G-#nAa9Z2k-(Qgz97MR
z9|iIYAo`^$qZPw~aY+`h2+71=>axWs=lJoPPTDmmN|ZVkD3Op;0as4CxtM)8v>?`w
zeaN_XxvOEafbch37jYT#l49Kjw&y)Fg;L3avehd?iU$GpAyE?`2LYAuaC~=?4+jCy
zQ#%g=P6tmHfJE#apKr+LcL-Gyo`J|e3lOfMdZY$cWS}O6%>7jD4gxL)`-M)e<4H45
zrK-IO`ID)3P${)0auXiF&lb8W@1)-D1(7$=v`CLuC0V{Xz^rfcGgcr=j^LeCy7`@1
zML2>d5^a8~)%JfM!Ml+SJ_X=sq8IsB{yZ$qQ2>3i?ApAhCOS$LGSg<jf^SE?d4;}L
zLF}q(*vPI2oyCOoO~B@%sW$=|ZU^Bn+&87+Zb7z9P5&6k7G$jgq#pzkhhHoQNIwE%
zGm!Npyjq?)4&)f1VObFPGQyOG)dhKfN_rz8?GZxB1q^5cV#H$Gf;+vl(QTbk5pPv~
zZec5AodsfORnMfi25}z*)&Tq&+T?MFziqB!n`{H03|=yrZ~PU?6UTaGm+~-uho(P(
zgV;Z8I;)3gC2ip=Qy9eeT4J-!m81W*^76h|7HXkA=(o`dpNsPIG@bPtsOfyB`q^|h
zURYvx)qRx-UvY<Ru$@#}Ybi%B!QCU(rW0KK3+)tS!i!Y3Y~=1sA^b;`co5=Gq*P|~
z?Y59&oDhF5>1Rr8*R~ID%FGb6LACEt&aCaQTo?qJnc>%+XT{MmGy)U;Ou1y%Jg5W<
z&9@@FY7~AkrDgv6O7K|YOv{ARiz&F&82v%BPV_$einYlw)G(}S3M`;UL9D0-47D2Q
zEGDEk1hxYOJ_l%648mUs`)m*7C!~A;Nbe3};B>qb4@f^7#CjlD9hinAg@50a0poyp
z+7f@7J}MlBven&Siw_Nk!QY`ww7llZWFz&oKMkIX{q0vy+F$QLo$-AgF52G&n~sRi
zRbqeZ)&7j1cAM>eTG-s69OF0CboSfhHa*3{jI%I5p?n;l*Hh%nrHtEwl=N*W>3@}^
zhb!thQBOE+Nr~A;t17|4g~8~+V$gVL>wb(;Q9*1L2aR(>xS7_679Vb>g$eOSD)D<N
zaeIm_*;ChEss&dhP=GhRAY+{?!Co+Jt0E!eu&^4r*Q_A+F_>klItiwqMf3OTsr%-!
z;qS;sOG=Indut|-4fC=kGkxI;uwM+8>verQ7)MZ7neYWFAP?!OT3I1n&4qY5r8E4!
zO0XX%*+P8zs?Lv^!J%H^N)M*>lJD!DqJ2ibT_^C(34%F%!4<!7?K+0+zgTv6c2RPg
zH(UErR<2b#U^iQ-W-Ijg5BU;#_NL&$smLWJQo1%h3lEI94B3bCC8Ab#*lZ9#<wwX?
z4)N}v^P^|sskX-szvN4V*oO9h$(JQ$*|C)%aU{R;Td=V1jKEYau<s~yj+Lu9zu;-+
zFApBdFULh<rMf89yGQHO9kYY2&pr9wq&{?<m_=-TR=ojYb$+eCuo||NTT@cGwOTp(
z;qrA_IXNI%moHag7=K@vFU#7pR}X`x_4yeK*_;vh(Q5C$d|7yw<02G9Rx!*<TCgua
zw=6##<2{z2VV{+H3!7t%ZIzvSU2Y#KYyrNni!A{AVN!mQ-Ov~YdNQE=qbr%#VICBB
z0^N>j?BU7zmEq^iDA4BuYL1vN8EFlNLUs-46@W~({Hpxg)crE(=K%=Gk2h2E>#&;+
zg8qVOZ2Z->?Pez44Mke~AbR`hIv!pOE{BW9`O%-D1Xp{m$!scgH8!den9Bh&8JW8|
zzldo~K^Ft$U4|WQ8Zm!BowqpO-%uM*ArD1Q1y4tS9EzR?<Qx(_6deQPQb6>mO1nc*
zIibecq<rRBKUM@B$D&`jb2k&&3k{y`u<*T<JQRCdesn2X5~{i-WNw1uSuCjxh|NGY
zk~j{bJwSGm_yxr0Kt3UH5X7HAjsddjLtFaE5Ug`8qJn_*A`qtlX-1+oi2gv%AaOc~
z(LgRH(I3QZKo$Zn4`EKIrZo(i7SNeduWG0cQXfM01Ax#;Aa($G9uTdkyxewk4T4Dw
zf6-^PcX$lRWLfoP_z%0Cxb2Fol?(U9I07^CBdalx(iI;-`Cfo@Mf!Ef1xQ!a0aA+u
zyCMN3p9H(2JCM@=S=1(7F&5M%0O^VaK<1KQSKJR|EeUqT3qZD!U{`zx<ZFO*#VuMx
zL^z<+bw%3sD3QRfr~#xJAi6|(T~|z$uJA9^WX`r*(LCE7#=l8>j<fA&ntn|b{yTJy
zyxi5&gr89s>+9$u<l_h&qb8VT%yCnx2#Z1Q3iUNCqT(>pjgNac;~Y-3IZ=}x#`e5N
zewYr*1;O5t3POGvBWE?oPq+dcwfNvRM|<)CHOCH{fV4uUjRifJ?fg+=Xe><{gXo5Q
z{Lf^+KAOJ}DPQIsdLxU)JQkAwP{_v(HIPu4FF#-R5|nKKlxHZiC|?eSo85q@CO`rS
ziTr%Z+zEO<pjJZ!9E$T@K+S$_ph<pYTThg-aN9HqjV;t-ale`-1@^x6VNyK2+XEfD
z01_Je9LQ%R7#jNt$d3TK8Gl4o;NA~aG|P|7I~gjtsZF1S1b}RJn*b>w!HsZ#AZL)^
z7I{37O98SOe<o0OGt_Z2{w{08&G-uN+(sd8#=i#g6~J!BKUFEuI4pHDK7<uwNyi{?
zlp0uvFg$M>Kx$V7$Vntv??ylx0HQ}#EvHzForaT2ZNzJoY{c7Y2(~nLsZDqZx7_P;
z`qPZV%GlvIUi19eZdRL%u6C$P8$kFEt&eOsBE0-w_9kmL#@xl;Z<!yyq5-6MW4=Em
zdI99d{1hPL0dix$t5(!A4y)pd#f|xMoPs6bzuhTV4`eMMdX5Ua8}przwo_|S>c%`W
zrtE2fCtfo{0j7nS_W9{@_r`Ig2OLdZecI*w^<mU9%{+nPH?cl^Wo|c+H%M@r*$?DX
zK(wcp<)#_CqL0qtW{|T?h$tqR{2<<VPKN)ii)GrIKyRrIyuYDXBUhV_`Tl*bHh-eL
z-&q0HrqUeDoB*j!BOvtw(ck{Z+O#aG4KFtvf2ImD?70gC26F;7vuFy|sQ5*@5jqgo
z-SK0m*%Mo0rC}Y4QBxV>>b{K1Btn03zI^(nBdXXIAfJ9|kT0KpIUn>urt$ho!+iP7
z%M{S#0TQ8aY#mByVF&Ra^|cgy7mDVG+=VDb{Kp*-xeXxxV?B_yB<Me$0<sxk{4Ofa
zsyzWfJF&JM00)Wx`f?k#u!9K?Q7#*Ot<ePYU)=s`-*jvIA4Y5=y=BLmXd7RQ%eNhl
zpqM=XY0pb>`HsVi8*zRE5U2Ta{A9{}2Kr@ye0Sm1xPF2d(N=zTVP{-EyU_0@L|Xy!
zy@uD~a_TS}^u<i$5z^~%iNKb*8B-0@czfiHxGXB$A+04qqNuy#5=FfL^dP43iwe8q
z5=Ffo^jv^^p<#Di*4JNw{*Y;0+U<_ZGP}WC%%TAK%0lgYZ<g%{xmc5(A3vorR+0r+
z@bRk8FLAfvn;Q8T&*R@SEHh#<VDtWpXB^1KnALCTnJb|3GC-&@h-E--ClLj)4aid@
z{)C1DKt3h$1Blo>Ab>1tOD_U%6HuIa8@2(#{Zx84AVZLHHX!{h5VL{IBryWSMj)#J
z1IB`=c7v^5<TDVis$p|Et2!bcU7CxkRyzeh+693_fKV9_k@+wtK<GaZst2SNiJw5U
z1=0c#8Pm!$xihV9W3HpR)8ZK;pibg=E-Pg2W>y`<@rXqCU2jGH?>HVOg&>9(y-<q?
zUZvSxat0#Hx_)>GnZbdS_bE(dGHN<OCGit#tidJmj9qzX>mA5C9}O7D7TpA5B9JQp
zS!8Rt8Yx`L%UjJ(MVfhqD$a_BPK63-pUVoHub9QRnu$awYj^*T?US9rBSB4n(_%KV
zrrZh4N5$r{rgVyHfvg7Dx0+v6Dd(DHjr*@VfRfLZM)#<Yz7b~^#&*>#{^!%6Dw#QG
z*7$fRGmffo{qiJA-ps1-edbqzyi9`r=OZBR0Ze2gde0f0ZyHm@ta#`>s(2Gwzk=y!
zO1%K0;w{*60>qM>P`crFOuXLljE5j3J?*k0rZ=-_NkpQ1^%?yidpg=zM<%eOl=qp{
zhU8Tkd>i;$Yoqlq!4?jWGQDUl54$PE`&J?z_3s~%UZ<ALa79BaCE>1Zn$A_s0GqDs
zo`H!p@w3#(%LejGasKfXJ)=|fxPG9X<)!p2`8Pe`#o9ky+xTmgVCA-#D2+a;>7|!g
z`&1!^ltHT&dL)UD5ON6qh?l7WXDCal9E@NiK)8+a$WqEbq&~3`oJkk(a>C^~<C$up
zCGCy=q^$1MV@}xdl_+O6<mA=ktbBR(_!Jb=0-&!RXXU59dc0bvF1!?o)rE&CXD6#j
z!|e*0(*R<)1A&}Hf`)q$kWm1;@P1ZRz?iAx&3GiM2r9UMy&6oDDaCW9^*~mW;G%as
zkY`D7IeY-f#{hXrW>28bVYOwnF&bEepH~RgT!f#r0FMDc7U6w>^aj{P_z$YVGY(5#
zgdd;=mO2aqgQ$V^xeCZ+60GUXKyD<#Hrxqh2_TxT9bS6OOD)2`4OVc`mMP|oQB>0{
zwFoca7He_()660E<G1nH0QMsn-jAdF4S;Y=>p*J>x78xVbRtJPc;;-)hA*Z^{2*Rt
zCsbsSNRM>%%!kmi3*Zk?M*6dLU_lKt{I65q@<l)(dh|N`Jgd_?fdS*srT?|63yVz_
z`ei(8bOQC}(!bk6+?)r<(tiw)ivhCqpP~;C!tsiwF8$AR3g&}<u2XO~kY#}AO)BD+
z{%w$UiFQV*r9U#{RpkNdnLIO=4`MVw+AxVK@?yd!D0~1Q*CrgFZyctkC)Xx+vR1q{
z@hSK}23Y0WRXNTAs2ta(ejy{3e-EZ_$tbTXN41Kcaaf?;y{h~dnE#-Fje2i@!nfkF
zuBfbydf%^Q$&k0?w6P5=wetO+$ilgz8s`X^8&1>V!*j`cVQzR8OfomPtdRMcS)3b)
zL}TiV{@1x-wifYkbAxOV?93qMeMQjvNG{6!Dqf~>F}jK7U1kyb9}u2Y%A)B)D+P8^
zl~Q%{GrB^`zLMl`P|M@{w=<C(c+2!_+zYsFe&9k!K90eSjo(kZk#G5~w}NR4zvgm?
zzi}@+n;BQ($4`{46`r<jsvqGY{|im$tnjf-4`VeYAHmPlE}@sGjum~$vp+Pr{n0PO
zcb8jOFV^uKIqX`ab1jG0->L*l>0~tpr5w>bma@21Db-3!sqMSlF+p+CFDb9`21Wa>
zqj{e2pw%c{b-oS&OFC4lq*Cp1C6#VZzS@)B8a`Wut>IoozShLkyTZg5Tx0#q`}RM?
znz&6b-wz?3HSq@Is12j20jR}T)4F)%V1M)rexIP$DP3?f9G6&pEZ8@%7_?`aRfX-R
z{OxIq7jyX4{zu~x>T3mE&1q<Rm64xX@((FNGkO{lZpi4f^@S9o=iq1XqQ5FHO@ih&
z9$Mqg;IE%;uG^d~@u&@L?U^QfhjJ?6nVxj(TjP;;n!)b5cj$+z^ajY@;R+y^kl@}S
z$l=~$DN=6($W!gq`DQTHVeha4>g1_*S?OjXv-ngKiPqKm@PB=(&vE^MtqPuq3_o@6
z5FN_}7uO{EK_rd`>PBC*AZY3wR^YjK#uD_3EMXr*{U2fL=$>{1dCfJ*3HfF@h2W;f
zLP#3qveL~a*B~O%KL4K$dikFXN?F26Q|u>sqOJqE`r_cGL~Sga{177F(%Pe@8#VP=
zvxnoM4lrHWdK^T<zGO?e^*9dXZxXXWWZjC*J|Oy$O1mwHtnfn74lp;34gp1UXnU|{
zD-|7*XqKyiAJoN~Jg$ev%Vlse;7Y+pL(8kAEZ&BAcsuIbkZXciFz>I3{-BKiHsh!K
zFoOwSq$3~?_P}O~aeFat-!0mSeTsK}+@9)jKWX1_IX|BAn$P+1(;3jNFgFU`LGhH=
zd<Mn&yTkgL&!BiQA6omG&yaY^Yd%BcDX;kqv*8K*n$Iv>vONnN7B6|t=lZy*bR_~D
zUO%lH4c6AJUp(bCpMLR_*L=>5M}Dpgmr{w*ey^uWG9q9ld&cdLiO9=KJ>#9(DpTq1
zF<?GbnQ2Rw`P8`l_(ug{J~iI4qzgLRzO%3SbdJlLPG-nSSP?ggGk(uM*p2*o%Xky0
zCg1vL5|@{Lijb8HD9@LFn#ASZpMIcwGL2o_)b{Ws(BqiKcu-T@(RYGg45&5rCV0lU
z{IW@ge_(97l!aFyTiDKh20U8;vhQA^Rl-&SY~CsHPy$sF<KGLOw*g}O-vjxU1dabM
zAb$X&FQ~LLe%XJ^<E6&WX&T1=@>{-bu?f2Z<->UIs=Ry{Z{Xr(i1FC&8^}<3W5owe
z!g5scMxD_>#kqd0X7NgQv_S34$K~|b;}WLU4b5SDt{0YQFPM6N^g;A0&%PpsBPRY`
z5X@OCFl)$rr@!Pi=7CEkJPa9tnxjTffYd2W>jAn8plfB!MMv`_oHh~kWdK|jKAIP!
zp|1k9lqn3b9nF)$*bDkKKrv2+f6a?^PvZnQXJRqO|5#pxg=2F)G13BEyi4omnQ_qO
z{gD^m(;DM)39_QM;fw)LZ7_&XKm1b<R2@L*G!V^zBmvR4RmHFRTP|+zi3<wB_uhaH
z<jFr~L{<f@Jr%ctKMo3aSS3_~f4I~YX^MJ=E&y8(l+umGo&#bCkU=c=dlg=FA=ury
zV|rOHEecY8e%AMO*z<68VhFSaY-~Q5qT?~qHHg-2Wc&)s$~k&cz{>rSt&nV<dZiK<
zC?W1l4(qrUkXr)BeN*rC;RyBG@$d71)zLC!|M!;N23K2teot~V<|91;4Y~{<;p`Xl
znlfz-=;ch~@%@W=-Dwjag5Je6K8`QtRp5(xwQffk79ijKcquQNRxuRxnSk;$hmlX5
z!z$2s0IX|#B~M&qE&g!Pt9jxX5sI6Z$(JB^T4VbG%pU?|F|^Y*rTrcF+$A91z{fqW
zc33G5zj%WAFi%!W!;sM*kiq8d)kfoNSFtL#^~U=!uSy0))7OD*8Tgj~qF*alFpYFQ
zf+FxIs|o)dOF;Q1NIm(W>I$$x`A2!tQB?ji*j|F-7pVL-<qwq4_;=<0K4s+kc^cHv
zVr23EkS&nuw`)2UrP0eYz4ZS6N!1SD#}5~-(Wc=ej%bCqJ1_JHR7kw!Q`GKbfW%9F
z1oAxz#!HR^`5S=abF^er(3>Yw#hZCqecNM`PC`Dzm9+!|3y41d&u&cl3|H!GY%&(C
z51GE&TtC2Ezj|NiWzIqop?ksB6PmjNjI0q>2A%J)3M%Ejl~?9n2ua*v2n5b!l^*<O
z=ew8z+|qfP$M9bxv=jZU;XiqYyl=&cCgV81C6xLZ!}3D^>n9Au7pgwl3`J4~t%p@E
zgIO<S(8kzw4YgEr1LwC$k)2&48=j--^3+#ao5Wx|Z66JfhH2mQeI`$K8K%;`m|eWb
zHJ{^X^EbQv{c+?!r1?jK{6}1V=aZ4YR`Y4RR(`$a*PE7u9g)rMbH5#gpWRq2+tNuV
znFV?BX7?=^jM)I0WESM{@~hbadJ{mVk45&mk1d4>0&shOf?1R&XEvdQXI36%Zq1V$
zR85hY2k@tAnY^sH1+}wJi#)I;mlc;P6E7=%qD*%Fmh(VpHsObr$L?X3;IkG&8>kh}
z8oq06o5p7?-=^!g0QUTd=Kz0j=`z5dC@1d=c2*4&p&_ad2h-0lNe`c-=~8@sC0P8-
zl;T@!I*WgxRPhUf7?>0v?xdVzBiTy^;HFQWT$GrhOXV`QA=tb!m>}nxv-0FOO$Vb}
z&jr-v26R^506Oz2psxfZZdP#$@j(er8!@fQgqIzu1@~;r+B4a%Hr8W`;Gehb_U>9%
z>pc0{(+8n*fh((Z-nlHR>7AJG0dl_BCa;h(J3+4m$T?xVylVVT)xx{*!VEy(wrFqd
z<{;?zn6|%;G41o@)><1ZwekUCU+wd1v5Xa<ZvbTe(H9p~^5i_R!E&@2AZLQp^PZS$
zD<3!5Dc#%|tE@Vwp=0v=vpQiIv3c}|C<kvvwgLl<#9qF(Ru#?V$riVn;UiaDWiq;H
z+J_w7p;peHj-L;V*47O5<hV(S@1BY&e_d$1kb79zp$%YXOtDH4?rw<A?UWaJxeL4{
zgTH;yj-CJs3r_<wnFIsIcLTYT1VhQs0@)0Zn<G^NbpxS}LF<ZC$Ds8$;Mqr^cR)0`
z8;dT04O%x>DbF~pDzf;;*Ep6^154@zferwvLth|gkYLby7?2?(SnqK_#sH$dRBh==
ztyIwZ{*s_|x^{1A?ovVP5^jm=IsNJ8BKBR^yx8BYDx-QgqWsx_a6hdB2MuS8i|{@C
zps|xF)jhB5`=>#QuW#H7i6sDeedA;uNW?(Mhu1e|kZ&}!?*`8s0C|1G@%h5%yVp1N
zA^%fAI7jtJ4XjB2K=pl8?Oxyb3G6>QwT{O(Tfh^j4Xr>s0O5h9)Y@qHdqLA)rQUP$
z!c$L2l^G4shD;_vqT&64^Z-aSypQ&~F%ApXK)47q+$oq2{%f3qTY$_1M2D$xYBc<B
zt;Ij1;c}PyFe-LxUhHnDwNd5guPS+}?6v2e`bffKC}zDfT6A4r#%oT}GI!N(z>$$+
zVcISJyxw^+(-qC9J=~4TE(2Jh5rL4y0#DjMFV@KkJpuu~=N7&wwXgm8+CJX09s*vt
z483LD()e+0&N%p!SvJ##a?;C28>DsM%rXtb*)4_b{!})cwKcF_*x#x=d?0pdIS2(J
zCYC5tXY9|=9%6C7{)-;#eoT0t@`>+St^|Eo&2DxMpzrdXyJU&oZAOa!sumns+V@GG
zQ#IV`47c18NOq&fXs&;H%2U16GU*!WqSEd#e5rCu6{jk}Dn6H5#oJQ!9V)F)J4M~A
zzd41o5~d#xlkL9sr8&dfQcK>GQt~NQOdPxaO^Ut|rS$!?W1J<j8|PR~EGJ~-N-m{O
zR-2N^y-FK|r-!ttgBVKQ;pt+&riT3w6K<6rm~eTyrb%AYH=AQ42Ag~qAP23@>_qw_
z=!1Z^zo0<-o#$qG4dgq|VQ+?2#Q{mgQV5;=jj1;h`@rgU0XSo><?gQ&leer+FD<`%
zUNOtBxe}2IfRvwY%O3)|KR_nvnsy>z3Ho+G+u3M<ty8wvNxq`KUrX`~79z%r=f&Fh
z#PiBezwUzAPJnzx{Tm=(0pwG#zp9WigDHeh!JZ5u3E8?V{KO}-_$gQ-(FOC2{QZwH
z=tQCNpK!8-Dll@F(0m*}vYec}*!!$EPr%adK}i4!HP-=>4XD9;H=R`o(KHW22sKNc
zU2@2*W-{aEM55dN|LSb~mD(@#1jkSvn42H-=u5cR2;ZmKe7eFrl;D#ael3MC+3T@B
z`a4&SNIK}s4_CtE&s!Git%mS-ZX+5(2Q;oJKnDFdK9dZ-DWJyyWDeb|DzLENgcQn)
zZH6s1<{Wy7OrDOx7X}}br_BsMt&*%SDtW$=ADs{4qLe)UP9^xT9f5K_=Juy~JE(&(
z;Z@4R2LRu=9*DPjZ4)a_@~9pzSN_AZc5xqV;{MzQY~n^VWf?%ee7ZlkIh?m?bT4Rt
zH2Z*U_Daxm0n+Sts@B7g$DrBY=f++}&&kr^Tkw1VsCpjyV1x4EfL*b&wjL$(eby>$
z$N}L^%3(VsgW^AHQd)pjQE~6r+*rXGT4Vvl;{Yl0&!9+$mHTIrZNS?KppA)Y=Y>oa
zHs)Y%Y>w0116<tzGL()lP53yJ(%|!ve=Z<gE@jkIb?rcPBdY!>H?|k5#R4XXPREdD
z$Pk#vgz(9wl=&^RRp)QPxi?h62;?5mKu!Pb2?P@`vM&8XP3QfUS|#b>>6+ek5K3FA
z1TCw#Wm3zk7FgC^<&nqgfD+csrqsbc)tcG9iPpaAyWv^(lrytWavRgk#-N8TWiK68
z)+g~8hksW>#ytDpwm1pSl?`BB&Da(woY@a{%dhip%au*~A}E^$kj>WiT)C9F8}y3+
z27-53v-MZwGB}dtCiW`Timx*&rppZ6&B=}R><fG1TB<c<P61e<r<E1Qmx={zsolA;
z`A(=81bP6%+muV%B*nfRXmD7d;l1409;ab2q|c{@_fs|aNu^c|!8;h>bwhl*rgN2+
zj?ST9!0qQVL(#g%zfdz}{B0)fC457QYTtDN$NxOlU>6XF3(}<H>0B9t=;vR<<&*0G
zy4CTjmA=<CYc{9UdU@#Xr*kEspSa16Ux{6`1dB}dPv<6S7vs?2(SVHB==cuG4#%sQ
zdv?8Nax?NE8tMhMx!|7zs7jg6fsDg4Y?;RIjwh7->%hAT5bmbD*2RQfA#9Gxei-Kv
zn{&(2|5empa+=^ZQFe2#P&Vhb;F`l5V47|~_M_JR+3*U?_8!g6l{HDz-_FEWi)`-3
zAouRv95&h>pslnPiXUt1j-!d(ZCBc7sHD(OU7<^J^C^Zxv#XCXW`<RpP=On@z1}i@
zGDJFeMs5)WcB0YG0wi!UBe$D(3ViJve99MT@~O9LZ56s9tqVYc6xZ3bQJ{wcWJ}pp
zi^7lEHb6bD%dHq6fWhFFavpfDBOe|1Wy<H7cgcq><=bb1kJI5M@H_?(x99kL;q#p<
zeF^z50K(%`j~yrxSskeUimKg~@;$Kcb!r`tZ+-<&p!RFze?_(Tl~QXmII5>>njc`=
zoyNO4H#&3xsy_v6zeD~Qz#8hAL1i2k80y^IjJGL7!;7s&p#U+|fhvPrzKXe#4h*#+
zc<WJSkaF1e%UrlflS0N}VK?q`a$~1p<fWV2LA(t>=0eArc7jaMH)nvi7XaPmn!=y1
z>jQmumlkzO=q2c5bc>-L0_&s45lg|nEJW|jEfA|X7Vk{qqSndBY0udo;GYrJU=LRd
zfk2o?{>30J+kQ4qTSw#cZA5Oe_Y@rMpeBO><trB8>tVTBRIw5Cy-fQGVk2|w4Mp1D
zpucC@Gc}o3%wz3#>u|3NAd8k!)`*9KJ{KUyS);lw9yiWAqVP*{V^^bi>9y(LnF5er
zODG@q5{jL$Xt^7_O90_!%3%k}ucTzXL7rIy<@D9O1;jTU@T0YeJ;Imbo<rgyWju<$
zw%H6#@_h(&*>~v5vuu}*)h<Kd$e*{Y(K*^>XXUnLm%WH;JOQYA=>=2F*}0Y3Wo6dm
zYkWwP?m0WR9=oR}(oO@Ee_|IbFt-A`aWd$OnD*6lrqv?f6QCbsS|#k*2Idy<N98{S
zy$c{+d#>%;I`?5i1(2>?q1D9Vgk3v0H}>8@XOQ4&39#!y<->YVu@ky>5O~i9gf}UN
zcI^@+*|j0`L2B3XB@*-<eh;{xmo$k(%32v~=~A7mzZ-lG`uL>fIH^&ytol#0Jm*~P
z<L<c$_VM+o&qRRqagW?g_VG^8PXVNld)U4!b3dkHfb?CD+&KHL1?a{A>APOG?<Rx3
z0$|NjYwIECkNWn_ja5SNVwQJ+XCc6vrSicn6+5BtHiLHqAlytjoLMT#zH0;J|LnUG
zvsA`bC-fY;>=@>~wrZBzWhG|$%z4^nZEctFWMMZzx~!e;vXdX+We@GLcDBn#f*#B?
znq_;-w*d4ErqL|h=hmTF?gsrD(`c6MbBoxuzk>b>AYI$hc5RCX5%&dHv(##O<_&gj
zm)zLpsHSx7S>Wjdux6=z=sm^C%F~uIhg=EXF@W$U<#1-HB)fJgl>f79Q_WIY`ICJA
zmswubAH%C=S;d-VNguNe@s<hO$IDQk`2gwTr0u)?px*+BSte~CpZpLu0RZXa;@mQP
z^v?j@o@wmk;@s-&<N2U(VjBCnI5(Glyb1Igfb?-w+sD6xJ`9jPuA{B;%rorcmbtOF
z&euM!{4lN|0j&8dAKIr_*?;zNQ}7l7!p)RJ`?#8tZ2#X-{$Kj|Vr4z|1Ow(Gc9n-m
zzg`*486mqq-B8)~aU1jq|GZ^ohG-v$a*O%sUx51b0!V*`a@(<=J_P+b)7W=@Zh599
zA3-|-<@ZTiEnZA`1oR5Ppt?Gg7qblf4MAilvqK!uRIc0y_ybJ80y3N3gVD^5QDMam
zPzH!Ugl_!-Ew4Oe$P{Frgk`F!gN#}L6Zsp(IrW}d&LPOo&1{DPvPe`<%)mcw`A=8;
zlinZyBq3M;s6G@#c$(I&OK0C8EHgsM(zAV{ZyGZBm$5g5ZM}9|30B$W8ZSLJvKWPj
z4uY*43hBaH`m0j3K8I|KpsphpsAfAneU1M@3hOteSikOLD`8pBG|~MjtR))jwsCdM
zZgV}B3OQa^RAI&hPpZgO3jc7Th{vGjnBkXzqg7^G{8|`lItU=wNdC_0!HvMxpeF+&
z^B_*Je~TMH!SS4oC{%=&BY7!!ZY3XkXOZ&Z@;~_&G>)u=QAv+%2G2%-eI#}Sj1DWK
z1$ehKj@dYoJUcGiHx6@*en~*-71d@R8WVNZWjoP3Fn)dI5*w3jUYgjS<Bi28VGm+=
z{QJa}y=>$#?V0^KE!Z<}p~gD_(lh&Wy0T}?qxk9?(khP~Gu|A?$)cu0q%{IWMx!d3
ztzB<rRYx!UloNRk6{$8ISt0(@7mU3C(VLageImf#*JK&~-&(a>P@%7FGwfLdmQa4<
z6gdM1xKv&k_M2-ug=$N>yK6cT=6<T?vX}g^DJr@tt1TXiqN`GJ>2hoio;TC<=~M6{
zSho9EOhuZJ_ij!Rd#l2%ZD{YiIo;_#Ow$Qi9lv2&p9)ytP}Yf9RC#YGYo(?qgW6<y
zy~e|#cQon7RAh_TlyfSJsEALTY|80LyDoR}$jQcgA}96~y1N|KnoruXD0czTDjb&C
z-s?AD9RhtBe#L`)%JEl#Yj2V!A5ExW>ae`*siU#h&XM5go+ftu@CeDDx2*pNb&dDt
z6jARL7`;(|nuxaCo70lDc?9G=fXKS}_zs?Gz|U(VY~!uYi9C!lLR*maEqD$AjBIU=
zC?n#ViaGQ4?$3$UL$NYt{|SNL0rE&V&a@L`_(%wU*^T&|2q65sYSrn)iPFWjgmQ5m
z_*t!{w!!W1LR7P<5;oG+CW7N=+bs)JS9{wl@FTTHYPZ~(lgDnUha$59<)_?4sb+mJ
zi=GO)EkOLkVpW0nR@pDha>6gMiS(Ewz%vA3cgZW25$|1-ad}Qm+BF3XlK`?Uc06gq
z6SVy%<j(<w?<>`IlRXxdx-BQdO3l!$XwZ~1(3B!>$8O6hq|q_T5uMLhZ{!;pqmf;a
z+1`R2*{+%FS32R)G$(>*(^OP-a4+)bE&If&yC$cpRo9#m<ZE&|W^mhcX4U_!!mDN~
z<^`BqsPU%fghLfq<A<Nokfi|h>q|560YEzvGm7nap+WNJEt@k+N8-Yq1V`d=$gBsH
z=Vx^;%BgxB0zZTPifO+;z_bR%kWD;>068G@Gqm}V9C?>}6zJiAj3G~i%+p#FLV$_|
z20A4t^w<R$y;)$p8vIuQLRW#92joT)mxEXfWHliAlFA>KE1=vKqPyfF*cX)Hu%L`d
zIk84)nhgFXXn71E4}s(Kjl-NwU<faP_XR-sOVw{50ulc$DAHk0+#8)^=by2q7=80k
zMwTNJ)!6Xgr3x@jXQZJAt);C+?XBSq&uJ-cG5cmL!Uoygp(<D*7|8d)FLpR6r@7i;
zcJ?_4Y}k>nSY$`Oms*Oq?C5A6`8GKP9QiNM;=KSF<u*AjY3|9#@oWO(H^L(?hd|~j
z*Wult99eD6M8*_A=59O<opP$uEFJ{C8X!yGQ*&gc_AcmMfXLT#al)hZz$bm7((9I!
znSK$5DKal){szyVfY2Y{E4vAf2#`g#^plWX3siMLdOZ-$fFuEh9YHXdviCv+^E-jK
z2&uyXrmzsyPGlWsRud4sj(Q!lqGPlcWiCM-Fvs^sVq_qSU91^t=0jGmdrn5ni&4Gn
zk+l($_X9$cKzs<~9TJy-_#4PEKo(`v7b2zpX1E$a;oTsPAay1hnZ5$VX-Mr1NPiH-
z03iJVCc-D?RV_P=FBGEe29eOG>>55LBf&HrAWzBdKo*nWQ*s}WHGt@6Ds7(<dtZrf
zBV)?ms#$|Bz+j;{;=JwD&-h9cEDl4_dVGJz{#r8@3g4<ojUl+oFCzGy5T1xGNoz*-
ziHOjKepJ>pQ-js+laukzWvKQ^m*Wf2sMs^CX#~W_K;8#rkuAL*QjUT81(03{qS_NM
zJwSSE5T^q<l|)w%BY+GdF#yDkKxUE{4&o6Y50DrGVmFXiNn8yg`Xm|-NWT$80!TiI
z+d-TLq%$Cc-%S5S>yCOTRuOXi^Gr@O_Y$;Y9@qwezdyia&|Q{I*gh!1M1n%;Ihlhg
zv;=G;AuwEo7Cja+RRbZ11%4x(6M2C`tHCxN0^<NxhvBVG$LR-{lS%u)%Lt7J%eCO0
z!9q;NLyzO<(t}bQhFMttylOd-yh~Bab6{HtiCbJLj?)jMolM$nEoCKm@0L=0SEn~&
zOP!#Pi#!;H-$zSk`nf6TgEYP3RUtDeNT=Ds%C6DO&6lD+L8kE^(e&xqk*-Tge?Fy<
z=Tg$&N=bh&CH;A|)|bY^Of`KXD*KV9b2U>R#_Ar33_qtDJTU(7NTe^^Dwp*5JqqLh
zkfN%U72)BKkHbF^psK;8RDE65sxtmb%EM|*Op)d5ru?Jqouy<~2C}VEWH*+`Mth~m
zmQ;VBlS9phs6{^wNAq2Yq+d>3!do<Hcz!v8*g5#sQd(G3)7iqpl+HTMrt3a*PDy8p
z4Gc=rJXkf*HZDrhJh4P`bXtn$k~UP+Hqa}f=k1bhiL(Ab%H9J^ied{J?w;PAon2;U
zc4u~Gb50;RNKPUcKolfgxCTIi2@ym=6bV<%D4-ZFu8M*I1EMG>DnU^|KtWK!h#-o9
z0xCwt?|o05?wytU|KIb?^PJr}RVP(C6}q|_A4|?b?R3#;-ScRa&jDmw=h7qzjpI&f
zS0jBT!2giSFuu!*wuW%~Xtg|avlqfOnBn$lbxRJ1VNQ0C+?nHG`bAfdvg}{0LnF_{
z)1W`ELCSB{(SvB~!Fjg{Qbr_w!Z2*(|6ZLp2$Q1Vn^z;{kLuhqESrM9W<dU|&ZC~-
zlRJSNtCph?!ECG_fQT8v1*w9_w@8C!7XbOIIzS7o_(7cg$$t;&hpS~OYH9t}PDMX~
zY?%Tau9m4LpMAX!m$9!}Rwt{QnC4bH4S)PfodWEuZpb`;h+=vlAX9*S)vc-cSKvng
zG7Vp=B5+_b8@BDQ_V<PenTBV-ij7Kusf#U2=(8q~@IbYhhBpR5Lx9wmOOqrtUVU{&
zdPjhNr^?X!%D)+-^d6J<C7M*5_m5zQ<b6+dQ+N6^r5(PvWAZ*$8EW(X=vdABr`3&^
z_kK{>8xV?BkgE;zehu&|0h0HtRRq3f!YqAW?LQMDB=7fvW)8sQYnl@JtidGwLi7F%
z2o?b(?=DS}(0F-&9qB6o{@YZBoA)4$`pD#cs3z6s{R7w`dH<+dw%%FqfkBvbnY?Ex
z!>KTkKfC6kahmt{Oy0Lb<wiiLR}XTv;U?x!z`qAb-m_E$ZVF<Swp9CjK!oHyx&nO#
zVDeR>gt#!0gj+T54M0#0ki5GzNkZf0y*<*~0{jhBhMV_pFls|}3XQTf$=wFU=XhX;
z<b6YJ-p`+jOC`0<H~wdv|L;|r_cbQ(=RoC|0NKD@W9oez@XG<F&8rA(1u#o*Rr^nY
z2+8{#(A)_y`P!m{c+H-KYc=mrg5Yt0Y4b{xBs5;$UqSjZfPbf^yLn%Gre(dZZC;aV
z>-}BWA$fnjHt+r6%3snpuMD+q{$30~vKjtTbv4`kW~f{T2=T?Nm#RCbp<E9E{|;c<
zyo#``@8ZbPvTA=Ph>*O8U&AvqfXUZ1CG=UplW@7_y%GfF0Mq7`CP`?#ythVrD}ett
zO?UHtIo7?;S4U~oP)(}MJI7MV`}5Up-2OhT4;CNQavEW5o~d_uYWdkU++UNtFEq}v
zFI4sb$j004N^V=%X2JYL)&5=}uibdN34~Jtf%lcL&c<7+W4qrxv;xcjH${p^5q)Af
zRNPx_-ty#*qZxPZt(JA0)oS&>acay|;WJ+9%xc-vvhq_gR~n-goNF?Pa?(srn}EX%
ze5G$pbtCQuJ_DN{1%!q?4o_BH%JeURe+bCT?~l1=wcOU0`8p~SkU8`w>`_%0Tz3w-
z8t{_<veN!TRoRvs^1Di>Rj1vE=j^i5?hg8H09gUMl+Fn}UfmA>Z9jl&v9#=bXfY;h
z7`^0Y-&~!x4_Xp7cwG|Avi?C#@rKZ!tVyO#IkPky&2EKwlm+KLlQBbiSK~PoJITcB
zsjfa5W)_DTt59xN%A0Stty7e;x#j$rAmH*k0v@O<AmEk?cga+}72lDL!LvCWwB23j
zBR@e%c;Y09Y0on#;kKs<au(|~%q#Nj9@XKwt$?)YAV>+3AZyw_y;?ql5_|*IX`f+c
z5as~QnP%2ul{T+LvoOlWqBZb$gJb?<du=j03pZ#()h&uT;*0_6XapccBSO`u(uVoK
z?`9k|hO3L2hwp%Y#W>oRVa$uZfn-34W@c22l}&)31dszY5o6N7fcIeBrB<X`-V0j-
z>@h&*h8ipzt3zi%>mlF=7&oF3imX~*h09!twH+XH-p!1Y3t&$L-U-m~&SZSLWfC3*
zU2)|It4VbMvvwI0h5}OVn2x*tV6XW-4N|*hb?QQp`<5fA1~m5pd`|;ejlc>b4*}Va
zz}J8Xd6L&6CT$hm10Z)Rkd&_fsTG`Ly-C4at9)~DK+!i6NrfQH2KWX6IR}9=iSz<8
z9f9isR`!>WbHCc=^FjmER{Mjh)SMhJ`0C-$d~iHW5y!#w0s_wyIRa!g0xJQPl_29w
zxXCRLcpovF0dmQxtHkdq;Z6>J_Ufv@WEKW*u=@h^p8@1e`d<+EnF!ycueTay00?YQ
zbM;O7q&c@vksEAIyk_);?b_C?z(Hk-kAgy3i(qR)S^MHmgDG>R2L^g79Y3eU%?tSs
zM!h-DB3<9JHuc#Jt;76wve*l&Q^#Jf_1P3gHULO{_CugI5!UBa1jYd(<dOPZ1?&w#
zZGF0eldNB~K1W=q_4xq^HvyzRlh)vNaU!hG)<Bv8tUT7|HEJ6^CF6%}b?R^csQLk<
z4o4tx5fRqmcm&1)B4nytkuwneAAnS(E8Xwu!J<QctjHcL1y<xepq~SfihKrvMMPMU
zs}WcM2t2NK{y$aZyUL^$nS{GoS^FnerR6MDkHZfs-vzr^@8-2le%ASjrn08@C#I%4
zo9^@6am$3NZ<`P<pXUDT%v;^y)JFAfD;~vqU0YGb0h9(@0X5%%5n#6(&-lFBc>nk4
z<oua8GKOOLSGv4A%&L<0+LC1^70z0Ic1>)mj==k?<Z_K~P@G=?LUhIZt2%O7k@Y55
zhj<#j|6_bRvMPH{3<k{EbwlCbC75$p$$HP3^VtnCt~!6Hl0|2C(6<N3#_FLeSvpPw
zei=Z%Xq;9puY>=f7CF`)l$3p>%9nZra?0!TJ_YGcfV>WV5P|(f_&WG81pWY6ayME2
za?OnO3q|~075IQ6rVqsS?^|eUg!i%c<kC4_$nb#&pL82V9^OsX67<ahMmYEH%rC@F
zgfnonT;bh7)Rlzt?YCDvE8LLF$Pdo0B@@5>))x%tkja08GRRQx9Mf{xHUiIFLF{=J
z7BmKPmapaKrXzoEfXZpB2-|P{DT$3z-ukrhg+T5}^7jnryLu#+^IwhUp2{GNpA3;p
zHJ<Z|$tGU+PD*}rj40=W1m3v`y!#S(SJvTu<yXVYImr}gaj-n+k6QNCp&X=INXb@S
zkU*J&mWu9~>Ks;amcL4qrLo^?Xa5T`#VXl5=#y<)c%jdzvTHbWw&qmx!z!6-+UK|C
zMBt;U5>5o{el6H|cbLX&4>XgHou=JNE8}N?__M78QT+X^DiEE9DK}f0v@SQ@kq-tL
zt>!OV*XuAohpo$e%6LYO5r(~C4Pl=|er#dik(h$bt#`YW1m95h*pwJ8D~GL0rv~#p
z8+}=@ad%bV2inM~K@O(`IUG77OsiarkUh9|uy9$Et#Yzr@Sj9h4*oeD^m8~km_cE+
zr=<%?-9aIT1A7h!^c)TX5hi-hKbNC;HZOj1xs$z61CtpUy>saBb9nKS+%+pHas(;v
z6+&Ms{kAH#Ej97fu}t1`bwUeor6G{X&%x|k=yaODKqcV?0S&>O$<O|>Dy>%HvtD7l
zAuR0VmmtxKwmlW*Y^;iMvgdHj%#gjeja4nU_ZDW0L$b_3!!p<1R3%f-;Du0YzgHzQ
z!r<v20eRmvH!J%3e}JtpF5BkR%*b3()w*eS$P~^MRi~pbse;$4<nE}jh<UB5gkC#%
zZz-g_Q6=9AFyDDusR~9$XW+Da)p$rYHZ7=X&0b(6FRY66z(8z-Evzc$G~J5kac<vI
zZ5neUY?1>JEvve6!X4g%CAi(HD!zl6mXEu%s;c@NNKn2c-@3|dD?Y$Xx2ejffZz{F
zK-yO24#PS)C~JpyRdG4L{@X&Nw66-!hi0>v*`X?nc~6%|(;chiEK0EJbdYs2WWg3A
z1c{NyeC4IH7On-qV0SU&RQmWyIB?OmDt$aGK&gzj>{F`JuO)&57u`$&1%Kk4ty`6R
zBOPx7<zqYZ?UV55IQ~TWu9;m>mBSqg`+ct@3aZYOlDHGku<XLB3^oXJAyrXTv;{LF
zwwD;&sjak19z$FC$M9G*t4cNkmc-G`@GF<UkW_OV8k$~>^mc!s0dlYGN;Hq4A)j^v
zdE*&E9;|A^jR=yb&cVjHA@6en`T2%CsjA&sFoNWFT#uIrD#e(R6Ugr{<i{#IiPr@A
zH=}XNs8XEnw3xB|zn<;WvFbD@iYiZHYrX6(oCF1g#y>%>?o59M_(O~v2zR`vvUu7A
z+xijsHvn1R@2!;eeS@`hTZrR6z&Dk$4{$2*P5@c+A650X<%a6HhWuWcI^!mcz;qWE
zg8qDfxDA)mIe~|rT<EU^?G*t3A1dFh%|&I377$iY8uC<rSDE%5R3>ZyxFpUA#MGr5
z06~?b8vqZgPHq6$C@fA3I8d+Gcn+ZrO}uUZ%nm0>uH6lQ_mz?x0Ns=lkFvf`5HPxq
zfGr6ECSY#u7LmIFfH*78rdXPRida(_dVsZ#CduDl<{z3ZEtaMBn#u+|D0wrAa0&p+
z<+mzjI=BMZvw#Qf(IdxTqq0)E+pb`YS97g36@1OxD11P}9uS-dk<ubIR~B-|=P@Ka
z07!WfL*Q*{fo)v~Qv1_NXWT8Q@i&ol_d7V=0`M&Z@-zZZ0Rm4bL*Ool#hN_Xy1^>r
zLQOs!C)Wu2({=@KunN$=sKI5Z4S55{XO+%puC`Ype7UP_Jp%7g+iR*V(`ZW(ZRNb$
z+bj(IX<r&u&KRYf1RwM>gt}EeIUzpC=76R!70vQbjhACgfjq_D9EC#Q{Xx4>Q_=Ho
z0`^2@8B5I`59aW4I)^7JJFr&<xr=5$Wx5$1(;`zr>8O=OrdF)zyqTc6z0&LgK1UJ4
zb$ewS3N`X>uaw=Mbg9pomFnF#jKSL>#zSOe84rQS$MUml_+^gJ$8AVapB{5B3hP5a
z<{iUvFt;*(0Bx+rI;=?nXgZ^eW#<6v0!W#-1ov*MP;4G>W;V4l{qoyT^N%3uPSD&2
z@ZAGs5dx1Bxdq5u2&@7`$dmgFVgetloX0MO6tm2N2Hsh9%+s)g8b((-i>ZN&l%0_A
zF@^GS`uzy(Bf>?>9|-&gFwUuu_BY#dL!PIYSeaIeQV?eoS&uy@fH)_Y(m8?0ah+2+
zXiEY90V+SiIgRvGx*<>HrIl$nLuG<<a!DM^4Y|bBrOxTHI!gTi(PClC3%sUCo@wCW
z@m9-<@m4|03iPT#+X6K7U}6;9Q|bheOdts!6#g_8t1i<>R%e>l(aq;Jl5g(9_TKoB
z!$Hx64Ym(*+yWrONQ=r`dZVv_zr(o3a49V-^Ep0UvH=hG0dj#)tIEcd^CIvk0OCkm
zn+A3W_;&#LCh<3_9*&8X-L^7i{!G*kFNMi|7kvpJ*TwWepbHURW-}6jVMOi(aw7s$
z0dgDrZ=N_eRAjOx7u$Sy2SoE?n+2f%F9q;oo9_`g05BKZ#3QCWupywKY*zv<wz-PN
zQR^`<{6Pt{r`|>|1H{q-1oDV54~-Bw2@q(k!Z?JWxx3HE?IaP-`f>Js=%}W^@~APQ
zE_I!YZEC4yY;@)0@wRHJr^4)Zm1)sCVK#^3?y#jBKw7*@=|6$Taa;TV(DnoPTc}ji
z;>8nOt5JB!&Z_HDnSL$R&=ZUT%LssYg6k2uh6p{uJOmy9M95=2!EBXdJVF2D33i|@
zYfbX?x|W2`azpjpe4SI7cEHWoB8YqvAo+4BlTP6A^0flAuK@gORDMEF-l|dfbh?J>
zxhgwWrd^0uEk(Hz>>B{0(xr4x;PF&`2HH;metzSczXX-vcq-jcJy+!!mG!o|D!&K&
z0f4A<DILoVxjdfA<DfkT@E@q7GO%1robNL0z-GlC>jKB{64o6HDr9~+R=d(^t|c{X
zXJJv#mBWIH7F;;k16r>tCf1pg61#uvOq?ZNP;oY=-+1jV|3xG|R3UTQp(-rH6E@Km
z_E1H~o=^>8WPhllr#Z@sYcP<XxyF`e%HGUluQwYb8Eu(c(TcWYZo-rw5ZZ+vHMgQG
z*JO==*9XY+#nV-UZQa4vdVhr;$E=g+NFvKmeDGL*ALTN2W#w;!^jQ^h!lFcz0-jAB
zVUv{4tctcKOIH5X)tHQ#Ozg@q_1@BB*y3j5=89&_#OW~hRAz#&3*B5H+kqDWztGLZ
zA1cDOu4g80tCI;g(UHW2OgR6@gdftUn@ns`fhcPE*){eY&BXMIR&FNhPsI6XlZn|U
zWa3^hNKH(v=)z3g0AnXH6I_a3TT#TJ;Q`=t-Ap{~W#V#X;`%z7a1$Mii3yols$5zV
zt@wuZRTc7VY$+@-Ps6UNIF~kC`F*?LYns}2l(CPO#nbOriw9RUrNv8O+4HW&gDcM9
z0QVm7cLCBoF7_-wj~1U_$6`0pv6z@(@z}Z+=iiL-IJ+W?(n~a{w%B>in6#a<E4pg2
zx4OLq`-mnJ_aWJ2v1>(Blf~PIV4`kPyM|56dc@1(!Fx1|4Nc2Bf~@QXga-K0FDi1T
zViwtWGiEb@P^VsuJBi))V&E45GV>#N##<33-CW?a0pj$>sVdA7SrjcR(ndp-IQ?fq
z^Atdw{(1!7BtoaZ7lE$;5%L(Pf33<<r=P^x3iQiS*V{GCwt7)Vy9(b%>flk=KOyCJ
zisgau(0iCo1LUY{Ap-e;z(dNd2g0#{!|1B=18X(0?!Y?#Pj}?a=k7>VMSx||OlecS
zQZ1aTl~h&R!9ysh(u$mWF@Y{Qf#GbIp|qlh*6N5O_uvJOii{IzZ*^%4Dq6Eu!XeHW
zN>aIb8>iayCj!l`kQWE66WCvM*|TeH`xMi+kZB^TL#Bx|_cFsTGE2V=RkWnOCMdj<
z0HMq0ldChAk!J$$0gzs>Lq*tD39BVjdx5!?$4zu3(dz}5`M**w*MnXN>8U0YOEjsr
zfTzGF=>@43t=(QQcQiIs%qUWWWYY_hDo&AJ(CWJ@@YT3-8Dmy>sehNZlhhGw$}vkT
zpQd_hd)v>ho<GVZ?<i}&Tk=PF7mgb!>sGm_&qG)-qF@@`=Wf3pDsNf)KGGpvB8615
zm3E|Dw$d<YC1YE~@Rg*RB46kg`33jugY!K`&?pq`P(X-pE$uP#ZUcT3Ad`dJUL*E7
z;Ew`QDBwC3>$75LdiK8Zv?9d%_{Hj7p!o#gyADXw`xyL*TnVHxkV-&=Jjrtr(+^lL
zK=PwNrXp}Xz*(rm*+0TasGX|T*NqCi0HZXfMzddz;w!%zh3x|krMQ{?t~~174wCyJ
z{$7A@9grswSO~xbe>WEV_6Ad8_VZAgfwy5cl#7!yo1PoWdr7IUz}RcQTOMS?3~t4=
z#NJdci(d1_*5-0~W6R2Kc`~*H%4H7IHDIb>mupSU<NwtvSYF<g8;I**#ZrJQT9%ie
z^}<>3s$1Zt0I`d)Q}Swg<XAtvg#vs6Ko%{7RV)gORq#f6$^eL!3IE-oxeFjmfz=4C
zAi_n$ZUnv{!sUZ+D=G(wELz5R;@nV)+RNKGAI9WL7A=+FDFn!(<q`x&0nDQ1E|p+g
zZYXilQcdHibrKk^p#<793xPX{@HWoJ5O|mf7cDCgcm)u6T*cP)mUV99+)=w|Nl9os
zwe6<PqNSEPb;K;6^^s?`8`6AZf2ut9cA7l_WFNqmEdVR9P8oPZ4^)`1jP=J21#tZs
z_n$Mho}pBYRGMAWZl2cqbLGuh>w6&WOF-zWY2=cL)^Xr}0L0godzSr_2~|tV_2tnz
ziH^lY$DJ)+=5M52uCL2K4<n+n>2Qi^iSBaLuHhR7a*F1u^5$&cxgVg#0WL{aDPLlM
zw_0@=fH`$}Iv;O52oBRF7L>Opi<N&G_L3ep8kVSrxR>iqpl{0O1`iu|!~NzM%=mA4
zXg-MMD?`|0_{(MZZ+S<`2Scly=V1n59BlrBuKu~@@*1l((g*z`%K3tyF>FM6LzXYM
zwMLoFX$^U>FJ`voyWn5>Q(ufd%X4Z_0NkZNy}Su`_uC`$%>Wndy2FqL%|Gi&h|hc(
zMLn$CIRkN{L3A0wzgG$6x*`9MszF{i{8JI`miU88N5tu%2v5F$1Ib(fjR(=`8qb$n
z{KFDB{MRHRw<RKXCn5_Hk(UyY^$CcTpVAvgSxueoYGYc(V9lvrbJs)KD%zHx#FCtW
zd|n5Ti@MsD%MRjl;Lic%X@C22+1~vI_%47fn*UU>w&jL&bH}nfm#6JUxyuUH-iEOg
zJcg;Pt+B<n+)&81s#|&50N5o=8DI(lWDQ!OJb2qrLvEe1R|tJEXbS=U21;Q%hx4=A
zc;I0iVS#W~gL^l(706fOl~4R5#mc`g1E+<xqqjFEU+fxMLut~fs>|!M_*z4ABY+fN
zb-8@q;!@y408)GnO!3VFem6jhuc3;?mmoCc6<_1>v{I;$oUH);D*(fEfyd;A&|u|f
zw<u4W>oRQs!#aQz-$lxU(>xkFq4;)y_9KA*Vx`dHt59^_)7WH#@H)lk^wQL?AGNJ5
z|4a?I2L6x2<t^D6rf|EanZnh2LWiX^Dcp?mmMq*Ouxl?s3OA#?J7$|!tL<2G17!LV
zG1Hfcz%K_#fk#b&KM#BXpkbp37C8_sp9sk<4~+i^eRR%}At@WK@mWjN2A_2b$n5;`
z)L!#Z`umWy8_b^pe7*^IAMisA4glX#q%=UFoXDp@`XF!`AVLAjVbI<JY&sy1&&OQ_
z$<}#Puq8DhhoBZ9{ZW7%f_e>sSBdZt)Mf-W0s=eLH21qO=2D_GD+8+yd7Od43E@HV
zfMYPvSKucP*MCz^+q#@OOUvuM$V_p2ZWknf0+80xte&X=cts7l9n$Mue}VRQfd6Er
zFs(yc@tGQhTO%~&&9e*3>s6x2MP(G_oe2<?E@jdQJf6xj(3SxFXV*~~IHI|_a(QB7
z9Peg&h-c09%yhgw?LpUq=8)DDAY-dbmt>L7)7lN`U8!|M9j(sos+Du}S0IqxKyDS_
z3uMnEBz}~b2uEZ2C#ocKRsPxNc?ZhOgH=sv@9l`Qqe#O)P$tudA+V$`KpOsmvTkhn
zi-11_kcR(#nJfo>2EGd*ZTp9^6t``gV_Ie6xX=0+IRkWwbwvX$?;kXkF3mqh5$sv9
z(Ecb(?YRKe#^yg6EY||0`PU%u01-C-<p?Y#!sfpffz5yj1xWKh0PI_UG=En?k~N<S
z+~)7>00NNapN~K;5jOwE2s8u)8mnpl*XGZIm|pYex@)L%;;Iws^p|IjT!>6%q6Rxc
za(k*u0&)%lX96N5OD;mp1Yn~9vJ8686Z0;`{9K+^NikdoJpr2e09gjTi@;hUTm~IL
zU@ss-9$5wjccLi(WEs>PfyMyGN;kE@iEkWY(X4E9OIz(SC|PMtmy>1Ce6<PcHRLUW
zj_NY#Oo%@nAj_aZ2n+<^C!XO&<w~-4Gf(N|shgN5dWOqEHWDD+bf~Jv>QO`PSmU_E
z?yaD`8Q>pT$IMiE)f|mV@<MII2B=IaPg(IeRI-WP5B7Tj(!`!YfG?&=6I+YGn?%^e
zwjr<;AgyaR0=ocm_{i0h;^{fb)#J9bBcMG5kd~JE3CaN=EiE5`TtJ|kTKj)%X{k=t
zHnWZ6H8?5MN0i@Z{mMf9r7SIm?kt6R66Dthi05(Xl7!AH$PP$v2k<YfQ;^OV>LuuT
zTIeiAz5+qd^JhY0pTtCZ9;dff^OJCuV>H!Fec&#gf2$rk(wQfux>mAfE-|UvGKYE#
z^c5<>c(xquKWsLhtyyc+te@9`#jfG>K|I^$GFc7}L{57G#ItQK>q^h|2=F@rG0xTB
zFO$PSe*r(jIDY$Ui}7U5KE(zSpdmLpuUUjS`zw7gc_~YM0O|%K;T(Xt!jH@94)c4}
zF5H_8R{N8(v=&ckBfK3vGXT;EUqWCB5&F692)s*#jj-NlXn=qS1xQP50<1nj{G6-6
zv6fST+xmJVy%#`Q-$(?86QQ4*h`=>~Kx!LPR&ML#VNZVD`u}5?=Xi%LGe1f=PdQsl
z6mA15OFEyq%0k+$5IqB6rjFB;(ze`CuJYJ>%j&&PCc1$6V5k9z3%FT%(91OxRUWV9
zt^n;afd3AqNSGWf(kMKq*N{86us<scc0=Wf%I#p^;;M8hlTP6ARQ>?k{ZzTQj!Nfc
zt>6{N`%nnyFwKFXKabZ0+}hz=TP6hs!&`t>D;v%+YRJu`{b89e3vJi;EXe$yV}}sn
zdjv=ffhZt5Q9#m(0&s(nFjs)K%w=wgKyyG~i)%0>)*8!Bipd=cT0F~IuMpR<Rc$Lv
zyOJicuDU@;SAcjHmoCX7omW`>klq*I-%z)(CaP{`U?v1ozqki@7XOz@Yx?%OahP<N
zzTH(<Oz(Mpn~hNV_CsZjIb9zOT^9kQZ$DJlnSJ{y;57j0+mD#OeFXTIjAP%PZ~Atd
zFYuTj(B<-eaQ$Uhwli89evAy=`K)&JXG~Wg1iC%|>FUq^qpSOr6Gz!uW-pedH3Peh
zH~#_8WPo(_rxAF92)p__2&^W;uKq0oUjZT%AYDE1C6WL#=(q|T%MI0cJCob(D?wXM
z9-e&dgg^%(?Dpp%&>IjqNzHV-y?FNj(e3LFI%v%JN$>BV0<c#pzn9CB{>_ZC_YZ}J
z^8uFgwpN;NDc&tavRBnyF9h5SxcvfShv^qvTsF%MdHv$)GGC+Tpojfp0(4vrkbZF!
z0yhGrU$|^ZCkk-;#az(d?J_Sw;88$emulw4TeZe=?PK~yDsMU)t9h>tdFH)Uma&QE
zO$XVF5V(XIt_HFOfmML)L;;Q`$`gP)!i0GXXy0?0zeM13Kwz3`{vYPy_7WB!?^NFC
z+2@8l@$Z(Uc3BMj*oS|B#Df6ww_B74{!l}%!*tv!*I%Ih6X5?)DU81rSMiHRVdodV
z-F~txZJw(pxC?jL0K`?ebV)+zi7rHXKEVHH9nsEQtq!`1<q*g!k%cHHAvH=%r@LJf
zT|eTuia3w>%_N>Mj|k~5g7}(l{rkf3d&<)763EMdmV3%7AD|n^|6m~YyvyXdR5RUE
zboVjrn!ccxS8?wu^IpAQc`Xi#m6=1YCoufSWw@>EWPNwHRp)d(fHr=PxiPQAPArpa
z3BtU>-kw<2aSCinA2V{IWlt)T^Qu<<FYu534Bz2~#$}E6{3AP^>_7G^tKj})PZV$?
zfcVFLWhYbKm%!Hm#1{@QzHro6mUS*bDz-x-BhR*W#$m?gWoc8FX#05%G>-$M{q#{f
zxJC`RMdVfTR?uz)_y;IO!g&3gMxnAagk3QC*+a|f{phMZ2=@K1N|!R}1RhW2U!eVy
zD*rlBWl>{W6!<JR<f$B7mNxPQ&1Gmep2h$qmo8<}2|S+4V$c=>{N*Y?A(v-)D&3H$
za#UH`yHJ^MhR!8PvfPkMOkH}0u5TSBPK9QZFKF+BIQAEF2_gKg(@ImnT#lT-Xi^zJ
zR^$04k(}Ci|Kx;1bDmd(&bpHl!C^b=HJ%;qViT`thY!c`Knp)!WkNMO6C_Mckl@y%
zO!-xUS&VLpB}%|%liYshxV1or?R6LixbK<!TWZ13+<;qvWI&OqBUrEYp@;Xx4r|o(
zqxlU?vpCHs#$#KM3l-@{(Xul3qdutJCIIP2(K7ku^l!jF0!TlKnSL~D4>sZeT>_nP
zFrw^~lZ;^LRu?ORd#~87`jn-9gx)G{c_mn02S|e(t#p{(Xy}A)wHdS<0se7Hk<j3}
zt5d+iI1RaN$gV7_cjil~@-wi1;;M8hlTP6A+W7aNJwTObs?-FPV?32^$Wz(0tlsOc
z%Hv=^=BjillPovn@^~u4U&HwU{NqnlS>vg6LoU1BqO4ximo=9qU@rnl!Mc=5mK$<;
zJeAEs+mtFFJyGSGo=P|5vfH_3X^*)oyMeu{tJ0;!8_~+`@^~uyfwnJIuB)Tc*`tk;
z{dzTovtP?fjq3}?(u(J&UUq0I;{6pG&;IUjuL!^6;y*2+sW|;zvdd65%Uq{nIc^(e
zujydowdXwL_8jL4<>g7ce#*<f{*}g)ccSu|PY_+@c2VayrC}GHrM&bgS(<n9F0I3x
z;pweZ8uD&T;B^}>d5<dZKYhs{@kVY-BV`Z;B!0p2-<TlSahnEdI=M7h)ulSqJWJfV
zB+aloG_}s?;{>5rt6#87bi7oyV!1<N4tyLhZN$?SX0ShADvKBM+Ms2;iPh@ULOj?t
ze5_H!x2N=^TE0D{W|F{#jlH*2_Ft{iA!ugnO685+`8bEcpKV+boEzJWII?x6<(v?V
zMeDl=P?%eV<DaD&%ka;cvt>%=$N;t@N@d>h64IXq#710t72+~DOZpV}hm51{jYjox
z;6DQ#ehGj-wvtJ&)V8qQ8s7qKa*oEc1svA+A2A>;(Ri~l0ZT0Bm?raa=lWVU|H+Gt
z8hRst7e)9|sxv?lschu9b`bdOM@N`2!Ix$+QYk6B!cfYd)|3PZXV;NX@{do{KB|;5
zt1L|!kKJlh_*<Sd=503rQ25WR(86C@TAzjAX|H8921sGQYzli0@S6Zq*e{#HUITm;
z<5<|sOksZk{5^oPTh*|zztJ49Oa7wqEbQY6Idil$<A~3OL9+j|8XhC82`o;hBB9JX
z3YGbsR5OidG56Pa`Xqihf<Kn{6cew`W5+*Ad}xB?`)VZzu1|=kzeB^YTHWWfti`4e
zYyho!D8IP00oVW77P%cw`yx}?cG+ug`bDL(_ZLnYCdqQ|aCrSGf(&4}n~pZZ6eOSR
zk0_NZIONsx1*KMWTP29kR>A-F1fN~niHgmuczsG`=aB4uwd-}8f-<$+mZsZl$s=#<
zwJmMOS-*Lav3;p|kx|}V>`*H2E>b|pQh5!&fjNA2N@+Ixc<|9nA+1|!>QMBz;P5Me
zoLZW42JA=HyWa)$-4b)1+o;#wtiM~*ffk0j0JJxj$mJkGXF8D0CGvIPU>+(CNP(O>
z`lSHKdnP4)<h57hjl`1pul=Cz%E3t4Qo{SowYavHh<~BETT7(48U*hw1=XICG_jE1
zXRyC6Nt3IqtZ0`rfi6}Hmw6U0E|FJ0)1hlgiIj#>{DM(T@h_?-aceJ@nD;27cV<D}
zD3#aw4L8T5O1d-08Djm#CHZ3gkujjX)QAa&aUcXpK1(k6A(pv78Vd5m*+4EUiSdfv
zV5dicTy9JXwtfr9=n}b%z`Xr>g^`Amryb4Jj=)OSj^-t&*4ojcq*Ux^iau$#Qkhq?
zakMI_kQ?%z$^>$9iBx-VKlB5M%Zs;SRBJT~>tM@nQzEbVnpauds!^AYu<Uk;1=X%3
zjhSi?yz(sYoKun~de+?wq)$nh%|7_Y4T9tov8>VyIRKfA99}6=)^hU?zUr)1y4w~m
zX~v8-`UVaX5E^<5xlW;sfxypZ-02^o21-J0)9{ua@M{_O^>oISQqCj5A7tEq6nJJy
zL0`nJ0KN>6$^1r5c6S2b3XrQHvP?#;Z*h!?ahF;#lid=;<N;zRf|zL?rvdHAC^nf`
zNjeMSO5j%joQhQ@Q@rUQ3e9vbW|1WOpFAw%3{skk12`n1G{|A#E{$(@5lZevJ}b_1
zOmViK=vOU3lBVrq0%RCxl~&T3#b=e?-x{w86-$Smy}(#B54FpmT@!f|Bg0tq+V6@R
zet_6%Fnlr~^um0`wZ9Wo4+6iRal>xGs<=4L8h8!(Qb57*tFJ{|6+7Zy;9mh^JSugt
zI7aoyfgfYs)z<gL((A(e(6IqAcAOuIrPr4LFJRnNBgb2Zie>O`54<%X<-r?$)($ls
z*8#&Z+dmbjZe5Mp_Btf>2TdP<Zv~Lc5V(ZMb3i5`FcA<TPx5xe%mj8TAo(jGk0CH0
z;PAl?e|&ZEd5C3svkn?+{9tw_i8CAR9Kum|*aTa$6yH8pD%%UCFbzNZkK&XzYhdP^
zAbSy-mH_0+S(nE-fhTFZUIx1cw5tHv2K^q!j#Vv#7=z!@;?$`SofDja$B=)6AUPMI
zEns*L5O_t&%>`=mbii^}X(8T)HnkAUUb{+l7V8r~%kP?&!om1w6~n=GkKxcY_r4>J
z*uk=3n?5&b&MQ;>R-oi@iI(9Q@^vVl{}1XxhT1BvF2j`3w9RJ9d4|_E54;6WF#IAA
zG@FHnz7HAu0w7IpU2%Ihxr*<A0}9z(Hx#F^xjJ)}Uth?kx}i98QUR}HT77*XoA|rM
zF*b2$&MVi;jaVCtWneiM{5=6?Mp-N)%uL`D7&pq=R2&$XgxlGH?FTqls+~tMo*hB&
zK`v9Bm%S&Zn6sB%40`@*?3a`{Y0gvE`!kUr({}XIRcEUvk3)@|BB`}!w@As|@^j?@
z&mi#@Un~8;K|k1|$3#`*Sx+~ZcrE!ebP{Aa;U|ny&%*9|YkB>rX*{Qq{$7g6RE(cH
z<BwCWcMS(Fin<;bMFqxb5*5}~bB?Rbihh9dx0jikwc~4Dr?jlN9lb(2E;D$gSf(*n
z^x6`TE>O}w9_fN&IU>Sw`SD^op4=eFvy1jK#d3HNJ=u1yM_!6;irjLQX*Wm2WRTT-
z_%_bKKiz~BWq%{l9@zR`Jh;BMSiZ@Ii&TC^ChjY4cp>__-LG(D3}-)zQ@-uT7BX#W
z3QsjvV%5hVcA_fq_u*pS4%qk4+dfjxU2j{hJks7IonM^Q75Z}?KvK>f{4<4r#_`Vx
z{E3h%_i==BU*w-v{IiLFcJj|R{PPq4SQ~J}JRN`F3IAN|vj(Xiyv$_uq&`DE>DXsa
zIrwsIy3ZPibmx4Ze>&5TA<5j!GQ%^}4M`U9$GO1g-pi7m4|%gaN;gzbN$m%V)8rHK
z*wT6wWBaV)EY?9+t%DgZSxq&vAgjJv#mzZvRPINg0^~8FyOP`1r{yTJImM~I?uZ_V
z^kD#B8z8qMFc~0ae6GjvD;Z`MXPvwb?v-WyCTLcYiDm5}EOQTG*?S1<;0w_207NM5
z|EVsV^VO0Tmtx3!N1Om2XFB6F`msZ}dJLw~!|Ia)bZ2%+d}0sVi+HLKSgf>lyHKCT
zNm6+1{alEcN_XYr!Uk6Q%;MBF%s4CkPh{X%fK<Lq=U9bW`8Sh}l^;KVi~`KHPcyud
zbVH&Qf7l3?g2`Oa<G)P_W#dh1ZHdR)n6}(fY)eJ8g6tLmsX`aYV>5CY97`B(FHVzB
z*>(qUH-P`;L=~{0)yHX;1+i>V>{({3;+A6BHVCuRLg`uTwN^CgLSTi(`J}aD=p}}@
zu(%DA!|eS?K9k))%+3#FFs4gZ_><d!6cwBMXGCVP@dUwKB-^FM=7O8+W(s1KGZ`2|
zkWx+2>2i%snVIC6WnH-$PJ(=u)2=X+m>^%pv@4DO3i6doyQ)~`-m>JIUTj6*&PL?1
zBD0`6A6YQdw_`;oGgBtN$BHgse$6WFc#)imGfMw1GMg{adepkTNWLg#FZRT2FOqZQ
zVNt!ksMQ&;-H7=}#lXLQTx4GVkaf=vSK{}#L*i3vSmC?wM$l75?YKxZ1@Lr{%<|}@
zpD}#+df77YEiQ`BI0sa+I(oh+TUI5Ut=mhAWGUGoeK_`x-Ym+!fCY}GFrpI@ClsaI
zk9evk6v->88N68oNnIacH8y@y=+0s_23NzY*^`RGor%bOz}FSY>@oOWd!$@fltrH4
z@0d0LDHfzN7bDkemSOm0&2YCam?+x=U_sA~Ze|A*b!KLb1p|xHYb_X9Bp;>=i?o47
z^`%uc!gyr=OUYUoBu{vna&7dlqG}?h=!R+0NeNw4R6wQXHlX3gpx|Fs;2B;dSMmf~
z-UDPrkz9*p#Z%8ki8W;7Yz2G&@a%0>)UnpylZzs?_MTi+BqoZzCl@uYwYRmBiM_2&
zA%(@>)<unK?d_`e%I3l;MLDv$Ah#EFQ+o?Lz@Bc2_MWQtc6+`NlG0)7s!eXurYD*j
zN;EZ;Xlf|Y)NrDy;Y3rz##Gbz@{5YD$Ko!y{}pI0D9WDO9f%ZQVNuG5UjjKY0x5+>
z(H~3PLN79zFukfsGjVAd$cl<$>^0VqnWtkCTG(eg5nN7Z{&B_n9_FcRqx%XASzZ^w
ztMvnf*i`owHegZT1N;`ovHbTHwq@KF;O{W*-2m2Fg<<k09mJ}WaT!qkU10&~S|Y9?
zAjB+uS11GN5a0s<nU74y!}UVxzjpz@nQ`~P7kqEx)&qYXklGOMc|NSB+g>Qy%|uF(
zvtu)cigQ8sGw6Q=_)Y_o{5^^Q;A;=01c4%ee}PKkwHcPYYwE`MEShYm75UnrSma&P
z*5GJC5q#IQ4+1@j@UtpcAut-yY?aE>&#K_@8$O82Zx9W}V&*zc<ob*w>QpF*X3=ea
zQYhE>*fXHY^wCcW%UO&W!>@sN`J}Lkv|qdk_gSHNk{!Kx68NeMjk|sReb?Pq7ozLH
zyU2ZB)rGy;i^6<&*REd}=gYg{HGKprWm^buWcz7Qm?@*oSJMQM>&wEjUDlwmrQ8xc
z<7K2YEcESzZwt156G)>%y*aHfkjAEt%!tv%SeSnG6)?9+VJ<BXe(@N{niiTJH1Xlh
z3T5~(dqd3&&DNMW?&gKEbm{pdTGQl08DF*+cAASU2LEgeF*6IJ4Pkq55Q`BA>&a?h
z_7oQuX7P!mOtuRH(%h}m({gY>Nr9Bq&`l)9b@e{;->$iR8)kMat*;AYJa`z@co#t4
z|Jz$ou?JZ`415>kDv<TP1x*Klx#JIL41m~(k)y0{3t}&$qh1aCGC;$mRIK?wz$vJa
zcVO$FKn9A1NO%m8$%~DT7i818mw>+rkR{vkg8Gbm2l$($<K@YJ7s$rbcfh{{r10bN
z$(z-7s{m^3NMY(<ThT&SBB}TgS`@(d0+7oPxRA&~ATJ=Wh{*jwK1E;~AVLAj8xfOo
z7?(#OCV2;t_CQ(ylJ^3+3W4(hPE%F;JDN;76mky%&Bp1k@r@^A=SSkr*MxYp5<W}$
zo-vjeRQL6`Fn`1=9aH&$dd^EzE$3UM;tK6jl>vX?@Re2mIJf+-iP!aDK;O`=U02eU
z45g=>7ZT*0lpyERI&uaj$bp2wnF*A&3&Jgbz&)6sb3mIAFQer;oaGQ`Y6W&^9_r46
zFY!22tRy^r*TTXPV%FWy1$jFm!dHl-%_!t`0AB`>BM2M-q>|}cm5d`{8bX7XpZ#jo
zzuFZL!jdrv5CKI96aWHzeVD&PmqMT2-#!&_XV-}{n;T3J6OVZ&o=p??7gSD07ZDSi
zLSREz!<h*50EmfvY1#bTP@;*$T>(Qte}OCDN(8O|1jf}dr@xKE=Yf(sacUwG{CrKB
zKY3adosa%yzhU~e{TbAlN#`2{vOG6l@Qs3V=>>y}OF_G;K&~(d-i_?qs|%vjGmN)b
zQ=s$D^_-t9DKHmprEbS4FMLZ1T8Q@)z9j`cnPSDs9lh*4aLiO2CL`Y1Fw@vTS9F&V
zZpP%h3S>XNL9huH>h_$1oZbCkoLt~|cR`pJI0oec$9oFWd4Z#OmwB%7A<(uf7hH~;
z;}2bJPJujGF&9B56+~+<f=ntXmy00VUIj*fL9h=BFW7vRAO%EdVTxLaZ)~O*`^+Vb
zDMnFndjRw)1#-=1`UEfp3Q9hM@^oGcWv3RH=MeHeo7940Zk(snFCwK<5SeVH6_|S?
zf4m05(h7>{se^N`1X8a+mIA@I(}4sF%rNoIY(e7kpha%3OfN7uSIVuPp#n1k<zY5s
zhYDgG!puXWP(h&}U8f@@To9hmOv=TR83hR!Pi7XFizj8EiWJC`8Y{jxABB9hJ~-#*
zo5A&pkK96@n{Ni!`fx8u?jc%aq`fcStYuI#_vf2M2#WIl{2&J>Q|}MtOAG6C0mSLr
zB0rmJ3)3*4&yTTz;qk*Hl%BmkKZlJLw&eB%nyR)u`>|_FYQA|;CF)c2`%4qw&&5K$
zd@Y!@f|Q7ry#F34tp)kGDUe`(0i^}U&jXU4Z$3}dg|(5MpC_LulABaR`Q{l89yf*a
zO*La&&&bbufy`TLK%Z%H7W`z6AQ6sY!Miz$&dlfggI4fAVL>X1u(?GH2XDBG<V$x5
zmP`am#AGu#>=8j^zG_M@l3yf}?i?m5<$@f$4@fjWg>#giT~EUPO@4#mEz~tUUkCqq
z=QGhyPhzFs(iaJ9^Gu~awgUwz8C;v!NUn+%8`tKYOv%P^tj!xBr79BN$&=~}mY)SF
z@8ro7lHmL?g5-%cOIfP#<W&=4Cf6AbWB<B5lTFFlx;*(fLGT`oaUheaKrkH+1xSU+
zl1f>hmryC|^Gv0n9@ghoOa1U(ggmK-2Ek&u3j6CknQ0)er{4nfhCJiN%67VWy&<n{
z)9!BeZpix=FU1ItN&)SZJb4@vmTH)iCo_@oqD-VrHO7XeZB5NHy9TggdY-g~;NSlN
z(SP!!&GlRXf4nl!iWZ!VNJq<hDfP=fgOk^~c6RFIox|cyAAdEbxXDI9uoY|GpJ%!d
z3Nb|sk&ej}AsbDKk=(#sG#kp3NfMukhV!ymG}?(;<Y_0ex^2A|a*yVw+uwS|9L;S*
zV^~$c=1S!@NJo+Wkt+|6QHX~dfajZB(_rd<f=mn<#)xum!(<G(h~btDrz3h_ZazuU
z5&NA9TJa@kV|DvWOGw$7Yum#pL5g8#ZX;?o`xl?)damO$V}=#&$5y^3*KC3;_4wB0
zn&<M;=hx((A+1x~#ap#P)*2zE*{#i$W@kk!(eZ6ZC3g7KwZzFa+bR!FljQD{Xc~V~
zZjp#@!WDu)S1QCT>;1X%?M~yTQjB8b&;q%!T8EaJD<iG3BhAg(bas+GIVNW{o*jE~
zjAs=)_T-pli{$L<oLsR()-d1X<kCq7Q*VZpZ*#)6-gRG&R1=DhF7R!G**`!*SY*DP
zbF$=3WWJqa+@*+Fmt#7%#i_*l9LWLO#0C>@MbC#u`;DA@X3ft3%w6}tk#nYWAK5y1
zBWECOv7+l5gJ`L$zX-$`myevpn8vbqm$FcjI}<Ub`ErgaTG?${mLrYGD*fO_EGSJW
zja^E?m}`1VmXp5JC(EOA+VWP0+cAln3<xo&SL8^&Z3g}}<JeZl<W$g9`$sH%5GSjR
zu_k-{5!VsW<yqwJ-kkK8M3<Qf{#P|)-kAjMYjSdK{#<8*OTqFSK<1jCBd`r1Gr`p=
z0q5>ClsFT-!WEGA6DD~85m10Y4kNZIi#u6uiMYje;&dj61m}~b#@0($;Pb(d%Oy1r
zJ@s|Q&&SQK=Q`t`#lJz$_^0g79Z_W5hj!cya+dz3VRBa#zc@yo(_J-EaMl-f1TQgy
zUpInZNf10inJBoeVN${SJi*q>wH9BYg5_0-|38a!l!<Gao0JLThSOBzsc=ypg|m;k
zIq8zXyC#8mU;^*nI=t6<#$KL4lZxU?SPi-I1Je>{YSUkFWmwTjLo}Rf?GC5!a@|gK
zPG>e;<7w*WluJh{BW;763X+9;U>LMd%E`C}bHs2jOjCiB9q$ID{{SEjb25koldFL=
z&XKuWZ~`hANWoCL<f}L_ZK5d;z!3upF(r6_<6V=S93hkWYtx+4v!FEC8NJSKrX5nI
zyv=elTcFP951Ol=_&pOu&2!9fF1L+0&oNV;*|e;Aj+~R})P@2dyB{$fa?*G%1%r~H
zLv!lUbj(V4t}5OR^ONYrBG9eRHePWRIL$b*KD$ZnaJfGFbb2tF@@}>nu8h~+oGn|_
zW*Yfkb{0LP*$sI=JD0ngX7hSWwrpNwL`uB`+7@T0+XY{_&TMhETzeHB1t)`~PMm~<
z#j`!1EprvK3VJ@ffvkdLM|X)yF$ag1WH;x=uhp$tb4ZvC;WIqpv$JLU+X$bX-MLoy
zob0e5vc#H`eUb>5?bo|aia7#yceZ>homro2vW`<kG3beFk&WK%7Fk@2Os44Z>@J+|
znng-ZwyETKbmO_%`K@~(MOsN-wrsP4>|!|h?84Job#tErSwS{DCz{N2oSYVBM`jEI
zBBO6nwpp==<;B@%Q7N}Nmt@OSh{l#0W6cm)nr)hllxk_VX)@A&O0x@C3PEXErP(q|
zmTj*o*;eW2SK@hnTn4wp777@@4cfi!nhW;n=GFdqYc`I~aH7osA&w>o;$_@Deh~On
z#<6Y>#^sDt{?B-b3J86HjC~)^;iT|v;4K)(%>EFMGq3Lff0uDAv_tWdK8X7c_+CKa
zZRoE@;@PwT2VRF3-uxK0TjPbjK!c+RLo>Ng_)}a8Bkd^624wPR)z5L6IQ9nKfpI)k
zb=1(!2Yw&pj@@Qizr<ySa3An302#G@jZ4e#^NVGj1xUGJKU%QQ6brT^*fpK(dVlYQ
zw_k*$>p(LK;Hv?$2Z8sA%mQ-8ua?yw5Ft<HGQ{9`#n9xp5V#A`{{bX#0kRf>H;H@>
zWE%ooiR=fm8-ZO!eg*P70*8ns9k8vozu~=SKyoIK>k$|a7*GJDYmzZF^>aJ{Z=-hG
zUMM2fi#%K%_fPy9c{l{JN5K3Lz)G#cUDzAF%(@|M4A{Sqr#?%j)*xF9hG)r?(&uN}
zI!o2!qGXoPgK=LWOXxf#tpd?&fV@PyBt!Rh%r7)Mk^UjT-&f`EtZ(4F1O&bx-)$P|
zheD@RE#$$Q4p75k*_;-eiquw`dhl{QTkujX|JfRUDQt2sQiQj9O*TZlL8ZUl)pDNH
zv;&85!G}ppn)AR={d5%npPTsIr$J;KoHS=PjC1aAO!4!O+7?xg#^?W4<5xmoph)vY
z1+?9~Ho&LfgJs9wk|)&L)C}9YhDDl`ol^fB6e*ujA3;$a0$8amQ@_fF8VzBcDnC1z
zo%B4JSP#D65eLX7PqtE`ZEL91<#FpI6SQG~zd$LZPAU=*+CG77DN`r;tW!0`Z{0+D
zle3fZzJ=CVNGgGtB0wrXBJR=!ybz{-^0OzW<^;(z9%M~H-xy%|2dm%*A;~<GAFna^
zJh_Hc0(OnE>zzXp{Af;Ruy>>gXNYa8g)Qa^B-d>**JvtR%uQY@c9u2%u3<RgY~qvV
z93EmC!ZbDne6{J7p_a2z39~`C$0gh$geV}8CC~YK$lN6EB(t3kmR;@NwSEVHDGMGB
zHvL2TxolZD0RavigK*ruayoX7VbJ;CmUL5u(3CVs^x|XTM&ls1DE|}M;$%y+F(2|>
z0Rb)HUM-&$-N(7XC-DmUa{EOjm|4>&ahVR7LHd(;Ul~DU5%F2vTf=;A+@%#gxdP1V
z%`js7zjKAGk2jZ9(dtG>-e7bXi5ucAMWU>VHX4a$y0I}{$d!;)`Y3Act+;G4Ea5PV
zUp?~=zNjyBG`+kz2u?a5k@kS5m$v}YPLTdhdD`-=_^Cr70vAJ<?rVx|gSaf`=BucH
zCu+8c!YXQIyrIe>`^tE0VaGkFdmhKdTk&KXyhY2>bEP$H;htrjdnMk8<6K{~x!!;f
z$Cy{*oj5le4g3<uaZ2`TJezd40KbuO$;%j5O}fW`KMZKLTh*KikAbFv#y9}}3IF=D
z*)6~s8LU6#;h$+CzCZ~Mgxrcb?~BGx8Mrw5+AqeNQ(c(m0O>|OVcKCYjTcA?4FJ+e
zW|7eyrve)uw|k*w+Vo^*t~fj{_nU=9=J0qI;goaH!{dF(8H{stb!0sII0OVaSlgq_
zXdT>*?J@h}xP0O#xa1@tmzXiy9C*Ie49>xi9z@DzakDogkLoTr?Td4r%j4#$9k=1;
z#jVl>|3d3E4X)WMrY_s)P-WN9x5`ZfzPOx?UV}1y6(FCuONz%I%7I(pOEf&&oE(?)
z<@=Go4<Kio{c+iqO!)(chRDYq;gq-@dOJL&1x_{x%=E#Tvwlhoei0)O&tNe)b2d$p
zsYI%={X&T735bmvVWpZpECc#9pbPWz@A%FY#(a4?^0MZ|wu+Kb8nJlFyn}FPe1P*U
zSoQ#9N$dQHhj&0^O?+4-;7Ou}&>G~&2RPGR0r}v`1&Dx#2s8i$?AHvbyC!arxD9HB
ziPJSP66A9k^IlciR!f@LEbe?x4g6e2dkAa`kk4iGLf}jy{9ML)2n+^TDYKu#rTi))
z**c3Nn#aTb?;+wbBwYrgON4OTKum%>UFVaqTRe3o38y1zI*29$<nwGUo#SyB8^MFm
zvkfN?KhL%V^ou>=&v?al1BK($Y%^Wqt3dPy3A0l%lw`bSq}7Hz>G(vOj5hCqcoP{c
zXP*|{tPywx6$1GH4+Ev2pRMOl&WuJiV_bFrDMXybSWcD3)6EzEAmf6%`PJ?x`uy#b
z=2|H5_fSNn4o;BT*Kmu}u?bSIsU!8UE7f^HY0ibz2bEW@Okqcn!EO^?_4-n&T7zn-
zM`bz1T9(g@#8(|nyfc2ik4|g+F8u3D59M5}RD2cch;qXpJGW{)@6}Azc@amhc^WU7
zTcrq#tcen_$lU(JA{%7lwaEJXZaf0jQ_WWiYR1;8ahhoTQo>x7U|x=#<`$2?t<s1o
zrzt{HUQICNf&@XI*D<9;O~Jj2N+Y9j{v`Ox_hK@%l>BYl#~KV;{Mj{}tA*%R--|Ul
zuRBgq{)zYc03mwH_hYhkU?0Pib;i-9Z;6RVFGE}oAXJ`>1w~AD-Uk9dmvNtUu&fVa
zvgjTU{0hd=TW^b1(&f(uJ{yo};dsD@u^j4s4)`;SbApVkVBG7#R{-$B!bdS#aJ>&~
z1F7iYKZ+Id!Q2tx2N=iKTt1G;VlDa?7RCTsn0*|}<AB@}cvHsxt0m5w#$*UM3wTdJ
zY>c%tCd;xRzy>qsQpCt=cPg;!0V#)G#Fu2X0BvhS28!>iSfJjIIG}0ct%96%{P8g~
z57hSoe2iIwz+$p<YWk4Jz7y<8KiRqW905D0qlUnh?^p*7LF!8$L24evJ*E;ckZZ`D
zCM5lAr+r1@Mj*4YN&J$h&JCfW<p<(YLukoD?tPEa4MmmG-WyBliag3fZWS`}2Ea_n
z({(YAFUPPj4#k{jNXQBKdm!2bkO{d<mt?si_(J({LjDkWSOTAe{!<F~SEyi_kjvb^
zvBqH5$GJaLrTwI;4uWMrKnmEUbF4DbLHsdS{GXutUBsVUM?60Og~4AfYC*Q2V&O>?
z&(FT39mik=kS_pKAdo|ZUjUeez@2~ydCV68Zc#b<1%U9JXQ$3hD!0wonp;&cZ-cd@
zxl-_tQe->kV9t0&xP*HK>UH(w+@8R(!HcKM9}lign##4sS6-^+?ALg%Mt|4%si03*
z6Zs}hDbi$B@W52AIWUul8^c1AZ;xD{baYst(RWRzr6-w+v+>@Da1ECCZ$@5*7VvhA
z%EB@)dpmYAySkO%CJ+8ACLbTLeldmI*ZhO`Nk0nj!->zUG5L1zV<^rV0Q%!=riZQu
zwvsWITCbZPx((Q7Kq{FVsmR(;p(}h<Eaf+t<0}T)kDxycumb7I;2vN@5n55Z4=Vk+
zn0eIL5cIqX<~d`MRoWBVSM6f5u{jNoT={z|Apekq$M6_Lrh)BZ@<1#d#r`)m$>mcW
zVscvGLd2a7Kpr~A!t=rUBry7d*ky=`Fy;$jI~c=BX(yA@E~tVqAam(#?2E<ZNI?o#
zf=3Z26T8P_L-BNozb?xQa8fGvi`v)ltk$@I=NGW@HH}3vc}t@oSTU)${7aNcu9!}_
z8Y{H+cs|D;W<w|A@2pt8>|arI_aJE`IEDdyHv^f5z+^y#WXbap^ANE60hP}Iapvrp
zQu&GmKAV!f7J;{r^eVuAuWGpYLbSn`6=B<&2P@t7B_pU$t$PEMt0WO0)LzXGYx5XB
z7A07!`s*o?43+g2;ZXUt5r-`g%Q;))sV0E@Pz~0)cr9qlDW(}){@d|bfIsd%piP}K
z0{04OA=ZYN#Gl<amU0#gW(dfBM79nCtQ59^10K`wEWyFC)Z0k-5|SLO!~X_hAc$va
z{PpP}-wTwjn3Ss=xF0;w<<GY2q2BDFv9!N`2lEUhaVshp5MfI49K`en)&r3IFp%pJ
z7zaps7D$Q8$CWY^^J6sS$Zrs{5lK&jW+A}0637Mw-UdWSR=EQ)_(b%S%Doam#r=rD
z_elQ|Ak*<yD%fYWqu|X^-)IWvbi4}tBiyo)>3ACiPA0<X_~{7r09ekM%03$|XAT%q
z4^or;Wn+pTrk(=7s6?z$|7b;6qt0|iSdAYVcCE(QU0iP@Z)gO1;%OLv7X`&<c}fuF
zAERZwU<i;K6p`k0pCVLNj&i4YY(7ggo_bF=@v3*I>b0DQ6KuP@4$XRx=5eKAce_#L
zPk{VoYVCZ#&w5njWj4&Iyt7(U$@OXi*8!IcR(-A-%|tTLRU366O&c{Wcl%bV)6BI<
z+j*+?LZ9V^lpn|VV}VwGpdQ)I2ci!9vmRyfxLz}ZGuUhjePfj$laPzYi$OFTAZx!H
z5ts^)#p4#W2eU^Fm9U!d<Kl6pE8s!U|JN1p3<8S)f!)gDE*_i1i~p=v)LA?tA?2vg
zXC2lOLeHRy*Tw1;{ROMC(5lx$;49RS0>p<6kY9jANS0iRnC^&a1xRiJWF7)D0hJwq
zu#G04fxu40Yy&hI0EDme?)ww;1A+X4*dGDO!-0g7@%#ngT%p!qfJMs;kkWshV)ono
zAMG;DRa)WKim(+f5<=4o4{1DaJz1miQ&9xTUm0e%j*VlxL>(J<0w<t+{Vnlml)vBM
zP5pxv*-a;0qL$ImmK>vH{h3SSU>!bf=I=FpQJ}4)ns0@!(0KWx!0(DYN#Xv)++-!>
zW}>pQPZcNRW>&3O=VXm%ZeBI<+Si)Z&5{3_L^U@isQDs6&0Ps<eyLRxSeT%ub~N}+
zJC0juR_YM=ua#O@wij|I&-U#x|8;Cq{CZO%YB?VuC+eFZ(1-|6)OSLl1HivgCGkYP
z<>c?It+<CFrM834b~~_hiqh~px7Q4fOwRgqn|6;Tet_}y3r%#NPGFEEiQA!BoWA3U
zI@WtSF8S2h!3LLSXvFPJ)p+uDR$kM%ZtbQH!ns9hmS8t!U;^*!pVj8=x;nhgJiYm!
z*U~(!G{%8hu7h$Weqm_X`j)ADG<v5-<Jp_OkodlKOI917a10WE&z)@l4yEI$?wpa(
zNSwc=FeIa+5*kCbiPtvQ$IIxZ1e#uTXok8O@&~miN;fW3grzz*L0P+m?mD-Qp!wch
z<W!|G=Yr>j;k>G1=IGW|u$TwQRk2n)blM=;sSN22V(xLdWvzf_DR~@C!|bVM#pH~o
zd6*tI^HJ_~W}7Ldd9IsnR=QU7(QXj(Q<l-miJ=klQ<l5{XAJl$t7q-0*P~elJorF~
zzhs5y!(pUj6Vm=QOBT~c`mb5?z}AWm#az^WU!}A48tLyRN`GIa%K_W1S@LQVrGJnh
zeOsdRZ7TgCdsA14KgWnayv;PA+1g_5nk^U^<ij!NWXS<Od!XFlcurO?=Em;V`sI6Y
zn{(Cx9@Vw`7QXiqcG0qYPa<;;7DVPK@VQxWiYYvJ6`uTM$xefPfyrclV^iVZi*P4S
zmK+JN&zH$l$#!E3HYhnWgwQ!Qb_+Op%Hbz}b2wQtgKHZlO}566bYPZ$FG)GL=I}^;
zHjmO<JB&P(wT5yK<d1`CEiq&sU*NN*s!ZFul`@BB`TfX3PR2qieey1Rx5^`UfCOW*
z{M96Q6-kDm(T7H%Z9PqbSCLbXAa(t7K75P9C2&IxjX{>ZDJ%6w5`PP_oKNs4_h<ac
z_TizhOPl0{vXskt+!x4c0+O6k{>j20xG2uD8-MI-+Co#tW~JqDhK(~Q=~%)=@8UYH
zXO>yVaVlV1Y|pF~JVRnd??DyY$yw%%3MbyC0VbOkVThAWg9t8q0<<Yv*`MP<k*VT<
zsp8=K8Au6a$+LoB&nh6PS+bkdAb9!Xz?x^7+j^e84M>YDw}VdV33OM~DCczD=-U;o
zW&<=Tc1NY(1bZ(8?e3_ku%iAufUS#~Y_SO#&UMi?%vP994#{1yIcEjmLDRH1MB^`D
zTQ1n=-$34tnzxkXX~#yRz-qOuJ*JgWx!<%QCCZ`BSEEhkOw(15fbZ4lnftLnXGO=N
z1nm3N@OwPs`=WBPCn%>HABaYnVqS%+(OisSb<~(#1m(rvhobWS)h+g>o3OVFhE%8I
zTYaR`cv~7ipMp4fYKXd?3+1E{Jl85_T6FW(kU1=BJXBS(Yx%HfTRD!}Xc&@*N2O~9
z7qN|uP-D)8Mj#32u}4IUrO5b3fITv5PV9dThhdM3=H<Z+SoycjM@Ns!)@h%kh`{d>
z^A8#GVcu@;T8+xLo(5v9?+FOqeml9^@lnk^z;6MhtQdxiLsSGd1?k(*i~9eI4EQ!7
z=^fCl1z2)Z<l{<cTW^tYU^ML;5Sq`o%9Xk<fg=P?SMS@dPb(+KB1{tRSM(F8z&s-r
z5BGw9<A*(&{8haye2X%Zjju$>8hd%W(#>11s0=qdVcRz5gC3*8GjBf4>m5xQ267)g
z#_ymx%6$0SCR&m|9Yu0lRK78rp$P#`85cm}j8BV7N44=yuNTim`!yw>@spwanH?QJ
zyJkU}mVD53o&vvZWdRB>_5`ENSgYp(?FNv?aUs(moH=-`#^-2Z(<Pia2d8BAL|KHR
z1+1)jpnm|6*>ngFN1JxD6!?<>*_X+P%AWQ?;9rpLH0+UQM&)hBMk%&c0_f5Sai>J@
z`B_Xg%jdH+1CDhq%PSi7J(Gg+;s`JVEEfP|`8*bZF+?~bOhaG_z+CS<Rz=|YX$`>%
z$<NM-rey{oj@LWS0>hmEx$g2BrNpiO8mgx}Y%oIqFlcM2#7dzfkEzu-Ktw~EL<32w
zkWA;j6jaXue01U;BCrh*Az3m#`T<~j0IBrsu9ze*6n7QFvu~iW^zQtmT?pW#moG!0
zgb2NTYXq7B0u9xmvddr&zl~RcQ>%Q`g*l(owMzvC=k`j%b@Epb4Kl8L{2yvOdqRMR
zz4#-M5@^9bs42GPhP(~LQ=_R9nSB;)Us!VvKnixD^5E(o4P_bemRGPtL3<&<zep)e
zhjh-@n&4JQ4TKwGm?v}W7cJ8AU!p`Zp?pyh?rE(12Z!anqp94^{8CdVqf~ZjJa>70
z=q=P^P62VH(AVx_Ifs>m56beCgsfq;xE%4FHJ$~IFGTop!UPj;+$E|soL~FzOvs|+
zmLgNedWx}~p+wYnYi+#$XN~8a*Z+HhBrE?a45le&h_ckypq8^;vmG+TXQV`%aTKJ_
zn2#sz$0Ozp#gB%v)}uXCPkqMmNMriEaj2au0HGN}$<>DQzL~&p1*CG~v|UAD8&E^4
z+_J4`N<WD6aT3MvNiG1GyUxG%m@Z)tvZIOLSacH|i-~M2dZY9A%4HgfmEQz2x}zo|
zvo)!um-FUm2r}#(H5pk3<u3w4>GzRKGO`u;W`GP9PkS~EqD{X=62B7eCOQ@qJ)6e*
zc|4v!*QO*$KOB(>!!%8*tqnF#sg1)Cw>C--!ohEf$UvQOkC7GPL=Hc@W_cKyfVbWh
zX-seZBW&HrJna9NOsBnoR?;XHU+n`Frp(0C$%uStDrwG=RZ|NyQGM@4vb`@)jlw5f
zB62g-2+*GoXfa{fXlqMECO%1Xo?SIn-1pXq%&u+&!7Tu}R%no#hItN*v$sWj*QcXq
zAI6PC4}j)AfP7M62?C3W@RJH}BCr||n5NwBCl#cN{m)M-G;(kCvQmG=<9?U1HsozC
zY>)Wfr3oA!wnEAK)XIgzZUlA_;qdSy0*3)s>OH_#s~s>)L*DT4MI`lfl)G;=$m}%i
zL{q|2AQ?bH0N)cp$`B|4ByR@N9D$~Qz!nvDt8u@0(j#ub%77a%+e>co#Zh5Sjgs>^
zu1V18Ih}-ixSah;^d^WNQX-LSJRmp4os7BCOf1r@sYAnCxcUlBs|1>Zi8QIsVDAPn
zLwcT)^17`gG&~&voP`M@nrgh5lImRY4-wlFNdH}z^xC?l{=-Tt-ut*B+zyzkd~~u|
z_nI7XlVy>K*S&`&`)UsqV8_f~q?Be;;F43(NEe%4WgiBknYb^G$ePxy3l>LYNsG5`
z@fNUY@>X=#P%!q2nAOLD441K2M80}x-ns1+>0bNJZLdgwdFQtN&0y>uF*9m89o{=q
zGzHcN<>2?(5%ccPm1{tDcBHHYQ{;I0IT3TbT#n!MiI@X@vIyyGjN-DsZ^SI4enR^J
zBGaoNFO0L#Rh4qqyr1dH>Enmv&AI-OdPhe=%UNSVHXss|SB&M|*nyFRcVqt*k#}RQ
zQa@gnXc8&lDM5>d<9EOL2S>CvQ?~`0MC6Oi_J9!c)ifd}`FfxioB{~Zil&ib=I%n^
z{|3ZHTg^>ICIK7In5z&YZ&lt0Y%XK2K#aUi`82SF0Qr<&3sW>3fWHOErV$sZX?S{}
zA<rZ9h?M#EfaGh??gr$11OyH%FaZTnKVsH}M-ZnkqeR-v%P3NE^&_X#Xe;_;If!r0
zGz+JL5tsPp%=U78vO_MCZ^@K%k>>d1t(kJzEG)HgYi1R#%8+8dEi<12GOijq+OluU
zY<>iYd3EECO!F3jy#FvW(=?4=u@tpuW=3d-xo_vrOu4Ek_#2nGcV&v3Ht#*p%9I6n
zF!?H^%+8cnXZEh<WXiKtTy4shHZN0_)oel!Y7i~s!A#j{GB1nNWa`Tz@efYI20^`s
zD1_cH!M-Nb=Az!l*Xy+VT$6c<ta~4uEy+DOBw5il4+9&MX^OXxM?5C8Yc27WnX=Vm
zMPJ9X-yWvKH+aOu5{WNT;#T9jV}Y1yv*7uqanpzUWp)s`@@9Dd%m~Zd^rV5A(vz&{
zxY1D3Tb1ngID2Qxmy=EH_s$%^+P9)_P6Y8)8K%Ndi@9p9$}k&(^48GR8RqreHSoIj
z)fu^b@ibT(6QrTMpo<q$ugNg)Ov~*^6EftMP!{~e4716Hf}fZnM`hBl9EBI=CmNl>
z)6*blVn!xQGkB;KkZUs%+{m>Vxst^<A4STf3~4K-gI|{+9Xx&fCAb_aBSfFn>8&j6
zE=cRUGb1$qMhtwNDv+mO1MVpv&XCp+Y)xPFONQKf+aP@ce0fr4!63{I(<dMw$(b?p
zV(si1Aj`-s;OU{@DYP;(Gn?;%r{fjfNTy^3Hg{?R1?fYE;N8bonYn!sgDYAnw4)J<
zGM;cJn0sj%uVNX?``EoQ8uEQ?7E*6hNXE|IrkH{Y=7FtuhU`U{V(Ohy%3>1nXJ;hb
zOK^@Ud?-c^&No@JtkMc(yMxhtcp5FUtn<u2__W{Sm|W424jD~&hW1bR41UTK=cqav
zarNursVx8}5;_|Ly8-LSm@$Zv5*P~Xd_d}VFJZ|)-AD(UhTv4?XLrv?nFEEsKS4GD
z^j8DqW>uHcIe{nX2EAGJCeYppz%*tlPFFQo*;Ycx(~|QJwY&|ox!|~)T+Xp+CYeWO
zzCbcZc6jfAt2%`pM&h`{!oX{l9z~<8G9{Ox-2IFYl-&4il-!VEAgJKB;*(JFD4<}-
zMTly}s0~2h0>p+{^)uw6umiyMGUg(yfr&{EVsZ(%q=hQjiqXv~eFWa;w{Z6DXi4+G
zaaEfCcFmz2t+U_4@_zft;BNpZz$pG(_!Ksd%YcpogjV*z^Sp4zm}!=E7x4c8P_=)C
zrJJq;whE9*KXNQA9qtF<-vAnpOUD~V&=eavX1JAXdQDb3L;|w6qG;=Xs|I<YBol$|
zlacP*1CrA~+Z}*9<B_&?nibm%c`d`qNV^Wo<Z#yjaP%XW^MW#DT!&k*kj(m#$5%LP
z&ZFmiezj6*c&KTaM`JlLHID`Qp~T}bN1G3I2QhGiCbJq{v6N>;?`MzuGHje-|6I4D
zei?2m7bgt5T9SFb(e%MxVbcfE>Ao`M%FetyY&;&^#O|>1cyNBZjaVz%vooZuR3*=Q
zN>+x=>3DI0E5qIB_0l1DwGnJ?A6R2*idx=OEfD>t(PBlnL?QaQuo;Vfp=j}i&xISy
zP`(Tk8YH(CSNmL7AkP~iW>j5b5G(osH$fMwnDRVV%))RZiU|tm6E1Ow_8{IHGG(@n
z#Ii}eHzaosn7d!T4Q2E0m-LaN;rRE3QZC`P-D{_S@w<>r%z_=;0NHO4a}msekSRr(
z3myo`0BUYQI2bbHgIpf-z4FMM?}t$BkZ>p@Lqdb#t?26ZxUgQ6QToX+oC`MQ?!wHO
zzXJ0QJ-byt=6UGZJ45CI+5t_`r+0>0uut3l(VIUF$&;)RXrmVa(3?LqG2?-aW6O>9
z9S7RwAyWy%ATZ;S5xDnZd8m<0n`Pi$9_qyUwW3$t1L7Bycshu~lKw)dp-I0IgTK8f
z6ulN>nZ20llIumGMx4)PTsq=fCbw%L!gi;E_|Z_51E2jVHA_`I8j>l4A$~NZGra~6
zfp}IZLOFJ<z$Km)k~i%$q&#PZPLnyb=$vCp+KMg>f@4xhZsN4h^EfAk+H+=NI46b9
z5KhU>^`^pPq@HZ5#ft7=^<NUoVxidgdQvV4wX2nKN$7NuB6kK|rktf2EAf(HD3d8e
zKQUD|*8D>ajxL0UWVQzwb8bhSOasXI!2zLOEY>%GF9pPy$$yzP^CR$Y7{@j`$TZR7
z5FXkCGP$4`Y%*~&@Rk5)hN|v=G0y!#DLskVJHve2xnEORu>aCjvwlTt;7LuTgK~$Q
zXumulXPA81Pk_hN-WggTQq^aKda$a^1gNL69QQWd3eNUgA-g=z_R1;Kt@eh~^q`I=
zFIM#5^}yLkIrEBKosAMX8zpi!QO?o_LzcBVU3&eJRi^YGM=9}V*F1l+R>JD^Q~1E;
zA{1CR79>BG@MgNa(PD>j9FB49*>9!GbCvTD_b))^$cq>!7a~mqel-A-khSUJ5>^6R
z#u&PWwdvwv{{sFMpi5;3yd)D^yjm==8n*LeG%fa-1=XkNa^cB@4BNU2fYI=?bh$<4
zZeTM3G8%rKE|;u42mBdQU1oieE)&O<z*aD33}R#n@iDM%fK<-Ub5tkJ{%Xh@;&!E%
zT?Qk3+d=j{=nnwoGuX!v_yb_299)X$J!_2Bw$%$}+ux+8zCy0!NUE0!Er2`@rY@Z$
zbpMC3w}8{4`X2vho_S)P-DjIvy1P51TN*?{x)JG=5Kt)zWx+r}X+bf-0Bl51Bm^-5
z6>L;Mz{38&&%JkMpI!NUfB)z8I=koG6ZhPh+jA#)$PAMT!p{U)4w!8$$%w~!+z{_F
zZ2uI4QsbzF;rC6r94ii=^@OOBR;6*ce!eo<_9NN(b5e@5e-$uY4yZYKru9owRKH^M
z+}wz~9W$MBl^=(((6s+ZivC_4&*klyCaBZ})Y~zhoa1X~J#=_G=62DMw_}DOKLoI%
zVtoI8PiUXPToWK~%IxwYnvB9kr6h04tbbF>WMiHYn>S^C5G8px^9~f|iBkA^V_U6c
zMtZg4(5j!Py^<&^Il7Z92~30aAS(9&ftw*d0yzMri&*GRLaL;bRX}J3L?4iDLOcwy
z5M+)Jk3+lwvQvoN5a&U@5@J6@feb1m5PBD)BS<SDK7+U&WV#SPKpY0yEyPub26;Gz
z285i}0qcH{`9dT^d=2uc5CtHr<V6fn=k&ZJI@X_(#451@b4!v$IZ7}bnSp>hr?(Vj
z0ie$5T|KO`(zZOTv{xSN6_4-?JdXS}&%lcydjL0jM9X^T^y<(YzGccP$2mP1%EcX~
z6lhT>cDq_Eqhu-L;!zB~<;Cz5$OS;Tc))kj!)RR9PfkBXJp(MTSgC+YV@Z(Wfcv3Q
z_FUu<a7(-u@3wgl4Tf@Ym+xXNaj|+V{eTxk9Sm0UV(1HUBcNQ|?z`w=@h(2$8JLOu
zt)77;Ad3O_<y<b-!o@DvauJ4d@g?8I_TplVSiVuEO)fr+!3Vq;-T-+8P%f_YUGy-P
zfBanR;u-h?`LmvZD<GEucT+AG85+2^UCTun%Ei6Di-X0*nz4L|WsHlV{H#cOF;s#m
z11J}7^<DI^_*}f=x!4~0c7Q7An?QO4?p?WDY=VoAU&}=p%EdQ*7jG38YsK<B<+(T(
zgCo5dR)H)Bl#2s=7d<TA#rr%1&mh0UGq4Y2FW`>P<zjPO{ODRP!cZ<A_FcS3T&x`{
z)UB+^#g8y}%!?tCNtQw=7hCx*dRV-R^*sYs(5VEdTx<+-9pK)W%SEQ0Zt&nW9v2wu
z`zu$Ci}cI}i+I(lQ7m(}#3tWg>5TFAfLbN+B>4(#E*<~-D<hB{0+10sQBU@JjqQ>V
zjbe>L<*+;o)*Pf}0;)6h<N}t+1-~?%=^FSCC~Hyanrr&jJPcv=v&Y3s-XfNzo8E=S
zbAa;Mlg!rkbo?&+0J3kWSajj}oz_d@bJbYh<npHQK1AvSpz{6-$VEUE-Wk8}JS_ex
z{Y6}p_B^2gWd$e$1wpuO%yKW~Dm>QT+@G)29K(oCA%*!5nsob^mneH;tnd_ZcOhaG
zFkTK&8R6+<YkNAu&rEjLN473NEcH>Z?#JR`o`!vEtk@}ur9EP8(P-_(;z?#}dpf~$
zCYGMa_Rz6RWF4xLAB%^X5iGBS#fmhmKrDA6HXMziUM!wuwzj7eeAvV?1=&d|ma60E
zaF60fpd$BjkB3-9`0YUSubq7E$i#2^nExOwjk)(o{K+h(Y({>g*o(AeY&6d(ajO@G
z?PamVJtBA`tY;D0DS}QZQ>-rzw5)Go%j87u&PSbH?>oBQvW8NF0}?EJxDAZBw-Ba8
zWr@s+t|Xfen<)93tigy`8yOHQJ&LpiHY2u=sP_V@%st6$ZBHk7(&W>-$Q~1SxlN-@
zz&hv0;$i7tECXYahb5Lmh@C~_Gtp|$m;C(0D3vv$A4^6Lg7G6F7XUZ(wr0s9k<JF<
zdk1%m8wS0;!Mu{RN5l#>sYHBd5&H)te*r30o}}|1o!~K(s-%Lvp92ufg{K47phG%(
z+s9a3Q$Kr7EP1)al9#sx3!_mG2t*+&gH#maZwxdCX$n{k%95-}#@rfXWH=+zP$d|B
z5$OVi>O$NLvRH`b5O09IE<`7Y6ClTdNMY)qXN+}U3de32E9=Mrw<@g9kvRicQK@s!
z`ibzcke7%avBdhKB=zqS3KvDmS!fg_)4Rep8SnmK!m}$H!hKEKDwCDlvW1<oCR~Kq
z_~9~pp=P>XC5bOr%Nb>Qhem^_tV)O1!gvGG3QsYdts_wO#=XlRFlg6j&eMd4@9`>}
z+g<!5(}84vf}`d@kz_Roathhj-=xqPvDZ>RiKjkF{sX42`3~1QpxMP?JB<x-Zm4Aq
zjh9t##79h)h^0H@xyJ8OhA*bvDuxhKew4Cwsk)EvUemF1J$e}a+ewj5RVf;2{mbHb
zaX_{Hok7|Fs{62vcc^+!Yb)xYaBa`P6yzs)2Ihm@0k~;K#TzQKIN?@&UF+u<&BKV?
zPW@}JS2Jy^uef+6Dd}o0TwDd~K@4UA>B0%EC*%OsD?sQ;h)W>f3-KaEMq##LfY4hI
zbwFwe@jgT^kS;=e4zU#EP9ZKryb7{Qh(95|2Kf?D`Q|z0ShtH)MPmgPR5ST@6`3o5
z%D19L=rsYAZ}Z;tQsQC7b%4sZF`j|O$X^F21D!xR0B)91_VP_;K^gnBevW+eW<mK3
zlk+CxVzF4>^3{!tgD`lL7sEo3d4O_pknf_0#k-i|8Q6mSCeOh0AkPBs#9S`Q$e`)9
zT!f)=vAOT!bK+w0SjJ&5hJzT~=f!Xl<Q$+}Z05V@Veu|L;~7XQN}~#>Tr2`o2ynaQ
za#1E~qp#(nH&GkwyLeb!ED=i|SHt9DRSZ`2VrUQ222d^*_g(a`co%Q<3=BbjkY`{L
z$OOQxk;_GysNH`p7rlv^$K<s=aj|49Us_G$;sOlL^<vl#vIS5sTE2@O7VqL!&&5N?
zAM^~I0{Iwl({i~e6Sdc`<)SxHJK*Qy&*EaKSia{x7cXG&TQ7!;VmzdPa`CKbDVQo=
zqnTOb8K{YTbwCw#3y@}jdpTD#BNMfY*K*ODs9o`0Or%w}OULr`l4eF)!W%Kz#fxDU
z$W%bNxYu{l!{T$XiD%#;<X3wJ9tYV5xbNn2u{kaldc#t`98WZif^s^)s9|!dN?a@x
zE2P|e1!KEC>tBL=3Mlv1n;6&^G+4ZQpL*^EiqioDDhJa+QUP~oF85mFUfXNA2ZK&O
ze=EL!xmQqJ^D#{mQY<;6N^SD90%9dFUkuPnHDA|4EE5{cS2~mw8R98bN1>`HIotPY
zfnNq%)=b!Dq~IJh;c_Hur3sfKQJ<M`ITE!?hs!XQ4Zh;u2PmA*CTh`rCr)>;2^ZZf
zMpwVHcHFxZ#rfF`Iz%R49p#U?)L?}#v(Jnd#pkM8Mix|^cTM>AVH{(R3$Jf_?K8*^
z$PN#;iR;as8{&w&d?6X_ME_-sWVm8_gU_|XC64Iq)91d%^`vmN>s5LCJH+%B!uF&_
z>UPzUG%~Q;$RSq!Cdrd}Mcpc~ekS*TC8<5D;&mt&e(VIRpS{+uZ<g~HB{h=GnYNT%
zV?do!x+_T?JDCAJ8BjMGEJ;$Qa2|qQDPcETOLav1p!NX$Z}uY5aaecOmF;G}FMD57
z5xHJ9e+kS3R<s0>KVqc$43fc$7(IJkQe+Rhfm(>wMWLorx@RzbjIZQjsh-lNq(HZN
zC_RB#M-<uvfprjlLHYps;|(~zDc``+^0rbQjqE5uDbE0z4!FOVm|q;sKAak^%7%3f
zVvkBz{_Q*FVa6{uU6Ufa#jy;;7Gr85kYA1&dy<Zi`8xBHqUwn81IXS7P!U&{7%Jb-
z3=4bmP%&n9-iQnTHapxsWx^%ZT2=<d3@bBEj-<-mp(}<hMWGK5-jP&GPDfiAk1l{e
z+3=gg*T;({C)HO6=`v2PhTq53$Sl!UTatZ})Gg?;kKI?-47u#SuineiRkN>Fsvvvd
zL-aNcSJK&?8E)8r#ni^r3yI)s^E5TJ^RJlt{^&F0!Dc|6ZTTzKLbmSzhW<surdWT+
z)aL~nmt=tgNc(*|S8>GD;j#nJy8-I!zp-@L;K(S&SRY6`-c_XXO4w-VVG<_0f>x5+
zi+&LL9w6_u$s{SMpqwW94Ei0BtIsjAfZpJ0QJQuSP+M1yPWe{oO+eGb#L**Z##yZL
zt8|Rir8Q;`CNrO9l}}Q~mEJ?{HPM$3kW@&@khC`~!xA%)HiELRs5h_PfZh(|mHq!p
zN$Mz6m9nhf0g=ngIgfru$6{N5N+vc*iav84^)B`9fYlzEhCsl9SPQZONEfkC5kkIz
zdLIZ?gs4^yn?R@@L=TWQK+l#C#mSsdE0FbstOO#md;N!rmT4_~drLUa9Sw>0D6FrL
z`3wl`g@~2sr3k=^$aZF}v)Wn9>MdGNg%c-=v;V@XiBMG_a0Q|xNIM{1#6mH)Ge<xT
z0iv>>TK{t|&D9N7(b$#E)4pQz0Ah2HpA7`|Kr9DY3Z#$5WPuZeIE{_+qEVbaM@b$S
znrQbX6D~amVdkLj*}okX2`zxy9`5c;J0c<O^=EbDe~chWiV5xXH=(jKe3vmk2kEib
zG``0QDkGvV$ChYd<OA1ZO)gtL#t1|G?5auWnT<%OEU>O6T@L|jWy90S*7kJ#1=j7z
zJ_Znre7E+Av&N>6X`19TW#%cd$R)8aqOnJ`oWaH|na_`eO(yAEgq#NqN9OXk=iro$
zOZT&yW4hx@*=grn&2lr5+-hn$i{doS<j`oAOM`|wPF9LczhHiAE;%fRvi_QLFL|w2
zL)L$$6H47Sn4j=}V};u^CgHLg@-~TnOA;QHwU$CAiA-G##s<3j+2xY*%n~J8clj8F
z4@D_*1JBMH;~&e_Qt=BXMbn!gI2YD;2z?C%CP5@t;Q0aq!y(FnlmgO4C$x-^rcl=b
zp$8#u1i1llwi)Ac_Tn$%mwK!g{#15a?z4t32T3#!cb&r~$x>96aVEPEzc(DIx;J<n
zRWJ<BGQ87Qj$@K9Vl#7#752qeoz=NhlMd*4PmB+i(=jFTLA85>`VB?tSQ}A5T-I}&
zR<Od+FEl2@Kc}oA<f;5g+cCv_^<V$V^eT|7g*J~<$gUH6j4(%pR~E9Y5*sJ6FRptb
zFXBWKzrA)Qt+JdV`Z-qqUy70|VFwO@sILe)Mf7V-of{iQF$@9n4zYgIA(Npd0#=D*
zH}c+?iQtsBTvYo@mlt5%tq!?tj;Vfh87lLDWI0B)C6*#*dJaMFm9UqZTh^mGEL@R2
zTf$WLvn{4hQ}idSEpV4Te(DtKe5}c*I<`s`Nzi~6tcSf4<#=5zQzCV;*3V5lxy7<}
z$JCLC<0$R}(&R?>-7)py({`1ZwE>luU?6XE#&vSt{E=9JbPUXbF&!XmsCATY44q|(
z2l^#Ib*S&eQs>~n5$Hoojw3q9Vo7q?=QQ+5KwU-m`)Tba*OnQKu37!;FJjTd&3H`Y
zPVw)NKL=ROej_GVZGQn<MmV*t@UJFV>a&yhi8djRL<G-GwGU^S@Cj5#OC5L^>PO#`
zRNAk_qDPTe2Oj<<y5GdjV>AMuoa19U26Q;^FiCXez(bkJJhOl{9x_G110u#b<gmsw
zUK^pBBB-tdJ#GX8mWTP)z3V_*BHUaQtZ+Z$GY6b3r+`tFhvbS$sx+UqOt?HRr6_%Q
z1oRx~>OcPT5_Q7fgX->zQ^<Z^)?Z6lJ*T#(sneS7XXLLGp#4NFTDzsm$lkc!6;K)J
z$vKvX`AH=sU&2$Bk#mrrEy-1-be}0VrrahYzY;+?ma-h7r6L%W(;|EQjPx+yIvH6&
zJd)EQYf*Sel)?*)WjQSp{w0pEBK4@|@0bwB+9nZSh$ZzG8`r~n68*=NjYN}lS&?=c
z8bVg27a=QEPaP*?ZQ6Oxn3KX<XPC25@}iN#I<CV_VNHn7e?QBebH<P;{G3Cfnb*LD
zzchKFrj%9Wp%tiAi5y`{{8d{<#Y4-GsC6-Y#8J|#NA>Gs^<;WzW$bPNf3@NF^7*Sh
ze!EWaE9utFp3QQs)~^&(ujlL2@s(oN%g8;}yCt$!V*0)NGR$Jw7S+Tn<Ob(KG%+mz
zQQZ)gXq`FZpgC*kw>eFqiH!9SwG0tm15w)$$NE9k(QTs4IqJsLOAj(dsb@kt&|5DS
zZAS`YTTdcgPp6=<Y(yo|b+(I@RG$hQYuVSw@=LnZdHnV<^+tg{de<SAuv(tR#<Df2
zg9e)*zU<1!#<U{+%w_iAGbRovp28+4WtU9nRN<IDU8^#us7Zm!oMMJhnN!>lDsxI0
zLS;@#L#WItWeAlyr46Anr;H}7j7C%OBfs&ZocO_M#{4mJO0}zGam;WB`Ci7fm-^so
zET*oWP=`R1W9n?KRbp@zKAxPYCUeJG+n3*=B=wJ8u77{i%l(n4E|z(Rr)D3ZK3Mx_
zVg>bq^(wX%1k&Ce$Sf~WO~%?n*8^hj9K)@D5>?5oF7Mw&)#W`0b2Si=7#gy=FF*RB
zJp2vD+;!b~RPTb-x+-Tqfy~(uf${u#7HS=kF0!Hf35iuh9SCiL=m64Mh#e5iK}HJk
z5=71Fyrv3-4nnK~nJdHx5PyJN5#lUFks6E-fzSnrCLk4s_yb}c$QmFb2V6TEpDpVr
z@p(_8JGC7iE`{|XGP{7l9EcA=jsxi;7FtcnFHn~OWu}e{G*#077BieZ9q5@!s>y;o
zpv)8oDF~#CSOGEPv@xnO395mTG*>bS8fe0$fywSV4yMM>Q)Hxmo5bt(HR*_9MHWhE
z(`b-o%lVjJDjpUQ9zXkyMEA6~DO=8!@Tvl!rZAqQ<7<05{+4q?Wa|U;4;uyqtch$x
z=wC`+EWe)^eXI+X?Sbs4BGnei{295xxBNK)^(qiJ1<|1vcNhYJqY!U{JPTy*71?L`
zQ>V6Vl>pMkZkc54$=%gu3MpjX+)#Otd*ROqLUka{fV?L}3y88T$D{(G&Jc@1<_OUj
z;(d^pg%}0Vpe_@CAT$+XJjhT$O#q)W>EbYo!MvQX+ayK`w8u-C0B%HnJ)m;WlXU*0
z<4*v0BKtHz8Qt?7duV<v9_Gi=Juxy@V%dP$UNm0yV(}y$U)$3OE;AeG$B;d$W07fQ
zGTRCA<GDAOA|<4MV)!|UMW&gbq49}mMW5Kih2<=o%a5gLgB4LUAqx_nk{wWb3$Y6*
z`~U=Af{4^(QUth-j7lj!l`f-1mY2Ixxz*_9Ni%wpd&H!+M&%Xt_I_+0*1?NyNuqmB
zV*3!WA{Z|O1m1?I3{nvYeF<?LNCQCKC@{iU<AXjvrp?(eq}SRa)>1bUDe~<AeH-Z*
z-vtjd9$5C?^vEeul3N=4pwLT{!t;#63OX1)2AaqEnEaSZ7)+58G9WRbNJmV_7-$sg
zBUHT0sdi^s36h`VW5pGXQpZH6yC|(gYz7KbMM+)Lyo+TX`31O(7QwcO&SDXi8=+Sq
zbT<$_Y-F-8cRu55O%$yg5}ltst#xQT45(L)Jh`BijcK3cqUWzgNA8h+3i&4hD||IR
zs_-=LiII`rB15Rz!54;*SCUG1lJ-r#g(Ulu^6SR3S|b&#?m%=(nsB+xqK65m$~ePK
zxHOTAbhw$3c1_RKOop;9-Nv$mv(Tta84|GeC>67q6v|q`x&)Pxj}pn<w|xI+^&Gzc
z^N3M+lDz-e#BJvG$Z;Wv;mc&`7vqEMq6FOaR`|4GE?rKu6)^Q=2B|36SvT~gBAjT#
z_sQVZtM(FIb0s9FE+nEYrhXim9Iyr(b>ql-;qNzm$&3Y>Z$_~5OlB}uG36sNPv?+X
zofe;Ama{xg@?;Ll3LpBD7j=E`_BctWOMG8-HJ8m(agtSXNRG-S8HwxrdgYKjm`k!^
zoaF5}B<tstbY*!!emVQo;yEe`Y_%>WM-$}ds6z^Z>D=LAIguFsjCj<#)GJi_m!#rX
zjnGrg=UKYH8;6Koh!X@K0V4S!{xK!YhLb#R-zO$aMJ~`1*3ZaX0s>tjiq>ac9SDqu
zr~y(%i2e{AK-vmX7h*WbU?D0%%mtYRq>Jg$bVAlZ-3Nr`L%a;K3#gg}@e(3yy5iwV
zh|`3A1nA2*TNT$S=6t-t{6)2miGiTFyKpz_J}6uU)a9Fj2Iv6l^361m6u|9n^yTtR
zJra>dUsfU<$FLHaZWO|#3~M@DVcA-hpIkoa)HZ}X4b8NSD7$U0S$tN8Uu~mKTfb)Z
zR`JpQ#MQX$G1Lz4d9a-EW^g1cb5EJr=JHIgFyZR0k0XYV)z<fvklY?*g}*o9s!99B
z5V9C|)d)!&^@iyIq}r8aIGpXqpuE2CYPt1hQ<cS+rdl%l4$`~g>iL8mW~}Ub9(4wM
zWLCD^IoHgu3D?Rmvc7(q`5Z5l8Wc;pp(k(P)Pqh}0j<EwQm{pVP&bGhL9Q2K0K_Vg
z1wz~caR%gFKn;nDv;8AKP6tV)e?OA)_6^h`8Ce%>Xj}OJH6*SLQXNPaF*UO83e_G^
zX6`l#XLciI7+F8-nHi7FSU{PX12P*(7co7uUTsumWW5w6vR;j>cgE$VR~%}+wi{b}
zj7^-mdS9WMNr5+}X2wjnE3<~*OeJMz#Ez2vNhD=^50kcg@L{Rv)MFr9#3>O|X*&S*
z8W0sTyNn||q6RB3QSg&=-shS83i&SpmCm0)E(1D=d*hNg4tXz$C;xvX(G8o*`QH>C
zHyj!zN#U1~l;t;?6b7%OU;*V$QILW_x`?S1HiW7Ts1$zYr_jUVQ#jo-*$4SvfHFA>
zWCWm7crGr5U6J=vXkVj#|F;m`GuKL?Q^bVIJB8bgQGF9QO^wsYaA#1Z--+kyt8Zod
z_t!WB=i^0GmzdX795IlGr%8NP=4Eu!T~#tZ@x|27$cY;@<K<L~H$2Wtwgtu(Vu4@l
zj9FZ9XoT*N5PsoU%IEU@mVp<l$)6eI<WwNk6yjcxyM^cou@mG;A^Jdk2J*fT!yu|R
z;#OtAJ$X$RYSW-+??W(TlKt)a&F)2!N)U;qbm@-=-J#PZAT$uHGv-<Wp)nAPKxPOr
z1L6aaw}GAuAv%ftB9OGk%$fo9xV2{QSAMoN9KO9Llw78_sf@LdsRpQ;(+#8(kS=1X
zGLD5B38>20-1G*P<zbxOP(OLxl01{kkY55QlMjQe0d!^TU@S<B@@cQ^$~gL({Y>0k
zJ(#se29>61aeJBsndeS%aU^m-DZk(F_!5>R_T^BtCfOM{25S$FJT9K?gK(R0np%kG
zA$mcy1p?b3c7SXK(#1gN6GDE3`Vt6z2T{4HZ50PXzd}p}87YKwU%=W8vQvmuh|fXZ
z6QT%2jb^N>1EGo#i$JCeQ4it}$eTj6g7^mHtPtHGBF#Ah0fYuX)B-65s2#lBetCMB
zKfD?cavS#{xw3<IJMwb@eOmt|qvTkdC0_=H(npA(><_L)=xz~Ilj*;G>mKG!jO_^_
z_lPLTWco=IwgYO)?n!be#Atgu{$%=PWM7m>^qy@2&JM_rs$noiO31WO#J-7GWHNmi
zjkiThjVpikl|0N>x-V3)t|&=*PNDFzC`II6^qV++AU}EuN%#heN(5y%_5(uS0%|xG
zYC(PjYB*L3qy*qjHrjePrdPuG<jgjv40^JfY32<qx){v&X?iH}kVGYu)tVTq4p`0_
zlSBC!q5TM3+NSIokxb>d?C?o18yPc2`g%efI*SW0roz=)Rrp5}uEtXNOg70pu$56}
zROYlb;W7^#pu_pV=50)VHX4qMz7}{KHIHM*^m=bl<Qz0&GFjWG#nh3vfLq>jzB5c2
zdA{t~kbH6+lZT>q+T$?kk|hoH6!IIkDE_9|;VjrSOIyxEh9|?n8vRs0m?>&z_V7>5
z@T6UrYdM&JN|M5I@I-zx>I}bY2+5xCSB9v;f`gM3H|?8mBG9``nR&eNWp_2FwVWn#
zvfFaV4l=TqGc-=-{TwpueS6d&H6^_#PS&N7q9&Lr=ka)1l0)LO4{nKT^xIMAT=uwB
z%gI3vQzfK#^!q<*n*72K88iB{UgO0)7~A#gw=FX+y|%wSv57jZr&h1GC$^K*dMUEJ
zZ9kEy?p)Ac`F<)<UE~rQ$0K1strxasv*PJQwF|3vD4tG~Ym3cczo!!mD1yz69Y$GS
zHldfzW9pWNXA;d#X>y0!vx(|H4K^kQPq6Gy6EoDIFDs)N%l3Ab@mv;CwdYxh>Y6xx
zL@X<@ok*vs%ivZf=9jrtin<JLWnvleL*HbvDlu&kRVF26EGAba7Oe><c9J~+`@Y1a
zenP0bv+qw-H$PR-7cD)Q7#0@$Bl{jkvXb%SPL?0cPEulH$-`82eO2YeqH>2*%1#-I
zS4mV?$!SljBxYuNQZ+HZ7)Vk1UNx~~cD`3j%n<Km-%r6njl{f-+d#D94@4;;lH@p+
zT~lYOz68EzVljy{X&OaRD^YFt$5I&Y*tHWg7ZXiPZilz)=&aZITQ^ain$*YN>gf{Y
z3~FWef}SWuTAvz%MhRU9Y*}haNh0S6sVc|PtbspqmDlBjW)Dina6<+gV)C=sK0la!
z6e+>W3Du-XI?y0C1qu%vK7z2$!oM5(4j>{oP%kkiIL?I;``?6cp+PjLas%~S$Q%GH
zC*dJ&U)qSKu;nq*=V#9TV5W0U#W<OvIb>4Ldou0gWESO+Y39pJh?Ci#LuP_6b6=dy
zu^ck%eVG^HWPZvabI_By_47EH{G>QLT~|FBC&0#`{3Pwy<&asNo%T4HfjMM$_%c1?
zWbVu%)7zJs87H$fhfH-(CcNCp$OYb3zOSi~8Aq?9<bFudTeK3cpUNK+^d<Kt_T0@O
ziv)Fj;k<b&F?`-m|LnE0&RCdh9*!iGm*?>_3jBQ_O`gkl67)s!EvYO(-mz21SjTi&
zMd-2;{`iyZN6$0ntdb!1#|cFSVKwkFtmeox1uXX-BP44plF^-6V%fBi9y+S;=RK!w
zJQmge?X_>Qj+iWu&X3Vj@=W%}OdmiU_WUv0K(>tMKu-aZA1%&hw9(@796kg6l!VFC
zeJNU59`1Lb4@sCj*O#M3#P$W~uO&<#@5|AK5|+OeSNQ_m7xGh7HM#?!s!GUM>*r{p
zad(n6tr__PY4UxDU!rQuu@-bS36ss@U!!X4u_ttQfFq{AM%BLOWT>$~rI*RvQbeaN
zA^9_^E+Kgi#tLDMOQx3|%7BJaNl!@7mv1~V#~FTJ=geEvnDxOY6N6b-rRy?xMVrNe
ztS9F1`p!iyEY((WTlcv00$z_x4~Z&APv;Ta%HeWyXQov&Az?7hOY1glQ2^1yj6%1X
zSh@7vVBWyfE}IaYF^qEl6tP*zPY2Xs)suAoqZ7Qt?EI`k_8x%YgM7*Tmmjsed_f6+
z>~aaAr^T{t6Fi30Rv;X_q-E4LfwRW*W{hRMg)E7bH7{qs3E#y)<V;-n$8i~wNP4p~
zrMHtSQ=EOq8_B$SIb`?b&Oqlvob1gxWHWQwm3<@ziEdt#j+{kvF1KZB30Yx{&=sL!
zTtygrL1%<igpYKT|GOgOi}No#%`0;GMn!ms*w&2H6`_r;2>ZzPU4W_xXH2ZTENU>n
zB6LoO-hrR0B3woOXFyd1Pty61j$aW{+p<Oln2PX`$s9Hfr6P1m2<;KeQW44`RT>C?
zlcOTM=Xpa#IF77W5&kmaQW4I@h1ZJ9kUXR}J5weEb614l;)<$S4%w@@Gten{S(l0w
z>!cjA<#XBfDng4mjchLt=C*8AdOwLqWefv}Z&r{eLldIXq{R*pY7f&yT1^H#!xPkb
zy0+v|EuhFW1^^=xqI)~?SY++c9|#|rpe{#y6#iyFeZ8UB_u6y*N}dl*C{Sz^c`jdX
z*p1AyfE9g`hkT_G<dnC;{3<X%A-X`6UPJ616pjF@3V4#ve{_P2Ok40NvZo~yUD00h
zWAQLQmL&<%A0!rOan7Uhy%&oo=~y1->G&1xPh@{ru|(vR@MRZuqG|6X(OC%z4Q|G=
zyat}oj%g{N?u_u{93|(!`dt8iegL0kfBd5FvxjNxSYDkFT_=`hN?#t0vZ5(hJ9(0h
zk9j)&l)fIabyO_sYVwjlcs`dApC3sG79NddxthEUQmp`WHTeLLenQCA<P$;00&Y2@
z?Ojc-*Av}&G9gxrc7pbfI@$Z)Y%!`%LN(F%n+)T`gG9bEA>3UemnU-(<`)3rEk-7L
zCwGUb;{mIkXe~_$E%vnTN8?`6dd<jWYo%S$33aT#qV-@x=v7Z^3mTh5tGJQT-N9X6
zg`^eu5LvGk@T!As<o@J`OOjdMJZY4KnR<(-WSFf?cF6##i(%?4le2pCpDWaYnVWUb
zoO^Be--2plJWuV+itSw{E2KG?rPWO*Tt57tW+qN{YYy4WP;S`<aZS?c9I|_I$*L)>
zng$<@(@CNo$!=`U{ikW_E`5|UIId}GkVB(uu2?vQA16CDhwS29ve_Oz8mIGM4xMee
zJhGe*;$)BJkiGQ3?7KBg<;dB`PRO0}R;9<OUs+@6W99n*TjDy|>ZbdUPPP#O<k|o1
zWSyVmTpXo^O<|wQ9i<z)rfYk0%UPAK;#!*t3=%uE=3IP2!q^1MdXAd^3{bELZZ$JK
znZuNtr(}0RG|+?Kx8c7I1g?jOUeB5v5NHHZ2c(J+)gT6g^a0XEIW(A%2cVV%p)n9g
zK=uMvXFya(WcWDFF3*8*7+{8$f>`Zs>mNki&8B`yUj1MBq}%tKjN81*Zm^hX`0U4{
z;lo6u+V>Q!CjqLh^dz1C==kk>QDh4Pw8(Og#T|Yu9%dr3>=&b9Ydo>YN@f)_Dv4Hu
z2XTIxQPK~cWfeoLz$22>29NXi{#@+&utVEnG{QndAb-JUvZb;y&z${MG$BwKkxs~V
z07CU327vSf%m`?d$;^P&B85_YKI*(E&PqEw9;vZFc#4tHZC@wjmNa7@A*<Uy(~NmJ
zCkt~w`b^$3jcXGMQOmO1gx--{ZH~JjPBvREGq)Tma2kH6vst1Wpv|gbc{dX->z}ht
zc=m?Ys5tJ1cy81g=ba&U=Ee!VnNw({FLZyL&<{C<=KDfV#tEfP)ETCni8^=tLi^){
z>f{u9z!y3lCv;Ozp*6nHl{lffIfaJ$LQ&HfNd|4sDfFl>^xO|RcjZAlu7$4EC<Uf*
zkm!7z>|g(vY$hL{IG=5|{G|W+5C^6eX7e#lw#WY^TikLYrV*7y&Cs%XpOL$X{6y_B
zLef@m*FvW8?44^)q*tIVr;q6`#q9B%W?%KqE{f|^1I)Fh;_5}K9l0v5n3aiHhikUX
zi;c8tSE8mcLtKNdGtJfi_>N9A+M9?}yE2EzbhbRy>h`BJBT8d#Fr#DHzemH%MM-Xd
zT8_d}QF2Ddx$=T>UQglA=5pQ&&oHuTr8%FhQI@#ego}^$nuA=_BfnE7MtkksQ_ULT
z$*5W*+(?WM0m*|iMXQ;twVZ%H2-F-hb%b>~sy?;DvDSg=X!R$0eWP**+bR!4#9*yL
zIvT#^#KB?v^QfDT(7-wVv_qx^5C~9fCxVO>;uko}K^6&d8sce?$AEM(5K2MzU8uuA
z!RZWRy$BrZVTs^))K%l&^YFh1)VMd;5kx@7z4<`$0B&F7nm6v%SBocDsnSBqz*m2s
zhmmht|HCbP^bWQax#MZuy4e_TtS2SvucOgTlD2iQ$`L^+iE$-FYmnwZx`>6IAY>?1
zAHbPtOvuL2RFtKO=I~8;feA0iu+=?ih`;u7AY2Txm(WCFakBQZC%_9kMnJy&{F1T4
zc0>3L6R!6f+Aqb)Bf9i$87HJlArew@HD#1iWvgOWt%=1HDRMY1q|Eho)JLK{gh-OF
z;@R)$lD0Co%|mW;R4*~^!DfnD)7~7dEW-LNj?K|_@@;`s-fY+sEiEf$d=G^4DqEse
zMMGY+*s9mm^t%w-qUs2LW9fKfUy}}ddsN-Tq`w*YMAVgOuGLt2-lXA{{d%<EE1<j!
z4RIh^c%KkfJ{cC}d$u5d>KCT!&tOS$p>}lrxA6JpH&xSKD@#pkNpWFRz0U9eWwQuS
zONtAlZN>i!(5EGAEZ>AGCCO;hi3{t1!jhat(JKG6;LCu}O8^!M@6w4n2lW}C*7TO>
zv=!}4CID&YxsH8lwBY7(yygVmS;F2JXIaa%?r`XVKtxvDJ~3`P)<T)#-yMy-H=XJx
zbKcvLnG2|ysV5gwa{f4I1^l}KGo1L^SYtFI*6xWq(Oa=5!-;iBJq(0@Gcsy8p=SCu
z%xWyREg3ALvJwjqMI+<Ig3R=vLi-6ojnO<w=RZ3BO#c;RUjmG8gN$t!`NX$1QD=+i
z+YzJ=0pUqTMh|t~GM>s%XCJci9Ld(Mn$Ep%m@@V_<uffOY)nW8lR&z&hcG*Af2gCj
zHoL3SF_pa}^H7%5^0KSv+#YAAdk#CrvpcG6JMNA+`Rq8)T`Nwj_67#|GowlJI7w1d
zd0J*hYsh*w--&=XFse2LC(vrhPd3uzXRkeibltWeibRF_JPUmHF5{*O{O=yMMcr1j
zTlE!^?$Off36<|ab&pn)mF1M88<c26snqg__RuxbD&#h{tmfK8^>1`!BlSNbm6JW{
zp=lniC??NPR3`!XI7Rbl9kFb8;lcrek|l=b(Pk1sDZ+{XJT)zKJT0M`0+9r&Q)d$o
zgJY==?V{1MlyjgktiH(f0@8&ODo4nzP*VW)EO?qM7{CwiwNuo=@AdH40{omd#<*-(
z|ASet>Zt8~cR?IibJ$opyAChPn3i-BN!B}#WuoeimDm*W!!8%qpTAMx!YLOm|Jw~L
z&2=aXr+id@!G>MI3c4ND+kF+H>b)|nM4gV7m0)`5^*U?I`o)?wha8p*G!k@duak@y
zfMoY}%Sw!@j{#kV{#L?dJ2x>}Tq;GmuDl2VsGd8?>$&&po;z9l(I0*%AWc4`ml9PU
z%G(0H4p3i@>$*X^Lu+NQR2^X1nbGKi*%XR=J?;(UUkB9J<4%Aa7ec-s_Z7$&fckpe
zPau~8caSmWeLXI|CzdD7ihe$i)5Ct`9#+MRyg)Qs>^34#x}AwvH#$auR*^$&An8K<
zgn?2ZC4d42;S?w*e`?F0=KKkD=1)zS)kUDM1drm6dyk2<<y*RD$T>@?88j{G1tzDm
z5s<_2_3*(|5~qm?Z!pxd`uX9gMV*-^yp7L?jnJ9VmNmr)@uWM?ns8~E9?{`u=<8nA
zx)MK+yz_>UlrPrp@}sfB7frbOw%lKF(VUKpCS{|}K#Atx9MODy$+#HKXJphEqQphU
z5MQ}!)2g^(jIy;6d#x0bs+wQ9YU{lnS=kIw)$l8~om9hV(BlAA4Zm^C0CMlZnp3At
zw!U@K#+M^eSv&gaamG1U?U<?2<vCaF+HXdAEuiY?cWyL7B{&Iv7|`#phobp6X_wUE
z=q<)iE|CxL^qqIzhI6SZvN)R29Xo&;Bvt~cAcPDO8-rX2xT}oz|9g;lclIFB$$F;0
zskCqVv3r<bY5#Vk?~5l=X*&{Edx=~sZC{W+LP(_@4KfP&pOtn7%;_SKU1@(Zk^aw0
z>*dKmLm1cK1C>@XotH+8<`*y$iCt>5dKy&+xYuxBhg;on)d4E~K*)I6a%_|NQm5M)
zA*s_|p-5$$q{B^}9+j(37c&+fCz>UGG?p{ago|@e>+q=ah@b5}l#jO?A&KU_9MLp0
z(OBWdMn;c|&ljOuY}S?9o<{!b)_k+uOr0N5gXAr4sv0D#^D$f8LQ<9W$K$rTx}Bdq
zoZ~UuT=j|P*zR{Qxy?-$9bJ<j(=}PQ^pEMP97||`*yFCNtc{z>0C~IX%DB}ku_DTP
zi1ul{+1W4UKWJ<2;6am)Wwu*O`jvGQ{~{n+49<3&h`mBL(8>bI;>&Grs+heCdO8ph
z1BZ=S4zLDrW2qY{LTKPc{+veUBOvf3#8r@=fpifI9Uvrc4;~wULT$QMKWUQN?O;(~
zOrajU;3$^Nqc+*yEN69`=;R!t^Kyy0FT{yvTP&YT%*sexh~q<DJ^OeMo2ja|9qKlb
z`@>SHnnT^|CE>B@&5<0g%YYL@W1+g55-)fsvldlgUEPvu)}m%7UES(3JBgLU7rVPI
zS6zBHcxFb-hgHLv8H^bneGOeGDXMg9xJ^{WQ4!R1^GO7{M$~rIFu=-KL}zO!8#8Ns
zGs*F0l69eKKU3V4<&w7<FReh+atlixurG+Fx><`?S>zpjJ#Vw!JpWQuscPP4yG7ff
zsK2r2xN4py2gZV4lAaulrJp0(qP$w6E&d$2KHK6ikpf~-^nQz|_L;9v;gG#AqB;g!
zPLFH7eG&ET7ySjO{SoyAsF*qpb|9i7SD$uzQ=8G>34Jq?B0gFrexLza6j9$Ho$!H#
zaA}9GQw%hFE;W74qDW17OzTn~s{+ZZn7J;Bbd>Klj)CqiVNVZb`5~h6{$1!dButK>
zEsm&DXqh)c3&_*GI8s|4pLWo#BuoyaEsivoS@B5dfk0k4G_@p>?|6Wv3h28eOb%Bq
zji}RGJD|4#X>x3BSwt1{yU@o(P7=Iar}r%MXMnm&X`4wRss>Xj=8wH15?;N4M^ldF
z{)qeqKp%nK;VXHVuap%@I4VkV1oj^k{t~6gD`eY0zS5mM8ukN`<XMXl`~+57PmZtv
zfnyN0L8=4kB39-*Lgea~(61m}2<`xc>}8D0K!ysD3^5yI5>T}e#DgeKUdZ68IK<<G
zZWFO85HEqe0Jshl6#2>UNq06RP1bdq7zSUDF<1>PY1w@ufh$;5UHBo490XJs{sqWc
zA*2ic8RQb+jyL*V7p_)x?PiRi)GCi)tnr*NccQbTe;p34|5(SyijDd;B#T0gV5IdT
zi-6Ge5G_HP1MW5>?j?iDWjQrX#9xo%)-v=}`fM3Lx>c?4orc?y!?5llL&!Rih_UQQ
zX~~Pl`9D(e^PE2|rL{E@4KF6`@-lG`V(tp4mx;%Lj0Vz0OubRO5NbXU?J|sl^v!sf
zHj7DK4*pFlfV>=hAM&dJE8N^DsF#EJoC2lZ%LF;rYvRgdk?^Lwcwb^FtbqJ^6vd4|
zU=+k&ke7jUkqzBJ$SJ4~fzWb@D<GGIco2dYF|2=ucoZTPA{hwngeVSD6i^oejP%ps
zVTmRY_OwXkykv`92v7(4T7X)7@FX3}!#o}TLV#Atwg9Mja!XfvQ<N-X8ceSRkm4B;
zw*)CxXZ&wKqnl`{x9xlTN*)&RT$>$n7m1R*Z9fEsL4b12ljMWyM%&Zz-?pEK?0AX9
z3VZIWQ`No#b5=Z%!}g!~nd4zzLhY9$PVy2wkc0R0ur>!!2k)~$mJ2Zs&SM~30rxv&
z$-D=t?q~C-J6lZSAt&6+VpJ+CmEHNxgi8f(V!~$=zRnnv0m2X+ZdTg|nOpHJXRDEU
zi6?5N(UlS7eiPoGCuFP9WwE=Pew)cHA?Ib}o%}wsuU^>Xp+s~zM?~kmCp&!9$f!xt
zmxhpW>LnAac>G74p*&JK{UOaZ&*QMeX+HVM@@zOyJW(y4XckX&H-sK^9_mJY8WYh&
z7ipDshdCxvT@5<bVe2uG)^b)?R$s<N^p|zz+pgmxMf9;^xo2{GL|rr~o$&<StH>>y
z6C!#kA>+$QL{l-M2BLOv@>fSwF`_@_Egd85Rx&Elr;#g1A`_X@Co!0<94Wn;su!y*
zs~uHL7k$SRMW`;iu{4yiKkKWI0+qx@Z;Bt;0@7XbRni9KA$vuV6mQ(anov9|V=?1T
zJD(XcNYU%lsre$+)tT`ocPe%xkxqHvRYV6NVz+F8$c(5_vx%Z~L?0SgQ5b^pQ43ja
zaU<%4t9{Oo!j07FJOe}Oh<QRp9WiGqo5$S#C#;2~dZ&CtD@;h$_2R;kC5mV*gx0jQ
zre4&sbvNI*Ig0v#x)aIhiY&|0>chanNMb)Bt&D@L+S#9mGbNd}ykM`(<kN6dDSCYl
z{7g9R9QfI=8D(v2g2th+9%b!EGnP?}kR#!g^%&Nx=SRbOU^RlZymvgs<0TP$)hJ$;
zw5e17uZAl~$)_kQuZHW36)WSkWcDLr{Rv6Af>8VSNVswK81RvBXH{p~%|v#6SbxB?
zrxfr86Tei>jbU?QUwwjfOIUx7*~-{o7{O)6ovnTh%ffZCV^|h$qkNOQS&_X#mI?Li
z33u!0^al{{39Hu=tc;IkEIdD~AE>vmnIa=WLas}QNvf=lP}9Qtv-ZjNc&VBet}3~%
zUqqM|ZXjd76cy*Ra2r+K%1%P@*04J9Y-PMS3~Hn?Gt4(LGF&Cw%*b&4Y%?Rn>T`{z
zqD}~xQASlog^&jW=iU`p`x@ux`&Rpg)ul&Pi7Pykw$88O_bC-?i9Zy6Zj~7d+hKJR
z;2|3ET|ipbFwI#w`BP>G)%vg>1*qX?P*;n^(1TPMx50(N>Wi!$Z(_U!G`%6wvU-MJ
zHIYSHGK%bO2+Jxf6UNkVM$Z-WD#KwdL}fk@=mW7D<bJ>%Y!o)hdMN#by35RI*0eNT
zmN@NM=WZAyxl*T%HX|H3D#rIAwiR1jfU3tJ>Js%ca6-o+b`$zM5Uzf|R%|H!VfZ~`
ztvF>BPBbiOsx9X>!+L}v*>{*>FeZaQwN0?v@Fv2uvvk)s4V^tETzZzuI^0{h_)ZrB
z2As)994kD=MD{8soOy=m3(+mkUX}@OMflBe;cuJp@`Nw;!|~9We3m86FAZB>y<G3J
zE$4y>zeFzYR^f7Ovs2{(oh9P+7h2qSz32O!UOT<wM3Yv=_js#wCvdD0RXyk|Lr4!=
zQ|qZU$*eeg{c_k#&9<jbf9x=li%8QHV?nMuKNM$ST@DNNvn{ABcfO4iJ(NS#%AHPk
zwayZW?TfhBN}6!VswApac8^~@w~1zPCdz10c{AU+Db7UK93~Ftc6eHx=#(6y=gygD
z+F2SG&9dxh+%0js*<Rk7%S)@p@;+4IA45s@8I*PN{bNX77gr(nd>XvJLV<QFGcuAl
zK<*C}lIF{nSE2RZ@BUCd)%-rrR;zs=q}C8p?n{SwGo-r6lv8&>ycN=~qp5X=w?lbV
z4>o)peb1qgS_-o=-s+FslOf${$$P@upC>~NMOd!}JRMS<mR<nZ5mMcqUToPBQbUaj
zF*(R=KO4%Fk4V#EJ|kzKS{tjQ@AIs-4yh(kzj4+&)LNxsqjU{zLTX5)8~Qe(f^t8q
z{^oVNkbaBq!-I&m3#oTSlGG*M*N5~=TNh<$&^}aPFde%72zLkL@CdpKyF*AVEyR-F
zhUge_TO}a&z%)gq36Z3B**b;t$d;Jy;5&zO2Tw2AC1m=R+bI&es!7w+ewwO=TB~eT
zW5Vj$dNp{#nyk?IR8wb~RpRFXEK~$lZV&oZ6|uG0)&K3aWjE1Ph@FwahBEwko5u41
zkhYrKy*a2}W4Qu-R>B_WC1GmAzFA++u>om!E4iAo`#lVLfP_guJ36THa3S;^61ImJ
zM+a3_J_h};ghgqNM+Ym**!2tOPXJzlxh1GlpU{t-1kygKViA@oJB96`TS(YDOC_v;
zgxv-`UBdRpB&@uIZGc__<ds@DCa5am0qEByOtOA#Q04qr(4PTmQl8_2syKuFi5F0x
zB_6NkN<bF^id^h$SrdYJ?H;t|S?gz~$@<X5pc;6#h2K>4Hry;>DbnFjh8`<n|K4F)
zlY**BKLNcBP#y2&psLx2p!Wim2GXt1c!V{D10{IbCaA7=4-R0h24>n`6;@KRs{vtE
zfFdJ#qia>re3okM>>@)HogtavWNn+Bc71irx;GdVXC@&(8i=(b%)U3MUa?ePYq&3{
zK7qUe<{BXFO<K_VgHd_I=P>kZ685?ZOO>#Mfn2W$q&2(UvL4WpSA#AmVb`g!6mehx
zbZ-g!v!`XP)^c}1&z7))Z7u7;pn9L_8R$oWXmksc?cYt+^f4YW^|QAG)0#cV5TF)f
zUnBn|5GW7vGsqPo3PCue)doV%Ao75u3ef?gGDvwK^4HGnctX~6@|??1)4yMhZ8==k
z5}D?Jep$bPafrj~TCi+}I3Y(udmz+R1f83WkQ^we1X~6-Jnrrk6E5e^^fn<QooPh>
zfS*hcqxR}#?hQtcN(`$I8;|v|KwvS%Jdim+Xgx$0$UQ=Ahj<!fJCMH&UU>$CK4vUi
z!M1^vKs`iGBYP4s&OBwDu`CaxSyw;%^<d<thm14l(fA%v&ioDXC!m~(4YsWWKsi$x
zq#~f4@eDe?X=6FtndZng1#m_VwG{h9ORza@FrH2Ivp)z%_KGudz@;l1oh24|LBf-C
ze9Y7F54#LTcA$!-{+qOU4^Wn02BQ}-m-#hx=EwX=m(b7^uv?LwprqBk1!ex!9<U}N
zb)bC6>AMC$WclP_q}Bjx`Q#}O`Fu#GET6cojh4BufQ@*4J$csES>cjd^Ja%jQYCo*
zd=@X}>AmCD`<^ClqgK%*duuSdQery;?*PVMk=WjcNEyPyBcQ)rc+sfwwLOD*i%0h5
zVDze3kXKg9p-=`;`Q}OTVo5F?|Miu+$kvufxGCnU_DCvu>RMgN=}w)3ruxYHQ|05r
zzc%4=tmJwf&TS1UwNBRB*_QKfoWRXSQJv8VW*wZxWd-|81(0FbD$O?|)>{*F0n35R
z*|>1VNQw*FeM^?(6`WZ3%2+V(Bgf(`$ik6KM*4)ZzM6F}XJYr8{1C<DhgDil)b*3%
z6)nfhIZ0(zEy<%#iJC;*`IpW$u{79N(k>Lw<$@pi*KsPhdXZbs+P||cZ8X75Rk#*n
zMKq^Ruf$0n@eC-*X1OH4i<A5{hvd0jl9~Tx$6lN+Dtok9K38G1jg#!2LvnGh6mvnu
zdJ5Xz6sM7GcW+L+R;1`=K5<}%Fx==O1HM~>ZpV#O?WM3fP)%C`fjJP%K;{cE5#lJw
z0U?G#BoAeN2n2dTbOC8AM0<#PK^6<q7~(^a6GBvn_!;DTAYCF2ttO-@YvW~s&=!bZ
zAl-y`24Wh>B%sV|5Yh>Uj)1HrWSNMZgm?kuNfG%*iR`#7^b^R>gj@pDA%%-3oxIN{
z>HNtFe7ufy${~fs;q;Y&+Tkb#QbGvX;iv;r3t$IY7nZlf;hmphufadb3eGOam)=^a
z6*+S|$v294AuU}nnEt_fqRqU6%`XhM05TIH0{<Y~1FAa^xC}7{WHgX2ie<_m!vTWX
zp_(AG2%Z6`gn2Q9tb!85-m>m<5`!dc2{MZTm9UK<>w!#3n7b`kg7hH+cb=D?fS@F2
zr~e__K2hhOcf{Lr4;X#9=|wtcwep~!Q!f0c36(LyH-6$hOg~nrWCZgjY`{$!A3Td!
zI{`gD_}(ZvRuxH4o?v<{5tQ-4euValpyQS1%|EkE23uT^Me-&_*?rZvZZqNfWe0Vj
z$mV`3ZX2O7Bylp}w44b>Bf=<fwbJMj%33^I+N?8itR0%AUeT%)_l%#?k(jnD)%Ds9
zeRimCoMal0Rra&kJ6ke4Urp=lzIV;XcYU^sIt{|-IJ^Rp=9Xrg9F%O|Yx)(wA0|1t
zBA7T;9%;$yGvwZ<epbI@1RblB2xbM-9}z*x>MICcR9St{JUEg;yL1{<R)1u|rT2O#
zF1)ufD($mP*Dq<-?eir+0ljq=(?6&TU1C(^5}iz=Qo{<LGufcm^9xkN#U^^*Wy_F5
z&vKgt)!Z#MeFp4iLG_um*zv)NC?cQ7(zC(lL4P*bLeCMBxM;pbP)%8rZV^<?==6;)
zErMoF93atl>!A7!N33Ewh&Gz2pl7z7f`w%Iz%OItRJfIcdU;g7CZ_$X98}ls>o0ay
z36^T#6qlHjR?}Ws8MpL9ubk177Fn;-mkTzOC3GvJ+#vYhIC@$2U*W5zfNz{?GG|R$
zovGOB-GLODPTAi&g}S}Qjhkw9_MB5pbW+sJ`J7YvpBCsO4@2xb!+CG1BGlRHlvT0@
z@V!$a$nZY4hv@C|j-I>A+!CUUBsV6LRQrOXX0v+gebGr)9}<v>r2V6#XXrB1gvhU^
z>oR4tFFBDb#d*7o47lv*NqIi8m`~=r851@ka?G)XuzTTxKHh%JDJRo<IhcFQX({4*
zas9ZXZj6x&{ZBY~)t3OU`<|nwfL2Bi@%VLPZM9g#!0S#`W#FHNidj$QRbt?cYy<m^
zffgsoU;7y+$^J@|Rjxnd=uZNu+V-5IYui&LkbB<AnA-(gZ0qdO1|*TY9J5W7_j+Xd
znNmFQsAsRAqgS=7JgnG_WX(h`t@L-&=8*sT3Z4E=F<DHCsm*|aj@}GVJ`6HG6fTB=
zL5`~NdJ%uHqo&cZqlMuNanwpi?8-t#l$K?U*qc#BR8hnXd1Qt-bro^XJrF}pGSmT*
zp^m!nNYXUa$*Y`E8yv$Ny&0nRABH<glPNkY<H~aMi<#8+*y^RWm{U>JS><^#r=>ie
zx+se~d9zbn+$kwu=zJ*d=w&kHc?l;~anfYNtb|jH`I41VY_TG02&cWQs^7>P<DVxH
zSisRw;}kqdQKeMCsVSvoWjvf8ejdZW*XQSPYTP$e_}|E5m0<YK`TPW@f#SEQJ`esM
zfh7C5@Kl2S2-H%a;~Rb`4=?-$LfbsXkAbSfFbjh}2h_q~IPW*a!%wZKTQhr=wya^c
zI)%RDYt4!2f1Jgcd7v(*%<YKO*7b%9s(x_06|k(EG<U^+xP@*T&(+wry6R<~;rcU~
zwJY$l?t#rBQM;QwuAE{2Bp?5~*m>n#m$L(b)Cp6#d8vzC`Csze8u(Tj1|;^pM|J$X
zuwndIL5p8lYD*crh}4h*tlcF6MSg#Pja)nRmh#xkx->_fOf7FmMBd4oH&+c~{xIfj
z>#G3KH?W<XAEPglVN54%To0&W%nXpJLdY=YL6B8|+i0tHBFFeF;10_k&d?aBczPR2
zj@(H+^=#(}FP@jN^rDzviRt%2P6#3Kd<*g=pbyT>^G$dd2~$72j_p(-RmyE^BroZT
z1u>Tikq=PjDuI*(+)e*)x78@@q&b4gZp#6aPcsIPnI9VBMu^_h-_qCCXI>(?Y&l(w
zb?J%kFkJmA+pSmp4GI}IgpU|W)zent;Z>I|)v5$C)Ef2>EqA(Ie5Fp~SNb2d@}}(!
z{=W(evr<7;vD=fR7C^Gi<C$(Zktcd4^dz8Nk+D2idF+Jt$W!QZ($eTJ^V+Jd-i*LT
zAZ_YQx&k{-BaA%@y%Pv;Hu1`a$biob(UGW0tQv5d!{TC;t7=wh_f$#>6$`OuWM_!I
zRHK>VyZ;C_s*M<jKwS~AZ%ms=^a(opeMG$%u-4fdm%#i+jSluolK7SJ>%3gTG)wZ}
zo2rrpr%^cu%#tklrn!h0<oI?1FiSGv+td+A4TZb`=vTQnn`Ej1O>nlGGwbX6^}oro
zzAqu>qR!e0B!OSQ>18eJhh%v#E9#sxf&GimRZQ!E{%3W=oAq{4s-t}|Dn|>}6U$m)
zgPlwz+-t;1n!$LI)zAJTbo2>U6)GT=;57SISC4g>MWEfYM)(d&fXbz|^P;|x3|i+9
z-dh&vET^s!eih-bF)5`)HaMM3_$I;=aMLfnsPnQ(x#bLs6RMU|=ygxXT^A=5XJz62
zl!E#dJjH6!RZ~=~&k|@m+<0P>n3u?m=Yha4$b1U&5s>*EMD_f}ZvVJsa<H}s2~_86
z=@k+Rk&>4Kd88PegE*LatI*|YO1v2_(Z@R*0_rkAC-4-_|J~D7NO5TmQ<h^Fc2yzN
zmV&b>V1_Csi@{oLG#iO#*C8rIYku2Q5tWn~IZA+RT_M=}5zPfgb1Ist97`aetgvHa
zYr$QlV~HJ_r3mGomGSgIsF_CbUQcmmpp>%P;`xQJ#{}{?uZTC&cS6;czB6{}9*A*)
zNFnKgGBycoq{)&`ec_RTI=Z86zys+FG5kLzp2<R2QN@#C(SSL90(qq)cM7ov$BT<o
zB&4i_SQ+n6AiSI5UnhL&UkE9$lV7w6{PrdleSQ7*9)H&(@S7R_ET7*jP*UrU<WX~~
z*t$Svu`uN~@u-SjNBm3Ky&9sboh0R(a#1p~s$E184@$DD+3IB=D`QYasFKFa1&L;Y
z(8`E97YxztMM+WTi7gTRO?~6G<c@$<vF(RKmlJm?$`xkLZ#5MD3q8K`+jYv#&OynZ
zD`h57{Tidxk}SH?Nyf3(61z@&cqgYz@UY1+PF9cyzvbjfL%|zLGFo!Mm~&E{wHSZ1
z<(yVSL96r3btvvvS-(fLrIUB|SCfpdc>M<9T_;JcC}%aC{nraVGWr_$o5sKmOd6e8
zD(`+51CzzTEcIS$%gG~nGG;ZF=tuTEjofWYX{4NPa^`3Q8K1ww8)N+grSmgsb>t5t
zbm(>}W%<4*wHc#_A<`>g%eQ`=hDM}Upn?*~m{1&Uw?HxZLa)=?aJvPXXzu=ga61M{
z?EHwe6WJsX^Bn_f20_K8`UYDDR7p557;eizYtc=ydckZJNHf!eV4HxN>%^o~SoK#o
z&siBiHH4~XOvubzBB&Q=k!_-WAlWm~Fy6#<o{7E>VxmT%q|9C%xx+$C)X-j78RMvb
z!TbR|5^F8o;X*f+7jTn?*R5>@D+f{}+{)LF<YZjkhkSaV<S2q1`6JfS1Fckk<O?zr
z$f#8mk;Fjpr6MAKL?kiLOp7clh{zsVtzbA%;wcf4KOz#=$+Gh85s}Y1Djc)}d87?+
z-Zdh2puVz_F$<C4Z?@+CXt=-GjWqW<$~Ab&JS+uSLQkDiLjsfwsZ(lN!OONfe`jT!
zUytYyMzp>X75X}Ds0`@|eq*>j4fh+5+q4JV&kc8q;ePIMf1tApeqy-tEi6gnC$>qz
z3aWqbBg2)C{R;OZyP=ME=KXL_7_QuCCEOEsUBhMO5j<+R=MDF$-B@$K90B*B;mVtr
zqI=M;r@1{u_f^BKW4Nzs%Q0ywf_rUOUNyBc+!9ca8_^q#=;NM?GhDdq4R@m9uD2WL
zXr5t$5?o`ra*38WvBq;E;}N(^3|B566YdgEcY`E;f#J&jl5iJz8TZmWxbqD6JHwsl
zWz8l!wcsqnjj+ljy0bj)Bo1r_rx~tnya{)j=hfx9a3>nBTr(rwiFO^GqIOah#@Kl!
zZyedd67Cp}JEjTTk%l|ha7P;M5_=M(ok(mm;T2EQCURi1!baM?*l_TqWc9XC=hKrR
zBI-euFOF)#h!U(Y@-h?YNHnS>t<H04;oZWjS(Hy}wUl<%EnH2_ojPyr3NycA$|o^3
zGk-bF>_;SSdY&68-?Bb4U47ox>b#F4b(8W*^DJk@Dn1bwx|9f88|^0=GmNibALZzY
zbQ#WM5gEuNHe5k1l2nW>6I?ALw6nTQDaPAprKLyODuR1P3#s1zt2mv8KCyIu)eR)m
z7ABTf2kNXY%a9Julg{Os=p3gz49&A2hOSt#g~At$FI^4{g6Jf2zxi^V;^aEnT5fI~
z<kWG%N({fWy#}_5w*=2YsDWDYs(7M<!lnDMx{Ri%LM25;PGoDHl3GXkP|}v1)H)??
zt#czI=ukn?S>@{#wAp+xeiyWZ0Z*r(*4bnq9>|xoSS6NZI5M709XN2ZgcOhjLyQwb
zjUrNNP;3zO`!WDcqOT3Oc7l$2<5)QJr9fo(T~P_nFD!Bu?<);!K_SVCii=#qYsl2V
z>at06Mv6{7UuR^YY@LyfM29jgl!0J(5tO$%S}Om#t9%B>z3wV4I->3>&viuIZ5`2v
zbg6+>qW^@i-zrYORh)h+rB9?MNm!t?D1G27mDYu;QdHUqZnj_B!c--XDjR3e3#5KE
zomn(bK2<;`dCsDFDk!||2Epq~j#d1Pu|_mcJB7QA!1Jb^B)`WG95}{`=2y82J{4RY
zksA5eB4qOC5qZKVSkcTBu{m<x-Gmp2h@V#Hmv3OoQNw;6{5Emqj><x33T<`%kq0uN
zr2RbjLq4-)rqEXDKnb?3=Lsrf0{yeseu`Wm53IkLJNzz_iDD3$H*@O=Flz2REhuLc
ztkU1&|GWh{M9Now_S&0YWU}=;Ec?dmL#O!HBb3I!8t7L8LWLokfiwZ~i;4Bd1XDVL
zx!M*}(*m)8*yw_6Cm<kp2Y~bg3W(VPVh&#_p0TYRMt!M-@Uz#JewpN44{JK|w}^qB
z5W7Gg7h)*HFCgCuF#)3XXpVgVf!iR)gNy`1OCTNsSt-N=5O0CJCd6ilKS0h4u@j=x
zE$k5jp;sZMgWMv-VTh+e9uwkYh~prKg!mfbCy*b7xB`)H3{z?#^fyE&kd{IuoF$t;
z9uguy#9ok>fj}d~J_LCms9G8h>rvKSFLB1T0>lMEzXS9q6+T(0vc)2&BzJmbI_D5n
zM-$S<vYrK~qX`v2$_XJy6Y7K11>Db#c8)Jx@ePl;G}aC35t&7Wl^;EZ`lXQhq53e|
zqTU*?+^xpO#+!+sSD9#CtkRPgQz4A*T}IbldrFFKC9Gj+_5ecbAf5u*2m}^DoC5h6
z$P~iqYD~ymRCl7R=g*ci-h@k?-C)AKEj^}_hT8}33yRD3)?CYdH7;B%c^a&`sqLuJ
z)rs@C5jx|0z2g<UZUO6e{JH>yx<J$%XIqtlP(O%HARUAl2{90)FHm31y@{De%amM&
zjZCqTE&<BG0z_tsju=Q8&sh$jfEaK`E!L4sRhKNCZ8eeX$UE6`i<fqbmv!qGb=J2F
zDWQ`5b!AOiez_EMS^ROB%3%a<^&g{)uaPSE2<OO%wiFP^3o#s|zYrxMR)H)Pq8h~O
zATJ2f2;xVOZ-wXyQEURP0imG~-9WkkWhOv4Su4huxlJKEW|di@kr`zkP{^|Jq0Jye
z5FQ}fJ0WfbnFa)|hgbx%0Emn|#~-g2S)Y(jyHwHWkypvmxv&EA=Me-S63t~0yFs1>
z(nU7(AR#B9jsT%YA$|k70PqM&SM;@S`l6VwTr|*9@<x_&hfL%|JfPM@XM)@+ge<Y%
z4YCAqLrYNN=Pl*R+ENc*d=GeQxf*A0`k+~+qKE#&6vsXWGUJI%YNNSVZoQF0-N{-u
z-f}t{_wMRXBcNp2628h89-P+<XBeEvwH3wD4v_tYjc>1!n`ccldgokiFRKSYZZwnC
zFuBK~k1TzK%Ns4VCRtiu#2I8lX6mHU2+Pe=fupc?kOv!q&?$)TLB0VZqV$weBA3Z(
zdF$pJN|~ah{-jHA0Z}U`Z{m33d~HX>lOqX%$Z`fclUS9;WZ(~E(jbxmr5efuyAo76
zAXEaPIY?8Ws=RYk1S_u)VW<T}cS1V@R@JIdwLsp5HK7)SYq@)jr*Rj~lTdf^e}hZQ
zEnk<G>TF2&bEDPk+zukwc&V$tMiJ2nKwb4U8)POB{@rNFy0BGx5%15ZGQ^eNNd1po
zt+tO`eE`;4H0}mMn;}ks908)TVARnl**?Y)TK(*&Dn!rYNMI~t7m)t}$S*qGj1F%d
z7%XOV9M+nY{9nla0fc)R3FW3Wpo*u8XQuHDH!)%5#<0Te`BNfJU}~IzRXX2(D&KM)
z;ol}+d+p9Q@U%RvjLD=7C{PEYwFqA@!k-!8O~qnekj@n8kVthvyd}_}8HB~qNq*(^
zKkHQ-2{nf?4v8^9IMYa|ovWy9fXy@^toIwNjnTGu7IT`5Yo`&LgZ6BR=N!abBgrUM
z{mLR0`VPi&B$i4%OXK4SKVm4!rSS7{gcWWWPpJ|*ZbImO43^|Mw5?b|IVsW6IRu^m
z2ue|E!SDyhhAu;^bfGnrfC;P2j6{C++IDY}%(Aey;QSgOR14x9$O#}K@8hJhbgG1{
z=gDY$e5pXU{V2&hIM+?#d+LCC2j?K%x^UDxI6VpN4upTn(%SkRoHE9idIzV!AtZB%
zid;OnLJM==L!w$(D%k#jL<MUS#>N2!Mecng$19p5$Cjp&xf}j6AR@)<$*>$m17iOh
z2;>o4QlyU{vldWA>dARU`nx1Siu6e&wgcg_CN`afpA4mnG{K}!B_UiSjtW<aCz`|)
zUE&C;#qXw24)%laGJ6+<v)yEnv<S0t-h1|ToAB+dGlt)YCyp6nv)KB@5KSr3a3tRC
zqVdFy@x-)v;@)^-S)AA5_3^~+c;a0{NM?mUjpJ1RF^(W5Y)`NZP`Ynnx(_B<@|&;!
zQ7z?)n!s3C2PlA-fWS<MUqQ|Tp+ykorm{&3M8$%|ilq4&thQ%sRC1oGVoeNmM7}+s
zO!o!p0~8QzPJ+=}G>ZHGc_<{W<rSX1CVYZ4(AY6$;MO$Z>co)$F7PG)oty6R9+Gsa
zx1r}AH7P8F6=T6FEf*slU#tDh!}MBy_S!i|a8|DPnTBtp#96ug=K#oVA>>-1%xM%T
z5Rx0KW`j%;LT;|w53)@NxxuRcbVg!8NN%!v2xPSoa--F2AX|ly%YkY!9IOC@<Yudz
zK?VY?<=&8{4{N77>VMWg*R6Vx=wtKw^DhFS0$}$dz7lZf8*v$rOCt3dHU<+`L~c{r
zZ`kyU@<6`hMz_38Qrp0K9QBPrpaH~ZARh`*86sf@2#_v1p&JOP4^<UVueV?IZF*RW
z@zrkc1}@{Qngk6+elVaWLDN7c2qBZ8`#@F!ZsZZI=zUjCkC1MY0i2A7EazhrmCQmC
zahw!#keNA>(~NZi`AJo1sX5*W<sWrJD@G(Y7_*@vwE~mQjq8<~(wmw?&$_0b<-QoF
zLHs6`X4jS`+vW0`ktSgbqb1u<xY7F$ku6tXZ6o0uB`3ayI0f=PkS=0n{w0K?n{z`k
zvfQ4@vH`5{7-LKN6lb9!3Jj&+#iW-ZGVnxGM!vjoc*JCmybah)OUX3L`6@2c#^`X9
zoa5Qa(HZQXx@NMk=9VMDa^22ZKf!Ay!H3;wlfxu<IjjOCBrgz{2hj+mrVx`MCV-3p
zoWgN_rJ<Ld%{wmUD$K;Jt#i4{zkX@Aep$<%9jBPBG%B}Jz-6h-37g6!cYyTMu}~#s
zmd8DcPQkdUHpS;!PIZ$qsc4TH-^?Aw=3=&-70q&9F&c7z)qZ11#`ryC-`n{+&gDzS
zo<3_)-M6Q!tmV{<D}#bGQQ1js7MH|1Se+3k*(QhNg#TF0ij$p?LpC+1)$mtFQqM<T
z9L#L?F-!eqT||Do$99x*J_2haCHasP?MD!YLEaMLD~KOJz63%)Lgbsp_!|iQ1<?$o
zwh)maJSrg50jJ#K+PGwSCg!t~-SsEGIz*jRZ&nwsY!uY6Yl~fjF0|QBZKD*`QGWK?
z=({-D1y<s0t~ilM`$4pWXaNLTLfi~8637&yVEqjoz%XVkYbP<=U)Odsml7O!fIo|o
zoGq$zAP$1OEW|{JJh#!f0fAu<y+L{i(F<ZG$T%U|L%ad<ERZg?Lz@Z7H;45qAhZ+W
z29ORyyb7@lWTp^@AufV^BgDrLmFCi&0->)VvOsPV;tIqSkne$r>{xgyajbVGCG~6N
zx%C|~<T+UR=kbIBJ@-NgH}pD4Swcz!JmI6sj+W1;e57amT=aX_ie7&V{Y9{@L#h@K
zm<@3Y$Uq=n#6mKf*#Px05ZVCoI>>Gzo`m=v<O0y(MTik5g5o+JHV^3QUV~BXcHYke
ztOkdnjvKMUMy#BO9f8pnk=7#Sy3cA}&SAo+UvNnOs{XryRMGnnJdU!pk@f(^9zZAw
z;%<;7LKKA92C^AYU0*2^IqNnCbB#&+hFZb1k|FYH(q80W1yt8}4CJT~()E1?@(JKp
zGWxpf>!yyxs5hQG1`Q_;+C6Fo8{?!hdlAL+VreFp{s#F|2r-+?S^osUZIZ*RED3sj
zY1lF>88*AFA@+?R4z(ahhRBB3BZk2en?ygLR^UE~{sCCkiJ&|XSPC&1qz_;flzHys
zM$54}i`KweQ8l;CLSQMNWS%xMJXFXy-u!nL{2f5}Im4HSI9$vWp(6Um5h}Y&Uw4|-
zp<_Dh7vO~a?6phY!_%8!eT}^jfWSzI1{^f40)(bOOaYl7#O)BvLGBXbZip=)n}9$k
zi046`1)_3V;x-czPnN-o=omTKoSFKGG%M>6JB0i}F|Z2a6v)RyEQ0tB<XfP?b_n+&
zW5lf524`EfN|X7rP4%=N(|{-m`X$q?e8QCdRrG%qgHrZM^I5Y5RM{5;DFlQM8f~dk
zR%9*7_{M|;tZ`!Rugv7ul0`4U>WoG!G4T|{B9PmFbP)?3BxEntE+F&)giRLzDa02L
z<sgax5y=|oxXB4_&L)DRnF+s%!;&4_k=Y8U?06gG4Iv~uu7dmwq>GNull;bx$&-ZH
zX1TRpQS29#teIydC?tvLgG@&~5~&M0MF^;DsQ^+=2zewLg474Xj~GprEmS-&Q>1mc
zne33>MR(}O|1>Rx`?}G|*@CS1_*Us>Pq7+hgzopdnBgCh_ye%U6LBx`<OIZ*Anyrr
z2I9I!G-g2PJj7ifcM9=4#4eCWg$PTQFJ{qOhzy9z5T$`oaftaK(}bu3@&8fw9#B>k
z&-?e>J3BWlX}O57OI#!wKu{D6ARr)^$S5WdQ4tgaBB&%WA&P>cf})~`IiM(*#eiT!
zMJ1Tv3z(H)!iewZ>8Y8$SM+!O?>(n>>*=nlt`5`F-P6;v2Id1O+mE?(!}p@fh`5Fp
zkjRxb>-hn`orc(E<iCTw>`c%}ro>XPad}Fa%cOJ<Vt=9Vhm_KrNp^Ca(jrwx&C=p~
zKIB&IeL^Pnr{pTSBPdw~urEvts7%iRr^d;>EzOr|XKUBeL$XTz>4#7+Y5k4hxiDu7
z{0Nu~GeO`>z#TBRLOEFoc0+MF=w&F_8}Jp(CV_(h>8TVY6dVR<4$}xK?F$%J2iG2s
zy@|MLR$|%mTFC>EI1Kqip=1ldAeiH!;4r`?FyjUK0p`Kn2<ewrT`V=rMcz8)bMMls
z?@&Un{4-bc5;x>!)re}W3{$M&8ioP9*HBtKWfe+lHVsjz54i@lH%towHMI^f2ScT5
zP^D@}rD{N>YB;58Fs`8-g~Sn%UvB9Q!RynpuFl`RqsARbw~F!H9QHLC^{4+5@A+FS
zci)z<i`0ya=F+NWiW+LYX5luc^E#+sb+eGkCZ&sOYba$G;PgMk3()Npo#^>H@+8Z+
zwsfh6W96;+lBC@A{jk(zvqOPoca!As!91A?OPNATUSk~tHQhwJhE>YF<%y4&uiQpd
zw#fthE%slx_ucL&T?|g^2&hOa;8Uek`n#$0HgyOai8_I@KMqQ+0-Omm9Lg-TWEwF~
z!y~`=5MB+`G(q#Y187Rx;TZ|h<rarlcUz0qqlub=k;za_F~M<!+zYxBDm@)gCiQnM
z4bQ8NkamDN)i)4YB2|T!N;Qzmj|6Rjvf3dUsa9~iTHExmNoJO;!HX*qt8@+WP-deg
zwVSO)xOU|ir;3!FeYvZDYXWX6`<nqRT78bKu%&sanjeITNGLPQKw(GR%1(b%gH<AZ
z{PA7`r&Xrft7A$@Z+Dd#r*!4Sl&bnlReP?=vZ}IXCd!S&xLTIQ#OhRffeKpHS4Q?~
zL$3PvfN8G$9%L&2T79j#ajE<}#3^);Ggx)y-vt95p`1cp)tvx37OJSaBTSXO9tg!%
zHx{9Dq^i)0s=I}to1nC+E>h(Ql2oa#vuVJtx)vbw2$VU=%>P$)`6Em~HFPEFRzsP$
zE&RVKrH>oUhUM5;$G5FF1$)5D<uvnSyg7xaWq9&DRC*2|7|);WpdX>MG#h?s)#05(
zK6F&uxshg-X$*p(oMHm0*9Db9r81M%#;A;`liS!(XfUxoRXjwd_D5__ly--_R3{Tt
zGotww8GP_m66XRP^%eg(1nO7*^-gByvX-hZ%MV@~8vQx^NB)L?hUsQn{lsiXDA@*Z
zCCqr}oK65%1^N2~@DV7j71ayOPQrUnxxJ)n`qNLaqgB)okXZq_Rn%=T-$OZxxrNzE
z*V55LZeezbnen`c+b432h1q41$)?CRhMdX$VD^Q=h1oaEf)-{kL0&blh1m}+Tnn?a
zEu2M-%nue`*dqRGVfJE^&R>}I()ZNk@G^^`M^FJ=UNyV)Qwm@yQQdH^v%Gx@FbL*&
zC?~OCB_S7q&WExx^J{D-;`WFN;J~W8Jo>4byb1Z4kTW?SW*$^3Yku~lP(cMS8F?#!
zOd|^~%;@^O{zxlIeZmFkIp)UiZju!)X?nHPU?MX`F-Q04eu)dK?&8|Y6ZrDDoKq`W
z3iFbjQ^P4$yYctR^RO|kEvlln7OpBf*uqssz5dnnRy!*0xZ0GVr_uZxe_V%q^QWOp
z_lN&z)zj8da^Dm66~25T=Y9v2U&qr<C`jX1ADHe?Ru(#bW~wnaFtT-B)!ZmqlYz0w
zUjRANSHWBkmCBmm+bpOaijj|UImp6Qn9VIb+En8CV=Y!?(9vR51~V<Zu=d9O{m(K`
z9fqHm%2Y9xwKh?9!x`3Cy~dxv!0Pj+Fh4}PUt-Rh^<-*0QFoJvxyn@0i=Ou)%(DX3
z0UKaeLFxMecbf&`c<`9Gqjhmk7M><*m+6e8q0AE|vy4CrKo4=~h2%upxdSk4(Tu=l
zVs7hf@)CmEqPi!P)i%^frYPpjV=r;;?&%RqavfqrksktuM_PX!`xbGr(&*hQ&y|vn
zv>t`Rxl&5Yn=Piq!j!x@d-v4q5|l@mAv8&XsZUKv_jrm@j}Di79vVN{(n!qN|9|M|
z(cxX_%z|3#Y4AZ<twW4^T=*8D%bmq9P2D{q+>r;o#`>bvlCMIuC9(B8WnG_G`U3q8
zP*%HvUo|<tP+?qAq%kgA`v&QZLhNtk|5Ccc-Ze4z?W4wC5lPuy;NVDcPNxm1l@PVd
z3|=yVlJx)`VcJ1iDQ%5z9WhrqQh&Nes)Y<lXBhHBWkA+0g_#Jo`qPxRoT2v7kM_~e
z^ICmf5X!)rg6{Pb)7BlK<?<+jIgiQw@kHH?wOgPv$^B(=?Bt@<5=(2QoXkq%-+)rV
z-=P7Oc&n;;z?vwrjoW?0D6@!i;ulS=5_4K_B)#rLZO6`!P_jQDcRf>iC^-bs0%muC
zvjN><x<IYoF;in*MxzTs`Q>)Zzup=O&P()BKbC1o`u8p-zot|#bc1f}t<On+F;Qn@
zbdXYc6|fZMF(`Ns(C`LI0ZPk4tH4yfS=A|tjpad0S&&kDWDbCwxdAYJpq#{<nR7uS
zptKgr>Y5qWyJY5v^5XJMn9&x48OU4>xt#`+;^ZPOY72g}X!Z!Q4?wBQO*Xuc+&-0+
z7L@cNF6YXhB)69rUl}F&D(WvsNq!tB8F5+DiIaRE+4mqulkH4;9R+X)_S7jeZ}bnh
z@a`vi-eMQt&xH@SaCN)?3*~LXH>+xRdD$&9HQyxN1mWo@nc?&p6u6S%DOM)RR$(tb
ztk4u)n9BSwvr)mtJ;2xH#W!FzZ;MAHTokKC!YT#Z;=%rHS2SUX`!y|r6P{+{f;p)<
zbY!d0$>!!HP4jFDuf%LU8&%Mpd%vVbOeE?jih4biyasU0OwL7vg4uwlU><>7o7&GT
zaG9x1Wg8Wb{=(YSMr1yQT$}1>a-J7)JGH6wjjWYGsjdY%Ov}+@WA%5H%#QLPD@Wy9
zQ&bv4&g<?louQn>oVRC!hC=>eGx6~Wp7#MhTBAvwnU`8-wt=YB!gV>XT0twZs(sdE
zxw#n^)mEaYQSnIp%d6T*g!|t=g!8I)iA7n}wlt__eg)>t<4j~Baxz?zSW;27+N$=h
zDffu0w&_=tm_8Xflj4{Pxh-q2z&sDRZ&7{;vkvmVH*NO~0`!zL1DI4I9X3AK=aw3X
zzeP#c*PoW9O-CIqt~^fub|tS(N0o1)j-gU*I&y=9E+(AxBF?nD#IW5`Q>3WD!5%0z
zhrCwDn1Z&F;hLrU*DcI!ET(CkZvC%OuR>A>q1qNIliVbe<19EesF}M}aWegg?<1Ky
zT)UABE2xsWX}3Db76cC^eh8Gh%4~$y<ux9U-FGdFH^<yBF{cyh_n1Z$Wz%?k4c0QU
zVHq-|Gm(?O!NqArU5MFHQ1TYQtuQx2!M%XzVHQK#Cjnc{0{0f<(vhu!)zeFr;SUg7
zgZwHexeV|n%;%7ol@ASzLm#}DV^kA*)3<t}dgRY9DEtJ~mOrKPBh|z-U8eodE&aU^
zYKfNGiF?$nT>x1V)z*-1E;9U%UTq7PQmo*n?2Uh-@hzzm`u0TR(VPpuB}YX_XK$u$
zLdoh%4`vT2s1N7^(+x_WsL-mR1(wBXP;o!)R@_z=t|aOTXcCmXh(8ZP^90W3&xg?4
zP)<6*Ot?RwAEDq*{xqA#GdIXT!HnzbYmQlRU~7WSt()*tC!0*zGHR*L>RFH%b8(&h
zyju-dUx#46J>=@^XqY1*uBSN^%5+oD#Dy}Ow0k^6l-kt<{?9d$=+2p#^PEJkHIcCl
zE!I~H3#NT+<>~Jzm?=b^PFlx9?ymKl$?*)pxJr>mx5mZCNJpcFTacdxxgI`}^mo$n
zqfx_y$led7c9>NwAKfS`m4vRbrea*2<e`o8_d!O{{!W5Q$8M4(W+S>ZZ)A`+>7RDz
zd_qQg%qL1k*pcUT>vs*E7#ZbuPL=NwIf5u&e>qnF`t>+f|9X3kr=8D@rz}+H8Y?`3
zLh?4EULd2-K-mwItOJ@HgG%FSMjF$brH4!BOT<<q{~;7UuskwW8nz3~__}6R4DM-W
z6zO}4%*%Rz(~7b_<urQ5eL^=YhQO<puUSMX>-s3nIs1kpaX&EUcZujjFcP`$WFC07
z2}Kr1uFt8w1;_6o>N}j?1SNF_W}VqQOn}OyG|7}a?;PIoOT67Y;be{^zBA;sFN3*A
z3fkcjDX`ovg_X^-ZV$&I;vbiSc6Y3SSs|c(A0@ZYqM)4Q-4>5-pbn7R;xPv1YyoZY
zxEp2;<Zm~(bQS-xIsYpDk1Za5nt~Op*LbLWJuobhqv8^|OC@qXQCmpmYbbdMpgOmo
zN>D8+Eioll$Bc{1d=;f5dEFUXK+aNMn4VCpw@qB76yEiic4)T6Y`nLY$9Uf)(PugR
zR4D~F=i&~&mmCVb4CUdnb}nEC%ohR^0CVP0@lf(=z~tLl!Ge;r0QGOD^#X$VfOU7U
zHx~*X2W*D<PT)mAb}rqdz*~T|fKE`b7SMYhjOYu%J$KVRLBWrJ*I`}}@Lp%rG0Y~Y
zZxulLVmgA44hqYZ?H0;L>jvrjwo#@}5S5ybccOa%`@pmmxCL+|Om~54fRQk#L0KJ>
z@Lg;!;u=|H`THf(+qPm_$E(gle!2|kc-0SK-iN%b9IAS7=n%6*<Dw;coyTyIoKvb_
zps+y}<j<clzYECID)&(Pkjq0|m@+8S#Ecb=;-(~`p(Y;(y<wF-5B4(4I)qLXO1JuV
z>9me|UlO~0gv#;g2AO(4;cD%f?4~6BedJIjzzHw|1a_cw1<WLYZGZ=0?uK$Q5Hvw{
zC1^Pm>;u>V^Cy(nOSZ}OQLPPAYAb`}c|Q>P4N+C@CHqkFGeCWqGANTa1>1UAG-J&K
z_DI^Zr__w)6H>cjv7HW)7>mUZ0{?9c);<|ryTAVQ;7?9brDww3n}{U+wY&VAR3NGS
zNx2QAUseiVS+TPH*SOuRbtF~?{@5SMf>P{?&Y@6JDffrzD<BVs!VH0&6XWtt`a7A#
zGiPly^5@EctWATtT0qw3z}x~kXCH>SAEI|(Zgr_`sMB#uqb7#q{%01h;|L!Q!*%9O
zzqBhqc2cFzvSMC44Dl$B9^$L>%+x+4ED~)@{Mo|8eY|{}EVK0NFt)JiP0{Wke(HK~
zg~d0$LVlqoSL97mGw9hM)$J$BP+zNijjX(^?4&h6ILDGCzY?6>AURWlnjd_L(Ep&E
zV%#JlbFoR=ct4}YQv6mzTd>??mMESRj!aS>>6f^)LG~pq*VbbeFTGnC!}?g{0VO@U
zLCO1-=qdLjYXAFanNUtKL1#j?fj)<Vo`9S0XU`54oB;S9<`sc60G~d<ejO;d0PyyM
z3@f4FQo#I&s9z|U4(RZ3!fOZxw*gkdJR$G^;NnN<JE34PVA7+!5(~M9DeK~rinxkt
zX0^=wKT~RYK9gO5GUOhnG=Qn6fGde<39}cJ`O+-qKlX5seVTO&YZ#d_N~B4(%*Vf&
z*+Wn~2y$iz!t{r75_7gkfzF1Ur=2@SW)3!P|F9C6##P;AX=L(h<gbF9$y;D%LAeH)
z44?fRY06r1ACHn6yPo|VW8qp<ztO^Jd71Mpys&-dJ^Qh~#U3qW_OjeY#V}D$rZ>&!
zgNmm{8Q5Fp(63shK7Y}4{Cg-2{kb1U@0I8E08haz5-0(D46{t&7t9>`81F_yxsfWS
zJ&2wSx)}=E0v5sCBhUrV>v7)4g@WFIjWBNuoCFxUkliRyFaoe1<}HD-fKE^F{xuX_
z4wwZqS>Sp=`I9iBI{-^zo)>rskX^)(L|`#s4qz%2ybAamW*d~&S&uVM4@-dVL?v*G
zpMCOoGJnXu^nr_+oj}Qb0O!LD7ia=_1m+%r+JN;iE1}wz0LdNLZ1@xiN^S!j19OzX
zCcs>nSx`=i^*s`Wv<_l;(41hLCnt9Ilk<PYR{h01twnmN)N_C}FslSofUjV_fWm!}
zM-Pi?GUDQkrjMU2`3-a0C%GMkpJhRt+EP!mF9veEw`#%Egfb_YrSLw*q3v_Emp^=#
z=3ZZV>8vm*-hq_2$N0&ticGIBHN`+<$i2Q4$rXii(d$e56W<1MuP;S1Deo`Y;`OEX
z<*J@RbVH^K<X&Hj<d~_t-&07r=Mnvp=nJLZHm}0hm)09{4=1+g0WVcNGIZZXmF0sy
z^TEM+fICSID;2E|m6Kgvqg+S+9(myhh2cdr7EIuMi4GR?GLNeIn#Ke)qO9oZofwAO
zbh@NPbcbO(x@=_jKR5KX@Jj!+ZX{=$F`Tr$(n@=HgeQExPK(+@#O-NCmpIeUZYSO3
z+lZY((VYS%mjG^nnFe|3^*oV%B(_k6wVlKTe(}0L(E6LGXAyc*T0a0jgZT)`Ni3*b
zpNGMqpCI>uS#LG#$Gg)q!_(kpGNT8~CC@Ozgxu5Ma+n5CZg0fGN5a>cs`|wnQL=t9
z^N@uXmP+0uVP2@v*oso*wn^HVg_ak4E?mUPmI`;9O*_XuK*UAk<;2x~rG9_ntaewn
z!nc-kR+~+`!W<%?-IYUN21DV-%0Xr>+*rxWGwa<jFFj+{#8hT^eHy@?CL#A{VxDZ-
z;(V|Fs94U9pQ4K}Jd$~2UiM!w{cuHed7b=*;rXxTNp3BWoKhg^ipn)wKd-?x`YZG;
zv|aMAzImC!c^b+|DE-vGOVhNpTi`&uA$eYBwTa!U6?fTTZDKS9d9F%Un+~pnxf;qz
z%xyY&5Hufhn+~=e8a1s=#>KZ^npw-p<QvE@hn&feVb(&qesMGV%aqm3{tWZ1+i#|<
zOKAT8y_xm0d_~(2!eL??F0B(R#`lIQ$1SR*m;OzT`x3PkZ@!Xy-2gS8W$p}RPX?TC
zO3YG?W8uU763eQlK2ZKfA=VQ4y`an#lhRobx>nq7u&n>8O{(a`6K!eqGW~FDI^tr}
zZ&yw4E#G9iJ!TJ*>6iXt+C7xt$+UlWp4dQ)<azN{o)>L+&&(vXR64;V%_twJ33KUh
z$rGAaD3pqXGB0-yt0{UP&vN}jJe5rAgNLh4iW7NM0S8tq-aWw>_&}oikio;DWDCGJ
zm<t3N0`7pB4YfQBa4mX!d%hQR2fR$^b5PJ9@CD2U$V+QFv?)&MPNj5CD!BqJHxEiZ
zhY;lELD#`tEueYO{V?;PoOImOYNTv^6We;4@Mt>qI)X1sQ`4yfpJzM;IWzrWdO<mf
zyE)bQpy7~y{!!M_)uK6fGq2}aTTweUcw|RSiI;ia?t+Eaz=E>4pRq1Bt&dI~Z{|61
zKsoPFt@urq@sC8!#f3Rg@(aKcn5P8R0=|OT1m&bt>QS8jlsq@@EO67S=(fUyGk={C
z=B?1dH9I-zW%a$vt#(QC9KpD-rQz+YYH7y2Uh)FOycbwD!Y41Sv&nbFN?#~jv#a@~
zK7#iURSm%^P);$yLPF|;>O#R1Kx>#i1>Oeqf;m!P4PZFTX;50ndp7SH=7IMOl)$ro
z(RO)q7g3iXGYQHmCU}&PIiOplse_x^#F{ClhW@Bz)mNo?4p9#w^8n=4(!ol5$AS?T
zW!yh6Sv5Hgk!KNpS_<4Rhnjd)s^L??=JmsBN228`Wjr4t&2cHNh*tscqxw3OZq|*}
zsZ*mI9fC|^Y_;rVMflZ?sNxqHbVA7k04-p4hjJ1N`V!I=bSRWQlm0(4Q{?rQnUc!s
zkuq~NQO6?F2TD!=TnsY?%1JDkMaa#d8BkVc2HAX`$GXO~vD_!RSFJuEGWitpiy&w6
zb(m#P?i5Ux%A`Nkly#qIjFLJx-6t-w@TjotUR;uQjc{+xAC4Sr#iOrTvUm{=_9*tV
zEnGVjWu3>`v_WOz&f#H!viC<NF`-&;W?&`p5nir}-2N5jC%G*#R}#A{VUPtmGw0gP
znt7(oko$g-nSGII4Y}NRf$0q8Bo^lWLQ_@l8=(~C{-%Gu|1bYPa{svH<sZ5C+grFg
z@)?$bb>>x9N4JE2c|wZ{h3dybBl3hkE)?1~7Mh$V<k5=r?p0l4q1kytO$vpMi-le{
zA#II2)P&-#ahabiHfkQ>XN=CN7dMZ9(dtZgZ0qw*?4t=7G4hEM&%f!Au+Fb!`hTmL
zb#Kr56Mtnvf1yRYr7#!Wk5l>l_bs>|TJPp-x%IQE9YdSiE4bNW!-X%#Dt>*7)q+DR
z9Tthg|FCe`Y;57q6E_8_W_M|~|IuPKHA>peOKBZv;bE~TwynjgSf+)sHVPhA(Rt?=
zjpuhW6*Z8@&7d`q_oBPKKPXRVb)nENvCsv1LVp$t4T`IETAomOrl5hG6bsF<dzF0Z
zRwz_4j(H_dXhfk<JdW|twcCs=O)nH08Yg#^32BJ;Org*jCZu8BexAS7Bvrm&gpxKk
z-&(Pd8Qw(wORc-V=nxkFvtdqMt0<bWL_L?j@1-g2_Q7H6*@t$puajd-_HtTo)?e@X
zD!MDbp><+P__WZNTcXYS3;w;$<EyDC>sMR)R<ZFg&OapYPXDOc4ZGUrHY)J^>UOQE
zlUinmw34=a-Zl7Rf$oBx3Zv$TFq3koc5y+qC*lUw+JsaOoePC_R1BpO`+I)(JaeZP
zN~U9TL-WkdC=?3vs<oZxUz}%dQK4kJxRqR=C-iZlP>)zhhxzHJe0r=0=k<SWW1%H^
zLQM*Vy2nDR^MnpB6gn)<VkKLIQL`8y3R$yg_g~H8*1W;z{iYJu_*WGwHV*9buQ%a_
z6<vu9RK4_u8cZy$!F%5Ix({B^pk(j5+)jTYYV;Bw<v}^c1c_bPL;4breFzEIC+<xH
zjDdnWfL&kab#H;@fS&-LK*7F%%U@xiBNTK540@GO4ip>#xML|J6DSw}*a7pMz$t*9
zudz}H1?K=J!<-~A9<b*!o-sqgRKQ4>;Q}`Uroc=VxEt^!%zVh*>hJCvR<Gy%t}IR}
z$;_={BZeKw{0_NWeeLC(jS1x>=0*%{KrJCRcKXvUd5XZecw;}KhpCatzR356oXH_D
zgQ0NXkUBYZMAzi;$VUT*atl|3Aj~?ayn%ze9Y$+7nT3`g8#NHgFWs#s-@}S?TDcxM
zy}YF6l4|7iSfVb(i?gAeVuDi%c@U&0yumqu*I||kj0b!Kvr1qp;8&Qf0yhI1zs}=f
zD3}N60n-V})_sg!4&B1MQNPATBjm(!CFx#Oaib+-XCXfV3csS(!bE+qvHU&0BzK_%
z^=YpO2wfz>0~U}}Zxf83zLt@#;4va*BXTp8)fv{u$38?{T1CSzF{mURs3>+Ib|3Qh
zK<;Chk)$7MM><7s@HGZ)xL%CxlMutwNIK2FW7Qt3n7nyt$?7X}T}UL1U^JWc>)PC0
zccMdh0n#L;enKqi`Qt78MRIh0Uib|bzK#82x5wem^4Zqs$Z~65>9;0X*o21VO;Z+d
zS+t>)$JC<eo&>y0mR^O@S|m*#7FJ)<8>5<-R<cV;3B{#_(c~LML2hBRI!rYMq<<-8
z#%)@>q9v^vC7Ir6)y^;pO6pG|B<n-D*+d653F!!GCw*R3#lYHuVY2Khm4Ue>)z?-h
z*-=DIK<WZ0c^cpem<OPo#DYnLd=2^^6kH9c_9l~0D3}Fk3{zKN9-uc&4=B5Uim!28
zlv>2aZS>7*nI=m4WyHoKe=+3RM<mJDnoK*=Df+<L$2G`Kg~*dqIojlS7^pn0td<@X
zS-usi*-)9b`$uv`PA<0g0P*)ZYyLM@Ixq0d_G)aXVU4H3l~@XDM)zB|+j*z1z;9)-
z`sCe9ajchVZ{fPjxv3T_!}3`x+y_`np7*JIzM-V*D>+KTt#ISZV#uv<e+cs)l#`fS
z;ob)N7IMpw&kTzSIO3X+f__@<epn{8+MRogojXvt+6~hH3KzOxH4Ew@Cm^pZYi7C5
z!VBAX-a>a_7unPD6D>c6U8GJ8xG-*UTa?pTCE5BlaLcW0<3&rkrFHGYU=9(`y7pBt
zS3)`IxW(<%OtYiKZ3<D(t`^6p|CZ_7O8k>$TF<U#p?s69>Dkr&F!u`R+11l9iy<$)
zr8WniSsn4l0_)?6g(Wo~+yxU=X~}OP^qRC1fUPiJK{<&9bqFban+6L7%>aAAG!@tf
z&;_QWKzqOmFvkgW2aJRn4rTRefsV&Vbr*4!lrw&bZ>wcG%Z<AcyBzsTA$M^^l76fm
z=@hNCi(@9T*F&tf>Ne3kP9@@^%PFzBT4sz=(QRTL8h1*|Pn&|Sf$NA?gJ2?-iIR?b
zVz*)%E)%$W!IC(kh>JFzC!R0KRIf=wx)(f7A`2jwok-I6A}-R2?**?Q`;r`EQfi%_
znq+(I;aPO&wr<x=7j%{Rm*!ou{hh4a4x73u?^^YrHK5OhUKAR17xW4X*A9^D^TI!~
z@ZQ{a7R2FP+HQV(qZNP(Xt^ahp2_Sz7Ow8Wf69RRgx~W`Wc?Z++CoEWn+fSN%c&YC
zgw14s67>%-Fsc^cS>IJfz{637=9iop3dwA57alLcM|VWezt4p93FR~Ll#e?pR93m(
z8Y)}4{`!w{)k1+L<tLt1p|Pw$!)q8euZo(uC~qXatw6S2g{&*~WZomAM%*+j>bG5k
z$STvlxSagm@)V9PP<Sd<VE(8Ek?EW#TVZ(YKjm0m<WAj;i@aqSx9#PCPiTEBq2NP6
z?G-F(L0Nrk;#(U=R&ZHezWfr&>go6K$c?OyME-EdYq<dnU9kN{DYiEPP9gYsDA)qH
z9%d?()yaU}hJ;1TPHW@3gr<4#qk8d)wXv;30-r|yNhqnq0^fmo8*+yReg^Xil)1w6
z?Kb2tS$D-wwFuvfxM(Dns8&7mijvS3yBQ<jLGFr;B!iuF;w$zqWdDHZVf8Xz?V({t
zeD7rSu$8I@Ey=xm8L#p?oE!qVm+>OGAl8UGDqhBGC>@Or>mXkWd8z%(uzMNrfIld}
zUq*yU4X~1$uVVg_h`mr~4h31pdtG2U3hW9v3FZVSt@^BdX5{Mma<!~_&6}01M#m$O
zITPYdI1|!k?xpszG89T3YCu<drjxl>cmtiTgO>Q|N}_Y{Qq!#sX(a03Z9vwl(*EdL
zf*J2>NiOr*Kc*~N7Ux=22cVaDTQ)}jGQ94gX1hD!61=@w9=oPG{FE?j+<%OVOZUL)
z=?hS*t!#QN+oF0KcG}dzPCLMZ*q9HwR=F@X6LIa88-9t7)r)_`jBAzeApbh#TIFV#
zZy?tyQ}40_4`seHOZlxbb%zDI(p+G`mFB>IEzNi1(sXB;c>WtUAJZy!A9A3ZSH&9R
z3LD+4O2&n;w(d8*qN7uB`d#x%dv1Z`Fzd8D|7?@diqujk!-`Z#w<1+C$(0F)j<ifD
z$*=MZRaBin!WxuBDzg-z-YI<O5vP^8(PWgCs{EhnP|Ka#@$PIqJ&3rI&5^{I1|_}g
zQ9XST+m#B~1qucOn!)TQFappK=3s#f0LQ}ggATY9@Sd5D4i`8SW5H!aoQuR+kQ>u%
zG%4QVF)r>>&Zv^!RSsxOb0zYZL#|7SB>kOq;xWxl$j*c)(Di2bJ!WVvv8T&`!Di-f
z3!i~YVXbp<Ewn(5WxRAv=3Zsp!|Q-|7IleV*r4Q$`Z(2wsC!9Z9+YebSPt_ll#^JX
zN%z;Fbx?3LV3+r}4M6^$W>2rzyzJbu2FE)&C!JuCt1Lpd&a?9re#%#HH`YrnR-ZJe
zjAP0P-2`7D2;Ej2**gq(Z6q9oJCPC_4C@%s!%UT?oM~p^QdQFmSFu`^N7ujCuIdN8
z<V!X$YEZKFU^;?^;G6=27H|W}W@{*D2k5+#?PXBQu7KtZJnv!@f^LBF_jwNi3i<+`
zgSlN`FyK7sNGLdqKPP<1u}n~UYc)pAJ;Ge^rVyqQ_tq`Gs0Ec#w}f%XDq0nktOmGn
zHE(J`$t2)Sn46)Tbb{Rpd2S8&O(@tO@cvo`vQTg+;Pa2TJ3>J(z>1HlA}BZ!u-_+4
ztD#^xU@go`0%HJYe#+e%3N8b5|BQs7;5tB!b?89B9KcC1Z3ONIbX`vYK*1uwDwvf5
zuK?=(kHb3z-UaNjfyFNZf=>atjdY6yxD~Sl<B~`=q$EzrWmYw$B=ofLedOMT-162h
zFh4*!iMbWC+$LHI<W|hO*$9v40mkh`!`DyG+g^xFwnlz$$eHX6(-8_+%zBxgri0Uv
zR|C{^@GJ{2Y(;r1W^S3D&d=65Gu<pl@sl>K;&Tyd56(!7<J5zOxOQ?b_e?pt)l9W7
zp7fM!+Jkcz%o$KlVr~!4RiH~DXQnvLZGD+x!h3gQ<^g2xgPfVCVHQI<iG{P?I(gYV
zAEhXp`~Pb;^Jl$!_7r831DP!+(X@Ah$1i;ei#S^?hCMQJZbUA-RnE;NYB|2VCg*Md
ztcLjz3Ri{pI6S%{I!NohT()T=w6rSp1wxyorR{P*!~E#9^n~`X0g=|x(wdg5w(D-z
zdQzXGA=0zzhA?%ZoWxw~IT*A*<XX>DgCjGK7?=O7+KWt{i2U)8GkGS=a42^wCc`H5
zyeX>*y^Hrz*{-qh|7=3;eBO$(?P<A+R$arg)#Aw_D<#hxt^8h>tL8N(zgj#Qk1rR>
zIc*QT8RiB#Co#8pvJmtz<Q7kEJR!<&#N{uZe53rTNq&I*O31aPjWGX%!e(@bSx{D=
zMLx>vGZtQ$)&FWnnHMZSg{?@7CsmIKUF3_N%ITb3rBjqsEuQ><7hC0)7Edx?AP2d{
zlfz-ULpkXLI)-u}=ol!~!R*;0%C_ok2Z@uoO-bCH%O1TaNp#7vH6E4Ipk!M><1g8m
zBCrSGBf#TOvL0aJSM<nGvINliYqsG+NguEQ<{2m_(?M@SuKR{(7*KE$!26b&g}?~K
z0D3~fSiq|9unz^71Frs_v&Es{dceTVtS>^r9e~$h9uRm4aL^WdH7I>PJ9w|MT&2A7
za&mP;_4JS?<mw8d&PC>IC|ps!%>+HKwFGBZPt8NHVny{bBqu;QMY|Q%WuQBy@1-AQ
zO=qbYpv+}pW%bk!8F-1Pr2c%il|8CZas}X5n4h4WWP^_hsl5#Z1z!OUhv@>zH*&Pn
zO!Ev|rZ-g2wrNTxYS!Qx4N?=JWCrjM%zaXG_mVx1lmU({_Rf^n#_H9}o1vw9$#R5V
zmX>;h#19<%0mw<r^#%<HsRg;-VAHVB484wVhdQ&E<X)1EOdg7SC&-yR9%djEb_Cy<
zp019yI38UcmCgt)7hW9&_Y$||w2yzmTP%rW+E|9-TM4nalI2Za?;(pz#GE<lCAL=2
z9FLc^J0q6dk3YllY#8LVe44_&gj{bSK6nN&p5QT1unaH<W|qK8z*8`f3w#Rr7-lu(
z?|w{07GA>$S+g;FuXsw*M>C1cG5^}@Wh$hKnBb9}Y%e@~GwzWhu3l8;RdVUwo0FTf
zm75{_*@homps>>WSebHC7x_v&TfN4vyIZ9vf8@eN(A7|VKy4@|F<0q_g4#o_($79C
z%okUPaRs-4$m9^@2Sd)}xiDu#VWp2TJyrS&9F8h|wuS#^rH4b=v{q|&bJae`vK00I
zZb{j{&?;OTUfSS~?1xK{#QTRF75cAKP6}hKUhdnyV&biFc+Wl+l9Np`92$GgZD{NV
zd82`c3S>I&QDIH#F3DR$TU8)A_8*eJ<w<&b<hPt9d6M#Q_Mi$6_b|!O!>xIFQR)ka
zR!9ygkbJ6H>}S}{{MC7~lM7@UR#-LJ$yNg@>sy>`xYBuB-Ua+xfsIyHc5aNMcJ1p+
zd-|zHekhP#u#;@-vnyola}&~473TPyf68Va&XcW>8}^Sp=xm^{-JIAXw5=UMXNI<I
zWkB<*+bmW&ow`%(n-;4)yk>rdGxX(6qVi>((d}1Z{K80=bi<AQ{${(kOE<+=f#hqb
z>&0~w>$;XKkJ)c;b+E(qb^7W)p?-2S@$B4l>GaNw^D6(%ugvpD_OB?vp_W!yewn5_
z`RV4HwQP(f?`|s4Xt$Hbu}<SO(@;r0V*X5|1QU7F%*|#g%xAm*%BL$Ky;-0(JTY&`
z)Rb9ZMV&6+$rIbH=KSeo*QosI66#gdYvzNzE4aeqIXhX@=R)KO*Bu?|I3}udj}FU{
zT$a<J&aYd%sSO?KeMH?(XE#Z`->raFKQSAIlGg%GglP}uq!T<z$Y#(7Q1Eg-cn5Il
z&ur6xf{y@oe_>4l3O)xM3Ui3S4}ddah6?-*co61Bfl5rF+i&N+Lnx>XSOoKgKoh{5
zFs}&g1E~Bf<3xc&0Jj4!f`TIfXa2^79ts8mcK@AYH=y7&Kqr_(1V#b+!t@lF1h^4q
zqQEqO{|E2JL%}V8`Y<H|_X6&Mxk=y&z!xwd2)qP1`cKLW3RVFA2lFZ9W=xfPMkW5E
zO1y5}Y@@v?am|>1LuNbVW=xsC7|255jH$h8(S#bI)u?XvSZQg-R12Y+kee|zg=y@x
zG=n%N)~X?`=5>oZw?a!Zh_(prD=p0+dczzA<s{~25NCl-hujQe!hq0a#$v|h&mi`a
zNzEXxMgAJd%^+@rxfKd$5K~M~x68k9oJQ*A+w&}37iLAn&7VQ&`ExW`%3NXjiDnR5
z66QEF_PF=%6}sqoO_b9Pb!&`}TTc`95MDe0h3DKn9ScTWymWU$-OR&M(m6NJqVP22
z&P{m(X1TMV<@3MH0>et<7`?e);`F-d4YHs$=CvrSmXcd@Kd5(9ga^vMk#(C?YHfmF
zA@qe4e3~be-DAPSL&4(fCAf;HKM>juCEo-z+rd{cp`65mjf5Ns+8+uw1E#=ChHB|k
z;*rgwm@|jHqJxsvl5G)r9@%Fhe(n(b$;U+go+vjiu3NlAZfHif0<pIsHzQjQ^ND~S
zXQ%#V)f>u5$IZy<foejTYt5b=hF>(%eIOuwzCAxq>nx=;v2IbneMn2sx6eoSOvpXo
zegWn=0X^S-7v?P}^OR|Cnx<yuPLNE!YQ35k*!>r+(Ws4Gi($31u*+VsTYS3+xUKR0
z!S7*JD&bd5*v3nZ{~_$!<x{%(k2NKog0wMIavd!<FU6<6ws_~x?*{aEGQF?d(dUg)
zjji6@<I{Z&=&8ZJPKG@{_e2j){jV)rPM+qXqa01CxKW2WQg5$2|2zG|`fS2D{fbZ}
z-$nm?D@B=HXePsa_u9FT%8w0=NqBvM@T8rE`wprQuF1Wn;xg~Pv$I_3u0*Hg4c`tg
zRQm5~_$yCoVu8}~|5kd^W^c;N69r0{|8y_&M&8J<B0rOMPUYByCKl;YlR0kAM&hhD
zsFlyFTilmL<>Vbi)npP&v*si<z_l=A1uh5FPVl%7kdsdE5Fv92xd{rM1}ukpPT(~_
zNfIR}cpoqT=5T@afV*L43VaX9`b??>eg~Wn7zzdHOF2XaW|6=yfZt($5GV(<EuzDL
zf|h_OFp~ui0z3k9k3e_8MwrzC{Q(CC95D_Bg8|RLJOQ~o;B|3HyrGgftZBCK{*;97
zfZLJz8FF{PR4VBeLE#<nCDZb}kEC@})9i85(jAafJiQu_y8||cY2>tY2mCwM`bJv)
znih9yi<a(y`ytd?TDk-FggFArNzB~=&j6hYxjW$7aTgVF`FFsUGO0V@CCE>N+#PT_
z%(YN>2V89ybO-z!$7we14){afg;&v(^6!A!&>!CctM(1ArsxjHwN3eqr-=8q7|biD
z{hMaj$gTT{x)U#MlUs8D&%!JgxDN0k%zIEyI>91Bwt>Edf>!|5(;T$|)!H$SPgz(3
z6`a!6FVUoFCRuVfuUR466yldYW<F2g`i0)I?Pxc|Mm4Rxy&XQCPt-w(?FS{#0GtXl
z2+Bz;xP*`?pv$1(8o)g;b0BvojcjJT2D15@-?YDM>Xw_y&|n}h{U^7;NU+G;Clt(0
zkYLrvlU@^qc9US4Zn;O9mkbjnxXe$x+ie>J_JQ2(winFNP);K5c6%~t5ae#R=fRAG
z%5=Mp>=k)^5RPxLGl{<*a=-Lj7xK-(IN>2mcwEy=&jayrJ5l!{I1fsG3wQ<QMS;%%
zpTMkva?%NkxQqM(`T@$m`2?GvW1A5dk8h62rXM>1`=26KIm>%ukb5*4N&2yNq*FB6
zwp-OfwiIF%wPGQ|g*cUni!>4^WV5xDi}i@@fd*%7g{ef6eykno6uo1q9Dr<Fmx>?x
zq}ya0?CE;ZBW~R+Gm$Ap=0|X&d(&E}`txz2p55)I?-|{|2L{|_bhj_EZ0N>3Gfsrp
zBQ0Dv<A?IX*IBq`sp~D=%~G@4zK|?tdWwgYn6l0+ie{@F?9MBPiVn)Z|MfD5Jpa}_
znN|fd=QN6(rVH4r!A9r2A@hj^vL$f_`$WT;>3MhROA3SsM^8rmck^WC7s$+tWxmV1
ziN9VTld(I#=kJ=g1h}I>W<f<J!jgCE1}-<_^OTx%Kdk5in^!1l=A5}dPqIR4xw+`x
z>T;Ee=wo>~st~<sweK!HYRE6Xy)HYJ7xDo0Ia^9QEW9qg#6xwHwO=A4SizqoX^h>V
z0c!#0>4N(RW;h|kpv-TkZ2J`w-RY^r$u-xBK6&ihK-7=9+oE(PG)VSp&vl~DA76;E
zF_8QG@nn+Oj~Ms)<Ese05=vcQmcqj~Y8z@el*j+Q3^bz^d;W-nE5=(FVMYaDD-;zk
z;xP7O8;(i7fZps-GV9;BDl8?>f5M`*J@BzG+AU!$Y9A(`b2?tn3;)@|CI3GQ*8*R*
zLxucrdExh1xGs#{I^;V#EYDFaq`DkZVZk44;4<DK?jEYqF?jyMj-il}A8g@jH@kKZ
z!v}Y(=qub2&R*kY%UJ+9H;kSc)yte)J5nociMp3^zZpt)0c?l)97^{AJY!01L8Y=1
z*EHDWfkRNzA$MJi*|iC|<L`#UoF<@y@nWDO^J3r*(?etul#{hmy*p9*xc=xgyi%Ql
zSE|$RN_Fa8sZP5q)hT!GbUXh=^JE{ke)Pu&)pl#o|G<KEbl~JLn0D!=N3IK{oodO^
z9bc5$^}MhMR1p=IORxB-l;|+7KX^AfGR$VFFz4C*Ra{jb<qk~_W<l=Iu1L=3fgzQ1
zLNfJ-N=S!xEk<S`6rRWbU0jqAXBENr%Vg!|7_Y7K_`TFN6Lg0qmZ|C*n%}Gh$(Jh|
zBwV$9i0$_wS8ZRyY=qq5yODw)Dokxq><-`cD)E{SGN~qJFgoT^NB^%sKP;SXar-!@
z6B)ULs8aN*LGHZaO(w^4B;%rd=wk%Gs*rTva2Mn|Lta+KOGbyr*=1u~bW7AX23kZ3
z^+ln#Q_4~l4P&K<i&NqY21BHz5<3-zQ>2s%Ou=QV@s->l-?b2m&HWN{zLwg}M2$t|
zJm{Rebt83I`@p2BedFQ;@7g`}zBHA!o6wr61Y3P+VqIQx4a$yEK0^jC2s50C6RzCZ
z_j+7NluiWw<!x5bp9)1P#Uf)6Nv2kK-o03#2PJC&UWR!=pdsK>n6*%=2Ti*rfwblD
zAWQf40CoG}Y5I&HyvDD+#^&Z{|C!VZCAEsEUorNRtZxL=s7yset)4Z7Z3OOQ-I>+r
zFP7|Nw)&x%)#oo-Vr36mdedZf{`^JbL+5(lId6oX&5jG9YZpu$O;m5xyF#VM0bKo@
zZ^A5>7-w2u;`V)0qm;Jl=Mt1ALSC6tm==p3&J;Cq%f2aReHH@OLOF#7O5#<}3(x_l
z0_K`lxflMDcom#R#0DhRL;fO@xOt%GeM!>vImvO&Io`y=M<Yzpg}ssPCtm7(i_-lo
zwJ{Hj-I53PBPlC$FZHuUxVs^>`PW2>ePvi?^F!CzM$oG(-nE+KdE4=93)G}NAUWfN
zpgaHTRAJ@_1$_ZsVLCxg20Mwt?#SX^?}rvS@x!?I#IH^J6&GXO9a(%5ddETT$l^XG
z>3I=X)eC=qM?O=gBaSaX_B<$cjLC-mjsKlxU=%LwhjDV7^}lK#4FLNkXAGth<32r=
zX}Tgi)j;?~<GcRmBt#1tZAmBQwCaYlPY^Yegr`CSUIOg5AC>$v%$tNf52aO*k+$!3
zCqA)f%_^VaO-`UxrCF*{EL9P@qDxd|O%&Zy6<z9iOIq!fj(@H}-CHvFK%Q(ga%_hv
zV|vcvWj@N2lvKF-R8lBKRloiW)xqvE{f?rM>c_|KuO@#wdFT?nsR;#1uCS$y(+`7!
zYJd$q*<J<pF9Wn<SBHLACw@lh>V%F5N<YQg#p7n0b29hG@YwRqq8^xjgQ%u8m{dYJ
z#ROXDI1h9h6l?-~3iG1CHo!@2$L<9MI{>%B+$c~f;EhO_=LKp5v^TpLN*_v({iY>d
z<ZV>a=hdh(=`fN$m8d?*91SH00?vaO3Hj?xVczL{^%qf!Ej%gR?|5)y-RJl5GKc&S
zW>hkYcgF)%#C!e^X5`*eJnuF$VnYSb|I;FMojn;xdj2jOLaRC%VPzQZUNuf;Xq?`r
zFjCFhFEOC~n%m6+ZOm_F;c6Idx`z!Ttny*KqK2Up@xnn0%a~c;ix)uqSf=E2?@&1!
z-Z0j%Ncnt59Lc24!j<A|OEDZ64?DClMYm@?<^NWZjZ|d=%7(wU0a@BwXlW<kRo?jC
z@MB#L{QS3Q5c)~EjHXp_MYJk#!}HaSBFPg?GAyEo|462fn;L60_m6_Qy12r`+=9gZ
z%fvtZ%^XdW)=$N$21Mntz_KU4?QM;~_kLD;y|BFGm?LPf?TMOA^PB<Y6w~BzLi`zX
zCj`g9yiV}*P%soweOI1(0h*i}ii~$Jyp4(t@5*UfiQ8%<`y7s8JrEd&!bOmKATSN)
zY5_eExDDo3$V)xN@|AwK&^r8|44ekI9xEztoe!e^MZ4)WW7C7^W7RFW?_;G{|8e@t
zacU{I4gFljuQ8yyd)JJGHL~35&hwko73!x1eab@#?)QHuxSy%G3#Ow1CD=UFSD9yY
zhtW@I%cix2E^*VPk$q{6j0$>{PVNCKN6%}ja=f^_<l_F6<3^%BrlcNL(X9fkt_6T{
z5(~Bxa#d}P!GVIm0F_HwUlJ&Oj<rO<l~7O%(6Nj!06{@xz>hE=3$zBD#j@<FP|yMJ
zG|UXBWe>o7(inF%H|E0u*YY@f0u&qrID!?_wouxmG0bHTo__2slkYz@tg`4xeAfq~
z?nY)V<USa+1m-!&eQ|2GU6{NLYaAchaK8j!oVqPCum<^6k%6yZzJM|hn2LRID$$Wb
zf5*HC!@@#Wgmdw`ZIO#V%EezARvCDdx%e9fe~wb9S)YauITxE)6XNNearrKGj106u
zeox5du|3Q|P-cHqiCpZAi*>A9D{zqrzuLyoJv~I4fZg!or6p$l!5>*e@tfue%_|fd
z9SgP36Ixy<G&L3)XhH)??uSC5yG=;9B+l!&#3V1cgwthd33AN6W?UuuMD~mY<5G=u
zed<ner-`fK9}$Y%5TaMtsPU@<^!)GgTo`GF!`EVTo$F}6R6VOuon7s<JB?PCX-5xL
zp1r*vGtIH!oC1Q&;f|!p4~K&3fU{r*3fu-*3G<A=eSrNN@a7eiUIciWby)p)pA9pK
zR~i<7*o!vtAyK1|IRi>A2P}lS7s^R2*g(iO(C1LF1<;})Ya&qaC*X9Lfl!m|^K3?#
zF>8FVE6iL%Zdd4TE_CkrpcTwQLLP?F`bt^AI4E@HLOC;`VP;uRoYCjU-bH2wl+=gG
z*1>!#&>yfB<~sp>%q&&Tq9v56VWz^bl=Y*y<BrpPmCWB{8PB{xPe3ZFRNcLMCk{rE
z-hVuOEH5dJV+k|II*NX((OMJ_veunV?-tf5pJTS}PD`_UJDKpiTNjuk`g&=<P}iR@
z$){QS6Q=O5H&5LBH72A4CRhUDt$xa3QIk2=Jr`}rfG~39kpfrNm@82}-N~RCeNiWp
zuW-A0Y?WmdqTT!YH^fchDwY0{hUwjUQ~Ejype99H19I={M{>R=x%hqk#>6**u-1W!
z?awe)Kkluv_EN**>u9mb6NzezRBI@ya|w@w=?CQ`77Qn3JZKCQi~-yMGaG7h8Ni=0
zb9^uZ=2b#oQ0VP0los|N%vXeLP^eB4R1F48VM-d&9H8JmKwFr7A=lgnR1aNbs3;eY
zY?wKqk2Sa6$Q%W^=5_|m=>lqQV__~3P;<Ky=5i==yqSuco9@tB)E=i(yu$C`xwkH_
zF*)}9D#^hOle3hhK7n`>c4k6porw_16?q>^jyEl*N=|QD&PQe*<fUesvG7gH&&b}T
zjMMdVV;=th+?V^-IwBUK@HiBF2Y46e4T0YPTVTG0oO>GU>qn519njEkiv{Oiup46{
z$hjBE6?r?%z1<}z_jW-h2YIRY%$Re}nO|ceEFT>Zn!hPBzZ)v$k@-l@_sS(l?x#fN
z_d%wWGrvCHysznse!Bb~L73}H*GuXi3)hp8)C+kalVljDU*Y&<YhD-ahL&#1?~k(9
ztlpxWc3jb0bl9o4NLsbXl>?k?=*lh@?siP<Z9q?i205YLYTaJuA&ZFI3cG=0^Db`Z
z76$~<Gm)q0YE){huMBvRv4nL+6<qwyn}+4tpL7`xL#z|UcnFla&*XD2yKkyw{ps^$
zi;|}h^?HY|S2y&NQ`H%gsV9+RdUoJHXT#6)E@sgsjC4JzwnB~zj|!8oe%AVzDigRp
z6v`<+bH%?77?)UAMe6BqUtu$dxx(9Tu5FZ;%o{+4{vxUmnK>HDDJCd>HNg`Q9(+Jq
zeck8YSTo{Wp7@h^wn63_JWA?IKer-38w$rv3u2{1mE7|UGSifthIJ1ibRXn~Jj-ET
zh1{6wt6#(7qDwMvS4&F6y7MCg>yiH~GO!h9GnDzwRH88x6Ozn_=0(AnNfEbNguXHq
zwn>%K|2|~f#Mhw@EVIk;iRC5dor~k%Dg+y|0HSn%L~a0}Hk4bVLaRdb>?XY81qEe*
zvzjuLgMuc2!<+F40}5IJX2Ki`r5mkHc%#1yQ}eyS2a?)5b+S(!M{1pjx}iCf9w^xc
z@FL7&C?~PtXhMDjZG?j30ax$N$(>Lz46qUAeSuMc)_bs{0}3VpPKFr-wY&;&1D28`
z7EA?PLFh<{-3<5!W&@NRz%6WzdB}nK#>Gq5xw1^@v3NTSvC4b0zyZ1E%#ozOlTOjb
z=s7d8r4W~%PF`yAeN^)iS1GFbva-xXrJ{HD_duh0lu9J&$J&uj{O<k%$hHkr`ScMc
zl$J^b7ilE+EK5J3RJI^?I2zrg)$%S%<2lNy$3V(y9$+NFL!tDOHQ2qgC91r4RC#U6
zvPH<bZH2RuxfycX3h#rt2jWxqrlFyFBV^U|;@$q4wZ$rrfA*{$506GN;j8g}dmGxS
zQyCl@VKCx<Xw{=PiO0HNjo!S}?-u?6OE`XYD*+AOA2kOwdSkBeVBX;UP*xsIQsz>9
z4LBP^q8M!a&ur+`kg8k5;)r_SaN@eamN2YexZJ#9qOCH^mhCcM4PO1i^Ayoym6^T|
zyb<P8$n^`&%`y{Z<7!8(gMQ(f$Ut&0$`5h|axf)O<^WTP`i1tmI&*XAYC*q1L~53~
z=iadPTAs-D`U`$Oa6I*Y5@0thHh{7VKVk@A6;Z)8jNDpRr_z<^B-bH!5b_5=$(4Y^
zVY&+}1q_5a1}gmyQ2Lwxq(0_P4gG1zpP&VQh9Pkp<o{*q4f%xk*svaUT;c6RlPK=n
znQFG)IraVUDX6Pl*T%vl1v1~7k?eb+K-m1odmWA<DR<XOU&dl!&bmS7O$Sj=x7Nw7
zJDL2<BkDqY84V?G0z3dS9m+{8SU^al7QE*NHF+N3Mw4&ATusPCC|C_x0rP^uCcwch
z+0qIH+W@D+^bptq*b1{=pc3mF`|Zsc$52oka4pP50!;va!+a^w3NWP=7X=iw2khUP
z85<NF4mby9u)r~ZcVM1}`VIxSPk*<FGu&MnZeA;U#EE2B&;O3whlN?lJ%owmd@tgx
z&OP`1?*vsk!?{VwPk=(>y?&3nw{vBjXMUv^uPx(VEj{b|-Y$LKt~M^V%CkQAobNiU
zO_N1>OcEFr`x|kwMypz>N%CC}VQ)ucj<mAs0GGx}5f^`6`QTdVC#9qg@KF>Vlv4Wf
zuXq=o0lR*D3{K7utyO&XNeF&M)G~yYLdo|4t6)A5copzD%tk0Do#0zSegXXe1-}BS
z?#nF$D$`q`Q36HY%}U_yU5nlR<9fu`f!zM%)-ZbtX#eqPFhil7<iq2%?l&jHH$lm+
zz5-rk#m;QYxOhBqd99*flnZ@1d^Dy;LA9iljdda}Ubl(9B7PaNlc7}3WScRD%#`H;
zU73316+Zf&9#?L}DN4UY>sr}82jPYu<lcbE8Ib2UwQ4FI;(48k<`P#Af1CyXcCzP<
za=|<|n(N*p#+3T-1u<}YjhC2$8#!+`pzishP}`PQw)TwgFud-rA!k1;P3?bL7s`fj
z=~SBW6jQTI!^WA0P3dwn7soH_?D}okO3vhhsxdh1oZP{)ZpkNHfn{C5jcoNYkdkR{
zI!npWkxr*y_5wDHGye;hh15Cey+h3fZTRjK^<u4lT00$TiD_ZzObb^YXNKXn;Lxr|
zlt(T4%iaZa_e*~Z?L0UX<+fIV3-RXJP}%wG`9m#6$-QsMamVw=Sh$kgUXWa??qPDC
z|74!b?sTCv4J-CzO@?xG#jdQ<h5OxXC0nU=3N_rS*I)}*Y9q{2c#mBYTMD0O+*wR3
z;-_q-F0Whx{KW>8$2&qBmd9tShhj=~aYd?`4=r4&%J(ouub?<d>VWp#9Urse-`%Co
z^YkIyHain>H_du36!Zi<2lI^Dx%(b*k==2*T8)dxm#@@G_s4=8P<@2L8psW(zJ~cy
z7TTTs5w{>Zf#r3wGf$yModm8uia$Ap2GihvNAMRYxCKz74HGdam=9<IQw}*lT3PB$
zlZ~@Xc!@VlGoMC&bVR-b<oxIfa}?y&(r}<hoRf%aY$g)#m1f*f;3R}kkhX>bF<1&X
zi_j6!|2-5Khr~sYe~hK2p}@IhTpdpSt)9l6Im=}JZ74uIzjnRXQymo4_jR(3PNVqF
z0oOi-KRJa4<KdQ)+*QzkDS+=3dKJv({n+OX1vdePv}Gv@3g!VGhPhQ>0bnMl*IWdp
z>vB7vZWkNJavn^7^-Zl{!BEoNgQ(gg_>&Yj=>YDVP*Ne+!Aui43GfKaLjt`4ufRMj
z&;{@%%;y4a0l&cf1m%=SFqV+)ffN{&8DtJbO*vd5m>!R>xp*e(*^ukG(=XzG!=J<c
zf&E`{xl--m@KbU5ZK7&d#dK0!Gi*13k_u@D(?%cx7zoo};3vdJ!;BL65^x#JWPy(W
zH^a<;GF>gXLI>9uILKwA!fX>4X2ivp%_p^jcjRSZ!9GC(k1ItL>?<%Y38-K<z^oTg
z!ES@uBA|lx4r0TUfC{!6pbAu~GWGnYxL4{YUw<RHioT)O5n<nF{aL0)rLbp-auxO<
z%?qWll-2<`C);S<_wG`O|6C`#@oc()Ylzy1#Op%IiGVv`u7q+D3uY72;9%Mr6x;*2
z4Q86aLcrebsURp=0vH8zvcTJbFJaaRd;}=zz!Vk=z62Z$vzNe6fJrdp1pWrx0du23
z@oFvzn3V#x0H+<o7p$P5F<=~w4uKC^17^TnCC~w|0%nmw4?y>hjDDe@AK)68NdhMW
z-h^2uFcPo@=6ivQ0jW-WBvxPwpaY;K)b~b!dt5cnijc<_D#Eflsmw5nP*bey5WEU<
zGo&YB9);W#OK(8v#}M4Oc&Nk_Ys=|o-~;4WMg}&)Y=ANsm`XIo>O${xnYHDDDHaiK
zQDMX{(RCGZaqB&xPG+Rs)uO_W7~clDMTJPx_aZLRi5C@;oymlVy@{wl7^m{J3Zhe;
z%yY7=g@o!zRfF8Zd?e?4l8YA)8WLYWw5F}_ADcDL`%Tum)u~l{2G-USwKq~NB5RQx
zmxZiFTi!bme{g8+t~GodZhKS$S>~OIlj>xy9D%i;iRz8i5m53gz!;d(0v`jehPhl|
z1z<7EqXI7hzJOUT@C2avP#)$$IhhWUYq@kl&7q(QU<Aw{sDBwC^K0mbd#B*W*r|w%
zia2paSvnYwgL<c69?Ew@u392V-;20NCw`~kaby=jRDPN%$)j;95vPWyU*eXs)Ci?g
zir7nNycnetN&2yNs6hdbwH2jzkzL_ZNneMPpT(&(Qvu&mmU>#2?<8s+QlCPu@*_Fl
zlU&g?W^FU^-#Kf3lrJqgufm4zwHlIYi0wy?De}jEMlLrWv}{s|>J2sd(xDZ)dc^Kw
zxQ(lpRP>6x2B1}7K4P-QJq=;d%&?eQK(+8n)f&?9P`PNvuM%b9SQ43Q^CaA~V3{rL
zP-ZRXtmbJBIc+zRvDs~aL>JyTRcR~&bj*dueeZCU+NpIaCpQq>2$}j&@<YHuFb4=M
z2OJ609m+{Q*h0wZpi`jWPrxNG7Yk%*m$$>r5!e;*ILt!=y8%9dSt-yGP`fKnL!jUw
zKuegt1iAw{!5k#eA8<O%$pS+Fcf#B%a5i8G%yR<c0IOg=5V#WXHOxjR+lX1@DVA40
z+h|<WauaLID*tdMtz{p?O1iP00gcl;!I7jNbCHh!Qxo@YQUgTmK{R$Lj5gC1T-0zA
zpOjT@b{2`~ji#1p>?N(1*W>08%JMFvf*Szs2|ft&A2(B4ksCy8)DGP;pZ`H#?4<nI
zV8*2JI&pK035**|#aa_)${269ViQZAi6!|a-1K8$UhJAUmb2$Ad=7TE=7qQ4C2UH^
z5MGDI7NyxcOKXkZp>faiGkr`{Ig7+xt|%-2Q@fF93tE4(<0h7R0KAWN%37~GD^A4o
zhgrCu?pz&*b1`Ue=U-~Ex-RF%v7Uduh3nFK*@aU;FGd%SKR=4b&GoUGjB4)rPG0P<
zajfT$-X8X_O00yjOqfB>AMk4!uEm2r!tn6nl>eMvzuPIfp0P%BeOt%#x(R)P&{_FH
z&Y2%9b}_NH=Eqj#hv8Y+wRnDtX}*3c|AnzMtHpWYZ&rk78r2Bp<vQ7ko~gNc)bqAY
zh3^L&7hNHVFYBb6oI``xd-q4vqK|~!JnBT4;~}rB-qbm{D74<+`Q&+b*6}Yxt>R^!
za}XU4g)i%<-_grD(+Rl-%G_=G1uyHk69oKkY~5Fr+&S1(U8wF7wl1#@c}W;<9r6O3
z=z9LkHsF=+8q>{w<N0gz2Eu<9=uWcEoYO#l59?aGyYM(EO80sTSGw)Oa7%Y=obDc0
z*wXD)p_}Ps;f2HMk|V>xH)ZEO)2H*!^b1cubFBSIj4H2suO4mbGkq^maL++r`uIl~
zSep`a6x{_zmlr3`Lr{B~-$v+7s4QQu$jSN9zUOtse+s3pH#_0JXSdaQimgxc=BIIG
zkv|WXXGcfLY(squ<hEMRFiFpgxM)c(PSQJ!nTnFU$z;PMyAHpRQ)Dfuqa`%Hyu=$t
zdm2Yva20>5p<D$DZUQufsVi_Npe@XPP*(57K4*5AGRF>uCKGLg%nx#1@5XjRz6<1~
z-ZimDvE+4aiir&tQW92*H=(@bp!0F19dSWd{v3m1UnuAUI1lDbfkA-lVXhT86Ywa^
zy#iwZAH%#SFd0zNokD<uX@H?HL!be-0It`Cax2V*gq$mp`v7;q+zOrbB%m8Bv-({W
zW{Vev30zF<laMQez9zwINyeF|m*`cL{e@z6W$+sEuR`HH@Z4A_;$o$KMV0oX0Ng$B
zLloYZQYsQt@6E4Wqi5Mpi2Ik7m;5xE;%WoVDIn+s_XRo|px|ggNe_Ae$a(v`J*lEE
zGA>SdKzZhFC9E22hy4DKS9Tm0-i<|{QsY0N+^;>1;H3WaK&mU0Q&cdTkWru!P%s&A
zE6mLT*8!e}c?@zdGk;@7*+3$r9m{i#$cW4KdSpI<yq341^%2n<i3)B7{7vw0P;eih
z`QhwLhf1FWl#RU}m#jBq8Y-jR%c~@(5Zn`?9+10snp+o+zHtq#3=-WM7rRS(EV38;
zQ{LZ6KEBqjLiS21)xs=>*BbS<$#QA+=CwQFb<S$Tx5?!tuU}5ZT@0>0l0P|x22<c(
z!_q7$xDoK!5lQb-D3}Yl?nn-@gVIxZV_=(2Y8mr&Ag`a)&z6s+0PiPi12XHO<Q%{s
zFuy@Li3N)Ysd5yp0SaCLw1sIQ@GjtVm_bnX6TsfK$+LosJEmoIGoM~SVt*iZHS$+M
z$<2T}U~YrLd3WE~!g+G>y}H>+W6;vPdjUcZNlTA5--KBPxq0_%rsR1MS0kz)=G~`9
z1~wqSJ~HqF%vLC~+LWVtH+zaQqYJ`pCo2(U9!XD+UA$B-uBw}L?)gV^fI?)w9-tI*
z?yZd#A}-&(l&V1a+ZXxPkjvkpFrA>xHwCWrOUS*)3&JYgqYN)w!M=|_tY`FYkb|4+
zXCJzhG&T`636s5)#%jP_J-LBE$u|J|_hR7&N<I%5*qd)jLCFPxK7ANgL&<r7lD?Fo
zz)gVdfH$F>(rL1d5cjBZ2h2zPSSf>oO7GC^^k>x$3Tgu$8o;&~C};wB<`~Y>f`WYj
zyB^CIh6N4*Yz4dv1xErN9>^P6P%sd1+;OawLVZsI^gW9|ZXbM<Yu{^q2)W*~Uh=pL
z$+h;uUx@S=$nArl3NuAO``~YZnFWQ7@4!E!`+O&vII3RiFPU(S51|L7rN*}k=3U6u
z?k@y{zlh7P-A$2!pOODDG7uckR0PTt1)*}(_}CAbc{!0EX0=O1%k#<Vu{hS`BD%H<
z0cDuTLBSP(6Jh#7Ub@~JoIRBcjqv1KS$U&ga==8g(v_%N5xNda>Jv~KU{(n1321);
z%P>$*Izb;orhz6x!63jIm=ywN0&1N|7NFolz=bep2wVYJ0rRrJ4H7$vVuI58;Klvs
zl<&=yQ<vAT>R*ggBZwM;%&}1NB*4uu*Fian1!D<$3G_5X?qsOGALfpmxC~9LUvgw*
z=zmD9gPftQFq@&A#GE025ZjLkF+&}!{8=TDp&RO#+!z_Ek7QlQ8EOHuCzO+zGt?1u
zAcUcwZ*p?I8S=b$WN23XqDABAt4|~<sXxafIuNRTyFwo1&v4K%C^-W#9_B)U%K$gP
z%n%p@xEtm!f#HCKFpohwB@#SE$g7|wP_PuR9_Ayc$x48B^fg)Mm|5eSeCL=26VhXz
z;{4J$*X!i$QT3CT<81PFqFN5-VuzB~1G>R<5x4>{5T-xmWu}_?%M7M92zL|7tpBae
z@t9jFZKg)reysw!gNE>XHmoxCyDQB*>ld}3Kmk2WR8oJ=!}K{&?ad1LgFlymCPGPl
zVQePMbb${555U|funh1l%+mtT0N#LE4&{_ckRj6_gH}U9O~7`TZBUa&t~e;5y&XdV
z9qbq@pnZx%XBpOZ#MzPclW&i=0^0XvdTGcN&=D{_1XMsL!5jx={<8A<ewv%4xS5?M
zxS2_scJe+=A6O<#^-^IfFTTZVBNT?pGJO8z&hFrJCoM?X8#f$+IxaQNtIM;MaH^R3
z+e-BRxf*ok++<382wXXvQ@`X2Qg)Z%#rQs2nb9RU2WA$OlbCDpi$Dt?9G`C2u}%-T
zJ$9VEH5RUoQOhmdZH>wL>yL__XY@|=^!$_T0$%VutE_ZP%DQ{2!4-gBWgz2L0OXgf
zcj!SWxrK*%R=i53rRiEK?^HCw#1UR5%B&=nf=Q)54qxa{ZS){NZoz+vdBpP?70fa9
z_WDg7ruzO5$@M#s>-+zJ`5AJ3e{*{(!@$tE{00B@k%6)yv}?#2*aN0HlsUjuqP~A$
zF0Iy9Jp~K?L^v1ql6v^-BNyk@E1NUPTx^fQwowYFz?=v<7eBD^CC4oqSI3NKJLsj6
zfyu~EiVR#2Gabr&ZYq(B?9$8x)j}@{TqNRvncRd%nTumAjb@i{tGbbhd6>Hc3hn~D
z2(uXSpE2=;Cwks@xS~pOZJ$-))GHRLk#Xt`1De2RJ~vP}YhPeZ4Cy&`BVRYj^G-_t
z72ef*;!E7lG*I#U2^OUdFK1b_Yb0(#<4ub_?G(Q7=VG<;MXQOgOt%T561$-*wsQ;&
zEqB}zCMw;}|9|S<ou^wqSx*1Ir#mGP){cs%tJ95k8;p$>HT+J=P-ZQqe!i25E;ZXA
zlAj|lHPWsO6}^9%0ok8lV1L%pwrJvC6J6Z*u|F)7aeFf6Tew!dKD6)&)YeB)0@Rj2
z)UE)f_PYu3pxqyD;YzqZ!&z$5R(YC7_3kGshZ$1>`-d{xjORDBaOn;%&>a?cOMRSV
z))rAEIn^Y?C*1##%$!-XqM$2$SrQd8vv%!n{odB5*pg;kypXrCetI)0xP`n8Tny_W
zw~)6DW((w{A7KJl*9P-^^+Ff@clC=JF$qjAAu4$a>oo}G6cfBnNIgPIq2MDx2bea{
zfX@NrB=QB!`GlM%kskpoV3rH$)1sSUzJXd+0o;iE^vl>4Tos@uompazR6R+ZX}GfN
zUfsFb3rm8FL>?}xU+FUxlX`Whcqp9+<Q@`5a(sIcx%kzcQsQet)YAyF)PyAd#s>EQ
z)$y_VGca+mmx@eiZk*YeCoQ4YnDDx`_=th3T|kE`gx@dqlOr^9K8U!WJAay!UQ;OO
z4>$;BKPXj&cl-5I^Wi3ESCSgyrD%tJljq-)cZJ;>hFe2i9$f*Mjd?O^9AOjcRna)w
zY31*^j-GdVd2zEVa81jCS0tiPpH)B?l+vlY`ngVUjde&4=#08JreC@Ou-5Y)Ir+3B
zewUXdr(k^}IH!PME8Gw=J3zVr3vd_AOo0r=xejJ6RJJQ%GO_xxgo0+GLCtJ(KZ4Vz
zvWE#uHV5np(*(*%B<M^?Pf!nq_5^4E*yK3J@IusSFy|9>CY09N%l(!D+krc&QPs>0
zxssNn^_Sa`xdn3TFTdLL%eNAYt0c$x#p^GNkbUBx@<ltzt6<%F%`#+{LaD#ZqOHI9
zE6k_oX@i&Jjhec9Q0aEO>5VmC#ipM+iTj;MRKp!@6QGx>OJ4O;TS^sKb5I&S2k*ET
zwX4rU?SKJ}o-Q5nk7g5Y^4J<RE2*U)-H&3m+GeV&a=WO!<i@Kgw-rQvM4nbb$(I1z
zVSa>i5-a_f5U0Mksq;-JsXthy^2A6zcN)*>AgA6EW)CPQu|VqGL0urX*;j`W>c<D1
zWM*-dOgov;e%w=$83eh_zLA{ojxls9_D7q2Kc{`V&AyY7p9F=*Pl=6RB;#!MO<_E5
zv+ryhn()4iagpUjwAptC)~=I9FV)7(9mnn1A7el@a3WT9WsjmmnQGyx*NQHE{lW3W
zfJ`%!_?ohi)&!;LR{Nif-I*qTN0b+DRbl9|o{I~&LvFP{k}L8g7dOYph<_AHJ!5vl
z=IBQUZ2XPi>8Y+Yss#?V^B}$=xIq}K^D$FnEZnua2MxG4^Pe@~b~C<}FZRED@O_?`
zA3ecPdED$$iEg=Hb&f~#?zVY~Ey+LgC|k@b+&tHU_kNi(@<RhoJbG#&!`liBkFD56
z>rZ&g_fo?*CsfAVr6{chwtiVwpTj_|4l9l-@L#d;J$cI6GB3QX4OLZ4-CTG-6_X!T
zg3>=Hl(#N?L1D&HH**iyFFY;g!Do1rxMmoVb>UR?oHwwLe3qzJslX*rtNTqx=g81Z
zbgohdotcto)j<cSP=nziJkuM6wra+<cDcs?*JEQo#q7tBJ2qyR-on(+9UIg5?Xx(X
zY4<SXf!LBfPOc$pD{9|B!A3xh)0xsj2W$o`HznM0zrRR4_>qV`kZ2AC-bl|o0;UI4
zOJ`wyYAPHeWn8@2_1*ryI}__TWRI1y&cr$c=5)w)1d)m#D_g=|f}^oEle+5&E<}C|
z<fXP+8af)w^TsHnnLWac9%ZVDP5Y;6E1NERQ&GDDI;$#<*EUg3;&H#A8i98bdj}NM
z1-u0FJmj*rkBNI;#Kl?rb^julwbjUeC}m~s3z$ui%UY!3$I6zd%i8Oz3%$_r3-Uif
zUaG657G}-!?n@MvGAM!uPQ>BS(7+~l@X#L`_+DSnTLum6A5b6Az=P-GCN%I&DsKoh
zaJcVzgQ0<+(AZZ(9)o9UFp*hS%*L5pd4)f*CM-K|i6uVFdbZmxVgcgeQKbJ~End{&
z148N2YxtK;uV#K+r6@RK<oRAOn3zmYMJH0b_Tgis{~u%T0VY+kw2yc9nR8}#c4lW-
zHV4>USayL0mYiXM1<6@5l5>zOD3T<J0)i-rt0E#`&N-ogdc6kBIV;zkui={h?^}Il
zS?>4!p8t2Ar)H|UtE;=KtK;d@J(_qRScj}S6onIfV*E4iDyY|l+!bJP$rsv;pV*!C
zK^8}^rfYBf#LEt{TI)z#{L|rSfJemJ%%7(CQAy33pdXDg=827M4xUEV_~@z?XdVL7
z7A;aGSqzpr6ZQ?LHF@cDr5k3_JDeiC__;Fm3<TWg3(<RfK*BV~nG45$2-FAQOa^fl
zka2+8_?S%vU-bF0>gsnD7!&YAeY=)JY*dnS|Mco^B8?fo5HY7ynaL`t7`aOeGDiu`
zUj>|xu40NL18Mopz(Pbj0}z<Hc!^3YWtgi$?xNG&Y4cTDb8<Zn@*zORqG?N%&Jc~g
z3;I<+CMEvhm#|JCjSz~DE()xK4kgb&gZn3d<T*GCb`5Zt=NOPEAei%CdAA=UaEk0N
zWF`GAxnDdo(ILpGFe;0Q;75iM=awFbxFF!dO(M>O=yb+KWj6#;LV^*u08$PJp80=_
zc;cyuQx~hcixqzGWkq?DQoK(<1<rog*Ti*5NqfYA_V_f$M#9KZo=oleMMKWN{4hJ2
z`rOxG#HLbH?+$GsJYm9ORk;-;u=%QzMw)jSEE`P2f#<6_iJI%-I<rz+3)e<4E|*&P
ziC+u<Q3+=M`S5(aW3zQAny7VBv7)vrMs3B4+KScQ*2px*7PXZu_Vq~E(VpyyaEgsv
z5B!Q;;vGVDR^u<}BK$xI>unnG7^}PcVrEz1X}ifWmOspKom=n&u}kDHn1<?|^a9<F
z<ELXiyns?ky`3M?4Cx`9&FVS}sn$jPpaK0TBsh9%FC;*p3C*}#twTlDZ`DIh(*N0r
zmOx($RV3+EaVSuyhEPLv$y%i%x@rW|_ygii(JN4PF@42Uv=O?ntx~mcAdgb1`owZ{
zVtOlzBu!_uK^4<U=!r9QC$y89x;fI2rPoeIx$C0+C`ny>ElN-?8;By(_haQNUvHj<
ztms}CH`LV!puqy&;w+^K^{spHIjQ~-3aY1vHb4)pYk{*^ci4v$f%KP1Ly2C2p1M>U
z<guZS2GCLJ?K6~WtZxH<nXcNUR1<x35tb$OmGyBFhkkxL4tUhhPQ*oW`lBu|Z|!(W
zwbZ#+;xc9Z+Icv-PIo*5ixv79QrlLKLfCeC`Vg3^eh0<WLBHM@I@jrGN_EnGk?T(S
zqRW)(tj##3y6DQwmFlWXVPX~f80Np-^tVV)cRdIjw0h{>7bsP!A3z#<>g+5Gfpq>h
zjQRBo=c2LI=ceG3T)m*9QhoKIb!Y+g=g4n=eH%()fIe%EQUmphWNe<&7w0H7Sf35e
z4ABay9jd=sqtq~+gA@+ezc<8|G95;#jnMs|=aITCv@}W&DnVzYA8)4A7~QNwsj>Ru
zT1t)6S7u<;t*;!0W>)`*5}BY!Ate*_RfCn9q`#ex{!IUc-zhqZyiC=1q1>nGA$dwo
z*AeJ>hF%6aGj%hBou%*WhYg&%H=4IOy2TWw=IT%SVl7Xf58ck!eP$|kw$6m9FVK(I
zLF=mfKv#?Opx*fSOZV%6^)DS?i0)QzM@P3z--cR!j-CRU%k^03aD`4rwK`XC+KgLm
z_3Ax1j7fK#tkn5>3-Z27zn6;RE_5+m*62H+?X~)M;OjJp9~bDxu=DkL8!T;u{vG<?
zsMBE2n{+PnzFFUR1v`n#Zn(x#XCdzw=^iM-i**_DvQ<CcSgCFLJjA<Q?{0~;7+nWe
zv_qF6wL5hqt<<IZ&X7{Obm}6dF4GsHN4Z?T4*l=e4SOlIM_<we2Nmm+s4si<9i!0s
z>0QuIl|Bs1yh=ZE9Xb~M=%q?sqgNpf`}8@e1=s3Zp!5BDNq6k&(|urL2XvvM)b+Xm
zrEpMlYxf~tF`MI+zWBXCzmI{+jrzwi_)bc<f;HZ(?;WJnE&B1fI0{3r>4`6-bvu;B
z?RwHIoQ$kbpw#Zvogx1&U5Oa))+w!&x<{8oC->^dQG@Q&Z&WFDzrLeXsRwk63zd3M
zPlzh@klu^DJgi5+J|EFXpw&n9{cDwaOh3^A9jiXS82zFi21|QF-`88IqdFBOcuaSM
zu8!+3CSY@bj>9IO((gh)U+NoC7GLR%o%nD^9|Y$&`a6{1w>o?##>~2TQ>DJw2chjB
z^wywKKk8Cw`zQT18q9y|3uj_cNw<J){G!t?!2ziHa_I9neec;=v{apjqcApVuRJu+
zLu=RvLcEq?;^^d1(q0=Ox;g1#5bcFn=luQ{h>k)WZPWy8T^J&u8y!7}3QW8w7I9#9
z>MY>tNQbIWu{HJ3uBK<gW>jo8QWDI}89@ByYk+5EH7D+&l!G~0!-;=+E%4locEs1=
zCs?=9qxj4C1CeBfl5>$&=SBF2BKRNy9+Iq3G{`uOQyaB8lp=)VWT99?vCua71e~`H
zfk+i1<P0ZKTZo8r;cFn$goryM-Ug8_M4FPWB-GKn8IkJem~34LW6=736t~e2LpzS1
za|V?#3)R!rJ(Hj!U1v9vtqZS)Bz-FkFG>H71}dz(!97`z8_TX_Eb<oBHxFS~G6uyO
z(>Ls3SJJ5tyONpP*_HgZfnCY{6WNtC9S__lDBRK0C~Dme7NB%L{AxV~wbAIQz#Tmw
zzX81*zph?~Ur%3*-=Mx6zahO3zezfJ4ij`y5l4R+qfu0$@PK|0>a>N~h6joQRpTsh
z4WeR0jhEkrCYER<`|Rn{Rd`5fHWi*dYu-E+9vWIl9V3|#QTO_T=p&G{V@?;SLw|zm
ztn>+&$$SVg8NGQvli3iz0sTFS+tn|uXEFyCGMT;5WQBAV%qB^XoWW#1vzmHKgEk_1
z(=6((C8A5w=R!*{J#{hl7D1(}r6(?<-UfH0-aZCrZ9OcL+WTxYJK~8byL5dVg_)rT
zm9sl`2eCWe-i6(9ct5-2jsbSZm!rbw;YKZX$N##L-SOQc*&T1`$L@F^8ks`9Xg9iJ
zRrhQ^w<?eWbI>1GFt=HkGq+t~j7FzTVs3j^GPe`AF}HuhVm$pM;tuK`U{xXg^DyRi
z32J3n4}<QK^%vleXm<;9I}(*SMSq5FHKwCInA>9;ncEm#QuQK~SZ)0|G?=EFAt&kj
z3}`k(f7+foOm4~?n$65%_a)5Xn@gF)X?2*xPp@MRGtm^*(LLKThmV}k99{^m6{@=H
zp(K`Map2-)WawAuPw6-sKdo0F-A1=Wg?9AE7cy@@pxj(N&|%(|phXGlNCETK4|zz^
z=R>1meO+zl?Pj<{^Z}GfRKE``r06i3fta3vQjP1Co0zv-AwN~$hIH4~kHZSmw1Xt1
z>k5=}hTe~I&eWaJeP!thD4%Ry-hg>q153%(AN6M50*EnRr%qtr+TgdY9=(-$I|xk`
z>fiznroQOI!PI4=IGB1ag@dUBc^phRNLz{SR>r|p#}yn*{SKRIr1kY2Os&0|gQ;_8
zb1=07dTgo(p2NXZSA;6pYhWGC^-py<n0kIB2UBC=(n=3p%fZyOkk&?jg*>*^t*?N3
zbvE+VUOx}t4yto7Kz)aYxL#dkPWR|YU9Y^By8a3_70^eZmyjNvPfhheiVJihY_dZC
zxeHx<{OSHuLUAY(?{e?rUm*U4!Cxr;Yytk_@v@cpD~PYn#$QGJWEK9_)GvZnAtqIS
z5!8a9s($@6A_1sv8~m84otaH)frrCtrHAdtkDlC>37g-RMlcN-4(Q!bgsb1_Nh9cu
z3K-Onpn8V%V|!@?SHXb7`u<)tf(~$x=n;Ep1Y6*eqC2#t5&Vku#r3uWG=e;2AXR@I
zrV+e%9*tlkj4WM`MPrzuONY`34#D8E^cllw1eZ;s5zIxk%hl&6(Fp1y2l;wd1&!b!
zGE!InQb?sehIk8g!<{sObmXp{zGXU%U=MOstjnOW26`cir$mDtM(}nijbL0G8bO2M
zG=iO#G=f+5(FlHkvYP5kU>42vXfz|``X(4kb3J=4jo?wpX{pa?LL+!`8jWBwx`Q@4
zidfp}w6kag509b|yoLOB&?kU*)O}Dgo%F4!;+=IXxOCC?jOAGR0P<3yuim3Dmfir9
z=&sLR&aw13a8~L+8?zU_0DA7Fn_a}Q^jk3E-g-K6+DAV#nq%oLOE{J;xPW8nAu!MZ
zx?Y@P=@3eGkghD|So&#{-4J~*aynFxyO3k)UYBw#eG*OAnK}t2GC~i7hDYiLi#V2U
zwt-{mC(yKv(Oc2wjnyBZF&n4fhve}(+>2xBR5UFU^p()_M7_R|!dUv>QI4f!(9#s$
zqJ(4Vk0x_0y%FX;U3UTJ4E;FVXX=Z0aV#Bf$g%Wh<Y<om8!4Qt$3dU-bh~yOOV2|3
z&(@>nax7hdbS~82uI5;J+cg|ZzdV&==`jO2mQF=1%XIG;$I^SYb1Z!|D$WZ1>R^tg
z-{{A&^oN}}mOcbsov%9~N2~Nl<2jc8Y6mKe-hfhAtGmqOSb8S%eu4fFdRVW&>C3V7
z+XFbf%0<{s`V~}~&3Xgs%Z2(REMbe@(41rGd)9L-{mcQ5rC*0VY||gW)VAx^`#F{_
zM_zX5Hdk>hy)c_&>6;dCEPW@^d6|A5xw~9<o5Hd52w3JG{VURQh0Y$wvGn`3IhH<p
zHpkL45!Y3E1<K`Wy}S>{(&xd#_vsO^x@+|l9>>y;Y~@(G3AAxQKevKoX%`lCP~Q(-
z9n$B*P7dp_i1!A48RXxnPqgP)`el^h&AKFmW9h}n#jW~<a*m}tggBP&vy5Zu%x*H4
z?!>Wl3)GIg_0_P$d-NSGIF=p=tGG{JGn-@SK`5gK^p8mMgF2edvGi*w>xXs4MvkRR
z5#yu!rB)nEA3-fXqSr#_kLwrfb1c0IGLP!Zz>l%?RF0*07jrCq7vg<N&t8K?JAE@O
z;UBu!AcgnHF~ssu{m4+Ip4H#t_c{GJa{at6Iv0E6bnZ;0PUv~4M=$Cwu%(yuvXwXw
zLhpi>UQrn{uSIoDE`1fHn!Wg3mE151C5!g21eG(nu|K@rl?S3MF}w_bXyOkqpMq5-
zH?_k{=j*#clnasNJcrUrZZ1Tg)2}Cp7NNZ;p8_WxxlC>)KBdk)7+7*^A<CRFsNu<N
zWbjq)424RP+lfyrmBzL@<DOZt?c~Z@FbGL(Pd~AFL9q7oh9lu2XT<d&24r&d5^=^r
zm&pS~NZi>7lS>{XM4B@TT1Xx&M3(a*l$tz5h&(6fLJ-4*C~zKODuxSD-|2E4h%<#K
zb=pxWBcq2AX}R;;9U#V}90$?P;o&jKV}-54snrR@I3X&Xn^9oN6NIg|v$hL}iQ+TZ
z8D9Wmk`Tk452)g)LX2{1QS>w+#yOAG1u;DYE5h3I(|3WGD?T%=y5<Qn*O`R|Bzb`l
z3slAz2hrpwuUVc@+ge|3B5b_~3)wg~NRYUVbE6PxHkylt$Z~>*AbFb*c{a}NLKLWs
zS+MyxBF+CwgZZR3gZ5hnSt80g6Z(j>Nn)ZgRcQjEtq^hN0Gg&qJ0Y^1iKwNK_Cgdm
zaVRI!L5Nc457fj+M<L3cqb)&n5~3Zhj0VwJhzjRlO+i!$(c77ib|lhGh{4W(P>mwp
zg&5^jECf-Rk%?+K(W%@EqE}iTh?&k@`t+7mFL3st;39p5SmOLW2}IxI8OXwNXZk7-
z15%rVSmX3A05LGu3&c9-7nE;gP^b{nE^xkzgBTKP4q~&@YAJ}((Zyi9#2LVBkIn1|
zpFPg^F%aXjdxF^K97d}W8868>?CfwroRx&Cu5NeEHXtU1Sv&7{jvW9oQPOtAc@}L}
zWOAr41RPVb2T>!V!E6?Gmoh58aZ2%@Z82I&g?|#AWlGCb$&?n3Vc^Amk*1_J#J)j-
zk}7}+<Cp|vZG4@AqOC)Rs5Upk#FALPNpID{C}r#=u#3)dIvfClI~dKTdkZL+)72V3
z^i@f0Z*qU1hhfqhQ)?nzjxdmzOV=i-f3e0U`ZArEd6n}qt!|e{|B<e&XD(IYl2l1-
z5pthzjc|D;g+XG_i7=?#6x84ptYlGm13F7A6?`+2S{$8&@Hy{40r5*k{3LR4o@Wy;
zIS@CAZGptbiDj<2663nFbPBC{9Rmp~e^k!V^Dx@GQ)1jhFRDy6n2t=`sUzd@$0XcO
zp9%1B?*vt*8Z@oPQDe%pPz?jTPJepIkILPPKq;+lKK`U1h1ggH<Bw{P1L^naNG(5-
z{LBOoQ&y&O+RejIc8DacCH?rLk~j!%atXrhlLhsH4lp)6Ew%jNrAeP`j6N41Bttp1
zGXSp)dIIuVNud55-LC<?jBdYx?^>P4Lb@OH?SO8%sTg2ir&B4&*>Pk-_xXe2a7f3{
zq$<-x-X0y+!O`M<VnS2CXSqQV^Cg0R2xxXG^b_xBQ>GJ0mQ5kL({Ls5!1Z8CpN;oX
zfRdUaoc|6XtWChy5D-fD1=B(>#Ae8LiMSr9<j^3zCn3KF0(1kE*5q=?B{GM@Yba%Q
zK24^#)z|7H4bW3Vma#9Y4bFy!LJW?=TL!nGPFTgu2Npp)EtL1VA7(m|^}P)vT=>Fw
z=h%SFyZ2=crVJ<$f)h;ps+o+R7)t7RI@7NSrqD2-=`A##n5n?dSs>C*_)B54L05K#
z@82=iWDg4ZGAX1>THA72=ch?mwakab+#n3i*%)kqMy3G7Ixf>^&^nsT!P_%{l=f~B
zv<u`;Kt98t@TKZG&~23tO+%L(=n0QUz;P|0fF9wYaB+65Srt4BNdLKbp#=!e2Js${
zBP5oASTGOU#R0)}^a1h=iESYI%*Tc_KyWXJdx7jDaUF<aG`qC{!P`Jw0%SRfhd_iE
z81)|#Pl1>QVi=(3iy%I1Yju%-7mO&8g}_FnG*6pnFf<Ol36DF$emfxW9EhVp9w+fQ
zh?jx92vGTNLs~~)n!X$Yy6H%1F2+#A!(YJH*>TD0@XvxAS(Ulm=Pj*ctqZqC!@5kU
zKa7i<urA%laC;w=@3n1X)43FlO@BzOHXB`TG<MalS*1c<d>&Q{?`2;+16=Um0eHPf
zb+C7RP6_slPq0ls><2>+>Ls<a@zec?@4gc5<-Yq3Yy_>l9;m#JYp{P?9lP>k?N4Q+
zE(`?O(9Mx;<^sp9Gtc<JZbhUH8TTgD;2-q=&!4%?=VvmhA|%moAWrx`<^~kUULAe_
z(xe6W6s7kuKpKbySAbmN{WH9N0)$@m1yD_xYqL4|E+I34U=ShCRXV8{<tze%3-Rh0
zAPpRkjpC#KJA|-ifGrIW`t7v1LayItNKJ2kKI*B?v3-lC)%9Y{g-bJ5-4r(Huw9P9
zQ?_Fkm9J&2o$@+*f_yFgX3CZ=#Piq-rEtDbN6WY{<-!2*e2xNIOrNT3K+Z1e>X<Ok
zLl08d57=Mu#&mDNJqGQFo$=U0q-B%Vs_+r`|1F)D0~1gA$J_AG(b~i>dyZ={p)BCI
zsSrPOm6j_@rI9<8Nnp(o$5hqwFoeC!2qw0&8Z4{s?(Qf+_!G$WyA9ZHHiiQ00cvlf
zQ#%d?#)2F|r^`>EF{wqa?I16r6W83|D<s$LAP>@slbQErxO5Wa2Y^;Hr!G<-rX570
zVvA6mfY#LW=Z1qB*4Bp9($}J}XW{!apkXD_{B;Tw{Tav)=yVU9z6mkKIg3%&fLd&L
z?)5WeGGKO}o9=b}cBdT}+5n{8=>y~p5^Q%y0~rZWwN8Ti)DN%A5dPn09m7ZJW2FKd
zvlv8yI1k7Q5<eltb|4o4Z1{$L+iiLx{Lkj2MEFDCxQ;;>{t+M#kzn}efjk4qY~cs}
z7`>1*N?B~hRs*+Z2}}ACOlB<P|6&Fq|B}9wknjmbQvRPnekVcssY`HrCm^%(bos$$
z*uzj%kC6m+e74F%G@+G=6C#!Ormu)!(HzY{EKJe)Xr_kxQaDV#$aiN4&g0*i(pBIY
z@AGhUdtEh;3SI2GOYKYIYlxPUQTETVU{AEP*0>osA6->a1Z(8r>$#R3dv!w|+5>9S
zT%PO8j&wfA>44T8X1ySTEVE;9Zy95~Y=>B_IHGz*tZ6qmF9q~rgA;3Iqtgi_(ctK}
zk}faw8=Tv~eG@<$9G*rfPXfW%PabJ-o&wuZKq$*+vyEFV#>Ha@`DhPi_Imj9g!p&C
z|29C{%LJ1{CK34!yuJd2dbYCRtw=B8lN?ZG7fH!*=O2q;$6z-8=mD^QI5C(Cjq>?L
z>xFMYdo!dhxf@|4)UTe=j0%p(V0C64j{75z4~F~9GS=n@C(L?QbR+SGsCIf*KHZa9
z5OWOYL0M?x7KoCw*nTYtvqY2GtSyk%F1Zls!W1?aSse2&k`b@!`zqQ8JvhiFO8<%E
zB)<Z_q0)jTcOe?1S8~fsfo2HGx0geuSxx@pbu4Jsl7;NT-bhN<6ms-{!Xxz3UE6V#
zFCx3064~vP$ZjGsYk}%6ivg-|8KSH!Qdn%scS2~PBwB<Nof1-XN=T6vLNlvpH85S(
z56RT0`Mp=8NvklmsSSs%Q$Mo7rHC%74R_$RUk!{cPvk^Plx2HOI#L)FoNSSoFhzws
zRj%4_XI>6jvQf`%kQ}|1Y>m2uEk{2?T!Q4-AZ=OB<;@J-x%e%As9kf4(QzDym$T#8
z%J2z6o?aP#Taag022TRfOYspaEHM1NxSm*9i-k1Wm!<FMfmPv11cCw)WS{`tIe-GX
zhxz7DMAs7pqB+rXc0hD{ApODE3*gQ3rA>#`y^B1dopE+t$^l%GGdM9q&%DOx;tWu{
zM)_WBa#q5LXQ^Vi!~NB0fD%dMJg^w)6QL(oD(`3wIpY%^FP$$UC;Y!fhDMhgQJmBv
z(J0TY=JT2SLRVF+k44mI5w%%FO^O!hAe%D)Mbu&~+UKQySm$UDtiVV1BVYm1@KAV$
zotb_@t_hC^ZFckz&y@ec;l=VlJh%$~n;~*NAb25&{XnV!-X32xr_p?w#%4RIifscM
zX*)2)R12Ih_?(=OpXqZ-L!RUm%?Q|BdB6BfoX=l;I@6jO>e_*!_E2ekMwuPM@j9ou
z5dmBwU<#Iz>i>{0jHVmv?X!qR2e7Sws|U46I?x8>i^$GHfIxQ;70b|l0|H|}Tmobf
ziRmCZpMyaPAiM|!W|U_I&j)fGE_VTfn?R&2M|J_hoghX4=|bWv5bptb1`s|Bg45A~
z1A!PBNv!e{Xud<b=9r61kS@+(`mI100+5l!I3Qz4a3nDo$ZUY}{_w-LK>nXbK&u0k
zf{f0SoN@m5qtqI$7x&!BB;v?fn4h$O1Uwvgf8d9OReQUAcgoC53=t6a{~$BOgT?u<
z2k{>E3D&qXd_k-{at%s|XMyv%y9lgZ{Z5&2Znvzu-~TPjUVc!Cl1B>jVV>@;PP_8%
ztKt6aDfiG(-(8GjP-4gO;Ka7%+IUxm2GUhJv=Y5fiEMZL$wr|j`jh!?o<ynM*@)AM
z?Uu)Y-SQZ)dx-;f%VWT9c?{SskEM3YW5Diq%%1=m4MSkzhQ=&^>oV*?fnkaK$-c$l
zrNA3y{n;H>)Hrn?h~V}3sY8|r03pf=&B2e#GV8%q7C#O=$i}+P$M_*wrc<2wnun{6
zbvuX9Xg8iSZH02W2v0Vb_`1fnA&jcqtr))9_dSnSh}QEL*i4TkiK`%lF-lgaKHw<)
zg4~4^6-wE71g{sf=p0u;hA+r0$HGtVTY#o~k2UN*sk_LYaw8o2)|MRPOj)vA^^-ir
zQ@q1i3(LL}zF9d_CM{3{lbF+jlqcanNbu4eyjB@3Xt~NC2+knmD_gw`SfCTQow*)P
zA6Kbw^#_r96&6@@>f@78S5h}(H0P+IOD{zB3^Vcv_(F_9epC}KmAY6ejiJb`R*Sd_
znkUTl=}2Z38;In*<59P_S6J)#p6+;b)sGGq0Ouj??-Uc=iF&&kkVHMd(~PC?B*=#W
z;oBkR-RQ62`VYwO=ro>Ad30)eE?%<(YA=P;`=XOEAV<+@7o7^3@2Mas1CnQ|4@4>R
zLCghsM^QxY`l+i%3MG+BedGlZg?<k_%fY-1pkD#84#*mS@&XvR{pANY38c~w{&8?O
zgL6C6HgIoY@b(~X0&<8%6A(`VIYy!o#4A9aCy@@~M<8DVoFO1m&cieU;EV&21tbHI
z#sh8nu=QZq8$TbZo8~*}#yznC&OF03a4&8VLKFb>CJ<#n8Ua*pBKPlsj}0Z{q|f(7
zu;ddRNKmYZB@?@?E#^&9u*%Ons~aC(HP-bD_W6cHyC9BM04dn#TQc|}kTU^c)|%(L
zuoMr1tO7`posg>W637z(6xoYXWbc4@3m`>SoG7vck|?s5y$8{GN|Bue^Cti)vhRR=
z1F%KbD^X+#q?M!|1rY3uL`#wV0q$QJoJE$s5?k2;Qe<U78j)a;bpX<e1dD7mkYNBR
zvL!$kkzkRn0kRU1wk#1fij0doX^9+A&vXc~8EDFJsNU<2g2RbUwvZb_QG9e2txhV>
z-ukRO2OxJ3Ky<vfDRulN$X5ZP<Gt<Z^bN=_=(G)Oz?JpxLoCVX<18aOv5HkiSQ5SA
z)CnL}tSXmIn?SArNa0*9h4T!^Cjcm%You_#1MwLhIRDt^G1;+I__zQNXBDg0+2%og
ziOO-v<J?oqC<hE#04byTK#Bm$dkq;J=m*gW1Wk-Q4|$g`_`kr@6x?MD5uXR@0zZWL
z8Ie4kbR-C_RdDYFjy8a1ba%GE<t$J`0nTM0wgb74#6A#*fLu@FCJ_GsavO<zLG)RT
ztIPo9kArZY!OuCM76T-Qg<bp{Cild)h+qXHXTz}t44VOx!^?r}0w`}EyxRFebOH(c
zIXnm7E+Y87;MoW6s{ze#1fl9Z<Y$ph_vPS$(cqMV)mS~?kx_Zee2J{L>E&H*ipYC9
zAN0jS*^)?d0h0V!@W(`wZ$x~D0g~jqf!qnONq#jEB!MK7{IqEi@{{~1xF2S4Ci!U~
zPfBna?clDyk`hRwOmFaxF*uvbm%x1jAocD;An%i4Q~4E;FG#T7{S4$M60CP-4deo(
z-bH|fNk~%(B#p4PtBo3(3hdao8WxnBFv_<OwJ3<rxe2X&SJO59E<fY!^T5l`M4~So
zMv~V>KSsgmnMg&1{h40ZhV5R29htr$V>&$DiysHa1x4%?UG`IYeLeEK?4b09B6j4p
zrYv2gHc92mXana>b?K^t{EePRzG)HGD$S~4BbwHbl|RG4bB1($B4eh=sI_F?0yVP^
z`@W1Pz%WZ{X+~3`nM_BmnQFGU)tWqKiJBde9y_|15lyf;`l&ji2`w3silxAJjP&hC
zI$33cMIK#M4~9^m`5#lx?CUdCtN`q13j6K<gMDa%{me3-y|^yMK>Zi^oXx8Re+W)#
z>-tMu*8yc&4)DH&aV_z=bpr82se#^I2&Vr4&lE6E0;qZy`P`KFPXLOMGou!}e0RUI
z<6;h`tzD7&uHSXE`9xzZkFJ`U>?fzIj9V5$@*F@ii?5rg{t}Q|=)@xECPi=<<Uu-7
z*WE?!cZ0kgkXKeC_Pky-2o<~eTCC93qV6y8(=oa_9bJ*NFvp55o9=?+vk-L*5ay7v
zRSt)Y--7%XAc-T#)-ev`QrCh5kj#Q=n@Y*eK{f$+6nMKIjZPqq{rEbXM)1}P@KXWi
zE&x3hL~kIyNQ?q87|1{p{XvWZG6JB|Z}NruHOKHO;g&OKXbn8g@rt$P22#8(v!ole
zXP#W<MVDkUGZAJ&my|FUs=;@MFf?TgYHL&7HmoJKHWd`m=2e5uh#-rNoMp+X!IEuR
zqW6QviDl689a>XlCdd+!?jz#Wlod`zSNDLe<fVN~z9h_hA`6x*f<rTz07Rb%!8e-0
zggGUg72S-c#YF3|%T=wY)x?Yl_AQUD%A|($nVHm@9-c`}>LHobuEsp)vxbm@xz(;T
zOe$n<^_R6mb$d69Y{6a$KId)4Nqu%2mE=#3n!>q<okYd$Bnp4bQ`}Cz!n26m301*l
z!R3?AxSf>2Cx#@%?QAS*%Qz&ZQN~j6CB2Q+G`B3fH}R)718<Vc$ddRKntMgAxIcUo
z@O?Rg|8XPm8}hq>r!tguBZigk6P9ZaeU29j*UfPE=GK0NlKz5wFqr-%@plnhD7W_I
zzzgq!)Ob>ITNG??2Y8a=kq6<ff-^~^r+)xEgx$FChc@Ixwu_PQa8BA5_$2)Ui4Etb
z?I-@zVT^jl*o5;NiAb)^+&Xwh>Ne^G5k0Rz2+;xNIeN_T7DDBY?7nwo_q`*#?;Y8F
z@5t_ZM|R&kvishV-S>{{zISBzy(7Et9oc>F$nJYbcHcX)``(e=_m1qocVzdyBfIaN
z!QHU>?#S+YXBd{z(j3`+@5t_ZM|R&kvishV-S>{{zIVdNWRBA@fX>a4-S>`ai5Fy!
z?7nwo_q`*#@11>}pjgN5zV9^|d1YNag9RE>z5U$hWqCKiHGk_3a7O={{}A+zr^4}o
zgjAm=7NMetqPX*iA52Cr%|b(zJp(#a&1Owi(dV*5Bmxn>y?b6fLJ_{bdqMC>gm3Ro
z2p*4c=iZBgr$v6AhhacAHJ=q(0iKt|y)?pof3FB$7MTU}c{O`6<d;XfmMZm{;O!!Z
zu(j%S;i-u5jo=%CS4Q|o@J+#cN7}W(a+l!!BitnTwuBw5`r3@AWH~#LpZo@>&djH3
zUEUoVUV+EzMIgr6+7LC>Sv3R|-TCJ}<j_g)N3}eP8oQ=ZMlLvYqsK1BpJ_B?JN^RB
zW&I(^sgnT{Z4}xBr-J+k((wm6e{+=}1^H80Q6VV**XspYqxz*xLAY4|SWm>;m<`Xs
zq?h2=7%TpRg0K<QcxlTPYH*|n6w!ETn^tN_WDro5v<LxXLmj5KaNtgqPHgyc;KA0F
za33N3DtO&<AV$V1JfK?N8n?NOkJ$?c=O%C}XK5Gabp)y-2D)}hr2hgGf4sgMyA^EV
zyYMrBDR~x%$Hdv6*1%Mo5vaQj+)v@v3@Z}x5;sZQRROu%41w<!*TH~6d@ri@{Q|yW
z3JueO3O|Gew$nMw!5DN<DmpjoT5zaxb_;ooGbDM@`5_YV;G0OHu2buL1jq`0h0waL
z5Cy@%ia->^Y3ZfGzv)xxF`{x+kP7ZFJqn+Odx5Uc3NH%N#Tl;xSHTM)UN?xp1tJu5
z&jwK<8Hxv=f|D*4QCY!GjJ}}|d8%L?yuw46qxXq1n!=-qp+c99MrRRxsw23Yq?1G0
zlsA>c#%;=*`PpD$>2k@SpN-~zHY6b}Bq8NCPc0?xb~aV5gy^ISH$mMY-EJi!E$3I}
z?WL}kFPJn{b&#5>>V1Qh*UHops$>uNykCKM#8j9KZ2be+N)lTs{@nO1qCG0dVhpG1
z|Iiam(}d}b1d|&02<#k#4sou>4RWd2AjbfIRPzkt+EN<VmM|F+J5u%AT!yBwzc4mR
zxO!qm^`7hi?h=#2Lhp6DU;X9iBxCa>*c^H>q8dL^o`auz0<t^DN~WU0f&bN~$*93C
zfo}zes>gM)w7NFV2g%Q**z^q9yACyGfAl3fv$lET;Wt#(=g|h~u_&p}5@}JxxEU~`
z7@uH6>Y3>2GK)-{5v8Nav2hC)g}(~3B~Iyy(mBTjnbhwF!2wTSEq_=QXdgzx7EK02
z527p4qR$3o{)SRN#|&TrzYh91-L70uw~>sk#X2kt0g}7HBv%-*uM0q*2Z(Yyf3A_l
z90a|Od^5mzu1RLt6QCakv^|dY@;sAD3*jb$vI)JgdX|J9bPA4?*kq)o%DVtBr~t_u
zk&8`6N~Qtm`hd3ekjTxZwiU2%b@CU7vDM!sv3;Ka|IvV~F38o2!8Y4^Hextr;wun|
z84r(*;8+hZgF##hWCtLdT%p-;*$3)sKxi3=2Y}p1VjYN=fSdrJ3GC?$XBoNUec~z@
z=M9L3X9v_c5n&ZrmijELP)`X9HUWVT2dS-AweItMcOeoSM<9XinveVM8UdB{_5)tB
zTDi4{*gP^|o&OFTDE57s$Uq05_^2V$AN~ZEQhXSi)bmUVRj0Qjcn%8(F6~Lgrp=#9
zVkC*$A@H7ULS(HyL-16=V>i$}hqwxJ+?5i%8N)bhc@@6p?T05HU3Gu5wY*BxftL3<
zwD~?jEU(g3((>xA#{v={c?<;gGBPk24SE>edLimwCXIaOfIgdUe~DWG-4263K(|u3
z^|r}<0Q7xy>y4!LHj?b8KtB$Ma+6CRlfh(t2>N|M*>G6GVmKs!kAfO%qHO2CgvaLq
z)qISfC+Jk3s}h{UE$46G`jMQ0M|@6E|Eo0!6=q}JZa&i3)x>>|Vqc!FS`@(wENW+0
z(~dgA=%4kitLe_loW243X8@_3LFD;is}T&V<k2|Mv3(1082&T_e+j_!1JM#la}r%Z
zQ~>D&2=Oh=2p~gAOa-wJ$k`+ofLIM=1ptYzK%sOn9}FY`$@0sBWpbG44yJvLM0YSf
znCJ%)_FjM_`YS)IN+1||$)h{fO!V{Me-<E#egnvBB$((=fqV#%ME?oo7ZOZ#?nYE(
zfF!yhka_^5_crLS#GDU~7?P+<tnuYgtsp9y#GIkX7>FSp(A0hvMbprlUIUs)BWohH
z*C9k>6B!FrQz`F)DQGmad!(P$M>^^cA6@0vMk~!hL(t@QgUc$UWFjDwdohCM4EpO$
zNITr3NK}%^rJ&AmY66hvG;EvGb)c64hF3H~m?EQj<~^S*uK{`qKWdc?vyGTw4|Hax
z7#<HJ$o&A*6~v1`o+Hr$#Lqx}Adv+kwi%nd0J#G|{3jtSfh5YtX|01>Qy_UZxO#xS
zBfv}mu@=Z`fXZcRGWy%3=>&oai9AjdotDm|G0uy?e<1}hoqK>>PJ&6h4#>46nCM%8
z+ytoA#FxrW6z!w7$KY+&C@MTSdM3$fKhY8xleoTtoz7kUzjJ4WQ4p&VsjlCPFQ-B#
z6$vec$CHTtQ6?u3#Fs!m24s_~V{5oLJJzi3*iDc>R)q!t310~7Ba8;o6i5+?X&@#5
z8B1azh?PL*1F{}KHh225yX_(OAKDlUuFXgAxE&m~0?cb59tQFtiDy7O1>`tDx!3!F
ze}ZaC5s=*n51~cRvIf^~Vq5JWtCahx&&A=*aLYv{`sWp)Bl6FA#r{(_-M23Co>!B%
zB~Rb<d6nDGXX9Y%YGE5rPkSXXUzV%D`96zulAC>kBc7vvLKh<gSNrZPt*=i-hfO65
zCRCR%H?#$g*A#c6hPYI`T4uf}?qm&dovgcWE}xxsy11UcnMmq*1p*(YZc+_#(`(q$
zMW>0o|G!eVw5B-Ts*n(Odkt}y*AU0;Sf`9x`SxoysA}C>gYy(u>FJT830MVdO0);M
z4-BZDF>PqR7sKOan8*u&z<s_}R+J!Bffl|sNX`fO1P8Pe5s;B_WMV=UDlpOa<j~w*
z=o1{w^UW_for<pYRp3yKf(fM8)I+@*dU(JOg7cV^+oneL-t}X(wfeAMOe%1H4M~CH
zHHlY!!j5G)DJ;J6MkMHnog`=~MOykJx(!>^9GSfx(OuXQ*XEwHCv?UQD53_O+Z@$0
z#;DyF73-LmAx;CX$R5`+!mVA1p5aL?)4B#6<vyill&j7xW}J6vPhXLU?=Bmk>M#vq
z4(U4*?uT?2rbDGHL65LsyG%!g-_~LitvtHw9xMu^ErNdmXMZPAa329$(7DoQ)&Uf;
zKA@9EoPg`!fB(JO90&3T_<jXs(>wGw<!r&Zoq*hv7+748Xx0-5dO{oLRXWVYL-Q-R
z%E8_UkjfyN5<wD3k{?7)s3d!Tu=WB3F7{bzPH2A5^vNeM{iBIsksRjaMwnPKv^<V}
zbGOyOXNWttNa@|Wh*`#Yd_c=MO=_@c+G2cR8xBZU`y14@(*`-w*H$geeB{9zX*!1<
z@GmBYCHXLC|0zErnyorSVMqKh)!DA<XTxmO4g4@ELlDJ!%f8QN#}bSmMSq}(Vm)q_
zmndX>xlzlcdMb1<86e}!jXH<J#rdG;0&<rj;DNq2#U_D>p1`Fy>nL~anvLLE4)$e$
zCOc{bNpOaC!f_pZ*8ngZW_oVwYsCf<NP<~kh)><ef#YH@Zvix!QG-3f6`Bdh%i+5V
zfT!h2C}5?IG5Jh2i)E#5&HQ$%&5`h0okTxyz6`rxW;yryoXcu*u1IjEyaJi?bqdRN
za9^8TD+8IY`UPP*3!Sf95#5h;Tn$K@HFY`MdM-s&_k+G05LnpPh87zObD1Qi5vtfM
zzbg5@r);7O;|>l-XX(~NX%t+dNvQ>+7-9oW>|;f~Dw$$}sxW+Jf`;hEOwc=s_!)pq
zfrsdpth7xp!Y*JybQV6*mu6rHs59uo`Rg#9M6Ls%ucjNDi{aLYp9K9N-Dudub&Q7n
z8|d!=WuNrKdKzL+{s@!Vu{w!!nVgF;J^&<hNo$;rQ;Cg1H>5kO=!<>^)NcqqQ74aw
z0IA4>!O<Ha6}iCIjY=RWN_na)@<OoA0|bhFR=*-Y>C3kjxw;0sYkYT3cef!<3=2@n
zhpT{FGknUWP<4B&>f3u;Rqyws)>YSH7ZFw6UN@zxFGchh07PLOt-{_1{VLt4u#Q$?
z$y@QV76A2kvg&UKsu3Xj7?dEY>S|TB0FLtkqN-RzRd0f;hfdy%=tWhVz_A)2s^X1h
z@+6S|p{m1RJpc%F_E~*Z1$^?qRHag~P<91Y2?f3qwpJ^F+*Cq=E~gTngy07OY4hRI
zu{GHAHcSxUB5EnJYH0<xMgUPukyXn?(4*)!3kPe6RbB{cH6Z(egjyO{wcG{AI{?xz
zEcKJ55=eCe*+?hfjMRyao(B690MQYzxsxY>{0|*{1lIQefmJ@MucO&M>FdaDH67U;
zR-(U*vo<8&Sskoa&>5J1)LEpyY(d-q3o?HK)S0io>_qJ}+m1uU0qG~v9(^6;;@B9F
zBLErf*T0q}vRNQ!(1~^N>vUGn#URh76RYgE(#32BxdxEVg@f;;UB3b3b#&so!FSTE
z9|idso%X}&`yi)^Z-ac1PMl2sAOnWKLH-UHwf}MCEnVxf?kI#~SnE$`JNlC>D5PA1
zU0MLu{ON91qlt$3>jdL3DQqjVz?3G8AN!2{98+aLJ0kHvvi@BPrUqn8rP{vmnN0%W
z@Pm)mI&MaSqYZeQl3#Vsh642mwW*t_@M%Tu=?{w83aKt1K_ic88tA@WHl@qyjtB3!
z>tbTf!PR3K47>v3CIL#g^8Q#WF1-H$@-09euD?Il^CfUi+kwR#KnbV9N9s|={UC1z
zWGtGjp2%QaKY{v$E-bdAV$&UWqALS*<vjT92hXsH$>X&1F+XMMI%xWM@QgYzUCu4f
z1^Y69OeePkxrhWOns)=aodoBj&jC3KkU8*+30VmwpLxZ@Iq(h;G6&X|;zm4%=Nz~z
zh|T~z2mZzvpc6>VIdC?U#yI<c{|tbna|Dp#B$%{GKqipj9C!|pS%6xupWoAGwWrO2
zyPTQ>-}t|BpEd_R#ho_`MUc>^z7;Bb$82Cam%)7vB3}u}rhC)1a0wjug@23mfeia3
z>$%(3CpewB4KhwmCkj-cx9=&_iBUem>BOs+Q>GK{65r!u#PzrJz{g6QlE|Verk3b&
zWJY+8&&ikrpVlDUAAN%JxfYPaf#@<$JUqV@q8dk74}X5RpnBpFt=Vve`9^AVBi4{x
zaIzbMw1Sc9TgqsqV`eFRn;56+@)x@9{xY&((8HQ$pn5fEX)znJ$*O-NhPn#s+zybM
z)4v64&Icghpc8A(fI6%>p<R#ykeV}~8EZ}(kfngJ^4ZKFnZh_bK3FwQD(qmH#yC6P
zS(PzO4UzfEVlXcRWGuoLI&4HQ0C655os*qmGS}G;avym(=NT?7*s~xXq!TOOnUcT4
z%W#e|Kq}wi8+!VckLwrr_}TSF!a_!x#|vONT)vnB_DKL)zBn7mJQ7^KI2XurfXZ7A
z>H|MK?jFbfq)>Jt!taCodT^{`kX;}y1G1IGW)QCcc?pos5KV7}OW+S*2;ckoa?>kq
zBGn>r%?&L~$bAnX-=QeV{Tj%>NKkI}<rwV&vKhk4ZRQK{<uboN`A&Krxb~VmD3|%I
zhmeH;$!}92Wh9v2_CVSKR0YRv%Y5aT1d?c)&kENrf-Fw1dVsqdK>FNs{QxR~c+4Z7
z>LJ_!u=ZmFHio<X06Kx7E0^cSq;-iHMuPp!L=2B4Vn`rZn~<kEhDl(Z00=zcv)W!g
zj~RO2cQRX{kj3FQ6H&|o|13a@noI#QRf|0b-b*R=<^L&mwBL@JJqR&1Twc%D%?03J
zn-H5|3XrK<>~?r>rP!&y44Yc_sBa})EgJ!OXclbK!dir-7gioDZTSVvHjE$goNB|`
zDR+<W$>p(Yd{0?QJGDH<#)_YEyHC~NeX=Gm7FhhHv{h&`Yx{ZUQrgGD<}aneGccfr
zV%&*7!DcN~-=-f+V{XEd*s8U#?tZIQF&<3`9<D1<+=iOsF0CPMWDRkN>P>NLPZRg+
z>Ehgkfw6(R#+P94%UX%ZzOEVB?=>PjRwJ@nei1RUZ%&Ks_R}K^<ku)nx3N!96}1sN
zi;}A7RzqB8>+Y+fo!`Lws&Esg!-!{`#<~2zB3|Oll=Y_Z%`o24oud=Gv%cXo3i*Xo
z70sNjeCL*I<*$MLT>-!VwsR%h-XkFHr%|r*L-Nga;My8Q>1{s2*WB!~IIU8}iLVpc
zQ8*m##1da8(nS@|7z1~#ughKxF5~BLWCfSj<Kdli-yRT6b(CY~oNrnRkuSs*Xu6zc
zI+bjycp`>XPLVH$4RdS(X%P}*4+Em&E3$Sz_ZqMsOJ|?N7O@q#n>fd$k80TGTKdWS
zr6FG^JIDGkva^yN1OBAl)G>h{RN_-f3UD}#Xy|`aNr#61H<ip>L;ssfN>Ft<PPyGz
zk)#=pIPt#(vN%-v49fig5aK8$vKt7%ea8<#6YT_68p<*nr|<r$2jb@%iVyr<gD8#q
zO~$DrITI=23S->&8NsyS!AqY~q=XBv^$~F%Ad4%52|m-mCq}y3e8lt~fJbj|R00AG
zd`V&ueQFRYFy5z_%F^jRae7*)l{LPFCfaRX)thOdR>mWSkpLOHm2UGHsdQ^$%nlcP
z*7&pch|LYMvkfA;acxSUDXUWJeGZtdJhCda9HN&2Acd<^m;4VYuTTn?qacL~QM>+I
z3Kyc*LBbj<h0C2E_&me>m~_>FhR6<=I=6vq3&3yz^Z<~309o>U7|6W<ncC*|v$azt
zkm{)|mOM967`xdw!2S|Iy4kvkAPFSNkG;BE`3bDw00Q-WR@<%A`p!?To!TarJZ<e2
zQ`zV9pDG?UC1NV^J=kdrD81F^p*dHV%*4beb?VJ?(YPrcdJcX02-)k|#<A(E7-F+}
z5=F|V?^U=Yj+;C^dwE9#yYDk^&INe$SeiQkEF=3~2q{21O~((Rdk6d|HEIKjKP#lJ
z1m1bcK79T`*Upp1SuD`G3J&|>6zY7dkHu93yCZaTs0)1>*iZNx*j=Oz>^9K`cAIEk
z(^lAUR+@J^_{P}1r#)T-p2zK@NsTfXTLZfpHIF+-lbYl*U3uISn)F2O=fJa5H72F}
zJPxAyv0o25<Sjzx!mYB{X5?|FXm~*FKdi7N@+X@;vj;M4C4R<czd>2qq=(}tZw>n0
z<n+uN7=HF8z%z3mCC;O=lXJ2pkzZa5JXaE#H+MJiI%RDbb{!a#>o)2PydQHA>G&U@
zrW>d4M$U^ia$dBN^P-KM7j5LcXd~xEn~T92G;&_Fk@KRBoEL2_DuQ6uO3sUp4B%kG
z<9X2$oEMD<RDXM3G|*6gdtNlqNNb)K9l?3gOhap)7abWIS_UGZ%FCg6rf{#*1;%4q
z-^vtb;#Zp&ZUJh>--8C(ynY9`&0lbLP5-+QtLX^$pjme(qB0=}Niv79{2DfI!8dFU
z!zJ0Y10FGZ5H@P6z@K8?zYU#;c>tVobM;+#H((|~W~ylmytcU&c$(=CJl%W)o(%H^
zTr$m0#FAw;!6n;FhlCu{8o#+_D}3|J4#bsjK1OQmm`?buYxd%|z)VHFg=QS^BGV2$
z^-L!4`sNczD^}&#AGA3?=9C4H(N8eYKof#qSsU4=Yh;_Qk!`w0w&@z#rfX!Iu90oJ
zMz-l1*`{k`o32UQz&vl7#XPt4m}l9hYh;_Qk!`w0w&|L|-I!<DrfX!Iu90oJMz-l1
z*`{j-l{5dcP1ndaT@yx)$}zG{*IeF$`Il|FMz-l1*`{k`o34><y2ftPE$1QGEN6cG
zihO=t!Q9Fr*+ve@HffVs&T>e$kwdbL9FlG1kZdD|WE(jo+sGl=Mh?j~a!9suw=lPI
zNVbtfvW*;)ZH{eZ3CkhbMh?j~a!9t3L$Zw=l5OOWY$Jzc8#yG~bVvQnF>fwq3Ckhb
z=F{s~!g5HqkwdbL9FlG9A=%|TB%66F4x9^x8#yG~#H(16a!9t3L$b}sXyF1z4#_rh
zNVbtfvQ4CbHrx++NHTIrwvj`!jU19~<dAG5hh!T$B->0tByqEH6Z0mAWSiU2Fx57X
z&!F|nA=#z^O=*VNzl^0Phh!T$B-_X#*+ve@HXrq7>B%A4Mh?j~Z6?rq<&bQ1a6PS8
z4#_rhNVd6b6s`BU6lB!MA=yR_$u@FGwvj`!jU19~<dAG5hh&>`XXDf|BZp)gIV9W2
zA=ze4C#*D@pD-L~VV)m}cQ{54$u<MmV$ZUXL$b|R$YWb0hh!T$B-=a>-wrB&@O`eC
z8bo7o1I#LNznip9L;o)KYDXThRKVqK?Z|_c3c1{`9eK!75tlo*BM)0D?taa7;xS95
zx#_5hkt3GMa=%&x>ZluHbb0Q)zMzg-zcQD{4MmPys@&y{?Z}gsYUOgzcH}8bwR5@q
zJMy%pI=S4p9eLGF+KW_IxIDu(^17SM7O}Vc2wIKEdu|e`{;CtZk|l^*dc&9+5c<Tu
z3}nfD&tuz>n@R~KCz1D)7FTr&K6K5qR1FtFBOke8QB5U3>H63uduSl#xx6PK@|hc^
zQ<kdJ?n~En51|^ph*s_^w-%jM^n4KCS|SwvZW30VEfJ4~(e!<9i7a>E6Oi?TjjF&#
z{EMaPySdEkuQr}i8|!bDDpy76o-+lJCO?8kE7MD6Qj>XPY_`Q!ojrfJ<|N9|<zX|C
zKmFXeJf<h|m!$$x9zOGTB9;G~iiCTT{<!-A3qgCLgDjWl!bXgx@}fMN#<7eA?uTpO
z6|i2VE|0y9xRxq&+c0;YmqZIFcX<kKBxwCATppbpiCC)A<=MHBsHJ+lJjXVYVyXVo
z-w=7sMmN~ydAE_c^%~`lF921`QsbgL@ix^mPIP(VZKSsKn(5|T2rA7|bL+CW7P!TA
z;FfFMmPC2PZk`RiJX$af&6XwBxb@MiMe10-%`OkZjnuQ$#qJ0yro;==<}Pu06mF!s
z_1mTDWVP~4Nf^d(6^gvI6{p;$=l~;aEK|tMK<651YpIBP3H`cQadB1D-E(>)eDY58
z96c;g@~w!m(&DP9ujkAn!_C_;T=5yYLzVq~hWvtVo;ePVx=e?1|HJCq%X$Xf2`qv$
zEERIEp<i!HMcf8VNgqqa>oOH-ZXCna$UrY)_=AUdhC3$RDf8ey)be6nOA{Dosen5i
zS&t02RLFhkPEcoBDiYlQztL7L@#y);*BDD=x#Q8SMaEjb0`~yZGR{)<-94nnTdLIU
z!vZ+VQf1L=Z&zxv6;d8mAf{NNovl7oEnh|1lm$ywWSXTa-Pc&8(=F9o70vdXkC3h8
z4`FI^{Hk>!WX<*QIbfgX<NWSqzK{QjDu1@cReofaXHp_iJT;_TcPpY;Xrl<Y3#jTv
zmI|pl@ui;W23~6#%d9(^AsY8NewZkiiI>~lgjCT=&zX!6Vj1UK7O{*~e&C|@o^t^i
z4kF?WJ_8$@jXp!2it{|<Mv*|qtgJ1pv7Q0<J!Chs)>6J@tg}=kIvf^zflWxfE)$Uz
z-HZHOY@G_CB?!CK5~Wd|8N1CA<!(0ZXS=nZcBmdZJ<|>;aQWd+<WlSIThlH-?r43a
z`EoxtRj2d{&)kL}m6MlDS9?9%)ZPb!xYDwO+*EcfRW@|ojnX=<vQ(OTFU$FAOJ%vo
zNL^>CJU4g<)B#HsxX&=$VOtODt2*U3d8Sngj!#&C51b-5TP{^L9mFk`2v`HV)lwn%
z36}6}mWovJ^sU<^wQ-l06uHOxWVuIJJ?^zso;%J3b)Qv4ft%77)cuw!RYebb&Y4I<
zGHcr-zR9ttdek?$q9dNOj0|io9=9UJCZ4c3?CfbTa3wgRf6v9{M6b4}&mFZ9(LCct
z*oA~te&|^*a2J@|0%$(+q8AY^^o}ok0emIqcYm)~epSZTu8~(Q6^O1xNB5c)9Ex^m
zh))kJ5s&_WYVd|7vQ&QjEicf3!p_=(NZ#><xh(9+hc-$iCH}D&m;tV`1(*bVl3;3b
z1(-hdV|2HmFN&P>B5Z&|wh;bh{UWO93(wt*@X|bfX<d`qJbvZN%8!5U1rCCvE~8Pl
zf%_&Af1UF0yg*7E`kIu5F5A~v^hR_WKP2+Fd@)Y!sF}x~{5)F4{M$xUU=#MUrRrNV
z`o&Tx+5dQMGejfF{N1`rGXJnR6!DuE7yypCOpTw+zY@tDQ2wO%FoRQ<Pua3=BZhGE
znb-vBc`WjhjhEs>IL~9rCT~bnION1*X(qQppwB#yg)wf)l;tY&t>;l^C0s23)$^#G
z<Yl`sOz=D=Qq`$=$TL4OF{}})E^X59N{-pc{bD$7smMU4Tot)NC#@D_wMQ2a4B7#U
zxdS8jV494xiXuU$H5n$rzT-Z_s(t8pe1`luZpNMg4wvUUMgl=QKC8>L_|-4jx`pa8
zrijW9WChLY>JZs}2)O43&2GB$+r>zJwR@-_XdbENFZA7Q;T2gbfTq1TXuc<x^m`2w
zTrz4b@wsf6QcJN`H4d80RD_YiV_7214XqJ>6F-a^Ux=o4PbhM)8$1c#o}3f4kumF^
z$FZN=4RCbYhQq!#9NG0`*I#n<HmrDi0e12|*=?1uqgVmMMax{W5aBNI0_+J&I?ljW
zJukpEzYUw+l3DP4zzeWFEeTA=oGTa*JG#99GoWBV3S;C1%;<svsy%teF_eBVK!qm%
z@g!#D!2p$*eC|=K?FIu>Tyo|nyle{ws2)|$+i$J}vNQ9iOw8`&&_E-%-x#_5#>nkA
zMsB|`a{G;u+i#5Aeq-eJ8zZ;h7`gq%+}{gP7`gq%$n7^qZoe^d`;C#?Z_Ks>oZaO?
zb*V;fzcF(Ajp2USbR)Ol7`gq%9CEleA-CU{%g}J;7`gq%$n7_#E(XB)W>y8)Cgk=T
z^GhMuCgk=TBe&lex&6l60^QX&a{G-bGg!+qa{G+|yDBwu`;C#?Z%l*X{NzAxzcH`u
z<LvGSRK=!7Zoe_3(QcO;x&6k>Ud!2?+<s%^_8ar$G|uiOqYG_gqKKufk=t*K+<s%;
zLVi0Kx&6k-?KehlzcF(Ajgi}L%mL)3!pQA6X2a!}7#X?!#>nkAMsB|`a{G;Gb`ib`
zHgfxonZ6VI8;sn3W90T5Be&m}AsC_!Fmn41t^&rZ6H{4?oq<MfzcF(Ajgi}LjNE=>
zPM(2tA&lI9W90T5^I#FyD2?2HW90T5Be&lex&6k-?KehlzcF(Ajkywfo@nIu8zZ;h
z7`gq%$n7`gqsiEfV&wK4(*>L}%;P1vXTe;IwriG=+i#5Aeq;Wgg|VC&2Yt>na{G;$
zh4i0o<n|j=fOIZ2->z0_k=b?)UK$#?{l>`cHzpOaEHiTZjgi}LjNE=><n|jQx8E4K
z{l*+xg4=J5+<s%^_8TL&-<S<3g|$X*zcF(AjrkCISa0O^8}s%64AG3-eq&xiCE9G{
z_8TL&-x#_5#>nkAMsB|`a{G;u+iy(k{iy7w9C_Jc<n|jQx8E4K{l>`cH|BZd?sC&@
z3Yr2Vx8Imwk)A7z+<s%^_8W8bY#a+@<n|l0Vky1|Fw6Vk6_`1%E4B?8x&6j)qsM;p
z$X0yiVdVB3Be&lex&6k-?KehlzcF(Ajgi}LjNE=><n|j=l7WvxjNE=>UMR-~6C=0Z
z7`gq%$n7_#Gv<MJ8M*z&$n7^qZoe@Dd*R{%Be&lex&6lch%`TF<n|l$8pa(D8@c_)
z$n7^qZoe@{&>S5xYd2tYWaRc6Be&lex&6j;oQmB>W_L06?isoL#>`%$)YC?8zcF(A
zjgi}LjNE=><n|jQx8E4K{l?_Z#HW!)Zoe^d`;C#?Z;ZYDrt81&zz8LBQC=PNIqv@5
zX!tMA3rW}Kru+lcR!ap`*KOzq;*m@9rdD(AN^t(0gVxJ@PWQ=MKwWOBkh_D_Zc9Z}
zdGl_z^^N2|0Xar@Q22do4A<5c(809b!*#<2sOtgKY#b70{)6twGyg)#1kLS1B-gAP
z#kI9hQHR22OLw-umrX+~*d+xsi%0tBhp_w7=4L>C&D;#MRKU%Gbw>tSD&(H=8mPhf
zIm}u_^<c^x*w4$eQD<>b^|kmeEn50Gq_)PF<I#q8pR&jGqG)4@AmnkmC|V{&#N%pF
zw22ULkBddorb487T$_rP3z6k<*(%yxh&+$0NKsr7q|u;zT(pX|5}#6!t5ng}LX>%2
zUW&Gn_4aaa=mrq&#HW>NCAR}bD}P0EEa~j&r<1n>Mf-U#A}=A2OB~SwnQR>+9#=S`
z10{Ui<1$HfkPvAe*F~a(g~;+ggwaKZ2$AP;)gn4fhysr*J<;Jp)c3g56FpOiQjbd)
z(UDP}08s96wIn(wg)c_hd0Z`tjuo~FkE<%taY9sjTq}uA5VqbP*Gi%j#b>ZLz5v7|
zA%=Tg28vD<VwA^Kpy)Iq#(7)>icSyl<;_Hoiz3mv;xp4~YMu~tJuZnv7YMOHW%KpS
zS+`=q77TD;kTS+A%7rP)nFB`795D9Gfoy89>!!9Spp?(NbHP*wb4dBzvwC*<ReZ`9
zUJ3<<TrOj!d}*n;8=D8}D^KFga?cqI>T65oscc$St5_*|{#fWOi1j%6j3tR6<<UH2
zVZZoVphbu!3lZ^}V+0e61fvKZ_gcVKV^JY$d1Fy&VkttTstJKuy7>cgC-TirEHlV_
zOqu~pjAe%y7;k{?M5bc32BXky<f%6D){CYgL~TEENlBWGye<<O_iinOlw5I2v$5t$
ztXXPu_cf5LV|7Cd@*$Nw24V#{#Fcjhqnub_2z>)A@@`C5Vnss4z51|+SUn-Kyx-=4
zs4ql;_s(n(#Ui}aYXnP)H3&C?rpvwU+d-6wYTJ3gP$#8AbP`L6HI&p<c#qMikr0)h
zLN$st&R&Y-^!6HI_7p1<pTQoN*<wwy&V|n?kIQkfrs6Zvs{<v)ngv(GXR0@KK8SMh
z`NaEcJc#CL+u`$>_YP(?u@;ho@1z>US_<1wUTdf~)=G$9Rdxv!n7x`mY;k01m;z*J
zc(uxAfyvvxc=<s%oAXd!S`8Xq3q#4O2#fG>IM<`G$&VUbdp+9DtF`wY-C4owu_>rW
zYgU8!-G6E<O7@@VPXTI*e@Z|E*{t^`ndx7lhTJg@vFx^=VAP{0-PK?oiBKCyBDA3s
zOHU2qxd*jz?g6Qx3FmrE>DRC|I-f&<iRTzn>Ph)UCaO9XVAwkY8$J#N8WHb|*VC;5
zk^GJf(2{AJ26{Z8`OmlEqxS%v0->Bca9>?O6u1?B8vyk$M8|YfpcW@GIJb9I{KrLD
z_wl0)RAZQl$fIuwm<+TMfgD)f%?N)ZAdmv$J|Opy;AeivfE)p+@GT2*d7UrLsGrdk
z>pKFbKSewPuQ$N-8bdt_;v*m*FqCtpAL3V7@B;AKJt6Yd<Pq)z)2)<~kjmn?-ty=c
zU`cY0OhXHYhZ~6&<CkAM;uA^+dc_xfHdOm`O~Jw<azFQ3?nG1ZT}>9<ivneLD@Fas
z=eueWN~54g8k3yACfWp`D_(93Z!Uy2sb*5O8u;!9&qX@3*={uKP+O@jf%q~Tpc@Sa
zkFGkqo?qHq0xekDKR`oY03vg5VStV=f-C0=?2!OO?nNEj5*SFg?w~u+t>Yc|qBjtx
z+icL20b&(f#VQIymA7I&&sxP!_-z3+;|r2)flP+E2lQ<Kv6SrzOWC)o{+)>H5*yCh
zQMD@d1PXU>A)2J;c4HSwAj-fmAmBd%X)9nAqy4<$5Qu6FJa{zN16#oI0eIg7z;bAa
zXZU=sdWe>@Ghi-71Y&$&fa^1W7~ju8ej-8R(|d6iCJ1YMw^m2>0Y&T$n14_NjV}d^
z5r7z97LW{p4fTc}N~<p!>Z*YGI}xe~Oa+NhWk4D+l(WzeL6falgfOy=NldmXVX_-*
z@bo^NXCHY?s6aW11k<k9TPEMG+tsjZ?qTF6YknF`8y^kBRL;|W1T^nMH6u7>-ie%b
zn~k&cPG<=*39BLI8($20K0lo&t{kUE1xbZ*R_Bz-^ec$uB)>)t=~I(2$+_hJnHA*}
z`@vXeCRGPhwTAfaQfC@gjpY`V_!1)q^u3lpRF{`a{OU3$(2Uik6H2EQKpMv}fp)aY
zsi4QvjYm9>37oMXZd*XFryF0Cjt#^)ioXf;bpWX@<7-rxv#i;_2)};<LVW*tmaQ&d
zgZ>vls?b@1I*c#rN_-XtkSa8xMiqJi!={O+s*u?HBtJ`9?W5^U4wy~#eVZ?YjJg1^
z`6fUblc3GF1JVYd;xA$t`lv4gvoRlo8s*W814b8PtoAe5f?wb#@E(4;BWMM{;msR-
z98`}_5N&nYI^nEID(OTG?`p5Wj?Jq)zuwGSYQy8>4JLj~z_dkdQrr4NeqVspwh=&v
z1C+ySNBFSbj011ASZvQ4k}$~gYA~%ijR_48nAjd)RU>VCs(F-iV-5EQs@+jB-AK9<
zLJCgSV0f=4L(*y$DySd6534@Tk2RS7uF2#^Cb6}5TtDa3Tw#M6`S9Y$*KA&cdXrg$
zqp~JPFuq~!nl(pKl~cb4%e0y-ZUlSF5KEgH4BQc4tt~6#k`(3eGKhpix%Ix9McN75
z#w3b~ZOmtu$8TfqpNh=jIaQNw8?zcNqiJc*MqfVLm}JzS|B}z5*yXdZ{b+VNi?lJT
zAchw$@FCBz(|O{I{Cx1->+`THURjgJwlubHXPfz)&&a;`mYR%7PP|4-W4}yc3-_uY
zfNjk2>Hw;i_FF#N#!QRhLni0DX*Q*)DUx8cF`xDF+nBeVhHPUNz>?1b$R#lEIGNnS
z^a$v?=*Ac3?>J340{jj1mvrN6`FEW--8xjEeFDg(G4DE!D0?*MVRYl0{db*q91gAm
zy#&y9JqB#=IdwUIGCNe;r*9_Nl+BFU5ehwx&in&MhIluF`!FEX_jZh}tlLr0kI-!j
zI`2=c+lQdvq+1sFPFlCrt58t^p}rVCo^&!OemLm9bUPOVkCToJf!BdvPB%_bPugVM
z3;JfdaXxy|Y0t1HLBB;eP7h8xm2}I#8lO!8q;>t5L#K<Sh5XF%hok#e4Si#}RelTj
z@~Phl0}RfZesa>NstO3`0BAN#{o9e5**H+60L8B_!~o6@uGN9wFx6k3K;Tn2FNFU*
zKn`6~et^q*Q0o9;4pjcA4s{#+oy8{QyM}1RI6&DBo~;0twj0zh)r<+urV@b`nUug`
zuv`J=-3)*y^)ZN>!5nai^t)4=hH@i3_XCO<b9jd3^wbMXFIXhj6Yzgtgrxo(?)N4{
z{NdE$MCBuRy#<g_R()TDt4?7yRT}If&b<arJpd_EeX!Qk*iX@)PA0p(40xpgL|l_<
zai=g}9N0x%d+@fk;*ue5ctYG?P6oyGg;)24xc1fJPGP<{u#32P;GJW|y@kx~PKZ;1
z)GNWd5?;#yqOb1N`uc+U0*i>)4gbrmhzz9YWI}`v$cw2P;k6$i8BB<%r4kr4Dvt)c
zh<gsa|Fq%?A+B|quP-N%#|*v)uh$ad`c-G}6y}QqyNGl4;b>g|)L#a1>l5Mv0a1T#
zctrt{y5ZI0PGP<{u#31R;B9QhwS~Bs6XL=)bzR}rHX*Lc7l%Xot1(|3*hSoA@J_Vi
zx<gzMCca{>$u@Nh;59oT?)vJ~ox*%^U>9*)z`NOs8vt<?330Uoc`VJn@Y+T1)KT!=
zp72ezgQ<t$a}PjN@$c%$5}0S>QX1?M+3VnamD23=VUk}x18Nto;|s^Uga~B%@G-bP
z1jtb8TOePPU<daHkY536*g(ucrXW>$fyQWogNs21XYgk%esbuOy9(IU1fTO}+W*Fs
zLZ;ZYC{zHSVQ-&-9VQ6gJMdgbi2E62@N@j+&@sh9TI+!|6HuH2qVpUZ4xIq}b(P};
z+rT-{5I^I=Gz1XH1F;9lW<U=4QhLDUT~IFq!dxreGt0`+YCq*{cLJZafS7-Si0#Mm
z(tyBcAj*I=An`Vc-axtoau_DX^u_xZP-g*p#Xx*J+sX_d0P$pX1b2d2mpW#9b42hM
zymtP7jJ*eZ6~+2KKC`>$oINKe$w?0hCG-+X=#k!=AiZ1Y3euaXAXrer0!R@xAP7<{
zh$y010L6;^f(7Mb0YOCpD;BQ*=b4$^Z1mpm|93v0H+kQA%e>Re&g?>ADZtqQq6Emj
zfINz&yor!4pf&<hJ_hkDkX<B>gLoInn}8T6wtx8%yvPVPSk}P?h=7yXuOV|3P&%ni
z-GD3y*pBg$Q?q9v&l!ulu&O7u83DG>;&Mt)rdt@c6ds1{CiRn>Eo(rLi9a7P<p4_K
zuM4UU<L?@X-~!0|ks$stBFb<5@<;c4mNlCp2TXdo!8Flmf?*#u;hZ!t4_bs8CQqSd
z=jN?&gnc$3wlgTk8&`d0G43D*;(p7Q5Vn_8`gF<<=V~^#%NF)!0ktF)vG2AW+tU>Z
z39#!2*?N|`JzLn<1w?uUMeNws_&(2V0rteQ>^%_?-DudH@A+{@?N_{g7ZhC%>W)`A
zrH@rsISr*owsj76owg8bhC*rra2kPV52P)L>L4xz(j5?um?rq$Re=aOM-^#nOeP=d
ziGq15;CD?lF5kIu+R8g`S};P`FBl2VJlpybDC&Ub2tQmcQ%0}GG{HU+5V$cY5J~)c
z*MbELP~P7JL^cLRLh;e7<FIkzR9)3LcYie~V9j<|Bbtcl<pB}jduw)Fv(d4#9nLq|
zAqD#tdAn_0+}N~(%aL9E0j2F=JE&~{dzR5+rD_j(-#psE6(V{|fbFwXJB$rNEF1hd
zKVqEAY-f5i#L2Gi1z3L?;7kK?7|1~qV?dk(at4r2ofOEY+y<o5M%=Il<gW(N<w5-E
zG|_Zpj|B)Rz5^vE*~zDwx;-E|L#rb|#8|%;8Z9Z<FUsk*)w7AIQ@tV73!v)MFd#!n
zuuhEuG71oV&}jd&PT5;bT3M$iz+`E5a9Q-G;r<9~xBi2BERc;`gWOPj7C(YypA87S
zQC47-%bNC|fWWtZ7hp9?GM=*_<9Jl!yT@fJE#w9S>Xj83&9~{=bpir?f&!?_ck0UA
zJRmYHD1yp7hhBJPMlbFvD-aS)=#YSgC&~&;TZDO=JtrXWQBWW{TX5w+Ac~d0SICU!
zx1dlcK4UekM7K=Sb%!ll=LAfL1I?%*>YblOep9k521Evw74aHlp%G!+zJ*YHAd`nH
zR49LUvW{GeWLClDw!IZo3TGCG>8NBAS?jI<aTkzVNel<E7syk9JnE#}fInwI9Rs8+
z0a58eGz~zP5)hrIn3k~}V@)eRwklxBcdgVG%@Nx^uo^+3J|K^rl(!Jl5mb9X^svbw
zj#hpu^bmyFB@%o_@Ro1c!y;Z+ecVc(%UHN&+Y9zC1gK4<!9WHA^f>*sv4GbP7_4Tg
z1?xYwz<I(*C|m|8?Vqj$H6CDpZ}gbkpF`gF75&o)5&a{;_E`>wT1-RLbB-k@tE8yM
z-1*%~Zh|MJ%I{gQKLeorUI64efbL5l^R<e#mbHai^z}{%-3lo6brYzK0Q+I1MPKiL
zyzh|qb$5X6v(%g-E!iYPjaLl~!LH<AK{IOq<(fc>e+qKFuH=@0K-L8TFG6wMm8=K|
zG%G7G!9@<(>jMIV%L;@<3<BE%0&~g==&t11fWX~B0n9}(lkln&GirB`T{>*Kfz0|i
zC}PJ(FBNuHfc<-rjfNOy8ma^YcpuWw@K9VQvOz$gRapVOt>-l|IypKhkfb^yWd>c*
zr2#uP1;wxlc?-MMD+2-#mK7Mkh^~57bkis_lc0cX&H?@cJXFBuyx9X3_NxJVKL*9^
z*vKfpwPM(`Ru$cjpKu!LYeoN3=DzS|W%iwc9<NJK-k*Nhn*t)^%Zga^u#vFuG~Ed|
zFPCc(?+pTh&CA*7nV<eIJ+p|8FvA=5;j!8HbiG8g(}+#SYV0dBI!Mux4YQYHebWjH
zwL8Fa7U0hgw8L$HJhD^nMaZk5_5o5hgE$W42#Lo*L^t84J3#dl=Zs-YlxX-V+qoEq
zRX>prnQ{QtPt*WX4ImPjRExQjfZ->7%%9A@Y+Gw-;Vp<2L7_e%?G7W)=g-1UHq-}~
zVfzTOx~PObG!XuFX?R)_lXcWiyDUJ!n_U;-&vefl4?C>9gXK1k{Zkuw^D@L*z>{J?
z%KIQX0qH>ED2R)I^aQ8}7DJ6S3^xX=;#uo#Sr4`5A{qT*X+Jmwnu7rLKqJqVvl4QC
z6+}OX2NstH*e1!sE^h+4s(R7ra8tP0gtKD&pu<h&_-r&<7k;eO+zD6j&$T^YIj&_R
z#eUpMMty7EzCPeU%b-kjhMHoihYR-wg!=nJ!rl@HpYDh2RT!rGy94Z%LAG9IoykN4
z4v0J%6hY@05%w2`&2`k#AUkT0Gp$x9Swz1vqQO~?Dm#yXr_x3w*DJerjy<vMKgw<t
z%54P8?$>~GeIe)PpB}@k8M=zGXnmF%!xG<N=eO9fQNaxMvKMcjV~^^98rT5sVIpFh
z0C1{+m<?nmi7XHcfLuqy1+f^&tt9?{=@mfk0;IG8XDyHt5?w)T0kVliKM*^BY$tIE
zi06Rp2E>|7$BljC5uOUNg}-mxx3z;m9l&}OGA~n(+r6F~CLoZrldQy0%5kIlJ;=NR
z(0gB38iP`Jn72u3$E{SQ@Ck%JrUE{fgm_l@F3hA0hirRJdzh{T)>n`^22d_|a(Evh
zT}ZPMpL#Bwfz0=`n4qus`7U^v??Sqjl}6+A`*$du^OZLEN*?AbWmt(Wo>FKtsslhL
z_F-Si!+fPoE1_aZKsbd8qPjqeKJXK}n2G(!ww)9N=R=|#Kqb_Z!Ok!fTFy$m>_uN4
zGF53!CG-<NdJprX&$Cj0_mmnyp`NewrLW{+zEZxG-JpZXofc3irjpvx{MJ|UFkh*>
z6;}!E4B?JcfXg$-ssFgRh*xyMA{zyA+`hqtvmaV*!u1Q;$h{}P-5cbpsVkbdGgmaO
zhF8BBIre@|M`hjgeyd0My`QtpU4g|(ztFM;*AW?_x0<~32U9NB9@3NQ+J@R`!;Vx5
z<S}*|0Y=ihOeAMYBT+{g_6AH%3Yt<U6pjY$++D^_QJJn<*y&f4y7Y9=P6&^!=~7c8
zK$pHLV`^%tDL=ik9X6)|CKH`>IjH=0mMy(5%nsAN9i4Z;ZaXby@^gEsU3G$^pOSyd
z$n$~dn4nc_o_Zk4vV0{Vb6Z&%K3Mhk{SF1hwg<)RdGDgu@QjAAj|GGdl@<C-32{jL
zH6V1ptk43ysS+`=9tb;THo@q8`ObkXvFDwGnW~1pavUxm1liWSTv(A!P^Dxs&uA41
zyH!AVc3I)_zHloeJTM@<p{#HLg<-UxY-fbW8R75eU|%^XY|nd*Nw$;b{MB_XeB?vy
zH_R-J51;u4Uw;UaO(7a6IB%ZFL9_-&4_`29KUzA7>QfT-lV-lfVYH1ej0e&toP*t<
zK=_|#>cx56EI*u6fO%(-v8kp9q1vh-8=E9kCqkfdK;W66K<P$H{eZ~fpa^YX)|F<N
zvk&^P+V2v#(+A<PuzcN4mRDft%jQ``Q1x0C;4mYf1cPYy9=fayJ^}{OSrL5pE8noy
z;mZs@#s<-t&#?=}jTdj)xwKU<alClT&YeVb^mOsItxl2_j2G|d2h*Y)?;Vxnf%_bn
zCbqx{PLH({TkJyR1Wylx)r9d@?z{uUL$*3!3QG@bOO^Q)Sw3t>DI;=jejL>OFvf>7
z+SvWJIzc3Ic0CE+-Qe+QjON{K*D8(ZZo46k!1g`H%bc5;K?|YM*H>9+*HkLqo>Hui
zJUpAB99?MlQjRK*ZZRfm*R6&kw-=1n{TC{i`pJ^M*oRcdKWEuRG&p24zSaqd@2!g&
zj$M=d+d<y|aCuO7j?Tp0pq~Q77GY?-+nB|-nc$$j#*T%c=Ij9L6UclFa5jNB1>_is
zdqLFOf+vlDJnH1XfRMCp#tx6PVpOY%Ug}vBWcgUK@*L4zZ(Ghq5NQr0O#w~^5FLQD
zBhd^*Par)2C}Unj$T_ebY8{b}+?dr_-%%$!L*-*fyQj)Wm31BMK`I|rfp^vgUb$!o
zEOfEef#R{#p8#>CEyaMk2ySYp@cAwGu(j!?y84KmAuRDsM9Xbn&C9f#mKI-@T~Hcr
zmR+Yb+8iD2z==~X7Y%KZW7Cp^CGOT~OEQ=MsS}XRlj72{Q)x-$)Or+JxcnmdSWRo~
zwi=ekzuW3n8vkx<aB2L{S*o5_9&|A*Ja2``QO=yj^Qi?){u-F&evdZ0#%ft=c8xWd
zW-C|f2f6#Tasgj0cfXZTQEb|#80xr*X!J0=Tx^M9x`w_+&+(Hb+*(pKbg@-T;}cP!
zV*qg$*<xz|<G2g-?Esf?-L9j06!gP@28{A{9px_2I{|8~(bhzTD|ZH~q@qNmODuI&
z>u>ACebC$kuv;2=c9hRw2zmc_rdlWV2(W#YdcI@l8y06>XN=}N^sJr-oa<yF!9g_+
z5U9-dh=AD(f-=F?-<*I@Utb6t&w=o%ez?E-yF0*M9%PrU{x$|gcvsAKQLX+8Uo&j;
z6b%RN_$7$ar61NO1KD^cSb02IKeeAO=VUY){$$DKUZ$KU=yLuSa{6_ED(4BhoSm(f
z_#I&`8|6e@Ia?yE5P(BFlXS`73~DAo^-X`7h)@|g99?C_?m<MVZ?Yf4(Fs6=eUs{w
zQb8pH@+hnOq)315sP2=}jv8~k1|Vv0+JF-(*1Kc0$b%{+Oba(PRGl4Qsd20-Y?cG4
zPnZs{)LX~~gYLyJ-W(ZVb?4=e8$r)!7%z|vw2~Qi59pN)<2{mrRwaf#2Kr%!b^U;0
zb=jO=2fYu_oYztYT58C|nJ$;jWU!@fSDXU-8$fk-+UJbdxD3ord#Dvvneq$xKLJ#S
z9eNn2pGmO8ZUmwTkVko)IXPuIY>|_RVv%joC7ePA=q{m+rFy!`yhbD21$u#YmKwW7
z?HX9E7g_C$J4^jcEa+o0vB+w|hTj2kw*bV8Q8-0bXC8Q)0D2U|cu~8dRe=YXmV#ak
zsCH=<-+iPm&sfX)RAXK>(GFP4dN$x|HJfN39)|Q*K<sC<v*pGSDJC;tiY@m$%sZU&
zGjVzyGEV?-QWz)xfxJS(0r3Hl_W{vOM*FdApo^D!&NzmD_`c2pv|@g02h($)L!$QM
z2W^v5dz#VNhdPyxL{m?lR~-Pi+4`6D6lq>1(}xLv!zlB)TslHmybZ>bENM5y<k{y^
z-R3w0pH2eee4Eo3GKX)1%X<VJARx~7FMTP~n2)_cw`UmN^K?wA+xItuzLsG;#C%NV
zb9CDQdK1I=&ZlFt9>Y$9{u0pKM(H1ymFWWy6Y>JdaoK=%6Nd@)!8}Q-n|lJ|*h#7G
z4>f%h%VmK32Ex9UYKU13`UXG&zYg-XR5u6IVZLvqf0!@*E=;Y)^)=^-zLV)p+G9}K
z3{c0p{$p|n2M8f5A)*$+?}Ps~0C~L&;afcu-^+BS<^))udnOVibq0sTt26--Wy0Eq
zV1h{h72)SR6Q`v*5taj1GC(cMJrfDxVW^_&Cn2uPwTEn5ZO%fK>)OvG>Ws{wM}5KS
z?wKp+d*oqZ&m6>+xtWliuFWOG+$zu9S*c#=u@J0zG&dZTy{d1{!y=wJh&vM@vIVl6
zw7K_@*!MhhKWXoFg7r8+W%-;@I=?J&iunbR2)A*NPr2|Uv%g8$&oYY%dkbnWd#VeK
zYDiRIvxA6A%xUny1HeQ*gb(&i{Gv^q2kTeQ#8TfxBbtDSGLicjE@J>-qBX)dc_x09
z<>*BrSXBY4v^*0D;bDIELR^`<2(mr3xo$A`vuEy{ZXuU|HP|zEukVqE`Q{+5%*}@E
zOl3|T*gs+_ZAjd}96Tkh;sNM=cth%XNX-YRQ)YJnxs3#;2CIRr0*K3bdaT%#X;o%C
ze)30Y-wz{yJ5HvKn_cnW6#jYiOr1J=5HW0EEFyLo)082jiNd_-&)lwQMZc$~--7ix
zq#gxCE18~++ac)H%#)Qlf!!Im9nA5W?IdH)5~FFZmX%U|AbjR?TJ`+mMcCWR*wx%^
zp^?TL+zeJ;Iiob~71S)d$Nwf&-vHRx8+p#%u7+G-8pA#Qr2)3jQggS&b0aWkGi>Q&
zd0xEr@P5ESaP~upeSnw_0-QHMd<o=pMtweD`<GzUc;dEx?q4DrGTC(;S~_w}`|dWy
z$*ExxBJjP!=VbLgpKii_-Uu<H$7vz&X~RfIdB}0Z`<Ma-AT^`>&1i8~VoA`ndY-N}
z+b~|id}ULQIk|f$C>XVi1BF@EKKAiK%T}u$o!Um98x<#fecV7W;VcYya3F2iEw~0b
zV!vhtxYyGnC}3Tu4-sKR4bKxzs#V2q&Jfv9*oTb<(=<A$@%J=YrZkwQ4MD;G$27%^
zKGXE9uaB!Efl@x~hpU<P=xM^<XV}~}3S*@7i_^M}=jh7p8hsg%ZB$k^Q_0TtcbL)|
zo4TX-Rmx$KSbHUQL-xs{%XB;Ki@uIOS<-sAnI!C!YTw~URL*Y!@vb|mZ~?D|=WNG^
zc>(d8uq=B~svArVLDvSTp?tp@%FDa0n&Z-g9<~RA*B9U}fSs46TI9_FJqe(O?^nFx
zd;4|iSD|}rIMfUX2lUvx3W9e5R9C#v_>HTjK4ww?an*NjhU|j?bRoRpcbSoM#O3Te
zUz65MM4<Z4$079?K=qx^0ohH0jo?)vF9U>qwNYn7y9bJX$?)CIY(DcKbYDQ|`7%Pw
zwyVoSJ%zp3$gnY<(=w(pt_w8A;H5h@oS_n`hm9)hd-Y)fAFR3m+}r#qAl$F4Fsp~&
z2=(?hQ_R3Z%k#?$bGNtb-e!3t%pKSbWrg9X`nZ7I(8#c%9SF+E4ir&+0h83($g!RM
z5|oSDcbD#Hs?6<WMA@WLP)SW6Xb&^t>?Ruc;b>CqCg%Jl(yliGdU8B>5#Bu_&s?hO
zeM4PoQ191z_5J}_tz`i&(xBMi2c(5fMylu2sR5!eH$cD}u4?hNn6Gb#Z!=`*J(|8m
zM|0Y5Uff+(i@zDNI-^N?9DP3^&b#q5q}uLi3c8SCydpnCwxXr+pf3YpAv;SqsP&+h
z1Nx0JX+Z+iFX<9A9NywzBJ+8R|5FHk1embI2-Y`(>UPU&nZ?^J-$UROz~x1td!)-a
z{{;ODAd~l7HXG$qEX|maB{HP$x>VnR&z=C(HJ4%_%>W7BUU}FkOCK}3g11+`#0HYO
z!O{`(?E!ke_=K-?F<PvRyD@r-1%aLv!Y{^Qx3<Y-DQdE1&y&_{<bWD#hd^!+Kn=B*
z0~rml+ZhGcn2``=P2vqN)R>X$QDdUrjKFbN*Gxo}iMBD@FtFZbRP&|%E2HAO)91kQ
zY(S(t2&V!5ECh8uz^MY_K_Ke^_M$-Khy2JzbWI@KcPKhn#72knW{b*jpy3rb_im)5
z=t&1|miD<z5#1oLo`Ur!8Qmxl`+)2r(F4RmAn%fB1L7=@(|~$BUHge|&NEzqT;=a;
zYd;Nho^&44zX3|mM5H`{$_cPP3^=_N^1kExOvG0Kw$D=YCHuz!>&vp5BNHN;Z_1uU
z<duLry|>r**u%owVU-yz(7M#=mRxw34N$YgDnJSV`1VD>>=4M7I_2)d&Ru{zyDWF5
zNb6|0d})I{)DY~&H)~PTi_bURmWX~9kU>Odemk|am)Aqb5H9CYp@whA3qxhWP+hY-
zc&RFRZiMMEu9Rw9wh>ZN2N0k6I2BsF2gyO8`vKIE=|;u`PRz27Op?|uF!8r3??gyn
z0kB&dY3B4q$T3UQcU$z)h%N!P&*D=(VfPQPHkH*JDMjHZ!#=KAx_8Wp^J&FcnJgKs
zH-W}V^|pbGM>R{mW<WHmgVYU`dxz-k@cK4c!jVFCphIPScAz&R5!W&yUm8&+q&|eS
zx57RX2=C>Gt0~u>a(Hh-AQe-CY`wX;AWIbH8<9<;lvSn#>gwbf3l-<s26}}q8eO;p
z?<SCE25Y}x7WyYksI2_%Bh|y1&G2~xAZy&DnNTR^M#~=1&j8w0n=~3P>5#FC2;@vY
zb{O<blMpE+%XOf%R>P)K9^>J^q4W{JNd+OE#6Bnq3q(GMascONSf~l4I*F4YngA&R
z<k4DwZOS&~pAP(U5&lG1n+U7UDwA%W-_s}Vyb25t5pCK|Bd-S9Mtw0i>?+%tjM(O9
z1e2mNqN|=@_J9vv0P#Y|bd~D))(FrSGptC3sVXrW^mKsAu&%NfGwgQIw*qvAb^lw2
z?KW{s@k<w^pr^FnMBFOFHbQAFKxNo|AbUwL!wv)afCMw_43JYKm|@|a_|^y@kJkQc
zhP`JZESq6Em-^x#Zkh7~sr|4TVW~3DzBei=&vG`S^2kE8j^Xe`w~j)cOBu`^uvGSB
zFk3*Ve92}7l67S^GbDo*2SnA(a(GI}H^<hO5gMyp_$(L=^wdE;XlWqT7Ha{wIvdC|
zb|d=THk@Ex*#gvGc&IcDvvrvdk5>2|<;%Kkcm;e%Q3dJViD<=uAK-bmRD05#^JVZo
z1u|P!P~1j;f}14I4A6}N4OIPP3CC1b7n1ajWC5}_7mzi2(ikYH_setw-3}1v`(u*y
zY-kwhK@8(NXOd(WIzJusM1a}?NDS0bN#S9+UZg3~x_j(D`olY*c^km4U^Ll{%!Qoa
z>7hRyg)f!_*gi}5hh9w7e9YGrcAJ38K|dTli1%p5#(~>D0ij=mLb@CJEK?MY42U3V
zR3vso>H&+$x$Q}~8bUb@MwaTD6Vm0B5oe_e$)?Pt41R|RL<dEv9ycU=k`Tq&G;uyz
zauJZL9<-lV&nI$O(DJ-`W{|4%&$p#Us!~7SU1@iF9>dpZJgT56u|)laxe`uV>eJY1
z^|<{0op@dWs85@x)kE{QLB0a0MboES)7lRpzh@9#Ki!o<?o()mfLh-mo-?YRRRoy_
zsJ9$zGB0MtZ+tK=h#%q|FGs822%$!hE&}MuPfsH#MQ4L~+eGKAXQ1-85wjH(TLA1q
zMw;ck7IJ<y(375#0k+T5HKbjD^`5UOCe90lXCT8$OSd{YjfUm<#q_`O8dbB!I7cO`
z$_l4jo(_$TmX$^Hj(`O}QoMFTUEe64$r^AXS@JTLF4+^RG*VU7IH8I`m+Xo5%<NQ7
zE#!#{iHmMoPvCav)PcHWvA9t`S;FO?D%m5dJLrk5=>$+Edqh>X=^!TpRLLG`Lu<=G
z-o_xtaHJc9wt;*I(3lg_TTC?AN=7Gp)M`KeALXzgvU>sc-A0z>Py=#)x^+u^Ai(xn
zYVxTnjK{|PY(Gw&w9n%+VNF$-Lx|^J09|2TGlEihnAfR%VSV#YM~_1B2pv5X@Z_Dp
zIf`Ay&jRdHN7WR|i-$?Hkl&gu3jZvtV!DF=$I2qQ9YTFLxYSgcemd1?t87QAL=UPG
zJq_Pa091({R3)0V3*Y_()Z!cT4yqDu1hPIr72g_T6AKj--v_u||BvG92H8#kdt0E&
z9{1CxdbC{Jfq5ptE}JWA<>Ik1VKRbVS$t&8{%5R15#wOS`bxm;aLD<lb>n?6!1h_(
z2@-{0lx6wd@3k2J>P+T<{F)k2C9f~#;(deiwc31yAnJTf=JT4#&2ilXpI4o0`_Z$e
z3%MuEmLTd}%PH^^T9P|WTJi}sVHA^2Jr3>~#r3}QRf`eeCrbuSHifrF?JG<{Vn+g0
zNv&zdUArA1H!_GF?V1ks?PriD0NtmcSG`}qnD1#UF94JI#vr*)z2?$hwtas0*;|BI
z?>>OYR)D<}(6~0L<%GVvW3a@{DDn;A2p;7+UBGx05*q+c3lL|4oB-reD5W1l@}9w6
zNkGb_Ao>I84X}3@YkZ)7ZXz6z10u_|%*QTn6_IvnKOGf!V$dXc0_dQTFU8=s`favn
z(-WQn8Vk!K0qP9U93Znv@C?umKo$U^$Bdn)uVI{K1*8wxJB%OCiW!|JW{LZdjxF{l
zUKC4VWHGIFfYggXo+H61z5w!XK=gc>C<ZW3F_BK1E3Ol!gGZXUQ(0t^DSgaK(?d4D
zouu|G|A5Kg7zf{o7ut=i1E@XA1dtR!w6(FbFPJ91(LE1Yly;HftEuOdoJ~mi^zhW-
zI*)JkD;B$D)hkR_`(gz!oeQY-8HS?i_1=S}E+E@6h<jMm)pph8ATMJOx3H%7pwtqO
zivUx9+m4uKs#kH|+CBON7B&s*gZ~J4TL9DWCFNPFJ$wM_H9%uN0@{ADb_`#%>xx5V
zcJ(R92|fTydlr2XKrQw2fs_N_F!FFM&t}vevVN(m9I#^oH#fH%8FsH%1Z6O(!p-sL
z1MFM=#$GS%cLMB(g6v4zEjQq1=@emq9uRq}j7VbFLWraZ`}=^%si26y|1M0j>0&BM
z!cT^t7xFbs#Q~9;zKF1I4urQ2gf9<-kMP6M(n9e=62)$>4G3Hp6u?6t^q_{zoy=7}
zSJ)o~w08R8dWJex6#f`sBN3+iwA_`Ld8V<09G@(iNZsX)ugWDx>g$}ij4$Rv(A0Mn
z-kZ26uKXAnBa<b2AgwX7iqcT0^F}sTQgwcN6jD8OcY38S*+X@_dcM=6nB8D|HN)+x
zs$`G7Hk5j)j!x96!{tw7ZGp8=$JIDsp>e=MQ*D8-MwQKsg&Ley*Vh)fkE$)yS9=$!
z*DfZr`Flu`$k}-_au?^8Y~C}-U_wAO;pS}R!%IL+w)DsTa%OD@l><TEzQ`U=yba%i
zDsm1#0!}J8yc$AID&7^2<|1-FM?15l;P9C)IZ>+(Pr-`frai#<IMe2_pWHDsW`d~A
z_wwe>m_8bK3oa`;oY^0DVKc>y%>G2bN4Jjo`0E1*whvI<eEpRHspjji)KPhjufG!S
zVZQ!KTwHKFj9UvB9eci1_3hUMSj7OZ(}65J`JkNsN-XWN8`g3cNEMIyMlAC%)qEpX
z+a4H#fjr9aFoV{~lN%|gZ0E`Dj7RC@Nu^Wg5tLS_i#!7%n^#d%Z>Y<FTn30b&-Dk<
zP#z(d+uEAjFqZ+M&gnkjR*^50yVK`Z$z_1JAU^~BRX=*kb40n9T{Z)xN-6Nk#OXom
z%4!r-sZPDcRXCUO;(`yZ2BF?&RcEHB-zlKqDWKm;>9-Rt*q|2lx1cY?wdybGTM4%(
zoCH|)p2g_~fKwjC#XtrC8ndN%N;t=h`ZqfK5#n@i1!F!WuBOUd5Dx%Z4alQV$_j+M
z0qPY%$~q9=0XYG%A2Tj+RDT_o&?#7RU6FRygzEu)I*WFX39<v2c3h6tCwjxrA$9_X
z+B6`kBskO-0I3MT(_n5gi9tHy%~*r*lO=rrf!fL`f>bT4ag%2VkUk{1{j&hb91`3~
z+XQ4C3GT7I3}g>r2Di%a0^6%nxLx)cLjDa%;kMZ+ASX$1`|K|ue*j{v3vG=rQhbiA
zl8vQXZ8oOHC&7w*ia*Y~_>*`ZssLv{h)O{60nr{t^$jzOoA=2Gb#tGG#xR!gehhk4
zY%C4MKRgUpn;?sfrVz6XR!QfCkgcUvLI=v8gJ_KS8UpNvMxOQOddT^sj-Dm22(Wz?
z2M3W*-N0a-@lxa(j5U})?3vnO7Q$C(?X3}0OMr72L?0j*0itz{%D;lijoQ6OINAc9
zf+M{sfzieZo|df$n{<TZlb2Qw{2ffV{t!8HPTxp*D3E~5gEDyF;=hP-Z$M~SPzX~l
z2)P9{T2+hf;pWZJfaLQ*$;3R-)~wSh>p=EwK=x=*Hk{zQ8Aph;W+n&JysQO}g-;!-
zGqiN^%>x4J9Uqq>&xSA)`9_&}K&~Recg>UlSp~3fG1@H5KG5?^%)86IA|NoWtibq1
zab)T9Mu2<R>w*HoyWEM9x`c3_C17t~P&^b@Z^MZG7_jGiQ|2ajH_sRjc8tRnnqfKv
zdZ{{qB$WKb?r;oP&m)ODnPz<ENqh<92#H%kh!-sJCy1H6XXB_A@q@7=g@@&O7I7qg
z8*KiqMP$N8I>7$RXfhL*L(X?ww}{wq?I77cORXDiFD9}+3~DB0ZzqO*op#k?BiB_H
zg%!%$@E4e)(SNnzrfh)`=;--e!YbliLl%524@kKML^B|b0158dwlzx9#~e?+iVR;$
z0~;YW4)S9FBEgut8KqJz;wfP-c(oVnR47aa<TF+=Yjhw1Vz&3a>Xy~-$96fOB?sgS
z0WCS2&jPf3uRqRM09w9}`P^#&vHKznqWHM=z$)k<)W@y++dAr^IXa6)ZB1XiPl|l~
zLF;_|+35oFscR0TZQOkQ_33;o@?m#4puawyufIOsR)29iUw>dag*{hej7yZ_hotiu
zkg|}Wi}9y`pM;KNu_cOv2}^<J<YDqF3jT#uMRIfd66fckBYC;3cLm?B2cDme6pFn4
z4B$7SBNgj@4jgeZrh*&rCsL`-Pbx@#le)b6y0hD>Gs-))Ib3irimU)zG*Mr7Ch9g(
zUw0-NugpoS+t*zO!m7-#JG=edr$IQP9lzdzZ!m#y;}yc2VbE1y@Nm@^JY4k!4_AG`
z!&P7KaMc$)T=fMHSAD_5-HsA>UG)VISAD_5UEBeC?XLcUM|<@J4;NqX_y)!c`9TtV
z!GmcPh5Q}~KHx#ZDa=JV;`<#W+(I6*#^*bjz_`exTOIW09O!9uSU3|U?5fW>xaxBb
zuKt`uzW&BX3XODhVhyb}kZa0aj7AJ<%H!RQiHY(qN+ceubR`5*dEFycpq)zPcdcTz
zwNsr67>~%Kna(<!VlBfq>Y4i%dl<KJ6SQLY>11TA`&<kipnD~z%8ol86)EI)j^bI6
zTaiWTR$dEnciS+y@BWd8DBSi4PjWBD1IxHO{04l!!hHnwBgGwdBV2N~E<+1*TUEr&
z#k~TP`gHd<RI?2C=@B>q>(;*nxG3KkY&SN(4jj^nn4l9;dG^SOB6g)I<UBfD{^_fj
z;3=ai%Y2AUH3@zPF~z3o1gAcOl*Xnj0_ko*#mQMzyr#sD<XWSstjslvO=m&zMo;ky
zDxQYJZfx0WzT#a$#pPO2lt1?(?Z5b^FZPlV%c%^L`?Xl=-I(IWURDGgqs{WaCn1ZH
zqBR{MD)U2)NwLg^z(r+zJuxZCh;|_-k1{EIvuXL0#Z*eY1bFJr51<4Rxx__f-tS3D
z3$t0eB1Ka6Wt3AQDQ6XBSyz*CwP%Q6jz}tJJmZywq`VZie|W}oj9us9`9MJ^se+q<
zPE7k&QTvwq4H{ljL4Gb6ZuLslgs7q&b*i^$FGMw6<(+QIn;OcSgj0RoP<-MmTnjpx
zPW5R>b{)mZ3|0S63%naqS%Ag7`w)2pdO*=4_HJzj515GJQo8&VDc~nH*o~l6cBDxS
z-IMr-HA)(Y#)@!L&tWo`)HK3|mPl=YOiOC6h_uuhXzxkw6p@~qr~;zBav(FcUJ-~6
z+MCpaD6piCiYT9Y{X`I*6j31Z=uL&)jZp0O$LZZs&<W<B{)0s^_|1{|Nqt-rKYM&p
z;nvm&?H;05UKk22@Wg&lrI@Jj<%1CFrG(o4PocBdpwX^PKLp)jWrRfcyv=BhyJS2K
z{~6P@<oo_L6czZzj(CakeN`ErsL**H%x=u3^y6jC_PF;3bPx|Dzs_Ku^HL^ZZGC5i
zpGv06QS$glq_AhI;3B#9cexC4knN?3Oyq+tDon};|J(FR;1NpsB87ccjn9!2uBt0V
zB~-u<dC8wFc`_Bf)4$OxxZ(QD#?>$2ZS#QepNkmQmbv;J=x-TT+>K$wDHqyfiJuu3
zdJ3IcIGJ+Y5!MwDuDXk1`K&gVf$qz&V^E5Q3&%ljJLnRCv%L<AC|r&StGXBW8~{!|
zHjQvqhTQ@BDu&gEJ$%}kx<7;dnqi9&mK=5;LD;l?mgo#{_CPl|oW`&TFXCOGfM#LH
zrH6A`_r}H}Dx-5f=sIDSzTE@<N`R=?agENGdeG!=DkYzWwJzZ(B_Dy*79}}#t(HV3
zSHC|g`3WQkhh2`dFF|S#z&WxLOGO>_1?W!!(HR%w{RqYYj-SCLc}Y0+1DLQDf)#rS
z2kHPKn}YL<ASP!NyfmDmgfbzJP9ah8q>-qlT@fuX(l|Lt-^6e}%e5lJ$^)D>2%DtC
z>VU3A^_+gN`eY0m>%qMyob?Peiot0@je|(hwL0uV&|Mk!B;@9Xqs-llK@Vft3Y7jl
z9X1a17(i^ixGo%FS<MDDnIU7RPe)jcVb6ko1`y%PUAx_{Gt=@hR1)=**Muv5kK|a9
z9#~34{w07`>gg+an6GqgxMEeLNGZJog}0Q_Gd(el@RdBwL?q<gaP|-?9e~)!Q26j4
zN?~8!SDF{jy2DfY5(=MFDd`0hOEt7YPV0F}P@i5Mg0&{!MKK>1q8}oreWoQ!@gb(L
zvT8Vfg!aA$>pR%`miCn3AtQ*BB^0a{P70&zSAxGn=w}K>o<n_^YU(hy%ngPiTm59)
zu-lSKZ$nJ($2B}<eQ^SZ4t*ubO4cD9Yr<*FOJF5KFbc4q0#N{@Jc+F!ngVG+q69>L
zAiV*(G!S|hA!9&|0)&o$m=0tjiElux0&+WvpFw;I<b6Pd<>UF`_?Yos$PJ;ab9A2N
z6MY%-fU-*NKb1CyGV8^SQU(;#sC1!Vk4-lvkje<k2ZT~Uv;oqBL_Ub#Kzae9=a66T
znjEr4dFIfQp|po-I0kQqLS`@^n+590g_NANMn+W`jRk)+04~#7E5G%77#hF&$)`hU
zY0P_Co(7F6fJ|EUByAt_bo^MZh3wTTmZX{{hB`=yR|f~+Ikwr$KwQxmQgI4)9esj`
zxSYxAA5O|bsO6wwZh@g20ahA_5+JKd{0jC?Adivw2E->oJ|uAj#3>-(ka!owIUqj)
za%nnL5mu64LAe1!g&=AIsZOF8L{lIQNOT6#7f5dseL#!>GK|D<5bppv0BCdth`BI(
z6Xq|W@gR;N^xqVl4MMz%H9UyuJw0&5)=%OpD9A&h>g}LpJq%U`<kA2biH#7m>r$}2
zEK?glNqY?Uzcgq*7c%Xck$L%Pi%pE|K&bkoUSw4fQDsJ^YPu&F@l{kguqfUPWqm;<
z*7SN%D5O#*n}?^A<YT_lTcJ#)&>X@|senY?WcrL_7(^SV1`~yOiM=Yo?Q6I^VXr^2
z^Q_@AL#C9`oeSNlX$_pd++w(#BUUltob4bBnK`(xeP+Dwnz8GM6D{VZkVxU`BV|4Q
z#IM2dAzuxtIh0(80!-sn1R=$oW2A9@0Ad&?18JOm$k#&U6^F9~5Umx5(+&B0D3v31
z8s`}xDvd)%BrhZ9Kq#N4lR17NkJXeRnFE)6OB3br2=VQZnqHKfKr~9_avZflDCg=X
zzrq*~g~}^ahiK}9keWpxEnF4Fe`44=lNRQlPRqJb<I=RO3k@ty%lc4GX<F8YipkMV
zZU{QLvDC>2OPzdBJ6Shbx$?MnC3zx!*b$2EXX2~S;~k-F5@>a&LEafkW+oNPQ}slw
zQXEK?98WjXz&k@t=u}74q_%+YKv=vp)P)o9p`Zscj3u!oluNm3ps!@uSD5ZB3Du_D
zYS4=T&OOjw7E)`XPeA{RVQ;~UWg#^)#`jLeIflIn-Md0j>Q+Wr1%T5F<#SgklVQz3
z7Xj49Ob6q-6dr~?Q~l)Kp>Sm+!}=OCi;E!N6QGsm_(~oIIjyuh6dU9z4S~WSD%nlF
z3__921{+n{+h4=|9btQMbKbu~^Ytlc?%~;kjW$;_kN8|+j|znEH{o;9cs7~vJ&<Sr
z!=^Go*;Ds~M2*M>IIC7NiRHTF@-a8!PnHbF>Ob7<Mc|>@i}80d5-<V~=3RXmsz&}k
z(2p@}9JDQ6MJv9J9Y27Y{M(^CmgXeTmoe<-2QV)TRUHA{r$BFE*rGy25vn*AVfk<1
zrYytm?TyGoRVE;8E5bGaoH$C|4dqhqE6^`8>^Mq2s>4<sz@!l1Y(rQ~hs}EvUtR;$
ziavwv2<3BWXfInZ&zXY0FCJ10gpO}v`yb%^jy^0|*Q$x2M=*?wm6VWLS>6x&Za}TG
zW3ZYHMW(<H9G;kmX=y??pZ(xI2Z&8Th-&ITgZh>sZ1M@6Ki%K9L`^`&P50?6pUwQn
zuNJ0N&Us{RUMQ6r{yv1>2B_-!h7rc2Egw@_LRJXbdoxY-{1Wn?1BCsQ5o1mI2yB)=
zJLw}PoE<IRm#D(wK~j?Gp38Q$>!zUe@Ixo=EL%4hulmA^&_0{1UWBF|v?%9(H<d>U
z4>Pq0PnbgCOOP(rcD{pS-_p5g$0lfmD|GTP()L0GEke;DSd&|G!HT?t`6mReDIg|;
z7zMCKf!GXW4T*sujsQ6T$fbeMB7`(}7p)u+S_NVekQpR4fcOK*aT41>-1Hu9Apt_q
zf;a`_B#Bo+oCop;iGv`b?*joe`W!@!i*TAY2l0Fbq5z?}<o*bvEs)kEL{m)hfOG{!
zIde|CM<)?4-+{L5W4Q;ikwngxr$S~TAd{0fPtNu+o$HYO4%0nO+^&c0e9Cj;=E;YA
z%$N73hqpm?5dgm^2l|G_6|_UTGSJHSiLP))a5u!3Q&de$xB7w;C^*P+J0R7{hb<7=
z1W?mbPtFmP^Cyfuz~4?|7}AX;P8LSN25X>t^yMu3Xl__!)i-?hW?5qm!Rl&H4RBT%
zP4;IunQ+~o;n^+grK*O}pOFx+Mn%Ldy58KfexU2+Q9GW4OS=J90>tY;UM1mxI0)o@
zfQV+Gdp~R{r4$QjqLmfS&xHwo1Lrt|jw-=(7^Y4c!H`%=!5&t)69vN%l>b5<qF|#G
zREYb)ezzRzO)7{=V3h-e@<4P3(h(4858tm^$vi{aeGE%I^^*&&*n70yA7W!6KN_H_
zfu|GthmLiNStU$?>?8n^cMV*-)x?5wq}PkA_)fTHtpn>?NL>Z6R)AOm<Sr7of>;ma
zen2jD>OF#x=CrlL*plLLgm+a&9);Le>e0w6K=zZMk$(Ys50LvDghMoP1k@*hO01r{
zd}AJFQZM>vt)Yvos3#zO93YZBA?{k~YNf=Jjv6zpa(;DFYh%06u<9e{e}_f&?BCQM
zP9XVcR!zI@O9MvI(It5k*!HV*5w(T!Ix1X0=v`pKxntPD$X^F1E3MY@++XzSsZbR)
zVftWv=Y_>kCuHBpu8$S<EYf!xpepKlAb*fxMRgBiTm+zbEZ2sa`e%$IT!#%{Q?Tb5
zE?d%jK3CW!Cj4hiea`D})1`Z>xYGChzGh_SV~pe1fSH%%;*>xBnupgXj1WhROSF)=
zdv@~w8a1#}VXrk=M*BBuRlF^b!;2pS#w7c&5n~MRl!;-;)c-v$MeTZ*dt6@b$7m(&
zDtGHVV~oH2?-)lJF~-=cyh^x9Qy@l_75!9ShIiyN{AXnIjFlOf+052fboM#R_A-&|
zv$%BOHjb%z&a!vWC)&eIouQj+wB~=ym`{xu-F)A;saHnt{;!M?_6Mf-r0rjgSL(W{
zSE$T#`(B+-wA`|S&H!yW@xLr14LX<EfH+OvZEP^2QQF3TOT-s}sO~aR>CYJ#O!LZ*
zFBM}>vC^D3^32r(T3&Gn__^v;V0fff(ay5hn5hFzb7PtWd_rwD>&T`5D^0?_$|!Y5
zSCy-ktgGS0?Ez!G$`~6`>UG(<lE^AFldA{N-0{VC?9Qh&LlRT?L?wlj(gxRo!TeH>
zRsIq+9$kZ$;fzD*(j~e?uEtuBKUp%S1|H?`PSs6L!AykILa&g{-l5)RD%EX;u=SvC
zV;G+Z-Q@J4PT~+|w1C)5akHc5zP&)TXUGh3i=)<4H-VZ1aQH;(R!7Zzp8)+BrN)az
zj#|yW4eCXP@IlfdN6mGUKd{7kgyl3rXH~rbbMWZ`-yUWXE(EJ9Kus3kGwHE~hk3hB
z{8aJcO6Ul=(7F`z!vG>$8}=egbtd3h04NInMZrEGra)*C!0H6zCLjw)6oXg^WH}(I
zw$Xl=y)C-3z&c33?uzg2M^ipxuC<_;Pa7{eP0m4LbPp)9JV#h9M9#;E<pm~ntk~$}
zk4GNgkNDOAoX2<KvbCcg!fXY-8Bp=fyL2itq08U)0_+B0FW@0Zm2@Uk>dDwX=1Egb
zrT7WhdK{3!6lXA{m_Thew%P5Aifs)wl05w0tE`-S#HlbDPCgIiX93E|N41l$f_@oL
zak5cuq&3A$RGlt%XdmB$$UA_@bJ&~mL~S24IzmEx6cnwuA@&L6KL&*Osk7riz61!B
zTF*knw*V#eqXm`P(-8g+P@3ALCC0`7qdZ|FtACj+nX^o1eu1_xW>-<^+U=<I?{A3V
zSAg=$6Sakhc}f!E$}9Uryp|83YF##vOcE@M0w5IuNvlnSo|kF>)vNC^weCB=)`^@O
zVc<{g*mK&kIxtlWkj=_*#F(_ja!?W?%9$qMHv%YUx&rA;g3j~>(i@QUpZ_Ok)LdHR
ztcB*{sw#W-IQBSX*l^ew3eeeOniI0eV15;axbkQ$WJd#(M{|J8CP9yG0I~p(bi2`g
z(lp9I_C)Pp0(r6(S`DfxZ}#a*csukL15}<IG<Gl-f}n(m@?aJCD*(!atw1)Dpa)L?
zc^r`Rhtc#3NYA0v_vFeH&~L^WjBlCOVTOK4_r&wjS>xVIb_Vh%=XDr<O*^??JNZ1K
zcov|ttf^mc9#-8{LkV%^@T-u08K4|K4CEscbodyMF91oy{#J<p%i;f&=3d3mOe3gm
z;+uqs(VSn=PJR!wrvS=HPt*|}R^T}aapmMW$o>LQP9}YXbuK_TnFS;RkR;5s@c%DY
zQ_Z{yQK+R?2frLIWjU^O!mHq_T6$H5-3kD#P_gtHZUh}MgM#aw@E!_s>D3lOEh(s;
zi4>Zo<0SwF^Vd`xoJe(aglbva4+?z%YE9)y+W*k;m$(;0b{HcO_I@);a3<aw_RJhS
z%NyC)87I{;k?TbXC+V00;<eu*h37X?c)TWs$5U#Y>Ij=^Bv^MF&11!*YZ}J<6Lq}Z
zIH&qza2CLUF@P}7=L@Gj`G0{v&9Fve;ELn2;ST*6BRoLw+Bx;PYxgYZT?|vZc3SQ?
z&~E{%O&>c0>y1XIVDH_-Sjz*P#~6j9j&98P1Y4N^hsQY_C;cQ?wLXQn07tCF+Rjmj
z#g2l08BolV9x=zgLnkPw8j5UiEvVLc1}k74_iab8w*hc|!kF3F$)Vprf&Ly4Nnp13
zm(j)pMuWv5!k_HwWIkUL1z81R&Hs%j6#x-A3-2r4siTxWhMiIMlNUMZKTyerQhO-0
zrIJ0&C~%rs2QG4&sOO^}O>(p%X6|fr{hVbz{VlMhJpsMaspYMI)8T_!^b@~f9eWbS
zV>~D~+=(*(dLjDm0Q>UWwafJ2HqQfLe-?<~Sre@1<h3T3bxcK)lwxWn&6GMc^}orA
z=q@xHuXLnHVT(#}B5CL@tk=Q16n<UI?1>g3v&xz5m!cd66OO%rf@8tD0z%^e)({ZW
zflMWFA&9v^t|8F|#LYl%0wfh0Q=XH^X`Q(`qauv%3X^cWBE(?DsvHn?s^i!wWEJ&N
z*t?SvFzR(c?j^yfUjVY31fzZz$lHLV`GNd2h5V0lm8cM}28yFGA}h_yg3<-9su0R&
z`}ctSm1X3MCYCLyG8M=^708MWMo(9~&;C!ndVzA@?ZqdOh6jR6T|RkbSr>FRr~H8o
zP2pj!xVk!e%+`<0*y_@Gcl4NDdq49$eq<Li;A6vP;iRc6P9NJ%*!75>S74o?-jC1a
zSz5Cf6;*#RSZVBLz-rBQou>MxH*9rgLz{TRuC7efZ1EIk^E!q;*XfqfM*l+x_(KEJ
z0Zy?CY4sbF<VOJ2u}!sWuw(0d6u0mJs$-jGr!c}NKyP3eA0JG&Yj7bH{tVBN8OBEi
zGj!N+gmnj~4sfPjjgKBSfnEzx+xN3=we<N0^ecek2ln9^hJDaDn$!P6tP|^_WBUM|
z*b+OR58bZ*96Qhe=ToF?iCv9hD?u*-L@q;5@cn$9KIvor2=##NzFHR*d>X_ah5W++
zH9~nh_CIv28_cfXF39c#peLLMb-BRgqL2BpY_u!ZtA|*YKx`j0_IR;)I+*1eZBNIV
zXJR=3+1GU}OiLd>77z0@<O6oa<&1@CIRuS=d9iqs7=ZsCi<g$8kUgSfnSm_6!jHwn
z{8%2e-PafkPdt4MjT6+0P-&*G<YB(jCfhylDg6kAvsB9Z%#;hq^(-&LNr-5Dbc*Xt
zq2pW=tjh&<xIIeVY6aF`(Eo!r)SN~bJGSUX!EJW(1PXFHIsFTqk_TX_(hbK%d_fOO
zMr8cS$L-|%sl@qBRVY-ZlKqNt;UMM_hrmWdS3QyUcu#MI=nbYBc+nnqW^#p{Yocid
zt-p+xzLP?EZ?k0vu7ef@Bx|AR(SGpu$_%`ZuOGi%GQtRQLEO#=a-ZZn6VCp9h7LEI
zF6;b<_omkkEqiW0_voHBDooQ>V=6Gk^)}5AGu{k}S7{<m1$dX1DO}DP-%(lv)Mgt~
zbAba>@LMEx3rOi%no6(hONe+A_F%nD57!)uY3fO5Z@VM=mNagp$Ub&Wb|C3I0gW3#
z=@cu6*WUEE)qaXd;dov%9dnzi+R)OuC@uV!s=u&M@(xr~r&ZN%N5hR#o`nFlQ&Y{Z
zM*9;%4+2zUJk{+~Mso=C>y+bh+3I#4?WBAO8W2NQUDI|CA(9I~HUwn-$HdI-YLSu&
zH)=+agiV&};R~+TeogUbm~EPv4tA5(kR9wS7#RvszHYXv(^uyhI!=Z$GqzaO>FXs3
z>j+T3ZnYBh^&`-)0m5_8>29^k=OeOe$I*cS!rWQfYSm-d6wspqy_hDv<vx{(!fUx>
zBS()Gk62ac(*xkI17O$cQA_3WK~OIMoI&VTw^?eBs?k??T>!utgBZ72=^V5cg1(Aj
zo8av>E1zNeK<{GMRqYv8jbXon{u)rLx00*NFnigP^JA05W0pGN(ftJ0)PNXXakO1K
zaVyAc08YaLIE!nk1IurKevx7*jvbaNj_N0|bOA&&df*|5$#gttW_NJJO8OAHELIU%
zT_Do|VDW>=Lx2nd<Welu8X;pqjR1tYfw&LIazN&N=ubVHwvWMk^|QKKsn(+q`3SNf
z0Ps@>`W9TP%N`H83|2*J2pPlcfg8gmKBD{rDxU$e`H0e!v_&o`|FPuv;Gd!lA4_^N
zAuZ!Qiu@h?a{xxq-uNjKX(<-<qEE6b-p1(Jg@?aJ<^n|49VXk@0o%_Sf~%>=A&X|r
zvJzQ;83yZn*0gJM5=q!&OoZ%;epM>o{_l{|uE<%odOjXXRt~fpd$u8{ScIxrI-7F;
zp}54z>MdR#>W}Y2^_2B=dy}=Bq7UI51R>3MhC!b@s&7?j2-!5Ac9!+6daQeCoR-K2
zR%MDM&%6XgLtW{To6tZb-7u2hB+=L^Pt!bVgzpB7gL*m6+nQK<Q&yegX<{Xlk*q#)
z(o{E?i}-Ld`Gfml;zBFNE#u_D%$p0X@``wMC5WDuI*B0amK!PL4ORsn{!Mn!yU81^
z7`qhoEW8j<a~?eYT&kXBsp)CA`#sBG7*wZ0K9}kYP$o(>0SGfSU&tD4<+VXqXIL>t
z!!M;e19TDS77SzN9FuY8%~sHx8O9#yxGc{sdI$953=@$1N+##Su`b`BJpt57kCRgM
z8^b{lW*D>dq^xli#X1@E1cvQ_FJDX5+HV9sAAt7%wXDN)S?fTppcK!Dd?VFP`Fo(>
zVi<Gk8=1ct-hB`H3x@IB$hT7UO!?p9nJ)ml=clA9peCSdFk~`9R548ebp^m_f)t$6
z`FI`ZIe?t;Xbe?aqVwf#j6Y?R*{}wTm1M2}(?+<i4Cz)yR)%cm_`^5oCV)JHjLfs*
z)=~sN2d&)z>qZa<fV@m%Hi$2Qd`@CKh_gVx1?0X4<<J_0lskok^nlPqAT9#Z3DA2N
z2rs5+HadYXO|(*+V6<Chcx7|6=vrXSgu-+{E;*sb2)P~9T!896JWX5t3cj^UrmBOk
z=fVF2fS-z>_(m^X7Azow8oziEM81Q2fLwA^1ZkjB0V)Dd6HiOP_amqZeq{h7ScaJY
z@KaEQ5j-p-w-;ldeFIn-kI^$?4WLj6uo%(-NE?9aU4`$ThoRA^pY@ZBjiM>`t|F5s
zL{g2g^f9k5gm7goDEhpBOrBvRXBlG`Uw|a;0b?K{?h6RL3E~PMV@P}q;#weAk@yP4
z?LZa->^qGi?oIs&Z_ueZ%NC&Tvr7V;B$(%%Z!W6WW)seX8dXjBY=rL!gts)|Xdg)*
znsD#fnVvUtCZ`U+ipW5uJbsfdM(JZFVM4wlW6NO9x*TGw;PMK9R?0C-*huj)ttMZU
zu~$5$bx>GKCHpy3mK-g<(k`mR>dCH1dON_^$t4Gg!!J4rW9`xFwVSrM4&KQB$i#JM
zZPpC19zqOT0M->Co&>T3kV~=90)*@Z^#UMt8;Cc7yaveTko}dhDa9fPTP@8neH{ER
z0r;s0Wwrf!=wbc_R@90-K{xoI>?~AHQ_bFN?DB}iw_tlEi}@~|zs~1_XJ^?Ney@>>
zf6Sltm}l285wS*u(9tM8$YIuOIJ}~yLYLAC=hyI&t^Jtk?4^&z=s$k)tc)yzG1c<_
zfPcRMRGW-`k6H*&ZPGJfi%XdoUZZahep>*d;qj2cevWyVt0F-(zsc|mjD`n9E`&yR
zYDIW*`ZA-0BTojyNTq)AcNzYXN<6YX7zzWaWPe~1!^%<)O~$Jb18_vMA2QEg_Q-r;
zH}Q;NHqy{YT?g%cCY-t0y)-<lovEp6Vi3O!9XwuCt#?^?6hj~8Es+<fX#mF!xkje3
zkJl4~wK6b4xL<RUd3;f>*Q1)AAgtHJnYxv<LDo&?KqYrdHGC(lv3#d2zZh1Nc_>ys
zCH0Wc)36}2;0S&-F1ZGIC&v-Lg_)0I`X<k0$#m>atMi}{sdk{RM4pWVRO1!Mi0nZB
z9|V05K&=^ES->^J7oZO_j3ahb=5fT1okp_()Y^(sH%X6*%-vd-Kqg71(*wSk3S(xH
ztVpT}r0W3G${;S)oM#f~;S8H8l677*J%bmC036<$Owr@?RiI}vj7KX|WEL~w7SQtn
zeQ}plrs{E;vq*<Cq*OiA*aZGY04MVasV4I~KyCx%{2TdSy)Du)Neq@1I74_D!TSJe
zkRBpqEWnRI9|T0$k#tzBGZg2G4OR{!{K-pX+Q)5B8`-IR4fzuQ)v5dl<San-C+C6u
zL4y5B_E}8-3G7cigN~1B!!YUfE!7}f1%Tq^E%X|<dCquPj!}`LWi$mTQ(a4aXw;=v
zk|)N>tvUj9C+vg~`?Pk*hmm5kEYI0t3y3!ZIGiO;k?N9LZ_vE}>ImA1MPAfvS&3)K
zq!uusPLEB8%v69nJ$4<Cxg>ac>|P+N0lCyEJ%Tpb*upL!!u1ifO%U5iJsv^Z0c1M~
z8hIPYn}A#jt0QQKL45>JN6;4dj(M2L5*$G*po{EbjzRhhfJpL$xF{*j5vbU0jUjd;
z!=UJKIkIqgeAV#VmdQ(1F0D<glfuKixr5A*;Z5{{UH%z(aEe|;c<gbmujFAh;Rb(r
z@vZf9J1FsFnfw8dPoShumZgA*1Juc~azJtbSfs-E3%<F@FfPl>a78SY)t*&#2vt^s
z+_O4xD^&2q4Iv7)l;N%v<UUn12sNQ#gxh5YjiBvgQKbl_E;2HgO58eY2Zc7uI!Bgj
zrj=k2rS(BFa)g4MNA`eFH$W~qYDl>hR6l?kQanvZybZoTq}&JoJplaFJZ-7pAU&+W
z^Qx6}FYW+U&eI-*$_AR|D%g{>1@F`OtKi4Lf0Qy@1$#0fE#s|%p8<at06*I+T(+j!
zh{&rU!X9U`ig$+BX^uWQX3n~*r%!y6WUn!jtYv!xHcTzEPZ&OH+2H^m&#z6wsrh?=
z<7pl<e0rCOPQTQ<iKg4&p_sawqkLIv!nsZ!qr=T!U(p0Te!#Y~Oidn!sPqiw#4@YI
z=&7Nx-_5NN*Inu~hBs#Juym2g5>~j{yu)*sy7lrFa&jM_HV4eRI<dDEKU(5H4B`rM
zxw-+9i69qHn+wS0H7V5<WM>BPI?wVZ;}FyzWN$zfj;brwN^uUzF%05Laiv-)9s;?K
zLA*1(O0DDS{)Cerfd0G+EZ544dlzbdKcYMMRqle78*jnxQ<q>DL3Saa3NOLFsDkbV
zxtc+|L-dlm0=p690}SF#qWvmp8^}ihEyjzNBXs!%5Kl3H_X=KC&r<B4u~iSK#QU$F
zBX~otaY+{gJgIc56KXDRza~RE37}Q>8$q1e{hP{*6)SZ%Dmf6(QYxI4z2>WUm`XMN
zyp-LKD(o>UL%h;IRKmWpr?Nk5p{G&^@!C|eE8VO!lvUOH);0IE_1lx`2e|v7jEbs{
z*RY$lyBIF#Ehi0E>vBE9Ba3R&`PzVyFv^QY{3w!^1h{3)ive6J&h-~D^^jC~U*sGt
z{B5P!94ToGP%FirK)L|b4O~y#7RAuEew5J#RA<+s1s40}J8FS)>wN*$hpqBgK_2EU
z5xCZTo5H1Q%`Lt)55r7M{Q_&vN=(*YzF7}zXe75p4tM=W3dbNpqr4PO1v1e~p{I^_
zYMB&{qIzix6Q&ADaj8k+jlO_NVXhIt!!?6>BO+6{ox-Iltm#|xFmIp<rjV=8y{25H
zkC_CDU9n{JA8PG+J(4jWASzMifKdrzT4`6kcAm;@5MM+UdxFVB&JQjF+pAYxOyHu|
z)dBWZhCLf<hfFwY{K|luuJI=V+$Vf3uj3wRlF#n>fZ<}LmUN8?XZH*@OxOJ1?@-qN
z0=>>HnMeWW0#&<y0F_(X@l83RetEF2CX0i*W?kJ{v(|z&fh;}-(yR$>6l>r!TyG4@
zTnr1|tCP-{%$6m*NH9o6GN>)Z<v<umSJ;)dcr>97R~NEtAy*f5_*6i4tH%ApIwN_B
zvb&md4#oqR3-$At_=d{J#LKNr>f4;^s%OjyX{w$v$1hlp@KJ`(t}=ZF>3Vce#P?r}
zqVH){<|_+q?%1c#B;D~Sa!$lI#K7%nW$g!Hb52igN2@crX<{&#oh-F-D>q44UG$TK
z<e!@%ysLgbAmTrA)!y8g;3AbKnp+)8O%z+|{X#U+B50zeXJYt0FwxMevJ2Wa|IkE3
z?S)9;t8wC!S3@Mn$~s9$Pf%nm>9&(=U|~D9SrcK^wNe=_Qr>04&b<ivbgN1X)!gPE
znoPGksbr_{Z8&kh3&={c3hGgWe<+e<wbLSe1yG!?0J6eX<vtYQABu!^+C&Op_7hJ=
zHL?DbnJefRp9N6lPuW6QiC>!s?yrW+eu&&(Wh>2XnGfz6sY{l7XX!H=GC;YIKC_Xq
z&dLf}^wc_terrSz8$;j9mYRFD3+_6@<*bg;tdkdL?v6}w?=xIZM9IBRHrLz(Ou!1m
z<-HwpS7;ZLS&uQ@bRR+LM11`!Pz#MHACOaYp;WhVMf}+X;4Uy+KBOmifo!Iu*)R&+
zYYmr6JaVt~xM!PzJI!!85R*GiHr2Y_%7Z&mW<3HYY)(kYo#=5Va-n&-;d1pr?&XH7
zUWn#gfUZOEv}sko2GzMhlCH|vn*tw4oUbYct~L!?@`a$GP7LQ0*gAZnXsDA!Ao0n>
zDOYu6HHyh4z#EDoJk7Cp9@;2=i_~AV{SwXtt+XPH_2@#E1FVW5&H(uWP_Gb##V5LT
ze!<oOAcI6UZGC2J;V>F}<5OHE*b+j`0m{zBKn9Rt3^xIp3&^E>h?cj2+6Yib2fsD;
zr0_6w<LW0bu_GhsCvW9F1NmJ5buhz|wEv;wA02!NviksBf}r{R;m6`(AupB@cG6vl
zC4=Xu>+#&Q$nxx~a|k%u=e^jjRrULEa~9BwMX?-nOL1)nBuYs4a7}cj>g{!xq51Jw
zv|eZWj}<gM_c-2OSLO|Mx!64v=1q3yy>_{*0cGD@7q5>_*sWEb!rk;+?Ba{jd%AV9
zu}l;3Pu2pjTkZ}j>bKj)U%eGU_3~*e{vCQtceP^2FTM%*J^2)kpP38%-g1+HcXtcf
z(MAs8PvHUlF)zi-Wk3@~lGdO#hKwp#v3|)a%@g=%RpA6fI8_$2R=HI=XX9U@$_7#e
zRicIX*RINi1MzP`xQLU&@F&PyE1b;Q9UjpgIwC@Qkx%ibumkMJ`8L1kdpY#G!gyr!
zN3n+gMkYGxsCTi(5&9~ef!I!rHH*?u*BMX`L~}(XoQ<epv0_E!IwR(QxIhsFP6BN)
z)<O}roIg<oV=Wa?<h+E27i*=6VrLD!inUfmJLg1w5bYGv&6!*aM0-W_aef~IqJtua
zIPIo^=#>2{{2bwQx)(&3%s)X~;Y=i_oAP?9vl>Z_byvhp=dY0<dL*qw66QGLt^?64
zoyEJr=~e*ZqSOH(Zg76>4WhRzQK4>hP9f7{eN)pw-0C!$1!8D2JD#OZFD83<PChuR
zowKPRE-qIc#5!jSsz&S*<<1so8G>S$s%Ki;ohk4zc3G?^a{Xy%|3(laly7^TH&KqU
zQ7+HQ?icahSScn&$_;^BkGjnG!jx*~o1@UM{1XudS7arjS5;YT2>b?|YCYgnBpadC
zzK27R0$@t8g(sLHA}rcM2ACHl#($WLIxsSg%_@Ebt|#YbTn`*gBlC7lh2|i0Q;O`=
ztDq8@i$4umA(jHM{68XcFX%$j7siXwa8k=<j-tKWF9x2MiF_0B*KY-$uZG6>p~|SW
z<<swjLi{9#)kNj=&BQC?xIm(2`V+)^EC60t<8#rP6GaNIhzcT-9Fy`?(Xw5l?;9YU
zU#mi<f7&0=70x3|K@3RQ10vxR_QBtQib!{oD}or5asZr6XF&|a;FK>x<T}rc1~DZ0
zG>8J{lMx_>Dx#KCZYPLgN~g#<R}I8)Wvz+x{b~>wE25cWmj`i)B8r_QDAB~FifG~7
zIswFGifH9b9tmQEBHD=fOSgd<X){H2+a+$7(Mjkd-OteW5_d`!C0+^uW@3q^9Cs}o
zOe~eDAL7639vcX1nN(>=xK$>Bx=Sj*bKO0tM~UTHvcTPp*->JJwo=O-$n0IIsk-jN
z=pPbzI6<35ZnY~x-L0u&QGdfqkgKKr0evh^JZ?pK<<ot56M~<xjF0c26(^q5l;e&<
z!6$ZF$`98qeg@Q2_y8q6cRza$e|Kpr*L`s}sHZIzbAdaNyk|63%U%5}sNI?>!q-nI
z`mAMNgV^iF6aRLi&BO3x7=u4^j2{m@59)JGIqvl(puW(QE9xJjBVXbU2lP}In|{eT
zpy84SP-(*DFK35&CyLYxFS-M>i}02>>QZ<c>Ov^I8Z|l`?u70%5<Y<X>xOsCL&q8J
zj0P18e}iU{6h3+xDsDLQMzo^vN)$y(c;Fn=`tV51?GoX4I-$*mqiE3S;V$Jc_=N|d
zfHK3|&{1cFYv6BoID#ge6K;}*3K_l)qg%Ofd?R1hmj(HJ5r1GRl;_%=;B?Dc>GOw2
z;NRPKA?$k9#RzBNK@c~@nJU-$Z4ZbW6YY_>xbxu)AZ}8fPr^z27{tP)!6=YirzX;o
zezW2fh<Mc~s9S7~!a9p~Edv@JSch4Zi^eU(R~Iphj*ev(6_1AtB0dn_r@vrd4$+>S
zCyo>8A7yR@-ivsA5u!=|BzHFgsu7RJP-GcxGTCn9^N6?4WVMeUM}cPy%4GG5pJe!~
zOcrsRFM7?)*CX!@@FTNQ9li@E_YYXSDB>`IS=~e7CN5megq{d5#a|h2iOOJwrvrC%
zPuK|(s>@6j5e|M4boL?=L1<IHA(e)*hs~myhf!D}tX_{AF7tZSR->C5!QbVBl-$vd
zlBeL04D*Da6+Vvqu|>V(gK&T{ySY^bIa(7>S+Xy%qU`&HJ9i}F!Ltjx<GK%_OUiC-
z<#Y#?aOYq+&TgxzT=$10Q0=YMi@+<WIePL;k=;>Sspa;7$Jw2&2>mT`FQ^L&3o%j+
zMJ`>d_blpTQTDyot)2%Zo(B)CgY-I0xo*LWpdPSX=4V3N-KZ_)x_yz{>_@B=W><kb
zp42w099}CgYKh#MFsz2KYR6a}cah|u3W@oUwx8gu=$soXAv>OQ>!7n0PG=H3qb)$V
z&eMHBJmnq$BT+PN4Ay&LjxM=QYc{{9Ra(l6-1RieKh<u25ZrUbKF9)Q!AeB^i4Z#v
zh8mt2mGvVi5y=PIo3R<X0nk>1hUy};`^m$g!>txWH2fl}qYO{JltuUmTB#krwktdi
zSI=Pke;Ab`99~A7;fl-QefVcg@}lAUlG*;}tzi2P-H6H>?zEQef7&><|7{c5{+~}_
z`+ot}(!$3J&=|sB^+fFszciKY|KzP~|NO*rwy0;LvL@`;@f~|qnz3j-_8V4&gs903
zI$)_B!YpnL$|`=o1Dq{P&jdeG4u2Z3e$@kFAp?cAAAdyLx(R6A#03;;Lm^g?!M;$b
zWb4+m5ZdR;u~*|pfy?k_p}TSGD3v3-Xx;uUaGUXqgB>*U*P3|Yk?wdZxacZ#tyWJ%
zqz!G0HninBH}6H{opTwUK;6K<3OQ&V#a6d!&~VOTptHKCyVP(Vg7a374EpaDjh;D2
zSQn}zMhPdp1)N^xYBQ3e(Ick{>mt>Z3Y=HS>8*%bMQCJJAB7i*+~;8?!g!m`pRJ4A
znm7ms!iRezvM^t}AjA7cLOpylwiRvBG=c61r7YyDb0}Ac9#e$hMW75nkH0wS_$&S;
z<lC=+?bOCtCErnPMmSlNdN+&qU8f_7_uS!7k2_7+6TPpha*8t!9g_T)n)9cM3g172
zTO0E5@3f{qDEUbaapBzC5n`Vz(|etf_k%d1ti2{G(z6(<oa)7rM1_lCu}FS47D3MC
zsHpOD)l&5%V)=z4Ty6a;MI@Z_bo@kw<(upLM2}7?qQI#^$G=tt8aJb<@H^Z;BTw-q
z%}ysK<vYa|&S1)ZuL##!Pb;Stk#N*W;xie{q+In>TAo!gpA;2DCwlu+J+uesQX2R<
zy@buwnS-p5zbL|W9wX;m<PLBWPC8BhrV2IJDWM0yo1$Mwu|HML)^Zlpz<EW~cHUtM
z|D%XHqTVgAP#|xRGZ3r$GODt?QR+n096K2g$Zyh=>+&tka-pU$Poc$|rLvMMa_Mv3
zglu42_tTEbiy~V!1mPyr$%b|&`y3bjF33KzhMkIOxaQTg)7gOu_if~gtZnCzRp91O
zuh7=j*L{)+s%xu+7r6zfezLyi6}zX&Yh;Hqq1Vo>{t~Drb_V0?hFXr&iOhjpY1gAC
z%f{O6G<t_3h+6z3B6mYBQ=(6{t`AK{z!<XBAJzihS=5JT)_5}bM?_TnAv^OitUatX
zVRjpLlCS<KMJ>seoH+wY3FV|5fWi|L>dMCaF0HFEukTJ|XDBb_V*I1b`(<QA=1bRN
z;<F=8=T4HvC5mW1ZZjTo%lIYuM~<5Sr!6?jdPC86MmMCnchyXUN4QvSUcV}OU77MG
zCQ!7%HzjIM=#FU4cN3de6Vu)hvN^D+KMh6Zg~;XHE7cC=9P-o>hmtxGnSAYX?)}Qk
z)n#-wKW$MyI``@_?MW~RsvEb6iO4n-N!kDyNPhy;ZiF261(-u7hRaZOGak?2i#`cT
z*CHk&2Wa2}jGyTb%Jgicke~&Ki3q2IX=gEiNYB$QG^YRu598jF9^kc+%K!d8kC=$i
zhvJnNAp5%5$=8s{(L*WfKNDCYnM+X28M`v>g#bZYS2;uy$1mtZD<mR4uH$*ums0Vh
zm1hEb$W+Gn6?rNZDhCv){L(IcNn5)b!`1^j!4dS+fdpr!($<EIDhMWMXNZZ&9_VJC
zTLb<*D!HvazR3Kv02Y7#{}_7@Fe!@deYmQ-r+a$B?re_0EOE)pl7p~F5CoB&5s)Mb
zNE9V3pd>M|3W&H0Dk>@>1{5;_Vni_qyb9(l>Qym+?^{)~JL|po_y6X3&P<)EQ>W^j
zI&~^^bxj(lwL_|7c`J2prJ|k1*ebISX@@#ND~<HV^*W|iX+~uJhUG%uO)+ZVRwgM`
zsPQuG<WMxxVX4v{W15<gbeM%6V83j+FEff?!s8^QtWF8=QSPUVX4e#H<6+F%Q!UAS
zY4Gh<Ht4K=Xou?BSxgWf=a`uf<Y1{VCyhO`8Oe1uE=RY=8~lpPi2uSxsh$bK<2*65
zWpgYwQlpfAF3Bm8=yqRyT<P8*N}rs`o|Sj4lIxZPMfGlg#aX1t+<6o74ojmX2S~&r
z-cnN&YEKM4bpl40byjRIkhER!>-I~Q@=afpT4`S?CvD$o)c>TdinBA3rd(Qw=9i*T
znp)9pMk$tQTcGe-ZME5TVYF%t#Y%;gBxw(#HSH^<a%Uq+l}4?0!<R_AhD__|mY&Zv
zr5t{VvMpG7-~#f?89fB9(D;nBzcEG1e#Dj>$aYlmW2vIBALNowKv|V6#FRDE3;o9l
zG-7h-eid%RYSo!IcN!^&D5B%Y<^;x3+2P@^aW~*`ZIjCDNW6fW0fsrr@B(3GPE~(V
z5zu3r#~DIlAq#%X(FIqqVDfp(Y0QF~70Y*UsR?3(@u8r5*GVOb2o^EdQO7I=vs<Hn
z?>Wv*Nb~LGQ?M#yVbjGgj;ccHxd{16skO<LbZS~+<AM%^?@iz_QTREGUhXjU$>wgC
zdd0?Rp~4eU&<>}60pmIM+2M?&5v5WocRIP$N$Natm!qZ;VQOcmsRA{!(@9a4@Hpe}
zI1?%y4u<l4Q`|wYt;4A_Vv6VuLlbjxc*`kOjo@OKJ>Tg;-xK2Bt<H8bR6LK$&358!
z`_LI+H`{5Y!mR5YCyz|SoN&!Ewc?Syc}^blhB=v==fqXGQ)8SAcf997ui9^cqegq-
zae7tz3TX5lBq_b&RrX&Y_TzRsd;GB-SWM#61Ihfz$`vg!XP7y07AVR%e@Mmt=Udor
z&slg8bB(8a2%N+@2|#={&i*}Nr_fu}1)dGaq1;c{by%<2z=t#LY{>AWoyoZOfWOVS
zn<4v?c1y;65BwX(v0e7rDQuVgU-6Uykj|Csemjlz+6a6x<G6m^Z`Wm9=5M%F7;$)c
z<AAM9W(#8G1JoU{2W(|LxBZTDQGoO{u+RgxYRhx~#M{<@^ewQP19k!1cNy@-fb3sx
z!!D_9aqVeWtY4ab5;RZS>GU)Qk-nb!I3YV^=dMOA_WWguHGuS=!2cOL`!d9>{Tq+;
z0qI;{KWqEz5!V$<fck)JF2SC&V|2>AOf&r<<a=Jv!yZTat$<U@n&7dwQ~LZMA-Wf0
zIB9Sn`iPT5-X+*Nt_?_cQHPMD=7dXtU%<HL;2m~?oJwIwO<WDgz725^M=hiAe`iZ$
z8^PrFdvxQw;v|a5cKot@wC%@8c?enV1q9v(@*x865qS}aW7*;_BKv^Ef#d@M4*=<k
zKszG01DS}x7(f;|XPiI`q%8OUKwv4N7Xths#-i&H*a(Q#D#JW{x2_NR7Hng)9eE}X
z_34F_`$2LqAkY!WegqyP(j3Tf1U>*{F-wC%h>12eY&gQAT)b??Uok6Hh|j=~hX~ZA
zhfc*_oXNIlnDn+tPk{mw>3A~}M_l+d3h!t}-@8w<$s<|hevL5Cf2T*mcN@m#F#cJZ
zaiHRIb?+z6k}qGZE-_o0Yu*9Px>vL0pt?;{I~6BMG&F!~-FQ_3uMcI!NLr+@<0c0$
zPuXiKUXF5yn3}TOPZQ;C(B-Q4Tfs+_K3KLA(Ful{!?1mcLB;|}#WWMLxfSb?wGPBF
zX&kb8=rnT*V(k(~X&5!bAMCP*I2Hdab^Gq4S}5{6OXmqxoLIycRjtQ#64~8SgWcOz
z>;?rYPJ&on7NPipKlm#C(1eIKG)z?GI~#<Bz4(vHPfaQ<h`t2DOyy55PE;Nj3jDW1
zQf5D1UDN7(WmUEOANfS-B{0dAwa~Nrp>y|gY;Kpa8^m5M!`{dvnk%kd02xv%QLVtQ
zNcjrp`~~g%8z8?R@Dq{aKr9=MR>AWoHz#thYkB^cwP-sw#(v!7;~eMPM836bs;`n#
zf~Yhk#j6cW`6(%-ZX#tp)qj;~UZwu+Np0OvlO=2?<&a5ZV^^y%zBHkFSfo-tRH@n*
z?acNSN>i=x(3)~Y#z5ti4}rVVR0?zv0VqxJKa_HbP*V*Ms0YB)np1?h*>J#E2oA5=
z!B;V+1m+^83usE1X$p{K2+RXykt(AcF?PkVa(^8H_aXXDfPJT7#i@RCaDg;9FNaqu
zO?)H7_ezTY%*1n5F{vt^?|&>st|_JqQ!k5jD&Gfhm1J?Zn@sAyHQ!#pAfYqpiaJVp
z;fWgNseBu*cQ3mjL8#q^fG&Eq7NYf?njB|_AmuSTIKCNl@d#4Bfqbt40=s~0cW}lP
z5V#r0839{#2Lv_&*^EFrk##_dT^k#aK$Zg8i@=RU<^bvA*`fs?Fd4}62s}ZAuSXUI
zVbVadSONbKVj{jRzD8`ut3d3Ey-PCQSAl&?{4WvMj^xdNjGtBPvrBxdjSwFr=5>Id
z0;GS)77YOz`9N&k1L-$JpeSsM?-A>l0{I!p4*;J>pPEKc89>JAivH~-8N*fJ*piI1
zRbb!Jj9DtMygXx(PAbn>tpX>O_*WzF1+u>k@NWcid(;-=07LEsvTc`EaqRt0n6Mgs
zOL05IonQsq)P=sYIty_$1=sfh0(@FiHx<?k2>gjW(-9a?<OCTYa4jH<`7??@%K<#2
zxeA~z?Gbnd=}!av?m(Ov?H<S(K(Y|XATkO_9Rz9t8gjHf>#l?$Btoc|`s|ecfFe|q
zBX47nHv*`Uw><)_i8M#b=?L@zs6jVnx#7k^SGkUTYUpy|?cKKZQRjz^9=2i*JPX`)
z$5F3Uy-hE3nqk1MaIH>PHwWnvE9nZ$6NYdR7(JTIsQSoh^e;n0#}wW8uohH#sfNZA
zjYRGc1Wu|et`B9M2U)>5MjYQx9P<z<*Ch2vWH2Mgj)nix!-n3A=6?h2v=vh~|2`n+
zLPJ9V{u4l6L|`wG=Yh1wqxB4c|0a;P5V)7fhd_2_*kTL7{}#wE2z(ES#W6+yX=kF%
z(lM`EVELccLmw<fN}wCQa`1oCX@J0DARQ5CP2_walMy(J$Rr@;2rMEp0?1|r))VOm
z<T(Tm0J6y5UxS#hfPDh+uK^Ox0v*8L3ZxAJEdUvJ0f9-D`wt;705PWnVs3Ycc(<;u
z6s^E-wPP(ubpy?jG7%)>0f8bQvk*9!NEVP42rL8O?rW2qn`B#&5w_yn_2+7(3;S%7
z%>A_|RI(nhKn5S0vLPv1HS%s{kZij_-aJtO6yqPphqf?s(_y9Pj(XyWRT(TcuoNj*
zq9&IEist|cOu^S?V4DD0B=s*v%x%DK2KXC+JdVIa0B~j}d(uo4;h{hdnRbygJJ#DE
zdJ~{J)~5)3NQ52hR|I|mWHF2GU9TE8RlRGu62{|o^1%}rA@oQYc_5+hiO3qX?Gr5R
zSMUtr#D)z}BV`%_sYH$=r4WI9fQWG^-J*)a9B|06{Z);S`6yBvf~Gz*y$qxS0xgIf
z0I~vs1%NDO@jpY%eqav*{2zf#&9TLBK*pay?26q>d>?jl7h-M##JHQWqN>!5VDX6K
z$5`qINO=z=uLA<F0<m*#@hg!-K-K~&2Lv7g@)!aS0J4}r<15luY+IJ`iwZoj#J5rO
zQKY{E$VgT7_<V`I(G=SO78Gx&U6Q&h#kV^dGow3D_YC8u&qbVitKn7OalJPw`-qy^
zhy63V%Es3=gncwA+m$u5&G<jE{hgHUnVQ*_{4-lsWm(?D2enZYLF^Aq#wA$8+>$gU
zu6AnctER)4d@o<DCf}T@fYH`Hnh`y8Z!}PKrhV0!g7`n>lKR1thH#<Gmy&0SuQ~NA
ztIi?2sQEpnnri)^x+&HVCl|RWH0HL&8v@2>W4jy8`?3}KjOI~-luyu}9{~dOfqaL+
zH$-^)?pFkU0c0_Y-vu#Vo-HK6?*pU(0(Ag*^_vdhNf61;tx$0>+$sCL>hHzu?^#S!
z{k#nHUCDs`ygvec6a)K9<7v3hdpZ~>Z==M)G7r;QVN2s*NHHTpq5Y9rC|znOsHI(+
z!i+K{<=Ww?<==mqBx5n8rjlEXiy((D4F`Pz+Q^Ik7YC@BQ%HODL)9(Y3|mRnE&J^M
zV~Wnw%V8V6_EvM4RfEGh|35g)1Bd&QINWJC==$$l^#7{=WMd%P&@e}J-o%<2O#l(0
zJWdK>Xg031##_osw*Nz-y23t|G|soc2wts+lmAnPW~pN5CQZW!*T}p1LS27hpKoZm
zLY=8;%yKy8%B1Yo#fs`;69SoOzpxjW3Dt|3*uAKkVI{(qMfL8668LQhyx9<Q8S-Tf
zVlG44m}v!B6*g6JYgWG9EXlW!FBEtT{Kl9ZU!`G`S2;N7+E1BiK98BH8R3;RHCEy6
zdDRa1;|l&lj1&BY`aY)#-eWp|4f9=-$cZ_mh(4B-Vh=TQIco48O{Vt<u#aPs*a42}
zB-4dH|K~)_KAA)t#rmgO<43BOO-heO-FBm-MQ|gXL+zr7l)sW}34By8OjLr^h5B~w
zDlI0OPc&RyhNqB5Hdz&dM^c~9ZTA{3%q}a#9w7Y8IQp8{{%&~P(5xBp4>*G{^S49U
z%|Z7%QqBX-G(dEPAyL!czmt(orl+eE&(vHY^OKP?j5Vs1FOm>lg<A|uDMq6T(;dGZ
zs!+@-h=!X{;Uh-9R#iyJgs(4b|6Epg2dI{zs!J(Wbb?tV^Qla9b`oM=ZIB~K*^Z1<
zFyAagx8BTa=|3?F<RhXtbh>X3H0QI`gz?zT+B3lg&_Zpq=gEgMKj;j+r+BCp90)I#
zl$hEgsWjO^*rSsYoBcEK{G`Ob|4h8nsEf8eNhdm-e+qk(NqHUJa<R#VvDr>2m{0UJ
zCUPi&cbNtxuX_?H=vg?)l$7#ZA_c>cu=gjWe3VE*uf(w*lftKpzv~pWoAHuy#?(@N
zOQi@irx+^BgpJdaszF(aHi={<P_9X#K>c+JI)tzrn0N{_HIah?MaxXb;`6&`y(cx}
zNvDFp*N0y`2;rR@#TTCn6mG{pyj*STXHHoqSkv-Z1!7A1up-25`qlPn+@=q4dwz{w
zo7?jtZk?~OJ8<hf#I5kPwtC7K;#T=uyO4}h=g*ui*5P0TN)7*oyqDSPU{EUG54~JJ
zS`hl|M;S_4VMn>ao-i*w6;&Tuxe>f_+($`KL|&J{#Mc0F!YZyA<8A_e10c==NGt3P
z2NCxW@cRKN-x!PKYytL;cio1;K-DX6qVYN~Sz@aP+X*vAyQz<?%x#5<EKgP~vFoy!
z!(jIupd*V}Vyla><j~<aprZ~=^pUC%riPkLx$Ot;2FY>cJPPn10`dz2KLW6EdBbC<
z*E~DA+_0#Z$XIz3%Fm(N=h<!ebSa#VRR<tFfGi92lai*u>j8Sq0daU*5fkb&BmNN3
zFr-;Uw<IAwZ%IOoN?;H?_}6#=6w+SX!)`-`3&qt(R&v8jRj9pP$_fo(!HEiW)D^lF
z_(nh;4XKkpH1i$s&lopdbk;4Oi9`4iK#$^5Q|*qX+NF=5i3uVKO7~aevI1K@*z5w*
zHh}bVP`xoY!Gppl03Qud3&Rekk@3e#$Ue?ae++!p!f-K276R15a6JN-6KP(?ZE{;|
z1!OUcUKkEGZ1lo#s54KL)`#pPx%$2^;rYaepqJBaM=iY{0Ehd?l1uLc2s}lEOYb8H
zya<SHG&yIm8;a-=qgQ%~=-<gmjv=JuPAM`7PcP7;qTl10ERCgyrTgn2Z4&*pht-b#
zRX;K9VU<-qG3{Xu;uFC-e6omq<M?PX#K(ttEszNzJ~r%WHB;d&Js3WPjv@3p%&wP}
z&muziqtISfOCIo0kF8JBXHdg@+<Kao!bhy(GeCcum8-(<zzdva)m7m)R9KyH4D+Gf
zX;ztvKY~8r$4Zx&VuoK-;kXL(fnQ%sJ@5<D%k;Gx(aVH+=IwM#dy}Q0>1Tx>z&bNL
zUxjm2_yv^J--__eO}GOLrN5P<!UM7NIm3$ZcuAO#jt5u~9#aYP(eas9gojy_R~o1f
zYN`i?we3;iZs0fDQpd%@gTZgMl|?rYu0&mCTgoMb)uUxAlMjYd=S`U==2{t)LwUb>
zmOf}HJc{7)G+N=AkQLYM<&sEptrVgrnp<rd5u)arTc=V(A)ah&ZVhCKigQb?Ej-IF
z(e)IC7o#GwmSM)(x?)x<iCHbfYzhjgmBg%06|=Zu*7y)e4(Njz>$mH1qamz?A6fZq
zC%8fy(E(X!7Gi#cU4I71S%VrMkR`OA7KPZ-0OU}j1F|3Uj0HZDag^+U97P+N3w#zJ
zn~%1imfm5|VE}(}S#}UxFHg%HMqp=SeD>4Zi8tao3amRoa1C1fkW>%jF#$%z4`6#p
zW>R6886)CfXs1K6mX6r`<gz?A$}>_K+G-TKk_DH5=vf>ah9FMGN)Sy4no9I)Bwq<o
z54)e0>5RJz_)UzPDxQ<UPSDA}fV~3fRU3@nl`U@7>gvTO%(>R#+caAGC;Y^7IER<V
zp%B;VaafAfvPBS}yjF>!#OBgKyy7nXg`iems|X}@0Lp8%MxZH?=4F^3A}|e*#Vp!u
zjWBGC*YYbqe`1+iPja7FM4vX5<2gM0TZ3>ctVCJHucQ<h4vAd_y;3Zj?|=iT_^LP8
zrt^R`?9?5bLWYs73W1~gye_@Y9U#RpP|ZU<=dj{^fh<K}F~FY)WE}!)0Vxd(qia%G
z&M>UsP<LG|t};Uc)owTwITA{iRUxd()#s?R?q`W>L3J&7ZUh8)h09I^cCe7)rjP}2
zz?|}`T`A5}RRLH%`Sz1@60(kTEB<(b_b`ZtA7Z2)al39!+|y`6jZC?3Njs$@%Js^y
zMTcUZV7b2|%R30XMdUjmA0coY;HQJ^I|RN02-`DN;$~TQaACF7Ox(Bcsj3PdHNiSj
zKQ-x_VzT5R%T$xa?61{L{Bec7#}M&A=52;ZEn|KAa5djR#Sx`u^N(SwWW5WQFkWux
zzo7E}=LWw0hA|f&2>qz45MkFh8loB1MJI+(X3e;{+LRJajHMg;JeI5peMeiH>}r|R
z#UNao+6mQ@@zffOcg#z)8!uND(MwFWNoeZm+9ZbdrX+@&H4mya<z5q?uzmeE1~~tt
znwhq*Zn)9ah8w4&R<G#sanxu|s{c+Eg_9nExE0!c%Bh_bV{wIySB=FLvXvTU=^iU&
zAG$~7@GInSy2bFd@aEUZ2v1|e7j4jP4(@)V_Ec(!+9=ie8#N$o(q2ssHP`A3!$jl#
z@Q|14YLu9%MV1l-)vJ64_3Ai&A_y9+hY`wQ9mk&yq^&}R;zHHSWG-oBZCm^eGtE0&
zT&`n$#CQPV%}c>7F^o}ksxC#`qWi~tRiz9#1!D!zZcUX9DSQs{r2=vuiZEAuDxn+j
z_KZ6My-k(<d0KWF@bQ57yh*bVH<o;^0=@<SH$F+6Bh{GyDDZm#*|R6Y9cndM6=h@2
zGc|!<Q=d1wU=pd0cuDmN>KDlK8Nj~45b`kZ4iK^LCANBmeVIvp7^(YADl9AIdJ}Kf
z5!@vdc1fa4G~ka_#PnYkWy0=hQVZC;kVbcMVGl6zzoCe_Dqd~(Ofu1%5nWbAPG%Rt
znBOz0v~1yV!c+L%<KS6pjP6?G&=bH?*{I6sN@WM?JIpyy8>#0&hu^{r7TT!9*tfTU
zM`P)3Ge_6Zoz+KH7Ij5Cau(lMHs|c}cj)eWK*O`juzO(0WmU-J6HTT27pfAN1*-aW
zY*7~=qE8xnE=GDjn}k3oHkM@Yf^W>AhO$}IKGP@PH%w(E7g_Q1&&FSt%TAFH9+`k^
zGeCA6I<RGy>RI+c^EiL2T75WD9oau0WYYoZe0w1v)e8$(0AIy8zQhoawRsTqKHzr(
z?0=ckd2IA$D51(eeEUn|Lxufa64AeF68&C96gGl#;hzQxz{zZnVDF@<N#wED7CKRz
zp@ix5F^N1XJKiMvm9Pcu$5fqJz!nU*5JLjDSB^{KwxkBP9wKFpNv!GPP8c62M3WDo
zMJt}oX%jcaitvX!arLTsr*rTEyFUF``1)+9dXTv(gkxhJuH_L^%xRJs*Y<RzzmsX#
zLdzFTo;M#z;}?)nG;i)Cggdc~itxUV{Z4NdgsY?MqndS-MO%^ept{C{)>SlnJ{TWt
zc@Vkt``*N~&diek>s<`@W%w-rNrVp>2FrS&Qxs-$4`FeFfmhg)o=r62qkb<(C2p=t
z%xR<($D(t4>6x5o@2N^mFV>0s!Ox3kvmUP^F@Gnzkr%B;V$pgTMgpfJ)3`p&H&;`r
zI-9F0sF!?mH3jP|S`WjCTqmD2oJQ$9`SK9ynxJDl`Enzwtn=hcormvV1R7A2oCxLr
zdnQrIw<GdfJ*L7($PbzgG*ZiD(fXZIRH{CU--IkhyaB_lFG-fau|AVj_Eus%A7dRe
zp5+!K^CK(iV*;&_^bY#N%K(1~5HF6-0q|D?X@EcuAVv-o%z^=%fM@c^a->~?!CxTx
z1CYgp2ISI!xl`tu95pTS!lcoB39Dj<3?04h05D}=L`q8Cq<9mDYX$P4K|pV6xgVhS
zdy~*`0I@#`iG&Q^+#Fs>T|Y4udgiCZY?6f>jX(Xn6t2F0!nM>Dh_2(+z8p#mdU^bj
zZt7tCSb=irw}HNB!sq1@PP4r8z{Ay-OZdD*!nv-1Q4NF0m5p4DmIL#@8-dDn%9zVA
z-`{r&GR8B^YaP5-a(W;PCiB&gdZj;j0O8``8WO#Rt`f{uS7P{l$u?M!-G!9Wx)ZbD
z;7EiceJ6t4&*}pck&`AMQ%>+X#N%}>*p8pCUX}^UAD#eGs8V8*i($V`3Zg`=j4uXK
zq%IhZ%aR2^>M5kYi0ntN%a#ouC+k;Gplqa4gggUTWi!Rikpn>`TPehqR}pEakf8jF
zWStcfl5Y~}su)D%2qHZc5|j5cPj5w*DI)J9sf8TGxvegAh$-}Uk_}a4jyy;P!xiGn
zjFvz~C?u$KAV(@BBu`<UQ3{F3&CD}eAt||&;HSpC0S(0DF%pecrDV$YiHuW7uKb2M
z&QduFWhWxz6;fO7BH09m#N`koXDg(x+(KlMLh8%i%rjYWYbe$GYv(AWiHI}>U2Qq5
z8%$HnIa{R&E!tegz|o@3Q;4fYo3D_d7Hxq-LRz#76cSOQEu?5ETC@ul<8&?BMGDE*
zqAgN6^0jD-6;dc7o7T}TmM>?`Xex3=upHckq(_z)D+WQ`gqJ8JqMLoCLSiECJV+fX
zqjhct4;z^I+D<m<_l`v}?k^zrAPEjKI%6g>Sn<eVOrV(c%|wb#EFb61%8*_=!hZ*0
z%uhAaMZtq$*PvkBBplXn%$H9hc=;sL0e4mRymlKgGwRQbEfSG7a-cddwFPmZl|s5+
zOjFSrhxc<Lm)dADPW>Q-Pa+j7m8|NN^u_Ki(o<Gp_Jg@HOSy{l42UL2pn&LbnVyOk
zC*cE$B%7EfYI<LNv{!@Z=ZI<6^+M>mi3~9Nwx`e$@Y#Y+$d9b-f^n*_b~ku4hO&z=
zvjG(HK~k@SpeO}a3}}A-0^Cg2ROWRD*#tz41*FoXn@fK?2wUJ!8(QeAg;yYH4j@V!
zZ6U+7p2NVO0<`>fFq|29L@$B>t)x%)60VCiFChAwiYs7T1K>rBy9;HM%KYBQQwF>p
z<E}(pYnjRlUI=^^AhUfGC;p9mPR0<<R6}3Dm0J^#a1SW%0$4+V97JG0kv>3<An+nU
zWRZcpUn@u^0udC!PiL9h4nw$N_9@6eWPUQU>)|*9KrxFV5C({>eyHwd!>lT>S@RM-
zWjKU%YYx8hL7vO}(}1)<pgxgtKt>@j0uU$%at;EMiChL`H3BP%Tnl6a0#_2b1;}#<
zJPpX&10+$tn+Vi0<%eXjFBXfn4uQzx*C)vG5x{yC$PWmd00iC#BI?`XHy|a{PJ)l0
z2p~><<R3w$nI@nv1}M$6MW8jH7S$|t1MN?!q&6BTUHa=#4VAMy2v14mJPU!bM40m&
z1f~KsgBJ{gKnpO)k?K83#b6;w<}nW&<!S`3Btix|5V#E>T2Y3N5-r>j3~(c`uX67}
z`u)tn+)pC#I1%Q44uNL?@a>nFtdAht!E~Y=-`Hu{y$psC``(xyos>=#B1nH6{04c0
z9QI15z`UicyR_U5?bc?`Yr~#bn|-ARdrE87(`-48J*~}*spkk8kcFg9<=BE52B}gx
zAbU~`$f@+JL8<*}kYioSTyzlmOI_xYU*gMSLGqWuEXq?u$H@$`sYCw1Dej`}Mc7!7
z-@D6=B!x)lM^<+Av4$dt@0*dqdr-&gfV682B|T%iN`pusP=H>WwVzuT3=U;6TVlR+
zy6$4&dkuP5d}1y(UQ5}Paavsb0lwKR>e+1OsfDOiKoJ)V&$;wrLx7&iC|r^7T$nL4
zfSnD<=8*Dy5K}F2Ezm0%Mb*5ZG_w!rUO>)eQRvmo-2(T(9Ub=KSQuJ65&s?t-UV3O
zfP8_#CxBQVL(TEUi00r)U|F~Nut5s(mLZT2gWYGrDPgeNj(F^2h+n{=F5?5c5z`zo
z4FG{hfec09bRvA2Z5;wj0QFu0@^^yaOUU?S(E1i}FCy_-fb}7ePZ0P3P?rP&-X!oh
zu-^fJ0IHtZ2-OAzVn7-pP>)CfklqONB+?MbKm-N=a@aExWx5}M<z~MDg`n>o2ZB)m
z)i>rMFpCKL#-#|X0*HFdf7U+Tu-3Q8f4ishZb9m1lCxjkioh*InD-t8?gpq&hna}^
z#^kRK=tNw+5ZcVjl!NGDWO<0$!V`>&I5s|lWOlj>@Qoc2bW2$(!W#_*$KkIv1=D!s
zpA@Ye{1ZZ{gR_Lp#+QrIZZJ7GsD^Jh2nXvlC|DOD!cUoa4*kVCUiJ}biR!Do*`_lv
z?-@yXJ0<m)^GrP5h<XhntyfYPiY-VYWzkh+BIN}9fV@Y|3?!{Z_wIX&*<(V#UW>Oe
zLmX<<lc0Ok7_5T{>V2yFh?E@WzFOxlg-UhqtCbtlzTs-+h(er7Z_sl>&crw5a$F9r
zLvUjOGln?v-lW`7h!gTn%B6@PR}U#8S;`tU50Y$MUCNr4tfMYvO;>s#Pt60@^k-P4
zaM^4}v&#{-*-t&Lo9$@5^O)LkC$@*I#xgOfv+0Pv@wtr5I0ynSayi3w=oIorC(axv
z0<bT1Z#}(=Tipu#MQRl{!<b&#0d2LHq_7Cg1O?s{)T_93y^2fMtGIN%ic8n4xOBaW
z^LTY&Kwlkrs$S7~ygD$@M6InnuI>WO@-6}6biKOso>_~i<^??v)p#<#ZUZzSCPj~+
ze>Vasf=j-p40~pow~%38x8~(#Qaq2>t$F#GRE)>#*1Q6BEv?6;U{EgwQDa`~hJv{w
z^mq}QUzq+h!@P*iFG_!f;i6K68>Rn?;nSBR+)Rgg5u0D4!#TAPZlm)$Pa)hP(?%;d
zZh=hG5Ksc7;#M<%P($d`{iPmghNO)^l5lxJn?E##8DcIkX!D0DB;Dl&ZT|3-RHS6O
zyr9h=k<tiAuKVyLAS0u#fyCXT6M&3TNU@u@2gqoZr^Mw2ZT=X=t&PhI+WfH!Y3K5S
zHh-K#I=H-`%|A;aom^hf=8soM7nc{b`4be<Rd~Fh&7WvfqS|Gb%V!{px}MF)^=z!9
zzMjp;^=!oS^=v+_XDa}vuV?ddJsTy^*R%P!o{b{t>)Cu<&qhjpJ)4i~*~mp-&*tNL
zHe&jEHXqlsky2mJ=3{w7tb-`HWg{wxmq|-ev)Z|-Rx29?ufinCPqR!7`yK_BZl$ql
zoZvVZlAocmK(N;eV3}50H*j-<#SMUES*pIl;QTj%Wm~GGm?-EEEAw+K`*oI-X*+kY
zq?72>e!x-c62a1^fVmp8f{XV7^EBoJ)0h_2m>ay5nD3|>27{AG8PZrJcrLN9#!&87
zqEW~0it=g)i=Cq^_jcxQqG?3%Vv;n~m?H`vC)(VxIXXA*A~0ZG??Cj*n-O%>J#UV>
z=gm>~ygBNgH)q!b^g?Iz+0cWd?s;?6J#UV>=gsK_p+nA>*x?R4>Yg_z^Aaps9Cgo|
zqwaZg)ID#Gy64SN_q;jko;OF`^X8~~-W+w$o1^Y|bJRU=j=JZ~QTMz#S=ezZ5FYP&
z3oWrfNA;T(hnD??%DcShEwsX?ZxHUP*MVFdp;SSa_q>HJiBZmo`xd-gXl3XNATgKs
zyoFYU9|n@^Hd+c~wMvN#kN3QV*4Vd$gVNCD)3GpeYQfnGXDzy&bT-0mSk9?M@V3qa
zry<&znoAAUEue-TfSd80y%nf{(;AM_cOKaWj!yci)X;fzQ5WYs7)(@n6VE`xHamm@
zdh$ZJ(A$|S5bnjWcPV5H9nHNO5xp7qcsX3SYbJe$$IIcu-80$gychN%+&6>f?frzt
z4^POZ0eTe-Ps*WDc-N3-W_CY``aA$h3NA!@MR0xP_h9e;jIYxsBRYf;#H#udek$-j
z>3Y+vMJ;SDQk8Z12NB`6@J-uN!*%o3&mdIfrqpoW#X{Vi8h#c1>6X;+M}vgeo*I5E
z1Jjw*@TBqZ->Kn_@XNQShPSoGVk0&DBUs&$8vguB{H<1M_|L642#^{+Ydan*r-qlJ
zR(Gd{zg~gk<*A|t@1bMyqaQ*ZM_ohbsB7q);TSk@wLbr*%%>E}6k76a^_1tVZ$aIF
z56V(-Ul<Y50F&Vq+!sdDpzs$UTS?n}SUmOb0_Wgzu^`V#AvaMt@1mJvK=>YngN5_X
z5obnjK`>r;!IZgTpkgq=eF|#E>p3y7o-9fh0^2?GSuiSOp~G~ME-$u|!y}9jx;s&r
z9HEeydl`|D3dwaZBH1XPHX3(dCgafxDR!SFGDaaK?zu$9Dx`y|;<z*_vdrCuS%*AJ
zRcwdw**jV`CG9Hdz<z^DwAE6}7QDL*DQl$GLxbs)FBEdE#v-EWVbnBb-x_?yWq_J$
z2?o|vD8*7CR?*^@P}N9r7l8Dj<x&j;NlN{xFVTvdLQSoSjJ=IHTJbiW-u8+_gyN&W
zKBm@Fc-u$>w~dhc22xd*mNEwNgfnH<6No2R)TzZ9T12sR3l=Hgql<=c+0O@vA}BL3
z^<52uEPEf=yr1s)uq8ke7ox&vlc)Sdq82i%38Dx|R78dUD5-dLQ3zKT?Lf>xQqjti
ztDMU!x0l&-kVr^kLsa<ButvORC$%y{Nh(NGt-vhau9Uh}CEZ&iNlTQ%+m%ANU5Sz&
zCV{E}F_FS+f<m|^h-&&mWu`iai7ei!6uvjZfmb6~N>dC8pLU+Y{lZiXs9zvPE&Eib
z$eM?VQtHo2-p(o;XjKb{EM7bmz9nNgq6xYp3<>{Q3fa3pYV)0vWKJSolyU<y&Y3EO
zzl!lncw!Aj>FH${-MINkd}obR(OPXjwpN>uDcl8&VHc2eFO!Y|kuu<BmMJsI^V6#6
ztP}M5A4RDuH*AP4`g&Dqk;UtN(o&<$RhUQ@eYsnh-XQuIa-F^f-Y(_lXc<%K6IHDn
zij?wx;QXWhb2W9HAl;Uz^V}_X#YcCh6EDMG;`5qRKUm&>8b#gLoJWf0Eb<uEZEpi&
zZaU+7GcH&RR}P3hun$M-Wft=^176Iyl`yj3WFvOY?!Zq0Wb8)VAJW}~LU7b;Sq85q
z`BSESg?xA=VrjogxG)fZZK!&%UGe$SG~T26mrQ4SPXL3#WI{jsw~QTvfOf@+rD@z<
z5ZZg*h4gCyY10vtN^SoE>}NoKwK3DglJV1rVnYxGW_(|WamdP{kF{~3KpI_Z(8@T0
zv~G=Y$si!R0;BvdN3?F_XynYZvTllCY`qByQ$R5ZAnaQV$;Ghy7m=)=P2st%gSU)v
zut}dL8HshRz0Z(N#5nbF6{)aaGx0q3_J@jB2LS97Cf-LpSN&j3Rq=cP->DlUJMg3s
zyh|kO6<tqqPCOjT{-qAg)FjArAwY9W?Ue+aIBwHH<!1tllBsM`$#$-ySc23=0DHRO
zF$VT}gRX{>O+@FKl)XrSD$X?Z%?AG$G@&|5Gn8#5qQeX|U2^n*LGG%DoIb6<@4*nq
zjyfM+g^dhto!eg2lJ$nJ`N1iL3}c;}WfNNBWvJsCKpPs&X4#odzXNzBAjYxoI+@L3
z`Xk_PF^(2{ooq&n&254WXh4jE)fO3L-sZp?1C+&9R$Htxwj1=IG#u$&0Wh{3q%yX{
zz#avp-UvItL8g<_nN4lc4UkG(zfs%z4Zt@tuFoPN@K=hIW<T)90Lr|#RhxHP8t&Kf
zT+>10M~C2DUw9^Ez7NWp=KGLT=KCJ_ybXx|1mY0gcsEpNpG>EAzemDXfK(2*Pst!F
znbr(j-+)y9?eBh>!3vcD?*d5UImZ1mp9AnP;AfJKyO2-I3^v&^;0pn&uhe_V^py~d
zXrHWeIMwu(dq8nFKxDV93r}Up>^dNOMn+!4R4OnV2@iwhAwXa<kQWhnp2$cbZz1po
zk^VqFLf|-&G9cd|@D-qLOEAk^f|x&m{RYTf3&d@13kQ(70Z0si6e8Pz<Rg$vWG9gN
z2-F1>HH7Tb6Jm4&OQ$F&P=?4BNNolPv;)!sfp&npq{uuSF@1sc0%Q&YG8KWd0g*X|
z(*?fnl;zMiK9LVid@+1AI;%M_7hK_}WO@wq#_VSL54_+7KZ4%%`(aBF(9xWNhDBDK
zktGRS%@O5ljLX6QO1-#r1MY~)Hzm<6j7Z9YOWci38Hb@5VaJQkV3|phi2&9Ux@IS&
zbrM{ZcUTAs7XSt%XR-eyi}58ZL3uI2zSJ<MFZm)-BUD~QuQn;hm;7w{J$*?Yh8-oX
za;Vyy*kwi?oVm5r1b96d%HX?3!;%sc$G3E18E#TAiJSzkGC9?0FuZN5)F{i;3DLw3
zld!)udZg#Np(=;4&o^~u{GO!vtx55Rlj849ivLW<<1qxJw;xSP`MWwt^mP+|S3MZc
zdr3s}@)w|4eD=+DukV8&)RT>gFu_JV*jJBhr$%QZRLW5MQ$TZtWODl+2wtgzSP`P`
zbw0u5>O$#W0)}y;_+<$5BP%y#8i#wKY(<BAEgJGFK#WuP3+3sIdlL9V0Oi6KC0y9<
zWodJ#%omHLN6ud%{R4m+m}Z({<dGpltdLd@6rv0(zXf_GKn+X@Dw|Y^fvFKv8vyLN
zh6jzQ4f0bb=w#8wCf=CR83v^(oo&cedvhKl>}e*MVy>>@!a<fq>hCh6TMZ4HLDcEl
z4YNnBt+Hozr{r^Leq<%54Q;sG%93%;=h~sBr2sXd%F-I_2mCa~QG;1pgOh=e1z<?Y
z(Syu-U@HM?Aj*-xo;rPAo>~l#o~u_*PD{8u(4>B|k8$~Ii%y6u1*Cp}xIC#>gTT)M
zsP@R$?Qt9M^`tu;?x8@>yn-bV1dzewgM~7}i84m-ay1mqk)xj1;>IsPdo+e)P(xA2
z#89+*shUZ3(nC>O@M!=@{R;K%EIp1k<-q4ME){j_qT`+fz6X%K3#yy&oGw9Lh7x*7
ze|Qe;;v^FO4T^68fv<sNV}l_E2pj`aia;|WZvYvLKp#NPb3g)*<7+vvMS!~GnCU>)
z&A>JRI%EUcU_=tzko;@PAKA#(3h~=PuniDs0OTPA?g!K*QLQeBu`AXtt<^^b)-TN*
zioo+oKLoJvGaP;R{nx;brbOq1M~+AM&gGOBw1`}veWTKm@;Tq-TVqmMA_YavF}mOq
zEDk+r`zAXcP*%sE?Jb6egG|?d(1^$lhM^vUFiz}6F;E|k^vQ&#_durp(qDkwIh@<-
z<S!G+`;a_NhBj0s+bvBJN22FVnZ|*>y@XR<yp+%1!8k&#u1!<3-=QWKhnx?qatZs7
zr1;;e<0Ge<y4M^gi<c*cNnVejhDVeIWo<M)k*mOduuL^zsOmuMW7PXzL&4SKbWNeB
zr&h2`*a_2Sao6iqGcq5kD$<+`SK<j<BvtS=lS98pG2y@FKxKK7&5oITKI-vRRXv3L
zeiFZKXa`7OYOw8p@vCjWy-e%F#$V*nXhg-&OEy@o8y8EFogwUh8=hQ(j?g?U|8HSO
zj6<Wem((b0ZFxe$x*0_@JK6cQ>x|AEmf1Z}6#Hu<E}g=%EtgKBICmdbi&5^oq@k5V
zTxQ8*Emb%Gw(?lV$snu8JjVtzOGs@49Z#d*3egYA<F&s4Nr?VT9&f|={J9K&q<4yZ
zuGxwkAm*T2MAMpdIR`tkoO;|2JJ^H8<i}A}c_@`T8u@>c$1^G1B*|CL(Vta&O`_vF
zAgat|T?U#bN}VJ!<0C6+;JFl{vKx6HNAG?IkjFvo#&qV1l;W`{Adez#jc~u_RG?h|
zohaHiRqIJW#{oJ|LSZ+ha97B#cyL*#hk@Q4=1#{Vq+STf<JQ+LY7u-n(2D`~L#AFI
zgRTfQq61J@6u^2#^j(umpAr4mAO}Edi-X$FaHnOM&W9Ne4n5dyObYk2<|lJxtweO4
zNmip>$J0^CiE1BXy@{Wz`9eW^F<(>)npjE&?Ll?#2As+9PoAyzGyVnq4L~k86wa>A
z29>RC@h78b6O$C{IHJ-4xm<`%%47452Ra6j$F~EfC@rl7IvdcLqtn!?!D-+;oVA#y
zwnMqn?C@(5F7-2Yb%w!xO}FNw5d(GWVlM{S4+8?(K#n5t4v`R$PZ9VSAi7YhuT1{d
z$`tVWAI%`}K2rV-nr{I)uL8+=2491|z}Ezn^CoC&eF+3Ji}FbN(^^l|f3@qr01P9)
z8}8geW0HCih;tWR_->Q4xhee8MYT-fu{O2{0jdi>g@qq58PEpmGamHS6?y3&6`}E{
z9R~abph>D(ktJZ#m0I}LB+En~p^htqwQ8FxHA8h80s_=WPXtaSLcI(@U=To6(L1EI
zk*K1D{MA)VH>n9-B~|hF|5-)*1EWUz{4U^ErAkg&gxw-Z?$IWhODhh?!tQHQxk<S&
zIhEHOe3_JZl}c3a<JwJ4J(+2z$)xJaOg)l>cs@B%l{eF*(iMMbQt66UnRvS56lks5
z?bmR{pL3b8BZ;<?q18i92Qv<+(O1zvmQ>zgO{-l0>q$JyYm~P)+4U<PKPJ)MS%X&m
zv%ILq2SE5JuTk80AGXreCNLL>_2>|~m2f^BQUgIZGZ3I_ck4$7IJiDL@u^Yn^}=#^
z|2pRTGA)iA-1U>~>M)G^4#8t6uOgRu>RCX{6#F|8`H_|E{>t0rsp;@ESl}2yF4^R@
zBbV(!Hv{sfP8J1f9QXj(8;qfAF9^~9cx~Z(0eP%@p?Y?b4>TLl^<nsno~B@#2w*v@
zJ`KDRarBLMLDLk(jRAp|fOJ5h9UwBq<m9e1O;#C@K9yv5F=^b$^&kkXp%oS>CYpQ3
zjdiqIo(xqlHNyC!R~QQJ58Kxpgqz6&3^@i1`(6`ITf5M3*RQ|DzJTY$hx1BwfBUT@
z%A0FYURd4oit-CXNxOc;ltsJ#JBh=`H8||3$syvJi5b^x)CXPUFurSHb(FUuY`28=
zLVVl8M1=UZ1;T8m5Z|^y_zQ%^@F#D@rcI{K#YPHk-pq(>u7E@DY-PBy3ZHfp!yT9_
z^vhig_fg?s7lgCY`0S_t`0+D@lcS!+BD?@$_4FbCk2Rpl$s|4EXA37cl|1ve;>n?t
zr`9=Q1kb$K`pgTfX@Abz@XU+dI77{Lc;>}!T!)DbMK^9eB{m$eai%`Ff1w@>iF-~x
zVK-$oB<@BHM_@2O?LD1?z+@uads>9R1%R?M%|w6`f6<LyFlLmDmN3lOQPq-rJ#wrC
zs3mtTLnqD~g4QtmHxD9pHz3-;q;kn!)*`9ha2z}FGKP4dD;NtIY~3Eih&r@0R~wf&
zVs?FZW1Y><w1_40_4%6mJOJaolG7W}QM5hc)!P?QMs(9hbfSY9uMhd;>q9>I`jAh)
zKHZbAPxq7s)7C0Vbsi_maQ)?!HY?{WhR<D(a8CXrhTUrr&d(+1`h2@0P>?+X;pkp`
zp=$FPe=)uSb($P!{1Fwe4(K!|q1(BOgrd6RF|&~U@Ga$}rm#pk8DU$_!nY$Y#CJem
zjBi(7j&DzH!go+^!?!P^3t<}aG8jl$v>4Tmk7dtT4W?fEa%33bZ2)W0As19<G8pV|
z;r*DcG8k#Ve-&^C1-AjQ8cd%#Q@DfGfB!ln%6hd7HNiPcB)W4RW;H9vAuR7ytB&hC
zvYM}7&1w!_hH8ouXVFV6_wPH9VX;pYU^gJP^iM|SgOgic`!a-ucf}<@Rw)X{%R*;y
zSNqgVP?SV2ZD!%Y_WbFSg}YAkXuyjE+{+C4J6JZjmn$SFx=(Bb+jKATMkCXyGw~3}
zUE;8+9fwW9l{2hP$1mGp=ZbX@4R5{8h;z{H3!9Q3*GH^8f(l6aC^TouwX-NsV|+XE
z`<tltmsg@ZNjK=p-sx0(E^NV<Bc@U9&qMOC%v=R!$~Du`z_K;^a*AAZ752{MWEf>k
zMuuZSBPYNwrOSccvFjl}0%e9Ag5_$a{CpHQaVDUWS@LPDPO{~hB|PICIFnm4SD`cH
z$<WO-+|CX+S~it(Yelri{6~IvJ)S4Z2S#95Nv?w<i_2|rKt*!ywRllfG(0~cu5cP6
zul%Tt;^uCmxZPS(+{}p-w@*)sJK;)-`{!vC_YeyA<PT?1+@FU~-1#?9+#ww(?w6pC
z$iO;^JK`LQ`}szS8|^`H53Z)TsfbCJb76uR@{5%ev?WBzlBYqn+42(@PmT<?pokVa
zSe`s}K1F<I0Y#irn<9R43q{O<`PG)a+Ec{GF$l%wrBGXuXt)wuQl{C!xsDBZ5*idT
zR!QM5Ld7lFdOd~v=u!&z16nR12cXeiIe!j?i^M5hKM3K=rO;_e@)oPG+=-Zo+>Ta>
z$`7E16d7to;l`s~V{*wF3bzaV)8##=c!qomc91Fg0&SKoLrZ7No6*ua@{|aL8;=&s
zlO+u)+;Z4Tf&8!!g>z71Etx)^!nMP99XaX>3U?b+RV2OHXg~R7Urc@E#*uI#@^A_|
zh1^~UBbGMm)<|}5hLx=Bd=W-;`8%wtiIlfu${<(Vh)1b%(YbgOB`cuF7IMHs^kmr$
zxk}`6*hee*?>c<B;-wLMonj1P+Q<Pb_~yh-;MPul4H?_Zw%5UHNdDtoNBI&`JBc2i
zqZB?U;5LIYWRK3&^^%*Y>#t!{j@$>m1m&n&)Km}DI4+A|m1XkJ4MHrh^K5^%P#v!C
zg;nQ%{y25MM8_4uIxoiY6RXo~34Y>rR^;KQtj?#E_*venF3buUMXR|`3$lt<^)nf8
zkYk|xP{7LZ(9n0>hPK@s&@RKiY5=f@HRjlF`M@60SkPXF7Iq)iSj0XIExV6tEM|Z6
z0I(-DmT70z2ewaRx%Ss{fgK10SzMt#^K@Vbby_pK(HLM)YplfHPzdah#@g7IqN46I
z8tY&`a|*C$HP*%M*9+Ji0p<P5?9rD2dn*v$3F-RSkKYUI{eVxbzes_#iAE?owKoE(
zqEqnWKp&t5{I|YO0_jH(Tkt8qKGk8789yGdmQyv#A%7SMDUaOrJls(AQ6P=<!Omo8
z^W8W1^FWAExgxW}R{`s1#QU$H<gYcQ@RtJl&SdjXOvGQtX(Z-{b_wylMsn=|`@!o6
zT~=I|{ENow+XWQ%q%Nmem-?&5N<^09X1R7j5Z(0gRUpf8!>n$gE4+Z4rxB64`Hz5g
zBO245$JYMSh-A+i2<$J7Ier29`rnC~zAzbFTqSMHKE{@iu2Mv<oksmy8Y}dlM4zxV
zVcb5x97&E&Dz;b81{Tm*GrJunbX}ijP-0Jq#k!tOE3=2+3M`_rp7!Xgfkide$4=`4
zEJb7e{a;adsxEGzy%IeM=Z#doM%v@zz|u4}*53&ql&%RU*el>e-3*;{j-7uguuP53
z$Yztxwi}?!y9GLKzTW|cSg12!=*OqP=V)ZPUH^X2)z)-t?PrPA)7a(qa4M#e8=~Q@
zx2MDByRCHE29cTD#<e~`6Zkiv+1qM%SS;TIqIQ}nXlL&M)?Q-~dp*;-YIZR;^r^1R
zqd9@AF|4^gG+AI53+<^95}oeajY+igO2qdwM5j`t{S8qp?sj*r)ga1dg@pYZJ8y5D
z>e%Di7N=<}Xm4d&AB{!qhOAOwjm5HAnM^yDkGKJDq8AJt<XUIJ``MFbB7U%@#kLr2
zVTi^Ydnk0^4%JxDe)K+I!!#E0S0Qbb)=$h|3h72`B-b7X$Lo&Kba8t->oQhj_3h2X
z#%ZkB?n|YdrLkuIO}nuNrkRxZ0>~tdbkKcivZgD`m^6EVaHnXjr~M||cB;nuP_yT{
z_MH$caGX|mp6O?of}K0VAm=g5OoQCM1;{Le{0W<I&)0~EMcnDG^%i(#Q&YkYU<`BT
z=%O5ZHdQ`XV?mJ_Ti{xu2&j~;T%hCOoM`O}O&<Ttx3IL-QUzJpC9d5Pd9<l4)l}M4
z$_)b$t#s|7B)W~ouQEi+5v?{vnPrPz>rK#Pvj#%j#&VtL*zZ&J6&f>^a<RrD{!p0m
zCAvbfY*r=L-vYTV*HLl55%ON4kz!ojhbN;NDY5ftPgiMs>VST8wQKoNl+BG@_Zl59
zv~_JTW&8EvTQ-@}L}u}IuC)SLnw~v>s@S5VaUUQo<a&(+?R1Vil{$OOj?!Fi&{(GZ
zAY1W9jpf=0iQS^HLfg9?*mjM@?dO?qhwh>EMP|uec#}N^lN&Yh-l?fX2DUrgyEWoy
zi`%8KpuL|>eUHW>P0wC1RqQrW*vhc>=%ieGA3My08Y{HN27o=JRS~ySP6xJEW5sOz
z$6UJ^su55<@Nr{-YA}1kSRjb@x%MCuDQEJO=BzDbzeZqr&$`Y9pz;5nfj9fyj3Y1s
zVUJvm;+}US9A<(zx$nN{I#+?pj?=-v;zkr1hSAqt=RL-&Ve)mIL1gf}ko$(l9G@qJ
z-qf6fKK~EwEsex{{{7V38p##0nES5l*s0)lRs~9V&v3KZ@a}P4CMpwiKXRR3Aj_DI
z1=`06s^*xJxu2La?R6Nj+)v%eP70uF_nA(MP<vmxfpft@JJ7FmLO?mtuMIyG^M&hN
z3ZiV5g=b4N*>4lI$SgVGI^QF~=gWHE8@>5Fj`Tx9RQ?s%kIAC`+lZ?5^OG(qu50(R
z#_DUk`bA@^rGIk+*|9`jf7c1Ru77BRD*4rQ+JY#XRWfz`D^b@@C5PNQ$U&*~8Qt=Y
zlws@~2BBVcU0OiF>T7UGh3m4N1FJHT@S*FnaRcqx9G|-`+osF>Nf!$DJJ+TD3g*=l
z;-u?RO@RwGfa-78Wo1QX*`uy?j5T6s5!tj=GwdAH6)>&xw8kQxS$#H5z_SBsVAqiY
zhUe*-j>S&sdzrLH5=A__35mwjU&IVi`8FV#h6p;bJ!>3@><?)Rj;E)1*{qc5qG25u
z%w~ZR{MoLX>sc36Wyv#Hm{90hS25ulw6<HTDk12`J?p`$97QHUH)&msIUEZbcor|D
z)-J7Kf=u<-MutphD%P0lbWJ@gJsp`;=W3S7bVplMp}EN<dKSS6Zw|T-20Wg7Ddp;;
zk(&Gd`81A-1{}_E8*%Q~h?B!o&Kn92+=C4w*WvV_l*3&Chn9<6hr?CD9OPT?Ivh0$
zI#0u)6xZSC(1;GYU^)^Xb{%@&0%s~#9-gC2Yj+%#%Jv-9DkH`N$@d&;KQQeeklLO@
zy$1d`1f-tlP?v#42Y@v89O^HSvj#{D&!Lt?!z;0@fj<)N)j2=spp+j2K;)2X@g>jh
z#zobv_E3zRf~IxkwF|*OzSj%%vd?rbU>`@<3(6-kI{Wg5HeA5&?ac*jC&WkO@XcJn
zu0u?U?9`eI*pry4#^jaTxqvNnxq$r!y2+65FXjSv0u-Ai$Bcs=%i_UYz}{|i0ejjI
zE?_spz2(apEuj&)6e=#1bug8#C8w8h0ec%HsUv?W;)3r<lv^YlU(E$<RtGL%@1Dv9
z>}E*RKyq)Vp_~IZ)<}XJ3)rK@T)>WP#|3P|p<KXT-IEL0*SB#2`vbaY3%UMAE?`I9
z%mwUSw{ih{?h3T3d;)x0%Z1IkfIT#Y3)r*az}m?uN@*`M&*B31v5{QBz6*If$s-7N
zmVGPH!{x4xI0q-&Af~I_gF&>L+zwgF<c*t!=q^`bIeV%+|3bW+Eysegr~I=i50qR2
zJ@=L^FT+bF^4(@wq{*p}w6A=A6pkj!b@Op}K*lfOfrvpPa3D_BLq{ASgJ{_^WzPoK
zc9YMd?FPvQA?aW__EJ2nkiD<LBMJHGY1p-ve5gNM4uOV8$Vcj8S5&rKg;}KBzW~!m
zdBtelW-E`~fO|6K2jGlz6}|BSu1sHw=biF;=y`%%*+htm@+a8t*)kPcnj}jb;UKU4
z@N67AmaA*w$*1fJ%4zZ`#GfNC-+%|4GSnFVl_S?eqVwe6sNoDb7W$kiJ9NOAQOTp^
z=gW~W*4Z+Sdd`vGEyFbw^2)73%#*K8#$#YPdH}8xmgy+v0@(+ya-rOO6{d3X#{TGa
z@{NJmU6yb6!);6Q_$jzUS>6s^EtOp$QMvqZ9L^2OuPd<Fm#feUD`eN1LR>7*f$W#a
z<IuxO`R(aAZYPhPfm2qp0D0HQ*U^jC%2ntum&#9J3G3vlRy@bHXC<a*^7-vNul5$~
z;YxW7rgoKVdo%jHEP*T)vfT~1EkMr6;|+Ru%@(*l?>^LXqkIX{ZIaz5!6V4wu*}W!
zB<gdW%p1!Cz8_>@<|PlDk0<)_9F%o~ya?@bqr9-Mz+v3Qu<&hiIIQj_x!=X3dHMJi
zczFnyq2ZB{JbaN5x5@x4>NdF-y1HF1f}QM;V^HoLawGWPDUWo-^Dp@tT5zXql#N%0
z<UB~ROTJu!7pG+>__y7%?*(|RRpxZZ{bTZ!F8FUoS&H8AfV>fQxJTYwitAA109eIC
za_hPHPcV5V+UQ~VBkKH!jAjY(sC*M`{g^CUjepCL#VGL!`Dz=S=aKu+i}%SD(D_sH
zmHIr*TMnKF<VMgRR0pG<me)4mb*cBG+-Kyu%kjFt+zCr~PWC<%XL)2QN_jy(J{SjZ
z<#+f#EWd!%FUh)#@Z?+;oFl{$$^RvIMRtWPy(%wQf+J3H1GMzINZBjk+H%eI1`fmy
zxDM_l=)Rv9oQ7C61^yr}b_7&H&w7vL1(_$9!QJ8G8j1LvU4N+QVm6P2xF6}HTzfAR
z>wc`ULXkEKnbWSqSBrCQf~W9`^YY-La4VMA*l&wy;c-*PYpP4}xToVaQ%J<)mX6n4
zAu*3TI$jHfWP02{@=6qv>v3<%Yo(Avk6S%nX^;}cJ?<>w4}U2@vB#|>udPCwdE5i?
z+NoXm5^peC!|R|@+KA{JD5Axl>F8Eo&tVWvRkoL@Y@r9zelFB5f*$uFyfbpR>l^X7
z4dD$?Oky7QGQ2YtlId~t!W*cNT<`dDAcGWA=y7Yo8={c7#|;^8s6y&{+>r5xDWurr
z{(?6m$`&f|xTWEZPGQYDc-+$P#wfBfk6Rz!ScUZTxS`>VS7d!WZfJNDRLVeaTpY+m
zg$(t$SL01q$ViV{HQp43jP<xv<4p~s`-ll1cP_jcD&-ulu9*s%;c?%>o2`)9B5gEk
z)jJmSu95b91l1(p+aT3yALC-&+a&F$nZSvNcdgVjDK(4rHfzkWIm`F1lW8Oj+MMQl
zTV&qzz+yJ%`QG(1?PXxOB5ej#k_K-j(%!>Yti-!P+T9Bh{BNwme`|t2=h@yi8Dr+4
z&55>mQ-VKd+TP6?%hjdbqDzab`LwrPb1BAB#=A}0qgfc272fStQpUVHq+N*wE-Sn{
zO(kqDE4;fBmEf|%+bPxVkDkDKck47vA7kD<(td@kxi91GPO#v*!n-%Yg6jzHK3yzV
zGu{Kz=Kp=^OnYi%day>OhZ32xO1!J3H3OLfoWOe<Wnc`r1~`HDDrJC;7~s_0gI9f>
z2&ePj4jG`9)pXw5B?Hugn$COo%K#-;Q+RK$3{VJBd^87xvUj-*9zsbO?EF_q-J!H0
zTq%_S1#K=Jy{ly53!saswWGIQr{$`poL8Z-!fXl}7g1I{jq{zfy)0-d{B6uzV+H?C
z6tvb#F6dHA7bK!@fS~2Bn4TO4M>nj6388vNRH}DGrG7^=U%$$l#{QmG8=gx&PV_rJ
zL-NBkJXr*{F6G`Rr;?9_pnZ8BhBrq}hgS;7UOuOiwK05pvIs*+Q0^MdspRj_Wk_~M
zd{~Yh!>Qz$i#e6tIfzrq(dc!l@{S4!BY9>fO`Zc6nl68Zi^!0BCvYm+VjRMzKAS#a
zebU>rKG&Sb`V5=PE&P^_)B^gI9@xl}ok{U21}-UIN+(6b;c(DUy08b!n@Q4T9ZB}X
zEl4@*EDE&~nQXaO3Dp2&b3oqJokF2@5UMsTB`ALyL7}dP5<+t61_~8`2oc%yMhZ1&
zDuvpGVp8SfDHQ4na7&Y)#3|IL{VCJ|cuYK|Tg&<JEl^Q5{^}CiQB}KGKFzAdkX6Xr
zJF#k0KyHcR>*`{bX0Mg%|KT#`PML?d7i59@vpAbx-Cie^uO5l_?!ZEz)2WU9EK!_?
z)(hGvWw0qC?VC}S{cEDjq&x@gH`8VC;x#BvyX64N{Y$2v0wnEJeD$GG3_>8tfQa0P
zx(KT-tLobm<^&iiif8Pnyq1-EH7M;;%nhV%rO@>V`@OS)IaWpqnTV8W__-NiY8dH;
z5(AdajK00?9L+F(6b$YCR)B@R!;I>SdeZes<3cZf7R=kb!itgVZ&ER!zle%7c97O%
z)`RL4MbtWubUxn=D!0hqq`Qg=F;%2-=#I~<k38)(=TXe0IIGYR@DypBUc?2O+<QVQ
z)+?*16e)+xAmc<D-GO>TGSVR0946fQ0|@6WP`M5=7oQ*N3aMJDIL;b^rJxpRd;lNc
zaXS>UNh*c>o0$};qN)zDWD$R3DM;6A(r^(-b#xh3TA`!sRz<7VHSL?DofzYwJjJ-5
zXw4TrL#a_RA6P{l=gXvFyi7`#)2gETpNftv`&lj>%!yB+Uwoi-^^ujSb+O93Zy^>m
zRtdwO;rzx?K;hi2jO)){+p`@GGXaWTfjyjI6=s6&JmBL1wRjY2fTe8wC*a=!LeoCg
z#jxV(<p!Z#77r_1ysdWaC1?bEEL^s}M7U5T%{Gk|ST}r-^G=Gf{9l?;Z~Y@=<<Ip{
zUv{i#WFu0fwa1HTfXH)4IYG^IVI02w>`Ki&vhgq{tSJSE#Y>Up5k50|Pv({=d|!Da
z3W+|JMZFY`)0q52`p>0BM~l;$ON+QA`L*uBB`Bo{por7OuVpGr?+?5;pxLZ}jLTu1
zQ@dwZ_>&KGmF>TWDvtT6w=)e1lR<tqz&Q)ZYy@Tz83trA0v7>9?Uzo$V#hF$dBbqW
zvh;_M!3RiK2a?r*^d}7kO#q6;@lZI$W+w8vIMzkTf&>Z<om;^fP<FL$EZmRO)xzJL
z^O|LMxyiQ?`Htv(vQ)LyMDxm-$~^X6)DItI=AV%wyKH0We*kb3HD-N2*DQEQD|E=P
z-US&&3anAEk(7^#is;XvRQH^*jZ|d5h=vhPVc%jysYskEiZhbFlC7m8CC&gLT=$#(
zT<TEy+g{abUyLw6va&@3V=#}&hNRdE)m;Zr2J?i>?22^X-j{4JPs(5q#99?&+ps0R
zH9V^V>54ViOkbjO)hLgF<6c1euZFlrqkL^5*(h;xMr&1!g?42ZrPV~~Y?2O%CJ7b1
zre&$t8|$hB_e7L(sm0WgM5HC^W<e1<l_HK9r6WRpWaZ|DMiD!;B3?svU!Wq`Cw9qn
zrdt&QRTsD~(FKl_s}BC4?gD>;{3n1i_XlN|`m~g}=N{8_wd%uKk=q9|W$tx5;4M>t
zGWQk;G$TTD?}$KqfKW;vZy3l#Afe=k<(cF~%kKs1?tt`j4RH-6k28_9;B}M*zNRg8
z42J`=PqJJ{NyCMCkHY^ImW$BUCacyoPekni17l)!a}RL4gt8ucOH0{8|G>I#C^kwx
zPZpD6EUGsY5c%OY?yDpmNqMABZ|<b1iLPC-eyLLWJgs!TV5S_+LapVM$X^a9;%4tc
z?PzuY-vX$`ci9(8br9`i;O_z=d{f~<8AAzhT5Ff82FZEbG{_40A5>&ZBhw&tI)V#8
zHAqtg8WUlIbU>gDK)BvJIx|)I4l+`ebOv}apxphZHd*~@b?$~bQ%v?tk=-3=kh6fq
zpe@?|1^6C{W5!@*1<^d}KTO?<B+5?zC*{qClI=gZic+{=CB>hc6#q+7{KY07-ZJF9
ztK}r0P>Mm65!BtepZj`j(wK=4!z}obm9?<JpvIsxWSkU(p|sNhs!`8O^rSM?lZGU0
zU|+dv;}N=z7lC{}K(+A*-Nu`NuLr0$9--U#Vc>fJs!h)|HL*6KO~H6pW7DQbK=Bel
zwds2Zyi0^_`WXVB0ED~6WM-S*fsFrG_b97w&wXgmn@rYAk=1?FAZ*VMG@qL7*_d9e
zM7S>+LMr!{Dnc07(Q2iqLX$KIHb#Mo*ZLoTPFJGzA2;z&LDT%m%15xbr1W1Ri>Uvf
zAmDcZ<<d)K=JQDR?d{1fy|oN-^PRRD;R6EPZNgb1y5h1kW=z3f+jY>(I=kZXWfATz
zb(9_te&GKaYT<ckC*5k9_?Mp)fNG&mGQ`4L0B-_NEws|qRo;abDw9?WHBoM`8z@cz
zs21vnKwlzkp^*p-1&G>T!NuKZ7+8;jL3f$bo(%p#!VHj{OEPzfA$cy2JzFG0f4U0}
zm1sA3x`g0t2RJ}8!0$2HIw0EyolUnJb%1=7T)0mdDmL2ADk>2=ZsM!QA}U#VNSq;M
zgVddm77M8sJ7I`dRP~r)Eli7rWPK`a2_%^hP(3D6-D6HUsMadn0OO4t5gR-+t9y_d
zi*j{a+=lEo0&4LzXs#ZMUIKmyP_*zOKGRUM_#c6P1yEyFuH@Bw!aC)}RoEs+rF?t6
zF%#8(<KNS^X}tjTW6^Y^nQ6cD&Ulp+pxUoC0)<4_evJ`m1keVs!7y+>0Rz-Lt+`>)
z8YHclhts}p2%JKM3{FR&4*(C=6PeLO{gIJfRL{W%RnNgV-x_QM<LsiX)Cjh`T)6L>
ztQ(PawaJRq|2p`=O7!5zgZb_Wlantk-Jx^hjWPOXdTIWfr~8{Bp;0_#NHDQ;17>#4
z_;;$Z;$lh@ulz+1gK#bImmy-g<4io41ufAM6jm<{`cy9ss+&i+=O&eQn$CbKiqISr
zUu~LfSY?_SxK0G&oCjb=KeOStnSuT<g!z$`cVQbam+Oh2o0DK18e$kA%!R<os^L4#
zInp2LBxYZuOK`Lqt^x5ffHE&fy9Bo$R{$@XvaF7n5}mXPkXN~aouIxGpe$i80uK_Q
zB|MG5Qvf|9I`6o)MVSbo3hLv@iR8r@(NR#p1xUZZ5VI+aLly3H6G@}E0a>Wx|2`v1
zjN$E+L2(Sf(d5-y<&@}Aa8Ozeh@86Ur^l2+4H<Ctk(DP)j6#n!CBYA<-IoBR&<~A5
zkCZEgewLVXHikaGQcK9fE_g=)(3T6Tuatwev^Gsa)&OYpLu)!pQQGVd;%)$?%`*__
zM}*oOjlgh#$m1lw)rUr#i9kY|Kl=BO7qvMX)H49-T?}yzZMHO#)aIASLTz^ZA6@Jp
z^UKL5t5RmpWBc(Sgu0n+qIW3O(Hiqhjq+YsYn4@~%rbyd-kX+oi@TRmUGFM&-Hybq
z0HvbshMhGDDtgnpyp>VWiy(L&pj7lW0&fzbiatT$I6$lDE0bR)0tprU%YT);sG{FN
z{R<%dXG2^=MPHam2P%p{6skx&u$ljGVDw@M|Ap%nLb)I5=Fu7&3Jo2khT>)kgwCiw
zvhw$Yh7PLvcI*^vHvqz1{vR?U{~qJg!(9D86J!>Q<H`)KGYmx{kZw31@gD@4lCe4X
zH3p<_H^en$yw*f=`2B{Qxt1%VzYG?u;Wtrwjo~+R$Yj&~X)j6*w>JIB7ddajLES$X
zkw*;K9#bt@`7OwlgSuY{d@3r|B_Z%0Bk=BIfgcPq3wyMZcqFg*<R=kGNW9PA0Xik|
zcrYA8i6<H28WImTk(BrtvOr=p;ZT!z%s3L|*A#h`$yY7%U&yUoNLb{Ihsd{6<n@NE
zdddEN8zb`V4M;E_HJg<X`HswQk?PxbB#V4!V!f^;e%~+@i9kZ)d;BfPt0b-fzbh#5
z7lyco#P69%N_+%aR2wI)*As<P-u8(ZRw(>Nk`1eU4pvpki(4BgRL-{$dIM!jyy8^t
zH{Wb)gx;VAqT5ipZ3&?_WqyiO-+nt;=*_{e5LwmE(-ONBi9kZ?Tm1E)Q&R5(!^bG~
z-2b*qF(ql2;#p)#ZfERDpq&%tQ|?Yxa&IvCbUR-K=~!DOw=bfUOYKwqo`{T!oN{#V
z6-p0AXVrRmzn#&;3bnuY2CDmVLJyZ@ev4G!o}H|RRsYb#o5tR!nLt7h>;28htn}~$
z7=EktU}$Qz{uC3bS|3^dQxA#qsRs-JdWId^VDeS#fwfh72%`NF&RL80Kc8~PjNFeR
z%#W;mv%Qh~d^K)*UGc{g0Oi=`7`c}x%RR4VKflp%6p27W?xp^EuvT){2g5iZ{SHH1
zL+(lwNx7dzmSnjxGei3)%C9N+3nrhEJ4d2vc`dQnX4FwF;=>(`h~v~Epd)J1Iw9hC
zBjSW)5hvCZv4z=w5s5%T#Pj@lV68+P4u*p%Vn;(<L&Rn#k|N%PEdMEDqWqd7jxqVP
zh$U#nK@@R<iC%^<KeF<=jz+{m{1;?#9%?crA>t6@tw$t_I8?1mu_L8i*L{YeNCXlR
zj`D|rvyyNv_^qUbj~n6|67DvUl<+cSfrM(iE3r6C6i)f77Kfn^OfD_oMl@jws~<O`
z@^(!B_>q-gb~f^rsNT61^|+SuaeiEy&Qv<2FxPP%%zWj<(lD2CU8*M2jrqu+OwC_j
zK;EYSjk$;`Q~Qa({eO&o2Y40L*7nToIp@sDNjZ=}3IPHk5C|poB4Fqp=}kbY2#O*g
zf=E+96j6$ZB_aYMDk5UXauq?nVnGEPUa!~%?5NoP_g#C><Rs|#-}5{xS!-tPwcFZt
z=G_DFdyvckOJoTblI2=bdp7+NQ+P7t`Pih-xnd~eTZjj9GAYc)mpL*)GUF)#lTU#&
zo?<YKL3+k?(u8+6Abfl0X+L~BXtZGvF4nq(=}Lj&2ZA{ZWaV>GIp7oB*VqpreE;Yv
zhUYA40yIX0Dqm$3%2iRCxyV^kbCejW$jp-FRhT7}Tjt?##Bg^LbUlJzXoCLzGEa}t
zBUs1secrI2RwiY+4$Adk(t2a^YM2afF#;EB_m(MzpEB3ESbN{Z`!|a<zjCakeI|hJ
z3%Pvw6~Ux0boDa;R;S2StrXtNEP~g`1C)a%><{ob{_IkgwakGsWkPTzigrGz<&N_)
zbxrF8og2ghb7Vom2NSWYAI6GYo<wqsS6r^9xZDl|+zJv0s%oBxsV7l^wVZz;P2xbW
zL*X@$IKY3v9HBr5_yWvlAS;{OHQ9c6pOFOPPkyEEXp1{HKSKM5AVh%)Vf&0{g49XN
zhq8q5N|Y4_!KD!6>qwei-{HaIt!hJV)tG;(;?G&UHJ~lHOlYSwgr3Q-_9O8bzZ+>3
zEoCJ1(ITkV1697&D3|lm>&!(S@9_+@rK3EkA0yqsZGo0n(sM>f>UiKAs6IO`&p>S!
zO#>`a?098%Bi5kztKw#?%0cjod1}B9Ioh#?e22&y?0+DVtL6sg1CdwaMg#MKNIvIm
zfOj_VfykD)JVZVaNiM+uF9EMEM)20e|5IvRD+TeAA@X08htZ7=nnY*g7JqgrlP@LG
z6{XRRCGz3ll*sS^xBmL;cqne!-pi=qa|E~U+gfa%bPnpLZLi3|3lIjdekLvzU@roP
z{tIBefEUJTz<L2vi0h$w`rmB+)A03T4PP(T@bzL1UoY11^(HT*At4)cX=uDR=mz|2
za?dPW+FNZn_>3K5MzHM#<eTik&F}^3xAMCFc0|Tu@PiKE&x8z?RmOw((}WoKNR`aV
z<fp9$pP9oFZ9)uuBqxiBZ9)uuq*_&2w3=LjKarXZIE5>S+t@l4aJtv;eDJBQ7viyX
z|Hy~9X$=-|I$3Y9fYZq)w;(v(8|a;Y;Itq(-5cbcg5X*OwP2zr!Rd_1yLcl+RXPT|
z5^%Z_aJmw3y3*kEUhZWNGG4xp?#++#^%Fedk1zO$7YR=H7S@=-i>U;sd&@+_O(i(p
zTOMWdJ*!vp)s@h(w;(v(yGGk+L5z&I(x?-h?p-T_XH6WBM<j7?UgS&!n#7UJyWC|`
zhYUp-Ud7}L5pX)wV6`mXWwLXN!nPz157~*UDieQg_1b+X12yJhTu^U6fFe+T;(AE+
zeF#;j&cOAEx?(rtRvxTG)m^CAB=sKdCaLYX5>su!C##zfHbs>}KUMwresr|zacIWX
zMpSSmH6AuAtJdJt)lTpksxSB|>TBp!RmX58Q>{fTS?VfW$yVpWLXK*Qztz+#+|9+{
zg15re$4G4r)gFIqs$1|kPfbF+wbW?vwN)GF<f}~Zb<`)YR$#Tf6YF@X$$hH6i#&c(
zhgla~z7kx%5?sC#T)q-qz7kx%5?sFOUYS|Xf`3Mp;PRE=@|EE7mEiJ~;PRE=@|EE7
zmEiJ~;PRE=@|EE7mEiJ~;PRE=@|EE7)mg<X0Kw%e!R0H#<txGEE5YSs;>rRLT)q-q
zz7kx%+JsJ_meRQVmc->tb}c|bkkOAzm|el;E5YR}!R4!-U0KuPu47FLE?)^QUkNT>
z2`*m=E?)^QUkNT>2`*m=E?)^QUkNT>?OV<|7F@m(T)q-qz7kx%>Tx0KSaA7DaQRAb
z`ATs4N^tpVat+q;r(2js!R0H#<*TO_u#Pn@za??`lDPtRUKrUDT)q-qz7kx%5?sC#
zT)z4qH5XEX%U6QSSIK#-OTpzU!R4zh>2zSh<txGEE5YR}!R0H#<txGEE5YR}!R0H#
z<txGEE5YTf&2w0Pg3DKe%U6QSSAxq|g3DKKGiFY3`ATs4N^to~aQRAb`ATs4N^to~
zaQRAb`ATs4N^to~aQRAb`ATs4YRN{x8kFGjmEiJ~;PRE=^3`JaM^h!Zd?mPiCAfSg
zxO^qJd?mPiCAfSgxO}B?`I95A6gY7C$#^uS1edP_m#+kuuLPH`1edP_m#+kuuLPIh
zO5^fdX<U9QjmvMParv!YMr~N}RvMSzO5^fdX<UBq+FfwZvaQ}eF28qx%Wrw*KH~+Y
zp?s!k;EU9)GQfK@<fLM1;}Wj#0j@6{u}iqV2e>{Z*Ckxv16-ey=Mt{(0j^Ie+2t$M
z9^m?v;x6B|_5jzXl;QHFYVR2>Wx0gwdw}aRx?Gp<SbKo$Q?sGVS9LtV^(hs*e6`yH
zT%S@4m+y9afa_Cg<MQQh4{&`-?OndZ?E$XO@u0-ztJ)sm`W%#cx`gX{fa_E0Yn7mf
z#FuO=s}slJG^;b<`l<wSzQOC$ME+;E2fRLcE0=ivc`O?lqkz|EoK_cu*OwuvD=o%d
zzN72`u+M8*RxSbi-{3}y0ql#p6a(0oa480`Pa&RS0Q(Z!B~I1@V4soY>8JtNr&Px!
zVBZ5^pPGd_Rsi-X6<c*(4}kp)R8=zH5BC7rXQ1Sc=pH-(_9gMT1nh4}LY@fN_W;<J
z%Px2EJplG8xhY&E0<cfJUWx(iQ;55K3ETr<pL$s?-vajl*r$}6VgUP8%yW+}#w}Oh
zDs=ghy9dBN6&tz)?0W$0(-DeYzVq$@u+MuXE?<=Q0NAJ0)#aP=9sv84db)gT-2-5s
zQr{E<*k^PDT)y4z0kF?oBiu20kO0`HG&;oq_Nh3|<@@a(0Q<akp3ArDJplG8T~Loz
zHp4AIr|JQ)&ug<&3}Byu=cX9IK83|@od=;;L+h<@`P#deucd2U0`@%s_UU@7UB3A4
z0kBVtH(0p@?7xF5NHKtYnzLMjuss0wspPp;F(dE**r$~260q-e)aK%>XaM&AfQ96>
zn{lIyQ6pgA>#7AR0kB^?1|_~2?g6kbwmP#!0obQtRmt-J*k1&tdQ6bz{>tXtUEg(G
z0`@%s_H~j7*!KX~*GVE^-veNuQoJ4$li~6$a}R)hW(ci-fc@dgu*!GyJOK73PM3gv
z4}g72u1mna2f#ih&m~~r17M$0a*6@$(_B2o0QSYUOTfMdz&`czTmtqz0QM=>aS7P>
z0NAHg=n}B+jnz`a6a(0&k>V5s*r(7&x1~v1ucRsg`yK%Mw9(ZiVBb4eOFdb#0PJr;
z#*zux_W;<ZTJqJqAONs00s;FT0Q({ku<rq|F9HGk9sv6ktSZSK0Q(1Fs~$_ratYY?
z0NCeU*Ck-z17M$$XXO&GuTpSBd<B4gvElxehr0mmOPCY`*k`UhrWJtwLWI$-0>D1C
zlEqaP8Us)QV80)g2-x=k*cT<~hyd7^SaJ#2e+@eIm;y`t#$tWbbqUz_0NAIh=ZdEQ
zurF3p3}BxLiq~UOvQlnAz5v+grMwga*r!mK61q<S`xJ^@0`@%s_9?YNy8&R|Nk!az
z?ZX3LpVy6d0kAJ|r_@2;0>D0R#jRWd_Af(_E(WkKAyOWNhXAlo!E*`N_W;;u@VHCB
zz6ZcQr3{yVeQ%?dvfO=?wrDBWC1Bs%s---afPD{ueKz<yRxSbi7-OuevKRqipZ2V(
zSZR9z>{D>H#{sZU$#V(V_W;<Zl-$Jt_9YjtI2Hi=yp`n=u<rq|Pbt?WVBZ5^pPG3t
z0s9^R`;-b<`2g$}AQ{Qh0s+_;>oS@Fuup+X0POdsl5{2j?2D3k2mt${luN+=MbJqx
zfPF?_xdiNc0PIr-heLQC0Q)PT<>s-22Vh^+FpdJSf0);0m;_*7j8-LJ-veNulAB@x
z`wZfx7{ES-c!~k+Q^>Na#61A^f2TDf%RK=0#hS~C_W;-z15^WGzhj(LfJG|+`&x_0
z8V`VdiPI&r#sgrVwdU#60kF?|$t)NE_9w!E?mz+9mmAW70<bUk5DftPS3s#A<Fa%Y
z2*AEhMJ@sR$8aOX0QPy=N-=<a(Md6YeF{3O0PIu9(&YodK4Z$$sRLl2QXTDA0PIte
zng(D$t&*Qs0QPw!S<(u?J_QyD0Q-%hRF6qAX$4?k(qVN5U|(&a2`N_~_8F>!cm@GK
z9uWI<fqaA5XGJFy;^P6a&)Q8UV&4N|pOw>*h<y);eHLK8LF}`fl8M;&fY@hhtz07Z
zk1$DWEml1`s~LCp=>(W+0b*Zr)RpO%ArO##3)7TjLiRmC_T@Gq`yL?sl3~;!Ao~SW
zB4pnKWM7mPZh`>Fz9^wo0NEb_C6{k;dVuW9^?FQ|X{3Pc^O{#rBE(Su9w7S{2SEVY
zmms_W$o@6FLCC%b$iBJZd4TLc5QG3^UvB711!SL+%h3Rk{m-Z-4Hl4nttKrNkbP0p
zfdJX3B+U+x{giYBlI8`-z7BMEOWX!zUjkX@YRJ9^$o@yr?ZZVthZ0P9@(pC46WtD+
zJ$B&qun%Vr`3ADj2|^zZc=-mh&jBmnK=wIq<QvF7$A=E=qVo-8pM7t>f$WQK?aD)<
z0NIyXA!OeJWS^y<JOv9B50HJ9Yce7G9w7TH%jC<Rg8;}r%P*ObeGia*mXg(yko{R;
zytSF%p~RIy_LV^Pl|c5DK=zeD_LV^Pl|c5DK=zeD_LV^Pl|c5DK=zeD_LV^Pl|c5D
zK=zeD_LV^Pl|c5DK=zeD_LV^Pl|c3t-vP)}0@+sr*;fMDR|45r0@+sr*;i9bxH%(`
zeI<~6C6Ikpe=Rp>1hTILvabZPuLQEM1hTJcA@7AsAp1%n`${1DN+A2{&?cbJltA{?
zYOHpfsF9d27At}5D}n4Qf$S@R>??unD}n4Qf$S@R>??unD}n4Qf$S@R>??unD}n4Q
zf$XcT$V-V5$i7;3BOv?gqPZA-l|c5DK=zeD_LV^Pl|c5DK=zeD_LV^Pl|c5DK=zeD
z_LV^Pl|c5DK=zeD_LV^PRrht+x>Ew#R|45r0@+u4YGXN|1hTILvabZPuLQEM1hTIL
zvabZPuLQEM1hTILvabZPuLQEMKAM1c5!LeQfb1)Q?5k(%VHKeSvabZPuLQEM1hTIL
zvabZPuLQEM1hTILvabZPuLQEM1hTILvabZPuLQEM1hTILvabZPuLQEM1hTILvabZP
zuLQEM1hTJ|p%#`Xf$S@R?5m?Fhowp&`${1DN+A16Ap1%n`${1DN+A16Ap1%n`${1D
zN+A16Ap1%n`${1DN+A16Ap1%n`${1DN+A16Ap7bR(sQ#C$i5QDzIyH=K=zeD_LV^P
z)m&^N+^z(&uZE2UWM2tnUkPMi31nXhWM2tnUkPMiU3Mi907@YHN+A16Ap1%n`${1D
zN+A2{wPHZ_l|c5DK=zeD_LV^Pl|c5@Mzpwxl|c5DK=zeD_LV^Pl|c5DK=zeD_LV^P
zl|c5DK=zeD_LV^Pl|c5@LfCvx31naKTW0&!h620*r3A9CrY*)3d?k>5C6Ik3kbNbP
zef16ckXMvI_LV^Pl|c5DK=zeD_LV^P)eWl%+3(h=C!TxVk)2e{AAvS!dombQ<(~K!
zEx1)@kDr36Yqm!{&rRWge5bw_cR!v1X`7ZZQX0bUUD<J&kEA4{k!{yPp1TR%u6K8~
z$6JMNAFgoj(V>dnn%ttfS4%BYYD3zggSF99_xrLVT>6)|^R9v7POUg#N;PZ;diQI|
z-sHGbksI#;9mNRu%tA=JwKUHCaSWsfweES?lYsP)mM%y+g?kU{2xp`y+<HU{b6r`8
zJ*xE<>+OWcw6s*V6CT%!E8ImKTKDK%tKA;WAU&a_8)Q4-Nv(KO%C@s`YJ(OwxmzH3
zPiwvHdK2PbTH4_b&%?cEw6x0|a2cd$we(QRU`Ttlk;mNjU2*F<ozG|7V;Fk9eOh|a
z{S)1dw_i&K-KwJ?J+F<t<MQc+_kxz**BcuzYUx9(<U^D~4r*KWz9Lq)y))4-9>^v#
zT2ED8)~c2`$}3uM^)BG6TJrQR;A>h+*1LcQwG`L8fUj#QL)Y>f*|O7@rEB?3eXmgO
z-yPCYLtV#*b&iU49lxceHoCUn)|w@HPw*Wrb=7-<?`o;1+lCeNo|gLRJ;5W|$^dh2
z#Ru7wkXKm-;?N2@t)*9fIJ83MQIc^ST0tQ>#T;5ey|~LmD?A)p!CP4_53TTUXa%KQ
ztjSMgtE*u;WzQve%`jW<9J(hsfB8DwpQ0su-)5_)S=h3r@}0h6xtCJydo8(oJ@Z2l
zDDM53tv+QSdFJ&~wps6riJt>C*K=}0e^O2M98`{;?Q{KN=eSj?V=gXFy4;)yjd2+e
z$q9A9b#2$n(aSVfp1DPJaG6%dazc}!R#l#^B^$eX<&mN#*Q$$S+H%~hp_a^NXkJoI
zgi$8*F`Ac}6Jb190RED#_JB*dB@gcx_=WV?e(3yWGE$FONUp~SaU`YZRmxFE!E2YO
zoMYy+lJ|5iVZMwV&m8qD)ubn>YSd(go}<#Sk*5nKJGc?|s^zGmxFO5JT;HxN3#%Ku
zdRbT_M;7yD{ZUijOGaL5<)|$%AZygxIi|v8uOwe9nILsc5O)S^xgbZXPcQN6>R{L-
zD=y4Y*;seT0<pfaCJV#{TJU6nSfm9Vx}gc}_IMG78|i5B^uBRpE!EL$fhJli)Rk7O
zrH0r^X_XTi#aLT4!gKeW4BZ~Y&)XOWaEVp(+G;6Tuddr^SK+=&`<&3DG%yg0j1J`t
zbS!7!Oy5A!6EIg|4Co^1q@^rvyt9__kh-opp<^`8Ce^K+@$SBHS?%}q(^DnO>zxy-
z3FmUXC5WewzG3>dzU2b-_XBk<Y?<SZLYVyP`r;U>oCxb7|C%=FCUPPyo%|<JI=ylt
z%xLlpXTa`RIT0od)z&OW&1H15&TFm<*6PX>NYfdVqi*MIam&Hxwr>1Gv;^<<ykR-&
z`9N)WIkgc9YNK-0S5%V*es(#v(Y{*e;^W!Q_F70a*J9sfhuGig_4&!{5PK-yKu=|d
z*b(LP`#15NkhI*-HXzv<IUzRDj&mpBv3O=qh^;UAGt5=IoSYEbm|oxK<%HO-WEY@b
zPKZrOmiJ9_LTnZJ+$tCd??QU@9>CC?5KBt0`$y)4ST4!UHo@+goDg$wb!+tkCIg>m
z^Q#iNK)=x4s~(NM)Pk$`!H#Lk>&g;|TRnfo`hqLKXw7pm$5qWCTI%*Y_>BG~%qJYx
z8e0@f<)PPh)o<<jaPxr<d^#U4;osD%d_+B_BcIx@;nYVpxq#2;yPnTSoJ+SLt?K;x
z@I^JXAD_|Rg*i!@x_lnuR=bhkxYgtXtZ}2uGFBkswx>{%@#spPHId4fZKKyEGg(&Z
zmR1l}i{M!WGjXlS&j_B>Af*q($$>|)!a@0X-i7yPV)dhqaoI}cW3gC~9-&hCR4mp|
zk5H+6C>CoZLOhkv#A1y_$VlZQxLC0WS*d(F7i%g)ZYm#^#hS^KEiaYN=3*`6PGKq^
z#>HBS&@h!x(PFLS&5q(!B5q=B<W38#;2tErtsHn1>v|mwNMgI0#PYzSSf4O6<fZaC
zPOM)hAEzg$@-a@VzZi+9@>x*qED<tN`S2$;K!mK+ql+O76d^a2k7i<nMaWC#1FhH)
z5$dG!fmUp&2!*M9J`)?B@)ja3PURz^*r?P45Za{jkx=YxQ7cL1qodep5xS=Gfl%xm
zQR|t?2STxNa%Vv5m^=vMMHrIGXI-&LB8*7oqpsLw5k{x-NmuM#?=HkME|pJyVi(Ar
z^K@}d7vX|bKKF^u5Mc&Bd$0{N<=EmM{bE~UicO3y6=R-`bD0E*>o}K-kfEcwR)nln
zZa&AZ6Cqc}dA$gER@-eDZL(t93JXl_+-0KSqr=#CseCV$J4La(MTlDkOj6O>eQ@1a
zQ+pBuR;3R%vvo*$78Pq@O9Y-gi;A_hrJ9qif<{m;8YE%Qv^V)-OUi}qTrO;vAna7A
z*L7pVZ099#$<HF?vEg=v4wO8Z!U!!`MXy83iw(B(>zc$3@gtC&3^ftdyOVa@9oHf3
zC>>4Q<tAwCY^|Z6QN>2vlJzXBfDsqHgyiSN#@q9K>l4aZpXeuF>`pSt*LElCdvV$L
z#hD(y-9nhE;>B>d)y?2!Lp+AVtz@9ZW49O%w>rifl6)L)#o44KJH9a-Zbiv;xg#FK
z;Z{`iTyBZSaJbbskm4@)#A7(z>Letb5Pt-rGrIE+zC>YFDURWAt8?r5_HnpXf_)rr
zrR{T1I=0D<GqC4!Q#yvjt+ajaO2=@x6{Rd48xFT(Y<V)7h~aQ6S}9~Mak$kYM#e!o
zhQqB)F5@vAZp9rE&b4AV+)5JRa;_D_;Z`~k+=7qcaH~_22q_L6ZpC{zGdCW?;Z{G<
zv=luKx6&r0N^!WAHo?b^F&u8iXfgW6V>sNZ2&+XM2!~rG1j6A~34w69l@3(5IEKTm
z)*w(a2e23pw_1$6CUdVlhQqB`iOJl>j^S{tUnp?rJBGupSjsXo#&Eb5OF>4x7!J2$
z&Slh#;czQv!YY!(tzy^O#}JXUF`R8B9liDgoNdL#c`l!_#BjFNH_(gAW0n}sw&J}k
zStZ19wiTt^ddz2@Rlt;I@Kv~?YM3)+#rD~4;Vu%z{&G<~??=HM@z@JmN_H1+g7l)6
z&>@_Jxgzfcb_k!_Q+!Kb_?GxsGWMmhWEFIT0-Eta$5{hTo*~8tJMw}?GUvrHoFKr|
zT1CxY#6TbG>ttXwmc;dQO#b-*G1lKP`R4<~*jZXicKHA?Ho%E8RJ`5=h$GA86U5js
zeJ#)BBgEKnEfu<ah8P>6CH)XFHqw!XiBrFskfP^cDJyo7Gr&*B3_l&5a>g!pQgxdU
zhn}g!#;qbbGAwqLGtUo(6T=d!4=0AvI>vX}EqZZ3UQCFscE%K$%&zgZ`CL1;){z0o
zbNOI9w$AZxKnca=d3fvwZ7EBhhsV}yDc9xG>)1^?T%OCv*Rh**xI%gA9lJ$q7Ryub
z*sWS>Ay3?68@1F%o}I^TcccSvFVD_noAkXB?S^+~sjEB%k8RdcPk9O++oGkuR#A^Z
zbdP(S<$m_=^|L39c!yT>te!jLdWM!fYCBYwoSddE!KiC1eR5i{J~=I;4+<b-I2u_?
zo;1cu9Znh>(h&dTq%kEYjVU>4Ovy=ON=_P6a?+TRlg88<go-FRX-vsUV@ggMQ*zRn
zl9R@ioHVB7q%kEYjVU>4Ovy=O>eD>Fb15f{spn=OMM_Q@Q~IQ_mON=pl6HlCDU&8A
zjVU>4OzD%xia7h@Nn>~5epUaVF$$K;*%S{NV^&94CCuCdAla6wVzrx%f#|9f7E@F`
zX^sVJS0C+gMH;7(QMG+W2q6J=c(o<wq`6Kio#uO3Xe54kUZbmVxyVTgVdc_@_pG63
z!wr*qcZX$0n$H^>VXF~2D}!n6&V#4aDm%=GyHY{^JPygqU?zulo{G8XO$8Bc<2<U+
znEdH$O}*s`gx{R9nAhnJjo5nnTHSfhRT|E@qV5Jikk$R@bX@M@RvM1W_wzEDzSgwe
zb?`o9LCXEGke+@O-a`#BU`aEDzZOo1m4A2-{7_RA1)pvegmS2HZ3(^z4T=&9UJ&Zc
z`@cgz0m>orpkAmQ)Vyp$4GKe*_^b>s#xCTG@AX4c7oo9eOfyVOsG5oJ&Z1Cc7N$w|
zdfXb?37@_M*()F{1aldM`4HBFSwrDM2)n`D1M;>&;KyF|&*v~zm7i*9N1jB5*-u05
zQ|SMP1|Eb^*cl(+1mTqxNE?j>JK!>X3ytiIZcH3wZG`~MK$4#RVER&EO3wx}k^=KE
z1<Yhngr9ZgkM&4Mi^hknuwA(-_%XFy3usKY@f)hAX&3*!cBljq`Sx9F%0wiwVJPVc
zlR5ymE=T;Afhs5Jg+))5IO(Eu4eqZ1h4+|r(nrGGOfo275qIYO0G9{Fvw-n53q@9-
z=54+Ny%FJW1lgk?yb0z73jHC}>Vi)|g3=f!X(p}=fz%&Ve<1|lrW<g6r45d3DTehs
zp)?cPGeGvu5UvEXfWj&WcY(PR6#31hjc!j!Mp7qRkjHgUy!1Vyy0AK^{wf0fX>=WH
z9nv%;YJY%>|ALhVL20~}bPQL1hx8LD>1PPJUGW7>kQYL!4lrfo1Y8vs5`OAh$7{<%
zsRFg8&~E~YOf>qvbmD+6LfTYP*d<=1ISPAPLSe_}8iCDwENme=#3M!ao9pG>sQ3>h
zF(ZRK^nt%nZA9M3Xgk*3$dKJU6n!4HV$E=?a^ihg?yKHTy4*uz-Y_8_e;u|mIGU!9
zMWs}h-hp3@=dX6qJN(rGy#pVgR}NKU@6Zc5J_8ixL-fj_LSDNA@;Y8)kC7f~z%ZvE
zp8!dZQAK);Wa%+*P`~am4lb-oKwPFo+`b!-XCUc0+L=_~Omk)~I~2JO#VD<A7<2}K
zq&+SIGoJ!`jvK+OrNB1)AeehW(sT3;%=sL8Y5B3|_z9cc(sO(U{SRn>JxBfSKna0#
z&vBu#U|T+y*mEpm;uvdd1ZWPD^qd8z9|iUtqrr@#z@FngFz13I%Z%CbRbH;=_;y*)
za}*lCF0Wm#=P1*bp2N5ATD@3~IiVyEH6y*k0>nQbBt3_(7Z$ys=U9pRSA)XWm~`sS
z!ehgJBq$M|^BcBZE95O?G;G>8Blrf8H0^u9Y^A`a{VJH3L6O&trHV~EUz#?dSA*>K
zs0VuW8%Ea&xHMCfcI{B~JI2Zu@B!?;2dcy{Z<#P<T+FY1v<lHb1>KXN@DZb{Ga7DY
zN?bP;PE*q-?n46<kIgIAP34%Mg3?i~(NwsD845Mvi|QFYaB31rnm|OFfGbVF^P7Mk
zG^1wFWG6htShcNJCLlMdp-3vMN+;YNrdoic6TS${WD4wr9{_VVD2-vH6aEC!2cSBv
zE8nJTox=UWkz8z^N$og2kp+;{P9-oY6j(d;!PEmq#+vk0tew1sju*u)9j~wJSgCL~
z)A4qKm6o71UXzY@A*8t=>3BDSxdkL0?@dAGeJ-)%-OXgP<9!hN4}c=~8vTFlcy}8G
z)@S?~Be3Ir8@5cx8$O(%6#2sl6&l$;^ukAswqq3`cXnDR+84D|)(iXhUAdpw3nv**
z6W2<gj7jBjmtARb6I2O)U&&wCEWNue7FT@l@wh7;@N>xdQ=lwNw~o7Y80brgAA_P?
zDjatkbJ-Nf0j^1)EWZ1A+&$wi=(U901Qg}lk;mO0Tmg=SJdD@)TI2~g&TH2}UJh!*
zmm^QOdA#PVvD)zM$P;ccQ{=4i+VJ(ruiUs6<KpGtxSSdmi<f`v22;bDJiYHb$>5W)
z`v@o$c>o`8Fu8TDW%TwRTxShNak~+2{RcWnKz1z%$H9C_p$ddw!TbcWLUit3#ze@v
zn<jpBz29hpoloW7IJ*iY?p+&94GMJcc3|3oB702e^6qVSE%R<1^?}Z3cS1~d5T~gl
z%l_G|#@7~N&q7W2R396|w&inaM%#8mQNs76=jnw+bOT9G^|=XSSw44KPc;#`=YYZ|
zjIQaasvAetJry@$(mzIxKP*MQtAX|@^Zj!8RL@T6soKL;A9iaTK)Tk$<UCN6Z|^?r
z@>nXXV;{_&K{BX6><(s_S0V2KNnJlGbzLZR{g_|Zn-=DA1NL!OHeh@7MdJtMal3bq
zE35mhkZ<8N?gu~N${PP8$Zvsa!l$2<G#B>6QDY!+lj9}>w$*+-3ho)#c?@nQZZa7<
z6G7r8v%p+Tfo`%G%tDZ!Qlu8?G63w8Cic1!3xkRb$JasW8iwLP{V13RDR4^hDwvlj
zaB%+;%%>okQsf2Zd=A@v^5c}E*BLO)#fS^w*Y7mIDMb$m-G~H}#YjhE!M1!Z)3<=d
z$Q!i4SO+7(K#-*8957=jFs0MMoKJyMig{oz1x1D$v*r7*a#M;A%BB=oHPWS0Uc20s
zqD)(+6uy1e8qack*-avjOQsapA^vMYGNthK!lD;UDN1qw7EpMUNvHPT5Zl+wL5a+u
z=~vy9r8LbpwG%<MgLFguJy7&HQ*xI5o?G>CKhVnv@Dc;b>L#_J&Z=WAr}h83kyG3=
z;p*mnD7^)efi--Vvi_vNfwcvM#-KEYk%9GWNP|H#u=+Mb);+jCII<DXjil#U3XR1e
z>3MDkb1Mb*Jdc3c4T{$@>0!@vDZ-VlYV6MFePj`V<L(Nr$eRh8|EQ%$;08e^UqFJ)
z2>dRhI{-@KH5q~P2Pmr=NJikkV0wZ=T>2a{25jp%l)2pL%TnT~I}tkPfZ~4`9gez1
zxU0v}a!a1b@5ZtGk$EAs$}NdPMnOjA%0}SGOfb6{nd2=I+;g+OZdTW2%OX=!Y7UNy
z4~H7-N*1eCj6ka|7^@4h(CT2WS8)1Zh#%-MwS&|GSmaOETYZC)^*GFY;YP=tnK;r9
zHTUuEDeea&eR!0)&J=}5CS*E1Eg`MOu~(b>j^%TKV;^;^u0@2>8s?%F=76+gKW+lq
zRtu)=6W43h3IFNX%b|1yNE~|$nA<4Ov7ZOC7nH^@;@C$a9RZ1B`!-!`Anp&2^ecfy
z4yk`Z;}4KHcFI5;fC3W7&IXeSiac%7Q(;Ig@6_5|_XYW#f@qApHinTppfp|+cbx!f
zG)UZaF_?uQao2683~g%;l<BT-Go^Ib>!5QDDDt?``A1jWpHLC;H;q82`5m_CiVNU0
zC(ZSLb{d`?IS5C(Yo`hOW7dUOCWoCS+AsC+%qP9g`aO?sO@_LqsIE-DA!YA$>vO9w
zlgn)g%{jNL!8NtL%XP9b3A56#xDIc6O0aKhXq%tgxQ?G)>UB3u^-{MkgFcAt-vN>l
zywvT%`;`WvzCbd9Z<G-{OGfb9{SjQRNjAA<8+my(bxfEOoP&5ayOH)?@So$(D3}^X
zlN^y2ftgQ%W9M2h*HPdob}yJMAQ?NG1?GG%S2BPK#Mrs4GfZ>rd<*)o(g4TKN`v7L
zAU$^WHx_Km=Mu-xR3?tGR!4wrkff(6m?jjM()M85QD7drgXs#2Og3iA*KxVA^YOB=
z^OZbZD&@7yjh$uMGIsj*u^eYPZgG>gGO66i8;SUbgJkUV^{^a=UNCk}#{G$)@HCT7
z=~EV%WKcklz*+UKpm;_yo;zLVbH>A2^(=(H2qe>`6=0T9;B@IWFgJrN8H@KB6FAp_
zChl^p$GhS`$Kr>ev|ALpUOgPdHJgg}xREEj;Xiwy=b-cyNP3^oz`Rd^y-)5CWmN^G
zF^u#+Z6UP;$)=%i(+#Zq4l+3MHj}}gs5i8Gf}|%J31%<_4zZVlxdasX+N7;QPt>Vw
za&PxEOV{s=s$(rel1xu@4U8-XrSY2dM7tsF1W8Y{AI!5LS-Soil!MPDE?uXyOxP>E
z1^q*yNF`Hkey?=eo?%u(y~gVrfxXgN*fIlT<UVt~f)55mS@}J~D~+~eUBkM%*Ny%P
zTV<<N|Gq2tgE0*K*V`tf?!VX*_3Qcq9zsY*)D_)ICc!@T2A8mVE0eGm2qkjouRIa@
zaS>@{@Rh25{E*373A>nK`Bsj-*3BymyVmU>cO>jux3><<*K7L?y%FDckg!iOEO#O8
zRf%C&xgGQ!#=FW7%eQr#JzXD<ekANEhLvu1MPiy)xFvE&;$7jIG!qKbY|B1)mV_PE
z17RD((d<hT<Gs{vd;>EtVJ~&hV47?2afv<8P2;M#2A`MMm+5}C0awKHbth}3uYMl8
z;9@+ln(kG8MF9Tn(yG0&{>Sovrdx~a`cL3JAAmx<-rs23)}pb{o$W?FT(z6xk2@6e
zSm@aW5b8mw4oah1wT`%wT&oZMa_hX|2rx25o*G!Yfz~c`BUksrf41c@2s{)dZFvQl
zg%sG9p8@k2D2-vHEq@N_C`e`!zD?J95cda1HlW4nnFKWc07?5z9)@NFlJ=VirUoc-
zp-E4L_S-+9{bH^!TTi~KV?BpxO#5vKBlSUPye94UTu9?UdL{wpa*(v&?LppsF0uVK
zVmYw=u7UpbpvV(O{~z1$UZWsW(St@{`yB*Zru~LLO;C!Y<m#&b|2JlK@_yAvtap$*
zdz$OK%tW%2zZD6*86=(jHZWT$u#<lf%>5w!jNrJ5-LXEViHqE5SzqAabLCz_Ux3~q
z$0SsGgJzfRw{Q*s+wLSdQd4-UJ<hF5SIv~E%Xqg5Z|J5lF|jF3GED)C{>i2#Wbo~X
z^cSXC*4bimMpnh<P|!~|hqK*0#&H0-*$)cw`bMK|TmK$|42^N4nYe0~;LmaBd<wE#
zKu8^~EEkkUwQBuvCArop{FUY~1&lO@#{+90(Asb}a#LUYXLIO^!0kcO94-PgnF5=`
zU0`kpr7?^&hgTuJ2+|X4W7D<%!2Q9IZ74Ts4xd5e6Oc5AAHaM=fx}s31ab$8JZ-{O
zXbxTeraAbkj+Ii@9CBeK4oc%SX%77$^#Dn8m;z=ZNSec`EM4xl<#UP6p*_oi&0#L|
z=YS%yY_0!~&7rbUkmitQ1U859u;n+0mI+FcF-G{`nuA~U5vw+Rd9dpoVItWau0R48
zgQPjE0<)3=o5L+&ZUpJ(aE6J{u^Q3Dh{WdL-*e?&`Q|XqgwxHz#XC8@#CK=Gk)%2F
zatq3uLvOcnS##){*c|$mHHZHGz_104tE*Uhrb@+@&}4va30-wd*o}<r0EKw{Yol#j
z>Ga+1ZnPGz+P(4T4d}cKvO7Zf5zKK=8r7-|$Ccz-lkits!o^^uB}A+G-cU$uC2nN%
zS@_SEP&5)J3WB613<J}b0$aj$V3vc@7)Dyc!;tO=NlWl;x>gU|9~{}$9~L>Wdj%Q?
zK++Q41M?OIwuG<2oB%~qO?oP{gpPmH5`0z18jfhpz@SFqFmD)2<27jsEpVkVNLoUF
zFug(25_$%C_qoKD(ETi=nl0fR=#K$K&Nll0*b*if1!)O0jKG#~K5Y3dVOfGw<US+(
zZ!N*E`iOM_a%Z=9olluawuGrj;1rOwgxO$bQeaD10%ie7w}h1@LdUw4CORdy1pl5Z
z_sX|~JtmxP3A51>nu+f&fFnsuXqMO#nkTk|mWeH)Rar}D?YD&1m?AY2Yw`4oEurmT
z-4Yt<Dbmfz$U0Dn*E<?*+Zr<(d1>NCi*VH*f<KQ#=RuI&6T<so-T<Xht=f28Nv?Gv
z{z^-j4@O$T$iUi6TC49ycHq4&X$h6jhWmh|C3FDOoB~_IC19q5(ilcsLMfyhLDCX@
zo36D6_XkJz41`6tgomK98ze2^SujsgU`sd*=1ov!tVvIWmeApET7s|YSa%>A(-Mxs
z$OoV_UXzwkZM3qgfTSg~1k)5GE#amh?>?8<5(cmw*b=%!zbhzmuhIX<may9>NK1Ie
z2y6+Lz?R<<4ksu@{xHJ-))M@xk64c&cXom65CJMJVE_`?A0#c|Y%n7!uqB)aW)euZ
zgd-+G$9k3~8YH#^|DG%N%D0514DF-3CHxm_hic-xSHY2_B~(kCBIPDdk!mEigqme7
zA<u6K?_uRtRjduDq+>~yr2^7d`aSGNd5lg~Jt!<hPA&sQL#ueLDHkO-Kwb^%G1dfc
zK2(aE-^1fB?G_yAj~7?aX{7&hEw)}Hs*=;98Z*R1RmrW%;q4xn+~!AB$t`A7&p>{X
zQT6{nqr!qJ{XL9y$r4rZX;HoCN0qFjdJ87s@S{rBQJsMN1*7Wte@4|FQ8h(W5s51A
zw5V7XQh*U%fX)~!qx`5Mx&X6qEd$h}@&6eWYGK$m)YZ?5ljFS49jT?IL0x?`%tZCG
zlIe0WOf~>XUHuH84GM4&<ldmHiPI;+P*+--3wb6;w(x#YTw3ZkYkpN_Z`N>m`I|(1
zD^%Bj<Z0<hlM2i)kx?7?t_Dbj^fvpTvlk@2&Ff%Zp}^keb1)x+B4bVH^1TflW}x&p
z!Mhr=3)RgiyVhTf>JQ~iXH*=AeuJ@JXr0e?!(%ZS2TAKo2a^WUo9^cu6SkGapspJ|
z#Q%K7qX<d`AbD`Q*63kZ!EiBC%50VTK`V5-fx;V%20I-@zSW4*P}B1;$Q+VVTb-(#
z*7ds9(6snyR9=KSq-3XJ7Ob5OlHJuqstfOb3He=+RLxsbH3MXK_3ebJ;Y&~NNF>eA
zQC1O1UV3`k#E93aV99<@MK+JX|Mkf1aOeyM$=>DVVCGWbF6;GRR#M=8=XNlgL9)ww
zFfiwHHT*KcF6;5(FwI@o=b`^J4RDv$8HY@h<O${1#)576T;eY4Y$lGerXoNRNYYai
zOmzy}Wi0|zp91sH5=?VYB$TF0wtOF6ZkKgU*)D4p)5OYam)m76)Aslpq;KC1INurU
zBPyxNNF<v(u04^K?x0GEVZx_{33gwHKz9%*oMh6k9Y|a~&s?&t9jv<lC}#wtp{q|o
zkg*_f^?6_}p}>J=HJEEamTb7LHzrUcH1UP1vV<nM;kp}2I|9Y6f#O?K{8ClD$5(tE
zN(TbP2ZBU>M#W>Q>YKje2`C*46!!*--%;_n%KY6|{259=iXvaNcp*^yor+&6Z_OzD
z=TyZVkBoq%^QZ+TlL9-BL16lW;vbsO>^!C-90qvv8Ye%gfwwrN`*6GgR^(J%yGZ$d
zrlOjD(W1K1bu6DtF@A2JR8f}+Wq&aRNtg(d{-Tx%gV$FL7xmkQ-(M_%?mSSquF)|4
zMNQ+6(qCjOL>HZ|&}lp??fID$o$lBC6qL@#tRc#Sz@Alde)Kw+ydEU4i9M^@5YKlv
z<U4uo1Elj=)s=(kvyh+QH9|M`suYd|pFn<}*9hR)t7`L_Hvyd|D7p>f`(D+Y*J?w~
z0cCUhWuFoh2}@Vrw%jiX?TOo+LGn`FxS*Z;Tu_3qt7v!5dsu>#p+6oZB{(VQU3~7e
z5}Xg+OF`kOMpu_$yuT4yG}A%!gK{$u`7~+xdZVU0W+Gj-O47&0bQzBcI_3w*p^OW5
zQ=vM?$GZ^eDv*@%R@IJW+;}2}Y>;%;cd9&wc>wZlAnB~{lFqtBI_vEfI_tY7;^-uJ
zG)Ow@>r5&vD}^3*uZncxo&h_$M$oBGU3P(k!1SlU&U!MK@f6r?E(S9f6ym$>rGdFD
znB!xxYq{`Z2Yn}WZet*J&>w>N0HizUr%fo^^0~wgx(XA-n2sU97qq}MoCNbd1*Q(C
z?^u6QV7ikac%aB(W43&kTdsp%P}V`;W_-T9cDW9^Oj|l=-##Ain3#eNdWTASgvn+H
zT^(tu29gfi*9@N)Cg`B+L$@9%{GPFz&_RD2lvF;eYo~I4VKnTZTO&wwkaW=f!StrU
z4tg?}b3nR-Zk??C4)5{M#DglkHXov}gT4|<O9I6bqi9>hsrWFCBK8%pgVMEuVxPd`
z6e>QVYRMxsTD%!b8$^-)?tsAJrBr-Oc~Q8p^t;=jv>7D*?sH%sr@(&qB$#hO@u?;>
zJJX{`NkYF{lGyK-Sdq(3T~_FKE2!ySV}mj4SUwl@8c(a}<xC)Zjp(^>agg*Hw+1=(
zxzl=$n$WEV3U4yHrWW~v&__Y=H7tjRRQ8>Wh6UCdL7IZB@LeVkx`QTyF8vfb=ncB_
zNYa(~J$#=(yL8}0q>&G=HmGcN9>ZW{07yE8o266GK$lzmPC-8(zg6ky<9r5shq21t
z1lZi9B6}y`Kexx`!qg0qYzk}vb29~Q3LF9RCMb<zWK$qK1&IU6rhsoVj7<q{3LG2{
ziyUcdKqD6<HC_a!9tGC;nP57ABHK)Q%2%V~)spHi50>zC9qS{+V|E3G!b&et8n4N&
zz;Z~7L9#2b2}~(Sb_G5(k=d5dRgt1aH-^_S&SgPVfgd~o{rf?YAB_G#?h5>B6j<?b
z&oo@_3ao@Je^;P-LK}~CGeU(f=nq}jiO2~)IJwT)cdeh1JNq`}gx~|x7d(LkJ`R$;
z;CV3nD6lVh6U=KMy)MZ&5jvJbN4!HtyTC-*!xR6$EB6z22Ev0(NIk0U$g`{k;+U&F
zo!DnF_VZ_#I#Y~eF3^to3u6Bi6y*Vp3zWRzG5$P23_vofEmRE{=0(VlfW(0piv!1H
zR9oUZu$c*5ArWUy#lQ%XQEiW>Q-P<XESjY%QZO0+IXX0kP6LpP8-u}|MS&yAxnL$x
z;8?Q=%%vb%g1j7<^SRnOcQV3VI0>dX!rcS?%{0If?o%)ygUk}dSilm*aET+_&$Pf;
zze9kpXo2YoO;eTvNlN2jQYkPGIbgCtkx*3Uv%JHU8{y6?8{x8&{!Y8x2v?>pFM9a)
zU2H=liOW>dVwNLEwMK})2qZ6h_<CW{3r4cGxZfHSPBQ6C7|H6IOTe(v^fk(Pj;1-1
z^+J#?Ao1Swz)YY(@4X7l5)i%tf_|chF@X&X!{wT4vDYcD&ABkgj%GUoY@-FDvK|HV
z00nk5hrzrFii|Vi%Xc((zp`P)E<vP3VN5itPQa!4k=~%9_cBrr7azgw2Ot?PrkF73
z6%FT46oO^_Dd?UAg)cA~x~OEHQIw?X&9;0l$&Ye{N;=6XStH5kqgw+-S{nW7C^7ak
z(PJ1+x|xf5I3Wr=eJ}>m8Pa(2j8jhc?UoKZ&$QYZy4B{wa8;1B#+lL@H3Vc<h1NJ*
z47P`AE0FBf^beeWE~|Q;@(!bYOWh2I&QOrl%_K16D6nqkf|&z~j4+|g*Nx-VPN<v~
zrgD5;$MU(#evU3v(VobYRL*kPy#geabB?i(M<0eet#V4CdlM);$!O@x39mAu?gTAV
z#9@bH?}vH1!p=3b0=sm_OcW<y(>UzN==>_I?F7k^>aZi7;QR~l?ORZkhgrSl<Z`+{
zXF7@mBpu`1P6OKc9P-;Bsfu@<c8IVfk7x6~r=iuw7xH7qcrTsDFu&(yav9bYatW{T
zgoO7T*`^x_c`%4@*CQJCEiZE%agvycyd8K$?}(E|em>ML0ZIS+zGHUhHZ2@p;|aXU
zqRy|a^V|9aJnHVL2>UX&3%_u@#}M{bgxdhB%=JMfqlwK#sM=7Gp7Sx>-wBeQ^G`6p
zf-o7{GmhP$vG=F8mwpk(b5JGPyS%QBxr{49IR0#?i|wY+tq&60mw}lJg6-quu+aBy
z<8wSr>s7dQB}i<~EA(yqTs~Czv!O1ww?TI!NNj%#=4%ja+nD4$<=f8Cw*SPfUqNE~
zXkgpt>WXF9hPv3UJ_FA$Kw^6en8_g6ZZr;SwewAxRM)mI!L5ryQpSh#{d9MLstpyf
zw;K0XfW+P*Fb6@fmx;7a_3agCd!OUh#~?}T$ojrLp9|6ob+H}380#<Si|qjr`h#Hm
zek5SOZ@Z<oJsP)0fyDMJ1-@;cYmRXI*-#hT7ee=3kl5Y@W+w=?dyd1d#|5Swx@p@_
z;?`pzvE9CoZ`<e4O~}uNy4Zdfy03%8cD0#sa1dbLdB&|;n*dk)@$}O16hJK>B=Hmm
zKIn5zOfVbj5>G4WHU>#Nmx8$jgm_Mv=Frsy_|%VQjEc}7uY}qnkksq%LEEW44&?(C
zvAqfRZv=_$V_?1jq1lW@^T@5`7r}Zqw-201qYLq$bBLdy^*w`e{akGpHo8DE?`RCB
z0R_%Tx`F8gl6g?$z?{$JAtwH~(w~FwO;R)(`a@`d^Pro++z2u+yc!F5;ni@7^Ps<I
zfw68zfK9Z(dC(3p_fTL;9|Q9U1?FKdm}fwd$;R0KF%SB8**xeE(?H5=mzxKbY0C)g
z+jlLWi|Kr0-_nU~VwrLTK8&=y36hn*uNgiqOfWw>3f=#L!qZIp6Xr+DgOb|BsypF0
zA2S-xkA6gu;~<$IHJy!>6G-Mq=Ybgu($9GPZW*)taR}O9MQ)yf|6I=91*O{=ia7Xp
zz`RU>%ekCO;BKHahLPo5CrD?2<ds(6X2|ln8m1%$NAA4{);Z%E3GLw^8P%tPnMi@7
z`c+_-fg;O|GnXIL?Y=UoZz5LK@k-1)aaS8%$Eu7pnWbGRtgHs5@tQ2{UWar5Bul&F
zU_J-Q(yrK4xMTTT;B{Eqbz-4ZLG}F({a-<mE=J#9+VPF}a-fgCMuGJeA7unC?aqZQ
zPPrD~!Q8c`|Eb_+!D?<Gw2;rxn%@`P;7TEm<QD#mCbt;<<@dQ0`y5tdbg=XPPJ!+u
zcf+rkpvH~3)o?iI1V@cSHq%sL{9^p)Rzr9Wwp>AaTj+~G@j@!bRZ&}CF&#>k0>$3~
z#Ve>-Nj0C~E9OC|MxdA)^zFA&v9c;!=_@vZQV|sekN7Xsf!fv+hSSA?K)*P7k0Fr3
zBlhcr7cuG~7=CuZ6^V>1(^S%U%#ZA;P-_S4Z9w*D2;ISS1=X4ZL9JQ5P#$*pmR#$V
zaR>!uLN|tH3mXjOfeg*(dgH*1rN9-)MPSYcS&>mDAw)gs)jXX9#!;ZGreZV1+t&Lu
z-$=za(mbp2Di~M>ij)`~f2Iz%vBKRO=p5>qI*)`(U%MaQy_Bit>WIF%($941le5j#
z@}MK9p4<$>>p(KKJm}Qx1I;~<AL2EFx(_-%IJJBa@*z;@!8uScW^Jn{r|54u(VZ}B
ze~DW^LgxpN{XPWuQVjGIUW1Sip*qOk3!w{`4xls|sP+@C;0@qQ5qGsX|0Y$(-$}SX
z7F4Z1FV$*=zuY62+VE45Yz<}#9(SBKXW>6<V-bQZ07-4E1amb7*2Ya>ZUE_Z#!-`r
zkTsDeUU0k)%mjO+9Z<T5p|}Rz1LhG5?2%pt^D-#%nF(E?N5a>^%O2_EaR!SD^mUzp
ztBefsXTRt~WsPwJHs1z`{#V8}V8({?$B$qE_#Je=0)@Xf8oCj~AF6o?{*b<BAKn!e
zSHO8j5@neyuqLJ259n1!bS`!fKvL}ooVKj?`jGQMQtkDO3ERqIiM`@P?}Q1d_U_Q>
z3X*Cc3g#>dtoAuzW>8?Y`)X-4@DJ5~Ba~Nz{;t~n6eL^urrKY+1Sw#(KY$?jGafd=
zr@%Zxfz|#JnCC&d+6S6UxK?vh?JbxIR{IA~dY_?K?I*x|L4nn7&4VLDhzv8K|Ceg_
zbsfv+POJ75*o}gu+Q%5%c<tP9r&W7CbZdgb6O2Ys?JLa%=?0qdD8g-0?OoAo^c(-%
zoEmK0nS5kqZ*z)7U<-%PlXb1%TfWOFWElP4^4*Spg`ev{`yRbutU<IrgeqJqHsDkJ
zd-Za#2A6>Ly-tjl^;`ct^y1IT;F*Z&JbrPpq-v9+o$-5^;1BzL^G(0BSSPa=a@i6j
zPq-HA)b55{%4<yZVx8#vm*MyZkSuwZIEA$H5af*@S@K>fOWr(L$}ZJ8$efQ72jwv*
zOLa!tLT&<*r-jQTk&_^fr5f|KOlNBu<OLvE+AjB(w&;{Ne}2Q{3g2+%ljIdnWcob(
z=iGBU!fXY}tn?Ky|E9qC>W5(7r@)!)Z(x1^$^7|~z?{$dD=E&OADIi&+()c?IfhY?
z%%8`DIR~WY&q+!bGhQSyT&6B>O95<sCKJb4rz5~rT3~vXfLTO=^XFAyR#IRdHh@_V
ziqta3%1>3w?IU(9n?H|pbt1}ZmzzJAY0FsX+jp(^S&nO*q!*b~j)nIi{_P;yNA&f=
zq8H4QAHn^HK;gP3oo0f=UGUjKiF{7e>l`O`8UC{a*@qy{fTROC0_JTB>_EN+a{{FI
z5pN4j_*}4$h(qp{&>TCH$O815An8mp!BnEa&ZH%n=Ag(U#!`jOq)mk}L^cv1H@c4H
zb2Uv>+FP9HNyf^J#LlqW5hNYTvnC85uj@Jps^5R!KLWZ#K;h?&hAyk{#ir8qtb*sI
zrcZhiow;tk<|bAc^0Q0#`K@=39!f5R$!Q=NUgqcxtEG?^^BP<49H%?GoLeB@$ZKqg
zmpU03!>wJAcYx$M{yawxbyaINEsCEs(e^_3^avuvG^)ZAba^9d5S6WPYDi~UcZfV%
zc9JAM{c`kl{A8j%$*Fw=@#$_4H+e^Qd*_;NPmoJfbSvk+*Lk|5vod%>ZTc5@mU@oZ
zJouL*1@XQ7h3Qgf5xO(Ra*k7-kvxwKJp&4{r2aJOwiTljjz|4r8fbrrTc1JaLy-L@
zgy=$L{RJV7YSq5Nm5f@y;;+1$8$oL2-P~%H&ZuqW(b`NW(v#M>ZaWhOT7zWWHVw=;
z3S75s26GE2jbUWn_HRhff#flqZ_~B-8QZ~;VVG))S09DOe?j8aUxPVDfnMz_LNY*+
zJd>UZUfo)}T0e#BYL;rgs$-pnXv|VA6Gmd7G+vXXT2DxwL9$ev0A?&mmTCiny!%|@
zQ@9gMHJ56$pnowaGSTS!OSRMBhtrG#n?Zc85x7*Vgfi9hb}PIpK`HXE5h`?Vf9Oi7
z_!Q2s`iM0NxwEG`&PrAm`=13!;CztuKP$j2r@;PaJ(x8hz5c0eB19)>IOBDIGC7qW
zgE_tak@L{j85PI6i1E#G60lDGJy-4}Jg&nma<2&|ttWl_2tc02(+3#Wg%`@tE`4b+
zUP4FP80A#qxPKqgc^62Wf0R>j1lL}L{30ks-C2S2e+H}eXeat4uG-(@&oStH0kS`Z
z@C%q9D7*_Hd$F?8L1_$A?Jr!(sFl1#uLqK{!L-B879e?ou*O8;Sl=;<VUAZ7A;f=&
zLT4~Y{C5JFu@vaPbHL07MQ${qEBJ4#vR>JS|H@L-&r3AOm1Ta|kf_{;k#gz01ZEe3
zbg%5&cPyW)><7Zxv(k&Ng7VcM>BVm|=>b;Ra51AFtOm9~_jXWtv(X5qg$K+9-3zWo
zFW5usu`bH2DQeB`p_hTWN9^G=V14Nxv4=C5TDnK<mDnTpHa#NeetrBdkq3UKf4v`1
z7j&2Shwc*nDT`hD5scAMO7sNp38eR7P?VoAE^!(kK*aAsKE!MMl5vSs!fU@k{(;wc
z25^aU7GL$sS_0<>$)vB7Q<tXOKyC(#d}m_rx>Q=M-CMuhjd#2U+Bl<f5dVzOZ+nmA
zJG}5Eo^qbP91kH{OWHRX3wY`!Kf84Q6*}#$o%(e05r}6H<L8H&TRY8fz_m*uU(9R#
zK67iQ3$NV>c{Q&wk8PYZUV9kw{k+CJwsETQ+9AlV@*4Bl#%aJj{s8$aP#eC^*4Amj
zJmN5_$i52M>s6LLovA_0l+NNH$7UAM2-3TwW|~OuW}KG0Em!K?HPJPbeg&q~Ajw@5
zr;sUZ2Du@xF?UUzHoP_vavxq}?wUBgcx?vcX}reV6+1CryB_k@yvE!WJ2}kVPRQFq
zlDnq52AR7XD&(%`|CYONP<MrryAopnH7Y;5lzu?JE7ZAr6|ug^)G*bB+V8%C{5h{N
zg@uk_n3JzWdjg4%)z>L(2)QmOGOj{0`;;Z~G#|5z@p?@SOrDY@fxFC`*Vov70w=CO
z0{NnQvQt3s8iE+QgP7=Kr!g<x4)J=BR7tYamc{x5<d1ocRg$8My6aLrNCipeQk-1s
zt%AIS*H|Sfx;kHh{4A&qGo0!qvr2f<8GS9yuMJPuPnBf-)J7IOmHh?JGy1K{bjeX@
z8M;uAtbx8W*~9Vi!_fUzaUz#4$A7LLszE1{x?EY5fN4*GYmUKS&Z5B8$OT{~fn*Kj
ze&HYs{P|pt7Udbjo@Fr2HPAZfucQG!LwFU;%OJf5s$neHmd^!~V61_<Fma6aJp_1*
z7MPwBV2)8>N`D6PBL(KcUXCdlgh)$cw*0VPZVmL&QrDz4Qv9XPMtSXWYam~nGX_lU
z^sb;Ei)-bvG^;vEZ!p1J31uK9l}X$^^!37`7p#QxaK8p9+|H!dtc1ALJ1i)dBAU)|
zvVNm!j#rHlqyb28^^OV@TT!u^lU?U3qu2>b9RkJ4fnp~r<~kYue8nM98W1Q>3l#fO
zvAR=rj;}ZcN)ttquWYOd6o*r>w&Q(7MJ})ALTL_22J#hPuAsnyd^?z}pvZO;y8J+n
z{*Xg~TJwy4Y|sXN!cDpdg1CGx&D5S<;6#U_jmpscG%W7{$<X|;34>nUa53LI{RP$`
z=pF=x_ZSVcz-nhaLQk+7MR3ND&6a-fckL<D{m4sqU9J1CzifGx`UH%929m~UOXJk9
zRycm+G%q?SX`IPdA#RXNjQ%vnZR<`>j6BC{0^?Gi^`KJ#lJaZ;rkDcDvnQDDponKW
zz4GO0cTboYwJ?S0t2&m?1#_IJ6Wz>6xmq0xvjag=m}$m5dLYA{R+#5QcM2$+VKhu(
zb}*tY%n5a|WS7D$G5NhBD9o2u>cafimd&s$VQc{?>-@>{5Jn~;TOi*CihhPr-`djG
z?t}a^NDBRXyB+T6<AZ*%%dkhB4xN;EKZfdmKvL){Od^u3Wi0gHY;Wr|rqKU{&hH>8
z^w<iNF-Qu%CYb8Hu*!t4Q0OfZ3cV*9D)%<dHL5NE-iY8Q+xeUkac$86rV44Bo1-nk
zG^fC|MQ1P_L3%>#rxnlsjWJVlmVL@j$w1+mXDjSMe3fv(1<JqJm3u*1dXr(WK15<*
zGxPJ~1YF=5zuVC#8Hk=S0RhH>#4~OP(&BS56H_n)o(tXCpzzH`*LcQWBWlkm!Hn*x
z)X=WqbTdPI^0P~Kt<s)x)XwjNORHh*8jyI#QM>s8T-yct9+2!-9JM?0yvf%g9{`DG
zd@P=kCu8L&6+GipiT7Km9s@~*y=M~PTH{z@pWDt&*Wy1bEOs@b0ZD~rf~i7*6;=mK
z9!NWvZSohfX3)e5v}xo+T67yIwPGmlW_JhEnF3q%C@>>Hk+2C}!MU23IhW(*8Q1V*
zf(;W&3J!nlFYS~jh&ACDP~Wg)`CL%TU)j;kOd@M}3KB69B(<CpnDx2SYIy;4=YhhN
zjjpNXGmNNf`PZB9;;NK(u_<6|#>meuz2bUZ%Wv9(nOF~F*Mp>%-?SUCmLG<EKS*ly
za6*l~RiQ@TmN?#m>Oqjy=<uLM&tP@DYdh1f!++N3chLC;BsKa6nBOR{Mw6~VjzGFb
zFEJ*<Rv()9kL?|z366O+pp*-e8f^%skOFJ81WZRz<T4Zbf2mPFCcIx_LYZQ+>?3xH
zjgm^JQQxp*`CL$=AK1~^P?j3)heY%ONsTTE%=+AEH98Tx=YYb?jjpND`;Dk;)b563
zwWPE+{i@q7rUCM^OCMOHYxFr=X3Fzn>=KaF=yP^Q*66K}*Mp*uzDhf?P<ayaBfQ3)
z$LH)}Y|BR=9|lRy?@y@t=PT6w3zC-Kq52a@YW`W1FxRTaYWuhCOj?cqtoh89Xucq+
z`Ft?7D6r;>!88Qvn*Yj}h*@=M;x*fQl_ps8U7^&Oq1cuOf$2|yHGeLcNubF0CUk|G
z@Ah|X*^db;OcTl!r)3|oQ+`9N3EjM}5<Xq|Wjn1H#V_6b#Yn_OAU&J%Q{z}Z7r4to
zJGzB|*a0j+fO#NsmtTUk_}ppkvJSe}gTj9rUE?nG%DKz0*yeahswi&M%G~AUb=qAX
zvgHW>dtvNOkhsf3b{o3O0m%D7;w}%_vXVam`7@BX#v=)?@n{9tcueArT?@A$aa?X^
z65(1u4M)EB*v_K0_)piU3!OS3agAnRiYd@F&IEG?NV~=uW5Tw=bd7)6-j_5%*BA_?
zfec007!PI)1-iy1U}k|L6HMs;#WhA4U5pTh3tZz#JEba0FTpi@mGJ4xPuXdGpe(Mj
z7>QU2(yrmB#<6@ZaE)i|=+g{D*SHn|R)EAcrUq&8xzk)@GjunC!WSA{;~E=`sC$yv
z?*Lv-s%Y^q6?>B3)@#?;s%HRuVC*4~xW-mJ19%VeA&|JnR=XqD*S|sjk=NLhz&3l5
zoK=7qfW%$4CAiC772IXJq~#2#wgid0++h;tT5r)^?y;Snh(_FH7<7h!#9bzU8ApNc
zauJyGLE2qjF(zWxQJUCgds)bvxXYDLTEb9tmo;EkQJ}lr31$l@@`edr!CjjET~Ff2
z1lYU@6}Za|JEa?9O>h@qC49Q_eRkSqOd^+`yO4;TAnh)GYVhp?6GPxG57^PK7>Mrj
zBmz7J5_fqwNQ=*%<}PnQ_f=5%1EXu)B~s2^X1;*kcd4RpPgQi6syAtOS+A!O$6)Le
zkhsfwJ(Wnh4)08X#9h|gvTIfZxd0@tu_3`VZmQrKH%q*|q1qKBu90KX>RJ!5UT?LX
zf8U7z>`5j=XCg>k<6<xuQJ`xq1alckyG93N!nU5JiA}cGd;|WoCs_-n)eJ?~*aW7O
z0$t-FFuOsK&L;H#;u>v?E_Rs=7r4f4cFH)!n&29~O89i;jdt34CXuf3FC^kAkai6}
zHIC(Tfot4hM?KV!xW)klcmX7?(JM%c&z<HPN1^*4P`JO*HLh`~5p_?}4yjlwRW$B2
z*XVYOc8#UlHGYAyA3)+7OSNlcUymmmAaRYQdY;k_atmH#PqIvZRB$BZ!60#$s}kI0
zMFn@cTGDbERA+<4U6z=H;e;L5^-9}0#WJD0tcT7zkhseoU~Z>Cci9Q%9*}mI`;3X0
zRZ0{1VBmzC@t^Lp7fR1C6y4<@n3pNgT|NQx5h$|Tgs$K&&Hk<@@nce!&js$X%1*f+
zu_m~SuM$38`8qpoACpLT`38yj3Z&h|PmN>wT;MKi?PzP%nYhbu2=FsV+~skT1IzNc
z)7+)fYHXK-!cQAr<1U{YQQYOs|L(=MVjpCw_*>nP)bVuw?9%z00bZZA4fpHT$Btna
z*vbdhZiOIURpJAgUm(8AO9v+5QXwzhz6Q^fK((tO6JO`jM!&V_SwOWf9Dqv=8bhn;
zI(QSPHaB*^$$O~CvW`N07u26;bbcqV_uN!C8vWe&^69{OH=q(hg`Yi-OPL(t4nusH
zm-t=WALN^cqt?R!sF2^l{UL`5x&`72Ug9?oPRi#Ejzj#Imp(+cPFCjoLRD_W!(C7z
zKgD~px`0g}cI2gwTX3lnFP#JNY+kC=9&Z$itwj(o;-xWpxRgt+S0FwMIt%;cKe1?I
z8*sKJb@&P4p9GfD2bVg5+VN5T&jAvpkRNL}CEse8kGmIxhHrir^HKZXKbh*`3q1=>
zU7>#9{l7=r-v%GyHt==?*b36G^MLs`1$mtZ%=;9$sr)mTA3(B|y*e=Fb2X4={^b1U
zQkdpecIr)VC6H`o_Xg7wq_?tn8Vk1NbD7$Jyv~!##4*+(2r!5in4Ym<MpNKc_B1f(
zQD7csgP946>^El1Z%&un%8o8W4azT)^s_FY^4jILvdgsPb$H*tYx!Kv7_*D)r2Cm{
zdCe7RSq75V;eE~UX<>rR?RC&y0}8)n(y!Z{^nA6x(}}d@tAKXMcD`pc?D@7J$Za6$
z`SyeP7X|iw$H065(pzB<2PS;ZB-*ko+m-5VggJIGc{gK=9i#)j5CrnMAW){AHrfx=
z009aaNX|f6@V%ed9_(X_?et~7Vmm0c2oxU+6o*r>m7TuRR~!YUL4o3dK=A@9wzVt2
z?JLfQ(mX241MHK5qR$2C?O<0<zTISUIRY#V0&V}nPp{7ffhOBkI{AUtBEV_}k`D=-
zd(scIgh^UrN7qr2Q@4#!x&<U1uCE6aj|t&-(g`mpNZK2imTFr*7bIhZUFAhT84tqp
z15AblS`h^DxggLSyYe4?pr;Vv2?iSZG7=a!E?;bPE7@xNCUiI7;a==h{&^RF8vc$y
zqyA3+-3ppX)ciNhzrZLgX(Z>HI2_C8f<{usPCA6>q>;Rd5U+!zk@%YKX<>p!@?Yrw
z2Na%R?3=;qV$)`LOn>}7<F$p2Eb9-%g!f!*e$5e2F5@|-va8*PSFrDpd-9ErA&z$w
zhH+;hUKVL<bZ9$XYJ|m`Evvr{;I28fAWY?1xc@?e!I^(=Fh15)JwHi$jnSEdu)a(1
z`et)|5w5@SqjoMP^7((TS;N#k)Agm+ao60mkm(BHHGE(y;=7Fs&7?prcu&79ukpi1
zhe;?fI!xMs60UbJ*O|1lO}SHlXoCL4gzMAG^uyPh>oRM|IN!$e(Cq!F{6jW};>Dji
z_-k2sfFeJ;G-oRYr#CQsA1XM2OW&cczXVO6c;RdWYQb?b<rZ}EpxP6lc33`KT@PX{
zUfRP;a=>;sh#f$Mf92sjVe*~hNf5{K5)U?iN2UjNL%frh9>?_H9eJVQ35bt^&YEhy
z%Tf3x@Xv$lv_qfzqDioAeK8a;XSHq%@-hxL-hswjAbSXVUNE0g=n3IxFh7DK@0zfC
zU)NPJ3l+l8p5U!?ZmamWoq$WlE&e`M4oXFO`@dl54_fAfkIJ{=To91-_BFv|gCd`s
zXb$LTLbI&PEue+r{fuq_>_zS}Do0R>aEj0(YmQX|do*XS##DfLE;*s=<x93_{Or=H
zXjrxH#;j|5-FCRx2{E+=)jly3nAggjFinLxo|mrgkM~-WSyMMdyqcHZj^g7Ha_Jk0
zM|kNPJj>Z3mj;z$GY}+`y88+l(^iN#fMim4zf9@|$dqSSFy$G5S(5#LoZcbDx6mZn
zwtOyEl8y~<r{<le_`ZP6&p=XqC&7GAfrI5=VEzDEbvRMlY>eSNQ9P)9G%^_(mq|wI
zZFp@DB-4-PV46_i#H2fz&J;Lh83Se{NG3`T1;%`?u1OguN;{c0PLyUt{{kA|GynU+
z+y~MVrT2oo`CO)N0nhwfGjWXdaRhjj7MPyrz&uNV6Q$R{yh4E!rFX%+4T^kc%$A?}
zl$$91SoX~Sn{TvFl-DjdQ7Y4}!>9PZeb@RNrTAFV0Vb4FqZ5ez7)YM=`&wbq3VQle
zxc?I<{F6x~d*kqQlL+1IU&zs^@mD%s1*S;sCsmWX{*TeDqW<5GX6{C1IUx80kA|uL
zwT{EKenw7Si@diTIpG_r8PG`v$s4KNz_g{nH&U+xvj~*N5b{RqPDtB9f+X}Ux`FL%
zlm5YxACY`nl0FaZeIQwqz6ItW1ujWXg83d4In$)9!jhD29q$e6R{{o@*Hb$iUB`-G
z&SG9qjouE&hov-Llh;$*;YtgTyq-D)%m9$Qp1RnSzGL}Z72gkmBwWctse&4r4E>3q
z$U39{kFTfRl2D!T?MC41sk>myyq+4V^0)K(vQI|^U&pA!2ePw*G-e`02cuQdos=Ev
z;@@>G-c6W-h5cSbW)O9aPjLouCJZFbAZ|3J$a`m(zZb4;lB!3$LHXFoyrVZtWu1I#
z)LseovzuawS|6WT8zpyU4e-~n!(Dt_J6N$PPrKB;2OVzZ=W)LdSH2gcJg0-Ivtey8
z+P3vNoNHCmXf`ToO#U6rs&I#mN$!O=nGm|&SZ9{(#p;O>=N;1#k4AURpIsWe4-xZ=
z?9=3t;z~q%CFpFfuP>0UxE<H%(<@VvKGvV>^NZ!9fR1$1GfgMGYhfV|eV8Sk^lsSL
z0jk5XZkmbJwXQ`n=Qz(GvogND1dSI#(m}rk<`4yT&_}`i7i87vv-&y40A89goY{V`
z=BE8XV_eI84fPX2kX1&}wtP<K*s?CGRQFyJ<Tt4Q!XVP@?+k+6fn+X9eq{&L*z7BB
zLbC@+vu^{YF$FgJ3&ETRN@ECV_A4P>1(FxheT%O32<{J#e8`Bo`&0^zTR_s(cYxVO
zfld7-FfW24&zaOzXzDGcsmqJ#4(BxTA&vb;7Y80A9@EtS11oQW(s)gpdgu;B0+Obl
z1ttR|O+6mCn9o%;#l`cW=CB~x)aygP9w?G;^!=tj2W_StXt*fB1LJLsz@~mHY_X}&
z!NlYubKQ(FdS)I~Wo>;R)bK``T4=t{6+dD!N=u)XS&9!xh~W=&9dn=X<>tDy(2`p4
zdd`kJok`cX&OCx<F`Uh!#JtXQ*ksx+ZHKC;&0Uw_^~knGrkjFl|AHDE-VQ4PYdpk}
zyu|IA;c~|BRS=hexTQ0ac5jDp8>l)*m2oB#9Pxt+8SRN{-H*F>fyA{Afq9t%UF#Px
z-+|JoEv}Wf85^k}8Bu&|;lOU$h|+zhakDniZUquI>kOuZ0^O`HnBJhs9FwZQaWkn8
z-Q9|p%`>VvU>->_UN#;^hJw;~O}uO^q-#OqWjnxZ2Z@*MG6wK1R>M^_1x_z}pQ)yo
zJq7(IK#}K+mhWY!eUI=qqriSHd>}!HA29+QB^CLl%VDt>i5Ul~Fs=E6V?VV9sYS-u
ztPFneeBd(l$^Fw=nS7=148G`U_b)mV-Dq>c*Yq!;e>A6G*k@IxW5`r>p!9;)z|^^T
z1x<ppAJf5m7M2C?*`X|WuXF~t2ELC{=~9Ic;$CH#8M9|vc9(_+c(45nHL<tuh`|tw
ziZ8*dWg4MWV|sJ+&{r8W<4f~J5KXK7{pX<H)4@1uO0dfuc~!`2U!x;F%%yK~xM|8a
z!7x_J6K1RZBOB2^^j*%C_1zMuHjBh+KV=k7$FeiF7h!7(cjeuCpz~UCiIDjy_Ulz+
zJB1@!=GRPJW4pQtH`jvD#FmwW)qY$9G&XI7Q@o}#ELB^ZXnMiq3n`R5#@J@G?2TaW
zW+)CSXH1%fWWHM;vnT6}Su=r+dAA*7J!95oV7oJ#0aGn?L`EuW%%YZP#ax7PUDx~|
z663U$MQQU|DZ(>9&ELRZTxVc>Jt>4op$sxT2$EypNVNu?p_XGGBrid7bdbg@zqoma
zI2CvKvrD%iyv&3Tz^nIz!Z}7q2I$6|gzPds)hZnbp}OtHp2Z?gIo1rQPnAZ&%EISj
zMtNQ6Pejp>%Hd`S6KE^`yD`h@OAZVMQ=2obczvT8!oAk!9?*M35T6z9U~Wp!+4!Z!
zi0Mx~cjz3<9Y&&m6oAXm$kUe~`%~z3-hv4wNI)^yfLRFoJJicwTz?uQZ(cVr*0F#a
z0jvF-$ngj9pDUPmpmPW$Ynwm7{6c}Np7>S_%ph40)dy1xB&)FYfjOV6ZOV$Puog7U
zRoD>d_oV@@!mbCi3Zz$IV~qvd^0`dk0v!G+THq?|Rs`5U3rx@bVD6*9RoI^YN7;LT
zNl`p+z&(3=v%7b<JA1dgw|j6L>41}*bB+R{WXT*Tl5-G5k_ci#P!SYVOo$?)qJoN`
zf+&Ir5=2o!K}9iO1OxKDZ*|Y!q5l5g_wDo4ZdG?xb#-@jb@xoqERfA4Sce@z-T?Tf
z8nqV(po?~4xkZ<&8=41TF6O>y7goeAPoKK_z3Mf#<K>>T_Rr&&OU4gS{vm)Y9bG<K
z_>%ju6UhGzU|(nK6c1H$rT3v^i|nRqJR>xos=4<186w{S^li5nlZ;2nh$onikdX_Y
z^v7^Z2Ou+20!WkuXQZk?Dg%6P8tH$`NdJ6-iE-?0!|F+5j_D%{4<mJ^d-4)(BdDzh
zkV~|Cj12y|*kJA`N*>3&0=%68_I|^m8^LZ}{Bfk}d=_$_(i6v9$uaTbODL3&KTd{%
zApm(WavzY_0RQ<IB*Ut*v?7G*z92?<eBZo?U%F1t8XUj^h*LEO(wGF@ts9UoB<P5v
zfD8qQ`)4K9xtM!-gzjI5s_FjAz<)ax(EaxT*$dF_U)^Z1l#3O2|1H$OQa^^k5o(}4
zXMlW9g6{t(kl#tL4yljh<qQB{JEQhuhrY=Ds};Hb?H=7K7js|a{zcs4{;q!fH$B^N
zv?s0mCj8R<6DU6$Anxz-*}|7}|9s?^1K6F6owBk>HD;Kxz}ctJ<a^XImV+lDm$4k)
zqNxq}>Hyi)bO6$Z1UEGUfb;?A;WQ)J!mFtQPd{#@3J#}h!8B1Axo}*OWPFB<ctm#8
zOZer^WEq%l2gvgA4InR);PTPC7KgJzIFym)V-=)S0Lb#u)#*)YcO9gMZ^340=U{CE
z?p6R9tlfcJMuLNN0+4Y4-?PTHe+<_DdR+GTWRtxDlg#pQ0hG)DI82k}<BOo40m$-k
zACNr&y-6|M;89_N#oUOD<zq><Neun`8TgL@eB}+7yL|lD<Fb{D^=r7HA-G~}30+(<
z;%cpLtV#ce4;HN$xs~BZZWN^(ZjaiD3h{~6wa`^`MZ(SZN`CPx63dOGo^bhglW?l`
z{*%ezQsGtT<eNx-NBzDA$U929Jb}Y@0C{`KdLYY5@O3u1Pr{V}`duYyd_~P1kTU>j
zd{fOsK$er>3v2cO*-3&gtoaVe7l5Mo)-X!7HWuODI&1f|$G7Aa{Bnec*I_CK$k?w3
zq!tNAg-e07CBb-c6_EY_iBdh2>Rha%Zc4eQ{Nc+`%_y}P{0pgoQEC^Ew*WdyU1u~{
z%EjWY229dJX&g&E1cCk3KzqIh@)Ze2sb7KoOoDZ|0OUNtx74V;xX&+&Qay^I)Z6y|
zYm_SDmMG=w#~%u^9XEN>PSaGmuJaVG@&hDFxqP<pC8Jax@^b<9J;u&rf$3zjMf_Nr
z^VLGtx8Rq7sVYPY01}wm0BJ#jfvFFWo&f!dh@h#DrCiL74Sdbeqg2P}FdhP9sevbG
z<^Y*Ng3;lAAS(gBibm5vqQgI5GbB$iU1E4W%EhqNkq=)p6sPBNE`Jhw*8pTLuVrMg
zXE0c@``ss)UIXtIfL-5kn7RCYL+ati{~RmK)ZO@aa=7(<9fk65#!f=P`vCa^vR3Qi
z+<^c5yD^TEB}NhcyJ-Lvl=J#t+=^d%*e#G-2oT@f0Aw8rdgU8HwvwQ~9tCm$Afx2r
zq&gRKyMuH21vU&viTyNQ@<Rn2C9OcT0O(P&)o8$94j3%iOc*7LXdFxJ0)dVIv1bU7
z!6Z0J#sC>bf_0b%WD3A{$SC_iM#&>ZqvU+n|LZ6z;+9e3>i4R$Y{&B6w7hNj<tVus
z<=+I5QR4F1!j~K+%aDH;!2ZbCDRcP?#*AV^ri@9l@ULmmkAEB+!gA!e1>_$D$dK6#
z<arVtGVcP}1yJ%9iv~#*O{oI^Fc+lnaEd+!rq3zW4@CL~AOud)t$;KEIFykodJw37
z0GXm)onGZ)xn@B0@D;oU?J@|#Jr*E?a5j+XBsd6H0l5$0>uPNK#~}Q#f1B%JSUsu(
zOfpmS1}J$9;4n?5=np_00LT>m4UjJZGDQzawu6fmpQ5+Y>KMB3Pw@W^@QpY8|8t6-
zW*FFA;TsLXDf$F-xl{BfCjDYZEV_)Cyk#I$^ecwjqq?I){CBv{=&PbB+RgV$e(@>V
z7tt=PV@8dxFe$22iekp?Z$c;kq%-ymmb?J@`_4%~h64Wc&pH`1S{g-|hG|qIukV{T
z@XPV`3gk9X5l7;2ARm)p%=j6|4<tBxGoHn1U4X=l?n!knmTP=R*8fz^n9%_IH2@Mb
zCIOiM&@p42(O@YTD;_hpPy<Vy4T0;Zf%e=9WC;mcdOwhrBv^;XfjkEAEih^??y8Gs
z)}kojTOZTSdolM#>;EEdi5aebulj)P*w~xaeLH>`GhRmdn*kCtTs~X)k}+c^@^=92
zTa29&Glm&6ip7k5$>#Zr<>3E1m$4kijDwKh2auTYHIOezFlPJ><PU(38DAw;{6rNk
zy}nlT9mb5D=Wx6hATgsUklG{|GbRBU18^uKG2;$Uw*n+)xH@qU)@aW){ocbjU<b4_
zW~>JH0|1E`8-P4Pf-&P=AiDuRWorD7nDJl#)tX{hJ?cD6GBM*glpF>)Op}=5-w5{v
zNX#e+Bo2_6kzo{A%EgMujGt&VV@6f*R|fb>8~*<pGb$Pei5Ybb!I%+8`?@jXc9Z@O
z*ZLpJ`q73PPXrHyJ@{|cInY%UGu(Wy<QI<_n~bE68T`NN*Rr)!7sZU%cR^=eWVJ{A
z>H_4?uO9(&7vMkt>Y6d*j8UZ24K%8&*T)--GTy$0+$k#JNX&d5M|=S?M)QG`A;Hnx
z3`jkI#0*bd+l4kVnCm-?8N+cMTw=xu@E1}6*BOrhc?h6mMxK$w%L)uuJZ7As29~-3
z0_&)OF=IQB*GbUQy+HPmV9YoI<S@Wj&nUaNtNvHa7?{x2xS0F@iW#ncuezP>*v*@^
zknPBraT?`+4Um}O^4Y?dj2UN<|0}?5Z0wYn5i@2Kiy3p1&2vA?!M|PaVmXW%sV|_?
z1RnG$0VJCQV@3@iRRB6>EKjOfOBMKc^QrV5#*9v2YD+1uGsXhBiUecEBS7v4IFyl?
z@fxTt0Ero{POow?x8HmCmb?w^j2ZjE{T@JK#&IAYkzmaD8^~V(-!sOxf5eRc`ls`a
zhSj4s!Xy(jGGBxefWtJ28I3^I14zuc49KMbi5Xjx?cid?V@5@`31h}U@b?G!-ZT9F
zGiDq%3=%U=8iFySGjzEzquGDE*8hkZB@MSnZDn8KpUF2uS5eGx^SzQ^JZ20xk~(H&
z<EF=i9PQLaG2_>Fp|b+Au0{QZ0jyde4g%Q$DA^oDM%m8zme;NI0V0>#R~tomQO_VK
z81D6T-;H06w^EyMqzoV<u{Dt9BsfNU0qI79qjwyTYXA~6o=d88G1qq(GgiI>)m&%X
z3;v~4z?g9m$ol{tGxiz{mU6M;F(aSGvDD)b_?Q}K&o4lJBEgt(0myk0tV3WkI-Br?
zQG0O|_+K$2Sn~gG%y9L4RU5YB2yfcUG?g(U7v+}#NX&5gY~f4Bi~{6W1lZpgJ0)hk
zSwfppEN0X+NtWutaz=SQ=UEP8Mt#WF21v~445R}I#*9KB0{}W^bV#ZgL>1$_z9;BA
zj2Sb*G?h|}84m!tn*?LVK_Ghp4rL@}{0QnhfW!<}C;kWCXm|U)hi}IoXlKmuyaW>f
z5;HP^q?2IGr~#xJz*lIb{}D4TFFNF4H8p1(t}?71H4-M7n9&+a8Uh@qNz51p>KcH=
zj9EZt03>FNNw$NF6^|MH*d~k_i@|>zz&FS6|Ie7Q&@f2MxZ4nn8FQe^jTzsW^ot$w
zf9*|n8*Y!9!oC{s4SWS%MKQz8_ey^8m=QNFtYgOc_BiX4tG($qvjVhM4SEkcGdf^z
zi2B_FuyR0b0rDb=iXe^w`2bL|4v28smiXpdtJAsw3A~KA2O&@13o_Jb_p0w{=?z~0
zmc968zt;v|O@Q=!3m{EMu-|(C=?3tPG}8a*_ZHIc@|U7kO9TksGj|KJl9;KFvgUdt
zU!zd{WR>jgrWw7KO2Hj(Yk@b=m38KYqoF8w06;Dr-Dmjl;E%!5jaIg)@XrPB^#J=p
z!=Xo|{gfefL%)uOe#WE}HFU;)6uJ*tE1=*`fb|K8%|M<b@ePQhKn?&>*;OAH4VDVg
z>|4BnzxUyn9b&zLcP&teT~!)H93Y)|8IZOBhcf@wU)LdX0zmrfCsTx1<*^9#*BBPT
z{(1yF4*{gVo&oX{3HH|xAa4MCzZ>cQ5B=p9WGNRb-e32kP~Bhhf=9cQ_EAgKG5sZN
ze*k5^3y{95Y<Tb<7=!(*uYLsYcL2MF;n01Bi(*Ypg6=K8Q@?9vU1Tp~mbHp`^6LD+
z7Hru8@>2ckKneiz9(~*rmnU<^8exyBHUvU=js9&EW;nhAyj>{FCENfY{YWqzj|MUv
zpu)Er@f%^sItU_2q&&huZrAtRA2Zov>_l%4?&1Ij@f<>Dz#yJsm<mucaDFcpZ$PTm
z7H=V0IRX~U(v?!X=ew<qYogOUs;=Lc1HY_m`Gei@<MDma5kJ@|NTTgXV(RR1cs)n;
zx(J~KxecLUgg130PT*H81fF-x0HjyWZbAI$1Hh~1+z7m`KXnF^-dcpDY9%WZ|L#iQ
zD<nH_0GQJ5ElJjTh4|VAXhJSajr6xCmG|Uiu)HBGiI0)c{(XGawd`zIRgnpK>%oz}
zKTff#BOk<`AfwiG9=u{Hs|J=gb$o?LS5B`cAnFGw?00%1{$?}~BJ4cc8AL-N5>DZC
z5RHT=<Aj@oXe>m5^H)s}O@yfFY_9{NsSpjF`_Wn%&4g&_d{rGpOCc_G#ub2QB}7-}
zkE=nn7NU>Saw3Sf*>}OtLZ>aB%gksWT>)Z*Gln^riq#XG6`0sEItnqxxd3m<=#;)3
zRhaHvGaE#gEOx|P=h8ADE_V<l)D6zrD?nV~zaQG>JKu&ubaU2&Sme~53ZifD5wI<B
zy0F^)<C~DP!uinwF(Bu45UZWF=)a7CV$ND;DSRelP=H<Wj58kj8H3YKf!OTqcoamT
z*!G&UCmY02|4uOMP<bymQ!41o`2~EVs<Pp$ggTsWfV-=Uk)L34J@y=}lHNw*Lf{=b
z!KTD>#J-0?i7mi{@vzGn!Mi%q+o3Lzosdtko7;bmFZkIMB;<Vp)18tLbRwNP3ja-n
zQGxcnjz2na0?F+&fmY<#n4b45wa^OJ^v?w4bVR#{>!cA^PM@wI>I>1ziKT&PB*YEQ
zpJ<726Ct(_t_HT|l<-=Ex39r}0}*d$X`^oiF12f^@@it(WadPB(#G2c051_8Lwpy;
zMP^C9bV}v@vR0|AetL||EsytE#^SY*Uhx&^$vXhQjwBN7?mYW0;3X1;#7{p2yrhh~
ziYLi92JR8btIC5pc{hL~Qo1q^Bvkzi<|U%(H+WII{ZJFl@b3Y?k_ttGK9=Hf_*8Z@
zBt(jnm<hu1Q?1we=y4EPLSX!mhzOD4+<X{BREV(C`zVN*5K&bzh|+p^qqWxJ_fnpI
zi`EWM-KBRWfY%XRRrRB88PU>*Xj*BE>S!5}R}P=aiC!Xvx8qI7_N$6i)u{yxk2bMK
zBi;qy?E)fL77c6#HwRIP;1={(N^mr$LT_*+#%5};T>w!&n1`nE1<S%k{K2Pj-zyOO
zvjk#GuocqNg9G}*ieP`VSupriH~3hv-+UMpd}1j&JlHf39TgmL2f8Tu`vNp;aC0GS
z2v*0gEuyN{LAF0S@=h3}t1wDeq2;t8V^nms{|MVqRiwdHH($%@j^9mQX@?1>y6>T+
z=tNyz=OuJnbdnIL^>PZ1i&5}8uk98x(+G-|>y2PN4D#rFS8yK%e^@~4mex!P-dSAm
zE-k1k29U3t_8z+@@L*O0Htk)b*|fbTp=p);gSoW+s%hjn*MuBjwkOBlEOJzxPzF_v
zKDGqePSAoaYjk0%YK`%<fBg>Th{;bIGsNT#+6+hB<QXAQajL2M*><XY`2+<o$C!@3
z5@v%U=iD1q`9|F5HpzCQGF}#JJB-TZeh_cEDyb&#5b|TWSsbHzr_dp>vRTWCm#q!F
zQWnmRsk}~efmhY|^`(H<6ue$7lsp0@%HVcXVar&zN+`iOTOK?;GW#G)IZrJC(KEzz
zzhS2e;zX>M5Lr$Tz7p#lDnL%unG0WyT^VW#BH_Gr6^K5;%RrQIjuwLGD@1{l^8$!|
zB2&{jmk*-9XshddzXHSnA?iCRxgZ7#(a^aAAvrckh{n#MQ6L5j(bO3?1Vo__%~jrZ
zM4#A@6xL{L%h+vJ;2l&ZejJe?w%C#)RXi1=E_R2eym34lqGC%dr!GYN@sqtkEw!W$
z;dr^RpzgH9?nHbWCW6>qnzKy&@rt1C)>;bUz1Y0VG*vae4nsF~kLIiy&xg;&mTRh^
z>iozukT{J}2bPJ4W)HM(!<Y`PdKhgT%pFeuTa1?Q1aH2bgMV!X2mjM(!qni3p&a~e
zJ8|&uMz{Ne&&}fCZ-)_<7W@WtZ+h_9VE9omIv>h{%TR+*u-9~SVsJ=F4*vJra_|S>
z>si6}SZqaty-}}d@ac9iD_9ZV*+E}tG+MB3Ci*dWYb9Kr4`w`yt8~E__)Dt1hbMsP
z`jih)fx?39IX}R7XYZXzn<rDNauyr}aYF`c<#&GH24a4g11-b(U@M3lWzr2hnID2!
zkj@886HX=6BYUCblu>!*A)0+t$_o7GHoDCk0PhNxLYXSK2&ffYhRM?tY>ie(2|nL}
zZFEh7ZB!2Rw1dy1)qTOuOW8(sLTsa#SF??>TC<HtBLZXuf9L~cDsM;^6t+6$PZTz;
z-I!}s_L1lmlrWxn-p%lj?4yYVNa#R3FYRSCPV*>7N!~2tt)g_Yw%w25ffrck$=gax
zOCF-7^)a7Vs_ohLOx{Pwnb!xYDmWOeWCiDe50NI0wn%u+M$&O-4Ci@0=K`m|gBcB-
z@A)HZ0n+`>b5P^?%XbTiu&PK^RhU25K4Hy8TF24oF%`G>qW-5WKiVB0{qZPJUt3xz
z&R0U%-&om`!zeD!w?WvaHPtX)t_-MeHPt8n<2#_fvn0?=R}~Y`pWs(r%kyMI%;Yqp
z9w*wzfJ~^2veZPMmkp5UmTEVIS;01NGAnrfLohn{?LF+E*U-}bVBb=7#5U-ZGQqN)
zQQ_eEyHSh$w=aXVl^;e-Q=a^d{PE_?@pXUxo-&}q`BksSPnrCAa75KI|I1bQncK5m
z8~mV|drpF5LR9t4j}pN+pLF@X;P)p!&GFw4lO_+Ha*awH%L!Y^^Q(APf0%nbM@Q49
zBd=D8&oq%S<u{C+#OH=H9PfnLHE}{`CgPh>-^58x<*F*bqE-EgTXWw+5%GsH11E0F
z6`d*`+6C%%O?g$7#V?>1iMw)xL6`Gxm-E++;9O=n<2%=bx<^y~_)=2KHI<=y)oP{P
zDUnfX3={?BH8a7F`mwnuU<`PI4OVbeOt_VeUIS~i)ZicW(4WDt5J!E%XBg{(H}v7C
z_ySFz7Q979#j;@-6{^ZzsWkGkQqLug>{6<DbuQPGH=Za5v#!vTKi&aeo#<Ms1nZWe
zs(!OZse+ujIp}73bk02E(R`Ih&W--}(LsLaIQk)Hfhb2jKr`kn6e8-pjpoR?O^Af!
zdmO}KA#xo)yOnc?5M|H{aKW~v;K+2n5~UwNaryNyMXh%7%c0Nk(+%<EAtyiQ20Zub
z<iB4X`+q0@L^nKz>*Q~Vz=56os|Mr$mz?}Yb#dd?$zNSZskKi2&v3veocvRZaR$f9
z=eq{hIr)PS2%mEDXQ7GKJNe(v!wYyE)%Ix&Cn>+*YbZast}Sc{PHoQq==}gaGEs<>
z#5R0Qr3+5C%J}y>7~Vf{h?J9|iWhnB1(C1Et+NPSZdH(4h8+%KtCEc2Xv+~-<MD{g
zV~6153Fi*P4XdljlyUAn0HT|;bAfYsKZrg7wtr1$^ga-MC8wb?4i&QoiRzZl@01xD
z`Uu)Cbv~mx!)+Sd)ftKiV2u%?r}Oa<5R;^wKF*NcAf{w~4Vglx83LF!O>7(CtcDL*
zGlUq~@)|rja=plpahf9FT62V$penutqY`X@UcLM3mb1HCj7h<!x1j9c8*mFNIBpPK
z`6<|x5}YXkz5=={HMkD$ZwHrx(HG3Si?00Zm2~BmaJ;nOth*WDQ|B|lw?*RzgA=de
zB>40gPJ*wZ<Zy5+v}FdrD8otcOGKSWaQg&Kf~OX75_|*$DO**^tAfyBKV-cHyW(8F
z+iP@CRq^d_fqGmAM}Jd3vSF{)R7O0E((I=#Y4~t_d?Ba}mQ*~UDzc7M4#E@5*za4{
zWI{3bFZKaTZ(!owk=X|=y@QE!2V)=7R7#v%82hj;#v5;m`r98G6XJiMD)vXN2^-M_
z_EAlR<J<E=eXOZy{IAKNj%g|pzY;T-eOyzys^T7)H_dOKv^+~-+qLvG`wOcCiRq8L
z3)U|!J;f);S>>f}XngyO^)B+`CA%a4N3BZ5hxP>Zlcv0Jk^RN;-IERhRdE^ktK@W{
z@Hy)*3NvWhzguY>%{pk>e`pFpvk)bR?Z2(oSuW=Vw-^RZTY1Eny%IESOH(>%+8#}1
zsLoHZ2YsIK70{CCiLV)h@fG5jRK4o#Gj3Sgb3IanGeE20-S5E-Rh80^OxXFJeaMM#
zrJ9N!=};B_>TRJiH-Oz6Z-}YRF3@=y@h$s7Rn}BEJ^>Q}s7xw}>I+22ftpJORer(v
zs%cmA)P{%0YsbJ_-IJgxs_6t=<@3nMOT;I>j+~lWXPI~&?6YfWDnI@>LV;adQw6GX
zS5(2qpIEej#zb3u^)7_AK0rc@3A*B)L#$3C!!;reYnt<|F|Mj)O{3UMig6)w2gPm#
zqQ&w&z<pK2E6KE)Ok57Ulw>O6?BVw{`v~dR@r~WS=6>c}nz|g)EgU(J2!>XFg5grW
z?A6y=Gn}miyp49Xs(#F>318E)h&CNrgz89zerMrpU}~3OdRQf>qiVb+Zu9vry&Xx;
zj~G0@j#;B9;XG-9=oDc!{4KAVGF|yPON)jbdo6Oh<lG67M9Zs&Oi;edB}|rab~5J*
z9Zfld`ML^TQ&p@;W|rG_&NS^ezA@WC20ub9QNjCj7`<K}!sxXSU5Nh)nh#&F@)F$e
z2U1>}m<l$i;3b6wV_}Eq_h3nNjB5E+B@-Q+u-bbo!V%(48$h;$H-iK&hPMKBsiyq#
z_K>qWY6^|OrFfM(C@W!Iu&)AtQ$8nVDPQz}1L3B8g3Pjf67Bu*g$E$)@nw+_!mL%5
zTnLx3I;C%+@c3)4QC8=48C^=koOPL|yzw#=?xHDwyc}Ysb$NQ6Vqx)L>x%RcuS_LW
zLW16nm`z4lTY@980%^)Q(ApXlJ5-!&SZjMwFLL8OG1{%&L2XsjvFH)&-JnF%MEp|D
zLhos+Onf9f#@eT;f_RJfLG2IfK8jZ-=lhy!7~e$d!=TJdE%o2!91SM8fW9;?li4Rh
zJ)5a2E1|Te^=b4~*corYZaWsus)A~%`23eZ9gq4r$0y?L*#MtK9nSk@;;+)`&oz}F
zKT69^L?uWRs7imL?)I6~LU4WpwNmX6dn7~>ucn8>N)5-N>AGc*=^UB(r4nV(ga!BY
z#J;PZC3)rJ$Rm@quEt2JD@()qeSPhEWMG%7N>4q6lwO%6dNGw_AtXatqFyCy4)W)T
zT{pT?dX&omUJi!{Nd~`Ef{B$jG=R+gHplxDl#wrC*GwFH1x?Xzc72bZ6?>Ch{K85b
zgP~yJd&sNjky1~)c_G0Vkd+LQN?)VNa>IVc9y<XA{K8@n$}7!5oXd@fd_`t)86u6L
zDs}h(Ss7ubv}YE@bvqGLmA*tw%*_(fAs34lyfq4|%3rK-A^4^<Po|=RvH3`@?~&wt
znauo<V62=<aHmsg<-5@91nKY3lS!<tbmDQy-YudBB^BA)B$Bu|9E9leXo6A`GueVa
zxJ;_xvcm{eVauV}B@j+RuLIGtQYZP6M=JYNN1gq6TNy=|-0}ZruYiX2M=a-_Bbt5k
zf3S<<O53sC2t6lGcQcuIZCVxd!7vN$^@zc%i;_Dsd6!4HUw4zWFBL*e^{HMS3?VDD
zCll`#f~L>Nl+705mnyiqBo<v2tjzOBCxnL4S&6B{j5IK8sso0Htt^JYJgn>`FC;;+
zpl5C5ZL~r#LbYI?2q#-gRT{hn<M-J}Kjaa#EHP}dsQhqgD0oaOpP6LP%72`Uyb{{7
z<;+VeR|R);LSAz{GB+mkh^YjNujH`cM<NH1LeR3rRN@vCJY;MiL=Uc?3X$|1Ip{><
zWtXWTom!%<wQkY55wuWIt{VE{qj;s&(1BMeRlZVtxM}te()#ttMiW(~bN8e0dnL7V
zQR*39X*m%j%V?&u<Pfi}7^xc7P^fn1d2YTcnB5stKU*<|yA@0(q6+rb!%f;;k1Pu|
zFqySh1$W(y<kC8Mx0|f<u55%kD>rC=!eowARS;T$_;!tM#b20QNF`U^hjp_3a4;hm
zDcsjd<u6m$SEKSOo?vNaY$I!>zG%TRtE8rlnJSIQFE#5qG)>tGK?d!DosA(`Nt-p)
zmDXlma^Kq+YS|JS?n73(%uyw>OLJ$GBfF#$+4UK;GlxyW1}ryQF9EOG0=Y<b7zai8
zfuww_RlftRK_!vw^3-AV>Psz=?8a1L^$cfJ#IZpmW~p`ak(iyGW#uAyF>apT#v7=r
zB=2>EvP)FPH4|l+G0DrvTE$c;Bb41hwDwX7-W4gS4k0|pq%ws#70J&%Nax2|^+g5j
zjandVJQ2HuQZJ#Tm4J-TVBZt57R+z|Dvm<|GJ3v)?QblbX%j(@1w;?;#wIu>)7X8W
z7ctEXeNV;8u%>50f5x;QkhVT1YmX6IaTo!RHcmYqlR5KQP%8nA-r9>3lCc;U26FOZ
zih3p%;d~I-h8yvKw2|uBn6!2|P}xjj7d#sa6rw&0LH7o<ewZ;bdo51p@srBtU2W=)
z7ox(Ktfym<{(1Oi6SsK{kNN>r>h~4!*Yrt7{&k%7d@Oh)8UIFBcQADo##MMj!Fz_$
zQisU6ITq}J(2+W@mZd&4SqlG6hAhh)Xn`ziJhFyCelQ^Aiuy%-coAAsLQGcn0FV6_
z%Pj=kjo`n5<)(}UwGZbl`SBz%ErJm;(34S%1<eNAT@YAGA>Sb*z~P_*hfPWAPzBtB
zx3E-5dAgjXzE4)i#f+CIYfH?th-$Zj?O~`~O|_}>LH(2z`kfU8W1tLvS0ig9m^J{c
zyFh#Z<NzRxLZ?i>VAe4h=Rkg}FFmOu`~!HubA?l0hZcbEC&SJ#0IS)8JjKgT5hf&4
zcE;@HW$?=u%z}6rpi<}y9g{*X7Bo`UJF&!M3ehjhLZCE-QtwB{?Mw=#&j*8@owk#V
z8<15WOw|El@?CC>#M@%PXXEt|e)9Nwm~`m{l|t5|Mx{52*{&Tg$I_~nHR=aJ^#DLt
zaT)txGAv5W84upE02n?SojlnTY^g>x{PS2SP!7L~k#z&OW&^}&=Ndj7xR45Z1HaG$
zI_*Q?SqYFPclkWZ#f;J7w9it8O}-WUTL9W=Z%rEEVo4!5?Uxjy)4mIV-4yaIDc)Rx
znT9e>%ZF1{we1*^WnKg`K6T|A?<0))YNK}k<H##}0AE&D-RJWSqorKTNGR)UtkQ6{
z2>bkF6#fwnkf3p2QmAk~7=Dl0OI*g&VES4Zzd<~FEy*~6jDN)fGt1*QP!aDQ2Gco!
z^%wZE-#|A4vdLygkzE&5Z9-`fDNE<hv8w>N8YzPSb^{Refy@G=vchkgl5iw~B`u1@
zYqBKP_W|&%0$8l~1|aJI%KM9vcn5K`3wU`tkFOTOe`+ePAE!t8c^a9+l9?({P%K>w
zfJw%|5|iUmE9Rr%7h`E>ASaIZ7Rq}QAmhO0!&BDaOFHKf<R1q3mKi-9559H9iEoP$
zus_|560RvCn89I=f3nKBfKLgW9<u5xZ$rbv4NqIm5=c2-Cq=3To&X*#a0#jQ5+ks#
z0EgqW0A7*9vq*Db&66gVamM$&A-LP}ZZ$+<rls!Da^9tzXWPo_h6m<6Z8XA5eU**p
zimn!h5MAvJL5X8pf<5BK4<?^2Qsf<B*gL@^9JmsDWi|?Uu6O}F*v^j>Fu-*DNzBo$
ziX^<#O*%F8EtY<rX?K=9S*M%I-B2v&RwKd6y=u~>a&H+z%KoUB#I}oceO@f*gJQaV
zGwGM}{cH&?9%9$QaBE>q)^b)mSewHI0#cfjNFPbG6E|m>xR$X<uM{#z0>3#X8_dj+
zxa@pOOs*K{rP{4}@t_i1Vw9WzF4l`$y}DL6Tq%#VAC^XRjSQAoDb|q1{RpT13J_h7
z9qlDCxqwh{J6<6TNJBxDwd#o=hcRi2s-i902x`4Bsj8ai2&jEb;o7CDUb{FuaFiQq
zl^>s`)B=<p<!z@rF^5anvB(?@i1Nlt-I%WsMm_=hAwUYFLU&`nN@CS@J(Sfj=If4Y
zXc8gb2md~RM2OFT90RD-2qN!Xqrszg!2qjKENv#GDj@3&n7$Xr8$QH&cEgBRNyf&p
zw5?=(5Lp+%bRJ;c2_p0+mW%-314dvy5>?9RXO(()x^8U5dxK$U%f~8=rB^`Ztz}><
z1?iFiYY~WQK&p_K38E>G#(=;{BhR-CxqlFB)yF{n)fCD-#1&A8(PHt%$bpn4w|k{1
z{#z%;kGG*w!BH|+b0P>Z6imiy$u~ory8I>T=$X3onK^jhu#y#fPO>GIvn49W(q#&{
z42E?Az`<5wXZ>YV{I^Vdt*9%!n;&b{Z<URMeHm>+2O9#JzJL-VA=BX`*lz`O6Cj$$
z9ePw&!jFM|1keV4{&iH`JZ0&UIrPA9qT=Z<BKJ9fc-Lut<!L|YcL9}$jKty{1xKr4
zf&XJP%Ek3*WPAk>Pugzm#M4OzyF?qTtP9bMRUpKZterRy4H@yIED#}pN}(rxYveph
zOgA_rRV;l!HPEXrfj}h@>R!)Me<g)nEX^%8FXn3qi><4{)(`^q0rq$h9e}h0gjuR9
z=2h3CiXI%fkWvOAe*gd-U8aNX0S@f0P{;tvF22g7(^ZPx<n5bXtEE}mwb#Np2WPN+
z*S=HHQX6R>r{M7@YBWHa<rW|d0m?h4y_V(_yw4P!oPt-FOisb4l9|dk!Pq4MvE=t}
zV*?dUEkvmkR%vbXldd$rDqM-zPS;1P@_fKLl=>hbV-q6W`e=Jz>i-7xr+^Z?=Dj}J
zV;eMG@)q9D2S}SdY`EGGEk!-!Ko8JqSE*;BC8r?m5a_p<hV7SjsFH8vkp_U?enkVc
zYbxmefXWHX4QUWdn>6eywIy0=2JjD&aR5;L2V?z*Rdg5Vu?C6iIrr;&{cLh(`8f)a
z)2yk<VVBMFnp9P}GV=Pk<?M~-%m)4k%J_xl%rY{qkSKB-zoLyV4(5lcbKEjiv)7Gb
z7cr{@@A)Non<~NEQwiQ>FF6I%!eZSST~}&l@nmP*UCngHV%-@fcj19nfON*<XnWq*
zX$QI)KssZw?u_xEhXbTDmgvs7AM{e4c9mMHJL4qikC--6-Kjex_Z?^lNN3!sJL4+Q
z{Q;GKn~67%z$EF6d!nUi-Yv+u5zuUtv7U9Foov`_KRb|}_mFPXb>MxB{56WTQ4zmN
zypN_SS>qtK;L#wb?j`r>R@o#Cjlr=hf_-Mj4qS^^7_H7J?H#Dw0mztu3l|Hc9Vqn!
z=&t~cctv(m)JGXEiBoqqu+%Q2(xYBOjjUUup7EIDtTV`p@5WoA0M<zmHGotjaRfwb
zAk6`RgGRa!Ru@Gb?C;8DF#aB^yN76>K*~XLZAAb5dM`|ll~3Y{pk&#HS@x~bKq^eL
zIv{HxwD)CkjX_KWG7*sK{jx~NtG=Yr;MC}V8u+b=tlPnJGlj~7cpS(hB(gzl1M&(W
zn=*DYq<jGC0Ko19;zuB-0p4TAq7kRC*n`@lI$<jE@~!Ore28{zVsg=?fo7(=D|~;k
zgx(C`7Wlwgmio;I7hwoY@<AN}vLDRA8QU~~><3+byu{i_8g|(azRo&xKUfm{IRL#M
z<lEi(v6PD?g|Hv|jY8ZHR)#<Ug?wIPy52tfIv7%dqa3C#j~<a*s8`?uB7CZg_Qb*!
zx}a*wh27LT*hh502)3?>%GJR}FTruUMMKO;S$e#`xL?1hZ-LOy3~n=Y>NTo=G_wqi
zU%Glg8ZYGyh{{E;HZZOM0E2O$9*na<O=b!gcLVic{1o(IKnflC{(If3yI8KNyEQ4A
z(y$f`qf`6dg&zULsjCC2N`g+^5=e7E;3cE!BBxGCQ(@PuQ_?KpeX-qx<+ISYZA`O!
zk{D(S`B?L!f$LcI9bmfx+PeUJml}R)b<r>{si6on8b(IbH@F%KAw39ym6+*(^V#r6
zWYbdvs~C%C0mp8PFCI<9)hus{sZKA9q~8oDdH8P@-U=p@vve6;<A)jx|3-xcU70(*
zVgQu!o&Vm^#W*_|P80&p6-zJXyv}fb4%4pEoa|ra-Dfgr^X)q0BAf9a&c^0X4JU1W
z(r_ki=HEH+!(sS_$;2@9{c6&A&E1=38k80LNi#{sWD%-s<n|g_;&4hfp}f#5kTStk
zUik(V>niVPL$HKqS|Vi{Uhe93JB_M_>kP9lK6P>9_-;2U^ax|f=6H}1X6q*b?g2d;
z3l=PgRqX4-@STc!t!rh}#r6z)uZq#SL^H8dE6}4O6W7ZN^q^?WU0W5s1eIM|)o2cH
z3r2WQ&Z-to<6X7Jk+!=*)s4z|kjT9(rEWCN)iFMa*JD^^_k9n$4PEk?x;mqUWP^9r
z&nUkyHHM;9sL<+FgA1Tgv@sVzR?oDn@gkEbt(*jRodAfWviwYa^glXp4D64VV1YLw
za}FTu*cEV4Q&JIzD?{?JBGH)j7g#oecOAg`5ySx?`vKv!uITi7+DuEmcs0t}5Dr+C
zkbDyP$0?8t;twF_0Qkgieji*%A{m7stYP(Z;~t6Br`eInek6Vrk+pwh$_F5h>Sq|(
zz8^<&$e)Q@=buF6oC7=K(}+z~vOoSbB8#_79$i94kQpj*2qPsHH~?iYm|~wd#l8@!
z=l1C)qekw6Y|?rn`)TXuh}^Vq-fS*jR2fmRg9ni~#b|0+UsqsCM7$$MB&I|<@aA-m
zbpDh`A2v8EFfAh6p2(l?LBq9?C{NTzB8=YCBXUwI!aXsF2;!@X$kT^2jLgP;$hj_(
zv4O1^dxeH|H#R(MZ0H_o&e~`jx<|UvhKQVs>si!@y^KDwt+!6s#a^jx&=(i_=;lzd
zwOFfL%}q&1Oi9fnwcU1WS-jm^>ULA*?n6JmmL+}cF8%#BI|IsA)o6`dQdc9t7L}CW
zi`Wdvphd4`HD+Vo19}M{+5;}|MwT2(*#>$e(>QLn>&IN|_wWEY)7U!Ov&6GUAgwn5
z7cF*VNqfHlYCRyDl7UB`vf|t)o&^07(~iT^omt{S753ptML^mJ^;VYeM%X$Z)Koy1
zeVy6tO0_gA;|{pv7Uki&KeJ-2&NeW;3P`Qk6SLE0n%PpLN1?vHh;Kk6{5C|^e(<~p
z$Yze+1}VoueG0I<g7_QA89?gZeno1$Y97_x=%jCHh~MMLn(#he+X%>Jj(r*_^Fhr5
zq^=oMB<WZ8QSxZWUPQ_5$oc_1-vO-6Ap8eVE<lBgOJ%5MDD`p37KyT8C=C#a#y}cU
z0*lGwGFfUnWfnU2Pi{$tU>oGh%>Z&O<t~!SR);BdlVcaKfoR`TV0zM(+79G(N?l}M
z3H2qV7CG9!l!LI1z#8QODFMJIr5+~#iKZ)Xp}=6t$mWlvJit=Bf^9fNhEYd*5YvE6
zp$@r5eJt6Tzq8b|Ncuraaf5slnC4T8*Qg%^vXWBXqsCV_SiS`>XSmr&|FKxQ7ye_?
ztGkvZOd4j@>hG9Rt4f+|^#Xw|QZMyc4=p<t8hU!BpsHO4cG6jsjeG8G3ioW4hObDh
zF5L5F81_6M%ENTANMH}xKLC9QfYn}h#8(J4-+}r9kn$@oNK7^=i!gA=$0`*`+YP%c
z9~QM$4&hA#0F^SRP7!NrQrzzf<>48CCJ>qcw#E=>C_?O`W2PiLv~IAnu24ZFr8R}v
zM;#&10U&+U4@e(skUr{cTGmqi*+-Ql>C-92J{k?C;gn(@%?C1vQYqJWgGU%CPZAsK
zmRlv_AA%;d?gQH@2&|xn#UP#s@*Kck1L92}uakHV#3w+GlGqC3dm!JC*bO3h7)?sx
z0bI9GUlKzwl8^PC<Ez0!Uk6)X@LvhAUH~xy$Ta|!#Wr4K%=Q+;jD~}bPulldFi)j`
z@{TY~N@tt_?XEMfESA2sSo&s@{s9bs!lX}wL%Ln_s!6*ZYq9!n1L|uLsv6f4t2?k<
zT-KLwyap{RtwuA{ii?Pau<1sC|3?tAcvxq+J?f^BU~(4^%fNIOKo$>=0(lsKZsX<Q
zokpYx!$lGKSbMYVi7bm9zY!A8QUyDH2awmOLN4l^OKNa2pQ~YiR@xeB;6=To5crTn
z5{(;Os_SK`<+SwEEMKSQEDHVe4VX>=vY8{%_&lhy0Eu?4WU5+ENkrppN;29t`T#pF
zfW)ruK)M2Sv~#5bYCEOeXgmZAgI$T~K&DXw72`;{*4T(M&IU_HyJJ}?x3N@?qz53f
ziaHqW)&p5b9Ws(mBx`wqrGA!`{)W^NZMYRoFH?#QdKk$2loF>7bQBw~?{TrxZi9ZF
z<>%8g;?&<k;50SRss94<2Q{RQrN0{umO8<5f5`HcZ;9VI$Vxwg-60^GIrc3`DFG@0
zu$P0V38VlZo#d)XRlifscOm-+7S2w35<F`G+02nndKJ_rN^&A|B?BspAq1WD3MJV|
zr9Z@lMSyftLm>45x|3X~pemr0+esb3(9V?@1Y`gu{vi`l4Jq@znPzVU%MGr~{XkY~
z8R^)^P4nOai@}l|dnPMo7@LY6yAvWisDmAQ2*?5IkdBR*ac!y2EcK_X^p%w2Ncj>>
zpHqq*`!|q3D3wxxMr&lGJV`7Wt$xn(*J}k0?ZFoN2s;gc)fhxRka7UKJBT_!YLOTW
zq79H%fGh?=S9NL<OR7E_@`=Cn0B<*d_{&frg#cK_2Pm4F$<Rt-ImqJ2Y8WZ`94zzC
z1)IgMi4Yr4Ju5)W1u~n&tsw3IayuZ<%c$ddQqHQ}k@Alsu{XBr;9?s0m3^^wSKcaS
zgfO7KgJRrS+#PYBnluE+>U$0EPm(6HxVMApK+30KYIfz_j?FV^46uJ2UTqO}GJM83
z!DoPDr{6{8R_PVCH6AkDqOQtHZf73QOIp2{e;_MR$fk*Xa}ZKPjnoArH8e|aU1Ucv
zG^-gG;E~4Msa~zu&)m9PomHC4<_H($)-b&y*E`tZdMU2=5F@f=ACoykStIolx^YBy
zF4tzsljNDhCSre+CCd%G`KaL$XbWZqtx0Wk4T4#XxF?9Lc?TJe(Y!WO2-zq{&VB?U
ztc!`XJ1j()>zT;Z2SH>SnI~QrLXNv~mzbs7L-lLC3(vb}X0Sa5j|R`G`!18+NRLd}
zjjVw;tO8`v>K>W08~GIU5vF~Ly-?50FdN8s6oCVv8>)Av-q=OhzE^4@`VK1BCsR(D
zmjGv!z|CIYOlhNzpc^plZ|vpz>9if7p8;S^)<0ABB(*=r<$pjL8m@n)bYoADodA`0
zVmtp;TP*T^N1blXlvUk)WXu6XxyQUsr`-?wUO?*2n0D{z2J7+hsLvs8-IeJ)1r`34
zoRL4ky3ft`s$ZGEI~?$Tjb!9fdP7fF+CLV#OER4zNjJ}{Dlo4|60cL~p~X5&(J;0h
z`s)$8(u<iT*#VJn_X|;xM9Pa;;kqI?cw>YeBW!KX^iP8V|3R?%-^P~&6qhaa-vVnL
zpP#ELKPMhsI{wCJq}Or$VS%G6*Mrdm+oLs4qBVD9<~|5ZUPr5KV{2|X#Iy=b+Xs3t
z)3}y?Q@8Lj(4PQOwqb$xTz9vPT+HiQ{!V7bd0M_7Y?}GSB(sYpnRjOfE5jbm?0woW
z4(N%~{Ya+W)A8MtdyBv^lY3E(hM-34I-o|WXxt;2B_D<L-^0ppY5ivyI!7||nRXuZ
zpMVH!WPPZslv)-mz)MX-VVS`$J(}t727Ue($nw|0S2mOF&cHH0fsX?0D?yY5l0)Ju
z5S4)xkeC3X1&{^+*)4Q6+C9p}l6C*y@$scee(o0ZvbSfF*~OB~KcIVs5pBw?OI72f
zMVM)S%y*e-v#FO`7v;@0jBK@gkZgP*(5+ay>mR9)!~I)!)m>|;sf-;%GJ}IV;&%tK
zMxa)O0P7_XOMol_WRop-KT=XxU~+A1#PPN&if;+~#$5_yUO<+$7GK*S@)Dpt*SRl%
zWws|!mmHj?%W`_g39ts#^!GSjrF7S`uJa^B#R-Ui1`wsbl<_)W-)KlZSJzStl2zDg
zY}kSltTeRSFOWL}kbBTBAO1@Ke4fXxfGmo$KE>^E0BXdGe|t<cvD9&D+ZGP|L~XnP
zSRGtd0kVc~2BZna#D=p*3fCJc^+wp&lFdjPE(231fY{*jd4w-%Lx1G=r7{(8IoKxb
zDY*fgx^%4^Y)~oOka$gneMv0eZL~p|_5l{my~zY9908CEoJ)W#2FM;InryMa7%;ng
zln0T2KLvP!^JySY0dP5sW#)i!P-caKPDc6b$a)1(wDGB$RC-Bqr5}UoBY-G94diP8
zS}h%mm1mM7jVLlJ)Bc_M>mloJaGeAA3qV+<@KyF0&YJ+{v<A@w{B|24t&!3kP_rwD
zQAk}44R$vW{gB!lVDmkJ(}7F^sPL<`E!Et_7W_8@%l#!7vc5#}N-*3Dus#B@9>^0U
z_JY^}<PAVJ`E!3lim#W^(LPtVy{t(Om<pw+Tc~($W~fGI{L<MEL;QW}qtkx}<TOC<
z|Nb;m9_3;+-Ts`H>5PO187?Au9#Vf&QjP^xNltzDvAi2HL;Mp@Klgf?p>2}k88Xbz
zbk-FyaM4;|f{>-!F&?hXOxsU}qPay@&5M(v%EhX?7Ou`rYjPPRxN7!uwVcaUaxPcL
zGKskYsmjGlxT07U7b{44(@iP&^hO6mr<n@8OHA<kslBD<NV*voGF|Ym(pz<gi*nKn
ztTDV#7(O}2!3jkr`0ks87fa1VO?;Jm{vD-04hQ*s)S0$)Nepl_8$Z^nM$m@~x*vy|
z$l~odj#B_ijJ&!Q(%N#l)B<!9omLxZS1_$V=qmwfV{55T!zDSlP6atxl4>KV43lmI
zc>^GGN-aFI7M68Z+LYSrSUAB2>2hQ(rNlUOJZu-joaaG3$CQys2{2_BsJ8%e`5?WW
zwjS$EgH;3zKi21A-!onCO9wm({tp1+M!x|037|F9GIAc}Vl}h^Wt|B7esVRWeg<g*
zT{sU&E<mO7fKXvlL#vS}?~Aan&E@b19tz54ikt|l1@<ZciG;3%S9L=^PXuYVg-JXx
zG$UCl7xTF$eG#rP9m*wmcZa&J0JBapLRhgFEIFf|4*MRXMa9-BNt0jvC-b*q-$yKg
z%tN4kFiY^RGi+S1oI`fedIgT>Rqerp51llh-iX*OcL9x)&M;0o8BUsIcwHw&nu>M8
zg3NkPJEX;xDfd6`g&WfW)9H91+R)2D)FyE`32~zR+KDpZMAm-oMJmQunOM8RG43Q%
zIMt_P)3YmFhdzck`RqdO=5Xe6<XQ~yENydGZi48$Je$MKnHi~uU}U`<*3Xv4Lfqf1
z564(`3g=78tq(V#m0E6nxFs`HYyk~;Bpl@kOW~Uy$ofcFHguZxk#H*(ftx@3z<PH$
zqY#8O+OXaou0yTd>)fLUg5LYxqsM@Xc`4PxNF6s)EsEEnMYxG>BxSYIZKSt*t;2Ey
zCc@h%RvVKecQ4!Nis~(1drfff*C8yoPgHErUWlA`w5eQCvR3DvYGNu{_=2N1PO|sJ
z)9|bk6<Dr<Z}&jK2}c5t#jCdIi~}c}TI`r~cHs%9J@HIL5$g-51Q)cKW0C%aQ<}J5
z)PCvceJNV!D@RJf%ZheG^)92D*E>b^E~jQv^)9DfQuXd)s&^Mxy{Aa^yGC`nN$=v0
zsS~^rwV7L&eWnzKt$eIi+})Izg8Uj(J_(~`93Z*^ck5ozh1>!9W~OmL{-W0Z4Cp5T
zxH+}Sk=8v7YA;hp;!S^2rxKsz;tC*@*NNSNJ*wH&sOSq$`MKTk%Y|}(@bm@fi)J?)
z3vJbfjGLVFd{`(K%|?M~1R$F^a?xxSsA~ao(ae=hQv)f9i)Lq7#C9wpHi72_fLt`&
z3uF&KUo>;2LTUn~+>2&kf#C~RLY=^$;7|fKa!K#Xc+`B#yy!SxXd{>L`Cu&v&?dcR
zDuZW+$oPumn@>iXR0mA80AkW*Ksr%MZY{Y|scH?Sw%|HCB?f|_uPbpgkOh=bu{s>9
zYmDdcc8qw=8r`Adlxv)}>|7PwL?^q;u=3`hu-@fVPdeFMP8;HpQH(LmoD#Af{*7YG
zoN^@ajxS8U);#S`76U4S(>$k|$nh?uHDAkd=-jBiL&f${YPczSlUwv~r$Msl;m&2m
zW$27_WCoU@Gt!Z%R}Y<0MgBe7_3v9Tth;M_!vFGbE=b_t-E|$ep~+qWh=2Fgg?tS9
zFw^MYz4Yq~&x1Y-fPeSaHE4ifR09D2zET%F6VzltD!18g!5+2aDpa(mlV8{iznq2k
zf@cpv`*%*#zYmhJx0CLLh2r0zfaxe8n>pg&XFz=e5dU^1)6_{y!oT;i2)ah)FR-fx
zh%>bU(gL8J$(0JJvy^iEyB`?(xDu0rOr(VIZ&${naE1ftIvl4OZKQuM2ir2Tib-9Q
z{*46}-uLbJt|B8%S_7s>0b<fNAg@wN{M(gERn;if-}v`FFzj(9{sMB25~^IU16Z+X
z$63-sj8rpeDn2;s-G|*<3k>4Jb-%;~DnJRu;uhMKdxPu>NFnQ8MnMslr!`@caeQm9
z#45wz7kc?M1wxZ3*Z><<SJ0Eha$LctPGB|#JAy4-7vaI>^{V%-!D8Y&E8uUBWLY}7
zdA82GA9=Fk$BLVg<tbxd5oStJR#T_6zEGfRvOQT77fTw{$|*ewbuFsNeAHr|TN9Vv
zqg*UntR|OIFj*6q!>f+{t0r!qt@Hj_lMj+Lak2lXNqIKy4^Z972`q9;R@In#&d5iM
zSSP2<DVL)GTiIps8ir&$H{crdU%AEXyZTq7JBnUbv7P(T;f)==)?pIkS!1UjgOQ4j
zWNvj6w^~RpruOPO+(~q;?zGmds}F*;gkinUWi3%G#FZ!(;&Ppm<dG1U>y#m`LtLq%
z5SM2{T!Qbbj2&Yb_8a|wxcdFtQZdEvbV`QMG$)5VqCd^aBd+zQ7wOM%_1~Ea{qv4M
z|Amk&6fE9wVMAO9RTY(72D!2PO18<*A-xRZ4KtZWehw9_Relc1T18JIzlLN18j)$_
z*N}sNhSJV`041kPY241Tv{RwFEG;6_$TwP!)5z(NS;AHP5K_lY(L9$TMIR5z>P6b%
zc*sn4)wn1>YzjDQ3OF2+I6<99T%FhQ_|j7$y)3+>KXhVQ_*AH-EDPlX*3%(b(KK&a
zS*iCzs@w&v1Ltdjxf69r!VX+M)~etDT!37T+RYDD<+-@~F!GiF<V5=XP>XHgdl&R}
z0OIQc9I&g4q_1$w7b#J`9e1Iwc{QY60!W*zZVJhP+IFB?F@<l9S){G%54tbYXzHR+
zdLfjJ0zCrYTW`$cBSPLChR8*Q&!L{?PEO!Mlb)VPrm5KVu)`W=T4gTk#8w#=l68Ih
zH8{~WEYyKdKcw@}ABb+O7Z?1)wOKrmI6Nd<-o|nWaa2eSA@css=#V@f6JcGgF(EmR
z2$%Sh4p<N>!S=BJW|8uKfPzq6o?*{9yGF8mGba<qRMssQ;Y*0DDj|6b5e=wn43Ms?
zs!fPIiUlolve-J!`4oGfkQ|fjpiRM*1-=%tTmt)&^4h(WncR>pA8Xa+1C^>Vx)vBJ
z+=wI`cpP0DM0Fv0%IU}Qp@wV+tD7p<6HbyBlDCVTsiU1Fxes2&{{*VR*EQvZY8qW^
z$GlJz5$~zW-3##?E$%*V>DPu}+S}ub=Y(n$6VC~mvzMy=S}gi4e<)~u308KUKU7`(
zto}ZZi@$?Gi<j}3^LJ2gbFu00R+T~)5?jLc-*-VhCU}dJjNb+2Tx3oP*K*$n<#txi
zg>gcZ;;3#M@o+5t7&IqL|7-~A=U@cGMn(FJ*2F0mfFdSP%PCU??|QR{Q$f9ry$wAC
zqA@F{H=L(}?RDVTK>Lpev#HeDPdN<c<H1^_bNGTQ5Uok5{)1r6^k8Zs@MhN|W7VTK
zV7Wl2njXxhPd$M#axEZ(zBN7AoUZl2DO}?LU~FC&l(AXsYrL=@AR}yMP@3p5(ANUQ
zm!1!%#&BV=@dLV>aS4p2%?kQzqiCxxvabFnMHK?9%R$Tqay^MwAf5uUmP92GZv%M)
zkTL*7m!vuuD~pQoW8-gd-W?3pGr;y8_)k#5I1trO<2pA$c^4RIo=5&0ytt@g&Ldy+
ze>GpZudE0}p3>G+posaRzqoRl`B(>PsN}I_x1dxtjJ2L0OuM}hzkD>m87yf6kjIu?
zKA-R<A6vd0`IiBFw-|%X?E!|I)h5ZKrc(9Xp#AAp_<ayr!yqycVBHDgK_IsSvdLyY
zg_N_Pz5v*pKy>&P57+?g9UvYCayN<hK%4?{gv7@n>U@XiTL1&T29f!oZVh=5<D9Vr
z>k5Oh7x=LnhU`v5@XH4=dO)}vKtG7#Ga7Kg*<e}(%#A{UITYf97(*dYNTE~?>O@j#
z-SuGT7fShsj2|IuGML5#yk!gz9|zusTz$Dp`7SZ(^2~7U;zX0;MEhcdO1Tv#xGA0_
zmbA2gDD9G=FkltfZbsoZ(NcNU!`#Po1HqjQW*aH1c_=uDLVWCh1qAM)(6BRT)#nXs
zAH$k@75eK(WIPU*#{hCE{@tYNSJ((0LW!5Dj#oktfoDHJu4A47@;yL>Cu7BU!bssd
z1f@FR+{OYVtM9RS2a_znU7l3o@f<Ywk*b2HG5{a%2GhfQD83xb<50kJOg%mR5qRR?
zWb$$N_LBMUC*YSEJNN>hL0W-4JyB|n6d*75nN}>li%B1X2dLI*ogV)MocPF@JV!r^
zUpv3Nx9()+FOy%hN&&9QMwIu@C$utJ`L<S;v@)=LgU+M{bdFi9m^iZA)Aql6dS1|u
zT#a_4BlkgD^k#dc^3vQ@#$hb=85{Q2puZ8WA6Y*kYb=<C0kWB6pGV4lpzZ|N{%*J-
z2V^UW7>LXt(7gb;@VzXl)5R*#NPH|`*!KhtVRyF!e;a^wcW)rw0s1QQ>q!kRmYk?F
z!s(w<19w(qATUaVxLQ1w6mqfBx>PLO!~R9XSS;9PLSP0!HsOnbECR@m*A+`uf3q#H
z3GYQA?s(q@&rX2sc#i@31fX}ku2evU&=<)~_&G5A=1OFq!JqB`P(9AK;nhUJoW$UA
z^08`%eHTz@(UGEh5UT@_BSme2v?jqLMLmFY0|Y7=b^1tAH{5Ue*I}X*uH*+js*Cj`
zF)Xfhv3X&C{%{z?V{k*Evk)LB;3fhYPl6}lZUQm~ASd8lZTJsm)*C0_e!K?1Y~s`(
z;R%3j=14myKxF}>on6T^Rg02n=T|AocAg8K*#K$h<v^AJbUV9JA=RpQJ3j-4r(KC%
zK;ELnKV+h+CuQ6daNmLDv@2u(gs=-h-(0{x>Q2*0Ruc0_6G6OO*nbThDHBy}0Ev14
zI~PQIAZ@84h1cEIBsI9$6|RO$!v3=(pn(VUdqJQFHSlcy)j)=l;Mx3{KqdpEnOz-T
zHJnwz+5A4#z-BJ^8Gi`}$Yzc-a}!YY0Mg8^q+eZ2Ni=glCE3i6faf8AH1o?qHUo4s
zyHXkICQ7;2ln#Jlzbo-AkZ&k~uIA#-mB~`~Q3hx87rP~ef5BaRfRuCzkV=4yrLxs}
zO5tq&4p*ulnEJR<lYva6lw4qP%POH>qm+9#|5-3>a3$UW@-`*#8U@oCyejFtU<h7<
z4~%$HDxlmYk$x=hZS!OpS3%RHg4|uUGb7BS4zSQAL4Qjwcmw_Mx`khHoCT2096O4X
zuAnXj3@8ht&eOUSiO~0(BJnh%!B_%6*7G6z1qNP5=xGq10#N0--TVc5w}<>YM<FUy
z2JNrUuhRI+W|rLs*v;Uc53nx>@idS%fSP?l_-3QGAzHg12zgP?H9+<udoTGXg7^%`
zCjgnAk0uR^LlT?0L|;fty#5nBzXBv)SNILfW`Od>*6AAZDg9~S<)p;pjCev=c?(P?
zcixL7Q{EL5XlT;;^u88Aj|?}7e8mGM<v@zN|K<tFIcz5Hy~aGgxAL?uES2-<9Po1m
z%-7WTW*a@bOQQZa8R85|@-;NQ!5r_D=d|J68P`I0N|EZ2PE@{MOg4GZ6}(Ya2~Dyr
z=)ZRoI-mpSY$n*<fwe<ZGy>!f1QF()vN6VG@IFa4<h^)UZ4r`h1=AdWH4DUHAbSDX
zWU-ea#d8*iVv%C622m44MS#5?#84muNW2W<4j^+#yanQWAje4@1X2GSE|LOdB6e-?
zB(15=y5NJ`Zt>b<Overee}8~<>>MC70eT|7&(y-FTr4>ecMPWurv^^M%OG$Ug;E(p
z$C*VBUfag1j|lr7AtS@)qhNX%kj)&4of|<tOHn1~kCz%*rCcme42Jy3aLO0d!}G^)
zK;kukoIl<V<UOho54IksGJdAA^wHt;lDK{&9(){3pHhl9%6|m%9i`;rardN@i@_`8
zV@(VPzJP|JORm1(F<1a{@z`a@f5RIU?o~}()eXEt!Q>@Zm&2<Tz_jE=O<BFVdA80g
zc1cq%9uG6h(WXgDjeW%~9&>T=LXy+PvfY|24woE&9evT_A{(`c0%UPf0Z4fgTwK%z
zQX3H1ZPdBvmHC+NKTaykJasf#>@qg{?66ObXS1Wz+dxk%KsIw^p6U&%D?nxsS29(t
zr6lI5Jup({sU_f943OF5aUhQY^gQ571=K5)a_6bnz_8Vo_z=hklrYX!a;@tcE>_lU
znmOT=*0h(-bsi#rQU?#WhyK771b}v~#Yqi&S?auS`gEx!{HZjUN&>{W8UU$7DS2w)
zStI39E|y%G-VpY`ObtBP(***Zsey+_2LS0u4f52&zNCgvS#JNZ@52fB<#KH_m_`D!
znImhq>p)Eh$eL{lkVOFLBv*~Cexw?#*&d@Bc9Q>32mrE~Bb`(dR16@U<VvO~A0jb3
zX(A=Ln3xZqc>w98`+%$f=uUE_LaGF%+)mmEhG$)gJwV=}#6M)Bsv2e7HQO1meDBHx
z{=zi{06r2mN}C-M9-%N;9`o?A282^ePQ))ewlPE+0;FR*0_i{<5;YblHMC@@gTm?E
zD8+qBKQQ&C6r;u@Amb<{=dYeMQs`KNB^UC8!~WCM!1Gs&Ah3`ccn)hhkYxaQYGDnK
zM@jHp){8)%2gvy>S7GYERl83u>;&%)fcVQHAO`?AE#*ee3n<@g5v!jvaW#UuiyL07
z9J~$9kmY@mT9U3`an}<^W0bdp$>mMfj>%kA-5ojuO&T;+pJv>1Vv+XhZci*I;%hd|
zZ7*#BJE(l4)>ty3&F>5PTcccmXVBS9uzLgh4ORLakUIoKn2#S+eMtHpqSv#h9?A+>
zw;_4>`4rU)V9f)u2gp`HHd*X@krMnHN5ug48W06QN|1OK#LYmalGqC3JdiI)>;^IR
z0$xi5u#bSa2gpJ|Dj$D(C27O6v|(D7XU=5&(#O65&nbZT*zZ8j0`yxKTNtUvtT#U6
zv+T7HyXefV93Pxv7;zhq>L+9c_ESA)T0c%S;k|iS9Grkr2arAUT2%2Qh$={qGy6vn
z^MK3(h;vteST~tRU7)@jvz+Qv@Jr`j37+Kuaqf*kHULz4URZYK!gI4yt^}+97tq;E
zurC1H3!b;hr^@ruj?ze9oR!iHhWLYRz{mtU0W8h(sz1PJR{*gX#PtBXHi#J>uNn)m
zTYz{8$VNc!WgzUn`1%~wVP;<gqH>B?l>q2NwvVKsTsX1v8mx@as82jAt?g9&@{sLJ
z@J|NFA={Ne?geD=U{utISxGFzRp1`DeG<HDDa-@6F9F#EKqvA%R=yFhWP}n~X^**u
z?giUUK+)k_m)oN{&V^-e0cXJUEkFwJd%emFKqTVf;?AZ3-1wnLPF6-2Y(y*`-7W*J
zT!5UvZU&?gKwjuM*a&qnR^d3e1u1bYKjW6lqV8#!YWOL_lFK>wSa(0D?87ox;3yy?
z0KS<<&|JUeUD!3rb{scX+c}MP(n)7R<XV8P&<4YZ6E$Qkk(H4RPZ9kq!L$q@71|Eu
zRe)4zvk`K~3MzEatx#E3$m*-lrw=uj{i`D1K-DSgW<~x0at`1deo;ka<@HmtA}fr2
zQi=3bumkY%_BR8FCt|LI@rbJ4rEBp5%fK3wGYNjmSZj`jpPYR+-V4=DE~LvPpS|m~
z+v3QG!AemxKGr>1CI8~kNj^nZ38hv5$f~S9kh&zeD(e8G9UySpC^4%t@6y$?ZItK5
zA8+ILAL}#kauZLu3C>20O`2cb4P;f_ROnI7a@=@f^%Tuwr(D7=nY?=Y++6ly&~pKj
zatXU1?CK5h<r^Me!uC}&gj~0-Uz})BjPQ0SM!cwP;f~Mu;j_BgMAzqr5M8H>6TcKA
z0)G`FbeF&p`4V8a5S-(o@h=7g{bt~oH#4Td@Cg99nc?zz)p778Z)V(v{99PT%Z#yR
zFpR2)OZ!i0I}z@w`oW;T@htpakF3WaaxWm8IrdFRISJ|rz`heiSsPIsU_S_=FObfF
z0Z)M#X!=+#9n>@hSjxqe`B<++>@%zfFCE+k;iUkT+OR%O)+B}U=7C{r#NTNqetRKn
z4VYE~tWF?y0(k?FO*VTdQoaE73BVo?BINU`G=O~_i0VM{N!$dYKaeX)+zsL;Aaeln
z4&W}PXzWN?bk9iS?(6W&y9VpQvksu=rlCn2+mmr{#P<#vIX7(q)5`#vn|1@)B~lDN
zw;Cyr>QAY{NZQYoV(>W%rVq*J-EEjSNXnq%bcW)OTjF{_@^Q;RbF<yoBg!!Hl0tW0
zdr$JgYQECNYx)MuZ<fD35;%H2em_OlPbm8oz}gR@qTh>u&jYa&L`NWP0NIqWPa|a%
zsA~ZBZy*)|nM)!CjrlB)4J5)Kb^zH5$Snn;c4d5}EIl_{rgqm5k6J)OrbXfb8p7r~
z3yGfr(tObXoExB0`RH9`W4=c%qtvyL(zPkY$L}hGsX!Rn&efBQkCSnFq(px*vYi`&
zsR0?~QbS8K=#+A?OI-iFC6a!>Yty9=Xb%vZt_0GH8f4Kk(P;3fO)ToxNN6jh^a-j!
zIg@!ax-!{~Yy=eIt!DbU9x^j9?7$HCKi^|K%+!ieC0`3LQU@|O7DXFf3e=b9OK;wS
zNsk8o%fRe^9&|Pn>}|kCpaNF|>~}!S12PNXU1dt(v$qRP35;jgnF~-X8TJ0TF4mtW
z$*VqPy`KpBS8|b-3XgaYs+Iw=nPZ2Mas<>qfL#iNFU_mYlBf(~0EnIdyB>(Ufh;1?
z62ws;yGe8gQ7zr8N&)OELCgU%10d^;@*CV4%6|jO|32c|h}M<ab2WHY0c4tf7063~
z@_clx99S_mj|XS5Wo$RS+PEdT+HkSrleC}Dp^5rK&~^aeyW^tCIVFg<woNit;rOz_
zVr)5lte+z(71>gC!S*G@KL=O^ApQpO7l~XDPKH+n0fC#0{3zUtW9Q0?tBWSi6`1%`
zDxX5idB$ys+H8owBf)trhEF2pK~XM1o<yn+q$<GACy}zrYx4=DW=LuR@KrQ=^pi+|
z;imj{O)b^xcr{D8Q)_v?5v(=DpAPy<prie3L1#0;-UzHWbX^Xxw}QA4$aR34yFd&C
z%h|bLdk4e@q^<|lJ_JH8^nM294Ww)VNUT_748rYZNa7`8iF%NhSaAY8#{e=e{|53G
zK-K&nD&~XtP4MOZ0K)zYUk?6uD;*$j^g5bU>SD>8ef6VRvKFrf-U<L&i+2Ii86Xe5
zeVc6RWwgj$9uGo(KMHXDJq5@l06yNA4L`3ne-4}2kNR43O%>Q@GB3KOywe1Z`Blk{
zYszQp>fTLWQ%>c-L+m!uA6J-Y$PK}iChQ5`!^i6HK`qk#ecW_IGE1F?^h?ae=+Pzh
zG@!jod0Uut-dVUq^P89M74R*{{CFo6lVxaiWfvBc-F=bl8TXxa-X~3PVYw%Y$#yf5
zgz0}4OCM#@X-^iahqA2N%G=(w7uhT8WDE-B4VkuJI=#>}t#7gPe#O%7EtWp1So)_X
zoyFdx(@it1cB|rRV<N78Tko#J*wSXC7P5s_=r$ir93N{{$N7lvd|U5<jB0#a@9pr3
zd4P<QxDRk3qtnA_cufN6tpHi>U1n5R>Y15Pa5y8a2~?Ega&MHZ^IQfz2@eLY^K_=K
zn~~HDJYOS2a^0y)9(qry-5D_!cV@XZG9V_>$m>u-UmCePqXlsb|0lzL7QSQ?s<tH~
zXhUEV(sSf5+qPuXBU8@r>%h4sqa9BaM)+5c*47Mp>zs-`1fR1W&5(cTvC?k@bAtJg
z8p+@G3(=m>@<c@Enhg0HxQK%*&(`A^p))8^>s)JemK?DN8~cn*He$`&k&TaE|DXn4
zkeNXn7G+c>9t?TapKN9txhSLlNpMa?+F(GGCElV7+y(kofSjYcHN!51){ukkKhor%
zWmaY^U93w<X@$7F#FSiwq4M&vmS=eWL`|&`U>gG!qX5<b5Ho?yAkh`XZ9o<Q0uLBX
zlTBb}K<Ftq!TAUxg8FDw!)5ZQkz6R=o8iCxCj8Dq)^kv@8j#H#`xe$e47-tHF9$IO
zL{EVID2NY%yhY+!5REdusw}|X3gST^_X1Ma-->0QsVS0K+UN{_!-e?WgRD2evjt#n
z191k(DL^*aYJZ3nyh(L-?JotHJE!)~f~=lntJ`q4EejzR;Jw{w4<Yf)0zE+Gkv0l5
zu3^F9Jzk6{hQc|D4bxoQEfc1|rFZBap{8OCt6c^(-rs0yW!Uf%VOFO@MsNtL<21xO
zQD9JGfbu2`(_1&=>W(RJD$;A1^vq`1o*=!|M`$fBx4a`w4g<s{Enxyg%f)V-Tv&|f
z=tVq<B+nzocrIMTbLMte&uhha%A@Bc2FipmBB|$-Vmuu#;#u<lF!ml`Rus$oaL=4M
zVb0lg7dFVU2n&)WEICIJ1d$Aa2&_oX5)EWTQIHHOu1Zi;6ysGyM8u2)5kvtK2Dn`1
zngfc;_rBHLvuDBk|9$6qYPYJpsybCyhw14Fcz#Rb8Ets5NWj4Ig5~ium+D$&xr)*m
zVh`h?QhBNDTGK%IG!ZNH{*?GO=!@|p+2}(iP8^V2Ae&=!VtQh*gzYX%QsRF>Qm&xA
z0!`5o5G`xCM1wcfbP=8?D$VK-&OOam-fR=e6Ge4(B>PR&X0QjsqK%C{anz;WLIH=p
z4|g~{g`G=#v*{@n=~7hI*+a-p<CK&F5YC<;zHv%*#%J&|yiU^;eQumzNe5AaZl#2L
zn7LU>4nLQhA)jn+o+4k2&@ULa&|XC~9CsK(Wm8g}(y%q1c-fSED$fz`SvExuVrNW0
z2)?|O)Mbd_sqpeC<tU*~pjR;Nu+%W5)-bjktY;Fb4$U`5j;NnWRNsLTB;<<EGYRp0
zIim7RqBR|E&T}6^=+8uHepk1|q@mYgvY3#Y-!r!FL(EzIanB5X>=;CblyTxD;$`(M
zt-~=YIEj?>R!E0ObW>8~?wX8e==D=lQbYomkfx^SPr0huPDP3wPo%2G+Q@o9ls~7C
zj;Hnrbv)6K_2=}?WM2QBkO~|Ko46W~$;v;e^K}R41%R6D;t8Y9^cVGYqEd@HV2<qL
zDpUr4OB#+M%<?*?5~&lx?9>F?J<xa;K!vEbj1h7JEUdGO1x6z4VG1#YM<B2<5ULoY
zWU)Z#yF}K<R_Fx?JRb<v2!t#a2z{T(DuKF@l-`EGn}JaMK*(Z&&<}~M_EzXH1U?9a
z+5|!t3xs}6WZi6qPD0=Wg-Ws_ItD@(3xs}4WJ%UegZWnqsH`fxkln2b-Gk_ywUKX4
z)D|NbBix#3A*259PlI<`B5wp1Mj4NH1@WpOUa0|MmnL)%+MkFNu>LC?hUNCv`U_0X
zPNAXsa|-7!HZ!fhiF!;gJp*GLAmx(%nB62QGk!4WmJDNFu1=&dE0r=mbrxZn-y-aq
zMETpmcL-s-0h#>3?Ew9KTf8Bx{$?0^$v|z4<q?(&$h__d!=$fF0ewBg#uq3xDB+((
z?(PD;kYVhi1qqoYeFJ(gpnBz@xDe$|Z1J;SEl)_d`YYR0zXLJ{K=F!%j|ULy!V5i>
z1;||dHrC1s>2uXVR|H6J_|w!$oE3s!VWRdG(5ricx1>pte;<$FA|K!Fb~Yb={+1-3
zqWDraUiXeSOfpzt8B8liBg{(Fd;_Y*FrGlR9tS9IbduKZilzL>0-Z9?Epcr9D2X!z
z?NF458w{uN+@?k4Xi<zOFVNN(>nr75oWyx;G0u}#o8LBxrzo|Px0xDIrD&j~_@&O=
zRTpE$kq8%{qP}0K^Kg{4hM!Y-dMU;z9^<c`kk3BuLdmxQQh5BodZK;_2xOGP5C=#(
z_8!Ap6+p5N=uQmlg8p(zBF3<LK;H?#4ZSrJ^8WYxp!PEa-=nUjd&ActPXaQpg?ZOX
z#3}d(=+l63WG7a>i*z2*i#bx)gV+-MFNG*S2N?mV&{pIm-!QrXRu#JVbDAb1?^5V6
z*h)bl8{q5)Q58sKfZy8)KbWugC#L4fG`1?{YO(_<=bUhKxS!J+$#FmX?jSjfp%co_
zsh^0qMLo*ib|YwS0FV#iSx$Uk%t%|AV4wSP@U{m;?=u{F86-)*V1gWFF)QvgPsATa
zlCp%FENNL5954Kbv@~OMd$B~ks)poRdk56Pl4Pwt!i1kdm3<O~vxZ>pm6n^>{C7nn
zv;k5$5Qd7%O}vBFjEk+Uy+gNSo50g`S!HbPkN72gW#l>(`zk<6DL9Zn;`Iwqn;Su|
zVOWDH4C}x#`8eoL7&c@J!+J9;qcnC!0I;<`<6>(qKs8~=RP|T9G}G!0swYEWeSgQr
z7Y_kB7!V%$f>N)T96IV>+|dsuB6XJI|ILV+2A)ae<EI!cAD;h{Z%6E+AD7`jch~O(
z&q9DI$^E%qMj@^yF<4zO5E1fa>*szjuK~!`&uc(-P+En0<9z)YBZM1p3>LNGULtxI
z^EMo8M<DSbpd`19Ehm<Z=g7E6%#r+);5{L!NdHPPKEP4$voz5}<P~aW|N0GFzmQY<
zR~5tPDvMRJ*-1-8YOjD0`&T3vizI;buWTTh0Kc;lw*708^sh<((7&2vhR)U)8szH)
z^HnMld6r4AH7Y^l#Q<py%ZCHsrZr}hkF8N3Jaqvoovks(C`1<NNOr_@3tR?<HUMdX
z5kQ7fLWLecS(XMxwpfNOa!$fswi0UiWwmLLm;wlKci(b)0jBL9yx&F|m!S-I`fmmQ
zElf!+c3BY=)?y|d3YG3oA@2IGg1`z2rQe3VPRj~^#sYmCNpYS+@PlAj4{#m?u?5I;
zB<=>W56B(>YM35uTTr@cl#eCir<f48X#NeZ;{e&Iv3#B)U*M@uBmP%F^cAB=dn!@A
zFHqfts!Jr|P0#_g(-EDP0e#fyG#=?-F=c)kL((JB8%;vyOD&DSwd}?0;h=Uc`)}7(
z{Hkr7!nt=D*K#mkfvzR14Dty``E@L%>Twtw1iB}~=td64ThWcI2fZ2qH*!e3kxxJ!
zVF;YY2ij@;1o8(!X1N|XMH-hOD|8X+7$806Z<8NaSu7Zdj>RMWR-;DPQ%ZtAopKzB
zDgem?_!pagYkSK79*NLXWLPLL5{|N1Ff1I6$M-NfwrL$`uMLpV!E%PqlL^|lEqGf4
zqC<`Tq>*TLkfg<eB)^Eq>!9|NMk31+QWmq!!LHxr==@@dc)yw|WV?5SIy(|IG;AD+
zh6mwxBpPU9&l!nOQMv1?D78+T%l8Ykxf~75MXfRBvMyeh<}wJy?hX)hSr@NOb9of>
zeGE&*0JbjPqyW;VKp$fm@3mPMZ_lvWW#OCvFrf|FghqiH#*nG%!8lIoD>WO`OoqUy
z9@0j&4CE4k7}Z1CsMdjg0HEhVrbf`g>E|}bBO~s{fBNaC!1Dya%!2~!%QskHeb2=s
zA5w_cw*vy(0b+gc0@(}jdmEAe+xl7?>$^Kh&SJK8ohRb)PWKq=`xM$g2IzT^k-<F3
zU{)ruzVE>MUqJLe!;xftFPI?AgU%6mw#4I4BFQA{vn-egox_}DecOvA;#D;yt?w<U
zv(`7lgwy(t2jSNGmYdjftPd4cYAQWeJuGO(XcL@$n>NA0!DMLJ{l)~x#4FJRQ_5kP
zhVqLEj)^y<3HC);CxDpSn0RZN+j`Ke0Wi05#$$mx!jK7Sd_1#$Tcv&n^%Fy2ZWFY*
zU6|*o41k#11Z{4OLFWU++-@;B^i-W2(S#FWIWSx?x53~k0H_eh>4yxX6JQOIE&iMv
z;*nYR;y=giNe~zhkT)Ey3?BFxY1EJWIGbus8IIq#ga0-rB(td}4J)3u84N3IE2PKr
zHDF#1kg<FRkZqL4wl1bg9~mJxz=GM-jq&Jlrnv!ZhahnfAhRhegO6PsX)EKtYi3hl
zf%glY3Kt<~gH$XQbiO(9NUuVq!p`>-Bz^!$=L?kw0`Myu$7DO-|DGf@Hj||8Mgk8t
z*-A^|k;6=a6<!h=(*ZI`vV3@FjeMx&hseiDE)Sk^06j_SZ4@eXt!C5}TNezq08+8N
zf%K$=o+RC1L|kRDV3M>n?mmAX(%~d&2qXprWRhe#y+B6y2k>H&)P^#gBuxVU^-M`7
zNjC?DwU};x5h^{ELYyScg}`hI$t20LLJ<pOCrQh|umm8Jqz8elC&5Y5HXvI8W|H($
zkmxOxzbPIsfu1S@>igh20FVid<-?Z`z!$i&<B0zf5Z!6?Bu$du4JvLWRnLpZ2SRny
zB*`*(iVR8a>iuHMyq}HH(Opf23NumipEYcBS2~QYYATABd)qCz8b<q~W4G$MzsJ<3
zQ@CNR@kO1qFY+pQ>Sq)pW$idh)hYmIAB43B!0&X{e&=3L_b>!r=1T2lHi3KuARgr_
zlMap(v$$R3k!la%KL@av!1Dq?4`6>9Mps!ZSZMT#NA9K&`_P9FI0TSB^lu=?0e*Q?
z7q$=m-_xgVM#51RvxAY-Hy%%*E~K@8h4!BTGJsi5yhvfBtxVAJ(Th=TK(x2vNE*O~
zn;?9%<Q#FQTRc7iNs1MWlC&&K_&nyoB1T2W6idWAZK{wKu>k7K09L7^VLNAt;sj}Q
z44XOHB3c{iWoT#qoWcd`jYU+Cm*eP^hk|7TWOS+?&*$jW2XtqKae{P7JhvBo`clwy
z8J2;JToSKZ0B!Gq-UZ<2e`{(xQ5CV_gP<#ynv^RuS^OSfhhxl>Rin7vYEl7gWdU;d
z<-`qm4>VqC3^<Ywzx33-zR>6iso%loG>NCm(r5~VCjq3_&j&J(1bh8TAj<)!*H19=
zxS^Kv&EkFrYC!B@6S&p`q-`b|J{*uSSc>F3$ph>G@7sXrG{ceP0bUN0Nnw|$hjAFm
z=(ZQHVj1ujOtJ?U6@9IkGJm8Y2fdus)1Btny~1uxFKkQVUk^0$_(Nz%-N?#_G%*==
z3P)`)ja)h|dw(a9>tg`f`zsxny}#^Apb6ajD;;lD0O^jPTLEO{mlqW2P1f8+@pv1k
zm71Fjo{0b{ndQTq-QWv)&3weq14OG8D`2IIiWkuCF|{pL!tN;HYuJQJHI8k*c5Ees
z5`JV$n5s*7H&R*&kkX{aYp^uWfqoKD=|>}O>eMFLj9Y>{naG+&f<q6YcsjvX&P%ZK
zgQiNIcpm%BAt-*&Cg{YgF~J`}pJIXs{yD*>=Oj22YmHz0Fh$p%m*94r;4i+kVadv#
zx&R<0{Kc0N)&^Y-Q0bX}PO!;2366aqUj)|)78r>lqj}&VQ^FIzth9SV@fA#vEA11$
zthDEVp2jd5%?ZB+v;Hs8n*d@ovyEDOTaZTcA3r`7YQ<<i1J5S_F&fJk628D_zDNAG
zfavW;kM3fXX8d#c8lPu0AEHWM)g^rD7Hu>SBai$!g>!()miVi_EDlqv;6V#glM=q_
z%i^#P!Y&7-oPqhh>UZE5{~iLp3{d?hl<BdJ;>h0d#gYAr;2!~WfxG=^0n+JM)l(e+
z;@j?k#C|_|IfRmYTOSqXwok4pRY<L6WxeO8E(D+Wx4ux&2O$1!IFO+v=-;LRnF3J$
zSyMo5*1eoYMYX{XpM?3b`wtBdzL>@&4*T&Es08`I{cTV(pIZ5W`+I<_0>o|xQRzD)
zwE+YM9MfUgO=wX3{wVuRUw-ReoM-Ex)h%WRQRk>1m)3s<%AW!h;}5BG`2$OM4ZJ%6
z(aVZig35guk1rPM7Vb7rw{QW5DgK<o%*Ra&FZQdjmwpNj2LRH-i~YtN-O5+PQ!9Wt
z!^M6(2X#3Z^wj_??3emk)UpWF0)|Xh%Y4~}eh}1JhG15-+>aC>!Iwb32#~eca$ok3
z-UYoIAWNz-CWqLwG#DRI^XJ^<M-DuK|D55U1pil*;ik0Z3<a34MP#<Wf-;=#{|){>
z0eVSwqfw7DBL=HmB;?Bmby{_7tOI1`Umr+5028%rOwS)PLT-TB<&kr@A8q_7(yR)$
zPLQ}9AWJGMgHz~6+RC`=&627gc(2l_a7lG6NX25olIlS}@-S23bZ`VDh5=+ccmt5B
z06%PO(oP5e_mT>8AlY}WYa~LdB5nU^KXS<?{AY#V295IpvZS(nVO5`eSW=y4R#?fa
z!Lt&emsCxRLZ#YiMqRNFgJA<eD)t>9Z&N}qsS1pUt1K2Qsh;s&|1qS)CDjo~d<c*w
zmF4sT8Exj^#gb|z%fKboN${UwO0uN7&Lre0i<$PPQ0ZM1;*#n&2>e1JSyEY6oXlc@
z?2;;S2{!%#;(T&|Tu6e>Cm%>H021ZC^P(V8iv|7uK0iL4rQ?2OM@V!4NZ+@dp+MTo
z1bzQ%@b(2nml^#@6Yl$iBrRseosE9{b0nFxV`N!E%3_w8X=%pjhGL0$hmDbP!p*aK
zb_rI-uoYi|O-EIf`Z9vq!<X<&v$S8zH!6yzD=%BWG|Mkfzcd!58wn7<G|R6`zqA1K
zEezu>_AI~UR|wkx`T>T$e3??SeK{WRGUyipmD-wQ{?SXrS$Bt@j$pPJJ6oF0`ch<a
z{vM^;=uEDiqpj-Jz<CaXx0m6ujV~Kl$C1b(Ce8^!8(%iAn%BT#ZGbq>Hhx>&W1$v;
zo(F)dyi~i&=RiHpkg2MjpFzFvg4)dxIM2(p^E?6aD}Xr9%e3?S9rP~%ah@-k9O4ZY
zg9XmBlOIWY0@lU8oL&<XBY-$h%ZZN=8JT3~xqmZc*ssfh{~~~Sx@TCG+GViwoM%3m
zYXGE=_XN_N(kjGTR?iqAJl!*xb%f3pesl`+$-8X_L!tnnpY9n>Jl#7-#>JHd(p9eq
z?|4Z?yxD@ey1g9r-ZW?&>PLRJH82}oGXdhwEFZoqLq2%3H_69RF9FY;)F@BU78!*~
z{h%4OH(LvaLV%R?H6S}Fp~8HM_LLEEu_Fkb!+dx5llV^$b^u)a0ph_dABKD*q4N%2
zc(6W{p$GdM{GU;~c(7-K0$L2o%8wpwA%*C{zK6iK6cP_+Sv^%E*@HQ?JoOit#DiT7
zq8vax*p)y!0*nXyK1kGJ)<Zbm{CLZ!kSIOajgXiI5D#WK@$DTWZDj%vb_aMD0HVJb
zjwBD}nr@5Z2?n#`PJciCv`z9}h~HzAw49;yWP&6g2k#~(88upylFST}v{;a24?mub
z{wcojMk$_U!Ic*0<S%fVH%4=cCE{Ibib<zg3+l`+h1b`FbM(I=2<MrC#>yXWBCSW|
zeOq!4L6sUE##!$xci||Ac2;z8`l8c(U$!lB=#!j$U-m0<=rKVwr^{3o_U=XF`Y8p#
zzn`KF&kdYh&3_pu7xHV+6YoZqZ3Bpt3;8YRiObf;Dg_{(IOKPv+A*N7VHiEJ=cn_a
z){CH@VOWO`7?!sUeBXfn5&&ly(ax}RK71U2t}m)xUn7tW7|iF6QSJJ=fo>0w=Z>|e
zntbC<0F4DRr4oMRy=PEd&XneWe-=PyO3Q#O0r)+Qh@C0@KR3=~Au`!WIBE{|6rGFw
z6z^FqSojQDdeB;^y&n+c96%5KuLL3%3rs5E$EQJDI?hv&dIBJpWjS%@jFGl7fferr
z?+!rp4a1RS#m9mqEoQ}?3_t!cl1v)<Eer1S`G>U3(0{yGB3@-f(u#kEI%CCM)|hba
zwUvbZ6fKFI=E{G{#1=Q>S+Ks`=V8HnVqse1>{+@UPY0Gb1Y?&Bw|io;qi_tx-VYE<
z+!L!qOKeofQ&j-+oM=z188zJjdM3mEZmQJYm>h213wkHRN@81RZ>%gWwq#w*;sCJ3
zcVn`G=>w_<L&mE8u`H%P71S6&X06@W&Wp(z*M~rFAQ$ZQKup#-TR}ccHrnffSe)57
z0s1IF2B#-X>F}irjwK()BI}>Se-6*(>S3q_$lzr8a3O>loUS7u2d7%#sR7VK@-s#u
zUMnzI9i+)0Ml?N8wE}Z9fDBZFffP_$h4{UmFO85JU|7b>&p8~6W<3uz{C3avkQfh;
z&-dH{WF|nyXR836*{HH(IzQzj1JMTXt^*)Ro^Jci@L`T^uwdr#Q7qDlNpgey8Av=u
zDXF)mv$a*=oeb8;AF;?$GP2%wf@udpUOBtl@L{s0>&<_Je0)9i0C@HRq#Aw!@)JOn
z<Vw<N$KBdSp1I|Z(*mh=ufC^T0N!Zik(XBtpU#z1f5tleiG=hACB;=72{hfyoctL}
zX|yHTRb)U}34jc?)qzx{b{XKUC=NOW#gW`lP3bXEBlUVI1lmwYHk7i>^vF?9Grg~3
z@wdpxLAeK*x&dTE$@1Yw9PkDH<T}J(3y9_#J=&j$>cN5PomBnbSUeN;u3dxZv<&!Y
zxY23+#_(dwyf&sd^cyvxf_?-2-|J_>Ir?=B!a4fEZL~HztlN+q4|obsmD-QdFY6Kb
z4rhBThj+a@w?kTwf7@gAIBcohx6or>(7vU>7+i*~P3(iDZ#BN<1?^j=q6#Jg#J9Yl
zeai~acQTBl=L@kG^cl~AeiBe=l2LgV6eYR421Q#;Twov@TPopbpUy_>^Rhu{ad8`C
zvg|no)$cJ$j@}z%vh4X0^eKih8yjP??8$6^DLtT4&wtJacA%2B!;y^&N3pP(5tA`L
z-;DVfB<1H6uHR;|F(X!;mDdug^8qq$&xqA40N-5DQyIpr&4^t_@4FN9a}2AEa?FTz
zXAP-_czA>`c-2|jt2RMMJpldXZ0#?5f$RYge>q$G%Tb^Q17v*fZs#S+V!`-+Yb^5g
zi)eC=@5{lz6d>dKdLU~7{!}CU|9^a6W+WUnZYor-jHR4n5***3hQ=qE1kadRB59o8
zABb8k7<3oJ;@wfRNrSFs2`P(N=3weLIeN%w)IHJbXh?RRkx*v`-6u>q2i@CrxY>tf
z@7ZQzZST=@$C+rK+}~^C*pIfz2{W}LdlljQIfdVDH>NO1cZ_#Y^c{edMX2sUv1$e2
zs?rEM9)OfL4>GJd!)Ak?z_6~!=Ac+Nn!*v#y8tkSYqcp<Z0xBDfcUj)a4fTSTija-
zst!Y79M@^%Xa}+_Kpv$|HaWz;8eEJsG*)f$OZd-`q8E620JOyv8b()H3>{B?&X`!_
zOA66qu7kj}0I`@!K&}V)JB{%FZ84W4IqvKz)A5Qh+mg<>SiBEvQC#p`XrB#`>7A89
z)fj0j6S(6Q;9UlYh7Cv3^e!(*(qdNJ85WCgLy}@?`cbN72`P(N=D^ZMMJp9c#Jk(n
z0xj(z)EP^w^rs0w=TR!EA~%9(@ZGg7bu(NgZM7G2-(9?0_n16R*ocCy2gt*b?y)Kb
z;Cv1Ac0i@UM*N&-P`E8M`59D&*WSlSto>NQWNo~!2MKbTAqm!uRihvK0g69kf?R*p
zjMZg=U7Fy95`g%znz45DV-JE}$uK^(sTu1+zCS>J4S@01*2deuDNYFjXsY?zRIdd&
z2q1neU;D9XpvMEmd~F`FbfIIZ8;jK2Va#_uc<u*i^PO)BgZniM7C5{nm@HC==DQsN
z+W=y|dx7i*_?wK#|82g_F>BzHl{bt8=A+D4yI9I6Oo9&YV`x0eB<S!gk>v1{@hq@>
zgIUXRn#JPXUV$1;K2AZ!*8pw#h7)ytj!a<re}VT5AR0CtNtRzS5Vu&6WW8AYIV726
z`IaTDEM}RLEdRn{iFk8Nb<pznLY?)oUzl)O{x>>2$;bX=V$b)nS&OmEa4Km#bt=Iu
z@zF*GlrK>D<<{AYzh-VSLtF6|jKI$+?Dd+lVqDfvD=ys(mPz2qtMuGt2<W~H<D@{v
zTAsw;he6*9fW^AnV!r_ODMMhfA#JgzLH-I5iw$XujWx#%A0Q*|W|JQmw<YVG1%_BM
z7P$l?g&5+6;LiexAyxrW3E&?vBLBY(QT%AS>Grsy++en~oRnDnekMn2Y6$K10b)&-
z6Zi3-BNJFt2k>47h-Mj%Bx}kKlC)TmWM(WLLhUDw*p>y?9REXFnlaj-SR&p-rWR;T
zxlm`U$vbYsX)jHJaI>dVDb*-B$IGI}=6-!K9+F07ncQu92u)3$@(<>6*Bi!M_D99b
z4neW|0K{DON9CdI6QI{KjOMaG+MMR{1L)%nn^&4)9SaavzXjGK0GQB$s4R)cgBr~c
zn9#v!giP~6&I5=E9gNCicNORr05PFWHjm0;feC#Xjf{i878809{ObW?LjMBt48VWa
z2>;(E)Y=Tid8S%%Z=Jz{_WU>+|D4IugkFR8od7W*%ZcIf9GSp`-UsgiK(vzKNHU?;
zL6Q~=k~|)bw?~U4nUH0{!`y#J%b3t*#S-z>n_8d=4TL&tLSLA0n$YwhoF+5_kEP2P
zCFhtBDk^u=ZrpyUO=$Lw+JyGFXiWT^!p?}4akHB?q3=-aF99j7KBQEGgK2nUyCvQq
z16(>m^@x_dBny>~TL3b7{X<V}7h@4S5<pYw8BHsI>O~-LVbFEsCL=6^VOv2z%dn9M
zDaDXaKpkNSKep5}n#(ZN3VsS<nVT?l_l)K-tPaAe0p!C~y`nzfZ5{&pYKBc#y`%D$
z=4wz&0d4uAt>>dJ->gep{W}bFtKY&c!6PTDo1*d=DPCWbc>&guH%H}TL(fC(8Gw90
z>*i=C6W9m(9e`JOlUBrgb$)tN>AQ903WQfp3~!6cMha{!eK`a#F_!zu4;z+G_hJ9n
zuuR7a_!|?>yJXr2qRPX)lB@(pl_P_2-Oe&2QeK8(q3E1|MfvrU!gWs2RNU?O+q8QT
zCQ0CrGc+384HdHE@f8aD1we)N;d|H_CWA%T#YV~*8;!Ml8$#cJ?KcSg0B}A7QMENp
z1>n~+!a-l=4F>L1o=V{%iN5wq^?r$EZ{s3Ee48YeR~ZR+#bb<qLBbXbayuy+xseI;
zBDzLMrvX68WgkNWA&bFs<>yR`x?fO;mwmK{Ks$h3_R$+iPZGTBV<?d80RCj7$zJv$
zEh(47hmRmxYgMjtr$On9QMV<xBNS9jh4@73`x$(TfZRdiB#1&FYXJT`riu8q7SxDb
zC|{)8#=0tty0=B$l~(swNN=G!>i!7G5faq>Um*Vh_$SWQjjG{-<u?;vgjKXv^Lo^e
zzJrwLB{SM!dkP?4GHkpJCXEKmHZp;itO(u;fN0!sXfG-IN4X}*RaIG#$<g>=n@j_U
z)C0&ilI6qL1HM3Yd&IY+>b&z+*9lZNrs{st_;#!MDv0#9sx6<V$QP&{f%sum-LRNy
zZ=dNRbi0S3(7N5Iu?B8b{S<`Lm}j9A_cF1(7p@{)DWv@W*S&Dj@un^0wn^JCLUcCy
z(f1V1#A2ttcG`J1XSUG_zp_rdeN>+K%s_dj0mNyyk2a*!UJH5+!$L=>sn5^`c=r?Z
zO8_|X%e5nSmv!^{8vWGzfi44rQ9{|qicU1qlCKIs!HZRlrW7DAttV+mRU(*=96@C1
z35c&w>@%eFq0K?XXglVhL|d$m0QAI_qot0Ogo!R&Itwnmik@_|M`SyI_~EMB(O(6+
zCxD|%H9g==0y&yN95<@ziOBt+R|CSl`=`)k&QX=&{GCQo_XM`V#09(zo|gdP0^S3%
zn*?3JcR>CN@HZQ2?E+X4Jl!QbkkX@G542khlXdwyt)q#4nBq&1QkUW!67)%rdeg|@
zE=+@=@bU|6vlRF<0ny!tBWd1IHCVP;tb`GFYDVLGY?Ap9uK|!GEhoP2Yox7AkmTjy
zZO0^Q8jhq++{6UAsv+yJK{Q?k%_=1u2$5?5(upmfCwzhG@rWNw)h&yu_C}b($t`tI
zC^yydz<zYPiD4h~Rv3aEZy4Cv<v4C`H{l!~=SjG}Qd|bxV<wV=?Y$;)5`?}p;T$oa
z4TO{zGFjuaX}5&SbSm22gzLL#IOWM2kACEYwdp(LPvF*+aI_{(Jx9Jo8ICsMv>_vf
zoY83X7Bo-^ereN*X{*&YWW=J00ybTR2M%E>9+AFutgY@#UeK3#ra&fUKSZi>DYyVN
zITMh=Y1a>tI#lsG=obLe3x0~o6#XpdGl1~D7>;9?YPGmQaRl=8OC;6;YMmDlRk|Gx
zw*#EVK{NtVhXG`ZypE8oK=lN);!MD*!54iHzb_)={&>WW2FSR-7{~&$bG*0gVYLJ7
zZ~D%U2z&yuo5+3w#BLyOkvIzCdmyJs>;sXw3<d*mUIkGdNJSFQgXjUIGa&mY^Y}MH
z=7O3Gh{Q2^-Pj&yKLL$-zhWO#Zdd&R=7&>H?nkM4yW$dX+zF7|71sf|51?;XB&Xc2
zxD`Rq0sQ_(3vXA1^?6fOT@IYBI13ma)NE`dPVi$*2LEvcQilLCM*j-rXA&HvV;wM!
z1o+d9TrmDaA%D_e-!PFOWwC^gRnBjbc+$GUMu*R1WbZTUig%1Q-J?~*H8jgpkyM90
zieJk;6_GFQs;q5vjVB`d1~{%S^z)Px5xKD-XBy`qCnAkbGBeel#Ln;jh^$EYAz012
zKOzgz1a2PMACYyZHv9wHC{?v@pyPQh#on!@o{z}zMXBc_a$G@6y<ns&%=u8Mn{*E;
zXsJ!PcF;rK#t<nz<fce1_K=#W--`ip-tja&A}fLcp!)$bSHVF}*Co6O^hEMa8ai3c
zh?MvbWH*Dpk6|27X6odB1N{R)Ruhj#hPKif2;YbS&*mnq?i+^6nH`CwqgtGWh$?-#
zr%C}-m>Im(NMTQfj1NWJo@D$0QPsdy1rVKYiYAv%uSp{G%=VZGag@d2WaQ^8iny;*
z9cQ+Up{gN3hP4hrE+fHVtq+i10RLN~$<A!$vNm{Lj%|ECAS0(`a@7vz_|Ax%gUm`2
z!=dClYUNFNw*i??f=S#3WEH^w>zpL8Hr12*5~d;?Wied_s9qL{bYT*l)Nh262Lbrn
zu+hXj!-gT66Eb8n`fgIVcY)E$k2NjUOnPOZqT@`|ZpeF64Z$jY)+obZ;?GP9X9CP_
z!{(e%jzUNI3Y^+fM@8z;#8hs%99-HENhR^r1Z@yqOhKH&0Uy93vD-H^QkxG!wxAr(
z0@4}&FT;(iBBwz8@Q6Rhxe?*Y8H>LMz_t&N&B(~D2>CCl{{SK@K!iJ@o&li&@N^#s
znk<GvO@7Ych@S>_XFS+)!Jk7JE~zYMD8P(}id^GH_Fy2A+OH1&ssI(@jitwfge(>a
z4RBK&CdAuIn?Rrug`!^@0r5EAYlgZOZBrG@s9)}&D(`@aScky&Izo(4#&_Rl^%Jxk
zn`EjaS}hGes*kRC%E_i`pGX7NbI$MV1AQWwu~kaQH=p}PE+COnr9Wc&8F!NV%tWQ~
zw2uAbbmJ`u+{s+H#}xACMamZ-&4DOVdq4`c=S3P&-+s_<1DY)Fj`2H^-8e<hUoYha
zZWl-7zPZq{MYA#|B8wF@?RCO-24v#QSS6jW&Is!Sh)<Y2QB~HiYBcD645JIGqO<%w
z=qCVeKZ4Kf9+@;=XS(|Bu#ygkaSPRbFxAEpxw-9g@O=o7Me1*c(@|?^ZI?zu@4%JH
zAeFcR-4q~$R2d+pNpO&=0i-%Wg)W5sgiR~C0cKm@X%{JZmg=g4tr-NGP{`YF(&TVi
z8JT0_$zDie*`HYA>u-@NKh5a90cJrK?Syz$vi<^_<p1Iz|5KU&x)JvdXq5bSLSmN#
zB>(+^^drIij|MUlp!46_sBo3Vg8bKul-NOa%>PXgxIu*YDcj9P2qQv(X)))DNZQX7
zl26$};5G_*al=M0l?n@@k;hfK@~$)yEM^@Yac)t)35I9L8Kt@!9=U5+_LgoovGiHP
zO)NS?)aH!6EZWl4rc6|;T?YS^8%gDZEq<|G`>xzbJuV1yc)5_18<A54s@mIC(N{F<
z;efS7q;3&wiHMwgP}RO}hRc4#a<Odnqfpe1bI3E{n!+j<%bp20=ge34y}!b`@5%MB
ze~0xYjB;t>*{}@CszTZKmD&}S`Nk{Fv`udaI^wIJnsI$sxDJze3>Cc&AlJk03b$ZN
zM?oK87;mTD6~3HD4#S;suoYqYj>p~MtV8IrSXu4~%XW4xL{|r7GAny^PC9{Z3&1S`
zd&6mX45ns)8c8nZexJ_#+n`@3*GTnlSSH!WL45|0sll(|hAng%Wc;kwTobPPVkqkA
zldyZ;NBGYnI(#Kws)AUI<EM<9brDhv;5Rf<c4*cQ?PcpJHc6SjqX+0-hSgC&GJ!9`
z?mi?CV*)ZTcY?n507+m3kOF|$FDZd7;D@2&`y#mZ)&D3dCJ0qwHp8eOsgj%v{1A5Q
zevJR`BWgL6E(Vk&Uw2ahN?mTST+`W{*Tb1H^2?uS9}|5)dWD&9ObXJdV$zt)G+3NX
z(EkWPinSHU780CqyaVJ-Ky+qO=2dtu7As2weT}H^vv6q3C-}b<QO6+hDPRCEo3wm5
z0cIpjmet|ZPnZK<HTfO5{|iu!dBb91p!!OvK9c59F)x=q3zokEwsis90I(fRzr?a#
z&;=F?Py?uKbHHY?u*tzk=>x4uS+JL(h-BcoKx8a5f1Eboveg1h4YJL3sCs9>XECeV
z`6Nwp+!D;qDS(en;G+2N1A!T=v{PYkJlf286;WNl)fphy^jbcAFP(f{o%9&_SO){Z
z)1MmUR?a^Ig%*pL!a3cXlonQKECfbVNN%u<80&D9#R8%3PKu;51I#y5KzZd&61;JC
z6%@jD<r~(CWiQPNh8wT0(b*MWzTT|4IF0mMns9noNXj%L>o6TWEH;8J?0f-k?Ll7;
z*QX;=*DdLZD`mn<uhu<0W=m9<`<YU;Ilk`*%R0#EU3=IN5LF7mf){9WpBsfE(cv)3
z+2=`jw$d+#%P}3yk#hHA#rm8UC@=ygA<Ums_&5Y)<?~!vUgcYY3RwuKG|{k<0fn*;
ztg-j5Pg3Yt6Z0`hTs996P_+J~SLx!s>RSEPzcTuVge!B}^CEO_1f=XJhuLp9fysz!
z*%cF8KuXIQ49n%>Ftr=IC&G@Qfrf^wadOrNbUTLin2&jU*e?LzGoaT4n*6pAue62T
zXHxYvDzoOpc;=y<Zf18}kWHQin;Di#U7T9Q2TvKMMulU{!+P-C4Tw)3I{{%?3_Aq+
zJwWDn&2VMDcJsf3{)T*<T8+^zyh9Icc>v_%@TbBZ`sqq&`7l~_dbs+4aZ3Gt3^S}V
zjq&}AaB3^4-URlIfXu$5C5&0x2l^d=o_1|BRf*dfA@87QZ9d0;?hSkkrc(f!wwwj>
z7YR;V(t6@vQh+|x`K`$a9#v4q_;CDDs^A8Fc`%g&$fld+3khGa=~fr<`G9DHzPdm%
zOZdqs)ms6wL;shFchp#>^Gw)J|H7ox5%O&SvM13$$WI@GSvw5UoCw|tOtawpWZnzJ
zZ(}mohvTDdGIJm@3n0a@d?7`?K=pFOFQw`aimCQIlY7obmOvqUFbB(CG!e0O<=t#}
z{)MsT3Bx1POzt=<Z=Z?gboG55?JfJB-?r*iG~#-;n&>9JP2y5seUl@8!yxjd&cbxK
zC2L8%n!CCVXSc)k-6QTmBlG8VH?q{)PV-3G%A1>{^%|qq|4MnQOgOd9{vTSOOwzih
znASZ>(r*@%u4?jxIx{&)H$H^r`qbor<+|8}%a!9_NqNsJ*X4$X<tn3jwAN@36Qk#;
z-SC)UKv-7My}_2lC89GRT%8kFy_y>kZcfjma__>dwXbIFwi?m+O_aZoC_H-{Yc>k^
z4OgV>qcD|q0QrbR-*7X=9{~LhAncvM@kFBn-~6~43a$=k_5q8NkEq|l^Ao_i7({k2
zm_NYD22mGC4L~+!A}tWo71R}gNGA{@fm{dhrWoZT;0rH;T0N|w>G8_BH`_!WL2etE
zNK~u8-Go>AwwM4{LvXAZ7`fzMWSEMuV99@V*q7!0Ey%%KfGqbdKVBp?lBUXJxxbA?
zmQQ(se;Gh8_g4jpSS%32a{qe@ak;-90&6K0U1J2aS1HANoU>lyQoKVrla1%}MeXRe
z?U3BI9dz633#U7TuVO3dr9(%(bkO_cowTD?x$WM?S3<N2EH%sa>LzPW;pl%G6KET*
zMH6@yS$h&7%l5Y6*38I0(C+|b`{aJ3LMe-7TV?ISeix{d`uq?0k5h)*CzjI<u%K$N
zeUhLI>+>x5{{rax+-MTQrdE)o7K@-hTT_Vjc|mVv7NDY!88)d;|6W7Unu^A9K8oTt
z6gp4~T_pvEuZAr}Atj_&v<O#am6U__T!0jRLXa1W1;uX__OFDf6u&9>8&ZbFx14T(
zB^N(V85X}A_`3jf@oz8*Im%*z5Q^W5LM;9u2n?W5bcPYo#UE>^;>AZ#QWZvGod4Ss
z6MJfmb_qqR$6vlNh5y?Vdzb*-V*p|ge|usN>p?F7$d-)KHka2213N)hs(Riq6m)Mu
ze3){>u`gU~>4AC_(B!?wC}ude2g$q3+RMbk)As6Jg@K+zcv=|_M{hx?Cn9JRpe4_x
zGz^EQU_S7p$+@G3ab12vIP%ng@c&6f-3`{20B1djCxARoViky&fxJXw0f_xT_5iY}
zAo3DIPJ%iC@c%T*JLYJovaCJ55I!>3onOD`q4(56%*I_~bp;k-8P<+!g(EG$Hd#6i
zt-k^!OVPgYrU1!OHjqpb%u-b#6#<f)mOz>V{7ohen;RLZB{#A^q_Y#^_Dj{kI4u^o
zxoH|s8;#t=xc#EMBc^~mQNU#gF6tnDs9-g$i9fHhNq7>t9@Shdx;My#uSNLoAY2@^
zRFU#V8;;w-@nyiFyje+-VOUy{i>D;~{6fRQ4WWw+$0Ve=#e{QcY+%CS;JtTEIP-XA
zpixCXG2!eD-Zx216N{L<R8wEvKw2FrMM0!u<$<+V%J4AZCjuVj<(Y6M{AQ8PXk8P|
zgrltt!C~9)k|d!E4o~#;Aq<_K4CQ%dJSg%+ssA;d@ps)ByTcr=1W0H6U3bPYphp12
zJLLz%mBj+@bjI_)IR$g%-u7+apGO&bC(DURcOb0|fP34IP=?;=KJecQ(B7%BVa0Qk
zbA{lYKA{l3)8i1>M4@O4!=}AcO+%Sc+bp!`oV6LK-12ZzKkIt=ewFTHwRNsAZ=slY
z=$}3D(A$y3R)EY~e)d{%L_7-meSp+UD9EJ6f_nMY^FvT4_3{V!f29oT#d5j<X402Q
zz$<7Psh9MAc%cZO>m^|l!jsq_NmH4qmtQEvdMO8iizpOLH*C6Il%a~(i=1-OBUgq0
zU@%{-op<Y{x?UbPo!luLe%jQ_Vr?(^NTLQn>}9dGmn%SbU>Ls)wZyxSbu|q1U_g@`
zXkX@Ke~UpMv;3Kv>o6Tz?#X`S3dGL<h|^!8!?Lc%BR+<4VYt$Z6riYw5Vipj#|nO>
zm&TwM`ePpo5Fa{b7(ON(9SR>=`x^K>K+E+z@wrtm^eAd&wJA^$hJ47+DfFV(e22>0
z4Ys2YJ52E%AWi}K8sKj<!iRAt7ro0{c5DXMBB9o;Dq?BKn%NhqKXwyTZSrDGe#HM3
zh)N8=Q-7+w6~tH&*8-dyLA(g$aX>a@B5M)i4aB`n2#IV4(E~&mK;0KXgs}dp`<5UJ
zW=7rzG8IuH0P~#BLFIpgKPi|5kNp9<PJwtHanDfvcMzdvPtA;kf5#~zgzN!$t(NH)
zE(c%I=zHxh<z+rU6gi}$@a?-KrfZ5bJrKC^QHIGy?c8XXWRH|Sx6nkkLgZb^k#K{`
zd)~yBMeLI%b~?h}OG@|s;^{g;=H6PNv&mIY1f@pHm{reHOJM%^p~K74vxl^p@~W&X
zl4x8^;^aR|_?IV16zMOu^c?*-aE61EIu+%8YK-9plxmSqMn7L*BP#DV6MYw=A1fZc
z0MTit>^CF&wIEt~IVOA%!jDS0EMDfA;LkBuoDSGI&Tu%r$M`qaQAJo}Q5jknm00K7
z-<rfLe5gV3R>PO;YQxbAgGue;kF&*#j-#Q|i-!imt^q1c7q>VNssgKYUhyJ#S;kB-
zrIRuAQ3dQ52aFbr8THQlUg!vgPJ^vB1Zo1DZ$PvH(n2&ask4Cwiv{`n#EV|=lgVEf
z2y_-9&S!cX>v01t5L)ZSn?Xp=XXJ6~Y{Tp*iv`R(J%0jIpz9p~?fscTm?^}K?cgyi
zYv2dZUlwQ$4@S3pC1B`DhBrKa@Xz=^3sDoGWfZ`f2x2*q#ei(GMHV4sGpL6FVV)s9
z9H<#WHF?>7E2`nP)E@A>36SlgMy7qy-wl>9r3m(Pz6S3JK(x8xkfB5QdrcDCF|@%n
z^nQ-F>@?jVr&gvZj|VxiSgJ|EdCv<y$Xu~0RROM+Mk>;j=^!ou=rQhEldhvIW)$G-
z%3k~kHOLqTfr}{QEjFELPA;y^Kr{`vj`ChL!B-$S>lX<QFFQ4ZpJg|bZTKeN*bO^J
z8_i@KNVl5MjUP&9T*nZ@%jsM{;ng47TbLAny$PR%e7#`88$kE%S~q-vivDiG6SsiK
zFlJQ_OkNp7@ZtK)T0&<T2LMeJTf=K<2yOy>X*6@TY7LsDN&8jTgx=gbR`=Y}TyJ!+
zG}VL`<wR>@j%;F>r8Zg%^X;uP;mqANI^5>&<0KL9coN?&#rgg)QT(Eu=NeNfDB-9_
zlhU!BhT%I+IGzc3;|xDb_iYf4*2Fhm7oS_aX@;4Z^?yrheUu|fPXirg+I)7AQ#WnC
z+3>P1uGG9z7tbfDA5mQWF%!k?&o&}7hcd>lnf<NBlI>QMtRJ$28y12(578<{P)sD>
z5G>c{#S)J8Oy;{LiO<LAk4|A5YgjVh_$0nM#ra-O=G&XZ*RMF=S0+j}53@SHj}F?|
zODRC#aWXO8NN`$)kSd&)>HVh8p4?}c!}%a$dXlZgr0d2hr;C^P3!|9+UTIe^rE(UC
zZV|9`^HT1JgP3qFi0+<z3#`P*AvY-0lgtcnaX3wM?(m$Z89R6;Zm4%bjwr^5|Au*~
zt0^s)?+o|+1MJ$W6lbEPm`3i|4`A$iK``5_UaJca6cu*<0~0ImJhbtu^5IiH{7wyk
zJo9ej)#syzD?oRUu!H1l&z-Gdpa%nFk+9gP#RS`6**1YoJ-;fFkVV2A@Xw%(jG%_o
z4P=anEE0~RbTaJT1^!h4?Lb!>A<T1wB()fKwn{T0I?#;}c#uNTdkvdjBrG%(9RsYU
z_~HpvchuI_bxJkYwbjkA*RX{tq@dJRbFTtxYYP&279h3N+^fafIskefKx(ES$fm`D
znrZ3zZJ|zT=D*<o4`o<0meUQe<eE9lLdt~XT8uFOT{9z0LXNUnAcUH!&xBYrB_WVb
zq3Bp6plfD;q5iREWbbPktjO2Pr`gw`nE356QyHglX1b&6#n)EU07;YsNWJ*liVlOm
zTf$&PzP6%|2IH9-K$b=cy)??W4r>yCER9lh2N(pp1wht3^*njC=pB;_%&`oHz9c^<
z$IGbvCrZpKZ2pAU9{_!%@pK?$u?wtF1<zeYAwK_43_%_M^8CLvkWwW0{QnXlRRDfu
zh^_>CZX)UBD}AK#N<8<!z%V)L;p?HgvKM>)Z~PyKsP0hG3Xsj1$S8zt0(CbaG6lpL
zAU^;a^JKxsp*k(x&IaZmLi7HD5}qr#bSNH}0puC|M*-JQ;QBbNJh=2%{fb2+fr)tk
zEv<F&=<P<@RXK=0nm(Lq@bP*N=<fzlt@wcd-5`-_VEZUtC!jNMR}j|(ai^l2tct-9
zFQ5wVo>96a94Yo8niCp5j6W4Tqxx48&yR)&n}-++V+)~!KksM~Pd2KQdNj|;fah!y
zPwQel3k(l;BxgWd+0jM08d8k2RIm<glEkyP7*9c<P4>O~{z;rg`KlUl$wv$^i;kcH
zR|f{t5mn~Y^kUu4;(sYbO+|%G0Aw>JQVAjVfLZ~F)CKVxkgX(IfjAB1M}QX^R#cK&
z&{UNE<%>++`E&j;e|a_@Is3K>c6@`JUB{f&^3rBIIOn5qnxWP(Y_<Zj852oG$Usn6
z10tnC+zMnWi7Fu81@Z=o`XK%Sa)v}35G97=>RW)kFHpvq4&L--YFiwC2-1@G1@ggD
z3n1?cv;xuskWDsuU!V)9&H#B|z^VzUyAf~R7Z`xp{s4JjU@VZ)0KdFRvG{v}@|d>x
zdxDs7<0pqzIt2#)7<0MF@nWnK9#)wSoi_pGu!`jiscq!LVU_1t8uq4z;JF>38G8o`
zcasqZR6YQs?o)Cw#WI9d5ytF**&a-}7uxQjM&<ot+Kfj|@{lvMzHCGcHp%eCm!=5U
zFTPBI#L%QZGEhsH{&=^w2fu?E8`x)QPrARpV&maixgMMn6vbkaP3E+r7vBusdc_&8
z4yT-H%oJaXVYzF2Y4tIJIL#6DB#QDVAe%8|IwB;}3xB>u&|W}f5QtVIu;T`Zi~?~T
zkU;>s%gibct8c0JYB#O63&k7=W`O5rfC}FLYJ8A`zsWer^;4LG^@v&vraJ(!yFfU1
z;Ex)K-A#mKlQ;4NLh2%<1|YHx#C#wlNxTgrHVVr>5(hza0?`l<=EnnVl6YAFRquT1
zq`ii`#dv?F3Kycw-DL6<QVq#)!ilX5AqR)p8=>Syfb%wp!$96Au?>Vb8bty)Pk<;3
zq%<I#3L;-1q%o-afDjW{YI;7t9APj_9OdV{<)qAKV${+N{9OQ&@*p4sNHFDbK*o?@
z%C`c!1yF|RD1WZWJ<osA@QQB#!803hylCPvpJeGyJAOO7bmYuK)GBCMLABFBJP2ex
ziBTY)1@bf?n=+B52zeFMD}eO7anG978B+bJ^RN?fo<s1rh(85z9s%(ekTZb!4nI>k
zj(js+Kk4H4Zmfa)Ptja65&2vgUv~Zygk-ww2<=aC(2Ig+9e)ktCDSQmFh>DMrgMSh
zkYJ{(1E~tgri^5|8K_2p5G&$WQxQd&O~ZNLN%@<VLM_*We>^}En+;?p3D(dOAa?@F
zus(D}*nHxqHRjV+#QoqZq!=q=GmyssatHn{u%Q|{qcp{;q9m)evGEE;nB7ZpZgNYB
zvX`LfMQUb!?*_695N%-u^~MT};vQ3fEVnfZ{W@cQeFPmrF6PG2#hZZm6dDc#q~hz0
zw3YG)3)IXlQ7>vLUX8`ejo_2IC=DVTAXQc$NInB7BNg8TR40Jwyu{=VQ=G}riORk!
zVk-MK@XQBDWv>RZk_0RJAs`z7*_4qQ_fv)!4YEZJap~>!!L)r{K;1C593fSUY1)Q)
z9vYuv5^R|LK=uHnVcLTY4RahhJHKJ_f`+l!c@1+CicU~78|F74zW}0@&S{v?z<PLp
z+cb_FV7`<9`E2NxD?ok6CV)+ae!(q-zXr?}GrY=a>_+b-bCjMeosK3WXuUoxbyGJk
zz9cpdQxt&sk_te|lAtf?0;CfO`kxU%h5)iDEM9CbsF?t9lc$aE!b*wC;kkywghX-;
zc<u&BYL5bWm;^o73qYPH!PNEx*$2p`0&!pdzt5Qz=|S$~BHgAas$bTW=^y-?%2&`j
z0m|O<Va#C=pF{m8fY2G#V4g7;H^735&Tz}_LhfU!_&A!b=xPD8#e#~?a-+YJxu~L>
z8D?}N*2RUUqR$}Z-vCndtnoOS4v?a^0n&m5E4n|Bs{q*)mWrMN>Uw|-7pH=Xwiq6K
z$&Z!(FBDa@+zI}L0IBpsAZtjl(jNozC<#{jYe04a%y7}(<h*!wVm6Ln{&(=dE0L!m
zDX7k$L3{wg{eaL8ROd7!T7(7F8FlkY#Zg1=1$H~zFuTfPk_7%Zz8k%a%u=0VS}P1Q
zUaVwwCfxYN36zo}@M)y}Ge8Pfassw>0aCD*K$?<ZmG%YF3y@6(Ql%3?jRQ!Pz7bTZ
z#ga$hC=;WWJHWpHASvGi<Sr7d(no-7B*7|u1<1<)Q>FKt-2X$BrqcmG9hB~6mM+CD
zA@1%yXxK}Yba&qX`8Np;LE-Cx0J6z1{<IvZTtJw^gw+>P2dNLftpwUj9M9F@=>rh|
zHW|nSfcUp>zzYBN28w#Ve~TG6g@voZ&hu}Jpy&>2rhmH^$UT5)YBB#-lBLZsL2iHr
z+x77LQoc<PeT2F=3E2u{3kg=k+d$p~=pmLSSpuPFkoSZ5{#GO##1TXv0)#%Htp(oE
zVu4APb@LuWwZy&)OwtdSEf$z$o*O+(=As^cv0+v!bqXrEg6ZKuA?5D?Vic(pv7iBn
zQ8WS4fCLSxCy=gyYzm7xjs-OmAojjBFvkn29KHH^6i+1QgJ&K<OmHQT<s@i=8-T1M
zK@;2tWGf)M3KVEpy7~X<N`v9iuVqU159X@!FN5x;P+2Pt)!iP%9whQMAXEYMxG|_f
ziv`u))~!_f0@Psrpt_$7m@O7mcRM%Qfy}zPX*Iip>h8=MX^-lrahyQPUjW27)Fezm
zNU)ET29Zr5zx0v%pz;AS=kS7kxjxhf%PWBriDYN+bOJ~M{eko&LF*d@WCS3aGJ4KY
z>K_+j#pfK{&X~!v`5%~4u$S6tS1%o>hE_ldv&~@E!&JpFR&y0Z+=yhS0pxPv4TcMC
zZm_7~cWS%Q+gT8<UKW7=R)F%B7&g}A!-%$N>jObn33Ih0h{X+VMymJ%Gw)72_WFPS
zBSV2<K(QmURQ&AO(#TvRPVyU@8FnL^+ktMhn6p7vH=3P5zQoZTOFvHJa89k48@oYy
zCru>JQjOG+^6rLR+VTO2E*qXO-M=5|^p0^Mc=a)2&y!cf)vZqc0kr$skQ`KUDqM`M
z_Cp~#LYUt`Pa}V|xh$kwIdO6*B+~bxQda?Fd-TJQoF;h}^lJcF?%rxtIO@$INaaK*
zqbyX&a@U=V>LYj^4HHY+OlQ2Pq+63Bd)P=7t=LfKjc2#iu&TG?I7f)DpX=9BUJRAt
zGXRzK#xA7#Tqu=q!8!K?@y~_i{W-jS(g`OYLeaxeR$!_$BPeZNN%S7RyYgfxpKqUJ
zAh&6NlzYlks!a(<<%6!yunyRMekzpq6~cOe?hL3j$*5cpMQ9DPoiFG6fa5?EKO)y1
zd-{XN;~1XKMr$L(?DL0<h;23=4av(k6QOz>lVmm?4aud$OF-YwFlJ*@NUnE(8uVj;
zO1=Im8^y0ezItaDrB;M4U`1Sn%~_|gLzXH0ijdrz^AR-dWeT4+BWJ4u<gLmS47LEt
z$;wbBD`Xt#Aq-<qR)#9ELY@Y_0f5&8SBK=S$G<@R0LUDNJ@M6{1i6|{#c3Hp_4dfX
zZJBt2KUo!qO7n7@IS9TPkjZCA_l44!(1W1Y17xJ1Js2VQxoW87K2-LH4A>cm;4R>J
z8XzP6XF!esWTc-9R*dvdg0ooXYsCKF1x>==dE<L%8l513%1Z)C2Sj@scD=Ba?Ua{H
zo<eFl^YlO{S{j8ChjcMS$^le}?^Y|*J{YA97EA=zh2j$^^Z?jeL7)Y|Sq`ErkShUx
z+=$pgiW5}7j0xoFA{d^x>;=5esC#67P*e4otJR_Gr<edYpaw$UH2{4#*2e*(#e%BX
z81gTMdB_=uu@D#ykTVXJ6W{ta(pDxo<1iDv(*e=X4Tr8Vf21Lkvn+e+)eh*URjU7=
zYhenyo7_HuMmp(2W2AFJm#~N43&nQ=#31K{n$u2Bf&LT#<C~|AufYwTstpk1o2QMh
zC+O~g>d!#&bJ=2iw`=1Yj^LqWr}5pPjc*$0DF89PyRX$b#7B0RtJ_0m2SP!N_8~@h
z2N-Vwh|&EF78qSca_}bp@(0P*O^MMp{a;4+1jHW)h|*}Q;>JcB+Gg?)QgJrx9ii;C
zOo4VI_Oczq+W`I{!)WbgI_>4S2{e_DtubRQy@H}Wz@p6yWq%5_Vl8{1?Hz!&78O{F
z#cazvOGAElw3ArNM-Vsy5NolV(DA>l<rH|o21LWft>uREGJKA$<Tkkwhw(z;0+eJz
zZ{0q4FeyK$@QTvLZpMbH(Qf=3u?2@@<ck?&L-J6$FTy$j;DyGAa_EKb2elHAS!)ZF
zhUCfje$a0N#1JN%ghFZ~OvRZPiYzXLg3}PxP58tu_{1P;f~W+j$+^HnBh<v?4#v?2
zQc1?qUGLNk=wmy=E7Wc`y81v-4}c_dJ&>`0XbZ#4-W463M4(|i;1JMZlPWiNplos|
z-ZBSS?T4sEkY4~u9}40V!>817^8MkaInxmQ5aKrgN}jIos4oH@iv_c=U))?Lj?I~W
zf%h5mbD!CA;XQC8Y5CoU&1bA$1Mf}%e^Rw)g8cr%d`t^PPcpx(+7H0DA0SoxE0FI2
zQnevd?kYu9TL`IQRV(|6-GZvMSYW-jnzL_4?g5fyZ6GxP(cZ;sR;=3AyrV1@JocR)
z(x0_#3DM?&V*H`=_yeEW6}(ph@aw;@DPEM&cD)5|z$v`2tg+>Wp-Qyn5nvn$;B_kv
zL-`z8*MeLFfGIcDro0!_TYyZC(oI70w#M(Ee*jb;hOS;R7Yo!TRgpmJ5MN_~v%F6!
z;5?a8emc&70n)o)j0JyzHcMAcrHcTIa~*;&MSLrOU($5d>k-H)DRw^b`d=D&KPv+_
zJ62s8D)T^Rlnl&Q0Wu$k&*~EL_dxAr&=Udh-CaY`0thYyHHTcE@5LY(iZkpq=pPwY
z4TE3TP!7W`nt`jB0o7|Dq0K0aysp|il+MUDh-d|n*Huke571ozdI#sTLAp?mvY56-
z6!6MW-WSm4a0h1u1cr&wbWoLpny^@4MOTMn<561Y9<WV=z!ZS97{n?dD*%y=ARYv=
zp2X82-UYH3P?Dcmu?oWhhGNLi?SL-H@1lJL-Y)>?Fg%ucN#MDgvsrqDQr=+(cr5W3
zaQy&~*GuadJ}ff87noe?Of(%J+R((CVLH>4ksj2xrgYHGrp8>gmuA^GbkU@XOb4w3
zJ>>z?LAwI!2#~?>Yp}xK)d6Qxr!<3MWkm89RHE&QlOTRQ^|ANQ1u`2Dy~MC5&A?^{
zdHRESY7$B-WS+PrTmg|K02QJQA2X#Y!f59FIc-Dn;}oJzKM8@&0N?!woA#C)C0r%?
z=#;1)^C)t`9maa1YYdNMGWUm@lsfB1e}S!~56}jeidU&5-9mb4S$&*!Wp48}5`GCF
zW7Ju<Av<<r7Ou@eSf-ngtcFUjK|i_-VQm2D?5^(Y<3J4rWNwA>ke&l=0sSPycuR>F
ziZKu0gZ=`5-WJxQTie-~k^|&eOU;lpbSab5h++dd(NJV~In&Ua!TJzD8u}w3hXB&h
z?ZJwME)C9N4J{AJ(g*6Y<7g)}+Gait;a{nZ&Fs&?7z>DI8D<&S@{$NMP~2&PTs4x)
zs)wQ_@=W$BLOu^5*=r7@F+c{2l}4zdu6$<ojdQaq1I1Cphyy4FJI^|MKxsFo!fam)
zWDp?wnPE59$;O>zD$-H2nbTOP>Q3gAL-0h1j04CJJl*gqwTgUp2wsf%MF1Is=Lb9%
zvqP$5hv56bdoTGp1Y0hAS;0tJ{$L1x9K4$V{Ds*`P6hdWi22A2CH`i9*)g_*Z!5r$
znI31IJtvZKFQ{#)kg`}XD%K9ghm?mRx~4-=au6URqvZ^rClk1-6X5*{U{YymYS~d1
z3!0}+DE^^M<u^$DVpFl4q4Q*dRAO`ClL667i?yO;a$u08#eyWOgc4Gy9Ee^BD8?UB
z=kf>1RR?cXCU;%2<W$yi?$n%i^=<}dXS}QMwA+G{Q<as?y^fzu>^u|uliNUIt1WsT
zUte=&KKumZ<T9`mu6(mK=c`c=J>j-oABUo9Z-0pQ+ubY@dji%^-A0^UsN0-A`@nqA
zq*E<_F5VQ>dLys|t#`L8w{PS$$8iK_w_A@B2$g#U2KJZS7>Q%o=q_KI5%@WUv@mgZ
zFS#|CP%BhG6M*j+v$H0}`9szX??Gm>n?_v@V|2QkwXC}O&)rxlx+w*S-ZGBr=b<x-
z`Z=y_{fva_{!F6syGqS-%dDV}3AG*(hJ@UWwA7V3|1;ou93YFoW$p!BQ62$(5CA{9
z+?7?pAE16@$S8#P1<-KGJa|4pd>ld~A9sS950HJa<NbB{9krL)yUUF<tcWhaRrq%B
zYy;?dZ@Q@{%*4rfj~ji5jPx!0!SoJ5+}UX$KLW(t{s~sNum#{O=51w-S#mr}_z%Ns
znOiVv1c>rWfK&rSFEs4Nac#v+qoc`_t5Oi@tZ`$dkR4|?qMAdbF(92z#`0mz0-rm>
z%<Zp6d>;V%ELW}rf)ZLRRq_YTYu)%bYUV0-DkLTYWHoy$kXr!$a3gG2vpDRn{3RyP
zu4cK!ZIFu!XCpVO4l1rH(;%v?fQe(cVGrR_OdHWnZc`dy4)4InV00M=T2*Z<M)m96
zlHXui`E9^@y{j(}6V~fpbAi~;2XWxV&7cxqF|W0b)~u@916kOxbfeVDlSVprm|I19
zSC)%z>RhEQ#^E_29e<TuoAD*k-}`C9EHRR&hh#IY1P*Us?aCgSz8|2!wn~*%A31S8
zcTx&a0;ebTytTH^9of&M_xRlD%+kxHfuB3QnX3%032^#H>z0GvUpZptO!F%zL2XR)
zE9U~Dm+@g}iEEYfmy^p0h`Njqn@fzv+`yHYy}FFgrWlanmj0t3Ik?5ofU<6xH4?zX
z7A1xuL)Bc_@l%)a0Sj3gy15ThYf}<!-SR93PL98h@gr*#x;Y<N6d=UmbA4UD_nlg-
zEh*IdP7@X?XUSn<y_5v2@dHQtx5`rQA_5PVM8~&*j<+1CaeaUBTTW9^(vGe3meZA9
zK-<S#PJhvei&}R%;vH1hMf<?D&S>OOH=V0>j$9h6FJar@$R%tUk1+KI9l8B2qux6p
z9@2zv$&I?=GxqO6%tl@HszM|5hhAELenVshzn!cU{G38wT2*>7;_J{>A4M-&0l-JK
z`#7b$tWxTN`PfDR#D_MludZ^kG9Oo}Ht1>$8>{*{@{P}KpgJ++TGh{ykCKfAHJTw4
z)YVRA{kC|b4{AC?hN}LKe6V{1sQUo2hP%d*W#tE;UnbW`H9(i9*R42o29RSLwg53@
zF<l@O<r*igb2W5-KK$x*8}2p)=;uE5OsPZohMs1R>Eh#{oD-izAx`r9LEtJ8;vt6u
z!&-#V2l3~Ob26T%5Dz(wfWR;c$w|o@0-+CvfN{K2@-s5>q~wiYnj+eH?s#6nXfZvM
zKxl%Kno=FEm_qsvu)70hiv`U0I2GG~SyEUE?TaM^o+@}G5VBa1|G7@aR0?rTx)uWW
zQ%LgvN+5KC`Jd;Me86gd8cdr-JM+IgV6<3}rCXc}_7u<m!GPIf0rPw({r4hfJ_|h=
zFk39h_i`tr)+NX{pM}1Sth^cITQ$<{igP{8_X_8NtH{VIJOZXeLB10Kqs4-(taQ?E
zflyMtX9Ua^3z%0q7d&0W%tz)`17?c_`JU`#onUtO$ozX`<=Y_Nmj^<Tp~&|XCo`>v
z$+xorcc29M?inyzEXc}KC$l+(lJea@V76GmJk7}*S)6%-VaA;#1`C*{JE`~E?36-w
zvH{v6ZwOMbSRgdR$v9|*szRW0AT&D=vREKA(@BfL5lMqJhCo9R;-Rjkfsn<5YQ5db
zXh9(!>be{P?I|Q?{8S*6Jrvb?hf{Kx)!q+Gy+u3Ccw4||u^>weoeNe#NLQ=>Z^LMx
z>FUGzudsdO*RVA<n4Bw}RA(QAI8<Kg)TKvNS$pV=D;odKL-LHR=+xmrnlbbcA}c#7
z!@-%stt_XC_Jb;G(SA@Rj2z#-(Bnc0N4_tr$At_hxB5kpd;{k1Wa<&6#L#g=l#^wK
zmpTVIs2|hg6<@xnCsX-jav$A5-thf}3@u$BXX0PVD6SSbzcKL-QXO7?Uk`6(eNc;+
zfT}wA9IW2a+IXYA*7i<qK0nPn`Y<D9>>D^i?U9cQsX7C(K5$;wccPyTL|)GqkvgoL
z*X3hc>UQUq+dw@ptBwg>bdTO3)r;Ulo^0>NSG&r-aRDZHXv1-UZj({I8qb!-wk4>$
z8PZ^#QlfDms8<=%0j258$-j?7jSc|WdqD<Kxo7`zlNJ<>#`gguG2XK;_v_aMZ!JKK
z_v_2O`aM8(0?57k(|}AO!F%<W0a*yhrV_bV{|Qi=0CKPXn?PO#4B)-`yG)8jScWO*
z!>Ju4aWH)f?xO&?WB+F$Ka$vom=Jb|@cNu8^CJlVh*4&)*AGuslT=wOiFm#K@t|nU
zkt=h(ekMfIse+%tX$GVT30|RhC6JB)|8FCwuh;J#o(Y{5c$|P!X8i7OCa~p}MR$O3
zc+GJho5opo5gR9ujp8i3gw2xI0L|enYsTu&<Bf;Ta#@Gv@oHmdc{vFeGgw}mcvt^c
zgs+sh2D@&26!<EA*=?PVvq8+wa_EE_AjNvT^x2tPBSK55^TH!|bdi=#74oVYtTvif
zMYM01s9FVx!US$3TBo0z#f*n$KuuyIuCGT(WrnD%_a`8}yNT!4Xo7QEgj6k%_~-9O
zJU$LUDzrV2Z|zo)_=Z!SLi~kpX6Qr4jU?W3W(_bmJo-3d(h&25iAi%?5>=(%N<sAJ
z&m!7KbUGT9g1+05s48_IqO*oyjp&+ACeJ2>u0ePXFMUKv1DRfKxf?_+CzS=x`L>=A
z7YT7sc@VXol4Mg^1z6BTDi}5Vj3vIl0a}zKc>6Yp)*o<NvCj3Eg7vp7PFO=U+C0wm
zBfnKCKx7_$Rphrig8$Nxcr)Uv&P@-1cwJZTSx8AMMP9GX+Rf{@j*;3HxRn@ry(9D3
zl^1VE-jp_1S)ad#<=+6e;zjW5A^w5G1bw;eOqALcK`BNJ0n1gc!x?I*wPCr+ttKp4
z6Y>z--7TlqAeMs&6?Au7>e$z>L2PHYJm;h#Zp1UTvwNwI-GDWod#S5S&3P1KFLf_t
zY>v7Lk?q_PGKU|l-1crRpG9P_0^AO+eA-@R^}h#H9k;@e7mxs_22@c;t58{|Uqx(5
zw*n{9a+;R0C0+TdkIJftj_W4eykSoxHV5-d#wOg>I&&{fLu|w?&#(T58kyLL+g8V(
zT8r3kOw;x@vEMk&bnH@8z5Ahwon&G^beihen^q(CfQemZVh=bCO>8P+_nO!zP3&IB
z>?HMK?8_$hsEK`9%gXA|eZ`JxG1#KJ$*}TaAd9!jW+D~#<vwI$v#~$G*oSN;Zj2#z
zt%<E~V%IuNbQYh%0Oa0lVtbg_d!0r)cK7p$U1?%xnAnw0bH?f{uC`gc7H-L1Vp#7r
ztV^86TG2Yz(|i-l-3?}OzKz{57_m2-SU!kh?9H|SKQu(_^(K~Q&>4HZqj%i0F2|!+
zcZ`$82U&7jjj>~F?3k8_9d2Ulz*94JxQVSZ3q3VlM!N>Saw~l<T&A}6j1PB1?1eg(
zpCiz*7go`+*Gxie$;?~O4dulr9a~b~o>p~UMWu&Rv)Os&W}dvq(fz`y7n5BrbRKVk
zF}0erw}es!WZ{sLH>eZ?Gw5&fQWg;}$H>mA`z%zq*M!PaG5N~d4>#pCal|u}hY<lM
zW8Q%)1gB?E-FfWQt3V!pj!Mf^&@$E04ZI2t%b{f|I9jGRW^rC=%J6D7EmPXr2|7<?
zN;`=_rnHt><g7-+$MBjNRfKjyE@##r3CW>g&Tnv6h?Ws0F=)^@5)H|lQwKE|EAQm|
z+r?f1E~|@O?8q}v)%}AT5!0>!Oq^`i8#HJVNC)#F;?U4e63bgvk!(&j^3++?d8sGT
zuj7mXSBUp(=gqCbfKm)lb-qJmhAQyxLKSKn#8xQ9097utpHkhLLJxj0dHFeob(&)G
zQW;S<VQ8PovA!;dhk>jEgg0Phu|lruz!`IXTJ#|(cXlG`ZScHFq31w+2;>kzr8B7s
zCMic<O{rRGsiOH57`~ze)68AysSJP|a<T#;HJSqT(;{b?3|HT6!P6R`!Vf@df1vqh
zGB!wyZ*Ky|?TG3Qrmg_zX%It!Tnor1TVxkPW`mjzh#Ug32FPj>pM%%}<XIBmf;b9f
zKOoGtzD+Hv7BRK7wCHN4#`S%5yfRUhuT7*UGbU6a8Pn6E!qfx|jr6+}C0jxHZ9(oW
z*4#EmqqMj)04!I6y(7Ts4q_CLVSva;5c7e|Au$ESeL(IdF$csGKsJ$B4B|Z?ZvpTt
zcMV!U-Q52_%%)U0uNlfP4pGf;va}Jvxd}ucAUyzOZUs?hIse?xKab&$n1WRlR*$oc
zW7DEf(SB$O;~_Veif9TmflLRebS9r~lE+b4N)3l8Ftrt6SV#%xV+W9}fNZivnEn@_
zJ_SUWk3WF?N`m>xUW``~01@V^1CSN~d0oP$gj2~TO{oMF+qph1+LeXo#>SK2-waSC
zIf~aetZsk>LKD%56nGiTFHr!$a-X9U&NeblB?#&Z`NC=WpAhBrE`OH)dX-5adu7=B
zr0%Rp2rrf+`mVI-DdvZD_bycL21wog8_1VTt0WUz8`Pb}O4}q?pdOjhUtm5%X{MgC
z1p8xv2oui*l0$--r~#xp043l$bV3X53cj)G3QM$b)Sb>Zh)ao_#@{wzZU%6Uffxj2
z03b#}w%e?NP@u|a;yN{L8>&OL+a^P3B0vvZRwx<>#ccZ3ocQ+?VuxP<fm<o$=eE?@
z{9lXfa(foQ%35ot-yN;YDXiEIn*NQbwa~H#5cwIzYe068aBjzQDIkYQq<{!7#f}OH
z=P205gBS~lkqDPVbOn<DuBbvEaw?~|BU@qp-wRPr2mHAe+;ag=QxFdTxtByu5L<yf
z2gs&inQIYJW*q<A%s&h8C!PA682u<PR{PGGL~4=l?;!nOs-tdPyr=#oLEWW6WD_V9
zq3#}_x&R_fV;qoSB$(DJAS*~P&5c0T1M*jb$boQslqRwY#K#CdO1AYNegyJ0iOnFg
zmcv&A{y);*1kQ@$Y9H?Iy4|<$>@#;ZU|?q0*I`vzW)KiW1_e~W0o<1X#RYW$7X%$}
z-v&|Ch{P>%2^vjY5O<R(YGU+tj~cV!ni!3m7++t__dKVny8GTC|Nr}aA3y3&?RDzZ
z+3Hkvcd!GAfr#`)5Rc082sy(Ed|6S=y_2nTq#u>r-pDR38v0C>TlP<EZO)CF&1JL7
zqLiD$o}d}sPPARyI?6c$b%H{#EDK1*6*L=lW+CXW8eAN8W@EmgtDp$CTIlRsg3627
zz;X5>RFh2;$w8*;7u9Qz4y(wrZ#Pvy5(IHrk@x)6<gzbEcgG{h(wu|HnM`nLu0doI
zLNy!y$7O#h>i<mkpR?@uqxH|&9hdzXM4o1Xeg7VjcMz)CNS6KINPUYS%ie1f779U@
zeHtQDnBcM>h{#+7S@uiN_;$=jmVE_sPi8eP`vr)sWrE9oCnC2q!DZip$b$&7>}slJ
zI=s1=z+>5OpOUle_aPh0{#cY-#%*tH)a)rX<Fdbx?3d8(i?(Z9M>#K}PEhWZ6#!CM
z#rII>T?FlGY>Yayv1r*VysEuzqtDRb)2PvqsF96Djj~=@hi&w4H298<<n08bqeeCs
zHLCQ=1hmqt@r?ll{1XCu?f*z%!uRc_SI7AykukQ&i}}7DUG+u~0vL_R2qs7Xvk;ky
zP|ZgFk+{}GegB1h=MdM)Xni8PBXOOJ$Qp!@eOI%x5Y-QmwHZN(YC9tLFhN<e3z0t|
zi2NEsURr0yvN!=N-9OC|!xb*Y%w|(%Iq`#kLU&)Hm%p=H(p}~n0E8fPHyn|nOpxwc
z5Sf4=boX=95#D#hd4cZg_pw8XxG7yGbhk&8TSiyR&Zt>E%7yM;K=#4t_CVXUt)rZg
zs1x+?$~w`BEbh^$b0mVMyO*QRY|PF)=;@U{WE-7^1}maQZ$*u4ENaxttNyEP)QJY?
zvXRi;AEQP#7B#BF_u(kmu0rK5HZcF{`R&QFX_`BKWis6@T{AG17f`efb#Fp&-$dd=
zME;CWMi=S;(+Cbi;^?CwBcB!ZH{)&?8}PHDLy;JWAfFXI2$5DM_*u~l5n0a!KP!4C
zB7C!`xIaHe<UNFHb}R1BVb|iZ1q5+__P!2g3W9uA^kf4A1U4$)Ufe>k`B~Ais4*Hr
zT%P+NG8I98R+Kg6v!V-;H4h=P%JgFVp8Be&cs<uf{Vzu=<MliPZ8{Ld>v=UIS201a
z=Z_J&1tGJ^w9EadXgweQ`g|Xa>oX!;f3Yus<|A`E(ez37#b@3AiO64>;A3|EuLlDm
z$a8eF5Sf7>*Wzq<%IS4HRsqkNp2O~VQR4#CITt}LYTSv)4-w>|#%NUK{YTVHT+~?L
z$X&B3(=~v&c57mV7F2sh?lpAuGJEDQpCj^Dg!BwkU0>OdXH93DEYGnq95Tp19-oJt
zw9GH~0Um%ykeOE@l10!D_#I`sur{5306qDDAKzYX-W^mwVJ<e4rUh>0>Y=vWw;#q?
zh@ye$wlBvy28pSNv>*g4kXVdJ8xw1gI3AIu2<~ho&Ol@pLdb;TeT~!208SJeVTXF9
zEPc&P48}(+u0W$p*b5)ExE+xnA?O}%itu7%gKZD5mZjgYJ#0sV`)v;|Bl276fzG6z
zQ4cnjwmrO7mTuvM??$yhpuz7E<o2DdiAM)aYum=V&|H%F40S){AdccFuSGMpG26m@
zt*q`=JIeQH@jrGHThohL+cwcC#W&y;M+kV3{Zlgnw=YgT<;uASX!`ru&S%R<voIT;
zj0{AZo(Li|mLhT(6BH-6B62MgJYV?$k>4>v5j0>6G$Votr-KlggCJsM4I(En!LJpc
zbt6_8LBz_R4G5l-fd;z0_*w!$vC@SaS0L!G6(e#Z6Ff<I2$2U6s@Xyxr+jXDiH}p(
z@Hj=Er~Hp8gh`DCMzTDQ4t~iVd7ko5M80BzlBHlP7z80xn{%GRcL4)!yzbL5SEDUr
z)-8pt*ktl*7d~HA&&xxjOqEQ8*(O%`9!0D|(w<_fjE<@tiz-6F<1zd=1flJN5t)nN
z)bpXWb4{y-Q7dmYTJaqor=ijbY(-JA6_L#da{0B(G#X+WK_ESiv2p~G+|zy1RD^pU
zsEY3CK7)>)wmtt5k#`Z&&zZ_v2-Wjd!!OO(m>C&CcOIeR8-@P|P5#9`_=4J+A42XR
z$o=#WOe2WVlQ8Iup8neN2|0yI3VDblUwA$t{h4W{M|bLZ<<T*Zki=NO4Z}A+jv`{6
zHzvzWl_MeuPum}*n@}_n05u`FHzBbak>v=Aji#7JkkcksZkyx6<zRNeHg}=^9qfR;
z?LcHZLVA{IBG0kPoDMZPc=sA7{Bh2NZK0CF#DtGBt?Y#Pr0$A^8s86FaJJlk0DxJJ
zqBk)1vj~cw=MGaZj+q9I`=|<j%Lz<Fwc4A&RR~TQJHNs-!ezRX0p<=BNXKJQVE}@B
z3;LR<;|A7wS_O3kfZu{X1$CCQv-Dl25;2hec{1^+NxXoocj;dxOI}PS-bf_oe2_@2
z$6&aGk7sNbIO%_w0=~R8U4Dqh3@0+6r%4b1TOItwN2N!ZBKT|NpS$JCIdG&LHX5sL
zim>V?R&6V}sm$4^CNIvs5OZ9QATQ3eHSyuqsI_jy?=g&L8~Gjs>fb=z$jh(yGgWaV
zBEJz{oOu!(@x__j(BLjMN*`dV2`OY+OzJ0?jy#cosqt-?N1A+`9?Cy=%b9c0)fFgu
z4Bb48AoDyq8q~(3c?PM>F>J%{PP~cwud)qKD{M_KikU&=)u|0^!+HJ<_5X^X=ef!Z
zgcl1&L+WOHb?O2(;yk}YgKya=eYUBl=egXZ%sge$oqB%2^`^yov9B^fxLX#_LuVhM
zsN!b$-4NV=AkmD-IE29a9d2kMayY`6QY5^M^MgA4-Gqz_5fr;^Sfaa)V>s}TfA|7y
zag!b5G1PwqL5BD>BF`h#afmv0UB`aY1595smDEcHV1B}FfAoW8gDK3j`i=9Q^cYiD
zUin+ki?35m&gpjiE&UF}1Rq1u`xxvkj{ZCn18)HXBgh9#&oGVfc^mR(bx`mnLFNZZ
zk4Bxt5#$4=cbIw(zVo0b94WTk518I(inrph2r`1|s4HrFJI8?48d4SMhgh#Mg<4|O
z^D6L@C+iVn3B8gN;q%UC0iIO|au@g-L^dJ}c+NC1*MGU_KokDJb6U@Diyyf{_c$j)
z&7%jQM}AoRUUaaHJ@Q-Qzd__#1pR?=L_TIhJ}`bOsvrn6Tw%I{_%pE@+c7>czJgto
z8G50954Mr_2%DNJYGaxRGmKyxGQ&{RAB>=x;o4{*8;cr&8IEQnGQ$Kk*o%$QTTBB@
zK^-Q=55QfF%2uqUHkbl_DExL^;MouAIvG1D%19F3Dhyg*hZ`QwsTz%^8YtW?`^^Uk
z!%;K`!|#jWPC#NcBBvk((~<ZABG)1K>|vDY0q)$DAcY45|HXsR0~`GWb#6zH?tX#D
z6A0C;Cf&S?)Efx$7|A@-4K5CuSdj(knV?`hyX0de|Bd?pM35&gY)#dz4fUtguec3o
z6A0-ArdLgrnP!vR7kDK95h0GxJ0ypj63=;s^LaWb=mm_3_0b_}+*ZJ&0-T98O*+!Y
z<P4FjGf5(8EV?kmWQLpkgOINU0M_CI?EODC1sB?hZ+U+Krp?bikHHiMBDe~TPD11;
zgrEe8t%z(v@YzGdX?ivB0(-*#Qs6IV4{UTF>ih&jx_bqY-yl@8nsoCGQlBB{wJ_aa
zElez0i}!+p>Fkng(eNY4I|RKJrY6=RuT8WT<571ULVAIzq1Pfc+$0OJ7Kfs9gQ#?~
z$^TqfQ5NS|ljS;Ja)NJzGSDEgIJSb43W>!zK6lI_ljP#O6pxvyGx<4-^ZOSa=Uh|p
zc(gd5F9aSwN6|veX@3OwTO_VP<N|~-;cuy4=G9f<Z(U#f`0VBh(+zA5keutMi=JmU
zY`Gn+?q@gb^Cd)njZmFMwL10{u%o{sYZpSm4vT+`Jsv{(S<@+nW%?D9AU$NhF^L60
zAzptJuE9}w|FB^ow)5^-d|8E$F)orFPHMZUdNHd02{7?(NgL-m>B*-XL3=0+?fT{S
z0Tt)zobm`2M;?MXoQ<MB0H-H{dl3>75ZQx?Ymk_a$UKAr8%^t5k!hrtk?a@|0{%e4
z2C&-PJux1?Y4Flzdb~x^coW(%-eD+Oi5{0Dh_(BwspmR2W*R`G76p$HMq0Z!qW%pC
zP8mD@z%;@mif3U#))WQO@y}4<E`;=Frd*8Je<c&{<r*w0DM%)=iNt`qM8ZmIOl;^b
zOl-660asDvpS$I^ivZ+A6uphHUqNtZB9Xcsn|~zabDr;+Mvk-LYyf<OUpbJC_&LuZ
zs5bz??T5q+MD}KapYuExk;4(H*+xF+c^*>dAjs!DZ$RW4gw!t6Iln;oDUhsn1sM{q
zp44Zil;898F(^ydfXYT(tLI_9fEDQ-EU3_ye9!Y+(-`kEGqFg+9$~)c`5-{JA3?OM
zt)-&+b~R~IU&=XCyZ#FGe}SO2Ysx@^m(!Y9)Ck)3Nj9Q(eH9J<i;dD5Q_a{a>(;~Q
zGFi8ortX#vOVI906n%^~e?-7jXYeZA0ro=(?nGh^BCQDiLrBasJ$TO5T%sq7GGp1p
z>nK`=I!7b8&mnOMA{!8@SuOZ8a<(CL8$$3o60aljA`{;s@eLyXKv29|v)v33$4V@)
z_ZN9@FUDYemwf4+H~~SBcggobq>c%`OMVn0!x1vin4avr<ktw_)32Ah*A(&PP5(ld
zSZ)3CCX&J{rjUo!y)n6{aE&vS$F%hDX5KcHp1oLDowNeWoH)M7l*BQRl>BoaEh-jV
z?+fsz6JFwa0U`$@)DhR|%S~&uX#C{QsO?Ic&$8WYp%pD(`8g5oj%G*eQ15y~u0fEm
z{p>*GUIbAs^Gpx8X^t^meC=lhd!VBGGwQsHAd2p2QxDd(iCN_sDLQ<n%=r%W(@RYa
zV|2_gN&B@QG5u-N8b-O&P4xh75e^#gLtGa?IEeSKRw5k4%T-4r9K;(_vw7<9JqGsi
zcya#&@C~XPmH}uh%g!|eU96GfJW;J2-wlfoLIW@T29V^Z(tR$&pD^8nf83x{%KWt_
zJI;WVfBeZEDD%(6C<DVf9F?<5HL6s@bK%t7jn(yEuGxqAq2D2Y(v|2abtB?+oA5KJ
z<~v;Z@`hF1g+%J7`035weu3c83FEO-r^efW=<qUVGbi;betLh39|m11uIanpUE`r(
zS}LH11}{JEOvjrXvbfg277o8sj_LH7IufO|4?%%W(}iCTa-4lKGFFce_^S1qq3xae
zuUNgFeTC@@p2To7YMEc=q}W4`8aVyNd;2|(c>3=nQ9P?+D_f-RLXOv(<ut;c$8?<G
z%nsRkSvt4_1qbx_1<GrC9&^+RXHJImZAd@Eg1M3y+!I&M=1FvvQw^4KQXF*1I_UUx
zsu|V26N4|2ll|TPNMvsWCAitAjzWI+f(nQ@Cq-PRIAV|ce+@jiMYC~}E&a}$s8}qJ
zIO*TNg+z&r5~g2bqEr%P=|0$Yx@D56O*>3vE9RkngH!z-Mokf-N?sNZ`nYKhay|;Z
ze<9bC7$@ZA{x~V7tA4r{N^T6eaCfnd{K(?{6iFvVM5dS?%0tccFt7MoR+DuZRu5!*
zi-Nb9LvWm`Mdd*6mZCPqzhW+NB0o;$eTSmxTDO$L@@AmUu5#BQdY;b~ywD~6BuHo{
zJ0K|X<5a!~j!M^gB?RC=)@OH4)wY`vT~JOSXp4JXbMF`Y5lAaH5%_xDjA}hbhEu%m
zEf{|Sz`RFLgntjqFR;92BG|R)blhFPqCcZUARihLicWW~*n@LB5Q$j`4Fy<~F2UQz
zDJ476V^<kdD^YeTLcm+!T|Jm}5t192wZhpb3x5L=*D`~5;I9gZiF=T|3!#x0u`e}H
z;n6AFRXZ2TPkn&wCs6(vg8Cg2&mr<GLctbOc>yrtij%^Hlsdi4g+?Fk;z?CdtP}En
z`yHmHXCu~$aEtc=$M`wYub|79ImYcsyo<=&Ox%FPhlsq7Q1Elp&8Of|4z&iq2g)dg
zYfKR-;d^vRc-CO?pEvoWg5kg_o1G)g_zN4-b=$m+QvfZDkWA)Ly(s^}08WbJUi`sJ
zcn^)N*iAch;cY16KX(f;CM(u4fGhSjVEhaLE7q|mSFHXgc=8`XR%}&r#a79RO-0$>
z2(n_UWW^3Zau%~zIICsFjzr>61X-T94G6Bk!Ew&6$MCW|r=t861X-T55jhi~;IF3g
ze_S5mM=#I6Oij;5?DCxJozF42Jm;g!^&ErCb0s2|Gr{G#9+7Ji3RK?mtP(tPl)_(|
z5x6`zqDw9hsH3pLG`R%%k4U~<o{dwS%yd&K%TYRovS^ubqx&W5mXTN7Wuu7t^3~6=
zuvs{?_=ex$ReHr-fi5#{$OXeccS~QKg7sp{V@5Ix-*Af3vH0WX9p~_n?awuBGSY%=
z7TPw4+cv`|KmfY)19t_AG$8Z)5)h|&<{Qv!WsHAr6fA5>`R8tF#lr{{6`04MejMp;
zVC`mvii4TeOn^T`@@-~42)-UPhqd}`0~H|zgnCFhdp-=wgAqzDdkWH0#Ph{Sp2u3`
z>|w&$_agaYgc1C@Hoo%l-ou)Jn?75Q-5XF6oYLOzj29jF2h{r=g0Sl{Q_-~%OAnLP
zHE1UE@C_<|jUe=(?uO-rAoNg-NFhSO>82aYuA1*)6*z^5nxct-=x%hW#fMXPtH~$3
zzH0JGMw(H{t-`0<O*N8}6Q;ne6HJb4BPfu6qk~E;q^d%l8UR&=;DlUIiw)04`kNN>
zyjR)c7}RM*?Rtdp17N_`OWBC2?<@>fv%%M>GYpl7aEQJf;v)l86oHW}|K<nM{T`?}
z79sP6sYrd7`PL-vN1{L(Vr0U|G{D~%v#}+fjaYCF%zO`UMvg@tr?Ap=MorZV)Q3JO
zoADai!A`-RrjW`F1sP>cLR848Ck^>h#*&HqjRKYS;g_o&Thz~t>2CR$lpQ>R3VkW(
z_Q9-L5Go3pHG)}-kz9ySM1!c$gmz?|h~zSa;B=><hTOOoiL($&egW!lED;Vy@-k+9
zi>$tqbsLg5A!Ob%5Yi}c`u!CZszv47X}~ui|J*H9LPfL(tNRg_?Pz^JLNCHn-9%Wx
z%%?lG0>w_0JcAINj_1*O$dLbq<ckP>pF~F&TEy7MFg=XZE2CaU`6sBj3t`mTNI3Uk
zTaE;-`s=3{T#lyLPq{oV(bHXqjB@iF!*z_y^AbH>GQU&$-eWK!8mgI4B*QXn2pWbF
zHDi`JUSBcPoKik9qUtKSIEwsG#%JkN-AJ)`OZmizs?nvS9bH;8NSE@N5LH|)a7{sJ
zIiCqp#eykkED3p(p~9(z2>;wI<Y}SdYRs<)L0Dv*spr~=t`6^4@B=m=i|mccEeOsy
z_PnoY;r#b{Sp(^FE{bO&WagSu;fpqtAS>)~R3ZV=rRyJK?P<3?8D}rMOTw!fu>rvj
z=t>}=M0P;eAcy~2Ht4_nJ*lU1JiXEJ^tPuo^z`PYOmB5Oy*Kjo-pJFtA<vWDkWb9e
z><%Dm9qx2xBb0vShp_Z(=OQotmz%+X)uRzbx2%fMxEm@@rAB*LV<+STbYm`HY*Ve{
zjAhKJ2+>1Psy_S>iA+5<R}GS%`2=ca2&1ViYB-@&$v&#mDUOhu6s!Y*xW7373Ab?^
ze%$TF7}9+de5%~#Gf~Gqeijhp&VaB8+&<VJrQJr@vY~s=VhrVe+Y{o)or?TI_s}H(
z!d=n{_2zCn5NLE4W4TJ*J2!%s+~z)*g}dxZK<j>UKDH$8_9L-JaGMT89AnC!EJawW
z$HJP@Ao}%Q@Dsv#CbIB+C^mPvUQv%()%N$kL4kT4@qu126~&JFa3>Sx$0D9m<8Q{U
zMwb++M_+~t)QK{+;yEVD*}l?|Mah6#WKl4iuigYHkMI^EOO2_*%iFzLg5cDwaQu;8
zI3Cejb?Q^7r2A`7eE`;Io#?Olh~yZZ80^$GV_bJ*cmX<Scw7?{a3%lTE!+te9^c_?
z9LpGu48qalRL-(Y;2H$lbGPh)hCNZwEgQv(SAyuzM!>^hWiwdj&hOO%{J7=4FU2^Y
zq3C^tx+N$YZ){c9M!>~-^tpvT%8U3?@<Bg^vkw987o@su6B_|L>Lxu4rTU(zI*!$y
z6sf6?eTMC9B-BFmP~731=rZD@NRajRF*d1y!lk;<Q6OOQ++`rxF~V~<u@U|~X>c{d
zjJ>T+Ifa_<3N_!24GT5j)zO2XUao0EvvHaS3pEcGY91`qJXolCupbE10al&<Y=9@~
zG!ND=tM1%>0J*BBjd3z%s<!qB#>thbUe(y?0SaMD07JH{{huG>$1j8*%t^lt((sGI
zEvV(BzkLFU;&d0{UOGDxi4sYubS==}mxgzsB$ejF^L~XS!t{J5vXUrDU;H`}m69k+
zFMJz`DoIp2HBY1I9w~pc$6fXS5eV#UfCvP}oLUhGe*J}ni}Jv4kj74$62TuLiPWBW
zC<8K~hTZIyPH}qvq@W%o7Kls;L?#3x69SP5fyjhFWI`Y^ArP4mh)f7XCIliA0+9)U
z$b>*-LLf3B5Sb8&ObA3K1R@gxkqN=}Bf*n_mI<|d@U_T4<zN7m=G^=hW)i=JMDb76
zlSuQ0h5l)h2%XHOm_(r#CYfVVGCo6uOt_~EeaH;ci-RjU!=Fq?ez0;fh#*)9iRL*I
z&-ejyM&SjJD9_xCpGhQ^2N3a(us=>S-=t8(%*+n_v}j>P+=UQUyO0%#unM%W8fb*o
z7*KYJ5mxNgDKWxI+%P3ZSh1w2#0V=U%1Vr|V*5%*sF&AOg?b_EjIg?ry&GXg5S+;?
zoDjmQ8PVDjBdpk8Lx~YqO!O}?!iot9t8br&%i0~-8>~Huvm8{ysFVKY6(DJF<rC;Q
zOyA7J5J{A!SHakGhn8~owdtiy43k7%`h8HWJ6sYC>F-%GB9JlD2ePC|5`)w0A4Xzi
z<~VdcD*Y}?MoD74lOc+0*CVUUop==BNb}X&?xYfugEP1R1uf||#N8=_$pVvQtoo^g
zjz8AfTd1MPsp*S$6*~uGb$?XLcIP4Oa~{61Nd>(_nJq;G40j71pLOKN=|jmK?&*aD
z?dL4xkCP$t`%prMdw4$Ey=BXMiTx7QoeVi@$TbsSxhVP>e6E8(Bl;l$Iu$d{0bI8U
zTs^Q|OTabs2c3>{OYtb?o`AXn(%w!5-!B&arGf*|ZJTH@gwC*G-l5FpV9wA-cS02e
zr!j-8D0Q6*%B%2iJugBwgU-!ReD$G63d~=^=6AAe1|ss~RD6X+_pa?j%smk`tKeJ8
zyv-Fv<!e#y6jG7<s4K`Rdjjafzjt9!@SnTog{<RDm6wq`>h>XEtD#BeA`Byy?ZFX-
z-3vzs!Y~rYOg31E)IkXK{1U+9uB`Mbq}!P{43zMM+l$kA4C#lNHwt-A>bw_`{xw4O
zG`#<+nvBxG&F|B$P~aCRc^#nvRPzg0$mZPp&@n>8@yIFS<o5U(07951TV&<AQ=Zh*
z+Gl(vZUJq;yng3~_oW?YdMh%DnBy%#>;W{o8)5hnNSw>uBN2HEIj<miCm`_;L_R~P
z9$o`G$n=ZXDw`M(B>&ELOQxXz)MV5u1|=4f8kMa@LOC48dhe&bSB@HM`XF&#q)WLs
z#-^<dSJnBCn>G+(@ngTx^I=Wy{dBGExW%8Sg=poOfcUit$RBRNIhGsV3E7&u2qgmm
zR24!I3%rfUxelod5WFo&{5K*WF>yN*KfNDErwAS&;V*drpPOXjF(i&aVkUyO6N&c_
z`4tndAhG_zlrtM)#=A)Lpt#%elm;BHNW_qDX1;)#nrcPCu@B*-1|c;SiIWjI5uu2c
zyn~Um4ym&d8V^N6Z9I3K*N#XRa;`w|Rv@tjk?Rop{<#{D)tPbNDlsub(9WglfMfmx
zmF`CEpRl=uMS2L42M|VZU2UVlc^44KB0h(*XAxjuo{iDoHQk;r7<ZhT(W$ov1+Spa
z%Lskh&*#x}Z4A}q-?c?Y5Db#XyQuv(dv3ZA?F*jP7~)9$cL6)T2n8Ra%KNNVZ2KY=
zk%HFYS59diWdUc=6KEM1uL9nFVZhmrUfwaKc*mU_)fT^L3Mp6FOlBs?eB6M9hi^^H
zBJ-p0U_=F(UjnqhBM36TL*!coL8fh_oR2n`DVG9*VnX4J`~al!CGuY=!94$hL?iNR
z5WIgPaReeWm~erCGapVl#~^q`NF1^QkDVa&Af8(cKj7OP=fh)L`Us&SZXZUC2N0af
z>(S<SrkdyUMzw0UvKrgh)Z-|55p{MVq<)UX=ZJj5#2rXfJOVmoU=!~-<m`jgUI^Z+
zNSuerY9`)8;(kQ7Aq@Wni4m;-7ewAc&VRAWKanVT6u=;OE(q`#M3x}zTY|(TzqG8e
zKU%t{mZSzD_X-qWgplfu#9fHohET*B-e}~!h172myk;c&KL)Xc;LSv0B_gLH^kCl$
zOy3S(_6O-)^c~D}>HZ?r*nlA2-+;)q2t}+^%I-_qZ7I70*<EEip-v`&tYR+yRdR%o
z@3z7}T=YcaS~q-+sO1c{qsRO05HBF|EQdJH&fpWIb|J_NhCGgs@gT?yHX?E*g3Mq)
z(?1@&l^Hx?yT1`Nu1Am=+>6LIgd$ezK7&frNzM!^NkFS3@VB64qg(bJ`zHmxfbO0{
zaH@ZW$$S=p5yxcSPP3aCjlFp44b*xK^<U}MMn$dBoBV5b2OMYHyodVlN}CdlI`<ii
zP8%~#oRMz9^=#9CS|6kShip^HHf7J+Hrp_VVQ#@ww%(Vh^Y?D`@ZmYBSO2lC_Z{kd
z%X-!9Z%WjkjaeARx`n;Lt^z~)2^^v$IBJ~XF3O(CC?<`p#qWH7<5%Zg4L9;aQ{j8m
zUKmwy)TsukY<RNCUxN-GG)SP9yFuq0P1klEy1+k(F4KAOf}MKyxhnCdxFYBker8kM
z8CeTvd>ZqgRti??fkYOQC`C}$Kc{;lI0~hl2hXHL#Hw3ODJRh@Ds_q<Hu<^Z*IsV{
zm2bW~YL`*Qm!tEebo124d)Ef&-ksv8K1K+0>~&G^92??T4Kt-2``W0~Q74)F-y{D8
z+v!K=uv63df$kKz+u{8+`*cSgW<)vd()SZ>9JR`n5X3^53YdT4#+_@gPU-t&gmg6g
zIHndM9inT=5ggC&9QBM@I`+PgE=_HGb8X<Lml7q1*%H9&sHY6QvCV2*B5htslx(ym
zY*YNA!8+Rj&eTTcf_~e;g@1_X*T!0eXz(<>n>ijEiPQ?z8i*zDi;!B1#9oN(f#98q
z#J-43M`-LsLTrx95IG1rb690F62~EO6oUH1j74nhg|106S}m_a+pkS26qz&Mlty~D
z))4L%6tWrhZski^n1H6hbKW=~*Kpj-#kdEM`V=K+VaN`I)Sr;pj7S$k5o>w>Le67I
zJ%Z5aL4yk5#fZFsoL?b$J&|}Hkv}pq5Q%>w@)d&GWJcsHzB6$0ct<|sr*1W+oJCK7
zqJgFL0CL!#n8lc=&{6Lt@>>)6p;@?gbhgyw3&L<<Tik!QymX}DCE!QRGy4>7Zf=g6
zgQ`tF_d^dS^3O`tf7#@dPA^F0e{Ax(Vw+7qd7ua=#azSFouYr^Ur#c?I7i)Vs&L2F
zUsn;*zbDajlH^PE#}m~LPE>y`k-yyJ6N3GWpde+hH~DLke^4U-MxCG9crH0>e}gsd
zDIYT}1f{8s*P(pWpG^68knN6a+N<uzw#(h(%6{4%3sNY<tNOOMlO&4wLT_=Wb3c{s
zaJIVHx3E-Mcr}0M)=q<j>`jN4dy^|YWqIa!v)-a*xm~;2Ej$n{@!oD!t-6Z-gmq>d
z?nyY#I(J`=lRe%!Pwx<WVw??bCCBMKlbxUMrlk|7*F)%FyMQ?uqPqMvXZuvPE%@XO
zyb7U~c?FX(mmT#I9q|gzodw>4yOH}y9lI>pfIc1#N1$#<2p^OEWQcv_<FbvMdCOB6
z@(kDAkE)?yCK`U;L%KT*4L|Qs*F?cri2hxGD!3ID{$3&Q_3SOKj+5L{@pU*E*3EQb
z`n?WEtqlVB)f(^(GHJYYd&69!HtcXN5J*E{_Ci4{LApq=DsWybaP}<lFUPYg;vDN4
z9_8Fr!~XCuQ;!{ZuR;vd-iOfA7%S(QSo<s{M^8Y>QbEgTI^LEQ6XK9BQ#?WA?L|~r
zu5oeVDXX0m^>E=yfZ`OHX}IdB6P*<r6>p;QsdiB|BC$~Bb}$D$d9<@|=n)vB{Nypt
z!ikK9Cm%oBY3svcM8`ObBwFwa8ZMS`oD4lhz1{#?r%6w@u&2|UX_L9Uz|ypt220Z;
zEX|0pv~P^1nYz0w`|dqrM?Hzo%J2p@ynByPCqwsY)!98EC%<+pxju@UMOOLRZI&uk
zFFc4+yn~LODkWwWO7RXlmI_sRcn94UG<B-%o8qJ@tw?r+H^u3WtP`DeRjVn*yWpgB
z7MIB?<9*p1{<&MonqtV7K8Y)Y2x38xL}U<xSp0JlnaKoA^HUI6$^=dHOA)ycLG0!C
zt)h31*uYi#j6KsF{{d=jMv!6dMC3;ZMXc1#ULN(f>4f&O(;6MUxw9Ovb}jt7p6`s#
zdNmJCL+5Hg_Z)X!)`j3n4F=}wu*LAl#pS_%4$I*d?Cp-u9^`JH<}aveD_rCsQph%;
zZjLpIip$-KbX=jpcV?kpVKMriSUAa_P&g|)9%B?i6h|4@r63vFa&Uvs(neR;H=veE
zrs)H#hGe2ixpbJ<q@vK}J^E~uYX=+DV^+37K(90)6<Uz01ctmGs!N^1#*kB}+06{G
zWg;%&B_Yb7U!yt}N#K$uckdq2Y&bqKG^O^e9z<ZB%pz~l-nnzZlJzm26ix!T?4wy)
z*AEozHef0dDu~@inXv9Pf5g67AfvEQklh#(hJI1!Sf04^{!Li%B&-93E&$EIYQ1=Z
zIykY3gF5U+1`7p2j}0jV#||~?WoixMT5!1GNm?i_T#ou9Tz8hxU{fK+)YV4jVg|#G
zBC&P4JxGq&wAm#EL7|H=xvPijV;g~-k-)~dZY$8x=n|4WB2*Mk(5To`V2+jpz3i17
z2<IGJVJvPV_9U7GCJ<zzi9JqC0lAY43ma3jvKqqyvnL5+VB$8Lm5PY2rBEQ5Jj*%P
z&5}9yE{I6K(JcoWr(|8TT0*u{qs0<R&~z{@N#L5i_Yw37y^wmR7Xuk2jTxMP@Mt`R
zea(6bcfuDelW0uaSpYdQi~RteGfRXAVz@qKsk#wh&hGCN7EUfy*zoON<&ugx@dE^V
zjdhxlvDkoMjsaHS2RAk<)|{J|SEIB?!8oDvdAgIH=%lf1R`w#dG2~3}Axlff9(y<_
z(L>?MB{3nx*+u4@pK>QBCne}yz%rtFp{6`|sLX;JvTbXMrYXDu(!ql#P0rpuntPmF
zLJU+)Y6M;uCs!6<&`b70`aIO~wDju%frk}heKpw}PRiySj))nzv3O9AB=;S;m+<;g
zh8)lh8yuYlc+EZFloD#kK*uJjy)nq`<hcAo!wKzJ%uowl&Tpvz8xhYkDgncI$Lq!5
zq%}dEV3q+?BFnIxxUsyc7Xg=xqD-^u1o<S(IgWF3uHY;@1nYZ>aC8L33Q8ZUr&AN_
z*eFCH)Ong_W>UvQoh`!cbP_(UgGi|lp0upKl2l3*u8QbJ#GmG<)e)PBuEQHoBH_a}
zXZ8j#q74(QgdLulW_QVp8=_XUXadmccTF^J>8Eg!%={dU<DP^yJu6$>m?Gb-CC1@j
zsIl_fkN^Y+b2v9Jh)nuCz^FpvxYHHU1L3^hH56*Ne1mI&4LA;v!TRTOj})t3;`;)Z
zK*kE~La8z<JFW+*_#!t+Qo<sdYS##IFLslZMMk>>4TL-}Xyu?DhW#&fMTwA;E(2Q(
zD9IM8`d;-5YRcU*Xz<HjBVI!IR$b_1z;&fN5VgDDkyRx`%tnm|YBphwtE5C$9JM#;
zi5YSt_u`Y-IVicvEu>hvhRvu=Wu355&#6RKzSibQ4dz^Dks#JdQubVLXKPd|iRT9{
zsV7G04FoOH->?XrEiS2Ty<5xbH|BMbMDNzTvIRBPu=t@Z0g&WE-AWrBH|5~Mm{&K;
zGRHJ6w8-&qK~ILG(U+cFL!lPUx5i~=g0|$gxWqu9_0o@!Z_Nr#B0rX#81ma=dJ}HA
zLkLw%TP%2N#>N^)iBi%mm9ln&td5zSADMB1Hb~P%Fb#=Ni`7g_#k)ZmtXPUiPZ))?
zRv42g5la#+$~B6LV}dQwR$A%qWMEl@Ti`EAIJ9RYDkP&-SW!_Zlq0Cga^CPeS@WsN
znmpAxtu<mI0~WxGiH<I~zO~&tW^NCSAVz!IJ%BZ3g*Ql4cCl&2(wY~PW5We-VY0?L
z5+z(YyTS16PDJHsNz}pOMOzbJuT&5Nl1^+)LJL$TTG|3@pB7pfX5cBx1<x)GOqCK_
z(+I`V+(j(225or~M=+cW>MAVau@G8nCW)?6uY0^G-OSAzONF(vUQinb;vPm;OOjHl
zXGAB+icOn%MGX6C?WNZvGGq1n_s*Mxv0wXW2B^<5`Wg$UOGK}NZMlbPw3dk(-xv;k
ziF0fr5;|GPfOON}TD=3TkuuP7Svd{DB)JcYfD__uRErv)OdZmQUIs@cG`r*cA$I8m
zM~2UbYRxGctw3)KhUu&V@@}k5hm%A{Sa7(}Z1nTRWRqPKqGFcaF^`Pk(U3+Pfl-kS
zKiX(GvnE>bMH`gHA9~z!VuKP757@d5Kh6%HoZue0v&Jm;w7qEQBy4Fd=e=TCt0n*V
zSZ-O>Iw2NR6SZQUM7`P^85J0wtJ#7jE-VD#;B!ojS(9UK!N$eFA*D1XSYyiWWZqPn
zgVY07F@<T#44NGK$kY=xrd#WFhPBuCH9QSah|8I>8<7@{v!Cft5Xb&z<*r$z+FB!+
zQB?~xLJj9_tdFsuNtnO*R1j6S)v|NMYQYF|V`+z{iQ@!?B1K<9uEo+XA<j~<GK1Vp
z3ezAL_E`9&Bf%GHNtqF_tq?IBLDePpT#||?AjRBIW>QK<8V4?!$V^LMrbIK7(sGJ|
zsnn96$gX@ADvN+8^G0%0D>n-%beq)-Sy?$-V5U$>DGA4&6_!+P@s!}15#)l7YGZmN
zO;CuUo&gpz6lu&l0emlZ$rZ1&+N8IZ*?r<IY(4fj+)}Wa-r+PDIj*zB;BK_r>%JBp
zK1E7m6WUKh&%yfVt`h(sU|SK1`Fl19O*>ug360<#6mzn*KnBO0JVbNyP;xQ_U}9Z|
z8yAJ<WDo#BvXU@|d7JXNg9A;e)mGa`trkXU`9GRV04EG5X*P;hx`{df*fI`WG1mAy
z3kG<?m`gB-veb~WtK!GVv-X>;t@N$8p<#lVGP!h65HU(*7>Lv`<W;1}q?ii^Pala|
zyCd`TXGy$BMzCvqXvs?NWMsp`I~ntHxduLI!HMQD8_S5~jU=nI)RBadzR8&64dB|y
z%VQQWgRYruo@3(0exDwC4SPxxBW>ZZjCeK%Q+OoG&*A0XR?GLXfG34YeR9FsOM_;x
z#%{JyU)x**4zBpme#v+{LV=@I4R{C>Hw0{*yaTPEGsuOjvO69JC#ZIa!G+8LK1`V$
zc4V4~8cVg{gA>zwGe^Wu4A=`~f{}*bWJpreD9Mm@vII6d_Wg`WqSerZ<sD6dTBVDe
z8Yf6HWY62_m~)O(OWSOF3U(>A%7m(k_`NI%Mfe?`B<OspGeL9oL@Rv29I^13B+P~-
zYNn&NB~Mdmhu-A4cOWxgF+^@o$UE)kjL;xd7wd|tR=Q8?F7ft>CEj!`@n+;mH%ygN
z-`ASyGwuFpzwX8i9G3Kp!wV1_IIW3lMpDkscfag!gpHxF17giFCo+CerU^Ca=afuM
zyYrHgHfa_gm@KeH)j>eKb8ytT!7d#d^J6QBu9gK+YZ*(6;Dy9z9emM;<Sv^QW?Hzn
z#r@FPnb`hYLB3cRD<Z@tLR=<ElaB7rNa--+u;gfZEG;+>Pc{_~XfAi#J?4?IQI(@O
ztg=wCj>y?X8bu+?Lv9RAhHyAD(wfqtK)MUgjFsI5mOOKgzx1(IV-XEvS{!<#nWs03
zWk6fWdatqbjCQ*AWJ^GT?uf?96~N_I9m=s530rSFBgtL4n})EPas{j23|1RKVgRo(
ztCOIU+FVi7BT}M0wbtmRrCnXFuI(-EX+2p&*oSHDlNBs6uihF<4MHRqUD#t9QZPXE
zrR9~H7<blB+qwO7R|>>6Aey-NMzFKRAyuq_2X$KkY%4LnZW?unA$0*MUm^}oQm|Dp
z!xFlK2V0Q|K*|~sft4rIn(UIuiW_x4G6x$bb5xFm7gT5wKRQMNH>cd?j1d4e?0JU=
zV<Sj%boaP!T6hmLhlo4&<YI9Fp+PLlWPQlg&>*67QQHcJ2?=SDca8&H5*vRcgh??=
zPize37^T^Y>K46b%+)s8WbLQeI|7;J8he=nKpgHVBYA@zr4{u1XmbO{Unth-E02$m
zX6VC#eeI@lX0(Oh&*BpLDG!&kEasDo*D9HjJe-~957BG3zn)VOjr`aZaR3icViwWb
zbB;y(_(t5EOCF9HO~RSSYD4%|>ylVyNTxN94vH;~gGmgU4*Wy(mS(=4u4!X788{sy
z+QdBqeX_8-20n!BPtn&Ft&6DKMOqy%jurG0?nMqY<RugYrJ$8*j?O(iM}q^$oaqtK
zA(JGJG~LJw;6|q4HA4Q;0*XHCk?O}JXcFktcskZ#!JN4qmsEM}hOP}ZlIm(Ho8`*o
zWr-|t%N`$%x0?=5&<lavJJzRhVkAR2)svDumFu@ZIZ0&Xzf+=tgaeas;<(JRrj`z;
zA|v7uBVA4-<asWCyujaDcO7CXK(ee%ctBRgOq-*J#Z1%6C8>%93@hTzusIh@a)pZS
zAiivpi)p+kL0?gcubWtbPt?HyY{?bs*bG)^Rd`YEqH1f1JH5m`l#)oxl_qJ5!W{Qa
zNay7OZ=`Z7M3P5I>yXdKt7xPutG}zGVhcT-7<NNZtJN!Rl*n=!PU)%TSg%;A)x`{F
z1Yz%7YOtK&C+7V6Xkfu>Y-Bg&YH_$TVp`$k;pXkGEuoHM5=*!>1Z0E#0fNRx!<#%S
zi+sSlce)PBlSE0H9&Dk|BY*+)b`9i}l*PPw5>dL|x<S*2+DPMUuz7=W*7ggW9Cl_D
z^t_KCJFSsc5sk8{WHj~67=2BE)HYTtq;YzNVXjc89>t*Ib<U7(_7wRNiPF8Im9PpK
zICsV;E75|V5GkaILJxT}os?MdJZ0M)v+2af649+K-NpB0EvEO5#q^XM@e4$As#7Cc
zGa1uzY8fHDPp*)Tubgz>MeS?Pr)TEN>iu#^5A-rCnj^+e?v3)Cw_2*tw%0iJPjb8F
z^#hWuOYu2JU%r`Z)&D%Zm*<=hOfn#A=iD#J-_PQXiRA@s!;*^|Ih(N?vsLn2V^3y_
zv`739Gq_Q3ZTXf{;sQ#Z5GJi9<*(48Wk1k9yvxzPBe3E$;Yv33g~P}znZ!ON@+C_t
zPC;|{vHKCIm3Jjp1eaPOHXXz}9czvVxs@lETyLDYA{9Bq836<L8RmoKsf-$lF0|6G
zN{iFTXDlPL{_Y)RTFh$Uo2Rv`o6M|9QWPg?&F&1a6EgSgVC{*a+Q*8NdLy6=78)d(
zH(H~qV@B(19Z~(PIKt(1ee*}I<w34SL}z8YIpE{&CuduNtq=WF*z8b5$tBBtg3RCR
zXrpwPmUzQ+Z={WgCTcD6rd*fE$k-*KU114wv_e(i`Llj6R>+fQ<MJ(Pk<$Os0VZTD
z2llct$3d8Q6&h=(1(H(4I>C(NP)iXwzksr6ML;cD{2IWqbBS(YHD*Yf%{kjN_N6WU
z7H(nDlbp@T^{B~q^Sd_%wB>qD<UB9S@wI4Zrdr^4yHwMXIs->%TBc2pY)V}DOV*%P
z**B>h`iO3r*<Cm67b}HXT1~XZRss&mXwTF6l~A<@Sg}4QA@YH6qG+zYZ^i3;i8k?m
z1*D!_nS&w(p$Cf~xy#2n%#RiE0#d%Uq&U>VTvjknRqOAP-jZfTTU6b40;d;EgvHiE
zUlN;8hej*Zt)CnhmsUC5om;s(;5?_65x&Cn6uvn(wYB}3vUewPjOf@bgg46)6;(kP
z8MOI_B376h0b|T$qOT}oXe+t2l^pSdHqvn(Vn^cY=m}H8TcN`7%dF^+omaUCv~oHd
zW#^GW<kaH5m-y_W$}XC|%@P+xl3pfev_yROMR#Jaz6dE|UYw|QGxSKn(O9I(j!5YV
zA%MHwnrF>TAbn*nx@^&SmmKVyA$w~n%Tp0SNaK2Q>|bw{pus%Fztl(qOjnplpk!uW
zt;_mFQ;#MC>$^Jx4~Q9fpl0AfTD=V>>snt|j^KmbH$n;2on*#g5i<fH%Z$U5wV9dZ
zsu3bX&CbZ+MBk{$&69&fVt7<EEm2@*Up_j@jhRzBx(wi!^2R2|!=-OQpcx7$B@w6s
ze-h9=6Qa`U2@&-9Gm^XC+%4x_ph~*D4AQLAdSXJ-qR;<}t!B-!92+fPCZuB_EDUbS
zv0j>h6ZfHnup*sRXibPB%ag^Cffiv$gqr2aTxK?F$mcF%4mX+6fxduYGAm-KlzYf2
z=32t8tcr$@h>HXfZIg33Uyl3b$&2o66B%wvw&^J{DZ)dqT<Zi6E+jaOQWuY3Xp>T$
z*Ap8vROh1Rahj>kh}~*pNI-4IH0IK*_=GI)3YCh)5yOPO?1VDpb~(pZ8%VLkQ_I*K
zf$!Q{ZU$Xu%R0o`mqV?MI85`qHP|5KWEvw9wv^tYiZRucW5hHTQ!2_8u#ut=8q4Hh
zOxv=fjE*p}lgl;QB8QHC?xnT$0%p}XlM56@Nue^<ic={vH<0xaXP&Ov115~YfIcq7
zt*3|z$)^Sdi9^oD8nQ>svyrSMtYF!Qc=Fktrd~IBj1$jfCRU}Hi!72#+$b6?c$`CL
za*)Xp8N}7Z6v9=hTr*%w!oN1PyC9zy3-W!mAfKLVcg?VN7x&fjIKa%<=H8Fee%9{f
z_wIMlh9Wg5W1{;D?nRQ~fsWiciD|{T&dJXgqMs{-YdFtHg?UMerzAKqw&dWX=E<hj
zK|<czu7HC&*IG_W@c5k5GK9IFyfD9&?hKY-+?ggwE3omnhkdex!rDsY_|8_oxc!f3
zjW}u4a+c^xn`R=GC}ZrEEy-^TxGRZ|B?_!ujyBlRj>yu_%|+aSoMO%6C6@V1E%TS<
zZqv#mOR&Pq|7^arsf<tS1SEo9WxP6okjZMhf2oOCNZU!t72)AwHy-MdOCz!Ov1hC(
zdUZpHenzgF#^Ez^u}n0y)h8N3bGz9A*IUik5G_1rL%!D{N}oGMNY&;oZgS}<K$wXg
zn4I5kOfVv+f39w}(mY!AfjJVEETsi3w&?bdZE$3K8-(+oYd1@9H!e=p$s?oTXc^;;
zCxl7CPp;IXH$_9z4CXvW=D}%eLh9p@D~y8-+0Bj?%m(m_at860R$=)V!Q-NJv62u6
zPoj!)@3Rs{Jc38>ggI>VCN)lgD?miKB@GN7pPo%f<l><_?9@rG`Z$gF(4LD)7Qu3y
zW}m_nro;Ue;>kYGGP%3>O?pSQ_??=631ph#Bw1-}!n<#Or|;&dYlcRA&hgj2l-77I
z7%LYUulvQq{Qrd<hiq`*1vQe+5WFVhHF7!k0HG{13WbXZaWS*a{%Ee=a6n{7KEs^t
zx@cYz3viAK#6Uot2}vGj8aZypG>G~?N$y+~c}T8cPIxh6*=(hCN@&7NjMCP(^p|sc
zBYw8o3dAs~Cv+NVH{Ps`Imrkc{kVY^7KNH<^;N=X-OSAobMio%Bry68tx<~1DAiat
zTV?WJ^tgc^!;!c@7|lW+ZPwP+?oU%HBcWfFs|_H=AypD6((cd*bbb3HPbAX1PM`r4
zqfKk6)>x{~8RcFG85svumJtO5oLKY>0;ixA0PcuLx6#ni{+QA+I>zH&k;K><?GW7B
zQs?DCDHXah3)D}Gh6MT{p`#U!03cigv=SYdtLsE8bA_UVr)2j-qOPn^Gh8!NXx!os
z2T+lG#f(J0LNZgvVT(+Og(Ik3S|6FKMn=Wz5%+B4Ws@5p`KxaXVeW<#Pvr2BD%xgn
zM){6YtBLlss&X&8nZcP|67g8{3DJD4zQ{9~QD>3?)bM$;R;G$}j>rcsmT}3$>OJ^H
zlQXkV699`Cq}#I*Q>?W!)ml5#VzD1l+dk5#J^8czC+AW&5s6@WY1vRO(7yR{QyU61
zDJabSW?UiM?cGb<BczU$^FYy&tyV|Q);e;3pvS>;1o<mRI-FyvT<}INnrn#(Xo$HX
z$B2drZEY1aOQ824?XN%B@<EQ`oS(=Q#hH}FjXC=?n9-I5x|>3W<a?LfVrS_hvWVpl
zV~j11^Aw(=YQzge^zA`eYS|PYN@-fxxI%6XYBcTU;g-W=jlg@Zjlk*=-Ie!|@!kn9
z?&5Q!M^nQdldr*#HS}i)_PFjEynQzse5oMOh%WsugJrp-qX{Rz5h5$3Gf&vvo@{x9
z9^<w?F{wmzU2G>Mnal`1d6L>_4I_{8Zi!fj*@|SxT05T_qZByW{X;9cQZG`Gsd%&V
zAGB@4h)CNF4z@uQgz+^?OYLHsnJGcJCPl;UFIigMk5`9Krgp!+5y346j$FvlUaLs)
zL{C`eXkG2PiYirF4oyM`2bM@%E8X-?NvrjmB#BV;)<!xRFP*c^2r~~DyKQOg6MkBq
zkh!_I_W7eatw_Yz3`dsJCs%WHzkP2;G*pg5Mx#Gt4i^EE97FaxT3Z?x)(`gKY<@sO
z9uCwh6!$lTWAk<Za9NpbgCorX)(IWY&gie9R{iWod3IAja?dhP%rp@+iqze_M<jMQ
zz-J{ZVCAMP9G=wESg|f;gROC~9^S+1AMJ+{>aaH;<!XoFKq0fp2NfGV1Z+YsB|$4p
zr29iIJo2?AIlB}RP79|5w^CBz;<>vdVOx`GN>ZA!?bPTZNzQp8Ptx?mc6tT$?Stw6
zLAA}$XN&u4wKCKCns{X+VQb8yn&X(fJ>Ttx8?$q_Hd-0R8e>jGQA81yU!v!ELcM^r
z@j;jV5+fgyTavs}V>v^#FY4$kI^tks<3SmUdY*69^MbrtTa##Ey!*;=99ah^E@#A~
zopf(5vfye_fdyWi$7b<^giA~(F(brfhuZroheb<miQPze9y7*10_Z_m5hz7W(mV!x
zq_O{zBOC9d?0^|o%2D@68@&X_H;Rl~*508M0Q0X#ADi%B9+z~1;v%Ki-?BZy%Sa4+
zFO3zoeGYY5tf-IIiu#0DnBlf0wf2d^`iYyJC*|&HPDYE!%*FLc>lR%>D^b5WB<~T{
z=&d1%r#|q?kXYZCw?cFn8keOsc`E@;D6gP_fFQZ9%H2M!PWFR0h$OqfD@5#h_*tf!
zkuql|X`Z|CHA(uiM0d{aYzKKm2;`l!PD?lkFBM8^rleFqPqaHN%+B4t_<`>WA=%+I
zc=`<<BI5Xd5Yk|*LNBmy5iuf=#sxmggj}oHv^zk*D8w?e6_pnQyj*RO1d(qF$t~4Z
z%B4B^x&GVB;<88?>sM7=?ozCC!dJMKMEMetT$9J1uH)pL6qEB}iAZnzu_6d^IL`>A
z?%rO@xY1#?Vcd*0gbFD4_&$o{IlQ$8gfdLucr4d)6teT}0X$U#9D_%bP4I|rjCgDP
z+1IBTs<YQxO_JAIyY-W`HdcJqDo2^a3d&tBt>de;VNeruGcj8$+z{W;>CsKAo5yu&
z`9s!Iq4df{2zaATtD@eqi0%U(%)N1w^SFtb6dj1<t(=oOeU2k1UVV4BVDdy_gqD2N
z|8EcA;Z4Y8_#vWqtX#rmDN1q<;w{q;%SEt8Z+r-krk1frh>ajN7*#x8s}{XfjXXUn
zVT;2A%3U>k6rx{PVEk0#+RgP+#7<oi2cT%U6(aS`7ZXHBDR4BQaIZLny9-NAUd&DU
zeISi|cG@g?DrP!sas_tFuTR45^V~R7(Il0k){;B7nM8)U-cex4OvccAeZ9Sicm`B~
z9Y*BuEY>vV(KWCK3Ad!X>MGUx%0BapM`g+*BSTiRB0=1efs+?a()Jx8iS4GLfa)Bw
z076I>+)U)S?P~K^FDXEicUeSK#5RTAYna6~qJ``gSz9KrE|(Fa%dC+jFL4)w?|j+K
zJ_wr-={AzbT>MDRCMZ#98OV9&oT_P29A8$IRW+bfEbz&_r1g`y0g)pPAzWipE7H5O
zVk>ven+=S!klo_;19`;?N+C&o|35icMg9V4uH>#U-pk>3s>P$(1DKuE?l+E6U2Eo<
z+BI5|)+VS)lW=shmb=5ilX~+0$sCzwEU^6N_5@SWE;oMPq**mRE4pSyf(kMWiR3=T
zXEI~YY`4i6)z{DRbAQXv=2-zh;@^RmS!2f>T(XI^<}y*5#;QucVldiP$_Y?(6~PKs
zan6Au^rVJaUDx=iO6)4|kN^#x<Wqdy1bd4bH>*P$@#=MXS0z`71dCfttj*{stJCSM
zjUj`#HkKT0#+OEo)sn;REFn4e$dw%O_#LOYS9b|9o+j~x95G>J$Hd%C)}&ZHHd~Vz
zuXB+%RYK0{V*rAl<Amj?dqWx~E~Oe`NXnS0A|DOmn8nvyOv#fCCP~1Wj2vdV_WH=X
zTyPsTqL5gR<i5^DZ#!q@yUAN~^vU&SxsLCI&S9W=*LA-IL*ow;__zgQ_4slMo;^jF
zhHx+f-X!kei)7AE5MD+26v1=rz0wJI;Vw?P`J>plh`sdTPk$!)87I7$AC>3uXFik1
z@n;2p&cu)EWQ;$lOBlNjKmN`5QT!Uc^8kK=NBP5#&-*Xn2VXYA&-+Y%il6ixzJ{4Y
zhWwa&=p*U!CsoW?HDe8o@h8=UAAcBs#_?woejI*B*<mlveEuBCAAaM?Ifp-l)L)O7
z^q0Dnv8(Xo-@w={jQxZ^Kf{mnIAhQ7=SBYbu9NXr5PA5g-m3sy*&uB8dxv-XuBz_v
zYlF-E`oQ&j27mW)!W{jr4nFmJC(<=2?}Kz*@DINq{?-O+^%v68mQ<leowWEydg_66
z1JX9X8fo@u>(>OT@C)fPzh+@@kzawDZlL}hbRyyfv$K_cmRU;!^#|1+<@pl3#UB)u
z`tGj-^_!p#GxRH2b(Y_EDVnxa`m9wLEb)s2Rg9QAz10uYS*=Zez2kwk3R?YCFvbt0
zmO7)^SF`;RBr00{nr7c`@>MVr6L$S@8>0KO;xhE7&T7VFRB>yopKirKtyviegB;WD
zdzF3<v>4p#4_f4BR9&m@KH@j3jy6A7+Kh~X4&QAF)Ysuo)WZBQ+49N3CX*<_UrzOw
z`F5(9KWE{d^1APj^@~)t39Z_7-kgRurmjqRSkv>?xxT9M3j#NV>gqeE1K9;?{kjH|
zZqG}%H8q)>rq@wL1?oe`t@KNS?CD6XM8xexq($(P3Ksbx;7ITCGr&YKqD8v^#cWo?
z-|#MpWI!d|%N`W~KV6GKDhXh?iy#H+g;$&}(3)82@8WMIGD{nLZ|_!&=3->8z72mt
z$z|sXAv@}`*{*H@yrelY7iqT8ofj+<w0MCkXakfk)(4Y1W1E@4dekaL&Nqp)I)k_>
z-WsSK<6k$Rpk;G2!F%h`by&|VqUB9~MGFWlSX3oL6ddk{Y87#>3YtK9K1e4xlKr-|
z`y)YHUQq5=@-M(!3X*aCpa}zII#WvW(fcb{QIBL;=@;@3>QuM+g{>XH4G5r&fMuFd
zuV5#Dz;xZ91mrt~Q1~d#1RZ|047JlQ<6q2nk>ErH_oPyOrF!US!D*E`LH=T1()HWD
zJ6Ig3$AnxZw@N)#hXI#2H#9W)nGqn-hCtoiYlmKwGQaXe-<^Pw-vSh+e&rJ4VzQv3
zW`RGX%`aBvZGMe9rOj__Bht&71<8mNwxuA9)D6?^;<o_^;O&D+t`u~!pbB|F$=@We
zKwUK*UP(0i+oUeQgKErbZ%1AVQecuR;wRk<ydEm-Ijq^QZSzaOvcY1%C}?M7g-ENS
zm43+xq+0y4pa+L|q!e>9*!07DeSASDJQVP(m&tg+CK8TJu8i;%1nR*D)^&WLhko&S
z$ahd(SmBQl%$I1)<Lkv(aZ=kOm1f>Y%1R9D^Z{m7vp>4i2brkg0-5uV9w4s@E1=^t
z_5AbB4w)s!YTbz};O%!9ODf+MR}P7m5drI?nV_t4M;DQD`WG@@D)<^mY4Pzj<3&Ps
znDGq-ZGr2ZR)I-{BQbOGe4yUBYaOY<Q@6e5>=ZG8oKB7{S+31$ljUM9HwYgQK7JET
zjihPAZB#Dik5R1UlozZ{1z5T}rBY>;pRTN-Ox;1UM$KQNra|=qf~sP5DsZDpv1TNy
zB`dK?*>ERNa0f+&p9V*%V1dl0pzRKHUDz3@;a|k7m>TQ5NA2=cQ+-b)VW2L(YaNhn
zWud3Ocn$caFudZfb<N=p4aq+VNr~&1V~~<IKU|Mtc8QD&nt@WywKcM``}rmOi@K6T
zeg5t8-8rpIf!a_?Ay#k+Ks$r#;7h85YCjy0_y)g73pTB<=8(D|TNYug@FC8x(|1<~
z>e@LW^`2IDtg1keL-4l<$_857QyGo5%xK>qhSJ$6E%DtWSmFLPs8E~5zsfArr=ufP
zj1HS6#n#0TEN_W8oS4l*F{8!=KR5u>T;zKtK^JHfl(Gk;<}3iW6$7XPy8;&^T@x&6
z_3P9MfTW6>AoWgfBE41Yg675IbRe+=+8x4pBBHC<a+M2lP|yq+DhV*{B9eNUpI+?u
zJ_7x$YStA@IiZ8(MCxz=?D|d3etnCdZSe~x9fHi+LIx_>NIM`_NGiC>?;m9So)~7N
zU$PK2TVTYX8~iy$xas-1c;XA=Jv53ks6ag@>2mepD3Vl*aMv?)Q9~$&gkGqg8s+*8
z3#Ix~b6cf-pq^l+KsY-qgh;4BI;p!W{lUoZ4O>e7HiOigB?@7rg2NznT(bR0nS(o~
zt)U73{GPoq(n)O)n}K?`X9tCBaZuLjmrf=N>@7Bs--W2kz{CikbB<x6uvLW9U@X=m
zk+Lg0L<wSXp`=G(oF$@!-4kKwsk5MPUPPWcu}frwt14dyqoEA3CdR0dDw~7z6Rh-W
zjI$D=B?#M$a(O*p#8Jlp3&)}B7U`J8qe@%1ZB-{gBL%7m;<2n*#NGO=uF>fi&f>V4
z4orMCOd^%p*1%{3qp-)k;Ao&ION6|#BHRI-1}eK1WO5P|iORmtSjRRZp(Jb~rITWy
zcSU3XE3Kdf_0XxUep!vL!j`NM6pRO=1k#6Wsh-4&X*OKqkH!cgb72lM54Paea92|k
z4MKG<BvQXpVxbkv0x}B?Vbq8O*)lzB=mez{t6k7TUho`qA!MhEd{ggF>Xd3XOcyDG
zG_5f3)^*dN9%6~~$)q-^w|RPVXe8q&=nr^*E>M@$By2-JGrJi^LpD&C-v_DYRSA)2
zgPG9ah|`E8_<w&90$RPWV_gVjipk>Fz=k@+ubB-fHwa02q{&;vR(Geg`4x2#V4aW-
zkXr7Z4PBre)d9|^^-Ia`Aj%qGrtlW@Ue@Gi)hVqodrQ$94C^eV8mPd9ZRBUTwB@Z>
z&lL@%g)%bIiU!biAf~%21!(t=M_K@D@G~vGPi?tqkqat6A3qt)#hVGCC$cHHNfu=|
zq%0P>f`175M&AotP_@!8*-s{=B_%p}#O=J>?aG?o*1KKn-5pZVn;6`q7kK{$U$LX$
z5dKnQCw|(Pgkdffvixm8D|O9UXo4P$or&$sfqo%oHx6?<3kVy>>>rfu@;zH280GsD
zFZLVTMJ7SALe`VAA;^G7Jz?KlBq?k({7J-s?~UQ=s;lmUQU%I6rECCcRs})RM$&NA
zU$M5Gv~w@la{6!1Hq?r&W^Ee!*vPn-wZlLZO={(4njErB#KOQ<ZKq<)V13Z6WrcvX
zQP`yd8=U<>|6>47XDHBM23@oizdRGX2O*^`$x1DtU>ie)jE3%}LFB5-*Frw2@6+Vz
z&NJF2P7%|22G$q(O;i@@o7K>2>NY4-bZGmZYq~#$x%u4}xFJ-nx@xU4=>G&QK&3q;
z?C?uFzW`pe64z<!ysqO>#Ey!fB>g#l*`}ZqV^Qiaa@`OXd(hR9m3<{72b7@O6@(4g
z9)Rgv&mvSlC|(8cV~HQ%7bRw4V4k>cM_Wgwy91k~;BL1q*yay_44;4ot+2=4YP7;$
zPnPt$88XLg85c7XP`?B)s-Jc+*&d97sJ!2H1dBk>Wv2m|_bdX2&(*CsL7yD7X;Dz)
zm!E>z-I|H<S2M}oV*8>Qz^FVn&UW3-twzZs6Wdpjn_o=imSL*z4G9)K^2nn!A61ye
zoM&;@+Za5{9PjvOW>8&~zIQCxhxt$vnNu;hkuJ>YN#Nbt!B&8Qjp9mVTq$*y0FJ7e
z7?QAi!A)S@h^@Ivq!=Q3S9bXYZvg8XG25>mkI23qGWJ;Cs{zhepmJqZKB{2@snyNf
zpcGxVZ6$e}|1lciRO_E|I@Gt1uWJo9WDTCyQ~P%M0|WK_lQ8ulpuDikZQBq}F$0a`
z9S4ZDAc3S@?C#)33)wJ)TEM-t0`-^a?Lpf%)hY5>UHZs6vu9<+Qonp}Ol%d~1Y<C{
zV(+*bWQ5>vnX;%K-&^7rtwZ)?D5Empn;dupvr8+**mPUM&L(X0?&?Pq&>Lv&bm3}s
zmexA|y;z&!mkprWfHeL4;v56_vH{wL|7vlhPA(syw-4_x#zM<hLyUW<ssXZx0W|Lm
zjOp-5zi1Vf>Qr{E?l_e7VZzdubh+`#s8{<T53-6I?f`0&W+PWL3_w9N+2GG%9;JN<
zbV?S?R_1A14Nt-VlYNNe#e&`tUL<c1+P7$IYF6tWmnJedibDr1wc>RVo9Q;{ffhI1
zDKi4N*|tDk-3~?(qrk-m-@nx_dmFRcYF71XzZY~j_9TJ2zM}(ki}oa2F}ZT}Hg>3i
zU!s20(N0y0!QLq(r!smGpeEsdXjXHxq3u;t?$a9Gn03Q;nmJh4K#c<xtLrpP|Nmm)
z*0y{ecGcUUVu1I+x-SS8G*6&<c3DWgU^6G`S9JQlC^w*D1@voWRfdb~_kwH91eWP$
z6m7vJvaWszQy{obS`DBE?DTu{4{fM$B<ILUmcyM9s6%$flUB>H%xdX2v5R3fV&{bA
zp`us6g4$}P998)A5gKFHb6i^xc4f1wS9`LD;Abpe?5ksg@b${9I_dSi>I>W508(Ql
zItbdbT7w2^@3x#~poXnwkafa2rM`c&pE)0!9~k7o7S*6eiF-t6LsKWV1FL9<7Bo}8
zoeBk}C|825fj789yom5Yo&gVywxuc`^{XcNl`VcXJP8xoSJod1-x7Q_)1~Js$P9cy
zsj9^<Z}Dqro}h*ngsaTorD9Kc*jds+=mp1vR8FL%L&{h5&<5K3K%bUaBI~V#$d@E%
zd%m9h|E3t?jMZRMnAW;elMN34-(<t)+Fd6mJHL}|0J~SU!R`Y8wp06rS0O&!YEzgf
zlDQF?BZz1tg?E>^Q8I7JZLTx(ny=s8K&a_r%cdaIQN3O^;Pru8zGHWl*MoimEH)B>
zTKRe+amLoD`paU4!|4Pv|NgAV=5F;%TYTK2YHaagh6(0^C;h$#(O&QgmK;P2bAn!F
z*dA6Vf|X0Hzye)piXcNC=Bqc25QICFUTiw3Y5P$!x!{OEEoc*mSY@+6pwlmE@&~{I
z#KsOqi@-M6+-qU!g_X!UStK&|ZWwblOcqrkdr4S$6xAqDXSSK>Y_*~dJ#@fe(p_M%
zGq<`y`_?E2)>dQKj)tKs>VRPfKR04sj5W)ys|fmnj$?W)xxnFOMBAe*%%X|gII0(@
zYm`j}g+tUFA}x&NTn1<5+D?J0tbG?O4yX)n&(Lfmn1WiVK}LHH`x1Ivz2IgH0hXNQ
z!^zLFH4KYoTN<7T`2Gxcv{z-lR=1f7KQv<VDG`vwGu4t<V%Lbn;3e3odL!4m4eA0&
zyaxu7wr?OBuLb}m>aQ?`(H0&Qwb6Ae-4McDtO~W%8zn*<JK-YrJwd31yvh*3htXsy
zw^Ll2^;$r)n+tWctqZeNU*lZK@5>p}n!Q@6Ktbhd3w0aBT06DUH|YHrGC>jlUb8f=
z4IAL73e-&iQmH?zZSxD>q|j}n2*ON$F8Lp=ZF3=pW#Z|MW}%MtD9P&)qbwH4Qo%|h
zJsjny;;wc|S3B13@Q0%BN_GOlqbei%C2sDON{;~!s@o7|)Bvm*^i7Q+dB~GMJu0<+
zxt6}Rag>1oex#qKzoW&4DIa#g?!d+Z+A#&K(y3iEP)g6D;{n{kc<PtzBT$ER$ug5M
zfQL77)ycmwZ{%Vg36%T@4O8kYumSeBU-~K0Kcq19wg|beC-l*!>$bVU4!;0iuow|r
z1^R!ZZ;)QW-FisE`wzg2Kcz5WhSK!omPLDLkzMR(ruyz)er7opSJ+6Z<c{`4vC;lU
z8qBlNt^gI1iHg*vG(W1uA4p_*BcR&?^(lrUmQ#?rK?nRhm4L?!rmQDnhC6YPgi0$K
zfB>MF%LO$Ks$~*q&_MmPU5IAjf7yzR(=4!&Klx;R?6kEUQfnG&;Ec?h7Az8Y-#i(x
ziSq->RWr?x%P~x)?^O#0dsqt!hfMHS>`K;S61VSm5-)d~1U3w21`Vyp$P}R3wQ;1+
zCm<oXss{09KBbt?pGPFUEa4}FnX}qopANwE_QS*VM8bK<*WwGr*$6qLHqCSW3F_04
zaE`(=GY^xk0v}@yC`8NJ{n~rlA*Q}(j@l>|Eg7IE*gFkhU8mm{GW&HAS%1TxN{g)H
zWr0Wpa(wgVK9mlAmD;53Nr+1N|IuFy4-$*9DIVDgp{f2p_jL{n=NHH17Q)CzZL!0_
zh(m~=4KDLQtsjLR0HPNx_Z4?aS-(`gtcX<n83=?<?j!n2ov};1UMOYn26-BjJ5c*^
z0~GvB5C;2GkQCE{nS@1`D)feE%A<c5bAUb|ost#-PX|(2p#fl4o7Ghu-gsoh_d}!d
zeD@0&pds)FUwAtXhuhExDfbI#98m7@U@r7%C^zVYSZFfT8>m-FyL4B4i8bQvxo`04
z+jrGT9`-{#suL6O0HX$;Ge|l>mIh7|nrm#C4xX2RRIo`%`%(y5IldYis4vLsVFU7U
z(y+Euyf>KQS8lisP6uCICM_;cwD{cB`@62St=!-ZRiC@qp#b*bQuRuy%JJI3p;7^3
zz}pty3r+B(1Iea|wZt#@H9#~Pb`zpn!y+f7B9${-Ii~E%nZm8lKNt!XC{Mk~^xs4G
z+EoJ;z!&*K7o62za4<Qn8mExKURXA|?>*Sfg8%BS*3M>3cO@J>@Xc-uTvq#%P-!ZA
zOrS@e-H&V%3`4(#$4M^fK-{=<Hbm#3?mJx4mEJ(t^#)YvW%Nb?M2s9vUMyXUfWi_J
z`~sXI;V4g)!a49-G0#gZTHyRKBqV37T*oEWH?lu?r_4`v`aU+M!ELhAwLASn4ziy1
z9V4qmf4Z~%>?|M7c(;X+t!{+~?P!XOpt3f<w%vF4@C&y4?kFf8#j|7_PP!|$q7PD?
zCU=cqFL;7TV39s{<T7CI)~-3P&F`hjk@h;aQ~af8G8KNoU%Dq#vLbMcdBGLy$vwgY
z9ZiM@%qIB@E4~XM?)t&)ML(T?m>h0=cGtRaXV}044v^^8JRsvS?I-%!PR@jpznN!b
znLr)scBn=<jaq^+;aJ0vJBS|D*NT&iWL01e9v#&PagqaU^|9=K5w&`oUkZ-(;I!$F
z5YF{WuJ^;Ke(89g!xqVD7sPJqzD$-J>=!LW-Ss@QQXg&;IY`}k-7A1g+gwXDJ&7(8
zt6GrP>em8IT8e;QS|EY3Z}!Gwwn^wAnKYTsv(WQoTh}nqLpo@+xgH7}GPDHSM8Wn+
zQ1<vHc`CJ)KY^?bbetq02ZBGM7=lX`gcWSrttJUF70ANEX5dcHRsBK0@1&`hN=D)y
zi=0q=X)OLXD&bYERCnE~wE=xC;CRbtH*rZqDpz0q_8nk{>V~=~T<up;F|HRv#tAk0
zI0#KK4df_Hk9lxNQd7OJ2{jdL5|YjOWlR0w5X@q!80RVULXS;<fDR-S@lU&tPo%@G
zj<X>7D?W6X{B+{U#)lU$<hso+jI>$9w92nKHVG5@9E#SSD%~Z$dY#fMr3QQTP@W1l
zh)jIz7R=um6a6_~p!mn{V!|}=)8d?3W{p4yrRuP?8K*kZdw?@HpN9(Uk05!$PWgp!
z9s!d}v}WaM=+?@ezPmC|cPcrStx*5yK*z4Sv@pcY8>Fa9&WF>qMr8fnI8_E9jp~)x
z@Qz7Jf8@}0FF9D0{Hz_VoC<t?@kzQl1bXKWn29FIRp#%RTv^|JKinZE+L`SlsBpst
zto0er#NcGu(c$Afr?iu|l+-33$}|OGyV2J;UjCyGsjT<cI1wuD2k1Mb_W;v(7xAZ+
zKOI^T!X97>*L-9Li&HsC0x<q1+t1ku@OeE410MYbUdW(#z_M>`-b!YB(W8+NzU>#y
zK>a0^sWj!tZJXuRL8#vO*umBl)z*ODs<SAqQop_4*f}n2Wx1Sy9l{4@WqB;g6~?ZL
zvOVkK0DNQX`JC|i>I=%fUHZUz<2kNA{R43yhh5Lza^3~!78!y7a@)c^op}D2X63XN
z56Jp^`-A6$m|6tADQrWjS^VIUMdH4JQCfN)l1!ERIEM0JKyky0^KX%y&k}k~mz|m_
z9|G)B^o%ab$;D~(_3Nn8QwsIkMJ6MsS+WAPo%1$wy$Y1~k(`%g1#qCC3NukxodX1`
zzu{ER=bCI1z<J>)cvA$lp5aDpz~G5(?Gjmh39*w^$3eN%^{49Ff%-~ykDwkNcbvRp
z;nhn7oySstyiu<SNiuOPg{F`{toft&4Z&uX$pFjXKPSBkb~gq)g=W`dRCTV}0g2d(
z{Sqbk_iF%%SDiaL(1G3QuRnI$kngGcH?M2QR%Q1PMaL@S#UwB;juK&|{9z4dNC#X1
z7cKr^vbfQcoNNGhZ=in5sV1{2tN}=dG|Cd(huOTY`TqkP>Vlc@(PnE%=h#g6x2b1V
zy$%f=&{ZsQo1m*FA&7}yQCQUIH~Yhp#CC8vf~bHCqyh<;sz?R5%HI?m12d3<J&fHc
zHlALs?ufeZ|K7<p-8<RlXK>F;JVRZpFtQdzH*-Ouvn$no02QeH<tm_-?ozT{$5xvD
z>QSV24|Xbe-i5tRdBklF#C6Xu5JECzIT(H$H`1m;uVfn7TR%pw`_QOVR~(16<k5@z
zOHUw9U2_~zO6mtJJY>zNFMDpo)e0{-sz!5AY<pfMHbc>Bzm$hD`}@`E0qKnd`8;}~
zZsR$dp7%kTp~TM3Qhun_yF?e`nq9#Zzhp0DwIBmN@fJE13bC$gF^u=lD)3H~y6k51
zPL&l~BGL-f=f4NTps(|eYZ4Co??*I;#q<o~143C36;QJa{XoB9pNA~s9Da*Qz?KZM
zC1;S8W{^LaL9RGXA4PumzZwK&k8On>w@O_b^-N?gH9f!2o>A?-6JX+s)OzV>BF9{H
z?{Azo9!lVr84DoXf40sgD~0Nz-#G5UC|VD90nN;vD1irqYu0Q`P*yRhvUl+=(gfj?
zz%Gc&fEr?`G8KX%e{#2APk{5)EC1!l{zGj#+w}FNkEaqq0NU_&H)C_m9gX@Z#a$>=
z;vs&)b)@OjAwuC@B_(V?V^Tmy{ZC5Ho7DMdV<XbHBCEbkwaKtICWg(ZKVn!ML#uzE
z1=)fBbgl?FV)4p5p&Lcwoeu9(5M1G_Wu$bBQwGn^*N0(eDg?~Cc`$Q*NU!izqDmyh
zXvDS&G~k<3Y<I{Zu6o)L<NIe~(c-}LrvSO9dO1abvKr~zkoGFIIFPejdXIXke*tm0
zB+5lPAl`OAB7%Td+O!pb>qJ`5Yb)TUXj{h1BPnje$;CK?gL{bJV3ucYt*&K0y^Qw0
z@N8zZ(e;qR1%#;4>$cJPnn*62PgS2$o4r;cr%%q&()XKT`qI{g^JyBT)mOu4@vIl}
zxp+RQhl?Jle-4AsMQvTk35(_dIDf>AREmBDn^7q7LNf?DMW%K>sNiBwyj6BvFgQ6|
zFSyUo$X_&;zhR?KBgs>D55x$J3E@eWCO*mIk0wGXAt83bU#H%LT!3SvLLlqk;b%IC
zqRE1B1rw5<+%oJjm-u7$^84`mFN#<BV<1XOSNml+n}^WnMu$+_zf@<qZfhqJZqzn7
zCccc@47Hv=@G*hT9~_8#u`rMUhOd5yM8WSdc1-Q)L_Lc_>XnRocp$6<5ZX@MlAy@$
z!hwORa@PwnquIM>!G<?-Kg1P4H2(Q8_djsNHuiJ}dQv^0$4DslbPyzfg&Pd=zps%S
z<)V*#cfMcL-*?AT|Ami0&_fhc>}an6Pg!N-P=I@Z2jFyKyq}%&|FCu*U{+OE-{;;n
z=WwSnon`|YMg;_u7;#YZ<~7Da)Kmx5Xrc~wjSO}{hNdR!P{hPCh`kIdb_ctnfHfAd
z#aJ+jJz|L_QNQ1R?Q`zE!$9KqJ)e&cbM8L-?7H^qYwf7)qKN1fEf7eSHNhm{?pl>?
z4sEG$UClCEZi%yjutq*rckyX<&o-St$pR%aBA2WYE~lU-P>B>#LEJ_x(z6Rr{swDg
z`Q1_W_}pq{v8{CDhXEd_0L9qb^jn19T;bV_`c>!(YvSVxr^F2R6g;fd`h7rQAnLB>
zN2fO+w-R-N{TN4k@3X8W9oP+1n4fpAe|)s-7#JFp|2n2^);A{5SZpuk$F#SPEjN$x
zw<L?2s4(o`li_7n3kulgfAK|NhJ*J9CIRjEFqmsA>k5LEOI2BWYx3&cYJ8~5Tf~8y
zOb6kajz7eQO`ZhSFVUk48YlTtPFs|JSt-!-G(LI-n}6@zcPPhh74OYZCpmnb4A%Iu
zN*klz2T~f;Mr;JmzJb68<zCg8s66P%f<gfUUR>8A>xvyMuOXeiV2!Df$82tAXA?^K
z^9x3|D8+1EQv$NYhHtS!=*@z^uq0x6hnHCy+l#aBeiDuPtco%d8CI$*vro$f{B|xP
z9VD*Y@fqW6VPS1SE2F^ILJoNrJ`vC$1iY_v9z69nw%I4QMq7Aqc1mY=zfD^1---3{
zy3@R2+(4?*9x!qvaI|6w40O-p1!%ue%1-r}yH72yJL*tQJM60<cc4!=8)t_#2qS1k
zUBa?65KG*q%>sUn*b=^b$q@>4QG_6~YtB#V1?9ki&oNJ=BAcPPvW}JZeA*I{I1M3!
z#fJ(yR`qIu_<)K2XSJ`k#cz=e2qe|c0^u75)XY{tXwge;`UC~H<m})51x%w|v;M{e
zpL>HP(hZv|*N@)zC2BnWFG1Ps2<v0~R`r#S8r^aU5FjRzeHOosvnu-(fa$MV4^dWo
z8O;Z-f%)~N?3Ln5zTU5Rr9Z5<lDG6Huk`!%R`Mad>Xj}?D~Y}F?!-0WwS^Cl2K8sJ
zH9xJz{JRgzE4}8G&R=gOAJpq!Y2JD(`JmpU(hf0PGhIJsY-n9wgLvoMG?6rM&8|d)
zSFlgNtIb#sH-``c7@fOEMvg{yeG0t4EA(E5aP%`5q(1S1o$asU78>^7XNBLO#LxWq
znfc%U@ZYoY^*{IDGxP7i@ZU51H^9|b`dT$2{X>jnVd+eqP1*!dcorS$$FQ5NMvQHP
zJ=>6phIE8lSIU|vi_Y`{*Se$E*uX&Zu*`$-c?Q19aKzzn`0Ax2=to}_pp}+4u^D~Q
zlHn>VfE*Ir9^lzVcYVW?Tn8u|+!cNRhcu@n0Lc_aAn=e)NrTYwxU|3gx#XBwe<kaE
za$8jYV>*Yy9Hm1U_~oZ*QDFe?jX(pAD!=}bpL9q(`}I>7Q<elVg~{lZy;I(`HuJE&
zHIo~OqgFQVFXO0PSKhfM+QI(D!uNym+JV;iaCVg+c90A$iQrI%6KS3iY3y3Nq)8!P
z-Rkr#`6lfQTefyP^u_%C6Vt<DJq~*skiw_=^Y@Me({BSXg_qrsf*-ASy;6YSq=mFn
zp{4h{QUL4qR(jtn1z2BKCGYM7uM`fzx+*zN_|PkbQ?XVhM|oc9?_Mc6D(jdX3?RV0
z=r_TS-cQWC1PeGMp5<pj3k4t!urq<`viQmZ_<xXA{2FT*UxbPq+Ie2_vO>iL={adi
z>&XXypv~<o$XV#;0T2&ygC+5UoQO^Bsw0!ijXDPqmlx}G>>BK~!}Y=kMd<?CkmF4W
zx^mR{*t~E#QMiJ3dNjcy@auaL2XegLqJ3bt`xH&~i*#t`7EgAtecC{P*aDidJE!;|
zhw4BQ>2R3>s>JAv#R!^6{AKkv9OS=+n7)S8*^pJyZ2Q}n;F~gZlX5Uhu|r9m+d)Rw
zny3N~)Txv&NXVE~bfV<fi{+hubkDXBU)k698d$IF(28?JA@q_N1G5U7H3QY<E2pha
zKliVH3#wla>p;BDXW^(vB{W2oOUaI?3L;w(ntJUtsVW-m3o+95c<l-tDr`o-Wm*o*
zqb2Zi=efTeFHr7&QWpsP?~W3pt>bqSbxMujk|6o$?{$u=!zvOFC!GLjML~k)c<z>p
z|Jyx^Tu^0R_)hqm?eF{ldtYG4RA}q3ENc+}bV`4Isf>0}_2{T}yJ*l3(FTOYj*hB!
z5=10E?6fHx4B?}jdekt$(Jt=O@P|}LG(hB>3J)_Rp!fv-a=08*H?#};HsX8(B3n%S
zNgmrZc~LR``z9r!q5mIW$@}APt%`F6(|wMf0fsh^OjuiCZmfoRk|`0+-txkPtALJr
z;a|Kk;UXwpL%XqEU7KqH#@%S@k+xEE1jD<eU5+EaQ%3%AR!zUHRPiISWJR_gMgVcZ
z5GD6s6>XY^0D;f%IZ;0uywR%!)j+BRus-eDk-O_5I>%z(TYjWI+7sBjnIdF5Xa0~X
zLg??7u0KNj7Fnx8N2*3=PeYll6UTvBbR-jbte$_4MYIgZWuDHEtTV10ab4n45RbqI
zJGMq&M(?t$TYPj<JVxC9$|%#2>uQR&)SPUrMDE}djZMX;KTIz`8E(mmZRycLb}e{)
z>b(c_-3xoKKz_0J`n#hydEA=x)2DiT%G##n$92HX!<sQ^T}3-uRJFn4uRMB9vJYOT
zi)q|M4ZwEk(TppF+t%jhRuvY5V6B$UE**mE0qMP2jK;3s)&{otNPHAVdo)(-YN=LN
z1m`km%Q@Oh>)Tw1jI}|GI?dFgc|)m;%0e4Ml|w1OXKPXL*$R~&W^W`xV(GK{Ph@yG
z{G?o&49oMar=p=_qm6fGzvUVrY%#`B(yG0gDQ@H1ON94RHC&+uoY*_I3(h;acpgNc
zAsV2s$N1T%6<1bWxfkPeT>zg9vKK~R9Bm4^u50#cOWJvP1aT?L`T}%&s4sOTUj=19
z2tYnZ(_%ES{oA7$huCzY8bO%o5cj5P7@j0ZdD{E%Vr$z@pAdWFpXj&FlW3PFvLcW#
z_2Y4=;3#61<3(a|fLtN2VL0Y)s%4ZTs^FU;p@xz#KwmphCt(bQtOGWF>@LkXVX_rJ
zALJ8X>Jw+u8$jMh1ZDBEy+mfK`AyAsDd%h%ix6Vi-W<V+!bNwug3ytAk8RB48iT4-
zr{g%8V5<pu<D;K8@{KWdtsk3t*LGMSH<o)WKPDpRf`xu2&mPuNSuTk9+@ww5NTvwX
zHH~%+gm`1du)qU55i{`Qa$y4_p?&^S|B!WzHry-P>Y`}F!=3M&!KWMWsn(lC)UxbZ
zQp%{F^{E0%XmCN+3I@Q@7R4K0a74WdZ&fx$JCBYk_u%E|XlDxWGwBV0iO9`i;_e43
zyQDiC&5>Dh7;VFizeD3#Zv}m{coG&gK4KzYjmY$4DL}TB_D&cvQ|%D!U(P^<<#r%E
zMq9G0wpzNKpq%C7>UJk*%t1jKz?P)m;0#m(_-D+WEfOz6$?S=X9&1SZkD>1oQ!?ns
zTC}iqeSfS$o!m4a+MPGHbF}+)`d3Tc7VT~;dod6SkJn0oUo-Kb)_7RD6G8#@N-v1O
zaAIVe!o=?w+vHpT&8}gEM8_+HAuo4AJw#~we3%gEdVfTd?-DAz2fK1OK5&FVG&e=t
z+510*7u%#!a+3XFTaFkC2;mEk(Fq;EyHb5P<8t`wZX4^1ID>pNakINm15{wCavLWQ
z9MTMYDvXy#Z=5nniVeJFsqz%7Qf`X@j||VMMPzF!-sVIKygDBAhJqi>rXAzZ#RrVM
z)Lo|x*@!2hrgD_THi;NhkNI2*zLY;oII->$;1F+5=iESx55b9?RT}^U<jp#NywWKQ
zfZ>!5#j(_+L?$GrDj^6j0Hkz$?6F*1yR1<)cJqmY)PA`=;_cU1*NLft=3znt5ecOx
zaZ#*J{#!>-6qG5nnQK|sp!f8_!?2x#>U*tm5@}k+`V-V?$Aw6ds!W{+PNw5S8&(qI
z)l0Y@K-vZoe3WryQ3Sz@29(G)+<78i>G+|+-Id5R=5HJqJf3sc1V{3HqMTwRqs{h;
zGCz!Rd(q4a9~=M%^Oyst%|Bl2%?iN4|E)5E>rlTopv!)R1BGa`4k+1SHfhqojsV7h
zUuvRql+elu<B*AOM(T?vD`VhV<T23@)$YivIW&?{;L<s=x0722qB7cHgM+4TN4qv;
z7UEJOfkgHX&<a%7Ura5$D6=nlk+I>8xlYdoV?XTxL1W|JQ#}!bQcGu2h3oVTunPzw
zuCce>d_)L);#yi44Ire>iT03YYLNjTvdu904zL4YsF>MiIx}i$p5r0;OUSNvzN@?6
zWjv|2d)q{_JfC6p4_aIlYH+#z_l<Jw>`uzmAzn^6WpGne-x3X$n^X{TM#rO^?vQJx
zzgBmDfhzK#?EviUL5IN|pY_@jOgoeXEkh1O>tP=rjzj&AsPTfdq=-&u@H~x27&A;_
z6*dbAu5gkrNT%}znBeJc!a6hO8<5<y@jZ^)<Z%+_JVTtAHx~kTpn3Qg94@^31AVGf
z9cqS@7TI_SjC{Sl-m16AGzF<oqDo}vRJ6h3+IOL>c-l8O&{X4Ebv>OZQwfM(0(x*z
zbniqfO`}6*J8hNHFD!Wygs`v*oeL2*3!>~!gy;pAS~jk0N*80v*sCbo84JrP0?dnr
zK=a@XYJG@(*bNlRKJ1n0unT_2e1c;U0Uic=1#2|oeX|?f0Zrg};Or%g5TF+HKZ}S^
ztIUvEE5@Ewo@vD;h$AMiG)}C1bcvGbJ(aT2oa~i^Z7Y=1-%;&X?uEaz`_SjhGqwfi
zrK_^|Fh?^%8^1vmXEwEjaRo#KBg7>A6lqgj*r?5TAtw<hK<XzBenpisMvS#oP&l^Z
z?(RWh`;mkMR96%eMn@pkdW3bBtv^0AwHW)u@wSJVUA=N|m~qQjye1|_k;wunV^NU+
ztr?hta{M-jM!lyq<Vp1rBt?5YMC$Z$BFA|Nfr9-U2vKKe_90%4fVJ`@PQL|b&Ie8-
z9fkZ{<BtRA$%l^yIII;qUX$3ahj!GC_t2~Mv2z9p1|Qk6F(_9b{Gn*Mbba;%8ce-w
zX9Lt?IV^rTC>1q0wR_XL+pV=rz1>^Vc306Zxw4=YHA?v);{fDnjP$>9q7sQ3$0Y<<
zlpXcKPBcZt!Qv^ikvPr)v%v~Y{z?>^L|an6Ye{QGoyYj{l*H%P!OrG(#r2*y(#b%A
z>g^1KE1+FQM3FN_eFpM7?X>Y6wD}P$ECyf@T74uTwsvBh|LyXBo8e53>++$vt_(ld
zQj)q5t?T;jwjISy73)LU4EG<P*cSg#xD@;_8wh=J$4;qM?dBh5>fDQfilc=)t`EAP
zO=1#V@DVPp__+HiU@$Xw)B@q99@Ru;LE~E7!^24rrFQp@!DhSkhwh^gq+9SQ-OE-8
z{C$fB@FzNr>D4vB^crn-NwmpwcOo{NUl7iK-pDG264Ko-iC1NEYwE)hC(PZ!X`S8=
zuo7~}==ly2*1lx8Y{DV({nBv-7sKy?K^b0`$vIIB6fv9RB5|WdBd)`#0XK6Hlnod2
zE*gSqt|d%Gkn2Y?S4;3&cH3GBE420IY3xoNSggU`cRf<V;I#M4tnP{ijF-d$Xa%$|
zu7I}<+nY8lf|v5F6K!t73!WJy9AfZ*piKbQY=EPb3Mu~ad2ua~FpjKD+u-xkAmA-+
zi?*_VXWKwm?CcEO-_)1j7;Ni2xG*h#8iyz9_yVdGdhTOO$v+39o2uI$b7q}y(}MZ%
zd#^dK;>2TvlcI_rGPiN`g7EEez_3Fd5wxHgN9#<qlNL@{QaC@Y2vc8IwMUyM_yVaA
zT2g2K2D5Qw5Idqs`j@%Ub^#&TRNjl(=W~k}dg>G>8+-YLn8jD%%LJ$LA!a&OOKuMK
z)o}!?`KPReWK+AWG6OHba={dntHKTgcnyI@pz}iFi{-@TDj?G0Cw*6B`_=KL#nLX?
zV-c?BM2#0dX^p<?=hc3Z;jV4>!qC6X(Ki00DcUI%hTkpvk&}}IUXz?j*q&TRvN85m
zrUQG2V;~`S+<3Y`H<(zNzXHpG_l>jtUy;>GEGcih%LN+aZi;^VyKhb%)JTj@>GH%6
z$)}z&heCi_3Q(i^nSt~gK;+EiuUPgV&^2_B1j7f4I#xR`Tck~c$l{ljLYB2qD}+nf
z?1>$SAxfRM&l^eVyytM{r?;$ome*>hhV%Jh=_zpcZK)JI7zTyd0+C9Viakv6M-~sD
z(X;_JW}&1oA}I(05L38^0r^y-%05a&$8o}C5HoQ&s4IuX3eyulT7r)=-89&rgNGUW
z4Y%F#Dqf$4q4tf1>NlR?N4Lx_k;9pjC41Zf#Lr^E;m^V9rh$mUETsT9^&WF)KN&&C
zN*$wl;7!RN^lb_eh@bb#N$smFdU)5Vbv<eRLIz&h&H)g;n2K5ky~)Ppg7Lo|gOuH@
z*0qghlRB9KAaL`7DQm<72;V_~;4$UbE#^nQgS&i>I?4)@dJalo;GTmm^6_u56?xY?
z^~Hi~iR@;r1dZR9IQ6a1b5QldFrK6xI8F>!6siBWiaZBj>eflR+?OStJpNxi2iNMv
zU1{$M9XHtX`KE;{)26Rh(*)_j$kny_>WzVMcd1ne3H$>)hvtVW{@A8a;%Yq}N9G}r
zM~%49r;cS!da^aa`A^K-P1WthoKyYTW5usRqo?v`_Ijw3$lfU}PP+v_>ix><3=Ndo
z%g2f+6k9rZi-G9IDcRG4kpw*nuE+O8S!MC;{xH^eTe;n45YMG;3>iW2zen8$gV+cx
zSuD4EQxu5_>d0fuKVm=_xBi{zkBjuLzd}J!C}EQP$i%<)e}&XwAQ|A374k1pha_j}
zh&GZxZ_3q$tbqOEot@K{MVu4d5TY#|*}cdfL7EA_1m^nLpV4qbc9uIHt{TS~S5i5F
z;c!=S;@#ITp7MXuSmuI3WR|?XQgqshexE3w7iG4N;?1K{utxC25mqc7v@9=7h<+Mu
z^{;)<RPmSzyAU3dQz0ia&L;AP9lx4g>^n?a#H_TGylrT4I+U@B)#%EtRXK`?l;=r1
zPP{sGekJ=+y{$PoZC|9A@^i_ISs|h$ElL{l91J_o5&LqCcLAH#*;M<0B(bM-^+9J$
z8x<ixW4tUXn<LD9Scj8hcIymMH=^BB9<7ZqhmkyBqe-Yj8sLq?TEN;cu2TE+v0`N#
zY$4HRlI-ilX#F@)9B?D65=2aZnEp}CR9fJLwWMZn%cXX72Qq@y>0}WQqr$i~sLe^^
zH7v<d#{oLN!+{uaHo>_Ec$e>{T^^J!lr|!=#dJwnX-InkU<3$65=EsuE>W4W6eqW7
zPzR>p(*GtJ)USL{n`ltK(x5i+L1jq8P_|o?*}m|7D^3IHaLKrvz&ayquw-ORm94Y6
zjE4pOtXCVdk_bWWW3gdg^Akrq$OFQTzpc><Z)$h?aR@}}QE(97m&Ujl{XkG~$}(5}
z7%C%?0L9)rXG6$+Jk!~;%GKZG(JI;swQa-VAB8t))HfoP1O1fCzit|Wkto2Gq$qB*
zm&v*aBfn6|ChI**WEsIK_PT<f%51?&EzTRfO2+fl)P1BRIMk!!dCvD?D^aN2-Mr{N
zSM7_-60ef#VyNodJvCtH27&<9AB)Rw_qK~*BL_$lTbz8g+-rY!wAU(vM*&A~TL@cP
zg64J$ddQ&<2(DOQnir3DjYMy3e;VGc-pZP^mHpIO(&LS_Az1dtBRgau<rJ-|CzG%o
zE@j0}G*IEq3z+UiZn1nXNhUnjPbgn))QYaR3ugjpbFcwa!`NnRg_wP@`K62DO>t4A
z=ADy?h@hx9qBikop#jIXBqa!r!<o>M7t)&k(xU%FV%53t(Lj9nH!btkPJ-H|`+g0_
zXwV!bLA=_`IuKJ|`KXOKEcn(Tu_Y4@+xJqseR%}oSuK0pJ&;rFh{h+k20^o0Ou)ip
z{F*{n;(5<^@Ru)~maT3~G$44!mDzhFG!udb{sGk#=I%`<DY<=mNZ6~#Fye-ZJdU<m
zQ{ZXC`h;rgdwZYahG8Ys5BmEQ(Ppi5D<4d*_%F8T(OzrTJ@1>>H}ALp^Ss^CN>so4
z5AzP56r)|LV%{5sc}I4~6!K&=)yHmCQqCuAHM6qtpk+9R<rgH$u7qi2D&su@r4ji~
zNU!P+S$20i%8)b4Aw6f;a9HAaf$-$t+y~MZ36mC5OR2qcI+TuQ(yQrN2{PwrSr#P`
zrT54>rU1+O4FZwc(C&x(W2E`td*pwjUqA@T*LGhESOBH^dtW^_IF)Z$UPO#Qq~raN
zu1x7b9<t<t64?Vz2S}*t#|iB$d2jfj!EW{se2$Sl?zI$k-GC9j3WR!OK+R7J3*&X}
zhC7j9b{P!qkls&l10!Y1Q9`aJ>@Gr*5$e&Hpd!-JU=a2a3}sGdp3OTAQR{lxgHn5b
za;raU{dks4e?1IY(R!h&B#}qbI?5TlbuvN@+Dt0ZU4{Ki%2s>$bXVN$*r<)#&G8<D
z0`*v_?T+%?(nmdsn)#<wvmze$@#!6)XTd(~Rfy{no)7Zh7|BlT+r3zzMC;Oh{3YF@
zH!7aevp%IoKBZ^*s?>Pal%CB`DT*%Zu{aZ%O}cyzB17{aLC2S4l*q5+VVG80^D9lr
zV21|rVF4~9JI~?rqtltRerN$cI=#!Eor<U9A6(ptoy74$rskzj_Bfy1>&5L};_bc(
zyhnD4!#mHK+$90t({?v?&6)qQ7;r}YE##lM3`VvZ6N|GVyp9O!-7op61DeE5LL8|v
z$#=suDs71PRA<Y6>09c7S%4vo!YzYcu(Bt9iHb+uSee~6n85%2<D6`cVt6X;>R;<K
zwQj36QsLpQKV3%$_x0%D?xcf<3mx1WI+&5PUzmj(&u<v7tmqkgW(yC!`Z$Ta>Krd3
zowFCWXf6)Bx@tV&=A53GM7<7H`K!mLMm|cMoTtVQkNm}XPuP%j#rlI@Dg3c`gs;;z
zVH%>H`4G{J%o5y5u&K;jfcsCByhe*rNUQ;}%K!e3T5RzsZOG>k{gQrlhNDq3TskIE
zb~?_7+^18^%-%kLk9`2xd_48FpQ<it0<0p?cyt1jgmpmAgWVD!LtU027`XXr=x1VC
z>O+S3YQu$I+%*dOdK8lV=J0EdOiCmk(St0i*@S{KuOrDyM+r1pemq$M7pD1;zC3_x
zK{a2en6Hq{wT(sLqZbFuk`Eq{wxG_=J`e@yxTtPuG{6-f<MLzmX=kj#(aZs4WacA`
zi%euo&$%Ul(}1{8VlICI{N2&wU4M&$2v(5(mZ6xJ^`Q)dQpi*>LdAEqz!>w9zjwGA
z6OT=rkvP(aRc?%i+wYNs``NqI8e9vJ$JU<UaUFB8_;5S#SRKj_sFB&9mUFwiuVsIv
z@m-`EB5S8l^qsIMexTfmq0HuPsuNXe?;qfBj5EuosqiXzQd(wuy)fDTg#sd^HgbdD
zk0H|nix1LqJy);K5<S=Fi3_94zk}qH=XnzF$Re{wyfUgs<*3}FBE1dK_5eV`z7wL&
zTcYh-<OJak6%r&fyCA7vd4R^#kVEzVJy^{$`}2u9`1N)bA>|pRW%a;42F7s4P<|pl
zG!op<E(Z`Q<rW7L1L_<uLHr1oxiU0=UdzF!kNtyGRi*dS{4_e25s=FdCNn-y>+Xc2
zPK+*!q?6cE_a@4xQo6CX8~X8@i&jK6qxgL1WW8ny%zV@<PEu|NJL8F72po2M7Y3}_
z1O3fICkZMk>kSmfKY+O1PTofOz4eG?%5`Y!08CLR(+X|L8jacR?Sco=t|?_1oSf_?
zr$P8PwT|GoPfgKts=jWLuAC`&;S@?hm%OO9t0HJeTRV#MW*2NobOd+4?t1b;LlQ%G
z;}@4SxZ$|GO}GP{Ab*JA*T2%3lw^l14GfN_;_IZS+**IVa))P#DG8E$$v97qQ!+Lb
z{w!&TypPFuq2bZd;BLS73||RSR335*@hABeK7wyaKSH}Mb~}qRABt^|5k7f?y<oa8
z*g}ur)Y59jtL@d2paZz<)aGObDM?rG<&%q6@N!z=1Wp3_^q;GSKm83wZuOEf$LXB#
zg6o39Ly&0a19jI4>a_RTw^xey%`RipHgDubsl9rd+toHlp>JUuFYpojHrCo-8QkWL
z(RYcF*^=>myD8dHriZYRMKw3~nsRBB;7LTd+asP<$Y93TgPE-I-JhoBam6J6i3SL~
z;CTqc@SWiH4Bqe+(t7h|+Nt<d=+S@km7c?wdh(w^C7iV4pW*IyPE<3Nv44x^v@o}b
zJB=#8jLOGG)hyRtQRUAm9>XD)J)-w`au%u}<cipoU||$M7N5<K2~GBGDb~!;a%}G*
zZA!#uZ=;3-qSBx8>-!G7y*r};8i=@|aqgBTizn(IYG5ztFFtX9oZRk3_-`dUsBB`a
z6KXAS`&)Q2W{wYCk<L%L`3mxqlUQ|7;OIcdJCM_#)+~NY-{|8XfE#nG<7Ex*T(AaT
zfq-Ke@j$yCYgV5|XE&ZdVU7FhZNWG>cAwyi<5$nn%1{+0L1$s7RbURBdeWk2!!h?4
z0@PBw5T_v#2lN?VoX9-LR#R+7@WkXg0?cMwZ}z)Fso@Kg0b8F%P$cGSr4lTOUx7qI
zqj%!*Y2Sob(oINm@+K&#x1H&lkC64Tx9of9+Zd4qVlgJDSai3MMBPYNHVsg=*od>E
zYaq~4^w)@xdl<l`?f&IZv@Rz^L(h#iYL13#i^)RM+SiU=<~tYJk;_1>8%Q;yrpcs^
zKE^gsqqC6-JEMxRQFL(J?9L!^AlpD2V^5r(#Ym$pgU+^v(Cn;DXSTdOa|*eI5|>xE
zOI<;^0H(Kmau4#sY8v7jO5&50)e#%4o3=tW2G<k~!r`KvbtQYFfFu#D%c-{}DxVvb
z92|FweeuZ>;x95<p4(65?V+5dXz^C<i0pPfHc3~x*p-thC%0m^)QGP`XR!SA!IwN^
zmytc(E*!j!e#FN(_1_ox#OtSD9FmPe$TxwffYK&BLcnkooD3L66&FCW74BJaWrV7_
zBB)QLQh?8^5?u_+TbbWb>DqGbjH9!&_LV}ZxBX))*}g-J;CZYH>_LNl;s{6QwW)>0
ztq#onmUcEX!UzUEhS5VuzzMAPxB8J>;`0xzgBpOvs{rzP`%;biIn2rBm4%s34eeM$
z&G@^}0Y)CUFu)SEev1|ti$`|_r@pqC#JQK+ITHvkv-gi}bDd`km#g?NiazjTSLzB;
zvyb}|)yhY*yz)c9*H>m=1_(C%xlY?wcHP!Z{KmQXk3WaD*Xw>J<tX18?xd<UsX0uJ
zYu`zUls0*5sVy{@{hR@;?+PxpxV^@GzelmsaOw5V3I5TGkR=La^6O?N&WL<$=wMv>
z6Hnk)H2NV`bK-YNU`Iv((2odOoXYNJ)47m=doD6lb>~IZ|55-K24^;jlL_yB9?y8f
ziRG@^2UbU^DV;ylWoH7n5Yt>Wmq#vPkvy7~$<8QHbmQm*5Ely|%W@_s??<af4&*Iq
z+v}N@9j63iXo21XWNHp!-1BLQ*}OK{Rkev1Ss=`Tgs2~_NpXJ+KuqswhnNrc%|ndt
zaih;UTLp+I8y_`XOu=}ukZuz2k;+9+*d0Gou@@q&#O{0xGnhZ6K@;=z8=DySwaok}
zB9%)`NQL&vQ0>q-H<!)*i8^=aA>E3<nC}yYWQ42{(plhreYzh4?_q8mFi^>%9j7F{
zWp*Rf{6zAum)aZ-%sN^Ig}#UO0YLxs5Or4sx9W>Ym)OPIu+a98Lom>n*jb=P{lGJn
z=f=3J!3TSGVX);siyU{~2}IL$0AZJ_<HzD*x#qTxW@2KtB4pUJesMrKb`4R#N2AhF
zQNP2Y-b<p=9U1Q1f@q9YcH87!a~J1<k#Z0MPS81Hp4=X%VnISVo}y%<vadjGrKEHQ
zEfKGdC9}-_I+;}f7)GTE3F^yUhl&1am{k220K`)}<29o<q&o38c5UBaavW373wM;^
zJ~nbz<z@+(8@0~`7_c}9#!v351=UUm2m7vF!o4OFKrSA=$yW-|O>;B4`y%N^)Z{)&
zqQ;Ceb*V4%!@GjYU65r@GIrN4t)x~H*poWig<whgWQ|=TAFMiCp6?vBfQ!IPxSdah
zDRyDK${?q9Xlux1Q)jC}eU}bdOW`3_>+W4vI^3r7-cR??Y2JIUbKVNrsIxorU59x;
zwF`m=FYwpi6~3-8hbNf>j@<01d>Irz&}~KJvj*+t4EK%7HUu&4szY^%JihU>@Wlyt
z3?4tI$8_#q=X7qnKe_Rci{gAA$-@E)U}b<tAxPoRY`p&xKf_XVU|4R&lsPEAKdghJ
ziy}Q%q7bs@pr875Ot6jLdKbc2a(0Qad!(1PZ0lTS{Atn*tc~y(bJHJT;@w%I2D|4T
zeVAOx_rQbhN|3et?!l`aS0b$WEK!XEz(WuA8W#UGX%6W{?EvAU;}Jz8#rYSpxIZ@v
zj*D+h%At?mHD=o3@!>_4w@ebyg+Y}}i)SP+9kYOn!9@&VXFqDLsoTK!yWPi(0th#X
zWaRILk(-^bktfQ!_aE%Va1Kb7C4Mr({LcyU0#PnLG!U3$d>x}8E!f|?db-1mzKqed
zI=wD(hk=XT40cO^jy|x@I-FtFkU13a@l`xe(sr5qb{;gy{TA@V1PVn00>%QxOG!16
z0=CKgS{bnnwf2`$c%-YGYsmm1ma};fBj$j;*EOXT%08&j&)njE=#bkh(XN1);7K`W
zn+@}&B^QRrXyJ3A0bG$#jRTUuA?01UyJIX;1eiou-5mlNK{&ysn0v9fngpaHTvlxt
zZo!FRvpF>(p$?XA{j^`Pk$RAXmX)uA@Ra^IY@q8clMI-RN9X`(Mu)XZmXv_Fmm>yr
zdq(zPa?|67CG=C>+@ch3Jl8~-k*i~Sd%UxWbEC{Q^7|WI&k0+^0E2t8#>a@|A`-F_
zDWQW8V0Zls{zYTs5gJsiYDU>p*8~f6^Ja3{m#PH4PXHhs#z`e7-O!C)Q`{Zf{<ySP
zYuwmHQZtw=a&%VM;<3!8KB!baIf}8n4yQHOE<6WSKO1v=fO5aYRKv36BZJ>^!7Ui$
zhXeeA!nHX8!@c<cP*j>7R-@OkU3@PwHv!KH<CYOa50ee0rAcq#@}z-0wv}1|UwTcH
zo*z!CT~}N!QQ199SG0kl;od1NZ4Se4P!!wlVCr;b!qSML3Ra*HDgd+pWY-jpIBPdA
z?bXrjUNG6!zU-a;uj}S2?3r)8T*!l>qYV0*9?Mm3f68!$8@f3W?2Nq))d9}<y`L8S
z^M2n9tnpT@v=@rO`YM67KpJqipVO9-e=`mtNZSfZjY)2DSm|2|TO}9Kj6JTcVz?_Z
z5|-8!0WU&H&}^*Z+vM_|+a7WsK0a?}MisVn-Rp!$niko?$_M5`*c~HDvljs5cJ?j-
z5N@jyuX4YJRc3!2+jgC==H(-0K+@@QfLT!t34Fj--tvHZ?3LORG#2#zk2xT`k?G{j
zNQwiQV3~JhQmeZRIW<2|*8Cfyl=ZB=!^&DHMf;%g|A11q(6I6-W&b=%xz|xjf1#Aa
z)<!ApN<b;CdD<!L%Pq|*>5>prtb*6iF?rhMZwo&qad?Q|+{BhpbdyK0JKcD<lkQ?_
z_Bh+lHeiUnyFksJd`Q#`+tV&IsnuSqCudL!9k2B^`8hLu8ziAfToRFTcTEx2$k^&f
z$Y-mPi|?A!9F96g+Qu`ZO`%^dA<n*wAr-=7^8z7(-*6q&DYc94@&vhF64<tY>gKt+
z>GeC9uhVS+_F@trxT<OO9aGwp*p?2;u%RKrc?eKS>*U|XL68}dC{aj&ogx?UN~eKk
z_B+O`S)dzyq*uZl@vBAw|B9X#&4AO*>_sC#XP9-?!=X}eZqpv_)gs<(8?VzNlcLu-
zgF5P|qN8{#xDJF=^<i)F+deOW{~5krS;9oM7KUL=mYh-oMEp*dV@1g8Y;|$s#xR=;
zh&17y+1pDBu<!>T0GBYwzwADOBi8PJu4}8r#|4got^?RD?b+4sX;&+Xy1LW5DmHo2
zMbT-<&vY)7NR#i;(;Yo~dN}Rr?xLO^S!YiLTUSv}wce91hh!{Tz%Zw4d-n89+S3h1
zJw2E7lp2TCT!r8~Xec<%seLy9t`i+z-{1;_<Ty*})-lwray49N<d1@&liFsA>$I5(
zUR;&%{+|XWv&iTA(>r=Hng7A(niL%Lxn4H2$mhCE$4US-OGX-KV4m<h{C>6+_|3+j
zxO-M4+V)rimY#HkFCis&cuwm|`)rxxeUw8pDALiV4HUSPs}HZ)B)9B*Bs!<`Bb{Lh
zH(Z<$v@&Ni8q_p0NJ#TaWJfmsiL;G_glh40K&5{Xw$*Q`UiB9t05lJ+tyL$}T}dmq
z@9=(_C;F3z6w$?^2XVZo=hju{?&(eIUOXr7&n*$mar&%gg_p}zWPZho9_T^-;>PDv
z&l?NnKc~5?r-}!4FP4c(#mxFRR3PeCm$M04vnc+{@ebk@$}xp$WKL9<I?pH(?$8A?
zTrA+O@*uAS9cte`3i8}q`}Vs>*f+jBy2Cej`Z_oFi=|Y8_p1n%K3_*m<u*etZKzAA
z=(SQ=IJDMqHQYLn0|`H7I79^3wkHvbKaQ#=x~V>kP1UUc&e`MQD(B!>PId8t9EQ<R
z{mws9R3iC1lpSU^<=O4TRba<`;&yj5uD4s3_tLJPNO6NLr8G}cB0;886;U8a#I4H#
zrGPZCnlsSS6LjX?_s$L$^RmS0$`gf))A?`%yLknqt87w9WV{(B+QQ0Fm`R)_R38P{
zEh~EANJ&3^T+#VW#;Ac+*%FP5CMS0JW-MRFI+xk4$&MW#He=N~D_x~Z?8CnjWkG%)
z_F`Nwc2gJ%bS26Vf+O_-R9RjG`5ULLT%wO?q=FR*j1Ev3Zn@&yv^YD%$NcD>J+On_
z{%D|oc3enUysBp%aNJeY(va&Db&YS3$SisWqPKECiZUbO7Xwt~-!bs@zC-V_-gm{{
z*>5vxm*sJGB;37>=T%JGj*+2aPH_Ql-?5D#HdC0x1vn&a9;bn|kQ0G9S0yG{h1pfg
zmCIFY_|YkVMV*4yoZH8zMNb@OvUz5YCkrTf@7I?Fl$K}#vw2p*c;01j0;P0=#P3uV
zfNXtmA9*nx06t^9R|&4NcJGud{JT9FWl;bpaSh#a7d!Ez!Pkjr2*+bK;)U<)>!Cd_
zE-2$PDtmKTFVAi9l-l*#Cn0>iMNm?1V*&Mtr>yZL|J?`Z4VLR>cFdp+)OTrCZFZmv
zE!WAlkxILv@F`{oPPbp7aU}0NDrVuewP#9j>zSFh04FK-If-We+70Sywp=DoEo%tj
zmzx!OrKn0|WVkOy!bp*T8TK$3JVP7<i7ryOw*dF|3st04F~$`owue9rKEkfzcgYmX
z^jh$q`*9d*GM4cOie2NpDRFZHr2t>LWsVrrRMGDj$OPtOadE?8t5<|h&2GP~z}r3U
zUF}bhv+FaUfX>BE@>K~}NDj>R&zh(+sWM$NI0pBe<JUynu9j(XYXwGBHz}b06xaIP
z^1n3cam0QYgzIzP=kph&&WP<VM+F_#T*3x&xP~Cj(RdFn2GXYQd$AV7Q&otOz@4T6
z8)`^#f|bO%cPSaxq3eWulUC}@z2r4kX2-NNZ%gPWm(&x+i$q-lT!g{m-XKFIwryyw
zCM=S>%p<mJVM3ot#g-6aj{0_-&BB#pd@OiyMrVeUZSdaKF12^PI}_t$n8c9@PuP37
zs4z5X%2SQpd~xprX<!YVQz>?YjdU|E1|fWlWUI$SG8j`vz0E`0185az0g$pKwwL6H
zgz`yzPVZGwSxC~MZ?UkV=~3b-yJ8BgRJHw;Q<yXEhln;KjvgxrTvN7hKev@!=m8$+
z#ss!+L1P&ZU;Y7*)`xN)TOd>3pU@bT+U4lba`qP-MmN*-k2xzPHlo2!BvT3RIIHaP
zD(*c`T#w|iqy?%RALY(vy4cZ}xj-y98THc&&2yd$T^Bi4-FWafpZV{OPG(++ZVizl
ze?r-n#nSE!yw-ZY_rX2|+v}a_l1WYDmMN`RWN!n9`Ys&&Cz6jAIo9eDVh*;d$R0**
zATK@lveUi=gR(|i6~p|>7(9t^?&_cULqk+`2M>7pFjHK-YlEDb!5SavLw57jel{aT
zH?R6AboHW?(qxkq8(xoiNi*cSb7X{<7ryy=A?^~6NH4_o4aS>X+l@ClU+`-netGTD
zK&~wkOr-Zb%;6YjYymS1UYogEd02yuU)TI#1ni1Fnzj1|1aJ<CE#SsK_%-@W4Q)GX
zcQ@3d0l6NjE^c&KEkyXFsV*iZTs5(Wu|4=3*`5aAC<qkFT-JnO3!n9|b6<ssn1v3?
zD8!YQN7r)K9?xUA)J@5S`YHNc0@3sEdVty0k{<dx`%<xA)K6LONt`FNMdb=fP~Zr(
zP+)ptlKEk!wVik-QVWMnXY@WN)H~=?rD5a1&g>UVq{{pu5FnKX|H1;J1Lt8dsine1
zR2lC|HMU{LN{%Gyc39qNmCN9Tza$rgT@dYvfvX*d0k*GVId50`2o2X9;SdJbPuhVK
z!&=Dk!%Fcn^!~^^XYZk?PS6Uy<p!&>cDTj!CbANXqAEo)!y;pQEc-c+_afNy1wuoc
zlo^-gGTCk931H7n4pGv#7T~<hR`kUl&C7qXF_JR|#Jl+hfr)BuxUa<+9BDmxnb*wr
zyYxyrMXpI;pz}^ra)!6oGs5}ZMhKP?R=U@Y;>scWWIf-^>h?`xR$O9$ec%~f!*vp>
zTcf_ufIYEOhJg0XNSp~^X@ub(F*wJ%Xfw`6ZrbWbITG%Y?D&je1>kylLFNj0whiri
zIvt7TnLTO&f%WH}Y5Id3(1F|27e+1#HP%iTLD62g*^@k2_AaiVWIq8`lH)s9vWZ-V
zO6_mGTG_2Xh#Z4V6_ka`5%|wjW68q~uQc$OFd}|d$rJ>`)zib}W#hnw8T%qQB0)xk
z$^@gTBKMO9JBMvZP*=5mgg0lY3w4Bki8Pc$8qQ;Q;bJ0Ah9|vGvlkxWnD#<%fu_14
zO#Gc8m&%tVwFs!n5#>U>yOQ3Z37BjYyDd<z!aev${K8zvuR1NB9&4g1lmLS9JX&IP
z`b7hON>NA<uftuzd9ObN2${}Vl%I4>)c>-m=5{J6F)G=BxEFh>T9G$(b<}^)sAj*Y
z?&4@46}}bnRwx-1-RR?hMnnFhI`SS=YYjpK=qgTWGJ{(Da2YG;bU{?Zy;Xcw$HyCh
zIOaqIeGV8!*`5w`Lo^{QbCMY097wH!f*|~B@fD6pzQ8o(ib%X7W|Rj#<iA?w8#L4&
z<fibx_E4{ox$j@xiyKh!ta7=%YZdp*C=h%rlSrra+>+d5srPD+Emp!7?XH~ggrX{6
zi27XYV|DVHvPbw==t|l06Y_WKa@tpN+6fcJ)}*uv7ZvuCch@o;VFFI~O~jzXBy~%G
zs1#)-cI%W5z4<uu>uh}#p3<$v4qT=e<hW0-@}<d56!>Dd({KQzkCP4<*=mWDxP~cv
z*<-Elv(F`ISXt`bDpHS$urA6@B;O%u?OULp7t*V7;T5Sy^0sF0u-o0igGiUbX?;LG
znD{4k=u&u{uyT9nnBedG6zC@m#%@<6kZ$1>KKMOtg5LfHr^CSe>)K5(|C(u2K9!xJ
z{FqJ|bZ*Hzw=%ZJ3|1XOCZ(J`e#)`xw$t$F)DM(03?R1i@MZazZV4vJ!@u_9TZlRp
zMA$o=9B=AsZ)%mv-Rj!V)T(?_x=@)B?LpQ{M#P<V=}>inG%s)=($#J@UArSEt)f&z
zZwG!9EV4kjo$837MOO|(rq^D;HeW#615qSvy1pU=uw#4-pQLS)R|UEW2mU8*ZMWV4
zGw$St2r>yA<@9z*;fmwWdSz@N>iHItLvUV=#>M2|3(a0C=@f;#`&1V8>}@-}M&8Tg
ze5wa2wsaPcfkewuSg>8?OuznV^nX$*K!Lb2YtR$7l?KkuFLOehH)GePU@1M1U^vw{
zcC~82BY`pk+IH`k)nZ_UgPbeZycE_!7AS7JadGhP_W?vOrTQix?&4RyX6#(rmOlxL
zv7g+av>fw%NESaKEYTS5ZJETgV>rf9$CZ*k=1K0!DX3;q_gk%F@kvxNik+7d4yz)E
zh&MkO<Ok-4a6)}Z7wzgJ%Byq})z(XLvf+#B&ZvCPqUy8PQJrcZP@RoLng=T+lRbAG
zRhiuLs;b*Y(X{JAY#+td>!?e!?}TQV!H`@c*C*=l{i0HB^D<vb>9PLP-m+4JM;Gm>
zHp%;azOW%-hi_pQ^oBH*_e~L(QSkS<`Tkz+@Iz}vPt%&1$*}+0bFu%KUrIV2gkk7^
za9RUd;8^PWV|@xcB?q83O`}fR%`6We)MHm(OUAYKww$kM%pR-v*Y(t1=(TZ&n4{C!
zq5L3q_R`vwK|Cz*`zv~__MxsLDrjD@R>IRAyt`%4Z=BUr4Y4LwL!4WrhWNzQ5O{Xl
zoN--2F5WT_IxV5#7H^)^^+(!|Vw0%N>e2t_N&o-8H5@2kr!bMP)BdLx^*{A7X<XF*
zjHLfB=sy?-di1X?D{_*mw10xNIkiD6<MW>}B+UQAp8fxh{H83l*(bLa)G+7f`~SQ-
z%zq}nyJ}GKNHYIa!|DAOELB9)_UM03(*GMh`~O4Q|6hyxzbN1TyGj3Z^Zoaje~<Nl
ztw;Y0lK!9X+5c5(|1TBwe@(vsSCjsgxjA6=_4RKndbRrk1)UXl-hf^G?rBc_rz~8^
ztOb%qC8Ogn_h*g0pWS(nr>b23V6Wz&7^$+`5;rgDyUX{F`faVli!{%1(k8%(fbhVq
zATihjGJzoVTVJ>*I|4%Pw?qmxFU2(s(fRSvTEOH|9|kJ0pZJ-T5;;=3urS(~KnnU0
zkBFJ;Hw;rIuZ`ia`vfNOi{B`qa$|nC2L6zOL?w1+pNyyGqrovgLA!$f`!Rqk9q!#5
zn9EV57C>yjoK$(hDI7RyLCBd1cN@k<x(U-Yw_<!@jy%H-9KAG5f7EqTd{nGr(s+oI
zRlHX=zS6Z9Ej%5~O(FC%JQ}i-m|!VJ0>zvpAx3UZK?C!?F6i?n5Awf&cTmCH_=M*U
zr9~-k2>DOfX_GeiW1)q!#Qgi{(*@kex3uyGWl$kDgD=9(30Z7P%3nY>01YId*?_xT
zV&^)Pka1OS{eb!H+b1B@2v(%V&3>yE1r;_1ZR`{GOhNo(`#_h&NQFqzwc6`Y8FqDL
zoMij5lR6NK6*u7cbZYStNZg$M9nJt32;CaITg?7U5n<pEb@Z5rkRL2bHcms6I9_F_
z#K6&MauP~g^QBZC7PK@JpU|_o+2-J2;}(>M9_*FSNu`JpgVS2<RJmnQ*+}Ni+5~#a
zbq49-(l*R>4hGY-oa<aX4G?ZXdf4(*Cl>CnU3eoq9<(T2I{@?meSdnI)eD$St94SF
zzLa`ro-f<-1n%+_j<2wAJr17MESGtuXV+QjI#uE@)hr8BfTO-fZXkdhz@uo=l~Oik
zW2iAT+`=9b-b<3#5y%`)C#U-(F{1Q$;>r{%oG6HKbDJ(2=+vC)Q3;u8`6$;OSo((G
zZ7&Qou+gc+A2EuE<X&Dp4d%(%U*JMF-kDu<OMyzf<P#H>>fAR_iD$M70-_E|LM2Az
zC;eLDpg?n%;FvIo(6cw?myks6E}$$EpOp8)nqNE$TGKvd>_hdLxRA1PC%6kAEw_3%
zb}5Y{NMxjsfYpSR9+zqNJFF1fy`JBDmPB3ndJck1(LA?E?Q4nijC|z<L7A~3bru)g
z+QHg7aJX<)E%;XkR5Un&I-^%W;4cB!?@X~$K4dzCj~8h_R5S4)#UItr@i9vBAuD(|
zF-gp_Rl{%+_$z}zIm5bb55g9}o_@dXNx<n=yf~>fivBkR`CzNQ$)hkuBK&ttv>68i
zO<XslwN_*tm_(?;FOKkZTCH@5-X>%HLq@TQ%`kolY^n0)Fu?X_4zvQ&p$IIR)`7kX
zTcZ);I;Xa{@k%7vMm+uPI+Sk!c&3`D0d2%G)wVzG!KBC0(l7mOrCsi7a~i||TnkRv
zLF2WfmLW#=M^{gJe1+OH7o06q5{4Tp-Jvr^#9GreCD)2N6q#6#zuGTd-zfmp{y9n%
zVu&ZZxg?{D_#D~T=MYcXQ%Jz!1&mg|7_ry)GFd+Smraw(L}@1jlJ!*b(vhth3w7yX
zDdK9wfLRLeuI@_Xoc2Q_Xo_6KX-mP1qC-;^5s+IN?;fu)nIo~GmBiVhef(g)T=1`i
znBWrV+<uotf#CM)p^#@L4y~(;-56=IIk?BBey>xLYVQ|UO9(<czK!%)YJbnWJ6`4P
zj!*Y$VO3K+jF7SmKZ2nM=N2DiTVaqvMwtd(LY~XUS4#>}luBL-@ejUASe+ncZkx<X
z){~62`M0DIm@Io(u`6;nf7^H%?zOBzC4uVe*nSazg}`U*a@XY+z|zfH_5w;(OVhy0
zX(!zlfjS#};a=<7;B}b-yX~-B2NL*Wk=C)tWK^(w_X>KR4*`i%jP~T7&L5qD0^-~-
zdrJdMq(<0AbOfc`K0safB+72(uF&>bVdVjjU!)5ez~j6s1VBi~bKJfWx5n*3ko`lk
zbR{r~ZT0<$tLw%0r9RJR`riKuKkxst_j3y)2z&ntU;5rFaAxh@U*y|=ZsD8aQTz6P
z?4QTBusn4(bi6!)i7XImMN2D&c|7WK*z=}nGhEkaLLO0d_|g%K6oQUMbqhM;v~$j~
zxyNvqkFsN>((xNfqjGeqGGcuj6m`Yvpsclw&8*)l^!jeMqz}*nfOVV_8)jD;`c<JE
zOeA<@WG2uz!t(KLUb_V1&h#VVo`>4?r>}{&?pziPuaCCvgc-K4jtQ)R)swC(wxg6<
z95Waf3cJ4?_n`cMv4m@?*6kt(GU1XbI*@3;&Nz&`gB&3Dubs4y7>adPcnAhR=p@FI
zwt9Jbz%6i@ZVseBl_sqcyR27z%ke!UtI?Ud2T!BV_N0k^AjM%+;P@%?eQqi*Q;zsZ
zHHJ7r`u<iO>I$1y-WtS<f0553So;!GIUPkbXooz6C&(Hf*_u*0;%vb0)lq{qR6$ua
zm|Y^3QuZ*dc=GK(OLaHKK<vN@Qzf1~5ada&;g{ITol}%AavPl78KnW~gQJ!PI|jZ0
z)gLHPYUX9%rzRyngxh!4XOFoIAmd?Jh$YVFr|DXBHr1V9olfF#@9CFG74p;zwMnA~
z;B?50X4t;q2O`2#<r7GK<<Z?&5{5e=>c&)7UZ^!F%qDmf*jS^9oO;3uu;hs9iI(4n
zZW{M3qRM}u^hG3YLi@(h%k1l&&`COL_gfOPW0+tq3EpXgYm#ZGzE6}L0OJz)-VNHc
zr0ZQ_+W(Xl4n#HeE%Efm8nw;dJ~&}Wm6-}RVb<e3B@m2FGE-_l>1RQ12W&M~-9C1_
zvj><WV|xRm5Tj#taHc*<*MemkxGt<X+qZ?8@zp2n3YhtgU-BAWMkkUz4g%%?Ehx%O
z(VSV%@zp8_FtMa!TOGo>vW=b55D89PGG(jLqSL9|dJ1|n4cX4m;M1WERWe<5Q$mt>
zP>=5F2$>2>;L=4X`c02=$5Xmzo!fxqw!o50tN!xj_7*L?EUwb8X1A+#cq3_ny^jLh
z2XAj|lJV%Dix2X=KX$_=ft9UtBKvYUd2_<av!@PBT&XH-pOu)4u$;HIxzcn-f70yR
zJOqs5DKam6VsaaK5<KOcwi!uM@(ow^*h59r*LwTeb-=k@)7R`6{_M%HLck4ed3ao*
z*1M`zX=h8S@inB4U46h=AYE`kPz)80NZ%vYx;kHCu@;v+i3}y&PNyMN+95?%mAsnQ
zGkyJIvQ$oswtUm6*`HyNG`f_}gLsR&ktn)fTDc5X(5+5urK}7ImqH>xzu;>#`*Je;
z02tzXZ@S6&^U%0*OWUGjfTooBydc^_S`vYl&fVJ_L#>PESs(wJLj{a(ftO7=F`)AC
z{HRqbiY@HC@<t9SYe5O>yl|QthUwHPCkol`$M9#U-fV!bSV%=G1iwLBE%4#F=zUPn
z(-XvHc?~*3j*K$vmD$56gBa<ZKGJlke*>=#kL$3~D@DMVjAy0i(|a)wmmQccj1tWO
z+ghRh)-Gefk^TN)=N`@eG!V@Ruz*=cww2a==J3C<9%Z(<%z&`qjVOqI4o+*<Men4X
zg|8Ue?&OB2LHVbC;c46UXsgvx>6mEuoYGlLcNDF}Az_|l{4ewTdNPUc)+maWK3I%*
zv7Uis?V^JOwA_YFG42!J#)UxzI4;>k5-^0CBkQVV&Fxas(XwZ+_iN(q9}eSfy;A}f
z2O@?$k?x)rsTMf0NK(K-?6?hD$kP^|t}p8AO3E~+hfWnrt+u;Kslz@|NKWQc`Ia7e
zQDIN`u8s2-_xcM8hGG%#oly(+&yz6KsN#JXczDI#wvWPK(C?66P)}zVcaQ^Q7$g=?
z!wx{>xNUC!B--=f3IRDN@!!7^b`O{^ky7PIt0}Qm%TA>|V3nVFeU?-xb}PLHEc&qn
zGCA|P!aIwOQmaS1Kh%fvMGMDyt_UKhw%`g7yvuL}$o+y+>DIUm!G&dwGjRoIBg80i
z1(^M7EhP&@iM@~C4z2*31NI6?*t99y%CnWa)v-rS39!i~EpWBq+uj!2dx=m`-i-<k
z=0=UAe}d5As)DM4rll^DKCfX~RP`pmhHHWXm%aRTU$W8a7hWZ*JSnQZD=JZZ=<rOd
z;DbQZXd63>`+}4y?8ejD-KhDFLHuoAFtcvOhY{7(({`d1!Vy#uqLWwDNCZ_7Ze{#i
z--?l_1uM6SHrlT-+I**WfYDZSmO@YbxErin-4ur_OJC#-)Ncu&SJ}f18*=06F4=sM
zJA0OOOaS2x>~h*_;YW8W+RsOz%+pHf;Ld#54&}x-&Y2`!28Q@*eh`jDv5r;SM*?SD
zwnPWjWJ&y%07kwdzu#P2IEn5!vq|sM(CoOHq$J)y${r{A4B7|Z;)^ibF|K^4MCe&;
zxmAQ#gG(V(Iks)3MuuWg4jP<6oyb6m#{+rwxHRBra~7vcoL#kOS#E+)gu5F_$cB@#
zz%{J;-29ma@`Z5GLik8__6mcz;c8gKzazV%ZA6OBcO^9g%aJVxa?b#f7VL^61zsU4
zE6;Bf9}1kH++)MRGjDPA6V{G?J22eggb6$ZV_?%4mBWLrN-3*L)c(=s;Uh`SsXrzZ
zF4v5CEMaUf6{v9S%0PSIq!7`1KO9t@-HV=xlOQ%TlHfd74)a<SyO;N@il({P=hn||
zhG#CfCrJh5ZY6eO_;_8A{6zSgit~NPoSl6#Jhnxf3A?^S^8=#qky+MGmWBAoFhblx
zDG0hBt<FeYf~D))Z6Re<_Gijigi8vGAV^BqK)5>RS3d+kgiTh&g-+6ZiG5&C{5`MP
zU(hB?1+II~ZKl%LI`<b!9l&oUx04qw+P@K2EYbnLK&vg;fgYaR%vXfRInlTAl_X1I
zy%LFyts~OL^V0U+Gy1mYp(QIZh(xUC>2%r8Nz;~q$u3cyZXv^=lCe>{(#||smvw#S
zq(~X^fW=Ci>Iji41MN#tA%VFR{`NGDUcdo^g=QU$;G6$jMi)?)_3LoL>UjSFK6x3i
z2M}>L4yFvdk-F#(0{ROdJ*F_B+%Wu$bM_2rg9Jo&0o#WkobPYIq0xdUm-D<aYOIB~
z^LuAH+wka#a3mv$wcwE^cR%Xr{7hpIUx{rLd4M#-D{X|~e?#m8Ezw4XR+J=X_eH}i
zqm7!7380^WOD~@kkqK(>9?_O$*gsrX4g$`@py>?~1;fVXW<hpIu1umNyhL&4<q8go
z<&)%2r494@Vl@cS#7i=nxlZ~A#`gVIoraaoD@94Ks&_Qn0`@%xR1%*8k~&2YJ|Su5
z6M;bRRUM1(fp|9f8X6$`5lhup?p*Chl5m4L)zRqOad?E)97~NwfkyCGi=f}~CPOGB
zKSllVh2l)6shPW{iz-1lVZyE+3T3rdeH9ae?SJx}4Q-3IgzN&9U@ZY{Dpb!^PXG;5
z(dkDxI*waEp9iWI9@_2<&PM}<1kO3s$G#3E@FDLLByc3lVN<DDYF`g*1)}ZiLmVL2
zb^N~!-?574`<dt9PWRf5y%<ptcU^e+VgnBDHnn}l&q&(le$Gu1V6H1bLkSidA@~7^
zQeyoUc$=W1zT+aUP2GGCke2-SYuFQ%1^7@kV%N&(vKmGp;mPJ>JKcew7!)7*nb4?b
zQ;dR1<F0Mo4aZ>pgnFxW(H10+$KHs5Q~8zN1A3%`&|tbk?a~wtn%y34yN4S6_;9Fy
z$no$U`(58wR_TVHwR5}e9ox8oxCJFX8ZJ8${+0);n4bol(d3Iyq3{s$`FAvE607<x
zild|9m}|+5MkeHm`X&f0YIBBv{?#7o=X^cDrhZpxwArFPFz|x%mct5!G=aAZfLIa5
z*^8S31>XE^<c&S3Kg=E<gD1`|(MV~32k?RfTG2>*a*U_J&DmmViW-XeHjo&Sn~H?8
z9l#<|`shN{a4IiFHo-}JcZyQ)NGn_B>H4{*%((s(2gJjo0oPFhrlb{MoDVtzK66c6
z&0*(GfaJj8h-b9lF&bg1;I9wXfj@8uK<rn}-m|+OqN!}B)V{>=tHRp(H}8s?oD(iX
zg>uV%I@R-x@dMFG=Wp%P<}%{NI0x6+8~gZbuHz(J$ot}xu#%dkcHMA43D51rvGc2<
zz<fGz1(xob@EubKgs{|JAyH46U9p{$vlsT(m*G@IZ$+h3`Ph%ITMVz*PK=xclD*`9
zHxfKYRte5}U&sVfNGV`C81@6sPZ$g2S!rz{Se~!o@`;kCJUE<}O^7zxBkD6g+PX37
z19II7g#T>}!#hWYNUaUy4D|=Vk!)}r9g%Ee9Sd3`J@H|UEjbXe>rJSfJ2Fsnq4~>s
ztdBOt)&LR`j0jew&=V;B3zrpJ>d;+b_b(&l5Evxug-Z${t>(MV5<8Q>IdNx62F<IS
zdWBMZAxZeT=v3uxg=9Wk(nUVaWq6}!Kn@|3=GtE{j@gW%!TzoeaKf#}J5oEG90Nbi
zBO8@U0+%~;l4Xl95A}20UxtJ3CA2|0a!m^7gWZ&d<%&^)nDG$OmAk1iCrHA(a%`@*
zYmZYQod&GR{t1fhgDT<Zg|37KjPcj@+8?F0<y_5YR2LV$seN1(E{VKqRI0o{<P2x*
zg5>X$u0nz}-~N9&IWT8Nyzusn6dHE}`A$TmR)P*|+7-~YukP$>PH^H=N4aj`Ms&IG
zF7unw7c7&!3=nid5IIiI*WqT`g78kJ#qi?VqcXUCgI~j41EhG?Wdsrjw?~_O1;3WL
z%mmV`Dj>}=>-t#>i15yBnp<_th244-oymVyo#{q-%ATlmdV~;FSKQ-bjndvC#;V4a
z6gXxveu-MC3SLnS-6&EQIK=Cyn0Rz{sF$tnFB=Hqj<l&0(4f-kM~GR{0-!0aIaGKY
zyvl)+vLjwSjIBpW0HRqEco91${%Jql9LVjZh|$1)G;9{dzlr#_|1@Pc?rr~ePT6J<
zMkMlH;6BC();<GCi7<U$E7361l`QpHVCNG134z;u5|jrGw){r|ga)aHxY_Tz9Ri#B
z)Q?~(xg)`st8<4ShL>>M`g8K?z$K$-V2m{8*0nqR*HaT3z4Uu%iH5pj{qEh};qzNw
zR<cu4=AI4gz#~+IZ6ZzrT74J%XZIzXvz?Z(#GdB9cqUK;6>UB>ko9>jsOy-AY!9x|
z9N8#eLliFzMZytDKv{$>#CTjmFIuF4kJnnPN0Y_6d<aZh&_&V8s{vvc){);D=md!3
z=FYs5=atA8=JHcAwz#ef(I=BhAZ%6m?&|Q}GG4$NkZ!7;u|)Py)KiU`4lcRESj~XR
zyk7+{d57JRAj*RL;Z(6YemY&LSr9wkWOBfg&fZ*Z0t944re)-8u+D>gC#f-lYq~Z8
zUpKmZvG^d*6j_`NU^#EY;fD2zJ^tDj94JdjwY`SKsihKc;=mfV`Qih$&B9D+>dZF>
zNjC%_A5VRPEv&<lU9se;KHNSb;-SM3?nW^J9EH1P9ikC4^h88Ruu)%o12M!9ZnckO
z0xS=a1v>i}gN5ZUJh)A~0~_`BhQj+?Ioh+WHfneU>RsmZ?c2ib%;HEW856XzRcH(p
z+5i@z`6SMw3cY7FQ9;BQDGA{iHzaw=U%yO#Tr^;sj(`rbJ3r~P(Sihl1}Wjg?Wnq=
z2>!ZNl3AxxP`bPofHv53Wo~f7+TPp+H;SOZ+Nbf0H~75XbK#6N>VAnak^nap;Y>s&
z5-WwtC+o+m%-;Yw0rZGhq}3set40b9XDk&({SZq~vkwoa=zNSrcAyG|ry4EAXothz
z<3mJ5NUrQNoaQ6?ZBM-x3*FnE+qjFVU(Vgvz-1rsKR_hRQ=@xn<W^P_^&ZaSEa$uH
zUEGk*Z@yTvNF7)e{gLo|Zct-$Fj(GT9HY*ddr*DLk)aq)UweH*rmbD)Wih0?2!TNF
z!O}tOk^a0EKIJ(VXhM#P)o6XL%dE@=TEk+o7{rO5$f@e@Jo{ywI<r?#lqT7cI{4<&
zp!5Ko7fDtPl@%Kyz8^Y`{uHF3102-%g+-uBYzs979#ZPoS)Z}{j!*_n?5p((`<cXZ
zUDW@19tA#jKcm{p?gwsA3m0&fi<e7;j&$TtL6cX0fUfSsTZ|9TUpz1wNfA{Gzg!Uq
zreRboB?Z5X8rO30Z911*Hb>t@rU+`TVO7zF5{ZqJboq5TlV0ralbf46BoKpMn<Wu*
zU;_x}zRl)IBAy8+Q)izG!kL8*fpiWMt_pt{w#GQs2hQC+@CIvPcB1TK<plM8T?R)E
znfN@bRipc4=Pzectn@Rdx3)E}CIko)F?Vb66pmEWS{DTz{0djR<H@8Xe97mR9Yq&V
zsR^`-?vh=_hQpG5iGq^BU3v&67C3@7q31B(Gq~tPy*vVO$TbxcqOQ=%eRP8G2TD&n
zxsOils)L(5fcVrTL7mkC6Yw$(lKp^J*P^vA0$PSc2((_pH3`iI{pifx6^Tr8FObe*
zvQiGnNZ@rMad8Ln_ay0Z_X!E4YMd7mGK0Iwp-wGf^oZ&F4Hvv~Yb#yAS45llaRHWZ
ze;+RFeaFcMR$mS?i*Y_AVxYu$TnI`?122w+hCr9#2$>l{mwGcAh1$Dr&~O<+XSljG
zs+k7j$xU^hkk$f9i#r8u)?S-Y;B>v+^{WK^7Zl`<NUkEwG>DsPnfq`e2JXR+Nq(}p
zQ6OOHF^EzJC@v74yoRu;VU7?Zid<q_aQS(NEOAW~!@ieFSF&^`GvM#ADXqzx1ZpH(
z=>YgCZXS&WJR)BKU9GiqG+<l(+fSU1F5My)QhraPISF*Lxg67^0dN+NJdPrl%6uaJ
z|K?;V#agqJPq36!6=BFt2>LCS5%rcDE?UN0dn_Ys*p;qfPzuCdzJ`yohK}K2<9tbK
zjG*}{BWV(P6CUYL*x2@Nk8sci0e<M5zYnilz*J<HZ6ba7N5_FDxjm>#;Zh$R$NkUx
z0bmR2I4SRJD6IwCvixA6d00|<3#BStad4)~rjjGKI}cCXlD&60$YXV9ifr4#K_#|W
zQDd%RQ$t##1TkF8`Qy+k;d*$nN@zhddFxOt(}!d?6JSGbc9uyep%hWWglOBT{Ca|k
z&SPW5Jk{8pEWe(pU!?W!Eejbl^2j9q&Q)u+nt$n}qQmjm+IGGX#y)Q?xj#U1gi;7%
z8*xot462i^Up87$)A@%rNp(^;hS(~<&^y%*gnh5uGa?lWvYRJNlU#NK`zz)+wx>@<
zFDe%$F!fEeh&<KeEG=ZzZd1g$%luKaGTI7evb*5F?C>DBLFJXxATW0~(k!NL>q3cA
zZVw$Hg`+&V?QX2O<@PZ2N70#xsr*hD&L|=s?o<ttDWL;lZyq@!)8B#28^75b-+h^k
zVJO@(*~Z$2XgK37=UPDcQ22Qz_{ML6LCD~g8=|#pRv0IZ-3^rtqcd!I)#4vVMb+FT
zEiRJPp&|X%7h1s?N+BJ*jK1qynwwdyjJ2OaHAj<*$Ok+>q**mqAv@omFpdLYW&JLp
z5d1&jK+fgKvYCb7(qFnU4cCae{+cS?E>4P0<ZnY%r+|3fT1X)MC?0nX+>Gc(>bf1Q
zc9m+jpaqpCuaAUA)IMO1NcZ1_K>1~WW^nOd6GnXp(waI}WPd}D)pfjQi*2O%$M6BL
z1eZ`W-i;=#3|a-=!4cPw;b_}+Bi1@ExQugNV2b8+m#UzeC3*wpxiw*z+T!eY<@CYv
zvNfE)E+=DR*;vq96a^Yi-b05dzqQR~^mX<j$d5M8!PPH0TfpM9BKImWA0N<0$%LqG
zqFBy4jUTj$HYYjL*yU+Cvdinp9VBPt{2L-HM4`VP>p&t#?YW3#^MSl;WSr55plxP%
za{FJ(erdd4YP=feR1ELizZvDGN89?pBmCc?{_n^)+3D$`qAQ@j$@uvi%nk&!+hV9Q
zYtq2z*p#jb_~0Ufv@xO!;S41p^dW3<TC@#50p;PAoup)FkCM>uaPN26n^ZqDZ6Jc{
zAI!#blc6ZvV4){)=#|C{fHiu-OfkMMc-ztSGYK^TWa_MQ6GA&;4yVu$DJy!@mUL(X
zhDO`Q+pg~u89w%R5=w`jiQnxmyP_INVkjc1i(ocvm#{U`6|e;TS$V19*f<>S!?pn%
zK!Vt7;XG}r?zjklgNn9iIo^6WhvW0T?$4Bm10N3D@p@(2NPtc>B)%-U_5>C$-$;9l
ze&Otco0kdtmg@NT7pImT5+FEhGj+FPbEZvN$;+o`ccaQ`S;O##)USpNqI_$8rYo+S
z7%vhpR;qgnI`ucxJSo#Y&HtZH`#Jy^+5Im9n%u8g3%ss)ws$A%$}8aTc`OMY-z@Os
z7UVh=ayzoLUv|goES9Z0I@i9kJM=ycWroeQM?hHAyOrxxIP9)#u9-ziVzm@*J<=Cd
zlEFH3Jg+jE61&LnVdSFo<Yc|6Ey64AB>t}9GDe?*z369y-c}xfHJ0^Dmakb(Nz@Sn
zSlByLB%a^}rgpAr;cp1;)+Eo^zK1VjnF7<h>@)az1qs_1>|1D5AKal;iR`&w6NKEE
z4CY$jOsYQdYZ!?pal0%4wAF4uv>X3GmFN5UBE8G~1|@dq5p07kYk<1}y`@v24Na4H
z1RS~G-U<J4h_si{qUp064?}$qV8pGlC)B6er$e((P4ERs@eg{lUXEZ+pv_P}Y3c!*
zGVc0d<yLU7Vt~9v@N-|@OMjDG6L9CILg+&MiBqs*%iVXwUMFyC1Dh?#>>Dfv!G|wu
z&Lww!-0(x*h07F{h()1y2x?>xp^TOxb@8Y+&#hW&Pw&<uUDq)8486_kQj-l{PQ_AD
zsO|Ixdf8EGVncgoH}Rqweuwbr1;U=LU-Uj8+Sm8&Toju&KG>N}Xb@?)M|aZ*!LsUN
zf~%S{cBl7|<7MdMu2F@w^cg!r6QP*_Oyp#lFlVf56`%&+co}XV)z-pj$at`uu6}L$
zuZwU?vItM?mc*b_;Htt4b%U&qjwZLxC2)`N|GotGBunsMvIO_C1aFh6CL4e3(z0Sg
zY|;1GXjTKXuydAs_mo@cs_$!UCGLecFYdgW<@r*|ita#?uvRzxP^t5ZVT7Rr(J6>5
z9o6PbbN6nrrvG_u#I@2XKy&vfxpX(!?cH{lcQB=ojPfe8wNmYhes1UqDbxf^&fJCE
zanEjxS|<w?L#u^9J25_U)q`Rn#Ps!1(29`f1V?QZB(hhwPL||&aI2ma-h!i({uK?L
zpg2cZ9#7UJp4qi-duqYt*e!Ne?V@}`VN5b`e67pVT>iuO56MQ?*l@HDMGv6G4=1xh
z9Gsm~bZ-hA)>^sa+}+`kE#+v2bjXE(NG=2I@n7JPXiK+jhds3qrBFc^eYzH~&bnok
zgF;JxUS=VG94;f44#6QdNphGRqGt%K86;k@Y<3iJTZ7@I$g=28F6JNY8<qXuFJ7F;
z9F$xx@W*xP{iKkGBuN|S?Uj1oKs^4DXp-nL;o*BG@wE=4-AANXWDiVICrK*iChze6
zGI;&Sn6=OkHoIosj3Hx_CV1~+p|1w#MeE|-*+ia|KUKKp{wI3{dEu@}VL7_xa|UIU
zHn&ibSv^Qi+GFf$5JNNoOc5L?;-+_Wr+0*@p<2g-$@)qzeX>`JERVJ%>7iRT==JxY
z;c@Do?A4WkfY|Foitvzh@}Hf~G<a8$O@9_zKr-v18#^T77su3xHqH)B0`g?<!%V-c
z77O5Fi}vA>s4>ykf_$*QbAfoA)Nv`6d*?7qYGdM0Kg|46`C5p%NUZoUdw21Bw06BF
zGU7po;)E9RJ~Y^w$(~4Z0=$!@`h@jl{I!jPe8DCTQew*nYs*(wcL9Ur@u|v2lGifC
z7$Z}x*Zt>BVY7>|eVMf>g-s^@PUwxN8k}Ssqivg`<mT>eIlIi5<;{%<m9#WmnX@p;
zy&#FV$7MNt`IbNH-8s4p@N}1Y0$Pq+BdIWNg`+53CGX)L^21GJte{el#MyFrPP?!{
zU7M%zhGD!318@jUb6CCesa~yZA%8i^#e_}p>MO&a2Y>oUSqe0SAsA^zVN~>VZUT+T
z^<q~rLLd8!Ni7H0<k%-KvB2My1TaI6(+{31{y?zp?{sWR?HTF^h+Xnjuk@bTu!iLe
zgWSKLR)l#@b3hXoL`>moTF}(@wNMvH+5#cM(fTSlwL3ASG{3iJ*Y`b@gjYR~@A{ul
zDVIeW-3D|EqWw-54Klft<=sW=PM6)Ay0B=v(+4Iz6OC5t8PMyoq`p-Aa0%}<=>HrP
z1YQLx2AXr04_dx-tkfrAxH<dXP3k`n#vccO`MHl(&i#>nCVUwNFE<Hobc8AgsG3;;
zqSM*bK?v(8oq&*D-xH#GsS#350e1xr1PPbg8$Ut4W|s_Y6^N@9VovO}pQK&L`Sy~b
z4zq9nB(+Yys7|_~5q3UrIMj+Kp^vbX6kLG_hp>xlE-$(1F-RZbro0H195|?rs6KW4
zGi@!gd)>P1ZP(K<3M)Y(^LqcrDXUo~6yu7EY({R<t;i)b{u~kJZKz97swl3!dou)U
z3>EFg(MGpSbHq%4t_{ET3%_<$QJg)DxC(z_LjITZz3FeHTxOs(Rc0h+is-3~)YHNt
zBb^oxSbT8w90!|?^ofK<QqrvAZqSsZ$mdCg!#k^~^&HKNP+Q%gantfII@caO-KR6K
z)tc-Ji>5$N6vZsh9WwIZ*#<NrG+|o7`CkLiSgY^k8iltZ=Qx4=_$Op0KqS<7bA(bO
z(`kWqzT^wU1Bzgj#mVTkd1wP!iQFy!X^N!w!r{|JEg|ymt<VOu+L%V{k%{Y|oy<KY
zooBKHY&0|coE37?c@{+)?q4Dsg&@e=2AdYnOM)g+JpY9b2%mnMbkdD{uD=t|F<Sf3
zaf5x8-<e_(@|Bv-*obDXchhV<VMHs)hfCDjPfw(y4%92+d&_L$wE@T3pI7!m=b01*
zyiXDL%%POg1wZw65Y0iawLT5bGta*k&<IR(K2yTm%E?w?pCwuyjvR-7W;S>Pl(yC5
zgk52?0!Y={zBDPv*JJfJ(YOTBWJIhO_);6v!HFH$q9<;R<53P#Lz?hClaz=yb+CwV
z<|tM(yG<2spQE-l+`a#6+r!oNkJUErTs%SLZ8$m0Y)vmco;#)4sXw}N_W+;^+!q6v
zJBI86QcwqM@d{#s(8aFUOsm=eTb>KQ74gpHfANznIr?S$_?l$N&so*0$s+-Blk_HI
zf4@cx>e^IstbpRVXx(Qg?reF)uehNE@xOB2x)J|qMu5*iG48id|1-Kz)9nk!ZhhW?
zyTShAyjX(nFL>6eQ_kM*?1t{=i$!Cwhr9EnFaUa3{SjqhAmw^ql`m4-8?BJS=n+&-
zmyCgkrrT-=rGk;yw=rUXavGzZ5Gd(MQ$_{spLy;N{B=TAy9s!f{oKlfc;g&U8}&he
z!iY@ixxFERdV~mhiO26t5pTC{C!{7Gdw({t)HZKK2WLm>9sZbH?#076N)V;2Uwv+&
zE2Nb0R<I!dj|wifWRPUSMDHEWi5i4x)Y_h_Y4O`0;kPfKT?FmgPf6k3LEYioAzg9Y
zL%`a$F+fskzeZsYkP{zDoqr~M9YzxzoO=5oJ#dm*LxJlq{Uqr~<8O5xBnOZhY|m<I
zb<7t5I%!Eb_>{==#Ot)CbqXa-I`nuZ(NuEka|x8r(V-7Vy|$B~9@FGQ#jiHZ@ob0g
zM;u)^bgNNfR96B|IuX3lP`o7EuS|(wtevxaXxl421g26g*5EG6T*u6EUq``T9KCuH
zkCE!KO*7{P`F#IAIM*(7MLG(r?&<9lNkjSV6$@dPq7l@<wd=(4=|oCo6*zB_6r(Ek
z2z#m6WOT4+Pk~%O$zkiYD3M(nM60Zd@+EkHJ`L2^M7Sk{M<LU5($2=kN|+9D{YV-$
zJ1=U%J37v->FZT}K&5u`<lw2bHxOC`N@2U(Kw_0NVQV8cWu*kMF-)9D>0!sfPueUd
zC(B5sEF&H>?|<buP<~0&kNavkp6x4<<U2W*rS=?A?+qML@p^NBK0lg(A6qXvp<_sj
z@?`C7)~OH_MNIb;h;yxhblw9A<K&{(hBweDz4MzQ9#mqny|-z)!wGZO#};yyVGo@4
zzMDs0T)#CZMP45iBd>CsE#$?{of0sIOkT-}x3(#(Gr84iWC<yo15;SQ^7bNdD6M6#
z4R;K~GFV|h^n>_~$Pf4ds)K(Yn*$ta6exZQghPbH-p9<~Vo|(YEE8hq0+glS!*8Ai
zAGj=D7G%W5VXis|fM2OS{%kL4s&aN~m~O(jJ;rQN=a9ah6i_`ttF}wP`R+b~zXIdM
zAeP|GtU=)WDZ$M1kV!9%`5Bin>0?vkN3KpSC)RS6k;Zmc9KEn4kP|XX&*gR-qywzJ
zd7E$1sxWMq)XMEDM(2Zmsd$gr=o?n{>P)ETomV>b#ESNkT#D@ktYB8gErq%p88u&^
zq_-)jm^(vah<fTJwwT1!1pf!@a{HB2+-r>$T+TZYSi*zAMD)amETA_pU1&61#G);7
zVOl|vGaUO@k{Onmz*@O&k&Z_SgGwY5yxS_b=9hcL7t1p<{ZJ6@iqADVB&Xi`OwQq$
zfu?#3TH!1S5<D0;7?#+M$2<{Q4^36%_i^AKm9blMC{G>ZK9#Derm_dK*K_!^$J~sO
zYOhEp)ap2i77~S4P)%P<WK}#&(rW^MCr(Rm>C2podGB=8)({mT@bj;61fH>XVQGXN
zl5Ln%U}zk5+k5ac{>8j&@>`IWk%pV<!tkorjGas*h3istmnVCFcFH+@CeBIy<c5d+
zo)tRM$6Rxkc5+ss6P4A~hdrJdy1@&SZhFYlpF@lSr+~FPa0)bfnM;So{8V>Y`o#at
zT;&sNU{Xy{+(r2#Tg<<|9+;`=uG(X#riyQI!P$A0X(N#6?Qv%}SQV$pcNF;W=Irp~
z!ox3_uv{WF1LWb3aCZ|q87Kh9=>{jXD1m<(pE6afc5Wrw7#8u1y~s=`fFwMaeP||Z
zGO|y=uAqa`Hg#;%e9;|0Hs=yUdfIJ7^tMigviadmpFDE7h0?Ai8)-M0Q1CZ%3))W5
zPHQvTfQ-$=rf#ogrLA?KnH$bNc@cE>;~!83&w`o@^tb5nw-+D&kCMZm<+gKgWDbWv
z;afi79VegOp(D-F2(499G)#YV)W`Z!ujZ(i&D2qEjH<Vb%Ju?}gp1Sr`MGe%;1Gpg
zW_Tl#yo+nKhxrv-85~g58l@8;L8mwSg5r`V%^mu>2~l5(7&(L(-Wa#;hQHj^;~9$a
z>z5a3Uy?)M@=>Fv+Vu}Us`^7fhyJvLU(WQPtq!|pSf6Ak&mb|eouEmdB|79PTErW`
zrT;PfLfJMRIT-APavRX#9aMzdeDPRA8X}2KhJlsaZ-j2Eh7Ag7hYt-&vBr^NI5&)b
zHp#&@{V3|aca+&7>dp1RyU{I@BP=nZIewW~_7#dV*ALRhO(msbCg)zwVIxgCw`<7j
zz8cdwE~oC>>tyWt7sxYS3SWD@D)z?Bm*NWh;|l;crvkui=QWyy8+56O5NHJ+(3&^e
zD4%g3Ww>?v0_1(bcR|Y=%PMoAgYixJG>Ea}F`za3S&p<>;*qz_$AGFssrm+~1_S^4
zD#v&PQA~vipp1Ub)IAQ}2j9$_|EIx+FxJB0%k3kEpp<Vl@Fd>q8COr~@E8`h_n+zb
zNOHucNjnw5AY9IXkJ5l9WpEiFKFw7E-o#Wjp~H}|GnfXG$&gAb%1($fdw4TB^sn$k
z*+WqbJs)Scs>^5lr&Pj5B>RZ#(2AteueDh&Z2jM$(6QeTg)#%XM)NgkhDo3y^ye3K
zL%)9~nL>QeCyvJBpmE9A^%7C|aPgEZN+dk$$chorDy4GIqOjAM*!OGDN5*k~!0Z&)
zO8JQ+C`UXm$5L73D#))R^22R9h<QV!nw@>R6$q^&85BB#b=72=;^gjRM?OjZ=7LkC
z6nGgUq<8!Ky^Ru_#&l_)RI|d>CBJmcUGfKSu>`uH!YN7JY5GA*ndAfA&sQ=&{5-x}
z6}{lRgnIfHtl&R5mZ6a8%=42|aY9rDW#Axc9@4D_P&!j;Gk%W?E_ag7jmx-D^Xmy;
zDKBw~W3aZNbaZj)0#)Qn8Lv;CQ~yho{ufu-@Vi6s%R+i*+)c>eZGv+rsJ7A;XtyQu
zKIqY7lpLsnZrUTZX{BXs>1oZj#M<q?(^~BT0|VNhd-)!}G`U?$6}B0h)<tyZxr+EZ
z$8koghc30gSQl$;f?P2Nw4=lVf{qj5IqCs}eC+k50|<ya+~0$-N!Ox?eF3?@mAsqb
zP$ms*Z(@YwpYrZ}U+{7~HfVSafThV+oO4c8Gmp218SB5#R}B{UZwC4T=FOf{zIuwL
z9HN*&%!9qFQfp|(5rxiwBO`7|UBHmjAo_G#7X$&j+qCY^PfNXXZ%^OmXka_4iUv>U
zTid0)D0{&%${9?mk66Y`d?~?DHokd{tjab-0w@GX_iOB{mlD9ok6-R9$CV>+;{F&0
zLMPZ36Xx0CE0YyQH`74;+qYRP_}T`XjsTRje~<w^|M5D%kQ^rzuG~R4D`h<D2|Ss&
zFEC4nsd!xI@;iz4er8aZ;2j=x8yxUaK)xfKX9B|UH6c}o2o-7()vL4v#P&>(+KZ}8
z@cFB!;9}67*{QVagub?4993SeI%H-B|7bm2%=$mHy$6_8)z$w$_pUjIJC%Vc6j4D0
zOLRa@)X0D>=G6gPVi`aa-vq~K)L4e1K}Kh=#xfw-9YnE%-6SG*lK{S!w835xjmE@4
zjJ_J<|MOk@oI7`5Fy{BXe;=89?<u>iz4q#B?O>E2??!pWcM!O;JZ^D)z!T}dNpm0J
z13p+mHQO~%>_K#pNq)h&+89l-ot02K&S>y;&c-hjhUeRvvd#}A=dmRFc>xYk;aw(I
z>!|ScfQH%QqG(r*3F!6$9QvuY-vLeaZFgWyl2nDO2=Vs1B*{SQ2XAhtpsx}Wg5Vn-
z#zz)qQ58z%642nE<Ziwj`{aZ#x4!>1v<2|yuu$k0<VSExBEU*n-@QJ3tz9EqRo;1#
zTHjyiNtl*lW1{C{g?5gNZ=R?{tG10<<Jap{Msm&zr7;lQeF`o*Dc|N8erN0#jHjP1
z!~7!<U2$7$XOsMu<@S!==?4KkOokU`?cM*4976FSDcSfv<K@lqT35X~-E&M@M$g+4
zLsn-x6506GMTuT~`%A7DPnTXyMFv9a3Pj_V76Fh{FTUj^n&hNWX>fmB)Y_078g&Dg
zS9NQ|+zA>n4ZB869V((C>T``ULfSNiK57L+00^WdINeJR<XWeXIJ+e1v}405r7pS>
zoC>uM6F<GVP|wUP;#ejsI{L8wmCovCUpA}H3TJg*!K^;&o>e=SQS?(ipF3ezH0-l-
zGjV&gqek@>Lr1x1TDiQQPfD1`zhvWT>G`>B`L%(be_)s}<aIqQ{_-!?;w4$Xo7dv6
z{=d}XyLxKznbTvtA?re3?(Y)Vvs8M_oT+Mw`a3Sli1m-9lsrr&OOSK+k~p_S%u@da
z2k!db=S4u-nRuqBxVNDb0@`m_P`;|$`OKHy9#m^r-Q@e2&4Y;d)(eS<cP%nFgH5;f
zn@F(yv_n}>yYD!@hvBa0Z(d#-{LNZuiFPFW^e&Jra84snMYz9UJ%NSFD0-dy!kxU&
z14~f2+>D%Lr{k##a$-OK)WLX)U@zxWZdN3Z9A7I&2YHMH#VQ=uG!SI3ApWSBrYN+8
zteEu8Z2Xx2&i#W+bRfk9ic?~x9*RYDuS5@IsFK@wV6^klGCbMxrCVv6=ZbH-f3(*T
z(M}2l9Q5^Q@FCGoheadyh&G)V?R17lsO9#QO6}~uXl{L(OxAG~Owh^G>Mk!-tS?7u
zvbvr6_ER}>`~oQ0Kn$Ov!ggJ2n|c(x2PoCN(|5P1Wcw&4#p<w#ZCEjyx!7YxJ~;v`
zO6|WTVaRYQs;TlIB19#*M^wAWPG0I^)-F)Yb7;Y&Ib%j+DVd{GEqPV=!8A&4=Vy?4
z0+><@^4S6J=%6W3`%k3o8GWA@aF28g=K>#x>-4+khE|2|%fnG>XTMye3T|ef-O$>Q
zH*(Kj53N~0fdD*~Du!`%ZD_65E-2`qC(_<@UvnI)bVsM5c(Mz<`GoRj2T4o^!%|27
ztA5NvdXVFIdIBJwvW_4ZH#SLgMh@5wv7;@xuIJ`EmskKx=aq7MFX{W-<G!3jugpW_
z=d|M-`YA4HoX;2d#~({N5egIQ?VXg`gGnd%CY@}IBd^y<a9iKaoSfsnej`pK_Zh({
zuU}QPIAJQkN}0;zfvG4vMFrp#g&wiBQfm_HQWwS3I-L_eyvW@+Ia?-%F{C5fLHlq{
zFh4$)XFy=`LvR{@<%vbD9SYq|u2rL>1oWN+Z+V#oT<tuj`t7LyTjDO-QHnqV2dh7f
z%0@^14&$0^Gpv<_0s_u#jmPnBU=HR;F!4Q(2A$U6mQh<!l3B1oTZ~Lzkx6@fnrt2$
zi(&LabR9(C<3=m76A(G9ny{4`dj|mY?!_UflS4U60PdP@8{K0IrC~E`(rRBt65)*V
z5p3)Lr)4^=qlbh0@mEs^cOi2ruqE8g&iQK0C9)U33TJUtyomf3aD*cV!>(YwaF!2W
zOgIY`#BR=#v6}^2Ab62Zo<?DjQ8iERgO6J=v+{96<#3;c`|i;O0{oIYTU0%){}F0K
zS+i+0q6m8#zU?ZdvQzS>I<r^-8o2oh$mC2k*KfrEYT_S+3Zi(le$E`4JYwCRy56l(
zcvoI2N~?%+jU;&Oaz0op^)U=q^Ce|OlQhZuXjtLCOjYN<s*ZSNVn_}XOZlZ{B>qR!
z0kzBJFBAp4BTKFIklQ1R5q?@8BcZMQb{d=*@G0bm_>Pb44QOJNJD$6cWf21&Mk7oC
zl${^vmg^W=0U?(g#EmY0OcI%{W#d=EYq_ZfDNu}T6qeICyB(=<nh?dKI1cx0w_qp@
z)Xu}P$>fCnN@-;pyJ=tRSenl~NY^#}7MX*stu#a#tPz_cmWwi`$7)-qu>o}f2-E^#
z?!WfZGc|5uycOD!SQw=MWbF?x75VW5wiwYVm(Yk+!ZHdTOP#Llh?q#fvuHgHte)z0
zU_iWE_cQ9;?l%<-(IONEB&-RQZ-9JtcR)fXwv6{rQ$WIeQp~}v&nUc(loV?3LY@L7
zJtUzom}Bio@H^P&$O!tbsD$);qno`ID#bfe1a1Ig#|A{Lu{X#|@^-%@905Rhq=9@1
z|1KI~>0-gLXY7GEEQ_*EP!o<voT0)nf8zcpg*k@FTn;JD*gHbDKzMj9XV<)3wA5+z
z>Kj~b@+-kVz?G&Z_f}Df6Rec^qBg3e7CZ}`14GDc#MWItg$tYoP0yTk!*?%f93l_C
z0I5RnR??9S?&4E{Sc$DI*RvwzKl6yl4G4Mg>$&@Zy|s~m0;Ps~h(Rv_1%E0}JHNsQ
zp?$ycD26VuaZe$Sl~H`0$@CIB^Vxp|BGyaj%te%s5%BRdx8@YE@;^ll6d<y_JFbZa
z?9NPYgVdz~20Z6Flr`kmCPO<QY#E{^of^02Wt2o9a_WGbauchJw9?w;LR~ovJ%=%4
zqE_do@J~Mb=0>Q{3UirzLn{QdN6_Jw^7SaN-HX^8w(x4(&#|<|)}`p`N<(T%R5%4T
zq7wU=?}Cqf7yOJ}0M@Nx;}Eywo8)J4V+e0sO*7q=I6t=Pj)T+1a4#A%seQVOWV{fe
zfG>(6D7*@K{(j1R<`;4w7<-UsB3ncTliX}funQ9Hb1sZmc;M948{yO*N$^`|?mmAB
z%>C>sCSmbfA9LTO(H@OS@S42~*v0ZMPtx}QvNi<$zRQLP`AQO0pq~VWs8}$!;EWpz
zqjL&k6<RQ2`6_owS_)Q~<QVUtV-Hi(U}Bl8%`6D5pTkD7I<m?9y&DRl^<oOGn*y|C
zh69K%04%J8Y_ENJwL6LdQ}x^<Gol#`^$v9h9>h)dCgX1jaX0hXkY?|fH|2)HF}78N
zg-)Q>MlP{m&Ri{mxlXcT0l^G`H$oJdi2psJ_(I@-&;q1(9#FE`D^=f5S%mf1gGvo%
ze?Z3SWk5P00d-iQ>vXYQR?Ui@utT#bCcH9k@oE~&gJgeivdvIy1T|ZUI~53%LWsl+
zdIycV%!4DqlaHqLGA@YfpGq7BCQ1>gwSVSUwXlgZMV{HZUvB}YWN5nQy2MV^^_ttM
zIH)LomBu)RG9NZ@=XFl485_|Xe^43sR0_ZCy4I$|O!X|+r96|Sp9<rla2Hnm#L>^w
zl0?}quOYLGT$>G3M&VMJRg*;AttH~Jq6-$_y+l%`R4yPrq9Z&)We>9oJ#vHSj?f&+
z?WpNJtDeq-u60Iu0LV|LocSp{G}p!WT?rSGy@Ql`9Ge#J?QFV?BM)+_SIYU-!YqMS
z?BL;3M2t3I2W2+*b>>fske`A;CD~MjFAO9T8EohZ2R7Nw#DIm9VZmK$<j_m?IZ@f;
zys2Vw+PDl&vRih1w5vYeQt?d<)YEYkARXDzu4vb5l?S!!;mKWl>XdNu`iAjb&=9+q
zZq-IHMr_O&{|#_#a|bWWU)2;ZN`pl{S&#&aocDT>2MQ*^A|J`K<F-j&;2!SnlHDC=
zxRV+u&*%C|T_kv#=UH90-RrEb;zT}SYPE@3E6z<t@Z5+}@xsEds#Lhe>Z>P8+>AQo
zyJ4M^&LnX5f|nD$;vcTeu)l)O^=7E4QVK$3=VXEXPsa!iT+UUg47-AKcTu1|lQDT@
z+0C+X5UbFK6?CnxqFKs>@CNZ{fmc^_rb)7|5GRX0JcuISOB9!koSKGJiVxMy@PH6+
zp;TAwmIbXjNvVF_o`1avv!_2w#FIbp@yRr+Z;q{gDWuT(HT?+#@H+~sWDq&hR@WD1
z$fOgYK9%;NT8f4I926oRN}I+$JGptI%&gizb7bT2a-hLZ>L&xvRDb@a;2-oMkbNK+
zSp2!K$@^hV<Tn;~3+cK%C<9H%*A+y^F?X=*64pis_c4?w(OP>*6X4t(EHw8L8&X~Z
zdCBR=Ysd6r8_}BEd|Hi4C(&++{Rw1Hei1$BGUGr7V2H3<zYuo?YW;CCY>~Q@HoIvF
zM#p*$4CL1(T$t*{C&$Zk9r1WcCa6r@+->anbJ7Vcf#;Su_{yw9!_C+Lp4&l?KAs;G
z?WwSHkCA8Le+N3zb|PFy{N(&->s@$Thh<gRnU2X?)-S+eQBBacWCGLeR7RNM7#6E9
zor0vhAW85vLmJ5e5nUFpXXE4NV8#e?o}s)r)g&KE3LB+4g^azC&2?J&$X-8LYx)sS
zCx#D4Ij(_nPBjJo)7mzIYKmK2RLNj>C343}(R-cFzNjqx1|evY1=A3;cRHPXiM4BY
zGqKCxkZmJqRqKaHth(;2QlQA*VVQ*{Ay3PX{#Id;!Jw@~x`NoU>)?rw>YuvNAR#~P
zuO#H>bIb$`?3h^kL&h#gh?M!2(w8#$gzZ0B;ZL#76DL0~#N-p06(~R&lK-9Lg5Q=O
zC-y&tcI&&F3WP@fBg7Yk1wJ1Ta_mDlpcqEZ&Uquz#XbeL@?ZL;0B$ZVPIR$0pqc1m
zhXn`bno!EeCGydta_+v|+}BkLGYtH=uy_0jT9zK#kT9WB1;P}tL>T-oYPqPW&7reW
ztb(>HNDBVgWwg&x_m$0r(}vXicLV5sQ>13oQky4%9aOvU<c%c>yS}iRj`H>+9zU{6
z5y-v`Y&Z>IM?+2{#PRx8CHvZi-t0HopNm89e@l7~`&dFTPya0Ge2QmS!aV#;*iqe0
zhoJ31?Ygd$?$nSfPmU=MAV1+b@IWv80U-yn-zO>+oF%YUtNS%pn<^ao>rpce(boDd
zKj?sv(R_TfXM;dp5{@)4PzA3e{h;;@jqUH2qVAxRdA{G#n9<7oV8}Y{S{u@2Q^;Y=
z8mmpgmlFE{Q)0_)p22KnuMnfr3sLA^^hAm}D_!Zpg4D7itS;}HX&MSoCZmN?8qJ!4
zv!oWNJ)@MUWPdqn=|*UV2uxvkt*3lm+&ANicQ%a@fgsdLt9`bG$ys;(GD*&&!d*cA
z>r-0us%Q;kOv7pygdN1vFy+_S7fzZMcIE>cb*+c&BOc*#6EL=oP#zImWQdLAihkAL
zEcQxDgYGG$K~JSL=>C)jNp>r>l|oH-E!l!*ty+Q`JyJwp8KhG;p{wE-sT*mo8}zCP
zR+3vQlw)%2bGIBZ82$OB!%Xxc(~W=9Me@7b9D8trW2#6{P3T|n``OgRVMCmaYpR?5
zL)#Hlq>~6?m8`t`t{?>U0<d$~Sdj(AF%sdTq)J-g*qI&_0k5df{Iz6L&TZ~RSYWnk
zqM@D(16fEr5JTiBE~)>wl_TC1l;b5mItdzFsXd!?vLNYXV~&*dI)Suc;|Lws+AaB}
z1^=|^Kd5N}LRG&f*AUQoAl!~OaZ%)m6y@&8I47;|a(!#zTd8E)X{t#fo0`S@CKQ}-
zF#@K%{)`-%3Z4>8(HR@waP2^L|Dmj%mmol6-3;S7n?9pPw}uc~Q`rC8AZgh7U$*@<
zmVfjOtm2}RBt~pRFtGQq?ra0Hu*Z&}_@BOM+#kX9Apkd?6l^5DDMP%Wmz8*18t1mq
zVc1AB!WV!u2{#l_DBSvwKA3F%-(uxj|K@YaO=aaIuZe_^&iP^b+O7p}A(!c1)w0lJ
z!CT3l(Hp&UP;w^}4E54)$vY<{cU1m}XpW5B0?0j??2md-nF6=X<DFk!zWEOl6CZ=H
zg-wM3#aMclz$vvGwJ`yI3r5J`h6##}HmJL3Gyzu9;@w>XcJDs*!<@O3RSe$?>P{y9
zIIuKc5E7s;4cEtb{}V0|JmF1E)L%(J1kfo0Q;nAJNgp0&Pk^C*DI(B6K?7U{vHci}
zDWl};u|9w*d^@Ph_0e#@I6nWWAbRec*cpy=0sY2nq;zDDbhc9Tv@=Psc4qzCH&BPG
zNb%tvX34u%-xlI+;ymXotsV>pcFJJ?ZA3@(pQM$p&ad8my{_K!|I5{LQH04WbBEQF
zT{~Spzw~cckHVu`u4|IjV?XF8Er!)Qeq*aQ(pPJIlzx86>Rq$p>a7c_cl`RRH<;D)
zbJTOA+(3=70MsT4R13^*9GJ)9O!j#9w~3C1paxZl7bBXRKwaSsypx6#ya(7ttjnbh
z@Y0zO+b5M_5~5r)whX}z8vEp|mIghyEW_jaSugTw_c$-Ai8g(cUtST2kW#KImH!?c
zUhaKg)$5ACsTH^QUn<I)u{yGicG7ede~xD&Ph$#|r~*-D)wN$8O>;YZbuH@6REu(3
zLaIe!Wnv~d`y6W&V@vs9n-tCAmqx>c9f5enfWgHJTm3_3qZ`OI3HIc}k#Ll-sjnE4
z$Ts{)BdvpIqd07Wxbtz?eta~)Q*mV?o4Q&nMk_EVQd8-{+Bi~)D-%UL^jlegEXMQK
zwl0@etxA4qe^i8HlI~1#5hkh(LQG{|h$%~jn52-wTLBh{S~EToVy+DK6?^`NUoOO4
z#dBdGYiP%Xn5(%Y{<x|@h*{gClQbISf~1qxNhcc<VtRHGOl)^1?_#>t4)`G7L7^yf
zi5>zb{glxL@Iq;-(qU0%`>3=%a#tsASfWz3DO~O^EE-j6&#$I|$UZxP%<+t!+rOhp
zE>ZiZ!YCwPoW;jiPRGmGKl`D8ARNy=u|wKKVj)Y^6RQ99_wq@eq@mUCg%cNSlEq(n
zll+I#c~7O=<k<jJNwxS^(rxm)p4()JVC>dNTc%CXtDygAvKbT)pUU}O+Es>@35jNm
zPAS7fK5mc0oAr~GQ))zF*~A>^=5Sqho}9`7Q^QkSu66CTJqcoK_f$1?tDrWeCJ;C`
zP#?d}GXTHJ-N4QXJkV|Z&hN<yz9)zG54b+}T2=R>C?uQC^@i17b<;HmqWSYYx~h{@
zbNF?F)3^Un!DZFfqr6vv=I}Vrg@HUwJHF|j;L`e<!^$3=q-5=$q?2X;X49?LiE9ok
zLdUiCt9;Xi+wB)>noRK~4y(_oO4K?OFv|SOm_Q(j7@B*b!#bmHt2A0<mpR(FX<X=F
z?{hW<Hc>S&D&d0PakT+EV`iR+-jB0e3IMfsYZ!-HKTF*(&gGmf?unwmPo`Wdu-4jw
zWbopam|9--N!j(`oxnRw?G>)NhCi=23K+J;d;TV7qRV&}Jg|4e1<uA?(7H4+0qYur
zg(1*wc&356p+1sDc`ynM(iKW<+c>EFq093R6~g*$nvF7(NirbjS5XD)AV&Z@;J)m%
z&$@P}a!ZljDV;7$y;GT6-M?_Iz7}rBd48T+NDkY}!Jec|LWg$3fPhMdiZ=))SS_tf
z7UtYU(DlPT#65{k^#|<47QGbJ&4_At<vNU$Uq%v?{8sXkNkUc(1N6B<NBsbzLz;!d
zD+(CL$FhiQpbeajys77hw*et&(<;PTKzrL8_%!m>)qbD6+QVXYYx3q%jqC50wY~Oq
zfu7IUNXcCI&wN2X==I4<{7EujIs#lbSdYsK*5e(mM+s-Ys#seP^bSOOW~wRqoSrO)
zpnjRdjAbJQRXAX$0j}URNF|H?bsB`48|UyZwWF0;HJv&(A;~*q16wd|6|Dv6GW0pG
z`&T%l%2|G7XTGDUUKB;L`&}4i2YMG|81`eaiWhjya9R#t75%ql=*3OkE2YHxFe)kX
zq_SB76wc3V2%&LYo1jI;hrKz~{otR}){CbQo{*s;=p)%=L~g3-F8&uRk-4Wl!ZAdG
zRmIb3U6dP)<cu_ZktC#3d%-82j9L|yOd?3KKs+V`1ba=rOexj&$W=lnhj1vQ`o!Bs
zpfv+Vt(5!0i$azfsv_SIiSu9eI@J=c>RIFN@wbbb8;906$^|N@hBn5>7bHMt)_tSu
z{nLtavJ-T(zsbG<GL!>kJ%f;Sb27fPCZi;sQtP4@9-84(xS`iaUeqIAh{zY$`;GSJ
zd#F5#H>Xs%krq`CT~kI#0ZZD39BQDi+PRrg8qoAGpeuXrZFS**=J)!@yJ0|9l?q;A
zJvR;ux+drp+lf5roLlFUJ*(HY|LJXipXUzsr#`<jtZGlFow>$Al5@+3EZf+ov>a6n
zc@YnSuIo@Gv3XU@V*pZmJPd$CTUZm+YoT+Aabyw8gmdk5&u$0#M7^u+y`*F9-)fzx
zR|^6J>Gbk7Ui~mW*DFbhT&f?AkyKE<o-ZX!G>gw6?ENHVRL2>GafQQ{Gq#DA&3=^K
z4yx?~CAUcXoXQST$;!cac07;Z=T`;2I-MLpmC0~)<(O!&PJE`otJW2${)F0E{%syn
z5_g9ph0b-o!qU^KFBYE6-5G{^0F(ZePxX-=Q=O7b)vN6eun)+3&&CUBbOv9n3<->G
zIMqZ$q4W!JQN0M)wRXiOVoeY3(xC9Z3kSM9U>_eNuE%Jf%~#yH`x)wiZCIUETCy!8
z8YqEGCWrq~EQf$e`F0-FggnBi+Met&{xdaxEjas&p6*dapN&L9>kM0K8z^a`+Ex@|
zny+-3-M7YNF#_bS3`Hn2_A4$)0-`{$R$dm-GS=i+!b(rmdbaBXUqWo`V`rwI<0@C!
zpr@r^fbx(kv<)tGi4_#|`T$bB&+~&YN*bt;9Wa&8c^qI{9S!$7yx5Q26L-;kwnRQE
za=88NJs4vpyfH*VUNYas6<)Tr?*Sz0;^;M;So0OnS_4=}0@p1rm)gbiTSYE6)0HMQ
zGZKOuTH=<cnbXobwInr*KuEbXwJP}0rZ8@*7xJSRTAd-RM%I=Lh$|sGLs*IbWasO%
zFZi<=rLpwx!(LD3SRKZ#WttEgi60C;WO)pgabq>jAy`P1Rc3zWj@VJlB|@%?ijPJ{
zr-m;U2=V(Rk?8{8xNTGG<pS!DZ2}*7aZCu`C-Yj@h7Ek)`$e4SBo&O}A~BD>JI_H{
z8}+Ffpw-f2^nMY~X}HB@0BZF-2NahVzK`p(jMrWXuc^m2y<yk$f<OG~yw-Yz7B!-4
zX|(f!K6$0uXcL!_Dl;xBQ%I_tZKF(kb_As=f%l1?BSNs5_}y3?_vq8I_%w+E1dj-w
zNwo?Vm0zSU>aTcaac;T(@`_&<d?%~azM23iM>2?I0MN?n*`ZTg#2&27tHkmR>Zt{)
zB9%_*bXA9levm{Z`V*fLsAe`kV$xKthlV;ei0jq%a&jo9Ua#gbg+MWb(|WPQ58{h{
z@o+1_bhU74Tl^T8IPW^dncMP*S%NbA<zq#XTc>IeE|&d{>t2plw6kP?h;>_s8>(<u
zIO55wx*B^G;~CUO4ehIDd5kcc#^ERctkV3gMd#n2g*A*H8IkEEcIjOz8Ty6*0GDkY
z_QQLJ`%>z{Y9AZ1dcmruc`@H>s1KmHcyU}Qottum)9yr4J^lS=>RaDARNx%Xu_N3X
zFfJO1!IB5{i<A76n}w(p{~ZbbH{aLvnWz0?sBYfm^f_vA4;XV#g26_d$Gt|Lzif&>
zzYQ(<;WhTZn{?O^fbZ`a5K}nK9AEM-|BHubaUKV<oRzH^Fjd0TE9|MD&U<rCY#$~d
zPaHxeKg4K`a;o^p$?8?{=pOj&PtZg;g4iG)=BVC5Vg<*v3)J{m7><0(SvxpOmbefz
zdmF(b%h{)OkcDA$8DqPkgWD~hZHI*eI7d7Z)$PLt;HHC=f%4brU>F@Ju_9}?&mwTj
z2k!y7V9#7u!BrUYlU25WS#@qOtL^PxCPizfQgqxKb3Y#)P+fVkikFl_zUzJ#mCug`
zPKnBAN5lS0J^BrS>f8;Qq@$&@sk4p4HckOXFV_<2EO^R_q3$F?GyD?r5(b|XjXaBA
z<I~f4`gf?z7B6vXn!N+B^cTYEHRbm6Ze;;__tdPAky{MSlY*u*07vp!aZohUPH&9r
zL?j5S@viNnDIoez)XYH9<`7RQVPT&vkR?Wgo0!3&ceVqR0X*0W{0fG<X=vucDa(7b
zVkZ)Q$t^5fb7!eKeiEe{eM5OfI(5)i%);iT0hZ3z%;rz&ENB5dU)GvyfRu%_63*jQ
zbixPxQOQO2r0+Haxe~0(Rm3=x>CGYXrlfoM6N#NuL?RjBCpn2E;}Q*Hq|j5tvPW3k
z?vf5KA+YSPdzvQg>1aZRII0stf~I**K#@fXPEd?FQxGUdJJt9jUp1<MP-|P#x&2pL
zfRLt%0oTq<3Z+V|NQf1Wd8_~flw~25vEdwPS?4uCI$w(?GF?A?IuX}g9#2;2#bgxe
zGM_EVwv<XocKJx33k$&M;`R<xEsM`_xq^24E%s(*FvD1&=uwVtcA6#HiUv(QG})MC
zQsT%BDyfIMYeLEO((4%9Ul6W11aC}K!<lN7Iz#2>6gLSf&j2~t!n+!1WwaFz0$-gK
zj!ioAFrFL|KslQlCqy?dKhkG|0JMcquWY;m--0T}<|gwqldX5qFuz+t_@MJrm}n>`
z4p;lho}37`Jf`ZfX0}*=;wJtY$+W>O$WGSpseX|Y=Jm<ZqxujznhbJ&J`4FetRk`Q
zT6DJX6;wfEYs)uH83vC_{aaH;appO@WGfN0b_FAI`dSl6<xXI~cj;C^GWwvYE#dB$
zLgm81on=K8P+a!)LoubY&`ldzdd0VBf9Hlr_Cs9C7|4YU?}H5yti6F`3j5<swxr`K
zeZS{h6PUXkyEGbR7cm`?k{|%j4q}z3;yY+^&CEDc?aqv>9T)Uwyop>D??6y{t4K)$
zwqz#rhRBP>rq;LfIQgh9+U9rBwyUE0Rnh2G(RQl{nE^_q3Hj7WnN|%b3IPNfe5oTI
zFw&V8VKT34G6pNi*w1`#NG~B)fULN0^J;sTnrM+C5^;Bom=Nu-8#}R)u<Jmc=0w}8
zt+r@;gglCj1C>8#Gt;&A8BRYU>A7?OKP#i0vUYBCa)d+}W2Dzwb+DYFAe2OZ=+s}f
z&19A<%?D_|GE-87ug1rWHEZ{r5i+nP#D{5JfYF0lxKc)CANHDDJ>fK0I4)KQc9WZ#
zsd4w4sGJOBl~klOvZe%G&^%O;oRl?5xwcFlvF&G(A(3fncg2Yl>(mK!ADk$$yUu_%
zaRD72;JBSloX#HLRievhcID}8j?ivaFwL9lChLHh269M>eoPn@B0K%qEk6h9Q%(TQ
zj_hAUGat_kTqKn#aVv$>S?TC4x?`yw=*NTdB@}0k6#l@WO!gedeDvOhSN#4p?@~BL
zXy2cBnzH}{g$Ot^+^=SAOTz1saR#U!oD=%o=zt9+mjWHKj|2}1O&5f(QZVL3+4mq~
ze{vZGzTg`{CwkT?&2K(+$6Rdxg-AYO*NN1g7PftOq#!KVUl3x~=0p`e5Lgw=g}D8t
z!-ajTdiPog{nmMeh~(P2;>;Plb_y42;sK%*);ZC0*zC=bP?i4FOM4{he<ja9oMg*h
z<AZXu8;k$u$jpGaB8v8mvS&n5Zl~tx>-GYTQt*euAz!y!kVgT}vy^-ZM;)d_;A|E|
zr!<vZrg=-}5|AMZ6J+e5K8u1SRK_c3C~bZ07)SHXIbV&(`Y7Nwe_&b}W(lQHa`>9Q
zYMPZ$;2q!rc7hkD*}MV4#g1YTZD@lX)u0@8(VM`nW@EtRo#C;4H!+(ia$5H|iQ0)g
z9@J6{nK>k#ihX!fN*grg7QT)Tx$C6O^lQg|4GLd)w5TBxZeWx|!BC=%L*q0%I}51=
z1x#Nn(sZ-yLLY(oS}5ktdPzx{9%a8q=us84CfiCyFhE18)2jGd_S5)y&N_DwQA29$
z_-ftD&VT4Znn#>HlOFB}u;z#Woun8z1tb0ja3x_#T2DGh?d%$?1)S5iAA>noCuMPZ
zUQ;wYwIqpNa3Bs{)YNpw4TvxtL=9c<rz^Y-i#t*9g4)?XJ;pjg(M8GUJHmb{x!V7d
zqAEcVfGAVN7O=mn<Jw%aDmz-`QpbZb0tp~ZT5HIk{P4xL>=cfzP+!3KdIPKiBFBq)
z2W584$xs%1zET|fM=3;M4OGmouy^<4X)Qsy&EHuqtdhd$8o*O~Y6{^f8R#lv!#(3<
zF)@2)PclqBv4?@(O)&$?tg*IvK9&ofhHUI}L;kpHu(H&jJG#-Qas>+_x*~x^6N%7*
z3EWnpXRlWmqRf(_cu)`fedJWCO;JMjD<(D!dg5k0QDLDqDMFisV@9h`K#M1!LLBDn
zejL22Im~B%n2!iVav}+Ky%uTwwE8!?5JB?1{*WYOD9aW0p)akvP)S?>bZkQIFZJhB
z@;{6)I)=wt(3Jc~1ltmcI2qvrxQC{RKosPqe&8$n`1Fo343qP9WsgKE3QtKCtq7I&
zd8dy`Zk2&{7}f<c_NJe0c!gKRc3RV)fOFmGiu&sa)bU-b0cfKPDT3@|XHq(7us;gu
zU<{y(c}^UT5l<(rFtP1dtCp~unIpc-MwmkCkqv2tHQE%+4oam4s~+49-Gciib~W|=
ztL*JEr(*M4AkU~(-P}H7pP{F_mJb={zm&W^MVy_2AEHgQ(_~5f&6av_12_HVc0Sgf
z$X0II;O;AX7>!ia3{n`J^Y0w27aa(ZUCzVV_z|COc3M;}^?PD98xo-`7Zi5(PUYli
z@X1k`nC?_R-&?BKgCKQ{-E^2*)BCxh-~@Z=m2C)#A>FTmK4PMY6^{`WKj;g=K^(>L
zb$rFDrxH@ZOCWtBkWS;&`|#}q*#NY_W0MQl31jIJCi5Lx;I^>Y+Yu^T<p(9|#L{wG
zEg`-(coRQ{_L5@6g9AB%gc6rg=@@_epWkf|Q#?U<nAokp_?p&SfCwkDa450+19YNl
zT~x6vH;!?ylf;`ectY!~2oz4~^P?KEm`D&-buXyU#Tn}FgqghH#Df|xTZPQM;`kZ*
zHli#_4ZAR9D5#8PSO%mk>6NHm2cRPjbJ8HkHQGHn?X^Y-@f_eQ!!A@(x+!+<VJms<
zEf~JPNCVp=@6{f_Mh64Ic1P3^zN;~?vpO}QqJVKqb%kB<V*yERk)LRPCqUj<9bq(k
zdo}`)<<RXbtnDXyj>`~Zu?%*ztQjNXGlb$Yha3edy2rsEuvXhBB}D>@{R;UF7`rLz
zV*@zlcAv8M9sQ+D!nKh>?>bdmLQl%zXum}j({N<Zq~ns9I_-6ISOqF7=|r;zB%|2f
zHTLX*Y7c<T#x%wk7FdV^E7^gw5Jkt2^`+?Zc2xQnzXE0n(+OG(Ev@s0?noQzJ}F%4
z3q%_kfFi?29RNL#JOrMIcOg7zm==F5qFH0VILJr9uHe05TRv)W+^lTND!Z9P8||&o
zxskY5VZYr+PxC$+2b7|aSXS5($a(@2>IzSkP@Wfhh$Jms<Sb_$0KRyS@IHN2+3$9T
zj83Ex>LL4(B!-8<DZbznsGd^q9OQmLlFdFHUFe(Gkv5+gee>{W^RbPRU7$l7X}+;V
zRFJS=QEI1eJB9s|7jGnbT&gY*`NUMGNVuk7Qk0x)SJ|)1+1#MxN;EZ5XpmFXU^HI`
z%4mJQ08Co&h}aNnS#FBNZmm;0r-0hLcm7Q5ARLY&MGx76&C={rJV`!}&Lp>)YQiHh
z(drELe#EVCN_ppr9l0)wMzJ~H>PM1)g<Xk+;b8A$Z?mIRlT@NCqF$fH2X%Exq(kW9
z%BFIBEE?d#5q4u~O(U(D;_uAgH`U<W&|0zjsWPcAg)$(RtuIl4-1ko5IK|Wul<V&j
z=re3?Sv&h6p91w|pf2ptb(iaNnL%umdD>QBfI=DuW0#*HHOtdJYaOaJigLUj+*xq4
z9@I6a0N`%(y;(*6_r&EeL^@$Du0{?J>sNw`1jj1GgH&r{(?8D%0Wv7zE{{g^broy`
zRuHHU`;Ec8@zXGvz?X7%MX{oL?fsv!EI5TvYs1p^7#gxVY1CW5q#~5ea3n-s9D(<o
z^2b11A=p$q<}WK+#|kWD7VmoaS%NRAwD(ZJn?80C+*)i|9L-)AH#v%T-ulva=K4GB
z{tm0~CiJ#@5nLyOqZeMG#rp<pH$HK63Q=IRfp~V0i)YUq-RK04B8(f;vywx@|Bas2
zt)edQw0&Q$Ptbj;?9U{@L;Fy}@1EY_7TV`Pn?yQ7)3G(75S%tV)|y%&WuA_|HJ#H+
zL^EafT;)Kop*Xi}RbzdnYP3w_p%Mb>cH2g_2Vl*uVQIW*KQ)!LHMJ2UkY7?SRUL=h
zRPcgw%T_AoeU2_LR8hNcf(zP6^fF{W8OZRyB8wD*3L<iS#!4$l8M~S!2u3u=_ND<G
zeAb{A$2!MlOYBWQYIZob3pG0cCs=4L3`qyO0}4pIY#R%Fg2U}#A6=bJ1VQ2#*B(2D
zZ-IZ)>VXhawOR|U*o=wxIVP$+Q}v@YS8b5O0p{m?OfqMJ2*R9EO=u>zoiLkV4$&+y
zqcV#c+etl-WmCf_oT5$$U2^I|QEn)PO3otY9;p9JAG*T^uvWj>qx0FLk-blJw3c|l
z?5OV4h-~^8P-)9(KK)P~`|rXa_7v4PBmvxZ-p?W4Ph`8V1~WY4wT`kAEes8$W@uS!
zZj76B;44&OAkR#fkH<=y`KcKw1c_NG?U&0Ru{nAW@5s6;Gtsu^Q-n^zD`^#7ue@3>
z%CR7!LcASZ_!TY7`JM)@%w;haL|eAVZ`&3aPZfsuz7z-Cnz}!LlR9M>N0=$xj=FiV
zku=`lMznFiA*#n*zcm;;*D(@|c9wk$Q16xZKev<6{zv{Wxk`LLz!6Ip0vHr8m)NZn
zRGzieR{67Iy}@(S2D@bdxyPW8*dzu^m^e;of_IKJhP~>g*v{SG#TVT9c@adCL$$rK
zQ|Ri330`AQ7n-9@kt2j2$n=BfL}Oy$xhX6~8ri7)ejCFB5#kROLg>b;VH{T-cqY=b
zpH!<GjN=?s-D-0A!nF#R*UkdoEf`LA<}`KL|I_a>EKtJH7KpdhAwJTA40#iM?w_V}
z59AM)%^V`TcE=V7$qB%Dun*gPIt%@cm(w>ALD8ST8w0X9Qwrv%_Fv8Q(RTli2;&XW
zXmz;6Uw=P+9bF{|Zn7Cg_Vc6#w{YOw7=o=k_y;@`K|yAtszlfZ#uPgQS^r$rw7_BE
zRh0+D_9|x;)Zmto9eodHcoCYS_VaK%HQCG+VKXZf58OXRY8&FM)lv&3d2`S8-aI;a
zbCVu#28EAZ1C#ln2TPHNY4?B<lDdGr*q*#<)QuTlXvvA}EjE1xWrnmYHK<Pvb7zDo
z-?fd}wHlmB#*VgP?^bH>(l&cn<}NuC>Qt~k|4=1SKDyts{(VePOcwa^s1D!aAV%{l
zh3eJ=vTv9{gZbJrm?Q2PjKwo&EAVIl>L-et9|SRLq9Jm~-{CX@yMhkYMSz<Fa*I+S
zjY)p>yRk}h4w&Ns*!F;BD94D5a4g&XgW;T_sB!j)a{*k>IeR{p4!wAS9$5m82;Vui
zY0I{HDEJ**;26^_`A%T=WL#z~E`hD3CTwEcrF*+)x}uahgo%PU5?M%AO?c}2XLN`b
z*=511%U3kt3VUygBV*vH^EL@Q6^TCb37ivzYN@W}F10a9nbm3)-#gwTtQgLar4R_j
zpALXs0jOOf3RD~gIvPc5efN*H{hFAX>(<3q)kVM+cI3U_`*;M08i!{L!p}4<+MF-D
zMI)z2L&ipfc4fA&kpJM~F%#1Sh!Bv;mDA+*(vIED?j4H(sZpl32WBGX)#)~86n&e8
zbtg^Yl=<+RnFk%Eg4Q<GV>+U&h@6%B0irs4sKgeT8~a~oNwos(JA#l^wv~-1qzIWb
z5mpUeyc7i?m|(|-<K;?DP|S~54bkbmK8TOA_=S60%A^uQq~T=aryN@#{CIrDm)e}`
zZHhJG*r@IYT$);~9X#z6zRs3!Tp<EvzG!n{8OMO`5)J+aF67NeChs(lx)UN;hY63M
z0A3cVhU)+@+2dh?XJf&K<q<alETO2P3>8ZO`20vEgG*sw)nj7PWhE_mn21!C)KD=m
zR29^PY#kiDE~>eO0k-oM=lLHZEYh`y`UNp_Wr_x{r|u%#sx54WFZOi<#RxlV7hJDR
z(FlkB!>zFLz>ux3Gqj(3(%TbRQ%9lQJ9@NRVVk<{y<hMsGW33P8T8?*$s}P1PrK@X
z)v=)&U`?+rrXvkW3&q&R15?s+Q<hG9LxQBljO+k<7=iJc%2SXp6g2zS)DG<&#eji3
z`$cRr_CSU+gT?Ac#3!>qnx#4|MfJo$a-1w>b<05t*fvy3v#au>s^>U!l<q7v+(euA
zY*r5`D3}uhbVBHZT(>eeRUOV#h@!mUn-C{#WRGm7SGtv9^soQc9HynHGt7HHy~ndm
z5ornw1*h&Q3<ZW`{W~*Fb9`hJT%>6L(N~YM^{+)O#g!CKHl!a(s%7#UyFD_<3fFua
z^p?5eQkNAHQ^B*l1wrBNeZ(w_?b+QLdA!8#-bXC4zdf@XO3&1YTB;xzHuZ<7{oBu;
z!Q5ILUt0~~1Ja+N*rHS;K1xAaLXmaVhD?M_+|xiUCqcrlsmip(UBc*^kiIMM-xG9d
z#ZXBzX9qq@0muTF;`XxhtBDY0mRA}?wn2g<)~044OT>ZMyfZM8tIboQin-M2i7LiL
zwr@-*Wx$cC>PLRX5uCRJw*fyGl&v{KZaLNeiCwnX9V)z-4d?c4srL#K)p9Z%dj)e_
ziQT{~%ZabEmuKmSxf_BM<J~Cy-uWP0@{g`VI~!7!$D1-4YG5(5R|pj;_DP1gIr0bO
zylddZBIntQGMQjn!<<Pcf1K6Uu~yU8s4DHb?p8aax^wccvTRFOhuleZlhnzBvnWfZ
zn6%jrMYrJI7`G961q4_NB0-KN$|7({*Zjd9H#Q6sYEMn<IB&xjgkdX!lZMY=-|2B3
z>7&>lIt|Iei+kZ7p^xreAsw@K8?#O|H4>re;B@vK^>6fS=ph#fJ7B?57O#d9xoxp~
zPs$`_e>(+KP!f>ld@+70u3az%Fr=kD)}hNH5KIw<5b+7Q?gCk#!*U||uEHVwKPiOo
zcL@JxV-QB?FX{kjtOb#+7-{Vq6?G#-14b5Dv-754d`*)M`y+FsO2}aHqfoT;V{}fF
zl^8Sb`3>RB(2w_SY||Ak=rqt$`*`oRmgE43#S}87{vHuMIf~&iovTj8+C6DXj04y4
z)_&VVY;wH57iC>Ec_$9J+Ry)<#k!AGg>o5R?3pqdwgFc{@v*&%;)_Y_9&Y?|UomuD
z_X+?#H-?Do%@_a@?(InCabV&;T8-?EvK{H$1=ECXPqGjMJ>$4eif}~(WNm#RFuFF$
z3o<hOKLjt+ifYYhF8@Z9gVgQ|yJl1+_T(-Ia%K;4p~Rlp#l4;n?dyVE62h@W*y7T_
z??#5VTu2KHKGenR2M-XC`?V}a6K5YJ4x)*{>b{xwvm5>S3~yw4BY@>@|E#qRa4515
zi{L!?qgo|Y+e1+2Dx_V><qx%TK%9Pv+P=&~&N-{unEkjg8)*!&Kaui+H&_-IF)7ea
zCN+Ic4`H|XZC8Hg?xl6e^8v9QnXPN>X<UR}C7$gOc)(t=B$44WPIP@CYZ&TTRTCgO
z5^_6C-kS-My5!-=E%R9k6Vxro%3u^ygjA@~;Lu#r9H5z;f44N+Msgdh-2QSZv9B!S
zs+{cAY_ktaLG;!3)(j|{f_0*j!=mDG9GsZ&l{VN$DaVK6EuuFJNJN6z!`=IrUk^c@
zBYR?2L#~5^bgu8Fmmqc~+0DE7X1?#MZDuC9McBt(={_cn=Eh_nzqEIK*vGde`?zcG
z#kr&w=dzImdgOI4Q6{rr{y0?rdn4~4vp?e=>%(zcqJ}DfOmO@}H$sKD6yS3udt2a*
zY~dMQE%9=87AxVwAYA2vIqMsOx%St-xrU7e*(2Q9HAmu3RuD`A+n4$X;82RirM_Nk
z>CzUUou`CUN5^j++vCvEk=iJ3u*G^;$oQa^vF*e5zwCH;pYuYTpNQ@VDr9NLMB)sW
z%LqTG)Y@R_Lwk_IEIJagU9{l{W{ed?oZY6s7{VZK*f0^4?+e3H@sF!M{iB)_c@V8N
z;d%D@869v6$%sxKSL221o(PI2#@7xoBx{cy4<jS|3JTW@mn>S_o5o4NI=pl~c-lb`
zsFT3bCM4ud?2B?2QJf<I^IMG+E1p<~S3~&=8|0I+wMwo1$)aZGX77AYLZ~(%$DxP0
zwEG1wXgW3xQ)Eq+gFHg{Qv2nU4o*;GuY5L`Q8X&i!DH^d8R1TK_23jPS8+NdFniDa
z<Z74@QDzY&0^e`5+LG1(dSbeN9F`bH5~4`TI3*0HnY}@B593&O24+zWBpbg?gZ2O_
z*%13pwVUzCIJEnuqj_kM`_`U9$WU{<nj9z&$E@s-B05RrRz4YvAEhbGL;uB)COUmJ
zqOk>-Em52FK(I3_dq^h=lZ(UKTeL)j_T}EVXbY}!?)*qeTe~Ap)I{06K}#Yl(|B-w
zO3cW{2YCzlTA430zvO*DGDw09WBeR+55vv*p<@`C2iR*ORy_3ii3yC>Al?Su*48!)
zI2R9+sR+j@t7sq1!UnLKu=DFqC8lqHw$%RwkZC5ly^*ZYCppuLCUve+AlHVUPu~>b
zBa&b7wzLW9chYbBU`HFnuV5h;j|nnvE-h4ko&!_rzFxNYPM51$6*^hgFC=&MKt|El
zCQm2g1dg4dnLK!-s4L-YGYQTG!Tv!@<@TYdE3qGte<>KCYKYB~ZBqlTNl5-$TyXt2
zn$@GJ+ebeEV=>)?n2$g1Noze~SZ*1off9waXR{=s3cI5LCIb~(-dwnO-5c0GhzCHL
zDoVoOSrw4_1Eg#D70mCIREPb7UlSen<Qib~s<in5Q$wmGg(Hv0&Tp4fCzDlN!;gTv
zP6n^+MqPaMTeE1Ds-izW+F7;DHj_{#D=wSh0=I-@?c=eW+olnW*Wj=Ej^@V`wf26u
z#j?aMt&%`ytGAaRa?N+xCVX#*TM|^n-pJaJig5y;{IA+q0^Y$*$b=80Jv+WEY>FEM
z%iMBai*4+BySL01wsuKOXZ2g~LzdfX&LojrL)c#5B~giT)d(#1MKuC2L<y?)#;M>r
zQ>t?^!mgZ<pTs8!B&-+P5>Cfgi29B$a^gv0%GEy84mYw&%|uq`HrQBjI73x@cDz{l
zV&$t7L|qaL8AGs%A`k`J)smnN37bV1qHppBRqOgH+jMlK!)zvS<v~G0#u59JkqI~J
zj^`I@6*51GUD}9Fv+m4zA!m9e`P6+N#6i01%B8tK$+QOue6R^YXFZ6Y&7Pv&{ZHKb
z^m5LuE+|GPs!b;ZwA9W#wW+ze$vy@a#qlgzDWGStKhZYpCjnO*G0&=ycfZdztFog)
zO&1(WzTev^BMvhSuZtXtx`j5H)rO=jdlHr@YRT?PLxi1A3JDb*qB}q0FT*6MCvM^d
zIgsnt;)Z5ALzZ-v>sRP3tjEMl7*@za?K=@JewP0P4P5-2zn8=rvk$;!APspHE-(5L
zTrMuQ4}QXegV-DxP{AT?6zk1ibgaMWJBWRJZ|I2EvRc&mV$hCK-R#HiJ_Vb!Kvdhg
zx}gbHUThacnFg5>bihZkLSeZJu$LhH_?EpB0w(fbxgGErk0X1qQ50KywkPqQs^?2>
zHPoKYZy3_$oqHWIqNP>z>#o{tk^Zwk;D*X7Jmpu1@ukLLJ-ETyoh{o&?^i~Z2Si>$
zh^Wxu;Rsc*M3+2}2Y$^ctD1vzxS5`*Mv}3?N_Qr@C}Uguo;ZO323rPQb4PrLG*D0w
zjXFL&)C{$SVQd1+tJy8WB`Q<AY9fIza8A|7$PM-PmUoGQ50rb2D67yELpX{8SB(uF
zNPTXZ<^AiqusBW70~W&*P$b#l3!}`T9Ss~Kq5}wm?GRgmi#F%U)es~+5QYl2PZ!k>
zZ5Z0<g*1qUx~G-#b?4`P@^n!PncLKY%*K~EZ_gYPm5`r)49Qs~+b3W@X+QwGf)!Y{
ze?N-P$XP8M#W~OP7{w=d_Z-F9&wQ0pe3*<PAWb@o$x-HOQSMUzd-ew4`0IKDnae<0
zh7N5Mte})G-FHJ{4&!K3Va#lNY5)eg;QI*}oTRm13XFmOAu!%tZww210^_yyfYJHY
zfRT*iKLJM9dIPz=2QYrW9x!hEO28PDY{>g-Ar+W$L<;4h3f70TIPmsLx`37GL;HhG
zK^;0}B8q%wPyt)yy|ABM-kKeqNekeA^bUu}$ZK)FT&kXZNTBz}%8%@OxIcfv6|HG@
z$v?Q9b{mY;?5qmuHp1C^Qz>a!B1n4C9dXD&a%DOX^0Q|qaecNEi3)1lPl);-63+D)
z?`AkT<g^Jy-`!1-mJ{&6C1piG@9|tn<P))hhC_hm22UTHAKopzbXfwiTp0TRJQj#B
zwU{CYsL<UAK`ytW=kR10s{@qw%XA$nP9O1sFebYXiGrCwOAwu;FNnwOvm`*lWnf#P
z$0RNK$h@F`R4K!OfWY}d7x@^gAl21>;OjU|p(Wyw-n48<mf$SW&MJbbG_}ysO%CKJ
zH`Ima`!Ye?y!djb0dCvo<S8AMYVp%fYzcToR)A-+xvDSba>(hG@}cFjkc>e3)}*N7
z;;7FArG_eQS*{}qxRNSh6?zT}Zez3+(}x`&4x7=pkko?@;(8wWArl|r?}h9S15Da9
zs-8zFr7iX0nNlIR>`n#^PO9-ed@y~k(t7Ucr%O;NEQgczcLg&mv&CU%c7AKmq!DHB
zWtB@el#%-(b$WM6L8*}v`>k-9)q?Q|o07b^f?VdB8NNf(L=@UYDK?66p+wsjIQ;Ds
zq@Es}X-?oweLeFIw%`Jgc#&WOum;W(eomwWGIg7r2j%K9z4tXY+op${a?Z`t1qwXQ
zw)>o4z06k=o&s84_opHn0^-v<!>+;J<3ji(r<zRYfYlDL`fB?gES;%^87y$gxxNO!
z5M$UO7(&h~0B6qrA#kEnT_IUemC48?AUFb*%impI`+n~?I^@c+D`yd(4#oHghFoe_
zVoG8#TP>~5bjcK071=Z$5mE3{8{~^wO1O!Ja6;(5E<!-U5=)QL-W|)=FK@o=s;^#|
zuV?wsFDq~UAfhm=sn%Y*M&M2g^L4(J6y|&Lnxrsa$P~YulTosx`{NlR2cAT8r<IQd
zTIop4YL(k>-YE*i^?@r|o4iOtr9A@PIRWMAj>HrEum~uWyO!-=b1*MX<EUwlfjTUz
zRxwYJ@?aDhpHNDytAWZ-l8z!B5d+*Ge2BGf;d=0=LQM#Ofu~PMekE}H%MK<G&>ND&
z!sau%Ag5`E;&%0tXz{Bw#**HD)p{k1S@Yimy!d!6qzcCgKi8$JI69$JM8OIdwGlMl
zq+s;b|95MtqT&ickfQZ+x|k0aF6JZYVm_8Grp)`L_ORxwDD)J_qTZ730*oiJG8%5o
z>gf1YqNPHSHh}M!Mf51e!6Nuid&ryDcV7&BF<%gUOJ32!_>HhQ+UXlVHNqE%p=Q#d
z+6;2$)6ptZs6z66e!#*K8i&S~JHynr)o+4K_1hEpI{bqENFrlhueeHwiy|8ktl?m!
zyZ7E!_Va@VfzFP17mp}IB7$?js<Fj&gDnzKWQU-%D5_CvKrXjOBjULI@4={LihN5l
zD=-wAeX)HezQm{f=K@zO1G)6iqOprZft$+{qOG%K4wLvy@oJq@1qFQfn?d!DIytd{
z-=A_cq@cLApt;B{q&4n7=A;nkH!<j9x`~jKAm_RIjThC9l=WkHgSh$O=$V|lhXxKU
zwBc}GJF<!Rnx(Fki@FgI(N~r$kNgTMMTsKu(o^*&l1T_8H8v4=g&GD!53&<i6HAX~
zq+^FNE?#wLDW*cgJ9TmsD^qP9$<x|D-8FvFnkR3Go@m;IQ0!xKHEkHTQ*N*LS8WL_
zea>YQ)hB)Zi6h@h0Cw=Ob1tdJ)21P7x%Hn`G8Ek|1q%rDP>s<Fdts8#0JTKwq}?<k
zH52BgsZ`=hU<*X=ZN*d?U<$nLH;k~#9)MA7N_njHp;|^&3Y9rP+7r$p)b$G3M>S0#
zyEMRRO<-st53C!q_rlq_*hO{>Iz0S%h^%{aFkxZ1w{xa6MqAsbn_w80Q7*M8F2M!S
zHpOQ-QXWHK^?71*#_Wn|pvL|lI5SM+;;^7>N!jVZMc6cN+$b9m`Ps>+xGh7Ga9pew
zS6Q<ckVJB)-V=K<%YamANBPjjzD?o2OI&cn9<E&X1a&coD;`^6jFpU@@KIud<un-U
z^(L~)e^=$oEF!;61DzT%n<c4o>1YBzc_AWv`}GQRfKV-DWD+0<_>)Vq+Fn>6q&!z<
zi{8cj%|wpI^-^KW9UB;o+0RFyW7pTX(VApikmqY_xsgiX83`-<6M!~xjw-Sdth4!2
zKF<k{!0_#sU{>J8-*1CiF^5^lZab_oRJ2`%fkET0LX_0jA{YwH7^i|^_0DnFmEp#O
zs5;ofgIG%{6_3|qkJ;Se>lu;yMnyX;@hx(Na<Fr=JRj-C`$aPIo*R$p^Tw)o^L6aN
zT&_^o>+C4=&8TX3jc8~R`8_8ZN4FjW6ihA}U$AS2VnQx83%Smbjv&$6C2AaX$?C;N
zB!c;|BKRT?9{9>q;S5rIp*=Tgt@C=!L3fPcS|FU4^cXynzU$f|oj6(lCG;!7GFYs%
z+$vcb16Uw#0Vw2!YUE=Yq9I{Z2-*z3#z*57@MOcep2dG9lt|O)ZJ`W`6pBm6{5_|$
z>Bd!tO@1$@v+$$JT8NpEtdE0doBm<^ZzX#x0H39FGi@7IwNC9VRYPN>ti%Z_BNU1+
z#BF|Qwf;i4tfqrOxx$z((Xq)Ac|nG_od=P#$LRxKvWq!m!_WP~FEV=kW;kKj>>grJ
z#r#cd9JLt2t1tHHViAD+4cENH-_2(KzQ}nm6b=M?YOvrg#pDd(ZuTfwsL)%hNPa9~
zJ;y28jL4ob8qe5h4C4@T2klJGpvZ307-~WeV(3?b9{a-kq91ngD*8e8ZzFk8&c!Na
z7G?<l7#c4OAn{$~oAH1o{mqR7Ea7Vk21=U0?*XT4N%JdzU8G{&ko(T9GWqS>fzpS_
zZ`cT5KhaHuMRpTrV`++1N9l`^zLPKsMw2b&!9A>~C@RVo9mu29%=oObLLWL%fPZ}1
zyjX2)&c9CneV2dP%;wp?eV&(y;eSjIUeC|$X?(L^>)UN=Aj&X?N4HI65dvxh*~tLP
za^%u6L!<Ih^|F(sHTgrVBD6HEGm&CyF%mt8!rB&0!Q<3&i<c@6ov9zG&0dY+4lsY$
zAKFq6adQl+T?l2N{suqE|M57M^w-kxtI^%#-7Pgh4ihX@>W9i0o9&VvrKU1i$V1~G
z`hSPUHy?`PLHl6S<_^{<BWr;UrI&I|L`}<D&u!uwXVU8$-~Ky%tHg~c^3#0}SM-dv
z9tz5}W5QGY;(vGxv~_xDi*K9eznu`i@n&uQ&7;#dKTiAJD!pRIrqBPc_d{DJr)_<h
z^z&)*`IofczUezwp6}zxe2dIW22on74Bx8azooNJdh4EHU!Ofzbv?gDzFk^V0Bjwx
zgKIr(x{C5Lf>!_d6Tj0RDCh~^Vhrl9I{vG(5w3hMKZ26<p7G5iY)SWA%MQmj9e?1~
zXi^lQ(XvYqKr!0PTl#xoNZz*cYk($WQ-4@T4+|{~u<4X2wQnL~*|$5e-H%+G&9O;7
z&V@a69Z28n9^!u3L)t$x`S%C@eZarl`KNv5d#Yx&wu=ARQhTago2X6Sw6U^v+_ew*
zR=gR1q8D}J0Io&)Q*=K+V;$WQpTwU&SLly6WuGVXO`Eb$*pz+Pl%q%K6`CVzEclf<
z?`a|4#~*<CHOQD^(nvwUK1RTAmiS7pQTk0mD{Phla2K8_&2B+ZmC9r|JB%{9w{`bN
zS#~OPH7EjP6~Z;@0bOoyjtWq+xE(6`_cc7qcIZ%j>y#k74&Ps8IH}hqUG<;>&$c@n
z3eA2?5g$IVVNNeq%oIfdcWVw^OUa<4((qxg-Wj?NqOi)iRW{?WDUVk&Fu7=RJBB@d
z0Gqdl9gIl4UD(ryxHMm$|Ct;TZKK2OgHlWD=uD0S??I>O5c5WlKHqw&%R3%<W?Qs5
z*`=!$Y3v!#`Hs&_MWPeYAT=XP#w5omLj@$tm9}BVz$>)bny3n|9f|0Q99Px6v&ny?
zL9568U1x`TK)^O>7gGiBZqg~UExc6lQvC>t3w^0FL>wyHeX(ya#%TMH%F8X{s-d+u
zttEehV2DuDt6jATlCR+XuZq0G4n?kzpR-<{xIL4yP97v|<Ad$D?7XP|Nm11`bb_fw
zW>dZ}8T-NVv}qc4K$KwtwYXI<krOR*dXqHT=XMGR3$4`3tqbOmI9CU*N+L-x!E@Tj
zx|qDije&l%I(BhI1sho940W8;f9@~-+@Hd8UMV)I89wg}*=b5BB-D(26JCg)hUqE_
z@}*fS;+?S@GmX-oNRrUy*j}6^o}aZlSc9!@<O?~s<=^6SMgy7&f5;9G=%#pC3nBtI
zeMct4BveyQZ-<9z_X_Xqce7;PQe`(mJH_pXxW@q0j59;!@AtD8GJ&DpJgZ}EPOs7U
z3mBmF?4ta$$&DA28#m-{@WSTyA{8k$$(v?1B}D;VMwD<H!}BUUi6PuiqR1_!e6UR$
zN?k}RrF!C(86>*^4o)ob1+n(l4sUCL&w;_bK`KSL{fi#6HDOrSs&`j)73Hl*G9I`p
zEw?hxeW>aPWeNhY-=p1Z4}_4+`lvcW7OEA3J=O^YC8u{A;m`LGNTHPBXdoVkX8qj?
zkro=DwdZv4>`v+mziDiHLaVH{4bl0>Dm$xO$ear0lqd**Z%Vt{IZK?VHg&nF<Rr!d
zwav&-E`sgC%ClQ5;=_pJQgg1MZWqX8?HN(^(NSNLd}8}XeUF(8v8%C`bNw}@D9FjW
zuaF0Jh%-5Tij4`y!;~R*Va}5Mb_n2Rx2G>>Q=bnRi0Rc!UH@a^_qTR2X<67YQ<sm4
z`i%<}1xINJlR0udN3c3~sG%x24OosdWQ(hP=E@(~>}Y*ODzYtEd7*{}U-INP);c)D
z-foY+2DO&1+t5IgX$M^v+&BeI#VQp9`4Uxpv4q+QxXa{oGSu9_e2gS{2}XUC1X*dP
zVC&%Kmi_gZXq6W()c&&?ctd{bv&CCFTD4uCkv*7!edKoJY9rcR%T~D2SFvZc(QnN(
zd!P}mX&Xz+z9Br#oH;yR*<)_$s@JZ_Km%yX&c#xK82EXSEHs|tj~hqRgedHhSl0M{
zS!9nXYKI!Wpp?{Yw+j{oozN|gG|i!82Ry8imuSmwR~d?Vu8wv>amhACqxG@c&6J$u
za*(u{Ys0Ux;g@nd?Bp&Ve_O$9S*50&#N|?3ryYm=Xstgqui&AC_WdaV$>kZ3a3W2r
zHIt2yY8W?k`0uGku?~B?)Q79%Ao?^SP4p`IxcaaccP0AdMV<KXqUZkS0OXU*QTpjp
zjszET&Ecpqf##=4`yt)E+f5m&rpO-`B7}ldOYTeYQGLqWl4*}e_|I_A%RsCghYyVg
zV(37L6U_DLo0c^S4W)k2uhfA8TvQSfC1fZ{NGW*@nfS8MV|9(LS4P<*qRbDX(r-lB
z|6<iBETF%Q{3%|lKf!59<y|SP#fR&U6p6|HyH9*57y2|#7vUwuNQUJ(?#82LQ5jJh
zbL!(ALU)kc8bg?IM+3AHafQi75lKz)rFvb~9bSlY(-Vk@>14(e^CU2M9dZ4%M~gT>
zLRW&hv4YH_=mzj+V&GDkOawUn4vyk!5;MT4Qv35Pam?7}5mdzmg!y;LNCC0|(nop&
z-|CFYn<B`=R(>Wj@S6jEg(s9~Ml_E|Y^{@6a?wY1L?b(+ukocV8Wa-$U&Q24PN`2#
zR-&RTzm#x1FzWl=MpBe8(y;b~4sjBJ#6mw=LM$Q(w0-6=wr>%E)+k<{wQ!L4x9s}X
z<zBvr5rs=ggq+ZjJkuF>D1`|i?uR)LIR|PS=17_EFh_BDxt=r8R*fPRX0I1D@Nflv
z`HX~_P(A@060R@yf;Lxa{C#~ttuf{l^&gAlIymv#(MlO1Q{kO}*rDPd&rk4GuyGhy
z@?&{!7S^W}-eD}=@UHjy;s^IG84=E;0C#N2G^R}x_5i$-#2%2F0LBf+yoC3uMJ-&M
z1YT7my+c(_Qu5&c<C-YkNQ+u(Gbs9hR5LImT(gzj`vJig?w0P!@D*7yD5<a{Qc!K5
zm;w%yH2a98GHh@)!7i5SC$i8WYDE>|GkHINGsC_b^Ej_2h4fGg$_N5w6cI$v6i`YR
z$Z|8i%ORquS8+`R(MldFHENzf{ePdD9o;Zr8KG359607LOEF(;dSff`5RfE{RM@eR
ziLTgSqDnan69r|S1ZWzqcB2MJ&{bwabA5eFRJu=;*@<|j_+c(<Gb2qyjN;t9bc9Ph
z9D>)sY=r;gBlH7j(h+JWUFvwjru5YaQN3H}SNDRzvl(a<k;bc(JYE7^-J{hd_lJc|
zsR@YVV?W0WA=uf<Oe4`pB!Y|Iy1h~JP&nR-3>gR#f|PR&0yZ@?)^p&oQI?!zItcS>
ztamfmQ+)$_x)1i!D|^~NGfy@0R6}>oeBi&tiu_NvX723D)pPx^9EP;w3&hN7^zA8q
z8!6+ORQ6apdLIZn^XHF^S9_y$SK4}XwXTWtMfd22wDq9XJ0rYnPhI4R_gRW8#7<-x
ziym;80ruR-l-V>D-%`LW2v7k~_JTeU4xAzXO{hWQX9!JI^%3nGJS$q7(u}`?W7M}$
zF=wzM`+Q%}uBLo<tkA(3EC(fxIq{;H?V_C)Ndhc~-j>Oyq>Nr&JIFt2B9kGQ36l&V
z#eJ-w9EEc8lyQzTBi^6*JEF>v(oSv=V!^!$YE@B&lN(}++A^n#42%?|;^tYn5p{fg
zzo-ux58AF1<*0C7R_d*f#V<#@YMPB?8G$CC10*_}E3>&$E0A06+A9H}?BP{|)c<LG
zxtul$V~?qUu7IY)<vQp-rA8DZJIM{JNsAm*lQdYhchcY|S`!LbYPyJ*G+dgI{xA*s
z*2gx-36RF?a0=tyEgdh!$t8%gkhq3^6MAJ9;?@Eg!#^qQZO$1isH;^cV2FV?WN@|x
z(}}K1j?vW|Re0U7z)A^QxR;S_C&_nD!W=dWeTwJ@CJ+>-Z2WTcb;h@u=ooPfuN2XN
z*O2?V6enKN4Jrr~)yo1=SVB&o(a_Y~L{yj%eZzT~no+l#p)Vxy5zpt_{YLCsMA9w~
zO2I2^SJg+-b_1VsZ;d#8ARdYqkSsD7fAMz|R158qWVk7qO`=3O$H(w{BEJ!#q{lk{
zO)jx;!I0#?LqCfWN&b6@h%<hGFW*o#lsgDYb2>@q2letoIK+x#Tcxr9h(C(|P@}F`
z%hc{GA!6zlC$NQB2VYN4?vv;QjZ{4krRbxb$+I8xmDCE&RK^_7=R7|h73eX51TObw
z+(jg*q#o+J3X6_W(R3E7+TJAS7}V6n5>p72Q<4BY`x&awNlY#XtAg;>W|sJymleL5
z`mDU_C9mE!GpI^WhlgCTqEV3Wu9;e5YIa()6nmb1aKmnFGgws5o^22E3AzZy^3Gr0
zpxuSuquFajQj|2wvzxJZXX4)!-(XF{95Yt7H2&DHEJ=7?^za6eF7HaDLb4{&PL84A
zoVY$3s}WJRsQYkqQmvJ<sQhSc&5BAL1kOq*9bqsMUJ35muI^BmOITY?Yar66><t5(
z+dPWaj`Nz1L{oR~w@V$#`b~=ZAI8;i3|fyc%JUrQ&?kra>SeyuS+D420Qv_E!`;Cl
zTFg?<pzmko^OV}L;^;<+f6_9v_#{?h+-z{A6GI^5%Zyi6wVi@Z&}T;3DxGRB)S(~?
zzG<7G^1Kkqrf48`9(-6u%lR1u3HRSsMpfrTegCRvN`g7Yvmk&C=VT27s0=}wp!z1C
zTR4^L7{&OLCow_&_wYJu)m49lh3SE<@`n3b|MiUe5TQM641{qijOkQSAkO8AhG|NS
zqp9~HLY1{AzHpwAbla4UQJi2SV^kh`FJt^%qPve#@dHHV&dMxD1pt09pL()Sd?p{s
zJ?w7YF#Pjo`S3Mt_j1>e-IxN@!*lM6GT)AJJ2neP0$r0E5`W3*ZHztul;~L>tTQl$
zZ)FeGABz8k`}xU$reOaFY!?*x7)n7~MVc1+tKHKZM*8}C^TA%ou^!iQ`Z3Yon=_hI
z#F?w*dA3tLe}zdC3|nfa;K1Xn4ye}Ry_jKD3#NQSm~#ALn5c`+-6y&wG<~wR0Vt+Q
z7>CkNRa8p3>VS4T#6edjEEZu#gNP@4TL-Lvf!*KNP6VC^ib3uHGr-fneg?^af{SF`
z%S^*K?o5Uy!8y~OI{qB(yGN<1_l<J0)3YkWVr=En)ludM(S?ijY?!(iUFaQeUzt_k
z8NZP96@@cV)aqauHM=Zxls=s@6toX6y9sdyby2@UA8)D;>)V|6q8YI*sVylD1)UJ@
zN*LYxF@FmsYlA#rjS{My@Rv}+wfUI8E(9adk3a|^A>xIIY%+GH0!L2*IL#FpCxEG`
z`#e~;8w04_?()qiumH(7=b3iCq?;hzd<cUH(v9El;4mtlw-0AFCBjYz+$0!k)6P?A
z=Wh3|aJ*Kq%+*Gl<$lO_l~UL4Ooy^4kvqSi@ZO1`uE5amM!5r{(kt~>GYsOxjmg77
zCquU^`+@GtH-dzHE#E^rdc+!&UE@6Rfz~XpDuE0SIIM;sDv1tYaYK-PN~K|MNZ>Jd
ziWouQ|5{W?;fX(DyWWbGvS*w6nVb~;=B&WH6krHDC7e20G$Knj;0F`apzd^V-mZxM
zdN;flkorC(u=7OsTaH|VaB!06s=9$D-Q+qR*6Ki0CaaoLKSm@*%fYHM5|WB`KuK1D
zV-$w3si<@k<`<;yGRjG1k7Nf8%-gUkta+nvR}a(xppe<~<qj;%P&dZ=)ah%?o;%UO
zQN?-mKqODljk1d7OzDYI{IC&7lJnY08q=g`Tdpxk4KJ*Ih^>`SDZd%#8^m&AsEW3F
z8|73m8=nTOx1z{Sc3&wz5<HMzoe0W7r-?!X2gt?J*X27ZIwTjxkI`~bmBc|jPJ12T
zN_yu2kce=noop+eRbj^<3d<rz{v=BR(U#hb`zx(jxW9{)$$5v|csu#MKW6uDGu|5f
z!TyGQJ%jFudsYd1yGWELdaG(K9qj~9TA=cCEQ*3MRhi9mENIRPKWMze9LW!nlSHO3
zjV2s^0fKK!7z-D@>dSWmHs#4i*-pH?ZIc_JE4M^3CRpVPwBcUWd92ahj&@m_d#Ld>
zJEL(I`JZkz-osapmbUH+{X)Kl@D*3><vkBh_ik6aEAPii|Jz&b$;)o8w|CpF_c%CF
z53gl|$scq#r#xkFw+l_yrP1PZl=phGZ{K9~s_eNUxqp}76T+GzyOB_8(<`IR_EgPf
zM8Pc`2fOLg%ODx<6_Kw{vXf7lNC@W)K4;(zEzDs1M~HBTp`y;fg`Xu(z_oG;5HXWp
zQDSPF)JW4Kq4>*3v)m=lT3rI#20LVkekbw^S0E>f2}zIlo+JYYVx06uw1BiTsET3;
zaG*d67=UO~ay?Xz$G5~|3}j9*a}^RLf@Up;w+uTGyu&X(_>O1`mvwTxtuMC)n@}pU
zNd!eq&*|X>(YN$LkU%j3J?d2U54Yr<4gaPZ>C7}~_zn|Cr|<|Y1-*BWFf(=d-vSp2
zdpwv6MT!(7GQ1_KrAne!EFAqZd`wh1)t5wlRZNH~FXorn0cLHLw3(B*;dBwHW^tq9
z{*L1W4d7DB$&9=uccXSZ@Oby9NFS;^e2~VJAPd`~rM@xR!oJ%WZK|$M^H>&7=%2S9
zmV7TEKI5GvDby`s$!5V5d%sr9aU)@uD`Y28-xG%pb+PY|wsfgLt{v0w>n+<I8R9fF
zOph7W>pFs<d=xU`wS16^5S72J)VPK`TRoDJ4YPPHq~$J%7gMYN3<D%lIXKOmW217s
z7E>_=t5|O<Z4&I07=|zs&uhg@<c1@1ba}`wqdW~}BDJKT>k6CWJ8Xq6{Dli@T7Hmr
z9!}FbKRhJauVjQLO((;}ZFDLOWfTLh2#&uRZ)p*O6j^12s2|zI+%Ff8>VzTm*277M
zCOwdPpY)Kmi(09#&Cb*?*?lPR_-<sv)D_)s3G={*2~erBE7uO+*iTuUD5`?QX}TKO
zx!rSA8hr2Iqj-<3NkxYxLxDsfSr)T@Z<|%$tQ}urh;7Lg4*@8=;07nZplF=j&K^sx
z+NlZVq!i*cKqDg~&kS@Ss-!)t2^>(o2U8ef53`U-D+tU0o3${%-w>Rzc-eX=Mkwq3
zV%`g)m>lE<H<W&tIHpK_Z_jlqYn4sZ(&Ds8wX*^(%K7**_5>vP9iks6$V9ZRCZ{7a
zzR$3f7wCK22Fo|y+=k;HdN;(O8RwASvxgPDA{6g_g&c**j%@4f^mmZsSOE^GsZH0q
ze3&CYHoaU^eB_E0SG4zW({B!Q(8>&*n5+!0^*oY%aR#bE#?B&81tj_W42d^9?iaH5
z#Tf~%w`Vge)N9`M32ysxpOiLA4IVdD#uX6PJ)7c5E3@0w=$-8LHJDtfBS0~^q}#f6
zlzo~MZ8HTBjB{{9>PY1IY0qW55uDjz7tjl_FJV)3&r}^P@xd*Sqf}eZhxgp1WX|t6
zz2#z6R6dRH@`_WU>;y+{oYKtMx7}q4ZIFSNGal3ZJ9Ki=2ywQ|K-6<H%D}Wm--aqn
zQ#g=CMt=ly62c;t>js!u=uBY@f!e~HB3x+}Z=wkc=Th@)+B%^-JOk+jRiv@^pBH7e
zjrt!EWe$n@-xc*EI}FXWl_!p=ncO|~{A%YfP4+Ic<D$ylqH>sn!0e@?p#ZsN*)iP3
zOHhienB=@r#CrE6_W2smdNKy$vCveWhqKw3aCN-C2V;RL5F6&NzZ4bK$F1R64s$J$
z3lm>fxg~MwiUKnnjm>1)UP*4<5L<(N7PI(}#4OHyQtWCc2|RmN0-T~F6VMY=6o4bx
z^o?qsQf*^w;EH5-Bll&j!H;|mKpD(qB4gzwi-IZmNjo8RiWXA|e4ki*w4F}?AxWQh
zjvmxEC~o-J*{^@fnA0a{)vtYw6cw(Wul#zy_6fq5^2MMH`KFS#LpqkjZj7E_o9bgf
ze;VTApNw3e`QH6khb}d_Ktj9!fb{wRGOB-L?|`>e1V?dP8Im%qLJg^MyCoDm0^nX*
zO%-+^>(<tqS=uD5tl}qU&$N+^S;Ut1?ZphSaVgG<2Hug|ZaL;F1zynu?;pQng-R>B
zxDeb9SSM?uEyhRH<D+5YqfPdqbJZc@{0u^8cE>8h5umbXYCA|^3R_^jtKh~1vNcnH
z8$_oP76nv1dOlu&WE3LopMz&R1VZG!z<`&@0mT{2{yBlXO4<F)?jrrs7a?RWq6hlr
zzJ6EUgs@f*Lrub~6Z5Y=oPRaE6qZU>(D2S9#YrQ?uX(Rj_eST^SHGb^`vDXiVRf2@
zl8vF#$LW68HV0QZQX?R)lmCK@81Bglvs}+?f_e%=DYZ{#%G#R20@0Xe$R;+3zd^tP
zt7+3j5M+=f-D<JctritrSRVB!lN+|jYV>ErG*CrObG0>k*(ER;3yD6y+{aH0aJD%7
zVeJIp^4lFo<yt%a)X?=wH6eX`k=z}tAO5nRepwzX)TF%5(<od}(NAT2m+Poat;@!)
z!g;%&U8t|m>rYPGr99{TK)UoJ9SR`V&-PqBw(t6(l$1(f_s0Zww_9V>KX-y89ckk*
zN;Jj<iW0j66qOMN6jg~8Pz6ZhuMl{+NH|7-+>?38$rxL0k5W^cZFhP|>;3gi3Vt|1
zskN=$k}NeX(xxE)gul-S{i&t?6g-4NCdmVj=R0UnQ|#3T{h^@Fv&HgHK9+ydJH;Tn
z%%7BfQR-RulYi`fQW7^$qFOM#@T3bmpm>S>^$gtFqoPfYPC|5jhYyR#D7!5CBdI15
z+kny>!~>e|5RL8^l)+k!i>9kRAw3E|nb{z}4*j7C2DM2>p-2g$`R-QjzCpV7>jar7
zg<QD4#8l`fnVWvK0M(T0Qyvg5_*EPy2&f=x`DoGkO|bM3wG?!y%X7mJk%&{qe+q=4
zqfDfnRDOPB{+{a^igp8JzTFuX>Y+T$v;(=pO8XLF)OmDfMsVz>Yd$NVt*`Gge=WT6
zI6G3+H6EVnE(L66k2%<biHhU%1R8%!9xKDI#Ctr&dw?>9oj<TNKN??aO65P{4~dZm
zu%=Bt(DO+WaG#_ekQ;a5fTIDn?H1J$Z`l})9;ff4C+TlC{$2u~l0nV|qz@*N3Oisw
zeEaCfA|+4)jXRIqj=BJd!!h>p+m3g_t+3+xpWO5s37+Np4Kxb7FfgaEJ~uFRawO~@
zFq~SuAcMUJGWr)Vt=!IGQqo3jjC8kuInPqEtv##-Sm|rXuS2oyC{=^GDU+rf4S4j@
z<W9U&$9!`Vz{J?LR2c3rUET{)Qxg&(Wj>sMKaIIE$LVyX;CQ97e5YzVKyB<F6xhyf
zi3LgBtixc{r1w}=*JV0p2FmcEc^<(ruDD#7Ulosy1oPH0a!p+A3eK6ST@=WPZE)gL
za=C_G$&)izYujb~h}~Vzj=YKvX!1Vw(}Syg7s60!t|Yk1Kb#5f$M>>bU5BEt3zEJR
zs)n;SY*=jq9B?uY>tvI@vW1?m-`x?3!6KYD^!UEf{XjQDv9!$irk0=r4NdT+T^y_|
zvlJP>BfFGdz?mSW?e$PJEb;TNL?Q@---|Q8BA9d-{IjRmBaLS{;j)|B+|KQQBS+9h
zYJQT9K4Vux(w&nvC2a6*I@GusmzVoHEgjZWhBdGW2)`^Jg>%=JXQXiri~1m8?8qr!
zsF8O>JBDbv5NRkjylRH4a~P34Uu;^+KAt5cCa{nCG`jF^4wl)9{;M!yJRenkNQ<K#
zFer{*ot$!0P%ECmEIQ0X%)DkGAR=|8_-&S)++xS~^xWqsekvPLl`SjQ^0=TAgd9-}
zL=$@&^q_gC6fVLjBW)x!qE8?|56$p8RON>JBEkg_W`h!>Ad3jr6>y55YeFs<H0r?`
zdy45)wL2NRZ$>yr1#4d)5rCA>Y$kHxeczvd+j-Y!lq&QmmEt7AF(CiseLbJ#tgsdS
zq)33wTy^;;@9p^{L7pr9$pkmShWw*<`=d@p5o!L%AM3$e@9NnWy!B~+DDc(^(U5#o
zcl3Oc<nd?y$q*Y~IFltkpJXP__30L)(Ds~3QQkwJ_+tDgTi!pJtUd{C)yLm9WN|J2
zm`hG|p3@yTXIpas_|5swB`Yw>u7Xig#5_NroAM9($}q}R|NoCNL&<jVB*1J*!Dtrb
zM<d?KU|#Jpn7%&g1Z1fII@JTz^HQH{nu*AnbCE*IQ6dcta0NooX6)Mp+Z&~6+fMI_
zYL#Z-XAq&zNUDjQw;RU@@C=0V*QX(6cM~2FFK5<JcSK#4!twK9lunp!j2FU4pkj@9
z@9JcY3t#-!o#9rC-$HlMEywLfosPWWxBWdaipN%}dmYS(Zu;u14*BEp!&Moly%HbV
zLgkMNJ6q;A3XnQG5<L#Y@zUh;ri9##V+{7mEZA^=JCAj!<45=|G9o+PM}hTeIz7!V
z<xA4qp#TvYVJm*BaNA#S^toJ074~Z{F*6b09wOEQETS(A&(L&NJW*Dz$NiBN`1&a5
zUF^CgH&MJ-tf0mt_8*xUgAsG$?3MYi96?`U2Wo<vPHwHdK$lD00QRgN_A8=g5NE6!
zW{*|nSn-h>6_&2?vt7{cPvc}OyAGKLnnS9~X_<CZ$_lImQgt(Qy-*<LU#VS)Qy{Xx
zqtwgL7u3)@89=D!hd#Oy7)x*z*9Q7a60qO7a>dG(-Sc?rDO_6n`aBR703ioMZE1~^
z8sKY2Uj^4)I6KAmYiQQ2cE*L`U<80G8G{@f0Sc`D<s^OZhAf>x0$UL;P|1^;CLqe2
zvvOGUv(|}@hr;KU<EjBsX>MzRVOh6N*l!r4BrF!&IejR@YoC(*rSGzhduSuFnb2|z
z3XotJksL}-M7V0h2qksUq~L?-$f=E->B9G7L<N;cEjfs5WAP1O;>y3O5n>YyxS5uK
ze1y?W^1+1bv(uA2{6rG182K?NxBrtHsn|S@R=Gyz=D|c0NoLf*IORbC+|7=~8(*t*
zKXk7YAo;+tGn7_hw{bQ)$BRRYIAy#+KkY)0I*jqrMDCg73!JyA>Gazbq}L~a%_5u1
z$V_lm%|uTBuzwb3zy~1&&!l$y)MdYH<;v`qa>(7+qXku++lO63TR2h+tuutIuZXFS
zplLtH&e;JuXlJBS&PZ>MYz&|oz?C6n<upVC{K}ClbV$K|qOaWWM|I;Y9`%>~QN4U>
zJc*L>o_w(0v%NJtiQ|=FG%K<_DLW~<T%D1>DCR?PQbF=0*A=-VfuZIA#EGciceyb>
za>;@B01!OixmBQzY;%_YT$1Bn!sVqC1$85E>}i2xCmbepslpWY%hrs_me)r8R7ED7
zy4ihTR=dvf6Gpp+1E6{15=r}cV@*31c<dZ@(^_{JDYb0_lnM2C)y&&M%a&+pg9o`?
zh{RL^$ZbE2tdde_T`6Z3cBV^pK40*cHn+cxiH}o_H0>r-7Ha9tEU<ZZQGFUYEyW=4
zGI)M?wxt)FcTO~q-q!L?h283#9y_)!As0YWpte{tCQ{=BT}jWV>K-I!6XgHxcTw7+
zR%Lt6ZB$(&eU~=Hr@Ka#!d@l!+#HF6P@NglSIs*6$UufL^$S->ToPm&c>|L{2v;#A
zXr<q~F@H~in-%uFxlp=22Nv^GRc5l1<(orSOF~z#C0#8{yIR`a)phyiG>l4nrJ$<?
z`FrZB+FmWV*V*G<C2^kJL%epqd#~q*D2-o3ggnBd1&sw^h%YBYT$B#+k?tX0k#8;x
z@$G`HF3;Z!&{$J&@3J2EYV4hYd-DtL*}GwYTe-D}0kTPP;()+8bQ#xmUYi~)i3{-?
zm;RZ%Gd!T$tA++^*Gtp2p42_(v;iChu3oL0&N_m`+z@HbDX50fCNiCVqxE!$Te%zv
zfx_i%x^T#_Ks(YxR*qPK+WrZbgWm3>@qF4zk(%d0>TbTt4K7JcNWX=k=Ipwt1{+X3
ziaGU{S+(5mU~qZr`y5G;1MDs;BWCS6=M^rcHL&}WFL&g|=BNY`x966s@~%vUdnCZQ
zGXc(TbB&~*p#!RxYKZl^*&)FEku_e(1z6rZT`E3xuyRcf+nc9*t|k-b2?BT||Ht+E
z<6^qL*tKd$-_Wk~;ilzSV!M}>i|zGXq1vE0g7R3&nZa&KPJ_O)EByww8T}K2s!s~I
z>m#+GQ4l$~o2VBXv!LaIQP=g0;GN*?V?kA~CvE7fy~n&%t*G2C<7ivI&9zSNWs;XG
z^7Yj3VCG#CjI=iA|D*0q;OwZ1{hz)y-E;3uW|CR6LspOglYpQi6TtP!B=YnR$^;Qy
zU|3W{GTAqnun4kD5;heQwg5iDj;IMcqG4Z@Ku{4SfQkwvpojwh@2^hxy>}*)5ahl0
z`8+-!a;HyspFXEfRh`;SRk645KG>t=MsQOdV)f_Kj+Y8`(p#<iO%B$-spWS`u=28a
zZORnvtG73uHGUmbp3|<4MvE5K>~vo<p(>%Gj=38dziW(G6NN=c@@|{&Z*R^J5`m*9
z5UDxH-k!nq_`5s#LVhy#0HF&`-jN;=G(3$6T1X%cn$4!^YkEWkWzj&zbEpIMR|Jp$
zqof-BP+$7>^VlE{3-X8{o!>D<|5SM3kDjaWZ~+DW#0n6KOX+SV&Pu&uYmo?Y4XVI1
z9uG4yTqJZzjJodQ0MRyNFwpO4ekJ2%zuRCbRr^TN!pLH=E%&$cUnPFgUn6PJoe}&>
zh#kh0l0d7`X0!ui=eeh%3n^VhPu2<l4?N<QYU~B^=~Dkq{-$RRS4?6T{+%zx1mCJW
zMR<n5^#*ovBEl!f<2m;zvfADLx<EN82{lIrshq~+iy9RE#yzZG&&w~>ggihvL0Ca{
zIfRVe`8et3cW)QFgCg<ahRCG64d@cTCPqg(O%}JKd=-k!QB_?APCD|bFfZBr@Wu@B
z@hNspduI;ssM#lSV*~*>rA|Pc#vS>t76*ZtH2jjLYY2punKL^C$T9v9d{jk*2lrag
z<JgstMVs?a=bL$5wV%wUV>Y{lr=@pNLRG^M%jM}E*1*XqWD&+Dt-5|<-2AC{*pzrE
zj$KV@uXwyyqlt%g#=Et|<8|=rVU~@lDHaLSK8Viot=(Y99|x970ilJajPrP<;98XG
z0td+pw;`d_g4U96vsZ+X+O!S8ztMgdOt+2UG$8?@)}~c(C=4dAv=SQN;m01!g|hGe
zYe5G=dtA5=VOzTp!!9{T>5Do?^Wob5E^F3`cR{dw(>E8XWq@X|KyxIZnH4f1lt8Pz
z3m9lmVDzClNWn(9u6!9ma1t#Gl$bw`yP?3K&S+|dDiDLEz-4bCkWrI%ybWdVv!Pya
zZhz9luSzzA6oi~|(3bifp5w1UYKq{j9T~?*Gf*LiP%T5|F9yxf&DYgPmx}C_m6vJg
z939CItfP~@hPtSFWQQJ?{<)8ypvnf~q9zc|J9Fg9J0d)Uegu~g$Ed7ep<_~|QxGVc
z;MUHskW4N89K<;SM70@;fvb|?^X>{f>F`L6J?{UvxEg1(yfu>?oe3_L7-#p(N#+Z`
zQo9o*bTd6_inWWfvq3@iJ;=|qM$_AUgmV;?-)Q$`uLqm;s$>nfN5jdZ!-I34=o4Kj
zQXtY^5slP8+AWFJ!;gLaTsSbfH~CY#(H%_rkFI&rFdZZp5LrQeQwN+Haj*D*%P^2(
zC-$mQ9vlJ`;_t$PP4*+<EXR!+HEy0M5J=fhQH*FvFclx$Sx$ApZvf8_`T=NlHn&6E
zQ}+KtTjxjs%Rf9bl&!~4Nouc<gRzzn(l3*#`{H;2X1+!7kb{6BiD-0YoLqo8c&9Qq
zB2N4XLj{oLwNq)JV9M+^;enmQRUwI1VF<4!wUFw4?44R0?EPKNk_sf>6KO`5ceRHI
zq#I^;`fK(RernQHBr=!&ZVLUiwJKmcbHB^Go0H*;pf3Fjd*dbDKPL2ZjrX(GmlN$S
z^b_SKktu>ZB0$lRcVlg&S@N!42n{>Bs3Vf_W`F+MuBN4gD`rDLs<2A7ro*`;@{TJ2
zJy6`g(Vlh<on<@RmluF&FRyfK6BY=4UC&|3oQotO4s>+(AkPi6)ucM8NRAQ91I*4{
z3(cSpXRPUKQ&@Cq0&*$l6wNQ&u)-kKZ*c&U`i3!p^nu6cLESt-cifn0S6OFx^B42{
zP1^Ow`)#FB^MYl*Yu-xVENc%H8qIb?Lp~gu)cVS(6Qa&IVdyaMT5}pgS{^O22|^7n
z+X&E@AQOGenSRQ<AlTaO+M?{!xgFT?Sfl)2a_dd<<COzi7w_!7)2`1PME6aepd*Yw
zJGgK<mi!!soDXK8)CB1CQ__0)@|w7M4s<gIcH}FSu33JaBLg_nsHhrt<!NBZbYO4o
zylL+v{W*UUJ*4iL!0QW^X>aF+Q=>>iTa)d<hfvs&k2wLv`rlmK*6(9mM~z8O_kA4V
zc7!_HB|3cua*oH4N_}Fy?WYtStIAjbNmn~hBI|+H3H<Vm3+S%O*eE8(0jGK^tkq;@
zv)ieooPBR$XDep8=Xp!DrlmgA<B~XmE9xq1W3E6Fkb#U{L%XUhEX}G_w`3t+%R%;+
zey}Il)d>q_z#YnjeiYJuP=#p#J^&UaUGB_wn;!!V8kNn*G0vA;c-8K<D0CixFC-`~
zdY#t#NPp=b&92G!aj<rlqaJ!YrPMvTM>>3(i0LC3G!$XYV;!r?zN83l5Nnj<@fh>I
zFY49zO372O)g2vhNSf7ln3neDg)5zF?ZLi6xC0YDC?0qiOF*t4s_O({MT?=ihbsYI
z`xmktX!Im~joNn&a^Bb223ZJ&qZ%vJ?tGGXBA3P{OZMBJ_mt?VQ6^ML?Tl$W$QkDJ
z0XB|O8?;$vU)G72<7I;W%e>UF>U*~;pALA?$0WhBv>x91<H#mJw8>r#267gnql*Ps
zu#{E>p$P}IGzy!Ay4WZXGm8?uiT+F@C2nTV@!4Y}+S1Ce5d-e=$+ouc&3tkTD|{QD
zGutJ<9&7m;6-agAF`C%10qmTt5SZQDM~>`j-vA)(%Yxe|`;M#%J}(hF?RX#khTO(I
zZoK9<n%qR2LYl|dlEp^^d?gSmwUX{ABv-2A44u~X2xk#hw<G#iB)@;|IUgA{D`$AS
z3Twb;5bt*MzYyg0%Mm2M^o@!%T<res$@;1JNh&J{{%OmQ9WO}mi<sn>g1C=teuU=I
zyw+Fr9<6AG8$TiCniIi2xiXBQl^5{N^zKt9DK@acB<ZU85)edYmfK(dg&j<;SBX9k
z`$znJ6}<8g|7yDk9E!e}?;078u+tPio_yLv0z4a<uTQ=;3kpyIG<{x?65=oV1-D|V
zKITYzNV?s?6p8U8hDY#D?8yb3a?!qRm(ZX+8RHLE+hvDs?eMihUlC)(YRwa4ko*+i
zJ}IzHj$Z<LZZBeKNHsGdt~iUkq2@QeRbR}9{+{Y;Cpr5?-<zH`EJceP%;X3j7%(HQ
zp28wLvVb@ZDmH7_5UvQIBxX{(ti~P)l;yGxllU=1ClgPY9ZUP0bSkBsF`iWr_rhLr
z1EIR?{}{PQtOzgP7SWv#R3yt;4=J>m2)J@Nzgvk2@OI26*s;=1W`SZZ!r#tpMybZ^
zV-gITLmrztkCU8@peB8coklCBGc8T_-4YU2z|{rnCi~6&_IQ*!yc7x^-pz+U?OVj?
z&bY8&+;Bi#b5T6{!!%Fw^Aef9AqfUfl8uw!C0g<J?)12cQY*P^C1E+7Wxm(H2#SU?
z!i2OiDi*F;TyPsZx-A|eftYk~V%4>Fw8AnbYjbTRYmX>7l_T_FM5Z#HPaqBPt^tDD
z?uZMiNKWF-CJx#1s_WT3H{=%lX?45AyDn?d(RkSQ#VnqxBs6KVM>>+wp-<AgQ^iYx
z4AlHgzQad_153l&tP-j6;^>X8HUdum<`9DGkP;q-*~5JDBWo1-s}$PgJc~KOMy^Q7
z1j0E&&n0h4e<su1NZY-`edy6j_qTf_nrs*Sl`uV~Cb~!?PKo*LFgBXH6&lFS*TvWB
zd1?TKi9SU`2xE=qonS{>B^VIwrtIls@kNRwMYBl;Uy;Upf}H4GxEu3_#8nEUqCP0k
zung4<8f%S|H9y%GMyv;D#(R=859cNOj_R37_!+)D9<n+fzMAPh<Rna<&t1t@D6iNg
z=Ny*&nX^K8A&AmZD)dSGJ%sId^2p9~8xAssvff)K8KV76VpU5QDO331cNe-R;hBE<
zdYOD*i0!LXS8VghkT}}UpJKkN7Is8QM|ZMP+2YY?uJM4$3VVzQEY^8{o&0RHb*`ZK
zX0584VnY`}b)H_jiH%b^X7E-fwx^iDtqWU;fwk+Rs7p^$WZdiCsl$L(!`ozfQ9Om8
z0y~eG!<YlL%n`?EYx0`_A>F2siheYebG=oCkb>~I0!-~Mzy$3bG{NLSq6eF#P3B{*
zNq4B<Loym_#Id%1d~S*SC1FpkM9Nd)S!L-G{+|mPg{<XC>ngoq%2XcieMUtx<t^Rq
zCvgRN#dcF&9T~FaJg3VV07=J`^6F4=X9ow+#DRmdnJ2j;*!K@CjzZCEVlQ+oTy+_I
z0L>jFXPX#G01EHg<^R$M9_&Z8p^?b!2gem(QP>eTr4(^Mkhey5*ubuY`aQI2CSRcc
zmbiLJsUv;2kz=)aQY`S+Vg8a7nJ4=dvk8z_RaOnpz=LwF!<S#{MDnVWZUh|y?$*|+
z!OS4gqkEuZ2rbqG1&@h9Upc$EqD%JViZ=OE^oLzN(}QyT?_cDX$$6x|6Z@~3EUEqs
zwse`<=^=e?ZQ1*>BUj{=Fgv>|gM8L|r|wFJ@|zqBatpkNcn9-+MdFWyuZDk{oj>zM
zH`_CoUtt&U_ZyRLTb}O@VT*s9De{80m&qYu&&vwlNa$&3lpm$8K_kKOII~-NZJoVB
zqa_cgp;RZygze-;q8ewKuj?hK8-HzELJE*J!nujQ)j}^?n_!L({hd5hys^UGfX4!`
z#1>KbH}sUYJAm!vnO%U?(d3PM)TJI7TpdN#C(|)I_ZaLI^lnR?l~oWOF^x}=JWt))
z@x}4w#tFVa;>~>20fvAKLxniU<U7-6Pb)r~mk!50%<<?Pjl`oT%gDs!hM^orDHry#
z9j}4|3{9MkCgiS=$}OI(5*At<#<z=I697WrInE7RZ8tW=JZJ|zt<RN!khrBf;t;58
z8<TuLdOg^#$}CBeh+%UKaqNC^a;&CVXn~UplktMNaS2}xSN#`}4M-4jJBFz22&S(c
z^f{TaWOf2geML%cy{>#$fZdCEPJIIt+|I{EY5x*oyyvTX_dGoX?DvYZcO+qOZ|4Id
zMD`YbjTC_d^l+~&tPg?6{S@0&ZPjG0j%>ODX8P+d6kq<5b%MW;@ixMX{69~67^QR^
z<hfv~padk(xs_9fg{<%kyM5BNHd!9!*M?0amS4@P!;Wxmh<ecG%Gd}1dmK#dVr&1*
z2EP9@Wgr<$&IPw3-^s2=<4JSYcw3i0(7g->@@LW$S#lPeLE}^py*+-0Xr*9p7hvV+
z-y3J6K6~jQ6&{YPOFmO)-(9)w9bLd$l$;RBI6aLcIKuT#Bne5G>_@@8X!-X6F{VH`
zH49W~Pib1N<$+E5D(O#U7O)9x+{A#2bBXT*@AuFe`B8QuqKi=v0KttI34zl{Ef;pC
zrT)wN{e!%OK;mw#Mmrt>1TNBqj-y|sIH70WE<o~(lZ)8}P0^p3Bs+-6_tqGBHaS^=
zDMpfoOr~WXn~1dF`2`5L!nh{ly<Doz6Y{0LpA0h8T8X!V9bA=?o|pP*@a6;Koo2<&
zlj4Rw;==9NQ&0rlSb}BC-9*X*w-ep!SJGuB`$E{Vo`gN}M50pIu!n+n9Q<451WF*h
z0+`sJ@*{(h`7J_$1DFWsmk%%Z{`w{)(d}U6tj+WmcP6F@fK)*C!}1JvG6jLy<2|&7
zI^$`p7j_S!6MwVA|IK~aO`#GR(8UYh#(Vxt37(QI^VW2Yp70eOfT{k3ctCz}Tq_2k
zc<wsIQ^R5gqZ0_A?eXyT7`qC8kfe^&+jT*>d3-i<qf$#~h7_1ygTNIJ=yLV^1`N}T
zkG+(X(!#QdC{=8&$@%WaYo?mfqIicB;xR;S?;G#RD6tA6h(x(P>jyj2W&q1(<l*L;
zb5FcYNPEU@AdEc(1cXx!Cg0i`5Nd$^p6uuuPyBumdHRykG3v>mqj%^^<}$4=bvv6s
zOv8!n9?t*H3uv37Yn{D7q>YejR!SaAWH*YN$?7Om{iGB{N^TlqWaWD1tlaRM?=vQO
za-A%*1v`5|SGu+R#d&a}-II|{(M!dk5#iY9Vk{G~#(5C?bKqA2J5L2EKH8IwQEul<
zl(z@^wdQuMM;IeR>g=F!<7)M%2ifIw@+~?_;(GYAG>^86N#52lEgtkO|AMTBji7}6
zj%c$6TgFX341vg>I%rb7^PXH2j78KZZx6CdAR->%CQZ0ZhD;UpQiU215nG-7g{mtc
z^#+!6`W$SlJa}HLGYFBLCFbvpu06GyzFdeJRF4XY<IEWnmqyzLl!oTuVU(>Q)0E&m
z+adF<NmjXJsBRC=w?wYgph<O6v75FB{9GG<5nOdR*T~-P|G^{dk^KQDeiBD(MWQZC
zuhO>iA`Ucri+_ZZS<2tFC`IEa*l-eUr%1AmtDlP%EDbh58roNihSKfDFE+$6S_*~~
z?XN#|555D$g*jqi3IX%(F5XFR+=`E%V&47SKGxnv9I68;jwWiF*DM4t#a$@7<w<V&
zV`<8sj>5X9tpzK|_8;dl9{-j;(r7E$gyF`RX<FOeW5%t=ku3TXzssE_ALG6LkmOX{
zX&yz=WNXUWew2?IgZ*J(@@o>Jv4`-9{HT=kzYxArCYS)<Pul&&Q1H~XlGF0kCx}0O
zj}O@?W-W^00`9QUAh!8XpY5xgkK4oft}vsQAz}Rbau~kUucKWjqL|D+ZK*(F$;IA{
z#E!84q@w9_KBGqaZt+HHNqhk~ux-lbEN;qijhWs0m0a#YU+?o)9@DS;0GHt}*`EdG
z!xJ-Jf3e%{{rK`h+~8;%YoTBEtp9>PRog%NVc>zuowzXd_E&vHJ^Z@g`qJ37w3^UT
z$1vFl#8l}fAsp^Tx=~1j?A9p?q$__}{C?UcdFGzbKX73E*ulPYxF4Tf5X^9tJ=S~v
zS36)v*`vL0T$AF!%i5HKU6SFRRTc2|r5>%_Rl*GosxHazf-RNvC}cXb|B9lu7+>4-
zU9za^(s$`zCe?-SU{J+QAc7M(QmA5PrMt@kNZ6S#agN;3+QQbvjpnQ!I0gfGGm{@}
z&wIRKK=JQ#@I<6}k<UA{{WhKQ^0GE!o<bUgfyvp#;){3xc2<WUJt0kmcT%vmv)a35
zWAYXTO1@3`07e@jcV)o4w35CcgmKA_80Kx_2XQ5$V@0xG2A7b<wSuilGaH3Zx5c;8
zIy5RLI6F%E3uUvui7<y=?IZfh%nj}~61{2XVg&EkW4!+j+z<SPFqa#Me*TH(kTK|2
z#P#$UA5`Fmm$&*Tzsgas1i&iMvq|=#Z4XtfkpJW9>PxXg%KH;}z>t#J=R9$cLWfL6
zc`8(tr$TM9X9w29iDw6HAyg=NPM16CudDQrf{iK_Y?Sw4BSjY_iZk*A!u>oWelbOG
zqTInrS?tlpJjj1`D#r_12TxO=%`Do;sXbICZv%kMc8RN12&_@^sl5PSNSuQ?1m`-t
zp$NG!FzI56Bm0$nQPVrZ+ws_7gyV!ikqdjPZXkLBaXH(vl_-V9b=e?pUziReydq!x
zz<AK}8WuTD$c=^fa=gfPLvO3<k@?T21V6*kWH=G^%IsWaWZoLjSk~*^oHamqjA|6c
zw-r--s9!O3r4Mbg7hItUREj$ESz(_%K$UhrTe8m9{$Y-orLKiRVV}t%%5j9YQ%OXi
ztXW;Yd0!8>yrvi~(+8j(rA)bLwm9lwuHoiwY11lwf%hI_Tw-NPGDM2jc+d{adq4FI
z3wN>RuujqNWEsgY#{=P^k}*28huRQaWJyCu+en64W$WfB=z}MI9Ir_iK{=5NljEI$
zIcFxHor|%-Pd080tQ9#$8}!LeQ?kBR>lgr$s8v|&>0)~&+M3$viiHOwe<1~3niNc@
zec0l4rW<`va}ebs2=Z?<DBsq~6sqj&<m{rN8Dp4$`3e0!*Ff4~k4t8-hiYpcrL^vc
zB3e^S3%Zv%7z2)f7fnO*agKc9JxmO!@D;3u@0YT&O?Fln<#+3fwKD;onMC>OFH~@h
zmWWyhE5LLIMA#OwOLm*wr{d_Kk*&lg-8CD~<hHA4S3*vYY#QmCtp;6|KRfj&qgNvc
zGF?h_FcRmIIYL0>!S;A>0YMMUbR)~7uCF!@5x|@U#deu|a>;oW30>V=RA<+?DTm?S
z%x&!yd}0*yA<5b9oWdZcwZJ0oo*Tz;)|+(tCRkJ9f*_(qz)we<Eok;vExBJSAhbr9
z^8_$DPKcx7=A2qNfHyy1kK?SAG#QR~9jc=~Y{@ykep0riRu8}th6#FFT>I&`@^jqA
z`xE@XA>Lyk4k?*oL%j`rPJSdY5K^pYnM3JT=Q8(97B%W*X+xHQcsdzYD&;=3!w3gf
zmNPr1MRTzOuySCZB%Gh&HoD!OBSQEvnlud@2WVgdKz0(0GK&ZgC+eQmhRA-*Wa#H(
zWyuVW2q%oh0>HP67p&)xk^t*LKi`aNuU8mAZ4g|g3zgzI9u$%hTUHcgmpXWKJs6dG
z2w7LT`5E{24LJm+$#FH#WP84^p_j$`>;53o>(|{%LBcxq4LC5xYph=--2`+(0m*4p
zaMl=yN4OjbTLbB!_myG16_o(w6}h{D&=K1i%(Ymz16HX{#bI^cggT%&KAqdVF-w-3
zh!aCPjaChPVK$P9D7Ook9JG$t*pGwOk=K3=I-Xh?tq$fRX9a`+4AkM{aN;>n1fC*P
zW(YKz{YGIdzabeWwDwy8C94qU*l>>X4hqvC_Kt3b5-EnFy<B`pWdgK51X;mjbIFRq
zfdUxE-#p)_jNg@P{(4A&6xs8YXXo)1<=0fXrU`bOR%x{^v1^aCX<COc2`Cnt)mypb
zxpb`IVABq3<8h*ha}bHHcU9BrJJ<<hxaC0f8cY5J=urG@Hx+rhgwa&nqYIF#SU&<1
zqTJr~0r4$aCu9sHcs{29IVqiy_1p|ic}ZT<Ky*t9xgm09z{0qO{p&y3XY`$NVj~PH
z#-fx_TFruZz`=f{m=_KT9>vZmT|r3{HARK`EQULhd7LY(nfwbRZ{w3<8T?u3_Kz2^
z0M;BI7hVl@$eoPhee56weQu`*r#A3>vmHcHKO5H_e=@;PqK)B`VwF(5bHWMwq%Eq@
zTW`)~HF1-$Hg9m8Nftbx{`#=foS1_CsT3sB9Ro`7mzVf1sxbDV*}K~QOf2o7De?PT
z;yqg9>Q6aNpFJ}>H2!DgP&FmC#1BCXvcK|tiF%i$pYr?#l!f8e#U2^WL5J<xnS^e|
z$gS`Y*obzo)geWWs(e(Euo&yyV7pxD24Rm%<yZPWkt>$;7jvUf9sxecF0_j<-L~lp
zJq<WPUPtQ8Sn>}#dNW|!U`|2B#?c1hHM`k_cBP{lpPc2UrwJ6ihO9BQQ9MeY$iJlu
z84)Ka^2vY>5D{lkOwT!cFzQa0aqhzR4Ho!LUuzBWYi^^|zU2($+LGWM>tHlb+%B{%
z=Wpkv{B5!;&hgB+Q32m1z3^G%#q#-ja<zQJ35<*2Qkt6Z$Av3-!)c~o63t_^F~W2h
zRewqsN)@vDm3HOAHTa@jcxuA0$%Cl6sVuZu*AN%d{DCgbQ$r;ob=|Tc>Ayk7N_<yU
zQq*4-ATulrNTyP2(u>CG^e`LY%3{6(u<~J->2RaXA@H$mA7peg2?Z{;Bn7~y1({Hu
zVKEW)Y(Zqm&W{KI+cS03Db=S*)x{J*s%0Ti5n513+WwVjmlrP7$3k|7I&5@e#LH9+
z2$_y2#Sd6u1<>JTw&dGsk5;?V|Js%#g8RluKou;ff=Vg?`EGs;g{UnVJ}Vaaxsi%I
z&*+l--psS^GP@;Q;@|hX<j3`2dh%Z^cG)!_A1mk7zOC`lAk)bTD&rp84$H_`Pn*Lo
zZB46^ZVevDy~>sWADXr@u0K=P-;Y{hxD`D5@?0tf^6-+1X!)XhwH~CX<Q<hc)2oYl
z6Y=D1ZBVM0Y){S3ky^2$0Wl!tra0XftjUho&L@8a);^9B!D6LW{);WJ@)6hMe?-)o
zmYviUY)QflfpR)SOzflxZ!EXC?OCml2*CvT6PVbEvQufMA!a5{&Xz@{CXUZ(&+Sef
zITeOu8(?f_fNP`ZqN<g(ML?8%9xM{zMSt)@`TvD6I=2{@`$=LIVVn5t{Ah66dbuBW
zCKYG(Uh#<I;{j4Dg6)E@>_F@~-epX0;c>KtA^5pGy(j<#Pv-(scr8b|1A_l_E)1`@
z&77wpEYl-&c0E5~Bxe(>kqQJi&5=gZh%2uh2fs8Iw3IoLpBn7}taIeNgQlGoUypJW
z<O1EML+FQohQNC~;5f?*7FdOmK97&^+zb}r9Lc*%&+Ki84oG_Fk=<PaW^T+7=c0){
zN(}4}jx(kfQM(UH2(K}4MC<j;=X_@{{aqL?|63cG2O_&YRn}+{lR*QlyYExlGC5>T
zNd>SHGd_@UF_U6-DOi>|r)`j;6Jm4Zx>J|cS`=9u(z6}71@nVg7`U&`(C$Zsr>x-*
zO}LYvuV7`Un)7t=p2W8hX+~8A_Fh&_RdpQA4`=29Gb)x-JE1f3#N9ykX@W1%G)V(R
zz7QG3p0Cu}7VLYoI@|}&Gq+%n3-jBye13-AMB`0yE@Uu!buMn+3QUZ3_^1HJ&=eZ^
zoz)Vk_;t1`-Xn~51YxsqRuHXry>H0OXNWIam3V2T;j<rZ&n)P6D&Tv*TeZb|w#T1r
zi$BsD6Pz=mb<=GtwhP=}P?7wS;!eJA6>#{(N9nj^&W>M*CMM=^I?Q4DMM~ApF5XC{
zQ)c@nT!O1b6-4|nFsgU>$hh;f1srnhwO<}swqL@-?VhMTkIlLQOG1wi({jMzbc&bz
zd808X<$J|reyo3CUPK4Wm`F*{ioNmzoqZb)BQ{s(drvqOq+*S1WUSXdTJt+NFf^Jt
z5FA8oaP~7ULAS^Hb-?n3a@eikoVSwk&`SPQkL<@4Fb@9&XScCenGtkIQG#}4t(iD?
zY#4ELKZbv4n)L+ZNi%;GVX|^5Lvm?Bld~Ih(GbtmYkS8d7LqxT@EeA_1Z7XkLO4e3
zoRU_~5d(H$`lor33<YNATBm|*$q&_?tWQ~amT#!uUO~1-wlI4HM*zD_;<YY~I7W^l
zFq1nFF{~kUNk+RY*5MSWo;hp3Ba8-W(EO9DgPQTGB)dkf`DvIG#drQTQ<jisoc_Ty
z^3qI&ROlK)HC$}X5Bqa3&Fo598gJ%y9^%@*XW#J(KYZf6<;xSqOnX-L9IO>#EB{)4
zxi)}{UEH?S5h+r0$>)Q3r&^kJ6^w@sfIssaQ+fGRhdU;mr&S}bk!<k8DcvG~e^<oG
z!w?9keey{iR5JlyJ-WUTX`9{%9N_$U?tS&rUxC1P!CQ<eIb5I^i1`W!fgPd0ga#pI
z1Xfjx^e`LKUFdB`5QDjQhc0kp<5b{XGr8LH9g(u|qu{~ASk0IE1qyj<PP;bEZh}Fy
zxekvjj`kBI*AXwI#rtDU2yExgCtxgH>yub2l9aqWZ>3}U^Yg=#XT)L<wsB7BNy=EH
z8$5ITO~19OzLW1nGOf4Em?7A;aY46IZUGx+y@HMy8s$&540cmaL$hyD|8xxxX&Ydw
z@ez1I?Jr(Ov}%bk5}b20MU|a3zjc*Ei^R-SE2Cs=@fE&xAp`Ze1-sPRUCKVk-{Z>w
z3#!31lIu#-KCycz?5MEYwS@U-bf-eml2&}&-<g~5a`<elaQK`tmsyL$^WgE>thEq!
z#(ae|73|d<xjbx+uZ}I5-|Ydwk)2zy!4I156bD1{w=uBxX-KY=>2+KF|0w^<cr0VG
z4xGxE>{a9jcF2J2|9lY3ZB#NA--h9q@O9c`Hm;BnIG!(KuIH9lb-2WH%gf+vst$*1
zfx84>QOo^yJ*ak|r}^Q+b01Y?zecbz1c=JUK}?aQTH?OfT8?qLNs((EkI}Vfe+D*6
zC@Kmo$nm#Q6feSZSD#dgU`ayjSgl)e4!f}qu}qRmFd(klN1LP+F$rurVkrW#p5xn8
zCMe6i(BJd0WQojk$qG<8iizx#J`zO88S(avej|_WPhT!?)TTw&La(a&<Q4&4qJrd-
zTN|8fdR&WA?+|_wQXlGxVIA=<G6-Cf4vuppwe}@-&FE}*d<;l~s4Qb`vW9W7>nyPi
zlUVA>1^Aun?1^9c17RDZc#nY$ldH&fi3ru(gKEdi)S}I9(PqZJN{{hD9$W8THMU+T
z3~U5_Z&MCtSgDrl84<313CXR44~&%LVux*j1QDsHxmn1DMeS{2|DF?F%^iZ#_T-K>
z7(TN9N`1t4I2$e6MQqWFx=sIesR@d|>rmt-b$Fj;#{7%!OmXW&8EWz9z<9`0=<9%E
zFYT5(xj0aE3#<kh674Zpfmw)_c&v7drCNL+y4+#Ne#$L8ld?ge*zg@aW)C4=51b^6
zi2zGbNEVGwY>rlArdGr4<^-Xt6Y;=Zf(jmjLB4^alXI6KN{;?c{NKs(_PVema3A;|
zL*(d$)V*1ZJ@r1s)^q$dEa6zK{Y)Q{`|^D7)jHQjq{nWgexlUcLGe!c1GRCC_8kOO
z^mgSbR>Wu{`~-KD@<P>;+}%-aEY<*!OPKo#0x^h5Ok6caQfRL>!XO%O`zWL?o$4VU
z6!B7xsBX;O$AYL4>ABjVBFic63G>I=h6RcfR%&x^34uN$x>|cNtjSm`NYE~49oc5+
zMOcTzqh|>C;vrV0!Oj7~LUo${r1zBUsZCd;;U<29I+gNNcwOIw3-U3B?O`wH7B(&v
zhCZe`@XPPOn)>9I6=GWAmpuwYH+)?@(*N;e_|7N~fZ0XvRdXKc&NDxnFAti@d1i8+
zc?Hc-TGM@V&ODuE7F}lMEOVc`Q?%xs4PX|_^w=$y0?3@Ppo7Nh{AsK+2eV5DOU7w0
zm)bDSrguYLY^OBYa%Wh>t!5R0U(<+$7VW1sX(d^o=;Wr*fmAmkACv^COf%8LZr+oo
z^aZeJP~7|p{`3kn{wr>(JX^A+NCyKC!MNbFt5h}ECC-<I5X-f1Jn)FPS%){3S7UIV
zQ-OuEm=-RYOBO=zu=^@IaINHy2%iaM+YaRqovm;Wh>j*iDl!q2!!$-?VrtPvtg)%c
zyW7L-i+&`cuzmDW)`MjTsfPiAH{;Qa-4u+t1s{<4ofs^F)5PU98Qd@WGvNF=ep00W
z5%D-C;WvVUl}oNopOD8-+fFngzm~#DIJB-HD84w7a*tLv5~M_p<Zi06`W8dSoZRv5
zr(njBp>6w#r7rrKOxgwIi<&|gvK59wD@iVv8V_mL-g36@Kb&!MdA)O4gaj$=M`O57
zaYA`Yqv{eyUhuoc%cf;%YE!0nDKZM0o4=N&nos6xok&@5HhoQZ)leI$P$4+`*gm4>
zY`d33Cj?n5C?*BpfBHh@uqFq9e=+Sv$JJpd+PNozG!3}N7#~$HG*bL@s3x9V9NMVH
zgAx3f$Fyia;kd)$a&Dw^s`5qxLJmVNYj2qD?NM@hn2CQD$3}w1D@S_1;%<Xy4yiK2
zvEg1!go{c{5ru%3SHnpmPw)u0ra*tLBT_9H{*-9nGwBOkbT}XBlMOIEp+&;{!JK+#
zmr^<cnGTT5^`ub>$u}-LL>T>%{92FH`n{VUoe>bFAau@7^#ofp27Gccvv7pGF`+8S
z`zn*|;do7h!ct%plFujrcvkxR?ezC1$KFw-imNmo5!JyYk-=E|1UhD0`~e01?#bCH
zSs1cfyX10VO96u#l?ICO?yXZXOZ~<E$?N`GfhDCm&HKPJH9EGjvwcE_$`7{k*S>Hz
z)SO58W|eiwA}Mj&mzncX;81tGgSN$RHdue9F_>}Tj+KJBZ3oT<XQaXzwM@-I6=HUQ
z6Z!Os!Shm+wT72~Lzo<F3^JP_QBWY1;n|fz1NJDmY2G-lD%`ciF^C2HISHA8Z*{Z5
zKr3>Jwv(PuxGd|Ayw6Euqt*}!7gw<+$7N2&MX2a4A~`s4_<{_0;AF_@G14UlZZC0s
z9J@?MD|8}Q{5&_NDX#cdvPL!&W^&`gb}>8b`O}j8D)bXD^Ra&I$)D&f>;=y5@X-pB
zvJkkyz;m{0K6^qQ30<2!*keC*zg~>Ylxv=fniAQX9MEfNX-!D5LZA3@J{t%dzuo8{
z(Bu-~ynn~pV4xe0JZb=T)56@&$h*8d`2?;JG6Pm?`=#C?nz<b-H$UNfl8lVAX%dT6
zFG8kcDmut}ZXeb^q}L8j{v=Four3FNCqTI`=1&x*<dWloP5!m8OX|<nj_rb|7*G|9
z=p-S)E(R0t5Ap^|=uH55XM{Of0V?fGes#S8S{}eXnD<_OW8FM$H9OlYQsh}2y(SDH
z_Mj;QiYqOAtra>XaUmu0bOE(e-IA7ZJ_oIU_g=hFEr;SHZj&Jig%Bikik3ALNofh|
zAzsx#nd1E`b*5&3q{S)in&cMOE*ZcN3~n#eA0a22lkkc&b8)&?$LvXJ8U?(fWpr^3
z=!)X(<>y(XK@=x}RUE+#!2(XR3-e`@S2jqGtKeD*q9Xe;q^~~?3+*-v0QiHX^73Dl
z6#WJPR^qom&ifK*L%xn8`4U}Oc0`fg@;0WbO1l74vY-5^fj3<$yoqxc$Nl%9eecXw
z_A0~u8K8#SIMOaBW3{K?R~{N2e}YC}fI40i{aF7j3Sop$ypOU=Z5}nKW8Qm+p7-}x
zZ-IqDOON(b@Uzg~<qqLDr&hHDV7()e4%oVGi9!)X3-NY&(F&)+w5*Dgwl+h%QvMeu
zge;|C2?+UGiASe$lGyd9wfI`l^oX-snr%bsd`GrD9hBMGUe(#uI-{Zv7jJ@Gx}oh*
zHMJel-P%m0N_{M>mVLuBr*JJ!%1kj=X(>GOScGkmrKq$Kh<#tfq{K>`Igha0jRx}A
zsbv74ibX0SQwpavoZJ!MFrb1y2y!sca9lsY=i3QvL{Qz;EfgbagTy@@0lH6#d&{Y?
zYL1iS?f<ys?IN^G*`)+n3QX(gfoYxv%f)IhVDA;{UABJY(NwlR+szRLB^-_HIQB*A
za2E(u=!8Lfn1WU3;I&Le#zYK8;7W)*l<1qA?)Vv@r(n!HKbLbYyYOxLnxnp`2b-T2
z=MMmqI%ZlM7Y_Dr9-P;AH`mK1dORj(0LCaZrs-)voafV+(lmLw50}Pt$7aTKo5u8&
z+&C!@1sw|EY);l$m3Kz<cb2#+w{NMlM>f+LHPgubklW5XJC&|xXY-pK=l7?ZQ<z^(
zT%fKZVEWx=dbv=&+`cfKUyX(|P5lVwJ%{w4r6Da{*f+3V?AMv((Ia_xD_8IM&GhsZ
zJ=v6W@d&)ys$s3zOlRxV+2LV|y#e(>0F{4#5u1LrnJ#{=E*9tVnI`n`{4TbNoc#!k
z0GLHuTdP&9^>G~%=kpV!FGcnM3?e8*>BIOTzvP<Ko%2IwKspGj)xGm`pY<?mmj8xa
zbUj2+L#H)LETfP!{mEamx{~}N=MnY!hxDacnXa=$crUg%5s9jSHJ4a^GL6mgHV4H0
zXT_tw75D!_yv+idr^cgLB>k$+Xj(x^*MW{0LNg|c{wS2Aeix7UJa-oPiFcj|ma^;>
zIE#wyB@?n2r-WL(xYn?Up>DY+c7Lx#tQ`RQ5$CgHN)YjBqOgabWBqD3zf}7q`0g^w
z*9EBj#lhU)mN}TGcgR?mpCAZQqmR@N+O2i3-Z(BM4fW6SSGn#9<s-IeuD6Ayz?j`r
zH|2qo8y%AUKPni{0mdKIFKhIf-f;YkGnE2ij_*9(?<JrLUK@!E5$Amp`;?AIRHn=W
z&Dp9w<cc(4Q@C(0a=?7eY@bYH(f21nwvd^hjEL+X#qle6t6=|668-92NLsmZey0?3
z)=g;<nuzM-Lc)$fLY*LgL4Dc}0haXM9BzHdAsAxu0rIi1*+tXy$}YA~IB0Z=zkgL~
z^L>OUSoL>Z@fs1kv>exBxTimRJbmmclEkGAVH{Vv441dx3QJip#*ZdZ56Q&2+v569
z(pS1xKR^mBBb#+t8}gsg((pUS$8hlicW5)A$D@d(2_m)?{+3I4w6CL`<((0o>@Qrg
zKwwKh?qUHjIgd{w6d+cJXfv5S)poCm^E=VHmz0mjIQL=9F_OhXo!w*LOuoRWmMe#k
zUt97KelfFV##Bs{VD$HJho#H05eK^@(z6WCaY0-=+W(#5qkLta2Y-f})i$=vTOSOy
zsH^Qp{4=$7FxX1OOm0U4kQh*{9kYr6qWYYwUyjO+9qR8qF^|Hk4*sk8PW2%Hv8zAI
zlXw+#$z3VXLRe}Bw5yRG_VG~Gas-@-=+Y4PKRK?uGVXtH+_XpB|Khm8w-{Uogtkz(
z3w7GXLWER7jY2fBDXnd~Gb;fC_eJ2Ow+&q3ym_2hr{Ry-(y*tn!TQM0oG*u8-rh_}
zo_tN-e#U%<O}HU?=QAn3oKmEXfN_6!+E3r|g0ujP#+2Uk8NKIIde1w(LvQv(X~-pE
zLVW#lj)E?OGHzWU^NM%<(*+u6rQHucNA|4_ElbAu?<~jQ@JP;%1KR^O-oC)ORK3Eo
zysz6A<U4)rd?AWX9t!3jr@m{Q{U3*F!k?_+an$(TkBh3@2b|Yy%%=vONz!@GF~5q_
zTVtM@anq;L5&y_X{LLOCCdW^S<|<8(<m^~R9GJi_vk_AV!bhAo0N5*{=#=Imp53C7
z>=xps$7;YNy5KK`3k-Bux5j$m=EnL=I@T|f5IB6``2}KWm3V5s+7~JFf$v7$i|kn+
ztk7GrMLac!PjSkwayK8_Z~fIAw*tp{Zb7T>*8Z@#0wuo0$(~!F^NxB>hfs7aEmNO#
zudoJu<K_l@9|LX!xW8DiMr`yOjB0j^_fi#HWHZ9It47jgWHX3ZEAdLswDHd8^!UYE
zc61u&h<@HSZv&UX7LV1572+)r@cd!1OF&?AP=TBoB74r!b0XEe&xi>2z&2A0-he>l
z184=Pf>uKrPdqFAaLNtyik-<N7qBff#sl8sPY>pebHvX|lwgO5?W1&3-0DTqEi!$}
zYQ#?daafMBtnbn{Ym7cX3j5;njuG)h6#WixQ3W9O^idjSlYK3~uE}Yl-ixea2}+%l
zgEK@;3FZi<-4yCWvJwMys7XP;O`+^<suJ2@8Q&-yk^CXJN<=DhKSZD?7SLgKZ^TKx
z`kv9`sw+aZGy#e*D>gWV;QT1^8cv`dEnySIL`YVZB5Zn+;m|;ZU(G9EPzGRkn#GE4
zLtR0D(kKutwuR43BJ;Yk@anmc+$=8a#u!=j<bC|kYN4hHTnlz8Im*wU1ap63nXG>W
z`3-_ftJ4=btLk(BM3bnz`M#awNU<VPg59i;?9v$LW@Qh=?;}url0P*GO&4_L9B6I`
zD&dMR1O;))<`l%D3tKK3xve+Jms~%D)_(p^FD234Gy12jTKY&-!ASpj`sAQE`tc|E
zyOYxCC25bGp1_%X{PX<Df075VO0tlGpxXgZ@%9sq1WU!h<coj^;{yuuUZ~k59RT%Y
zf-o;1<_0ao3jLO_QMtO!)&v%jJ|<V7i9H4Lm*GJ#c0vlZ(2PJ3I?=yv`o}}&yiHy~
z{lS5Fzh*1<-wy^08XOO6Nhf*w$aGJn4mF#Je{Rsxsp?%~BSeHPXCj;hyQ4{!FW4_;
zNv6EIvOOcHlv-|)>BVIek;_2Uk>cqGRRl}y<=8BrAnlEqE7tHhQI%4zwZYoWJf7_=
zAgXxqL=7s~da!-cDTgfB(`6-^R(8wJHZ&wVVsvYYhqkxs^AHarOhkl?4t%|kF4=eH
zv1FaC9LI){E!U#yiyoJ$pbF(KXQJm*h2E`4p+2CrUisu@+(ih3sZ$ja-bA3k-3t2h
z0|C_3#^&UpCx#NlQUE<VJBf*r-<)14IqhQ}PjAeBU^uM>jqI<Ow1Vy2v4L>|h|j@g
zR2Z*O2eJr#wja2tz;~MMaV8ZSugn@7Y#oims4g|0TT^-ditJXsg$fF4RBZ(b>I7#|
zIzdl1$apAR=!l01+B_Amm$}K6sD1$<!5SzFtQVOGEg{JPTtUr3P_L#~_LuVCaNdgJ
zhWfp7o={RwW&L=&8|1`RLX)qvKZ~={n^;GGSWyT6QNFH`=}0>=3+e0L6_^Iu+A!^{
z2N2)Zw<f1C_nusjrDFeCvVgdrR;{iAnjA4VMlwPwRjbbc)8BK<0D5r3WvIH6sHORt
z+;Q9sjRatYMh6R4aNX2N0{udrjyL+-V`{xsn9BR1;;jZbMVKr;5!vH&BRpUXw9c-s
zSgE!qdxV(AaV&vCSjO>g&Qn*Ycpe|PmYlZ@b`0G#x*>XPFde!NMo8@mI2Q%AO$?2N
zONE?==@tT}8`k-T3T$On2&Qqxo~gr4<3T~1OJ#*12Yp5_Mm7;W`ab6h`?;vyL?EM7
zYs61HlpNd;kF$@J^OJhpHFU9Go2CQ`wEAv5S;O{?g(l8E)X64H>aivjv2lbSpg<O#
z#woIwu&yUEX)H~OeQ5ABCxIE+9-a0dt?Q)^r=SmD2R33BWuWGP*8qSAkFv)e4h2QY
z7XnO?WpPPw5vn@_dsRiGs^lbI1&-cOf-Vv4p>u?-!;|TPvYo{--F%08GXp3$&W)0D
zeO#H7I{4k>fmN3t+diCk8(gU?V?C_Q8V~+uJHpLU5Lm11zIg=l98C62@yLxKy8s8o
zFfWjm9n6uTbX9OCD|AL_3(3FxE&iOD!iOyVC~+fCNIm31e1JH<MQk_TAGtUcm>3<E
zoE8o~N?L^%E4y%{v-p{4nH~pI$*&@t7Oza%^xufy7BS#b79I3p(<JvPXVdw;d+_PS
z8dDjc2B3jQpRh3S=x>Wv^kCAj%?n)mJJ#XhrmX$n;i$pD5g=brl0WStet<~@aZh-s
zg185jIuK!s1qak58Lk|jwc6<x5!a%7rK3Ni((BBkrl5sJEk=+t>z4V`astRv5q=k?
zJ)h{FX-0o+M{)4IzU|Iz{&7-j=0whp-k(M`NY<uNoKZQ4CNe1l_7WGLlI|04OOeqX
zF*zjsuzRFT4rEbI2j0@ZzIo)m=1FmTD6+e7gur|94+VDT-@`%zMufA4xPmx^>g0M<
zOL0y@7+(+uii6N$p@4kiBjijf12p3h>eTX!r^C4`q@%D2`6E@nq^x;Z+U&PWPmf8P
zNA-L<RQu*^VR`cmFJ+>>or#BeyN-}{BHvlrCw-6L=^o9C!`9KedAbv(`u4Z70Tw?A
zb{d6f^BwK+P!2Jr#V!_M-V}d$17ijfS;GLF*K7-SL3ceEm?VB>w--ib+d|(AtkYBQ
zC3bZgiS)uUAIdBJ2q_WqDMge$O?5E#s4Ak6iaSV`?-#ezPxArVOUA6lhNf5@iEsX2
zW2lbSTZkiD)>bly*Lv`V-ZET~H*^Ld5${`M4KUciH2*MP(T`8`>muI`W8;jSSH37;
zNO(lLzT`4YIptB#@othB?{agy8wohSuj(Vgg<2PH!)wuWy~|Mu$!VTMJY18!NK}tl
z7p_$xjB6M|xNhwG8iu0#%N$#Zavr5uXcc`4dEk%k8<eJgBD-lgpvq0o?#c80VcN5K
zT+IEIqI$`fB*x`_J;qF#>#_5*yy~x8pX6Aqel$k^#W9_3r~z|tP48b_gq8%3zyN1u
zUTM9lq>pS`p*Ox2dJ9yXh7U{$S3e7i&Xn*B@i_kIWc^zbpq$K!C-!^9cBb7)2qhZ9
zFPV+EPIb{#G?w-hMs7<}wr5V(+;)Ps7Xe1rt$&3(F8yW1c}?IkH2Y_khs*41>Boy-
z>;3hV;{AY_f2QZxUn%>#f3?`rHR-TVD-Juri6eEzcUEVs6gYiYyaa1ahA3K`CObJ>
z`hoVkmY&_~Q?QDufl=@XOoiAeR(d0x)`8f`zwt`_gH)y;ZWm5vf4PD<8M37ms82v1
zAq_bqU7CJ4wZKnqvY+bA?JMg-EtUvg9Io4Gh+F#9qL9BviPb_m$cp3-K86b7!<+2s
z)N28My9j!&V2s1*$P)aS{=3mp*7X`o$_J}#ZW=5{G!E&~cQGvM@UzGU?)W2}W+FCP
zl1v$0!^HZd*asu~j~8^Lj2Ajjw`UHh@t+V~yp5xqisSGetJGohqD9W3@72<XL!<IG
zdA2gXsbuk+{bVOYslwb)_Q?j@mYn4Dt~A*ME;)Ke$wit?lVe{HrP7-u$OdAL-H<oV
zFvc)cAs&nA;8r@Qi3gn(*Upaz;<or)-2VhkU_iHC(y2x91d0o0FRk{MB)M=r_Ot~M
zfycHx&S6R;gqJ)f&Aa1kn9~C5aR}QH-RZCf#Z6)uD$b_h1two;aqS-y;&)}Z@PMu+
zfwI?-1>a3ZM7Ri{vV-hfE90T#HKC!m$91yj9W80fh9KuM#xMsA8rdMl<){l80!LwS
zlHz0n?0-O9d;YmFKuTy)!e!7Y+SEp`b+a4s9L;42_+kkGmzEGvCG1JbM&HCb@)2i0
zECW!mtMpHi;pu|;=x1w4KV>}M^YHY$ITzey4`w46XxB4>{K0Ykf5ih8L{+5Q5ZXdR
z4`T2|i4`l#*OlE=i{y+VR&}1(F;#zH=LAmrD`@i|v@TZZ9~UK_<1kHL2YHD+@yI|4
z&5v(ZXqHWj@PfAxOQb@?U@wa_LSgn_QS4edi6mV-40^0dMVqVo+O;2J*KWQHN`0Xp
znQlmb%$7&$J^9$1cGW5rmtPAUR)3Mp&*c8@RH1gZIPkr82@g+kA+!JY;u`W4oD|o7
zKBll<@o#XU_F>UUlYN74eIjmpKkrQE+s~1^k!r_W<)@+qIp?^BwFwe|Oj)(|D5Edf
z?ejVPR&96r#clI(9MsrP{o<Bzad+zAzj}U_p@0{K^?^gE`YIP8-cLk%U(OA2Uf?L`
zzKp_t?gyG0Jh?u+W+)QbCN`L#Ex-!rrnQ$}52iKQ=fr7N%$L?iMkaFK6!?~G_V?po
zOLaV--m+fP`<*{~ZJ6F;KBH@xk@t738#Nf#@4{3rceJ&2K9v<24pUT-1_>k$cBL9i
z(^;EN=Ldmx_Box$i_<y&AI0hPT#~bTjrnCC=0#!5jE%`I53BI3UtAb2exEMMnZ+gH
zMJ>sBVIF_r;U+sborjLf`I4O9a}Lj^bI{4B%`M4u#W@Uoqc{f#;mPTeyy0Lz*O%l^
zy_V!{1nhE*J6;9>>kiZ7XdD-3ZL%cClLnO0%O{#^wAXzqC#O>ZH`Nf9<kX(ic`cpJ
zX<L{MHB?dzyQnmso=fs_uQ8v6(q6C=!k8Hw7srQH=<<uV<~hlnU;$HKnwL=tFKQmI
z(;xHDDbgla?!(rFEkFjMf9P%rtvJ9KbSAjb=9UCgMmmRy|LnOWFU%8_6l|azj;G=_
zFDH*@dd+LOuf;3#ocg<cDlapYp5(DS%t42hnZx-!)nG679P-k1$Q*3k?2t)SpAPxD
zUPE5zLyqhUAI%@<iLlS>HS))Ljr?kV_SrD<Wj^xXhecqxKK@7NwM&bKz6l7>B0Lo)
zup$8c*F9%&Njd{%tk@jTFD}ktpMMpB&M859){yb8_W<_Yy@q^?kMfsc$c%{>smsO2
zVArHWzN?5gJgXt=G(IrDiHC`Y@e6TRCDm#$#RQk3&GqRF9@@eTI5wNE!6T&^Fpm4@
ztz-f}lxZLs%ycr<?%@Nqwptl)5~`fo9i<OyrgmHU#XGm~#aoMC+~>^zGb1sSmc?C&
zu!2eL9UQ!h4od!BYK{vNx+#d(0(7E@$)$bY*d@87bVD7rw71~zp(ld(oStR+b78l)
z2LBA4$_2o8ZQtvy!}svRoR@MRnc{nx_^N}2Z+hm3sbO_x>QJgVd?eC_RTo1)CG9MT
zV6R}Q)lf6tPk$0V3ub5PnBv-tE)bH{=@Jv-T!}=qOT;6{7DK$cNsuOj)oerBaZj_E
z!gzzv#s4ar&d6pUrsREb#@M^sf+q#pcL1TB(m15X`6MLU4zx3zCPQY89D%_>;{9q?
zlc&eijXuwT3hkQgMxEcz$DO;Z+&8i!$61?Q=(#{v79nvr8JmQ}7!$sxWdH>b+RMjK
z7|bwEA&t0j5Hu%c1P6<NkUIJMT#f|R+qZp`oQG;Khf|3=r-0Bw>&@|rfkh&FyT~T!
z`bEkDMs`lcvVfa0vTGO~?20H$S>(%HoHzM!e$8-FZY;4AqPwxeIm0itdX07!jludw
zIU>@OYfu`rOroVR2fJr4UjwRk=GHk-YYSG5C-#At%iJ~Z!Y=3I{j7Sbvz^=uxKCyU
z+%9ZrWIbX~*Z}>I!_V=__id8<45tZLQg?s5`MysYzI*Fwc-<DwaLL+|C-tV3f<Gtd
zmU~j)7bv(rqu}w{WXe~qv^-l&*}jAjR8Pv*ie{8O;5b%X6cJY2>F2+=FT@RW6X?e|
z0J?k+`gUYci}=V^*vh3m^+owxWi&7I5gw)S*=!>FHV+{kZs}`gPUHu4^)MlCiacQI
zdodt`3{Px=c^=|>ky0>#4MorEop2Yc#V)+8C5`ae+>Wwh>#^}2JVxc{_*9CH*M<{t
zWuE<q`UQl%VPS`IN<{WMZNiBiiSydkMOk1Jyqild^L4n~`HOr}dTbp(fo~{%myy5(
z1-a=1+{)Y+A@gX-H?%}2;KDJnEN2=HI#aiS)3oO6L$t+{VXMI2=C@QAx*=Hz!m?iw
zL80L?g1vm0;2is(?{DC=?}Hk%nsH#Jp(p9}-r)on_ubqr>+!9dnOXz*KA0>{axaDQ
zQ%tNuk*48;Bry^Vm4Xz6`@sUDpoEeQa<RvjH%*F190-GC6GEX{Rpy@;)ep1ha-O2R
zzw*M8-cp(W1|~I=;`&|VfeU;HVI{mduK$R<4M&m<i<y!^RJQDm=qsEPoE7IjL;$r8
zbdWB0DjZp{`tOK*ZzF#SX7AlyS&n?@InZN+ow^C~y_zE5=^65!EOm>NjhjQh;~n{g
zk13mc8@PdY#OZ){^}9Qagk0tL7t#@K2JcQN;oY*%fOl`Ec-OT>yju^Q;Ij*O@E#Gb
zG%b;ny-gxy87fYg>*weI2-8IL=ryl@2kTy$w@FmUxu_e%tdqoX165{3h~5j!sy;_+
z2^B%Q=3)T%OLNN9#1s4swaZKjfsv6@LQ_+Sl_<?pCL>K#g3@A5G6Y|xK@&b%)jmU^
zmlV}xFY_cEghFo)0xczpa}famk-h`UD?%5iR_~?j!!UFL7QJ8?>aNsTt$zIg>`EWP
zpFEXys`H*)n#=+3W-{q`F-??YuCkeF5`@~E#c**vy_bnVEa^l>=EFp68T*ca`qXTR
zu$TK0IhTA~5Bnu{>tVK1GQR6!4|AOY&!KlMTwR3vNU(+UX@|OogSRR4(vRZF+p?1M
zgSr1MSJ|SH^iaCitKFPaE@R!rK@i0_+%`XxvSfn{Uisk9yq1{<AvxtEj{r8EQx*0r
zZ*0od;~~;yIeAHFsL<_)MToU#+~VF8Xl}riEmFHwuXr#{D~Gh(#Ds09&hPjACX52y
zCSLq8x)BvzGdqjUE+3LmhJ9vRc{Is$uBo^xiV`M|Q*c=+E>imsz6W{r!+dQ<cc8wl
znsT5oS*gt~o7-K|kp!l3bQ;?)`HPHYjwnA4mbCWdAeRTK+}2AN&Pq}i&Js$=dR*nl
zX9{-XY^f~|CaKy2Yj7Z3P+SUeg<<wAb1T@@vx{6IT_M_~kX+*{@a|QUpi(38{b_!V
z^a}4uIa%z|R2|2wda5VCOr@+J1p0Yr1*JQOhO%o&2e)|zrAuYtwaPt>402bNM-UM$
zO$MYI`=;_!ZaH9}e0P2=C8M*;$OwKKf(HJW<I~BjzEIyOE)?rD*j`1>8NQd}>}j)G
zQVZFu3Hy{t05sJt{AaTzDGs;4CF|p%BBo3pT&`?9^00N!rnymWwZHm{#4y@fT4hx&
zx0lnlZHYnS;WKB;cc~k%_zhXpyB#I82ehuj(8D(HQX)PG$Shf-f8`xD4>$2fcg(x5
zztpB1v3pUKn@;Vqoi32*uVA2%x3fgrE#Y9p21wi0ESn~!HwXfm$J<AyZ!<mpq*L@i
z7rT?#=+o^p)JPE={9(VJ#`S0}X|DiAcYs0K0v!C&03`o&alBLdw#+x?osROqUeS8#
zuSbK=F7V{CFb4sykgso0^qgF>k!`x-zTBtJPQ#Z8lpAW#p@kRh`?K5H^-@_3wQwPL
zG#w1+nZ7W^)z!6Dw<%1>?`u)<$@=Q+{zk5|1rGRhtk8)adVO)BqXt4zv~dwOGzXbF
z3wad=M@E8N;mwKUd<nL4eR3ydbf)`Suhv9J<i5lWVCzBpR78C4gK<OdL*xnEk23?a
z$#Zkb)HwGEwreSEeoinAE6E&@VsylV)5np{7gIxg&%Gc;7_9P~LmKIxsqWgM03vVh
z=2^fm=Jd$|Jlwli9O2eeK5j)H?Q?Dq4jX8Z^3Rt#l~TUS(S+R+kT%+-m1}&Ze>1C9
z{!Y;5(n`oa>>bNfb#QrVSXiElt$64IU*HdIv^cKC3kYctPIh^DJg#*rB&CO6&FV!D
zPOSP?kschg^#+-dXE9!Ii1A&fCzSp`J(Ce<mVW|=slslRZr4`$6I0{S94QTS!s~jv
z_z*o_?hlE<&_gOGNjKGm`NTUin7)`!uQm;=H`7_G)lmBun9h~h?VX|6(JoK;M9Jyv
zzZrO@7uDR1DLDWEQFdL7_0dvKPY+#`ZWjXy!|m)6(EMf=5}y;SVBG}pdCRW_*-`pL
zlAjAF`Pv3Bg$#;C1kyPts5i(u$EH`v_>H!dHw*Tc(ou{ohE>Q_{Ev_MYHar7O}4H$
z7_DHFJz2cIlI!x-EG}hWAsH9BV@{V&ZpnBPc*tGi6%8FeEidA-j0WY5tPA9e1k8lX
z@9eYLJD=I?oiC+#2(Wnvi{*DX+^03{B@pz*4YuB5`R9}yTv)~pSS+^iXE@v=ar&Zp
zE>8QQRT04)!pD7i&n_-+DyzK+pc@fc2Y6OX=LBwA1d$ka$#t+oOQV+mHPa%Z5r(OM
z(=sh?7xwz|AVAXjY|ZSoF;Re2-nz1Q*59Nyk&A*WY)hhI-xkH!<Mw17cvr9s;e3%j
zTUm4msOY<N@5UhbmsUpt_5jo36l_I_&`OJzB|Fry17Dke!v}y{G)(!|^WL+dEf=iZ
z08h{BDQLe7=xK71;n+>Cdq=u@mA(GIovs$8`r*l&(AD2lx;izZtG6AiN_6$6=YuY@
zc6E{DTy$0Y4s><q|5duefnB7lcbI)ZvXgqz6&ZiHfvxf1rK_{Zg&gSWWT&e)HcMBf
z@r4K|El$DC+=Q-ZFQ+SCn}36@@Z^Un-}Bz-3ctV8)z5p;)w_URpsOEl6<z)2e}b;Q
zm(tZsvH<pQv7K2F_NxtZ)BWmPctH7nrK0sctUs!kzBP39cV7HIxnJE=Mpy4J`+#JB
z#VT9AUwtRF5~NP-cfVg<UZks+W@^7$oZsAjRT^KQD=iNG^qIX4LbR9Dm9NdeL07-X
z=<1sHPFD}6bah=Xx_TGT3v~6sR?*eZ{wL__`joDo+=Q-Hq;&PGjIOTkMOP2^rmO2x
zx_T!$@R|RsboJ{px_XD%2fBKq7hPSF($%kmALHHA)vZOkdeZ6Y%FWVMX?#Hr)Z!HE
znN8@5_Hw%NwfQ&b>Q5P6o%i19YJEyq-|a<L?*e*(uAYUi@NzKkUyy^43;}tMWlvos
zO>)cx(TZ@M2WFC9v(A3#V7h;1JEp}ZyNN5QdQEn>aJJEIrGfMRx^OpCCn6-(NoWm+
zBRn64jyO#K0UGQcUuU<LNA?pcf9d$-zGb&k2STqz0Y8=$n<fevUbGo8jk|mrw`J2H
zSV^hUWvG(B@PBtYx24k|IQ<<bbZcosFK?4Nuj(<Wyp!hpKf&?-oN~MiH{p2Cq#W;}
zjN|<=aJ<<?&9^tldy$3T#uJrIR()_;rY?Xk5m1ID_WKlhf`h5U9ZfoSspnlU&e9lM
z_P@ywL)F3eq8E#{+!Af)^H(saT}V}=V95KFPY!u27?1)Kn66CE+3C|<@>0;H`-W#m
za~B9MGV%>mFXE_n!Q6aLN#*I3qb@IURHb&ezM{nX)~x>lN41sn2-e{cc`(XuCi?T?
zcM&czW-CL-G}arO-8E1QUDGWYW_2X1+Aa?<60<g>mR74)ZX`TwI&I{Ee>^tKZlF5j
zh^g_m?uW4l=CrM+8P;?IrG1HGbQ`SvF(+cU9T*Q2+uB_<E<C%j9Zke#x<=jr%)|Bl
zA!vr{tc;t|>*nrbF=QIy1FKYZRDY6wL_a+FLLZY)O~*fHuBFjy<fP@p6eU-}{qBx0
zn@T(+%;x@HvkAeuI_al6-9oIKJw<#*gB=f0dPg$mLzqXO!Hgb%77lGc8!7L+=by00
z=dY0|kZ1)tk_D?T4+^;&a+F(@!Lw>nJnC@TC&rkD9S~Wz7C>^(+z>Qd1POh~f6FcQ
z06^z}vY*dY7LuH58hpA3#6mIvFGKVK1L$GD(%HT(oOo8A1FDgyS=jUGslLYn4*Qc9
zO;v#ifl{s*-<BBDn*W|PF&p0%k8=Zm<lZ*Y#7~aLXfWhilmR__|D<_9$G;EyF_~I!
zl{s-J)d9HbLO-fAb(eEivS!8;02kfxFCGN?-g%S0e<R3;JUD%Z%X!_ZKkHC;z9UTt
zl9lTECotL}9lh5%A*$UIrC=)GUY}&u<q|Jzet+7WdN8OOnDM^t{Epp+H!Ae8IQ~G-
zhi@!ByhC{S{<4QdawhhZaO;NB!@Go*2g)Aq)${eGhtr-PEPFVc3V=VBgf9Q)jD3C?
zd=|&MrE~MnOU>E9!WMBG<JwUV+FkG}zCWfrTjp-1K>vV{hxRG%(=1=-@tdskU&_{b
zm(9>lV_)r{mNPKB%n32&Ve3>glA#p|mc08j`*>YUfq^Sq5k5s;C`0s32YFeB==9cC
zwh#4|v&ZO6<rd@$6L^TO3GjMgPUfScHIXw*zm0zSo<RMZ(nU?6uF?KPz%{OIyY_fY
zhRUP3SBA6i(<Ptkv4Yb*{kEEWtl;$U6wUfH6ThP$1&u>=rD{5Q>oJV}Tm(_Y+~gVq
zcR#hbuLm~zcXn@a_)}-LrjY}$<s)kU;KT2t+2cwQ>sqL=tZZikIP48<U;gGpbJWua
zyAjmc(jJ%l7_lgl8j~r5l#Xxu+OjTXT6LJ;LNCLVMRNo)3CWbQZKkWorr9_s>Gtfr
z_xD?y@}LvFnuKa)h@piX^k#<#$b0Ub6ug1z?~Rl6n!~oEV1Etisbxk%<%bt>I8jWE
zQb7w=`pBy7kL>o_+vk<2eNjpei{kBA0ey4(^miwvb|obuweoh@gfzZa!n&UOaM)E8
z#<0EekoNcjnvQnPMm`mo7GG<!8$;U;i8*ibwi`m*E+|YwKyOoBRNmz|=QQa^i3_AA
zjdtfU=6~jvN2f&&Nea&4uK+~yd29x#qsVKm#84T87Nrmh*L;8MCf|Rv#5nqbj=m3`
z|CVD^2u<4)P`lldc>Bfi4%DM(T4B*G8LWdL0b;%+4xbEOp+(SXvH-2nBG{0$!eJF!
z9-?JCzCrK1_&3I#evVHk`wn{}!x%;C#_b7$q;5pGG2Yq(=)+|_*%!Sk$%Fl<3{BTc
z9xx0+VBDVk>EX(}yq{I2nfKGX@9S|_KF{$;!guD#MN1^TVvC)0O0+CHLe8LEr^xTj
z>?+anK_X>E9_PjpUFlk`lx+S})E7?0H)jOOTT~!=%=`TZC>-S1G{wj%NND~nclc6l
zr;ygMlBFlBPBFvMiz(aL3Sa1!BO{7QRL=2ApbhqFK;p7k`BURySpNH*)UbRx>jkwQ
zj5?_J4`HQJQn}8ri)G<l{G^cABRi3$Bk19*26C(Z22!e&*JQ5&0@rV<?bL!Arz*sl
zUlha8{j#`DyetG!X|tkOi*EzTXUn3^l}zuCSzm+fT>5GZe4!aE7~~=7vR5?NOM0rO
zb;r{`_nlU(n9?X`zpn7<CLT-GsadGlX$aByy&$Ki5W=AOH6&*sYI5D)ov!X1EU9O9
zplV^CGgmPY;&DFi(?|T{SC!PQQ%MH<yFe-Z#ip$VsVL7_)(I!Gs%=q$BpqcSY#1`Q
z?+I(kHZxzwh$ZNbx#XfZ5bzGJMfN=e@V+w9O+b+8kuxpSN1+5tmKjZKm(LQ!s>-MY
z)Ini~3W8+TKrTvQ<s!f5An*)C2)lNT2Q~b@w7M6vx&@Y-I3QNqs~4;4oJQ)$(*D4s
z&2~OnD8v{W>`$96x#D*>0|5;#C2N*k61&-oxd`gzFd!HUCP~^QfJL3GIvapImnP-o
zIHEu?6<iie(2r0t6orBtQOBp4DlPydzytgtVM;DJPv2|+C~GsI2!R^yB&WSoldcUK
z6X)58k}Mz7+DtJjjtQ1n98<6535AO(2A7Q{sDMwnOjxjU=5m(V*9!xXklBu=7L83O
z!Gbc3Old?&8Pmy*Et%%Q8R6v{3vJ4a5~8}C!~G1%tG+L1LF`smZODiGg`dyxc)G#1
z%2#sjj5bV-kzJ}MR3)ZhznoEQ8DUjw`31|ZM?#Y22WMog_a_By5FwITT;Ku66T7kC
z!Ltwf(g&uR1=7(oV85P^DPx7=royk+`Qkd13Rioe)+N3iYeeFZGq03FB7GW>-5kU4
zM|OII+sKLK*2;Tk$n~?jPznL|xb)i@))2ds>XqsFU>|1B7+)V{pDKIV`9p9bAj7}r
zyyw^hP9e}&oxL@uXY9dUX`IaJ0D&!8?7LX%$lii#i9OhIjQrVKzm4@$9kv)F|7^OK
zUB1a)_C&gu{UGdRpujo|LumyJjw!KE4EOW0Y7#H+aQmHXA6%6}c&^Y|sRiq|-_XM$
zY2M}z0zMIzQP0_x=~khwA-ujRK2ga>C^|d8wy*JN!ENa*%5?WQ&--#^IM4eI2Ia1;
zhx^utQoWW!{p?Mk{>K#R=M|y;VhQTy(U1<r6x1A<cUWCe1hp<94{zOk(n4*`;UK2=
z=i<txjNV_qUR+IoxhN6D5ebZG!ZR_w$bJyuKPR_C5kY*Y0rGQ5XI~cB^n6Ml=arEM
z-1)tnv-CpUmy{i;^b+Bl&%}309C;<D(=G~$x?kdmPoI^X3Of9g)tXka?yLA;HK)sy
zc6-g~G4sX7{2!HU>UX$Gse0;euRiTXp1!0r+T;`N7kRZ+&*ZJbPxeFpsklY|+|56+
z7hi4W;lwMjZb#3tYC~13=e%mM#;U~{s}^glQc?L*y(q5|wMb*xlN<fKa+Fem$12hq
zd-<qRN$Y3cA9$~QmjdltQ_qyJSF*Ht(U9Dl{*ClXI&@N8DBxe|=SSOb4(A>1R@fG<
z7^1zcU}qoRV)sO?DhvQcUNTgzB#JpqPfB4;><`0q2H|)=>W2@i*-k1Z*m{Glv)N9}
zl2viEKe2xx{&0w%a!l0}1GG2%^5g}r+6wHSvJuj#s-puV&iDuYFFz{ed^1nv0`_JH
zpVRyH4=fL!yU$KaBlyuPbWTQ+s1yhz@e2vu^w%!o22Zwy_}P%1&6M_&gcafGf8;uY
zq>c#T-Ru>TZ&I>Zmw+xgG_hayLy{EiM%j5~usgjBcFz=H_lFdAH-EJRyL*QVcFP?=
z|4p#_RkRt{tx$lJ1~1ANT*AccDP|L3r_%M|iC(Z<2V5L>)K=2Vwqo8EVE2^ug59J5
zJ8Iu%usbBNhpAG@=e&e43L`aQ!a)x-MYx_9dl=in35G_A|CkmApp$k{@v}-VP0<U_
z@_vv|7P$bayuU$`nIOTFBef%xG}vxA6rl`<PJ|Mj-zAPdr|MqeUnvWc#Rr~Er&mc?
zMN{=uwNwxF;T`Gsr2=qVg`A|w2X8_#GH6$l$wx!uxk0AXK6Rh>cG)nSW!}tkM4l~E
zp-)~JCV+uz5X;G;H0^>(MX(x6Q<r+E<{YOI>S6iSpXX1WW_KRVF=oo^O^wG)1uE2O
zLR1TtzX1p%*FYprsS<5_ypw%XRsX)}c^Dd1j)@AdWi`y7qnc1oGv+_1Y0h>4W&r0(
zenQE3Deg@}(^iQ#6zM>lk?cJ{MzxW4p*&Omk{HBj5@Ib7)vB@|`3Ko9T#&H4fRkfe
zd0~NxddODgloZ?ziuSYl@`jicCC3!%J7LN2z9tp>y0fpo0#@Ea{-~Y(@ejK_lqG?u
zd`qJB9sS(VFh>;yB2y+SR8?$&+V4i|6gHCzr(l`fkzGt~v|Za{a^pbRJ}2jS(e%~w
z$+=&^9x9vM4ZSD#a37Pqy06Kp?4{WwOs+R9R`&I{C*~tNTYKyfPWA{s3ub5ob&Ml|
zpO>%NcwAC_PRui+^`6*=d@xU!P3)4=#KK5_+sDK%-26zN>0@FS^!0e?{dYXRy9U9;
z#_LxT`-&zuT8ClF&=EuCGi4LYPc7omEq!(Gt_r)OY-V?qW)^&;clI$e9Y);*x5ML{
zO5J41R&D<AyLmkLcJ>HXcRGGpHWu<L>8&EdR;w7U5Z3SA)Z<>AC)CUC-Pq$^jgsq?
zBYKq(eU#nZ18idxTirL<uIOv*yE;NVUIw<SN?;3QOt!mC;GmRwn}98>@Dsp6em+Y+
z98S#fq%|zlo@+lr%rN^o6@9DhW015>YF(9j@sz&Fe%>e(P{s=<HO6CLisNL<A&LBv
zqV{oi^B_g%?B&3_`AGV6z>0y@*qT9T#VYqRDFFWN;(fi_V5_*#O@H^UUiVg)-Mh2b
zy<5ue-O=mbt$uH>bPrRiel+IdGp%BW4R%*q2dj!V!=Ucwo=WFDyI_6F(zV$sXKB?3
z=xbI>Tyv;u<<yW%81C#F-U`WEt?`Ed&xpO_aeKrQ5Pj4J%(Rj0(Hc)|(M#B4{EZz|
zA8FVmuBXL2BKZa04u8GjDC}V@7sdgx@tiA<Ip0M5(jI8WlpF5E^^4;@`IF5#mwY2V
zSvT49`BM*X0rKX7t?>u#r-564vlTm^o3rI#+Sxx^W#=E|htS~Df23pSE=J*S9WAY!
z5Pxvztb$Rvafr+fdcv7IslF(L8F{phZG!~LEeXlN<eH`XnCxkIbS^yGQPl+{3$%3u
z*S7UO9ZA@f%Z`$^mh}`c)^38W-G)$RyKSu+c$5KF+tD)IG<)WvFLTbQcyokqepNR|
zxHat~ZR)E%S>@I-`nFli)I#B;w0oL{c~iovP5&S*?P_UP4P|fPt3R*ga3i&Ejihbj
zhua`LRM|rSbsM{Z0-upR4gpo$Ra76}ZqIm|smi=-_v8J}4Td4$#W+mwF`q)KT^6-=
z*{{90VQlvkHDbw8bp2I5p`bGa4<v`Nl;w;+F2m?aslXJ<4-82@q1%|@SdR`yQNz+3
zd0K01|Evc-Inw^+@^jEA7P+K6(*9Z2cH&Tk0)1yAuV(>F**88}`bJ#1UVwkJAK@&F
zjX(g~=;Cz>h41kFZR|DF4>AQ(&j)|of^sOFC|-!d95kXkd;~(FQ~|o(hc?=7?|tJA
zA0N~;7G-6NBNP<oFbb;a62}x_S{#a{$VaMzTE+GHp^x<b1!SC#>=uT#o!!k)w^`(?
zb)CjJ1mI6(amStzPh6yFU;TAWo4@Mfo%2I@j}yjC9A#B4C<O?L^d-7VY{vLzRBGg{
zaSFm4V26xU$(_Pv8Q%8v!<|)(a&lZ1tU>@mcd{~(2Zi$Dw<4We6D$f&a7T4SweTvt
zqq9XRLTI@Yl~3Q4Kf_auOz{U+cM6;pc6YVvkXPBQUcOV;;x`A;MolH}SZ|5R(bvza
zBkM1(iya7KvmIdKQ{oC@&FH%^V3T4Qy7e}yS@Ct=F4&XRt^TDeJF^5Uk5{87g`>S!
zr#!-r?gU-_F8hj(ghzHC>tRa5QiZ9zqQZ_6SF5(wUI)s>3478X(J;lQYixzqCEXyr
zrl4;w6ewBA2#jI1>A6}9F<oIJ@se4^-Mv;71&e)<1vcHFcr9nws27IwSm>w5t}J`@
zm&IoVvKk}1tl(*j(3#LF-W90hx`wzS|NrRacc^12JbqskC+NS<u1g2=NH(eOv(aah
z|6TD}B9QC?zoS%qkv-Gn&V@OkIVQ2C*rUm2P_f)i%!$12=lJ?msuaB9yZWnUI*YNR
z?I(B1nQTLi%Y+Y4&&Y!ejX{mMM{Eq<B~HDX$|>S!d#Oq91|?=6EohZoc##dp`eBDG
zQ-chLB+q~<Y#4>s>7#W67rQ#n9n3P=*tTwQ=Lo%whrYhX&F+n@ero)f4MMxes!Dw4
zhrt*~>rZ3(FK(H$J|5Xd4t2Yi4}V=ee`-i;ty+VcnFqztri0aywaV;28|vSEq*ih2
zdIv{UT942-v~q%6=VWsx*#(0@lUBQUxxW@ZvNQaKkcdP0-d1JZ)3Tge8=<T~4EaeF
zF@rr>SqdGDjQ4f!s$%ZQOd%yf7DLq5nHBY`r8Zcds%|ezchmif`+x|DN1MT=PpDH(
zwbdPYyW<Y$W@2Al8`m8unZR~#o4RN<kZfpgrEct!Iu;gb&f__xjyBr0f%7(cZf-hj
zvNm-}H-k;gyI}uX(CvS>lTn;RN)Salk>U2xu#h!~DrvHJM~jsO&%OzjY<=e)p>tCE
zzeDFw2uTP9hBq+sf?aV~m%r+gCJq=ERoS2v*OPpja))ff$ZU0=jYksjpxj=#ktw`}
z+lAdhY;+qN+fCEAS_xel&@Oq6S3b|^wPA(e;=mrRJ<@XzY-^7W5>$ihO`(dCinJTV
zP#c0i{}w3VE@Q<J+AI~oJU(=>;z%*OCj0du>C9Dj*^y#g<Ly`Un5h>RyC4dA{{{(E
z4qM4tVUIzG66>cTf{H0luSi(B*F3GJ^8gio3usEG+t_ahxfQ@JJ`!;^fjx#2af+a)
zuyOI(cJ9>}u~!-z#YazR)GYMrR({(wuo(>=pHst}koE8pw6?&hMrzi09fhrc>@#3h
z38p&;re9Y$P-6zu&-M*dzABLN_Ev#(`u{vg|5*a54i;|-q#U7T+ySJ^i_Z$A4feF(
z3%k*>9`|Y$38VS?Qs}67_=euA<)C=B6mK_d)lyU<Y|vYqV@WPqT3nJ(^;nW!y5eC(
zdD;FbCAPDp`Mx~hXpVQv5%O9`P+0Du_IO(tQG%|JqIZHtd8{fi)a(sf;JN*uUyMaM
zh8-k_^NWD$8^50`Ta5FH&j$Q{z6{{!_PEz*FO=O=ed*$2D4r{&iob7uDcZ`YBC;LX
znr@g5Ck_&0{e5!OQ-0zH)6&I|SGkt8k`!@px@7kQN4RcM0|FFmmkx2WCY7wK3gytx
zr@hJ0ZE}rGL&WM+QIL40APF8Ewj(L>@-@KoUt!DsK#&B_TBu2UfF}4>u_=`RH}YKA
zq_qD~JM=)_p3E2{Th%{mAE|Y|W*Y7VZ+fghHfpZrfPSohD}_6%>;`5Q*+czXT3V8)
zUFeok7<c<L%m&-rwY)OSF5w|&owujCM7(%h;9$<RGEB4MRN7>IGyb8HV_{;wAmcuh
z3^D*kDH*%FG(Dz#NYool?dhEooTQu!R*9Xl5DqP1Q9>AC(O6|YAjP*rTULg!98`Sy
zJ~r@r`w<hV*1iJF65E!#Dq-NHkx1;){#>V9b*lJImeHNZW%~xmlj7|U<X_iSzdx-@
zVD><o5BkbV6tOG#4q-uJDfb3oc`y}dpe1CP3etXl;j3_U|8{cX*pt&Gcd_>jwo4?-
zy578wO}h~}cx}8bWE{I>Ff%X>sh=u~lOyGtl6A_85vFmFrty2;+%<7a;12D)K?A;v
zuc5woP%2Oruu)Q7)}|65vR@+IHtt^&+u$fq0+2fG53h~Dkiv@B5Sdqx*Xyei5ZK32
zpr(Oj>#_mhk!2)K9#i-#(c>-gkWR3Lgek)X@e9A|Gb+BhbSvI`dbq@eM!W9I{%(_f
z$$z0FKp5Mfx9QaFg!>F%@=y8w!MYzuM>B-OMSNh-DL_}eFH%jM{A^9=tS}*g&64}K
zIHoS2&7XZXXZD)SYg>FXz~QgyY_82_^Vzc5RN0%`DDh>%7Ja!@p+7buibtgreQ=vr
zZXslKg^30L47Y!2f`~tkdz}Q_kQQxaScFgW!f5;1SF%r}O8ZYn2%@9yp58ZB!KOw>
z=o+$=6Svb5x1@He-Spe$UIgt{*e?W3s$p}X=<#T3DDd=noSzbZ_;HXL^aTA*$Sc9r
zh&&lw$(;TLp>`16EV*`z&<b$gFqUARw8D)waKgd9(Seab;)WKhkUZ%mNr(_0sqh@=
zZ;7f~YAug)grvY)1HM&BbzfJMqQ<h}AmMNkVT~NWDHRplq)0mww>uKUOivvrz%|(m
zFeT;@R>17M?b~GO8rbbVvI+)g*mZca(f$^mY%*VF5hN>$Ajah=o6rdcCwB7ot?@{~
zP@bfV)T^sPngTjhbKV24kHJ#5ihRm=z{F-E!yU}gFVB3NECxu9(TW$WJT30ezUEBg
z76;Q<TR)ewmtJ%pAs6j8bs_?a%z+3s+xML(z1**58D8oo6xxw>wB9Z~)Mp!rRzoW?
zoH9_Q^xl@y`;#LDW?m#Am_T;!7t27Fvp<ZMA1?ofq~zc|3=5_@=JwW1*3M313#$GP
zp4tm>^mUq8t}VLL<vf=;;$)0jW^ZE8Aq0{rG5Of}nw?081HA>a%D`pX#DjyKZ&+7e
zt~m;YRaCn77wBGh5N1O)vM=~O&E_0OppT<xx5poEi?`P<MLF<st!*LXX9G_ra@*yp
zmdJq|p&MnNt8D3^t&|u0^GK~G)L`8Ks+;FIDe?sl3VOW=L~9&2pq@;a+fBpx1%}wV
zJR`Gn*c2msv0pm|GHv{<UoYUEDB%9ZfqQN_aR1@J1%YbpsCNW&F(?6jrr9=NyKrT*
zC-Bd#67V-nPk|3f+Bpnzpf@@6L$t%`WbCA5*ZdIea7HfJkl`AeEXMM!UyOC{yck`+
z7;hFA<LyH<4JVeqH-O%Y@h@MD;~_WS7X#c%tKz)48Q#U}SK8|Ytg<4b)`*vFvL-UR
zgXB&n4<8)BDWn1c$B2oHvTMTVU<_^I;M{q1l#D}gv}zU4TjG>fL1i{&#FSIi%c=Tr
zc1<8`daWq49A;=8A;1b{U-Gw%6t5nYN^6v?DN(@-Qx(Ih);`E!ZM?mBnAzg(G6KlU
z*ViWn+;@m5;D@6!3i$cE1^P|Qy2h4yZbX5y#ug*1q|{K|nc40k>z7D~DD&4Sd;Ktf
zLa<|?+&YEu9C#<1?Jwi8O95u!kqQ+SEe=V7@!XGw5cdeMS19l5Cd($1v3L_V_`N#a
zaGb;*cM`h>5^K!(*Bg#0@<BZ2L*61ME0UPXVKt}KcC>epS&Hj*=sBV}67>1?lj${#
zP7hSuujYvXUhXvbR5=Y^?KG&SYA8-5+X?v*Y!s;RGQ#x-+OOyN<-ld3@p5mZE|2re
zD@Y%p`P$p=*6P78PuY4BeWggEc`uIQ3=@w~Im7&uqsuu(ba|m1UHTFnd(-IIpo`R_
z$}UboCbm<yA!X4qUqC>?@Ut&6d`k;EridbJS&KpuQ@bt=EoA*gJxpEya=>P=e(j+u
zzn1Tn-O^s_w@hjA?5Tq|IZbbqeM_#5Yj=&K55>c<in?SR)T5@e1<yS}V~N#@-6swc
zl`&O}+R|gHJ@g{sm@mWbE+lNdf)o$m$MvD_EEEw0ZE{<_4?9U!r%g0U32bPTt{n+Z
z9jJ&}cd9%p<awZE&LOQj`(|I$zS9H*Tas^wiA%U15LfxU>u=Sxqc1VTFM2e%ZPTGe
zN$ddRb+pE2C2DgGI<EPDbT_LNWh0qarVnb~9Rk<8op(07;-rar+m?mSrrnozD0ZA`
zgtaK~!6S5~<vT-rQ2mZbj!G}JzekgklhezhX0v520_aUnUQ6GRt(MjBWa|=}i+vQ4
zyq97(MSh)l*EUzL<TD$JCihLLaS^uDDvBJU$x-de{y%ST0$^uV-~Hb^C--J%$UX^4
z5FsD}+7b|V3D`+8A(KpI(wPaFuy~!!+)0Ma#>|~0(30Q;5M09|F10~Gt+m0rRc#Pl
zT5Zs3-Cl5^E)^7giz3*%^|k-c_xC%`bDujIitoSnwIy@!eV*q$=lsrZ-_8Tid|2-Y
z_va3>MIYT?0lc?wSE%oM&lFAEjUhyHdbWmC9x>8vve^{kCD9XC7UqL^(iM-)_$y<z
z@uot!8;(^+%yVHZ-S>n8?9BTJ?D7IzE6S-^nlwnTwVnrJ{V-9#k6Ej!;L<Cjo%cSU
z>XPtBHf1<F+dDseJX%hF-z$k!2wy$Ped-Dxoy6S0*u-pr87x1DD0*B>*-yQF7R0%Z
z8v+GZvI82!Z+6lxI9#_B-CV5Ud>whAzv8>sA<!3vpY_@VkQx#b*Ch+cD8-Q@ttu>c
zbLKTC>AA=Kxpe9E&zj-Usy^+HzV;+HJsxqj(N|pvZ(lKmm}>|RmsZ92#@kl-jSr_c
zMn3U&R2E6Ns)HshIud`mrFfJ|xG<z(&o<Z=1czR6r)v5>V&LW_i^IEZ;s$T@(L3!$
z*fQTP<t>PKM)*4Gn;kw!l<g!j$cGvIcEyB_f;xY>&k?HMfQBQb!jC6R6=rW@Mh{B|
z(K|@m=*94r8E@O0ZmzC2gum}q(}e71i=pZJDx_^w_#z>uQ2Z=gK)SOI7qLLNx!ae7
zFIl8yi591}7Q@Cwc^t7x6kFcAZ<Wm-C7Dn7T0jWJodk!M;F7<7Ho1o37kf8wV)aG}
zx;aJ|Ebx1729HfDE~JLe&Crv=+v!+bA0CGJp=?mY?Gf}JzS7pu{zX;pEhlSfr-mO)
zzwp+RO~;eA^oXX)-}+NbS91-oElDql8sA3CMJ3(D>IkYD9y?LT46s1<+Z;cWJF4j(
zh6{Wlx52`DAKm{1n#spJK4+$dvLJ}u1wv0+>dU5B*4%J|X&T}fCt*~f`adhY8kSmD
zyu_8QZ}(>x2Q}UC3@z@I@XymP-051_fB<<Nos-EUmO87vQrn)BWLcQ@buTlR8@_6D
zODz;?M8UC})U%qL5~BX#69~XenXvBqiF%*t!^fOkoDNt{+Gatvqspmf({+3r_BIcr
zBy7Mlp<s>g=d~92d1+7KOt>+<c^MbXmM&35L#da~E4kIJ+t(Sf8M1QklPfeO^mFC7
zJgL2Vf)D3s_U_vMo4r#o_RoCpb{vi~42=hExT4j^;s224-xzjSH-~fVTxXIP0fC4r
z60Rm9UO;D4C*AO^lD>;>MLb`idpr_^w!UBLj(PJR-Y!@n4$)EI9%6*o#vJ4G4JXM0
z3dLtaJe=<4kWQ*aVUssfEmuSn{lz}q?9wnA!)vkj^Ow-!Vjzx-&^nush{NmRFG|)Z
zOcq{p2`{VglBI>0yx687=9TY&r%=LP2+MC$SQt;p5;=d+8f+5ThB2{&KbZwa+~3?M
zor-DwRoy{<6*#>t+~CvZcO8GtIeGh5NJl7`3AYE>vvKC-BvpE5KWmj$BVRAXs~R|9
zC0ql8JDI$G{Bn3u|08GkC~bjn){0#MMZ1HYcQvk-l;sJo5@E~2>q35jaq<NsJ_IB!
zJxiFkEFADjOPZQa8EAs#@<eWxmp}bP%|-Ak%s(OZ>BX1ubhvS!wFCN35=^w8e{ZIJ
z+IvS*wlVxIx!(Cp<T(D#)isV|wt!-V!s+vvojG8tK4liHP9m%@A3l|jS?(58|E^g@
zMmB|T2zHu(W1*l*#LpJ$mKuK9>NY{g7JfJNVTGJqIubk-O9xbZcyn>XwwrE>l58hC
zOj6#-!if<S$%~)r*)X3hqnqO0FhlZ=&Vu7vg-BuX*?<67>(~Djma)X<dXI4w=33<K
ze+MwgXSWM~Q@s$v{ak415lg&4n;`Pahr2ME?r@ajeG3^~5N7zVVru>Oho=`hnZ0#K
zn47fuuT2`Bhr^8<B<AWjTF@kX8C%9;CeY7^8vWKUOqy;G?r!X{N549GFd71PH^RbX
zV?%V;YLrD0zGSMQ@2t!?VWm$H`hYKT@CIj~ajZNKY=rLr5NoCw{@l*Lpnes0NT#7u
zU@2>Tmc){|xGy^xhYnD(LRETLv@Vm}?Xhdkjb;fc={3YK21-$t++h&WTvRd?5$=jP
zHf9C<bIQV04S_ro<okGO!5{ip;Y9_dr*R{!`Hi&xk-i{)?RkWR=$%~`{}C(5Ci8NA
z;5f)N+!PcLIUYnMr3Ts!pUJH%ZZoQ}qbZ<E+xVZ^gJCx(_}OUT?85A`nDF_$icV9D
zO>&c|VD1&woaArUAo`G=ae+8XypP9i>p?r7FGZgK(n@Xf?C_x?%04i7eoqtax+oLk
zowHE8m>xFPUS>B^J2j;(%nm=a+b##nVQu|EoBBVQW5o$R^3L}ezBh!gTsfeyC9gSL
ztk}(8KKACr@#e3kH~)Z_NH86<ZcUQSdgT)&Rar8^@vJCZ0<nc>57bWA17$$c4<{9J
zz#yrJl%TriVi#0N|9P{<&exTL@k$cGlY*w4;FlfbLqq+u3;7lh?Mb0H!&wQi#}rUz
z42JNb1)g)_xcEHt^vDnp%hX@2;`+)8S;cR)3?=wng#@V+q+PiQM!3CL{{p-HZlnA~
zV77SqgE3F2)exMYW*6J+<MX6&aDysZ-iOSGX=+W+K?yk{d<ia^e|h1V7wTVF@b}o=
zOze)VGFa$>@bF$4<Zqvi!H#hGD-e{#Fb052eEdrAwu#_`*3Ea$Cv6CeMBE!JwH%d8
z)lilucO6(l7(32@B#(x0&IT%bHXkwLjchR`vet7JU@*JDm~#wGP9?t72NO}0v5GSC
z68YDFrYBW+d3Zw|$zY(Ec|8{gCCu^iB>^PmFT2EDqzR#LDg+_fM|eW9p1I*Sg0bCm
z$cDHU?35~ZO8un}L&dg?yg83%wI;65<KX~>1$gO-p?^TeN_eisGeGWmV1+q`wjEj_
zWcu!<Q6Ex+M&nP~;wYQ)#ie1-Q6|!+P+cKkLhO^J=9NcF$;x?I#U47~40TzOe+&4P
zpS76$ED|=b|6Svlio7okCeCaS6BZyLWLIJNi-G@db3KLU&@AX^VL5p|;2{b~vT;&3
z%%aMu8(9lWfR(y&TA<fFtGK-|tL}Lx=vN?zBn>Bu1KA2T8DZpi0QInis-|K%?g+-$
zTOChRkX&1Mu1r2IKP<5ymd63W*w5{wwc8Au0mC<j1N%Wg6#5S^`4}{h{@o;K?mEc7
zqC=i)%+k7wAWWbaV@hw#sGzLCRnDI%z!Z8O)`U(Pu>0P6?0xz0GwwSsSSWsOWu@*O
zIz+1wrbb@bEOu97Kp+u8>Tg&I=)aWF#5^pYXksGcOA_>d%1tCHysj8-V#%k;0LsJv
z^y;w(s;`k?oBpC@MQZD+fMkf*`VgkVy$5?vxcJ-yg_9?YSFs~Du686JPL&cyn(;oA
zIjUWbf`p%;R^nvrW#F&e>Sf{6zA)eUutx=Rg!|>Hd3wzBQ1_=%ycPO;pIME<sMz?#
z`g?`>b*C~3CQ=u!IA~P6i1VX(;?(f4lRi&GBbh{67#0>4=@M@MKJ}MG@H}GjWfoS+
z0+ZmfmY3RFf21*%C|B~mwi5Ym9$;lJL@S#D-)CDVLv!R#y2#z&UDmc*BpW#3o>F&C
zS=1IQk$oB#a>{%$A0~RjTnu|sQu8EXO_7iqHXk%OeAcRb{R%rEwSWVDK~I5<TA12a
zd|mQXJmz3ciKR`%!d|>FUm=<BXZv7*sN!$5#R#$AZO$u3VvMVfGQj`N3?MFZaUuMt
zZT87ig;P+=RLQEnKY8i_hP|B?7m6P+tp8Vss&=%g*e~=suGnKo-ipU<?u|U|6BdP&
zoShxM?~eeww_z*H{(K>S1%9(1T)m=jA`=BhWGib2%zL?%+o$lj6vI3C74l;)_kc-1
z^FhS0jb#GZL_FM|&_`B0a371kg)s>5VEx0`&(-lpl2z}Xy|QpFpI6EEc@8(>1PzZ-
zxvWd8rVLC!#aAHaZ<=P0yYi>RFK7p9`>BdR?W%52x(xjP=U2lZSkJ8-U?=0}{XXY}
z@xV#K7i9WuL#WOwb{j9qpSzOk6hL>*_Nav*TLGFK9%<tBZq_g-eD&%F3Mays8UFqJ
zAlG=|5|8*lplPYl8YZTr$zXs>d47Y@;fJ_+sYoPz<LVySb>ThyvMhYNx{t!r3}w<7
zV`dZe;?!eIE`z1FhIiL_J!?4Xt`dmNsNy5D2-<SXX+=f2mdf3Wrg3$TY>DvR2%fhc
z3!d*Acm~X{q<zoap!P;tnS34ZnZ7M*a){qb9#q;_HHL9<z<DcItf~mEf7Dm2-N|-p
zK<_%Q&~Ucg-n!?N@gDJM;jG=m)p+@ucsYDsqR6$Ld4>903;FH>x`F<^mFK2aJv&<>
z3EfpcPfC|LGCO?1nHjHBYwQnD2ri5K*}R<+=Q{KfSu6_<t1?+SqO;Fiv99u#!{9tS
zx@xaiIL_wn!bS6+6OMR%GZDIXnJ9*E8sG&IJ$1#qOx@(C`JsGpqahX^Cx7!Q6|SMv
zJeOiMU3rr!N~c-egFF}`Kzb8$6fzeB$vI2V4&jO`3opW>6aJM(fiDcVu<LwXsKUR*
z25Vz#5Bt<$#Ukc9l2x?6^EK4_^%1AKD>W*GO7!H#g|ozP@M4Hc5ACC~C8(^feuPd}
zdRoq#3^Pum!-||a*Rj?hS$+zu-cUFj(TsDCp>M&Fq<DLhc?iy$#z5M(1NxTuS1u)9
z@<=|91i-Q%0?^84K8ufF=sotjIpHrznSi=-lJ94OvUiy#W0}3#(hjOM=;w`8vf9IW
z!OJ>4bJ)u|jCO!0?9iUBmUM`7@T)PVZ-Ik2Dw&y;e<2aVjpkoHPo9M1!-JNGVPoaP
zUx6Gf;R9FJA5wa6F;ENzMJ){<wZXh}<TC)tQA&c6uIoTG6hFXH%IuHj3R!OOL;Iu)
zsTyZWDFa}pmvd$-a=82+>nqnt5zl{Fm19HwCC&}y!9Tc9uU3(c)E`fa_97jAu2ap8
zLBwlu5;##|i+ETPPS<pABIB$=y`FFc7`{=bCW1V)pR>)S#LiHQOOG?;obVp^LPLxw
zMl4c9fq7Dg0=x?N{5FRVfSV^!J5SUUj(-^NDOFJd>E47xW+YAw(<sf$*z8Wd#m>H#
z`*caT*3kl)O4mO2keW%)(mS+2X#|3Ui;1`)l%!o-oS6YQplbg?%iLgAzs*5$A<Uz*
zHhfhEz{#ty01Uk^b?i<PKh-5Y8dUBhA!F*PoRCkM>^T5@ESs~q3YUXmjC!df?m@0Y
z`}38f#qd&TT`QD3X8gLxm97(P?e0*ued7UDSD}ST%c9#eV?mVf2kIh9@peLrzFEBE
zA9=^}1qSYg#SO)yg;T8uIhsT9u#v-i_v_f}Q)P5z-y1G+wekC==p=7`d-csXC2#)t
zQ@r_;ycys=&L8ZmGr~dcW1>o_XP*Bhc%M>$N`0IumsS!iynvO?PgiRE&Dy@68hdr1
z3q?hiLL*_+Kh~`6L%udO^|>cm+q<4(Z4cH$)!ua}xW{^hnjq5wU+tEsUu~MVJIy+I
zN?cNU$Qi<%N3`3rdBdkjzpg{LEt$57yL_SVsafcQ)rGnTgk5>VQ!Ml+Gc5E94SI^I
zh-(n$a(~x{Yu@$w>bo9EfcpBUc-K#P7XV}}jxe8a5WW@h@IQnx-`DD<q0AWDh(t@k
z%in8FhN49q(!@|!w2CMIMG)ZW!!b7H%#-anJ0FH0kXJw4#u`HSac+akr6K!bSS01~
z1Tdy*H^Pvr>E4hiCi**o+y9R{%y&v9DzjNcO`!1tHGXTt#9$sDL35Z@{1jJJyzN&%
zh8;!WSqPuFvd41G#Xs<83IgFDugq79VQCLfY)D1J+mk20#1q8<U5R7ekzDzpu4Eqh
zq=pM$*RKix<0XILFZsH?#NHmqxjT+i41dqHo?<wa6=kK<Ehe4jgg5`m!%C4a9;z}`
zwUlS(?}e#ibzrXXl{=1PJ|C(lg;&6VX*`w_aCGst$d~DN>Z#?Hgug1@|F1qgQCx;^
z3?G@5H(~YuKhc7Hj|IP<0CU_YN^HP1mA5ldix-n`Y+;8#`@Mu6sCAk-s&U)zWq2xr
z@UD|@g1r4xma?}Zw<8W){+9?FQ`=|NBY6LOuUbyB{2$GJf*<nXW~5m_`71O5$h@)!
z3S84Icj|}2a?>rIP4#MMDoTOn3}lo9MtDUX0!hNGAd9fw91Kye@%=KtBx`81QET<m
zt@h$4l>C>zxL)4&LbwrSj-eZRaF?d<3*mCvZrmQ0kd7F3kzylbq7F*+EhMQP4c829
zY=84Rf4)%vQigi@HrwL^=#xFt9f>7PN(`IN3nctCDzS#1&C@>SS&W%4K96U+Gjqt-
zt6uOJ40)T*SN(6ty}ri_A<WG1G4A!I-^=hnVEFK$VTcxB#(;;fN2+#XeV9u_SUGGQ
zeH@BKIb&&A?XG-BBgM{MR}mW3hhHBj^!Q6N+g`28d8I~4{nn)oh57v!F1w-96D_%4
z5{@K^iaR|q^Zk5xj&dNr<6^T+EXG6jrJMR-#Il3&di~4Qu%M~_2`Q;zPsO6cwy~c^
zZzYZ|TRePx4mhGzEbbYukVJ}&uA1y58{tyr(Jisb{riMe{)X_nIiBtI^9e0&c6hY{
zV}veck^VbTRf`D{i+oM2f#x~g$O~>ny<QUTi;F_^)6an4w|T?__;|gP4rIXcQ?C;|
zET?Q!l35vlMLwK{72Zgb0QeO<bppK4aKS<k^9qeuaSMoW+-VHu1~`4l6!W)T;eZSk
zF`j?1cov7>@#s?`<W0Y0Aokk&{8aJf5hLf)(F?%ZY!ptWWJQ^ARyHuH?a$1KOddV;
zKQSj*1D&*TM}1au8_lm28eSf2-yN%y4Nlq56oE)|6Plq%^m)Y4OC8_f7&uXyHmLgV
zLi1()I$L>$%TLx3GKEcU3{wr5ZJ{{NZv1WLMqMS#w_X(65MH%M!A2(fsb!oJV!Oz<
zg-JghS$-G9nVd~_kc{zDgbx+>tdjqU^=(!AqX)%61zvNcW82AN<mE)_5GTe<XLkFm
zB1@;xd(!2}&qKY;d@;o&1!ctwO5;B`w!tU%bRfLcIXEDsHl$7(h`*x>LPZnl5O-o*
zVX@k2T)@`|&=!M}cYuhQ5j6nKhj%pOH&{$C>{($qKXMFE-$E{ofcog}2-Lr8KxYEp
z&oAU(T$qh->bbo2Nf6VW8hcCx0VkcDK%tcp+^Y)po6V{jXE&;NP`@KSv^jaG3fy}0
zIzX7q$Y8E3j++xRa!#tvpm@T8l8u4jw}eMNELvII!-v_wbW(NsOT}lhgFeCQ9iocn
zUl%tn0p=~nXTE<0gPPU}7S)Hh&r?&9#_;eJN%N7nr-;lE1sZf#akD}18i$^KYAXJr
z1_9m*BQV?FAmd>A@)$Y)YbdT4*PT);m%8FBbdiLn^XuV1+&(C%bJ|2^KQx$bK5mtE
zf_t8zF|TfVZRRGfKnYL8O?$)cfhm5;hgUU14nLM-%G`=`Vunf{t*sEQoYL<)$j3n=
zeBT7O4r*wJ?V{Z3hSs{%D2Jn98?UYd@)G{ig-P42Cx(~{E{Bg?VPTMY;d2b9ighu>
z4*^oi8s^dvzBo_QJ~@2w3eAln|B-rK?V!5YB2`w9!rGw3gRtkYrEet#3$QzL*diOW
z?CXrzrzt-YAdTUd$5{YlxFQ>ZjyAgS^)uc0I5%?3=V{?ub+s1j|Hw0&$?~H<-o2+a
z%U9TO#^r|wMe6{-55^(@-ZsAqfbWlG0C0$QGy=fCj70#vo&M`H0ss$>{MuCj%-KL@
zyQQ{|IS@YPsYV&sKS21*99!G}$<@O%lmMyf(ZXFK*g}WLjV#&b<<<SR1^+L1uGcL1
zy@1sh?C#2RzlVLf|BPH(Ab-KUaMuD}7kB)dCa&U+|HT3=cxm{?s4{pO!@F?#Hnhc`
zv~M86yB2H^FKogmPmu#YQ^f|8{Wo4vnAahs7(K#+P2q3EN^pxU5Sb;>)1z})xVm+5
z-}n=D-`z9a_a)s|3~yRy0OI4q!l@4yPS^CwqzNCt*v2-u`GWAdXUmcKk&CV9BK+O6
z^G(Z?On}#yoY@5*B!i0A?SKJFhr$;fitjUaM&0J$POsa%+x#w6KOf`JTfQpEk@vXJ
zr(^Zz`+96Ha0h&|ABL{$Xc8|yy*_-2dOkVq-rr*#ne>Bjh4jbpz24+0CKql$Np$zU
zUJqRI4HHa8-An79mB*G%sx(jF)_eCu4{{PwETLqWS;Q4UO?i7rl3H#EBU4{y-qOQF
zUY-N}vwa`IDzpfdQD`GiGsye_8{;^-t)2xE1)7f_y?BNu9>N;ZY39S-c~3>Z!6fXr
zKVVn%?&H)1b#_=tZ~%w5<X)lJ7QVEDr7aV?tOr*Z^|oa_@#3`-67?&{9%-OPpJ*pl
zqWwgVr%ao+kb^>yJX%=vvO>e>?7)*VNi`4}6rW_UWn{dYBUh)NxN1;Wyst_oH&`&^
z<V^+A7MDvORP!GO(4j{9?c|phmMITM{bgTeY?*hROnE1BM%_u338$!A!Se?lKbg~1
z;S_Lx!xP4f--D!2Zn7YaO>vv4j_<5;(?a;BvDy1fa^00mu6Pd8LtJ!JosX*Cc&X@O
zqz6<LFhh~!jqLA@5~Psirb7LGetx+@C}BFYsC@<lrr1zV3T`Z3gWk>$7UwPLW;xef
zsx=~1mBqxV2kMh6P!j~5#c?M}RiSQZpfGnW<AuFbexK1QTD}%5CDzLN_>6PsBAa|&
zcp(MidYFz7ZE72~q#Ix+{r$+{;~IL;C6@hghGN_c4%R(qQN^<M^5notd`n7&S6!jf
zEwisJi4BzzS%ht2SN{_ptt31mjpT~!gI)K0w^h>zF}CG5U8DA5agg6;2T>nc2I0C7
zVz!Nb3)fts=g;@g^N~RMRDH)aR~*z2nRi^r7?$j$#p)XBp8n8aSbvH-a4s+F!}Ia}
zLn2Q<p_bWoX(V5Z8cF>k-VG*vfW%6%(tlLpSY)MKVRJq}ilvmkf0|4(>28bn{xEZI
zOj+?u4dKUrb3RNR$D-#%XHFu0UhSc6LId}*TNT^UKh)IZ&iHu5^+&6eW&$Z@4%Y~z
z|G?$vlu<IAs=72bk*9WiVct3hl!3jp(73N~2CeJlf}r0148xOa;R;QXp{`==a54Ju
zOe(@#r6PnA3`0j<ntW@f`|fmA;zS&I0Fp|&RN$&5D%NIQ@lliG1+Depr>*g8GbmYq
zl~J-pH`z5xAwbHqKy=joe023UDo;JA^S-hXRp&K@56?8?`)y@Swz5fI+2NV)`?9a>
zf@EbTDI3l<6Pa-K*uI#Bp|dEN34IC`SNbD9OO_L=LAxZ!JRe>P4-Xekc}bl-*J3<Y
zLuQKRud|v~J&Da!EmajQ0&MeCDn@X*9ge9&tP8khH@`dWdzRBN5SaA6{mM)#(qBnM
zvb0-*tPX*1&UD{hu1b9hRmztbL6FAmU%5ZRfJl?UVEPT$BsVNhfn*4xZeb1otQhy4
zaLWWiCKmnEIfoG|0|vj@;V*1LjM@+$#Jhn$p$<5J)&qo)@YB?xsT$v+i{G<I4o&P#
za=?cF*j@p5_QaU8v4BliD}+zZ(@gGQQtF?`%b+!3Fp*sRkha7Fq+3v!sr%|5jh)uN
zsU0QF!9w=XuJ+eOs{TrK%$N!vBn5%E_{+E=JPxf=3jc<+Ee{9g;*qg_Q1NAwvukW3
z2|y&Q6r8Vx3DcD7kw#3XMTue>XWHTAI%|2syMMvKIz`+?*YBr3RFMmu(%`3AE9QTG
zgT+(TpAFu4MmVrQJ<bs6rpwOZyY&9k<98wM0%vZBEAb&Ih58HEu}1oJ6qbtaWG*#@
zhcen}WT$s9Gx6T<j1NePV}&W~P^$_HQo~0qq&43S#jj=tavuKPxz58M7>|bgPv%CS
zR)@s$QDy`QzvERAednauDek3kK*KwIH{Zw0Vi(rz7N9S%1+?5a7A=2=oI69yuf@J2
zUqWbtX|WlgW+#J!?my-@xzpHv%1Ym7UytV)F8Kv+HM~oWw&`d$GxJoVi*P*<YYcO=
zjL*-htO|F5-_p^RTUSt~lPs1EoB`SXFL3RrY~b8*y%|?v*y3=&g(&M>C44i^3wmYH
zO{hjEBQs!64zKmTr*q;Dr|Soq0ASnWsCNi#r7Q96x3lPi6LqC5^6@6MKt|^G9yYvt
z+!;Zw_4N9AW;-9}IrERqbjw@(mOXyUPiDI1jobnPoo!wsO+w40WJTDv`M@y(V<v2S
zw{xCk1EO~N-^I2&(DelU8xm}5F|13m?XR&)6>t&!Qfzy_ODdt7X(XS9Fu;u(jYLI%
zdPsckScD^_6YjYJ17El{FMMpCP+vO2^6<LabtZ_mDnnC|t)=aUo`$X6gTg;I9I;9M
zj;I#-S_ap^ETNj%hoM@u(C=C3%bdp8s<?%&D4r%O1Q6BY);Aq-8XR%nHq$NNcf@%n
zt{XuJjG?q{M|CUiz&z!2kAl<ZG9j7z@HT{R?%M!2(--pK`L@E)_*S}Vn4yDTKjtuT
z)4UDdY3^-TRAw;6+juoZf=wl24DTM%N(?~fhTmE?;es%A^-6g$><98XH*n`tew1{0
z4mT++`<wGr-?ucpXC!HX@(p0ed`YSe#Wxs~a1%|3Qa-#Di@9;V^};_+u|$C(MMpW=
z_82v3LD$$Q4`xPT0=(j#=3ENlp)q7+kFoynm-F@RlpsCpFj3+@d0nJQwDv0Ct4iK?
zpXPe*`e_oxW~>v^%`G^6#&;bv<FCgVzb7-}f7XoWBr}#WNgC=V#|6Q`lO1PYYL#6o
zNQq8*C&Lbd&2|1J{Z#eFs(2tDeuXu~J|7vw4-#`wvkn=@f=}DLh$#&pg9WFv;pT-+
zv4CCw^nC65>EV;ZN&3{M7YUE>RN72@e||kbZ;|lmaDROU98m#y+}_&|4vs~^eZztz
zjA82a1Ma2MUNdANJoG06rl9>5-z5L4YV|?OfQ-z_)#{(>2L8k2EUlWL2tB+mD9qc(
zFBg~t4(Ey0BkplO+oPje{WNNR(*kMFjb=Z5_D>*KlC3y@PiuXAru$#7`>8`qT8-E`
zK9sKGv$l>S9O8}1IZM3OrC1%FwB_M5ZX6sd4YGVPRf+FNHuR}ErRg41_#`C_zGgHI
zvA@Ojyi^<<T;$>akWQs)?Y!`aC!W;^fVUB<cc4yFbcf9B^XO4{2*^|w4nBT?d|cN!
zV$ngeMD}L}jYI0~o~K`()XwnM1(E{~*<63$a^S5^zS?PWKngB2bp`cVS)VmOMSuNg
zGnf%k{iEg>ZV2~}TAYG=KWV=-g?lqMgB_?ipIqSj>?cPfS$t<feUD)>W@n;B6mF=>
ziyy>2xejUeOBdU0l5PHLkk~1ym|XwB4BPs}bX%#~vNu`2pzT@J3SY)f`f*OoQiRn;
z<0St8&J)c@eGLy^bvRtld3z$0n=|W!r%S{(hW~A3MMqo!5#84}&UD|;BRL(7%dhn}
zh(CT~+VZZSVR^rL%H?5Y+sIGvWEggN{sSkXT9N<eg<=wmZ8a4)vA;djeYfjAnw%sS
zc6B!!ZgBJXha+wt{~3oVFAqnYZ%iYWo{Z9zGK1gM5PAJVX9iz2Ru40XMqkPd{*0E4
zZWSL&F-d$XJnWd1<q)12UBh+XLq?4=h)W`poGlYXyvI1gobZl?rWVGlvO?Z9<1(=r
zss<NBiYcVcT%MZc8B@3uC4}Y_mbd-;W(s#M{;!zAYpyyHz8f+BV;LNXc>fu|FO&D4
zk%SF=(SB(Pf1SD6*}xYUIve=lNMr*)qK!$U1Ie#>g~IjLQ^dR$^@9-q6D|f5;wNQ$
z8g(2tki;E}an7%1w#=zvCgP_IM3OUc!EKZqh3_$rnNt4ut~?xGXBJ*lcwJ^mDdqp{
zSX#Muru%;7wDPICNct8JIHZV(tEq+X-DM~^TfH&C8>p)$nVEhAbR6(b1GH9ZvR+Pe
z-miL+IhXUV7={A)_*M9nG#tCd{PWU4W08n|L?<WdtLQ}{2Y9oG%42HLfAID>;dT?H
zmip#cud)zI)$M2|BZLNm3VPk_P|-oVgzlx-CPg6W$5+RjZ;5joid1AZA)1By$Wzn^
zdIz1UQXhUua(Z2OEA@jbxIpsLeSAHPb_ltB(F!t1LOZ^&f>N5Ww8Bk;BJ7e?IM1)=
z!rS=zscBz5UJ`R`T)vWM3C}u5c#CZM*si>_?1yjP4<XoTedk%3C$aBcKy?Wb7lHX~
zGbZxk3*5!BKfJH*In3JNuJDt7++^@BY#7iDH|MD|^50)+t<0E&Ui>WJPVVNE7e@Tp
zwgLKpHQc;RB@B(>Cp&uNB49=zUUo1vs6EcV?xQ<v=4F;eK}YI*@qwN+YgLKxA>6&6
zJk89nU$I}`sb7<%P-dqRkq|yM?cRT|U+<mvt4@>+VI2b;uD%QhaR`4@`>L1gH`2jm
zfPFd(yB!9*#&87K<wMiMIO;}42FG&@PV2)3LQI^PBOuq`6P=O|rrDRK6Tf;^1Gl_h
zDUX~#KYQ^~iMe`fD#1ahDZSqy7|92n6hz$yO5d5FG<1Ts@q}xHUI|pt%{N%cvOptM
z!j`nV2`4Jp8Rn_Vh)|}E|A>ttZZFK)S|DXFke(@xK~>CBMgrwee5VGW7)pe`6m=ze
zh>{bz)n`LM#WLTh>*8jxDc;Xt8W#HixB0b)3ylYQ&QYozeZqx~_v`S;9;H-LKV+Eq
zxBKhPrnW;>!Umh$Y$|+IQzHd;=Y>~Hp{Jax30!Mz=DRVT306^zVG+$w6`s$n&!nre
z$^vI$hUic6eY#(t!h?E7pX{q`pyE-p!e7|)_X)SPWp7b}sQ8Rp_Lv%_L>U?%6v8h|
z4&pAhs|SSruVo4%3d=2epr8s#M$yc5QwWWR*|FW4xgUpeq&o9?;qQ1eTN^@yav-+d
z%%{KEf5cuoTZ2GLPQNt07-(W8$A`!4d0q;s-_*di)Q6MA27YdEu{9>_SL;#=yiQ^H
za`m;d!`*g4`Ld#2a(55htTk{W#h|+n4%o41v&e9-CnP_>aE#B<H{oS|H#43W4)3o}
z(j2}<37BT?@oD9u)!lzUdvtuTGp7~5#IyY`ypaK~*+1YZ*NZ{Me0^ncQJ^JN95sF(
ziJ9aL+lXYg?^j(DUoXfn7Fb5OeHE!cWCCl(!sBphVa`i<`5s$>0q;_|Wd7Hw%-1By
zQLdh2yHo9m;`Q$D=+Qk6C?-Ilb}=)jzUVRr`1Q11CYk+BEF(09)+qzUOXM{V>or47
z@dXAJ=6~2K2NIBkkDe;d(G>h;Hjk?DFP7@Lg#LcUIoZa6Q0d^Wt@!fpRjb4iLg3hQ
zgEC19lge6N96ns#PvH7_U0;^Kp}Lh*^!(NU+@Y;p6}R%Aa&a%iPxry_!g0vG@M`IA
z;aB^r^<<w*Zqwe>u8li?p-1KGLN4^Ahe6}dp?SvnD~)H;lkWGDulyF6g|g`qPh6Uh
z|Lxz)@P95|^v^l<TaRy;B2*Gaz-%SCin`^rbCqPbIP%I>+gyKe3Fi5(QngImKQAu+
zda39C?bO@<DA2r^i76KZW#lL+q2$9qF>SI^9hj_Sd;b63++Ky!Z*!X*sLt)tc|N%(
z;gg{s5Rh%nl#ho`h7k_LP)z)M=NGdfPjOncierUK6aB+l#Lyc6#2w&3CkY}hQz@mr
zm|N_kyu+B}f*xvOxq@K|Xbx+TL{R$KZ$B7d?}$y)_XaxP&bKbl-+w?^GJMhTjLKhb
z2vh(t!=~sG(i4&;$F^2mm9$n{R#@d3H*Gd0nyZE4SFEpEA%C6mv_0Nd?Z=l30PeDi
z7RD`0+`@S5@@O@@ma~{>h_nc=*gSj|28xEdZ4`6jONg!kW%f!HttQIc1}9w<1u3uv
zRHeG-L*yiIaK_vt%C)Ielc&&tO%krGSdGP3wkGhXk8O$WJ`>HCfpum<K;h#hx2so$
zrwE%An#|YJ7f%y;E_sj-Xk_TYoEP(s2=aFq>ds>(rY3#q65gArn64%@gu|y9`!CZO
zSu&QIVbl;De&l-2+K6oHS!~ZfnmntiyLx(DxRqz=nA=l)H4>^GZSs>_m1fUL%x4~o
z-=$pYyVj`d)}2;ANEt6ax!9I|BwhNdBzgAlSv!5Ddu@vrhn@NxY3T0%XY_sdX$V55
z8Sd{rEa)HQoGDt)k{I_5AP$zIaTx)Lo74{}sqYc^cyX#Yg|1OoJY@e?^sf{jwPl!f
zlTpVkln}O-r1r3oLv64C>%!%S?H;vHs9QxZ#3mX7Zu8-kk5pH*f&Aa67*4WpBF~h)
zAG#04%+*;jfM_D6<05~WK6kys`kXUOdmTk}_h{8%l&7%g!|8-Ym@4%|hnraJ-AQd<
z(kc8pExs`8o7pv5vQ%BMrMiTtm^`ppX0R}5l)SHz11~H*GUNL;0YYobUU%eahZk&y
zVwX2qOXhw7Xr2oC96;~7qJ9+$zql9aeJ*5Xb31k99B`%&)Ccc??dc<Cm;EAixU)bb
zU8<8Lp@u<kT6NM(9Pr%%SqY4!T+WNfq%xZ#Tc0mJ!I5QBc+mrvaUiLbl6wb*?ar7W
zA2~ITm)vRypBx-`f?wExd*Lf5_`#4=|9a<x197qnFp4D{cRNkNPAwd#1PZ*3^Z9A6
zsIJX4_l0USy3sV2@AT<~rgk@lL)4dJyC>S|H>%ebg?Dpp_N%ydwv;Q<MO^?-LaN@_
z>%iih?Ef@r`p0q8J^QVH3*V%~9v?oKjz|7EEo!AP-BwQDUkHz$pap)xxvQLKq=W@q
zwT_~d5S38{E9T!5=}n;|lM_M4hYlfp7KI=8Ypg^ym?@Dq)2fTdXu$9cZ{@(ba=5#e
zgl}!v2*P~psT0Co&m{W{Rc;<(pt(Wkit~b}Ikn@L7*xm6hm+obvFH4+8N~Y1o4};6
zB=cs_`^e!6VX0a-f5enqy%>gH45|otF&)JZtKvVdk|v%f(w_$ecnvqt@gp~VwTCeU
zbwC*H%O>f5$yEZMR_qH@-fvK`?V>qgVFD6++D1<4u_vE@1|d>lZ_qiELPt`nE`0Zy
z`MR?fk*PzykJ2&e=C^^vxS0%;SqwLDQ$ulzqZihOUtBz;nniBC@!0}-PrR={N1QX6
z@bi`9MC*^|hZk}tSNvoynPy-H`<Ku~)gztPK=A5Uk_3dkTliZRllCT`=H1NnL9p=G
zudFpO#aEYU8=dlQJXL;OW%*pD`0PpH##3n`t$n(~(2yD_4mre@(g_mbt(S;5Bw4>5
zrhHb<PO*fG@SW3ibVU6@wIXIa#6?dI5MN_>yrfi;11l8WJ73Kn7KO(!<3Tv5r8F>=
zjWlM@odRRuu)?)5YCPHV|3k?SEX0zcZ(`IV9DB*PvkIrm&p2V)#>MOmm4V?}Y_$2|
zH@n5$4uE&pVx5ShlE}Amw#7Oa_J;if8kTHY7#ic!v~@$_boxfnJm)KgCTcZ{-?#RG
z3uq;?wXgt{&6E@M*S^h@6*cl{nda(ZK}TrH)(F=oPc=3Y;Kv^DQ9mChqL=ykp#8{H
z+iZ&AQD|jZ_}(iGT<o3ov^4>}M@6S#!UVIbwjPhDp!9DZA*K6V{yvA?xuXY#%cRBl
zJlUS4m%#^4(JQ{|ukgpxZbUZtl4+r}X@d{Y7F|8vYX=9Z>chJo%fdG=OJ4R_UM6VM
z`zvY3^TNU@0nAk6Xw*gaT3u$j$4YNVJGX`0t_2-b>U6jPHZV7Q&ej2U{BIq0GmU4>
zaG1tSN82z7IzXvm;Xm6fmM|?r8zoT_Jfv$Nf>g`%)u2>|Da-EoA3il?+G60RDFdG2
zU=RvR>`0JrQRdB2K01X&+`9IJ5LR<XK7Vn#8v0bv4&U^KE-Oh`4_{@k>Y@a^2?q*|
z2RNKqBK<WPkq$R7pKCt+93c)Xe|5g@T=}@)V_L5A)6J>-AU2mAZw)HhRzs=iQ}@%F
z>gb(}wtpsyBq&d-YfeYn36vKR+ISlI$Cx12SC_^-CkqQev}&cErm?&MQhN^PKB{np
zuH_)`bJWW+eplYzlJLFdQ-yhV(}0Y!A?tL`S_t-I6Bg!+LCc7<IXAtj?hh6rE1r~e
z!r6%Mo*UjAv4tNV;bpVJpV9G*hkSMqlSU(E`|eVf*<Ln{*}4nnD=UoIuISO}RNKsg
ze8x6d?T!5sDF6Npb#^)5j&a8EeLX*>%r;GoJ(k(hIEO<D*z$ivJrE<Ct>TvU<YNK$
zxj5W^wFUzyzuS?;^v$C?4%37?%y?w+mjQ%GoGK1N9fF_;9Wgpsu`o+eGqK~sJlYJ&
zZOJzjNbcj%>YC@sbOtfCof18Ods%pAf&2s>8KZSKEueMnchO-2gaJw5Ekaice~wV}
z&kHI}Cn-@$T2@aUyEFLq9W2R!N@V5qbH*(45FYjI+kmXBIV<N$4ltY(UUy>6_C3yz
z>GnOXtYrIMi}Ex#eA^aWJ<H0R-oFIebHnR@U%ZnY2~%J=hqe8Qfc5KH0+v26sPG9k
zKAi>4#7^0w$0F{3sDvJv0&iyA|BM4~)pX$9X1M>OTHL=Si~GL|@E!&C=Z0GiLaA`6
zLeaFa^h7X7R$kqp@<1s(a`-@SyVW7Gu`;mIoF|`$`~Meqi)!>TPvUwHsEj>$NxlF&
z2f9HYRd?k#7jP2OxcV~jjc2VQmxSW6S!Em@_H=ltdUIWPSDm%DEX=DKJm23g{5OMV
zL3rCUA?^#*2DGmD38QbY-0ch0p!cH&Va&XCC;D~xH)4UPN=<6GskL3d)66_~E!xr4
zzf)p4d;D)pskxDJC-EB1qT8I<jG9pC_iXtT8Z*7{wKh|%#q3cLjN(Y~&{NhH&ku;i
zYCT14!vdzC&*k0q6%NuPvB1GEfp*7wa-$6*Eigt*tS&0X4b>)}!?qfdlNoL?{amJf
zk=7F&w#_R~DTYm``BGGr-NBj;y#k{q#{FV4=%dT9kmrQktf?9LiNC9U(#*bx%+qhX
z&=~GIgH>n??&bblO%xSQ<u!bH1%@8J%u~a^qA$_^`(}QC2Uy)D`1aT-a>p&hN`e<+
znxawP{0if5ruV5a^|8r&RU;5C&)k1>ilpI^@ajub%;48wS=(j|1Aa#2oy-qYG?L_j
z%T3JS@j27_k@Iep@bKnWc;E7$Gf^>K`R$URo7v<Cxk)W`76425!G|s*qI8z^yZWb7
zF@UsQ%Bm8p?Kj|eWOj{|ke_E(+f#M(s;<a8)m~%j=Hl?{OKcFPBdHC%uCs=;OTtg>
zf?GfbIg?a!jHNzyiI!Rjx8VA$W1WDxP^fTZa^oSBIWGeX7YO?r&_L>nt1Z;_05vGm
zmLZrsk7JR1qy&AzN{qduS;WQCJIAk`!vIony=FIrf3aEP6m6o59%0b%(+0i&pvg6{
zk~!fku#zazjv&zvW4knB#K_E5Bes0u<r@koQEPwl0X*?_;ifCulx-2^u2n$rKG0gT
zwDx@Aq<S?oI4;~WsBF&=9y@-OdrDy}HxCL3A^hZcb9cS@xSpHXaK%#!VKqH6A61S(
z(UwlFmr(q#9mSdM2~2*kn4Kk@xyHV;u*hl^_rm?ws*k3kkg{OTES{%JC-89*IDQ7s
z8B?4$70%Exd$iWkT^C@+K_9wuhI#cj+2MWMPWCP}AC2KPm#sWPuibwKi!J~`bthG~
zs}&_?*Y2@YGx;ZRm~aM%<5glo*%Fg;t7POnO{S1L27vo7d7Jok!ozq{6^`Mr)u2c9
zM^wxTj3i$$`|~l-7M~}p6!+50w(7H7VlQHV^U1)tpm6H?!pktH_{j}P84cj;H!9Xu
zbDB=Mpm-}SvDm(Ehn~Z%>2tG%+~e%hVhz+Jvv8xFX5>$8(`JG&r<;OllnX|2aY^{>
zHsKV9nB(Oq|EJ-`<cRL~pDtd5Yl;5RjoU=X;k^@Ve;xG&(Dlh$jC=wrTu}eG#_+jI
zb^6mApH*=Ndp<7tymr8H!t98xcR?i!!Zj+?xjPXdpS{$WSrj3>=BW=zGwan$lbFrl
zJWGk|Oi}D3sjB^JQxmPKmQqIH9;)Uq_Oip;4$0#B&`2NLgWy8O(4LygTG}xA>w%_h
zkLr;T*9nCLzi<>0&TEn9=7zZ*&6-%qOAF7S(}QX#Z?Pwljz7FCz8Aw>JDRR6qitun
zmds`|Hke^#Rd0!`>Y<c}#Wak&PIF3LBiravEmTu$6E@;iDu%bPQyF<#7nXQWq8a2Q
z$J<CAhJT~b=jly21&ZL27;er;Kp!~vjdSY<IC>nweGuRX@2Bv3Hif&dLJYH4H(tfz
zId886Z=75nF|)ska||{dhO^$$n4hva+ytt_070_5gk*X})1Y`QHJA(N_4Y7wlY=XI
z><kvh{mBV*B9#aApm|W8*7&g=g_9+Hu@1K7A~)rK3&IB|qprI#VcU4&8pBTu&`^E2
zeimm?%ntYN(b*CC@Q5~=!_<3@kPfE0oL7D*=J0=Gp1hY!$O>CW{ldN5NN)^(cRF1;
z!>2jUBOmTFN~@nF20uG|%t%c9_a9D|FJl>GM{t;4CMY8Iap^1kFWLtlzNYZe^ogT9
zaXPO;sd+iO^A9GS#S)V!_SZ4kpDK`xF5%Mcn~Wk@3OAR8J1^$bVnq@SqYGd!93bWb
zS-jZv+OOcFRNW|%0p=B-zZFi+aU^fBpH6@WESQKNVKCxWUV8uKZoR@Z8%X^R^yd43
z#M^CMCQ*+M|8lyt<&CzyhRuKx3#+bpRbd4yCZtgJuyxa>7dSH0vF1U;niXN2k>UT!
z9lZT^u;umxFtVm_#FQyWugTPj=vjZNb9}0BiH8zg?^8=sbHy+l!!Ov<eE3REL>4CN
z&dKw>;w3Dz4}gTG$(lDOk6I@i?!OJDDAlxDl>8cY@XmAxRd)<?`s$xD-n2-(e1nh8
zmgl4p9$<sj+DlkI!)h4*W?#&;ypQw~l>pDaS<fhm=EOWO@~wZ9?dC$74P0DUAU;Je
zXq(=(241wWZ*7BEm*1|6QjQENYSBO22cnDOHM);;pN*qI)JN%J?N?oR4HCi~kP7Ui
zMnHzqW&F^laQ^&slby23oq5})7xyQ-URM(Igo#PmoYb-K)2K45hx)U_8_(!LaLSk4
z#<j;B1JKvZ(R~Xu#zE9z5hzl>=7iU{RxJe#?))PtRgNODNemtZ`DRd)MYcDej)HCd
z>VFKD)Q8(nSHJonZ&SZ|a=Q4geCr=?Ba@BKmM`FQZr~K>`3!GI*>m~}ADc))F%?>k
zLWCX-bU^ZZdhCpHfd0RwAd3VP`oE03a7`VK;%J8+G7SF_ci|X?Zu`X{Etp<Q3+$It
z3*eIg+lb^f87z+>|0nHILwLPpyh0j{;f^yz$>Et(5qHqlY6ezPT~m)NoP4<djC}Ej
z%tDl`ER;-Q0<G=7%9bn$cb|b7&vm-!C)>9mypQeC-YT#|i9~)!@sc=<>aOOHtaw&o
z&H+sX)08XKG%0B{N#>G}lUaP{jJyu*sVkN<*X*%sR+AK>Cf!X!%^CTrm34ViIyv;W
zq3*XMIs0Gu6_-6F1E>Fh+*%auAOzr+wI`FJ3g5&*SJit3<Y&4+amFKVj(q?Cb0&w`
zT-CEQc>l3?GBk&%o87?0$FH9LUJhoE>9VA@>Hjg~=oXq=VFI`fp-ct4Y1*2f{w6K<
ziBt1+4FK@HNW?;}KDQkRa=yiH=FQcgyuR5FCl>_T)%<rd|8?=-A^xk&pIkS;@pY1>
z_RlNp_|&c^PUD}tEBS}e5Wl^Je`eju)miV=SGtFAKGese6h2-;7{n6O(+3^5e*97+
z>IM$Yy?}W>XuNF}86&MS;)FyE*q%ZIT4Sea3?Kz9b&kJ)LC%+vzJSvRurm?m+X$y*
z@Ny{~MYk60U;GHl@Yczy!q0|V_<|qWG%$uCyLhp;C@>sV*H>=1H<s&rxI^sIahv{&
z;tq?%4pj`l&~h(}mzX($$Z$-Hc`;ZW>Sia~(f?jtApd9%WVu8-*nLvK_*;LrdsxmE
zE3pHE*4rnFGWEAounRn7zk0?784_VZ{@_ZmX>7nEOY`6|#{*Ma&pIJbT+d6yeozFK
z-hPuj{kxS<eSG-1@mS!CRiIpEj^XCqorVe6%4L8PQz7XXIn#idjC>BMAS0hA0P@Ln
zd}}J!?_pUp@EKz}oB}rgAlK`ELHjQ02T!6&8Gj991O)=8H|WuM!An=zC7fnJ1=~|Q
z&}i9HO$P3_v4kqTx#y9{X$vF_!<TNUS2I95OQPb^Yi%VdZ&raxSJEf=VFJ5TuWwQr
ztIwcaGdMSy!A1d5c;Yi4MN>1FpP9ig;W;%k&^bUF3Jlw6cPE&mJb3jH(%PgX(HJjw
zDx~QaXs{|&uv66YudV=Lo(Cm~TGv5KGg7Nj*4McD82=fS7T=`b?4OfFf{*b}UZ3iW
zK#d|7d^}QQ(%b`o6!^HHP`|a1e^p`51%>0<nBs1P)Qc_h7~TRyb0F9e#~2R3yqXqQ
zDhLB{=@=TGldRYlwh~dOh%0TC4;!!hLUjOn(HY>QSJ$Cv`UtZ37Zzrne-Pt0cO)71
z69y>o+w~+~z&XHDVlE(i7nNG09NM4G;%=or`*?NFS{f(>j?=qOnbYZo&m}*9qIj4S
z`;tfMKLI_O)v)5eY0$Bqik6tR9u#Y=7!R`_JJ{jHFJrNu2+!dtbFABwXRs)#IPwgW
zoo8*(i5kSH`H=r3frto)P(ccf7y-Xb`Y-1HpplHO&TTC;$alm^iTesG`Qg-61u$jd
zs=8TV29SW!-Zjd8^FJL|YSQw$hTnzRi^(S_RAu(>5D@GiLnE>Hyl|;bU$IwV@f#%t
z46BUe8)|(r0p0_-gxf3QY<^+Uy{ly7IRn*EPFTQLqM-e0MNVhRFR=plaoZd`zZ~qe
z9MuaCB0R{>)$|0XN6huKxP(*wN{zP-)P<vq8O!RC0R+)eXl5UXdGUAod4<KKGF?_!
zJjzAu<|AxavaK*z4&3vNBIiN#_ZQ~rhXdw_n7gg8$S><=4ZecENU0UdPughlxdrHr
zY$ivhcyAY8PgoNVylJtQV+4~wh38C3qBI^eO4!a|#!esu$|<B=UqDn~?f{i3X)ATI
zk5C{<M)D8^ty>P<4kU;r;M?6_x6*w*&jnSEkVk>aj1S>EJflWmp^j`P>7#+Ss#jMi
zo>h3Z{wj$qShgHq^*Sm`=7fJT{X#(Wvt9vSqQBot>4KaChZNhxwRegsjElAw=HQDb
zhgqk7o^R^-{B4D^URqcv0S<J{UOcP#7kawxUGTwh-+saqb;y?~N|H`zmUYisT-dUp
zfF6#qIERFAgNZ!1b;a8~b7yh5(OE|9>LbXK>WP^8<2*SBv{8o-hbI-##7F4N_I{(Z
z26AgMTD;TN1v>d_7QKUc$E>&$UxIL|y49?}q4x4&goeY!j<~Oo1b6YY=xIA@=Yz>5
zZ3Tz=asPrRY}g_w0@@)q!dLPhy!?)oQFZfg+NSw)!~tiHhF@^huv}d!tQQq;1<w4~
zQ+MhjgQ{etBg|sTylk5P1sw2KQXlpQ1BFwxQM6FwX);sPsZPq!nMyR{z1uN$NETQ$
z#UG{lg)`ZfIk*!}dp+OKKJ?aka4~wkf|D{<7|oDY$9OoX<mtkHL!N-VUytWj#YV7i
z+)r<Fy%;`L+;F(=%tZ<{&=F=)g&2!~bq5kGgW~r)ihp!J5aa4k_VN5Pcz$_nfoQlA
zPD5C%<R&}a?|4x;j!4q1DIlC177-)vE-=f5VGM3T#`6?$9lnj!FFLfUX9NBzaTi>N
z#bq}BGlV;NAi!CSdzdBEt(Q>-7@*VH!2;CY0*XT&#c1dF`8^=CZ`QT!HB1Y*o#2+-
zEF90^lO6Ursk3y>)k!;390UPXgmX|X7lt?Ot6y1vWXdKZ5T>JfZ@7h1hgPlHz@4>|
zy^k%|OF8a-se)MV6w(>M@6SmYo*O<&eF#|swmF}*%`r6(K;GwDW9poVT7EIKK9eFY
zS<HCz(UfTefX8lD@y!Irc#%d63lCZ<)+_=g`jLkCry$4y`3HF0x$B{~(+t&lE0)&B
zW$kOn7o$0(ENumc7V?6y_-OS-(8v{2Mk9>1ZOVsQ^aP3G4{0b<Jfoi4U>Ye8EJNE8
zvGPQxJrTlZ_W>vo=DFbrlsXIVSOikx0EyrEp2hMFus=ks?4!D)&*q@Gy332(ZjS^A
zRy~OehhfY|j$;%&$E*3m@DM=fZ8TkBsl~9ESb!#%KsU2Ycn{@)2APqAe)oy>Q+D?S
z+GN{`1{%g$LdK<pfX_y~IS=G}#>T>V34V*<Rcv?^`BP85P;p$1<C%~4;-<n`^I)K;
z0B9R?d+JX~=l=)G;W7ck{13vJYM4bUaXyLg4}h{?`corRvC{gx3QN0q{CtrPpp<QH
zyj?har!j6AJ1EwGd`MgxK=0k;1gu`biI}_sA8v(h|LMM!#UrFj>%inCP5iVXP!74_
z$iW_RzKL~%fOEn-t6aSP1BInmXI{-m_ehF23uU5*MH@^9HSw&u2se@zXGH~hu~>%J
z1kSyX89p~YW_ide+f+<XESimYqBsShps{*PyMC9U%<8DPEkD;4_aZuPfDvD{DmCB;
zR4HB{2?p20j0?ZI`VjfDw66dSc>2A#aGVR@?rIr-l()&T(JS#b*A+RrfY|PjI5)N~
zygAQ-$tj07XY?~A-S4})r|vlPvyt)A<%5-Se`#QHq^~qo9+}9M_g2PxOS}3;M+OFW
z<W_H9S6a8FeNCxvVsf}NIo97>Dd&cJ$4c8P10}xnPL%sf<K>CLtIE0UV*{np?U$GP
zDy0%XR|ZE%N|n*l(BO7m(L<Fh$I7{((UBc1?4QArO0HCze9;SXy_0)OmEOUj+`5+L
z?ovz7=2CNack`O{rS5H;TXNec2Z#DggZ;VD@xdLX-MvG(UFC7c)@YksI@gstTh?@R
zt}V4UZ))k<+`Oix%jTjtmUfgYr4iOt+Eu>NR@2tnzR`v)t+}wXW6S28R^rPa9NE>o
zqjnv;c9+K|SV*qawWhSLwXLPp*0E+|Yx{-vLtD#5Ep0C-tzo7urLNYCnJR<zO-@us
zhf8C<m7Tdt@3>|>UK;5g7U0Hr8RRA^y_Lbf9N@P%4~`6s<|ZoReZ7^O0NP(>N<+On
zCTtyjqvPdL`HIQjq0+!euD4R@?b~Ui0Bk{}GB{i=jSdV<lq+`sSb2P)RNh@4sgy>?
zDibvz(ta}O_U_z7@9@}Axx`HRc9kY4%H!3&&I~YK?(G-EC(G5#6T7yT`gZn?>?r%5
zwY04(b(gxfvIV)e*46fk&d&CZQfXaB=ceZF+<19tl!@+Tv&VY-Uzpq3J7Me2ZSL$?
z-I8qerjE5OC2eO7A`Ol9_D|cl?lnERk@8S^cmja#Ee-WfR6w$ka;Xn|8Xp=QW(US|
zW8<ScN)cFq%@Db?xwECKrSqbeQcGLQrY?s}SM#RL?Ca{z=5`RSwS8@A!<J2(OI_<*
z*LB-23kTPhHnnW(=-gK7SiPZTO?MT+oFqz`j=jT?s<gJ{qSiGnELgZ(85}7MmxqT(
zcb9YHgCjfmabTc4UfMGb?L`<44V1e2K(m4Iav6HkExC!E5erf(6gH2KPVy8RGc=qN
z1!@b&E6{D<&}2VA=p7njcX*|Uq&$?6!VJJ}Yq_v_%{INpNJ%IT>2;RcTe`YSo0@xS
zw_NY8OpY+5(8{iDYToRm)Conb-m*@}Yh=H(cQ+`zx7;^40$S&KcSGB~+d(&>yY2u1
z28W!~j7&v0hGsSuVYQG%(*iy_a=qi@y;m9w8P@F+SLFsq$M^J(_dCP5u&rZtb6aU`
zb9b{-0DC{)J6tLafdfO3!jKIIo{Wx7<hokcM4W40&Bk|Z?yg;E-wr@Lra45`1!0xO
z*f?LbvBSZUQD6<7kHay<WNNp%Z|q7T;P#X*(;XD?uz_Qfm1(rn-nO~9vkMLauQZAm
z)zpxJu`!`FOUoIJMm#E&$3}->4o)cPrmS!7T3>_W&1=_oR+l<CGBH-}GYmf$>J`fR
z#nPI#j`o)7jhgcAq27_w*yO}c`#F6D&+s`{9vXPj3j~Go&i-*|b5DtVN0w;SZLOVa
zN}}y^#qPAD6S<-Cj^4g2fhiEG-LOco<Gp)Ih@n0f2H2gAmB+_N$4haFn|Q5uFEh(g
z_}IWWjMp$L1vo@EK0e51jh8Ev<0I3czVV`#&fLJ@NWUfnVO}Z8WwRHfEf0%-4!~E2
z5K@U06NyG~XSgf$7}OYLI2<(8+<Bo<Pv6+2$ao?*F}dAFHyJPhDTo_PTvh7rzZ_8k
z<9F$xXS+KQUna<Ghzut-64j~@buCVHEj_JWup<4K?#Lf+Y1z_}8yp#|lqQBoHG6}{
zgzbvW!i3G_M1KW(8UcI96E3OWoZ+=@YU%9CiLb9IwQp%_^IvUhUE8{9S%cWZ_VL~k
zWYWY)@7To7(Mm4GU#S$iep|OFoE5vOVRCYCqEsH490syn7|ZQ4QE2zV2}(N$pMP$y
zG6p|`sh2C`S3=B)f>aJOk?xjFxt7k((&p|?Qw?&)9E5&i5ZY7_)1>djmBY4unymIr
zFo?*~Z}8BtUF(}Wk7e{N46znAn=k`|A=0mZ2*{ayUERH|gi5fs)Y86XQxzfg9#M?T
z2Gdg{NlINE>$<n{rs|!hTlEhP!10;iuD$_Nawf|qpkw>y><@+{6hzeRDv8*o)l8I8
z5^PE=IYH3KNlhse1X#T=+a+*mtcE8ruhx#W)wxXUf>4Ia=yf%>b+%mCg=_@SHT#G>
z7c=Ug93H;X0IjRc(+NLOv~2CJb=30S971A*t&OPG+0wk$$2Z1rQ?~Dr%XXl>eXuex
zSVk4Jm8D>B?(A&dmSu<rh(r?|9V?GaV+mD;HaccgjY9jvmhLXJyF?&3EpBlorK_c@
ztF@!ufnxi(n(1!b+yPK>Qt&2rAsE>Nu_>5)0(Xf&aq>Qwv0`kZ38VG(S};0EYe#2m
z_cnf7-?DZK`ssza9apVGJeFMl)ApJ)6LwT3TDseYG-WuKlyHOfnvN~)(#T3{Hg6F(
zU$ZecJ~?9gQQzq3u0dF^o;EV=1C=EmcM4y9H%u50gJ)>v3H!7eH?O^@wM$x1Yx}wm
zgPg-?9SUXVwi>XHp@77RM-4Qc)aK?3TT1Jix3qPOm280eclUzTutAA>K?b<Ab;E?v
zsV{7AZgW=DU0UDVw$1?yk2XeOc7Q2C=)bvyshN4eZU|P=qq4Hn^<or4EfNY!^x(ej
zxl(J_nA8(26qG0!4}dA5>E>ECceJ$$jx9YcYjR^Er^@)Ca}+@hDnvohf~E2s2~3oR
zN1a)jjqtous~ZXIZcAz?zyOWs0jJ7nt~_EI5=N60Cs%Bcn_HxtcB5MD6!#qO9U9z$
zHk+^<u|9?|4q#luc;LCYF{veBqvUW&H%yc#`(b&kuS)CUhJt%}1mc=Ne)>zdv~O(h
z*xGK}xr>p}VumMCVx8N$ROnp0wX-B4?4y;su+}z~R&Qx-TU%;fYnym3!UO4QRFh(x
znF8pySpry#y4ks9O?O9UskOVMv$-2Oa|Ju0;fY@48Q5K7OH2&N{PD@UMC{nu>io24
z?dB**;6i2#RHl(c%cd=D_KJvtW_$LUQW~GM?GP7(%T8<`+J*Q>yU8ej=$@srj4&ga
zMDsVj(Cnos4#&$7Sih6n4w#Vdl1VXF*!n6%Zqg30NBxeb#`*Z7p@mj51!d)kGDWv8
z*(>9dSlKAEngYNqX{k0zqyK0RcWrI$#-tGw*xI@lYoxWKv`4CtC?=6-+8RS2d$ZUT
ztjo2z32AczurIAoHgx~!9=KO)*U;!5Ovb3lfnbPeLlv2^CF$-H1AB9QJIg3#P8A8i
zk@jS?<v1`C_tTV;t%t0Py~?(W>bR-mQLXO-Ofp_eW&~eV9*2&Qcq9FLC$Of{xlf2X
zA?sZ=JW6*8o_1f=FVNY%)%7rE?xsjc3pK*-H(AwPYTnXwQ53xBm1DBZC!JPoxj><B
zc+7W8TgmHfM@=OYi$iRf9wlu>9u4PFQIB%d+&5(B;6TOQ2nlMGN+pDhQBY6E=9c!-
zn$B(5FawfwC{xu%??UK|mMVQ?FLLSzO=QmZ?c60p&9n>WKT>s3jT2NbVdEOSeu_Mx
z>Ps;3XPn<5q&KDtXq2TclrwYLZs;5hNI7GSZSQ14IT<Q?zIijNS(}qv1GX*p72OHC
zxVo#$?a0zDEL?c-grl)sN70}XS2R>@>4A^5JA_tuy|C1_8HDaww=P1bYh$Tv<7#*o
za%Piw)Y{fH-M0G5=q?D=c5wH^h#^|SXBa!0nR<oY?L<8~HaUb>Op^c)+2tIsFC|RW
zWD<z68@e0MNpy&d+tk)|ZDSyTsET{-E#2@wLzSpc=z4@HvZMP&=>P5QxF8bPpa9F&
z(%FKTxA7syXmC_fVZ7Ww2s=Vb;a$i<G`-sghhV8NlnjVFJIsO>dTxPL-~njuNNhsh
zu?5$O-hNT8v#oVgD+-2~eho#z*++*k{dZ}h(uyL@WGUJdGG-`+sa(OeCPNRe$Wsqw
zNScf!1=9@&m&=`NS2u$+HMl!DVq7-5xZtL}<49NAn-n7@{3P@E<2q3lTH?F#Gm)h&
z1Y$|mj{fq5+svDryWA4WuFW((A%j#a*h6_>aBr?MJm%Vpmf)(a?f)8S6<b?cFI;bm
zP>*{xjV$6_dcd6^Vt@K3m`aZ~m87L-P1}~P){9!uFb(clv8I8f{L_7dlHN7ieDrm(
zr)##YX=~|<&aSwv&0V>QUgR%XkBhVhXto=JV;Gj(&95VAu(yA32Yl3oPpv<VcdTn`
z#&~dlTCI9oqY1XQV-8I0M9`TcD=c*O*3yn!?s+e1pJ{l*$>^$^96=KFpPL&UkvA|m
zh9H9d$-Qhel$y=0YfIhO=q=sObX_Af(@|Pe;teS8Hm9PqUV+{ePEc=8xfd~_ok_4=
zj9K7tvn0z5J6o9G=8jHi1tr{hVisS_r6ZP6619~yPt1)A-R;f0<jiw##Mp43WH<U{
zl!C%vbBSc>#<T-TbJse|RP2N4i#^GeA-^*Y2^=xJG^KqQAq=pzwiUer?|Ub<zn~9<
zHg7F;nq%8!m1Zv1WSqQrvNGyJCo=-wF$c>THAntlX6!0s7XVK;VqI$snqqWd)X=U0
zvm#)ZFqQ!8ga-8|&0%j!VyR1mcC@!`%T109UV*JV+*?6a2WBI<*5!R1=^yOHTR9<}
z$(7*54<o4B3RgGdaAP^<14k^D<eZ5DUbejLvRH}x3f!UUrgSvwj2&ny-KF;Rc-PWk
z$K~jVN$fzvHu~pNN{Xav-%FdDyVsZ2txbKnJ0{Ecg%YtSz|BBeW>2ACN6Jd2V&8Uj
z)v-b5?EZp8lj_4qC=s9?6rXYwfx%4}mKlDO_u>*%JZQYUd(h$@wGMs0u~@@6Gai91
z^g4*OWE&>S)(l@3932kng7@~1MTZwW5cN~Al~z?A=^Mod<Az^%)g(qkT90p{JLkIc
zp5AHvW%GJGQRdMU`q*rG`}&yBXhvtXy+ex?_M22S9m*&<HKCAbUEO9xjqYKaO6NM?
z+lpB2#J^-tuyt$K$|agAZtyD2f0ukr_UgXTVNgAz54+M7ap|J9sEhW5z26-hXcxOh
zn5K-I(uz4MtySwW)xu`adxRI|F>|c5x#q@!JX70>iR^Z3-6nX^i?aI8up$8(13#ct
zZ@UH43}06XC212pcWkHpOh~&yrXoTb16(;N6w#xuoys`l6}9RwxwSb_L9H3LrR`4q
z8aB4V2MJx{xB*U#iyZFTDdJ4UlmXBD(7M@}ivbpQhJgy%EewhpTcWC&KM-+=&m-gL
z6PfW{&&xGtp%kb)nT2b$=xDgq!0-q%gH6pX(FL7xy;e2fTG`gzz74&rdrN0~q(QJ?
z*sXV`>#d!}p)?~mTeB~1F*B<JzeP$TqQ%OP#ViS7p|eO1EB2-dy5BFxn*_{SSsHaj
zxA|fORFc4!Eh|c6B)otNB9$b}>yoaVGAy53mj`n)-rPhBk=wTFgIL?LrVWXDp-;$+
z1MR+RKWLa*UMkh#`L1dwQ%O}OqXXSbd=KKkkWgJ$Rk3mYDN|QkN~zs6P?u9(>yfW|
zBVw$yjinpvc5PX0FEtinHk|n$gm4TZdl?tGB>3cbA3>%X@EGB_7-dUJ{gY$QcTKAA
z%Dy31lx~M1Nk5@DY|GqOVhJRgtw};(znLYBh%ZGpSak#pe8qEt)*#XC3SlG3G2yX5
zQ8f&tKgiuugQ|&xi@5zHf_KO0sBwKU6J)0W)UXCgpw*a<(#DO*vZcMX2T9t#c2n1d
z+23Voyr8ripLS;R%}*{6yHm;(BXkfWj?(UmJFh$n?KuU~!eH@u+A%%cJ1I(#W|_go
zsH@kki}@;W&gjOf<pc2zvem>a1U)fQuIyqPZ4O37AWl10iXbH@h(Wubh;YH0X6f6V
zvNDPJDB-~-C$^<|MHa`)#0#NU;tysD$?P%B!$U3AJ(07?<-=A4l{=ths=AxsJYr@g
zgKq?qu>Q*8f5!aW`9Vxs&e;;7=L=iRpRe0AnW~&(T0{MV!}9J(kFhBkhh2?qH2>$Y
zZjO=$)XzEfuJ0Ynauy<$<x(OE4OGhN$cFMYh$UEndoD>)jF6l#sHoMXDh3)E@d4xj
zA+G6KWP2hgH@CLR%Yh+|{vsA{j_<1mQ3IkBkR^z6wzCZ41EWL(Cf48!8$fXtUiU#D
ziQr14Ub+Oy3@Fc|ETUFyC&W`!P1D;HcQ>cP<aP)@+C{w+H4Y)OOjBG+ce1T>3$ABk
zsper}qQX2ARfO-ya}aQOd|0?19VNyTY)@*CI?9#kB{GjHV@<xq*=BUvC3=EI%KFQF
zL*^5&8OPm<(3E&i%@x_L*+Armj@7c)yE{AD45@5Tg|Q*aeuPUd5#vC3%!aa6!Q6XG
zif`w}M@MnWgBWs8>Q$zeWG3Ktt|$$4J9S$m_!9MBp;2Pr3%5nrMtSH#P`Zh+xP0>{
zBe{n?5Gfb3aUs!R*ZLMkB4zZ9kX3|_UK$baO1O*&Io<DFGXM7W?er9;bT7BGcWuUp
zk9n}O8ZL=a9T#bPcPo}jr_U+=EXhJ_!UeGjlEe-W({TO7*t^!1i0x_)LA+Ty2U#5`
zVvvpRofc)$0hVbQL~s@l4y3C{uogL09!GELzj7qu5Vn~>7Dq759mmf2aA|m=#*2~|
zWPTT1lI$)^3nJJdh^%dKza1jEv$@JxHlf|JVC=-~)~xB+<iSnYf9twL@ky~J$;;59
zR`dT@Ry8)GF>|S9a{b9n#c05z-=9uoV+#>5rBK;RBkbKfqS%KxzfF<g_u4I+)3Hq=
zh~m<L#6}d4YDE)>)=M;S@kMz04ssQhU$c=i-8VXhB56r9>6Ro(UFnwKTCn(8x;3~}
z@ubSXJ#i%_jG}5bKlfQAY)V8UF5%jniO^$6)-%1_h+HEhlKtvaVjT`-(TnZ0q^5$W
zncTP}PHD&&RY$Ra=u(bqqXfU{fRX=H`u66=9GM~HNy~044G&_-O}Mwq)FiWOq2KMJ
z6H-b97xD9su2$k;<Q(wC$n#L7D`fJJ3u8C99tQHHFiPEyBjv#zJ1zdOopdwY<=Yit
zHZf9~loeP_+%SKxs}bTWaPv_D#PY*!A9bs}HlmhB(@a{yQl?wl0*T_A%#&qDMmAmh
ztj-zWS4Jm2VJMTgL>3pjD6PTMm*mBDMNmAmU#?7;3bCM=vX%ITOwSO_y5fr0v|Wi|
zLW1cDF6PtAf^Whd_~;Jcn#Jd8!W}k<>2=dMY6^eZ+`5L~!+wB0f>O?WT>mf|T28nw
z8!KU2S}Bn$WLxwID&@qs*wfld;-N4~_~<xy673d#DE|*`-EEr4#**m)QE@<rVINBh
z&p`3%BF6jiYGoi#o>94P#Jo#=<?3w~+99umBsXz=M53t&1bD?x1xZU6lGTcfD_y)E
zLqj1mh4e4khUNy6I#WY|lOr;Y6#KOdFVD$wAC`#En1s?ZHEvb)L#NruQW2HXfiP2)
z+(&+_Y52}$JvL^~q0!)0NM~jNtAw=^(&hcqkMP^~jhh$CSYR42Z*C(Bz6q9=L@cEj
zWt5_6n^Nj@Y9z&xC_z;_Ny1ag4mIs0ozKAFcI4?ObZMYTXu}=#iI+aIkEr9oEzCWn
zF)+?EeolLBsRJFn^+IB~Ejfalro|(T`Uc^mxQ@lhwzT6KB~pyrbZ-?jq@QGy>I}P0
z0kI+Qro%gA^~h0&5pV7TF)T1co4@_aO4%_tU7RJf#OR0EfLV#{9W_Y-jDrP5f-d~f
z1XRRZdp-Qa;(MSS=ni|pLriXlP00MMxF<ch;I14+SuM^cl}M<Tz|(GqTV!xFJ2|e{
z#wjTTi^EKcPD?j->eOUv7<rl>my)$P-OSmESToxoQQopbHG2QoZ$&*{+kydTnXUp@
z)k?38f!bs&-A;r~+@rH)bDN1^JtgcuC&lyUIre#MO}bNZ%k$Gu?vU4GFHC=XQTpk{
z>8F>ZpI({-1zmBUu%IX|Ovqq+>NOQvB@#bI#V~DKn+XK6B@;?XHL(-JLgS=P!4qU~
zu}LX(t9jRP-y%n-Dp4i5zU3mY=~ZF2k&mmLwWp&+su`NVUjnF7J<(jw(_~Ta81@j!
zO)*;#w<sb~)GGE3D|3gInP`kpXoKgqAFgrqtl5&f1Wo8bZc>~KPqjj$6%&Lp`^EGM
zcjJNo6>++WJ%jS1>n@>V{F{Aqf>1~k7<C^g?lx%Zy-8JVj}BHdpyg*DCo$II&(d}_
zVw|jVXL6#O$OfGORo$R&CU4tuRT6|`uyf!Z0~1i=F&P@vC6IR@{|=E5+m@OvbMbLQ
z3eUh6p=x&$ugKcXFG{^45n0%WK@xgMN1Y%+M<PEO<+cNn1Gh%5;{4xuz{H@k?5lfk
z6H7RpYYo+lQQk}1kCX3D48W!SF+4m;wh$0(0*P+635e_-@VK?XSt3mO6*oq8K5Eub
zUzbI6vnzMMkK#TpnC(<kL|;PB9+;{DTOZ_$Vc5i%2^M0~q-K~004n3sdBC5f8e#w+
znRGuTw20}GmX!gyzc`6(>q3e~t?jA{=ps7^JtYIH%J_&BWD!7(5k**5fpCXG4ga+b
zNqrb;mT>x}?q<1}<BMu|LapqpRWq_y-y~6&9l*n?K0G#JY8MGZC^VyFE@JOW_?dEK
z458#)qeNCxcWd+}+oIOBl44gIeG#iUcXjK924dc8G$-CB$A+=C65u6rlqDh0%u<|`
z{5ZIXJmeXnWa&6&kGe|e4l5_mX0pXed$8PAr8(lQ0GFQkA`qZ<VpuzvgoYI^qBS$P
zgKbv|UuI?bh#tjD0Buk(Uz8HKjXy;PUwUQe`CfiRd~t}J@a+84fTzbJGNRS2Ix{P5
z*&;l%_>3QF=uA>Y>TZrKKjoR?<E36yogK=`>yxy}0#EJ`2?FF!L=oe>t{TX1N9>s)
zaQeo}Bn8U*oGA)HyQtZ&D4a=)x~SAu<#@bxfNa5-B$fz-sJ27_f&az)&~DEv8C1k^
zZfW!CE~ydH#mqC_wsxkFxbDDBgs8E{x?0$`_2~UwHPds0T&Xi8?4bxH`j`wzd^{yj
z;<f;5x_zRM)Tbn&HAq<2BG4|J#3lO6+b4J6aWIRkn&AVyEs2i|xNNXKGG)k$sBhwJ
z!XnMYTx$epgcslw<Ju(=KZCd4RWlI&B4T5ZO*aOPAQ-*0?AzWk5=udA#}9@|rCwDF
zh>m7dNvi^r;UWLELMJIiBtJ4HW3GxvZo`1FDMV}`6I4|6Po(l#UMOr1Zlgv;<xkUI
zmZYZxYbA^*9$_oNF(X$<yVoa(bEqN>?2VaWn8&>t63VhRqaU-Mi4j&;B3Y%`SA8H_
zWEC21Tf0jgTfmeUFf=$kHE(rXi_XAS<3-wuPI%AiQOtj4REEhK5l+{!%o#h}yMwwq
z<9~4!YS27K$@Cv3^&+d_kt}`h^DI?s<C=A_RJ0$KSMzAM61g^aY|MxqS=18WsFIi(
zwIVf=uA+jjrns|EsZb_{$=Fw5Ms}+w;|mT#1+#cl3dvnT2-}e*VNp2Ian^OML7i=G
zCs~Lxwi-T!X|-D;W%k94Uw3NN?noR{XxiOo4_HBoCuFSN)=fdwx^+r9h&E8w2jZq5
zxy0uE&+<X7E2bCZrfIPfEs!-ydNvszHmuEt0s6QDrVcrkKtMR{=s@)UD@G%O-Ks*n
zwro}=4K`zRsZLCejRC0%C?PUFtT*W)HJj)G(Oh3;Z&ZbOkEd5jDN4LW?tQzcUH<o2
z`)XSw{~%&V8zOSS|FA2nKZzo2M2$e#rVwC4_t1@|Ye)rh?Krtv>?Gzm;P3SOF%uc)
z4;POh1zs#tqgK5QN{f!^&afvL5enzyx{GB<rf{139ZySiEVvTlKo`Xbyz-Mc%ZkIK
zY>w?CfdSJt4U1tuc+Ae+CXPvadUutvh3$12K9TBF?nH1nYXylytuSL&tHj&F-obaK
z-;`*8?nHB!Nvc0Iceb=QS5Z81pkOa4l$*H5tGdnhi9HaP*o3P#mMi9gJo!j0kc>aB
zlQ8qdF2Yg>=LyR&*KWbHlRPP7y{G{A>)b(NKIf`ED1Yq;G2)yGzO;vqOkLY>q@%;R
zki?ftXa=!|_rf-Vw@u<kP~-)LAhFN%Y9^temuHmdioFlXfCDc&<k~w_i!Afbae&QD
z)Nym|ra>FSPLK3OJ%+a>fwmOEa`^B(rx?_An@G4DIe?se7IZP#S9yEZ@8el>Fi{m|
zM{buwxSeOnm}Qa{kBz#c0Vg#ZQURH6x7QYW<Spi~nfkXAJsLP7%&p{gf_#!%GuixB
zvG^{kKnMXgdJ9=QR!T0WtBi0<LlN^bPHnjF-edPi$2g_2+HB-2u~scaZA^Xo^Y(~^
zYts$TJEs>5n>%2a`8Q40j*7FEV&SA+OyWsqH%?Mwh)2`PQ*AF&SRI>LD6e-~yiP;_
za2fNlB0i%8E66e@PP$Q!RoZX!iY87G`MJ%G(FpEsQ09PnXh}wg*+F22pLjWSj~Qgo
z&(_7KU{J(abDLI4Y>UNam$z2(HLfyYg?3q4L^BxkM6py$R3i{0z9b^CinB5Pmre&J
zBnK|O0-W8-cv6x;mB&PjoD@UkS5iKZIvpLIwP5TT)hpF*N+N09qC|irA*6+`%}MZJ
zhv~^KWLh)%=QtdwOHUIB<yamYMW<HLG!vX~_HX;_bvGg>DJ{m&W445TOL1D7rwTY~
zV_;@|%CZ*-T*1m(pfR68K1h2FQmyqOSq>;E<9(hP=M4n9Z2FdLhDj==L6)i5RjQcT
zKFg(J81D5=j)q>mY3XGaDa6o}xKN6&iYPCln4ABSLRJmv_Fb%Ljf|-pQ`KulVE8&L
zvKXVaSvxptXGoZ}Q9Vn%TV`{{76DaEfx9JHF#rlBuw5CN@y$l>kqso=j?LVXRCUOt
zF?O<JXmmSTrRIji!6FusH!G&l+NEq;Im@leR;zFU-0!t)$0VjhJhAfvFrj8F#p9H$
z5Y!4AGLoUGO;k#+XgL1n8AisPl8U)r%7AP4E-ub$f-O*m`5ArxQT(f-&^9*ms|@H=
z$XIH|Kolz>V~X1G7!A=R5`VbOEkPDk;?y!XYR}}0T9HUZV=8CcYj(kqBkn<>#kD|V
zF|VXl*(qJjAXS~A%#t2T7;MejoT$0TI>;DiF_!1UG67V(uI*I9?@~MxMVJyNEyyrW
z|3Hu9z4DorHX5%|Z<6S5ON@inl0@B!(_I|E4Rk=ZCRUTGh~DKoia`{b@|{M#Vp9hR
z{{!#@<*dpxff1Mmt7@#7Ocgh5`=CmEH@HBoRe<wH1#tH$LI!qJF-d|^Nm&$2nc`vY
zE=`n}7co9-eiE_69UW%P%dMA=Az@~SjD$2cVP#4R2GlYmY7d&*RleO-`)nfhl*L?;
zLrv>*Ey%-l>6?aLQ0p4P6B#keb-vck7ZF)Vv|TUYAxl>k!Gv;bZfVYO2aRKtO^u$p
zHaA?0jSL!7_mZ|6f{5I%J>9KUB#3ay=!RfS@6g!J-l``p`cBNI(acnH16PiTe^L*z
znR@pU-C`Fh?p6dKIy@Bdh#Y!NTgD;~&x}4D7o_DYe7|uE5+Y5Zg@BESKH2XGQY8r`
zvkBX13V=va%sq=#)ARvzaB67XV-#qq4T8y*n)Ki3{)m|Z{pH;Vl0LJB6ms<ZrGy`t
zFVF0yD*PM<se;nkZDLmMsnIdq>1&{hz8(t>MW*gz&WxyJzB32X-20MUw}>f4sH|H-
z60!zDNx)y33YO?2-NkkvSzg_J6ep_4(;cBP#IU_pN|B-CmNcC;@$4!*p+JX-p^9qe
z{*e}}>82dWqgNIzUqOQp;|?nze0w8XEKLQi(H=6DR!_!UxyatFJ}nC;H(*>aNoqwI
z$R-V`&xvzKl&5Bo>vpYmw(9iSKRAJxa)eZ3w@=0N>64L#v9CldOR6}$Lv^Q&P7x>i
zx-u3#Sr@C_xRS8cHTEbpTo2Qb&gz_FwbD<ADH>4QFK+4df_0;h#B|i;)I`RYaAErv
zOY^fljLx-|{%;#q($gqtumxdWGe(klnV6>;$FljfS&G>8?e;w)&Bn1wPqep{+DP%#
zL;AX=jSf^)&S|+xjfh^9s`F@$G$4wRh}50n9)6*I2Od0STBKW_dQ?G_nlv~wD`G17
z47zo88=U--`N%1z^i75DApnmy%36E=w7sJ^CUuz50}1_u3ZpDD@;nTUo}_O`CDfZE
zVd3`io>rcr5Nq2yT_;R+fuzP0I604t<(X9uN0eIW_U3&|i)TpxcGWrdaqu{c1pqB&
z&D7^C7+k>UmlWfb>@?$q37#Aik$_iA2c=kD{875VnqkpzwA?$pRq<@(80`bazN|cq
zI$pY;MJK(b+?a-B{XoPrvkzt5cLd-mPN5Jgjn%03w8~-<WGA2qQx~39nSNrTY+UU=
zvsz`v5~kgiX{;~JNXgXg0T;!QaUqK`@R;IJ5uT?U4sW>{cI+5Y;*RTLx^>eZ%d~Jp
z60nVfSw)AOT5>*#?WI>_N+|5^m{J{GyuhGT!wU3*F5KL-PGGGP>x^hE8EjMZP~v`x
ztT83MObD>*{vg54v{)sd^lrzQ?kv%L1sUDReNgT}agRupjntpX5o+s6#2uGVDHJ|Z
za%@zLHn+BWaL^>I3~Mx+Y3cL^YP?Hr9UYzrS-YpURo-ny7vdIgS-bfKX;7OoOFWuL
zN}G@w3h0u^j@?+^6J?L8M!hI8ZB-aV@ebbA5}wIymp6CN+e)=>;)co|_8>`?%u{Bm
z59qF$jx~0(aDaKZID%%_#dAwrXaMMTl1<j7O6t7vk@QMA%~e~F*$y#3Pf<+rGf6g*
zPw;s!O5D`&H46l1IY6SsC7DmPI&1Tm?v8|*lgLo4!*HcNrT=u2T1br0n~KF6caNeS
zn4p0QK(0}en2p~EH`6pxBML=y$48-DbVUor5}vYQWc{1pSdrEUJMlDCVt4}(!KHSu
zJRzSzpM|7LgQKc9ibR#_3z(QHR`4Dx=73MBImzfulWqp-gJc`yrSsA8ViK6R)M$m|
zep3t5%JNj*hWH`QZY8N{_|zF$6A^bi*svpO%%{#469twqfor=a5JjHZ?iUyi>1LIL
zWSG)ZKJg*|iIyClGl*Kmb}2?4Vq%?ZlkPpk3oF-r3LeuyJ^drfD@8uceyw`d*dn*a
zZF{3auGCT6Rr8KTZ=L(vXpWF3H=9?)%Y!iv4VhJ@l17wC|48~4SpLUAIR;Z=JDjvc
z`B)jCE<usyiEvCw7vM7ll_?joH5sxhcpK{!GE8jsHtS+$8Ip$2s)9F177We(#2I?_
zA}ATTv9C#Pz)MgF?;102q2!B@^t9e%+9?1>QLE{Y7N!v;XSTu2Ui4-(M+qRrsPuB(
z6!p_cU3$w!FQ#%b<IGaNL!xtA5_jYbhTU0?0UV_2lb$!GN-n%r7CpJjg=#7`mHpsZ
zk=EhH5ZY3kFge#+OE4q~()4nhpT^0WDb+<yqZjmth=<uZnL4M55hO@e`Ygsx^L5yu
zsTl0(vTC!451AMskv21MJP4Q(FoX<Mqo$;E!7?Ukul33Xx6iWEvl6=`W}#`upq^N%
zcWgASiHbmJ6=eam73y$m_7Y+G!&;D@s(N)b6irzyMendx!en8<iE|`db>n)u2j;x7
zSW;4pp587#5tnU>MP`m>(XqD3!pQd9LZeJmWBxzh-UD8%;#wbm_kK6~yytM}%@)O)
z!~_*$jPYu&AjJX*oO2K&auhrQQGw9J=v88g8XLqCu_5*@v9}m2i6sVWV(caMYrJYK
z(dhR)&zhM%`#pHS{J-Dt`}<3H&z`zw&6>5=tXZ?hUsevBU>?Kb&V{3{4=^QnL%O0w
zF1c>UrI{6JIxATO8weK~w$oOCCtHnSo@B}Q(Kn;n(9J%Wn<vtSIpb&CRDny7ycU=`
zto6^kHQaTG-h?&kS^UE+Su*dz&NrJHO2_O)l&=M|!)+5984=M|N8wO)aYwBMk@jd~
zcCkd<lyfTBKaQ|?#tSC{C?7!QVznl_ule}#0tklzH4N&_9t_VLma5tS`r*2UTMz{t
z92~4wSd~Q@6VM%KVwxH8w7=#)j}Z;WVDARu$?c5qt=@yVj1oIk6Z520L%ZZ2s%zpP
z-d(uEYj=4K+=j=ly5lTW-gX>RK}oX|vzS)Tl)Q4tts%&7mJ7HUZ56hIM*^r$*P<v~
zpd-?AIS}4Khv00XV+KP0L~aVq4KxG3Lr&y%|IWt~?yM3am#L?fPSX)rZdVBH)>7on
zU~Mujgf~993B|6-EoHZ!y!(hPK*GZtNWA#N$uEXL!s3-aVG2=%854RJY()zVXitXl
z0t{ibLtu*GDdr``x7GsB6C%e3T@@i)F_SBTMYqtWF!-jB9yu4`T;0zG6P=}{o-0Qd
z2Rk^WlcOTj2570H2vXmikHp}7BX}p2<bm^H+>wMYK96urLkK3CwVoUbPYZFXAVir^
zg)l~dnpjt&=GERZVV8>IHWtgxnXAN7shgT&h@I$gc<tLoFVn4NQX_XKWOYcLpuJ&x
z8+QA|D)lV*`m_j#Kq}FB0B&Uzk*Pgnj^%v&Gz&{0-@@+=0e=dlY?cGEBs!E4u{>%g
zX?X`QxXG$FNTdA_4%)(rw#UcBSblCT!THkpld#3&!jY##9{jm@W|(Ab&7^fwTY+lE
zs5AxrQASX>_*;#-e-hmBjl9Ds3b~E7ijxTK?6jZv)a&o*Ez&#^NmSg0>?q<1uGc_~
zbqAPau`Q!Vj2I`ce8**}2-zwq^r!&Fe5_JYXtAS|sWPTaxfp~R0^DgckU`>snrJ9u
zc04Dgnp3|kSrQ$F%WC#4TqLzf$vk5-!GmQH%kld2Pw5pRI4R=VoJAOv1ksvPWMIe?
z5Hhbu?%$4!2gL_<;*j$_KSmlC3!WiV)!Ca%SchV@UCD2S7C-QTcxF&$Tb7~jBai7I
zuS}<{+kcJT6J}$L$Jwd9?<T7S-a-O3-Wv@a9mB~aT=HiHr`1RwJwP%ZREYrLxV5We
zV6$r~Fgs^SI+?%OXeyc0XoIq^)nwX+9iWWc4V+nuP_bxr1R`B}K0WeqN@HsldvyhL
zFZnXlj|DTK+d>p}B<<2*BeM?E>zSk@KzfncaCm26>;%Td)OHxoJGxdNq8h@G^Wb3!
zWzASpU_B-2MeCFZ1LVwbKj6~{Sfd9I3cZuFTkMV$lob|Ra5cH$3a^fNf}w!<Duw=R
z;1PAFCS>rqrc5s%sLcWiz|yV_wn8-;W+@!Xx?A?#GkBHAOq@9GmHKB2mS(|md4F8$
zV+6I01Dl6K5aJ7pjC3W4s6)&r_#YAx<SQ_+F%mR%A3@ztmvqOUF_F;lY$E9}^b^D*
zMtnHO+b3BVy?Ap3f>P>kqsM`5V^**cMSCDqcN@+}GW7<Ln6@-799)ttX-}6DJ$%Gy
zh$=Eyo9S`93@hbG7j^U}{aLAd;lx^JqMm@~#{R+L5*R(AiwADzF34h-#@N}j?XT&#
zCxe2WjhcQIQKGyn-P#nuV}@ZVjV-e}ZH+B({B*eF;;;sUX54Dd9H@G;4}}K<W~1l>
zl8#~W>l}q`)k(z-*LgT|*f}uBCiburON`pXNp&81hk(f73q224q$5*+y96OaK&%nC
zvuKza!$Gvz;37#SBBpHkP)u160zB=+mdaG>jGhvxIHECT;XN$FbzDxPe3AJkzyVmy
z5oZf*jPCRb4R2^>q>kZwb)!WIyp%>h3vTN<Iz^tzyn|*<M;Mf7!fE4?@tJx9w*6+4
zVjKz@K6$F5D`7M<bIR=<1`Zxx(!&vAhIANQeH^@wX?yi!?WY2fgO)Ah!U8T5Hn$bG
zDlCWryVX5hzyB$=M0h|0z5z5~>xyaYgW-`?&^UKJq859oh0ACUyme8MxVC#OVi(E|
z;*J2xpuvLX3%$zlK5L%-p$(Es5Ctc;3l(vTC?cJv;LXJD_WkIgxN{#)y|vwA(4e&l
z!=V0{2I?<Ahhb`EJ3mG3sMkW=yW;wU?ln68LETS8<ZjE28)dF);q!at+-)5X3K7N}
z0>WWcS?3eNh<WXF32E4FF?@*Ia_M+c4*Oui@d}_d4VD3t0qmgV$O%50kaFuBr(#tE
z7XIz9H?}Q5K`}au>=$aG6_h_w#EnB#>I`BJ?qb{8u5T3niFl!h&WV)LVPit&-Q6^S
zsKmtyE*p+N5}^vWS`x%?v*xt`c+Iu*8tU)}_n;O;Wo@b8G<M)F+y8Lj;K5sMyVW)W
z2OSKL!H%8KFC1y7<CD&rJ1yRRyFuG+J8;m9frIuOGH?*0k?k~N_QD^c_yPOzO2W)}
zb7s$3IDgQ>*@xiVd60q>%||9qDW@Me2vfQM3}ntcR762E;xfp=XZmae89~PM1EO!y
z2Clfnkf6sQ3MoVJG8a*N_s2UF3ta#q_{aqrNguho^91K_80dvW0&z+LYB5uSB$DoD
z&P9A$;h)rKx`EhQSQ_l#Or6~RLr4m=&~|yxUw}<Rs+D){Pf!w|QhUd4+p};bnOZ4J
z&jfd=M4M?%plz#%?jnOH!`Kt7!mb}{hsr7pmsHm1CPC6F^vnW24okZ?+<X)dr5Y|L
zJLpHIPZBy6+uyENRA?NBA2-ht5eQOEd)-o+KfEH~tPFvQwc;&)UYnqq*sEBupK|xd
zV@Yk@Xalo%DLQ7*O(q=eB3M1+7jxifbFuLkXDcksm7QXofcoLtx*s065OS&4@&b|z
zHmoZJQ0<2Eh8dK`pNaPH7S(WhposIin=V{=F(=$@T<O#19-3zdR8j6O^h^?z<b_ZI
zsb*p%vrW_Nw0@l}E)11Xt6GZbfyA?GG1SU12}O>vYTbqqrxx8phPX@4@}bb?1NstA
z2r#Xr0Tz?(8v;pj52f@-c;L)!mr-yo6p<NEbQ}YgIa%dmr$z=t@sq2*)tR4K8TEBK
z0grp!;g=o&6uTWiv5nbx3bKz{#q-gHf+wsxf5h(2eBf5XGdR3g2F$8g42x@!<}RG@
zjwOk3m=YMa+4DEzP|}p&mPy*T`P;mnYiNS)@JS&lZNJPQw<WweLZ+LdF5{Il1w3=`
z##=bZn+ew}h@Y}b>`dJ@)q#sdFce|F3w}Rx^qzQ4Xtx&FC}3OkHzVcx@4%AmoD1CI
z%r<x@70ojOt~HG19?on!KX4_A!Uc97@7N=A3qjp8_@aTi0pdET-f6LGUN|y$$3S8w
zm>BbFv9}VqzQcq%omPxjrWV{{12?WyVhi6GV?mz1xI<9PE`%l6QfCi^c1F>6FmwLF
z^JXzLE3b!&$&hL)bUs^~zQ=h2vuSDFqvgj1%(^1rxi}Xg=iDi<7L}XZ(V{$=CGZPn
zO=(Uv6y7NC=o&E;@o_nRdXA061#F-oUY(v@()3k9=u$I8x^ZDhbO!1$oo@{2!HWc#
z_eYGHi0Hi*(8Ny6%yTVp7=N@*2bxyz{33m@e6iPB=aWmjU^7F7(sj@CR(ka>W^i`5
z3~4%a*=wg0Vzy20Rb;08+GSThY2m;00w8($Zo}GIp_F3<^Zq0^*?9a2W_b9y@Nytc
zj*fL{|INn`<Y)j-5)zp?mxs{vm<sc8bITY`3ov|<iY46%M||oW3~kOSMU&!*j}{<N
zUbMlY=&;9;f@xc<$9$b=AfV!}0kE$zdyd_+bx*`8;+rQp73Mt>N!xJHD=IK?<g^*C
zUVpiwEWvPzlEL`N)eydF%(&LcA}RO4Bh7(zHa{!|J3_*J4D7&oFAbqd=i~hmY<Pp1
z*Gpf8hmg3q+!=%o?On+0A?XS+Z$oqxU?;<HZ=+}8fs9G3fU5`<V^YPmS;S+ao<U9k
z96>|^x(+;f6j%kHt(1MIV!r+`=Pc#~RN&T3?|zjGyv?~^MrI!@|M|A&IR~`=7^e8b
ziXHyZ49<=@cK}vG3Ler02wchYAw0n}EC4c^DLphO`D<PXAWRfznBlOu6<#^-LnlT7
zp~3+5I+Y#CMsvLfE>etyGRtBG>nD|RmD9q+nF1VgazRYUmR<L3E$smq>u*Q}D?^7x
zp}TN?<>Ri*vp46o_KUs9G#WXv8BzQa$%uFrc#FE6Qj|e@SLg|hlkYCz6l<(MR_4TE
z${6{C5*wTY%akN8Dso3JT8YBF(+9xZaQPHL*%!=g|EX**F>iFN(djd4NDI<gg~M<;
zci!Dy92{sfp`lelAAcR2f$qQzaHegV5jD`V4q}HvP*)_h%F|*l=MrI(E+kJ!(S|y<
z3Ry85#H@gBh%-84F34JU5P1g)^cR*5{w{6WsbYok*m>9@ciVu;f%a*-(GFM~oOTzU
z3UFf3X$QQwu(ZIdXV}vqwi?v1@jitlvh!fa>!3u2&9QT@l$()(9b9W+t;J4E<VYts
zZWwI43t51t)W|sk2{I_r;B6}V1KW@gpf29VHFsr)dAqG00;PKq=tUHR7mu*m#X<$H
z%{cRxyEYSR=sKE{Go^L~@G69)0?7ny7W58M*WGoCh04KL<Q~$TXZ`+M(QL$cW>G#b
zBq&HxoXzjWC@#8&M5N1LSGu+VA;z1iG)x@47JU=U4C<T@2{*2-5?|sr<FqW`roT>v
zvMVc_KNgK`bK+RsgO_$FnCG!ALwDi(Ph!Dk9}=NRZpr>_6^@-FDeiJgdf7v*U`q5Y
z^KG@zv(mOLI2kHOe=e~lbAgSS36_CH&UZ_YYLpqj3Po7(dcz9glC9Hw5Jr<Edp=1C
ztH@vGjbd55GiewD3v~(GWW<`IiG0jZ_sUv{7M=HDK{eh33}Jj1@YP^<93HG`RKM#&
zSDLq6ysW`~c%&Lg(Yws8rQ&wfaS)wR&Z=T1xW#UEA_*CBGV_429T8+QA57x@W7dqp
z?stg${T@u6^YLN{!3Jfo#f$})V~KWh7H+9LhtVXo;w8PHAjJa`1Lwlw!JuBL3CfUP
zK(g1<hRqvTR2IeW@y86kyD__CFj+>2?d)T-4)}{`p>Xv=*j+}C2;tb3ZO&eJmXG0H
zP0JuvOTBdLm825!6!OHfi4^!%=yseIVL9`4QcxqbZyY6f(ZyAOGyP)jcsRi&7rnj|
zxH%ZVmsM1SShsYwhW1D;JyC+pIa(Zn1YK?1*E9UfKg$gE@TY?R5tV0Ag^x`fXsTp4
zaM7?_xIif-uz8aT2orqsN=CGpjk@y;^y6&4Yspj?BuXxM^aTiF@e8pL>2)xP@pw<S
zei6Jx&+b`t8ton#dx{GW;EARvjA=4*%7K3owRp+PuMt|hAW_`DPG;#C+*X)_*cM(r
z!8DiH5UJA}2Y52ZK@_T2VN3(A;k{r7+qV6Ot(>+nJ?+*$4Lf9PgCrZILTGL%NI4k4
zrp(b)6CZIeEFDw?L&QE+te8r&=4V1HcBCR?78h6M##ZZ;3J#g*!h<b9a{)B(VPY@1
z9T+owk~z=Au<_rGug}IvF`F>$#KbikhXF}g4AeTf-FX@YawQmnMhQxY+Q%TMUPP8P
zkf8Jx@j`iAZEydOAH=9|e%Xqyqj#(j1IZ#@`K>g=w%}25Ja4!so@s$Eo5tj<b)(@j
zp(z~Q!m}px5DEahMHNoQ=zW6e77KUA2`cr7Rf5N2xiMj`=Y#NK9fJ)co<uZet@9X8
zZfL?tB$(yIWnzT;%hIquGDHYM)Vsr!7^xkLaixbCfl=OR7(;mz1Ujhg#w@Zs8i&Re
zy7sm*clXN2?NIN5eGYFMGiEZjW!TFSCG;{7P1*CW@Rqk28c>e8#V=7DZM%Gs#txzE
zToXHVh6*ROC>8}Azc?e@!kD4kBvAn*@BKT+Y{)%T9O`!sd$!>v+&x`j7j8+R78o^h
zjBf7be;K=lgz=LXyR8izHE?07gAT9tq{TNO3d)M7MrPkY_dayE7HSdM!)>nRRtIUP
zTQBw3HejmOz*>JC#3hv$tPI>?b~`;6Mw72(+dG~VpIl7xzJYy0A~cq=G`Q;FChwnN
zG)rx4Pj7qi^F`)Rke*u?&P*NT6LbXw)BJvo8X2No8YlSyxGwg4P@dgAKqPVh>CV*3
zghg2-<BTj*dS=QjNGis&3ddp1`Wj}f*p=E#p}IRpWybM;sdWH#j=vrphEE+ICNzj1
zoJ>szSz;rFTfCuVD%~c+?cA99Kd09n9JCA_2_Hr{WZ0{y%rO(~=n<oa?!wovxQU?;
z45L;b1l@@Ynv2E`Oz7oJoyC?UtINwBy8(D?z}(~+AmUA8(YVN<Ty9)B5D6vBVy(-#
zZmJZ%yyB#}(56DCFA^(qH%343fM#>WtJYL$SQdK^8ePEJBtdEIEDW=X8NskLP6wq0
z(jvk{sI&OkxXbJwxFk{o6U2<t&2?=S>gY}Sn4{Y?lp0a(a2gjTjo{-c#RKitiMS2B
z27@^iO1OzFZLvJ}!=j|uS}_*7%F)?P5fEiF1amVfWy(|M(_AMbY_55FBkZ+{S-RQt
zw>g1w1}Gw)rPmj(jPB|<S1m;yI*n$E&Sd+|#vvl9s<07;=e`T@8LdHUzz&eY!Af9l
zf>Q55iFnEkoon2i_YLw2OyOqWu+4*$`$8tst@A70e-R9YMo|u2EIXoJ4uz+*cok=a
zOq(l#@fG=8G2WNv3(pgV^Q}X+9^Yls^OOh%)m~hJaJE^ZTfyK>h6wvK7>KRuhM)!1
z*J|*3Rq;NJh^c&3;+P(0E1U)tv0t6W2$MZ<2?dX_UtI<F{ttI9F)ez>D``x^lix}r
zyesI%JDU~QbJELS<Pes%2LhW@cpNk4wkw2W+?7sLc^)IPA2l>%v%of&JExC4S;uiO
zUC}!V6EG5%^-*Ksl83*sSHKk#?G@@{9?Kn+PCG=I7qGm~=)D~*FsXQrcWSU(1~BFd
z`@!vGJhsq#gpdpLpD$deI3AK|eCdXO16cmRVB(%nb9M>$q_;Uz7JgTqIXoqP=eS1f
zPHq&|?rtsih9-~e5Ey}?*p%npTC^7+7g*rlw$w!`v5V+3iOfxs%Y;}vXP!t9XS~!}
zJa{{9=mbWCwH*M8vP3}woO@XcW2sJyf!3}0v;osYoY>@9o%~*-x#1boc6LKS7B(#i
z%>&0w-Wi^$2?_BV*O6TbRLX1bn3s6+*}=BaJqQSYm?&c{N$=>OGbf<PnzS_h{MznW
z+nM<iMqqpvhro=7Mv}k^FAq~!#0~4{PBo3K{wkz#Y@Xe7h}h@MhRY|Pkiw&s8aauF
z)8Pzza_zEP38Tvn^ksKSA5O{3*sz*821RU>`>L7tM!;fWDyf|K`~o9egINVZx9fR>
zbbo(wU+AN}W?)om*8}xWxDZPIY*(JS<@K>%Igvu_jGs9L2IgX1WQB3Z+e|gr6#x9g
zPWZqM;FhBm#RGr&Jk%)&V1L?xQ9+Pd9vfi}n#u^ofnA!Wt|GR**91KPZ1OfZzN^P*
zKOPnvI2BycNq3wV$|3o~a*-p=(}$E?CtztZ$8oCN!WJCli}Nc*XbT+mQ>jELhOSV&
zkAhR#YKZp&)O1XS(gUBSLZ@_&;I_V9&%kP@M~enFz3P+F+3`u7c9KtW#i^L>^57s<
z;{IaE?o3KN9CJ`MD5wM*S3S)YmH{SPelhB8^q!-5Bi(!UYl%5UeGi<c597;H#WKU1
zFw2@LF3w2mAGD1hRYyPoJE&movMU`J4g5eIx6x|EK{9r4&_V2FSF9tyfx-n0$OS6l
z;#PL^)(J{A<J?Kh+Zi%DZH?mLgnLco$*u`^9mJXy1DnY=2e9X4mz=zc-r{hPNI?do
zNZz@FxX>90j^Od!de{vFw?|H1P*uru@j<U}PDixY7ky%b;6iwWfJmeSkkqIN@%y|?
z<da!+f9Klb2?puX&kEq3?+jG#R#(_?6C88M)3m$IM|{H(NDFthBQ?SNA_@`+2Qr*k
zl9cl-#kLW*?qgb!x)_Rk^^XX4&vl#PAv+JS0*y!V5c<!&S-`Z`yV03<)v~iVznNy|
z;=hb3zz;hZueiAEnoe!w$Qqp@MfeJlCCvpXoRe572*>kLxK!$tigIffKk1srIQ&7V
zqe15l>-53h#^QD>9-tLw*iW(P_s2)UD@>RF;aoG+p4j0<NEf9~k-)&B6kEs81lW0%
z8f=Y2=c8MJUBI&GwwlN#&5Rh|hG^rvz(Lo%f|(ZETVdS}l}V7?GlHm~sZ1|cCE7CI
zcC8lUS>&)z>WNWt7mZkkbf{z8)6ghEbmkVUW8OBS2Ud}fJiIrKd6Eg#LOP&b!ijf6
z_iP(yaAWUTRuUQV39BIroJ^xztjH?dBWM#tj2%Uc!Aold-47dKsNREq444j_69c^@
zs}8))RK{#%HH!5S>_lynTu_DmA-h2^7Wc++8+#HkULxT|QO}b}$81OOel-4;aYOeS
zYwmnVpV@H`5NPfQU?z6K3u-wn4AT!>tBfmxszd^gYlyQ`IB!Nr$aI7&E-ccI3@WRF
z;T?P+y(d5(^zUP;$(yyTAH3RW3M4tB(R82&;1=(zXmm6$8(jtw6pR^R8)wJE{swle
zw!%yWlL#A@(&a--x@X7Lp$ncP1z0619P9<pn9Iox9Dqr8Ie6i0&I89eZw|RsSiKRK
zD5#efzhZBUg=2EeUt+|81TdxHmM&tN(c2kTTd3a!3{m}rLI0pb!TA`4T!;EW!43)|
zBcgEUUN48;z#u04Q)FC#GLSoN&7KNGP(0ygs0%V+QihKT5b=0N1*_0SHvyX6)eJUB
zR-wans9{*GIxm1#8Wud<R3d8t!BY1L!}7;eiw{6hH1i#E#q6xRJhi2Bu#)ocV=W>O
zdlbURrW-!nLlI$T_y~LJlu`BPk~_*!>>nJ3z{CM$A+<;DHC#{@%Yj3eI~&MXd>IcV
zU~DdyiI^Qx;JAUf8MqAWZH0~2OaFNM(_wmO*Toeq*W$j7giG*Ht=LmNc8tV$%Lhx^
zAoK@Z`N%%jvfj*7M$<w2kR5=R#Bng;VYWm{CH4h`>4J(q(MVKA+ZdeujD>?TG-`60
zNP7X-f#uO}l*|eM?HJofv(Afw<Lziz6{ygf<G}FAIQ=h6tSA;J-K{EA4ol}5q?}T8
z<cN#f#s!3g`*(9^dRJ~1;0#64KG#M=i0dBiNX^6(X<oNCp5r3twqTD)KLfTYf@PFE
z{sD<KjoyJ&3>5f2o@?Cm4tKX>T!-6P!(-|ts^pCaD+wQVV}D`ccnnKC6c=9^B%T-1
zLb>RHAv%>EvLE9RlhPt|0VCjZbMPW&<Xz(~JaLnbb%_cz&vAs5!Uz|H14ZK;GXL_0
zhG4(%ylvwtGq%a}>%%4vUvcjuy;!%S!A?juc@J6}-!`JH?xHd0KaO`$asiip#b}Ez
zz{0ikaM%hd$nih%ayfAoo_;|15WSl+dIVir#C)ilP{*K+RKac8wvIdmx5_wNVN)Z-
z8>NiY)l+pHo&UMuu%`Wy8l{hd`_LH~4+_qMx6&cJH;Dgt><3*7>LH&o(^rf&oj;ME
zN*bAECwhN~1mM|C`!G23kMYdBFlw5b$%XCioWsWAJ(<jyL60qNU1NVH*mq~_H$75;
zN|q4}sW>L4B_5$jM$%N{sRJsxlzQ9958Yz~46t7BEkLWcw<?~ET|M4!h9QgeNTr2a
zGf*E_iy<BxSfl^;iJEij8+Zhkv7DVku1PVEdK?J0iW)f=CDx!bBO3E5?ZbMqyY1fR
z+Bq;RTwt!iPQw@CM~<fNG~)=GDqYA{o`B;pivZiTX=Ev2owMMR^qujD6E1%md-uj1
zYGNwrWP~jsorg1_InpAj5kLf(xk6V}#j1!?J4`jfj77nhg-aV(E`u<3t<gmX?^mdC
z!$<4_UJegzhuGmGhP8FN17z<n&-fWNd5A+c7paz^b?Oe}O!y%;k?j@h!p_dT)q9>D
z{RVx9647n;=7YsxxH1X**W$E3I$%TMm2BQp#w~F7gb=YTLJSsf)Srg80v3QmA-H|4
zN$%wl^;x9GDdW{;z9o#Gl0}B#hw}hgZcu{G<7O`?_#=Rzx!3fYFnS1ZY<JB>XUA~l
zQJm^}(H?Idyv<}GHri%3Epb*+hqw4~WtNR1drcTSY8;GB)M_n`##%e%q_8qa&*y}o
zU=`OD#sAD&f^B+TegA0Uj1Urp=cin05F#9#7M&Rj7xT&$w)v$C^2pM`m~jlblk1U8
zi-#{3!l#DThDD*z2%9&tIX<I$QL)!};<ZGlRuY_JCJ0v<Vpvm~ll_Of7iSsRo=s7Y
zU*6z=M02PW3&8nr7@oTsBIB0e<ijz1SsQmDa8Fb)IWA784(A{^Qm6aebqhrVjRdR1
z6rQR?oZjOxQaqjA6=x)FA0H$EI3G_)<&#TjLPoSAInTJ4KXme1qUZrXJjCQH1Ef9K
zn&3PQ5l~D5=aY~J6xcc=oZ@9<I~IX_Zfr9FNtndui$q{o2uW^>qO(bk5OV)vyA)A~
zi@J|XHqgNFWEUj1xV(S+kaFK`Tf?qN(9oozEfbgre4w={u&68qSe7A(1vzH`LbrX7
zSajTr)8l9~7=g1bT}Cz~+k%dHstbOgFdIs>F=4RV*l@*%ee0yiom!aHOU0;q4;|f7
zGV?)_(}Ei;eVp1z;Ixb><{}O&WcVHn6ZG~f;MuB${s!fdr-mED7CQq(s_S{M)MFn7
zUJ0ydpEqnzScc0CX1B2uTSkm8D1$uGVX*$417<lBl@F%iEPY!0F0ev4hoCoFSoN&y
zu0qxO7jrWRivq+g&Gb5?U^O~mnbH%Tra5vGM`Nd6(TT+Z*1Uhulv5OV^IDz5soFv6
zu%K3PUDy*>+2}NwW%VSbUBU?i#EK#l=7O6xzk|k@;Ivn4Zs}D-CI@iQp=g_<pdpmz
zD>2LBjW0S;IiV^92ZE!_@Hyb2SlkE@I}fe$CA=tsNXHX?xM%DAM!e^N*Yxbj+F{9f
zfGubu!&w~+LaK3{YO$0+TR3gu>;((;w2d8rLQk7RM=>pAog{Fav_C?G605Sk2=82|
zGQ^1g^2_-M@lQLQg4O`!{_uymZ3C{v+mTSp!Ot8UA=`I0HV6j2I4D+3m{}AEst`<5
z5PVw)SX&H<#kUgVpy9`1;{9u}Wu19^81x(@AO=iOU`*HdDkzf=-tQ-K92B%0a4tDM
zmZor*41uaD345q6;7(geMXPvT5DXdKr?X($^ySTWLQW!({ZOG6NmmTnyojbvly4ou
zWOSFt_W7Zl=xHwNho%uT<&f|}X+X(e^lWY~u!^W0H3nL1*r2^>>tM1E-;eDd)eaqQ
zD8zBC1#6k!M0~@P+k^$BD^k>deIaNatOc>5XP0rJ%Mg3*ID&HLP1^PG!`bjiZP1=!
zXj4UV713V75Qk$IxH5xCS;dODM&)UaX`*h!6+Qt*rD1I&+YwoEvO>Ji;58>W=V;?0
z2MZ4b-IcLALz;uP47-4|9tq>Z>A*n&Cs!3XcHA-8e>-lK&YJ^s3d3E4u<Ltpo)Bu4
zx^3rtuNcT4#4#^egu7Z$XjI4HwFsgD^uQ)Mm#<l(Aj?7JcJdh!jW88aC#X#ZS^^rE
zjdwu^RUym<>(Fb1#UMnkGJ?}A>2B0Hqc~dET`pcHivcw2F^}GOGXeDD=9drvndXJB
z(al-FTNd23cfy5O4FkZS@lKhvv2YIAD_f<Jw*-Nw67=pcq$hV2OtRfx-*IFN9`C7?
z<g)g8LyooY$dcxqwL%SYHUG4E)7o{aQwGZpdO$gyN93PWFjx6<>l~s?=X#@1E)3Ho
zj!1x1J}t}ue5Qv}=Ny5zD2Flnjpo`k7+6{LjvH$z1sW6X#E8$+=>RH-HA%Kt92FFv
zV(ez*gb^bUXH@E(wqm#i<}?wL0&Lx$d~zZAJNUvNP3i7|Tk=^Jl0g{fuy`8>mp!n1
z(mS>&>CSMKKYRo{sCVUX$$+rr3{ZwZ7lQ_KCQBEt1TtLZ)jFO#9ERN$4d&4B2m(hH
zZ&}RaRh8J3$D>69L*Sng7RfPy35P2LW(J&Y-)TGw^J4xgaN0sIW}=AZL+xNpgK2>(
zavg3sBBw_Ji3o4YU`iYeq@5t54MB15w7J%a1<l+Xi^i-9uB;$+4bviJQXP7WAD%QK
z48!IfB2`*}_S!mYSO9(rAx%MI!E7k|9FHR)@ni)e5_Cdv@Wyp^P9|d1iYRH=H+D(v
zlt|QtpAwvQ=)p^+Wx8|IVl+(%9sgC&q%IyV&Lp(FL+nww|3ch~r2D!ouYqLz#s=p<
zw5LYK3OLy82mP6D2Ov=zyEte*x5&wd;fvE`sAoT*OBK{|a<r=TB>h5D>Q;)K=1s?Q
z76Ef1g0N^Xo`E`aLKIA^a7ebfkVdKnWhinBSPhE?TtGVl=tx8G#nY#FSST<=Z3iUk
z)KdzQUc7LMo%zVjMohY&b<CUNa0x;ovvkv7S`zeHvP7jRwh>taRo?P|z-fHQ4ld^~
zVZ^2e6C8nwD;-2TvL>{eMbSOW`?n<mQVRTXykXHge*%AviXetw2z>Zpm!!~uEyUQ>
zl8_c5Cc;ptoGuMiBNQ!wiD;Z+GDzk%1n2*R_y5S)fGxbFPPA#5Al3sFa@KRc1yXP2
z*rfC@D1fJ>sc9n;hM>n{q;_RN-x2GvwIYzzL1n=VG=eCH5t|_j$yx^M-yt>t(3YJD
zVCLvXMU?C^2G7Fb;Aqyt2g5`b<`eh`o;Tzj1%M)~VgT5F8*#8P&rHJXc%*k0V&b2i
zEeIQF%6v<axHK3zA3o9&)bu$ALhlmaV~b^fW*MPu$H9#aOl>&v!_1Qzz+j8p6r^2A
zK=&sFhM#N4j_B>D4n&1QgQiQ%5iJ=4#BFS8iDE;PWY3991O|~pXvu7F(Kbv0<Rv}a
z$fFf8PCi+MjBVKimJu_M#GR5ZL|l#l{nkvZq8(Oa!Ax+$k)Tsh*&%wJbxqVvXv8u2
z>MImI_&^jZ7DVfs)>^PxnGLjCn?jIv%6zrw1*XX`=Vsz~tEPY=T+7R`GCKw(lAN3n
z6$o<UMcgae++iE1KG<2{qhTeKSik`XgZ#mc3Zi6O9VOXLkhqvL58icrN*V`8^JmO1
z+yk6+Lg*)UCGH3Fp~`_Y2@Li|EX3_d(FN9wHnsG`h2s^s2HIAtL@=3IH|(DxUR|*l
z71F(}PVX99eL9WK$AtlJn-DmQ*iH!oyZU7ygm$S2gCWtRA?V>L=bICYsv8CEzSxn<
zrFj2}DifJl*9fQKcG76k{pl{)ci_<*I~v))V=nIj>*ge$r?3HADWK?pgE|)TQobv|
z6>LZ#Hh^oZC$k)!*E;O(kR@_24?MQx#YO$XA5Fjhn&w>G<kohBqQ<g>AXi%UL<bGP
zGM8BfME4U-WsDk^oJ9iihz*bQkf`Z2@VFQp?PwsH7_;gZGw)HV!d6eT0(#QT4Lg<#
z&0F9FkQuD2AyELk!}3U#@ux0&E|*-#2$~b5zg)tB_I0oW)qZ$6ml!4aD{g|eOrb|k
zjvqSb&B|cYQvfAIXeb(*A(IH?T+W39gRVLP7;Me_-6=^;oQYu%%U2xn@FVoO%A#5G
z7N|52-NcG2h!%|b5COvd2fT|G4b(za++@>59N3+}(#WZFKtviMu>-F>;J2pTTMBkX
z#`TLZ$qM!`mYYeCWyfOR%Sz}}T!`R5@D`(8o<O0OQK;1}FLH9up<^clC9s9hRU8ac
zztI>skm4%#?5G;tZyHWXU=-5Z)s})+KW9tA5LHTNFF=a(4N)Kl>r#$QF!z}wIQt&E
zr~I?9e!-h$Y4HPRBk}+QtT@>l#}NWW5NGH|*92(StvE#JK9hj`nRO+M&@jq_YynC#
z0;hvTX)ym8VyUddiKh&jjxdPuMaR5o2IaAiDVUAGk(e*-*U=z}lg429wX0oF3{hfO
z=Il~k(opDcL@Ja<t+Fm4Ofe&LY{#2wx^PaaFruAv;H-{HjE(t~wwB?oI8+}6=fqJE
zG81q*8z<>zDIwF;3Rz~<rXgZ~*xo4}xR~@sfWombU!V;i94ohn8f6Hc5Io-JqAV@V
zG<39^3nR5eDKP$+S%?BbcN`oh3IT{567iQN*pWLYNamPMc+x_U)xhRW6RgYJp16oE
zXSg>=c)x(_)JO2pP_4GYqu8waqa~uCKrvULkJE&0A#Q+aHJb`-_9r7$A(9(kyu2VJ
zMN2`*V*%XOnm=>a0o<yE)yplKnJR4n0p-N0O^Zm6lZe=AXddWeW5jofieQI?rT$PC
z)kCAiVxe=3Epn*HPK^io@ji{PLaHP|&SrNJAaJ;GK41<rL`5JiI7z^X7K?KpZ!A)d
zK~^(B#sWSS0sGH^mFXd>c(F0%`cTXSvSn#lW_*Y0L!?RL*#Cf;MmUO*i?dX0br978
zY8Ap{Ba^+tV2%c;FU^_;iwbV<z~&R|=kswXlif=X#&6USM(Fik2Qc#OL=E~4O?Z`q
zSRMK$4A7YDdB77bcXPnC;m{;`61P_dQZ_}jXb70ufk@0Iw6!0SQG0De^~md(gFXs?
zAiO(|RGri8i`GIt51<>0@Z|Qq(EFhcL8?J*GmL1G(a|D2=in~Ihc$}J42;vjJDNO1
zMLZX$S&{AXfCn|Ss`<^U57g}U)4$V9icn7y*Jda{kdT-tx`O)~dt_Dxjo1`30on{s
zS3`zQ5yh=00yy+wd>$XXLyMY7!^w_Oi<fiEWe2L)Vqg(=5*z4oKHjp!=pkWvh{7?1
zRffOWZs>$P0xA-_M+%FuanLAo(JTwt&cI>8)2{#2%~y)as0lV~cmc+!!o`IvbJ-!9
zl{EIFSFgyx;TGN~5|VhC52qePss;6D5Vx7L_Qy+$#0`eRZ2&?X*Y{xf6}4(|LmwDC
zL>!LEbk0o$THXwCniP1+o+uT6ItFivT-tC^n?4;o16e=fCZ$3l9#GlCR;GcdNp{ZN
z6OI2-a&&#kCF?*|!YV2z9bC?Ht`rm+TJp#vQOq3yMitl{HCL>4<;zMR_R0SAFcu|}
z*fD5mLe4x3aUV@B`&wXI3&CiZU)Q6HJyx7d>OM5}gZhHpu{$RQ?~`mrs2dbhW`9DS
z@KlV~^#xH}LU{Gh^F=k8UiNp4GAUwc4dSdt$voh6+h(n73Tz<`yt@>>lKyIB7|P@v
zAhs@I$Wg50lo8YdUW!-4@U*i#5Lbq=3l?X6IunHYzCkmr%9}h)t<#_CzKgmTzzjhH
z0|s~!)a}qL2jJ{2^^f66*N~|YSeONR!y%%)dObyPd|K1oI3qD?%MKs{Qj{%^1VCVq
z@Unt5K(^8uE`e<08WI|hi)xQU0Jz80jvEa^7D8EH7@>_Ytqo3RtuGEr)S-bEW+&_w
zmD#!RPIwihI)IN~LIQL0=5s7cx@_>24-`iFz&rzeex)LRt%wOIFuRtf4{?662c;9A
zndSwJYe0WHLRDd)8ir06F)`pvoZ5LFu-_QLMkCG(0W(R}RYXfVFQ5!05hgRDP{>;J
zx}Sw$3#P+5TG7pby0nNEiz)I;z|&mtF$paz-Ue(xhL{p2eI?(Kb9ygYCp+joeqY@1
zPQ?SK5KI(?&AKiG>)1jn7dLP^ui`14UIZ&D*p!6X?A#w1vRBAt&cO$@E+~J-#&{r2
zjod^a(>OKKXYpZGpx6dMf{j1y{h%<@Fjat?%0;taZ=$f2@CFU((yARLu{c|n*n<9`
zhkBX7il!6VtRrdv4nl-NFaXS2RP;~D;#+M$;1Irq27T^;IfE;Di3j%q03>%pXoH$K
zI^mTdKBOC3oq6b7n9I3>Q9$Vu;9|U?p44w;0ti!=_4sd5;1DR4q^H>3(M(=Yq7{-`
zVIbY01&kBJyqaS?Pv`x#QR?AFYQzDGS+lV*oJIXyN0_Xtz3%+E2l2ELlcKGh$8|J5
zJ;e~lCQK@qS`e*h`yGmFF1#O3W2ffPX2fveFb~yd!7Q11<gJXo4e$qz4;GU{oK*&c
zr5`hXNGl=@XBkJ)5`A%k&BCljOie_1v`GhJqdJLgoFQFU6&?clcqCc{p+NnTO4U@r
zl`HA^Fm?=>e8h`)L`M?=fb&)*EVc!9okY_^q!!tRDZxoXS~!~rh1}P1RYc`TlHocE
z$2TPMb)z?o9UP!rISRp8fd?$S3%aDHjfb63U-kIpc3ItM6>9zojLi>s-B@Z^gPK+7
zE{>zJ6>wDSg*m+edI1R}EsPh!EKM@@w!RJPTD91Y$byZr8GVGI2-si`W<K{r(B%(+
zKR1!erW~yF&*2*e;t6Vt^njB>RwF{~s%L=JbUA(+&8TM~-Nr8Z_L9P)FVX#9&AE{j
z6H7qLQ~(V>qFB|kc7<>;Fj!5v$if0sA+{tmI&RGyJ7!8EsMZ8p=G9<A42KtYY|-wX
z%P@8!&cGT*%Z66BAOg~{&p=;v)-v;mm4_h!>qPhDr{Nd^?1Hav7&}wsD;6ubu$q=t
z49P-_foDUum7%{y{2W@iJ*H)PPzP)(#9f3VY<Usi81I*PW**fISYpTe2&)nuD?z(6
z*heeaXrcvL+@b!7`_VuQI2{>9i!U$<nA9*UDrML<!g9k@x*1Jeh$NH+x|9t9q(aPt
zMGFt2Q)BpIx7hAc5Zk-$VPzRS8Xx!&Y$D)w9>EUxv$6kIn!$+C85EF9VVVt81T3(#
zIu)=q&xL4u0V6Y>7>z(p&`D2h!41<%SS)z0W{O#Ji{#dw-i7spWDF)F9~xaSj?h)H
z_8ex#cpU?+1KS}(ehaXlgjj57Pt0G|4?oMcY-#yYi*xN~ftV-36g+Owl7n0e2>dQE
zXF1x55J4SFnT}@|;&`6MZItFj#{?u{YlNdTB|u6BtS2}?iV4LNknuHY4cv$DAcxFd
zx`eRK#z90{_fR(qR6_~znvC=SaAMG`UdHhYldMh4lC~dmc5$T=7~T}-2&b44x2jnS
z_B$Bf++(Q-O1q!~SDFcz@f;hlENT>_%&@_cWM?y0a7fYG3hasLoCMFN^qxFa+_(nJ
zVh2(3K_S(ShzC1!L9bwrK|C2+O`U6p5A$rs$}_#9ZV@<fPQA@+i$TGbh_g8kJVR?T
zX2gy%9ft^$trbcaJ)B5F&JbmovDpe}LRQZuBCy$@UE|X_A!l2QhU<w~OB&`RTu6xt
z$5uLN+p7Ymi;-j6tY|DiuD)X9u|tZ+MdVXU56EYN=?9UK<B*wrfeAUW1=-@FiIwd&
z91lb2dMs;u=|Rhzn)3<v#dT^TBd{%7NRIPE(CbF6_65)^j1JfaN&V}mQmqG)^Wx9?
zbduMpOcbefq9E*}cjHUf?R?Z}=vWn&gmSVKli;)mnlUgqYu^+WYNe77fRG0Fpp*m*
zh%a~yF*E_0rRmb~T(UF3qzUo8!)^qFxU}Mfc@>xTCYfdnD9q0!>>_NWK>|climS`W
zh?PN<<RCu!m=~ZdR4_~e&6hwOUZxw~{WihJyTPS-cePK!oIs7VRA?6ykO67d-l0&Z
zk>UlK72RSf;RX+MZgM-t+9bkd?f|3&sZ5zlsUsjml0`oB?39Wg(P^|Jc4k7`uS44(
zLV6J+#^PnKj7I3Lzrc+LWrD6o$Tdf%7O}b~Z*4WD^lCF6&#;f)r{fOo-#j30^MkDy
zxVF?CG9#M^fTwM3kN}<5jh|S`QrpQ9iNYo!6QGn&;Z+yU`aE#P*Z4fjV)bIwMDfk~
zhR%aKV9IGP(^=gD22I(%gtZDv3e3o13}TT+N6b37Hp8_!?3EQ`<l~}(Hpeaql&07v
zdB|DUmM3?l1+<(Xeid@NLRTzSqX!Y6i=(bmR4`j1;g;}rE1&t1+E2|(b>Jeda~oUj
zI#U8)qM@o-|MNQRK?Hyo=!QhXZ^B{BU(MNQU<#JA$HBOF2I_~ptDBtMYf*ndy}@2-
zQG>R}<tzmZXwmQs+*Q~H@!)fam0*h27l+Qdj+%C&h^bt7u8p7+x^D-+$U6XMd{48?
z*N(MW(EzC?h$q^Y{*)z?Qjw_j+j2&UFosyrKp@{xh|BqZ%l8O3Y~rz3id0Do{e>ae
z&~%lG%h}AT;!$?{M1QKVV5M9IWPC&qFNc8Gtx2P2@p{)J+v3A8*gH<^z&Q<cWWO8r
z;@WtSMz8uj&Mt$XE(>t$FysfviNImdjF}1^4}4%MIWlTOKz9MW;e6|va}Ms<n%?_c
z+m?K5ECaVY-)edVIrFxjHGBF&3-|BX8gFdE=WY;8oC_BZLJZ@rd6Zq*YO7E{IaUXa
zZ9QZ9^v-n#5BA0XUmC|&vQ(n<(Yam1vb7si4D^2U4<3XolYA>Q26f?nb7x`17zwbm
z|ExJfwt_#GJsqcoi=$<vU;^+j&_{I}B5Hw-p^>D=K3ONaq=7GZ@~Qm(Xll?jyOW0m
zxm)28O8g1_hyJV(G#~sSm@NT455oUv+ZWofKVT!rA3Msi8~HyXKvZ0Kjoek7<9^Wq
zZ#A(6=$HqPocJgEz%ScB=%DSk#h=9mZG7k!2Yz|_a=?82;UX8{FG_-i^QN;l;K7y=
zfBeiK!@sgEEAE5k<6CubJ%Wy5_?s*Rq=&y)mUmYHgih{}gz%pDS8sLUm%ZZ$&7v6o
zz&%OB1aXXSo};Q5GzDHi#NV0*{Nj7Ip+K96QYlZ(?raW3?P0Q8Nbnm)TDSpZb)^>~
zFbe%ql!6Txf#caeemD+pE<5I-svb;;Mn!&P!#9r_6yZRp^RO5Hx?{Zg_><&?`eMh{
zFZi;hx6>-%{`3qEpI^;LD_ttJO8LKh-z`(6WR+e?Th?n-GBF#q2mab)baqkFwjvun
zK50XN+7Yf?Z+up}gwKj{i#GF~-}3Ekh*mbdDNS0ko6>hvYwg|iLneHfe&rIrO3$q(
zEfuT7X7awFf%VdDR%Gj~N&wQT<iUhr4<^^9`20LQtC~!7z2?V<8coT#tZBz&YIa}p
zQIbqmfqd7HJrLOgckDBN$J4V#l?`hHH>(ZYV*cHge3KPca;s3Xdom^4_{=1kf{a>=
zOCFqzuT;|7MeehL+_X}=(tWO{{%SY4&tAU!f4YRMvOT&#BRMZg#(Bt}4|zS3eX`9~
zB>4CG<WKlvzng#C(6T9-N~*Pf?z4hi^t-@))~w&f?lW`!vWtA~H~nPv!({Z^7pUKN
zy3NG&<q7bvQp-ZA9>j5vA8?%Rzx?Eo*$3eF83DwM7>~ckA1>selgmPhS~4N44QQCZ
zO+L5cae95oZA@CT#^y%L-L#f#5H2^ZE*z+Yk6l6^L;dIO6Z7FA!f(D!XjDY|U690g
zx4{Uv8Ek_a{KJSW^EI1!EUb$%>wZowf1WIH6u2aPJ`=txX+(tsHurU!G1%rs)n#`c
znJv0BsW$#=MfR`s*eX(wt*)#peP#7>5OH>S^*Vi562iFg7QTh1hIy5yufAGuMb@-l
z<J|1@R39F}YeG+5iT$qkgK)EtlM7NzB&K<D*Gzw8qDrm9H(OBA7omk7fU3t?Np;x;
zM`jOU3Gffs4<Pz1-~oNKWPeUp5b8fxKjF`**^QY9qL#TH8j@Dk&6|Cfm95eK?a4hx
z!L?SG-snKd|0e))5f|-K$yfLx(0&kel6D}c_JISWfwPp>ws+Oqs>?1HxM}W_vWln<
zIjfixiuOT6_^(`WeAWjAG2&{al3)%>xx{UsK0s}s4XQ^ZE3$93X`v)(zDIz%d(xiu
z8|IrX())qv2M!Ynmdf|TAdx;%Y{0eBhZIuDz!yph7`30K8qkGLkJYaDtd>79?SXob
zOFGI|g-Pgv+3L}sghv!q@>@er19BR=D+f)y@6y+)Hoh&0$_Z&!tGQ(qGx2=YCZ2A0
z#A?~`GxF=t(xa=kvW~8vWn`kh4S={tYqsNm0W1G?LW0$PLV~phZk?!h>xxXZJ>M4a
zlQ#9e^#pD8`~%nKv&m^GeojlzOObY7`T)MHyJ&@C;OmFFy|oNyE<o`GkAdp3Rv$}_
zO|@9hN-t$Im!|in%D69mIK@0aoUXC&r_-aVzI_|dlK}(kU=ZtUj3G?!z+WB5a5N8A
zKZ;~eQFdd{)?}2JY9&ng0Lr*TyGpcM2~jY5%pVE;eH+8x?<C^jvFaBERB;K?F^ceq
zWylpUlLxvLRnbyRJLBd9KgycNnsCOtehO4Kt*vla9aF4EpOjU^43UG?2om?{&0I=p
z?KD?&GSC^8pf7{Egt@sHxNq)PJrYZB<1t!lSW;Jond}by^&4t3EKcVV++e6*f<<{Q
zL8NO5c5_GwOR$`vWi&bPz-|Dfn;}7zI5p(dkW=fXWn^TRubEGlUcs2Zi8b-fQ=k}R
zrzBS-S`*4C6=}`Bsl3(|o%6;s&#^PiecbW{%eqwzOr#!X6MNqr2J{RYDF!zFSD-bt
zpH%Ws0(hHYv2MA)7wkp)mLRFYvqa{l@>>FZgFBom6}7V^P_X^M#tCf<OCIwm*a0Zm
z;WDD&vgBGrL3V9&TUrv)s)T>?qFz5Np?*h^xR0`WU<lVHw=&_@<XJX^glCi2necjY
zCdD%n&P=Z(Gq^6j%@TaWamza-<Fg&E;?ldyS{~1q0g+#Xfa8t;{{V1<0n~HnABw*&
zNIt`=mdN%^=QoG4qlxv!$7;D9n_NQBE=hi?&)+65@$;qROMa?u{+Cd3OH9Pk$#c}P
zz}$U<U9z43bF&p(9F?e(3<%A-0DX`O54#q+RclLDloBu*(kpz4tkMAR8@k!#X>#(V
zfAW*mhBn*&2@GUsSASc@&r{Xs@#BYBDHUza+D-#c%TBAFO*Rj#pIv>WU~-|7`=eBM
zeAad+rarqfy^9kB%-@y1#e}y~HHL(<t2bAXa5Dh062GlJ%7jO&Pq~Drs?RdvS@fzB
zm4xJ<m`0Z09Y%FS%K5kfv_P4b-IhMYp59JRBp=L9te#v|`pMO6#27u`dBYlym;V6H
zexJON;O8PVgP+?V7?KHoXd^?(O_8_hR7~TF^fHta@>we1I~2*9e_B~s*}yguD>BI5
zWjmjqMJWwUJ(+TN<@79+YU&R48Z+&iq0VhH>r*hZ%?m5mDivw8+nr4mDFCB3$APhK
z&t=0;&*oM(*feo~#JTIGgGrl3>E^kv<@sJkM|SDIeAOR4whjUn9rP==#($Myf6|t%
zNFJdWd?b05U#})W&cy68%s#&EO79{a-BrE6im&@ItC-F<TO6f6^ik@l)pZ2o`xO^j
zD;C;ssHXk~{h<}4tIJk(X$k7JRlQn*I&SqHJN8@OajDz!u3M0)x*d;hF}^9**?1ct
zI333~-o`h@#y8$~GoIrESH130k2Z3ci<29{9yqc1Uw%T!Yr=$NV;@TR^Vj5W{MGE&
z7sHYr`*X6iqmzgD!?IYvDO-Cxv^I;)9D0mzrJOks)i#-he^7u+KdF7&tt5y8>lBdZ
zABWbcg7x1J|7<u2h(CA%nOB#Z&!>I>bz!<|qk>$J@!hU=F3qF1+I{vy56}==T;ZM)
zJ+-~vXAPgwP-nZ(prMu%iiyj629jJ4gtgx8AhO-}7HwsFW1BuPJ2N@Q$duZ$$<Dr^
z4);!3|D7<VorYHDL-W{cncw`fk9<rhnQ`#n#y{WQ8#J)@R2$UxF25I6uC$1gLWK=b
zY=ezd3=J&{=>w2HU_F=a2a>OP1T%#HvdR`1#ui)K2)6znKE5~HK8Ej#k6kC~!`IVq
zRCyDuj!jq@ivpEftuj7Pxz#Fr)#Jg?V?WUEceXa(^P)@bsjUG7R5>B;Hy;;T7zD@$
z4KXl>Y=@8S{x_IQ6<e($Kt#pXY&(vxZh4l<kGJwzl_)>nI>HCWH{QmlMOVOCsyx9e
zPf+CvRv90tJi#hY@Ej?h83u<<EUXi?1(ok@ws4z#6WSBBO*_h!=<QKePAEXY^jAV_
z8v{EVZ(*p~VoQ8%xxIaCuT9nN`iSe6E4Nx@pbM2-tuj7P8T%_%_S3s==n=chY$M1l
zuE{OxVJ;_>`mN*xANEAKJ^)>RDY@U$<P694&qyw2!o|sTF5$Z5UMAd|{N61%Yc6U=
zyQYnR?2S~!VC9Bf|K+1Xe?7S_d-m+QsB-ytcD(#M>t9~M=Qp|)pPOQ>eq)nvix&8N
zCTudTRN?q!c@ii1ZgvjcV27P`9RohN@bLNtxmPIE8-)h#fPZ$F06ww!c#59mlT*oh
zPfeC4*-tAQNgtc#YOGT`eEWP+Ws^-au>|&-UlLlw9y!}`2mG_cP&6=fm{m8>@;`-Q
zJyD|P0F)T8PF%tbA^OSZu1m&4&apctY4>B?WE=ywhwpQe>#<wRuCJb+8=0M+KanHh
ziTv{hOZdFu_(mig-?+Nb5>_{U%7jlFZ|G_XH+225tGIO3ZQY*{6k;@!KnIfq3W)QV
z<YY?ilaqU?liiyN6r>B3DIOFg2$U%R<-Z9E68^h!MH8y5Xc8z$xS{Lsx+39sfJh}u
zU_?L+1veO~{=plLNnmsukMh@cg*>>ns~SVP#ueKfthIcP^*lzqVb;6dmSM~DX?8)5
zpS$x9`EzE&!wvXZ)9^$ie*V(<8hONPjb}AQ`=SzPYxzj99`h|iSF~n5le|s!^X=pd
z?gNj=-m3niitiV)*C~D8&OXVq!$55K{dt#UZ~Sv!7j*wX{$g(FXEj_&&HwR+e>AB6
z(%MQc{*|>`YWjYpwx$M}SW|loVmAA@_9b(VZ#;?6pVYXjQHB1{_z1rrX?)kdPiVTR
zsoMC_itM7M-|7#JMRJsX<PGb4WUbFNyFN@ZE!hL<gQ>*nGwHwheP{JG(*5xbzpl9*
zDC_$FI<@fx>@OHTE9(zd*B{3>EVYrH(Qujl@u!A2?2i*`zt$jKqxmZVuAg8PUDM?^
zUGQ^zmsNSZ)!8N#x{{=MYx*RiJ*|32hOZa%_Zp&|Yd$6v&OlAD*H@R_ctrMbdOl#o
z9}hG<21sr^!UIqgKZ9J6<?zE&QKLX$sT^hn1~p91E!Btl^Ir9H{yfm|NJChG<r?kQ
zGRS}}w|ku0PO>e4{C!O6_puD8X78n!aMyQ9^@=JM<(1VlaW0Vkw&B4BPO=C7i4FX$
z4o3I8&cr{9&yv<!t$pS4DpWeNnnyH0Az`{ZitbshO%huS3AURl3c!er>Ua6p8jp0_
zj{wB-Z+IX`{=2r|pO(Ey2kfW!hAy)i34RCUtJ*N~fgAe<U|eW}abdY*j?0tVnQ(jZ
zo=bQyd4#)^N7C2K_8-v5KcaS)kdZC1cEFC*POEPR3GXFOr6}=~wNt0Zlv+9zG<2xo
z0Vi6{4b6CLXl_r^pH_T($apWoK6ZTekhNE@+7#o1P?`Xtr1qfD2(Agf9VEP$a4VbL
zXYB+nrxTvg&LrQ?B-hR)-wqPqOP)zl;u&iP6RiKLG+Pw^MfgH{lYM)W+1|BGxYqEF
zg!humQzTrTUPHVi;hOYDCfsO79VFbAqQ}X;$I0k1h53GJnAts=s$-tD{vkk;bJOTs
zAVp<&2h;pKIVVl_?$k=PHqff`57r~)#Qp3JAa>uwfK(fkvvbmO4QlnngN1x<fU8IK
zuzhi2*0=G{3U=U!akJjHZ&&|8ZKdxfMIKtH`MR4x6+!Q5{;SYfe{|k|fI0{3t@(@r
z0v6jPpU__;3!ejGTx3b@3fEwFX{>}ge<AcC18z_7CM-&y%8eb)7hiXU%!X{EE&k2t
zZseC443BNtErV11I6EtO+AXf9VF*L|m&qSer2ip($JSW(PI>{20T)y+t|I+noRMLK
zbvA*haj2iIP(RfwmfF*7uGKe(gm=>O$<fZYb~>#+4YvSw3YOIr0J^sa6st{5?(LgI
z!aM1yRg^fj`s*r+|C)gA?E$S@jKF2l_*ks9u`9{;R~o!nf=`phz<OZAN5VVll{9T#
zY4Fys$)Yg;ImrWwB`6>#c_5MSP71Ild9eJNbn_Ddg?1+UcCfIXPX5k>zbBdwB&eOq
zz8$VK{g?lEpr2ms5woqQR+lX~67z6Lk{$}50j|co0s&w(?ig0%J?WpZ8pF4>R+QZx
zNV+F|S|+x-R?;0;AnVU5ep$=bVqCLWi)vwV_B2Y{`cOAqi)#W@J*x8-Xe}b3OJ##Y
z-CFb?ZY}yx_E__E!&>|xG*-73eZ~O7ilykk`_pomhEFWT0ueBOG&-c(QiMG7Sl+x^
zJ6>`#B$(U;efgBEvTn9)%@HfIbvO6+`8!>6Sw)9seQg>0RJV-(;0hJXIA66&=)&gV
z8(4|oI9v-bI~?XEx^@)*MFsm~jrHFFiu4XYLX{u=C#qoa{paCGVLdw;j%z;XH<4SR
z{8p1tZqgj<XU>T<(43h3+A)e>C(fngCQB$<(O>zh(9|dZF=`TYH8q9)*;I>~LXO&L
zfoq7`0Vj}I{coZ6ri6Z?!yOP?dB}sPz4CXVXbjqxTsW&e?J8BGf#uu$!IvM2A&vYe
zyZ$GboQ>+s<O^t#gxGIvEBO(jhPD)^lQle<yuzPXc&^cwou6JvoAZS!+*pD~Lz1ru
z6=i+<J|G`G3FRiu_f!95D50qzfONpUw@c*#Zkp6axM6e^=SRYErGzA@om)!qn9qA2
zYky`H&EBpy#9b!=;z|4KL&#;J{0E^dj_<REjjim)gYhwVCoAjQwcmW_-+M%kLZMNI
zSdBwqlx)MU?R<yO^OGx?aAopjk}lg7c>C|QkVpQ@&=xoBBX`F?yN|)djA_m0bJO(8
z1k!07q|^Dd@L9k4qELw-<CwTDTW}nEp^Evc%UrM8_$6tmE&)ip#g!OPZCvS%wfUOR
zCe_wVNAJyofiuzUCMMTRppCvRp@-TiBglW{tM2!RdV#2TA^DUm=TrKEK!Bz=BbkUZ
zl9x<?W-nFWr(k`*dUJ;Ko3q<_j&wVBkrVOH+x&VvJF$yVP%yvv&M=cjcQ~hN&7Mnc
zr6b6#)&W-AOVty(pF0t4W6F?lb9O%y?nm>M@Ot(U6F$m5b_pM6zvzO5UvxRKi%PJ!
zVtxGO0Y5$wF+}}7+2hIc{CS>dGHuzT>Em1<kEbu_%)h9*I#j)o%jvb`1O8lvb;N1Q
zo=sn}BcYel_qDQ$n)|NyopRalJ{JE>>cEi<h^1o|x}5ckL|-Q4#)f`IHB~qIt5-Si
zm5>YH0f~80emw}f^?sBtsANAHna;1k0#XRQqSUB#*A>Wu(A(7sy)<g$N0^2mjRFE$
zqS!-I&g~ljt5xUCT#?n9@&%QA*A3uQ)VB#Yt|}YgQ|f1P_>#=qFv<noHQx|84I~-l
z`Vpb!?&!Yz0Q3v()29v~pcKt<IgYY>e~gmCFO-ZBR)HRRhHKXgKaaHh^3Wk&1n){=
zFlxhyALK#Od+7)K`XK!bUtFHAyXgZ@v*lS%K#BftB^uYm0xl<DHNNcHsM<s$rK_uB
z>k|oE6pgt3alUg{jeP)7p993UG>9k*PEuI|v+6X_s7N2^Q+)<wY=db#hrT&vFMRAZ
z$v!3>pmBQS0MC;`zj9|>2jsBMy6K`yw(fdW)CZ9vW#_S&CLGTA!cO>~;Og4p49Mox
z&=_qVefkwd1=Z;uzcL`A+90AR(Xub#DWaifN6DU3Ko<QK)x{}zD^9^bBew>R_$*mL
zg?)v!f`p^0I1|JnUG-GQBTmgu%aCwd_B)sGyX-zD+?Ty(3GAm>zhB(zp%l~D3d{Zi
z7^CrXU2+@YzC68}Jmc#0*1DDdcBr{C5Pm%j*7#YH9&IdRReF=LjN5sN3<F`&<;M5<
zE@>k>>}X1qlasTP?7zr0&ZcaEC{OOP1Y;ZrhR((|Rht6iSPI~xZ=o<R%8mikSejlH
zwBsUYY&v`evaU|?%UY%#7x^QAu@Pep=S$Ozi1Uk3S_$e!JJtURP(eFB2-@+0Mrptc
zs2vX&(A9sCQw-R=$U_S?Uw3oQC@u_*8Kbbiz$<*l0Ky9G*nd0i*ndJh4u~OxxXrZ}
zGl=}@&`Dnq;|b~Mq{-XT`^gTm*k5#06WBpH0VR4kiVy6doPf3dw4YwhC&hKu)q!;k
zu5u99n-z^Xc3?Q=zxg(Id-7-o9W+BoPl1ru0)WHxX9*@_3MK;w<83%NzTEADFHe7k
zjbPDC>945G`?;R($A%Kb`gG@IwUS(NrL~IHb-9QarlV&`0ner%8wJ2zcp_KbiPc|m
zG1oCC>pJRl5ZKBfbc{25>k(Y)vjpyUZE(MPh)p8lq4aqsJa2s<;p6mVDj+9YAEljg
z{z<?QrEaY&Cb4S|Q_=QY!u7Ny!Lo81T9SVriWk~cqiIuy>-^h+S#1gIZYe$0&QCdk
zr@LI6^b%_Ik&nB}&lwQg2E@MW)XsO4vpA}=(v@zWR?<A&mOTkY0^`PnzMtN~Vct=F
z$nnL8;I~q@b1Hg_dU}#G`K0xPsd^VaO-MM?dP0JFLJ8{$3GaK`#zi)1*+tdcIE%Mg
z*C?T`>o;G%^Qh}T($M%v>l!olZgMIOjHg=HNLZP|Ofep23Jnqo@2AfAp{|i|Q58o@
z<8h><Q6oWJ%P|~E5s{hi_B)T$Z-9+`Yb5?T#9XC*jbkaE6FdeFC~j==A1X<U7#%9%
zbUfR97yR?Hqg42GSd^^NGYMD@il_POVcMXMz5R?=$4*YK1Xm5;LO@h@Bn%}dr&qv+
z*{Ky-09n0k0WA7~^LzG#QAY76!}N#Gb5UFg>PLL_(*Rf3>S9;`yY_ATDRr>L&g$Sl
zOam+O&_d1E4GLKQfRYCE)<6p&78CfY&j=PkpU__;EAnGpbV+K1T!UY`8s^^VXYT*+
z)ll^Ge|<F+UH@NM4YPjhar%F-8V(AT{+-p3htgOL&(y7k@NKK1C|kc8ikwkjvl@yL
z|K4g?C&2Z8z8ZYpuo|`tjn%CNpAlArPjIWje?rYDaDmk@#x+>1hJ0M0f88JHEk<v6
zi?dp@Ud(dRGvDUxYsFc0wR(PitvIW$*86vOYU%`GoK>#H5#&p6(m-JBlZ-qRlK0S~
zov=GP`8D+@{D&=N`M;>1Jc@n_HRGqM2eETB&YbYQ+<ZQe@cZOp3b%)oPn_ES30?hL
zaqe;)StUvwm!c~jyVrFUb+i-M-A+Hn?%z6skU5%4`aahDc;7tI)%<whJQCErZUxje
zU&6pn5J~7@s_Ove_@k3Ec|3ZijRXlA$pqgO64ccM-xU(n)l^!B{@bCpsXG4{;V&RD
ze=J~KyOeF9qYRsXe<n<U>adzFeB*E<2iz7KU{UMAP-}Y}@$U}5@^&EkT--8(P2<7j
zQTzcn*GChWgWBVIpN4wepsc?c{@Ln3vLm=V`H%lZhyU5G58U^&|00}=D1Hc{_<iy?
zEt;PsM>*AcubZtf)`{)3%L!1ek1I+*O$I{B2{=RY7~=jDYT0;KAv180a+pgoO&bZn
zF4}aOcD^RiKK&SK=CC5zN?EOzwN~BM4SU=x_D5E62DN{XjQ`<PKHTD(h+AC0bb8${
zt7kId%<3xYd#kFS@$0kdzxeg9>J_xBU6EZwyV^C`qxfRmov07=SM=)aYOin)^Gd3I
zurz+jQ~#FiVRT??<+JK>G@~7d<}Klh>=q{6lHKMKZp$8I!h`5HFr+|6=yL9>exM@1
zVW7O9EW$r$)0K7#d|I(#Zp)VY8#PdkVmd?vQ$qu-SbvA(M0cO;YM!6NR{>iB5#*)V
zsEQ!3O7EyM&s`C!lOXr&z&~>ix9#%bQ1{!iCCLTxZu#vnF*r-w^eL~`eSu@!=-bAG
zfAgZe%xuGGfEu<t&1_#JXNTQ$QEHEL=M~60C&e#Yp)OhE4g;qewg>RZ62=c%2y>Z#
z5dedkZLT-7?MyS<I*}nQTW6iJnQfg-qFl69^9_Zwr40j$Vl$gh9Y8=+RLp%!R_R_c
zv-xz0w}3G2qQCFjjd#%;O+F%Y$ZL<sq{nkxb9{=Oz(kz9!&uS=SD4?CNn>g6_8RL{
zDq-=L6HwyNqJ%B}asn3r#je8&n#9T;>MB&jHhZ>930AigiZ<QiHz)x81-Bc0XO$lS
z&>zeO(6cXfV(e0!5#aktxS(S-V2k!@@=GUd$`xC)AN<nfk#D!04^^MLP)LQ7*%IW+
z$!tlMh9^7#+`v@p)_H!h&#km^&(gL}?TE^e@CJk(WuNIFujz*r2`3~MCdJo<$r^2Q
z)+8@RsV^qKNZFBb?EJIPe66Ti6XEm=3B1nj3*sJ>$cN+1y9Wl!bEu8Bz&~4T2ZSB4
z5T&xb=JRDVtkj0O;$U|?R9fIZIgMZUU%u*AKRriadX9ke(?s}6-O8nYD;L#7_)T2s
zHqbilf=ga{H)-zf^d$1tld4O}SC>}r<ky|myZLo@^<@I_b^k@Z9u6EIE|;q_k{hUb
z+(2{16qqa2E4Zwkv7uLZ?(>cSdYxju!oPsM;?4?tZM9xynW>v)4@cB*D^!-&FG(|B
zCh7?^qn=vO(=FUB-a=DM3rsO5k-H=NB;2Y&!rAE467IyF8VL_oA8`qfRG(wQa~Qo!
zu-_7Qzs)0C-2F#j%F|}!pI^dD7e8m%#f+2ErL==C<)#&yQQW}P(7-q-KMTN-r)KB!
zylras7K{Yq?#t8jjk}-E!%1Ej2*bZLRHregl_!(a=9s!MXFjHF{+Wpr@Ri#0jxf5}
zxk2;|>V|DF<Y%}<2;NN2{6Qe5U7D)bJyTW3v|1buX%N00I8kXQ3m^sFr53}Z_;PEM
z0&FEn0hEa9_r`Sf-UXO{H-Ta>9*V)yb>g5BM&2xO(A+(rU&$#By7z6G&mBKL?bIcF
zxl@<$O#xK%4QZQ`);4tQy2F<6X;L6$`y-Z+AESf3-!;>j_XoJi`=!#hL8S$fcvlDZ
z<~E$2UGI4Rj*i&`-d|1t??0$0VZ6Vb0A|0fD^U%a-hM76F#E%cM(UWo&1}B&EuPHf
zBtHVMj=(i7GI*Hp@O77MH}L&QvYcaBP9qPrvh;SxYHsJDTfso0CVz;9{=;Iog6gfP
z{&bym=mg2mAd8)M2Z`)XNU)m6{SO!a{}?3r79``<RG~?znf#n+Jmaz*;i<h3hVUr2
z0*@wWW*;>3F~2_M=E<%&=MRTUv%sO2C->Nv!7!8mCFIJHt6z041WvyV0OW<Zj%tSb
zO8#0X)u;lEJ#}%V=F``M_J^fdeA@lTyc*Ww*1+lkhX9i}V)Ch!2XbfLG87~7M~`KC
zwKmJ8u3c>8OK$X&ivxPPkHN?{6~55VIT8L`@+Q;YOkSnm>Z|mK1;tjE(xG>0my5dK
z>!L2#<IAR~^l#L-b07ONvHNFh9J1g!UY=^r{>H}lvBt4iW#jvx@s(YWw~~#!Yv!);
zsM&ph;eE7UdfXbt%s-c)ehccK-37U4v%Uq?h+&J`IE&t!XIXV@E1x3?OaKYIN~Vtl
zjTswHfMp3wyPVbqB~C-jO7LL4e3M6IKM+s9?Lj9$h3hLN7&S=#oBt`4Ih`x#vE(WK
zJcZtY$mei39uZKmTf8~FhwBB^l03iJH#;Ev88ZirYFKs>yl!#v0n~Dno4_uPu@~RQ
z*u!_WZ0Qk>vHvMd`tD8Da{^<(CwnG~z6En$l-&*H+k3LVWZryR<m^s{&e|o0UgYlv
zbnV9bF+k@%bXJ&vf1cr%$vfUr$A39M)uXx?I)0BncJL+RZJ$1ND25L*@;)0Ed4RL#
z>uzjoEzQ$_Xq<ML`zHE=@z!TJ%|3iPYgNdO5doL6bzOTAOQ%pfICR6K(rg+C@09cg
zDjIJv7LGeesV|9p#nV9ID!Gr9)Ybe-)ZWKfyT`9UnTx7&N+bQ`3qyAkKsLXi#PD1-
z|9!}#HgIx!2DOeesCA%7TKk(Lqk&`#I7M`&zvVsNLITxYQe5s+vdVf;3gGd!-nZa~
zg)ER|UPtVk2Vw_j@_Eu@)0!t>2Ij$_COAM8rw7ha?z0w%T6E|B$(LSde`OWjZ-<N8
z6u6e%;JDKb$$d<?j~fr14bgxgg)uZys^6OJa6K8&^;RDYNcHzY{b$LCo@IT{Yw|pJ
z=WPH)?lcnr{MV5nFHqZ84ycBv>XIj&T2xBUnkqeQgKI0F@Z{Uv;1}{P0Ctyl%wYS^
z-9Ubx;FxbBj`?1939lzOVV#JeG;2(RvW2*bZh*I&@*+b^)WtaPzHx_v4i8fo;EO*`
z)=-ObJDI}+FuLZxEzt7)WBlmzr$cTZ414DpUV^<B(xpCR`L{TygluS7yt>B^7e&e_
zpXzor9j*{J6QG2-?(=Iz)7(`aU%%k&{sOV4AaowId&f{V9!cI}`di5p6irW5-=t`I
zvkFTPuAF4Q;kbU2eVu438i&7IYj%t`a2A)E;TYJ8fCp$C7q+Ueb4T(z8{fwoZ?(of
zxoCcfh@#=WFa@~C2HW8yY^5EoyjVrri`C0{sp)dG0}hCpxrR`-`xe}9)R5TcIk@q1
z)?v6(CJ4buA4y)u-4`UioPA`h6u<wpq<^Bth`W~ILLie#*-2bE6G8cE4vx%^BmlxQ
zlR8-R83BYACZh#ah41ns^!l2deUKc38$%Zy2Ajqcl%2?VqWW$XIqz0Ka0wsq#>?dF
zOpF<EOb#<tP6jG91l0Hlw}mXn#49|ZZ3*Sq1ajc*|5KA+(DH^8Qv7(7-SZnyF_OUF
z25Z;~Vi?)A^Ig_A94WI({z@p{P51m@kh_D5-%;sFWS%F%o<<Cl<E8m+q5t7c)xkk%
z{t|xa(YFVsD6QSlF6p5a7#J_A`rS~GKfGG|E{%^DgU^50m<Ae&``ZN=+hw?6RBcSg
zG4REPQP*FE0`%bkA&g|;ZndU{Lo0dhyR?$^YSQfod}CYGt5<XQqBQNbew2$AYrduR
z4O=+y4Ncd1VEYW5{s4IBBR-)&MohWmzhNH>NW&pW?O(3NNT62o9m9n5#Oi%H{Tp`^
ze@j2&#uq~Cyz6a#5lO~O;pGJMc9?5Gvc@D;9Z_uTi304&XE{OT$-xP#zsGG=Ya6-F
z9WUF)ebzu<u-*7iC)Mt8xwgv!=#K@^Nl>WZ6Dp!GY}IOxxAruW1M>1p!1`F=VeBlB
zfV-g)W%WvM+Qh6N2%^l*z;8AiixR3Fd_kfT--LSf&9Nw^5?&vR``!}lVoP1BU@y4h
zfLY$yL568JH8Uhoec+1CeM(koluaRP96-$xlTye;e&#!0<5%sb80Dt-k}uthJ+VfM
zwYZv=sMQFEW(l8Emw-`aOS+sw76&<SN|&3NaC4VCEP;*2tqMWP3m7Wp569q#f5GkJ
z7uG9S@=@s>@wOp9>RJ!uI$#Xz2+$#*q?_m;8><}oqhU0gpyUFGu5mE;LvI<E{Uv#s
zKX0X<fV)^M6@&GTP-m13`J*6{ra&eg$KuB&cVtSvBfA@y7>WJ)uKZ>m`ys)wUlf4S
z4{MIWo>#B)gTT7Z*54LL`z;R)Z9C~Q9eHo<KAot(JLGm25&5c>zFk}}Yr_Sz50Y%z
zS+^Yti2x%XT}h8=wuEDvSJO9Zb@M~rEa9PUFLgu0OWjTxpakNhZ0#$5317uOQP)>f
zTwk56M%Ndh>(vB;YXU&vRHQY#BYmaGvR-Mr%I+^`S9K*|EH1!W0odCv;qB%Rnq7SX
z%R&!zdx2`#3*BDtVYOcG@nsJy^kt7Xds*6>y_VSFbhf1T-+Noy-+Q0k*UFvUcS%1>
zThi~rewOxNzvKE_+Hw8A?C;v^PlTXTAw&Z<9OJ5a#?NY1KloK<goq<R&PS{!0YM-)
zla89tXhzx@7#kCtALxdk2fASjq<uWp?a$qi{pW5!?}hZA_c{R~GP4tUy~(d7y)WsF
zpG){NHM_C*(}@3=o!$3-hW&c5-{<`Kyx)@k$Xn8Xb$@()3Ak-NcyI+?{7(exT=1T`
z0JR06F3<6^Jim}P<)PhNm;?3}gM9*EKeIQ!&g^|7af|F5dq2d4hk8He5+3XQ1e|EI
zCjgC=SknKq{zwo&UO|Y#So_}*a5qv-x-q$l3fxUbO;D3Q;63_DaErc#I@~4MQG^%i
zN9AYgZaToW1X0u^P?YG1H9<$H@=&+ex}kyBy1mV>x4S(+3PSb+Js#_UgvWZk+S3wV
z?fFhmB)rp8BSHzGxIJ4<(hwg8itBi(4Jyws^b4{b3;`zP=TrVZkBg&NY_FwH(0X%i
z*Y_3K^4#XryD|6g-9PWn-;;aZ&=c8L_IiPY@KLYjoca&@UfGX{{oe0~GLE6F9fjbn
zo%(-2VaxCHOc2~KeVGBUUj7<ruB8d>+UAcCy)OGGf(@Tv1KRrl4JTU;9RJ%1x(KYf
z1n1o3UpasOl`rMR{iO|0H9@(5s_FD*<+`p<?{-snB;VA1DI-E<OM9G*pgDqspEvZp
z5+QYftmVD=xxDv>eewBWU!f^`zu!gu@p*awtNWvatNY)IFM*Zc9A=1(pWSp>6RLNH
zxO$nNNbRZy8=DwB2^S$x>v9#t5S&}PtcIV<YQKk+C6l_Q>0`&|KJ0p_F*CGVd&G6v
z9TLH~iUIQErM`#Fpk;10Oxf58zeLgVxBUG)nJjT$4_p3&09vD&rLJJWu5sD2{Jh)}
z&dXQkAh(tI%Xy8R(qfgp+3;b5Wq;UkYOP5Btnpus(O1)Pj1F=f0!|e0=JyAr)gZc-
zH(hT?3lbuK^I|`kb!&>Jwap;h)BAQhct!SMc50U*?Uekoy!cw)cx_|&@&irtpI_u#
z+YlJua1^u{;P*E)&F!82s@p1vFeI3=(-g|?tG$2rPV*<t!3yBo%=?8>J*o?!clX!;
z;$(vfI5|9=al%$)6WSV&sDLZ$<E7?zn?n|wNGl0=KJ@(6VVI2C_)gP@h<uTq+I(tr
z*0ue8@W$plnEtmOZ}-T$?)$!5t!aKv=sm*#vOzYUPn*wl1Hov~1v*NiqVN`i7d6V@
z=Zx;RGXV4J-H+*kpBH*9g=}Djwbq(ywWeCFsa9*M)e6R9UvpIejkcBzp!+Sm9Jqe9
z`3o|GFPeW25Sg%~`z0V?{`FY*zq`L4?DaWBFVe!yfh%$t_&0wlG>qGk?XZD3l?s=e
zz)72*Bch(|_Ay!U$K956Hw0eY{UL^&y|~vSz3}r$ucvz%9<76X^MHQ1;Afj3VR(G9
z=PNh`q*=ochME+VwLVu87%V{p5-Ghdv6LBE)6P9PJw=KvhS8_9uJ{^R1scWsQ&(iY
zXTV?pJsPy14|mOF6$=8gMbq5MA(ai9Uh0jF-xgcDuNUz}DEhn7TQyaO`%P>q-GCy*
zxi6blfPZ$|Z7XzZz$5#l(D5HIVPrn1<kvOWUl-Pna}4RO=8I9As?1s|LPoO|epm%R
zEbk4c1S0MQWT(PYtS~~pv9KXY5SI#1w89guFwUu1nAT7KU(~kl^x#fAtg?h=AFG3d
zA=WYDY+VPB!dICFS`^nG1Ydu!ima-kn~uO_M}f(Xnw~9t6Ue$LTTNTYYTmC2OgVof
zl%*N>%f_PsnHnnZnyl^oA7Ki}uakAr-X+`)O~!WU$u7pspX~Aq6VA%72Q$xZYgpZY
zpVbX-VWz;9vzNNQ(-jHtbUhx@f(gerU(}3*i@-(<t{k03sG5aIdR%jbU1D9%6w8^?
zIcK8fOjJ&(mQar%s8+xt;N_Koh7R!hlk+=rH*=*N2x8_?sMdbyYOGUdlnv=%$Ej8u
z99D$BO*Bhbej$NEn0dKR$toLlS@zOxN3O^=+Qf|CmHffWt$J1&4$yAQ-w2?^Ir~@+
zhLhBKxEki_iiEA)1`Y{0bA`v=Zcdu^MhpoUN4x^1L!Ht$0F1x8EV~=PaWrW@Fo?$y
zk*y{BYx6&vqi>BoDmxrH_+P1QDb{AG6&a>j-5aLr`xy>JcK8VJNHs7C>e@fRP}PGt
z(~tmBR~e+b_AX9svfjN*Cpx`1DDu!k&DVuMAfv0~V?$#&s=<kl7+}q(2K$pw&?Toz
zksqS~)|L*}S}$&`)d9hdCG_SClHQvx@&6^T==bj%eGmFpQt97^GJNv|m4Bz;24lB$
za{k{bP2vB4P~K2f=oe$bDcJ;gqmUQpV7twnHV)YRm#-h>WaGa%?#BNA=D7QBP+fra
zvjIbs{k8e^W_OoA>T*{As~j_=lycfE2lwa+s#LvvZ~&GHVAjMliat1VM=$-h!r%8d
zuYuZtbyELd{&*1GuXJgu-uj_;X}LIGlgHnGXt<~`{=Tm9o~HQwjiwj6#^1kcz8q_;
zXz!2Bm-UFhFYfv0p7Hl{J>QMLO(bE2`PV4?+d^S8g<mKCj#)UfrPstO;2lsu&b-12
zIEJIqfB9iSSMSc?9(Us$g1>L&U*#^y2g=2zfW*72FEISsTlr_X1W@fYr^ocND&bpN
zPg0xax`jO#xAC#Up1<1Q=xaj6!BWYWobA~s?p?Lv-qn5F`QMlSkvnOa^ZuCsvniPL
zeXY*FQ9C#(YsE>~DoXEF=`lR1Ii`9k&uuQPKESUBs()bEy+7t}=lFU%UqS)Dq~Ta@
z`;KjRneo_Ou6<lX-p92Ixe2_m>Cz^AUE1_GzaDRTnqN;h0kG)2$D!GS76J4cy_Q}}
z9#G6NyFLq>;%nKPJd=78J0cMLAM+;>i!6Jx;TeVkMD{ZTWC{TJdkwY!Uc0mrUvD(N
z!WevSG<|>{-_u%tqt4;XJ^>f$KBiyv$LI#F!(j5q`~!%o?1TJRc87#x8}8yR>aN<$
zHA{H8wzLrmOB>&yXE#c`(YUG!39EnvOL)BLB__NCJSbr;a1==qL^y(;gxgxHXwiio
zV^w+;d<e3u3^pVPwn>0Zs6fIq4QJO-;%tKr2`|^aV!~IL9cx1qG)WU=37Vrxnj<B^
zyjsA*zw+k;-Q6u~#1nYVfb8Qm-f;hM_F(!~eg2h^3Vxiu-{lM$2ac)TP-CeF8jmHj
z>C~)svX;hAP-`c!@o{Jzkp<AopV|004E-M7r@SY72d7|nPYs=&k*~;=P~WT9S@Z4A
z^NZ&|%*361lV&2$JU^s~{5M^G#}ho`Y30F3Uk)w#*mHbKp9r+ed9iRDE*9R-w!X?P
z?m~cX>GHaMU+;1v*g$q73<6AkKmR8`|CyiAfWjv<oYr7|E2lNw+ra#L5z!7A4>qiE
z8GmVbslkFfywva-qkX*AfDo99_OQHm2{qkIYER<Hob1Wk>5XVX0Ou!$(ega+GzNl#
zE*!19e03NFqHs)wtNu9%F_=A+U)q45HyYl?eTFYrWWTPRTayWWW$i}3%OlAUH3RA>
z(6Kz@2$sX?AAMetJwZF)SBN&r)HMw!@)d#;Yp3!G#Bzf*Ti$pc-RsY5ycz*11vz$Q
z>z?cJO9S_J2ebO!)n}@HaK)75V?xoX(7UHDt}c5CvG;l8JQ+vMCxJ%Z+$TFJdzHI|
zSF_V`K8pOa^QS;7Z+d=It>pg<xcDx_#ZEi3$DLd7=M&XWqi*x(Lb=_+XeRy?|NIY*
zWd#@yIwyvFTxWa!FJ4BTi1?P#w}U?_t%J^y>EcRuV#5^;{-85zty&v`Xz*x;f3QAj
zG4797;zsh4Czib0n3P?C;<lh&hurbb3=ra=bF2<J7vrFF2oE~@HZ88`#;5cD3}4Rw
zGkg<*nr|swbNfYT+O$mT8-7DR1Bxbq$1dI{^v8%XjPQ+v&VaN^mSjnOUT9N?o!P7T
zd;VOIgUVNhd|IqOX!w`yhOc3`PV7!DTw#<H{6NbIDDikv!u&wX38<drYtHxd$d%d9
ztOd&%Nb;VpI-f2;R-?;GYA3r4*n=t2SG!NUBt+2pU%vDj`y;FD1WMoO61s3-QoY(8
z*ImtbSqjlrD&3mxbQ#6;WmX!8H7f0Cx~^?pO1qH$*cV!9h)k6ZuasGM@%66t(8ylf
zW7nodm1VH5?fbpW;qy(`<>>pu^v=@vow!xs9P&vq58({jrA+$X=19Se7$Wncr(MAl
zj!W?R%lFyEO1@)rVfr?H3>5vF4+(&M2fXP!+kj&%c!wS>zf9qnKNXJo7eh8!**!v8
zhEv-6AeRn=Ob$7WgF5Xe$o>f;i%uq?+~@K(YpU)a+>+vSqo+_zc8%JDZu$l`RlA2;
zT$#Dg$w0<%SsSQntUc<=<7O;7^`Gmf-_x3QL(VG~czXL5Du3%E3aXEiH{7Z28|i5j
zGpE5L0xK*WYKJ;HvsGSvW?Qtm8wS4{4i{lAN>{T@P{V4t$~na`|3zr&JHXJ(^5=~t
zWB&7yzr-%{ElKX?k=fnJ12m*OfLjX^7`(TjJydPBtI?-g+g|HGB#?1}AB1n{yWz|g
zSp1*R6*T3nZ94v$J_lo$XRwZ5eF^FF)!Jz*4Rf(uR6g)5k4`PJBhkQ-MYL)7DciYh
zR8A=T+zvtAqyU<tooS?>BY?ppicrmHhi7HAt6gtDaVs~!H+0YQ?;rdSbB`gnxYTw0
zIdn*HI0@f|6Awl{aCvDoOKD_Ynx5u}<1|LJaC^a`q{j0+i^L>R<jWWM6gthFVl9Cr
z)RI53&L0iE(lfZr2ymVbT(&TFlRq1Bscamb91B9wAYFPfNT1*b>A#CX=GCBVGM4x@
zdjqYw!sAmF2B=!w%@qn!f%XiwNZDO!2KE2tb5Har`wy(A|3HYHDcNnf38>|RAhBzZ
zpu$nfzSy<&T~kj2MN6ZBhS9fhW!_>f0cC1QE}~#)Y7m~S#KTGlfQvj8eH;CU{OU5h
z+-J~?JI=!`!o~eIhI+okP4yiNpXuN(N@}X*;1o}Fk-snC-uGrs_0852;8sgvs%yvl
zUNzOzFx5vVaMf^g-7jSK!d$ORE^>2yv;%g1AKNt~xVaABuxOjz4Ur*3W1Q>3Q*5q%
zs+;STu27ik%R;Squ4UlxbN;{o=69ds$9O(B(&xkP818q6;vJqB9d=(#@2?`~{_2&`
z8If~kmuKm)|7@3Q5Um^E*Z7d+pEm3JQ=EAkJ)Pd|w|Hp_MSk0D4fWSG-F^eVBz*s-
z=fgao#y<Vwo=;iQQ$3%dx7IT~&+4TjXZ1Rlm*davb+3Kj+w1qetjh0uy=qCX_IiUw
z-strrUi!L#j$;4c|BLW|jb<x0n%9uVt}!e?r+D%IA?-WBtSXYW@4csQ&zU^rj0hMA
zMhsv?RCGUe1!kB99D=K>tGg<KISfM-L2?jL31UDLK}C`Xs3@|yfT##YKvY~5F(4?S
z|NB;lbM7$izu$hBhdCXptEzK%b#*nLg)G5^VwgdPi8_=5xIy@w^e!qy>@t}~05gq%
zm-5$9&0}5uAf9#&Dp*ip;1}S?2?5^}>@UC$dw;<&tNSsma5yaYs^LYGSTevfsb~QM
z7MP+!0E-F%Qcxu*sPF0fzGyg$1<}K+O`)=dlpFX*xxr^k4biKsy~TjHP<RIZQxu!&
zH2;g{VhT7`SeTJJV@4Kbb=zdnjXp^|PQA*<O(`K@PI^BTF>KR7fRs`(N@+FKMpm<w
zid`uodO^WJzJxfiP>Kfu!wSc;UyL=ygMdjzD;coT6b}N{7JbTqPfdX!V0g91t0Ca=
zYO|SR1k7fc!2F(RNeGZKDRyOo04WnUT<UFOUDv>ahY;>$PoNxUe*P<RmSf_oY;k(r
z7?<+T=<;|?ZUVPXvQWWDF$)_wRK=Fy2~nMRB6ltyM3|fVY%W^!tGUmL=D@RgpR!$j
zn)j`&Kz}T(C?blAq9I%W3@IAV+8<vux*ErnLx1{8&%A8C(@jv!e_O`ddNTDkuQL7^
zj>*PnPxb>j_$<u%n4eh%bMb<eT2b(>dC1CT60db7xMan)Y2iedw`^>*?igfNJ`++?
z?X8okxN3-eOvBYo*#baZu?<7Y?A!4`<XH2B*9d6b%9i?B+=3U!`|1<3bwp0|AICWg
zRCxFy+>f38p*cJxM4#oeEVA5jNsUoKH@i)ZOFj(_R^1LWa`OTgI4_uo@eG0U(i_vD
zvoXCd?c(;OSL8_ChdJ+I1Ow3a{Lk`*(-8$z@dzhE9xIq*Hez!MR+*4B1#cHP3~v{F
zW&%HhLW~PMP_V6#X)Wuz*CdzG!&tXxTtXd#Zdc+jH%gz`MpQt*`{^M*lNSZ!UgbEw
zjK#eS@3M*iOLZSB+`%XGqrNl?09Q~W7`OO#^=a<cY;0qx)RiH^kD5&rnCZVAS3mH;
zW*0oLDGxf_E)7H?*hJ{Cgj_>G^<CpRl#}GEur%m~DRv#@ci)C1*lKoVPt3vR*_<u>
zOe>gOfX~u`4OAWChCZbq@jVE)Mz8YXgAed(NX&1E$DpHIqaWmcm+Qm_F>FED3Km6y
zh7P7T;)4jn-y8iP_p@B|h0pkOiW?K;Kx)3{4fjSdhvgMy;i72R3W9_G<;78l$zB{?
zXA#?rquwj5V)5hx+|5zvhp@mGQ36JBe9MtzDN{B2FkdZ)$prgj{y<b9CgUa2eldSy
zA6Dyr1MQ^*nE~LTTLb|q0ZtJ!16ZQE{&?4}FU5fQc<w6y_KXQPe+in<XL;BHbix9d
zvgoCD1^apZVqw;+6u=D+zoSg={_H2S@fndbH3y$LIji_NkTWP3pFz39sOd8-cLsb$
zFju8cn^26nds0NWPx5AaC%looTx533VTeO^ZEJ8R0?l%p8p<bHhNefP;d>vCl>qqZ
za54pq>Y1D+a(c8RXE`2LfspXioSkga(=nJc{@L7@a^ZamMZh6YvMhh32y}(dJX(Ny
zGJq|*POwGy240$e<93{`&&LW2j(5W^jN^^$&3MrTAxm;r=E%kZ$SBLY!Vk)INw#Ur
z^eqXBDq0?wzU4ML_N4c^VIi9CeLd(?JR@zGzRgp(CxQ|CsU$itG|__Hyl8Q|T8>9^
z#4$Gf85|*GdiJy62#)bNk6_4z<GGwSjbm``2+6b>kvp4(A^FyCdrCBlH7R=<gq|km
zh6#orl{gw}^09c##%@Pt-XRR*Ezf$Ohn99Tn|ywU;T@lf^nJYhIZrR;dCgM2oC;*i
z^$Pk%WR0facy!hnp5E-^`#C+;ui+qyUI&pGv$hvPAf;dRWLQJ<Y2^T?TB(1U8SU%z
zLEbaDUA=*WCvm(GF5_$^;!dMLgh>-6?%0kpIZ+zl#N<piz9D!;lLfypc-c&m<I@jt
zQhFdg%@BB5zbP{FH}zYP`k|pclr>X?$@gYIC@t~9>?b&~J|S-ap`~F0In#DkBPL`4
z>L#NMBleBDhtbex+|8JH)Nxq19``UsDzS}IC76yF89QRPSgJPQ+FUSh?A^FHC;Krh
zqh3rw2c{J78wir<zCc8s<^((T#$v2DS(tsdEg$`7&mXUMsz!il^a0EIZW*Uz@mP5F
zgc(biV_=PiBkVTDieQ<cc^(&R?a#j(I(*oS_ePp~jZ7_EZUL}b0R8Y)>pd|i_|%KA
z;^9#J5Xl{zg~tu`7~)Q!XytS|={Hnua)Q1UEVo2rI-b*Al#KZ$G!C0;Yhdt2T<EZf
zu?7UhL9y^7Hn-z-peoTu&#2ZI6)e%#Z3qRPDcUN2jQYq{)Dw@vlR~^>U=-_gU7w~Q
zs$nc_{9qbn^NGiV{qd&WT{MhH0PizY5BC_jAiD>T1jv{bI?UM-JZ2Ujn!)*9zN9mX
z^AlLMIHWjZuq;l(*y40CUQFNuP-vJx2<fsNi_tSCHezuy+PeMCN6(h@+n^0vmSE{^
zl$K&xP+gx;YG4HvV|>acDAqT5Ro)hBEJg~ZoW)82?=!_Z#bcm8@2eErh>XdlH^s`-
z=ro}ZbvY0u22*<{oJpLFLGk3j<4=EUs2^9@O4W<WH*gn&u(3%)nn0AY5k`wfCnGB-
zx5JpwPOb^v2yg$vyh|}Si4Se?j7`dGVq^KhpkGZztQda!+)Lyr@dT`;VU$ijN-iFS
zSP8zRN$AX$;!zP1)neWCy1Uu+3Z=lW1e+<Q*es75tL?!z^nDWywzj+kZ{{Bzk;7fY
z5(wQvj;|qt9AAWjCNgdX8*<n|zn=P(l7UZCAcviGuql9V6UpHP2%b-rs2@nq)UzWM
zBXT*)=W<LS*tN#Q&A^5|X|O&(?0Tl>QA9Y-mP9otL-GNfN#g*JA(h)j^E_XC9dm;E
ze$o7WYBVkvdcWmNN6@lpKA#4+zNgh+YicEm@0dCVy3fFZFH@T(a}+O2=8nk5_o)hI
zqaqmXWaxnA`s5|g8J5g9aLG(lE9Y><Tqka7rB0o^{t0V%g$E~f4v)nGSLhHO&L*D<
zKel-7irIU~C<@8>-GbTqv0#ph1EyB?S~Nzrj#<Pgmp8&S#)4D_S_WU9<aZ%nF~HXV
zWk8`bPR0A-_$;IaUM_3G4qo0VNxUCBTP~jKTN)?j1g%|tWrWL1;XG;94pb#D<*Y2n
zl!NQmoVPYw97pB^Z9R^7xP5ILI2>q%<4C*U(FtEe=b_)6*Bi6HKTz>e)zQYQGs-Uv
zV(E@R%^z_dAS5wneN;eGo3y5D#y-F_WANlc6mB6w=Bt95uxIk0{B+*|u7d1nF&hh!
zowuvme3gYJ?}zYg`*t-%&$n7Z^Ysp_UlFt;>v1ZqU=Vpc+|5(?-O!Ygn8&kU&4&Ng
z><1yu1muHI%7TA(-Z%&X;2)R2*h)7S=TE|J9zl}|mr;lZWXlRy7Xo;7;rkNfa}i_J
zjx>)`UFmVd7{-?Q`hCc|JbYzGEIrmRoz>9fY|7)Y)S8WV*buNgDfvOb<KYmBb%ta=
zP6ZqWWG`jFQe?;kNRB!qN5VBAglh=lz_maKb$x7wD_zPfcT&qsMxM&N#r^s@UnQ@k
zxSo9_^&uC`AEsVO1Ig|*v^F3-&DtQ^FdM=h)K%IM?vNGij_fUzgKf$ET((Z1=R!1C
z2GQV0a<S;6{JrGk=YpXk4;xx|Zy^xhTQ~)`2;wXxbk{+Sae1icFszC%DgkWCwZXVO
zx2tPmO{JTfi-oqiNQ%U|z0WK6o%{4?Sz3RUzmKG&J;xa_FxdCe;{|Me&WExG+>?L6
zfOE*>5Sh@ueS*XM)ezO~+Q@zF4G`|&Ez((8QP|^n>(l!(v-X_F$IZdOKqkK3!4BSB
z-Jo|+H|z84)qEm#A(dz&t8v23E52ZAna4(J!3NBp+vP^hF6<9Y;NJ946z~6(UZH*L
z=g{AC9vS_Sw}YOSg*fH>4azQAqqD^^9=hOkBuqVIK%#gFhYz8!=Bf$?SNI51Y+%gl
zs1iji{spF|fie2tlFNuMp2}3i0S_!K5go*(Bw1!paARyOGfMb`65V^r0N?Pkzm(oI
z(6uSHy27p~;fM8XYA?;!uTXQ_{B$c{#MDOG5$@z?XSf$iat@aR{hLS086$ZZP(G#K
zXB7^ICKQ4uWX+&%-3t&gpgxx59E94OSzJb0ydDMlM%IrIlN=gTY+{NJjp=D(dP+=2
z!Ag-`kD?N!_TI=%o>QKHZRZQHro44L28$rZurr49Y>L{IwCH`f+e(EWTS)(Anh#*l
zW1(voq7n_U*0}>pz(?RLkvnW%cc`ltn$3GG*nsW-p)ph>K@4(}3{SOZa}eGBAUg9`
z+Zw}lN={gh+5yZNLW=xm+2#FeT*Vz|Ae2=u_k$i(op!zFRGl_MMiTQ&y~kjwrnEWy
z2^xuqU=hpROfIt~5}E~9L?>>!dvo{|RXx7~cr<#;qHBZa>wj;#+oiSp>6G5>kyWzX
z?INJkgl9KVgf76^LULZLxqR6eji$68L5v{%`S4{?u#*}zrHDHIlZSd3cBOWDZR<5^
z1+=Xr|KzL{&@7AmKV&U{wsquxIcGzD+`l#d`?z1K2jm8Mas||GUX!&mi{E{@qw-=}
z&M_$T)HOyZxG(n}YK)`(-#*N=OQ+@R{5ZOiHf^f3(oB^xNnIDsQ7|##rZlUo?FRA$
z+75KJQ$q|j@g~E5){8=&X@)R8_HNft<h8raadnwp<t`2qMU}&qGy`<L55Jf*`QGH?
zoY5Wo@%YvlFIr!e?5-}l7|IJ+nG%-Wtr8k^QHimG$5>C`EE1TNd^_m~=vW+5F$x_!
z#G{TjBRB+j#dWld@F0ZR0N%9314us4f#E9P*l&Ki?-1iqiK8&K9(5JQ*{dcPEr_Z>
zO4LzUV&d9ZQh=h>ZyZl&byRoES=|LB5_-i!U?gKK<yK=29@-L1Vt2I4bJKz)(c%<y
z;uB7>;jMFm)f?@w0`{VCGunDEKglo;Ix*N}MJ1l#a`=hlH{48rgXfJ=pjfQFi)Ymk
zuob&#2{6#{ba>Gi28w7(yc?c!6EKr?(_#|(8&84)o*J+UraItJMpfDq-kvB`i<2My
zZYD6Fek`k?aG)YNl2hPF$Oug1bLfZq6oc6`AVnC#T6mf}F?g3dZL1HWhO^Emp`NS4
z?X=;yu+fGtA`4TGvNMYdv#M!))f<o>S`;;OUQ&e#N$ta8S<;=JGTBp!KcIa7Fq8I^
zP_8r8^VD>EUM)5Oz6@ds%22Rnk^qZ;NdP0aCV_8UCS5F1Ukvko@hbbc+2zm$hvc&}
z4AIV{WWL<s=qxzs_cZB<p%A$%Z0YufE!{P&c4+9Y0S*KR7hN0|-h@jPTy#@?fdVTa
zg92){f}+%*=;lyVe#SN`uD+<6zBqKjdxS~h0w$XTMX^EA-J$R=*k<Gh9mbb@Gc=rL
zQ`stZ!N@W^!}v5o8J<phmcD0Gvi@7hXXrX%H?o~^+xZM#C!7}C>&1b+o;DP)B}Yt%
zllM%D3BAjclwCzV^x{vG5JKaCIysP7H>W-)*3VPl@&?JbsbNIUiCe$xlQzx?F8m=7
z)Oa{Mbq~Zc-p{FXv1J3|fC>l45&kiYAz|(s#sXx-jQOz;l&wcXzu>8!6~8p}8g^uH
z|LEWeaN#c<@n%qG%LR-Ip(RNc9`NN;9G^o+!OU>X@5@Ygnq%B5(Gp#uB?chMtmjxg
zvpF>Nbw~+EX>hws<&~fmOC$xl$Q;U5dcx4m3ZsXnRwP$5V6`*QLUJ-}=m$LMny8Kj
z=K<>S>){$m>7G5^F_3q9Na`8XZUjyn{Tc0gz(fv|e6dJobJSpkpG&wD&!OQLCme}K
zm6)hXJ=m9ub?6PZnE_5EZUMGiFzVsB%RG0tBneG6NIZkNR`GdmFqK<^sgM)^cE0|Q
zz7J_pp)2lByv+^5+u?hZV7wO&=FOYI*|`7QRo#<4+aI4*X5dghZbE_IWM`%Y9P}3?
zXY(X&w&4R6Abjw?z%#u3^bGmv2|jkyx0`&xydC){F?>K#j(n6DKKz;5?{E?ij+M?u
z7~n1%Nb%@E!v|y)b17)Wqon3}1qA#Qyh=l@ucpO@3IYaclo%{>!#D%dKcQz*4}NCW
zE_*?07k5j=>c_0<X1T1UhjXAJujYhr+km%mVF&@+P@bq~U>ux1j+@bO*%NHQgzQ-i
zn1wPHh&cbQaL3*5Dw+B^MJw3@zDh2j^4J0l^r#}5I)(2i^&n*<FQ&&+HnK5m6Zd|b
zvbJ+Js{GRfJXTD~y<n#NQ?XizD?sp#OwXlBmVc(vI(n&jS<jh!E1%%5j2vk1$ohdB
zMKeA`sCCjK-C%a|zocLkkX!m~>N^E)zEjJI_^tGAAVTo&tnbL=cUh0{VEz%D&&zhd
zGU6DCWp}vJfELZn={PHdY2X30L;E3(gy1qMbm~n2?+zK)(qMUjsO7<LHsBr{(wiuG
zX0j`unS9;`yoeVjP1LJuHA{E3`oaWwF7$gopQ2&42+IdbU%rFAE-ohy1S5<N68Ci3
z9u{``=D4M%+LrzWS3bSp;*LREJADwPZ%ZG5fnT$?i(#WEometN=~29h($8b_OYf%A
z>282Vf<Z18>v+x%5vA9P3CmTjTA8BsT8G7A!FcEp9fna3qV!WNUMouXUMos>ekV$I
zer)Ta;^2c!7L9D_%#bXlq_6RO*GBa$&05ZL_~luz@wUjnvUbzAJ8Lg|T!S@p>wKPd
zV?S6a01(9ygt@Jf8Nd^FV;3Y=?MHGaC)JLxR6D*>?fCA6Z5QtFT*_EFDhDuGaLb;A
zq!R}d(!sL4_%74FYneTw_hSm;N&JPDS#uJPfGZ;IfAC_agx)hi$_gg{lsV_&-3L{R
zHs0&iH#3e|I$%Qj!2@#W532#NS}nM0(QcKUnhYw=UiUey4FJ+$G8bNxlh4@6_!*vk
z(n|ifHsISN^aJt!tV@rt9^z5d0g5`~nPPlwK8JblVwm@~uX?Mmlk16s=N9G{L(qzS
zt<}|-Fy`<Wny*8Hfu3OCYtFYUN4?#XYn<wT0?c&IP2yWQ?l_E>W0Eg(DItrLV@DZc
zD$#_gZXPFzDn+$HqMIM9y!_DZ{hVAK8LWN^vU5s1DNEI^KRo?!F`iqX3L2Nw>)t-0
zTRE!wEzw?DmV!{}pX>_47DMc#i*9v8;$fh8*zq88{8@&`Sy*`#!<u;XdO9ZMVob`B
zqCQrhm<5wCIM@{i2S?j2-DuwaiL)0Y2xpAuk(is0JRZ$PXkvmt%RT}oG~u5nIs&j+
zCNvSS)Lau?k3}!IM1W8)anunY)Z<&eh`K(_=axd#nlPZM8Xb-jI=nSpt$BC<raR!e
z1GkXM@J<WXBAu`~_y>JExN$Yo1R~UDc~o3)_q_#wSSw}fUfebC<*lFbV5F$)0iYhu
zKwydgosBa3&*1^<g@_mpDO9#b@n-xU(QwNQ5FWPP;wq17l(|i%-lFW1%_bg%dhJCN
z8F%er>bD2>yQSFgT8V?2z>RFY;Pn6a#E>YdyraPUHGP@eA<XEI<Z#q`200Ks!KdNX
zlUf&|PyL}7t}CuHZ#7+aBUEZ`9B3ap9>iCpdU9}@<<gm_d>|x!(S|^ZkI@MMZ)XHZ
z2^>Gd&{v7dC7|2;D0Ye5eAO2dz3IH?`6#X{a7j?2;yKaB-|ULEKFY2Bsiw$IZ4XcT
z8;s|M+u*tFUNc_B6N@{B;V`uF!-xT`6BtTV`%6>f{;Dp$49?4LpcAM{hzf3#xWto>
zGjE9K3w&fAL?S1*6-}(``iYulwEEE}d9WJ5-sTMaIpac7`<pDZD});6u)kZlA~(xr
z1_0vG2*S*Al>*YCV<~|KA!BFN8IY)Mp09Z6qsfoA5m=lVrOwQN%p%r%>YBW&L{rp5
z(~~d~ophS1nbS((DRIsGdU&qCO=2=pz!$?J7mQ9uk2slFP*tb-&H_&lUUR$QR+Qnb
zL{-J+Du#**ySeSq^4k#=*6ycuho?Ikf~QA+c>3Q87(o@u=%O5noqrhVQB6tAOF?vv
zdM?k0qv0NY5_;iDI8>A(M`r5#XlgaqKL*jq93PEEEq%1eSQ{a_Q4=5S%0~C~1uIg?
z6H$C8o(VP}R64U0Je~NgJUrd5hUaQ1V^^N)i7AFf48!qls8fgqWqD?2csdgcJl*8k
zEouKm<qI~3;4l=`VMn1fjv|CFFUN2Ou^Jd%YMh1wK8?g6S30vRJY7i)o^Ji%>319O
z-9}WlU}L0?LWdG6mBdDsvUC(gM@OB3UB?-u0=dzde}d;vqykU3o8Y<WHgF<Ty!c2@
z@g*y!;aZ^rT6K!5Z@Q0`p|d%no44@wqv!f)ZhNw5qO>-RT4(<Bo;t3L{Ga-T$MWCx
zix?ZVQQWnCW3H<DB9@^mAL}`&v8d<3Q>o{~`h_o=s{4hHuDW0N=zrfYe3AU0`h~~x
z-}VcS;6LaW9`?WM7e4vF?-wz!|E^zn1XcG7A6<37@X`OiU(|N};{Q^8dpwr^vic$f
z|NrWXVE?P?i<1A_>WhQ@SJhY7S3s53cbJc^vigqk(f_XcqCrm2ujMMTJ0||_eK6=^
zHtKT+Ja;U!yT@foJjmS@&(m+gDyI+LfZ9dxuH-=*e~_=$cg1V<)9jvQ8gE+S)m7YM
z5_}Ooam9$X!bH@HL@{~wxeA`E1Sxz6lcT7bISN;{F^o+xsQiRh31eln-7!i^Ua&$y
zUOL;nz$ba>Z1eJ0<i+Y*L3-T<asZ(Yu!B4R=&S~sEFoYT@B8D`F2hGv<8D-vw48Sy
zGlfwWnd)LQ1>ZrugaQ8$gBAhPc&5<>XBtvcZVGMb`^8b1oQ`TMT1{bF8`=^^9Uwk&
zKpl)eG$!sNeKM{EJ94AS%8eB_<q6=(>@#%5O>S8(q6s|M<rW_qQ4riS%9p(!<<n6d
zU+)C`Ips7v^Xl<FlG~h`*bDl)(i={51Y3iV*4Xj%RKv|vo@jKVk}$p+$(3W!&Cw8=
zTcu-p_!I3zprd`UKIn1Fru_`8iq1F(9Q2vbeVDA3tDWx1(^}PE9?IOHp`bRjaR72~
z!1X5hI!%rO@4))(jyp}ro!GKPq)q-}i5r0325#Nk1D+mzQ{(=w`Z6^*zZ2SOC2CMo
ztSg{Yu_t)P5>BRWKA!v4AFRK&TfAomSc+pkyLC~Vbz2zbTAc0okva}hVj#c(Amq8G
zgr4Xzumv0ejd4<+VMFV=-Ew9C_^oLn0#C}aRB@s!!E=D{oJ$N#ms|<YmHmvT-(B$B
zHKK~0o{mzVj}khcslhH%mzdP>AT=HmmDIjL9zy#p^whJM8XXs@JDb$-Aa!S(+IC^R
z&~sdfb?D*EjK!1}ZD@{o(KK9uO3>n)92c3Ya}l^A#+uw>6Qb<Q?k+RHu<HKmqT^g~
z$vYl+RTL*d!ESp{v^)5ow%WeO^-mPpeYiJdN^n~GpExpdNc=Yg8y@xmwlaqeCAT|(
z#i}xxt@@s4*a#53P?0xy5g>TwghB*``dZH&#}jC%qPwmOw(=BdCq>y1HCW<$q6d``
z>s)k}N2#t4Gc4&fP;5*jt?W^M;~^828jeX#rpRY9&7r{vG!I-w1KQDUiH?>`g^^eI
zOX-_D8mdj=Ds&f$CR3pcZ&K^7tnB^u^M1pxe*c8|Hl7|jMyYm_CEQm=)ehtF$LTLA
z=ntfJVgTQ!cnM`hFh=paRDGG|;Ok_fRhPn&SScuj&@rJBm!T{l#YHiEmZw*-NUH$h
z;UTcVCLhaED&F8(;R^u*f65zssh?=m0LBZcu8(t}AY5Z%s1=S`!+CKxpU)9{Z}Yn|
zY?by;RAtjNo}yN8%hrTkozV`7O30c7uRcgFVpaVkMO-U_PtgFYh$=Nv$QZJvgX1N0
zC{?I@_f$^>>+!UfX=f(abv!^@<n(!7?dSwi<~oW`zX^U}_9v-F&}5k?sXKXaPDq3J
z1TSN7?vl`d@Nol~dSDWB0t}?5UP7H2lK89pcqr)yT~N&Hs05A2EduBp7=>4TqlY>t
zD9@X&UP`S^(IImWu(bB^I_t(n4w~h3rJH5<g@H=rc|Z6fh`bT`!9HOwGLYK}!_-r$
zms0q=1baBaxMgy1kkrq4IJrKFOHdq;rrS^`xdLVQy=@LS!9<@7^K2|l3IW&^Ey|FM
zCGJh8Lst&$JJ2bJdogQFIl<H$<}4#)%?vR4(JPO2wflQ>Rve<LIct^25TCO)*ib)b
zWd>O4eSO;BqaKH-iuz3+L!5d=W$Kv$mU@v-n?e0tKZ)u%M2z~mZoaPRF~q4isZ2dH
zz?J+l|KF02LBy#0)xs(tAE&;-hDIfy5#UPRr_IQFY^~Ba22mCDn|yqndPN2?90X(r
z80wCP`mO|;V?J$uG<y8eZOoL~=5O%)?Rw+6{$^PRF_j+S(@;&MUT1)HE)lR8YTdV<
z!`v89jnBepcUDJ(tmD=2T>Z!)%bkogB}`Ln(qJO)2%WfMH6kgg{4z(s=c$NtOMR?m
z>NmrPDvXZtk$l7HD6<|9f3~3sw;ag~aCy*uUo=jYkm`As6VkJomrNcO1_z-V;(+Zp
zmPVvn3wZ#tFezz}hlRlwUSZghp23Sc2$(@L^QG!Jeb5AWbTLF7kfjb!bHaSu5XYKL
zh?~(k1G0<ia1fV)#u~-AjHqrVYD%WgoFS-_%Zx)MjzB@};&~g?eYvcGJvgkr@R<kA
z1AJapZ>Utigj#}WH^}}F3T-r)-$`vxf00JG`EeeRpU(D(8*ydR2<LgQ8z*mb;m=wX
z+=bh3+toc(4S68_EI%)&Kf%W&-|nj*Kq&-A1>>If{0kAi&_l>P+W=q<js}*aTL*Uy
zn66qE!@Y;s^>{!{w)8VTMK!Wi?J`ur{?zaQ9>cUDeUj&V4J&aHUSGs#k@}FI-D(&s
za&mfsU3(C5sZSwC&y%ngLZ!V4BT9ba%z(k2^m5=`3e8412uFwIAp;V#s$lD7u=N5=
zc)z7~0#@T@u@y^lj-GKbkM|^*bCZH~SDE7MSPJ7dDa2hx3S=%bkC^ZrS6wA5u>i6e
z^LE8Vj7+StnP`gY(NSt#O@G#3O^=7m6+gbCfZ}$f<dPp>+)bYV^Q|YG7>pb43$epX
z0t@D`uP#<|DcLB-LS<`oe5^BI@E9s#xR?P9d5r&Ju<R#C497)0RNY*t>%qGM%PsM*
zOMXKCC%|O<#3d_@n=L=bMU@tj$F=r`cd*jPf^(A(>vmO;k)kk`!njQeaaWPzkWxUU
zIIdVJF)x{nc}<m~(jK#!Xl^Rar9Qq=rTOr9rMbYU(vCx=9d~@J(onVY7n)L63E45f
z!Zq(JFg9sM-q(^pazo^PG3XPp4LxBMt8bNo#t<ve@ru+97CG#q;z~;aJuXLmT|S!~
zeIxZVxa_uLSY%)Y8$11r=S(CjtvQ9L4jqxYV<(I>w~sPrqDEmwZ45R~qQWDM53V*b
ztCR1tZM>Vjhsw0~r5+R0nOs=zwy1Rw?i5`hAHb0*4q#V4sGLNl%$R)ez-ub5P9hsv
zlDh12g^FF{y*Br<x(&h?VqRCG{OXEYrU3AuHKuQK)OVt(fD`XwmhPcCdsiIqKXAxA
zeh7jRA}CeI5CQ7sL_Wyf<sPPkPY{(jM1E>F++^^9x&0V4U_pafkbD%I<egn|C&GBp
zv(JTpouj4y311t1OtfOasVtZJdu<dBst-z$X9gIKP&SD{#;Fpb^RR*KW&<R_rg*kM
zVk-EcZf4+EQ7xi0oOX(iuH8Qo%(&3JFx_x=tFZ0tRt;vug2vIU>sA@Vd*ZFzGH&xB
zsTkL`@9$ykJ3h&%LzCe`F07jTPBNF<gl^<n7x6nRCzL^EyoH}FlusJbsc9~{T?E{s
z%6x=Pnukq}4BIyLxo?WQZbuXNP!6jEKDy8U0&}0y$^QlF8F*U!KS$0sbFa;Bqnw~&
zKQj@F_|k_PZJWm}SS|AsOXMx{<?I}~sHW?BSD=GkvDLP#tx1?Z?h4b#FWDo7mr|=3
zuqqW@b=kszEik7nO%WKw_bf6j(n!D!Yi2Ff##3s{M%lPA`cvZ*#e&626eP4g7Xjy9
z8uZ6f>Qb3P_b113?xgmhUhPvC(ax{B`ED`yTPcorpAmD5nEB02g<<{XyD^lb7=N+2
zU^o`iqj&&EzqmgqNZe?8jf7uf`)pmOT#^~!3bpF5URli*HBJE3Rf8z%7(_!^U7?n>
zjTcC^;WCBk*V|JM@nQ0Zf|U^Q!aV)E^t}uF7$$mCu!rG$f^ocNG7f7a_$I+PBz&+C
zN#7jx3Vc<w;zMIRiI5jO^#o7LC?H>k$0_0a$nb=*Q+VoWcq#!;Z*i0Imf;D}o49s|
z<~n)mX?Q9zJi%TWc`7kHMYE}4BgVr?SW%z!2?aZ!7^)a}x8u!n1iWqNAYc>3G=Tde
zK>p%$Eylg5gpY&}@yN|+J-9<6Ws0+&?Ws4pvw72CLck`XaB?P%NArXss^D~@3Jx|;
z$vwD>5j6qKf_QP;S0k>b?tItCRWZ7uJYs%Z#4%`Vg&%6n^LcgFsxil~1>w;K4IM_w
zITj1fNy78X-lg|@USMw@mxl1LIL+oA-B9f9d$S+YRn3~2n#(mCSJGT|nB;P5Dy(e_
z!)h*juds%NnhS8M%gztgWnUy%5r)TDJhf#1i{*7@0LF~lEQINdwn?}^+#(BZ!F;1=
z_cgyR-GK0Epg7A_<FXp2=0M~J(JsskK!<)Sg7`@$+spt!d>%nSdWIEHW&rup$NSPY
z>ZNYns}u$OxZ@FJ7Z-YKQPi%W+GPYDlFy7Ns7Eo%rGjZzfw2l<@l^4sN~w<bsUX-<
zXTvV4KT(WFm6)i?%b)gzj^+tSeZn>90oVLpP^iCK^-AnE@iI_yx-46TLGwpPX%9zL
z9sV~A#D8O23=B+LhBXt?mYB5hc_@}ru3-Na4gIf7iLTC+#YhQq#(s&030qq%4ba0|
zbznEbPv7Xni+D2dm+N^hV1BVU-d@qPX#1Dz9l|Ifum2#NDu3Y!i>^kRwzy>M_d%Fr
zV-VFH2P+F4XH9^p$qBKdk4Kf5C|~rtNw!OOH`3ib*-pTdd9})(6GtE-=y}wvWx+-C
z)6G2^sv)08ZOmSO#h+`b<u@`pKFK+EJnV^KL2oX<>yvzvlTs%@=yehQ{_#%ywGb%R
z7!0`UcoF{m@f!TO#+<}f1y~yd0f+;zZuryVY9VN)1~GKO&07<Ilg}Tok<T?Zq|siR
z^#N9p?&{f7L0^smxDU${rt55Yf{5eZ%G$evCZXGhu7LZ1@jiXgs{7t(TJ?>X@48~X
zdy<RlCu6$z*addQF7Rzz8E<m|inR{!)nL1J$S+2t7xLWe1~jo7NCU0^M(mA>VN)i$
zcJ~$o-ZIDmAjn~Sn#iq~ZMA2ai{LJz@y@BIyAQuOC)n(#o^iN%5c6C1V$kQOZc3>0
zFQPT7aiaGRkV^Q(J^~R%_7URr<UIId@J$dm2XO|v-m{dGbrYtZCY*X|=iHQl#VPo)
z+^$_a&-=J{sNEzM3r0eRq6z9Z1;+GfkFyA+S!CxR7wU{6pozF3?2VYiA~zekaLh)&
zlz7^*$s*={ls{eMDakdC*0D|-kAgY@qukiMC(E@c(bH}mr4p<Oz16E^%T*FS-k=UZ
z&?$h>?uTYgF*IxJ6$4ITAC5FhX|>0=<gea(sv}hc4Y0=HXs3rCY0w;50#8ZzLy5<d
zl&Bg<U@>+Clc1>`*$tj<OcIShKX`Cn$*F!M{<Nf;EylP5Hi`lzc$>C0yjb~CbL-8#
z*sF_9`+bgi6ZFqlAHs1wNo9_&0>@V|iRT#A*4)#Gc$O^$1pnl;m5sNI_q1Lk>J9&F
zy_t*yZTlR@x@er>T(b=4n%ix)ZBI_87-f2D7WX}~Qj7e)C#tX*3Y^-gvw;HEQVj}}
zzo6)8P~Z^5ponFRh&0SN3qoo-z<5M`lv(}uaJ9b*uF;Ty!2LjSZRL?jPxI;Iegigt
z>cUcv`lV$^F^1DG&iOe5^v3!|NImb9w80hrBE0PcDC3%*eA>9!B@;S=%u4l5sH`I(
zZ0s#j8If&}U76^SNg%*>i>b{ohNBIdzcEdKOS+&qZhr6SNPrm+Y6~RH0GAB*ti`Dk
zG|l*zoA3v=KhPv`eD2tSowg(2wkz?BaLG(Y2nH{MPw)4L(N5IKXW-8n9i7S1V{#o;
zQRKsW)9j{yu%UcT46EC?7qPu<Yz^5SB0e*~X2|8M!c*vp_SEx5ZhKx#ePuU*U!}(I
z{^=Msg`2r4u<i~YRURt$9+ZEC=~6VhOM$7U!-PgBn0f-!WNyJG8x*ldmqKfBwWPOs
zrmXgGscLiq3g!YRpOj+KdSBKNbD%ZHmi27vR~jw&H8qwe8ft7Xg{L=Df@h#Ck&#;s
zBT=>z#n@9rbfiE1g=zkB4N}|;sa6@3{i6H*S$PirbkiQc!>Ng>Oh)J^KHeTHMV*dv
zU^?0LXCyiu4NYR~gnNu9M@5b|v1LU2LIpZ98SN_`Zdi(kpnah!^sxx3Cj`kHN?5xf
zm7oH{eaWXNJAN+t96lf=KhDV!SR)ke>6BgyEKFG;35!h9uzaOwUgcRonUNP<%)i5u
zj}f#A7|^`nV*DY5Y@aJ3sRMcdC^Z12Lf&+YN>Gl4+XWZPXBdVfI^?H^dseVwgA~WD
z*k;&pnRZiQ<YmSwUeV9_l(Z?<y$}A(rCtd)3SsYj(-!!iIQo2b>pjzzJ<_`{yoa8;
zC86?<li>-~;v&vO8_4jo;=>LW6$Tb4BY9w)E<~eAJls%>hnU))Zt+0%0#|E6Co@1w
z$NtgBpW<3}M|A9tm`qAB6Rfq}er;+Z6^$mcC!yO1^NheJj^R*5GSvW4u|tGjzc#g-
z0W^pqlc%~TxR270`+|u!KxmXW8nFR^1oR!AO)Lh~@!c_-biWp^Yu8h3wVn&&PUx}!
zh~84ui+vKFSG-CaH+TXfxeW(XPxltCP0sa$9<Y#&weSd3_nFT~+uoY|l|#X=$tO9$
zxRLrZpWtMv0$kf%W#_4lIR7%$B5X&HqLI}M=hKF?&`;<np5}EI@W7-P2PVKK3#5(7
z_ZaXVk;axB8OiW|IN&j~kTjZ=#hmTeQM`ybmXld0^-K~re?^tY5ylg6QQLx;!H1hn
z#6v7@UEgEQ1J%6afKUdyJAJqrQ++Y(VLnC_rtq{6DnL5=ld+g?O5wEv#7GaXG6o~r
zN?Z0d%nTTLOWDvPuS|%Mmv$1vRhF9X7nuRJ=<w0)?P5|TiqY<iKV{qfG&RzSJ4aGO
zuNayL>#FDuv9vP%AuZl`F=^2eM)JYoGCVjuH^B5a*Py7>+HDoy@0n<Zx@*Q!@M3B6
zxJ+G&%hb>v?*!d(oTinkds6q&w}6UZouCMY%h_hi3*WF<&<VmD+L<Pwu*(Xmw|Sn7
z80E}89JPApN@@P{uq2GN`;<+t675X8zxq1!{V=&B-s&SbVH~OpSe)5RMRDy=3|C)=
zKTIt{D?xM|pcesp82~3+)h#_2b&=Jx&u6wNB9?aTQXgHZUHfp~u6>A=+UnCi-a^nU
zJQfJiW;WQ;slk~u?&aP0jMxk>S9QL)Ya(rix0n(=R~d}W@JiaXmK(10Fg0wj-aOOn
zf3#k|w95=IW&L}9^`2Iy8K}f@Xx+zMg7$L>Mtv%`mx?^%X5+aTSG7x_S^uEjay-b*
zc2|rdA2R$y45bEcTXG89;FQ!%ZbfGDSs+2SoHm&txWFpXw#MIM3H2T^)fye6^%-aw
zXIz4&Sb7uw+&q;doY0498j2?HSQG4t0BA5fKsR)NDWr-XHYJ6PQ3-Z6!Uh6_jS{f2
zk?<SMnzqU=2R2S^?aGFC$_wQdyWAy|4V`dx9wN^B15jOkD_pn2<b9dCKM4-aK*&7m
z(>)sY$J~1OQ;%1?k7@}h^V1zYj3{Vw5!z5JbtJ<5HVUV)P#Z_f$_zk5Y<!I2(?eti
zSQ`K4qi3{mIXw%Nbe4!$olgEC6^!dIT`|AzXFcyv9kdmEFtvcog9X6~E)Q1lCHPYH
zG3}+pHZvY1hVMRi81$UAo%Wns$SuS|^*W;e4Sy~w#^>p%*3+*+)n7wCQM3J|A#61b
z5&mt-p{)9$sb9F~_{H#vaN!dZCHX87K23UIwZyQ>my;)OOEN(Tt4JoSmKavu#Om1!
zTDszsh5~7kY9hBvPk{^fU&_=U?!=!v%gs1)wFS4E{=Zu<H~py1^K6gwwV4?Ji0dmu
zWCj4@p$Os|X)~DtfOsW>Fs&*xz-7&R^^DoZp%TZSzK+2YpX%B%w#Sc2e$H0^IV_4G
z?prF&l|hg+(6kGWNWbNAK*3lQwL^pG^#TWvm6RBmQ(5$uT^`IV5KwvN;Wlx?DBR0R
z;Uy1pHWz9AX2}FKiz8A`^>T8JQ88JAH4rDP%0Io~36~kZCs+-ahhV?TT)DxhHzfHm
z10If<<G?v6-qyx~%nW5qc<0Tw0aNb@z1`y!(}>q0Tm8z}<e{jE&lAb#`FY-~xiE(R
z>fn)ad;P(pLJ>p^UdsGk3I%j*LBS!)Z3v8IFmM{!;de>$RmQ$bMW6n(u=E<Zi)UN!
zS?;nc#@V`ILhE*!$;oASR>aMvpc_H9LECR5+9`xY^CzV1p&4+URU1A9&~Xt9$7!9!
z5p_{*7Gaq^e}Hh2k+z$OT0DS@MrJ>$Ypih0)@JT%x4??N?H}muTS4j2Az&?#`L-N@
z`y*ZsZz%dL^Jr+JTjigM3Ox1n;BKDLnQ|sna}UMU!%=PUr|q@eC#h?1fcu8KWY2`!
z>Sh69FWKZ`>@3ITk!V6kPK7Od<bppPMb$?k)}Ly&GzL5~{#YFO9E+U@<{_grgJY#F
z$*D9X$X^W8u{cmVmPDi!!)GjYn5;Je7d|Q}aDT$`cbp4I9EoN(J_#|esXe{IbIy54
zZ1UJNn|%z0S#|y-qV&*({z<rsyitw*?9*|rRO4ik8F;{^Y>T)c;8>*k6|}M9UKH>(
zmfvFu9sTt2kJ*eR<Sy|%G^E*gs(H!DcG8)gdXfe*@5C#IZ&V&{qO|gk0cL|T%m()n
z3=R4|K3WtV_UQ?p5_f0qJK;~K?glka9zetNQ>V-1nbg<%l$WrrUD6pzJG(=zDP}C1
z!97<u2oN`#9B?y7;P<e65+Wbs$ruKFk^G*3-^0d_&;%K2ulfd0r8)37hlHdQH&xMk
zN`d5qq^)?*6&$*KKhxAHorD#qvjKW`d(-jT7sFF*l+{&<tn+RH%uPeg5GOP>hF!s@
z5|Xh_6*8`vFh?i`B&PtU1Mlf)7$R7*m8wpE$DhCV1#)y?2`BQD?&6Uj#(Z}u!(Wrt
zcpNXcrD-d@Lzy(-6pmAULXNa&o~?5G?7^vcI-M1|D73Ng84H#$@i2Td--d8!gV`kV
z%eu;C2<6skpz)}L7>D{J#*RNaQ#4{y<SCnxC{0GH7U=ga{)oOHsnFJLz|ho7RXA(H
zFaSgWTP$^qWD5)mEpFg&qHeeo8N71>8VEd+#`IK^Fe6PD)#A@6r9b10SY1zEp+a&4
zh`1rU5`W!Pi_0-+UrtD<W)RZpnh<#g>h7w=wHSo2y&ky|)G)lk1idZ)7)Sg10!tU%
zo#>Zn2!?gj+Y&f$JN886=f?i{GX#2)Ecy6P-|bV1O!riD(NoU>aEE?y^}AKn;%_ZS
zKgE`5nuEppc#>TD0E~MjN~QHJiT->ADF(|hK39cx6%x#H7!rINw;Gh>B|Iah4)R(@
zZs|5e;lQK_Q)WOEqM!@qOpXxVHim#1*gkI>k4l_``Zx*O@KS8Uqj!uZacMk>&;NDB
z^MCv4+aKJ+mGC|4`$&`icQBTylV0YM*1n8{_Vs!S7<&REZUUC5CB)bh7_sKY6;5J|
zFIaWNolHPI&=7hEZ<u~wPd!Ct{il!!dBb$hf;K-r(&s8b4F$&m?zjgznj+nUsS2j6
zP;dBj;c@>o3A0%1SaC*voZ?fiuU&{r5JpXvcVe*`jedHUCn^?2MzSN#2-Z^VYHjcp
zMf%_I>L9MO1wK_ur!8sNqgCS;K-_ym5Az)sOn`ZChD-<^#)}~8;ow;tusK+zB<kOw
znr~6@I}Fz-aTo;GXrk(3Q8B=vg3F=G;0Uar&;x&lfiyk@j`+`nEF~o5-GnSPkdzO&
zUo4*-Hct2>{tP2CouSV5jKb#`TvQ2ep@n#pDy8#$(KJI#Z&{2#zoq6-h3~E4C2Hlx
z3ewTxcpXc}x@vh5|6Wv#3ivHGHIV8H9%Fqx762Pwo(|rp@BQE)eFyo{RVOuA&Eh@d
zS?VQ)6c)XH$Fr1^I(NFd{0{z|jwkQ%tpWykF25arrYB)0k0WB(f1LrVZ4!7tuEI!!
z{>4*ho;r29D!UbbE5|eg$}*hb5n(rru%3bQek>CWCI46VecrgO{A3vW`Y;GT&@Zr=
zn3-C_&GM4eYKE^)y+_}BDd<GTM&>vQJjDnU#SR5J_e?^^M`zN@Alq5e^mJ*^9cNPX
z*BN6D$iiwe?_G3;<#!;8j|4sw;?N)YoX85}WK`6(6H&r2jf{g`h$&M`DZg0COq9tp
z&+u*IF&l*9G_H;JdC<M!n-EN+Z(0DW!fuJBAMogPs?Bt@KRGGI?=)b=H^xgG5~a02
zIhKVsHZ_SwI4$)Ieb0~=7Gbz(fk|55A<-_xYNg|lI)<E1y~hq~Dsd`sor<kZPZ<0h
zX6tMiWkx&+A3__#+!1EMRxe(j$y#Fq;^=~?H=5uW^3yQ<p2mHXLyp=UmimBQ`2+Md
zAV<JUxOI<!x7BEloCp}r_o;FJBE5!BjP_A$^j>>QZZBRSLd^KAXZb2?AN6e3LNbIj
z3&EPrW{f@*$<+000K232f6B6$zX8i-j%BPPgyk~FG6IBUS_=@C5imOaK13PnePMaH
zXBjcVGG5{lmJwrFMvSm*H#$*$T#q4HSl(k;&d5!76SXs*8{GpNIsRzWABG6}2jezF
zH#zwdHcN249jrzv!ttj5L>#UlV%4U5dlYha?m~3G`;!n;;)YbPgTj4m%Q(AjK@K6l
z?xTk3NwhgVOTPk~@UP}WKJhN9@9-$AgRAPr!MOds)m=X$IljYTt6CgS<B?iAq9MIf
zbIQmamN=JSn0_b;i}Sr<asF*&v7!&M_$5d0FM~&MZw~%P)h4Q1Z&IIt+Soq$j06!x
zjN}VOz43w(iv$rY61$4iKc!qLHU+;;Phy$5qRRN{LJwID&AS?8?Y*Iny#k9=keHU5
zN8Y|k%_K`RgE?Rcl;(gNiQl9?BX8fU@rJki({u3Has~nC$shzN4G8hJg&2fK^ASpA
zpoB#ftZ54+v@cRZmjHl}Dzl^zBc$A5R0R>>?`g311lE;YL9GN<AQwz{6<Og$Xb5-7
za^@(i|KiK!9F*QUS4pNHz$74!3g|Z=_+<rS1)cEc9hK|>2EuZi>S)pT3=g+nG#JL7
zYQ4Ce<G96F_w=NsxnGY9V|_5({|ltx7_RO|LBp{I_cQ5;C8bk8;gdH9FYhHk<@mmX
zdrrs#Qm=A+-<Pt}_;R!_RNe={&lt>^TH3V6=`TI#aP2tjw`+%<(C$3BE74^<_Yqir
zJLZ`eto+tmssS=C3-ODMB@5}aJ(R-hd0<tJ`l^h9dK_#N3spQ)u(%Igp|)%sWu}2T
z)>|81sB)j{y~T+z$9ofCFQvl%Hr63S!EEpxiA=CM8j&;kACE$dXOulK$Vk=ML^%;y
zJXIGH727K4;}@Iks6+=$K^>gZC$2#k;~MlLj`%`9{KHZMc%q+4jh_Xnw=Z#6WaK&n
zqvsh9a=%z^-twj$>(`C{bsp4o!$HkH<A0PZ6TC$g`<a~%(C+li@wB|zxoGz1QXp~-
z&Vb6)8gq4TX=)Rj%d2?G)LijfAN<O`xYo4uP3mV_^oalT8J=C@4clQTXh)r?n`Hg@
zkKhxI8v6oX6_FWQzu+0EnK}(RJ?brm?;&w0Ge*e}9DZ&KtN|g>P`sZ_GYF?z9`LpX
z-mi)Wa77yTLx&eK1rN_Py2;I<B`*)BXB0LrOGDga${6A<S5cIH;qu{AmPbC}g!ZWI
zRcw0APdE9^IP8lWy-+Z{@K(4Nqek&!uai+@2iU~?#1OQ_GN5hzoe3-u=LU<p3|Sn!
zO!1^^vk}s^*w3^jQY+Q0gs_`x+Y5ybj*!|~@XVmt-K3sDmcn~%!5t;TNNDOWktno!
z?!Z04=T=6wC#i3?6pANaNTM&#g!qh$&aYCKwp<g_>pg_*6hGm_^eb;^^_F7M*ZX*(
z@jXV&DFevfzib4O2_*RG?_tHP3hWQ{RPU$0#K*L~D1HN%3Gb(N;A4iiN?AD;S-=SB
zLXQQ%7#|(4kYF)3-xg3404wdi3CVtVjE${{v}j7sn~<!B*Vx#`DZGRg|7jP4msa!p
zh7(n@q`5_iH&=7A`+84KUbS&E2IyuP5P2d3Zd64~qs9f}o*odx#v*j2U>eO8Vd6*Q
zvbOETo^5A8s^#0*4pIPw)Gi2WS3%!9agF_KwA-^g1UGUUod{do6cGtaDWNMiyBSHW
zM!%`iHr_O=W~|=#>UmV$nwPzZuXi9|QTB3*f0kE!wVLC{p)z0njz^fC?4h#vV~wI_
z>aVl#`5F(2AZ&X0K?vWc;rIFYe4jt60D+?l{#At5miE~6Opi!}oQFMymDd~P>K*-C
zD2~C|c&HMZuh|bn59W<>Q<W)w&j&6;bvVV=X@?6^xEVXc-i&S6KEMCg@+d&)nZcWX
z`4WQpnXetS5Ck1QiO}b5aRhLpp{nt9qrdZL{Shi1b;6kv=8B$bgc^>ej#``Ej7yVh
zo8Bhx8K@_+pUx&*PiJq>M)ahdsX6pc&3PsV-q&;2it5PP+(lFgT9mgekFi_wK9=vt
zdA~CF*Sx`UFf%LvwS0KL&tFi0&(?z7{0uJ~RVb%0qY5V#!oR8TXMC(6+-A+><7Z#K
zhoc)_A#3)pQlDb!v%XwCqF3|jmzTm}`S=XWpN$uN5j;EppY(s7{}Sw6sc#Eb;nEEj
z;Ndh|=+(h4#%P>Ho%X&frHNeCzMk`G4kxBVqRLDZM<OQBSNU|spm57vEQ+8qxR27<
zw85B(;xZP{fH#u-ydlrK<1iH@QJ5ep>;$1}lL@S$gvu_T_gpYHLO;sIJegxP>uY=s
zUx3)>)62N@Uzarq+QF(KcP5e;9ZkXx^{}l#b78oYv-8sMbH4JkBWGxCwA=-5-Pc2l
zE;ps2Pp22Lg)B<HKr1e*vkvh6Q!t6vrW<}}vP{GAP=5Fe03L)+E&(#5{{qe=2ApO5
z^dCG5r%bl8Ts3Tr;h}L;ES`2JD=6NmNDao2j+nuzkyx03czBXcSP+Dmq~ZZA)VLp6
zgg4t&97_j3{j#UrCUpXK!uoNI?;&v*O&Dbc<kg>;3^y>4q4&$sFKJE5?D@!*%r(gR
zbZCX)^IWjeEP_^ZqjW&Quu5+{4s*X$u1yS9A;XBJrsh9VmzmUMSVAFnnMqw{QoCnx
z9f}MLtx+khuL*7mAa+YZMY|L#+9Lz;lOJ*H;}(k$2VkHE5Zlt&&B7lcG`VVGv#%1g
zHMBapnFGp}<Y)YRmAs#=dTr_*t{gu|4dE_p8Sl)x4V6CICzo0J80;~xxI?aKf#d6Z
zB$Z@#q;|5NG5!42h0Do6xcp;NuzA5<^8>WQC;*5uyl%obnb4i~8iz`>Lc3~pikUA?
z>4N^-#aKX9UBwjcUk{x)G7`gZEfYgBb4o|#prf&o%ETqAI}>9AfpuSBOOM9<EelON
z3vy<6gkj+bXkD;FCBx=6J{Q(N!}DEwng(@0UG%+is)Ss$#3LC{txZleXI2pA@kK2M
z?7y*89l&G<Dll9pX^@GDw0K*p24ZJua`l*7KJKsqJNQl)<!s^WmO4(CJ#sp9wI7V1
zVmYXP)B}}z{eiW=oO0oKlwz`v<40DMMDr})=SN16!_l%Y?2bR(djikLNWyV*QECg9
zghl|FN%(u8UKTaDKi3mhDy;dDU+5c{!r?FsBc`xg6ibK~+a!1&8UqI=2Oq$JBkl)0
zT2x;PPc?9q!Ohmo=aHo;!W4k6<?}D&W-a8u))C0`^BnO-C(uFEO7*YHEQpLsxAN&^
z(^SaZKFn)@o$y-ADs0HGaSmP5+N%B8xDy%+5oFw2qY4}p*JOBRL|EX4898{+QmJKf
z@Tm2=dq{f2cY*?#8=`A8JVx53!5WV$F;QsV*h#%()41lX$9g0jx0_~M9F9e0UK}=b
zb<qUJzy(Nq0kmq0v0V9p?GJ0Z4}yCsp}SX&KI9TgM#>U(!Ru@%uc!7|J%D{Fyr~AI
z+(1&AjlI;Fe#ld#tfcu0w$NRC>8Mn#PeC3bL(h*B4O`7jxplK?pmN&UU;06d@Zm<~
zG#+B6o(h{V-%V9Mz)n@(FKsGZY2k}Z^?9$sj|%l6W_9DejsY}>M7b+cxx#*b5{8cW
zi$yfV#M%%MMsAZ4Wh`Zs0bszr<_>h2ZxO;oU5P=R(2YG2_TJi5h`ancKQ?4UcTq>2
zg?%TYyC8M=XPdGSs7F7&r^0ybOEedu+Aq4)w1P|JITEAWBtSZMpabTNQSUeqmdb?%
zBafz#Q+r_tG=dK2TE^nBNLSdNrJN3%TWnT`CGN#--xFf7hN>>|M6hj9jhY%Zn?jG=
z0N|FVhmZl05EyU)!I_FbT{8v&D}&}nr)qpDaM;y+1R*_|5WoQlR|$eBp=W$<9QI(O
z7joRIw_&Nbs3#7!bHq@tsLaMXBM~mVR+w&M5ZS*m7<rHdsv4?{h#_d`eJeb-3S#&K
zF{cUh(@Q)@GTV1RU3Tn=KY#xM-P=JW^l}f@3bk=gDgIo2BmPXq&E=>mwf@4Szz`MQ
zm^izBNGqxhTj%sIoS3w}D{t~KDBkc0n*!SedRJRA*1O|wgAY~@xj2lxC|0ipr2D+@
zsLIQ2T=5s1i?6Et)$m;1S4#Nzl3)^)m&44(SJj<5@YgX3R|uX8nn8>XX8<S=m#U-K
zn@%xzZQ<&E6`Co3`gYIM*_htim&*DooN7Zc_#2-8&0jr#g^9JR2+W$j)GK(Q%e0q&
zBnMGOGYDsaCg43<XYPvUa3}LjdveS?<YGP=xj5XHjiZtQYG3w8Meu)AG_j8OC)U|s
z7yj*azp5+#uj+nV*I@j%?ql^J0AVjM?L5w{e%G^iGz#MAD<MH1p!z{@1S^uMag=S1
z3m&2fe1Li+Yf%<TXHnKhKA5^O`x9=tKgs@@hTd1@zgZWbAL~}sL)me{)z7UogkZ5a
zC?A``;%5Qhjf_)I=nFhhE7nGvzwz&IJvN(T$@=UAvO(UM_ii2fhtwTi*J3at^lv=#
z1x#1KD}Se-Eh6-NsX>%ul9NMoZGvKX$D<2KFUF^E_zK-NdY{9S#Qcs67KvKL#_YYq
z&fe@nIcQyjayH4<dvT3DH3+t+#sMl)9jGx70w(ov&CN9#I;_^nTKv9Q_s6>UO73-$
z&o#9!H>I{==9Cx|+nAS)3)kGx<PL8Jl+FHZ+T8~(%8tHzfD6Fgc$803Ki6(!5lD~l
z-YAB!t|coHuecYjBOT7S$n2mT_hJ&c;Z@6)rA?o{)dh-C>iO=T4CeGwNDUTX6H7sx
zgA$o7E)1<Qm>7$-`vb2Vuh@^XPN06+qaHzQqxGI#e3s<Bn}^S<`M+VlR?k#hj29g3
z`0kU!5lej$I>kjJu%Sht0TTA1J>i~Q@e`XkUd?|3M<;-IqHr&J)!w4tio`DzdRf$Z
ztz}guUID`K1JqC9+#GRK<c<K!@dG>)dcNnMJ6)V?enct2#KL(+_&iwcv1(GK23{}p
zz-a=1qu+yA3q5Xh;TZ4%$E0f0A=nxo!~bGtk||jmk!1D&b#LJwWCf0~)utlJ>{ybO
zK8dijGV7ldy$vbcScuQaYLm>Z7|YV@9#~k~nY9}D#|==w7CZ<1a15<B2KdLt@UQhr
za+r&;;VVco0i{$h0ZHJfs5SygCPYb4Q}6mj)aV>L03+OD6eS!3^BzX+z%era8{A=o
z<E5h2C=Q6{tLV{jOvW@U@l7PY&oN@c@p<;HY^;iQWfMRA20t7l^EU!N92*Nh<?80s
z0@8z@^nPcE*WY=*Md7Xoim-ev_Y!0I03;+Z;aG~3cH~yzc9Ghh_ci644;HL0z-M*A
zM$(y4G$&Kc=~_>$P#Uo$8{LX=tsE+<c=#QqgAaMfXJr0B%H9SREC$1<^TpsCe&L%l
zF@6{*^?h#`%rHF6p{Q=NqP~d%iH2vuO5hn*6xyt%3A->BwiucT9I}+{VY<TOse{$(
z23R-oM%LekU?O{fny8GK^~G{_C8KXfZ>*6z8Cni_44dB%iuM-aTLl!lAc629jFH~&
zUu!Z^i%Bpbc|W3!JT{}xoz6bDSEuluR5Y&$-zuO$fI#>V#?X1q(?Jr@@&1TTyt}qx
zcYQdE8aR8=Td6!_xrsr60D<r!jG^<Crz1)`q4!60;(h!~+`+=5zbSm*Ll?)_(TPEU
z0D<r!jG;5$(y7TL$dC6&bm9ZUS<}@@yegc+cQHl=d>x$_6bKLqAHo<qxB2`a3Fvr#
zL?=F`oHJeR%$gMPS?4K*&lQ^2lG(3y3<?AYgb!g1onD^KIYP(#JsseP4@Kvjp(uqf
zM<RYX5aDZcmI)7H9J%lzG(H42q|fuDkrr9>eu)N}N`nHrJV;a>j$Wn00y`Dr>S$Q*
z-4MAdOpL!5iF7A=SP-b>CB0~(YMnX>VyB$BIrti0VsXeEqfF*L@$CeV$ei~xT7`9N
z-{&n?kc@i~dwgbW+zV8f*jRhdGVTQ>j!@Caf}N#0?v$YKO%VCDm$gQCyG@Q`Ba(Ko
za^F^kYcom5y&%2Q##&{N^coPv&)h!=Yg=z^V1_U%?uFQ;&p!-sf`ee(??%0hz|<)$
zHly1ic^YVwQ=zJ}Qs>GDeQqzfdx;_Z@}NI5Sx%d?tQlF+{;v}vi$7aBR**8xdQUWk
z*Ux$}$CKUXt=C;vMq{~VrOBpZsi?WxYq+eRSz`&$RAmZD=r30|5S==aIzum~_#Ml3
zbt1~f#Ad)@5941bdzo7t0-KihlWo0qnHCxFenfjz?N&OH1xUO&n9Nc7-khy@`0T7R
z9(x^26gjB<ii3qJMwxmVidpy!&Du^=p(AU)zyn|TDSeIy#kCx@C2LBE&(<0+1n9QO
z`Z^EtK4qHEXs87CRPWUIxQ1D>sc^D|fEYA9%IZ}oFi{&C_^V&@I0j)Af(6_r9O;N-
zd-X4>b58%I`mh?AE4uG|8d%20YUfE<z!%5T>MJD4`s!P%%ksx$24ouhMF_8V9aK|z
z$T6Y%ECHWYeQtGBItus#3kJETn`~pn%c*#A@KM0;ioC6Pu_-wQC6(|I_oRd|6?vOo
z4>z<^viBo8B}~SurWHpbRt>+ehTB6oB4t!yD-e+S>m@LTPIpVEK9e9n-XGD4>a{he
z{Jp4Hep$0->L)v~+HVay1j0vZpRFl8#nNfaByqo`6KfhRIN{HQwy2r#fjeq8Er66!
zhWYvyX&piWsrOr?DWzR|g6cEp_Z@nO%=6=FjH_Yhd2HS?pg@2?_z=d>`S~?q$FG5%
z=e^%CA8(b%aDJbtU(ozYlazTL*~owb0RrJe7(-`^rPGj01LVj1U4AeP`j*_9^ZP13
z<$$lWV@%p?8o0C&g8~5p;X@chXQ8Fjm`elD@&1TTtod_RXZz=O0vf)V-GxpJ3IwE+
z^b#0D=Rr%SHj{vk_ahnurjue&hXmdeUj__+lGr#=YE4cy1D8s4#lY9~G7Ku0K|Md&
z6*}@bM8!(o+?NwoG^WxMd<xMVI1Z;6xc?c+lk`U(fTt}DD6s2z3I1F{fhB%szQCn;
z4`);(4$JAAxOsR|H$3Ht>FTf+dEQ66d@YVGwEnO?02p-aX|V)E%)05}k;?9-FzDMJ
zqFo$B$^fmW`Dk9#*3Cu88t$~A6pKL$=)6`fz<C*qxz>3Z3*o~-o7M^+;$Gp&|Isr(
zHf{yIr>?5-07X;>f+6-I{1EjW4^_WQA4r?xKaidWjqY&k^(GZ$RaK#CisEl7w|eJ6
z&3o*C2tH%L^-0AMW2Gf#^_EX?gZ4yneUQa#TW8?X*7{%z)t<K)_Bum?r4FQh?1A*N
z)KYvF>cc+l6AgBY)x4~ESuQN%#f8|x)o~N!<4*4HNR{6M>4!AG4{6YWq)zV;@7S!T
zM4a^$XxIvMnE2HVJ~3XEXwB5E-+`>-mvWp4{u63!aJ&_K4n0=&c~F7r3I2uY9mcT$
z5+8;{4AW<E>(_m~iHQ1Ml=J+Ia+Vvo78-h_9vlats@_&$#s+t*-ovcy(Z7j5PAMko
z@JL$ttO(7<asjaM>&Q^W0Cga>1{s25bMPGmoN&xeZ$eJscpORybj0yj42X)|_C3;x
zF?tb;>!RsEx@dr!9y}?P@J_H6I1#Wmy)R9Ged&QBei^9efd(SxAv28lO)|A8gXp3G
zro%1UX7U7CDnZBK1|+^NpBZ0$rO$LeiYos)G^guE8UfhK)NjV|aPS1!oG}1~vPUBC
zaE#=8G{tJ4dN7U8uJkT&JtKpc8HSfQF<tIy6$kzC9$WFZ$t)z(&ES4K^;yb$1_z_i
zEo{tl!MBm;BQ-EBY2Qk}g}z}xqJnoJak3e1{gCJ3WaRhcw<%yBPSurO7<E@8zf%U_
zwYhKT{|1(~#6K|*gX1r#705l}SE$WwA)6Idp5T8z{XAx)hzm1SJiXOWK9zGp1`}up
zk9js)15@jNkd5D*bpIa1#)lN{gRS5nTu9BK27D%wIMx_OAS(qj*kpl)7~&{3I7$tU
zs)skjpnk#gB?rz+&3g13QD4Tw^i60V%fj?PYAMPFAyd;+QTM|$>Ru#|m>0U*62L`6
zWO8U~Dh1?rP3a0GPLYkZ;ZiC)lOR4MhtGl3U>+8eRI)5q%uWjKalPfaZ-Hic!88uB
zZ}XaVvHBo6o`pG|H<*fHOdeOIiX&9y%dSCx_Ba}Y=DYY8qe)qK6>y~nE-G1TPBx|6
z_#$YEZNb4LZUTtXO=e7~iLu8>7yC5aTkU|wc?`S|$hWoK8kjP@NT<T<EZ>|HvG0w0
zu@Z5Okt-3zx@j?CRCnAU&L=22TImNZDU~=}&-k=0vaGJW#<~uHkg@j4Yxp@N4sGvB
zn6;4_($9OW%-F@9nXN?lj0=_NC49%8|7Dr;zsQU8zt~T2@P}=uU}isM250se7)H%R
z{$wzdGyBZ+YrM<;T6!AK529Zzwb<Oi+idEznOp>vOgD*2B#{KTWcHR&ENyd4<jrA4
zwHQ`Zg)%1XC#jELtbPRpNR5D*>0dcW{t6x>zzqgGW(-VY!ul+se~2<9YM32+vOjD}
zeImz7LxY)t1kZ#LkkR~K%)6dtcvs<JWda`Nr8eC91W5s1g$rWh_=Z|zw1l4oQ9}~7
zjDwF4Ox_gQ6KEw=&fSS|iH6Pkw83gng?Zk`rC(Uh`n$D}rC_Z_acG)a$b^41IoE}l
z6wJ8Hh59W|mujD?diC^Oi4#Gx`ej*kklJOpXWey|I5A+LbRt$&9nY50tZvhMT%u{%
zr=hCV==Y+K&F~#d^cLB?hd)`b748&#Xo><Y6Xbj>7PMrW%iM&%!m~}oB_jeHcy_{h
z-y^K=UC_`2VjN&OD0W0#I!J$H5Zg;I>tbGyxOxWSFH+w@Is<E@81?W_MtT`<J^`_V
zvWO>HjuVJQmtO1<Q<n<duCwv98eFPwpB2~fB1?Kh17QHNMcCr$ss<;Y;u*wKxliY!
zonkNYbnbcvtk3<JMy)^2{YL{45SZ-5QV*jQ|6$4XOor|w@FfB-0R}$ySD)6<5gvg9
zu^Hv+m7LFv<A<CLP!~qX`!&bZ634V!_tX~0%Gw)wc3rMMs`F+&aeP(pgZgwZyJ**P
zgW8?l^DA!si_hgf*=%eTxvO*eU7fozS31X!`9I3Z?37ynl;zTgwN}<9z{=XM$z$K@
zr`o^PR=K_ROjp0w9xG=e57r%3k07J!jh9!Y)tvf+8Zcl`gHa6x>8J(|Fu=DR>2=cg
zV!2;~6R*tN-^-)MjNA`8B=_riWM8hns<%pVuh!SM#b656Qeul`n~lm^6eZU15Rb);
z&ks5GvVK|A_)M!c2!c)IdLwNyd{k$BU3^FcACf@b2W};siFkz^hp$M!$${|A<PS*^
zRT4Xk<Nz@7OB^f_+kD3RHo(4A_aUxX9?E%^J1*pdRhLd1P<|a@=Bf$|6p_`1`V*Ar
z@m?^gJ(L_wLBwEvj}FQ)oZO>DBsf{mlGXDpy%zgCwKi*gR>0Rp{)NMOfbY%zDO<pQ
z${q#rqZ(9mQB8bauX$fBeD13?rxp_Jto1YAQ&vOk%&LRW#Cl7h!=RSbdzWex{%6=s
z>4uG5Q-@4hRsRBu_#x$LYd9FEjBxC)J{NL5IF{9zQBxcr*W81KkB|ek9zfN@F{18v
z)cBBcY2d8X_&?pVi6bCG_~W$q*GVnQe>p$Mo{7g}3SKObSK`(cY%z|51%sgGk9Xtd
z6wWh_e->^wjxVe2t`=nf1cjmMBdW`M;qs&B`09e}QytL)G+LCwRW?Lw8*t$s2ZC|W
z{#XjOB+wLZasZ;E++Yk^|Ngtx@SLa6_u*KYv)(vn)O;6Zfsh?F-#}TwF|76!^nEyH
z)p^-Co~t(ktsfzi>d!Pch*C*?wI{&!=KeZ^*zm|oN?+`w8eoR}vd)CMPRbjP!<s{7
zVU#lfy(JgAmru%7%X@XcfP@7o!;_CTCEt>m;@;jAQLMMAI9Oxsj(Y_y3nunY-{>34
zB5twD)yQzX86IX;-wZ)6LcXXz8;u2yduu*~0)pd-noEu2wVGcV$L^Yw&A9n^ttH0s
zew}Y++_Y5VL{To8WKo`mEQ?ym!ePk5VaUQ^$iiXB!ePk5VaUQ^$nL+}k^TMrnhid7
z6MGzWI1F_-40SjRbvO)lI1F_-40SjRbvO+5J^umq*|efQ8!xK{<uD<_+`~`m_>eX}
zq>K;g;zO$VkS0E)h!5#S-9J{Zm5LZmOGrRXk0g2<61@$H-iAbPLjr05B!SnvNCLw&
zNth-XuR}e^HykNQ=$)6UP1Wy*u~fCc#z<H;Rg-Hz$<G4l7~%6#&7mB{Ce@makE<Q&
zr24Z=R8S7@sqW93#siJ#YrKvF4fQiI_EewO-d`K5j_fFTEX%Pr^)!V9PqT1&cqKW<
z{e9-V*yJ3#!z^3~!dSS)Cg-qG&72pToa3G!b8ZzBgkn6;L0<?D)P2d|7JN5Vf2f8y
z_SYCuOB|DGJueQ&DVt$NQ`94Trez|U#ufB;SwCgrGlJsfGPSPym>T%(sqrf{wtlTK
zm>OH7YtH27>6#n(dAH_4en!=r0Znf8a-Gd}-0(ueDP7RmjnYI>1IFg?iZ68uI;mmR
zUW8hbda3q1)CuQL7Bcwidwr^!0IYc)O8!2pZ8oxKI#q+F7cHb(|H7h`@L}Q%7ueij
zcEhqL!;3-5Rj?hD;$G|#9h0)YOoWFWW_ZTaf^*;HiZYQf>ly80%o$)cND44PhyP>Y
zFX9v)_oC4z!@)LIj#g9QRn{wdTtWEvOz&NX8`8ojOJehpuKb!KyUmYI-I9lj3>O|{
zSp-RVKe67!;l+hc=Oqmc!F6rXB-j|48?*%dnkB3fk8}01rC=XbVz%M9&1{8J`d1Ip
zJ14kclPw4}yZRf|V}6#shYSWx1a98i@<EB-7$um7qeSJHG82Poq;d?N31S+YHdc;-
zMG3~pfPg~K`Au92$uQ6fjpKpp3#y}4n4hlW0eERF-4M!6W2!&H$Es4uQ!Kh8l8&i9
zhe?sC^K3Glt7dxTMy-p5?9kEys%f4Q?dcwif-QsG1uyNP4;Ah#iuVj8(yeS|;|3}j
zE5e?73vZ<GmdTe;afgvX7@vXVbYAN=kA8Vt2|d^obA~xzX418(@gh(iAKcGP+Wjzy
z%Vptq-g@e!MivdOW|s!h$}*0Nx5!k3BheI&Y$*z&El;HtOLabw7Xvx4;FJbf?6{=s
zH+98-IAVUtdkB{uQC`SiJO*oS#@JCjp-=RwxU~2%?=u{CsL%3-<g=Be!qIkx(Tois
z?!^j&sQ3B2HvrKUg<ljpqVbsCCdL!Z_T^2Ya|;*pdf&prcSU0+6)wyq8hLxm(5ct?
z<c&adER@MWl!IzUOm7q8iEj6)Nc5Ndp;T!bTJR{F6|(kmCeg@i5a?@tLA7Kxw(Kc)
z6)4Tn6MdAqsDlPmcpjRgl+b)1S*NJqNfTAS))Q4zcOSd{(e~yAhAU#KOyoqIh7B-h
zW0Xjo*e>Tr=cfUVJnv&{yX!Nc*+P^0Lr<O+o5wjb`ssenT$_;_Qb%JKeRLUQspaZm
z)?j94V(tR$2l1XbI%vF|e&^B3&Z;i92dm0e-R2=IQ1FU4UT*szB>$gBaB6~x^|IT5
zV`AO{=t!<AM|IH<ocX8o{n!c_5%vXX&VwhMBHM@3%Oq$}@*ZPQbE1AgZX?@V==MGf
zquDVAhA&V<;`Q9mp>}9$;Cv6!NDO5Bk~Ig*+Qrz-0EdpnVu{1JsB?7pDcNLpW_`;=
z{kK_@dCL_|<{UfNw-9Xc0D~fyM?Kl2lEHBwR@h_9)i3xbjxp)kkYOWaZu+0bu`&IV
zaqP(%N&V7tP>jkfhL5OFvIZ3#1{E9z6&wZ?90nCipFiBf^;Hl<Cl(c{ii$??ev-)H
zFv#IB$l)-^;V{VIFv$7zeAS5e@m?zt;X^d|5D7j+fe#V*vNycxe`OZiqdZC2V$Sns
zW6ccTi!`f)K=qR~t>&rgMLw~#Zki%`qg;J}f8yA!?m-D7<i7ON#_=pJyfZ|~C(4F?
z(IcAAbCCJL*FjK@<>c4FMy}o8!#{lfr3O<YU^w#zg^Kh$_(&T=E8E=Mbu_sHiCgv<
zxPoOE!woIY>CzeWK2J+dvT4q0O1XLv|HSc(TE+&nOszKlH`Q0h@hy}I2vM2$bspd6
zW`iRS^LBzkb{-{Rqp}MB#POcmV;p<cB%ngn)bz{ZFgRlst0Sx&x(ji@TBaW0i5!M=
zAcl`<@gY)th!P(nw3DxX*fT~HU*`NoL1!*Wr81ghSEbsbf~9rX-9n)2WtQhw?h}3r
ze!|R(Vw7Lh45Her!I8Vhmna8p55FdO7o^&VT*J>=6bI{39IQ!kurBF9ZHB&4fmD#j
zn$@AlN->;$gsEm(zd}jCX3;MH;$9?lc@W?r{LyAf)}zRR?qQKZ3mP*@T}T{f+c7JO
zshQm`p~uZH=bMH#>n7!vvx|js2Wo)e^*mD|U^xEM?H@2+WlSv3;kIoK4AdIY>r=^x
zxJ7sfLVpu5Gr&2N->ym07z*55Q^mNOT8t+v1qH;gPbG0D2nQ1e1p)*GM&%$JVQDk7
z(N9-Y7!L);T~&@;&AZT$zwipQpDV5rk4>S+cyP|;1w2P-*8_#XpMK0o%7uX3M&@$i
z8#cIZ-d!-Q(GUOm=sZ(E9KBP%5J&d_`5sR~))5yUWCGwB(ebpBF+RP{p4zNS59JPZ
zXpJXpfX$LBkai|g#C5JBu8Sc!#`fUK{B%=2aFA4rGa(@d<Gt(BPx3ty{xUf4ZV**O
zhy><8_@nRrmw{4=6HuThUWz}(f5M+X!7_diTt41{c>$BuB=rb;`XlN~4(9))5j+_D
z)H7)(WpMa3?W8OUw@}VIK6?QTPt1gb4IoeDyh*9=n>m|u(4xP}nM~pD<lIMc5w|XH
zAa5KD%paMLxS9D+Q5oQ={8t&cJ^vtmPZYesdLCZ*L?Ld5;=~9)UF}Q9a$#^IHsFOc
z2c<@(S8>n6VO3{)h{MyjCysA1T^+usde*p#at*g6jv*1{jh&EoVItFqL~{J72Ljk<
zlK{3$|G`h6=^2o%_iMECu#J;NZ;aX7XrJSStoK=3?}z{5qU&Gb11z+!d2Oq=8kMt%
zpG7%qaxh%2$r;Q-dyFR{y;Vit6yDa@o<EG&H1-!v<;|EeMZe-^jQX|OC~U3NsOnSf
z9?i3=SAAvN=2h`uf>Er^QGEEK8}70_%-VdIHUqoCW*}5?>{|Z`pNim$+RakFRfJ<F
zy!RVJqh2(nOMw36>p1c0srlSl%}*`l`z=HDR1%-6A0zR{c%{M;|HP-tBwl5B_}-qX
ziJMTgi4MM@%Pc#C>JH`VAK|Z98Nx9mdj+K9aD0?I5bISqzR#P4V<9+36s*VH6*$%x
zY+`HNRPZn^3(;TrlQ=*lJa3nw)Yy)>`Y=zAo4=r0>K0s5Nr&TYut*s)y_jlVw6WBB
zf+QvGMcVsz+uWcpK(-L~B6hdOEU|GfFgLaQr85O9QFstmOgHOe2THAQOvPxlm|?@o
zmUun6ARf;D*6@M?A*a>soqoomH0Imdz~-7QhU=W9KGU`jmFTHwOuY`XHtdZ~OF8#!
zSm}4}jj8XQyUO(F?@WphQ{lq|ruQF03*)oE_B60~FpaQsUU>+t%>9HG2XTvoDWZwN
zr0VK(BhB-C^uOJ(D~r!qHt^msYW9IMNM@@I6TDBv>%3nkf2P>rXI{bX0!^R?*e@PP
z&7tpw6fBW(`VJqpWr^J!S0fGuZz`bR<6g|NgDe3m&jWa}qZbUwqq0e*0N9Q=1mdrr
z9L!r~g>ERN(gqHE-PlX7`{_OP-BMQ!9736<6tB&`WS12$;kC}pIX{ALi}}0l5UwGH
z0KN{U(4f#tyWl?lSnSYi*MJq;<T}Ev1E$}D5oYu?{@nEl4%|I1$6smG7y#P%xKqS1
zg1TdneY}t6>SMMNBEV*-k7h@~(ok=k*EkX|1PsDDOqF}x{3!J)m^27chRgxNO&$6&
z&qyuc@6rQ*$}X3V61v2dpE2{{hE3GF4*^~olVe#|V3?Vg?;)|MoF12>LhMN=auzE#
zIX%sV7OiS<1hUqn7hJtA_qlUbjx;m;75v&5C2IFYHv8Uc7H+pb$4oyLdqig!19m09
zvrXbV8V7Ra5#h|h+5}CbiM+USJvhFesIi{Bbv_%{e1jVPC6v~cq9+Mz1PJQ*3e%vE
zvD*}jji#b<NSx4>xpf|Eah|~m|B~cR2JAFA5g<5S1xM`0a2|;sdn8^i!aD}Q36r$9
z!d^LFXq0z^;9rvbngL%MoCpw{8IqaxzCdL_p)IcqVQmBUzLL0+-y6^VfGyV$9T)mT
zp9&|Es(uSF(xNRkqo;Evcj+B)-HqpndZ~rfNE2!5S$4@A@D#)1(XIVDm~HZy^YP~@
zC}_yo?nqz}!-r4fUW_Q8Sq8Y|z=(5#MPz5NxEH|PZ7ifcj`H!J8yECO(T-|eiQ2sK
zYH3GRLBNm>yVWU#u*+?<nmCTms@4^#y(<Xe7Tp~^jkA!k|3}+f2UdA3{o_ZTY)%wO
zNP-54;{*s=+^s-@lK}PJzV9v6?=8h8NYOy?;8xt7;KALYNbzFDo!@6>pWXAE0QY;}
zKYoWcJ3Bi&J3Bio&uTT=17`QOd%K#Nc>0j*=Z29>FPl(-_!#r)f@7ogqdvqX6Xk2W
zJ?Mnd4J*2=Oib}{eb*F~!_vrMX*`{UyXfrC%)0Q*K8t!T_s>Gl51-Mi0PUC>=Kah*
zl_o@{I%Z|LoWmnlbEEQOGPlPv6__xmVtoc%rYG`FRkHm^4d#z{eyW+#iypO0!Ic|R
z?1Y>`Z(yb11sXKM7`5Y*fUu|Np`jFtjmBS8)qHq%fS+mp-HwXIeO41Qls;ZyBibul
zGb@H$vv&}DYH}zp7YN*5UJ-D66UjoAw;8qm>L&_Llb~U%g<_~RiG~f695c;JEoRaU
zWA0+GP&Y(F)NmR`48}A`jbdPGx#h`5*>9<NPi5syrB`3@F@sAqpt*bYg$}DIQVuay
zN20k#AAE4N;%CR<%tvns+y*<Q{#zNF)eTm-DuosJl^GM=#87?p5Y(vgTCo}f#e!g$
z8PQau+nXg6YIJDgrf<uxlu9l31f^Eqy!#cz{z~41VssfnnHXW8Wt#ddJX{9EcFWZw
zHwkeQdyu)t<C2k78Uv*|a3x|(BMoodTU!Ems-_0rX_rSKmH!HHIBk?r7npEMm@uae
z|1A4OLR_Sm>yl9Ya1C}#JiWvTBe=H%J9U$ckupWyvRG5J<dnW;eZR7|m8qe6b-}LR
zws@zFQ-gmNZ6$7NJdyl?=#6J8ffy_Kqg}$(y4|(M)LlM%TUYjpW@1<$$P(Dh5{Pz_
zVxBN#X16C<0^Pe+MVDieo%t?JM;LoYIhA63c?st?tU1%LM=ZQOQwzpdi()}TUp}FR
z=ZRy8yc%$bF_(6hB4DmKf_<*W5wXNuB9?fcqkT^2ye~<FW-kGcM4D3~xN@2jfttQF
zU+!Yw@H1~bKOmTu*_^+FO$%bvQL;hj`Xzebj_7?kmU$JoN3v~<vX}T2jh4+LxUEt4
z6V&%lNGd#mL<*yINm%>k<1&U}TY(8-G=t~yx&r}jMsu|0X_CVaw*u2^EzOLk^UULR
zD^5sa`gFqh{>(|~txHwZ=~B_nIl{#zH}*22c&!uo5vu!fFV!ySY65LLrg{u9-6Xs}
zj)Tkvv#)gy3PDGO5~UDTO>8N(Iwg~e)Wkk8c^}%AmuD7cgeLYd9$`WR-e0}aF;P0P
z2erE@)dRwOOT}qM$9R%jAC*XHU+4LwG-#EJ`))klYs~U1N-WPBIB$XVq0$&$IHXYH
zOogFi_N&&zCRf&QlqoE4U^PgRW@t>_B0OMn%`szOGKT6F7M{%_Fl^OPJh+Glll*Uo
z;H(LSpsv_mwaggU6hWm_%JkCKcAAzFtu;qFTe;gl9UK4U(Ayf4C_`lJ6QAoiH0WAu
zKZnK;yj*Qeaj|ef-eRV=DM}Y(DCMPPIICZ{&wSfliZxA-<7>g{ML`rYIl@3`PC}(e
zHiiL>)eGW3OeyJZSS}oepefsChA%Bu^`PQacueGSL1q0T3XYa2!&U{2ZxwtcCt@1N
z{c14Qa}teb#%sg)WqCJjd^O&fN9Nubo9GzYCb3H(;x2K9njUNxJ|hNYZOX)iF)9(7
zKny^yigCCDkIrKsi*p9e#msPSBi{ul-fBP}E*Cjz^QVL;y7G~0{%?`KmmR7%deN()
zyhC@g9a+IG(~e&a3i#C+Ysi4HfCw|z*kWR~$O}vG7pr0&@aGK;_TS);4AIT=TI9uV
z*cpoe5oQryh%x+<@1<kOthXRcZ|p9W+y{uYj9Du-nV3zYpEuF;^B&~QG*T7%ujr{u
zAQZ`l9;DI5U2L9(=b`-)&Hf`vl4ud$5`pi9*F1TK!PUZy87gm`gjs5g9FlD`3HV(I
zm}!hz4n7cw1rVJcOF_(c5K?i`&f=f7Y;Hj8f2s%}Qb(-UOrw@&HV*N@dEtfKa+vb;
zc}O#+&wK{bROuAoP2?Q#y+_V#->vRtMe)-!#ceCu!T|?PZNPCI#f{cxq9T`0@et9B
z^_@@mTW<~6g$u5jMjY0{lX{FXbjy#Y@D?VUePFH3B+<z9{gv*)q06!1-0~kqH&Qca
z)dyQ5B6VCOLaF0$Ii=30)X4(zv*<-G!9T<5RqD^EF@3#U0OTtCY_AEJ(FA&!&uLo7
zcMEAr=P2enQ@e3W3}pI_!dxdXlqdn5Ad++|2DgP{@|r}$rznZmQPHf{%HtZh1j!HS
zX3X@VE3Ae{PGY`R-&p2jUk?S|`<WXQB;yXwix1emA3#MP5CvZ1<koeoj?UVjiJ%OX
zF%hTJ&!Ai1mixY;3%C{qtPQ|uS^dO3O~ov#IJ#yxs%(O+*MBya`Mid#*EPosO$)_7
z{aJLuvx0`#T$e9-M)d4PYj2Z$uKQX1oQ}BRDQ6o!&Y}{uDDx=Q3f3mMq<wNXV(o*s
zK9GK?+Q@Q8%;(yMS@?aJja>aRPSM^)-wWWO_d*otY9+tSv+#c|0nGBjWL?<p-ojW%
z&xp1#HaIWRO6VoIu71h;zBezGnGth&rgjo$Huh)Zf^if>CIFePQP9>{m71um)4@K_
zWIU0#kQT{CxNhS*G0D;VE5bEnwv_!~JmqIRy0aUM0c>>jMm7NS_8CB*L<4;IXo61Y
zyiSPLY&MEhv~qAtToaZ-i}2HFcp=p564JQ*Ggj*VKpFrJyCy;S%bKTKv-{|%9;p-#
zDHL_j)W>g{<zg%(AN&~)gdfJ9dH{=EBd~q^pyFoI+cZ6w)@`{Qew=o99{0WsRU4PR
zZ;<btYmT4%FpD*#G|TFx9W5?*s5EF%QK!INFm8Ut_zQNT2yr7f8C2e8$OHyv3Qar5
z90rCjDn8B!xsps?bXEvysmx*#1Z{^W0xcc}6Ph9r6e7Z2r2v{jR0&=^6Dkxh$@&pK
z0#hd+;+WN9*CCe`L7OENEgt9L#?-aYlm%wMN_8Vhava-J;W-g5{NLc0hXmlaK#@@u
zp5XnhOqRwo3dtGta)p~#L@xp%KUoo6h8PKmPTJZElP(L#JG)|&Q{~DS2v@F7FbNd(
zLY8?!vfC^ORYQo`_a+?*hAljAcmQe;8kT&BN6krics477_EUuy_oU&JJUO8@<}EG<
zad*rV%t4&hOQSaY9G2#3K9*Mk#-M#M=KF8+SMW*yhZ^3L?PfL;Z?@8JG3aAqAYsWs
z!jb{Q?_<!w!a%~3frKRkhTq5FYYPJjO9m2_3>bbNgK`!I5|#`kEEzDY7-UsseSDu_
ztXe+_tCvah9nwcSl@M{05b<J&Ia!K=+X(6@%wqB^sP^b?+s{XPfA425Dh7xv1H_d3
zQ7&MLnfgS6@=pG|c*QBvSmSq$ZseO1xQDh)^3NfzYC`(>$W;=p-j)Dd0m!YML)_HC
z^iagcfE#KggjOa~hlL<&NE3*7f!Cu=Da;gVYqFvsD|(1_m~}G_`CX##;!A!vXgT|p
z-#BV$x*3-Phao2zcyLeYPF-%`0Ru2~-7&jY%zOQ*KOn7m%zL3;S~0RcRa&X;C`(_M
zF75YqW?HtHyYbv}x#pNT$cN<7x~NzMeVt2m@>aaLhU(I~<qs;fw<<rVoGx#3a6zAr
z5JinOu*6KwEA1~*<6mwTU9Bt?+p1vEbC&c{QR6UjZTzX-N`4r%LQmYxIBLhVC0=QD
z{0>K&-E$o$+ShqY%^hN*a-ZGee~Z@X`h+(3?1ONh$WL?{lxSYz25zE2gB6WFji}g5
znM;~2MT|g!sl+_+nx9alxKvhh3y6?q_oK<9gs=0Im50W=c_@@&3zR$p=@BON69q>q
zg<)xf&Ysf3B(^-BH|HnM+b`1utNMA;CxITD_&VTOHKxbR7t<4e*CLa1ytJF~rWb=4
z3N2uI<>$R(4-ICR8+HsE-x(f@N*Wt4OEA7VJk?uEPwSc1xoO3~BYKjNza%PZNs129
z;%P5_vsUP<S`iOmT7QrE&F{g;b4*6eJQy`M@)t)gixVTvD#c^g!D!kFV-{uv3>Y<M
zMpCn)Vh<^hVdK3n^W_{h^S!V0mk(U>MS@FY6!T>ZL&|Q70uZ<WpKT`!wUw$%PsN<K
zhh;;Mc|nnI2YDlB-V}sbFuK0|WE@<ULp`$FOVgvSDQ0LO?;5jsTgq7GU$NMvGi)Vb
zD<zU3UXpwZ#Q5Sltp+^DO(iT2UPZ=>ES_q$L@x*F%JIeB@--0Si^nvR`dCIs$#8VH
z*^vO2=)ur-@aJeMKd0!>{}-=mcfo5J9e$3kKE|Z<mgw=&d3+KYcNQLVqhGwFaqdeQ
z9e$3khPoapbC>o7U$pSWFX-NW!8<W@-GcrqajPhaMo3@u=XsI-_NO!(!hF@m6`p)O
zh|_64em+%2DjwpEy&{|q5!qj6$FRvkSKtqLxJ(ZEzN0U)>WR=zVjBy(E1~z<@fqFB
zIAniGpE`pb!?B-2GO~$Bnq>?~Vv35NY&3Q>DpljEYLdYb^E4%I5KDjp5`LfyfpD|^
zAarE_2HA&ELc{DM@B*MpVVky_>X0s}6aIAi#@Y2J>Xzsy#%RXbAzt=)W;NM9lX*&#
zbWMU|?$|br^Tld>pk|}OG)VzcXMq|p(i-)g-=i6>*8y;cjtqDF9+kiwI+cZHF^qB)
ztz0?mCjBA1$VV3;lxygxJT&}lm=qwrWf4jUl&_UQmC_ZR;arYyY(}nd$2Z-KGR*<Y
z%>1n-EeW}*V)2bCsj{8HPVv0Tc{}gN#5g%Y6USjXGtHnoAxhLxASWr#Y8t+^64OX{
zxezQB9xuLGy#`7jp|$~1o^09}q@VtZ>SiF_*p*~ttBC4du@W~ZMkVf7+X2%~)nBY`
zV$Y|2AaxsRsmPo=6p5M>eZk_`O9vw+hW?a>A(XD;?1lnr`A;dKN_C)JJnxq(bzl+d
zpk`GTiYuD}E-9U5i_;m)gB`FuxYg{rwxUncJ)JO8B^UbePc&Q@xfvnhY(TEdCeMN>
zeI^nLW7v2wSJ1~<y{ng73bQIU)GU2MzBQ-ZT@?yAr_`6Us6sv=A>a0pQ}0<qLZaRm
zC#p(zaP#ET;M4c;k@C7Fse;Tk_*9K(W$0opX8?2-FpcKZrlCEMYCEJZJ9?UBT~WB>
z@jYvqG%(1N@z6paq9)DVLR+Zopj7K%k+%aT_Bj<a$V_b+cDQ*rK!tCB6`5q*Sisb1
zf0^3dd02QiK$Ft|Q?wm%k2O<c2QX7x8+#A>wnhWwI8o&oOIL^NcpV<sZ96!}ZK=#%
zaRX)XqO+AsYic5B!(TI_P8T_9*<@mA@dmN(nVMbg5YLeZR9G?%;jQBqhN}OKai{D{
zJOWy9098Z!iM%=vmcWe9y5djQpPXI3Fh`c$R$1cnBL%^Qar<}oOgu6-r)YiiM(}_C
z`yIG`_MBM=sqN}#A7T$S@pOT>WPuRK<GNzXgK>T4HMK5f#pAQWVOAGKYuLhJVBrPL
z>~hBVkLWZ=ddwZ|MWOzprKSCqt_DxF8q!mvDLhU8%^n%^2OX2QjMktncbL;Ku?1l1
z{BfiZG~jAw1m$-A@Gln5A+~7-JinHUnmUK;l!>L80fCgVl7+|y^4?%6cTVv<eUU6*
zmjySHags#+71@VK(0nSY66C2=8G5PQ5>U%FGNWxi0p^p>bp;Zobgc5IIOQv#{43Ox
zO=4p+h}v+JKy%Zp-lmeNi3`7~WO>|d?k>A$*7AF_pwSWw8m}Zm(&Ddpq~p1$_j7%O
z68PwU2>hSpG;D>oUzsE{e}*Woe-D+>>$3J;Jxs5^YCmPDxM1Q9TQHIi?oTV?{l!pP
zt{N(anafqf#C%#!;aY(HLe>Vg>Ld;fle}<o8A;@w8^Yy|c7BTvBf1#iPF)Gz^(TNo
zb%WlzO~Nf02%Kc+I{(a$XMU57-;E6h$;Op4yJm?IN-Hes+{B`eG@^g$AXdd=<E1-V
z=5Qs65Z~Ln(fCN<tO!jVxQ?1(bj=y*OZjWVi^sT?H>-XYk5w#rmsfFQqPTn$%qY_U
zN@_rxKqU$P748W6&?Dz70r5*v1hmG8ki-$(Ei%gXpiY73eR1N~$W9+5aTW2W;wNNJ
z4%ai2s3IAo)oV?g1P})&N@?gQPD>-q+@re9EXi#&>5S_H#6sHQfR)IF-h1g%%)Q=e
zE_a2N9I~+Uhw%Q`41#qYM}PB4z5Y&|Fi63(*1X_Jp9ID*x)NfTi`l6$hMONCi-hIS
z36(p6@guIEJYj!DOwkR!a;9SL8>m!+#RiJRW|S#7P$W2`OwnnNg&N@7#NbIXO~W>m
z`jtJhH`(VHNSBMv_j*9i2yqm;AUdbMSxm;#e}&L|_#1H;eLoGuMrUuxCrV@O{-EOp
z;a)g)IyG*mb1f|-to3?{OBYSLmtOq@aQ#rVG;Syffa|ZtQ#bCZ=#L$U#u)E4bdkgw
z?^C#|RI(tU+!>s$1!JojD3!Pfd-7N*OB}bQ4u^Z4z)}m8`N(TEs}NjVdCbU233~!0
zWBPb;V9kn>ppD`p*JKL7L@WHLzeDYF_$z6SeKmbM48YY2yySDuaZ3U{o&B6dcmR*B
z!-gL_-%w|eVQe>;ZaYrkQ1DFL%qS6FyBV<NYMRa!PRL?K%#I15R>n%leL6Qe+UqPW
z?LPO~AeVNfcrd7eT2dMY7-e8ptLSE*=D1Jwm=n%Q9KGZ*gR7dEKm<26)Yc%cVw+C3
zIqT{iy(~&fdti)^+B@m>m;u@7Wr+i!C<Yv&heOoVUcQ4r?2c&@C2gXlWh*qBRdG^F
z!v`=wKz-UJ@7TPL7Xjhh=5-K-j`DInHA(3-x{NLq3S%PYFAm)Hf%yU>FdM<1F}OXa
zoP4g;S4B)YvJ(bioN~OvJiCNXLQ)f^G_u5CH4!-jL`wh_jYI6@-kmIn%OyYeln#eD
zsS^x#y8eaDn=@d&vwP5ed*&y!g`_t02?G3`OM44j8Cz&OF^>N^meJ7mJ#i8_4xR8r
zoJ1KXQO0q%m}2o<X+wss0@}(7$+AgI?gCGj-z<Hwg)ju#4B;?K<7NqO4s&ZxjL<|S
ze-6**Ossc+i3d7OC;BM<?sw)vf_0Pl`%(%-f5jF}*$`&ku#p!!k%%vhMxEg6^oi;F
zu_x8Wp7wrriEzhfNbJx|>iT?#Nu&b2BwV*%0DG7tt>V;cV+n23A%Ft92u0qZQx1*L
zQNHbFiPEi?-IF7wZqO1q{Y3R85-@Bnppq6>sDZfRd}22EPn>v9tb@_p7*F5D<BjRG
zdj=YVsTpX9)-6?$>DIA-{KM(<hBhkB!6EzCJk)7zavx%d=e5wyv)LgsM{|geb>bz#
zzT`=o<oVOFg=9GDJWtMfh=QOexQtS!jF|6?@9Y|uP8^)w;1Ul8hzkS6he?Q&KprB(
z-Y<)@Yj%?tT*(W7<OM+T0-$+im(|H5KP{!~JO%hpiD9lJFEwVI1_7J~0i5q7PC?aL
zcgCp(yH%GTR+hh{qpM4@Tdmjukn8}QcV4C@|1z{dgd{jmap+zPYJE3L=nr!tZ!_qL
z)&z4Tih=k-7iAHAkrp|PXj6I^r=9m{Q^0-a3-)v2L3*bX%?S*MGV-;K7=h2ys`bP#
zwjMM*tcSw|9gW`{zd01<H^*L@rhJ7BbP6>NF9j+%lWsTeXdFS3l(trv_*SRD=emwK
zmePUZZR(ctYfkU3E>w7|Hk<7{1f%ATnp8{VN_-(=rCQKqt>4kHzQ*zeofJzkjyOik
zJ55JBmjZZ$Q4w7mP89pl<uc}g^A2N>=eK`iq!y9i;G~D9D*rDG<bOx-6dpD_FR}aK
zie}NnmWL-7m$)|_JG*|Dj_qiuJW03@_%=B+owTb!UM<eHXGwsj^sD2gL)yYNiiY<@
zjHza)!=-GBx-bl7Rgv0wdP|nHg%Mpqw}ifnI)Kw@s=DVLn1+_K6xuG{k+c6OJCtMC
zEUA>_R5V|yJ4-liI$J?oubV*%JmQQS-|>JUoWC899FA_1-Yi!uU#;gA|4EZ<5#lr5
z%;kr2^M{khsmI=7;^j*Krf6q%QAU6`q8`u1*8AL}^v>WmYgIlraZAT&joxz)-4!iA
zL&RMjLeuS;^lUIM@I{yj(-k6+LwT`i;o)_3%Z>`_Dr!>GlNlaf^W$HIV~NYVTXyjS
z)xN--)aTiS-LT<8!pT|zbWr#o-BgvEhRbq+n1O*OSGjjZ;O65W-Pj>|24oDhA5I7T
z6Z3Qecy!9>@-tVN`Sw++BjM9Ci!>2Ehx64BOf=iRR1wJnP=7_I0}?b(0ZpLs>IBCW
zbAe?FRb5QTIrf=|eHbkRaSPTX2OEDo`eERx*s*Kj$xATfX(DXA<cUwLDY$qYh@FxJ
z5X?f3YQ%UgP9a!lq2i7oDoCEc=m2`Xb+O|R)gi2ket*zRn+L=;m&#8+Om8<iW6q|i
z$oU-=*d(=|M|3Xb#W@PHj74TrVcy?n;PfJ%`nDn+-&TMh9f2alL*G8%mI57*O#H)q
z+4DmM+L+@|b;>5L>I`7*0{Wm6CW$y<vXjPX(86DI^LHYSr@evm-iWObaf=*9azuOq
zb3{CAK@m|9?iBCn6bDfAGt$1Eob~oi_UtqWYL-SNNDeIdPa2eVz=06DiQUwwC}`@|
zz<p-PMkkEalF^po^C?+U@b`hJpsA=q4vlsGaL{JN7QsO67h67z(h5ep3P#s2kgu$s
z{o^&HA|(p`M+%xeEK%kyn#NWxavBk3;nXtZchpZej@d8S;i`PNLw(TL_~iHLW=bU~
z-CmAhVHSjOE%B0e(bG&Mzh4)fE4B?C;QTg|3c#fiIiL%*Exvw%U#Rzd-%s4rd5A%>
zF@veE7>rx=;Ti9kL&Ll|&P6o7LzypfZlMw97ULkD6hCNOBHtx^p~~PJxMv55Azq`r
zBx01;7~G8hR?;46CK)la=o@gBOa&&n$a#UjTQ5kyK-@3}(dXeH$rlLbOUs9zKM%gm
zjhLA<l$a^`;=5vz^E_=hKQH+Lal_zwje(Lc5X`r^$yA&_Bq3TPYL4l}XLL{8QpYN~
zAkH**p1LL~Ytr<&9)ksh6yqs9SKI=(cjJu*y7@EBIiGG9TI9S+(?2(i;k5UV5~Wr|
z{ltBpF3;*>Eil>0aBQc3bGzdb1_vs2n@B$_V;MGXw<?BwV}q6Zyw1aJ>8QeGB5CYo
zeD>q}Le^5fZpK`66~=i9Ekb#Fd!rs|XM6PEha3TDWV+kHmD?HPkmE9=zHy^cX^Uxl
z<Bk(I1+|Bz;NGP6%w1&DvgSZeB1>_qE|pR^$Y8=LX2J#8OT#?TTgy@lr8mjJ2l=Ma
zxJZ5edyu3^5-bA|34h<)U4u*>l~FxiN@+H#t4LD?;$AG$tcBX%(oM{j(HbbGEIEpi
zl$*jt@SHoYKhSJ3n1)3dm0<~^9iwS++S@agBsULU6o<a-VyMnGojwaIk3S<EBgpn-
zVR;ZVGs4S5sZ2nH3AMT7(@a-*30Ai!-V_*tN_5QWdB#kkm?_|>zDX%@3vb$v8eW5w
zUP=bK)Un&~K2zK6I6x#%9I4Ltk?f(*gl3$W*ltlkdt($%(n%8uGVQ1!R|J>a%fl_V
zm--V|A(I#;M?1QPA0hc|wg^YXbPvC;bC=%XB}v3GlNKE<qz<D!ZONU%MlKk=H(17|
zzhaN(K(nBE!|^A)HfntBI)E0@Ay3jQ2>;fE`B2vf(m7f>yX#U65S<J)<|vcfLLH^q
zaJ4_H^rEUsDR%{a^o1#QR{Z}0uYRJDjzg<-QraSDb~}B6{+&J<#Ali!8^o;hwG>jt
zlgHaMy9=6_y0f4%sJmqnWVeuD&aMxz&J`KQWK=opm9rp;W_N{{*alSD?XI$>x2POJ
zxlFIqM|F+vW|X*zPNx)876OYFM(t)&h-MujR!4rp_^|zvosS?%V*YE1ng_jio(9lF
z1B#072T_xZj*ocU17ggz^wH_yq`MJDyPv+M<r`{G=tK1f9nP2U;h=)ipc{W5cm&c>
z5#W(k8LhjHMs>JGBm8Of9SxKmu1#i885(?9y&Tyg`s=6#U~&IMC&ISo8IZ^UI=OTm
zhmvdgCH{PgopYStLo<w91Bc7)O+@qNDtuasjAa|Dybhrdh7GT&8QDu@RWHis-Z>e^
zTycqlNkyr3(|RbIdOrd4(_D*<NP0^|{!SztEkY4dGNtRGWa{CPGV7;-$o_{)iSp%z
z#YMxP`k<KV_){HsE^rRZn^eg%vO_2YU6qw=lukCf<CGe65>qZKj%-(-u}NhO;%#aa
zWSR0L8jsk`jiA!VKxwu8j=nNm(?TkSBW*r|C}crmhE9)Pm<yHZsqc7Zx=xeOLWnnA
zZJjH`@q^6>33Y;-5n36T4;sO^un}Jo+o)l2x^9?p<&gk%5_dH-`eq6OGfKn!iHs`}
zqQY%yWN!$PhK*PxqY=Gf+PX73OKvgtX-Zz>tXf|UbVSB=#lr<2uIw^LkY$@0V6zMy
zMaCmV9SQ2lIGI>nd3efKkx@<IY!+I+?38F>8F75K0@0eKA#P}%Ibk$8trxnvg94F4
zAO-1X5-A;V@3l<M)BruskeipL3oxlsppaGiSDM-hc1}92<j<PR;btr{3_1S7hd!lg
z-T7z@qD2WyCagitWso^%?!mBy3^I>KOWEaLfy)~iGWVpGMERAZtxy>5SNa*ApZm)i
zh{so^(3j#A%pl9)Id&R~S($0r!WHu`Mq~+8pb~0>6`GV}Y_4U#D4G7)3J1hY$rp$@
zG;fuR0e31*m!)FB=gu&6ALgY5rsa{G+^a@#6-HnY9atSK{<)SqQZhx405p3DP?C$v
zIu3Pwm|W>#{D3Az9<4^yd^()IjoR@c>~3byDSps_Sf?@a7X}_3_hAz&FOYMcF}*${
z<~x2OyHI)J%XN4UNhzu2QoJ#^j`Y+?MhPT;B|Ts9X8&L9BhB&{X<z5gRn}B2N$@;b
z4Ac`tNkHMH=+gJvlmt9={sGTFC<%DJ!af2V?UG5rKN2?{piE{VB_^<>B1-E#&@ruS
zyzpBHIw^#qr%@ta>k}F+r%7o*=*L%xu==>yXQraMrr}jEDwUi#xgb+?h?Y8-JC0~6
zZ!~i9Hboee7Dg1XX;7$wM>qAc=Hh}N*g4n12#W#~g-d6wc{`}-cz1xuwjTN_snvkF
zn^A<DoHsKRM1?O%6li*6IYS3$HA}hQiFTcqqg%ofa2Kj#RNdRdE@ZoJgi`B*%eiWs
zp{l7AT{Jn1DYJ}^C|6H2ARCWKEPh&2R*4<-QHk-Mmd?mm=TANJr78Si1%B9MVSGXq
zx`Pu}GzBX(0Xa{oEIXOoW)R<g>U6oid<?CiuS^_6ASF*mfRbl4rb3L-_JyXQFSIWQ
zg2{xNh#Q*ard`UIl9Sk`86`mMq_6PjpFiQxFPIWbg81|7^no_dj=QFk5QTfL%Q{Y3
z3as0R{x<DHlqLzv&_V<O>o&rlrd{!;Yac1;yC`WT6qHFu(>C~%{52<Ou%uRg&hIbS
zK*vtguIzOE5o?t#BRWZ1uRx_8!`TIM3kH28U?iB|#M_9m)hiXok?}`d$fn|RY3JsG
zHhZz6(o>W+@Rt05JuqC?Gc!tdUO~jkKu-j*76tX)aAgs>tZcU^a-11}MO!5U#^+^~
z5Y0i|{70GYkHe|Fhhv6WCavf#<Vnz75|N`(`VpHRlCaT&$+ao6G(9!{vLGqjT1II7
zPk7V~V*^#=rc!|`-0}DdCyIx*qcyK^n?joLFfL$wamV-(UuXD+8)>JnGzycy|2xmO
z;{6};AU5fo!#psjN#<b$h53GGD;NE}tpH7PHcX_7sl*$qBecb6vF%6B@2}g8kG^1&
z`@;AcqhxdD0TIMVP23V2%CX+f3-T>fuwNV=#H7XXluxjs99}ZoF9?A}cQ>_4w`V0~
z0(|15F*d<AZelHW;ijmMa;x7Mw!sv-s6~e6;R1!r9~AxpT-Kb5CEOqEIY^D??D(0Y
zxE-;$vJ&c_;Pua5H1*w!_T9C_UR(6CDL7b-39eSgBV#p9P42@Zh;UAO;WTke<1U_h
zhVO;faM}+zoVF&lGWPqV(Gz*SznDtj)9?FPQvM%g<$o}~OT=cNM>N9<Q|IIok>)-x
ziP+}_=C~Zwd%urFa59NTns0A&_c|w-XiWX$FWINNZvImy?(0_2`=rT=w@6n3MpEGh
ztuuGWL?+9JFBX!IQKp1I?SnEH^}=g_K%@a;6*izD)++CVw3!Yh2fc^TaduqO?!(yt
zYQN7W9JB^%lkYPcB?I*=$9P=Y3)J|Whv^}6pbmF<jkgSddflP_=MvTb^Vy#>YWC->
z0Z@?!7-j09dAf%V%<-~2ua;c$ayhO*#;a{q(6|)MYZbk5f6)5`Ijn5F;6`Pd;%4yw
zBV>{7JDBo!u*_swCWf<ZaG?w&O;)9W&EqU{va%K+*i4gQrjNWp|A@>Kd+@yQYF!&+
z49W#Qvs6G#r2@ndpOJJryE`s==E6b9exLPpUB-G84Tn(4z&}3cHM|A}%4@l1*Fb52
za(0bHH5j$1#!(Y>w8mM9I$L8-JxMjE-Uh71BI1U6OB+hm(uR*4GU{=|!!0E0aEr@r
z8FjhslXepIq+MEjMy0h+CzC*m=^YNkB*2So146y-u%i?EcXS%@kt7-MQO}PV)$`*A
zA4}AOk5_%ls8ydHrvVKZ9shLXXN(&88QT_6WLsc4`|~p}F(h$DnixXZ0+Lb5CVVMl
zPx$h$uZYHNY2<@pxN!1_?Zb!rLD#ttq_@gjje?k6MKwY+0qKwTIy)G1jSO01IYn>H
z;>}|3NiH~N+6`zAXYgn9KEtrp-R1oMXovp?)=D1nFEgu#4QB>B;*Et@v?b(~vllHU
z^)dz+J|j+c7ruM#*dIE;*h-hbZ1vhjCc2Aufp#?Zh{xnS7K;OcTpW0auEaisHwWQ6
z6*z+4)Ekj^G#!o|op&H@SQ!{Gh;C;Z6gRX8d_#+Dr?1=XC7+js?|I2drQn-XYIZ63
zW|w+i3Y5=FO~=Jk#`MzLN+WDr>3;F>^^0E@kFa&|=gPo$uFTQ0@Et8Xs2oTJm0M5_
zz6Is_CLpYD!sG-XCnszp-?oH{<hz(~m3&tddeL-6ukyz~fbaMRf6xZSKR#Gh3%*sg
z&ewwPe64G>kd<q-me&SydF`z<S-iFO9h$bhQ~N0)pVl5*2fnd&{;UJvpLO1l?@gV7
zb>SOW_jl}CH-4{si%w|YYLeCz(bJm#*_0@o4*U?lfget2g%l>V+T04h&8-%;M%cpE
zds+jzr}f-6@Xc*=ybZ#Rw;9+L$boHFv;}fS+gDVXUUkS!fiE*<6|Ky!>Nu|xeDgZp
z=?veU&a*#)Z}vyKK7w!8M~6NFmqQ=@@iCBpd_3|KAV+?(<`ek#esb~?CmsqmPJVLu
zQ}_>mI_(R4vb(0JPdF^3DBB@(v%;qNVfl@)>VNapo5a%6952s_PG*ghFN7B?M;}_B
zLQx}e@3XvF>5A`7UkT0jKTMVFu>V@Ra;CenHv1Nuz+9PQH%%B$&%d5e-yMoS7jO7=
zxR-A1EpxXb6F#Zfw-N(0Dy@*f$SQ}cFlOZkeX26hv-+6o46Lhh3~eCTPptJCEgyj8
z4K6ld;9`TT4V*r&(A_oY*N}nJE&3*M(D}s6iTq&Bw3hQ*La1FW_qUW%k7>KM9g`ev
z{|XHv_`Pc1y93kq?l27PAut0{#-}haK4n%42i@=Zq$BTx`n%J#&KxwY^X$$XG`sUw
ziP_pY6Bs<$liB$%#+aHHrK_sODG=*gfrU7JV>Hki)XLFMG}a^nB&93hPX#CfPh4<t
z3muFnNEdg<6MkDToLG!dl&UzbM_`S7oul-NXotLR<3@Asmz><R4UxtnuUlTUDJlyW
zrwi>gMJIsbvDH}8X^2j+VI!C+GiYPn0<AJdT8F%)CGs=AnS(Dbzc7quaihmiw89z|
zhOw{o(AYYxusaNCxm091KZN`R>c%|;>4t<NC5OYMu%Rp@CXy6_&g|f8PI*JEI>0kO
z2oo8aBd%^r!CNgnZn^(yzt1o>c?S&-iHM2;q9fp4l(04ChHWCm4d3hUNU@cq!Hy83
z;SnxTkz_ZtWV{^`Uw3#4$cdqCM`PEgCq6~RI`QdQv;-h_g_)I=7VO}4n0*Gu)5Oar
z6oQtC=(2hz`V1lrGYRSH26(TV#uY(V3|jqJf{~~bZ~qEKj}LLgFt9*aEuHSZQTPbN
z^YC_*N2^pgc4E;4fg=K6Nru1-yXx$4F}rK~*RrnIsMRySxWwnWRiYOiFkOa4vS4=)
z2%+(l^8!+j62qF8ApbSPL{H5Q+if~xyA780ld*yOKKZuMKKPEtUB_G+x6Sq4PM3P^
z_B~9#!@dJ(-`L4&7plQ`spiX?@bzw#)&joSiJKDP97yWj5>D@yb6X;8VavyD;M?48
zaeFw^J6ubK(?4Yj^$b%|wxqzfvg6^7@SW&5xD$MPI!{3B|Bm*ZtDsF(sjiw55rq2h
z-nasDq|e5`?04-sJOX&j(_Q;u*SqPP_i6FYfN6<465kncxkLZtcLgYwQ&TcPD|iJ}
zuMKp6Fg6+ZZlt^0UL;Lx31?BqJsqjCxy#30be;vLip|QE3}^+uF8ReO;!lX{jsv)}
z3{O}cbxp$;5dcb(Lbm$$#8oOl9IAGz8Utr)KB~#Ui-y0pU|>q(YV;kT$xM2YB!eI+
z#h%^rZW~6dZ8sNP21q7$xRA`io8)!qDS)Bu5beQ^eKCdxVq535PY7_ACHZ7ADqX3(
z|6lT(fuX<7?;PY8hy|Qq0G{~;Lgp8M%r5|$UjQ<{0AzkC$Roc%$ovA3`2`^J3&1nK
zK*;=Nc;pxTo7@4QG79&-rEIa9s-(%P(@?r|kS9Baz|C+C!V2k^#g0yJg9BTIh$787
zfi{Ita8juwfV98?ve-c(a}VG}!_|$LW>n)jO&E}BK&%s7>;RM+-n61(2STa=z?<Z8
zC~dGAmqNu345@)IoKGHMsj(D~tO#St*9x9IRmHc%dk?Sl^>X!hQHE9FJ%%81tfC}Y
ziR2_ksr_2#Tb(6l!$(^_lF-YKdVS0zl2af50RYV>{j|O{z-ast9crk?gw*FurLU!p
zUR%9Ln5|y>=&R{v<-S$m%&NDV?mF4?;h!JEdC+WDb2x{ak8cU*N~@!-;p}WPxE-8r
z?XHsZqWz){aPB5=>SXWWt^yt_1*RMxa)}(ef#VN3Y+f)PI{VVHMqeY1W{Ng?9ib_r
zp{}uXq2bP|2dcvPyTRnfaK^M)*aFVJ#J>~aOiG$TM{OUqyh01bi`%BtZSljBmtfJ_
z*pc!)#r+j2yAG1aLl{#)w_^zvM|2y<vxQ%R>6c%lA^$p^Ccyr-Po(9VIgWMYtaD7J
zdpY;Ij?=xI$9?XT=uc>p3vX^#ORWavqK0Q1!#Ue{GtP&t#)*d(7h1soGI224BKQX<
zO-_RUOwz1YaAvhy){4=~T1}@9kvnbAwS#l8eHxl2Q146rBN_fbQy!!si3cffkXfT|
z$JNx+Jnb|RpY$La`Ee$FaAd+Ezq^#k$C;+XdjIJs?rJ3zKsp7QVD!_+&J+JQPj-Q_
ze!(%2E?QXZT1)qSuJzeXS3m6bIYho2RsXIEXH>(7SZX&`x7gDH&fUa;NpLnL4Qd7F
zw^jq%z&YG@b2~Uol6TRf-u0A;9pOCwX#U4Ez=DM0ycUF4^s}REF^{gW+2wfYrb&dI
z4Tytbs--uDBL1RFQD|V5B_vsf$i*^`I8ZIc;kAUC)n#QWMP}u2xxF1>RIa<9%Fya;
zbZ##-B5n;+bHR-Wa-?G5cq!G(3*L9>R>VQRzxl#hp6w|e;yoMuhF-buo9kFEIHz-^
zg}@mX@;5p2L+6LSuj;)w9o+m&=_Jc^aI%8ZNtWp(%XBa$M(N-+V@fAkrsFwc!Qf9x
zU!BI{S$?AL=c?TqKwBmT;1-$?+>@MUl+I_~k&#(o#04JD>@iN$tnMSxo2G8l{r{kC
zKYs-L8SuUceS;R@rD$V8(5j&KkYtg@t#T;+rCCgdja$U)INWfdJH{2ilJ{39y(tO*
z5!~L+z$>3Y=xBhMo$W7t0|Ph^d_S0hC&8JR-~(n~t^xRF1281ym;};8(?bbkt#B8*
zV~d^sy}NvPZFeR_c-ozdi2*VQ2B@eQAfsS_%z^<bFb1f|7$D;yz$(I1^~4**c((wQ
z_C1w00GT!bnKl5KHUOD60GT!bnKl5K_C1fZ?^!B=r4bejKU0>1?U0z%avh;|bW+gr
zAUMl|HU;4uc6-nX@|_48gKRJEZY&Po5e)z7;FsjQ3?7gRAC14}nx2d6wy9$?gJPym
z;4bYpo+s7_I7eL<>4^F3fGs%nYRn4Sg%c;n{-E?=IBSCcAm`8Eb-6Hnwfw9)^VMv5
zg?tbchqG|oz3G-%0C#;}VxAblxNPT8XaF_`UxxGmZUnDIp#j*G>zM>z=Q@r;17<|%
z2o%~JkA@oOV4<OREX$w>@v|6oD)s;ysm}hmwO3X(%+Y$0K@ac22JJ?ZRl9v;+HT*0
z;M>9A^CY-GZJOGb>kT<WLN<lCNj8O?4FU3O$Yl$XY##Ti>h%<~+p;so_$cKIRmcf6
z^7z})(@E|tzk&X8>MO^&9K7}pGM=R}mHr-uQ{1R1^kLnNsA85En5htelZ60476JfS
z2moXu0FZ?M;3yXY09gnCWFf5fuwKjrSblWE82`i$Z3A3!_hYOI>l`S?;*30iWv&bi
z-T|Bon2OsS0rU%+gC{ltTn&01M7bCnyg{1umf-QQ1#3^i>4}m$i9+b#8(*PSwkh6=
zXneHW=L8Kh9tN&PUuaAWUKwI<<yJqqt7_&DX}USaWj!gz6>*>Hz%c)vxbV_=m~$E(
zx5CdXFAF)3&~{@~KBWi8Vu0c?Kr#6+mC}tR=9j3MSHx|ap?;Wi3{~GTK~sa|MPcqi
zmQ}Pb(WQL}`OJ77jN2q8E*SHlNuT61{pb5*!HlJ)9g3W$H9m<6)l%jdkYWNO#gtQN
zQc}-oFlE+AqSOf9lFvDbdYDN;)8601yeob5mCOjYJCJIzX^T`#2NYbtn<e1ybY;?{
zhZ{i!W%cuT$JNxVG1*Zv2-RLzw*`UCLQsWk^Z&{UHlDUT;o>U~KQ1Owe%kKi>-PG~
z#7QZlnYOf|T#NRE?7@{-+MsxEBx}z~i99l$dvsvq{DRP7Y1;XwGCY~y6D=exp8({_
zgCq>BD9oH=6d76^vVmnm`!NOwS69C-GN;tuqEb3EB1Vn?YnqBK%!+1#@%p8<fBMd}
z^LC)ZxWt>rz^-a$AQ}|((fBz;CH>h{7*%VY*9CLJ%`+rfhUhI;i8>aIfJb=E#VFL6
z>$MYuI}-HoT2k^jCAmgGa`h3N^^1+Z!kSN@?~PsbZln3yo%^#6L74icAQ~pSzB5I@
zn322-wAa1HE>6^xa+tRkm2v!#-PqOoL~BgBooIcfHM~-5HgQB#{tF#!DxJ4zW9(~v
zqcv4yssIiP$-hy6Op*+en^;0ItEjl3xdb`C$7FC&L8Mf$h`_~rbaaezZlU?c>B5ZT
z3wvJ&0ZNj~nn$+C@9jAwda9q@RXrrw;w>I4-%QMw4@Z6e3%Y#KF)YXbo0LTnZb6zt
z7f<NzO6USVj}UtM2qA4bME(&sbryX7yDa#G{C8Oh$;Wpc=Bp32{!MRcntQ?A3D$?G
z9Ab)U4QVSw+RD<hlW7Q>X{orwi#jRaVAyeR2=A*3DGB%t-4si;5wz_!Z80*WK24@J
zaa)i_IB!h_kqtznnt;tHrUet~OWk~m!;tzknbw3F5~u54ZE3Ciq^I5W+Vp-VYrCV4
z3~eP(3ZY*Xp(e^a1QzY=@)Pzs;ye%r{P^rsG4S>c<*j;S+Lwg;Kdcd>DI~fmhfp3P
zHA~h+Zej_$bt$}`1C0`@TUnD18#_q!lBU<@=;H42z^?SCsscts3(;Tlx5F!+Ox(<W
zp}R3F_%wzD0G5Z{M3ado3Do#cG}h7l5Y4X`6AcdD#MC@Mw2%~o5-E(DQ@iVHGb-98
za}wP`%9|IF5_(F>4Lv2z3Rp;}aaP<Ag0S{l7;5WY2Bnf_QiB&mnCsjucQj}DW8|pD
z;nE1RWe`*Uq12F{6F(U69K#AEPRg=|B5?|%tng2)&@n0T_4H<TGrY=im0!GYxVm<g
zjM1QTr|(8+7A7ZhXecLL3BxCb)ls4ire&E)F&V|-WEMY0&ZFY}OThWF<aAmpA5i)z
zt&txpbFB=VA?0S3gL6A!DJ^TS`d~LXzt=rR3)0sb52m%}sUPnD5YCYgFOYMx`CrZ9
zY)N`Rb3ad$(pth9*K$1^mWqp>1eE`?uwrU^B_5AE7gG0d$T@<>hP(YY;3{oc&x7n!
zupI@!v4V>WF)%G+eFP{rN9>Pa|Bk3rQSfhyy%-DUYHaT~I0NG5!9i*=1ycr7OBTJz
z>G+++pctG?hhnJ8kY>mwWspnSAoq5{Z{^9|(qwQ`a+i||TFKmEp^S1X&s3=_TM}2r
z<Ea660ZBm~I0j?k4!NbGVj!zbe`22l2Rx^8Lq<_<?0=uIzm;G50TWOuGC<|Xz_rF(
zFtd!*REDTb89}AW0F|pGLCG>eWy=8NmjJC>1}LBMpG}Nt=TW{J@m+DfyK&KLDh9Ry
z(!CGkBNM>*oRf3H@+ar)6NF*Hil9t#(xdjm@DX}E<_0PsfCEMTF2ca$A|o-j1Ln7)
zYZ>qq!Rm9H8`XzT>M4N|>?y|R$VGJSWO3w?NThxw@-Ny|GPKzKVsMrge^VUJ`Ld77
zBJ5GwXJviAwIxLMNVU`2)vSa&3C`|a(vA7$FP6uL{l)Uv%3H&SR9svU<C(=3&s8Kl
z8QI`=118_w=vgCh?bCD&ZQ{7yY;tor)0=N1XIt}YaLoGQ&H@X}-)X?Xm4D$fsOZH0
zx+-UJlw#T5G@j~hPs8Pc7^;l1@0A}Fe?+c|M!>4*ow3|jWtO;9f`OA|SC(VaKg(TV
zTfbRuSOPv%h9wNA-7dou(h@j$R>Cp<^gWhvvwY4UY$$$_uL@4lS1~X1yjlLX#?uX*
z3V*wN-wMGdy&F$!>Juw0ufUb5!s`l1>2-zP6*;9T6}PbRc2s&$>0K$^sx^jo(9CJr
zr_sBD`!w3io4YSHe$<$Am`1%cRMV%$NKD=;#hI?ysr5$}HZDk5oq%Frop3fGfU=0!
zPaM8@qy!6W6_?UYgi9;#s_28qNlfgZMn`B~ctVpo7!P=s3>TAl*jW`%Ns^)DeiX-?
z?s$du4;sinwh!f1!J&?|v>R-{<0d&%jD2VeK-D|=9J(U_cS2r-AUb4r740M$Vn*#?
zmKrFtggPjVMb}1)@iVt)5ktxDhr;gJPnORB***i8%H5!CH8;xLNkHFqpu%yw<MVih
z-|1pyvTZn*Dn26TMa`bIC}U*l@RFS~2eNbq$krJkYiEG$od8u5?q*||XSaYujvb6m
zbb($6V|c_o911d)N9~M)vmo|BES#gU_sDq^J2uW-wGq2KTOR5P<WFqUUE)8`dX6nV
zlN$c*#gD^Ll4w^P(8Se{^J*z5<CHm=X+>G279U+4xD~~B6bE)hnb~C+y|?VuvJCWY
zvIlLenLRN>GomYePA2rmm8qPJM+mx63Q;|#SgB*t_+UrE0W!)13HNaR0`=eZ(zF4n
z!qcl5PzvI{X0np!Op4v7_HAVG>D0d6iSJtm&fKzVu=~w4Tv1%t1wSfNzn>xUoieY>
zu*j~VDpZY}b0`EZRKPMrvA)oYTZO;r&;W!6<lrrqeaj3h1K+SRY0#RsUrWMtL~U98
zu6Q_{vb(;DIL(lf%hm(Mw<>;LJe>PwdY6S}Fo4xGkc8jjP+7v)zpJsyfKIHSCbd`m
zK#Nxtm6zrT@T!p2t20Gvjn!QVjXJ7)gFk&Er^dj!Q#_UKIUQMReJwb1o3Cz;gfO?^
zFk_$r_Vjk-L5irPIbs6LxF7KXqa3qHke)l#+tt-pHp)e<k#_*z9%3jUM0Bw;bUz|3
z(u5(WY$YrmpKM7UMGlE(GhJGIudM60o4ssi+N+G?(OqUkK|G3_N{6zhM%|2p?{>5M
z^f<+Riq>O_yEC#RMaRh(MJ=Ow<z-PrqTyRwd<(vcNb40;1!Y@#OUi68xj|7=qwwj1
z1Q8bx(L++R(ojKI(m|H4V~QW-NQtP~FLQ=LJPI|)OwBA*s}}{+)C{GE&M@a>^&%mM
zsMuD@XV@YkN3ZZ%;ZhFIkd89Mta}cTq+?O#y;|TdtvlW=FgRRl+2LAiPK}w>*X<>H
zaQ(}So|mT&bde}DmVJCs;CvlUy5aN+>@nO<F9#}&7vGkdCkxujm`>~<omFN!L1sE`
z1obpl0yGfvCmyT9v(ch=QJSnX)<*7wc1#Ks&wWiZnTGWn#a7%?YHW<$5ea8U<e^B@
zYFsVN)*g>TaBNXsH~(?aSX@!_>M!v0)*<=GF!JH_3SX$8SeTuoCnb0gA<rWz)>tE>
z?_R4HIc=`k%a$O+^xDXrs4ehBu&}asPuIOWf5&V>4}p)+N5(Wv?g2Ovyp-p}jjf>v
zu`EL0a`cmNm*}{(2JKjYxR|^D6PL)yHGtqLhzrb;(2a<T`ForY{L733$uRt8+W<2W
z@sYAqoUFqQvAA%;`NMZurf^QCPpTt93xm1IlgW#!nw+Ihqf$KX#NrYbxPwMv?Swgt
zx|)pFtLZ2vbfvJ^y-amRd1J|FoZhZMW+Xa#?&ax)-h)4pf?}vep~_3d^b`L7qcXx)
zoQtL*vf!Ov{L_u>xtv}7)2T64F>-PGUfNF;Uj9Vb$BJno9Kpe5VBeI&<<)+AR3A~w
z)T9`$DZ4;zUHVEbuC(uhRwa#1EYmcsl@HLkjl#8PtQ_RP9ZVn29Kw21_(+ly&EPb%
z&F>5~au(O=PQaT?+`GP6r-UT{b^^TY8-(Iu*b0KDyvu}gEdJD-xOnrD61`jsYqo?|
zFQ=cUzS2@E9n-_++FON27G{X`D69m?8incs3#VH`b1?0tl~FqhA}4(ZWu7ebx{$U(
z(Ls~avC?^kmKB1ttkA(i(hz6>%aw#ve$O8<O*0841%$q#^-64j@)?4q!8zD>NFN!`
z{e~4}^n`+!C9oi71->dlxFzP21Rlg3lmp@6MIPci6G5Acu9ThQ(c;hWnFP$Jk{P8K
z*joNV1qSX{8(W=$E!F$gU|?E}6%y!Kb3skUJgt{rpMfcj(|Ay5+-NeK$HmBB)_>S@
z`p$o%K{Hh}^2+E(KD~T-6ZcHtdFDR%!@egZYQNtRKe^TFnI9fSrLEq-2QChjsFT^w
zWs}g(>_@UoXi$zZIV7|)Y+aay2In1~*9<K%tbpOy{$9E<J$z0$v)dPbSOUunt|=&~
zE)={1h^RKjZi|)B^0+l|yx;v+slQ7x(5p=UGQ39WS)k&mE=SsvpQEck^exI1C=<zt
z5HtPm`gvk{1`P`G#0&~r78Iyr^|;4h>Y3sD!ab?>g`W-2Lggum^jQo~T-2iRE|7J8
zQ|S@l2RSFx>e}R>SwY!6QjKt7A^sd@BCq3kRqjo>8CaL+Y90n|<)2o7fr;VkFctvK
zy6}VHV01S8we-)8T|sY%U5OnL2j@)jwXi*qy(qB{Ge78x_-B#tUE-qwxT&S4Eg{ZT
zs2Avrmip~PDgcgzPee@sa3%USMoa*nM~_EM0PuTEDry3N%((fe2>_lIxr1**07Hr|
zfiwX2lz0kh0K7;Ti<$snUbTbO7<gW71F8ftr>kE<O#raC-idk)^lPxD0Rtx+?UkS9
zQ=4R>N~k{Z-C6m6V8v~n(>BOyn+3>eCN@0!9j6KAF*&c{fFb<Xa^9s`rn@;u206Yh
zW{eCPACxmoxrvBk#<{TmC^69Y&$9?62H<p_5qRzsz|Ook@-eWcz;GxLm_^~6XgOe0
z_||aZc|Uv{bPD{F=-;490CQscL6rcu$IXQ*0X#0U6{-X<usBWe0mv+I7di#7x#T10
z6u^}7cgr*Iq}p1j5||U!sZjy2px#la5<u?;E1^mN=Nj#TDgjJxvK^|-)FT47i4f%W
zWl^Un(m*vV_vAYNsT}j5GL+ktux)ZeeOK<=Pzo@U@*IUy01V1IAG!eWGXD|SGk_JS
zSPZO<J|+$7ujouU&6JASSPohgcS{0miu9KTwYOLwXaUg&mslz-t8dBG(z5<cSPCs5
zXl=Du(z3=^e=05OUftiML2a-93{5L&rZgHN4eDa!RB2E$Q<mIqq!G@Am|HP$CdOu>
zj+wnVYsade|5jfYoah2C&_&NJanbWV+VMlWgF~8wLwbWlT7yG6gF_mFvx2HU?puV~
z;3K8MA(g=)g~1_p!69YAAyvU4MZqC8!67BVAr-+P1;HWpz#-+pA=SVk#kjj_>SWXp
zko->}JY6wT8whO!^-YD9WOO(F&b|d-^8i+dp2g4<z{RkBuo3_(a^I4`v^?8Tb%06B
z{})zA0PHL95at5laMW$g?*ix({S@W`U`EXH80x~O#BPDv0I@T+FRTT?p}5JI=LK-N
z=meMzfa%3|!)yRdEO8KK1K>ru-3bgFt~wgl0?g8C!(lA|QtK|N%fPvMBVaAStZq01
z6I1}6HJSpm$<VV<qzMnjSbUyZv59F~ExaTci`B{4r{26f;9~Zr&`r-C#+=Z-&<%h?
zVUJLi0L;vN7P<j2GS71820-8ZXP_GZ8wy;8ZUAhFItSeVco20Rx&bgeb}4iMU{&lx
z32crV3Y`FRwCG^y1i+}`YoQYWLrP>oCjkB`w-!19u%&80=mfyDYCWM708i_rLni?C
z)$0YF0GQJ-4LSjEqtS5aq-PJ6-~V1CrL{(aF~$zQ;o^4baE|G+1s)f+0XjfSwI%me
z=m5Z&Jo{uD+b8c#*|a{&zZW_{(8BOzXifkui{1|%0Jt2z8CeI=D{eaM0>GTOD-u{*
z<PDSo%=Th0p$q_hOZ+Yy)mJ5!$VT;S!tb(CT~_TelmVJi)&G{Q>y5g@Wuv;W{(UF|
zLE{?rgAM?kZrlsa2^v-FPZVjWn#@u3I^nL+TcL0!h0O?qvo>-&y^*;+@@Ql>e6fiL
zfA!vBx{(?)H|8B1O|8t`u&_5$$?%8JI6AA|JMc&#oMoZM!r;uz^D+;dKk~l717F6A
zy#4aQw>x5BB%G5`qod(mie3~8=TYo@THjb+<V+DbL&}_?iN8N9&#D4vYn7>VZgpI(
z3_7rSr}nfuaCX&OQ6J8r21^>~Pk*;;3KCVdjJW&LDD}wh#QR>x_JHAm3_K3G8Op%*
z+?(<+a3S_?ECWyC#uj1VK>Wja2A;={EyF<nDpRU3aJJ^FnhcDscfTG1XtHThPyQvy
zI$D-K@naLMHfm2!`keETqtVkr=XtwYuaN#US6~bc9~CY`#urL2M3`NL_ZK!tt`Tb@
z2s15mcBI5yh`JIbq4gy;moRZ9u9(oQ3cpv7xb0PUSC!D1S`&C$d~K~wwIpU`?RB*o
zg5>zw`ES+=_MbZIW4elQPV)AnTXy?7m(o_~rQR9d&R_7kvoQM`+6?_DWLzjhCx>kb
zgL6M@F5PH$K6kIY2s@N-PJTFp3M?rA<gloDw1%1y^_ZN;Q7dS+?p(|pn$PSTyEzuV
zp>Z%AO#c-<Nl!^%C^mrhH=HW|E6sJTE;oQy2!>TXToumUs{82B+4efO>cAOaZ+|^F
zj~ZNT2xn!Zb2yC2#v|NW;f(-6f!`JsbBcaj0e|w&k?&S0D|>${ELrW<^>GK*Ob+52
zion!t42%z58Vb9-9=Z}u4+2i-S%Ov<z^Hs{(c%EO6Y+)%`c1^fNJjh`y&DY<LVk-m
z5yQZ<nAZ}R7q<Wn4uTHHU6jC$BE!-00JFKwaLoJz7+d8`6$YMGIgSNaVD{H~REvS>
zbxzb_U{L*=XlD?#i4Fz>P^O?W{4PL@(b>$PMUf2qB)XM%lJh85R;TnZZU^?w2LF=K
z>)20^Vjr0szLB{z(AHuGX?WgidEwuc?;c%b`6glo&1R++`K<_$=|wY&!Wmm^Z!sXB
zl$lr-zG-DM$k|_I1hN743qM%$0sI;D$2Y*8t@INuv^DaTVyj~w#+apx(5z<d?pHao
z`;YiYv!NM)LaWhlT<C60&2b-{D1hssLr{1CM&w?Bya2e8dm{P`0EhEDL~#PxmVW~J
z4FInS%s{^Zpm+2n6eECT(U(zr01n39M+XAnN$hfz9)Mm&_M`Lwq!rtPegnXf;?L2E
z0@z!kC;ANlzb8CLCkmi<we9FP09>k;fqnzP>bmFAi30ew{$`XXfa?v9q7wx$xA8%A
zAef%}zy3rsUC6TqMykuQJ*V0CC!q`J!n4a^!)bx?c-{s1;0(*ZGC!QO$mNl6wnr|e
znfXi6Z)lD8O?01_?BCc*NAfk!Jr3Fhty~X`*+IkKQL%r~C+4Hr3-pOOtH`z@aP}8D
zN6sI`M$(ejhO&Q@g>$`ZZ@Lj7?Sm5^z<Kz=0y+n?yY@9&drhx<q%NH2_0Kkdv##Mu
z+!^^_XIBL1d^)|qu?c=-!^zjKU4c2nU>|4Oi7n><u7(an`2$!R_O}FP=l%`l56n1N
zGXsb7Kf@pjm=lptP>lhkMs36(3c$>my(oVGBZ^KyX#<#3>;Os|z*Ow`V4!EY1LYW4
z#iK_A{aR-^>MDRsb;s0WU{`~=4GEA<H<o0y)vB#W7%vQoT@4#EKf){|^ff?XdIT;S
z=;*XS@G7Q%ES&zabJ5tM?zrkE%T5fU)9Ay3kSrYHpPB*n_7h_=V`M+=8PZXP=yi#K
zIu<3{D`rFtoDne#kPZ!l9WGxpVJs7Rdii+JJu^Bw4^(iM+sn`Ms&P>?#yFTIc6-g~
z&3dg=&rBy1t_4q^lL>?p))4G5q7YMLv@$vtiF`KrCT-HX89W>_<J59GT&p`twoy`K
zx0hKs#7b>yAxQRoL|-V34AnEFqYTlS+NxtwvWFwiM8G){@gzbeJGz5MvTiT2a0QwJ
zqf+k21CURJ#R5)X7rM{iy=LPKv@GcahGGOAS~9S^2aT04u5lx8Q8O7_cM30elq8jV
zSj0mn@ee&rOSQ8#j|;dGz`*X1wfIDVp|8(9R933xu^VB-!0d^;jdl{ibgacPus{B`
z1Ws38hF%Uqi)$XnEGK||wb#^U;8xw~vck-%x03;qfPVB>{m%&fhr=y0{%W8>85eMY
z&QR?Rc}%A?NIEzd3y+C_b2oA}wRO*;4pCcoCVDfqYC~e@QLDB*b}Kp4<G0cJ@&5Sh
z<UFsmfv(CuU3nBeIJ~&#zM61IWH=WfFq}E{wvaQm{>J*|1T@QQ-9sj|Dz(dcg$cPe
zI|uC+`gEyT0J}rRLbCv*W&vC*Jb|r;<>#PhQETL2<4p7g2@HuH2JM5G^1*;C24G|{
z0FcE1fU?CjvOIv1<pDsJ2LM?f0AzUpm|A~peTt>^k7AKUq%iPVGKQ583>>f(n8yL*
z0u~3rzdK}OD4dO<*WBg<KWo1|Ob1gJ?ICeyJe>XUx5$ywVkmLC^0~_JlVot_)Y}0^
zB~5zu6o#$FQ=E1Xrys<@k)Uw_xUjLE6sMgj4)VzM(oTxgPKty3rAVB1Qk-_CIAC$Q
z^25qNFRpp0CLETkos_DbEM?CR4pqC}X9uued`zK!!Py;hEffw*lfvZ>A6st<toJy5
zpt1GhlPs3M(^!8gT=ft}B@Tzm8x9+B3dCJTUu{&<aM*}bq!FiZ83RcrY_@TxI^Cv=
zuO#u4ZVpb-NOEw%3A!b9eaI;qIWElIGY_0uG!KpU$>YvrUyU)E?n}a$GyXg|dn@C5
zmJY_Wn%io^`J?V=y!?xy{u+7!*!;Q6kc??fW9c{7sS4tXv*t!Gywry;<$m^!v|u?e
zViym@cSYR9g&W3@$mw|7+L#`>iN2;cMc${C;}Nwd)m95g#E{06Sqn#E<zG4Gq`wl9
zaU5cx&VL9R^^kd3<GW|WWubRag`c8Y`EL(k%=UmCXeEL9Jp@M~i6%WX6ZQ_wq}+G$
zXfrTd3coDOn1hk27;zxzbkr);WdQ4=r=ed3a64u=>N0@Qu`}?f4PwoY+ZV^czPSBp
zWD(RiesVm7nH)bio&)B_&qG^_fJNBfB1z--OU#){lTqyvw65~8${cj8avIuWU`Etj
zT9YwLYc4~>49wM9<Iyk!*j#rXhN}Sf)$Lo4X$IDtErHqf=AfxYQ1ALP&@|wLr7SM9
zEZ^f;)OgT=(s}N`2YZ*Ht9|s{IVtx;`rzDBxEJl$Js9~beOsQ68Xpa3ee@o3NE>kG
z#~q<fyM5!2&^{i@9GrEPFOqYy@;GE{4rOe0P55PQ;NMqwK|T0;*Pp8vLp`K?xBS3b
zgvN8oZBXc^&?AoRVVtu61t7Htmp%f157|Mt`0NNd5#sZ$P<#C*<=&Ya*qyoe=C-#r
z_L32Nhfi+KNgHHgR6IgQ#m|hl#90)-C7!9apgLRdvKWyx6(gdJsF_w1P8y03y!X|;
zTNl2&C@lD>sN_iuj}A!`(G_bT+QZdo+zXv4#K5A6Yv^o%Srhq84v8m3ZI?shz0n6?
zpa@!9@l{0zF4pa1_SLe*Q|%t<R8}3hVx&%tmQr$Fp|)d9!3PE5?8M9oaQh3tDGcAC
zh=ufdxh!%VZPdFQb&Z^BQT?OQzV?qEKpT2qRqS605&BmeR0+9UU3*(?AfMHlP}gii
zR4*V-=|p*DFptsYLicndPfbLg8?l`RW!ocmM@a0ghzXHc^A|3cs^K=?`a#(clXRsI
zL_dGk{}nCc{T4C>!wU-kFMeX0W>HFQy(%@r?u)IUc5_eGMgLp=D(IGfDt2heeOaji
za{{b%BayBOn-a1y#2VH&_iwoskKc0711x#W%e_ChmF{KC;8?4FO#I?_tAASMnU!7N
ztKDKVE3dC?4SibUMGeLIMUBxltzpaSuC1#iSX=jbT{oBKbqCe6P_l7|?OH7~V!IeN
zfVOr}4YY<he@Jz37y;%<F>AO=?_$`)Fa<vZD^o^w;=_^_q^g#OcfDN<yBy~BT}CXH
zQHDwx4{I6QSgPROm@_eM?^~2;V2HxpZGrr_tDBEIn&H#X7Y&DMBB)YX{F13VVnZ+`
z64j59nwo1Hr(=RRP}ad1RdGCRH6CB_ctxra4%g)`WSdsi%G-(uL%Y*8-()5CH<D3{
z1NsAsTA9ji(VSe(Ie<>F;?$bm63laoL9}_?Z2v7`HPIPg&G~muIDaFu^M~Oi4vr#S
z(%k7gDOYLQK806q%#WjLW;R8OFQxc~tpIX2$#ux3#|oA(nyC!KOb!}&A|ZgXfS>q>
zW<WaX=Ndx0Muxc7xF`jO>udAuD4wtM@G=Xz85&&FP(Zroph!$?s$^S$0l;Fc9XaWZ
zbpU+>PXsb>Dce}gMgX%m$4N{}0XUaqNlpf?<?M&EpujB4yAHEa0MZJrLK_TVMBynI
z8vxi<^cLnG0Av)qh`9#<Ps@zMgdu?b2@5g71YlP6g_u{uS~xzel|-MRC?KnDf<3bE
zw)i+tW_-4QE(o9;z#;kJko0g!b~q$C9FiLjNezc&hC>p=A$j4Dv~WmPI3y_?k`sf=
z_g}eU(dRYcsF2Q5kV|5ayA}eFdoAanAaY3ra?=W}FGMa0LGG@ie-|Y;quAAA<UTDk
zxh%Q;6P6{AOOn7PV}&l1l2}`^fEiC=u%FYqkZGHm5s%x`aAl8U7~LK;Ow16@Zs^Bn
zh`GXrnGm^eXh*=fK!nc7cA9pizRW&82b}aA56GFDb0<At@F>qK8Y~|#_>6kNBZV#%
zVm^b5E~L$oy^Bq!8P&D4+|t3wEO)OQoa@!@RfCa2CZ7Knn?6+5mxlz)(+qaqEQv4p
z9)=so%{^=u`FXxP_I>l^qIYY>j~}aP1e?exv6U8$x0c8(;livW=T1IpMpaAxSWD28
zGCjlg8Hsb6PUW_NJ)LpFIpZ8=@C0Yyz@>qN=K67g4E(R6@JsWCUz#_7{x~~=fV70U
z3Aym3p;`+oQy{__A4xBtQtGPc+@)qMxt+S?coTVVTJsp-Tu(bnPX){mgtIE!?QC#{
z<yepd&e9zHbHZ7l^E5fB*vACtM!_N2duCiM^oX3vMK>3PGrHKyVsQ4Axq~N{j5Fo>
zU~j$gqFNvG_M02#o+~WBnM#6wUg?ckP85_g8VzDJwpv21#!LTx_*}Tq-R3gePaVqw
zWL5A6$7{M==Cz}b)A*K#He7WRWz|iTl@;^AR7)`tTWBe^$H`iX6VpYn(W@dE#m*Lk
z^R!GFP1*K`rr~fcO@t&`xe|I?#cvgP7it9$s#Xv{-@pvCf&en8IcdiAnEkRbM1X7z
z0m#M>fNTr_$i@(WYzzU&#t=Y8u?xk(?gF=o@JpisAlpO$vQ5NPg^x8Kq)n9%1xY{t
zX4Nm}22-<3oi~sz05_b^sN|kG*BJP+Tw_pE543FR0m!BvfXp2LnL7Y7cK~GW0HhTf
zR|s6jaf=VX%p?GrNdU4+0C-wvES)ABTb3Gr_+=&m$V_6I7l*}@P3yAx^6O{yn?%N;
zhFI{ZlWbhVr@5-;LH=EAbUvwyys<whPheN`Y?8!SjL!;+G~MvrMWx2)z!3lQ{tR5n
zwnomqugkqvE+0({--dM+(2OfMryv7|;-1Ob!OS9eu(t_8J>zG|*}<V@*CC6*EUdb+
zDgj8=RYJ*&%B1cIkm3lHX~XuDuXC`z7j~=f7(ZX<p;MAN-8ho}MSg2|YV6`zYxtYk
znQ>PCs#51lS?RaO-;cM1TXkU*U6gn@V2x^>AJsa46*OD}{U_1;0+amDK{cr3hbx_~
z#C6;wI(x*&TA`chqRzkUxZXS2*x)}Hr+$qIbhR~Z6$pP64ySjKd9<GTtVlYor!I*<
z5f5im*;{4Z3utdAU}8j^PRHr}tqo6<V`;~kMi&pIIc8FlGaY^CrtK&Gy93}H3mlvc
z&cW<wale>xI>)UXaBiU+!)vu=Bf$XCALMwF!;icefbde$tUPmR)6#%~lMBLGU*rhg
zw!Ms+O>9$&e@1s`KPx-BoH<P|hU!iy4(eN8Vm%%RLLGJao1)?+AWtuSbGbe+LutXl
z!<#}`b%-uHqqM>`G;kTd+};ksu}uo$I23EJjzuHV2LUgs+jto;7Ht@rqQlkQ9I|2#
z+0#obT+PiYh+AVQbd9Q!B%{?!OBXKH8^CDDTiLWC*$t4WqP{k)f<E7IJuQv9&<jRn
zgEi67LW8O<P?WTy#fLk35x!GGp)hk6rlR}5!7opQy^6YhtY8E~Zf;pA%+B5_jMsOz
z52GN+Cw@v0@-FdT>u*KS!*WUl8%u>;su702Iry?!#~jF{Odb2z{e5~U4{1lm^K*Xt
zRNaFM4JkD4^7d1a@l>|q-N;WxCoc_RJP<UT$qwOZI3tsk4{Vd#!FHxLNk?E;+jq8n
zW$=15Js^!MeO-Y)JTb1o96fB`_QWX~3mKjbqq7Gt#fiR;;P>F|3RLe>o3D1ea^_$@
zGA)Uu-b#+I92hqfgnuHbg=)cXdhr)Py4Wc{J2JiRcr)gi?;<}2=K8Nk`?DCmm;W0H
zT+cIBer-(3yF~)2`Q~CZ6f_I-9b*8g;P;;r=10jW_3Jp0&8Y*BsRNLy1CXf$kf{TZ
zsRNLy1CXf$kf~p%?->4(BmbvQ2DcBeMFn*4K$)9fsOITni-5BQ;sBTFeZw2R8_)<f
zInW1uBo85>3pm&FjH0p8sJvt8wSY-^H;``wv;tphz8SPsJ_D+OZ(+WJ<U0ucxYrkr
zBvlO5J(ulccm4~<X2u#D3<6XhWRZ2&v^?(Hig8~Cwt3^^E(6D$7o9X{J`*w+v&0A)
z9=d`7$~JS5f5q5DmF5r{&7N`gp))#tz2<qrnGtrBzJpJNy(VW{?khBpdNcQkJeDZ~
z5=)%d($LItd>yZ@HZ1oW=W<=nWrCM;-OA<Nl@DqcHg4s5oeOj$LvY6ywO07OTP9j0
zi64T|61s2_jR6vl0TPb^5|9BBkpU8t0Al^lpZHYUd|~W<Eqs)^si9&XmGmm_LsZ1q
zeJA_D8S6ib?#nvqe}|kCc`j0KbT!Wla)#s`Pi6Zg?+_}~N%>am(zNDhpw=;N-Nlh*
z=L#;Ho6eC2yraC<&?^+n!v3UdL9U1Wnj6j$nzKf)oO?<h)ep;Zcb6B9e*=%pa+fMW
zF-rvikP66fD?q%_Qp|*nWa1t#$5c5Eon&M}v%qW!od`YBGQayLlMUCA@ho6V<5&Cd
zNO&yvMmXNkd9gQ+e&BEqi+#pux;g!*@lyIH<=%$^LBQeMPZ%&6i$2<7rqbl?J$mgC
zbGTTk)Uz?Lt82QDqOm>~eIALz5;ox7Zw9XVO!R%Ll*N1<i8pj~<3S0ZXn$&q^g=3A
zaXbai2>)gDSnKh;y|EEVTA}AYIBFubWr{B~+X7UxqCdmH?6VoP6>^5xN-t-3e6+9g
zI!69MVku2|Eb~4^&-h&S9q$Jxjm)UIG0T6pKYU01Z<2E)&n0X|M9fQh`q11*YTgCp
zJjk0y`zOcc%YdUa=1!kKyF;>kb{ioDLeO}M2->{HfZo7{(a$hb`267K;pO4ZW-~OJ
zFJE%Gz2+F_jm|or#l{0Y5AbvkiRBR15Ug=i2*<IB+}dJjmTbAt1`L4^!?n-s3~`3n
z(`&{nspGZ7^xz}sAj7=(NmxT#$Pjr|sz(TR6Hy$=4YPvPH9tSd?iXzQLZ7z5xE_E@
z*Ah1e6>E+r5EEw`lgwyz|C;=X5N)#b6kmS~nBb)0egrvBLtXw`l(ZC4xDmJG{Xxm?
zxB!)fSz%<ea3l2ZFg9s_9-$;u;lda<{L5y!$D(kF>>e08TvnodPR6<K!60n;Mp@$8
zT)vo{Rhhv7JQvQzNx@k>jI%6(H0o$#hG);p$r{FSai~%gBS*-mO;pfo%jNyApVAB(
z+~xXEfi$dBQEbeE`eiX%N8-yj{=hw4P=p-vxWl|0UGYeR4|beT2CR|L8dDtgQIM|L
z(Hjv3P%3l?QDMzPh*mE`H<)qEP^%Y-VUka*_uSu`opz>uP=js_0fFm+8HzW%F@SbC
z&AFp-BowOP|C)Xu%2(E(n9@~s%b_r`P+D-TSqsM>@lIf^_VBc)2dUuc@Dn^g;l=Zo
zMqk{r!pN-5;J5HAfc-oLYCzH&#1F5&)#4YHi61;2x+0|OPtrqtlN4XPhi6)eL#)-(
z@q^>EAEqWh%`CYPp_Pbd6Ki%b3(zBk^3{Py6VT^T%@#T{YGQ+Or+YZY>xHwqDu~QA
z<Qr2E8Sb#V!b}Vgi(x-@p)iKcA6f7>pI>%bNVA;%6BoWy8pnxrBTp&hsZ@E^r%|5v
z=+vys9$MMBY?9K;s3^(o-^-ZvXdWK^13{>XQ74H}00&K!VdFP=LnY_X2x4Klj_L^J
zWph(jD{1)MLO;oxN>*5dk_=x8LfO0()LaIs_nH^4doM$4P!@(6?~TO?k~m#<E5?PO
zw?b@>-2rv)A+y+H0PU$5V29mvR=+dp)w8mak@!`!;g?s~#yf*eXL?o*hW-(*Ng-0S
zkYbFcrOIRY@T<~gRK1&Fh8D37B<>zoQqnH$P}+Ii`g1^^ca>Dc_JO7eBer3<zQXps
z4WG!7u`Y(toU*iUQPPDF#9!1sqLSf*5}1&e5n5<GAA-hQKI7#d(M5-{ZB&D`RjVnp
zUGp1wzWJU#mM8>@{yJJAWT#M^<J&4mTrn@GE24@~3H_MSBoQ-$i75z8=}5gV#p<PF
z(NO6B<Ly1bqdKzuQFV9es@2MfAOw~~&Ornl901#ZK_h}l10D<>duDd_KfC+vVeIwn
zVuHxgB4d&Sn4Bbn5hjU@Y=Q^|kuf=EFj?>SJ9Y2v+kp4&_ulutwoz4`I(6#Qsc@@K
zRh>%a2EhNHKcoFGmWWbNy(yPCVY(E2K17%Ie8{;_0M3O@^l89E-%!q;hKB7A*MR-u
z8Qe3<D7LB?(yuBu3r9EAtP<18>F8<Y)^povefbG>G+;uVb9DeXS0~?m@;bln4xVA!
zK}{D-bk@7V(3N^mT4?+yE#`gzz}ycm=vSB3h1L^N0GN<+HbrBcP1(WM&UUoB(M|(y
zv>VzUfT8Wj@-aa)*0CL~bO7K=hv_)}N5J%sb2|bsx8qI|u(M+!0filZ?yNC>?tGJP
zyxi>k%mh5^JnHuVjQaih-)oHZzaRex0LK5}8jiD(=(RsQA>hd$2H|`b0fTz%?*YL6
z9w&RCWG8!^XXt#7Cua1M9s}`y3?4Pe?5XiHdtUw{0GI#x;8P8F@ag710kHW`EB>MZ
zEB=!IF978K%S^uai7aORb@yK}g>-rNm40F4O*zA~>5Q*HK-1z<LjPQ*-qr0$qw)2O
z+e*feZZ3pa^o=@atTq(Hp4wl{qglZp@bn~{(cW2Jxf(vpyBeP7nQB4kB^fAgh2G`U
zL|Y;*$*r4Var303Z;0E%@6DFDQ)Ni)RGB+vB-x!Z179Ox;A`VJYZ&+1q}Pyo(re2Y
zTK3v{UY9(Qw6GF!7FJqTNitnl>HAs)^s9ZPwj{1IBAM=p<T<o!I4AjTW2}dIt08X}
z;5Gw1YnlveE}mh{hqNH(^cJ(k-P~eF3#8c5Vh9dGF-5D(tr&l~)xg#QIN17NYXUB{
z`KGM^zG*w9EddMKu4pfS<Lwuw5wI|ALz-~6A?>mN9;H3#C>R-?Ms+5}($4wfF6y$n
zi|QMcn5kBGS;u!X4tKfIMc<eI{lec1jaA()b(6H0x{dl!UQe0!;k`eQ$mH&GyGzWR
zkMceePkPT)JsESm=kSju@$io)eL_IyCp$k8Q{|UFc_e^GpFH_gl05lz!=H$;;ZFzu
zB!B~dzVc^Dd*#mqWFv6EUpD_mV$S~M#$OzdUYWa?!_Qfb!%aGFT3??KoE6MK7F-0g
zs6n7Xy6j-A`*FtLh3i|!a(j^an$2H5=Sj*tNr$*Gy{q=K+HeN8oYE3bX3LFqveS;x
zc;5I=r+td<!Padz)}L%zZzAh#b)9F5k0fm_=kr9_I}9soU#{&857w_OPD<OB<^XG=
zX5V3t2>dzNuHy+Uf_=B9XsJ!V#`iZLM%>`vtqQ2#xs&uwIYIaa*UbRV#8EAPci|2z
zLIt(c>mW3+C2nStN@mNgEfLO6I|&O?DB`wH;hg@LtN&ttk->!4cDRgR?Xt>ut`Qp0
zX;``d(Q`>-${}>L#bY+=tL?|rOy}ND4u8Tax(o}3*RD8TJ$_QHs2V=N;}zOsQMCcp
zF?(RWS|f<z5NmL+pt`kDnGmh%rFdE26f0ed(~P1>0TM!%B%Q>FPD*rzOg)nfT#_MN
zXw=I@b>ML~KO-eov$vrhK9ckxNqjHGOT|A(a@HtVkYYK;Gz_q6Ao@0(QJt6at8lXO
zqAs=~K<XTmXhVwvR&OBQH(TLPdiZc`6{rK@*Xi5{e@y3jcow!^9HZz9ZKjt!mJao}
zQO3=|cSGnd^ezsiyUcgC6y2gyIf-<qB#o#=cT=q`&FKzkakCxW>Ft+wr(4+lz#r)j
z{3P=ey5D`0`4_k}Tx4a1T|^rEbpTi)&afJj^|hXB1#)YKv|`4JVo$?AW1(FV4(D-c
zo<99tDs3N?UA@(a;Nwsl!jo$ZhejKoyCF+)tOuUW36FWzx3{`kYgldZ+-iM2RXmw(
zmbMYkjrPwmqypzjhY1)t;n~#rcxUn4>^!)Oc$Rhfp{sbtcAJS25;%+gaPtr1nc00I
zMn*ukbsy40JU{e!pgp_)c<GM<Ir1qUE+x*6KVSMYJy!Vw-T$Yu?{lNUu(WVkRyZsv
z9F`LfO9_W%gu@cTVfo;&bZ}TUI4l_)mJ1F`1&3vV!xF(^dEl@#a99>NED0QzL)1-y
z1<)Z!ZOIoYZ7&tqR`tN6s|OxkJ@Dx2f#+81DYyUykFFkgboIcas|Oxk2YJ2i0pn#R
zUSfewWj<N>8Ji#QT$H8)kLCp)%?mu57kF;9&cH=Gcr-8YXkOsayuhPd2t1mp`Mu=>
z@iIe%yppM0GIa(_!K0aiM>7SFW(pq76g;<De+#DI(M-XknSw_%1&?M59?ewlZ#1_T
z1`gwi-N{zdjKwzEWyi%A^@s!hBlS#){n<X+KJCTeHQYd%6>@?*C%0c)kN{^!tz6#g
z%WQp_xAiW!zTFxrZ?}HX+VdGK)jw$6KLz1EsV7nqJH7pq_HY(<*xCWktxk_<!Rb+_
z;hmkiZ0cHo7q6VJ0R@QGA<<+G-pQ=yY^$ZgqXh|%79>1cknm_h!lMNVj}|06T9EK)
zLBgX2ne7*((f_P96`^H@wXJ^UC_S`w21`7z(=rr>;`NxHA^*8C@{c)*{liFa9J2+V
z#8M<}=dyac>qp!ez(nS-D~ku;kE)CE;ku}1aGo<G7^dGi&lzGI;UT5XA<shKj7iAn
zW$O*K3Tbroa_eC!q&O^PSPIU1u<FXb4jtXFlrbqd&tZnCN*t3iF(t}`c$)!<z=<g{
z1CrfHea467e(Z3r1DuS`i};xEFI{hS<!r%GCKk@on&!G9dk5*AN>mOH0$fAWdJ#4e
zuMNEjW9xbm#-{cnjP3447#r4$FgB+bVC2<V9}GL0??w6bnhVXIaLv#}V~#<04&O)W
zDP4d;GDero&?N(OnJHWut&HgxtY-5TpNoB3X<}tQG|TV3GY&&6qhw;>{q~Vg6GKdB
zAMLO?0vp$ETSObV-^)~M8XRZ<R}*!_fheOi(MsWZjuAsl5VgZPdYspsf|$Ampy;3V
zMSkBx2;%kN8V5OIObnaJv)N;#4@JWn8Z#ya&f=IG#o)}0Jwa1eD@*R>O}o6fjl5&L
zG=47>j3gY`LCguZQQOXhR`*m1-sh-XU3x{m%j_hJ!oKHika^Kp`LNIQn7KTfw<!ij
zzPqUJWAD(($J0x2evZ4#jm|Cc=eWb^Rx+(sZe?Ugm?cGT4Ske}R|;3k;^JvYe=jq=
z<%P*2S~uGtxj&K~tEEdaV~x#X4-_cNm&wiIvC&g0fkm(j1!qHvBYYStxAYO~$T|zm
zQU|2&p;O~)%+&ZAGj$K08sB@Swl<7(dSjEFH<xpheb=}I9v(f8Cvav{i2@5i#ZK`A
zX?E#-FcQQpt(=1+tzsYGCf%u!+k8>)cF0sOQr+>53Pb2x<S3j;)v5d`FWR|Q##mRm
zF1B9ogbtzEo*};5+=zJ=v!)oFj1r4Vz!_e85w<&#+<ViMbOpOj8L>7O5lH{(f8x)+
zkkhd02O)bc7O7Hm1S90U1cYbBtDp!df+HejDr~2U;Ho0nYc*tOmpKh}1|a~n0;6-Z
zB?(^CoZ>pnuijGc5^i_B0;PvW>7h}iMu25R#aLAMwN%qNVB9mNVY69F&TX^|#K1Zi
zU+DG5I!sylg=TWM@yups8LMS*$QoA5nvg-X97_z~R1YMSj-69{qK+7aJkDW$qR7&h
zHZ4e8{c{9P`Kl4F?|F7>ly{0r5bsmi<YIv^pM#pIPwZmHNSQFn#-s}sX~Sh7$PPm3
z7#J%m^pPeJv@321SwTKh!txk1iw6kqk9y^aC?nsFL4!~s)lkXR8sR>s6wz&b9~hmA
z+@Z0z65%i!v$KLaJ8z+xhUfXw8mu7iF`$KgYc^24b4T8SjKSxvft3^DQ?MfC?1DkY
za63K}V@q+)Zc^|u#C6LX>>D>K-@}N-U4wZhB3mIz8rgQrO77S3dNT|V!F?$XxiU(R
z$>$$xZi*8V)nJD$c0(^)?3RU+aP#Yhuk*X(_~~Oo4uHdJj=2tqc#T5)i`7)?33Jp?
zt~`c@ED1p_OG2jb9qTE+jS)I}O4Rqov@gF{0XJu$T3l7Ce_8DtTy|7N?K@s^Qzh*?
zR%v4ukl0vdZxs;S3uBoGorX<*9ewxBlWzfVvdO5Xa7H!FGx@mC{C0Byaz8lp0h}|i
zF{SY*w3>l?scJ^6JQHv+<-V!jy`OT9k0T69%}O<CxBto1>mKPmk_)0=y4>ihqc(Oc
z=%#)9Kb&ByWjA#{syFAPq5?#v8*u>03K)~GTJ_Qahh92-sQxP#`_%t7O{R6h{WyKg
zGal0!7CM(LX>Mo+g*qp4D!%|zi*4c<zP;FP+F_bjrauo5>~7fabvP%RJZJ*vK@&XV
zj=OLljG$^^W}C-t;XH1;v>kv&?FO|+Xi)o%_6UtlE1)*3Anj+qm({=H6f6oYM(JA3
zK!zhb!h+fWqqkkAviwSZiD9L?`rbX2r#E`52f@>L<>5zTB8RVuA!9=YJSTK>D8idV
zr{HV{7EPJH#r$q8hC?D_BIicZof~-qw_Xr`rr2d1^?@h1%yb+!gJ)gx-ee(lx#2Y2
zXaQtHlM_7t+gm+uG7Yv<0NL{HzIO%k3*Mv`&)yH_L9dFa^=*D^C!VS87h};6$kMdi
zY2umQ@q4WPv4F!MVpSLwO_(cKrIuQB>o6xQR-FS5s2L)*%Tj_H@7TQuvkOcjmb!3i
z7nUAeN9p8-AC&^Hiar+2g3pgx97B1;<n#1we#}1Zda8Y~`(j0FeJ-|taRR<8zFXWU
zWv9I+ROctmsK|&PsvZ^n+FPUF7IMutG^0DD<w&Ueko(P6&su@-vsTkYyF9J+wAKPY
z)cTnAq^D-2GR5Q6B5||YEN{c`=nfY;(tY~-^WEs4?{>Z$2p#?K>W2(o|3h|ny2n4d
z{}Eh!4QzaI&1(6$qotmCW>ZBuCU`nepe+u`$BO0ExIHv3t_l&ihsI?)b-W9UkaKYI
zc@`bjt1T$3!Zt=Y!&9QJL^;Dtqc0S5hB??c!)HF2(8?L+2;vNL0C9xL3I6$iPQKjl
zYkugG54y~sF7u_!{OB?tx}*=+Im$?XG^X0}EKS?Z<(_hy@vAz-&5=XFN1;Y2=&h#L
z$)?%H%(pkZE#dE)E~nwf&CL!r(;r=P#bYGjv}#A1Nwa>O#Ams(w1Z<{TwjiUbK0A%
zQ+#l&+)L{T!b{603cv`zZV{D9!+)Um{-dv_Pi&_8R?Si3nL~{=hA<x4!pj)Jm+4#%
z?r&gpTwHqvRah&UtmC-0uF0k*0Pbsg5@WwDU!%|#gXGZ$Y`6I@bez+*??TJXX`h9`
z4=z9SW&#HBp|51}=wWPNka9Nu%PvEVFucgK+Cz`s<AL+JExflN+_yf)0kDt%4&UDg
zx>R3|@A<D6;CUP7ZlQ7#;tcwyYeB{!yGW7lchIA72a4`AOaS4UMR#IBIz)m)96duQ
zcT3AYPABo&VQYrq_?TlBcr5Ay9#Eh_Zkods&VU65WnScuWgU2*naCKbfQ;SsV)ncv
zR^}ahW!|A#(IPYbrsGJkhbqlIy#Cc$-F2U0ab}h~&u!j86(&>wa6*Oo6%g9Ymq~CO
z@67{m!dcvGIc^84=kHCSF~MW+pQE$3<s41~GSl|+k)v1ri~%;IB`}#RK}!ty1Y{?z
zDJP!s<yV&%&x*!pu$70XwM{qaZ_1A?j<pcT=@$K4B5nVcD_cr<Y5QN~LlTgm@!ZY`
zC4-q6+&P4k+vp<SAIfX8y$PJX&7W|=v7+6Dc6tpQNaDY35+3zgVGu4~Jn)22e^Q}q
zrpis)RL%}eE5EV49a!7=N@F{)rRkogc3^*tO)c%f_w6sYw*tu5`>UyAz^yJ`=h8p)
z1>65})yapU&By3=AD_Zke`jyh+(O6?o`vPlm*@9j5GqdqtUdx*e*$0)is$)zqu&RK
z(eF=rU&5?RVzM>`!1|=eV#;=n$SayD6~vqWt^XZl{{1YcA;ZeeDu=+Va*KI-Vt%8;
zjo@r-zMZ%KXSdshNs*t(aGOZ5_sbyjczy6imyZFgcc`vf{Km02oZ)$G3)(uuHZiBi
z*k;!sU*$+h#`uuD7!9rvipIoyR2tq(oQ+#f2=B*zLGj#fl!bN&$fG7jnAE^CR7`}y
zbFEz_+F7Bk^nPjZHGZ`-EJXp9dd!91`NW5b3_VO-oWyT#Qg)K4PqNBwDTnBdjczo8
zv!lswT2(yM`~==!P;*-3$u9K|?asDC@NB#5?LZ<Z+*v#-Hqkt6nAtpt;^^H274sgb
zCUTfwq}I_{r_jrLqOHv1>`Kimhn?4+XfYe4#cU|Qv%KoXP3oO!L+BoCLd3IL5E~A|
z&)*v^?PU1-zukU_mzg#{4Y|%w+sR$YooGyeI!a=+wi`e>oI|cSpOf-ENmr8)xc<hp
zMhIPMI|gs?InrpavC<ZJFmec9kIK#Mt%?#?^6px1b++7K^agm+8|R=_;ThgE1EUE%
z-?rF>(FC4n?Xpp;SpGwPFVv{v9{}X2!fWW(mwFrZpuTPVz!R$d)Y9fAT~BfZIT|>E
z91k49Elu;AI)eLK+-Ttla#ZjK$&~zzT6Rgf{q{}yapmERD?ghRl=uE-Sk&Wp&BBt8
ztjBxZ$8RZqh{Y1Pr%6M9g3(O;9fXEHbf16_yjG9=J(teTAUE?JvC@fM#sa(k>Vr)E
zMxNfV;EIPlH=FQ8T&coFszo)Crqc9`-mqXQC@ivffDtqtCdMFN9E#=uu#->%^h+2Y
z)nhHCl3Mu@Y6fw8n}yD>Wx!7*3cbc&HdVraP^r4-^S^Rd;kDr9qH(QKS=W00$*arw
zJVW)2#6dxvF9!ro%XW3`$wP6-pm=HZ873gW_a>SVF=nH8dH>ynU}xET{)Sn@_>kkI
zqD6%@6cCh4XsykJ6*Uk3pv(z=Z^q*8hj5BNTp_Vd^Pl#!J?K`h)xB0MQ)r0WXkt!b
zR8R$sJyU}h%i)g2!6OX>M;hN6p0E32DruZ#_@r@Jhc6qeX`Oa;NCB+VBEBGG6!cr7
z=92If?+*<B;N9t!@J{bzhO<I<;kdin6?!04zz0H~GyFVsun(u}2Ky%a1U%U{&j;}I
z=scRd&BKcp8asMW48ntACdX*Bn0X98h?z|F=j38p#Xuyh*v4WKyRq0Yg4fqP$_Hn2
z8~)r-YxG$7{};aiL8Ynn!MK-@rj}zX(F+sC1~0v<GsZ*1XNFqgu;W8xdI*rFhpY|p
zBdrZN72-rX6|%q!qy^p$UO&<X?_sYK>9F@QkuH1hJCN>sA9=m#eLC~3&}E@OSr%Fl
z>Zel>dM4CK=S*n2&mWua8|-t&PLIxt28pcbt<ip@t<h(qok(Y*A@wv!eOfU;(liL)
ziL{5phm;_EKT>YPpBe)AQ^SIWeqcevgAMIMuwKkTjJ^PwV}mppjR*^-P_z#0XOfSO
z-~&0~W*Dm(Gd@<czON8i$3~;Oy6@rP=qPJ<%$t?)8SBkgJ;nj*dr2<OK6fp1J27zy
zD^tz(<-D9c$9Kv13IdmW4+3z7zysfsuvg$d4I2>t3h=@3UtR$YELlLv=x-NO4(B%X
z_4Yq;+7`!$v1#C%<|=JA(ne*ivCn=7^@8gzvF^H_*jN>!U&4Cg8t?ueh@5c4o&yfi
zct&|FtXB{j<;k?8U%^Qx7J(qL+Ox&uEXCtWlc4M67(UXRL&GLtK=5TjauD}pcMo#A
z@B`53X_8PuY)dg^J-xhmge<|+D>_rv!Wpx`gk1xJu$IbS02NMwV)RpH2|TI;Hk0n_
zmWTC}G;YHJs3199Q_)d6WPp#BAAyEOYQ7%QyWier+i=bY#jxVIaBu`G;<}N}#*w-#
z2EMYiv{&(U4vA!@fmvWKV4cBN%gm20J3{`T<n0fNVEn<4sASUI_+1w4kM_r=8di=2
zefOdHR|9KKp*@-_?`)>Nx$ym*7I1P}Y-)kBf8TN)j|8r3iN{>K!+iY^YMO_%8i_Zw
zRBr2iP`=vwEVCb2*#>6T6PexQ4aA#adtgKyGr>Jvi{tWP)Kwi8E_w<V5?}cKCOu{R
zzUAhYK-^3gaDMTFkvKw%^vqpmk`4`-&fDa`Sy;A;fxc6sbUo#JLLKZA9~sHhj4=K}
z)O`&gCj?L+f}vRf>i6J5Aesw6G#7cjU(nM9irVMdXlv>Q`W{0w=LjP+XPB8f!-emk
zZ{ZA+1!tI?IKyPf5q1nt#;9MlWMC#2b3M;2mmECZP-k*o@hon5sG)d9!onFnb_)_B
zlGX@+V9^K<|J=NV{uKx2@R;zwJHrdy*)R!^<ubltY_|It6&}ajv-QGxW4%c<*U?)o
zX*5x<k7vC73zT<&jA}9$D?!Kd*H~od=|;V|X~(j{L@*EJWA)DClCD`uW512ajlI}e
zw1c^^-aZpUGp_&Qs)yYZc;n}OC>kRiJo^FX*gGqDZz2Ev<t^aMYnj^;&JQ0vqb1t~
ztvBPSkK}0l&CXA>ayUJt7fm`3<8QXSw{q+Lbe$jgxcJ=U++<wA;Bp3n*~906yQrma
z?SNgz7rPR3c?G|0oA*OchtWM9wh@gMI?#<#hocBM9Ccg+SQY|~y>lA!1jgwm7n(pU
z7n-a<t45f`6AueWOqNgpEF(R-lv|_pj6elRDY>nQiS`{63P}qZ{}@wjflS~lJ~_!F
zXwf3`jSGBEr|9j;c(~6(*3)7u#KberVOj-YPOVb@Mwb5e1y1o$2UM2Jz%TmZ43C5w
zNO&M#W29DinQJufe~b>E%XR78;6)5AtPdmW-PPpA*WQFP?46D8z<JnYjD1Ojk`?J1
z@7QchySc-Q&BLL+g)_R|h5B%wzHz=Woa=98zYXX3JNNN8p~btV(ZQ~4F7Aq*K>I9&
zTBFWB?B2k0v0=d*;wfxA6%8Jc9dDgRFN1!A>5UKU<RKy2AO$Qn)C&E(X~_a>8(jB_
z)fIt556s(?pmE>kUN4(@qW`rjV(F?%UC$R-FxTs1Rgzt1WO>GxcXgzw&WEwHd#m&6
zp7va>w+USoki(7gz%e|l-rD{aFn7K^0;l~EUfrYsEejj)B7q>Ix80>8-OX{fKXj;1
z+!{qS;JyM2je<yYfTP>hpUtDdF-(GXW`_|CHMiB}xMaf$+!;iyHBy+d&LBt~GX;f7
z4L`lkpi3m{7$K*l{_?QbR%aLnM|kv@h;bgDd}|yHaet|TUYQcrt5d?GQ|fwtF&7z!
znbj>T0X+WU_eFG^vB2>dump!#`1rmedkj*71KZuiaZbjK33fBXmWGPQ$f)Y|f@xZO
z+Un%h5zoN4rlVax3{*cFC+&ndysoa-eo`CGliI^{nqhU8!E(A<Ca;Wv*xEM_zNt^6
zSQ(l%;tZm`mYGz|SZ5G&w(`Uhj+++FpzgWG-D0{&sGv}k<UHSa#|**^MIg61aCNe=
zjqn3yciWQ*g*%B^5qQ$;6__~RNlX!)%Xr5=cOlA#GP?V**Y>l?%fQhKxi9qW#?Z%R
z@`V{0;{ME1DjOEe`~*)x)%W{at@1pCDy`qw&R#v#CN1jB#N^;F|4|=fU~<C{dZ-6$
z*evABf79M(f78*V5M<1=({iHIDizXzLdeRyg87vK;-@yEw8VM3CGNnTbNT)YHQ0#s
zW7%VqC(GqSBhhwtU_}P@EF58-&}DS8Q_82~HGJuwdj`TU2u3$Mx&rv@_J0Z7d(edP
zRE{~aEVmKEaE(Hi`e7yU5rwZ2miblR7F4fQ9KFjL5QKWiDnA<=s^_Rl6C3pdzozPH
z{T-cK5WAH#D5EWx8Gkglyj76wMi+k{<$3>iR4?oD471})VvbTWzVw$tVvWyq>QyXX
zzha+4E^e8@U(8)4=7-^Eh#4%Y!all1joph7;0(Q}S=8@1c*mGQ*zy1a-gRaWds3R8
zStbD8gCEn-X40a)1tu68G4f$0vo5h3x9wyl@X4&)A3F@7=b{8AUD6ET1e*J^AQe&0
z{r4bM?hW{Lj`i($o_$Qh*1zsUOl6$0>B>wcif@@m#mnPL6)|^`4=O)u%&5Fgh?+bV
z!()yy@uJDEID@mP87|CUDS2VYCEWG36U8x6T&0N5f_g!jV3gIpq*CLszuN$4l^aL+
zgX~a^+XW^7(_V`vzUo$1AZTY)iy77WKd@!?fBq@kWB<Gc``4&Xl=np}#7I4TZl;dZ
z^6zK{O|`KV%Vx@-vEJUBEs0)IvT~H!oElc_BZ?9tL1e(3W@F0SFl;mhH5%3~MQ%e{
zENX$S&!%nS>7Iau1$II%_&u?&%7WS80aP1P40klcLSjwx&CTI##$E~~AS)pU#ShVj
z4mAH2TTzssX4FB2@(Y8?NHuIMyYFkbC4+N_cz@k%p@C0tqOH1>CppN=Gn*HV{-H6j
z+E%~f*D%#HxB0T>R)AeA(o7puq8B=3Z?93_GML#rPCBD5o7+S)C%WMl2{p6%LO(qW
z9aYV9hKW3+!mmjnKw6~#V3832?LWqCd)ibp?CT)!&ICO~sHd@eX>w^>!ssM8za~xM
zj_MEP4)LjuLlrJnlsVYWN;@heJgDkqKF=|^>iB8`o>yZtjZn?4ySpx&i*?5&!x@u2
z43-2raci)fHZ6BIxUFY+w;Oy*<Cb^%a2;qjImg}FvrV6K5wyC+8m@kxwj9gV&!$#~
zu=)mxL#_H*%b?#b+KVy99=oV=`X_n@ckHgk4wm6`aPg;QWUke}?6+l6q2HE0h$B##
zdtFM%!3GmNQ_4-n1`|Brm0!*cndRk&RFLq<3RCz6nNs0OWeLx(dI`o8f%s#M^RN&M
zPk!B7dLlPGd3=3=9BptI=cy1i@$G!9JmGoNWQbnx4{kOSd$oWZZE;+$_cK3Og{2W7
z=UUCi(g^cF{@jXHt*0OuvrgKji)E`m9{WJth2<9Ff+7whT`51j0wZ=*ItGI=Dl_@J
zWc1J3uP>IJ;%iNQZ6au+TaS~oNo=`R+X!eG&WI<N*2wOTvl)f^n^A>EswQv(CV{Q(
z)AKbTw8rn@&wGD$_fqO>*h6ZsGH@OSAr?@U7)H2_?-+~A%9v8&G=><UdFz-s@kUnv
zFL^4-2}AZ2l+n>9B!-B44R+b4?i^8=ry&N#!sxr*Oc6swXPDn;lFSGs*}A(;(GdfR
zt#O`}1dhBw&<;y9Fj$*r2Zm4obPZb}%XJ%<o@h)JR2Zyad@oZC@J;e*U%#-dFzwqC
zcG2`r4nG}k#zvfq(7sa<w<Gnrgs*V$Evg_|gGU#eSxoz87MmVxBV?EOse}eEi$4^v
zeYfH#l+nH^WyY4ZQS%ZGC1~&=+?BJzj}yL4(%`3+mQ~iiQ&rDY)xK-hhE&(SygHlf
zYTuybsma>+Bi<>o37x7pu)csTdAuyQAcusY|LLLng-xIVgb87pVV*Awf)quAFy#V=
zrH8|!!(jp8+={<Xhoyl-PU+B8Cf<6fH=sW0Sik>G-8pORklXWRbf!AwE({KVy2Ge|
z0Bg_=uo4A@jEaY>il<-1><AlgcEmc^rp)avMUZF~LOiT78;@lY=&kr)wdYq<o~IA;
zWdS9M6=Wx19oYdEUQk#|Hk1`*2Uu5jfHg#XOFWhv*t}oSxE<B@2_~|i6b8$fPtk~{
zU)Yc^z=yCJd*!hjk1%|MLgL3kghWrjh#8OzJgi#rj4n2n`%+UW9!5|+;t|mh!saXx
zkq9A_h(IU}@kldBQ<Q^7g$%^Q@@tHGSL-34t85`)QU6|SA1@Z&*)|Gk$Bre2!)5?S
zS}XQB*;)aN5CgQ*XrU)!qlG!V5?go$MB460QWS)w?S6z}jHZoR76OhG0UtjUfhZ^d
zoI%N>lNpDKv-C?Z^30OF$hTQKN40_bj+*<9n){BLdrT3?J%AX1;BfR2c}X!~43@>f
z-6f1U0%r9fEamB_%Yz#u7-l3^3Wf=T+&MNY3fNLY&}Luls7r`b6D%PnDySeh97)W2
zLQ(Cn)BmQh&PqDOvn%YrqPEoSvjEMG^@XcX99_ET5_ds~XQM45mYp>Ooz-ZDrK6M^
zlVp|~W&xx%0!Iqm1qJ>Um!}jvsWk@SK^|$2K+??-9w})TvpFKnvPxFEITC|4%A*YO
zd$E`=)~DO})&8<{;f$e6J~f*6s4K&jCEpmC-meTR6n9woKAQf!9lnLnO>K_a6b+{+
zW^6I0oLOQW7jaqfJ7`e<m-xYD;N&Fi;BygI6GkM$xn3!&GMs{{2dXl~iE0n|G*wQW
z6?Ne}s5>&5k@fD^L!{aA!0(Gi`0YmNFUl@A=@+?=@Ho^>g);R-8x{TEtI9;=+u=*O
zNyI`)TC-GRi)}0puoMn&v7>N|W$EaSD03C2E2WeS?noGth~T)SrAct4v@qN3EG=+Z
z+Mc?!J=NNJ1=L$xh4z^BM#CDY!Iz8fuT|{>ivJ9~u5m|=YB7xStmRs3t*1Yafc94q
zN*8sNLctza@NPOH8z`+_QQs`r?eOh<3~hVFBtEAwDRM6N@?MtIYF?#SO@ZO0DO&@s
z-Mu8RJ!}?xC^zi<p>=4vUDd7RMgoq8JxxqcLS%Z9I3i43sxYOPQ)dmWY^<qstPW6*
zQJ6TMN-6rAj>sWI3&`mI%$hkRLkP+L3G|Dh&qCqstGS>SoNIV87BP=&rPszQc2Kk8
zKY8CqOW&jeY79H&?d&^{G<F9jdX6Z%H&w12t)X;TK8jc5NckdO`V(CCCx&l_4~d{F
zB84km3ND4nbRtEBrP;w1xxu}fa3g`~C^47-#&I~vjDQ7bfpkS`aM|c2%+8f;f2N)7
zOG>9@hSM0&?NI@`F=cFXi^k!xXFt?+^Lwi+zTx=(!m}i7pZ27O{|K|jfUJ%B0pDME
z9>$E&H%-2c&x;qx(fA_mS(uQQAdqtj7dh9;uez(MgcsJ?TL<C2bq+$?3mW<LZeZ}n
zO5gegPAE7Jbm;?Uj!hopC%ekS!Tc9^qz=!Hy3Wx#=eqBL;mG^0M=lC>Md*HhZZ|~Y
zjw?*N$Lxy%&e@ntJZrSN)Fj%Hy&FG?4{lGQ$=Ysee%YmEnQ*D;ZY+D0JMSlI+~fl1
zCifP)siGP~WIt?3&2MS~`c2LCH33~;^HfbK)WzCQYun#kBgAGl47mH^j`N_v@wf-L
zQOotdHSzao;~x$H*a$$-#y_-xj5nWJtzJg6+b{=4w%5h%<-&?%3w};4^eH02ArA7!
z3g&^SWaK@XfH0!bT%>0hAKCm*bs4ncjkU=L-%Ow7zh85AEz6%#dv0yh&-^VCf450c
z1Yv`r8{Ua~PN5?)2ZZNz&D>hzc~WbP7#b1wt(IW)5k(J`AeVS!V?=N+tq^B>S7G}Q
zk3yW|sGb*dj<<eRR?4p=8greya~a_v!=njJGk8Tb!v&Hw3zE%`Vm2wmW)UglC`059
z4u(6J0TvC+pu5gMv`@(46&%uZL+fKGUp7sv3^DY~hXnav$WuK*A}xs^yY!%%ae><6
zImp3krrZ4{#0|#ik~6w2G+h#+J2G}&EM3xrYZF2X=q47)C_Dwl;yjq}!RAV~I>GWz
zi<pCpzG_ayut39m{`AIWTlU;qZum7)WvQR}efe3PQwV(<v7493cSr1x5S`oph~p8S
zze54~bMzx#E6=aE3x^)nu8R9AGTu+x^cf569OS6?ddLpr!f7=M7joe_60rt*(C|!%
znE|1}Gb3gVHMqknjjRM`WTi2cULtIKXA`Xebz+6hAc_^$c{LV9;W-(x0Yu@M60-qB
z;Tc_NHflnjC3f)W<c{4df$Uwf*n>y22hW6<DWC+8u-6If&8P(XtE^N#@H$DM6C^+@
zH2*gXV<mGW;y1T=Ge}%Az%Dd1=x+0B6xc=Pr3p7HC4wftio-TJSnwv84FS)B1_r6i
z;LoUTH<d6nl`tN_ELKMp(B3A&x)8k44q8_5JxkLOWVA6cXm+W)@<t(X6rNN<AMp+{
zqdt<!xj#q&=$tJKHqy>YeI(^_BBEk2Tv=!zY2CL!Xr9Hg0J^O!m|F91DC2uAc_A(g
z54U6`e5FqYs>I@BCVy?6iSxq~tCtFdgO*X@uT=3u02a0CK2K0v{e23Ad%XSh4A-zw
zVR2Q#^gm9wXp>#u$Dx{|ziP4ALBCimkSUhGYOz?*ze;<BSZsh6i$7?J#R8aOK{~%!
z>X~P(ak)8K-m}5$3$IuFN}H*1myUJFzy_DDi|qsm!AgrKT-rN@V8i`Fus}GlsfFOH
z%ROCP`x8w;-~kOZ+9c`Ds!|<}B7$Q05$d3A)#>SPb=&Nu9M6Ko(dxpn)DXI8(QE7$
zUBX>IQ=RlZ^wGT;IVcM5E3lA1k>C(Ve<Z7h>3WLMNxXJgqDjQ~vx%aDBHfKKyEEp5
z(7lOC6kIDG2Np6Q67vC$&gY=H6A+`5c<r#6kCATY!c|#0-5ktakY0A2V?V64?1v@(
z19K7V)Lb`D*PDAo{-9n<8fEPnA)Z~u%G|dX4><_$MnyXc=b%1PV|_a?sX`ObnL_}6
zgpwR4OJZbFm8!`@Yjyqxzof9L#gqqTCpOtA=vOL<;rKzWsNQ{h_f6*hCSD`sxu&O~
zxagdQi_Y0Rf}30shU@LPT;FlV9rxwPEY%XVpEB%zsMkmGBmXos2MR)6pxtC1KeWe?
z&p@(5I1Ub%ph0!zon*#wM+;lM&LBFQD$=bMhJu6w4hEclu0ePmg@q4^gY@2ePfw{d
z4*t50N%j^K+v+kri3;a%g-puoQssSB;QYc1>D^Vo_xrssL#I}n3k|nX-ppAARb)05
z`B}wTP+B=^il>FTs1u&;{4gIXbCu7j-RCn#tXfu+k!%-O)+<xotM!Ec!fO|B3wkCx
znjjkKb|zv%<C#0(1BM>NkHDhtl{mO;OdQ;zCyv&nqd_dN>F}!aA@>hF!?l<8V|rR5
zaT|MVB%W{1aj$a2+3Lnq#UH8y_cP&8_;!%vTN5T73_%Y~Lp&v9_YB{jKmb3Zh9|_T
z>q)XCm>8SMy%hO02SlO}j57;i)Unh3jq<)y3@1cnnhctbIHY0}Qb}%~+Nq$t=T$7<
z8|X#mNcWZ<DTjrr(mGk}G_+(qe`H0P?e1H1IAC{0NmrS{lHAupyL|ybp&D5wtde^1
z8TE#W1qMWTr<B(bIKn|h{EX~s7H)Ci7Ke={Z1K4knwHWTXRNeQ^bQ-$SD_%@ttPle
zY_GS+t1p8R^o1K}M)`3>ZbwW6v}guTm_e8&W<jhVx35@iD{LPb@K(1tlNC)^8=Y+#
z6YPopGUziq)4DoOa2snU;{>GSdph%aCe+N_3R1Vj%&jmpuZKzs_TSkA>lh8PTsgEM
zpX17KV}+ODp6D(Kqa2C&M+YUZTdS%os3b0EPjp}MVgPXksnf18Zl5RjFV?)k1i9a~
zz63%!h-R9LeGIXG{3mTH<4-UJj_a<j=`We9S3zYljV=2r3ij!r&`16>jf<CQz_crr
zC~2zfAJOywC<IIc=aScJIApJ?wZ)&d-P~i4o||)IwO)6hr`PWtjMnQe(nf>~K<ZBu
zTt3goP7FXa3O(I}nnu4YH6!Uws|x=Oh5WbvZe76sZdmQ;tfskFXaIRLe~u)7KvDnj
zZ=Nw*dzvX>eqT~{vQnC6-I>&p?yo5SUnQ$FGeMe_z#$7H$*{Sj_8_?>{<Qpe$n(Ep
z*1x?P=o-UvvBw%=Z&~FCMNBBKsYxe)1soltk%_IlD3<nt0JEh3gJWbgwDRlER@dLP
zfTu1NxcmadYcQSFboWjU^gC6CHmwhLLNMSHg6Gi~z`Wp%20|N+LPN{F&=>%lJ!*h=
zs8<7qdbe_f*y=rG0uI4W7cg$&N|MI7?@bRikN&*Oa3G(!&#f7hdiu$Y>ifwpoB@y#
zoEZ#2CO89O0ED?tU`}`eKzQi{UL<P(Bx@eb@Lp)F#UY1VUS`9F7zMW6-bJzA{Z|y_
zUnl5Zq&B%uP?jfLLn*VNF!ZZSSiog$XZ*QH_(fGj2^IxUHf1*1*uv@AmXMvM1@@gG
zMKsy7%DWk&vrJY{DFsC?{_>ysGfvs;)N?n$k=Yb{vzEK|co^7(|Fm1E_*p4bIl&CC
z3tnfs`{fJ0KNv3H`-5)<V;@=#Gq%uP-T`A-2*GPYZizeByTXgGR@KP8Vu%bXWB%2`
zBU7*7=p%5n+(lBt8FKjl#2H>@B4;4;B4=`5(P7S93n_pj=r19oj+!F`z?p}#S?=kF
zgOgzFfGAxLKv?L8g$fb@)-VH>8#?Oz5EMy3^NGRCQ5P@eCf{-?Ix}EK%+RyP17-6j
z^-N?>Su_6wM*k3i`-d!p+TiKeIxD~>D||qZl|#t?i>$ErkgPs@bygpmSv`C?E62qY
zosax=ND&sti!#-RJs_YSe?!Av?t0`A&?C<?ZVo*2OlCXZ1mOwzR`4*fnPkiikua-G
zJS-eNFWo{3Xhwe%+~uxmI+JOh<;+A1*If!H@f4(Z*f=o4{%<mQNsK8%;ZrNeJvzrd
zp0k{FrsHru9M+tf;|iVQ3gZA3+Xsw6x>$okX3`MaZ*U-I{$9>m8lh{rbkt4ksHps$
z;GAF;cJCQ|>$tJIjy)6+!whsuN9%aG${f}8DKS6&n>6}#p`VTi?WD15YEnNPL3E}N
zm0sl_jtQVO=tX(FIMCt*fObGwjp>IQ&6s=bH3!sE)+90z01W4lixK#qnE;h%H#_6w
z26|*sLESJQcEiD|o@$0W)BMP1x)%drW24ph@xQ{S;43UFunX)G{7$ej;GRc?)jTAV
zFNCBFNRy_%T8y;--YfL~0uVZ=uO4zj^iUJ+K%#hMwL4x}6`~!iiI*c)E2y|yeFarW
zUs6ZTT`eSj`i<}HGL|nBmU%UE9EOQ;u5qqbnd8(r)k*&EFixrR-Chyhah$^c-4Wew
zmaE*$$@w81Cxz8mvt09B75`_n*{%*qqVipPUH?;t6p+j4YJYz?UMeg%`8u=woCSjf
z%HuZCM{27p-{nIN;H!LvI2hk?9Ris66vYu+6x=(B!6XS6k6cSRgT(UK5)^EgS4A6h
z0N4thVKpWL*A_8PI&TtePHO_ru)>3QgdkH32bScKX>fB)IoarpYIf0hh1#plOnNP7
zC>q{NXj}<-zKoL&P|r+W3=iv?Z=kYY*kEa8x^){C5a*L&+@x2Kh$bQiO+KcW4WN+Z
zXB5=8dc|8ndFx;GEaPAQfxth8zA&SAAlFBis83{c1t51ak*$}DqHN*ggthWQ@uTJQ
z3OLy?Vr_h>dTi!X!i`O6y!3lsSqK0~%Gz};{_(1B(C55q=f<p8vIF66b*$*$DV%(O
zSwh#(F6}#s>&4;|K>+vPZCqLACPM^2x-PQ8NKO@#EmHoRVA4fLKDF790$_=3QQdFH
zL_ri$6+yKkOeveuFFHnhJD2x?`TiO<+cmD!=B)6vE1xQpd_2>rE2_wS+XKLD&nR<#
zI0`1V0NAbWnt;3Txw?4o{fEv9N<v4Tj_h7XCBA-)<Iypl9cuQp3u(JM()x!}2N8$Y
zLGK@E=x9NnF<E#l)peN#NW+aN*Hny&08Q0J0I0}49#=mA8t<9m(O5G)G}8po4P7o^
zjZ#ao#S73<mCKR=l#5ad$Sf>CQrI*H!+f;vw|)+0n?VEHY$%ScTdZO*zU*4+24JaX
z6aX>`fXOBRGdxEKIHH*ZK!o4b5<URJPge&&U0=bB@!YO+X*_(0wq7GNmPWX`q^7zu
zxxUME?PF8e;@&}R(+>A3wu4Mh9%|nvX=K&2nrIpI8MQd`UAZppd*&M8*1m6`4G<su
zh&2(kT%l!T+YE{2zkaSQE`Ip8;6o+nb2Hty<RHr}_Y#kuR4nlvkh$*xPa!5cIO$vH
zxh{a~o_i)rk!Q4$D1M4S&My@ia%ni7D|*X(I=sKl#}+K_3;tj#0Mr@qh1pc5+s}i~
zlWj*Af(5cq27vY(*?aq#g-((kZ49qAK=bDht1)>!GJ{THpZP__3sf%!zDGXv+(*8d
zJd!jse7^b6)qFgF4ZsiKn>4_#HA(Zphwk^lH-iV$X6Q8NfAhmv6R=vRap(^u%~Pt7
zpZf3sX-_pzr$HB(AD%}*o=y{>LI7__(*bGb@UZC|od(Txe)t9gHs~~%ceq{ZOxU+L
z<A;0F+Q(L=W`wQ9DM$LA@iAS2J@ZY(?l?Y~5`QMl$ZEMB+6K_v6mI&Rk@X#s;>U-~
zqN`5~A#{da;HAPlqhaFfC3z~GUqMQ6rBpV3*gtToLE*!~vGTQiGCwe74>KN{p)P=J
z(k0wGS>ju6zEZZ_mq$RJZ<_`<>nbaBBVMRf8$*}zB-%2a26eUEx0!&=I!$0*Wrc2~
zU6ie%IXp|5qtl?Smix96uvMo)T|pL8Xn2NS4|O5*F;daDE%XAX4B|V<ubZ0^z5tV|
zM%JSZ^e+bq)9;UDqi2L}zZN~FHB*D%m)LejV?FkgBs}Ua@&z|MkECwmiCFLFmJPMX
zp#!0qi?*kv%qU3Ra$}V0j0<w(c>rR3$OKb0F(Kq80XMOP(;u^2A>VQ;WG2e>K+L(G
zZ*e;<tFHyz?13CN3vj*$N(}xW8$@<M<X~=83=WoT(6}dr9OokLxXuOu$tLhirW1EX
z;;a06UPU6X)YVMf#Yzl-B=!%vI(MDC8<L;oV(6q!-i^r*aIt?t=MBKEkPOtM$_V|I
zYVK|#DY?L^SMBYwlpY-7{ya#{@gC)Aj(c9<TU*^I<T=l6-pS54GHCl~LdaD*!V`@+
zswqZ3RR9#n7SB1XG_~)T2W<w?H)xC%b4}4SsM$b={6#)Jg(Xw?NW|G}5DEfWw#T2H
zJWRVYcwaCCye}BZSSE-SS0zvqJqf}mM9mIf%eCd&;4?hEcP98LLL{^{_$qzYB~WJI
zKffkf&Bo~tqi<D%m(a4+MulqLsJ7amt$6YZx#i<Y48$A-=duQx5HcskN;M~BB`qDT
zgk?+%v?gQ&dE5}Pmoa<6v7{o;^e|&7C^$Ss%I!_cxqa17Ow-;>gRoAMtJ@qTavKM3
zC-;TXV-%5dK(#4Y&WIBM{#}GZ;)Nm!!WN=xbRS-5Y{D9!u=_@l(}%w9L1oVI8d($b
zq?hWT)Ts7SoZ6>*g$eCR=rg30T_EK92v37}zqb12Q13`DkJuwm>xWH&g;dHebT8vf
zVi}a%2(7?F2)Zw>bZ-Ix8?b7;8{2gHIwe@naLu7!a*k^>SE{4k-)MXxi+oqQc5t1%
z!}SxfcDa5*2yp;lZHE0K`o}{*%%N!kWBpx8)qM|1-sAITU*n}GY*b{bey(AGC@B~d
zQu-q2zJh{rS5W-DS=CKJRj2d@6TJlm!>piy4NQ*I@BSOL+RsHZM693o|1BdKT`oE3
za<_<X`=A{qU-gBzC74&Xh&I=Y%6`M=SH4MDo}igtj#Gqy=OtVs{8GX_hVCWwOEk-r
zI0!qOYEa^E4Y24rTqUGCY0}*-()`FItmT8hYe^d0uO!{cB28J4ba#t%z&FUEu1Tk9
z(j6_*{1zo_O@QRKl5|H+I?W<Y8Im*(uWPOy(+V}>wehsKF#fftd{1$B0;GZSf(aKA
z?9oJRdu<<4wk7OioRGpd%woymsxy=+xf{VJMn=4L5HFmoUta^w9)1o%r6Y0xqj+nS
zGI*I$&{Rua+lpMF^H%w<{rXx>d_|1#pdY8am4Fq!=_@;CeqW<JI<irAe(msP??na8
zuU%$-P$rY}-v|`S5IFYp!G+~#=B6Kt3((Jh4aXd*C$Iuk8Ymrz_UFf(u-h1HMfh1F
zAKcs(UNv{*!uqL<GONm<8Li^$_Gv1;>=e_u{*<!c5%68v<r-im5ErSAmO%?Sid1NP
zXd&rkM{-YYq)rcjr0-;<x0{UGRAy@#4E9@@UssLgU%RLsWo|I`24X`&w?b6t!+4Wc
z2chMMYDU(OPB%@b8>cx7%d7(hvk|BqJkp7lai`3qGM>-AGAYRrd6Ee^`dBG+0e?FM
zFi*$dj7K4F#t$kZrDlh|7C#X3BOUtmH&Oy7>OdP6(8uxVWpLa|Uy<#LlBJhHYMF{X
zCY|=CmKn5e#^XZuXF+BE5mf#ST&B1g|2Q62fB=A41i}QkWc@{wVS%(nvg0?B$&K+x
z;%z3^#TVkWYBEV5baxtcorPLxqUvRv+84hso_!5hs&E{nSxUunxXDElBDo*wOS3p7
z4RHFo&FRMYAIT{I7N<<`3QmQGSN>5M#UF4R{z35!Uirx=F{K1TQ%cM(h0yF$Tg_Lo
zx0ZTJz|&Hr;`9hODlRt;fZVu(IN%q=U18`-+=$XTdPM0F@c@j7&tP%!708IsA|NY%
zjs`fG0So(SwsU{+gT<xg94wy8T+p&}<MzZMW>1`?vRk%4F`gM-Mmsyp$Z&VHwN!c>
zob<TC<Vtw#u8ziK@YYC1{CG-wJQ?9pLhFZye52H(QW%aNp^*CI#KpK9aoTqy?hZ-a
zVaeoB#q-h`T9<_>pIhY?e^#7ZPq}eF$HC?INdtYJ#vfa2TShv<k}*;~EspM&8+R}c
zeMo-fiK$<d#<SutNaJTM9-RskLG>d=_jh!<gT;>*hd#9v8n4(1JdSX<9p=RBc<~EP
z4A4O83or?S2B|KfIFgqYV3{DG3&Je9BZjjq)ISK@dvuf8TIvQHirG9ylzz@fgaVOR
zO+e~y)sG<Y>o0FU#bBhh?zJaZ6iceQocga?RdRnxRO5a;59RJ1t<INx#NeZnQ%bpe
z$AR)L9_SfSdOVHYb7H6lmXfBiw)EA~sCWGQRgc+QiIGgcj|_DLL*uD7{FZGS$016u
z<zrX*OxRIfE&YfjgM-wW64y(3yinSkehx&Y7sqZT&!^6ID2%I&*zaJ`LVXu|RX?tx
z5y!s>6=bZuW0%B&lO?fRW0Cic*pqN{RFFC#A$2nLN-TtU1q5ZVV6-~?syI~OlbFH9
zFp$8PUTjb?UD@|yo<OC{N_|3KS`ePqdJ>b)^D2O)7lV(35U6Iw<Wc#Y7qcfudb0!C
z$%4M3b0TGS)K5`J`BT(VUV>N}of9ntR8I76xfKzOo5C_a6hxmR;9T@Y6L2v)oi`=Y
zV+J|$6pCA-FeGe=+RKB!d!r=U%3P{e6-Hf_qllNI?nQ-tiRr-GdPbn`Mg0oEKm35F
zQFEdLFfK+v4**C>k?Vn|vp9gP&Vn+kr6Bq!)#1*cx*YYCQQt<-iH4ICy`Ikc=nc`R
zzl+iL7`hkzD?)brQ!8ygXYyEOPV{y<1rPz76uR}(s0q<n0njjO1-=0!fRYx#>Lsui
z0b39@Gis)0!OpZFZx8f?9IfiSD14}2qo3iLHdKsuQp=<IMb3*vwatq>8;LqN8+kKQ
z*V4_%A_9sc)1x#XJ!%T=pG=9GZUUx9%|eA+gy4e6W}Ko>he-?9SR$X$Nsk&yX^o8f
z1_tY-D=-Oe7tD*~vSME3DPDlM8To(?X;LCsc{p^O4&>ZOOvZB~*G0;a#Ldi!$7mnY
zNspR{)3i1XNOg1Mfk?3#A1Jm{nn9bh$*l0nD3~R-bYWI~6Ez{~WwEJS;bVBCVNApc
zUS~TIangKO>14z;0<J|oGyxAIp7D({{LI4wI%y{)oyw#0Q*qlEHI5M++UbbH1W6Lh
zV2B86OvJ(n$ZtKbK;RAOhyq@NJsEMHq4UhqA=G=|j6xj~u`L31B@BH8nokII2vzwJ
z@jfwbTSR;p;pvS}#=?jr43i6{fCv{xtcmdU#?rKpzvZcI7Bk0~%`r&8l3c##uOQ+O
z%moBCI2teQtm5#<8D<Nv(dL?Qv}-m2vt4sFfMqs+OwdWi4d4=WfKGsk!e|%F=|JtO
z6PUw+s^1l;U3+@|@s)hVUhj!Pjz9JBUm>T_Kn91hNGC8Tj#7%l0W~~V1<Hali6$KM
z7ekf6LKf>~*GxJyks3-KiBpMKi_%67)cmqrXw__71(K}rCP=;cPs|0?Khrf?q{Ylo
zz7?Iidj0`xv0Z!O;{h&8U;;xPg93>nEbP0nsTyn;A?nRHv1EAj&EU^r3nmkuP;JMu
zDQ3EFz8Pi(DtKS+-9nui+zQ=8HTNFhRccDF`tF#j(>uQOFu>EpwnG!Ew&Pm7?(9dx
zt`UAMtcdWUFuz(HD()^&aTl6;^1|>-09g6F<Rar;)Rph@U8lPBy3QE2c*pmQ@Mpe*
ze8%vg&KU3`VfVuTzaNIjw7aX}4&Az`kC%*rC>aM1%sO{uIi0HZ>AsuP*51@vVoiL<
zcZj$24(YrAI1+Y+RsgPqLBEbS6&yNwlqo>-d@FPTHSr64i+nO|UE~u%K|6UQ>}(if
z&W2s0K<qOBenF_=VUwV7SCer08Lh35mIvBHq8U`-XM~T3wj0XvLWT;%kMpeHaf;Nh
zL^MmaJ?uxFa3FC8h7Vyq48fb@I2?<uqt)0G(7p}fn@MvstB6ssgN1MWH@=^JoV^|i
zdmLuZUJ3Mhn%J{fMmoZhGg2P(aoa5H5iaa#X4pwc@<pNi%vR+T%40SsODLSZ&ZGpt
z!t8aCZ>5i?0WkK7HP)2~WA<u>IeT5{+u+1NmPoyUhl??L-2l!tX)|EXUN;D{<c=85
zvPcIU9_|o3%VPFkdZF>g;l0i{ymymlmTnq;#djtT>1BrOF%{o?La?XM1$zox?ZeL`
zAS51o(0U(w#`22aSgkupW1SF!9R+`tA}bu1O2cs}r;Z&hQt*0`R3KxgJZNL5JYcM&
z#h9qdXHi`}OEU(5FxJsxOysV%!rr`Ibx;D>ya`@LCGoOg5W@}XkQqG4ywW=nuf8$*
zN$^A?1}7w}8OJN;<s<{lUFtYhu*cPN<^B>k7St5dy%ao<C!z)#6Aez%Cm9PFTxje?
zFbUZmq?&f6cO6Z+;U_%Nqkq`#TTG&hSqD^@<8@BF3=&dEz4<Ykz5fV_^XP2hVN%?y
zCFdWhiJ{+7uMOqVAT>hCl->06GiG}AsGAMWr3YAfW~&t{^fQ+}V2;bYYL$xk5@yaT
z*q~K7`UO5Vsh?hm0STzTe?qgN?>vOyKYxwjRVUr6>YhT|xCeO!lGjO}lL&gqR*DLT
zxGk^#3KJ^&7quO=ErXN#QTu>6(EBZ9K{}(f5A(+v-jz6EcaLYZ{C>a}U_(p}XaH{e
zk(8;kU3t_4=iyp2+SMah(F>nsAmqDHhJ4p!egq%8o)i7K#<M2oB-GD6mip<j?m}v-
z3*E;VI_^GUYM-Sq5{IA6v2rwv`O8n8c3&d)C3g;wO5}J}aW`s}=X)MD=**8h=-W6m
z{Tu44AoK*c2Tz2a)ZJ2@4E;qPFILB5j_WD0x*BuMo*ZZ6;RhtxSZsi~P9p<KpwRSa
zs9h?xrPxlalGIK<*V_^A9zNiW3jI@8C8Qn{OXoT*Jr=JU>-7}q-TWWoZpA+1O7U6j
zbIpNzj`su64t`hpWmUGyN<Eqi<fEx4aalo~Z1YPSk%;=G%>~|GuztYXn~F->n|h)R
z7(Jo!FbD~r#WEPXp86ma1$vPBI2EJI<J8k_z`G!IXQSDbdMMT1K-!OZ(GW$+x(np7
zrH(s>dx3#Ig?Y-8)F-K2?wCFYGX<^Zr-14CDFbk^Lk&nBnW~u{nK}jli)ZY^x6a~b
zK~~DJRE(U%G#;21Jjcjc(0UGc4CbT^Nkz9GqVX_t3ZDO)4SLxrC{=b!Iv7*w8V^IH
z;5md)m~uG<Lb#lAJp~HS>nVd$Ap}9P<`!yG$~K~GOBs<0jk(12l&PeelrojfOie*v
z)R3!h1wa+Skd#R&9&eJU3+U%CWP+i3=0QoNZlv5u;gr+#VJE|*CjV~o?>M73eNG9r
zn9~xHoYQheYe;fM>vgTQB-gdx1b{=5EiSi!BrmsE)fz=vrSTw1!Ltih(Bf(fuzr<9
zJAvpXQgiMT6fmX(V%D}ssn=>U5TKBePZY9LlUmJh1=-ARwVZd-CC(BqY|sDD5^+DY
zT-_Q~C2>{-sU0nkGwyiHH89Ap<7mTF&1^ZdrHIY+Q*5SJ);a1*%Zv|DTF7ikt0k@Q
z&9Z!c3D}}QU#>O*_h8k8>IZ4x<6zz6xDcw2*DY*-P+^0M4G_B6Ag?h(d5yO;*7Dra
zcvoY<cQxLOR|WjENNh!Q$ZAFPi?AcmuaCM|>uM7ufoQKbISV^{0G(~RxrKln>FCvI
z(~$NQY&NJ<wIwB*EmHz;w&~sXMgHpU`|Dc(u)c*5vMU4x_Etl6?5%dNIs|>Nx<p$u
zE0ca#&@Y00DV*#s(g@I8`G1;;Za~^s11)1;jY)i_7rWe(nt};vJT&uqmpe!es6Mzl
zs%S7MdB#lZW71Khs%H?KQGHx3w2OgEYPANGb7u9~jGbMbCKiVFF(m^J%SDKv9q~aF
zXKN$D+1eLtqd8uzjf(mR6?Gq$4m0|wEsd|jU^hG~n=N@)JiFe#`+nfu{9yG$W?5MM
zdzxz!fp%28-o5fJLLyD8K{7*iq<a4v!0umTPz_9K2h}(TyGM|hu0eQqy-PkHe(m5>
zZLXPL6KV2m?yd<Qch_7}7t*@gWD<oYIas|)CsN~TO{oR^DYa(Q0{)CzV5}$b2SQSy
zfAC#6lFT8u{k3i}$*o%VnB-oqO%Na2la^XPks3GbXV%Cg_jxt8)sS__wi<g7#)Men
zw$<SGbX$!dYuGE!g@Fk$Y^jAcR@ZQUCdWb6(dcFxJJ@OgioF_4o`Lmajng%Rh0`@I
zGRuoKzO9L~wS5d}EsWu;%EFSbGBq~pT#d^$++T*nKKd;tyM<()G3WZIRcI)Ha||?5
z{AsS&xPvrF>Q0TPO!HLIjO?q{Ntz_4F;V<!9@Th`G;!*AjX|uNK{c7r={{<^q={o1
z69s36y)03B&GeeOy{7{iRkxdMw|kJ`^+yFovI^Z^V#D~#m&MhPnxjd7w9wzxM-l-Z
z6l0_Kc^XkOqo(J}t=M(1If;oTNuq0g)IsFL2y$g1>15bmC(@UB_;%D>%0ws0l_;OB
z7-5Nj)S;S}h;pgs6%_VqAN0Plz*S?LPQvi>v=2zC<26qL#Ug&5n6z7XrDhRR5>pem
zVuCzuJV7e6*1}ruW>5gtT3bssYXv<68!R9s#fn{p2v48WI2-~GNIgL`!z_~($7#dN
z>Wiy;yd!1aKtD%tnK#U=K9^(hT*jjzu{>jHZ%5~6(a3}R)c17{)@3t3Sa(N#^xz%!
z57rlxA1CXdrpZ^12yi$a*wZgFr3~+#FuWt-N9tMq^RL5^(H!~*Cd1l+$*hl%nIjzk
zmjOv}*SLP*2Lgn8XhQrffKU%jsE40|Ci1v0zRZv74o`M}R$OH_8237YTN)2|6HfL!
zNQY<Vn-w*~=SwepkZnMUTkqrm#~+EWm0cW(lkJt4`IR^)GwL*WKphQFUIx>#{rad|
z@7#R{;k)k)Z-P;8c#|BAsu<(2bQqj`t{x;}`7{-^I60f?vy)fBmYS4OjZdDDj1SNZ
z;M?P)+L*kBcw3V9z%Z=IIMLPC<lF}6VmDu3*BH*(rYmVvWXZd`-i5<&8>k}7jmZa+
z@r{+`z>s>`4IrSKug`o#NU6ukV_`CrXv^wvukZfKtG%pT+h-M8Z@&qn%>7{9#o!z1
zgo(8cHj<Z(4X!#^+S0gyoQdduo5Ab`J1|uc20`|$uF>pwZoMN_dEHT!XB$X!lQ=9@
zn<37sElFw4HKZvC5+21Rl2rnc+SLXl8bX{S8UhW5g5FudN?XC~aLk+7BDI09&*8&R
z5X`pM&%N&MErQwh`b{)<4TR6;*=&9}O{Do<cQ!xC((WJGcpyXx8oS9cu&=J`-r`@Q
z`#S-!VRwy0*%yF~r;ds3EDp+D(D+tk6ya85;A7XL$=W6etz|Ok9GDC$K_)ZX*t9nX
zy$#7q44V^*__XmfJ}3OpBCe*qJM&$P8Te+6dTSJ)ps{?+T7CD{lDD9x!f-$8t+n#p
zgh%atd+*!WKO`c(Hjfxv98FH$c^gd9SQfAz6HA)q+&4}%LjKZ%t-`65Z(PTHd-ddv
zY(5rzw&}!XT>O|y8#VWhm2YqaTlvOGG-Y-2jmvMyX2tb4#^9||O?F75@r~TQimUOB
zCO6VcsFh6BE1L6JdL@6gt`T#m9Cp3C5HBdRh=bl6|DFt*>Iz}h{sT6TR&p>*FXUUF
z;*%)`Rn&U2A;&n(X@>>l-nfnx%IVEFG#6Eo8ri(4xhT+8Msv(ZWo<(r2XnA6xA_Vp
zBJtej^I=MzEG%lC-Q4~6-i$uf{4P@?`cU&iA|m=&^V7}UpZ|m2v&}ET`xU)co8N+0
z5>0He!pvx5i^*7;FnVf>tQPLiB+={^^Wl|5i&|vE%S6^s<yAdg72lS_RmW6Ag^Z~-
zt{T4dIEpZ?S|$OR)n;mdl>jc%oT`fP^;Ffd)lf@gbs9|O$5qQBAWNs=`k#u+8&#iF
zMcaK+b!fGiUZ-)^M5~J$ROEAjBzL&#jjH@yT0a1eR&}VAj#fQhHBwUg^-9O9UL?_r
zRj<Dor72!Vp(sY?sz1fzMI$nSuVh7YfX&)N+{rx@Q$$0dMa70t(=a4<s6*F5Da0I&
zffSC$^rz;czm68A2UI1GwW>s&i+N6E2P-UQIH*}=B$wIl>r~fVcQ2xm%tcV$Y0)o+
zA`S2rYCX@e`hPk>CnQ+F<NXVC0?2)_%AtNNhY75n=16wkeUCTz?ztcFB;!*zu7ct&
zuV*7Ihy3U{;ei}ac;?Vp*c^~TNOEq^xralSN`k@xJLq+=?(G%yRZ!W6c&CIJ_{<RX
z&&&z$>`5%ckK8jne(V{Z#U5af$;DYTre2J@ss32<<xERqu<xMSHhO-95k4pe#J}C+
zvEFOYWmOqfa;rdYxmBiDg*>NMol#ZGb4Jyb1gxyON(20&!F;pI+A0v;+A33NYkDfu
z@U4p(RhKikT&FM<S-_oN1xt+iRfLYYzy$PA6@1+fX{fob)X=UL)UlY<G2IX|p5{fy
zOO9UTC`4risSa0}fyPaF=T<pfg}3m`66RLfP{q+PHdM(c^ZDQ)vTxv9zLFM<`8SzW
zzsjR4Lp-A^537QVhgBI-MT=)dl?(uEp#X1jWl&vQd3Y7H{^1%AtxWK&1`Moul_89I
zm9t4SyK)ApiA>am%IQ`3oxy>C$`>m8JUIvT?xARA2@<<g@{Kr9`8<=K2T=7o7i1L_
z+!rL==V{XW3G>T?i}~eq%4=?O%HM@qIh$L-+@1)2w<qpOMBCk!IFAoE&(jIOwj}Tu
zk10XCC=tvTB`z$FR=-f=LZ^^Z{$vFJPF5IK5z*r+A}jrUHB)WId&_Eb;>il&1qvO(
z>mYanaBwA=97@8J@laAud7Pl`1LAn|yQ?~nJR~fsyGm+?13DWx+>`{Z+9o6hX=oa9
z%5N%908(p!B=2Trj)r5c1B46dxN3UhjB@O*Gs=;NOw9uUnh5|%g@ADtui%jh0IpP=
zU5S9%m6lY(T39Wqbhi>C?6RrLNe`1C=!Z#5%cGBw5*(40|9wccDABBx1FVz-c&Hu6
zxOH~=gCC?eSSYNwAa_Uz`*lHL0S^m9xCKZ9X<uSpbO;I#@ka$k2s11%fIlZfs6Qv3
zU_K`#pZR^%wF(a_kVhmI*+yHKT1sxWM;%E#mFVtUR-H<`$fOq&uYkquKI&eDrxgI_
z;><)bB@6D(0?FMsNnJ^N%ruV^i;(7YAN7<{?3=_iCW_W_PEGnQ$=$cA+Q6!Zx)*gU
zTrW;qLlLe?+JxwuYFqh(<q<pxEYFx-eMn|o`CS0v0t4luRsj)}Ur@flYz+k@*iEEj
z!SH^zmWyD!`-TJkP<gtC%AX|plS2MrpCAfDM?r$Z&!!|aRon?Ee;Ns*)oD_fg|rDF
zN7EA*C3?IVi%dTniRIO5S=2^R;#AN<&xe0p#U&NdbAPOKgZ-7dMgef4yQE?PqBuY-
zskE(<3hP}YLjwbjuB~pB$>p*0+_I~9ynI!{I`i21x`a&tNE^^NxII&L6C=%$no&9?
z4KZsHFd<)~Q=^YdYHJ~jL*iTb{>YZHIBpJYDk=NFpz3DXdyKuuv)Wy8R(mxMqYIKg
z8;RsQXnl4EjnK+eZ<_#E$jq|y%DPi!F)v<O%nMX3><Rn&kIF8yiASC{l{rAeU<b+^
zX6SI4LY~ycRIISfFZx8UiJn)gs1y*2N)6(hF@wsCF!4r|Sq6ZUa2`+Wb;8L_LE#u)
zW-5<KPc4&)Q@$z_2?C`Cxe0ZQjXDhkHloZ}B9CR7u2vdby^8Fhfxy&%Xxuk)G~}DO
zY@TvG8~3XOe~rt>i9(zYJXYG%yDy%oEd2|^d*h$Qvjy>|R>dEUM^`^eSTFPutRvtR
zflB<|`2F!X!oere_7fHNVh|tRD`~vy6*pet#V3={#rPYHy%GN~o=QG6ZgnyKYP|b%
zEQmbnD!rfm7wO;SOA|6tzFcZ(oC^C&S|C`tY{_;g4mT3>`?wQv+{+P0zK>fEtH5e~
z+|IbjFJN4&9-knp5R9`WR{TyL)Y*wNGRmpJD7H=w@5ItL4OGvX_9C;vrSnUN^bTrJ
zu|ga!^#e7ecV7vBnj|%AQ~eq@mX?rblpYRC$Q1VA(sOa#lKlM|HyHA?eg5iKr=uS8
zRN>>OskHMtH5$j~I^)>eEPZrPGkiMg3eO2%i4v$a(Ya%#9E_BL$Umx|oLW<}qIUDF
z*zTyKB!4vOm_F1dcq%*MFwevtj=ZlA!wD2=vm*{fBBKM5i0)uTBR{=DRx2a(BV`m(
z`NZf7j6x0YV+0aFwDfm~U?p&AT!ccP-~EQBi-5_DAY%uVKh-ZhgJ;k(B9`j2W)5g4
z3u;M1aMLWPHRTg%2MdZRpIM5>;Ugn-DMm&hkFLNNqXB}U9y4dA1C-x52b6gT6nV(-
zDY)cEpr)iW1@bOXvqVy=Y+mE)jB8v|XeermH;V?Ovb;03y(nGA?2zw6Pzm3M2-GU0
zq~xVBf!ZBg2^{+-A!EE4X2xhz!n7&~xrB2aLR9}zdBLWArj<MaveH;*Ap3R3ded6d
zdTzq|69D~TFgSS_Jd#H#Mru5aPlBhXT)^2DjLy6*crS@qvd;_N%e#4dHPo7JOZFI{
zH5Aird~foC^N=3WRD+C}0l8<xt`^uk<XsU8W><u+<>vR=&~>56$CfFKIdAcT$1UEU
zc+TS|uSA<dV~Zw{G!VH%@!ZkT7MBu<MS+G|T<);)J%c(Ti)Xy>NjDxEngw2LiK+tQ
zIwg4Bn92h*Q)wIroi}8bK1XBX0qeX07S9`(dA#MaA<<U73W+q35U9o335)O}iUb4X
zBV$ZpU6Qy8YL5Jx!}>@^SRXlW9ymPj!n1Zb+U6R@_2e-3XniOFm*eIGU^A~hDo6~)
zfkaP>1S(iabOMPY!i#XZPP(xs(eot|%^=}sAko7jf$x!!z=JU40{h*X3&4d7OM7Qg
zQstT%pNGh$9ndlQXfKO|i#ur*bdVG+ERwa*NZWzN49qA!y&LHQYj_KUg`q5^=i*bN
zs{1n?X=i%gb;Zu5$Th?w1-|E6{s0<M1F($R5hcDtxib+$#D}y^#Vs;x?)@U#_`+-8
zC~Wi3y}hE1UgBpee+(1bal)zkJBVX{#toZw`p5+?EaF6I8fxS_n6r>;#{hkYnu0jB
zPm0OVcQCjR-aDvIP+8MXi^_GaW8!tL^??yAlunTYGbGuV1LP31lVA!!FhFsYD-_(z
zO*Pst0g{~S5&4ROmOjoJ(5FqI3u#i%E?&qRI)%mOmO_=xEw!9eq~)bn=&Ly<8nEy-
z22Q9HA6F9J({Uvw+V0arCciiekzc%!PpK4^I9|f@InHYwFCmzY!I9Z@Kz4I@C1Q@w
z$Li;WC9c2}p}GR{k!WRF-&MiQX@dSz2s_k`4J?^elB=z(k~t;OA96~rEU7*l3YE#(
zl2;_+O3D7b1k%6M;8HSu8eD1w!ko=q0fxipA3IQrJj-_8P+n&q8a&dpLpU;c46W#m
z;pJt2e+4>BsdU1hVKh%DNH}OsBq(*MOLhST2efbqa%6C(n7f-9yoRo`!P=P?@oKo8
zRVG;=y4hwyDjyHDCK+GEvBeV44pA<U5T5UNLOs+IX4)$bsbT(~XOIz2muyY1k!5_!
zeqaX8W=tw7FLV%(?GEzo<}uveVF%6Qxd+1@h~)$#;Rn3)v~qAhbQeuA?9zA`s07a`
zqtL^&Y;ZVqA5X&W(|8zl1kb;m2;CiuX0bbT7!Q69^F45$;$&t!Ljm8(=x$cDD2LQ4
zT1YUv;S!p5?yhc=Rr6yw+&2}`$n9zvu+VafLWld556cW`QV6EQa(CW;W~y}Ga39t%
zKv~5TowCe27<L<{Q`>#4#|-H|1lda+mCaifoz?beG2Oo=X59<dNuoDLLr9yWb7LT+
zTpew98=X20sn_xn#abP0_Z0{^BQ}RB)STGDSX4$~>~V&U$DRmOsAj}YiA63`VrTI>
z&nz8nea(bK8c0YY5Jv%*$NmU<x*ku*&SL+cReUz@W?6H+qS$fl@8gQkDxUO3T?2Oj
zD}-oQ|23_{)~}pg78E_ID7FYJpb@H}#lPWkvUZJvu*!8@=a=04e^kF#+gc&tZLN0k
z7|*WO15zY=H6Udbk58>i-Dn=$+L-z?0YBr+n8tXVx`3z57PMJmo<>{Ire6o?mYOIJ
zx(EI=98;oJ`*=WUpUw=8a6n2f4`1c#%mCO(+TAVM00?ciB~8P;OGol9s){tUD=6Q=
zla~+sfa2)iiDzc&ja2bGP95GxJj2^eX+zD>>^4i=6F?#_{WQUDCc&Y7)g8?&G+6^u
z4y52bOJ8*$WhO-dkj@048(KO5Jx-mMCRp>*uJMZm(6zLF9S91{%pOtIFRjk=MAdne
z0j+F6%B0`Hne@Av;J;sA<ncYv(QQO|;5<&9!lQsI+U#x%XLs8*?Vu;>tMc3JY>zPW
zWFmh~b}j^|%dLjDMoz<9BPYDwl(LQ|?}Ty>O}PgsUu_HERiT_^QtqL4wx5?40?NkQ
z82gwFa9A!2#sSs-sex!*)Od>+y+}4*p`jwfCn^3Ah35}FPR(rN53Oi3yS*K<=>~WL
zO6HGIb6OX&i~~{@q`+B_vN|Q?^PpCh+TrTN>Xe;??SzDF*v!<0semm+6SQF)Q}+?J
z4-AHWsm3dv`f=*0Hh_*oGqN#PwAoJB_BO};u;Xn;wIyEL@ogQc$G6=`=*G6YozUHF
zAGD3&o%0HIHu>#NwFBa*c9+{Zl3#8&wmqO@+wW}ehgzi;QK<PWcn95nI!Mz*NZLyW
z)arw_2uU;1eMp^cGrlcn49G`T8)zQmQWmEKe-YG<n;VcDh7tbM?$mQyHp!6TIS2(h
z4S3DmA*Nqaal5%yB}V^}dLcC!mha)c0L+j+QR7|2#i;jV>TaI@bdw<DD?|MX2+s3m
zIKRi>5&k~#OQzEx8Q4gDfOZJgfq?#R;@$(gsv}t&)j6jX5CVjVCYfx&CSy$STn`wG
z2iq8t7Wf*N^*_&gGxOi|zX6Pmu}v017C|785MTrbL^77i!HA4OfGlzbkxVjJfXM>h
z_f_@Y=NuvC{%^gv*3*L1)z#Hi)z#g#d-v{;M$|_@E&dREFjbY-X&s6HF9!%o{%u!g
z1>zi^-0L*$!>G?fc(OpHH#y&8rhWMBhs6Uh{Lb_3hl^cYJH3Y+0?mXEAzNn0k~+;q
zccYRsJEfs}@Es_PP!Fyp5=e@Z_?P+U!lax3mxbtJgw}LCEK5Gg@i06GI*#@qBs!>%
z6{VANf(-TnZol?t!KVWD!meDCb(k(AHYAc(va#;gflL}IbXb04or0X0Yc3!M?L#jU
z0bi*7Gd(svHZZmt&ICU7AOyK+)THxu&1`+|gm5|W-ZR`Vj{)+t_hij)!u#-DjHkyQ
zj3vN>77o)6JwhTP6>?s9L<OosTDoUSLtM+U75ZV=!Zc|G=IVR*-ov!IFC6)j;pyS)
zFvae|o=~jTO<?2lxscfG;fLwuDn5(c*<}oo;;UT`txg3AaHj>FUXZtQv*TgK1f9u}
zZ1!_MdE+T5iCyt1=AZCoa~F4ta!G1$9HNPov7J$cb|zdHVLlE{S89NC_K{^qzy+`b
zVg7p9)%iG4=6L7nvC%_9=%#U6hO;krdhD#&m;zX~`dO&$(iZ=wOV1RFdybEmU}Eg_
zSok4P+}T|RJ&)swif7evC~O}Lr~(#R%HSHlu?$vrp#<)81NHRq!-wq9;YA#%XfcI!
zMjN}kMsY|yDsr@rg;f*5c5|@)L7m`Zfyb6G><raR0fRcpjcIl=?E*6FFY1b|L)+~}
zrtOhui8vd1$s#UA4&w-WSW%H~UzNzjjE_v@*fue83pcuLk37%dQshWy@GC@<BNvcp
zLF78BvpsSjW0xX_JA-+%oGC=zMWD*z`$8lRBEv>wru9ZzoSc;wg8NQplM3Ec#aVhM
zFuAW!ZVppTZoZ-gzFU1|R<y|F>SRpD=eAFHM^FjxEPqE)%isB}gP?xv@VJAZ96kXd
zSf=vi$<*c(-thD_6W$=_%`RuWaVTe?EN7sWzjGDBfVv71$Ylk%mE`aT^G(h15ZWaA
z=DJ)l@KdfpS*}2-zCc-a&sVCj>mux6Hd}anlOr=AEGr<EzcaA|5EHfF0hOwnsa`#;
zUc+3ydOCUmWtjn`dI4qik{2VVh%XLRNH5j)V`w|QE!x@iw&UJLLmBt>G%WNn)7~E0
zP6v@A+f8Z*{G@gZ+5x|y-6qC1wVT);v5D>XVR@a|*Zv4A8zasm?Q@BjVq=;THI5k7
z1l4aH?sY)yo)+CM{YGofeSJj>Zz4k2iXq7nil=;WA*{VNG)F!D|6i2ALFkKhHq_R9
zkrs*fjpk3^FkcaRiiQn~vKGt$B3KdTGeWEj#j!fVVc{A?vqqGFm7)Z!7sat^6vx_8
z8LS{TJL^aZXmKTwHYL(&eZ{f9l#W&AWXIIOfB$C-y16t9x}t^oijbC&kd}~;mXMHJ
zLPoTNgtUZ&w1kATgoLz&gxnG`q9r7xB_yOJB%~!Iq$MQemJkuQcxG4gz0Kha_clMt
z#dXrCaqb~obKv9=n()5n*GYK2`8}@H%WZ#&oq)aw!PR%}ar?==cNU`c+o2M&NW;a%
z8q9+Sm+;2=8S-{Mr^44BMBCsqY-fwC7T}T9;u?Hl%2#ITpVs^d1EVjwanR9MMh5;2
zq?}30Q-2cRySMhf6#<N7F?-+I|CU@w<`&ikbR^<N@xW?6><tJXCJy-GSLWcG_uqtT
zJ@u#Cf8wxd-+xSa3&~Ud{KKEA>JNWD^k+oJy`A{B9O*iXek0bzwV&9Y)cesAk<9X9
ztv;REbXsTmI~O&6@14htKYr&jo)AbEr_oomfzzDU0cq1Zq{4*)Wl}qcO*zDW;~*^W
zS6U$y#hh<(@J(&S``?=KXN5MjdA_d&cB)y0bgDSpXWZTsBn)Csw#38ghd1}UiC_=b
ze)<M1j4}J)y7m_0*WSAMmc%!-Io5{LCGMX&3H{Ijs2qX~ZH8lUrJ34pRyzdZO`Yc8
zW?`u$7fw23uCB-x=)qlw4ITjwJC1EqI6h}5_*!$a<s&Yi{jt>^9xJe?)#%o!wb8BT
zwC3%7=KfnF^?Jv1Z7yL+thv+%4+~rY-)?F<1Pj`MIX|=VFUUVo*PmJ*Z0Q?-vj`5h
z{NYVJ2kuj8%z8m-LDL)fK0`Vc7hn?DN|M;&W9j;munB@BLCV3cgZ#4-`vUW+0f{GD
zngI*pDo;YBdNWE@NNb;|>W2tv?GvJG%}e2$LtPJ3seq<RJD>x%T^e$O*Zw(*uv1VC
z*hxy>+YE0zqb;#B+MeQr_f*@9Fa$=w7u){c);AQuLq3Xe4h7A?xR`-vUe6j`Pix}}
zGCpeU3+j|N=e&tpne!&Z$XR5Mxf8%njxK7uvMt)+n76^yZF(MP5!V)Z;wTGKGLVHp
zYLYF^Y;JoH$!b%!j}2`%k$e+$MCA!ND+a3YTRJkhE#o$~J>Wg*T$^)fDtt?_5Y7e&
zQL(*I=-jp-^M;|Y4+-H#%|ckdbG}7lOA}c&l-IyW1m<!;>B4Gjk6GLji~h00{LOVN
z|AsajL}G-z0Q{tB8`^ARi`|9|0lonVT)@sha||uq*AH(*Y~$f*<6*oqkL}!vpe36z
zttYiE_f=A)tik;krb;58J*&{T5<XDWoy{`--0ElA8D+E(1_Hi7-eX+e*y@CYF|Ey4
zlh9~vMBdbqV?=9Ln}8gW;N-9oJ|29~YfNj%#RRN{VA<UEf3(*-3lyf!95gN^W~sG>
z2DMX@+aRGKM(zm>6S&nZq0z!dVPA!CrLkGqXd8Ev-EVZNF&giw#uplgeXS`M8fRc9
zhuPXBrzr?>nx1Xy<T=~)ep3t;x(kE!*AKm}O;q>XP_W}3d=NabA=>3c3dTp2MoStw
z=hG~qVD4_YfUO?pLgQZ>J1M_Xa1RyS1A@;tbyCi&U>;G1S9%JTXS91}IK)k92$wdc
zAvkn38BMk}!H^Y$`>jpVn*ouIEgOos-t7461)e2lX2Z0GXhdlZ7t$g*O&_z|kDESg
z3gok<JGsa6db3flyU%VK8;xvE!xhZ7qT!l`FxQXGut%h`S=;PPGYnZLygrp1Fs8nq
z{yMK|B>A|88@P8=*!RK9xr{2sbcQCO&v?{mTw{jg8s|2K3R{~z;WhG4nhb9$XX;F7
ziW-4mboMw|muxOJ7%ACDHi~Nmp>d6_aqr``Mz94oe>AbR2~9BNLEGV&6u0g|jGGHJ
zrEWgBWYqm=!;!c)^|X6OoD}G2!w0P52S}6Z5GwgXW9~MCG(OnPOj<zpQCJAL8O>l*
zNzEjLvp_uNY_nfsz7SuS$!wO%RIIC$)V`dGa_GF~N|P&1NEZU@Txk;NyW#3&QBcK!
z`m%>yX>#9Y_#Wnq^xX=~K$K<>NOU^Y=nkw%Cfl&hH_~@6FauGVK_JPnr!l$^ovE4E
zcu(U<-$OTpMX7a|$o>Mq#wrmBaZMJZ3{Tw*5K5Fv5J)oQu)4Sc9rc&<dZe$!|LJ_X
zvM6M5AY@?6@|wx$bLbK|O;0sNa0<OiJfsN+<q}Oh-}Jg7F~Rki%^pg*5ShH_&Bx@`
zp2x-I^Iln42d!#hoz-<9V|AUKjP0zm+b%WVU1wokCf8kJw^1yq`%OI{zNt5(9=apu
z4`$TEKGojXr<%|0s`>TDa98t~1_=!`IibN(AfQR`AH>h)mW#P{ws6(>78TeHtH$bl
z$88$lsX!o>)Sbd@&Qnw%5Hsq5ql}RXEgU%8RqZHPA1zo<6l@n`yHpO`%I-Rg>jJS@
z<p8myZfZRsQdJHRQZSt3&4Tqr!5~$~dXVt2Hl~Ok);`KYJ~v4aT+)Iu<epXs45!iJ
zU7(nl8nXqv>rCUe?rEwK5KHRrCSrHp19iQL@0$a4#pFnsQE$VmNZ9b|^4FNK{Iwh0
z&5DE@uO-zdCaL}p^+E7M{Z;ifVO9OpM4YaF$s#UscX1aKPU;C+6B;aT0L0=387vbJ
z8Q73XUOQQV0iV|jmdD0XtmIeVHj`i3T8B>nEf%I6cGsC#7l?UUEFh!>^>A7c5HsrS
zd=(TsQ5=W{f&~JCrBOr@we8_(3yK7&2?TXi3egfz6n}FMdW!m$)&}1lYUN=^jmd-2
zy`P~w)!kGV(M>QpqciGl<ObD^^|se5Isn58=RlaF^^#u&KKWHtKrfj2yZVTI2WvCa
zs`>{RJqTONVdY|DJh>YrH((wZm{g*ve;0#av%(?l&X~`hIUmhMxbChqqAubi>QeCt
zD88D})uMO=6hBZ8(F664VrMO`nmSr<9=3Ixc~Ds5N!*Vfi~Z<SIRYwYGny?buN`VG
z)&Gt0-(YWC_B|B3Pvu_xsiJ!Xbl=D5J~Rm?7p}2j(GK!n3H>7E4Ses(!(No|PeYPC
zjIfnkJll8p0E?edZ(co%pI7gfdM^HGy_*jHX1#A;b@6QCmVQ<JE%jaerTV}6BW%=e
z%FYHqyOAKx&9B&W4qtQ|`^bwA#DZ2|+TYbXSI3_6v9CqrGhu}w?2XqR7J|)au)P7;
zY)7Lkz{ZL*!(aRMHBfx}TH0%+|20(C8G-RIS6td_b6<N2^~TRG&nNR?_{*!mz6$S$
zck16?9nS6DZ1Uz2y?8IPncch>hn)xDG?eTr9kyf;NIpkht@{X`g-is;o3*9W@!idK
zA;dFZ^9{k<P3CLaufbnsqf;_2=|}~#iy+}7ocx72dMK9`HI?gAr|Ln3JBno$L!ZTy
zBdgd2;x817<LQ!d#b<D#?Tq4=d9>u^5)Zi;_hE@MI3F~qwgMx{x*J%pEe3b6R$1d2
zkyR|W7z~|D);O@8tg%SE__`8^tt)Yv3w%L!xx_s#7QR;^EgJZ==)+t|4E*6}NDZDs
zqEtx3VUMvmQ8BBSFY%|Lkb+YmV{z(ZTycqu9Gn4zB1rsli95V!{0<7ic%bGM2Fr0=
zK|8M4?qV1&?$!ce9y+Vo3F1$%0DZLpUDP&xq4pCVg8GEE;qay4ADE8jV%^cje&!jJ
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
WPjvbzmo<g&K7+$Q5EUTG>HHrM;qJQt

literal 1945288
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%0AvP)F9vRRUxV9BUftcVXwI7lZMMuKk%9DOf
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
U-ry<tKmNAD`@cW$W6a_I2QG4-4gdfE

diff --git a/src/dns-trace.c b/src/dns-trace.c
index 4566159..8be044b 100644
--- a/src/dns-trace.c
+++ b/src/dns-trace.c
@@ -248,11 +248,18 @@ int handle_event(void *ctx, void *data, size_t data_sz){
             uint16_t class2 = (s_event->buf[pos++]) + (s_event->buf[pos++] << 8);
             uint32_t ttl2 = (s_event->buf[pos++]) + (s_event->buf[pos++] << 8) + (s_event->buf[pos++] << 16) + (s_event->buf[pos++] << 24);
             uint16_t size2 = (s_event->buf[pos++]) + (s_event->buf[pos++] << 8);
+            /*uint16_t type2 = (s_event->buf[0]) + (s_event->buf[1] << 8);
+            uint16_t class2 = (s_event->buf[2]) + (s_event->buf[3] << 8);
+            //uint32_t ttl2 = (s_event->buf[7]) + (s_event->buf[6] << 8) + (s_event->buf[5] << 16) + (s_event->buf[4] << 24);
+            uint32_t ttl2 = (s_event->buf[4]) + (s_event->buf[5] << 8) + (s_event->buf[6] << 16) + (s_event->buf[7] << 24);
+            uint16_t size2 = (s_event->buf[8]) + (s_event->buf[9] << 8);*/
             type2 = ntohs(type2);
             class2 = ntohs(class2);
-            ttl2 = ntohs(ttl2);
+	    ttl2 = ntohl(ttl2);
+	    size2 = ntohs(size2);
             if (type2 == 1) {// -> A
                 uint32_t ip = s_event->buf[pos++] + (s_event->buf[pos++] << 8) + (s_event->buf[pos++] << 16) + (s_event->buf[pos++] << 24);
+                //uint32_t ip = s_event->buf[10] + (s_event->buf[11] << 8) + (s_event->buf[12] << 16) + (s_event->buf[13] << 24);
                 //printf("%d %d %d", s_event->ttl, ntohs(ttl2), ntohs(size2)); 
                 printf("%s (%d)%5d", inet_ntoa(*(struct in_addr*)&ip), type2, ttl2);
             }
@@ -260,7 +267,7 @@ int handle_event(void *ctx, void *data, size_t data_sz){
 
             }
             printf("\n");
-            pos += 2;
+            //pos += 2;
             printf("%d\n", pos);
         }
         /*for (int i = 0; i < s_event->numAns; i++)
diff --git a/src/dns-trace.ebpf.c b/src/dns-trace.ebpf.c
index edc357b..5297f24 100644
--- a/src/dns-trace.ebpf.c
+++ b/src/dns-trace.ebpf.c
@@ -125,8 +125,9 @@ static unsigned int get_answer(struct __sk_buff *skb, struct event *s_event, siz
     // Get the 2 first bytes to identify if it's a message compression or not
     if(bpf_skb_load_bytes(skb, tlen, &buf, 2) < 0)
         return 0;
-    bpf_printk("tlen: %d", tlen);
-    tlen += 4; // For the message compression
+    // bpf_printk("tlen: %d", tlen);
+    bpf_printk("Start at offset ans: %d", offset);
+    tlen += 2; // For the message compression
     /*
      * According to the RFC 1035 (https://datatracker.ietf.org/doc/html/rfc1035#section-4.1.4)
      * In the section 4.1.4, message compression, the first two bits are set at 11 (0xc),
@@ -146,24 +147,29 @@ static unsigned int get_answer(struct __sk_buff *skb, struct event *s_event, siz
         // Get the class and type
         if ((void*)(offset) >= MAX_UDP_PAYLOAD - sizeof(uint16_t))
             return 0;
-        bpf_printk("offset: %d", offset);
+        // bpf_printk("offset: %d", offset);
         bpf_skb_load_bytes(skb, tlen, s_event->buf + offset, sizeof(uint16_t));
         uint16_t type = s_event->buf[0] + (s_event->buf[1] << 8);
         tlen += 2;
-        offset += 2;
-
         if ((void*)(offset += 2) >= MAX_UDP_PAYLOAD - sizeof(uint16_t))
             return 0;
+        //offset += 2;
+
+	// For class
         if(bpf_skb_load_bytes(skb, tlen, s_event->buf + offset, sizeof(uint16_t)) < 0)
             return 0;
         tlen += 2;
+        if ((void*)(offset += 2) >= MAX_UDP_PAYLOAD - sizeof(uint16_t))
+            return 0;
+	//offset += 2;
 
         // Get ttl
         if(bpf_skb_load_bytes(skb, tlen, s_event->buf + offset, sizeof(uint32_t)) < 0)
             return 0;
         if ((void*)(offset += 4) >= MAX_UDP_PAYLOAD - sizeof(uint32_t))
             return 0;
-        tlen += 2;
+        tlen += 4;
+	//offset += 4;
 
         // Get data size
         uint16_t size;
@@ -178,6 +184,8 @@ static unsigned int get_answer(struct __sk_buff *skb, struct event *s_event, siz
             bpf_skb_load_bytes(skb, tlen, s_event->buf + offset, sizeof(uint32_t)); 
         }
         //offset += ntohs(size);
+        if ((void*)(offset += ntohs(size)) >= MAX_UDP_PAYLOAD - sizeof(uint16_t))
+            return 0;
         tlen += ntohs(size);
 
         //tlen += 2;
@@ -190,7 +198,8 @@ static unsigned int get_answer(struct __sk_buff *skb, struct event *s_event, siz
     else {
         // get_labels2(skb, sizeof(struct ethhdr) + sizeof(struct iphdr) + sizeof(struct udphdr) + sizeof(struct dnshdr), s_event);
     }
-    bpf_printk("tlen: %d", tlen);
+    //bpf_printk("tlen: %d", tlen);
+    bpf_printk("End offset ans: %d", offset);
     return offset;
 }
 /*
@@ -335,8 +344,9 @@ static void dnsanswer(struct __sk_buff *skb, struct iphdr ip, struct udphdr udp,
         offset += sizeof(struct dnshdr) + query_len; // For the pos in the answer section in the skb
         unsigned int offset_ans = 0;
         for (uint16_t i = 0; i < ans; i++){
-            offset_ans = get_answer(skb, s_event, offset, offset_ans);
-            offset += offset_ans;
+            offset_ans += get_answer(skb, s_event, offset, offset_ans);
+	    offset += offset_ans + 2;
+            //offset_ans += offset_ans;
             // For eBPF verifier, to be sure we leave the loop
             if (i == ans || i == 5 || offset_ans >= 512)
                 break;
diff --git a/src/dns-trace.ebpf.o b/src/dns-trace.ebpf.o
index 7944a1ff8c3cfb9da70941c081a66531ce5e117f..fcfd45aa86ab047eabb0d4883bcf386fdeb4c71e 100644
GIT binary patch
literal 37064
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
TUPj`$9zV?YJPxDJtSkNpEC5kN

literal 37032
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
S0m4B&ewdHvHAbJ=NBl1ecSL^x

diff --git a/src/vmlinux.h b/src/vmlinux.h
index 1c32721..759a141 100644
--- a/src/vmlinux.h
+++ b/src/vmlinux.h
@@ -157,6 +157,7 @@ struct file_system_type {
 	struct lock_class_key s_writers_key[3];
 	struct lock_class_key i_lock_key;
 	struct lock_class_key i_mutex_key;
+	struct lock_class_key invalidate_lock_key;
 	struct lock_class_key i_mutex_dir_key;
 };
 
@@ -265,6 +266,7 @@ struct file_operations {
 	ssize_t (*sendpage)(struct file *, struct page *, int, size_t, loff_t *, int);
 	long unsigned int (*get_unmapped_area)(struct file *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
 	int (*check_flags)(int);
+	int (*setfl)(struct file *, long unsigned int);
 	int (*flock)(struct file *, int, struct file_lock *);
 	ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
 	ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
@@ -274,7 +276,6 @@ struct file_operations {
 	ssize_t (*copy_file_range)(struct file *, loff_t, struct file *, loff_t, size_t, unsigned int);
 	loff_t (*remap_file_range)(struct file *, loff_t, struct file *, loff_t, loff_t, unsigned int);
 	int (*fadvise)(struct file *, loff_t, loff_t, int);
-	bool may_pollfree;
 };
 
 typedef __s64 time64_t;
@@ -305,6 +306,7 @@ struct old_timespec32 {
 struct pollfd;
 
 struct restart_block {
+	long unsigned int arch_data;
 	long int (*fn)(struct restart_block *);
 	union {
 		struct {
@@ -336,6 +338,7 @@ struct restart_block {
 
 struct thread_info {
 	long unsigned int flags;
+	long unsigned int syscall_work;
 	u32 status;
 };
 
@@ -370,36 +373,6 @@ struct rb_node {
 	struct rb_node *rb_left;
 };
 
-struct sched_statistics {
-	u64 wait_start;
-	u64 wait_max;
-	u64 wait_count;
-	u64 wait_sum;
-	u64 iowait_count;
-	u64 iowait_sum;
-	u64 sleep_start;
-	u64 sleep_max;
-	s64 sum_sleep_runtime;
-	u64 block_start;
-	u64 block_max;
-	u64 exec_max;
-	u64 slice_max;
-	u64 nr_migrations_cold;
-	u64 nr_failed_migrations_affine;
-	u64 nr_failed_migrations_running;
-	u64 nr_failed_migrations_hot;
-	u64 nr_forced_migrations;
-	u64 nr_wakeups;
-	u64 nr_wakeups_sync;
-	u64 nr_wakeups_migrate;
-	u64 nr_wakeups_local;
-	u64 nr_wakeups_remote;
-	u64 nr_wakeups_affine;
-	u64 nr_wakeups_affine_attempts;
-	u64 nr_wakeups_passive;
-	u64 nr_wakeups_idle;
-};
-
 struct util_est {
 	unsigned int enqueued;
 	unsigned int ewma;
@@ -429,7 +402,6 @@ struct sched_entity {
 	u64 vruntime;
 	u64 prev_sum_exec_runtime;
 	u64 nr_migrations;
-	struct sched_statistics statistics;
 	int depth;
 	struct sched_entity *parent;
 	struct cfs_rq *cfs_rq;
@@ -438,6 +410,9 @@ struct sched_entity {
 	long: 64;
 	long: 64;
 	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 	struct sched_avg avg;
 };
 
@@ -495,6 +470,48 @@ struct sched_dl_entity {
 	struct sched_dl_entity *pi_se;
 };
 
+struct uclamp_se {
+	unsigned int value: 11;
+	unsigned int bucket_id: 3;
+	unsigned int active: 1;
+	unsigned int user_defined: 1;
+};
+
+struct sched_statistics {
+	u64 wait_start;
+	u64 wait_max;
+	u64 wait_count;
+	u64 wait_sum;
+	u64 iowait_count;
+	u64 iowait_sum;
+	u64 sleep_start;
+	u64 sleep_max;
+	s64 sum_sleep_runtime;
+	u64 block_start;
+	u64 block_max;
+	u64 exec_max;
+	u64 slice_max;
+	u64 nr_migrations_cold;
+	u64 nr_failed_migrations_affine;
+	u64 nr_failed_migrations_running;
+	u64 nr_failed_migrations_hot;
+	u64 nr_forced_migrations;
+	u64 nr_wakeups;
+	u64 nr_wakeups_sync;
+	u64 nr_wakeups_migrate;
+	u64 nr_wakeups_local;
+	u64 nr_wakeups_remote;
+	u64 nr_wakeups_affine;
+	u64 nr_wakeups_affine_attempts;
+	u64 nr_wakeups_passive;
+	u64 nr_wakeups_idle;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
 struct cpumask {
 	long unsigned int bits[128];
 };
@@ -564,8 +581,22 @@ struct posix_cputimers {
 	unsigned int expiry_active;
 };
 
+typedef atomic64_t atomic_long_t;
+
+struct optimistic_spin_queue {
+	atomic_t tail;
+};
+
+struct mutex {
+	atomic_long_t owner;
+	raw_spinlock_t wait_lock;
+	struct optimistic_spin_queue osq;
+	struct list_head wait_list;
+};
+
 struct posix_cputimers_work {
 	struct callback_head work;
+	struct mutex mutex;
 	unsigned int scheduled;
 };
 
@@ -600,6 +631,13 @@ struct seccomp {
 	struct seccomp_filter *filter;
 };
 
+struct syscall_user_dispatch {
+	char *selector;
+	long unsigned int offset;
+	long unsigned int len;
+	bool on_dispatch;
+};
+
 struct wake_q_node {
 	struct wake_q_node *next;
 };
@@ -630,19 +668,6 @@ struct seqcount_spinlock {
 
 typedef struct seqcount_spinlock seqcount_spinlock_t;
 
-typedef atomic64_t atomic_long_t;
-
-struct optimistic_spin_queue {
-	atomic_t tail;
-};
-
-struct mutex {
-	atomic_long_t owner;
-	spinlock_t wait_lock;
-	struct optimistic_spin_queue osq;
-	struct list_head wait_list;
-};
-
 struct arch_tlbflush_unmap_batch {
 	struct cpumask cpumask;
 };
@@ -659,6 +684,8 @@ struct page_frag {
 	__u32 size;
 };
 
+struct kmap_ctrl {};
+
 struct timer_list {
 	struct hlist_node entry;
 	long unsigned int expires;
@@ -666,6 +693,10 @@ struct timer_list {
 	u32 flags;
 };
 
+struct llist_head {
+	struct llist_node *first;
+};
+
 struct desc_struct {
 	u16 limit0;
 	u16 base0;
@@ -682,6 +713,12 @@ struct desc_struct {
 	u16 base2: 8;
 };
 
+struct fpu_state_perm {
+	u64 __state_perm;
+	unsigned int __state_size;
+	unsigned int __user_state_size;
+};
+
 struct fregs_state {
 	u32 cwd;
 	u32 swd;
@@ -763,16 +800,31 @@ union fpregs_state {
 	u8 __padding[4096];
 };
 
+struct fpstate {
+	unsigned int size;
+	unsigned int user_size;
+	u64 xfeatures;
+	u64 user_xfeatures;
+	u64 xfd;
+	unsigned int is_valloc: 1;
+	unsigned int is_guest: 1;
+	unsigned int is_confidential: 1;
+	unsigned int in_use: 1;
+	long: 64;
+	long: 64;
+	long: 64;
+	union fpregs_state regs;
+};
+
 struct fpu {
 	unsigned int last_cpu;
 	long unsigned int avx512_timestamp;
+	struct fpstate *fpstate;
+	struct fpstate *__task_fpstate;
+	struct fpu_state_perm perm;
 	long: 64;
 	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	union fpregs_state state;
+	struct fpstate __fpstate;
 };
 
 struct perf_event;
@@ -797,7 +849,7 @@ struct thread_struct {
 	struct io_bitmap *io_bitmap;
 	long unsigned int iopl_emul;
 	unsigned int iopl_warn: 1;
-	unsigned int sig_on_uaccess_err: 1;
+	u32 pkru;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -882,9 +934,13 @@ struct uprobe_task;
 
 struct vm_struct;
 
+struct bpf_local_storage;
+
+struct bpf_run_ctx;
+
 struct task_struct {
 	struct thread_info thread_info;
-	volatile long int state;
+	unsigned int __state;
 	void *stack;
 	refcount_t usage;
 	unsigned int flags;
@@ -903,16 +959,39 @@ struct task_struct {
 	int normal_prio;
 	unsigned int rt_priority;
 	const struct sched_class *sched_class;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 	struct sched_entity se;
 	struct sched_rt_entity rt;
-	struct task_group *sched_task_group;
 	struct sched_dl_entity dl;
+	struct rb_node core_node;
+	long unsigned int core_cookie;
+	unsigned int core_occupation;
+	struct task_group *sched_task_group;
+	struct uclamp_se uclamp_req[2];
+	struct uclamp_se uclamp[2];
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct sched_statistics stats;
 	struct hlist_head preempt_notifiers;
 	unsigned int btrace_seq;
 	unsigned int policy;
 	int nr_cpus_allowed;
 	const cpumask_t *cpus_ptr;
+	cpumask_t *user_cpus_ptr;
 	cpumask_t cpus_mask;
+	void *migration_pending;
+	short unsigned int migration_disabled;
+	short unsigned int migration_flags;
 	int trc_reader_nesting;
 	int trc_ipi_to_cpu;
 	union rcu_special trc_reader_special;
@@ -946,6 +1025,7 @@ struct task_struct {
 	unsigned int frozen: 1;
 	unsigned int use_memdelay: 1;
 	unsigned int in_memstall: 1;
+	unsigned int in_eventfd: 1;
 	long unsigned int atomic_flags;
 	struct restart_block restart_block;
 	pid_t pid;
@@ -965,6 +1045,7 @@ struct task_struct {
 	struct completion *vfork_done;
 	int *set_child_tid;
 	int *clear_child_tid;
+	void *pf_io_worker;
 	u64 utime;
 	u64 stime;
 	u64 gtime;
@@ -1005,6 +1086,7 @@ struct task_struct {
 	kuid_t loginuid;
 	unsigned int sessionid;
 	struct seccomp seccomp;
+	struct syscall_user_dispatch syscall_dispatch;
 	u64 parent_exec_id;
 	u64 self_exec_id;
 	spinlock_t alloc_lock;
@@ -1013,6 +1095,7 @@ struct task_struct {
 	struct rb_root_cached pi_waiters;
 	struct task_struct *pi_top_task;
 	struct rt_mutex_waiter *pi_blocked_on;
+	unsigned int in_ubsan;
 	void *journal_info;
 	struct bio_list *bio_list;
 	struct blk_plug *plug;
@@ -1094,6 +1177,7 @@ struct task_struct {
 	struct uprobe_task *utask;
 	unsigned int sequential_io;
 	unsigned int sequential_io_avg;
+	struct kmap_ctrl kmap_ctrl;
 	int pagefault_disabled;
 	struct task_struct *oom_reaper_list;
 	struct timer_list oom_reaper_timer;
@@ -1101,6 +1185,8 @@ struct task_struct {
 	refcount_t stack_refcount;
 	int patch_state;
 	void *security;
+	struct bpf_local_storage *bpf_storage;
+	struct bpf_run_ctx *bpf_ctx;
 	void *mce_vaddr;
 	__u64 mce_kflags;
 	u64 mce_addr;
@@ -1109,6 +1195,8 @@ struct task_struct {
 	__u64 __mce_reserved: 62;
 	struct callback_head mce_kill_me;
 	int mce_count;
+	struct llist_head kretprobe_instances;
+	struct callback_head l1d_flush_kill;
 	long: 64;
 	long: 64;
 	struct thread_struct thread;
@@ -1432,6 +1520,13 @@ struct pt_regs {
 	long unsigned int ss;
 };
 
+enum {
+	GATE_INTERRUPT = 14,
+	GATE_TRAP = 15,
+	GATE_CALL = 12,
+	GATE_TASK = 5,
+};
+
 struct idt_bits {
 	u16 ist: 3;
 	u16 zero: 5;
@@ -1440,6 +1535,13 @@ struct idt_bits {
 	u16 p: 1;
 };
 
+struct idt_data {
+	unsigned int vector;
+	unsigned int segment;
+	struct idt_bits bits;
+	const void *addr;
+};
+
 struct gate_struct {
 	u16 offset_low;
 	u16 segment;
@@ -1483,7 +1585,7 @@ typedef struct {
 } pgd_t;
 
 typedef struct {
-	pgd_t pgd;
+	p4dval_t p4d;
 } p4d_t;
 
 typedef struct {
@@ -1498,12 +1600,12 @@ typedef struct page *pgtable_t;
 
 struct address_space;
 
+struct page_pool;
+
 struct kmem_cache;
 
 struct dev_pagemap;
 
-struct obj_cgroup;
-
 struct page {
 	long unsigned int flags;
 	union {
@@ -1514,7 +1616,14 @@ struct page {
 			long unsigned int private;
 		};
 		struct {
-			long unsigned int dma_addr[2];
+			long unsigned int pp_magic;
+			struct page_pool *pp;
+			long unsigned int _pp_mapping_pad;
+			long unsigned int dma_addr;
+			union {
+				long unsigned int dma_addr_upper;
+				atomic_long_t pp_frag_count;
+			};
 		};
 		struct {
 			union {
@@ -1572,43 +1681,31 @@ struct page {
 		int units;
 	};
 	atomic_t _refcount;
-	union {
-		struct mem_cgroup *mem_cgroup;
-		struct obj_cgroup **obj_cgroups;
-	};
+	long unsigned int memcg_data;
 };
 
 struct paravirt_callee_save {
 	void *func;
 };
 
-struct pv_init_ops {
-	unsigned int (*patch)(u8, void *, long unsigned int, unsigned int);
-};
-
 struct pv_lazy_ops {
-	void (*enter)();
-	void (*leave)();
-	void (*flush)();
-};
-
-struct pv_time_ops {
-	long long unsigned int (*sched_clock)();
-	long long unsigned int (*steal_clock)(int);
+	void (*enter)(void);
+	void (*leave)(void);
+	void (*flush)(void);
 };
 
 struct pv_cpu_ops {
-	void (*io_delay)();
+	void (*io_delay)(void);
 	long unsigned int (*get_debugreg)(int);
 	void (*set_debugreg)(int, long unsigned int);
-	long unsigned int (*read_cr0)();
+	long unsigned int (*read_cr0)(void);
 	void (*write_cr0)(long unsigned int);
 	void (*write_cr4)(long unsigned int);
-	void (*load_tr_desc)();
+	void (*load_tr_desc)(void);
 	void (*load_gdt)(const struct desc_ptr *);
 	void (*load_idt)(const struct desc_ptr *);
 	void (*set_ldt)(const void *, unsigned int);
-	long unsigned int (*store_tr)();
+	long unsigned int (*store_tr)(void);
 	void (*load_tls)(struct thread_struct *, unsigned int);
 	void (*load_gs_index)(unsigned int);
 	void (*write_ldt_entry)(struct desc_struct *, int, const void *);
@@ -1617,28 +1714,25 @@ struct pv_cpu_ops {
 	void (*alloc_ldt)(struct desc_struct *, unsigned int);
 	void (*free_ldt)(struct desc_struct *, unsigned int);
 	void (*load_sp0)(long unsigned int);
-	void (*invalidate_io_bitmap)();
-	void (*update_io_bitmap)();
-	void (*wbinvd)();
+	void (*invalidate_io_bitmap)(void);
+	void (*update_io_bitmap)(void);
+	void (*wbinvd)(void);
 	void (*cpuid)(unsigned int *, unsigned int *, unsigned int *, unsigned int *);
 	u64 (*read_msr)(unsigned int);
 	void (*write_msr)(unsigned int, unsigned int, unsigned int);
 	u64 (*read_msr_safe)(unsigned int, int *);
 	int (*write_msr_safe)(unsigned int, unsigned int, unsigned int);
 	u64 (*read_pmc)(int);
-	void (*usergs_sysret64)();
-	void (*iret)();
 	void (*start_context_switch)(struct task_struct *);
 	void (*end_context_switch)(struct task_struct *);
 };
 
 struct pv_irq_ops {
 	struct paravirt_callee_save save_fl;
-	struct paravirt_callee_save restore_fl;
 	struct paravirt_callee_save irq_disable;
 	struct paravirt_callee_save irq_enable;
-	void (*safe_halt)();
-	void (*halt)();
+	void (*safe_halt)(void);
+	void (*halt)(void);
 };
 
 struct flush_tlb_info;
@@ -1646,15 +1740,15 @@ struct flush_tlb_info;
 struct mmu_gather;
 
 struct pv_mmu_ops {
-	void (*flush_tlb_user)();
-	void (*flush_tlb_kernel)();
+	void (*flush_tlb_user)(void);
+	void (*flush_tlb_kernel)(void);
 	void (*flush_tlb_one_user)(long unsigned int);
-	void (*flush_tlb_others)(const struct cpumask *, const struct flush_tlb_info *);
+	void (*flush_tlb_multi)(const struct cpumask *, const struct flush_tlb_info *);
 	void (*tlb_remove_table)(struct mmu_gather *, void *);
 	void (*exit_mmap)(struct mm_struct *);
 	struct paravirt_callee_save read_cr2;
 	void (*write_cr2)(long unsigned int);
-	long unsigned int (*read_cr3)();
+	long unsigned int (*read_cr3)(void);
 	void (*write_cr3)(long unsigned int);
 	void (*activate_mm)(struct mm_struct *, struct mm_struct *);
 	void (*dup_mmap)(struct mm_struct *, struct mm_struct *);
@@ -1682,6 +1776,9 @@ struct pv_mmu_ops {
 	struct paravirt_callee_save pud_val;
 	struct paravirt_callee_save make_pud;
 	void (*set_p4d)(p4d_t *, p4d_t);
+	struct paravirt_callee_save p4d_val;
+	struct paravirt_callee_save make_p4d;
+	void (*set_pgd)(pgd_t *, pgd_t);
 	struct pv_lazy_ops lazy_mode;
 	void (*set_fixmap)(unsigned int, phys_addr_t, pgprot_t);
 };
@@ -1691,8 +1788,9 @@ struct flush_tlb_info {
 	long unsigned int start;
 	long unsigned int end;
 	u64 new_tlb_gen;
-	unsigned int stride_shift;
-	bool freed_tables;
+	unsigned int initiating_cpu;
+	u8 stride_shift;
+	u8 freed_tables;
 };
 
 struct rw_semaphore {
@@ -1716,7 +1814,7 @@ typedef struct {
 	atomic64_t tlb_gen;
 	struct rw_semaphore ldt_usr_sem;
 	struct ldt_struct *ldt;
-	short unsigned int ia32_compat;
+	short unsigned int flags;
 	struct mutex lock;
 	void *vdso;
 	const struct vdso_image *vdso_image;
@@ -1767,7 +1865,6 @@ struct mm_struct {
 		atomic_t membarrier_state;
 		atomic_t mm_users;
 		atomic_t mm_count;
-		atomic_t has_pinned;
 		atomic_long_t pgtables_bytes;
 		int map_count;
 		spinlock_t page_table_lock;
@@ -1795,7 +1892,7 @@ struct mm_struct {
 		long unsigned int arg_end;
 		long unsigned int env_start;
 		long unsigned int env_end;
-		long unsigned int saved_auxv[46];
+		long unsigned int saved_auxv[48];
 		struct mm_rss_stat rss_stat;
 		struct linux_binfmt *binfmt;
 		mm_context_t context;
@@ -1849,6 +1946,7 @@ struct vm_area_struct {
 	const struct vm_operations_struct *vm_ops;
 	long unsigned int vm_pgoff;
 	struct file *vm_file;
+	struct file *vm_prfile;
 	void *vm_private_data;
 	atomic_long_t swap_readahead_info;
 	struct mempolicy *vm_policy;
@@ -1864,8 +1962,6 @@ struct pv_lock_ops {
 };
 
 struct paravirt_patch_template {
-	struct pv_init_ops init;
-	struct pv_time_ops time;
 	struct pv_cpu_ops cpu;
 	struct pv_irq_ops irq;
 	struct pv_mmu_ops mmu;
@@ -2010,6 +2106,9 @@ struct vdso_image {
 	long unsigned int size;
 	long unsigned int alt;
 	long unsigned int alt_len;
+	long unsigned int extable_base;
+	long unsigned int extable_len;
+	const void *extable;
 	long int sym_vvar_start;
 	long int sym_vvar_page;
 	long int sym_pvclock_page;
@@ -2020,6 +2119,8 @@ struct vdso_image {
 	long int sym___kernel_rt_sigreturn;
 	long int sym___kernel_vsyscall;
 	long int sym_int80_landing_pad;
+	long int sym_vdso32_sigreturn_landing_pad;
+	long int sym_vdso32_rt_sigreturn_landing_pad;
 };
 
 struct xarray {
@@ -2035,15 +2136,15 @@ struct address_space_operations;
 struct address_space {
 	struct inode *host;
 	struct xarray i_pages;
+	struct rw_semaphore invalidate_lock;
 	gfp_t gfp_mask;
 	atomic_t i_mmap_writable;
 	struct rb_root_cached i_mmap;
-	struct rw_semaphore i_mmap_rwsem;
 	long unsigned int nrpages;
-	long unsigned int nrexceptional;
 	long unsigned int writeback_index;
 	const struct address_space_operations *a_ops;
 	long unsigned int flags;
+	struct rw_semaphore i_mmap_rwsem;
 	errseq_t wb_err;
 	spinlock_t private_lock;
 	struct list_head private_list;
@@ -2051,7 +2152,7 @@ struct address_space {
 };
 
 struct vmem_altmap {
-	const long unsigned int base_pfn;
+	long unsigned int base_pfn;
 	const long unsigned int end_pfn;
 	const long unsigned int reserve;
 	long unsigned int free;
@@ -2077,8 +2178,7 @@ struct dev_pagemap_ops;
 
 struct dev_pagemap {
 	struct vmem_altmap altmap;
-	struct percpu_ref *ref;
-	struct percpu_ref internal_ref;
+	struct percpu_ref ref;
 	struct completion done;
 	enum memory_type type;
 	unsigned int flags;
@@ -2154,8 +2254,7 @@ struct file {
 	u64 f_version;
 	void *f_security;
 	void *private_data;
-	struct list_head f_ep_links;
-	struct list_head f_tfile_llink;
+	struct hlist_head *f_ep;
 	struct address_space *f_mapping;
 	errseq_t f_wb_err;
 	errseq_t f_sb_err;
@@ -2174,11 +2273,12 @@ struct vm_fault;
 struct vm_operations_struct {
 	void (*open)(struct vm_area_struct *);
 	void (*close)(struct vm_area_struct *);
-	int (*split)(struct vm_area_struct *, long unsigned int);
+	int (*may_split)(struct vm_area_struct *, long unsigned int);
 	int (*mremap)(struct vm_area_struct *);
+	int (*mprotect)(struct vm_area_struct *, long unsigned int, long unsigned int, long unsigned int);
 	vm_fault_t (*fault)(struct vm_fault *);
 	vm_fault_t (*huge_fault)(struct vm_fault *, enum page_entry_size);
-	void (*map_pages)(struct vm_fault *, long unsigned int, long unsigned int);
+	vm_fault_t (*map_pages)(struct vm_fault *, long unsigned int, long unsigned int);
 	long unsigned int (*pagesize)(struct vm_area_struct *);
 	vm_fault_t (*page_mkwrite)(struct vm_fault *);
 	vm_fault_t (*pfn_mkwrite)(struct vm_fault *);
@@ -2200,15 +2300,33 @@ struct core_state {
 	struct completion startup;
 };
 
+enum fault_flag {
+	FAULT_FLAG_WRITE = 1,
+	FAULT_FLAG_MKWRITE = 2,
+	FAULT_FLAG_ALLOW_RETRY = 4,
+	FAULT_FLAG_RETRY_NOWAIT = 8,
+	FAULT_FLAG_KILLABLE = 16,
+	FAULT_FLAG_TRIED = 32,
+	FAULT_FLAG_USER = 64,
+	FAULT_FLAG_REMOTE = 128,
+	FAULT_FLAG_INSTRUCTION = 256,
+	FAULT_FLAG_INTERRUPTIBLE = 512,
+};
+
 struct vm_fault {
-	struct vm_area_struct *vma;
-	unsigned int flags;
-	gfp_t gfp_mask;
-	long unsigned int pgoff;
-	long unsigned int address;
+	const struct {
+		struct vm_area_struct *vma;
+		gfp_t gfp_mask;
+		long unsigned int pgoff;
+		long unsigned int address;
+	};
+	enum fault_flag flags;
 	pmd_t *pmd;
 	pud_t *pud;
-	pte_t orig_pte;
+	union {
+		pte_t orig_pte;
+		pmd_t orig_pmd;
+	};
 	struct page *cow_page;
 	struct page *page;
 	pte_t *pte;
@@ -2233,7 +2351,7 @@ enum numa_stat_item {
 	NUMA_INTERLEAVE_HIT = 3,
 	NUMA_LOCAL = 4,
 	NUMA_OTHER = 5,
-	NR_VM_NUMA_STAT_ITEMS = 6,
+	NR_VM_NUMA_EVENT_ITEMS = 6,
 };
 
 enum zone_stat_item {
@@ -2246,11 +2364,10 @@ enum zone_stat_item {
 	NR_ZONE_UNEVICTABLE = 5,
 	NR_ZONE_WRITE_PENDING = 6,
 	NR_MLOCK = 7,
-	NR_PAGETABLE = 8,
-	NR_BOUNCE = 9,
-	NR_ZSPAGES = 10,
-	NR_FREE_CMA_PAGES = 11,
-	NR_VM_ZONE_STAT_ITEMS = 12,
+	NR_BOUNCE = 8,
+	NR_ZSPAGES = 9,
+	NR_FREE_CMA_PAGES = 10,
+	NR_VM_ZONE_STAT_ITEMS = 11,
 };
 
 enum node_stat_item {
@@ -2295,7 +2412,9 @@ enum node_stat_item {
 	NR_FOLL_PIN_ACQUIRED = 34,
 	NR_FOLL_PIN_RELEASED = 35,
 	NR_KERNEL_STACK_KB = 36,
-	NR_VM_NODE_STAT_ITEMS = 37,
+	NR_PAGETABLE = 37,
+	NR_SWAPCACHE = 38,
+	NR_VM_NODE_STAT_ITEMS = 39,
 };
 
 enum lru_list {
@@ -2360,8 +2479,6 @@ struct rlimit {
 
 struct dev_pagemap_ops {
 	void (*page_free)(struct page *);
-	void (*kill)(struct dev_pagemap *);
-	void (*cleanup)(struct dev_pagemap *);
 	vm_fault_t (*migrate_to_ram)(struct vm_fault *);
 };
 
@@ -2396,7 +2513,7 @@ struct hrtimer_clock_base {
 	seqcount_raw_spinlock_t seq;
 	struct hrtimer *running;
 	struct timerqueue_head active;
-	ktime_t (*get_time)();
+	ktime_t (*get_time)(void);
 	ktime_t offset;
 };
 
@@ -2409,6 +2526,7 @@ struct hrtimer_cpu_base {
 	unsigned int in_hrtirq: 1;
 	unsigned int hang_detected: 1;
 	unsigned int softirq_activated: 1;
+	unsigned int online: 1;
 	unsigned int nr_events;
 	short unsigned int nr_retries;
 	short unsigned int nr_hangs;
@@ -2436,7 +2554,7 @@ typedef void __signalfn_t(int);
 
 typedef __signalfn_t *__sighandler_t;
 
-typedef void __restorefn_t();
+typedef void __restorefn_t(void);
 
 typedef __restorefn_t *__sigrestore_t;
 
@@ -2473,6 +2591,7 @@ union __sifields {
 	struct {
 		void *_addr;
 		union {
+			int _trapno;
 			short int _addr_lsb;
 			struct {
 				char _dummy_bnd[8];
@@ -2483,6 +2602,11 @@ union __sifields {
 				char _dummy_pkey[8];
 				__u32 _pkey;
 			} _addr_pkey;
+			struct {
+				long unsigned int _data;
+				__u32 _type;
+				__u32 _flags;
+			} _perf;
 		};
 	} _sigfault;
 	struct {
@@ -2505,22 +2629,6 @@ struct kernel_siginfo {
 	};
 };
 
-struct user_struct {
-	refcount_t __count;
-	atomic_t processes;
-	atomic_t sigpending;
-	atomic_t fanotify_listeners;
-	atomic_long_t epoll_watches;
-	long unsigned int mq_bytes;
-	long unsigned int locked_shm;
-	long unsigned int unix_inflight;
-	atomic_long_t pipe_bufs;
-	struct hlist_node uidhash_node;
-	kuid_t uid;
-	atomic_long_t locked_vm;
-	struct ratelimit_state ratelimit;
-};
-
 struct sigaction {
 	__sighandler_t sa_handler;
 	long unsigned int sa_flags;
@@ -2581,7 +2689,7 @@ struct signal_struct {
 	unsigned int flags;
 	unsigned int is_child_subreaper: 1;
 	unsigned int has_child_subreaper: 1;
-	int posix_timer_id;
+	unsigned int next_posix_timer_id;
 	struct list_head posix_timers;
 	struct hrtimer real_timer;
 	ktime_t it_real_incr;
@@ -2644,6 +2752,12 @@ struct rseq {
 	long: 64;
 };
 
+enum uclamp_id {
+	UCLAMP_MIN = 0,
+	UCLAMP_MAX = 1,
+	UCLAMP_CNT = 2,
+};
+
 enum perf_event_task_context {
 	perf_invalid_context = 4294967295,
 	perf_hw_context = 0,
@@ -2656,6 +2770,7 @@ struct rq;
 struct rq_flags;
 
 struct sched_class {
+	int uclamp_enabled;
 	void (*enqueue_task)(struct rq *, struct task_struct *, int);
 	void (*dequeue_task)(struct rq *, struct task_struct *, int);
 	void (*yield_task)(struct rq *);
@@ -2665,12 +2780,14 @@ struct sched_class {
 	void (*put_prev_task)(struct rq *, struct task_struct *);
 	void (*set_next_task)(struct rq *, struct task_struct *, bool);
 	int (*balance)(struct rq *, struct task_struct *, struct rq_flags *);
-	int (*select_task_rq)(struct task_struct *, int, int, int);
+	int (*select_task_rq)(struct task_struct *, int, int);
+	struct task_struct * (*pick_task)(struct rq *);
 	void (*migrate_task_rq)(struct task_struct *, int);
 	void (*task_woken)(struct rq *, struct task_struct *);
-	void (*set_cpus_allowed)(struct task_struct *, const struct cpumask *);
+	void (*set_cpus_allowed)(struct task_struct *, const struct cpumask *, u32);
 	void (*rq_online)(struct rq *);
 	void (*rq_offline)(struct rq *);
+	struct rq * (*find_lock_rq)(struct task_struct *, struct rq *);
 	void (*task_tick)(struct rq *, struct task_struct *, int);
 	void (*task_fork)(struct task_struct *);
 	void (*task_dead)(struct task_struct *);
@@ -2688,10 +2805,14 @@ struct kernel_cap_struct {
 
 typedef struct kernel_cap_struct kernel_cap_t;
 
+struct user_struct;
+
+struct ucounts;
+
 struct group_info;
 
 struct cred {
-	atomic_t usage;
+	atomic_long_t usage;
 	kuid_t uid;
 	kgid_t gid;
 	kuid_t suid;
@@ -2714,6 +2835,7 @@ struct cred {
 	void *security;
 	struct user_struct *user;
 	struct user_namespace *user_ns;
+	struct ucounts *ucounts;
 	struct group_info *group_info;
 	union {
 		int non_rcu;
@@ -2755,6 +2877,8 @@ struct assoc_array {
 	long unsigned int nr_leaves_on_tree;
 };
 
+struct watch_list;
+
 struct key_user;
 
 struct key_restriction;
@@ -2766,6 +2890,7 @@ struct key {
 		struct list_head graveyard_link;
 		struct rb_node serial_node;
 	};
+	struct watch_list *watchers;
 	struct rw_semaphore sem;
 	struct key_user *user;
 	void *security;
@@ -2913,8 +3038,6 @@ struct bdi_writeback;
 
 struct file_lock_context;
 
-struct block_device;
-
 struct cdev;
 
 struct fsnotify_mark_connector;
@@ -2982,7 +3105,6 @@ struct inode {
 	struct list_head i_devices;
 	union {
 		struct pipe_inode_info *i_pipe;
-		struct block_device *i_bdev;
 		struct cdev *i_cdev;
 		char *i_link;
 		unsigned int i_dir_seq;
@@ -3092,8 +3214,14 @@ struct xattr_handler;
 
 struct fscrypt_operations;
 
+struct fscrypt_keyring;
+
 struct fsverity_operations;
 
+struct unicode_map;
+
+struct block_device;
+
 struct workqueue_struct;
 
 struct super_block {
@@ -3117,8 +3245,10 @@ struct super_block {
 	void *s_security;
 	const struct xattr_handler **s_xattr;
 	const struct fscrypt_operations *s_cop;
-	struct key *s_master_keys;
+	struct fscrypt_keyring *s_master_keys;
 	const struct fsverity_operations *s_vop;
+	struct unicode_map *s_encoding;
+	__u16 s_encoding_flags;
 	struct hlist_bl_head s_roots;
 	struct list_head s_mounts;
 	struct block_device *s_bdev;
@@ -3144,7 +3274,7 @@ struct super_block {
 	int cleancache_poolid;
 	struct shrinker s_shrink;
 	atomic_long_t s_remove_count;
-	atomic_long_t s_fsnotify_inode_refs;
+	atomic_long_t s_fsnotify_connectors;
 	int s_readonly_remount;
 	errseq_t s_wb_err;
 	struct workqueue_struct *s_dio_done_wq;
@@ -3156,8 +3286,7 @@ struct super_block {
 	struct work_struct destroy_work;
 	struct mutex s_sync_lock;
 	int s_stack_depth;
-	long: 64;
-	long: 64;
+	long: 0;
 	spinlock_t s_inode_list_lock;
 	struct list_head s_inodes;
 	spinlock_t s_inode_wblist_lock;
@@ -3166,6 +3295,13 @@ struct super_block {
 	long: 64;
 };
 
+struct vfsmount {
+	struct dentry *mnt_root;
+	struct super_block *mnt_sb;
+	int mnt_flags;
+	struct user_namespace *mnt_userns;
+};
+
 struct kstat {
 	u32 result_mask;
 	umode_t mode;
@@ -3261,6 +3397,25 @@ struct key_restriction {
 	struct key_type *keytype;
 };
 
+struct percpu_counter {
+	raw_spinlock_t lock;
+	s64 count;
+	struct list_head list;
+	s32 *counters;
+};
+
+struct user_struct {
+	refcount_t __count;
+	struct percpu_counter epoll_watches;
+	long unsigned int unix_inflight;
+	atomic_long_t pipe_bufs;
+	struct hlist_node uidhash_node;
+	kuid_t uid;
+	atomic_long_t locked_vm;
+	atomic_t nr_watches;
+	struct ratelimit_state ratelimit;
+};
+
 struct group_info {
 	atomic_t usage;
 	int ngroups;
@@ -3507,30 +3662,32 @@ struct address_space_operations {
 
 struct fiemap_extent_info;
 
+struct fileattr;
+
 struct inode_operations {
 	struct dentry * (*lookup)(struct inode *, struct dentry *, unsigned int);
 	const char * (*get_link)(struct dentry *, struct inode *, struct delayed_call *);
-	int (*permission)(struct inode *, int);
-	struct posix_acl * (*get_acl)(struct inode *, int);
+	int (*permission)(struct user_namespace *, struct inode *, int);
+	struct posix_acl * (*get_acl)(struct inode *, int, bool);
 	int (*readlink)(struct dentry *, char *, int);
-	int (*create)(struct inode *, struct dentry *, umode_t, bool);
+	int (*create)(struct user_namespace *, struct inode *, struct dentry *, umode_t, bool);
 	int (*link)(struct dentry *, struct inode *, struct dentry *);
 	int (*unlink)(struct inode *, struct dentry *);
-	int (*symlink)(struct inode *, struct dentry *, const char *);
-	int (*mkdir)(struct inode *, struct dentry *, umode_t);
+	int (*symlink)(struct user_namespace *, struct inode *, struct dentry *, const char *);
+	int (*mkdir)(struct user_namespace *, struct inode *, struct dentry *, umode_t);
 	int (*rmdir)(struct inode *, struct dentry *);
-	int (*mknod)(struct inode *, struct dentry *, umode_t, dev_t);
-	int (*rename)(struct inode *, struct dentry *, struct inode *, struct dentry *, unsigned int);
-	int (*setattr)(struct dentry *, struct iattr *);
-	int (*getattr)(const struct path *, struct kstat *, u32, unsigned int);
+	int (*mknod)(struct user_namespace *, struct inode *, struct dentry *, umode_t, dev_t);
+	int (*rename)(struct user_namespace *, struct inode *, struct dentry *, struct inode *, struct dentry *, unsigned int);
+	int (*setattr)(struct user_namespace *, struct dentry *, struct iattr *);
+	int (*getattr)(struct user_namespace *, const struct path *, struct kstat *, u32, unsigned int);
 	ssize_t (*listxattr)(struct dentry *, char *, size_t);
 	int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64, u64);
 	int (*update_time)(struct inode *, struct timespec64 *, int);
 	int (*atomic_open)(struct inode *, struct dentry *, struct file *, unsigned int, umode_t);
-	int (*tmpfile)(struct inode *, struct dentry *, umode_t);
-	int (*set_acl)(struct inode *, struct posix_acl *, int);
-	long: 64;
-	long: 64;
+	int (*tmpfile)(struct user_namespace *, struct inode *, struct dentry *, umode_t);
+	int (*set_acl)(struct user_namespace *, struct inode *, struct posix_acl *, int);
+	int (*fileattr_set)(struct user_namespace *, struct dentry *, struct fileattr *);
+	int (*fileattr_get)(struct dentry *, struct fileattr *);
 	long: 64;
 };
 
@@ -3596,6 +3753,7 @@ struct file_lock {
 };
 
 struct lock_manager_operations {
+	void *lm_mod_owner;
 	fl_owner_t (*lm_get_owner)(fl_owner_t);
 	void (*lm_put_owner)(fl_owner_t);
 	void (*lm_notify)(struct file_lock *);
@@ -3604,6 +3762,8 @@ struct lock_manager_operations {
 	int (*lm_change)(struct file_lock *, int, struct list_head *);
 	void (*lm_setup)(struct file_lock *, void **);
 	bool (*lm_breaker_owns_lease)(struct file_lock *);
+	bool (*lm_lock_expirable)(struct file_lock *);
+	void (*lm_expire_lock)(void);
 };
 
 struct fasync_struct {
@@ -3649,15 +3809,15 @@ struct super_operations {
 	ssize_t (*quota_read)(struct super_block *, int, char *, size_t, loff_t);
 	ssize_t (*quota_write)(struct super_block *, int, const char *, size_t, loff_t);
 	struct dquot ** (*get_dquots)(struct inode *);
-	int (*bdev_try_to_free_page)(struct super_block *, struct page *, gfp_t);
 	long int (*nr_cached_objects)(struct super_block *, struct shrink_control *);
 	long int (*free_cached_objects)(struct super_block *, struct shrink_control *);
+	struct file * (*real_loop)(struct file *);
 };
 
-struct iomap;
-
 struct fid;
 
+struct iomap;
+
 struct export_operations {
 	int (*encode_fh)(struct inode *, __u32 *, int *, struct inode *);
 	struct dentry * (*fh_to_dentry)(struct super_block *, struct fid *, int, int);
@@ -3668,6 +3828,8 @@ struct export_operations {
 	int (*get_uuid)(struct super_block *, u8 *, u32 *, u64 *);
 	int (*map_blocks)(struct inode *, loff_t, u64, struct iomap *, bool, u32 *);
 	int (*commit_blocks)(struct inode *, struct iomap *, int, struct iattr *);
+	u64 (*fetch_iversion)(struct inode *);
+	long unsigned int flags;
 };
 
 struct xattr_handler {
@@ -3676,7 +3838,7 @@ struct xattr_handler {
 	int flags;
 	bool (*list)(struct dentry *);
 	int (*get)(const struct xattr_handler *, struct dentry *, struct inode *, const char *, void *, size_t);
-	int (*set)(const struct xattr_handler *, struct dentry *, struct inode *, const char *, const void *, size_t, int);
+	int (*set)(const struct xattr_handler *, struct user_namespace *, struct dentry *, struct inode *, const char *, const void *, size_t, int);
 };
 
 union fscrypt_policy;
@@ -3762,76 +3924,80 @@ enum vm_event_item {
 	PGREUSE = 24,
 	PGSTEAL_KSWAPD = 25,
 	PGSTEAL_DIRECT = 26,
-	PGSCAN_KSWAPD = 27,
-	PGSCAN_DIRECT = 28,
-	PGSCAN_DIRECT_THROTTLE = 29,
-	PGSCAN_ANON = 30,
-	PGSCAN_FILE = 31,
-	PGSTEAL_ANON = 32,
-	PGSTEAL_FILE = 33,
-	PGSCAN_ZONE_RECLAIM_FAILED = 34,
-	PGINODESTEAL = 35,
-	SLABS_SCANNED = 36,
-	KSWAPD_INODESTEAL = 37,
-	KSWAPD_LOW_WMARK_HIT_QUICKLY = 38,
-	KSWAPD_HIGH_WMARK_HIT_QUICKLY = 39,
-	PAGEOUTRUN = 40,
-	PGROTATED = 41,
-	DROP_PAGECACHE = 42,
-	DROP_SLAB = 43,
-	OOM_KILL = 44,
-	NUMA_PTE_UPDATES = 45,
-	NUMA_HUGE_PTE_UPDATES = 46,
-	NUMA_HINT_FAULTS = 47,
-	NUMA_HINT_FAULTS_LOCAL = 48,
-	NUMA_PAGE_MIGRATE = 49,
-	PGMIGRATE_SUCCESS = 50,
-	PGMIGRATE_FAIL = 51,
-	THP_MIGRATION_SUCCESS = 52,
-	THP_MIGRATION_FAIL = 53,
-	THP_MIGRATION_SPLIT = 54,
-	COMPACTMIGRATE_SCANNED = 55,
-	COMPACTFREE_SCANNED = 56,
-	COMPACTISOLATED = 57,
-	COMPACTSTALL = 58,
-	COMPACTFAIL = 59,
-	COMPACTSUCCESS = 60,
-	KCOMPACTD_WAKE = 61,
-	KCOMPACTD_MIGRATE_SCANNED = 62,
-	KCOMPACTD_FREE_SCANNED = 63,
-	HTLB_BUDDY_PGALLOC = 64,
-	HTLB_BUDDY_PGALLOC_FAIL = 65,
-	UNEVICTABLE_PGCULLED = 66,
-	UNEVICTABLE_PGSCANNED = 67,
-	UNEVICTABLE_PGRESCUED = 68,
-	UNEVICTABLE_PGMLOCKED = 69,
-	UNEVICTABLE_PGMUNLOCKED = 70,
-	UNEVICTABLE_PGCLEARED = 71,
-	UNEVICTABLE_PGSTRANDED = 72,
-	THP_FAULT_ALLOC = 73,
-	THP_FAULT_FALLBACK = 74,
-	THP_FAULT_FALLBACK_CHARGE = 75,
-	THP_COLLAPSE_ALLOC = 76,
-	THP_COLLAPSE_ALLOC_FAILED = 77,
-	THP_FILE_ALLOC = 78,
-	THP_FILE_FALLBACK = 79,
-	THP_FILE_FALLBACK_CHARGE = 80,
-	THP_FILE_MAPPED = 81,
-	THP_SPLIT_PAGE = 82,
-	THP_SPLIT_PAGE_FAILED = 83,
-	THP_DEFERRED_SPLIT_PAGE = 84,
-	THP_SPLIT_PMD = 85,
-	THP_SPLIT_PUD = 86,
-	THP_ZERO_PAGE_ALLOC = 87,
-	THP_ZERO_PAGE_ALLOC_FAILED = 88,
-	THP_SWPOUT = 89,
-	THP_SWPOUT_FALLBACK = 90,
-	BALLOON_INFLATE = 91,
-	BALLOON_DEFLATE = 92,
-	BALLOON_MIGRATE = 93,
-	SWAP_RA = 94,
-	SWAP_RA_HIT = 95,
-	NR_VM_EVENT_ITEMS = 96,
+	PGDEMOTE_KSWAPD = 27,
+	PGDEMOTE_DIRECT = 28,
+	PGSCAN_KSWAPD = 29,
+	PGSCAN_DIRECT = 30,
+	PGSCAN_DIRECT_THROTTLE = 31,
+	PGSCAN_ANON = 32,
+	PGSCAN_FILE = 33,
+	PGSTEAL_ANON = 34,
+	PGSTEAL_FILE = 35,
+	PGSCAN_ZONE_RECLAIM_FAILED = 36,
+	PGINODESTEAL = 37,
+	SLABS_SCANNED = 38,
+	KSWAPD_INODESTEAL = 39,
+	KSWAPD_LOW_WMARK_HIT_QUICKLY = 40,
+	KSWAPD_HIGH_WMARK_HIT_QUICKLY = 41,
+	PAGEOUTRUN = 42,
+	PGROTATED = 43,
+	DROP_PAGECACHE = 44,
+	DROP_SLAB = 45,
+	OOM_KILL = 46,
+	NUMA_PTE_UPDATES = 47,
+	NUMA_HUGE_PTE_UPDATES = 48,
+	NUMA_HINT_FAULTS = 49,
+	NUMA_HINT_FAULTS_LOCAL = 50,
+	NUMA_PAGE_MIGRATE = 51,
+	PGMIGRATE_SUCCESS = 52,
+	PGMIGRATE_FAIL = 53,
+	THP_MIGRATION_SUCCESS = 54,
+	THP_MIGRATION_FAIL = 55,
+	THP_MIGRATION_SPLIT = 56,
+	COMPACTMIGRATE_SCANNED = 57,
+	COMPACTFREE_SCANNED = 58,
+	COMPACTISOLATED = 59,
+	COMPACTSTALL = 60,
+	COMPACTFAIL = 61,
+	COMPACTSUCCESS = 62,
+	KCOMPACTD_WAKE = 63,
+	KCOMPACTD_MIGRATE_SCANNED = 64,
+	KCOMPACTD_FREE_SCANNED = 65,
+	HTLB_BUDDY_PGALLOC = 66,
+	HTLB_BUDDY_PGALLOC_FAIL = 67,
+	UNEVICTABLE_PGCULLED = 68,
+	UNEVICTABLE_PGSCANNED = 69,
+	UNEVICTABLE_PGRESCUED = 70,
+	UNEVICTABLE_PGMLOCKED = 71,
+	UNEVICTABLE_PGMUNLOCKED = 72,
+	UNEVICTABLE_PGCLEARED = 73,
+	UNEVICTABLE_PGSTRANDED = 74,
+	THP_FAULT_ALLOC = 75,
+	THP_FAULT_FALLBACK = 76,
+	THP_FAULT_FALLBACK_CHARGE = 77,
+	THP_COLLAPSE_ALLOC = 78,
+	THP_COLLAPSE_ALLOC_FAILED = 79,
+	THP_FILE_ALLOC = 80,
+	THP_FILE_FALLBACK = 81,
+	THP_FILE_FALLBACK_CHARGE = 82,
+	THP_FILE_MAPPED = 83,
+	THP_SPLIT_PAGE = 84,
+	THP_SPLIT_PAGE_FAILED = 85,
+	THP_DEFERRED_SPLIT_PAGE = 86,
+	THP_SPLIT_PMD = 87,
+	THP_SPLIT_PUD = 88,
+	THP_ZERO_PAGE_ALLOC = 89,
+	THP_ZERO_PAGE_ALLOC_FAILED = 90,
+	THP_SWPOUT = 91,
+	THP_SWPOUT_FALLBACK = 92,
+	BALLOON_INFLATE = 93,
+	BALLOON_DEFLATE = 94,
+	BALLOON_MIGRATE = 95,
+	SWAP_RA = 96,
+	SWAP_RA_HIT = 97,
+	DIRECT_MAP_LEVEL2_SPLIT = 98,
+	DIRECT_MAP_LEVEL3_SPLIT = 99,
+	NR_VM_EVENT_ITEMS = 100,
 };
 
 struct tlb_context {
@@ -3843,11 +4009,10 @@ struct tlb_state {
 	struct mm_struct *loaded_mm;
 	union {
 		struct mm_struct *last_user_mm;
-		long unsigned int last_user_mm_ibpb;
+		long unsigned int last_user_mm_spec;
 	};
 	u16 loaded_mm_asid;
 	u16 next_asid;
-	bool is_lazy;
 	bool invalidate_other;
 	short unsigned int user_pcid_flush_mask;
 	long unsigned int cr4;
@@ -3873,14 +4038,15 @@ enum {
 	__SD_BALANCE_WAKE = 3,
 	__SD_WAKE_AFFINE = 4,
 	__SD_ASYM_CPUCAPACITY = 5,
-	__SD_SHARE_CPUCAPACITY = 6,
-	__SD_SHARE_PKG_RESOURCES = 7,
-	__SD_SERIALIZE = 8,
-	__SD_ASYM_PACKING = 9,
-	__SD_PREFER_SIBLING = 10,
-	__SD_OVERLAP = 11,
-	__SD_NUMA = 12,
-	__SD_FLAG_CNT = 13,
+	__SD_ASYM_CPUCAPACITY_FULL = 6,
+	__SD_SHARE_CPUCAPACITY = 7,
+	__SD_SHARE_PKG_RESOURCES = 8,
+	__SD_SERIALIZE = 9,
+	__SD_ASYM_PACKING = 10,
+	__SD_PREFER_SIBLING = 11,
+	__SD_OVERLAP = 12,
+	__SD_NUMA = 13,
+	__SD_FLAG_CNT = 14,
 };
 
 struct x86_legacy_devices {
@@ -3911,19 +4077,19 @@ struct x86_hyper_runtime {
 };
 
 struct x86_platform_ops {
-	long unsigned int (*calibrate_cpu)();
-	long unsigned int (*calibrate_tsc)();
+	long unsigned int (*calibrate_cpu)(void);
+	long unsigned int (*calibrate_tsc)(void);
 	void (*get_wallclock)(struct timespec64 *);
 	int (*set_wallclock)(const struct timespec64 *);
-	void (*iommu_shutdown)();
+	void (*iommu_shutdown)(void);
 	bool (*is_untracked_pat_range)(u64, u64);
-	void (*nmi_init)();
-	unsigned char (*get_nmi_reason)();
-	void (*save_sched_clock_state)();
-	void (*restore_sched_clock_state)();
-	void (*apic_post_init)();
+	void (*nmi_init)(void);
+	unsigned char (*get_nmi_reason)(void);
+	void (*save_sched_clock_state)(void);
+	void (*restore_sched_clock_state)(void);
+	void (*apic_post_init)(void);
 	struct x86_legacy_features legacy;
-	void (*set_legacy_features)();
+	void (*set_legacy_features)(void);
 	struct x86_hyper_runtime hyper;
 };
 
@@ -3931,8 +4097,14 @@ typedef signed char __s8;
 
 typedef __s8 s8;
 
+typedef __u16 __be16;
+
 typedef __u32 __le32;
 
+typedef __u32 __be32;
+
+typedef __u32 __wsum;
+
 typedef long unsigned int irq_hw_number_t;
 
 struct kernel_symbol {
@@ -3941,7 +4113,7 @@ struct kernel_symbol {
 	int namespace_offset;
 };
 
-typedef int (*initcall_t)();
+typedef int (*initcall_t)(void);
 
 typedef int initcall_entry_t;
 
@@ -3991,6 +4163,26 @@ struct _ddebug {
 	} key;
 };
 
+struct static_call_site {
+	s32 addr;
+	s32 key;
+};
+
+struct static_call_mod {
+	struct static_call_mod *next;
+	struct module *mod;
+	struct static_call_site *sites;
+};
+
+struct static_call_key {
+	void *func;
+	union {
+		long unsigned int type;
+		struct static_call_mod *mods;
+		struct static_call_site *sites;
+	};
+};
+
 enum system_states {
 	SYSTEM_BOOTING = 0,
 	SYSTEM_SCHEDULING = 1,
@@ -4001,15 +4193,6 @@ enum system_states {
 	SYSTEM_SUSPEND = 6,
 };
 
-struct orc_entry {
-	s16 sp_offset;
-	s16 bp_offset;
-	unsigned int sp_reg: 4;
-	unsigned int bp_reg: 4;
-	unsigned int type: 2;
-	unsigned int end: 1;
-} __attribute__((packed));
-
 struct bug_entry {
 	int bug_addr_disp;
 	int file_disp;
@@ -4025,32 +4208,17 @@ struct tracepoint_func {
 	int prio;
 };
 
-struct static_call_key;
-
 struct tracepoint {
 	const char *name;
 	struct static_key key;
 	struct static_call_key *static_call_key;
 	void *static_call_tramp;
 	void *iterator;
-	int (*regfunc)();
-	void (*unregfunc)();
+	int (*regfunc)(void);
+	void (*unregfunc)(void);
 	struct tracepoint_func *funcs;
 };
 
-struct static_call_mod;
-
-struct static_call_site;
-
-struct static_call_key {
-	void *func;
-	union {
-		long unsigned int type;
-		struct static_call_mod *mods;
-		struct static_call_site *sites;
-	};
-};
-
 typedef const int tracepoint_ptr_t;
 
 struct bpf_raw_event_map {
@@ -4133,7 +4301,11 @@ struct perf_event_attr {
 	__u64 aux_output: 1;
 	__u64 cgroup: 1;
 	__u64 text_poke: 1;
-	__u64 __reserved_1: 30;
+	__u64 build_id: 1;
+	__u64 inherit_thread: 1;
+	__u64 remove_on_exec: 1;
+	__u64 sigtrap: 1;
+	__u64 __reserved_1: 26;
 	union {
 		__u32 wakeup_events;
 		__u32 wakeup_watermark;
@@ -4161,6 +4333,7 @@ struct perf_event_attr {
 	__u16 __reserved_2;
 	__u32 aux_sample_size;
 	__u32 __reserved_3;
+	__u64 sig_data;
 };
 
 struct hw_perf_event_extra {
@@ -4236,13 +4409,7 @@ struct hw_perf_event {
 };
 
 struct irq_work {
-	union {
-		struct __call_single_node node;
-		struct {
-			struct llist_node llnode;
-			atomic_t flags;
-		};
-	};
+	struct __call_single_node node;
 	void (*func)(struct irq_work *);
 };
 
@@ -4258,7 +4425,9 @@ typedef void (*perf_overflow_handler_t)(struct perf_event *, struct perf_sample_
 
 struct ftrace_ops;
 
-typedef void (*ftrace_func_t)(long unsigned int, long unsigned int, struct ftrace_ops *, struct pt_regs *);
+struct ftrace_regs;
+
+typedef void (*ftrace_func_t)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *);
 
 struct ftrace_hash;
 
@@ -4308,6 +4477,7 @@ struct perf_event {
 	int nr_siblings;
 	int event_caps;
 	int group_caps;
+	unsigned int group_generation;
 	struct perf_event *group_leader;
 	struct pmu *pmu;
 	void *pmu_private;
@@ -4342,10 +4512,15 @@ struct perf_event {
 	int rcu_pending;
 	wait_queue_head_t waitq;
 	struct fasync_struct *fasync;
-	int pending_wakeup;
-	int pending_kill;
-	int pending_disable;
-	struct irq_work pending;
+	unsigned int pending_wakeup;
+	unsigned int pending_kill;
+	unsigned int pending_disable;
+	unsigned int pending_sigtrap;
+	long unsigned int pending_addr;
+	struct irq_work pending_irq;
+	struct callback_head pending_task;
+	unsigned int pending_work;
+	struct rcuwait pending_work_wait;
 	atomic_t event_limit;
 	struct perf_addr_filters_head addr_filters;
 	struct perf_addr_filter_range *addr_filter_ranges;
@@ -4355,11 +4530,13 @@ struct perf_event {
 	struct callback_head callback_head;
 	struct pid_namespace *ns;
 	u64 id;
-	u64 (*clock)();
+	atomic64_t lost_samples;
+	u64 (*clock)(void);
 	perf_overflow_handler_t overflow_handler;
 	void *overflow_handler_context;
 	perf_overflow_handler_t orig_overflow_handler;
 	struct bpf_prog *prog;
+	u64 bpf_cookie;
 	struct trace_event_call *tp_event;
 	struct event_filter *filter;
 	struct ftrace_ops ftrace_ops;
@@ -4391,6 +4568,7 @@ struct ns_common {
 	atomic_long_t stashed;
 	const struct proc_ns_operations *ops;
 	unsigned int inum;
+	refcount_t count;
 };
 
 struct ctl_table;
@@ -4432,13 +4610,10 @@ struct ctl_table_set {
 	struct ctl_dir dir;
 };
 
-struct ucounts;
-
 struct user_namespace {
 	struct uid_gid_map uid_map;
 	struct uid_gid_map gid_map;
 	struct uid_gid_map projid_map;
-	atomic_t count;
 	struct user_namespace *parent;
 	int level;
 	kuid_t owner;
@@ -4454,7 +4629,7 @@ struct user_namespace {
 	struct ctl_table_set set;
 	struct ctl_table_header *sysctls;
 	struct ucounts *ucounts;
-	int ucount_max[10];
+	long int ucount_max[16];
 };
 
 struct pollfd {
@@ -4466,30 +4641,22 @@ struct pollfd {
 typedef void (*smp_call_func_t)(void *);
 
 struct __call_single_data {
-	union {
-		struct __call_single_node node;
-		struct {
-			struct llist_node llist;
-			unsigned int flags;
-			u16 src;
-			u16 dst;
-		};
-	};
+	struct __call_single_node node;
 	smp_call_func_t func;
 	void *info;
 };
 
 struct smp_ops {
-	void (*smp_prepare_boot_cpu)();
+	void (*smp_prepare_boot_cpu)(void);
 	void (*smp_prepare_cpus)(unsigned int);
 	void (*smp_cpus_done)(unsigned int);
 	void (*stop_other_cpus)(int);
-	void (*crash_stop_other_cpus)();
+	void (*crash_stop_other_cpus)(void);
 	void (*smp_send_reschedule)(int);
 	int (*cpu_up)(unsigned int, struct task_struct *);
-	int (*cpu_disable)();
+	int (*cpu_disable)(void);
 	void (*cpu_die)(unsigned int);
-	void (*play_dead)();
+	void (*play_dead)(void);
 	void (*send_call_func_ipi)(const struct cpumask *);
 	void (*send_call_func_single_ipi)(int);
 };
@@ -4525,8 +4692,8 @@ struct rcu_segcblist {
 	struct callback_head **tails[4];
 	long unsigned int gp_seq[4];
 	long int len;
-	u8 enabled;
-	u8 offloaded;
+	long int seglen[4];
+	u8 flags;
 };
 
 struct srcu_node;
@@ -4554,6 +4721,10 @@ struct srcu_data {
 	struct srcu_struct *ssp;
 	long: 64;
 	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct srcu_node {
@@ -4583,201 +4754,119 @@ struct srcu_struct {
 	struct completion srcu_barrier_completion;
 	atomic_t srcu_barrier_cpu_cnt;
 	struct delayed_work work;
+	struct lockdep_map dep_map;
 };
 
-struct cgroup;
+struct notifier_block;
 
-struct cgroup_subsys;
+typedef int (*notifier_fn_t)(struct notifier_block *, long unsigned int, void *);
 
-struct cgroup_subsys_state {
-	struct cgroup *cgroup;
-	struct cgroup_subsys *ss;
-	struct percpu_ref refcnt;
-	struct list_head sibling;
-	struct list_head children;
-	struct list_head rstat_css_node;
-	int id;
+struct notifier_block {
+	notifier_fn_t notifier_call;
+	struct notifier_block *next;
+	int priority;
+};
+
+struct blocking_notifier_head {
+	struct rw_semaphore rwsem;
+	struct notifier_block *head;
+};
+
+struct raw_notifier_head {
+	struct notifier_block *head;
+};
+
+struct ldt_struct {
+	struct desc_struct *entries;
+	unsigned int nr_entries;
+	int slot;
+};
+
+enum dma_data_direction {
+	DMA_BIDIRECTIONAL = 0,
+	DMA_TO_DEVICE = 1,
+	DMA_FROM_DEVICE = 2,
+	DMA_NONE = 3,
+};
+
+struct device;
+
+struct page_pool_params {
 	unsigned int flags;
-	u64 serial_nr;
-	atomic_t online_cnt;
-	struct work_struct destroy_work;
-	struct rcu_work destroy_rwork;
-	struct cgroup_subsys_state *parent;
+	unsigned int order;
+	unsigned int pool_size;
+	int nid;
+	struct device *dev;
+	enum dma_data_direction dma_dir;
+	unsigned int max_len;
+	unsigned int offset;
 };
 
-struct mem_cgroup_id {
-	int id;
-	refcount_t ref;
+struct pp_alloc_cache {
+	u32 count;
+	struct page *cache[128];
 };
 
-struct page_counter {
-	atomic_long_t usage;
-	long unsigned int min;
-	long unsigned int low;
-	long unsigned int high;
-	long unsigned int max;
-	struct page_counter *parent;
-	long unsigned int emin;
-	atomic_long_t min_usage;
-	atomic_long_t children_min_usage;
-	long unsigned int elow;
-	atomic_long_t low_usage;
-	atomic_long_t children_low_usage;
-	long unsigned int watermark;
-	long unsigned int failcnt;
-};
-
-struct vmpressure {
-	long unsigned int scanned;
-	long unsigned int reclaimed;
-	long unsigned int tree_scanned;
-	long unsigned int tree_reclaimed;
-	spinlock_t sr_lock;
-	struct list_head events;
-	struct mutex events_lock;
-	struct work_struct work;
-};
-
-struct kernfs_node;
-
-struct cgroup_file {
-	struct kernfs_node *kn;
-	long unsigned int notified_at;
-	struct timer_list notify_timer;
-};
-
-struct mem_cgroup_threshold_ary;
-
-struct mem_cgroup_thresholds {
-	struct mem_cgroup_threshold_ary *primary;
-	struct mem_cgroup_threshold_ary *spare;
-};
-
-struct memcg_padding {
-	char x[0];
-};
-
-enum memcg_kmem_state {
-	KMEM_NONE = 0,
-	KMEM_ALLOCATED = 1,
-	KMEM_ONLINE = 2,
-};
-
-struct percpu_counter {
-	raw_spinlock_t lock;
-	s64 count;
-	struct list_head list;
-	s32 *counters;
-};
-
-struct fprop_global {
-	struct percpu_counter events;
-	unsigned int period;
-	seqcount_t sequence;
-};
-
-struct wb_domain {
-	spinlock_t lock;
-	struct fprop_global completions;
-	struct timer_list period_timer;
-	long unsigned int period_time;
-	long unsigned int dirty_limit_tstamp;
-	long unsigned int dirty_limit;
-};
-
-struct wb_completion {
-	atomic_t cnt;
-	wait_queue_head_t *waitq;
-};
-
-struct memcg_cgwb_frn {
-	u64 bdi_id;
-	int memcg_id;
-	u64 at;
-	struct wb_completion done;
-};
-
-struct deferred_split {
-	spinlock_t split_queue_lock;
-	struct list_head split_queue;
-	long unsigned int split_queue_len;
-};
-
-struct memcg_vmstats_percpu;
-
-struct mem_cgroup_per_node;
-
-struct mem_cgroup {
-	struct cgroup_subsys_state css;
-	struct mem_cgroup_id id;
-	struct page_counter memory;
-	union {
-		struct page_counter swap;
-		struct page_counter memsw;
-	};
-	struct page_counter kmem;
-	struct page_counter tcpmem;
-	struct work_struct high_work;
-	long unsigned int soft_limit;
-	struct vmpressure vmpressure;
-	bool use_hierarchy;
-	bool oom_group;
-	bool oom_lock;
-	int under_oom;
-	int swappiness;
-	int oom_kill_disable;
-	struct cgroup_file events_file;
-	struct cgroup_file events_local_file;
-	struct cgroup_file swap_events_file;
-	struct mutex thresholds_lock;
-	struct mem_cgroup_thresholds thresholds;
-	struct mem_cgroup_thresholds memsw_thresholds;
-	struct list_head oom_notify;
-	long unsigned int move_charge_at_immigrate;
-	spinlock_t move_lock;
-	long unsigned int move_lock_flags;
+struct ptr_ring {
+	int producer;
+	spinlock_t producer_lock;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
-	struct memcg_padding _pad1_;
-	atomic_long_t vmstats[40];
-	atomic_long_t vmevents[96];
-	atomic_long_t memory_events[8];
-	atomic_long_t memory_events_local[8];
-	long unsigned int socket_pressure;
-	bool tcpmem_active;
-	int tcpmem_pressure;
-	int kmemcg_id;
-	enum memcg_kmem_state kmem_state;
-	struct obj_cgroup *objcg;
-	struct list_head objcg_list;
+	long: 64;
+	int consumer_head;
+	int consumer_tail;
+	spinlock_t consumer_lock;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	int size;
+	int batch;
+	void **queue;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 	long: 64;
 	long: 64;
-	struct memcg_padding _pad2_;
-	atomic_t moving_account;
-	struct task_struct *move_lock_task;
-	struct memcg_vmstats_percpu *vmstats_local;
-	struct memcg_vmstats_percpu *vmstats_percpu;
-	struct list_head cgwb_list;
-	struct wb_domain cgwb_domain;
-	struct memcg_cgwb_frn cgwb_frn[4];
-	struct list_head event_list;
-	spinlock_t event_list_lock;
-	struct deferred_split deferred_split_queue;
-	struct mem_cgroup_per_node *nodeinfo[0];
 };
 
-struct obj_cgroup {
-	struct percpu_ref refcnt;
-	struct mem_cgroup *memcg;
-	atomic_t nr_charged_bytes;
-	union {
-		struct list_head list;
-		struct callback_head rcu;
-	};
+struct page_pool {
+	struct page_pool_params p;
+	struct delayed_work release_dw;
+	void (*disconnect)(void *);
+	long unsigned int defer_start;
+	long unsigned int defer_warn;
+	u32 pages_state_hold_cnt;
+	unsigned int frag_offset;
+	struct page *frag_page;
+	long int frag_users;
+	long: 64;
+	long: 64;
+	struct pp_alloc_cache alloc;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct ptr_ring ring;
+	atomic_t pages_state_release_cnt;
+	refcount_t user_cnt;
+	u64 destroy_cnt;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct anon_vma {
@@ -4794,10 +4883,7 @@ struct mempolicy {
 	atomic_t refcnt;
 	short unsigned int mode;
 	short unsigned int flags;
-	union {
-		short int preferred_node;
-		nodemask_t nodes;
-	} v;
+	nodemask_t nodes;
 	union {
 		nodemask_t cpuset_mems_allowed;
 		nodemask_t user_nodemask;
@@ -4830,6 +4916,7 @@ struct pglist_data;
 
 struct lruvec {
 	struct list_head lists[5];
+	spinlock_t lru_lock;
 	long unsigned int anon_cost;
 	long unsigned int file_cost;
 	atomic_long_t nonresident_age;
@@ -4838,7 +4925,9 @@ struct lruvec {
 	struct pglist_data *pgdat;
 };
 
-struct per_cpu_pageset;
+struct per_cpu_pages;
+
+struct per_cpu_zonestat;
 
 struct zone {
 	long unsigned int _watermark[3];
@@ -4847,18 +4936,20 @@ struct zone {
 	long int lowmem_reserve[5];
 	int node;
 	struct pglist_data *zone_pgdat;
-	struct per_cpu_pageset *pageset;
+	struct per_cpu_pages *per_cpu_pageset;
+	struct per_cpu_zonestat *per_cpu_zonestats;
+	int pageset_high;
+	int pageset_batch;
 	long unsigned int zone_start_pfn;
 	atomic_long_t managed_pages;
 	long unsigned int spanned_pages;
 	long unsigned int present_pages;
+	long unsigned int present_early_pages;
 	const char *name;
 	long unsigned int nr_isolate_pageblock;
 	seqlock_t span_seqlock;
 	int initialized;
-	long: 64;
-	long: 64;
-	long: 64;
+	long: 0;
 	struct zone_padding _pad1_;
 	struct free_area free_area[11];
 	long unsigned int flags;
@@ -4881,8 +4972,9 @@ struct zone {
 	bool contiguous;
 	long: 0;
 	struct zone_padding _pad3_;
-	atomic_long_t vm_stat[12];
-	atomic_long_t vm_numa_stat[6];
+	atomic_long_t vm_stat[11];
+	atomic_long_t vm_numa_event[6];
+	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -4909,6 +5001,12 @@ enum zone_type {
 	__MAX_NR_ZONES = 5,
 };
 
+struct deferred_split {
+	spinlock_t split_queue_lock;
+	struct list_head split_queue;
+	long unsigned int split_queue_len;
+};
+
 struct per_cpu_nodestat;
 
 struct pglist_data {
@@ -4930,6 +5028,7 @@ struct pglist_data {
 	enum zone_type kcompactd_highest_zoneidx;
 	wait_queue_head_t kcompactd_wait;
 	struct task_struct *kcompactd;
+	bool proactive_compact_trigger;
 	long unsigned int totalreserve_pages;
 	long unsigned int min_unmapped_pages;
 	long unsigned int min_slab_pages;
@@ -4938,40 +5037,38 @@ struct pglist_data {
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
 	struct zone_padding _pad1_;
-	spinlock_t lru_lock;
-	long unsigned int first_deferred_pfn;
 	struct deferred_split deferred_split_queue;
 	struct lruvec __lruvec;
 	long unsigned int flags;
+	long: 64;
 	struct zone_padding _pad2_;
 	struct per_cpu_nodestat *per_cpu_nodestats;
-	atomic_long_t vm_stat[37];
-	long: 64;
-	long: 64;
+	atomic_long_t vm_stat[39];
 };
 
 struct per_cpu_pages {
 	int count;
 	int high;
 	int batch;
-	struct list_head lists[3];
+	short int free_factor;
+	short int expire;
+	struct list_head lists[15];
 };
 
-struct per_cpu_pageset {
-	struct per_cpu_pages pcp;
-	s8 expire;
-	u16 vm_numa_stat_diff[6];
+struct per_cpu_zonestat {
+	s8 vm_stat_diff[11];
 	s8 stat_threshold;
-	s8 vm_stat_diff[12];
+	long unsigned int vm_numa_event[6];
 };
 
 struct per_cpu_nodestat {
 	s8 stat_threshold;
-	s8 vm_node_stat_diff[37];
+	s8 vm_node_stat_diff[39];
 };
 
+typedef struct pglist_data pg_data_t;
+
 enum irq_domain_bus_token {
 	DOMAIN_BUS_ANY = 0,
 	DOMAIN_BUS_WIRED = 1,
@@ -4992,6 +5089,8 @@ struct fwnode_handle;
 
 struct irq_domain_chip_generic;
 
+struct irq_data;
+
 struct irq_domain {
 	struct list_head link;
 	const char *name;
@@ -5002,13 +5101,13 @@ struct irq_domain {
 	struct fwnode_handle *fwnode;
 	enum irq_domain_bus_token bus_token;
 	struct irq_domain_chip_generic *gc;
+	struct device *dev;
 	struct irq_domain *parent;
 	irq_hw_number_t hwirq_max;
-	unsigned int revmap_direct_max_irq;
 	unsigned int revmap_size;
 	struct xarray revmap_tree;
-	struct mutex revmap_tree_mutex;
-	unsigned int linear_revmap[0];
+	struct mutex revmap_mutex;
+	struct irq_data *revmap[0];
 };
 
 typedef int proc_handler(struct ctl_table *, int, void *, size_t *, loff_t *);
@@ -5044,498 +5143,6 @@ struct ctl_table_root {
 	int (*permissions)(struct ctl_table_header *, struct ctl_table *);
 };
 
-enum umh_disable_depth {
-	UMH_ENABLED = 0,
-	UMH_FREEZING = 1,
-	UMH_DISABLED = 2,
-};
-
-enum refcount_saturation_type {
-	REFCOUNT_ADD_NOT_ZERO_OVF = 0,
-	REFCOUNT_ADD_OVF = 1,
-	REFCOUNT_ADD_UAF = 2,
-	REFCOUNT_SUB_UAF = 3,
-	REFCOUNT_DEC_LEAK = 4,
-};
-
-struct kref {
-	refcount_t refcount;
-};
-
-struct idr {
-	struct xarray idr_rt;
-	unsigned int idr_base;
-	unsigned int idr_next;
-};
-
-struct fs_pin;
-
-struct pid_namespace {
-	struct kref kref;
-	struct idr idr;
-	struct callback_head rcu;
-	unsigned int pid_allocated;
-	struct task_struct *child_reaper;
-	struct kmem_cache *pid_cachep;
-	unsigned int level;
-	struct pid_namespace *parent;
-	struct fs_pin *bacct;
-	struct user_namespace *user_ns;
-	struct ucounts *ucounts;
-	int reboot;
-	struct ns_common ns;
-};
-
-struct task_cputime {
-	u64 stime;
-	u64 utime;
-	long long unsigned int sum_exec_runtime;
-};
-
-struct uts_namespace;
-
-struct ipc_namespace;
-
-struct mnt_namespace;
-
-struct net;
-
-struct time_namespace;
-
-struct cgroup_namespace;
-
-struct nsproxy {
-	atomic_t count;
-	struct uts_namespace *uts_ns;
-	struct ipc_namespace *ipc_ns;
-	struct mnt_namespace *mnt_ns;
-	struct pid_namespace *pid_ns_for_children;
-	struct net *net_ns;
-	struct time_namespace *time_ns;
-	struct time_namespace *time_ns_for_children;
-	struct cgroup_namespace *cgroup_ns;
-};
-
-struct bio;
-
-struct bio_list {
-	struct bio *head;
-	struct bio *tail;
-};
-
-struct blk_plug {
-	struct list_head mq_list;
-	struct list_head cb_list;
-	short unsigned int rq_count;
-	bool multiple_queues;
-	bool nowait;
-};
-
-struct reclaim_state {
-	long unsigned int reclaimed_slab;
-};
-
-struct fprop_local_percpu {
-	struct percpu_counter events;
-	unsigned int period;
-	raw_spinlock_t lock;
-};
-
-enum wb_reason {
-	WB_REASON_BACKGROUND = 0,
-	WB_REASON_VMSCAN = 1,
-	WB_REASON_SYNC = 2,
-	WB_REASON_PERIODIC = 3,
-	WB_REASON_LAPTOP_TIMER = 4,
-	WB_REASON_FS_FREE_SPACE = 5,
-	WB_REASON_FORKER_THREAD = 6,
-	WB_REASON_FOREIGN_FLUSH = 7,
-	WB_REASON_MAX = 8,
-};
-
-struct bdi_writeback {
-	struct backing_dev_info *bdi;
-	long unsigned int state;
-	long unsigned int last_old_flush;
-	struct list_head b_dirty;
-	struct list_head b_io;
-	struct list_head b_more_io;
-	struct list_head b_dirty_time;
-	spinlock_t list_lock;
-	struct percpu_counter stat[4];
-	long unsigned int congested;
-	long unsigned int bw_time_stamp;
-	long unsigned int dirtied_stamp;
-	long unsigned int written_stamp;
-	long unsigned int write_bandwidth;
-	long unsigned int avg_write_bandwidth;
-	long unsigned int dirty_ratelimit;
-	long unsigned int balanced_dirty_ratelimit;
-	struct fprop_local_percpu completions;
-	int dirty_exceeded;
-	enum wb_reason start_all_reason;
-	spinlock_t work_lock;
-	struct list_head work_list;
-	struct delayed_work dwork;
-	long unsigned int dirty_sleep;
-	struct list_head bdi_node;
-	struct percpu_ref refcnt;
-	struct fprop_local_percpu memcg_completions;
-	struct cgroup_subsys_state *memcg_css;
-	struct cgroup_subsys_state *blkcg_css;
-	struct list_head memcg_node;
-	struct list_head blkcg_node;
-	union {
-		struct work_struct release_work;
-		struct callback_head rcu;
-	};
-};
-
-struct device;
-
-struct backing_dev_info {
-	u64 id;
-	struct rb_node rb_node;
-	struct list_head bdi_list;
-	long unsigned int ra_pages;
-	long unsigned int io_pages;
-	struct kref refcnt;
-	unsigned int capabilities;
-	unsigned int min_ratio;
-	unsigned int max_ratio;
-	unsigned int max_prop_frac;
-	atomic_long_t tot_write_bandwidth;
-	struct bdi_writeback wb;
-	struct list_head wb_list;
-	struct xarray cgwb_tree;
-	struct mutex cgwb_release_mutex;
-	struct rw_semaphore wb_switch_rwsem;
-	wait_queue_head_t wb_waitq;
-	struct device *dev;
-	char dev_name[64];
-	struct device *owner;
-	struct timer_list laptop_mode_wb_timer;
-	struct dentry *debug_dir;
-};
-
-struct css_set {
-	struct cgroup_subsys_state *subsys[13];
-	refcount_t refcount;
-	struct css_set *dom_cset;
-	struct cgroup *dfl_cgrp;
-	int nr_tasks;
-	struct list_head tasks;
-	struct list_head mg_tasks;
-	struct list_head dying_tasks;
-	struct list_head task_iters;
-	struct list_head e_cset_node[13];
-	struct list_head threaded_csets;
-	struct list_head threaded_csets_node;
-	struct hlist_node hlist;
-	struct list_head cgrp_links;
-	struct list_head mg_src_preload_node;
-	struct list_head mg_dst_preload_node;
-	struct list_head mg_node;
-	struct cgroup *mg_src_cgrp;
-	struct cgroup *mg_dst_cgrp;
-	struct css_set *mg_dst_cset;
-	bool dead;
-	struct callback_head callback_head;
-};
-
-typedef u32 compat_uptr_t;
-
-struct compat_robust_list {
-	compat_uptr_t next;
-};
-
-typedef s32 compat_long_t;
-
-struct compat_robust_list_head {
-	struct compat_robust_list list;
-	compat_long_t futex_offset;
-	compat_uptr_t list_op_pending;
-};
-
-struct perf_event_groups {
-	struct rb_root tree;
-	u64 index;
-};
-
-struct perf_event_context {
-	struct pmu *pmu;
-	raw_spinlock_t lock;
-	struct mutex mutex;
-	struct list_head active_ctx_list;
-	struct perf_event_groups pinned_groups;
-	struct perf_event_groups flexible_groups;
-	struct list_head event_list;
-	struct list_head pinned_active;
-	struct list_head flexible_active;
-	int nr_events;
-	int nr_active;
-	int is_active;
-	int nr_stat;
-	int nr_freq;
-	int rotate_disable;
-	int rotate_necessary;
-	refcount_t refcount;
-	struct task_struct *task;
-	u64 time;
-	u64 timestamp;
-	u64 timeoffset;
-	struct perf_event_context *parent_ctx;
-	u64 parent_gen;
-	u64 generation;
-	int pin_count;
-	int nr_cgroups;
-	void *task_ctx_data;
-	struct callback_head callback_head;
-};
-
-struct task_delay_info {
-	raw_spinlock_t lock;
-	unsigned int flags;
-	u64 blkio_start;
-	u64 blkio_delay;
-	u64 swapin_delay;
-	u32 blkio_count;
-	u32 swapin_count;
-	u64 freepages_start;
-	u64 freepages_delay;
-	u64 thrashing_start;
-	u64 thrashing_delay;
-	u32 freepages_count;
-	u32 thrashing_count;
-};
-
-struct ftrace_ret_stack {
-	long unsigned int ret;
-	long unsigned int func;
-	long long unsigned int calltime;
-	long unsigned int *retp;
-};
-
-struct kset;
-
-struct kobj_type;
-
-struct kobject {
-	const char *name;
-	struct list_head entry;
-	struct kobject *parent;
-	struct kset *kset;
-	struct kobj_type *ktype;
-	struct kernfs_node *sd;
-	struct kref kref;
-	unsigned int state_initialized: 1;
-	unsigned int state_in_sysfs: 1;
-	unsigned int state_add_uevent_sent: 1;
-	unsigned int state_remove_uevent_sent: 1;
-	unsigned int uevent_suppress: 1;
-};
-
-struct blk_integrity_profile;
-
-struct blk_integrity {
-	const struct blk_integrity_profile *profile;
-	unsigned char flags;
-	unsigned char tuple_size;
-	unsigned char interval_exp;
-	unsigned char tag_size;
-};
-
-enum rpm_status {
-	RPM_ACTIVE = 0,
-	RPM_RESUMING = 1,
-	RPM_SUSPENDED = 2,
-	RPM_SUSPENDING = 3,
-};
-
-struct blk_rq_stat {
-	u64 mean;
-	u64 min;
-	u64 max;
-	u32 nr_samples;
-	u64 batch;
-};
-
-enum blk_zoned_model {
-	BLK_ZONED_NONE = 0,
-	BLK_ZONED_HA = 1,
-	BLK_ZONED_HM = 2,
-};
-
-struct queue_limits {
-	long unsigned int bounce_pfn;
-	long unsigned int seg_boundary_mask;
-	long unsigned int virt_boundary_mask;
-	unsigned int max_hw_sectors;
-	unsigned int max_dev_sectors;
-	unsigned int chunk_sectors;
-	unsigned int max_sectors;
-	unsigned int max_segment_size;
-	unsigned int physical_block_size;
-	unsigned int logical_block_size;
-	unsigned int alignment_offset;
-	unsigned int io_min;
-	unsigned int io_opt;
-	unsigned int max_discard_sectors;
-	unsigned int max_hw_discard_sectors;
-	unsigned int max_write_same_sectors;
-	unsigned int max_write_zeroes_sectors;
-	unsigned int max_zone_append_sectors;
-	unsigned int discard_granularity;
-	unsigned int discard_alignment;
-	short unsigned int max_segments;
-	short unsigned int max_integrity_segments;
-	short unsigned int max_discard_segments;
-	unsigned char misaligned;
-	unsigned char discard_misaligned;
-	unsigned char raid_partial_stripes_expensive;
-	enum blk_zoned_model zoned;
-};
-
-struct bsg_ops;
-
-struct bsg_class_device {
-	struct device *class_dev;
-	int minor;
-	struct request_queue *queue;
-	const struct bsg_ops *ops;
-};
-
-typedef void *mempool_alloc_t(gfp_t, void *);
-
-typedef void mempool_free_t(void *, void *);
-
-struct mempool_s {
-	spinlock_t lock;
-	int min_nr;
-	int curr_nr;
-	void **elements;
-	void *pool_data;
-	mempool_alloc_t *alloc;
-	mempool_free_t *free;
-	wait_queue_head_t wait;
-};
-
-typedef struct mempool_s mempool_t;
-
-struct bio_set {
-	struct kmem_cache *bio_slab;
-	unsigned int front_pad;
-	mempool_t bio_pool;
-	mempool_t bvec_pool;
-	mempool_t bio_integrity_pool;
-	mempool_t bvec_integrity_pool;
-	spinlock_t rescue_lock;
-	struct bio_list rescue_list;
-	struct work_struct rescue_work;
-	struct workqueue_struct *rescue_workqueue;
-};
-
-struct request;
-
-struct elevator_queue;
-
-struct blk_queue_stats;
-
-struct rq_qos;
-
-struct blk_mq_ops;
-
-struct blk_mq_ctx;
-
-struct blk_mq_hw_ctx;
-
-struct blk_stat_callback;
-
-struct blkcg_gq;
-
-struct blk_trace;
-
-struct blk_flush_queue;
-
-struct throtl_data;
-
-struct blk_mq_tag_set;
-
-struct request_queue {
-	struct request *last_merge;
-	struct elevator_queue *elevator;
-	struct percpu_ref q_usage_counter;
-	struct blk_queue_stats *stats;
-	struct rq_qos *rq_qos;
-	const struct blk_mq_ops *mq_ops;
-	struct blk_mq_ctx *queue_ctx;
-	unsigned int queue_depth;
-	struct blk_mq_hw_ctx **queue_hw_ctx;
-	unsigned int nr_hw_queues;
-	struct backing_dev_info *backing_dev_info;
-	void *queuedata;
-	long unsigned int queue_flags;
-	atomic_t pm_only;
-	int id;
-	gfp_t bounce_gfp;
-	spinlock_t queue_lock;
-	struct kobject kobj;
-	struct kobject *mq_kobj;
-	struct blk_integrity integrity;
-	struct device *dev;
-	enum rpm_status rpm_status;
-	unsigned int nr_pending;
-	long unsigned int nr_requests;
-	unsigned int dma_pad_mask;
-	unsigned int dma_alignment;
-	unsigned int rq_timeout;
-	int poll_nsec;
-	struct blk_stat_callback *poll_cb;
-	struct blk_rq_stat poll_stat[16];
-	struct timer_list timeout;
-	struct work_struct timeout_work;
-	atomic_t nr_active_requests_shared_sbitmap;
-	struct list_head icq_list;
-	long unsigned int blkcg_pols[1];
-	struct blkcg_gq *root_blkg;
-	struct list_head blkg_list;
-	struct queue_limits limits;
-	unsigned int required_elevator_features;
-	unsigned int nr_zones;
-	long unsigned int *conv_zones_bitmap;
-	long unsigned int *seq_zones_wlock;
-	unsigned int max_open_zones;
-	unsigned int max_active_zones;
-	unsigned int sg_timeout;
-	unsigned int sg_reserved_size;
-	int node;
-	struct mutex debugfs_mutex;
-	struct blk_trace *blk_trace;
-	struct blk_flush_queue *fq;
-	struct list_head requeue_list;
-	spinlock_t requeue_lock;
-	struct delayed_work requeue_work;
-	struct mutex sysfs_lock;
-	struct mutex sysfs_dir_lock;
-	struct list_head unused_hctx_list;
-	spinlock_t unused_hctx_lock;
-	int mq_freeze_depth;
-	struct bsg_class_device bsg_dev;
-	struct throtl_data *td;
-	struct callback_head callback_head;
-	wait_queue_head_t mq_freeze_wq;
-	struct mutex mq_freeze_lock;
-	struct blk_mq_tag_set *tag_set;
-	struct list_head tag_set_list;
-	struct bio_set bio_split;
-	struct dentry *debugfs_dir;
-	struct dentry *sched_debugfs_dir;
-	struct dentry *rqos_debugfs_dir;
-	bool mq_sysfs_init_done;
-	size_t cmd_size;
-	u64 write_hints[5];
-};
-
 typedef __u64 Elf64_Addr;
 
 typedef __u16 Elf64_Half;
@@ -5591,14 +5198,23 @@ struct elf64_shdr {
 
 typedef struct elf64_shdr Elf64_Shdr;
 
+struct idr {
+	struct xarray idr_rt;
+	unsigned int idr_base;
+	unsigned int idr_next;
+};
+
 struct kernfs_root;
 
 struct kernfs_elem_dir {
 	long unsigned int subdirs;
 	struct rb_root children;
 	struct kernfs_root *root;
+	long unsigned int rev;
 };
 
+struct kernfs_node;
+
 struct kernfs_syscall_ops;
 
 struct kernfs_root {
@@ -5722,10 +5338,10 @@ struct sock;
 
 struct kobj_ns_type_operations {
 	enum kobj_ns_type type;
-	bool (*current_may_mount)();
-	void * (*grab_current_ns)();
+	bool (*current_may_mount)(void);
+	void * (*grab_current_ns)(void);
 	const void * (*netlink_ns)(struct sock *);
-	const void * (*initial_ns)();
+	const void * (*initial_ns)(void);
 	void (*drop_ns)(void *);
 };
 
@@ -5734,6 +5350,8 @@ struct attribute {
 	umode_t mode;
 };
 
+struct kobject;
+
 struct bin_attribute;
 
 struct attribute_group {
@@ -5744,10 +5362,34 @@ struct attribute_group {
 	struct bin_attribute **bin_attrs;
 };
 
+struct kref {
+	refcount_t refcount;
+};
+
+struct kset;
+
+struct kobj_type;
+
+struct kobject {
+	const char *name;
+	struct list_head entry;
+	struct kobject *parent;
+	struct kset *kset;
+	struct kobj_type *ktype;
+	struct kernfs_node *sd;
+	struct kref kref;
+	unsigned int state_initialized: 1;
+	unsigned int state_in_sysfs: 1;
+	unsigned int state_add_uevent_sent: 1;
+	unsigned int state_remove_uevent_sent: 1;
+	unsigned int uevent_suppress: 1;
+};
+
 struct bin_attribute {
 	struct attribute attr;
 	size_t size;
 	void *private;
+	struct address_space * (*f_mapping)(void);
 	ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *, char *, loff_t, size_t);
 	ssize_t (*write)(struct file *, struct kobject *, struct bin_attribute *, char *, loff_t, size_t);
 	int (*mmap)(struct file *, struct kobject *, struct bin_attribute *, struct vm_area_struct *);
@@ -5758,6 +5400,14 @@ struct sysfs_ops {
 	ssize_t (*store)(struct kobject *, struct attribute *, const char *, size_t);
 };
 
+enum refcount_saturation_type {
+	REFCOUNT_ADD_NOT_ZERO_OVF = 0,
+	REFCOUNT_ADD_OVF = 1,
+	REFCOUNT_ADD_UAF = 2,
+	REFCOUNT_SUB_UAF = 3,
+	REFCOUNT_DEC_LEAK = 4,
+};
+
 struct kset_uevent_ops;
 
 struct kset {
@@ -5866,11 +5516,7 @@ struct module_layout {
 	struct mod_tree_node mtn;
 };
 
-struct mod_arch_specific {
-	unsigned int num_orcs;
-	int *orc_unwind_ip;
-	struct orc_entry *orc_unwind;
-};
+struct mod_arch_specific {};
 
 struct mod_kallsyms {
 	Elf64_Sym *symtab;
@@ -5914,17 +5560,9 @@ struct module {
 	bool using_gplonly_symbols;
 	bool sig_ok;
 	bool async_probe_requested;
-	const struct kernel_symbol *gpl_future_syms;
-	const s32 *gpl_future_crcs;
-	unsigned int num_gpl_future_syms;
 	unsigned int num_exentries;
 	struct exception_table_entry *extable;
-	int (*init)();
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
+	int (*init)(void);
 	struct module_layout core_layout;
 	struct module_layout init_layout;
 	struct mod_arch_specific arch;
@@ -5947,6 +5585,8 @@ struct module {
 	struct srcu_struct **srcu_struct_ptrs;
 	unsigned int num_bpf_raw_events;
 	struct bpf_raw_event_map *bpf_raw_events;
+	unsigned int btf_data_size;
+	void *btf_data;
 	struct jump_entry *jump_entries;
 	unsigned int num_jump_entries;
 	unsigned int num_trace_bprintk_fmt;
@@ -5968,7 +5608,7 @@ struct module {
 	struct klp_modinfo *klp_info;
 	struct list_head source_list;
 	struct list_head target_list;
-	void (*exit)();
+	void (*exit)(void);
 	atomic_t refcnt;
 	struct error_injection_entry *ei_funcs;
 	unsigned int num_ei_funcs;
@@ -5976,6 +5616,7 @@ struct module {
 	long: 64;
 	long: 64;
 	long: 64;
+	long: 64;
 };
 
 struct error_injection_entry {
@@ -5983,11 +5624,6 @@ struct error_injection_entry {
 	int etype;
 };
 
-struct static_call_site {
-	s32 addr;
-	s32 key;
-};
-
 struct module_attribute {
 	struct attribute attr;
 	ssize_t (*show)(struct module_attribute *, struct module_kobject *, char *);
@@ -6007,7 +5643,7 @@ struct klp_modinfo {
 struct exception_table_entry {
 	int insn;
 	int fixup;
-	int handler;
+	int data;
 };
 
 struct trace_event_functions;
@@ -6033,7 +5669,10 @@ struct trace_event_call {
 	struct trace_event event;
 	char *print_fmt;
 	struct event_filter *filter;
-	void *mod;
+	union {
+		void *module;
+		atomic_t refcnt;
+	};
 	void *data;
 	int flags;
 	int perf_refcount;
@@ -6048,6 +5687,747 @@ struct trace_eval_map {
 	long unsigned int eval_value;
 };
 
+struct cgroup;
+
+struct cgroup_subsys;
+
+struct cgroup_subsys_state {
+	struct cgroup *cgroup;
+	struct cgroup_subsys *ss;
+	struct percpu_ref refcnt;
+	struct list_head sibling;
+	struct list_head children;
+	struct list_head rstat_css_node;
+	int id;
+	unsigned int flags;
+	u64 serial_nr;
+	atomic_t online_cnt;
+	struct work_struct destroy_work;
+	struct rcu_work destroy_rwork;
+	struct cgroup_subsys_state *parent;
+};
+
+struct mem_cgroup_id {
+	int id;
+	refcount_t ref;
+};
+
+struct page_counter {
+	atomic_long_t usage;
+	long unsigned int min;
+	long unsigned int low;
+	long unsigned int high;
+	long unsigned int max;
+	long unsigned int emin;
+	atomic_long_t min_usage;
+	atomic_long_t children_min_usage;
+	long unsigned int elow;
+	atomic_long_t low_usage;
+	atomic_long_t children_low_usage;
+	long unsigned int watermark;
+	long unsigned int failcnt;
+	struct page_counter *parent;
+};
+
+struct vmpressure {
+	long unsigned int scanned;
+	long unsigned int reclaimed;
+	long unsigned int tree_scanned;
+	long unsigned int tree_reclaimed;
+	spinlock_t sr_lock;
+	struct list_head events;
+	struct mutex events_lock;
+	struct work_struct work;
+};
+
+struct cgroup_file {
+	struct kernfs_node *kn;
+	long unsigned int notified_at;
+	struct timer_list notify_timer;
+};
+
+struct mem_cgroup_threshold_ary;
+
+struct mem_cgroup_thresholds {
+	struct mem_cgroup_threshold_ary *primary;
+	struct mem_cgroup_threshold_ary *spare;
+};
+
+struct memcg_padding {
+	char x[0];
+};
+
+struct memcg_vmstats {
+	long int state[42];
+	long unsigned int events[100];
+	long int state_pending[42];
+	long unsigned int events_pending[100];
+};
+
+enum memcg_kmem_state {
+	KMEM_NONE = 0,
+	KMEM_ALLOCATED = 1,
+	KMEM_ONLINE = 2,
+};
+
+struct fprop_global {
+	struct percpu_counter events;
+	unsigned int period;
+	seqcount_t sequence;
+};
+
+struct wb_domain {
+	spinlock_t lock;
+	struct fprop_global completions;
+	struct timer_list period_timer;
+	long unsigned int period_time;
+	long unsigned int dirty_limit_tstamp;
+	long unsigned int dirty_limit;
+};
+
+struct wb_completion {
+	atomic_t cnt;
+	wait_queue_head_t *waitq;
+};
+
+struct memcg_cgwb_frn {
+	u64 bdi_id;
+	int memcg_id;
+	u64 at;
+	struct wb_completion done;
+};
+
+struct obj_cgroup;
+
+struct memcg_vmstats_percpu;
+
+struct mem_cgroup_per_node;
+
+struct mem_cgroup {
+	struct cgroup_subsys_state css;
+	struct mem_cgroup_id id;
+	struct page_counter memory;
+	union {
+		struct page_counter swap;
+		struct page_counter memsw;
+	};
+	struct page_counter kmem;
+	struct page_counter tcpmem;
+	struct work_struct high_work;
+	long unsigned int soft_limit;
+	struct vmpressure vmpressure;
+	bool oom_group;
+	bool oom_lock;
+	int under_oom;
+	int swappiness;
+	int oom_kill_disable;
+	struct cgroup_file events_file;
+	struct cgroup_file events_local_file;
+	struct cgroup_file swap_events_file;
+	struct mutex thresholds_lock;
+	struct mem_cgroup_thresholds thresholds;
+	struct mem_cgroup_thresholds memsw_thresholds;
+	struct list_head oom_notify;
+	long unsigned int move_charge_at_immigrate;
+	spinlock_t move_lock;
+	long unsigned int move_lock_flags;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct memcg_padding _pad1_;
+	struct memcg_vmstats vmstats;
+	atomic_long_t memory_events[8];
+	atomic_long_t memory_events_local[8];
+	long unsigned int socket_pressure;
+	bool tcpmem_active;
+	int tcpmem_pressure;
+	int kmemcg_id;
+	enum memcg_kmem_state kmem_state;
+	struct obj_cgroup *objcg;
+	struct list_head objcg_list;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct memcg_padding _pad2_;
+	atomic_t moving_account;
+	struct task_struct *move_lock_task;
+	struct memcg_vmstats_percpu *vmstats_percpu;
+	struct list_head cgwb_list;
+	struct wb_domain cgwb_domain;
+	struct memcg_cgwb_frn cgwb_frn[4];
+	struct list_head event_list;
+	spinlock_t event_list_lock;
+	struct deferred_split deferred_split_queue;
+	struct mem_cgroup_per_node *nodeinfo[0];
+	long: 64;
+};
+
+struct fs_pin;
+
+struct pid_namespace {
+	struct idr idr;
+	struct callback_head rcu;
+	unsigned int pid_allocated;
+	struct task_struct *child_reaper;
+	struct kmem_cache *pid_cachep;
+	unsigned int level;
+	struct pid_namespace *parent;
+	struct fs_pin *bacct;
+	struct user_namespace *user_ns;
+	struct ucounts *ucounts;
+	int reboot;
+	struct ns_common ns;
+};
+
+struct ucounts {
+	struct hlist_node node;
+	struct user_namespace *ns;
+	kuid_t uid;
+	atomic_t count;
+	atomic_long_t ucount[16];
+};
+
+struct rhash_head {
+	struct rhash_head *next;
+};
+
+struct rhashtable;
+
+struct rhashtable_compare_arg {
+	struct rhashtable *ht;
+	const void *key;
+};
+
+typedef u32 (*rht_hashfn_t)(const void *, u32, u32);
+
+typedef u32 (*rht_obj_hashfn_t)(const void *, u32, u32);
+
+typedef int (*rht_obj_cmpfn_t)(struct rhashtable_compare_arg *, const void *);
+
+struct rhashtable_params {
+	u16 nelem_hint;
+	u16 key_len;
+	u16 key_offset;
+	u16 head_offset;
+	unsigned int max_size;
+	u16 min_size;
+	bool automatic_shrinking;
+	rht_hashfn_t hashfn;
+	rht_obj_hashfn_t obj_hashfn;
+	rht_obj_cmpfn_t obj_cmpfn;
+};
+
+struct bucket_table;
+
+struct rhashtable {
+	struct bucket_table *tbl;
+	unsigned int key_len;
+	unsigned int max_elems;
+	struct rhashtable_params p;
+	bool rhlist;
+	struct work_struct run_work;
+	struct mutex mutex;
+	spinlock_t lock;
+	atomic_t nelems;
+};
+
+struct task_cputime {
+	u64 stime;
+	u64 utime;
+	long long unsigned int sum_exec_runtime;
+};
+
+struct uts_namespace;
+
+struct ipc_namespace;
+
+struct mnt_namespace;
+
+struct net;
+
+struct time_namespace;
+
+struct cgroup_namespace;
+
+struct nsproxy {
+	atomic_t count;
+	struct uts_namespace *uts_ns;
+	struct ipc_namespace *ipc_ns;
+	struct mnt_namespace *mnt_ns;
+	struct pid_namespace *pid_ns_for_children;
+	struct net *net_ns;
+	struct time_namespace *time_ns;
+	struct time_namespace *time_ns_for_children;
+	struct cgroup_namespace *cgroup_ns;
+};
+
+struct bio;
+
+struct bio_list {
+	struct bio *head;
+	struct bio *tail;
+};
+
+struct blk_plug {
+	struct list_head mq_list;
+	struct list_head cb_list;
+	short unsigned int rq_count;
+	bool multiple_queues;
+	bool nowait;
+};
+
+struct reclaim_state {
+	long unsigned int reclaimed_slab;
+};
+
+struct fprop_local_percpu {
+	struct percpu_counter events;
+	unsigned int period;
+	raw_spinlock_t lock;
+};
+
+enum wb_reason {
+	WB_REASON_BACKGROUND = 0,
+	WB_REASON_VMSCAN = 1,
+	WB_REASON_SYNC = 2,
+	WB_REASON_PERIODIC = 3,
+	WB_REASON_LAPTOP_TIMER = 4,
+	WB_REASON_FS_FREE_SPACE = 5,
+	WB_REASON_FORKER_THREAD = 6,
+	WB_REASON_FOREIGN_FLUSH = 7,
+	WB_REASON_MAX = 8,
+};
+
+struct bdi_writeback {
+	struct backing_dev_info *bdi;
+	long unsigned int state;
+	long unsigned int last_old_flush;
+	struct list_head b_dirty;
+	struct list_head b_io;
+	struct list_head b_more_io;
+	struct list_head b_dirty_time;
+	spinlock_t list_lock;
+	atomic_t writeback_inodes;
+	struct percpu_counter stat[4];
+	long unsigned int congested;
+	long unsigned int bw_time_stamp;
+	long unsigned int dirtied_stamp;
+	long unsigned int written_stamp;
+	long unsigned int write_bandwidth;
+	long unsigned int avg_write_bandwidth;
+	long unsigned int dirty_ratelimit;
+	long unsigned int balanced_dirty_ratelimit;
+	struct fprop_local_percpu completions;
+	int dirty_exceeded;
+	enum wb_reason start_all_reason;
+	spinlock_t work_lock;
+	struct list_head work_list;
+	struct delayed_work dwork;
+	struct delayed_work bw_dwork;
+	long unsigned int dirty_sleep;
+	struct list_head bdi_node;
+	struct percpu_ref refcnt;
+	struct fprop_local_percpu memcg_completions;
+	struct cgroup_subsys_state *memcg_css;
+	struct cgroup_subsys_state *blkcg_css;
+	struct list_head memcg_node;
+	struct list_head blkcg_node;
+	struct list_head b_attached;
+	struct list_head offline_node;
+	union {
+		struct work_struct release_work;
+		struct callback_head rcu;
+	};
+};
+
+struct backing_dev_info {
+	u64 id;
+	struct rb_node rb_node;
+	struct list_head bdi_list;
+	long unsigned int ra_pages;
+	long unsigned int io_pages;
+	struct kref refcnt;
+	unsigned int capabilities;
+	unsigned int min_ratio;
+	unsigned int max_ratio;
+	unsigned int max_prop_frac;
+	atomic_long_t tot_write_bandwidth;
+	struct bdi_writeback wb;
+	struct list_head wb_list;
+	struct xarray cgwb_tree;
+	struct mutex cgwb_release_mutex;
+	struct rw_semaphore wb_switch_rwsem;
+	wait_queue_head_t wb_waitq;
+	struct device *dev;
+	char dev_name[64];
+	struct device *owner;
+	struct timer_list laptop_mode_wb_timer;
+	struct dentry *debug_dir;
+};
+
+struct css_set {
+	struct cgroup_subsys_state *subsys[14];
+	refcount_t refcount;
+	struct css_set *dom_cset;
+	struct cgroup *dfl_cgrp;
+	int nr_tasks;
+	struct list_head tasks;
+	struct list_head mg_tasks;
+	struct list_head dying_tasks;
+	struct list_head task_iters;
+	struct list_head e_cset_node[14];
+	struct list_head threaded_csets;
+	struct list_head threaded_csets_node;
+	struct hlist_node hlist;
+	struct list_head cgrp_links;
+	struct list_head mg_src_preload_node;
+	struct list_head mg_dst_preload_node;
+	struct list_head mg_node;
+	struct cgroup *mg_src_cgrp;
+	struct cgroup *mg_dst_cgrp;
+	struct css_set *mg_dst_cset;
+	bool dead;
+	struct callback_head callback_head;
+};
+
+typedef u32 compat_uptr_t;
+
+struct compat_robust_list {
+	compat_uptr_t next;
+};
+
+typedef s32 compat_long_t;
+
+struct compat_robust_list_head {
+	struct compat_robust_list list;
+	compat_long_t futex_offset;
+	compat_uptr_t list_op_pending;
+};
+
+struct perf_event_groups {
+	struct rb_root tree;
+	u64 index;
+};
+
+struct perf_event_context {
+	struct pmu *pmu;
+	raw_spinlock_t lock;
+	struct mutex mutex;
+	struct list_head active_ctx_list;
+	struct perf_event_groups pinned_groups;
+	struct perf_event_groups flexible_groups;
+	struct list_head event_list;
+	struct list_head pinned_active;
+	struct list_head flexible_active;
+	int nr_events;
+	int nr_active;
+	int is_active;
+	int nr_stat;
+	int nr_freq;
+	int rotate_disable;
+	int rotate_necessary;
+	refcount_t refcount;
+	struct task_struct *task;
+	u64 time;
+	u64 timestamp;
+	u64 timeoffset;
+	struct perf_event_context *parent_ctx;
+	u64 parent_gen;
+	u64 generation;
+	int pin_count;
+	int nr_cgroups;
+	void *task_ctx_data;
+	struct callback_head callback_head;
+	local_t nr_pending;
+};
+
+struct pipe_buffer;
+
+struct watch_queue;
+
+struct pipe_inode_info {
+	struct mutex mutex;
+	wait_queue_head_t rd_wait;
+	wait_queue_head_t wr_wait;
+	unsigned int head;
+	unsigned int tail;
+	unsigned int max_usage;
+	unsigned int ring_size;
+	bool note_loss;
+	unsigned int nr_accounted;
+	unsigned int readers;
+	unsigned int writers;
+	unsigned int files;
+	unsigned int r_counter;
+	unsigned int w_counter;
+	bool poll_usage;
+	struct page *tmp_page;
+	struct fasync_struct *fasync_readers;
+	struct fasync_struct *fasync_writers;
+	struct pipe_buffer *bufs;
+	struct user_struct *user;
+	struct watch_queue *watch_queue;
+};
+
+struct task_delay_info {
+	raw_spinlock_t lock;
+	unsigned int flags;
+	u64 blkio_start;
+	u64 blkio_delay;
+	u64 swapin_delay;
+	u32 blkio_count;
+	u32 swapin_count;
+	u64 freepages_start;
+	u64 freepages_delay;
+	u64 thrashing_start;
+	u64 thrashing_delay;
+	u32 freepages_count;
+	u32 thrashing_count;
+};
+
+struct ftrace_ret_stack {
+	long unsigned int ret;
+	long unsigned int func;
+	long long unsigned int calltime;
+	long long unsigned int subtime;
+	long unsigned int *retp;
+};
+
+struct blk_integrity_profile;
+
+struct blk_integrity {
+	const struct blk_integrity_profile *profile;
+	unsigned char flags;
+	unsigned char tuple_size;
+	unsigned char interval_exp;
+	unsigned char tag_size;
+};
+
+enum rpm_status {
+	RPM_ACTIVE = 0,
+	RPM_RESUMING = 1,
+	RPM_SUSPENDED = 2,
+	RPM_SUSPENDING = 3,
+};
+
+struct blk_rq_stat {
+	u64 mean;
+	u64 min;
+	u64 max;
+	u32 nr_samples;
+	u64 batch;
+};
+
+struct sbitmap_word;
+
+struct sbitmap {
+	unsigned int depth;
+	unsigned int shift;
+	unsigned int map_nr;
+	bool round_robin;
+	struct sbitmap_word *map;
+	unsigned int *alloc_hint;
+};
+
+struct sbq_wait_state;
+
+struct sbitmap_queue {
+	struct sbitmap sb;
+	unsigned int wake_batch;
+	atomic_t wake_index;
+	struct sbq_wait_state *ws;
+	atomic_t ws_active;
+	unsigned int min_shallow_depth;
+};
+
+enum blk_bounce {
+	BLK_BOUNCE_NONE = 0,
+	BLK_BOUNCE_HIGH = 1,
+};
+
+enum blk_zoned_model {
+	BLK_ZONED_NONE = 0,
+	BLK_ZONED_HA = 1,
+	BLK_ZONED_HM = 2,
+};
+
+struct queue_limits {
+	enum blk_bounce bounce;
+	long unsigned int seg_boundary_mask;
+	long unsigned int virt_boundary_mask;
+	unsigned int max_hw_sectors;
+	unsigned int max_dev_sectors;
+	unsigned int chunk_sectors;
+	unsigned int max_sectors;
+	unsigned int max_segment_size;
+	unsigned int physical_block_size;
+	unsigned int logical_block_size;
+	unsigned int alignment_offset;
+	unsigned int io_min;
+	unsigned int io_opt;
+	unsigned int max_discard_sectors;
+	unsigned int max_hw_discard_sectors;
+	unsigned int max_write_same_sectors;
+	unsigned int max_write_zeroes_sectors;
+	unsigned int max_zone_append_sectors;
+	unsigned int discard_granularity;
+	unsigned int discard_alignment;
+	unsigned int zone_write_granularity;
+	short unsigned int max_segments;
+	short unsigned int max_integrity_segments;
+	short unsigned int max_discard_segments;
+	unsigned char misaligned;
+	unsigned char discard_misaligned;
+	unsigned char raid_partial_stripes_expensive;
+	enum blk_zoned_model zoned;
+};
+
+typedef void *mempool_alloc_t(gfp_t, void *);
+
+typedef void mempool_free_t(void *, void *);
+
+struct mempool_s {
+	spinlock_t lock;
+	int min_nr;
+	int curr_nr;
+	void **elements;
+	void *pool_data;
+	mempool_alloc_t *alloc;
+	mempool_free_t *free;
+	wait_queue_head_t wait;
+};
+
+typedef struct mempool_s mempool_t;
+
+struct bio_alloc_cache;
+
+struct bio_set {
+	struct kmem_cache *bio_slab;
+	unsigned int front_pad;
+	struct bio_alloc_cache *cache;
+	mempool_t bio_pool;
+	mempool_t bvec_pool;
+	mempool_t bio_integrity_pool;
+	mempool_t bvec_integrity_pool;
+	unsigned int back_pad;
+	spinlock_t rescue_lock;
+	struct bio_list rescue_list;
+	struct work_struct rescue_work;
+	struct workqueue_struct *rescue_workqueue;
+	struct hlist_node cpuhp_dead;
+};
+
+struct request;
+
+struct elevator_queue;
+
+struct blk_queue_stats;
+
+struct rq_qos;
+
+struct blk_mq_ops;
+
+struct blk_mq_ctx;
+
+struct blk_mq_hw_ctx;
+
+struct gendisk;
+
+struct blk_keyslot_manager;
+
+struct blk_stat_callback;
+
+struct blkcg_gq;
+
+struct blk_trace;
+
+struct blk_flush_queue;
+
+struct throtl_data;
+
+struct blk_mq_tag_set;
+
+struct request_queue {
+	struct request *last_merge;
+	struct elevator_queue *elevator;
+	struct percpu_ref q_usage_counter;
+	struct blk_queue_stats *stats;
+	struct rq_qos *rq_qos;
+	const struct blk_mq_ops *mq_ops;
+	struct blk_mq_ctx *queue_ctx;
+	unsigned int queue_depth;
+	struct blk_mq_hw_ctx **queue_hw_ctx;
+	unsigned int nr_hw_queues;
+	void *queuedata;
+	long unsigned int queue_flags;
+	atomic_t pm_only;
+	int id;
+	spinlock_t queue_lock;
+	struct gendisk *disk;
+	struct kobject kobj;
+	struct kobject *mq_kobj;
+	struct blk_integrity integrity;
+	struct device *dev;
+	enum rpm_status rpm_status;
+	long unsigned int nr_requests;
+	unsigned int dma_pad_mask;
+	unsigned int dma_alignment;
+	struct blk_keyslot_manager *ksm;
+	unsigned int rq_timeout;
+	int poll_nsec;
+	struct blk_stat_callback *poll_cb;
+	struct blk_rq_stat poll_stat[16];
+	struct timer_list timeout;
+	struct work_struct timeout_work;
+	atomic_t nr_active_requests_shared_sbitmap;
+	struct sbitmap_queue sched_bitmap_tags;
+	struct sbitmap_queue sched_breserved_tags;
+	struct list_head icq_list;
+	long unsigned int blkcg_pols[1];
+	struct blkcg_gq *root_blkg;
+	struct list_head blkg_list;
+	struct queue_limits limits;
+	unsigned int required_elevator_features;
+	unsigned int nr_zones;
+	long unsigned int *conv_zones_bitmap;
+	long unsigned int *seq_zones_wlock;
+	unsigned int max_open_zones;
+	unsigned int max_active_zones;
+	int node;
+	struct mutex debugfs_mutex;
+	struct blk_trace *blk_trace;
+	struct blk_flush_queue *fq;
+	struct list_head requeue_list;
+	spinlock_t requeue_lock;
+	struct delayed_work requeue_work;
+	struct mutex sysfs_lock;
+	struct mutex sysfs_dir_lock;
+	struct list_head unused_hctx_list;
+	spinlock_t unused_hctx_lock;
+	int mq_freeze_depth;
+	struct throtl_data *td;
+	struct callback_head callback_head;
+	wait_queue_head_t mq_freeze_wq;
+	struct mutex mq_freeze_lock;
+	struct blk_mq_tag_set *tag_set;
+	struct list_head tag_set_list;
+	struct bio_set bio_split;
+	struct dentry *debugfs_dir;
+	struct dentry *sched_debugfs_dir;
+	struct dentry *rqos_debugfs_dir;
+	bool mq_sysfs_init_done;
+	size_t cmd_size;
+	u64 write_hints[5];
+};
+
+struct bpf_run_ctx {};
+
 struct cgroup_base_stat {
 	struct task_cputime cputime;
 };
@@ -6057,30 +6437,30 @@ struct psi_group_cpu;
 struct psi_group {
 	struct mutex avgs_lock;
 	struct psi_group_cpu *pcpu;
-	u64 avg_total[5];
+	u64 avg_total[6];
 	u64 avg_last_update;
 	u64 avg_next_update;
 	struct delayed_work avgs_work;
-	u64 total[10];
-	long unsigned int avg[15];
+	u64 total[12];
+	long unsigned int avg[18];
 	struct task_struct *poll_task;
 	struct timer_list poll_timer;
 	wait_queue_head_t poll_wait;
 	atomic_t poll_wakeup;
 	struct mutex trigger_lock;
 	struct list_head triggers;
-	u32 nr_triggers[5];
+	u32 nr_triggers[6];
 	u32 poll_states;
 	u64 poll_min_period;
-	u64 polling_total[5];
+	u64 polling_total[6];
 	u64 polling_next_update;
 	u64 polling_until;
 };
 
 struct cgroup_bpf {
-	struct bpf_prog_array *effective[38];
-	struct list_head progs[38];
-	u32 flags[38];
+	struct bpf_prog_array *effective[23];
+	struct list_head progs[23];
+	u32 flags[23];
 	struct list_head storages;
 	struct bpf_prog_array *inactive;
 	struct percpu_ref refcnt;
@@ -6117,10 +6497,10 @@ struct cgroup {
 	u16 subtree_ss_mask;
 	u16 old_subtree_control;
 	u16 old_subtree_ss_mask;
-	struct cgroup_subsys_state *subsys[13];
+	struct cgroup_subsys_state *subsys[14];
 	struct cgroup_root *root;
 	struct list_head cset_links;
-	struct list_head e_csets[13];
+	struct list_head e_csets[14];
 	struct cgroup *dom_cgrp;
 	struct cgroup *old_dom_cgrp;
 	struct cgroup_rstat_cpu *rstat_cpu;
@@ -6231,6 +6611,7 @@ struct writeback_control {
 struct readahead_control {
 	struct file *file;
 	struct address_space *mapping;
+	struct file_ra_state *ra;
 	long unsigned int _index;
 	unsigned int _nr_pages;
 	unsigned int _batch_count;
@@ -6243,13 +6624,16 @@ struct kvec;
 struct bio_vec;
 
 struct iov_iter {
-	unsigned int type;
+	u8 iter_type;
+	bool nofault;
+	bool data_source;
 	size_t iov_offset;
 	size_t count;
 	union {
 		const struct iovec *iov;
 		const struct kvec *kvec;
 		const struct bio_vec *bvec;
+		struct xarray *xarray;
 		struct pipe_inode_info *pipe;
 	};
 	union {
@@ -6258,6 +6642,7 @@ struct iov_iter {
 			unsigned int head;
 			unsigned int start_head;
 		};
+		loff_t xarray_start;
 	};
 };
 
@@ -6275,6 +6660,7 @@ struct swap_cluster_list {
 struct percpu_cluster;
 
 struct swap_info_struct {
+	struct percpu_ref users;
 	long unsigned int flags;
 	short int prio;
 	struct plist_node list;
@@ -6295,6 +6681,7 @@ struct swap_info_struct {
 	struct block_device *bdev;
 	struct file *swap_file;
 	unsigned int old_block_size;
+	struct completion comp;
 	long unsigned int *frontswap_map;
 	atomic_t frontswap_pages;
 	spinlock_t lock;
@@ -6304,32 +6691,6 @@ struct swap_info_struct {
 	struct plist_node avail_lists[0];
 };
 
-struct hd_struct;
-
-struct gendisk;
-
-struct block_device {
-	dev_t bd_dev;
-	int bd_openers;
-	struct inode *bd_inode;
-	struct super_block *bd_super;
-	struct mutex bd_mutex;
-	void *bd_claiming;
-	void *bd_holder;
-	int bd_holders;
-	bool bd_write_holder;
-	struct list_head bd_holder_disks;
-	struct block_device *bd_contains;
-	u8 bd_partno;
-	struct hd_struct *bd_part;
-	unsigned int bd_part_count;
-	spinlock_t bd_size_lock;
-	struct gendisk *bd_disk;
-	struct backing_dev_info *bd_bdi;
-	int bd_fsfreeze_count;
-	struct mutex bd_fsfreeze_mutex;
-};
-
 struct cdev {
 	struct kobject kobj;
 	struct module *owner;
@@ -6339,6 +6700,212 @@ struct cdev {
 	unsigned int count;
 };
 
+enum dl_dev_state {
+	DL_DEV_NO_DRIVER = 0,
+	DL_DEV_PROBING = 1,
+	DL_DEV_DRIVER_BOUND = 2,
+	DL_DEV_UNBINDING = 3,
+};
+
+struct dev_links_info {
+	struct list_head suppliers;
+	struct list_head consumers;
+	struct list_head defer_sync;
+	enum dl_dev_state status;
+};
+
+struct pm_message {
+	int event;
+};
+
+typedef struct pm_message pm_message_t;
+
+enum rpm_request {
+	RPM_REQ_NONE = 0,
+	RPM_REQ_IDLE = 1,
+	RPM_REQ_SUSPEND = 2,
+	RPM_REQ_AUTOSUSPEND = 3,
+	RPM_REQ_RESUME = 4,
+};
+
+struct wakeup_source;
+
+struct wake_irq;
+
+struct pm_subsys_data;
+
+struct dev_pm_qos;
+
+struct dev_pm_info {
+	pm_message_t power_state;
+	unsigned int can_wakeup: 1;
+	unsigned int async_suspend: 1;
+	bool in_dpm_list: 1;
+	bool is_prepared: 1;
+	bool is_suspended: 1;
+	bool is_noirq_suspended: 1;
+	bool is_late_suspended: 1;
+	bool no_pm: 1;
+	bool early_init: 1;
+	bool direct_complete: 1;
+	u32 driver_flags;
+	spinlock_t lock;
+	struct list_head entry;
+	struct completion completion;
+	struct wakeup_source *wakeup;
+	bool wakeup_path: 1;
+	bool syscore: 1;
+	bool no_pm_callbacks: 1;
+	unsigned int must_resume: 1;
+	unsigned int may_skip_resume: 1;
+	struct hrtimer suspend_timer;
+	u64 timer_expires;
+	struct work_struct work;
+	wait_queue_head_t wait_queue;
+	struct wake_irq *wakeirq;
+	atomic_t usage_count;
+	atomic_t child_count;
+	unsigned int disable_depth: 3;
+	unsigned int idle_notification: 1;
+	unsigned int request_pending: 1;
+	unsigned int deferred_resume: 1;
+	unsigned int needs_force_resume: 1;
+	unsigned int runtime_auto: 1;
+	bool ignore_children: 1;
+	unsigned int no_callbacks: 1;
+	unsigned int irq_safe: 1;
+	unsigned int use_autosuspend: 1;
+	unsigned int timer_autosuspends: 1;
+	unsigned int memalloc_noio: 1;
+	unsigned int links_count;
+	enum rpm_request request;
+	enum rpm_status runtime_status;
+	int runtime_error;
+	int autosuspend_delay;
+	u64 last_busy;
+	u64 active_time;
+	u64 suspended_time;
+	u64 accounting_timestamp;
+	struct pm_subsys_data *subsys_data;
+	void (*set_latency_tolerance)(struct device *, s32);
+	struct dev_pm_qos *qos;
+};
+
+struct dev_archdata {};
+
+enum device_removable {
+	DEVICE_REMOVABLE_NOT_SUPPORTED = 0,
+	DEVICE_REMOVABLE_UNKNOWN = 1,
+	DEVICE_FIXED = 2,
+	DEVICE_REMOVABLE = 3,
+};
+
+struct device_private;
+
+struct device_type;
+
+struct bus_type;
+
+struct device_driver;
+
+struct dev_pm_domain;
+
+struct em_perf_domain;
+
+struct dev_pin_info;
+
+struct dma_map_ops;
+
+struct bus_dma_region;
+
+struct device_dma_parameters;
+
+struct io_tlb_mem;
+
+struct device_node;
+
+struct class;
+
+struct iommu_group;
+
+struct dev_iommu;
+
+struct device {
+	struct kobject kobj;
+	struct device *parent;
+	struct device_private *p;
+	const char *init_name;
+	const struct device_type *type;
+	struct bus_type *bus;
+	struct device_driver *driver;
+	void *platform_data;
+	void *driver_data;
+	struct mutex mutex;
+	struct dev_links_info links;
+	struct dev_pm_info power;
+	struct dev_pm_domain *pm_domain;
+	struct em_perf_domain *em_pd;
+	struct irq_domain *msi_domain;
+	struct dev_pin_info *pins;
+	raw_spinlock_t msi_lock;
+	struct list_head msi_list;
+	const struct dma_map_ops *dma_ops;
+	u64 *dma_mask;
+	u64 coherent_dma_mask;
+	u64 bus_dma_limit;
+	const struct bus_dma_region *dma_range_map;
+	struct device_dma_parameters *dma_parms;
+	struct list_head dma_pools;
+	struct io_tlb_mem *dma_io_tlb_mem;
+	struct dev_archdata archdata;
+	struct device_node *of_node;
+	struct fwnode_handle *fwnode;
+	int numa_node;
+	dev_t devt;
+	u32 id;
+	spinlock_t devres_lock;
+	struct list_head devres_head;
+	struct class *class;
+	const struct attribute_group **groups;
+	void (*release)(struct device *);
+	struct iommu_group *iommu_group;
+	struct dev_iommu *iommu;
+	enum device_removable removable;
+	bool offline_disabled: 1;
+	bool offline: 1;
+	bool of_node_reused: 1;
+	bool state_synced: 1;
+	bool can_match: 1;
+};
+
+struct disk_stats;
+
+struct partition_meta_info;
+
+struct block_device {
+	sector_t bd_start_sect;
+	struct disk_stats *bd_stats;
+	long unsigned int bd_stamp;
+	bool bd_read_only;
+	dev_t bd_dev;
+	int bd_openers;
+	struct inode *bd_inode;
+	struct super_block *bd_super;
+	void *bd_claiming;
+	struct device bd_device;
+	void *bd_holder;
+	int bd_holders;
+	bool bd_write_holder;
+	struct kobject *bd_holder_dir;
+	u8 bd_partno;
+	spinlock_t bd_size_lock;
+	struct gendisk *bd_disk;
+	int bd_fsfreeze_count;
+	struct mutex bd_fsfreeze_mutex;
+	struct super_block *bd_fsfreeze_sb;
+	struct partition_meta_info *bd_meta_info;
+};
+
 struct fc_log;
 
 struct p_log {
@@ -6420,17 +6987,18 @@ struct bio_vec {
 	unsigned int bv_offset;
 };
 
+struct bio_crypt_ctx;
+
 struct bio_integrity_payload;
 
 struct bio {
 	struct bio *bi_next;
-	struct gendisk *bi_disk;
+	struct block_device *bi_bdev;
 	unsigned int bi_opf;
 	short unsigned int bi_flags;
 	short unsigned int bi_ioprio;
 	short unsigned int bi_write_hint;
 	blk_status_t bi_status;
-	u8 bi_partno;
 	atomic_t __bi_remaining;
 	struct bvec_iter bi_iter;
 	bio_end_io_t *bi_end_io;
@@ -6438,6 +7006,7 @@ struct bio {
 	struct blkcg_gq *bi_blkg;
 	struct bio_issue bi_issue;
 	u64 bi_iocost_cost;
+	struct bio_crypt_ctx *bi_crypt_context;
 	union {
 		struct bio_integrity_payload *bi_integrity;
 	};
@@ -6488,6 +7057,7 @@ struct coredump_params {
 	long unsigned int mm_flags;
 	loff_t written;
 	loff_t pos;
+	loff_t to_skip;
 	int vma_count;
 	size_t vma_data_size;
 	struct core_vma_metadata *vma_meta;
@@ -6502,175 +7072,10 @@ struct em_perf_state {
 struct em_perf_domain {
 	struct em_perf_state *table;
 	int nr_perf_states;
+	int milliwatts;
 	long unsigned int cpus[0];
 };
 
-enum dl_dev_state {
-	DL_DEV_NO_DRIVER = 0,
-	DL_DEV_PROBING = 1,
-	DL_DEV_DRIVER_BOUND = 2,
-	DL_DEV_UNBINDING = 3,
-};
-
-struct dev_links_info {
-	struct list_head suppliers;
-	struct list_head consumers;
-	struct list_head needs_suppliers;
-	struct list_head defer_hook;
-	bool need_for_probe;
-	enum dl_dev_state status;
-};
-
-struct pm_message {
-	int event;
-};
-
-typedef struct pm_message pm_message_t;
-
-enum rpm_request {
-	RPM_REQ_NONE = 0,
-	RPM_REQ_IDLE = 1,
-	RPM_REQ_SUSPEND = 2,
-	RPM_REQ_AUTOSUSPEND = 3,
-	RPM_REQ_RESUME = 4,
-};
-
-struct wakeup_source;
-
-struct wake_irq;
-
-struct pm_subsys_data;
-
-struct dev_pm_qos;
-
-struct dev_pm_info {
-	pm_message_t power_state;
-	unsigned int can_wakeup: 1;
-	unsigned int async_suspend: 1;
-	bool in_dpm_list: 1;
-	bool is_prepared: 1;
-	bool is_suspended: 1;
-	bool is_noirq_suspended: 1;
-	bool is_late_suspended: 1;
-	bool no_pm: 1;
-	bool early_init: 1;
-	bool direct_complete: 1;
-	u32 driver_flags;
-	spinlock_t lock;
-	struct list_head entry;
-	struct completion completion;
-	struct wakeup_source *wakeup;
-	bool wakeup_path: 1;
-	bool syscore: 1;
-	bool no_pm_callbacks: 1;
-	unsigned int must_resume: 1;
-	unsigned int may_skip_resume: 1;
-	struct hrtimer suspend_timer;
-	u64 timer_expires;
-	struct work_struct work;
-	wait_queue_head_t wait_queue;
-	struct wake_irq *wakeirq;
-	atomic_t usage_count;
-	atomic_t child_count;
-	unsigned int disable_depth: 3;
-	unsigned int idle_notification: 1;
-	unsigned int request_pending: 1;
-	unsigned int deferred_resume: 1;
-	unsigned int needs_force_resume: 1;
-	unsigned int runtime_auto: 1;
-	bool ignore_children: 1;
-	unsigned int no_callbacks: 1;
-	unsigned int irq_safe: 1;
-	unsigned int use_autosuspend: 1;
-	unsigned int timer_autosuspends: 1;
-	unsigned int memalloc_noio: 1;
-	unsigned int links_count;
-	enum rpm_request request;
-	enum rpm_status runtime_status;
-	int runtime_error;
-	int autosuspend_delay;
-	u64 last_busy;
-	u64 active_time;
-	u64 suspended_time;
-	u64 accounting_timestamp;
-	struct pm_subsys_data *subsys_data;
-	void (*set_latency_tolerance)(struct device *, s32);
-	struct dev_pm_qos *qos;
-};
-
-struct dev_archdata {};
-
-struct device_private;
-
-struct device_type;
-
-struct bus_type;
-
-struct device_driver;
-
-struct dev_pm_domain;
-
-struct dev_pin_info;
-
-struct dma_map_ops;
-
-struct bus_dma_region;
-
-struct device_dma_parameters;
-
-struct device_node;
-
-struct class;
-
-struct iommu_group;
-
-struct dev_iommu;
-
-struct device {
-	struct kobject kobj;
-	struct device *parent;
-	struct device_private *p;
-	const char *init_name;
-	const struct device_type *type;
-	struct bus_type *bus;
-	struct device_driver *driver;
-	void *platform_data;
-	void *driver_data;
-	struct mutex mutex;
-	struct dev_links_info links;
-	struct dev_pm_info power;
-	struct dev_pm_domain *pm_domain;
-	struct em_perf_domain *em_pd;
-	struct irq_domain *msi_domain;
-	struct dev_pin_info *pins;
-	raw_spinlock_t msi_lock;
-	struct list_head msi_list;
-	const struct dma_map_ops *dma_ops;
-	u64 *dma_mask;
-	u64 coherent_dma_mask;
-	u64 bus_dma_limit;
-	const struct bus_dma_region *dma_range_map;
-	struct device_dma_parameters *dma_parms;
-	struct list_head dma_pools;
-	struct dev_archdata archdata;
-	struct device_node *of_node;
-	struct fwnode_handle *fwnode;
-	int numa_node;
-	dev_t devt;
-	u32 id;
-	spinlock_t devres_lock;
-	struct list_head devres_head;
-	struct class *class;
-	const struct attribute_group **groups;
-	void (*release)(struct device *);
-	struct iommu_group *iommu_group;
-	struct dev_iommu *iommu;
-	bool offline_disabled: 1;
-	bool offline: 1;
-	bool of_node_reused: 1;
-	bool state_synced: 1;
-};
-
 struct dev_pm_ops {
 	int (*prepare)(struct device *);
 	void (*complete)(struct device *);
@@ -6702,6 +7107,8 @@ struct pm_domain_data;
 struct pm_subsys_data {
 	spinlock_t lock;
 	unsigned int refcount;
+	unsigned int clock_op_might_sleep;
+	struct mutex clock_mutex;
 	struct list_head clock_list;
 	struct pm_domain_data *domain_data;
 };
@@ -6753,7 +7160,7 @@ struct bus_type {
 	int (*uevent)(struct device *, struct kobj_uevent_env *);
 	int (*probe)(struct device *);
 	void (*sync_state)(struct device *);
-	int (*remove)(struct device *);
+	void (*remove)(struct device *);
 	void (*shutdown)(struct device *);
 	int (*online)(struct device *);
 	int (*offline)(struct device *);
@@ -6810,21 +7217,10 @@ enum iommu_cap {
 
 typedef u64 dma_addr_t;
 
-enum iommu_attr {
-	DOMAIN_ATTR_GEOMETRY = 0,
-	DOMAIN_ATTR_PAGING = 1,
-	DOMAIN_ATTR_WINDOWS = 2,
-	DOMAIN_ATTR_FSL_PAMU_STASH = 3,
-	DOMAIN_ATTR_FSL_PAMU_ENABLE = 4,
-	DOMAIN_ATTR_FSL_PAMUV1 = 5,
-	DOMAIN_ATTR_NESTING = 6,
-	DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE = 7,
-	DOMAIN_ATTR_MAX = 8,
-};
-
 enum iommu_dev_features {
 	IOMMU_DEV_FEAT_AUX = 0,
 	IOMMU_DEV_FEAT_SVA = 1,
+	IOMMU_DEV_FEAT_IOPF = 2,
 };
 
 struct iommu_domain;
@@ -6854,22 +7250,22 @@ struct iommu_ops {
 	int (*attach_dev)(struct iommu_domain *, struct device *);
 	void (*detach_dev)(struct iommu_domain *, struct device *);
 	int (*map)(struct iommu_domain *, long unsigned int, phys_addr_t, size_t, int, gfp_t);
+	int (*map_pages)(struct iommu_domain *, long unsigned int, phys_addr_t, size_t, size_t, int, gfp_t, size_t *);
 	size_t (*unmap)(struct iommu_domain *, long unsigned int, size_t, struct iommu_iotlb_gather *);
+	size_t (*unmap_pages)(struct iommu_domain *, long unsigned int, size_t, size_t, struct iommu_iotlb_gather *);
 	void (*flush_iotlb_all)(struct iommu_domain *);
-	void (*iotlb_sync_map)(struct iommu_domain *);
+	void (*iotlb_sync_map)(struct iommu_domain *, long unsigned int, size_t);
 	void (*iotlb_sync)(struct iommu_domain *, struct iommu_iotlb_gather *);
 	phys_addr_t (*iova_to_phys)(struct iommu_domain *, dma_addr_t);
 	struct iommu_device * (*probe_device)(struct device *);
 	void (*release_device)(struct device *);
 	void (*probe_finalize)(struct device *);
 	struct iommu_group * (*device_group)(struct device *);
-	int (*domain_get_attr)(struct iommu_domain *, enum iommu_attr, void *);
-	int (*domain_set_attr)(struct iommu_domain *, enum iommu_attr, void *);
+	int (*enable_nesting)(struct iommu_domain *);
+	int (*set_pgtable_quirks)(struct iommu_domain *, long unsigned int);
 	void (*get_resv_regions)(struct device *, struct list_head *);
 	void (*put_resv_regions)(struct device *, struct list_head *);
 	void (*apply_resv_region)(struct device *, struct iommu_domain *, struct iommu_resv_region *);
-	int (*domain_window_enable)(struct iommu_domain *, u32, phys_addr_t, u64, int);
-	void (*domain_window_disable)(struct iommu_domain *, u32);
 	int (*of_xlate)(struct device *, struct of_phandle_args *);
 	bool (*is_attach_deferred)(struct iommu_domain *, struct device *);
 	bool (*dev_has_feat)(struct device *, enum iommu_dev_features);
@@ -6940,13 +7336,6 @@ struct device_dma_parameters {
 	long unsigned int segment_boundary_mask;
 };
 
-enum dma_data_direction {
-	DMA_BIDIRECTIONAL = 0,
-	DMA_TO_DEVICE = 1,
-	DMA_FROM_DEVICE = 2,
-	DMA_NONE = 3,
-};
-
 struct sg_table;
 
 struct scatterlist;
@@ -6956,8 +7345,8 @@ struct dma_map_ops {
 	void (*free)(struct device *, size_t, void *, dma_addr_t, long unsigned int);
 	struct page * (*alloc_pages)(struct device *, size_t, dma_addr_t *, enum dma_data_direction, gfp_t);
 	void (*free_pages)(struct device *, size_t, struct page *, dma_addr_t, enum dma_data_direction);
-	void * (*alloc_noncoherent)(struct device *, size_t, dma_addr_t *, enum dma_data_direction, gfp_t);
-	void (*free_noncoherent)(struct device *, size_t, void *, dma_addr_t, enum dma_data_direction);
+	struct sg_table * (*alloc_noncontiguous)(struct device *, size_t, enum dma_data_direction, gfp_t, long unsigned int);
+	void (*free_noncontiguous)(struct device *, size_t, struct sg_table *, enum dma_data_direction);
 	int (*mmap)(struct device *, struct vm_area_struct *, void *, dma_addr_t, size_t, long unsigned int);
 	int (*get_sgtable)(struct device *, struct sg_table *, void *, dma_addr_t, size_t, long unsigned int);
 	dma_addr_t (*map_page)(struct device *, struct page *, long unsigned int, size_t, enum dma_data_direction, long unsigned int);
@@ -6974,6 +7363,7 @@ struct dma_map_ops {
 	int (*dma_supported)(struct device *, u64);
 	u64 (*get_required_mask)(struct device *);
 	size_t (*max_mapping_size)(struct device *);
+	size_t (*opt_mapping_size)(void);
 	long unsigned int (*get_merge_boundary)(struct device *);
 };
 
@@ -6992,6 +7382,9 @@ struct fwnode_handle {
 	struct fwnode_handle *secondary;
 	const struct fwnode_operations *ops;
 	struct device *dev;
+	struct list_head suppliers;
+	struct list_head consumers;
+	u8 flags;
 };
 
 struct property;
@@ -7026,170 +7419,176 @@ enum cpuhp_state {
 	CPUHP_SLUB_DEAD = 11,
 	CPUHP_DEBUG_OBJ_DEAD = 12,
 	CPUHP_MM_WRITEBACK_DEAD = 13,
-	CPUHP_MM_VMSTAT_DEAD = 14,
-	CPUHP_SOFTIRQ_DEAD = 15,
-	CPUHP_NET_MVNETA_DEAD = 16,
-	CPUHP_CPUIDLE_DEAD = 17,
-	CPUHP_ARM64_FPSIMD_DEAD = 18,
-	CPUHP_ARM_OMAP_WAKE_DEAD = 19,
-	CPUHP_IRQ_POLL_DEAD = 20,
-	CPUHP_BLOCK_SOFTIRQ_DEAD = 21,
-	CPUHP_ACPI_CPUDRV_DEAD = 22,
-	CPUHP_S390_PFAULT_DEAD = 23,
-	CPUHP_BLK_MQ_DEAD = 24,
-	CPUHP_FS_BUFF_DEAD = 25,
-	CPUHP_PRINTK_DEAD = 26,
-	CPUHP_MM_MEMCQ_DEAD = 27,
-	CPUHP_PERCPU_CNT_DEAD = 28,
-	CPUHP_RADIX_DEAD = 29,
-	CPUHP_PAGE_ALLOC_DEAD = 30,
-	CPUHP_NET_DEV_DEAD = 31,
-	CPUHP_PCI_XGENE_DEAD = 32,
-	CPUHP_IOMMU_INTEL_DEAD = 33,
-	CPUHP_LUSTRE_CFS_DEAD = 34,
-	CPUHP_AP_ARM_CACHE_B15_RAC_DEAD = 35,
-	CPUHP_PADATA_DEAD = 36,
-	CPUHP_RANDOM_PREPARE = 37,
-	CPUHP_WORKQUEUE_PREP = 38,
-	CPUHP_POWER_NUMA_PREPARE = 39,
-	CPUHP_HRTIMERS_PREPARE = 40,
-	CPUHP_PROFILE_PREPARE = 41,
-	CPUHP_X2APIC_PREPARE = 42,
-	CPUHP_SMPCFD_PREPARE = 43,
-	CPUHP_RELAY_PREPARE = 44,
-	CPUHP_SLAB_PREPARE = 45,
-	CPUHP_MD_RAID5_PREPARE = 46,
-	CPUHP_RCUTREE_PREP = 47,
-	CPUHP_CPUIDLE_COUPLED_PREPARE = 48,
-	CPUHP_POWERPC_PMAC_PREPARE = 49,
-	CPUHP_POWERPC_MMU_CTX_PREPARE = 50,
-	CPUHP_XEN_PREPARE = 51,
-	CPUHP_XEN_EVTCHN_PREPARE = 52,
-	CPUHP_ARM_SHMOBILE_SCU_PREPARE = 53,
-	CPUHP_SH_SH3X_PREPARE = 54,
-	CPUHP_NET_FLOW_PREPARE = 55,
-	CPUHP_TOPOLOGY_PREPARE = 56,
-	CPUHP_NET_IUCV_PREPARE = 57,
-	CPUHP_ARM_BL_PREPARE = 58,
-	CPUHP_TRACE_RB_PREPARE = 59,
-	CPUHP_MM_ZS_PREPARE = 60,
-	CPUHP_MM_ZSWP_MEM_PREPARE = 61,
-	CPUHP_MM_ZSWP_POOL_PREPARE = 62,
-	CPUHP_KVM_PPC_BOOK3S_PREPARE = 63,
-	CPUHP_ZCOMP_PREPARE = 64,
-	CPUHP_TIMERS_PREPARE = 65,
-	CPUHP_MIPS_SOC_PREPARE = 66,
-	CPUHP_BP_PREPARE_DYN = 67,
-	CPUHP_BP_PREPARE_DYN_END = 87,
-	CPUHP_BRINGUP_CPU = 88,
-	CPUHP_AP_IDLE_DEAD = 89,
-	CPUHP_AP_OFFLINE = 90,
-	CPUHP_AP_SCHED_STARTING = 91,
-	CPUHP_AP_RCUTREE_DYING = 92,
-	CPUHP_AP_CPU_PM_STARTING = 93,
-	CPUHP_AP_IRQ_GIC_STARTING = 94,
-	CPUHP_AP_IRQ_HIP04_STARTING = 95,
-	CPUHP_AP_IRQ_ARMADA_XP_STARTING = 96,
-	CPUHP_AP_IRQ_BCM2836_STARTING = 97,
-	CPUHP_AP_IRQ_MIPS_GIC_STARTING = 98,
-	CPUHP_AP_IRQ_RISCV_STARTING = 99,
-	CPUHP_AP_IRQ_SIFIVE_PLIC_STARTING = 100,
-	CPUHP_AP_ARM_MVEBU_COHERENCY = 101,
-	CPUHP_AP_MICROCODE_LOADER = 102,
-	CPUHP_AP_PERF_X86_AMD_UNCORE_STARTING = 103,
-	CPUHP_AP_PERF_X86_STARTING = 104,
-	CPUHP_AP_PERF_X86_AMD_IBS_STARTING = 105,
-	CPUHP_AP_PERF_X86_CQM_STARTING = 106,
-	CPUHP_AP_PERF_X86_CSTATE_STARTING = 107,
-	CPUHP_AP_PERF_XTENSA_STARTING = 108,
-	CPUHP_AP_MIPS_OP_LOONGSON3_STARTING = 109,
-	CPUHP_AP_ARM_SDEI_STARTING = 110,
-	CPUHP_AP_ARM_VFP_STARTING = 111,
-	CPUHP_AP_ARM64_DEBUG_MONITORS_STARTING = 112,
-	CPUHP_AP_PERF_ARM_HW_BREAKPOINT_STARTING = 113,
-	CPUHP_AP_PERF_ARM_ACPI_STARTING = 114,
-	CPUHP_AP_PERF_ARM_STARTING = 115,
-	CPUHP_AP_ARM_L2X0_STARTING = 116,
-	CPUHP_AP_EXYNOS4_MCT_TIMER_STARTING = 117,
-	CPUHP_AP_ARM_ARCH_TIMER_STARTING = 118,
-	CPUHP_AP_ARM_GLOBAL_TIMER_STARTING = 119,
-	CPUHP_AP_JCORE_TIMER_STARTING = 120,
-	CPUHP_AP_ARM_TWD_STARTING = 121,
-	CPUHP_AP_QCOM_TIMER_STARTING = 122,
-	CPUHP_AP_TEGRA_TIMER_STARTING = 123,
-	CPUHP_AP_ARMADA_TIMER_STARTING = 124,
-	CPUHP_AP_MARCO_TIMER_STARTING = 125,
-	CPUHP_AP_MIPS_GIC_TIMER_STARTING = 126,
-	CPUHP_AP_ARC_TIMER_STARTING = 127,
-	CPUHP_AP_RISCV_TIMER_STARTING = 128,
-	CPUHP_AP_CLINT_TIMER_STARTING = 129,
-	CPUHP_AP_CSKY_TIMER_STARTING = 130,
-	CPUHP_AP_TI_GP_TIMER_STARTING = 131,
-	CPUHP_AP_HYPERV_TIMER_STARTING = 132,
-	CPUHP_AP_KVM_STARTING = 133,
-	CPUHP_AP_KVM_ARM_VGIC_INIT_STARTING = 134,
-	CPUHP_AP_KVM_ARM_VGIC_STARTING = 135,
-	CPUHP_AP_KVM_ARM_TIMER_STARTING = 136,
-	CPUHP_AP_DUMMY_TIMER_STARTING = 137,
-	CPUHP_AP_ARM_XEN_STARTING = 138,
-	CPUHP_AP_ARM_CORESIGHT_STARTING = 139,
-	CPUHP_AP_ARM_CORESIGHT_CTI_STARTING = 140,
-	CPUHP_AP_ARM64_ISNDEP_STARTING = 141,
-	CPUHP_AP_SMPCFD_DYING = 142,
-	CPUHP_AP_X86_TBOOT_DYING = 143,
-	CPUHP_AP_ARM_CACHE_B15_RAC_DYING = 144,
-	CPUHP_AP_ONLINE = 145,
-	CPUHP_TEARDOWN_CPU = 146,
-	CPUHP_AP_ONLINE_IDLE = 147,
-	CPUHP_AP_SMPBOOT_THREADS = 148,
-	CPUHP_AP_X86_VDSO_VMA_ONLINE = 149,
-	CPUHP_AP_IRQ_AFFINITY_ONLINE = 150,
-	CPUHP_AP_BLK_MQ_ONLINE = 151,
-	CPUHP_AP_ARM_MVEBU_SYNC_CLOCKS = 152,
-	CPUHP_AP_X86_INTEL_EPB_ONLINE = 153,
-	CPUHP_AP_PERF_ONLINE = 154,
-	CPUHP_AP_PERF_X86_ONLINE = 155,
-	CPUHP_AP_PERF_X86_UNCORE_ONLINE = 156,
-	CPUHP_AP_PERF_X86_AMD_UNCORE_ONLINE = 157,
-	CPUHP_AP_PERF_X86_AMD_POWER_ONLINE = 158,
-	CPUHP_AP_PERF_X86_RAPL_ONLINE = 159,
-	CPUHP_AP_PERF_X86_CQM_ONLINE = 160,
-	CPUHP_AP_PERF_X86_CSTATE_ONLINE = 161,
-	CPUHP_AP_PERF_S390_CF_ONLINE = 162,
-	CPUHP_AP_PERF_S390_SF_ONLINE = 163,
-	CPUHP_AP_PERF_ARM_CCI_ONLINE = 164,
-	CPUHP_AP_PERF_ARM_CCN_ONLINE = 165,
-	CPUHP_AP_PERF_ARM_HISI_DDRC_ONLINE = 166,
-	CPUHP_AP_PERF_ARM_HISI_HHA_ONLINE = 167,
-	CPUHP_AP_PERF_ARM_HISI_L3_ONLINE = 168,
-	CPUHP_AP_PERF_ARM_L2X0_ONLINE = 169,
-	CPUHP_AP_PERF_ARM_QCOM_L2_ONLINE = 170,
-	CPUHP_AP_PERF_ARM_QCOM_L3_ONLINE = 171,
-	CPUHP_AP_PERF_ARM_APM_XGENE_ONLINE = 172,
-	CPUHP_AP_PERF_ARM_CAVIUM_TX2_UNCORE_ONLINE = 173,
-	CPUHP_AP_PERF_POWERPC_NEST_IMC_ONLINE = 174,
-	CPUHP_AP_PERF_POWERPC_CORE_IMC_ONLINE = 175,
-	CPUHP_AP_PERF_POWERPC_THREAD_IMC_ONLINE = 176,
-	CPUHP_AP_PERF_POWERPC_TRACE_IMC_ONLINE = 177,
-	CPUHP_AP_PERF_POWERPC_HV_24x7_ONLINE = 178,
-	CPUHP_AP_PERF_POWERPC_HV_GPCI_ONLINE = 179,
-	CPUHP_AP_WATCHDOG_ONLINE = 180,
-	CPUHP_AP_WORKQUEUE_ONLINE = 181,
-	CPUHP_AP_RANDOM_ONLINE = 182,
-	CPUHP_AP_RCUTREE_ONLINE = 183,
-	CPUHP_AP_BASE_CACHEINFO_ONLINE = 184,
-	CPUHP_AP_ONLINE_DYN = 185,
-	CPUHP_AP_ONLINE_DYN_END = 215,
-	CPUHP_AP_X86_HPET_ONLINE = 216,
-	CPUHP_AP_X86_KVM_CLK_ONLINE = 217,
-	CPUHP_AP_ACTIVE = 218,
-	CPUHP_ONLINE = 219,
-};
-
-struct static_call_mod {
-	struct static_call_mod *next;
-	struct module *mod;
-	struct static_call_site *sites;
+	CPUHP_MM_DEMOTION_DEAD = 14,
+	CPUHP_MM_VMSTAT_DEAD = 15,
+	CPUHP_SOFTIRQ_DEAD = 16,
+	CPUHP_NET_MVNETA_DEAD = 17,
+	CPUHP_CPUIDLE_DEAD = 18,
+	CPUHP_ARM64_FPSIMD_DEAD = 19,
+	CPUHP_ARM_OMAP_WAKE_DEAD = 20,
+	CPUHP_IRQ_POLL_DEAD = 21,
+	CPUHP_BLOCK_SOFTIRQ_DEAD = 22,
+	CPUHP_BIO_DEAD = 23,
+	CPUHP_ACPI_CPUDRV_DEAD = 24,
+	CPUHP_S390_PFAULT_DEAD = 25,
+	CPUHP_BLK_MQ_DEAD = 26,
+	CPUHP_FS_BUFF_DEAD = 27,
+	CPUHP_PRINTK_DEAD = 28,
+	CPUHP_MM_MEMCQ_DEAD = 29,
+	CPUHP_XFS_DEAD = 30,
+	CPUHP_PERCPU_CNT_DEAD = 31,
+	CPUHP_RADIX_DEAD = 32,
+	CPUHP_PAGE_ALLOC = 33,
+	CPUHP_NET_DEV_DEAD = 34,
+	CPUHP_PCI_XGENE_DEAD = 35,
+	CPUHP_IOMMU_IOVA_DEAD = 36,
+	CPUHP_LUSTRE_CFS_DEAD = 37,
+	CPUHP_AP_ARM_CACHE_B15_RAC_DEAD = 38,
+	CPUHP_PADATA_DEAD = 39,
+	CPUHP_RANDOM_PREPARE = 40,
+	CPUHP_WORKQUEUE_PREP = 41,
+	CPUHP_POWER_NUMA_PREPARE = 42,
+	CPUHP_HRTIMERS_PREPARE = 43,
+	CPUHP_PROFILE_PREPARE = 44,
+	CPUHP_X2APIC_PREPARE = 45,
+	CPUHP_SMPCFD_PREPARE = 46,
+	CPUHP_RELAY_PREPARE = 47,
+	CPUHP_SLAB_PREPARE = 48,
+	CPUHP_MD_RAID5_PREPARE = 49,
+	CPUHP_RCUTREE_PREP = 50,
+	CPUHP_CPUIDLE_COUPLED_PREPARE = 51,
+	CPUHP_POWERPC_PMAC_PREPARE = 52,
+	CPUHP_POWERPC_MMU_CTX_PREPARE = 53,
+	CPUHP_XEN_PREPARE = 54,
+	CPUHP_XEN_EVTCHN_PREPARE = 55,
+	CPUHP_ARM_SHMOBILE_SCU_PREPARE = 56,
+	CPUHP_SH_SH3X_PREPARE = 57,
+	CPUHP_NET_FLOW_PREPARE = 58,
+	CPUHP_TOPOLOGY_PREPARE = 59,
+	CPUHP_NET_IUCV_PREPARE = 60,
+	CPUHP_ARM_BL_PREPARE = 61,
+	CPUHP_TRACE_RB_PREPARE = 62,
+	CPUHP_MM_ZS_PREPARE = 63,
+	CPUHP_MM_ZSWP_MEM_PREPARE = 64,
+	CPUHP_MM_ZSWP_POOL_PREPARE = 65,
+	CPUHP_KVM_PPC_BOOK3S_PREPARE = 66,
+	CPUHP_ZCOMP_PREPARE = 67,
+	CPUHP_TIMERS_PREPARE = 68,
+	CPUHP_MIPS_SOC_PREPARE = 69,
+	CPUHP_BP_PREPARE_DYN = 70,
+	CPUHP_BP_PREPARE_DYN_END = 90,
+	CPUHP_BRINGUP_CPU = 91,
+	CPUHP_AP_IDLE_DEAD = 92,
+	CPUHP_AP_OFFLINE = 93,
+	CPUHP_AP_SCHED_STARTING = 94,
+	CPUHP_AP_RCUTREE_DYING = 95,
+	CPUHP_AP_CPU_PM_STARTING = 96,
+	CPUHP_AP_IRQ_GIC_STARTING = 97,
+	CPUHP_AP_IRQ_HIP04_STARTING = 98,
+	CPUHP_AP_IRQ_APPLE_AIC_STARTING = 99,
+	CPUHP_AP_IRQ_ARMADA_XP_STARTING = 100,
+	CPUHP_AP_IRQ_BCM2836_STARTING = 101,
+	CPUHP_AP_IRQ_MIPS_GIC_STARTING = 102,
+	CPUHP_AP_IRQ_RISCV_STARTING = 103,
+	CPUHP_AP_IRQ_SIFIVE_PLIC_STARTING = 104,
+	CPUHP_AP_ARM_MVEBU_COHERENCY = 105,
+	CPUHP_AP_MICROCODE_LOADER = 106,
+	CPUHP_AP_PERF_X86_AMD_UNCORE_STARTING = 107,
+	CPUHP_AP_PERF_X86_STARTING = 108,
+	CPUHP_AP_PERF_X86_AMD_IBS_STARTING = 109,
+	CPUHP_AP_PERF_X86_CQM_STARTING = 110,
+	CPUHP_AP_PERF_X86_CSTATE_STARTING = 111,
+	CPUHP_AP_PERF_XTENSA_STARTING = 112,
+	CPUHP_AP_MIPS_OP_LOONGSON3_STARTING = 113,
+	CPUHP_AP_ARM_VFP_STARTING = 114,
+	CPUHP_AP_ARM64_DEBUG_MONITORS_STARTING = 115,
+	CPUHP_AP_PERF_ARM_HW_BREAKPOINT_STARTING = 116,
+	CPUHP_AP_PERF_ARM_ACPI_STARTING = 117,
+	CPUHP_AP_PERF_ARM_STARTING = 118,
+	CPUHP_AP_ARM_L2X0_STARTING = 119,
+	CPUHP_AP_EXYNOS4_MCT_TIMER_STARTING = 120,
+	CPUHP_AP_ARM_ARCH_TIMER_STARTING = 121,
+	CPUHP_AP_ARM_GLOBAL_TIMER_STARTING = 122,
+	CPUHP_AP_JCORE_TIMER_STARTING = 123,
+	CPUHP_AP_ARM_TWD_STARTING = 124,
+	CPUHP_AP_QCOM_TIMER_STARTING = 125,
+	CPUHP_AP_TEGRA_TIMER_STARTING = 126,
+	CPUHP_AP_ARMADA_TIMER_STARTING = 127,
+	CPUHP_AP_MARCO_TIMER_STARTING = 128,
+	CPUHP_AP_MIPS_GIC_TIMER_STARTING = 129,
+	CPUHP_AP_ARC_TIMER_STARTING = 130,
+	CPUHP_AP_RISCV_TIMER_STARTING = 131,
+	CPUHP_AP_CLINT_TIMER_STARTING = 132,
+	CPUHP_AP_CSKY_TIMER_STARTING = 133,
+	CPUHP_AP_TI_GP_TIMER_STARTING = 134,
+	CPUHP_AP_HYPERV_TIMER_STARTING = 135,
+	CPUHP_AP_KVM_STARTING = 136,
+	CPUHP_AP_KVM_ARM_VGIC_INIT_STARTING = 137,
+	CPUHP_AP_KVM_ARM_VGIC_STARTING = 138,
+	CPUHP_AP_KVM_ARM_TIMER_STARTING = 139,
+	CPUHP_AP_DUMMY_TIMER_STARTING = 140,
+	CPUHP_AP_ARM_XEN_STARTING = 141,
+	CPUHP_AP_ARM_XEN_RUNSTATE_STARTING = 142,
+	CPUHP_AP_ARM_CORESIGHT_STARTING = 143,
+	CPUHP_AP_ARM_CORESIGHT_CTI_STARTING = 144,
+	CPUHP_AP_ARM64_ISNDEP_STARTING = 145,
+	CPUHP_AP_SMPCFD_DYING = 146,
+	CPUHP_AP_HRTIMERS_DYING = 147,
+	CPUHP_AP_X86_TBOOT_DYING = 148,
+	CPUHP_AP_ARM_CACHE_B15_RAC_DYING = 149,
+	CPUHP_AP_ONLINE = 150,
+	CPUHP_TEARDOWN_CPU = 151,
+	CPUHP_AP_ONLINE_IDLE = 152,
+	CPUHP_AP_SCHED_WAIT_EMPTY = 153,
+	CPUHP_AP_SMPBOOT_THREADS = 154,
+	CPUHP_AP_X86_VDSO_VMA_ONLINE = 155,
+	CPUHP_AP_IRQ_AFFINITY_ONLINE = 156,
+	CPUHP_AP_BLK_MQ_ONLINE = 157,
+	CPUHP_AP_ARM_MVEBU_SYNC_CLOCKS = 158,
+	CPUHP_AP_X86_INTEL_EPB_ONLINE = 159,
+	CPUHP_AP_PERF_ONLINE = 160,
+	CPUHP_AP_PERF_X86_ONLINE = 161,
+	CPUHP_AP_PERF_X86_UNCORE_ONLINE = 162,
+	CPUHP_AP_PERF_X86_AMD_UNCORE_ONLINE = 163,
+	CPUHP_AP_PERF_X86_AMD_POWER_ONLINE = 164,
+	CPUHP_AP_PERF_X86_RAPL_ONLINE = 165,
+	CPUHP_AP_PERF_X86_CQM_ONLINE = 166,
+	CPUHP_AP_PERF_X86_CSTATE_ONLINE = 167,
+	CPUHP_AP_PERF_X86_IDXD_ONLINE = 168,
+	CPUHP_AP_PERF_S390_CF_ONLINE = 169,
+	CPUHP_AP_PERF_S390_SF_ONLINE = 170,
+	CPUHP_AP_PERF_ARM_CCI_ONLINE = 171,
+	CPUHP_AP_PERF_ARM_CCN_ONLINE = 172,
+	CPUHP_AP_PERF_ARM_HISI_DDRC_ONLINE = 173,
+	CPUHP_AP_PERF_ARM_HISI_HHA_ONLINE = 174,
+	CPUHP_AP_PERF_ARM_HISI_L3_ONLINE = 175,
+	CPUHP_AP_PERF_ARM_HISI_PA_ONLINE = 176,
+	CPUHP_AP_PERF_ARM_HISI_SLLC_ONLINE = 177,
+	CPUHP_AP_PERF_ARM_L2X0_ONLINE = 178,
+	CPUHP_AP_PERF_ARM_QCOM_L2_ONLINE = 179,
+	CPUHP_AP_PERF_ARM_QCOM_L3_ONLINE = 180,
+	CPUHP_AP_PERF_ARM_APM_XGENE_ONLINE = 181,
+	CPUHP_AP_PERF_ARM_CAVIUM_TX2_UNCORE_ONLINE = 182,
+	CPUHP_AP_PERF_POWERPC_NEST_IMC_ONLINE = 183,
+	CPUHP_AP_PERF_POWERPC_CORE_IMC_ONLINE = 184,
+	CPUHP_AP_PERF_POWERPC_THREAD_IMC_ONLINE = 185,
+	CPUHP_AP_PERF_POWERPC_TRACE_IMC_ONLINE = 186,
+	CPUHP_AP_PERF_POWERPC_HV_24x7_ONLINE = 187,
+	CPUHP_AP_PERF_POWERPC_HV_GPCI_ONLINE = 188,
+	CPUHP_AP_PERF_CSKY_ONLINE = 189,
+	CPUHP_AP_WATCHDOG_ONLINE = 190,
+	CPUHP_AP_WORKQUEUE_ONLINE = 191,
+	CPUHP_AP_RANDOM_ONLINE = 192,
+	CPUHP_AP_RCUTREE_ONLINE = 193,
+	CPUHP_AP_BASE_CACHEINFO_ONLINE = 194,
+	CPUHP_AP_ONLINE_DYN = 195,
+	CPUHP_AP_ONLINE_DYN_END = 225,
+	CPUHP_AP_MM_DEMOTION_ONLINE = 226,
+	CPUHP_AP_X86_HPET_ONLINE = 227,
+	CPUHP_AP_X86_KVM_CLK_ONLINE = 228,
+	CPUHP_AP_DTPM_CPU_ONLINE = 229,
+	CPUHP_AP_ACTIVE = 230,
+	CPUHP_ONLINE = 231,
 };
 
 struct ring_buffer_event {
@@ -7223,7 +7622,8 @@ enum perf_sw_ids {
 	PERF_COUNT_SW_EMULATION_FAULTS = 8,
 	PERF_COUNT_SW_DUMMY = 9,
 	PERF_COUNT_SW_BPF_OUTPUT = 10,
-	PERF_COUNT_SW_MAX = 11,
+	PERF_COUNT_SW_CGROUP_SWITCHES = 11,
+	PERF_COUNT_SW_MAX = 12,
 };
 
 union perf_mem_data_src {
@@ -7237,7 +7637,8 @@ union perf_mem_data_src {
 		__u64 mem_lvl_num: 4;
 		__u64 mem_remote: 1;
 		__u64 mem_snoopx: 2;
-		__u64 mem_rsvd: 24;
+		__u64 mem_blk: 3;
+		__u64 mem_rsvd: 21;
 	};
 };
 
@@ -7253,6 +7654,15 @@ struct perf_branch_entry {
 	__u64 reserved: 40;
 };
 
+union perf_sample_weight {
+	__u64 full;
+	struct {
+		__u32 var1_dw;
+		__u16 var2_w;
+		__u16 var3_w;
+	};
+};
+
 struct new_utsname {
 	char sysname[65];
 	char nodename[65];
@@ -7263,15 +7673,759 @@ struct new_utsname {
 };
 
 struct uts_namespace {
-	struct kref kref;
 	struct new_utsname name;
 	struct user_namespace *user_ns;
 	struct ucounts *ucounts;
 	struct ns_common ns;
 };
 
+struct prot_inuse;
+
+struct netns_core {
+	struct ctl_table_header *sysctl_hdr;
+	int sysctl_somaxconn;
+	int *sock_inuse;
+	struct prot_inuse *prot_inuse;
+};
+
+struct ipstats_mib;
+
+struct tcp_mib;
+
+struct linux_mib;
+
+struct udp_mib;
+
+struct linux_xfrm_mib;
+
+struct linux_tls_mib;
+
+struct mptcp_mib;
+
+struct icmp_mib;
+
+struct icmpmsg_mib;
+
+struct icmpv6_mib;
+
+struct icmpv6msg_mib;
+
+struct proc_dir_entry;
+
+struct netns_mib {
+	struct ipstats_mib *ip_statistics;
+	struct ipstats_mib *ipv6_statistics;
+	struct tcp_mib *tcp_statistics;
+	struct linux_mib *net_statistics;
+	struct udp_mib *udp_statistics;
+	struct udp_mib *udp_stats_in6;
+	struct linux_xfrm_mib *xfrm_statistics;
+	struct linux_tls_mib *tls_statistics;
+	struct mptcp_mib *mptcp_statistics;
+	struct udp_mib *udplite_statistics;
+	struct udp_mib *udplite_stats_in6;
+	struct icmp_mib *icmp_statistics;
+	struct icmpmsg_mib *icmpmsg_statistics;
+	struct icmpv6_mib *icmpv6_statistics;
+	struct icmpv6msg_mib *icmpv6msg_statistics;
+	struct proc_dir_entry *proc_net_devsnmp6;
+};
+
+struct netns_packet {
+	struct mutex sklist_lock;
+	struct hlist_head sklist;
+};
+
+struct netns_unix {
+	int sysctl_max_dgram_qlen;
+	struct ctl_table_header *ctl;
+};
+
+struct netns_nexthop {
+	struct rb_root rb_root;
+	struct hlist_head *devhash;
+	unsigned int seq;
+	u32 last_id_allocated;
+	struct blocking_notifier_head notifier_chain;
+};
+
+struct inet_hashinfo;
+
+struct inet_timewait_death_row {
+	atomic_t tw_count;
+	char tw_pad[60];
+	struct inet_hashinfo *hashinfo;
+	int sysctl_max_tw_buckets;
+};
+
+struct local_ports {
+	seqlock_t lock;
+	int range[2];
+	bool warned;
+};
+
+struct ping_group_range {
+	seqlock_t lock;
+	kgid_t range[2];
+};
+
+typedef struct {
+	u64 key[2];
+} siphash_key_t;
+
+struct ipv4_devconf;
+
+struct ip_ra_chain;
+
+struct fib_rules_ops;
+
+struct fib_table;
+
+struct inet_peer_base;
+
+struct fqdir;
+
+struct tcp_congestion_ops;
+
+struct tcp_fastopen_context;
+
+struct fib_notifier_ops;
+
+struct netns_ipv4 {
+	struct inet_timewait_death_row tcp_death_row;
+	struct ctl_table_header *forw_hdr;
+	struct ctl_table_header *frags_hdr;
+	struct ctl_table_header *ipv4_hdr;
+	struct ctl_table_header *route_hdr;
+	struct ctl_table_header *xfrm4_hdr;
+	struct ipv4_devconf *devconf_all;
+	struct ipv4_devconf *devconf_dflt;
+	struct ip_ra_chain *ra_chain;
+	struct mutex ra_mutex;
+	struct fib_rules_ops *rules_ops;
+	struct fib_table *fib_main;
+	struct fib_table *fib_default;
+	unsigned int fib_rules_require_fldissect;
+	bool fib_has_custom_rules;
+	bool fib_has_custom_local_routes;
+	bool fib_offload_disabled;
+	atomic_t fib_num_tclassid_users;
+	struct hlist_head *fib_table_hash;
+	struct sock *fibnl;
+	struct sock **icmp_sk;
+	struct sock *mc_autojoin_sk;
+	struct inet_peer_base *peers;
+	struct fqdir *fqdir;
+	u8 sysctl_icmp_echo_ignore_all;
+	u8 sysctl_icmp_echo_enable_probe;
+	u8 sysctl_icmp_echo_ignore_broadcasts;
+	u8 sysctl_icmp_ignore_bogus_error_responses;
+	u8 sysctl_icmp_errors_use_inbound_ifaddr;
+	int sysctl_icmp_ratelimit;
+	int sysctl_icmp_ratemask;
+	struct local_ports ip_local_ports;
+	u8 sysctl_tcp_ecn;
+	u8 sysctl_tcp_ecn_fallback;
+	u8 sysctl_ip_default_ttl;
+	u8 sysctl_ip_no_pmtu_disc;
+	u8 sysctl_ip_fwd_use_pmtu;
+	u8 sysctl_ip_fwd_update_priority;
+	u8 sysctl_ip_nonlocal_bind;
+	u8 sysctl_ip_autobind_reuse;
+	u8 sysctl_ip_dynaddr;
+	u8 sysctl_ip_early_demux;
+	u8 sysctl_raw_l3mdev_accept;
+	u8 sysctl_tcp_early_demux;
+	u8 sysctl_udp_early_demux;
+	u8 sysctl_nexthop_compat_mode;
+	u8 sysctl_fwmark_reflect;
+	u8 sysctl_tcp_fwmark_accept;
+	u8 sysctl_tcp_l3mdev_accept;
+	u8 sysctl_tcp_mtu_probing;
+	int sysctl_tcp_mtu_probe_floor;
+	int sysctl_tcp_base_mss;
+	int sysctl_tcp_min_snd_mss;
+	int sysctl_tcp_probe_threshold;
+	u32 sysctl_tcp_probe_interval;
+	int sysctl_tcp_keepalive_time;
+	int sysctl_tcp_keepalive_intvl;
+	u8 sysctl_tcp_keepalive_probes;
+	u8 sysctl_tcp_syn_retries;
+	u8 sysctl_tcp_synack_retries;
+	u8 sysctl_tcp_syncookies;
+	u8 sysctl_tcp_migrate_req;
+	int sysctl_tcp_reordering;
+	u8 sysctl_tcp_retries1;
+	u8 sysctl_tcp_retries2;
+	u8 sysctl_tcp_orphan_retries;
+	u8 sysctl_tcp_tw_reuse;
+	int sysctl_tcp_fin_timeout;
+	unsigned int sysctl_tcp_notsent_lowat;
+	u8 sysctl_tcp_sack;
+	u8 sysctl_tcp_window_scaling;
+	u8 sysctl_tcp_timestamps;
+	u8 sysctl_tcp_early_retrans;
+	u8 sysctl_tcp_recovery;
+	u8 sysctl_tcp_thin_linear_timeouts;
+	u8 sysctl_tcp_slow_start_after_idle;
+	u8 sysctl_tcp_retrans_collapse;
+	u8 sysctl_tcp_stdurg;
+	u8 sysctl_tcp_rfc1337;
+	u8 sysctl_tcp_abort_on_overflow;
+	u8 sysctl_tcp_fack;
+	int sysctl_tcp_max_reordering;
+	int sysctl_tcp_adv_win_scale;
+	u8 sysctl_tcp_dsack;
+	u8 sysctl_tcp_app_win;
+	u8 sysctl_tcp_frto;
+	u8 sysctl_tcp_nometrics_save;
+	u8 sysctl_tcp_no_ssthresh_metrics_save;
+	u8 sysctl_tcp_moderate_rcvbuf;
+	u8 sysctl_tcp_tso_win_divisor;
+	u8 sysctl_tcp_workaround_signed_windows;
+	int sysctl_tcp_limit_output_bytes;
+	int sysctl_tcp_challenge_ack_limit;
+	int sysctl_tcp_min_rtt_wlen;
+	u8 sysctl_tcp_min_tso_segs;
+	u8 sysctl_tcp_autocorking;
+	u8 sysctl_tcp_reflect_tos;
+	u8 sysctl_tcp_comp_sack_nr;
+	int sysctl_tcp_invalid_ratelimit;
+	int sysctl_tcp_pacing_ss_ratio;
+	int sysctl_tcp_pacing_ca_ratio;
+	int sysctl_tcp_wmem[3];
+	int sysctl_tcp_rmem[3];
+	long unsigned int sysctl_tcp_comp_sack_delay_ns;
+	long unsigned int sysctl_tcp_comp_sack_slack_ns;
+	int sysctl_max_syn_backlog;
+	int sysctl_tcp_fastopen;
+	const struct tcp_congestion_ops *tcp_congestion_control;
+	struct tcp_fastopen_context *tcp_fastopen_ctx;
+	unsigned int sysctl_tcp_fastopen_blackhole_timeout;
+	atomic_t tfo_active_disable_times;
+	long unsigned int tfo_active_disable_stamp;
+	int sysctl_udp_wmem_min;
+	int sysctl_udp_rmem_min;
+	u8 sysctl_fib_notify_on_flag_change;
+	u8 sysctl_udp_l3mdev_accept;
+	u8 sysctl_igmp_llm_reports;
+	int sysctl_igmp_max_memberships;
+	int sysctl_igmp_max_msf;
+	int sysctl_igmp_qrv;
+	struct ping_group_range ping_group_range;
+	atomic_t dev_addr_genid;
+	long unsigned int *sysctl_local_reserved_ports;
+	int sysctl_ip_prot_sock;
+	struct list_head mr_tables;
+	struct fib_rules_ops *mr_rules_ops;
+	u32 sysctl_fib_multipath_hash_fields;
+	u8 sysctl_fib_multipath_use_neigh;
+	u8 sysctl_fib_multipath_hash_policy;
+	struct fib_notifier_ops *notifier_ops;
+	unsigned int fib_seq;
+	struct fib_notifier_ops *ipmr_notifier_ops;
+	unsigned int ipmr_seq;
+	atomic_t rt_genid;
+	siphash_key_t ip_id_key;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct dst_entry;
+
+struct net_device;
+
+struct sk_buff;
+
+struct neighbour;
+
+struct dst_ops {
+	short unsigned int family;
+	unsigned int gc_thresh;
+	void (*gc)(struct dst_ops *);
+	struct dst_entry * (*check)(struct dst_entry *, __u32);
+	unsigned int (*default_advmss)(const struct dst_entry *);
+	unsigned int (*mtu)(const struct dst_entry *);
+	u32 * (*cow_metrics)(struct dst_entry *, long unsigned int);
+	void (*destroy)(struct dst_entry *);
+	void (*ifdown)(struct dst_entry *, struct net_device *, int);
+	void (*negative_advice)(struct sock *, struct dst_entry *);
+	void (*link_failure)(struct sk_buff *);
+	void (*update_pmtu)(struct dst_entry *, struct sock *, struct sk_buff *, u32, bool);
+	void (*redirect)(struct dst_entry *, struct sock *, struct sk_buff *);
+	int (*local_out)(struct net *, struct sock *, struct sk_buff *);
+	struct neighbour * (*neigh_lookup)(const struct dst_entry *, struct sk_buff *, const void *);
+	void (*confirm_neigh)(const struct dst_entry *, const void *);
+	struct kmem_cache *kmem_cachep;
+	struct percpu_counter pcpuc_entries;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct netns_sysctl_ipv6 {
+	struct ctl_table_header *hdr;
+	struct ctl_table_header *route_hdr;
+	struct ctl_table_header *icmp_hdr;
+	struct ctl_table_header *frags_hdr;
+	struct ctl_table_header *xfrm6_hdr;
+	int flush_delay;
+	int ip6_rt_max_size;
+	int ip6_rt_gc_min_interval;
+	int ip6_rt_gc_timeout;
+	int ip6_rt_gc_interval;
+	int ip6_rt_gc_elasticity;
+	int ip6_rt_mtu_expires;
+	int ip6_rt_min_advmss;
+	u32 multipath_hash_fields;
+	u8 multipath_hash_policy;
+	u8 bindv6only;
+	u8 flowlabel_consistency;
+	u8 auto_flowlabels;
+	int icmpv6_time;
+	u8 icmpv6_echo_ignore_all;
+	u8 icmpv6_echo_ignore_multicast;
+	u8 icmpv6_echo_ignore_anycast;
+	long unsigned int icmpv6_ratemask[4];
+	long unsigned int *icmpv6_ratemask_ptr;
+	u8 anycast_src_echo_reply;
+	u8 ip_nonlocal_bind;
+	u8 fwmark_reflect;
+	u8 flowlabel_state_ranges;
+	int idgen_retries;
+	int idgen_delay;
+	int flowlabel_reflect;
+	int max_dst_opts_cnt;
+	int max_hbh_opts_cnt;
+	int max_dst_opts_len;
+	int max_hbh_opts_len;
+	int seg6_flowlabel;
+	u32 ioam6_id;
+	u64 ioam6_id_wide;
+	int skip_notify_on_dev_down;
+	u8 fib_notify_on_flag_change;
+};
+
+struct ipv6_devconf;
+
+struct fib6_info;
+
+struct rt6_info;
+
+struct rt6_statistics;
+
+struct fib6_table;
+
+struct seg6_pernet_data;
+
+struct ioam6_pernet_data;
+
+struct netns_ipv6 {
+	struct dst_ops ip6_dst_ops;
+	struct netns_sysctl_ipv6 sysctl;
+	struct ipv6_devconf *devconf_all;
+	struct ipv6_devconf *devconf_dflt;
+	struct inet_peer_base *peers;
+	struct fqdir *fqdir;
+	struct fib6_info *fib6_null_entry;
+	struct rt6_info *ip6_null_entry;
+	struct rt6_statistics *rt6_stats;
+	struct timer_list ip6_fib_timer;
+	struct hlist_head *fib_table_hash;
+	struct fib6_table *fib6_main_tbl;
+	struct list_head fib6_walkers;
+	rwlock_t fib6_walker_lock;
+	spinlock_t fib6_gc_lock;
+	atomic_t ip6_rt_gc_expire;
+	long unsigned int ip6_rt_last_gc;
+	unsigned char flowlabel_has_excl;
+	bool fib6_has_custom_rules;
+	unsigned int fib6_rules_require_fldissect;
+	unsigned int fib6_routes_require_src;
+	struct rt6_info *ip6_prohibit_entry;
+	struct rt6_info *ip6_blk_hole_entry;
+	struct fib6_table *fib6_local_tbl;
+	struct fib_rules_ops *fib6_rules_ops;
+	struct sock **icmp_sk;
+	struct sock *ndisc_sk;
+	struct sock *tcp_sk;
+	struct sock *igmp_sk;
+	struct sock *mc_autojoin_sk;
+	struct list_head mr6_tables;
+	struct fib_rules_ops *mr6_rules_ops;
+	atomic_t dev_addr_genid;
+	atomic_t fib6_sernum;
+	struct seg6_pernet_data *seg6_data;
+	struct fib_notifier_ops *notifier_ops;
+	struct fib_notifier_ops *ip6mr_notifier_ops;
+	unsigned int ipmr_seq;
+	struct {
+		struct hlist_head head;
+		spinlock_t lock;
+		u32 seq;
+	} ip6addrlbl_table;
+	struct ioam6_pernet_data *ioam6_data;
+};
+
+struct netns_sysctl_lowpan {
+	struct ctl_table_header *frags_hdr;
+};
+
+struct netns_ieee802154_lowpan {
+	struct netns_sysctl_lowpan sysctl;
+	struct fqdir *fqdir;
+};
+
+struct sctp_mib;
+
+struct netns_sctp {
+	struct sctp_mib *sctp_statistics;
+	struct proc_dir_entry *proc_net_sctp;
+	struct ctl_table_header *sysctl_header;
+	struct sock *ctl_sock;
+	struct sock *udp4_sock;
+	struct sock *udp6_sock;
+	int udp_port;
+	int encap_port;
+	struct list_head local_addr_list;
+	struct list_head addr_waitq;
+	struct timer_list addr_wq_timer;
+	struct list_head auto_asconf_splist;
+	spinlock_t addr_wq_lock;
+	spinlock_t local_addr_lock;
+	unsigned int rto_initial;
+	unsigned int rto_min;
+	unsigned int rto_max;
+	int rto_alpha;
+	int rto_beta;
+	int max_burst;
+	int cookie_preserve_enable;
+	char *sctp_hmac_alg;
+	unsigned int valid_cookie_life;
+	unsigned int sack_timeout;
+	unsigned int hb_interval;
+	unsigned int probe_interval;
+	int max_retrans_association;
+	int max_retrans_path;
+	int max_retrans_init;
+	int pf_retrans;
+	int ps_retrans;
+	int pf_enable;
+	int pf_expose;
+	int sndbuf_policy;
+	int rcvbuf_policy;
+	int default_auto_asconf;
+	int addip_enable;
+	int addip_noauth;
+	int prsctp_enable;
+	int reconf_enable;
+	int auth_enable;
+	int intl_enable;
+	int ecn_enable;
+	int scope_policy;
+	int rwnd_upd_shift;
+	long unsigned int max_autoclose;
+};
+
+struct nf_logger;
+
+struct nf_hook_entries;
+
+struct netns_nf {
+	struct proc_dir_entry *proc_netfilter;
+	const struct nf_logger *nf_loggers[13];
+	struct ctl_table_header *nf_log_dir_header;
+	struct nf_hook_entries *hooks_ipv4[5];
+	struct nf_hook_entries *hooks_ipv6[5];
+	struct nf_hook_entries *hooks_arp[3];
+	struct nf_hook_entries *hooks_bridge[5];
+	unsigned int defrag_ipv4_users;
+	unsigned int defrag_ipv6_users;
+};
+
+struct nf_generic_net {
+	unsigned int timeout;
+};
+
+struct nf_tcp_net {
+	unsigned int timeouts[14];
+	u8 tcp_loose;
+	u8 tcp_be_liberal;
+	u8 tcp_max_retrans;
+	u8 tcp_ignore_invalid_rst;
+	unsigned int offload_timeout;
+};
+
+struct nf_udp_net {
+	unsigned int timeouts[2];
+	unsigned int offload_timeout;
+};
+
+struct nf_icmp_net {
+	unsigned int timeout;
+};
+
+struct nf_dccp_net {
+	u8 dccp_loose;
+	unsigned int dccp_timeout[10];
+};
+
+struct nf_sctp_net {
+	unsigned int timeouts[10];
+};
+
+struct nf_gre_net {
+	struct list_head keymap_list;
+	unsigned int timeouts[2];
+};
+
+struct nf_ip_net {
+	struct nf_generic_net generic;
+	struct nf_tcp_net tcp;
+	struct nf_udp_net udp;
+	struct nf_icmp_net icmp;
+	struct nf_icmp_net icmpv6;
+	struct nf_dccp_net dccp;
+	struct nf_sctp_net sctp;
+	struct nf_gre_net gre;
+};
+
+struct ct_pcpu;
+
+struct ip_conntrack_stat;
+
+struct nf_ct_event_notifier;
+
+struct netns_ct {
+	bool ecache_dwork_pending;
+	u8 sysctl_log_invalid;
+	u8 sysctl_events;
+	u8 sysctl_acct;
+	u8 sysctl_auto_assign_helper;
+	u8 sysctl_tstamp;
+	u8 sysctl_checksum;
+	struct ct_pcpu *pcpu_lists;
+	struct ip_conntrack_stat *stat;
+	struct nf_ct_event_notifier *nf_conntrack_event_cb;
+	struct nf_ip_net nf_ct_proto;
+	unsigned int labels_used;
+};
+
+struct netns_nftables {
+	u8 gencursor;
+};
+
+struct nf_flow_table_stat;
+
+struct netns_ft {
+	struct nf_flow_table_stat *stat;
+};
+
+struct sk_buff_head {
+	struct sk_buff *next;
+	struct sk_buff *prev;
+	__u32 qlen;
+	spinlock_t lock;
+};
+
+struct netns_bpf {
+	struct bpf_prog_array *run_array[2];
+	struct bpf_prog *progs[2];
+	struct list_head links[2];
+};
+
+struct xfrm_policy_hash {
+	struct hlist_head *table;
+	unsigned int hmask;
+	u8 dbits4;
+	u8 sbits4;
+	u8 dbits6;
+	u8 sbits6;
+};
+
+struct xfrm_policy_hthresh {
+	struct work_struct work;
+	seqlock_t lock;
+	u8 lbits4;
+	u8 rbits4;
+	u8 lbits6;
+	u8 rbits6;
+};
+
+struct netns_xfrm {
+	struct list_head state_all;
+	struct hlist_head *state_bydst;
+	struct hlist_head *state_bysrc;
+	struct hlist_head *state_byspi;
+	struct hlist_head *state_byseq;
+	unsigned int state_hmask;
+	unsigned int state_num;
+	struct work_struct state_hash_work;
+	struct list_head policy_all;
+	struct hlist_head *policy_byidx;
+	unsigned int policy_idx_hmask;
+	unsigned int idx_generator;
+	struct hlist_head policy_inexact[3];
+	struct xfrm_policy_hash policy_bydst[3];
+	unsigned int policy_count[6];
+	struct work_struct policy_hash_work;
+	struct xfrm_policy_hthresh policy_hthresh;
+	struct list_head inexact_bins;
+	struct sock *nlsk;
+	struct sock *nlsk_stash;
+	u32 sysctl_aevent_etime;
+	u32 sysctl_aevent_rseqth;
+	int sysctl_larval_drop;
+	u32 sysctl_acq_expires;
+	u8 policy_default[3];
+	struct ctl_table_header *sysctl_hdr;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct dst_ops xfrm4_dst_ops;
+	struct dst_ops xfrm6_dst_ops;
+	spinlock_t xfrm_state_lock;
+	seqcount_spinlock_t xfrm_state_hash_generation;
+	seqcount_spinlock_t xfrm_policy_hash_generation;
+	spinlock_t xfrm_policy_lock;
+	struct mutex xfrm_cfg_mutex;
+	long: 64;
+	long: 64;
+};
+
+struct netns_ipvs;
+
+struct mpls_route;
+
+struct netns_mpls {
+	int ip_ttl_propagate;
+	int default_ttl;
+	size_t platform_labels;
+	struct mpls_route **platform_label;
+	struct ctl_table_header *ctl;
+};
+
+struct can_dev_rcv_lists;
+
+struct can_pkg_stats;
+
+struct can_rcv_lists_stats;
+
+struct netns_can {
+	struct proc_dir_entry *proc_dir;
+	struct proc_dir_entry *pde_stats;
+	struct proc_dir_entry *pde_reset_stats;
+	struct proc_dir_entry *pde_rcvlist_all;
+	struct proc_dir_entry *pde_rcvlist_fil;
+	struct proc_dir_entry *pde_rcvlist_inv;
+	struct proc_dir_entry *pde_rcvlist_sff;
+	struct proc_dir_entry *pde_rcvlist_eff;
+	struct proc_dir_entry *pde_rcvlist_err;
+	struct proc_dir_entry *bcmproc_dir;
+	struct can_dev_rcv_lists *rx_alldev_list;
+	spinlock_t rcvlists_lock;
+	struct timer_list stattimer;
+	struct can_pkg_stats *pkg_stats;
+	struct can_rcv_lists_stats *rcv_lists_stats;
+	struct hlist_head cgw_list;
+};
+
+struct netns_xdp {
+	struct mutex lock;
+	struct hlist_head list;
+};
+
+struct netns_mctp {
+	struct list_head routes;
+	struct mutex bind_lock;
+	struct hlist_head binds;
+	spinlock_t keys_lock;
+	struct hlist_head keys;
+	unsigned int default_net;
+	struct mutex neigh_lock;
+	struct list_head neighbours;
+};
+
+struct smc_stats;
+
+struct smc_stats_rsn;
+
+struct netns_smc {
+	struct smc_stats *smc_stats;
+	struct mutex mutex_fback_rsn;
+	struct smc_stats_rsn *fback_rsn;
+};
+
+struct uevent_sock;
+
+struct net_generic;
+
+struct net {
+	refcount_t passive;
+	spinlock_t rules_mod_lock;
+	unsigned int dev_unreg_count;
+	unsigned int dev_base_seq;
+	int ifindex;
+	spinlock_t nsid_lock;
+	atomic_t fnhe_genid;
+	struct list_head list;
+	struct list_head exit_list;
+	struct llist_node cleanup_list;
+	struct key_tag *key_domain;
+	struct user_namespace *user_ns;
+	struct ucounts *ucounts;
+	struct idr netns_ids;
+	struct ns_common ns;
+	struct list_head dev_base_head;
+	struct proc_dir_entry *proc_net;
+	struct proc_dir_entry *proc_net_stat;
+	struct ctl_table_set sysctls;
+	struct sock *rtnl;
+	struct sock *genl_sock;
+	struct uevent_sock *uevent_sock;
+	struct hlist_head *dev_name_head;
+	struct hlist_head *dev_index_head;
+	struct raw_notifier_head netdev_chain;
+	u32 hash_mix;
+	struct net_device *loopback_dev;
+	struct list_head rules_ops;
+	struct netns_core core;
+	struct netns_mib mib;
+	struct netns_packet packet;
+	struct netns_unix unx;
+	struct netns_nexthop nexthop;
+	struct netns_ipv4 ipv4;
+	struct netns_ipv6 ipv6;
+	struct netns_ieee802154_lowpan ieee802154_lowpan;
+	struct netns_sctp sctp;
+	struct netns_nf nf;
+	struct netns_ct ct;
+	struct netns_nftables nft;
+	struct netns_ft ft;
+	struct sk_buff_head wext_nlevents;
+	struct net_generic *gen;
+	struct netns_bpf bpf;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct netns_xfrm xfrm;
+	u64 net_cookie;
+	struct netns_ipvs *ipvs;
+	struct netns_mpls mpls;
+	struct netns_can can;
+	struct netns_xdp xdp;
+	struct netns_mctp mctp;
+	struct sock *crypto_nlsk;
+	struct sock *diag_nlsk;
+	struct netns_smc smc;
+	long: 64;
+};
+
 struct cgroup_namespace {
-	refcount_t count;
 	struct ns_common ns;
 	struct user_namespace *user_ns;
 	struct ucounts *ucounts;
@@ -7296,14 +8450,6 @@ struct proc_ns_operations {
 	struct ns_common * (*get_parent)(struct ns_common *);
 };
 
-struct ucounts {
-	struct hlist_node node;
-	struct user_namespace *ns;
-	kuid_t uid;
-	int count;
-	atomic_t ucount[10];
-};
-
 struct perf_cpu_context;
 
 struct perf_output_handle;
@@ -7350,6 +8496,10 @@ struct pmu {
 	int (*check_period)(struct perf_event *, u64);
 };
 
+struct ftrace_regs {
+	struct pt_regs regs;
+};
+
 struct iovec {
 	void *iov_base;
 	__kernel_size_t iov_len;
@@ -7372,11 +8522,12 @@ struct bpf_cgroup_storage_key {
 	__u32 attach_type;
 };
 
-struct bpf_cgroup_storage;
-
-struct bpf_prog_array_item {
-	struct bpf_prog *prog;
-	struct bpf_cgroup_storage *cgroup_storage[2];
+enum kmalloc_cache_type {
+	KMALLOC_NORMAL = 0,
+	KMALLOC_CGROUP = 1,
+	KMALLOC_RECLAIM = 2,
+	KMALLOC_DMA = 3,
+	NR_KMALLOC_TYPES = 4,
 };
 
 struct bpf_storage_buffer;
@@ -7396,11 +8547,142 @@ struct bpf_cgroup_storage {
 	struct callback_head rcu;
 };
 
+struct bpf_prog_array_item {
+	struct bpf_prog *prog;
+	union {
+		struct bpf_cgroup_storage *cgroup_storage[2];
+		u64 bpf_cookie;
+	};
+};
+
 struct bpf_prog_array {
 	struct callback_head rcu;
 	struct bpf_prog_array_item items[0];
 };
 
+typedef unsigned int sk_buff_data_t;
+
+struct skb_ext;
+
+struct sk_buff {
+	union {
+		struct {
+			struct sk_buff *next;
+			struct sk_buff *prev;
+			union {
+				struct net_device *dev;
+				long unsigned int dev_scratch;
+			};
+		};
+		struct rb_node rbnode;
+		struct list_head list;
+	};
+	struct sock *sk;
+	union {
+		ktime_t tstamp;
+		u64 skb_mstamp_ns;
+	};
+	char cb[48];
+	union {
+		struct {
+			long unsigned int _skb_refdst;
+			void (*destructor)(struct sk_buff *);
+		};
+		struct list_head tcp_tsorted_anchor;
+		long unsigned int _sk_redir;
+	};
+	long unsigned int _nfct;
+	unsigned int len;
+	unsigned int data_len;
+	__u16 mac_len;
+	__u16 hdr_len;
+	__u16 queue_mapping;
+	__u8 __cloned_offset[0];
+	__u8 cloned: 1;
+	__u8 nohdr: 1;
+	__u8 fclone: 2;
+	__u8 peeked: 1;
+	__u8 head_frag: 1;
+	__u8 pfmemalloc: 1;
+	__u8 pp_recycle: 1;
+	__u8 active_extensions;
+	__u32 headers_start[0];
+	__u8 __pkt_type_offset[0];
+	__u8 pkt_type: 3;
+	__u8 ignore_df: 1;
+	__u8 nf_trace: 1;
+	__u8 ip_summed: 2;
+	__u8 ooo_okay: 1;
+	__u8 l4_hash: 1;
+	__u8 sw_hash: 1;
+	__u8 wifi_acked_valid: 1;
+	__u8 wifi_acked: 1;
+	__u8 no_fcs: 1;
+	__u8 encapsulation: 1;
+	__u8 encap_hdr_csum: 1;
+	__u8 csum_valid: 1;
+	__u8 __pkt_vlan_present_offset[0];
+	__u8 vlan_present: 1;
+	__u8 csum_complete_sw: 1;
+	__u8 csum_level: 2;
+	__u8 csum_not_inet: 1;
+	__u8 dst_pending_confirm: 1;
+	__u8 ndisc_nodetype: 2;
+	__u8 ipvs_property: 1;
+	__u8 inner_protocol_type: 1;
+	__u8 remcsum_offload: 1;
+	__u8 offload_fwd_mark: 1;
+	__u8 offload_l3_fwd_mark: 1;
+	__u8 tc_skip_classify: 1;
+	__u8 tc_at_ingress: 1;
+	__u8 redirected: 1;
+	__u8 from_ingress: 1;
+	__u8 decrypted: 1;
+	__u8 slow_gro: 1;
+	__u8 scm_io_uring: 1;
+	__u16 tc_index;
+	union {
+		__wsum csum;
+		struct {
+			__u16 csum_start;
+			__u16 csum_offset;
+		};
+	};
+	__u32 priority;
+	int skb_iif;
+	__u32 hash;
+	__be16 vlan_proto;
+	__u16 vlan_tci;
+	union {
+		unsigned int napi_id;
+		unsigned int sender_cpu;
+	};
+	__u32 secmark;
+	union {
+		__u32 mark;
+		__u32 reserved_tailroom;
+	};
+	union {
+		__be16 inner_protocol;
+		__u8 inner_ipproto;
+	};
+	__u16 inner_transport_header;
+	__u16 inner_network_header;
+	__u16 inner_mac_header;
+	__be16 protocol;
+	__u16 transport_header;
+	__u16 network_header;
+	__u16 mac_header;
+	__u32 headers_end[0];
+	sk_buff_data_t tail;
+	sk_buff_data_t end;
+	unsigned char *head;
+	unsigned char *data;
+	unsigned int truesize;
+	refcount_t users;
+	struct skb_ext *extensions;
+};
+
 struct bpf_storage_buffer {
 	struct callback_head rcu;
 	char data[0];
@@ -7408,13 +8690,11 @@ struct bpf_storage_buffer {
 
 struct psi_group_cpu {
 	seqcount_t seq;
-	unsigned int tasks[4];
+	unsigned int tasks[5];
 	u32 state_mask;
-	u32 times[6];
+	u32 times[7];
 	u64 state_start;
-	long: 64;
-	u32 times_prev[12];
-	long: 64;
+	u32 times_prev[14];
 	long: 64;
 };
 
@@ -7434,7 +8714,7 @@ struct cgroup_subsys {
 	int (*can_attach)(struct cgroup_taskset *);
 	void (*cancel_attach)(struct cgroup_taskset *);
 	void (*attach)(struct cgroup_taskset *);
-	void (*post_attach)();
+	void (*post_attach)(void);
 	int (*can_fork)(struct task_struct *, struct css_set *);
 	void (*cancel_fork)(struct task_struct *, struct css_set *);
 	void (*fork)(struct task_struct *);
@@ -7444,8 +8724,6 @@ struct cgroup_subsys {
 	bool early_init: 1;
 	bool implicit_on_dfl: 1;
 	bool threaded: 1;
-	bool broken_hierarchy: 1;
-	bool warned_broken_hierarchy: 1;
 	int id;
 	const char *name;
 	const char *legacy_name;
@@ -7469,10 +8747,11 @@ struct cgroup_root {
 	struct kernfs_root *kf_root;
 	unsigned int subsys_mask;
 	int hierarchy_id;
+	struct list_head root_list;
+	struct callback_head rcu;
 	struct cgroup cgrp;
 	u64 cgrp_ancestor_id_storage;
 	atomic_t nr_cgrps;
-	struct list_head root_list;
 	unsigned int flags;
 	char release_agent_path[4096];
 	char name[64];
@@ -7501,13 +8780,6 @@ struct cftype {
 	__poll_t (*poll)(struct kernfs_open_file *, struct poll_table_struct *);
 };
 
-enum kmalloc_cache_type {
-	KMALLOC_NORMAL = 0,
-	KMALLOC_RECLAIM = 1,
-	KMALLOC_DMA = 2,
-	NR_KMALLOC_TYPES = 3,
-};
-
 struct perf_callchain_entry {
 	__u64 nr;
 	__u64 ip[0];
@@ -7578,7 +8850,7 @@ struct perf_sample_data {
 	struct perf_raw_record *raw;
 	struct perf_branch_stack *br_stack;
 	u64 period;
-	u64 weight;
+	union perf_sample_weight weight;
 	u64 txn;
 	union perf_mem_data_src data_src;
 	u64 type;
@@ -7601,6 +8873,14 @@ struct perf_sample_data {
 	u64 stack_user_size;
 	u64 phys_addr;
 	u64 cgroup;
+	u64 data_page_size;
+	u64 code_page_size;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 	long: 64;
 };
 
@@ -7644,6 +8924,9 @@ struct trace_iterator {
 	long unsigned int iter_flags;
 	void *temp;
 	unsigned int temp_size;
+	char *fmt;
+	unsigned int fmt_size;
+	long int wait_index;
 	struct trace_seq tmp_seq;
 	cpumask_var_t started;
 	bool snapshot;
@@ -7719,8 +9002,7 @@ struct trace_event_buffer {
 	struct ring_buffer_event *event;
 	struct trace_event_file *trace_file;
 	void *entry;
-	long unsigned int flags;
-	int pc;
+	unsigned int trace_ctx;
 	struct pt_regs *regs;
 };
 
@@ -7735,6 +9017,7 @@ struct trace_event_file {
 	struct trace_subsystem_dir *system;
 	struct list_head triggers;
 	long unsigned int flags;
+	atomic_t ref;
 	atomic_t sm_ref;
 	atomic_t tm_ref;
 };
@@ -7745,8 +9028,10 @@ enum {
 	TRACE_EVENT_FL_NO_SET_FILTER_BIT = 2,
 	TRACE_EVENT_FL_IGNORE_ENABLE_BIT = 3,
 	TRACE_EVENT_FL_TRACEPOINT_BIT = 4,
-	TRACE_EVENT_FL_KPROBE_BIT = 5,
-	TRACE_EVENT_FL_UPROBE_BIT = 6,
+	TRACE_EVENT_FL_DYNAMIC_BIT = 5,
+	TRACE_EVENT_FL_KPROBE_BIT = 6,
+	TRACE_EVENT_FL_UPROBE_BIT = 7,
+	TRACE_EVENT_FL_EPROBE_BIT = 8,
 };
 
 enum {
@@ -7755,8 +9040,10 @@ enum {
 	TRACE_EVENT_FL_NO_SET_FILTER = 4,
 	TRACE_EVENT_FL_IGNORE_ENABLE = 8,
 	TRACE_EVENT_FL_TRACEPOINT = 16,
-	TRACE_EVENT_FL_KPROBE = 32,
-	TRACE_EVENT_FL_UPROBE = 64,
+	TRACE_EVENT_FL_DYNAMIC = 32,
+	TRACE_EVENT_FL_KPROBE = 64,
+	TRACE_EVENT_FL_UPROBE = 128,
+	TRACE_EVENT_FL_EPROBE = 256,
 };
 
 enum {
@@ -7771,6 +9058,7 @@ enum {
 	EVENT_FILE_FL_TRIGGER_COND_BIT = 8,
 	EVENT_FILE_FL_PID_FILTER_BIT = 9,
 	EVENT_FILE_FL_WAS_ENABLED_BIT = 10,
+	EVENT_FILE_FL_FREED_BIT = 11,
 };
 
 enum {
@@ -7785,6 +9073,18 @@ enum {
 	EVENT_FILE_FL_TRIGGER_COND = 256,
 	EVENT_FILE_FL_PID_FILTER = 512,
 	EVENT_FILE_FL_WAS_ENABLED = 1024,
+	EVENT_FILE_FL_FREED = 2048,
+};
+
+enum event_trigger_type {
+	ETT_NONE = 0,
+	ETT_TRACE_ONOFF = 1,
+	ETT_SNAPSHOT = 2,
+	ETT_STACKTRACE = 4,
+	ETT_EVENT_ENABLE = 8,
+	ETT_EVENT_HIST = 16,
+	ETT_HIST_ENABLE = 32,
+	ETT_EVENT_EPROBE = 64,
 };
 
 enum {
@@ -7819,7 +9119,7 @@ struct fwnode_operations {
 	struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
 	struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
 	int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
-	int (*add_links)(const struct fwnode_handle *, struct device *);
+	int (*add_links)(struct fwnode_handle *);
 };
 
 struct fwnode_endpoint {
@@ -7847,8 +9147,6 @@ struct irq_fwspec {
 	u32 param[16];
 };
 
-struct irq_data;
-
 struct irq_domain_ops {
 	int (*match)(struct irq_domain *, struct device_node *, enum irq_domain_bus_token);
 	int (*select)(struct irq_domain *, struct irq_fwspec *, enum irq_domain_bus_token);
@@ -7862,6 +9160,13 @@ struct irq_domain_ops {
 	int (*translate)(struct irq_domain *, struct irq_fwspec *, long unsigned int *, unsigned int *);
 };
 
+struct xbc_node {
+	u16 next;
+	u16 child;
+	u16 parent;
+	u16 data;
+};
+
 enum wb_stat_item {
 	WB_RECLAIMABLE = 0,
 	WB_WRITEBACK = 1,
@@ -7870,26 +9175,6 @@ enum wb_stat_item {
 	NR_WB_STAT_ITEMS = 4,
 };
 
-struct disk_stats;
-
-struct partition_meta_info;
-
-struct hd_struct {
-	sector_t start_sect;
-	sector_t nr_sects;
-	long unsigned int stamp;
-	struct disk_stats *dkstats;
-	struct percpu_ref ref;
-	struct device __dev;
-	struct kobject *holder_dir;
-	int policy;
-	int partno;
-	struct partition_meta_info *info;
-	struct rcu_work rcu_work;
-};
-
-struct disk_part_tbl;
-
 struct block_device_operations;
 
 struct timer_rand_state;
@@ -7907,29 +9192,36 @@ struct gendisk {
 	char disk_name[32];
 	short unsigned int events;
 	short unsigned int event_flags;
-	struct disk_part_tbl *part_tbl;
-	struct hd_struct part0;
+	struct xarray part_tbl;
+	struct block_device *part0;
 	const struct block_device_operations *fops;
 	struct request_queue *queue;
 	void *private_data;
 	int flags;
 	long unsigned int state;
-	struct rw_semaphore lookup_sem;
+	struct mutex open_mutex;
+	unsigned int open_partitions;
+	struct backing_dev_info *bdi;
 	struct kobject *slave_dir;
+	struct list_head slave_bdevs;
 	struct timer_rand_state *random;
 	atomic_t sync_io;
 	struct disk_events *ev;
-	struct kobject integrity_kobj;
 	struct cdrom_device_info *cdi;
 	int node_id;
 	struct badblocks *bb;
 	struct lockdep_map lockdep_map;
+	u64 diskseq;
+};
+
+struct partition_meta_info {
+	char uuid[37];
+	u8 volname[64];
 };
 
 struct bio_integrity_payload {
 	struct bio *bip_bio;
 	struct bvec_iter bip_iter;
-	short unsigned int bip_slab;
 	short unsigned int bip_vcnt;
 	short unsigned int bip_max_vcnt;
 	short unsigned int bip_flags;
@@ -7964,7 +9256,7 @@ struct blkcg_gq {
 	bool online;
 	struct blkg_iostat_set *iostat_cpu;
 	struct blkg_iostat_set iostat;
-	struct blkg_policy_data *pd[5];
+	struct blkg_policy_data *pd[6];
 	spinlock_t async_bio_lock;
 	struct bio_list async_bios;
 	struct work_struct async_bio_work;
@@ -7980,18 +9272,6 @@ typedef __u32 blk_mq_req_flags_t;
 
 typedef unsigned int blk_qc_t;
 
-struct partition_meta_info {
-	char uuid[37];
-	u8 volname[64];
-};
-
-struct disk_part_tbl {
-	struct callback_head callback_head;
-	int len;
-	struct hd_struct *last_lookup;
-	struct hd_struct *part[0];
-};
-
 struct blk_integrity_iter;
 
 typedef blk_status_t integrity_processing_fn(struct blk_integrity_iter *);
@@ -8025,68 +9305,77 @@ struct block_device_operations {
 	int (*compat_ioctl)(struct block_device *, fmode_t, unsigned int, long unsigned int);
 	unsigned int (*check_events)(struct gendisk *, unsigned int);
 	void (*unlock_native_capacity)(struct gendisk *);
-	int (*revalidate_disk)(struct gendisk *);
 	int (*getgeo)(struct block_device *, struct hd_geometry *);
+	int (*set_read_only)(struct block_device *, bool);
 	void (*swap_slot_free_notify)(struct block_device *, long unsigned int);
 	int (*report_zones)(struct gendisk *, sector_t, unsigned int, report_zones_cb, void *);
 	char * (*devnode)(struct gendisk *, umode_t *);
 	struct module *owner;
 	const struct pr_ops *pr_ops;
+	int (*alternative_gpt_sector)(struct gendisk *, sector_t *);
 };
 
-struct sg_io_v4 {
-	__s32 guard;
-	__u32 protocol;
-	__u32 subprotocol;
-	__u32 request_len;
-	__u64 request;
-	__u64 request_tag;
-	__u32 request_attr;
-	__u32 request_priority;
-	__u32 request_extra;
-	__u32 max_response_len;
-	__u64 response;
-	__u32 dout_iovec_count;
-	__u32 dout_xfer_len;
-	__u32 din_iovec_count;
-	__u32 din_xfer_len;
-	__u64 dout_xferp;
-	__u64 din_xferp;
-	__u32 timeout;
-	__u32 flags;
-	__u64 usr_ptr;
-	__u32 spare_in;
-	__u32 driver_status;
-	__u32 transport_status;
-	__u32 device_status;
-	__u32 retry_delay;
-	__u32 info;
-	__u32 duration;
-	__u32 response_len;
-	__s32 din_resid;
-	__s32 dout_resid;
-	__u64 generated_tag;
-	__u32 spare_out;
-	__u32 padding;
+struct blk_zone {
+	__u64 start;
+	__u64 len;
+	__u64 wp;
+	__u8 type;
+	__u8 cond;
+	__u8 non_seq;
+	__u8 reset;
+	__u8 resv[4];
+	__u64 capacity;
+	__u8 reserved[24];
 };
 
-struct bsg_ops {
-	int (*check_proto)(struct sg_io_v4 *);
-	int (*fill_hdr)(struct request *, struct sg_io_v4 *, fmode_t);
-	int (*complete_rq)(struct request *, struct sg_io_v4 *);
-	void (*free_rq)(struct request *);
+struct sbitmap_word {
+	long unsigned int depth;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long unsigned int word;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long unsigned int cleared;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
-typedef __u32 req_flags_t;
+struct sbq_wait_state {
+	atomic_t wait_cnt;
+	wait_queue_head_t wait;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
 
 typedef void rq_end_io_fn(struct request *, blk_status_t);
 
+typedef __u32 req_flags_t;
+
 enum mq_rq_state {
 	MQ_RQ_IDLE = 0,
 	MQ_RQ_IN_FLIGHT = 1,
 	MQ_RQ_COMPLETE = 2,
 };
 
+struct blk_ksm_keyslot;
+
 struct request {
 	struct request_queue *q;
 	struct blk_mq_ctx *mq_ctx;
@@ -8102,7 +9391,7 @@ struct request {
 	struct list_head queuelist;
 	union {
 		struct hlist_node hash;
-		struct list_head ipi_list;
+		struct llist_node ipi_list;
 	};
 	union {
 		struct rb_node rb_node;
@@ -8122,7 +9411,7 @@ struct request {
 		} flush;
 	};
 	struct gendisk *rq_disk;
-	struct hd_struct *part;
+	struct block_device *part;
 	u64 alloc_time_ns;
 	u64 start_time_ns;
 	u64 io_start_time_ns;
@@ -8130,6 +9419,8 @@ struct request {
 	short unsigned int stats_sectors;
 	short unsigned int nr_phys_segments;
 	short unsigned int nr_integrity_segments;
+	struct bio_crypt_ctx *crypt_ctx;
+	struct blk_ksm_keyslot *crypt_keyslot;
 	short unsigned int write_hint;
 	short unsigned int ioprio;
 	enum mq_rq_state state;
@@ -8144,28 +9435,6 @@ struct request {
 	void *end_io_data;
 };
 
-struct blk_zone {
-	__u64 start;
-	__u64 len;
-	__u64 wp;
-	__u8 type;
-	__u8 cond;
-	__u8 non_seq;
-	__u8 reset;
-	__u8 resv[4];
-	__u64 capacity;
-	__u8 reserved[24];
-};
-
-struct sbitmap_word;
-
-struct sbitmap {
-	unsigned int depth;
-	unsigned int shift;
-	unsigned int map_nr;
-	struct sbitmap_word *map;
-};
-
 struct blk_mq_tags;
 
 struct blk_mq_hw_ctx {
@@ -8204,7 +9473,6 @@ struct blk_mq_hw_ctx {
 	unsigned int numa_node;
 	unsigned int queue_num;
 	atomic_t nr_active;
-	atomic_t elevator_queued;
 	struct hlist_node cpuhp_online;
 	struct hlist_node cpuhp_dead;
 	struct kobject kobj;
@@ -8215,7 +9483,6 @@ struct blk_mq_hw_ctx {
 	struct dentry *sched_debugfs_dir;
 	struct list_head hctx_list;
 	struct srcu_struct srcu[0];
-	long: 64;
 };
 
 enum elv_merge {
@@ -8307,8 +9574,10 @@ struct blk_mq_queue_data;
 struct blk_mq_ops {
 	blk_status_t (*queue_rq)(struct blk_mq_hw_ctx *, const struct blk_mq_queue_data *);
 	void (*commit_rqs)(struct blk_mq_hw_ctx *);
-	bool (*get_budget)(struct request_queue *);
-	void (*put_budget)(struct request_queue *);
+	int (*get_budget)(struct request_queue *);
+	void (*put_budget)(struct request_queue *, int);
+	void (*set_rq_budget_token)(struct request *, int);
+	int (*get_rq_budget_token)(struct request *);
 	enum blk_eh_timer_return (*timeout)(struct request *, bool);
 	int (*poll)(struct blk_mq_hw_ctx *);
 	void (*complete)(struct request *);
@@ -8329,19 +9598,6 @@ struct blk_mq_queue_map {
 	unsigned int queue_offset;
 };
 
-struct sbq_wait_state;
-
-struct sbitmap_queue {
-	struct sbitmap sb;
-	unsigned int *alloc_hint;
-	unsigned int wake_batch;
-	atomic_t wake_index;
-	struct sbq_wait_state *ws;
-	atomic_t ws_active;
-	bool round_robin;
-	unsigned int min_shallow_depth;
-};
-
 struct blk_mq_tag_set {
 	struct blk_mq_queue_map map[3];
 	unsigned int nr_maps;
@@ -8388,42 +9644,6 @@ struct pr_ops {
 	int (*pr_clear)(struct block_device *, u64);
 };
 
-struct sbitmap_word {
-	long unsigned int depth;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long unsigned int word;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long unsigned int cleared;
-	spinlock_t swap_lock;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct sbq_wait_state {
-	atomic_t wait_cnt;
-	wait_queue_head_t wait;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
 enum hctx_type {
 	HCTX_TYPE_DEFAULT = 0,
 	HCTX_TYPE_READ = 1,
@@ -8452,8 +9672,9 @@ struct blkcg {
 	struct xarray blkg_tree;
 	struct blkcg_gq *blkg_hint;
 	struct hlist_head blkg_list;
-	struct blkcg_policy_data *cpd[5];
+	struct blkcg_policy_data *cpd[6];
 	struct list_head all_blkcgs_node;
+	char fc_app_id[129];
 	struct list_head cgwb_list;
 };
 
@@ -8623,10 +9844,10 @@ struct efi {
 };
 
 enum memcg_stat_item {
-	MEMCG_SWAP = 37,
-	MEMCG_SOCK = 38,
-	MEMCG_PERCPU_B = 39,
-	MEMCG_NR_STAT = 40,
+	MEMCG_SWAP = 39,
+	MEMCG_SOCK = 40,
+	MEMCG_PERCPU_B = 41,
+	MEMCG_NR_STAT = 42,
 };
 
 enum memcg_memory_event {
@@ -8648,8 +9869,10 @@ enum mem_cgroup_events_target {
 };
 
 struct memcg_vmstats_percpu {
-	long int stat[40];
-	long unsigned int events[96];
+	long int state[42];
+	long unsigned int events[100];
+	long int state_prev[42];
+	long unsigned int events_prev[100];
 	long unsigned int nr_page_events;
 	long unsigned int targets[2];
 };
@@ -8659,23 +9882,29 @@ struct mem_cgroup_reclaim_iter {
 	unsigned int generation;
 };
 
-struct lruvec_stat {
-	long int count[37];
+struct shrinker_info {
+	struct callback_head rcu;
+	atomic_long_t *nr_deferred;
+	long unsigned int *map;
 };
 
-struct memcg_shrinker_map {
-	struct callback_head rcu;
-	long unsigned int map[0];
+struct lruvec_stats_percpu {
+	long int state[39];
+	long int state_prev[39];
+};
+
+struct lruvec_stats {
+	long int state[39];
+	long int state_pending[39];
 };
 
 struct mem_cgroup_per_node {
 	struct lruvec lruvec;
-	struct lruvec_stat *lruvec_stat_local;
-	struct lruvec_stat *lruvec_stat_cpu;
-	atomic_long_t lruvec_stat[37];
+	struct lruvec_stats_percpu *lruvec_stats_percpu;
+	struct lruvec_stats lruvec_stats;
 	long unsigned int lru_zone_size[25];
 	struct mem_cgroup_reclaim_iter iter;
-	struct memcg_shrinker_map *shrinker_map;
+	struct shrinker_info *shrinker_info;
 	struct rb_node tree_node;
 	long unsigned int usage_in_excess;
 	bool on_tree;
@@ -8695,6 +9924,16 @@ struct mem_cgroup_threshold_ary {
 	struct mem_cgroup_threshold entries[0];
 };
 
+struct obj_cgroup {
+	struct percpu_ref refcnt;
+	struct mem_cgroup *memcg;
+	atomic_t nr_charged_bytes;
+	union {
+		struct list_head list;
+		struct callback_head rcu;
+	};
+};
+
 struct percpu_cluster {
 	struct swap_cluster_info index;
 	unsigned int next;
@@ -8750,6 +9989,721 @@ struct fs_parse_result {
 	};
 };
 
+struct in6_addr {
+	union {
+		__u8 u6_addr8[16];
+		__be16 u6_addr16[8];
+		__be32 u6_addr32[4];
+	} in6_u;
+};
+
+enum flow_dissector_key_id {
+	FLOW_DISSECTOR_KEY_CONTROL = 0,
+	FLOW_DISSECTOR_KEY_BASIC = 1,
+	FLOW_DISSECTOR_KEY_IPV4_ADDRS = 2,
+	FLOW_DISSECTOR_KEY_IPV6_ADDRS = 3,
+	FLOW_DISSECTOR_KEY_PORTS = 4,
+	FLOW_DISSECTOR_KEY_PORTS_RANGE = 5,
+	FLOW_DISSECTOR_KEY_ICMP = 6,
+	FLOW_DISSECTOR_KEY_ETH_ADDRS = 7,
+	FLOW_DISSECTOR_KEY_TIPC = 8,
+	FLOW_DISSECTOR_KEY_ARP = 9,
+	FLOW_DISSECTOR_KEY_VLAN = 10,
+	FLOW_DISSECTOR_KEY_FLOW_LABEL = 11,
+	FLOW_DISSECTOR_KEY_GRE_KEYID = 12,
+	FLOW_DISSECTOR_KEY_MPLS_ENTROPY = 13,
+	FLOW_DISSECTOR_KEY_ENC_KEYID = 14,
+	FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS = 15,
+	FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS = 16,
+	FLOW_DISSECTOR_KEY_ENC_CONTROL = 17,
+	FLOW_DISSECTOR_KEY_ENC_PORTS = 18,
+	FLOW_DISSECTOR_KEY_MPLS = 19,
+	FLOW_DISSECTOR_KEY_TCP = 20,
+	FLOW_DISSECTOR_KEY_IP = 21,
+	FLOW_DISSECTOR_KEY_CVLAN = 22,
+	FLOW_DISSECTOR_KEY_ENC_IP = 23,
+	FLOW_DISSECTOR_KEY_ENC_OPTS = 24,
+	FLOW_DISSECTOR_KEY_META = 25,
+	FLOW_DISSECTOR_KEY_CT = 26,
+	FLOW_DISSECTOR_KEY_HASH = 27,
+	FLOW_DISSECTOR_KEY_MAX = 28,
+};
+
+enum {
+	IPSTATS_MIB_NUM = 0,
+	IPSTATS_MIB_INPKTS = 1,
+	IPSTATS_MIB_INOCTETS = 2,
+	IPSTATS_MIB_INDELIVERS = 3,
+	IPSTATS_MIB_OUTFORWDATAGRAMS = 4,
+	IPSTATS_MIB_OUTPKTS = 5,
+	IPSTATS_MIB_OUTOCTETS = 6,
+	IPSTATS_MIB_INHDRERRORS = 7,
+	IPSTATS_MIB_INTOOBIGERRORS = 8,
+	IPSTATS_MIB_INNOROUTES = 9,
+	IPSTATS_MIB_INADDRERRORS = 10,
+	IPSTATS_MIB_INUNKNOWNPROTOS = 11,
+	IPSTATS_MIB_INTRUNCATEDPKTS = 12,
+	IPSTATS_MIB_INDISCARDS = 13,
+	IPSTATS_MIB_OUTDISCARDS = 14,
+	IPSTATS_MIB_OUTNOROUTES = 15,
+	IPSTATS_MIB_REASMTIMEOUT = 16,
+	IPSTATS_MIB_REASMREQDS = 17,
+	IPSTATS_MIB_REASMOKS = 18,
+	IPSTATS_MIB_REASMFAILS = 19,
+	IPSTATS_MIB_FRAGOKS = 20,
+	IPSTATS_MIB_FRAGFAILS = 21,
+	IPSTATS_MIB_FRAGCREATES = 22,
+	IPSTATS_MIB_INMCASTPKTS = 23,
+	IPSTATS_MIB_OUTMCASTPKTS = 24,
+	IPSTATS_MIB_INBCASTPKTS = 25,
+	IPSTATS_MIB_OUTBCASTPKTS = 26,
+	IPSTATS_MIB_INMCASTOCTETS = 27,
+	IPSTATS_MIB_OUTMCASTOCTETS = 28,
+	IPSTATS_MIB_INBCASTOCTETS = 29,
+	IPSTATS_MIB_OUTBCASTOCTETS = 30,
+	IPSTATS_MIB_CSUMERRORS = 31,
+	IPSTATS_MIB_NOECTPKTS = 32,
+	IPSTATS_MIB_ECT1PKTS = 33,
+	IPSTATS_MIB_ECT0PKTS = 34,
+	IPSTATS_MIB_CEPKTS = 35,
+	IPSTATS_MIB_REASM_OVERLAPS = 36,
+	__IPSTATS_MIB_MAX = 37,
+};
+
+enum {
+	ICMP_MIB_NUM = 0,
+	ICMP_MIB_INMSGS = 1,
+	ICMP_MIB_INERRORS = 2,
+	ICMP_MIB_INDESTUNREACHS = 3,
+	ICMP_MIB_INTIMEEXCDS = 4,
+	ICMP_MIB_INPARMPROBS = 5,
+	ICMP_MIB_INSRCQUENCHS = 6,
+	ICMP_MIB_INREDIRECTS = 7,
+	ICMP_MIB_INECHOS = 8,
+	ICMP_MIB_INECHOREPS = 9,
+	ICMP_MIB_INTIMESTAMPS = 10,
+	ICMP_MIB_INTIMESTAMPREPS = 11,
+	ICMP_MIB_INADDRMASKS = 12,
+	ICMP_MIB_INADDRMASKREPS = 13,
+	ICMP_MIB_OUTMSGS = 14,
+	ICMP_MIB_OUTERRORS = 15,
+	ICMP_MIB_OUTDESTUNREACHS = 16,
+	ICMP_MIB_OUTTIMEEXCDS = 17,
+	ICMP_MIB_OUTPARMPROBS = 18,
+	ICMP_MIB_OUTSRCQUENCHS = 19,
+	ICMP_MIB_OUTREDIRECTS = 20,
+	ICMP_MIB_OUTECHOS = 21,
+	ICMP_MIB_OUTECHOREPS = 22,
+	ICMP_MIB_OUTTIMESTAMPS = 23,
+	ICMP_MIB_OUTTIMESTAMPREPS = 24,
+	ICMP_MIB_OUTADDRMASKS = 25,
+	ICMP_MIB_OUTADDRMASKREPS = 26,
+	ICMP_MIB_CSUMERRORS = 27,
+	__ICMP_MIB_MAX = 28,
+};
+
+enum {
+	ICMP6_MIB_NUM = 0,
+	ICMP6_MIB_INMSGS = 1,
+	ICMP6_MIB_INERRORS = 2,
+	ICMP6_MIB_OUTMSGS = 3,
+	ICMP6_MIB_OUTERRORS = 4,
+	ICMP6_MIB_CSUMERRORS = 5,
+	__ICMP6_MIB_MAX = 6,
+};
+
+enum {
+	TCP_MIB_NUM = 0,
+	TCP_MIB_RTOALGORITHM = 1,
+	TCP_MIB_RTOMIN = 2,
+	TCP_MIB_RTOMAX = 3,
+	TCP_MIB_MAXCONN = 4,
+	TCP_MIB_ACTIVEOPENS = 5,
+	TCP_MIB_PASSIVEOPENS = 6,
+	TCP_MIB_ATTEMPTFAILS = 7,
+	TCP_MIB_ESTABRESETS = 8,
+	TCP_MIB_CURRESTAB = 9,
+	TCP_MIB_INSEGS = 10,
+	TCP_MIB_OUTSEGS = 11,
+	TCP_MIB_RETRANSSEGS = 12,
+	TCP_MIB_INERRS = 13,
+	TCP_MIB_OUTRSTS = 14,
+	TCP_MIB_CSUMERRORS = 15,
+	__TCP_MIB_MAX = 16,
+};
+
+enum {
+	UDP_MIB_NUM = 0,
+	UDP_MIB_INDATAGRAMS = 1,
+	UDP_MIB_NOPORTS = 2,
+	UDP_MIB_INERRORS = 3,
+	UDP_MIB_OUTDATAGRAMS = 4,
+	UDP_MIB_RCVBUFERRORS = 5,
+	UDP_MIB_SNDBUFERRORS = 6,
+	UDP_MIB_CSUMERRORS = 7,
+	UDP_MIB_IGNOREDMULTI = 8,
+	UDP_MIB_MEMERRORS = 9,
+	__UDP_MIB_MAX = 10,
+};
+
+enum {
+	LINUX_MIB_NUM = 0,
+	LINUX_MIB_SYNCOOKIESSENT = 1,
+	LINUX_MIB_SYNCOOKIESRECV = 2,
+	LINUX_MIB_SYNCOOKIESFAILED = 3,
+	LINUX_MIB_EMBRYONICRSTS = 4,
+	LINUX_MIB_PRUNECALLED = 5,
+	LINUX_MIB_RCVPRUNED = 6,
+	LINUX_MIB_OFOPRUNED = 7,
+	LINUX_MIB_OUTOFWINDOWICMPS = 8,
+	LINUX_MIB_LOCKDROPPEDICMPS = 9,
+	LINUX_MIB_ARPFILTER = 10,
+	LINUX_MIB_TIMEWAITED = 11,
+	LINUX_MIB_TIMEWAITRECYCLED = 12,
+	LINUX_MIB_TIMEWAITKILLED = 13,
+	LINUX_MIB_PAWSACTIVEREJECTED = 14,
+	LINUX_MIB_PAWSESTABREJECTED = 15,
+	LINUX_MIB_DELAYEDACKS = 16,
+	LINUX_MIB_DELAYEDACKLOCKED = 17,
+	LINUX_MIB_DELAYEDACKLOST = 18,
+	LINUX_MIB_LISTENOVERFLOWS = 19,
+	LINUX_MIB_LISTENDROPS = 20,
+	LINUX_MIB_TCPHPHITS = 21,
+	LINUX_MIB_TCPPUREACKS = 22,
+	LINUX_MIB_TCPHPACKS = 23,
+	LINUX_MIB_TCPRENORECOVERY = 24,
+	LINUX_MIB_TCPSACKRECOVERY = 25,
+	LINUX_MIB_TCPSACKRENEGING = 26,
+	LINUX_MIB_TCPSACKREORDER = 27,
+	LINUX_MIB_TCPRENOREORDER = 28,
+	LINUX_MIB_TCPTSREORDER = 29,
+	LINUX_MIB_TCPFULLUNDO = 30,
+	LINUX_MIB_TCPPARTIALUNDO = 31,
+	LINUX_MIB_TCPDSACKUNDO = 32,
+	LINUX_MIB_TCPLOSSUNDO = 33,
+	LINUX_MIB_TCPLOSTRETRANSMIT = 34,
+	LINUX_MIB_TCPRENOFAILURES = 35,
+	LINUX_MIB_TCPSACKFAILURES = 36,
+	LINUX_MIB_TCPLOSSFAILURES = 37,
+	LINUX_MIB_TCPFASTRETRANS = 38,
+	LINUX_MIB_TCPSLOWSTARTRETRANS = 39,
+	LINUX_MIB_TCPTIMEOUTS = 40,
+	LINUX_MIB_TCPLOSSPROBES = 41,
+	LINUX_MIB_TCPLOSSPROBERECOVERY = 42,
+	LINUX_MIB_TCPRENORECOVERYFAIL = 43,
+	LINUX_MIB_TCPSACKRECOVERYFAIL = 44,
+	LINUX_MIB_TCPRCVCOLLAPSED = 45,
+	LINUX_MIB_TCPDSACKOLDSENT = 46,
+	LINUX_MIB_TCPDSACKOFOSENT = 47,
+	LINUX_MIB_TCPDSACKRECV = 48,
+	LINUX_MIB_TCPDSACKOFORECV = 49,
+	LINUX_MIB_TCPABORTONDATA = 50,
+	LINUX_MIB_TCPABORTONCLOSE = 51,
+	LINUX_MIB_TCPABORTONMEMORY = 52,
+	LINUX_MIB_TCPABORTONTIMEOUT = 53,
+	LINUX_MIB_TCPABORTONLINGER = 54,
+	LINUX_MIB_TCPABORTFAILED = 55,
+	LINUX_MIB_TCPMEMORYPRESSURES = 56,
+	LINUX_MIB_TCPMEMORYPRESSURESCHRONO = 57,
+	LINUX_MIB_TCPSACKDISCARD = 58,
+	LINUX_MIB_TCPDSACKIGNOREDOLD = 59,
+	LINUX_MIB_TCPDSACKIGNOREDNOUNDO = 60,
+	LINUX_MIB_TCPSPURIOUSRTOS = 61,
+	LINUX_MIB_TCPMD5NOTFOUND = 62,
+	LINUX_MIB_TCPMD5UNEXPECTED = 63,
+	LINUX_MIB_TCPMD5FAILURE = 64,
+	LINUX_MIB_SACKSHIFTED = 65,
+	LINUX_MIB_SACKMERGED = 66,
+	LINUX_MIB_SACKSHIFTFALLBACK = 67,
+	LINUX_MIB_TCPBACKLOGDROP = 68,
+	LINUX_MIB_PFMEMALLOCDROP = 69,
+	LINUX_MIB_TCPMINTTLDROP = 70,
+	LINUX_MIB_TCPDEFERACCEPTDROP = 71,
+	LINUX_MIB_IPRPFILTER = 72,
+	LINUX_MIB_TCPTIMEWAITOVERFLOW = 73,
+	LINUX_MIB_TCPREQQFULLDOCOOKIES = 74,
+	LINUX_MIB_TCPREQQFULLDROP = 75,
+	LINUX_MIB_TCPRETRANSFAIL = 76,
+	LINUX_MIB_TCPRCVCOALESCE = 77,
+	LINUX_MIB_TCPBACKLOGCOALESCE = 78,
+	LINUX_MIB_TCPOFOQUEUE = 79,
+	LINUX_MIB_TCPOFODROP = 80,
+	LINUX_MIB_TCPOFOMERGE = 81,
+	LINUX_MIB_TCPCHALLENGEACK = 82,
+	LINUX_MIB_TCPSYNCHALLENGE = 83,
+	LINUX_MIB_TCPFASTOPENACTIVE = 84,
+	LINUX_MIB_TCPFASTOPENACTIVEFAIL = 85,
+	LINUX_MIB_TCPFASTOPENPASSIVE = 86,
+	LINUX_MIB_TCPFASTOPENPASSIVEFAIL = 87,
+	LINUX_MIB_TCPFASTOPENLISTENOVERFLOW = 88,
+	LINUX_MIB_TCPFASTOPENCOOKIEREQD = 89,
+	LINUX_MIB_TCPFASTOPENBLACKHOLE = 90,
+	LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES = 91,
+	LINUX_MIB_BUSYPOLLRXPACKETS = 92,
+	LINUX_MIB_TCPAUTOCORKING = 93,
+	LINUX_MIB_TCPFROMZEROWINDOWADV = 94,
+	LINUX_MIB_TCPTOZEROWINDOWADV = 95,
+	LINUX_MIB_TCPWANTZEROWINDOWADV = 96,
+	LINUX_MIB_TCPSYNRETRANS = 97,
+	LINUX_MIB_TCPORIGDATASENT = 98,
+	LINUX_MIB_TCPHYSTARTTRAINDETECT = 99,
+	LINUX_MIB_TCPHYSTARTTRAINCWND = 100,
+	LINUX_MIB_TCPHYSTARTDELAYDETECT = 101,
+	LINUX_MIB_TCPHYSTARTDELAYCWND = 102,
+	LINUX_MIB_TCPACKSKIPPEDSYNRECV = 103,
+	LINUX_MIB_TCPACKSKIPPEDPAWS = 104,
+	LINUX_MIB_TCPACKSKIPPEDSEQ = 105,
+	LINUX_MIB_TCPACKSKIPPEDFINWAIT2 = 106,
+	LINUX_MIB_TCPACKSKIPPEDTIMEWAIT = 107,
+	LINUX_MIB_TCPACKSKIPPEDCHALLENGE = 108,
+	LINUX_MIB_TCPWINPROBE = 109,
+	LINUX_MIB_TCPKEEPALIVE = 110,
+	LINUX_MIB_TCPMTUPFAIL = 111,
+	LINUX_MIB_TCPMTUPSUCCESS = 112,
+	LINUX_MIB_TCPDELIVERED = 113,
+	LINUX_MIB_TCPDELIVEREDCE = 114,
+	LINUX_MIB_TCPACKCOMPRESSED = 115,
+	LINUX_MIB_TCPZEROWINDOWDROP = 116,
+	LINUX_MIB_TCPRCVQDROP = 117,
+	LINUX_MIB_TCPWQUEUETOOBIG = 118,
+	LINUX_MIB_TCPFASTOPENPASSIVEALTKEY = 119,
+	LINUX_MIB_TCPTIMEOUTREHASH = 120,
+	LINUX_MIB_TCPDUPLICATEDATAREHASH = 121,
+	LINUX_MIB_TCPDSACKRECVSEGS = 122,
+	LINUX_MIB_TCPDSACKIGNOREDDUBIOUS = 123,
+	LINUX_MIB_TCPMIGRATEREQSUCCESS = 124,
+	LINUX_MIB_TCPMIGRATEREQFAILURE = 125,
+	__LINUX_MIB_MAX = 126,
+};
+
+enum {
+	LINUX_MIB_XFRMNUM = 0,
+	LINUX_MIB_XFRMINERROR = 1,
+	LINUX_MIB_XFRMINBUFFERERROR = 2,
+	LINUX_MIB_XFRMINHDRERROR = 3,
+	LINUX_MIB_XFRMINNOSTATES = 4,
+	LINUX_MIB_XFRMINSTATEPROTOERROR = 5,
+	LINUX_MIB_XFRMINSTATEMODEERROR = 6,
+	LINUX_MIB_XFRMINSTATESEQERROR = 7,
+	LINUX_MIB_XFRMINSTATEEXPIRED = 8,
+	LINUX_MIB_XFRMINSTATEMISMATCH = 9,
+	LINUX_MIB_XFRMINSTATEINVALID = 10,
+	LINUX_MIB_XFRMINTMPLMISMATCH = 11,
+	LINUX_MIB_XFRMINNOPOLS = 12,
+	LINUX_MIB_XFRMINPOLBLOCK = 13,
+	LINUX_MIB_XFRMINPOLERROR = 14,
+	LINUX_MIB_XFRMOUTERROR = 15,
+	LINUX_MIB_XFRMOUTBUNDLEGENERROR = 16,
+	LINUX_MIB_XFRMOUTBUNDLECHECKERROR = 17,
+	LINUX_MIB_XFRMOUTNOSTATES = 18,
+	LINUX_MIB_XFRMOUTSTATEPROTOERROR = 19,
+	LINUX_MIB_XFRMOUTSTATEMODEERROR = 20,
+	LINUX_MIB_XFRMOUTSTATESEQERROR = 21,
+	LINUX_MIB_XFRMOUTSTATEEXPIRED = 22,
+	LINUX_MIB_XFRMOUTPOLBLOCK = 23,
+	LINUX_MIB_XFRMOUTPOLDEAD = 24,
+	LINUX_MIB_XFRMOUTPOLERROR = 25,
+	LINUX_MIB_XFRMFWDHDRERROR = 26,
+	LINUX_MIB_XFRMOUTSTATEINVALID = 27,
+	LINUX_MIB_XFRMACQUIREERROR = 28,
+	__LINUX_MIB_XFRMMAX = 29,
+};
+
+enum {
+	LINUX_MIB_TLSNUM = 0,
+	LINUX_MIB_TLSCURRTXSW = 1,
+	LINUX_MIB_TLSCURRRXSW = 2,
+	LINUX_MIB_TLSCURRTXDEVICE = 3,
+	LINUX_MIB_TLSCURRRXDEVICE = 4,
+	LINUX_MIB_TLSTXSW = 5,
+	LINUX_MIB_TLSRXSW = 6,
+	LINUX_MIB_TLSTXDEVICE = 7,
+	LINUX_MIB_TLSRXDEVICE = 8,
+	LINUX_MIB_TLSDECRYPTERROR = 9,
+	LINUX_MIB_TLSRXDEVICERESYNC = 10,
+	__LINUX_MIB_TLSMAX = 11,
+};
+
+struct ipstats_mib {
+	u64 mibs[37];
+	struct u64_stats_sync syncp;
+};
+
+struct icmp_mib {
+	long unsigned int mibs[28];
+};
+
+struct icmpmsg_mib {
+	atomic_long_t mibs[512];
+};
+
+struct icmpv6_mib {
+	long unsigned int mibs[6];
+};
+
+struct icmpv6msg_mib {
+	atomic_long_t mibs[512];
+};
+
+struct tcp_mib {
+	long unsigned int mibs[16];
+};
+
+struct udp_mib {
+	long unsigned int mibs[10];
+};
+
+struct linux_mib {
+	long unsigned int mibs[126];
+};
+
+struct linux_xfrm_mib {
+	long unsigned int mibs[29];
+};
+
+struct linux_tls_mib {
+	long unsigned int mibs[11];
+};
+
+struct inet_frags;
+
+struct fqdir {
+	long int high_thresh;
+	long int low_thresh;
+	int timeout;
+	int max_dist;
+	struct inet_frags *f;
+	struct net *net;
+	bool dead;
+	long: 64;
+	long: 64;
+	struct rhashtable rhashtable;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	atomic_long_t mem;
+	struct work_struct destroy_work;
+	struct llist_node free_list;
+	long: 64;
+	long: 64;
+};
+
+struct inet_frag_queue;
+
+struct inet_frags {
+	unsigned int qsize;
+	void (*constructor)(struct inet_frag_queue *, const void *);
+	void (*destructor)(struct inet_frag_queue *);
+	void (*frag_expire)(struct timer_list *);
+	struct kmem_cache *frags_cachep;
+	const char *frags_cache_name;
+	struct rhashtable_params rhash_params;
+	refcount_t refcnt;
+	struct completion completion;
+};
+
+struct frag_v4_compare_key {
+	__be32 saddr;
+	__be32 daddr;
+	u32 user;
+	u32 vif;
+	__be16 id;
+	u16 protocol;
+};
+
+struct frag_v6_compare_key {
+	struct in6_addr saddr;
+	struct in6_addr daddr;
+	u32 user;
+	__be32 id;
+	u32 iif;
+};
+
+struct inet_frag_queue {
+	struct rhash_head node;
+	union {
+		struct frag_v4_compare_key v4;
+		struct frag_v6_compare_key v6;
+	} key;
+	struct timer_list timer;
+	spinlock_t lock;
+	refcount_t refcnt;
+	struct rb_root rb_fragments;
+	struct sk_buff *fragments_tail;
+	struct sk_buff *last_run_head;
+	ktime_t stamp;
+	int len;
+	int meat;
+	__u8 flags;
+	u16 max_size;
+	struct fqdir *fqdir;
+	struct callback_head rcu;
+};
+
+enum tcp_ca_event {
+	CA_EVENT_TX_START = 0,
+	CA_EVENT_CWND_RESTART = 1,
+	CA_EVENT_COMPLETE_CWR = 2,
+	CA_EVENT_LOSS = 3,
+	CA_EVENT_ECN_NO_CE = 4,
+	CA_EVENT_ECN_IS_CE = 5,
+};
+
+struct ack_sample;
+
+struct rate_sample;
+
+union tcp_cc_info;
+
+struct tcp_congestion_ops {
+	u32 (*ssthresh)(struct sock *);
+	void (*cong_avoid)(struct sock *, u32, u32);
+	void (*set_state)(struct sock *, u8);
+	void (*cwnd_event)(struct sock *, enum tcp_ca_event);
+	void (*in_ack_event)(struct sock *, u32);
+	void (*pkts_acked)(struct sock *, const struct ack_sample *);
+	u32 (*min_tso_segs)(struct sock *);
+	void (*cong_control)(struct sock *, const struct rate_sample *);
+	u32 (*undo_cwnd)(struct sock *);
+	u32 (*sndbuf_expand)(struct sock *);
+	size_t (*get_info)(struct sock *, u32, int *, union tcp_cc_info *);
+	char name[16];
+	struct module *owner;
+	struct list_head list;
+	u32 key;
+	u32 flags;
+	void (*init)(struct sock *);
+	void (*release)(struct sock *);
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct xfrm_state;
+
+struct lwtunnel_state;
+
+struct dst_entry {
+	struct net_device *dev;
+	struct dst_ops *ops;
+	long unsigned int _metrics;
+	long unsigned int expires;
+	struct xfrm_state *xfrm;
+	int (*input)(struct sk_buff *);
+	int (*output)(struct net *, struct sock *, struct sk_buff *);
+	short unsigned int flags;
+	short int obsolete;
+	short unsigned int header_len;
+	short unsigned int trailer_len;
+	atomic_t __refcnt;
+	int __use;
+	long unsigned int lastuse;
+	struct lwtunnel_state *lwtstate;
+	struct callback_head callback_head;
+	short int error;
+	short int __pad;
+	__u32 tclassid;
+};
+
+enum nf_inet_hooks {
+	NF_INET_PRE_ROUTING = 0,
+	NF_INET_LOCAL_IN = 1,
+	NF_INET_FORWARD = 2,
+	NF_INET_LOCAL_OUT = 3,
+	NF_INET_POST_ROUTING = 4,
+	NF_INET_NUMHOOKS = 5,
+	NF_INET_INGRESS = 5,
+};
+
+enum {
+	NFPROTO_UNSPEC = 0,
+	NFPROTO_INET = 1,
+	NFPROTO_IPV4 = 2,
+	NFPROTO_ARP = 3,
+	NFPROTO_NETDEV = 5,
+	NFPROTO_BRIDGE = 7,
+	NFPROTO_IPV6 = 10,
+	NFPROTO_DECNET = 12,
+	NFPROTO_NUMPROTO = 13,
+};
+
+enum nf_log_type {
+	NF_LOG_TYPE_LOG = 0,
+	NF_LOG_TYPE_ULOG = 1,
+	NF_LOG_TYPE_MAX = 2,
+};
+
+typedef u8 u_int8_t;
+
+struct nf_loginfo;
+
+typedef void nf_logfn(struct net *, u_int8_t, unsigned int, const struct sk_buff *, const struct net_device *, const struct net_device *, const struct nf_loginfo *, const char *);
+
+struct nf_logger {
+	char *name;
+	enum nf_log_type type;
+	nf_logfn *logfn;
+	struct module *me;
+};
+
+struct hlist_nulls_node;
+
+struct hlist_nulls_head {
+	struct hlist_nulls_node *first;
+};
+
+struct hlist_nulls_node {
+	struct hlist_nulls_node *next;
+	struct hlist_nulls_node **pprev;
+};
+
+enum tcp_conntrack {
+	TCP_CONNTRACK_NONE = 0,
+	TCP_CONNTRACK_SYN_SENT = 1,
+	TCP_CONNTRACK_SYN_RECV = 2,
+	TCP_CONNTRACK_ESTABLISHED = 3,
+	TCP_CONNTRACK_FIN_WAIT = 4,
+	TCP_CONNTRACK_CLOSE_WAIT = 5,
+	TCP_CONNTRACK_LAST_ACK = 6,
+	TCP_CONNTRACK_TIME_WAIT = 7,
+	TCP_CONNTRACK_CLOSE = 8,
+	TCP_CONNTRACK_LISTEN = 9,
+	TCP_CONNTRACK_MAX = 10,
+	TCP_CONNTRACK_IGNORE = 11,
+	TCP_CONNTRACK_RETRANS = 12,
+	TCP_CONNTRACK_UNACK = 13,
+	TCP_CONNTRACK_TIMEOUT_MAX = 14,
+};
+
+enum ct_dccp_states {
+	CT_DCCP_NONE = 0,
+	CT_DCCP_REQUEST = 1,
+	CT_DCCP_RESPOND = 2,
+	CT_DCCP_PARTOPEN = 3,
+	CT_DCCP_OPEN = 4,
+	CT_DCCP_CLOSEREQ = 5,
+	CT_DCCP_CLOSING = 6,
+	CT_DCCP_TIMEWAIT = 7,
+	CT_DCCP_IGNORE = 8,
+	CT_DCCP_INVALID = 9,
+	__CT_DCCP_MAX = 10,
+};
+
+struct ip_conntrack_stat {
+	unsigned int found;
+	unsigned int invalid;
+	unsigned int insert;
+	unsigned int insert_failed;
+	unsigned int clash_resolve;
+	unsigned int drop;
+	unsigned int early_drop;
+	unsigned int error;
+	unsigned int expect_new;
+	unsigned int expect_create;
+	unsigned int expect_delete;
+	unsigned int search_restart;
+	unsigned int chaintoolong;
+};
+
+enum ip_conntrack_dir {
+	IP_CT_DIR_ORIGINAL = 0,
+	IP_CT_DIR_REPLY = 1,
+	IP_CT_DIR_MAX = 2,
+};
+
+enum sctp_conntrack {
+	SCTP_CONNTRACK_NONE = 0,
+	SCTP_CONNTRACK_CLOSED = 1,
+	SCTP_CONNTRACK_COOKIE_WAIT = 2,
+	SCTP_CONNTRACK_COOKIE_ECHOED = 3,
+	SCTP_CONNTRACK_ESTABLISHED = 4,
+	SCTP_CONNTRACK_SHUTDOWN_SENT = 5,
+	SCTP_CONNTRACK_SHUTDOWN_RECD = 6,
+	SCTP_CONNTRACK_SHUTDOWN_ACK_SENT = 7,
+	SCTP_CONNTRACK_HEARTBEAT_SENT = 8,
+	SCTP_CONNTRACK_HEARTBEAT_ACKED = 9,
+	SCTP_CONNTRACK_MAX = 10,
+};
+
+enum udp_conntrack {
+	UDP_CT_UNREPLIED = 0,
+	UDP_CT_REPLIED = 1,
+	UDP_CT_MAX = 2,
+};
+
+enum gre_conntrack {
+	GRE_CT_UNREPLIED = 0,
+	GRE_CT_REPLIED = 1,
+	GRE_CT_MAX = 2,
+};
+
+struct ct_pcpu {
+	spinlock_t lock;
+	struct hlist_nulls_head unconfirmed;
+	struct hlist_nulls_head dying;
+};
+
+struct nf_flow_table_stat {
+	unsigned int count_wq_add;
+	unsigned int count_wq_del;
+	unsigned int count_wq_stats;
+};
+
+enum {
+	XFRM_POLICY_IN = 0,
+	XFRM_POLICY_OUT = 1,
+	XFRM_POLICY_FWD = 2,
+	XFRM_POLICY_MASK = 3,
+	XFRM_POLICY_MAX = 3,
+};
+
+enum netns_bpf_attach_type {
+	NETNS_BPF_INVALID = 4294967295,
+	NETNS_BPF_FLOW_DISSECTOR = 0,
+	NETNS_BPF_SK_LOOKUP = 1,
+	MAX_NETNS_BPF_ATTACH_TYPE = 2,
+};
+
+struct pipe_buf_operations;
+
+struct pipe_buffer {
+	struct page *page;
+	unsigned int offset;
+	unsigned int len;
+	const struct pipe_buf_operations *ops;
+	unsigned int flags;
+	long unsigned int private;
+};
+
+struct pipe_buf_operations {
+	int (*confirm)(struct pipe_inode_info *, struct pipe_buffer *);
+	void (*release)(struct pipe_inode_info *, struct pipe_buffer *);
+	bool (*try_steal)(struct pipe_inode_info *, struct pipe_buffer *);
+	bool (*get)(struct pipe_inode_info *, struct pipe_buffer *);
+};
+
+struct skb_ext {
+	refcount_t refcnt;
+	u8 offset[4];
+	u8 chunks;
+	long: 0;
+	char data[0];
+};
+
+enum skb_ext_id {
+	SKB_EXT_BRIDGE_NF = 0,
+	SKB_EXT_SEC_PATH = 1,
+	TC_SKB_EXT = 2,
+	SKB_EXT_MPTCP = 3,
+	SKB_EXT_NUM = 4,
+};
+
 struct trace_event_raw_initcall_level {
 	struct trace_entry ent;
 	u32 __data_loc_level;
@@ -8806,119 +10760,10 @@ enum {
 	PROC_TIME_INIT_INO = 4026531834,
 };
 
-typedef __u16 __le16;
-
-typedef __u16 __be16;
-
-typedef __u32 __be32;
-
 typedef __u64 __be64;
 
-typedef __u32 __wsum;
-
 typedef unsigned int slab_flags_t;
 
-struct llist_head {
-	struct llist_node *first;
-};
-
-struct notifier_block;
-
-typedef int (*notifier_fn_t)(struct notifier_block *, long unsigned int, void *);
-
-struct notifier_block {
-	notifier_fn_t notifier_call;
-	struct notifier_block *next;
-	int priority;
-};
-
-struct blocking_notifier_head {
-	struct rw_semaphore rwsem;
-	struct notifier_block *head;
-};
-
-struct raw_notifier_head {
-	struct notifier_block *head;
-};
-
-struct rhash_head {
-	struct rhash_head *next;
-};
-
-struct rhashtable;
-
-struct rhashtable_compare_arg {
-	struct rhashtable *ht;
-	const void *key;
-};
-
-typedef u32 (*rht_hashfn_t)(const void *, u32, u32);
-
-typedef u32 (*rht_obj_hashfn_t)(const void *, u32, u32);
-
-typedef int (*rht_obj_cmpfn_t)(struct rhashtable_compare_arg *, const void *);
-
-struct rhashtable_params {
-	u16 nelem_hint;
-	u16 key_len;
-	u16 key_offset;
-	u16 head_offset;
-	unsigned int max_size;
-	u16 min_size;
-	bool automatic_shrinking;
-	rht_hashfn_t hashfn;
-	rht_obj_hashfn_t obj_hashfn;
-	rht_obj_cmpfn_t obj_cmpfn;
-};
-
-struct bucket_table;
-
-struct rhashtable {
-	struct bucket_table *tbl;
-	unsigned int key_len;
-	unsigned int max_elems;
-	struct rhashtable_params p;
-	bool rhlist;
-	struct work_struct run_work;
-	struct mutex mutex;
-	spinlock_t lock;
-	atomic_t nelems;
-};
-
-struct fs_struct {
-	int users;
-	spinlock_t lock;
-	seqcount_spinlock_t seq;
-	int umask;
-	int in_exec;
-	struct path root;
-	struct path pwd;
-};
-
-struct pipe_buffer;
-
-struct pipe_inode_info {
-	struct mutex mutex;
-	wait_queue_head_t rd_wait;
-	wait_queue_head_t wr_wait;
-	unsigned int head;
-	unsigned int tail;
-	unsigned int max_usage;
-	unsigned int ring_size;
-	unsigned int nr_accounted;
-	unsigned int readers;
-	unsigned int writers;
-	unsigned int files;
-	unsigned int r_counter;
-	unsigned int w_counter;
-	bool poll_usage;
-	struct page *tmp_page;
-	struct fasync_struct *fasync_readers;
-	struct fasync_struct *fasync_writers;
-	struct pipe_buffer *bufs;
-	struct user_struct *user;
-};
-
 typedef __u64 __addrpair;
 
 typedef __u32 __portpair;
@@ -8927,23 +10772,8 @@ typedef struct {
 	struct net *net;
 } possible_net_t;
 
-struct in6_addr {
-	union {
-		__u8 u6_addr8[16];
-		__be16 u6_addr16[8];
-		__be32 u6_addr32[4];
-	} in6_u;
-};
-
-struct hlist_nulls_node {
-	struct hlist_nulls_node *next;
-	struct hlist_nulls_node **pprev;
-};
-
 struct proto;
 
-struct inet_timewait_death_row;
-
 struct sock_common {
 	union {
 		__addrpair skc_addrpair;
@@ -9011,29 +10841,12 @@ typedef struct {
 	wait_queue_head_t wq;
 } socket_lock_t;
 
-struct sk_buff;
-
-struct sk_buff_head {
-	struct sk_buff *next;
-	struct sk_buff *prev;
-	__u32 qlen;
-	spinlock_t lock;
-};
-
 typedef u64 netdev_features_t;
 
 struct sock_cgroup_data {
-	union {
-		struct {
-			u8 is_data: 1;
-			u8 no_refcnt: 1;
-			u8 unused: 6;
-			u8 padding;
-			u16 prioidx;
-			u32 classid;
-		};
-		u64 val;
-	};
+	struct cgroup *cgroup;
+	u32 classid;
+	u16 prioidx;
 };
 
 struct sk_filter;
@@ -9042,14 +10855,10 @@ struct socket_wq;
 
 struct xfrm_policy;
 
-struct dst_entry;
-
 struct socket;
 
 struct sock_reuseport;
 
-struct bpf_local_storage;
-
 struct sock {
 	struct sock_common __sk_common;
 	socket_lock_t sk_lock;
@@ -9068,6 +10877,7 @@ struct sock {
 	unsigned int sk_ll_usec;
 	unsigned int sk_napi_id;
 	int sk_rcvbuf;
+	int sk_wait_pending;
 	struct sk_filter *sk_filter;
 	union {
 		struct socket_wq *sk_wq;
@@ -9075,6 +10885,8 @@ struct sock {
 	};
 	struct xfrm_policy *sk_policy[2];
 	struct dst_entry *sk_rx_dst;
+	int sk_rx_dst_ifindex;
+	u32 sk_rx_dst_cookie;
 	struct dst_entry *sk_dst_cache;
 	atomic_t sk_omem_alloc;
 	int sk_sndbuf;
@@ -9122,14 +10934,17 @@ struct sock {
 	u32 sk_ack_backlog;
 	u32 sk_max_ack_backlog;
 	kuid_t sk_uid;
+	u8 sk_prefer_busy_poll;
+	u16 sk_busy_poll_budget;
 	spinlock_t sk_peer_lock;
 	struct pid *sk_peer_pid;
 	const struct cred *sk_peer_cred;
 	long int sk_rcvtimeo;
 	ktime_t sk_stamp;
 	u16 sk_tsflags;
+	int sk_bind_phc;
 	u8 sk_shutdown;
-	u32 sk_tskey;
+	atomic_t sk_tskey;
 	atomic_t sk_zckey;
 	u8 sk_clockid;
 	u8 sk_txtime_deadline_mode: 1;
@@ -9145,19 +10960,36 @@ struct sock {
 	void (*sk_write_space)(struct sock *);
 	void (*sk_error_report)(struct sock *);
 	int (*sk_backlog_rcv)(struct sock *, struct sk_buff *);
+	struct sk_buff * (*sk_validate_xmit_skb)(struct sock *, struct net_device *, struct sk_buff *);
 	void (*sk_destruct)(struct sock *);
 	struct sock_reuseport *sk_reuseport_cb;
 	struct bpf_local_storage *sk_bpf_storage;
 	struct callback_head sk_rcu;
 };
 
+struct fs_struct {
+	int users;
+	spinlock_t lock;
+	seqcount_spinlock_t seq;
+	int umask;
+	int in_exec;
+	struct path root;
+	struct path pwd;
+};
+
 typedef short unsigned int __kernel_sa_family_t;
 
 typedef __kernel_sa_family_t sa_family_t;
 
 struct sockaddr {
 	sa_family_t sa_family;
-	char sa_data[14];
+	union {
+		char sa_data_min[14];
+		struct {
+			struct {} __empty_sa_data;
+			char sa_data[0];
+		};
+	};
 };
 
 struct msghdr {
@@ -9270,12 +11102,6 @@ struct ifreq {
 	} ifr_ifru;
 };
 
-struct vfsmount {
-	struct dentry *mnt_root;
-	struct super_block *mnt_sb;
-	int mnt_flags;
-};
-
 struct ld_semaphore {
 	atomic_long_t count;
 	raw_spinlock_t wait_lock;
@@ -9330,25 +11156,27 @@ struct tty_struct {
 	struct mutex throttle_mutex;
 	struct rw_semaphore termios_rwsem;
 	struct mutex winsize_mutex;
-	spinlock_t ctrl_lock;
-	spinlock_t flow_lock;
 	struct ktermios termios;
 	struct ktermios termios_locked;
 	char name[64];
-	struct pid *pgrp;
-	struct pid *session;
 	long unsigned int flags;
 	int count;
 	struct winsize winsize;
-	long unsigned int stopped: 1;
-	long unsigned int flow_stopped: 1;
-	long: 30;
-	long unsigned int unused: 62;
+	struct {
+		spinlock_t lock;
+		bool stopped;
+		bool tco_stopped;
+		long unsigned int unused[0];
+	} flow;
+	struct {
+		spinlock_t lock;
+		struct pid *pgrp;
+		struct pid *session;
+		unsigned char pktstatus;
+		bool packet;
+		long unsigned int unused[0];
+	} ctrl;
 	int hw_stopped;
-	long unsigned int ctrl_status: 8;
-	long unsigned int packet: 1;
-	long: 23;
-	long unsigned int unused_ctrl: 55;
 	unsigned int receive_room;
 	int flow_change;
 	struct tty_struct *link;
@@ -9393,6 +11221,31 @@ struct posix_acl {
 	struct posix_acl_entry a_entries[0];
 };
 
+struct tty_buffer {
+	union {
+		struct tty_buffer *next;
+		struct llist_node free;
+	};
+	int used;
+	int size;
+	int commit;
+	int read;
+	int flags;
+	long unsigned int data[0];
+};
+
+struct tty_bufhead {
+	struct tty_buffer *head;
+	struct work_struct work;
+	struct mutex lock;
+	atomic_t priority;
+	struct tty_buffer sentinel;
+	struct llist_head free;
+	atomic_t mem_used;
+	int mem_limit;
+	struct tty_buffer *tail;
+};
+
 struct serial_icounter_struct;
 
 struct serial_struct;
@@ -9408,8 +11261,8 @@ struct tty_operations {
 	int (*write)(struct tty_struct *, const unsigned char *, int);
 	int (*put_char)(struct tty_struct *, unsigned char);
 	void (*flush_chars)(struct tty_struct *);
-	int (*write_room)(struct tty_struct *);
-	int (*chars_in_buffer)(struct tty_struct *);
+	unsigned int (*write_room)(struct tty_struct *);
+	unsigned int (*chars_in_buffer)(struct tty_struct *);
 	int (*ioctl)(struct tty_struct *, unsigned int, long unsigned int);
 	long int (*compat_ioctl)(struct tty_struct *, unsigned int, long unsigned int);
 	void (*set_termios)(struct tty_struct *, struct ktermios *);
@@ -9430,11 +11283,12 @@ struct tty_operations {
 	int (*get_serial)(struct tty_struct *, struct serial_struct *);
 	int (*set_serial)(struct tty_struct *, struct serial_struct *);
 	void (*show_fdinfo)(struct tty_struct *, struct seq_file *);
+	int (*poll_init)(struct tty_driver *, int, char *);
+	int (*poll_get_char)(struct tty_driver *, int);
+	void (*poll_put_char)(struct tty_driver *, int, char);
 	int (*proc_show)(struct seq_file *, void *);
 };
 
-struct proc_dir_entry;
-
 struct tty_driver {
 	int magic;
 	struct kref kref;
@@ -9460,31 +11314,6 @@ struct tty_driver {
 	struct list_head tty_drivers;
 };
 
-struct tty_buffer {
-	union {
-		struct tty_buffer *next;
-		struct llist_node free;
-	};
-	int used;
-	int size;
-	int commit;
-	int read;
-	int flags;
-	long unsigned int data[0];
-};
-
-struct tty_bufhead {
-	struct tty_buffer *head;
-	struct work_struct work;
-	struct mutex lock;
-	atomic_t priority;
-	struct tty_buffer sentinel;
-	struct llist_head free;
-	atomic_t mem_used;
-	int mem_limit;
-	struct tty_buffer *tail;
-};
-
 struct tty_port_operations;
 
 struct tty_port_client_operations;
@@ -9503,7 +11332,6 @@ struct tty_port {
 	long unsigned int flags;
 	long unsigned int iflags;
 	unsigned char console: 1;
-	unsigned char low_latency: 1;
 	struct mutex mutex;
 	struct mutex buf_mutex;
 	unsigned char *xmit_buf;
@@ -9515,7 +11343,6 @@ struct tty_port {
 };
 
 struct tty_ldisc_ops {
-	int magic;
 	char *name;
 	int num;
 	int flags;
@@ -9529,12 +11356,11 @@ struct tty_ldisc_ops {
 	void (*set_termios)(struct tty_struct *, struct ktermios *);
 	__poll_t (*poll)(struct tty_struct *, struct file *, struct poll_table_struct *);
 	int (*hangup)(struct tty_struct *);
-	void (*receive_buf)(struct tty_struct *, const unsigned char *, char *, int);
+	void (*receive_buf)(struct tty_struct *, const unsigned char *, const char *, int);
 	void (*write_wakeup)(struct tty_struct *);
 	void (*dcd_change)(struct tty_struct *, unsigned int);
-	int (*receive_buf2)(struct tty_struct *, const unsigned char *, char *, int);
+	int (*receive_buf2)(struct tty_struct *, const unsigned char *, const char *, int);
 	struct module *owner;
-	int refcount;
 };
 
 struct tty_ldisc {
@@ -9555,774 +11381,6 @@ struct tty_port_client_operations {
 	void (*write_wakeup)(struct tty_port *);
 };
 
-struct prot_inuse;
-
-struct netns_core {
-	struct ctl_table_header *sysctl_hdr;
-	int sysctl_somaxconn;
-	int *sock_inuse;
-	struct prot_inuse *prot_inuse;
-};
-
-struct tcp_mib;
-
-struct ipstats_mib;
-
-struct linux_mib;
-
-struct udp_mib;
-
-struct icmp_mib;
-
-struct icmpmsg_mib;
-
-struct icmpv6_mib;
-
-struct icmpv6msg_mib;
-
-struct linux_xfrm_mib;
-
-struct netns_mib {
-	struct tcp_mib *tcp_statistics;
-	struct ipstats_mib *ip_statistics;
-	struct linux_mib *net_statistics;
-	struct udp_mib *udp_statistics;
-	struct udp_mib *udplite_statistics;
-	struct icmp_mib *icmp_statistics;
-	struct icmpmsg_mib *icmpmsg_statistics;
-	struct proc_dir_entry *proc_net_devsnmp6;
-	struct udp_mib *udp_stats_in6;
-	struct udp_mib *udplite_stats_in6;
-	struct ipstats_mib *ipv6_statistics;
-	struct icmpv6_mib *icmpv6_statistics;
-	struct icmpv6msg_mib *icmpv6msg_statistics;
-	struct linux_xfrm_mib *xfrm_statistics;
-};
-
-struct netns_packet {
-	struct mutex sklist_lock;
-	struct hlist_head sklist;
-};
-
-struct netns_unix {
-	int sysctl_max_dgram_qlen;
-	struct ctl_table_header *ctl;
-};
-
-struct netns_nexthop {
-	struct rb_root rb_root;
-	struct hlist_head *devhash;
-	unsigned int seq;
-	u32 last_id_allocated;
-	struct blocking_notifier_head notifier_chain;
-};
-
-struct local_ports {
-	seqlock_t lock;
-	int range[2];
-	bool warned;
-};
-
-struct inet_hashinfo;
-
-struct inet_timewait_death_row {
-	atomic_t tw_count;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct inet_hashinfo *hashinfo;
-	int sysctl_max_tw_buckets;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct ping_group_range {
-	seqlock_t lock;
-	kgid_t range[2];
-};
-
-typedef struct {
-	u64 key[2];
-} siphash_key_t;
-
-struct ipv4_devconf;
-
-struct ip_ra_chain;
-
-struct fib_rules_ops;
-
-struct fib_table;
-
-struct inet_peer_base;
-
-struct fqdir;
-
-struct xt_table;
-
-struct tcp_congestion_ops;
-
-struct tcp_fastopen_context;
-
-struct fib_notifier_ops;
-
-struct netns_ipv4 {
-	struct ctl_table_header *forw_hdr;
-	struct ctl_table_header *frags_hdr;
-	struct ctl_table_header *ipv4_hdr;
-	struct ctl_table_header *route_hdr;
-	struct ctl_table_header *xfrm4_hdr;
-	struct ipv4_devconf *devconf_all;
-	struct ipv4_devconf *devconf_dflt;
-	struct ip_ra_chain *ra_chain;
-	struct mutex ra_mutex;
-	struct fib_rules_ops *rules_ops;
-	bool fib_has_custom_rules;
-	unsigned int fib_rules_require_fldissect;
-	struct fib_table *fib_main;
-	struct fib_table *fib_default;
-	bool fib_has_custom_local_routes;
-	atomic_t fib_num_tclassid_users;
-	struct hlist_head *fib_table_hash;
-	bool fib_offload_disabled;
-	struct sock *fibnl;
-	struct sock **icmp_sk;
-	struct sock *mc_autojoin_sk;
-	struct inet_peer_base *peers;
-	struct sock **tcp_sk;
-	struct fqdir *fqdir;
-	struct xt_table *iptable_filter;
-	struct xt_table *iptable_mangle;
-	struct xt_table *iptable_raw;
-	struct xt_table *arptable_filter;
-	struct xt_table *iptable_security;
-	struct xt_table *nat_table;
-	int sysctl_icmp_echo_ignore_all;
-	int sysctl_icmp_echo_ignore_broadcasts;
-	int sysctl_icmp_ignore_bogus_error_responses;
-	int sysctl_icmp_ratelimit;
-	int sysctl_icmp_ratemask;
-	int sysctl_icmp_errors_use_inbound_ifaddr;
-	struct local_ports ip_local_ports;
-	int sysctl_tcp_ecn;
-	int sysctl_tcp_ecn_fallback;
-	int sysctl_ip_default_ttl;
-	int sysctl_ip_no_pmtu_disc;
-	int sysctl_ip_fwd_use_pmtu;
-	int sysctl_ip_fwd_update_priority;
-	int sysctl_ip_nonlocal_bind;
-	int sysctl_ip_autobind_reuse;
-	int sysctl_ip_dynaddr;
-	int sysctl_ip_early_demux;
-	int sysctl_raw_l3mdev_accept;
-	int sysctl_tcp_early_demux;
-	int sysctl_udp_early_demux;
-	int sysctl_nexthop_compat_mode;
-	int sysctl_fwmark_reflect;
-	int sysctl_tcp_fwmark_accept;
-	int sysctl_tcp_l3mdev_accept;
-	int sysctl_tcp_mtu_probing;
-	int sysctl_tcp_mtu_probe_floor;
-	int sysctl_tcp_base_mss;
-	int sysctl_tcp_min_snd_mss;
-	int sysctl_tcp_probe_threshold;
-	u32 sysctl_tcp_probe_interval;
-	int sysctl_tcp_keepalive_time;
-	int sysctl_tcp_keepalive_probes;
-	int sysctl_tcp_keepalive_intvl;
-	int sysctl_tcp_syn_retries;
-	int sysctl_tcp_synack_retries;
-	int sysctl_tcp_syncookies;
-	int sysctl_tcp_reordering;
-	int sysctl_tcp_retries1;
-	int sysctl_tcp_retries2;
-	int sysctl_tcp_orphan_retries;
-	int sysctl_tcp_fin_timeout;
-	unsigned int sysctl_tcp_notsent_lowat;
-	int sysctl_tcp_tw_reuse;
-	int sysctl_tcp_sack;
-	int sysctl_tcp_window_scaling;
-	int sysctl_tcp_timestamps;
-	int sysctl_tcp_early_retrans;
-	int sysctl_tcp_recovery;
-	int sysctl_tcp_thin_linear_timeouts;
-	int sysctl_tcp_slow_start_after_idle;
-	int sysctl_tcp_retrans_collapse;
-	int sysctl_tcp_stdurg;
-	int sysctl_tcp_rfc1337;
-	int sysctl_tcp_abort_on_overflow;
-	int sysctl_tcp_fack;
-	int sysctl_tcp_max_reordering;
-	int sysctl_tcp_dsack;
-	int sysctl_tcp_app_win;
-	int sysctl_tcp_adv_win_scale;
-	int sysctl_tcp_frto;
-	int sysctl_tcp_nometrics_save;
-	int sysctl_tcp_no_ssthresh_metrics_save;
-	int sysctl_tcp_moderate_rcvbuf;
-	int sysctl_tcp_tso_win_divisor;
-	int sysctl_tcp_workaround_signed_windows;
-	int sysctl_tcp_limit_output_bytes;
-	int sysctl_tcp_challenge_ack_limit;
-	int sysctl_tcp_min_tso_segs;
-	int sysctl_tcp_min_rtt_wlen;
-	int sysctl_tcp_autocorking;
-	int sysctl_tcp_invalid_ratelimit;
-	int sysctl_tcp_pacing_ss_ratio;
-	int sysctl_tcp_pacing_ca_ratio;
-	int sysctl_tcp_wmem[3];
-	int sysctl_tcp_rmem[3];
-	int sysctl_tcp_comp_sack_nr;
-	long unsigned int sysctl_tcp_comp_sack_delay_ns;
-	long unsigned int sysctl_tcp_comp_sack_slack_ns;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct inet_timewait_death_row tcp_death_row;
-	int sysctl_max_syn_backlog;
-	int sysctl_tcp_fastopen;
-	const struct tcp_congestion_ops *tcp_congestion_control;
-	struct tcp_fastopen_context *tcp_fastopen_ctx;
-	spinlock_t tcp_fastopen_ctx_lock;
-	unsigned int sysctl_tcp_fastopen_blackhole_timeout;
-	atomic_t tfo_active_disable_times;
-	long unsigned int tfo_active_disable_stamp;
-	int sysctl_tcp_reflect_tos;
-	int sysctl_udp_wmem_min;
-	int sysctl_udp_rmem_min;
-	int sysctl_udp_l3mdev_accept;
-	int sysctl_igmp_max_memberships;
-	int sysctl_igmp_max_msf;
-	int sysctl_igmp_llm_reports;
-	int sysctl_igmp_qrv;
-	struct ping_group_range ping_group_range;
-	atomic_t dev_addr_genid;
-	long unsigned int *sysctl_local_reserved_ports;
-	int sysctl_ip_prot_sock;
-	struct list_head mr_tables;
-	struct fib_rules_ops *mr_rules_ops;
-	int sysctl_fib_multipath_use_neigh;
-	int sysctl_fib_multipath_hash_policy;
-	struct fib_notifier_ops *notifier_ops;
-	unsigned int fib_seq;
-	struct fib_notifier_ops *ipmr_notifier_ops;
-	unsigned int ipmr_seq;
-	atomic_t rt_genid;
-	siphash_key_t ip_id_key;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct netns_sysctl_ipv6 {
-	struct ctl_table_header *hdr;
-	struct ctl_table_header *route_hdr;
-	struct ctl_table_header *icmp_hdr;
-	struct ctl_table_header *frags_hdr;
-	struct ctl_table_header *xfrm6_hdr;
-	int bindv6only;
-	int flush_delay;
-	int ip6_rt_max_size;
-	int ip6_rt_gc_min_interval;
-	int ip6_rt_gc_timeout;
-	int ip6_rt_gc_interval;
-	int ip6_rt_gc_elasticity;
-	int ip6_rt_mtu_expires;
-	int ip6_rt_min_advmss;
-	int multipath_hash_policy;
-	int flowlabel_consistency;
-	int auto_flowlabels;
-	int icmpv6_time;
-	int icmpv6_echo_ignore_all;
-	int icmpv6_echo_ignore_multicast;
-	int icmpv6_echo_ignore_anycast;
-	long unsigned int icmpv6_ratemask[4];
-	long unsigned int *icmpv6_ratemask_ptr;
-	int anycast_src_echo_reply;
-	int ip_nonlocal_bind;
-	int fwmark_reflect;
-	int idgen_retries;
-	int idgen_delay;
-	int flowlabel_state_ranges;
-	int flowlabel_reflect;
-	int max_dst_opts_cnt;
-	int max_hbh_opts_cnt;
-	int max_dst_opts_len;
-	int max_hbh_opts_len;
-	int seg6_flowlabel;
-	bool skip_notify_on_dev_down;
-};
-
-struct net_device;
-
-struct neighbour;
-
-struct dst_ops {
-	short unsigned int family;
-	unsigned int gc_thresh;
-	int (*gc)(struct dst_ops *);
-	struct dst_entry * (*check)(struct dst_entry *, __u32);
-	unsigned int (*default_advmss)(const struct dst_entry *);
-	unsigned int (*mtu)(const struct dst_entry *);
-	u32 * (*cow_metrics)(struct dst_entry *, long unsigned int);
-	void (*destroy)(struct dst_entry *);
-	void (*ifdown)(struct dst_entry *, struct net_device *, int);
-	struct dst_entry * (*negative_advice)(struct dst_entry *);
-	void (*link_failure)(struct sk_buff *);
-	void (*update_pmtu)(struct dst_entry *, struct sock *, struct sk_buff *, u32, bool);
-	void (*redirect)(struct dst_entry *, struct sock *, struct sk_buff *);
-	int (*local_out)(struct net *, struct sock *, struct sk_buff *);
-	struct neighbour * (*neigh_lookup)(const struct dst_entry *, struct sk_buff *, const void *);
-	void (*confirm_neigh)(const struct dst_entry *, const void *);
-	struct kmem_cache *kmem_cachep;
-	struct percpu_counter pcpuc_entries;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct ipv6_devconf;
-
-struct fib6_info;
-
-struct rt6_info;
-
-struct rt6_statistics;
-
-struct fib6_table;
-
-struct seg6_pernet_data;
-
-struct netns_ipv6 {
-	struct netns_sysctl_ipv6 sysctl;
-	struct ipv6_devconf *devconf_all;
-	struct ipv6_devconf *devconf_dflt;
-	struct inet_peer_base *peers;
-	struct fqdir *fqdir;
-	struct xt_table *ip6table_filter;
-	struct xt_table *ip6table_mangle;
-	struct xt_table *ip6table_raw;
-	struct xt_table *ip6table_security;
-	struct xt_table *ip6table_nat;
-	struct fib6_info *fib6_null_entry;
-	struct rt6_info *ip6_null_entry;
-	struct rt6_statistics *rt6_stats;
-	struct timer_list ip6_fib_timer;
-	struct hlist_head *fib_table_hash;
-	struct fib6_table *fib6_main_tbl;
-	struct list_head fib6_walkers;
-	long: 64;
-	long: 64;
-	struct dst_ops ip6_dst_ops;
-	rwlock_t fib6_walker_lock;
-	spinlock_t fib6_gc_lock;
-	atomic_t ip6_rt_gc_expire;
-	long unsigned int ip6_rt_last_gc;
-	unsigned char flowlabel_has_excl;
-	bool fib6_has_custom_rules;
-	unsigned int fib6_rules_require_fldissect;
-	unsigned int fib6_routes_require_src;
-	struct rt6_info *ip6_prohibit_entry;
-	struct rt6_info *ip6_blk_hole_entry;
-	struct fib6_table *fib6_local_tbl;
-	struct fib_rules_ops *fib6_rules_ops;
-	struct sock **icmp_sk;
-	struct sock *ndisc_sk;
-	struct sock *tcp_sk;
-	struct sock *igmp_sk;
-	struct sock *mc_autojoin_sk;
-	struct list_head mr6_tables;
-	struct fib_rules_ops *mr6_rules_ops;
-	atomic_t dev_addr_genid;
-	atomic_t fib6_sernum;
-	struct seg6_pernet_data *seg6_data;
-	struct fib_notifier_ops *notifier_ops;
-	struct fib_notifier_ops *ip6mr_notifier_ops;
-	unsigned int ipmr_seq;
-	struct {
-		struct hlist_head head;
-		spinlock_t lock;
-		u32 seq;
-	} ip6addrlbl_table;
-};
-
-struct netns_sysctl_lowpan {
-	struct ctl_table_header *frags_hdr;
-};
-
-struct netns_ieee802154_lowpan {
-	struct netns_sysctl_lowpan sysctl;
-	struct fqdir *fqdir;
-};
-
-struct sctp_mib;
-
-struct netns_sctp {
-	struct sctp_mib *sctp_statistics;
-	struct proc_dir_entry *proc_net_sctp;
-	struct ctl_table_header *sysctl_header;
-	struct sock *ctl_sock;
-	struct list_head local_addr_list;
-	struct list_head addr_waitq;
-	struct timer_list addr_wq_timer;
-	struct list_head auto_asconf_splist;
-	spinlock_t addr_wq_lock;
-	spinlock_t local_addr_lock;
-	unsigned int rto_initial;
-	unsigned int rto_min;
-	unsigned int rto_max;
-	int rto_alpha;
-	int rto_beta;
-	int max_burst;
-	int cookie_preserve_enable;
-	char *sctp_hmac_alg;
-	unsigned int valid_cookie_life;
-	unsigned int sack_timeout;
-	unsigned int hb_interval;
-	int max_retrans_association;
-	int max_retrans_path;
-	int max_retrans_init;
-	int pf_retrans;
-	int ps_retrans;
-	int pf_enable;
-	int pf_expose;
-	int sndbuf_policy;
-	int rcvbuf_policy;
-	int default_auto_asconf;
-	int addip_enable;
-	int addip_noauth;
-	int prsctp_enable;
-	int reconf_enable;
-	int auth_enable;
-	int intl_enable;
-	int ecn_enable;
-	int scope_policy;
-	int rwnd_upd_shift;
-	long unsigned int max_autoclose;
-};
-
-struct netns_dccp {
-	struct sock *v4_ctl_sk;
-	struct sock *v6_ctl_sk;
-};
-
-struct nf_queue_handler;
-
-struct nf_logger;
-
-struct nf_hook_entries;
-
-struct netns_nf {
-	struct proc_dir_entry *proc_netfilter;
-	const struct nf_queue_handler *queue_handler;
-	const struct nf_logger *nf_loggers[13];
-	struct ctl_table_header *nf_log_dir_header;
-	struct nf_hook_entries *hooks_ipv4[5];
-	struct nf_hook_entries *hooks_ipv6[5];
-	struct nf_hook_entries *hooks_arp[3];
-	struct nf_hook_entries *hooks_bridge[5];
-	struct nf_hook_entries *hooks_decnet[7];
-	bool defrag_ipv4;
-	bool defrag_ipv6;
-};
-
-struct ebt_table;
-
-struct netns_xt {
-	struct list_head tables[13];
-	bool notrack_deprecated_warning;
-	bool clusterip_deprecated_warning;
-	struct ebt_table *broute_table;
-	struct ebt_table *frame_filter;
-	struct ebt_table *frame_nat;
-};
-
-struct nf_generic_net {
-	unsigned int timeout;
-};
-
-struct nf_tcp_net {
-	unsigned int timeouts[14];
-	int tcp_loose;
-	int tcp_be_liberal;
-	int tcp_max_retrans;
-};
-
-struct nf_udp_net {
-	unsigned int timeouts[2];
-};
-
-struct nf_icmp_net {
-	unsigned int timeout;
-};
-
-struct nf_dccp_net {
-	int dccp_loose;
-	unsigned int dccp_timeout[10];
-};
-
-struct nf_sctp_net {
-	unsigned int timeouts[10];
-};
-
-struct nf_gre_net {
-	struct list_head keymap_list;
-	unsigned int timeouts[2];
-};
-
-struct nf_ip_net {
-	struct nf_generic_net generic;
-	struct nf_tcp_net tcp;
-	struct nf_udp_net udp;
-	struct nf_icmp_net icmp;
-	struct nf_icmp_net icmpv6;
-	struct nf_dccp_net dccp;
-	struct nf_sctp_net sctp;
-	struct nf_gre_net gre;
-};
-
-struct ct_pcpu;
-
-struct ip_conntrack_stat;
-
-struct nf_ct_event_notifier;
-
-struct nf_exp_event_notifier;
-
-struct netns_ct {
-	atomic_t count;
-	unsigned int expect_count;
-	struct delayed_work ecache_dwork;
-	bool ecache_dwork_pending;
-	bool auto_assign_helper_warned;
-	struct ctl_table_header *sysctl_header;
-	unsigned int sysctl_log_invalid;
-	int sysctl_events;
-	int sysctl_acct;
-	int sysctl_auto_assign_helper;
-	int sysctl_tstamp;
-	int sysctl_checksum;
-	struct ct_pcpu *pcpu_lists;
-	struct ip_conntrack_stat *stat;
-	struct nf_ct_event_notifier *nf_conntrack_event_cb;
-	struct nf_exp_event_notifier *nf_expect_event_cb;
-	struct nf_ip_net nf_ct_proto;
-	unsigned int labels_used;
-};
-
-struct netns_nftables {
-	struct list_head tables;
-	struct list_head commit_list;
-	struct list_head module_list;
-	struct list_head notify_list;
-	struct mutex commit_mutex;
-	unsigned int base_seq;
-	u8 gencursor;
-	u8 validate_state;
-};
-
-struct netns_nf_frag {
-	struct fqdir *fqdir;
-};
-
-struct netns_bpf {
-	struct bpf_prog_array *run_array[2];
-	struct bpf_prog *progs[2];
-	struct list_head links[2];
-};
-
-struct xfrm_policy_hash {
-	struct hlist_head *table;
-	unsigned int hmask;
-	u8 dbits4;
-	u8 sbits4;
-	u8 dbits6;
-	u8 sbits6;
-};
-
-struct xfrm_policy_hthresh {
-	struct work_struct work;
-	seqlock_t lock;
-	u8 lbits4;
-	u8 rbits4;
-	u8 lbits6;
-	u8 rbits6;
-};
-
-struct netns_xfrm {
-	struct list_head state_all;
-	struct hlist_head *state_bydst;
-	struct hlist_head *state_bysrc;
-	struct hlist_head *state_byspi;
-	unsigned int state_hmask;
-	unsigned int state_num;
-	struct work_struct state_hash_work;
-	struct list_head policy_all;
-	struct hlist_head *policy_byidx;
-	unsigned int policy_idx_hmask;
-	struct hlist_head policy_inexact[3];
-	struct xfrm_policy_hash policy_bydst[3];
-	unsigned int policy_count[6];
-	struct work_struct policy_hash_work;
-	struct xfrm_policy_hthresh policy_hthresh;
-	struct list_head inexact_bins;
-	struct sock *nlsk;
-	struct sock *nlsk_stash;
-	u32 sysctl_aevent_etime;
-	u32 sysctl_aevent_rseqth;
-	int sysctl_larval_drop;
-	u32 sysctl_acq_expires;
-	u8 policy_default[3];
-	struct ctl_table_header *sysctl_hdr;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct dst_ops xfrm4_dst_ops;
-	struct dst_ops xfrm6_dst_ops;
-	spinlock_t xfrm_state_lock;
-	seqcount_t xfrm_state_hash_generation;
-	seqcount_spinlock_t xfrm_policy_hash_generation;
-	spinlock_t xfrm_policy_lock;
-	struct mutex xfrm_cfg_mutex;
-	long: 64;
-	long: 64;
-};
-
-struct netns_ipvs;
-
-struct mpls_route;
-
-struct netns_mpls {
-	int ip_ttl_propagate;
-	int default_ttl;
-	size_t platform_labels;
-	struct mpls_route **platform_label;
-	struct ctl_table_header *ctl;
-};
-
-struct can_dev_rcv_lists;
-
-struct can_pkg_stats;
-
-struct can_rcv_lists_stats;
-
-struct netns_can {
-	struct proc_dir_entry *proc_dir;
-	struct proc_dir_entry *pde_stats;
-	struct proc_dir_entry *pde_reset_stats;
-	struct proc_dir_entry *pde_rcvlist_all;
-	struct proc_dir_entry *pde_rcvlist_fil;
-	struct proc_dir_entry *pde_rcvlist_inv;
-	struct proc_dir_entry *pde_rcvlist_sff;
-	struct proc_dir_entry *pde_rcvlist_eff;
-	struct proc_dir_entry *pde_rcvlist_err;
-	struct proc_dir_entry *bcmproc_dir;
-	struct can_dev_rcv_lists *rx_alldev_list;
-	spinlock_t rcvlists_lock;
-	struct timer_list stattimer;
-	struct can_pkg_stats *pkg_stats;
-	struct can_rcv_lists_stats *rcv_lists_stats;
-	struct hlist_head cgw_list;
-};
-
-struct netns_xdp {
-	struct mutex lock;
-	struct hlist_head list;
-};
-
-struct uevent_sock;
-
-struct net_generic;
-
-struct net {
-	refcount_t passive;
-	refcount_t count;
-	spinlock_t rules_mod_lock;
-	unsigned int dev_unreg_count;
-	unsigned int dev_base_seq;
-	int ifindex;
-	spinlock_t nsid_lock;
-	atomic_t fnhe_genid;
-	struct list_head list;
-	struct list_head exit_list;
-	struct llist_node cleanup_list;
-	struct key_tag *key_domain;
-	struct user_namespace *user_ns;
-	struct ucounts *ucounts;
-	struct idr netns_ids;
-	struct ns_common ns;
-	struct list_head dev_base_head;
-	struct proc_dir_entry *proc_net;
-	struct proc_dir_entry *proc_net_stat;
-	struct ctl_table_set sysctls;
-	struct sock *rtnl;
-	struct sock *genl_sock;
-	struct uevent_sock *uevent_sock;
-	struct hlist_head *dev_name_head;
-	struct hlist_head *dev_index_head;
-	struct raw_notifier_head netdev_chain;
-	u32 hash_mix;
-	struct net_device *loopback_dev;
-	struct list_head rules_ops;
-	struct netns_core core;
-	struct netns_mib mib;
-	struct netns_packet packet;
-	struct netns_unix unx;
-	struct netns_nexthop nexthop;
-	long: 64;
-	long: 64;
-	struct netns_ipv4 ipv4;
-	struct netns_ipv6 ipv6;
-	struct netns_ieee802154_lowpan ieee802154_lowpan;
-	struct netns_sctp sctp;
-	struct netns_dccp dccp;
-	struct netns_nf nf;
-	struct netns_xt xt;
-	struct netns_ct ct;
-	struct netns_nftables nft;
-	struct netns_nf_frag nf_frag;
-	struct ctl_table_header *nf_frag_frags_hdr;
-	struct sock *nfnl;
-	struct sock *nfnl_stash;
-	struct list_head nfnl_acct_list;
-	struct list_head nfct_timeout_list;
-	struct sk_buff_head wext_nlevents;
-	struct net_generic *gen;
-	struct netns_bpf bpf;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct netns_xfrm xfrm;
-	atomic64_t net_cookie;
-	struct netns_ipvs *ipvs;
-	struct netns_mpls mpls;
-	struct netns_can can;
-	struct netns_xdp xdp;
-	struct sock *crypto_nlsk;
-	struct sock *diag_nlsk;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
 typedef struct {
 	local64_t v;
 } u64_stats_t;
@@ -10365,6 +11423,7 @@ enum bpf_map_type {
 	BPF_MAP_TYPE_STRUCT_OPS = 26,
 	BPF_MAP_TYPE_RINGBUF = 27,
 	BPF_MAP_TYPE_INODE_STORAGE = 28,
+	BPF_MAP_TYPE_TASK_STORAGE = 29,
 };
 
 enum bpf_prog_type {
@@ -10399,6 +11458,7 @@ enum bpf_prog_type {
 	BPF_PROG_TYPE_EXT = 28,
 	BPF_PROG_TYPE_LSM = 29,
 	BPF_PROG_TYPE_SK_LOOKUP = 30,
+	BPF_PROG_TYPE_SYSCALL = 31,
 };
 
 enum bpf_attach_type {
@@ -10440,7 +11500,11 @@ enum bpf_attach_type {
 	BPF_XDP_CPUMAP = 35,
 	BPF_SK_LOOKUP = 36,
 	BPF_XDP = 37,
-	__MAX_BPF_ATTACH_TYPE = 38,
+	BPF_SK_SKB_VERDICT = 38,
+	BPF_SK_REUSEPORT_SELECT = 39,
+	BPF_SK_REUSEPORT_SELECT_OR_MIGRATE = 40,
+	BPF_PERF_EVENT = 41,
+	__MAX_BPF_ATTACH_TYPE = 42,
 };
 
 union bpf_attr {
@@ -10499,7 +11563,11 @@ union bpf_attr {
 		__u64 line_info;
 		__u32 line_info_cnt;
 		__u32 attach_btf_id;
-		__u32 attach_prog_fd;
+		union {
+			__u32 attach_prog_fd;
+			__u32 attach_btf_obj_fd;
+		};
+		__u64 fd_array;
 	};
 	struct {
 		__u64 pathname;
@@ -10589,6 +11657,9 @@ union bpf_attr {
 				__u64 iter_info;
 				__u32 iter_info_len;
 			};
+			struct {
+				__u64 bpf_cookie;
+			} perf_event;
 		};
 	} link_create;
 	struct {
@@ -10626,6 +11697,14 @@ struct bpf_line_info {
 	__u32 line_col;
 };
 
+typedef struct {
+	union {
+		void *kernel;
+		void *user;
+	};
+	bool is_kernel: 1;
+} sockptr_t;
+
 struct bpf_iter_aux_info;
 
 typedef int (*bpf_iter_init_seq_priv_t)(void *, struct bpf_iter_aux_info *);
@@ -10653,6 +11732,10 @@ struct bpf_prog_aux;
 
 struct bpf_local_storage_map;
 
+struct bpf_verifier_env;
+
+struct bpf_func_state;
+
 struct bpf_map_ops {
 	int (*map_alloc_check)(union bpf_attr *);
 	struct bpf_map * (*map_alloc)(union bpf_attr *);
@@ -10662,6 +11745,7 @@ struct bpf_map_ops {
 	void (*map_release_uref)(struct bpf_map *);
 	void * (*map_lookup_elem_sys_only)(struct bpf_map *, void *);
 	int (*map_lookup_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
+	int (*map_lookup_and_delete_elem)(struct bpf_map *, void *, void *, u64);
 	int (*map_lookup_and_delete_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
 	int (*map_update_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
 	int (*map_delete_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
@@ -10672,7 +11756,7 @@ struct bpf_map_ops {
 	int (*map_pop_elem)(struct bpf_map *, void *);
 	int (*map_peek_elem)(struct bpf_map *, void *);
 	void * (*map_fd_get_ptr)(struct bpf_map *, struct file *, int);
-	void (*map_fd_put_ptr)(void *);
+	void (*map_fd_put_ptr)(struct bpf_map *, void *, bool);
 	int (*map_gen_lookup)(struct bpf_map *, struct bpf_insn *);
 	u32 (*map_fd_sys_lookup_elem)(void *);
 	void (*map_seq_show_elem)(struct bpf_map *, void *, struct seq_file *);
@@ -10687,17 +11771,15 @@ struct bpf_map_ops {
 	int (*map_local_storage_charge)(struct bpf_local_storage_map *, void *, u32);
 	void (*map_local_storage_uncharge)(struct bpf_local_storage_map *, void *, u32);
 	struct bpf_local_storage ** (*map_owner_storage_ptr)(void *);
+	int (*map_redirect)(struct bpf_map *, u32, u64);
 	bool (*map_meta_equal)(const struct bpf_map *, const struct bpf_map *);
+	int (*map_set_for_each_callback_args)(struct bpf_verifier_env *, struct bpf_func_state *, struct bpf_func_state *);
+	int (*map_for_each_callback)(struct bpf_map *, void *, void *, u64);
 	const char * const map_btf_name;
 	int *map_btf_id;
 	const struct bpf_iter_seq_info *iter_seq_info;
 };
 
-struct bpf_map_memory {
-	u32 pages;
-	struct user_struct *user;
-};
-
 struct bpf_map {
 	const struct bpf_map_ops *ops;
 	struct bpf_map *inner_map_meta;
@@ -10708,12 +11790,13 @@ struct bpf_map {
 	u32 max_entries;
 	u32 map_flags;
 	int spin_lock_off;
+	int timer_off;
 	u32 id;
 	int numa_node;
 	u32 btf_key_type_id;
 	u32 btf_value_type_id;
 	struct btf *btf;
-	struct bpf_map_memory memory;
+	struct mem_cgroup *memcg;
 	char name[16];
 	u32 btf_vmlinux_value_type_id;
 	bool bypass_spec_v1;
@@ -10722,10 +11805,13 @@ struct bpf_map {
 	long: 64;
 	atomic64_t refcnt;
 	atomic64_t usercnt;
-	struct work_struct work;
+	union {
+		struct work_struct work;
+		struct callback_head rcu;
+	};
 	struct mutex freeze_mutex;
 	atomic64_t writecnt;
-	long: 64;
+	bool free_after_mult_rcu_gp;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -10757,6 +11843,11 @@ struct btf {
 	refcount_t refcnt;
 	u32 id;
 	struct callback_head rcu;
+	struct btf *base_btf;
+	u32 start_id;
+	u32 start_str_off;
+	char name[56];
+	bool kernel_btf;
 };
 
 struct btf_type {
@@ -10783,17 +11874,20 @@ struct bpf_trampoline;
 
 struct bpf_jit_poke_descriptor;
 
+struct bpf_kfunc_desc_tab;
+
 struct bpf_prog_ops;
 
+struct btf_mod_pair;
+
 struct bpf_prog_offload;
 
 struct bpf_func_info_aux;
 
-struct bpf_prog_stats;
-
 struct bpf_prog_aux {
 	atomic64_t refcnt;
 	u32 used_map_cnt;
+	u32 used_btf_cnt;
 	u32 max_ctx_offset;
 	u32 max_pkt_offset;
 	u32 max_tp_access;
@@ -10805,6 +11899,7 @@ struct bpf_prog_aux {
 	u32 ctx_arg_info_size;
 	u32 max_rdonly_access;
 	u32 max_rdwr_access;
+	struct btf *attach_btf;
 	const struct bpf_ctx_arg_aux *ctx_arg_info;
 	struct mutex dst_mutex;
 	struct bpf_prog *dst_prog;
@@ -10823,11 +11918,13 @@ struct bpf_prog_aux {
 	struct bpf_prog **func;
 	void *jit_data;
 	struct bpf_jit_poke_descriptor *poke_tab;
+	struct bpf_kfunc_desc_tab *kfunc_tab;
 	u32 size_poke_tab;
 	struct bpf_ksym ksym;
 	const struct bpf_prog_ops *ops;
 	struct bpf_map **used_maps;
 	struct mutex used_maps_mutex;
+	struct btf_mod_pair *used_btfs;
 	struct bpf_prog *prog;
 	struct user_struct *user;
 	u64 load_time;
@@ -10845,7 +11942,6 @@ struct bpf_prog_aux {
 	u32 linfo_idx;
 	u32 num_exentries;
 	struct exception_table_entry *extable;
-	struct bpf_prog_stats *stats;
 	union {
 		struct work_struct work;
 		struct callback_head rcu;
@@ -10859,6 +11955,8 @@ struct sock_filter {
 	__u32 k;
 };
 
+struct bpf_prog_stats;
+
 struct sock_fprog_kern;
 
 struct bpf_prog {
@@ -10874,14 +11972,17 @@ struct bpf_prog {
 	u16 has_callchain_buf: 1;
 	u16 enforce_expected_attach_type: 1;
 	u16 call_get_stack: 1;
+	u16 call_get_func_ip: 1;
 	enum bpf_prog_type type;
 	enum bpf_attach_type expected_attach_type;
 	u32 len;
 	u32 jited_len;
 	u8 tag[8];
+	struct bpf_prog_stats *stats;
+	int *active;
+	unsigned int (*bpf_func)(const void *, const struct bpf_insn *);
 	struct bpf_prog_aux *aux;
 	struct sock_fprog_kern *orig_prog;
-	unsigned int (*bpf_func)(const void *, const struct bpf_insn *);
 	struct sock_filter insns[0];
 	struct bpf_insn insnsi[0];
 };
@@ -10907,42 +12008,112 @@ struct bpf_offloaded_map {
 };
 
 struct net_device_stats {
-	long unsigned int rx_packets;
-	long unsigned int tx_packets;
-	long unsigned int rx_bytes;
-	long unsigned int tx_bytes;
-	long unsigned int rx_errors;
-	long unsigned int tx_errors;
-	long unsigned int rx_dropped;
-	long unsigned int tx_dropped;
-	long unsigned int multicast;
-	long unsigned int collisions;
-	long unsigned int rx_length_errors;
-	long unsigned int rx_over_errors;
-	long unsigned int rx_crc_errors;
-	long unsigned int rx_frame_errors;
-	long unsigned int rx_fifo_errors;
-	long unsigned int rx_missed_errors;
-	long unsigned int tx_aborted_errors;
-	long unsigned int tx_carrier_errors;
-	long unsigned int tx_fifo_errors;
-	long unsigned int tx_heartbeat_errors;
-	long unsigned int tx_window_errors;
-	long unsigned int rx_compressed;
-	long unsigned int tx_compressed;
+	union {
+		long unsigned int rx_packets;
+		atomic_long_t __rx_packets;
+	};
+	union {
+		long unsigned int tx_packets;
+		atomic_long_t __tx_packets;
+	};
+	union {
+		long unsigned int rx_bytes;
+		atomic_long_t __rx_bytes;
+	};
+	union {
+		long unsigned int tx_bytes;
+		atomic_long_t __tx_bytes;
+	};
+	union {
+		long unsigned int rx_errors;
+		atomic_long_t __rx_errors;
+	};
+	union {
+		long unsigned int tx_errors;
+		atomic_long_t __tx_errors;
+	};
+	union {
+		long unsigned int rx_dropped;
+		atomic_long_t __rx_dropped;
+	};
+	union {
+		long unsigned int tx_dropped;
+		atomic_long_t __tx_dropped;
+	};
+	union {
+		long unsigned int multicast;
+		atomic_long_t __multicast;
+	};
+	union {
+		long unsigned int collisions;
+		atomic_long_t __collisions;
+	};
+	union {
+		long unsigned int rx_length_errors;
+		atomic_long_t __rx_length_errors;
+	};
+	union {
+		long unsigned int rx_over_errors;
+		atomic_long_t __rx_over_errors;
+	};
+	union {
+		long unsigned int rx_crc_errors;
+		atomic_long_t __rx_crc_errors;
+	};
+	union {
+		long unsigned int rx_frame_errors;
+		atomic_long_t __rx_frame_errors;
+	};
+	union {
+		long unsigned int rx_fifo_errors;
+		atomic_long_t __rx_fifo_errors;
+	};
+	union {
+		long unsigned int rx_missed_errors;
+		atomic_long_t __rx_missed_errors;
+	};
+	union {
+		long unsigned int tx_aborted_errors;
+		atomic_long_t __tx_aborted_errors;
+	};
+	union {
+		long unsigned int tx_carrier_errors;
+		atomic_long_t __tx_carrier_errors;
+	};
+	union {
+		long unsigned int tx_fifo_errors;
+		atomic_long_t __tx_fifo_errors;
+	};
+	union {
+		long unsigned int tx_heartbeat_errors;
+		atomic_long_t __tx_heartbeat_errors;
+	};
+	union {
+		long unsigned int tx_window_errors;
+		atomic_long_t __tx_window_errors;
+	};
+	union {
+		long unsigned int rx_compressed;
+		atomic_long_t __rx_compressed;
+	};
+	union {
+		long unsigned int tx_compressed;
+		atomic_long_t __tx_compressed;
+	};
 };
 
 struct netdev_hw_addr_list {
 	struct list_head list;
 	int count;
+	struct rb_root tree;
 };
 
 struct tipc_bearer;
 
-struct dn_dev;
-
 struct mpls_dev;
 
+struct mctp_dev;
+
 enum rx_handler_result {
 	RX_HANDLER_CONSUMED = 0,
 	RX_HANDLER_ANOTHER = 1,
@@ -10985,12 +12156,12 @@ struct netdev_name_node;
 
 struct dev_ifalias;
 
+struct net_device_ops;
+
 struct iw_handler_def;
 
 struct iw_public_data;
 
-struct net_device_ops;
-
 struct ethtool_ops;
 
 struct l3mdev_ops;
@@ -10999,10 +12170,14 @@ struct ndisc_ops;
 
 struct xfrmdev_ops;
 
+struct tlsdev_ops;
+
 struct header_ops;
 
 struct vlan_info;
 
+struct dsa_port;
+
 struct in_device;
 
 struct inet6_dev;
@@ -11050,7 +12225,6 @@ struct net_device {
 	long unsigned int mem_end;
 	long unsigned int mem_start;
 	long unsigned int base_addr;
-	int irq;
 	long unsigned int state;
 	struct list_head dev_list;
 	struct list_head napi_list;
@@ -11062,6 +12236,15 @@ struct net_device {
 		struct list_head upper;
 		struct list_head lower;
 	} adj_list;
+	unsigned int flags;
+	unsigned int priv_flags;
+	const struct net_device_ops *netdev_ops;
+	int ifindex;
+	short unsigned int gflags;
+	short unsigned int hard_header_len;
+	unsigned int mtu;
+	short unsigned int needed_headroom;
+	short unsigned int needed_tailroom;
 	netdev_features_t features;
 	netdev_features_t hw_features;
 	netdev_features_t wanted_features;
@@ -11069,7 +12252,11 @@ struct net_device {
 	netdev_features_t hw_enc_features;
 	netdev_features_t mpls_features;
 	netdev_features_t gso_partial_features;
-	int ifindex;
+	unsigned int min_mtu;
+	unsigned int max_mtu;
+	short unsigned int type;
+	unsigned char min_header_len;
+	unsigned char name_assign_type;
 	int group;
 	struct net_device_stats stats;
 	atomic_long_t rx_dropped;
@@ -11079,29 +12266,16 @@ struct net_device {
 	atomic_t carrier_down_count;
 	const struct iw_handler_def *wireless_handlers;
 	struct iw_public_data *wireless_data;
-	const struct net_device_ops *netdev_ops;
 	const struct ethtool_ops *ethtool_ops;
 	const struct l3mdev_ops *l3mdev_ops;
 	const struct ndisc_ops *ndisc_ops;
 	const struct xfrmdev_ops *xfrmdev_ops;
+	const struct tlsdev_ops *tlsdev_ops;
 	const struct header_ops *header_ops;
-	unsigned int flags;
-	unsigned int priv_flags;
-	short unsigned int gflags;
-	short unsigned int padded;
 	unsigned char operstate;
 	unsigned char link_mode;
 	unsigned char if_port;
 	unsigned char dma;
-	unsigned int mtu;
-	unsigned int min_mtu;
-	unsigned int max_mtu;
-	short unsigned int type;
-	short unsigned int hard_header_len;
-	unsigned char min_header_len;
-	unsigned char name_assign_type;
-	short unsigned int needed_headroom;
-	short unsigned int needed_tailroom;
 	unsigned char perm_addr[32];
 	unsigned char addr_assign_type;
 	unsigned char addr_len;
@@ -11110,7 +12284,9 @@ struct net_device {
 	short unsigned int neigh_priv_len;
 	short unsigned int dev_id;
 	short unsigned int dev_port;
+	short unsigned int padded;
 	spinlock_t addr_list_lock;
+	int irq;
 	struct netdev_hw_addr_list uc;
 	struct netdev_hw_addr_list mc;
 	struct netdev_hw_addr_list dev_addrs;
@@ -11119,15 +12295,16 @@ struct net_device {
 	unsigned int allmulti;
 	bool uc_promisc;
 	struct vlan_info *vlan_info;
+	struct dsa_port *dsa_ptr;
 	struct tipc_bearer *tipc_ptr;
 	void *atalk_ptr;
 	struct in_device *ip_ptr;
-	struct dn_dev *dn_ptr;
 	struct inet6_dev *ip6_ptr;
 	void *ax25_ptr;
 	struct wireless_dev *ieee80211_ptr;
 	struct wpan_dev *ieee802154_ptr;
 	struct mpls_dev *mpls_ptr;
+	struct mctp_dev *mctp_ptr;
 	unsigned char *dev_addr;
 	struct netdev_rx_queue *_rx;
 	unsigned int num_rx_queues;
@@ -11144,6 +12321,10 @@ struct net_device {
 	struct cpu_rmap *rx_cpu_rmap;
 	struct hlist_node index_hlist;
 	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 	struct netdev_queue *_tx;
 	unsigned int num_tx_queues;
 	unsigned int real_num_tx_queues;
@@ -11151,8 +12332,7 @@ struct net_device {
 	unsigned int tx_queue_len;
 	spinlock_t tx_global_lock;
 	struct xdp_dev_bulk_queue *xdp_bulkq;
-	struct xps_dev_maps *xps_cpus_map;
-	struct xps_dev_maps *xps_rxqs_map;
+	struct xps_dev_maps *xps_maps[2];
 	struct mini_Qdisc *miniq_egress;
 	struct hlist_head qdisc_hash[16];
 	struct timer_list watchdog_timer;
@@ -11205,6 +12385,7 @@ struct net_device {
 	struct lock_class_key *qdisc_running_key;
 	bool proto_down;
 	unsigned int wol_enabled: 1;
+	unsigned int threaded: 1;
 	struct list_head net_notifier_list;
 	const struct macsec_ops *macsec_ops;
 	const struct udp_tunnel_nic_info *udp_tunnel_nic_info;
@@ -11212,6 +12393,7 @@ struct net_device {
 	struct bpf_xdp_entity xdp_state[3];
 	long: 64;
 	long: 64;
+	long: 64;
 };
 
 enum bpf_reg_type {
@@ -11220,29 +12402,29 @@ enum bpf_reg_type {
 	PTR_TO_CTX = 2,
 	CONST_PTR_TO_MAP = 3,
 	PTR_TO_MAP_VALUE = 4,
-	PTR_TO_MAP_VALUE_OR_NULL = 5,
+	PTR_TO_MAP_KEY = 5,
 	PTR_TO_STACK = 6,
 	PTR_TO_PACKET_META = 7,
 	PTR_TO_PACKET = 8,
 	PTR_TO_PACKET_END = 9,
 	PTR_TO_FLOW_KEYS = 10,
 	PTR_TO_SOCKET = 11,
-	PTR_TO_SOCKET_OR_NULL = 12,
-	PTR_TO_SOCK_COMMON = 13,
-	PTR_TO_SOCK_COMMON_OR_NULL = 14,
-	PTR_TO_TCP_SOCK = 15,
-	PTR_TO_TCP_SOCK_OR_NULL = 16,
-	PTR_TO_TP_BUFFER = 17,
-	PTR_TO_XDP_SOCK = 18,
-	PTR_TO_BTF_ID = 19,
-	PTR_TO_BTF_ID_OR_NULL = 20,
-	PTR_TO_MEM = 21,
-	PTR_TO_MEM_OR_NULL = 22,
-	PTR_TO_RDONLY_BUF = 23,
-	PTR_TO_RDONLY_BUF_OR_NULL = 24,
-	PTR_TO_RDWR_BUF = 25,
-	PTR_TO_RDWR_BUF_OR_NULL = 26,
-	PTR_TO_PERCPU_BTF_ID = 27,
+	PTR_TO_SOCK_COMMON = 12,
+	PTR_TO_TCP_SOCK = 13,
+	PTR_TO_TP_BUFFER = 14,
+	PTR_TO_XDP_SOCK = 15,
+	PTR_TO_BTF_ID = 16,
+	PTR_TO_MEM = 17,
+	PTR_TO_BUF = 18,
+	PTR_TO_PERCPU_BTF_ID = 19,
+	PTR_TO_FUNC = 20,
+	__BPF_REG_TYPE_MAX = 21,
+	PTR_TO_MAP_VALUE_OR_NULL = 260,
+	PTR_TO_SOCKET_OR_NULL = 267,
+	PTR_TO_SOCK_COMMON_OR_NULL = 268,
+	PTR_TO_TCP_SOCK_OR_NULL = 269,
+	PTR_TO_BTF_ID_OR_NULL = 272,
+	__BPF_REG_TYPE_LIMIT = 2047,
 };
 
 struct bpf_prog_ops {
@@ -11263,12 +12445,6 @@ struct bpf_prog_offload {
 	u32 jited_len;
 };
 
-struct bpf_prog_stats {
-	u64 cnt;
-	u64 nsecs;
-	struct u64_stats_sync syncp;
-};
-
 struct btf_func_model {
 	u8 ret_size;
 	u8 nr_args;
@@ -11302,6 +12478,7 @@ struct bpf_trampoline {
 	int progs_cnt[3];
 	struct bpf_tramp_image *cur_image;
 	u64 selector;
+	struct module *mod;
 };
 
 struct bpf_func_info_aux {
@@ -11332,126 +12509,9 @@ struct bpf_ctx_arg_aux {
 	u32 btf_id;
 };
 
-typedef unsigned int sk_buff_data_t;
-
-struct skb_ext;
-
-struct sk_buff {
-	union {
-		struct {
-			struct sk_buff *next;
-			struct sk_buff *prev;
-			union {
-				struct net_device *dev;
-				long unsigned int dev_scratch;
-			};
-		};
-		struct rb_node rbnode;
-		struct list_head list;
-	};
-	union {
-		struct sock *sk;
-		int ip_defrag_offset;
-	};
-	union {
-		ktime_t tstamp;
-		u64 skb_mstamp_ns;
-	};
-	char cb[48];
-	union {
-		struct {
-			long unsigned int _skb_refdst;
-			void (*destructor)(struct sk_buff *);
-		};
-		struct list_head tcp_tsorted_anchor;
-	};
-	long unsigned int _nfct;
-	unsigned int len;
-	unsigned int data_len;
-	__u16 mac_len;
-	__u16 hdr_len;
-	__u16 queue_mapping;
-	__u8 __cloned_offset[0];
-	__u8 cloned: 1;
-	__u8 nohdr: 1;
-	__u8 fclone: 2;
-	__u8 peeked: 1;
-	__u8 head_frag: 1;
-	__u8 pfmemalloc: 1;
-	__u8 active_extensions;
-	__u32 headers_start[0];
-	__u8 __pkt_type_offset[0];
-	__u8 pkt_type: 3;
-	__u8 ignore_df: 1;
-	__u8 nf_trace: 1;
-	__u8 ip_summed: 2;
-	__u8 ooo_okay: 1;
-	__u8 l4_hash: 1;
-	__u8 sw_hash: 1;
-	__u8 wifi_acked_valid: 1;
-	__u8 wifi_acked: 1;
-	__u8 no_fcs: 1;
-	__u8 encapsulation: 1;
-	__u8 encap_hdr_csum: 1;
-	__u8 csum_valid: 1;
-	__u8 __pkt_vlan_present_offset[0];
-	__u8 vlan_present: 1;
-	__u8 csum_complete_sw: 1;
-	__u8 csum_level: 2;
-	__u8 csum_not_inet: 1;
-	__u8 dst_pending_confirm: 1;
-	__u8 ndisc_nodetype: 2;
-	__u8 ipvs_property: 1;
-	__u8 inner_protocol_type: 1;
-	__u8 remcsum_offload: 1;
-	__u8 offload_fwd_mark: 1;
-	__u8 offload_l3_fwd_mark: 1;
-	__u8 tc_skip_classify: 1;
-	__u8 tc_at_ingress: 1;
-	__u8 redirected: 1;
-	__u8 from_ingress: 1;
-	__u8 scm_io_uring: 1;
-	__u16 tc_index;
-	union {
-		__wsum csum;
-		struct {
-			__u16 csum_start;
-			__u16 csum_offset;
-		};
-	};
-	__u32 priority;
-	int skb_iif;
-	__u32 hash;
-	__be16 vlan_proto;
-	__u16 vlan_tci;
-	union {
-		unsigned int napi_id;
-		unsigned int sender_cpu;
-	};
-	__u32 secmark;
-	union {
-		__u32 mark;
-		__u32 reserved_tailroom;
-	};
-	union {
-		__be16 inner_protocol;
-		__u8 inner_ipproto;
-	};
-	__u16 inner_transport_header;
-	__u16 inner_network_header;
-	__u16 inner_mac_header;
-	__be16 protocol;
-	__u16 transport_header;
-	__u16 network_header;
-	__u16 mac_header;
-	__u32 headers_end[0];
-	sk_buff_data_t tail;
-	sk_buff_data_t end;
-	unsigned char *head;
-	unsigned char *data;
-	unsigned int truesize;
-	refcount_t users;
-	struct skb_ext *extensions;
+struct btf_mod_pair {
+	struct btf *btf;
+	struct module *module;
 };
 
 struct scatterlist {
@@ -11476,12 +12536,6 @@ enum {
 	Root_SR0 = 11534336,
 };
 
-struct ethhdr {
-	unsigned char h_dest[6];
-	unsigned char h_source[6];
-	__be16 h_proto;
-};
-
 struct flowi_tunnel {
 	__be64 tun_id;
 };
@@ -11489,6 +12543,7 @@ struct flowi_tunnel {
 struct flowi_common {
 	int flowic_oif;
 	int flowic_iif;
+	int flowic_l3mdev;
 	__u32 flowic_mark;
 	__u8 flowic_tos;
 	__u8 flowic_scope;
@@ -11496,8 +12551,8 @@ struct flowi_common {
 	__u8 flowic_flags;
 	__u32 flowic_secid;
 	kuid_t flowic_uid;
-	struct flowi_tunnel flowic_tun_key;
 	__u32 flowic_multipath_hash;
+	struct flowi_tunnel flowic_tun_key;
 };
 
 union flowi_uli {
@@ -11509,11 +12564,6 @@ union flowi_uli {
 		__u8 type;
 		__u8 code;
 	} icmpt;
-	struct {
-		__le16 dport;
-		__le16 sport;
-	} dnports;
-	__be32 spi;
 	__be32 gre_key;
 	struct {
 		__u8 type;
@@ -11536,146 +12586,26 @@ struct flowi6 {
 	__u32 mp_hash;
 };
 
-struct flowidn {
-	struct flowi_common __fl_common;
-	__le16 daddr;
-	__le16 saddr;
-	union flowi_uli uli;
-};
-
 struct flowi {
 	union {
 		struct flowi_common __fl_common;
 		struct flowi4 ip4;
 		struct flowi6 ip6;
-		struct flowidn dn;
 	} u;
 };
 
-struct ipstats_mib {
-	u64 mibs[37];
-	struct u64_stats_sync syncp;
-};
-
-struct icmp_mib {
-	long unsigned int mibs[28];
-};
-
-struct icmpmsg_mib {
-	atomic_long_t mibs[512];
-};
-
-struct icmpv6_mib {
-	long unsigned int mibs[6];
+struct prot_inuse {
+	int val[64];
 };
 
 struct icmpv6_mib_device {
 	atomic_long_t mibs[6];
 };
 
-struct icmpv6msg_mib {
-	atomic_long_t mibs[512];
-};
-
 struct icmpv6msg_mib_device {
 	atomic_long_t mibs[512];
 };
 
-struct tcp_mib {
-	long unsigned int mibs[16];
-};
-
-struct udp_mib {
-	long unsigned int mibs[9];
-};
-
-struct linux_mib {
-	long unsigned int mibs[124];
-};
-
-struct linux_xfrm_mib {
-	long unsigned int mibs[29];
-};
-
-struct inet_frags;
-
-struct fqdir {
-	long int high_thresh;
-	long int low_thresh;
-	int timeout;
-	int max_dist;
-	struct inet_frags *f;
-	struct net *net;
-	bool dead;
-	long: 64;
-	long: 64;
-	struct rhashtable rhashtable;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	atomic_long_t mem;
-	struct work_struct destroy_work;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct inet_frag_queue;
-
-struct inet_frags {
-	unsigned int qsize;
-	void (*constructor)(struct inet_frag_queue *, const void *);
-	void (*destructor)(struct inet_frag_queue *);
-	void (*frag_expire)(struct timer_list *);
-	struct kmem_cache *frags_cachep;
-	const char *frags_cache_name;
-	struct rhashtable_params rhash_params;
-	refcount_t refcnt;
-	struct completion completion;
-};
-
-struct frag_v4_compare_key {
-	__be32 saddr;
-	__be32 daddr;
-	u32 user;
-	u32 vif;
-	__be16 id;
-	u16 protocol;
-};
-
-struct frag_v6_compare_key {
-	struct in6_addr saddr;
-	struct in6_addr daddr;
-	u32 user;
-	__be32 id;
-	u32 iif;
-};
-
-struct inet_frag_queue {
-	struct rhash_head node;
-	union {
-		struct frag_v4_compare_key v4;
-		struct frag_v6_compare_key v6;
-	} key;
-	struct timer_list timer;
-	spinlock_t lock;
-	refcount_t refcnt;
-	struct rb_root rb_fragments;
-	struct sk_buff *fragments_tail;
-	struct sk_buff *last_run_head;
-	ktime_t stamp;
-	int len;
-	int meat;
-	__u8 flags;
-	u16 max_size;
-	struct fqdir *fqdir;
-	struct callback_head rcu;
-};
-
 struct fib_rule;
 
 struct fib_lookup_arg;
@@ -11713,42 +12643,6 @@ struct fib_rules_ops {
 	struct callback_head rcu;
 };
 
-enum tcp_ca_event {
-	CA_EVENT_TX_START = 0,
-	CA_EVENT_CWND_RESTART = 1,
-	CA_EVENT_COMPLETE_CWR = 2,
-	CA_EVENT_LOSS = 3,
-	CA_EVENT_ECN_NO_CE = 4,
-	CA_EVENT_ECN_IS_CE = 5,
-};
-
-struct ack_sample;
-
-struct rate_sample;
-
-union tcp_cc_info;
-
-struct tcp_congestion_ops {
-	struct list_head list;
-	u32 key;
-	u32 flags;
-	void (*init)(struct sock *);
-	void (*release)(struct sock *);
-	u32 (*ssthresh)(struct sock *);
-	void (*cong_avoid)(struct sock *, u32, u32);
-	void (*set_state)(struct sock *, u8);
-	void (*cwnd_event)(struct sock *, enum tcp_ca_event);
-	void (*in_ack_event)(struct sock *, u32);
-	u32 (*undo_cwnd)(struct sock *);
-	void (*pkts_acked)(struct sock *, const struct ack_sample *);
-	u32 (*min_tso_segs)(struct sock *);
-	u32 (*sndbuf_expand)(struct sock *);
-	void (*cong_control)(struct sock *, const struct rate_sample *);
-	size_t (*get_info)(struct sock *, u32, int *, union tcp_cc_info *);
-	char name[16];
-	struct module *owner;
-};
-
 struct fib_notifier_ops {
 	int family;
 	struct list_head list;
@@ -11758,32 +12652,6 @@ struct fib_notifier_ops {
 	struct callback_head rcu;
 };
 
-struct xfrm_state;
-
-struct lwtunnel_state;
-
-struct dst_entry {
-	struct net_device *dev;
-	struct dst_ops *ops;
-	long unsigned int _metrics;
-	long unsigned int expires;
-	struct xfrm_state *xfrm;
-	int (*input)(struct sk_buff *);
-	int (*output)(struct net *, struct sock *, struct sk_buff *);
-	short unsigned int flags;
-	short int obsolete;
-	short unsigned int header_len;
-	short unsigned int trailer_len;
-	atomic_t __refcnt;
-	int __use;
-	long unsigned int lastuse;
-	struct lwtunnel_state *lwtstate;
-	struct callback_head callback_head;
-	short int error;
-	short int __pad;
-	__u32 tclassid;
-};
-
 struct hh_cache {
 	unsigned int hh_len;
 	seqlock_t hh_lock;
@@ -11853,7 +12721,9 @@ struct ipv6_devconf {
 	__s32 max_desync_factor;
 	__s32 max_addresses;
 	__s32 accept_ra_defrtr;
+	__u32 ra_defrtr_metric;
 	__s32 accept_ra_min_hop_limit;
+	__s32 accept_ra_min_lft;
 	__s32 accept_ra_pinfo;
 	__s32 ignore_routes_with_linkdown;
 	__s32 accept_ra_rtr_pref;
@@ -11863,8 +12733,6 @@ struct ipv6_devconf {
 	__s32 proxy_ndp;
 	__s32 accept_source_route;
 	__s32 accept_ra_from_local;
-	__s32 optimistic_dad;
-	__s32 use_optimistic;
 	atomic_t mc_forwarding;
 	__s32 disable_ipv6;
 	__s32 drop_unicast_in_l2_multicast;
@@ -11884,68 +12752,12 @@ struct ipv6_devconf {
 	__s32 disable_policy;
 	__s32 ndisc_tclass;
 	__s32 rpl_seg_enabled;
+	__u32 ioam6_id;
+	__u32 ioam6_id_wide;
+	__u8 ioam6_enabled;
 	struct ctl_table_header *sysctl_header;
 };
 
-struct nf_queue_entry;
-
-struct nf_queue_handler {
-	int (*outfn)(struct nf_queue_entry *, unsigned int);
-	void (*nf_hook_drop)(struct net *);
-};
-
-enum nf_log_type {
-	NF_LOG_TYPE_LOG = 0,
-	NF_LOG_TYPE_ULOG = 1,
-	NF_LOG_TYPE_MAX = 2,
-};
-
-typedef u8 u_int8_t;
-
-struct nf_loginfo;
-
-typedef void nf_logfn(struct net *, u_int8_t, unsigned int, const struct sk_buff *, const struct net_device *, const struct net_device *, const struct nf_loginfo *, const char *);
-
-struct nf_logger {
-	char *name;
-	enum nf_log_type type;
-	nf_logfn *logfn;
-	struct module *me;
-};
-
-struct hlist_nulls_head {
-	struct hlist_nulls_node *first;
-};
-
-struct ip_conntrack_stat {
-	unsigned int found;
-	unsigned int invalid;
-	unsigned int insert;
-	unsigned int insert_failed;
-	unsigned int clash_resolve;
-	unsigned int drop;
-	unsigned int early_drop;
-	unsigned int error;
-	unsigned int expect_new;
-	unsigned int expect_create;
-	unsigned int expect_delete;
-	unsigned int search_restart;
-};
-
-struct ct_pcpu {
-	spinlock_t lock;
-	struct hlist_nulls_head unconfirmed;
-	struct hlist_nulls_head dying;
-};
-
-typedef struct {
-	union {
-		void *kernel;
-		void *user;
-	};
-	bool is_kernel: 1;
-} sockptr_t;
-
 typedef enum {
 	SS_FREE = 0,
 	SS_UNCONNECTED = 1,
@@ -11981,7 +12793,6 @@ typedef int (*sk_read_actor_t)(read_descriptor_t *, struct sk_buff *, unsigned i
 
 struct proto_ops {
 	int family;
-	unsigned int flags;
 	struct module *owner;
 	int (*release)(struct socket *);
 	int (*bind)(struct socket *, struct sockaddr *, int);
@@ -12011,32 +12822,6 @@ struct proto_ops {
 	int (*set_rcvlowat)(struct sock *, int);
 };
 
-struct pipe_buf_operations;
-
-struct pipe_buffer {
-	struct page *page;
-	unsigned int offset;
-	unsigned int len;
-	const struct pipe_buf_operations *ops;
-	unsigned int flags;
-	long unsigned int private;
-};
-
-struct pipe_buf_operations {
-	int (*confirm)(struct pipe_inode_info *, struct pipe_buffer *);
-	void (*release)(struct pipe_inode_info *, struct pipe_buffer *);
-	bool (*try_steal)(struct pipe_inode_info *, struct pipe_buffer *);
-	bool (*get)(struct pipe_inode_info *, struct pipe_buffer *);
-};
-
-struct skb_ext {
-	refcount_t refcnt;
-	u8 offset[2];
-	u8 chunks;
-	long: 0;
-	char data[0];
-};
-
 struct dql {
 	unsigned int num_queued;
 	unsigned int adj_limit;
@@ -12061,437 +12846,6 @@ struct dql {
 	long: 64;
 };
 
-struct ethtool_drvinfo {
-	__u32 cmd;
-	char driver[32];
-	char version[32];
-	char fw_version[32];
-	char bus_info[32];
-	char erom_version[32];
-	char reserved2[12];
-	__u32 n_priv_flags;
-	__u32 n_stats;
-	__u32 testinfo_len;
-	__u32 eedump_len;
-	__u32 regdump_len;
-};
-
-struct ethtool_wolinfo {
-	__u32 cmd;
-	__u32 supported;
-	__u32 wolopts;
-	__u8 sopass[6];
-};
-
-struct ethtool_tunable {
-	__u32 cmd;
-	__u32 id;
-	__u32 type_id;
-	__u32 len;
-	void *data[0];
-};
-
-struct ethtool_regs {
-	__u32 cmd;
-	__u32 version;
-	__u32 len;
-	__u8 data[0];
-};
-
-struct ethtool_eeprom {
-	__u32 cmd;
-	__u32 magic;
-	__u32 offset;
-	__u32 len;
-	__u8 data[0];
-};
-
-struct ethtool_eee {
-	__u32 cmd;
-	__u32 supported;
-	__u32 advertised;
-	__u32 lp_advertised;
-	__u32 eee_active;
-	__u32 eee_enabled;
-	__u32 tx_lpi_enabled;
-	__u32 tx_lpi_timer;
-	__u32 reserved[2];
-};
-
-struct ethtool_modinfo {
-	__u32 cmd;
-	__u32 type;
-	__u32 eeprom_len;
-	__u32 reserved[8];
-};
-
-struct ethtool_coalesce {
-	__u32 cmd;
-	__u32 rx_coalesce_usecs;
-	__u32 rx_max_coalesced_frames;
-	__u32 rx_coalesce_usecs_irq;
-	__u32 rx_max_coalesced_frames_irq;
-	__u32 tx_coalesce_usecs;
-	__u32 tx_max_coalesced_frames;
-	__u32 tx_coalesce_usecs_irq;
-	__u32 tx_max_coalesced_frames_irq;
-	__u32 stats_block_coalesce_usecs;
-	__u32 use_adaptive_rx_coalesce;
-	__u32 use_adaptive_tx_coalesce;
-	__u32 pkt_rate_low;
-	__u32 rx_coalesce_usecs_low;
-	__u32 rx_max_coalesced_frames_low;
-	__u32 tx_coalesce_usecs_low;
-	__u32 tx_max_coalesced_frames_low;
-	__u32 pkt_rate_high;
-	__u32 rx_coalesce_usecs_high;
-	__u32 rx_max_coalesced_frames_high;
-	__u32 tx_coalesce_usecs_high;
-	__u32 tx_max_coalesced_frames_high;
-	__u32 rate_sample_interval;
-};
-
-struct ethtool_ringparam {
-	__u32 cmd;
-	__u32 rx_max_pending;
-	__u32 rx_mini_max_pending;
-	__u32 rx_jumbo_max_pending;
-	__u32 tx_max_pending;
-	__u32 rx_pending;
-	__u32 rx_mini_pending;
-	__u32 rx_jumbo_pending;
-	__u32 tx_pending;
-};
-
-struct ethtool_channels {
-	__u32 cmd;
-	__u32 max_rx;
-	__u32 max_tx;
-	__u32 max_other;
-	__u32 max_combined;
-	__u32 rx_count;
-	__u32 tx_count;
-	__u32 other_count;
-	__u32 combined_count;
-};
-
-struct ethtool_pauseparam {
-	__u32 cmd;
-	__u32 autoneg;
-	__u32 rx_pause;
-	__u32 tx_pause;
-};
-
-enum ethtool_link_ext_state {
-	ETHTOOL_LINK_EXT_STATE_AUTONEG = 0,
-	ETHTOOL_LINK_EXT_STATE_LINK_TRAINING_FAILURE = 1,
-	ETHTOOL_LINK_EXT_STATE_LINK_LOGICAL_MISMATCH = 2,
-	ETHTOOL_LINK_EXT_STATE_BAD_SIGNAL_INTEGRITY = 3,
-	ETHTOOL_LINK_EXT_STATE_NO_CABLE = 4,
-	ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE = 5,
-	ETHTOOL_LINK_EXT_STATE_EEPROM_ISSUE = 6,
-	ETHTOOL_LINK_EXT_STATE_CALIBRATION_FAILURE = 7,
-	ETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED = 8,
-	ETHTOOL_LINK_EXT_STATE_OVERHEAT = 9,
-};
-
-enum ethtool_link_ext_substate_autoneg {
-	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED = 1,
-	ETHTOOL_LINK_EXT_SUBSTATE_AN_ACK_NOT_RECEIVED = 2,
-	ETHTOOL_LINK_EXT_SUBSTATE_AN_NEXT_PAGE_EXCHANGE_FAILED = 3,
-	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED_FORCE_MODE = 4,
-	ETHTOOL_LINK_EXT_SUBSTATE_AN_FEC_MISMATCH_DURING_OVERRIDE = 5,
-	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_HCD = 6,
-};
-
-enum ethtool_link_ext_substate_link_training {
-	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_FRAME_LOCK_NOT_ACQUIRED = 1,
-	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_INHIBIT_TIMEOUT = 2,
-	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_PARTNER_DID_NOT_SET_RECEIVER_READY = 3,
-	ETHTOOL_LINK_EXT_SUBSTATE_LT_REMOTE_FAULT = 4,
-};
-
-enum ethtool_link_ext_substate_link_logical_mismatch {
-	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_BLOCK_LOCK = 1,
-	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_AM_LOCK = 2,
-	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_GET_ALIGN_STATUS = 3,
-	ETHTOOL_LINK_EXT_SUBSTATE_LLM_FC_FEC_IS_NOT_LOCKED = 4,
-	ETHTOOL_LINK_EXT_SUBSTATE_LLM_RS_FEC_IS_NOT_LOCKED = 5,
-};
-
-enum ethtool_link_ext_substate_bad_signal_integrity {
-	ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS = 1,
-	ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE = 2,
-};
-
-enum ethtool_link_ext_substate_cable_issue {
-	ETHTOOL_LINK_EXT_SUBSTATE_CI_UNSUPPORTED_CABLE = 1,
-	ETHTOOL_LINK_EXT_SUBSTATE_CI_CABLE_TEST_FAILURE = 2,
-};
-
-struct ethtool_test {
-	__u32 cmd;
-	__u32 flags;
-	__u32 reserved;
-	__u32 len;
-	__u64 data[0];
-};
-
-struct ethtool_stats {
-	__u32 cmd;
-	__u32 n_stats;
-	__u64 data[0];
-};
-
-struct ethtool_tcpip4_spec {
-	__be32 ip4src;
-	__be32 ip4dst;
-	__be16 psrc;
-	__be16 pdst;
-	__u8 tos;
-};
-
-struct ethtool_ah_espip4_spec {
-	__be32 ip4src;
-	__be32 ip4dst;
-	__be32 spi;
-	__u8 tos;
-};
-
-struct ethtool_usrip4_spec {
-	__be32 ip4src;
-	__be32 ip4dst;
-	__be32 l4_4_bytes;
-	__u8 tos;
-	__u8 ip_ver;
-	__u8 proto;
-};
-
-struct ethtool_tcpip6_spec {
-	__be32 ip6src[4];
-	__be32 ip6dst[4];
-	__be16 psrc;
-	__be16 pdst;
-	__u8 tclass;
-};
-
-struct ethtool_ah_espip6_spec {
-	__be32 ip6src[4];
-	__be32 ip6dst[4];
-	__be32 spi;
-	__u8 tclass;
-};
-
-struct ethtool_usrip6_spec {
-	__be32 ip6src[4];
-	__be32 ip6dst[4];
-	__be32 l4_4_bytes;
-	__u8 tclass;
-	__u8 l4_proto;
-};
-
-union ethtool_flow_union {
-	struct ethtool_tcpip4_spec tcp_ip4_spec;
-	struct ethtool_tcpip4_spec udp_ip4_spec;
-	struct ethtool_tcpip4_spec sctp_ip4_spec;
-	struct ethtool_ah_espip4_spec ah_ip4_spec;
-	struct ethtool_ah_espip4_spec esp_ip4_spec;
-	struct ethtool_usrip4_spec usr_ip4_spec;
-	struct ethtool_tcpip6_spec tcp_ip6_spec;
-	struct ethtool_tcpip6_spec udp_ip6_spec;
-	struct ethtool_tcpip6_spec sctp_ip6_spec;
-	struct ethtool_ah_espip6_spec ah_ip6_spec;
-	struct ethtool_ah_espip6_spec esp_ip6_spec;
-	struct ethtool_usrip6_spec usr_ip6_spec;
-	struct ethhdr ether_spec;
-	__u8 hdata[52];
-};
-
-struct ethtool_flow_ext {
-	__u8 padding[2];
-	unsigned char h_dest[6];
-	__be16 vlan_etype;
-	__be16 vlan_tci;
-	__be32 data[2];
-};
-
-struct ethtool_rx_flow_spec {
-	__u32 flow_type;
-	union ethtool_flow_union h_u;
-	struct ethtool_flow_ext h_ext;
-	union ethtool_flow_union m_u;
-	struct ethtool_flow_ext m_ext;
-	__u64 ring_cookie;
-	__u32 location;
-};
-
-struct ethtool_rxnfc {
-	__u32 cmd;
-	__u32 flow_type;
-	__u64 data;
-	struct ethtool_rx_flow_spec fs;
-	union {
-		__u32 rule_cnt;
-		__u32 rss_context;
-	};
-	__u32 rule_locs[0];
-};
-
-struct ethtool_flash {
-	__u32 cmd;
-	__u32 region;
-	char data[128];
-};
-
-struct ethtool_dump {
-	__u32 cmd;
-	__u32 version;
-	__u32 flag;
-	__u32 len;
-	__u8 data[0];
-};
-
-struct ethtool_ts_info {
-	__u32 cmd;
-	__u32 so_timestamping;
-	__s32 phc_index;
-	__u32 tx_types;
-	__u32 tx_reserved[3];
-	__u32 rx_filters;
-	__u32 rx_reserved[3];
-};
-
-struct ethtool_fecparam {
-	__u32 cmd;
-	__u32 active_fec;
-	__u32 fec;
-	__u32 reserved;
-};
-
-struct ethtool_link_settings {
-	__u32 cmd;
-	__u32 speed;
-	__u8 duplex;
-	__u8 port;
-	__u8 phy_address;
-	__u8 autoneg;
-	__u8 mdio_support;
-	__u8 eth_tp_mdix;
-	__u8 eth_tp_mdix_ctrl;
-	__s8 link_mode_masks_nwords;
-	__u8 transceiver;
-	__u8 master_slave_cfg;
-	__u8 master_slave_state;
-	__u8 reserved1[1];
-	__u32 reserved[7];
-	__u32 link_mode_masks[0];
-};
-
-enum ethtool_phys_id_state {
-	ETHTOOL_ID_INACTIVE = 0,
-	ETHTOOL_ID_ACTIVE = 1,
-	ETHTOOL_ID_ON = 2,
-	ETHTOOL_ID_OFF = 3,
-};
-
-struct ethtool_link_ext_state_info {
-	enum ethtool_link_ext_state link_ext_state;
-	union {
-		enum ethtool_link_ext_substate_autoneg autoneg;
-		enum ethtool_link_ext_substate_link_training link_training;
-		enum ethtool_link_ext_substate_link_logical_mismatch link_logical_mismatch;
-		enum ethtool_link_ext_substate_bad_signal_integrity bad_signal_integrity;
-		enum ethtool_link_ext_substate_cable_issue cable_issue;
-		u8 __link_ext_substate;
-	};
-};
-
-struct ethtool_link_ksettings {
-	struct ethtool_link_settings base;
-	struct {
-		long unsigned int supported[2];
-		long unsigned int advertising[2];
-		long unsigned int lp_advertising[2];
-	} link_modes;
-};
-
-struct ethtool_pause_stats {
-	u64 tx_pause_frames;
-	u64 rx_pause_frames;
-};
-
-struct ethtool_ops {
-	u32 supported_coalesce_params;
-	void (*get_drvinfo)(struct net_device *, struct ethtool_drvinfo *);
-	int (*get_regs_len)(struct net_device *);
-	void (*get_regs)(struct net_device *, struct ethtool_regs *, void *);
-	void (*get_wol)(struct net_device *, struct ethtool_wolinfo *);
-	int (*set_wol)(struct net_device *, struct ethtool_wolinfo *);
-	u32 (*get_msglevel)(struct net_device *);
-	void (*set_msglevel)(struct net_device *, u32);
-	int (*nway_reset)(struct net_device *);
-	u32 (*get_link)(struct net_device *);
-	int (*get_link_ext_state)(struct net_device *, struct ethtool_link_ext_state_info *);
-	int (*get_eeprom_len)(struct net_device *);
-	int (*get_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
-	int (*set_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
-	int (*get_coalesce)(struct net_device *, struct ethtool_coalesce *);
-	int (*set_coalesce)(struct net_device *, struct ethtool_coalesce *);
-	void (*get_ringparam)(struct net_device *, struct ethtool_ringparam *);
-	int (*set_ringparam)(struct net_device *, struct ethtool_ringparam *);
-	void (*get_pause_stats)(struct net_device *, struct ethtool_pause_stats *);
-	void (*get_pauseparam)(struct net_device *, struct ethtool_pauseparam *);
-	int (*set_pauseparam)(struct net_device *, struct ethtool_pauseparam *);
-	void (*self_test)(struct net_device *, struct ethtool_test *, u64 *);
-	void (*get_strings)(struct net_device *, u32, u8 *);
-	int (*set_phys_id)(struct net_device *, enum ethtool_phys_id_state);
-	void (*get_ethtool_stats)(struct net_device *, struct ethtool_stats *, u64 *);
-	int (*begin)(struct net_device *);
-	void (*complete)(struct net_device *);
-	u32 (*get_priv_flags)(struct net_device *);
-	int (*set_priv_flags)(struct net_device *, u32);
-	int (*get_sset_count)(struct net_device *, int);
-	int (*get_rxnfc)(struct net_device *, struct ethtool_rxnfc *, u32 *);
-	int (*set_rxnfc)(struct net_device *, struct ethtool_rxnfc *);
-	int (*flash_device)(struct net_device *, struct ethtool_flash *);
-	int (*reset)(struct net_device *, u32 *);
-	u32 (*get_rxfh_key_size)(struct net_device *);
-	u32 (*get_rxfh_indir_size)(struct net_device *);
-	int (*get_rxfh)(struct net_device *, u32 *, u8 *, u8 *);
-	int (*set_rxfh)(struct net_device *, const u32 *, const u8 *, const u8);
-	int (*get_rxfh_context)(struct net_device *, u32 *, u8 *, u8 *, u32);
-	int (*set_rxfh_context)(struct net_device *, const u32 *, const u8 *, const u8, u32 *, bool);
-	void (*get_channels)(struct net_device *, struct ethtool_channels *);
-	int (*set_channels)(struct net_device *, struct ethtool_channels *);
-	int (*get_dump_flag)(struct net_device *, struct ethtool_dump *);
-	int (*get_dump_data)(struct net_device *, struct ethtool_dump *, void *);
-	int (*set_dump)(struct net_device *, struct ethtool_dump *);
-	int (*get_ts_info)(struct net_device *, struct ethtool_ts_info *);
-	int (*get_module_info)(struct net_device *, struct ethtool_modinfo *);
-	int (*get_module_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
-	int (*get_eee)(struct net_device *, struct ethtool_eee *);
-	int (*set_eee)(struct net_device *, struct ethtool_eee *);
-	int (*get_tunable)(struct net_device *, const struct ethtool_tunable *, void *);
-	int (*set_tunable)(struct net_device *, const struct ethtool_tunable *, const void *);
-	int (*get_per_queue_coalesce)(struct net_device *, u32, struct ethtool_coalesce *);
-	int (*set_per_queue_coalesce)(struct net_device *, u32, struct ethtool_coalesce *);
-	int (*get_link_ksettings)(struct net_device *, struct ethtool_link_ksettings *);
-	int (*set_link_ksettings)(struct net_device *, const struct ethtool_link_ksettings *);
-	int (*get_fecparam)(struct net_device *, struct ethtool_fecparam *);
-	int (*set_fecparam)(struct net_device *, struct ethtool_fecparam *);
-	void (*get_ethtool_phy_stats)(struct net_device *, struct ethtool_stats *, u64 *);
-	int (*get_phy_tunable)(struct net_device *, const struct ethtool_tunable *, void *);
-	int (*set_phy_tunable)(struct net_device *, const struct ethtool_tunable *, const void *);
-};
-
-struct netlink_ext_ack {
-	const char *_msg;
-	const struct nlattr *bad_attr;
-	const struct nla_policy *policy;
-	u8 cookie[20];
-	u8 cookie_len;
-};
-
 struct ieee_ets {
 	__u8 willing;
 	__u8 ets_cap;
@@ -12639,11 +12993,25 @@ struct xdp_rxq_info {
 	u32 queue_index;
 	u32 reg_state;
 	struct xdp_mem_info mem;
+	unsigned int napi_id;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
+};
+
+struct xdp_txq_info {
+	struct net_device *dev;
+};
+
+struct xdp_buff {
+	void *data;
+	void *data_end;
+	void *data_meta;
+	void *data_hard_start;
+	struct xdp_rxq_info *rxq;
+	struct xdp_txq_info *txq;
+	u32 frame_sz;
 };
 
 struct xdp_frame {
@@ -12669,6 +13037,14 @@ struct nlattr {
 	__u16 nla_type;
 };
 
+struct netlink_ext_ack {
+	const char *_msg;
+	const struct nlattr *bad_attr;
+	const struct nla_policy *policy;
+	u8 cookie[20];
+	u8 cookie_len;
+};
+
 struct netlink_range_validation;
 
 struct netlink_range_validation_signed;
@@ -12900,12 +13276,12 @@ struct Qdisc {
 	struct sk_buff_head skb_bad_txq;
 	spinlock_t busylock;
 	spinlock_t seqlock;
-	bool empty;
 	struct callback_head rcu;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
+	long: 64;
 	long int privdata[0];
 };
 
@@ -12928,24 +13304,16 @@ struct rps_dev_flow_table {
 };
 
 struct netdev_rx_queue {
+	struct xdp_rxq_info xdp_rxq;
 	struct rps_map *rps_map;
 	struct rps_dev_flow_table *rps_flow_table;
 	struct kobject kobj;
 	struct net_device *dev;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct xdp_rxq_info xdp_rxq;
 	struct xsk_buff_pool *pool;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
 };
 
 struct xps_map {
@@ -12957,6 +13325,8 @@ struct xps_map {
 
 struct xps_dev_maps {
 	struct callback_head rcu;
+	unsigned int nr_ids;
+	s16 num_tc;
 	struct xps_map *attr_map[0];
 };
 
@@ -12976,6 +13346,50 @@ struct netdev_phys_item_id {
 	unsigned char id_len;
 };
 
+enum net_device_path_type {
+	DEV_PATH_ETHERNET = 0,
+	DEV_PATH_VLAN = 1,
+	DEV_PATH_BRIDGE = 2,
+	DEV_PATH_PPPOE = 3,
+	DEV_PATH_DSA = 4,
+};
+
+struct net_device_path {
+	enum net_device_path_type type;
+	const struct net_device *dev;
+	union {
+		struct {
+			u16 id;
+			__be16 proto;
+			u8 h_dest[6];
+		} encap;
+		struct {
+			enum {
+				DEV_PATH_BR_VLAN_KEEP = 0,
+				DEV_PATH_BR_VLAN_TAG = 1,
+				DEV_PATH_BR_VLAN_UNTAG = 2,
+				DEV_PATH_BR_VLAN_UNTAG_HW = 3,
+			} vlan_mode;
+			u16 vlan_id;
+			__be16 vlan_proto;
+		} bridge;
+		struct {
+			int port;
+			u16 proto;
+		} dsa;
+	};
+};
+
+struct net_device_path_ctx {
+	const struct net_device *dev;
+	u8 daddr[6];
+	int num_vlans;
+	struct {
+		u16 id;
+		__be16 proto;
+	} vlan[2];
+};
+
 enum tc_setup_type {
 	TC_SETUP_QDISC_MQPRIO = 0,
 	TC_SETUP_CLSU32 = 1,
@@ -12995,6 +13409,7 @@ enum tc_setup_type {
 	TC_SETUP_QDISC_ETS = 15,
 	TC_SETUP_QDISC_TBF = 16,
 	TC_SETUP_QDISC_FIFO = 17,
+	TC_SETUP_QDISC_HTB = 18,
 };
 
 enum bpf_netdev_command {
@@ -13043,8 +13458,6 @@ struct netdev_name_node {
 	const char *name;
 };
 
-struct udp_tunnel_info;
-
 struct devlink_port;
 
 struct ip_tunnel_parm;
@@ -13062,6 +13475,10 @@ struct net_device_ops {
 	int (*ndo_set_mac_address)(struct net_device *, void *);
 	int (*ndo_validate_addr)(struct net_device *);
 	int (*ndo_do_ioctl)(struct net_device *, struct ifreq *, int);
+	int (*ndo_eth_ioctl)(struct net_device *, struct ifreq *, int);
+	int (*ndo_siocbond)(struct net_device *, struct ifreq *, int);
+	int (*ndo_siocwandev)(struct net_device *, struct if_settings *);
+	int (*ndo_siocdevprivate)(struct net_device *, struct ifreq *, void *, int);
 	int (*ndo_set_config)(struct net_device *, struct ifmap *);
 	int (*ndo_change_mtu)(struct net_device *, int);
 	int (*ndo_neigh_setup)(struct net_device *, struct neigh_parms *);
@@ -13100,6 +13517,7 @@ struct net_device_ops {
 	int (*ndo_add_slave)(struct net_device *, struct net_device *, struct netlink_ext_ack *);
 	int (*ndo_del_slave)(struct net_device *, struct net_device *);
 	struct net_device * (*ndo_get_xmit_slave)(struct net_device *, struct sk_buff *, bool);
+	struct net_device * (*ndo_sk_get_lower_dev)(struct net_device *, struct sock *);
 	netdev_features_t (*ndo_fix_features)(struct net_device *, netdev_features_t);
 	int (*ndo_set_features)(struct net_device *, netdev_features_t);
 	int (*ndo_neigh_construct)(struct net_device *, struct neighbour *);
@@ -13115,8 +13533,6 @@ struct net_device_ops {
 	int (*ndo_get_phys_port_id)(struct net_device *, struct netdev_phys_item_id *);
 	int (*ndo_get_port_parent_id)(struct net_device *, struct netdev_phys_item_id *);
 	int (*ndo_get_phys_port_name)(struct net_device *, char *, size_t);
-	void (*ndo_udp_tunnel_add)(struct net_device *, struct udp_tunnel_info *);
-	void (*ndo_udp_tunnel_del)(struct net_device *, struct udp_tunnel_info *);
 	void * (*ndo_dfwd_add_station)(struct net_device *, struct net_device *);
 	void (*ndo_dfwd_del_station)(struct net_device *, void *);
 	int (*ndo_set_tx_maxrate)(struct net_device *, int, u32);
@@ -13126,10 +13542,12 @@ struct net_device_ops {
 	void (*ndo_set_rx_headroom)(struct net_device *, int);
 	int (*ndo_bpf)(struct net_device *, struct netdev_bpf *);
 	int (*ndo_xdp_xmit)(struct net_device *, int, struct xdp_frame **, u32);
+	struct net_device * (*ndo_xdp_get_xmit_slave)(struct net_device *, struct xdp_buff *);
 	int (*ndo_xsk_wakeup)(struct net_device *, u32, u32);
 	struct devlink_port * (*ndo_get_devlink_port)(struct net_device *);
 	int (*ndo_tunnel_ctl)(struct net_device *, struct ip_tunnel_parm *, int);
 	struct net_device * (*ndo_get_peer_dev)(struct net_device *);
+	int (*ndo_fill_forward_path)(struct net_device_path_ctx *, struct net_device_path *);
 };
 
 struct neigh_parms {
@@ -13181,6 +13599,142 @@ struct iw_handler_def {
 	struct iw_statistics * (*get_wireless_stats)(struct net_device *);
 };
 
+enum ethtool_phys_id_state {
+	ETHTOOL_ID_INACTIVE = 0,
+	ETHTOOL_ID_ACTIVE = 1,
+	ETHTOOL_ID_ON = 2,
+	ETHTOOL_ID_OFF = 3,
+};
+
+struct ethtool_drvinfo;
+
+struct ethtool_regs;
+
+struct ethtool_wolinfo;
+
+struct ethtool_link_ext_state_info;
+
+struct ethtool_eeprom;
+
+struct ethtool_coalesce;
+
+struct kernel_ethtool_coalesce;
+
+struct ethtool_ringparam;
+
+struct ethtool_pause_stats;
+
+struct ethtool_pauseparam;
+
+struct ethtool_test;
+
+struct ethtool_stats;
+
+struct ethtool_rxnfc;
+
+struct ethtool_flash;
+
+struct ethtool_channels;
+
+struct ethtool_dump;
+
+struct ethtool_ts_info;
+
+struct ethtool_modinfo;
+
+struct ethtool_eee;
+
+struct ethtool_tunable;
+
+struct ethtool_link_ksettings;
+
+struct ethtool_fec_stats;
+
+struct ethtool_fecparam;
+
+struct ethtool_module_eeprom;
+
+struct ethtool_eth_phy_stats;
+
+struct ethtool_eth_mac_stats;
+
+struct ethtool_eth_ctrl_stats;
+
+struct ethtool_rmon_stats;
+
+struct ethtool_rmon_hist_range;
+
+struct ethtool_ops {
+	u32 cap_link_lanes_supported: 1;
+	u32 supported_coalesce_params;
+	void (*get_drvinfo)(struct net_device *, struct ethtool_drvinfo *);
+	int (*get_regs_len)(struct net_device *);
+	void (*get_regs)(struct net_device *, struct ethtool_regs *, void *);
+	void (*get_wol)(struct net_device *, struct ethtool_wolinfo *);
+	int (*set_wol)(struct net_device *, struct ethtool_wolinfo *);
+	u32 (*get_msglevel)(struct net_device *);
+	void (*set_msglevel)(struct net_device *, u32);
+	int (*nway_reset)(struct net_device *);
+	u32 (*get_link)(struct net_device *);
+	int (*get_link_ext_state)(struct net_device *, struct ethtool_link_ext_state_info *);
+	int (*get_eeprom_len)(struct net_device *);
+	int (*get_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
+	int (*set_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
+	int (*get_coalesce)(struct net_device *, struct ethtool_coalesce *, struct kernel_ethtool_coalesce *, struct netlink_ext_ack *);
+	int (*set_coalesce)(struct net_device *, struct ethtool_coalesce *, struct kernel_ethtool_coalesce *, struct netlink_ext_ack *);
+	void (*get_ringparam)(struct net_device *, struct ethtool_ringparam *);
+	int (*set_ringparam)(struct net_device *, struct ethtool_ringparam *);
+	void (*get_pause_stats)(struct net_device *, struct ethtool_pause_stats *);
+	void (*get_pauseparam)(struct net_device *, struct ethtool_pauseparam *);
+	int (*set_pauseparam)(struct net_device *, struct ethtool_pauseparam *);
+	void (*self_test)(struct net_device *, struct ethtool_test *, u64 *);
+	void (*get_strings)(struct net_device *, u32, u8 *);
+	int (*set_phys_id)(struct net_device *, enum ethtool_phys_id_state);
+	void (*get_ethtool_stats)(struct net_device *, struct ethtool_stats *, u64 *);
+	int (*begin)(struct net_device *);
+	void (*complete)(struct net_device *);
+	u32 (*get_priv_flags)(struct net_device *);
+	int (*set_priv_flags)(struct net_device *, u32);
+	int (*get_sset_count)(struct net_device *, int);
+	int (*get_rxnfc)(struct net_device *, struct ethtool_rxnfc *, u32 *);
+	int (*set_rxnfc)(struct net_device *, struct ethtool_rxnfc *);
+	int (*flash_device)(struct net_device *, struct ethtool_flash *);
+	int (*reset)(struct net_device *, u32 *);
+	u32 (*get_rxfh_key_size)(struct net_device *);
+	u32 (*get_rxfh_indir_size)(struct net_device *);
+	int (*get_rxfh)(struct net_device *, u32 *, u8 *, u8 *);
+	int (*set_rxfh)(struct net_device *, const u32 *, const u8 *, const u8);
+	int (*get_rxfh_context)(struct net_device *, u32 *, u8 *, u8 *, u32);
+	int (*set_rxfh_context)(struct net_device *, const u32 *, const u8 *, const u8, u32 *, bool);
+	void (*get_channels)(struct net_device *, struct ethtool_channels *);
+	int (*set_channels)(struct net_device *, struct ethtool_channels *);
+	int (*get_dump_flag)(struct net_device *, struct ethtool_dump *);
+	int (*get_dump_data)(struct net_device *, struct ethtool_dump *, void *);
+	int (*set_dump)(struct net_device *, struct ethtool_dump *);
+	int (*get_ts_info)(struct net_device *, struct ethtool_ts_info *);
+	int (*get_module_info)(struct net_device *, struct ethtool_modinfo *);
+	int (*get_module_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
+	int (*get_eee)(struct net_device *, struct ethtool_eee *);
+	int (*set_eee)(struct net_device *, struct ethtool_eee *);
+	int (*get_tunable)(struct net_device *, const struct ethtool_tunable *, void *);
+	int (*set_tunable)(struct net_device *, const struct ethtool_tunable *, const void *);
+	int (*get_per_queue_coalesce)(struct net_device *, u32, struct ethtool_coalesce *);
+	int (*set_per_queue_coalesce)(struct net_device *, u32, struct ethtool_coalesce *);
+	int (*get_link_ksettings)(struct net_device *, struct ethtool_link_ksettings *);
+	int (*set_link_ksettings)(struct net_device *, const struct ethtool_link_ksettings *);
+	void (*get_fec_stats)(struct net_device *, struct ethtool_fec_stats *);
+	int (*get_fecparam)(struct net_device *, struct ethtool_fecparam *);
+	int (*set_fecparam)(struct net_device *, struct ethtool_fecparam *);
+	void (*get_ethtool_phy_stats)(struct net_device *, struct ethtool_stats *, u64 *);
+	int (*get_phy_tunable)(struct net_device *, const struct ethtool_tunable *, void *);
+	int (*set_phy_tunable)(struct net_device *, const struct ethtool_tunable *, const void *);
+	int (*get_module_eeprom_by_page)(struct net_device *, const struct ethtool_module_eeprom *, struct netlink_ext_ack *);
+	void (*get_eth_phy_stats)(struct net_device *, struct ethtool_eth_phy_stats *);
+	void (*get_eth_mac_stats)(struct net_device *, struct ethtool_eth_mac_stats *);
+	void (*get_eth_ctrl_stats)(struct net_device *, struct ethtool_eth_ctrl_stats *);
+	void (*get_rmon_stats)(struct net_device *, struct ethtool_rmon_stats *, const struct ethtool_rmon_hist_range **);
+};
+
 struct l3mdev_ops {
 	u32 (*l3mdev_fib_table)(const struct net_device *);
 	struct sk_buff * (*l3mdev_l3_rcv)(struct net_device *, struct sk_buff *, u16);
@@ -13203,6 +13757,21 @@ struct ndisc_ops {
 	void (*prefix_rcv_add_addr)(struct net *, struct net_device *, const struct prefix_info *, struct inet6_dev *, struct in6_addr *, int, u32, bool, bool, __u32, u32, bool);
 };
 
+enum tls_offload_ctx_dir {
+	TLS_OFFLOAD_CTX_DIR_RX = 0,
+	TLS_OFFLOAD_CTX_DIR_TX = 1,
+};
+
+struct tls_crypto_info;
+
+struct tls_context;
+
+struct tlsdev_ops {
+	int (*tls_dev_add)(struct net_device *, struct sock *, enum tls_offload_ctx_dir, struct tls_crypto_info *, u32);
+	void (*tls_dev_del)(struct net_device *, struct tls_context *, enum tls_offload_ctx_dir);
+	int (*tls_dev_resync)(struct net_device *, struct sock *, u32, u8 *, enum tls_offload_ctx_dir);
+};
+
 struct ipv6_devstat {
 	struct proc_dir_entry *proc_dir_entry;
 	struct ipstats_mib *ipv6;
@@ -13219,7 +13788,6 @@ struct inet6_dev {
 	struct list_head addr_list;
 	struct ifmcaddr6 *mc_list;
 	struct ifmcaddr6 *mc_tomb;
-	spinlock_t mc_lock;
 	unsigned char mc_qrv;
 	unsigned char mc_gq_running;
 	unsigned char mc_ifc_count;
@@ -13228,9 +13796,16 @@ struct inet6_dev {
 	long unsigned int mc_qi;
 	long unsigned int mc_qri;
 	long unsigned int mc_maxdelay;
-	struct timer_list mc_gq_timer;
-	struct timer_list mc_ifc_timer;
-	struct timer_list mc_dad_timer;
+	struct delayed_work mc_gq_work;
+	struct delayed_work mc_ifc_work;
+	struct delayed_work mc_dad_work;
+	struct delayed_work mc_query_work;
+	struct delayed_work mc_report_work;
+	struct sk_buff_head mc_query_queue;
+	struct sk_buff_head mc_report_queue;
+	spinlock_t mc_query_lock;
+	spinlock_t mc_report_lock;
+	struct mutex mc_lock;
 	struct ifacaddr6 *ac_list;
 	rwlock_t lock;
 	refcount_t refcnt;
@@ -13247,6 +13822,7 @@ struct inet6_dev {
 	__u8 rs_probes;
 	long unsigned int tstamp;
 	struct callback_head rcu;
+	unsigned int ra_mtu;
 };
 
 struct tcf_proto;
@@ -13265,6 +13841,7 @@ struct rtnl_link_ops {
 	struct list_head list;
 	const char *kind;
 	size_t priv_size;
+	struct net_device * (*alloc)(struct nlattr **, const char *, unsigned char, unsigned int, unsigned int);
 	void (*setup)(struct net_device *);
 	bool netns_refund;
 	unsigned int maxtype;
@@ -13277,8 +13854,8 @@ struct rtnl_link_ops {
 	int (*fill_info)(struct sk_buff *, const struct net_device *);
 	size_t (*get_xstats_size)(const struct net_device *);
 	int (*fill_xstats)(struct sk_buff *, const struct net_device *);
-	unsigned int (*get_num_tx_queues)();
-	unsigned int (*get_num_rx_queues)();
+	unsigned int (*get_num_tx_queues)(void);
+	unsigned int (*get_num_rx_queues)(void);
 	unsigned int slave_maxtype;
 	const struct nla_policy *slave_policy;
 	int (*slave_changelink)(struct net_device *, struct net_device *, struct nlattr **, struct nlattr **, struct netlink_ext_ack *);
@@ -13294,6 +13871,8 @@ struct udp_tunnel_nic_table_info {
 	unsigned int tunnel_types;
 };
 
+struct udp_tunnel_info;
+
 struct udp_tunnel_nic_shared;
 
 struct udp_tunnel_nic_info {
@@ -13422,7 +14001,7 @@ struct Qdisc_class_ops {
 	void (*qlen_notify)(struct Qdisc *, long unsigned int);
 	long unsigned int (*find)(struct Qdisc *, u32);
 	int (*change)(struct Qdisc *, u32, u32, struct nlattr **, long unsigned int *, struct netlink_ext_ack *);
-	int (*delete)(struct Qdisc *, long unsigned int);
+	int (*delete)(struct Qdisc *, long unsigned int, struct netlink_ext_ack *);
 	void (*walk)(struct Qdisc *, struct qdisc_walker *);
 	struct tcf_block * (*tcf_block)(struct Qdisc *, long unsigned int, struct netlink_ext_ack *);
 	long unsigned int (*bind_tcf)(struct Qdisc *, long unsigned int, u32);
@@ -13501,7 +14080,7 @@ struct tcf_proto_ops {
 	void (*destroy)(struct tcf_proto *, bool, struct netlink_ext_ack *);
 	void * (*get)(struct tcf_proto *, u32);
 	void (*put)(struct tcf_proto *, void *);
-	int (*change)(struct net *, struct sk_buff *, struct tcf_proto *, long unsigned int, u32, struct nlattr **, void **, bool, bool, struct netlink_ext_ack *);
+	int (*change)(struct net *, struct sk_buff *, struct tcf_proto *, long unsigned int, u32, struct nlattr **, void **, u32, struct netlink_ext_ack *);
 	int (*delete)(struct tcf_proto *, void *, bool *, bool, struct netlink_ext_ack *);
 	bool (*delete_empty)(struct tcf_proto *);
 	void (*walk)(struct tcf_proto *, struct tcf_walker *, bool);
@@ -13511,6 +14090,7 @@ struct tcf_proto_ops {
 	void (*bind_class)(void *, u32, long unsigned int, void *, long unsigned int);
 	void * (*tmplt_create)(struct net *, struct tcf_chain *, struct nlattr **, struct netlink_ext_ack *);
 	void (*tmplt_destroy)(void *);
+	void (*tmplt_reoffload)(struct tcf_chain *, bool, flow_setup_cb_t *, void *);
 	int (*dump)(struct net *, struct tcf_proto *, void *, struct sk_buff *, struct tcmsg *, bool);
 	int (*terse_dump)(struct net *, struct tcf_proto *, void *, struct sk_buff *, struct tcmsg *, bool);
 	int (*tmplt_dump)(struct sk_buff *, struct net *, void *);
@@ -13538,6 +14118,14 @@ struct sock_fprog_kern {
 	struct sock_filter *filter;
 };
 
+struct bpf_prog_stats {
+	u64_stats_t cnt;
+	u64_stats_t nsecs;
+	u64_stats_t misses;
+	struct u64_stats_sync syncp;
+	long: 64;
+};
+
 struct sk_filter {
 	refcount_t refcnt;
 	struct callback_head rcu;
@@ -13637,7 +14225,7 @@ struct pneigh_entry {
 	struct net_device *dev;
 	u8 flags;
 	u8 protocol;
-	u8 key[0];
+	u32 key[0];
 };
 
 struct neigh_hash_table {
@@ -13724,6 +14312,8 @@ struct fib_lookup_arg {
 
 struct smc_hashinfo;
 
+struct sk_psock;
+
 struct request_sock_ops;
 
 struct timewait_sock_ops;
@@ -13752,14 +14342,16 @@ struct proto {
 	int (*bind)(struct sock *, struct sockaddr *, int);
 	int (*bind_add)(struct sock *, struct sockaddr *, int);
 	int (*backlog_rcv)(struct sock *, struct sk_buff *);
+	bool (*bpf_bypass_getsockopt)(int, int);
 	void (*release_cb)(struct sock *);
 	int (*hash)(struct sock *);
 	void (*unhash)(struct sock *);
 	void (*rehash)(struct sock *);
 	int (*get_port)(struct sock *, short unsigned int);
+	int (*psock_update_sk_prot)(struct sock *, struct sk_psock *, bool);
 	unsigned int inuse_idx;
 	bool (*stream_memory_free)(const struct sock *, int);
-	bool (*stream_memory_read)(const struct sock *);
+	bool (*sock_is_readable)(struct sock *);
 	void (*enter_memory_pressure)(struct sock *);
 	void (*leave_memory_pressure)(struct sock *);
 	atomic_long_t *memory_allocated;
@@ -13830,6 +14422,7 @@ struct request_sock {
 	struct saved_syn *saved_syn;
 	u32 secid;
 	u32 peer_secid;
+	u32 timeout;
 };
 
 struct saved_syn {
@@ -13855,6 +14448,7 @@ struct ip6_sf_list {
 	unsigned char sf_gsresp;
 	unsigned char sf_oldin;
 	unsigned char sf_crcount;
+	struct callback_head rcu;
 };
 
 struct ifmcaddr6 {
@@ -13866,13 +14460,13 @@ struct ifmcaddr6 {
 	unsigned int mca_sfmode;
 	unsigned char mca_crcount;
 	long unsigned int mca_sfcount[2];
-	struct timer_list mca_timer;
+	struct delayed_work mca_work;
 	unsigned int mca_flags;
 	int mca_users;
 	refcount_t mca_refcnt;
-	spinlock_t mca_lock;
 	long unsigned int mca_cstamp;
 	long unsigned int mca_tstamp;
+	struct callback_head rcu;
 };
 
 struct ifacaddr6 {
@@ -13923,9 +14517,14 @@ struct prefix_info {
 	__u8 type;
 	__u8 length;
 	__u8 prefix_len;
-	__u8 reserved: 6;
-	__u8 autoconf: 1;
-	__u8 onlink: 1;
+	union {
+		__u8 flags;
+		struct {
+			__u8 reserved: 6;
+			__u8 autoconf: 1;
+			__u8 onlink: 1;
+		};
+	};
 	__be32 valid;
 	__be32 prefered;
 	__be32 reserved2;
@@ -14066,6 +14665,15 @@ struct subprocess_info {
 
 typedef phys_addr_t resource_size_t;
 
+struct __va_list_tag {
+	unsigned int gp_offset;
+	unsigned int fp_offset;
+	void *overflow_arg_area;
+	void *reg_save_area;
+};
+
+typedef __builtin_va_list va_list;
+
 struct resource {
 	resource_size_t start;
 	resource_size_t end;
@@ -14077,6 +14685,21 @@ struct resource {
 	struct resource *child;
 };
 
+typedef u64 async_cookie_t;
+
+typedef void (*async_func_t)(void *, async_cookie_t);
+
+struct async_domain {
+	struct list_head pending;
+	unsigned int registered: 1;
+};
+
+enum umh_disable_depth {
+	UMH_ENABLED = 0,
+	UMH_FREEZING = 1,
+	UMH_DISABLED = 2,
+};
+
 struct hash {
 	int ino;
 	int minor;
@@ -14105,449 +14728,14 @@ enum state {
 
 typedef int (*decompress_fn)(unsigned char *, long int, long int (*)(void *, long unsigned int), long int (*)(void *, long unsigned int), unsigned char *, long int *, void (*)(char *));
 
-enum ucount_type {
-	UCOUNT_USER_NAMESPACES = 0,
-	UCOUNT_PID_NAMESPACES = 1,
-	UCOUNT_UTS_NAMESPACES = 2,
-	UCOUNT_IPC_NAMESPACES = 3,
-	UCOUNT_NET_NAMESPACES = 4,
-	UCOUNT_MNT_NAMESPACES = 5,
-	UCOUNT_CGROUP_NAMESPACES = 6,
-	UCOUNT_TIME_NAMESPACES = 7,
-	UCOUNT_INOTIFY_INSTANCES = 8,
-	UCOUNT_INOTIFY_WATCHES = 9,
-	UCOUNT_COUNTS = 10,
-};
-
-enum flow_dissector_key_id {
-	FLOW_DISSECTOR_KEY_CONTROL = 0,
-	FLOW_DISSECTOR_KEY_BASIC = 1,
-	FLOW_DISSECTOR_KEY_IPV4_ADDRS = 2,
-	FLOW_DISSECTOR_KEY_IPV6_ADDRS = 3,
-	FLOW_DISSECTOR_KEY_PORTS = 4,
-	FLOW_DISSECTOR_KEY_PORTS_RANGE = 5,
-	FLOW_DISSECTOR_KEY_ICMP = 6,
-	FLOW_DISSECTOR_KEY_ETH_ADDRS = 7,
-	FLOW_DISSECTOR_KEY_TIPC = 8,
-	FLOW_DISSECTOR_KEY_ARP = 9,
-	FLOW_DISSECTOR_KEY_VLAN = 10,
-	FLOW_DISSECTOR_KEY_FLOW_LABEL = 11,
-	FLOW_DISSECTOR_KEY_GRE_KEYID = 12,
-	FLOW_DISSECTOR_KEY_MPLS_ENTROPY = 13,
-	FLOW_DISSECTOR_KEY_ENC_KEYID = 14,
-	FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS = 15,
-	FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS = 16,
-	FLOW_DISSECTOR_KEY_ENC_CONTROL = 17,
-	FLOW_DISSECTOR_KEY_ENC_PORTS = 18,
-	FLOW_DISSECTOR_KEY_MPLS = 19,
-	FLOW_DISSECTOR_KEY_TCP = 20,
-	FLOW_DISSECTOR_KEY_IP = 21,
-	FLOW_DISSECTOR_KEY_CVLAN = 22,
-	FLOW_DISSECTOR_KEY_ENC_IP = 23,
-	FLOW_DISSECTOR_KEY_ENC_OPTS = 24,
-	FLOW_DISSECTOR_KEY_META = 25,
-	FLOW_DISSECTOR_KEY_CT = 26,
-	FLOW_DISSECTOR_KEY_HASH = 27,
-	FLOW_DISSECTOR_KEY_MAX = 28,
-};
-
-enum {
-	IPSTATS_MIB_NUM = 0,
-	IPSTATS_MIB_INPKTS = 1,
-	IPSTATS_MIB_INOCTETS = 2,
-	IPSTATS_MIB_INDELIVERS = 3,
-	IPSTATS_MIB_OUTFORWDATAGRAMS = 4,
-	IPSTATS_MIB_OUTPKTS = 5,
-	IPSTATS_MIB_OUTOCTETS = 6,
-	IPSTATS_MIB_INHDRERRORS = 7,
-	IPSTATS_MIB_INTOOBIGERRORS = 8,
-	IPSTATS_MIB_INNOROUTES = 9,
-	IPSTATS_MIB_INADDRERRORS = 10,
-	IPSTATS_MIB_INUNKNOWNPROTOS = 11,
-	IPSTATS_MIB_INTRUNCATEDPKTS = 12,
-	IPSTATS_MIB_INDISCARDS = 13,
-	IPSTATS_MIB_OUTDISCARDS = 14,
-	IPSTATS_MIB_OUTNOROUTES = 15,
-	IPSTATS_MIB_REASMTIMEOUT = 16,
-	IPSTATS_MIB_REASMREQDS = 17,
-	IPSTATS_MIB_REASMOKS = 18,
-	IPSTATS_MIB_REASMFAILS = 19,
-	IPSTATS_MIB_FRAGOKS = 20,
-	IPSTATS_MIB_FRAGFAILS = 21,
-	IPSTATS_MIB_FRAGCREATES = 22,
-	IPSTATS_MIB_INMCASTPKTS = 23,
-	IPSTATS_MIB_OUTMCASTPKTS = 24,
-	IPSTATS_MIB_INBCASTPKTS = 25,
-	IPSTATS_MIB_OUTBCASTPKTS = 26,
-	IPSTATS_MIB_INMCASTOCTETS = 27,
-	IPSTATS_MIB_OUTMCASTOCTETS = 28,
-	IPSTATS_MIB_INBCASTOCTETS = 29,
-	IPSTATS_MIB_OUTBCASTOCTETS = 30,
-	IPSTATS_MIB_CSUMERRORS = 31,
-	IPSTATS_MIB_NOECTPKTS = 32,
-	IPSTATS_MIB_ECT1PKTS = 33,
-	IPSTATS_MIB_ECT0PKTS = 34,
-	IPSTATS_MIB_CEPKTS = 35,
-	IPSTATS_MIB_REASM_OVERLAPS = 36,
-	__IPSTATS_MIB_MAX = 37,
-};
-
-enum {
-	ICMP_MIB_NUM = 0,
-	ICMP_MIB_INMSGS = 1,
-	ICMP_MIB_INERRORS = 2,
-	ICMP_MIB_INDESTUNREACHS = 3,
-	ICMP_MIB_INTIMEEXCDS = 4,
-	ICMP_MIB_INPARMPROBS = 5,
-	ICMP_MIB_INSRCQUENCHS = 6,
-	ICMP_MIB_INREDIRECTS = 7,
-	ICMP_MIB_INECHOS = 8,
-	ICMP_MIB_INECHOREPS = 9,
-	ICMP_MIB_INTIMESTAMPS = 10,
-	ICMP_MIB_INTIMESTAMPREPS = 11,
-	ICMP_MIB_INADDRMASKS = 12,
-	ICMP_MIB_INADDRMASKREPS = 13,
-	ICMP_MIB_OUTMSGS = 14,
-	ICMP_MIB_OUTERRORS = 15,
-	ICMP_MIB_OUTDESTUNREACHS = 16,
-	ICMP_MIB_OUTTIMEEXCDS = 17,
-	ICMP_MIB_OUTPARMPROBS = 18,
-	ICMP_MIB_OUTSRCQUENCHS = 19,
-	ICMP_MIB_OUTREDIRECTS = 20,
-	ICMP_MIB_OUTECHOS = 21,
-	ICMP_MIB_OUTECHOREPS = 22,
-	ICMP_MIB_OUTTIMESTAMPS = 23,
-	ICMP_MIB_OUTTIMESTAMPREPS = 24,
-	ICMP_MIB_OUTADDRMASKS = 25,
-	ICMP_MIB_OUTADDRMASKREPS = 26,
-	ICMP_MIB_CSUMERRORS = 27,
-	__ICMP_MIB_MAX = 28,
-};
-
-enum {
-	ICMP6_MIB_NUM = 0,
-	ICMP6_MIB_INMSGS = 1,
-	ICMP6_MIB_INERRORS = 2,
-	ICMP6_MIB_OUTMSGS = 3,
-	ICMP6_MIB_OUTERRORS = 4,
-	ICMP6_MIB_CSUMERRORS = 5,
-	__ICMP6_MIB_MAX = 6,
-};
-
-enum {
-	TCP_MIB_NUM = 0,
-	TCP_MIB_RTOALGORITHM = 1,
-	TCP_MIB_RTOMIN = 2,
-	TCP_MIB_RTOMAX = 3,
-	TCP_MIB_MAXCONN = 4,
-	TCP_MIB_ACTIVEOPENS = 5,
-	TCP_MIB_PASSIVEOPENS = 6,
-	TCP_MIB_ATTEMPTFAILS = 7,
-	TCP_MIB_ESTABRESETS = 8,
-	TCP_MIB_CURRESTAB = 9,
-	TCP_MIB_INSEGS = 10,
-	TCP_MIB_OUTSEGS = 11,
-	TCP_MIB_RETRANSSEGS = 12,
-	TCP_MIB_INERRS = 13,
-	TCP_MIB_OUTRSTS = 14,
-	TCP_MIB_CSUMERRORS = 15,
-	__TCP_MIB_MAX = 16,
-};
-
-enum {
-	UDP_MIB_NUM = 0,
-	UDP_MIB_INDATAGRAMS = 1,
-	UDP_MIB_NOPORTS = 2,
-	UDP_MIB_INERRORS = 3,
-	UDP_MIB_OUTDATAGRAMS = 4,
-	UDP_MIB_RCVBUFERRORS = 5,
-	UDP_MIB_SNDBUFERRORS = 6,
-	UDP_MIB_CSUMERRORS = 7,
-	UDP_MIB_IGNOREDMULTI = 8,
-	__UDP_MIB_MAX = 9,
-};
-
-enum {
-	LINUX_MIB_NUM = 0,
-	LINUX_MIB_SYNCOOKIESSENT = 1,
-	LINUX_MIB_SYNCOOKIESRECV = 2,
-	LINUX_MIB_SYNCOOKIESFAILED = 3,
-	LINUX_MIB_EMBRYONICRSTS = 4,
-	LINUX_MIB_PRUNECALLED = 5,
-	LINUX_MIB_RCVPRUNED = 6,
-	LINUX_MIB_OFOPRUNED = 7,
-	LINUX_MIB_OUTOFWINDOWICMPS = 8,
-	LINUX_MIB_LOCKDROPPEDICMPS = 9,
-	LINUX_MIB_ARPFILTER = 10,
-	LINUX_MIB_TIMEWAITED = 11,
-	LINUX_MIB_TIMEWAITRECYCLED = 12,
-	LINUX_MIB_TIMEWAITKILLED = 13,
-	LINUX_MIB_PAWSACTIVEREJECTED = 14,
-	LINUX_MIB_PAWSESTABREJECTED = 15,
-	LINUX_MIB_DELAYEDACKS = 16,
-	LINUX_MIB_DELAYEDACKLOCKED = 17,
-	LINUX_MIB_DELAYEDACKLOST = 18,
-	LINUX_MIB_LISTENOVERFLOWS = 19,
-	LINUX_MIB_LISTENDROPS = 20,
-	LINUX_MIB_TCPHPHITS = 21,
-	LINUX_MIB_TCPPUREACKS = 22,
-	LINUX_MIB_TCPHPACKS = 23,
-	LINUX_MIB_TCPRENORECOVERY = 24,
-	LINUX_MIB_TCPSACKRECOVERY = 25,
-	LINUX_MIB_TCPSACKRENEGING = 26,
-	LINUX_MIB_TCPSACKREORDER = 27,
-	LINUX_MIB_TCPRENOREORDER = 28,
-	LINUX_MIB_TCPTSREORDER = 29,
-	LINUX_MIB_TCPFULLUNDO = 30,
-	LINUX_MIB_TCPPARTIALUNDO = 31,
-	LINUX_MIB_TCPDSACKUNDO = 32,
-	LINUX_MIB_TCPLOSSUNDO = 33,
-	LINUX_MIB_TCPLOSTRETRANSMIT = 34,
-	LINUX_MIB_TCPRENOFAILURES = 35,
-	LINUX_MIB_TCPSACKFAILURES = 36,
-	LINUX_MIB_TCPLOSSFAILURES = 37,
-	LINUX_MIB_TCPFASTRETRANS = 38,
-	LINUX_MIB_TCPSLOWSTARTRETRANS = 39,
-	LINUX_MIB_TCPTIMEOUTS = 40,
-	LINUX_MIB_TCPLOSSPROBES = 41,
-	LINUX_MIB_TCPLOSSPROBERECOVERY = 42,
-	LINUX_MIB_TCPRENORECOVERYFAIL = 43,
-	LINUX_MIB_TCPSACKRECOVERYFAIL = 44,
-	LINUX_MIB_TCPRCVCOLLAPSED = 45,
-	LINUX_MIB_TCPDSACKOLDSENT = 46,
-	LINUX_MIB_TCPDSACKOFOSENT = 47,
-	LINUX_MIB_TCPDSACKRECV = 48,
-	LINUX_MIB_TCPDSACKOFORECV = 49,
-	LINUX_MIB_TCPABORTONDATA = 50,
-	LINUX_MIB_TCPABORTONCLOSE = 51,
-	LINUX_MIB_TCPABORTONMEMORY = 52,
-	LINUX_MIB_TCPABORTONTIMEOUT = 53,
-	LINUX_MIB_TCPABORTONLINGER = 54,
-	LINUX_MIB_TCPABORTFAILED = 55,
-	LINUX_MIB_TCPMEMORYPRESSURES = 56,
-	LINUX_MIB_TCPMEMORYPRESSURESCHRONO = 57,
-	LINUX_MIB_TCPSACKDISCARD = 58,
-	LINUX_MIB_TCPDSACKIGNOREDOLD = 59,
-	LINUX_MIB_TCPDSACKIGNOREDNOUNDO = 60,
-	LINUX_MIB_TCPSPURIOUSRTOS = 61,
-	LINUX_MIB_TCPMD5NOTFOUND = 62,
-	LINUX_MIB_TCPMD5UNEXPECTED = 63,
-	LINUX_MIB_TCPMD5FAILURE = 64,
-	LINUX_MIB_SACKSHIFTED = 65,
-	LINUX_MIB_SACKMERGED = 66,
-	LINUX_MIB_SACKSHIFTFALLBACK = 67,
-	LINUX_MIB_TCPBACKLOGDROP = 68,
-	LINUX_MIB_PFMEMALLOCDROP = 69,
-	LINUX_MIB_TCPMINTTLDROP = 70,
-	LINUX_MIB_TCPDEFERACCEPTDROP = 71,
-	LINUX_MIB_IPRPFILTER = 72,
-	LINUX_MIB_TCPTIMEWAITOVERFLOW = 73,
-	LINUX_MIB_TCPREQQFULLDOCOOKIES = 74,
-	LINUX_MIB_TCPREQQFULLDROP = 75,
-	LINUX_MIB_TCPRETRANSFAIL = 76,
-	LINUX_MIB_TCPRCVCOALESCE = 77,
-	LINUX_MIB_TCPBACKLOGCOALESCE = 78,
-	LINUX_MIB_TCPOFOQUEUE = 79,
-	LINUX_MIB_TCPOFODROP = 80,
-	LINUX_MIB_TCPOFOMERGE = 81,
-	LINUX_MIB_TCPCHALLENGEACK = 82,
-	LINUX_MIB_TCPSYNCHALLENGE = 83,
-	LINUX_MIB_TCPFASTOPENACTIVE = 84,
-	LINUX_MIB_TCPFASTOPENACTIVEFAIL = 85,
-	LINUX_MIB_TCPFASTOPENPASSIVE = 86,
-	LINUX_MIB_TCPFASTOPENPASSIVEFAIL = 87,
-	LINUX_MIB_TCPFASTOPENLISTENOVERFLOW = 88,
-	LINUX_MIB_TCPFASTOPENCOOKIEREQD = 89,
-	LINUX_MIB_TCPFASTOPENBLACKHOLE = 90,
-	LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES = 91,
-	LINUX_MIB_BUSYPOLLRXPACKETS = 92,
-	LINUX_MIB_TCPAUTOCORKING = 93,
-	LINUX_MIB_TCPFROMZEROWINDOWADV = 94,
-	LINUX_MIB_TCPTOZEROWINDOWADV = 95,
-	LINUX_MIB_TCPWANTZEROWINDOWADV = 96,
-	LINUX_MIB_TCPSYNRETRANS = 97,
-	LINUX_MIB_TCPORIGDATASENT = 98,
-	LINUX_MIB_TCPHYSTARTTRAINDETECT = 99,
-	LINUX_MIB_TCPHYSTARTTRAINCWND = 100,
-	LINUX_MIB_TCPHYSTARTDELAYDETECT = 101,
-	LINUX_MIB_TCPHYSTARTDELAYCWND = 102,
-	LINUX_MIB_TCPACKSKIPPEDSYNRECV = 103,
-	LINUX_MIB_TCPACKSKIPPEDPAWS = 104,
-	LINUX_MIB_TCPACKSKIPPEDSEQ = 105,
-	LINUX_MIB_TCPACKSKIPPEDFINWAIT2 = 106,
-	LINUX_MIB_TCPACKSKIPPEDTIMEWAIT = 107,
-	LINUX_MIB_TCPACKSKIPPEDCHALLENGE = 108,
-	LINUX_MIB_TCPWINPROBE = 109,
-	LINUX_MIB_TCPKEEPALIVE = 110,
-	LINUX_MIB_TCPMTUPFAIL = 111,
-	LINUX_MIB_TCPMTUPSUCCESS = 112,
-	LINUX_MIB_TCPDELIVERED = 113,
-	LINUX_MIB_TCPDELIVEREDCE = 114,
-	LINUX_MIB_TCPACKCOMPRESSED = 115,
-	LINUX_MIB_TCPZEROWINDOWDROP = 116,
-	LINUX_MIB_TCPRCVQDROP = 117,
-	LINUX_MIB_TCPWQUEUETOOBIG = 118,
-	LINUX_MIB_TCPFASTOPENPASSIVEALTKEY = 119,
-	LINUX_MIB_TCPTIMEOUTREHASH = 120,
-	LINUX_MIB_TCPDUPLICATEDATAREHASH = 121,
-	LINUX_MIB_TCPDSACKRECVSEGS = 122,
-	LINUX_MIB_TCPDSACKIGNOREDDUBIOUS = 123,
-	__LINUX_MIB_MAX = 124,
-};
-
-enum {
-	LINUX_MIB_XFRMNUM = 0,
-	LINUX_MIB_XFRMINERROR = 1,
-	LINUX_MIB_XFRMINBUFFERERROR = 2,
-	LINUX_MIB_XFRMINHDRERROR = 3,
-	LINUX_MIB_XFRMINNOSTATES = 4,
-	LINUX_MIB_XFRMINSTATEPROTOERROR = 5,
-	LINUX_MIB_XFRMINSTATEMODEERROR = 6,
-	LINUX_MIB_XFRMINSTATESEQERROR = 7,
-	LINUX_MIB_XFRMINSTATEEXPIRED = 8,
-	LINUX_MIB_XFRMINSTATEMISMATCH = 9,
-	LINUX_MIB_XFRMINSTATEINVALID = 10,
-	LINUX_MIB_XFRMINTMPLMISMATCH = 11,
-	LINUX_MIB_XFRMINNOPOLS = 12,
-	LINUX_MIB_XFRMINPOLBLOCK = 13,
-	LINUX_MIB_XFRMINPOLERROR = 14,
-	LINUX_MIB_XFRMOUTERROR = 15,
-	LINUX_MIB_XFRMOUTBUNDLEGENERROR = 16,
-	LINUX_MIB_XFRMOUTBUNDLECHECKERROR = 17,
-	LINUX_MIB_XFRMOUTNOSTATES = 18,
-	LINUX_MIB_XFRMOUTSTATEPROTOERROR = 19,
-	LINUX_MIB_XFRMOUTSTATEMODEERROR = 20,
-	LINUX_MIB_XFRMOUTSTATESEQERROR = 21,
-	LINUX_MIB_XFRMOUTSTATEEXPIRED = 22,
-	LINUX_MIB_XFRMOUTPOLBLOCK = 23,
-	LINUX_MIB_XFRMOUTPOLDEAD = 24,
-	LINUX_MIB_XFRMOUTPOLERROR = 25,
-	LINUX_MIB_XFRMFWDHDRERROR = 26,
-	LINUX_MIB_XFRMOUTSTATEINVALID = 27,
-	LINUX_MIB_XFRMACQUIREERROR = 28,
-	__LINUX_MIB_XFRMMAX = 29,
-};
-
-enum {
-	LINUX_MIB_TLSNUM = 0,
-	LINUX_MIB_TLSCURRTXSW = 1,
-	LINUX_MIB_TLSCURRRXSW = 2,
-	LINUX_MIB_TLSCURRTXDEVICE = 3,
-	LINUX_MIB_TLSCURRRXDEVICE = 4,
-	LINUX_MIB_TLSTXSW = 5,
-	LINUX_MIB_TLSRXSW = 6,
-	LINUX_MIB_TLSTXDEVICE = 7,
-	LINUX_MIB_TLSRXDEVICE = 8,
-	LINUX_MIB_TLSDECRYPTERROR = 9,
-	LINUX_MIB_TLSRXDEVICERESYNC = 10,
-	__LINUX_MIB_TLSMAX = 11,
-};
-
-enum nf_inet_hooks {
-	NF_INET_PRE_ROUTING = 0,
-	NF_INET_LOCAL_IN = 1,
-	NF_INET_FORWARD = 2,
-	NF_INET_LOCAL_OUT = 3,
-	NF_INET_POST_ROUTING = 4,
-	NF_INET_NUMHOOKS = 5,
-	NF_INET_INGRESS = 5,
-};
-
-enum {
-	NFPROTO_UNSPEC = 0,
-	NFPROTO_INET = 1,
-	NFPROTO_IPV4 = 2,
-	NFPROTO_ARP = 3,
-	NFPROTO_NETDEV = 5,
-	NFPROTO_BRIDGE = 7,
-	NFPROTO_IPV6 = 10,
-	NFPROTO_DECNET = 12,
-	NFPROTO_NUMPROTO = 13,
-};
-
-enum tcp_conntrack {
-	TCP_CONNTRACK_NONE = 0,
-	TCP_CONNTRACK_SYN_SENT = 1,
-	TCP_CONNTRACK_SYN_RECV = 2,
-	TCP_CONNTRACK_ESTABLISHED = 3,
-	TCP_CONNTRACK_FIN_WAIT = 4,
-	TCP_CONNTRACK_CLOSE_WAIT = 5,
-	TCP_CONNTRACK_LAST_ACK = 6,
-	TCP_CONNTRACK_TIME_WAIT = 7,
-	TCP_CONNTRACK_CLOSE = 8,
-	TCP_CONNTRACK_LISTEN = 9,
-	TCP_CONNTRACK_MAX = 10,
-	TCP_CONNTRACK_IGNORE = 11,
-	TCP_CONNTRACK_RETRANS = 12,
-	TCP_CONNTRACK_UNACK = 13,
-	TCP_CONNTRACK_TIMEOUT_MAX = 14,
-};
-
-enum ct_dccp_states {
-	CT_DCCP_NONE = 0,
-	CT_DCCP_REQUEST = 1,
-	CT_DCCP_RESPOND = 2,
-	CT_DCCP_PARTOPEN = 3,
-	CT_DCCP_OPEN = 4,
-	CT_DCCP_CLOSEREQ = 5,
-	CT_DCCP_CLOSING = 6,
-	CT_DCCP_TIMEWAIT = 7,
-	CT_DCCP_IGNORE = 8,
-	CT_DCCP_INVALID = 9,
-	__CT_DCCP_MAX = 10,
-};
-
-enum ip_conntrack_dir {
-	IP_CT_DIR_ORIGINAL = 0,
-	IP_CT_DIR_REPLY = 1,
-	IP_CT_DIR_MAX = 2,
-};
-
-enum sctp_conntrack {
-	SCTP_CONNTRACK_NONE = 0,
-	SCTP_CONNTRACK_CLOSED = 1,
-	SCTP_CONNTRACK_COOKIE_WAIT = 2,
-	SCTP_CONNTRACK_COOKIE_ECHOED = 3,
-	SCTP_CONNTRACK_ESTABLISHED = 4,
-	SCTP_CONNTRACK_SHUTDOWN_SENT = 5,
-	SCTP_CONNTRACK_SHUTDOWN_RECD = 6,
-	SCTP_CONNTRACK_SHUTDOWN_ACK_SENT = 7,
-	SCTP_CONNTRACK_HEARTBEAT_SENT = 8,
-	SCTP_CONNTRACK_HEARTBEAT_ACKED = 9,
-	SCTP_CONNTRACK_MAX = 10,
-};
-
-enum udp_conntrack {
-	UDP_CT_UNREPLIED = 0,
-	UDP_CT_REPLIED = 1,
-	UDP_CT_MAX = 2,
-};
-
-enum gre_conntrack {
-	GRE_CT_UNREPLIED = 0,
-	GRE_CT_REPLIED = 1,
-	GRE_CT_MAX = 2,
-};
-
-enum {
-	XFRM_POLICY_IN = 0,
-	XFRM_POLICY_OUT = 1,
-	XFRM_POLICY_FWD = 2,
-	XFRM_POLICY_MASK = 3,
-	XFRM_POLICY_MAX = 3,
-};
-
-enum netns_bpf_attach_type {
-	NETNS_BPF_INVALID = 4294967295,
-	NETNS_BPF_FLOW_DISSECTOR = 0,
-	NETNS_BPF_SK_LOOKUP = 1,
-	MAX_NETNS_BPF_ATTACH_TYPE = 2,
-};
-
-enum skb_ext_id {
-	SKB_EXT_BRIDGE_NF = 0,
-	SKB_EXT_SEC_PATH = 1,
-	SKB_EXT_NUM = 2,
+enum key_being_used_for {
+	VERIFYING_MODULE_SIGNATURE = 0,
+	VERIFYING_FIRMWARE_SIGNATURE = 1,
+	VERIFYING_KEXEC_PE_SIGNATURE = 2,
+	VERIFYING_KEY_SIGNATURE = 3,
+	VERIFYING_KEY_SELF_SIGNATURE = 4,
+	VERIFYING_UNSPECIFIED_SIGNATURE = 5,
+	NR__KEY_BEING_USED_FOR = 6,
 };
 
 enum audit_ntp_type {
@@ -14562,8 +14750,47 @@ enum audit_ntp_type {
 
 typedef long int (*sys_call_ptr_t)(const struct pt_regs *);
 
-struct irq_stack {
-	char stack[16384];
+struct cpuinfo_x86 {
+	__u8 x86;
+	__u8 x86_vendor;
+	__u8 x86_model;
+	__u8 x86_stepping;
+	int x86_tlbsize;
+	__u32 vmx_capability[3];
+	__u8 x86_virt_bits;
+	__u8 x86_phys_bits;
+	__u8 x86_coreid_bits;
+	__u8 cu_id;
+	__u32 extended_cpuid_level;
+	int cpuid_level;
+	union {
+		__u32 x86_capability[24];
+		long unsigned int x86_capability_alignment;
+	};
+	char x86_vendor_id[16];
+	char x86_model_id[64];
+	unsigned int x86_cache_size;
+	int x86_cache_alignment;
+	int x86_cache_max_rmid;
+	int x86_cache_occ_scale;
+	int x86_cache_mbm_width_offset;
+	int x86_power;
+	long unsigned int loops_per_jiffy;
+	u16 x86_max_cores;
+	u16 apicid;
+	u16 initial_apicid;
+	u16 x86_clflush_size;
+	u16 booted_cores;
+	u16 phys_proc_id;
+	u16 logical_proc_id;
+	u16 cpu_core_id;
+	u16 cpu_die_id;
+	u16 logical_die_id;
+	u16 cpu_index;
+	bool smt_active;
+	u32 microcode;
+	u8 x86_cache_bits;
+	unsigned int initialized: 1;
 };
 
 struct io_bitmap {
@@ -14573,6 +14800,48 @@ struct io_bitmap {
 	long unsigned int bitmap[1024];
 };
 
+enum apic_delivery_modes {
+	APIC_DELIVERY_MODE_FIXED = 0,
+	APIC_DELIVERY_MODE_LOWESTPRIO = 1,
+	APIC_DELIVERY_MODE_SMI = 2,
+	APIC_DELIVERY_MODE_NMI = 4,
+	APIC_DELIVERY_MODE_INIT = 5,
+	APIC_DELIVERY_MODE_EXTINT = 7,
+};
+
+struct physid_mask {
+	long unsigned int mask[512];
+};
+
+typedef struct physid_mask physid_mask_t;
+
+enum {
+	TASKSTATS_CMD_UNSPEC = 0,
+	TASKSTATS_CMD_GET = 1,
+	TASKSTATS_CMD_NEW = 2,
+	__TASKSTATS_CMD_MAX = 3,
+};
+
+enum ucount_type {
+	UCOUNT_USER_NAMESPACES = 0,
+	UCOUNT_PID_NAMESPACES = 1,
+	UCOUNT_UTS_NAMESPACES = 2,
+	UCOUNT_IPC_NAMESPACES = 3,
+	UCOUNT_NET_NAMESPACES = 4,
+	UCOUNT_MNT_NAMESPACES = 5,
+	UCOUNT_CGROUP_NAMESPACES = 6,
+	UCOUNT_TIME_NAMESPACES = 7,
+	UCOUNT_INOTIFY_INSTANCES = 8,
+	UCOUNT_INOTIFY_WATCHES = 9,
+	UCOUNT_FANOTIFY_GROUPS = 10,
+	UCOUNT_FANOTIFY_MARKS = 11,
+	UCOUNT_RLIMIT_NPROC = 12,
+	UCOUNT_RLIMIT_MSGQUEUE = 13,
+	UCOUNT_RLIMIT_SIGPENDING = 14,
+	UCOUNT_RLIMIT_MEMLOCK = 15,
+	UCOUNT_COUNTS = 16,
+};
+
 enum irqreturn {
 	IRQ_NONE = 0,
 	IRQ_HANDLED = 1,
@@ -14653,6 +14922,34 @@ enum irqchip_irq_state {
 	IRQCHIP_STATE_LINE_LEVEL = 3,
 };
 
+enum {
+	HI_SOFTIRQ = 0,
+	TIMER_SOFTIRQ = 1,
+	NET_TX_SOFTIRQ = 2,
+	NET_RX_SOFTIRQ = 3,
+	BLOCK_SOFTIRQ = 4,
+	IRQ_POLL_SOFTIRQ = 5,
+	TASKLET_SOFTIRQ = 6,
+	SCHED_SOFTIRQ = 7,
+	HRTIMER_SOFTIRQ = 8,
+	RCU_SOFTIRQ = 9,
+	NR_SOFTIRQS = 10,
+};
+
+enum cpu_usage_stat {
+	CPUTIME_USER = 0,
+	CPUTIME_NICE = 1,
+	CPUTIME_SYSTEM = 2,
+	CPUTIME_SOFTIRQ = 3,
+	CPUTIME_IRQ = 4,
+	CPUTIME_IDLE = 5,
+	CPUTIME_IOWAIT = 6,
+	CPUTIME_STEAL = 7,
+	CPUTIME_GUEST = 8,
+	CPUTIME_GUEST_NICE = 9,
+	NR_STATS = 10,
+};
+
 enum {
 	EI_ETYPE_NONE = 0,
 	EI_ETYPE_NULL = 1,
@@ -14661,6 +14958,155 @@ enum {
 	EI_ETYPE_TRUE = 4,
 };
 
+enum bpf_type_flag {
+	PTR_MAYBE_NULL = 256,
+	MEM_RDONLY = 512,
+	MEM_ALLOC = 1024,
+	__BPF_TYPE_LAST_FLAG = 1024,
+};
+
+enum bpf_arg_type {
+	ARG_DONTCARE = 0,
+	ARG_CONST_MAP_PTR = 1,
+	ARG_PTR_TO_MAP_KEY = 2,
+	ARG_PTR_TO_MAP_VALUE = 3,
+	ARG_PTR_TO_UNINIT_MAP_VALUE = 4,
+	ARG_PTR_TO_MEM = 5,
+	ARG_PTR_TO_UNINIT_MEM = 6,
+	ARG_CONST_SIZE = 7,
+	ARG_CONST_SIZE_OR_ZERO = 8,
+	ARG_PTR_TO_CTX = 9,
+	ARG_ANYTHING = 10,
+	ARG_PTR_TO_SPIN_LOCK = 11,
+	ARG_PTR_TO_SOCK_COMMON = 12,
+	ARG_PTR_TO_INT = 13,
+	ARG_PTR_TO_LONG = 14,
+	ARG_PTR_TO_SOCKET = 15,
+	ARG_PTR_TO_BTF_ID = 16,
+	ARG_PTR_TO_ALLOC_MEM = 17,
+	ARG_CONST_ALLOC_SIZE_OR_ZERO = 18,
+	ARG_PTR_TO_BTF_ID_SOCK_COMMON = 19,
+	ARG_PTR_TO_PERCPU_BTF_ID = 20,
+	ARG_PTR_TO_FUNC = 21,
+	ARG_PTR_TO_STACK = 22,
+	ARG_PTR_TO_CONST_STR = 23,
+	ARG_PTR_TO_TIMER = 24,
+	__BPF_ARG_TYPE_MAX = 25,
+	ARG_PTR_TO_MAP_VALUE_OR_NULL = 259,
+	ARG_PTR_TO_MEM_OR_NULL = 261,
+	ARG_PTR_TO_CTX_OR_NULL = 265,
+	ARG_PTR_TO_SOCKET_OR_NULL = 271,
+	ARG_PTR_TO_ALLOC_MEM_OR_NULL = 273,
+	ARG_PTR_TO_STACK_OR_NULL = 278,
+	__BPF_ARG_TYPE_LIMIT = 2047,
+};
+
+enum bpf_return_type {
+	RET_INTEGER = 0,
+	RET_VOID = 1,
+	RET_PTR_TO_MAP_VALUE = 2,
+	RET_PTR_TO_SOCKET = 3,
+	RET_PTR_TO_TCP_SOCK = 4,
+	RET_PTR_TO_SOCK_COMMON = 5,
+	RET_PTR_TO_ALLOC_MEM = 6,
+	RET_PTR_TO_MEM_OR_BTF_ID = 7,
+	RET_PTR_TO_BTF_ID = 8,
+	__BPF_RET_TYPE_MAX = 9,
+	RET_PTR_TO_MAP_VALUE_OR_NULL = 258,
+	RET_PTR_TO_SOCKET_OR_NULL = 259,
+	RET_PTR_TO_TCP_SOCK_OR_NULL = 260,
+	RET_PTR_TO_SOCK_COMMON_OR_NULL = 261,
+	RET_PTR_TO_ALLOC_MEM_OR_NULL = 1286,
+	RET_PTR_TO_BTF_ID_OR_NULL = 264,
+	__BPF_RET_TYPE_LIMIT = 2047,
+};
+
+enum bpf_cgroup_storage_type {
+	BPF_CGROUP_STORAGE_SHARED = 0,
+	BPF_CGROUP_STORAGE_PERCPU = 1,
+	__BPF_CGROUP_STORAGE_MAX = 2,
+};
+
+enum bpf_tramp_prog_type {
+	BPF_TRAMP_FENTRY = 0,
+	BPF_TRAMP_FEXIT = 1,
+	BPF_TRAMP_MODIFY_RETURN = 2,
+	BPF_TRAMP_MAX = 3,
+	BPF_TRAMP_REPLACE = 4,
+};
+
+enum cgroup_bpf_attach_type {
+	CGROUP_BPF_ATTACH_TYPE_INVALID = 4294967295,
+	CGROUP_INET_INGRESS = 0,
+	CGROUP_INET_EGRESS = 1,
+	CGROUP_INET_SOCK_CREATE = 2,
+	CGROUP_SOCK_OPS = 3,
+	CGROUP_DEVICE = 4,
+	CGROUP_INET4_BIND = 5,
+	CGROUP_INET6_BIND = 6,
+	CGROUP_INET4_CONNECT = 7,
+	CGROUP_INET6_CONNECT = 8,
+	CGROUP_INET4_POST_BIND = 9,
+	CGROUP_INET6_POST_BIND = 10,
+	CGROUP_UDP4_SENDMSG = 11,
+	CGROUP_UDP6_SENDMSG = 12,
+	CGROUP_SYSCTL = 13,
+	CGROUP_UDP4_RECVMSG = 14,
+	CGROUP_UDP6_RECVMSG = 15,
+	CGROUP_GETSOCKOPT = 16,
+	CGROUP_SETSOCKOPT = 17,
+	CGROUP_INET4_GETPEERNAME = 18,
+	CGROUP_INET6_GETPEERNAME = 19,
+	CGROUP_INET4_GETSOCKNAME = 20,
+	CGROUP_INET6_GETSOCKNAME = 21,
+	CGROUP_INET_SOCK_RELEASE = 22,
+	MAX_CGROUP_BPF_ATTACH_TYPE = 23,
+};
+
+enum psi_task_count {
+	NR_IOWAIT = 0,
+	NR_MEMSTALL = 1,
+	NR_RUNNING = 2,
+	NR_ONCPU = 3,
+	NR_MEMSTALL_RUNNING = 4,
+	NR_PSI_TASK_COUNTS = 5,
+};
+
+enum psi_states {
+	PSI_IO_SOME = 0,
+	PSI_IO_FULL = 1,
+	PSI_MEM_SOME = 2,
+	PSI_MEM_FULL = 3,
+	PSI_CPU_SOME = 4,
+	PSI_CPU_FULL = 5,
+	PSI_NONIDLE = 6,
+	NR_PSI_STATES = 7,
+};
+
+enum psi_aggregators {
+	PSI_AVGS = 0,
+	PSI_POLL = 1,
+	NR_PSI_AGGREGATORS = 2,
+};
+
+enum cgroup_subsys_id {
+	cpuset_cgrp_id = 0,
+	cpu_cgrp_id = 1,
+	cpuacct_cgrp_id = 2,
+	io_cgrp_id = 3,
+	memory_cgrp_id = 4,
+	devices_cgrp_id = 5,
+	freezer_cgrp_id = 6,
+	net_cls_cgrp_id = 7,
+	perf_event_cgrp_id = 8,
+	net_prio_cgrp_id = 9,
+	hugetlb_cgrp_id = 10,
+	pids_cgrp_id = 11,
+	rdma_cgrp_id = 12,
+	misc_cgrp_id = 13,
+	CGROUP_SUBSYS_COUNT = 14,
+};
+
 struct syscall_metadata {
 	const char *name;
 	int syscall_nr;
@@ -14752,10 +15198,66 @@ struct irq_desc {
 	long: 64;
 };
 
+struct x86_msi_addr_lo {
+	union {
+		struct {
+			u32 reserved_0: 2;
+			u32 dest_mode_logical: 1;
+			u32 redirect_hint: 1;
+			u32 reserved_1: 1;
+			u32 virt_destid_8_14: 7;
+			u32 destid_0_7: 8;
+			u32 base_address: 12;
+		};
+		struct {
+			u32 dmar_reserved_0: 2;
+			u32 dmar_index_15: 1;
+			u32 dmar_subhandle_valid: 1;
+			u32 dmar_format: 1;
+			u32 dmar_index_0_14: 15;
+			u32 dmar_base_address: 12;
+		};
+	};
+};
+
+typedef struct x86_msi_addr_lo arch_msi_msg_addr_lo_t;
+
+struct x86_msi_addr_hi {
+	u32 reserved: 8;
+	u32 destid_8_31: 24;
+};
+
+typedef struct x86_msi_addr_hi arch_msi_msg_addr_hi_t;
+
+struct x86_msi_data {
+	union {
+		struct {
+			u32 vector: 8;
+			u32 delivery_mode: 3;
+			u32 dest_mode_logical: 1;
+			u32 reserved: 2;
+			u32 active_low: 1;
+			u32 is_level: 1;
+		};
+		u32 dmar_subhandle;
+	};
+};
+
+typedef struct x86_msi_data arch_msi_msg_data_t;
+
 struct msi_msg {
-	u32 address_lo;
-	u32 address_hi;
-	u32 data;
+	union {
+		u32 address_lo;
+		arch_msi_msg_addr_lo_t arch_addr_lo;
+	};
+	union {
+		u32 address_hi;
+		arch_msi_msg_addr_hi_t arch_addr_hi;
+	};
+	union {
+		u32 data;
+		arch_msi_msg_data_t arch_data;
+	};
 };
 
 struct platform_msi_priv_data;
@@ -14785,12 +15287,15 @@ struct msi_desc {
 	void *write_msi_msg_data;
 	union {
 		struct {
-			u32 masked;
+			union {
+				u32 msi_mask;
+				u32 msix_ctrl;
+			};
 			struct {
 				u8 is_msix: 1;
 				u8 multiple: 3;
 				u8 multi_cap: 3;
-				u8 maskbit: 1;
+				u8 can_mask: 1;
 				u8 is_64: 1;
 				u8 is_virtual: 1;
 				u16 entry_nr;
@@ -14905,6 +15410,44 @@ struct irq_domain_chip_generic {
 	struct irq_chip_generic *gc[0];
 };
 
+struct apic {
+	void (*eoi_write)(u32, u32);
+	void (*native_eoi_write)(u32, u32);
+	void (*write)(u32, u32);
+	u32 (*read)(u32);
+	void (*wait_icr_idle)(void);
+	u32 (*safe_wait_icr_idle)(void);
+	void (*send_IPI)(int, int);
+	void (*send_IPI_mask)(const struct cpumask *, int);
+	void (*send_IPI_mask_allbutself)(const struct cpumask *, int);
+	void (*send_IPI_allbutself)(int);
+	void (*send_IPI_all)(int);
+	void (*send_IPI_self)(int);
+	u32 disable_esr;
+	enum apic_delivery_modes delivery_mode;
+	bool dest_mode_logical;
+	u32 (*calc_dest_apicid)(unsigned int);
+	u64 (*icr_read)(void);
+	void (*icr_write)(u32, u32);
+	int (*probe)(void);
+	int (*acpi_madt_oem_check)(char *, char *);
+	int (*apic_id_valid)(u32);
+	int (*apic_id_registered)(void);
+	bool (*check_apicid_used)(physid_mask_t *, int);
+	void (*init_apic_ldr)(void);
+	void (*ioapic_phys_id_map)(physid_mask_t *, physid_mask_t *);
+	void (*setup_apic_routing)(void);
+	int (*cpu_present_to_apicid)(int);
+	void (*apicid_to_cpu_present)(int, physid_mask_t *);
+	int (*check_phys_apicid_present)(int);
+	int (*phys_pkg_id)(int, int);
+	u32 (*get_apic_id)(long unsigned int);
+	u32 (*set_apic_id)(unsigned int);
+	int (*wakeup_secondary_cpu)(int, long unsigned int);
+	void (*inquire_remote_apic)(int);
+	char *name;
+};
+
 struct alt_instr {
 	s32 instr_offset;
 	s32 repl_offset;
@@ -14948,7 +15491,6 @@ struct timens_offsets {
 };
 
 struct time_namespace {
-	struct kref kref;
 	struct user_namespace *user_ns;
 	struct ucounts *ucounts;
 	struct ns_common ns;
@@ -15017,94 +15559,26 @@ struct ms_hyperv_tsc_page {
 	volatile s64 tsc_offset;
 };
 
-enum {
-	TASKSTATS_CMD_UNSPEC = 0,
-	TASKSTATS_CMD_GET = 1,
-	TASKSTATS_CMD_NEW = 2,
-	__TASKSTATS_CMD_MAX = 3,
+struct vdso_exception_table_entry {
+	int insn;
+	int fixup;
 };
 
-enum {
-	HI_SOFTIRQ = 0,
-	TIMER_SOFTIRQ = 1,
-	NET_TX_SOFTIRQ = 2,
-	NET_RX_SOFTIRQ = 3,
-	BLOCK_SOFTIRQ = 4,
-	IRQ_POLL_SOFTIRQ = 5,
-	TASKLET_SOFTIRQ = 6,
-	SCHED_SOFTIRQ = 7,
-	HRTIMER_SOFTIRQ = 8,
-	RCU_SOFTIRQ = 9,
-	NR_SOFTIRQS = 10,
+enum syscall_work_bit {
+	SYSCALL_WORK_BIT_SECCOMP = 0,
+	SYSCALL_WORK_BIT_SYSCALL_TRACEPOINT = 1,
+	SYSCALL_WORK_BIT_SYSCALL_TRACE = 2,
+	SYSCALL_WORK_BIT_SYSCALL_EMU = 3,
+	SYSCALL_WORK_BIT_SYSCALL_AUDIT = 4,
+	SYSCALL_WORK_BIT_SYSCALL_USER_DISPATCH = 5,
+	SYSCALL_WORK_BIT_SYSCALL_EXIT_TRAP = 6,
 };
 
-enum cpu_usage_stat {
-	CPUTIME_USER = 0,
-	CPUTIME_NICE = 1,
-	CPUTIME_SYSTEM = 2,
-	CPUTIME_SOFTIRQ = 3,
-	CPUTIME_IRQ = 4,
-	CPUTIME_IDLE = 5,
-	CPUTIME_IOWAIT = 6,
-	CPUTIME_STEAL = 7,
-	CPUTIME_GUEST = 8,
-	CPUTIME_GUEST_NICE = 9,
-	NR_STATS = 10,
-};
-
-enum bpf_cgroup_storage_type {
-	BPF_CGROUP_STORAGE_SHARED = 0,
-	BPF_CGROUP_STORAGE_PERCPU = 1,
-	__BPF_CGROUP_STORAGE_MAX = 2,
-};
-
-enum bpf_tramp_prog_type {
-	BPF_TRAMP_FENTRY = 0,
-	BPF_TRAMP_FEXIT = 1,
-	BPF_TRAMP_MODIFY_RETURN = 2,
-	BPF_TRAMP_MAX = 3,
-	BPF_TRAMP_REPLACE = 4,
-};
-
-enum psi_task_count {
-	NR_IOWAIT = 0,
-	NR_MEMSTALL = 1,
-	NR_RUNNING = 2,
-	NR_ONCPU = 3,
-	NR_PSI_TASK_COUNTS = 4,
-};
-
-enum psi_states {
-	PSI_IO_SOME = 0,
-	PSI_IO_FULL = 1,
-	PSI_MEM_SOME = 2,
-	PSI_MEM_FULL = 3,
-	PSI_CPU_SOME = 4,
-	PSI_NONIDLE = 5,
-	NR_PSI_STATES = 6,
-};
-
-enum psi_aggregators {
-	PSI_AVGS = 0,
-	PSI_POLL = 1,
-	NR_PSI_AGGREGATORS = 2,
-};
-
-enum cgroup_subsys_id {
-	cpuset_cgrp_id = 0,
-	cpu_cgrp_id = 1,
-	cpuacct_cgrp_id = 2,
-	io_cgrp_id = 3,
-	memory_cgrp_id = 4,
-	devices_cgrp_id = 5,
-	freezer_cgrp_id = 6,
-	net_cls_cgrp_id = 7,
-	perf_event_cgrp_id = 8,
-	net_prio_cgrp_id = 9,
-	hugetlb_cgrp_id = 10,
-	pids_cgrp_id = 11,
-	rdma_cgrp_id = 12,
-	CGROUP_SUBSYS_COUNT = 13,
+struct seccomp_data {
+	int nr;
+	__u32 arch;
+	__u64 instruction_pointer;
+	__u64 args[6];
 };
 
 enum x86_pf_error_code {
@@ -15114,6 +15588,7 @@ enum x86_pf_error_code {
 	X86_PF_RSVD = 8,
 	X86_PF_INSTR = 16,
 	X86_PF_PK = 32,
+	X86_PF_SGX = 32768,
 };
 
 struct trace_event_raw_emulate_vsyscall {
@@ -15203,7 +15678,10 @@ enum perf_event_sample_format {
 	PERF_SAMPLE_PHYS_ADDR = 524288,
 	PERF_SAMPLE_AUX = 1048576,
 	PERF_SAMPLE_CGROUP = 2097152,
-	PERF_SAMPLE_MAX = 4194304,
+	PERF_SAMPLE_DATA_PAGE_SIZE = 4194304,
+	PERF_SAMPLE_CODE_PAGE_SIZE = 8388608,
+	PERF_SAMPLE_WEIGHT_STRUCT = 16777216,
+	PERF_SAMPLE_MAX = 33554432,
 	__PERF_SAMPLE_CALLCHAIN_EARLY = 0,
 };
 
@@ -15274,59 +15752,7 @@ struct pv_info {
 	const char *name;
 };
 
-struct cpuinfo_x86 {
-	__u8 x86;
-	__u8 x86_vendor;
-	__u8 x86_model;
-	__u8 x86_stepping;
-	int x86_tlbsize;
-	__u32 vmx_capability[3];
-	__u8 x86_virt_bits;
-	__u8 x86_phys_bits;
-	__u8 x86_coreid_bits;
-	__u8 cu_id;
-	__u32 extended_cpuid_level;
-	int cpuid_level;
-	union {
-		__u32 x86_capability[20];
-		long unsigned int x86_capability_alignment;
-	};
-	char x86_vendor_id[16];
-	char x86_model_id[64];
-	unsigned int x86_cache_size;
-	int x86_cache_alignment;
-	int x86_cache_max_rmid;
-	int x86_cache_occ_scale;
-	int x86_cache_mbm_width_offset;
-	int x86_power;
-	long unsigned int loops_per_jiffy;
-	u16 x86_max_cores;
-	u16 apicid;
-	u16 initial_apicid;
-	u16 x86_clflush_size;
-	u16 booted_cores;
-	u16 phys_proc_id;
-	u16 logical_proc_id;
-	u16 cpu_core_id;
-	u16 cpu_die_id;
-	u16 logical_die_id;
-	u16 cpu_index;
-	u32 microcode;
-	u8 x86_cache_bits;
-	unsigned int initialized: 1;
-};
-
-struct ldt_struct {
-	struct desc_struct *entries;
-	unsigned int nr_entries;
-	int slot;
-};
-
-struct physid_mask {
-	long unsigned int mask[512];
-};
-
-typedef struct physid_mask physid_mask_t;
+typedef bool (*smp_cond_func_t)(int, void *);
 
 struct x86_pmu_capability {
 	int version;
@@ -15876,10 +16302,10 @@ struct perf_guest_switch_msr {
 };
 
 struct perf_guest_info_callbacks {
-	int (*is_in_guest)();
-	int (*is_user_mode)();
-	long unsigned int (*get_guest_ip)();
-	void (*handle_intel_pt_intr)();
+	int (*is_in_guest)(void);
+	int (*is_user_mode)(void);
+	long unsigned int (*get_guest_ip)(void);
+	void (*handle_intel_pt_intr)(void);
 };
 
 struct device_attribute {
@@ -15955,43 +16381,11 @@ struct perf_pmu_events_ht_attr {
 	const char *event_str_noht;
 };
 
-struct apic {
-	void (*eoi_write)(u32, u32);
-	void (*native_eoi_write)(u32, u32);
-	void (*write)(u32, u32);
-	u32 (*read)(u32);
-	void (*wait_icr_idle)();
-	u32 (*safe_wait_icr_idle)();
-	void (*send_IPI)(int, int);
-	void (*send_IPI_mask)(const struct cpumask *, int);
-	void (*send_IPI_mask_allbutself)(const struct cpumask *, int);
-	void (*send_IPI_allbutself)(int);
-	void (*send_IPI_all)(int);
-	void (*send_IPI_self)(int);
-	u32 dest_logical;
-	u32 disable_esr;
-	u32 irq_delivery_mode;
-	u32 irq_dest_mode;
-	u32 (*calc_dest_apicid)(unsigned int);
-	u64 (*icr_read)();
-	void (*icr_write)(u32, u32);
-	int (*probe)();
-	int (*acpi_madt_oem_check)(char *, char *);
-	int (*apic_id_valid)(u32);
-	int (*apic_id_registered)();
-	bool (*check_apicid_used)(physid_mask_t *, int);
-	void (*init_apic_ldr)();
-	void (*ioapic_phys_id_map)(physid_mask_t *, physid_mask_t *);
-	void (*setup_apic_routing)();
-	int (*cpu_present_to_apicid)(int);
-	void (*apicid_to_cpu_present)(int, physid_mask_t *);
-	int (*check_phys_apicid_present)(int);
-	int (*phys_pkg_id)(int, int);
-	u32 (*get_apic_id)(long unsigned int);
-	u32 (*set_apic_id)(unsigned int);
-	int (*wakeup_secondary_cpu)(int, long unsigned int);
-	void (*inquire_remote_apic)(int);
-	char *name;
+struct perf_pmu_events_hybrid_attr {
+	struct device_attribute attr;
+	u64 id;
+	const char *event_str;
+	u64 pmu_type;
 };
 
 enum {
@@ -16524,13 +16918,12 @@ struct unwind_state {
 	struct task_struct *task;
 	int graph_idx;
 	bool error;
-	bool signal;
-	bool full_regs;
-	long unsigned int sp;
-	long unsigned int bp;
+	bool got_irq;
+	long unsigned int *bp;
+	long unsigned int *orig_sp;
 	long unsigned int ip;
+	long unsigned int *next_bp;
 	struct pt_regs *regs;
-	struct pt_regs *prev_regs;
 };
 
 enum extra_reg_type {
@@ -16607,7 +17000,7 @@ enum {
 struct cpu_hw_events {
 	struct perf_event *events[64];
 	long unsigned int active_mask[1];
-	long unsigned int running[1];
+	long unsigned int dirty[1];
 	int enabled;
 	int n_events;
 	int n_added;
@@ -16689,7 +17082,7 @@ union perf_capabilities {
 
 struct x86_pmu_quirk {
 	struct x86_pmu_quirk *next;
-	void (*func)();
+	void (*func)(void);
 };
 
 enum {
@@ -16699,11 +17092,38 @@ enum {
 	x86_lbr_exclusive_max = 3,
 };
 
+struct x86_hybrid_pmu {
+	struct pmu pmu;
+	const char *name;
+	u8 cpu_type;
+	cpumask_t supported_cpus;
+	union perf_capabilities intel_cap;
+	u64 intel_ctrl;
+	int max_pebs_events;
+	int num_counters;
+	int num_counters_fixed;
+	struct event_constraint unconstrained;
+	u64 hw_cache_event_ids[42];
+	u64 hw_cache_extra_regs[42];
+	struct event_constraint *event_constraints;
+	struct event_constraint *pebs_constraints;
+	struct extra_reg *extra_regs;
+	unsigned int late_ack: 1;
+	unsigned int mid_ack: 1;
+	unsigned int enabled_ack: 1;
+};
+
+enum hybrid_pmu_type {
+	hybrid_big = 64,
+	hybrid_small = 32,
+	hybrid_big_small = 96,
+};
+
 struct x86_pmu {
 	const char *name;
 	int version;
 	int (*handle_irq)(struct pt_regs *);
-	void (*disable_all)();
+	void (*disable_all)(void);
 	void (*enable_all)(int);
 	void (*enable)(struct perf_event *);
 	void (*disable)(struct perf_event *);
@@ -16739,8 +17159,8 @@ struct x86_pmu {
 	int perfctr_second_write;
 	u64 (*limit_period)(struct perf_event *, u64);
 	unsigned int late_ack: 1;
+	unsigned int mid_ack: 1;
 	unsigned int enabled_ack: 1;
-	unsigned int counter_freezing: 1;
 	int attr_rdpmc_broken;
 	int attr_rdpmc;
 	struct attribute **format_attrs;
@@ -16751,7 +17171,7 @@ struct x86_pmu {
 	void (*cpu_starting)(int);
 	void (*cpu_dying)(int);
 	void (*cpu_dead)(int);
-	void (*check_microcode)();
+	void (*check_microcode)(void);
 	void (*sched_task)(struct perf_event_context *, bool);
 	u64 intel_ctrl;
 	union perf_capabilities intel_cap;
@@ -16763,6 +17183,7 @@ struct x86_pmu {
 	unsigned int pebs_prec_dist: 1;
 	unsigned int pebs_no_tlb: 1;
 	unsigned int pebs_no_isolation: 1;
+	unsigned int pebs_block: 1;
 	int pebs_record_size;
 	int pebs_buffer_size;
 	int max_pebs_events;
@@ -16795,11 +17216,12 @@ struct x86_pmu {
 	unsigned int lbr_mispred: 1;
 	unsigned int lbr_timed_lbr: 1;
 	unsigned int lbr_br_type: 1;
-	void (*lbr_reset)();
+	void (*lbr_reset)(void);
 	void (*lbr_read)(struct cpu_hw_events *);
 	void (*lbr_save)(void *);
 	void (*lbr_restore)(void *);
 	atomic_t lbr_exclusive[3];
+	int num_topdown_events;
 	u64 (*update_topdown_event)(struct perf_event *);
 	int (*set_topdown_event_period)(struct perf_event *);
 	void (*swap_task_ctx)(struct perf_event_context *, struct perf_event_context *);
@@ -16810,6 +17232,10 @@ struct x86_pmu {
 	struct perf_guest_switch_msr * (*guest_get_msrs)(int *);
 	int (*check_period)(struct perf_event *, u64);
 	int (*aux_output_match)(struct perf_event *);
+	int (*filter_match)(struct perf_event *);
+	int num_hybrid_pmus;
+	struct x86_hybrid_pmu *hybrid_pmu;
+	u8 (*get_hybrid_cpu_type)(void);
 };
 
 struct sched_state {
@@ -16836,19 +17262,90 @@ struct perf_msr {
 	struct attribute_group *grp;
 	bool (*test)(int, void *);
 	bool no_check;
+	u64 mask;
 };
 
-struct amd_uncore {
-	int id;
-	int refcnt;
-	int cpu;
-	int num_counters;
-	int rdpmc_base;
-	u32 msr_base;
-	cpumask_t *active_mask;
-	struct pmu *pmu;
-	struct perf_event *events[6];
-	struct hlist_node node;
+typedef unsigned int insn_attr_t;
+
+typedef unsigned char insn_byte_t;
+
+typedef int insn_value_t;
+
+struct insn_field {
+	union {
+		insn_value_t value;
+		insn_byte_t bytes[4];
+	};
+	unsigned char got;
+	unsigned char nbytes;
+};
+
+struct insn {
+	struct insn_field prefixes;
+	struct insn_field rex_prefix;
+	struct insn_field vex_prefix;
+	struct insn_field opcode;
+	struct insn_field modrm;
+	struct insn_field sib;
+	struct insn_field displacement;
+	union {
+		struct insn_field immediate;
+		struct insn_field moffset1;
+		struct insn_field immediate1;
+	};
+	union {
+		struct insn_field moffset2;
+		struct insn_field immediate2;
+	};
+	int emulate_prefix_size;
+	insn_attr_t attr;
+	unsigned char opnd_bytes;
+	unsigned char addr_bytes;
+	unsigned char length;
+	unsigned char x86_64;
+	const insn_byte_t *kaddr;
+	const insn_byte_t *end_kaddr;
+	const insn_byte_t *next_byte;
+};
+
+enum {
+	PERF_BR_UNKNOWN = 0,
+	PERF_BR_COND = 1,
+	PERF_BR_UNCOND = 2,
+	PERF_BR_IND = 3,
+	PERF_BR_CALL = 4,
+	PERF_BR_IND_CALL = 5,
+	PERF_BR_RET = 6,
+	PERF_BR_SYSCALL = 7,
+	PERF_BR_SYSRET = 8,
+	PERF_BR_COND_CALL = 9,
+	PERF_BR_COND_RET = 10,
+	PERF_BR_ERET = 11,
+	PERF_BR_IRQ = 12,
+	PERF_BR_MAX = 13,
+};
+
+enum {
+	X86_BR_NONE = 0,
+	X86_BR_USER = 1,
+	X86_BR_KERNEL = 2,
+	X86_BR_CALL = 4,
+	X86_BR_RET = 8,
+	X86_BR_SYSCALL = 16,
+	X86_BR_SYSRET = 32,
+	X86_BR_INT = 64,
+	X86_BR_IRET = 128,
+	X86_BR_JCC = 256,
+	X86_BR_JMP = 512,
+	X86_BR_IRQ = 1024,
+	X86_BR_IND_CALL = 2048,
+	X86_BR_ABORT = 4096,
+	X86_BR_IN_TX = 8192,
+	X86_BR_NO_TX = 16384,
+	X86_BR_ZERO_CALL = 32768,
+	X86_BR_CALL_STACK = 65536,
+	X86_BR_IND_JMP = 131072,
+	X86_BR_TYPE_SAVE = 262144,
 };
 
 typedef int pci_power_t;
@@ -16857,18 +17354,24 @@ typedef unsigned int pci_channel_state_t;
 
 typedef short unsigned int pci_dev_flags_t;
 
+struct pci_vpd {
+	struct mutex lock;
+	unsigned int len;
+	u8 cap;
+};
+
 struct pci_bus;
 
 struct pci_slot;
 
 struct aer_stats;
 
+struct rcec_ea;
+
 struct pci_driver;
 
 struct pcie_link_state;
 
-struct pci_vpd;
-
 struct pci_sriov;
 
 struct pci_dev {
@@ -16888,6 +17391,9 @@ struct pci_dev {
 	u8 hdr_type;
 	u16 aer_cap;
 	struct aer_stats *aer_stats;
+	struct rcec_ea *rcec_ea;
+	struct pci_dev *rcec;
+	u32 devcap;
 	u8 pcie_cap;
 	u8 msi_cap;
 	u8 msix_cap;
@@ -16921,7 +17427,8 @@ struct pci_dev {
 	unsigned int d3cold_delay;
 	struct pcie_link_state *link_state;
 	unsigned int ltr_path: 1;
-	int l1ss;
+	u16 l1ss;
+	unsigned int pasid_no_tlp: 1;
 	unsigned int eetlp_prefix_path: 1;
 	pci_channel_state_t error_state;
 	struct device dev;
@@ -16951,7 +17458,6 @@ struct pci_dev {
 	unsigned int state_saved: 1;
 	unsigned int is_physfn: 1;
 	unsigned int is_virtfn: 1;
-	unsigned int reset_fn: 1;
 	unsigned int is_hotplug_bridge: 1;
 	unsigned int shpc_managed: 1;
 	unsigned int is_thunderbolt: 1;
@@ -16965,20 +17471,21 @@ struct pci_dev {
 	unsigned int link_active_reporting: 1;
 	unsigned int no_vf_scan: 1;
 	unsigned int no_command_memory: 1;
+	unsigned int rom_bar_overlap: 1;
 	pci_dev_flags_t dev_flags;
 	atomic_t enable_cnt;
 	u32 saved_config_space[16];
 	struct hlist_head saved_cap_space;
-	struct bin_attribute *rom_attr;
 	int rom_attr_enabled;
 	struct bin_attribute *res_attr[17];
 	struct bin_attribute *res_attr_wc[17];
 	unsigned int broken_cmd_compl: 1;
+	u16 ptm_cap;
 	unsigned int ptm_root: 1;
 	unsigned int ptm_enabled: 1;
 	u8 ptm_granularity;
 	const struct attribute_group **msi_irq_groups;
-	struct pci_vpd *vpd;
+	struct pci_vpd vpd;
 	u16 dpc_cap;
 	unsigned int dpc_rp_extensions: 1;
 	u8 dpc_rp_log_size;
@@ -16998,6 +17505,7 @@ struct pci_dev {
 	size_t romlen;
 	char *driver_override;
 	long unsigned int priv_flags;
+	u8 reset_methods[7];
 };
 
 struct pci_device_id {
@@ -17008,6 +17516,7 @@ struct pci_device_id {
 	__u32 class;
 	__u32 class_mask;
 	kernel_ulong_t driver_data;
+	__u32 override_only;
 };
 
 struct hotplug_slot;
@@ -17024,8 +17533,6 @@ typedef short unsigned int pci_bus_flags_t;
 
 struct pci_ops;
 
-struct msi_controller;
-
 struct pci_bus {
 	struct list_head node;
 	struct pci_bus *parent;
@@ -17037,7 +17544,6 @@ struct pci_bus {
 	struct list_head resources;
 	struct resource busn_res;
 	struct pci_ops *ops;
-	struct msi_controller *msi;
 	void *sysdata;
 	struct proc_dir_entry *procdir;
 	unsigned char number;
@@ -17086,8 +17592,11 @@ struct pci_driver {
 	int (*resume)(struct pci_dev *);
 	void (*shutdown)(struct pci_dev *);
 	int (*sriov_configure)(struct pci_dev *, int);
+	int (*sriov_set_msix_vec_count)(struct pci_dev *, int);
+	u32 (*sriov_get_vf_total_msix)(struct pci_dev *);
 	const struct pci_error_handlers *err_handler;
 	const struct attribute_group **groups;
+	const struct attribute_group **dev_groups;
 	struct device_driver driver;
 	struct pci_dynids dynids;
 };
@@ -17113,9 +17622,53 @@ struct pci_error_handlers {
 
 struct syscore_ops {
 	struct list_head node;
-	int (*suspend)();
-	void (*resume)();
-	void (*shutdown)();
+	int (*suspend)(void);
+	void (*resume)(void);
+	void (*shutdown)(void);
+};
+
+union ibs_fetch_ctl {
+	__u64 val;
+	struct {
+		__u64 fetch_maxcnt: 16;
+		__u64 fetch_cnt: 16;
+		__u64 fetch_lat: 16;
+		__u64 fetch_en: 1;
+		__u64 fetch_val: 1;
+		__u64 fetch_comp: 1;
+		__u64 ic_miss: 1;
+		__u64 phy_addr_valid: 1;
+		__u64 l1tlb_pgsz: 2;
+		__u64 l1tlb_miss: 1;
+		__u64 l2tlb_miss: 1;
+		__u64 rand_en: 1;
+		__u64 fetch_l2_miss: 1;
+		__u64 reserved: 5;
+	};
+};
+
+union ibs_op_ctl {
+	__u64 val;
+	struct {
+		__u64 opmaxcnt: 16;
+		__u64 reserved0: 1;
+		__u64 op_en: 1;
+		__u64 op_val: 1;
+		__u64 cnt_ctl: 1;
+		__u64 opmaxcnt_ext: 7;
+		__u64 reserved1: 5;
+		__u64 opcurcnt: 27;
+		__u64 reserved2: 5;
+	};
+};
+
+struct perf_ibs_data {
+	u32 size;
+	union {
+		u32 data[0];
+		u32 caps;
+	};
+	u64 regs[8];
 };
 
 enum ibs_states {
@@ -17150,15 +17703,6 @@ struct perf_ibs {
 	u64 (*get_count)(u64);
 };
 
-struct perf_ibs_data {
-	u32 size;
-	union {
-		u32 data[0];
-		u32 caps;
-	};
-	u64 regs[8];
-};
-
 struct amd_iommu;
 
 struct perf_amd_iommu {
@@ -17231,6 +17775,11 @@ union cpuid10_edx {
 	unsigned int full;
 };
 
+struct perf_pmu_format_hybrid_attr {
+	struct device_attribute attr;
+	u64 pmu_type;
+};
+
 enum {
 	LBR_FORMAT_32 = 0,
 	LBR_FORMAT_LIP = 1,
@@ -17288,8 +17837,10 @@ enum pageflags {
 	PG_mlocked = 21,
 	PG_uncached = 22,
 	PG_hwpoison = 23,
-	PG_arch_2 = 24,
-	__NR_PAGEFLAGS = 25,
+	PG_young = 24,
+	PG_idle = 25,
+	PG_arch_2 = 26,
+	__NR_PAGEFLAGS = 27,
 	PG_checked = 10,
 	PG_swapcache = 10,
 	PG_fscache = 14,
@@ -17299,6 +17850,7 @@ enum pageflags {
 	PG_xen_remapped = 10,
 	PG_slob_free = 13,
 	PG_double_map = 6,
+	PG_has_hwpoisoned = 17,
 	PG_isolated = 18,
 	PG_reported = 2,
 };
@@ -18357,1749 +18909,6 @@ struct lbr_entry {
 	u64 info;
 };
 
-struct pebs_basic {
-	u64 format_size;
-	u64 ip;
-	u64 applicable_counters;
-	u64 tsc;
-};
-
-struct pebs_meminfo {
-	u64 address;
-	u64 aux;
-	u64 latency;
-	u64 tsx_tuning;
-};
-
-struct pebs_gprs {
-	u64 flags;
-	u64 ip;
-	u64 ax;
-	u64 cx;
-	u64 dx;
-	u64 bx;
-	u64 sp;
-	u64 bp;
-	u64 si;
-	u64 di;
-	u64 r8;
-	u64 r9;
-	u64 r10;
-	u64 r11;
-	u64 r12;
-	u64 r13;
-	u64 r14;
-	u64 r15;
-};
-
-struct pebs_xmm {
-	u64 xmm[32];
-};
-
-struct x86_perf_regs {
-	struct pt_regs regs;
-	u64 *xmm_regs;
-};
-
-typedef unsigned int insn_attr_t;
-
-typedef unsigned char insn_byte_t;
-
-typedef int insn_value_t;
-
-struct insn_field {
-	union {
-		insn_value_t value;
-		insn_byte_t bytes[4];
-	};
-	unsigned char got;
-	unsigned char nbytes;
-};
-
-struct insn {
-	struct insn_field prefixes;
-	struct insn_field rex_prefix;
-	struct insn_field vex_prefix;
-	struct insn_field opcode;
-	struct insn_field modrm;
-	struct insn_field sib;
-	struct insn_field displacement;
-	union {
-		struct insn_field immediate;
-		struct insn_field moffset1;
-		struct insn_field immediate1;
-	};
-	union {
-		struct insn_field moffset2;
-		struct insn_field immediate2;
-	};
-	int emulate_prefix_size;
-	insn_attr_t attr;
-	unsigned char opnd_bytes;
-	unsigned char addr_bytes;
-	unsigned char length;
-	unsigned char x86_64;
-	const insn_byte_t *kaddr;
-	const insn_byte_t *end_kaddr;
-	const insn_byte_t *next_byte;
-};
-
-enum {
-	PERF_TXN_ELISION = 1,
-	PERF_TXN_TRANSACTION = 2,
-	PERF_TXN_SYNC = 4,
-	PERF_TXN_ASYNC = 8,
-	PERF_TXN_RETRY = 16,
-	PERF_TXN_CONFLICT = 32,
-	PERF_TXN_CAPACITY_WRITE = 64,
-	PERF_TXN_CAPACITY_READ = 128,
-	PERF_TXN_MAX = 256,
-	PERF_TXN_ABORT_MASK = 0,
-	PERF_TXN_ABORT_SHIFT = 32,
-};
-
-struct perf_event_header {
-	__u32 type;
-	__u16 misc;
-	__u16 size;
-};
-
-union intel_x86_pebs_dse {
-	u64 val;
-	struct {
-		unsigned int ld_dse: 4;
-		unsigned int ld_stlb_miss: 1;
-		unsigned int ld_locked: 1;
-		unsigned int ld_reserved: 26;
-	};
-	struct {
-		unsigned int st_l1d_hit: 1;
-		unsigned int st_reserved1: 3;
-		unsigned int st_stlb_miss: 1;
-		unsigned int st_locked: 1;
-		unsigned int st_reserved2: 26;
-	};
-};
-
-struct pebs_record_core {
-	u64 flags;
-	u64 ip;
-	u64 ax;
-	u64 bx;
-	u64 cx;
-	u64 dx;
-	u64 si;
-	u64 di;
-	u64 bp;
-	u64 sp;
-	u64 r8;
-	u64 r9;
-	u64 r10;
-	u64 r11;
-	u64 r12;
-	u64 r13;
-	u64 r14;
-	u64 r15;
-};
-
-struct pebs_record_nhm {
-	u64 flags;
-	u64 ip;
-	u64 ax;
-	u64 bx;
-	u64 cx;
-	u64 dx;
-	u64 si;
-	u64 di;
-	u64 bp;
-	u64 sp;
-	u64 r8;
-	u64 r9;
-	u64 r10;
-	u64 r11;
-	u64 r12;
-	u64 r13;
-	u64 r14;
-	u64 r15;
-	u64 status;
-	u64 dla;
-	u64 dse;
-	u64 lat;
-};
-
-union hsw_tsx_tuning {
-	struct {
-		u32 cycles_last_block: 32;
-		u32 hle_abort: 1;
-		u32 rtm_abort: 1;
-		u32 instruction_abort: 1;
-		u32 non_instruction_abort: 1;
-		u32 retry: 1;
-		u32 data_conflict: 1;
-		u32 capacity_writes: 1;
-		u32 capacity_reads: 1;
-	};
-	u64 value;
-};
-
-struct pebs_record_skl {
-	u64 flags;
-	u64 ip;
-	u64 ax;
-	u64 bx;
-	u64 cx;
-	u64 dx;
-	u64 si;
-	u64 di;
-	u64 bp;
-	u64 sp;
-	u64 r8;
-	u64 r9;
-	u64 r10;
-	u64 r11;
-	u64 r12;
-	u64 r13;
-	u64 r14;
-	u64 r15;
-	u64 status;
-	u64 dla;
-	u64 dse;
-	u64 lat;
-	u64 real_ip;
-	u64 tsx_tuning;
-	u64 tsc;
-};
-
-struct bts_record {
-	u64 from;
-	u64 to;
-	u64 flags;
-};
-
-enum {
-	PERF_BR_UNKNOWN = 0,
-	PERF_BR_COND = 1,
-	PERF_BR_UNCOND = 2,
-	PERF_BR_IND = 3,
-	PERF_BR_CALL = 4,
-	PERF_BR_IND_CALL = 5,
-	PERF_BR_RET = 6,
-	PERF_BR_SYSCALL = 7,
-	PERF_BR_SYSRET = 8,
-	PERF_BR_COND_CALL = 9,
-	PERF_BR_COND_RET = 10,
-	PERF_BR_MAX = 11,
-};
-
-enum xfeature {
-	XFEATURE_FP = 0,
-	XFEATURE_SSE = 1,
-	XFEATURE_YMM = 2,
-	XFEATURE_BNDREGS = 3,
-	XFEATURE_BNDCSR = 4,
-	XFEATURE_OPMASK = 5,
-	XFEATURE_ZMM_Hi256 = 6,
-	XFEATURE_Hi16_ZMM = 7,
-	XFEATURE_PT_UNIMPLEMENTED_SO_FAR = 8,
-	XFEATURE_PKRU = 9,
-	XFEATURE_PASID = 10,
-	XFEATURE_RSRVD_COMP_11 = 11,
-	XFEATURE_RSRVD_COMP_12 = 12,
-	XFEATURE_RSRVD_COMP_13 = 13,
-	XFEATURE_RSRVD_COMP_14 = 14,
-	XFEATURE_LBR = 15,
-	XFEATURE_MAX = 16,
-};
-
-struct arch_lbr_state {
-	u64 lbr_ctl;
-	u64 lbr_depth;
-	u64 ler_from;
-	u64 ler_to;
-	u64 ler_info;
-	struct lbr_entry entries[0];
-};
-
-union cpuid28_eax {
-	struct {
-		unsigned int lbr_depth_mask: 8;
-		unsigned int reserved: 22;
-		unsigned int lbr_deep_c_reset: 1;
-		unsigned int lbr_lip: 1;
-	} split;
-	unsigned int full;
-};
-
-union cpuid28_ebx {
-	struct {
-		unsigned int lbr_cpl: 1;
-		unsigned int lbr_filter: 1;
-		unsigned int lbr_call_stack: 1;
-	} split;
-	unsigned int full;
-};
-
-union cpuid28_ecx {
-	struct {
-		unsigned int lbr_mispred: 1;
-		unsigned int lbr_timed_lbr: 1;
-		unsigned int lbr_br_type: 1;
-	} split;
-	unsigned int full;
-};
-
-struct x86_pmu_lbr {
-	unsigned int nr;
-	unsigned int from;
-	unsigned int to;
-	unsigned int info;
-};
-
-struct x86_perf_task_context_opt {
-	int lbr_callstack_users;
-	int lbr_stack_state;
-	int log_id;
-};
-
-struct x86_perf_task_context {
-	u64 lbr_sel;
-	int tos;
-	int valid_lbrs;
-	struct x86_perf_task_context_opt opt;
-	struct lbr_entry lbr[32];
-};
-
-struct x86_perf_task_context_arch_lbr {
-	struct x86_perf_task_context_opt opt;
-	struct lbr_entry entries[0];
-};
-
-struct x86_perf_task_context_arch_lbr_xsave {
-	struct x86_perf_task_context_opt opt;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	union {
-		struct xregs_state xsave;
-		struct {
-			struct fxregs_state i387;
-			struct xstate_header header;
-			struct arch_lbr_state lbr;
-			long: 64;
-			long: 64;
-			long: 64;
-		};
-	};
-};
-
-enum {
-	X86_BR_NONE = 0,
-	X86_BR_USER = 1,
-	X86_BR_KERNEL = 2,
-	X86_BR_CALL = 4,
-	X86_BR_RET = 8,
-	X86_BR_SYSCALL = 16,
-	X86_BR_SYSRET = 32,
-	X86_BR_INT = 64,
-	X86_BR_IRET = 128,
-	X86_BR_JCC = 256,
-	X86_BR_JMP = 512,
-	X86_BR_IRQ = 1024,
-	X86_BR_IND_CALL = 2048,
-	X86_BR_ABORT = 4096,
-	X86_BR_IN_TX = 8192,
-	X86_BR_NO_TX = 16384,
-	X86_BR_ZERO_CALL = 32768,
-	X86_BR_CALL_STACK = 65536,
-	X86_BR_IND_JMP = 131072,
-	X86_BR_TYPE_SAVE = 262144,
-};
-
-enum {
-	LBR_NONE = 0,
-	LBR_VALID = 1,
-};
-
-enum {
-	ARCH_LBR_BR_TYPE_JCC = 0,
-	ARCH_LBR_BR_TYPE_NEAR_IND_JMP = 1,
-	ARCH_LBR_BR_TYPE_NEAR_REL_JMP = 2,
-	ARCH_LBR_BR_TYPE_NEAR_IND_CALL = 3,
-	ARCH_LBR_BR_TYPE_NEAR_REL_CALL = 4,
-	ARCH_LBR_BR_TYPE_NEAR_RET = 5,
-	ARCH_LBR_BR_TYPE_KNOWN_MAX = 5,
-	ARCH_LBR_BR_TYPE_MAP_MAX = 16,
-};
-
-enum P4_EVENTS {
-	P4_EVENT_TC_DELIVER_MODE = 0,
-	P4_EVENT_BPU_FETCH_REQUEST = 1,
-	P4_EVENT_ITLB_REFERENCE = 2,
-	P4_EVENT_MEMORY_CANCEL = 3,
-	P4_EVENT_MEMORY_COMPLETE = 4,
-	P4_EVENT_LOAD_PORT_REPLAY = 5,
-	P4_EVENT_STORE_PORT_REPLAY = 6,
-	P4_EVENT_MOB_LOAD_REPLAY = 7,
-	P4_EVENT_PAGE_WALK_TYPE = 8,
-	P4_EVENT_BSQ_CACHE_REFERENCE = 9,
-	P4_EVENT_IOQ_ALLOCATION = 10,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES = 11,
-	P4_EVENT_FSB_DATA_ACTIVITY = 12,
-	P4_EVENT_BSQ_ALLOCATION = 13,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES = 14,
-	P4_EVENT_SSE_INPUT_ASSIST = 15,
-	P4_EVENT_PACKED_SP_UOP = 16,
-	P4_EVENT_PACKED_DP_UOP = 17,
-	P4_EVENT_SCALAR_SP_UOP = 18,
-	P4_EVENT_SCALAR_DP_UOP = 19,
-	P4_EVENT_64BIT_MMX_UOP = 20,
-	P4_EVENT_128BIT_MMX_UOP = 21,
-	P4_EVENT_X87_FP_UOP = 22,
-	P4_EVENT_TC_MISC = 23,
-	P4_EVENT_GLOBAL_POWER_EVENTS = 24,
-	P4_EVENT_TC_MS_XFER = 25,
-	P4_EVENT_UOP_QUEUE_WRITES = 26,
-	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE = 27,
-	P4_EVENT_RETIRED_BRANCH_TYPE = 28,
-	P4_EVENT_RESOURCE_STALL = 29,
-	P4_EVENT_WC_BUFFER = 30,
-	P4_EVENT_B2B_CYCLES = 31,
-	P4_EVENT_BNR = 32,
-	P4_EVENT_SNOOP = 33,
-	P4_EVENT_RESPONSE = 34,
-	P4_EVENT_FRONT_END_EVENT = 35,
-	P4_EVENT_EXECUTION_EVENT = 36,
-	P4_EVENT_REPLAY_EVENT = 37,
-	P4_EVENT_INSTR_RETIRED = 38,
-	P4_EVENT_UOPS_RETIRED = 39,
-	P4_EVENT_UOP_TYPE = 40,
-	P4_EVENT_BRANCH_RETIRED = 41,
-	P4_EVENT_MISPRED_BRANCH_RETIRED = 42,
-	P4_EVENT_X87_ASSIST = 43,
-	P4_EVENT_MACHINE_CLEAR = 44,
-	P4_EVENT_INSTR_COMPLETED = 45,
-};
-
-enum P4_EVENT_OPCODES {
-	P4_EVENT_TC_DELIVER_MODE_OPCODE = 257,
-	P4_EVENT_BPU_FETCH_REQUEST_OPCODE = 768,
-	P4_EVENT_ITLB_REFERENCE_OPCODE = 6147,
-	P4_EVENT_MEMORY_CANCEL_OPCODE = 517,
-	P4_EVENT_MEMORY_COMPLETE_OPCODE = 2050,
-	P4_EVENT_LOAD_PORT_REPLAY_OPCODE = 1026,
-	P4_EVENT_STORE_PORT_REPLAY_OPCODE = 1282,
-	P4_EVENT_MOB_LOAD_REPLAY_OPCODE = 770,
-	P4_EVENT_PAGE_WALK_TYPE_OPCODE = 260,
-	P4_EVENT_BSQ_CACHE_REFERENCE_OPCODE = 3079,
-	P4_EVENT_IOQ_ALLOCATION_OPCODE = 774,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES_OPCODE = 6662,
-	P4_EVENT_FSB_DATA_ACTIVITY_OPCODE = 5894,
-	P4_EVENT_BSQ_ALLOCATION_OPCODE = 1287,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES_OPCODE = 1543,
-	P4_EVENT_SSE_INPUT_ASSIST_OPCODE = 13313,
-	P4_EVENT_PACKED_SP_UOP_OPCODE = 2049,
-	P4_EVENT_PACKED_DP_UOP_OPCODE = 3073,
-	P4_EVENT_SCALAR_SP_UOP_OPCODE = 2561,
-	P4_EVENT_SCALAR_DP_UOP_OPCODE = 3585,
-	P4_EVENT_64BIT_MMX_UOP_OPCODE = 513,
-	P4_EVENT_128BIT_MMX_UOP_OPCODE = 6657,
-	P4_EVENT_X87_FP_UOP_OPCODE = 1025,
-	P4_EVENT_TC_MISC_OPCODE = 1537,
-	P4_EVENT_GLOBAL_POWER_EVENTS_OPCODE = 4870,
-	P4_EVENT_TC_MS_XFER_OPCODE = 1280,
-	P4_EVENT_UOP_QUEUE_WRITES_OPCODE = 2304,
-	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE_OPCODE = 1282,
-	P4_EVENT_RETIRED_BRANCH_TYPE_OPCODE = 1026,
-	P4_EVENT_RESOURCE_STALL_OPCODE = 257,
-	P4_EVENT_WC_BUFFER_OPCODE = 1285,
-	P4_EVENT_B2B_CYCLES_OPCODE = 5635,
-	P4_EVENT_BNR_OPCODE = 2051,
-	P4_EVENT_SNOOP_OPCODE = 1539,
-	P4_EVENT_RESPONSE_OPCODE = 1027,
-	P4_EVENT_FRONT_END_EVENT_OPCODE = 2053,
-	P4_EVENT_EXECUTION_EVENT_OPCODE = 3077,
-	P4_EVENT_REPLAY_EVENT_OPCODE = 2309,
-	P4_EVENT_INSTR_RETIRED_OPCODE = 516,
-	P4_EVENT_UOPS_RETIRED_OPCODE = 260,
-	P4_EVENT_UOP_TYPE_OPCODE = 514,
-	P4_EVENT_BRANCH_RETIRED_OPCODE = 1541,
-	P4_EVENT_MISPRED_BRANCH_RETIRED_OPCODE = 772,
-	P4_EVENT_X87_ASSIST_OPCODE = 773,
-	P4_EVENT_MACHINE_CLEAR_OPCODE = 517,
-	P4_EVENT_INSTR_COMPLETED_OPCODE = 1796,
-};
-
-enum P4_ESCR_EMASKS {
-	P4_EVENT_TC_DELIVER_MODE__DD = 512,
-	P4_EVENT_TC_DELIVER_MODE__DB = 1024,
-	P4_EVENT_TC_DELIVER_MODE__DI = 2048,
-	P4_EVENT_TC_DELIVER_MODE__BD = 4096,
-	P4_EVENT_TC_DELIVER_MODE__BB = 8192,
-	P4_EVENT_TC_DELIVER_MODE__BI = 16384,
-	P4_EVENT_TC_DELIVER_MODE__ID = 32768,
-	P4_EVENT_BPU_FETCH_REQUEST__TCMISS = 512,
-	P4_EVENT_ITLB_REFERENCE__HIT = 512,
-	P4_EVENT_ITLB_REFERENCE__MISS = 1024,
-	P4_EVENT_ITLB_REFERENCE__HIT_UK = 2048,
-	P4_EVENT_MEMORY_CANCEL__ST_RB_FULL = 2048,
-	P4_EVENT_MEMORY_CANCEL__64K_CONF = 4096,
-	P4_EVENT_MEMORY_COMPLETE__LSC = 512,
-	P4_EVENT_MEMORY_COMPLETE__SSC = 1024,
-	P4_EVENT_LOAD_PORT_REPLAY__SPLIT_LD = 1024,
-	P4_EVENT_STORE_PORT_REPLAY__SPLIT_ST = 1024,
-	P4_EVENT_MOB_LOAD_REPLAY__NO_STA = 1024,
-	P4_EVENT_MOB_LOAD_REPLAY__NO_STD = 4096,
-	P4_EVENT_MOB_LOAD_REPLAY__PARTIAL_DATA = 8192,
-	P4_EVENT_MOB_LOAD_REPLAY__UNALGN_ADDR = 16384,
-	P4_EVENT_PAGE_WALK_TYPE__DTMISS = 512,
-	P4_EVENT_PAGE_WALK_TYPE__ITMISS = 1024,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_HITS = 512,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_HITE = 1024,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_HITM = 2048,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_HITS = 4096,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_HITE = 8192,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_HITM = 16384,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_MISS = 131072,
-	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_MISS = 262144,
-	P4_EVENT_BSQ_CACHE_REFERENCE__WR_2ndL_MISS = 524288,
-	P4_EVENT_IOQ_ALLOCATION__DEFAULT = 512,
-	P4_EVENT_IOQ_ALLOCATION__ALL_READ = 16384,
-	P4_EVENT_IOQ_ALLOCATION__ALL_WRITE = 32768,
-	P4_EVENT_IOQ_ALLOCATION__MEM_UC = 65536,
-	P4_EVENT_IOQ_ALLOCATION__MEM_WC = 131072,
-	P4_EVENT_IOQ_ALLOCATION__MEM_WT = 262144,
-	P4_EVENT_IOQ_ALLOCATION__MEM_WP = 524288,
-	P4_EVENT_IOQ_ALLOCATION__MEM_WB = 1048576,
-	P4_EVENT_IOQ_ALLOCATION__OWN = 4194304,
-	P4_EVENT_IOQ_ALLOCATION__OTHER = 8388608,
-	P4_EVENT_IOQ_ALLOCATION__PREFETCH = 16777216,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__DEFAULT = 512,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__ALL_READ = 16384,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__ALL_WRITE = 32768,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_UC = 65536,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WC = 131072,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WT = 262144,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WP = 524288,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WB = 1048576,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__OWN = 4194304,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__OTHER = 8388608,
-	P4_EVENT_IOQ_ACTIVE_ENTRIES__PREFETCH = 16777216,
-	P4_EVENT_FSB_DATA_ACTIVITY__DRDY_DRV = 512,
-	P4_EVENT_FSB_DATA_ACTIVITY__DRDY_OWN = 1024,
-	P4_EVENT_FSB_DATA_ACTIVITY__DRDY_OTHER = 2048,
-	P4_EVENT_FSB_DATA_ACTIVITY__DBSY_DRV = 4096,
-	P4_EVENT_FSB_DATA_ACTIVITY__DBSY_OWN = 8192,
-	P4_EVENT_FSB_DATA_ACTIVITY__DBSY_OTHER = 16384,
-	P4_EVENT_BSQ_ALLOCATION__REQ_TYPE0 = 512,
-	P4_EVENT_BSQ_ALLOCATION__REQ_TYPE1 = 1024,
-	P4_EVENT_BSQ_ALLOCATION__REQ_LEN0 = 2048,
-	P4_EVENT_BSQ_ALLOCATION__REQ_LEN1 = 4096,
-	P4_EVENT_BSQ_ALLOCATION__REQ_IO_TYPE = 16384,
-	P4_EVENT_BSQ_ALLOCATION__REQ_LOCK_TYPE = 32768,
-	P4_EVENT_BSQ_ALLOCATION__REQ_CACHE_TYPE = 65536,
-	P4_EVENT_BSQ_ALLOCATION__REQ_SPLIT_TYPE = 131072,
-	P4_EVENT_BSQ_ALLOCATION__REQ_DEM_TYPE = 262144,
-	P4_EVENT_BSQ_ALLOCATION__REQ_ORD_TYPE = 524288,
-	P4_EVENT_BSQ_ALLOCATION__MEM_TYPE0 = 1048576,
-	P4_EVENT_BSQ_ALLOCATION__MEM_TYPE1 = 2097152,
-	P4_EVENT_BSQ_ALLOCATION__MEM_TYPE2 = 4194304,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_TYPE0 = 512,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_TYPE1 = 1024,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_LEN0 = 2048,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_LEN1 = 4096,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_IO_TYPE = 16384,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_LOCK_TYPE = 32768,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_CACHE_TYPE = 65536,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_SPLIT_TYPE = 131072,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_DEM_TYPE = 262144,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_ORD_TYPE = 524288,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__MEM_TYPE0 = 1048576,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__MEM_TYPE1 = 2097152,
-	P4_EVENT_BSQ_ACTIVE_ENTRIES__MEM_TYPE2 = 4194304,
-	P4_EVENT_SSE_INPUT_ASSIST__ALL = 16777216,
-	P4_EVENT_PACKED_SP_UOP__ALL = 16777216,
-	P4_EVENT_PACKED_DP_UOP__ALL = 16777216,
-	P4_EVENT_SCALAR_SP_UOP__ALL = 16777216,
-	P4_EVENT_SCALAR_DP_UOP__ALL = 16777216,
-	P4_EVENT_64BIT_MMX_UOP__ALL = 16777216,
-	P4_EVENT_128BIT_MMX_UOP__ALL = 16777216,
-	P4_EVENT_X87_FP_UOP__ALL = 16777216,
-	P4_EVENT_TC_MISC__FLUSH = 8192,
-	P4_EVENT_GLOBAL_POWER_EVENTS__RUNNING = 512,
-	P4_EVENT_TC_MS_XFER__CISC = 512,
-	P4_EVENT_UOP_QUEUE_WRITES__FROM_TC_BUILD = 512,
-	P4_EVENT_UOP_QUEUE_WRITES__FROM_TC_DELIVER = 1024,
-	P4_EVENT_UOP_QUEUE_WRITES__FROM_ROM = 2048,
-	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__CONDITIONAL = 1024,
-	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__CALL = 2048,
-	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__RETURN = 4096,
-	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__INDIRECT = 8192,
-	P4_EVENT_RETIRED_BRANCH_TYPE__CONDITIONAL = 1024,
-	P4_EVENT_RETIRED_BRANCH_TYPE__CALL = 2048,
-	P4_EVENT_RETIRED_BRANCH_TYPE__RETURN = 4096,
-	P4_EVENT_RETIRED_BRANCH_TYPE__INDIRECT = 8192,
-	P4_EVENT_RESOURCE_STALL__SBFULL = 16384,
-	P4_EVENT_WC_BUFFER__WCB_EVICTS = 512,
-	P4_EVENT_WC_BUFFER__WCB_FULL_EVICTS = 1024,
-	P4_EVENT_FRONT_END_EVENT__NBOGUS = 512,
-	P4_EVENT_FRONT_END_EVENT__BOGUS = 1024,
-	P4_EVENT_EXECUTION_EVENT__NBOGUS0 = 512,
-	P4_EVENT_EXECUTION_EVENT__NBOGUS1 = 1024,
-	P4_EVENT_EXECUTION_EVENT__NBOGUS2 = 2048,
-	P4_EVENT_EXECUTION_EVENT__NBOGUS3 = 4096,
-	P4_EVENT_EXECUTION_EVENT__BOGUS0 = 8192,
-	P4_EVENT_EXECUTION_EVENT__BOGUS1 = 16384,
-	P4_EVENT_EXECUTION_EVENT__BOGUS2 = 32768,
-	P4_EVENT_EXECUTION_EVENT__BOGUS3 = 65536,
-	P4_EVENT_REPLAY_EVENT__NBOGUS = 512,
-	P4_EVENT_REPLAY_EVENT__BOGUS = 1024,
-	P4_EVENT_INSTR_RETIRED__NBOGUSNTAG = 512,
-	P4_EVENT_INSTR_RETIRED__NBOGUSTAG = 1024,
-	P4_EVENT_INSTR_RETIRED__BOGUSNTAG = 2048,
-	P4_EVENT_INSTR_RETIRED__BOGUSTAG = 4096,
-	P4_EVENT_UOPS_RETIRED__NBOGUS = 512,
-	P4_EVENT_UOPS_RETIRED__BOGUS = 1024,
-	P4_EVENT_UOP_TYPE__TAGLOADS = 1024,
-	P4_EVENT_UOP_TYPE__TAGSTORES = 2048,
-	P4_EVENT_BRANCH_RETIRED__MMNP = 512,
-	P4_EVENT_BRANCH_RETIRED__MMNM = 1024,
-	P4_EVENT_BRANCH_RETIRED__MMTP = 2048,
-	P4_EVENT_BRANCH_RETIRED__MMTM = 4096,
-	P4_EVENT_MISPRED_BRANCH_RETIRED__NBOGUS = 512,
-	P4_EVENT_X87_ASSIST__FPSU = 512,
-	P4_EVENT_X87_ASSIST__FPSO = 1024,
-	P4_EVENT_X87_ASSIST__POAO = 2048,
-	P4_EVENT_X87_ASSIST__POAU = 4096,
-	P4_EVENT_X87_ASSIST__PREA = 8192,
-	P4_EVENT_MACHINE_CLEAR__CLEAR = 512,
-	P4_EVENT_MACHINE_CLEAR__MOCLEAR = 1024,
-	P4_EVENT_MACHINE_CLEAR__SMCLEAR = 2048,
-	P4_EVENT_INSTR_COMPLETED__NBOGUS = 512,
-	P4_EVENT_INSTR_COMPLETED__BOGUS = 1024,
-};
-
-enum P4_PEBS_METRIC {
-	P4_PEBS_METRIC__none = 0,
-	P4_PEBS_METRIC__1stl_cache_load_miss_retired = 1,
-	P4_PEBS_METRIC__2ndl_cache_load_miss_retired = 2,
-	P4_PEBS_METRIC__dtlb_load_miss_retired = 3,
-	P4_PEBS_METRIC__dtlb_store_miss_retired = 4,
-	P4_PEBS_METRIC__dtlb_all_miss_retired = 5,
-	P4_PEBS_METRIC__tagged_mispred_branch = 6,
-	P4_PEBS_METRIC__mob_load_replay_retired = 7,
-	P4_PEBS_METRIC__split_load_retired = 8,
-	P4_PEBS_METRIC__split_store_retired = 9,
-	P4_PEBS_METRIC__max = 10,
-};
-
-struct p4_event_bind {
-	unsigned int opcode;
-	unsigned int escr_msr[2];
-	unsigned int escr_emask;
-	unsigned int shared;
-	char cntr[6];
-};
-
-struct p4_pebs_bind {
-	unsigned int metric_pebs;
-	unsigned int metric_vert;
-};
-
-struct p4_event_alias {
-	u64 original;
-	u64 alternative;
-};
-
-enum cpuid_regs_idx {
-	CPUID_EAX = 0,
-	CPUID_EBX = 1,
-	CPUID_ECX = 2,
-	CPUID_EDX = 3,
-};
-
-struct dev_ext_attribute {
-	struct device_attribute attr;
-	void *var;
-};
-
-enum pt_capabilities {
-	PT_CAP_max_subleaf = 0,
-	PT_CAP_cr3_filtering = 1,
-	PT_CAP_psb_cyc = 2,
-	PT_CAP_ip_filtering = 3,
-	PT_CAP_mtc = 4,
-	PT_CAP_ptwrite = 5,
-	PT_CAP_power_event_trace = 6,
-	PT_CAP_topa_output = 7,
-	PT_CAP_topa_multiple_entries = 8,
-	PT_CAP_single_range_output = 9,
-	PT_CAP_output_subsys = 10,
-	PT_CAP_payloads_lip = 11,
-	PT_CAP_num_address_ranges = 12,
-	PT_CAP_mtc_periods = 13,
-	PT_CAP_cycle_thresholds = 14,
-	PT_CAP_psb_periods = 15,
-};
-
-enum perf_addr_filter_action_t {
-	PERF_ADDR_FILTER_ACTION_STOP = 0,
-	PERF_ADDR_FILTER_ACTION_START = 1,
-	PERF_ADDR_FILTER_ACTION_FILTER = 2,
-};
-
-struct perf_addr_filter {
-	struct list_head entry;
-	struct path path;
-	long unsigned int offset;
-	long unsigned int size;
-	enum perf_addr_filter_action_t action;
-};
-
-struct topa_entry {
-	u64 end: 1;
-	u64 rsvd0: 1;
-	u64 intr: 1;
-	u64 rsvd1: 1;
-	u64 stop: 1;
-	u64 rsvd2: 1;
-	u64 size: 4;
-	u64 rsvd3: 2;
-	u64 base: 36;
-	u64 rsvd4: 16;
-};
-
-struct pt_pmu {
-	struct pmu pmu;
-	u32 caps[8];
-	bool vmx;
-	bool branch_en_always_on;
-	long unsigned int max_nonturbo_ratio;
-	unsigned int tsc_art_num;
-	unsigned int tsc_art_den;
-};
-
-struct topa;
-
-struct pt_buffer {
-	struct list_head tables;
-	struct topa *first;
-	struct topa *last;
-	struct topa *cur;
-	unsigned int cur_idx;
-	size_t output_off;
-	long unsigned int nr_pages;
-	local_t data_size;
-	local64_t head;
-	bool snapshot;
-	bool single;
-	long int stop_pos;
-	long int intr_pos;
-	struct topa_entry *stop_te;
-	struct topa_entry *intr_te;
-	void **data_pages;
-};
-
-struct topa {
-	struct list_head list;
-	u64 offset;
-	size_t size;
-	int last;
-	unsigned int z_count;
-};
-
-struct pt_filter {
-	long unsigned int msr_a;
-	long unsigned int msr_b;
-	long unsigned int config;
-};
-
-struct pt_filters {
-	struct pt_filter filter[4];
-	unsigned int nr_filters;
-};
-
-struct pt {
-	struct perf_output_handle handle;
-	struct pt_filters filters;
-	int handle_nmi;
-	int vmx_on;
-	u64 output_base;
-	u64 output_mask;
-};
-
-struct pt_cap_desc {
-	const char *name;
-	u32 leaf;
-	u8 reg;
-	u32 mask;
-};
-
-struct pt_address_range {
-	long unsigned int msr_a;
-	long unsigned int msr_b;
-	unsigned int reg_off;
-};
-
-struct topa_page {
-	struct topa_entry table[507];
-	struct topa topa;
-};
-
-typedef s8 int8_t;
-
-typedef u8 uint8_t;
-
-typedef u64 uint64_t;
-
-struct atomic_notifier_head {
-	spinlock_t lock;
-	struct notifier_block *head;
-};
-
-enum xen_domain_type {
-	XEN_NATIVE = 0,
-	XEN_PV_DOMAIN = 1,
-	XEN_HVM_DOMAIN = 2,
-};
-
-typedef long unsigned int xen_pfn_t;
-
-typedef long unsigned int xen_ulong_t;
-
-struct arch_shared_info {
-	long unsigned int max_pfn;
-	xen_pfn_t pfn_to_mfn_frame_list_list;
-	long unsigned int nmi_reason;
-	long unsigned int p2m_cr3;
-	long unsigned int p2m_vaddr;
-	long unsigned int p2m_generation;
-};
-
-struct arch_vcpu_info {
-	long unsigned int cr2;
-	long unsigned int pad;
-};
-
-struct pvclock_wall_clock {
-	u32 version;
-	u32 sec;
-	u32 nsec;
-};
-
-struct vcpu_info {
-	uint8_t evtchn_upcall_pending;
-	uint8_t evtchn_upcall_mask;
-	xen_ulong_t evtchn_pending_sel;
-	struct arch_vcpu_info arch;
-	struct pvclock_vcpu_time_info time;
-};
-
-struct shared_info {
-	struct vcpu_info vcpu_info[32];
-	xen_ulong_t evtchn_pending[64];
-	xen_ulong_t evtchn_mask[64];
-	struct pvclock_wall_clock wc;
-	struct arch_shared_info arch;
-};
-
-struct start_info {
-	char magic[32];
-	long unsigned int nr_pages;
-	long unsigned int shared_info;
-	uint32_t flags;
-	xen_pfn_t store_mfn;
-	uint32_t store_evtchn;
-	union {
-		struct {
-			xen_pfn_t mfn;
-			uint32_t evtchn;
-		} domU;
-		struct {
-			uint32_t info_off;
-			uint32_t info_size;
-		} dom0;
-	} console;
-	long unsigned int pt_base;
-	long unsigned int nr_pt_frames;
-	long unsigned int mfn_list;
-	long unsigned int mod_start;
-	long unsigned int mod_len;
-	int8_t cmd_line[1024];
-	long unsigned int first_p2m_pfn;
-	long unsigned int nr_p2m_frames;
-};
-
-struct sched_shutdown {
-	unsigned int reason;
-};
-
-struct sched_pin_override {
-	int32_t pcpu;
-};
-
-struct vcpu_register_vcpu_info {
-	uint64_t mfn;
-	uint32_t offset;
-	uint32_t rsvd;
-};
-
-struct xmaddr {
-	phys_addr_t maddr;
-};
-
-typedef struct xmaddr xmaddr_t;
-
-struct xpaddr {
-	phys_addr_t paddr;
-};
-
-typedef struct xpaddr xpaddr_t;
-
-typedef s16 int16_t;
-
-typedef u16 uint16_t;
-
-struct clocksource {
-	u64 (*read)(struct clocksource *);
-	u64 mask;
-	u32 mult;
-	u32 shift;
-	u64 max_idle_ns;
-	u32 maxadj;
-	u32 uncertainty_margin;
-	u64 max_cycles;
-	const char *name;
-	struct list_head list;
-	int rating;
-	enum vdso_clock_mode vdso_clock_mode;
-	long unsigned int flags;
-	int (*enable)(struct clocksource *);
-	void (*disable)(struct clocksource *);
-	void (*suspend)(struct clocksource *);
-	void (*resume)(struct clocksource *);
-	void (*mark_unstable)(struct clocksource *);
-	void (*tick_stable)(struct clocksource *);
-	struct list_head wd_list;
-	u64 cs_last;
-	u64 wd_last;
-	struct module *owner;
-};
-
-struct x86_init_mpparse {
-	void (*setup_ioapic_ids)();
-	void (*find_smp_config)();
-	void (*get_smp_config)(unsigned int);
-};
-
-struct x86_init_resources {
-	void (*probe_roms)();
-	void (*reserve_resources)();
-	char * (*memory_setup)();
-};
-
-struct x86_init_irqs {
-	void (*pre_vector_init)();
-	void (*intr_init)();
-	void (*intr_mode_select)();
-	void (*intr_mode_init)();
-	struct irq_domain * (*create_pci_msi_domain)();
-};
-
-struct x86_init_oem {
-	void (*arch_setup)();
-	void (*banner)();
-};
-
-struct x86_init_paging {
-	void (*pagetable_init)();
-};
-
-struct x86_init_timers {
-	void (*setup_percpu_clockev)();
-	void (*timer_init)();
-	void (*wallclock_init)();
-};
-
-struct x86_init_iommu {
-	int (*iommu_init)();
-};
-
-struct x86_init_pci {
-	int (*arch_init)();
-	int (*init)();
-	void (*init_irq)();
-	void (*fixup_irqs)();
-};
-
-struct x86_hyper_init {
-	void (*init_platform)();
-	void (*guest_late_init)();
-	bool (*x2apic_available)();
-	void (*init_mem_mapping)();
-	void (*init_after_bootmem)();
-};
-
-struct x86_init_acpi {
-	void (*set_root_pointer)(u64);
-	u64 (*get_root_pointer)();
-	void (*reduced_hw_early_init)();
-};
-
-struct x86_init_ops {
-	struct x86_init_resources resources;
-	struct x86_init_mpparse mpparse;
-	struct x86_init_irqs irqs;
-	struct x86_init_oem oem;
-	struct x86_init_paging paging;
-	struct x86_init_timers timers;
-	struct x86_init_iommu iommu;
-	struct x86_init_pci pci;
-	struct x86_hyper_init hyper;
-	struct x86_init_acpi acpi;
-};
-
-struct x86_cpuinit_ops {
-	void (*setup_percpu_clockev)();
-	void (*early_percpu_clock_init)();
-	void (*fixup_cpu_id)(struct cpuinfo_x86 *, int);
-};
-
-enum clock_event_state {
-	CLOCK_EVT_STATE_DETACHED = 0,
-	CLOCK_EVT_STATE_SHUTDOWN = 1,
-	CLOCK_EVT_STATE_PERIODIC = 2,
-	CLOCK_EVT_STATE_ONESHOT = 3,
-	CLOCK_EVT_STATE_ONESHOT_STOPPED = 4,
-};
-
-struct clock_event_device {
-	void (*event_handler)(struct clock_event_device *);
-	int (*set_next_event)(long unsigned int, struct clock_event_device *);
-	int (*set_next_ktime)(ktime_t, struct clock_event_device *);
-	ktime_t next_event;
-	u64 max_delta_ns;
-	u64 min_delta_ns;
-	u32 mult;
-	u32 shift;
-	enum clock_event_state state_use_accessors;
-	unsigned int features;
-	long unsigned int retries;
-	int (*set_state_periodic)(struct clock_event_device *);
-	int (*set_state_oneshot)(struct clock_event_device *);
-	int (*set_state_oneshot_stopped)(struct clock_event_device *);
-	int (*set_state_shutdown)(struct clock_event_device *);
-	int (*tick_resume)(struct clock_event_device *);
-	void (*broadcast)(const struct cpumask *);
-	void (*suspend)(struct clock_event_device *);
-	void (*resume)(struct clock_event_device *);
-	long unsigned int min_delta_ticks;
-	long unsigned int max_delta_ticks;
-	const char *name;
-	int rating;
-	int irq;
-	int bound_on;
-	const struct cpumask *cpumask;
-	struct list_head list;
-	struct module *owner;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct tk_read_base {
-	struct clocksource *clock;
-	u64 mask;
-	u64 cycle_last;
-	u32 mult;
-	u32 shift;
-	u64 xtime_nsec;
-	ktime_t base;
-	u64 base_real;
-};
-
-struct timekeeper {
-	struct tk_read_base tkr_mono;
-	struct tk_read_base tkr_raw;
-	u64 xtime_sec;
-	long unsigned int ktime_sec;
-	struct timespec64 wall_to_monotonic;
-	ktime_t offs_real;
-	ktime_t offs_boot;
-	ktime_t offs_tai;
-	s32 tai_offset;
-	unsigned int clock_was_set_seq;
-	u8 cs_was_changed_seq;
-	ktime_t next_leap_ktime;
-	u64 raw_sec;
-	struct timespec64 monotonic_to_boot;
-	u64 cycle_interval;
-	u64 xtime_interval;
-	s64 xtime_remainder;
-	u64 raw_interval;
-	u64 ntp_tick;
-	s64 ntp_error;
-	u32 ntp_error_shift;
-	u32 ntp_err_mult;
-	u32 skip_second_overflow;
-};
-
-typedef unsigned char *__guest_handle_uchar;
-
-typedef char *__guest_handle_char;
-
-typedef void *__guest_handle_void;
-
-typedef uint64_t *__guest_handle_uint64_t;
-
-typedef uint32_t *__guest_handle_uint32_t;
-
-struct vcpu_time_info {
-	uint32_t version;
-	uint32_t pad0;
-	uint64_t tsc_timestamp;
-	uint64_t system_time;
-	uint32_t tsc_to_system_mul;
-	int8_t tsc_shift;
-	int8_t pad1[3];
-};
-
-struct xenpf_settime32 {
-	uint32_t secs;
-	uint32_t nsecs;
-	uint64_t system_time;
-};
-
-struct xenpf_settime64 {
-	uint64_t secs;
-	uint32_t nsecs;
-	uint32_t mbz;
-	uint64_t system_time;
-};
-
-struct xenpf_add_memtype {
-	xen_pfn_t mfn;
-	uint64_t nr_mfns;
-	uint32_t type;
-	uint32_t handle;
-	uint32_t reg;
-};
-
-struct xenpf_del_memtype {
-	uint32_t handle;
-	uint32_t reg;
-};
-
-struct xenpf_read_memtype {
-	uint32_t reg;
-	xen_pfn_t mfn;
-	uint64_t nr_mfns;
-	uint32_t type;
-};
-
-struct xenpf_microcode_update {
-	__guest_handle_void data;
-	uint32_t length;
-};
-
-struct xenpf_platform_quirk {
-	uint32_t quirk_id;
-};
-
-struct xenpf_efi_time {
-	uint16_t year;
-	uint8_t month;
-	uint8_t day;
-	uint8_t hour;
-	uint8_t min;
-	uint8_t sec;
-	uint32_t ns;
-	int16_t tz;
-	uint8_t daylight;
-};
-
-struct xenpf_efi_guid {
-	uint32_t data1;
-	uint16_t data2;
-	uint16_t data3;
-	uint8_t data4[8];
-};
-
-struct xenpf_efi_runtime_call {
-	uint32_t function;
-	uint32_t misc;
-	xen_ulong_t status;
-	union {
-		struct {
-			struct xenpf_efi_time time;
-			uint32_t resolution;
-			uint32_t accuracy;
-		} get_time;
-		struct xenpf_efi_time set_time;
-		struct xenpf_efi_time get_wakeup_time;
-		struct xenpf_efi_time set_wakeup_time;
-		struct {
-			__guest_handle_void name;
-			xen_ulong_t size;
-			__guest_handle_void data;
-			struct xenpf_efi_guid vendor_guid;
-		} get_variable;
-		struct {
-			__guest_handle_void name;
-			xen_ulong_t size;
-			__guest_handle_void data;
-			struct xenpf_efi_guid vendor_guid;
-		} set_variable;
-		struct {
-			xen_ulong_t size;
-			__guest_handle_void name;
-			struct xenpf_efi_guid vendor_guid;
-		} get_next_variable_name;
-		struct {
-			uint32_t attr;
-			uint64_t max_store_size;
-			uint64_t remain_store_size;
-			uint64_t max_size;
-		} query_variable_info;
-		struct {
-			__guest_handle_void capsule_header_array;
-			xen_ulong_t capsule_count;
-			uint64_t max_capsule_size;
-			uint32_t reset_type;
-		} query_capsule_capabilities;
-		struct {
-			__guest_handle_void capsule_header_array;
-			xen_ulong_t capsule_count;
-			uint64_t sg_list;
-		} update_capsule;
-	} u;
-};
-
-union xenpf_efi_info {
-	uint32_t version;
-	struct {
-		uint64_t addr;
-		uint32_t nent;
-	} cfg;
-	struct {
-		uint32_t revision;
-		uint32_t bufsz;
-		__guest_handle_void name;
-	} vendor;
-	struct {
-		uint64_t addr;
-		uint64_t size;
-		uint64_t attr;
-		uint32_t type;
-	} mem;
-};
-
-struct xenpf_firmware_info {
-	uint32_t type;
-	uint32_t index;
-	union {
-		struct {
-			uint8_t device;
-			uint8_t version;
-			uint16_t interface_support;
-			uint16_t legacy_max_cylinder;
-			uint8_t legacy_max_head;
-			uint8_t legacy_sectors_per_track;
-			__guest_handle_void edd_params;
-		} disk_info;
-		struct {
-			uint8_t device;
-			uint32_t mbr_signature;
-		} disk_mbr_signature;
-		struct {
-			uint8_t capabilities;
-			uint8_t edid_transfer_time;
-			__guest_handle_uchar edid;
-		} vbeddc_info;
-		union xenpf_efi_info efi_info;
-		uint8_t kbd_shift_flags;
-	} u;
-};
-
-struct xenpf_enter_acpi_sleep {
-	uint16_t val_a;
-	uint16_t val_b;
-	uint32_t sleep_state;
-	uint32_t flags;
-};
-
-struct xenpf_change_freq {
-	uint32_t flags;
-	uint32_t cpu;
-	uint64_t freq;
-};
-
-struct xenpf_getidletime {
-	__guest_handle_uchar cpumap_bitmap;
-	uint32_t cpumap_nr_cpus;
-	__guest_handle_uint64_t idletime;
-	uint64_t now;
-};
-
-struct xen_power_register {
-	uint32_t space_id;
-	uint32_t bit_width;
-	uint32_t bit_offset;
-	uint32_t access_size;
-	uint64_t address;
-};
-
-struct xen_processor_csd {
-	uint32_t domain;
-	uint32_t coord_type;
-	uint32_t num;
-};
-
-typedef struct xen_processor_csd *__guest_handle_xen_processor_csd;
-
-struct xen_processor_cx {
-	struct xen_power_register reg;
-	uint8_t type;
-	uint32_t latency;
-	uint32_t power;
-	uint32_t dpcnt;
-	__guest_handle_xen_processor_csd dp;
-};
-
-typedef struct xen_processor_cx *__guest_handle_xen_processor_cx;
-
-struct xen_processor_flags {
-	uint32_t bm_control: 1;
-	uint32_t bm_check: 1;
-	uint32_t has_cst: 1;
-	uint32_t power_setup_done: 1;
-	uint32_t bm_rld_set: 1;
-};
-
-struct xen_processor_power {
-	uint32_t count;
-	struct xen_processor_flags flags;
-	__guest_handle_xen_processor_cx states;
-};
-
-struct xen_pct_register {
-	uint8_t descriptor;
-	uint16_t length;
-	uint8_t space_id;
-	uint8_t bit_width;
-	uint8_t bit_offset;
-	uint8_t reserved;
-	uint64_t address;
-};
-
-struct xen_processor_px {
-	uint64_t core_frequency;
-	uint64_t power;
-	uint64_t transition_latency;
-	uint64_t bus_master_latency;
-	uint64_t control;
-	uint64_t status;
-};
-
-typedef struct xen_processor_px *__guest_handle_xen_processor_px;
-
-struct xen_psd_package {
-	uint64_t num_entries;
-	uint64_t revision;
-	uint64_t domain;
-	uint64_t coord_type;
-	uint64_t num_processors;
-};
-
-struct xen_processor_performance {
-	uint32_t flags;
-	uint32_t platform_limit;
-	struct xen_pct_register control_register;
-	struct xen_pct_register status_register;
-	uint32_t state_count;
-	__guest_handle_xen_processor_px states;
-	struct xen_psd_package domain_info;
-	uint32_t shared_type;
-};
-
-struct xenpf_set_processor_pminfo {
-	uint32_t id;
-	uint32_t type;
-	union {
-		struct xen_processor_power power;
-		struct xen_processor_performance perf;
-		__guest_handle_uint32_t pdc;
-	};
-};
-
-struct xenpf_pcpuinfo {
-	uint32_t xen_cpuid;
-	uint32_t max_present;
-	uint32_t flags;
-	uint32_t apic_id;
-	uint32_t acpi_id;
-};
-
-struct xenpf_cpu_ol {
-	uint32_t cpuid;
-};
-
-struct xenpf_cpu_hotadd {
-	uint32_t apic_id;
-	uint32_t acpi_id;
-	uint32_t pxm;
-};
-
-struct xenpf_mem_hotadd {
-	uint64_t spfn;
-	uint64_t epfn;
-	uint32_t pxm;
-	uint32_t flags;
-};
-
-struct xenpf_core_parking {
-	uint32_t type;
-	uint32_t idle_nums;
-};
-
-struct xenpf_symdata {
-	uint32_t namelen;
-	uint32_t symnum;
-	__guest_handle_char name;
-	uint64_t address;
-	char type;
-};
-
-struct xen_platform_op {
-	uint32_t cmd;
-	uint32_t interface_version;
-	union {
-		struct xenpf_settime32 settime32;
-		struct xenpf_settime64 settime64;
-		struct xenpf_add_memtype add_memtype;
-		struct xenpf_del_memtype del_memtype;
-		struct xenpf_read_memtype read_memtype;
-		struct xenpf_microcode_update microcode;
-		struct xenpf_platform_quirk platform_quirk;
-		struct xenpf_efi_runtime_call efi_runtime_call;
-		struct xenpf_firmware_info firmware_info;
-		struct xenpf_enter_acpi_sleep enter_acpi_sleep;
-		struct xenpf_change_freq change_freq;
-		struct xenpf_getidletime getidletime;
-		struct xenpf_set_processor_pminfo set_pminfo;
-		struct xenpf_pcpuinfo pcpu_info;
-		struct xenpf_cpu_ol cpu_ol;
-		struct xenpf_cpu_hotadd cpu_add;
-		struct xenpf_mem_hotadd mem_add;
-		struct xenpf_core_parking core_parking;
-		struct xenpf_symdata symdata;
-		uint8_t pad[128];
-	} u;
-};
-
-struct vcpu_set_singleshot_timer {
-	uint64_t timeout_abs_ns;
-	uint32_t flags;
-};
-
-typedef struct vcpu_time_info *__guest_handle_vcpu_time_info;
-
-struct vcpu_register_time_memory_area {
-	union {
-		__guest_handle_vcpu_time_info h;
-		struct pvclock_vcpu_time_info *v;
-		uint64_t p;
-	} addr;
-};
-
-struct xen_clock_event_device {
-	struct clock_event_device evt;
-	char name[16];
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-typedef uint16_t grant_status_t;
-
-struct grant_frames {
-	xen_pfn_t *pfn;
-	unsigned int count;
-	void *vaddr;
-};
-
-struct gnttab_vm_area {
-	struct vm_struct *area;
-	pte_t **ptes;
-	int idx;
-};
-
-enum acpi_irq_model_id {
-	ACPI_IRQ_MODEL_PIC = 0,
-	ACPI_IRQ_MODEL_IOAPIC = 1,
-	ACPI_IRQ_MODEL_IOSAPIC = 2,
-	ACPI_IRQ_MODEL_PLATFORM = 3,
-	ACPI_IRQ_MODEL_GIC = 4,
-	ACPI_IRQ_MODEL_COUNT = 5,
-};
-
-typedef uint16_t domid_t;
-
-struct xen_add_to_physmap {
-	domid_t domid;
-	uint16_t size;
-	unsigned int space;
-	xen_ulong_t idx;
-	xen_pfn_t gpfn;
-};
-
-struct machine_ops {
-	void (*restart)(char *);
-	void (*halt)();
-	void (*power_off)();
-	void (*shutdown)();
-	void (*crash_shutdown)(struct pt_regs *);
-	void (*emergency_restart)();
-};
-
-enum x86_hypervisor_type {
-	X86_HYPER_NATIVE = 0,
-	X86_HYPER_VMWARE = 1,
-	X86_HYPER_MS_HYPERV = 2,
-	X86_HYPER_XEN_PV = 3,
-	X86_HYPER_XEN_HVM = 4,
-	X86_HYPER_KVM = 5,
-	X86_HYPER_JAILHOUSE = 6,
-	X86_HYPER_ACRN = 7,
-};
-
-struct hypervisor_x86 {
-	const char *name;
-	uint32_t (*detect)();
-	enum x86_hypervisor_type type;
-	struct x86_hyper_init init;
-	struct x86_hyper_runtime runtime;
-	bool ignore_nopv;
-};
-
-enum e820_type {
-	E820_TYPE_RAM = 1,
-	E820_TYPE_RESERVED = 2,
-	E820_TYPE_ACPI = 3,
-	E820_TYPE_NVS = 4,
-	E820_TYPE_UNUSABLE = 5,
-	E820_TYPE_PMEM = 7,
-	E820_TYPE_PRAM = 12,
-	E820_TYPE_SOFT_RESERVED = 4026531839,
-	E820_TYPE_RESERVED_KERN = 128,
-};
-
-struct xen_hvm_pagetable_dying {
-	domid_t domid;
-	__u64 gpa;
-};
-
-enum hvmmem_type_t {
-	HVMMEM_ram_rw = 0,
-	HVMMEM_ram_ro = 1,
-	HVMMEM_mmio_dm = 2,
-};
-
-struct xen_hvm_get_mem_type {
-	domid_t domid;
-	uint16_t mem_type;
-	uint16_t pad[2];
-	uint64_t pfn;
-};
-
-struct e820_entry {
-	u64 addr;
-	u64 size;
-	enum e820_type type;
-} __attribute__((packed));
-
-struct e820_table {
-	__u32 nr_entries;
-	struct e820_entry entries[3200];
-};
-
-typedef xen_pfn_t *__guest_handle_xen_pfn_t;
-
-typedef long unsigned int xen_callback_t;
-
-struct mmu_update {
-	uint64_t ptr;
-	uint64_t val;
-};
-
-struct xen_memory_region {
-	long unsigned int start_pfn;
-	long unsigned int n_pfns;
-};
-
-struct callback_register {
-	uint16_t type;
-	uint16_t flags;
-	xen_callback_t address;
-};
-
-struct xen_memory_reservation {
-	__guest_handle_xen_pfn_t extent_start;
-	xen_ulong_t nr_extents;
-	unsigned int extent_order;
-	unsigned int address_bits;
-	domid_t domid;
-};
-
-struct xen_memory_map {
-	unsigned int nr_entries;
-	__guest_handle_void buffer;
-};
-
-struct x86_apic_ops {
-	unsigned int (*io_apic_read)(unsigned int, unsigned int);
-	void (*restore)();
-};
-
-struct physdev_apic {
-	long unsigned int apic_physbase;
-	uint32_t reg;
-	uint32_t value;
-};
-
-typedef long unsigned int uintptr_t;
-
-struct xen_pmu_amd_ctxt {
-	uint32_t counters;
-	uint32_t ctrls;
-	uint64_t regs[0];
-};
-
-struct xen_pmu_cntr_pair {
-	uint64_t counter;
-	uint64_t control;
-};
-
-struct xen_pmu_intel_ctxt {
-	uint32_t fixed_counters;
-	uint32_t arch_counters;
-	uint64_t global_ctrl;
-	uint64_t global_ovf_ctrl;
-	uint64_t global_status;
-	uint64_t fixed_ctrl;
-	uint64_t ds_area;
-	uint64_t pebs_enable;
-	uint64_t debugctl;
-	uint64_t regs[0];
-};
-
-struct xen_pmu_regs {
-	uint64_t ip;
-	uint64_t sp;
-	uint64_t flags;
-	uint16_t cs;
-	uint16_t ss;
-	uint8_t cpl;
-	uint8_t pad[3];
-};
-
-struct xen_pmu_arch {
-	union {
-		struct xen_pmu_regs regs;
-		uint8_t pad[64];
-	} r;
-	uint64_t pmu_flags;
-	union {
-		uint32_t lapic_lvtpc;
-		uint64_t pad;
-	} l;
-	union {
-		struct xen_pmu_amd_ctxt amd;
-		struct xen_pmu_intel_ctxt intel;
-		uint8_t pad[128];
-	} c;
-};
-
-struct xen_pmu_params {
-	struct {
-		uint32_t maj;
-		uint32_t min;
-	} version;
-	uint64_t val;
-	uint32_t vcpu;
-	uint32_t pad;
-};
-
-struct xen_pmu_data {
-	uint32_t vcpu_id;
-	uint32_t pcpu_id;
-	domid_t domain_id;
-	uint8_t pad[6];
-	struct xen_pmu_arch pmu;
-};
-
-struct xenpmu {
-	struct xen_pmu_data *xenpmu_data;
-	uint8_t flags;
-};
-
-enum pg_level {
-	PG_LEVEL_NONE = 0,
-	PG_LEVEL_4K = 1,
-	PG_LEVEL_2M = 2,
-	PG_LEVEL_1G = 3,
-	PG_LEVEL_512G = 4,
-	PG_LEVEL_NUM = 5,
-};
-
-typedef uint32_t grant_ref_t;
-
-typedef uint32_t grant_handle_t;
-
-struct gnttab_map_grant_ref {
-	uint64_t host_addr;
-	uint32_t flags;
-	grant_ref_t ref;
-	domid_t dom;
-	int16_t status;
-	grant_handle_t handle;
-	uint64_t dev_bus_addr;
-};
-
-struct gnttab_unmap_grant_ref {
-	uint64_t host_addr;
-	uint64_t dev_bus_addr;
-	grant_handle_t handle;
-	int16_t status;
-};
-
-enum {
-	GATE_INTERRUPT = 14,
-	GATE_TRAP = 15,
-	GATE_CALL = 12,
-	GATE_TASK = 5,
-};
-
-enum {
-	DESC_TSS = 9,
-	DESC_LDT = 2,
-	DESCTYPE_S = 16,
-};
-
-enum paravirt_lazy_mode {
-	PARAVIRT_LAZY_NONE = 0,
-	PARAVIRT_LAZY_MMU = 1,
-	PARAVIRT_LAZY_CPU = 2,
-};
-
 struct x86_hw_tss {
 	u32 reserved1;
 	u64 sp0;
@@ -20113,6 +18922,14 @@ struct x86_hw_tss {
 	u16 io_bitmap_base;
 } __attribute__((packed));
 
+struct entry_stack {
+	char stack[4096];
+};
+
+struct entry_stack_page {
+	struct entry_stack stack;
+};
+
 struct x86_io_bitmap {
 	u64 prev_sequence;
 	unsigned int prev_max;
@@ -20620,6 +19437,2172 @@ struct tss_struct {
 	long: 64;
 };
 
+struct debug_store_buffers {
+	char bts_buffer[65536];
+	char pebs_buffer[65536];
+};
+
+struct cea_exception_stacks {
+	char DF_stack_guard[4096];
+	char DF_stack[8192];
+	char NMI_stack_guard[4096];
+	char NMI_stack[8192];
+	char DB_stack_guard[4096];
+	char DB_stack[8192];
+	char MCE_stack_guard[4096];
+	char MCE_stack[8192];
+	char VC_stack_guard[4096];
+	char VC_stack[8192];
+	char VC2_stack_guard[4096];
+	char VC2_stack[8192];
+	char IST_top_guard[4096];
+};
+
+struct cpu_entry_area {
+	char gdt[4096];
+	struct entry_stack_page entry_stack_page;
+	struct tss_struct tss;
+	struct cea_exception_stacks estacks;
+	struct debug_store cpu_debug_store;
+	struct debug_store_buffers cpu_debug_buffers;
+};
+
+struct pebs_basic {
+	u64 format_size;
+	u64 ip;
+	u64 applicable_counters;
+	u64 tsc;
+};
+
+struct pebs_meminfo {
+	u64 address;
+	u64 aux;
+	u64 latency;
+	u64 tsx_tuning;
+};
+
+struct pebs_gprs {
+	u64 flags;
+	u64 ip;
+	u64 ax;
+	u64 cx;
+	u64 dx;
+	u64 bx;
+	u64 sp;
+	u64 bp;
+	u64 si;
+	u64 di;
+	u64 r8;
+	u64 r9;
+	u64 r10;
+	u64 r11;
+	u64 r12;
+	u64 r13;
+	u64 r14;
+	u64 r15;
+};
+
+struct pebs_xmm {
+	u64 xmm[32];
+};
+
+struct x86_perf_regs {
+	struct pt_regs regs;
+	u64 *xmm_regs;
+};
+
+enum {
+	PERF_TXN_ELISION = 1,
+	PERF_TXN_TRANSACTION = 2,
+	PERF_TXN_SYNC = 4,
+	PERF_TXN_ASYNC = 8,
+	PERF_TXN_RETRY = 16,
+	PERF_TXN_CONFLICT = 32,
+	PERF_TXN_CAPACITY_WRITE = 64,
+	PERF_TXN_CAPACITY_READ = 128,
+	PERF_TXN_MAX = 256,
+	PERF_TXN_ABORT_MASK = 0,
+	PERF_TXN_ABORT_SHIFT = 32,
+};
+
+struct perf_event_header {
+	__u32 type;
+	__u16 misc;
+	__u16 size;
+};
+
+union intel_x86_pebs_dse {
+	u64 val;
+	struct {
+		unsigned int ld_dse: 4;
+		unsigned int ld_stlb_miss: 1;
+		unsigned int ld_locked: 1;
+		unsigned int ld_data_blk: 1;
+		unsigned int ld_addr_blk: 1;
+		unsigned int ld_reserved: 24;
+	};
+	struct {
+		unsigned int st_l1d_hit: 1;
+		unsigned int st_reserved1: 3;
+		unsigned int st_stlb_miss: 1;
+		unsigned int st_locked: 1;
+		unsigned int st_reserved2: 26;
+	};
+	struct {
+		unsigned int st_lat_dse: 4;
+		unsigned int st_lat_stlb_miss: 1;
+		unsigned int st_lat_locked: 1;
+		unsigned int ld_reserved3: 26;
+	};
+};
+
+struct pebs_record_core {
+	u64 flags;
+	u64 ip;
+	u64 ax;
+	u64 bx;
+	u64 cx;
+	u64 dx;
+	u64 si;
+	u64 di;
+	u64 bp;
+	u64 sp;
+	u64 r8;
+	u64 r9;
+	u64 r10;
+	u64 r11;
+	u64 r12;
+	u64 r13;
+	u64 r14;
+	u64 r15;
+};
+
+struct pebs_record_nhm {
+	u64 flags;
+	u64 ip;
+	u64 ax;
+	u64 bx;
+	u64 cx;
+	u64 dx;
+	u64 si;
+	u64 di;
+	u64 bp;
+	u64 sp;
+	u64 r8;
+	u64 r9;
+	u64 r10;
+	u64 r11;
+	u64 r12;
+	u64 r13;
+	u64 r14;
+	u64 r15;
+	u64 status;
+	u64 dla;
+	u64 dse;
+	u64 lat;
+};
+
+union hsw_tsx_tuning {
+	struct {
+		u32 cycles_last_block: 32;
+		u32 hle_abort: 1;
+		u32 rtm_abort: 1;
+		u32 instruction_abort: 1;
+		u32 non_instruction_abort: 1;
+		u32 retry: 1;
+		u32 data_conflict: 1;
+		u32 capacity_writes: 1;
+		u32 capacity_reads: 1;
+	};
+	u64 value;
+};
+
+struct pebs_record_skl {
+	u64 flags;
+	u64 ip;
+	u64 ax;
+	u64 bx;
+	u64 cx;
+	u64 dx;
+	u64 si;
+	u64 di;
+	u64 bp;
+	u64 sp;
+	u64 r8;
+	u64 r9;
+	u64 r10;
+	u64 r11;
+	u64 r12;
+	u64 r13;
+	u64 r14;
+	u64 r15;
+	u64 status;
+	u64 dla;
+	u64 dse;
+	u64 lat;
+	u64 real_ip;
+	u64 tsx_tuning;
+	u64 tsc;
+};
+
+struct bts_record {
+	u64 from;
+	u64 to;
+	u64 flags;
+};
+
+enum xfeature {
+	XFEATURE_FP = 0,
+	XFEATURE_SSE = 1,
+	XFEATURE_YMM = 2,
+	XFEATURE_BNDREGS = 3,
+	XFEATURE_BNDCSR = 4,
+	XFEATURE_OPMASK = 5,
+	XFEATURE_ZMM_Hi256 = 6,
+	XFEATURE_Hi16_ZMM = 7,
+	XFEATURE_PT_UNIMPLEMENTED_SO_FAR = 8,
+	XFEATURE_PKRU = 9,
+	XFEATURE_PASID = 10,
+	XFEATURE_RSRVD_COMP_11 = 11,
+	XFEATURE_RSRVD_COMP_12 = 12,
+	XFEATURE_RSRVD_COMP_13 = 13,
+	XFEATURE_RSRVD_COMP_14 = 14,
+	XFEATURE_LBR = 15,
+	XFEATURE_RSRVD_COMP_16 = 16,
+	XFEATURE_XTILE_CFG = 17,
+	XFEATURE_XTILE_DATA = 18,
+	XFEATURE_MAX = 19,
+};
+
+struct arch_lbr_state {
+	u64 lbr_ctl;
+	u64 lbr_depth;
+	u64 ler_from;
+	u64 ler_to;
+	u64 ler_info;
+	struct lbr_entry entries[0];
+};
+
+union cpuid28_eax {
+	struct {
+		unsigned int lbr_depth_mask: 8;
+		unsigned int reserved: 22;
+		unsigned int lbr_deep_c_reset: 1;
+		unsigned int lbr_lip: 1;
+	} split;
+	unsigned int full;
+};
+
+union cpuid28_ebx {
+	struct {
+		unsigned int lbr_cpl: 1;
+		unsigned int lbr_filter: 1;
+		unsigned int lbr_call_stack: 1;
+	} split;
+	unsigned int full;
+};
+
+union cpuid28_ecx {
+	struct {
+		unsigned int lbr_mispred: 1;
+		unsigned int lbr_timed_lbr: 1;
+		unsigned int lbr_br_type: 1;
+	} split;
+	unsigned int full;
+};
+
+struct x86_pmu_lbr {
+	unsigned int nr;
+	unsigned int from;
+	unsigned int to;
+	unsigned int info;
+};
+
+struct x86_perf_task_context_opt {
+	int lbr_callstack_users;
+	int lbr_stack_state;
+	int log_id;
+};
+
+struct x86_perf_task_context {
+	u64 lbr_sel;
+	int tos;
+	int valid_lbrs;
+	struct x86_perf_task_context_opt opt;
+	struct lbr_entry lbr[32];
+};
+
+struct x86_perf_task_context_arch_lbr {
+	struct x86_perf_task_context_opt opt;
+	struct lbr_entry entries[0];
+};
+
+struct x86_perf_task_context_arch_lbr_xsave {
+	struct x86_perf_task_context_opt opt;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	union {
+		struct xregs_state xsave;
+		struct {
+			struct fxregs_state i387;
+			struct xstate_header header;
+			struct arch_lbr_state lbr;
+			long: 64;
+			long: 64;
+			long: 64;
+		};
+	};
+};
+
+enum {
+	LBR_NONE = 0,
+	LBR_VALID = 1,
+};
+
+enum {
+	ARCH_LBR_BR_TYPE_JCC = 0,
+	ARCH_LBR_BR_TYPE_NEAR_IND_JMP = 1,
+	ARCH_LBR_BR_TYPE_NEAR_REL_JMP = 2,
+	ARCH_LBR_BR_TYPE_NEAR_IND_CALL = 3,
+	ARCH_LBR_BR_TYPE_NEAR_REL_CALL = 4,
+	ARCH_LBR_BR_TYPE_NEAR_RET = 5,
+	ARCH_LBR_BR_TYPE_KNOWN_MAX = 5,
+	ARCH_LBR_BR_TYPE_MAP_MAX = 16,
+};
+
+enum P4_EVENTS {
+	P4_EVENT_TC_DELIVER_MODE = 0,
+	P4_EVENT_BPU_FETCH_REQUEST = 1,
+	P4_EVENT_ITLB_REFERENCE = 2,
+	P4_EVENT_MEMORY_CANCEL = 3,
+	P4_EVENT_MEMORY_COMPLETE = 4,
+	P4_EVENT_LOAD_PORT_REPLAY = 5,
+	P4_EVENT_STORE_PORT_REPLAY = 6,
+	P4_EVENT_MOB_LOAD_REPLAY = 7,
+	P4_EVENT_PAGE_WALK_TYPE = 8,
+	P4_EVENT_BSQ_CACHE_REFERENCE = 9,
+	P4_EVENT_IOQ_ALLOCATION = 10,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES = 11,
+	P4_EVENT_FSB_DATA_ACTIVITY = 12,
+	P4_EVENT_BSQ_ALLOCATION = 13,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES = 14,
+	P4_EVENT_SSE_INPUT_ASSIST = 15,
+	P4_EVENT_PACKED_SP_UOP = 16,
+	P4_EVENT_PACKED_DP_UOP = 17,
+	P4_EVENT_SCALAR_SP_UOP = 18,
+	P4_EVENT_SCALAR_DP_UOP = 19,
+	P4_EVENT_64BIT_MMX_UOP = 20,
+	P4_EVENT_128BIT_MMX_UOP = 21,
+	P4_EVENT_X87_FP_UOP = 22,
+	P4_EVENT_TC_MISC = 23,
+	P4_EVENT_GLOBAL_POWER_EVENTS = 24,
+	P4_EVENT_TC_MS_XFER = 25,
+	P4_EVENT_UOP_QUEUE_WRITES = 26,
+	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE = 27,
+	P4_EVENT_RETIRED_BRANCH_TYPE = 28,
+	P4_EVENT_RESOURCE_STALL = 29,
+	P4_EVENT_WC_BUFFER = 30,
+	P4_EVENT_B2B_CYCLES = 31,
+	P4_EVENT_BNR = 32,
+	P4_EVENT_SNOOP = 33,
+	P4_EVENT_RESPONSE = 34,
+	P4_EVENT_FRONT_END_EVENT = 35,
+	P4_EVENT_EXECUTION_EVENT = 36,
+	P4_EVENT_REPLAY_EVENT = 37,
+	P4_EVENT_INSTR_RETIRED = 38,
+	P4_EVENT_UOPS_RETIRED = 39,
+	P4_EVENT_UOP_TYPE = 40,
+	P4_EVENT_BRANCH_RETIRED = 41,
+	P4_EVENT_MISPRED_BRANCH_RETIRED = 42,
+	P4_EVENT_X87_ASSIST = 43,
+	P4_EVENT_MACHINE_CLEAR = 44,
+	P4_EVENT_INSTR_COMPLETED = 45,
+};
+
+enum P4_EVENT_OPCODES {
+	P4_EVENT_TC_DELIVER_MODE_OPCODE = 257,
+	P4_EVENT_BPU_FETCH_REQUEST_OPCODE = 768,
+	P4_EVENT_ITLB_REFERENCE_OPCODE = 6147,
+	P4_EVENT_MEMORY_CANCEL_OPCODE = 517,
+	P4_EVENT_MEMORY_COMPLETE_OPCODE = 2050,
+	P4_EVENT_LOAD_PORT_REPLAY_OPCODE = 1026,
+	P4_EVENT_STORE_PORT_REPLAY_OPCODE = 1282,
+	P4_EVENT_MOB_LOAD_REPLAY_OPCODE = 770,
+	P4_EVENT_PAGE_WALK_TYPE_OPCODE = 260,
+	P4_EVENT_BSQ_CACHE_REFERENCE_OPCODE = 3079,
+	P4_EVENT_IOQ_ALLOCATION_OPCODE = 774,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES_OPCODE = 6662,
+	P4_EVENT_FSB_DATA_ACTIVITY_OPCODE = 5894,
+	P4_EVENT_BSQ_ALLOCATION_OPCODE = 1287,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES_OPCODE = 1543,
+	P4_EVENT_SSE_INPUT_ASSIST_OPCODE = 13313,
+	P4_EVENT_PACKED_SP_UOP_OPCODE = 2049,
+	P4_EVENT_PACKED_DP_UOP_OPCODE = 3073,
+	P4_EVENT_SCALAR_SP_UOP_OPCODE = 2561,
+	P4_EVENT_SCALAR_DP_UOP_OPCODE = 3585,
+	P4_EVENT_64BIT_MMX_UOP_OPCODE = 513,
+	P4_EVENT_128BIT_MMX_UOP_OPCODE = 6657,
+	P4_EVENT_X87_FP_UOP_OPCODE = 1025,
+	P4_EVENT_TC_MISC_OPCODE = 1537,
+	P4_EVENT_GLOBAL_POWER_EVENTS_OPCODE = 4870,
+	P4_EVENT_TC_MS_XFER_OPCODE = 1280,
+	P4_EVENT_UOP_QUEUE_WRITES_OPCODE = 2304,
+	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE_OPCODE = 1282,
+	P4_EVENT_RETIRED_BRANCH_TYPE_OPCODE = 1026,
+	P4_EVENT_RESOURCE_STALL_OPCODE = 257,
+	P4_EVENT_WC_BUFFER_OPCODE = 1285,
+	P4_EVENT_B2B_CYCLES_OPCODE = 5635,
+	P4_EVENT_BNR_OPCODE = 2051,
+	P4_EVENT_SNOOP_OPCODE = 1539,
+	P4_EVENT_RESPONSE_OPCODE = 1027,
+	P4_EVENT_FRONT_END_EVENT_OPCODE = 2053,
+	P4_EVENT_EXECUTION_EVENT_OPCODE = 3077,
+	P4_EVENT_REPLAY_EVENT_OPCODE = 2309,
+	P4_EVENT_INSTR_RETIRED_OPCODE = 516,
+	P4_EVENT_UOPS_RETIRED_OPCODE = 260,
+	P4_EVENT_UOP_TYPE_OPCODE = 514,
+	P4_EVENT_BRANCH_RETIRED_OPCODE = 1541,
+	P4_EVENT_MISPRED_BRANCH_RETIRED_OPCODE = 772,
+	P4_EVENT_X87_ASSIST_OPCODE = 773,
+	P4_EVENT_MACHINE_CLEAR_OPCODE = 517,
+	P4_EVENT_INSTR_COMPLETED_OPCODE = 1796,
+};
+
+enum P4_ESCR_EMASKS {
+	P4_EVENT_TC_DELIVER_MODE__DD = 512,
+	P4_EVENT_TC_DELIVER_MODE__DB = 1024,
+	P4_EVENT_TC_DELIVER_MODE__DI = 2048,
+	P4_EVENT_TC_DELIVER_MODE__BD = 4096,
+	P4_EVENT_TC_DELIVER_MODE__BB = 8192,
+	P4_EVENT_TC_DELIVER_MODE__BI = 16384,
+	P4_EVENT_TC_DELIVER_MODE__ID = 32768,
+	P4_EVENT_BPU_FETCH_REQUEST__TCMISS = 512,
+	P4_EVENT_ITLB_REFERENCE__HIT = 512,
+	P4_EVENT_ITLB_REFERENCE__MISS = 1024,
+	P4_EVENT_ITLB_REFERENCE__HIT_UK = 2048,
+	P4_EVENT_MEMORY_CANCEL__ST_RB_FULL = 2048,
+	P4_EVENT_MEMORY_CANCEL__64K_CONF = 4096,
+	P4_EVENT_MEMORY_COMPLETE__LSC = 512,
+	P4_EVENT_MEMORY_COMPLETE__SSC = 1024,
+	P4_EVENT_LOAD_PORT_REPLAY__SPLIT_LD = 1024,
+	P4_EVENT_STORE_PORT_REPLAY__SPLIT_ST = 1024,
+	P4_EVENT_MOB_LOAD_REPLAY__NO_STA = 1024,
+	P4_EVENT_MOB_LOAD_REPLAY__NO_STD = 4096,
+	P4_EVENT_MOB_LOAD_REPLAY__PARTIAL_DATA = 8192,
+	P4_EVENT_MOB_LOAD_REPLAY__UNALGN_ADDR = 16384,
+	P4_EVENT_PAGE_WALK_TYPE__DTMISS = 512,
+	P4_EVENT_PAGE_WALK_TYPE__ITMISS = 1024,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_HITS = 512,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_HITE = 1024,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_HITM = 2048,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_HITS = 4096,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_HITE = 8192,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_HITM = 16384,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_2ndL_MISS = 131072,
+	P4_EVENT_BSQ_CACHE_REFERENCE__RD_3rdL_MISS = 262144,
+	P4_EVENT_BSQ_CACHE_REFERENCE__WR_2ndL_MISS = 524288,
+	P4_EVENT_IOQ_ALLOCATION__DEFAULT = 512,
+	P4_EVENT_IOQ_ALLOCATION__ALL_READ = 16384,
+	P4_EVENT_IOQ_ALLOCATION__ALL_WRITE = 32768,
+	P4_EVENT_IOQ_ALLOCATION__MEM_UC = 65536,
+	P4_EVENT_IOQ_ALLOCATION__MEM_WC = 131072,
+	P4_EVENT_IOQ_ALLOCATION__MEM_WT = 262144,
+	P4_EVENT_IOQ_ALLOCATION__MEM_WP = 524288,
+	P4_EVENT_IOQ_ALLOCATION__MEM_WB = 1048576,
+	P4_EVENT_IOQ_ALLOCATION__OWN = 4194304,
+	P4_EVENT_IOQ_ALLOCATION__OTHER = 8388608,
+	P4_EVENT_IOQ_ALLOCATION__PREFETCH = 16777216,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__DEFAULT = 512,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__ALL_READ = 16384,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__ALL_WRITE = 32768,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_UC = 65536,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WC = 131072,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WT = 262144,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WP = 524288,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__MEM_WB = 1048576,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__OWN = 4194304,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__OTHER = 8388608,
+	P4_EVENT_IOQ_ACTIVE_ENTRIES__PREFETCH = 16777216,
+	P4_EVENT_FSB_DATA_ACTIVITY__DRDY_DRV = 512,
+	P4_EVENT_FSB_DATA_ACTIVITY__DRDY_OWN = 1024,
+	P4_EVENT_FSB_DATA_ACTIVITY__DRDY_OTHER = 2048,
+	P4_EVENT_FSB_DATA_ACTIVITY__DBSY_DRV = 4096,
+	P4_EVENT_FSB_DATA_ACTIVITY__DBSY_OWN = 8192,
+	P4_EVENT_FSB_DATA_ACTIVITY__DBSY_OTHER = 16384,
+	P4_EVENT_BSQ_ALLOCATION__REQ_TYPE0 = 512,
+	P4_EVENT_BSQ_ALLOCATION__REQ_TYPE1 = 1024,
+	P4_EVENT_BSQ_ALLOCATION__REQ_LEN0 = 2048,
+	P4_EVENT_BSQ_ALLOCATION__REQ_LEN1 = 4096,
+	P4_EVENT_BSQ_ALLOCATION__REQ_IO_TYPE = 16384,
+	P4_EVENT_BSQ_ALLOCATION__REQ_LOCK_TYPE = 32768,
+	P4_EVENT_BSQ_ALLOCATION__REQ_CACHE_TYPE = 65536,
+	P4_EVENT_BSQ_ALLOCATION__REQ_SPLIT_TYPE = 131072,
+	P4_EVENT_BSQ_ALLOCATION__REQ_DEM_TYPE = 262144,
+	P4_EVENT_BSQ_ALLOCATION__REQ_ORD_TYPE = 524288,
+	P4_EVENT_BSQ_ALLOCATION__MEM_TYPE0 = 1048576,
+	P4_EVENT_BSQ_ALLOCATION__MEM_TYPE1 = 2097152,
+	P4_EVENT_BSQ_ALLOCATION__MEM_TYPE2 = 4194304,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_TYPE0 = 512,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_TYPE1 = 1024,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_LEN0 = 2048,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_LEN1 = 4096,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_IO_TYPE = 16384,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_LOCK_TYPE = 32768,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_CACHE_TYPE = 65536,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_SPLIT_TYPE = 131072,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_DEM_TYPE = 262144,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__REQ_ORD_TYPE = 524288,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__MEM_TYPE0 = 1048576,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__MEM_TYPE1 = 2097152,
+	P4_EVENT_BSQ_ACTIVE_ENTRIES__MEM_TYPE2 = 4194304,
+	P4_EVENT_SSE_INPUT_ASSIST__ALL = 16777216,
+	P4_EVENT_PACKED_SP_UOP__ALL = 16777216,
+	P4_EVENT_PACKED_DP_UOP__ALL = 16777216,
+	P4_EVENT_SCALAR_SP_UOP__ALL = 16777216,
+	P4_EVENT_SCALAR_DP_UOP__ALL = 16777216,
+	P4_EVENT_64BIT_MMX_UOP__ALL = 16777216,
+	P4_EVENT_128BIT_MMX_UOP__ALL = 16777216,
+	P4_EVENT_X87_FP_UOP__ALL = 16777216,
+	P4_EVENT_TC_MISC__FLUSH = 8192,
+	P4_EVENT_GLOBAL_POWER_EVENTS__RUNNING = 512,
+	P4_EVENT_TC_MS_XFER__CISC = 512,
+	P4_EVENT_UOP_QUEUE_WRITES__FROM_TC_BUILD = 512,
+	P4_EVENT_UOP_QUEUE_WRITES__FROM_TC_DELIVER = 1024,
+	P4_EVENT_UOP_QUEUE_WRITES__FROM_ROM = 2048,
+	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__CONDITIONAL = 1024,
+	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__CALL = 2048,
+	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__RETURN = 4096,
+	P4_EVENT_RETIRED_MISPRED_BRANCH_TYPE__INDIRECT = 8192,
+	P4_EVENT_RETIRED_BRANCH_TYPE__CONDITIONAL = 1024,
+	P4_EVENT_RETIRED_BRANCH_TYPE__CALL = 2048,
+	P4_EVENT_RETIRED_BRANCH_TYPE__RETURN = 4096,
+	P4_EVENT_RETIRED_BRANCH_TYPE__INDIRECT = 8192,
+	P4_EVENT_RESOURCE_STALL__SBFULL = 16384,
+	P4_EVENT_WC_BUFFER__WCB_EVICTS = 512,
+	P4_EVENT_WC_BUFFER__WCB_FULL_EVICTS = 1024,
+	P4_EVENT_FRONT_END_EVENT__NBOGUS = 512,
+	P4_EVENT_FRONT_END_EVENT__BOGUS = 1024,
+	P4_EVENT_EXECUTION_EVENT__NBOGUS0 = 512,
+	P4_EVENT_EXECUTION_EVENT__NBOGUS1 = 1024,
+	P4_EVENT_EXECUTION_EVENT__NBOGUS2 = 2048,
+	P4_EVENT_EXECUTION_EVENT__NBOGUS3 = 4096,
+	P4_EVENT_EXECUTION_EVENT__BOGUS0 = 8192,
+	P4_EVENT_EXECUTION_EVENT__BOGUS1 = 16384,
+	P4_EVENT_EXECUTION_EVENT__BOGUS2 = 32768,
+	P4_EVENT_EXECUTION_EVENT__BOGUS3 = 65536,
+	P4_EVENT_REPLAY_EVENT__NBOGUS = 512,
+	P4_EVENT_REPLAY_EVENT__BOGUS = 1024,
+	P4_EVENT_INSTR_RETIRED__NBOGUSNTAG = 512,
+	P4_EVENT_INSTR_RETIRED__NBOGUSTAG = 1024,
+	P4_EVENT_INSTR_RETIRED__BOGUSNTAG = 2048,
+	P4_EVENT_INSTR_RETIRED__BOGUSTAG = 4096,
+	P4_EVENT_UOPS_RETIRED__NBOGUS = 512,
+	P4_EVENT_UOPS_RETIRED__BOGUS = 1024,
+	P4_EVENT_UOP_TYPE__TAGLOADS = 1024,
+	P4_EVENT_UOP_TYPE__TAGSTORES = 2048,
+	P4_EVENT_BRANCH_RETIRED__MMNP = 512,
+	P4_EVENT_BRANCH_RETIRED__MMNM = 1024,
+	P4_EVENT_BRANCH_RETIRED__MMTP = 2048,
+	P4_EVENT_BRANCH_RETIRED__MMTM = 4096,
+	P4_EVENT_MISPRED_BRANCH_RETIRED__NBOGUS = 512,
+	P4_EVENT_X87_ASSIST__FPSU = 512,
+	P4_EVENT_X87_ASSIST__FPSO = 1024,
+	P4_EVENT_X87_ASSIST__POAO = 2048,
+	P4_EVENT_X87_ASSIST__POAU = 4096,
+	P4_EVENT_X87_ASSIST__PREA = 8192,
+	P4_EVENT_MACHINE_CLEAR__CLEAR = 512,
+	P4_EVENT_MACHINE_CLEAR__MOCLEAR = 1024,
+	P4_EVENT_MACHINE_CLEAR__SMCLEAR = 2048,
+	P4_EVENT_INSTR_COMPLETED__NBOGUS = 512,
+	P4_EVENT_INSTR_COMPLETED__BOGUS = 1024,
+};
+
+enum P4_PEBS_METRIC {
+	P4_PEBS_METRIC__none = 0,
+	P4_PEBS_METRIC__1stl_cache_load_miss_retired = 1,
+	P4_PEBS_METRIC__2ndl_cache_load_miss_retired = 2,
+	P4_PEBS_METRIC__dtlb_load_miss_retired = 3,
+	P4_PEBS_METRIC__dtlb_store_miss_retired = 4,
+	P4_PEBS_METRIC__dtlb_all_miss_retired = 5,
+	P4_PEBS_METRIC__tagged_mispred_branch = 6,
+	P4_PEBS_METRIC__mob_load_replay_retired = 7,
+	P4_PEBS_METRIC__split_load_retired = 8,
+	P4_PEBS_METRIC__split_store_retired = 9,
+	P4_PEBS_METRIC__max = 10,
+};
+
+struct p4_event_bind {
+	unsigned int opcode;
+	unsigned int escr_msr[2];
+	unsigned int escr_emask;
+	unsigned int shared;
+	char cntr[6];
+};
+
+struct p4_pebs_bind {
+	unsigned int metric_pebs;
+	unsigned int metric_vert;
+};
+
+struct p4_event_alias {
+	u64 original;
+	u64 alternative;
+};
+
+enum cpuid_regs_idx {
+	CPUID_EAX = 0,
+	CPUID_EBX = 1,
+	CPUID_ECX = 2,
+	CPUID_EDX = 3,
+};
+
+struct dev_ext_attribute {
+	struct device_attribute attr;
+	void *var;
+};
+
+enum pt_capabilities {
+	PT_CAP_max_subleaf = 0,
+	PT_CAP_cr3_filtering = 1,
+	PT_CAP_psb_cyc = 2,
+	PT_CAP_ip_filtering = 3,
+	PT_CAP_mtc = 4,
+	PT_CAP_ptwrite = 5,
+	PT_CAP_power_event_trace = 6,
+	PT_CAP_topa_output = 7,
+	PT_CAP_topa_multiple_entries = 8,
+	PT_CAP_single_range_output = 9,
+	PT_CAP_output_subsys = 10,
+	PT_CAP_payloads_lip = 11,
+	PT_CAP_num_address_ranges = 12,
+	PT_CAP_mtc_periods = 13,
+	PT_CAP_cycle_thresholds = 14,
+	PT_CAP_psb_periods = 15,
+};
+
+enum perf_addr_filter_action_t {
+	PERF_ADDR_FILTER_ACTION_STOP = 0,
+	PERF_ADDR_FILTER_ACTION_START = 1,
+	PERF_ADDR_FILTER_ACTION_FILTER = 2,
+};
+
+struct perf_addr_filter {
+	struct list_head entry;
+	struct path path;
+	long unsigned int offset;
+	long unsigned int size;
+	enum perf_addr_filter_action_t action;
+};
+
+struct topa_entry {
+	u64 end: 1;
+	u64 rsvd0: 1;
+	u64 intr: 1;
+	u64 rsvd1: 1;
+	u64 stop: 1;
+	u64 rsvd2: 1;
+	u64 size: 4;
+	u64 rsvd3: 2;
+	u64 base: 40;
+	u64 rsvd4: 12;
+};
+
+struct pt_pmu {
+	struct pmu pmu;
+	u32 caps[8];
+	bool vmx;
+	bool branch_en_always_on;
+	long unsigned int max_nonturbo_ratio;
+	unsigned int tsc_art_num;
+	unsigned int tsc_art_den;
+};
+
+struct topa;
+
+struct pt_buffer {
+	struct list_head tables;
+	struct topa *first;
+	struct topa *last;
+	struct topa *cur;
+	unsigned int cur_idx;
+	size_t output_off;
+	long unsigned int nr_pages;
+	local_t data_size;
+	local64_t head;
+	bool snapshot;
+	bool single;
+	long int stop_pos;
+	long int intr_pos;
+	struct topa_entry *stop_te;
+	struct topa_entry *intr_te;
+	void **data_pages;
+};
+
+struct topa {
+	struct list_head list;
+	u64 offset;
+	size_t size;
+	int last;
+	unsigned int z_count;
+};
+
+struct pt_filter {
+	long unsigned int msr_a;
+	long unsigned int msr_b;
+	long unsigned int config;
+};
+
+struct pt_filters {
+	struct pt_filter filter[4];
+	unsigned int nr_filters;
+};
+
+struct pt {
+	struct perf_output_handle handle;
+	struct pt_filters filters;
+	int handle_nmi;
+	int vmx_on;
+	u64 output_base;
+	u64 output_mask;
+};
+
+struct pt_cap_desc {
+	const char *name;
+	u32 leaf;
+	u8 reg;
+	u32 mask;
+};
+
+struct pt_address_range {
+	long unsigned int msr_a;
+	long unsigned int msr_b;
+	unsigned int reg_off;
+};
+
+struct topa_page {
+	struct topa_entry table[507];
+	struct topa topa;
+};
+
+typedef void (*exitcall_t)(void);
+
+struct x86_cpu_id {
+	__u16 vendor;
+	__u16 family;
+	__u16 model;
+	__u16 steppings;
+	__u16 feature;
+	__u16 flags;
+	kernel_ulong_t driver_data;
+};
+
+enum hrtimer_mode {
+	HRTIMER_MODE_ABS = 0,
+	HRTIMER_MODE_REL = 1,
+	HRTIMER_MODE_PINNED = 2,
+	HRTIMER_MODE_SOFT = 4,
+	HRTIMER_MODE_HARD = 8,
+	HRTIMER_MODE_ABS_PINNED = 2,
+	HRTIMER_MODE_REL_PINNED = 3,
+	HRTIMER_MODE_ABS_SOFT = 4,
+	HRTIMER_MODE_REL_SOFT = 5,
+	HRTIMER_MODE_ABS_PINNED_SOFT = 6,
+	HRTIMER_MODE_REL_PINNED_SOFT = 7,
+	HRTIMER_MODE_ABS_HARD = 8,
+	HRTIMER_MODE_REL_HARD = 9,
+	HRTIMER_MODE_ABS_PINNED_HARD = 10,
+	HRTIMER_MODE_REL_PINNED_HARD = 11,
+};
+
+struct acpi_device;
+
+struct pci_sysdata {
+	int domain;
+	int node;
+	struct acpi_device *companion;
+	void *iommu;
+	void *fwnode;
+	struct pci_dev *vmd_dev;
+};
+
+struct pci_extra_dev {
+	struct pci_dev *dev[4];
+};
+
+struct intel_uncore_pmu;
+
+struct intel_uncore_ops;
+
+struct uncore_event_desc;
+
+struct freerunning_counters;
+
+struct intel_uncore_topology;
+
+struct intel_uncore_type {
+	const char *name;
+	int num_counters;
+	int num_boxes;
+	int perf_ctr_bits;
+	int fixed_ctr_bits;
+	int num_freerunning_types;
+	int type_id;
+	unsigned int perf_ctr;
+	unsigned int event_ctl;
+	unsigned int event_mask;
+	unsigned int event_mask_ext;
+	unsigned int fixed_ctr;
+	unsigned int fixed_ctl;
+	unsigned int box_ctl;
+	u64 *box_ctls;
+	union {
+		unsigned int msr_offset;
+		unsigned int mmio_offset;
+	};
+	unsigned int mmio_map_size;
+	unsigned int num_shared_regs: 8;
+	unsigned int single_fixed: 1;
+	unsigned int pair_ctr_ctl: 1;
+	union {
+		unsigned int *msr_offsets;
+		unsigned int *pci_offsets;
+		unsigned int *mmio_offsets;
+	};
+	unsigned int *box_ids;
+	struct event_constraint unconstrainted;
+	struct event_constraint *constraints;
+	struct intel_uncore_pmu *pmus;
+	struct intel_uncore_ops *ops;
+	struct uncore_event_desc *event_descs;
+	struct freerunning_counters *freerunning;
+	const struct attribute_group *attr_groups[4];
+	const struct attribute_group **attr_update;
+	struct pmu *pmu;
+	struct intel_uncore_topology *topology;
+	int (*get_topology)(struct intel_uncore_type *);
+	int (*set_mapping)(struct intel_uncore_type *);
+	void (*cleanup_mapping)(struct intel_uncore_type *);
+};
+
+struct intel_uncore_box;
+
+struct intel_uncore_pmu {
+	struct pmu pmu;
+	char name[32];
+	int pmu_idx;
+	int func_id;
+	bool registered;
+	atomic_t activeboxes;
+	struct intel_uncore_type *type;
+	struct intel_uncore_box **boxes;
+};
+
+struct intel_uncore_ops {
+	void (*init_box)(struct intel_uncore_box *);
+	void (*exit_box)(struct intel_uncore_box *);
+	void (*disable_box)(struct intel_uncore_box *);
+	void (*enable_box)(struct intel_uncore_box *);
+	void (*disable_event)(struct intel_uncore_box *, struct perf_event *);
+	void (*enable_event)(struct intel_uncore_box *, struct perf_event *);
+	u64 (*read_counter)(struct intel_uncore_box *, struct perf_event *);
+	int (*hw_config)(struct intel_uncore_box *, struct perf_event *);
+	struct event_constraint * (*get_constraint)(struct intel_uncore_box *, struct perf_event *);
+	void (*put_constraint)(struct intel_uncore_box *, struct perf_event *);
+};
+
+struct uncore_event_desc {
+	struct device_attribute attr;
+	const char *config;
+};
+
+struct freerunning_counters {
+	unsigned int counter_base;
+	unsigned int counter_offset;
+	unsigned int box_offset;
+	unsigned int num_counters;
+	unsigned int bits;
+	unsigned int *box_offsets;
+};
+
+struct intel_uncore_topology {
+	u64 configuration;
+	int segment;
+};
+
+struct intel_uncore_extra_reg {
+	raw_spinlock_t lock;
+	u64 config;
+	u64 config1;
+	u64 config2;
+	atomic_t ref;
+};
+
+struct intel_uncore_box {
+	int dieid;
+	int n_active;
+	int n_events;
+	int cpu;
+	long unsigned int flags;
+	atomic_t refcnt;
+	struct perf_event *events[10];
+	struct perf_event *event_list[10];
+	struct event_constraint *event_constraint[10];
+	long unsigned int active_mask[1];
+	u64 tags[10];
+	struct pci_dev *pci_dev;
+	struct intel_uncore_pmu *pmu;
+	u64 hrtimer_duration;
+	struct hrtimer hrtimer;
+	struct list_head list;
+	struct list_head active_list;
+	void *io_addr;
+	struct intel_uncore_extra_reg shared_regs[0];
+};
+
+struct pci2phy_map {
+	struct list_head list;
+	int segment;
+	int pbus_to_dieid[256];
+};
+
+struct intel_uncore_init_fun {
+	void (*cpu_init)(void);
+	int (*pci_init)(void);
+	void (*mmio_init)(void);
+	bool use_discovery;
+};
+
+enum {
+	EXTRA_REG_NHMEX_M_FILTER = 0,
+	EXTRA_REG_NHMEX_M_DSP = 1,
+	EXTRA_REG_NHMEX_M_ISS = 2,
+	EXTRA_REG_NHMEX_M_MAP = 3,
+	EXTRA_REG_NHMEX_M_MSC_THR = 4,
+	EXTRA_REG_NHMEX_M_PGT = 5,
+	EXTRA_REG_NHMEX_M_PLD = 6,
+	EXTRA_REG_NHMEX_M_ZDP_CTL_FVC = 7,
+};
+
+enum {
+	SNB_PCI_UNCORE_IMC = 0,
+};
+
+enum perf_snb_uncore_imc_freerunning_types {
+	SNB_PCI_UNCORE_IMC_DATA_READS = 0,
+	SNB_PCI_UNCORE_IMC_DATA_WRITES = 1,
+	SNB_PCI_UNCORE_IMC_GT_REQUESTS = 2,
+	SNB_PCI_UNCORE_IMC_IA_REQUESTS = 3,
+	SNB_PCI_UNCORE_IMC_IO_REQUESTS = 4,
+	SNB_PCI_UNCORE_IMC_FREERUNNING_TYPE_MAX = 5,
+};
+
+struct imc_uncore_pci_dev {
+	__u32 pci_id;
+	struct pci_driver *driver;
+};
+
+enum perf_tgl_uncore_imc_freerunning_types {
+	TGL_MMIO_UNCORE_IMC_DATA_TOTAL = 0,
+	TGL_MMIO_UNCORE_IMC_DATA_READ = 1,
+	TGL_MMIO_UNCORE_IMC_DATA_WRITE = 2,
+	TGL_MMIO_UNCORE_IMC_FREERUNNING_TYPE_MAX = 3,
+};
+
+enum uncore_access_type {
+	UNCORE_ACCESS_MSR = 0,
+	UNCORE_ACCESS_MMIO = 1,
+	UNCORE_ACCESS_PCI = 2,
+	UNCORE_ACCESS_MAX = 3,
+};
+
+enum {
+	SNBEP_PCI_QPI_PORT0_FILTER = 0,
+	SNBEP_PCI_QPI_PORT1_FILTER = 1,
+	BDX_PCI_QPI_PORT2_FILTER = 2,
+};
+
+enum {
+	SNBEP_PCI_UNCORE_HA = 0,
+	SNBEP_PCI_UNCORE_IMC = 1,
+	SNBEP_PCI_UNCORE_QPI = 2,
+	SNBEP_PCI_UNCORE_R2PCIE = 3,
+	SNBEP_PCI_UNCORE_R3QPI = 4,
+};
+
+enum {
+	IVBEP_PCI_UNCORE_HA = 0,
+	IVBEP_PCI_UNCORE_IMC = 1,
+	IVBEP_PCI_UNCORE_IRP = 2,
+	IVBEP_PCI_UNCORE_QPI = 3,
+	IVBEP_PCI_UNCORE_R2PCIE = 4,
+	IVBEP_PCI_UNCORE_R3QPI = 5,
+};
+
+enum {
+	KNL_PCI_UNCORE_MC_UCLK = 0,
+	KNL_PCI_UNCORE_MC_DCLK = 1,
+	KNL_PCI_UNCORE_EDC_UCLK = 2,
+	KNL_PCI_UNCORE_EDC_ECLK = 3,
+	KNL_PCI_UNCORE_M2PCIE = 4,
+	KNL_PCI_UNCORE_IRP = 5,
+};
+
+enum {
+	HSWEP_PCI_UNCORE_HA = 0,
+	HSWEP_PCI_UNCORE_IMC = 1,
+	HSWEP_PCI_UNCORE_IRP = 2,
+	HSWEP_PCI_UNCORE_QPI = 3,
+	HSWEP_PCI_UNCORE_R2PCIE = 4,
+	HSWEP_PCI_UNCORE_R3QPI = 5,
+};
+
+enum {
+	BDX_PCI_UNCORE_HA = 0,
+	BDX_PCI_UNCORE_IMC = 1,
+	BDX_PCI_UNCORE_IRP = 2,
+	BDX_PCI_UNCORE_QPI = 3,
+	BDX_PCI_UNCORE_R2PCIE = 4,
+	BDX_PCI_UNCORE_R3QPI = 5,
+};
+
+enum perf_uncore_iio_freerunning_type_id {
+	SKX_IIO_MSR_IOCLK = 0,
+	SKX_IIO_MSR_BW = 1,
+	SKX_IIO_MSR_UTIL = 2,
+	SKX_IIO_FREERUNNING_TYPE_MAX = 3,
+};
+
+enum {
+	SKX_PCI_UNCORE_IMC = 0,
+	SKX_PCI_UNCORE_M2M = 1,
+	SKX_PCI_UNCORE_UPI = 2,
+	SKX_PCI_UNCORE_M2PCIE = 3,
+	SKX_PCI_UNCORE_M3UPI = 4,
+};
+
+enum {
+	SNR_QAT_PMON_ID = 0,
+	SNR_CBDMA_DMI_PMON_ID = 1,
+	SNR_NIS_PMON_ID = 2,
+	SNR_DLB_PMON_ID = 3,
+	SNR_PCIE_GEN3_PMON_ID = 4,
+};
+
+enum perf_uncore_snr_iio_freerunning_type_id {
+	SNR_IIO_MSR_IOCLK = 0,
+	SNR_IIO_MSR_BW_IN = 1,
+	SNR_IIO_FREERUNNING_TYPE_MAX = 2,
+};
+
+enum {
+	SNR_PCI_UNCORE_M2M = 0,
+	SNR_PCI_UNCORE_PCIE3 = 1,
+};
+
+enum perf_uncore_snr_imc_freerunning_type_id {
+	SNR_IMC_DCLK = 0,
+	SNR_IMC_DDR = 1,
+	SNR_IMC_FREERUNNING_TYPE_MAX = 2,
+};
+
+enum {
+	ICX_PCIE1_PMON_ID = 0,
+	ICX_PCIE2_PMON_ID = 1,
+	ICX_PCIE3_PMON_ID = 2,
+	ICX_PCIE4_PMON_ID = 3,
+	ICX_PCIE5_PMON_ID = 4,
+	ICX_CBDMA_DMI_PMON_ID = 5,
+};
+
+enum perf_uncore_icx_iio_freerunning_type_id {
+	ICX_IIO_MSR_IOCLK = 0,
+	ICX_IIO_MSR_BW_IN = 1,
+	ICX_IIO_FREERUNNING_TYPE_MAX = 2,
+};
+
+enum {
+	ICX_PCI_UNCORE_M2M = 0,
+	ICX_PCI_UNCORE_UPI = 1,
+	ICX_PCI_UNCORE_M3UPI = 2,
+};
+
+enum perf_uncore_icx_imc_freerunning_type_id {
+	ICX_IMC_DCLK = 0,
+	ICX_IMC_DDR = 1,
+	ICX_IMC_DDRT = 2,
+	ICX_IMC_FREERUNNING_TYPE_MAX = 3,
+};
+
+enum perf_uncore_spr_iio_freerunning_type_id {
+	SPR_IIO_MSR_IOCLK = 0,
+	SPR_IIO_MSR_BW_IN = 1,
+	SPR_IIO_MSR_BW_OUT = 2,
+	SPR_IIO_FREERUNNING_TYPE_MAX = 3,
+};
+
+enum perf_uncore_spr_imc_freerunning_type_id {
+	SPR_IMC_DCLK = 0,
+	SPR_IMC_PQ_CYCLES = 1,
+	SPR_IMC_FREERUNNING_TYPE_MAX = 2,
+};
+
+struct uncore_global_discovery {
+	union {
+		u64 table1;
+		struct {
+			u64 type: 8;
+			u64 stride: 8;
+			u64 max_units: 10;
+			u64 __reserved_1: 36;
+			u64 access_type: 2;
+		};
+	};
+	u64 ctl;
+	union {
+		u64 table3;
+		struct {
+			u64 status_offset: 8;
+			u64 num_status: 16;
+			u64 __reserved_2: 40;
+		};
+	};
+};
+
+struct uncore_unit_discovery {
+	union {
+		u64 table1;
+		struct {
+			u64 num_regs: 8;
+			u64 ctl_offset: 8;
+			u64 bit_width: 8;
+			u64 ctr_offset: 8;
+			u64 status_offset: 8;
+			u64 __reserved_1: 22;
+			u64 access_type: 2;
+		};
+	};
+	u64 ctl;
+	union {
+		u64 table3;
+		struct {
+			u64 box_type: 16;
+			u64 box_id: 16;
+			u64 __reserved_2: 32;
+		};
+	};
+};
+
+struct intel_uncore_discovery_type {
+	struct rb_node node;
+	enum uncore_access_type access_type;
+	u64 box_ctrl;
+	u64 *box_ctrl_die;
+	u16 type;
+	u8 num_counters;
+	u8 counter_width;
+	u8 ctl_offset;
+	u8 ctr_offset;
+	u16 num_boxes;
+	unsigned int *ids;
+	unsigned int *box_offset;
+};
+
+typedef s8 int8_t;
+
+typedef u8 uint8_t;
+
+typedef u64 uint64_t;
+
+struct atomic_notifier_head {
+	spinlock_t lock;
+	struct notifier_block *head;
+};
+
+enum xen_domain_type {
+	XEN_NATIVE = 0,
+	XEN_PV_DOMAIN = 1,
+	XEN_HVM_DOMAIN = 2,
+};
+
+typedef long unsigned int xen_pfn_t;
+
+typedef long unsigned int xen_ulong_t;
+
+struct arch_shared_info {
+	long unsigned int max_pfn;
+	xen_pfn_t pfn_to_mfn_frame_list_list;
+	long unsigned int nmi_reason;
+	long unsigned int p2m_cr3;
+	long unsigned int p2m_vaddr;
+	long unsigned int p2m_generation;
+};
+
+struct arch_vcpu_info {
+	long unsigned int cr2;
+	long unsigned int pad;
+};
+
+struct pvclock_wall_clock {
+	u32 version;
+	u32 sec;
+	u32 nsec;
+};
+
+struct vcpu_info {
+	uint8_t evtchn_upcall_pending;
+	uint8_t evtchn_upcall_mask;
+	xen_ulong_t evtchn_pending_sel;
+	struct arch_vcpu_info arch;
+	struct pvclock_vcpu_time_info time;
+};
+
+struct shared_info {
+	struct vcpu_info vcpu_info[32];
+	xen_ulong_t evtchn_pending[64];
+	xen_ulong_t evtchn_mask[64];
+	struct pvclock_wall_clock wc;
+	uint32_t wc_sec_hi;
+	struct arch_shared_info arch;
+};
+
+struct start_info {
+	char magic[32];
+	long unsigned int nr_pages;
+	long unsigned int shared_info;
+	uint32_t flags;
+	xen_pfn_t store_mfn;
+	uint32_t store_evtchn;
+	union {
+		struct {
+			xen_pfn_t mfn;
+			uint32_t evtchn;
+		} domU;
+		struct {
+			uint32_t info_off;
+			uint32_t info_size;
+		} dom0;
+	} console;
+	long unsigned int pt_base;
+	long unsigned int nr_pt_frames;
+	long unsigned int mfn_list;
+	long unsigned int mod_start;
+	long unsigned int mod_len;
+	int8_t cmd_line[1024];
+	long unsigned int first_p2m_pfn;
+	long unsigned int nr_p2m_frames;
+};
+
+struct sched_shutdown {
+	unsigned int reason;
+};
+
+struct sched_pin_override {
+	int32_t pcpu;
+};
+
+struct xen_extraversion {
+	char extraversion[16];
+};
+
+struct vcpu_register_vcpu_info {
+	uint64_t mfn;
+	uint32_t offset;
+	uint32_t rsvd;
+};
+
+struct xmaddr {
+	phys_addr_t maddr;
+};
+
+typedef struct xmaddr xmaddr_t;
+
+struct xpaddr {
+	phys_addr_t paddr;
+};
+
+typedef struct xpaddr xpaddr_t;
+
+typedef s16 int16_t;
+
+typedef u16 uint16_t;
+
+enum clocksource_ids {
+	CSID_GENERIC = 0,
+	CSID_ARM_ARCH_COUNTER = 1,
+	CSID_MAX = 2,
+};
+
+struct clocksource {
+	u64 (*read)(struct clocksource *);
+	u64 mask;
+	u32 mult;
+	u32 shift;
+	u64 max_idle_ns;
+	u32 maxadj;
+	u32 uncertainty_margin;
+	u64 max_cycles;
+	const char *name;
+	struct list_head list;
+	int rating;
+	enum clocksource_ids id;
+	enum vdso_clock_mode vdso_clock_mode;
+	long unsigned int flags;
+	int (*enable)(struct clocksource *);
+	void (*disable)(struct clocksource *);
+	void (*suspend)(struct clocksource *);
+	void (*resume)(struct clocksource *);
+	void (*mark_unstable)(struct clocksource *);
+	void (*tick_stable)(struct clocksource *);
+	struct list_head wd_list;
+	u64 cs_last;
+	u64 wd_last;
+	struct module *owner;
+};
+
+struct x86_init_mpparse {
+	void (*setup_ioapic_ids)(void);
+	void (*find_smp_config)(void);
+	void (*get_smp_config)(unsigned int);
+};
+
+struct x86_init_resources {
+	void (*probe_roms)(void);
+	void (*reserve_resources)(void);
+	char * (*memory_setup)(void);
+};
+
+struct x86_init_irqs {
+	void (*pre_vector_init)(void);
+	void (*intr_init)(void);
+	void (*intr_mode_select)(void);
+	void (*intr_mode_init)(void);
+	struct irq_domain * (*create_pci_msi_domain)(void);
+};
+
+struct x86_init_oem {
+	void (*arch_setup)(void);
+	void (*banner)(void);
+};
+
+struct x86_init_paging {
+	void (*pagetable_init)(void);
+};
+
+struct x86_init_timers {
+	void (*setup_percpu_clockev)(void);
+	void (*timer_init)(void);
+	void (*wallclock_init)(void);
+};
+
+struct x86_init_iommu {
+	int (*iommu_init)(void);
+};
+
+struct x86_init_pci {
+	int (*arch_init)(void);
+	int (*init)(void);
+	void (*init_irq)(void);
+	void (*fixup_irqs)(void);
+};
+
+struct x86_hyper_init {
+	void (*init_platform)(void);
+	void (*guest_late_init)(void);
+	bool (*x2apic_available)(void);
+	bool (*msi_ext_dest_id)(void);
+	void (*init_mem_mapping)(void);
+	void (*init_after_bootmem)(void);
+};
+
+struct x86_init_acpi {
+	void (*set_root_pointer)(u64);
+	u64 (*get_root_pointer)(void);
+	void (*reduced_hw_early_init)(void);
+};
+
+struct x86_init_ops {
+	struct x86_init_resources resources;
+	struct x86_init_mpparse mpparse;
+	struct x86_init_irqs irqs;
+	struct x86_init_oem oem;
+	struct x86_init_paging paging;
+	struct x86_init_timers timers;
+	struct x86_init_iommu iommu;
+	struct x86_init_pci pci;
+	struct x86_hyper_init hyper;
+	struct x86_init_acpi acpi;
+};
+
+struct x86_cpuinit_ops {
+	void (*setup_percpu_clockev)(void);
+	void (*early_percpu_clock_init)(void);
+	void (*fixup_cpu_id)(struct cpuinfo_x86 *, int);
+};
+
+enum clock_event_state {
+	CLOCK_EVT_STATE_DETACHED = 0,
+	CLOCK_EVT_STATE_SHUTDOWN = 1,
+	CLOCK_EVT_STATE_PERIODIC = 2,
+	CLOCK_EVT_STATE_ONESHOT = 3,
+	CLOCK_EVT_STATE_ONESHOT_STOPPED = 4,
+};
+
+struct clock_event_device {
+	void (*event_handler)(struct clock_event_device *);
+	int (*set_next_event)(long unsigned int, struct clock_event_device *);
+	int (*set_next_ktime)(ktime_t, struct clock_event_device *);
+	ktime_t next_event;
+	u64 max_delta_ns;
+	u64 min_delta_ns;
+	u32 mult;
+	u32 shift;
+	enum clock_event_state state_use_accessors;
+	unsigned int features;
+	long unsigned int retries;
+	int (*set_state_periodic)(struct clock_event_device *);
+	int (*set_state_oneshot)(struct clock_event_device *);
+	int (*set_state_oneshot_stopped)(struct clock_event_device *);
+	int (*set_state_shutdown)(struct clock_event_device *);
+	int (*tick_resume)(struct clock_event_device *);
+	void (*broadcast)(const struct cpumask *);
+	void (*suspend)(struct clock_event_device *);
+	void (*resume)(struct clock_event_device *);
+	long unsigned int min_delta_ticks;
+	long unsigned int max_delta_ticks;
+	const char *name;
+	int rating;
+	int irq;
+	int bound_on;
+	const struct cpumask *cpumask;
+	struct list_head list;
+	struct module *owner;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct tk_read_base {
+	struct clocksource *clock;
+	u64 mask;
+	u64 cycle_last;
+	u32 mult;
+	u32 shift;
+	u64 xtime_nsec;
+	ktime_t base;
+	u64 base_real;
+};
+
+struct timekeeper {
+	struct tk_read_base tkr_mono;
+	struct tk_read_base tkr_raw;
+	u64 xtime_sec;
+	long unsigned int ktime_sec;
+	struct timespec64 wall_to_monotonic;
+	ktime_t offs_real;
+	ktime_t offs_boot;
+	ktime_t offs_tai;
+	s32 tai_offset;
+	unsigned int clock_was_set_seq;
+	u8 cs_was_changed_seq;
+	ktime_t next_leap_ktime;
+	u64 raw_sec;
+	struct timespec64 monotonic_to_boot;
+	u64 cycle_interval;
+	u64 xtime_interval;
+	s64 xtime_remainder;
+	u64 raw_interval;
+	u64 ntp_tick;
+	s64 ntp_error;
+	u32 ntp_error_shift;
+	u32 ntp_err_mult;
+	u32 skip_second_overflow;
+};
+
+typedef unsigned char *__guest_handle_uchar;
+
+typedef char *__guest_handle_char;
+
+typedef void *__guest_handle_void;
+
+typedef uint64_t *__guest_handle_uint64_t;
+
+typedef uint32_t *__guest_handle_uint32_t;
+
+struct vcpu_time_info {
+	uint32_t version;
+	uint32_t pad0;
+	uint64_t tsc_timestamp;
+	uint64_t system_time;
+	uint32_t tsc_to_system_mul;
+	int8_t tsc_shift;
+	int8_t pad1[3];
+};
+
+struct dom0_vga_console_info {
+	uint8_t video_type;
+	union {
+		struct {
+			uint16_t font_height;
+			uint16_t cursor_x;
+			uint16_t cursor_y;
+			uint16_t rows;
+			uint16_t columns;
+		} text_mode_3;
+		struct {
+			uint16_t width;
+			uint16_t height;
+			uint16_t bytes_per_line;
+			uint16_t bits_per_pixel;
+			uint32_t lfb_base;
+			uint32_t lfb_size;
+			uint8_t red_pos;
+			uint8_t red_size;
+			uint8_t green_pos;
+			uint8_t green_size;
+			uint8_t blue_pos;
+			uint8_t blue_size;
+			uint8_t rsvd_pos;
+			uint8_t rsvd_size;
+			uint32_t gbl_caps;
+			uint16_t mode_attrs;
+		} vesa_lfb;
+	} u;
+};
+
+struct xenpf_settime32 {
+	uint32_t secs;
+	uint32_t nsecs;
+	uint64_t system_time;
+};
+
+struct xenpf_settime64 {
+	uint64_t secs;
+	uint32_t nsecs;
+	uint32_t mbz;
+	uint64_t system_time;
+};
+
+struct xenpf_add_memtype {
+	xen_pfn_t mfn;
+	uint64_t nr_mfns;
+	uint32_t type;
+	uint32_t handle;
+	uint32_t reg;
+};
+
+struct xenpf_del_memtype {
+	uint32_t handle;
+	uint32_t reg;
+};
+
+struct xenpf_read_memtype {
+	uint32_t reg;
+	xen_pfn_t mfn;
+	uint64_t nr_mfns;
+	uint32_t type;
+};
+
+struct xenpf_microcode_update {
+	__guest_handle_void data;
+	uint32_t length;
+};
+
+struct xenpf_platform_quirk {
+	uint32_t quirk_id;
+};
+
+struct xenpf_efi_time {
+	uint16_t year;
+	uint8_t month;
+	uint8_t day;
+	uint8_t hour;
+	uint8_t min;
+	uint8_t sec;
+	uint32_t ns;
+	int16_t tz;
+	uint8_t daylight;
+};
+
+struct xenpf_efi_guid {
+	uint32_t data1;
+	uint16_t data2;
+	uint16_t data3;
+	uint8_t data4[8];
+};
+
+struct xenpf_efi_runtime_call {
+	uint32_t function;
+	uint32_t misc;
+	xen_ulong_t status;
+	union {
+		struct {
+			struct xenpf_efi_time time;
+			uint32_t resolution;
+			uint32_t accuracy;
+		} get_time;
+		struct xenpf_efi_time set_time;
+		struct xenpf_efi_time get_wakeup_time;
+		struct xenpf_efi_time set_wakeup_time;
+		struct {
+			__guest_handle_void name;
+			xen_ulong_t size;
+			__guest_handle_void data;
+			struct xenpf_efi_guid vendor_guid;
+		} get_variable;
+		struct {
+			__guest_handle_void name;
+			xen_ulong_t size;
+			__guest_handle_void data;
+			struct xenpf_efi_guid vendor_guid;
+		} set_variable;
+		struct {
+			xen_ulong_t size;
+			__guest_handle_void name;
+			struct xenpf_efi_guid vendor_guid;
+		} get_next_variable_name;
+		struct {
+			uint32_t attr;
+			uint64_t max_store_size;
+			uint64_t remain_store_size;
+			uint64_t max_size;
+		} query_variable_info;
+		struct {
+			__guest_handle_void capsule_header_array;
+			xen_ulong_t capsule_count;
+			uint64_t max_capsule_size;
+			uint32_t reset_type;
+		} query_capsule_capabilities;
+		struct {
+			__guest_handle_void capsule_header_array;
+			xen_ulong_t capsule_count;
+			uint64_t sg_list;
+		} update_capsule;
+	} u;
+};
+
+union xenpf_efi_info {
+	uint32_t version;
+	struct {
+		uint64_t addr;
+		uint32_t nent;
+	} cfg;
+	struct {
+		uint32_t revision;
+		uint32_t bufsz;
+		__guest_handle_void name;
+	} vendor;
+	struct {
+		uint64_t addr;
+		uint64_t size;
+		uint64_t attr;
+		uint32_t type;
+	} mem;
+};
+
+struct xenpf_firmware_info {
+	uint32_t type;
+	uint32_t index;
+	union {
+		struct {
+			uint8_t device;
+			uint8_t version;
+			uint16_t interface_support;
+			uint16_t legacy_max_cylinder;
+			uint8_t legacy_max_head;
+			uint8_t legacy_sectors_per_track;
+			__guest_handle_void edd_params;
+		} disk_info;
+		struct {
+			uint8_t device;
+			uint32_t mbr_signature;
+		} disk_mbr_signature;
+		struct {
+			uint8_t capabilities;
+			uint8_t edid_transfer_time;
+			__guest_handle_uchar edid;
+		} vbeddc_info;
+		union xenpf_efi_info efi_info;
+		uint8_t kbd_shift_flags;
+	} u;
+};
+
+struct xenpf_enter_acpi_sleep {
+	uint16_t val_a;
+	uint16_t val_b;
+	uint32_t sleep_state;
+	uint32_t flags;
+};
+
+struct xenpf_change_freq {
+	uint32_t flags;
+	uint32_t cpu;
+	uint64_t freq;
+};
+
+struct xenpf_getidletime {
+	__guest_handle_uchar cpumap_bitmap;
+	uint32_t cpumap_nr_cpus;
+	__guest_handle_uint64_t idletime;
+	uint64_t now;
+};
+
+struct xen_power_register {
+	uint32_t space_id;
+	uint32_t bit_width;
+	uint32_t bit_offset;
+	uint32_t access_size;
+	uint64_t address;
+};
+
+struct xen_processor_csd {
+	uint32_t domain;
+	uint32_t coord_type;
+	uint32_t num;
+};
+
+typedef struct xen_processor_csd *__guest_handle_xen_processor_csd;
+
+struct xen_processor_cx {
+	struct xen_power_register reg;
+	uint8_t type;
+	uint32_t latency;
+	uint32_t power;
+	uint32_t dpcnt;
+	__guest_handle_xen_processor_csd dp;
+};
+
+typedef struct xen_processor_cx *__guest_handle_xen_processor_cx;
+
+struct xen_processor_flags {
+	uint32_t bm_control: 1;
+	uint32_t bm_check: 1;
+	uint32_t has_cst: 1;
+	uint32_t power_setup_done: 1;
+	uint32_t bm_rld_set: 1;
+};
+
+struct xen_processor_power {
+	uint32_t count;
+	struct xen_processor_flags flags;
+	__guest_handle_xen_processor_cx states;
+};
+
+struct xen_pct_register {
+	uint8_t descriptor;
+	uint16_t length;
+	uint8_t space_id;
+	uint8_t bit_width;
+	uint8_t bit_offset;
+	uint8_t reserved;
+	uint64_t address;
+};
+
+struct xen_processor_px {
+	uint64_t core_frequency;
+	uint64_t power;
+	uint64_t transition_latency;
+	uint64_t bus_master_latency;
+	uint64_t control;
+	uint64_t status;
+};
+
+typedef struct xen_processor_px *__guest_handle_xen_processor_px;
+
+struct xen_psd_package {
+	uint64_t num_entries;
+	uint64_t revision;
+	uint64_t domain;
+	uint64_t coord_type;
+	uint64_t num_processors;
+};
+
+struct xen_processor_performance {
+	uint32_t flags;
+	uint32_t platform_limit;
+	struct xen_pct_register control_register;
+	struct xen_pct_register status_register;
+	uint32_t state_count;
+	__guest_handle_xen_processor_px states;
+	struct xen_psd_package domain_info;
+	uint32_t shared_type;
+};
+
+struct xenpf_set_processor_pminfo {
+	uint32_t id;
+	uint32_t type;
+	union {
+		struct xen_processor_power power;
+		struct xen_processor_performance perf;
+		__guest_handle_uint32_t pdc;
+	};
+};
+
+struct xenpf_pcpuinfo {
+	uint32_t xen_cpuid;
+	uint32_t max_present;
+	uint32_t flags;
+	uint32_t apic_id;
+	uint32_t acpi_id;
+};
+
+struct xenpf_cpu_ol {
+	uint32_t cpuid;
+};
+
+struct xenpf_cpu_hotadd {
+	uint32_t apic_id;
+	uint32_t acpi_id;
+	uint32_t pxm;
+};
+
+struct xenpf_mem_hotadd {
+	uint64_t spfn;
+	uint64_t epfn;
+	uint32_t pxm;
+	uint32_t flags;
+};
+
+struct xenpf_core_parking {
+	uint32_t type;
+	uint32_t idle_nums;
+};
+
+struct xenpf_symdata {
+	uint32_t namelen;
+	uint32_t symnum;
+	__guest_handle_char name;
+	uint64_t address;
+	char type;
+};
+
+struct xen_platform_op {
+	uint32_t cmd;
+	uint32_t interface_version;
+	union {
+		struct xenpf_settime32 settime32;
+		struct xenpf_settime64 settime64;
+		struct xenpf_add_memtype add_memtype;
+		struct xenpf_del_memtype del_memtype;
+		struct xenpf_read_memtype read_memtype;
+		struct xenpf_microcode_update microcode;
+		struct xenpf_platform_quirk platform_quirk;
+		struct xenpf_efi_runtime_call efi_runtime_call;
+		struct xenpf_firmware_info firmware_info;
+		struct xenpf_enter_acpi_sleep enter_acpi_sleep;
+		struct xenpf_change_freq change_freq;
+		struct xenpf_getidletime getidletime;
+		struct xenpf_set_processor_pminfo set_pminfo;
+		struct xenpf_pcpuinfo pcpu_info;
+		struct xenpf_cpu_ol cpu_ol;
+		struct xenpf_cpu_hotadd cpu_add;
+		struct xenpf_mem_hotadd mem_add;
+		struct xenpf_core_parking core_parking;
+		struct xenpf_symdata symdata;
+		struct dom0_vga_console_info dom0_console;
+		uint8_t pad[128];
+	} u;
+};
+
+struct vcpu_set_singleshot_timer {
+	uint64_t timeout_abs_ns;
+	uint32_t flags;
+};
+
+typedef struct vcpu_time_info *__guest_handle_vcpu_time_info;
+
+struct vcpu_register_time_memory_area {
+	union {
+		__guest_handle_vcpu_time_info h;
+		struct pvclock_vcpu_time_info *v;
+		uint64_t p;
+	} addr;
+};
+
+struct xen_clock_event_device {
+	struct clock_event_device evt;
+	char name[16];
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+typedef int (*pte_fn_t)(pte_t *, long unsigned int, void *);
+
+typedef uint16_t grant_status_t;
+
+struct grant_frames {
+	xen_pfn_t *pfn;
+	unsigned int count;
+	void *vaddr;
+};
+
+struct gnttab_vm_area {
+	struct vm_struct *area;
+	pte_t **ptes;
+	int idx;
+};
+
+enum acpi_irq_model_id {
+	ACPI_IRQ_MODEL_PIC = 0,
+	ACPI_IRQ_MODEL_IOAPIC = 1,
+	ACPI_IRQ_MODEL_IOSAPIC = 2,
+	ACPI_IRQ_MODEL_PLATFORM = 3,
+	ACPI_IRQ_MODEL_GIC = 4,
+	ACPI_IRQ_MODEL_COUNT = 5,
+};
+
+typedef uint16_t domid_t;
+
+struct xen_add_to_physmap {
+	domid_t domid;
+	uint16_t size;
+	unsigned int space;
+	xen_ulong_t idx;
+	xen_pfn_t gpfn;
+};
+
+struct machine_ops {
+	void (*restart)(char *);
+	void (*halt)(void);
+	void (*power_off)(void);
+	void (*shutdown)(void);
+	void (*crash_shutdown)(struct pt_regs *);
+	void (*emergency_restart)(void);
+};
+
+enum x86_hypervisor_type {
+	X86_HYPER_NATIVE = 0,
+	X86_HYPER_VMWARE = 1,
+	X86_HYPER_MS_HYPERV = 2,
+	X86_HYPER_XEN_PV = 3,
+	X86_HYPER_XEN_HVM = 4,
+	X86_HYPER_KVM = 5,
+	X86_HYPER_JAILHOUSE = 6,
+	X86_HYPER_ACRN = 7,
+};
+
+struct hypervisor_x86 {
+	const char *name;
+	uint32_t (*detect)(void);
+	enum x86_hypervisor_type type;
+	struct x86_hyper_init init;
+	struct x86_hyper_runtime runtime;
+	bool ignore_nopv;
+};
+
+enum e820_type {
+	E820_TYPE_RAM = 1,
+	E820_TYPE_RESERVED = 2,
+	E820_TYPE_ACPI = 3,
+	E820_TYPE_NVS = 4,
+	E820_TYPE_UNUSABLE = 5,
+	E820_TYPE_PMEM = 7,
+	E820_TYPE_PRAM = 12,
+	E820_TYPE_SOFT_RESERVED = 4026531839,
+	E820_TYPE_RESERVED_KERN = 128,
+};
+
+struct xen_hvm_pagetable_dying {
+	domid_t domid;
+	__u64 gpa;
+};
+
+enum hvmmem_type_t {
+	HVMMEM_ram_rw = 0,
+	HVMMEM_ram_ro = 1,
+	HVMMEM_mmio_dm = 2,
+};
+
+struct xen_hvm_get_mem_type {
+	domid_t domid;
+	uint16_t mem_type;
+	uint16_t pad[2];
+	uint64_t pfn;
+};
+
+struct e820_entry {
+	u64 addr;
+	u64 size;
+	enum e820_type type;
+} __attribute__((packed));
+
+struct e820_table {
+	__u32 nr_entries;
+	struct e820_entry entries[3200];
+};
+
+typedef xen_pfn_t *__guest_handle_xen_pfn_t;
+
+typedef long unsigned int xen_callback_t;
+
+struct mmu_update {
+	uint64_t ptr;
+	uint64_t val;
+};
+
+struct xen_memory_region {
+	long unsigned int start_pfn;
+	long unsigned int n_pfns;
+};
+
+struct callback_register {
+	uint16_t type;
+	uint16_t flags;
+	xen_callback_t address;
+};
+
+struct xen_memory_reservation {
+	__guest_handle_xen_pfn_t extent_start;
+	xen_ulong_t nr_extents;
+	unsigned int extent_order;
+	unsigned int address_bits;
+	domid_t domid;
+};
+
+struct xen_memory_map {
+	unsigned int nr_entries;
+	__guest_handle_void buffer;
+};
+
+struct x86_apic_ops {
+	unsigned int (*io_apic_read)(unsigned int, unsigned int);
+	void (*restore)(void);
+};
+
+struct physdev_apic {
+	long unsigned int apic_physbase;
+	uint32_t reg;
+	uint32_t value;
+};
+
+typedef long unsigned int uintptr_t;
+
+struct xen_pmu_amd_ctxt {
+	uint32_t counters;
+	uint32_t ctrls;
+	uint64_t regs[0];
+};
+
+struct xen_pmu_cntr_pair {
+	uint64_t counter;
+	uint64_t control;
+};
+
+struct xen_pmu_intel_ctxt {
+	uint32_t fixed_counters;
+	uint32_t arch_counters;
+	uint64_t global_ctrl;
+	uint64_t global_ovf_ctrl;
+	uint64_t global_status;
+	uint64_t fixed_ctrl;
+	uint64_t ds_area;
+	uint64_t pebs_enable;
+	uint64_t debugctl;
+	uint64_t regs[0];
+};
+
+struct xen_pmu_regs {
+	uint64_t ip;
+	uint64_t sp;
+	uint64_t flags;
+	uint16_t cs;
+	uint16_t ss;
+	uint8_t cpl;
+	uint8_t pad[3];
+};
+
+struct xen_pmu_arch {
+	union {
+		struct xen_pmu_regs regs;
+		uint8_t pad[64];
+	} r;
+	uint64_t pmu_flags;
+	union {
+		uint32_t lapic_lvtpc;
+		uint64_t pad;
+	} l;
+	union {
+		struct xen_pmu_amd_ctxt amd;
+		struct xen_pmu_intel_ctxt intel;
+		uint8_t pad[128];
+	} c;
+};
+
+struct xen_pmu_params {
+	struct {
+		uint32_t maj;
+		uint32_t min;
+	} version;
+	uint64_t val;
+	uint32_t vcpu;
+	uint32_t pad;
+};
+
+struct xen_pmu_data {
+	uint32_t vcpu_id;
+	uint32_t pcpu_id;
+	domid_t domain_id;
+	uint8_t pad[6];
+	struct xen_pmu_arch pmu;
+};
+
+struct xenpmu {
+	struct xen_pmu_data *xenpmu_data;
+	uint8_t flags;
+};
+
+enum pg_level {
+	PG_LEVEL_NONE = 0,
+	PG_LEVEL_4K = 1,
+	PG_LEVEL_2M = 2,
+	PG_LEVEL_1G = 3,
+	PG_LEVEL_512G = 4,
+	PG_LEVEL_NUM = 5,
+};
+
+typedef uint32_t grant_ref_t;
+
+typedef uint32_t grant_handle_t;
+
+struct gnttab_map_grant_ref {
+	uint64_t host_addr;
+	uint32_t flags;
+	grant_ref_t ref;
+	domid_t dom;
+	int16_t status;
+	grant_handle_t handle;
+	uint64_t dev_bus_addr;
+};
+
+struct gnttab_unmap_grant_ref {
+	uint64_t host_addr;
+	uint64_t dev_bus_addr;
+	grant_handle_t handle;
+	int16_t status;
+};
+
+enum {
+	DESC_TSS = 9,
+	DESC_LDT = 2,
+	DESCTYPE_S = 16,
+};
+
+enum paravirt_lazy_mode {
+	PARAVIRT_LAZY_NONE = 0,
+	PARAVIRT_LAZY_MMU = 1,
+	PARAVIRT_LAZY_CPU = 2,
+};
+
 struct plist_head {
 	struct list_head node_list;
 };
@@ -20691,37 +21674,6 @@ struct multicall_entry {
 	xen_ulong_t args[6];
 };
 
-struct dom0_vga_console_info {
-	uint8_t video_type;
-	union {
-		struct {
-			uint16_t font_height;
-			uint16_t cursor_x;
-			uint16_t cursor_y;
-			uint16_t rows;
-			uint16_t columns;
-		} text_mode_3;
-		struct {
-			uint16_t width;
-			uint16_t height;
-			uint16_t bytes_per_line;
-			uint16_t bits_per_pixel;
-			uint32_t lfb_base;
-			uint32_t lfb_size;
-			uint8_t red_pos;
-			uint8_t red_size;
-			uint8_t green_pos;
-			uint8_t green_size;
-			uint8_t blue_pos;
-			uint8_t blue_size;
-			uint8_t rsvd_pos;
-			uint8_t rsvd_size;
-			uint32_t gbl_caps;
-			uint16_t mode_attrs;
-		} vesa_lfb;
-	} u;
-};
-
 struct physdev_set_iopl {
 	uint32_t iopl;
 };
@@ -20731,9 +21683,7 @@ struct physdev_set_iobitmap {
 	uint32_t nr_ports;
 };
 
-struct xen_extraversion {
-	char extraversion[16];
-};
+typedef u32 acpi_status;
 
 struct pm_qos_flags_request {
 	struct list_head node;
@@ -20779,8 +21729,8 @@ struct tls_descs {
 };
 
 struct trap_array_entry {
-	void (*orig)();
-	void (*xen)();
+	void (*orig)(void);
+	void (*xen)(void);
 	bool ist_okay;
 };
 
@@ -21006,7 +21956,7 @@ struct trace_event_raw_xen_mmu_flush_tlb_one_user {
 	char __data[0];
 };
 
-struct trace_event_raw_xen_mmu_flush_tlb_others {
+struct trace_event_raw_xen_mmu_flush_tlb_multi {
 	struct trace_entry ent;
 	unsigned int ncpus;
 	struct mm_struct *mm;
@@ -21091,7 +22041,7 @@ struct trace_event_data_offsets_xen_mmu_pgd {};
 
 struct trace_event_data_offsets_xen_mmu_flush_tlb_one_user {};
 
-struct trace_event_data_offsets_xen_mmu_flush_tlb_others {};
+struct trace_event_data_offsets_xen_mmu_flush_tlb_multi {};
 
 struct trace_event_data_offsets_xen_mmu_write_cr3 {};
 
@@ -21143,7 +22093,7 @@ typedef void (*btf_trace_xen_mmu_pgd_unpin)(void *, struct mm_struct *, pgd_t *)
 
 typedef void (*btf_trace_xen_mmu_flush_tlb_one_user)(void *, long unsigned int);
 
-typedef void (*btf_trace_xen_mmu_flush_tlb_others)(void *, const struct cpumask *, struct mm_struct *, long unsigned int, long unsigned int);
+typedef void (*btf_trace_xen_mmu_flush_tlb_multi)(void *, const struct cpumask *, struct mm_struct *, long unsigned int, long unsigned int);
 
 typedef void (*btf_trace_xen_mmu_write_cr3)(void *, bool, long unsigned int);
 
@@ -21273,6 +22223,22 @@ struct vcpu_guest_context {
 	uint64_t gs_base_user;
 };
 
+struct io_tlb_slot;
+
+struct io_tlb_mem {
+	phys_addr_t start;
+	phys_addr_t end;
+	long unsigned int nslabs;
+	long unsigned int used;
+	unsigned int index;
+	spinlock_t lock;
+	struct dentry *debugfs;
+	bool late_alloc;
+	bool force_bounce;
+	bool for_alloc;
+	struct io_tlb_slot *slots;
+};
+
 struct sg_table {
 	struct scatterlist *sgl;
 	unsigned int nents;
@@ -21285,11 +22251,17 @@ enum swiotlb_force {
 	SWIOTLB_NO_FORCE = 2,
 };
 
+struct io_tlb_slot {
+	phys_addr_t orig_addr;
+	size_t alloc_size;
+	unsigned int list;
+};
+
 struct iommu_table_entry {
 	initcall_t detect;
 	initcall_t depend;
-	void (*early_init)();
-	void (*late_init)();
+	void (*early_init)(void);
+	void (*late_init)(void);
 	int flags;
 };
 
@@ -21363,36 +22335,44 @@ struct hvm_memmap_table_entry {
 
 enum {
 	WORK_STRUCT_PENDING_BIT = 0,
-	WORK_STRUCT_DELAYED_BIT = 1,
+	WORK_STRUCT_INACTIVE_BIT = 1,
 	WORK_STRUCT_PWQ_BIT = 2,
 	WORK_STRUCT_LINKED_BIT = 3,
 	WORK_STRUCT_COLOR_SHIFT = 4,
 	WORK_STRUCT_COLOR_BITS = 4,
 	WORK_STRUCT_PENDING = 1,
-	WORK_STRUCT_DELAYED = 2,
+	WORK_STRUCT_INACTIVE = 2,
 	WORK_STRUCT_PWQ = 4,
 	WORK_STRUCT_LINKED = 8,
 	WORK_STRUCT_STATIC = 0,
-	WORK_NR_COLORS = 15,
-	WORK_NO_COLOR = 15,
+	WORK_NR_COLORS = 16,
 	WORK_CPU_UNBOUND = 8192,
 	WORK_STRUCT_FLAG_BITS = 8,
 	WORK_OFFQ_FLAG_BASE = 4,
 	__WORK_OFFQ_CANCELING = 4,
-	WORK_OFFQ_CANCELING = 16,
 	WORK_OFFQ_FLAG_BITS = 1,
 	WORK_OFFQ_POOL_SHIFT = 5,
 	WORK_OFFQ_LEFT = 59,
 	WORK_OFFQ_POOL_BITS = 31,
-	WORK_OFFQ_POOL_NONE = 2147483647,
-	WORK_STRUCT_FLAG_MASK = 255,
-	WORK_STRUCT_WQ_DATA_MASK = 4294967040,
-	WORK_STRUCT_NO_POOL = 4294967264,
 	WORK_BUSY_PENDING = 1,
 	WORK_BUSY_RUNNING = 2,
 	WORKER_DESC_LEN = 24,
 };
 
+enum {
+	MEMREMAP_WB = 1,
+	MEMREMAP_WT = 2,
+	MEMREMAP_WC = 4,
+	MEMREMAP_ENC = 8,
+	MEMREMAP_DEC = 16,
+};
+
+enum hv_isolation_type {
+	HV_ISOLATION_TYPE_NONE = 0,
+	HV_ISOLATION_TYPE_VBS = 1,
+	HV_ISOLATION_TYPE_SNP = 2,
+};
+
 union hv_x64_msr_hypercall_contents {
 	u64 as_uint64;
 	struct {
@@ -21402,6 +22382,15 @@ union hv_x64_msr_hypercall_contents {
 	};
 };
 
+union hv_vp_assist_msr_contents {
+	u64 as_uint64;
+	struct {
+		u64 enable: 1;
+		u64 reserved: 11;
+		u64 pfn: 52;
+	};
+};
+
 struct hv_reenlightenment_control {
 	__u64 vector: 8;
 	__u64 reserved1: 8;
@@ -21440,13 +22429,20 @@ struct hv_vp_assist_page {
 	__u64 current_nested_vmcs;
 };
 
+struct hv_get_partition_id {
+	u64 partition_id;
+};
+
 struct ms_hyperv_info {
 	u32 features;
+	u32 priv_high;
 	u32 misc_features;
 	u32 hints;
 	u32 nested_features;
 	u32 max_vp_index;
 	u32 max_lp_index;
+	u32 isolation_config_a;
+	u32 isolation_config_b;
 };
 
 enum HV_GENERIC_SET_FORMAT {
@@ -21474,7 +22470,7 @@ struct hv_tlb_flush_ex {
 	u64 gva_list[0];
 };
 
-struct trace_event_raw_hyperv_mmu_flush_tlb_others {
+struct trace_event_raw_hyperv_mmu_flush_tlb_multi {
 	struct trace_entry ent;
 	unsigned int ncpus;
 	struct mm_struct *mm;
@@ -21511,7 +22507,7 @@ struct trace_event_raw_hyperv_send_ipi_one {
 	char __data[0];
 };
 
-struct trace_event_data_offsets_hyperv_mmu_flush_tlb_others {};
+struct trace_event_data_offsets_hyperv_mmu_flush_tlb_multi {};
 
 struct trace_event_data_offsets_hyperv_nested_flush_guest_mapping {};
 
@@ -21521,7 +22517,7 @@ struct trace_event_data_offsets_hyperv_send_ipi_mask {};
 
 struct trace_event_data_offsets_hyperv_send_ipi_one {};
 
-typedef void (*btf_trace_hyperv_mmu_flush_tlb_others)(void *, const struct cpumask *, const struct flush_tlb_info *);
+typedef void (*btf_trace_hyperv_mmu_flush_tlb_multi)(void *, const struct cpumask *, const struct flush_tlb_info *);
 
 typedef void (*btf_trace_hyperv_nested_flush_guest_mapping)(void *, u64, int);
 
@@ -21543,6 +22539,12 @@ union hv_gpa_page_range {
 		u64 largepage: 1;
 		u64 basepfn: 52;
 	} page;
+	struct {
+		u64 reserved: 12;
+		u64 page_size: 1;
+		u64 reserved1: 8;
+		u64 base_large_pfn: 43;
+	};
 };
 
 struct hv_guest_mapping_flush_list {
@@ -21553,6 +22555,294 @@ struct hv_guest_mapping_flush_list {
 
 typedef int (*hyperv_fill_flush_list_func)(struct hv_guest_mapping_flush_list *, void *);
 
+enum {
+	IRQCHIP_SET_TYPE_MASKED = 1,
+	IRQCHIP_EOI_IF_HANDLED = 2,
+	IRQCHIP_MASK_ON_SUSPEND = 4,
+	IRQCHIP_ONOFFLINE_ENABLED = 8,
+	IRQCHIP_SKIP_SET_WAKE = 16,
+	IRQCHIP_ONESHOT_SAFE = 32,
+	IRQCHIP_EOI_THREADED = 64,
+	IRQCHIP_SUPPORTS_LEVEL_MSI = 128,
+	IRQCHIP_SUPPORTS_NMI = 256,
+	IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND = 512,
+	IRQCHIP_AFFINITY_PRE_STARTUP = 1024,
+};
+
+enum irq_alloc_type {
+	X86_IRQ_ALLOC_TYPE_IOAPIC = 1,
+	X86_IRQ_ALLOC_TYPE_HPET = 2,
+	X86_IRQ_ALLOC_TYPE_PCI_MSI = 3,
+	X86_IRQ_ALLOC_TYPE_PCI_MSIX = 4,
+	X86_IRQ_ALLOC_TYPE_DMAR = 5,
+	X86_IRQ_ALLOC_TYPE_AMDVI = 6,
+	X86_IRQ_ALLOC_TYPE_UV = 7,
+};
+
+struct ioapic_alloc_info {
+	int pin;
+	int node;
+	u32 is_level: 1;
+	u32 active_low: 1;
+	u32 valid: 1;
+};
+
+struct uv_alloc_info {
+	int limit;
+	int blade;
+	long unsigned int offset;
+	char *name;
+};
+
+struct irq_alloc_info {
+	enum irq_alloc_type type;
+	u32 flags;
+	u32 devid;
+	irq_hw_number_t hwirq;
+	const struct cpumask *mask;
+	struct msi_desc *desc;
+	void *data;
+	union {
+		struct ioapic_alloc_info ioapic;
+		struct uv_alloc_info uv;
+	};
+};
+
+struct irq_cfg {
+	unsigned int dest_apicid;
+	unsigned int vector;
+};
+
+enum {
+	IRQCHIP_FWNODE_REAL = 0,
+	IRQCHIP_FWNODE_NAMED = 1,
+	IRQCHIP_FWNODE_NAMED_ID = 2,
+};
+
+typedef struct irq_alloc_info msi_alloc_info_t;
+
+struct msi_domain_info;
+
+struct msi_domain_ops {
+	irq_hw_number_t (*get_hwirq)(struct msi_domain_info *, msi_alloc_info_t *);
+	int (*msi_init)(struct irq_domain *, struct msi_domain_info *, unsigned int, irq_hw_number_t, msi_alloc_info_t *);
+	void (*msi_free)(struct irq_domain *, struct msi_domain_info *, unsigned int);
+	int (*msi_check)(struct irq_domain *, struct msi_domain_info *, struct device *);
+	int (*msi_prepare)(struct irq_domain *, struct device *, int, msi_alloc_info_t *);
+	void (*msi_finish)(msi_alloc_info_t *, int);
+	void (*set_desc)(msi_alloc_info_t *, struct msi_desc *);
+	int (*handle_error)(struct irq_domain *, struct msi_desc *, int);
+	int (*domain_alloc_irqs)(struct irq_domain *, struct device *, int);
+	void (*domain_free_irqs)(struct irq_domain *, struct device *);
+};
+
+struct msi_domain_info {
+	u32 flags;
+	struct msi_domain_ops *ops;
+	struct irq_chip *chip;
+	void *chip_data;
+	irq_flow_handler_t handler;
+	void *handler_data;
+	const char *handler_name;
+	void *data;
+};
+
+enum {
+	MSI_FLAG_USE_DEF_DOM_OPS = 1,
+	MSI_FLAG_USE_DEF_CHIP_OPS = 2,
+	MSI_FLAG_MULTI_PCI_MSI = 4,
+	MSI_FLAG_PCI_MSIX = 8,
+	MSI_FLAG_ACTIVATE_EARLY = 16,
+	MSI_FLAG_MUST_REACTIVATE = 32,
+	MSI_FLAG_LEVEL_CAPABLE = 64,
+};
+
+enum hv_interrupt_type {
+	HV_X64_INTERRUPT_TYPE_FIXED = 0,
+	HV_X64_INTERRUPT_TYPE_LOWESTPRIORITY = 1,
+	HV_X64_INTERRUPT_TYPE_SMI = 2,
+	HV_X64_INTERRUPT_TYPE_REMOTEREAD = 3,
+	HV_X64_INTERRUPT_TYPE_NMI = 4,
+	HV_X64_INTERRUPT_TYPE_INIT = 5,
+	HV_X64_INTERRUPT_TYPE_SIPI = 6,
+	HV_X64_INTERRUPT_TYPE_EXTINT = 7,
+	HV_X64_INTERRUPT_TYPE_LOCALINT0 = 8,
+	HV_X64_INTERRUPT_TYPE_LOCALINT1 = 9,
+	HV_X64_INTERRUPT_TYPE_MAXIMUM = 10,
+};
+
+union hv_msi_address_register {
+	u32 as_uint32;
+	struct {
+		u32 reserved1: 2;
+		u32 destination_mode: 1;
+		u32 redirection_hint: 1;
+		u32 reserved2: 8;
+		u32 destination_id: 8;
+		u32 msi_base: 12;
+	};
+};
+
+union hv_msi_data_register {
+	u32 as_uint32;
+	struct {
+		u32 vector: 8;
+		u32 delivery_mode: 3;
+		u32 reserved1: 3;
+		u32 level_assert: 1;
+		u32 trigger_mode: 1;
+		u32 reserved2: 16;
+	};
+};
+
+union hv_msi_entry {
+	u64 as_uint64;
+	struct {
+		union hv_msi_address_register address;
+		union hv_msi_data_register data;
+	};
+};
+
+union hv_ioapic_rte {
+	u64 as_uint64;
+	struct {
+		u32 vector: 8;
+		u32 delivery_mode: 3;
+		u32 destination_mode: 1;
+		u32 delivery_status: 1;
+		u32 interrupt_polarity: 1;
+		u32 remote_irr: 1;
+		u32 trigger_mode: 1;
+		u32 interrupt_mask: 1;
+		u32 reserved1: 15;
+		u32 reserved2: 24;
+		u32 destination_id: 8;
+	};
+	struct {
+		u32 low_uint32;
+		u32 high_uint32;
+	};
+};
+
+struct hv_interrupt_entry {
+	u32 source;
+	u32 reserved1;
+	union {
+		union hv_msi_entry msi_entry;
+		union hv_ioapic_rte ioapic_rte;
+	};
+};
+
+struct hv_device_interrupt_target {
+	u32 vector;
+	u32 flags;
+	union {
+		u64 vp_mask;
+		struct hv_vpset vp_set;
+	};
+};
+
+enum hv_device_type {
+	HV_DEVICE_TYPE_LOGICAL = 0,
+	HV_DEVICE_TYPE_PCI = 1,
+	HV_DEVICE_TYPE_IOAPIC = 2,
+	HV_DEVICE_TYPE_ACPI = 3,
+};
+
+typedef u16 hv_pci_rid;
+
+typedef u16 hv_pci_segment;
+
+union hv_pci_bdf {
+	u16 as_uint16;
+	struct {
+		u8 function: 3;
+		u8 device: 5;
+		u8 bus;
+	};
+};
+
+union hv_pci_bus_range {
+	u16 as_uint16;
+	struct {
+		u8 subordinate_bus;
+		u8 secondary_bus;
+	};
+};
+
+union hv_device_id {
+	u64 as_uint64;
+	struct {
+		u64 reserved0: 62;
+		u64 device_type: 2;
+	};
+	struct {
+		u64 id: 62;
+		u64 device_type: 2;
+	} logical;
+	struct {
+		union {
+			hv_pci_rid rid;
+			union hv_pci_bdf bdf;
+		};
+		hv_pci_segment segment;
+		union hv_pci_bus_range shadow_bus_range;
+		u16 phantom_function_bits: 2;
+		u16 source_shadow: 1;
+		u16 rsvdz0: 11;
+		u16 device_type: 2;
+	} pci;
+	struct {
+		u8 ioapic_id;
+		u8 rsvdz0;
+		u16 rsvdz1;
+		u16 rsvdz2;
+		u16 rsvdz3: 14;
+		u16 device_type: 2;
+	} ioapic;
+	struct {
+		u32 input_mapping_base;
+		u32 input_mapping_count: 30;
+		u32 device_type: 2;
+	} acpi;
+};
+
+enum hv_interrupt_trigger_mode {
+	HV_INTERRUPT_TRIGGER_MODE_EDGE = 0,
+	HV_INTERRUPT_TRIGGER_MODE_LEVEL = 1,
+};
+
+struct hv_device_interrupt_descriptor {
+	u32 interrupt_type;
+	u32 trigger_mode;
+	u32 vector_count;
+	u32 reserved;
+	struct hv_device_interrupt_target target;
+};
+
+struct hv_input_map_device_interrupt {
+	u64 partition_id;
+	u64 device_id;
+	u64 flags;
+	struct hv_interrupt_entry logical_interrupt_entry;
+	struct hv_device_interrupt_descriptor interrupt_descriptor;
+};
+
+struct hv_output_map_device_interrupt {
+	struct hv_interrupt_entry interrupt_entry;
+};
+
+struct hv_input_unmap_device_interrupt {
+	u64 partition_id;
+	u64 device_id;
+	struct hv_interrupt_entry interrupt_entry;
+};
+
+struct rid_data {
+	struct pci_dev *bridge;
+	u32 rid;
+};
+
 struct hv_send_ipi {
 	u32 vector;
 	u32 reserved;
@@ -21565,11 +22855,71 @@ struct hv_send_ipi_ex {
 	struct hv_vpset vp_set;
 };
 
+struct hv_deposit_memory {
+	u64 partition_id;
+	u64 gpa_page_list[0];
+};
+
+struct hv_proximity_domain_flags {
+	u32 proximity_preferred: 1;
+	u32 reserved: 30;
+	u32 proximity_info_valid: 1;
+};
+
+union hv_proximity_domain_info {
+	struct {
+		u32 domain_id;
+		struct hv_proximity_domain_flags flags;
+	};
+	u64 as_uint64;
+};
+
+struct hv_lp_startup_status {
+	u64 hv_status;
+	u64 substatus1;
+	u64 substatus2;
+	u64 substatus3;
+	u64 substatus4;
+	u64 substatus5;
+	u64 substatus6;
+};
+
+struct hv_add_logical_processor_in {
+	u32 lp_index;
+	u32 apic_id;
+	union hv_proximity_domain_info proximity_domain_info;
+	u64 flags;
+};
+
+struct hv_add_logical_processor_out {
+	struct hv_lp_startup_status startup_status;
+};
+
+enum HV_SUBNODE_TYPE {
+	HvSubnodeAny = 0,
+	HvSubnodeSocket = 1,
+	HvSubnodeAmdNode = 2,
+	HvSubnodeL3 = 3,
+	HvSubnodeCount = 4,
+	HvSubnodeInvalid = 4294967295,
+};
+
+struct hv_create_vp {
+	u64 partition_id;
+	u32 vp_index;
+	u8 padding[3];
+	u8 subnode_type;
+	u64 subnode_id;
+	union hv_proximity_domain_info proximity_domain_info;
+	u64 flags;
+};
+
 struct real_mode_header {
 	u32 text_start;
 	u32 ro_end;
 	u32 trampoline_start;
 	u32 trampoline_header;
+	u32 sev_es_trampoline_start;
 	u32 trampoline_pgd;
 	u32 wakeup_start;
 	u32 wakeup_header;
@@ -21584,11 +22934,6 @@ struct trampoline_header {
 	u32 flags;
 };
 
-struct pkru_state {
-	u32 pkru;
-	u32 pad;
-};
-
 enum show_regs_mode {
 	SHOW_REGS_SHORT = 0,
 	SHOW_REGS_USER = 1,
@@ -21658,6 +23003,8 @@ struct siginfo {
 	};
 };
 
+typedef struct siginfo siginfo_t;
+
 struct ksignal {
 	struct k_sigaction ka;
 	kernel_siginfo_t info;
@@ -21678,10 +23025,12 @@ typedef s32 compat_timer_t;
 
 typedef s32 compat_int_t;
 
-typedef s64 compat_s64;
+typedef u32 compat_ulong_t;
 
 typedef u32 __compat_uid32_t;
 
+typedef s64 compat_s64;
+
 typedef u32 compat_sigset_word;
 
 struct compat_sigaltstack {
@@ -21740,6 +23089,7 @@ struct compat_siginfo {
 		struct {
 			compat_uptr_t _addr;
 			union {
+				int _trapno;
 				short int _addr_lsb;
 				struct {
 					char _dummy_bnd[4];
@@ -21750,6 +23100,11 @@ struct compat_siginfo {
 					char _dummy_pkey[4];
 					u32 _pkey;
 				} _addr_pkey;
+				struct {
+					compat_ulong_t _data;
+					u32 _type;
+					u32 _flags;
+				} _perf;
 			};
 		} _sigfault;
 		struct {
@@ -21807,31 +23162,49 @@ struct rt_sigframe_x32 {
 	compat_siginfo_t info;
 };
 
-typedef struct siginfo siginfo_t;
-
 enum bug_trap_type {
 	BUG_TRAP_TYPE_NONE = 0,
 	BUG_TRAP_TYPE_WARN = 1,
 	BUG_TRAP_TYPE_BUG = 2,
 };
 
+enum insn_mode {
+	INSN_MODE_32 = 0,
+	INSN_MODE_64 = 1,
+	INSN_MODE_KERN = 2,
+	INSN_NUM_MODES = 3,
+};
+
 typedef u8 kprobe_opcode_t;
 
+struct kprobe;
+
 struct arch_specific_insn {
 	kprobe_opcode_t *insn;
-	bool boostable;
-	bool if_modifier;
+	unsigned int boostable: 1;
+	unsigned char size;
+	union {
+		unsigned char opcode;
+		struct {
+			unsigned char type;
+		} jcc;
+		struct {
+			unsigned char type;
+			unsigned char asize;
+		} loop;
+		struct {
+			unsigned char reg;
+		} indirect;
+	};
+	s32 rel32;
+	void (*emulate_op)(struct kprobe *, struct pt_regs *);
 	int tp_len;
 };
 
-struct kprobe;
-
 typedef int (*kprobe_pre_handler_t)(struct kprobe *, struct pt_regs *);
 
 typedef void (*kprobe_post_handler_t)(struct kprobe *, struct pt_regs *, long unsigned int);
 
-typedef int (*kprobe_fault_handler_t)(struct kprobe *, struct pt_regs *, int);
-
 struct kprobe {
 	struct hlist_node hlist;
 	struct list_head list;
@@ -21841,7 +23214,6 @@ struct kprobe {
 	unsigned int offset;
 	kprobe_pre_handler_t pre_handler;
 	kprobe_post_handler_t post_handler;
-	kprobe_fault_handler_t fault_handler;
 	kprobe_opcode_t opcode;
 	struct arch_specific_insn ainsn;
 	u32 flags;
@@ -21868,18 +23240,6 @@ enum kernel_gp_hint {
 	GP_CANONICAL = 2,
 };
 
-struct bad_iret_stack {
-	void *error_entry_ret;
-	struct pt_regs regs;
-};
-
-struct idt_data {
-	unsigned int vector;
-	unsigned int segment;
-	struct idt_bits bits;
-	const void *addr;
-};
-
 typedef struct irq_desc *vector_irq_t[256];
 
 struct trace_event_raw_x86_irq_vector {
@@ -22053,20 +23413,8 @@ typedef void (*btf_trace_vector_setup)(void *, unsigned int, bool, int);
 
 typedef void (*btf_trace_vector_free_moved)(void *, unsigned int, unsigned int, unsigned int, bool);
 
-struct cea_exception_stacks {
-	char DF_stack_guard[4096];
-	char DF_stack[8192];
-	char NMI_stack_guard[4096];
-	char NMI_stack[8192];
-	char DB_stack_guard[4096];
-	char DB_stack[8192];
-	char MCE_stack_guard[4096];
-	char MCE_stack[8192];
-	char VC_stack_guard[4096];
-	char VC_stack[8192];
-	char VC2_stack_guard[4096];
-	char VC2_stack[8192];
-	char IST_top_guard[4096];
+struct irq_stack {
+	char stack[16384];
 };
 
 struct estack_pages {
@@ -22093,15 +23441,15 @@ enum lockdown_reason {
 	LOCKDOWN_DEBUGFS = 14,
 	LOCKDOWN_XMON_WR = 15,
 	LOCKDOWN_BPF_WRITE_USER = 16,
-	LOCKDOWN_DBG_WRITE_KERNEL = 17,
+	LOCKDOWN_KGDB = 17,
 	LOCKDOWN_INTEGRITY_MAX = 18,
 	LOCKDOWN_KCORE = 19,
 	LOCKDOWN_KPROBES = 20,
-	LOCKDOWN_BPF_READ = 21,
-	LOCKDOWN_DBG_READ_KERNEL = 22,
-	LOCKDOWN_PERF = 23,
-	LOCKDOWN_TRACEFS = 24,
-	LOCKDOWN_XMON_RW = 25,
+	LOCKDOWN_BPF_READ_KERNEL = 21,
+	LOCKDOWN_PERF = 22,
+	LOCKDOWN_TRACEFS = 23,
+	LOCKDOWN_XMON_RW = 24,
+	LOCKDOWN_XFRM_SECRET = 25,
 	LOCKDOWN_CONFIDENTIALITY_MAX = 26,
 };
 
@@ -22110,10 +23458,6 @@ enum lockdep_ok {
 	LOCKDEP_NOW_UNRELIABLE = 1,
 };
 
-struct entry_stack {
-	char stack[4096];
-};
-
 struct trace_event_raw_nmi_handler {
 	struct trace_entry ent;
 	void *handler;
@@ -22157,6 +23501,27 @@ struct user_desc {
 	unsigned int lm: 1;
 };
 
+struct edd {
+	unsigned int mbr_signature[16];
+	struct edd_info edd_info[6];
+	unsigned char mbr_signature_nr;
+	unsigned char edd_info_nr;
+};
+
+struct setup_data {
+	__u64 next;
+	__u32 type;
+	__u32 len;
+	__u8 data[0];
+};
+
+struct setup_indirect {
+	__u32 type;
+	__u32 reserved;
+	__u64 len;
+	__u64 addr;
+};
+
 enum con_scroll {
 	SM_UP = 0,
 	SM_DOWN = 1,
@@ -22175,7 +23540,7 @@ struct console_font;
 
 struct consw {
 	struct module *owner;
-	const char * (*con_startup)();
+	const char * (*con_startup)(void);
 	void (*con_init)(struct vc_data *, int);
 	void (*con_deinit)(struct vc_data *);
 	void (*con_clear)(struct vc_data *, int, int, int, int);
@@ -22188,7 +23553,6 @@ struct consw {
 	int (*con_font_set)(struct vc_data *, struct console_font *, unsigned int);
 	int (*con_font_get)(struct vc_data *, struct console_font *);
 	int (*con_font_default)(struct vc_data *, struct console_font *, char *);
-	int (*con_font_copy)(struct vc_data *, int);
 	int (*con_resize)(struct vc_data *, unsigned int, unsigned int, unsigned int);
 	void (*con_set_palette)(struct vc_data *, const unsigned char *);
 	void (*con_scrolldelta)(struct vc_data *, int);
@@ -22300,27 +23664,6 @@ struct vc_data {
 	struct uni_screen *vc_uni_screen;
 };
 
-struct edd {
-	unsigned int mbr_signature[16];
-	struct edd_info edd_info[6];
-	unsigned char mbr_signature_nr;
-	unsigned char edd_info_nr;
-};
-
-struct setup_data {
-	__u64 next;
-	__u32 type;
-	__u32 len;
-	__u8 data[0];
-};
-
-struct setup_indirect {
-	__u32 type;
-	__u32 reserved;
-	__u64 len;
-	__u64 addr;
-};
-
 enum memblock_flags {
 	MEMBLOCK_NONE = 0,
 	MEMBLOCK_HOTPLUG = 1,
@@ -22354,14 +23697,31 @@ struct x86_msi_ops {
 	void (*restore_msi_irqs)(struct pci_dev *);
 };
 
-struct msi_controller {
-	struct module *owner;
-	struct device *dev;
-	struct device_node *of_node;
-	struct list_head list;
-	int (*setup_irq)(struct msi_controller *, struct pci_dev *, struct msi_desc *);
-	int (*setup_irqs)(struct msi_controller *, struct pci_dev *, int, int);
-	void (*teardown_irq)(struct msi_controller *, unsigned int);
+enum {
+	IRQ_TYPE_NONE = 0,
+	IRQ_TYPE_EDGE_RISING = 1,
+	IRQ_TYPE_EDGE_FALLING = 2,
+	IRQ_TYPE_EDGE_BOTH = 3,
+	IRQ_TYPE_LEVEL_HIGH = 4,
+	IRQ_TYPE_LEVEL_LOW = 8,
+	IRQ_TYPE_LEVEL_MASK = 12,
+	IRQ_TYPE_SENSE_MASK = 15,
+	IRQ_TYPE_DEFAULT = 15,
+	IRQ_TYPE_PROBE = 16,
+	IRQ_LEVEL = 256,
+	IRQ_PER_CPU = 512,
+	IRQ_NOPROBE = 1024,
+	IRQ_NOREQUEST = 2048,
+	IRQ_NOAUTOEN = 4096,
+	IRQ_NO_BALANCING = 8192,
+	IRQ_MOVE_PCNTXT = 16384,
+	IRQ_NESTED_THREAD = 32768,
+	IRQ_NOTHREAD = 65536,
+	IRQ_PER_CPU_DEVID = 131072,
+	IRQ_IS_POLLED = 262144,
+	IRQ_DISABLE_UNLAZY = 524288,
+	IRQ_HIDDEN = 1048576,
+	IRQ_NO_DEBUG = 2097152,
 };
 
 struct legacy_pic {
@@ -22369,10 +23729,10 @@ struct legacy_pic {
 	struct irq_chip *chip;
 	void (*mask)(unsigned int);
 	void (*unmask)(unsigned int);
-	void (*mask_all)();
-	void (*restore_mask)();
+	void (*mask_all)(void);
+	void (*restore_mask)(void);
 	void (*init)(int);
-	int (*probe)();
+	int (*probe)(void);
 	int (*irq_pending)(unsigned int);
 	void (*make_irq)(unsigned int);
 };
@@ -22390,6 +23750,11 @@ union text_poke_insn {
 	} __attribute__((packed));
 };
 
+struct jump_label_patch {
+	const void *code;
+	int size;
+};
+
 enum {
 	JL_STATE_START = 0,
 	JL_STATE_NO_UPDATE = 1,
@@ -22420,6 +23785,7 @@ struct kernel_clone_args {
 	pid_t *set_tid;
 	size_t set_tid_size;
 	int cgroup;
+	int io_thread;
 	struct cgroup *cgrp;
 	struct css_set *cset;
 };
@@ -22501,13 +23867,9 @@ struct kobj_attribute {
 	ssize_t (*store)(struct kobject *, struct kobj_attribute *, const char *, size_t);
 };
 
-enum {
-	MEMREMAP_WB = 1,
-	MEMREMAP_WT = 2,
-	MEMREMAP_WC = 4,
-	MEMREMAP_ENC = 8,
-	MEMREMAP_DEC = 16,
-};
+typedef void (*swap_func_t)(void *, void *, int);
+
+typedef int (*cmp_func_t)(const void *, const void *);
 
 enum {
 	IORES_DESC_NONE = 0,
@@ -22528,11 +23890,14 @@ struct change_member {
 
 struct iommu_fault_param;
 
+struct iopf_device_param;
+
 struct iommu_fwspec;
 
 struct dev_iommu {
 	struct mutex lock;
 	struct iommu_fault_param *fault_param;
+	struct iopf_device_param *iopf_param;
 	struct iommu_fwspec *fwspec;
 	struct iommu_device *iommu_dev;
 	void *priv;
@@ -22637,6 +24002,8 @@ struct iommu_domain_geometry {
 	bool force_aperture;
 };
 
+struct iommu_dma_cookie;
+
 struct iommu_domain {
 	unsigned int type;
 	const struct iommu_ops *ops;
@@ -22644,7 +24011,7 @@ struct iommu_domain {
 	iommu_fault_handler_t handler;
 	void *handler_token;
 	struct iommu_domain_geometry geometry;
-	void *iova_cookie;
+	struct iommu_dma_cookie *iova_cookie;
 };
 
 typedef int (*iommu_dev_fault_handler_t)(struct iommu_fault *, void *);
@@ -22669,6 +24036,8 @@ struct iommu_iotlb_gather {
 	long unsigned int start;
 	long unsigned int end;
 	size_t pgsize;
+	struct page *freelist;
+	bool queued;
 };
 
 struct iommu_device {
@@ -22698,7 +24067,6 @@ struct iommu_fwspec {
 	const struct iommu_ops *ops;
 	struct fwnode_handle *iommu_fwnode;
 	u32 flags;
-	u32 num_pasid_bits;
 	unsigned int num_ids;
 	u32 ids[0];
 };
@@ -22731,17 +24099,6 @@ enum dmi_field {
 	DMI_OEM_STRING = 24,
 };
 
-struct acpi_device;
-
-struct pci_sysdata {
-	int domain;
-	int node;
-	struct acpi_device *companion;
-	void *iommu;
-	void *fwnode;
-	struct pci_dev *vmd_dev;
-};
-
 enum {
 	NONE_FORCE_HPET_RESUME = 0,
 	OLD_ICH_FORCE_HPET_RESUME = 1,
@@ -22751,8 +24108,6 @@ enum {
 	ATI_FORCE_HPET_RESUME = 5,
 };
 
-typedef struct pglist_data pg_data_t;
-
 enum meminit_context {
 	MEMINIT_EARLY = 0,
 	MEMINIT_HOTPLUG = 1,
@@ -22768,8 +24123,6 @@ struct x86_cpu {
 	struct cpu cpu;
 };
 
-typedef int (*cmp_func_t)(const void *, const void *);
-
 typedef u8 retpoline_thunk_t[32];
 
 struct paravirt_patch_site {
@@ -22786,11 +24139,8 @@ struct die_args {
 	int signr;
 };
 
-enum insn_mode {
-	INSN_MODE_32 = 0,
-	INSN_MODE_64 = 1,
-	INSN_MODE_KERN = 2,
-	INSN_NUM_MODES = 3,
+struct tlb_state_shared {
+	bool is_lazy;
 };
 
 struct smp_alt_module {
@@ -22888,7 +24238,6 @@ struct cpufreq_policy {
 	unsigned int min;
 	unsigned int max;
 	unsigned int cur;
-	unsigned int restore_freq;
 	unsigned int suspend_freq;
 	unsigned int policy;
 	unsigned int last_policy;
@@ -22955,15 +24304,6 @@ struct cyc2ns {
 	seqcount_latch_t seq;
 };
 
-struct x86_cpu_id {
-	__u16 vendor;
-	__u16 family;
-	__u16 model;
-	__u16 steppings;
-	__u16 feature;
-	kernel_ulong_t driver_data;
-};
-
 struct muldiv {
 	u32 multiplier;
 	u32 divider;
@@ -23005,7 +24345,7 @@ struct platform_device {
 	u32 num_resources;
 	struct resource *resource;
 	const struct platform_device_id *id_entry;
-	char *driver_override;
+	const char *driver_override;
 	struct mfd_cell *mfd_cell;
 	struct pdev_archdata archdata;
 };
@@ -23224,6 +24564,7 @@ enum insn_type {
 	NOP = 1,
 	JMP = 2,
 	RET = 3,
+	JCC = 4,
 };
 
 struct ldttss_desc {
@@ -23283,6 +24624,35 @@ struct ssb_state {
 	long unsigned int local_state;
 };
 
+struct fpu_state_config {
+	unsigned int max_size;
+	unsigned int default_size;
+	u64 max_features;
+	u64 default_features;
+	u64 legacy_features;
+	u64 independent_features;
+};
+
+struct pkru_state {
+	u32 pkru;
+	u32 pad;
+};
+
+struct fpu_guest {
+	struct fpstate *fpstate;
+};
+
+struct membuf {
+	void *p;
+	size_t left;
+};
+
+enum xstate_copy_mode {
+	XSTATE_COPY_FP = 0,
+	XSTATE_COPY_FX = 1,
+	XSTATE_COPY_XSAVE = 2,
+};
+
 struct trace_event_raw_x86_fpu {
 	struct trace_entry ent;
 	struct fpu *fpu;
@@ -23338,11 +24708,6 @@ struct user_i387_ia32_struct {
 	u32 st_space[20];
 };
 
-struct membuf {
-	void *p;
-	size_t left;
-};
-
 struct user_regset;
 
 typedef int user_regset_active_fn(struct task_struct *, const struct user_regset *);
@@ -23403,8 +24768,6 @@ struct _fpstate_32 {
 	};
 };
 
-typedef u32 compat_ulong_t;
-
 struct user_regset_view {
 	const char *name;
 	const struct user_regset *regsets;
@@ -23429,6 +24792,14 @@ struct pt_regs_offset {
 	int offset;
 };
 
+enum {
+	SR_DMAR_FECTL_REG = 0,
+	SR_DMAR_FEDATA_REG = 1,
+	SR_DMAR_FEADDR_REG = 2,
+	SR_DMAR_FEUADDR_REG = 3,
+	MAX_SR_DMAR_REGS = 4,
+};
+
 enum {
 	TB_SHUTDOWN_REBOOT = 0,
 	TB_SHUTDOWN_S5 = 1,
@@ -23681,6 +25052,32 @@ enum cpuid_leafs {
 	CPUID_7_ECX = 16,
 	CPUID_8000_0007_EBX = 17,
 	CPUID_7_EDX = 18,
+	CPUID_8000_001F_EAX = 19,
+	CPUID_8000_0021_EAX = 20,
+	CPUID_LNX_5 = 21,
+	NR_CPUID_WORDS = 22,
+};
+
+enum kgdb_bptype {
+	BP_BREAKPOINT = 0,
+	BP_HARDWARE_BREAKPOINT = 1,
+	BP_WRITE_WATCHPOINT = 2,
+	BP_READ_WATCHPOINT = 3,
+	BP_ACCESS_WATCHPOINT = 4,
+	BP_POKE_BREAKPOINT = 5,
+};
+
+struct kgdb_arch {
+	unsigned char gdb_bpt_instr[1];
+	long unsigned int flags;
+	int (*set_breakpoint)(long unsigned int, char *);
+	int (*remove_breakpoint)(long unsigned int, char *);
+	int (*set_hw_breakpoint)(long unsigned int, int, enum kgdb_bptype);
+	int (*remove_hw_breakpoint)(long unsigned int, int, enum kgdb_bptype);
+	void (*disable_hw_break)(struct pt_regs *);
+	void (*remove_all_hw_break)(void);
+	void (*correct_hw_break)(void);
+	void (*enable_nmi)(bool);
 };
 
 struct cpu_dev {
@@ -23694,6 +25091,11 @@ struct cpu_dev {
 	int c_x86_vendor;
 };
 
+struct ppin_info {
+	int feature;
+	int msr_ppin_ctl;
+};
+
 struct cpuid_dependent_feature {
 	u32 feature;
 	u32 level;
@@ -23769,6 +25171,12 @@ enum mmio_mitigations {
 	MMIO_MITIGATION_VERW = 2,
 };
 
+enum rfds_mitigations {
+	RFDS_MITIGATION_OFF = 0,
+	RFDS_MITIGATION_VERW = 1,
+	RFDS_MITIGATION_UCODE_NEEDED = 2,
+};
+
 enum srbds_mitigations {
 	SRBDS_MITIGATION_OFF = 0,
 	SRBDS_MITIGATION_UCODE_NEEDED = 1,
@@ -23777,6 +25185,20 @@ enum srbds_mitigations {
 	SRBDS_MITIGATION_HYPERVISOR = 4,
 };
 
+enum l1d_flush_mitigations {
+	L1D_FLUSH_OFF = 0,
+	L1D_FLUSH_ON = 1,
+};
+
+enum gds_mitigations {
+	GDS_MITIGATION_OFF = 0,
+	GDS_MITIGATION_UCODE_NEEDED = 1,
+	GDS_MITIGATION_FORCE = 2,
+	GDS_MITIGATION_FULL = 3,
+	GDS_MITIGATION_FULL_LOCKED = 4,
+	GDS_MITIGATION_HYPERVISOR = 5,
+};
+
 enum spectre_v1_mitigation {
 	SPECTRE_V1_MITIGATION_NONE = 0,
 	SPECTRE_V1_MITIGATION_AUTO = 1,
@@ -23820,6 +25242,11 @@ enum spectre_v2_user_cmd {
 	SPECTRE_V2_USER_CMD_SECCOMP_IBPB = 6,
 };
 
+enum bhi_mitigations {
+	BHI_MITIGATION_OFF = 0,
+	BHI_MITIGATION_ON = 1,
+};
+
 enum ssb_mitigation_cmd {
 	SPEC_STORE_BYPASS_CMD_NONE = 0,
 	SPEC_STORE_BYPASS_CMD_AUTO = 1,
@@ -23828,6 +25255,22 @@ enum ssb_mitigation_cmd {
 	SPEC_STORE_BYPASS_CMD_SECCOMP = 4,
 };
 
+enum srso_mitigation {
+	SRSO_MITIGATION_NONE = 0,
+	SRSO_MITIGATION_MICROCODE = 1,
+	SRSO_MITIGATION_SAFE_RET = 2,
+	SRSO_MITIGATION_IBPB = 3,
+	SRSO_MITIGATION_IBPB_ON_VMEXIT = 4,
+};
+
+enum srso_mitigation_cmd {
+	SRSO_CMD_OFF = 0,
+	SRSO_CMD_MICROCODE = 1,
+	SRSO_CMD_SAFE_RET = 2,
+	SRSO_CMD_IBPB = 3,
+	SRSO_CMD_IBPB_ON_VMEXIT = 4,
+};
+
 enum hk_flags {
 	HK_FLAG_TIMER = 1,
 	HK_FLAG_RCU = 2,
@@ -23842,6 +25285,7 @@ enum hk_flags {
 
 struct aperfmperf_sample {
 	unsigned int khz;
+	atomic_t scfpending;
 	ktime_t time;
 	u64 aperf;
 	u64 mperf;
@@ -23866,16 +25310,11 @@ struct _tlb_table {
 	char info[128];
 };
 
-enum tsx_ctrl_states {
-	TSX_CTRL_ENABLE = 0,
-	TSX_CTRL_DISABLE = 1,
-	TSX_CTRL_NOT_SUPPORTED = 2,
-};
-
 enum split_lock_detect_state {
 	sld_off = 0,
 	sld_warn = 1,
 	sld_fatal = 2,
+	sld_ratelimit = 3,
 };
 
 struct sku_microcode {
@@ -23902,6 +25341,13 @@ enum {
 	PCONFIG_CPUID_SUBLEAF_TARGETID = 1,
 };
 
+enum tsx_ctrl_states {
+	TSX_CTRL_ENABLE = 0,
+	TSX_CTRL_DISABLE = 1,
+	TSX_CTRL_RTM_ALWAYS_ABORT = 2,
+	TSX_CTRL_NOT_SUPPORTED = 3,
+};
+
 enum task_work_notify_mode {
 	TWA_NONE = 0,
 	TWA_RESUME = 1,
@@ -24008,11 +25454,11 @@ struct mce_vendor_flags {
 	__u64 __reserved_0: 60;
 };
 
-struct mca_msr_regs {
-	u32 (*ctl)(int);
-	u32 (*status)(int);
-	u32 (*addr)(int);
-	u32 (*misc)(int);
+enum mca_msr {
+	MCA_CTL = 0,
+	MCA_STATUS = 1,
+	MCA_ADDR = 2,
+	MCA_MISC = 3,
 };
 
 struct trace_event_raw_mce_record {
@@ -24052,13 +25498,6 @@ struct mce_bank_dev {
 	u8 bank;
 };
 
-enum handler_type {
-	EX_HANDLER_NONE = 0,
-	EX_HANDLER_FAULT = 1,
-	EX_HANDLER_UACCESS = 2,
-	EX_HANDLER_OTHER = 3,
-};
-
 enum context {
 	IN_KERNEL = 1,
 	IN_USER = 2,
@@ -24136,15 +25575,20 @@ enum smca_bank_types {
 	SMCA_CS_V2 = 10,
 	SMCA_PIE = 11,
 	SMCA_UMC = 12,
-	SMCA_PB = 13,
-	SMCA_PSP = 14,
-	SMCA_PSP_V2 = 15,
-	SMCA_SMU = 16,
-	SMCA_SMU_V2 = 17,
-	SMCA_MP5 = 18,
-	SMCA_NBIO = 19,
-	SMCA_PCIE = 20,
-	N_SMCA_BANK_TYPES = 21,
+	SMCA_UMC_V2 = 13,
+	SMCA_PB = 14,
+	SMCA_PSP = 15,
+	SMCA_PSP_V2 = 16,
+	SMCA_SMU = 17,
+	SMCA_SMU_V2 = 18,
+	SMCA_MP5 = 19,
+	SMCA_NBIO = 20,
+	SMCA_PCIE = 21,
+	SMCA_PCIE_V2 = 22,
+	SMCA_XGMI_PCS = 23,
+	SMCA_XGMI_PHY = 24,
+	SMCA_WAFL_PHY = 25,
+	N_SMCA_BANK_TYPES = 26,
 };
 
 struct smca_hwid {
@@ -24178,35 +25622,6 @@ struct threshold_attr {
 	ssize_t (*store)(struct threshold_block *, const char *, size_t);
 };
 
-struct _thermal_state {
-	u64 next_check;
-	u64 last_interrupt_time;
-	struct delayed_work therm_work;
-	long unsigned int count;
-	long unsigned int last_count;
-	long unsigned int max_time_ms;
-	long unsigned int total_time_ms;
-	bool rate_control_active;
-	bool new_event;
-	u8 level;
-	u8 sample_index;
-	u8 sample_count;
-	u8 average;
-	u8 baseline_temp;
-	u8 temp_samples[3];
-};
-
-struct thermal_state {
-	struct _thermal_state core_throttle;
-	struct _thermal_state core_power_limit;
-	struct _thermal_state package_throttle;
-	struct _thermal_state package_power_limit;
-	struct _thermal_state core_thresh0;
-	struct _thermal_state core_thresh1;
-	struct _thermal_state pkg_thresh0;
-	struct _thermal_state pkg_thresh1;
-};
-
 enum {
 	CPER_SEV_RECOVERABLE = 0,
 	CPER_SEV_FATAL = 1,
@@ -24246,6 +25661,13 @@ struct cper_section_descriptor {
 	u8 fru_text[20];
 };
 
+struct cper_ia_proc_ctx {
+	u16 reg_ctx_type;
+	u16 reg_arr_size;
+	u32 msr_addr;
+	u64 mm_reg_addr;
+};
+
 struct cper_sec_mem_err {
 	u64 validation_bits;
 	u64 error_status;
@@ -24282,17 +25704,57 @@ struct cper_mce_record {
 	struct mce mce;
 };
 
+struct miscdevice {
+	int minor;
+	const char *name;
+	const struct file_operations *fops;
+	struct list_head list;
+	struct device *parent;
+	struct device *this_device;
+	const struct attribute_group **groups;
+	const char *nodename;
+	umode_t mode;
+};
+
+typedef struct poll_table_struct poll_table;
+
+struct mce_log_buffer {
+	char signature[12];
+	unsigned int len;
+	unsigned int next;
+	unsigned int flags;
+	unsigned int recordlen;
+	struct mce entry[0];
+};
+
+typedef int (*cpu_stop_fn_t)(void *);
+
+struct mtrr_var_range {
+	__u32 base_lo;
+	__u32 base_hi;
+	__u32 mask_lo;
+	__u32 mask_hi;
+};
+
 typedef __u8 mtrr_type;
 
+struct mtrr_state_type {
+	struct mtrr_var_range var_ranges[256];
+	mtrr_type fixed_ranges[88];
+	unsigned char enabled;
+	unsigned char have_fixed;
+	mtrr_type def_type;
+};
+
 struct mtrr_ops {
 	u32 vendor;
 	u32 use_intel_if;
 	void (*set)(unsigned int, long unsigned int, long unsigned int, mtrr_type);
-	void (*set_all)();
+	void (*set_all)(void);
 	void (*get)(unsigned int, long unsigned int *, long unsigned int *, mtrr_type *);
 	int (*get_free_region)(long unsigned int, long unsigned int, int);
 	int (*validate_add_page)(long unsigned int, long unsigned int, unsigned int);
-	int (*have_wrcomb)();
+	int (*have_wrcomb)(void);
 };
 
 struct set_mtrr_data {
@@ -24352,21 +25814,6 @@ struct mtrr_gentry32 {
 	compat_uint_t type;
 };
 
-struct mtrr_var_range {
-	__u32 base_lo;
-	__u32 base_hi;
-	__u32 mask_lo;
-	__u32 mask_hi;
-};
-
-struct mtrr_state_type {
-	struct mtrr_var_range var_ranges[256];
-	mtrr_type fixed_ranges[88];
-	unsigned char enabled;
-	unsigned char have_fixed;
-	mtrr_type def_type;
-};
-
 struct fixed_range_block {
 	int base_msr;
 	int ranges;
@@ -24498,6 +25945,7 @@ struct firmware {
 struct ucode_patch {
 	struct list_head plist;
 	void *data;
+	unsigned int size;
 	u32 patch_id;
 	u16 equiv_cpu;
 };
@@ -24576,7 +26024,124 @@ struct cont_desc {
 	size_t size;
 };
 
-typedef void (*exitcall_t)();
+enum resctrl_conf_type {
+	CDP_NONE = 0,
+	CDP_CODE = 1,
+	CDP_DATA = 2,
+};
+
+struct resctrl_staged_config {
+	u32 new_ctrl;
+	bool have_new_ctrl;
+};
+
+struct mbm_state;
+
+struct pseudo_lock_region;
+
+struct rdt_domain {
+	struct list_head list;
+	int id;
+	struct cpumask cpu_mask;
+	long unsigned int *rmid_busy_llc;
+	struct mbm_state *mbm_total;
+	struct mbm_state *mbm_local;
+	struct delayed_work mbm_over;
+	struct delayed_work cqm_limbo;
+	int mbm_work_cpu;
+	int cqm_work_cpu;
+	struct pseudo_lock_region *plr;
+	struct resctrl_staged_config staged_config[3];
+};
+
+struct mbm_state {
+	u64 chunks;
+	u64 prev_msr;
+	u64 prev_bw_msr;
+	u32 prev_bw;
+	u32 delta_bw;
+	bool delta_comp;
+};
+
+struct resctrl_schema;
+
+struct pseudo_lock_region {
+	struct resctrl_schema *s;
+	struct rdt_domain *d;
+	u32 cbm;
+	wait_queue_head_t lock_thread_wq;
+	int thread_done;
+	int cpu;
+	unsigned int line_size;
+	unsigned int size;
+	void *kmem;
+	unsigned int minor;
+	struct dentry *debugfs_dir;
+	struct list_head pm_reqs;
+};
+
+struct resctrl_cache {
+	unsigned int cbm_len;
+	unsigned int min_cbm_bits;
+	unsigned int shareable_bits;
+	bool arch_has_sparse_bitmaps;
+	bool arch_has_empty_bitmaps;
+	bool arch_has_per_cpu_cfg;
+};
+
+enum membw_throttle_mode {
+	THREAD_THROTTLE_UNDEFINED = 0,
+	THREAD_THROTTLE_MAX = 1,
+	THREAD_THROTTLE_PER_THREAD = 2,
+};
+
+struct resctrl_membw {
+	u32 min_bw;
+	u32 bw_gran;
+	u32 delay_linear;
+	bool arch_needs_linear;
+	enum membw_throttle_mode throttle_mode;
+	bool mba_sc;
+	u32 *mb_map;
+};
+
+struct rdt_parse_data;
+
+struct rdt_resource {
+	int rid;
+	bool alloc_enabled;
+	bool mon_enabled;
+	bool alloc_capable;
+	bool mon_capable;
+	int num_rmid;
+	int cache_level;
+	struct resctrl_cache cache;
+	struct resctrl_membw membw;
+	struct list_head domains;
+	char *name;
+	int data_width;
+	u32 default_ctrl;
+	const char *format_str;
+	int (*parse_ctrlval)(struct rdt_parse_data *, struct resctrl_schema *, struct rdt_domain *);
+	struct list_head evt_list;
+	long unsigned int fflags;
+	bool cdp_capable;
+};
+
+struct rdtgroup;
+
+struct rdt_parse_data {
+	struct rdtgroup *rdtgrp;
+	char *buf;
+};
+
+struct resctrl_schema {
+	struct list_head list;
+	char name[8];
+	enum resctrl_conf_type conf_type;
+	struct rdt_resource *res;
+	u32 num_closid;
+};
 
 enum rdt_group_type {
 	RDTCTRL_GROUP = 0,
@@ -24584,8 +26149,6 @@ enum rdt_group_type {
 	RDT_NUM_GROUP = 2,
 };
 
-struct rdtgroup;
-
 struct mongroup {
 	struct kernfs_node *mon_data_kn;
 	struct rdtgroup *parent;
@@ -24601,8 +26164,6 @@ enum rdtgrp_mode {
 	RDT_NUM_MODES = 4,
 };
 
-struct pseudo_lock_region;
-
 struct rdtgroup {
 	struct kernfs_node *kn;
 	struct list_head rdtgroup_list;
@@ -24616,128 +26177,33 @@ struct rdtgroup {
 	struct pseudo_lock_region *plr;
 };
 
-struct rdt_cache {
-	unsigned int cbm_len;
-	unsigned int min_cbm_bits;
-	unsigned int cbm_idx_mult;
-	unsigned int cbm_idx_offset;
-	unsigned int shareable_bits;
-	bool arch_has_sparse_bitmaps;
-	bool arch_has_empty_bitmaps;
-	bool arch_has_per_cpu_cfg;
-};
-
-enum membw_throttle_mode {
-	THREAD_THROTTLE_UNDEFINED = 0,
-	THREAD_THROTTLE_MAX = 1,
-	THREAD_THROTTLE_PER_THREAD = 2,
-};
-
-struct rdt_membw {
-	u32 min_bw;
-	u32 bw_gran;
-	u32 delay_linear;
-	bool arch_needs_linear;
-	enum membw_throttle_mode throttle_mode;
-	bool mba_sc;
-	u32 *mb_map;
-};
-
-struct rdt_domain;
-
-struct msr_param;
-
-struct rdt_parse_data;
-
-struct rdt_resource {
-	int rid;
-	bool alloc_enabled;
-	bool mon_enabled;
-	bool alloc_capable;
-	bool mon_capable;
-	char *name;
-	int num_closid;
-	int cache_level;
-	u32 default_ctrl;
-	unsigned int msr_base;
-	void (*msr_update)(struct rdt_domain *, struct msr_param *, struct rdt_resource *);
-	int data_width;
-	struct list_head domains;
-	struct rdt_cache cache;
-	struct rdt_membw membw;
-	const char *format_str;
-	int (*parse_ctrlval)(struct rdt_parse_data *, struct rdt_resource *, struct rdt_domain *);
-	struct list_head evt_list;
-	int num_rmid;
-	unsigned int mon_scale;
-	unsigned int mbm_width;
-	long unsigned int fflags;
-};
-
-struct mbm_state;
-
-struct rdt_domain {
-	struct list_head list;
-	int id;
-	struct cpumask cpu_mask;
-	long unsigned int *rmid_busy_llc;
-	struct mbm_state *mbm_total;
-	struct mbm_state *mbm_local;
-	struct delayed_work mbm_over;
-	struct delayed_work cqm_limbo;
-	int mbm_work_cpu;
-	int cqm_work_cpu;
+struct rdt_hw_domain {
+	struct rdt_domain d_resctrl;
 	u32 *ctrl_val;
 	u32 *mbps_val;
-	u32 new_ctrl;
-	bool have_new_ctrl;
-	struct pseudo_lock_region *plr;
-};
-
-struct pseudo_lock_region {
-	struct rdt_resource *r;
-	struct rdt_domain *d;
-	u32 cbm;
-	wait_queue_head_t lock_thread_wq;
-	int thread_done;
-	int cpu;
-	unsigned int line_size;
-	unsigned int size;
-	void *kmem;
-	unsigned int minor;
-	struct dentry *debugfs_dir;
-	struct list_head pm_reqs;
-};
-
-struct mbm_state {
-	u64 chunks;
-	u64 prev_msr;
-	u64 prev_bw_msr;
-	u32 prev_bw;
-	u32 delta_bw;
-	bool delta_comp;
 };
 
 struct msr_param {
 	struct rdt_resource *res;
-	int low;
-	int high;
+	u32 low;
+	u32 high;
 };
 
-struct rdt_parse_data {
-	struct rdtgroup *rdtgrp;
-	char *buf;
+struct rdt_hw_resource {
+	struct rdt_resource r_resctrl;
+	u32 num_closid;
+	unsigned int msr_base;
+	void (*msr_update)(struct rdt_domain *, struct msr_param *, struct rdt_resource *);
+	unsigned int mon_scale;
+	unsigned int mbm_width;
+	bool cdp_enabled;
 };
 
-enum {
+enum resctrl_res_level {
 	RDT_RESOURCE_L3 = 0,
-	RDT_RESOURCE_L3DATA = 1,
-	RDT_RESOURCE_L3CODE = 2,
-	RDT_RESOURCE_L2 = 3,
-	RDT_RESOURCE_L2DATA = 4,
-	RDT_RESOURCE_L2CODE = 5,
-	RDT_RESOURCE_MBA = 6,
-	RDT_NUM_RESOURCES = 7,
+	RDT_RESOURCE_L2 = 1,
+	RDT_RESOURCE_MBA = 2,
+	RDT_NUM_RESOURCES = 3,
 };
 
 union cpuid_0x10_1_eax {
@@ -24781,17 +26247,6 @@ struct rdt_options {
 
 typedef unsigned int uint;
 
-struct __va_list_tag {
-	unsigned int gp_offset;
-	unsigned int fp_offset;
-	void *overflow_arg_area;
-	void *reg_save_area;
-};
-
-typedef __builtin_va_list __gnuc_va_list;
-
-typedef __gnuc_va_list va_list;
-
 enum kernfs_node_type {
 	KERNFS_DIR = 1,
 	KERNFS_FILE = 2,
@@ -24846,7 +26301,7 @@ struct rmid_read {
 struct rftype {
 	char *name;
 	umode_t mode;
-	struct kernfs_ops *kf_ops;
+	const struct kernfs_ops *kf_ops;
 	long unsigned int flags;
 	long unsigned int fflags;
 	int (*seq_show)(struct kernfs_open_file *, struct seq_file *, void *);
@@ -24866,6 +26321,11 @@ struct rmid_entry {
 	struct list_head list;
 };
 
+struct mbm_correction_factor_table {
+	u32 rmidthreshold;
+	u64 cf;
+};
+
 struct trace_event_raw_pseudo_lock_mem_latency {
 	struct trace_entry ent;
 	u32 latency;
@@ -24910,6 +26370,472 @@ struct residency_counts {
 	u64 hits_after;
 };
 
+enum mmu_notifier_event {
+	MMU_NOTIFY_UNMAP = 0,
+	MMU_NOTIFY_CLEAR = 1,
+	MMU_NOTIFY_PROTECTION_VMA = 2,
+	MMU_NOTIFY_PROTECTION_PAGE = 3,
+	MMU_NOTIFY_SOFT_DIRTY = 4,
+	MMU_NOTIFY_RELEASE = 5,
+	MMU_NOTIFY_MIGRATE = 6,
+	MMU_NOTIFY_EXCLUSIVE = 7,
+};
+
+struct mmu_notifier;
+
+struct mmu_notifier_range;
+
+struct mmu_notifier_ops {
+	void (*release)(struct mmu_notifier *, struct mm_struct *);
+	int (*clear_flush_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
+	int (*clear_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
+	int (*test_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int);
+	void (*change_pte)(struct mmu_notifier *, struct mm_struct *, long unsigned int, pte_t);
+	int (*invalidate_range_start)(struct mmu_notifier *, const struct mmu_notifier_range *);
+	void (*invalidate_range_end)(struct mmu_notifier *, const struct mmu_notifier_range *);
+	void (*invalidate_range)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
+	struct mmu_notifier * (*alloc_notifier)(struct mm_struct *);
+	void (*free_notifier)(struct mmu_notifier *);
+};
+
+struct mmu_notifier {
+	struct hlist_node hlist;
+	const struct mmu_notifier_ops *ops;
+	struct mm_struct *mm;
+	struct callback_head rcu;
+	unsigned int users;
+};
+
+struct mmu_notifier_range {
+	struct vm_area_struct *vma;
+	struct mm_struct *mm;
+	long unsigned int start;
+	long unsigned int end;
+	unsigned int flags;
+	enum mmu_notifier_event event;
+	void *owner;
+};
+
+enum sgx_page_type {
+	SGX_PAGE_TYPE_SECS = 0,
+	SGX_PAGE_TYPE_TCS = 1,
+	SGX_PAGE_TYPE_REG = 2,
+	SGX_PAGE_TYPE_VA = 3,
+	SGX_PAGE_TYPE_TRIM = 4,
+};
+
+struct sgx_encl_page;
+
+struct sgx_epc_page {
+	unsigned int section;
+	unsigned int flags;
+	struct sgx_encl_page *owner;
+	struct list_head list;
+};
+
+struct sgx_encl;
+
+struct sgx_va_page;
+
+struct sgx_encl_page {
+	long unsigned int desc;
+	long unsigned int vm_max_prot_bits;
+	struct sgx_epc_page *epc_page;
+	struct sgx_encl *encl;
+	struct sgx_va_page *va_page;
+};
+
+struct sgx_encl {
+	long unsigned int base;
+	long unsigned int size;
+	long unsigned int flags;
+	unsigned int page_cnt;
+	unsigned int secs_child_cnt;
+	struct mutex lock;
+	struct xarray page_array;
+	struct sgx_encl_page secs;
+	long unsigned int attributes;
+	long unsigned int attributes_mask;
+	cpumask_t cpumask;
+	struct file *backing;
+	struct kref refcount;
+	struct list_head va_pages;
+	long unsigned int mm_list_version;
+	struct list_head mm_list;
+	spinlock_t mm_lock;
+	struct srcu_struct srcu;
+};
+
+struct sgx_va_page {
+	struct sgx_epc_page *epc_page;
+	long unsigned int slots[8];
+	struct list_head list;
+};
+
+struct sgx_encl_mm {
+	struct sgx_encl *encl;
+	struct mm_struct *mm;
+	struct list_head list;
+	struct mmu_notifier mmu_notifier;
+};
+
+enum {
+	__PERCPU_REF_ATOMIC = 1,
+	__PERCPU_REF_DEAD = 2,
+	__PERCPU_REF_ATOMIC_DEAD = 3,
+	__PERCPU_REF_FLAG_BITS = 2,
+};
+
+struct xa_node {
+	unsigned char shift;
+	unsigned char offset;
+	unsigned char count;
+	unsigned char nr_values;
+	struct xa_node *parent;
+	struct xarray *array;
+	union {
+		struct list_head private_list;
+		struct callback_head callback_head;
+	};
+	void *slots[64];
+	union {
+		long unsigned int tags[3];
+		long unsigned int marks[3];
+	};
+};
+
+typedef void (*xa_update_node_t)(struct xa_node *);
+
+struct xa_state {
+	struct xarray *xa;
+	long unsigned int xa_index;
+	unsigned char xa_shift;
+	unsigned char xa_sibs;
+	unsigned char xa_offset;
+	unsigned char xa_pad;
+	struct xa_node *xa_node;
+	struct xa_node *xa_alloc;
+	xa_update_node_t xa_update;
+};
+
+enum {
+	XA_CHECK_SCHED = 4096,
+};
+
+enum {
+	CSS_NO_REF = 1,
+	CSS_ONLINE = 2,
+	CSS_RELEASED = 4,
+	CSS_VISIBLE = 8,
+	CSS_DYING = 16,
+};
+
+enum sgx_encls_function {
+	ECREATE = 0,
+	EADD = 1,
+	EINIT = 2,
+	EREMOVE = 3,
+	EDGBRD = 4,
+	EDGBWR = 5,
+	EEXTEND = 6,
+	ELDU = 8,
+	EBLOCK = 9,
+	EPA = 10,
+	EWB = 11,
+	ETRACK = 12,
+	EAUG = 13,
+	EMODPR = 14,
+	EMODT = 15,
+};
+
+struct sgx_pageinfo {
+	u64 addr;
+	u64 contents;
+	u64 metadata;
+	u64 secs;
+};
+
+struct sgx_numa_node {
+	struct list_head free_page_list;
+	spinlock_t lock;
+};
+
+struct sgx_epc_section {
+	long unsigned int phys_addr;
+	void *virt_addr;
+	struct sgx_epc_page *pages;
+	struct sgx_numa_node *node;
+};
+
+enum sgx_encl_flags {
+	SGX_ENCL_IOCTL = 1,
+	SGX_ENCL_DEBUG = 2,
+	SGX_ENCL_CREATED = 4,
+	SGX_ENCL_INITIALIZED = 8,
+};
+
+struct sgx_backing {
+	long unsigned int page_index;
+	struct page *contents;
+	struct page *pcmd;
+	long unsigned int pcmd_offset;
+};
+
+enum sgx_return_code {
+	SGX_NOT_TRACKED = 11,
+	SGX_CHILD_PRESENT = 13,
+	SGX_INVALID_EINITTOKEN = 16,
+	SGX_UNMASKED_EVENT = 128,
+};
+
+enum sgx_attribute {
+	SGX_ATTR_INIT = 1,
+	SGX_ATTR_DEBUG = 2,
+	SGX_ATTR_MODE64BIT = 4,
+	SGX_ATTR_PROVISIONKEY = 16,
+	SGX_ATTR_EINITTOKENKEY = 32,
+	SGX_ATTR_KSS = 128,
+};
+
+struct sgx_secs {
+	u64 size;
+	u64 base;
+	u32 ssa_frame_size;
+	u32 miscselect;
+	u8 reserved1[24];
+	u64 attributes;
+	u64 xfrm;
+	u32 mrenclave[8];
+	u8 reserved2[32];
+	u32 mrsigner[8];
+	u8 reserved3[32];
+	u32 config_id[16];
+	u16 isv_prod_id;
+	u16 isv_svn;
+	u16 config_svn;
+	u8 reserved4[3834];
+};
+
+enum sgx_secinfo_flags {
+	SGX_SECINFO_R = 1,
+	SGX_SECINFO_W = 2,
+	SGX_SECINFO_X = 4,
+	SGX_SECINFO_SECS = 0,
+	SGX_SECINFO_TCS = 256,
+	SGX_SECINFO_REG = 512,
+	SGX_SECINFO_VA = 768,
+	SGX_SECINFO_TRIM = 1024,
+};
+
+struct sgx_secinfo {
+	u64 flags;
+	u8 reserved[56];
+};
+
+struct sgx_sigstruct_header {
+	u64 header1[2];
+	u32 vendor;
+	u32 date;
+	u64 header2[2];
+	u32 swdefined;
+	u8 reserved1[84];
+};
+
+struct sgx_sigstruct_body {
+	u32 miscselect;
+	u32 misc_mask;
+	u8 reserved2[20];
+	u64 attributes;
+	u64 xfrm;
+	u64 attributes_mask;
+	u64 xfrm_mask;
+	u8 mrenclave[32];
+	u8 reserved3[32];
+	u16 isvprodid;
+	u16 isvsvn;
+} __attribute__((packed));
+
+struct sgx_sigstruct {
+	struct sgx_sigstruct_header header;
+	u8 modulus[384];
+	u32 exponent;
+	u8 signature[384];
+	struct sgx_sigstruct_body body;
+	u8 reserved4[12];
+	u8 q1[384];
+	u8 q2[384];
+};
+
+struct crypto_alg;
+
+struct crypto_tfm {
+	u32 crt_flags;
+	int node;
+	void (*exit)(struct crypto_tfm *);
+	struct crypto_alg *__crt_alg;
+	void *__crt_ctx[0];
+};
+
+struct cipher_alg {
+	unsigned int cia_min_keysize;
+	unsigned int cia_max_keysize;
+	int (*cia_setkey)(struct crypto_tfm *, const u8 *, unsigned int);
+	void (*cia_encrypt)(struct crypto_tfm *, u8 *, const u8 *);
+	void (*cia_decrypt)(struct crypto_tfm *, u8 *, const u8 *);
+};
+
+struct compress_alg {
+	int (*coa_compress)(struct crypto_tfm *, const u8 *, unsigned int, u8 *, unsigned int *);
+	int (*coa_decompress)(struct crypto_tfm *, const u8 *, unsigned int, u8 *, unsigned int *);
+};
+
+struct crypto_istat_aead {
+	atomic64_t encrypt_cnt;
+	atomic64_t encrypt_tlen;
+	atomic64_t decrypt_cnt;
+	atomic64_t decrypt_tlen;
+	atomic64_t err_cnt;
+};
+
+struct crypto_istat_akcipher {
+	atomic64_t encrypt_cnt;
+	atomic64_t encrypt_tlen;
+	atomic64_t decrypt_cnt;
+	atomic64_t decrypt_tlen;
+	atomic64_t verify_cnt;
+	atomic64_t sign_cnt;
+	atomic64_t err_cnt;
+};
+
+struct crypto_istat_cipher {
+	atomic64_t encrypt_cnt;
+	atomic64_t encrypt_tlen;
+	atomic64_t decrypt_cnt;
+	atomic64_t decrypt_tlen;
+	atomic64_t err_cnt;
+};
+
+struct crypto_istat_compress {
+	atomic64_t compress_cnt;
+	atomic64_t compress_tlen;
+	atomic64_t decompress_cnt;
+	atomic64_t decompress_tlen;
+	atomic64_t err_cnt;
+};
+
+struct crypto_istat_hash {
+	atomic64_t hash_cnt;
+	atomic64_t hash_tlen;
+	atomic64_t err_cnt;
+};
+
+struct crypto_istat_kpp {
+	atomic64_t setsecret_cnt;
+	atomic64_t generate_public_key_cnt;
+	atomic64_t compute_shared_secret_cnt;
+	atomic64_t err_cnt;
+};
+
+struct crypto_istat_rng {
+	atomic64_t generate_cnt;
+	atomic64_t generate_tlen;
+	atomic64_t seed_cnt;
+	atomic64_t err_cnt;
+};
+
+struct crypto_type;
+
+struct crypto_alg {
+	struct list_head cra_list;
+	struct list_head cra_users;
+	u32 cra_flags;
+	unsigned int cra_blocksize;
+	unsigned int cra_ctxsize;
+	unsigned int cra_alignmask;
+	int cra_priority;
+	refcount_t cra_refcnt;
+	char cra_name[128];
+	char cra_driver_name[128];
+	const struct crypto_type *cra_type;
+	union {
+		struct cipher_alg cipher;
+		struct compress_alg compress;
+	} cra_u;
+	int (*cra_init)(struct crypto_tfm *);
+	void (*cra_exit)(struct crypto_tfm *);
+	void (*cra_destroy)(struct crypto_alg *);
+	struct module *cra_module;
+	union {
+		struct crypto_istat_aead aead;
+		struct crypto_istat_akcipher akcipher;
+		struct crypto_istat_cipher cipher;
+		struct crypto_istat_compress compress;
+		struct crypto_istat_hash hash;
+		struct crypto_istat_rng rng;
+		struct crypto_istat_kpp kpp;
+	} stats;
+};
+
+struct crypto_instance;
+
+struct crypto_type {
+	unsigned int (*ctxsize)(struct crypto_alg *, u32, u32);
+	unsigned int (*extsize)(struct crypto_alg *);
+	int (*init)(struct crypto_tfm *, u32, u32);
+	int (*init_tfm)(struct crypto_tfm *);
+	void (*show)(struct seq_file *, struct crypto_alg *);
+	int (*report)(struct sk_buff *, struct crypto_alg *);
+	void (*free)(struct crypto_instance *);
+	unsigned int type;
+	unsigned int maskclear;
+	unsigned int maskset;
+	unsigned int tfmsize;
+};
+
+struct crypto_shash;
+
+struct shash_desc {
+	struct crypto_shash *tfm;
+	void *__ctx[0];
+};
+
+struct crypto_shash {
+	unsigned int descsize;
+	struct crypto_tfm base;
+};
+
+enum sgx_page_flags {
+	SGX_PAGE_MEASURE = 1,
+};
+
+struct sgx_enclave_create {
+	__u64 src;
+};
+
+struct sgx_enclave_add_pages {
+	__u64 src;
+	__u64 offset;
+	__u64 length;
+	__u64 secinfo;
+	__u64 flags;
+	__u64 count;
+};
+
+struct sgx_enclave_init {
+	__u64 sigstruct;
+};
+
+struct sgx_enclave_provision {
+	__u64 fd;
+};
+
+typedef unsigned int xa_mark_t;
+
+struct sgx_vepc {
+	struct xarray page_array;
+	struct mutex lock;
+};
+
 struct vmcb_seg {
 	u16 selector;
 	u16 attrib;
@@ -24932,7 +26858,8 @@ struct vmcb_save_area {
 	u8 cpl;
 	u8 reserved_2[4];
 	u64 efer;
-	u8 reserved_3[112];
+	u8 reserved_3[104];
+	u64 xss;
 	u64 cr4;
 	u64 cr3;
 	u64 cr0;
@@ -24960,7 +26887,11 @@ struct vmcb_save_area {
 	u64 br_to;
 	u64 last_excp_from;
 	u64 last_excp_to;
-	u8 reserved_7[104];
+	u8 reserved_7[72];
+	u32 spec_ctrl;
+	u8 reserved_7b[4];
+	u32 pkru;
+	u8 reserved_7a[20];
 	u64 reserved_8;
 	u64 rcx;
 	u64 rdx;
@@ -25035,14 +26966,68 @@ enum mp_irq_source_types {
 	mp_ExtINT = 3,
 };
 
+enum mp_bustype {
+	MP_BUS_ISA = 1,
+	MP_BUS_EISA = 2,
+	MP_BUS_PCI = 3,
+};
+
+typedef u64 acpi_io_address;
+
 typedef u64 acpi_physical_address;
 
-typedef u32 acpi_status;
+typedef char *acpi_string;
 
 typedef void *acpi_handle;
 
+typedef u32 acpi_object_type;
+
 typedef u8 acpi_adr_space_type;
 
+union acpi_object {
+	acpi_object_type type;
+	struct {
+		acpi_object_type type;
+		u64 value;
+	} integer;
+	struct {
+		acpi_object_type type;
+		u32 length;
+		char *pointer;
+	} string;
+	struct {
+		acpi_object_type type;
+		u32 length;
+		u8 *pointer;
+	} buffer;
+	struct {
+		acpi_object_type type;
+		u32 count;
+		union acpi_object *elements;
+	} package;
+	struct {
+		acpi_object_type type;
+		acpi_object_type actual_type;
+		acpi_handle handle;
+	} reference;
+	struct {
+		acpi_object_type type;
+		u32 proc_id;
+		acpi_io_address pblk_address;
+		u32 pblk_length;
+	} processor;
+	struct {
+		acpi_object_type type;
+		u32 system_level;
+		u32 resource_order;
+	} power_resource;
+};
+
+struct acpi_object_list {
+	u32 count;
+	union acpi_object *pointer;
+};
+
 struct acpi_subtable_header {
 	u8 type;
 	u8 length;
@@ -25092,7 +27077,8 @@ enum acpi_madt_type {
 	ACPI_MADT_TYPE_GENERIC_MSI_FRAME = 13,
 	ACPI_MADT_TYPE_GENERIC_REDISTRIBUTOR = 14,
 	ACPI_MADT_TYPE_GENERIC_TRANSLATOR = 15,
-	ACPI_MADT_TYPE_RESERVED = 16,
+	ACPI_MADT_TYPE_MULTIPROC_WAKEUP = 16,
+	ACPI_MADT_TYPE_RESERVED = 17,
 };
 
 struct acpi_madt_local_apic {
@@ -25164,11 +27150,19 @@ struct acpi_madt_local_x2apic_nmi {
 	u8 reserved[3];
 };
 
+struct acpi_prmt_module_header {
+	u16 revision;
+	u16 length;
+};
+
 union acpi_subtable_headers {
 	struct acpi_subtable_header common;
 	struct acpi_hmat_structure hmat;
+	struct acpi_prmt_module_header prmt;
 };
 
+typedef int (*acpi_tbl_table_handler)(struct acpi_table_header *);
+
 typedef int (*acpi_tbl_entry_handler)(union acpi_subtable_headers *, const long unsigned int);
 
 struct acpi_subtable_proc {
@@ -25179,63 +27173,6 @@ struct acpi_subtable_proc {
 
 typedef u32 phys_cpuid_t;
 
-enum irq_alloc_type {
-	X86_IRQ_ALLOC_TYPE_IOAPIC = 1,
-	X86_IRQ_ALLOC_TYPE_HPET = 2,
-	X86_IRQ_ALLOC_TYPE_PCI_MSI = 3,
-	X86_IRQ_ALLOC_TYPE_PCI_MSIX = 4,
-	X86_IRQ_ALLOC_TYPE_DMAR = 5,
-	X86_IRQ_ALLOC_TYPE_UV = 6,
-	X86_IRQ_ALLOC_TYPE_IOAPIC_GET_PARENT = 7,
-	X86_IRQ_ALLOC_TYPE_HPET_GET_PARENT = 8,
-};
-
-struct IO_APIC_route_entry;
-
-struct ioapic_alloc_info {
-	int pin;
-	int node;
-	u32 trigger: 1;
-	u32 polarity: 1;
-	u32 valid: 1;
-	struct IO_APIC_route_entry *entry;
-};
-
-struct IO_APIC_route_entry {
-	__u32 vector: 8;
-	__u32 delivery_mode: 3;
-	__u32 dest_mode: 1;
-	__u32 delivery_status: 1;
-	__u32 polarity: 1;
-	__u32 irr: 1;
-	__u32 trigger: 1;
-	__u32 mask: 1;
-	__u32 __reserved_2: 15;
-	__u32 __reserved_3: 24;
-	__u32 dest: 8;
-};
-
-struct uv_alloc_info {
-	int limit;
-	int blade;
-	long unsigned int offset;
-	char *name;
-};
-
-struct irq_alloc_info {
-	enum irq_alloc_type type;
-	u32 flags;
-	u32 devid;
-	irq_hw_number_t hwirq;
-	const struct cpumask *mask;
-	struct msi_desc *desc;
-	void *data;
-	union {
-		struct ioapic_alloc_info ioapic;
-		struct uv_alloc_info uv;
-	};
-};
-
 struct serial_icounter_struct {
 	int cts;
 	int dsr;
@@ -25438,19 +27375,21 @@ enum {
 	SD_BALANCE_WAKE = 8,
 	SD_WAKE_AFFINE = 16,
 	SD_ASYM_CPUCAPACITY = 32,
-	SD_SHARE_CPUCAPACITY = 64,
-	SD_SHARE_PKG_RESOURCES = 128,
-	SD_SERIALIZE = 256,
-	SD_ASYM_PACKING = 512,
-	SD_PREFER_SIBLING = 1024,
-	SD_OVERLAP = 2048,
-	SD_NUMA = 4096,
+	SD_ASYM_CPUCAPACITY_FULL = 64,
+	SD_SHARE_CPUCAPACITY = 128,
+	SD_SHARE_PKG_RESOURCES = 256,
+	SD_SERIALIZE = 512,
+	SD_ASYM_PACKING = 1024,
+	SD_PREFER_SIBLING = 2048,
+	SD_OVERLAP = 4096,
+	SD_NUMA = 8192,
 };
 
 struct sched_domain_shared {
 	atomic_t ref;
 	atomic_t nr_busy_cpus;
 	int has_idle_cores;
+	int nr_idle_scan;
 };
 
 struct sched_group;
@@ -25505,7 +27444,7 @@ struct sched_domain {
 
 typedef const struct cpumask * (*sched_domain_mask_f)(int);
 
-typedef int (*sched_domain_flags_f)();
+typedef int (*sched_domain_flags_f)(void);
 
 struct sched_group_capacity;
 
@@ -25533,6 +27472,21 @@ enum apic_intr_mode_id {
 	APIC_SYMMETRIC_IO_NO_ROUTING = 4,
 };
 
+struct cppc_perf_caps {
+	u32 guaranteed_perf;
+	u32 highest_perf;
+	u32 nominal_perf;
+	u32 lowest_perf;
+	u32 lowest_nonlinear_perf;
+	u32 lowest_freq;
+	u32 nominal_freq;
+};
+
+struct mwait_cpu_dead {
+	unsigned int control;
+	unsigned int status;
+};
+
 struct tsc_adjust {
 	s64 bootval;
 	s64 adjusted;
@@ -25540,6 +27494,14 @@ struct tsc_adjust {
 	bool warned;
 };
 
+typedef void * (*pcpu_fc_alloc_fn_t)(unsigned int, size_t, size_t);
+
+typedef void (*pcpu_fc_free_fn_t)(void *, size_t);
+
+typedef void (*pcpu_fc_populate_pte_fn_t)(long unsigned int);
+
+typedef int pcpu_fc_cpu_distance_fn_t(unsigned int, unsigned int);
+
 enum {
 	DUMP_PREFIX_NONE = 0,
 	DUMP_PREFIX_ADDRESS = 1,
@@ -25633,17 +27595,6 @@ enum {
 	X2APIC_DISABLED = 2,
 };
 
-enum ioapic_irq_destination_types {
-	dest_Fixed = 0,
-	dest_LowestPrio = 1,
-	dest_SMI = 2,
-	dest__reserved_1 = 3,
-	dest_NMI = 4,
-	dest_INIT = 5,
-	dest__reserved_2 = 6,
-	dest_ExtINT = 7,
-};
-
 enum {
 	IRQ_SET_MASK_OK = 0,
 	IRQ_SET_MASK_OK_NOCOPY = 1,
@@ -25677,17 +27628,6 @@ enum {
 	IRQD_IRQ_ENABLED_ON_SUSPEND = 1073741824,
 };
 
-struct irq_cfg {
-	unsigned int dest_apicid;
-	unsigned int vector;
-};
-
-enum {
-	IRQCHIP_FWNODE_REAL = 0,
-	IRQCHIP_FWNODE_NAMED = 1,
-	IRQCHIP_FWNODE_NAMED_ID = 2,
-};
-
 enum {
 	X86_IRQ_ALLOC_CONTIGUOUS_VECTORS = 1,
 	X86_IRQ_ALLOC_LEGACY = 2,
@@ -25707,50 +27647,6 @@ struct apic_chip_data {
 	unsigned int has_reserved: 1;
 };
 
-struct irq_matrix;
-
-enum {
-	IRQ_TYPE_NONE = 0,
-	IRQ_TYPE_EDGE_RISING = 1,
-	IRQ_TYPE_EDGE_FALLING = 2,
-	IRQ_TYPE_EDGE_BOTH = 3,
-	IRQ_TYPE_LEVEL_HIGH = 4,
-	IRQ_TYPE_LEVEL_LOW = 8,
-	IRQ_TYPE_LEVEL_MASK = 12,
-	IRQ_TYPE_SENSE_MASK = 15,
-	IRQ_TYPE_DEFAULT = 15,
-	IRQ_TYPE_PROBE = 16,
-	IRQ_LEVEL = 256,
-	IRQ_PER_CPU = 512,
-	IRQ_NOPROBE = 1024,
-	IRQ_NOREQUEST = 2048,
-	IRQ_NOAUTOEN = 4096,
-	IRQ_NO_BALANCING = 8192,
-	IRQ_MOVE_PCNTXT = 16384,
-	IRQ_NESTED_THREAD = 32768,
-	IRQ_NOTHREAD = 65536,
-	IRQ_PER_CPU_DEVID = 131072,
-	IRQ_IS_POLLED = 262144,
-	IRQ_DISABLE_UNLAZY = 524288,
-	IRQ_HIDDEN = 1048576,
-};
-
-enum {
-	IRQCHIP_SET_TYPE_MASKED = 1,
-	IRQCHIP_EOI_IF_HANDLED = 2,
-	IRQCHIP_MASK_ON_SUSPEND = 4,
-	IRQCHIP_ONOFFLINE_ENABLED = 8,
-	IRQCHIP_SKIP_SET_WAKE = 16,
-	IRQCHIP_ONESHOT_SAFE = 32,
-	IRQCHIP_EOI_THREADED = 64,
-	IRQCHIP_SUPPORTS_LEVEL_MSI = 128,
-	IRQCHIP_SUPPORTS_NMI = 256,
-	IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND = 512,
-	IRQCHIP_AFFINITY_PRE_STARTUP = 1024,
-};
-
-struct clock_event_device;
-
 union IO_APIC_reg_00 {
 	u32 raw;
 	struct {
@@ -25790,18 +27686,36 @@ union IO_APIC_reg_03 {
 	} bits;
 };
 
-struct IR_IO_APIC_route_entry {
-	__u64 vector: 8;
-	__u64 zero: 3;
-	__u64 index2: 1;
-	__u64 delivery_status: 1;
-	__u64 polarity: 1;
-	__u64 irr: 1;
-	__u64 trigger: 1;
-	__u64 mask: 1;
-	__u64 reserved: 31;
-	__u64 format: 1;
-	__u64 index: 15;
+struct IO_APIC_route_entry {
+	union {
+		struct {
+			u64 vector: 8;
+			u64 delivery_mode: 3;
+			u64 dest_mode_logical: 1;
+			u64 delivery_status: 1;
+			u64 active_low: 1;
+			u64 irr: 1;
+			u64 is_level: 1;
+			u64 masked: 1;
+			u64 reserved_0: 15;
+			u64 reserved_1: 17;
+			u64 virt_destid_8_14: 7;
+			u64 destid_0_7: 8;
+		};
+		struct {
+			u64 ir_shared_0: 8;
+			u64 ir_zero: 3;
+			u64 ir_index_15: 1;
+			u64 ir_shared_1: 5;
+			u64 ir_reserved_0: 31;
+			u64 ir_format: 1;
+			u64 ir_index_0_14: 15;
+		};
+		struct {
+			u64 w1: 32;
+			u64 w2: 32;
+		};
+	};
 };
 
 struct irq_pin_list {
@@ -25813,10 +27727,10 @@ struct irq_pin_list {
 struct mp_chip_data {
 	struct list_head irq_2_pin;
 	struct IO_APIC_route_entry entry;
-	int trigger;
-	int polarity;
-	u32 count;
+	bool is_level;
+	bool active_low;
 	bool isa_irq;
+	u32 count;
 };
 
 struct mp_ioapic_gsi {
@@ -25842,14 +27756,6 @@ struct io_apic {
 	unsigned int eoi;
 };
 
-union entry_union {
-	struct {
-		u32 w1;
-		u32 w2;
-	};
-	struct IO_APIC_route_entry entry;
-};
-
 enum {
 	IRQ_DOMAIN_FLAG_HIERARCHY = 1,
 	IRQ_DOMAIN_NAME_ALLOCATED = 2,
@@ -25858,48 +27764,1031 @@ enum {
 	IRQ_DOMAIN_FLAG_MSI = 16,
 	IRQ_DOMAIN_FLAG_MSI_REMAP = 32,
 	IRQ_DOMAIN_MSI_NOMASK_QUIRK = 64,
+	IRQ_DOMAIN_FLAG_NO_MAP = 128,
 	IRQ_DOMAIN_FLAG_NONCORE = 65536,
 };
 
-typedef struct irq_alloc_info msi_alloc_info_t;
+typedef int (*arch_set_vga_state_t)(struct pci_dev *, bool, unsigned int, u32);
 
-struct msi_domain_info;
-
-struct msi_domain_ops {
-	irq_hw_number_t (*get_hwirq)(struct msi_domain_info *, msi_alloc_info_t *);
-	int (*msi_init)(struct irq_domain *, struct msi_domain_info *, unsigned int, irq_hw_number_t, msi_alloc_info_t *);
-	void (*msi_free)(struct irq_domain *, struct msi_domain_info *, unsigned int);
-	int (*msi_check)(struct irq_domain *, struct msi_domain_info *, struct device *);
-	int (*msi_prepare)(struct irq_domain *, struct device *, int, msi_alloc_info_t *);
-	void (*msi_finish)(msi_alloc_info_t *, int);
-	void (*set_desc)(msi_alloc_info_t *, struct msi_desc *);
-	int (*handle_error)(struct irq_domain *, struct msi_desc *, int);
-	int (*domain_alloc_irqs)(struct irq_domain *, struct device *, int);
-	void (*domain_free_irqs)(struct irq_domain *, struct device *);
+struct acpi_device_status {
+	u32 present: 1;
+	u32 enabled: 1;
+	u32 show_in_ui: 1;
+	u32 functional: 1;
+	u32 battery_present: 1;
+	u32 reserved: 27;
 };
 
-struct msi_domain_info {
-	u32 flags;
-	struct msi_domain_ops *ops;
-	struct irq_chip *chip;
-	void *chip_data;
-	irq_flow_handler_t handler;
-	void *handler_data;
-	const char *handler_name;
-	void *data;
+struct acpi_device_flags {
+	u32 dynamic_status: 1;
+	u32 removable: 1;
+	u32 ejectable: 1;
+	u32 power_manageable: 1;
+	u32 match_driver: 1;
+	u32 initialized: 1;
+	u32 visited: 1;
+	u32 hotplug_notify: 1;
+	u32 is_dock_station: 1;
+	u32 of_compatible_ok: 1;
+	u32 coherent_dma: 1;
+	u32 cca_seen: 1;
+	u32 enumeration_by_parent: 1;
+	u32 reserved: 19;
+};
+
+typedef char acpi_bus_id[8];
+
+struct acpi_pnp_type {
+	u32 hardware_id: 1;
+	u32 bus_address: 1;
+	u32 platform_id: 1;
+	u32 reserved: 29;
+};
+
+typedef u64 acpi_bus_address;
+
+typedef char acpi_device_name[40];
+
+typedef char acpi_device_class[20];
+
+struct acpi_device_pnp {
+	acpi_bus_id bus_id;
+	int instance_no;
+	struct acpi_pnp_type type;
+	acpi_bus_address bus_address;
+	char *unique_id;
+	struct list_head ids;
+	acpi_device_name device_name;
+	acpi_device_class device_class;
+	union acpi_object *str_obj;
+};
+
+struct acpi_device_power_flags {
+	u32 explicit_get: 1;
+	u32 power_resources: 1;
+	u32 inrush_current: 1;
+	u32 power_removed: 1;
+	u32 ignore_parent: 1;
+	u32 dsw_present: 1;
+	u32 reserved: 26;
+};
+
+struct acpi_device_power_state {
+	struct {
+		u8 valid: 1;
+		u8 explicit_set: 1;
+		u8 reserved: 6;
+	} flags;
+	int power;
+	int latency;
+	struct list_head resources;
+};
+
+struct acpi_device_power {
+	int state;
+	struct acpi_device_power_flags flags;
+	struct acpi_device_power_state states[5];
+};
+
+struct acpi_device_wakeup_flags {
+	u8 valid: 1;
+	u8 notifier_present: 1;
+};
+
+struct acpi_device_wakeup_context {
+	void (*func)(struct acpi_device_wakeup_context *);
+	struct device *dev;
+};
+
+struct acpi_device_wakeup {
+	acpi_handle gpe_device;
+	u64 gpe_number;
+	u64 sleep_state;
+	struct list_head resources;
+	struct acpi_device_wakeup_flags flags;
+	struct acpi_device_wakeup_context context;
+	struct wakeup_source *ws;
+	int prepare_count;
+	int enable_count;
+};
+
+struct acpi_device_perf_flags {
+	u8 reserved: 8;
+};
+
+struct acpi_device_perf_state;
+
+struct acpi_device_perf {
+	int state;
+	struct acpi_device_perf_flags flags;
+	int state_count;
+	struct acpi_device_perf_state *states;
+};
+
+struct acpi_device_dir {
+	struct proc_dir_entry *entry;
+};
+
+struct acpi_device_data {
+	const union acpi_object *pointer;
+	struct list_head properties;
+	const union acpi_object *of_compatible;
+	struct list_head subnodes;
+};
+
+struct acpi_scan_handler;
+
+struct acpi_hotplug_context;
+
+struct acpi_driver;
+
+struct acpi_gpio_mapping;
+
+struct acpi_device {
+	int device_type;
+	acpi_handle handle;
+	struct fwnode_handle fwnode;
+	struct acpi_device *parent;
+	struct list_head children;
+	struct list_head node;
+	struct list_head wakeup_list;
+	struct list_head del_list;
+	struct acpi_device_status status;
+	struct acpi_device_flags flags;
+	struct acpi_device_pnp pnp;
+	struct acpi_device_power power;
+	struct acpi_device_wakeup wakeup;
+	struct acpi_device_perf performance;
+	struct acpi_device_dir dir;
+	struct acpi_device_data data;
+	struct acpi_scan_handler *handler;
+	struct acpi_hotplug_context *hp;
+	struct acpi_driver *driver;
+	const struct acpi_gpio_mapping *driver_gpios;
+	void *driver_data;
+	struct device dev;
+	unsigned int physical_node_count;
+	unsigned int dep_unmet;
+	struct list_head physical_node_list;
+	struct mutex physical_node_lock;
+	void (*remove)(struct acpi_device *);
+};
+
+struct acpi_hotplug_profile {
+	struct kobject kobj;
+	int (*scan_dependent)(struct acpi_device *);
+	void (*notify_online)(struct acpi_device *);
+	bool enabled: 1;
+	bool demand_offline: 1;
+};
+
+struct acpi_scan_handler {
+	const struct acpi_device_id *ids;
+	struct list_head list_node;
+	bool (*match)(const char *, const struct acpi_device_id **);
+	int (*attach)(struct acpi_device *, const struct acpi_device_id *);
+	void (*detach)(struct acpi_device *);
+	void (*bind)(struct device *);
+	void (*unbind)(struct device *);
+	struct acpi_hotplug_profile hotplug;
+};
+
+struct acpi_hotplug_context {
+	struct acpi_device *self;
+	int (*notify)(struct acpi_device *, u32);
+	void (*uevent)(struct acpi_device *, u32);
+	void (*fixup)(struct acpi_device *);
+};
+
+typedef int (*acpi_op_add)(struct acpi_device *);
+
+typedef int (*acpi_op_remove)(struct acpi_device *);
+
+typedef void (*acpi_op_notify)(struct acpi_device *, u32);
+
+struct acpi_device_ops {
+	acpi_op_add add;
+	acpi_op_remove remove;
+	acpi_op_notify notify;
+};
+
+struct acpi_driver {
+	char name[80];
+	char class[80];
+	const struct acpi_device_id *ids;
+	unsigned int flags;
+	struct acpi_device_ops ops;
+	struct device_driver drv;
+	struct module *owner;
+};
+
+struct acpi_device_perf_state {
+	struct {
+		u8 valid: 1;
+		u8 reserved: 7;
+	} flags;
+	u8 power;
+	u8 performance;
+	int latency;
+};
+
+struct acpi_gpio_params;
+
+struct acpi_gpio_mapping {
+	const char *name;
+	const struct acpi_gpio_params *data;
+	unsigned int size;
+	unsigned int quirks;
+};
+
+struct acpi_gpio_params {
+	unsigned int crs_entry_index;
+	unsigned int line_index;
+	bool active_low;
+};
+
+struct uvyh_gr0_gam_gr_config_s {
+	long unsigned int rsvd_0_9: 10;
+	long unsigned int subspace: 1;
+	long unsigned int rsvd_11_63: 53;
+};
+
+struct uv5h_gr0_gam_gr_config_s {
+	long unsigned int rsvd_0_9: 10;
+	long unsigned int subspace: 1;
+	long unsigned int rsvd_11_63: 53;
+};
+
+struct uv4h_gr0_gam_gr_config_s {
+	long unsigned int rsvd_0_9: 10;
+	long unsigned int subspace: 1;
+	long unsigned int rsvd_11_63: 53;
+};
+
+struct uv3h_gr0_gam_gr_config_s {
+	long unsigned int m_skt: 6;
+	long unsigned int undef_6_9: 4;
+	long unsigned int subspace: 1;
+	long unsigned int reserved: 53;
+};
+
+struct uv2h_gr0_gam_gr_config_s {
+	long unsigned int n_gr: 4;
+	long unsigned int reserved: 60;
+};
+
+union uvyh_gr0_gam_gr_config_u {
+	long unsigned int v;
+	struct uvyh_gr0_gam_gr_config_s sy;
+	struct uv5h_gr0_gam_gr_config_s s5;
+	struct uv4h_gr0_gam_gr_config_s s4;
+	struct uv3h_gr0_gam_gr_config_s s3;
+	struct uv2h_gr0_gam_gr_config_s s2;
+};
+
+struct uvh_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int rsvd_32_63: 32;
+};
+
+struct uvxh_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int node_id: 15;
+	long unsigned int rsvd_47_49: 3;
+	long unsigned int nodes_per_bit: 7;
+	long unsigned int ni_port: 5;
+	long unsigned int rsvd_62_63: 2;
+};
+
+struct uvyh_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int node_id: 7;
+	long unsigned int rsvd_39_56: 18;
+	long unsigned int ni_port: 6;
+	long unsigned int rsvd_63: 1;
+};
+
+struct uv5h_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int node_id: 7;
+	long unsigned int rsvd_39_56: 18;
+	long unsigned int ni_port: 6;
+	long unsigned int rsvd_63: 1;
+};
+
+struct uv4h_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int node_id: 15;
+	long unsigned int rsvd_47: 1;
+	long unsigned int router_select: 1;
+	long unsigned int rsvd_49: 1;
+	long unsigned int nodes_per_bit: 7;
+	long unsigned int ni_port: 5;
+	long unsigned int rsvd_62_63: 2;
+};
+
+struct uv3h_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int node_id: 15;
+	long unsigned int rsvd_47: 1;
+	long unsigned int router_select: 1;
+	long unsigned int rsvd_49: 1;
+	long unsigned int nodes_per_bit: 7;
+	long unsigned int ni_port: 5;
+	long unsigned int rsvd_62_63: 2;
+};
+
+struct uv2h_node_id_s {
+	long unsigned int force1: 1;
+	long unsigned int manufacturer: 11;
+	long unsigned int part_number: 16;
+	long unsigned int revision: 4;
+	long unsigned int node_id: 15;
+	long unsigned int rsvd_47_49: 3;
+	long unsigned int nodes_per_bit: 7;
+	long unsigned int ni_port: 5;
+	long unsigned int rsvd_62_63: 2;
+};
+
+union uvh_node_id_u {
+	long unsigned int v;
+	struct uvh_node_id_s s;
+	struct uvxh_node_id_s sx;
+	struct uvyh_node_id_s sy;
+	struct uv5h_node_id_s s5;
+	struct uv4h_node_id_s s4;
+	struct uv3h_node_id_s s3;
+	struct uv2h_node_id_s s2;
+};
+
+struct uvh_rh10_gam_addr_map_config_s {
+	long unsigned int undef_0_5: 6;
+	long unsigned int n_skt: 3;
+	long unsigned int undef_9_11: 3;
+	long unsigned int ls_enable: 1;
+	long unsigned int undef_13_15: 3;
+	long unsigned int mk_tme_keyid_bits: 4;
+	long unsigned int rsvd_20_63: 44;
+};
+
+struct uvyh_rh10_gam_addr_map_config_s {
+	long unsigned int undef_0_5: 6;
+	long unsigned int n_skt: 3;
+	long unsigned int undef_9_11: 3;
+	long unsigned int ls_enable: 1;
+	long unsigned int undef_13_15: 3;
+	long unsigned int mk_tme_keyid_bits: 4;
+	long unsigned int rsvd_20_63: 44;
+};
+
+struct uv5h_rh10_gam_addr_map_config_s {
+	long unsigned int undef_0_5: 6;
+	long unsigned int n_skt: 3;
+	long unsigned int undef_9_11: 3;
+	long unsigned int ls_enable: 1;
+	long unsigned int undef_13_15: 3;
+	long unsigned int mk_tme_keyid_bits: 4;
+};
+
+union uvh_rh10_gam_addr_map_config_u {
+	long unsigned int v;
+	struct uvh_rh10_gam_addr_map_config_s s;
+	struct uvyh_rh10_gam_addr_map_config_s sy;
+	struct uv5h_rh10_gam_addr_map_config_s s5;
+};
+
+struct uvh_rh10_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+struct uvyh_rh10_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+struct uv5h_rh10_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh10_gam_mmioh_overlay_config0_u {
+	long unsigned int v;
+	struct uvh_rh10_gam_mmioh_overlay_config0_s s;
+	struct uvyh_rh10_gam_mmioh_overlay_config0_s sy;
+	struct uv5h_rh10_gam_mmioh_overlay_config0_s s5;
+};
+
+struct uvh_rh10_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+struct uvyh_rh10_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+struct uv5h_rh10_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh10_gam_mmioh_overlay_config1_u {
+	long unsigned int v;
+	struct uvh_rh10_gam_mmioh_overlay_config1_s s;
+	struct uvyh_rh10_gam_mmioh_overlay_config1_s sy;
+	struct uv5h_rh10_gam_mmioh_overlay_config1_s s5;
+};
+
+struct uvh_rh10_gam_mmr_overlay_config_s {
+	long unsigned int undef_0_24: 25;
+	long unsigned int base: 27;
+	long unsigned int undef_52_62: 11;
+	long unsigned int enable: 1;
+};
+
+struct uvyh_rh10_gam_mmr_overlay_config_s {
+	long unsigned int undef_0_24: 25;
+	long unsigned int base: 27;
+	long unsigned int undef_52_62: 11;
+	long unsigned int enable: 1;
+};
+
+struct uv5h_rh10_gam_mmr_overlay_config_s {
+	long unsigned int undef_0_24: 25;
+	long unsigned int base: 27;
+	long unsigned int undef_52_62: 11;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh10_gam_mmr_overlay_config_u {
+	long unsigned int v;
+	struct uvh_rh10_gam_mmr_overlay_config_s s;
+	struct uvyh_rh10_gam_mmr_overlay_config_s sy;
+	struct uv5h_rh10_gam_mmr_overlay_config_s s5;
+};
+
+struct uvh_rh_gam_addr_map_config_s {
+	long unsigned int rsvd_0_5: 6;
+	long unsigned int n_skt: 4;
+	long unsigned int rsvd_10_63: 54;
+};
+
+struct uvxh_rh_gam_addr_map_config_s {
+	long unsigned int rsvd_0_5: 6;
+	long unsigned int n_skt: 4;
+	long unsigned int rsvd_10_63: 54;
+};
+
+struct uv4h_rh_gam_addr_map_config_s {
+	long unsigned int rsvd_0_5: 6;
+	long unsigned int n_skt: 4;
+	long unsigned int rsvd_10_63: 54;
+};
+
+struct uv3h_rh_gam_addr_map_config_s {
+	long unsigned int m_skt: 6;
+	long unsigned int n_skt: 4;
+	long unsigned int rsvd_10_63: 54;
+};
+
+struct uv2h_rh_gam_addr_map_config_s {
+	long unsigned int m_skt: 6;
+	long unsigned int n_skt: 4;
+	long unsigned int rsvd_10_63: 54;
+};
+
+union uvh_rh_gam_addr_map_config_u {
+	long unsigned int v;
+	struct uvh_rh_gam_addr_map_config_s s;
+	struct uvxh_rh_gam_addr_map_config_s sx;
+	struct uv4h_rh_gam_addr_map_config_s s4;
+	struct uv3h_rh_gam_addr_map_config_s s3;
+	struct uv2h_rh_gam_addr_map_config_s s2;
+};
+
+struct uvh_rh_gam_alias_2_overlay_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int base: 8;
+	long unsigned int rsvd_32_47: 16;
+	long unsigned int m_alias: 5;
+	long unsigned int rsvd_53_62: 10;
+	long unsigned int enable: 1;
+};
+
+struct uvxh_rh_gam_alias_2_overlay_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int base: 8;
+	long unsigned int rsvd_32_47: 16;
+	long unsigned int m_alias: 5;
+	long unsigned int rsvd_53_62: 10;
+	long unsigned int enable: 1;
+};
+
+struct uv4h_rh_gam_alias_2_overlay_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int base: 8;
+	long unsigned int rsvd_32_47: 16;
+	long unsigned int m_alias: 5;
+	long unsigned int rsvd_53_62: 10;
+	long unsigned int enable: 1;
+};
+
+struct uv3h_rh_gam_alias_2_overlay_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int base: 8;
+	long unsigned int rsvd_32_47: 16;
+	long unsigned int m_alias: 5;
+	long unsigned int rsvd_53_62: 10;
+	long unsigned int enable: 1;
+};
+
+struct uv2h_rh_gam_alias_2_overlay_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int base: 8;
+	long unsigned int rsvd_32_47: 16;
+	long unsigned int m_alias: 5;
+	long unsigned int rsvd_53_62: 10;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh_gam_alias_2_overlay_config_u {
+	long unsigned int v;
+	struct uvh_rh_gam_alias_2_overlay_config_s s;
+	struct uvxh_rh_gam_alias_2_overlay_config_s sx;
+	struct uv4h_rh_gam_alias_2_overlay_config_s s4;
+	struct uv3h_rh_gam_alias_2_overlay_config_s s3;
+	struct uv2h_rh_gam_alias_2_overlay_config_s s2;
+};
+
+struct uvh_rh_gam_alias_2_redirect_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int dest_base: 22;
+	long unsigned int rsvd_46_63: 18;
+};
+
+struct uvxh_rh_gam_alias_2_redirect_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int dest_base: 22;
+	long unsigned int rsvd_46_63: 18;
+};
+
+struct uv4h_rh_gam_alias_2_redirect_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int dest_base: 22;
+	long unsigned int rsvd_46_63: 18;
+};
+
+struct uv3h_rh_gam_alias_2_redirect_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int dest_base: 22;
+	long unsigned int rsvd_46_63: 18;
+};
+
+struct uv2h_rh_gam_alias_2_redirect_config_s {
+	long unsigned int rsvd_0_23: 24;
+	long unsigned int dest_base: 22;
+	long unsigned int rsvd_46_63: 18;
+};
+
+union uvh_rh_gam_alias_2_redirect_config_u {
+	long unsigned int v;
+	struct uvh_rh_gam_alias_2_redirect_config_s s;
+	struct uvxh_rh_gam_alias_2_redirect_config_s sx;
+	struct uv4h_rh_gam_alias_2_redirect_config_s s4;
+	struct uv3h_rh_gam_alias_2_redirect_config_s s3;
+	struct uv2h_rh_gam_alias_2_redirect_config_s s2;
+};
+
+struct uvh_rh_gam_gru_overlay_config_s {
+	long unsigned int rsvd_0_45: 46;
+	long unsigned int rsvd_46_51: 6;
+	long unsigned int n_gru: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uvxh_rh_gam_gru_overlay_config_s {
+	long unsigned int rsvd_0_45: 46;
+	long unsigned int rsvd_46_51: 6;
+	long unsigned int n_gru: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv4ah_rh_gam_gru_overlay_config_s {
+	long unsigned int rsvd_0_24: 25;
+	long unsigned int undef_25: 1;
+	long unsigned int base: 26;
+	long unsigned int n_gru: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv4h_rh_gam_gru_overlay_config_s {
+	long unsigned int rsvd_0_24: 25;
+	long unsigned int undef_25: 1;
+	long unsigned int base: 20;
+	long unsigned int rsvd_46_51: 6;
+	long unsigned int n_gru: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv3h_rh_gam_gru_overlay_config_s {
+	long unsigned int rsvd_0_27: 28;
+	long unsigned int base: 18;
+	long unsigned int rsvd_46_51: 6;
+	long unsigned int n_gru: 4;
+	long unsigned int rsvd_56_61: 6;
+	long unsigned int mode: 1;
+	long unsigned int enable: 1;
+};
+
+struct uv2h_rh_gam_gru_overlay_config_s {
+	long unsigned int rsvd_0_27: 28;
+	long unsigned int base: 18;
+	long unsigned int rsvd_46_51: 6;
+	long unsigned int n_gru: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh_gam_gru_overlay_config_u {
+	long unsigned int v;
+	struct uvh_rh_gam_gru_overlay_config_s s;
+	struct uvxh_rh_gam_gru_overlay_config_s sx;
+	struct uv4ah_rh_gam_gru_overlay_config_s s4a;
+	struct uv4h_rh_gam_gru_overlay_config_s s4;
+	struct uv3h_rh_gam_gru_overlay_config_s s3;
+	struct uv2h_rh_gam_gru_overlay_config_s s2;
+};
+
+struct uvh_rh_gam_mmioh_overlay_config_s {
+	long unsigned int rsvd_0_26: 27;
+	long unsigned int base: 19;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uvxh_rh_gam_mmioh_overlay_config_s {
+	long unsigned int rsvd_0_26: 27;
+	long unsigned int base: 19;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv2h_rh_gam_mmioh_overlay_config_s {
+	long unsigned int rsvd_0_26: 27;
+	long unsigned int base: 19;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh_gam_mmioh_overlay_config_u {
+	long unsigned int v;
+	struct uvh_rh_gam_mmioh_overlay_config_s s;
+	struct uvxh_rh_gam_mmioh_overlay_config_s sx;
+	struct uv2h_rh_gam_mmioh_overlay_config_s s2;
+};
+
+struct uvh_rh_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uvxh_rh_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv4ah_rh_gam_mmioh_overlay_config0_mmr_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+struct uv4h_rh_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv3h_rh_gam_mmioh_overlay_config0_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh_gam_mmioh_overlay_config0_u {
+	long unsigned int v;
+	struct uvh_rh_gam_mmioh_overlay_config0_s s;
+	struct uvxh_rh_gam_mmioh_overlay_config0_s sx;
+	struct uv4ah_rh_gam_mmioh_overlay_config0_mmr_s s4a;
+	struct uv4h_rh_gam_mmioh_overlay_config0_s s4;
+	struct uv3h_rh_gam_mmioh_overlay_config0_s s3;
+};
+
+struct uvh_rh_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uvxh_rh_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv4ah_rh_gam_mmioh_overlay_config1_mmr_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 26;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int undef_62: 1;
+	long unsigned int enable: 1;
+};
+
+struct uv4h_rh_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+struct uv3h_rh_gam_mmioh_overlay_config1_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int m_io: 6;
+	long unsigned int n_io: 4;
+	long unsigned int rsvd_56_62: 7;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh_gam_mmioh_overlay_config1_u {
+	long unsigned int v;
+	struct uvh_rh_gam_mmioh_overlay_config1_s s;
+	struct uvxh_rh_gam_mmioh_overlay_config1_s sx;
+	struct uv4ah_rh_gam_mmioh_overlay_config1_mmr_s s4a;
+	struct uv4h_rh_gam_mmioh_overlay_config1_s s4;
+	struct uv3h_rh_gam_mmioh_overlay_config1_s s3;
+};
+
+struct uvh_rh_gam_mmr_overlay_config_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int rsvd_46_62: 17;
+	long unsigned int enable: 1;
+};
+
+struct uvxh_rh_gam_mmr_overlay_config_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int rsvd_46_62: 17;
+	long unsigned int enable: 1;
+};
+
+struct uv4h_rh_gam_mmr_overlay_config_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int rsvd_46_62: 17;
+	long unsigned int enable: 1;
+};
+
+struct uv3h_rh_gam_mmr_overlay_config_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int rsvd_46_62: 17;
+	long unsigned int enable: 1;
+};
+
+struct uv2h_rh_gam_mmr_overlay_config_s {
+	long unsigned int rsvd_0_25: 26;
+	long unsigned int base: 20;
+	long unsigned int rsvd_46_62: 17;
+	long unsigned int enable: 1;
+};
+
+union uvh_rh_gam_mmr_overlay_config_u {
+	long unsigned int v;
+	struct uvh_rh_gam_mmr_overlay_config_s s;
+	struct uvxh_rh_gam_mmr_overlay_config_s sx;
+	struct uv4h_rh_gam_mmr_overlay_config_s s4;
+	struct uv3h_rh_gam_mmr_overlay_config_s s3;
+	struct uv2h_rh_gam_mmr_overlay_config_s s2;
+};
+
+enum uv_system_type {
+	UV_NONE = 0,
+	UV_LEGACY_APIC = 1,
+	UV_X2APIC = 2,
 };
 
 enum {
-	MSI_FLAG_USE_DEF_DOM_OPS = 1,
-	MSI_FLAG_USE_DEF_CHIP_OPS = 2,
-	MSI_FLAG_MULTI_PCI_MSI = 4,
-	MSI_FLAG_PCI_MSIX = 8,
-	MSI_FLAG_ACTIVATE_EARLY = 16,
-	MSI_FLAG_MUST_REACTIVATE = 32,
-	MSI_FLAG_LEVEL_CAPABLE = 64,
+	BIOS_STATUS_MORE_PASSES = 1,
+	BIOS_STATUS_SUCCESS = 0,
+	BIOS_STATUS_UNIMPLEMENTED = 4294967258,
+	BIOS_STATUS_EINVAL = 4294967274,
+	BIOS_STATUS_UNAVAIL = 4294967280,
+	BIOS_STATUS_ABORT = 4294967292,
 };
 
-struct hpet_channel;
+struct uv_gam_parameters {
+	u64 mmr_base;
+	u64 gru_base;
+	u8 mmr_shift;
+	u8 gru_shift;
+	u8 gpa_shift;
+	u8 unused1;
+};
+
+struct uv_gam_range_entry {
+	char type;
+	char unused1;
+	u16 nasid;
+	u16 sockid;
+	u16 pnode;
+	u32 unused2;
+	u32 limit;
+};
+
+struct uv_arch_type_entry {
+	char archtype[8];
+};
+
+struct uv_systab {
+	char signature[4];
+	u32 revision;
+	u64 function;
+	u32 size;
+	struct {
+		u32 type: 8;
+		u32 offset: 24;
+	} entry[1];
+};
+
+enum {
+	BIOS_FREQ_BASE_PLATFORM = 0,
+	BIOS_FREQ_BASE_INTERVAL_TIMER = 1,
+	BIOS_FREQ_BASE_REALTIME_CLOCK = 2,
+};
+
+struct uv_gam_range_s {
+	u32 limit;
+	u16 nasid;
+	s8 base;
+	u8 reserved;
+};
+
+struct uv_hub_info_s {
+	unsigned int hub_type;
+	unsigned char hub_revision;
+	long unsigned int global_mmr_base;
+	long unsigned int global_mmr_shift;
+	long unsigned int gpa_mask;
+	short unsigned int *socket_to_node;
+	short unsigned int *socket_to_pnode;
+	short unsigned int *pnode_to_socket;
+	struct uv_gam_range_s *gr_table;
+	short unsigned int min_socket;
+	short unsigned int min_pnode;
+	unsigned char m_val;
+	unsigned char n_val;
+	unsigned char gr_table_len;
+	unsigned char apic_pnode_shift;
+	unsigned char gpa_shift;
+	unsigned char nasid_shift;
+	unsigned char m_shift;
+	unsigned char n_lshift;
+	unsigned int gnode_extra;
+	long unsigned int gnode_upper;
+	long unsigned int lowmem_remap_top;
+	long unsigned int lowmem_remap_base;
+	long unsigned int global_gru_base;
+	long unsigned int global_gru_shift;
+	short unsigned int pnode;
+	short unsigned int pnode_mask;
+	short unsigned int coherency_domain_number;
+	short unsigned int numa_blade_id;
+	short unsigned int nr_possible_cpus;
+	short unsigned int nr_online_cpus;
+	short int memory_nid;
+};
+
+struct uv_cpu_info_s {
+	void *p_uv_hub_info;
+	unsigned char blade_cpu_id;
+	void *reserved;
+};
+
+struct uvh_apicid_s {
+	long unsigned int local_apic_mask: 24;
+	long unsigned int local_apic_shift: 5;
+	long unsigned int unused1: 3;
+	long unsigned int pnode_mask: 24;
+	long unsigned int pnode_shift: 5;
+	long unsigned int unused2: 3;
+};
+
+union uvh_apicid {
+	long unsigned int v;
+	struct uvh_apicid_s s;
+};
+
+enum map_type {
+	map_wb = 0,
+	map_uc = 1,
+};
+
+enum mmioh_arch {
+	UV2_MMIOH = 4294967295,
+	UVY_MMIOH0 = 0,
+	UVY_MMIOH1 = 1,
+	UVX_MMIOH0 = 2,
+	UVX_MMIOH1 = 3,
+};
+
+struct mn {
+	unsigned char m_val;
+	unsigned char n_val;
+	unsigned char m_shift;
+	unsigned char n_lshift;
+};
 
 struct cluster_mask {
 	unsigned int clusterid;
@@ -25914,7 +28803,7 @@ enum {
 	FTRACE_OPS_FL_DYNAMIC = 2,
 	FTRACE_OPS_FL_SAVE_REGS = 4,
 	FTRACE_OPS_FL_SAVE_REGS_IF_SUPPORTED = 8,
-	FTRACE_OPS_FL_RECURSION_SAFE = 16,
+	FTRACE_OPS_FL_RECURSION = 16,
 	FTRACE_OPS_FL_STUB = 32,
 	FTRACE_OPS_FL_INITIALIZED = 64,
 	FTRACE_OPS_FL_DELETED = 128,
@@ -25963,8 +28852,6 @@ union ftrace_op_code_union {
 	} __attribute__((packed));
 };
 
-struct ftrace_rec_iter;
-
 typedef __s64 Elf64_Sxword;
 
 struct elf64_rela {
@@ -25980,9 +28867,6 @@ struct kimage_arch {
 	pud_t *pud;
 	pmd_t *pmd;
 	pte_t *pte;
-	void *elf_headers;
-	long unsigned int elf_headers_sz;
-	long unsigned int elf_load_addr;
 };
 
 typedef long unsigned int kimage_entry_t;
@@ -26038,6 +28922,9 @@ struct kimage {
 	const struct kexec_file_ops *fops;
 	void *image_loader_data;
 	struct purgatory_info purgatory_info;
+	void *elf_headers;
+	long unsigned int elf_headers_sz;
+	long unsigned int elf_load_addr;
 };
 
 typedef int kexec_cleanup_t(void *);
@@ -26065,7 +28952,7 @@ struct init_pgtable_data {
 	pgd_t *level4p;
 };
 
-typedef void crash_vmclear_fn();
+typedef void crash_vmclear_fn(void);
 
 struct kexec_buf {
 	struct kimage *image;
@@ -26115,16 +29002,6 @@ struct kexec_entry64_regs {
 	uint64_t rip;
 };
 
-enum key_being_used_for {
-	VERIFYING_MODULE_SIGNATURE = 0,
-	VERIFYING_FIRMWARE_SIGNATURE = 1,
-	VERIFYING_KEXEC_PE_SIGNATURE = 2,
-	VERIFYING_KEY_SIGNATURE = 3,
-	VERIFYING_KEY_SELF_SIGNATURE = 4,
-	VERIFYING_UNSPECIFIED_SIGNATURE = 5,
-	NR__KEY_BEING_USED_FOR = 6,
-};
-
 struct efi_setup_data {
 	u64 fw_vendor;
 	u64 __unused;
@@ -26137,6 +29014,15 @@ struct bzimage64_data {
 	void *bootparams_buf;
 };
 
+struct freelist_node {
+	atomic_t refs;
+	struct freelist_node *next;
+};
+
+struct freelist_head {
+	struct freelist_node *head;
+};
+
 struct prev_kprobe {
 	struct kprobe *kp;
 	long unsigned int status;
@@ -26155,20 +29041,27 @@ struct kretprobe_instance;
 
 typedef int (*kretprobe_handler_t)(struct kretprobe_instance *, struct pt_regs *);
 
-struct kretprobe;
+struct kretprobe_holder;
 
 struct kretprobe_instance {
 	union {
-		struct hlist_node hlist;
+		struct freelist_node freelist;
 		struct callback_head rcu;
 	};
-	struct kretprobe *rp;
+	struct llist_node llist;
+	struct kretprobe_holder *rph;
 	kprobe_opcode_t *ret_addr;
-	struct task_struct *task;
 	void *fp;
 	char data[0];
 };
 
+struct kretprobe;
+
+struct kretprobe_holder {
+	struct kretprobe *rp;
+	refcount_t ref;
+};
+
 struct kretprobe {
 	struct kprobe kp;
 	kretprobe_handler_t handler;
@@ -26176,8 +29069,8 @@ struct kretprobe {
 	int maxactive;
 	int nmissed;
 	size_t data_size;
-	struct hlist_head free_instances;
-	raw_spinlock_t lock;
+	struct freelist_head freelist;
+	struct kretprobe_holder *rph;
 };
 
 struct kretprobe_blackpoint {
@@ -26187,7 +29080,7 @@ struct kretprobe_blackpoint {
 
 struct kprobe_insn_cache {
 	struct mutex mutex;
-	void * (*alloc)();
+	void * (*alloc)(void);
 	void (*free)(void *);
 	const char *sym;
 	struct list_head pages;
@@ -26212,12 +29105,95 @@ struct optimized_kprobe {
 	struct arch_optimized_insn optinsn;
 };
 
+enum {
+	TRACE_FTRACE_BIT = 0,
+	TRACE_FTRACE_NMI_BIT = 1,
+	TRACE_FTRACE_IRQ_BIT = 2,
+	TRACE_FTRACE_SIRQ_BIT = 3,
+	TRACE_FTRACE_TRANSITION_BIT = 4,
+	TRACE_INTERNAL_BIT = 5,
+	TRACE_INTERNAL_NMI_BIT = 6,
+	TRACE_INTERNAL_IRQ_BIT = 7,
+	TRACE_INTERNAL_SIRQ_BIT = 8,
+	TRACE_INTERNAL_TRANSITION_BIT = 9,
+	TRACE_BRANCH_BIT = 10,
+	TRACE_IRQ_BIT = 11,
+	TRACE_GRAPH_BIT = 12,
+	TRACE_GRAPH_DEPTH_START_BIT = 13,
+	TRACE_GRAPH_DEPTH_END_BIT = 14,
+	TRACE_GRAPH_NOTRACE_BIT = 15,
+	TRACE_RECORD_RECURSION_BIT = 16,
+};
+
+enum {
+	TRACE_CTX_NMI = 0,
+	TRACE_CTX_IRQ = 1,
+	TRACE_CTX_SOFTIRQ = 2,
+	TRACE_CTX_NORMAL = 3,
+	TRACE_CTX_TRANSITION = 4,
+};
+
+enum regnames {
+	GDB_AX = 0,
+	GDB_BX = 1,
+	GDB_CX = 2,
+	GDB_DX = 3,
+	GDB_SI = 4,
+	GDB_DI = 5,
+	GDB_BP = 6,
+	GDB_SP = 7,
+	GDB_R8 = 8,
+	GDB_R9 = 9,
+	GDB_R10 = 10,
+	GDB_R11 = 11,
+	GDB_R12 = 12,
+	GDB_R13 = 13,
+	GDB_R14 = 14,
+	GDB_R15 = 15,
+	GDB_PC = 16,
+	GDB_PS = 17,
+	GDB_CS = 18,
+	GDB_SS = 19,
+	GDB_DS = 20,
+	GDB_ES = 21,
+	GDB_FS = 22,
+	GDB_GS = 23,
+};
+
+enum kgdb_bpstate {
+	BP_UNDEFINED = 0,
+	BP_REMOVED = 1,
+	BP_SET = 2,
+	BP_ACTIVE = 3,
+};
+
+struct kgdb_bkpt {
+	long unsigned int bpt_addr;
+	unsigned char saved_instr[1];
+	enum kgdb_bptype type;
+	enum kgdb_bpstate state;
+};
+
+struct dbg_reg_def_t {
+	char *name;
+	int size;
+	int offset;
+};
+
+struct hw_breakpoint {
+	unsigned int enabled;
+	long unsigned int addr;
+	int len;
+	int type;
+	struct perf_event **pev;
+};
+
 struct console {
 	char name[16];
 	void (*write)(struct console *, const char *, unsigned int);
 	int (*read)(struct console *, char *, unsigned int);
 	struct tty_driver * (*device)(struct console *, int *);
-	void (*unblank)();
+	void (*unblank)(void);
 	int (*setup)(struct console *, char *);
 	int (*exit)(struct console *);
 	int (*match)(struct console *, char *, int, char *);
@@ -26323,31 +29299,197 @@ struct kvm_task_sleep_head {
 
 typedef struct ldttss_desc ldt_desc;
 
-struct branch {
-	unsigned char opcode;
-	u32 delta;
-} __attribute__((packed));
-
-struct patch_xxl {
-	const unsigned char irq_irq_disable[1];
-	const unsigned char irq_irq_enable[1];
-	const unsigned char irq_save_fl[2];
-	const unsigned char mmu_read_cr2[3];
-	const unsigned char mmu_read_cr3[3];
-	const unsigned char mmu_write_cr3[3];
-	const unsigned char irq_restore_fl[2];
-	const unsigned char cpu_wbinvd[2];
-	const unsigned char cpu_usergs_sysret64[6];
-	const unsigned char mov64[3];
-};
-
-struct patch_lock {
-	unsigned char queued_spin_unlock[3];
-	unsigned char vcpu_is_preempted[2];
-};
-
 typedef long unsigned int ulong;
 
+struct jailhouse_setup_data {
+	struct {
+		__u16 version;
+		__u16 compatible_version;
+	} hdr;
+	struct {
+		__u16 pm_timer_address;
+		__u16 num_cpus;
+		__u64 pci_mmconfig_base;
+		__u32 tsc_khz;
+		__u32 apic_khz;
+		__u8 standard_ioapic;
+		__u8 cpu_ids[255];
+	} __attribute__((packed)) v1;
+	struct {
+		__u32 flags;
+	} v2;
+};
+
+struct circ_buf {
+	char *buf;
+	int head;
+	int tail;
+};
+
+struct serial_rs485 {
+	__u32 flags;
+	__u32 delay_rts_before_send;
+	__u32 delay_rts_after_send;
+	__u32 padding[5];
+};
+
+struct serial_iso7816 {
+	__u32 flags;
+	__u32 tg;
+	__u32 sc_fi;
+	__u32 sc_di;
+	__u32 clk;
+	__u32 reserved[5];
+};
+
+struct uart_port;
+
+struct uart_ops {
+	unsigned int (*tx_empty)(struct uart_port *);
+	void (*set_mctrl)(struct uart_port *, unsigned int);
+	unsigned int (*get_mctrl)(struct uart_port *);
+	void (*stop_tx)(struct uart_port *);
+	void (*start_tx)(struct uart_port *);
+	void (*throttle)(struct uart_port *);
+	void (*unthrottle)(struct uart_port *);
+	void (*send_xchar)(struct uart_port *, char);
+	void (*stop_rx)(struct uart_port *);
+	void (*enable_ms)(struct uart_port *);
+	void (*break_ctl)(struct uart_port *, int);
+	int (*startup)(struct uart_port *);
+	void (*shutdown)(struct uart_port *);
+	void (*flush_buffer)(struct uart_port *);
+	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
+	void (*set_ldisc)(struct uart_port *, struct ktermios *);
+	void (*pm)(struct uart_port *, unsigned int, unsigned int);
+	const char * (*type)(struct uart_port *);
+	void (*release_port)(struct uart_port *);
+	int (*request_port)(struct uart_port *);
+	void (*config_port)(struct uart_port *, int);
+	int (*verify_port)(struct uart_port *, struct serial_struct *);
+	int (*ioctl)(struct uart_port *, unsigned int, long unsigned int);
+	int (*poll_init)(struct uart_port *);
+	void (*poll_put_char)(struct uart_port *, unsigned char);
+	int (*poll_get_char)(struct uart_port *);
+};
+
+struct uart_icount {
+	__u32 cts;
+	__u32 dsr;
+	__u32 rng;
+	__u32 dcd;
+	__u32 rx;
+	__u32 tx;
+	__u32 frame;
+	__u32 overrun;
+	__u32 parity;
+	__u32 brk;
+	__u32 buf_overrun;
+};
+
+typedef u64 upf_t;
+
+typedef unsigned int upstat_t;
+
+struct uart_state;
+
+struct gpio_desc;
+
+struct uart_port {
+	spinlock_t lock;
+	long unsigned int iobase;
+	unsigned char *membase;
+	unsigned int (*serial_in)(struct uart_port *, int);
+	void (*serial_out)(struct uart_port *, int, int);
+	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
+	void (*set_ldisc)(struct uart_port *, struct ktermios *);
+	unsigned int (*get_mctrl)(struct uart_port *);
+	void (*set_mctrl)(struct uart_port *, unsigned int);
+	unsigned int (*get_divisor)(struct uart_port *, unsigned int, unsigned int *);
+	void (*set_divisor)(struct uart_port *, unsigned int, unsigned int, unsigned int);
+	int (*startup)(struct uart_port *);
+	void (*shutdown)(struct uart_port *);
+	void (*throttle)(struct uart_port *);
+	void (*unthrottle)(struct uart_port *);
+	int (*handle_irq)(struct uart_port *);
+	void (*pm)(struct uart_port *, unsigned int, unsigned int);
+	void (*handle_break)(struct uart_port *);
+	int (*rs485_config)(struct uart_port *, struct serial_rs485 *);
+	int (*iso7816_config)(struct uart_port *, struct serial_iso7816 *);
+	unsigned int irq;
+	long unsigned int irqflags;
+	unsigned int uartclk;
+	unsigned int fifosize;
+	unsigned char x_char;
+	unsigned char regshift;
+	unsigned char iotype;
+	unsigned char quirks;
+	unsigned int read_status_mask;
+	unsigned int ignore_status_mask;
+	struct uart_state *state;
+	struct uart_icount icount;
+	struct console *cons;
+	upf_t flags;
+	upstat_t status;
+	int hw_stopped;
+	unsigned int mctrl;
+	unsigned int timeout;
+	unsigned int type;
+	const struct uart_ops *ops;
+	unsigned int custom_divisor;
+	unsigned int line;
+	unsigned int minor;
+	resource_size_t mapbase;
+	resource_size_t mapsize;
+	struct device *dev;
+	long unsigned int sysrq;
+	unsigned int sysrq_ch;
+	unsigned char has_sysrq;
+	unsigned char sysrq_seq;
+	unsigned char hub6;
+	unsigned char suspended;
+	unsigned char console_reinit;
+	const char *name;
+	struct attribute_group *attr_group;
+	const struct attribute_group **tty_groups;
+	struct serial_rs485 rs485;
+	const struct serial_rs485 *rs485_supported;
+	struct gpio_desc *rs485_term_gpio;
+	struct serial_iso7816 iso7816;
+	void *private_data;
+};
+
+enum uart_pm_state {
+	UART_PM_STATE_ON = 0,
+	UART_PM_STATE_OFF = 3,
+	UART_PM_STATE_UNDEFINED = 4,
+};
+
+struct uart_state {
+	struct tty_port port;
+	enum uart_pm_state pm_state;
+	struct circ_buf xmit;
+	atomic_t refcount;
+	wait_queue_head_t remove_wait;
+	struct uart_port *uart_port;
+};
+
+struct pci_mmcfg_region {
+	struct list_head list;
+	struct resource res;
+	u64 address;
+	char *virt;
+	u16 segment;
+	u8 start_bus;
+	u8 end_bus;
+	char name[30];
+};
+
+struct scan_area {
+	u64 addr;
+	u64 size;
+};
+
 struct uprobe_xol_ops;
 
 struct arch_uprobe {
@@ -26386,65 +29528,6 @@ enum rp_check {
 	RP_CHECK_RET = 2,
 };
 
-struct simplefb_platform_data {
-	u32 width;
-	u32 height;
-	u32 stride;
-	const char *format;
-};
-
-enum {
-	M_I17 = 0,
-	M_I20 = 1,
-	M_I20_SR = 2,
-	M_I24 = 3,
-	M_I24_8_1 = 4,
-	M_I24_10_1 = 5,
-	M_I27_11_1 = 6,
-	M_MINI = 7,
-	M_MINI_3_1 = 8,
-	M_MINI_4_1 = 9,
-	M_MB = 10,
-	M_MB_2 = 11,
-	M_MB_3 = 12,
-	M_MB_5_1 = 13,
-	M_MB_6_1 = 14,
-	M_MB_7_1 = 15,
-	M_MB_SR = 16,
-	M_MBA = 17,
-	M_MBA_3 = 18,
-	M_MBP = 19,
-	M_MBP_2 = 20,
-	M_MBP_2_2 = 21,
-	M_MBP_SR = 22,
-	M_MBP_4 = 23,
-	M_MBP_5_1 = 24,
-	M_MBP_5_2 = 25,
-	M_MBP_5_3 = 26,
-	M_MBP_6_1 = 27,
-	M_MBP_6_2 = 28,
-	M_MBP_7_1 = 29,
-	M_MBP_8_2 = 30,
-	M_UNKNOWN = 31,
-};
-
-struct efifb_dmi_info {
-	char *optname;
-	long unsigned int base;
-	int stride;
-	int width;
-	int height;
-	int flags;
-};
-
-enum {
-	OVERRIDE_NONE = 0,
-	OVERRIDE_BASE = 1,
-	OVERRIDE_STRIDE = 2,
-	OVERRIDE_HEIGHT = 4,
-	OVERRIDE_WIDTH = 8,
-};
-
 enum perf_sample_regs_abi {
 	PERF_SAMPLE_REGS_ABI_NONE = 0,
 	PERF_SAMPLE_REGS_ABI_32 = 1,
@@ -26456,6 +29539,46 @@ struct va_format {
 	va_list *va;
 };
 
+enum es_result {
+	ES_OK = 0,
+	ES_UNSUPPORTED = 1,
+	ES_VMM_ERROR = 2,
+	ES_DECODE_FAILED = 3,
+	ES_EXCEPTION = 4,
+	ES_RETRY = 5,
+};
+
+struct es_fault_info {
+	long unsigned int vector;
+	long unsigned int error_code;
+	long unsigned int cr2;
+};
+
+struct es_em_ctxt {
+	struct pt_regs *regs;
+	struct insn insn;
+	struct es_fault_info fi;
+};
+
+struct sev_es_runtime_data {
+	struct ghcb ghcb_page;
+	struct ghcb backup_ghcb;
+	bool ghcb_active;
+	bool backup_ghcb_active;
+	long unsigned int dr7;
+};
+
+struct ghcb_state {
+	struct ghcb *ghcb;
+};
+
+enum cc_attr {
+	CC_ATTR_MEM_ENCRYPT = 0,
+	CC_ATTR_HOST_MEM_ENCRYPT = 1,
+	CC_ATTR_GUEST_MEM_ENCRYPT = 2,
+	CC_ATTR_GUEST_STATE_ENCRYPT = 3,
+};
+
 enum chipset_type {
 	NOT_SUPPORTED = 0,
 	SUPPORTED = 1,
@@ -26480,8 +29603,6 @@ struct agp_kern_info {
 	const struct vm_operations_struct *vm_ops;
 };
 
-struct agp_bridge_data;
-
 struct pci_hostbridge_probe {
 	u32 bus;
 	u32 slot;
@@ -26526,35 +29647,20 @@ struct map_range {
 	unsigned int page_size_mask;
 };
 
-enum {
-	MEMORY_HOTPLUG_MIN_BOOTMEM_TYPE = 12,
-	SECTION_INFO = 12,
-	MIX_SECTION_INFO = 13,
-	NODE_INFO = 14,
-	MEMORY_HOTPLUG_MAX_BOOTMEM_TYPE = 14,
-};
-
 struct mhp_params {
 	struct vmem_altmap *altmap;
 	pgprot_t pgprot;
 };
 
 struct mem_section_usage {
+	struct callback_head rcu;
 	long unsigned int subsection_map[1];
 	long unsigned int pageblock_flags[0];
 };
 
-struct page_ext;
-
 struct mem_section {
 	long unsigned int section_mem_map;
 	struct mem_section_usage *usage;
-	struct page_ext *page_ext;
-	long unsigned int pad;
-};
-
-struct page_ext {
-	long unsigned int flags;
 };
 
 enum kcore_type {
@@ -26563,19 +29669,26 @@ enum kcore_type {
 	KCORE_RAM = 2,
 	KCORE_VMEMMAP = 3,
 	KCORE_USER = 4,
-	KCORE_OTHER = 5,
-	KCORE_REMAP = 6,
 };
 
 struct kcore_list {
 	struct list_head list;
 	long unsigned int addr;
-	long unsigned int vaddr;
 	size_t size;
 	int type;
 };
 
+enum {
+	MEMORY_HOTPLUG_MIN_BOOTMEM_TYPE = 12,
+	SECTION_INFO = 12,
+	MIX_SECTION_INFO = 13,
+	NODE_INFO = 14,
+	MEMORY_HOTPLUG_MAX_BOOTMEM_TYPE = 14,
+};
+
 struct hstate {
+	struct mutex resize_lock;
+	struct lock_class_key resize_key;
 	int next_nid_to_alloc;
 	int next_nid_to_free;
 	unsigned int order;
@@ -26591,6 +29704,7 @@ struct hstate {
 	unsigned int nr_huge_pages_node[1024];
 	unsigned int free_huge_pages_node[1024];
 	unsigned int surplus_huge_pages_node[1024];
+	unsigned int nr_free_vmemmap_pages;
 	struct cftype cgroup_files_dfl[7];
 	struct cftype cgroup_files_legacy[9];
 	char name[32];
@@ -26619,8 +29733,6 @@ struct ioremap_desc {
 	unsigned int flags;
 };
 
-typedef bool (*ex_handler_t)(const struct exception_table_entry *, struct pt_regs *, int, long unsigned int, long unsigned int);
-
 struct hugepage_subpool {
 	spinlock_t lock;
 	long int count;
@@ -26642,22 +29754,6 @@ struct hugetlbfs_sb_info {
 	umode_t mode;
 };
 
-enum cc_attr {
-	CC_ATTR_MEM_ENCRYPT = 0,
-	CC_ATTR_HOST_MEM_ENCRYPT = 1,
-	CC_ATTR_GUEST_MEM_ENCRYPT = 2,
-	CC_ATTR_GUEST_STATE_ENCRYPT = 3,
-};
-
-struct entry_stack_page {
-	struct entry_stack stack;
-};
-
-struct debug_store_buffers {
-	char bts_buffer[65536];
-	char pebs_buffer[65536];
-};
-
 struct exception_stacks {
 	char DF_stack_guard[0];
 	char DF_stack[8192];
@@ -26668,19 +29764,14 @@ struct exception_stacks {
 	char MCE_stack_guard[0];
 	char MCE_stack[8192];
 	char VC_stack_guard[0];
-	char VC_stack[0];
+	char VC_stack[8192];
 	char VC2_stack_guard[0];
-	char VC2_stack[0];
+	char VC2_stack[8192];
 	char IST_top_guard[0];
 };
 
-struct cpu_entry_area {
-	char gdt[4096];
-	struct entry_stack_page entry_stack_page;
-	struct tss_struct tss;
-	struct cea_exception_stacks estacks;
-	struct debug_store cpu_debug_store;
-	struct debug_store_buffers cpu_debug_buffers;
+struct vm_event_state {
+	long unsigned int event[100];
 };
 
 struct cpa_data {
@@ -26708,6 +29799,8 @@ typedef struct {
 	u64 val;
 } pfn_t;
 
+typedef long unsigned int vm_flags_t;
+
 struct memtype {
 	u64 start;
 	u64 end;
@@ -26793,6 +29886,8 @@ enum address_markers_idx {
 	END_OF_SPACE_NR = 13,
 };
 
+typedef void (*rcu_callback_t)(struct callback_head *);
+
 struct kmmio_probe;
 
 typedef void (*kmmio_pre_handler_t)(struct kmmio_probe *, struct pt_regs *, long unsigned int);
@@ -26944,12 +30039,6 @@ struct acpi_srat_x2apic_cpu_affinity {
 	u32 reserved2;
 };
 
-enum uv_system_type {
-	UV_NONE = 0,
-	UV_LEGACY_APIC = 1,
-	UV_X2APIC = 2,
-};
-
 struct rnd_state {
 	__u32 s1;
 	__u32 s2;
@@ -26973,6 +30062,16 @@ enum pti_clone_level {
 	PTI_CLONE_PTE = 1,
 };
 
+struct sme_populate_pgd_data {
+	void *pgtable_area;
+	pgd_t *pgd;
+	pmdval_t pmd_flags;
+	pteval_t pte_flags;
+	long unsigned int paddr;
+	long unsigned int vaddr;
+	long unsigned int vaddr_end;
+};
+
 enum blake2s_lengths {
 	BLAKE2S_BLOCK_SIZE = 64,
 	BLAKE2S_HASH_SIZE = 32,
@@ -26992,6 +30091,62 @@ struct blake2s_state {
 	unsigned int outlen;
 };
 
+struct crypto_template;
+
+struct crypto_spawn;
+
+struct crypto_instance {
+	struct crypto_alg alg;
+	struct crypto_template *tmpl;
+	union {
+		struct hlist_node list;
+		struct crypto_spawn *spawns;
+	};
+	struct work_struct free_work;
+	void *__ctx[0];
+};
+
+struct crypto_spawn {
+	struct list_head list;
+	struct crypto_alg *alg;
+	union {
+		struct crypto_instance *inst;
+		struct crypto_spawn *next;
+	};
+	const struct crypto_type *frontend;
+	u32 mask;
+	bool dead;
+	bool registered;
+};
+
+struct rtattr;
+
+struct crypto_template {
+	struct list_head list;
+	struct hlist_head instances;
+	struct module *module;
+	int (*create)(struct crypto_template *, struct rtattr **);
+	char name[128];
+};
+
+struct shash_alg {
+	int (*init)(struct shash_desc *);
+	int (*update)(struct shash_desc *, const u8 *, unsigned int);
+	int (*final)(struct shash_desc *, u8 *);
+	int (*finup)(struct shash_desc *, const u8 *, unsigned int, u8 *);
+	int (*digest)(struct shash_desc *, const u8 *, unsigned int, u8 *);
+	int (*export)(struct shash_desc *, void *);
+	int (*import)(struct shash_desc *, const void *);
+	int (*setkey)(struct crypto_shash *, const u8 *, unsigned int);
+	int (*init_tfm)(struct crypto_shash *);
+	void (*exit_tfm)(struct crypto_shash *);
+	unsigned int descsize;
+	long: 0;
+	unsigned int digestsize;
+	unsigned int statesize;
+	struct crypto_alg base;
+};
+
 struct sigcontext_32 {
 	__u16 gs;
 	__u16 __gsh;
@@ -27050,11 +30205,6 @@ struct rt_sigframe_ia32 {
 	char retcode[8];
 };
 
-typedef struct {
-	efi_guid_t guid;
-	u64 table;
-} efi_config_table_64_t;
-
 struct efi_memory_map_data {
 	phys_addr_t phys_map;
 	long unsigned int size;
@@ -27068,6 +30218,11 @@ struct efi_mem_range {
 	u64 attribute;
 };
 
+typedef struct {
+	efi_guid_t guid;
+	u64 table;
+} efi_config_table_64_t;
+
 enum efi_rts_ids {
 	EFI_NONE = 0,
 	EFI_GET_TIME = 1,
@@ -27096,10 +30251,18 @@ struct efi_runtime_work {
 	struct completion efi_rts_comp;
 };
 
-struct efi_scratch {
-	u64 phys_stack;
-	struct mm_struct *prev_mm;
-};
+typedef struct {
+	efi_guid_t guid;
+	u32 table;
+} efi_config_table_32_t;
+
+typedef union {
+	struct {
+		efi_guid_t guid;
+		void *table;
+	};
+	efi_config_table_32_t mixed_mode;
+} efi_config_table_t;
 
 typedef struct {
 	efi_guid_t guid;
@@ -27131,31 +30294,112 @@ typedef struct {
 	u64 memory_protection_attribute;
 } efi_properties_table_t;
 
+typedef int (*efi_memattr_perm_setter)(struct mm_struct *, efi_memory_desc_t *);
+
+typedef u16 ucs2_char_t;
+
 struct pm_qos_request {
 	struct plist_node node;
 	struct pm_qos_constraints *qos;
 };
 
-struct sfi_table_header {
-	char sig[4];
-	u32 len;
-	u8 rev;
-	u8 csum;
-	char oem_id[6];
-	char oem_table_id[8];
+struct semaphore {
+	raw_spinlock_t lock;
+	unsigned int count;
+	struct list_head wait_list;
 };
 
-struct sfi_table_simple {
-	struct sfi_table_header header;
-	u64 pentry[1];
+enum uv_bios_cmd {
+	UV_BIOS_COMMON = 0,
+	UV_BIOS_GET_SN_INFO = 1,
+	UV_BIOS_FREQ_BASE = 2,
+	UV_BIOS_WATCHLIST_ALLOC = 3,
+	UV_BIOS_WATCHLIST_FREE = 4,
+	UV_BIOS_MEMPROTECT = 5,
+	UV_BIOS_GET_PARTITION_ADDR = 6,
+	UV_BIOS_SET_LEGACY_VGA_TARGET = 7,
 };
 
-struct sfi_cpu_table_entry {
-	u32 apic_id;
+union partition_info_u {
+	u64 val;
+	struct {
+		u64 hub_version: 8;
+		u64 partition_id: 16;
+		u64 coherence_id: 16;
+		u64 region_size: 24;
+	};
 };
 
-struct sfi_apic_table_entry {
-	u64 phys_addr;
+enum uv_memprotect {
+	UV_MEMPROT_RESTRICT_ACCESS = 0,
+	UV_MEMPROT_ALLOW_AMO = 1,
+	UV_MEMPROT_ALLOW_RW = 2,
+};
+
+struct uv_IO_APIC_route_entry {
+	__u64 vector: 8;
+	__u64 delivery_mode: 3;
+	__u64 dest_mode: 1;
+	__u64 delivery_status: 1;
+	__u64 polarity: 1;
+	__u64 __reserved_1: 1;
+	__u64 trigger: 1;
+	__u64 mask: 1;
+	__u64 __reserved_2: 15;
+	__u64 dest: 32;
+};
+
+enum {
+	UV_AFFINITY_ALL = 0,
+	UV_AFFINITY_NODE = 1,
+	UV_AFFINITY_CPU = 2,
+};
+
+struct uv_irq_2_mmr_pnode {
+	long unsigned int offset;
+	int pnode;
+};
+
+struct uv_rtc_timer_head {
+	spinlock_t lock;
+	int next_cpu;
+	int ncpus;
+	struct {
+		int lcpu;
+		u64 expires;
+	} cpu[0];
+};
+
+struct uv_hub_nmi_s {
+	raw_spinlock_t nmi_lock;
+	atomic_t in_nmi;
+	atomic_t cpu_owner;
+	atomic_t read_mmr_count;
+	atomic_t nmi_count;
+	long unsigned int nmi_value;
+	bool hub_present;
+	bool pch_owner;
+};
+
+struct uv_cpu_nmi_s {
+	struct uv_hub_nmi_s *hub;
+	int state;
+	int pinging;
+	int queries;
+	int pings;
+};
+
+struct nmi_action {
+	char *action;
+	char *desc;
+};
+
+typedef char action_t[16];
+
+struct init_nmi {
+	unsigned int offset;
+	unsigned int mask;
+	unsigned int data;
 };
 
 enum {
@@ -27174,7 +30418,7 @@ enum {
 };
 
 struct bpf_tramp_progs {
-	struct bpf_prog *progs[40];
+	struct bpf_prog *progs[38];
 	int nr_progs;
 };
 
@@ -27223,6 +30467,8 @@ struct bpf_binary_header {
 	u8 image[0];
 };
 
+typedef void (*bpf_jit_fill_hole_t)(void *, unsigned int);
+
 struct jit_context {
 	int cleanup_addr;
 	int tail_call_direct_label;
@@ -27258,24 +30504,6 @@ struct clone_args {
 	__u64 cgroup;
 };
 
-enum hrtimer_mode {
-	HRTIMER_MODE_ABS = 0,
-	HRTIMER_MODE_REL = 1,
-	HRTIMER_MODE_PINNED = 2,
-	HRTIMER_MODE_SOFT = 4,
-	HRTIMER_MODE_HARD = 8,
-	HRTIMER_MODE_ABS_PINNED = 2,
-	HRTIMER_MODE_REL_PINNED = 3,
-	HRTIMER_MODE_ABS_SOFT = 4,
-	HRTIMER_MODE_REL_SOFT = 5,
-	HRTIMER_MODE_ABS_PINNED_SOFT = 6,
-	HRTIMER_MODE_REL_PINNED_SOFT = 7,
-	HRTIMER_MODE_ABS_HARD = 8,
-	HRTIMER_MODE_REL_HARD = 9,
-	HRTIMER_MODE_ABS_PINNED_HARD = 10,
-	HRTIMER_MODE_REL_PINNED_HARD = 11,
-};
-
 struct fdtable {
 	unsigned int max_fds;
 	struct file **fd;
@@ -27307,30 +30535,6 @@ struct files_struct {
 	long: 64;
 };
 
-struct io_identity {
-	struct files_struct *files;
-	struct mm_struct *mm;
-	struct cgroup_subsys_state *blkcg_css;
-	const struct cred *creds;
-	struct nsproxy *nsproxy;
-	struct fs_struct *fs;
-	long unsigned int fsize;
-	kuid_t loginuid;
-	unsigned int sessionid;
-	refcount_t count;
-};
-
-struct io_uring_task {
-	struct xarray xa;
-	struct wait_queue_head wait;
-	struct file *last;
-	struct percpu_counter inflight;
-	struct io_identity __identity;
-	struct io_identity *identity;
-	atomic_t in_idle;
-	bool sqpoll;
-};
-
 struct robust_list {
 	struct robust_list *next;
 };
@@ -27355,7 +30559,10 @@ enum {
 	IOPRIO_CLASS_IDLE = 3,
 };
 
-typedef struct poll_table_struct poll_table;
+struct fd_range {
+	unsigned int from;
+	unsigned int to;
+};
 
 enum {
 	FUTEX_STATE_OK = 0,
@@ -27626,6 +30833,17 @@ struct kernel_stat {
 	unsigned int softirqs[10];
 };
 
+struct wait_bit_key {
+	void *flags;
+	int bit_nr;
+	long unsigned int timeout;
+};
+
+struct wait_bit_queue_entry {
+	struct wait_bit_key key;
+	struct wait_queue_entry wq_entry;
+};
+
 struct trace_event_raw_irq_handler_entry {
 	struct trace_entry ent;
 	int irq;
@@ -27669,8 +30887,17 @@ struct tasklet_head {
 	struct tasklet_struct **tail;
 };
 
+struct pseudo_fs_context {
+	const struct super_operations *ops;
+	const struct xattr_handler **xattr;
+	const struct dentry_operations *dops;
+	long unsigned int magic;
+};
+
 typedef void (*dr_release_t)(struct device *, void *);
 
+typedef int (*dr_match_t)(struct device *, void *, void *);
+
 struct resource_entry {
 	struct list_head node;
 	struct resource *res;
@@ -27696,6 +30923,8 @@ struct region_devres {
 	resource_size_t n;
 };
 
+typedef __kernel_clock_t clock_t;
+
 struct dentry_stat_t {
 	long int nr_dentry;
 	long int nr_unused;
@@ -27726,13 +30955,6 @@ struct core_vma_metadata {
 	struct file *file;
 };
 
-enum sched_tunable_scaling {
-	SCHED_TUNABLESCALING_NONE = 0,
-	SCHED_TUNABLESCALING_LOG = 1,
-	SCHED_TUNABLESCALING_LINEAR = 2,
-	SCHED_TUNABLESCALING_END = 3,
-};
-
 enum sysctl_writes_mode {
 	SYSCTL_WRITES_LEGACY = 4294967295,
 	SYSCTL_WRITES_WARN = 0,
@@ -27768,9 +30990,11 @@ struct sigqueue {
 	struct list_head list;
 	int flags;
 	kernel_siginfo_t info;
-	struct user_struct *user;
+	struct ucounts *ucounts;
 };
 
+typedef int wait_bit_action_f(struct wait_bit_key *, int);
+
 struct ptrace_peeksiginfo_args {
 	__u64 off;
 	__u32 flags;
@@ -27800,6 +31024,14 @@ struct ptrace_syscall_info {
 	};
 };
 
+struct ptrace_rseq_configuration {
+	__u64 rseq_abi_pointer;
+	__u32 rseq_abi_size;
+	__u32 signature;
+	__u32 flags;
+	__u32 pad;
+};
+
 struct compat_iovec {
 	compat_uptr_t iov_base;
 	compat_size_t iov_len;
@@ -27812,12 +31044,14 @@ enum siginfo_layout {
 	SIL_TIMER = 1,
 	SIL_POLL = 2,
 	SIL_FAULT = 3,
-	SIL_FAULT_MCEERR = 4,
-	SIL_FAULT_BNDERR = 5,
-	SIL_FAULT_PKUERR = 6,
-	SIL_CHLD = 7,
-	SIL_RT = 8,
-	SIL_SYS = 9,
+	SIL_FAULT_TRAPNO = 4,
+	SIL_FAULT_MCEERR = 5,
+	SIL_FAULT_BNDERR = 6,
+	SIL_FAULT_PKUERR = 7,
+	SIL_FAULT_PERF_EVENT = 8,
+	SIL_CHLD = 9,
+	SIL_RT = 10,
+	SIL_SYS = 11,
 };
 
 struct fd {
@@ -27879,7 +31113,11 @@ typedef void (*btf_trace_signal_generate)(void *, int, struct kernel_siginfo *,
 
 typedef void (*btf_trace_signal_deliver)(void *, int, struct kernel_siginfo *, struct k_sigaction *);
 
-typedef __kernel_clock_t clock_t;
+enum sig_handler {
+	HANDLER_CURRENT = 0,
+	HANDLER_SIG_DFL = 1,
+	HANDLER_EXIT = 2,
+};
 
 struct sysinfo {
 	__kernel_long_t uptime;
@@ -28082,8 +31320,6 @@ enum {
 	WQ_DFL_ACTIVE = 256,
 };
 
-typedef unsigned int xa_mark_t;
-
 enum xa_lock_type {
 	XA_LOCK_IRQ = 1,
 	XA_LOCK_BH = 2,
@@ -28107,6 +31343,7 @@ struct worker {
 	struct work_struct *current_work;
 	work_func_t current_func;
 	struct pool_workqueue *current_pwq;
+	unsigned int current_color;
 	struct list_head scheduled;
 	struct task_struct *task;
 	struct worker_pool *pool;
@@ -28126,10 +31363,10 @@ struct pool_workqueue {
 	int work_color;
 	int flush_color;
 	int refcnt;
-	int nr_in_flight[15];
+	int nr_in_flight[16];
 	int nr_active;
 	int max_active;
-	struct list_head delayed_works;
+	struct list_head inactive_works;
 	struct list_head pwqs_node;
 	struct list_head mayday_node;
 	struct work_struct unbound_release_work;
@@ -28141,7 +31378,6 @@ struct pool_workqueue {
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
 };
 
 struct worker_pool {
@@ -28215,7 +31451,7 @@ struct trace_event_raw_workqueue_queue_work {
 	struct trace_entry ent;
 	void *work;
 	void *function;
-	void *workqueue;
+	u32 __data_loc_workqueue;
 	unsigned int req_cpu;
 	unsigned int cpu;
 	char __data[0];
@@ -28241,7 +31477,9 @@ struct trace_event_raw_workqueue_execute_end {
 	char __data[0];
 };
 
-struct trace_event_data_offsets_workqueue_queue_work {};
+struct trace_event_data_offsets_workqueue_queue_work {
+	u32 workqueue;
+};
 
 struct trace_event_data_offsets_workqueue_activate_work {};
 
@@ -28283,32 +31521,6 @@ struct work_for_cpu {
 	long int ret;
 };
 
-struct xa_node {
-	unsigned char shift;
-	unsigned char offset;
-	unsigned char count;
-	unsigned char nr_values;
-	struct xa_node *parent;
-	struct xarray *array;
-	union {
-		struct list_head private_list;
-		struct callback_head callback_head;
-	};
-	void *slots[64];
-	union {
-		long unsigned int tags[3];
-		long unsigned int marks[3];
-	};
-};
-
-typedef struct {} local_lock_t;
-
-struct radix_tree_preload {
-	local_lock_t lock;
-	unsigned int nr;
-	struct xa_node *nodes;
-};
-
 typedef void (*task_work_func_t)(struct callback_head *);
 
 enum {
@@ -28346,13 +31558,6 @@ struct sched_param {
 	int sched_priority;
 };
 
-enum {
-	__PERCPU_REF_ATOMIC = 1,
-	__PERCPU_REF_DEAD = 2,
-	__PERCPU_REF_ATOMIC_DEAD = 3,
-	__PERCPU_REF_FLAG_BITS = 2,
-};
-
 struct kthread_work;
 
 typedef void (*kthread_work_func_t)(struct kthread_work *);
@@ -28384,14 +31589,6 @@ struct kthread_delayed_work {
 	struct timer_list timer;
 };
 
-enum {
-	CSS_NO_REF = 1,
-	CSS_ONLINE = 2,
-	CSS_RELEASED = 4,
-	CSS_VISIBLE = 8,
-	CSS_DYING = 16,
-};
-
 struct kthread_create_info {
 	int (*threadfn)(void *);
 	void *data;
@@ -28423,8 +31620,6 @@ struct kthread_flush_work {
 	struct completion done;
 };
 
-struct pt_regs;
-
 struct ipc_ids {
 	int in_use;
 	short unsigned int seq;
@@ -28437,15 +31632,14 @@ struct ipc_ids {
 };
 
 struct ipc_namespace {
-	refcount_t count;
 	struct ipc_ids ids[3];
 	int sem_ctls[4];
 	int used_sems;
 	unsigned int msg_ctlmax;
 	unsigned int msg_ctlmnb;
 	unsigned int msg_ctlmni;
-	atomic_t msg_bytes;
-	atomic_t msg_hdrs;
+	struct percpu_counter percpu_msg_bytes;
+	struct percpu_counter percpu_msg_hdrs;
 	size_t shm_ctlmax;
 	size_t shm_ctlall;
 	long unsigned int shm_tot;
@@ -28459,6 +31653,10 @@ struct ipc_namespace {
 	unsigned int mq_msgsize_max;
 	unsigned int mq_msg_default;
 	unsigned int mq_msgsize_default;
+	struct ctl_table_set mq_set;
+	struct ctl_table_header *mq_sysctls;
+	struct ctl_table_set ipc_set;
+	struct ctl_table_header *ipc_sysctls;
 	struct user_namespace *user_ns;
 	struct ucounts *ucounts;
 	struct llist_node mnt_llist;
@@ -28471,6 +31669,10 @@ struct srcu_notifier_head {
 	struct notifier_block *head;
 };
 
+struct lsmblob {
+	u32 secid[4];
+};
+
 enum what {
 	PROC_EVENT_NONE = 0,
 	PROC_EVENT_FORK = 1,
@@ -28484,15 +31686,6 @@ enum what {
 	PROC_EVENT_EXIT = 2147483648,
 };
 
-typedef u64 async_cookie_t;
-
-typedef void (*async_func_t)(void *, async_cookie_t);
-
-struct async_domain {
-	struct list_head pending;
-	unsigned int registered: 1;
-};
-
 struct async_entry {
 	struct list_head domain_list;
 	struct list_head global_list;
@@ -28515,6 +31708,14 @@ enum {
 	HP_THREAD_PARKED = 2,
 };
 
+struct umd_info {
+	const char *driver_name;
+	struct file *pipe_to_umh;
+	struct file *pipe_from_umh;
+	struct path wd;
+	struct pid *tgid;
+};
+
 struct pin_cookie {};
 
 struct preempt_notifier;
@@ -28545,6 +31746,8 @@ enum {
 
 typedef struct __call_single_data call_single_data_t;
 
+typedef int (*task_call_f)(struct task_struct *, void *);
+
 struct dl_bw {
 	raw_spinlock_t lock;
 	u64 bw;
@@ -28566,7 +31769,7 @@ struct cpupri_vec {
 };
 
 struct cpupri {
-	struct cpupri_vec pri_to_cpu[102];
+	struct cpupri_vec pri_to_cpu[101];
 	int *cpu_to_pri;
 };
 
@@ -28584,6 +31787,7 @@ struct root_domain {
 	atomic_t dlo_count;
 	struct dl_bw dl_bw;
 	struct cpudl cpudl;
+	u64 visit_gen;
 	struct irq_work rto_push_work;
 	raw_spinlock_t rto_lock;
 	int rto_loop;
@@ -28603,6 +31807,8 @@ struct cfs_rq {
 	unsigned int idle_h_nr_running;
 	u64 exec_clock;
 	u64 min_vruntime;
+	unsigned int forceidle_seq;
+	u64 min_vruntime_fi;
 	struct rb_root_cached tasks_timeline;
 	struct sched_entity *curr;
 	struct sched_entity *next;
@@ -28610,8 +31816,6 @@ struct cfs_rq {
 	struct sched_entity *skip;
 	unsigned int nr_spread_over;
 	long: 64;
-	long: 64;
-	long: 64;
 	struct sched_avg avg;
 	struct {
 		raw_spinlock_t lock;
@@ -28624,6 +31828,7 @@ struct cfs_rq {
 		long: 64;
 		long: 64;
 	} removed;
+	u64 last_update_tg_load_avg;
 	long unsigned int tg_load_avg_contrib;
 	long int propagate;
 	long int prop_runnable_sum;
@@ -28634,6 +31839,7 @@ struct cfs_rq {
 	int on_list;
 	struct list_head leaf_cfs_rq_list;
 	struct task_group *tg;
+	int idle;
 	int runtime_enabled;
 	s64 runtime_remaining;
 	u64 throttled_clock;
@@ -28646,7 +31852,6 @@ struct cfs_rq {
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
 };
 
 struct cfs_bandwidth {
@@ -28654,6 +31859,7 @@ struct cfs_bandwidth {
 	ktime_t period;
 	u64 quota;
 	u64 runtime;
+	u64 burst;
 	s64 hierarchical_quota;
 	u8 idle;
 	u8 period_active;
@@ -28671,7 +31877,7 @@ struct task_group {
 	struct sched_entity **se;
 	struct cfs_rq **cfs_rq;
 	long unsigned int shares;
-	long: 64;
+	int idle;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -28683,9 +31889,20 @@ struct task_group {
 	struct list_head children;
 	struct autogroup *autogroup;
 	struct cfs_bandwidth cfs_bandwidth;
+	unsigned int uclamp_pct[2];
+	struct uclamp_se uclamp_req[2];
+	struct uclamp_se uclamp[2];
 	long: 64;
 	long: 64;
 	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct sched_domain_attr {
+	int relax_domain_level;
 };
 
 struct sched_group {
@@ -28694,6 +31911,7 @@ struct sched_group {
 	unsigned int group_weight;
 	struct sched_group_capacity *sgc;
 	int asym_prefer_cpu;
+	int flags;
 	long unsigned int cpumask[0];
 };
 
@@ -28727,6 +31945,17 @@ struct kernel_cpustat {
 	u64 cpustat[10];
 };
 
+enum {
+	MEMBARRIER_STATE_PRIVATE_EXPEDITED_READY = 1,
+	MEMBARRIER_STATE_PRIVATE_EXPEDITED = 2,
+	MEMBARRIER_STATE_GLOBAL_EXPEDITED_READY = 4,
+	MEMBARRIER_STATE_GLOBAL_EXPEDITED = 8,
+	MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE_READY = 16,
+	MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE = 32,
+	MEMBARRIER_STATE_PRIVATE_EXPEDITED_RSEQ_READY = 64,
+	MEMBARRIER_STATE_PRIVATE_EXPEDITED_RSEQ = 128,
+};
+
 enum {
 	CFTYPE_ONLY_ON_ROOT = 1,
 	CFTYPE_NOT_ON_ROOT = 2,
@@ -28734,10 +31963,26 @@ enum {
 	CFTYPE_NO_PREFIX = 8,
 	CFTYPE_WORLD_WRITABLE = 16,
 	CFTYPE_DEBUG = 32,
+	CFTYPE_PRESSURE = 64,
 	__CFTYPE_ONLY_ON_DFL = 65536,
 	__CFTYPE_NOT_ON_DFL = 131072,
 };
 
+struct css_task_iter {
+	struct cgroup_subsys *ss;
+	unsigned int flags;
+	struct list_head *cset_pos;
+	struct list_head *cset_head;
+	struct list_head *tcset_pos;
+	struct list_head *tcset_head;
+	struct list_head *task_pos;
+	struct list_head *cur_tasks_head;
+	struct css_set *cur_cset;
+	struct css_set *cur_dcset;
+	struct task_struct *cur_task;
+	struct list_head iters_node;
+};
+
 struct trace_event_raw_sched_kthread_stop {
 	struct trace_entry ent;
 	char comm[16];
@@ -28751,12 +31996,33 @@ struct trace_event_raw_sched_kthread_stop_ret {
 	char __data[0];
 };
 
+struct trace_event_raw_sched_kthread_work_queue_work {
+	struct trace_entry ent;
+	void *work;
+	void *function;
+	void *worker;
+	char __data[0];
+};
+
+struct trace_event_raw_sched_kthread_work_execute_start {
+	struct trace_entry ent;
+	void *work;
+	void *function;
+	char __data[0];
+};
+
+struct trace_event_raw_sched_kthread_work_execute_end {
+	struct trace_entry ent;
+	void *work;
+	void *function;
+	char __data[0];
+};
+
 struct trace_event_raw_sched_wakeup_template {
 	struct trace_entry ent;
 	char comm[16];
 	pid_t pid;
 	int prio;
-	int success;
 	int target_cpu;
 	char __data[0];
 };
@@ -28886,6 +32152,12 @@ struct trace_event_data_offsets_sched_kthread_stop {};
 
 struct trace_event_data_offsets_sched_kthread_stop_ret {};
 
+struct trace_event_data_offsets_sched_kthread_work_queue_work {};
+
+struct trace_event_data_offsets_sched_kthread_work_execute_start {};
+
+struct trace_event_data_offsets_sched_kthread_work_execute_end {};
+
 struct trace_event_data_offsets_sched_wakeup_template {};
 
 struct trace_event_data_offsets_sched_switch {};
@@ -28920,6 +32192,12 @@ typedef void (*btf_trace_sched_kthread_stop)(void *, struct task_struct *);
 
 typedef void (*btf_trace_sched_kthread_stop_ret)(void *, int);
 
+typedef void (*btf_trace_sched_kthread_work_queue_work)(void *, struct kthread_worker *, struct kthread_work *);
+
+typedef void (*btf_trace_sched_kthread_work_execute_start)(void *, struct kthread_work *);
+
+typedef void (*btf_trace_sched_kthread_work_execute_end)(void *, struct kthread_work *, kthread_work_func_t);
+
 typedef void (*btf_trace_sched_waking)(void *, struct task_struct *);
 
 typedef void (*btf_trace_sched_wakeup)(void *, struct task_struct *);
@@ -28964,17 +32242,192 @@ typedef void (*btf_trace_sched_swap_numa)(void *, struct task_struct *, int, str
 
 typedef void (*btf_trace_sched_wake_idle_without_ipi)(void *, int);
 
-enum {
-	MEMBARRIER_STATE_PRIVATE_EXPEDITED_READY = 1,
-	MEMBARRIER_STATE_PRIVATE_EXPEDITED = 2,
-	MEMBARRIER_STATE_GLOBAL_EXPEDITED_READY = 4,
-	MEMBARRIER_STATE_GLOBAL_EXPEDITED = 8,
-	MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE_READY = 16,
-	MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE = 32,
-	MEMBARRIER_STATE_PRIVATE_EXPEDITED_RSEQ_READY = 64,
-	MEMBARRIER_STATE_PRIVATE_EXPEDITED_RSEQ = 128,
+typedef void (*btf_trace_pelt_cfs_tp)(void *, struct cfs_rq *);
+
+typedef void (*btf_trace_pelt_rt_tp)(void *, struct rq *);
+
+struct uclamp_bucket {
+	long unsigned int value: 11;
+	long unsigned int tasks: 53;
 };
 
+struct uclamp_rq {
+	unsigned int value;
+	struct uclamp_bucket bucket[5];
+};
+
+struct rt_prio_array {
+	long unsigned int bitmap[2];
+	struct list_head queue[100];
+};
+
+struct rt_rq {
+	struct rt_prio_array active;
+	unsigned int rt_nr_running;
+	unsigned int rr_nr_running;
+	struct {
+		int curr;
+		int next;
+	} highest_prio;
+	unsigned int rt_nr_migratory;
+	unsigned int rt_nr_total;
+	int overloaded;
+	struct plist_head pushable_tasks;
+	int rt_queued;
+	int rt_throttled;
+	u64 rt_time;
+	u64 rt_runtime;
+	raw_spinlock_t rt_runtime_lock;
+};
+
+struct dl_rq {
+	struct rb_root_cached root;
+	unsigned int dl_nr_running;
+	struct {
+		u64 curr;
+		u64 next;
+	} earliest_dl;
+	unsigned int dl_nr_migratory;
+	int overloaded;
+	struct rb_root_cached pushable_dl_tasks_root;
+	u64 running_bw;
+	u64 this_bw;
+	u64 extra_bw;
+	u64 bw_ratio;
+};
+
+struct cpu_stop_done;
+
+struct cpu_stop_work {
+	struct list_head list;
+	cpu_stop_fn_t fn;
+	long unsigned int caller;
+	void *arg;
+	struct cpu_stop_done *done;
+};
+
+struct cpuidle_state;
+
+struct rq {
+	raw_spinlock_t __lock;
+	unsigned int nr_running;
+	unsigned int nr_numa_running;
+	unsigned int nr_preferred_running;
+	unsigned int numa_migrate_on;
+	long unsigned int last_blocked_load_update_tick;
+	unsigned int has_blocked_load;
+	long: 64;
+	long: 64;
+	long: 64;
+	call_single_data_t nohz_csd;
+	unsigned int nohz_tick_stopped;
+	atomic_t nohz_flags;
+	unsigned int ttwu_pending;
+	u64 nr_switches;
+	long: 64;
+	struct uclamp_rq uclamp[2];
+	unsigned int uclamp_flags;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct cfs_rq cfs;
+	struct rt_rq rt;
+	struct dl_rq dl;
+	struct list_head leaf_cfs_rq_list;
+	struct list_head *tmp_alone_branch;
+	unsigned int nr_uninterruptible;
+	struct task_struct *curr;
+	struct task_struct *idle;
+	struct task_struct *stop;
+	long unsigned int next_balance;
+	struct mm_struct *prev_mm;
+	unsigned int clock_update_flags;
+	u64 clock;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	u64 clock_task;
+	u64 clock_pelt;
+	long unsigned int lost_idle_time;
+	atomic_t nr_iowait;
+	u64 last_seen_need_resched_ns;
+	int ticks_without_resched;
+	int membarrier_state;
+	struct root_domain *rd;
+	struct sched_domain *sd;
+	long unsigned int cpu_capacity;
+	long unsigned int cpu_capacity_orig;
+	long unsigned int cpu_capacity_inverted;
+	struct callback_head *balance_callback;
+	unsigned char nohz_idle_balance;
+	unsigned char idle_balance;
+	long unsigned int misfit_task_load;
+	int active_balance;
+	int push_cpu;
+	struct cpu_stop_work active_balance_work;
+	int cpu;
+	int online;
+	struct list_head cfs_tasks;
+	struct sched_avg avg_rt;
+	struct sched_avg avg_dl;
+	u64 idle_stamp;
+	u64 avg_idle;
+	long unsigned int wake_stamp;
+	u64 wake_avg_idle;
+	u64 max_idle_balance_cost;
+	struct rcuwait hotplug_wait;
+	u64 prev_steal_time;
+	long unsigned int calc_load_update;
+	long int calc_load_active;
+	long: 64;
+	long: 64;
+	long: 64;
+	call_single_data_t hrtick_csd;
+	struct hrtimer hrtick_timer;
+	ktime_t hrtick_time;
+	struct sched_info rq_sched_info;
+	long long unsigned int rq_cpu_time;
+	unsigned int yld_count;
+	unsigned int sched_count;
+	unsigned int sched_goidle;
+	unsigned int ttwu_count;
+	unsigned int ttwu_local;
+	struct cpuidle_state *idle_state;
+	unsigned int nr_pinned;
+	unsigned int push_busy;
+	struct cpu_stop_work push_work;
+	struct rq *core;
+	struct task_struct *core_pick;
+	unsigned int core_enabled;
+	unsigned int core_sched_seq;
+	struct rb_root core_tree;
+	unsigned int core_task_seq;
+	unsigned int core_pick_seq;
+	long unsigned int core_cookie;
+	unsigned char core_forceidle;
+	unsigned int core_forceidle_seq;
+};
+
+typedef void (*btf_trace_pelt_dl_tp)(void *, struct rq *);
+
+typedef void (*btf_trace_pelt_thermal_tp)(void *, struct rq *);
+
+typedef void (*btf_trace_pelt_irq_tp)(void *, struct rq *);
+
+typedef void (*btf_trace_pelt_se_tp)(void *, struct sched_entity *);
+
+typedef void (*btf_trace_sched_cpu_capacity_tp)(void *, struct rq *);
+
+typedef void (*btf_trace_sched_overutilized_tp)(void *, struct root_domain *, bool);
+
+typedef void (*btf_trace_sched_util_est_cfs_tp)(void *, struct cfs_rq *);
+
+typedef void (*btf_trace_sched_util_est_se_tp)(void *, struct sched_entity *);
+
+typedef void (*btf_trace_sched_update_nr_running_tp)(void *, struct rq *, int);
+
 struct wake_q_head {
 	struct wake_q_node *first;
 	struct wake_q_node **lastp;
@@ -29011,8 +32464,8 @@ struct cpuidle_driver;
 struct cpuidle_state {
 	char name[16];
 	char desc[32];
-	u64 exit_latency_ns;
-	u64 target_residency_ns;
+	s64 exit_latency_ns;
+	s64 target_residency_ns;
 	unsigned int flags;
 	unsigned int exit_latency;
 	int power_usage;
@@ -29056,28 +32509,12 @@ struct cpuidle_driver {
 	const char *governor;
 };
 
-typedef int (*cpu_stop_fn_t)(void *);
-
-struct cpu_stop_done;
-
-struct cpu_stop_work {
-	struct list_head list;
-	cpu_stop_fn_t fn;
-	void *arg;
-	struct cpu_stop_done *done;
-};
-
 struct cpudl_item {
 	u64 dl;
 	int cpu;
 	int idx;
 };
 
-struct rt_prio_array {
-	long unsigned int bitmap[2];
-	struct list_head queue[100];
-};
-
 struct rt_bandwidth {
 	raw_spinlock_t rt_runtime_lock;
 	ktime_t rt_period;
@@ -29094,122 +32531,6 @@ struct dl_bandwidth {
 
 typedef int (*tg_visitor)(struct task_group *, void *);
 
-struct rt_rq {
-	struct rt_prio_array active;
-	unsigned int rt_nr_running;
-	unsigned int rr_nr_running;
-	struct {
-		int curr;
-		int next;
-	} highest_prio;
-	long unsigned int rt_nr_migratory;
-	long unsigned int rt_nr_total;
-	int overloaded;
-	struct plist_head pushable_tasks;
-	int rt_queued;
-	int rt_throttled;
-	u64 rt_time;
-	u64 rt_runtime;
-	raw_spinlock_t rt_runtime_lock;
-};
-
-struct dl_rq {
-	struct rb_root_cached root;
-	long unsigned int dl_nr_running;
-	struct {
-		u64 curr;
-		u64 next;
-	} earliest_dl;
-	long unsigned int dl_nr_migratory;
-	int overloaded;
-	struct rb_root_cached pushable_dl_tasks_root;
-	u64 running_bw;
-	u64 this_bw;
-	u64 extra_bw;
-	u64 bw_ratio;
-};
-
-struct rq {
-	raw_spinlock_t lock;
-	unsigned int nr_running;
-	unsigned int nr_numa_running;
-	unsigned int nr_preferred_running;
-	unsigned int numa_migrate_on;
-	long unsigned int last_blocked_load_update_tick;
-	unsigned int has_blocked_load;
-	long: 64;
-	long: 64;
-	long: 64;
-	call_single_data_t nohz_csd;
-	unsigned int nohz_tick_stopped;
-	atomic_t nohz_flags;
-	unsigned int ttwu_pending;
-	u64 nr_switches;
-	long: 64;
-	struct cfs_rq cfs;
-	struct rt_rq rt;
-	struct dl_rq dl;
-	struct list_head leaf_cfs_rq_list;
-	struct list_head *tmp_alone_branch;
-	long unsigned int nr_uninterruptible;
-	struct task_struct *curr;
-	struct task_struct *idle;
-	struct task_struct *stop;
-	long unsigned int next_balance;
-	struct mm_struct *prev_mm;
-	unsigned int clock_update_flags;
-	u64 clock;
-	long: 64;
-	long: 64;
-	long: 64;
-	u64 clock_task;
-	u64 clock_pelt;
-	long unsigned int lost_idle_time;
-	atomic_t nr_iowait;
-	int membarrier_state;
-	struct root_domain *rd;
-	struct sched_domain *sd;
-	long unsigned int cpu_capacity;
-	long unsigned int cpu_capacity_orig;
-	struct callback_head *balance_callback;
-	unsigned char nohz_idle_balance;
-	unsigned char idle_balance;
-	long unsigned int misfit_task_load;
-	int active_balance;
-	int push_cpu;
-	struct cpu_stop_work active_balance_work;
-	int cpu;
-	int online;
-	struct list_head cfs_tasks;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct sched_avg avg_rt;
-	struct sched_avg avg_dl;
-	u64 idle_stamp;
-	u64 avg_idle;
-	u64 max_idle_balance_cost;
-	u64 prev_steal_time;
-	long unsigned int calc_load_update;
-	long int calc_load_active;
-	long: 64;
-	long: 64;
-	call_single_data_t hrtick_csd;
-	struct hrtimer hrtick_timer;
-	ktime_t hrtick_time;
-	struct sched_info rq_sched_info;
-	long long unsigned int rq_cpu_time;
-	unsigned int yld_count;
-	unsigned int sched_count;
-	unsigned int sched_goidle;
-	unsigned int ttwu_count;
-	unsigned int ttwu_local;
-	struct cpuidle_state *idle_state;
-	long: 64;
-	long: 64;
-};
-
 struct perf_domain {
 	struct em_perf_domain *em_pd;
 	struct perf_domain *next;
@@ -29222,6 +32543,11 @@ struct rq_flags {
 	unsigned int clock_update_flags;
 };
 
+struct sched_entity_stats {
+	struct sched_entity se;
+	struct sched_statistics stats;
+};
+
 enum {
 	__SCHED_FEAT_GENTLE_FAIR_SLEEPERS = 0,
 	__SCHED_FEAT_START_DEBIT = 1,
@@ -29230,29 +32556,47 @@ enum {
 	__SCHED_FEAT_CACHE_HOT_BUDDY = 4,
 	__SCHED_FEAT_WAKEUP_PREEMPTION = 5,
 	__SCHED_FEAT_HRTICK = 6,
-	__SCHED_FEAT_DOUBLE_TICK = 7,
-	__SCHED_FEAT_NONTASK_CAPACITY = 8,
-	__SCHED_FEAT_TTWU_QUEUE = 9,
-	__SCHED_FEAT_SIS_AVG_CPU = 10,
+	__SCHED_FEAT_HRTICK_DL = 7,
+	__SCHED_FEAT_DOUBLE_TICK = 8,
+	__SCHED_FEAT_NONTASK_CAPACITY = 9,
+	__SCHED_FEAT_TTWU_QUEUE = 10,
 	__SCHED_FEAT_SIS_PROP = 11,
-	__SCHED_FEAT_WARN_DOUBLE_CLOCK = 12,
-	__SCHED_FEAT_RT_PUSH_IPI = 13,
-	__SCHED_FEAT_RT_RUNTIME_SHARE = 14,
-	__SCHED_FEAT_LB_MIN = 15,
-	__SCHED_FEAT_ATTACH_AGE_LOAD = 16,
-	__SCHED_FEAT_WA_IDLE = 17,
-	__SCHED_FEAT_WA_WEIGHT = 18,
-	__SCHED_FEAT_WA_BIAS = 19,
-	__SCHED_FEAT_UTIL_EST = 20,
-	__SCHED_FEAT_UTIL_EST_FASTUP = 21,
-	__SCHED_FEAT_ALT_PERIOD = 22,
-	__SCHED_FEAT_BASE_SLICE = 23,
-	__SCHED_FEAT_NR = 24,
+	__SCHED_FEAT_SIS_UTIL = 12,
+	__SCHED_FEAT_WARN_DOUBLE_CLOCK = 13,
+	__SCHED_FEAT_RT_PUSH_IPI = 14,
+	__SCHED_FEAT_RT_RUNTIME_SHARE = 15,
+	__SCHED_FEAT_LB_MIN = 16,
+	__SCHED_FEAT_ATTACH_AGE_LOAD = 17,
+	__SCHED_FEAT_WA_IDLE = 18,
+	__SCHED_FEAT_WA_WEIGHT = 19,
+	__SCHED_FEAT_WA_BIAS = 20,
+	__SCHED_FEAT_UTIL_EST = 21,
+	__SCHED_FEAT_UTIL_EST_FASTUP = 22,
+	__SCHED_FEAT_LATENCY_WARN = 23,
+	__SCHED_FEAT_ALT_PERIOD = 24,
+	__SCHED_FEAT_BASE_SLICE = 25,
+	__SCHED_FEAT_NR = 26,
 };
 
+enum cpu_util_type {
+	FREQUENCY_UTIL = 0,
+	ENERGY_UTIL = 1,
+};
+
+struct set_affinity_pending;
+
 struct migration_arg {
 	struct task_struct *task;
 	int dest_cpu;
+	struct set_affinity_pending *pending;
+};
+
+struct set_affinity_pending {
+	refcount_t refs;
+	unsigned int stop_pending;
+	struct completion done;
+	struct cpu_stop_work stop_work;
+	struct migration_arg arg;
 };
 
 struct migration_swap_arg {
@@ -29262,6 +32606,12 @@ struct migration_swap_arg {
 	int dst_cpu;
 };
 
+struct uclamp_request {
+	s64 percent;
+	u64 util;
+	int ret;
+};
+
 struct cfs_schedulable_data {
 	struct task_group *tg;
 	u64 period;
@@ -29300,8 +32650,6 @@ struct idle_timer {
 	int done;
 };
 
-typedef void (*rcu_callback_t)(struct callback_head *);
-
 struct numa_group {
 	refcount_t refcount;
 	spinlock_t lock;
@@ -29319,6 +32667,13 @@ struct update_util_data {
 	void (*func)(struct update_util_data *, u64, unsigned int);
 };
 
+enum sched_tunable_scaling {
+	SCHED_TUNABLESCALING_NONE = 0,
+	SCHED_TUNABLESCALING_LOG = 1,
+	SCHED_TUNABLESCALING_LINEAR = 2,
+	SCHED_TUNABLESCALING_END = 3,
+};
+
 enum numa_topology_type {
 	NUMA_DIRECT = 0,
 	NUMA_GLUELESS_MESH = 1,
@@ -29332,11 +32687,6 @@ enum numa_faults_stats {
 	NUMA_CPUBUF = 3,
 };
 
-enum schedutil_type {
-	FREQUENCY_UTIL = 0,
-	ENERGY_UTIL = 1,
-};
-
 enum numa_type {
 	node_has_spare = 0,
 	node_fully_busy = 1,
@@ -29441,28 +32791,17 @@ struct sd_lb_stats {
 
 typedef struct rt_rq *rt_rq_iter_t;
 
-struct wait_bit_key {
-	void *flags;
-	int bit_nr;
-	long unsigned int timeout;
+enum dl_bw_request {
+	dl_bw_req_check_overflow = 0,
+	dl_bw_req_alloc = 1,
+	dl_bw_req_free = 2,
 };
 
-struct wait_bit_queue_entry {
-	struct wait_bit_key key;
-	struct wait_queue_entry wq_entry;
-};
-
-typedef int wait_bit_action_f(struct wait_bit_key *, int);
-
 struct sd_flag_debug {
 	unsigned int meta_flags;
 	char *name;
 };
 
-struct sched_domain_attr {
-	int relax_domain_level;
-};
-
 struct s_data {
 	struct sched_domain **sd;
 	struct root_domain *rd;
@@ -29475,19 +32814,21 @@ enum s_alloc {
 	sa_none = 3,
 };
 
+struct asym_cap_data {
+	struct list_head link;
+	long unsigned int capacity;
+	long unsigned int cpus[0];
+};
+
 enum cpuacct_stat_index {
 	CPUACCT_STAT_USER = 0,
 	CPUACCT_STAT_SYSTEM = 1,
 	CPUACCT_STAT_NSTATS = 2,
 };
 
-struct cpuacct_usage {
-	u64 usages[2];
-};
-
 struct cpuacct {
 	struct cgroup_subsys_state css;
-	struct cpuacct_usage *cpuusage;
+	u64 *cpuusage;
 	struct kernel_cpustat *cpustat;
 };
 
@@ -29535,6 +32876,7 @@ struct sugov_cpu {
 	bool iowait_boost_pending;
 	unsigned int iowait_boost;
 	u64 last_update;
+	long unsigned int util;
 	long unsigned int bw_dl;
 	long unsigned int max;
 	long unsigned int saved_idle_calls;
@@ -29588,6 +32930,10 @@ struct psi_trigger {
 	u64 last_event_time;
 };
 
+struct sched_core_cookie {
+	refcount_t refcnt;
+};
+
 struct ww_acquire_ctx;
 
 struct ww_mutex {
@@ -29609,18 +32955,6 @@ struct mutex_waiter {
 	struct ww_acquire_ctx *ww_ctx;
 };
 
-enum mutex_trylock_recursive_enum {
-	MUTEX_TRYLOCK_FAILED = 0,
-	MUTEX_TRYLOCK_SUCCESS = 1,
-	MUTEX_TRYLOCK_RECURSIVE = 2,
-};
-
-struct semaphore {
-	raw_spinlock_t lock;
-	unsigned int count;
-	struct list_head wait_list;
-};
-
 struct semaphore_waiter {
 	struct list_head list;
 	struct task_struct *task;
@@ -29637,7 +32971,7 @@ struct rwsem_waiter {
 	struct task_struct *task;
 	enum rwsem_waiter_type type;
 	long unsigned int timeout;
-	long unsigned int last_rowner;
+	bool handoff_set;
 };
 
 enum rwsem_wake_type {
@@ -29646,12 +32980,6 @@ enum rwsem_wake_type {
 	RWSEM_WAKE_READ_OWNED = 2,
 };
 
-enum writer_wait_state {
-	WRITER_NOT_FIRST = 0,
-	WRITER_FIRST = 1,
-	WRITER_HANDOFF = 2,
-};
-
 enum owner_state {
 	OWNER_NULL = 1,
 	OWNER_WRITER = 2,
@@ -29694,26 +33022,39 @@ struct pv_hash_entry {
 	struct pv_node *node;
 };
 
+struct rt_mutex_base {
+	raw_spinlock_t wait_lock;
+	struct rb_root_cached waiters;
+	struct task_struct *owner;
+};
+
+struct rt_mutex {
+	struct rt_mutex_base rtmutex;
+};
+
 struct hrtimer_sleeper {
 	struct hrtimer timer;
 	struct task_struct *task;
 };
 
-struct rt_mutex;
-
-struct rt_mutex_waiter {
-	struct rb_node tree_entry;
-	struct rb_node pi_tree_entry;
-	struct task_struct *task;
-	struct rt_mutex *lock;
+struct rt_waiter_node {
+	struct rb_node entry;
 	int prio;
 	u64 deadline;
 };
 
-struct rt_mutex {
-	raw_spinlock_t wait_lock;
-	struct rb_root_cached waiters;
-	struct task_struct *owner;
+struct rt_mutex_waiter {
+	struct rt_waiter_node tree;
+	struct rt_waiter_node pi_tree;
+	struct task_struct *task;
+	struct rt_mutex_base *lock;
+	unsigned int wake_state;
+	struct ww_acquire_ctx *ww_ctx;
+};
+
+struct rt_wake_q_head {
+	struct wake_q_head head;
+	struct task_struct *rtlock_task;
 };
 
 enum rtmutex_chainwalk {
@@ -29727,18 +33068,6 @@ enum pm_qos_req_action {
 	PM_QOS_REMOVE_REQ = 2,
 };
 
-struct miscdevice {
-	int minor;
-	const char *name;
-	const struct file_operations *fops;
-	struct list_head list;
-	struct device *parent;
-	struct device *this_device;
-	const struct attribute_group **groups;
-	const char *nodename;
-	umode_t mode;
-};
-
 typedef int suspend_state_t;
 
 enum suspend_stat_step {
@@ -29790,37 +33119,37 @@ struct pm_vt_switch {
 struct platform_suspend_ops {
 	int (*valid)(suspend_state_t);
 	int (*begin)(suspend_state_t);
-	int (*prepare)();
-	int (*prepare_late)();
+	int (*prepare)(void);
+	int (*prepare_late)(void);
 	int (*enter)(suspend_state_t);
-	void (*wake)();
-	void (*finish)();
-	bool (*suspend_again)();
-	void (*end)();
-	void (*recover)();
+	void (*wake)(void);
+	void (*finish)(void);
+	bool (*suspend_again)(void);
+	void (*end)(void);
+	void (*recover)(void);
 };
 
 struct platform_s2idle_ops {
-	int (*begin)();
-	int (*prepare)();
-	int (*prepare_late)();
-	bool (*wake)();
-	void (*restore_early)();
-	void (*restore)();
-	void (*end)();
+	int (*begin)(void);
+	int (*prepare)(void);
+	int (*prepare_late)(void);
+	bool (*wake)(void);
+	void (*restore_early)(void);
+	void (*restore)(void);
+	void (*end)(void);
 };
 
 struct platform_hibernation_ops {
 	int (*begin)(pm_message_t);
-	void (*end)();
-	int (*pre_snapshot)();
-	void (*finish)();
-	int (*prepare)();
-	int (*enter)();
-	void (*leave)();
-	int (*pre_restore)();
-	void (*restore_cleanup)();
-	void (*recover)();
+	void (*end)(void);
+	int (*pre_snapshot)(void);
+	void (*finish)(void);
+	int (*prepare)(void);
+	int (*enter)(void);
+	void (*leave)(void);
+	int (*pre_restore)(void);
+	void (*restore_cleanup)(void);
+	void (*recover)(void);
 };
 
 enum {
@@ -30380,8 +33709,12 @@ enum {
 	BIO_THROTTLED = 7,
 	BIO_TRACE_COMPLETION = 8,
 	BIO_CGROUP_ACCT = 9,
-	BIO_TRACKED = 10,
-	BIO_FLAG_LAST = 11,
+	BIO_QOS_THROTTLED = 10,
+	BIO_QOS_MERGED = 11,
+	BIO_REMAPPED = 12,
+	BIO_ZONE_WRITE_LOCKED = 13,
+	BIO_PERCPU_CACHE = 14,
+	BIO_FLAG_LAST = 15,
 };
 
 enum req_opf {
@@ -30398,8 +33731,6 @@ enum req_opf {
 	REQ_OP_ZONE_APPEND = 13,
 	REQ_OP_ZONE_RESET = 15,
 	REQ_OP_ZONE_RESET_ALL = 17,
-	REQ_OP_SCSI_IN = 32,
-	REQ_OP_SCSI_OUT = 33,
 	REQ_OP_DRV_IN = 34,
 	REQ_OP_DRV_OUT = 35,
 	REQ_OP_LAST = 36,
@@ -30532,6 +33863,13 @@ struct compat_resume_swap_area {
 	u32 dev;
 } __attribute__((packed));
 
+struct wakelock {
+	char *name;
+	struct rb_node node;
+	struct wakeup_source *ws;
+	struct list_head lru;
+};
+
 struct sysrq_key_op {
 	void (* const handler)(int);
 	const char * const help_msg;
@@ -30548,16 +33886,16 @@ struct dev_printk_info {
 	char device[48];
 };
 
+struct kmsg_dump_iter {
+	u64 cur_seq;
+	u64 next_seq;
+};
+
 struct kmsg_dumper {
 	struct list_head list;
 	void (*dump)(struct kmsg_dumper *, enum kmsg_dump_reason);
 	enum kmsg_dump_reason max_reason;
-	bool active;
 	bool registered;
-	u32 cur_idx;
-	u32 next_idx;
-	u64 cur_seq;
-	u64 next_seq;
 };
 
 struct trace_event_raw_console {
@@ -30640,7 +33978,11 @@ struct console_cmdline {
 	int index;
 	bool user_specified;
 	char *options;
-	char *brl_options;
+};
+
+enum printk_info_flags {
+	LOG_NEWLINE = 2,
+	LOG_CONT = 8,
 };
 
 enum devkmsg_log_bits {
@@ -30660,13 +34002,13 @@ enum con_msg_format_flags {
 	MSG_FORMAT_SYSLOG = 1,
 };
 
-enum log_flags {
-	LOG_NEWLINE = 2,
-	LOG_CONT = 8,
+struct latched_seq {
+	seqcount_latch_t latch;
+	u64 val[2];
 };
 
 struct devkmsg_user {
-	u64 seq;
+	atomic64_t seq;
 	struct ratelimit_state rs;
 	struct mutex lock;
 	char buf[8192];
@@ -30675,11 +34017,9 @@ struct devkmsg_user {
 	struct printk_record record;
 };
 
-struct printk_safe_seq_buf {
-	atomic_t len;
-	atomic_t message_lost;
-	struct irq_work work;
-	unsigned char buffer[8160];
+enum kdb_msgsrc {
+	KDB_MSGSRC_INTERNAL = 0,
+	KDB_MSGSRC_PRINTK = 1,
 };
 
 struct prb_data_block {
@@ -30698,6 +34038,7 @@ enum {
 	IRQS_SUSPENDED = 2048,
 	IRQS_TIMINGS = 4096,
 	IRQS_NMI = 8192,
+	IRQS_SYSFS = 16384,
 };
 
 enum {
@@ -30715,6 +34056,7 @@ enum {
 	_IRQ_IS_POLLED = 262144,
 	_IRQ_DISABLE_UNLAZY = 524288,
 	_IRQ_HIDDEN = 1048576,
+	_IRQ_NO_DEBUG = 2097152,
 	_IRQF_MODIFY_MASK = 2096911,
 };
 
@@ -30888,15 +34230,26 @@ struct trace_event_raw_rcu_utilization {
 	char __data[0];
 };
 
+struct trace_event_raw_rcu_stall_warning {
+	struct trace_entry ent;
+	const char *rcuname;
+	const char *msg;
+	char __data[0];
+};
+
 struct trace_event_data_offsets_rcu_utilization {};
 
+struct trace_event_data_offsets_rcu_stall_warning {};
+
 typedef void (*btf_trace_rcu_utilization)(void *, const char *);
 
+typedef void (*btf_trace_rcu_stall_warning)(void *, const char *, const char *);
+
 struct rcu_tasks;
 
 typedef void (*rcu_tasks_gp_func_t)(struct rcu_tasks *);
 
-typedef void (*pregp_func_t)();
+typedef void (*pregp_func_t)(void);
 
 typedef void (*pertask_func_t)(struct task_struct *, struct list_head *);
 
@@ -30969,6 +34322,7 @@ struct rcu_node {
 	long unsigned int rcu_gp_init_mask;
 	long unsigned int qsmaskinit;
 	long unsigned int qsmaskinitnext;
+	long unsigned int ofl_seq;
 	long unsigned int expmask;
 	long unsigned int expmaskinit;
 	long unsigned int expmaskinitnext;
@@ -30989,8 +34343,7 @@ struct rcu_node {
 	long unsigned int boost_time;
 	struct task_struct *boost_kthread_task;
 	unsigned int boost_kthread_status;
-	long: 64;
-	long: 64;
+	long unsigned int n_boosts;
 	long: 64;
 	raw_spinlock_t fqslock;
 	long: 64;
@@ -31068,6 +34421,7 @@ struct rcu_state {
 	struct rcu_node node[521];
 	struct rcu_node *level[4];
 	int ncpus;
+	int n_online_cpus;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -31100,12 +34454,12 @@ struct rcu_state {
 	long unsigned int gp_activity;
 	long unsigned int gp_req_activity;
 	long unsigned int jiffies_stall;
+	int nr_fqs_jiffies_stall;
 	long unsigned int jiffies_resched;
 	long unsigned int n_force_qs_gpstart;
 	const char *name;
 	char abbr;
 	long: 64;
-	long: 64;
 	raw_spinlock_t ofl_lock;
 	long: 64;
 	long: 64;
@@ -31140,7 +34494,8 @@ struct kfree_rcu_cpu {
 	bool monitor_todo;
 	bool initialized;
 	int count;
-	struct work_struct page_cache_work;
+	struct delayed_work page_cache_work;
+	atomic_t backoff_page_cache_fill;
 	atomic_t work_in_progress;
 	struct hrtimer hrtimer;
 	struct llist_head bkvcache;
@@ -31230,9 +34585,9 @@ struct klp_shadow {
 	char data[0];
 };
 
-enum dma_sync_target {
-	SYNC_FOR_CPU = 0,
-	SYNC_FOR_DEVICE = 1,
+struct dma_sgt_handle {
+	struct sg_table sgt;
+	struct page **pages;
 };
 
 struct dma_devres {
@@ -31258,6 +34613,8 @@ struct trace_event_data_offsets_swiotlb_bounced {
 
 typedef void (*btf_trace_swiotlb_bounced)(void *, struct device *, dma_addr_t, size_t, enum swiotlb_force);
 
+struct cma;
+
 struct trace_event_raw_sys_enter {
 	struct trace_entry ent;
 	long int id;
@@ -31280,51 +34637,6 @@ typedef void (*btf_trace_sys_enter)(void *, struct pt_regs *, long int);
 
 typedef void (*btf_trace_sys_exit)(void *, struct pt_regs *, long int);
 
-enum mmu_notifier_event {
-	MMU_NOTIFY_UNMAP = 0,
-	MMU_NOTIFY_CLEAR = 1,
-	MMU_NOTIFY_PROTECTION_VMA = 2,
-	MMU_NOTIFY_PROTECTION_PAGE = 3,
-	MMU_NOTIFY_SOFT_DIRTY = 4,
-	MMU_NOTIFY_RELEASE = 5,
-	MMU_NOTIFY_MIGRATE = 6,
-};
-
-struct mmu_notifier;
-
-struct mmu_notifier_range;
-
-struct mmu_notifier_ops {
-	void (*release)(struct mmu_notifier *, struct mm_struct *);
-	int (*clear_flush_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
-	int (*clear_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
-	int (*test_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int);
-	void (*change_pte)(struct mmu_notifier *, struct mm_struct *, long unsigned int, pte_t);
-	int (*invalidate_range_start)(struct mmu_notifier *, const struct mmu_notifier_range *);
-	void (*invalidate_range_end)(struct mmu_notifier *, const struct mmu_notifier_range *);
-	void (*invalidate_range)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
-	struct mmu_notifier * (*alloc_notifier)(struct mm_struct *);
-	void (*free_notifier)(struct mmu_notifier *);
-};
-
-struct mmu_notifier {
-	struct hlist_node hlist;
-	const struct mmu_notifier_ops *ops;
-	struct mm_struct *mm;
-	struct callback_head rcu;
-	unsigned int users;
-};
-
-struct mmu_notifier_range {
-	struct vm_area_struct *vma;
-	struct mm_struct *mm;
-	long unsigned int start;
-	long unsigned int end;
-	unsigned int flags;
-	enum mmu_notifier_event event;
-	void *migrate_pgmap_owner;
-};
-
 struct kvm_regs {
 	__u64 rax;
 	__u64 rbx;
@@ -31389,6 +34701,12 @@ struct kvm_sregs {
 	__u64 interrupt_bitmap[4];
 };
 
+struct kvm_msr_entry {
+	__u32 index;
+	__u32 reserved;
+	__u64 data;
+};
+
 struct kvm_cpuid_entry2 {
 	__u32 function;
 	__u32 index;
@@ -31447,6 +34765,45 @@ struct kvm_sync_regs {
 	struct kvm_vcpu_events events;
 };
 
+struct kvm_vmx_nested_state_data {
+	__u8 vmcs12[4096];
+	__u8 shadow_vmcs12[4096];
+};
+
+struct kvm_vmx_nested_state_hdr {
+	__u64 vmxon_pa;
+	__u64 vmcs12_pa;
+	struct {
+		__u16 flags;
+	} smm;
+	__u16 pad;
+	__u32 flags;
+	__u64 preemption_timer_deadline;
+};
+
+struct kvm_svm_nested_state_data {
+	__u8 vmcb12[4096];
+};
+
+struct kvm_svm_nested_state_hdr {
+	__u64 vmcb_pa;
+};
+
+struct kvm_nested_state {
+	__u16 flags;
+	__u16 format;
+	__u32 size;
+	union {
+		struct kvm_vmx_nested_state_hdr vmx;
+		struct kvm_svm_nested_state_hdr svm;
+		__u8 pad[120];
+	} hdr;
+	union {
+		struct kvm_vmx_nested_state_data vmx[0];
+		struct kvm_svm_nested_state_data svm[0];
+	} data;
+};
+
 struct kvm_pmu_event_filter {
 	__u32 action;
 	__u32 nevents;
@@ -31484,6 +34841,19 @@ struct kvm_hyperv_exit {
 	} u;
 };
 
+struct kvm_xen_exit {
+	__u32 type;
+	union {
+		struct {
+			__u32 longmode;
+			__u32 cpl;
+			__u64 input;
+			__u64 result;
+			__u64 params[6];
+		} hcall;
+	} u;
+};
+
 struct kvm_run {
 	__u8 request_interrupt_window;
 	__u8 immediate_exit;
@@ -31554,6 +34924,13 @@ struct kvm_run {
 			__u32 ndata;
 			__u64 data[16];
 		} internal;
+		struct {
+			__u32 suberror;
+			__u32 ndata;
+			__u64 flags;
+			__u8 insn_size;
+			__u8 insn_bytes[15];
+		} emulation_failure;
 		struct {
 			__u64 gprs[32];
 		} osi;
@@ -31600,6 +34977,7 @@ struct kvm_run {
 			__u32 index;
 			__u64 data;
 		} msr;
+		struct kvm_xen_exit xen;
 		char padding[256];
 	};
 	__u64 kvm_valid_regs;
@@ -31636,6 +35014,26 @@ struct kvm_xen_hvm_config {
 	__u8 pad2[30];
 };
 
+struct kvm_enc_region {
+	__u64 addr;
+	__u64 size;
+};
+
+struct kvm_dirty_gfn {
+	__u32 flags;
+	__u32 slot;
+	__u64 offset;
+};
+
+struct kvm_stats_desc {
+	__u32 flags;
+	__s16 exponent;
+	__u16 size;
+	__u32 offset;
+	__u32 bucket_size;
+	char name[0];
+};
+
 typedef long unsigned int gva_t;
 
 typedef u64 gpa_t;
@@ -31644,10 +35042,6 @@ typedef u64 gfn_t;
 
 typedef u64 hpa_t;
 
-typedef u64 hfn_t;
-
-typedef hfn_t kvm_pfn_t;
-
 struct kvm_memory_slot;
 
 struct gfn_to_hva_cache {
@@ -31679,13 +35073,6 @@ struct kvm_memory_slot {
 	u16 as_id;
 };
 
-struct gfn_to_pfn_cache {
-	u64 generation;
-	gfn_t gfn;
-	kvm_pfn_t pfn;
-	bool dirty;
-};
-
 struct kvm_mmu_memory_cache {
 	int nobjs;
 	gfp_t gfp_zero;
@@ -31693,6 +35080,24 @@ struct kvm_mmu_memory_cache {
 	void *objects[40];
 };
 
+struct kvm_vm_stat_generic {
+	u64 remote_tlb_flush;
+	u64 remote_tlb_flush_requests;
+};
+
+struct kvm_vcpu_stat_generic {
+	u64 halt_successful_poll;
+	u64 halt_attempted_poll;
+	u64 halt_poll_invalid;
+	u64 halt_wakeup;
+	u64 halt_poll_success_ns;
+	u64 halt_poll_fail_ns;
+	u64 halt_wait_ns;
+	u64 halt_poll_success_hist[32];
+	u64 halt_poll_fail_hist[32];
+	u64 halt_wait_hist[32];
+};
+
 struct hv_partition_assist_pg {
 	u32 tlb_lock_count;
 };
@@ -31766,37 +35171,6 @@ struct kvm_page_track_notifier_node {
 	void (*track_flush_slot)(struct kvm *, struct kvm_memory_slot *, struct kvm_page_track_notifier_node *);
 };
 
-struct kvm_vcpu_stat {
-	u64 pf_fixed;
-	u64 pf_guest;
-	u64 tlb_flush;
-	u64 invlpg;
-	u64 exits;
-	u64 io_exits;
-	u64 mmio_exits;
-	u64 signal_exits;
-	u64 irq_window_exits;
-	u64 nmi_window_exits;
-	u64 l1d_flush;
-	u64 halt_exits;
-	u64 halt_successful_poll;
-	u64 halt_attempted_poll;
-	u64 halt_poll_invalid;
-	u64 halt_wakeup;
-	u64 request_irq_exits;
-	u64 irq_exits;
-	u64 host_state_reload;
-	u64 fpu_reload;
-	u64 insn_emulation;
-	u64 insn_emulation_fail;
-	u64 hypercalls;
-	u64 irq_injections;
-	u64 nmi_injections;
-	u64 req_event;
-	u64 halt_poll_success_ns;
-	u64 halt_poll_fail_ns;
-};
-
 struct kvm_mmio_fragment {
 	gpa_t gpa;
 	void *data;
@@ -31818,7 +35192,7 @@ union kvm_mmu_page_role {
 		unsigned int direct: 1;
 		unsigned int access: 3;
 		unsigned int invalid: 1;
-		unsigned int nxe: 1;
+		unsigned int efer_nx: 1;
 		unsigned int cr0_wp: 1;
 		unsigned int smep_andnot_wp: 1;
 		unsigned int smap_andnot_wp: 1;
@@ -31841,7 +35215,7 @@ union kvm_mmu_extended_role {
 		unsigned int cr4_smap: 1;
 		unsigned int cr4_smep: 1;
 		unsigned int cr4_la57: 1;
-		unsigned int maxphyaddr: 6;
+		unsigned int efer_lma: 1;
 	};
 };
 
@@ -31883,11 +35257,10 @@ struct kvm_mmu {
 	u8 permissions[16];
 	u32 pkru_mask;
 	u64 *pae_root;
-	u64 *lm_root;
+	u64 *pml4_root;
+	u64 *pml5_root;
 	struct rsvd_bits_validate shadow_zero_check;
 	struct rsvd_bits_validate guest_rsvd_check;
-	u8 last_nonleaf_level;
-	bool nx;
 	u64 pdptrs[4];
 };
 
@@ -31944,6 +35317,7 @@ struct kvm_pmc {
 	struct perf_event *perf_event;
 	struct kvm_vcpu *vcpu;
 	u64 current_config;
+	bool is_paused;
 };
 
 struct kvm_pmu {
@@ -31971,39 +35345,21 @@ struct kvm_pmu {
 	u8 event_count;
 };
 
-struct kvm_vcpu_hv_synic {
-	u64 version;
-	u64 control;
-	u64 msg_page;
-	u64 evt_page;
-	atomic64_t sint[16];
-	atomic_t sint_to_gsi[16];
-	long unsigned int auto_eoi_bitmap[4];
-	long unsigned int vec_bitmap[4];
-	bool active;
-	bool dont_zero_synic_pages;
+struct kvm_vcpu_xen {
+	u64 hypercall_rip;
+	u32 current_runstate;
+	bool vcpu_info_set;
+	bool vcpu_time_info_set;
+	bool runstate_set;
+	struct gfn_to_hva_cache vcpu_info_cache;
+	struct gfn_to_hva_cache vcpu_time_info_cache;
+	struct gfn_to_hva_cache runstate_cache;
+	u64 last_steal;
+	u64 runstate_entry_time;
+	u64 runstate_times[4];
 };
 
-struct kvm_vcpu_hv_stimer {
-	struct hrtimer timer;
-	int index;
-	union hv_stimer_config config;
-	u64 count;
-	u64 exp_time;
-	struct hv_message msg;
-	bool msg_pending;
-};
-
-struct kvm_vcpu_hv {
-	u32 vp_index;
-	u64 hv_vapic;
-	s64 runtime_offset;
-	struct kvm_vcpu_hv_synic synic;
-	struct kvm_hyperv_exit exit;
-	struct kvm_vcpu_hv_stimer stimer[4];
-	long unsigned int stimer_pending_bitmap[1];
-	cpumask_t tlb_flush;
-};
+struct kvm_vcpu_hv;
 
 struct kvm_vcpu_arch {
 	long unsigned int regs[17];
@@ -32032,6 +35388,7 @@ struct kvm_vcpu_arch {
 	u64 ia32_misc_enable_msr;
 	u64 smbase;
 	u64 smi_count;
+	bool at_instruction_boundary;
 	bool tpr_access_reporting;
 	bool xsaves_enabled;
 	u64 ia32_xss;
@@ -32047,21 +35404,22 @@ struct kvm_vcpu_arch {
 	struct kvm_mmu_memory_cache mmu_shadow_page_cache;
 	struct kvm_mmu_memory_cache mmu_gfn_array_cache;
 	struct kvm_mmu_memory_cache mmu_page_header_cache;
-	struct fpu *user_fpu;
-	struct fpu *guest_fpu;
+	struct fpu_guest guest_fpu;
 	u64 xcr0;
 	u64 guest_supported_xcr0;
 	struct kvm_pio_request pio;
 	void *pio_data;
+	void *sev_pio_data;
+	unsigned int sev_pio_count;
 	u8 event_exit_inst_len;
 	struct kvm_queued_exception exception;
 	struct kvm_queued_interrupt interrupt;
 	int halt_request;
 	int cpuid_nent;
 	struct kvm_cpuid_entry2 *cpuid_entries;
-	long unsigned int cr3_lm_rsvd_bits;
+	bool is_amd_compatible;
+	u64 reserved_gpa_bits;
 	int maxphyaddr;
-	int max_tdp_level;
 	struct x86_emulate_ctxt *emulate_ctxt;
 	bool emulate_regs_need_sync_to_vcpu;
 	bool emulate_regs_need_sync_from_vcpu;
@@ -32076,7 +35434,7 @@ struct kvm_vcpu_arch {
 		u8 preempted;
 		u64 msr_val;
 		u64 last_steal;
-		struct gfn_to_pfn_cache cache;
+		struct gfn_to_hva_cache cache;
 	} st;
 	u64 l1_tsc_offset;
 	u64 tsc_offset;
@@ -32093,6 +35451,7 @@ struct kvm_vcpu_arch {
 	u32 virtual_tsc_khz;
 	s64 ia32_tsc_adjust_msr;
 	u64 msr_ia32_power_ctl;
+	u64 l1_tsc_scaling_ratio;
 	u64 tsc_scaling_ratio;
 	atomic_t nmi_queued;
 	unsigned int nmi_pending;
@@ -32119,7 +35478,9 @@ struct kvm_vcpu_arch {
 	u64 mmio_gen;
 	struct kvm_pmu pmu;
 	long unsigned int singlestep_rip;
-	struct kvm_vcpu_hv hyperv;
+	bool hyperv_enabled;
+	struct kvm_vcpu_hv *hyperv;
+	struct kvm_vcpu_xen xen;
 	cpumask_var_t wbinvd_dirty_mask;
 	long unsigned int last_retry_eip;
 	long unsigned int last_retry_addr;
@@ -32155,12 +35516,56 @@ struct kvm_vcpu_arch {
 	int pending_external_vector;
 	bool preempted_in_kernel;
 	bool l1tf_flush_l1d;
-	unsigned int last_vmentry_cpu;
+	int last_vmentry_cpu;
 	u64 msr_hwcr;
 	struct {
 		u32 features;
 		bool enforce;
 	} pv_cpuid;
+	bool guest_state_protected;
+	bool pdptrs_from_userspace;
+	hpa_t hv_root_tdp;
+};
+
+struct kvm_vcpu_stat {
+	struct kvm_vcpu_stat_generic generic;
+	u64 pf_fixed;
+	u64 pf_guest;
+	u64 tlb_flush;
+	u64 invlpg;
+	u64 exits;
+	u64 io_exits;
+	u64 mmio_exits;
+	u64 signal_exits;
+	u64 irq_window_exits;
+	u64 nmi_window_exits;
+	u64 l1d_flush;
+	u64 halt_exits;
+	u64 request_irq_exits;
+	u64 irq_exits;
+	u64 host_state_reload;
+	u64 fpu_reload;
+	u64 insn_emulation;
+	u64 insn_emulation_fail;
+	u64 hypercalls;
+	u64 irq_injections;
+	u64 nmi_injections;
+	u64 req_event;
+	u64 nested_run;
+	u64 directed_yield_attempted;
+	u64 directed_yield_successful;
+	u64 preemption_reported;
+	u64 preemption_other;
+	u64 guest_mode;
+};
+
+struct kvm_dirty_ring {
+	u32 dirty_index;
+	u32 reset_index;
+	u32 size;
+	u32 soft_limit;
+	struct kvm_dirty_gfn *dirty_gfns;
+	int index;
 };
 
 struct kvm_vcpu {
@@ -32181,7 +35586,6 @@ struct kvm_vcpu {
 	struct pid *pid;
 	int sigset_active;
 	sigset_t sigset;
-	struct kvm_vcpu_stat stat;
 	unsigned int halt_poll_ns;
 	bool valid_wakeup;
 	int mmio_needed;
@@ -32203,30 +35607,49 @@ struct kvm_vcpu {
 	bool preempted;
 	bool ready;
 	struct kvm_vcpu_arch arch;
+	struct kvm_vcpu_stat stat;
+	char stats_id[48];
+	struct kvm_dirty_ring dirty_ring;
+	int last_used_slot;
 };
 
 struct kvm_vm_stat {
-	ulong mmu_shadow_zapped;
-	ulong mmu_pte_write;
-	ulong mmu_pde_zapped;
-	ulong mmu_flooded;
-	ulong mmu_recycled;
-	ulong mmu_cache_miss;
-	ulong mmu_unsync;
-	ulong remote_tlb_flush;
-	ulong lpages;
-	ulong nx_lpage_splits;
-	ulong max_mmu_page_hash_collisions;
+	struct kvm_vm_stat_generic generic;
+	u64 mmu_shadow_zapped;
+	u64 mmu_pte_write;
+	u64 mmu_pde_zapped;
+	u64 mmu_flooded;
+	u64 mmu_recycled;
+	u64 mmu_cache_miss;
+	u64 mmu_unsync;
+	union {
+		struct {
+			atomic64_t pages_4k;
+			atomic64_t pages_2m;
+			atomic64_t pages_1g;
+		};
+		atomic64_t pages[3];
+	};
+	u64 nx_lpage_splits;
+	u64 max_mmu_page_hash_collisions;
+	u64 max_mmu_rmap_size;
 };
 
-struct iommu_domain;
-
 struct kvm_pic;
 
 struct kvm_ioapic;
 
 struct kvm_pit;
 
+enum hv_tsc_page_status {
+	HV_TSC_PAGE_UNSET = 0,
+	HV_TSC_PAGE_GUEST_CHANGED = 1,
+	HV_TSC_PAGE_HOST_CHANGED = 2,
+	HV_TSC_PAGE_SET = 3,
+	HV_TSC_PAGE_UPDATING = 4,
+	HV_TSC_PAGE_BROKEN = 5,
+};
+
 struct kvm_hv_syndbg {
 	struct {
 		u64 control;
@@ -32243,6 +35666,7 @@ struct kvm_hv {
 	u64 hv_guest_os_id;
 	u64 hv_hypercall;
 	u64 hv_tsc_page;
+	enum hv_tsc_page_status hv_tsc_page_status;
 	u64 hv_crash_param[5];
 	u64 hv_crash_ctl;
 	struct ms_hyperv_tsc_page tsc_ref;
@@ -32251,10 +35675,17 @@ struct kvm_hv {
 	u64 hv_tsc_emulation_control;
 	u64 hv_tsc_emulation_status;
 	atomic_t num_mismatched_vp_indexes;
+	unsigned int synic_auto_eoi_used;
 	struct hv_partition_assist_pg *hv_pa_pg;
 	struct kvm_hv_syndbg hv_syndbg;
 };
 
+struct kvm_xen {
+	bool long_mode;
+	u8 upcall_vector;
+	gfn_t shinfo_gfn;
+};
+
 enum kvm_irqchip_mode {
 	KVM_IRQCHIP_NONE = 0,
 	KVM_IRQCHIP_KERNEL = 1,
@@ -32277,6 +35708,7 @@ struct kvm_arch {
 	struct list_head lpage_disallowed_mmu_pages;
 	struct kvm_page_track_notifier_node mmu_sp_tracker;
 	struct kvm_page_track_notifier_head track_notifier_head;
+	spinlock_t mmu_unsync_pages_lock;
 	struct list_head assigned_dev_head;
 	struct iommu_domain *iommu_domain;
 	bool iommu_noncoherent;
@@ -32289,7 +35721,8 @@ struct kvm_arch {
 	struct mutex apic_map_lock;
 	struct kvm_apic_map *apic_map;
 	atomic_t apic_map_dirty;
-	bool apic_access_page_done;
+	struct mutex apicv_update_lock;
+	bool apic_access_memslot_enabled;
 	long unsigned int apicv_inhibit_reasons;
 	gpa_t wall_clock;
 	bool mwait_in_guest;
@@ -32307,7 +35740,7 @@ struct kvm_arch {
 	u64 cur_tsc_offset;
 	u64 cur_tsc_generation;
 	int nr_vcpus_matched_tsc;
-	spinlock_t pvclock_gtod_sync_lock;
+	raw_spinlock_t pvclock_gtod_sync_lock;
 	bool use_master_clock;
 	u64 master_kernel_ns;
 	u64 master_cycle_now;
@@ -32316,10 +35749,12 @@ struct kvm_arch {
 	struct kvm_xen_hvm_config xen_hvm_config;
 	struct hlist_head mask_notifier_list;
 	struct kvm_hv hyperv;
+	struct kvm_xen xen;
 	bool backwards_tsc_observed;
 	bool boot_vcpu_runs_old_kvmclock;
 	u32 bsp_vcpu_id;
 	u64 disabled_quirks;
+	int cpu_dirty_logging_count;
 	enum kvm_irqchip_mode irqchip_mode;
 	u8 nr_reserved_ioapic_pins;
 	bool disabled_lapic_found;
@@ -32328,13 +35763,20 @@ struct kvm_arch {
 	bool guest_can_read_msr_platform_info;
 	bool exception_payload_enabled;
 	bool bus_lock_detection_enabled;
+	bool exit_on_emulation_error;
 	u32 user_space_msr_mask;
 	struct kvm_x86_msr_filter *msr_filter;
+	u32 hypercall_exit_enabled;
+	bool sgx_provisioning_allowed;
 	struct kvm_pmu_event_filter *pmu_event_filter;
 	struct task_struct *nx_lpage_recovery_thread;
 	bool tdp_mmu_enabled;
+	atomic64_t tdp_mmu_pages;
 	struct list_head tdp_mmu_roots;
-	struct list_head tdp_mmu_pages;
+	spinlock_t tdp_mmu_pages_lock;
+	bool memslots_have_rmaps;
+	hpa_t hv_root_tdp;
+	spinlock_t hv_root_tdp_lock;
 };
 
 struct kvm_memslots;
@@ -32346,11 +35788,15 @@ struct kvm_irq_routing_table;
 struct kvm_stat_data;
 
 struct kvm {
-	spinlock_t mmu_lock;
+	rwlock_t mmu_lock;
 	struct mutex slots_lock;
+	struct mutex slots_arch_lock;
 	struct mm_struct *mm;
 	struct kvm_memslots *memslots[2];
-	struct kvm_vcpu *vcpus[288];
+	struct kvm_vcpu *vcpus[1024];
+	spinlock_t mn_invalidate_lock;
+	long unsigned int mn_active_invalidate_count;
+	struct rcuwait mn_memslots_update_rcuwait;
 	atomic_t online_vcpus;
 	int created_vcpus;
 	int last_boosted_vcpu;
@@ -32376,7 +35822,8 @@ struct kvm {
 	struct mmu_notifier mmu_notifier;
 	long unsigned int mmu_notifier_seq;
 	long int mmu_notifier_count;
-	long int tlbs_dirty;
+	long unsigned int mmu_notifier_range_start;
+	long unsigned int mmu_notifier_range_end;
 	struct list_head devices;
 	u64 manual_dirty_log_protect;
 	struct dentry *debugfs_dentry;
@@ -32385,7 +35832,10 @@ struct kvm {
 	struct srcu_struct irq_srcu;
 	pid_t userspace_pid;
 	unsigned int max_halt_poll_ns;
+	u32 dirty_ring_size;
 	bool vm_bugged;
+	struct notifier_block pm_notifier;
+	char stats_id[48];
 };
 
 enum kvm_reg {
@@ -32417,10 +35867,65 @@ enum kvm_reg {
 	VCPU_EXREG_EXIT_INFO_2 = 24,
 };
 
+enum exit_fastpath_completion {
+	EXIT_FASTPATH_NONE = 0,
+	EXIT_FASTPATH_REENTER_GUEST = 1,
+	EXIT_FASTPATH_EXIT_HANDLED = 2,
+};
+
 struct kvm_rmap_head {
 	long unsigned int val;
 };
 
+struct kvm_tlb_range {
+	u64 start_gfn;
+	u64 pages;
+};
+
+struct kvm_vcpu_hv_stimer {
+	struct hrtimer timer;
+	int index;
+	union hv_stimer_config config;
+	u64 count;
+	u64 exp_time;
+	struct hv_message msg;
+	bool msg_pending;
+};
+
+struct kvm_vcpu_hv_synic {
+	u64 version;
+	u64 control;
+	u64 msg_page;
+	u64 evt_page;
+	atomic64_t sint[16];
+	atomic_t sint_to_gsi[16];
+	long unsigned int auto_eoi_bitmap[4];
+	long unsigned int vec_bitmap[4];
+	bool active;
+	bool dont_zero_synic_pages;
+};
+
+struct kvm_vcpu_hv {
+	struct kvm_vcpu *vcpu;
+	u32 vp_index;
+	u64 hv_vapic;
+	s64 runtime_offset;
+	struct kvm_vcpu_hv_synic synic;
+	struct kvm_hyperv_exit exit;
+	struct kvm_vcpu_hv_stimer stimer[4];
+	long unsigned int stimer_pending_bitmap[1];
+	cpumask_t tlb_flush;
+	bool enforce_cpuid;
+	struct {
+		u32 features_eax;
+		u32 features_ebx;
+		u32 features_edx;
+		u32 enlightenments_eax;
+		u32 enlightenments_ebx;
+		u32 syndbg_cap_eax;
+	} cpuid_cache;
+};
+
 struct kvm_lpage_info {
 	int disallow_lpage;
 };
@@ -32449,6 +35954,154 @@ struct kvm_x86_msr_filter {
 	struct msr_bitmap_range ranges[16];
 };
 
+struct msr_data {
+	bool host_initiated;
+	u32 index;
+	u64 data;
+};
+
+struct x86_instruction_info;
+
+enum x86_intercept_stage;
+
+struct kvm_pmu_ops;
+
+struct kvm_x86_nested_ops;
+
+struct kvm_x86_ops {
+	int (*hardware_enable)(void);
+	void (*hardware_disable)(void);
+	void (*hardware_unsetup)(void);
+	bool (*cpu_has_accelerated_tpr)(void);
+	bool (*has_emulated_msr)(struct kvm *, u32);
+	void (*vcpu_after_set_cpuid)(struct kvm_vcpu *);
+	unsigned int vm_size;
+	int (*vm_init)(struct kvm *);
+	void (*vm_destroy)(struct kvm *);
+	int (*vcpu_create)(struct kvm_vcpu *);
+	void (*vcpu_free)(struct kvm_vcpu *);
+	void (*vcpu_reset)(struct kvm_vcpu *, bool);
+	void (*prepare_guest_switch)(struct kvm_vcpu *);
+	void (*vcpu_load)(struct kvm_vcpu *, int);
+	void (*vcpu_put)(struct kvm_vcpu *);
+	void (*update_exception_bitmap)(struct kvm_vcpu *);
+	int (*get_msr)(struct kvm_vcpu *, struct msr_data *);
+	int (*set_msr)(struct kvm_vcpu *, struct msr_data *);
+	u64 (*get_segment_base)(struct kvm_vcpu *, int);
+	void (*get_segment)(struct kvm_vcpu *, struct kvm_segment *, int);
+	int (*get_cpl)(struct kvm_vcpu *);
+	void (*set_segment)(struct kvm_vcpu *, struct kvm_segment *, int);
+	void (*get_cs_db_l_bits)(struct kvm_vcpu *, int *, int *);
+	bool (*is_valid_cr0)(struct kvm_vcpu *, long unsigned int);
+	void (*set_cr0)(struct kvm_vcpu *, long unsigned int);
+	bool (*is_valid_cr4)(struct kvm_vcpu *, long unsigned int);
+	void (*set_cr4)(struct kvm_vcpu *, long unsigned int);
+	int (*set_efer)(struct kvm_vcpu *, u64);
+	void (*get_idt)(struct kvm_vcpu *, struct desc_ptr *);
+	void (*set_idt)(struct kvm_vcpu *, struct desc_ptr *);
+	void (*get_gdt)(struct kvm_vcpu *, struct desc_ptr *);
+	void (*set_gdt)(struct kvm_vcpu *, struct desc_ptr *);
+	void (*sync_dirty_debug_regs)(struct kvm_vcpu *);
+	void (*set_dr7)(struct kvm_vcpu *, long unsigned int);
+	void (*cache_reg)(struct kvm_vcpu *, enum kvm_reg);
+	long unsigned int (*get_rflags)(struct kvm_vcpu *);
+	void (*set_rflags)(struct kvm_vcpu *, long unsigned int);
+	bool (*get_if_flag)(struct kvm_vcpu *);
+	void (*tlb_flush_all)(struct kvm_vcpu *);
+	void (*tlb_flush_current)(struct kvm_vcpu *);
+	int (*tlb_remote_flush)(struct kvm *);
+	int (*tlb_remote_flush_with_range)(struct kvm *, struct kvm_tlb_range *);
+	void (*tlb_flush_gva)(struct kvm_vcpu *, gva_t);
+	void (*tlb_flush_guest)(struct kvm_vcpu *);
+	enum exit_fastpath_completion (*run)(struct kvm_vcpu *);
+	int (*handle_exit)(struct kvm_vcpu *, enum exit_fastpath_completion);
+	int (*skip_emulated_instruction)(struct kvm_vcpu *);
+	void (*update_emulated_instruction)(struct kvm_vcpu *);
+	void (*set_interrupt_shadow)(struct kvm_vcpu *, int);
+	u32 (*get_interrupt_shadow)(struct kvm_vcpu *);
+	void (*patch_hypercall)(struct kvm_vcpu *, unsigned char *);
+	void (*set_irq)(struct kvm_vcpu *);
+	void (*set_nmi)(struct kvm_vcpu *);
+	void (*queue_exception)(struct kvm_vcpu *);
+	void (*cancel_injection)(struct kvm_vcpu *);
+	int (*interrupt_allowed)(struct kvm_vcpu *, bool);
+	int (*nmi_allowed)(struct kvm_vcpu *, bool);
+	bool (*get_nmi_mask)(struct kvm_vcpu *);
+	void (*set_nmi_mask)(struct kvm_vcpu *, bool);
+	void (*enable_nmi_window)(struct kvm_vcpu *);
+	void (*enable_irq_window)(struct kvm_vcpu *);
+	void (*update_cr8_intercept)(struct kvm_vcpu *, int, int);
+	bool (*check_apicv_inhibit_reasons)(ulong);
+	void (*refresh_apicv_exec_ctrl)(struct kvm_vcpu *);
+	void (*hwapic_irr_update)(struct kvm_vcpu *, int);
+	void (*hwapic_isr_update)(struct kvm_vcpu *, int);
+	bool (*guest_apic_has_interrupt)(struct kvm_vcpu *);
+	void (*load_eoi_exitmap)(struct kvm_vcpu *, u64 *);
+	void (*set_virtual_apic_mode)(struct kvm_vcpu *);
+	void (*set_apic_access_page_addr)(struct kvm_vcpu *);
+	int (*deliver_posted_interrupt)(struct kvm_vcpu *, int);
+	int (*sync_pir_to_irr)(struct kvm_vcpu *);
+	int (*set_tss_addr)(struct kvm *, unsigned int);
+	int (*set_identity_map_addr)(struct kvm *, u64);
+	u64 (*get_mt_mask)(struct kvm_vcpu *, gfn_t, bool);
+	void (*load_mmu_pgd)(struct kvm_vcpu *, hpa_t, int);
+	bool (*has_wbinvd_exit)(void);
+	u64 (*get_l2_tsc_offset)(struct kvm_vcpu *);
+	u64 (*get_l2_tsc_multiplier)(struct kvm_vcpu *);
+	void (*write_tsc_offset)(struct kvm_vcpu *, u64);
+	void (*write_tsc_multiplier)(struct kvm_vcpu *, u64);
+	void (*get_exit_info)(struct kvm_vcpu *, u64 *, u64 *, u32 *, u32 *);
+	int (*check_intercept)(struct kvm_vcpu *, struct x86_instruction_info *, enum x86_intercept_stage, struct x86_exception *);
+	void (*handle_exit_irqoff)(struct kvm_vcpu *);
+	void (*request_immediate_exit)(struct kvm_vcpu *);
+	void (*sched_in)(struct kvm_vcpu *, int);
+	int cpu_dirty_log_size;
+	void (*update_cpu_dirty_logging)(struct kvm_vcpu *);
+	const struct kvm_pmu_ops *pmu_ops;
+	const struct kvm_x86_nested_ops *nested_ops;
+	int (*pre_block)(struct kvm_vcpu *);
+	void (*post_block)(struct kvm_vcpu *);
+	void (*vcpu_blocking)(struct kvm_vcpu *);
+	void (*vcpu_unblocking)(struct kvm_vcpu *);
+	int (*update_pi_irte)(struct kvm *, unsigned int, uint32_t, bool);
+	void (*start_assignment)(struct kvm *);
+	void (*apicv_post_state_restore)(struct kvm_vcpu *);
+	bool (*dy_apicv_has_pending_interrupt)(struct kvm_vcpu *);
+	int (*set_hv_timer)(struct kvm_vcpu *, u64, bool *);
+	void (*cancel_hv_timer)(struct kvm_vcpu *);
+	void (*setup_mce)(struct kvm_vcpu *);
+	int (*smi_allowed)(struct kvm_vcpu *, bool);
+	int (*enter_smm)(struct kvm_vcpu *, char *);
+	int (*leave_smm)(struct kvm_vcpu *, const char *);
+	void (*enable_smi_window)(struct kvm_vcpu *);
+	int (*mem_enc_op)(struct kvm *, void *);
+	int (*mem_enc_reg_region)(struct kvm *, struct kvm_enc_region *);
+	int (*mem_enc_unreg_region)(struct kvm *, struct kvm_enc_region *);
+	int (*vm_copy_enc_context_from)(struct kvm *, unsigned int);
+	void (*guest_memory_reclaimed)(struct kvm *);
+	int (*get_msr_feature)(struct kvm_msr_entry *);
+	bool (*can_emulate_instruction)(struct kvm_vcpu *, void *, int);
+	bool (*apic_init_signal_blocked)(struct kvm_vcpu *);
+	int (*enable_direct_tlbflush)(struct kvm_vcpu *);
+	void (*migrate_timers)(struct kvm_vcpu *);
+	void (*msr_filter_changed)(struct kvm_vcpu *);
+	int (*complete_emulated_msr)(struct kvm_vcpu *, int);
+	void (*vcpu_deliver_sipi_vector)(struct kvm_vcpu *, u8);
+};
+
+struct kvm_x86_nested_ops {
+	void (*leave_nested)(struct kvm_vcpu *);
+	int (*check_events)(struct kvm_vcpu *);
+	bool (*hv_timer_pending)(struct kvm_vcpu *);
+	void (*triple_fault)(struct kvm_vcpu *);
+	int (*get_state)(struct kvm_vcpu *, struct kvm_nested_state *, unsigned int);
+	int (*set_state)(struct kvm_vcpu *, struct kvm_nested_state *, struct kvm_nested_state *);
+	bool (*get_nested_state_pages)(struct kvm_vcpu *);
+	int (*write_log_dirty)(struct kvm_vcpu *, gpa_t);
+	int (*enable_evmcs)(struct kvm_vcpu *, uint16_t *);
+	uint16_t (*get_evmcs_version)(struct kvm_vcpu *);
+};
+
 struct kvm_io_device;
 
 struct kvm_io_range {
@@ -32479,29 +36132,28 @@ struct kvm_irq_routing_table {
 
 struct kvm_memslots {
 	u64 generation;
-	short int id_to_index[512];
-	atomic_t lru_slot;
+	short int id_to_index[32767];
+	atomic_t last_used_slot;
 	int used_slots;
 	struct kvm_memory_slot memslots[0];
 };
 
-struct kvm_stats_debugfs_item;
-
-struct kvm_stat_data {
-	struct kvm *kvm;
-	struct kvm_stats_debugfs_item *dbgfs_item;
-};
-
 enum kvm_stat_kind {
 	KVM_STAT_VM = 0,
 	KVM_STAT_VCPU = 1,
 };
 
-struct kvm_stats_debugfs_item {
-	const char *name;
-	int offset;
+struct _kvm_stats_desc;
+
+struct kvm_stat_data {
+	struct kvm *kvm;
+	const struct _kvm_stats_desc *desc;
 	enum kvm_stat_kind kind;
-	int mode;
+};
+
+struct _kvm_stats_desc {
+	struct kvm_stats_desc desc;
+	char name[48];
 };
 
 enum kcmp_type {
@@ -32777,16 +36429,6 @@ struct process_timer {
 	struct task_struct *task;
 };
 
-enum tick_device_mode {
-	TICKDEV_MODE_PERIODIC = 0,
-	TICKDEV_MODE_ONESHOT = 1,
-};
-
-struct tick_device {
-	struct clock_event_device *evtdev;
-	enum tick_device_mode mode;
-};
-
 struct ktime_timestamps {
 	u64 mono;
 	u64 boot;
@@ -32797,6 +36439,7 @@ struct system_time_snapshot {
 	u64 cycles;
 	ktime_t real;
 	ktime_t raw;
+	enum clocksource_ids cs_id;
 	unsigned int clock_was_set_seq;
 	u8 cs_was_changed_seq;
 };
@@ -32826,6 +36469,64 @@ struct tk_fast {
 	struct tk_read_base base[2];
 };
 
+struct rtc_wkalrm {
+	unsigned char enabled;
+	unsigned char pending;
+	struct rtc_time time;
+};
+
+struct rtc_class_ops {
+	int (*ioctl)(struct device *, unsigned int, long unsigned int);
+	int (*read_time)(struct device *, struct rtc_time *);
+	int (*set_time)(struct device *, struct rtc_time *);
+	int (*read_alarm)(struct device *, struct rtc_wkalrm *);
+	int (*set_alarm)(struct device *, struct rtc_wkalrm *);
+	int (*proc)(struct device *, struct seq_file *);
+	int (*alarm_irq_enable)(struct device *, unsigned int);
+	int (*read_offset)(struct device *, long int *);
+	int (*set_offset)(struct device *, long int);
+};
+
+struct rtc_device;
+
+struct rtc_timer {
+	struct timerqueue_node node;
+	ktime_t period;
+	void (*func)(struct rtc_device *);
+	struct rtc_device *rtc;
+	int enabled;
+};
+
+struct rtc_device {
+	struct device dev;
+	struct module *owner;
+	int id;
+	const struct rtc_class_ops *ops;
+	struct mutex ops_lock;
+	struct cdev char_dev;
+	long unsigned int flags;
+	long unsigned int irq_data;
+	spinlock_t irq_lock;
+	wait_queue_head_t irq_queue;
+	struct fasync_struct *async_queue;
+	int irq_freq;
+	int max_user_freq;
+	struct timerqueue_head timerqueue;
+	struct rtc_timer aie_timer;
+	struct rtc_timer uie_rtctimer;
+	struct hrtimer pie_timer;
+	int pie_enabled;
+	struct work_struct irqwork;
+	int uie_unsupported;
+	long unsigned int set_offset_nsec;
+	long unsigned int features[1];
+	time64_t range_min;
+	timeu64_t range_max;
+	time64_t start_secs;
+	time64_t offset_secs;
+	bool set_start_time;
+};
+
 typedef s64 int64_t;
 
 enum wd_read_status {
@@ -32834,6 +36535,16 @@ enum wd_read_status {
 	WD_READ_SKIP = 2,
 };
 
+enum tick_device_mode {
+	TICKDEV_MODE_PERIODIC = 0,
+	TICKDEV_MODE_ONESHOT = 1,
+};
+
+struct tick_device {
+	struct clock_event_device *evtdev;
+	enum tick_device_mode mode;
+};
+
 enum tick_nohz_mode {
 	NOHZ_MODE_INACTIVE = 0,
 	NOHZ_MODE_LOWRES = 1,
@@ -32865,6 +36576,8 @@ struct tick_sched {
 	u64 next_timer;
 	ktime_t idle_expires;
 	atomic_t tick_dep_mask;
+	long unsigned int last_tick_jiffies;
+	unsigned int stalled_jiffies;
 };
 
 struct timer_list_iter {
@@ -32901,12 +36614,6 @@ struct timecounter {
 
 typedef __kernel_timer_t timer_t;
 
-struct rtc_wkalrm {
-	unsigned char enabled;
-	unsigned char pending;
-	struct rtc_time time;
-};
-
 enum alarmtimer_type {
 	ALARM_REALTIME = 0,
 	ALARM_BOOTTIME = 1,
@@ -32935,6 +36642,7 @@ struct cpu_timer {
 	struct pid *pid;
 	struct list_head elist;
 	int firing;
+	struct task_struct *handling;
 };
 
 struct k_clock;
@@ -32996,63 +36704,10 @@ struct class_interface {
 	void (*remove_dev)(struct device *, struct class_interface *);
 };
 
-struct rtc_class_ops {
-	int (*ioctl)(struct device *, unsigned int, long unsigned int);
-	int (*read_time)(struct device *, struct rtc_time *);
-	int (*set_time)(struct device *, struct rtc_time *);
-	int (*read_alarm)(struct device *, struct rtc_wkalrm *);
-	int (*set_alarm)(struct device *, struct rtc_wkalrm *);
-	int (*proc)(struct device *, struct seq_file *);
-	int (*alarm_irq_enable)(struct device *, unsigned int);
-	int (*read_offset)(struct device *, long int *);
-	int (*set_offset)(struct device *, long int);
-};
-
-struct rtc_device;
-
-struct rtc_timer {
-	struct timerqueue_node node;
-	ktime_t period;
-	void (*func)(struct rtc_device *);
-	struct rtc_device *rtc;
-	int enabled;
-};
-
-struct rtc_device {
-	struct device dev;
-	struct module *owner;
-	int id;
-	const struct rtc_class_ops *ops;
-	struct mutex ops_lock;
-	struct cdev char_dev;
-	long unsigned int flags;
-	long unsigned int irq_data;
-	spinlock_t irq_lock;
-	wait_queue_head_t irq_queue;
-	struct fasync_struct *async_queue;
-	int irq_freq;
-	int max_user_freq;
-	struct timerqueue_head timerqueue;
-	struct rtc_timer aie_timer;
-	struct rtc_timer uie_rtctimer;
-	struct hrtimer pie_timer;
-	int pie_enabled;
-	struct work_struct irqwork;
-	int uie_unsupported;
-	long int set_offset_nsec;
-	bool registered;
-	bool nvram_old_abi;
-	struct bin_attribute *nvram;
-	time64_t range_min;
-	timeu64_t range_max;
-	time64_t start_secs;
-	time64_t offset_secs;
-	bool set_start_time;
-};
-
 struct platform_driver {
 	int (*probe)(struct platform_device *);
 	int (*remove)(struct platform_device *);
+	void (*remove_new)(struct platform_device *);
 	void (*shutdown)(struct platform_device *);
 	int (*suspend)(struct platform_device *, pm_message_t);
 	int (*resume)(struct platform_device *);
@@ -33092,7 +36747,7 @@ typedef void (*btf_trace_alarmtimer_cancel)(void *, struct alarm *, ktime_t);
 struct alarm_base {
 	spinlock_t lock;
 	struct timerqueue_head timerqueue;
-	ktime_t (*get_ktime)();
+	ktime_t (*get_ktime)(void);
 	void (*get_timespec)(struct timespec64 *);
 	clockid_t base_clockid;
 };
@@ -33198,7 +36853,7 @@ union futex_key {
 
 struct futex_pi_state {
 	struct list_head list;
-	struct rt_mutex pi_mutex;
+	struct rt_mutex_base pi_mutex;
 	struct task_struct *owner;
 	refcount_t refcount;
 	union futex_key key;
@@ -33213,6 +36868,16 @@ struct futex_q {
 	struct rt_mutex_waiter *rt_waiter;
 	union futex_key *requeue_pi_key;
 	u32 bitset;
+	atomic_t requeue_state;
+};
+
+enum {
+	Q_REQUEUE_PI_NONE = 0,
+	Q_REQUEUE_PI_IGNORE = 1,
+	Q_REQUEUE_PI_IN_PROGRESS = 2,
+	Q_REQUEUE_PI_WAIT = 3,
+	Q_REQUEUE_PI_DONE = 4,
+	Q_REQUEUE_PI_LOCKED = 5,
 };
 
 struct futex_hash_bucket {
@@ -33236,10 +36901,12 @@ struct dma_chan {
 	const char *device_id;
 };
 
-typedef bool (*smp_cond_func_t)(int, void *);
+struct cfd_percpu {
+	call_single_data_t csd;
+};
 
 struct call_function_data {
-	call_single_data_t *csd;
+	struct cfd_percpu *pcpu;
 	cpumask_var_t cpumask;
 	cpumask_var_t cpumask_ipi;
 };
@@ -33292,20 +36959,6 @@ struct module_notes_attrs {
 	struct bin_attribute attrs[0];
 };
 
-enum mod_license {
-	NOT_GPL_ONLY = 0,
-	GPL_ONLY = 1,
-	WILL_BE_GPL_ONLY = 2,
-};
-
-struct symsearch {
-	const struct kernel_symbol *start;
-	const struct kernel_symbol *stop;
-	const s32 *crcs;
-	enum mod_license license;
-	bool unused;
-};
-
 enum kernel_read_file_id {
 	READING_UNKNOWN = 0,
 	READING_FIRMWARE = 1,
@@ -33419,6 +37072,18 @@ struct mod_tree_root {
 	long unsigned int addr_max;
 };
 
+enum mod_license {
+	NOT_GPL_ONLY = 0,
+	GPL_ONLY = 1,
+};
+
+struct symsearch {
+	const struct kernel_symbol *start;
+	const struct kernel_symbol *stop;
+	const s32 *crcs;
+	enum mod_license license;
+};
+
 struct find_symbol_arg {
 	const char *name;
 	bool gplok;
@@ -33444,99 +37109,6 @@ struct module_signature {
 	__be32 sig_len;
 };
 
-struct crypto_alg;
-
-struct crypto_tfm {
-	u32 crt_flags;
-	int node;
-	void (*exit)(struct crypto_tfm *);
-	struct crypto_alg *__crt_alg;
-	void *__crt_ctx[0];
-};
-
-struct cipher_alg {
-	unsigned int cia_min_keysize;
-	unsigned int cia_max_keysize;
-	int (*cia_setkey)(struct crypto_tfm *, const u8 *, unsigned int);
-	void (*cia_encrypt)(struct crypto_tfm *, u8 *, const u8 *);
-	void (*cia_decrypt)(struct crypto_tfm *, u8 *, const u8 *);
-};
-
-struct compress_alg {
-	int (*coa_compress)(struct crypto_tfm *, const u8 *, unsigned int, u8 *, unsigned int *);
-	int (*coa_decompress)(struct crypto_tfm *, const u8 *, unsigned int, u8 *, unsigned int *);
-};
-
-struct crypto_type;
-
-struct crypto_alg {
-	struct list_head cra_list;
-	struct list_head cra_users;
-	u32 cra_flags;
-	unsigned int cra_blocksize;
-	unsigned int cra_ctxsize;
-	unsigned int cra_alignmask;
-	int cra_priority;
-	refcount_t cra_refcnt;
-	char cra_name[128];
-	char cra_driver_name[128];
-	const struct crypto_type *cra_type;
-	union {
-		struct cipher_alg cipher;
-		struct compress_alg compress;
-	} cra_u;
-	int (*cra_init)(struct crypto_tfm *);
-	void (*cra_exit)(struct crypto_tfm *);
-	void (*cra_destroy)(struct crypto_alg *);
-	struct module *cra_module;
-};
-
-struct crypto_instance;
-
-struct crypto_type {
-	unsigned int (*ctxsize)(struct crypto_alg *, u32, u32);
-	unsigned int (*extsize)(struct crypto_alg *);
-	int (*init)(struct crypto_tfm *, u32, u32);
-	int (*init_tfm)(struct crypto_tfm *);
-	void (*show)(struct seq_file *, struct crypto_alg *);
-	int (*report)(struct sk_buff *, struct crypto_alg *);
-	void (*free)(struct crypto_instance *);
-	unsigned int type;
-	unsigned int maskclear;
-	unsigned int maskset;
-	unsigned int tfmsize;
-};
-
-struct crypto_shash;
-
-struct shash_desc {
-	struct crypto_shash *tfm;
-	void *__ctx[0];
-};
-
-struct crypto_shash {
-	unsigned int descsize;
-	struct crypto_tfm base;
-};
-
-struct shash_alg {
-	int (*init)(struct shash_desc *);
-	int (*update)(struct shash_desc *, const u8 *, unsigned int);
-	int (*final)(struct shash_desc *, u8 *);
-	int (*finup)(struct shash_desc *, const u8 *, unsigned int, u8 *);
-	int (*digest)(struct shash_desc *, const u8 *, unsigned int, u8 *);
-	int (*export)(struct shash_desc *, void *);
-	int (*import)(struct shash_desc *, const void *);
-	int (*setkey)(struct crypto_shash *, const u8 *, unsigned int);
-	int (*init_tfm)(struct crypto_shash *);
-	void (*exit_tfm)(struct crypto_shash *);
-	unsigned int descsize;
-	long: 0;
-	unsigned int digestsize;
-	unsigned int statesize;
-	struct crypto_alg base;
-};
-
 enum pkey_id_type {
 	PKEY_ID_PGP = 0,
 	PKEY_ID_X509 = 1,
@@ -33611,11 +37183,6 @@ struct elf64_note {
 	Elf64_Word n_type;
 };
 
-struct elf_note_section {
-	struct elf64_note n_hdr;
-	u8 n_data[0];
-};
-
 typedef long unsigned int elf_greg_t;
 
 typedef elf_greg_t elf_gregset_t[27];
@@ -33626,7 +37193,7 @@ struct elf_siginfo {
 	int si_errno;
 };
 
-struct elf_prstatus {
+struct elf_prstatus_common {
 	struct elf_siginfo pr_info;
 	short int pr_cursig;
 	long unsigned int pr_sigpend;
@@ -33639,6 +37206,10 @@ struct elf_prstatus {
 	struct __kernel_old_timeval pr_stime;
 	struct __kernel_old_timeval pr_cutime;
 	struct __kernel_old_timeval pr_cstime;
+};
+
+struct elf_prstatus {
+	struct elf_prstatus_common common;
 	elf_gregset_t pr_reg;
 	int pr_fpvalid;
 };
@@ -33665,6 +37236,30 @@ struct elf64_phdr {
 
 typedef struct elf64_phdr Elf64_Phdr;
 
+enum hash_algo {
+	HASH_ALGO_MD4 = 0,
+	HASH_ALGO_MD5 = 1,
+	HASH_ALGO_SHA1 = 2,
+	HASH_ALGO_RIPE_MD_160 = 3,
+	HASH_ALGO_SHA256 = 4,
+	HASH_ALGO_SHA384 = 5,
+	HASH_ALGO_SHA512 = 6,
+	HASH_ALGO_SHA224 = 7,
+	HASH_ALGO_RIPE_MD_128 = 8,
+	HASH_ALGO_RIPE_MD_256 = 9,
+	HASH_ALGO_RIPE_MD_320 = 10,
+	HASH_ALGO_WP_256 = 11,
+	HASH_ALGO_WP_384 = 12,
+	HASH_ALGO_WP_512 = 13,
+	HASH_ALGO_TGR_128 = 14,
+	HASH_ALGO_TGR_160 = 15,
+	HASH_ALGO_TGR_192 = 16,
+	HASH_ALGO_SM3_256 = 17,
+	HASH_ALGO_STREEBOG_256 = 18,
+	HASH_ALGO_STREEBOG_512 = 19,
+	HASH_ALGO__LAST = 20,
+};
+
 struct kexec_sha_region {
 	long unsigned int start;
 	long unsigned int len;
@@ -33678,12 +37273,12 @@ enum migrate_reason {
 	MR_MEMPOLICY_MBIND = 4,
 	MR_NUMA_MISPLACED = 5,
 	MR_CONTIG_RANGE = 6,
-	MR_TYPES = 7,
+	MR_LONGTERM_PIN = 7,
+	MR_DEMOTION = 8,
+	MR_TYPES = 9,
 };
 
-typedef __kernel_ulong_t __kernel_ino_t;
-
-typedef __kernel_ino_t ino_t;
+typedef __kernel_ulong_t ino_t;
 
 enum bpf_link_type {
 	BPF_LINK_TYPE_UNSPEC = 0,
@@ -33693,7 +37288,8 @@ enum bpf_link_type {
 	BPF_LINK_TYPE_ITER = 4,
 	BPF_LINK_TYPE_NETNS = 5,
 	BPF_LINK_TYPE_XDP = 6,
-	MAX_BPF_LINK_TYPE = 7,
+	BPF_LINK_TYPE_PERF_EVENT = 7,
+	MAX_BPF_LINK_TYPE = 8,
 };
 
 struct bpf_link_info {
@@ -33707,6 +37303,8 @@ struct bpf_link_info {
 		} raw_tracepoint;
 		struct {
 			__u32 attach_type;
+			__u32 target_obj_id;
+			__u32 target_btf_id;
 		} tracing;
 		struct {
 			__u64 cgroup_id;
@@ -33762,6 +37360,7 @@ enum {
 	CGRP_CPUSET_CLONE_CHILDREN = 1,
 	CGRP_FREEZE = 2,
 	CGRP_FROZEN = 3,
+	CGRP_KILL = 4,
 };
 
 enum {
@@ -33783,21 +37382,6 @@ struct cgroup_taskset {
 	struct task_struct *cur_task;
 };
 
-struct css_task_iter {
-	struct cgroup_subsys *ss;
-	unsigned int flags;
-	struct list_head *cset_pos;
-	struct list_head *cset_head;
-	struct list_head *tcset_pos;
-	struct list_head *tcset_head;
-	struct list_head *task_pos;
-	struct list_head *cur_tasks_head;
-	struct css_set *cur_cset;
-	struct css_set *cur_dcset;
-	struct task_struct *cur_task;
-	struct list_head iters_node;
-};
-
 struct cgroup_fs_context {
 	struct kernfs_fs_context kfc;
 	struct cgroup_root *root;
@@ -33922,6 +37506,11 @@ typedef void (*btf_trace_cgroup_notify_populated)(void *, struct cgroup *, const
 
 typedef void (*btf_trace_cgroup_notify_frozen)(void *, struct cgroup *, const char *, int);
 
+enum cgroup_opt_features {
+	OPT_FEATURE_PRESSURE = 0,
+	OPT_FEATURE_COUNT = 1,
+};
+
 enum cgroup2_param {
 	Opt_nsdelegate = 0,
 	Opt_memory_localevents = 1,
@@ -34027,8 +37616,6 @@ struct rdmacg_resource_pool {
 	int num_max_cnt;
 };
 
-struct root_domain;
-
 struct fmeter {
 	int cnt;
 	int val;
@@ -34053,6 +37640,10 @@ struct cpuset {
 	int partition_root_state;
 	int use_parent_ecpus;
 	int child_ecpus_count;
+	int nr_deadline_tasks;
+	int nr_migrate_dl_tasks;
+	u64 sum_migrate_dl_bw;
+	struct cgroup_file partition_file;
 };
 
 struct tmpmasks {
@@ -34104,6 +37695,23 @@ typedef enum {
 	FILE_SPREAD_SLAB = 15,
 } cpuset_filetype_t;
 
+enum misc_res_type {
+	MISC_CG_RES_SEV = 0,
+	MISC_CG_RES_SEV_ES = 1,
+	MISC_CG_RES_TYPES = 2,
+};
+
+struct misc_res {
+	long unsigned int max;
+	atomic_long_t usage;
+	bool failed;
+};
+
+struct misc_cg {
+	struct cgroup_subsys_state css;
+	struct misc_res res[2];
+};
+
 struct kernel_pkey_query {
 	__u32 supported_ops;
 	__u32 key_size;
@@ -34134,6 +37742,7 @@ struct kernel_pkey_params {
 };
 
 struct key_preparsed_payload {
+	const char *orig_description;
 	char *description;
 	union key_payload payload;
 	const void *data;
@@ -34171,6 +37780,8 @@ struct cpu_stopper {
 	bool enabled;
 	struct list_head works;
 	struct cpu_stop_work stop_work;
+	long unsigned int caller;
+	cpu_stop_fn_t fn;
 };
 
 enum multi_stop_state {
@@ -34195,9 +37806,9 @@ typedef int __kernel_mqd_t;
 typedef __kernel_mqd_t mqd_t;
 
 enum audit_state {
-	AUDIT_DISABLED = 0,
-	AUDIT_BUILD_CONTEXT = 1,
-	AUDIT_RECORD_CONTEXT = 2,
+	AUDIT_STATE_DISABLED = 0,
+	AUDIT_STATE_BUILD = 1,
+	AUDIT_STATE_RECORD = 2,
 };
 
 struct audit_cap_data {
@@ -34222,7 +37833,7 @@ struct audit_names {
 	kuid_t uid;
 	kgid_t gid;
 	dev_t rdev;
-	u32 osid;
+	struct lsmblob oblob;
 	struct audit_cap_data fcap;
 	unsigned int fcap_ver;
 	unsigned char type;
@@ -34285,7 +37896,7 @@ struct audit_context {
 	kuid_t target_auid;
 	kuid_t target_uid;
 	unsigned int target_sessionid;
-	u32 target_sid;
+	struct lsmblob target_lsm;
 	char target_comm[16];
 	struct audit_tree_refs *trees;
 	struct audit_tree_refs *first_trees;
@@ -34301,7 +37912,7 @@ struct audit_context {
 			kuid_t uid;
 			kgid_t gid;
 			umode_t mode;
-			u32 osid;
+			struct lsmblob oblob;
 			int has_perm;
 			uid_t perm_uid;
 			gid_t perm_gid;
@@ -34350,6 +37961,22 @@ struct audit_context {
 	struct audit_proctitle proctitle;
 };
 
+struct __kernel_sockaddr_storage {
+	union {
+		struct {
+			__kernel_sa_family_t ss_family;
+			char __data[126];
+		};
+		void *__align;
+	};
+};
+
+struct lsmcontext {
+	char *context;
+	u32 len;
+	int slot;
+};
+
 enum audit_nlgrps {
 	AUDIT_NLGRP_NONE = 0,
 	AUDIT_NLGRP_READLOG = 1,
@@ -34385,22 +38012,28 @@ struct audit_tty_status {
 	__u32 log_passwd;
 };
 
-struct __kernel_sockaddr_storage {
-	union {
-		struct {
-			__kernel_sa_family_t ss_family;
-			char __data[126];
-		};
-		void *__align;
-	};
-};
-
 struct audit_sig_info {
 	uid_t uid;
 	pid_t pid;
 	char ctx[0];
 };
 
+enum skb_drop_reason {
+	SKB_DROP_REASON_NOT_SPECIFIED = 0,
+	SKB_DROP_REASON_NO_SOCKET = 1,
+	SKB_DROP_REASON_PKT_TOO_SMALL = 2,
+	SKB_DROP_REASON_TCP_CSUM = 3,
+	SKB_DROP_REASON_SOCKET_FILTER = 4,
+	SKB_DROP_REASON_UDP_CSUM = 5,
+	SKB_DROP_REASON_NETFILTER_DROP = 6,
+	SKB_DROP_REASON_OTHERHOST = 7,
+	SKB_DROP_REASON_IP_CSUM = 8,
+	SKB_DROP_REASON_IP_INHDR = 9,
+	SKB_DROP_REASON_IP_RPFILTER = 10,
+	SKB_DROP_REASON_UNICAST_IN_L2_MULTICAST = 11,
+	SKB_DROP_REASON_MAX = 12,
+};
+
 struct net_generic {
 	union {
 		struct {
@@ -34540,8 +38173,9 @@ struct audit_field {
 		kuid_t uid;
 		kgid_t gid;
 		struct {
+			bool lsm_isset;
 			char *lsm_str;
-			void *lsm_rule;
+			void *lsm_rules[4];
 		};
 	};
 	u32 op;
@@ -34553,8 +38187,6 @@ struct audit_entry {
 	struct audit_krule rule;
 };
 
-struct audit_buffer;
-
 typedef int __kernel_key_t;
 
 typedef __kernel_key_t key_t;
@@ -34625,13 +38257,13 @@ enum audit_nfcfgop {
 	AUDIT_NFT_OP_INVALID = 19,
 };
 
-enum fsnotify_obj_type {
-	FSNOTIFY_OBJ_TYPE_INODE = 0,
-	FSNOTIFY_OBJ_TYPE_PARENT = 1,
-	FSNOTIFY_OBJ_TYPE_VFSMOUNT = 2,
-	FSNOTIFY_OBJ_TYPE_SB = 3,
-	FSNOTIFY_OBJ_TYPE_COUNT = 4,
-	FSNOTIFY_OBJ_TYPE_DETACHED = 4,
+enum fsnotify_iter_type {
+	FSNOTIFY_ITER_TYPE_INODE = 0,
+	FSNOTIFY_ITER_TYPE_VFSMOUNT = 1,
+	FSNOTIFY_ITER_TYPE_SB = 2,
+	FSNOTIFY_ITER_TYPE_PARENT = 3,
+	FSNOTIFY_ITER_TYPE_INODE2 = 4,
+	FSNOTIFY_ITER_TYPE_COUNT = 5,
 };
 
 struct audit_aux_data {
@@ -34652,7 +38284,7 @@ struct audit_aux_data_pids {
 	kuid_t target_auid[16];
 	kuid_t target_uid[16];
 	unsigned int target_sessionid[16];
-	u32 target_sid[16];
+	struct lsmblob target_lsm[16];
 	char target_comm[256];
 	int pid_count;
 };
@@ -34695,7 +38327,7 @@ struct fsnotify_ops {
 	int (*handle_inode_event)(struct fsnotify_mark *, u32, struct inode *, struct inode *, const struct qstr *, u32);
 	void (*free_group_priv)(struct fsnotify_group *);
 	void (*freeing_mark)(struct fsnotify_mark *, struct fsnotify_group *);
-	void (*free_event)(struct fsnotify_event *);
+	void (*free_event)(struct fsnotify_group *, struct fsnotify_event *);
 	void (*free_mark)(struct fsnotify_mark *);
 };
 
@@ -34706,12 +38338,13 @@ struct inotify_group_private_data {
 };
 
 struct fanotify_group_private_data {
+	struct hlist_head *merge_hash;
 	struct list_head access_list;
 	wait_queue_head_t access_waitq;
 	int flags;
 	int f_flags;
-	unsigned int max_marks;
-	struct user_struct *user;
+	struct ucounts *ucounts;
+	mempool_t error_events_pool;
 };
 
 struct fsnotify_group {
@@ -34724,8 +38357,9 @@ struct fsnotify_group {
 	unsigned int max_events;
 	unsigned int priority;
 	bool shutdown;
+	int flags;
+	unsigned int owner_flags;
 	struct mutex mark_mutex;
-	atomic_t num_marks;
 	atomic_t user_waits;
 	struct list_head marks_list;
 	struct fasync_struct *fsn_fa;
@@ -34739,7 +38373,8 @@ struct fsnotify_group {
 };
 
 struct fsnotify_iter_info {
-	struct fsnotify_mark *marks[4];
+	struct fsnotify_mark *marks[5];
+	struct fsnotify_group *current_group;
 	unsigned int report_mask;
 	int srcu_idx;
 };
@@ -34752,13 +38387,21 @@ struct fsnotify_mark {
 	spinlock_t lock;
 	struct hlist_node obj_list;
 	struct fsnotify_mark_connector *connector;
-	__u32 ignored_mask;
+	__u32 ignore_mask;
 	unsigned int flags;
 };
 
 struct fsnotify_event {
 	struct list_head list;
-	long unsigned int objectid;
+};
+
+enum fsnotify_obj_type {
+	FSNOTIFY_OBJ_TYPE_ANY = 4294967295,
+	FSNOTIFY_OBJ_TYPE_INODE = 0,
+	FSNOTIFY_OBJ_TYPE_VFSMOUNT = 1,
+	FSNOTIFY_OBJ_TYPE_SB = 2,
+	FSNOTIFY_OBJ_TYPE_COUNT = 3,
+	FSNOTIFY_OBJ_TYPE_DETACHED = 3,
 };
 
 struct audit_parent {
@@ -34774,8 +38417,6 @@ struct audit_fsnotify_mark {
 	struct audit_krule *rule;
 };
 
-struct audit_chunk;
-
 struct audit_tree {
 	refcount_t count;
 	int goner;
@@ -34842,13 +38483,158 @@ enum kprobe_slot_state {
 	SLOT_USED = 2,
 };
 
-struct seccomp_data {
-	int nr;
-	__u32 arch;
-	__u64 instruction_pointer;
-	__u64 args[6];
+struct kgdb_io {
+	const char *name;
+	int (*read_char)(void);
+	void (*write_char)(u8);
+	void (*flush)(void);
+	int (*init)(void);
+	void (*deinit)(void);
+	void (*pre_exception)(void);
+	void (*post_exception)(void);
+	struct console *cons;
 };
 
+enum {
+	KDB_NOT_INITIALIZED = 0,
+	KDB_INIT_EARLY = 1,
+	KDB_INIT_FULL = 2,
+};
+
+struct kgdb_state {
+	int ex_vector;
+	int signo;
+	int err_code;
+	int cpu;
+	int pass_exception;
+	long unsigned int thr_query;
+	long unsigned int threadid;
+	long int kgdb_usethreadid;
+	struct pt_regs *linux_regs;
+	atomic_t *send_ready;
+};
+
+struct debuggerinfo_struct {
+	void *debuggerinfo;
+	struct task_struct *task;
+	int exception_state;
+	int ret_state;
+	int irq_depth;
+	int enter_kgdb;
+	bool rounding_up;
+};
+
+typedef int (*get_char_func)(void);
+
+typedef enum {
+	KDB_ENABLE_ALL = 1,
+	KDB_ENABLE_MEM_READ = 2,
+	KDB_ENABLE_MEM_WRITE = 4,
+	KDB_ENABLE_REG_READ = 8,
+	KDB_ENABLE_REG_WRITE = 16,
+	KDB_ENABLE_INSPECT = 32,
+	KDB_ENABLE_FLOW_CTRL = 64,
+	KDB_ENABLE_SIGNAL = 128,
+	KDB_ENABLE_REBOOT = 256,
+	KDB_ENABLE_ALWAYS_SAFE = 512,
+	KDB_ENABLE_MASK = 1023,
+	KDB_ENABLE_ALL_NO_ARGS = 1024,
+	KDB_ENABLE_MEM_READ_NO_ARGS = 2048,
+	KDB_ENABLE_MEM_WRITE_NO_ARGS = 4096,
+	KDB_ENABLE_REG_READ_NO_ARGS = 8192,
+	KDB_ENABLE_REG_WRITE_NO_ARGS = 16384,
+	KDB_ENABLE_INSPECT_NO_ARGS = 32768,
+	KDB_ENABLE_FLOW_CTRL_NO_ARGS = 65536,
+	KDB_ENABLE_SIGNAL_NO_ARGS = 131072,
+	KDB_ENABLE_REBOOT_NO_ARGS = 262144,
+	KDB_ENABLE_ALWAYS_SAFE_NO_ARGS = 524288,
+	KDB_ENABLE_MASK_NO_ARGS = 1047552,
+	KDB_REPEAT_NO_ARGS = 1073741824,
+	KDB_REPEAT_WITH_ARGS = 2147483648,
+} kdb_cmdflags_t;
+
+typedef int (*kdb_func_t)(int, const char **);
+
+struct _kdbtab {
+	char *name;
+	kdb_func_t func;
+	char *usage;
+	char *help;
+	short int minlen;
+	kdb_cmdflags_t flags;
+	struct list_head list_node;
+};
+
+typedef struct _kdbtab kdbtab_t;
+
+typedef enum {
+	KDB_REASON_ENTER = 1,
+	KDB_REASON_ENTER_SLAVE = 2,
+	KDB_REASON_BREAK = 3,
+	KDB_REASON_DEBUG = 4,
+	KDB_REASON_OOPS = 5,
+	KDB_REASON_SWITCH = 6,
+	KDB_REASON_KEYBOARD = 7,
+	KDB_REASON_NMI = 8,
+	KDB_REASON_RECURSE = 9,
+	KDB_REASON_SSTEP = 10,
+	KDB_REASON_SYSTEM_NMI = 11,
+} kdb_reason_t;
+
+struct __ksymtab {
+	long unsigned int value;
+	const char *mod_name;
+	long unsigned int mod_start;
+	long unsigned int mod_end;
+	const char *sec_name;
+	long unsigned int sec_start;
+	long unsigned int sec_end;
+	const char *sym_name;
+	long unsigned int sym_start;
+	long unsigned int sym_end;
+};
+
+typedef struct __ksymtab kdb_symtab_t;
+
+typedef enum {
+	KDB_DB_BPT = 0,
+	KDB_DB_SS = 1,
+	KDB_DB_SSBPT = 2,
+	KDB_DB_NOBPT = 3,
+} kdb_dbtrap_t;
+
+struct _kdbmsg {
+	int km_diag;
+	char *km_msg;
+};
+
+typedef struct _kdbmsg kdbmsg_t;
+
+struct kdb_macro {
+	kdbtab_t cmd;
+	struct list_head statements;
+};
+
+struct kdb_macro_statement {
+	char *statement;
+	struct list_head list_node;
+};
+
+struct _kdb_bp {
+	long unsigned int bp_addr;
+	unsigned int bp_free: 1;
+	unsigned int bp_enabled: 1;
+	unsigned int bp_type: 4;
+	unsigned int bp_installed: 1;
+	unsigned int bp_delay: 1;
+	unsigned int bp_delayed: 1;
+	unsigned int bph_length;
+};
+
+typedef struct _kdb_bp kdb_bp_t;
+
+typedef short unsigned int u_short;
+
 struct seccomp_notif_sizes {
 	__u16 seccomp_notif;
 	__u16 seccomp_notif_resp;
@@ -34877,12 +38663,18 @@ struct seccomp_notif_addfd {
 	__u32 newfd_flags;
 };
 
+struct action_cache {
+	long unsigned int allow_native[8];
+	long unsigned int allow_compat[8];
+};
+
 struct notification;
 
 struct seccomp_filter {
 	refcount_t refs;
 	refcount_t users;
 	bool log;
+	struct action_cache cache;
 	struct seccomp_filter *prev;
 	struct bpf_prog *prog;
 	struct notification *notif;
@@ -34905,6 +38697,10 @@ struct compat_sock_fprog {
 	compat_uptr_t filter;
 };
 
+typedef unsigned int (*bpf_dispatcher_fn)(const void *, const struct bpf_insn *, unsigned int (*)(const void *, const struct bpf_insn *));
+
+typedef int (*bpf_aux_classic_check_t)(struct sock_filter *, unsigned int);
+
 enum notify_state {
 	SECCOMP_NOTIFY_INIT = 0,
 	SECCOMP_NOTIFY_SENT = 1,
@@ -34928,7 +38724,11 @@ struct seccomp_kaddfd {
 	struct file *file;
 	int fd;
 	unsigned int flags;
-	int ret;
+	__u32 ioctl_flags;
+	union {
+		bool setfd;
+		int ret;
+	};
 	struct completion completion;
 	struct list_head list;
 };
@@ -34977,7 +38777,7 @@ struct rchan {
 	size_t subbuf_size;
 	size_t n_subbufs;
 	size_t alloc_size;
-	struct rchan_callbacks *cb;
+	const struct rchan_callbacks *cb;
 	struct kref kref;
 	void *private_data;
 	size_t last_toobig;
@@ -34991,8 +38791,6 @@ struct rchan {
 
 struct rchan_callbacks {
 	int (*subbuf_start)(struct rchan_buf *, void *, void *, size_t);
-	void (*buf_mapped)(struct rchan_buf *, struct file *);
-	void (*buf_unmapped)(struct rchan_buf *, struct file *);
 	struct dentry * (*create_buf_file)(const char *, struct dentry *, umode_t, struct rchan_buf *, int *);
 	int (*remove_buf_file)(struct dentry *);
 };
@@ -35086,6 +38884,8 @@ enum {
 
 struct genl_multicast_group {
 	char name[16];
+	u8 flags;
+	u8 cap_sys_admin: 1;
 };
 
 struct genl_ops;
@@ -35242,6 +39042,28 @@ enum {
 	FTRACE_ITER_ENABLED = 64,
 };
 
+struct ftrace_graph_ent {
+	long unsigned int func;
+	int depth;
+} __attribute__((packed));
+
+struct ftrace_graph_ret {
+	long unsigned int func;
+	int depth;
+	unsigned int overrun;
+	long long unsigned int calltime;
+	long long unsigned int rettime;
+};
+
+typedef void (*trace_func_graph_ret_t)(struct ftrace_graph_ret *);
+
+typedef int (*trace_func_graph_ent_t)(struct ftrace_graph_ent *);
+
+struct fgraph_ops {
+	trace_func_graph_ent_t entryfunc;
+	trace_func_graph_ret_t retfunc;
+};
+
 struct prog_entry;
 
 struct event_filter {
@@ -35265,6 +39087,8 @@ struct trace_options;
 
 struct cond_snapshot;
 
+struct trace_func_repeats;
+
 struct trace_array {
 	struct list_head list;
 	char *name;
@@ -35281,8 +39105,8 @@ struct trace_array {
 	int buffer_disabled;
 	int sys_refcount_enter;
 	int sys_refcount_exit;
-	struct trace_event_file *enter_syscall_files[441];
-	struct trace_event_file *exit_syscall_files[441];
+	struct trace_event_file *enter_syscall_files[449];
+	struct trace_event_file *exit_syscall_files[449];
 	int stop_count;
 	int clock_id;
 	int nr_topts;
@@ -35304,6 +39128,7 @@ struct trace_array {
 	struct list_head events;
 	struct trace_event_file *trace_marker_file;
 	cpumask_var_t tracing_cpumask;
+	cpumask_var_t pipe_cpumask;
 	int ref;
 	int trace_ref;
 	struct ftrace_ops *ops;
@@ -35313,9 +39138,10 @@ struct trace_array {
 	struct list_head mod_trace;
 	struct list_head mod_notrace;
 	int function_enabled;
-	int time_stamp_abs_ref;
+	int no_filter_buffering_ref;
 	struct list_head hist_vars;
 	struct cond_snapshot *cond_snapshot;
+	struct trace_func_repeats *last_func_repeats;
 };
 
 struct tracer_flags;
@@ -35357,6 +39183,11 @@ struct trace_subsystem_dir {
 	int nr_events;
 };
 
+struct trace_pid_list {
+	int pid_max;
+	long unsigned int *pids;
+};
+
 struct trace_array_cpu {
 	atomic_t disabled;
 	void *buffer_page;
@@ -35393,11 +39224,6 @@ struct trace_option_dentry {
 	struct dentry *entry;
 };
 
-struct trace_pid_list {
-	int pid_max;
-	long unsigned int *pids;
-};
-
 enum {
 	TRACE_PIDS = 1,
 	TRACE_NO_PIDS = 2,
@@ -35410,6 +39236,13 @@ struct cond_snapshot {
 	cond_update_fn_t update;
 };
 
+struct trace_func_repeats {
+	long unsigned int ip;
+	long unsigned int parent_ip;
+	long unsigned int count;
+	u64 ts_last_call;
+};
+
 enum {
 	TRACE_ARRAY_FL_GLOBAL = 1,
 };
@@ -35425,33 +39258,6 @@ struct tracer_flags {
 	struct tracer *trace;
 };
 
-enum {
-	TRACE_FTRACE_BIT = 0,
-	TRACE_FTRACE_NMI_BIT = 1,
-	TRACE_FTRACE_IRQ_BIT = 2,
-	TRACE_FTRACE_SIRQ_BIT = 3,
-	TRACE_FTRACE_TRANSITION_BIT = 4,
-	TRACE_INTERNAL_BIT = 5,
-	TRACE_INTERNAL_NMI_BIT = 6,
-	TRACE_INTERNAL_IRQ_BIT = 7,
-	TRACE_INTERNAL_SIRQ_BIT = 8,
-	TRACE_INTERNAL_TRANSITION_BIT = 9,
-	TRACE_BRANCH_BIT = 10,
-	TRACE_IRQ_BIT = 11,
-	TRACE_GRAPH_BIT = 12,
-	TRACE_GRAPH_DEPTH_START_BIT = 13,
-	TRACE_GRAPH_DEPTH_END_BIT = 14,
-	TRACE_GRAPH_NOTRACE_BIT = 15,
-};
-
-enum {
-	TRACE_CTX_NMI = 0,
-	TRACE_CTX_IRQ = 1,
-	TRACE_CTX_SOFTIRQ = 2,
-	TRACE_CTX_NORMAL = 3,
-	TRACE_CTX_TRANSITION = 4,
-};
-
 struct ftrace_mod_load {
 	struct list_head list;
 	char *func;
@@ -35509,11 +39315,12 @@ enum trace_iterator_bits {
 	TRACE_ITER_MARKERS_BIT = 20,
 	TRACE_ITER_EVENT_FORK_BIT = 21,
 	TRACE_ITER_PAUSE_ON_TRACE_BIT = 22,
-	TRACE_ITER_FUNCTION_BIT = 23,
-	TRACE_ITER_FUNC_FORK_BIT = 24,
-	TRACE_ITER_DISPLAY_GRAPH_BIT = 25,
-	TRACE_ITER_STACKTRACE_BIT = 26,
-	TRACE_ITER_LAST_BIT = 27,
+	TRACE_ITER_HASH_PTR_BIT = 23,
+	TRACE_ITER_FUNCTION_BIT = 24,
+	TRACE_ITER_FUNC_FORK_BIT = 25,
+	TRACE_ITER_DISPLAY_GRAPH_BIT = 26,
+	TRACE_ITER_STACKTRACE_BIT = 27,
+	TRACE_ITER_LAST_BIT = 28,
 };
 
 struct event_subsystem {
@@ -35532,11 +39339,43 @@ enum regex_type {
 	MATCH_INDEX = 5,
 };
 
+struct tracer_stat {
+	const char *name;
+	void * (*stat_start)(struct tracer_stat *);
+	void * (*stat_next)(void *, int);
+	cmp_func_t stat_cmp;
+	int (*stat_show)(struct seq_file *, void *);
+	void (*stat_release)(void *);
+	int (*stat_headers)(struct seq_file *);
+};
+
 enum {
 	FTRACE_MODIFY_ENABLE_FL = 1,
 	FTRACE_MODIFY_MAY_SLEEP_FL = 2,
 };
 
+struct ftrace_profile {
+	struct hlist_node node;
+	long unsigned int ip;
+	long unsigned int counter;
+	long long unsigned int time;
+	long long unsigned int time_squared;
+};
+
+struct ftrace_profile_page {
+	struct ftrace_profile_page *next;
+	long unsigned int index;
+	struct ftrace_profile records[0];
+};
+
+struct ftrace_profile_stat {
+	atomic_t disabled;
+	struct hlist_head *hash;
+	struct ftrace_profile_page *pages;
+	struct ftrace_profile_page *start;
+	struct tracer_stat stat;
+};
+
 struct ftrace_func_probe {
 	struct ftrace_probe_ops *probe_ops;
 	struct ftrace_ops ops;
@@ -35550,7 +39389,7 @@ struct ftrace_page {
 	struct ftrace_page *next;
 	struct dyn_ftrace *records;
 	int index;
-	int size;
+	int order;
 };
 
 struct ftrace_rec_iter {
@@ -35641,6 +39480,8 @@ enum ring_buffer_type {
 	RINGBUF_TYPE_TIME_STAMP = 31,
 };
 
+typedef bool (*ring_buffer_cond_fn)(void *);
+
 enum ring_buffer_flags {
 	RB_FL_OVERWRITE = 1,
 };
@@ -35656,6 +39497,7 @@ struct ring_buffer_iter {
 	struct buffer_page *head_page;
 	struct buffer_page *cache_reader_page;
 	long unsigned int cache_read;
+	long unsigned int cache_pages_removed;
 	u64 read_stamp;
 	u64 page_stamp;
 	struct ring_buffer_event *event;
@@ -35675,12 +39517,13 @@ struct trace_buffer {
 	unsigned int flags;
 	int cpus;
 	atomic_t record_disabled;
+	atomic_t resizing;
 	cpumask_var_t cpumask;
 	struct lock_class_key *reader_lock_key;
 	struct mutex mutex;
 	struct ring_buffer_per_cpu **buffers;
 	struct hlist_node node;
-	u64 (*clock)();
+	u64 (*clock)(void);
 	struct rb_irq_work irq_work;
 	bool time_stamp_abs;
 };
@@ -35764,6 +39607,7 @@ struct ring_buffer_per_cpu {
 	local_t committing;
 	local_t commits;
 	local_t pages_touched;
+	local_t pages_lost;
 	local_t pages_read;
 	long int last_pages_touch;
 	size_t shortest_full;
@@ -35771,7 +39615,9 @@ struct ring_buffer_per_cpu {
 	long unsigned int read_bytes;
 	rb_time_t write_stamp;
 	rb_time_t before_stamp;
+	u64 event_stamp[5];
 	u64 read_stamp;
+	long unsigned int pages_removed;
 	long int nr_pages_to_update;
 	struct list_head new_pages;
 	struct work_struct update_pages_work;
@@ -35779,6 +39625,8 @@ struct ring_buffer_per_cpu {
 	struct rb_irq_work irq_work;
 };
 
+typedef struct vfsmount * (*debugfs_automount_t)(struct dentry *, void *);
+
 struct trace_export {
 	struct trace_export *next;
 	void (*write)(struct trace_export *, const void *, unsigned int);
@@ -35789,6 +39637,8 @@ enum fsnotify_data_type {
 	FSNOTIFY_EVENT_NONE = 0,
 	FSNOTIFY_EVENT_PATH = 1,
 	FSNOTIFY_EVENT_INODE = 2,
+	FSNOTIFY_EVENT_DENTRY = 3,
+	FSNOTIFY_EVENT_ERROR = 4,
 };
 
 enum trace_iter_flags {
@@ -35797,14 +39647,14 @@ enum trace_iter_flags {
 	TRACE_FILE_TIME_IN_NS = 4,
 };
 
-enum event_trigger_type {
-	ETT_NONE = 0,
-	ETT_TRACE_ONOFF = 1,
-	ETT_SNAPSHOT = 2,
-	ETT_STACKTRACE = 4,
-	ETT_EVENT_ENABLE = 8,
-	ETT_EVENT_HIST = 16,
-	ETT_HIST_ENABLE = 32,
+enum trace_flag_type {
+	TRACE_FLAG_IRQS_OFF = 1,
+	TRACE_FLAG_IRQS_NOSUPPORT = 2,
+	TRACE_FLAG_NEED_RESCHED = 4,
+	TRACE_FLAG_HARDIRQ = 8,
+	TRACE_FLAG_SOFTIRQ = 16,
+	TRACE_FLAG_PREEMPT_RESCHED = 32,
+	TRACE_FLAG_NMI = 64,
 };
 
 enum trace_type {
@@ -35824,8 +39674,11 @@ enum trace_type {
 	TRACE_BLK = 13,
 	TRACE_BPUTS = 14,
 	TRACE_HWLAT = 15,
-	TRACE_RAW_DATA = 16,
-	__TRACE_LAST_TYPE = 17,
+	TRACE_OSNOISE = 16,
+	TRACE_TIMERLAT = 17,
+	TRACE_RAW_DATA = 18,
+	TRACE_FUNC_REPEATS = 19,
+	__TRACE_LAST_TYPE = 20,
 };
 
 struct ftrace_entry {
@@ -35871,14 +39724,13 @@ struct bputs_entry {
 	const char *str;
 };
 
-enum trace_flag_type {
-	TRACE_FLAG_IRQS_OFF = 1,
-	TRACE_FLAG_IRQS_NOSUPPORT = 2,
-	TRACE_FLAG_NEED_RESCHED = 4,
-	TRACE_FLAG_HARDIRQ = 8,
-	TRACE_FLAG_SOFTIRQ = 16,
-	TRACE_FLAG_PREEMPT_RESCHED = 32,
-	TRACE_FLAG_NMI = 64,
+struct func_repeats_entry {
+	struct trace_entry ent;
+	long unsigned int ip;
+	long unsigned int parent_ip;
+	u16 count;
+	u16 top_delta_ts;
+	u32 bottom_delta_ts;
 };
 
 enum trace_iterator_flags {
@@ -35905,10 +39757,18 @@ enum trace_iterator_flags {
 	TRACE_ITER_MARKERS = 1048576,
 	TRACE_ITER_EVENT_FORK = 2097152,
 	TRACE_ITER_PAUSE_ON_TRACE = 4194304,
-	TRACE_ITER_FUNCTION = 8388608,
-	TRACE_ITER_FUNC_FORK = 16777216,
-	TRACE_ITER_DISPLAY_GRAPH = 33554432,
-	TRACE_ITER_STACKTRACE = 67108864,
+	TRACE_ITER_HASH_PTR = 8388608,
+	TRACE_ITER_FUNCTION = 16777216,
+	TRACE_ITER_FUNC_FORK = 33554432,
+	TRACE_ITER_DISPLAY_GRAPH = 67108864,
+	TRACE_ITER_STACKTRACE = 134217728,
+};
+
+struct trace_min_max_param {
+	struct mutex *lock;
+	u64 *val;
+	u64 *min;
+	u64 *max;
 };
 
 struct saved_cmdlines_buffer {
@@ -35916,7 +39776,7 @@ struct saved_cmdlines_buffer {
 	unsigned int *map_cmdline_to_pid;
 	unsigned int cmdline_num;
 	int cmdline_idx;
-	char *saved_cmdlines;
+	char saved_cmdlines[0];
 };
 
 struct ftrace_stack {
@@ -35960,8 +39820,6 @@ struct buffer_ref {
 	refcount_t refcount;
 };
 
-struct ftrace_func_mapper;
-
 struct ctx_switch_entry {
 	struct trace_entry ent;
 	unsigned int prev_pid;
@@ -35984,21 +39842,30 @@ struct hwlat_entry {
 	unsigned int count;
 };
 
+struct osnoise_entry {
+	struct trace_entry ent;
+	u64 noise;
+	u64 runtime;
+	u64 max_sample;
+	unsigned int hw_count;
+	unsigned int nmi_count;
+	unsigned int irq_count;
+	unsigned int softirq_count;
+	unsigned int thread_count;
+};
+
+struct timerlat_entry {
+	struct trace_entry ent;
+	unsigned int seqnum;
+	int context;
+	u64 timer_latency;
+};
+
 struct trace_mark {
 	long long unsigned int val;
 	char sym;
 };
 
-struct tracer_stat {
-	const char *name;
-	void * (*stat_start)(struct tracer_stat *);
-	void * (*stat_next)(void *, int);
-	cmp_func_t stat_cmp;
-	int (*stat_show)(struct seq_file *, void *);
-	void (*stat_release)(void *);
-	int (*stat_headers)(struct seq_file *);
-};
-
 struct stat_node {
 	struct rb_node node;
 	void *stat;
@@ -36017,8 +39884,262 @@ struct trace_bprintk_fmt {
 	const char *fmt;
 };
 
+typedef int (*tracing_map_cmp_fn_t)(void *, void *);
+
+struct tracing_map_field {
+	tracing_map_cmp_fn_t cmp_fn;
+	union {
+		atomic64_t sum;
+		unsigned int offset;
+	};
+};
+
+struct tracing_map;
+
+struct tracing_map_elt {
+	struct tracing_map *map;
+	struct tracing_map_field *fields;
+	atomic64_t *vars;
+	bool *var_set;
+	void *key;
+	void *private_data;
+};
+
+struct tracing_map_sort_key {
+	unsigned int field_idx;
+	bool descending;
+};
+
+struct tracing_map_array;
+
+struct tracing_map_ops;
+
+struct tracing_map {
+	unsigned int key_size;
+	unsigned int map_bits;
+	unsigned int map_size;
+	unsigned int max_elts;
+	atomic_t next_elt;
+	struct tracing_map_array *elts;
+	struct tracing_map_array *map;
+	const struct tracing_map_ops *ops;
+	void *private_data;
+	struct tracing_map_field fields[6];
+	unsigned int n_fields;
+	int key_idx[3];
+	unsigned int n_keys;
+	struct tracing_map_sort_key sort_key;
+	unsigned int n_vars;
+	atomic64_t hits;
+	atomic64_t drops;
+};
+
+struct tracing_map_entry {
+	u32 key;
+	struct tracing_map_elt *val;
+};
+
+struct tracing_map_sort_entry {
+	void *key;
+	struct tracing_map_elt *elt;
+	bool elt_copied;
+	bool dup;
+};
+
+struct tracing_map_array {
+	unsigned int entries_per_page;
+	unsigned int entry_size_shift;
+	unsigned int entry_shift;
+	unsigned int entry_mask;
+	unsigned int n_pages;
+	void **pages;
+};
+
+struct tracing_map_ops {
+	int (*elt_alloc)(struct tracing_map_elt *);
+	void (*elt_free)(struct tracing_map_elt *);
+	void (*elt_clear)(struct tracing_map_elt *);
+	void (*elt_init)(struct tracing_map_elt *);
+};
+
 enum {
+	TRACE_FUNC_NO_OPTS = 0,
 	TRACE_FUNC_OPT_STACK = 1,
+	TRACE_FUNC_OPT_NO_REPEATS = 2,
+	TRACE_FUNC_OPT_HIGHEST_BIT = 4,
+};
+
+enum {
+	MODE_NONE = 0,
+	MODE_ROUND_ROBIN = 1,
+	MODE_PER_CPU = 2,
+	MODE_MAX = 3,
+};
+
+struct hwlat_kthread_data {
+	struct task_struct *kthread;
+	u64 nmi_ts_start;
+	u64 nmi_total_ts;
+	int nmi_count;
+	int nmi_cpu;
+};
+
+struct hwlat_sample {
+	u64 seqnum;
+	u64 duration;
+	u64 outer_duration;
+	u64 nmi_total_ts;
+	struct timespec64 timestamp;
+	int nmi_count;
+	int count;
+};
+
+struct hwlat_data {
+	struct mutex lock;
+	u64 count;
+	u64 sample_window;
+	u64 sample_width;
+	int thread_mode;
+};
+
+struct trace_event_raw_thread_noise {
+	struct trace_entry ent;
+	char comm[16];
+	u64 start;
+	u64 duration;
+	pid_t pid;
+	char __data[0];
+};
+
+struct trace_event_raw_softirq_noise {
+	struct trace_entry ent;
+	u64 start;
+	u64 duration;
+	int vector;
+	char __data[0];
+};
+
+struct trace_event_raw_irq_noise {
+	struct trace_entry ent;
+	u64 start;
+	u64 duration;
+	u32 __data_loc_desc;
+	int vector;
+	char __data[0];
+};
+
+struct trace_event_raw_nmi_noise {
+	struct trace_entry ent;
+	u64 start;
+	u64 duration;
+	char __data[0];
+};
+
+struct trace_event_raw_sample_threshold {
+	struct trace_entry ent;
+	u64 start;
+	u64 duration;
+	u64 interference;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_thread_noise {};
+
+struct trace_event_data_offsets_softirq_noise {};
+
+struct trace_event_data_offsets_irq_noise {
+	u32 desc;
+};
+
+struct trace_event_data_offsets_nmi_noise {};
+
+struct trace_event_data_offsets_sample_threshold {};
+
+typedef void (*btf_trace_thread_noise)(void *, struct task_struct *, u64, u64);
+
+typedef void (*btf_trace_softirq_noise)(void *, int, u64, u64);
+
+typedef void (*btf_trace_irq_noise)(void *, int, const char *, u64, u64);
+
+typedef void (*btf_trace_nmi_noise)(void *, u64, u64);
+
+typedef void (*btf_trace_sample_threshold)(void *, u64, u64, u64);
+
+struct osn_nmi {
+	u64 count;
+	u64 delta_start;
+};
+
+struct osn_irq {
+	u64 count;
+	u64 arrival_time;
+	u64 delta_start;
+};
+
+struct osn_softirq {
+	u64 count;
+	u64 arrival_time;
+	u64 delta_start;
+};
+
+struct osn_thread {
+	u64 count;
+	u64 arrival_time;
+	u64 delta_start;
+};
+
+struct osnoise_variables {
+	struct task_struct *kthread;
+	bool sampling;
+	pid_t pid;
+	struct osn_nmi nmi;
+	struct osn_irq irq;
+	struct osn_softirq softirq;
+	struct osn_thread thread;
+	local_t int_counter;
+};
+
+struct timerlat_variables {
+	struct task_struct *kthread;
+	struct hrtimer timer;
+	u64 rel_period;
+	u64 abs_period;
+	bool tracing_thread;
+	u64 count;
+};
+
+struct osnoise_sample {
+	u64 runtime;
+	u64 noise;
+	u64 max_sample;
+	int hw_count;
+	int nmi_count;
+	int irq_count;
+	int softirq_count;
+	int thread_count;
+};
+
+struct timerlat_sample {
+	u64 timer_latency;
+	unsigned int seqnum;
+	int context;
+};
+
+struct osnoise_data {
+	u64 sample_period;
+	u64 sample_runtime;
+	u64 stop_tracing;
+	u64 stop_tracing_total;
+	u64 timerlat_period;
+	u64 print_stack;
+	int timerlat_tracer;
+	bool tainted;
+};
+
+struct trace_stack {
+	int stack_size;
+	int nr_entries;
+	long unsigned int calls[256];
 };
 
 enum {
@@ -36040,28 +40161,6 @@ struct header_iter {
 	struct pci_dev *dev;
 };
 
-struct ftrace_graph_ent {
-	long unsigned int func;
-	int depth;
-} __attribute__((packed));
-
-struct ftrace_graph_ret {
-	long unsigned int func;
-	long unsigned int overrun;
-	long long unsigned int calltime;
-	long long unsigned int rettime;
-	int depth;
-} __attribute__((packed));
-
-typedef void (*trace_func_graph_ret_t)(struct ftrace_graph_ret *);
-
-typedef int (*trace_func_graph_ent_t)(struct ftrace_graph_ent *);
-
-struct fgraph_ops {
-	trace_func_graph_ent_t entryfunc;
-	trace_func_graph_ret_t retfunc;
-};
-
 struct ftrace_graph_ent_entry {
 	struct trace_entry ent;
 	struct ftrace_graph_ent graph_ent;
@@ -36086,7 +40185,8 @@ struct fgraph_data {
 	struct ftrace_graph_ret_entry ret;
 	int failed;
 	int cpu;
-};
+	long: 0;
+} __attribute__((packed));
 
 enum {
 	FLAGS_FILL_FULL = 268435456,
@@ -36103,6 +40203,13 @@ struct disk_stats {
 	local_t in_flight[2];
 };
 
+struct blk_crypto_key;
+
+struct bio_crypt_ctx {
+	const struct blk_crypto_key *bc_key;
+	u64 bc_dun[4];
+};
+
 struct blk_mq_ctxs;
 
 struct blk_mq_ctx {
@@ -36158,8 +40265,6 @@ struct blk_trace {
 	u32 pid;
 	u32 dev;
 	struct dentry *dir;
-	struct dentry *dropped_file;
-	struct dentry *msg_file;
 	struct list_head running_list;
 	atomic_t dropped;
 };
@@ -36172,7 +40277,6 @@ struct blk_flush_queue {
 	struct list_head flush_queue[2];
 	struct list_head flush_data_in_flight;
 	struct request *flush_rq;
-	struct lock_class_key key;
 	spinlock_t mq_flush_lock;
 };
 
@@ -36288,6 +40392,27 @@ struct blk_mq_tags {
 	spinlock_t lock;
 };
 
+enum blk_crypto_mode_num {
+	BLK_ENCRYPTION_MODE_INVALID = 0,
+	BLK_ENCRYPTION_MODE_AES_256_XTS = 1,
+	BLK_ENCRYPTION_MODE_AES_128_CBC_ESSIV = 2,
+	BLK_ENCRYPTION_MODE_ADIANTUM = 3,
+	BLK_ENCRYPTION_MODE_MAX = 4,
+};
+
+struct blk_crypto_config {
+	enum blk_crypto_mode_num crypto_mode;
+	unsigned int data_unit_size;
+	unsigned int dun_bytes;
+};
+
+struct blk_crypto_key {
+	struct blk_crypto_config crypto_cfg;
+	unsigned int data_unit_size_bits;
+	unsigned int size;
+	u8 raw[64];
+};
+
 struct blk_mq_ctxs {
 	struct kobject kobj;
 	struct blk_mq_ctx *queue_ctx;
@@ -36305,6 +40430,12 @@ struct ftrace_event_field {
 	int is_signed;
 };
 
+struct module_string {
+	struct list_head next;
+	struct module *module;
+	char *str;
+};
+
 enum {
 	FORMAT_HEADER = 1,
 	FORMAT_FIELD_SEPERATOR = 2,
@@ -36342,7 +40473,7 @@ struct syscall_tp_t___2 {
 	long unsigned int args[6];
 };
 
-typedef long unsigned int perf_trace_t[256];
+typedef long unsigned int perf_trace_t[1024];
 
 struct filter_pred;
 
@@ -36443,6 +40574,10 @@ struct function_filter_data {
 	int first_notrace;
 };
 
+enum {
+	EVENT_TRIGGER_FL_PROBE = 1,
+};
+
 struct event_trigger_ops;
 
 struct event_command;
@@ -36450,6 +40585,7 @@ struct event_command;
 struct event_trigger_data {
 	long unsigned int count;
 	int ref;
+	int flags;
 	struct event_trigger_ops *ops;
 	struct event_command *cmd_ops;
 	struct event_filter *filter;
@@ -36464,7 +40600,7 @@ struct event_trigger_data {
 };
 
 struct event_trigger_ops {
-	void (*func)(struct event_trigger_data *, void *, struct ring_buffer_event *);
+	void (*func)(struct event_trigger_data *, struct trace_buffer *, void *, struct ring_buffer_event *);
 	int (*init)(struct event_trigger_ops *, struct event_trigger_data *);
 	void (*free)(struct event_trigger_ops *, struct event_trigger_data *);
 	int (*print)(struct seq_file *, struct event_trigger_ops *, struct event_trigger_data *);
@@ -36494,6 +40630,552 @@ enum event_command_flags {
 	EVENT_CMD_FL_NEEDS_REC = 2,
 };
 
+struct eprobe_trace_entry_head {
+	struct trace_entry ent;
+	unsigned int type;
+};
+
+struct dyn_event;
+
+struct dyn_event_operations {
+	struct list_head list;
+	int (*create)(const char *);
+	int (*show)(struct seq_file *, struct dyn_event *);
+	bool (*is_busy)(struct dyn_event *);
+	int (*free)(struct dyn_event *);
+	bool (*match)(const char *, const char *, int, const char **, struct dyn_event *);
+};
+
+struct dyn_event {
+	struct list_head list;
+	struct dyn_event_operations *ops;
+};
+
+typedef int (*print_type_func_t)(struct trace_seq *, void *, void *);
+
+enum fetch_op {
+	FETCH_OP_NOP = 0,
+	FETCH_OP_REG = 1,
+	FETCH_OP_STACK = 2,
+	FETCH_OP_STACKP = 3,
+	FETCH_OP_RETVAL = 4,
+	FETCH_OP_IMM = 5,
+	FETCH_OP_COMM = 6,
+	FETCH_OP_ARG = 7,
+	FETCH_OP_FOFFS = 8,
+	FETCH_OP_DATA = 9,
+	FETCH_OP_DEREF = 10,
+	FETCH_OP_UDEREF = 11,
+	FETCH_OP_ST_RAW = 12,
+	FETCH_OP_ST_MEM = 13,
+	FETCH_OP_ST_UMEM = 14,
+	FETCH_OP_ST_STRING = 15,
+	FETCH_OP_ST_USTRING = 16,
+	FETCH_OP_ST_SYMSTR = 17,
+	FETCH_OP_MOD_BF = 18,
+	FETCH_OP_LP_ARRAY = 19,
+	FETCH_OP_TP_ARG = 20,
+	FETCH_OP_END = 21,
+	FETCH_NOP_SYMBOL = 22,
+};
+
+struct fetch_insn {
+	enum fetch_op op;
+	union {
+		unsigned int param;
+		struct {
+			unsigned int size;
+			int offset;
+		};
+		struct {
+			unsigned char basesize;
+			unsigned char lshift;
+			unsigned char rshift;
+		};
+		long unsigned int immediate;
+		void *data;
+	};
+};
+
+struct fetch_type {
+	const char *name;
+	size_t size;
+	bool is_signed;
+	bool is_string;
+	print_type_func_t print;
+	const char *fmt;
+	const char *fmttype;
+};
+
+struct probe_arg {
+	struct fetch_insn *code;
+	bool dynamic;
+	unsigned int offset;
+	unsigned int count;
+	const char *name;
+	const char *comm;
+	char *fmt;
+	const struct fetch_type *type;
+};
+
+struct trace_uprobe_filter {
+	rwlock_t rwlock;
+	int nr_systemwide;
+	struct list_head perf_events;
+};
+
+struct trace_probe_event {
+	unsigned int flags;
+	struct trace_event_class class;
+	struct trace_event_call call;
+	struct list_head files;
+	struct list_head probes;
+	struct trace_uprobe_filter filter[0];
+};
+
+struct trace_probe {
+	struct list_head list;
+	struct trace_probe_event *event;
+	ssize_t size;
+	unsigned int nr_args;
+	struct probe_arg args[0];
+};
+
+struct event_file_link {
+	struct trace_event_file *file;
+	struct list_head list;
+};
+
+enum probe_print_type {
+	PROBE_PRINT_NORMAL = 0,
+	PROBE_PRINT_RETURN = 1,
+	PROBE_PRINT_EVENT = 2,
+};
+
+enum {
+	TP_ERR_FILE_NOT_FOUND = 0,
+	TP_ERR_NO_REGULAR_FILE = 1,
+	TP_ERR_BAD_REFCNT = 2,
+	TP_ERR_REFCNT_OPEN_BRACE = 3,
+	TP_ERR_BAD_REFCNT_SUFFIX = 4,
+	TP_ERR_BAD_UPROBE_OFFS = 5,
+	TP_ERR_MAXACT_NO_KPROBE = 6,
+	TP_ERR_BAD_MAXACT = 7,
+	TP_ERR_MAXACT_TOO_BIG = 8,
+	TP_ERR_BAD_PROBE_ADDR = 9,
+	TP_ERR_NON_UNIQ_SYMBOL = 10,
+	TP_ERR_BAD_RETPROBE = 11,
+	TP_ERR_BAD_ADDR_SUFFIX = 12,
+	TP_ERR_NO_GROUP_NAME = 13,
+	TP_ERR_GROUP_TOO_LONG = 14,
+	TP_ERR_BAD_GROUP_NAME = 15,
+	TP_ERR_NO_EVENT_NAME = 16,
+	TP_ERR_EVENT_TOO_LONG = 17,
+	TP_ERR_BAD_EVENT_NAME = 18,
+	TP_ERR_EVENT_EXIST = 19,
+	TP_ERR_RETVAL_ON_PROBE = 20,
+	TP_ERR_BAD_STACK_NUM = 21,
+	TP_ERR_BAD_ARG_NUM = 22,
+	TP_ERR_BAD_VAR = 23,
+	TP_ERR_BAD_REG_NAME = 24,
+	TP_ERR_BAD_MEM_ADDR = 25,
+	TP_ERR_BAD_IMM = 26,
+	TP_ERR_IMMSTR_NO_CLOSE = 27,
+	TP_ERR_FILE_ON_KPROBE = 28,
+	TP_ERR_BAD_FILE_OFFS = 29,
+	TP_ERR_SYM_ON_UPROBE = 30,
+	TP_ERR_TOO_MANY_OPS = 31,
+	TP_ERR_DEREF_NEED_BRACE = 32,
+	TP_ERR_BAD_DEREF_OFFS = 33,
+	TP_ERR_DEREF_OPEN_BRACE = 34,
+	TP_ERR_COMM_CANT_DEREF = 35,
+	TP_ERR_BAD_FETCH_ARG = 36,
+	TP_ERR_ARRAY_NO_CLOSE = 37,
+	TP_ERR_BAD_ARRAY_SUFFIX = 38,
+	TP_ERR_BAD_ARRAY_NUM = 39,
+	TP_ERR_ARRAY_TOO_BIG = 40,
+	TP_ERR_BAD_TYPE = 41,
+	TP_ERR_BAD_STRING = 42,
+	TP_ERR_BAD_SYMSTRING = 43,
+	TP_ERR_BAD_BITFIELD = 44,
+	TP_ERR_ARG_NAME_TOO_LONG = 45,
+	TP_ERR_NO_ARG_NAME = 46,
+	TP_ERR_BAD_ARG_NAME = 47,
+	TP_ERR_USED_ARG_NAME = 48,
+	TP_ERR_ARG_TOO_LONG = 49,
+	TP_ERR_NO_ARG_BODY = 50,
+	TP_ERR_BAD_INSN_BNDRY = 51,
+	TP_ERR_FAIL_REG_PROBE = 52,
+	TP_ERR_DIFF_PROBE_TYPE = 53,
+	TP_ERR_DIFF_ARG_TYPE = 54,
+	TP_ERR_SAME_PROBE = 55,
+};
+
+struct trace_eprobe {
+	const char *event_system;
+	const char *event_name;
+	struct trace_event_call *event;
+	struct dyn_event devent;
+	struct trace_probe tp;
+};
+
+struct eprobe_data {
+	struct trace_event_file *file;
+	struct trace_eprobe *ep;
+};
+
+enum dynevent_type {
+	DYNEVENT_TYPE_SYNTH = 1,
+	DYNEVENT_TYPE_KPROBE = 2,
+	DYNEVENT_TYPE_NONE = 3,
+};
+
+struct dynevent_cmd;
+
+typedef int (*dynevent_create_fn_t)(struct dynevent_cmd *);
+
+struct dynevent_cmd {
+	struct seq_buf seq;
+	const char *event_name;
+	unsigned int n_fields;
+	enum dynevent_type type;
+	dynevent_create_fn_t run_command;
+	void *private_data;
+};
+
+struct synth_field_desc {
+	const char *type;
+	const char *name;
+};
+
+struct synth_trace_event;
+
+struct synth_event;
+
+struct synth_event_trace_state {
+	struct trace_event_buffer fbuffer;
+	struct synth_trace_event *entry;
+	struct trace_buffer *buffer;
+	struct synth_event *event;
+	unsigned int cur_field;
+	unsigned int n_u64;
+	bool disabled;
+	bool add_next;
+	bool add_name;
+};
+
+struct synth_trace_event {
+	struct trace_entry ent;
+	u64 fields[0];
+};
+
+struct synth_field;
+
+struct synth_event {
+	struct dyn_event devent;
+	int ref;
+	char *name;
+	struct synth_field **fields;
+	unsigned int n_fields;
+	struct synth_field **dynamic_fields;
+	unsigned int n_dynamic_fields;
+	unsigned int n_u64;
+	struct trace_event_class class;
+	struct trace_event_call call;
+	struct tracepoint *tp;
+	struct module *mod;
+};
+
+typedef int (*dynevent_check_arg_fn_t)(void *);
+
+struct dynevent_arg {
+	const char *str;
+	char separator;
+};
+
+struct dynevent_arg_pair {
+	const char *lhs;
+	const char *rhs;
+	char operator;
+	char separator;
+};
+
+struct synth_field {
+	char *type;
+	char *name;
+	size_t size;
+	unsigned int offset;
+	unsigned int field_pos;
+	bool is_signed;
+	bool is_string;
+	bool is_dynamic;
+	bool is_stack;
+};
+
+enum {
+	SYNTH_ERR_BAD_NAME = 0,
+	SYNTH_ERR_INVALID_CMD = 1,
+	SYNTH_ERR_INVALID_DYN_CMD = 2,
+	SYNTH_ERR_EVENT_EXISTS = 3,
+	SYNTH_ERR_TOO_MANY_FIELDS = 4,
+	SYNTH_ERR_INCOMPLETE_TYPE = 5,
+	SYNTH_ERR_INVALID_TYPE = 6,
+	SYNTH_ERR_INVALID_FIELD = 7,
+	SYNTH_ERR_INVALID_ARRAY_SPEC = 8,
+};
+
+enum {
+	HIST_ERR_NONE = 0,
+	HIST_ERR_DUPLICATE_VAR = 1,
+	HIST_ERR_VAR_NOT_UNIQUE = 2,
+	HIST_ERR_TOO_MANY_VARS = 3,
+	HIST_ERR_MALFORMED_ASSIGNMENT = 4,
+	HIST_ERR_NAMED_MISMATCH = 5,
+	HIST_ERR_TRIGGER_EEXIST = 6,
+	HIST_ERR_TRIGGER_ENOENT_CLEAR = 7,
+	HIST_ERR_SET_CLOCK_FAIL = 8,
+	HIST_ERR_BAD_FIELD_MODIFIER = 9,
+	HIST_ERR_TOO_MANY_SUBEXPR = 10,
+	HIST_ERR_TIMESTAMP_MISMATCH = 11,
+	HIST_ERR_TOO_MANY_FIELD_VARS = 12,
+	HIST_ERR_EVENT_FILE_NOT_FOUND = 13,
+	HIST_ERR_HIST_NOT_FOUND = 14,
+	HIST_ERR_HIST_CREATE_FAIL = 15,
+	HIST_ERR_SYNTH_VAR_NOT_FOUND = 16,
+	HIST_ERR_SYNTH_EVENT_NOT_FOUND = 17,
+	HIST_ERR_SYNTH_TYPE_MISMATCH = 18,
+	HIST_ERR_SYNTH_COUNT_MISMATCH = 19,
+	HIST_ERR_FIELD_VAR_PARSE_FAIL = 20,
+	HIST_ERR_VAR_CREATE_FIND_FAIL = 21,
+	HIST_ERR_ONX_NOT_VAR = 22,
+	HIST_ERR_ONX_VAR_NOT_FOUND = 23,
+	HIST_ERR_ONX_VAR_CREATE_FAIL = 24,
+	HIST_ERR_FIELD_VAR_CREATE_FAIL = 25,
+	HIST_ERR_TOO_MANY_PARAMS = 26,
+	HIST_ERR_PARAM_NOT_FOUND = 27,
+	HIST_ERR_INVALID_PARAM = 28,
+	HIST_ERR_ACTION_NOT_FOUND = 29,
+	HIST_ERR_NO_SAVE_PARAMS = 30,
+	HIST_ERR_TOO_MANY_SAVE_ACTIONS = 31,
+	HIST_ERR_ACTION_MISMATCH = 32,
+	HIST_ERR_NO_CLOSING_PAREN = 33,
+	HIST_ERR_SUBSYS_NOT_FOUND = 34,
+	HIST_ERR_INVALID_SUBSYS_EVENT = 35,
+	HIST_ERR_INVALID_REF_KEY = 36,
+	HIST_ERR_VAR_NOT_FOUND = 37,
+	HIST_ERR_FIELD_NOT_FOUND = 38,
+	HIST_ERR_EMPTY_ASSIGNMENT = 39,
+	HIST_ERR_INVALID_SORT_MODIFIER = 40,
+	HIST_ERR_EMPTY_SORT_FIELD = 41,
+	HIST_ERR_TOO_MANY_SORT_FIELDS = 42,
+	HIST_ERR_INVALID_SORT_FIELD = 43,
+	HIST_ERR_INVALID_STR_OPERAND = 44,
+};
+
+struct hist_field;
+
+typedef u64 (*hist_field_fn_t)(struct hist_field *, struct tracing_map_elt *, struct trace_buffer *, struct ring_buffer_event *, void *);
+
+struct hist_trigger_data;
+
+struct hist_var {
+	char *name;
+	struct hist_trigger_data *hist_data;
+	unsigned int idx;
+};
+
+enum field_op_id {
+	FIELD_OP_NONE = 0,
+	FIELD_OP_PLUS = 1,
+	FIELD_OP_MINUS = 2,
+	FIELD_OP_UNARY_MINUS = 3,
+};
+
+struct hist_field {
+	struct ftrace_event_field *field;
+	long unsigned int flags;
+	hist_field_fn_t fn;
+	unsigned int ref;
+	unsigned int size;
+	unsigned int offset;
+	unsigned int is_signed;
+	long unsigned int buckets;
+	const char *type;
+	struct hist_field *operands[2];
+	struct hist_trigger_data *hist_data;
+	struct hist_var var;
+	enum field_op_id operator;
+	char *system;
+	char *event_name;
+	char *name;
+	unsigned int var_ref_idx;
+	bool read_once;
+	unsigned int var_str_idx;
+};
+
+struct hist_trigger_attrs;
+
+struct action_data;
+
+struct field_var;
+
+struct field_var_hist;
+
+struct hist_trigger_data {
+	struct hist_field *fields[22];
+	unsigned int n_vals;
+	unsigned int n_keys;
+	unsigned int n_fields;
+	unsigned int n_vars;
+	unsigned int n_var_str;
+	unsigned int key_size;
+	struct tracing_map_sort_key sort_keys[2];
+	unsigned int n_sort_keys;
+	struct trace_event_file *event_file;
+	struct hist_trigger_attrs *attrs;
+	struct tracing_map *map;
+	bool enable_timestamps;
+	bool remove;
+	struct hist_field *var_refs[16];
+	unsigned int n_var_refs;
+	struct action_data *actions[8];
+	unsigned int n_actions;
+	struct field_var *field_vars[64];
+	unsigned int n_field_vars;
+	unsigned int n_field_var_str;
+	struct field_var_hist *field_var_hists[64];
+	unsigned int n_field_var_hists;
+	struct field_var *save_vars[64];
+	unsigned int n_save_vars;
+	unsigned int n_save_var_str;
+};
+
+enum hist_field_flags {
+	HIST_FIELD_FL_HITCOUNT = 1,
+	HIST_FIELD_FL_KEY = 2,
+	HIST_FIELD_FL_STRING = 4,
+	HIST_FIELD_FL_HEX = 8,
+	HIST_FIELD_FL_SYM = 16,
+	HIST_FIELD_FL_SYM_OFFSET = 32,
+	HIST_FIELD_FL_EXECNAME = 64,
+	HIST_FIELD_FL_SYSCALL = 128,
+	HIST_FIELD_FL_STACKTRACE = 256,
+	HIST_FIELD_FL_LOG2 = 512,
+	HIST_FIELD_FL_TIMESTAMP = 1024,
+	HIST_FIELD_FL_TIMESTAMP_USECS = 2048,
+	HIST_FIELD_FL_VAR = 4096,
+	HIST_FIELD_FL_EXPR = 8192,
+	HIST_FIELD_FL_VAR_REF = 16384,
+	HIST_FIELD_FL_CPU = 32768,
+	HIST_FIELD_FL_ALIAS = 65536,
+	HIST_FIELD_FL_BUCKET = 131072,
+};
+
+struct var_defs {
+	unsigned int n_vars;
+	char *name[16];
+	char *expr[16];
+};
+
+struct hist_trigger_attrs {
+	char *keys_str;
+	char *vals_str;
+	char *sort_key_str;
+	char *name;
+	char *clock;
+	bool pause;
+	bool cont;
+	bool clear;
+	bool ts_in_usecs;
+	unsigned int map_bits;
+	char *assignment_str[16];
+	unsigned int n_assignments;
+	char *action_str[8];
+	unsigned int n_actions;
+	struct var_defs var_defs;
+};
+
+struct field_var {
+	struct hist_field *var;
+	struct hist_field *val;
+};
+
+struct field_var_hist {
+	struct hist_trigger_data *hist_data;
+	char *cmd;
+};
+
+enum handler_id {
+	HANDLER_ONMATCH = 1,
+	HANDLER_ONMAX = 2,
+	HANDLER_ONCHANGE = 3,
+};
+
+enum action_id {
+	ACTION_SAVE = 1,
+	ACTION_TRACE = 2,
+	ACTION_SNAPSHOT = 3,
+};
+
+typedef void (*action_fn_t)(struct hist_trigger_data *, struct tracing_map_elt *, struct trace_buffer *, void *, struct ring_buffer_event *, void *, struct action_data *, u64 *);
+
+typedef bool (*check_track_val_fn_t)(u64, u64);
+
+struct action_data {
+	enum handler_id handler;
+	enum action_id action;
+	char *action_name;
+	action_fn_t fn;
+	unsigned int n_params;
+	char *params[64];
+	unsigned int var_ref_idx[64];
+	struct synth_event *synth_event;
+	bool use_trace_keyword;
+	char *synth_event_name;
+	union {
+		struct {
+			char *event;
+			char *event_system;
+		} match_data;
+		struct {
+			char *var_str;
+			struct hist_field *var_ref;
+			struct hist_field *track_var;
+			check_track_val_fn_t check_val;
+			action_fn_t save_data;
+		} track_data;
+	};
+};
+
+struct track_data {
+	u64 track_val;
+	bool updated;
+	unsigned int key_len;
+	void *key;
+	struct tracing_map_elt elt;
+	struct action_data *action_data;
+	struct hist_trigger_data *hist_data;
+};
+
+struct hist_elt_data {
+	char *comm;
+	u64 *var_ref_vals;
+	char **field_var_str;
+	int n_field_var_str;
+};
+
+struct snapshot_context {
+	struct tracing_map_elt *elt;
+	void *key;
+};
+
+typedef void (*synth_probe_func_t)(void *, u64 *, unsigned int *);
+
+struct hist_var_data {
+	struct list_head list;
+	struct hist_trigger_data *hist_data;
+};
+
 enum bpf_func_id {
 	BPF_FUNC_unspec = 0,
 	BPF_FUNC_map_lookup_elem = 1,
@@ -36651,7 +41333,27 @@ enum bpf_func_id {
 	BPF_FUNC_per_cpu_ptr = 153,
 	BPF_FUNC_this_cpu_ptr = 154,
 	BPF_FUNC_redirect_peer = 155,
-	__BPF_FUNC_MAX_ID = 156,
+	BPF_FUNC_task_storage_get = 156,
+	BPF_FUNC_task_storage_delete = 157,
+	BPF_FUNC_get_current_task_btf = 158,
+	BPF_FUNC_bprm_opts_set = 159,
+	BPF_FUNC_ktime_get_coarse_ns = 160,
+	BPF_FUNC_ima_inode_hash = 161,
+	BPF_FUNC_sock_from_file = 162,
+	BPF_FUNC_check_mtu = 163,
+	BPF_FUNC_for_each_map_elem = 164,
+	BPF_FUNC_snprintf = 165,
+	BPF_FUNC_sys_bpf = 166,
+	BPF_FUNC_btf_find_by_name_kind = 167,
+	BPF_FUNC_sys_close = 168,
+	BPF_FUNC_timer_init = 169,
+	BPF_FUNC_timer_set_callback = 170,
+	BPF_FUNC_timer_start = 171,
+	BPF_FUNC_timer_cancel = 172,
+	BPF_FUNC_get_func_ip = 173,
+	BPF_FUNC_get_attach_cookie = 174,
+	BPF_FUNC_task_pt_regs = 175,
+	__BPF_FUNC_MAX_ID = 176,
 };
 
 enum {
@@ -36696,48 +41398,30 @@ enum {
 	BTF_F_ZERO = 8,
 };
 
-enum bpf_arg_type {
-	ARG_DONTCARE = 0,
-	ARG_CONST_MAP_PTR = 1,
-	ARG_PTR_TO_MAP_KEY = 2,
-	ARG_PTR_TO_MAP_VALUE = 3,
-	ARG_PTR_TO_UNINIT_MAP_VALUE = 4,
-	ARG_PTR_TO_MAP_VALUE_OR_NULL = 5,
-	ARG_PTR_TO_MEM = 6,
-	ARG_PTR_TO_MEM_OR_NULL = 7,
-	ARG_PTR_TO_UNINIT_MEM = 8,
-	ARG_CONST_SIZE = 9,
-	ARG_CONST_SIZE_OR_ZERO = 10,
-	ARG_PTR_TO_CTX = 11,
-	ARG_PTR_TO_CTX_OR_NULL = 12,
-	ARG_ANYTHING = 13,
-	ARG_PTR_TO_SPIN_LOCK = 14,
-	ARG_PTR_TO_SOCK_COMMON = 15,
-	ARG_PTR_TO_INT = 16,
-	ARG_PTR_TO_LONG = 17,
-	ARG_PTR_TO_SOCKET = 18,
-	ARG_PTR_TO_SOCKET_OR_NULL = 19,
-	ARG_PTR_TO_BTF_ID = 20,
-	ARG_PTR_TO_ALLOC_MEM = 21,
-	ARG_PTR_TO_ALLOC_MEM_OR_NULL = 22,
-	ARG_CONST_ALLOC_SIZE_OR_ZERO = 23,
-	ARG_PTR_TO_BTF_ID_SOCK_COMMON = 24,
-	ARG_PTR_TO_PERCPU_BTF_ID = 25,
-	__BPF_ARG_TYPE_MAX = 26,
+struct bpf_local_storage_data;
+
+struct bpf_local_storage {
+	struct bpf_local_storage_data *cache[16];
+	struct hlist_head list;
+	void *owner;
+	struct callback_head rcu;
+	raw_spinlock_t lock;
 };
 
-enum bpf_return_type {
-	RET_INTEGER = 0,
-	RET_VOID = 1,
-	RET_PTR_TO_MAP_VALUE = 2,
-	RET_PTR_TO_MAP_VALUE_OR_NULL = 3,
-	RET_PTR_TO_SOCKET_OR_NULL = 4,
-	RET_PTR_TO_TCP_SOCK_OR_NULL = 5,
-	RET_PTR_TO_SOCK_COMMON_OR_NULL = 6,
-	RET_PTR_TO_ALLOC_MEM_OR_NULL = 7,
-	RET_PTR_TO_BTF_ID_OR_NULL = 8,
-	RET_PTR_TO_MEM_OR_BTF_ID_OR_NULL = 9,
-	RET_PTR_TO_MEM_OR_BTF_ID = 10,
+struct bpf_local_storage_map_bucket;
+
+struct bpf_local_storage_map {
+	struct bpf_map map;
+	struct bpf_local_storage_map_bucket *buckets;
+	u32 bucket_log;
+	u16 elem_size;
+	u16 cache_idx;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct bpf_func_proto {
@@ -36780,7 +41464,10 @@ struct bpf_insn_access_aux {
 	enum bpf_reg_type reg_type;
 	union {
 		int ctx_field_size;
-		u32 btf_id;
+		struct {
+			struct btf *btf;
+			u32 btf_id;
+		};
 	};
 	struct bpf_verifier_log *log;
 };
@@ -36791,7 +41478,8 @@ struct bpf_verifier_ops {
 	int (*gen_prologue)(struct bpf_insn *, bool, const struct bpf_prog *);
 	int (*gen_ld_abs)(const struct bpf_insn *, struct bpf_insn *);
 	u32 (*convert_ctx_access)(enum bpf_access_type, const struct bpf_insn *, struct bpf_insn *, struct bpf_prog *, u32 *);
-	int (*btf_struct_access)(struct bpf_verifier_log *, const struct btf_type *, int, int, enum bpf_access_type, u32 *);
+	int (*btf_struct_access)(struct bpf_verifier_log *, const struct btf *, const struct btf_type *, int, int, enum bpf_access_type, u32 *);
+	bool (*check_kfunc_call)(u32);
 };
 
 struct bpf_event_entry {
@@ -36803,6 +41491,20 @@ struct bpf_event_entry {
 
 typedef long unsigned int (*bpf_ctx_copy_t)(void *, const void *, long unsigned int, long unsigned int);
 
+struct bpf_trace_run_ctx {
+	struct bpf_run_ctx run_ctx;
+	u64 bpf_cookie;
+};
+
+typedef u32 (*bpf_prog_run_fn)(const struct bpf_prog *, const void *);
+
+struct bpf_bprintf_data {
+	u32 *bin_args;
+	char *buf;
+	bool get_bin_args;
+	bool get_buf;
+};
+
 typedef struct pt_regs bpf_user_pt_regs_t;
 
 struct bpf_perf_event_data {
@@ -36828,6 +41530,16 @@ struct btf_id_set {
 	u32 ids[0];
 };
 
+struct bpf_local_storage_map_bucket {
+	struct hlist_head list;
+	raw_spinlock_t lock;
+};
+
+struct bpf_local_storage_data {
+	struct bpf_local_storage_map *smap;
+	u8 data[0];
+};
+
 struct trace_event_raw_bpf_trace_printk {
 	struct trace_entry ent;
 	u32 __data_loc_bpf_string;
@@ -36845,6 +41557,8 @@ struct bpf_trace_module {
 	struct list_head list;
 };
 
+typedef u64 (*btf_bpf_override_return)(struct pt_regs *, long unsigned int);
+
 typedef u64 (*btf_bpf_probe_read_user)(void *, u32, const void *);
 
 typedef u64 (*btf_bpf_probe_read_user_str)(void *, u32, const void *);
@@ -36861,10 +41575,6 @@ typedef u64 (*btf_bpf_probe_write_user)(void *, const void *, u32);
 
 typedef u64 (*btf_bpf_trace_printk)(char *, u32, u64, u64, u64);
 
-struct bpf_seq_printf_buf {
-	char buf[768];
-};
-
 typedef u64 (*btf_bpf_seq_printf)(struct seq_file *, char *, u32, const void *, u32);
 
 typedef u64 (*btf_bpf_seq_write)(struct seq_file *, const void *, u32);
@@ -36885,7 +41595,11 @@ struct bpf_nested_pt_regs {
 	struct pt_regs regs[3];
 };
 
-typedef u64 (*btf_bpf_get_current_task)();
+typedef u64 (*btf_bpf_get_current_task)(void);
+
+typedef u64 (*btf_bpf_get_current_task_btf)(void);
+
+typedef u64 (*btf_bpf_task_pt_regs)(struct task_struct *);
 
 typedef u64 (*btf_bpf_current_task_under_cgroup)(struct bpf_map *, u32);
 
@@ -36904,6 +41618,14 @@ typedef u64 (*btf_bpf_d_path)(struct path *, char *, u32);
 
 typedef u64 (*btf_bpf_snprintf_btf)(char *, u32, struct btf_ptr *, u32, u64);
 
+typedef u64 (*btf_bpf_get_func_ip_tracing)(void *);
+
+typedef u64 (*btf_bpf_get_func_ip_kprobe)(struct pt_regs *);
+
+typedef u64 (*btf_bpf_get_attach_cookie_trace)(void *);
+
+typedef u64 (*btf_bpf_get_attach_cookie_pe)(struct bpf_perf_event_data_kern *);
+
 typedef u64 (*btf_bpf_perf_event_output_tp)(void *, struct bpf_map *, u64, void *, u64);
 
 typedef u64 (*btf_bpf_get_stackid_tp)(void *, struct bpf_map *, u64);
@@ -36924,25 +41646,6 @@ typedef u64 (*btf_bpf_get_stackid_raw_tp)(struct bpf_raw_tracepoint_args *, stru
 
 typedef u64 (*btf_bpf_get_stack_raw_tp)(struct bpf_raw_tracepoint_args *, void *, u32, u64);
 
-enum dynevent_type {
-	DYNEVENT_TYPE_SYNTH = 1,
-	DYNEVENT_TYPE_KPROBE = 2,
-	DYNEVENT_TYPE_NONE = 3,
-};
-
-struct dynevent_cmd;
-
-typedef int (*dynevent_create_fn_t)(struct dynevent_cmd *);
-
-struct dynevent_cmd {
-	struct seq_buf seq;
-	const char *event_name;
-	unsigned int n_fields;
-	enum dynevent_type type;
-	dynevent_create_fn_t run_command;
-	void *private_data;
-};
-
 struct kprobe_trace_entry_head {
 	struct trace_entry ent;
 	long unsigned int ip;
@@ -36954,176 +41657,6 @@ struct kretprobe_trace_entry_head {
 	long unsigned int ret_ip;
 };
 
-struct dyn_event;
-
-struct dyn_event_operations {
-	struct list_head list;
-	int (*create)(int, const char **);
-	int (*show)(struct seq_file *, struct dyn_event *);
-	bool (*is_busy)(struct dyn_event *);
-	int (*free)(struct dyn_event *);
-	bool (*match)(const char *, const char *, int, const char **, struct dyn_event *);
-};
-
-struct dyn_event {
-	struct list_head list;
-	struct dyn_event_operations *ops;
-};
-
-struct dynevent_arg {
-	const char *str;
-	char separator;
-};
-
-typedef int (*print_type_func_t)(struct trace_seq *, void *, void *);
-
-enum fetch_op {
-	FETCH_OP_NOP = 0,
-	FETCH_OP_REG = 1,
-	FETCH_OP_STACK = 2,
-	FETCH_OP_STACKP = 3,
-	FETCH_OP_RETVAL = 4,
-	FETCH_OP_IMM = 5,
-	FETCH_OP_COMM = 6,
-	FETCH_OP_ARG = 7,
-	FETCH_OP_FOFFS = 8,
-	FETCH_OP_DATA = 9,
-	FETCH_OP_DEREF = 10,
-	FETCH_OP_UDEREF = 11,
-	FETCH_OP_ST_RAW = 12,
-	FETCH_OP_ST_MEM = 13,
-	FETCH_OP_ST_UMEM = 14,
-	FETCH_OP_ST_STRING = 15,
-	FETCH_OP_ST_USTRING = 16,
-	FETCH_OP_MOD_BF = 17,
-	FETCH_OP_LP_ARRAY = 18,
-	FETCH_OP_END = 19,
-	FETCH_NOP_SYMBOL = 20,
-};
-
-struct fetch_insn {
-	enum fetch_op op;
-	union {
-		unsigned int param;
-		struct {
-			unsigned int size;
-			int offset;
-		};
-		struct {
-			unsigned char basesize;
-			unsigned char lshift;
-			unsigned char rshift;
-		};
-		long unsigned int immediate;
-		void *data;
-	};
-};
-
-struct fetch_type {
-	const char *name;
-	size_t size;
-	int is_signed;
-	print_type_func_t print;
-	const char *fmt;
-	const char *fmttype;
-};
-
-struct probe_arg {
-	struct fetch_insn *code;
-	bool dynamic;
-	unsigned int offset;
-	unsigned int count;
-	const char *name;
-	const char *comm;
-	char *fmt;
-	const struct fetch_type *type;
-};
-
-struct trace_uprobe_filter {
-	rwlock_t rwlock;
-	int nr_systemwide;
-	struct list_head perf_events;
-};
-
-struct trace_probe_event {
-	unsigned int flags;
-	struct trace_event_class class;
-	struct trace_event_call call;
-	struct list_head files;
-	struct list_head probes;
-	struct trace_uprobe_filter filter[0];
-};
-
-struct trace_probe {
-	struct list_head list;
-	struct trace_probe_event *event;
-	ssize_t size;
-	unsigned int nr_args;
-	struct probe_arg args[0];
-};
-
-struct event_file_link {
-	struct trace_event_file *file;
-	struct list_head list;
-};
-
-enum {
-	TP_ERR_FILE_NOT_FOUND = 0,
-	TP_ERR_NO_REGULAR_FILE = 1,
-	TP_ERR_BAD_REFCNT = 2,
-	TP_ERR_REFCNT_OPEN_BRACE = 3,
-	TP_ERR_BAD_REFCNT_SUFFIX = 4,
-	TP_ERR_BAD_UPROBE_OFFS = 5,
-	TP_ERR_MAXACT_NO_KPROBE = 6,
-	TP_ERR_BAD_MAXACT = 7,
-	TP_ERR_MAXACT_TOO_BIG = 8,
-	TP_ERR_BAD_PROBE_ADDR = 9,
-	TP_ERR_BAD_RETPROBE = 10,
-	TP_ERR_BAD_ADDR_SUFFIX = 11,
-	TP_ERR_NO_GROUP_NAME = 12,
-	TP_ERR_GROUP_TOO_LONG = 13,
-	TP_ERR_BAD_GROUP_NAME = 14,
-	TP_ERR_NO_EVENT_NAME = 15,
-	TP_ERR_EVENT_TOO_LONG = 16,
-	TP_ERR_BAD_EVENT_NAME = 17,
-	TP_ERR_EVENT_EXIST = 18,
-	TP_ERR_RETVAL_ON_PROBE = 19,
-	TP_ERR_BAD_STACK_NUM = 20,
-	TP_ERR_BAD_ARG_NUM = 21,
-	TP_ERR_BAD_VAR = 22,
-	TP_ERR_BAD_REG_NAME = 23,
-	TP_ERR_BAD_MEM_ADDR = 24,
-	TP_ERR_BAD_IMM = 25,
-	TP_ERR_IMMSTR_NO_CLOSE = 26,
-	TP_ERR_FILE_ON_KPROBE = 27,
-	TP_ERR_BAD_FILE_OFFS = 28,
-	TP_ERR_SYM_ON_UPROBE = 29,
-	TP_ERR_TOO_MANY_OPS = 30,
-	TP_ERR_DEREF_NEED_BRACE = 31,
-	TP_ERR_BAD_DEREF_OFFS = 32,
-	TP_ERR_DEREF_OPEN_BRACE = 33,
-	TP_ERR_COMM_CANT_DEREF = 34,
-	TP_ERR_BAD_FETCH_ARG = 35,
-	TP_ERR_ARRAY_NO_CLOSE = 36,
-	TP_ERR_BAD_ARRAY_SUFFIX = 37,
-	TP_ERR_BAD_ARRAY_NUM = 38,
-	TP_ERR_ARRAY_TOO_BIG = 39,
-	TP_ERR_BAD_TYPE = 40,
-	TP_ERR_BAD_STRING = 41,
-	TP_ERR_BAD_BITFIELD = 42,
-	TP_ERR_ARG_NAME_TOO_LONG = 43,
-	TP_ERR_NO_ARG_NAME = 44,
-	TP_ERR_BAD_ARG_NAME = 45,
-	TP_ERR_USED_ARG_NAME = 46,
-	TP_ERR_ARG_TOO_LONG = 47,
-	TP_ERR_NO_ARG_BODY = 48,
-	TP_ERR_BAD_INSN_BNDRY = 49,
-	TP_ERR_FAIL_REG_PROBE = 50,
-	TP_ERR_DIFF_PROBE_TYPE = 51,
-	TP_ERR_DIFF_ARG_TYPE = 52,
-	TP_ERR_SAME_PROBE = 53,
-};
-
 struct trace_kprobe {
 	struct dyn_event devent;
 	struct kretprobe rp;
@@ -37132,6 +41665,27 @@ struct trace_kprobe {
 	struct trace_probe tp;
 };
 
+struct count_symbols_struct {
+	const char *func_name;
+	unsigned int count;
+};
+
+enum error_detector {
+	ERROR_DETECTOR_KFENCE = 0,
+	ERROR_DETECTOR_KASAN = 1,
+};
+
+struct trace_event_raw_error_report_template {
+	struct trace_entry ent;
+	enum error_detector error_detector;
+	long unsigned int id;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_error_report_template {};
+
+typedef void (*btf_trace_error_report_end)(void *, enum error_detector, long unsigned int);
+
 struct trace_event_raw_cpu {
 	struct trace_entry ent;
 	u32 state;
@@ -37367,15 +41921,6 @@ typedef void (*btf_trace_rpm_usage)(void *, struct device *, int);
 
 typedef void (*btf_trace_rpm_return_int)(void *, struct device *, long unsigned int, int);
 
-typedef int (*dynevent_check_arg_fn_t)(void *);
-
-struct dynevent_arg_pair {
-	const char *lhs;
-	const char *rhs;
-	char operator;
-	char separator;
-};
-
 struct trace_probe_log {
 	const char *subsystem;
 	const char **argv;
@@ -37425,8 +41970,6 @@ struct uprobe_cpu_buffer {
 
 typedef bool (*filter_func_t)(struct uprobe_consumer *, enum uprobe_filter_ctx, struct mm_struct *);
 
-typedef __u64 __le64;
-
 struct rhash_lock_head;
 
 struct bucket_table {
@@ -37463,15 +42006,13 @@ struct xdp_cpumap_stats {
 	unsigned int drop;
 };
 
-typedef void (*bpf_jit_fill_hole_t)(void *, unsigned int);
-
 struct bpf_prog_dummy {
 	struct bpf_prog prog;
 };
 
-typedef u64 (*btf_bpf_user_rnd_u32)();
+typedef u64 (*btf_bpf_user_rnd_u32)(void);
 
-typedef u64 (*btf_bpf_get_raw_cpu_id)();
+typedef u64 (*btf_bpf_get_raw_cpu_id)(void);
 
 struct _bpf_dtab_netdev {
 	struct net_device *dev;
@@ -37481,8 +42022,6 @@ struct rhash_lock_head {};
 
 struct zero_copy_allocator;
 
-struct page_pool;
-
 struct xdp_mem_allocator {
 	struct xdp_mem_info mem;
 	union {
@@ -37610,13 +42149,13 @@ typedef void (*btf_trace_xdp_exception)(void *, const struct net_device *, const
 
 typedef void (*btf_trace_xdp_bulk_tx)(void *, const struct net_device *, int, int, int);
 
-typedef void (*btf_trace_xdp_redirect)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, const struct bpf_map *, u32);
+typedef void (*btf_trace_xdp_redirect)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
 
-typedef void (*btf_trace_xdp_redirect_err)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, const struct bpf_map *, u32);
+typedef void (*btf_trace_xdp_redirect_err)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
 
-typedef void (*btf_trace_xdp_redirect_map)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, const struct bpf_map *, u32);
+typedef void (*btf_trace_xdp_redirect_map)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
 
-typedef void (*btf_trace_xdp_redirect_map_err)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, const struct bpf_map *, u32);
+typedef void (*btf_trace_xdp_redirect_map_err)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
 
 typedef void (*btf_trace_xdp_cpumap_kthread)(void *, int, unsigned int, unsigned int, int, struct xdp_cpumap_stats *);
 
@@ -37642,6 +42181,7 @@ enum bpf_cmd {
 	BPF_PROG_ATTACH = 8,
 	BPF_PROG_DETACH = 9,
 	BPF_PROG_TEST_RUN = 10,
+	BPF_PROG_RUN = 10,
 	BPF_PROG_GET_NEXT_ID = 11,
 	BPF_MAP_GET_NEXT_ID = 12,
 	BPF_PROG_GET_FD_BY_ID = 13,
@@ -37731,6 +42271,7 @@ struct bpf_prog_info {
 	__u64 prog_tags;
 	__u64 run_time_ns;
 	__u64 run_cnt;
+	__u64 recursion_misses;
 };
 
 struct bpf_map_info {
@@ -37754,73 +42295,12 @@ struct bpf_btf_info {
 	__u64 btf;
 	__u32 btf_size;
 	__u32 id;
+	__u64 name;
+	__u32 name_len;
+	__u32 kernel_btf;
 };
 
-struct bpf_spin_lock {
-	__u32 val;
-};
-
-struct bpf_attach_target_info {
-	struct btf_func_model fmodel;
-	long int tgt_addr;
-	const char *tgt_name;
-	const struct btf_type *tgt_type;
-};
-
-struct bpf_link_primer {
-	struct bpf_link *link;
-	struct file *file;
-	int fd;
-	u32 id;
-};
-
-enum perf_bpf_event_type {
-	PERF_BPF_EVENT_UNKNOWN = 0,
-	PERF_BPF_EVENT_PROG_LOAD = 1,
-	PERF_BPF_EVENT_PROG_UNLOAD = 2,
-	PERF_BPF_EVENT_MAX = 3,
-};
-
-enum bpf_audit {
-	BPF_AUDIT_LOAD = 0,
-	BPF_AUDIT_UNLOAD = 1,
-	BPF_AUDIT_MAX = 2,
-};
-
-struct bpf_tracing_link {
-	struct bpf_link link;
-	enum bpf_attach_type attach_type;
-	struct bpf_trampoline *trampoline;
-	struct bpf_prog *tgt_prog;
-};
-
-struct bpf_raw_tp_link {
-	struct bpf_link link;
-	struct bpf_raw_event_map *btp;
-};
-
-struct btf_member {
-	__u32 name_off;
-	__u32 type;
-	__u32 offset;
-};
-
-enum btf_func_linkage {
-	BTF_FUNC_STATIC = 0,
-	BTF_FUNC_GLOBAL = 1,
-	BTF_FUNC_EXTERN = 2,
-};
-
-struct btf_var_secinfo {
-	__u32 type;
-	__u32 offset;
-	__u32 size;
-};
-
-enum sk_action {
-	SK_DROP = 0,
-	SK_PASS = 1,
-};
+typedef sockptr_t bpfptr_t;
 
 struct bpf_verifier_log {
 	u32 level;
@@ -37837,6 +42317,7 @@ struct bpf_subprog_info {
 	bool has_tail_call;
 	bool tail_call_reachable;
 	bool has_ld_abs;
+	bool is_async_cb;
 };
 
 struct bpf_id_pair {
@@ -37865,7 +42346,9 @@ struct bpf_verifier_env {
 	struct bpf_verifier_state_list **explored_states;
 	struct bpf_verifier_state_list *free_list;
 	struct bpf_map *used_maps[64];
+	struct btf_mod_pair used_btfs[64];
 	u32 used_map_cnt;
+	u32 used_btf_cnt;
 	u32 id_gen;
 	bool explore_alu_limits;
 	bool allow_ptr_leaks;
@@ -37896,25 +42379,10 @@ struct bpf_verifier_env {
 	u32 total_states;
 	u32 peak_states;
 	u32 longest_mark_read_walk;
+	bpfptr_t fd_array;
+	char type_str_buf[64];
 };
 
-struct bpf_struct_ops {
-	const struct bpf_verifier_ops *verifier_ops;
-	int (*init)(struct btf *);
-	int (*check_member)(const struct btf_type *, const struct btf_member *);
-	int (*init_member)(const struct btf_type *, const struct btf_member *, void *, const void *);
-	int (*reg)(void *);
-	void (*unreg)(void *);
-	const struct btf_type *type;
-	const struct btf_type *value_type;
-	const char *name;
-	struct btf_func_model func_models[64];
-	u32 type_id;
-	u32 value_id;
-};
-
-typedef u32 (*bpf_convert_ctx_access_t)(enum bpf_access_type, const struct bpf_insn *, struct bpf_insn *, struct bpf_prog *, u32 *);
-
 struct tnum {
 	u64 value;
 	u64 mask;
@@ -37931,14 +42399,24 @@ enum bpf_reg_liveness {
 
 struct bpf_reg_state {
 	enum bpf_reg_type type;
-	union {
-		u16 range;
-		struct bpf_map *map_ptr;
-		u32 btf_id;
-		u32 mem_size;
-		long unsigned int raw;
-	};
 	s32 off;
+	union {
+		int range;
+		struct {
+			struct bpf_map *map_ptr;
+			u32 map_uid;
+		};
+		struct {
+			struct btf *btf;
+			u32 btf_id;
+		};
+		u32 mem_size;
+		struct {
+			long unsigned int raw1;
+			long unsigned int raw2;
+		} raw;
+		u32 subprogno;
+	};
 	u32 id;
 	u32 ref_obj_id;
 	struct tnum var_off;
@@ -37957,11 +42435,36 @@ struct bpf_reg_state {
 	bool precise;
 };
 
-enum bpf_stack_slot_type {
-	STACK_INVALID = 0,
-	STACK_SPILL = 1,
-	STACK_MISC = 2,
-	STACK_ZERO = 3,
+struct bpf_reference_state;
+
+struct bpf_stack_state;
+
+struct bpf_func_state {
+	struct bpf_reg_state regs[11];
+	int callsite;
+	u32 frameno;
+	u32 subprogno;
+	u32 async_entry_cnt;
+	bool in_callback_fn;
+	bool in_async_callback_fn;
+	int acquired_refs;
+	struct bpf_reference_state *refs;
+	int allocated_stack;
+	struct bpf_stack_state *stack;
+};
+
+struct bpf_attach_target_info {
+	struct btf_func_model fmodel;
+	long int tgt_addr;
+	const char *tgt_name;
+	const struct btf_type *tgt_type;
+};
+
+struct bpf_link_primer {
+	struct bpf_link *link;
+	struct file *file;
+	int fd;
+	u32 id;
 };
 
 struct bpf_stack_state {
@@ -37972,17 +42475,7 @@ struct bpf_stack_state {
 struct bpf_reference_state {
 	int id;
 	int insn_idx;
-};
-
-struct bpf_func_state {
-	struct bpf_reg_state regs[11];
-	int callsite;
-	u32 frameno;
-	u32 subprogno;
-	int acquired_refs;
-	struct bpf_reference_state *refs;
-	int allocated_stack;
-	struct bpf_stack_state *stack;
+	int callback_ref;
 };
 
 struct bpf_idx_pair {
@@ -38024,7 +42517,10 @@ struct bpf_insn_aux_data {
 		struct {
 			enum bpf_reg_type reg_type;
 			union {
-				u32 btf_id;
+				struct {
+					struct btf *btf;
+					u32 btf_id;
+				};
 				u32 mem_size;
 			};
 		} btf_var;
@@ -38039,6 +42535,109 @@ struct bpf_insn_aux_data {
 	bool prune_point;
 };
 
+enum perf_bpf_event_type {
+	PERF_BPF_EVENT_UNKNOWN = 0,
+	PERF_BPF_EVENT_PROG_LOAD = 1,
+	PERF_BPF_EVENT_PROG_UNLOAD = 2,
+	PERF_BPF_EVENT_MAX = 3,
+};
+
+enum bpf_audit {
+	BPF_AUDIT_LOAD = 0,
+	BPF_AUDIT_UNLOAD = 1,
+	BPF_AUDIT_MAX = 2,
+};
+
+struct bpf_prog_kstats {
+	u64 nsecs;
+	u64 cnt;
+	u64 misses;
+};
+
+struct bpf_tracing_link {
+	struct bpf_link link;
+	enum bpf_attach_type attach_type;
+	struct bpf_trampoline *trampoline;
+	struct bpf_prog *tgt_prog;
+};
+
+struct bpf_raw_tp_link {
+	struct bpf_link link;
+	struct bpf_raw_event_map *btp;
+};
+
+struct bpf_perf_link {
+	struct bpf_link link;
+	struct file *perf_file;
+};
+
+typedef u64 (*btf_bpf_sys_bpf)(int, void *, u32);
+
+typedef u64 (*btf_bpf_sys_close)(u32);
+
+struct btf_member {
+	__u32 name_off;
+	__u32 type;
+	__u32 offset;
+};
+
+struct btf_param {
+	__u32 name_off;
+	__u32 type;
+};
+
+enum btf_func_linkage {
+	BTF_FUNC_STATIC = 0,
+	BTF_FUNC_GLOBAL = 1,
+	BTF_FUNC_EXTERN = 2,
+};
+
+struct btf_var_secinfo {
+	__u32 type;
+	__u32 offset;
+	__u32 size;
+};
+
+enum sk_action {
+	SK_DROP = 0,
+	SK_PASS = 1,
+};
+
+struct bpf_kfunc_desc {
+	struct btf_func_model func_model;
+	u32 func_id;
+	s32 imm;
+};
+
+struct bpf_kfunc_desc_tab {
+	struct bpf_kfunc_desc descs[256];
+	u32 nr_descs;
+};
+
+struct bpf_struct_ops {
+	const struct bpf_verifier_ops *verifier_ops;
+	int (*init)(struct btf *);
+	int (*check_member)(const struct btf_type *, const struct btf_member *);
+	int (*init_member)(const struct btf_type *, const struct btf_member *, void *, const void *);
+	int (*reg)(void *);
+	void (*unreg)(void *);
+	const struct btf_type *type;
+	const struct btf_type *value_type;
+	const char *name;
+	struct btf_func_model func_models[64];
+	u32 type_id;
+	u32 value_id;
+};
+
+typedef u32 (*bpf_convert_ctx_access_t)(enum bpf_access_type, const struct bpf_insn *, struct bpf_insn *, struct bpf_prog *, u32 *);
+
+enum bpf_stack_slot_type {
+	STACK_INVALID = 0,
+	STACK_SPILL = 1,
+	STACK_MISC = 2,
+	STACK_ZERO = 3,
+};
+
 struct bpf_verifier_stack_elem {
 	struct bpf_verifier_state st;
 	int insn_idx;
@@ -38061,7 +42660,8 @@ enum {
 	BTF_SOCK_TYPE_TCP6 = 10,
 	BTF_SOCK_TYPE_UDP = 11,
 	BTF_SOCK_TYPE_UDP6 = 12,
-	MAX_BTF_SOCK_TYPE = 13,
+	BTF_SOCK_TYPE_UNIX = 13,
+	MAX_BTF_SOCK_TYPE = 14,
 };
 
 typedef void (*bpf_insn_print_t)(void *, const char *, ...);
@@ -38086,9 +42686,13 @@ struct bpf_call_arg_meta {
 	int mem_size;
 	u64 msize_max_value;
 	int ref_obj_id;
+	int map_uid;
 	int func_id;
+	struct btf *btf;
 	u32 btf_id;
+	struct btf *ret_btf;
 	u32 ret_btf_id;
+	u32 subprogno;
 };
 
 enum reg_arg_type {
@@ -38107,6 +42711,13 @@ struct bpf_reg_types {
 	u32 *btf_id;
 };
 
+enum {
+	AT_PKT_END = 4294967295,
+	BEYOND_PKT_END = 4294967294,
+};
+
+typedef int (*set_callee_state_fn)(struct bpf_verifier_env *, struct bpf_func_state *, struct bpf_func_state *, int);
+
 enum {
 	REASON_BOUNDS = 4294967295,
 	REASON_TYPE = 4294967294,
@@ -38127,20 +42738,17 @@ enum {
 	BRANCH = 2,
 };
 
+enum {
+	DONE_EXPLORING = 0,
+	KEEP_EXPLORING = 1,
+};
+
 struct tree_descr {
 	const char *name;
 	const struct file_operations *ops;
 	int mode;
 };
 
-struct umd_info {
-	const char *driver_name;
-	struct file *pipe_to_umh;
-	struct file *pipe_from_umh;
-	struct path wd;
-	struct pid *tgid;
-};
-
 struct bpf_preload_info {
 	char link_name[16];
 	int link_id;
@@ -38149,7 +42757,7 @@ struct bpf_preload_info {
 struct bpf_preload_ops {
 	struct umd_info info;
 	int (*preload)(struct bpf_preload_info *);
-	int (*finish)();
+	int (*finish)(void);
 	struct module *owner;
 };
 
@@ -38173,14 +42781,18 @@ struct bpf_mount_opts {
 	umode_t mode;
 };
 
+struct bpf_spin_lock {
+	__u32 val;
+};
+
 struct bpf_pidns_info {
 	__u32 pid;
 	__u32 tgid;
 };
 
-struct bpf_cgroup_storage_info {
-	struct task_struct *task;
-	struct bpf_cgroup_storage *storage[2];
+struct bpf_cg_run_ctx {
+	struct bpf_run_ctx run_ctx;
+	const struct bpf_prog_array_item *prog_item;
 };
 
 typedef u64 (*btf_bpf_map_lookup_elem)(struct bpf_map *, void *);
@@ -38195,17 +42807,19 @@ typedef u64 (*btf_bpf_map_pop_elem)(struct bpf_map *, void *);
 
 typedef u64 (*btf_bpf_map_peek_elem)(struct bpf_map *, void *);
 
-typedef u64 (*btf_bpf_get_smp_processor_id)();
+typedef u64 (*btf_bpf_get_smp_processor_id)(void);
 
-typedef u64 (*btf_bpf_get_numa_node_id)();
+typedef u64 (*btf_bpf_get_numa_node_id)(void);
 
-typedef u64 (*btf_bpf_ktime_get_ns)();
+typedef u64 (*btf_bpf_ktime_get_ns)(void);
 
-typedef u64 (*btf_bpf_ktime_get_boot_ns)();
+typedef u64 (*btf_bpf_ktime_get_boot_ns)(void);
 
-typedef u64 (*btf_bpf_get_current_pid_tgid)();
+typedef u64 (*btf_bpf_ktime_get_coarse_ns)(void);
 
-typedef u64 (*btf_bpf_get_current_uid_gid)();
+typedef u64 (*btf_bpf_get_current_pid_tgid)(void);
+
+typedef u64 (*btf_bpf_get_current_uid_gid)(void);
 
 typedef u64 (*btf_bpf_get_current_comm)(char *, u32);
 
@@ -38213,17 +42827,17 @@ typedef u64 (*btf_bpf_spin_lock)(struct bpf_spin_lock *);
 
 typedef u64 (*btf_bpf_spin_unlock)(struct bpf_spin_lock *);
 
-typedef u64 (*btf_bpf_jiffies64)();
+typedef u64 (*btf_bpf_jiffies64)(void);
 
-typedef u64 (*btf_bpf_get_current_cgroup_id)();
+typedef u64 (*btf_bpf_get_current_cgroup_id)(void);
 
 typedef u64 (*btf_bpf_get_current_ancestor_cgroup_id)(int);
 
 typedef u64 (*btf_bpf_get_local_storage)(struct bpf_map *, u64);
 
-typedef u64 (*btf_bpf_strtol)(const char *, size_t, u64, long int *);
+typedef u64 (*btf_bpf_strtol)(const char *, size_t, u64, s64 *);
 
-typedef u64 (*btf_bpf_strtoul)(const char *, size_t, u64, long unsigned int *);
+typedef u64 (*btf_bpf_strtoul)(const char *, size_t, u64, u64 *);
 
 typedef u64 (*btf_bpf_get_ns_current_pid_tgid)(u64, u64, struct bpf_pidns_info *, u32);
 
@@ -38235,6 +42849,35 @@ typedef u64 (*btf_bpf_per_cpu_ptr)(const void *, u32);
 
 typedef u64 (*btf_bpf_this_cpu_ptr)(const void *);
 
+struct bpf_bprintf_buffers {
+	char bin_args[512];
+	char buf[1024];
+};
+
+typedef u64 (*btf_bpf_snprintf)(char *, u32, char *, const void *, u32);
+
+struct bpf_hrtimer {
+	struct hrtimer timer;
+	struct bpf_map *map;
+	struct bpf_prog *prog;
+	void *callback_fn;
+	void *value;
+	struct callback_head rcu;
+};
+
+struct bpf_timer_kern {
+	struct bpf_hrtimer *timer;
+	struct bpf_spin_lock lock;
+};
+
+typedef u64 (*btf_bpf_timer_init)(struct bpf_timer_kern *, struct bpf_map *, u64);
+
+typedef u64 (*btf_bpf_timer_set_callback)(struct bpf_timer_kern *, void *, struct bpf_prog_aux *);
+
+typedef u64 (*btf_bpf_timer_start)(struct bpf_timer_kern *, u64, u64);
+
+typedef u64 (*btf_bpf_timer_cancel)(struct bpf_timer_kern *);
+
 union bpf_iter_link_info {
 	struct {
 		__u32 map_fd;
@@ -38249,13 +42892,21 @@ typedef void (*bpf_iter_show_fdinfo_t)(const struct bpf_iter_aux_info *, struct
 
 typedef int (*bpf_iter_fill_link_info_t)(const struct bpf_iter_aux_info *, struct bpf_link_info *);
 
+typedef const struct bpf_func_proto * (*bpf_iter_get_func_proto_t)(enum bpf_func_id, const struct bpf_prog *);
+
+enum bpf_iter_feature {
+	BPF_ITER_RESCHED = 1,
+};
+
 struct bpf_iter_reg {
 	const char *target;
 	bpf_iter_attach_target_t attach_target;
 	bpf_iter_detach_target_t detach_target;
 	bpf_iter_show_fdinfo_t show_fdinfo;
 	bpf_iter_fill_link_info_t fill_link_info;
+	bpf_iter_get_func_proto_t get_func_proto;
 	u32 ctx_arg_info_size;
+	u32 feature;
 	struct bpf_ctx_arg_aux ctx_arg_info[2];
 	const struct bpf_iter_seq_info *seq_info;
 };
@@ -38291,6 +42942,8 @@ struct bpf_iter_priv_data {
 	u8 target_private[0];
 };
 
+typedef u64 (*btf_bpf_for_each_map_elem)(struct bpf_map *, void *, void *, u64);
+
 struct bpf_iter_seq_map_info {
 	u32 map_id;
 };
@@ -38325,7 +42978,6 @@ struct bpf_iter__task {
 struct bpf_iter_seq_task_file_info {
 	struct bpf_iter_seq_task_common common;
 	struct task_struct *task;
-	struct files_struct *files;
 	u32 tid;
 	u32 fd;
 };
@@ -38343,6 +42995,33 @@ struct bpf_iter__task_file {
 	};
 };
 
+struct bpf_iter_seq_task_vma_info {
+	struct bpf_iter_seq_task_common common;
+	struct task_struct *task;
+	struct vm_area_struct *vma;
+	u32 tid;
+	long unsigned int prev_vm_start;
+	long unsigned int prev_vm_end;
+};
+
+enum bpf_task_vma_iter_find_op {
+	task_vma_iter_first_vma = 0,
+	task_vma_iter_next_vma = 1,
+	task_vma_iter_find_vma = 2,
+};
+
+struct bpf_iter__task_vma {
+	union {
+		struct bpf_iter_meta *meta;
+	};
+	union {
+		struct task_struct *task;
+	};
+	union {
+		struct vm_area_struct *vma;
+	};
+};
+
 struct bpf_iter_seq_prog_info {
 	u32 prog_id;
 };
@@ -38473,6 +43152,8 @@ struct bpf_htab {
 	u32 n_buckets;
 	u32 elem_size;
 	u32 hashrnd;
+	struct lock_class_key lockdep_key;
+	int *map_locked[8];
 	long: 64;
 	long: 64;
 	long: 64;
@@ -39619,7 +44300,7 @@ struct bpf_ringbuf {
 	long: 64;
 	long: 64;
 	long unsigned int producer_pos;
-	long: 64;
+	long unsigned int pending_pos;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -40135,13 +44816,14 @@ struct bpf_ringbuf {
 
 struct bpf_ringbuf_map {
 	struct bpf_map map;
-	struct bpf_map_memory memory;
 	struct bpf_ringbuf *rb;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
 	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct bpf_ringbuf_hdr {
@@ -40159,47 +44841,6 @@ typedef u64 (*btf_bpf_ringbuf_output)(struct bpf_map *, void *, u64, u64);
 
 typedef u64 (*btf_bpf_ringbuf_query)(struct bpf_map *, u64);
 
-enum {
-	BPF_LOCAL_STORAGE_GET_F_CREATE = 1,
-	BPF_SK_STORAGE_GET_F_CREATE = 1,
-};
-
-struct bpf_local_storage_map_bucket;
-
-struct bpf_local_storage_map {
-	struct bpf_map map;
-	struct bpf_local_storage_map_bucket *buckets;
-	u32 bucket_log;
-	u16 elem_size;
-	u16 cache_idx;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct bpf_local_storage_data;
-
-struct bpf_local_storage {
-	struct bpf_local_storage_data *cache[16];
-	struct hlist_head list;
-	void *owner;
-	struct callback_head rcu;
-	raw_spinlock_t lock;
-};
-
-struct bpf_local_storage_map_bucket {
-	struct hlist_head list;
-	raw_spinlock_t lock;
-};
-
-struct bpf_local_storage_data {
-	struct bpf_local_storage_map *smap;
-	u8 data[0];
-};
-
 struct bpf_local_storage_elem {
 	struct hlist_node map_node;
 	struct hlist_node snode;
@@ -40221,10 +44862,21 @@ struct bpf_local_storage_cache {
 	u64 idx_usage_counts[16];
 };
 
+enum {
+	BPF_LOCAL_STORAGE_GET_F_CREATE = 1,
+	BPF_SK_STORAGE_GET_F_CREATE = 1,
+};
+
+typedef u64 (*btf_bpf_task_storage_get)(struct bpf_map *, struct task_struct *, void *, u64);
+
+typedef u64 (*btf_bpf_task_storage_delete)(struct bpf_map *, struct task_struct *);
+
 struct lsm_blob_sizes {
 	int lbs_cred;
 	int lbs_file;
 	int lbs_inode;
+	int lbs_superblock;
+	int lbs_sock;
 	int lbs_ipc;
 	int lbs_msg_msg;
 	int lbs_task;
@@ -40249,11 +44901,6 @@ struct btf_array {
 	__u32 nelems;
 };
 
-struct btf_param {
-	__u32 name_off;
-	__u32 type;
-};
-
 enum {
 	BTF_VAR_STATIC = 0,
 	BTF_VAR_GLOBAL_ALLOCATED = 1,
@@ -40386,6 +45033,12 @@ struct sk_reuseport_md {
 	__u32 ip_protocol;
 	__u32 bind_inany;
 	__u32 hash;
+	union {
+		struct bpf_sock *sk;
+	};
+	union {
+		struct bpf_sock *migrating_sk;
+	};
 };
 
 struct bpf_sock_addr {
@@ -40494,7 +45147,7 @@ struct bpf_sk_lookup {
 	__u32 protocol;
 	__u32 remote_ip4;
 	__u32 remote_ip6[4];
-	__u32 remote_port;
+	__be16 remote_port;
 	__u32 local_ip4;
 	__u32 local_ip6[4];
 	__u32 local_port;
@@ -40504,6 +45157,7 @@ struct sk_reuseport_kern {
 	struct sk_buff *skb;
 	struct sock *sk;
 	struct sock *selected_sk;
+	struct sock *migrating_sk;
 	void *data_end;
 	u32 hash;
 	u32 reuseport_id;
@@ -40513,23 +45167,16 @@ struct sk_reuseport_kern {
 struct bpf_flow_dissector {
 	struct bpf_flow_keys *flow_keys;
 	const struct sk_buff *skb;
-	void *data;
-	void *data_end;
-};
-
-struct inet_listen_hashbucket {
-	spinlock_t lock;
-	unsigned int count;
-	union {
-		struct hlist_head head;
-		struct hlist_nulls_head nulls_head;
-	};
+	const void *data;
+	const void *data_end;
 };
 
 struct inet_ehash_bucket;
 
 struct inet_bind_hashbucket;
 
+struct inet_listen_hashbucket;
+
 struct inet_hashinfo {
 	struct inet_ehash_bucket *ehash;
 	spinlock_t *ehash_locks;
@@ -40540,8 +45187,6 @@ struct inet_hashinfo {
 	unsigned int bhash_size;
 	unsigned int lhash2_mask;
 	struct inet_listen_hashbucket *lhash2;
-	long: 64;
-	struct inet_listen_hashbucket listening_hash[32];
 };
 
 struct ip_ra_chain {
@@ -40575,20 +45220,6 @@ struct tcp_fastopen_context {
 	struct callback_head rcu;
 };
 
-struct xdp_txq_info {
-	struct net_device *dev;
-};
-
-struct xdp_buff {
-	void *data;
-	void *data_end;
-	void *data_meta;
-	void *data_hard_start;
-	struct xdp_rxq_info *rxq;
-	struct xdp_txq_info *txq;
-	u32 frame_sz;
-};
-
 struct bpf_sock_addr_kern {
 	struct sock *sk;
 	struct sockaddr *uaddr;
@@ -40667,6 +45298,8 @@ struct sock_reuseport {
 	struct callback_head rcu;
 	u16 max_socks;
 	u16 num_socks;
+	u16 num_closed_socks;
+	u16 incoming_cpu;
 	unsigned int synq_overflow_ts;
 	unsigned int reuseport_id;
 	unsigned int bind_inany: 1;
@@ -40675,6 +45308,87 @@ struct sock_reuseport {
 	struct sock *socks[0];
 };
 
+struct sk_psock_progs {
+	struct bpf_prog *msg_parser;
+	struct bpf_prog *stream_parser;
+	struct bpf_prog *stream_verdict;
+	struct bpf_prog *skb_verdict;
+};
+
+struct strp_stats {
+	long long unsigned int msgs;
+	long long unsigned int bytes;
+	unsigned int mem_fail;
+	unsigned int need_more_hdr;
+	unsigned int msg_too_big;
+	unsigned int msg_timeouts;
+	unsigned int bad_hdr_len;
+};
+
+struct strparser;
+
+struct strp_callbacks {
+	int (*parse_msg)(struct strparser *, struct sk_buff *);
+	void (*rcv_msg)(struct strparser *, struct sk_buff *);
+	int (*read_sock_done)(struct strparser *, int);
+	void (*abort_parser)(struct strparser *, int);
+	void (*lock)(struct strparser *);
+	void (*unlock)(struct strparser *);
+};
+
+struct strparser {
+	struct sock *sk;
+	u32 stopped: 1;
+	u32 paused: 1;
+	u32 aborted: 1;
+	u32 interrupted: 1;
+	u32 unrecov_intr: 1;
+	struct sk_buff **skb_nextp;
+	struct sk_buff *skb_head;
+	unsigned int need_bytes;
+	struct delayed_work msg_timer_work;
+	struct work_struct work;
+	struct strp_stats stats;
+	struct strp_callbacks cb;
+};
+
+struct sk_psock_work_state {
+	u32 len;
+	u32 off;
+};
+
+struct sk_msg;
+
+struct sk_psock {
+	struct sock *sk;
+	struct sock *sk_redir;
+	u32 apply_bytes;
+	u32 cork_bytes;
+	u32 eval;
+	bool redir_ingress;
+	struct sk_msg *cork;
+	struct sk_psock_progs progs;
+	struct strparser strp;
+	struct sk_buff_head ingress_skb;
+	struct list_head ingress_msg;
+	spinlock_t ingress_lock;
+	long unsigned int state;
+	struct list_head link;
+	spinlock_t link_lock;
+	refcount_t refcnt;
+	void (*saved_unhash)(struct sock *);
+	void (*saved_destroy)(struct sock *);
+	void (*saved_close)(struct sock *, long int);
+	void (*saved_write_space)(struct sock *);
+	void (*saved_data_ready)(struct sock *);
+	int (*psock_update_sk_prot)(struct sock *, struct sk_psock *, bool);
+	struct proto *sk_proto;
+	struct mutex work_mutex;
+	struct sk_psock_work_state work_state;
+	struct delayed_work work;
+	struct rcu_work rwork;
+};
+
 struct inet_ehash_bucket {
 	struct hlist_nulls_head chain;
 };
@@ -40684,6 +45398,11 @@ struct inet_bind_hashbucket {
 	struct hlist_head chain;
 };
 
+struct inet_listen_hashbucket {
+	spinlock_t lock;
+	struct hlist_nulls_head nulls_head;
+};
+
 struct ack_sample {
 	u32 pkts_acked;
 	s32 rtt_us;
@@ -40863,6 +45582,8 @@ struct bpf_ctx_convert {
 	void *BPF_PROG_TYPE_EXT_kern;
 	void *BPF_PROG_TYPE_LSM_prog;
 	void *BPF_PROG_TYPE_LSM_kern;
+	void *BPF_PROG_TYPE_SYSCALL_prog;
+	void *BPF_PROG_TYPE_SYSCALL_kern;
 };
 
 enum {
@@ -40895,7 +45616,8 @@ enum {
 	__ctx_convertBPF_PROG_TYPE_STRUCT_OPS = 26,
 	__ctx_convertBPF_PROG_TYPE_EXT = 27,
 	__ctx_convertBPF_PROG_TYPE_LSM = 28,
-	__ctx_convert_unused = 29,
+	__ctx_convertBPF_PROG_TYPE_SYSCALL = 29,
+	__ctx_convert_unused = 30,
 };
 
 enum bpf_struct_walk_result {
@@ -40910,6 +45632,20 @@ struct btf_show_snprintf {
 	int len;
 };
 
+enum {
+	BTF_MODULE_F_LIVE = 1,
+};
+
+struct btf_module {
+	struct list_head list;
+	struct module *module;
+	struct btf *btf;
+	struct bin_attribute *sysfs_attr;
+	int flags;
+};
+
+typedef u64 (*btf_bpf_btf_find_by_name_kind)(char *, int, u32, int);
+
 struct bpf_dispatcher_prog {
 	struct bpf_prog *prog;
 	refcount_t users;
@@ -40925,6 +45661,11 @@ struct bpf_dispatcher {
 	struct bpf_ksym ksym;
 };
 
+enum {
+	BPF_F_BROADCAST = 8,
+	BPF_F_EXCLUDE_INGRESS = 16,
+};
+
 struct bpf_devmap_val {
 	__u32 ifindex;
 	union {
@@ -40955,11 +45696,47 @@ enum net_device_flags {
 	IFF_ECHO = 262144,
 };
 
+enum netdev_priv_flags {
+	IFF_802_1Q_VLAN = 1,
+	IFF_EBRIDGE = 2,
+	IFF_BONDING = 4,
+	IFF_ISATAP = 8,
+	IFF_WAN_HDLC = 16,
+	IFF_XMIT_DST_RELEASE = 32,
+	IFF_DONT_BRIDGE = 64,
+	IFF_DISABLE_NETPOLL = 128,
+	IFF_MACVLAN_PORT = 256,
+	IFF_BRIDGE_PORT = 512,
+	IFF_OVS_DATAPATH = 1024,
+	IFF_TX_SKB_SHARING = 2048,
+	IFF_UNICAST_FLT = 4096,
+	IFF_TEAM_PORT = 8192,
+	IFF_SUPP_NOFCS = 16384,
+	IFF_LIVE_ADDR_CHANGE = 32768,
+	IFF_MACVLAN = 65536,
+	IFF_XMIT_DST_RELEASE_PERM = 131072,
+	IFF_L3MDEV_MASTER = 262144,
+	IFF_NO_QUEUE = 524288,
+	IFF_OPENVSWITCH = 1048576,
+	IFF_L3MDEV_SLAVE = 2097152,
+	IFF_TEAM = 4194304,
+	IFF_RXFH_CONFIGURED = 8388608,
+	IFF_PHONY_HEADROOM = 16777216,
+	IFF_MACSEC = 33554432,
+	IFF_NO_RX_HANDLER = 67108864,
+	IFF_FAILOVER = 134217728,
+	IFF_FAILOVER_SLAVE = 268435456,
+	IFF_L3MDEV_RX_HANDLER = 536870912,
+	IFF_LIVE_RENAME_OK = 1073741824,
+	IFF_TX_SKB_NO_LINEAR = 2147483648,
+};
+
 struct xdp_dev_bulk_queue {
 	struct xdp_frame *q[16];
 	struct list_head flush_node;
 	struct net_device *dev;
 	struct net_device *dev_rx;
+	struct bpf_prog *xdp_prog;
 	unsigned int count;
 };
 
@@ -41005,6 +45782,25 @@ struct netdev_notifier_info {
 	struct netlink_ext_ack *extack;
 };
 
+struct bpf_nh_params {
+	u32 nh_family;
+	union {
+		u32 ipv4_nh;
+		struct in6_addr ipv6_nh;
+	};
+};
+
+struct bpf_redirect_info {
+	u32 flags;
+	u32 tgt_index;
+	void *tgt_value;
+	struct bpf_map *map;
+	u32 map_id;
+	enum bpf_map_type map_type;
+	u32 kern_flags;
+	struct bpf_nh_params nh;
+};
+
 struct bpf_dtab;
 
 struct bpf_dtab_netdev {
@@ -41037,75 +45833,6 @@ struct bpf_cpumap_val {
 	} bpf_prog;
 };
 
-typedef struct bio_vec skb_frag_t;
-
-struct skb_shared_hwtstamps {
-	ktime_t hwtstamp;
-};
-
-struct skb_shared_info {
-	__u8 __unused;
-	__u8 meta_len;
-	__u8 nr_frags;
-	__u8 tx_flags;
-	short unsigned int gso_size;
-	short unsigned int gso_segs;
-	struct sk_buff *frag_list;
-	struct skb_shared_hwtstamps hwtstamps;
-	unsigned int gso_type;
-	u32 tskey;
-	atomic_t dataref;
-	void *destructor_arg;
-	skb_frag_t frags[17];
-};
-
-struct bpf_nh_params {
-	u32 nh_family;
-	union {
-		u32 ipv4_nh;
-		struct in6_addr ipv6_nh;
-	};
-};
-
-struct bpf_redirect_info {
-	u32 flags;
-	u32 tgt_index;
-	void *tgt_value;
-	struct bpf_map *map;
-	u32 kern_flags;
-	struct bpf_nh_params nh;
-};
-
-struct ptr_ring {
-	int producer;
-	spinlock_t producer_lock;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	int consumer_head;
-	int consumer_tail;
-	spinlock_t consumer_lock;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	int size;
-	int batch;
-	void **queue;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
 struct bpf_cpu_map_entry;
 
 struct xdp_bulk_queue {
@@ -41129,6 +45856,7 @@ struct bpf_cpu_map_entry {
 	atomic_t refcnt;
 	struct callback_head rcu;
 	struct work_struct kthread_stop_wq;
+	struct completion kthread_running;
 };
 
 struct bpf_cpu_map {
@@ -41164,6 +45892,8 @@ struct bpf_offload_dev {
 	void *priv;
 };
 
+typedef struct ns_common *ns_get_path_helper_t(void *);
+
 struct bpf_offload_netdev {
 	struct rhash_head l;
 	struct net_device *netdev;
@@ -41214,46 +45944,6 @@ enum {
 	BPF_F_USER_BUILD_ID = 2048,
 };
 
-typedef __u32 Elf32_Addr;
-
-typedef __u16 Elf32_Half;
-
-typedef __u32 Elf32_Off;
-
-struct elf32_hdr {
-	unsigned char e_ident[16];
-	Elf32_Half e_type;
-	Elf32_Half e_machine;
-	Elf32_Word e_version;
-	Elf32_Addr e_entry;
-	Elf32_Off e_phoff;
-	Elf32_Off e_shoff;
-	Elf32_Word e_flags;
-	Elf32_Half e_ehsize;
-	Elf32_Half e_phentsize;
-	Elf32_Half e_phnum;
-	Elf32_Half e_shentsize;
-	Elf32_Half e_shnum;
-	Elf32_Half e_shstrndx;
-};
-
-typedef struct elf32_hdr Elf32_Ehdr;
-
-struct elf32_phdr {
-	Elf32_Word p_type;
-	Elf32_Off p_offset;
-	Elf32_Addr p_vaddr;
-	Elf32_Addr p_paddr;
-	Elf32_Word p_filesz;
-	Elf32_Word p_memsz;
-	Elf32_Word p_flags;
-	Elf32_Word p_align;
-};
-
-typedef struct elf32_phdr Elf32_Phdr;
-
-typedef struct elf32_note Elf32_Nhdr;
-
 enum perf_callchain_context {
 	PERF_CONTEXT_HV = 4294967264,
 	PERF_CONTEXT_KERNEL = 4294967168,
@@ -41315,7 +46005,6 @@ struct qdisc_skb_cb {
 		u16 tc_classid;
 	};
 	unsigned char data[20];
-	u16 mru;
 };
 
 struct bpf_skb_data_end {
@@ -41324,6 +46013,10 @@ struct bpf_skb_data_end {
 	void *data_end;
 };
 
+struct bpf_sockopt_buf {
+	u8 data[32];
+};
+
 enum {
 	TCPF_ESTABLISHED = 2,
 	TCPF_SYN_SENT = 4,
@@ -41347,6 +46040,8 @@ typedef u64 (*btf_bpf_sysctl_get_new_value)(struct bpf_sysctl_kern *, char *, si
 
 typedef u64 (*btf_bpf_sysctl_set_new_value)(struct bpf_sysctl_kern *, const char *, size_t);
 
+typedef u64 (*btf_bpf_get_netns_cookie_sockopt)(struct bpf_sockopt_kern *);
+
 enum sock_type {
 	SOCK_STREAM = 1,
 	SOCK_DGRAM = 2,
@@ -41444,11 +46139,18 @@ struct bpf_struct_ops_value {
 
 struct bpf_struct_ops_map {
 	struct bpf_map map;
+	struct callback_head rcu;
 	const struct bpf_struct_ops *st_ops;
 	struct mutex lock;
 	struct bpf_prog **progs;
 	void *image;
 	struct bpf_struct_ops_value *uvalue;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 	struct bpf_struct_ops_value kvalue;
 };
 
@@ -41463,11 +46165,6 @@ struct bpf_struct_ops_tcp_congestion_ops {
 	long: 64;
 	long: 64;
 	struct tcp_congestion_ops data;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
 };
 
 struct sembuf {
@@ -41510,6 +46207,14 @@ struct xfrm_user_sec_ctx {
 	__u16 ctx_len;
 };
 
+enum {
+	BPF_F_BPRM_SECUREEXEC = 1,
+};
+
+typedef u64 (*btf_bpf_bprm_opts_set)(struct linux_binprm *, u64);
+
+typedef u64 (*btf_bpf_ima_inode_hash)(struct inode *, void *, u32);
+
 struct static_call_tramp_key {
 	s32 tramp;
 	s32 key;
@@ -41520,7 +46225,8 @@ enum perf_event_read_format {
 	PERF_FORMAT_TOTAL_TIME_RUNNING = 2,
 	PERF_FORMAT_ID = 4,
 	PERF_FORMAT_GROUP = 8,
-	PERF_FORMAT_MAX = 16,
+	PERF_FORMAT_LOST = 16,
+	PERF_FORMAT_MAX = 32,
 };
 
 enum perf_event_ioc_flags {
@@ -41596,6 +46302,7 @@ struct perf_buffer {
 	atomic_t mmap_count;
 	long unsigned int mmap_locked;
 	struct user_struct *mmap_user;
+	struct mutex aux_mutex;
 	long int aux_head;
 	unsigned int aux_nest;
 	long int aux_wakeup;
@@ -41659,6 +46366,11 @@ enum event_type_t {
 	EVENT_ALL = 3,
 };
 
+struct __group_key {
+	int cpu;
+	struct cgroup *cgroup;
+};
+
 struct stop_event_data {
 	struct perf_event *event;
 	unsigned int restart;
@@ -41738,6 +46450,8 @@ struct perf_mmap_event {
 	u64 ino_generation;
 	u32 prot;
 	u32 flags;
+	u8 build_id[20];
+	u32 build_id_size;
 	struct {
 		struct perf_event_header header;
 		u32 pid;
@@ -41883,8 +46597,6 @@ struct xol_area {
 	long unsigned int vaddr;
 };
 
-typedef long unsigned int vm_flags_t;
-
 struct compact_control;
 
 struct capture_control {
@@ -41892,6 +46604,8 @@ struct capture_control {
 	struct page *page;
 };
 
+typedef int filler_t(void *, struct page *);
+
 struct page_vma_mapped_walk {
 	struct page *page;
 	struct vm_area_struct *vma;
@@ -41938,6 +46652,11 @@ struct delayed_uprobe {
 	struct mm_struct *mm;
 };
 
+struct __uprobe_key {
+	struct inode *inode;
+	loff_t offset;
+};
+
 struct map_info {
 	struct map_info *next;
 	struct mm_struct *mm;
@@ -41976,7 +46695,7 @@ struct parallel_data {
 	struct padata_shell *ps;
 	struct padata_list *reorder_list;
 	struct padata_serial_queue *squeue;
-	atomic_t refcnt;
+	refcount_t refcnt;
 	unsigned int seq_nr;
 	unsigned int processed;
 	int cpu;
@@ -42118,20 +46837,211 @@ typedef void (*btf_trace_rseq_update)(void *, struct task_struct *);
 
 typedef void (*btf_trace_rseq_ip_fixup)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
 
-struct pkcs7_message;
+struct watch;
 
-typedef void (*xa_update_node_t)(struct xa_node *);
+struct watch_list {
+	struct callback_head rcu;
+	struct hlist_head watchers;
+	void (*release_watch)(struct watch *);
+	spinlock_t lock;
+};
 
-struct xa_state {
-	struct xarray *xa;
-	long unsigned int xa_index;
-	unsigned char xa_shift;
-	unsigned char xa_sibs;
-	unsigned char xa_offset;
-	unsigned char xa_pad;
-	struct xa_node *xa_node;
-	struct xa_node *xa_alloc;
-	xa_update_node_t xa_update;
+enum watch_notification_type {
+	WATCH_TYPE_META = 0,
+	WATCH_TYPE_KEY_NOTIFY = 1,
+	WATCH_TYPE__NR = 2,
+};
+
+enum watch_meta_notification_subtype {
+	WATCH_META_REMOVAL_NOTIFICATION = 0,
+	WATCH_META_LOSS_NOTIFICATION = 1,
+};
+
+struct watch_notification {
+	__u32 type: 24;
+	__u32 subtype: 8;
+	__u32 info;
+};
+
+struct watch_notification_type_filter {
+	__u32 type;
+	__u32 info_filter;
+	__u32 info_mask;
+	__u32 subtype_filter[8];
+};
+
+struct watch_notification_filter {
+	__u32 nr_filters;
+	__u32 __reserved;
+	struct watch_notification_type_filter filters[0];
+};
+
+struct watch_notification_removal {
+	struct watch_notification watch;
+	__u64 id;
+};
+
+struct watch_type_filter {
+	enum watch_notification_type type;
+	__u32 subtype_filter[1];
+	__u32 info_filter;
+	__u32 info_mask;
+};
+
+struct watch_filter {
+	union {
+		struct callback_head rcu;
+		long unsigned int type_filter[1];
+	};
+	u32 nr_filters;
+	struct watch_type_filter filters[0];
+};
+
+struct watch_queue {
+	struct callback_head rcu;
+	struct watch_filter *filter;
+	struct pipe_inode_info *pipe;
+	struct hlist_head watches;
+	struct page **notes;
+	long unsigned int *notes_bitmap;
+	struct kref usage;
+	spinlock_t lock;
+	unsigned int nr_notes;
+	unsigned int nr_pages;
+	bool defunct;
+};
+
+struct watch {
+	union {
+		struct callback_head rcu;
+		u32 info_id;
+	};
+	struct watch_queue *queue;
+	struct hlist_node queue_node;
+	struct watch_list *watch_list;
+	struct hlist_node list_node;
+	const struct cred *cred;
+	void *private;
+	u64 id;
+	struct kref usage;
+};
+
+enum OID {
+	OID_id_dsa_with_sha1 = 0,
+	OID_id_dsa = 1,
+	OID_id_ecPublicKey = 2,
+	OID_id_prime192v1 = 3,
+	OID_id_prime256v1 = 4,
+	OID_id_ecdsa_with_sha1 = 5,
+	OID_id_ecdsa_with_sha224 = 6,
+	OID_id_ecdsa_with_sha256 = 7,
+	OID_id_ecdsa_with_sha384 = 8,
+	OID_id_ecdsa_with_sha512 = 9,
+	OID_rsaEncryption = 10,
+	OID_md2WithRSAEncryption = 11,
+	OID_md3WithRSAEncryption = 12,
+	OID_md4WithRSAEncryption = 13,
+	OID_sha1WithRSAEncryption = 14,
+	OID_sha256WithRSAEncryption = 15,
+	OID_sha384WithRSAEncryption = 16,
+	OID_sha512WithRSAEncryption = 17,
+	OID_sha224WithRSAEncryption = 18,
+	OID_data = 19,
+	OID_signed_data = 20,
+	OID_email_address = 21,
+	OID_contentType = 22,
+	OID_messageDigest = 23,
+	OID_signingTime = 24,
+	OID_smimeCapabilites = 25,
+	OID_smimeAuthenticatedAttrs = 26,
+	OID_md2 = 27,
+	OID_md4 = 28,
+	OID_md5 = 29,
+	OID_mskrb5 = 30,
+	OID_krb5 = 31,
+	OID_krb5u2u = 32,
+	OID_msIndirectData = 33,
+	OID_msStatementType = 34,
+	OID_msSpOpusInfo = 35,
+	OID_msPeImageDataObjId = 36,
+	OID_msIndividualSPKeyPurpose = 37,
+	OID_msOutlookExpress = 38,
+	OID_ntlmssp = 39,
+	OID_spnego = 40,
+	OID_IAKerb = 41,
+	OID_PKU2U = 42,
+	OID_Scram = 43,
+	OID_certAuthInfoAccess = 44,
+	OID_sha1 = 45,
+	OID_id_ansip384r1 = 46,
+	OID_sha256 = 47,
+	OID_sha384 = 48,
+	OID_sha512 = 49,
+	OID_sha224 = 50,
+	OID_commonName = 51,
+	OID_surname = 52,
+	OID_countryName = 53,
+	OID_locality = 54,
+	OID_stateOrProvinceName = 55,
+	OID_organizationName = 56,
+	OID_organizationUnitName = 57,
+	OID_title = 58,
+	OID_description = 59,
+	OID_name = 60,
+	OID_givenName = 61,
+	OID_initials = 62,
+	OID_generationalQualifier = 63,
+	OID_subjectKeyIdentifier = 64,
+	OID_keyUsage = 65,
+	OID_subjectAltName = 66,
+	OID_issuerAltName = 67,
+	OID_basicConstraints = 68,
+	OID_crlDistributionPoints = 69,
+	OID_certPolicies = 70,
+	OID_authorityKeyIdentifier = 71,
+	OID_extKeyUsage = 72,
+	OID_NetlogonMechanism = 73,
+	OID_appleLocalKdcSupported = 74,
+	OID_gostCPSignA = 75,
+	OID_gostCPSignB = 76,
+	OID_gostCPSignC = 77,
+	OID_gost2012PKey256 = 78,
+	OID_gost2012PKey512 = 79,
+	OID_gost2012Digest256 = 80,
+	OID_gost2012Digest512 = 81,
+	OID_gost2012Signature256 = 82,
+	OID_gost2012Signature512 = 83,
+	OID_gostTC26Sign256A = 84,
+	OID_gostTC26Sign256B = 85,
+	OID_gostTC26Sign256C = 86,
+	OID_gostTC26Sign256D = 87,
+	OID_gostTC26Sign512A = 88,
+	OID_gostTC26Sign512B = 89,
+	OID_gostTC26Sign512C = 90,
+	OID_sm2 = 91,
+	OID_sm3 = 92,
+	OID_SM2_with_SM3 = 93,
+	OID_sm3WithRSAEncryption = 94,
+	OID_TPMLoadableKey = 95,
+	OID_TPMImportableKey = 96,
+	OID_TPMSealedData = 97,
+	OID__NR = 98,
+};
+
+struct x509_certificate;
+
+struct pkcs7_signed_info;
+
+struct pkcs7_message {
+	struct x509_certificate *certs;
+	struct x509_certificate *crl;
+	struct pkcs7_signed_info *signed_infos;
+	u8 version;
+	bool have_authattrs;
+	enum OID data_type;
+	size_t data_len;
+	size_t data_hdrlen;
+	const void *data;
 };
 
 typedef int __kernel_rwf_t;
@@ -42141,8 +47051,13 @@ enum positive_aop_returns {
 	AOP_TRUNCATED_PAGE = 524289,
 };
 
-struct vm_event_state {
-	long unsigned int event[96];
+enum iter_type {
+	ITER_IOVEC = 0,
+	ITER_KVEC = 1,
+	ITER_BVEC = 2,
+	ITER_PIPE = 3,
+	ITER_XARRAY = 4,
+	ITER_DISCARD = 5,
 };
 
 enum mapping_flags {
@@ -42161,14 +47076,6 @@ struct wait_page_key {
 	int page_match;
 };
 
-enum iter_type {
-	ITER_IOVEC = 4,
-	ITER_KVEC = 8,
-	ITER_BVEC = 16,
-	ITER_PIPE = 32,
-	ITER_DISCARD = 64,
-};
-
 struct pagevec {
 	unsigned char nr;
 	bool percpu_pvec_drained;
@@ -42285,11 +47192,14 @@ struct kmem_cache {
 	struct kmem_cache_node *node[1024];
 };
 
+typedef struct {} local_lock_t;
+
 struct kmem_cache_cpu {
 	void **freelist;
 	long unsigned int tid;
 	struct page *page;
 	struct page *partial;
+	local_lock_t lock;
 };
 
 struct kmem_cache_node {
@@ -42301,6 +47211,13 @@ struct kmem_cache_node {
 	struct list_head full;
 };
 
+struct zap_details {
+	struct address_space *check_mapping;
+	long unsigned int first_index;
+	long unsigned int last_index;
+	struct page *single_page;
+};
+
 enum oom_constraint {
 	CONSTRAINT_NONE = 0,
 	CONSTRAINT_CPUSET = 1,
@@ -42441,10 +47358,6 @@ enum wb_congested_state {
 	WB_sync_congested = 1,
 };
 
-enum {
-	XA_CHECK_SCHED = 4096,
-};
-
 enum wb_state {
 	WB_registered = 0,
 	WB_writeback_running = 1,
@@ -42464,6 +47377,12 @@ struct wb_lock_cookie {
 
 typedef int (*writepage_t)(struct page *, struct writeback_control *, void *);
 
+enum page_memcg_data_flags {
+	MEMCG_DATA_OBJCGS = 1,
+	MEMCG_DATA_KMEM = 2,
+	__NR_MEMCG_DATA_FLAGS = 4,
+};
+
 struct dirty_throttle_control {
 	struct wb_domain *dom;
 	struct dirty_throttle_control *gdtc;
@@ -42485,7 +47404,7 @@ struct trace_event_raw_mm_lru_insertion {
 	struct trace_entry ent;
 	struct page *page;
 	long unsigned int pfn;
-	int lru;
+	enum lru_list lru;
 	long unsigned int flags;
 	char __data[0];
 };
@@ -42501,7 +47420,7 @@ struct trace_event_data_offsets_mm_lru_insertion {};
 
 struct trace_event_data_offsets_mm_lru_activate {};
 
-typedef void (*btf_trace_mm_lru_insertion)(void *, struct page *, int);
+typedef void (*btf_trace_mm_lru_insertion)(void *, struct page *);
 
 typedef void (*btf_trace_mm_lru_activate)(void *, struct page *);
 
@@ -42529,6 +47448,11 @@ enum pgdat_flags {
 	PGDAT_RECLAIM_LOCKED = 2,
 };
 
+enum zone_flags {
+	ZONE_BOOSTED_WATERMARK = 0,
+	ZONE_RECLAIM_ACTIVE = 1,
+};
+
 struct reclaim_stat {
 	unsigned int nr_dirty;
 	unsigned int nr_unqueued_dirty;
@@ -42542,16 +47466,28 @@ struct reclaim_stat {
 	unsigned int nr_lazyfree_fail;
 };
 
+struct mem_cgroup_reclaim_cookie {
+	pg_data_t *pgdat;
+	unsigned int generation;
+};
+
 enum ttu_flags {
-	TTU_MIGRATION = 1,
-	TTU_MUNLOCK = 2,
 	TTU_SPLIT_HUGE_PMD = 4,
 	TTU_IGNORE_MLOCK = 8,
 	TTU_SYNC = 16,
 	TTU_IGNORE_HWPOISON = 32,
 	TTU_BATCH_FLUSH = 64,
 	TTU_RMAP_LOCKED = 128,
-	TTU_SPLIT_FREEZE = 256,
+};
+
+typedef struct page *new_page_t(struct page *, long unsigned int);
+
+typedef void free_page_t(struct page *, long unsigned int);
+
+struct migration_target_control {
+	int nid;
+	nodemask_t *nmask;
+	gfp_t gfp_mask;
 };
 
 struct trace_event_raw_mm_vmscan_kswapd_sleep {
@@ -42666,19 +47602,6 @@ struct trace_event_raw_mm_vmscan_lru_shrink_active {
 	char __data[0];
 };
 
-struct trace_event_raw_mm_vmscan_inactive_list_is_low {
-	struct trace_entry ent;
-	int nid;
-	int reclaim_idx;
-	long unsigned int total_inactive;
-	long unsigned int inactive;
-	long unsigned int total_active;
-	long unsigned int active;
-	long unsigned int ratio;
-	int reclaim_flags;
-	char __data[0];
-};
-
 struct trace_event_raw_mm_vmscan_node_reclaim_begin {
 	struct trace_entry ent;
 	int nid;
@@ -42709,8 +47632,6 @@ struct trace_event_data_offsets_mm_vmscan_lru_shrink_inactive {};
 
 struct trace_event_data_offsets_mm_vmscan_lru_shrink_active {};
 
-struct trace_event_data_offsets_mm_vmscan_inactive_list_is_low {};
-
 struct trace_event_data_offsets_mm_vmscan_node_reclaim_begin {};
 
 typedef void (*btf_trace_mm_vmscan_kswapd_sleep)(void *, int);
@@ -42743,8 +47664,6 @@ typedef void (*btf_trace_mm_vmscan_lru_shrink_inactive)(void *, int, long unsign
 
 typedef void (*btf_trace_mm_vmscan_lru_shrink_active)(void *, int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, int, int);
 
-typedef void (*btf_trace_mm_vmscan_inactive_list_is_low)(void *, int, int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, int);
-
 typedef void (*btf_trace_mm_vmscan_node_reclaim_begin)(void *, int, int, gfp_t);
 
 typedef void (*btf_trace_mm_vmscan_node_reclaim_end)(void *, long unsigned int);
@@ -42767,6 +47686,7 @@ struct scan_control {
 	unsigned int compaction_ready: 1;
 	unsigned int cache_trim_mode: 1;
 	unsigned int file_is_tiny: 1;
+	unsigned int no_demotion: 1;
 	s8 order;
 	s8 priority;
 	s8 reclaim_idx;
@@ -42806,6 +47726,8 @@ enum scan_balance {
 	SCAN_FILE = 3,
 };
 
+typedef __u64 __le64;
+
 enum transparent_hugepage_flag {
 	TRANSPARENT_HUGEPAGE_NEVER_DAX = 0,
 	TRANSPARENT_HUGEPAGE_FLAG = 1,
@@ -42818,6 +47740,10 @@ enum transparent_hugepage_flag {
 	TRANSPARENT_HUGEPAGE_USE_ZERO_PAGE_FLAG = 8,
 };
 
+struct xattr;
+
+typedef int (*initxattrs)(struct inode *, const struct xattr *, void *);
+
 struct xattr {
 	const char *name;
 	void *value;
@@ -42835,7 +47761,8 @@ enum {
 	MPOL_BIND = 2,
 	MPOL_INTERLEAVE = 3,
 	MPOL_LOCAL = 4,
-	MPOL_MAX = 5,
+	MPOL_PREFERRED_MANY = 5,
+	MPOL_MAX = 6,
 };
 
 struct shared_policy {
@@ -42861,6 +47788,7 @@ struct shmem_inode_info {
 	long unsigned int flags;
 	long unsigned int alloced;
 	long unsigned int swapped;
+	long unsigned int fallocend;
 	struct list_head shrinklist;
 	struct list_head swaplist;
 	struct shared_policy policy;
@@ -42874,7 +47802,7 @@ struct shmem_sb_info {
 	struct percpu_counter used_blocks;
 	long unsigned int max_inodes;
 	long unsigned int free_inodes;
-	spinlock_t stat_lock;
+	raw_spinlock_t stat_lock;
 	umode_t mode;
 	unsigned char huge;
 	kuid_t uid;
@@ -42890,11 +47818,10 @@ struct shmem_sb_info {
 
 enum sgp_type {
 	SGP_READ = 0,
-	SGP_CACHE = 1,
-	SGP_NOHUGE = 2,
-	SGP_HUGE = 3,
-	SGP_WRITE = 4,
-	SGP_FALLOC = 5,
+	SGP_NOALLOC = 1,
+	SGP_CACHE = 2,
+	SGP_WRITE = 3,
+	SGP_FALLOC = 4,
 };
 
 enum fid_type {
@@ -42973,12 +47900,6 @@ enum {
 	RADIX_TREE_ITER_CONTIG = 32,
 };
 
-enum mminit_level {
-	MMINIT_WARNING = 0,
-	MMINIT_VERIFY = 1,
-	MMINIT_TRACE = 2,
-};
-
 struct pcpu_group_info {
 	int nr_units;
 	long unsigned int base_offset;
@@ -42997,14 +47918,6 @@ struct pcpu_alloc_info {
 	struct pcpu_group_info groups[0];
 };
 
-typedef void * (*pcpu_fc_alloc_fn_t)(unsigned int, size_t, size_t);
-
-typedef void (*pcpu_fc_free_fn_t)(void *, size_t);
-
-typedef void (*pcpu_fc_populate_pte_fn_t)(long unsigned int);
-
-typedef int pcpu_fc_cpu_distance_fn_t(unsigned int, unsigned int);
-
 struct trace_event_raw_percpu_alloc_percpu {
 	struct trace_entry ent;
 	bool reserved;
@@ -43066,13 +47979,6 @@ typedef void (*btf_trace_percpu_create_chunk)(void *, void *);
 
 typedef void (*btf_trace_percpu_destroy_chunk)(void *, void *);
 
-enum pcpu_chunk_type {
-	PCPU_CHUNK_ROOT = 0,
-	PCPU_CHUNK_MEMCG = 1,
-	PCPU_NR_CHUNK_TYPES = 2,
-	PCPU_FAIL_ALLOC = 2,
-};
-
 struct pcpu_block_md {
 	int scan_hint;
 	int scan_hint_start;
@@ -43088,12 +47994,13 @@ struct pcpu_chunk {
 	struct list_head list;
 	int free_bytes;
 	struct pcpu_block_md chunk_md;
+	long unsigned int *bound_map;
 	void *base_addr;
 	long unsigned int *alloc_map;
-	long unsigned int *bound_map;
 	struct pcpu_block_md *md_blocks;
 	void *data;
 	bool immutable;
+	bool isolated;
 	int start_offset;
 	int end_offset;
 	struct obj_cgroup **obj_cgroups;
@@ -43101,6 +48008,13 @@ struct pcpu_chunk {
 	int nr_populated;
 	int nr_empty_pop_pages;
 	long unsigned int populated[0];
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct trace_event_raw_kmem_alloc {
@@ -43124,13 +48038,21 @@ struct trace_event_raw_kmem_alloc_node {
 	char __data[0];
 };
 
-struct trace_event_raw_kmem_free {
+struct trace_event_raw_kfree {
 	struct trace_entry ent;
 	long unsigned int call_site;
 	const void *ptr;
 	char __data[0];
 };
 
+struct trace_event_raw_kmem_cache_free {
+	struct trace_entry ent;
+	long unsigned int call_site;
+	const void *ptr;
+	u32 __data_loc_name;
+	char __data[0];
+};
+
 struct trace_event_raw_mm_page_free {
 	struct trace_entry ent;
 	long unsigned int pfn;
@@ -43193,7 +48115,11 @@ struct trace_event_data_offsets_kmem_alloc {};
 
 struct trace_event_data_offsets_kmem_alloc_node {};
 
-struct trace_event_data_offsets_kmem_free {};
+struct trace_event_data_offsets_kfree {};
+
+struct trace_event_data_offsets_kmem_cache_free {
+	u32 name;
+};
 
 struct trace_event_data_offsets_mm_page_free {};
 
@@ -43219,7 +48145,7 @@ typedef void (*btf_trace_kmem_cache_alloc_node)(void *, long unsigned int, const
 
 typedef void (*btf_trace_kfree)(void *, long unsigned int, const void *);
 
-typedef void (*btf_trace_kmem_cache_free)(void *, long unsigned int, const void *);
+typedef void (*btf_trace_kmem_cache_free)(void *, long unsigned int, const void *, const char *);
 
 typedef void (*btf_trace_mm_page_free)(void *, struct page *, unsigned int);
 
@@ -43244,7 +48170,7 @@ enum slab_state {
 };
 
 struct kmalloc_info_struct {
-	const char *name[3];
+	const char *name[4];
 	unsigned int size;
 };
 
@@ -43261,6 +48187,17 @@ struct slabinfo {
 	unsigned int cache_order;
 };
 
+struct kmem_obj_info {
+	void *kp_ptr;
+	struct page *kp_page;
+	void *kp_objp;
+	long unsigned int kp_data_offset;
+	struct kmem_cache *kp_slab_cache;
+	void *kp_ret;
+	void *kp_stack[16];
+	void *kp_free_stack[16];
+};
+
 enum pageblock_bits {
 	PB_migrate = 0,
 	PB_migrate_end = 2,
@@ -43443,16 +48380,50 @@ struct follow_page_context {
 	unsigned int page_mask;
 };
 
-typedef unsigned int pgtbl_mod_mask;
-
-struct zap_details {
-	struct address_space *check_mapping;
-	long unsigned int first_index;
-	long unsigned int last_index;
-	struct page *single_page;
+struct trace_event_raw_mmap_lock_start_locking {
+	struct trace_entry ent;
+	struct mm_struct *mm;
+	u32 __data_loc_memcg_path;
+	bool write;
+	char __data[0];
 };
 
-typedef int (*pte_fn_t)(pte_t *, long unsigned int, void *);
+struct trace_event_raw_mmap_lock_acquire_returned {
+	struct trace_entry ent;
+	struct mm_struct *mm;
+	u32 __data_loc_memcg_path;
+	bool write;
+	bool success;
+	char __data[0];
+};
+
+struct trace_event_raw_mmap_lock_released {
+	struct trace_entry ent;
+	struct mm_struct *mm;
+	u32 __data_loc_memcg_path;
+	bool write;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_mmap_lock_start_locking {
+	u32 memcg_path;
+};
+
+struct trace_event_data_offsets_mmap_lock_acquire_returned {
+	u32 memcg_path;
+};
+
+struct trace_event_data_offsets_mmap_lock_released {
+	u32 memcg_path;
+};
+
+typedef void (*btf_trace_mmap_lock_start_locking)(void *, struct mm_struct *, const char *, bool);
+
+typedef void (*btf_trace_mmap_lock_acquire_returned)(void *, struct mm_struct *, const char *, bool, bool);
+
+typedef void (*btf_trace_mmap_lock_released)(void *, struct mm_struct *, const char *, bool);
+
+typedef unsigned int pgtbl_mod_mask;
 
 enum {
 	SWP_USED = 1,
@@ -43468,7 +48439,6 @@ enum {
 	SWP_PAGE_DISCARD = 1024,
 	SWP_STABLE_WRITES = 2048,
 	SWP_SYNCHRONOUS_IO = 4096,
-	SWP_VALID = 8192,
 	SWP_SCANNING = 16384,
 };
 
@@ -43531,6 +48501,13 @@ struct trace_event_data_offsets_vm_unmapped_area {};
 
 typedef void (*btf_trace_vm_unmapped_area)(void *, long unsigned int, struct vm_unmapped_area_info *);
 
+enum pgt_entry {
+	NORMAL_PMD = 0,
+	HPAGE_PMD = 1,
+	NORMAL_PUD = 2,
+	HPAGE_PUD = 3,
+};
+
 struct rmap_walk_control {
 	void *arg;
 	bool (*rmap_one)(struct page *, struct vm_area_struct *, long unsigned int, void *);
@@ -43546,6 +48523,13 @@ struct page_referenced_arg {
 	struct mem_cgroup *memcg;
 };
 
+struct make_exclusive_args {
+	struct mm_struct *mm;
+	long unsigned int address;
+	void *owner;
+	bool valid;
+};
+
 struct vmap_area {
 	long unsigned int va_start;
 	long unsigned int va_end;
@@ -43554,7 +48538,6 @@ struct vmap_area {
 	union {
 		long unsigned int subtree_max_size;
 		struct vm_struct *vm;
-		struct llist_node purge_list;
 	};
 };
 
@@ -43602,8 +48585,21 @@ struct page_frag_cache {
 	bool pfmemalloc;
 };
 
-enum zone_flags {
-	ZONE_BOOSTED_WATERMARK = 0,
+enum mminit_level {
+	MMINIT_WARNING = 0,
+	MMINIT_VERIFY = 1,
+	MMINIT_TRACE = 2,
+};
+
+typedef int fpi_t;
+
+struct pagesets {
+	local_lock_t lock;
+};
+
+struct pcpu_drain {
+	struct zone *zone;
+	struct work_struct work;
 };
 
 struct mminit_pfnnid_cache {
@@ -43612,17 +48608,78 @@ struct mminit_pfnnid_cache {
 	int last_nid;
 };
 
-struct migration_target_control {
-	int nid;
-	nodemask_t *nmask;
-	gfp_t gfp_mask;
+enum {
+	MMOP_OFFLINE = 0,
+	MMOP_ONLINE = 1,
+	MMOP_ONLINE_KERNEL = 2,
+	MMOP_ONLINE_MOVABLE = 3,
 };
 
-typedef int fpi_t;
+typedef int mhp_t;
 
-struct pcpu_drain {
-	struct zone *zone;
-	struct work_struct work;
+typedef void (*online_page_callback_t)(struct page *, unsigned int);
+
+struct memory_group {
+	int nid;
+	struct list_head memory_blocks;
+	long unsigned int present_kernel_pages;
+	long unsigned int present_movable_pages;
+	bool is_dynamic;
+	union {
+		struct {
+			long unsigned int max_pages;
+		} s;
+		struct {
+			long unsigned int unit_pages;
+		} d;
+	};
+};
+
+struct memory_block {
+	long unsigned int start_section_nr;
+	long unsigned int state;
+	int online_type;
+	int nid;
+	struct device dev;
+	long unsigned int nr_vmemmap_pages;
+	struct memory_group *group;
+	struct list_head group_next;
+};
+
+struct memory_notify {
+	long unsigned int start_pfn;
+	long unsigned int nr_pages;
+	int status_change_nid_normal;
+	int status_change_nid_high;
+	int status_change_nid;
+};
+
+typedef int (*walk_memory_blocks_func_t)(struct memory_block *, void *);
+
+typedef int (*walk_memory_groups_func_t)(struct memory_group *, void *);
+
+enum hugetlb_page_flags {
+	HPG_restore_reserve = 0,
+	HPG_migratable = 1,
+	HPG_temporary = 2,
+	HPG_freed = 3,
+	HPG_vmemmap_optimized = 4,
+	__NR_HPAGEFLAGS = 5,
+};
+
+enum {
+	ONLINE_POLICY_CONTIG_ZONES = 0,
+	ONLINE_POLICY_AUTO_MOVABLE = 1,
+};
+
+struct auto_movable_stats {
+	long unsigned int kernel_early_pages;
+	long unsigned int movable_pages;
+};
+
+struct auto_movable_group_stats {
+	long unsigned int movable_pages;
+	long unsigned int req_kernel_early_pages;
 };
 
 struct madvise_walk_private {
@@ -43637,6 +48694,12 @@ struct vma_swap_readahead {
 	pte_t *ptes;
 };
 
+enum {
+	PERCPU_REF_INIT_ATOMIC = 1,
+	PERCPU_REF_INIT_DEAD = 2,
+	PERCPU_REF_ALLOW_REINIT = 4,
+};
+
 union swap_header {
 	struct {
 		char reserved[4086];
@@ -43681,8 +48744,21 @@ struct frontswap_ops {
 	struct frontswap_ops *next;
 };
 
-struct crypto_comp {
-	struct crypto_tfm base;
+struct crypto_async_request;
+
+typedef void (*crypto_completion_t)(struct crypto_async_request *, int);
+
+struct crypto_async_request {
+	struct list_head list;
+	crypto_completion_t complete;
+	void *data;
+	struct crypto_tfm *tfm;
+	u32 flags;
+};
+
+struct crypto_wait {
+	struct completion completion;
+	int err;
 };
 
 struct zpool;
@@ -43698,9 +48774,35 @@ enum zpool_mapmode {
 	ZPOOL_MM_DEFAULT = 0,
 };
 
+struct acomp_req {
+	struct crypto_async_request base;
+	struct scatterlist *src;
+	struct scatterlist *dst;
+	unsigned int slen;
+	unsigned int dlen;
+	u32 flags;
+	void *__ctx[0];
+};
+
+struct crypto_acomp {
+	int (*compress)(struct acomp_req *);
+	int (*decompress)(struct acomp_req *);
+	void (*dst_free)(struct scatterlist *);
+	unsigned int reqsize;
+	struct crypto_tfm base;
+};
+
+struct crypto_acomp_ctx {
+	struct crypto_acomp *acomp;
+	struct acomp_req *req;
+	struct crypto_wait wait;
+	u8 *dstmem;
+	struct mutex *mutex;
+};
+
 struct zswap_pool {
 	struct zpool *zpool;
-	struct crypto_comp **tfm;
+	struct crypto_acomp_ctx *acomp_ctx;
 	struct kref kref;
 	struct list_head list;
 	struct work_struct release_work;
@@ -43755,11 +48857,27 @@ struct dma_page {
 	unsigned int offset;
 };
 
+typedef void (*node_registration_func_t)(struct node___2 *);
+
 enum string_size_units {
 	STRING_UNITS_10 = 0,
 	STRING_UNITS_2 = 1,
 };
 
+enum mcopy_atomic_mode {
+	MCOPY_ATOMIC_NORMAL = 0,
+	MCOPY_ATOMIC_ZEROPAGE = 1,
+	MCOPY_ATOMIC_CONTINUE = 2,
+};
+
+enum {
+	SUBPAGE_INDEX_SUBPOOL = 1,
+	SUBPAGE_INDEX_CGROUP = 2,
+	SUBPAGE_INDEX_CGROUP_RSVD = 3,
+	__MAX_CGROUP_SUBPAGE_INDEX = 3,
+	__NR_USED_SUBPAGE = 4,
+};
+
 struct resv_map {
 	struct kref refs;
 	spinlock_t lock;
@@ -43805,6 +48923,7 @@ enum vma_resv_mode {
 	VMA_COMMIT_RESV = 1,
 	VMA_END_RESV = 2,
 	VMA_ADD_RESV = 3,
+	VMA_DEL_RESV = 4,
 };
 
 struct node_hstate {
@@ -43838,6 +48957,14 @@ struct queue_pages {
 	struct vm_area_struct *first;
 };
 
+struct vmemmap_remap_walk {
+	void (*remap_pte)(pte_t *, long unsigned int, struct vmemmap_remap_walk *);
+	long unsigned int nr_walked;
+	struct page *reuse_page;
+	long unsigned int reuse_addr;
+	struct list_head *vmemmap_pages;
+};
+
 struct mmu_notifier_subscriptions {
 	struct hlist_head list;
 	bool has_itree;
@@ -43870,14 +48997,6 @@ struct mmu_interval_notifier {
 	long unsigned int invalidate_seq;
 };
 
-struct memory_notify {
-	long unsigned int start_pfn;
-	long unsigned int nr_pages;
-	int status_change_nid_normal;
-	int status_change_nid_high;
-	int status_change_nid;
-};
-
 struct rmap_item;
 
 struct mm_slot {
@@ -43983,6 +49102,12 @@ enum track_item {
 	TRACK_FREE = 1,
 };
 
+struct slub_flush_work {
+	struct work_struct work;
+	struct kmem_cache *s;
+	bool skip;
+};
+
 struct detached_freelist {
 	struct page *page;
 	void *tail;
@@ -44007,6 +49132,7 @@ struct loc_track {
 	long unsigned int max;
 	long unsigned int count;
 	struct location *loc;
+	loff_t idx;
 };
 
 enum slab_stat_type {
@@ -44036,25 +49162,61 @@ enum slab_modes {
 	M_FREE = 3,
 };
 
-enum {
-	MMOP_OFFLINE = 0,
-	MMOP_ONLINE = 1,
-	MMOP_ONLINE_KERNEL = 2,
-	MMOP_ONLINE_MOVABLE = 3,
+struct kcsan_scoped_access {};
+
+enum kfence_object_state {
+	KFENCE_OBJECT_UNUSED = 0,
+	KFENCE_OBJECT_ALLOCATED = 1,
+	KFENCE_OBJECT_FREED = 2,
 };
 
-typedef int mhp_t;
-
-typedef void (*online_page_callback_t)(struct page *, unsigned int);
-
-struct memory_block {
-	long unsigned int start_section_nr;
-	long unsigned int state;
-	int online_type;
-	int nid;
-	struct device dev;
+struct kfence_track {
+	pid_t pid;
+	int cpu;
+	u64 ts_nsec;
+	int num_stack_entries;
+	long unsigned int stack_entries[64];
 };
 
+struct kfence_metadata {
+	struct list_head list;
+	struct callback_head callback_head;
+	raw_spinlock_t lock;
+	enum kfence_object_state state;
+	long unsigned int addr;
+	size_t size;
+	struct kmem_cache *cache;
+	long unsigned int unprotected_page;
+	struct kfence_track alloc_track;
+	struct kfence_track free_track;
+	u32 alloc_stack_hash;
+	struct obj_cgroup *objcg;
+};
+
+enum kfence_error_type {
+	KFENCE_ERROR_OOB = 0,
+	KFENCE_ERROR_UAF = 1,
+	KFENCE_ERROR_CORRUPTION = 2,
+	KFENCE_ERROR_INVALID = 3,
+	KFENCE_ERROR_INVALID_FREE = 4,
+};
+
+enum kfence_counter_id {
+	KFENCE_COUNTER_ALLOCATED = 0,
+	KFENCE_COUNTER_ALLOCS = 1,
+	KFENCE_COUNTER_FREES = 2,
+	KFENCE_COUNTER_ZOMBIES = 3,
+	KFENCE_COUNTER_BUGS = 4,
+	KFENCE_COUNTER_SKIP_INCOMPAT = 5,
+	KFENCE_COUNTER_SKIP_CAPACITY = 6,
+	KFENCE_COUNTER_SKIP_COVERED = 7,
+	KFENCE_COUNTER_COUNT = 8,
+};
+
+typedef __kernel_long_t __kernel_ptrdiff_t;
+
+typedef __kernel_ptrdiff_t ptrdiff_t;
+
 struct buffer_head;
 
 typedef void bh_end_io_t(struct buffer_head *, int);
@@ -44075,9 +49237,22 @@ struct buffer_head {
 	spinlock_t b_uptodate_lock;
 };
 
-typedef struct page *new_page_t(struct page *, long unsigned int);
+enum migrate_vma_direction {
+	MIGRATE_VMA_SELECT_SYSTEM = 1,
+	MIGRATE_VMA_SELECT_DEVICE_PRIVATE = 2,
+};
 
-typedef void free_page_t(struct page *, long unsigned int);
+struct migrate_vma {
+	struct vm_area_struct *vma;
+	long unsigned int *dst;
+	long unsigned int *src;
+	long unsigned int cpages;
+	long unsigned int npages;
+	long unsigned int start;
+	long unsigned int end;
+	void *pgmap_owner;
+	long unsigned int flags;
+};
 
 enum bh_state_bits {
 	BH_Uptodate = 0,
@@ -44111,10 +49286,21 @@ struct trace_event_raw_mm_migrate_pages {
 	char __data[0];
 };
 
+struct trace_event_raw_mm_migrate_pages_start {
+	struct trace_entry ent;
+	enum migrate_mode mode;
+	int reason;
+	char __data[0];
+};
+
 struct trace_event_data_offsets_mm_migrate_pages {};
 
+struct trace_event_data_offsets_mm_migrate_pages_start {};
+
 typedef void (*btf_trace_mm_migrate_pages)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, enum migrate_mode, int);
 
+typedef void (*btf_trace_mm_migrate_pages_start)(void *, enum migrate_mode, int);
+
 enum scan_result {
 	SCAN_FAIL = 0,
 	SCAN_SUCCEED = 1,
@@ -44214,11 +49400,6 @@ struct khugepaged_scan {
 	long unsigned int address;
 };
 
-struct mem_cgroup_reclaim_cookie {
-	pg_data_t *pgdat;
-	unsigned int generation;
-};
-
 struct mem_cgroup_tree_per_node {
 	struct rb_root rb_root;
 	struct rb_node *rb_rightmost;
@@ -44269,7 +49450,6 @@ enum res_type {
 
 struct memory_stat {
 	const char *name;
-	unsigned int ratio;
 	unsigned int idx;
 };
 
@@ -44285,11 +49465,19 @@ enum oom_status {
 	OOM_SKIPPED = 3,
 };
 
+struct obj_stock {
+	struct obj_cgroup *cached_objcg;
+	struct pglist_data *cached_pgdat;
+	unsigned int nr_bytes;
+	int nr_slab_reclaimable_b;
+	int nr_slab_unreclaimable_b;
+};
+
 struct memcg_stock_pcp {
 	struct mem_cgroup *cached;
 	unsigned int nr_pages;
-	struct obj_cgroup *cached_objcg;
-	unsigned int nr_bytes;
+	struct obj_stock task_obj;
+	struct obj_stock irq_obj;
 	struct work_struct work;
 	long unsigned int flags;
 };
@@ -44316,7 +49504,7 @@ enum mc_target_type {
 
 struct uncharge_gather {
 	struct mem_cgroup *memcg;
-	long unsigned int nr_pages;
+	long unsigned int nr_memory;
 	long unsigned int pgpgout;
 	long unsigned int nr_kmem;
 	struct page *dummy_page;
@@ -44419,11 +49607,17 @@ struct to_kill {
 	short int size_shift;
 };
 
+struct hwp_walk {
+	struct to_kill tk;
+	long unsigned int pfn;
+	int flags;
+};
+
 struct page_state {
 	long unsigned int mask;
 	long unsigned int res;
 	enum mf_action_page_type type;
-	int (*action)(struct page *, long unsigned int);
+	int (*action)(struct page_state *, struct page *);
 };
 
 struct memory_failure_entry {
@@ -44447,6 +49641,24 @@ struct memory_failure_cpu {
 	struct work_struct work;
 };
 
+struct cleancache_filekey {
+	union {
+		ino_t ino;
+		__u32 fh[6];
+		u32 key[6];
+	} u;
+};
+
+struct cleancache_ops {
+	int (*init_fs)(size_t);
+	int (*init_shared_fs)(uuid_t *, size_t);
+	int (*get_page)(int, struct cleancache_filekey, long unsigned int, struct page *);
+	void (*put_page)(int, struct cleancache_filekey, long unsigned int, struct page *);
+	void (*invalidate_page)(int, struct cleancache_filekey, long unsigned int);
+	void (*invalidate_inode)(int, struct cleancache_filekey);
+	void (*invalidate_fs)(int);
+};
+
 struct trace_event_raw_test_pages_isolated {
 	struct trace_entry ent;
 	long unsigned int start_pfn;
@@ -44466,6 +49678,7 @@ struct zpool {
 	void *pool;
 	const struct zpool_ops *ops;
 	bool evictable;
+	bool can_sleep_mapped;
 	struct list_head list;
 };
 
@@ -44480,6 +49693,7 @@ struct zpool_driver {
 	int (*malloc)(void *, size_t, gfp_t, long unsigned int *);
 	void (*free)(void *, long unsigned int);
 	int (*shrink)(void *, unsigned int, unsigned int *);
+	bool sleep_mapped;
 	void * (*map)(void *, long unsigned int, enum zpool_mapmode);
 	void (*unmap)(void *, long unsigned int);
 	u64 (*total_size)(void *);
@@ -44493,8 +49707,10 @@ struct zbud_ops {
 
 struct zbud_pool {
 	spinlock_t lock;
-	struct list_head unbuddied[63];
-	struct list_head buddied;
+	union {
+		struct list_head buddied;
+		struct list_head unbuddied[63];
+	};
 	struct list_head lru;
 	u64 pages_nr;
 	const struct zbud_ops *ops;
@@ -44515,6 +49731,96 @@ enum buddy {
 	LAST = 1,
 };
 
+enum zs_mapmode {
+	ZS_MM_RW = 0,
+	ZS_MM_RO = 1,
+	ZS_MM_WO = 2,
+};
+
+struct zs_pool_stats {
+	atomic_long_t pages_compacted;
+};
+
+enum fullness_group {
+	ZS_EMPTY = 0,
+	ZS_ALMOST_EMPTY = 1,
+	ZS_ALMOST_FULL = 2,
+	ZS_FULL = 3,
+	NR_ZS_FULLNESS = 4,
+};
+
+enum zs_stat_type {
+	CLASS_EMPTY = 0,
+	CLASS_ALMOST_EMPTY = 1,
+	CLASS_ALMOST_FULL = 2,
+	CLASS_FULL = 3,
+	OBJ_ALLOCATED = 4,
+	OBJ_USED = 5,
+	NR_ZS_STAT_TYPE = 6,
+};
+
+struct zs_size_stat {
+	long unsigned int objs[6];
+};
+
+struct size_class {
+	spinlock_t lock;
+	struct list_head fullness_list[4];
+	int size;
+	int objs_per_zspage;
+	int pages_per_zspage;
+	unsigned int index;
+	struct zs_size_stat stats;
+};
+
+struct link_free {
+	union {
+		long unsigned int next;
+		long unsigned int handle;
+	};
+};
+
+struct zs_pool {
+	const char *name;
+	struct size_class *size_class[255];
+	struct kmem_cache *handle_cachep;
+	struct kmem_cache *zspage_cachep;
+	atomic_long_t pages_allocated;
+	struct zs_pool_stats stats;
+	struct shrinker shrinker;
+	struct inode *inode;
+	struct work_struct free_work;
+	struct wait_queue_head migration_wait;
+	atomic_long_t isolated_pages;
+	bool destroying;
+};
+
+struct zspage {
+	struct {
+		unsigned int fullness: 2;
+		unsigned int class: 9;
+		unsigned int isolated: 3;
+		unsigned int magic: 8;
+	};
+	unsigned int inuse;
+	unsigned int freeobj;
+	struct page *first_page;
+	struct list_head list;
+	rwlock_t lock;
+};
+
+struct mapping_area {
+	char *vm_buf;
+	char *vm_addr;
+	enum zs_mapmode vm_mm;
+};
+
+struct zs_compact_control {
+	struct page *s_page;
+	struct page *d_page;
+	int obj_idx;
+};
+
 struct balloon_dev_info {
 	long unsigned int isolated_pages;
 	spinlock_t pages_lock;
@@ -44523,21 +49829,6 @@ struct balloon_dev_info {
 	struct inode *inode;
 };
 
-struct page_ext_operations {
-	size_t offset;
-	size_t size;
-	bool (*need)();
-	void (*init)();
-};
-
-struct frame_vector {
-	unsigned int nr_allocated;
-	unsigned int nr_frames;
-	bool got_ref;
-	bool is_pfns;
-	void *ptrs[0];
-};
-
 enum {
 	BAD_STACK = 4294967295,
 	NOT_STACK = 0,
@@ -44602,6 +49893,7 @@ struct page_reporting_dev_info {
 	int (*report)(struct page_reporting_dev_info *, struct scatterlist *, unsigned int);
 	struct delayed_work work;
 	atomic_t state;
+	unsigned int order;
 };
 
 enum {
@@ -44610,6 +49902,10 @@ enum {
 	PAGE_REPORTING_ACTIVE = 2,
 };
 
+typedef __kernel_long_t __kernel_off_t;
+
+typedef __kernel_off_t off_t;
+
 struct open_how {
 	__u64 flags;
 	__u64 mode;
@@ -44626,10 +49922,6 @@ struct open_flags {
 	int lookup_flags;
 };
 
-typedef __kernel_long_t __kernel_off_t;
-
-typedef __kernel_off_t off_t;
-
 typedef __kernel_rwf_t rwf_t;
 
 struct fscrypt_policy_v1 {
@@ -44662,7 +49954,7 @@ enum vfs_get_super_keying {
 	vfs_get_independent_super = 3,
 };
 
-struct kobj_map;
+typedef struct kobject *kobj_probe_t(dev_t, int *, void *);
 
 struct char_device_struct {
 	struct char_device_struct *next;
@@ -44743,7 +50035,6 @@ struct statx {
 struct mount;
 
 struct mnt_namespace {
-	atomic_t count;
 	struct ns_common ns;
 	struct mount *root;
 	struct list_head list;
@@ -44757,14 +50048,14 @@ struct mnt_namespace {
 	unsigned int pending_mounts;
 };
 
+typedef u16 compat_mode_t;
+
 typedef u32 compat_ino_t;
 
 typedef u16 __compat_uid_t;
 
 typedef u16 __compat_gid_t;
 
-typedef u16 compat_mode_t;
-
 typedef u16 compat_nlink_t;
 
 struct compat_stat {
@@ -44859,13 +50150,6 @@ enum inode_i_mutex_lock_class {
 	I_MUTEX_PARENT2 = 5,
 };
 
-struct pseudo_fs_context {
-	const struct super_operations *ops;
-	const struct xattr_handler **xattr;
-	const struct dentry_operations *dops;
-	long unsigned int magic;
-};
-
 struct name_snapshot {
 	struct qstr name;
 	unsigned char inline_name[32];
@@ -44884,6 +50168,7 @@ struct nameidata {
 	struct path root;
 	struct inode *inode;
 	unsigned int flags;
+	unsigned int state;
 	unsigned int seq;
 	unsigned int m_seq;
 	unsigned int r_seq;
@@ -44900,6 +50185,17 @@ struct nameidata {
 	umode_t dir_mode;
 };
 
+struct renamedata {
+	struct user_namespace *old_mnt_userns;
+	struct inode *old_dir;
+	struct dentry *old_dentry;
+	struct user_namespace *new_mnt_userns;
+	struct inode *new_dir;
+	struct dentry *new_dentry;
+	struct inode **delegated_inode;
+	unsigned int flags;
+};
+
 enum {
 	LAST_NORM = 0,
 	LAST_ROOT = 1,
@@ -44971,7 +50267,14 @@ struct file_dedupe_range {
 	struct file_dedupe_range_info info[0];
 };
 
-typedef int get_block_t(struct inode *, sector_t, struct buffer_head *, int);
+struct fsxattr {
+	__u32 fsx_xflags;
+	__u32 fsx_extsize;
+	__u32 fsx_nextents;
+	__u32 fsx_projid;
+	__u32 fsx_cowextsize;
+	unsigned char fsx_pad[8];
+};
 
 struct fiemap_extent;
 
@@ -44982,6 +50285,17 @@ struct fiemap_extent_info {
 	struct fiemap_extent *fi_extents_start;
 };
 
+struct fileattr {
+	u32 flags;
+	u32 fsx_xflags;
+	u32 fsx_extsize;
+	u32 fsx_nextents;
+	u32 fsx_projid;
+	u32 fsx_cowextsize;
+	bool flags_valid: 1;
+	bool fsx_valid: 1;
+};
+
 struct space_resv {
 	__s16 l_type;
 	__s16 l_whence;
@@ -45198,15 +50512,6 @@ struct select_data {
 	struct list_head dispose;
 };
 
-struct fsxattr {
-	__u32 fsx_xflags;
-	__u32 fsx_extsize;
-	__u32 fsx_nextents;
-	__u32 fsx_projid;
-	__u32 fsx_cowextsize;
-	unsigned char fsx_pad[8];
-};
-
 enum file_time_flags {
 	S_ATIME = 1,
 	S_MTIME = 2,
@@ -45214,6 +50519,13 @@ enum file_time_flags {
 	S_VERSION = 8,
 };
 
+struct mount_attr {
+	__u64 attr_set;
+	__u64 attr_clr;
+	__u64 propagation;
+	__u64 userns_fd;
+};
+
 struct proc_mounts {
 	struct mnt_namespace *ns;
 	struct path root;
@@ -45221,12 +50533,41 @@ struct proc_mounts {
 	struct mount cursor;
 };
 
+struct mount_kattr {
+	unsigned int attr_set;
+	unsigned int attr_clr;
+	unsigned int propagation;
+	unsigned int lookup_flags;
+	bool recurse;
+	struct user_namespace *mnt_userns;
+};
+
 enum umount_tree_flags {
 	UMOUNT_SYNC = 1,
 	UMOUNT_PROPAGATE = 2,
 	UMOUNT_CONNECTED = 4,
 };
 
+struct xattr_name {
+	char name[256];
+};
+
+struct xattr_ctx {
+	union {
+		const void *cvalue;
+		void *value;
+	};
+	void *kvalue;
+	size_t size;
+	struct xattr_name *kname;
+	unsigned int flags;
+};
+
+struct unicode_map {
+	const char *charset;
+	int version;
+};
+
 struct simple_transaction_argresp {
 	ssize_t size;
 	char data[0];
@@ -45575,10 +50916,9 @@ typedef void (*btf_trace_sb_mark_inode_writeback)(void *, struct inode *);
 typedef void (*btf_trace_sb_clear_inode_writeback)(void *, struct inode *);
 
 struct inode_switch_wbs_context {
-	struct inode *inode;
+	struct rcu_work work;
 	struct bdi_writeback *new_wb;
-	struct callback_head callback_head;
-	struct work_struct work;
+	struct inode *inodes[0];
 };
 
 struct splice_desc {
@@ -45610,11 +50950,16 @@ struct utimbuf {
 	__kernel_old_time_t modtime;
 };
 
+struct prepend_buffer {
+	char *buf;
+	int len;
+};
+
 typedef int __kernel_daddr_t;
 
 struct ustat {
 	__kernel_daddr_t f_tfree;
-	__kernel_ino_t f_tinode;
+	long unsigned int f_tinode;
 	char f_fname[6];
 	char f_fpack[6];
 };
@@ -45690,8 +51035,6 @@ struct compat_statfs64 {
 	__u32 f_spare[4];
 } __attribute__((packed));
 
-typedef struct ns_common *ns_get_path_helper_t(void *);
-
 struct ns_get_path_task_args {
 	const struct proc_ns_operations *ns_ops;
 	struct task_struct *task;
@@ -45720,6 +51063,8 @@ enum fsconfig_command {
 	FSCONFIG_CMD_RECONFIGURE = 7,
 };
 
+typedef int get_block_t(struct inode *, sector_t, struct buffer_head *, int);
+
 struct dax_device;
 
 struct iomap_page_ops;
@@ -45738,8 +51083,8 @@ struct iomap {
 };
 
 struct iomap_page_ops {
-	int (*page_prepare)(struct inode *, loff_t, unsigned int, struct iomap *);
-	void (*page_done)(struct inode *, loff_t, unsigned int, struct page *, struct iomap *);
+	int (*page_prepare)(struct inode *, loff_t, unsigned int);
+	void (*page_done)(struct inode *, loff_t, unsigned int, struct page *);
 };
 
 struct decrypt_bh_ctx {
@@ -45756,40 +51101,6 @@ struct bh_accounting {
 	int ratelimit;
 };
 
-enum {
-	DISK_EVENT_MEDIA_CHANGE = 1,
-	DISK_EVENT_EJECT_REQUEST = 2,
-};
-
-enum {
-	BIOSET_NEED_BVECS = 1,
-	BIOSET_NEED_RESCUER = 2,
-};
-
-struct bdev_inode {
-	struct block_device bdev;
-	struct inode vfs_inode;
-};
-
-struct blkdev_dio {
-	union {
-		struct kiocb *iocb;
-		struct task_struct *waiter;
-	};
-	size_t size;
-	atomic_t ref;
-	bool multi_bio: 1;
-	bool should_dirty: 1;
-	bool is_sync: 1;
-	struct bio bio;
-};
-
-struct bd_holder_disk {
-	struct list_head list;
-	struct gendisk *disk;
-	int refcnt;
-};
-
 typedef int dio_iodone_t(struct kiocb *, loff_t, ssize_t, void *);
 
 typedef void dio_submit_t(struct bio *, struct inode *, loff_t);
@@ -45940,6 +51251,12 @@ struct proc_fs_opts {
 	const char *str;
 };
 
+struct fs_error_report {
+	int error;
+	struct inode *inode;
+	struct super_block *sb;
+};
+
 struct file_handle {
 	__u32 handle_bytes;
 	int handle_type;
@@ -45998,9 +51315,11 @@ struct fanotify_fh {
 
 struct fanotify_info {
 	u8 dir_fh_totlen;
+	u8 dir2_fh_totlen;
 	u8 file_fh_totlen;
 	u8 name_len;
-	u8 pad;
+	u8 name2_len;
+	u8 pad[3];
 	unsigned char buf[0];
 };
 
@@ -46010,20 +51329,28 @@ enum fanotify_event_type {
 	FANOTIFY_EVENT_TYPE_PATH = 2,
 	FANOTIFY_EVENT_TYPE_PATH_PERM = 3,
 	FANOTIFY_EVENT_TYPE_OVERFLOW = 4,
+	FANOTIFY_EVENT_TYPE_FS_ERROR = 5,
+	__FANOTIFY_EVENT_TYPE_NUM = 6,
 };
 
 struct fanotify_event {
 	struct fsnotify_event fse;
+	struct hlist_node merge_list;
 	u32 mask;
-	enum fanotify_event_type type;
+	struct {
+		unsigned int type: 3;
+		unsigned int hash: 29;
+	};
 	struct pid *pid;
 };
 
 struct fanotify_fid_event {
 	struct fanotify_event fae;
 	__kernel_fsid_t fsid;
-	struct fanotify_fh object_fh;
-	unsigned char _inline_fh_buf[12];
+	struct {
+		struct fanotify_fh object_fh;
+		unsigned char _inline_fh_buf[12];
+	};
 };
 
 struct fanotify_name_event {
@@ -46032,6 +51359,17 @@ struct fanotify_name_event {
 	struct fanotify_info info;
 };
 
+struct fanotify_error_event {
+	struct fanotify_event fae;
+	s32 error;
+	u32 err_count;
+	__kernel_fsid_t fsid;
+	struct {
+		struct fanotify_fh object_fh;
+		unsigned char _inline_fh_buf[128];
+	};
+};
+
 struct fanotify_path_event {
 	struct fanotify_event fae;
 	struct path path;
@@ -46067,6 +51405,17 @@ struct fanotify_event_info_fid {
 	unsigned char handle[0];
 };
 
+struct fanotify_event_info_pidfd {
+	struct fanotify_event_info_header hdr;
+	__s32 pidfd;
+};
+
+struct fanotify_event_info_error {
+	struct fanotify_event_info_header hdr;
+	__s32 error;
+	__u32 error_count;
+};
+
 struct fanotify_response {
 	__s32 fd;
 	__u32 response;
@@ -46082,15 +51431,13 @@ struct epoll_filefd {
 	int fd;
 } __attribute__((packed));
 
-struct nested_call_node {
-	struct list_head llink;
-	void *cookie;
-	void *ctx;
-};
+struct epitem;
 
-struct nested_calls {
-	struct list_head tasks_call_list;
-	spinlock_t lock;
+struct eppoll_entry {
+	struct eppoll_entry *next;
+	struct epitem *base;
+	wait_queue_entry_t wait;
+	wait_queue_head_t *whead;
 };
 
 struct eventpoll;
@@ -46103,10 +51450,9 @@ struct epitem {
 	struct list_head rdllink;
 	struct epitem *next;
 	struct epoll_filefd ffd;
-	int nwait;
-	struct list_head pwqlist;
+	struct eppoll_entry *pwqlist;
 	struct eventpoll *ep;
-	struct list_head fllink;
+	struct hlist_node fllink;
 	struct wakeup_source *ws;
 	struct epoll_event event;
 };
@@ -46123,25 +51469,18 @@ struct eventpoll {
 	struct user_struct *user;
 	struct file *file;
 	u64 gen;
+	struct hlist_head refs;
 	unsigned int napi_id;
 };
 
-struct eppoll_entry {
-	struct list_head llink;
-	struct epitem *base;
-	wait_queue_entry_t wait;
-	wait_queue_head_t *whead;
-};
-
 struct ep_pqueue {
 	poll_table pt;
 	struct epitem *epi;
 };
 
-struct ep_send_events_data {
-	int maxevents;
-	struct epoll_event *events;
-	int res;
+struct epitems_head {
+	struct hlist_head epitems;
+	struct epitems_head *next;
 };
 
 struct signalfd_siginfo {
@@ -46209,7 +51548,7 @@ struct userfaultfd_ctx {
 	unsigned int flags;
 	unsigned int features;
 	bool released;
-	bool mmap_changing;
+	atomic_t mmap_changing;
 	struct mm_struct *mm;
 };
 
@@ -46282,6 +51621,12 @@ struct uffdio_writeprotect {
 	__u64 mode;
 };
 
+struct uffdio_continue {
+	struct uffdio_range range;
+	__u64 mode;
+	__s64 mapped;
+};
+
 struct userfaultfd_fork_ctx {
 	struct userfaultfd_ctx *orig;
 	struct userfaultfd_ctx *new;
@@ -46493,1130 +51838,21 @@ struct __compat_aio_sigset {
 	compat_size_t sigsetsize;
 };
 
-struct xa_limit {
-	u32 max;
-	u32 min;
-};
-
-enum {
-	PERCPU_REF_INIT_ATOMIC = 1,
-	PERCPU_REF_INIT_DEAD = 2,
-	PERCPU_REF_ALLOW_REINIT = 4,
-};
-
-struct user_msghdr {
-	void *msg_name;
-	int msg_namelen;
-	struct iovec *msg_iov;
-	__kernel_size_t msg_iovlen;
-	void *msg_control;
-	__kernel_size_t msg_controllen;
-	unsigned int msg_flags;
-};
-
-typedef s32 compat_ssize_t;
-
-struct compat_msghdr {
-	compat_uptr_t msg_name;
-	compat_int_t msg_namelen;
-	compat_uptr_t msg_iov;
-	compat_size_t msg_iovlen;
-	compat_uptr_t msg_control;
-	compat_size_t msg_controllen;
-	compat_uint_t msg_flags;
-};
-
-struct scm_fp_list {
-	short int count;
-	short int max;
-	struct user_struct *user;
-	struct file *fp[253];
-};
-
-struct unix_skb_parms {
-	struct pid *pid;
-	kuid_t uid;
-	kgid_t gid;
-	struct scm_fp_list *fp;
-	u32 secid;
-	u32 consumed;
-};
-
-struct trace_event_raw_io_uring_create {
-	struct trace_entry ent;
-	int fd;
-	void *ctx;
-	u32 sq_entries;
-	u32 cq_entries;
-	u32 flags;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_register {
-	struct trace_entry ent;
-	void *ctx;
-	unsigned int opcode;
-	unsigned int nr_files;
-	unsigned int nr_bufs;
-	bool eventfd;
-	long int ret;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_file_get {
-	struct trace_entry ent;
-	void *ctx;
-	int fd;
-	char __data[0];
-};
-
-struct io_wq_work;
-
-struct trace_event_raw_io_uring_queue_async_work {
-	struct trace_entry ent;
-	void *ctx;
-	int rw;
-	void *req;
-	struct io_wq_work *work;
-	unsigned int flags;
-	char __data[0];
-};
-
-struct io_wq_work_node {
-	struct io_wq_work_node *next;
-};
-
-struct io_wq_work {
-	struct io_wq_work_node list;
-	struct io_identity *identity;
-	unsigned int flags;
-};
-
-struct trace_event_raw_io_uring_defer {
-	struct trace_entry ent;
-	void *ctx;
-	void *req;
-	long long unsigned int data;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_link {
-	struct trace_entry ent;
-	void *ctx;
-	void *req;
-	void *target_req;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_cqring_wait {
-	struct trace_entry ent;
-	void *ctx;
-	int min_events;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_fail_link {
-	struct trace_entry ent;
-	void *req;
-	void *link;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_complete {
-	struct trace_entry ent;
-	void *ctx;
-	u64 user_data;
-	long int res;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_submit_sqe {
-	struct trace_entry ent;
-	void *ctx;
-	u8 opcode;
-	u64 user_data;
-	bool force_nonblock;
-	bool sq_thread;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_poll_arm {
-	struct trace_entry ent;
-	void *ctx;
-	u8 opcode;
-	u64 user_data;
-	int mask;
-	int events;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_poll_wake {
-	struct trace_entry ent;
-	void *ctx;
-	u8 opcode;
-	u64 user_data;
-	int mask;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_task_add {
-	struct trace_entry ent;
-	void *ctx;
-	u8 opcode;
-	u64 user_data;
-	int mask;
-	char __data[0];
-};
-
-struct trace_event_raw_io_uring_task_run {
-	struct trace_entry ent;
-	void *ctx;
-	u8 opcode;
-	u64 user_data;
-	char __data[0];
-};
-
-struct trace_event_data_offsets_io_uring_create {};
-
-struct trace_event_data_offsets_io_uring_register {};
-
-struct trace_event_data_offsets_io_uring_file_get {};
-
-struct trace_event_data_offsets_io_uring_queue_async_work {};
-
-struct trace_event_data_offsets_io_uring_defer {};
-
-struct trace_event_data_offsets_io_uring_link {};
-
-struct trace_event_data_offsets_io_uring_cqring_wait {};
-
-struct trace_event_data_offsets_io_uring_fail_link {};
-
-struct trace_event_data_offsets_io_uring_complete {};
-
-struct trace_event_data_offsets_io_uring_submit_sqe {};
-
-struct trace_event_data_offsets_io_uring_poll_arm {};
-
-struct trace_event_data_offsets_io_uring_poll_wake {};
-
-struct trace_event_data_offsets_io_uring_task_add {};
-
-struct trace_event_data_offsets_io_uring_task_run {};
-
-typedef void (*btf_trace_io_uring_create)(void *, int, void *, u32, u32, u32);
-
-typedef void (*btf_trace_io_uring_register)(void *, void *, unsigned int, unsigned int, unsigned int, bool, long int);
-
-typedef void (*btf_trace_io_uring_file_get)(void *, void *, int);
-
-typedef void (*btf_trace_io_uring_queue_async_work)(void *, void *, int, void *, struct io_wq_work *, unsigned int);
-
-typedef void (*btf_trace_io_uring_defer)(void *, void *, void *, long long unsigned int);
-
-typedef void (*btf_trace_io_uring_link)(void *, void *, void *, void *);
-
-typedef void (*btf_trace_io_uring_cqring_wait)(void *, void *, int);
-
-typedef void (*btf_trace_io_uring_fail_link)(void *, void *, void *);
-
-typedef void (*btf_trace_io_uring_complete)(void *, void *, u64, long int);
-
-typedef void (*btf_trace_io_uring_submit_sqe)(void *, void *, u8, u64, bool, bool);
-
-typedef void (*btf_trace_io_uring_poll_arm)(void *, void *, u8, u64, int, int);
-
-typedef void (*btf_trace_io_uring_poll_wake)(void *, void *, u8, u64, int);
-
-typedef void (*btf_trace_io_uring_task_add)(void *, void *, u8, u64, int);
-
-typedef void (*btf_trace_io_uring_task_run)(void *, void *, u8, u64);
-
-struct io_uring_sqe {
-	__u8 opcode;
-	__u8 flags;
-	__u16 ioprio;
-	__s32 fd;
-	union {
-		__u64 off;
-		__u64 addr2;
-	};
-	union {
-		__u64 addr;
-		__u64 splice_off_in;
-	};
-	__u32 len;
-	union {
-		__kernel_rwf_t rw_flags;
-		__u32 fsync_flags;
-		__u16 poll_events;
-		__u32 poll32_events;
-		__u32 sync_range_flags;
-		__u32 msg_flags;
-		__u32 timeout_flags;
-		__u32 accept_flags;
-		__u32 cancel_flags;
-		__u32 open_flags;
-		__u32 statx_flags;
-		__u32 fadvise_advice;
-		__u32 splice_flags;
-	};
-	__u64 user_data;
-	union {
-		struct {
-			union {
-				__u16 buf_index;
-				__u16 buf_group;
-			};
-			__u16 personality;
-			__s32 splice_fd_in;
-		};
-		__u64 __pad2[3];
-	};
-};
-
-enum {
-	IOSQE_FIXED_FILE_BIT = 0,
-	IOSQE_IO_DRAIN_BIT = 1,
-	IOSQE_IO_LINK_BIT = 2,
-	IOSQE_IO_HARDLINK_BIT = 3,
-	IOSQE_ASYNC_BIT = 4,
-	IOSQE_BUFFER_SELECT_BIT = 5,
-};
-
-enum {
-	IORING_OP_NOP = 0,
-	IORING_OP_READV = 1,
-	IORING_OP_WRITEV = 2,
-	IORING_OP_FSYNC = 3,
-	IORING_OP_READ_FIXED = 4,
-	IORING_OP_WRITE_FIXED = 5,
-	IORING_OP_POLL_ADD = 6,
-	IORING_OP_POLL_REMOVE = 7,
-	IORING_OP_SYNC_FILE_RANGE = 8,
-	IORING_OP_SENDMSG = 9,
-	IORING_OP_RECVMSG = 10,
-	IORING_OP_TIMEOUT = 11,
-	IORING_OP_TIMEOUT_REMOVE = 12,
-	IORING_OP_ACCEPT = 13,
-	IORING_OP_ASYNC_CANCEL = 14,
-	IORING_OP_LINK_TIMEOUT = 15,
-	IORING_OP_CONNECT = 16,
-	IORING_OP_FALLOCATE = 17,
-	IORING_OP_OPENAT = 18,
-	IORING_OP_CLOSE = 19,
-	IORING_OP_FILES_UPDATE = 20,
-	IORING_OP_STATX = 21,
-	IORING_OP_READ = 22,
-	IORING_OP_WRITE = 23,
-	IORING_OP_FADVISE = 24,
-	IORING_OP_MADVISE = 25,
-	IORING_OP_SEND = 26,
-	IORING_OP_RECV = 27,
-	IORING_OP_OPENAT2 = 28,
-	IORING_OP_EPOLL_CTL = 29,
-	IORING_OP_SPLICE = 30,
-	IORING_OP_PROVIDE_BUFFERS = 31,
-	IORING_OP_REMOVE_BUFFERS = 32,
-	IORING_OP_TEE = 33,
-	IORING_OP_LAST = 34,
-};
-
-struct io_uring_cqe {
-	__u64 user_data;
-	__s32 res;
-	__u32 flags;
-};
-
-enum {
-	IORING_CQE_BUFFER_SHIFT = 16,
-};
-
-struct io_sqring_offsets {
-	__u32 head;
-	__u32 tail;
-	__u32 ring_mask;
-	__u32 ring_entries;
-	__u32 flags;
-	__u32 dropped;
-	__u32 array;
-	__u32 resv1;
-	__u64 resv2;
-};
-
-struct io_cqring_offsets {
-	__u32 head;
-	__u32 tail;
-	__u32 ring_mask;
-	__u32 ring_entries;
-	__u32 overflow;
-	__u32 cqes;
-	__u32 flags;
-	__u32 resv1;
-	__u64 resv2;
-};
-
-struct io_uring_params {
-	__u32 sq_entries;
-	__u32 cq_entries;
-	__u32 flags;
-	__u32 sq_thread_cpu;
-	__u32 sq_thread_idle;
-	__u32 features;
-	__u32 wq_fd;
-	__u32 resv[3];
-	struct io_sqring_offsets sq_off;
-	struct io_cqring_offsets cq_off;
-};
-
-enum {
-	IORING_REGISTER_BUFFERS = 0,
-	IORING_UNREGISTER_BUFFERS = 1,
-	IORING_REGISTER_FILES = 2,
-	IORING_UNREGISTER_FILES = 3,
-	IORING_REGISTER_EVENTFD = 4,
-	IORING_UNREGISTER_EVENTFD = 5,
-	IORING_REGISTER_FILES_UPDATE = 6,
-	IORING_REGISTER_EVENTFD_ASYNC = 7,
-	IORING_REGISTER_PROBE = 8,
-	IORING_REGISTER_PERSONALITY = 9,
-	IORING_UNREGISTER_PERSONALITY = 10,
-	IORING_REGISTER_RESTRICTIONS = 11,
-	IORING_REGISTER_ENABLE_RINGS = 12,
-	IORING_REGISTER_LAST = 13,
-};
-
-struct io_uring_files_update {
-	__u32 offset;
-	__u32 resv;
-	__u64 fds;
-};
-
-struct io_uring_probe_op {
-	__u8 op;
-	__u8 resv;
-	__u16 flags;
-	__u32 resv2;
-};
-
-struct io_uring_probe {
-	__u8 last_op;
-	__u8 ops_len;
-	__u16 resv;
-	__u32 resv2[3];
-	struct io_uring_probe_op ops[0];
-};
-
-struct io_uring_restriction {
-	__u16 opcode;
-	union {
-		__u8 register_op;
-		__u8 sqe_op;
-		__u8 sqe_flags;
-	};
-	__u8 resv;
-	__u32 resv2[3];
-};
-
-enum {
-	IORING_RESTRICTION_REGISTER_OP = 0,
-	IORING_RESTRICTION_SQE_OP = 1,
-	IORING_RESTRICTION_SQE_FLAGS_ALLOWED = 2,
-	IORING_RESTRICTION_SQE_FLAGS_REQUIRED = 3,
-	IORING_RESTRICTION_LAST = 4,
-};
-
-enum {
-	IO_WQ_WORK_CANCEL = 1,
-	IO_WQ_WORK_HASHED = 2,
-	IO_WQ_WORK_UNBOUND = 4,
-	IO_WQ_WORK_NO_CANCEL = 8,
-	IO_WQ_WORK_CONCURRENT = 16,
-	IO_WQ_WORK_FILES = 32,
-	IO_WQ_WORK_FS = 64,
-	IO_WQ_WORK_MM = 128,
-	IO_WQ_WORK_CREDS = 256,
-	IO_WQ_WORK_BLKCG = 512,
-	IO_WQ_WORK_FSIZE = 1024,
-	IO_WQ_HASH_SHIFT = 24,
-};
-
-enum io_wq_cancel {
-	IO_WQ_CANCEL_OK = 0,
-	IO_WQ_CANCEL_RUNNING = 1,
-	IO_WQ_CANCEL_NOTFOUND = 2,
-};
-
-typedef void free_work_fn(struct io_wq_work *);
-
-typedef struct io_wq_work *io_wq_work_fn(struct io_wq_work *);
-
-struct io_wq_data {
-	struct user_struct *user;
-	io_wq_work_fn *do_work;
-	free_work_fn *free_work;
-};
-
-struct io_uring {
-	u32 head;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	u32 tail;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct io_rings {
-	struct io_uring sq;
-	struct io_uring cq;
-	u32 sq_ring_mask;
-	u32 cq_ring_mask;
-	u32 sq_ring_entries;
-	u32 cq_ring_entries;
-	u32 sq_dropped;
-	u32 sq_flags;
-	u32 cq_flags;
-	u32 cq_overflow;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct io_uring_cqe cqes[0];
-};
-
-struct io_mapped_ubuf {
-	u64 ubuf;
-	size_t len;
-	struct bio_vec *bvec;
-	unsigned int nr_bvecs;
-	long unsigned int acct_pages;
-};
-
-struct fixed_file_table {
-	struct file **files;
-};
-
-struct fixed_file_data;
-
-struct fixed_file_ref_node {
-	struct percpu_ref refs;
-	struct list_head node;
-	struct list_head file_list;
-	struct fixed_file_data *file_data;
-	struct llist_node llist;
-	bool done;
-};
-
-struct io_ring_ctx;
-
-struct fixed_file_data {
-	struct fixed_file_table *table;
-	struct io_ring_ctx *ctx;
-	struct fixed_file_ref_node *node;
-	struct percpu_ref refs;
-	struct completion done;
-	struct list_head ref_list;
-	spinlock_t lock;
-};
-
-struct io_wq;
-
-struct io_restriction {
-	long unsigned int register_op[1];
-	long unsigned int sqe_op[1];
-	u8 sqe_flags_allowed;
-	u8 sqe_flags_required;
-	bool registered;
-};
-
-struct io_sq_data;
-
-struct io_kiocb;
-
-struct io_ring_ctx {
-	struct {
-		struct percpu_ref refs;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-	};
-	struct {
-		unsigned int flags;
-		unsigned int compat: 1;
-		unsigned int limit_mem: 1;
-		unsigned int cq_overflow_flushed: 1;
-		unsigned int drain_next: 1;
-		unsigned int eventfd_async: 1;
-		unsigned int restricted: 1;
-		unsigned int sqo_dead: 1;
-		u32 *sq_array;
-		unsigned int cached_sq_head;
-		unsigned int sq_entries;
-		unsigned int sq_mask;
-		unsigned int sq_thread_idle;
-		unsigned int cached_sq_dropped;
-		unsigned int cached_cq_overflow;
-		long unsigned int sq_check_overflow;
-		struct list_head defer_list;
-		struct list_head timeout_list;
-		struct list_head cq_overflow_list;
-		struct io_uring_sqe *sq_sqes;
-		long: 64;
-		long: 64;
-		long: 64;
-	};
-	struct io_rings *rings;
-	struct io_wq *io_wq;
-	struct task_struct *sqo_task;
-	struct mm_struct *mm_account;
-	struct cgroup_subsys_state *sqo_blkcg_css;
-	struct io_sq_data *sq_data;
-	struct wait_queue_head sqo_sq_wait;
-	struct wait_queue_entry sqo_wait_entry;
-	struct list_head sqd_list;
-	struct fixed_file_data *file_data;
-	unsigned int nr_user_files;
-	unsigned int nr_user_bufs;
-	struct io_mapped_ubuf *user_bufs;
-	struct user_struct *user;
-	const struct cred *creds;
-	kuid_t loginuid;
-	unsigned int sessionid;
-	struct completion ref_comp;
-	struct completion sq_thread_comp;
-	struct io_kiocb *fallback_req;
-	struct socket *ring_sock;
-	struct xarray io_buffers;
-	struct xarray personalities;
-	u32 pers_next;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct {
-		unsigned int cached_cq_tail;
-		unsigned int cq_entries;
-		unsigned int cq_mask;
-		atomic_t cq_timeouts;
-		unsigned int cq_last_tm_flush;
-		long unsigned int cq_check_overflow;
-		struct wait_queue_head cq_wait;
-		struct fasync_struct *cq_fasync;
-		struct eventfd_ctx *cq_ev_fd;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-		long: 64;
-	};
-	struct {
-		struct mutex uring_lock;
-		wait_queue_head_t wait;
-		long: 64;
-	};
-	struct {
-		spinlock_t completion_lock;
-		struct list_head iopoll_list;
-		struct hlist_head *cancel_hash;
-		unsigned int cancel_hash_bits;
-		bool poll_multi_file;
-		spinlock_t inflight_lock;
-		struct list_head inflight_list;
-	};
-	struct delayed_work file_put_work;
-	struct llist_head file_put_llist;
-	struct work_struct exit_work;
-	struct io_restriction restrictions;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-struct io_buffer {
-	struct list_head list;
-	__u64 addr;
-	__u32 len;
-	__u16 bid;
-};
-
-struct io_sq_data {
-	refcount_t refs;
-	struct mutex lock;
-	struct list_head ctx_list;
-	struct list_head ctx_new_list;
-	struct mutex ctx_lock;
-	struct task_struct *thread;
-	struct wait_queue_head wait;
-};
-
-struct io_rw {
-	struct kiocb kiocb;
-	u64 addr;
-	u64 len;
-};
-
-struct io_poll_iocb {
-	struct file *file;
-	union {
-		struct wait_queue_head *head;
-		u64 addr;
-	};
-	__poll_t events;
-	bool done;
-	bool canceled;
-	struct wait_queue_entry wait;
-};
-
-struct io_accept {
-	struct file *file;
-	struct sockaddr *addr;
-	int *addr_len;
-	int flags;
-	long unsigned int nofile;
-};
-
-struct io_sync {
-	struct file *file;
-	loff_t len;
-	loff_t off;
-	int flags;
-	int mode;
-};
-
-struct io_cancel {
-	struct file *file;
-	u64 addr;
-};
-
-struct io_timeout {
-	struct file *file;
-	u32 off;
-	u32 target_seq;
-	struct list_head list;
-};
-
-struct io_timeout_rem {
-	struct file *file;
-	u64 addr;
-};
-
-struct io_connect {
-	struct file *file;
-	struct sockaddr *addr;
-	int addr_len;
-};
-
-struct io_sr_msg {
-	struct file *file;
-	union {
-		struct user_msghdr *umsg;
-		void *buf;
-	};
-	int msg_flags;
-	int bgid;
-	size_t len;
-	struct io_buffer *kbuf;
-};
-
-struct io_open {
-	struct file *file;
-	int dfd;
-	bool ignore_nonblock;
-	struct filename *filename;
-	struct open_how how;
-	long unsigned int nofile;
-};
-
-struct io_close {
-	struct file *file;
-	struct file *put_file;
-	int fd;
-};
-
-struct io_files_update {
-	struct file *file;
-	u64 arg;
-	u32 nr_args;
-	u32 offset;
-};
-
-struct io_fadvise {
-	struct file *file;
-	u64 offset;
-	u32 len;
-	u32 advice;
-};
-
-struct io_madvise {
-	struct file *file;
-	u64 addr;
-	u32 len;
-	u32 advice;
-};
-
-struct io_epoll {
-	struct file *file;
-	int epfd;
-	int op;
-	int fd;
-	struct epoll_event event;
-};
-
-struct io_splice {
-	struct file *file_out;
-	struct file *file_in;
-	loff_t off_out;
-	loff_t off_in;
-	u64 len;
-	unsigned int flags;
-};
-
-struct io_provide_buf {
-	struct file *file;
-	__u64 addr;
-	__u32 len;
-	__u32 bgid;
-	__u16 nbufs;
-	__u16 bid;
-};
-
-struct io_statx {
-	struct file *file;
-	int dfd;
-	unsigned int mask;
-	unsigned int flags;
-	const char *filename;
-	struct statx *buffer;
-};
-
-struct io_completion {
-	struct file *file;
-	struct list_head list;
-	u32 cflags;
-};
-
-struct async_poll;
-
-struct io_kiocb {
-	union {
-		struct file *file;
-		struct io_rw rw;
-		struct io_poll_iocb poll;
-		struct io_accept accept;
-		struct io_sync sync;
-		struct io_cancel cancel;
-		struct io_timeout timeout;
-		struct io_timeout_rem timeout_rem;
-		struct io_connect connect;
-		struct io_sr_msg sr_msg;
-		struct io_open open;
-		struct io_close close;
-		struct io_files_update files_update;
-		struct io_fadvise fadvise;
-		struct io_madvise madvise;
-		struct io_epoll epoll;
-		struct io_splice splice;
-		struct io_provide_buf pbuf;
-		struct io_statx statx;
-		struct io_completion compl;
-	};
-	void *async_data;
-	u8 opcode;
-	u8 iopoll_completed;
-	u16 buf_index;
-	u32 result;
-	struct io_ring_ctx *ctx;
-	unsigned int flags;
-	refcount_t refs;
-	struct task_struct *task;
-	u64 user_data;
-	struct list_head link_list;
-	struct list_head inflight_entry;
-	struct list_head iopoll_entry;
-	struct percpu_ref *fixed_file_refs;
-	struct callback_head task_work;
-	struct hlist_node hash_node;
-	struct async_poll *apoll;
-	struct io_wq_work work;
-};
-
-struct io_timeout_data {
-	struct io_kiocb *req;
-	struct hrtimer timer;
-	struct timespec64 ts;
-	enum hrtimer_mode mode;
-};
-
-struct io_async_connect {
-	struct __kernel_sockaddr_storage address;
-};
-
-struct io_async_msghdr {
-	struct iovec fast_iov[8];
-	struct iovec *iov;
-	struct sockaddr *uaddr;
-	struct msghdr msg;
-	struct __kernel_sockaddr_storage addr;
-};
-
-struct io_async_rw {
-	struct iovec fast_iov[8];
-	const struct iovec *free_iovec;
-	struct iov_iter iter;
-	size_t bytes_done;
-	struct wait_page_queue wpq;
-};
-
-enum {
-	REQ_F_FIXED_FILE_BIT = 0,
-	REQ_F_IO_DRAIN_BIT = 1,
-	REQ_F_LINK_BIT = 2,
-	REQ_F_HARDLINK_BIT = 3,
-	REQ_F_FORCE_ASYNC_BIT = 4,
-	REQ_F_BUFFER_SELECT_BIT = 5,
-	REQ_F_LINK_HEAD_BIT = 6,
-	REQ_F_FAIL_LINK_BIT = 7,
-	REQ_F_INFLIGHT_BIT = 8,
-	REQ_F_CUR_POS_BIT = 9,
-	REQ_F_NOWAIT_BIT = 10,
-	REQ_F_LINK_TIMEOUT_BIT = 11,
-	REQ_F_ISREG_BIT = 12,
-	REQ_F_NEED_CLEANUP_BIT = 13,
-	REQ_F_POLLED_BIT = 14,
-	REQ_F_BUFFER_SELECTED_BIT = 15,
-	REQ_F_NO_FILE_TABLE_BIT = 16,
-	REQ_F_WORK_INITIALIZED_BIT = 17,
-	REQ_F_LTIMEOUT_ACTIVE_BIT = 18,
-	__REQ_F_LAST_BIT = 19,
-};
-
-enum {
-	REQ_F_FIXED_FILE = 1,
-	REQ_F_IO_DRAIN = 2,
-	REQ_F_LINK = 4,
-	REQ_F_HARDLINK = 8,
-	REQ_F_FORCE_ASYNC = 16,
-	REQ_F_BUFFER_SELECT = 32,
-	REQ_F_LINK_HEAD = 64,
-	REQ_F_FAIL_LINK = 128,
-	REQ_F_INFLIGHT = 256,
-	REQ_F_CUR_POS = 512,
-	REQ_F_NOWAIT = 1024,
-	REQ_F_LINK_TIMEOUT = 2048,
-	REQ_F_ISREG = 4096,
-	REQ_F_NEED_CLEANUP = 8192,
-	REQ_F_POLLED = 16384,
-	REQ_F_BUFFER_SELECTED = 32768,
-	REQ_F_NO_FILE_TABLE = 65536,
-	REQ_F_WORK_INITIALIZED = 131072,
-	REQ_F_LTIMEOUT_ACTIVE = 262144,
-};
-
-struct async_poll {
-	struct io_poll_iocb poll;
-	struct io_poll_iocb *double_poll;
-};
-
-struct io_defer_entry {
-	struct list_head list;
-	struct io_kiocb *req;
-	u32 seq;
-};
-
-struct io_comp_state {
-	unsigned int nr;
-	struct list_head list;
-	struct io_ring_ctx *ctx;
-};
-
-struct io_submit_state {
-	struct blk_plug plug;
-	void *reqs[8];
-	unsigned int free_reqs;
-	struct io_comp_state comp;
-	struct file *file;
-	unsigned int fd;
-	unsigned int has_refs;
-	unsigned int ios_left;
-};
-
-struct io_op_def {
-	unsigned int needs_file: 1;
-	unsigned int needs_file_no_error: 1;
-	unsigned int hash_reg_file: 1;
-	unsigned int unbound_nonreg_file: 1;
-	unsigned int not_supported: 1;
-	unsigned int pollin: 1;
-	unsigned int pollout: 1;
-	unsigned int buffer_select: 1;
-	unsigned int needs_async_data: 1;
-	short unsigned int async_size;
-	unsigned int work_flags;
-};
-
-enum io_mem_account {
-	ACCT_LOCKED = 0,
-	ACCT_PINNED = 1,
-};
-
-struct req_batch {
-	void *reqs[8];
-	int to_free;
-	struct task_struct *task;
-	int task_refs;
-};
-
-struct io_poll_table {
-	struct poll_table_struct pt;
-	struct io_kiocb *req;
-	int nr_entries;
-	int error;
-};
-
-enum sq_ret {
-	SQT_IDLE = 1,
-	SQT_SPIN = 2,
-	SQT_DID_WORK = 4,
-};
-
-struct io_wait_queue {
-	struct wait_queue_entry wq;
-	struct io_ring_ctx *ctx;
-	unsigned int to_wait;
-	unsigned int nr_timeouts;
-};
-
-struct io_file_put {
-	struct list_head list;
-	struct file *file;
-};
-
-struct io_task_cancel {
-	struct task_struct *task;
-	struct files_struct *files;
-};
-
-struct io_identify;
-
-struct io_wq_work_list {
-	struct io_wq_work_node *first;
-	struct io_wq_work_node *last;
-};
-
-typedef bool work_cancel_fn(struct io_wq_work *, void *);
-
-enum {
-	IO_WORKER_F_UP = 1,
-	IO_WORKER_F_RUNNING = 2,
-	IO_WORKER_F_FREE = 4,
-	IO_WORKER_F_FIXED = 8,
-	IO_WORKER_F_BOUND = 16,
-};
-
-enum {
-	IO_WQ_BIT_EXIT = 0,
-	IO_WQ_BIT_CANCEL = 1,
-	IO_WQ_BIT_ERROR = 2,
-};
-
-enum {
-	IO_WQE_FLAG_STALLED = 1,
-};
-
-struct io_wqe;
-
-struct io_worker {
-	refcount_t ref;
-	unsigned int flags;
-	struct hlist_nulls_node nulls_node;
-	struct list_head all_list;
-	struct task_struct *task;
-	struct io_wqe *wqe;
-	struct io_wq_work *cur_work;
-	spinlock_t lock;
-	struct callback_head rcu;
-	struct mm_struct *mm;
-	struct cgroup_subsys_state *blkcg_css;
-	const struct cred *cur_creds;
-	const struct cred *saved_creds;
-	struct files_struct *restore_files;
-	struct nsproxy *restore_nsproxy;
-	struct fs_struct *restore_fs;
-};
-
-struct io_wqe_acct {
-	unsigned int nr_workers;
-	unsigned int max_workers;
-	atomic_t nr_running;
-};
-
-struct io_wq;
-
-struct io_wqe {
-	struct {
-		raw_spinlock_t lock;
-		struct io_wq_work_list work_list;
-		long unsigned int hash_map;
-		unsigned int flags;
-		long: 64;
-		long: 64;
-		long: 64;
-	};
-	int node;
-	struct io_wqe_acct acct[2];
-	struct hlist_nulls_head free_list;
-	struct list_head all_list;
-	struct io_wq *wq;
-	struct io_wq_work *hash_tail[64];
-};
-
-enum {
-	IO_WQ_ACCT_BOUND = 0,
-	IO_WQ_ACCT_UNBOUND = 1,
-};
-
-struct io_wq {
-	struct io_wqe **wqes;
-	long unsigned int state;
-	free_work_fn *free_work;
-	io_wq_work_fn *do_work;
-	struct task_struct *manager;
-	struct user_struct *user;
-	refcount_t refs;
-	struct completion done;
-	struct hlist_node cpuhp_node;
-	refcount_t use_refs;
-};
-
-struct io_cb_cancel_data {
-	work_cancel_fn *fn;
-	void *data;
-	int nr_running;
-	int nr_pending;
-	bool cancel_all;
-};
-
 struct iomap_ops {
 	int (*iomap_begin)(struct inode *, loff_t, loff_t, unsigned int, struct iomap *, struct iomap *);
 	int (*iomap_end)(struct inode *, loff_t, loff_t, ssize_t, unsigned int, struct iomap *);
 };
 
+struct iomap_iter {
+	struct inode *inode;
+	loff_t pos;
+	u64 len;
+	s64 processed;
+	unsigned int flags;
+	struct iomap iomap;
+	struct iomap srcmap;
+};
+
 struct trace_event_raw_dax_pmd_fault_class {
 	struct trace_entry ent;
 	long unsigned int ino;
@@ -47756,20 +51992,26 @@ enum dax_wake_mode {
 
 struct crypto_skcipher;
 
+struct fscrypt_blk_crypto_key;
+
 struct fscrypt_prepared_key {
 	struct crypto_skcipher *tfm;
+	struct fscrypt_blk_crypto_key *blk_key;
 };
 
 struct fscrypt_mode;
 
+struct fscrypt_master_key;
+
 struct fscrypt_direct_key;
 
 struct fscrypt_info {
 	struct fscrypt_prepared_key ci_enc_key;
 	bool ci_owns_key;
+	bool ci_inlinecrypt;
 	struct fscrypt_mode *ci_mode;
 	struct inode *ci_inode;
-	struct key *ci_master_key;
+	struct fscrypt_master_key *ci_master_key;
 	struct list_head ci_master_key_link;
 	struct fscrypt_direct_key *ci_direct_key;
 	siphash_key_t ci_dirhash_key;
@@ -47779,23 +52021,6 @@ struct fscrypt_info {
 	u32 ci_hashed_ino;
 };
 
-struct crypto_async_request;
-
-typedef void (*crypto_completion_t)(struct crypto_async_request *, int);
-
-struct crypto_async_request {
-	struct list_head list;
-	crypto_completion_t complete;
-	void *data;
-	struct crypto_tfm *tfm;
-	u32 flags;
-};
-
-struct crypto_wait {
-	struct completion completion;
-	int err;
-};
-
 struct skcipher_request {
 	unsigned int cryptlen;
 	u8 *iv;
@@ -47810,12 +52035,14 @@ struct crypto_skcipher {
 	struct crypto_tfm base;
 };
 
-enum blk_crypto_mode_num {
-	BLK_ENCRYPTION_MODE_INVALID = 0,
-	BLK_ENCRYPTION_MODE_AES_256_XTS = 1,
-	BLK_ENCRYPTION_MODE_AES_128_CBC_ESSIV = 2,
-	BLK_ENCRYPTION_MODE_ADIANTUM = 3,
-	BLK_ENCRYPTION_MODE_MAX = 4,
+struct fscrypt_key_specifier {
+	__u32 type;
+	__u32 __reserved;
+	union {
+		__u8 __reserved[32];
+		__u8 descriptor[8];
+		__u8 identifier[16];
+	} u;
 };
 
 struct fscrypt_mode {
@@ -47828,6 +52055,35 @@ struct fscrypt_mode {
 	enum blk_crypto_mode_num blk_crypto_mode;
 };
 
+struct fscrypt_hkdf {
+	struct crypto_shash *hmac_tfm;
+};
+
+struct fscrypt_master_key_secret {
+	struct fscrypt_hkdf hkdf;
+	u32 size;
+	u8 raw[64];
+};
+
+struct fscrypt_master_key {
+	struct super_block *mk_sb;
+	struct hlist_node mk_node;
+	struct rw_semaphore mk_sem;
+	refcount_t mk_active_refs;
+	refcount_t mk_struct_refs;
+	struct callback_head mk_rcu_head;
+	struct fscrypt_master_key_secret mk_secret;
+	struct fscrypt_key_specifier mk_spec;
+	struct key *mk_users;
+	struct list_head mk_decrypted_inodes;
+	spinlock_t mk_decrypted_inodes_lock;
+	struct fscrypt_prepared_key mk_direct_keys[10];
+	struct fscrypt_prepared_key mk_iv_ino_lblk_64_keys[10];
+	struct fscrypt_prepared_key mk_iv_ino_lblk_32_keys[10];
+	siphash_key_t mk_ino_hash_key;
+	bool mk_ino_hash_key_initialized;
+};
+
 typedef enum {
 	FS_DECRYPT = 0,
 	FS_ENCRYPT = 1,
@@ -47862,51 +52118,23 @@ struct fscrypt_nokey_name {
 	u8 sha256[32];
 };
 
-struct fscrypt_hkdf {
-	struct crypto_shash *hmac_tfm;
-};
-
-struct fscrypt_key_specifier {
-	__u32 type;
-	__u32 __reserved;
-	union {
-		__u8 __reserved[32];
-		__u8 descriptor[8];
-		__u8 identifier[16];
-	} u;
-};
+typedef __u16 __le16;
 
 struct fscrypt_symlink_data {
 	__le16 len;
 	char encrypted_path[1];
 } __attribute__((packed));
 
-struct fscrypt_master_key_secret {
-	struct fscrypt_hkdf hkdf;
-	u32 size;
-	u8 raw[64];
-};
-
-struct fscrypt_master_key {
-	struct fscrypt_master_key_secret mk_secret;
-	struct rw_semaphore mk_secret_sem;
-	struct fscrypt_key_specifier mk_spec;
-	struct key *mk_users;
-	refcount_t mk_refcount;
-	struct list_head mk_decrypted_inodes;
-	spinlock_t mk_decrypted_inodes_lock;
-	struct fscrypt_prepared_key mk_direct_keys[10];
-	struct fscrypt_prepared_key mk_iv_ino_lblk_64_keys[10];
-	struct fscrypt_prepared_key mk_iv_ino_lblk_32_keys[10];
-	siphash_key_t mk_ino_hash_key;
-	bool mk_ino_hash_key_initialized;
-};
-
 enum key_state {
 	KEY_IS_UNINSTANTIATED = 0,
 	KEY_IS_POSITIVE = 1,
 };
 
+struct fscrypt_keyring {
+	spinlock_t lock;
+	struct hlist_head key_hashtable[128];
+};
+
 struct fscrypt_provisioning_key_payload {
 	__u32 type;
 	__u32 __reserved;
@@ -47975,43 +52203,6 @@ union fscrypt_context {
 	struct fscrypt_context_v2 v2;
 };
 
-struct crypto_template;
-
-struct crypto_spawn;
-
-struct crypto_instance {
-	struct crypto_alg alg;
-	struct crypto_template *tmpl;
-	union {
-		struct hlist_node list;
-		struct crypto_spawn *spawns;
-	};
-	void *__ctx[0];
-};
-
-struct crypto_spawn {
-	struct list_head list;
-	struct crypto_alg *alg;
-	union {
-		struct crypto_instance *inst;
-		struct crypto_spawn *next;
-	};
-	const struct crypto_type *frontend;
-	u32 mask;
-	bool dead;
-	bool registered;
-};
-
-struct rtattr;
-
-struct crypto_template {
-	struct list_head list;
-	struct hlist_head instances;
-	struct module *module;
-	int (*create)(struct crypto_template *, struct rtattr **);
-	char name[128];
-};
-
 struct user_key_payload {
 	struct callback_head rcu;
 	short unsigned int datalen;
@@ -48047,6 +52238,12 @@ struct fscrypt_dummy_policy {
 	const union fscrypt_policy *policy;
 };
 
+struct fscrypt_blk_crypto_key {
+	struct blk_crypto_key base;
+	int num_devs;
+	struct request_queue *devs[0];
+};
+
 struct fsverity_hash_alg;
 
 struct merkle_tree_params {
@@ -48066,7 +52263,7 @@ struct merkle_tree_params {
 struct fsverity_info {
 	struct merkle_tree_params tree_params;
 	u8 root_hash[64];
-	u8 measurement[64];
+	u8 file_digest[64];
 	const struct inode *inode;
 };
 
@@ -48082,6 +52279,19 @@ struct fsverity_enable_arg {
 	__u64 __reserved2[11];
 };
 
+struct fsverity_descriptor {
+	__u8 version;
+	__u8 hash_algorithm;
+	__u8 log_blocksize;
+	__u8 salt_size;
+	__le32 sig_size;
+	__le64 data_size;
+	__u8 root_hash[64];
+	__u8 salt[32];
+	__u8 __reserved[144];
+	__u8 signature[0];
+};
+
 struct crypto_ahash;
 
 struct fsverity_hash_alg {
@@ -48107,19 +52317,6 @@ struct crypto_ahash {
 	struct crypto_tfm base;
 };
 
-struct fsverity_descriptor {
-	__u8 version;
-	__u8 hash_algorithm;
-	__u8 log_blocksize;
-	__u8 salt_size;
-	__le32 sig_size;
-	__le64 data_size;
-	__u8 root_hash[64];
-	__u8 salt[32];
-	__u8 __reserved[144];
-	__u8 signature[0];
-};
-
 struct ahash_request {
 	struct crypto_async_request base;
 	unsigned int nbytes;
@@ -48141,7 +52338,15 @@ struct fsverity_digest {
 	__u8 digest[0];
 };
 
-struct fsverity_signed_digest {
+struct fsverity_read_metadata_arg {
+	__u64 metadata_type;
+	__u64 offset;
+	__u64 length;
+	__u64 buf_ptr;
+	__u64 __reserved;
+};
+
+struct fsverity_formatted_digest {
 	char magic[8];
 	__le16 digest_algorithm;
 	__le16 digest_size;
@@ -48341,6 +52546,40 @@ struct user_regs_struct {
 	long unsigned int gs;
 };
 
+typedef __u32 Elf32_Addr;
+
+typedef __u16 Elf32_Half;
+
+typedef __u32 Elf32_Off;
+
+struct elf32_hdr {
+	unsigned char e_ident[16];
+	Elf32_Half e_type;
+	Elf32_Half e_machine;
+	Elf32_Word e_version;
+	Elf32_Addr e_entry;
+	Elf32_Off e_phoff;
+	Elf32_Off e_shoff;
+	Elf32_Word e_flags;
+	Elf32_Half e_ehsize;
+	Elf32_Half e_phentsize;
+	Elf32_Half e_phnum;
+	Elf32_Half e_shentsize;
+	Elf32_Half e_shnum;
+	Elf32_Half e_shstrndx;
+};
+
+struct elf32_phdr {
+	Elf32_Word p_type;
+	Elf32_Off p_offset;
+	Elf32_Addr p_vaddr;
+	Elf32_Addr p_paddr;
+	Elf32_Word p_filesz;
+	Elf32_Word p_memsz;
+	Elf32_Word p_flags;
+	Elf32_Word p_align;
+};
+
 struct elf32_shdr {
 	Elf32_Word sh_name;
 	Elf32_Word sh_type;
@@ -48354,7 +52593,31 @@ struct elf32_shdr {
 	Elf32_Word sh_entsize;
 };
 
-typedef struct user_regs_struct compat_elf_gregset_t;
+struct user_regs_struct32 {
+	__u32 ebx;
+	__u32 ecx;
+	__u32 edx;
+	__u32 esi;
+	__u32 edi;
+	__u32 ebp;
+	__u32 eax;
+	short unsigned int ds;
+	short unsigned int __ds;
+	short unsigned int es;
+	short unsigned int __es;
+	short unsigned int fs;
+	short unsigned int __fs;
+	short unsigned int gs;
+	short unsigned int __gs;
+	__u32 orig_eax;
+	__u32 eip;
+	short unsigned int cs;
+	short unsigned int __cs;
+	__u32 eflags;
+	__u32 esp;
+	short unsigned int ss;
+	short unsigned int __ss;
+};
 
 struct compat_elf_siginfo {
 	compat_int_t si_signo;
@@ -48362,7 +52625,7 @@ struct compat_elf_siginfo {
 	compat_int_t si_errno;
 };
 
-struct compat_elf_prstatus {
+struct compat_elf_prstatus_common {
 	struct compat_elf_siginfo pr_info;
 	short int pr_cursig;
 	compat_ulong_t pr_sigpend;
@@ -48375,8 +52638,6 @@ struct compat_elf_prstatus {
 	struct old_timeval32 pr_stime;
 	struct old_timeval32 pr_cutime;
 	struct old_timeval32 pr_cstime;
-	compat_elf_gregset_t pr_reg;
-	compat_int_t pr_fpvalid;
 };
 
 struct compat_elf_prpsinfo {
@@ -48395,6 +52656,20 @@ struct compat_elf_prpsinfo {
 	char pr_psargs[80];
 };
 
+typedef struct user_regs_struct compat_elf_gregset_t;
+
+struct i386_elf_prstatus {
+	struct compat_elf_prstatus_common common;
+	struct user_regs_struct32 pr_reg;
+	compat_int_t pr_fpvalid;
+};
+
+struct compat_elf_prstatus {
+	struct compat_elf_prstatus_common common;
+	compat_elf_gregset_t pr_reg;
+	compat_int_t pr_fpvalid;
+};
+
 struct elf_thread_core_info___2 {
 	struct elf_thread_core_info___2 *next;
 	struct task_struct *task;
@@ -48413,6 +52688,31 @@ struct elf_note_info___2 {
 	int thread_notes;
 };
 
+enum {
+	MBE_REFERENCED_B = 0,
+	MBE_REUSABLE_B = 1,
+};
+
+struct mb_cache_entry {
+	struct list_head e_list;
+	struct hlist_bl_node e_hash_list;
+	atomic_t e_refcnt;
+	u32 e_key;
+	long unsigned int e_flags;
+	u64 e_value;
+};
+
+struct mb_cache {
+	struct hlist_bl_head *c_hash;
+	int c_bucket_bits;
+	long unsigned int c_max_entries;
+	spinlock_t c_list_lock;
+	struct list_head c_list;
+	long unsigned int c_entry_count;
+	struct shrinker c_shrink;
+	struct work_struct c_shrink_work;
+};
+
 struct posix_acl_xattr_entry {
 	__le16 e_tag;
 	__le16 e_perm;
@@ -48423,6 +52723,1670 @@ struct posix_acl_xattr_header {
 	__le32 a_version;
 };
 
+struct rpc_timer {
+	struct list_head list;
+	long unsigned int expires;
+	struct delayed_work dwork;
+};
+
+struct rpc_wait_queue {
+	spinlock_t lock;
+	struct list_head tasks[4];
+	unsigned char maxpriority;
+	unsigned char priority;
+	unsigned char nr;
+	unsigned int qlen;
+	struct rpc_timer timer_list;
+	const char *name;
+};
+
+struct nfs_seqid_counter {
+	ktime_t create_time;
+	int owner_id;
+	int flags;
+	u32 counter;
+	spinlock_t lock;
+	struct list_head list;
+	struct rpc_wait_queue wait;
+};
+
+struct nfs4_stateid_struct {
+	union {
+		char data[16];
+		struct {
+			__be32 seqid;
+			char other[12];
+		};
+	};
+	enum {
+		NFS4_INVALID_STATEID_TYPE = 0,
+		NFS4_SPECIAL_STATEID_TYPE = 1,
+		NFS4_OPEN_STATEID_TYPE = 2,
+		NFS4_LOCK_STATEID_TYPE = 3,
+		NFS4_DELEGATION_STATEID_TYPE = 4,
+		NFS4_LAYOUT_STATEID_TYPE = 5,
+		NFS4_PNFS_DS_STATEID_TYPE = 6,
+		NFS4_REVOKED_STATEID_TYPE = 7,
+	} type;
+};
+
+typedef struct nfs4_stateid_struct nfs4_stateid;
+
+struct nfs4_state;
+
+struct nfs4_lock_state {
+	struct list_head ls_locks;
+	struct nfs4_state *ls_state;
+	long unsigned int ls_flags;
+	struct nfs_seqid_counter ls_seqid;
+	nfs4_stateid ls_stateid;
+	refcount_t ls_count;
+	fl_owner_t ls_owner;
+};
+
+struct xdr_netobj {
+	unsigned int len;
+	u8 *data;
+};
+
+struct xdr_buf {
+	struct kvec head[1];
+	struct kvec tail[1];
+	struct bio_vec *bvec;
+	struct page **pages;
+	unsigned int page_base;
+	unsigned int page_len;
+	unsigned int flags;
+	unsigned int buflen;
+	unsigned int len;
+};
+
+struct rpc_rqst;
+
+struct xdr_stream {
+	__be32 *p;
+	struct xdr_buf *buf;
+	__be32 *end;
+	struct kvec *iov;
+	struct kvec scratch;
+	struct page **page_ptr;
+	unsigned int nwords;
+	struct rpc_rqst *rqst;
+};
+
+struct rpc_xprt;
+
+struct rpc_task;
+
+struct rpc_cred;
+
+struct rpc_rqst {
+	struct rpc_xprt *rq_xprt;
+	struct xdr_buf rq_snd_buf;
+	struct xdr_buf rq_rcv_buf;
+	struct rpc_task *rq_task;
+	struct rpc_cred *rq_cred;
+	__be32 rq_xid;
+	int rq_cong;
+	u32 rq_seqno;
+	int rq_enc_pages_num;
+	struct page **rq_enc_pages;
+	void (*rq_release_snd_buf)(struct rpc_rqst *);
+	union {
+		struct list_head rq_list;
+		struct rb_node rq_recv;
+	};
+	struct list_head rq_xmit;
+	struct list_head rq_xmit2;
+	void *rq_buffer;
+	size_t rq_callsize;
+	void *rq_rbuffer;
+	size_t rq_rcvsize;
+	size_t rq_xmit_bytes_sent;
+	size_t rq_reply_bytes_recvd;
+	struct xdr_buf rq_private_buf;
+	long unsigned int rq_majortimeo;
+	long unsigned int rq_minortimeo;
+	long unsigned int rq_timeout;
+	ktime_t rq_rtt;
+	unsigned int rq_retries;
+	unsigned int rq_connect_cookie;
+	atomic_t rq_pin;
+	u32 rq_bytes_sent;
+	ktime_t rq_xtime;
+	int rq_ntrans;
+	struct list_head rq_bc_list;
+	long unsigned int rq_bc_pa_state;
+	struct list_head rq_bc_pa_list;
+};
+
+typedef void (*kxdreproc_t)(struct rpc_rqst *, struct xdr_stream *, const void *);
+
+typedef int (*kxdrdproc_t)(struct rpc_rqst *, struct xdr_stream *, void *);
+
+struct rpc_procinfo;
+
+struct rpc_message {
+	const struct rpc_procinfo *rpc_proc;
+	void *rpc_argp;
+	void *rpc_resp;
+	const struct cred *rpc_cred;
+};
+
+struct rpc_procinfo {
+	u32 p_proc;
+	kxdreproc_t p_encode;
+	kxdrdproc_t p_decode;
+	unsigned int p_arglen;
+	unsigned int p_replen;
+	unsigned int p_timer;
+	u32 p_statidx;
+	const char *p_name;
+};
+
+struct rpc_wait {
+	struct list_head list;
+	struct list_head links;
+	struct list_head timer_list;
+};
+
+struct rpc_call_ops;
+
+struct rpc_clnt;
+
+struct rpc_task {
+	atomic_t tk_count;
+	int tk_status;
+	struct list_head tk_task;
+	void (*tk_callback)(struct rpc_task *);
+	void (*tk_action)(struct rpc_task *);
+	long unsigned int tk_timeout;
+	long unsigned int tk_runstate;
+	struct rpc_wait_queue *tk_waitqueue;
+	union {
+		struct work_struct tk_work;
+		struct rpc_wait tk_wait;
+	} u;
+	int tk_rpc_status;
+	struct rpc_message tk_msg;
+	void *tk_calldata;
+	const struct rpc_call_ops *tk_ops;
+	struct rpc_clnt *tk_client;
+	struct rpc_xprt *tk_xprt;
+	struct rpc_cred *tk_op_cred;
+	struct rpc_rqst *tk_rqstp;
+	struct workqueue_struct *tk_workqueue;
+	ktime_t tk_start;
+	pid_t tk_owner;
+	short unsigned int tk_flags;
+	short unsigned int tk_timeouts;
+	short unsigned int tk_pid;
+	unsigned char tk_priority: 2;
+	unsigned char tk_garb_retry: 2;
+	unsigned char tk_cred_retry: 2;
+};
+
+struct rpc_call_ops {
+	void (*rpc_call_prepare)(struct rpc_task *, void *);
+	void (*rpc_call_done)(struct rpc_task *, void *);
+	void (*rpc_count_stats)(struct rpc_task *, void *);
+	void (*rpc_release)(void *);
+};
+
+struct rpc_iostats;
+
+struct rpc_pipe_dir_head {
+	struct list_head pdh_entries;
+	struct dentry *pdh_dentry;
+};
+
+struct rpc_rtt {
+	long unsigned int timeo;
+	long unsigned int srtt[5];
+	long unsigned int sdrtt[5];
+	int ntimeouts[5];
+};
+
+struct rpc_timeout {
+	long unsigned int to_initval;
+	long unsigned int to_maxval;
+	long unsigned int to_increment;
+	unsigned int to_retries;
+	unsigned char to_exponential;
+};
+
+struct rpc_sysfs_client;
+
+struct rpc_xprt_switch;
+
+struct rpc_xprt_iter_ops;
+
+struct rpc_xprt_iter {
+	struct rpc_xprt_switch *xpi_xpswitch;
+	struct rpc_xprt *xpi_cursor;
+	const struct rpc_xprt_iter_ops *xpi_ops;
+};
+
+struct rpc_auth;
+
+struct rpc_stat;
+
+struct rpc_program;
+
+struct rpc_clnt {
+	refcount_t cl_count;
+	unsigned int cl_clid;
+	struct list_head cl_clients;
+	struct list_head cl_tasks;
+	spinlock_t cl_lock;
+	struct rpc_xprt *cl_xprt;
+	const struct rpc_procinfo *cl_procinfo;
+	u32 cl_prog;
+	u32 cl_vers;
+	u32 cl_maxproc;
+	struct rpc_auth *cl_auth;
+	struct rpc_stat *cl_stats;
+	struct rpc_iostats *cl_metrics;
+	unsigned int cl_softrtry: 1;
+	unsigned int cl_softerr: 1;
+	unsigned int cl_discrtry: 1;
+	unsigned int cl_noretranstimeo: 1;
+	unsigned int cl_autobind: 1;
+	unsigned int cl_chatty: 1;
+	struct rpc_rtt *cl_rtt;
+	const struct rpc_timeout *cl_timeout;
+	atomic_t cl_swapper;
+	int cl_nodelen;
+	char cl_nodename[65];
+	struct rpc_pipe_dir_head cl_pipedir_objects;
+	struct rpc_clnt *cl_parent;
+	struct rpc_rtt cl_rtt_default;
+	struct rpc_timeout cl_timeout_default;
+	const struct rpc_program *cl_program;
+	const char *cl_principal;
+	struct dentry *cl_debugfs;
+	struct rpc_sysfs_client *cl_sysfs;
+	union {
+		struct rpc_xprt_iter cl_xpi;
+		struct work_struct cl_work;
+	};
+	const struct cred *cl_cred;
+	unsigned int cl_max_connect;
+	struct super_block *pipefs_sb;
+};
+
+struct svc_xprt;
+
+struct rpc_sysfs_xprt;
+
+struct rpc_xprt_ops;
+
+struct svc_serv;
+
+struct xprt_class;
+
+struct rpc_xprt {
+	struct kref kref;
+	const struct rpc_xprt_ops *ops;
+	unsigned int id;
+	const struct rpc_timeout *timeout;
+	struct __kernel_sockaddr_storage addr;
+	size_t addrlen;
+	int prot;
+	long unsigned int cong;
+	long unsigned int cwnd;
+	size_t max_payload;
+	struct rpc_wait_queue binding;
+	struct rpc_wait_queue sending;
+	struct rpc_wait_queue pending;
+	struct rpc_wait_queue backlog;
+	struct list_head free;
+	unsigned int max_reqs;
+	unsigned int min_reqs;
+	unsigned int num_reqs;
+	long unsigned int state;
+	unsigned char resvport: 1;
+	unsigned char reuseport: 1;
+	atomic_t swapper;
+	unsigned int bind_index;
+	struct list_head xprt_switch;
+	long unsigned int bind_timeout;
+	long unsigned int reestablish_timeout;
+	unsigned int connect_cookie;
+	struct work_struct task_cleanup;
+	struct timer_list timer;
+	long unsigned int last_used;
+	long unsigned int idle_timeout;
+	long unsigned int connect_timeout;
+	long unsigned int max_reconnect_timeout;
+	atomic_long_t queuelen;
+	spinlock_t transport_lock;
+	spinlock_t reserve_lock;
+	spinlock_t queue_lock;
+	u32 xid;
+	struct rpc_task *snd_task;
+	struct list_head xmit_queue;
+	atomic_long_t xmit_queuelen;
+	struct svc_xprt *bc_xprt;
+	struct svc_serv *bc_serv;
+	unsigned int bc_alloc_max;
+	unsigned int bc_alloc_count;
+	atomic_t bc_slot_count;
+	spinlock_t bc_pa_lock;
+	struct list_head bc_pa_list;
+	struct rb_root recv_queue;
+	struct {
+		long unsigned int bind_count;
+		long unsigned int connect_count;
+		long unsigned int connect_start;
+		long unsigned int connect_time;
+		long unsigned int sends;
+		long unsigned int recvs;
+		long unsigned int bad_xids;
+		long unsigned int max_slots;
+		long long unsigned int req_u;
+		long long unsigned int bklog_u;
+		long long unsigned int sending_u;
+		long long unsigned int pending_u;
+	} stat;
+	struct net *xprt_net;
+	const char *servername;
+	const char *address_strings[6];
+	struct dentry *debugfs;
+	struct callback_head rcu;
+	const struct xprt_class *xprt_class;
+	struct rpc_sysfs_xprt *xprt_sysfs;
+	bool main;
+};
+
+struct rpc_credops;
+
+struct rpc_cred {
+	struct hlist_node cr_hash;
+	struct list_head cr_lru;
+	struct callback_head cr_rcu;
+	struct rpc_auth *cr_auth;
+	const struct rpc_credops *cr_ops;
+	long unsigned int cr_expire;
+	long unsigned int cr_flags;
+	refcount_t cr_count;
+	const struct cred *cr_cred;
+};
+
+typedef u32 rpc_authflavor_t;
+
+struct auth_cred {
+	const struct cred *cred;
+	const char *principal;
+};
+
+struct rpc_cred_cache;
+
+struct rpc_authops;
+
+struct rpc_auth {
+	unsigned int au_cslack;
+	unsigned int au_rslack;
+	unsigned int au_verfsize;
+	unsigned int au_ralign;
+	long unsigned int au_flags;
+	const struct rpc_authops *au_ops;
+	rpc_authflavor_t au_flavor;
+	refcount_t au_count;
+	struct rpc_cred_cache *au_credcache;
+};
+
+struct rpc_credops {
+	const char *cr_name;
+	int (*cr_init)(struct rpc_auth *, struct rpc_cred *);
+	void (*crdestroy)(struct rpc_cred *);
+	int (*crmatch)(struct auth_cred *, struct rpc_cred *, int);
+	int (*crmarshal)(struct rpc_task *, struct xdr_stream *);
+	int (*crrefresh)(struct rpc_task *);
+	int (*crvalidate)(struct rpc_task *, struct xdr_stream *);
+	int (*crwrap_req)(struct rpc_task *, struct xdr_stream *);
+	int (*crunwrap_resp)(struct rpc_task *, struct xdr_stream *);
+	int (*crkey_timeout)(struct rpc_cred *);
+	char * (*crstringify_acceptor)(struct rpc_cred *);
+	bool (*crneed_reencode)(struct rpc_task *);
+};
+
+struct rpc_auth_create_args;
+
+struct rpcsec_gss_info;
+
+struct rpc_authops {
+	struct module *owner;
+	rpc_authflavor_t au_flavor;
+	char *au_name;
+	struct rpc_auth * (*create)(const struct rpc_auth_create_args *, struct rpc_clnt *);
+	void (*destroy)(struct rpc_auth *);
+	int (*hash_cred)(struct auth_cred *, unsigned int);
+	struct rpc_cred * (*lookup_cred)(struct rpc_auth *, struct auth_cred *, int);
+	struct rpc_cred * (*crcreate)(struct rpc_auth *, struct auth_cred *, int, gfp_t);
+	rpc_authflavor_t (*info2flavor)(struct rpcsec_gss_info *);
+	int (*flavor2info)(rpc_authflavor_t, struct rpcsec_gss_info *);
+	int (*key_timeout)(struct rpc_auth *, struct rpc_cred *);
+};
+
+struct rpc_auth_create_args {
+	rpc_authflavor_t pseudoflavor;
+	const char *target_name;
+};
+
+struct rpcsec_gss_oid {
+	unsigned int len;
+	u8 data[32];
+};
+
+struct rpcsec_gss_info {
+	struct rpcsec_gss_oid oid;
+	u32 qop;
+	u32 service;
+};
+
+struct rpc_xprt_ops {
+	void (*set_buffer_size)(struct rpc_xprt *, size_t, size_t);
+	int (*reserve_xprt)(struct rpc_xprt *, struct rpc_task *);
+	void (*release_xprt)(struct rpc_xprt *, struct rpc_task *);
+	void (*alloc_slot)(struct rpc_xprt *, struct rpc_task *);
+	void (*free_slot)(struct rpc_xprt *, struct rpc_rqst *);
+	void (*rpcbind)(struct rpc_task *);
+	void (*set_port)(struct rpc_xprt *, short unsigned int);
+	void (*connect)(struct rpc_xprt *, struct rpc_task *);
+	int (*buf_alloc)(struct rpc_task *);
+	void (*buf_free)(struct rpc_task *);
+	void (*prepare_request)(struct rpc_rqst *);
+	int (*send_request)(struct rpc_rqst *);
+	void (*wait_for_reply_request)(struct rpc_task *);
+	void (*timer)(struct rpc_xprt *, struct rpc_task *);
+	void (*release_request)(struct rpc_task *);
+	void (*close)(struct rpc_xprt *);
+	void (*destroy)(struct rpc_xprt *);
+	void (*set_connect_timeout)(struct rpc_xprt *, long unsigned int, long unsigned int);
+	void (*print_stats)(struct rpc_xprt *, struct seq_file *);
+	int (*enable_swap)(struct rpc_xprt *);
+	void (*disable_swap)(struct rpc_xprt *);
+	void (*inject_disconnect)(struct rpc_xprt *);
+	int (*bc_setup)(struct rpc_xprt *, unsigned int);
+	size_t (*bc_maxpayload)(struct rpc_xprt *);
+	unsigned int (*bc_num_slots)(struct rpc_xprt *);
+	void (*bc_free_rqst)(struct rpc_rqst *);
+	void (*bc_destroy)(struct rpc_xprt *, unsigned int);
+};
+
+struct svc_program;
+
+struct svc_stat;
+
+struct svc_pool;
+
+struct svc_serv {
+	struct svc_program *sv_program;
+	struct svc_stat *sv_stats;
+	spinlock_t sv_lock;
+	struct kref sv_refcnt;
+	unsigned int sv_nrthreads;
+	unsigned int sv_maxconn;
+	unsigned int sv_max_payload;
+	unsigned int sv_max_mesg;
+	unsigned int sv_xdrsize;
+	struct list_head sv_permsocks;
+	struct list_head sv_tempsocks;
+	int sv_tmpcnt;
+	struct timer_list sv_temptimer;
+	char *sv_name;
+	unsigned int sv_nrpools;
+	struct svc_pool *sv_pools;
+	int (*sv_threadfn)(void *);
+	struct list_head sv_cb_list;
+	spinlock_t sv_cb_lock;
+	wait_queue_head_t sv_cb_waitq;
+	bool sv_bc_enabled;
+};
+
+struct xprt_create;
+
+struct xprt_class {
+	struct list_head list;
+	int ident;
+	struct rpc_xprt * (*setup)(struct xprt_create *);
+	struct module *owner;
+	char name[32];
+	const char *netid[0];
+};
+
+struct xprt_create {
+	int ident;
+	struct net *net;
+	struct sockaddr *srcaddr;
+	struct sockaddr *dstaddr;
+	size_t addrlen;
+	const char *servername;
+	struct svc_xprt *bc_xprt;
+	struct rpc_xprt_switch *bc_xps;
+	unsigned int flags;
+};
+
+struct rpc_sysfs_xprt_switch;
+
+struct rpc_xprt_switch {
+	spinlock_t xps_lock;
+	struct kref xps_kref;
+	unsigned int xps_id;
+	unsigned int xps_nxprts;
+	unsigned int xps_nactive;
+	unsigned int xps_nunique_destaddr_xprts;
+	atomic_long_t xps_queuelen;
+	struct list_head xps_xprt_list;
+	struct net *xps_net;
+	const struct rpc_xprt_iter_ops *xps_iter_ops;
+	struct rpc_sysfs_xprt_switch *xps_sysfs;
+	struct callback_head xps_rcu;
+};
+
+struct rpc_stat {
+	const struct rpc_program *program;
+	unsigned int netcnt;
+	unsigned int netudpcnt;
+	unsigned int nettcpcnt;
+	unsigned int nettcpconn;
+	unsigned int netreconn;
+	unsigned int rpccnt;
+	unsigned int rpcretrans;
+	unsigned int rpcauthrefresh;
+	unsigned int rpcgarbage;
+};
+
+struct rpc_version;
+
+struct rpc_program {
+	const char *name;
+	u32 number;
+	unsigned int nrvers;
+	const struct rpc_version **version;
+	struct rpc_stat *stats;
+	const char *pipe_dir_name;
+};
+
+struct svc_stat {
+	struct svc_program *program;
+	unsigned int netcnt;
+	unsigned int netudpcnt;
+	unsigned int nettcpcnt;
+	unsigned int nettcpconn;
+	unsigned int rpccnt;
+	unsigned int rpcbadfmt;
+	unsigned int rpcbadauth;
+	unsigned int rpcbadclnt;
+};
+
+struct svc_version;
+
+struct svc_rqst;
+
+struct svc_process_info;
+
+struct svc_program {
+	struct svc_program *pg_next;
+	u32 pg_prog;
+	unsigned int pg_lovers;
+	unsigned int pg_hivers;
+	unsigned int pg_nvers;
+	const struct svc_version **pg_vers;
+	char *pg_name;
+	char *pg_class;
+	int (*pg_authenticate)(struct svc_rqst *);
+	__be32 (*pg_init_request)(struct svc_rqst *, const struct svc_program *, struct svc_process_info *);
+	int (*pg_rpcbind_set)(struct net *, const struct svc_program *, u32, int, short unsigned int, short unsigned int);
+};
+
+struct rpc_xprt_iter_ops {
+	void (*xpi_rewind)(struct rpc_xprt_iter *);
+	struct rpc_xprt * (*xpi_xprt)(struct rpc_xprt_iter *);
+	struct rpc_xprt * (*xpi_next)(struct rpc_xprt_iter *);
+};
+
+struct rpc_version {
+	u32 number;
+	unsigned int nrprocs;
+	const struct rpc_procinfo *procs;
+	unsigned int *counts;
+};
+
+struct nfs_fh {
+	short unsigned int size;
+	unsigned char data[128];
+};
+
+enum nfs3_stable_how {
+	NFS_UNSTABLE = 0,
+	NFS_DATA_SYNC = 1,
+	NFS_FILE_SYNC = 2,
+	NFS_INVALID_STABLE_HOW = 4294967295,
+};
+
+struct nfs4_label {
+	uint32_t lfs;
+	uint32_t pi;
+	u32 len;
+	char *label;
+};
+
+typedef struct {
+	char data[8];
+} nfs4_verifier;
+
+enum nfs4_change_attr_type {
+	NFS4_CHANGE_TYPE_IS_MONOTONIC_INCR = 0,
+	NFS4_CHANGE_TYPE_IS_VERSION_COUNTER = 1,
+	NFS4_CHANGE_TYPE_IS_VERSION_COUNTER_NOPNFS = 2,
+	NFS4_CHANGE_TYPE_IS_TIME_METADATA = 3,
+	NFS4_CHANGE_TYPE_IS_UNDEFINED = 4,
+};
+
+struct gss_api_mech;
+
+struct gss_ctx {
+	struct gss_api_mech *mech_type;
+	void *internal_ctx_id;
+	unsigned int slack;
+	unsigned int align;
+};
+
+struct gss_api_ops;
+
+struct pf_desc;
+
+struct gss_api_mech {
+	struct list_head gm_list;
+	struct module *gm_owner;
+	struct rpcsec_gss_oid gm_oid;
+	char *gm_name;
+	const struct gss_api_ops *gm_ops;
+	int gm_pf_num;
+	struct pf_desc *gm_pfs;
+	const char *gm_upcall_enctypes;
+};
+
+struct auth_domain;
+
+struct pf_desc {
+	u32 pseudoflavor;
+	u32 qop;
+	u32 service;
+	char *name;
+	char *auth_domain_name;
+	struct auth_domain *domain;
+	bool datatouch;
+};
+
+struct auth_ops;
+
+struct auth_domain {
+	struct kref ref;
+	struct hlist_node hash;
+	char *name;
+	struct auth_ops *flavour;
+	struct callback_head callback_head;
+};
+
+struct gss_api_ops {
+	int (*gss_import_sec_context)(const void *, size_t, struct gss_ctx *, time64_t *, gfp_t);
+	u32 (*gss_get_mic)(struct gss_ctx *, struct xdr_buf *, struct xdr_netobj *);
+	u32 (*gss_verify_mic)(struct gss_ctx *, struct xdr_buf *, struct xdr_netobj *);
+	u32 (*gss_wrap)(struct gss_ctx *, int, struct xdr_buf *, struct page **);
+	u32 (*gss_unwrap)(struct gss_ctx *, int, int, struct xdr_buf *);
+	void (*gss_delete_sec_context)(void *);
+};
+
+struct nfs4_string {
+	unsigned int len;
+	char *data;
+};
+
+struct nfs_fsid {
+	uint64_t major;
+	uint64_t minor;
+};
+
+struct nfs4_threshold {
+	__u32 bm;
+	__u32 l_type;
+	__u64 rd_sz;
+	__u64 wr_sz;
+	__u64 rd_io_sz;
+	__u64 wr_io_sz;
+};
+
+struct nfs_fattr {
+	unsigned int valid;
+	umode_t mode;
+	__u32 nlink;
+	kuid_t uid;
+	kgid_t gid;
+	dev_t rdev;
+	__u64 size;
+	union {
+		struct {
+			__u32 blocksize;
+			__u32 blocks;
+		} nfs2;
+		struct {
+			__u64 used;
+		} nfs3;
+	} du;
+	struct nfs_fsid fsid;
+	__u64 fileid;
+	__u64 mounted_on_fileid;
+	struct timespec64 atime;
+	struct timespec64 mtime;
+	struct timespec64 ctime;
+	__u64 change_attr;
+	__u64 pre_change_attr;
+	__u64 pre_size;
+	struct timespec64 pre_mtime;
+	struct timespec64 pre_ctime;
+	long unsigned int time_start;
+	long unsigned int gencount;
+	struct nfs4_string *owner_name;
+	struct nfs4_string *group_name;
+	struct nfs4_threshold *mdsthreshold;
+	struct nfs4_label *label;
+};
+
+struct nfs_fsinfo {
+	struct nfs_fattr *fattr;
+	__u32 rtmax;
+	__u32 rtpref;
+	__u32 rtmult;
+	__u32 wtmax;
+	__u32 wtpref;
+	__u32 wtmult;
+	__u32 dtpref;
+	__u64 maxfilesize;
+	struct timespec64 time_delta;
+	__u32 lease_time;
+	__u32 nlayouttypes;
+	__u32 layouttype[8];
+	__u32 blksize;
+	__u32 clone_blksize;
+	enum nfs4_change_attr_type change_attr_type;
+	__u32 xattr_support;
+};
+
+struct nfs_fsstat {
+	struct nfs_fattr *fattr;
+	__u64 tbytes;
+	__u64 fbytes;
+	__u64 abytes;
+	__u64 tfiles;
+	__u64 ffiles;
+	__u64 afiles;
+};
+
+struct nfs_pathconf {
+	struct nfs_fattr *fattr;
+	__u32 max_link;
+	__u32 max_namelen;
+};
+
+struct nfs4_change_info {
+	u32 atomic;
+	u64 before;
+	u64 after;
+};
+
+struct nfs4_slot;
+
+struct nfs4_sequence_args {
+	struct nfs4_slot *sa_slot;
+	u8 sa_cache_this: 1;
+	u8 sa_privileged: 1;
+};
+
+struct nfs4_sequence_res {
+	struct nfs4_slot *sr_slot;
+	long unsigned int sr_timestamp;
+	int sr_status;
+	u32 sr_status_flags;
+	u32 sr_highest_slotid;
+	u32 sr_target_highest_slotid;
+};
+
+struct nfs_open_context;
+
+struct nfs_lock_context {
+	refcount_t count;
+	struct list_head list;
+	struct nfs_open_context *open_context;
+	fl_owner_t lockowner;
+	atomic_t io_count;
+	struct callback_head callback_head;
+};
+
+struct nfs_open_context {
+	struct nfs_lock_context lock_context;
+	fl_owner_t flock_owner;
+	struct dentry *dentry;
+	const struct cred *cred;
+	struct rpc_cred *ll_cred;
+	struct nfs4_state *state;
+	fmode_t mode;
+	long unsigned int flags;
+	int error;
+	struct list_head list;
+	struct nfs4_threshold *mdsthreshold;
+	struct callback_head callback_head;
+};
+
+struct nlm_host;
+
+struct nfs_iostats;
+
+struct nfs_auth_info {
+	unsigned int flavor_len;
+	rpc_authflavor_t flavors[12];
+};
+
+struct nfs_fscache_key;
+
+struct fscache_cookie;
+
+struct pnfs_layoutdriver_type;
+
+struct nfs_client;
+
+struct nfs_server {
+	struct nfs_client *nfs_client;
+	struct list_head client_link;
+	struct list_head master_link;
+	struct rpc_clnt *client;
+	struct rpc_clnt *client_acl;
+	struct nlm_host *nlm_host;
+	struct nfs_iostats *io_stats;
+	atomic_long_t writeback;
+	unsigned int flags;
+	unsigned int fattr_valid;
+	unsigned int caps;
+	unsigned int rsize;
+	unsigned int rpages;
+	unsigned int wsize;
+	unsigned int wpages;
+	unsigned int wtmult;
+	unsigned int dtsize;
+	short unsigned int port;
+	unsigned int bsize;
+	unsigned int gxasize;
+	unsigned int sxasize;
+	unsigned int lxasize;
+	unsigned int acregmin;
+	unsigned int acregmax;
+	unsigned int acdirmin;
+	unsigned int acdirmax;
+	unsigned int namelen;
+	unsigned int options;
+	unsigned int clone_blksize;
+	enum nfs4_change_attr_type change_attr_type;
+	struct nfs_fsid fsid;
+	__u64 maxfilesize;
+	struct timespec64 time_delta;
+	long unsigned int mount_time;
+	struct super_block *super;
+	dev_t s_dev;
+	struct nfs_auth_info auth_info;
+	struct nfs_fscache_key *fscache_key;
+	struct fscache_cookie *fscache;
+	u32 pnfs_blksize;
+	u32 attr_bitmask[3];
+	u32 attr_bitmask_nl[3];
+	u32 exclcreat_bitmask[3];
+	u32 cache_consistency_bitmask[3];
+	u32 acl_bitmask;
+	u32 fh_expire_type;
+	struct pnfs_layoutdriver_type *pnfs_curr_ld;
+	struct rpc_wait_queue roc_rpcwaitq;
+	void *pnfs_ld_data;
+	struct rb_root state_owners;
+	struct ida openowner_id;
+	struct ida lockowner_id;
+	struct list_head state_owners_lru;
+	struct list_head layouts;
+	struct list_head delegations;
+	struct list_head ss_copies;
+	struct list_head ss_src_copies;
+	long unsigned int mig_gen;
+	long unsigned int mig_status;
+	void (*destroy)(struct nfs_server *);
+	atomic_t active;
+	struct __kernel_sockaddr_storage mountd_address;
+	size_t mountd_addrlen;
+	u32 mountd_version;
+	short unsigned int mountd_port;
+	short unsigned int mountd_protocol;
+	struct rpc_wait_queue uoc_rpcwaitq;
+	unsigned int read_hdrsize;
+	const struct cred *cred;
+	bool has_sec_mnt_opts;
+};
+
+struct nfs_subversion;
+
+struct idmap;
+
+struct nfs4_slot_table;
+
+struct nfs4_session;
+
+struct nfs_rpc_ops;
+
+struct nfs4_minor_version_ops;
+
+struct nfs41_server_owner;
+
+struct nfs41_server_scope;
+
+struct nfs41_impl_id;
+
+struct nfs_client {
+	refcount_t cl_count;
+	atomic_t cl_mds_count;
+	int cl_cons_state;
+	long unsigned int cl_res_state;
+	long unsigned int cl_flags;
+	struct __kernel_sockaddr_storage cl_addr;
+	size_t cl_addrlen;
+	char *cl_hostname;
+	char *cl_acceptor;
+	struct list_head cl_share_link;
+	struct list_head cl_superblocks;
+	struct rpc_clnt *cl_rpcclient;
+	const struct nfs_rpc_ops *rpc_ops;
+	int cl_proto;
+	struct nfs_subversion *cl_nfs_mod;
+	u32 cl_minorversion;
+	unsigned int cl_nconnect;
+	unsigned int cl_max_connect;
+	const char *cl_principal;
+	struct list_head cl_ds_clients;
+	u64 cl_clientid;
+	nfs4_verifier cl_confirm;
+	long unsigned int cl_state;
+	spinlock_t cl_lock;
+	long unsigned int cl_lease_time;
+	long unsigned int cl_last_renewal;
+	struct delayed_work cl_renewd;
+	struct rpc_wait_queue cl_rpcwaitq;
+	struct idmap *cl_idmap;
+	const char *cl_owner_id;
+	u32 cl_cb_ident;
+	const struct nfs4_minor_version_ops *cl_mvops;
+	long unsigned int cl_mig_gen;
+	struct nfs4_slot_table *cl_slot_tbl;
+	u32 cl_seqid;
+	u32 cl_exchange_flags;
+	struct nfs4_session *cl_session;
+	bool cl_preserve_clid;
+	struct nfs41_server_owner *cl_serverowner;
+	struct nfs41_server_scope *cl_serverscope;
+	struct nfs41_impl_id *cl_implid;
+	long unsigned int cl_sp4_flags;
+	wait_queue_head_t cl_lock_waitq;
+	char cl_ipaddr[48];
+	struct fscache_cookie *fscache;
+	struct net *cl_net;
+	struct list_head pending_cb_stateids;
+};
+
+struct pnfs_layout_segment;
+
+struct nfs_seqid {
+	struct nfs_seqid_counter *sequence;
+	struct list_head list;
+	struct rpc_task *task;
+};
+
+struct nfs_write_verifier {
+	char data[8];
+};
+
+struct nfs_writeverf {
+	struct nfs_write_verifier verifier;
+	enum nfs3_stable_how committed;
+};
+
+struct nfs_pgio_args {
+	struct nfs4_sequence_args seq_args;
+	struct nfs_fh *fh;
+	struct nfs_open_context *context;
+	struct nfs_lock_context *lock_context;
+	nfs4_stateid stateid;
+	__u64 offset;
+	__u32 count;
+	unsigned int pgbase;
+	struct page **pages;
+	union {
+		unsigned int replen;
+		struct {
+			const u32 *bitmask;
+			u32 bitmask_store[3];
+			enum nfs3_stable_how stable;
+		};
+	};
+};
+
+struct nfs_pgio_res {
+	struct nfs4_sequence_res seq_res;
+	struct nfs_fattr *fattr;
+	__u64 count;
+	__u32 op_status;
+	union {
+		struct {
+			unsigned int replen;
+			int eof;
+		};
+		struct {
+			struct nfs_writeverf *verf;
+			const struct nfs_server *server;
+		};
+	};
+};
+
+struct nfs_commitargs {
+	struct nfs4_sequence_args seq_args;
+	struct nfs_fh *fh;
+	__u64 offset;
+	__u32 count;
+	const u32 *bitmask;
+};
+
+struct nfs_commitres {
+	struct nfs4_sequence_res seq_res;
+	__u32 op_status;
+	struct nfs_fattr *fattr;
+	struct nfs_writeverf *verf;
+	const struct nfs_server *server;
+};
+
+struct nfs_removeargs {
+	struct nfs4_sequence_args seq_args;
+	const struct nfs_fh *fh;
+	struct qstr name;
+};
+
+struct nfs_removeres {
+	struct nfs4_sequence_res seq_res;
+	struct nfs_server *server;
+	struct nfs_fattr *dir_attr;
+	struct nfs4_change_info cinfo;
+};
+
+struct nfs_renameargs {
+	struct nfs4_sequence_args seq_args;
+	const struct nfs_fh *old_dir;
+	const struct nfs_fh *new_dir;
+	const struct qstr *old_name;
+	const struct qstr *new_name;
+};
+
+struct nfs_renameres {
+	struct nfs4_sequence_res seq_res;
+	struct nfs_server *server;
+	struct nfs4_change_info old_cinfo;
+	struct nfs_fattr *old_fattr;
+	struct nfs4_change_info new_cinfo;
+	struct nfs_fattr *new_fattr;
+};
+
+struct nfs_entry {
+	__u64 ino;
+	__u64 cookie;
+	__u64 prev_cookie;
+	const char *name;
+	unsigned int len;
+	int eof;
+	struct nfs_fh *fh;
+	struct nfs_fattr *fattr;
+	struct nfs4_label *label;
+	unsigned char d_type;
+	struct nfs_server *server;
+};
+
+struct nfs_readdir_arg {
+	struct dentry *dentry;
+	const struct cred *cred;
+	__be32 *verf;
+	u64 cookie;
+	struct page **pages;
+	unsigned int page_len;
+	bool plus;
+};
+
+struct nfs_readdir_res {
+	__be32 *verf;
+};
+
+struct nfs4_pathname {
+	unsigned int ncomponents;
+	struct nfs4_string components[512];
+};
+
+struct nfs4_fs_location {
+	unsigned int nservers;
+	struct nfs4_string servers[10];
+	struct nfs4_pathname rootpath;
+};
+
+struct nfs4_fs_locations {
+	struct nfs_fattr *fattr;
+	const struct nfs_server *server;
+	struct nfs4_pathname fs_path;
+	int nlocations;
+	struct nfs4_fs_location locations[10];
+};
+
+struct nfstime4 {
+	u64 seconds;
+	u32 nseconds;
+};
+
+struct pnfs_commit_ops;
+
+struct pnfs_ds_commit_info {
+	struct list_head commits;
+	unsigned int nwritten;
+	unsigned int ncommitting;
+	const struct pnfs_commit_ops *ops;
+};
+
+struct nfs41_server_owner {
+	uint64_t minor_id;
+	uint32_t major_id_sz;
+	char major_id[1024];
+};
+
+struct nfs41_server_scope {
+	uint32_t server_scope_sz;
+	char server_scope[1024];
+};
+
+struct nfs41_impl_id {
+	char domain[1025];
+	char name[1025];
+	struct nfstime4 date;
+};
+
+struct nfs_page_array {
+	struct page **pagevec;
+	unsigned int npages;
+	struct page *page_array[8];
+};
+
+struct nfs_page;
+
+struct nfs_rw_ops;
+
+struct nfs_io_completion;
+
+struct nfs_direct_req;
+
+struct nfs_pgio_completion_ops;
+
+struct nfs_pgio_header {
+	struct inode *inode;
+	const struct cred *cred;
+	struct list_head pages;
+	struct nfs_page *req;
+	struct nfs_writeverf verf;
+	fmode_t rw_mode;
+	struct pnfs_layout_segment *lseg;
+	loff_t io_start;
+	const struct rpc_call_ops *mds_ops;
+	void (*release)(struct nfs_pgio_header *);
+	const struct nfs_pgio_completion_ops *completion_ops;
+	const struct nfs_rw_ops *rw_ops;
+	struct nfs_io_completion *io_completion;
+	struct nfs_direct_req *dreq;
+	int pnfs_error;
+	int error;
+	unsigned int good_bytes;
+	long unsigned int flags;
+	struct rpc_task task;
+	struct nfs_fattr fattr;
+	struct nfs_pgio_args args;
+	struct nfs_pgio_res res;
+	long unsigned int timestamp;
+	int (*pgio_done_cb)(struct rpc_task *, struct nfs_pgio_header *);
+	__u64 mds_offset;
+	struct nfs_page_array page_array;
+	struct nfs_client *ds_clp;
+	u32 ds_commit_idx;
+	u32 pgio_mirror_idx;
+};
+
+struct nfs_pgio_completion_ops {
+	void (*error_cleanup)(struct list_head *, int);
+	void (*init_hdr)(struct nfs_pgio_header *);
+	void (*completion)(struct nfs_pgio_header *);
+	void (*reschedule_io)(struct nfs_pgio_header *);
+};
+
+struct nfs_mds_commit_info {
+	atomic_t rpcs_out;
+	atomic_long_t ncommit;
+	struct list_head list;
+};
+
+struct nfs_commit_data;
+
+struct nfs_commit_info;
+
+struct nfs_commit_completion_ops {
+	void (*completion)(struct nfs_commit_data *);
+	void (*resched_write)(struct nfs_commit_info *, struct nfs_page *);
+};
+
+struct nfs_commit_data {
+	struct rpc_task task;
+	struct inode *inode;
+	const struct cred *cred;
+	struct nfs_fattr fattr;
+	struct nfs_writeverf verf;
+	struct list_head pages;
+	struct list_head list;
+	struct nfs_direct_req *dreq;
+	struct nfs_commitargs args;
+	struct nfs_commitres res;
+	struct nfs_open_context *context;
+	struct pnfs_layout_segment *lseg;
+	struct nfs_client *ds_clp;
+	int ds_commit_index;
+	loff_t lwb;
+	const struct rpc_call_ops *mds_ops;
+	const struct nfs_commit_completion_ops *completion_ops;
+	int (*commit_done_cb)(struct rpc_task *, struct nfs_commit_data *);
+	long unsigned int flags;
+};
+
+struct nfs_commit_info {
+	struct inode *inode;
+	struct nfs_mds_commit_info *mds;
+	struct pnfs_ds_commit_info *ds;
+	struct nfs_direct_req *dreq;
+	const struct nfs_commit_completion_ops *completion_ops;
+};
+
+struct nfs_unlinkdata {
+	struct nfs_removeargs args;
+	struct nfs_removeres res;
+	struct dentry *dentry;
+	wait_queue_head_t wq;
+	const struct cred *cred;
+	struct nfs_fattr dir_attr;
+	long int timeout;
+};
+
+struct nfs_renamedata {
+	struct nfs_renameargs args;
+	struct nfs_renameres res;
+	const struct cred *cred;
+	struct inode *old_dir;
+	struct dentry *old_dentry;
+	struct nfs_fattr old_fattr;
+	struct inode *new_dir;
+	struct dentry *new_dentry;
+	struct nfs_fattr new_fattr;
+	void (*complete)(struct rpc_task *, struct nfs_renamedata *);
+	long int timeout;
+	bool cancelled;
+};
+
+struct nlmclnt_operations;
+
+struct nfs_client_initdata;
+
+struct nfs_access_entry;
+
+struct nfs_rpc_ops {
+	u32 version;
+	const struct dentry_operations *dentry_ops;
+	const struct inode_operations *dir_inode_ops;
+	const struct inode_operations *file_inode_ops;
+	const struct file_operations *file_ops;
+	const struct nlmclnt_operations *nlmclnt_ops;
+	int (*getroot)(struct nfs_server *, struct nfs_fh *, struct nfs_fsinfo *);
+	int (*submount)(struct fs_context *, struct nfs_server *);
+	int (*try_get_tree)(struct fs_context *);
+	int (*getattr)(struct nfs_server *, struct nfs_fh *, struct nfs_fattr *, struct nfs4_label *, struct inode *);
+	int (*setattr)(struct dentry *, struct nfs_fattr *, struct iattr *);
+	int (*lookup)(struct inode *, struct dentry *, struct nfs_fh *, struct nfs_fattr *, struct nfs4_label *);
+	int (*lookupp)(struct inode *, struct nfs_fh *, struct nfs_fattr *, struct nfs4_label *);
+	int (*access)(struct inode *, struct nfs_access_entry *);
+	int (*readlink)(struct inode *, struct page *, unsigned int, unsigned int);
+	int (*create)(struct inode *, struct dentry *, struct iattr *, int);
+	int (*remove)(struct inode *, struct dentry *);
+	void (*unlink_setup)(struct rpc_message *, struct dentry *, struct inode *);
+	void (*unlink_rpc_prepare)(struct rpc_task *, struct nfs_unlinkdata *);
+	int (*unlink_done)(struct rpc_task *, struct inode *);
+	void (*rename_setup)(struct rpc_message *, struct dentry *, struct dentry *);
+	void (*rename_rpc_prepare)(struct rpc_task *, struct nfs_renamedata *);
+	int (*rename_done)(struct rpc_task *, struct inode *, struct inode *);
+	int (*link)(struct inode *, struct inode *, const struct qstr *);
+	int (*symlink)(struct inode *, struct dentry *, struct page *, unsigned int, struct iattr *);
+	int (*mkdir)(struct inode *, struct dentry *, struct iattr *);
+	int (*rmdir)(struct inode *, const struct qstr *);
+	int (*readdir)(struct nfs_readdir_arg *, struct nfs_readdir_res *);
+	int (*mknod)(struct inode *, struct dentry *, struct iattr *, dev_t);
+	int (*statfs)(struct nfs_server *, struct nfs_fh *, struct nfs_fsstat *);
+	int (*fsinfo)(struct nfs_server *, struct nfs_fh *, struct nfs_fsinfo *);
+	int (*pathconf)(struct nfs_server *, struct nfs_fh *, struct nfs_pathconf *);
+	int (*set_capabilities)(struct nfs_server *, struct nfs_fh *);
+	int (*decode_dirent)(struct xdr_stream *, struct nfs_entry *, bool);
+	int (*pgio_rpc_prepare)(struct rpc_task *, struct nfs_pgio_header *);
+	void (*read_setup)(struct nfs_pgio_header *, struct rpc_message *);
+	int (*read_done)(struct rpc_task *, struct nfs_pgio_header *);
+	void (*write_setup)(struct nfs_pgio_header *, struct rpc_message *, struct rpc_clnt **);
+	int (*write_done)(struct rpc_task *, struct nfs_pgio_header *);
+	void (*commit_setup)(struct nfs_commit_data *, struct rpc_message *, struct rpc_clnt **);
+	void (*commit_rpc_prepare)(struct rpc_task *, struct nfs_commit_data *);
+	int (*commit_done)(struct rpc_task *, struct nfs_commit_data *);
+	int (*lock)(struct file *, int, struct file_lock *);
+	int (*lock_check_bounds)(const struct file_lock *);
+	void (*clear_acl_cache)(struct inode *);
+	void (*close_context)(struct nfs_open_context *, int);
+	struct inode * (*open_context)(struct inode *, struct nfs_open_context *, int, struct iattr *, int *);
+	int (*have_delegation)(struct inode *, fmode_t);
+	struct nfs_client * (*alloc_client)(const struct nfs_client_initdata *);
+	struct nfs_client * (*init_client)(struct nfs_client *, const struct nfs_client_initdata *);
+	void (*free_client)(struct nfs_client *);
+	struct nfs_server * (*create_server)(struct fs_context *);
+	struct nfs_server * (*clone_server)(struct nfs_server *, struct nfs_fh *, struct nfs_fattr *, rpc_authflavor_t);
+	int (*discover_trunking)(struct nfs_server *, struct nfs_fh *);
+	void (*enable_swap)(struct inode *);
+	void (*disable_swap)(struct inode *);
+};
+
+struct nfs_access_entry {
+	struct rb_node rb_node;
+	struct list_head lru;
+	const struct cred *cred;
+	u64 timestamp;
+	__u32 mask;
+	struct callback_head callback_head;
+};
+
+struct nfs4_state_recovery_ops;
+
+struct nfs4_state_maintenance_ops;
+
+struct nfs4_mig_recovery_ops;
+
+struct nfs4_minor_version_ops {
+	u32 minor_version;
+	unsigned int init_caps;
+	int (*init_client)(struct nfs_client *);
+	void (*shutdown_client)(struct nfs_client *);
+	bool (*match_stateid)(const nfs4_stateid *, const nfs4_stateid *);
+	int (*find_root_sec)(struct nfs_server *, struct nfs_fh *, struct nfs_fsinfo *);
+	void (*free_lock_state)(struct nfs_server *, struct nfs4_lock_state *);
+	int (*test_and_free_expired)(struct nfs_server *, nfs4_stateid *, const struct cred *);
+	struct nfs_seqid * (*alloc_seqid)(struct nfs_seqid_counter *, gfp_t);
+	void (*session_trunk)(struct rpc_clnt *, struct rpc_xprt *, void *);
+	const struct rpc_call_ops *call_sync_ops;
+	const struct nfs4_state_recovery_ops *reboot_recovery_ops;
+	const struct nfs4_state_recovery_ops *nograce_recovery_ops;
+	const struct nfs4_state_maintenance_ops *state_renewal_ops;
+	const struct nfs4_mig_recovery_ops *mig_recovery_ops;
+};
+
+struct nfs4_state_owner;
+
+struct nfs4_state {
+	struct list_head open_states;
+	struct list_head inode_states;
+	struct list_head lock_states;
+	struct nfs4_state_owner *owner;
+	struct inode *inode;
+	long unsigned int flags;
+	spinlock_t state_lock;
+	seqlock_t seqlock;
+	nfs4_stateid stateid;
+	nfs4_stateid open_stateid;
+	unsigned int n_rdonly;
+	unsigned int n_wronly;
+	unsigned int n_rdwr;
+	fmode_t state;
+	refcount_t count;
+	wait_queue_head_t waitq;
+	struct callback_head callback_head;
+};
+
+struct cache_head {
+	struct hlist_node cache_list;
+	time64_t expiry_time;
+	time64_t last_refresh;
+	struct kref ref;
+	long unsigned int flags;
+};
+
+struct cache_deferred_req;
+
+struct cache_req {
+	struct cache_deferred_req * (*defer)(struct cache_req *);
+	int thread_wait;
+};
+
+struct cache_deferred_req {
+	struct hlist_node hash;
+	struct list_head recent;
+	struct cache_head *item;
+	void *owner;
+	void (*revisit)(struct cache_deferred_req *, int);
+};
+
+struct svc_cred {
+	kuid_t cr_uid;
+	kgid_t cr_gid;
+	struct group_info *cr_group_info;
+	u32 cr_flavor;
+	char *cr_raw_principal;
+	char *cr_principal;
+	char *cr_targ_princ;
+	struct gss_api_mech *cr_gss_mech;
+};
+
+struct auth_ops {
+	char *name;
+	struct module *owner;
+	int flavour;
+	int (*accept)(struct svc_rqst *);
+	int (*release)(struct svc_rqst *);
+	void (*domain_release)(struct auth_domain *);
+	int (*set_client)(struct svc_rqst *);
+};
+
+struct svc_cacherep;
+
+struct svc_procedure;
+
+struct svc_deferred_req;
+
+struct svc_rqst {
+	struct list_head rq_all;
+	struct callback_head rq_rcu_head;
+	struct svc_xprt *rq_xprt;
+	struct __kernel_sockaddr_storage rq_addr;
+	size_t rq_addrlen;
+	struct __kernel_sockaddr_storage rq_daddr;
+	size_t rq_daddrlen;
+	struct svc_serv *rq_server;
+	struct svc_pool *rq_pool;
+	const struct svc_procedure *rq_procinfo;
+	struct auth_ops *rq_authop;
+	struct svc_cred rq_cred;
+	void *rq_xprt_ctxt;
+	struct svc_deferred_req *rq_deferred;
+	struct xdr_buf rq_arg;
+	struct xdr_stream rq_arg_stream;
+	struct xdr_stream rq_res_stream;
+	struct page *rq_scratch_page;
+	struct xdr_buf rq_res;
+	struct page *rq_pages[260];
+	struct page **rq_respages;
+	struct page **rq_next_page;
+	struct page **rq_page_end;
+	struct pagevec rq_pvec;
+	struct kvec rq_vec[259];
+	struct bio_vec rq_bvec[259];
+	__be32 rq_xid;
+	u32 rq_prog;
+	u32 rq_vers;
+	u32 rq_proc;
+	u32 rq_prot;
+	int rq_cachetype;
+	long unsigned int rq_flags;
+	ktime_t rq_qtime;
+	void *rq_argp;
+	void *rq_resp;
+	void *rq_auth_data;
+	__be32 rq_auth_stat;
+	int rq_auth_slack;
+	int rq_reserved;
+	ktime_t rq_stime;
+	struct cache_req rq_chandle;
+	struct auth_domain *rq_client;
+	struct auth_domain *rq_gssclient;
+	struct svc_cacherep *rq_cacherep;
+	struct task_struct *rq_task;
+	spinlock_t rq_lock;
+	struct net *rq_bc_net;
+	void **rq_lease_breaker;
+};
+
+struct svc_pool_stats {
+	atomic_long_t packets;
+	long unsigned int sockets_queued;
+	atomic_long_t threads_woken;
+	atomic_long_t threads_timedout;
+};
+
+struct svc_pool {
+	unsigned int sp_id;
+	spinlock_t sp_lock;
+	struct list_head sp_sockets;
+	unsigned int sp_nrthreads;
+	struct list_head sp_all_threads;
+	struct svc_pool_stats sp_stats;
+	long unsigned int sp_flags;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct svc_procedure {
+	__be32 (*pc_func)(struct svc_rqst *);
+	bool (*pc_decode)(struct svc_rqst *, struct xdr_stream *);
+	bool (*pc_encode)(struct svc_rqst *, struct xdr_stream *);
+	void (*pc_release)(struct svc_rqst *);
+	unsigned int pc_argsize;
+	unsigned int pc_argzero;
+	unsigned int pc_ressize;
+	unsigned int pc_cachetype;
+	unsigned int pc_xdrressize;
+	const char *pc_name;
+};
+
+struct svc_deferred_req {
+	u32 prot;
+	struct svc_xprt *xprt;
+	struct __kernel_sockaddr_storage addr;
+	size_t addrlen;
+	struct __kernel_sockaddr_storage daddr;
+	size_t daddrlen;
+	void *xprt_ctxt;
+	struct cache_deferred_req handle;
+	int argslen;
+	__be32 args[0];
+};
+
+struct svc_process_info {
+	union {
+		int (*dispatch)(struct svc_rqst *, __be32 *);
+		struct {
+			unsigned int lovers;
+			unsigned int hivers;
+		} mismatch;
+	};
+};
+
+struct svc_version {
+	u32 vs_vers;
+	u32 vs_nproc;
+	const struct svc_procedure *vs_proc;
+	unsigned int *vs_count;
+	u32 vs_xdrsize;
+	bool vs_hidden;
+	bool vs_rpcb_optnl;
+	bool vs_need_cong_ctrl;
+	int (*vs_dispatch)(struct svc_rqst *, __be32 *);
+};
+
+struct nfs4_ssc_client_ops;
+
+struct nfs_ssc_client_ops;
+
+struct nfs_ssc_client_ops_tbl {
+	const struct nfs4_ssc_client_ops *ssc_nfs4_ops;
+	const struct nfs_ssc_client_ops *ssc_nfs_ops;
+};
+
+struct nfs4_ssc_client_ops {
+	struct file * (*sco_open)(struct vfsmount *, struct nfs_fh *, nfs4_stateid *);
+	void (*sco_close)(struct file *);
+};
+
+struct nfs_ssc_client_ops {
+	void (*sco_sb_deactive)(struct super_block *);
+};
+
+struct nfs4_state_recovery_ops {
+	int owner_flag_bit;
+	int state_flag_bit;
+	int (*recover_open)(struct nfs4_state_owner *, struct nfs4_state *);
+	int (*recover_lock)(struct nfs4_state *, struct file_lock *);
+	int (*establish_clid)(struct nfs_client *, const struct cred *);
+	int (*reclaim_complete)(struct nfs_client *, const struct cred *);
+	int (*detect_trunking)(struct nfs_client *, struct nfs_client **, const struct cred *);
+};
+
+struct nfs4_state_maintenance_ops {
+	int (*sched_state_renewal)(struct nfs_client *, const struct cred *, unsigned int);
+	const struct cred * (*get_state_renewal_cred)(struct nfs_client *);
+	int (*renew_lease)(struct nfs_client *, const struct cred *);
+};
+
+struct nfs4_mig_recovery_ops {
+	int (*get_locations)(struct nfs_server *, struct nfs_fh *, struct nfs4_fs_locations *, struct page *, const struct cred *);
+	int (*fsid_present)(struct inode *, const struct cred *);
+};
+
+struct nfs4_state_owner {
+	struct nfs_server *so_server;
+	struct list_head so_lru;
+	long unsigned int so_expires;
+	struct rb_node so_server_node;
+	const struct cred *so_cred;
+	spinlock_t so_lock;
+	atomic_t so_count;
+	long unsigned int so_flags;
+	struct list_head so_states;
+	struct nfs_seqid_counter so_seqid;
+	seqcount_spinlock_t so_reclaim_seqcount;
+	struct mutex so_delegreturn_mutex;
+};
+
 struct core_name {
 	char *corename;
 	int used;
@@ -48442,8 +54406,8 @@ struct trace_event_raw_iomap_range_class {
 	dev_t dev;
 	u64 ino;
 	loff_t size;
-	long unsigned int offset;
-	unsigned int length;
+	loff_t offset;
+	u64 length;
 	char __data[0];
 };
 
@@ -48460,15 +54424,14 @@ struct trace_event_raw_iomap_class {
 	char __data[0];
 };
 
-struct trace_event_raw_iomap_apply {
+struct trace_event_raw_iomap_iter {
 	struct trace_entry ent;
 	dev_t dev;
 	u64 ino;
 	loff_t pos;
-	loff_t length;
+	u64 length;
 	unsigned int flags;
 	const void *ops;
-	void *actor;
 	long unsigned int caller;
 	char __data[0];
 };
@@ -48479,27 +54442,31 @@ struct trace_event_data_offsets_iomap_range_class {};
 
 struct trace_event_data_offsets_iomap_class {};
 
-struct trace_event_data_offsets_iomap_apply {};
+struct trace_event_data_offsets_iomap_iter {};
 
 typedef void (*btf_trace_iomap_readpage)(void *, struct inode *, int);
 
 typedef void (*btf_trace_iomap_readahead)(void *, struct inode *, int);
 
-typedef void (*btf_trace_iomap_writepage)(void *, struct inode *, long unsigned int, unsigned int);
+typedef void (*btf_trace_iomap_writepage)(void *, struct inode *, loff_t, u64);
 
-typedef void (*btf_trace_iomap_releasepage)(void *, struct inode *, long unsigned int, unsigned int);
+typedef void (*btf_trace_iomap_releasepage)(void *, struct inode *, loff_t, u64);
 
-typedef void (*btf_trace_iomap_invalidatepage)(void *, struct inode *, long unsigned int, unsigned int);
+typedef void (*btf_trace_iomap_invalidatepage)(void *, struct inode *, loff_t, u64);
 
-typedef void (*btf_trace_iomap_dio_invalidate_fail)(void *, struct inode *, long unsigned int, unsigned int);
+typedef void (*btf_trace_iomap_dio_invalidate_fail)(void *, struct inode *, loff_t, u64);
 
-typedef void (*btf_trace_iomap_apply_dstmap)(void *, struct inode *, struct iomap *);
+typedef void (*btf_trace_iomap_iter_dstmap)(void *, struct inode *, struct iomap *);
 
-typedef void (*btf_trace_iomap_apply_srcmap)(void *, struct inode *, struct iomap *);
+typedef void (*btf_trace_iomap_iter_srcmap)(void *, struct inode *, struct iomap *);
 
-typedef void (*btf_trace_iomap_apply)(void *, struct inode *, loff_t, loff_t, unsigned int, const void *, void *, long unsigned int);
+typedef void (*btf_trace_iomap_iter)(void *, struct iomap_iter *, const void *, long unsigned int);
 
-typedef loff_t (*iomap_actor_t)(struct inode *, loff_t, loff_t, void *, struct iomap *, struct iomap *);
+enum {
+	BIOSET_NEED_BVECS = 1,
+	BIOSET_NEED_RESCUER = 2,
+	BIOSET_PERCPU_CACHE = 4,
+};
 
 struct iomap_ioend {
 	struct list_head io_list;
@@ -48508,7 +54475,6 @@ struct iomap_ioend {
 	struct inode *io_inode;
 	size_t io_size;
 	loff_t io_offset;
-	void *io_private;
 	struct bio *io_bio;
 	struct bio io_inline_bio;
 };
@@ -48527,6 +54493,8 @@ struct iomap_writepage_ctx {
 	const struct iomap_writeback_ops *ops;
 };
 
+typedef int (*list_cmp_func_t)(void *, const struct list_head *, const struct list_head *);
+
 struct iomap_page {
 	atomic_t read_bytes_pending;
 	atomic_t write_bytes_pending;
@@ -48541,13 +54509,9 @@ struct iomap_readpage_ctx {
 	struct readahead_control *rac;
 };
 
-enum {
-	IOMAP_WRITE_F_UNSHARE = 1,
-};
-
 struct iomap_dio_ops {
 	int (*end_io)(struct kiocb *, ssize_t, int, unsigned int);
-	blk_qc_t (*submit_io)(struct inode *, struct iomap *, struct bio *, loff_t);
+	blk_qc_t (*submit_io)(const struct iomap_iter *, struct bio *, loff_t);
 };
 
 struct iomap_dio {
@@ -48558,6 +54522,7 @@ struct iomap_dio {
 	atomic_t ref;
 	unsigned int flags;
 	int error;
+	size_t done_before;
 	bool wait_for_completion;
 	union {
 		struct {
@@ -48572,11 +54537,6 @@ struct iomap_dio {
 	};
 };
 
-struct fiemap_ctx {
-	struct fiemap_extent_info *fi;
-	struct iomap prev;
-};
-
 struct iomap_swapfile_info {
 	struct iomap iomap;
 	struct swap_info_struct *sis;
@@ -48584,6 +54544,7 @@ struct iomap_swapfile_info {
 	uint64_t highest_ppage;
 	long unsigned int nr_pages;
 	int nr_extents;
+	struct file *file;
 };
 
 enum {
@@ -48694,7 +54655,10 @@ struct fs_quota_statv {
 	__s32 qs_rtbtimelimit;
 	__u16 qs_bwarnlimit;
 	__u16 qs_iwarnlimit;
-	__u64 qs_pad2[8];
+	__u16 qs_rtbwarnlimit;
+	__u16 qs_pad3;
+	__u32 qs_pad4;
+	__u64 qs_pad2[7];
 };
 
 struct if_dqblk {
@@ -48890,6 +54854,12 @@ struct syscall_info {
 
 typedef struct dentry *instantiate_t(struct dentry *, struct task_struct *, const void *);
 
+enum proc_mem_force {
+	PROC_MEM_FORCE_ALWAYS = 0,
+	PROC_MEM_FORCE_PTRACE = 1,
+	PROC_MEM_FORCE_NEVER = 2,
+};
+
 struct pid_entry {
 	const char *name;
 	unsigned int len;
@@ -48937,8 +54907,6 @@ struct seq_net_private {
 	struct net *net;
 };
 
-struct bpf_iter_aux_info;
-
 struct vmcore {
 	struct list_head list;
 	long long unsigned int paddr;
@@ -48946,8 +54914,34 @@ struct vmcore {
 	loff_t offset;
 };
 
+struct vmcoredd_node {
+	struct list_head list;
+	void *buf;
+	unsigned int size;
+};
+
+typedef struct elf32_hdr Elf32_Ehdr;
+
+typedef struct elf32_phdr Elf32_Phdr;
+
+typedef struct elf32_note Elf32_Nhdr;
+
 typedef struct elf64_note Elf64_Nhdr;
 
+struct vmcoredd_header {
+	__u32 n_namesz;
+	__u32 n_descsz;
+	__u32 n_type;
+	__u8 name[8];
+	__u8 dump_name[44];
+};
+
+struct vmcoredd_data {
+	char dump_name[44];
+	unsigned int size;
+	int (*vmcoredd_callback)(struct vmcoredd_data *, void *);
+};
+
 struct kernfs_iattrs {
 	kuid_t ia_uid;
 	kgid_t ia_gid;
@@ -48985,6 +54979,122 @@ struct kernfs_open_node {
 	struct list_head files;
 };
 
+struct config_group;
+
+struct config_item_type;
+
+struct config_item {
+	char *ci_name;
+	char ci_namebuf[20];
+	struct kref ci_kref;
+	struct list_head ci_entry;
+	struct config_item *ci_parent;
+	struct config_group *ci_group;
+	const struct config_item_type *ci_type;
+	struct dentry *ci_dentry;
+};
+
+struct configfs_subsystem;
+
+struct config_group {
+	struct config_item cg_item;
+	struct list_head cg_children;
+	struct configfs_subsystem *cg_subsys;
+	struct list_head default_groups;
+	struct list_head group_entry;
+};
+
+struct configfs_item_operations;
+
+struct configfs_group_operations;
+
+struct configfs_attribute;
+
+struct configfs_bin_attribute;
+
+struct config_item_type {
+	struct module *ct_owner;
+	struct configfs_item_operations *ct_item_ops;
+	struct configfs_group_operations *ct_group_ops;
+	struct configfs_attribute **ct_attrs;
+	struct configfs_bin_attribute **ct_bin_attrs;
+};
+
+struct configfs_item_operations {
+	void (*release)(struct config_item *);
+	int (*allow_link)(struct config_item *, struct config_item *);
+	void (*drop_link)(struct config_item *, struct config_item *);
+};
+
+struct configfs_group_operations {
+	struct config_item * (*make_item)(struct config_group *, const char *);
+	struct config_group * (*make_group)(struct config_group *, const char *);
+	int (*commit_item)(struct config_item *);
+	void (*disconnect_notify)(struct config_group *, struct config_item *);
+	void (*drop_item)(struct config_group *, struct config_item *);
+};
+
+struct configfs_attribute {
+	const char *ca_name;
+	struct module *ca_owner;
+	umode_t ca_mode;
+	ssize_t (*show)(struct config_item *, char *);
+	ssize_t (*store)(struct config_item *, const char *, size_t);
+};
+
+struct configfs_bin_attribute {
+	struct configfs_attribute cb_attr;
+	void *cb_private;
+	size_t cb_max_size;
+	ssize_t (*read)(struct config_item *, void *, size_t);
+	ssize_t (*write)(struct config_item *, const void *, size_t);
+};
+
+struct configfs_subsystem {
+	struct config_group su_group;
+	struct mutex su_mutex;
+};
+
+struct configfs_fragment {
+	atomic_t frag_count;
+	struct rw_semaphore frag_sem;
+	bool frag_dead;
+};
+
+struct configfs_dirent {
+	atomic_t s_count;
+	int s_dependent_count;
+	struct list_head s_sibling;
+	struct list_head s_children;
+	int s_links;
+	void *s_element;
+	int s_type;
+	umode_t s_mode;
+	struct dentry *s_dentry;
+	struct iattr *s_iattr;
+	struct configfs_fragment *s_frag;
+};
+
+struct configfs_buffer {
+	size_t count;
+	loff_t pos;
+	char *page;
+	struct configfs_item_operations *ops;
+	struct mutex mutex;
+	int needs_read_fill;
+	bool read_in_progress;
+	bool write_in_progress;
+	char *bin_buffer;
+	int bin_buffer_size;
+	int cb_max_size;
+	struct config_item *item;
+	struct module *owner;
+	union {
+		struct configfs_attribute *attr;
+		struct configfs_bin_attribute *bin_attr;
+	};
+};
+
 struct pts_mount_opts {
 	int setuid;
 	int setgid;
@@ -49013,13 +55123,3953 @@ struct pts_fs_info {
 	struct dentry *ptmx_dentry;
 };
 
-struct dcookie_struct {
-	struct path path;
-	struct list_head hash_list;
+typedef unsigned int tid_t;
+
+struct transaction_chp_stats_s {
+	long unsigned int cs_chp_time;
+	__u32 cs_forced_to_close;
+	__u32 cs_written;
+	__u32 cs_dropped;
 };
 
-struct dcookie_user {
-	struct list_head next;
+struct journal_s;
+
+typedef struct journal_s journal_t;
+
+struct journal_head;
+
+struct transaction_s;
+
+typedef struct transaction_s transaction_t;
+
+struct transaction_s {
+	journal_t *t_journal;
+	tid_t t_tid;
+	enum {
+		T_RUNNING = 0,
+		T_LOCKED = 1,
+		T_SWITCH = 2,
+		T_FLUSH = 3,
+		T_COMMIT = 4,
+		T_COMMIT_DFLUSH = 5,
+		T_COMMIT_JFLUSH = 6,
+		T_COMMIT_CALLBACK = 7,
+		T_FINISHED = 8,
+	} t_state;
+	long unsigned int t_log_start;
+	int t_nr_buffers;
+	struct journal_head *t_reserved_list;
+	struct journal_head *t_buffers;
+	struct journal_head *t_forget;
+	struct journal_head *t_checkpoint_list;
+	struct journal_head *t_shadow_list;
+	struct list_head t_inode_list;
+	spinlock_t t_handle_lock;
+	long unsigned int t_max_wait;
+	long unsigned int t_start;
+	long unsigned int t_requested;
+	struct transaction_chp_stats_s t_chp_stats;
+	atomic_t t_updates;
+	atomic_t t_outstanding_credits;
+	atomic_t t_outstanding_revokes;
+	atomic_t t_handle_count;
+	transaction_t *t_cpnext;
+	transaction_t *t_cpprev;
+	long unsigned int t_expires;
+	ktime_t t_start_time;
+	unsigned int t_synchronous_commit: 1;
+	int t_need_data_flush;
+	struct list_head t_private_list;
+};
+
+struct jbd2_buffer_trigger_type;
+
+struct journal_head {
+	struct buffer_head *b_bh;
+	spinlock_t b_state_lock;
+	int b_jcount;
+	unsigned int b_jlist;
+	unsigned int b_modified;
+	char *b_frozen_data;
+	char *b_committed_data;
+	transaction_t *b_transaction;
+	transaction_t *b_next_transaction;
+	struct journal_head *b_tnext;
+	struct journal_head *b_tprev;
+	transaction_t *b_cp_transaction;
+	struct journal_head *b_cpnext;
+	struct journal_head *b_cpprev;
+	struct jbd2_buffer_trigger_type *b_triggers;
+	struct jbd2_buffer_trigger_type *b_frozen_triggers;
+};
+
+struct jbd2_buffer_trigger_type {
+	void (*t_frozen)(struct jbd2_buffer_trigger_type *, struct buffer_head *, void *, size_t);
+	void (*t_abort)(struct jbd2_buffer_trigger_type *, struct buffer_head *);
+};
+
+struct jbd2_journal_handle;
+
+typedef struct jbd2_journal_handle handle_t;
+
+struct jbd2_journal_handle {
+	union {
+		transaction_t *h_transaction;
+		journal_t *h_journal;
+	};
+	handle_t *h_rsv_handle;
+	int h_total_credits;
+	int h_revoke_credits;
+	int h_revoke_credits_requested;
+	int h_ref;
+	int h_err;
+	unsigned int h_sync: 1;
+	unsigned int h_jdata: 1;
+	unsigned int h_reserved: 1;
+	unsigned int h_aborted: 1;
+	unsigned int h_type: 8;
+	unsigned int h_line_no: 16;
+	long unsigned int h_start_jiffies;
+	unsigned int h_requested_credits;
+	unsigned int saved_alloc_context;
+};
+
+struct transaction_run_stats_s {
+	long unsigned int rs_wait;
+	long unsigned int rs_request_delay;
+	long unsigned int rs_running;
+	long unsigned int rs_locked;
+	long unsigned int rs_flushing;
+	long unsigned int rs_logging;
+	__u32 rs_handle_count;
+	__u32 rs_blocks;
+	__u32 rs_blocks_logged;
+};
+
+struct transaction_stats_s {
+	long unsigned int ts_tid;
+	long unsigned int ts_requested;
+	struct transaction_run_stats_s run;
+};
+
+enum passtype {
+	PASS_SCAN = 0,
+	PASS_REVOKE = 1,
+	PASS_REPLAY = 2,
+};
+
+struct journal_superblock_s;
+
+typedef struct journal_superblock_s journal_superblock_t;
+
+struct jbd2_revoke_table_s;
+
+struct jbd2_inode;
+
+struct journal_s {
+	long unsigned int j_flags;
+	long unsigned int j_atomic_flags;
+	int j_errno;
+	struct mutex j_abort_mutex;
+	struct buffer_head *j_sb_buffer;
+	journal_superblock_t *j_superblock;
+	int j_format_version;
+	rwlock_t j_state_lock;
+	int j_barrier_count;
+	struct mutex j_barrier;
+	transaction_t *j_running_transaction;
+	transaction_t *j_committing_transaction;
+	transaction_t *j_checkpoint_transactions;
+	wait_queue_head_t j_wait_transaction_locked;
+	wait_queue_head_t j_wait_done_commit;
+	wait_queue_head_t j_wait_commit;
+	wait_queue_head_t j_wait_updates;
+	wait_queue_head_t j_wait_reserved;
+	wait_queue_head_t j_fc_wait;
+	struct mutex j_checkpoint_mutex;
+	struct buffer_head *j_chkpt_bhs[64];
+	struct shrinker j_shrinker;
+	struct percpu_counter j_checkpoint_jh_count;
+	transaction_t *j_shrink_transaction;
+	long unsigned int j_head;
+	long unsigned int j_tail;
+	long unsigned int j_free;
+	long unsigned int j_first;
+	long unsigned int j_last;
+	long unsigned int j_fc_first;
+	long unsigned int j_fc_off;
+	long unsigned int j_fc_last;
+	struct block_device *j_dev;
+	int j_blocksize;
+	long long unsigned int j_blk_offset;
+	char j_devname[56];
+	struct block_device *j_fs_dev;
+	unsigned int j_total_len;
+	atomic_t j_reserved_credits;
+	spinlock_t j_list_lock;
+	struct inode *j_inode;
+	tid_t j_tail_sequence;
+	tid_t j_transaction_sequence;
+	tid_t j_commit_sequence;
+	tid_t j_commit_request;
+	__u8 j_uuid[16];
+	struct task_struct *j_task;
+	int j_max_transaction_buffers;
+	int j_revoke_records_per_block;
+	long unsigned int j_commit_interval;
+	struct timer_list j_commit_timer;
+	spinlock_t j_revoke_lock;
+	struct jbd2_revoke_table_s *j_revoke;
+	struct jbd2_revoke_table_s *j_revoke_table[2];
+	struct buffer_head **j_wbuf;
+	struct buffer_head **j_fc_wbuf;
+	int j_wbufsize;
+	int j_fc_wbufsize;
+	pid_t j_last_sync_writer;
+	u64 j_average_commit_time;
+	u32 j_min_batch_time;
+	u32 j_max_batch_time;
+	void (*j_commit_callback)(journal_t *, transaction_t *);
+	int (*j_submit_inode_data_buffers)(struct jbd2_inode *);
+	int (*j_finish_inode_data_buffers)(struct jbd2_inode *);
+	spinlock_t j_history_lock;
+	struct proc_dir_entry *j_proc_entry;
+	struct transaction_stats_s j_stats;
+	unsigned int j_failed_commit;
+	void *j_private;
+	struct crypto_shash *j_chksum_driver;
+	__u32 j_csum_seed;
+	void (*j_fc_cleanup_callback)(struct journal_s *, int, tid_t);
+	int (*j_fc_replay_callback)(struct journal_s *, struct buffer_head *, enum passtype, int, tid_t);
+};
+
+struct journal_header_s {
+	__be32 h_magic;
+	__be32 h_blocktype;
+	__be32 h_sequence;
+};
+
+typedef struct journal_header_s journal_header_t;
+
+struct journal_superblock_s {
+	journal_header_t s_header;
+	__be32 s_blocksize;
+	__be32 s_maxlen;
+	__be32 s_first;
+	__be32 s_sequence;
+	__be32 s_start;
+	__be32 s_errno;
+	__be32 s_feature_compat;
+	__be32 s_feature_incompat;
+	__be32 s_feature_ro_compat;
+	__u8 s_uuid[16];
+	__be32 s_nr_users;
+	__be32 s_dynsuper;
+	__be32 s_max_transaction;
+	__be32 s_max_trans_data;
+	__u8 s_checksum_type;
+	__u8 s_padding2[3];
+	__be32 s_num_fc_blks;
+	__u32 s_padding[41];
+	__be32 s_checksum;
+	__u8 s_users[768];
+};
+
+enum jbd_state_bits {
+	BH_JBD = 16,
+	BH_JWrite = 17,
+	BH_Freed = 18,
+	BH_Revoked = 19,
+	BH_RevokeValid = 20,
+	BH_JBDDirty = 21,
+	BH_JournalHead = 22,
+	BH_Shadow = 23,
+	BH_Verified = 24,
+	BH_JBDPrivateStart = 25,
+};
+
+struct jbd2_inode {
+	transaction_t *i_transaction;
+	transaction_t *i_next_transaction;
+	struct list_head i_list;
+	struct inode *i_vfs_inode;
+	long unsigned int i_flags;
+	loff_t i_dirty_start;
+	loff_t i_dirty_end;
+};
+
+struct bgl_lock {
+	spinlock_t lock;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct blockgroup_lock {
+	struct bgl_lock locks[128];
+};
+
+typedef int ext4_grpblk_t;
+
+typedef long long unsigned int ext4_fsblk_t;
+
+typedef __u32 ext4_lblk_t;
+
+typedef unsigned int ext4_group_t;
+
+struct ext4_allocation_request {
+	struct inode *inode;
+	unsigned int len;
+	ext4_lblk_t logical;
+	ext4_lblk_t lleft;
+	ext4_lblk_t lright;
+	ext4_fsblk_t goal;
+	ext4_fsblk_t pleft;
+	ext4_fsblk_t pright;
+	unsigned int flags;
+};
+
+struct ext4_system_blocks {
+	struct rb_root root;
+	struct callback_head rcu;
+};
+
+struct ext4_group_desc {
+	__le32 bg_block_bitmap_lo;
+	__le32 bg_inode_bitmap_lo;
+	__le32 bg_inode_table_lo;
+	__le16 bg_free_blocks_count_lo;
+	__le16 bg_free_inodes_count_lo;
+	__le16 bg_used_dirs_count_lo;
+	__le16 bg_flags;
+	__le32 bg_exclude_bitmap_lo;
+	__le16 bg_block_bitmap_csum_lo;
+	__le16 bg_inode_bitmap_csum_lo;
+	__le16 bg_itable_unused_lo;
+	__le16 bg_checksum;
+	__le32 bg_block_bitmap_hi;
+	__le32 bg_inode_bitmap_hi;
+	__le32 bg_inode_table_hi;
+	__le16 bg_free_blocks_count_hi;
+	__le16 bg_free_inodes_count_hi;
+	__le16 bg_used_dirs_count_hi;
+	__le16 bg_itable_unused_hi;
+	__le32 bg_exclude_bitmap_hi;
+	__le16 bg_block_bitmap_csum_hi;
+	__le16 bg_inode_bitmap_csum_hi;
+	__u32 bg_reserved;
+};
+
+struct flex_groups {
+	atomic64_t free_clusters;
+	atomic_t free_inodes;
+	atomic_t used_dirs;
+};
+
+struct extent_status {
+	struct rb_node rb_node;
+	ext4_lblk_t es_lblk;
+	ext4_lblk_t es_len;
+	ext4_fsblk_t es_pblk;
+};
+
+struct ext4_es_tree {
+	struct rb_root root;
+	struct extent_status *cache_es;
+};
+
+struct ext4_es_stats {
+	long unsigned int es_stats_shrunk;
+	struct percpu_counter es_stats_cache_hits;
+	struct percpu_counter es_stats_cache_misses;
+	u64 es_stats_scan_time;
+	u64 es_stats_max_scan_time;
+	struct percpu_counter es_stats_all_cnt;
+	struct percpu_counter es_stats_shk_cnt;
+};
+
+struct ext4_pending_tree {
+	struct rb_root root;
+};
+
+struct ext4_fc_stats {
+	unsigned int fc_ineligible_reason_count[10];
+	long unsigned int fc_num_commits;
+	long unsigned int fc_ineligible_commits;
+	long unsigned int fc_failed_commits;
+	long unsigned int fc_skipped_commits;
+	long unsigned int fc_numblks;
+	u64 s_fc_avg_commit_time;
+};
+
+struct ext4_fc_alloc_region {
+	ext4_lblk_t lblk;
+	ext4_fsblk_t pblk;
+	int ino;
+	int len;
+};
+
+struct ext4_fc_replay_state {
+	int fc_replay_num_tags;
+	int fc_replay_expected_off;
+	int fc_current_pass;
+	int fc_cur_tag;
+	int fc_crc;
+	struct ext4_fc_alloc_region *fc_regions;
+	int fc_regions_size;
+	int fc_regions_used;
+	int fc_regions_valid;
+	int *fc_modified_inodes;
+	int fc_modified_inodes_used;
+	int fc_modified_inodes_size;
+};
+
+struct ext4_inode_info {
+	__le32 i_data[15];
+	__u32 i_dtime;
+	ext4_fsblk_t i_file_acl;
+	ext4_group_t i_block_group;
+	ext4_lblk_t i_dir_start_lookup;
+	long unsigned int i_flags;
+	struct rw_semaphore xattr_sem;
+	union {
+		struct list_head i_orphan;
+		unsigned int i_orphan_idx;
+	};
+	struct list_head i_fc_list;
+	ext4_lblk_t i_fc_lblk_start;
+	ext4_lblk_t i_fc_lblk_len;
+	atomic_t i_fc_updates;
+	wait_queue_head_t i_fc_wait;
+	struct mutex i_fc_lock;
+	loff_t i_disksize;
+	struct rw_semaphore i_data_sem;
+	struct inode vfs_inode;
+	struct jbd2_inode *jinode;
+	spinlock_t i_raw_lock;
+	struct timespec64 i_crtime;
+	atomic_t i_prealloc_active;
+	struct list_head i_prealloc_list;
+	spinlock_t i_prealloc_lock;
+	struct ext4_es_tree i_es_tree;
+	rwlock_t i_es_lock;
+	struct list_head i_es_list;
+	unsigned int i_es_all_nr;
+	unsigned int i_es_shk_nr;
+	ext4_lblk_t i_es_shrink_lblk;
+	ext4_group_t i_last_alloc_group;
+	unsigned int i_reserved_data_blocks;
+	struct ext4_pending_tree i_pending_tree;
+	__u16 i_extra_isize;
+	u16 i_inline_off;
+	u16 i_inline_size;
+	qsize_t i_reserved_quota;
+	spinlock_t i_completed_io_lock;
+	struct list_head i_rsv_conversion_list;
+	struct work_struct i_rsv_conversion_work;
+	atomic_t i_unwritten;
+	spinlock_t i_block_reservation_lock;
+	tid_t i_sync_tid;
+	tid_t i_datasync_tid;
+	struct dquot *i_dquot[3];
+	__u32 i_csum_seed;
+	kprojid_t i_projid;
+};
+
+struct ext4_super_block {
+	__le32 s_inodes_count;
+	__le32 s_blocks_count_lo;
+	__le32 s_r_blocks_count_lo;
+	__le32 s_free_blocks_count_lo;
+	__le32 s_free_inodes_count;
+	__le32 s_first_data_block;
+	__le32 s_log_block_size;
+	__le32 s_log_cluster_size;
+	__le32 s_blocks_per_group;
+	__le32 s_clusters_per_group;
+	__le32 s_inodes_per_group;
+	__le32 s_mtime;
+	__le32 s_wtime;
+	__le16 s_mnt_count;
+	__le16 s_max_mnt_count;
+	__le16 s_magic;
+	__le16 s_state;
+	__le16 s_errors;
+	__le16 s_minor_rev_level;
+	__le32 s_lastcheck;
+	__le32 s_checkinterval;
+	__le32 s_creator_os;
+	__le32 s_rev_level;
+	__le16 s_def_resuid;
+	__le16 s_def_resgid;
+	__le32 s_first_ino;
+	__le16 s_inode_size;
+	__le16 s_block_group_nr;
+	__le32 s_feature_compat;
+	__le32 s_feature_incompat;
+	__le32 s_feature_ro_compat;
+	__u8 s_uuid[16];
+	char s_volume_name[16];
+	char s_last_mounted[64];
+	__le32 s_algorithm_usage_bitmap;
+	__u8 s_prealloc_blocks;
+	__u8 s_prealloc_dir_blocks;
+	__le16 s_reserved_gdt_blocks;
+	__u8 s_journal_uuid[16];
+	__le32 s_journal_inum;
+	__le32 s_journal_dev;
+	__le32 s_last_orphan;
+	__le32 s_hash_seed[4];
+	__u8 s_def_hash_version;
+	__u8 s_jnl_backup_type;
+	__le16 s_desc_size;
+	__le32 s_default_mount_opts;
+	__le32 s_first_meta_bg;
+	__le32 s_mkfs_time;
+	__le32 s_jnl_blocks[17];
+	__le32 s_blocks_count_hi;
+	__le32 s_r_blocks_count_hi;
+	__le32 s_free_blocks_count_hi;
+	__le16 s_min_extra_isize;
+	__le16 s_want_extra_isize;
+	__le32 s_flags;
+	__le16 s_raid_stride;
+	__le16 s_mmp_update_interval;
+	__le64 s_mmp_block;
+	__le32 s_raid_stripe_width;
+	__u8 s_log_groups_per_flex;
+	__u8 s_checksum_type;
+	__u8 s_encryption_level;
+	__u8 s_reserved_pad;
+	__le64 s_kbytes_written;
+	__le32 s_snapshot_inum;
+	__le32 s_snapshot_id;
+	__le64 s_snapshot_r_blocks_count;
+	__le32 s_snapshot_list;
+	__le32 s_error_count;
+	__le32 s_first_error_time;
+	__le32 s_first_error_ino;
+	__le64 s_first_error_block;
+	__u8 s_first_error_func[32];
+	__le32 s_first_error_line;
+	__le32 s_last_error_time;
+	__le32 s_last_error_ino;
+	__le32 s_last_error_line;
+	__le64 s_last_error_block;
+	__u8 s_last_error_func[32];
+	__u8 s_mount_opts[64];
+	__le32 s_usr_quota_inum;
+	__le32 s_grp_quota_inum;
+	__le32 s_overhead_clusters;
+	__le32 s_backup_bgs[2];
+	__u8 s_encrypt_algos[4];
+	__u8 s_encrypt_pw_salt[16];
+	__le32 s_lpf_ino;
+	__le32 s_prj_quota_inum;
+	__le32 s_checksum_seed;
+	__u8 s_wtime_hi;
+	__u8 s_mtime_hi;
+	__u8 s_mkfs_time_hi;
+	__u8 s_lastcheck_hi;
+	__u8 s_first_error_time_hi;
+	__u8 s_last_error_time_hi;
+	__u8 s_first_error_errcode;
+	__u8 s_last_error_errcode;
+	__le16 s_encoding;
+	__le16 s_encoding_flags;
+	__le32 s_orphan_file_inum;
+	__le32 s_reserved[94];
+	__le32 s_checksum;
+};
+
+struct ext4_journal_trigger {
+	struct jbd2_buffer_trigger_type tr_triggers;
+	struct super_block *sb;
+};
+
+struct ext4_orphan_block {
+	atomic_t ob_free_entries;
+	struct buffer_head *ob_bh;
+};
+
+struct ext4_orphan_info {
+	int of_blocks;
+	__u32 of_csum_seed;
+	struct ext4_orphan_block *of_binfo;
+};
+
+struct ext4_group_info;
+
+struct ext4_locality_group;
+
+struct ext4_li_request;
+
+struct ext4_sb_info {
+	long unsigned int s_desc_size;
+	long unsigned int s_inodes_per_block;
+	long unsigned int s_blocks_per_group;
+	long unsigned int s_clusters_per_group;
+	long unsigned int s_inodes_per_group;
+	long unsigned int s_itb_per_group;
+	long unsigned int s_gdb_count;
+	long unsigned int s_desc_per_block;
+	ext4_group_t s_groups_count;
+	ext4_group_t s_blockfile_groups;
+	long unsigned int s_overhead;
+	unsigned int s_cluster_ratio;
+	unsigned int s_cluster_bits;
+	loff_t s_bitmap_maxbytes;
+	struct buffer_head *s_sbh;
+	struct ext4_super_block *s_es;
+	struct buffer_head **s_group_desc;
+	unsigned int s_mount_opt;
+	unsigned int s_mount_opt2;
+	long unsigned int s_mount_flags;
+	unsigned int s_def_mount_opt;
+	ext4_fsblk_t s_sb_block;
+	atomic64_t s_resv_clusters;
+	kuid_t s_resuid;
+	kgid_t s_resgid;
+	short unsigned int s_mount_state;
+	short unsigned int s_pad;
+	int s_addr_per_block_bits;
+	int s_desc_per_block_bits;
+	int s_inode_size;
+	int s_first_ino;
+	unsigned int s_inode_readahead_blks;
+	unsigned int s_inode_goal;
+	u32 s_hash_seed[4];
+	int s_def_hash_version;
+	int s_hash_unsigned;
+	struct percpu_counter s_freeclusters_counter;
+	struct percpu_counter s_freeinodes_counter;
+	struct percpu_counter s_dirs_counter;
+	struct percpu_counter s_dirtyclusters_counter;
+	struct percpu_counter s_sra_exceeded_retry_limit;
+	struct blockgroup_lock *s_blockgroup_lock;
+	struct proc_dir_entry *s_proc;
+	struct kobject s_kobj;
+	struct completion s_kobj_unregister;
+	struct super_block *s_sb;
+	struct buffer_head *s_mmp_bh;
+	struct journal_s *s_journal;
+	long unsigned int s_ext4_flags;
+	struct mutex s_orphan_lock;
+	struct list_head s_orphan;
+	struct ext4_orphan_info s_orphan_info;
+	long unsigned int s_commit_interval;
+	u32 s_max_batch_time;
+	u32 s_min_batch_time;
+	struct block_device *s_journal_bdev;
+	char *s_qf_names[3];
+	int s_jquota_fmt;
+	unsigned int s_want_extra_isize;
+	struct ext4_system_blocks *s_system_blks;
+	struct ext4_group_info ***s_group_info;
+	struct inode *s_buddy_cache;
+	spinlock_t s_md_lock;
+	short unsigned int *s_mb_offsets;
+	unsigned int *s_mb_maxs;
+	unsigned int s_group_info_size;
+	unsigned int s_mb_free_pending;
+	struct list_head s_freed_data_list;
+	struct list_head s_discard_list;
+	struct work_struct s_discard_work;
+	atomic_t s_retry_alloc_pending;
+	struct rb_root s_mb_avg_fragment_size_root;
+	rwlock_t s_mb_rb_lock;
+	struct list_head *s_mb_largest_free_orders;
+	rwlock_t *s_mb_largest_free_orders_locks;
+	long unsigned int s_stripe;
+	unsigned int s_mb_max_linear_groups;
+	unsigned int s_mb_stream_request;
+	unsigned int s_mb_max_to_scan;
+	unsigned int s_mb_min_to_scan;
+	unsigned int s_mb_stats;
+	unsigned int s_mb_order2_reqs;
+	unsigned int s_mb_group_prealloc;
+	unsigned int s_mb_max_inode_prealloc;
+	unsigned int s_max_dir_size_kb;
+	long unsigned int s_mb_last_group;
+	long unsigned int s_mb_last_start;
+	unsigned int s_mb_prefetch;
+	unsigned int s_mb_prefetch_limit;
+	atomic_t s_bal_reqs;
+	atomic_t s_bal_success;
+	atomic_t s_bal_allocated;
+	atomic_t s_bal_ex_scanned;
+	atomic_t s_bal_groups_scanned;
+	atomic_t s_bal_goals;
+	atomic_t s_bal_breaks;
+	atomic_t s_bal_2orders;
+	atomic_t s_bal_cr0_bad_suggestions;
+	atomic_t s_bal_cr1_bad_suggestions;
+	atomic64_t s_bal_cX_groups_considered[4];
+	atomic64_t s_bal_cX_hits[4];
+	atomic64_t s_bal_cX_failed[4];
+	atomic_t s_mb_buddies_generated;
+	atomic64_t s_mb_generation_time;
+	atomic_t s_mb_lost_chunks;
+	atomic_t s_mb_preallocated;
+	atomic_t s_mb_discarded;
+	atomic_t s_lock_busy;
+	struct ext4_locality_group *s_locality_groups;
+	long unsigned int s_sectors_written_start;
+	u64 s_kbytes_written;
+	unsigned int s_extent_max_zeroout_kb;
+	unsigned int s_log_groups_per_flex;
+	struct flex_groups **s_flex_groups;
+	ext4_group_t s_flex_groups_allocated;
+	struct workqueue_struct *rsv_conversion_wq;
+	struct timer_list s_err_report;
+	struct ext4_li_request *s_li_request;
+	unsigned int s_li_wait_mult;
+	struct task_struct *s_mmp_tsk;
+	long unsigned int s_last_trim_minblks;
+	struct crypto_shash *s_chksum_driver;
+	__u32 s_csum_seed;
+	struct shrinker s_es_shrinker;
+	struct list_head s_es_list;
+	long int s_es_nr_inode;
+	struct ext4_es_stats s_es_stats;
+	struct mb_cache *s_ea_block_cache;
+	struct mb_cache *s_ea_inode_cache;
+	long: 64;
+	long: 64;
+	spinlock_t s_es_lock;
+	struct ext4_journal_trigger s_journal_triggers[1];
+	struct ratelimit_state s_err_ratelimit_state;
+	struct ratelimit_state s_warning_ratelimit_state;
+	struct ratelimit_state s_msg_ratelimit_state;
+	atomic_t s_warning_count;
+	atomic_t s_msg_count;
+	struct fscrypt_dummy_policy s_dummy_enc_policy;
+	struct percpu_rw_semaphore s_writepages_rwsem;
+	struct dax_device *s_daxdev;
+	errseq_t s_bdev_wb_err;
+	spinlock_t s_bdev_wb_lock;
+	spinlock_t s_error_lock;
+	int s_add_error_count;
+	int s_first_error_code;
+	__u32 s_first_error_line;
+	__u32 s_first_error_ino;
+	__u64 s_first_error_block;
+	const char *s_first_error_func;
+	time64_t s_first_error_time;
+	int s_last_error_code;
+	__u32 s_last_error_line;
+	__u32 s_last_error_ino;
+	__u64 s_last_error_block;
+	const char *s_last_error_func;
+	time64_t s_last_error_time;
+	struct work_struct s_error_work;
+	atomic_t s_fc_subtid;
+	struct list_head s_fc_q[2];
+	struct list_head s_fc_dentry_q[2];
+	unsigned int s_fc_bytes;
+	spinlock_t s_fc_lock;
+	struct buffer_head *s_fc_bh;
+	struct ext4_fc_stats s_fc_stats;
+	tid_t s_fc_ineligible_tid;
+	struct ext4_fc_replay_state s_fc_replay_state;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct ext4_group_info {
+	long unsigned int bb_state;
+	struct rb_root bb_free_root;
+	ext4_grpblk_t bb_first_free;
+	ext4_grpblk_t bb_free;
+	ext4_grpblk_t bb_fragments;
+	ext4_grpblk_t bb_largest_free_order;
+	ext4_group_t bb_group;
+	struct list_head bb_prealloc_list;
+	struct rw_semaphore alloc_sem;
+	struct rb_node bb_avg_fragment_size_rb;
+	struct list_head bb_largest_free_order_node;
+	ext4_grpblk_t bb_counters[0];
+};
+
+struct ext4_locality_group {
+	struct mutex lg_mutex;
+	struct list_head lg_prealloc_list[10];
+	spinlock_t lg_prealloc_lock;
+};
+
+enum ext4_li_mode {
+	EXT4_LI_MODE_PREFETCH_BBITMAP = 0,
+	EXT4_LI_MODE_ITABLE = 1,
+};
+
+struct ext4_li_request {
+	struct super_block *lr_super;
+	enum ext4_li_mode lr_mode;
+	ext4_group_t lr_first_not_zeroed;
+	ext4_group_t lr_next_group;
+	struct list_head lr_request;
+	long unsigned int lr_next_sched;
+	long unsigned int lr_timeout;
+};
+
+struct ext4_map_blocks {
+	ext4_fsblk_t m_pblk;
+	ext4_lblk_t m_lblk;
+	unsigned int m_len;
+	unsigned int m_flags;
+};
+
+typedef enum {
+	EXT4_IGET_NORMAL = 0,
+	EXT4_IGET_SPECIAL = 1,
+	EXT4_IGET_HANDLE = 2,
+	EXT4_IGET_BAD = 4,
+	EXT4_IGET_EA_INODE = 8,
+} ext4_iget_flags;
+
+struct ext4_system_zone {
+	struct rb_node node;
+	ext4_fsblk_t start_blk;
+	unsigned int count;
+	u32 ino;
+};
+
+enum {
+	EXT4_INODE_SECRM = 0,
+	EXT4_INODE_UNRM = 1,
+	EXT4_INODE_COMPR = 2,
+	EXT4_INODE_SYNC = 3,
+	EXT4_INODE_IMMUTABLE = 4,
+	EXT4_INODE_APPEND = 5,
+	EXT4_INODE_NODUMP = 6,
+	EXT4_INODE_NOATIME = 7,
+	EXT4_INODE_DIRTY = 8,
+	EXT4_INODE_COMPRBLK = 9,
+	EXT4_INODE_NOCOMPR = 10,
+	EXT4_INODE_ENCRYPT = 11,
+	EXT4_INODE_INDEX = 12,
+	EXT4_INODE_IMAGIC = 13,
+	EXT4_INODE_JOURNAL_DATA = 14,
+	EXT4_INODE_NOTAIL = 15,
+	EXT4_INODE_DIRSYNC = 16,
+	EXT4_INODE_TOPDIR = 17,
+	EXT4_INODE_HUGE_FILE = 18,
+	EXT4_INODE_EXTENTS = 19,
+	EXT4_INODE_VERITY = 20,
+	EXT4_INODE_EA_INODE = 21,
+	EXT4_INODE_DAX = 25,
+	EXT4_INODE_INLINE_DATA = 28,
+	EXT4_INODE_PROJINHERIT = 29,
+	EXT4_INODE_CASEFOLD = 30,
+	EXT4_INODE_RESERVED = 31,
+};
+
+enum {
+	EXT4_FC_REASON_XATTR = 0,
+	EXT4_FC_REASON_CROSS_RENAME = 1,
+	EXT4_FC_REASON_JOURNAL_FLAG_CHANGE = 2,
+	EXT4_FC_REASON_NOMEM = 3,
+	EXT4_FC_REASON_SWAP_BOOT = 4,
+	EXT4_FC_REASON_RESIZE = 5,
+	EXT4_FC_REASON_RENAME_DIR = 6,
+	EXT4_FC_REASON_FALLOC_RANGE = 7,
+	EXT4_FC_REASON_INODE_JOURNAL_DATA = 8,
+	EXT4_FC_REASON_ENCRYPTED_FILENAME = 9,
+	EXT4_FC_REASON_MAX = 10,
+};
+
+enum ext4_journal_trigger_type {
+	EXT4_JTR_ORPHAN_FILE = 0,
+	EXT4_JTR_NONE = 1,
+};
+
+struct ext4_dir_entry_hash {
+	__le32 hash;
+	__le32 minor_hash;
+};
+
+struct ext4_dir_entry_2 {
+	__le32 inode;
+	__le16 rec_len;
+	__u8 name_len;
+	__u8 file_type;
+	char name[255];
+};
+
+struct fname;
+
+struct dir_private_info {
+	struct rb_root root;
+	struct rb_node *curr_node;
+	struct fname *extra_fname;
+	loff_t last_pos;
+	__u32 curr_hash;
+	__u32 curr_minor_hash;
+	__u32 next_hash;
+};
+
+struct fname {
+	__u32 hash;
+	__u32 minor_hash;
+	struct rb_node rb_hash;
+	struct fname *next;
+	__u32 inode;
+	__u8 name_len;
+	__u8 file_type;
+	char name[0];
+};
+
+enum SHIFT_DIRECTION {
+	SHIFT_LEFT = 0,
+	SHIFT_RIGHT = 1,
+};
+
+struct ext4_io_end_vec {
+	struct list_head list;
+	loff_t offset;
+	ssize_t size;
+};
+
+struct ext4_io_end {
+	struct list_head list;
+	handle_t *handle;
+	struct inode *inode;
+	struct bio *bio;
+	unsigned int flag;
+	atomic_t count;
+	struct list_head list_vec;
+};
+
+typedef struct ext4_io_end ext4_io_end_t;
+
+enum {
+	ES_WRITTEN_B = 0,
+	ES_UNWRITTEN_B = 1,
+	ES_DELAYED_B = 2,
+	ES_HOLE_B = 3,
+	ES_REFERENCED_B = 4,
+	ES_FLAGS = 5,
+};
+
+enum {
+	EXT4_STATE_JDATA = 0,
+	EXT4_STATE_NEW = 1,
+	EXT4_STATE_XATTR = 2,
+	EXT4_STATE_NO_EXPAND = 3,
+	EXT4_STATE_DA_ALLOC_CLOSE = 4,
+	EXT4_STATE_EXT_MIGRATE = 5,
+	EXT4_STATE_NEWENTRY = 6,
+	EXT4_STATE_MAY_INLINE_DATA = 7,
+	EXT4_STATE_EXT_PRECACHED = 8,
+	EXT4_STATE_LUSTRE_EA_INODE = 9,
+	EXT4_STATE_VERITY_IN_PROGRESS = 10,
+	EXT4_STATE_FC_COMMITTING = 11,
+	EXT4_STATE_ORPHAN_FILE = 12,
+};
+
+struct ext4_iloc {
+	struct buffer_head *bh;
+	long unsigned int offset;
+	ext4_group_t block_group;
+};
+
+struct ext4_extent_tail {
+	__le32 et_checksum;
+};
+
+struct ext4_extent {
+	__le32 ee_block;
+	__le16 ee_len;
+	__le16 ee_start_hi;
+	__le32 ee_start_lo;
+};
+
+struct ext4_extent_idx {
+	__le32 ei_block;
+	__le32 ei_leaf_lo;
+	__le16 ei_leaf_hi;
+	__u16 ei_unused;
+};
+
+struct ext4_extent_header {
+	__le16 eh_magic;
+	__le16 eh_entries;
+	__le16 eh_max;
+	__le16 eh_depth;
+	__le32 eh_generation;
+};
+
+struct ext4_ext_path {
+	ext4_fsblk_t p_block;
+	__u16 p_depth;
+	__u16 p_maxdepth;
+	struct ext4_extent *p_ext;
+	struct ext4_extent_idx *p_idx;
+	struct ext4_extent_header *p_hdr;
+	struct buffer_head *p_bh;
+};
+
+struct partial_cluster {
+	ext4_fsblk_t pclu;
+	ext4_lblk_t lblk;
+	enum {
+		initial = 0,
+		tofree = 1,
+		nofree = 2,
+	} state;
+};
+
+struct pending_reservation {
+	struct rb_node rb_node;
+	ext4_lblk_t lclu;
+};
+
+struct rsvd_count {
+	int ndelonly;
+	bool first_do_lblk_found;
+	ext4_lblk_t first_do_lblk;
+	ext4_lblk_t last_do_lblk;
+	struct extent_status *left_es;
+	bool partial;
+	ext4_lblk_t lclu;
+};
+
+enum {
+	EXT4_MF_MNTDIR_SAMPLED = 0,
+	EXT4_MF_FS_ABORTED = 1,
+	EXT4_MF_FC_INELIGIBLE = 2,
+};
+
+struct fsmap {
+	__u32 fmr_device;
+	__u32 fmr_flags;
+	__u64 fmr_physical;
+	__u64 fmr_owner;
+	__u64 fmr_offset;
+	__u64 fmr_length;
+	__u64 fmr_reserved[3];
+};
+
+struct ext4_fsmap {
+	struct list_head fmr_list;
+	dev_t fmr_device;
+	uint32_t fmr_flags;
+	uint64_t fmr_physical;
+	uint64_t fmr_owner;
+	uint64_t fmr_length;
+};
+
+struct ext4_fsmap_head {
+	uint32_t fmh_iflags;
+	uint32_t fmh_oflags;
+	unsigned int fmh_count;
+	unsigned int fmh_entries;
+	struct ext4_fsmap fmh_keys[2];
+};
+
+typedef int (*ext4_fsmap_format_t)(struct ext4_fsmap *, void *);
+
+typedef int (*ext4_mballoc_query_range_fn)(struct super_block *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t, void *);
+
+struct ext4_getfsmap_info {
+	struct ext4_fsmap_head *gfi_head;
+	ext4_fsmap_format_t gfi_formatter;
+	void *gfi_format_arg;
+	ext4_fsblk_t gfi_next_fsblk;
+	u32 gfi_dev;
+	ext4_group_t gfi_agno;
+	struct ext4_fsmap gfi_low;
+	struct ext4_fsmap gfi_high;
+	struct ext4_fsmap gfi_lastfree;
+	struct list_head gfi_meta_list;
+	bool gfi_last;
+};
+
+struct ext4_getfsmap_dev {
+	int (*gfd_fn)(struct super_block *, struct ext4_fsmap *, struct ext4_getfsmap_info *);
+	u32 gfd_dev;
+};
+
+struct dx_hash_info {
+	u32 hash;
+	u32 minor_hash;
+	int hash_version;
+	u32 *seed;
+};
+
+typedef unsigned int __kernel_mode_t;
+
+typedef __kernel_mode_t mode_t;
+
+struct ext4_inode {
+	__le16 i_mode;
+	__le16 i_uid;
+	__le32 i_size_lo;
+	__le32 i_atime;
+	__le32 i_ctime;
+	__le32 i_mtime;
+	__le32 i_dtime;
+	__le16 i_gid;
+	__le16 i_links_count;
+	__le32 i_blocks_lo;
+	__le32 i_flags;
+	union {
+		struct {
+			__le32 l_i_version;
+		} linux1;
+		struct {
+			__u32 h_i_translator;
+		} hurd1;
+		struct {
+			__u32 m_i_reserved1;
+		} masix1;
+	} osd1;
+	__le32 i_block[15];
+	__le32 i_generation;
+	__le32 i_file_acl_lo;
+	__le32 i_size_high;
+	__le32 i_obso_faddr;
+	union {
+		struct {
+			__le16 l_i_blocks_high;
+			__le16 l_i_file_acl_high;
+			__le16 l_i_uid_high;
+			__le16 l_i_gid_high;
+			__le16 l_i_checksum_lo;
+			__le16 l_i_reserved;
+		} linux2;
+		struct {
+			__le16 h_i_reserved1;
+			__u16 h_i_mode_high;
+			__u16 h_i_uid_high;
+			__u16 h_i_gid_high;
+			__u32 h_i_author;
+		} hurd2;
+		struct {
+			__le16 h_i_reserved1;
+			__le16 m_i_file_acl_high;
+			__u32 m_i_reserved2[2];
+		} masix2;
+	} osd2;
+	__le16 i_extra_isize;
+	__le16 i_checksum_hi;
+	__le32 i_ctime_extra;
+	__le32 i_mtime_extra;
+	__le32 i_atime_extra;
+	__le32 i_crtime;
+	__le32 i_crtime_extra;
+	__le32 i_version_hi;
+	__le32 i_projid;
+};
+
+struct orlov_stats {
+	__u64 free_clusters;
+	__u32 free_inodes;
+	__u32 used_dirs;
+};
+
+typedef struct {
+	__le32 *p;
+	__le32 key;
+	struct buffer_head *bh;
+} Indirect;
+
+struct ext4_filename {
+	const struct qstr *usr_fname;
+	struct fscrypt_str disk_name;
+	struct dx_hash_info hinfo;
+	struct fscrypt_str crypto_buf;
+	struct fscrypt_str cf_name;
+};
+
+struct ext4_xattr_ibody_header {
+	__le32 h_magic;
+};
+
+struct ext4_xattr_entry {
+	__u8 e_name_len;
+	__u8 e_name_index;
+	__le16 e_value_offs;
+	__le32 e_value_inum;
+	__le32 e_value_size;
+	__le32 e_hash;
+	char e_name[0];
+};
+
+struct ext4_xattr_info {
+	const char *name;
+	const void *value;
+	size_t value_len;
+	int name_index;
+	int in_inode;
+};
+
+struct ext4_xattr_search {
+	struct ext4_xattr_entry *first;
+	void *base;
+	void *end;
+	struct ext4_xattr_entry *here;
+	int not_found;
+};
+
+struct ext4_xattr_ibody_find {
+	struct ext4_xattr_search s;
+	struct ext4_iloc iloc;
+};
+
+typedef short unsigned int __kernel_uid16_t;
+
+typedef short unsigned int __kernel_gid16_t;
+
+typedef __kernel_uid16_t uid16_t;
+
+typedef __kernel_gid16_t gid16_t;
+
+struct ext4_io_submit {
+	struct writeback_control *io_wbc;
+	struct bio *io_bio;
+	ext4_io_end_t *io_end;
+	sector_t io_next_block;
+};
+
+struct ext4_xattr_inode_array {
+	unsigned int count;
+	struct inode *inodes[0];
+};
+
+struct mpage_da_data {
+	struct inode *inode;
+	struct writeback_control *wbc;
+	long unsigned int first_page;
+	long unsigned int next_page;
+	long unsigned int last_page;
+	struct ext4_map_blocks map;
+	struct ext4_io_submit io_submit;
+	unsigned int do_map: 1;
+	unsigned int scanned_until_end: 1;
+};
+
+struct fstrim_range {
+	__u64 start;
+	__u64 len;
+	__u64 minlen;
+};
+
+struct ext4_new_group_input {
+	__u32 group;
+	__u64 block_bitmap;
+	__u64 inode_bitmap;
+	__u64 inode_table;
+	__u32 blocks_count;
+	__u16 reserved_blocks;
+	__u16 unused;
+};
+
+struct compat_ext4_new_group_input {
+	u32 group;
+	compat_u64 block_bitmap;
+	compat_u64 inode_bitmap;
+	compat_u64 inode_table;
+	u32 blocks_count;
+	u16 reserved_blocks;
+	u16 unused;
+} __attribute__((packed));
+
+struct ext4_new_group_data {
+	__u32 group;
+	__u64 block_bitmap;
+	__u64 inode_bitmap;
+	__u64 inode_table;
+	__u32 blocks_count;
+	__u16 reserved_blocks;
+	__u16 mdata_blocks;
+	__u32 free_clusters_count;
+};
+
+struct move_extent {
+	__u32 reserved;
+	__u32 donor_fd;
+	__u64 orig_start;
+	__u64 donor_start;
+	__u64 len;
+	__u64 moved_len;
+};
+
+struct fsmap_head {
+	__u32 fmh_iflags;
+	__u32 fmh_oflags;
+	__u32 fmh_count;
+	__u32 fmh_entries;
+	__u64 fmh_reserved[6];
+	struct fsmap fmh_keys[2];
+	struct fsmap fmh_recs[0];
+};
+
+struct getfsmap_info {
+	struct super_block *gi_sb;
+	struct fsmap_head *gi_data;
+	unsigned int gi_idx;
+	__u32 gi_last_flags;
+};
+
+enum blk_default_limits {
+	BLK_MAX_SEGMENTS = 128,
+	BLK_SAFE_MAX_SECTORS = 255,
+	BLK_MAX_SEGMENT_SIZE = 65536,
+	BLK_SEG_BOUNDARY_MASK = 4294967295,
+};
+
+struct ext4_free_data {
+	struct list_head efd_list;
+	struct rb_node efd_node;
+	ext4_group_t efd_group;
+	ext4_grpblk_t efd_start_cluster;
+	ext4_grpblk_t efd_count;
+	tid_t efd_tid;
+};
+
+struct ext4_prealloc_space {
+	struct list_head pa_inode_list;
+	struct list_head pa_group_list;
+	union {
+		struct list_head pa_tmp_list;
+		struct callback_head pa_rcu;
+	} u;
+	spinlock_t pa_lock;
+	atomic_t pa_count;
+	unsigned int pa_deleted;
+	ext4_fsblk_t pa_pstart;
+	ext4_lblk_t pa_lstart;
+	ext4_grpblk_t pa_len;
+	ext4_grpblk_t pa_free;
+	short unsigned int pa_type;
+	spinlock_t *pa_obj_lock;
+	struct inode *pa_inode;
+};
+
+enum {
+	MB_INODE_PA = 0,
+	MB_GROUP_PA = 1,
+};
+
+struct ext4_free_extent {
+	ext4_lblk_t fe_logical;
+	ext4_grpblk_t fe_start;
+	ext4_group_t fe_group;
+	ext4_grpblk_t fe_len;
+};
+
+struct ext4_allocation_context {
+	struct inode *ac_inode;
+	struct super_block *ac_sb;
+	struct ext4_free_extent ac_o_ex;
+	struct ext4_free_extent ac_g_ex;
+	struct ext4_free_extent ac_b_ex;
+	struct ext4_free_extent ac_f_ex;
+	ext4_group_t ac_last_optimal_group;
+	__u32 ac_groups_considered;
+	__u32 ac_flags;
+	__u32 ac_groups_linear_remaining;
+	__u16 ac_groups_scanned;
+	__u16 ac_found;
+	__u16 ac_tail;
+	__u16 ac_buddy;
+	__u8 ac_status;
+	__u8 ac_criteria;
+	__u8 ac_2order;
+	__u8 ac_op;
+	struct page *ac_bitmap_page;
+	struct page *ac_buddy_page;
+	struct ext4_prealloc_space *ac_pa;
+	struct ext4_locality_group *ac_lg;
+};
+
+struct ext4_buddy {
+	struct page *bd_buddy_page;
+	void *bd_buddy;
+	struct page *bd_bitmap_page;
+	void *bd_bitmap;
+	struct ext4_group_info *bd_info;
+	struct super_block *bd_sb;
+	__u16 bd_blkbits;
+	ext4_group_t bd_group;
+};
+
+struct sg {
+	struct ext4_group_info info;
+	ext4_grpblk_t counters[18];
+};
+
+struct migrate_struct {
+	ext4_lblk_t first_block;
+	ext4_lblk_t last_block;
+	ext4_lblk_t curr_block;
+	ext4_fsblk_t first_pblock;
+	ext4_fsblk_t last_pblock;
+};
+
+struct mmp_struct {
+	__le32 mmp_magic;
+	__le32 mmp_seq;
+	__le64 mmp_time;
+	char mmp_nodename[64];
+	char mmp_bdevname[32];
+	__le16 mmp_check_interval;
+	__le16 mmp_pad1;
+	__le32 mmp_pad2[226];
+	__le32 mmp_checksum;
+};
+
+struct ext4_dir_entry {
+	__le32 inode;
+	__le16 rec_len;
+	__le16 name_len;
+	char name[255];
+};
+
+struct ext4_dir_entry_tail {
+	__le32 det_reserved_zero1;
+	__le16 det_rec_len;
+	__u8 det_reserved_zero2;
+	__u8 det_reserved_ft;
+	__le32 det_checksum;
+};
+
+typedef enum {
+	EITHER = 0,
+	INDEX = 1,
+	DIRENT = 2,
+	DIRENT_HTREE = 3,
+} dirblock_type_t;
+
+struct fake_dirent {
+	__le32 inode;
+	__le16 rec_len;
+	u8 name_len;
+	u8 file_type;
+};
+
+struct dx_countlimit {
+	__le16 limit;
+	__le16 count;
+};
+
+struct dx_entry {
+	__le32 hash;
+	__le32 block;
+};
+
+struct dx_root_info {
+	__le32 reserved_zero;
+	u8 hash_version;
+	u8 info_length;
+	u8 indirect_levels;
+	u8 unused_flags;
+};
+
+struct dx_root {
+	struct fake_dirent dot;
+	char dot_name[4];
+	struct fake_dirent dotdot;
+	char dotdot_name[4];
+	struct dx_root_info info;
+	struct dx_entry entries[0];
+};
+
+struct dx_node {
+	struct fake_dirent fake;
+	struct dx_entry entries[0];
+};
+
+struct dx_frame {
+	struct buffer_head *bh;
+	struct dx_entry *entries;
+	struct dx_entry *at;
+};
+
+struct dx_map_entry {
+	u32 hash;
+	u16 offs;
+	u16 size;
+};
+
+struct dx_tail {
+	u32 dt_reserved;
+	__le32 dt_checksum;
+};
+
+struct ext4_renament {
+	struct inode *dir;
+	struct dentry *dentry;
+	struct inode *inode;
+	bool is_dir;
+	int dir_nlink_delta;
+	struct buffer_head *bh;
+	struct ext4_dir_entry_2 *de;
+	int inlined;
+	struct buffer_head *dir_bh;
+	struct ext4_dir_entry_2 *parent_de;
+	int dir_inlined;
+};
+
+enum bio_post_read_step {
+	STEP_INITIAL = 0,
+	STEP_DECRYPT = 1,
+	STEP_VERITY = 2,
+	STEP_MAX = 3,
+};
+
+struct bio_post_read_ctx {
+	struct bio *bio;
+	struct work_struct work;
+	unsigned int cur_step;
+	unsigned int enabled_steps;
+};
+
+enum {
+	BLOCK_BITMAP = 0,
+	INODE_BITMAP = 1,
+	INODE_TABLE = 2,
+	GROUP_TABLE_COUNT = 3,
+};
+
+struct ext4_rcu_ptr {
+	struct callback_head rcu;
+	void *ptr;
+};
+
+struct ext4_new_flex_group_data {
+	struct ext4_new_group_data *groups;
+	__u16 *bg_flags;
+	ext4_group_t resize_bg;
+	ext4_group_t count;
+};
+
+enum stat_group {
+	STAT_READ = 0,
+	STAT_WRITE = 1,
+	STAT_DISCARD = 2,
+	STAT_FLUSH = 3,
+	NR_STAT_GROUPS = 4,
+};
+
+enum {
+	I_DATA_SEM_NORMAL = 0,
+	I_DATA_SEM_OTHER = 1,
+	I_DATA_SEM_QUOTA = 2,
+	I_DATA_SEM_EA = 3,
+};
+
+struct ext4_lazy_init {
+	long unsigned int li_state;
+	struct list_head li_request_list;
+	struct mutex li_list_mtx;
+};
+
+struct ext4_journal_cb_entry {
+	struct list_head jce_list;
+	void (*jce_func)(struct super_block *, struct ext4_journal_cb_entry *, int);
+};
+
+struct trace_event_raw_ext4_other_inode_update_time {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ino_t orig_ino;
+	uid_t uid;
+	gid_t gid;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_free_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	uid_t uid;
+	gid_t gid;
+	__u64 blocks;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_request_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t dir;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_allocate_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ino_t dir;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_evict_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int nlink;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_drop_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int drop;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_nfs_commit_metadata {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_mark_inode_dirty {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	long unsigned int ip;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_begin_ordered_truncate {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t new_size;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__write_begin {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t pos;
+	unsigned int len;
+	unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__write_end {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t pos;
+	unsigned int len;
+	unsigned int copied;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_writepages {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	long int nr_to_write;
+	long int pages_skipped;
+	loff_t range_start;
+	loff_t range_end;
+	long unsigned int writeback_index;
+	int sync_mode;
+	char for_kupdate;
+	char range_cyclic;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_da_write_pages {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	long unsigned int first_page;
+	long int nr_to_write;
+	int sync_mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_da_write_pages_extent {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 lblk;
+	__u32 len;
+	__u32 flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_writepages_result {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int ret;
+	int pages_written;
+	long int pages_skipped;
+	long unsigned int writeback_index;
+	int sync_mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__page_op {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	long unsigned int index;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_invalidatepage_op {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	long unsigned int index;
+	unsigned int offset;
+	unsigned int length;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_discard_blocks {
+	struct trace_entry ent;
+	dev_t dev;
+	__u64 blk;
+	__u64 count;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__mb_new_pa {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 pa_pstart;
+	__u64 pa_lstart;
+	__u32 pa_len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_mb_release_inode_pa {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 block;
+	__u32 count;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_mb_release_group_pa {
+	struct trace_entry ent;
+	dev_t dev;
+	__u64 pa_pstart;
+	__u32 pa_len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_discard_preallocations {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	unsigned int len;
+	unsigned int needed;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_mb_discard_preallocations {
+	struct trace_entry ent;
+	dev_t dev;
+	int needed;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_request_blocks {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	unsigned int len;
+	__u32 logical;
+	__u32 lleft;
+	__u32 lright;
+	__u64 goal;
+	__u64 pleft;
+	__u64 pright;
+	unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_allocate_blocks {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 block;
+	unsigned int len;
+	__u32 logical;
+	__u32 lleft;
+	__u32 lright;
+	__u64 goal;
+	__u64 pleft;
+	__u64 pright;
+	unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_free_blocks {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 block;
+	long unsigned int count;
+	int flags;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_sync_file_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ino_t parent;
+	int datasync;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_sync_file_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int ret;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_sync_fs {
+	struct trace_entry ent;
+	dev_t dev;
+	int wait;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_alloc_da_blocks {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	unsigned int data_blocks;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_mballoc_alloc {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u32 orig_logical;
+	int orig_start;
+	__u32 orig_group;
+	int orig_len;
+	__u32 goal_logical;
+	int goal_start;
+	__u32 goal_group;
+	int goal_len;
+	__u32 result_logical;
+	int result_start;
+	__u32 result_group;
+	int result_len;
+	__u16 found;
+	__u16 groups;
+	__u16 buddy;
+	__u16 flags;
+	__u16 tail;
+	__u8 cr;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_mballoc_prealloc {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u32 orig_logical;
+	int orig_start;
+	__u32 orig_group;
+	int orig_len;
+	__u32 result_logical;
+	int result_start;
+	__u32 result_group;
+	int result_len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__mballoc {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int result_start;
+	__u32 result_group;
+	int result_len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_forget {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 block;
+	int is_metadata;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_da_update_reserve_space {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 i_blocks;
+	int used_blocks;
+	int reserved_data_blocks;
+	int quota_claim;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_da_reserve_space {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 i_blocks;
+	int reserved_data_blocks;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_da_release_space {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 i_blocks;
+	int freed_blocks;
+	int reserved_data_blocks;
+	__u16 mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__bitmap_load {
+	struct trace_entry ent;
+	dev_t dev;
+	__u32 group;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_read_block_bitmap_load {
+	struct trace_entry ent;
+	dev_t dev;
+	__u32 group;
+	bool prefetch;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__fallocate_mode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t offset;
+	loff_t len;
+	int mode;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fallocate_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t pos;
+	unsigned int blocks;
+	int ret;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_unlink_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ino_t parent;
+	loff_t size;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_unlink_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int ret;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__truncate {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	__u64 blocks;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_convert_to_initialized_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t m_lblk;
+	unsigned int m_len;
+	ext4_lblk_t u_lblk;
+	unsigned int u_len;
+	ext4_fsblk_t u_pblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_convert_to_initialized_fastpath {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t m_lblk;
+	unsigned int m_len;
+	ext4_lblk_t u_lblk;
+	unsigned int u_len;
+	ext4_fsblk_t u_pblk;
+	ext4_lblk_t i_lblk;
+	unsigned int i_len;
+	ext4_fsblk_t i_pblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__map_blocks_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	unsigned int len;
+	unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__map_blocks_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	unsigned int flags;
+	ext4_fsblk_t pblk;
+	ext4_lblk_t lblk;
+	unsigned int len;
+	unsigned int mflags;
+	int ret;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_load_extent {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_fsblk_t pblk;
+	ext4_lblk_t lblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_load_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_journal_start {
+	struct trace_entry ent;
+	dev_t dev;
+	long unsigned int ip;
+	int blocks;
+	int rsv_blocks;
+	int revoke_creds;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_journal_start_reserved {
+	struct trace_entry ent;
+	dev_t dev;
+	long unsigned int ip;
+	int blocks;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__trim {
+	struct trace_entry ent;
+	int dev_major;
+	int dev_minor;
+	__u32 group;
+	int start;
+	int len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_handle_unwritten_extents {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	int flags;
+	ext4_lblk_t lblk;
+	ext4_fsblk_t pblk;
+	unsigned int len;
+	unsigned int allocated;
+	ext4_fsblk_t newblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_get_implied_cluster_alloc_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	unsigned int flags;
+	ext4_lblk_t lblk;
+	ext4_fsblk_t pblk;
+	unsigned int len;
+	int ret;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_show_extent {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_fsblk_t pblk;
+	ext4_lblk_t lblk;
+	short unsigned int len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_remove_blocks {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t from;
+	ext4_lblk_t to;
+	ext4_fsblk_t ee_pblk;
+	ext4_lblk_t ee_lblk;
+	short unsigned int ee_len;
+	ext4_fsblk_t pc_pclu;
+	ext4_lblk_t pc_lblk;
+	int pc_state;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_rm_leaf {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t start;
+	ext4_lblk_t ee_lblk;
+	ext4_fsblk_t ee_pblk;
+	short int ee_len;
+	ext4_fsblk_t pc_pclu;
+	ext4_lblk_t pc_lblk;
+	int pc_state;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_rm_idx {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_fsblk_t pblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_remove_space {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t start;
+	ext4_lblk_t end;
+	int depth;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_ext_remove_space_done {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t start;
+	ext4_lblk_t end;
+	int depth;
+	ext4_fsblk_t pc_pclu;
+	ext4_lblk_t pc_lblk;
+	int pc_state;
+	short unsigned int eh_entries;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__es_extent {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	ext4_lblk_t len;
+	ext4_fsblk_t pblk;
+	char status;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_remove_extent {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t lblk;
+	loff_t len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_find_extent_range_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_find_extent_range_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	ext4_lblk_t len;
+	ext4_fsblk_t pblk;
+	char status;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_lookup_extent_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_lookup_extent_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	ext4_lblk_t len;
+	ext4_fsblk_t pblk;
+	char status;
+	int found;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4__es_shrink_enter {
+	struct trace_entry ent;
+	dev_t dev;
+	int nr_to_scan;
+	int cache_cnt;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_shrink_scan_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	int nr_shrunk;
+	int cache_cnt;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_collapse_range {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t offset;
+	loff_t len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_insert_range {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	loff_t offset;
+	loff_t len;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_shrink {
+	struct trace_entry ent;
+	dev_t dev;
+	int nr_shrunk;
+	long long unsigned int scan_time;
+	int nr_skipped;
+	int retried;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_es_insert_delayed_block {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	ext4_lblk_t lblk;
+	ext4_lblk_t len;
+	ext4_fsblk_t pblk;
+	char status;
+	bool allocated;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fsmap_class {
+	struct trace_entry ent;
+	dev_t dev;
+	dev_t keydev;
+	u32 agno;
+	u64 bno;
+	u64 len;
+	u64 owner;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_getfsmap_class {
+	struct trace_entry ent;
+	dev_t dev;
+	dev_t keydev;
+	u64 block;
+	u64 len;
+	u64 owner;
+	u64 flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_shutdown {
+	struct trace_entry ent;
+	dev_t dev;
+	unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_error {
+	struct trace_entry ent;
+	dev_t dev;
+	const char *function;
+	unsigned int line;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_prefetch_bitmaps {
+	struct trace_entry ent;
+	dev_t dev;
+	__u32 group;
+	__u32 next;
+	__u32 ios;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_lazy_itable_init {
+	struct trace_entry ent;
+	dev_t dev;
+	__u32 group;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_replay_scan {
+	struct trace_entry ent;
+	dev_t dev;
+	int error;
+	int off;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_replay {
+	struct trace_entry ent;
+	dev_t dev;
+	int tag;
+	int ino;
+	int priv1;
+	int priv2;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_commit_start {
+	struct trace_entry ent;
+	dev_t dev;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_commit_stop {
+	struct trace_entry ent;
+	dev_t dev;
+	int nblks;
+	int reason;
+	int num_fc;
+	int num_fc_ineligible;
+	int nblks_agg;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_stats {
+	struct trace_entry ent;
+	dev_t dev;
+	unsigned int fc_ineligible_rc[10];
+	long unsigned int fc_commits;
+	long unsigned int fc_ineligible_commits;
+	long unsigned int fc_numblks;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_track_create {
+	struct trace_entry ent;
+	dev_t dev;
+	int ino;
+	int error;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_track_link {
+	struct trace_entry ent;
+	dev_t dev;
+	int ino;
+	int error;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_track_unlink {
+	struct trace_entry ent;
+	dev_t dev;
+	int ino;
+	int error;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_track_inode {
+	struct trace_entry ent;
+	dev_t dev;
+	int ino;
+	int error;
+	char __data[0];
+};
+
+struct trace_event_raw_ext4_fc_track_range {
+	struct trace_entry ent;
+	dev_t dev;
+	int ino;
+	long int start;
+	long int end;
+	int error;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_ext4_other_inode_update_time {};
+
+struct trace_event_data_offsets_ext4_free_inode {};
+
+struct trace_event_data_offsets_ext4_request_inode {};
+
+struct trace_event_data_offsets_ext4_allocate_inode {};
+
+struct trace_event_data_offsets_ext4_evict_inode {};
+
+struct trace_event_data_offsets_ext4_drop_inode {};
+
+struct trace_event_data_offsets_ext4_nfs_commit_metadata {};
+
+struct trace_event_data_offsets_ext4_mark_inode_dirty {};
+
+struct trace_event_data_offsets_ext4_begin_ordered_truncate {};
+
+struct trace_event_data_offsets_ext4__write_begin {};
+
+struct trace_event_data_offsets_ext4__write_end {};
+
+struct trace_event_data_offsets_ext4_writepages {};
+
+struct trace_event_data_offsets_ext4_da_write_pages {};
+
+struct trace_event_data_offsets_ext4_da_write_pages_extent {};
+
+struct trace_event_data_offsets_ext4_writepages_result {};
+
+struct trace_event_data_offsets_ext4__page_op {};
+
+struct trace_event_data_offsets_ext4_invalidatepage_op {};
+
+struct trace_event_data_offsets_ext4_discard_blocks {};
+
+struct trace_event_data_offsets_ext4__mb_new_pa {};
+
+struct trace_event_data_offsets_ext4_mb_release_inode_pa {};
+
+struct trace_event_data_offsets_ext4_mb_release_group_pa {};
+
+struct trace_event_data_offsets_ext4_discard_preallocations {};
+
+struct trace_event_data_offsets_ext4_mb_discard_preallocations {};
+
+struct trace_event_data_offsets_ext4_request_blocks {};
+
+struct trace_event_data_offsets_ext4_allocate_blocks {};
+
+struct trace_event_data_offsets_ext4_free_blocks {};
+
+struct trace_event_data_offsets_ext4_sync_file_enter {};
+
+struct trace_event_data_offsets_ext4_sync_file_exit {};
+
+struct trace_event_data_offsets_ext4_sync_fs {};
+
+struct trace_event_data_offsets_ext4_alloc_da_blocks {};
+
+struct trace_event_data_offsets_ext4_mballoc_alloc {};
+
+struct trace_event_data_offsets_ext4_mballoc_prealloc {};
+
+struct trace_event_data_offsets_ext4__mballoc {};
+
+struct trace_event_data_offsets_ext4_forget {};
+
+struct trace_event_data_offsets_ext4_da_update_reserve_space {};
+
+struct trace_event_data_offsets_ext4_da_reserve_space {};
+
+struct trace_event_data_offsets_ext4_da_release_space {};
+
+struct trace_event_data_offsets_ext4__bitmap_load {};
+
+struct trace_event_data_offsets_ext4_read_block_bitmap_load {};
+
+struct trace_event_data_offsets_ext4__fallocate_mode {};
+
+struct trace_event_data_offsets_ext4_fallocate_exit {};
+
+struct trace_event_data_offsets_ext4_unlink_enter {};
+
+struct trace_event_data_offsets_ext4_unlink_exit {};
+
+struct trace_event_data_offsets_ext4__truncate {};
+
+struct trace_event_data_offsets_ext4_ext_convert_to_initialized_enter {};
+
+struct trace_event_data_offsets_ext4_ext_convert_to_initialized_fastpath {};
+
+struct trace_event_data_offsets_ext4__map_blocks_enter {};
+
+struct trace_event_data_offsets_ext4__map_blocks_exit {};
+
+struct trace_event_data_offsets_ext4_ext_load_extent {};
+
+struct trace_event_data_offsets_ext4_load_inode {};
+
+struct trace_event_data_offsets_ext4_journal_start {};
+
+struct trace_event_data_offsets_ext4_journal_start_reserved {};
+
+struct trace_event_data_offsets_ext4__trim {};
+
+struct trace_event_data_offsets_ext4_ext_handle_unwritten_extents {};
+
+struct trace_event_data_offsets_ext4_get_implied_cluster_alloc_exit {};
+
+struct trace_event_data_offsets_ext4_ext_show_extent {};
+
+struct trace_event_data_offsets_ext4_remove_blocks {};
+
+struct trace_event_data_offsets_ext4_ext_rm_leaf {};
+
+struct trace_event_data_offsets_ext4_ext_rm_idx {};
+
+struct trace_event_data_offsets_ext4_ext_remove_space {};
+
+struct trace_event_data_offsets_ext4_ext_remove_space_done {};
+
+struct trace_event_data_offsets_ext4__es_extent {};
+
+struct trace_event_data_offsets_ext4_es_remove_extent {};
+
+struct trace_event_data_offsets_ext4_es_find_extent_range_enter {};
+
+struct trace_event_data_offsets_ext4_es_find_extent_range_exit {};
+
+struct trace_event_data_offsets_ext4_es_lookup_extent_enter {};
+
+struct trace_event_data_offsets_ext4_es_lookup_extent_exit {};
+
+struct trace_event_data_offsets_ext4__es_shrink_enter {};
+
+struct trace_event_data_offsets_ext4_es_shrink_scan_exit {};
+
+struct trace_event_data_offsets_ext4_collapse_range {};
+
+struct trace_event_data_offsets_ext4_insert_range {};
+
+struct trace_event_data_offsets_ext4_es_shrink {};
+
+struct trace_event_data_offsets_ext4_es_insert_delayed_block {};
+
+struct trace_event_data_offsets_ext4_fsmap_class {};
+
+struct trace_event_data_offsets_ext4_getfsmap_class {};
+
+struct trace_event_data_offsets_ext4_shutdown {};
+
+struct trace_event_data_offsets_ext4_error {};
+
+struct trace_event_data_offsets_ext4_prefetch_bitmaps {};
+
+struct trace_event_data_offsets_ext4_lazy_itable_init {};
+
+struct trace_event_data_offsets_ext4_fc_replay_scan {};
+
+struct trace_event_data_offsets_ext4_fc_replay {};
+
+struct trace_event_data_offsets_ext4_fc_commit_start {};
+
+struct trace_event_data_offsets_ext4_fc_commit_stop {};
+
+struct trace_event_data_offsets_ext4_fc_stats {};
+
+struct trace_event_data_offsets_ext4_fc_track_create {};
+
+struct trace_event_data_offsets_ext4_fc_track_link {};
+
+struct trace_event_data_offsets_ext4_fc_track_unlink {};
+
+struct trace_event_data_offsets_ext4_fc_track_inode {};
+
+struct trace_event_data_offsets_ext4_fc_track_range {};
+
+typedef void (*btf_trace_ext4_other_inode_update_time)(void *, struct inode *, ino_t);
+
+typedef void (*btf_trace_ext4_free_inode)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_request_inode)(void *, struct inode *, int);
+
+typedef void (*btf_trace_ext4_allocate_inode)(void *, struct inode *, struct inode *, int);
+
+typedef void (*btf_trace_ext4_evict_inode)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_drop_inode)(void *, struct inode *, int);
+
+typedef void (*btf_trace_ext4_nfs_commit_metadata)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_mark_inode_dirty)(void *, struct inode *, long unsigned int);
+
+typedef void (*btf_trace_ext4_begin_ordered_truncate)(void *, struct inode *, loff_t);
+
+typedef void (*btf_trace_ext4_write_begin)(void *, struct inode *, loff_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_da_write_begin)(void *, struct inode *, loff_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_write_end)(void *, struct inode *, loff_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_journalled_write_end)(void *, struct inode *, loff_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_da_write_end)(void *, struct inode *, loff_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_writepages)(void *, struct inode *, struct writeback_control *);
+
+typedef void (*btf_trace_ext4_da_write_pages)(void *, struct inode *, long unsigned int, struct writeback_control *);
+
+typedef void (*btf_trace_ext4_da_write_pages_extent)(void *, struct inode *, struct ext4_map_blocks *);
+
+typedef void (*btf_trace_ext4_writepages_result)(void *, struct inode *, struct writeback_control *, int, int);
+
+typedef void (*btf_trace_ext4_writepage)(void *, struct page *);
+
+typedef void (*btf_trace_ext4_readpage)(void *, struct page *);
+
+typedef void (*btf_trace_ext4_releasepage)(void *, struct page *);
+
+typedef void (*btf_trace_ext4_invalidatepage)(void *, struct page *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_journalled_invalidatepage)(void *, struct page *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_discard_blocks)(void *, struct super_block *, long long unsigned int, long long unsigned int);
+
+typedef void (*btf_trace_ext4_mb_new_inode_pa)(void *, struct ext4_allocation_context *, struct ext4_prealloc_space *);
+
+typedef void (*btf_trace_ext4_mb_new_group_pa)(void *, struct ext4_allocation_context *, struct ext4_prealloc_space *);
+
+typedef void (*btf_trace_ext4_mb_release_inode_pa)(void *, struct ext4_prealloc_space *, long long unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_mb_release_group_pa)(void *, struct super_block *, struct ext4_prealloc_space *);
+
+typedef void (*btf_trace_ext4_discard_preallocations)(void *, struct inode *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_mb_discard_preallocations)(void *, struct super_block *, int);
+
+typedef void (*btf_trace_ext4_request_blocks)(void *, struct ext4_allocation_request *);
+
+typedef void (*btf_trace_ext4_allocate_blocks)(void *, struct ext4_allocation_request *, long long unsigned int);
+
+typedef void (*btf_trace_ext4_free_blocks)(void *, struct inode *, __u64, long unsigned int, int);
+
+typedef void (*btf_trace_ext4_sync_file_enter)(void *, struct file *, int);
+
+typedef void (*btf_trace_ext4_sync_file_exit)(void *, struct inode *, int);
+
+typedef void (*btf_trace_ext4_sync_fs)(void *, struct super_block *, int);
+
+typedef void (*btf_trace_ext4_alloc_da_blocks)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_mballoc_alloc)(void *, struct ext4_allocation_context *);
+
+typedef void (*btf_trace_ext4_mballoc_prealloc)(void *, struct ext4_allocation_context *);
+
+typedef void (*btf_trace_ext4_mballoc_discard)(void *, struct super_block *, struct inode *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
+
+typedef void (*btf_trace_ext4_mballoc_free)(void *, struct super_block *, struct inode *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
+
+typedef void (*btf_trace_ext4_forget)(void *, struct inode *, int, __u64);
+
+typedef void (*btf_trace_ext4_da_update_reserve_space)(void *, struct inode *, int, int);
+
+typedef void (*btf_trace_ext4_da_reserve_space)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_da_release_space)(void *, struct inode *, int);
+
+typedef void (*btf_trace_ext4_mb_bitmap_load)(void *, struct super_block *, long unsigned int);
+
+typedef void (*btf_trace_ext4_mb_buddy_bitmap_load)(void *, struct super_block *, long unsigned int);
+
+typedef void (*btf_trace_ext4_load_inode_bitmap)(void *, struct super_block *, long unsigned int);
+
+typedef void (*btf_trace_ext4_read_block_bitmap_load)(void *, struct super_block *, long unsigned int, bool);
+
+typedef void (*btf_trace_ext4_fallocate_enter)(void *, struct inode *, loff_t, loff_t, int);
+
+typedef void (*btf_trace_ext4_punch_hole)(void *, struct inode *, loff_t, loff_t, int);
+
+typedef void (*btf_trace_ext4_zero_range)(void *, struct inode *, loff_t, loff_t, int);
+
+typedef void (*btf_trace_ext4_fallocate_exit)(void *, struct inode *, loff_t, unsigned int, int);
+
+typedef void (*btf_trace_ext4_unlink_enter)(void *, struct inode *, struct dentry *);
+
+typedef void (*btf_trace_ext4_unlink_exit)(void *, struct dentry *, int);
+
+typedef void (*btf_trace_ext4_truncate_enter)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_truncate_exit)(void *, struct inode *);
+
+typedef void (*btf_trace_ext4_ext_convert_to_initialized_enter)(void *, struct inode *, struct ext4_map_blocks *, struct ext4_extent *);
+
+typedef void (*btf_trace_ext4_ext_convert_to_initialized_fastpath)(void *, struct inode *, struct ext4_map_blocks *, struct ext4_extent *, struct ext4_extent *);
+
+typedef void (*btf_trace_ext4_ext_map_blocks_enter)(void *, struct inode *, ext4_lblk_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_ind_map_blocks_enter)(void *, struct inode *, ext4_lblk_t, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ext4_ext_map_blocks_exit)(void *, struct inode *, unsigned int, struct ext4_map_blocks *, int);
+
+typedef void (*btf_trace_ext4_ind_map_blocks_exit)(void *, struct inode *, unsigned int, struct ext4_map_blocks *, int);
+
+typedef void (*btf_trace_ext4_ext_load_extent)(void *, struct inode *, ext4_lblk_t, ext4_fsblk_t);
+
+typedef void (*btf_trace_ext4_load_inode)(void *, struct super_block *, long unsigned int);
+
+typedef void (*btf_trace_ext4_journal_start)(void *, struct super_block *, int, int, int, long unsigned int);
+
+typedef void (*btf_trace_ext4_journal_start_reserved)(void *, struct super_block *, int, long unsigned int);
+
+typedef void (*btf_trace_ext4_trim_extent)(void *, struct super_block *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
+
+typedef void (*btf_trace_ext4_trim_all_free)(void *, struct super_block *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
+
+typedef void (*btf_trace_ext4_ext_handle_unwritten_extents)(void *, struct inode *, struct ext4_map_blocks *, int, unsigned int, ext4_fsblk_t);
+
+typedef void (*btf_trace_ext4_get_implied_cluster_alloc_exit)(void *, struct super_block *, struct ext4_map_blocks *, int);
+
+typedef void (*btf_trace_ext4_ext_show_extent)(void *, struct inode *, ext4_lblk_t, ext4_fsblk_t, short unsigned int);
+
+typedef void (*btf_trace_ext4_remove_blocks)(void *, struct inode *, struct ext4_extent *, ext4_lblk_t, ext4_fsblk_t, struct partial_cluster *);
+
+typedef void (*btf_trace_ext4_ext_rm_leaf)(void *, struct inode *, ext4_lblk_t, struct ext4_extent *, struct partial_cluster *);
+
+typedef void (*btf_trace_ext4_ext_rm_idx)(void *, struct inode *, ext4_fsblk_t);
+
+typedef void (*btf_trace_ext4_ext_remove_space)(void *, struct inode *, ext4_lblk_t, ext4_lblk_t, int);
+
+typedef void (*btf_trace_ext4_ext_remove_space_done)(void *, struct inode *, ext4_lblk_t, ext4_lblk_t, int, struct partial_cluster *, __le16);
+
+typedef void (*btf_trace_ext4_es_insert_extent)(void *, struct inode *, struct extent_status *);
+
+typedef void (*btf_trace_ext4_es_cache_extent)(void *, struct inode *, struct extent_status *);
+
+typedef void (*btf_trace_ext4_es_remove_extent)(void *, struct inode *, ext4_lblk_t, ext4_lblk_t);
+
+typedef void (*btf_trace_ext4_es_find_extent_range_enter)(void *, struct inode *, ext4_lblk_t);
+
+typedef void (*btf_trace_ext4_es_find_extent_range_exit)(void *, struct inode *, struct extent_status *);
+
+typedef void (*btf_trace_ext4_es_lookup_extent_enter)(void *, struct inode *, ext4_lblk_t);
+
+typedef void (*btf_trace_ext4_es_lookup_extent_exit)(void *, struct inode *, struct extent_status *, int);
+
+typedef void (*btf_trace_ext4_es_shrink_count)(void *, struct super_block *, int, int);
+
+typedef void (*btf_trace_ext4_es_shrink_scan_enter)(void *, struct super_block *, int, int);
+
+typedef void (*btf_trace_ext4_es_shrink_scan_exit)(void *, struct super_block *, int, int);
+
+typedef void (*btf_trace_ext4_collapse_range)(void *, struct inode *, loff_t, loff_t);
+
+typedef void (*btf_trace_ext4_insert_range)(void *, struct inode *, loff_t, loff_t);
+
+typedef void (*btf_trace_ext4_es_shrink)(void *, struct super_block *, int, u64, int, int);
+
+typedef void (*btf_trace_ext4_es_insert_delayed_block)(void *, struct inode *, struct extent_status *, bool);
+
+typedef void (*btf_trace_ext4_fsmap_low_key)(void *, struct super_block *, u32, u32, u64, u64, u64);
+
+typedef void (*btf_trace_ext4_fsmap_high_key)(void *, struct super_block *, u32, u32, u64, u64, u64);
+
+typedef void (*btf_trace_ext4_fsmap_mapping)(void *, struct super_block *, u32, u32, u64, u64, u64);
+
+typedef void (*btf_trace_ext4_getfsmap_low_key)(void *, struct super_block *, struct ext4_fsmap *);
+
+typedef void (*btf_trace_ext4_getfsmap_high_key)(void *, struct super_block *, struct ext4_fsmap *);
+
+typedef void (*btf_trace_ext4_getfsmap_mapping)(void *, struct super_block *, struct ext4_fsmap *);
+
+typedef void (*btf_trace_ext4_shutdown)(void *, struct super_block *, long unsigned int);
+
+typedef void (*btf_trace_ext4_error)(void *, struct super_block *, const char *, unsigned int);
+
+typedef void (*btf_trace_ext4_prefetch_bitmaps)(void *, struct super_block *, ext4_group_t, ext4_group_t, unsigned int);
+
+typedef void (*btf_trace_ext4_lazy_itable_init)(void *, struct super_block *, ext4_group_t);
+
+typedef void (*btf_trace_ext4_fc_replay_scan)(void *, struct super_block *, int, int);
+
+typedef void (*btf_trace_ext4_fc_replay)(void *, struct super_block *, int, int, int, int);
+
+typedef void (*btf_trace_ext4_fc_commit_start)(void *, struct super_block *);
+
+typedef void (*btf_trace_ext4_fc_commit_stop)(void *, struct super_block *, int, int);
+
+typedef void (*btf_trace_ext4_fc_stats)(void *, struct super_block *);
+
+typedef void (*btf_trace_ext4_fc_track_create)(void *, struct inode *, struct dentry *, int);
+
+typedef void (*btf_trace_ext4_fc_track_link)(void *, struct inode *, struct dentry *, int);
+
+typedef void (*btf_trace_ext4_fc_track_unlink)(void *, struct inode *, struct dentry *, int);
+
+typedef void (*btf_trace_ext4_fc_track_inode)(void *, struct inode *, int);
+
+typedef void (*btf_trace_ext4_fc_track_range)(void *, struct inode *, long int, long int, int);
+
+struct ext4_err_translation {
+	int code;
+	int errno;
+};
+
+enum {
+	Opt_bsd_df = 0,
+	Opt_minix_df = 1,
+	Opt_grpid = 2,
+	Opt_nogrpid = 3,
+	Opt_resgid = 4,
+	Opt_resuid = 5,
+	Opt_sb = 6,
+	Opt_err_cont = 7,
+	Opt_err_panic = 8,
+	Opt_err_ro = 9,
+	Opt_nouid32 = 10,
+	Opt_debug = 11,
+	Opt_removed = 12,
+	Opt_user_xattr = 13,
+	Opt_nouser_xattr = 14,
+	Opt_acl = 15,
+	Opt_noacl = 16,
+	Opt_auto_da_alloc = 17,
+	Opt_noauto_da_alloc = 18,
+	Opt_noload = 19,
+	Opt_commit = 20,
+	Opt_min_batch_time = 21,
+	Opt_max_batch_time = 22,
+	Opt_journal_dev = 23,
+	Opt_journal_path = 24,
+	Opt_journal_checksum = 25,
+	Opt_journal_async_commit = 26,
+	Opt_abort = 27,
+	Opt_data_journal = 28,
+	Opt_data_ordered = 29,
+	Opt_data_writeback = 30,
+	Opt_data_err_abort = 31,
+	Opt_data_err_ignore = 32,
+	Opt_test_dummy_encryption = 33,
+	Opt_inlinecrypt = 34,
+	Opt_usrjquota = 35,
+	Opt_grpjquota = 36,
+	Opt_offusrjquota = 37,
+	Opt_offgrpjquota = 38,
+	Opt_jqfmt_vfsold = 39,
+	Opt_jqfmt_vfsv0 = 40,
+	Opt_jqfmt_vfsv1 = 41,
+	Opt_quota = 42,
+	Opt_noquota = 43,
+	Opt_barrier = 44,
+	Opt_nobarrier = 45,
+	Opt_err___2 = 46,
+	Opt_usrquota = 47,
+	Opt_grpquota = 48,
+	Opt_prjquota = 49,
+	Opt_i_version = 50,
+	Opt_dax = 51,
+	Opt_dax_always = 52,
+	Opt_dax_inode = 53,
+	Opt_dax_never = 54,
+	Opt_stripe = 55,
+	Opt_delalloc = 56,
+	Opt_nodelalloc = 57,
+	Opt_warn_on_error = 58,
+	Opt_nowarn_on_error = 59,
+	Opt_mblk_io_submit = 60,
+	Opt_lazytime = 61,
+	Opt_nolazytime = 62,
+	Opt_debug_want_extra_isize = 63,
+	Opt_nomblk_io_submit = 64,
+	Opt_block_validity = 65,
+	Opt_noblock_validity = 66,
+	Opt_inode_readahead_blks = 67,
+	Opt_journal_ioprio = 68,
+	Opt_dioread_nolock = 69,
+	Opt_dioread_lock = 70,
+	Opt_discard = 71,
+	Opt_nodiscard = 72,
+	Opt_init_itable = 73,
+	Opt_noinit_itable = 74,
+	Opt_max_dir_size_kb = 75,
+	Opt_nojournal_checksum = 76,
+	Opt_nombcache = 77,
+	Opt_no_prefetch_block_bitmaps = 78,
+	Opt_mb_optimize_scan = 79,
+};
+
+struct mount_opts {
+	int token;
+	int mount_opt;
+	int flags;
+};
+
+struct ext4_sb_encodings {
+	__u16 magic;
+	char *name;
+	char *version;
+};
+
+struct ext4_parsed_options {
+	long unsigned int journal_devnum;
+	unsigned int journal_ioprio;
+	int mb_optimize_scan;
+};
+
+struct ext4_mount_options {
+	long unsigned int s_mount_opt;
+	long unsigned int s_mount_opt2;
+	kuid_t s_resuid;
+	kgid_t s_resgid;
+	long unsigned int s_commit_interval;
+	u32 s_min_batch_time;
+	u32 s_max_batch_time;
+	int s_jquota_fmt;
+	char *s_qf_names[3];
+};
+
+enum {
+	attr_noop = 0,
+	attr_delayed_allocation_blocks = 1,
+	attr_session_write_kbytes = 2,
+	attr_lifetime_write_kbytes = 3,
+	attr_reserved_clusters = 4,
+	attr_sra_exceeded_retry_limit = 5,
+	attr_inode_readahead = 6,
+	attr_trigger_test_error = 7,
+	attr_first_error_time = 8,
+	attr_last_error_time = 9,
+	attr_feature = 10,
+	attr_pointer_ui = 11,
+	attr_pointer_ul = 12,
+	attr_pointer_u64 = 13,
+	attr_pointer_u8 = 14,
+	attr_pointer_string = 15,
+	attr_pointer_atomic = 16,
+	attr_journal_task = 17,
+};
+
+enum {
+	ptr_explicit = 0,
+	ptr_ext4_sb_info_offset = 1,
+	ptr_ext4_super_block_offset = 2,
+};
+
+struct ext4_attr {
+	struct attribute attr;
+	short int attr_id;
+	short int attr_ptr;
+	short unsigned int attr_size;
+	union {
+		int offset;
+		void *explicit_ptr;
+	} u;
+};
+
+struct ext4_xattr_header {
+	__le32 h_magic;
+	__le32 h_refcount;
+	__le32 h_blocks;
+	__le32 h_hash;
+	__le32 h_checksum;
+	__u32 h_reserved[3];
+};
+
+struct ext4_xattr_block_find {
+	struct ext4_xattr_search s;
+	struct buffer_head *bh;
+};
+
+struct ext4_fc_tl {
+	__le16 fc_tag;
+	__le16 fc_len;
+};
+
+struct ext4_fc_head {
+	__le32 fc_features;
+	__le32 fc_tid;
+};
+
+struct ext4_fc_add_range {
+	__le32 fc_ino;
+	__u8 fc_ex[12];
+};
+
+struct ext4_fc_del_range {
+	__le32 fc_ino;
+	__le32 fc_lblk;
+	__le32 fc_len;
+};
+
+struct ext4_fc_dentry_info {
+	__le32 fc_parent_ino;
+	__le32 fc_ino;
+	__u8 fc_dname[0];
+};
+
+struct ext4_fc_inode {
+	__le32 fc_ino;
+	__u8 fc_raw_inode[0];
+};
+
+struct ext4_fc_tail {
+	__le32 fc_tid;
+	__le32 fc_crc;
+};
+
+enum {
+	EXT4_FC_STATUS_OK = 0,
+	EXT4_FC_STATUS_INELIGIBLE = 1,
+	EXT4_FC_STATUS_SKIPPED = 2,
+	EXT4_FC_STATUS_FAILED = 3,
+};
+
+struct ext4_fc_dentry_update {
+	int fcd_op;
+	int fcd_parent;
+	int fcd_ino;
+	struct qstr fcd_name;
+	unsigned char fcd_iname[32];
+	struct list_head fcd_list;
+};
+
+struct __track_dentry_update_args {
+	struct dentry *dentry;
+	int op;
+};
+
+struct __track_range_args {
+	ext4_lblk_t start;
+	ext4_lblk_t end;
+};
+
+struct dentry_info_args {
+	int parent_ino;
+	int dname_len;
+	int ino;
+	int inode_len;
+	char *dname;
+};
+
+struct ext4_fc_tl_mem {
+	u16 fc_tag;
+	u16 fc_len;
+};
+
+struct ext4_orphan_block_tail {
+	__le32 ob_magic;
+	__le32 ob_checksum;
+};
+
+typedef struct {
+	__le16 e_tag;
+	__le16 e_perm;
+	__le32 e_id;
+} ext4_acl_entry;
+
+typedef struct {
+	__le32 a_version;
+} ext4_acl_header;
+
+struct commit_header {
+	__be32 h_magic;
+	__be32 h_blocktype;
+	__be32 h_sequence;
+	unsigned char h_chksum_type;
+	unsigned char h_chksum_size;
+	unsigned char h_padding[2];
+	__be32 h_chksum[8];
+	__be64 h_commit_sec;
+	__be32 h_commit_nsec;
+};
+
+struct journal_block_tag3_s {
+	__be32 t_blocknr;
+	__be32 t_flags;
+	__be32 t_blocknr_high;
+	__be32 t_checksum;
+};
+
+typedef struct journal_block_tag3_s journal_block_tag3_t;
+
+struct journal_block_tag_s {
+	__be32 t_blocknr;
+	__be16 t_checksum;
+	__be16 t_flags;
+	__be32 t_blocknr_high;
+};
+
+typedef struct journal_block_tag_s journal_block_tag_t;
+
+struct jbd2_journal_block_tail {
+	__be32 t_checksum;
+};
+
+struct jbd2_journal_revoke_header_s {
+	journal_header_t r_header;
+	__be32 r_count;
+};
+
+typedef struct jbd2_journal_revoke_header_s jbd2_journal_revoke_header_t;
+
+struct recovery_info {
+	tid_t start_transaction;
+	tid_t end_transaction;
+	int nr_replays;
+	int nr_revokes;
+	int nr_revoke_hits;
+};
+
+enum shrink_type {
+	SHRINK_DESTROY = 0,
+	SHRINK_BUSY_STOP = 1,
+	SHRINK_BUSY_SKIP = 2,
+};
+
+struct jbd2_revoke_table_s {
+	int hash_size;
+	int hash_shift;
+	struct list_head *hash_table;
+};
+
+struct jbd2_revoke_record_s {
+	struct list_head hash;
+	tid_t sequence;
+	long long unsigned int blocknr;
+};
+
+struct trace_event_raw_jbd2_checkpoint {
+	struct trace_entry ent;
+	dev_t dev;
+	int result;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_commit {
+	struct trace_entry ent;
+	dev_t dev;
+	char sync_commit;
+	tid_t transaction;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_end_commit {
+	struct trace_entry ent;
+	dev_t dev;
+	char sync_commit;
+	tid_t transaction;
+	tid_t head;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_submit_inode_data {
+	struct trace_entry ent;
+	dev_t dev;
+	ino_t ino;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_handle_start_class {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t tid;
+	unsigned int type;
+	unsigned int line_no;
+	int requested_blocks;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_handle_extend {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t tid;
+	unsigned int type;
+	unsigned int line_no;
+	int buffer_credits;
+	int requested_blocks;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_handle_stats {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t tid;
+	unsigned int type;
+	unsigned int line_no;
+	int interval;
+	int sync;
+	int requested_blocks;
+	int dirtied_blocks;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_run_stats {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t tid;
+	long unsigned int wait;
+	long unsigned int request_delay;
+	long unsigned int running;
+	long unsigned int locked;
+	long unsigned int flushing;
+	long unsigned int logging;
+	__u32 handle_count;
+	__u32 blocks;
+	__u32 blocks_logged;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_checkpoint_stats {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t tid;
+	long unsigned int chp_time;
+	__u32 forced_to_close;
+	__u32 written;
+	__u32 dropped;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_update_log_tail {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t tail_sequence;
+	tid_t first_tid;
+	long unsigned int block_nr;
+	long unsigned int freed;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_write_superblock {
+	struct trace_entry ent;
+	dev_t dev;
+	int write_op;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_lock_buffer_stall {
+	struct trace_entry ent;
+	dev_t dev;
+	long unsigned int stall_ms;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_journal_shrink {
+	struct trace_entry ent;
+	dev_t dev;
+	long unsigned int nr_to_scan;
+	long unsigned int count;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_shrink_scan_exit {
+	struct trace_entry ent;
+	dev_t dev;
+	long unsigned int nr_to_scan;
+	long unsigned int nr_shrunk;
+	long unsigned int count;
+	char __data[0];
+};
+
+struct trace_event_raw_jbd2_shrink_checkpoint_list {
+	struct trace_entry ent;
+	dev_t dev;
+	tid_t first_tid;
+	tid_t tid;
+	tid_t last_tid;
+	long unsigned int nr_freed;
+	tid_t next_tid;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_jbd2_checkpoint {};
+
+struct trace_event_data_offsets_jbd2_commit {};
+
+struct trace_event_data_offsets_jbd2_end_commit {};
+
+struct trace_event_data_offsets_jbd2_submit_inode_data {};
+
+struct trace_event_data_offsets_jbd2_handle_start_class {};
+
+struct trace_event_data_offsets_jbd2_handle_extend {};
+
+struct trace_event_data_offsets_jbd2_handle_stats {};
+
+struct trace_event_data_offsets_jbd2_run_stats {};
+
+struct trace_event_data_offsets_jbd2_checkpoint_stats {};
+
+struct trace_event_data_offsets_jbd2_update_log_tail {};
+
+struct trace_event_data_offsets_jbd2_write_superblock {};
+
+struct trace_event_data_offsets_jbd2_lock_buffer_stall {};
+
+struct trace_event_data_offsets_jbd2_journal_shrink {};
+
+struct trace_event_data_offsets_jbd2_shrink_scan_exit {};
+
+struct trace_event_data_offsets_jbd2_shrink_checkpoint_list {};
+
+typedef void (*btf_trace_jbd2_checkpoint)(void *, journal_t *, int);
+
+typedef void (*btf_trace_jbd2_start_commit)(void *, journal_t *, transaction_t *);
+
+typedef void (*btf_trace_jbd2_commit_locking)(void *, journal_t *, transaction_t *);
+
+typedef void (*btf_trace_jbd2_commit_flushing)(void *, journal_t *, transaction_t *);
+
+typedef void (*btf_trace_jbd2_commit_logging)(void *, journal_t *, transaction_t *);
+
+typedef void (*btf_trace_jbd2_drop_transaction)(void *, journal_t *, transaction_t *);
+
+typedef void (*btf_trace_jbd2_end_commit)(void *, journal_t *, transaction_t *);
+
+typedef void (*btf_trace_jbd2_submit_inode_data)(void *, struct inode *);
+
+typedef void (*btf_trace_jbd2_handle_start)(void *, dev_t, tid_t, unsigned int, unsigned int, int);
+
+typedef void (*btf_trace_jbd2_handle_restart)(void *, dev_t, tid_t, unsigned int, unsigned int, int);
+
+typedef void (*btf_trace_jbd2_handle_extend)(void *, dev_t, tid_t, unsigned int, unsigned int, int, int);
+
+typedef void (*btf_trace_jbd2_handle_stats)(void *, dev_t, tid_t, unsigned int, unsigned int, int, int, int, int);
+
+typedef void (*btf_trace_jbd2_run_stats)(void *, dev_t, tid_t, struct transaction_run_stats_s *);
+
+typedef void (*btf_trace_jbd2_checkpoint_stats)(void *, dev_t, tid_t, struct transaction_chp_stats_s *);
+
+typedef void (*btf_trace_jbd2_update_log_tail)(void *, journal_t *, tid_t, long unsigned int, long unsigned int);
+
+typedef void (*btf_trace_jbd2_write_superblock)(void *, journal_t *, int);
+
+typedef void (*btf_trace_jbd2_lock_buffer_stall)(void *, dev_t, long unsigned int);
+
+typedef void (*btf_trace_jbd2_shrink_count)(void *, journal_t *, long unsigned int, long unsigned int);
+
+typedef void (*btf_trace_jbd2_shrink_scan_enter)(void *, journal_t *, long unsigned int, long unsigned int);
+
+typedef void (*btf_trace_jbd2_shrink_scan_exit)(void *, journal_t *, long unsigned int, long unsigned int, long unsigned int);
+
+typedef void (*btf_trace_jbd2_shrink_checkpoint_list)(void *, journal_t *, tid_t, tid_t, tid_t, long unsigned int, tid_t);
+
+struct jbd2_stats_proc_session {
+	journal_t *journal;
+	struct transaction_stats_s *stats;
+	int start;
+	int max;
+};
+
+struct meta_entry {
+	u64 data_block;
+	unsigned int index_block;
+	short unsigned int offset;
+	short unsigned int pad;
+};
+
+struct meta_index {
+	unsigned int inode_number;
+	unsigned int offset;
+	short unsigned int entries;
+	short unsigned int skip;
+	short unsigned int locked;
+	short unsigned int pad;
+	struct meta_entry meta_entry[127];
+};
+
+struct squashfs_cache_entry;
+
+struct squashfs_cache {
+	char *name;
+	int entries;
+	int curr_blk;
+	int next_blk;
+	int num_waiters;
+	int unused;
+	int block_size;
+	int pages;
+	spinlock_t lock;
+	wait_queue_head_t wait_queue;
+	struct squashfs_cache_entry *entry;
+};
+
+struct squashfs_page_actor;
+
+struct squashfs_cache_entry {
+	u64 block;
+	int length;
+	int refcount;
+	u64 next_index;
+	int pending;
+	int error;
+	int num_waiters;
+	wait_queue_head_t wait_queue;
+	struct squashfs_cache *cache;
+	void **data;
+	struct squashfs_page_actor *actor;
+};
+
+struct squashfs_page_actor {
+	union {
+		void **buffer;
+		struct page **page;
+	};
+	void *pageaddr;
+	void * (*squashfs_first_page)(struct squashfs_page_actor *);
+	void * (*squashfs_next_page)(struct squashfs_page_actor *);
+	void (*squashfs_finish_page)(struct squashfs_page_actor *);
+	int pages;
+	int length;
+	int next_page;
+};
+
+struct squashfs_decompressor;
+
+struct squashfs_stream;
+
+struct squashfs_sb_info {
+	const struct squashfs_decompressor *decompressor;
+	int devblksize;
+	int devblksize_log2;
+	struct squashfs_cache *block_cache;
+	struct squashfs_cache *fragment_cache;
+	struct squashfs_cache *read_page;
+	int next_meta_index;
+	__le64 *id_table;
+	__le64 *fragment_index;
+	__le64 *xattr_id_table;
+	struct mutex meta_index_mutex;
+	struct meta_index *meta_index;
+	struct squashfs_stream *stream;
+	__le64 *inode_lookup_table;
+	u64 inode_table;
+	u64 directory_table;
+	u64 xattr_table;
+	unsigned int block_size;
+	short unsigned int block_log;
+	long long int bytes_used;
+	unsigned int inodes;
+	unsigned int fragments;
+	unsigned int xattr_ids;
+	unsigned int ids;
+	bool panic_on_errors;
+};
+
+struct squashfs_decompressor {
+	void * (*init)(struct squashfs_sb_info *, void *);
+	void * (*comp_opts)(struct squashfs_sb_info *, void *, int);
+	void (*free)(void *);
+	int (*decompress)(struct squashfs_sb_info *, void *, struct bio *, int, int, struct squashfs_page_actor *);
+	int id;
+	char *name;
+	int supported;
+};
+
+struct squashfs_dir_index {
+	__le32 index;
+	__le32 start_block;
+	__le32 size;
+	unsigned char name[0];
+};
+
+struct squashfs_dir_entry {
+	__le16 offset;
+	__le16 inode_number;
+	__le16 type;
+	__le16 size;
+	char name[0];
+};
+
+struct squashfs_dir_header {
+	__le32 count;
+	__le32 start_block;
+	__le32 inode_number;
+};
+
+struct squashfs_inode_info {
+	u64 start;
+	int offset;
+	u64 xattr;
+	unsigned int xattr_size;
+	int xattr_count;
+	union {
+		struct {
+			u64 fragment_block;
+			int fragment_size;
+			int fragment_offset;
+			u64 block_list_start;
+		};
+		struct {
+			u64 dir_idx_start;
+			int dir_idx_offset;
+			int dir_idx_cnt;
+			int parent;
+		};
+	};
+	struct inode vfs_inode;
+};
+
+struct squashfs_fragment_entry {
+	__le64 start_block;
+	__le32 size;
+	unsigned int unused;
+};
+
+struct squashfs_base_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+};
+
+struct squashfs_ipc_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 nlink;
+};
+
+struct squashfs_lipc_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 nlink;
+	__le32 xattr;
+};
+
+struct squashfs_dev_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 nlink;
+	__le32 rdev;
+};
+
+struct squashfs_ldev_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 nlink;
+	__le32 rdev;
+	__le32 xattr;
+};
+
+struct squashfs_symlink_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 nlink;
+	__le32 symlink_size;
+	char symlink[0];
+};
+
+struct squashfs_reg_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 start_block;
+	__le32 fragment;
+	__le32 offset;
+	__le32 file_size;
+	__le16 block_list[0];
+};
+
+struct squashfs_lreg_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le64 start_block;
+	__le64 file_size;
+	__le64 sparse;
+	__le32 nlink;
+	__le32 fragment;
+	__le32 offset;
+	__le32 xattr;
+	__le16 block_list[0];
+};
+
+struct squashfs_dir_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 start_block;
+	__le32 nlink;
+	__le16 file_size;
+	__le16 offset;
+	__le32 parent_inode;
+};
+
+struct squashfs_ldir_inode {
+	__le16 inode_type;
+	__le16 mode;
+	__le16 uid;
+	__le16 guid;
+	__le32 mtime;
+	__le32 inode_number;
+	__le32 nlink;
+	__le32 file_size;
+	__le32 start_block;
+	__le32 parent_inode;
+	__le16 i_count;
+	__le16 offset;
+	__le32 xattr;
+	struct squashfs_dir_index index[0];
+};
+
+union squashfs_inode {
+	struct squashfs_base_inode base;
+	struct squashfs_dev_inode dev;
+	struct squashfs_ldev_inode ldev;
+	struct squashfs_symlink_inode symlink;
+	struct squashfs_reg_inode reg;
+	struct squashfs_lreg_inode lreg;
+	struct squashfs_dir_inode dir;
+	struct squashfs_ldir_inode ldir;
+	struct squashfs_ipc_inode ipc;
+	struct squashfs_lipc_inode lipc;
+};
+
+struct squashfs_super_block {
+	__le32 s_magic;
+	__le32 inodes;
+	__le32 mkfs_time;
+	__le32 block_size;
+	__le32 fragments;
+	__le16 compression;
+	__le16 block_log;
+	__le16 flags;
+	__le16 no_ids;
+	__le16 s_major;
+	__le16 s_minor;
+	__le64 root_inode;
+	__le64 bytes_used;
+	__le64 id_table_start;
+	__le64 xattr_id_table_start;
+	__le64 inode_table_start;
+	__le64 directory_table_start;
+	__le64 fragment_table_start;
+	__le64 lookup_table_start;
+};
+
+enum Opt_errors {
+	Opt_errors_continue = 0,
+	Opt_errors_panic = 1,
+};
+
+enum squashfs_param {
+	Opt_errors = 0,
+};
+
+struct squashfs_mount_opts {
+	enum Opt_errors errors;
+};
+
+struct squashfs_stream {
+	void *stream;
+	struct mutex mutex;
+};
+
+struct squashfs_xattr_entry {
+	__le16 type;
+	__le16 size;
+	char data[0];
+};
+
+struct squashfs_xattr_val {
+	__le32 vsize;
+	char value[0];
+};
+
+struct squashfs_xattr_id {
+	__le64 xattr;
+	__le32 count;
+	__le32 size;
+};
+
+struct squashfs_xattr_id_table {
+	__le64 xattr_table_start;
+	__le32 xattr_ids;
+	__le32 unused;
+};
+
+struct lz4_comp_opts {
+	__le32 version;
+	__le32 flags;
+};
+
+struct squashfs_lz4 {
+	void *input;
+	void *output;
+};
+
+struct squashfs_lzo {
+	void *input;
+	void *output;
+};
+
+enum xz_mode {
+	XZ_SINGLE = 0,
+	XZ_PREALLOC = 1,
+	XZ_DYNALLOC = 2,
+};
+
+enum xz_ret {
+	XZ_OK = 0,
+	XZ_STREAM_END = 1,
+	XZ_UNSUPPORTED_CHECK = 2,
+	XZ_MEM_ERROR = 3,
+	XZ_MEMLIMIT_ERROR = 4,
+	XZ_FORMAT_ERROR = 5,
+	XZ_OPTIONS_ERROR = 6,
+	XZ_DATA_ERROR = 7,
+	XZ_BUF_ERROR = 8,
+};
+
+struct xz_buf {
+	const uint8_t *in;
+	size_t in_pos;
+	size_t in_size;
+	uint8_t *out;
+	size_t out_pos;
+	size_t out_size;
+};
+
+struct xz_dec;
+
+struct squashfs_xz {
+	struct xz_dec *state;
+	struct xz_buf buf;
+};
+
+struct disk_comp_opts {
+	__le32 dictionary_size;
+	__le32 flags;
+};
+
+struct comp_opts {
+	int dict_size;
+};
+
+typedef unsigned char Byte;
+
+typedef long unsigned int uLong;
+
+struct internal_state;
+
+struct z_stream_s {
+	const Byte *next_in;
+	uLong avail_in;
+	uLong total_in;
+	Byte *next_out;
+	uLong avail_out;
+	uLong total_out;
+	char *msg;
+	struct internal_state *state;
+	void *workspace;
+	int data_type;
+	uLong adler;
+	uLong reserved;
+};
+
+struct internal_state {
+	int dummy;
+};
+
+typedef struct z_stream_s z_stream;
+
+typedef z_stream *z_streamp;
+
+typedef enum {
+	ZSTD_error_no_error = 0,
+	ZSTD_error_GENERIC = 1,
+	ZSTD_error_prefix_unknown = 2,
+	ZSTD_error_version_unsupported = 3,
+	ZSTD_error_parameter_unknown = 4,
+	ZSTD_error_frameParameter_unsupported = 5,
+	ZSTD_error_frameParameter_unsupportedBy32bits = 6,
+	ZSTD_error_frameParameter_windowTooLarge = 7,
+	ZSTD_error_compressionParameter_unsupported = 8,
+	ZSTD_error_init_missing = 9,
+	ZSTD_error_memory_allocation = 10,
+	ZSTD_error_stage_wrong = 11,
+	ZSTD_error_dstSize_tooSmall = 12,
+	ZSTD_error_srcSize_wrong = 13,
+	ZSTD_error_corruption_detected = 14,
+	ZSTD_error_checksum_wrong = 15,
+	ZSTD_error_tableLog_tooLarge = 16,
+	ZSTD_error_maxSymbolValue_tooLarge = 17,
+	ZSTD_error_maxSymbolValue_tooSmall = 18,
+	ZSTD_error_dictionary_corrupted = 19,
+	ZSTD_error_dictionary_wrong = 20,
+	ZSTD_error_dictionaryCreation_failed = 21,
+	ZSTD_error_maxCode = 22,
+} ZSTD_ErrorCode;
+
+struct ZSTD_inBuffer_s {
+	const void *src;
+	size_t size;
+	size_t pos;
+};
+
+typedef struct ZSTD_inBuffer_s ZSTD_inBuffer;
+
+struct ZSTD_outBuffer_s {
+	void *dst;
+	size_t size;
+	size_t pos;
+};
+
+typedef struct ZSTD_outBuffer_s ZSTD_outBuffer;
+
+typedef struct {
+	long long unsigned int frameContentSize;
+	unsigned int windowSize;
+	unsigned int dictID;
+	unsigned int checksumFlag;
+} ZSTD_frameParams;
+
+typedef enum {
+	zdss_init = 0,
+	zdss_loadHeader = 1,
+	zdss_read = 2,
+	zdss_load = 3,
+	zdss_flush = 4,
+} ZSTD_dStreamStage;
+
+typedef uint8_t BYTE;
+
+typedef void * (*ZSTD_allocFunction)(void *, size_t);
+
+typedef void (*ZSTD_freeFunction)(void *, void *);
+
+typedef struct {
+	ZSTD_allocFunction customAlloc;
+	ZSTD_freeFunction customFree;
+	void *opaque;
+} ZSTD_customMem;
+
+typedef uint32_t U32;
+
+struct ZSTD_DCtx_s;
+
+typedef struct ZSTD_DCtx_s ZSTD_DCtx;
+
+struct ZSTD_DDict_s;
+
+typedef struct ZSTD_DDict_s ZSTD_DDict;
+
+struct ZSTD_DStream_s {
+	ZSTD_DCtx *dctx;
+	ZSTD_DDict *ddictLocal;
+	const ZSTD_DDict *ddict;
+	ZSTD_frameParams fParams;
+	ZSTD_dStreamStage stage;
+	char *inBuff;
+	size_t inBuffSize;
+	size_t inPos;
+	size_t maxWindowSize;
+	char *outBuff;
+	size_t outBuffSize;
+	size_t outStart;
+	size_t outEnd;
+	size_t blockSize;
+	BYTE headerBuffer[18];
+	size_t lhSize;
+	ZSTD_customMem customMem;
+	void *legacyContext;
+	U32 previousLegacyVersion;
+	U32 legacyVersion;
+	U32 hostageByte;
+};
+
+typedef struct ZSTD_DStream_s ZSTD_DStream;
+
+struct workspace {
+	void *mem;
+	size_t mem_size;
+	size_t window_size;
 };
 
 struct ramfs_mount_opts {
@@ -49064,18 +59114,8 @@ enum hugetlb_param {
 	Opt_uid___3 = 6,
 };
 
-struct getdents_callback___2 {
-	struct dir_context ctx;
-	char *name;
-	u64 ino;
-	int found;
-	int sequence;
-};
-
 typedef u16 wchar_t;
 
-typedef u32 unicode_t;
-
 struct nls_table {
 	const char *charset;
 	const char *alias;
@@ -49087,12 +59127,657 @@ struct nls_table {
 	struct nls_table *next;
 };
 
+struct fat_mount_options {
+	kuid_t fs_uid;
+	kgid_t fs_gid;
+	short unsigned int fs_fmask;
+	short unsigned int fs_dmask;
+	short unsigned int codepage;
+	int time_offset;
+	char *iocharset;
+	short unsigned int shortname;
+	unsigned char name_check;
+	unsigned char errors;
+	unsigned char nfs;
+	short unsigned int allow_utime;
+	unsigned int quiet: 1;
+	unsigned int showexec: 1;
+	unsigned int sys_immutable: 1;
+	unsigned int dotsOK: 1;
+	unsigned int isvfat: 1;
+	unsigned int utf8: 1;
+	unsigned int unicode_xlate: 1;
+	unsigned int numtail: 1;
+	unsigned int flush: 1;
+	unsigned int nocase: 1;
+	unsigned int usefree: 1;
+	unsigned int tz_set: 1;
+	unsigned int rodir: 1;
+	unsigned int discard: 1;
+	unsigned int dos1xfloppy: 1;
+};
+
+struct fatent_operations;
+
+struct msdos_sb_info {
+	short unsigned int sec_per_clus;
+	short unsigned int cluster_bits;
+	unsigned int cluster_size;
+	unsigned char fats;
+	unsigned char fat_bits;
+	short unsigned int fat_start;
+	long unsigned int fat_length;
+	long unsigned int dir_start;
+	short unsigned int dir_entries;
+	long unsigned int data_start;
+	long unsigned int max_cluster;
+	long unsigned int root_cluster;
+	long unsigned int fsinfo_sector;
+	struct mutex fat_lock;
+	struct mutex nfs_build_inode_lock;
+	struct mutex s_lock;
+	unsigned int prev_free;
+	unsigned int free_clusters;
+	unsigned int free_clus_valid;
+	struct fat_mount_options options;
+	struct nls_table *nls_disk;
+	struct nls_table *nls_io;
+	const void *dir_ops;
+	int dir_per_block;
+	int dir_per_block_bits;
+	unsigned int vol_id;
+	int fatent_shift;
+	const struct fatent_operations *fatent_ops;
+	struct inode *fat_inode;
+	struct inode *fsinfo_inode;
+	struct ratelimit_state ratelimit;
+	spinlock_t inode_hash_lock;
+	struct hlist_head inode_hashtable[256];
+	spinlock_t dir_hash_lock;
+	struct hlist_head dir_hashtable[256];
+	unsigned int dirty;
+	struct callback_head rcu;
+};
+
+struct fat_entry;
+
+struct fatent_operations {
+	void (*ent_blocknr)(struct super_block *, int, int *, sector_t *);
+	void (*ent_set_ptr)(struct fat_entry *, int);
+	int (*ent_bread)(struct super_block *, struct fat_entry *, int, sector_t);
+	int (*ent_get)(struct fat_entry *);
+	void (*ent_put)(struct fat_entry *, int);
+	int (*ent_next)(struct fat_entry *);
+};
+
+struct msdos_inode_info {
+	spinlock_t cache_lru_lock;
+	struct list_head cache_lru;
+	int nr_caches;
+	unsigned int cache_valid_id;
+	loff_t mmu_private;
+	int i_start;
+	int i_logstart;
+	int i_attrs;
+	loff_t i_pos;
+	struct hlist_node i_fat_hash;
+	struct hlist_node i_dir_hash;
+	struct rw_semaphore truncate_lock;
+	struct inode vfs_inode;
+};
+
+struct fat_entry {
+	int entry;
+	union {
+		u8 *ent12_p[2];
+		__le16 *ent16_p;
+		__le32 *ent32_p;
+	} u;
+	int nr_bhs;
+	struct buffer_head *bhs[2];
+	struct inode *fat_inode;
+};
+
+struct fat_cache {
+	struct list_head cache_list;
+	int nr_contig;
+	int fcluster;
+	int dcluster;
+};
+
+struct fat_cache_id {
+	unsigned int id;
+	int nr_contig;
+	int fcluster;
+	int dcluster;
+};
+
+struct compat_dirent {
+	u32 d_ino;
+	compat_off_t d_off;
+	u16 d_reclen;
+	char d_name[256];
+};
+
 enum utf16_endian {
 	UTF16_HOST_ENDIAN = 0,
 	UTF16_LITTLE_ENDIAN = 1,
 	UTF16_BIG_ENDIAN = 2,
 };
 
+struct __fat_dirent {
+	long int d_ino;
+	__kernel_off_t d_off;
+	short unsigned int d_reclen;
+	char d_name[256];
+};
+
+struct msdos_dir_entry {
+	__u8 name[11];
+	__u8 attr;
+	__u8 lcase;
+	__u8 ctime_cs;
+	__le16 ctime;
+	__le16 cdate;
+	__le16 adate;
+	__le16 starthi;
+	__le16 time;
+	__le16 date;
+	__le16 start;
+	__le32 size;
+};
+
+struct msdos_dir_slot {
+	__u8 id;
+	__u8 name0_4[10];
+	__u8 attr;
+	__u8 reserved;
+	__u8 alias_checksum;
+	__u8 name5_10[12];
+	__le16 start;
+	__u8 name11_12[4];
+};
+
+struct fat_slot_info {
+	loff_t i_pos;
+	loff_t slot_off;
+	int nr_slots;
+	struct msdos_dir_entry *de;
+	struct buffer_head *bh;
+};
+
+typedef long long unsigned int llu;
+
+enum {
+	PARSE_INVALID = 1,
+	PARSE_NOT_LONGNAME = 2,
+	PARSE_EOF = 3,
+};
+
+struct fat_ioctl_filldir_callback {
+	struct dir_context ctx;
+	void *dirent;
+	int result;
+	const char *longname;
+	int long_len;
+	const char *shortname;
+	int short_len;
+};
+
+struct fatent_ra {
+	sector_t cur;
+	sector_t limit;
+	unsigned int ra_blocks;
+	sector_t ra_advance;
+	sector_t ra_next;
+	sector_t ra_limit;
+};
+
+struct fat_boot_sector {
+	__u8 ignored[3];
+	__u8 system_id[8];
+	__u8 sector_size[2];
+	__u8 sec_per_clus;
+	__le16 reserved;
+	__u8 fats;
+	__u8 dir_entries[2];
+	__u8 sectors[2];
+	__u8 media;
+	__le16 fat_length;
+	__le16 secs_track;
+	__le16 heads;
+	__le32 hidden;
+	__le32 total_sect;
+	union {
+		struct {
+			__u8 drive_number;
+			__u8 state;
+			__u8 signature;
+			__u8 vol_id[4];
+			__u8 vol_label[11];
+			__u8 fs_type[8];
+		} fat16;
+		struct {
+			__le32 length;
+			__le16 flags;
+			__u8 version[2];
+			__le32 root_cluster;
+			__le16 info_sector;
+			__le16 backup_boot;
+			__le16 reserved2[6];
+			__u8 drive_number;
+			__u8 state;
+			__u8 signature;
+			__u8 vol_id[4];
+			__u8 vol_label[11];
+			__u8 fs_type[8];
+		} fat32;
+	};
+};
+
+struct fat_boot_fsinfo {
+	__le32 signature1;
+	__le32 reserved1[120];
+	__le32 signature2;
+	__le32 free_clusters;
+	__le32 next_cluster;
+	__le32 reserved2[4];
+};
+
+struct fat_bios_param_block {
+	u16 fat_sector_size;
+	u8 fat_sec_per_clus;
+	u16 fat_reserved;
+	u8 fat_fats;
+	u16 fat_dir_entries;
+	u16 fat_sectors;
+	u16 fat_fat_length;
+	u32 fat_total_sect;
+	u8 fat16_state;
+	u32 fat16_vol_id;
+	u32 fat32_length;
+	u32 fat32_root_cluster;
+	u16 fat32_info_sector;
+	u8 fat32_state;
+	u32 fat32_vol_id;
+};
+
+struct fat_floppy_defaults {
+	unsigned int nr_sectors;
+	unsigned int sec_per_clus;
+	unsigned int dir_entries;
+	unsigned int media;
+	unsigned int fat_length;
+};
+
+enum {
+	Opt_check_n = 0,
+	Opt_check_r = 1,
+	Opt_check_s = 2,
+	Opt_uid___4 = 3,
+	Opt_gid___5 = 4,
+	Opt_umask = 5,
+	Opt_dmask = 6,
+	Opt_fmask = 7,
+	Opt_allow_utime = 8,
+	Opt_codepage = 9,
+	Opt_usefree = 10,
+	Opt_nocase = 11,
+	Opt_quiet = 12,
+	Opt_showexec = 13,
+	Opt_debug___2 = 14,
+	Opt_immutable = 15,
+	Opt_dots = 16,
+	Opt_nodots = 17,
+	Opt_charset = 18,
+	Opt_shortname_lower = 19,
+	Opt_shortname_win95 = 20,
+	Opt_shortname_winnt = 21,
+	Opt_shortname_mixed = 22,
+	Opt_utf8_no = 23,
+	Opt_utf8_yes = 24,
+	Opt_uni_xl_no = 25,
+	Opt_uni_xl_yes = 26,
+	Opt_nonumtail_no = 27,
+	Opt_nonumtail_yes = 28,
+	Opt_obsolete = 29,
+	Opt_flush = 30,
+	Opt_tz_utc = 31,
+	Opt_rodir = 32,
+	Opt_err_cont___2 = 33,
+	Opt_err_panic___2 = 34,
+	Opt_err_ro___2 = 35,
+	Opt_discard___2 = 36,
+	Opt_nfs = 37,
+	Opt_time_offset = 38,
+	Opt_nfs_stale_rw = 39,
+	Opt_nfs_nostale_ro = 40,
+	Opt_err___3 = 41,
+	Opt_dos1xfloppy = 42,
+};
+
+struct fat_fid {
+	u32 i_gen;
+	u32 i_pos_low;
+	u16 i_pos_hi;
+	u16 parent_i_pos_hi;
+	u32 parent_i_pos_low;
+	u32 parent_i_gen;
+};
+
+struct shortname_info {
+	unsigned char lower: 1;
+	unsigned char upper: 1;
+	unsigned char valid: 1;
+};
+
+struct ecryptfs_mount_crypt_stat;
+
+struct ecryptfs_crypt_stat {
+	u32 flags;
+	unsigned int file_version;
+	size_t iv_bytes;
+	size_t metadata_size;
+	size_t extent_size;
+	size_t key_size;
+	size_t extent_shift;
+	unsigned int extent_mask;
+	struct ecryptfs_mount_crypt_stat *mount_crypt_stat;
+	struct crypto_skcipher *tfm;
+	struct crypto_shash *hash_tfm;
+	unsigned char cipher[32];
+	unsigned char key[64];
+	unsigned char root_iv[16];
+	struct list_head keysig_list;
+	struct mutex keysig_list_mutex;
+	struct mutex cs_tfm_mutex;
+	struct mutex cs_mutex;
+};
+
+struct ecryptfs_mount_crypt_stat {
+	u32 flags;
+	struct list_head global_auth_tok_list;
+	struct mutex global_auth_tok_list_mutex;
+	size_t global_default_cipher_key_size;
+	size_t global_default_fn_cipher_key_bytes;
+	unsigned char global_default_cipher_name[32];
+	unsigned char global_default_fn_cipher_name[32];
+	char global_default_fnek_sig[17];
+};
+
+struct ecryptfs_inode_info {
+	struct inode vfs_inode;
+	struct inode *wii_inode;
+	struct mutex lower_file_mutex;
+	atomic_t lower_file_count;
+	struct file *lower_file;
+	struct ecryptfs_crypt_stat crypt_stat;
+};
+
+struct ecryptfs_dentry_info {
+	struct path lower_path;
+	struct callback_head rcu;
+};
+
+struct ecryptfs_sb_info {
+	struct super_block *wsi_sb;
+	struct ecryptfs_mount_crypt_stat mount_crypt_stat;
+};
+
+struct ecryptfs_file_info {
+	struct file *wfi_file;
+	struct ecryptfs_crypt_stat *crypt_stat;
+};
+
+struct ecryptfs_getdents_callback {
+	struct dir_context ctx;
+	struct dir_context *caller;
+	struct super_block *sb;
+	int filldir_called;
+	int entries_written;
+};
+
+struct ecryptfs_session_key {
+	u32 flags;
+	u32 encrypted_key_size;
+	u32 decrypted_key_size;
+	u8 encrypted_key[512];
+	u8 decrypted_key[64];
+};
+
+struct ecryptfs_password {
+	u32 password_bytes;
+	s32 hash_algo;
+	u32 hash_iterations;
+	u32 session_key_encryption_key_bytes;
+	u32 flags;
+	u8 session_key_encryption_key[64];
+	u8 signature[17];
+	u8 salt[8];
+};
+
+struct ecryptfs_private_key {
+	u32 key_size;
+	u32 data_len;
+	u8 signature[17];
+	char pki_type[17];
+	u8 data[0];
+};
+
+struct ecryptfs_auth_tok {
+	u16 version;
+	u16 token_type;
+	u32 flags;
+	struct ecryptfs_session_key session_key;
+	u8 reserved[32];
+	union {
+		struct ecryptfs_password password;
+		struct ecryptfs_private_key private_key;
+	} token;
+};
+
+struct ecryptfs_global_auth_tok {
+	u32 flags;
+	struct list_head mount_crypt_stat_list;
+	struct key *global_auth_tok_key;
+	unsigned char sig[17];
+};
+
+struct ecryptfs_key_tfm {
+	struct crypto_skcipher *key_tfm;
+	size_t key_size;
+	struct mutex key_tfm_mutex;
+	struct list_head key_tfm_list;
+	unsigned char cipher_name[32];
+};
+
+enum {
+	ecryptfs_opt_sig = 0,
+	ecryptfs_opt_ecryptfs_sig = 1,
+	ecryptfs_opt_cipher = 2,
+	ecryptfs_opt_ecryptfs_cipher = 3,
+	ecryptfs_opt_ecryptfs_key_bytes = 4,
+	ecryptfs_opt_passthrough = 5,
+	ecryptfs_opt_xattr_metadata = 6,
+	ecryptfs_opt_encrypted_view = 7,
+	ecryptfs_opt_fnek_sig = 8,
+	ecryptfs_opt_fn_cipher = 9,
+	ecryptfs_opt_fn_cipher_key_bytes = 10,
+	ecryptfs_opt_unlink_sigs = 11,
+	ecryptfs_opt_mount_auth_tok_only = 12,
+	ecryptfs_opt_check_dev_ruid = 13,
+	ecryptfs_opt_err = 14,
+};
+
+struct ecryptfs_cache_info {
+	struct kmem_cache **cache;
+	const char *name;
+	size_t size;
+	slab_flags_t flags;
+	void (*ctor)(void *);
+};
+
+struct ecryptfs_key_sig {
+	struct list_head crypt_stat_list;
+	char keysig[17];
+};
+
+struct ecryptfs_filename {
+	struct list_head crypt_stat_list;
+	u32 flags;
+	u32 seq_no;
+	char *filename;
+	char *encrypted_filename;
+	size_t filename_size;
+	size_t encrypted_filename_size;
+	char fnek_sig[16];
+	char dentry_name[57];
+};
+
+struct extent_crypt_result {
+	struct completion completion;
+	int rc;
+};
+
+struct ecryptfs_flag_map_elem {
+	u32 file_flag;
+	u32 local_flag;
+};
+
+struct ecryptfs_cipher_code_str_map_elem {
+	char cipher_str[16];
+	u8 cipher_code;
+};
+
+struct encrypted_key_payload {
+	struct callback_head rcu;
+	char *format;
+	char *master_desc;
+	char *datalen;
+	u8 *iv;
+	u8 *encrypted_data;
+	short unsigned int datablob_len;
+	short unsigned int decrypted_datalen;
+	short unsigned int payload_datalen;
+	short unsigned int encrypted_key_format;
+	u8 *decrypted_data;
+	u8 payload_data[0];
+};
+
+enum ecryptfs_token_types {
+	ECRYPTFS_PASSWORD = 0,
+	ECRYPTFS_PRIVATE_KEY = 1,
+};
+
+struct ecryptfs_key_record {
+	unsigned char type;
+	size_t enc_key_size;
+	unsigned char sig[8];
+	unsigned char enc_key[512];
+};
+
+struct ecryptfs_auth_tok_list_item {
+	unsigned char encrypted_session_key[64];
+	struct list_head list;
+	struct ecryptfs_auth_tok auth_tok;
+};
+
+struct ecryptfs_message {
+	u32 index;
+	u32 data_len;
+	u8 data[0];
+};
+
+struct ecryptfs_msg_ctx {
+	u8 state;
+	u8 type;
+	u32 index;
+	u32 counter;
+	size_t msg_size;
+	struct ecryptfs_message *msg;
+	struct task_struct *task;
+	struct list_head node;
+	struct list_head daemon_out_list;
+	struct mutex mux;
+};
+
+struct ecryptfs_write_tag_70_packet_silly_stack {
+	u8 cipher_code;
+	size_t max_packet_size;
+	size_t packet_size_len;
+	size_t block_aligned_filename_size;
+	size_t block_size;
+	size_t i;
+	size_t j;
+	size_t num_rand_bytes;
+	struct mutex *tfm_mutex;
+	char *block_aligned_filename;
+	struct ecryptfs_auth_tok *auth_tok;
+	struct scatterlist src_sg[2];
+	struct scatterlist dst_sg[2];
+	struct crypto_skcipher *skcipher_tfm;
+	struct skcipher_request *skcipher_req;
+	char iv[16];
+	char hash[16];
+	char tmp_hash[16];
+	struct crypto_shash *hash_tfm;
+	struct shash_desc *hash_desc;
+};
+
+struct ecryptfs_parse_tag_70_packet_silly_stack {
+	u8 cipher_code;
+	size_t max_packet_size;
+	size_t packet_size_len;
+	size_t parsed_tag_70_packet_size;
+	size_t block_aligned_filename_size;
+	size_t block_size;
+	size_t i;
+	struct mutex *tfm_mutex;
+	char *decrypted_filename;
+	struct ecryptfs_auth_tok *auth_tok;
+	struct scatterlist src_sg[2];
+	struct scatterlist dst_sg[2];
+	struct crypto_skcipher *skcipher_tfm;
+	struct skcipher_request *skcipher_req;
+	char fnek_sig_hex[17];
+	char iv[16];
+	char cipher_string[32];
+};
+
+struct ecryptfs_open_req {
+	struct file **lower_file;
+	struct path path;
+	struct completion done;
+	struct list_head kthread_ctl_list;
+};
+
+struct ecryptfs_kthread_ctl {
+	u32 flags;
+	struct mutex mux;
+	struct list_head req_list;
+	wait_queue_head_t wait;
+};
+
+struct ecryptfs_daemon {
+	u32 flags;
+	u32 num_queued_msg_ctx;
+	struct file *file;
+	struct mutex mux;
+	struct list_head msg_ctx_out_queue;
+	wait_queue_head_t wait;
+	struct hlist_node euid_chain;
+};
+
+struct getdents_callback___2 {
+	struct dir_context ctx;
+	char *name;
+	u64 ino;
+	int found;
+	int sequence;
+};
+
+typedef u32 unicode_t;
+
 struct utf8_table {
 	int cmask;
 	int cval;
@@ -49101,12 +59786,978 @@ struct utf8_table {
 	long int lval;
 };
 
-typedef struct vfsmount * (*debugfs_automount_t)(struct dentry *, void *);
+struct utf8data;
+
+struct utf8cursor {
+	const struct utf8data *data;
+	const char *s;
+	const char *p;
+	const char *ss;
+	const char *sp;
+	unsigned int len;
+	unsigned int slen;
+	short int ccc;
+	short int nccc;
+	unsigned char hangul[12];
+};
+
+struct utf8data {
+	unsigned int maxage;
+	unsigned int offset;
+};
+
+typedef const unsigned char utf8trie_t;
+
+typedef const unsigned char utf8leaf_t;
+
+enum fuse_opcode {
+	FUSE_LOOKUP = 1,
+	FUSE_FORGET = 2,
+	FUSE_GETATTR = 3,
+	FUSE_SETATTR = 4,
+	FUSE_READLINK = 5,
+	FUSE_SYMLINK = 6,
+	FUSE_MKNOD = 8,
+	FUSE_MKDIR = 9,
+	FUSE_UNLINK = 10,
+	FUSE_RMDIR = 11,
+	FUSE_RENAME = 12,
+	FUSE_LINK = 13,
+	FUSE_OPEN = 14,
+	FUSE_READ = 15,
+	FUSE_WRITE = 16,
+	FUSE_STATFS = 17,
+	FUSE_RELEASE = 18,
+	FUSE_FSYNC = 20,
+	FUSE_SETXATTR = 21,
+	FUSE_GETXATTR = 22,
+	FUSE_LISTXATTR = 23,
+	FUSE_REMOVEXATTR = 24,
+	FUSE_FLUSH = 25,
+	FUSE_INIT = 26,
+	FUSE_OPENDIR = 27,
+	FUSE_READDIR = 28,
+	FUSE_RELEASEDIR = 29,
+	FUSE_FSYNCDIR = 30,
+	FUSE_GETLK = 31,
+	FUSE_SETLK = 32,
+	FUSE_SETLKW = 33,
+	FUSE_ACCESS = 34,
+	FUSE_CREATE = 35,
+	FUSE_INTERRUPT = 36,
+	FUSE_BMAP = 37,
+	FUSE_DESTROY = 38,
+	FUSE_IOCTL = 39,
+	FUSE_POLL = 40,
+	FUSE_NOTIFY_REPLY = 41,
+	FUSE_BATCH_FORGET = 42,
+	FUSE_FALLOCATE = 43,
+	FUSE_READDIRPLUS = 44,
+	FUSE_RENAME2 = 45,
+	FUSE_LSEEK = 46,
+	FUSE_COPY_FILE_RANGE = 47,
+	FUSE_SETUPMAPPING = 48,
+	FUSE_REMOVEMAPPING = 49,
+	FUSE_SYNCFS = 50,
+	CUSE_INIT = 4096,
+	CUSE_INIT_BSWAP_RESERVED = 1048576,
+	FUSE_INIT_BSWAP_RESERVED = 436207616,
+};
+
+enum fuse_notify_code {
+	FUSE_NOTIFY_POLL = 1,
+	FUSE_NOTIFY_INVAL_INODE = 2,
+	FUSE_NOTIFY_INVAL_ENTRY = 3,
+	FUSE_NOTIFY_STORE = 4,
+	FUSE_NOTIFY_RETRIEVE = 5,
+	FUSE_NOTIFY_DELETE = 6,
+	FUSE_NOTIFY_CODE_MAX = 7,
+};
+
+struct fuse_forget_in {
+	uint64_t nlookup;
+};
+
+struct fuse_forget_one {
+	uint64_t nodeid;
+	uint64_t nlookup;
+};
+
+struct fuse_batch_forget_in {
+	uint32_t count;
+	uint32_t dummy;
+};
+
+struct fuse_interrupt_in {
+	uint64_t unique;
+};
+
+struct fuse_notify_poll_wakeup_out {
+	uint64_t kh;
+};
+
+struct fuse_in_header {
+	uint32_t len;
+	uint32_t opcode;
+	uint64_t unique;
+	uint64_t nodeid;
+	uint32_t uid;
+	uint32_t gid;
+	uint32_t pid;
+	uint32_t padding;
+};
+
+struct fuse_out_header {
+	uint32_t len;
+	int32_t error;
+	uint64_t unique;
+};
+
+struct fuse_notify_inval_inode_out {
+	uint64_t ino;
+	int64_t off;
+	int64_t len;
+};
+
+struct fuse_notify_inval_entry_out {
+	uint64_t parent;
+	uint32_t namelen;
+	uint32_t padding;
+};
+
+struct fuse_notify_delete_out {
+	uint64_t parent;
+	uint64_t child;
+	uint32_t namelen;
+	uint32_t padding;
+};
+
+struct fuse_notify_store_out {
+	uint64_t nodeid;
+	uint64_t offset;
+	uint32_t size;
+	uint32_t padding;
+};
+
+struct fuse_notify_retrieve_out {
+	uint64_t notify_unique;
+	uint64_t nodeid;
+	uint64_t offset;
+	uint32_t size;
+	uint32_t padding;
+};
+
+struct fuse_notify_retrieve_in {
+	uint64_t dummy1;
+	uint64_t offset;
+	uint32_t size;
+	uint32_t dummy2;
+	uint64_t dummy3;
+	uint64_t dummy4;
+};
+
+struct fuse_forget_link {
+	struct fuse_forget_one forget_one;
+	struct fuse_forget_link *next;
+};
+
+struct fuse_mount;
+
+struct fuse_release_args;
+
+struct fuse_file {
+	struct fuse_mount *fm;
+	struct fuse_release_args *release_args;
+	u64 kh;
+	u64 fh;
+	u64 nodeid;
+	refcount_t count;
+	u32 open_flags;
+	struct list_head write_entry;
+	struct {
+		struct mutex lock;
+		loff_t pos;
+		loff_t cache_off;
+		u64 version;
+	} readdir;
+	struct rb_node polled_node;
+	wait_queue_head_t poll_wait;
+	bool flock: 1;
+};
+
+struct fuse_conn;
+
+struct fuse_mount {
+	struct fuse_conn *fc;
+	struct super_block *sb;
+	struct list_head fc_entry;
+	struct callback_head rcu;
+};
+
+struct fuse_in_arg {
+	unsigned int size;
+	const void *value;
+};
+
+struct fuse_arg {
+	unsigned int size;
+	void *value;
+};
+
+struct fuse_page_desc {
+	unsigned int length;
+	unsigned int offset;
+};
+
+struct fuse_args {
+	uint64_t nodeid;
+	uint32_t opcode;
+	short unsigned int in_numargs;
+	short unsigned int out_numargs;
+	bool force: 1;
+	bool noreply: 1;
+	bool nocreds: 1;
+	bool in_pages: 1;
+	bool out_pages: 1;
+	bool user_pages: 1;
+	bool out_argvar: 1;
+	bool page_zeroing: 1;
+	bool page_replace: 1;
+	bool may_block: 1;
+	struct fuse_in_arg in_args[3];
+	struct fuse_arg out_args[2];
+	void (*end)(struct fuse_mount *, struct fuse_args *, int);
+};
+
+struct fuse_args_pages {
+	struct fuse_args args;
+	struct page **pages;
+	struct fuse_page_desc *descs;
+	unsigned int num_pages;
+};
+
+enum fuse_req_flag {
+	FR_ISREPLY = 0,
+	FR_FORCE = 1,
+	FR_BACKGROUND = 2,
+	FR_WAITING = 3,
+	FR_ABORTED = 4,
+	FR_INTERRUPTED = 5,
+	FR_LOCKED = 6,
+	FR_PENDING = 7,
+	FR_SENT = 8,
+	FR_FINISHED = 9,
+	FR_PRIVATE = 10,
+	FR_ASYNC = 11,
+};
+
+struct fuse_req {
+	struct list_head list;
+	struct list_head intr_entry;
+	struct fuse_args *args;
+	refcount_t count;
+	long unsigned int flags;
+	struct {
+		struct fuse_in_header h;
+	} in;
+	struct {
+		struct fuse_out_header h;
+	} out;
+	wait_queue_head_t waitq;
+	void *argbuf;
+	struct fuse_mount *fm;
+};
+
+struct fuse_iqueue;
+
+struct fuse_iqueue_ops {
+	void (*wake_forget_and_unlock)(struct fuse_iqueue *);
+	void (*wake_interrupt_and_unlock)(struct fuse_iqueue *);
+	void (*wake_pending_and_unlock)(struct fuse_iqueue *);
+	void (*release)(struct fuse_iqueue *);
+};
+
+struct fuse_iqueue {
+	unsigned int connected;
+	spinlock_t lock;
+	wait_queue_head_t waitq;
+	u64 reqctr;
+	struct list_head pending;
+	struct list_head interrupts;
+	struct fuse_forget_link forget_list_head;
+	struct fuse_forget_link *forget_list_tail;
+	int forget_batch;
+	struct fasync_struct *fasync;
+	const struct fuse_iqueue_ops *ops;
+	void *priv;
+};
+
+struct fuse_pqueue {
+	unsigned int connected;
+	spinlock_t lock;
+	struct list_head *processing;
+	struct list_head io;
+};
+
+struct fuse_dev {
+	struct fuse_conn *fc;
+	struct fuse_pqueue pq;
+	struct list_head entry;
+};
+
+struct fuse_conn_dax;
+
+struct fuse_sync_bucket;
+
+struct fuse_conn {
+	spinlock_t lock;
+	refcount_t count;
+	atomic_t dev_count;
+	struct callback_head rcu;
+	kuid_t user_id;
+	kgid_t group_id;
+	struct pid_namespace *pid_ns;
+	struct user_namespace *user_ns;
+	unsigned int max_read;
+	unsigned int max_write;
+	unsigned int max_pages;
+	unsigned int max_pages_limit;
+	struct fuse_iqueue iq;
+	atomic64_t khctr;
+	struct rb_root polled_files;
+	unsigned int max_background;
+	unsigned int congestion_threshold;
+	unsigned int num_background;
+	unsigned int active_background;
+	struct list_head bg_queue;
+	spinlock_t bg_lock;
+	int initialized;
+	int blocked;
+	wait_queue_head_t blocked_waitq;
+	unsigned int connected;
+	bool aborted;
+	unsigned int conn_error: 1;
+	unsigned int conn_init: 1;
+	unsigned int async_read: 1;
+	unsigned int abort_err: 1;
+	unsigned int atomic_o_trunc: 1;
+	unsigned int export_support: 1;
+	unsigned int writeback_cache: 1;
+	unsigned int parallel_dirops: 1;
+	unsigned int handle_killpriv: 1;
+	unsigned int cache_symlinks: 1;
+	unsigned int legacy_opts_show: 1;
+	unsigned int handle_killpriv_v2: 1;
+	unsigned int no_open: 1;
+	unsigned int no_opendir: 1;
+	unsigned int no_fsync: 1;
+	unsigned int no_fsyncdir: 1;
+	unsigned int no_flush: 1;
+	unsigned int no_setxattr: 1;
+	unsigned int setxattr_ext: 1;
+	unsigned int no_getxattr: 1;
+	unsigned int no_listxattr: 1;
+	unsigned int no_removexattr: 1;
+	unsigned int no_lock: 1;
+	unsigned int no_access: 1;
+	unsigned int no_create: 1;
+	unsigned int no_interrupt: 1;
+	unsigned int no_bmap: 1;
+	unsigned int no_poll: 1;
+	unsigned int big_writes: 1;
+	unsigned int dont_mask: 1;
+	unsigned int no_flock: 1;
+	unsigned int no_fallocate: 1;
+	unsigned int no_rename2: 1;
+	unsigned int auto_inval_data: 1;
+	unsigned int explicit_inval_data: 1;
+	unsigned int do_readdirplus: 1;
+	unsigned int readdirplus_auto: 1;
+	unsigned int async_dio: 1;
+	unsigned int no_lseek: 1;
+	unsigned int posix_acl: 1;
+	unsigned int default_permissions: 1;
+	unsigned int allow_other: 1;
+	unsigned int no_copy_file_range: 1;
+	unsigned int destroy: 1;
+	unsigned int delete_stale: 1;
+	unsigned int no_control: 1;
+	unsigned int no_force_umount: 1;
+	unsigned int auto_submounts: 1;
+	unsigned int sync_fs: 1;
+	atomic_t num_waiting;
+	unsigned int minor;
+	struct list_head entry;
+	dev_t dev;
+	struct dentry *ctl_dentry[5];
+	int ctl_ndents;
+	u32 scramble_key[4];
+	atomic64_t attr_version;
+	void (*release)(struct fuse_conn *);
+	struct rw_semaphore killsb;
+	struct list_head devices;
+	struct fuse_conn_dax *dax;
+	struct list_head mounts;
+	struct fuse_sync_bucket *curr_bucket;
+};
+
+struct fuse_sync_bucket {
+	atomic_t count;
+	wait_queue_head_t waitq;
+	struct callback_head rcu;
+};
+
+struct fuse_copy_state {
+	int write;
+	struct fuse_req *req;
+	struct iov_iter *iter;
+	struct pipe_buffer *pipebufs;
+	struct pipe_buffer *currbuf;
+	struct pipe_inode_info *pipe;
+	long unsigned int nr_segs;
+	struct page *pg;
+	unsigned int len;
+	unsigned int offset;
+	unsigned int move_pages: 1;
+};
+
+struct fuse_retrieve_args {
+	struct fuse_args_pages ap;
+	struct fuse_notify_retrieve_in inarg;
+};
+
+struct fuse_attr {
+	uint64_t ino;
+	uint64_t size;
+	uint64_t blocks;
+	uint64_t atime;
+	uint64_t mtime;
+	uint64_t ctime;
+	uint32_t atimensec;
+	uint32_t mtimensec;
+	uint32_t ctimensec;
+	uint32_t mode;
+	uint32_t nlink;
+	uint32_t uid;
+	uint32_t gid;
+	uint32_t rdev;
+	uint32_t blksize;
+	uint32_t flags;
+};
+
+struct fuse_entry_out {
+	uint64_t nodeid;
+	uint64_t generation;
+	uint64_t entry_valid;
+	uint64_t attr_valid;
+	uint32_t entry_valid_nsec;
+	uint32_t attr_valid_nsec;
+	struct fuse_attr attr;
+};
+
+struct fuse_getattr_in {
+	uint32_t getattr_flags;
+	uint32_t dummy;
+	uint64_t fh;
+};
+
+struct fuse_attr_out {
+	uint64_t attr_valid;
+	uint32_t attr_valid_nsec;
+	uint32_t dummy;
+	struct fuse_attr attr;
+};
+
+struct fuse_mknod_in {
+	uint32_t mode;
+	uint32_t rdev;
+	uint32_t umask;
+	uint32_t padding;
+};
+
+struct fuse_mkdir_in {
+	uint32_t mode;
+	uint32_t umask;
+};
+
+struct fuse_rename2_in {
+	uint64_t newdir;
+	uint32_t flags;
+	uint32_t padding;
+};
+
+struct fuse_link_in {
+	uint64_t oldnodeid;
+};
+
+struct fuse_setattr_in {
+	uint32_t valid;
+	uint32_t padding;
+	uint64_t fh;
+	uint64_t size;
+	uint64_t lock_owner;
+	uint64_t atime;
+	uint64_t mtime;
+	uint64_t ctime;
+	uint32_t atimensec;
+	uint32_t mtimensec;
+	uint32_t ctimensec;
+	uint32_t mode;
+	uint32_t unused4;
+	uint32_t uid;
+	uint32_t gid;
+	uint32_t unused5;
+};
+
+struct fuse_create_in {
+	uint32_t flags;
+	uint32_t mode;
+	uint32_t umask;
+	uint32_t open_flags;
+};
+
+struct fuse_open_out {
+	uint64_t fh;
+	uint32_t open_flags;
+	uint32_t padding;
+};
+
+struct fuse_access_in {
+	uint32_t mask;
+	uint32_t padding;
+};
+
+struct fuse_submount_lookup {
+	refcount_t count;
+	u64 nodeid;
+	struct fuse_forget_link *forget;
+};
+
+struct fuse_inode_dax;
+
+struct fuse_inode {
+	struct inode inode;
+	u64 nodeid;
+	u64 nlookup;
+	struct fuse_forget_link *forget;
+	u64 i_time;
+	u32 inval_mask;
+	umode_t orig_i_mode;
+	u64 orig_ino;
+	u64 attr_version;
+	union {
+		struct {
+			struct list_head write_files;
+			struct list_head queued_writes;
+			int writectr;
+			wait_queue_head_t page_waitq;
+			struct rb_root writepages;
+		};
+		struct {
+			bool cached;
+			loff_t size;
+			loff_t pos;
+			u64 version;
+			struct timespec64 mtime;
+			u64 iversion;
+			spinlock_t lock;
+		} rdc;
+	};
+	long unsigned int state;
+	struct mutex mutex;
+	spinlock_t lock;
+	struct fuse_inode_dax *dax;
+	struct fuse_submount_lookup *submount_lookup;
+};
+
+enum {
+	FUSE_I_ADVISE_RDPLUS = 0,
+	FUSE_I_INIT_RDPLUS = 1,
+	FUSE_I_SIZE_UNSTABLE = 2,
+	FUSE_I_BAD = 3,
+};
+
+struct fuse_file_lock {
+	uint64_t start;
+	uint64_t end;
+	uint32_t type;
+	uint32_t pid;
+};
+
+struct fuse_open_in {
+	uint32_t flags;
+	uint32_t open_flags;
+};
+
+struct fuse_release_in {
+	uint64_t fh;
+	uint32_t flags;
+	uint32_t release_flags;
+	uint64_t lock_owner;
+};
+
+struct fuse_flush_in {
+	uint64_t fh;
+	uint32_t unused;
+	uint32_t padding;
+	uint64_t lock_owner;
+};
+
+struct fuse_read_in {
+	uint64_t fh;
+	uint64_t offset;
+	uint32_t size;
+	uint32_t read_flags;
+	uint64_t lock_owner;
+	uint32_t flags;
+	uint32_t padding;
+};
+
+struct fuse_write_in {
+	uint64_t fh;
+	uint64_t offset;
+	uint32_t size;
+	uint32_t write_flags;
+	uint64_t lock_owner;
+	uint32_t flags;
+	uint32_t padding;
+};
+
+struct fuse_write_out {
+	uint32_t size;
+	uint32_t padding;
+};
+
+struct fuse_fsync_in {
+	uint64_t fh;
+	uint32_t fsync_flags;
+	uint32_t padding;
+};
+
+struct fuse_lk_in {
+	uint64_t fh;
+	uint64_t owner;
+	struct fuse_file_lock lk;
+	uint32_t lk_flags;
+	uint32_t padding;
+};
+
+struct fuse_lk_out {
+	struct fuse_file_lock lk;
+};
+
+struct fuse_bmap_in {
+	uint64_t block;
+	uint32_t blocksize;
+	uint32_t padding;
+};
+
+struct fuse_bmap_out {
+	uint64_t block;
+};
+
+struct fuse_poll_in {
+	uint64_t fh;
+	uint64_t kh;
+	uint32_t flags;
+	uint32_t events;
+};
+
+struct fuse_poll_out {
+	uint32_t revents;
+	uint32_t padding;
+};
+
+struct fuse_fallocate_in {
+	uint64_t fh;
+	uint64_t offset;
+	uint64_t length;
+	uint32_t mode;
+	uint32_t padding;
+};
+
+struct fuse_lseek_in {
+	uint64_t fh;
+	uint64_t offset;
+	uint32_t whence;
+	uint32_t padding;
+};
+
+struct fuse_lseek_out {
+	uint64_t offset;
+};
+
+struct fuse_copy_file_range_in {
+	uint64_t fh_in;
+	uint64_t off_in;
+	uint64_t nodeid_out;
+	uint64_t fh_out;
+	uint64_t off_out;
+	uint64_t len;
+	uint64_t flags;
+};
+
+struct fuse_release_args {
+	struct fuse_args args;
+	struct fuse_release_in inarg;
+	struct inode *inode;
+};
+
+struct fuse_io_priv {
+	struct kref refcnt;
+	int async;
+	spinlock_t lock;
+	unsigned int reqs;
+	ssize_t bytes;
+	size_t size;
+	__u64 offset;
+	bool write;
+	bool should_dirty;
+	int err;
+	struct kiocb *iocb;
+	struct completion *done;
+	bool blocking;
+};
+
+struct fuse_io_args {
+	union {
+		struct {
+			struct fuse_read_in in;
+			u64 attr_ver;
+		} read;
+		struct {
+			struct fuse_write_in in;
+			struct fuse_write_out out;
+			bool page_locked;
+		} write;
+	};
+	struct fuse_args_pages ap;
+	struct fuse_io_priv *io;
+	struct fuse_file *ff;
+};
+
+struct fuse_writepage_args {
+	struct fuse_io_args ia;
+	struct rb_node writepages_entry;
+	struct list_head queue_entry;
+	struct fuse_writepage_args *next;
+	struct inode *inode;
+	struct fuse_sync_bucket *bucket;
+};
+
+struct fuse_fill_wb_data {
+	struct fuse_writepage_args *wpa;
+	struct fuse_file *ff;
+	struct inode *inode;
+	struct page **orig_pages;
+	unsigned int max_pages;
+};
+
+struct fuse_kstatfs {
+	uint64_t blocks;
+	uint64_t bfree;
+	uint64_t bavail;
+	uint64_t files;
+	uint64_t ffree;
+	uint32_t bsize;
+	uint32_t namelen;
+	uint32_t frsize;
+	uint32_t padding;
+	uint32_t spare[6];
+};
+
+struct fuse_statfs_out {
+	struct fuse_kstatfs st;
+};
+
+struct fuse_init_in {
+	uint32_t major;
+	uint32_t minor;
+	uint32_t max_readahead;
+	uint32_t flags;
+};
+
+struct fuse_init_out {
+	uint32_t major;
+	uint32_t minor;
+	uint32_t max_readahead;
+	uint32_t flags;
+	uint16_t max_background;
+	uint16_t congestion_threshold;
+	uint32_t max_write;
+	uint32_t time_gran;
+	uint16_t max_pages;
+	uint16_t map_alignment;
+	uint32_t unused[8];
+};
+
+struct fuse_syncfs_in {
+	uint64_t padding;
+};
+
+struct fuse_fs_context {
+	int fd;
+	struct file *file;
+	unsigned int rootmode;
+	kuid_t user_id;
+	kgid_t group_id;
+	bool is_bdev: 1;
+	bool fd_present: 1;
+	bool rootmode_present: 1;
+	bool user_id_present: 1;
+	bool group_id_present: 1;
+	bool default_permissions: 1;
+	bool allow_other: 1;
+	bool destroy: 1;
+	bool no_control: 1;
+	bool no_force_umount: 1;
+	bool legacy_opts_show: 1;
+	bool dax: 1;
+	unsigned int max_read;
+	unsigned int blksize;
+	const char *subtype;
+	struct dax_device *dax_dev;
+	void **fudptr;
+};
+
+enum {
+	OPT_SOURCE = 0,
+	OPT_SUBTYPE = 1,
+	OPT_FD = 2,
+	OPT_ROOTMODE = 3,
+	OPT_USER_ID = 4,
+	OPT_GROUP_ID = 5,
+	OPT_DEFAULT_PERMISSIONS = 6,
+	OPT_ALLOW_OTHER = 7,
+	OPT_MAX_READ = 8,
+	OPT_BLKSIZE = 9,
+	OPT_ERR = 10,
+};
+
+struct fuse_inode_handle {
+	u64 nodeid;
+	u32 generation;
+};
+
+struct fuse_init_args {
+	struct fuse_args args;
+	struct fuse_init_in in;
+	struct fuse_init_out out;
+};
+
+struct fuse_setxattr_in {
+	uint32_t size;
+	uint32_t flags;
+	uint32_t setxattr_flags;
+	uint32_t padding;
+};
+
+struct fuse_getxattr_in {
+	uint32_t size;
+	uint32_t padding;
+};
+
+struct fuse_getxattr_out {
+	uint32_t size;
+	uint32_t padding;
+};
+
+struct fuse_dirent {
+	uint64_t ino;
+	uint64_t off;
+	uint32_t namelen;
+	uint32_t type;
+	char name[0];
+};
+
+struct fuse_direntplus {
+	struct fuse_entry_out entry_out;
+	struct fuse_dirent dirent;
+};
+
+enum fuse_parse_result {
+	FOUND_ERR = 4294967295,
+	FOUND_NONE = 0,
+	FOUND_SOME = 1,
+	FOUND_ALL = 2,
+};
+
+struct fuse_ioctl_in {
+	uint64_t fh;
+	uint32_t flags;
+	uint32_t cmd;
+	uint64_t arg;
+	uint32_t in_size;
+	uint32_t out_size;
+};
+
+struct fuse_ioctl_iovec {
+	uint64_t base;
+	uint64_t len;
+};
+
+struct fuse_ioctl_out {
+	int32_t result;
+	uint32_t flags;
+	uint32_t in_iovs;
+	uint32_t out_iovs;
+};
+
+struct fuse_setupmapping_in {
+	uint64_t fh;
+	uint64_t foffset;
+	uint64_t len;
+	uint64_t flags;
+	uint64_t moffset;
+};
+
+struct fuse_removemapping_in {
+	uint32_t count;
+};
+
+struct fuse_removemapping_one {
+	uint64_t moffset;
+	uint64_t len;
+};
+
+struct fuse_inode_dax {
+	struct rw_semaphore sem;
+	struct rb_root_cached tree;
+	long unsigned int nr;
+};
+
+struct fuse_conn_dax {
+	struct dax_device *dev;
+	spinlock_t lock;
+	long unsigned int nr_busy_ranges;
+	struct list_head busy_ranges;
+	struct delayed_work free_work;
+	wait_queue_head_t range_waitq;
+	long int nr_free_ranges;
+	struct list_head free_ranges;
+	long unsigned int nr_ranges;
+};
+
+struct fuse_dax_mapping {
+	struct inode *inode;
+	struct list_head list;
+	struct interval_tree_node itn;
+	struct list_head busy_list;
+	u64 window_offset;
+	loff_t length;
+	bool writable;
+	refcount_t refcnt;
+};
 
 struct debugfs_fsdata {
 	const struct file_operations *real_fops;
-	refcount_t active_users;
-	struct completion active_users_drained;
+	union {
+		debugfs_automount_t automount;
+		struct {
+			refcount_t active_users;
+			struct completion active_users_drained;
+		};
+	};
 };
 
 struct debugfs_mount_opts {
@@ -49116,10 +60767,10 @@ struct debugfs_mount_opts {
 };
 
 enum {
-	Opt_uid___4 = 0,
-	Opt_gid___5 = 1,
+	Opt_uid___5 = 0,
+	Opt_gid___6 = 1,
 	Opt_mode___5 = 2,
-	Opt_err___2 = 3,
+	Opt_err___4 = 3,
 };
 
 struct debugfs_fs_info {
@@ -49237,7 +60888,11 @@ struct pstore_ftrace_seq_data {
 
 enum {
 	Opt_kmsg_bytes = 0,
-	Opt_err___3 = 1,
+	Opt_err___5 = 1,
+};
+
+struct crypto_comp {
+	struct crypto_tfm base;
 };
 
 struct pstore_zbackend {
@@ -49245,7 +60900,22 @@ struct pstore_zbackend {
 	const char *name;
 };
 
-typedef unsigned int __kernel_mode_t;
+struct efi_variable {
+	efi_char16_t VariableName[512];
+	efi_guid_t VendorGuid;
+	long unsigned int DataSize;
+	__u8 Data[1024];
+	efi_status_t Status;
+	__u32 Attributes;
+} __attribute__((packed));
+
+struct efivar_entry {
+	struct efi_variable var;
+	struct list_head list;
+	struct kobject kobj;
+	bool scanning;
+	bool deleting;
+};
 
 struct ipc64_perm {
 	__kernel_key_t key;
@@ -49391,6 +61061,8 @@ struct msginfo {
 	short unsigned int msgseg;
 };
 
+typedef s32 compat_ssize_t;
+
 typedef u16 compat_ipc_pid_t;
 
 struct compat_msqid64_ds {
@@ -49664,7 +61336,7 @@ struct shmid_kernel {
 	time64_t shm_ctim;
 	struct pid *shm_cprid;
 	struct pid *shm_lprid;
-	struct user_struct *mlock_user;
+	struct ucounts *mlock_ucounts;
 	struct task_struct *shm_creator;
 	struct list_head shm_clist;
 	struct ipc_namespace *ns;
@@ -49750,7 +61422,7 @@ struct mqueue_inode_info {
 	struct pid *notify_owner;
 	u32 notify_self_exec_id;
 	struct user_namespace *notify_user_ns;
-	struct user_struct *user;
+	struct ucounts *ucounts;
 	struct sock *notify_sock;
 	struct sk_buff *notify_cookie;
 	struct ext_wait_queue e_wait_q[2];
@@ -49788,7 +61460,11 @@ enum key_notification_subtype {
 	NOTIFY_KEY_SETATTR = 7,
 };
 
-struct assoc_array_edit;
+struct key_notification {
+	struct watch_notification watch;
+	__u32 key_id;
+	__u32 aux;
+};
 
 struct assoc_array_ops {
 	long unsigned int (*get_key_chunk)(const void *, int);
@@ -49957,11 +61633,419 @@ struct kdf_sdesc {
 };
 
 enum {
-	Opt_err___4 = 0,
+	Opt_err___6 = 0,
 	Opt_enc = 1,
 	Opt_hash = 2,
 };
 
+enum tpm_duration {
+	TPM_SHORT = 0,
+	TPM_MEDIUM = 1,
+	TPM_LONG = 2,
+	TPM_LONG_LONG = 3,
+	TPM_UNDEFINED = 4,
+	TPM_NUM_DURATIONS = 4,
+};
+
+struct trusted_key_payload {
+	struct callback_head rcu;
+	unsigned int key_len;
+	unsigned int blob_len;
+	unsigned char migratable;
+	unsigned char old_format;
+	unsigned char key[129];
+	unsigned char blob[512];
+};
+
+struct trusted_key_ops {
+	unsigned char migratable;
+	int (*init)(void);
+	int (*seal)(struct trusted_key_payload *, char *);
+	int (*unseal)(struct trusted_key_payload *, char *);
+	int (*get_random)(unsigned char *, size_t);
+	void (*exit)(void);
+};
+
+struct trusted_key_source {
+	char *name;
+	struct trusted_key_ops *ops;
+};
+
+enum {
+	Opt_err___7 = 0,
+	Opt_new = 1,
+	Opt_load = 2,
+	Opt_update = 3,
+};
+
+struct hwrng {
+	const char *name;
+	int (*init)(struct hwrng *);
+	void (*cleanup)(struct hwrng *);
+	int (*data_present)(struct hwrng *, int);
+	int (*data_read)(struct hwrng *, u32 *);
+	int (*read)(struct hwrng *, void *, size_t, bool);
+	long unsigned int priv;
+	short unsigned int quality;
+	struct list_head list;
+	struct kref ref;
+	struct completion cleanup_done;
+};
+
+struct tpm_digest {
+	u16 alg_id;
+	u8 digest[64];
+};
+
+struct tpm_bank_info {
+	u16 alg_id;
+	u16 digest_size;
+	u16 crypto_id;
+};
+
+struct tpm_chip;
+
+struct tpm_class_ops {
+	unsigned int flags;
+	const u8 req_complete_mask;
+	const u8 req_complete_val;
+	bool (*req_canceled)(struct tpm_chip *, u8);
+	int (*recv)(struct tpm_chip *, u8 *, size_t);
+	int (*send)(struct tpm_chip *, u8 *, size_t);
+	void (*cancel)(struct tpm_chip *);
+	u8 (*status)(struct tpm_chip *);
+	void (*update_timeouts)(struct tpm_chip *, long unsigned int *);
+	void (*update_durations)(struct tpm_chip *, long unsigned int *);
+	int (*go_idle)(struct tpm_chip *);
+	int (*cmd_ready)(struct tpm_chip *);
+	int (*request_locality)(struct tpm_chip *, int);
+	int (*relinquish_locality)(struct tpm_chip *, int);
+	void (*clk_enable)(struct tpm_chip *, bool);
+};
+
+struct tpm_bios_log {
+	void *bios_event_log;
+	void *bios_event_log_end;
+};
+
+struct tpm_chip_seqops {
+	struct tpm_chip *chip;
+	const struct seq_operations *seqops;
+};
+
+struct tpm_space {
+	u32 context_tbl[3];
+	u8 *context_buf;
+	u32 session_tbl[3];
+	u8 *session_buf;
+	u32 buf_size;
+};
+
+struct tpm_chip {
+	struct device dev;
+	struct device devs;
+	struct cdev cdev;
+	struct cdev cdevs;
+	struct rw_semaphore ops_sem;
+	const struct tpm_class_ops *ops;
+	struct tpm_bios_log log;
+	struct tpm_chip_seqops bin_log_seqops;
+	struct tpm_chip_seqops ascii_log_seqops;
+	unsigned int flags;
+	int dev_num;
+	long unsigned int is_open;
+	char hwrng_name[64];
+	struct hwrng hwrng;
+	struct mutex tpm_mutex;
+	long unsigned int timeout_a;
+	long unsigned int timeout_b;
+	long unsigned int timeout_c;
+	long unsigned int timeout_d;
+	bool timeout_adjusted;
+	long unsigned int duration[4];
+	bool duration_adjusted;
+	struct dentry *bios_dir[3];
+	const struct attribute_group *groups[8];
+	unsigned int groups_cnt;
+	u32 nr_allocated_banks;
+	struct tpm_bank_info *allocated_banks;
+	acpi_handle acpi_dev_handle;
+	char ppi_version[4];
+	struct tpm_space work_space;
+	u32 last_cc;
+	u32 nr_commands;
+	u32 *cc_attrs_tbl;
+	int locality;
+};
+
+struct tpm_header {
+	__be16 tag;
+	__be32 length;
+	union {
+		__be32 ordinal;
+		__be32 return_code;
+	};
+} __attribute__((packed));
+
+enum tpm_buf_flags {
+	TPM_BUF_OVERFLOW = 1,
+};
+
+struct tpm_buf {
+	unsigned int flags;
+	u8 *data;
+};
+
+struct trusted_key_options {
+	uint16_t keytype;
+	uint32_t keyhandle;
+	unsigned char keyauth[20];
+	uint32_t blobauth_len;
+	unsigned char blobauth[20];
+	uint32_t pcrinfo_len;
+	unsigned char pcrinfo[64];
+	int pcrlock;
+	uint32_t hash;
+	uint32_t policydigest_len;
+	unsigned char policydigest[64];
+	uint32_t policyhandle;
+};
+
+struct osapsess {
+	uint32_t handle;
+	unsigned char secret[20];
+	unsigned char enonce[20];
+};
+
+enum {
+	SEAL_keytype = 1,
+	SRK_keytype = 4,
+};
+
+struct sdesc {
+	struct shash_desc shash;
+	char ctx[0];
+};
+
+struct tpm_digests {
+	unsigned char encauth[20];
+	unsigned char pubauth[20];
+	unsigned char xorwork[40];
+	unsigned char xorhash[20];
+	unsigned char nonceodd[20];
+};
+
+enum {
+	Opt_err___8 = 0,
+	Opt_keyhandle = 1,
+	Opt_keyauth = 2,
+	Opt_blobauth = 3,
+	Opt_pcrinfo = 4,
+	Opt_pcrlock = 5,
+	Opt_migratable = 6,
+	Opt_hash___2 = 7,
+	Opt_policydigest = 8,
+	Opt_policyhandle = 9,
+};
+
+typedef int (*asn1_action_t)(void *, size_t, unsigned char, const void *, size_t);
+
+struct asn1_decoder {
+	const unsigned char *machine;
+	size_t machlen;
+	const asn1_action_t *actions;
+};
+
+enum tpm_algorithms {
+	TPM_ALG_ERROR = 0,
+	TPM_ALG_SHA1 = 4,
+	TPM_ALG_KEYEDHASH = 8,
+	TPM_ALG_SHA256 = 11,
+	TPM_ALG_SHA384 = 12,
+	TPM_ALG_SHA512 = 13,
+	TPM_ALG_NULL = 16,
+	TPM_ALG_SM3_256 = 18,
+};
+
+enum tpm2_structures {
+	TPM2_ST_NO_SESSIONS = 32769,
+	TPM2_ST_SESSIONS = 32770,
+};
+
+enum tpm2_return_codes {
+	TPM2_RC_SUCCESS = 0,
+	TPM2_RC_HASH = 131,
+	TPM2_RC_HANDLE = 139,
+	TPM2_RC_INITIALIZE = 256,
+	TPM2_RC_FAILURE = 257,
+	TPM2_RC_DISABLED = 288,
+	TPM2_RC_COMMAND_CODE = 323,
+	TPM2_RC_TESTING = 2314,
+	TPM2_RC_REFERENCE_H0 = 2320,
+	TPM2_RC_RETRY = 2338,
+};
+
+enum tpm2_command_codes {
+	TPM2_CC_FIRST = 287,
+	TPM2_CC_HIERARCHY_CONTROL = 289,
+	TPM2_CC_HIERARCHY_CHANGE_AUTH = 297,
+	TPM2_CC_CREATE_PRIMARY = 305,
+	TPM2_CC_SEQUENCE_COMPLETE = 318,
+	TPM2_CC_SELF_TEST = 323,
+	TPM2_CC_STARTUP = 324,
+	TPM2_CC_SHUTDOWN = 325,
+	TPM2_CC_NV_READ = 334,
+	TPM2_CC_CREATE = 339,
+	TPM2_CC_LOAD = 343,
+	TPM2_CC_SEQUENCE_UPDATE = 348,
+	TPM2_CC_UNSEAL = 350,
+	TPM2_CC_CONTEXT_LOAD = 353,
+	TPM2_CC_CONTEXT_SAVE = 354,
+	TPM2_CC_FLUSH_CONTEXT = 357,
+	TPM2_CC_VERIFY_SIGNATURE = 375,
+	TPM2_CC_GET_CAPABILITY = 378,
+	TPM2_CC_GET_RANDOM = 379,
+	TPM2_CC_PCR_READ = 382,
+	TPM2_CC_PCR_EXTEND = 386,
+	TPM2_CC_EVENT_SEQUENCE_COMPLETE = 389,
+	TPM2_CC_HASH_SEQUENCE_START = 390,
+	TPM2_CC_CREATE_LOADED = 401,
+	TPM2_CC_LAST = 403,
+};
+
+enum tpm2_permanent_handles {
+	TPM2_RS_PW = 1073741833,
+};
+
+enum tpm2_object_attributes {
+	TPM2_OA_FIXED_TPM = 2,
+	TPM2_OA_FIXED_PARENT = 16,
+	TPM2_OA_USER_WITH_AUTH = 64,
+};
+
+enum tpm2_session_attributes {
+	TPM2_SA_CONTINUE_SESSION = 1,
+};
+
+struct tpm2_hash {
+	unsigned int crypto_id;
+	unsigned int tpm_id;
+};
+
+struct tpm2_key_context {
+	u32 parent;
+	const u8 *pub;
+	u32 pub_len;
+	const u8 *priv;
+	u32 priv_len;
+};
+
+enum asn1_class {
+	ASN1_UNIV = 0,
+	ASN1_APPL = 1,
+	ASN1_CONT = 2,
+	ASN1_PRIV = 3,
+};
+
+enum asn1_method {
+	ASN1_PRIM = 0,
+	ASN1_CONS = 1,
+};
+
+enum asn1_tag {
+	ASN1_EOC = 0,
+	ASN1_BOOL = 1,
+	ASN1_INT = 2,
+	ASN1_BTS = 3,
+	ASN1_OTS = 4,
+	ASN1_NULL = 5,
+	ASN1_OID = 6,
+	ASN1_ODE = 7,
+	ASN1_EXT = 8,
+	ASN1_REAL = 9,
+	ASN1_ENUM = 10,
+	ASN1_EPDV = 11,
+	ASN1_UTF8STR = 12,
+	ASN1_RELOID = 13,
+	ASN1_SEQ = 16,
+	ASN1_SET = 17,
+	ASN1_NUMSTR = 18,
+	ASN1_PRNSTR = 19,
+	ASN1_TEXSTR = 20,
+	ASN1_VIDSTR = 21,
+	ASN1_IA5STR = 22,
+	ASN1_UNITIM = 23,
+	ASN1_GENTIM = 24,
+	ASN1_GRASTR = 25,
+	ASN1_VISSTR = 26,
+	ASN1_GENSTR = 27,
+	ASN1_UNISTR = 28,
+	ASN1_CHRSTR = 29,
+	ASN1_BMPSTR = 30,
+	ASN1_LONG_TAG = 31,
+};
+
+enum asn1_opcode {
+	ASN1_OP_MATCH = 0,
+	ASN1_OP_MATCH_OR_SKIP = 1,
+	ASN1_OP_MATCH_ACT = 2,
+	ASN1_OP_MATCH_ACT_OR_SKIP = 3,
+	ASN1_OP_MATCH_JUMP = 4,
+	ASN1_OP_MATCH_JUMP_OR_SKIP = 5,
+	ASN1_OP_MATCH_ANY = 8,
+	ASN1_OP_MATCH_ANY_OR_SKIP = 9,
+	ASN1_OP_MATCH_ANY_ACT = 10,
+	ASN1_OP_MATCH_ANY_ACT_OR_SKIP = 11,
+	ASN1_OP_COND_MATCH_OR_SKIP = 17,
+	ASN1_OP_COND_MATCH_ACT_OR_SKIP = 19,
+	ASN1_OP_COND_MATCH_JUMP_OR_SKIP = 21,
+	ASN1_OP_COND_MATCH_ANY = 24,
+	ASN1_OP_COND_MATCH_ANY_OR_SKIP = 25,
+	ASN1_OP_COND_MATCH_ANY_ACT = 26,
+	ASN1_OP_COND_MATCH_ANY_ACT_OR_SKIP = 27,
+	ASN1_OP_COND_FAIL = 28,
+	ASN1_OP_COMPLETE = 29,
+	ASN1_OP_ACT = 30,
+	ASN1_OP_MAYBE_ACT = 31,
+	ASN1_OP_END_SEQ = 32,
+	ASN1_OP_END_SET = 33,
+	ASN1_OP_END_SEQ_OF = 34,
+	ASN1_OP_END_SET_OF = 35,
+	ASN1_OP_END_SEQ_ACT = 36,
+	ASN1_OP_END_SET_ACT = 37,
+	ASN1_OP_END_SEQ_OF_ACT = 38,
+	ASN1_OP_END_SET_OF_ACT = 39,
+	ASN1_OP_RETURN = 40,
+	ASN1_OP__NR = 41,
+};
+
+enum tpm2key_actions {
+	ACT_tpm2_key_parent = 0,
+	ACT_tpm2_key_priv = 1,
+	ACT_tpm2_key_pub = 2,
+	ACT_tpm2_key_type = 3,
+	NR__tpm2key_actions = 4,
+};
+
+enum {
+	Opt_new___2 = 0,
+	Opt_load___2 = 1,
+	Opt_update___2 = 2,
+	Opt_err___9 = 3,
+};
+
+enum {
+	Opt_default = 0,
+	Opt_ecryptfs = 1,
+	Opt_enc32 = 2,
+	Opt_error = 3,
+};
+
+enum derived_key_type {
+	ENC_KEY = 0,
+	AUTH_KEY = 1,
+};
+
 struct vfs_cap_data {
 	__le32 magic_etc;
 	struct {
@@ -50004,9 +62088,11 @@ union security_list_options {
 	int (*fs_context_dup)(struct fs_context *, struct fs_context *);
 	int (*fs_context_parse_param)(struct fs_context *, struct fs_parameter *);
 	int (*sb_alloc_security)(struct super_block *);
+	void (*sb_delete)(struct super_block *);
 	void (*sb_free_security)(struct super_block *);
 	void (*sb_free_mnt_opts)(void *);
 	int (*sb_eat_lsm_opts)(char *, void **);
+	int (*sb_mnt_opts_compat)(struct super_block *, void *);
 	int (*sb_remount)(struct super_block *, void *);
 	int (*sb_kern_mount)(struct super_block *);
 	int (*sb_show_options)(struct seq_file *, struct super_block *);
@@ -50035,6 +62121,7 @@ union security_list_options {
 	int (*inode_alloc_security)(struct inode *);
 	void (*inode_free_security)(struct inode *);
 	int (*inode_init_security)(struct inode *, struct inode *, const struct qstr *, const char **, void **, size_t *);
+	int (*inode_init_security_anon)(struct inode *, const struct qstr *, const struct inode *);
 	int (*inode_create)(struct inode *, struct dentry *, umode_t);
 	int (*inode_link)(struct dentry *, struct inode *, struct dentry *);
 	int (*inode_unlink)(struct inode *, struct dentry *);
@@ -50048,14 +62135,14 @@ union security_list_options {
 	int (*inode_permission)(struct inode *, int);
 	int (*inode_setattr)(struct dentry *, struct iattr *);
 	int (*inode_getattr)(const struct path *);
-	int (*inode_setxattr)(struct dentry *, const char *, const void *, size_t, int);
+	int (*inode_setxattr)(struct user_namespace *, struct dentry *, const char *, const void *, size_t, int);
 	void (*inode_post_setxattr)(struct dentry *, const char *, const void *, size_t, int);
 	int (*inode_getxattr)(struct dentry *, const char *);
 	int (*inode_listxattr)(struct dentry *);
-	int (*inode_removexattr)(struct dentry *, const char *);
+	int (*inode_removexattr)(struct user_namespace *, struct dentry *, const char *);
 	int (*inode_need_killpriv)(struct dentry *);
-	int (*inode_killpriv)(struct dentry *);
-	int (*inode_getsecurity)(struct inode *, const char *, void **, bool);
+	int (*inode_killpriv)(struct user_namespace *, struct dentry *);
+	int (*inode_getsecurity)(struct user_namespace *, struct inode *, const char *, void **, bool);
 	int (*inode_setsecurity)(struct inode *, const char *, const void *, size_t, int);
 	int (*inode_listsecurity)(struct inode *, char *, size_t);
 	void (*inode_getsecid)(struct inode *, u32 *);
@@ -50066,6 +62153,7 @@ union security_list_options {
 	int (*file_alloc_security)(struct file *);
 	void (*file_free_security)(struct file *);
 	int (*file_ioctl)(struct file *, unsigned int, long unsigned int);
+	int (*file_ioctl_compat)(struct file *, unsigned int, long unsigned int);
 	int (*mmap_addr)(long unsigned int);
 	int (*mmap_file)(struct file *, long unsigned int, long unsigned int, long unsigned int);
 	int (*file_mprotect)(struct vm_area_struct *, long unsigned int, long unsigned int);
@@ -50094,7 +62182,8 @@ union security_list_options {
 	int (*task_setpgid)(struct task_struct *, pid_t);
 	int (*task_getpgid)(struct task_struct *);
 	int (*task_getsid)(struct task_struct *);
-	void (*task_getsecid)(struct task_struct *, u32 *);
+	void (*task_getsecid_subj)(struct task_struct *, u32 *);
+	void (*task_getsecid_obj)(struct task_struct *, u32 *);
 	int (*task_setnice)(struct task_struct *, int);
 	int (*task_setioprio)(struct task_struct *, int);
 	int (*task_getioprio)(struct task_struct *);
@@ -50138,6 +62227,8 @@ union security_list_options {
 	int (*inode_notifysecctx)(struct inode *, void *, u32);
 	int (*inode_setsecctx)(struct dentry *, void *, u32);
 	int (*inode_getsecctx)(struct inode *, void **, u32 *);
+	int (*post_notification)(const struct cred *, const struct cred *, struct watch_notification *);
+	int (*watch_key)(struct key *);
 	int (*unix_stream_connect)(struct sock *, struct sock *, struct sock *);
 	int (*unix_may_send)(struct socket *, struct socket *);
 	int (*socket_create)(int, int, int, int);
@@ -50162,22 +62253,26 @@ union security_list_options {
 	void (*sk_clone_security)(const struct sock *, struct sock *);
 	void (*sk_getsecid)(struct sock *, u32 *);
 	void (*sock_graft)(struct sock *, struct socket *);
-	int (*inet_conn_request)(struct sock *, struct sk_buff *, struct request_sock *);
+	int (*inet_conn_request)(const struct sock *, struct sk_buff *, struct request_sock *);
 	void (*inet_csk_clone)(struct sock *, const struct request_sock *);
 	void (*inet_conn_established)(struct sock *, struct sk_buff *);
 	int (*secmark_relabel_packet)(u32);
-	void (*secmark_refcount_inc)();
-	void (*secmark_refcount_dec)();
+	void (*secmark_refcount_inc)(void);
+	void (*secmark_refcount_dec)(void);
 	void (*req_classify_flow)(const struct request_sock *, struct flowi_common *);
 	int (*tun_dev_alloc_security)(void **);
 	void (*tun_dev_free_security)(void *);
-	int (*tun_dev_create)();
+	int (*tun_dev_create)(void);
 	int (*tun_dev_attach_queue)(void *);
 	int (*tun_dev_attach)(struct sock *, void *);
 	int (*tun_dev_open)(void *);
 	int (*sctp_assoc_request)(struct sctp_endpoint *, struct sk_buff *);
 	int (*sctp_bind_connect)(struct sock *, int, struct sockaddr *, int);
 	void (*sctp_sk_clone)(struct sctp_endpoint *, struct sock *, struct sock *);
+	int (*ib_pkey_access)(void *, u64, u16);
+	int (*ib_endport_manage_subnet)(void *, const char *, u8);
+	int (*ib_alloc_security)(void **);
+	void (*ib_free_security)(void *);
 	int (*xfrm_policy_alloc_security)(struct xfrm_sec_ctx **, struct xfrm_user_sec_ctx *, gfp_t);
 	int (*xfrm_policy_clone_security)(struct xfrm_sec_ctx *, struct xfrm_sec_ctx **);
 	void (*xfrm_policy_free_security)(struct xfrm_sec_ctx *);
@@ -50186,14 +62281,14 @@ union security_list_options {
 	int (*xfrm_state_alloc_acquire)(struct xfrm_state *, struct xfrm_sec_ctx *, u32);
 	void (*xfrm_state_free_security)(struct xfrm_state *);
 	int (*xfrm_state_delete_security)(struct xfrm_state *);
-	int (*xfrm_policy_lookup)(struct xfrm_sec_ctx *, u32, u8);
+	int (*xfrm_policy_lookup)(struct xfrm_sec_ctx *, u32);
 	int (*xfrm_state_pol_flow_match)(struct xfrm_state *, struct xfrm_policy *, const struct flowi_common *);
 	int (*xfrm_decode_session)(struct sk_buff *, u32 *, int);
 	int (*key_alloc)(struct key *, const struct cred *, long unsigned int);
 	void (*key_free)(struct key *);
 	int (*key_permission)(key_ref_t, const struct cred *, enum key_need_perm);
 	int (*key_getsecurity)(struct key *, char **);
-	int (*audit_rule_init)(u32, u32, char *, void **);
+	int (*audit_rule_init)(u32, u32, char *, void **, gfp_t);
 	int (*audit_rule_known)(struct audit_krule *);
 	int (*audit_rule_match)(u32, u32, u32, void *);
 	void (*audit_rule_free)(void *);
@@ -50205,6 +62300,7 @@ union security_list_options {
 	int (*bpf_prog_alloc_security)(struct bpf_prog_aux *);
 	void (*bpf_prog_free_security)(struct bpf_prog_aux *);
 	int (*locked_down)(enum lockdown_reason);
+	int (*lock_kernel_down)(const char *, enum lockdown_reason);
 	int (*perf_event_open)(struct perf_event_attr *, int);
 	int (*perf_event_alloc)(struct perf_event *);
 	void (*perf_event_free)(struct perf_event *);
@@ -50235,9 +62331,11 @@ struct security_hook_heads {
 	struct hlist_head fs_context_dup;
 	struct hlist_head fs_context_parse_param;
 	struct hlist_head sb_alloc_security;
+	struct hlist_head sb_delete;
 	struct hlist_head sb_free_security;
 	struct hlist_head sb_free_mnt_opts;
 	struct hlist_head sb_eat_lsm_opts;
+	struct hlist_head sb_mnt_opts_compat;
 	struct hlist_head sb_remount;
 	struct hlist_head sb_kern_mount;
 	struct hlist_head sb_show_options;
@@ -50266,6 +62364,7 @@ struct security_hook_heads {
 	struct hlist_head inode_alloc_security;
 	struct hlist_head inode_free_security;
 	struct hlist_head inode_init_security;
+	struct hlist_head inode_init_security_anon;
 	struct hlist_head inode_create;
 	struct hlist_head inode_link;
 	struct hlist_head inode_unlink;
@@ -50297,6 +62396,7 @@ struct security_hook_heads {
 	struct hlist_head file_alloc_security;
 	struct hlist_head file_free_security;
 	struct hlist_head file_ioctl;
+	struct hlist_head file_ioctl_compat;
 	struct hlist_head mmap_addr;
 	struct hlist_head mmap_file;
 	struct hlist_head file_mprotect;
@@ -50325,7 +62425,8 @@ struct security_hook_heads {
 	struct hlist_head task_setpgid;
 	struct hlist_head task_getpgid;
 	struct hlist_head task_getsid;
-	struct hlist_head task_getsecid;
+	struct hlist_head task_getsecid_subj;
+	struct hlist_head task_getsecid_obj;
 	struct hlist_head task_setnice;
 	struct hlist_head task_setioprio;
 	struct hlist_head task_getioprio;
@@ -50369,6 +62470,8 @@ struct security_hook_heads {
 	struct hlist_head inode_notifysecctx;
 	struct hlist_head inode_setsecctx;
 	struct hlist_head inode_getsecctx;
+	struct hlist_head post_notification;
+	struct hlist_head watch_key;
 	struct hlist_head unix_stream_connect;
 	struct hlist_head unix_may_send;
 	struct hlist_head socket_create;
@@ -50409,6 +62512,10 @@ struct security_hook_heads {
 	struct hlist_head sctp_assoc_request;
 	struct hlist_head sctp_bind_connect;
 	struct hlist_head sctp_sk_clone;
+	struct hlist_head ib_pkey_access;
+	struct hlist_head ib_endport_manage_subnet;
+	struct hlist_head ib_alloc_security;
+	struct hlist_head ib_free_security;
 	struct hlist_head xfrm_policy_alloc_security;
 	struct hlist_head xfrm_policy_clone_security;
 	struct hlist_head xfrm_policy_free_security;
@@ -50436,6 +62543,7 @@ struct security_hook_heads {
 	struct hlist_head bpf_prog_alloc_security;
 	struct hlist_head bpf_prog_free_security;
 	struct hlist_head locked_down;
+	struct hlist_head lock_kernel_down;
 	struct hlist_head perf_event_open;
 	struct hlist_head perf_event_alloc;
 	struct hlist_head perf_event_free;
@@ -50443,11 +62551,16 @@ struct security_hook_heads {
 	struct hlist_head perf_event_write;
 };
 
+struct lsm_id {
+	const char *lsm;
+	int slot;
+};
+
 struct security_hook_list {
 	struct hlist_node list;
 	struct hlist_head *head;
 	union security_list_options hook;
-	char *lsm;
+	struct lsm_id *lsmid;
 };
 
 enum lsm_order {
@@ -50460,7 +62573,7 @@ struct lsm_info {
 	enum lsm_order order;
 	long unsigned int flags;
 	int *enabled;
-	int (*init)();
+	int (*init)(void);
 	struct lsm_blob_sizes *blobs;
 };
 
@@ -50468,7 +62581,536 @@ enum lsm_event {
 	LSM_POLICY_CHANGE = 0,
 };
 
-typedef int (*initxattrs)(struct inode *, const struct xattr *, void *);
+struct ethhdr {
+	unsigned char h_dest[6];
+	unsigned char h_source[6];
+	__be16 h_proto;
+};
+
+struct ethtool_drvinfo {
+	__u32 cmd;
+	char driver[32];
+	char version[32];
+	char fw_version[32];
+	char bus_info[32];
+	char erom_version[32];
+	char reserved2[12];
+	__u32 n_priv_flags;
+	__u32 n_stats;
+	__u32 testinfo_len;
+	__u32 eedump_len;
+	__u32 regdump_len;
+};
+
+struct ethtool_wolinfo {
+	__u32 cmd;
+	__u32 supported;
+	__u32 wolopts;
+	__u8 sopass[6];
+};
+
+struct ethtool_tunable {
+	__u32 cmd;
+	__u32 id;
+	__u32 type_id;
+	__u32 len;
+	void *data[0];
+};
+
+struct ethtool_regs {
+	__u32 cmd;
+	__u32 version;
+	__u32 len;
+	__u8 data[0];
+};
+
+struct ethtool_eeprom {
+	__u32 cmd;
+	__u32 magic;
+	__u32 offset;
+	__u32 len;
+	__u8 data[0];
+};
+
+struct ethtool_eee {
+	__u32 cmd;
+	__u32 supported;
+	__u32 advertised;
+	__u32 lp_advertised;
+	__u32 eee_active;
+	__u32 eee_enabled;
+	__u32 tx_lpi_enabled;
+	__u32 tx_lpi_timer;
+	__u32 reserved[2];
+};
+
+struct ethtool_modinfo {
+	__u32 cmd;
+	__u32 type;
+	__u32 eeprom_len;
+	__u32 reserved[8];
+};
+
+struct ethtool_coalesce {
+	__u32 cmd;
+	__u32 rx_coalesce_usecs;
+	__u32 rx_max_coalesced_frames;
+	__u32 rx_coalesce_usecs_irq;
+	__u32 rx_max_coalesced_frames_irq;
+	__u32 tx_coalesce_usecs;
+	__u32 tx_max_coalesced_frames;
+	__u32 tx_coalesce_usecs_irq;
+	__u32 tx_max_coalesced_frames_irq;
+	__u32 stats_block_coalesce_usecs;
+	__u32 use_adaptive_rx_coalesce;
+	__u32 use_adaptive_tx_coalesce;
+	__u32 pkt_rate_low;
+	__u32 rx_coalesce_usecs_low;
+	__u32 rx_max_coalesced_frames_low;
+	__u32 tx_coalesce_usecs_low;
+	__u32 tx_max_coalesced_frames_low;
+	__u32 pkt_rate_high;
+	__u32 rx_coalesce_usecs_high;
+	__u32 rx_max_coalesced_frames_high;
+	__u32 tx_coalesce_usecs_high;
+	__u32 tx_max_coalesced_frames_high;
+	__u32 rate_sample_interval;
+};
+
+struct ethtool_ringparam {
+	__u32 cmd;
+	__u32 rx_max_pending;
+	__u32 rx_mini_max_pending;
+	__u32 rx_jumbo_max_pending;
+	__u32 tx_max_pending;
+	__u32 rx_pending;
+	__u32 rx_mini_pending;
+	__u32 rx_jumbo_pending;
+	__u32 tx_pending;
+};
+
+struct ethtool_channels {
+	__u32 cmd;
+	__u32 max_rx;
+	__u32 max_tx;
+	__u32 max_other;
+	__u32 max_combined;
+	__u32 rx_count;
+	__u32 tx_count;
+	__u32 other_count;
+	__u32 combined_count;
+};
+
+struct ethtool_pauseparam {
+	__u32 cmd;
+	__u32 autoneg;
+	__u32 rx_pause;
+	__u32 tx_pause;
+};
+
+enum ethtool_link_ext_state {
+	ETHTOOL_LINK_EXT_STATE_AUTONEG = 0,
+	ETHTOOL_LINK_EXT_STATE_LINK_TRAINING_FAILURE = 1,
+	ETHTOOL_LINK_EXT_STATE_LINK_LOGICAL_MISMATCH = 2,
+	ETHTOOL_LINK_EXT_STATE_BAD_SIGNAL_INTEGRITY = 3,
+	ETHTOOL_LINK_EXT_STATE_NO_CABLE = 4,
+	ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE = 5,
+	ETHTOOL_LINK_EXT_STATE_EEPROM_ISSUE = 6,
+	ETHTOOL_LINK_EXT_STATE_CALIBRATION_FAILURE = 7,
+	ETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED = 8,
+	ETHTOOL_LINK_EXT_STATE_OVERHEAT = 9,
+};
+
+enum ethtool_link_ext_substate_autoneg {
+	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED = 1,
+	ETHTOOL_LINK_EXT_SUBSTATE_AN_ACK_NOT_RECEIVED = 2,
+	ETHTOOL_LINK_EXT_SUBSTATE_AN_NEXT_PAGE_EXCHANGE_FAILED = 3,
+	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED_FORCE_MODE = 4,
+	ETHTOOL_LINK_EXT_SUBSTATE_AN_FEC_MISMATCH_DURING_OVERRIDE = 5,
+	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_HCD = 6,
+};
+
+enum ethtool_link_ext_substate_link_training {
+	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_FRAME_LOCK_NOT_ACQUIRED = 1,
+	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_INHIBIT_TIMEOUT = 2,
+	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_PARTNER_DID_NOT_SET_RECEIVER_READY = 3,
+	ETHTOOL_LINK_EXT_SUBSTATE_LT_REMOTE_FAULT = 4,
+};
+
+enum ethtool_link_ext_substate_link_logical_mismatch {
+	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_BLOCK_LOCK = 1,
+	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_AM_LOCK = 2,
+	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_GET_ALIGN_STATUS = 3,
+	ETHTOOL_LINK_EXT_SUBSTATE_LLM_FC_FEC_IS_NOT_LOCKED = 4,
+	ETHTOOL_LINK_EXT_SUBSTATE_LLM_RS_FEC_IS_NOT_LOCKED = 5,
+};
+
+enum ethtool_link_ext_substate_bad_signal_integrity {
+	ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS = 1,
+	ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE = 2,
+	ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_REFERENCE_CLOCK_LOST = 3,
+	ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_ALOS = 4,
+};
+
+enum ethtool_link_ext_substate_cable_issue {
+	ETHTOOL_LINK_EXT_SUBSTATE_CI_UNSUPPORTED_CABLE = 1,
+	ETHTOOL_LINK_EXT_SUBSTATE_CI_CABLE_TEST_FAILURE = 2,
+};
+
+struct ethtool_test {
+	__u32 cmd;
+	__u32 flags;
+	__u32 reserved;
+	__u32 len;
+	__u64 data[0];
+};
+
+struct ethtool_stats {
+	__u32 cmd;
+	__u32 n_stats;
+	__u64 data[0];
+};
+
+struct ethtool_tcpip4_spec {
+	__be32 ip4src;
+	__be32 ip4dst;
+	__be16 psrc;
+	__be16 pdst;
+	__u8 tos;
+};
+
+struct ethtool_ah_espip4_spec {
+	__be32 ip4src;
+	__be32 ip4dst;
+	__be32 spi;
+	__u8 tos;
+};
+
+struct ethtool_usrip4_spec {
+	__be32 ip4src;
+	__be32 ip4dst;
+	__be32 l4_4_bytes;
+	__u8 tos;
+	__u8 ip_ver;
+	__u8 proto;
+};
+
+struct ethtool_tcpip6_spec {
+	__be32 ip6src[4];
+	__be32 ip6dst[4];
+	__be16 psrc;
+	__be16 pdst;
+	__u8 tclass;
+};
+
+struct ethtool_ah_espip6_spec {
+	__be32 ip6src[4];
+	__be32 ip6dst[4];
+	__be32 spi;
+	__u8 tclass;
+};
+
+struct ethtool_usrip6_spec {
+	__be32 ip6src[4];
+	__be32 ip6dst[4];
+	__be32 l4_4_bytes;
+	__u8 tclass;
+	__u8 l4_proto;
+};
+
+union ethtool_flow_union {
+	struct ethtool_tcpip4_spec tcp_ip4_spec;
+	struct ethtool_tcpip4_spec udp_ip4_spec;
+	struct ethtool_tcpip4_spec sctp_ip4_spec;
+	struct ethtool_ah_espip4_spec ah_ip4_spec;
+	struct ethtool_ah_espip4_spec esp_ip4_spec;
+	struct ethtool_usrip4_spec usr_ip4_spec;
+	struct ethtool_tcpip6_spec tcp_ip6_spec;
+	struct ethtool_tcpip6_spec udp_ip6_spec;
+	struct ethtool_tcpip6_spec sctp_ip6_spec;
+	struct ethtool_ah_espip6_spec ah_ip6_spec;
+	struct ethtool_ah_espip6_spec esp_ip6_spec;
+	struct ethtool_usrip6_spec usr_ip6_spec;
+	struct ethhdr ether_spec;
+	__u8 hdata[52];
+};
+
+struct ethtool_flow_ext {
+	__u8 padding[2];
+	unsigned char h_dest[6];
+	__be16 vlan_etype;
+	__be16 vlan_tci;
+	__be32 data[2];
+};
+
+struct ethtool_rx_flow_spec {
+	__u32 flow_type;
+	union ethtool_flow_union h_u;
+	struct ethtool_flow_ext h_ext;
+	union ethtool_flow_union m_u;
+	struct ethtool_flow_ext m_ext;
+	__u64 ring_cookie;
+	__u32 location;
+};
+
+struct ethtool_rxnfc {
+	__u32 cmd;
+	__u32 flow_type;
+	__u64 data;
+	struct ethtool_rx_flow_spec fs;
+	union {
+		__u32 rule_cnt;
+		__u32 rss_context;
+	};
+	__u32 rule_locs[0];
+};
+
+struct ethtool_flash {
+	__u32 cmd;
+	__u32 region;
+	char data[128];
+};
+
+struct ethtool_dump {
+	__u32 cmd;
+	__u32 version;
+	__u32 flag;
+	__u32 len;
+	__u8 data[0];
+};
+
+struct ethtool_ts_info {
+	__u32 cmd;
+	__u32 so_timestamping;
+	__s32 phc_index;
+	__u32 tx_types;
+	__u32 tx_reserved[3];
+	__u32 rx_filters;
+	__u32 rx_reserved[3];
+};
+
+struct ethtool_fecparam {
+	__u32 cmd;
+	__u32 active_fec;
+	__u32 fec;
+	__u32 reserved;
+};
+
+enum ethtool_link_mode_bit_indices {
+	ETHTOOL_LINK_MODE_10baseT_Half_BIT = 0,
+	ETHTOOL_LINK_MODE_10baseT_Full_BIT = 1,
+	ETHTOOL_LINK_MODE_100baseT_Half_BIT = 2,
+	ETHTOOL_LINK_MODE_100baseT_Full_BIT = 3,
+	ETHTOOL_LINK_MODE_1000baseT_Half_BIT = 4,
+	ETHTOOL_LINK_MODE_1000baseT_Full_BIT = 5,
+	ETHTOOL_LINK_MODE_Autoneg_BIT = 6,
+	ETHTOOL_LINK_MODE_TP_BIT = 7,
+	ETHTOOL_LINK_MODE_AUI_BIT = 8,
+	ETHTOOL_LINK_MODE_MII_BIT = 9,
+	ETHTOOL_LINK_MODE_FIBRE_BIT = 10,
+	ETHTOOL_LINK_MODE_BNC_BIT = 11,
+	ETHTOOL_LINK_MODE_10000baseT_Full_BIT = 12,
+	ETHTOOL_LINK_MODE_Pause_BIT = 13,
+	ETHTOOL_LINK_MODE_Asym_Pause_BIT = 14,
+	ETHTOOL_LINK_MODE_2500baseX_Full_BIT = 15,
+	ETHTOOL_LINK_MODE_Backplane_BIT = 16,
+	ETHTOOL_LINK_MODE_1000baseKX_Full_BIT = 17,
+	ETHTOOL_LINK_MODE_10000baseKX4_Full_BIT = 18,
+	ETHTOOL_LINK_MODE_10000baseKR_Full_BIT = 19,
+	ETHTOOL_LINK_MODE_10000baseR_FEC_BIT = 20,
+	ETHTOOL_LINK_MODE_20000baseMLD2_Full_BIT = 21,
+	ETHTOOL_LINK_MODE_20000baseKR2_Full_BIT = 22,
+	ETHTOOL_LINK_MODE_40000baseKR4_Full_BIT = 23,
+	ETHTOOL_LINK_MODE_40000baseCR4_Full_BIT = 24,
+	ETHTOOL_LINK_MODE_40000baseSR4_Full_BIT = 25,
+	ETHTOOL_LINK_MODE_40000baseLR4_Full_BIT = 26,
+	ETHTOOL_LINK_MODE_56000baseKR4_Full_BIT = 27,
+	ETHTOOL_LINK_MODE_56000baseCR4_Full_BIT = 28,
+	ETHTOOL_LINK_MODE_56000baseSR4_Full_BIT = 29,
+	ETHTOOL_LINK_MODE_56000baseLR4_Full_BIT = 30,
+	ETHTOOL_LINK_MODE_25000baseCR_Full_BIT = 31,
+	ETHTOOL_LINK_MODE_25000baseKR_Full_BIT = 32,
+	ETHTOOL_LINK_MODE_25000baseSR_Full_BIT = 33,
+	ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT = 34,
+	ETHTOOL_LINK_MODE_50000baseKR2_Full_BIT = 35,
+	ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT = 36,
+	ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 37,
+	ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 38,
+	ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 39,
+	ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 40,
+	ETHTOOL_LINK_MODE_1000baseX_Full_BIT = 41,
+	ETHTOOL_LINK_MODE_10000baseCR_Full_BIT = 42,
+	ETHTOOL_LINK_MODE_10000baseSR_Full_BIT = 43,
+	ETHTOOL_LINK_MODE_10000baseLR_Full_BIT = 44,
+	ETHTOOL_LINK_MODE_10000baseLRM_Full_BIT = 45,
+	ETHTOOL_LINK_MODE_10000baseER_Full_BIT = 46,
+	ETHTOOL_LINK_MODE_2500baseT_Full_BIT = 47,
+	ETHTOOL_LINK_MODE_5000baseT_Full_BIT = 48,
+	ETHTOOL_LINK_MODE_FEC_NONE_BIT = 49,
+	ETHTOOL_LINK_MODE_FEC_RS_BIT = 50,
+	ETHTOOL_LINK_MODE_FEC_BASER_BIT = 51,
+	ETHTOOL_LINK_MODE_50000baseKR_Full_BIT = 52,
+	ETHTOOL_LINK_MODE_50000baseSR_Full_BIT = 53,
+	ETHTOOL_LINK_MODE_50000baseCR_Full_BIT = 54,
+	ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT = 55,
+	ETHTOOL_LINK_MODE_50000baseDR_Full_BIT = 56,
+	ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT = 57,
+	ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT = 58,
+	ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT = 59,
+	ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT = 60,
+	ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT = 61,
+	ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT = 62,
+	ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT = 63,
+	ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 64,
+	ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 65,
+	ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66,
+	ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 67,
+	ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 68,
+	ETHTOOL_LINK_MODE_400000baseKR8_Full_BIT = 69,
+	ETHTOOL_LINK_MODE_400000baseSR8_Full_BIT = 70,
+	ETHTOOL_LINK_MODE_400000baseLR8_ER8_FR8_Full_BIT = 71,
+	ETHTOOL_LINK_MODE_400000baseDR8_Full_BIT = 72,
+	ETHTOOL_LINK_MODE_400000baseCR8_Full_BIT = 73,
+	ETHTOOL_LINK_MODE_FEC_LLRS_BIT = 74,
+	ETHTOOL_LINK_MODE_100000baseKR_Full_BIT = 75,
+	ETHTOOL_LINK_MODE_100000baseSR_Full_BIT = 76,
+	ETHTOOL_LINK_MODE_100000baseLR_ER_FR_Full_BIT = 77,
+	ETHTOOL_LINK_MODE_100000baseCR_Full_BIT = 78,
+	ETHTOOL_LINK_MODE_100000baseDR_Full_BIT = 79,
+	ETHTOOL_LINK_MODE_200000baseKR2_Full_BIT = 80,
+	ETHTOOL_LINK_MODE_200000baseSR2_Full_BIT = 81,
+	ETHTOOL_LINK_MODE_200000baseLR2_ER2_FR2_Full_BIT = 82,
+	ETHTOOL_LINK_MODE_200000baseDR2_Full_BIT = 83,
+	ETHTOOL_LINK_MODE_200000baseCR2_Full_BIT = 84,
+	ETHTOOL_LINK_MODE_400000baseKR4_Full_BIT = 85,
+	ETHTOOL_LINK_MODE_400000baseSR4_Full_BIT = 86,
+	ETHTOOL_LINK_MODE_400000baseLR4_ER4_FR4_Full_BIT = 87,
+	ETHTOOL_LINK_MODE_400000baseDR4_Full_BIT = 88,
+	ETHTOOL_LINK_MODE_400000baseCR4_Full_BIT = 89,
+	ETHTOOL_LINK_MODE_100baseFX_Half_BIT = 90,
+	ETHTOOL_LINK_MODE_100baseFX_Full_BIT = 91,
+	__ETHTOOL_LINK_MODE_MASK_NBITS = 92,
+};
+
+struct ethtool_link_settings {
+	__u32 cmd;
+	__u32 speed;
+	__u8 duplex;
+	__u8 port;
+	__u8 phy_address;
+	__u8 autoneg;
+	__u8 mdio_support;
+	__u8 eth_tp_mdix;
+	__u8 eth_tp_mdix_ctrl;
+	__s8 link_mode_masks_nwords;
+	__u8 transceiver;
+	__u8 master_slave_cfg;
+	__u8 master_slave_state;
+	__u8 reserved1[1];
+	__u32 reserved[7];
+	__u32 link_mode_masks[0];
+};
+
+struct ethtool_link_ext_state_info {
+	enum ethtool_link_ext_state link_ext_state;
+	union {
+		enum ethtool_link_ext_substate_autoneg autoneg;
+		enum ethtool_link_ext_substate_link_training link_training;
+		enum ethtool_link_ext_substate_link_logical_mismatch link_logical_mismatch;
+		enum ethtool_link_ext_substate_bad_signal_integrity bad_signal_integrity;
+		enum ethtool_link_ext_substate_cable_issue cable_issue;
+		u32 __link_ext_substate;
+	};
+};
+
+struct ethtool_link_ksettings {
+	struct ethtool_link_settings base;
+	struct {
+		long unsigned int supported[2];
+		long unsigned int advertising[2];
+		long unsigned int lp_advertising[2];
+	} link_modes;
+	u32 lanes;
+};
+
+struct kernel_ethtool_coalesce {
+	u8 use_cqe_mode_tx;
+	u8 use_cqe_mode_rx;
+};
+
+struct ethtool_eth_mac_stats {
+	u64 FramesTransmittedOK;
+	u64 SingleCollisionFrames;
+	u64 MultipleCollisionFrames;
+	u64 FramesReceivedOK;
+	u64 FrameCheckSequenceErrors;
+	u64 AlignmentErrors;
+	u64 OctetsTransmittedOK;
+	u64 FramesWithDeferredXmissions;
+	u64 LateCollisions;
+	u64 FramesAbortedDueToXSColls;
+	u64 FramesLostDueToIntMACXmitError;
+	u64 CarrierSenseErrors;
+	u64 OctetsReceivedOK;
+	u64 FramesLostDueToIntMACRcvError;
+	u64 MulticastFramesXmittedOK;
+	u64 BroadcastFramesXmittedOK;
+	u64 FramesWithExcessiveDeferral;
+	u64 MulticastFramesReceivedOK;
+	u64 BroadcastFramesReceivedOK;
+	u64 InRangeLengthErrors;
+	u64 OutOfRangeLengthField;
+	u64 FrameTooLongErrors;
+};
+
+struct ethtool_eth_phy_stats {
+	u64 SymbolErrorDuringCarrier;
+};
+
+struct ethtool_eth_ctrl_stats {
+	u64 MACControlFramesTransmitted;
+	u64 MACControlFramesReceived;
+	u64 UnsupportedOpcodesReceived;
+};
+
+struct ethtool_pause_stats {
+	u64 tx_pause_frames;
+	u64 rx_pause_frames;
+};
+
+struct ethtool_fec_stat {
+	u64 total;
+	u64 lanes[8];
+};
+
+struct ethtool_fec_stats {
+	struct ethtool_fec_stat corrected_blocks;
+	struct ethtool_fec_stat uncorrectable_blocks;
+	struct ethtool_fec_stat corrected_bits;
+};
+
+struct ethtool_rmon_hist_range {
+	u16 low;
+	u16 high;
+};
+
+struct ethtool_rmon_stats {
+	u64 undersize_pkts;
+	u64 oversize_pkts;
+	u64 fragments;
+	u64 jabbers;
+	u64 hist[10];
+	u64 hist_tx[10];
+};
+
+struct ethtool_module_eeprom {
+	u32 offset;
+	u32 length;
+	u8 page;
+	u8 bank;
+	u8 i2c_address;
+	u8 *data;
+};
 
 enum ib_uverbs_write_cmds {
 	IB_USER_VERBS_CMD_GET_CONTEXT = 0,
@@ -50610,7 +63252,7 @@ enum ib_poll_context {
 
 struct lsm_network_audit {
 	int netif;
-	struct sock *sk;
+	const struct sock *sk;
 	u16 family;
 	__be16 dport;
 	__be16 sport;
@@ -50637,7 +63279,7 @@ struct lsm_ibpkey_audit {
 };
 
 struct lsm_ibendport_audit {
-	char dev_name[64];
+	const char *dev_name;
 	u8 port;
 };
 
@@ -50654,6 +63296,8 @@ struct selinux_audit_data {
 	struct selinux_state *state;
 };
 
+struct smack_audit_data;
+
 struct apparmor_audit_data;
 
 struct common_audit_data {
@@ -50678,6 +63322,7 @@ struct common_audit_data {
 		int reason;
 	} u;
 	union {
+		struct smack_audit_data *smack_audit_data;
 		struct selinux_audit_data *selinux_audit_data;
 		struct apparmor_audit_data *apparmor_audit_data;
 	};
@@ -50835,8 +63480,6 @@ struct sctp_bind_addr {
 };
 
 struct sctp_ep_common {
-	struct hlist_node node;
-	int hashent;
 	enum sctp_endpoint_type type;
 	refcount_t refcnt;
 	bool dead;
@@ -50846,14 +63489,14 @@ struct sctp_ep_common {
 	struct sctp_bind_addr bind_addr;
 };
 
-struct crypto_shash;
-
 struct sctp_hmac_algo_param;
 
 struct sctp_chunks_param;
 
 struct sctp_endpoint {
 	struct sctp_ep_common base;
+	struct hlist_node node;
+	int hashent;
 	struct list_head asocs;
 	__u8 secret_key[32];
 	__u8 *digest;
@@ -50910,8 +63553,8 @@ struct nf_hook_entries {
 };
 
 struct nf_hook_state {
-	unsigned int hook;
-	u_int8_t pf;
+	u8 hook;
+	u8 pf;
 	struct net_device *in;
 	struct net_device *out;
 	struct sock *sk;
@@ -50919,11 +63562,17 @@ struct nf_hook_state {
 	int (*okfn)(struct net *, struct sock *, struct sk_buff *);
 };
 
+enum nf_hook_ops_type {
+	NF_HOOK_OP_UNDEFINED = 0,
+	NF_HOOK_OP_NF_TABLES = 1,
+};
+
 struct nf_hook_ops {
 	nf_hookfn *hook;
 	struct net_device *dev;
 	void *priv;
-	u_int8_t pf;
+	u8 pf;
+	enum nf_hook_ops_type hook_ops_type: 8;
 	unsigned int hooknum;
 	int priority;
 };
@@ -50967,10 +63616,6 @@ struct socket_alloc {
 	struct socket socket;
 	struct inode vfs_inode;
 	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
 };
 
 struct ip_options {
@@ -51044,10 +63689,9 @@ struct inet_sock {
 	__be32 inet_saddr;
 	__s16 uc_ttl;
 	__u16 cmsg_flags;
+	struct ip_options_rcu *inet_opt;
 	__be16 inet_sport;
 	__u16 inet_id;
-	struct ip_options_rcu *inet_opt;
-	int rx_dst_ifindex;
 	__u8 tos;
 	__u8 min_ttl;
 	__u8 mc_ttl;
@@ -51139,7 +63783,6 @@ struct ipv6_pinfo {
 	__u8 tclass;
 	__be32 rcv_flowinfo;
 	__u32 dst_cookie;
-	__u32 rx_dst_cookie;
 	struct ipv6_mc_socklist *ipv6_mc_list;
 	struct ipv6_ac_socklist *ipv6_ac_list;
 	struct ipv6_fl_socklist *ipv6_fl_list;
@@ -51179,8 +63822,16 @@ struct iphdr {
 	__u8 ttl;
 	__u8 protocol;
 	__sum16 check;
-	__be32 saddr;
-	__be32 daddr;
+	union {
+		struct {
+			__be32 saddr;
+			__be32 daddr;
+		};
+		struct {
+			__be32 saddr;
+			__be32 daddr;
+		} addrs;
+	};
 };
 
 struct ipv6_rt_hdr {
@@ -51202,8 +63853,16 @@ struct ipv6hdr {
 	__be16 payload_len;
 	__u8 nexthdr;
 	__u8 hop_limit;
-	struct in6_addr saddr;
-	struct in6_addr daddr;
+	union {
+		struct {
+			struct in6_addr saddr;
+			struct in6_addr daddr;
+		};
+		struct {
+			struct in6_addr saddr;
+			struct in6_addr daddr;
+		} addrs;
+	};
 };
 
 struct udphdr {
@@ -51224,6 +63883,7 @@ struct inet6_skb_parm {
 	__u16 flags;
 	__u16 dsthao;
 	__u16 frag_max_size;
+	__u16 srhoff;
 };
 
 struct ip6_sf_socklist;
@@ -51233,7 +63893,6 @@ struct ipv6_mc_socklist {
 	int ifindex;
 	unsigned int sfmode;
 	struct ipv6_mc_socklist *next;
-	rwlock_t sflock;
 	struct ip6_sf_socklist *sflist;
 	struct callback_head rcu;
 };
@@ -51255,6 +63914,7 @@ struct ipv6_fl_socklist {
 struct ip6_sf_socklist {
 	unsigned int sl_max;
 	unsigned int sl_count;
+	struct callback_head rcu;
 	struct in6_addr sl_addr[0];
 };
 
@@ -51311,7 +63971,7 @@ struct netlbl_lsm_secattr {
 			struct netlbl_lsm_catmap *cat;
 			u32 lvl;
 		} mls;
-		u32 secid;
+		struct lsmblob lsmblob;
 	} attr;
 };
 
@@ -51435,6 +64095,7 @@ enum sctp_cid {
 	SCTP_CID_I_FWD_TSN = 194,
 	SCTP_CID_ASCONF_ACK = 128,
 	SCTP_CID_RECONF = 130,
+	SCTP_CID_PAD = 132,
 };
 
 struct sctp_paramhdr {
@@ -51852,6 +64513,8 @@ struct sctp_association {
 	__u16 init_retries;
 	long unsigned int max_init_timeo;
 	long unsigned int hbinterval;
+	long unsigned int probe_interval;
+	__be16 encap_port;
 	__u16 pathmaxrxt;
 	__u32 flowlabel;
 	__u8 dscp;
@@ -51860,8 +64523,8 @@ struct sctp_association {
 	__u32 param_flags;
 	__u32 sackfreq;
 	long unsigned int sackdelay;
-	long unsigned int timeouts[11];
-	struct timer_list timers[11];
+	long unsigned int timeouts[12];
+	struct timer_list timers[12];
 	struct sctp_transport *shutdown_last_sent_to;
 	struct sctp_transport *init_last_sent_to;
 	int shutdown_retries;
@@ -51954,8 +64617,9 @@ enum sctp_event_timeout {
 	SCTP_EVENT_TIMEOUT_T5_SHUTDOWN_GUARD = 6,
 	SCTP_EVENT_TIMEOUT_HEARTBEAT = 7,
 	SCTP_EVENT_TIMEOUT_RECONF = 8,
-	SCTP_EVENT_TIMEOUT_SACK = 9,
-	SCTP_EVENT_TIMEOUT_AUTOCLOSE = 10,
+	SCTP_EVENT_TIMEOUT_PROBE = 9,
+	SCTP_EVENT_TIMEOUT_SACK = 10,
+	SCTP_EVENT_TIMEOUT_AUTOCLOSE = 11,
 };
 
 enum {
@@ -52079,6 +64743,7 @@ struct sctp_chunk {
 	__u16 data_accepted: 1;
 	__u16 auth: 1;
 	__u16 has_asconf: 1;
+	__u16 pmtu_probe: 1;
 	__u16 tsn_missing_report: 2;
 	__u16 fast_retransmit: 2;
 };
@@ -52134,6 +64799,9 @@ struct sctp_sock {
 	__u32 default_rcv_context;
 	int max_burst;
 	__u32 hbinterval;
+	__u32 probe_interval;
+	__be16 udp_port;
+	__be16 encap_port;
 	__u16 pathmaxrxt;
 	__u32 flowlabel;
 	__u8 dscp;
@@ -52203,6 +64871,7 @@ struct sctp_sender_hb_info {
 	union sctp_addr daddr;
 	long unsigned int sent_at;
 	__u64 hb_nonce;
+	__u32 probe_size;
 };
 
 struct sctp_af {
@@ -52277,12 +64946,14 @@ struct sctp_transport {
 	struct dst_entry *dst;
 	union sctp_addr saddr;
 	long unsigned int hbinterval;
+	long unsigned int probe_interval;
 	long unsigned int sackdelay;
 	__u32 sackfreq;
 	atomic_t mtu_info;
 	ktime_t last_time_heard;
 	long unsigned int last_time_sent;
 	long unsigned int last_time_ecne_reduced;
+	__be16 encap_port;
 	__u16 pathmaxrxt;
 	__u32 flowlabel;
 	__u8 dscp;
@@ -52297,6 +64968,7 @@ struct sctp_transport {
 	struct timer_list hb_timer;
 	struct timer_list proto_unreach_timer;
 	struct timer_list reconf_timer;
+	struct timer_list probe_timer;
 	struct list_head transmitted;
 	struct sctp_packet packet;
 	struct list_head send_ready;
@@ -52306,6 +64978,15 @@ struct sctp_transport {
 		char cycling_changeover;
 		char cacc_saw_newack;
 	} cacc;
+	struct {
+		__u32 last_rtx_chunks;
+		__u16 pmtu;
+		__u16 probe_size;
+		__u16 probe_high;
+		__u8 probe_count: 3;
+		__u8 raise_count: 5;
+		__u8 state;
+	} pl;
 	__u64 hb_nonce;
 	struct callback_head rcu;
 };
@@ -52325,6 +65006,7 @@ struct sctp_stream_priorities {
 	struct list_head active;
 	struct sctp_stream_out_ext *next;
 	__u16 prio;
+	__u16 users;
 };
 
 struct sctp_stream_out_ext {
@@ -52375,7 +65057,6 @@ struct file_security_struct {
 };
 
 struct superblock_security_struct {
-	struct super_block *sb;
 	u32 sid;
 	u32 def_sid;
 	u32 mntpoint_sid;
@@ -52421,6 +65102,10 @@ struct key_security_struct {
 	u32 sid;
 };
 
+struct ib_security_struct {
+	u32 sid;
+};
+
 struct bpf_security_struct {
 	u32 sid;
 };
@@ -52434,10 +65119,14 @@ struct selinux_mnt_opts {
 	const char *context;
 	const char *rootcontext;
 	const char *defcontext;
+	u32 fscontext_sid;
+	u32 context_sid;
+	u32 rootcontext_sid;
+	u32 defcontext_sid;
 };
 
 enum {
-	Opt_error = 4294967295,
+	Opt_error___2 = 4294967295,
 	Opt_context = 0,
 	Opt_defcontext = 1,
 	Opt_fscontext = 2,
@@ -52611,7 +65300,10 @@ enum {
 	RTM_NEWVLAN = 112,
 	RTM_DELVLAN = 113,
 	RTM_GETVLAN = 114,
-	__RTM_MAX = 115,
+	RTM_NEWNEXTHOPBUCKET = 116,
+	RTM_DELNEXTHOPBUCKET = 117,
+	RTM_GETNEXTHOPBUCKET = 118,
+	__RTM_MAX = 119,
 };
 
 struct nlmsg_perm {
@@ -52780,7 +65472,7 @@ struct sidtab_isid_entry {
 struct sidtab;
 
 struct sidtab_convert_params {
-	int (*func)(struct context___2 *, struct context___2 *, void *);
+	int (*func)(struct context___2 *, struct context___2 *, void *, gfp_t);
 	void *args;
 	struct sidtab *target;
 };
@@ -53161,13 +65853,14 @@ struct fib6_info {
 	u32 fib6_metric;
 	u8 fib6_protocol;
 	u8 fib6_type;
+	u8 offload;
+	u8 trap;
+	u8 offload_failed;
 	u8 should_flush: 1;
 	u8 dst_nocount: 1;
 	u8 dst_nopolicy: 1;
 	u8 fib6_destroying: 1;
-	u8 offload: 1;
-	u8 trap: 1;
-	u8 unused: 2;
+	u8 unused: 4;
 	struct callback_head rcu;
 	struct nexthop *nh;
 	struct fib6_nh fib6_nh[0];
@@ -53382,6 +66075,12 @@ struct xfrm_state_walk {
 	struct xfrm_address_filter *filter;
 };
 
+enum xfrm_replay_mode {
+	XFRM_REPLAY_MODE_LEGACY = 0,
+	XFRM_REPLAY_MODE_BMP = 1,
+	XFRM_REPLAY_MODE_ESN = 2,
+};
+
 struct xfrm_state_offload {
 	struct net_device *dev;
 	struct net_device *real_dev;
@@ -53396,8 +66095,6 @@ struct xfrm_mode {
 	u8 flags;
 };
 
-struct xfrm_replay;
-
 struct xfrm_type;
 
 struct xfrm_type_offload;
@@ -53410,6 +66107,7 @@ struct xfrm_state {
 	};
 	struct hlist_node bysrc;
 	struct hlist_node byspi;
+	struct hlist_node byseq;
 	refcount_t refcnt;
 	spinlock_t lock;
 	struct xfrm_id id;
@@ -53452,7 +66150,7 @@ struct xfrm_state {
 	struct xfrm_replay_state_esn *replay_esn;
 	struct xfrm_replay_state preplay;
 	struct xfrm_replay_state_esn *preplay_esn;
-	const struct xfrm_replay *repl;
+	enum xfrm_replay_mode repl_mode;
 	u32 xflags;
 	u32 replay_maxage;
 	u32 replay_maxdiff;
@@ -53584,16 +66282,7 @@ struct rt6_exception_bucket {
 	int depth;
 };
 
-struct xfrm_replay {
-	void (*advance)(struct xfrm_state *, __be32);
-	int (*check)(struct xfrm_state *, struct sk_buff *, __be32);
-	int (*recheck)(struct xfrm_state *, struct sk_buff *, __be32);
-	void (*notify)(struct xfrm_state *, int);
-	int (*overflow)(struct xfrm_state *, struct sk_buff *);
-};
-
 struct xfrm_type {
-	char *description;
 	struct module *owner;
 	u8 proto;
 	u8 flags;
@@ -53602,11 +66291,9 @@ struct xfrm_type {
 	int (*input)(struct xfrm_state *, struct sk_buff *);
 	int (*output)(struct xfrm_state *, struct sk_buff *);
 	int (*reject)(struct xfrm_state *, struct sk_buff *, const struct flowi *);
-	int (*hdr_offset)(struct xfrm_state *, struct sk_buff *, u8 **);
 };
 
 struct xfrm_type_offload {
-	char *description;
 	struct module *owner;
 	u8 proto;
 	void (*encap)(struct xfrm_state *, struct sk_buff *);
@@ -53641,12 +66328,15 @@ struct xfrm_offload {
 	} seq;
 	__u32 flags;
 	__u32 status;
+	__u32 orig_mac_len;
 	__u8 proto;
+	__u8 inner_ipproto;
 };
 
 struct sec_path {
 	int len;
 	int olen;
+	int verified_cnt;
 	struct xfrm_state *xvec[6];
 	struct xfrm_offload ovec[1];
 };
@@ -53657,6 +66347,187 @@ struct udp_hslot {
 	spinlock_t lock;
 };
 
+struct pkey_security_struct {
+	u64 subnet_prefix;
+	u16 pkey;
+	u32 sid;
+};
+
+struct sel_ib_pkey_bkt {
+	int size;
+	struct list_head list;
+};
+
+struct sel_ib_pkey {
+	struct pkey_security_struct psec;
+	struct list_head list;
+	struct callback_head rcu;
+};
+
+struct smack_audit_data {
+	const char *function;
+	char *subject;
+	char *object;
+	char *request;
+	int result;
+};
+
+struct smack_known {
+	struct list_head list;
+	struct hlist_node smk_hashed;
+	char *smk_known;
+	u32 smk_secid;
+	struct netlbl_lsm_secattr smk_netlabel;
+	struct list_head smk_rules;
+	struct mutex smk_rules_lock;
+};
+
+struct superblock_smack {
+	struct smack_known *smk_root;
+	struct smack_known *smk_floor;
+	struct smack_known *smk_hat;
+	struct smack_known *smk_default;
+	int smk_flags;
+};
+
+struct socket_smack {
+	struct smack_known *smk_out;
+	struct smack_known *smk_in;
+	struct smack_known *smk_packet;
+	int smk_state;
+};
+
+struct inode_smack {
+	struct smack_known *smk_inode;
+	struct smack_known *smk_task;
+	struct smack_known *smk_mmap;
+	int smk_flags;
+};
+
+struct task_smack {
+	struct smack_known *smk_task;
+	struct smack_known *smk_forked;
+	struct smack_known *smk_transmuted;
+	struct list_head smk_rules;
+	struct mutex smk_rules_lock;
+	struct list_head smk_relabel;
+};
+
+struct smack_rule {
+	struct list_head list;
+	struct smack_known *smk_subject;
+	struct smack_known *smk_object;
+	int smk_access;
+};
+
+struct smk_net4addr {
+	struct list_head list;
+	struct in_addr smk_host;
+	struct in_addr smk_mask;
+	int smk_masks;
+	struct smack_known *smk_label;
+};
+
+struct smk_net6addr {
+	struct list_head list;
+	struct in6_addr smk_host;
+	struct in6_addr smk_mask;
+	int smk_masks;
+	struct smack_known *smk_label;
+};
+
+struct smack_known_list_elem {
+	struct list_head list;
+	struct smack_known *smk_label;
+};
+
+enum {
+	Opt_error___3 = 4294967295,
+	Opt_fsdefault = 0,
+	Opt_fsfloor = 1,
+	Opt_fshat = 2,
+	Opt_fsroot = 3,
+	Opt_fstransmute = 4,
+};
+
+struct smk_audit_info {
+	struct common_audit_data a;
+	struct smack_audit_data sad;
+};
+
+struct smack_mnt_opts {
+	const char *fsdefault;
+	const char *fsfloor;
+	const char *fshat;
+	const char *fsroot;
+	const char *fstransmute;
+};
+
+struct netlbl_audit {
+	struct lsmblob lsmdata;
+	kuid_t loginuid;
+	unsigned int sessionid;
+};
+
+struct cipso_v4_std_map_tbl {
+	struct {
+		u32 *cipso;
+		u32 *local;
+		u32 cipso_size;
+		u32 local_size;
+	} lvl;
+	struct {
+		u32 *cipso;
+		u32 *local;
+		u32 cipso_size;
+		u32 local_size;
+	} cat;
+};
+
+struct cipso_v4_doi {
+	u32 doi;
+	u32 type;
+	union {
+		struct cipso_v4_std_map_tbl *std;
+	} map;
+	u8 tags[5];
+	refcount_t refcount;
+	struct list_head list;
+	struct callback_head rcu;
+};
+
+enum smk_inos {
+	SMK_ROOT_INO = 2,
+	SMK_LOAD = 3,
+	SMK_CIPSO = 4,
+	SMK_DOI = 5,
+	SMK_DIRECT = 6,
+	SMK_AMBIENT = 7,
+	SMK_NET4ADDR = 8,
+	SMK_ONLYCAP = 9,
+	SMK_LOGGING = 10,
+	SMK_LOAD_SELF = 11,
+	SMK_ACCESSES = 12,
+	SMK_MAPPED = 13,
+	SMK_LOAD2 = 14,
+	SMK_LOAD_SELF2 = 15,
+	SMK_ACCESS2 = 16,
+	SMK_CIPSO2 = 17,
+	SMK_REVOKE_SUBJ = 18,
+	SMK_CHANGE_RULE = 19,
+	SMK_SYSLOG = 20,
+	SMK_PTRACE = 21,
+	SMK_NET6ADDR = 23,
+	SMK_RELABEL_SELF = 24,
+};
+
+struct smack_parsed_rule {
+	struct smack_known *smk_subject;
+	struct smack_known *smk_object;
+	int smk_access1;
+	int smk_access2;
+};
+
 struct sockaddr_un {
 	__kernel_sa_family_t sun_family;
 	char sun_path[108];
@@ -53681,14 +66552,16 @@ struct unix_sock {
 	struct mutex bindlock;
 	struct sock *peer;
 	struct list_head link;
-	atomic_long_t inflight;
+	long unsigned int inflight;
 	spinlock_t lock;
 	long unsigned int gc_flags;
 	long: 64;
+	long: 64;
+	long: 64;
 	struct socket_wq peer_wq;
 	wait_queue_entry_t peer_wake;
 	struct scm_stat scm_stat;
-	long: 64;
+	struct sk_buff *oob_skb;
 	long: 64;
 };
 
@@ -54410,31 +67283,6 @@ struct tomoyo_addr_info {
 	struct tomoyo_unix_addr_info unix0;
 };
 
-typedef unsigned char Byte;
-
-typedef long unsigned int uLong;
-
-struct internal_state;
-
-struct z_stream_s {
-	const Byte *next_in;
-	uLong avail_in;
-	uLong total_in;
-	Byte *next_out;
-	uLong avail_out;
-	uLong total_out;
-	char *msg;
-	struct internal_state *state;
-	void *workspace;
-	int data_type;
-	uLong adler;
-	uLong reserved;
-};
-
-struct internal_state {
-	int dummy;
-};
-
 enum audit_mode {
 	AUDIT_NORMAL = 0,
 	AUDIT_QUIET_DENIED = 1,
@@ -54567,7 +67415,7 @@ struct label_it {
 
 struct aa_policydb {
 	struct aa_dfa *dfa;
-	unsigned int start[17];
+	unsigned int start[33];
 };
 
 struct aa_domain {
@@ -54597,6 +67445,8 @@ struct aa_rlimit {
 
 struct aa_ns;
 
+struct aa_net_compat;
+
 struct aa_secmark;
 
 struct aa_loaddata;
@@ -54617,6 +67467,7 @@ struct aa_profile {
 	struct aa_policydb policy;
 	struct aa_file_rules file;
 	struct aa_caps caps;
+	struct aa_net_compat *net_compat;
 	int xattr_count;
 	char **xattrs;
 	struct aa_rlimit rlimits;
@@ -54649,6 +67500,12 @@ struct path_cond {
 	umode_t mode;
 };
 
+struct aa_net_compat {
+	u16 allow[46];
+	u16 audit[46];
+	u16 quiet[46];
+};
+
 struct aa_secmark {
 	u8 audit;
 	u8 deny;
@@ -54766,6 +67623,10 @@ struct apparmor_audit_data {
 					void *addr;
 					int addrlen;
 				} net;
+				struct {
+					kuid_t fsuid;
+					kuid_t ouid;
+				} mq;
 			};
 		};
 		struct {
@@ -54825,6 +67686,7 @@ struct match_workbuf {
 
 enum path_flags {
 	PATH_IS_DIR = 1,
+	PATH_SOCK_COND = 2,
 	PATH_CONNECT_PATH = 4,
 	PATH_CHROOT_REL = 8,
 	PATH_CHROOT_NSCONNECT = 16,
@@ -54872,6 +67734,15 @@ struct aa_file_ctx {
 struct aa_sk_ctx {
 	struct aa_label *label;
 	struct aa_label *peer;
+	struct path path;
+};
+
+struct aa_inode_sec {
+	struct inode *inode;
+	struct aa_label *label;
+	u16 sclass;
+	bool initialized;
+	spinlock_t lock;
 };
 
 union aa_buffer {
@@ -54879,6 +67750,13 @@ union aa_buffer {
 	char buffer[1];
 };
 
+enum unix_socket_lock_class {
+	U_LOCK_NORMAL = 0,
+	U_LOCK_SECOND = 1,
+	U_LOCK_DIAG = 2,
+	U_LOCK_GC_LISTENER = 3,
+};
+
 struct ptrace_relation {
 	struct task_struct *tracer;
 	struct task_struct *tracee;
@@ -54894,6 +67772,36 @@ struct access_report_info {
 	struct task_struct *agent;
 };
 
+enum sid_policy_type {
+	SIDPOL_DEFAULT = 0,
+	SIDPOL_CONSTRAINED = 1,
+	SIDPOL_ALLOWED = 2,
+};
+
+typedef union {
+	kuid_t uid;
+	kgid_t gid;
+} kid_t;
+
+enum setid_type {
+	UID = 0,
+	GID = 1,
+};
+
+struct setid_rule {
+	struct hlist_node next;
+	kid_t src_id;
+	kid_t dst_id;
+	enum setid_type type;
+};
+
+struct setid_ruleset {
+	struct hlist_head rules[256];
+	char *policy_str;
+	struct callback_head rcu;
+	enum setid_type type;
+};
+
 enum devcg_behavior {
 	DEVCG_DEFAULT_NONE = 0,
 	DEVCG_DEFAULT_ALLOW = 1,
@@ -54915,13 +67823,91 @@ struct dev_cgroup {
 	enum devcg_behavior behavior;
 };
 
+struct landlock_ruleset_attr {
+	__u64 handled_access_fs;
+};
+
+enum landlock_rule_type {
+	LANDLOCK_RULE_PATH_BENEATH = 1,
+};
+
+struct landlock_path_beneath_attr {
+	__u64 allowed_access;
+	__s32 parent_fd;
+} __attribute__((packed));
+
+typedef u16 access_mask_t;
+
+struct landlock_hierarchy {
+	struct landlock_hierarchy *parent;
+	refcount_t usage;
+};
+
+struct landlock_ruleset {
+	struct rb_root root;
+	struct landlock_hierarchy *hierarchy;
+	union {
+		struct work_struct work_free;
+		struct {
+			struct mutex lock;
+			refcount_t usage;
+			u32 num_rules;
+			u32 num_layers;
+			access_mask_t fs_access_masks[0];
+		};
+	};
+};
+
+struct landlock_cred_security {
+	struct landlock_ruleset *domain;
+};
+
+struct landlock_object;
+
+struct landlock_object_underops {
+	void (*release)(struct landlock_object * const);
+};
+
+struct landlock_object {
+	refcount_t usage;
+	spinlock_t lock;
+	void *underobj;
+	union {
+		struct callback_head rcu_free;
+		const struct landlock_object_underops *underops;
+	};
+};
+
+struct landlock_layer {
+	u16 level;
+	access_mask_t access;
+};
+
+struct landlock_rule {
+	struct rb_node node;
+	struct landlock_object *object;
+	u32 num_layers;
+	struct landlock_layer layers[0];
+};
+
+typedef u16 layer_mask_t;
+
+struct landlock_inode_security {
+	struct landlock_object *object;
+};
+
+struct landlock_superblock_security {
+	atomic_long_t inode_refs;
+};
+
 enum integrity_status {
 	INTEGRITY_PASS = 0,
 	INTEGRITY_PASS_IMMUTABLE = 1,
 	INTEGRITY_FAIL = 2,
-	INTEGRITY_NOLABEL = 3,
-	INTEGRITY_NOXATTRS = 4,
-	INTEGRITY_UNKNOWN = 5,
+	INTEGRITY_FAIL_IMMUTABLE = 3,
+	INTEGRITY_NOLABEL = 4,
+	INTEGRITY_NOXATTRS = 5,
+	INTEGRITY_UNKNOWN = 6,
 };
 
 struct ima_digest_data {
@@ -54949,6 +67935,8 @@ struct integrity_iint_cache {
 	long unsigned int flags;
 	long unsigned int measured_pcrs;
 	long unsigned int atomic_flags;
+	long unsigned int real_ino;
+	dev_t real_dev;
 	enum integrity_status ima_file_status: 4;
 	enum integrity_status ima_mmap_status: 4;
 	enum integrity_status ima_bprm_status: 4;
@@ -54958,7 +67946,25 @@ struct integrity_iint_cache {
 	struct ima_digest_data *ima_hash;
 };
 
-struct modsig;
+struct modsig {
+	struct pkcs7_message *pkcs7_msg;
+	enum hash_algo hash_algo;
+	const u8 *digest;
+	u32 digest_size;
+	int raw_pkcs7_len;
+	u8 raw_pkcs7[0];
+};
+
+struct public_key {
+	void *key;
+	u32 keylen;
+	enum OID algo;
+	void *params;
+	u32 paramlen;
+	bool key_is_private;
+	const char *id_type;
+	const char *pkey_algo;
+};
 
 struct asymmetric_key_id;
 
@@ -54980,28 +67986,11 @@ struct asymmetric_key_id {
 	unsigned char data[0];
 };
 
-enum hash_algo {
-	HASH_ALGO_MD4 = 0,
-	HASH_ALGO_MD5 = 1,
-	HASH_ALGO_SHA1 = 2,
-	HASH_ALGO_RIPE_MD_160 = 3,
-	HASH_ALGO_SHA256 = 4,
-	HASH_ALGO_SHA384 = 5,
-	HASH_ALGO_SHA512 = 6,
-	HASH_ALGO_SHA224 = 7,
-	HASH_ALGO_RIPE_MD_128 = 8,
-	HASH_ALGO_RIPE_MD_256 = 9,
-	HASH_ALGO_RIPE_MD_320 = 10,
-	HASH_ALGO_WP_256 = 11,
-	HASH_ALGO_WP_384 = 12,
-	HASH_ALGO_WP_512 = 13,
-	HASH_ALGO_TGR_128 = 14,
-	HASH_ALGO_TGR_160 = 15,
-	HASH_ALGO_TGR_192 = 16,
-	HASH_ALGO_SM3_256 = 17,
-	HASH_ALGO_STREEBOG_256 = 18,
-	HASH_ALGO_STREEBOG_512 = 19,
-	HASH_ALGO__LAST = 20,
+enum asymmetric_payload_bits {
+	asym_crypto = 0,
+	asym_subtype = 1,
+	asym_key_ids = 2,
+	asym_auth = 3,
 };
 
 struct signature_v2_hdr {
@@ -55034,6 +68023,255 @@ struct efi_mokvar_table_entry {
 	u8 data[0];
 };
 
+struct evm_ima_xattr_data {
+	u8 type;
+	u8 data[0];
+};
+
+enum ima_show_type {
+	IMA_SHOW_BINARY = 0,
+	IMA_SHOW_BINARY_NO_FIELD_LEN = 1,
+	IMA_SHOW_BINARY_OLD_STRING_FMT = 2,
+	IMA_SHOW_ASCII = 3,
+};
+
+struct ima_event_data {
+	struct integrity_iint_cache *iint;
+	struct file *file;
+	const unsigned char *filename;
+	struct evm_ima_xattr_data *xattr_value;
+	int xattr_len;
+	const struct modsig *modsig;
+	const char *violation;
+	const void *buf;
+	int buf_len;
+};
+
+struct ima_field_data {
+	u8 *data;
+	u32 len;
+};
+
+struct ima_template_field {
+	const char field_id[16];
+	int (*field_init)(struct ima_event_data *, struct ima_field_data *);
+	void (*field_show)(struct seq_file *, enum ima_show_type, struct ima_field_data *);
+};
+
+struct ima_template_desc {
+	struct list_head list;
+	char *name;
+	char *fmt;
+	int num_fields;
+	const struct ima_template_field **fields;
+};
+
+struct ima_template_entry {
+	int pcr;
+	struct tpm_digest *digests;
+	struct ima_template_desc *template_desc;
+	u32 template_data_len;
+	struct ima_field_data template_data[0];
+};
+
+struct ima_queue_entry {
+	struct hlist_node hnext;
+	struct list_head later;
+	struct ima_template_entry *entry;
+};
+
+struct ima_h_table {
+	atomic_long_t len;
+	atomic_long_t violations;
+	struct hlist_head queue[1024];
+};
+
+enum ima_fs_flags {
+	IMA_FS_BUSY = 0,
+};
+
+enum evm_ima_xattr_type {
+	IMA_XATTR_DIGEST = 1,
+	EVM_XATTR_HMAC = 2,
+	EVM_IMA_XATTR_DIGSIG = 3,
+	IMA_XATTR_DIGEST_NG = 4,
+	EVM_XATTR_PORTABLE_DIGSIG = 5,
+	IMA_XATTR_LAST = 6,
+};
+
+enum ima_hooks {
+	NONE___2 = 0,
+	FILE_CHECK = 1,
+	MMAP_CHECK = 2,
+	BPRM_CHECK = 3,
+	CREDS_CHECK = 4,
+	POST_SETATTR = 5,
+	MODULE_CHECK = 6,
+	FIRMWARE_CHECK = 7,
+	KEXEC_KERNEL_CHECK = 8,
+	KEXEC_INITRAMFS_CHECK = 9,
+	POLICY_CHECK = 10,
+	KEXEC_CMDLINE = 11,
+	KEY_CHECK = 12,
+	CRITICAL_DATA = 13,
+	SETXATTR_CHECK = 14,
+	MAX_CHECK = 15,
+};
+
+enum tpm_pcrs {
+	TPM_PCR0 = 0,
+	TPM_PCR8 = 8,
+	TPM_PCR10 = 10,
+};
+
+struct ima_algo_desc {
+	struct crypto_shash *tfm;
+	enum hash_algo algo;
+};
+
+enum lsm_rule_types {
+	LSM_OBJ_USER = 0,
+	LSM_OBJ_ROLE = 1,
+	LSM_OBJ_TYPE = 2,
+	LSM_SUBJ_USER = 3,
+	LSM_SUBJ_ROLE = 4,
+	LSM_SUBJ_TYPE = 5,
+};
+
+enum policy_types {
+	ORIGINAL_TCB = 1,
+	DEFAULT_TCB = 2,
+};
+
+enum policy_rule_list {
+	IMA_DEFAULT_POLICY = 1,
+	IMA_CUSTOM_POLICY = 2,
+};
+
+struct ima_rule_opt_list {
+	size_t count;
+	char *items[0];
+};
+
+struct ima_rule_entry {
+	struct list_head list;
+	int action;
+	unsigned int flags;
+	enum ima_hooks func;
+	int mask;
+	long unsigned int fsmagic;
+	uuid_t fsuuid;
+	kuid_t uid;
+	kuid_t fowner;
+	bool (*uid_op)(kuid_t, kuid_t);
+	bool (*fowner_op)(kuid_t, kuid_t);
+	int pcr;
+	unsigned int allowed_algos;
+	struct {
+		void *rules[4];
+		char *args_p;
+		int type;
+	} lsm[6];
+	char *fsname;
+	struct ima_rule_opt_list *keyrings;
+	struct ima_rule_opt_list *label;
+	struct ima_template_desc *template;
+};
+
+enum {
+	Opt_measure = 0,
+	Opt_dont_measure = 1,
+	Opt_appraise = 2,
+	Opt_dont_appraise = 3,
+	Opt_audit = 4,
+	Opt_hash___3 = 5,
+	Opt_dont_hash = 6,
+	Opt_obj_user = 7,
+	Opt_obj_role = 8,
+	Opt_obj_type = 9,
+	Opt_subj_user = 10,
+	Opt_subj_role = 11,
+	Opt_subj_type = 12,
+	Opt_func = 13,
+	Opt_mask = 14,
+	Opt_fsmagic = 15,
+	Opt_fsname = 16,
+	Opt_fsuuid = 17,
+	Opt_uid_eq = 18,
+	Opt_euid_eq = 19,
+	Opt_fowner_eq = 20,
+	Opt_uid_gt = 21,
+	Opt_euid_gt = 22,
+	Opt_fowner_gt = 23,
+	Opt_uid_lt = 24,
+	Opt_euid_lt = 25,
+	Opt_fowner_lt = 26,
+	Opt_appraise_type = 27,
+	Opt_appraise_flag = 28,
+	Opt_appraise_algos = 29,
+	Opt_permit_directio = 30,
+	Opt_pcr = 31,
+	Opt_template = 32,
+	Opt_keyrings = 33,
+	Opt_label = 34,
+	Opt_err___10 = 35,
+};
+
+struct ima_kexec_hdr {
+	u16 version;
+	u16 _reserved0;
+	u32 _reserved1;
+	u64 buffer_size;
+	u64 count;
+};
+
+enum header_fields {
+	HDR_PCR = 0,
+	HDR_DIGEST = 1,
+	HDR_TEMPLATE_NAME = 2,
+	HDR_TEMPLATE_DATA = 3,
+	HDR__LAST = 4,
+};
+
+enum data_formats {
+	DATA_FMT_DIGEST = 0,
+	DATA_FMT_DIGEST_WITH_ALGO = 1,
+	DATA_FMT_STRING = 2,
+	DATA_FMT_HEX = 3,
+	DATA_FMT_UINT = 4,
+};
+
+struct ima_key_entry {
+	struct list_head list;
+	void *payload;
+	size_t payload_len;
+	char *keyring_name;
+};
+
+struct evm_xattr {
+	struct evm_ima_xattr_data data;
+	u8 digest[20];
+};
+
+struct xattr_list {
+	struct list_head list;
+	char *name;
+	bool enabled;
+};
+
+struct evm_digest {
+	struct ima_digest_data hdr;
+	char digest[64];
+};
+
+struct h_misc {
+	long unsigned int ino;
+	__u32 generation;
+	uid_t uid;
+	gid_t gid;
+	umode_t mode;
+};
+
 enum {
 	CRYPTO_MSG_ALG_REQUEST = 0,
 	CRYPTO_MSG_ALG_REGISTER = 1,
@@ -55051,27 +68289,6 @@ struct crypto_cipher {
 	struct crypto_tfm base;
 };
 
-enum {
-	CRYPTOA_UNSPEC = 0,
-	CRYPTOA_ALG = 1,
-	CRYPTOA_TYPE = 2,
-	CRYPTOA_U32 = 3,
-	__CRYPTOA_MAX = 4,
-};
-
-struct crypto_attr_alg {
-	char name[128];
-};
-
-struct crypto_attr_type {
-	u32 type;
-	u32 mask;
-};
-
-struct crypto_attr_u32 {
-	u32 num;
-};
-
 struct rtattr {
 	short unsigned int rta_len;
 	short unsigned int rta_type;
@@ -55084,6 +68301,15 @@ struct crypto_queue {
 	unsigned int max_qlen;
 };
 
+struct crypto_attr_alg {
+	char name[128];
+};
+
+struct crypto_attr_type {
+	u32 type;
+	u32 mask;
+};
+
 enum {
 	NAPI_STATE_SCHED = 0,
 	NAPI_STATE_MISSED = 1,
@@ -55092,6 +68318,15 @@ enum {
 	NAPI_STATE_LISTED = 4,
 	NAPI_STATE_NO_BUSY_POLL = 5,
 	NAPI_STATE_IN_BUSY_POLL = 6,
+	NAPI_STATE_PREFER_BUSY_POLL = 7,
+	NAPI_STATE_THREADED = 8,
+	NAPI_STATE_SCHED_THREADED = 9,
+};
+
+enum xps_map_type {
+	XPS_CPUS = 0,
+	XPS_RXQS = 1,
+	XPS_MAPS_MAX = 2,
 };
 
 enum bpf_xdp_mode {
@@ -55120,6 +68355,13 @@ enum {
 	NETIF_MSG_CLASS_COUNT = 15,
 };
 
+enum {
+	CRYPTOA_UNSPEC = 0,
+	CRYPTOA_ALG = 1,
+	CRYPTOA_TYPE = 2,
+	__CRYPTOA_MAX = 3,
+};
+
 struct scatter_walk {
 	struct scatterlist *sg;
 	unsigned int offset;
@@ -55467,93 +68709,6 @@ struct kpp_secret {
 	short unsigned int len;
 };
 
-enum asn1_class {
-	ASN1_UNIV = 0,
-	ASN1_APPL = 1,
-	ASN1_CONT = 2,
-	ASN1_PRIV = 3,
-};
-
-enum asn1_method {
-	ASN1_PRIM = 0,
-	ASN1_CONS = 1,
-};
-
-enum asn1_tag {
-	ASN1_EOC = 0,
-	ASN1_BOOL = 1,
-	ASN1_INT = 2,
-	ASN1_BTS = 3,
-	ASN1_OTS = 4,
-	ASN1_NULL = 5,
-	ASN1_OID = 6,
-	ASN1_ODE = 7,
-	ASN1_EXT = 8,
-	ASN1_REAL = 9,
-	ASN1_ENUM = 10,
-	ASN1_EPDV = 11,
-	ASN1_UTF8STR = 12,
-	ASN1_RELOID = 13,
-	ASN1_SEQ = 16,
-	ASN1_SET = 17,
-	ASN1_NUMSTR = 18,
-	ASN1_PRNSTR = 19,
-	ASN1_TEXSTR = 20,
-	ASN1_VIDSTR = 21,
-	ASN1_IA5STR = 22,
-	ASN1_UNITIM = 23,
-	ASN1_GENTIM = 24,
-	ASN1_GRASTR = 25,
-	ASN1_VISSTR = 26,
-	ASN1_GENSTR = 27,
-	ASN1_UNISTR = 28,
-	ASN1_CHRSTR = 29,
-	ASN1_BMPSTR = 30,
-	ASN1_LONG_TAG = 31,
-};
-
-typedef int (*asn1_action_t)(void *, size_t, unsigned char, const void *, size_t);
-
-struct asn1_decoder {
-	const unsigned char *machine;
-	size_t machlen;
-	const asn1_action_t *actions;
-};
-
-enum asn1_opcode {
-	ASN1_OP_MATCH = 0,
-	ASN1_OP_MATCH_OR_SKIP = 1,
-	ASN1_OP_MATCH_ACT = 2,
-	ASN1_OP_MATCH_ACT_OR_SKIP = 3,
-	ASN1_OP_MATCH_JUMP = 4,
-	ASN1_OP_MATCH_JUMP_OR_SKIP = 5,
-	ASN1_OP_MATCH_ANY = 8,
-	ASN1_OP_MATCH_ANY_OR_SKIP = 9,
-	ASN1_OP_MATCH_ANY_ACT = 10,
-	ASN1_OP_MATCH_ANY_ACT_OR_SKIP = 11,
-	ASN1_OP_COND_MATCH_OR_SKIP = 17,
-	ASN1_OP_COND_MATCH_ACT_OR_SKIP = 19,
-	ASN1_OP_COND_MATCH_JUMP_OR_SKIP = 21,
-	ASN1_OP_COND_MATCH_ANY = 24,
-	ASN1_OP_COND_MATCH_ANY_OR_SKIP = 25,
-	ASN1_OP_COND_MATCH_ANY_ACT = 26,
-	ASN1_OP_COND_MATCH_ANY_ACT_OR_SKIP = 27,
-	ASN1_OP_COND_FAIL = 28,
-	ASN1_OP_COMPLETE = 29,
-	ASN1_OP_ACT = 30,
-	ASN1_OP_MAYBE_ACT = 31,
-	ASN1_OP_END_SEQ = 32,
-	ASN1_OP_END_SET = 33,
-	ASN1_OP_END_SEQ_OF = 34,
-	ASN1_OP_END_SET_OF = 35,
-	ASN1_OP_END_SEQ_ACT = 36,
-	ASN1_OP_END_SET_ACT = 37,
-	ASN1_OP_END_SEQ_OF_ACT = 38,
-	ASN1_OP_END_SET_OF_ACT = 39,
-	ASN1_OP_RETURN = 40,
-	ASN1_OP__NR = 41,
-};
-
 enum rsapubkey_actions {
 	ACT_rsa_get_e = 0,
 	ACT_rsa_get_n = 1,
@@ -55597,8 +68752,6 @@ struct rsa_mpi_key {
 	MPI d;
 };
 
-struct asn1_decoder;
-
 struct rsa_asn1_template {
 	const char *name;
 	const u8 *data;
@@ -55627,24 +68780,6 @@ struct crypto_report_acomp {
 	char type[64];
 };
 
-struct acomp_req {
-	struct crypto_async_request base;
-	struct scatterlist *src;
-	struct scatterlist *dst;
-	unsigned int slen;
-	unsigned int dlen;
-	u32 flags;
-	void *__ctx[0];
-};
-
-struct crypto_acomp {
-	int (*compress)(struct acomp_req *);
-	int (*decompress)(struct acomp_req *);
-	void (*dst_free)(struct scatterlist *);
-	unsigned int reqsize;
-	struct crypto_tfm base;
-};
-
 struct acomp_alg {
 	int (*compress)(struct acomp_req *);
 	int (*decompress)(struct acomp_req *);
@@ -55683,16 +68818,9 @@ struct cryptomgr_param {
 		struct rtattr attr;
 		struct crypto_attr_type data;
 	} type;
-	union {
+	struct {
 		struct rtattr attr;
-		struct {
-			struct rtattr attr;
-			struct crypto_attr_alg data;
-		} alg;
-		struct {
-			struct rtattr attr;
-			struct crypto_attr_u32 data;
-		} nu32;
+		struct crypto_attr_alg data;
 	} attrs[32];
 	char template[128];
 	struct crypto_larval *larval;
@@ -55706,314 +68834,6 @@ struct crypto_test_param {
 	u32 type;
 };
 
-struct drbg_string {
-	const unsigned char *buf;
-	size_t len;
-	struct list_head list;
-};
-
-struct drbg_test_data {
-	struct drbg_string *testentropy;
-};
-
-enum OID {
-	OID_id_dsa_with_sha1 = 0,
-	OID_id_dsa = 1,
-	OID_id_ecdsa_with_sha1 = 2,
-	OID_id_ecPublicKey = 3,
-	OID_rsaEncryption = 4,
-	OID_md2WithRSAEncryption = 5,
-	OID_md3WithRSAEncryption = 6,
-	OID_md4WithRSAEncryption = 7,
-	OID_sha1WithRSAEncryption = 8,
-	OID_sha256WithRSAEncryption = 9,
-	OID_sha384WithRSAEncryption = 10,
-	OID_sha512WithRSAEncryption = 11,
-	OID_sha224WithRSAEncryption = 12,
-	OID_data = 13,
-	OID_signed_data = 14,
-	OID_email_address = 15,
-	OID_contentType = 16,
-	OID_messageDigest = 17,
-	OID_signingTime = 18,
-	OID_smimeCapabilites = 19,
-	OID_smimeAuthenticatedAttrs = 20,
-	OID_md2 = 21,
-	OID_md4 = 22,
-	OID_md5 = 23,
-	OID_msIndirectData = 24,
-	OID_msStatementType = 25,
-	OID_msSpOpusInfo = 26,
-	OID_msPeImageDataObjId = 27,
-	OID_msIndividualSPKeyPurpose = 28,
-	OID_msOutlookExpress = 29,
-	OID_certAuthInfoAccess = 30,
-	OID_sha1 = 31,
-	OID_sha256 = 32,
-	OID_sha384 = 33,
-	OID_sha512 = 34,
-	OID_sha224 = 35,
-	OID_commonName = 36,
-	OID_surname = 37,
-	OID_countryName = 38,
-	OID_locality = 39,
-	OID_stateOrProvinceName = 40,
-	OID_organizationName = 41,
-	OID_organizationUnitName = 42,
-	OID_title = 43,
-	OID_description = 44,
-	OID_name = 45,
-	OID_givenName = 46,
-	OID_initials = 47,
-	OID_generationalQualifier = 48,
-	OID_subjectKeyIdentifier = 49,
-	OID_keyUsage = 50,
-	OID_subjectAltName = 51,
-	OID_issuerAltName = 52,
-	OID_basicConstraints = 53,
-	OID_crlDistributionPoints = 54,
-	OID_certPolicies = 55,
-	OID_authorityKeyIdentifier = 56,
-	OID_extKeyUsage = 57,
-	OID_gostCPSignA = 58,
-	OID_gostCPSignB = 59,
-	OID_gostCPSignC = 60,
-	OID_gost2012PKey256 = 61,
-	OID_gost2012PKey512 = 62,
-	OID_gost2012Digest256 = 63,
-	OID_gost2012Digest512 = 64,
-	OID_gost2012Signature256 = 65,
-	OID_gost2012Signature512 = 66,
-	OID_gostTC26Sign256A = 67,
-	OID_gostTC26Sign256B = 68,
-	OID_gostTC26Sign256C = 69,
-	OID_gostTC26Sign256D = 70,
-	OID_gostTC26Sign512A = 71,
-	OID_gostTC26Sign512B = 72,
-	OID_gostTC26Sign512C = 73,
-	OID_sm2 = 74,
-	OID_sm3 = 75,
-	OID_SM2_with_SM3 = 76,
-	OID_sm3WithRSAEncryption = 77,
-	OID__NR = 78,
-};
-
-struct hash_testvec {
-	const char *key;
-	const char *plaintext;
-	const char *digest;
-	unsigned int psize;
-	short unsigned int ksize;
-	int setkey_error;
-	int digest_error;
-};
-
-struct cipher_testvec {
-	const char *key;
-	const char *iv;
-	const char *iv_out;
-	const char *ptext;
-	const char *ctext;
-	unsigned char wk;
-	short unsigned int klen;
-	unsigned int len;
-	bool fips_skip;
-	bool generates_iv;
-	int setkey_error;
-	int crypt_error;
-};
-
-struct aead_testvec {
-	const char *key;
-	const char *iv;
-	const char *ptext;
-	const char *assoc;
-	const char *ctext;
-	unsigned char novrfy;
-	unsigned char wk;
-	unsigned char klen;
-	unsigned int plen;
-	unsigned int clen;
-	unsigned int alen;
-	int setkey_error;
-	int setauthsize_error;
-	int crypt_error;
-};
-
-struct cprng_testvec {
-	const char *key;
-	const char *dt;
-	const char *v;
-	const char *result;
-	unsigned char klen;
-	short unsigned int dtlen;
-	short unsigned int vlen;
-	short unsigned int rlen;
-	short unsigned int loops;
-};
-
-struct drbg_testvec {
-	const unsigned char *entropy;
-	size_t entropylen;
-	const unsigned char *entpra;
-	const unsigned char *entprb;
-	size_t entprlen;
-	const unsigned char *addtla;
-	const unsigned char *addtlb;
-	size_t addtllen;
-	const unsigned char *pers;
-	size_t perslen;
-	const unsigned char *expected;
-	size_t expectedlen;
-};
-
-struct akcipher_testvec {
-	const unsigned char *key;
-	const unsigned char *params;
-	const unsigned char *m;
-	const unsigned char *c;
-	unsigned int key_len;
-	unsigned int param_len;
-	unsigned int m_size;
-	unsigned int c_size;
-	bool public_key_vec;
-	bool siggen_sigver_test;
-	enum OID algo;
-};
-
-struct kpp_testvec {
-	const unsigned char *secret;
-	const unsigned char *b_secret;
-	const unsigned char *b_public;
-	const unsigned char *expected_a_public;
-	const unsigned char *expected_ss;
-	short unsigned int secret_size;
-	short unsigned int b_secret_size;
-	short unsigned int b_public_size;
-	short unsigned int expected_a_public_size;
-	short unsigned int expected_ss_size;
-	bool genkey;
-};
-
-struct comp_testvec {
-	int inlen;
-	int outlen;
-	char input[512];
-	char output[512];
-};
-
-struct aead_test_suite {
-	const struct aead_testvec *vecs;
-	unsigned int count;
-	unsigned int einval_allowed: 1;
-	unsigned int aad_iv: 1;
-};
-
-struct cipher_test_suite {
-	const struct cipher_testvec *vecs;
-	unsigned int count;
-};
-
-struct comp_test_suite {
-	struct {
-		const struct comp_testvec *vecs;
-		unsigned int count;
-	} comp;
-	struct {
-		const struct comp_testvec *vecs;
-		unsigned int count;
-	} decomp;
-};
-
-struct hash_test_suite {
-	const struct hash_testvec *vecs;
-	unsigned int count;
-};
-
-struct cprng_test_suite {
-	const struct cprng_testvec *vecs;
-	unsigned int count;
-};
-
-struct drbg_test_suite {
-	const struct drbg_testvec *vecs;
-	unsigned int count;
-};
-
-struct akcipher_test_suite {
-	const struct akcipher_testvec *vecs;
-	unsigned int count;
-};
-
-struct kpp_test_suite {
-	const struct kpp_testvec *vecs;
-	unsigned int count;
-};
-
-struct alg_test_desc {
-	const char *alg;
-	const char *generic_driver;
-	int (*test)(const struct alg_test_desc *, const char *, u32, u32);
-	int fips_allowed;
-	union {
-		struct aead_test_suite aead;
-		struct cipher_test_suite cipher;
-		struct comp_test_suite comp;
-		struct hash_test_suite hash;
-		struct cprng_test_suite cprng;
-		struct drbg_test_suite drbg;
-		struct akcipher_test_suite akcipher;
-		struct kpp_test_suite kpp;
-	} suite;
-};
-
-enum flush_type {
-	FLUSH_TYPE_NONE = 0,
-	FLUSH_TYPE_FLUSH = 1,
-	FLUSH_TYPE_REIMPORT = 2,
-};
-
-enum finalization_type {
-	FINALIZATION_TYPE_FINAL = 0,
-	FINALIZATION_TYPE_FINUP = 1,
-	FINALIZATION_TYPE_DIGEST = 2,
-};
-
-struct test_sg_division {
-	unsigned int proportion_of_total;
-	unsigned int offset;
-	bool offset_relative_to_alignmask;
-	enum flush_type flush_type;
-	bool nosimd;
-};
-
-struct testvec_config {
-	const char *name;
-	bool inplace;
-	u32 req_flags;
-	struct test_sg_division src_divs[8];
-	struct test_sg_division dst_divs[8];
-	unsigned int iv_offset;
-	unsigned int key_offset;
-	bool iv_offset_relative_to_alignmask;
-	bool key_offset_relative_to_alignmask;
-	enum finalization_type finalization_type;
-	bool nosimd;
-};
-
-struct test_sglist {
-	char *bufs[8];
-	struct scatterlist sgl[8];
-	struct scatterlist sgl_saved[8];
-	struct scatterlist *sgl_ptr;
-	unsigned int nents;
-};
-
-struct cipher_test_sglists {
-	struct test_sglist src;
-	struct test_sglist dst;
-};
-
 struct hmac_ctx {
 	struct crypto_shash *hash;
 };
@@ -56038,11 +68858,152 @@ struct sha256_state {
 	u8 buf[64];
 };
 
+struct sha512_state {
+	u64 state[8];
+	u64 count[2];
+	u8 buf[128];
+};
+
+typedef void sha512_block_fn(struct sha512_state *, const u8 *, int);
+
+typedef struct {
+	u64 a;
+	u64 b;
+} u128;
+
+typedef struct {
+	__be64 a;
+	__be64 b;
+} be128;
+
+typedef struct {
+	__le64 b;
+	__le64 a;
+} le128;
+
+struct gf128mul_4k {
+	be128 t[256];
+};
+
+struct gf128mul_64k {
+	struct gf128mul_4k *t[16];
+};
+
+struct crypto_cts_ctx {
+	struct crypto_skcipher *child;
+};
+
+struct crypto_cts_reqctx {
+	struct scatterlist sg[2];
+	unsigned int offset;
+	struct skcipher_request subreq;
+};
+
+struct xts_tfm_ctx {
+	struct crypto_skcipher *child;
+	struct crypto_cipher *tweak;
+};
+
+struct xts_instance_ctx {
+	struct crypto_skcipher_spawn spawn;
+	char name[128];
+};
+
+struct xts_request_ctx {
+	le128 t;
+	struct scatterlist *tail;
+	struct scatterlist sg[2];
+	struct skcipher_request subreq;
+};
+
+struct crypto_rfc3686_ctx {
+	struct crypto_skcipher *child;
+	u8 nonce[4];
+};
+
+struct crypto_rfc3686_req_ctx {
+	u8 iv[16];
+	struct skcipher_request subreq;
+};
+
+struct gcm_instance_ctx {
+	struct crypto_skcipher_spawn ctr;
+	struct crypto_ahash_spawn ghash;
+};
+
+struct crypto_gcm_ctx {
+	struct crypto_skcipher *ctr;
+	struct crypto_ahash *ghash;
+};
+
+struct crypto_rfc4106_ctx {
+	struct crypto_aead *child;
+	u8 nonce[4];
+};
+
+struct crypto_rfc4106_req_ctx {
+	struct scatterlist src[3];
+	struct scatterlist dst[3];
+	struct aead_request subreq;
+};
+
+struct crypto_rfc4543_instance_ctx {
+	struct crypto_aead_spawn aead;
+};
+
+struct crypto_rfc4543_ctx {
+	struct crypto_aead *child;
+	struct crypto_sync_skcipher *null;
+	u8 nonce[4];
+};
+
+struct crypto_rfc4543_req_ctx {
+	struct aead_request subreq;
+};
+
+struct crypto_gcm_ghash_ctx {
+	unsigned int cryptlen;
+	struct scatterlist *src;
+	int (*complete)(struct aead_request *, u32);
+};
+
+struct crypto_gcm_req_priv_ctx {
+	u8 iv[16];
+	u8 auth_tag[16];
+	u8 iauth_tag[16];
+	struct scatterlist src[3];
+	struct scatterlist dst[3];
+	struct scatterlist sg;
+	struct crypto_gcm_ghash_ctx ghash_ctx;
+	union {
+		struct ahash_request ahreq;
+		struct skcipher_request skreq;
+	} u;
+};
+
+struct crypto_aes_ctx {
+	u32 key_enc[60];
+	u32 key_dec[60];
+	u32 key_length;
+};
+
 struct deflate_ctx {
 	struct z_stream_s comp_stream;
 	struct z_stream_s decomp_stream;
 };
 
+struct chksum_ctx {
+	u32 key;
+};
+
+struct chksum_desc_ctx {
+	u32 crc;
+};
+
+struct chksum_desc_ctx___2 {
+	__u16 crc;
+};
+
 struct lzo_ctx {
 	void *lzo_comp_mem;
 };
@@ -56056,11 +69017,109 @@ struct crypto_report_rng {
 	unsigned int seedsize;
 };
 
-enum asymmetric_payload_bits {
-	asym_crypto = 0,
-	asym_subtype = 1,
-	asym_key_ids = 2,
-	asym_auth = 3,
+struct drbg_string {
+	const unsigned char *buf;
+	size_t len;
+	struct list_head list;
+};
+
+typedef uint32_t drbg_flag_t;
+
+struct drbg_core {
+	drbg_flag_t flags;
+	__u8 statelen;
+	__u8 blocklen_bytes;
+	char cra_name[128];
+	char backend_cra_name[128];
+};
+
+struct drbg_state;
+
+struct drbg_state_ops {
+	int (*update)(struct drbg_state *, struct list_head *, int);
+	int (*generate)(struct drbg_state *, unsigned char *, unsigned int, struct list_head *);
+	int (*crypto_init)(struct drbg_state *);
+	int (*crypto_fini)(struct drbg_state *);
+};
+
+enum drbg_seed_state {
+	DRBG_SEED_STATE_UNSEEDED = 0,
+	DRBG_SEED_STATE_PARTIAL = 1,
+	DRBG_SEED_STATE_FULL = 2,
+};
+
+struct drbg_state {
+	struct mutex drbg_mutex;
+	unsigned char *V;
+	unsigned char *Vbuf;
+	unsigned char *C;
+	unsigned char *Cbuf;
+	size_t reseed_ctr;
+	size_t reseed_threshold;
+	unsigned char *scratchpad;
+	unsigned char *scratchpadbuf;
+	void *priv_data;
+	struct crypto_skcipher *ctr_handle;
+	struct skcipher_request *ctr_req;
+	__u8 *outscratchpadbuf;
+	__u8 *outscratchpad;
+	struct crypto_wait ctr_wait;
+	struct scatterlist sg_in;
+	struct scatterlist sg_out;
+	enum drbg_seed_state seeded;
+	bool pr;
+	bool fips_primed;
+	unsigned char *prev;
+	struct crypto_rng *jent;
+	const struct drbg_state_ops *d_ops;
+	const struct drbg_core *core;
+	struct drbg_string test_data;
+};
+
+enum drbg_prefixes {
+	DRBG_PREFIX0 = 0,
+	DRBG_PREFIX1 = 1,
+	DRBG_PREFIX2 = 2,
+	DRBG_PREFIX3 = 3,
+};
+
+struct s {
+	__be32 conv;
+};
+
+struct rand_data {
+	__u64 data;
+	__u64 old_data;
+	__u64 prev_time;
+	__u64 last_delta;
+	__s64 last_delta2;
+	unsigned int osr;
+	unsigned char *mem;
+	unsigned int memlocation;
+	unsigned int memblocks;
+	unsigned int memblocksize;
+	unsigned int memaccessloops;
+	int rct_count;
+	unsigned int apt_observations;
+	unsigned int apt_count;
+	unsigned int apt_base;
+	unsigned int apt_base_set: 1;
+	unsigned int health_failure: 1;
+};
+
+struct jitterentropy {
+	spinlock_t jent_lock;
+	struct rand_data *entropy_collector;
+	unsigned int reset_cnt;
+};
+
+struct ghash_ctx {
+	struct gf128mul_4k *gf128;
+};
+
+struct ghash_desc_ctx {
+	u8 buffer[16];
+	u32 bytes;
 };
 
 struct asymmetric_key_ids {
@@ -56085,17 +69144,6 @@ struct asymmetric_key_parser {
 	int (*parse)(struct key_preparsed_payload *);
 };
 
-struct public_key {
-	void *key;
-	u32 keylen;
-	enum OID algo;
-	void *params;
-	u32 paramlen;
-	bool key_is_private;
-	const char *id_type;
-	const char *pkey_algo;
-};
-
 enum x509_actions {
 	ACT_x509_extract_key_data = 0,
 	ACT_x509_extract_name_segment = 1,
@@ -56214,18 +69262,6 @@ struct pkcs7_signed_info {
 	struct public_key_signature *sig;
 };
 
-struct pkcs7_message {
-	struct x509_certificate *certs;
-	struct x509_certificate *crl;
-	struct pkcs7_signed_info *signed_infos;
-	u8 version;
-	bool have_authattrs;
-	enum OID data_type;
-	size_t data_len;
-	size_t data_hdrlen;
-	const void *data;
-};
-
 struct pkcs7_parse_context {
 	struct pkcs7_message *msg;
 	struct pkcs7_signed_info *sinfo;
@@ -56409,24 +69445,45 @@ enum mscode_actions {
 	NR__mscode_actions = 3,
 };
 
-enum stat_group {
-	STAT_READ = 0,
-	STAT_WRITE = 1,
-	STAT_DISCARD = 2,
-	STAT_FLUSH = 3,
-	NR_STAT_GROUPS = 4,
+enum {
+	DISK_EVENT_MEDIA_CHANGE = 1,
+	DISK_EVENT_EJECT_REQUEST = 2,
 };
 
-struct biovec_slab {
-	int nr_vecs;
-	char *name;
-	struct kmem_cache *slab;
+enum {
+	DISK_EVENT_FLAG_POLL = 1,
+	DISK_EVENT_FLAG_UEVENT = 2,
+	DISK_EVENT_FLAG_BLOCK_ON_EXCL_WRITE = 4,
+};
+
+struct bdev_inode {
+	struct block_device bdev;
+	struct inode vfs_inode;
+};
+
+struct blkdev_dio {
+	union {
+		struct kiocb *iocb;
+		struct task_struct *waiter;
+	};
+	size_t size;
+	atomic_t ref;
+	bool multi_bio: 1;
+	bool should_dirty: 1;
+	bool is_sync: 1;
+	struct bio bio;
+};
+
+struct bio_alloc_cache {
+	struct bio_list free_list;
+	unsigned int nr;
 };
 
 enum rq_qos_id {
 	RQ_QOS_WBT = 0,
 	RQ_QOS_LATENCY = 1,
 	RQ_QOS_COST = 2,
+	RQ_QOS_IOPRIO = 3,
 };
 
 struct rq_qos_ops;
@@ -56453,6 +69510,12 @@ struct rq_qos_ops {
 	const struct blk_mq_debugfs_attr *debugfs_attrs;
 };
 
+struct biovec_slab {
+	int nr_vecs;
+	char *name;
+	struct kmem_cache *slab;
+};
+
 struct bio_slab {
 	struct kmem_cache *slab;
 	unsigned int slab_ref;
@@ -56467,6 +69530,7 @@ enum {
 	BLK_MQ_F_TAG_HCTX_SHARED = 8,
 	BLK_MQ_F_BLOCKING = 32,
 	BLK_MQ_F_NO_SCHED = 64,
+	BLK_MQ_F_NO_SCHED_BY_DEFAULT = 128,
 	BLK_MQ_F_ALLOC_POLICY_START_BIT = 8,
 	BLK_MQ_F_ALLOC_POLICY_BITS = 1,
 	BLK_MQ_S_STOPPED = 0,
@@ -56541,16 +69605,6 @@ struct trace_event_raw_block_rq {
 	char __data[0];
 };
 
-struct trace_event_raw_block_bio_bounce {
-	struct trace_entry ent;
-	dev_t dev;
-	sector_t sector;
-	unsigned int nr_sector;
-	char rwbs[8];
-	char comm[16];
-	char __data[0];
-};
-
 struct trace_event_raw_block_bio_complete {
 	struct trace_entry ent;
 	dev_t dev;
@@ -56561,27 +69615,7 @@ struct trace_event_raw_block_bio_complete {
 	char __data[0];
 };
 
-struct trace_event_raw_block_bio_merge {
-	struct trace_entry ent;
-	dev_t dev;
-	sector_t sector;
-	unsigned int nr_sector;
-	char rwbs[8];
-	char comm[16];
-	char __data[0];
-};
-
-struct trace_event_raw_block_bio_queue {
-	struct trace_entry ent;
-	dev_t dev;
-	sector_t sector;
-	unsigned int nr_sector;
-	char rwbs[8];
-	char comm[16];
-	char __data[0];
-};
-
-struct trace_event_raw_block_get_rq {
+struct trace_event_raw_block_bio {
 	struct trace_entry ent;
 	dev_t dev;
 	sector_t sector;
@@ -56651,15 +69685,9 @@ struct trace_event_data_offsets_block_rq {
 	u32 cmd;
 };
 
-struct trace_event_data_offsets_block_bio_bounce {};
-
 struct trace_event_data_offsets_block_bio_complete {};
 
-struct trace_event_data_offsets_block_bio_merge {};
-
-struct trace_event_data_offsets_block_bio_queue {};
-
-struct trace_event_data_offsets_block_get_rq {};
+struct trace_event_data_offsets_block_bio {};
 
 struct trace_event_data_offsets_block_plug {};
 
@@ -56685,27 +69713,25 @@ typedef void (*btf_trace_block_rq_issue)(void *, struct request *);
 
 typedef void (*btf_trace_block_rq_merge)(void *, struct request *);
 
-typedef void (*btf_trace_block_bio_bounce)(void *, struct request_queue *, struct bio *);
-
 typedef void (*btf_trace_block_bio_complete)(void *, struct request_queue *, struct bio *);
 
-typedef void (*btf_trace_block_bio_backmerge)(void *, struct request_queue *, struct request *, struct bio *);
+typedef void (*btf_trace_block_bio_bounce)(void *, struct bio *);
 
-typedef void (*btf_trace_block_bio_frontmerge)(void *, struct request_queue *, struct request *, struct bio *);
+typedef void (*btf_trace_block_bio_backmerge)(void *, struct bio *);
 
-typedef void (*btf_trace_block_bio_queue)(void *, struct request_queue *, struct bio *);
+typedef void (*btf_trace_block_bio_frontmerge)(void *, struct bio *);
 
-typedef void (*btf_trace_block_getrq)(void *, struct request_queue *, struct bio *, int);
+typedef void (*btf_trace_block_bio_queue)(void *, struct bio *);
 
-typedef void (*btf_trace_block_sleeprq)(void *, struct request_queue *, struct bio *, int);
+typedef void (*btf_trace_block_getrq)(void *, struct bio *);
 
 typedef void (*btf_trace_block_plug)(void *, struct request_queue *);
 
 typedef void (*btf_trace_block_unplug)(void *, struct request_queue *, unsigned int, bool);
 
-typedef void (*btf_trace_block_split)(void *, struct request_queue *, struct bio *, unsigned int);
+typedef void (*btf_trace_block_split)(void *, struct bio *, unsigned int);
 
-typedef void (*btf_trace_block_bio_remap)(void *, struct request_queue *, struct bio *, dev_t, sector_t);
+typedef void (*btf_trace_block_bio_remap)(void *, struct bio *, dev_t, sector_t);
 
 typedef void (*btf_trace_block_rq_remap)(void *, struct request *, dev_t, sector_t);
 
@@ -56730,14 +69756,6 @@ enum {
 	FLUSH_PENDING_TIMEOUT = 1250,
 };
 
-enum blk_default_limits {
-	BLK_MAX_SEGMENTS = 128,
-	BLK_SAFE_MAX_SECTORS = 255,
-	BLK_DEF_MAX_SECTORS = 2560,
-	BLK_MAX_SEGMENT_SIZE = 65536,
-	BLK_SEG_BOUNDARY_MASK = 4294967295,
-};
-
 enum {
 	ICQ_EXITED = 4,
 	ICQ_DESTROYED = 8,
@@ -56772,13 +69790,17 @@ enum bio_merge_status {
 
 typedef bool (*sb_for_each_fn)(struct sbitmap *, unsigned int, void *);
 
+typedef bool busy_iter_fn(struct blk_mq_hw_ctx *, struct request *, void *, bool);
+
+typedef bool busy_tag_iter_fn(struct request *, void *, bool);
+
 enum {
 	BLK_MQ_UNIQUE_TAG_BITS = 16,
 	BLK_MQ_UNIQUE_TAG_MASK = 65535,
 };
 
 struct mq_inflight {
-	struct hd_struct *part;
+	struct block_device *part;
 	unsigned int inflight[2];
 };
 
@@ -56814,10 +69836,6 @@ struct sbq_wait {
 	struct wait_queue_entry wait;
 };
 
-typedef bool busy_iter_fn(struct blk_mq_hw_ctx *, struct request *, void *, bool);
-
-typedef bool busy_tag_iter_fn(struct request *, void *, bool);
-
 struct bt_iter_data {
 	struct blk_mq_hw_ctx *hctx;
 	busy_iter_fn *fn;
@@ -56838,12 +69856,6 @@ struct blk_queue_stats {
 	bool enable_accounting;
 };
 
-struct blk_mq_ctx_sysfs_entry {
-	struct attribute attr;
-	ssize_t (*show)(struct blk_mq_ctx *, char *);
-	ssize_t (*store)(struct blk_mq_ctx *, const char *, size_t);
-};
-
 struct blk_mq_hw_ctx_sysfs_entry {
 	struct attribute attr;
 	ssize_t (*show)(struct blk_mq_hw_ctx *, char *);
@@ -56939,23 +69951,6 @@ struct class_dev_iter {
 	const struct device_type *type;
 };
 
-enum {
-	DISK_EVENT_FLAG_POLL = 1,
-	DISK_EVENT_FLAG_UEVENT = 2,
-};
-
-struct disk_events {
-	struct list_head node;
-	struct gendisk *disk;
-	spinlock_t lock;
-	struct mutex block_mutex;
-	int block;
-	unsigned int pending;
-	unsigned int clearing;
-	long int poll_msecs;
-	struct delayed_work dwork;
-};
-
 struct badblocks {
 	struct device *dev;
 	int count;
@@ -56968,17 +69963,11 @@ struct badblocks {
 	sector_t size;
 };
 
-struct disk_part_iter {
-	struct gendisk *disk;
-	struct hd_struct *part;
-	int idx;
-	unsigned int flags;
-};
-
 struct blk_major_name {
 	struct blk_major_name *next;
 	int major;
 	char name[16];
+	void (*probe)(dev_t);
 };
 
 enum {
@@ -56988,7 +69977,7 @@ enum {
 };
 
 struct parsed_partitions {
-	struct block_device *bdev;
+	struct gendisk *disk;
 	char name[32];
 	struct {
 		sector_t from;
@@ -57007,63 +69996,58 @@ typedef struct {
 	struct page *v;
 } Sector;
 
-struct ics_part {
-	__le32 start;
-	__le32 size;
-};
-
 struct RigidDiskBlock {
-	__u32 rdb_ID;
+	__be32 rdb_ID;
 	__be32 rdb_SummedLongs;
-	__s32 rdb_ChkSum;
-	__u32 rdb_HostID;
+	__be32 rdb_ChkSum;
+	__be32 rdb_HostID;
 	__be32 rdb_BlockBytes;
-	__u32 rdb_Flags;
-	__u32 rdb_BadBlockList;
+	__be32 rdb_Flags;
+	__be32 rdb_BadBlockList;
 	__be32 rdb_PartitionList;
-	__u32 rdb_FileSysHeaderList;
-	__u32 rdb_DriveInit;
-	__u32 rdb_Reserved1[6];
-	__u32 rdb_Cylinders;
-	__u32 rdb_Sectors;
-	__u32 rdb_Heads;
-	__u32 rdb_Interleave;
-	__u32 rdb_Park;
-	__u32 rdb_Reserved2[3];
-	__u32 rdb_WritePreComp;
-	__u32 rdb_ReducedWrite;
-	__u32 rdb_StepRate;
-	__u32 rdb_Reserved3[5];
-	__u32 rdb_RDBBlocksLo;
-	__u32 rdb_RDBBlocksHi;
-	__u32 rdb_LoCylinder;
-	__u32 rdb_HiCylinder;
-	__u32 rdb_CylBlocks;
-	__u32 rdb_AutoParkSeconds;
-	__u32 rdb_HighRDSKBlock;
-	__u32 rdb_Reserved4;
+	__be32 rdb_FileSysHeaderList;
+	__be32 rdb_DriveInit;
+	__be32 rdb_Reserved1[6];
+	__be32 rdb_Cylinders;
+	__be32 rdb_Sectors;
+	__be32 rdb_Heads;
+	__be32 rdb_Interleave;
+	__be32 rdb_Park;
+	__be32 rdb_Reserved2[3];
+	__be32 rdb_WritePreComp;
+	__be32 rdb_ReducedWrite;
+	__be32 rdb_StepRate;
+	__be32 rdb_Reserved3[5];
+	__be32 rdb_RDBBlocksLo;
+	__be32 rdb_RDBBlocksHi;
+	__be32 rdb_LoCylinder;
+	__be32 rdb_HiCylinder;
+	__be32 rdb_CylBlocks;
+	__be32 rdb_AutoParkSeconds;
+	__be32 rdb_HighRDSKBlock;
+	__be32 rdb_Reserved4;
 	char rdb_DiskVendor[8];
 	char rdb_DiskProduct[16];
 	char rdb_DiskRevision[4];
 	char rdb_ControllerVendor[8];
 	char rdb_ControllerProduct[16];
 	char rdb_ControllerRevision[4];
-	__u32 rdb_Reserved5[10];
+	__be32 rdb_Reserved5[10];
 };
 
 struct PartitionBlock {
 	__be32 pb_ID;
 	__be32 pb_SummedLongs;
-	__s32 pb_ChkSum;
-	__u32 pb_HostID;
+	__be32 pb_ChkSum;
+	__be32 pb_HostID;
 	__be32 pb_Next;
-	__u32 pb_Flags;
-	__u32 pb_Reserved1[2];
-	__u32 pb_DevFlags;
+	__be32 pb_Flags;
+	__be32 pb_Reserved1[2];
+	__be32 pb_DevFlags;
 	__u8 pb_DriveName[32];
-	__u32 pb_Reserved2[15];
+	__be32 pb_Reserved2[15];
 	__be32 pb_Environment[17];
-	__u32 pb_EReserved[15];
+	__be32 pb_EReserved[15];
 };
 
 struct partition_info {
@@ -57084,6 +70068,84 @@ struct rootsector {
 	u16 checksum;
 } __attribute__((packed));
 
+struct lvm_rec {
+	char lvm_id[4];
+	char reserved4[16];
+	__be32 lvmarea_len;
+	__be32 vgda_len;
+	__be32 vgda_psn[2];
+	char reserved36[10];
+	__be16 pp_size;
+	char reserved46[12];
+	__be16 version;
+};
+
+struct vgda {
+	__be32 secs;
+	__be32 usec;
+	char reserved8[16];
+	__be16 numlvs;
+	__be16 maxlvs;
+	__be16 pp_size;
+	__be16 numpvs;
+	__be16 total_vgdas;
+	__be16 vgda_size;
+};
+
+struct lvd {
+	__be16 lv_ix;
+	__be16 res2;
+	__be16 res4;
+	__be16 maxsize;
+	__be16 lv_state;
+	__be16 mirror;
+	__be16 mirror_policy;
+	__be16 num_lps;
+	__be16 res10[8];
+};
+
+struct lvname {
+	char name[64];
+};
+
+struct ppe {
+	__be16 lv_ix;
+	short unsigned int res2;
+	short unsigned int res4;
+	__be16 lp_ix;
+	short unsigned int res8[12];
+};
+
+struct pvd {
+	char reserved0[16];
+	__be16 pp_count;
+	char reserved18[2];
+	__be32 psn_part1;
+	char reserved24[8];
+	struct ppe ppe[1016];
+};
+
+struct lv_info {
+	short unsigned int pps_per_lv;
+	short unsigned int pps_found;
+	unsigned char lv_is_contiguous;
+};
+
+struct cmdline_subpart {
+	char name[32];
+	sector_t from;
+	sector_t size;
+	int flags;
+	struct cmdline_subpart *next_subpart;
+};
+
+struct cmdline_parts {
+	char name[32];
+	unsigned int nr_subparts;
+	struct cmdline_subpart *subpart;
+	struct cmdline_parts *next_parts;
+};
+
 struct mac_partition {
 	__be16 signature;
 	__be16 res1;
@@ -57222,48 +70284,6 @@ struct ldmdb {
 	struct list_head v_part;
 };
 
-struct fat_boot_sector {
-	__u8 ignored[3];
-	__u8 system_id[8];
-	__u8 sector_size[2];
-	__u8 sec_per_clus;
-	__le16 reserved;
-	__u8 fats;
-	__u8 dir_entries[2];
-	__u8 sectors[2];
-	__u8 media;
-	__le16 fat_length;
-	__le16 secs_track;
-	__le16 heads;
-	__le32 hidden;
-	__le32 total_sect;
-	union {
-		struct {
-			__u8 drive_number;
-			__u8 state;
-			__u8 signature;
-			__u8 vol_id[4];
-			__u8 vol_label[11];
-			__u8 fs_type[8];
-		} fat16;
-		struct {
-			__le32 length;
-			__le16 flags;
-			__u8 version[2];
-			__le32 root_cluster;
-			__le16 info_sector;
-			__le16 backup_boot;
-			__le16 reserved2[6];
-			__u8 drive_number;
-			__u8 state;
-			__u8 signature;
-			__u8 vol_id[4];
-			__u8 vol_label[11];
-			__u8 fs_type[8];
-		} fat32;
-	};
-};
-
 enum msdos_sys_ind {
 	DOS_EXTENDED_PARTITION = 5,
 	LINUX_EXTENDED_PARTITION = 133,
@@ -57594,6 +70614,28 @@ struct disklabel___2 {
 	__le16 d_magic;
 } __attribute__((packed));
 
+struct volumeid {
+	u8 vid_unused[248];
+	u8 vid_mac[8];
+};
+
+struct dkconfig {
+	u8 ios_unused0[128];
+	__be32 ios_slcblk;
+	__be16 ios_slccnt;
+	u8 ios_unused1[122];
+};
+
+struct dkblk0 {
+	struct volumeid dk_vid;
+	struct dkconfig dk_ios;
+};
+
+struct slice {
+	__be32 nblocks;
+	__be32 blkoff;
+};
+
 struct rq_wait {
 	wait_queue_head_t wait;
 	atomic_t inflight;
@@ -57620,240 +70662,64 @@ struct rq_qos_wait_data {
 	bool got_token;
 };
 
-struct cdrom_device_ops;
-
-struct cdrom_device_info {
-	const struct cdrom_device_ops *ops;
-	struct list_head list;
+struct disk_events {
+	struct list_head node;
 	struct gendisk *disk;
-	void *handle;
-	int mask;
-	int speed;
-	int capacity;
-	unsigned int options: 30;
-	unsigned int mc_flags: 2;
-	unsigned int vfs_events;
-	unsigned int ioctl_events;
-	int use_count;
-	char name[20];
-	__u8 sanyo_slot: 2;
-	__u8 keeplocked: 1;
-	__u8 reserved: 5;
-	int cdda_method;
-	__u8 last_sense;
-	__u8 media_written;
-	short unsigned int mmc3_profile;
-	int for_data;
-	int (*exit)(struct cdrom_device_info *);
-	int mrw_mode_page;
+	spinlock_t lock;
+	struct mutex block_mutex;
+	int block;
+	unsigned int pending;
+	unsigned int clearing;
+	long int poll_msecs;
+	struct delayed_work dwork;
 };
 
-struct scsi_sense_hdr {
-	u8 response_code;
-	u8 sense_key;
-	u8 asc;
-	u8 ascq;
-	u8 byte4;
-	u8 byte5;
-	u8 byte6;
-	u8 additional_length;
+struct sg_io_v4 {
+	__s32 guard;
+	__u32 protocol;
+	__u32 subprotocol;
+	__u32 request_len;
+	__u64 request;
+	__u64 request_tag;
+	__u32 request_attr;
+	__u32 request_priority;
+	__u32 request_extra;
+	__u32 max_response_len;
+	__u64 response;
+	__u32 dout_iovec_count;
+	__u32 dout_xfer_len;
+	__u32 din_iovec_count;
+	__u32 din_xfer_len;
+	__u64 dout_xferp;
+	__u64 din_xferp;
+	__u32 timeout;
+	__u32 flags;
+	__u64 usr_ptr;
+	__u32 spare_in;
+	__u32 driver_status;
+	__u32 transport_status;
+	__u32 device_status;
+	__u32 retry_delay;
+	__u32 info;
+	__u32 duration;
+	__u32 response_len;
+	__s32 din_resid;
+	__s32 dout_resid;
+	__u64 generated_tag;
+	__u32 spare_out;
+	__u32 padding;
 };
 
-struct cdrom_msf0 {
-	__u8 minute;
-	__u8 second;
-	__u8 frame;
-};
-
-union cdrom_addr {
-	struct cdrom_msf0 msf;
-	int lba;
-};
-
-struct cdrom_multisession {
-	union cdrom_addr addr;
-	__u8 xa_flag;
-	__u8 addr_format;
-};
-
-struct cdrom_mcn {
-	__u8 medium_catalog_number[14];
-};
-
-struct request_sense;
-
-struct cdrom_generic_command {
-	unsigned char cmd[12];
-	unsigned char *buffer;
-	unsigned int buflen;
-	int stat;
-	struct request_sense *sense;
-	unsigned char data_direction;
-	int quiet;
-	int timeout;
-	union {
-		void *reserved[1];
-		void *unused;
-	};
-};
-
-struct request_sense {
-	__u8 error_code: 7;
-	__u8 valid: 1;
-	__u8 segment_number;
-	__u8 sense_key: 4;
-	__u8 reserved2: 1;
-	__u8 ili: 1;
-	__u8 reserved1: 2;
-	__u8 information[4];
-	__u8 add_sense_len;
-	__u8 command_info[4];
-	__u8 asc;
-	__u8 ascq;
-	__u8 fruc;
-	__u8 sks[3];
-	__u8 asb[46];
-};
-
-struct packet_command {
-	unsigned char cmd[12];
-	unsigned char *buffer;
-	unsigned int buflen;
-	int stat;
-	struct scsi_sense_hdr *sshdr;
-	unsigned char data_direction;
-	int quiet;
-	int timeout;
-	void *reserved[1];
-};
-
-struct cdrom_device_ops {
-	int (*open)(struct cdrom_device_info *, int);
-	void (*release)(struct cdrom_device_info *);
-	int (*drive_status)(struct cdrom_device_info *, int);
-	unsigned int (*check_events)(struct cdrom_device_info *, unsigned int, int);
-	int (*tray_move)(struct cdrom_device_info *, int);
-	int (*lock_door)(struct cdrom_device_info *, int);
-	int (*select_speed)(struct cdrom_device_info *, int);
-	int (*select_disc)(struct cdrom_device_info *, int);
-	int (*get_last_session)(struct cdrom_device_info *, struct cdrom_multisession *);
-	int (*get_mcn)(struct cdrom_device_info *, struct cdrom_mcn *);
-	int (*reset)(struct cdrom_device_info *);
-	int (*audio_ioctl)(struct cdrom_device_info *, unsigned int, void *);
-	const int capability;
-	int (*generic_packet)(struct cdrom_device_info *, struct packet_command *);
-};
-
-struct scsi_ioctl_command {
-	unsigned int inlen;
-	unsigned int outlen;
-	unsigned char data[0];
-};
-
-enum scsi_device_event {
-	SDEV_EVT_MEDIA_CHANGE = 1,
-	SDEV_EVT_INQUIRY_CHANGE_REPORTED = 2,
-	SDEV_EVT_CAPACITY_CHANGE_REPORTED = 3,
-	SDEV_EVT_SOFT_THRESHOLD_REACHED_REPORTED = 4,
-	SDEV_EVT_MODE_PARAMETER_CHANGE_REPORTED = 5,
-	SDEV_EVT_LUN_CHANGE_REPORTED = 6,
-	SDEV_EVT_ALUA_STATE_CHANGE_REPORTED = 7,
-	SDEV_EVT_POWER_ON_RESET_OCCURRED = 8,
-	SDEV_EVT_FIRST = 1,
-	SDEV_EVT_LAST = 8,
-	SDEV_EVT_MAXBITS = 9,
-};
-
-struct scsi_request {
-	unsigned char __cmd[16];
-	unsigned char *cmd;
-	short unsigned int cmd_len;
-	int result;
-	unsigned int sense_len;
-	unsigned int resid_len;
-	int retries;
-	void *sense;
-};
-
-struct sg_io_hdr {
-	int interface_id;
-	int dxfer_direction;
-	unsigned char cmd_len;
-	unsigned char mx_sb_len;
-	short unsigned int iovec_count;
-	unsigned int dxfer_len;
-	void *dxferp;
-	unsigned char *cmdp;
-	void *sbp;
-	unsigned int timeout;
-	unsigned int flags;
-	int pack_id;
-	void *usr_ptr;
-	unsigned char status;
-	unsigned char masked_status;
-	unsigned char msg_status;
-	unsigned char sb_len_wr;
-	short unsigned int host_status;
-	short unsigned int driver_status;
-	int resid;
-	unsigned int duration;
-	unsigned int info;
-};
-
-struct compat_sg_io_hdr {
-	compat_int_t interface_id;
-	compat_int_t dxfer_direction;
-	unsigned char cmd_len;
-	unsigned char mx_sb_len;
-	short unsigned int iovec_count;
-	compat_uint_t dxfer_len;
-	compat_uint_t dxferp;
-	compat_uptr_t cmdp;
-	compat_uptr_t sbp;
-	compat_uint_t timeout;
-	compat_uint_t flags;
-	compat_int_t pack_id;
-	compat_uptr_t usr_ptr;
-	unsigned char status;
-	unsigned char masked_status;
-	unsigned char msg_status;
-	unsigned char sb_len_wr;
-	short unsigned int host_status;
-	short unsigned int driver_status;
-	compat_int_t resid;
-	compat_uint_t duration;
-	compat_uint_t info;
-};
-
-struct blk_cmd_filter {
-	long unsigned int read_ok[4];
-	long unsigned int write_ok[4];
-};
-
-struct compat_cdrom_generic_command {
-	unsigned char cmd[12];
-	compat_caddr_t buffer;
-	compat_uint_t buflen;
-	compat_int_t stat;
-	compat_caddr_t sense;
-	unsigned char data_direction;
-	unsigned char pad[3];
-	compat_int_t quiet;
-	compat_int_t timeout;
-	compat_caddr_t unused;
-};
-
-enum {
-	OMAX_SB_LEN = 16,
-};
+typedef int bsg_sg_io_fn(struct request_queue *, struct sg_io_v4 *, fmode_t, unsigned int);
 
 struct bsg_device {
 	struct request_queue *queue;
-	spinlock_t lock;
-	struct hlist_node dev_list;
-	refcount_t ref_count;
-	char name[20];
+	struct device device;
+	struct cdev cdev;
 	int max_queue;
+	unsigned int timeout;
+	unsigned int reserved_size;
+	bsg_sg_io_fn *sg_io_fn;
 };
 
 struct bsg_job;
@@ -57885,8 +70751,23 @@ struct bsg_job {
 
 typedef enum blk_eh_timer_return bsg_timeout_fn(struct request *);
 
+enum scsi_device_event {
+	SDEV_EVT_MEDIA_CHANGE = 1,
+	SDEV_EVT_INQUIRY_CHANGE_REPORTED = 2,
+	SDEV_EVT_CAPACITY_CHANGE_REPORTED = 3,
+	SDEV_EVT_SOFT_THRESHOLD_REACHED_REPORTED = 4,
+	SDEV_EVT_MODE_PARAMETER_CHANGE_REPORTED = 5,
+	SDEV_EVT_LUN_CHANGE_REPORTED = 6,
+	SDEV_EVT_ALUA_STATE_CHANGE_REPORTED = 7,
+	SDEV_EVT_POWER_ON_RESET_OCCURRED = 8,
+	SDEV_EVT_FIRST = 1,
+	SDEV_EVT_LAST = 8,
+	SDEV_EVT_MAXBITS = 9,
+};
+
 struct bsg_set {
 	struct blk_mq_tag_set tag_set;
+	struct bsg_device *bd;
 	bsg_job_fn *job_fn;
 	bsg_timeout_fn *timeout_fn;
 };
@@ -57911,7 +70792,7 @@ typedef void blkcg_pol_free_pd_fn(struct blkg_policy_data *);
 
 typedef void blkcg_pol_reset_pd_stats_fn(struct blkg_policy_data *);
 
-typedef size_t blkcg_pol_stat_pd_fn(struct blkg_policy_data *, char *, size_t);
+typedef bool blkcg_pol_stat_pd_fn(struct blkg_policy_data *, struct seq_file *);
 
 struct blkcg_policy {
 	int plid;
@@ -57931,7 +70812,7 @@ struct blkcg_policy {
 };
 
 struct blkg_conf_ctx {
-	struct gendisk *disk;
+	struct block_device *bdev;
 	struct blkcg_gq *blkg;
 	char *body;
 };
@@ -58051,6 +70932,26 @@ enum {
 	LIMIT_CNT = 2,
 };
 
+enum prio_policy {
+	POLICY_NO_CHANGE = 0,
+	POLICY_NONE_TO_RT = 1,
+	POLICY_RESTRICT_TO_BE = 2,
+	POLICY_ALL_TO_IDLE = 3,
+};
+
+struct ioprio_blkg {
+	struct blkg_policy_data pd;
+};
+
+struct ioprio_blkcg {
+	struct blkcg_policy_data cpd;
+	enum prio_policy prio_policy;
+};
+
+struct blk_ioprio {
+	struct rq_qos rqos;
+};
+
 enum {
 	MILLION = 1000000,
 	MIN_PERIOD = 1000,
@@ -58061,6 +70962,9 @@ enum {
 	INUSE_ADJ_STEP_PCT = 25,
 	TIMER_SLACK_PCT = 1,
 	WEIGHT_ONE = 65536,
+};
+
+enum {
 	VTIME_PER_SEC_SHIFT = 37,
 	VTIME_PER_SEC = 0,
 	VTIME_PER_USEC = 137438,
@@ -58069,6 +70973,10 @@ enum {
 	VRATE_MAX_PPM = 100000000,
 	VRATE_MIN = 1374,
 	VRATE_CLAMP_ADJ_PCT = 4,
+	AUTOP_CYCLE_NSEC = 1410065408,
+};
+
+enum {
 	RQ_WAIT_BUSY_PCT = 5,
 	UNBUSY_THR_PCT = 75,
 	MIN_DELAY_THR_PCT = 500,
@@ -58078,7 +70986,6 @@ enum {
 	DFGV_USAGE_PCT = 50,
 	DFGV_PERIOD = 100000,
 	MAX_LAGGING_PERIODS = 10,
-	AUTOP_CYCLE_NSEC = 1410065408,
 	IOC_PAGE_SHIFT = 12,
 	IOC_PAGE_SIZE = 4096,
 	IOC_SECT_TO_PAGE_SHIFT = 3,
@@ -58281,7 +71188,7 @@ struct iocg_wake_ctx {
 	s64 vbudget;
 };
 
-struct trace_event_raw_iocost_iocg_activate {
+struct trace_event_raw_iocost_iocg_state {
 	struct trace_entry ent;
 	u32 __data_loc_devname;
 	u32 __data_loc_cgroup;
@@ -58338,7 +71245,7 @@ struct trace_event_raw_iocost_iocg_forgive_debt {
 	char __data[0];
 };
 
-struct trace_event_data_offsets_iocost_iocg_activate {
+struct trace_event_data_offsets_iocost_iocg_state {
 	u32 devname;
 	u32 cgroup;
 };
@@ -58359,6 +71266,8 @@ struct trace_event_data_offsets_iocost_iocg_forgive_debt {
 
 typedef void (*btf_trace_iocost_iocg_activate)(void *, struct ioc_gq *, const char *, struct ioc_now *, u64, u64, u64);
 
+typedef void (*btf_trace_iocost_iocg_idle)(void *, struct ioc_gq *, const char *, struct ioc_now *, u64, u64, u64);
+
 typedef void (*btf_trace_iocost_inuse_shortage)(void *, struct ioc_gq *, const char *, struct ioc_now *, u32, u32, u64, u64);
 
 typedef void (*btf_trace_iocost_inuse_transfer)(void *, struct ioc_gq *, const char *, struct ioc_now *, u32, u32, u64, u64);
@@ -58369,19 +71278,57 @@ typedef void (*btf_trace_iocost_ioc_vrate_adj)(void *, struct ioc *, u64, u32 *,
 
 typedef void (*btf_trace_iocost_iocg_forgive_debt)(void *, struct ioc_gq *, const char *, struct ioc_now *, u32, u64, u64, u64, u64);
 
-struct deadline_data {
+enum dd_data_dir {
+	DD_READ = 0,
+	DD_WRITE = 1,
+};
+
+enum {
+	DD_DIR_COUNT = 2,
+};
+
+enum dd_prio {
+	DD_RT_PRIO = 0,
+	DD_BE_PRIO = 1,
+	DD_IDLE_PRIO = 2,
+	DD_PRIO_MAX = 2,
+};
+
+enum {
+	DD_PRIO_COUNT = 3,
+};
+
+struct io_stats_per_prio {
+	local_t inserted;
+	local_t merged;
+	local_t dispatched;
+	local_t completed;
+};
+
+struct io_stats {
+	struct io_stats_per_prio stats[3];
+};
+
+struct dd_per_prio {
+	struct list_head dispatch;
 	struct rb_root sort_list[2];
 	struct list_head fifo_list[2];
 	struct request *next_rq[2];
+};
+
+struct deadline_data {
+	struct dd_per_prio per_prio[3];
+	enum dd_data_dir last_dir;
 	unsigned int batching;
 	unsigned int starved;
+	struct io_stats *stats;
 	int fifo_expire[2];
 	int fifo_batch;
 	int writes_starved;
 	int front_merges;
+	u32 async_depth;
 	spinlock_t lock;
 	spinlock_t zone_lock;
-	struct list_head dispatch;
 };
 
 enum bip_flags {
@@ -58399,12 +71346,21 @@ enum blk_integrity_flags {
 	BLK_INTEGRITY_IP_CHECKSUM = 8,
 };
 
-struct integrity_sysfs_entry {
-	struct attribute attr;
-	ssize_t (*show)(struct blk_integrity *, char *);
-	ssize_t (*store)(struct blk_integrity *, const char *, size_t);
+enum t10_dif_type {
+	T10_PI_TYPE0_PROTECTION = 0,
+	T10_PI_TYPE1_PROTECTION = 1,
+	T10_PI_TYPE2_PROTECTION = 2,
+	T10_PI_TYPE3_PROTECTION = 3,
 };
 
+struct t10_pi_tuple {
+	__be16 guard_tag;
+	__be16 app_tag;
+	__be32 ref_tag;
+};
+
+typedef __be16 csum_fn(void *, unsigned int);
+
 struct virtio_device_id {
 	__u32 device;
 	__u32 vendor;
@@ -58444,8 +71400,6 @@ struct virtio_device {
 
 typedef void vq_callback_t(struct virtqueue *);
 
-struct irq_affinity;
-
 struct virtio_shm_region;
 
 struct virtio_config_ops {
@@ -58532,11 +71486,13 @@ enum rdma_restrack_type {
 	RDMA_RESTRACK_MR = 4,
 	RDMA_RESTRACK_CTX = 5,
 	RDMA_RESTRACK_COUNTER = 6,
-	RDMA_RESTRACK_MAX = 7,
+	RDMA_RESTRACK_SRQ = 7,
+	RDMA_RESTRACK_MAX = 8,
 };
 
 struct rdma_restrack_entry {
 	bool valid;
+	u8 no_track: 1;
 	struct kref kref;
 	struct completion comp;
 	struct task_struct *task;
@@ -58590,7 +71546,7 @@ struct rdma_counter {
 	struct rdma_counter_mode mode;
 	struct mutex lock;
 	struct rdma_hw_stats *stats;
-	u8 port;
+	u32 port;
 };
 
 enum rdma_driver_id {
@@ -58604,6 +71560,7 @@ enum rdma_driver_id {
 	RDMA_DRIVER_OCRDMA = 7,
 	RDMA_DRIVER_NES = 8,
 	RDMA_DRIVER_I40IW = 9,
+	RDMA_DRIVER_IRDMA = 9,
 	RDMA_DRIVER_VMW_PVRDMA = 10,
 	RDMA_DRIVER_QEDR = 11,
 	RDMA_DRIVER_HNS = 12,
@@ -58760,6 +71717,8 @@ struct ib_device_ops {
 	enum rdma_driver_id driver_id;
 	u32 uverbs_abi_ver;
 	unsigned int uverbs_no_driver_id_binding: 1;
+	const struct attribute_group *device_group;
+	const struct attribute_group **port_groups;
 	int (*post_send)(struct ib_qp *, const struct ib_send_wr *, const struct ib_send_wr **);
 	int (*post_recv)(struct ib_qp *, const struct ib_recv_wr *, const struct ib_recv_wr **);
 	void (*drain_rq)(struct ib_qp *);
@@ -58767,24 +71726,23 @@ struct ib_device_ops {
 	int (*poll_cq)(struct ib_cq *, int, struct ib_wc *);
 	int (*peek_cq)(struct ib_cq *, int);
 	int (*req_notify_cq)(struct ib_cq *, enum ib_cq_notify_flags);
-	int (*req_ncomp_notif)(struct ib_cq *, int);
 	int (*post_srq_recv)(struct ib_srq *, const struct ib_recv_wr *, const struct ib_recv_wr **);
-	int (*process_mad)(struct ib_device *, int, u8, const struct ib_wc *, const struct ib_grh *, const struct ib_mad *, struct ib_mad *, size_t *, u16 *);
+	int (*process_mad)(struct ib_device *, int, u32, const struct ib_wc *, const struct ib_grh *, const struct ib_mad *, struct ib_mad *, size_t *, u16 *);
 	int (*query_device)(struct ib_device *, struct ib_device_attr *, struct ib_udata *);
 	int (*modify_device)(struct ib_device *, int, struct ib_device_modify *);
 	void (*get_dev_fw_str)(struct ib_device *, char *);
 	const struct cpumask * (*get_vector_affinity)(struct ib_device *, int);
-	int (*query_port)(struct ib_device *, u8, struct ib_port_attr *);
-	int (*modify_port)(struct ib_device *, u8, int, struct ib_port_modify *);
-	int (*get_port_immutable)(struct ib_device *, u8, struct ib_port_immutable *);
-	enum rdma_link_layer (*get_link_layer)(struct ib_device *, u8);
-	struct net_device * (*get_netdev)(struct ib_device *, u8);
-	struct net_device * (*alloc_rdma_netdev)(struct ib_device *, u8, enum rdma_netdev_t, const char *, unsigned char, void (*)(struct net_device *));
-	int (*rdma_netdev_get_params)(struct ib_device *, u8, enum rdma_netdev_t, struct rdma_netdev_alloc_params *);
-	int (*query_gid)(struct ib_device *, u8, int, union ib_gid *);
+	int (*query_port)(struct ib_device *, u32, struct ib_port_attr *);
+	int (*modify_port)(struct ib_device *, u32, int, struct ib_port_modify *);
+	int (*get_port_immutable)(struct ib_device *, u32, struct ib_port_immutable *);
+	enum rdma_link_layer (*get_link_layer)(struct ib_device *, u32);
+	struct net_device * (*get_netdev)(struct ib_device *, u32);
+	struct net_device * (*alloc_rdma_netdev)(struct ib_device *, u32, enum rdma_netdev_t, const char *, unsigned char, void (*)(struct net_device *));
+	int (*rdma_netdev_get_params)(struct ib_device *, u32, enum rdma_netdev_t, struct rdma_netdev_alloc_params *);
+	int (*query_gid)(struct ib_device *, u32, int, union ib_gid *);
 	int (*add_gid)(const struct ib_gid_attr *, void **);
 	int (*del_gid)(const struct ib_gid_attr *, void **);
-	int (*query_pkey)(struct ib_device *, u8, u16, u16 *);
+	int (*query_pkey)(struct ib_device *, u32, u16, u16 *);
 	int (*alloc_ucontext)(struct ib_ucontext *, struct ib_udata *);
 	void (*dealloc_ucontext)(struct ib_ucontext *);
 	int (*mmap)(struct ib_ucontext *, struct vm_area_struct *);
@@ -58793,6 +71751,7 @@ struct ib_device_ops {
 	int (*alloc_pd)(struct ib_pd *, struct ib_udata *);
 	int (*dealloc_pd)(struct ib_pd *, struct ib_udata *);
 	int (*create_ah)(struct ib_ah *, struct rdma_ah_init_attr *, struct ib_udata *);
+	int (*create_user_ah)(struct ib_ah *, struct rdma_ah_init_attr *, struct ib_udata *);
 	int (*modify_ah)(struct ib_ah *, struct rdma_ah_attr *);
 	int (*query_ah)(struct ib_ah *, struct rdma_ah_attr *);
 	int (*destroy_ah)(struct ib_ah *, u32);
@@ -58800,7 +71759,7 @@ struct ib_device_ops {
 	int (*modify_srq)(struct ib_srq *, struct ib_srq_attr *, enum ib_srq_attr_mask, struct ib_udata *);
 	int (*query_srq)(struct ib_srq *, struct ib_srq_attr *);
 	int (*destroy_srq)(struct ib_srq *, struct ib_udata *);
-	struct ib_qp * (*create_qp)(struct ib_pd *, struct ib_qp_init_attr *, struct ib_udata *);
+	int (*create_qp)(struct ib_qp *, struct ib_qp_init_attr *, struct ib_udata *);
 	int (*modify_qp)(struct ib_qp *, struct ib_qp_attr *, int, struct ib_udata *);
 	int (*query_qp)(struct ib_qp *, struct ib_qp_attr *, int, struct ib_qp_init_attr *);
 	int (*destroy_qp)(struct ib_qp *, struct ib_udata *);
@@ -58810,7 +71769,8 @@ struct ib_device_ops {
 	int (*resize_cq)(struct ib_cq *, int, struct ib_udata *);
 	struct ib_mr * (*get_dma_mr)(struct ib_pd *, int);
 	struct ib_mr * (*reg_user_mr)(struct ib_pd *, u64, u64, u64, int, struct ib_udata *);
-	int (*rereg_user_mr)(struct ib_mr *, int, u64, u64, u64, int, struct ib_pd *, struct ib_udata *);
+	struct ib_mr * (*reg_user_mr_dmabuf)(struct ib_pd *, u64, u64, u64, int, int, struct ib_udata *);
+	struct ib_mr * (*rereg_user_mr)(struct ib_mr *, int, u64, u64, u64, int, struct ib_pd *, struct ib_udata *);
 	int (*dereg_mr)(struct ib_mr *, struct ib_udata *);
 	struct ib_mr * (*alloc_mr)(struct ib_pd *, enum ib_mr_type, u32);
 	struct ib_mr * (*alloc_mr_integrity)(struct ib_pd *, u32, u32);
@@ -58828,11 +71788,11 @@ struct ib_device_ops {
 	struct ib_flow_action * (*create_flow_action_esp)(struct ib_device *, const struct ib_flow_action_attrs_esp *, struct uverbs_attr_bundle *);
 	int (*destroy_flow_action)(struct ib_flow_action *);
 	int (*modify_flow_action_esp)(struct ib_flow_action *, const struct ib_flow_action_attrs_esp *, struct uverbs_attr_bundle *);
-	int (*set_vf_link_state)(struct ib_device *, int, u8, int);
-	int (*get_vf_config)(struct ib_device *, int, u8, struct ifla_vf_info *);
-	int (*get_vf_stats)(struct ib_device *, int, u8, struct ifla_vf_stats *);
-	int (*get_vf_guid)(struct ib_device *, int, u8, struct ifla_vf_guid *, struct ifla_vf_guid *);
-	int (*set_vf_guid)(struct ib_device *, int, u8, u64, int);
+	int (*set_vf_link_state)(struct ib_device *, int, u32, int);
+	int (*get_vf_config)(struct ib_device *, int, u32, struct ifla_vf_info *);
+	int (*get_vf_stats)(struct ib_device *, int, u32, struct ifla_vf_stats *);
+	int (*get_vf_guid)(struct ib_device *, int, u32, struct ifla_vf_guid *, struct ifla_vf_guid *);
+	int (*set_vf_guid)(struct ib_device *, int, u32, u64, int);
 	struct ib_wq * (*create_wq)(struct ib_pd *, struct ib_wq_init_attr *, struct ib_udata *);
 	int (*destroy_wq)(struct ib_wq *, struct ib_udata *);
 	int (*modify_wq)(struct ib_wq *, struct ib_wq_attr *, u32, struct ib_udata *);
@@ -58845,9 +71805,9 @@ struct ib_device_ops {
 	int (*destroy_counters)(struct ib_counters *);
 	int (*read_counters)(struct ib_counters *, struct ib_counters_read_attr *, struct uverbs_attr_bundle *);
 	int (*map_mr_sg_pi)(struct ib_mr *, struct scatterlist *, int, unsigned int *, struct scatterlist *, int, unsigned int *);
-	struct rdma_hw_stats * (*alloc_hw_stats)(struct ib_device *, u8);
-	int (*get_hw_stats)(struct ib_device *, struct rdma_hw_stats *, u8, int);
-	int (*init_port)(struct ib_device *, u8, struct kobject *);
+	struct rdma_hw_stats * (*alloc_hw_device_stats)(struct ib_device *);
+	struct rdma_hw_stats * (*alloc_hw_port_stats)(struct ib_device *, u32);
+	int (*get_hw_stats)(struct ib_device *, struct rdma_hw_stats *, u32, int);
 	int (*fill_res_mr_entry)(struct sk_buff *, struct ib_mr *);
 	int (*fill_res_mr_entry_raw)(struct sk_buff *, struct ib_mr *);
 	int (*fill_res_cq_entry)(struct sk_buff *, struct ib_cq *);
@@ -58872,11 +71832,13 @@ struct ib_device_ops {
 	int (*counter_update_stats)(struct rdma_counter *);
 	int (*fill_stat_mr_entry)(struct sk_buff *, struct ib_mr *);
 	int (*query_ucontext)(struct ib_ucontext *, struct uverbs_attr_bundle *);
+	int (*get_numa_node)(struct ib_device *);
 	size_t size_ib_ah;
 	size_t size_ib_counters;
 	size_t size_ib_cq;
 	size_t size_ib_mw;
 	size_t size_ib_pd;
+	size_t size_ib_qp;
 	size_t size_ib_rwq_ind_table;
 	size_t size_ib_srq;
 	size_t size_ib_ucontext;
@@ -58981,6 +71943,8 @@ struct ib_device_attr {
 	u32 max_sgl_rd;
 };
 
+struct hw_stats_device_data;
+
 struct rdma_restrack_root;
 
 struct uapi_definition;
@@ -59005,9 +71969,8 @@ struct ib_device {
 		struct device dev;
 		struct ib_core_device coredev;
 	};
-	const struct attribute_group *groups[3];
+	const struct attribute_group *groups[4];
 	u64 uverbs_cmd_mask;
-	u64 uverbs_ex_cmd_mask;
 	char node_desc[64];
 	__be64 node_guid;
 	u32 local_dma_lkey;
@@ -59015,10 +71978,9 @@ struct ib_device {
 	u16 kverbs_provider: 1;
 	u16 use_cq_dim: 1;
 	u8 node_type;
-	u8 phys_port_cnt;
+	u32 phys_port_cnt;
 	struct ib_device_attr attrs;
-	struct attribute_group *hw_stats_ag;
-	struct rdma_hw_stats *hw_stats;
+	struct hw_stats_device_data *hw_stats_data;
 	struct rdmacg_device cg_device;
 	u32 index;
 	spinlock_t cq_pools_lock;
@@ -59129,7 +72091,7 @@ struct ib_gid_attr {
 	union ib_gid gid;
 	enum ib_gid_type gid_type;
 	u16 index;
-	u8 port_num;
+	u32 port_num;
 };
 
 struct ib_cq_init_attr {
@@ -59313,7 +72275,7 @@ struct ib_qp {
 	enum ib_qp_type qp_type;
 	struct ib_rwq_ind_table *rwq_ind_tbl;
 	struct ib_qp_security *qp_sec;
-	u8 port;
+	u32 port;
 	bool integrity_en;
 	struct rdma_restrack_entry res;
 	struct rdma_counter *counter;
@@ -59344,6 +72306,7 @@ struct ib_srq {
 			} xrc;
 		};
 	} ext;
+	struct rdma_restrack_entry res;
 };
 
 struct ib_uwq_object;
@@ -59378,7 +72341,7 @@ struct ib_event {
 		struct ib_qp *qp;
 		struct ib_srq *srq;
 		struct ib_wq *wq;
-		u8 port_num;
+		u32 port_num;
 	} element;
 	enum ib_event_type event;
 };
@@ -59438,7 +72401,7 @@ struct rdma_ah_attr {
 	struct ib_global_route grh;
 	u8 sl;
 	u8 static_rate;
-	u8 port_num;
+	u32 port_num;
 	u8 ah_flags;
 	enum rdma_ah_attr_type type;
 	union {
@@ -59513,7 +72476,7 @@ struct ib_wc {
 	u16 pkey_index;
 	u8 sl;
 	u8 dlid_path_bits;
-	u8 port_num;
+	u32 port_num;
 	u8 smac[6];
 	u16 vlan_id;
 	u8 network_hdr_type;
@@ -59576,7 +72539,7 @@ struct ib_qp_init_attr {
 	enum ib_sig_type sq_sig_type;
 	enum ib_qp_type qp_type;
 	u32 create_flags;
-	u8 port_num;
+	u32 port_num;
 	struct ib_rwq_ind_table *rwq_ind_tbl;
 	u32 source_qpn;
 };
@@ -59633,11 +72596,11 @@ struct ib_qp_attr {
 	u8 max_rd_atomic;
 	u8 max_dest_rd_atomic;
 	u8 min_rnr_timer;
-	u8 port_num;
+	u32 port_num;
 	u8 timeout;
 	u8 retry_cnt;
 	u8 rnr_retry;
-	u8 alt_port_num;
+	u32 alt_port_num;
 	u8 alt_timeout;
 	u32 rate_limit;
 	struct net_device *xmit_slave;
@@ -59740,7 +72703,6 @@ struct ib_uverbs_file;
 struct ib_ucontext {
 	struct ib_device *device;
 	struct ib_uverbs_file *ufile;
-	bool cleanup_retryable;
 	struct ib_rdmacg_object cg_obj;
 	struct rdma_restrack_entry res;
 	struct xarray mmap_xa;
@@ -59811,7 +72773,7 @@ enum port_pkey_state {
 struct ib_port_pkey {
 	enum port_pkey_state state;
 	u16 pkey_index;
-	u8 port_num;
+	u32 port_num;
 	struct list_head qp_list;
 	struct list_head to_error_list;
 	struct ib_qp_security *sec;
@@ -60071,7 +73033,7 @@ struct ib_flow_attr {
 	u16 priority;
 	u32 flags;
 	u8 num_of_specs;
-	u8 port;
+	u32 port;
 	union ib_flow_spec flows[0];
 };
 
@@ -60131,17 +73093,19 @@ struct ib_port_immutable {
 	u32 max_mad_size;
 };
 
+struct ib_port;
+
 struct ib_port_data {
 	struct ib_device *ib_dev;
 	struct ib_port_immutable immutable;
 	spinlock_t pkey_list_lock;
+	spinlock_t netdev_lock;
 	struct list_head pkey_list;
 	struct ib_port_cache cache;
-	spinlock_t netdev_lock;
 	struct net_device *netdev;
 	struct hlist_node ndev_hash_link;
 	struct rdma_port_counter port_counter;
-	struct rdma_hw_stats *hw_stats;
+	struct ib_port *sysfs;
 };
 
 struct rdma_netdev_alloc_params {
@@ -60149,7 +73113,7 @@ struct rdma_netdev_alloc_params {
 	unsigned int txqs;
 	unsigned int rxqs;
 	void *param;
-	int (*initialize_rdma_netdev)(struct ib_device *, u8, struct net_device *, void *);
+	int (*initialize_rdma_netdev)(struct ib_device *, u32, struct net_device *, void *);
 };
 
 struct ib_counters_read_attr {
@@ -60689,8 +73653,8 @@ struct opal_dev {
 	u64 align;
 	u64 lowest_lba;
 	size_t pos;
-	u8 cmd[2048];
-	u8 resp[2048];
+	u8 *cmd;
+	u8 *resp;
 	struct parsed_resp parsed;
 	size_t prev_d_len;
 	void *prev_data;
@@ -60705,7 +73669,1368 @@ struct opal_suspend_data {
 	struct list_head node;
 };
 
-typedef void (*swap_func_t)(void *, void *, int);
+struct blk_ksm_keyslot {
+	atomic_t slot_refs;
+	struct list_head idle_slot_node;
+	struct hlist_node hash_node;
+	const struct blk_crypto_key *key;
+	struct blk_keyslot_manager *ksm;
+};
+
+struct blk_ksm_ll_ops {
+	int (*keyslot_program)(struct blk_keyslot_manager *, const struct blk_crypto_key *, unsigned int);
+	int (*keyslot_evict)(struct blk_keyslot_manager *, const struct blk_crypto_key *, unsigned int);
+};
+
+struct blk_keyslot_manager {
+	struct blk_ksm_ll_ops ksm_ll_ops;
+	unsigned int max_dun_bytes_supported;
+	unsigned int crypto_modes_supported[4];
+	struct device *dev;
+	unsigned int num_slots;
+	struct rw_semaphore lock;
+	wait_queue_head_t idle_slots_wait_queue;
+	struct list_head idle_slots;
+	spinlock_t idle_slots_lock;
+	struct hlist_head *slot_hashtable;
+	unsigned int log_slot_ht_size;
+	struct blk_ksm_keyslot *slots;
+};
+
+struct blk_crypto_mode {
+	const char *cipher_str;
+	unsigned int keysize;
+	unsigned int ivsize;
+};
+
+struct bio_fallback_crypt_ctx {
+	struct bio_crypt_ctx crypt_ctx;
+	struct bvec_iter crypt_iter;
+	union {
+		struct {
+			struct work_struct work;
+			struct bio *bio;
+		};
+		struct {
+			void *bi_private_orig;
+			bio_end_io_t *bi_end_io_orig;
+		};
+	};
+};
+
+struct blk_crypto_keyslot {
+	enum blk_crypto_mode_num crypto_mode;
+	struct crypto_skcipher *tfms[4];
+};
+
+union blk_crypto_iv {
+	__le64 dun[4];
+	u8 bytes[32];
+};
+
+struct bd_holder_disk {
+	struct list_head list;
+	struct block_device *bdev;
+	int refcnt;
+};
+
+struct xa_limit {
+	u32 max;
+	u32 min;
+};
+
+struct io_wq_work_node;
+
+struct io_wq_work_list {
+	struct io_wq_work_node *first;
+	struct io_wq_work_node *last;
+};
+
+struct io_ring_ctx;
+
+struct io_wq;
+
+struct io_uring_task {
+	int cached_refs;
+	struct xarray xa;
+	struct wait_queue_head wait;
+	const struct io_ring_ctx *last;
+	struct io_wq *io_wq;
+	struct percpu_counter inflight;
+	atomic_t inflight_tracked;
+	atomic_t in_idle;
+	spinlock_t task_lock;
+	struct io_wq_work_list task_list;
+	struct callback_head task_work;
+	bool task_running;
+};
+
+struct iov_iter_state {
+	size_t iov_offset;
+	size_t count;
+	long unsigned int nr_segs;
+};
+
+struct user_msghdr {
+	void *msg_name;
+	int msg_namelen;
+	struct iovec *msg_iov;
+	__kernel_size_t msg_iovlen;
+	void *msg_control;
+	__kernel_size_t msg_controllen;
+	unsigned int msg_flags;
+};
+
+struct compat_msghdr {
+	compat_uptr_t msg_name;
+	compat_int_t msg_namelen;
+	compat_uptr_t msg_iov;
+	compat_size_t msg_iovlen;
+	compat_uptr_t msg_control;
+	compat_size_t msg_controllen;
+	compat_uint_t msg_flags;
+};
+
+struct trace_event_raw_io_uring_create {
+	struct trace_entry ent;
+	int fd;
+	void *ctx;
+	u32 sq_entries;
+	u32 cq_entries;
+	u32 flags;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_register {
+	struct trace_entry ent;
+	void *ctx;
+	unsigned int opcode;
+	unsigned int nr_files;
+	unsigned int nr_bufs;
+	bool eventfd;
+	long int ret;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_file_get {
+	struct trace_entry ent;
+	void *ctx;
+	int fd;
+	char __data[0];
+};
+
+struct io_wq_work;
+
+struct trace_event_raw_io_uring_queue_async_work {
+	struct trace_entry ent;
+	void *ctx;
+	int rw;
+	void *req;
+	struct io_wq_work *work;
+	unsigned int flags;
+	char __data[0];
+};
+
+struct io_wq_work_node {
+	struct io_wq_work_node *next;
+};
+
+struct io_wq_work {
+	struct io_wq_work_node list;
+	unsigned int flags;
+};
+
+struct trace_event_raw_io_uring_defer {
+	struct trace_entry ent;
+	void *ctx;
+	void *req;
+	long long unsigned int data;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_link {
+	struct trace_entry ent;
+	void *ctx;
+	void *req;
+	void *target_req;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_cqring_wait {
+	struct trace_entry ent;
+	void *ctx;
+	int min_events;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_fail_link {
+	struct trace_entry ent;
+	void *req;
+	void *link;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_complete {
+	struct trace_entry ent;
+	void *ctx;
+	u64 user_data;
+	int res;
+	unsigned int cflags;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_submit_sqe {
+	struct trace_entry ent;
+	void *ctx;
+	void *req;
+	u8 opcode;
+	u64 user_data;
+	u32 flags;
+	bool force_nonblock;
+	bool sq_thread;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_poll_arm {
+	struct trace_entry ent;
+	void *ctx;
+	void *req;
+	u8 opcode;
+	u64 user_data;
+	int mask;
+	int events;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_poll_wake {
+	struct trace_entry ent;
+	void *ctx;
+	u8 opcode;
+	u64 user_data;
+	int mask;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_task_add {
+	struct trace_entry ent;
+	void *ctx;
+	u8 opcode;
+	u64 user_data;
+	int mask;
+	char __data[0];
+};
+
+struct trace_event_raw_io_uring_task_run {
+	struct trace_entry ent;
+	void *ctx;
+	void *req;
+	u8 opcode;
+	u64 user_data;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_io_uring_create {};
+
+struct trace_event_data_offsets_io_uring_register {};
+
+struct trace_event_data_offsets_io_uring_file_get {};
+
+struct trace_event_data_offsets_io_uring_queue_async_work {};
+
+struct trace_event_data_offsets_io_uring_defer {};
+
+struct trace_event_data_offsets_io_uring_link {};
+
+struct trace_event_data_offsets_io_uring_cqring_wait {};
+
+struct trace_event_data_offsets_io_uring_fail_link {};
+
+struct trace_event_data_offsets_io_uring_complete {};
+
+struct trace_event_data_offsets_io_uring_submit_sqe {};
+
+struct trace_event_data_offsets_io_uring_poll_arm {};
+
+struct trace_event_data_offsets_io_uring_poll_wake {};
+
+struct trace_event_data_offsets_io_uring_task_add {};
+
+struct trace_event_data_offsets_io_uring_task_run {};
+
+typedef void (*btf_trace_io_uring_create)(void *, int, void *, u32, u32, u32);
+
+typedef void (*btf_trace_io_uring_register)(void *, void *, unsigned int, unsigned int, unsigned int, bool, long int);
+
+typedef void (*btf_trace_io_uring_file_get)(void *, void *, int);
+
+typedef void (*btf_trace_io_uring_queue_async_work)(void *, void *, int, void *, struct io_wq_work *, unsigned int);
+
+typedef void (*btf_trace_io_uring_defer)(void *, void *, void *, long long unsigned int);
+
+typedef void (*btf_trace_io_uring_link)(void *, void *, void *, void *);
+
+typedef void (*btf_trace_io_uring_cqring_wait)(void *, void *, int);
+
+typedef void (*btf_trace_io_uring_fail_link)(void *, void *, void *);
+
+typedef void (*btf_trace_io_uring_complete)(void *, void *, u64, int, unsigned int);
+
+typedef void (*btf_trace_io_uring_submit_sqe)(void *, void *, void *, u8, u64, u32, bool, bool);
+
+typedef void (*btf_trace_io_uring_poll_arm)(void *, void *, void *, u8, u64, int, int);
+
+typedef void (*btf_trace_io_uring_poll_wake)(void *, void *, u8, u64, int);
+
+typedef void (*btf_trace_io_uring_task_add)(void *, void *, u8, u64, int);
+
+typedef void (*btf_trace_io_uring_task_run)(void *, void *, void *, u8, u64);
+
+struct io_uring_sqe {
+	__u8 opcode;
+	__u8 flags;
+	__u16 ioprio;
+	__s32 fd;
+	union {
+		__u64 off;
+		__u64 addr2;
+	};
+	union {
+		__u64 addr;
+		__u64 splice_off_in;
+	};
+	__u32 len;
+	union {
+		__kernel_rwf_t rw_flags;
+		__u32 fsync_flags;
+		__u16 poll_events;
+		__u32 poll32_events;
+		__u32 sync_range_flags;
+		__u32 msg_flags;
+		__u32 timeout_flags;
+		__u32 accept_flags;
+		__u32 cancel_flags;
+		__u32 open_flags;
+		__u32 statx_flags;
+		__u32 fadvise_advice;
+		__u32 splice_flags;
+		__u32 rename_flags;
+		__u32 unlink_flags;
+		__u32 hardlink_flags;
+	};
+	__u64 user_data;
+	union {
+		__u16 buf_index;
+		__u16 buf_group;
+	};
+	__u16 personality;
+	union {
+		__s32 splice_fd_in;
+		__u32 file_index;
+	};
+	__u64 __pad2[2];
+};
+
+enum {
+	IOSQE_FIXED_FILE_BIT = 0,
+	IOSQE_IO_DRAIN_BIT = 1,
+	IOSQE_IO_LINK_BIT = 2,
+	IOSQE_IO_HARDLINK_BIT = 3,
+	IOSQE_ASYNC_BIT = 4,
+	IOSQE_BUFFER_SELECT_BIT = 5,
+};
+
+enum {
+	IORING_OP_NOP = 0,
+	IORING_OP_READV = 1,
+	IORING_OP_WRITEV = 2,
+	IORING_OP_FSYNC = 3,
+	IORING_OP_READ_FIXED = 4,
+	IORING_OP_WRITE_FIXED = 5,
+	IORING_OP_POLL_ADD = 6,
+	IORING_OP_POLL_REMOVE = 7,
+	IORING_OP_SYNC_FILE_RANGE = 8,
+	IORING_OP_SENDMSG = 9,
+	IORING_OP_RECVMSG = 10,
+	IORING_OP_TIMEOUT = 11,
+	IORING_OP_TIMEOUT_REMOVE = 12,
+	IORING_OP_ACCEPT = 13,
+	IORING_OP_ASYNC_CANCEL = 14,
+	IORING_OP_LINK_TIMEOUT = 15,
+	IORING_OP_CONNECT = 16,
+	IORING_OP_FALLOCATE = 17,
+	IORING_OP_OPENAT = 18,
+	IORING_OP_CLOSE = 19,
+	IORING_OP_FILES_UPDATE = 20,
+	IORING_OP_STATX = 21,
+	IORING_OP_READ = 22,
+	IORING_OP_WRITE = 23,
+	IORING_OP_FADVISE = 24,
+	IORING_OP_MADVISE = 25,
+	IORING_OP_SEND = 26,
+	IORING_OP_RECV = 27,
+	IORING_OP_OPENAT2 = 28,
+	IORING_OP_EPOLL_CTL = 29,
+	IORING_OP_SPLICE = 30,
+	IORING_OP_PROVIDE_BUFFERS = 31,
+	IORING_OP_REMOVE_BUFFERS = 32,
+	IORING_OP_TEE = 33,
+	IORING_OP_SHUTDOWN = 34,
+	IORING_OP_RENAMEAT = 35,
+	IORING_OP_UNLINKAT = 36,
+	IORING_OP_MKDIRAT = 37,
+	IORING_OP_SYMLINKAT = 38,
+	IORING_OP_LINKAT = 39,
+	IORING_OP_LAST = 40,
+};
+
+struct io_uring_cqe {
+	__u64 user_data;
+	__s32 res;
+	__u32 flags;
+};
+
+enum {
+	IORING_CQE_BUFFER_SHIFT = 16,
+};
+
+struct io_sqring_offsets {
+	__u32 head;
+	__u32 tail;
+	__u32 ring_mask;
+	__u32 ring_entries;
+	__u32 flags;
+	__u32 dropped;
+	__u32 array;
+	__u32 resv1;
+	__u64 resv2;
+};
+
+struct io_cqring_offsets {
+	__u32 head;
+	__u32 tail;
+	__u32 ring_mask;
+	__u32 ring_entries;
+	__u32 overflow;
+	__u32 cqes;
+	__u32 flags;
+	__u32 resv1;
+	__u64 resv2;
+};
+
+struct io_uring_params {
+	__u32 sq_entries;
+	__u32 cq_entries;
+	__u32 flags;
+	__u32 sq_thread_cpu;
+	__u32 sq_thread_idle;
+	__u32 features;
+	__u32 wq_fd;
+	__u32 resv[3];
+	struct io_sqring_offsets sq_off;
+	struct io_cqring_offsets cq_off;
+};
+
+enum {
+	IORING_REGISTER_BUFFERS = 0,
+	IORING_UNREGISTER_BUFFERS = 1,
+	IORING_REGISTER_FILES = 2,
+	IORING_UNREGISTER_FILES = 3,
+	IORING_REGISTER_EVENTFD = 4,
+	IORING_UNREGISTER_EVENTFD = 5,
+	IORING_REGISTER_FILES_UPDATE = 6,
+	IORING_REGISTER_EVENTFD_ASYNC = 7,
+	IORING_REGISTER_PROBE = 8,
+	IORING_REGISTER_PERSONALITY = 9,
+	IORING_UNREGISTER_PERSONALITY = 10,
+	IORING_REGISTER_RESTRICTIONS = 11,
+	IORING_REGISTER_ENABLE_RINGS = 12,
+	IORING_REGISTER_FILES2 = 13,
+	IORING_REGISTER_FILES_UPDATE2 = 14,
+	IORING_REGISTER_BUFFERS2 = 15,
+	IORING_REGISTER_BUFFERS_UPDATE = 16,
+	IORING_REGISTER_IOWQ_AFF = 17,
+	IORING_UNREGISTER_IOWQ_AFF = 18,
+	IORING_REGISTER_IOWQ_MAX_WORKERS = 19,
+	IORING_REGISTER_LAST = 20,
+};
+
+struct io_uring_rsrc_register {
+	__u32 nr;
+	__u32 resv;
+	__u64 resv2;
+	__u64 data;
+	__u64 tags;
+};
+
+struct io_uring_rsrc_update2 {
+	__u32 offset;
+	__u32 resv;
+	__u64 data;
+	__u64 tags;
+	__u32 nr;
+	__u32 resv2;
+};
+
+struct io_uring_probe_op {
+	__u8 op;
+	__u8 resv;
+	__u16 flags;
+	__u32 resv2;
+};
+
+struct io_uring_probe {
+	__u8 last_op;
+	__u8 ops_len;
+	__u16 resv;
+	__u32 resv2[3];
+	struct io_uring_probe_op ops[0];
+};
+
+struct io_uring_restriction {
+	__u16 opcode;
+	union {
+		__u8 register_op;
+		__u8 sqe_op;
+		__u8 sqe_flags;
+	};
+	__u8 resv;
+	__u32 resv2[3];
+};
+
+enum {
+	IORING_RESTRICTION_REGISTER_OP = 0,
+	IORING_RESTRICTION_SQE_OP = 1,
+	IORING_RESTRICTION_SQE_FLAGS_ALLOWED = 2,
+	IORING_RESTRICTION_SQE_FLAGS_REQUIRED = 3,
+	IORING_RESTRICTION_LAST = 4,
+};
+
+struct io_uring_getevents_arg {
+	__u64 sigmask;
+	__u32 sigmask_sz;
+	__u32 pad;
+	__u64 ts;
+};
+
+enum {
+	IO_WQ_WORK_CANCEL = 1,
+	IO_WQ_WORK_HASHED = 2,
+	IO_WQ_WORK_UNBOUND = 4,
+	IO_WQ_WORK_CONCURRENT = 16,
+	IO_WQ_HASH_SHIFT = 24,
+};
+
+enum io_wq_cancel {
+	IO_WQ_CANCEL_OK = 0,
+	IO_WQ_CANCEL_RUNNING = 1,
+	IO_WQ_CANCEL_NOTFOUND = 2,
+};
+
+typedef struct io_wq_work *free_work_fn(struct io_wq_work *);
+
+typedef void io_wq_work_fn(struct io_wq_work *);
+
+struct io_wq_hash {
+	refcount_t refs;
+	long unsigned int map;
+	struct wait_queue_head wait;
+};
+
+struct io_wq_data {
+	struct io_wq_hash *hash;
+	struct task_struct *task;
+	io_wq_work_fn *do_work;
+	free_work_fn *free_work;
+};
+
+typedef bool work_cancel_fn(struct io_wq_work *, void *);
+
+struct io_uring {
+	u32 head;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	u32 tail;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct io_rings {
+	struct io_uring sq;
+	struct io_uring cq;
+	u32 sq_ring_mask;
+	u32 cq_ring_mask;
+	u32 sq_ring_entries;
+	u32 cq_ring_entries;
+	u32 sq_dropped;
+	u32 sq_flags;
+	u32 cq_flags;
+	u32 cq_overflow;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct io_uring_cqe cqes[0];
+};
+
+enum io_uring_cmd_flags {
+	IO_URING_F_NONBLOCK = 1,
+	IO_URING_F_COMPLETE_DEFER = 2,
+};
+
+struct io_mapped_ubuf {
+	u64 ubuf;
+	u64 ubuf_end;
+	unsigned int nr_bvecs;
+	long unsigned int acct_pages;
+	struct bio_vec bvec[0];
+};
+
+struct io_overflow_cqe {
+	struct io_uring_cqe cqe;
+	struct list_head list;
+};
+
+struct io_fixed_file {
+	long unsigned int file_ptr;
+};
+
+struct io_rsrc_put {
+	struct list_head list;
+	u64 tag;
+	union {
+		void *rsrc;
+		struct file *file;
+		struct io_mapped_ubuf *buf;
+	};
+};
+
+struct io_file_table {
+	struct io_fixed_file *files;
+};
+
+struct io_rsrc_data;
+
+struct io_rsrc_node {
+	struct percpu_ref refs;
+	struct list_head node;
+	struct list_head rsrc_list;
+	struct io_rsrc_data *rsrc_data;
+	struct llist_node llist;
+	bool done;
+};
+
+typedef void rsrc_put_fn(struct io_ring_ctx *, struct io_rsrc_put *);
+
+struct io_rsrc_data {
+	struct io_ring_ctx *ctx;
+	u64 **tags;
+	unsigned int nr;
+	rsrc_put_fn *do_put;
+	atomic_t refs;
+	struct completion done;
+	bool quiesce;
+};
+
+struct io_kiocb;
+
+struct io_submit_link {
+	struct io_kiocb *head;
+	struct io_kiocb *last;
+};
+
+struct io_submit_state {
+	struct blk_plug plug;
+	struct io_submit_link link;
+	void *reqs[32];
+	unsigned int free_reqs;
+	bool plug_started;
+	struct io_kiocb *compl_reqs[32];
+	unsigned int compl_nr;
+	struct list_head free_list;
+	unsigned int ios_left;
+};
+
+struct io_restriction {
+	long unsigned int register_op[1];
+	long unsigned int sqe_op[1];
+	u8 sqe_flags_allowed;
+	u8 sqe_flags_required;
+	bool registered;
+};
+
+struct io_sq_data;
+
+struct io_ring_ctx {
+	struct {
+		struct percpu_ref refs;
+		struct io_rings *rings;
+		unsigned int flags;
+		unsigned int compat: 1;
+		unsigned int drain_next: 1;
+		unsigned int eventfd_async: 1;
+		unsigned int restricted: 1;
+		unsigned int off_timeout_used: 1;
+		unsigned int drain_active: 1;
+		long: 64;
+		long: 64;
+		long: 64;
+		long: 64;
+	};
+	struct {
+		struct mutex uring_lock;
+		u32 *sq_array;
+		struct io_uring_sqe *sq_sqes;
+		unsigned int cached_sq_head;
+		unsigned int sq_entries;
+		struct list_head defer_list;
+		struct io_rsrc_node *rsrc_node;
+		struct io_file_table file_table;
+		unsigned int nr_user_files;
+		unsigned int nr_user_bufs;
+		struct io_mapped_ubuf **user_bufs;
+		struct io_submit_state submit_state;
+		struct list_head timeout_list;
+		struct list_head ltimeout_list;
+		struct list_head cq_overflow_list;
+		struct xarray io_buffers;
+		struct xarray personalities;
+		u32 pers_next;
+		unsigned int sq_thread_idle;
+		long: 64;
+		long: 64;
+		long: 64;
+		long: 64;
+	};
+	struct list_head locked_free_list;
+	unsigned int locked_free_nr;
+	const struct cred *sq_creds;
+	struct io_sq_data *sq_data;
+	struct wait_queue_head sqo_sq_wait;
+	struct list_head sqd_list;
+	long unsigned int check_cq_overflow;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct {
+		unsigned int cached_cq_tail;
+		unsigned int cq_entries;
+		struct eventfd_ctx *cq_ev_fd;
+		struct wait_queue_head poll_wait;
+		struct wait_queue_head cq_wait;
+		unsigned int cq_extra;
+		atomic_t cq_timeouts;
+		unsigned int cq_last_tm_flush;
+		long: 64;
+		long: 64;
+		long: 64;
+		long: 64;
+		long: 64;
+		long: 64;
+	};
+	struct {
+		spinlock_t completion_lock;
+		spinlock_t timeout_lock;
+		struct list_head iopoll_list;
+		struct hlist_head *cancel_hash;
+		unsigned int cancel_hash_bits;
+		bool poll_multi_queue;
+		long: 64;
+		long: 64;
+		long: 64;
+	};
+	struct io_restriction restrictions;
+	struct {
+		struct io_rsrc_node *rsrc_backup_node;
+		struct io_mapped_ubuf *dummy_ubuf;
+		struct io_rsrc_data *file_data;
+		struct io_rsrc_data *buf_data;
+		struct delayed_work rsrc_put_work;
+		struct llist_head rsrc_put_llist;
+		struct list_head rsrc_ref_list;
+		spinlock_t rsrc_ref_lock;
+	};
+	struct {
+		struct io_wq_hash *hash_map;
+		struct user_struct *user;
+		struct mm_struct *mm_account;
+		struct llist_head fallback_llist;
+		struct delayed_work fallback_work;
+		struct work_struct exit_work;
+		struct list_head tctx_list;
+		struct completion ref_comp;
+		u32 iowq_limits[2];
+		bool iowq_limits_set;
+	};
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct io_buffer {
+	struct list_head list;
+	__u64 addr;
+	__u32 len;
+	__u16 bid;
+};
+
+enum {
+	IO_SQ_THREAD_SHOULD_STOP = 0,
+	IO_SQ_THREAD_SHOULD_PARK = 1,
+};
+
+struct io_sq_data {
+	refcount_t refs;
+	atomic_t park_pending;
+	struct mutex lock;
+	struct list_head ctx_list;
+	struct task_struct *thread;
+	struct wait_queue_head wait;
+	unsigned int sq_thread_idle;
+	int sq_cpu;
+	pid_t task_pid;
+	pid_t task_tgid;
+	long unsigned int state;
+	struct completion exited;
+};
+
+struct io_rw {
+	struct kiocb kiocb;
+	u64 addr;
+	u64 len;
+};
+
+struct io_poll_iocb {
+	struct file *file;
+	struct wait_queue_head *head;
+	__poll_t events;
+	int retries;
+	struct wait_queue_entry wait;
+};
+
+struct io_poll_update {
+	struct file *file;
+	u64 old_user_data;
+	u64 new_user_data;
+	__poll_t events;
+	bool update_events;
+	bool update_user_data;
+};
+
+struct io_accept {
+	struct file *file;
+	struct sockaddr *addr;
+	int *addr_len;
+	int flags;
+	u32 file_slot;
+	long unsigned int nofile;
+};
+
+struct io_sync {
+	struct file *file;
+	loff_t len;
+	loff_t off;
+	int flags;
+	int mode;
+};
+
+struct io_cancel {
+	struct file *file;
+	u64 addr;
+};
+
+struct io_timeout {
+	struct file *file;
+	u32 off;
+	u32 target_seq;
+	struct list_head list;
+	struct io_kiocb *head;
+	struct io_kiocb *prev;
+};
+
+struct io_timeout_rem {
+	struct file *file;
+	u64 addr;
+	struct timespec64 ts;
+	u32 flags;
+	bool ltimeout;
+};
+
+struct io_connect {
+	struct file *file;
+	struct sockaddr *addr;
+	int addr_len;
+};
+
+struct io_sr_msg {
+	struct file *file;
+	union {
+		struct compat_msghdr *umsg_compat;
+		struct user_msghdr *umsg;
+		void *buf;
+	};
+	int msg_flags;
+	int bgid;
+	size_t len;
+	size_t done_io;
+	struct io_buffer *kbuf;
+	void *msg_control;
+};
+
+struct io_open {
+	struct file *file;
+	int dfd;
+	u32 file_slot;
+	struct filename *filename;
+	struct open_how how;
+	long unsigned int nofile;
+};
+
+struct io_close {
+	struct file *file;
+	int fd;
+	u32 file_slot;
+};
+
+struct io_rsrc_update {
+	struct file *file;
+	u64 arg;
+	u32 nr_args;
+	u32 offset;
+};
+
+struct io_fadvise {
+	struct file *file;
+	u64 offset;
+	u32 len;
+	u32 advice;
+};
+
+struct io_madvise {
+	struct file *file;
+	u64 addr;
+	u32 len;
+	u32 advice;
+};
+
+struct io_epoll {
+	struct file *file;
+	int epfd;
+	int op;
+	int fd;
+	struct epoll_event event;
+};
+
+struct io_splice {
+	struct file *file_out;
+	loff_t off_out;
+	loff_t off_in;
+	u64 len;
+	int splice_fd_in;
+	unsigned int flags;
+};
+
+struct io_provide_buf {
+	struct file *file;
+	__u64 addr;
+	__u32 len;
+	__u32 bgid;
+	__u16 nbufs;
+	__u16 bid;
+};
+
+struct io_statx {
+	struct file *file;
+	int dfd;
+	unsigned int mask;
+	unsigned int flags;
+	const char *filename;
+	struct statx *buffer;
+};
+
+struct io_shutdown {
+	struct file *file;
+	int how;
+};
+
+struct io_rename {
+	struct file *file;
+	int old_dfd;
+	int new_dfd;
+	struct filename *oldpath;
+	struct filename *newpath;
+	int flags;
+};
+
+struct io_unlink {
+	struct file *file;
+	int dfd;
+	int flags;
+	struct filename *filename;
+};
+
+struct io_mkdir {
+	struct file *file;
+	int dfd;
+	umode_t mode;
+	struct filename *filename;
+};
+
+struct io_symlink {
+	struct file *file;
+	int new_dfd;
+	struct filename *oldpath;
+	struct filename *newpath;
+};
+
+struct io_hardlink {
+	struct file *file;
+	int old_dfd;
+	int new_dfd;
+	struct filename *oldpath;
+	struct filename *newpath;
+	int flags;
+};
+
+struct io_completion {
+	struct file *file;
+	u32 cflags;
+};
+
+typedef void (*io_req_tw_func_t)(struct io_kiocb *, bool *);
+
+struct io_task_work {
+	union {
+		struct io_wq_work_node node;
+		struct llist_node fallback_node;
+	};
+	io_req_tw_func_t func;
+};
+
+struct async_poll;
+
+struct io_kiocb {
+	union {
+		struct file *file;
+		struct io_rw rw;
+		struct io_poll_iocb poll;
+		struct io_poll_update poll_update;
+		struct io_accept accept;
+		struct io_sync sync;
+		struct io_cancel cancel;
+		struct io_timeout timeout;
+		struct io_timeout_rem timeout_rem;
+		struct io_connect connect;
+		struct io_sr_msg sr_msg;
+		struct io_open open;
+		struct io_close close;
+		struct io_rsrc_update rsrc_update;
+		struct io_fadvise fadvise;
+		struct io_madvise madvise;
+		struct io_epoll epoll;
+		struct io_splice splice;
+		struct io_provide_buf pbuf;
+		struct io_statx statx;
+		struct io_shutdown shutdown;
+		struct io_rename rename;
+		struct io_unlink unlink;
+		struct io_mkdir mkdir;
+		struct io_symlink symlink;
+		struct io_hardlink hardlink;
+		struct io_completion compl;
+	};
+	void *async_data;
+	u8 opcode;
+	u8 iopoll_completed;
+	u16 buf_index;
+	u32 result;
+	struct io_ring_ctx *ctx;
+	unsigned int flags;
+	atomic_t refs;
+	struct task_struct *task;
+	u64 user_data;
+	struct io_kiocb *link;
+	struct percpu_ref *fixed_rsrc_refs;
+	struct list_head inflight_entry;
+	struct io_task_work io_task_work;
+	struct hlist_node hash_node;
+	struct async_poll *apoll;
+	struct io_wq_work work;
+	const struct cred *creds;
+	struct io_mapped_ubuf *imu;
+	struct io_buffer *kbuf;
+	atomic_t poll_refs;
+};
+
+struct io_timeout_data {
+	struct io_kiocb *req;
+	struct hrtimer timer;
+	struct timespec64 ts;
+	enum hrtimer_mode mode;
+	u32 flags;
+};
+
+struct io_async_connect {
+	struct __kernel_sockaddr_storage address;
+};
+
+struct io_async_msghdr {
+	struct iovec fast_iov[8];
+	struct iovec *free_iov;
+	struct sockaddr *uaddr;
+	struct msghdr msg;
+	struct __kernel_sockaddr_storage addr;
+};
+
+struct io_async_rw {
+	struct iovec fast_iov[8];
+	const struct iovec *free_iovec;
+	struct iov_iter iter;
+	struct iov_iter_state iter_state;
+	size_t bytes_done;
+	struct wait_page_queue wpq;
+};
+
+enum {
+	REQ_F_FIXED_FILE_BIT = 0,
+	REQ_F_IO_DRAIN_BIT = 1,
+	REQ_F_LINK_BIT = 2,
+	REQ_F_HARDLINK_BIT = 3,
+	REQ_F_FORCE_ASYNC_BIT = 4,
+	REQ_F_BUFFER_SELECT_BIT = 5,
+	REQ_F_FAIL_BIT = 8,
+	REQ_F_INFLIGHT_BIT = 9,
+	REQ_F_CUR_POS_BIT = 10,
+	REQ_F_NOWAIT_BIT = 11,
+	REQ_F_LINK_TIMEOUT_BIT = 12,
+	REQ_F_NEED_CLEANUP_BIT = 13,
+	REQ_F_POLLED_BIT = 14,
+	REQ_F_BUFFER_SELECTED_BIT = 15,
+	REQ_F_COMPLETE_INLINE_BIT = 16,
+	REQ_F_REISSUE_BIT = 17,
+	REQ_F_CREDS_BIT = 18,
+	REQ_F_REFCOUNT_BIT = 19,
+	REQ_F_ARM_LTIMEOUT_BIT = 20,
+	REQ_F_PARTIAL_IO_BIT = 21,
+	REQ_F_NOWAIT_READ_BIT = 22,
+	REQ_F_NOWAIT_WRITE_BIT = 23,
+	REQ_F_ISREG_BIT = 24,
+	__REQ_F_LAST_BIT = 25,
+};
+
+enum {
+	REQ_F_FIXED_FILE = 1,
+	REQ_F_IO_DRAIN = 2,
+	REQ_F_LINK = 4,
+	REQ_F_HARDLINK = 8,
+	REQ_F_FORCE_ASYNC = 16,
+	REQ_F_BUFFER_SELECT = 32,
+	REQ_F_FAIL = 256,
+	REQ_F_INFLIGHT = 512,
+	REQ_F_CUR_POS = 1024,
+	REQ_F_NOWAIT = 2048,
+	REQ_F_LINK_TIMEOUT = 4096,
+	REQ_F_NEED_CLEANUP = 8192,
+	REQ_F_POLLED = 16384,
+	REQ_F_BUFFER_SELECTED = 32768,
+	REQ_F_COMPLETE_INLINE = 65536,
+	REQ_F_REISSUE = 131072,
+	REQ_F_NOWAIT_READ = 4194304,
+	REQ_F_NOWAIT_WRITE = 8388608,
+	REQ_F_ISREG = 16777216,
+	REQ_F_CREDS = 262144,
+	REQ_F_REFCOUNT = 524288,
+	REQ_F_ARM_LTIMEOUT = 1048576,
+	REQ_F_PARTIAL_IO = 2097152,
+};
+
+struct async_poll {
+	struct io_poll_iocb poll;
+	struct io_poll_iocb *double_poll;
+};
+
+enum {
+	IORING_RSRC_FILE = 0,
+	IORING_RSRC_BUFFER = 1,
+};
+
+struct io_tctx_node {
+	struct list_head ctx_node;
+	struct task_struct *task;
+	struct io_ring_ctx *ctx;
+};
+
+struct io_defer_entry {
+	struct list_head list;
+	struct io_kiocb *req;
+	u32 seq;
+};
+
+struct io_op_def {
+	unsigned int needs_file: 1;
+	unsigned int hash_reg_file: 1;
+	unsigned int unbound_nonreg_file: 1;
+	unsigned int not_supported: 1;
+	unsigned int pollin: 1;
+	unsigned int pollout: 1;
+	unsigned int buffer_select: 1;
+	unsigned int needs_async_setup: 1;
+	unsigned int plug: 1;
+	short unsigned int async_size;
+};
+
+struct req_batch {
+	struct task_struct *task;
+	int task_refs;
+	int ctx_refs;
+};
+
+struct io_poll_table {
+	struct poll_table_struct pt;
+	struct io_kiocb *req;
+	int nr_entries;
+	int error;
+};
+
+enum {
+	IO_APOLL_OK = 0,
+	IO_APOLL_ABORTED = 1,
+	IO_APOLL_READY = 2,
+};
+
+struct io_cancel_data {
+	struct io_ring_ctx *ctx;
+	u64 user_data;
+};
+
+struct io_wait_queue {
+	struct wait_queue_entry wq;
+	struct io_ring_ctx *ctx;
+	unsigned int cq_tail;
+	unsigned int nr_timeouts;
+};
+
+struct io_tctx_exit {
+	struct callback_head task_work;
+	struct completion completion;
+	struct io_ring_ctx *ctx;
+};
+
+struct io_task_cancel {
+	struct task_struct *task;
+	bool all;
+};
+
+struct creds;
+
+enum {
+	IO_WQ_BOUND = 0,
+	IO_WQ_UNBOUND = 1,
+};
+
+enum {
+	IO_WORKER_F_UP = 1,
+	IO_WORKER_F_RUNNING = 2,
+	IO_WORKER_F_FREE = 4,
+	IO_WORKER_F_BOUND = 8,
+};
+
+enum {
+	IO_WQ_BIT_EXIT = 0,
+};
+
+enum {
+	IO_ACCT_STALLED_BIT = 0,
+};
+
+struct io_wqe;
+
+struct io_worker {
+	refcount_t ref;
+	unsigned int flags;
+	struct hlist_nulls_node nulls_node;
+	struct list_head all_list;
+	struct task_struct *task;
+	struct io_wqe *wqe;
+	struct io_wq_work *cur_work;
+	spinlock_t lock;
+	struct completion ref_done;
+	long unsigned int create_state;
+	struct callback_head create_work;
+	int create_index;
+	int init_retries;
+	union {
+		struct callback_head rcu;
+		struct work_struct work;
+	};
+};
+
+struct io_wqe_acct {
+	unsigned int nr_workers;
+	unsigned int max_workers;
+	int index;
+	atomic_t nr_running;
+	struct io_wq_work_list work_list;
+	long unsigned int flags;
+};
+
+struct io_wqe {
+	raw_spinlock_t lock;
+	struct io_wqe_acct acct[2];
+	int node;
+	struct hlist_nulls_head free_list;
+	struct list_head all_list;
+	struct wait_queue_entry wait;
+	struct io_wq *wq;
+	struct io_wq_work *hash_tail[64];
+	cpumask_var_t cpu_mask;
+};
+
+enum {
+	IO_WQ_ACCT_BOUND = 0,
+	IO_WQ_ACCT_UNBOUND = 1,
+	IO_WQ_ACCT_NR = 2,
+};
+
+struct io_wq {
+	long unsigned int state;
+	free_work_fn *free_work;
+	io_wq_work_fn *do_work;
+	struct io_wq_hash *hash;
+	atomic_t worker_refs;
+	struct completion worker_done;
+	struct hlist_node cpuhp_node;
+	struct task_struct *task;
+	struct io_wqe *wqes[0];
+};
+
+struct io_cb_cancel_data {
+	work_cancel_fn *fn;
+	void *data;
+	int nr_running;
+	int nr_pending;
+	bool cancel_all;
+};
+
+struct online_data {
+	unsigned int cpu;
+	bool online;
+};
 
 typedef int (*cmp_r_func_t)(const void *, const void *, const void *);
 
@@ -60716,15 +75041,12 @@ struct siprand_state {
 	long unsigned int v3;
 };
 
-typedef __kernel_long_t __kernel_ptrdiff_t;
-
-typedef __kernel_ptrdiff_t ptrdiff_t;
-
 struct region {
 	unsigned int start;
 	unsigned int off;
 	unsigned int group_len;
 	unsigned int end;
+	unsigned int nbits;
 };
 
 enum {
@@ -60733,6 +75055,12 @@ enum {
 	REG_OP_RELEASE = 2,
 };
 
+struct sg_append_table {
+	struct sg_table sgt;
+	struct scatterlist *prv;
+	unsigned int total_nents;
+};
+
 typedef struct scatterlist *sg_alloc_fn(unsigned int, gfp_t);
 
 typedef void sg_free_fn(struct scatterlist *, unsigned int);
@@ -60759,8 +75087,6 @@ struct sg_mapping_iter {
 	unsigned int __flags;
 };
 
-typedef int (*list_cmp_func_t)(void *, const struct list_head *, const struct list_head *);
-
 struct csum_state {
 	__wsum csum;
 	size_t off;
@@ -60830,6 +75156,7 @@ enum devm_ioremap_type {
 	DEVM_IOREMAP = 0,
 	DEVM_IOREMAP_UC = 1,
 	DEVM_IOREMAP_WC = 2,
+	DEVM_IOREMAP_NP = 3,
 };
 
 struct pcim_iomap_devres {
@@ -60890,6 +75217,11 @@ struct linear_range {
 	unsigned int step;
 };
 
+enum packing_op {
+	PACK = 0,
+	UNPACK = 1,
+};
+
 struct xxh32_state {
 	uint32_t total_len_32;
 	uint32_t large_len;
@@ -60929,10 +75261,6 @@ struct genpool_data_fixed {
 	long unsigned int offset;
 };
 
-typedef struct z_stream_s z_stream;
-
-typedef z_stream *z_streamp;
-
 typedef struct {
 	unsigned char op;
 	unsigned char bits;
@@ -61012,17 +75340,17 @@ union uu {
 
 typedef unsigned int uInt;
 
-struct inflate_workspace {
-	struct inflate_state inflate_state;
-	unsigned char working_window[32768];
-};
-
 typedef enum {
 	CODES = 0,
 	LENS = 1,
 	DISTS = 2,
 } codetype;
 
+struct inflate_workspace {
+	struct inflate_state inflate_state;
+	unsigned char working_window[32768];
+};
+
 typedef unsigned char uch;
 
 typedef short unsigned int ush;
@@ -61156,52 +75484,6 @@ typedef struct config_s config;
 
 typedef struct tree_desc_s tree_desc;
 
-typedef struct {
-	uint32_t hashTable[4096];
-	uint32_t currentOffset;
-	uint32_t initCheck;
-	const uint8_t *dictionary;
-	uint8_t *bufferStart;
-	uint32_t dictSize;
-} LZ4_stream_t_internal;
-
-typedef union {
-	long long unsigned int table[2052];
-	LZ4_stream_t_internal internal_donotuse;
-} LZ4_stream_t;
-
-typedef uint8_t BYTE;
-
-typedef uint16_t U16;
-
-typedef uint32_t U32;
-
-typedef uint64_t U64;
-
-typedef uintptr_t uptrval;
-
-typedef enum {
-	noLimit = 0,
-	limitedOutput = 1,
-} limitedOutput_directive;
-
-typedef enum {
-	byPtr = 0,
-	byU32 = 1,
-	byU16 = 2,
-} tableType_t;
-
-typedef enum {
-	noDict = 0,
-	withPrefix64k = 1,
-	usingExtDict = 2,
-} dict_directive;
-
-typedef enum {
-	noDictIssue = 0,
-	dictSmall = 1,
-} dictIssue_directive;
-
 typedef struct {
 	const uint8_t *externalDict;
 	size_t extDictSize;
@@ -61214,6 +75496,18 @@ typedef union {
 	LZ4_streamDecode_t_internal internal_donotuse;
 } LZ4_streamDecode_t;
 
+typedef uint16_t U16;
+
+typedef uint64_t U64;
+
+typedef uintptr_t uptrval;
+
+typedef enum {
+	noDict = 0,
+	withPrefix64k = 1,
+	usingExtDict = 2,
+} dict_directive;
+
 typedef enum {
 	endOnOutputSize = 0,
 	endOnInputSize = 1,
@@ -61224,286 +75518,6 @@ typedef enum {
 	partial_decode = 1,
 } earlyEnd_directive;
 
-typedef struct {
-	size_t bitContainer;
-	int bitPos;
-	char *startPtr;
-	char *ptr;
-	char *endPtr;
-} BIT_CStream_t;
-
-typedef unsigned int FSE_CTable;
-
-typedef struct {
-	ptrdiff_t value;
-	const void *stateTable;
-	const void *symbolTT;
-	unsigned int stateLog;
-} FSE_CState_t;
-
-typedef struct {
-	int deltaFindState;
-	U32 deltaNbBits;
-} FSE_symbolCompressionTransform;
-
-typedef int16_t S16;
-
-struct HUF_CElt_s {
-	U16 val;
-	BYTE nbBits;
-};
-
-typedef struct HUF_CElt_s HUF_CElt;
-
-typedef enum {
-	HUF_repeat_none = 0,
-	HUF_repeat_check = 1,
-	HUF_repeat_valid = 2,
-} HUF_repeat;
-
-struct nodeElt_s {
-	U32 count;
-	U16 parent;
-	BYTE byte;
-	BYTE nbBits;
-};
-
-typedef struct nodeElt_s nodeElt;
-
-typedef struct {
-	U32 base;
-	U32 curr;
-} rankPos;
-
-typedef enum {
-	ZSTD_fast = 0,
-	ZSTD_dfast = 1,
-	ZSTD_greedy = 2,
-	ZSTD_lazy = 3,
-	ZSTD_lazy2 = 4,
-	ZSTD_btlazy2 = 5,
-	ZSTD_btopt = 6,
-	ZSTD_btopt2 = 7,
-} ZSTD_strategy;
-
-typedef struct {
-	unsigned int windowLog;
-	unsigned int chainLog;
-	unsigned int hashLog;
-	unsigned int searchLog;
-	unsigned int searchLength;
-	unsigned int targetLength;
-	ZSTD_strategy strategy;
-} ZSTD_compressionParameters;
-
-typedef struct {
-	unsigned int contentSizeFlag;
-	unsigned int checksumFlag;
-	unsigned int noDictIDFlag;
-} ZSTD_frameParameters;
-
-typedef struct {
-	ZSTD_compressionParameters cParams;
-	ZSTD_frameParameters fParams;
-} ZSTD_parameters;
-
-typedef enum {
-	ZSTDcs_created = 0,
-	ZSTDcs_init = 1,
-	ZSTDcs_ongoing = 2,
-	ZSTDcs_ending = 3,
-} ZSTD_compressionStage_e;
-
-typedef void * (*ZSTD_allocFunction)(void *, size_t);
-
-typedef void (*ZSTD_freeFunction)(void *, void *);
-
-typedef struct {
-	ZSTD_allocFunction customAlloc;
-	ZSTD_freeFunction customFree;
-	void *opaque;
-} ZSTD_customMem;
-
-typedef struct {
-	U32 price;
-	U32 off;
-	U32 mlen;
-	U32 litlen;
-	U32 rep[3];
-} ZSTD_optimal_t;
-
-typedef struct {
-	U32 off;
-	U32 len;
-} ZSTD_match_t;
-
-struct seqDef_s;
-
-typedef struct seqDef_s seqDef;
-
-typedef struct {
-	seqDef *sequencesStart;
-	seqDef *sequences;
-	BYTE *litStart;
-	BYTE *lit;
-	BYTE *llCode;
-	BYTE *mlCode;
-	BYTE *ofCode;
-	U32 longLengthID;
-	U32 longLengthPos;
-	ZSTD_optimal_t *priceTable;
-	ZSTD_match_t *matchTable;
-	U32 *matchLengthFreq;
-	U32 *litLengthFreq;
-	U32 *litFreq;
-	U32 *offCodeFreq;
-	U32 matchLengthSum;
-	U32 matchSum;
-	U32 litLengthSum;
-	U32 litSum;
-	U32 offCodeSum;
-	U32 log2matchLengthSum;
-	U32 log2matchSum;
-	U32 log2litLengthSum;
-	U32 log2litSum;
-	U32 log2offCodeSum;
-	U32 factor;
-	U32 staticPrices;
-	U32 cachedPrice;
-	U32 cachedLitLength;
-	const BYTE *cachedLiterals;
-} seqStore_t;
-
-struct HUF_CElt_s;
-
-typedef struct HUF_CElt_s HUF_CElt___2;
-
-struct ZSTD_CCtx_s {
-	const BYTE *nextSrc;
-	const BYTE *base;
-	const BYTE *dictBase;
-	U32 dictLimit;
-	U32 lowLimit;
-	U32 nextToUpdate;
-	U32 nextToUpdate3;
-	U32 hashLog3;
-	U32 loadedDictEnd;
-	U32 forceWindow;
-	U32 forceRawDict;
-	ZSTD_compressionStage_e stage;
-	U32 rep[3];
-	U32 repToConfirm[3];
-	U32 dictID;
-	ZSTD_parameters params;
-	void *workSpace;
-	size_t workSpaceSize;
-	size_t blockSize;
-	U64 frameContentSize;
-	struct xxh64_state xxhState;
-	ZSTD_customMem customMem;
-	seqStore_t seqStore;
-	U32 *hashTable;
-	U32 *hashTable3;
-	U32 *chainTable;
-	HUF_CElt___2 *hufTable;
-	U32 flagStaticTables;
-	HUF_repeat flagStaticHufTable;
-	FSE_CTable offcodeCTable[187];
-	FSE_CTable matchlengthCTable[363];
-	FSE_CTable litlengthCTable[329];
-	unsigned int tmpCounters[1536];
-};
-
-typedef struct ZSTD_CCtx_s ZSTD_CCtx;
-
-struct ZSTD_CDict_s {
-	void *dictBuffer;
-	const void *dictContent;
-	size_t dictContentSize;
-	ZSTD_CCtx *refContext;
-};
-
-typedef struct ZSTD_CDict_s ZSTD_CDict;
-
-struct ZSTD_inBuffer_s {
-	const void *src;
-	size_t size;
-	size_t pos;
-};
-
-typedef struct ZSTD_inBuffer_s ZSTD_inBuffer;
-
-struct ZSTD_outBuffer_s {
-	void *dst;
-	size_t size;
-	size_t pos;
-};
-
-typedef struct ZSTD_outBuffer_s ZSTD_outBuffer;
-
-typedef enum {
-	zcss_init = 0,
-	zcss_load = 1,
-	zcss_flush = 2,
-	zcss_final = 3,
-} ZSTD_cStreamStage;
-
-struct ZSTD_CStream_s {
-	ZSTD_CCtx *cctx;
-	ZSTD_CDict *cdictLocal;
-	const ZSTD_CDict *cdict;
-	char *inBuff;
-	size_t inBuffSize;
-	size_t inToCompress;
-	size_t inBuffPos;
-	size_t inBuffTarget;
-	size_t blockSize;
-	char *outBuff;
-	size_t outBuffSize;
-	size_t outBuffContentSize;
-	size_t outBuffFlushedSize;
-	ZSTD_cStreamStage stage;
-	U32 checksum;
-	U32 frameEnded;
-	U64 pledgedSrcSize;
-	U64 inputProcessed;
-	ZSTD_parameters params;
-	ZSTD_customMem customMem;
-};
-
-typedef struct ZSTD_CStream_s ZSTD_CStream;
-
-typedef int32_t S32;
-
-typedef enum {
-	set_basic = 0,
-	set_rle = 1,
-	set_compressed = 2,
-	set_repeat = 3,
-} symbolEncodingType_e;
-
-struct seqDef_s {
-	U32 offset;
-	U16 litLength;
-	U16 matchLength;
-};
-
-typedef enum {
-	ZSTDcrp_continue = 0,
-	ZSTDcrp_noMemset = 1,
-	ZSTDcrp_fullReset = 2,
-} ZSTD_compResetPolicy_e;
-
-typedef void (*ZSTD_blockCompressor)(ZSTD_CCtx *, const void *, size_t);
-
-typedef enum {
-	zsf_gather = 0,
-	zsf_flush = 1,
-	zsf_end = 2,
-} ZSTD_flush_e;
-
-typedef size_t (*searchMax_f)(ZSTD_CCtx *, const BYTE *, const BYTE *, size_t *, U32, U32);
-
 typedef struct {
 	size_t bitContainer;
 	unsigned int bitsConsumed;
@@ -61518,29 +75532,6 @@ typedef enum {
 	BIT_DStream_overflow = 3,
 } BIT_DStream_status;
 
-typedef unsigned int FSE_DTable;
-
-typedef struct {
-	size_t state;
-	const void *table;
-} FSE_DState_t;
-
-typedef struct {
-	U16 tableLog;
-	U16 fastMode;
-} FSE_DTableHeader;
-
-typedef struct {
-	short unsigned int newState;
-	unsigned char symbol;
-	unsigned char nbBits;
-} FSE_decode_t;
-
-typedef struct {
-	void *ptr;
-	const void *end;
-} ZSTD_stack;
-
 typedef U32 HUF_DTable;
 
 typedef struct {
@@ -61573,6 +75564,8 @@ typedef struct {
 	U32 decode256Time;
 } algo_time_t;
 
+typedef unsigned int FSE_DTable;
+
 typedef struct {
 	FSE_DTable LLTable[513];
 	FSE_DTable OFTable[257];
@@ -61582,13 +75575,6 @@ typedef struct {
 	U32 rep[3];
 } ZSTD_entropyTables_t;
 
-typedef struct {
-	long long unsigned int frameContentSize;
-	unsigned int windowSize;
-	unsigned int dictID;
-	unsigned int checksumFlag;
-} ZSTD_frameParams;
-
 typedef enum {
 	bt_raw = 0,
 	bt_rle = 1,
@@ -61634,8 +75620,6 @@ struct ZSTD_DCtx_s {
 	BYTE headerBuffer[18];
 };
 
-typedef struct ZSTD_DCtx_s ZSTD_DCtx;
-
 struct ZSTD_DDict_s {
 	void *dictBuffer;
 	const void *dictContent;
@@ -61646,42 +75630,6 @@ struct ZSTD_DDict_s {
 	ZSTD_customMem cMem;
 };
 
-typedef struct ZSTD_DDict_s ZSTD_DDict;
-
-typedef enum {
-	zdss_init = 0,
-	zdss_loadHeader = 1,
-	zdss_read = 2,
-	zdss_load = 3,
-	zdss_flush = 4,
-} ZSTD_dStreamStage;
-
-struct ZSTD_DStream_s {
-	ZSTD_DCtx *dctx;
-	ZSTD_DDict *ddictLocal;
-	const ZSTD_DDict *ddict;
-	ZSTD_frameParams fParams;
-	ZSTD_dStreamStage stage;
-	char *inBuff;
-	size_t inBuffSize;
-	size_t inPos;
-	size_t maxWindowSize;
-	char *outBuff;
-	size_t outBuffSize;
-	size_t outStart;
-	size_t outEnd;
-	size_t blockSize;
-	BYTE headerBuffer[18];
-	size_t lhSize;
-	ZSTD_customMem customMem;
-	void *legacyContext;
-	U32 previousLegacyVersion;
-	U32 legacyVersion;
-	U32 hostageByte;
-};
-
-typedef struct ZSTD_DStream_s ZSTD_DStream;
-
 typedef enum {
 	ZSTDnit_frameHeader = 0,
 	ZSTDnit_blockHeader = 1,
@@ -61691,8 +75639,33 @@ typedef enum {
 	ZSTDnit_skippableFrame = 5,
 } ZSTD_nextInputType_e;
 
+typedef int16_t S16;
+
 typedef uintptr_t uPtrDiff;
 
+typedef struct {
+	size_t state;
+	const void *table;
+} FSE_DState_t;
+
+typedef struct {
+	U16 tableLog;
+	U16 fastMode;
+} FSE_DTableHeader;
+
+typedef struct {
+	short unsigned int newState;
+	unsigned char symbol;
+	unsigned char nbBits;
+} FSE_decode_t;
+
+typedef enum {
+	set_basic = 0,
+	set_rle = 1,
+	set_compressed = 2,
+	set_repeat = 3,
+} symbolEncodingType_e;
+
 typedef struct {
 	blockType_e blockType;
 	U32 lastBlock;
@@ -61722,32 +75695,10 @@ typedef struct {
 	uPtrDiff gotoDict;
 } seqState_t;
 
-enum xz_mode {
-	XZ_SINGLE = 0,
-	XZ_PREALLOC = 1,
-	XZ_DYNALLOC = 2,
-};
-
-enum xz_ret {
-	XZ_OK = 0,
-	XZ_STREAM_END = 1,
-	XZ_UNSUPPORTED_CHECK = 2,
-	XZ_MEM_ERROR = 3,
-	XZ_MEMLIMIT_ERROR = 4,
-	XZ_FORMAT_ERROR = 5,
-	XZ_OPTIONS_ERROR = 6,
-	XZ_DATA_ERROR = 7,
-	XZ_BUF_ERROR = 8,
-};
-
-struct xz_buf {
-	const uint8_t *in;
-	size_t in_pos;
-	size_t in_size;
-	uint8_t *out;
-	size_t out_pos;
-	size_t out_size;
-};
+typedef struct {
+	void *ptr;
+	const void *end;
+} ZSTD_stack;
 
 typedef uint64_t vli_type;
 
@@ -61946,7 +75897,7 @@ struct xz_dec_bcj {
 
 struct ts_state {
 	unsigned int offset;
-	char cb[40];
+	char cb[48];
 };
 
 struct ts_config;
@@ -62145,10 +76096,6 @@ enum gcry_mpi_format {
 	GCRYMPI_FMT_OPAQUE = 8,
 };
 
-struct barrett_ctx_s;
-
-typedef struct barrett_ctx_s *mpi_barrett_t___2;
-
 struct barrett_ctx_s {
 	MPI m;
 	int m_copied;
@@ -62247,6 +76194,7 @@ struct font_desc {
 	const char *name;
 	unsigned int width;
 	unsigned int height;
+	unsigned int charcount;
 	const void *data;
 	int pref;
 };
@@ -62256,7 +76204,85 @@ struct font_data {
 	const unsigned char data[0];
 };
 
-typedef u16 ucs2_char_t;
+enum {
+	type_kind_int = 0,
+	type_kind_float = 1,
+	type_unknown = 65535,
+};
+
+struct type_descriptor {
+	u16 type_kind;
+	u16 type_info;
+	char type_name[1];
+};
+
+struct source_location {
+	const char *file_name;
+	union {
+		long unsigned int reported;
+		struct {
+			u32 line;
+			u32 column;
+		};
+	};
+};
+
+struct overflow_data {
+	struct source_location location;
+	struct type_descriptor *type;
+};
+
+struct type_mismatch_data {
+	struct source_location location;
+	struct type_descriptor *type;
+	long unsigned int alignment;
+	unsigned char type_check_kind;
+};
+
+struct type_mismatch_data_v1 {
+	struct source_location location;
+	struct type_descriptor *type;
+	unsigned char log_alignment;
+	unsigned char type_check_kind;
+};
+
+struct type_mismatch_data_common {
+	struct source_location *location;
+	struct type_descriptor *type;
+	long unsigned int alignment;
+	unsigned char type_check_kind;
+};
+
+struct out_of_bounds_data {
+	struct source_location location;
+	struct type_descriptor *array_type;
+	struct type_descriptor *index_type;
+};
+
+struct shift_out_of_bounds_data {
+	struct source_location location;
+	struct type_descriptor *lhs_type;
+	struct type_descriptor *rhs_type;
+};
+
+struct unreachable_data {
+	struct source_location location;
+};
+
+struct invalid_value_data {
+	struct source_location location;
+	struct type_descriptor *type;
+};
+
+struct alignment_assumption_data {
+	struct source_location location;
+	struct source_location assumption_location;
+	struct type_descriptor *type;
+};
+
+typedef __int128 s_max;
+
+typedef __int128 unsigned u_max;
 
 struct pldmfw_record {
 	struct list_head entry;
@@ -62506,42 +76532,6 @@ struct cstate {
 	uint32_t rep3;
 };
 
-struct xz_dec;
-
-typedef enum {
-	ZSTD_error_no_error = 0,
-	ZSTD_error_GENERIC = 1,
-	ZSTD_error_prefix_unknown = 2,
-	ZSTD_error_version_unsupported = 3,
-	ZSTD_error_parameter_unknown = 4,
-	ZSTD_error_frameParameter_unsupported = 5,
-	ZSTD_error_frameParameter_unsupportedBy32bits = 6,
-	ZSTD_error_frameParameter_windowTooLarge = 7,
-	ZSTD_error_compressionParameter_unsupported = 8,
-	ZSTD_error_init_missing = 9,
-	ZSTD_error_memory_allocation = 10,
-	ZSTD_error_stage_wrong = 11,
-	ZSTD_error_dstSize_tooSmall = 12,
-	ZSTD_error_srcSize_wrong = 13,
-	ZSTD_error_corruption_detected = 14,
-	ZSTD_error_checksum_wrong = 15,
-	ZSTD_error_tableLog_tooLarge = 16,
-	ZSTD_error_maxSymbolValue_tooLarge = 17,
-	ZSTD_error_maxSymbolValue_tooSmall = 18,
-	ZSTD_error_dictionary_corrupted = 19,
-	ZSTD_error_dictionary_wrong = 20,
-	ZSTD_error_dictionaryCreation_failed = 21,
-	ZSTD_error_maxCode = 22,
-} ZSTD_ErrorCode;
-
-struct ZSTD_DCtx_s;
-
-typedef struct ZSTD_DCtx_s ZSTD_DCtx___2;
-
-struct ZSTD_DStream_s;
-
-typedef struct ZSTD_DStream_s ZSTD_DStream___2;
-
 enum cpio_fields {
 	C_MAGIC = 0,
 	C_INO = 1,
@@ -62607,10 +76597,28 @@ struct logic_pio_host_ops {
 	void (*outs)(void *, long unsigned int, const void *, size_t, unsigned int);
 };
 
+struct radix_tree_preload {
+	unsigned int nr;
+	struct xa_node *nodes;
+};
+
 typedef struct {
 	long unsigned int key[2];
 } hsiphash_key_t;
 
+struct clk_core;
+
+struct clk {
+	struct clk_core *core;
+	struct device *dev;
+	const char *dev_id;
+	const char *con_id;
+	long unsigned int min_rate;
+	long unsigned int max_rate;
+	unsigned int exclusive_count;
+	struct hlist_node clks_node;
+};
+
 enum format_type {
 	FORMAT_TYPE_NONE = 0,
 	FORMAT_TYPE_WIDTH = 1,
@@ -62641,6 +76649,14 @@ struct printf_spec {
 	int precision: 16;
 };
 
+struct page_flags_fields {
+	int width;
+	int shift;
+	int mask;
+	const struct printf_spec *spec;
+	const char *name;
+};
+
 struct minmax_sample {
 	u32 t;
 	u32 v;
@@ -62663,8 +76679,6 @@ enum {
 	st_wordskip___2 = 2,
 };
 
-struct in6_addr;
-
 enum reg_type {
 	REG_TYPE_RM = 0,
 	REG_TYPE_REG = 1,
@@ -62757,6 +76771,12 @@ enum phy_mode {
 	PHY_MODE_DP = 19,
 };
 
+enum phy_media {
+	PHY_MEDIA_DEFAULT = 0,
+	PHY_MEDIA_SR = 1,
+	PHY_MEDIA_DAC = 2,
+};
+
 union phy_configure_opts {
 	struct phy_configure_opts_mipi_dphy mipi_dphy;
 	struct phy_configure_opts_dp dp;
@@ -62770,6 +76790,8 @@ struct phy_ops {
 	int (*power_on)(struct phy *);
 	int (*power_off)(struct phy *);
 	int (*set_mode)(struct phy *, enum phy_mode, int);
+	int (*set_media)(struct phy *, enum phy_media);
+	int (*set_speed)(struct phy *, int);
 	int (*configure)(struct phy *, union phy_configure_opts *);
 	int (*validate)(struct phy *, enum phy_mode, int, union phy_configure_opts *);
 	int (*reset)(struct phy *);
@@ -62853,8 +76875,8 @@ struct pinctrl_gpio_range {
 	unsigned int id;
 	unsigned int base;
 	unsigned int pin_base;
-	const unsigned int *pins;
 	unsigned int npins;
+	const unsigned int *pins;
 	struct gpio_chip *gc;
 };
 
@@ -62873,11 +76895,15 @@ struct gpio_irq_chip {
 	struct lock_class_key *lock_key;
 	struct lock_class_key *request_key;
 	irq_flow_handler_t parent_handler;
-	void *parent_handler_data;
+	union {
+		void *parent_handler_data;
+		void **parent_handler_data_array;
+	};
 	unsigned int num_parents;
 	unsigned int *parents;
 	unsigned int *map;
 	bool threaded;
+	bool per_parent_data;
 	int (*init_hw)(struct gpio_chip *);
 	void (*init_valid_mask)(struct gpio_chip *, long unsigned int *, unsigned int);
 	bool initialized;
@@ -62912,6 +76938,7 @@ struct gpio_chip {
 	int (*add_pin_ranges)(struct gpio_chip *);
 	int base;
 	u16 ngpio;
+	u16 offset;
 	const char * const *names;
 	bool can_sleep;
 	long unsigned int (*read_reg)(void *);
@@ -62924,7 +76951,7 @@ struct gpio_chip {
 	void *reg_dir_in;
 	bool bgpio_dir_unreadable;
 	int bgpio_bits;
-	spinlock_t bgpio_lock;
+	raw_spinlock_t bgpio_lock;
 	long unsigned int bgpio_data;
 	long unsigned int bgpio_dir;
 	struct gpio_irq_chip irq;
@@ -63053,14 +77080,15 @@ enum pin_config_param {
 	PIN_CONFIG_INPUT_ENABLE = 12,
 	PIN_CONFIG_INPUT_SCHMITT = 13,
 	PIN_CONFIG_INPUT_SCHMITT_ENABLE = 14,
-	PIN_CONFIG_LOW_POWER_MODE = 15,
-	PIN_CONFIG_OUTPUT_ENABLE = 16,
+	PIN_CONFIG_MODE_LOW_POWER = 15,
+	PIN_CONFIG_MODE_PWM = 16,
 	PIN_CONFIG_OUTPUT = 17,
-	PIN_CONFIG_POWER_SOURCE = 18,
-	PIN_CONFIG_SLEEP_HARDWARE_STATE = 19,
-	PIN_CONFIG_SLEW_RATE = 20,
+	PIN_CONFIG_OUTPUT_ENABLE = 18,
+	PIN_CONFIG_PERSIST_STATE = 19,
+	PIN_CONFIG_POWER_SOURCE = 20,
 	PIN_CONFIG_SKEW_DELAY = 21,
-	PIN_CONFIG_PERSIST_STATE = 22,
+	PIN_CONFIG_SLEEP_HARDWARE_STATE = 22,
+	PIN_CONFIG_SLEW_RATE = 23,
 	PIN_CONFIG_END = 127,
 	PIN_CONFIG_MAX = 255,
 };
@@ -63078,8 +77106,6 @@ struct pin_config_item {
 	bool has_arg;
 };
 
-struct gpio_desc;
-
 struct gpio_device {
 	int id;
 	struct device dev;
@@ -63094,6 +77120,7 @@ struct gpio_device {
 	void *data;
 	struct list_head list;
 	struct blocking_notifier_head notifier;
+	struct rw_semaphore sem;
 	struct list_head pin_ranges;
 };
 
@@ -63163,6 +77190,375 @@ struct amd_gpio {
 	struct resource *res;
 	struct platform_device *pdev;
 	u32 *saved_regs;
+	int irq;
+};
+
+enum regcache_type {
+	REGCACHE_NONE = 0,
+	REGCACHE_RBTREE = 1,
+	REGCACHE_COMPRESSED = 2,
+	REGCACHE_FLAT = 3,
+};
+
+struct reg_default {
+	unsigned int reg;
+	unsigned int def;
+};
+
+enum regmap_endian {
+	REGMAP_ENDIAN_DEFAULT = 0,
+	REGMAP_ENDIAN_BIG = 1,
+	REGMAP_ENDIAN_LITTLE = 2,
+	REGMAP_ENDIAN_NATIVE = 3,
+};
+
+struct regmap_range {
+	unsigned int range_min;
+	unsigned int range_max;
+};
+
+struct regmap_access_table {
+	const struct regmap_range *yes_ranges;
+	unsigned int n_yes_ranges;
+	const struct regmap_range *no_ranges;
+	unsigned int n_no_ranges;
+};
+
+typedef void (*regmap_lock)(void *);
+
+typedef void (*regmap_unlock)(void *);
+
+struct regmap_range_cfg;
+
+struct regmap_config {
+	const char *name;
+	int reg_bits;
+	int reg_stride;
+	int pad_bits;
+	int val_bits;
+	bool (*writeable_reg)(struct device *, unsigned int);
+	bool (*readable_reg)(struct device *, unsigned int);
+	bool (*volatile_reg)(struct device *, unsigned int);
+	bool (*precious_reg)(struct device *, unsigned int);
+	bool (*writeable_noinc_reg)(struct device *, unsigned int);
+	bool (*readable_noinc_reg)(struct device *, unsigned int);
+	bool disable_locking;
+	regmap_lock lock;
+	regmap_unlock unlock;
+	void *lock_arg;
+	int (*reg_read)(void *, unsigned int, unsigned int *);
+	int (*reg_write)(void *, unsigned int, unsigned int);
+	int (*reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
+	int (*read)(void *, const void *, size_t, void *, size_t);
+	int (*write)(void *, const void *, size_t);
+	size_t max_raw_read;
+	size_t max_raw_write;
+	bool fast_io;
+	unsigned int max_register;
+	const struct regmap_access_table *wr_table;
+	const struct regmap_access_table *rd_table;
+	const struct regmap_access_table *volatile_table;
+	const struct regmap_access_table *precious_table;
+	const struct regmap_access_table *wr_noinc_table;
+	const struct regmap_access_table *rd_noinc_table;
+	const struct reg_default *reg_defaults;
+	unsigned int num_reg_defaults;
+	enum regcache_type cache_type;
+	const void *reg_defaults_raw;
+	unsigned int num_reg_defaults_raw;
+	long unsigned int read_flag_mask;
+	long unsigned int write_flag_mask;
+	bool zero_flag_mask;
+	bool use_single_read;
+	bool use_single_write;
+	bool use_relaxed_mmio;
+	bool can_multi_write;
+	enum regmap_endian reg_format_endian;
+	enum regmap_endian val_format_endian;
+	const struct regmap_range_cfg *ranges;
+	unsigned int num_ranges;
+	bool use_hwlock;
+	bool use_raw_spinlock;
+	unsigned int hwlock_id;
+	unsigned int hwlock_mode;
+	bool can_sleep;
+};
+
+struct regmap_range_cfg {
+	const char *name;
+	unsigned int range_min;
+	unsigned int range_max;
+	unsigned int selector_reg;
+	unsigned int selector_mask;
+	int selector_shift;
+	unsigned int window_start;
+	unsigned int window_len;
+};
+
+typedef int (*regmap_hw_write)(void *, const void *, size_t);
+
+typedef int (*regmap_hw_gather_write)(void *, const void *, size_t, const void *, size_t);
+
+struct regmap_async;
+
+typedef int (*regmap_hw_async_write)(void *, const void *, size_t, const void *, size_t, struct regmap_async *);
+
+typedef int (*regmap_hw_read)(void *, const void *, size_t, void *, size_t);
+
+typedef int (*regmap_hw_reg_read)(void *, unsigned int, unsigned int *);
+
+typedef int (*regmap_hw_reg_write)(void *, unsigned int, unsigned int);
+
+typedef int (*regmap_hw_reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
+
+typedef struct regmap_async * (*regmap_hw_async_alloc)(void);
+
+typedef void (*regmap_hw_free_context)(void *);
+
+struct regmap_bus {
+	bool fast_io;
+	regmap_hw_write write;
+	regmap_hw_gather_write gather_write;
+	regmap_hw_async_write async_write;
+	regmap_hw_reg_write reg_write;
+	regmap_hw_reg_update_bits reg_update_bits;
+	regmap_hw_read read;
+	regmap_hw_reg_read reg_read;
+	regmap_hw_free_context free_context;
+	regmap_hw_async_alloc async_alloc;
+	u8 read_flag_mask;
+	enum regmap_endian reg_format_endian_default;
+	enum regmap_endian val_format_endian_default;
+	size_t max_raw_read;
+	size_t max_raw_write;
+	bool free_on_exit;
+};
+
+struct i2c_device_id {
+	char name[20];
+	kernel_ulong_t driver_data;
+};
+
+struct software_node {
+	const char *name;
+	const struct software_node *parent;
+	const struct property_entry *properties;
+};
+
+struct i2c_msg {
+	__u16 addr;
+	__u16 flags;
+	__u16 len;
+	__u8 *buf;
+};
+
+union i2c_smbus_data {
+	__u8 byte;
+	__u16 word;
+	__u8 block[34];
+};
+
+struct i2c_adapter;
+
+struct i2c_client {
+	short unsigned int flags;
+	short unsigned int addr;
+	char name[20];
+	struct i2c_adapter *adapter;
+	struct device dev;
+	int init_irq;
+	int irq;
+	struct list_head detected;
+	void *devres_group_id;
+};
+
+enum i2c_alert_protocol {
+	I2C_PROTOCOL_SMBUS_ALERT = 0,
+	I2C_PROTOCOL_SMBUS_HOST_NOTIFY = 1,
+};
+
+struct i2c_board_info;
+
+struct i2c_driver {
+	unsigned int class;
+	int (*probe)(struct i2c_client *, const struct i2c_device_id *);
+	int (*remove)(struct i2c_client *);
+	int (*probe_new)(struct i2c_client *);
+	void (*shutdown)(struct i2c_client *);
+	void (*alert)(struct i2c_client *, enum i2c_alert_protocol, unsigned int);
+	int (*command)(struct i2c_client *, unsigned int, void *);
+	struct device_driver driver;
+	const struct i2c_device_id *id_table;
+	int (*detect)(struct i2c_client *, struct i2c_board_info *);
+	const short unsigned int *address_list;
+	struct list_head clients;
+};
+
+struct i2c_board_info {
+	char type[20];
+	short unsigned int flags;
+	short unsigned int addr;
+	const char *dev_name;
+	void *platform_data;
+	struct device_node *of_node;
+	struct fwnode_handle *fwnode;
+	const struct software_node *swnode;
+	const struct resource *resources;
+	unsigned int num_resources;
+	int irq;
+};
+
+struct i2c_algorithm;
+
+struct i2c_lock_operations;
+
+struct i2c_bus_recovery_info;
+
+struct i2c_adapter_quirks;
+
+struct i2c_adapter {
+	struct module *owner;
+	unsigned int class;
+	const struct i2c_algorithm *algo;
+	void *algo_data;
+	const struct i2c_lock_operations *lock_ops;
+	struct rt_mutex bus_lock;
+	struct rt_mutex mux_lock;
+	int timeout;
+	int retries;
+	struct device dev;
+	long unsigned int locked_flags;
+	int nr;
+	char name[48];
+	struct completion dev_released;
+	struct mutex userspace_clients_lock;
+	struct list_head userspace_clients;
+	struct i2c_bus_recovery_info *bus_recovery_info;
+	const struct i2c_adapter_quirks *quirks;
+	struct irq_domain *host_notify_domain;
+	struct regulator *bus_regulator;
+	struct dentry *debugfs;
+	long unsigned int addrs_in_instantiation[2];
+};
+
+struct i2c_algorithm {
+	int (*master_xfer)(struct i2c_adapter *, struct i2c_msg *, int);
+	int (*master_xfer_atomic)(struct i2c_adapter *, struct i2c_msg *, int);
+	int (*smbus_xfer)(struct i2c_adapter *, u16, short unsigned int, char, u8, int, union i2c_smbus_data *);
+	int (*smbus_xfer_atomic)(struct i2c_adapter *, u16, short unsigned int, char, u8, int, union i2c_smbus_data *);
+	u32 (*functionality)(struct i2c_adapter *);
+};
+
+struct i2c_lock_operations {
+	void (*lock_bus)(struct i2c_adapter *, unsigned int);
+	int (*trylock_bus)(struct i2c_adapter *, unsigned int);
+	void (*unlock_bus)(struct i2c_adapter *, unsigned int);
+};
+
+struct i2c_bus_recovery_info {
+	int (*recover_bus)(struct i2c_adapter *);
+	int (*get_scl)(struct i2c_adapter *);
+	void (*set_scl)(struct i2c_adapter *, int);
+	int (*get_sda)(struct i2c_adapter *);
+	void (*set_sda)(struct i2c_adapter *, int);
+	int (*get_bus_free)(struct i2c_adapter *);
+	void (*prepare_recovery)(struct i2c_adapter *);
+	void (*unprepare_recovery)(struct i2c_adapter *);
+	struct gpio_desc *scl_gpiod;
+	struct gpio_desc *sda_gpiod;
+	struct pinctrl *pinctrl;
+	struct pinctrl_state *pins_default;
+	struct pinctrl_state *pins_gpio;
+};
+
+struct i2c_adapter_quirks {
+	u64 flags;
+	int max_num_msgs;
+	u16 max_write_len;
+	u16 max_read_len;
+	u16 max_comb_1st_msg_len;
+	u16 max_comb_2nd_msg_len;
+};
+
+enum {
+	SX150X_123 = 0,
+	SX150X_456 = 1,
+	SX150X_789 = 2,
+};
+
+enum {
+	SX150X_789_REG_MISC_AUTOCLEAR_OFF = 1,
+	SX150X_MAX_REGISTER = 173,
+	SX150X_IRQ_TYPE_EDGE_RISING = 1,
+	SX150X_IRQ_TYPE_EDGE_FALLING = 2,
+	SX150X_789_RESET_KEY1 = 18,
+	SX150X_789_RESET_KEY2 = 52,
+};
+
+struct sx150x_123_pri {
+	u8 reg_pld_mode;
+	u8 reg_pld_table0;
+	u8 reg_pld_table1;
+	u8 reg_pld_table2;
+	u8 reg_pld_table3;
+	u8 reg_pld_table4;
+	u8 reg_advanced;
+};
+
+struct sx150x_456_pri {
+	u8 reg_pld_mode;
+	u8 reg_pld_table0;
+	u8 reg_pld_table1;
+	u8 reg_pld_table2;
+	u8 reg_pld_table3;
+	u8 reg_pld_table4;
+	u8 reg_advanced;
+};
+
+struct sx150x_789_pri {
+	u8 reg_drain;
+	u8 reg_polarity;
+	u8 reg_clock;
+	u8 reg_misc;
+	u8 reg_reset;
+	u8 ngpios;
+};
+
+struct sx150x_device_data {
+	u8 model;
+	u8 reg_pullup;
+	u8 reg_pulldn;
+	u8 reg_dir;
+	u8 reg_data;
+	u8 reg_irq_mask;
+	u8 reg_irq_src;
+	u8 reg_sense;
+	u8 ngpios;
+	union {
+		struct sx150x_123_pri x123;
+		struct sx150x_456_pri x456;
+		struct sx150x_789_pri x789;
+	} pri;
+	const struct pinctrl_pin_desc *pins;
+	unsigned int npins;
+};
+
+struct regmap;
+
+struct sx150x_pinctrl {
+	struct device *dev;
+	struct i2c_client *client;
+	struct pinctrl_dev *pctldev;
+	struct pinctrl_desc pinctrl_desc;
+	struct gpio_chip gpio;
+	struct irq_chip irq_chip;
+	struct regmap *regmap;
+	struct {
+		u32 sense;
+		u32 masked;
+	} irq;
+	struct mutex lock;
+	const struct sx150x_device_data *data;
 };
 
 struct intel_pingroup {
@@ -63248,279 +77644,9 @@ struct intel_pinctrl {
 	int irq;
 };
 
-typedef u64 acpi_io_address;
+typedef acpi_status (*acpi_adr_space_handler)(u32, acpi_physical_address, u32, u64 *, void *, void *);
 
-typedef u32 acpi_object_type;
-
-union acpi_object {
-	acpi_object_type type;
-	struct {
-		acpi_object_type type;
-		u64 value;
-	} integer;
-	struct {
-		acpi_object_type type;
-		u32 length;
-		char *pointer;
-	} string;
-	struct {
-		acpi_object_type type;
-		u32 length;
-		u8 *pointer;
-	} buffer;
-	struct {
-		acpi_object_type type;
-		u32 count;
-		union acpi_object *elements;
-	} package;
-	struct {
-		acpi_object_type type;
-		acpi_object_type actual_type;
-		acpi_handle handle;
-	} reference;
-	struct {
-		acpi_object_type type;
-		u32 proc_id;
-		acpi_io_address pblk_address;
-		u32 pblk_length;
-	} processor;
-	struct {
-		acpi_object_type type;
-		u32 system_level;
-		u32 resource_order;
-	} power_resource;
-};
-
-struct acpi_hotplug_profile {
-	struct kobject kobj;
-	int (*scan_dependent)(struct acpi_device *);
-	void (*notify_online)(struct acpi_device *);
-	bool enabled: 1;
-	bool demand_offline: 1;
-};
-
-struct acpi_device_status {
-	u32 present: 1;
-	u32 enabled: 1;
-	u32 show_in_ui: 1;
-	u32 functional: 1;
-	u32 battery_present: 1;
-	u32 reserved: 27;
-};
-
-struct acpi_device_flags {
-	u32 dynamic_status: 1;
-	u32 removable: 1;
-	u32 ejectable: 1;
-	u32 power_manageable: 1;
-	u32 match_driver: 1;
-	u32 initialized: 1;
-	u32 visited: 1;
-	u32 hotplug_notify: 1;
-	u32 is_dock_station: 1;
-	u32 of_compatible_ok: 1;
-	u32 coherent_dma: 1;
-	u32 cca_seen: 1;
-	u32 enumeration_by_parent: 1;
-	u32 reserved: 19;
-};
-
-typedef char acpi_bus_id[8];
-
-struct acpi_pnp_type {
-	u32 hardware_id: 1;
-	u32 bus_address: 1;
-	u32 platform_id: 1;
-	u32 reserved: 29;
-};
-
-typedef u64 acpi_bus_address;
-
-typedef char acpi_device_name[40];
-
-typedef char acpi_device_class[20];
-
-struct acpi_device_pnp {
-	acpi_bus_id bus_id;
-	int instance_no;
-	struct acpi_pnp_type type;
-	acpi_bus_address bus_address;
-	char *unique_id;
-	struct list_head ids;
-	acpi_device_name device_name;
-	acpi_device_class device_class;
-	union acpi_object *str_obj;
-};
-
-struct acpi_device_power_flags {
-	u32 explicit_get: 1;
-	u32 power_resources: 1;
-	u32 inrush_current: 1;
-	u32 power_removed: 1;
-	u32 ignore_parent: 1;
-	u32 dsw_present: 1;
-	u32 reserved: 26;
-};
-
-struct acpi_device_power_state {
-	struct {
-		u8 valid: 1;
-		u8 explicit_set: 1;
-		u8 reserved: 6;
-	} flags;
-	int power;
-	int latency;
-	struct list_head resources;
-};
-
-struct acpi_device_power {
-	int state;
-	struct acpi_device_power_flags flags;
-	struct acpi_device_power_state states[5];
-};
-
-struct acpi_device_wakeup_flags {
-	u8 valid: 1;
-	u8 notifier_present: 1;
-};
-
-struct acpi_device_wakeup_context {
-	void (*func)(struct acpi_device_wakeup_context *);
-	struct device *dev;
-};
-
-struct acpi_device_wakeup {
-	acpi_handle gpe_device;
-	u64 gpe_number;
-	u64 sleep_state;
-	struct list_head resources;
-	struct acpi_device_wakeup_flags flags;
-	struct acpi_device_wakeup_context context;
-	struct wakeup_source *ws;
-	int prepare_count;
-	int enable_count;
-};
-
-struct acpi_device_perf_flags {
-	u8 reserved: 8;
-};
-
-struct acpi_device_perf_state;
-
-struct acpi_device_perf {
-	int state;
-	struct acpi_device_perf_flags flags;
-	int state_count;
-	struct acpi_device_perf_state *states;
-};
-
-struct acpi_device_dir {
-	struct proc_dir_entry *entry;
-};
-
-struct acpi_device_data {
-	const union acpi_object *pointer;
-	struct list_head properties;
-	const union acpi_object *of_compatible;
-	struct list_head subnodes;
-};
-
-struct acpi_scan_handler;
-
-struct acpi_hotplug_context;
-
-struct acpi_driver;
-
-struct acpi_gpio_mapping;
-
-struct acpi_device {
-	int device_type;
-	acpi_handle handle;
-	struct fwnode_handle fwnode;
-	struct acpi_device *parent;
-	struct list_head children;
-	struct list_head node;
-	struct list_head wakeup_list;
-	struct list_head del_list;
-	struct acpi_device_status status;
-	struct acpi_device_flags flags;
-	struct acpi_device_pnp pnp;
-	struct acpi_device_power power;
-	struct acpi_device_wakeup wakeup;
-	struct acpi_device_perf performance;
-	struct acpi_device_dir dir;
-	struct acpi_device_data data;
-	struct acpi_scan_handler *handler;
-	struct acpi_hotplug_context *hp;
-	struct acpi_driver *driver;
-	const struct acpi_gpio_mapping *driver_gpios;
-	void *driver_data;
-	struct device dev;
-	unsigned int physical_node_count;
-	unsigned int dep_unmet;
-	struct list_head physical_node_list;
-	struct mutex physical_node_lock;
-	void (*remove)(struct acpi_device *);
-};
-
-struct acpi_scan_handler {
-	const struct acpi_device_id *ids;
-	struct list_head list_node;
-	bool (*match)(const char *, const struct acpi_device_id **);
-	int (*attach)(struct acpi_device *, const struct acpi_device_id *);
-	void (*detach)(struct acpi_device *);
-	void (*bind)(struct device *);
-	void (*unbind)(struct device *);
-	struct acpi_hotplug_profile hotplug;
-};
-
-struct acpi_hotplug_context {
-	struct acpi_device *self;
-	int (*notify)(struct acpi_device *, u32);
-	void (*uevent)(struct acpi_device *, u32);
-	void (*fixup)(struct acpi_device *);
-};
-
-typedef int (*acpi_op_add)(struct acpi_device *);
-
-typedef int (*acpi_op_remove)(struct acpi_device *);
-
-typedef void (*acpi_op_notify)(struct acpi_device *, u32);
-
-struct acpi_device_ops {
-	acpi_op_add add;
-	acpi_op_remove remove;
-	acpi_op_notify notify;
-};
-
-struct acpi_driver {
-	char name[80];
-	char class[80];
-	const struct acpi_device_id *ids;
-	unsigned int flags;
-	struct acpi_device_ops ops;
-	struct device_driver drv;
-	struct module *owner;
-};
-
-struct acpi_device_perf_state {
-	struct {
-		u8 valid: 1;
-		u8 reserved: 7;
-	} flags;
-	u8 power;
-	u8 performance;
-	int latency;
-};
-
-struct acpi_gpio_params;
-
-struct acpi_gpio_mapping {
-	const char *name;
-	const struct acpi_gpio_params *data;
-	unsigned int size;
-	unsigned int quirks;
-};
+typedef acpi_status (*acpi_adr_space_setup)(acpi_handle, u32, void *, void **);
 
 struct intel_pad_context___2;
 
@@ -63634,12 +77760,6 @@ enum gpiod_flags {
 	GPIOD_OUT_HIGH_OPEN_DRAIN = 15,
 };
 
-struct acpi_gpio_params {
-	unsigned int crs_entry_index;
-	unsigned int line_index;
-	bool active_low;
-};
-
 enum gpio_lookup_flags {
 	GPIO_ACTIVE_HIGH = 0,
 	GPIO_ACTIVE_LOW = 1,
@@ -63688,6 +77808,7 @@ struct acpi_gpio_info {
 	int pin_config;
 	int polarity;
 	int triggering;
+	unsigned int debounce;
 	unsigned int quirks;
 };
 
@@ -63715,8 +77836,6 @@ typedef void (*btf_trace_gpio_direction)(void *, unsigned int, int, int);
 
 typedef void (*btf_trace_gpio_value)(void *, unsigned int, int, int);
 
-struct devres;
-
 struct gpio {
 	unsigned int gpio;
 	long unsigned int flags;
@@ -63741,6 +77860,7 @@ enum gpio_v2_line_flag {
 	GPIO_V2_LINE_FLAG_BIAS_PULL_UP = 256,
 	GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN = 512,
 	GPIO_V2_LINE_FLAG_BIAS_DISABLED = 1024,
+	GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME = 2048,
 };
 
 struct gpio_v2_line_values {
@@ -63869,6 +77989,12 @@ struct gpioevent_data {
 	__u32 id;
 };
 
+typedef __poll_t (*poll_fn)(struct file *, struct poll_table_struct *);
+
+typedef long int (*ioctl_fn)(struct file *, unsigned int, long unsigned int);
+
+typedef ssize_t (*read_fn)(struct file *, char *, size_t, loff_t *);
+
 struct linehandle_state {
 	struct gpio_device *gdev;
 	const char *label;
@@ -63968,6 +78094,15 @@ struct gpiod_data {
 	bool direction_can_change;
 };
 
+typedef u64 acpi_size;
+
+struct acpi_buffer {
+	acpi_size length;
+	void *pointer;
+};
+
+typedef void (*acpi_object_handler)(acpi_handle, void *);
+
 struct acpi_connection_info {
 	u8 *connection;
 	u16 length;
@@ -64273,6 +78408,21 @@ struct acpi_resource_uart_serialbus {
 	u32 default_baud_rate;
 } __attribute__((packed));
 
+struct acpi_resource_csi2_serialbus {
+	u8 revision_id;
+	u8 type;
+	u8 producer_consumer;
+	u8 slave_mode;
+	u8 connection_sharing;
+	u8 type_revision_id;
+	u16 type_data_length;
+	u16 vendor_length;
+	struct acpi_resource_source resource_source;
+	u8 *vendor_data;
+	u8 local_port_instance;
+	u8 phy_type;
+} __attribute__((packed));
+
 struct acpi_resource_pin_function {
 	u8 revision_id;
 	u8 pin_config;
@@ -64354,6 +78504,7 @@ union acpi_resource_data {
 	struct acpi_resource_i2c_serialbus i2c_serial_bus;
 	struct acpi_resource_spi_serialbus spi_serial_bus;
 	struct acpi_resource_uart_serialbus uart_serial_bus;
+	struct acpi_resource_csi2_serialbus csi2_serial_bus;
 	struct acpi_resource_common_serialbus common_serial_bus;
 	struct acpi_resource_pin_function pin_function;
 	struct acpi_resource_pin_config pin_config;
@@ -64369,6 +78520,8 @@ struct acpi_resource {
 	union acpi_resource_data data;
 };
 
+typedef acpi_status (*acpi_walk_resource_callback)(struct acpi_resource *, void *);
+
 struct acpi_gpiolib_dmi_quirk {
 	bool no_edge_events_on_boot;
 	char *ignore_wake;
@@ -64404,12 +78557,758 @@ struct acpi_gpio_chip {
 struct acpi_gpio_lookup {
 	struct acpi_gpio_info info;
 	int index;
-	int pin_index;
+	u16 pin_index;
 	bool active_low;
 	struct gpio_desc *desc;
 	int n;
 };
 
+struct regmap_irq_chip_data;
+
+struct intel_scu_ipc_dev;
+
+struct intel_soc_pmic {
+	int irq;
+	struct regmap *regmap;
+	struct regmap_irq_chip_data *irq_chip_data;
+	struct regmap_irq_chip_data *irq_chip_data_pwrbtn;
+	struct regmap_irq_chip_data *irq_chip_data_tmu;
+	struct regmap_irq_chip_data *irq_chip_data_bcu;
+	struct regmap_irq_chip_data *irq_chip_data_adc;
+	struct regmap_irq_chip_data *irq_chip_data_chgr;
+	struct regmap_irq_chip_data *irq_chip_data_crit;
+	struct device *dev;
+	struct intel_scu_ipc_dev *scu;
+};
+
+enum ctrl_register {
+	CTRL_IN = 0,
+	CTRL_OUT = 1,
+};
+
+struct crystalcove_gpio {
+	struct mutex buslock;
+	struct gpio_chip chip;
+	struct regmap *regmap;
+	int update;
+	int intcnt_value;
+	bool set_irq_mask;
+};
+
+struct regulator_dev;
+
+struct regulator_ops {
+	int (*list_voltage)(struct regulator_dev *, unsigned int);
+	int (*set_voltage)(struct regulator_dev *, int, int, unsigned int *);
+	int (*map_voltage)(struct regulator_dev *, int, int);
+	int (*set_voltage_sel)(struct regulator_dev *, unsigned int);
+	int (*get_voltage)(struct regulator_dev *);
+	int (*get_voltage_sel)(struct regulator_dev *);
+	int (*set_current_limit)(struct regulator_dev *, int, int);
+	int (*get_current_limit)(struct regulator_dev *);
+	int (*set_input_current_limit)(struct regulator_dev *, int);
+	int (*set_over_current_protection)(struct regulator_dev *, int, int, bool);
+	int (*set_over_voltage_protection)(struct regulator_dev *, int, int, bool);
+	int (*set_under_voltage_protection)(struct regulator_dev *, int, int, bool);
+	int (*set_thermal_protection)(struct regulator_dev *, int, int, bool);
+	int (*set_active_discharge)(struct regulator_dev *, bool);
+	int (*enable)(struct regulator_dev *);
+	int (*disable)(struct regulator_dev *);
+	int (*is_enabled)(struct regulator_dev *);
+	int (*set_mode)(struct regulator_dev *, unsigned int);
+	unsigned int (*get_mode)(struct regulator_dev *);
+	int (*get_error_flags)(struct regulator_dev *, unsigned int *);
+	int (*enable_time)(struct regulator_dev *);
+	int (*set_ramp_delay)(struct regulator_dev *, int);
+	int (*set_voltage_time)(struct regulator_dev *, int, int);
+	int (*set_voltage_time_sel)(struct regulator_dev *, unsigned int, unsigned int);
+	int (*set_soft_start)(struct regulator_dev *);
+	int (*get_status)(struct regulator_dev *);
+	unsigned int (*get_optimum_mode)(struct regulator_dev *, int, int, int);
+	int (*set_load)(struct regulator_dev *, int);
+	int (*set_bypass)(struct regulator_dev *, bool);
+	int (*get_bypass)(struct regulator_dev *, bool *);
+	int (*set_suspend_voltage)(struct regulator_dev *, int);
+	int (*set_suspend_enable)(struct regulator_dev *);
+	int (*set_suspend_disable)(struct regulator_dev *);
+	int (*set_suspend_mode)(struct regulator_dev *, unsigned int);
+	int (*resume)(struct regulator_dev *);
+	int (*set_pull_down)(struct regulator_dev *);
+};
+
+struct regulator_coupler;
+
+struct coupling_desc {
+	struct regulator_dev **coupled_rdevs;
+	struct regulator_coupler *coupler;
+	int n_resolved;
+	int n_coupled;
+};
+
+struct regulator_desc;
+
+struct regulation_constraints;
+
+struct regulator_enable_gpio;
+
+struct regulator_dev {
+	const struct regulator_desc *desc;
+	int exclusive;
+	u32 use_count;
+	u32 open_count;
+	u32 bypass_count;
+	struct list_head list;
+	struct list_head consumer_list;
+	struct coupling_desc coupling_desc;
+	struct blocking_notifier_head notifier;
+	struct ww_mutex mutex;
+	struct task_struct *mutex_owner;
+	int ref_cnt;
+	struct module *owner;
+	struct device dev;
+	struct regulation_constraints *constraints;
+	struct regulator *supply;
+	const char *supply_name;
+	struct regmap *regmap;
+	struct delayed_work disable_work;
+	void *reg_data;
+	struct dentry *debugfs;
+	struct regulator_enable_gpio *ena_pin;
+	unsigned int ena_gpio_state: 1;
+	unsigned int is_switch: 1;
+	ktime_t last_off;
+	int cached_err;
+	bool use_cached_err;
+	spinlock_t err_lock;
+};
+
+enum regulator_type {
+	REGULATOR_VOLTAGE = 0,
+	REGULATOR_CURRENT = 1,
+};
+
+struct regulator_config;
+
+struct regulator_desc {
+	const char *name;
+	const char *supply_name;
+	const char *of_match;
+	bool of_match_full_name;
+	const char *regulators_node;
+	int (*of_parse_cb)(struct device_node *, const struct regulator_desc *, struct regulator_config *);
+	int id;
+	unsigned int continuous_voltage_range: 1;
+	unsigned int n_voltages;
+	unsigned int n_current_limits;
+	const struct regulator_ops *ops;
+	int irq;
+	enum regulator_type type;
+	struct module *owner;
+	unsigned int min_uV;
+	unsigned int uV_step;
+	unsigned int linear_min_sel;
+	int fixed_uV;
+	unsigned int ramp_delay;
+	int min_dropout_uV;
+	const struct linear_range *linear_ranges;
+	const unsigned int *linear_range_selectors;
+	int n_linear_ranges;
+	const unsigned int *volt_table;
+	const unsigned int *curr_table;
+	unsigned int vsel_range_reg;
+	unsigned int vsel_range_mask;
+	unsigned int vsel_reg;
+	unsigned int vsel_mask;
+	unsigned int vsel_step;
+	unsigned int csel_reg;
+	unsigned int csel_mask;
+	unsigned int apply_reg;
+	unsigned int apply_bit;
+	unsigned int enable_reg;
+	unsigned int enable_mask;
+	unsigned int enable_val;
+	unsigned int disable_val;
+	bool enable_is_inverted;
+	unsigned int bypass_reg;
+	unsigned int bypass_mask;
+	unsigned int bypass_val_on;
+	unsigned int bypass_val_off;
+	unsigned int active_discharge_on;
+	unsigned int active_discharge_off;
+	unsigned int active_discharge_mask;
+	unsigned int active_discharge_reg;
+	unsigned int soft_start_reg;
+	unsigned int soft_start_mask;
+	unsigned int soft_start_val_on;
+	unsigned int pull_down_reg;
+	unsigned int pull_down_mask;
+	unsigned int pull_down_val_on;
+	unsigned int ramp_reg;
+	unsigned int ramp_mask;
+	const unsigned int *ramp_delay_table;
+	unsigned int n_ramp_values;
+	unsigned int enable_time;
+	unsigned int off_on_delay;
+	unsigned int poll_enabled_time;
+	unsigned int (*of_map_mode)(unsigned int);
+};
+
+struct regulator_init_data;
+
+struct regulator_config {
+	struct device *dev;
+	const struct regulator_init_data *init_data;
+	void *driver_data;
+	struct device_node *of_node;
+	struct regmap *regmap;
+	struct gpio_desc *ena_gpiod;
+};
+
+struct regulator_state {
+	int uV;
+	int min_uV;
+	int max_uV;
+	unsigned int mode;
+	int enabled;
+	bool changeable;
+};
+
+struct notification_limit {
+	int prot;
+	int err;
+	int warn;
+};
+
+struct regulation_constraints {
+	const char *name;
+	int min_uV;
+	int max_uV;
+	int uV_offset;
+	int min_uA;
+	int max_uA;
+	int ilim_uA;
+	int system_load;
+	u32 *max_spread;
+	int max_uV_step;
+	unsigned int valid_modes_mask;
+	unsigned int valid_ops_mask;
+	int input_uV;
+	struct regulator_state state_disk;
+	struct regulator_state state_mem;
+	struct regulator_state state_standby;
+	struct notification_limit over_curr_limits;
+	struct notification_limit over_voltage_limits;
+	struct notification_limit under_voltage_limits;
+	struct notification_limit temp_limits;
+	suspend_state_t initial_state;
+	unsigned int initial_mode;
+	unsigned int ramp_delay;
+	unsigned int settling_time;
+	unsigned int settling_time_up;
+	unsigned int settling_time_down;
+	unsigned int enable_time;
+	unsigned int active_discharge;
+	unsigned int always_on: 1;
+	unsigned int boot_on: 1;
+	unsigned int apply_uV: 1;
+	unsigned int ramp_disable: 1;
+	unsigned int soft_start: 1;
+	unsigned int pull_down: 1;
+	unsigned int over_current_protection: 1;
+	unsigned int over_current_detection: 1;
+	unsigned int over_voltage_detection: 1;
+	unsigned int under_voltage_detection: 1;
+	unsigned int over_temp_detection: 1;
+};
+
+struct regulator_consumer_supply;
+
+struct regulator_init_data {
+	const char *supply_regulator;
+	struct regulation_constraints constraints;
+	int num_consumer_supplies;
+	struct regulator_consumer_supply *consumer_supplies;
+	int (*regulator_init)(void *);
+	void *driver_data;
+};
+
+enum palmas_usb_state {
+	PALMAS_USB_STATE_DISCONNECT = 0,
+	PALMAS_USB_STATE_VBUS = 1,
+	PALMAS_USB_STATE_ID = 2,
+};
+
+struct palmas_gpadc;
+
+struct palmas_pmic_driver_data;
+
+struct palmas_pmic;
+
+struct palmas_resource;
+
+struct palmas_usb;
+
+struct palmas {
+	struct device *dev;
+	struct i2c_client *i2c_clients[3];
+	struct regmap *regmap[3];
+	int id;
+	unsigned int features;
+	int irq;
+	u32 irq_mask;
+	struct mutex irq_lock;
+	struct regmap_irq_chip_data *irq_data;
+	struct palmas_pmic_driver_data *pmic_ddata;
+	struct palmas_pmic *pmic;
+	struct palmas_gpadc *gpadc;
+	struct palmas_resource *resource;
+	struct palmas_usb *usb;
+	u8 gpio_muxed;
+	u8 led_muxed;
+	u8 pwm_muxed;
+};
+
+struct of_regulator_match;
+
+struct palmas_regs_info;
+
+struct palmas_sleep_requestor_info;
+
+struct palmas_pmic_platform_data;
+
+struct palmas_pmic_driver_data {
+	int smps_start;
+	int smps_end;
+	int ldo_begin;
+	int ldo_end;
+	int max_reg;
+	bool has_regen3;
+	struct palmas_regs_info *palmas_regs_info;
+	struct of_regulator_match *palmas_matches;
+	struct palmas_sleep_requestor_info *sleep_req_info;
+	int (*smps_register)(struct palmas_pmic *, struct palmas_pmic_driver_data *, struct palmas_pmic_platform_data *, const char *, struct regulator_config);
+	int (*ldo_register)(struct palmas_pmic *, struct palmas_pmic_driver_data *, struct palmas_pmic_platform_data *, const char *, struct regulator_config);
+};
+
+struct palmas_pmic {
+	struct palmas *palmas;
+	struct device *dev;
+	struct regulator_desc desc[27];
+	struct mutex mutex;
+	int smps123;
+	int smps457;
+	int smps12;
+	int range[10];
+	unsigned int ramp_delay[10];
+	unsigned int current_reg_mode[10];
+};
+
+struct palmas_resource {
+	struct palmas *palmas;
+	struct device *dev;
+};
+
+struct extcon_dev;
+
+struct palmas_usb {
+	struct palmas *palmas;
+	struct device *dev;
+	struct extcon_dev *edev;
+	int id_otg_irq;
+	int id_irq;
+	int vbus_otg_irq;
+	int vbus_irq;
+	int gpio_id_irq;
+	int gpio_vbus_irq;
+	struct gpio_desc *id_gpiod;
+	struct gpio_desc *vbus_gpiod;
+	long unsigned int sw_debounce_jiffies;
+	struct delayed_work wq_detectid;
+	enum palmas_usb_state linkstat;
+	int wakeup;
+	bool enable_vbus_detection;
+	bool enable_id_detection;
+	bool enable_gpio_id_detection;
+	bool enable_gpio_vbus_detection;
+};
+
+struct palmas_sleep_requestor_info {
+	int id;
+	int reg_offset;
+	int bit_pos;
+};
+
+struct palmas_regs_info {
+	char *name;
+	char *sname;
+	u8 vsel_addr;
+	u8 ctrl_addr;
+	u8 tstep_addr;
+	int sleep_id;
+};
+
+struct palmas_reg_init;
+
+struct palmas_pmic_platform_data {
+	struct regulator_init_data *reg_data[27];
+	struct palmas_reg_init *reg_init[27];
+	int ldo6_vibrator;
+	bool enable_ldo8_tracking;
+};
+
+struct palmas_adc_wakeup_property {
+	int adc_channel_number;
+	int adc_high_threshold;
+	int adc_low_threshold;
+};
+
+struct palmas_gpadc_platform_data {
+	int ch3_current;
+	int ch0_current;
+	bool extended_delay;
+	int bat_removal;
+	int start_polarity;
+	int auto_conversion_period_ms;
+	struct palmas_adc_wakeup_property *adc_wakeup1_data;
+	struct palmas_adc_wakeup_property *adc_wakeup2_data;
+};
+
+struct palmas_reg_init {
+	int warm_reset;
+	int roof_floor;
+	int mode_sleep;
+	u8 vsel;
+};
+
+enum palmas_regulators {
+	PALMAS_REG_SMPS12 = 0,
+	PALMAS_REG_SMPS123 = 1,
+	PALMAS_REG_SMPS3 = 2,
+	PALMAS_REG_SMPS45 = 3,
+	PALMAS_REG_SMPS457 = 4,
+	PALMAS_REG_SMPS6 = 5,
+	PALMAS_REG_SMPS7 = 6,
+	PALMAS_REG_SMPS8 = 7,
+	PALMAS_REG_SMPS9 = 8,
+	PALMAS_REG_SMPS10_OUT2 = 9,
+	PALMAS_REG_SMPS10_OUT1 = 10,
+	PALMAS_REG_LDO1 = 11,
+	PALMAS_REG_LDO2 = 12,
+	PALMAS_REG_LDO3 = 13,
+	PALMAS_REG_LDO4 = 14,
+	PALMAS_REG_LDO5 = 15,
+	PALMAS_REG_LDO6 = 16,
+	PALMAS_REG_LDO7 = 17,
+	PALMAS_REG_LDO8 = 18,
+	PALMAS_REG_LDO9 = 19,
+	PALMAS_REG_LDOLN = 20,
+	PALMAS_REG_LDOUSB = 21,
+	PALMAS_REG_REGEN1 = 22,
+	PALMAS_REG_REGEN2 = 23,
+	PALMAS_REG_REGEN3 = 24,
+	PALMAS_REG_SYSEN1 = 25,
+	PALMAS_REG_SYSEN2 = 26,
+	PALMAS_NUM_REGS = 27,
+};
+
+struct palmas_usb_platform_data {
+	int wakeup;
+};
+
+struct palmas_resource_platform_data {
+	int regen1_mode_sleep;
+	int regen2_mode_sleep;
+	int sysen1_mode_sleep;
+	int sysen2_mode_sleep;
+	u8 nsleep_res;
+	u8 nsleep_smps;
+	u8 nsleep_ldo1;
+	u8 nsleep_ldo2;
+	u8 enable1_res;
+	u8 enable1_smps;
+	u8 enable1_ldo1;
+	u8 enable1_ldo2;
+	u8 enable2_res;
+	u8 enable2_smps;
+	u8 enable2_ldo1;
+	u8 enable2_ldo2;
+};
+
+struct palmas_clk_platform_data {
+	int clk32kg_mode_sleep;
+	int clk32kgaudio_mode_sleep;
+};
+
+struct palmas_platform_data {
+	int irq_flags;
+	int gpio_base;
+	u8 power_ctrl;
+	int mux_from_pdata;
+	u8 pad1;
+	u8 pad2;
+	bool pm_off;
+	struct palmas_pmic_platform_data *pmic_pdata;
+	struct palmas_gpadc_platform_data *gpadc_pdata;
+	struct palmas_usb_platform_data *usb_pdata;
+	struct palmas_resource_platform_data *resource_pdata;
+	struct palmas_clk_platform_data *clk_pdata;
+};
+
+enum palmas_irqs {
+	PALMAS_CHARG_DET_N_VBUS_OVV_IRQ = 0,
+	PALMAS_PWRON_IRQ = 1,
+	PALMAS_LONG_PRESS_KEY_IRQ = 2,
+	PALMAS_RPWRON_IRQ = 3,
+	PALMAS_PWRDOWN_IRQ = 4,
+	PALMAS_HOTDIE_IRQ = 5,
+	PALMAS_VSYS_MON_IRQ = 6,
+	PALMAS_VBAT_MON_IRQ = 7,
+	PALMAS_RTC_ALARM_IRQ = 8,
+	PALMAS_RTC_TIMER_IRQ = 9,
+	PALMAS_WDT_IRQ = 10,
+	PALMAS_BATREMOVAL_IRQ = 11,
+	PALMAS_RESET_IN_IRQ = 12,
+	PALMAS_FBI_BB_IRQ = 13,
+	PALMAS_SHORT_IRQ = 14,
+	PALMAS_VAC_ACOK_IRQ = 15,
+	PALMAS_GPADC_AUTO_0_IRQ = 16,
+	PALMAS_GPADC_AUTO_1_IRQ = 17,
+	PALMAS_GPADC_EOC_SW_IRQ = 18,
+	PALMAS_GPADC_EOC_RT_IRQ = 19,
+	PALMAS_ID_OTG_IRQ = 20,
+	PALMAS_ID_IRQ = 21,
+	PALMAS_VBUS_OTG_IRQ = 22,
+	PALMAS_VBUS_IRQ = 23,
+	PALMAS_GPIO_0_IRQ = 24,
+	PALMAS_GPIO_1_IRQ = 25,
+	PALMAS_GPIO_2_IRQ = 26,
+	PALMAS_GPIO_3_IRQ = 27,
+	PALMAS_GPIO_4_IRQ = 28,
+	PALMAS_GPIO_5_IRQ = 29,
+	PALMAS_GPIO_6_IRQ = 30,
+	PALMAS_GPIO_7_IRQ = 31,
+	PALMAS_NUM_IRQ = 32,
+};
+
+struct palmas_gpio {
+	struct gpio_chip gpio_chip;
+	struct palmas *palmas;
+};
+
+struct palmas_device_data {
+	int ngpio;
+};
+
+enum {
+	RC5T583_IRQ_ONKEY = 0,
+	RC5T583_IRQ_ACOK = 1,
+	RC5T583_IRQ_LIDOPEN = 2,
+	RC5T583_IRQ_PREOT = 3,
+	RC5T583_IRQ_CLKSTP = 4,
+	RC5T583_IRQ_ONKEY_OFF = 5,
+	RC5T583_IRQ_WD = 6,
+	RC5T583_IRQ_EN_PWRREQ1 = 7,
+	RC5T583_IRQ_EN_PWRREQ2 = 8,
+	RC5T583_IRQ_PRE_VINDET = 9,
+	RC5T583_IRQ_DC0LIM = 10,
+	RC5T583_IRQ_DC1LIM = 11,
+	RC5T583_IRQ_DC2LIM = 12,
+	RC5T583_IRQ_DC3LIM = 13,
+	RC5T583_IRQ_CTC = 14,
+	RC5T583_IRQ_YALE = 15,
+	RC5T583_IRQ_DALE = 16,
+	RC5T583_IRQ_WALE = 17,
+	RC5T583_IRQ_AIN1L = 18,
+	RC5T583_IRQ_AIN2L = 19,
+	RC5T583_IRQ_AIN3L = 20,
+	RC5T583_IRQ_VBATL = 21,
+	RC5T583_IRQ_VIN3L = 22,
+	RC5T583_IRQ_VIN8L = 23,
+	RC5T583_IRQ_AIN1H = 24,
+	RC5T583_IRQ_AIN2H = 25,
+	RC5T583_IRQ_AIN3H = 26,
+	RC5T583_IRQ_VBATH = 27,
+	RC5T583_IRQ_VIN3H = 28,
+	RC5T583_IRQ_VIN8H = 29,
+	RC5T583_IRQ_ADCEND = 30,
+	RC5T583_IRQ_GPIO0 = 31,
+	RC5T583_IRQ_GPIO1 = 32,
+	RC5T583_IRQ_GPIO2 = 33,
+	RC5T583_IRQ_GPIO3 = 34,
+	RC5T583_IRQ_GPIO4 = 35,
+	RC5T583_IRQ_GPIO5 = 36,
+	RC5T583_IRQ_GPIO6 = 37,
+	RC5T583_IRQ_GPIO7 = 38,
+	RC5T583_MAX_IRQS = 39,
+};
+
+enum {
+	RC5T583_GPIO0 = 0,
+	RC5T583_GPIO1 = 1,
+	RC5T583_GPIO2 = 2,
+	RC5T583_GPIO3 = 3,
+	RC5T583_GPIO4 = 4,
+	RC5T583_GPIO5 = 5,
+	RC5T583_GPIO6 = 6,
+	RC5T583_GPIO7 = 7,
+	RC5T583_MAX_GPIO = 8,
+};
+
+enum {
+	RC5T583_REGULATOR_DC0 = 0,
+	RC5T583_REGULATOR_DC1 = 1,
+	RC5T583_REGULATOR_DC2 = 2,
+	RC5T583_REGULATOR_DC3 = 3,
+	RC5T583_REGULATOR_LDO0 = 4,
+	RC5T583_REGULATOR_LDO1 = 5,
+	RC5T583_REGULATOR_LDO2 = 6,
+	RC5T583_REGULATOR_LDO3 = 7,
+	RC5T583_REGULATOR_LDO4 = 8,
+	RC5T583_REGULATOR_LDO5 = 9,
+	RC5T583_REGULATOR_LDO6 = 10,
+	RC5T583_REGULATOR_LDO7 = 11,
+	RC5T583_REGULATOR_LDO8 = 12,
+	RC5T583_REGULATOR_LDO9 = 13,
+	RC5T583_REGULATOR_MAX = 14,
+};
+
+struct rc5t583 {
+	struct device *dev;
+	struct regmap *regmap;
+	int chip_irq;
+	int irq_base;
+	struct mutex irq_lock;
+	long unsigned int group_irq_en[5];
+	uint8_t intc_inten_reg;
+	uint8_t irq_en_reg[8];
+	uint8_t gpedge_reg[2];
+};
+
+struct rc5t583_platform_data {
+	int irq_base;
+	int gpio_base;
+	bool enable_shutdown;
+	int regulator_deepsleep_slot[14];
+	long unsigned int regulator_ext_pwr_control[14];
+	struct regulator_init_data *reg_init_data[14];
+};
+
+struct rc5t583_gpio {
+	struct gpio_chip gpio_chip;
+	struct rc5t583 *rc5t583;
+};
+
+enum {
+	TPS6586X_ID_SYS = 0,
+	TPS6586X_ID_SM_0 = 1,
+	TPS6586X_ID_SM_1 = 2,
+	TPS6586X_ID_SM_2 = 3,
+	TPS6586X_ID_LDO_0 = 4,
+	TPS6586X_ID_LDO_1 = 5,
+	TPS6586X_ID_LDO_2 = 6,
+	TPS6586X_ID_LDO_3 = 7,
+	TPS6586X_ID_LDO_4 = 8,
+	TPS6586X_ID_LDO_5 = 9,
+	TPS6586X_ID_LDO_6 = 10,
+	TPS6586X_ID_LDO_7 = 11,
+	TPS6586X_ID_LDO_8 = 12,
+	TPS6586X_ID_LDO_9 = 13,
+	TPS6586X_ID_LDO_RTC = 14,
+	TPS6586X_ID_MAX_REGULATOR = 15,
+};
+
+enum {
+	TPS6586X_INT_PLDO_0 = 0,
+	TPS6586X_INT_PLDO_1 = 1,
+	TPS6586X_INT_PLDO_2 = 2,
+	TPS6586X_INT_PLDO_3 = 3,
+	TPS6586X_INT_PLDO_4 = 4,
+	TPS6586X_INT_PLDO_5 = 5,
+	TPS6586X_INT_PLDO_6 = 6,
+	TPS6586X_INT_PLDO_7 = 7,
+	TPS6586X_INT_COMP_DET = 8,
+	TPS6586X_INT_ADC = 9,
+	TPS6586X_INT_PLDO_8 = 10,
+	TPS6586X_INT_PLDO_9 = 11,
+	TPS6586X_INT_PSM_0 = 12,
+	TPS6586X_INT_PSM_1 = 13,
+	TPS6586X_INT_PSM_2 = 14,
+	TPS6586X_INT_PSM_3 = 15,
+	TPS6586X_INT_RTC_ALM1 = 16,
+	TPS6586X_INT_ACUSB_OVP = 17,
+	TPS6586X_INT_USB_DET = 18,
+	TPS6586X_INT_AC_DET = 19,
+	TPS6586X_INT_BAT_DET = 20,
+	TPS6586X_INT_CHG_STAT = 21,
+	TPS6586X_INT_CHG_TEMP = 22,
+	TPS6586X_INT_PP = 23,
+	TPS6586X_INT_RESUME = 24,
+	TPS6586X_INT_LOW_SYS = 25,
+	TPS6586X_INT_RTC_ALM2 = 26,
+};
+
+struct tps6586x_subdev_info {
+	int id;
+	const char *name;
+	void *platform_data;
+	struct device_node *of_node;
+};
+
+struct tps6586x_platform_data {
+	int num_subdevs;
+	struct tps6586x_subdev_info *subdevs;
+	int gpio_base;
+	int irq_base;
+	bool pm_off;
+	struct regulator_init_data *reg_init_data[15];
+};
+
+struct tps6586x_gpio {
+	struct gpio_chip gpio_chip;
+	struct device *parent;
+};
+
+struct tps65910_sleep_keepon_data {
+	unsigned int therm_keepon: 1;
+	unsigned int clkout32k_keepon: 1;
+	unsigned int i2chs_keepon: 1;
+};
+
+struct tps65910_board {
+	int gpio_base;
+	int irq;
+	int irq_base;
+	int vmbch_threshold;
+	int vmbch2_threshold;
+	bool en_ck32k_xtal;
+	bool en_dev_slp;
+	bool pm_off;
+	struct tps65910_sleep_keepon_data slp_keepon;
+	bool en_gpio_sleep[9];
+	long unsigned int regulator_ext_sleep_control[14];
+	struct regulator_init_data *tps65910_pmic_init_data[14];
+};
+
+struct tps65910 {
+	struct device *dev;
+	struct i2c_client *i2c_client;
+	struct regmap *regmap;
+	long unsigned int id;
+	struct tps65910_board *of_plat_data;
+	int chip_irq;
+	struct regmap_irq_chip_data *irq_data;
+};
+
+struct tps65910_gpio {
+	struct gpio_chip gpio_chip;
+	struct tps65910 *tps65910;
+};
+
+struct tps68470_gpio_data {
+	struct regmap *tps68470_regmap;
+	struct gpio_chip gc;
+};
+
 enum pwm_polarity {
 	PWM_POLARITY_NORMAL = 0,
 	PWM_POLARITY_INVERSED = 1,
@@ -64421,8 +79320,8 @@ struct pwm_args {
 };
 
 enum {
-	PWMF_REQUESTED = 1,
-	PWMF_EXPORTED = 2,
+	PWMF_REQUESTED = 0,
+	PWMF_EXPORTED = 1,
 };
 
 struct pwm_state {
@@ -64430,6 +79329,7 @@ struct pwm_state {
 	u64 duty_cycle;
 	enum pwm_polarity polarity;
 	bool enabled;
+	bool usage_power;
 };
 
 struct pwm_chip;
@@ -64513,31 +79413,27 @@ struct pwm_export {
 	struct pwm_state suspend;
 };
 
-struct regmap;
-
-struct regmap_irq_chip_data;
-
-struct intel_scu_ipc_dev;
-
-struct intel_soc_pmic {
-	int irq;
-	struct regmap *regmap;
-	struct regmap_irq_chip_data *irq_chip_data;
-	struct regmap_irq_chip_data *irq_chip_data_pwrbtn;
-	struct regmap_irq_chip_data *irq_chip_data_tmu;
-	struct regmap_irq_chip_data *irq_chip_data_bcu;
-	struct regmap_irq_chip_data *irq_chip_data_adc;
-	struct regmap_irq_chip_data *irq_chip_data_chgr;
-	struct regmap_irq_chip_data *irq_chip_data_crit;
-	struct device *dev;
-	struct intel_scu_ipc_dev *scu;
-};
-
 struct crystalcove_pwm {
 	struct pwm_chip chip;
 	struct regmap *regmap;
 };
 
+struct pwm_lpss_boardinfo;
+
+struct pwm_lpss_chip {
+	struct pwm_chip chip;
+	void *regs;
+	const struct pwm_lpss_boardinfo *info;
+};
+
+struct pwm_lpss_boardinfo {
+	long unsigned int clk_rate;
+	unsigned int npwm;
+	long unsigned int base_unit_bits;
+	bool bypass;
+	bool other_devices_aml_touches_pwm_regs;
+};
+
 enum {
 	pci_channel_io_normal = 1,
 	pci_channel_io_frozen = 2,
@@ -64569,6 +79465,12 @@ struct pci_sriov {
 	bool drivers_autoprobe;
 };
 
+struct rcec_ea {
+	u8 nextbusn;
+	u8 lastbusn;
+	u32 bitmap;
+};
+
 struct pci_bus_resource {
 	struct list_head list;
 	struct resource *res;
@@ -64615,7 +79517,8 @@ enum pci_dev_flags {
 	PCI_DEV_FLAGS_BRIDGE_XLATE_ROOT = 512,
 	PCI_DEV_FLAGS_NO_FLR_RESET = 1024,
 	PCI_DEV_FLAGS_NO_RELAXED_ORDERING = 2048,
-	PCI_DEV_FLAGS_HAS_MSI_MASKING = 4096,
+	PCI_DEV_FLAGS_ENABLE_ASPM = 4096,
+	PCI_DEV_FLAGS_HAS_MSI_MASKING = 8192,
 };
 
 enum pci_bus_flags {
@@ -64650,6 +79553,7 @@ enum pci_bus_speed {
 	PCIE_SPEED_8_0GT = 22,
 	PCIE_SPEED_16_0GT = 23,
 	PCIE_SPEED_32_0GT = 24,
+	PCIE_SPEED_64_0GT = 25,
 	PCI_SPEED_UNKNOWN = 255,
 };
 
@@ -64660,15 +79564,16 @@ struct pci_host_bridge {
 	struct pci_ops *child_ops;
 	void *sysdata;
 	int busnr;
+	int domain_nr;
 	struct list_head windows;
 	struct list_head dma_ranges;
 	u8 (*swizzle_irq)(struct pci_dev *, u8 *);
 	int (*map_irq)(const struct pci_dev *, u8, u8);
 	void (*release_fn)(struct pci_host_bridge *);
 	void *release_data;
-	struct msi_controller *msi;
 	unsigned int ignore_reset_delay: 1;
 	unsigned int no_ext_tags: 1;
+	unsigned int no_inc_mrrs: 1;
 	unsigned int native_aer: 1;
 	unsigned int native_pcie_hotplug: 1;
 	unsigned int native_shpc_hotplug: 1;
@@ -64677,9 +79582,12 @@ struct pci_host_bridge {
 	unsigned int native_dpc: 1;
 	unsigned int preserve_config: 1;
 	unsigned int size_windows: 1;
+	unsigned int msi_domain: 1;
 	resource_size_t (*align_resource)(struct pci_dev *, const struct resource *, resource_size_t, resource_size_t, resource_size_t);
 	long: 64;
 	long: 64;
+	long: 64;
+	long: 64;
 	long unsigned int private[0];
 };
 
@@ -64710,7 +79618,7 @@ struct hotplug_slot_ops {
 	int (*get_attention_status)(struct hotplug_slot *, u8 *);
 	int (*get_latch_status)(struct hotplug_slot *, u8 *);
 	int (*get_adapter_status)(struct hotplug_slot *, u8 *);
-	int (*reset_slot)(struct hotplug_slot *, int);
+	int (*reset_slot)(struct hotplug_slot *, bool);
 };
 
 enum pci_bar_type {
@@ -64762,8 +79670,6 @@ struct pci_cap_saved_state {
 	struct pci_cap_saved_data cap;
 };
 
-typedef int (*arch_set_vga_state_t)(struct pci_dev *, bool, unsigned int, u32);
-
 struct pci_platform_pm_ops {
 	bool (*bridge_d3)(struct pci_dev *);
 	bool (*is_manageable)(struct pci_dev *);
@@ -64775,6 +79681,11 @@ struct pci_platform_pm_ops {
 	bool (*need_resume)(struct pci_dev *);
 };
 
+struct pci_reset_fn_method {
+	int (*reset_fn)(struct pci_dev *, bool);
+	char *name;
+};
+
 struct pci_pme_device {
 	struct list_head list;
 	struct pci_dev *dev;
@@ -64832,6 +79743,7 @@ struct pcie_port_service_driver {
 	int (*resume)(struct pcie_device *);
 	int (*runtime_suspend)(struct pcie_device *);
 	int (*runtime_resume)(struct pcie_device *);
+	int (*slot_reset)(struct pcie_device *);
 	void (*error_resume)(struct pci_dev *);
 	int port_type;
 	u32 service;
@@ -64859,25 +79771,6 @@ enum pci_mmap_api {
 	PCI_MMAP_PROCFS = 1,
 };
 
-struct pci_vpd_ops;
-
-struct pci_vpd {
-	const struct pci_vpd_ops *ops;
-	struct bin_attribute *attr;
-	struct mutex lock;
-	unsigned int len;
-	u16 flag;
-	u8 cap;
-	unsigned int busy: 1;
-	unsigned int valid: 1;
-};
-
-struct pci_vpd_ops {
-	ssize_t (*read)(struct pci_dev *, loff_t, size_t, void *);
-	ssize_t (*write)(struct pci_dev *, loff_t, size_t, const void *);
-	int (*set_size)(struct pci_dev *, size_t);
-};
-
 struct pci_dev_resource {
 	struct list_head list;
 	struct resource *res;
@@ -64902,13 +79795,24 @@ enum enable_type {
 	auto_enabled = 3,
 };
 
+struct msix_entry {
+	u32 vector;
+	u16 entry;
+};
+
 struct portdrv_service_data {
 	struct pcie_port_service_driver *drv;
 	struct device *dev;
 	u32 service;
 };
 
-typedef int (*pcie_pm_callback_t)(struct pcie_device *);
+typedef int (*pcie_callback_t)(struct pcie_device *);
+
+struct walk_rcec_data {
+	struct pci_dev *rcec;
+	int (*user_callback)(struct pci_dev *, void *);
+	void *user_data;
+};
 
 struct aspm_latency {
 	u32 l0s;
@@ -65020,6 +79924,8 @@ struct pcie_pme_service_data {
 	bool noirq;
 };
 
+typedef void (*acpi_notify_handler)(acpi_handle, u32, void *);
+
 struct pci_filp_private {
 	enum pci_mmap_state mmap_state;
 	int write_combine;
@@ -65031,13 +79937,6 @@ struct pci_slot_attribute {
 	ssize_t (*store)(struct pci_slot *, const char *, size_t);
 };
 
-typedef u64 acpi_size;
-
-struct acpi_buffer {
-	acpi_size length;
-	void *pointer;
-};
-
 struct acpi_bus_type {
 	struct list_head list;
 	const char *name;
@@ -65289,7 +80188,7 @@ struct ntb_ctrl_regs {
 struct pci_dev_reset_methods {
 	u16 vendor;
 	u16 device;
-	int (*reset)(struct pci_dev *, int);
+	int (*reset)(struct pci_dev *, bool);
 };
 
 struct pci_dev_acs_enabled {
@@ -65318,9 +80217,9 @@ struct slot {
 };
 
 struct cpci_hp_controller_ops {
-	int (*query_enum)();
-	int (*enable_irq)();
-	int (*disable_irq)();
+	int (*query_enum)(void);
+	int (*enable_irq)(void);
+	int (*disable_irq)(void);
 	int (*check_irq)(void *);
 	int (*hardware_test)(struct slot *, u32);
 	u8 (*get_power)(struct slot *);
@@ -65336,6 +80235,8 @@ struct cpci_hp_controller {
 	struct cpci_hp_controller_ops *ops;
 };
 
+typedef acpi_status (*acpi_walk_callback)(acpi_handle, u32, void *, void **);
+
 struct controller {
 	struct pcie_device *pcie;
 	u32 slot_cap;
@@ -65508,11 +80409,6 @@ struct acpiphp_root_context {
 	struct acpiphp_bridge *root_bridge;
 };
 
-struct msix_entry {
-	u32 vector;
-	u16 entry;
-};
-
 enum dmi_device_type {
 	DMI_DEV_TYPE_ANY = 0,
 	DMI_DEV_TYPE_OTHER = 1,
@@ -65557,6 +80453,882 @@ enum acpi_attr_enum {
 	ACPI_ATTR_INDEX_SHOW = 1,
 };
 
+struct pci_epf_device_id {
+	char name[20];
+	kernel_ulong_t driver_data;
+};
+
+enum pci_interrupt_pin {
+	PCI_INTERRUPT_UNKNOWN = 0,
+	PCI_INTERRUPT_INTA = 1,
+	PCI_INTERRUPT_INTB = 2,
+	PCI_INTERRUPT_INTC = 3,
+	PCI_INTERRUPT_INTD = 4,
+};
+
+enum pci_barno {
+	NO_BAR = 4294967295,
+	BAR_0 = 0,
+	BAR_1 = 1,
+	BAR_2 = 2,
+	BAR_3 = 3,
+	BAR_4 = 4,
+	BAR_5 = 5,
+};
+
+struct pci_epf_header {
+	u16 vendorid;
+	u16 deviceid;
+	u8 revid;
+	u8 progif_code;
+	u8 subclass_code;
+	u8 baseclass_code;
+	u8 cache_line_size;
+	u16 subsys_vendor_id;
+	u16 subsys_id;
+	enum pci_interrupt_pin interrupt_pin;
+};
+
+struct pci_epf;
+
+struct pci_epf_ops {
+	int (*bind)(struct pci_epf *);
+	void (*unbind)(struct pci_epf *);
+	struct config_group * (*add_cfs)(struct pci_epf *, struct config_group *);
+};
+
+struct pci_epf_bar {
+	dma_addr_t phys_addr;
+	void *addr;
+	size_t size;
+	enum pci_barno barno;
+	int flags;
+};
+
+struct pci_epc;
+
+struct pci_epf_driver;
+
+struct pci_epf {
+	struct device dev;
+	const char *name;
+	struct pci_epf_header *header;
+	struct pci_epf_bar bar[6];
+	u8 msi_interrupts;
+	u16 msix_interrupts;
+	u8 func_no;
+	u8 vfunc_no;
+	struct pci_epc *epc;
+	struct pci_epf *epf_pf;
+	struct pci_epf_driver *driver;
+	struct list_head list;
+	struct notifier_block nb;
+	struct mutex lock;
+	struct pci_epc *sec_epc;
+	struct list_head sec_epc_list;
+	struct pci_epf_bar sec_epc_bar[6];
+	u8 sec_epc_func_no;
+	struct config_group *group;
+	unsigned int is_bound;
+	unsigned int is_vf;
+	long unsigned int vfunction_num_map;
+	struct list_head pci_vepf;
+};
+
+struct pci_epf_driver {
+	int (*probe)(struct pci_epf *);
+	void (*remove)(struct pci_epf *);
+	struct device_driver driver;
+	struct pci_epf_ops *ops;
+	struct module *owner;
+	struct list_head epf_group;
+	const struct pci_epf_device_id *id_table;
+};
+
+struct pci_epc_ops;
+
+struct pci_epc_mem;
+
+struct pci_epc {
+	struct device dev;
+	struct list_head pci_epf;
+	const struct pci_epc_ops *ops;
+	struct pci_epc_mem **windows;
+	struct pci_epc_mem *mem;
+	unsigned int num_windows;
+	u8 max_functions;
+	u8 *max_vfs;
+	struct config_group *group;
+	struct mutex lock;
+	long unsigned int function_num_map;
+	struct atomic_notifier_head notifier;
+};
+
+enum pci_epc_interface_type {
+	UNKNOWN_INTERFACE = 4294967295,
+	PRIMARY_INTERFACE = 0,
+	SECONDARY_INTERFACE = 1,
+};
+
+enum pci_epc_irq_type {
+	PCI_EPC_IRQ_UNKNOWN = 0,
+	PCI_EPC_IRQ_LEGACY = 1,
+	PCI_EPC_IRQ_MSI = 2,
+	PCI_EPC_IRQ_MSIX = 3,
+};
+
+struct pci_epc_features;
+
+struct pci_epc_ops {
+	int (*write_header)(struct pci_epc *, u8, u8, struct pci_epf_header *);
+	int (*set_bar)(struct pci_epc *, u8, u8, struct pci_epf_bar *);
+	void (*clear_bar)(struct pci_epc *, u8, u8, struct pci_epf_bar *);
+	int (*map_addr)(struct pci_epc *, u8, u8, phys_addr_t, u64, size_t);
+	void (*unmap_addr)(struct pci_epc *, u8, u8, phys_addr_t);
+	int (*set_msi)(struct pci_epc *, u8, u8, u8);
+	int (*get_msi)(struct pci_epc *, u8, u8);
+	int (*set_msix)(struct pci_epc *, u8, u8, u16, enum pci_barno, u32);
+	int (*get_msix)(struct pci_epc *, u8, u8);
+	int (*raise_irq)(struct pci_epc *, u8, u8, enum pci_epc_irq_type, u16);
+	int (*map_msi_irq)(struct pci_epc *, u8, u8, phys_addr_t, u8, u32, u32 *, u32 *);
+	int (*start)(struct pci_epc *);
+	void (*stop)(struct pci_epc *);
+	const struct pci_epc_features * (*get_features)(struct pci_epc *, u8, u8);
+	struct module *owner;
+};
+
+struct pci_epc_features {
+	unsigned int linkup_notifier: 1;
+	unsigned int core_init_notifier: 1;
+	unsigned int msi_capable: 1;
+	unsigned int msix_capable: 1;
+	u8 reserved_bar;
+	u8 bar_fixed_64bit;
+	u64 bar_fixed_size[6];
+	size_t align;
+};
+
+struct pci_epc_mem_window {
+	phys_addr_t phys_base;
+	size_t size;
+	size_t page_size;
+};
+
+struct pci_epc_mem {
+	struct pci_epc_mem_window window;
+	long unsigned int *bitmap;
+	int pages;
+	struct mutex lock;
+};
+
+struct pci_epf_group {
+	struct config_group group;
+	struct config_group primary_epc_group;
+	struct config_group secondary_epc_group;
+	struct delayed_work cfs_work;
+	struct pci_epf *epf;
+	int index;
+};
+
+struct pci_epc_group {
+	struct config_group group;
+	struct pci_epc *epc;
+	bool start;
+};
+
+enum pci_notify_event {
+	CORE_INIT = 0,
+	LINK_UP = 1,
+};
+
+enum dw_pcie_region_type {
+	DW_PCIE_REGION_UNKNOWN = 0,
+	DW_PCIE_REGION_INBOUND = 1,
+	DW_PCIE_REGION_OUTBOUND = 2,
+};
+
+struct pcie_port;
+
+struct dw_pcie_host_ops {
+	int (*host_init)(struct pcie_port *);
+	int (*msi_host_init)(struct pcie_port *);
+};
+
+struct pcie_port {
+	bool has_msi_ctrl: 1;
+	u64 cfg0_base;
+	void *va_cfg0_base;
+	u32 cfg0_size;
+	resource_size_t io_base;
+	phys_addr_t io_bus_addr;
+	u32 io_size;
+	int irq;
+	const struct dw_pcie_host_ops *ops;
+	int msi_irq;
+	struct irq_domain *irq_domain;
+	struct irq_domain *msi_domain;
+	u16 msi_msg;
+	dma_addr_t msi_data;
+	struct irq_chip *msi_irq_chip;
+	u32 num_vectors;
+	u32 irq_mask[8];
+	struct pci_host_bridge *bridge;
+	raw_spinlock_t lock;
+	long unsigned int msi_irq_in_use[4];
+};
+
+enum dw_pcie_as_type {
+	DW_PCIE_AS_UNKNOWN = 0,
+	DW_PCIE_AS_MEM = 1,
+	DW_PCIE_AS_IO = 2,
+};
+
+struct dw_pcie_ep;
+
+struct dw_pcie_ep_ops {
+	void (*ep_init)(struct dw_pcie_ep *);
+	int (*raise_irq)(struct dw_pcie_ep *, u8, enum pci_epc_irq_type, u16);
+	const struct pci_epc_features * (*get_features)(struct dw_pcie_ep *);
+	unsigned int (*func_conf_select)(struct dw_pcie_ep *, u8);
+};
+
+struct dw_pcie_ep {
+	struct pci_epc *epc;
+	struct list_head func_list;
+	const struct dw_pcie_ep_ops *ops;
+	phys_addr_t phys_base;
+	size_t addr_size;
+	size_t page_size;
+	u8 bar_to_atu[6];
+	phys_addr_t *outbound_addr;
+	long unsigned int *ib_window_map;
+	long unsigned int *ob_window_map;
+	void *msi_mem;
+	phys_addr_t msi_mem_phys;
+	struct pci_epf_bar *epf_bar[6];
+};
+
+struct dw_pcie;
+
+struct dw_pcie_ops {
+	u64 (*cpu_addr_fixup)(struct dw_pcie *, u64);
+	u32 (*read_dbi)(struct dw_pcie *, void *, u32, size_t);
+	void (*write_dbi)(struct dw_pcie *, void *, u32, size_t, u32);
+	void (*write_dbi2)(struct dw_pcie *, void *, u32, size_t, u32);
+	int (*link_up)(struct dw_pcie *);
+	int (*start_link)(struct dw_pcie *);
+	void (*stop_link)(struct dw_pcie *);
+};
+
+struct dw_pcie {
+	struct device *dev;
+	void *dbi_base;
+	void *dbi_base2;
+	void *atu_base;
+	size_t atu_size;
+	u32 num_ib_windows;
+	u32 num_ob_windows;
+	struct pcie_port pp;
+	struct dw_pcie_ep ep;
+	const struct dw_pcie_ops *ops;
+	unsigned int version;
+	int num_lanes;
+	int link_gen;
+	u8 n_fts[2];
+	bool iatu_unroll_enabled: 1;
+	bool io_cfg_atu_shared: 1;
+};
+
+struct pci_epf_msix_tbl {
+	u64 msg_addr;
+	u32 msg_data;
+	u32 vector_ctrl;
+};
+
+struct dw_pcie_ep_func {
+	struct list_head list;
+	u8 func_no;
+	u8 msi_cap;
+	u8 msix_cap;
+};
+
+enum dw_pcie_device_mode {
+	DW_PCIE_UNKNOWN_TYPE = 0,
+	DW_PCIE_EP_TYPE = 1,
+	DW_PCIE_LEG_EP_TYPE = 2,
+	DW_PCIE_RC_TYPE = 3,
+};
+
+struct dw_plat_pcie {
+	struct dw_pcie *pci;
+	struct regmap *regmap;
+	enum dw_pcie_device_mode mode;
+};
+
+struct dw_plat_pcie_of_data {
+	enum dw_pcie_device_mode mode;
+};
+
+struct rio_device_id {
+	__u16 did;
+	__u16 vid;
+	__u16 asm_did;
+	__u16 asm_vid;
+};
+
+typedef s32 dma_cookie_t;
+
+enum dma_status {
+	DMA_COMPLETE = 0,
+	DMA_IN_PROGRESS = 1,
+	DMA_PAUSED = 2,
+	DMA_ERROR = 3,
+	DMA_OUT_OF_ORDER = 4,
+};
+
+enum dma_transaction_type {
+	DMA_MEMCPY = 0,
+	DMA_XOR = 1,
+	DMA_PQ = 2,
+	DMA_XOR_VAL = 3,
+	DMA_PQ_VAL = 4,
+	DMA_MEMSET = 5,
+	DMA_MEMSET_SG = 6,
+	DMA_INTERRUPT = 7,
+	DMA_PRIVATE = 8,
+	DMA_ASYNC_TX = 9,
+	DMA_SLAVE = 10,
+	DMA_CYCLIC = 11,
+	DMA_INTERLEAVE = 12,
+	DMA_COMPLETION_NO_ORDER = 13,
+	DMA_REPEAT = 14,
+	DMA_LOAD_EOT = 15,
+	DMA_TX_TYPE_END = 16,
+};
+
+enum dma_transfer_direction {
+	DMA_MEM_TO_MEM = 0,
+	DMA_MEM_TO_DEV = 1,
+	DMA_DEV_TO_MEM = 2,
+	DMA_DEV_TO_DEV = 3,
+	DMA_TRANS_NONE = 4,
+};
+
+struct data_chunk {
+	size_t size;
+	size_t icg;
+	size_t dst_icg;
+	size_t src_icg;
+};
+
+struct dma_interleaved_template {
+	dma_addr_t src_start;
+	dma_addr_t dst_start;
+	enum dma_transfer_direction dir;
+	bool src_inc;
+	bool dst_inc;
+	bool src_sgl;
+	bool dst_sgl;
+	size_t numf;
+	size_t frame_size;
+	struct data_chunk sgl[0];
+};
+
+enum dma_ctrl_flags {
+	DMA_PREP_INTERRUPT = 1,
+	DMA_CTRL_ACK = 2,
+	DMA_PREP_PQ_DISABLE_P = 4,
+	DMA_PREP_PQ_DISABLE_Q = 8,
+	DMA_PREP_CONTINUE = 16,
+	DMA_PREP_FENCE = 32,
+	DMA_CTRL_REUSE = 64,
+	DMA_PREP_CMD = 128,
+	DMA_PREP_REPEAT = 256,
+	DMA_PREP_LOAD_EOT = 512,
+};
+
+enum sum_check_bits {
+	SUM_CHECK_P = 0,
+	SUM_CHECK_Q = 1,
+};
+
+enum sum_check_flags {
+	SUM_CHECK_P_RESULT = 1,
+	SUM_CHECK_Q_RESULT = 2,
+};
+
+typedef struct {
+	long unsigned int bits[1];
+} dma_cap_mask_t;
+
+enum dma_desc_metadata_mode {
+	DESC_METADATA_NONE = 0,
+	DESC_METADATA_CLIENT = 1,
+	DESC_METADATA_ENGINE = 2,
+};
+
+struct dma_chan_percpu {
+	long unsigned int memcpy_count;
+	long unsigned int bytes_transferred;
+};
+
+struct dma_router {
+	struct device *dev;
+	void (*route_free)(struct device *, void *);
+};
+
+struct dma_device;
+
+struct dma_chan_dev;
+
+struct dma_chan___2 {
+	struct dma_device *device;
+	struct device *slave;
+	dma_cookie_t cookie;
+	dma_cookie_t completed_cookie;
+	int chan_id;
+	struct dma_chan_dev *dev;
+	const char *name;
+	char *dbg_client_name;
+	struct list_head device_node;
+	struct dma_chan_percpu *local;
+	int client_count;
+	int table_count;
+	struct dma_router *router;
+	void *route_data;
+	void *private;
+};
+
+typedef bool (*dma_filter_fn)(struct dma_chan___2 *, void *);
+
+struct dma_slave_map;
+
+struct dma_filter {
+	dma_filter_fn fn;
+	int mapcnt;
+	const struct dma_slave_map *map;
+};
+
+enum dmaengine_alignment {
+	DMAENGINE_ALIGN_1_BYTE = 0,
+	DMAENGINE_ALIGN_2_BYTES = 1,
+	DMAENGINE_ALIGN_4_BYTES = 2,
+	DMAENGINE_ALIGN_8_BYTES = 3,
+	DMAENGINE_ALIGN_16_BYTES = 4,
+	DMAENGINE_ALIGN_32_BYTES = 5,
+	DMAENGINE_ALIGN_64_BYTES = 6,
+	DMAENGINE_ALIGN_128_BYTES = 7,
+	DMAENGINE_ALIGN_256_BYTES = 8,
+};
+
+enum dma_residue_granularity {
+	DMA_RESIDUE_GRANULARITY_DESCRIPTOR = 0,
+	DMA_RESIDUE_GRANULARITY_SEGMENT = 1,
+	DMA_RESIDUE_GRANULARITY_BURST = 2,
+};
+
+struct dma_async_tx_descriptor;
+
+struct dma_slave_caps;
+
+struct dma_slave_config;
+
+struct dma_tx_state;
+
+struct dma_device {
+	struct kref ref;
+	unsigned int chancnt;
+	unsigned int privatecnt;
+	struct list_head channels;
+	struct list_head global_node;
+	struct dma_filter filter;
+	dma_cap_mask_t cap_mask;
+	enum dma_desc_metadata_mode desc_metadata_modes;
+	short unsigned int max_xor;
+	short unsigned int max_pq;
+	enum dmaengine_alignment copy_align;
+	enum dmaengine_alignment xor_align;
+	enum dmaengine_alignment pq_align;
+	enum dmaengine_alignment fill_align;
+	int dev_id;
+	struct device *dev;
+	struct module *owner;
+	struct ida chan_ida;
+	struct mutex chan_mutex;
+	u32 src_addr_widths;
+	u32 dst_addr_widths;
+	u32 directions;
+	u32 min_burst;
+	u32 max_burst;
+	u32 max_sg_burst;
+	bool descriptor_reuse;
+	enum dma_residue_granularity residue_granularity;
+	int (*device_alloc_chan_resources)(struct dma_chan___2 *);
+	int (*device_router_config)(struct dma_chan___2 *);
+	void (*device_free_chan_resources)(struct dma_chan___2 *);
+	struct dma_async_tx_descriptor * (*device_prep_dma_memcpy)(struct dma_chan___2 *, dma_addr_t, dma_addr_t, size_t, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_xor)(struct dma_chan___2 *, dma_addr_t, dma_addr_t *, unsigned int, size_t, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_xor_val)(struct dma_chan___2 *, dma_addr_t *, unsigned int, size_t, enum sum_check_flags *, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_pq)(struct dma_chan___2 *, dma_addr_t *, dma_addr_t *, unsigned int, const unsigned char *, size_t, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_pq_val)(struct dma_chan___2 *, dma_addr_t *, dma_addr_t *, unsigned int, const unsigned char *, size_t, enum sum_check_flags *, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_memset)(struct dma_chan___2 *, dma_addr_t, int, size_t, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_memset_sg)(struct dma_chan___2 *, struct scatterlist *, unsigned int, int, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_interrupt)(struct dma_chan___2 *, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_slave_sg)(struct dma_chan___2 *, struct scatterlist *, unsigned int, enum dma_transfer_direction, long unsigned int, void *);
+	struct dma_async_tx_descriptor * (*device_prep_dma_cyclic)(struct dma_chan___2 *, dma_addr_t, size_t, size_t, enum dma_transfer_direction, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_interleaved_dma)(struct dma_chan___2 *, struct dma_interleaved_template *, long unsigned int);
+	struct dma_async_tx_descriptor * (*device_prep_dma_imm_data)(struct dma_chan___2 *, dma_addr_t, u64, long unsigned int);
+	void (*device_caps)(struct dma_chan___2 *, struct dma_slave_caps *);
+	int (*device_config)(struct dma_chan___2 *, struct dma_slave_config *);
+	int (*device_pause)(struct dma_chan___2 *);
+	int (*device_resume)(struct dma_chan___2 *);
+	int (*device_terminate_all)(struct dma_chan___2 *);
+	void (*device_synchronize)(struct dma_chan___2 *);
+	enum dma_status (*device_tx_status)(struct dma_chan___2 *, dma_cookie_t, struct dma_tx_state *);
+	void (*device_issue_pending)(struct dma_chan___2 *);
+	void (*device_release)(struct dma_device *);
+	void (*dbg_summary_show)(struct seq_file *, struct dma_device *);
+	struct dentry *dbg_dev_root;
+};
+
+struct dma_chan_dev {
+	struct dma_chan___2 *chan;
+	struct device device;
+	int dev_id;
+	bool chan_dma_dev;
+};
+
+enum dma_slave_buswidth {
+	DMA_SLAVE_BUSWIDTH_UNDEFINED = 0,
+	DMA_SLAVE_BUSWIDTH_1_BYTE = 1,
+	DMA_SLAVE_BUSWIDTH_2_BYTES = 2,
+	DMA_SLAVE_BUSWIDTH_3_BYTES = 3,
+	DMA_SLAVE_BUSWIDTH_4_BYTES = 4,
+	DMA_SLAVE_BUSWIDTH_8_BYTES = 8,
+	DMA_SLAVE_BUSWIDTH_16_BYTES = 16,
+	DMA_SLAVE_BUSWIDTH_32_BYTES = 32,
+	DMA_SLAVE_BUSWIDTH_64_BYTES = 64,
+	DMA_SLAVE_BUSWIDTH_128_BYTES = 128,
+};
+
+struct dma_slave_config {
+	enum dma_transfer_direction direction;
+	phys_addr_t src_addr;
+	phys_addr_t dst_addr;
+	enum dma_slave_buswidth src_addr_width;
+	enum dma_slave_buswidth dst_addr_width;
+	u32 src_maxburst;
+	u32 dst_maxburst;
+	u32 src_port_window_size;
+	u32 dst_port_window_size;
+	bool device_fc;
+	unsigned int slave_id;
+	void *peripheral_config;
+	size_t peripheral_size;
+};
+
+struct dma_slave_caps {
+	u32 src_addr_widths;
+	u32 dst_addr_widths;
+	u32 directions;
+	u32 min_burst;
+	u32 max_burst;
+	u32 max_sg_burst;
+	bool cmd_pause;
+	bool cmd_resume;
+	bool cmd_terminate;
+	enum dma_residue_granularity residue_granularity;
+	bool descriptor_reuse;
+};
+
+typedef void (*dma_async_tx_callback)(void *);
+
+enum dmaengine_tx_result {
+	DMA_TRANS_NOERROR = 0,
+	DMA_TRANS_READ_FAILED = 1,
+	DMA_TRANS_WRITE_FAILED = 2,
+	DMA_TRANS_ABORTED = 3,
+};
+
+struct dmaengine_result {
+	enum dmaengine_tx_result result;
+	u32 residue;
+};
+
+typedef void (*dma_async_tx_callback_result)(void *, const struct dmaengine_result *);
+
+struct dmaengine_unmap_data {
+	u16 map_cnt;
+	u8 to_cnt;
+	u8 from_cnt;
+	u8 bidi_cnt;
+	struct device *dev;
+	struct kref kref;
+	size_t len;
+	dma_addr_t addr[0];
+};
+
+struct dma_descriptor_metadata_ops {
+	int (*attach)(struct dma_async_tx_descriptor *, void *, size_t);
+	void * (*get_ptr)(struct dma_async_tx_descriptor *, size_t *, size_t *);
+	int (*set_len)(struct dma_async_tx_descriptor *, size_t);
+};
+
+struct dma_async_tx_descriptor {
+	dma_cookie_t cookie;
+	enum dma_ctrl_flags flags;
+	dma_addr_t phys;
+	struct dma_chan___2 *chan;
+	dma_cookie_t (*tx_submit)(struct dma_async_tx_descriptor *);
+	int (*desc_free)(struct dma_async_tx_descriptor *);
+	dma_async_tx_callback callback;
+	dma_async_tx_callback_result callback_result;
+	void *callback_param;
+	struct dmaengine_unmap_data *unmap;
+	enum dma_desc_metadata_mode desc_metadata_mode;
+	struct dma_descriptor_metadata_ops *metadata_ops;
+};
+
+struct dma_tx_state {
+	dma_cookie_t last;
+	dma_cookie_t used;
+	u32 residue;
+	u32 in_flight_bytes;
+};
+
+struct dma_slave_map {
+	const char *devname;
+	const char *slave;
+	void *param;
+};
+
+struct rio_switch_ops;
+
+struct rio_dev;
+
+struct rio_switch {
+	struct list_head node;
+	u8 *route_table;
+	u32 port_ok;
+	struct rio_switch_ops *ops;
+	spinlock_t lock;
+	struct rio_dev *nextdev[0];
+};
+
+struct rio_mport;
+
+struct rio_switch_ops {
+	struct module *owner;
+	int (*add_entry)(struct rio_mport *, u16, u8, u16, u16, u8);
+	int (*get_entry)(struct rio_mport *, u16, u8, u16, u16, u8 *);
+	int (*clr_table)(struct rio_mport *, u16, u8, u16);
+	int (*set_domain)(struct rio_mport *, u16, u8, u8);
+	int (*get_domain)(struct rio_mport *, u16, u8, u8 *);
+	int (*em_init)(struct rio_dev *);
+	int (*em_handle)(struct rio_dev *, u8);
+};
+
+struct rio_net;
+
+struct rio_driver;
+
+union rio_pw_msg;
+
+struct rio_dev {
+	struct list_head global_list;
+	struct list_head net_list;
+	struct rio_net *net;
+	bool do_enum;
+	u16 did;
+	u16 vid;
+	u32 device_rev;
+	u16 asm_did;
+	u16 asm_vid;
+	u16 asm_rev;
+	u16 efptr;
+	u32 pef;
+	u32 swpinfo;
+	u32 src_ops;
+	u32 dst_ops;
+	u32 comp_tag;
+	u32 phys_efptr;
+	u32 phys_rmap;
+	u32 em_efptr;
+	u64 dma_mask;
+	struct rio_driver *driver;
+	struct device dev;
+	struct resource riores[16];
+	int (*pwcback)(struct rio_dev *, union rio_pw_msg *, int);
+	u16 destid;
+	u8 hopcount;
+	struct rio_dev *prev;
+	atomic_t state;
+	struct rio_switch rswitch[0];
+};
+
+struct rio_msg {
+	struct resource *res;
+	void (*mcback)(struct rio_mport *, void *, int, int);
+};
+
+struct rio_ops;
+
+struct rio_scan;
+
+struct rio_mport {
+	struct list_head dbells;
+	struct list_head pwrites;
+	struct list_head node;
+	struct list_head nnode;
+	struct rio_net *net;
+	struct mutex lock;
+	struct resource iores;
+	struct resource riores[16];
+	struct rio_msg inb_msg[4];
+	struct rio_msg outb_msg[4];
+	int host_deviceid;
+	struct rio_ops *ops;
+	unsigned char id;
+	unsigned char index;
+	unsigned int sys_size;
+	u32 phys_efptr;
+	u32 phys_rmap;
+	unsigned char name[40];
+	struct device dev;
+	void *priv;
+	struct dma_device dma;
+	struct rio_scan *nscan;
+	atomic_t state;
+	unsigned int pwe_refcnt;
+};
+
+enum rio_device_state {
+	RIO_DEVICE_INITIALIZING = 0,
+	RIO_DEVICE_RUNNING = 1,
+	RIO_DEVICE_GONE = 2,
+	RIO_DEVICE_SHUTDOWN = 3,
+};
+
+struct rio_net {
+	struct list_head node;
+	struct list_head devices;
+	struct list_head switches;
+	struct list_head mports;
+	struct rio_mport *hport;
+	unsigned char id;
+	struct device dev;
+	void *enum_data;
+	void (*release)(struct rio_net *);
+};
+
+struct rio_driver {
+	struct list_head node;
+	char *name;
+	const struct rio_device_id *id_table;
+	int (*probe)(struct rio_dev *, const struct rio_device_id *);
+	void (*remove)(struct rio_dev *);
+	void (*shutdown)(struct rio_dev *);
+	int (*suspend)(struct rio_dev *, u32);
+	int (*resume)(struct rio_dev *);
+	int (*enable_wake)(struct rio_dev *, u32, int);
+	struct device_driver driver;
+};
+
+union rio_pw_msg {
+	struct {
+		u32 comptag;
+		u32 errdetect;
+		u32 is_port;
+		u32 ltlerrdet;
+		u32 padding[12];
+	} em;
+	u32 raw[16];
+};
+
+struct rio_dbell {
+	struct list_head node;
+	struct resource *res;
+	void (*dinb)(struct rio_mport *, void *, u16, u16, u16);
+	void *dev_id;
+};
+
+struct rio_mport_attr;
+
+struct rio_ops {
+	int (*lcread)(struct rio_mport *, int, u32, int, u32 *);
+	int (*lcwrite)(struct rio_mport *, int, u32, int, u32);
+	int (*cread)(struct rio_mport *, int, u16, u8, u32, int, u32 *);
+	int (*cwrite)(struct rio_mport *, int, u16, u8, u32, int, u32);
+	int (*dsend)(struct rio_mport *, int, u16, u16);
+	int (*pwenable)(struct rio_mport *, int);
+	int (*open_outb_mbox)(struct rio_mport *, void *, int, int);
+	void (*close_outb_mbox)(struct rio_mport *, int);
+	int (*open_inb_mbox)(struct rio_mport *, void *, int, int);
+	void (*close_inb_mbox)(struct rio_mport *, int);
+	int (*add_outb_message)(struct rio_mport *, struct rio_dev *, int, void *, size_t);
+	int (*add_inb_buffer)(struct rio_mport *, int, void *);
+	void * (*get_inb_message)(struct rio_mport *, int);
+	int (*map_inb)(struct rio_mport *, dma_addr_t, u64, u64, u32);
+	void (*unmap_inb)(struct rio_mport *, dma_addr_t);
+	int (*query_mport)(struct rio_mport *, struct rio_mport_attr *);
+	int (*map_outb)(struct rio_mport *, u16, u64, u32, u32, dma_addr_t *);
+	void (*unmap_outb)(struct rio_mport *, u16, u64);
+};
+
+struct rio_scan {
+	struct module *owner;
+	int (*enumerate)(struct rio_mport *, u32);
+	int (*discover)(struct rio_mport *, u32);
+};
+
+struct rio_mport_attr {
+	int flags;
+	int link_speed;
+	int link_width;
+	int dma_max_sge;
+	int dma_max_size;
+	int dma_align;
+};
+
+enum rio_write_type {
+	RDW_DEFAULT = 0,
+	RDW_ALL_NWRITE = 1,
+	RDW_ALL_NWRITE_R = 2,
+	RDW_LAST_NWRITE_R = 3,
+};
+
+struct rio_dma_ext {
+	u16 destid;
+	u64 rio_addr;
+	u8 rio_addr_u;
+	enum rio_write_type wr_type;
+};
+
+struct rio_dma_data {
+	struct scatterlist *sg;
+	unsigned int sg_len;
+	u64 rio_addr;
+	u8 rio_addr_u;
+	enum rio_write_type wr_type;
+};
+
+struct rio_scan_node {
+	int mport_id;
+	struct list_head node;
+	struct rio_scan *ops;
+};
+
+struct rio_pwrite {
+	struct list_head node;
+	int (*pwcback)(struct rio_mport *, void *, union rio_pw_msg *, int);
+	void *context;
+};
+
+struct rio_disc_work {
+	struct work_struct work;
+	struct rio_mport *mport;
+};
+
 enum hdmi_infoframe_type {
 	HDMI_INFOFRAME_TYPE_VENDOR = 129,
 	HDMI_INFOFRAME_TYPE_AVI = 130,
@@ -65656,7 +81428,7 @@ enum hdmi_content_type {
 };
 
 enum hdmi_metadata_type {
-	HDMI_STATIC_METADATA_TYPE1 = 1,
+	HDMI_STATIC_METADATA_TYPE1 = 0,
 };
 
 enum hdmi_eotf {
@@ -66058,6 +81830,8 @@ struct fb_pixmap {
 
 struct backlight_device;
 
+struct fb_deferred_io_pageref;
+
 struct fb_deferred_io;
 
 struct fb_ops;
@@ -66067,7 +81841,7 @@ struct fb_tile_ops;
 struct apertures_struct;
 
 struct fb_info {
-	atomic_t count;
+	refcount_t count;
 	int node;
 	int flags;
 	int fbcon_rotate_hint;
@@ -66086,6 +81860,8 @@ struct fb_info {
 	struct mutex bl_curve_mutex;
 	u8 bl_curve[128];
 	struct delayed_work deferred_work;
+	long unsigned int npagerefs;
+	struct fb_deferred_io_pageref *pagerefs;
 	struct fb_deferred_io *fbdefio;
 	const struct fb_ops *fbops;
 	struct device *device;
@@ -66103,6 +81879,7 @@ struct fb_info {
 	void *par;
 	struct apertures_struct *apertures;
 	bool skip_vt_switch;
+	bool forced_out;
 };
 
 struct fb_blit_caps {
@@ -66112,10 +81889,18 @@ struct fb_blit_caps {
 	u32 flags;
 };
 
+struct fb_deferred_io_pageref {
+	struct page *page;
+	long unsigned int offset;
+	struct list_head list;
+};
+
 struct fb_deferred_io {
 	long unsigned int delay;
+	bool sort_pagereflist;
+	int open_count;
 	struct mutex lock;
-	struct list_head pagelist;
+	struct list_head pagereflist;
 	void (*first_io)(struct fb_info *);
 	void (*deferred_io)(struct fb_info *, struct list_head *);
 };
@@ -66389,8 +82174,6 @@ struct fb_cvt_data {
 
 typedef unsigned char u_char;
 
-typedef short unsigned int u_short;
-
 struct fb_con2fbmap {
 	__u32 console;
 	__u32 framebuffer;
@@ -66457,130 +82240,199 @@ enum {
 	FBCON_LOGO_DONTSHOW = 4294967293,
 };
 
-struct xenfb_update {
-	uint8_t type;
-	int32_t x;
-	int32_t y;
-	int32_t width;
-	int32_t height;
-};
+typedef long unsigned int u_long;
 
-struct xenfb_resize {
-	uint8_t type;
-	int32_t width;
-	int32_t height;
-	int32_t stride;
-	int32_t depth;
-	int32_t offset;
-};
-
-union xenfb_out_event {
-	uint8_t type;
-	struct xenfb_update update;
-	struct xenfb_resize resize;
-	char pad[40];
-};
-
-struct xenfb_page {
-	uint32_t in_cons;
-	uint32_t in_prod;
-	uint32_t out_cons;
-	uint32_t out_prod;
-	int32_t width;
-	int32_t height;
-	uint32_t line_length;
-	uint32_t mem_length;
-	uint8_t depth;
-	long unsigned int pd[256];
-};
-
-enum xenbus_state {
-	XenbusStateUnknown = 0,
-	XenbusStateInitialising = 1,
-	XenbusStateInitWait = 2,
-	XenbusStateInitialised = 3,
-	XenbusStateConnected = 4,
-	XenbusStateClosing = 5,
-	XenbusStateClosed = 6,
-	XenbusStateReconfiguring = 7,
-	XenbusStateReconfigured = 8,
-};
-
-struct xsd_errors {
-	int errnum;
-	const char *errstring;
-};
-
-struct xenbus_watch {
-	struct list_head list;
-	const char *node;
-	unsigned int nr_pending;
-	bool (*will_handle)(struct xenbus_watch *, const char *, const char *);
-	void (*callback)(struct xenbus_watch *, const char *, const char *);
-};
-
-struct xenbus_device {
-	const char *devicetype;
-	const char *nodename;
-	const char *otherend;
-	int otherend_id;
-	struct xenbus_watch otherend_watch;
-	struct device dev;
-	enum xenbus_state state;
-	struct completion down;
-	struct work_struct work;
-	struct semaphore reclaim_sem;
-};
-
-struct xenbus_device_id {
-	char devicetype[32];
-};
-
-struct xenbus_driver {
-	const char *name;
-	const struct xenbus_device_id *ids;
-	bool allow_rebind;
-	int (*probe)(struct xenbus_device *, const struct xenbus_device_id *);
-	void (*otherend_changed)(struct xenbus_device *, enum xenbus_state);
-	int (*remove)(struct xenbus_device *);
-	int (*suspend)(struct xenbus_device *);
-	int (*resume)(struct xenbus_device *);
-	int (*uevent)(struct xenbus_device *, struct kobj_uevent_env *);
-	struct device_driver driver;
-	int (*read_otherend_details)(struct xenbus_device *);
-	int (*is_ready)(struct xenbus_device *);
-	void (*reclaim_memory)(struct xenbus_device *);
-};
-
-struct xenbus_transaction {
-	u32 id;
-};
-
-struct xenfb_info {
-	unsigned char *fb;
-	struct fb_info *fb_info;
-	int x1;
-	int y1;
-	int x2;
-	int y2;
-	spinlock_t dirty_lock;
-	int nr_pages;
-	int irq;
-	struct xenfb_page *page;
-	long unsigned int *gfns;
-	int update_wanted;
-	int feature_resize;
-	struct xenfb_resize resize;
-	int resize_dpy;
-	spinlock_t resize_lock;
-	struct xenbus_device *xbdev;
+enum {
+	S1SA = 0,
+	S2SA = 1,
+	SP = 2,
+	DSA = 3,
+	CNT = 4,
+	DP_OCTL = 5,
+	CLR = 6,
+	BI = 8,
+	MBC = 9,
+	BLTCTL = 10,
+	HES = 12,
+	HEB = 13,
+	HSB = 14,
+	HT = 15,
+	VES = 16,
+	VEB = 17,
+	VSB = 18,
+	VT = 19,
+	HCIV = 20,
+	VCIV = 21,
+	TCDR = 22,
+	VIL = 23,
+	STGCTL = 24,
+	SSR = 25,
+	HRIR = 26,
+	SPR = 27,
+	CMR = 28,
+	SRGCTL = 29,
+	RRCIV = 30,
+	RRSC = 31,
+	RRCR = 34,
+	GIOE = 32,
+	GIO = 33,
+	SCR = 35,
+	SSTATUS = 36,
+	PRC = 37,
 };
 
 enum {
-	KPARAM_MEM = 0,
-	KPARAM_WIDTH = 1,
-	KPARAM_HEIGHT = 2,
-	KPARAM_CNT = 3,
+	PADDRW = 0,
+	PDATA = 4,
+	PPMASK = 8,
+	PADDRR = 12,
+	PIDXLO = 16,
+	PIDXHI = 20,
+	PIDXDATA = 24,
+	PIDXCTL = 28,
+};
+
+enum {
+	CLKCTL = 2,
+	SYNCCTL = 3,
+	HSYNCPOS = 4,
+	PWRMNGMT = 5,
+	DACOP = 6,
+	PALETCTL = 7,
+	SYSCLKCTL = 8,
+	PIXFMT = 10,
+	BPP8 = 11,
+	BPP16 = 12,
+	BPP24 = 13,
+	BPP32 = 14,
+	PIXCTL1 = 16,
+	PIXCTL2 = 17,
+	SYSCLKN = 21,
+	SYSCLKM = 22,
+	SYSCLKP = 23,
+	SYSCLKC = 24,
+	PIXM0 = 32,
+	PIXN0 = 33,
+	PIXP0 = 34,
+	PIXC0 = 35,
+	CURSCTL = 48,
+	CURSXLO = 49,
+	CURSXHI = 50,
+	CURSYLO = 51,
+	CURSYHI = 52,
+	CURSHOTX = 53,
+	CURSHOTY = 54,
+	CURSACCTL = 55,
+	CURSACATTR = 56,
+	CURS1R = 64,
+	CURS1G = 65,
+	CURS1B = 66,
+	CURS2R = 67,
+	CURS2G = 68,
+	CURS2B = 69,
+	CURS3R = 70,
+	CURS3G = 71,
+	CURS3B = 72,
+	BORDR = 96,
+	BORDG = 97,
+	BORDB = 98,
+	MISCTL1 = 112,
+	MISCTL2 = 113,
+	MISCTL3 = 114,
+	KEYCTL = 120,
+};
+
+enum {
+	TVPADDRW = 0,
+	TVPPDATA = 4,
+	TVPPMASK = 8,
+	TVPPADRR = 12,
+	TVPCADRW = 16,
+	TVPCDATA = 20,
+	TVPCADRR = 28,
+	TVPDCCTL = 36,
+	TVPIDATA = 40,
+	TVPCRDAT = 44,
+	TVPCXPOL = 48,
+	TVPCXPOH = 52,
+	TVPCYPOL = 56,
+	TVPCYPOH = 60,
+};
+
+enum {
+	TVPIRREV = 1,
+	TVPIRICC = 6,
+	TVPIRBRC = 7,
+	TVPIRLAC = 15,
+	TVPIRTCC = 24,
+	TVPIRMXC = 25,
+	TVPIRCLS = 26,
+	TVPIRPPG = 28,
+	TVPIRGEC = 29,
+	TVPIRMIC = 30,
+	TVPIRPLA = 44,
+	TVPIRPPD = 45,
+	TVPIRMPD = 46,
+	TVPIRLPD = 47,
+	TVPIRCKL = 48,
+	TVPIRCKH = 49,
+	TVPIRCRL = 50,
+	TVPIRCRH = 51,
+	TVPIRCGL = 52,
+	TVPIRCGH = 53,
+	TVPIRCBL = 54,
+	TVPIRCBH = 55,
+	TVPIRCKC = 56,
+	TVPIRMLC = 57,
+	TVPIRSEN = 58,
+	TVPIRTMD = 59,
+	TVPIRRML = 60,
+	TVPIRRMM = 61,
+	TVPIRRMS = 62,
+	TVPIRDID = 63,
+	TVPIRRES = 255,
+};
+
+struct initvalues {
+	__u8 addr;
+	__u8 value;
+};
+
+struct imstt_regvals {
+	__u32 pitch;
+	__u16 hes;
+	__u16 heb;
+	__u16 hsb;
+	__u16 ht;
+	__u16 ves;
+	__u16 veb;
+	__u16 vsb;
+	__u16 vt;
+	__u16 vil;
+	__u8 pclk_m;
+	__u8 pclk_n;
+	__u8 pclk_p;
+	__u8 mlc[3];
+	__u8 lckl_p[3];
+};
+
+struct imstt_par {
+	struct imstt_regvals init;
+	__u32 *dc_regs;
+	long unsigned int cmap_regs_phys;
+	__u8 *cmap_regs;
+	__u32 ramdac;
+	__u32 palette[16];
+};
+
+enum {
+	IBM = 0,
+	TVP = 1,
+};
+
+struct chips_init_reg {
+	unsigned char addr;
+	unsigned char data;
 };
 
 struct vesafb_par {
@@ -66589,6 +82441,16 @@ struct vesafb_par {
 	struct resource *region;
 };
 
+struct acpi_table_bgrt {
+	struct acpi_table_header header;
+	u16 version;
+	u8 status;
+	u8 image_type;
+	u64 image_address;
+	u32 image_offset_x;
+	u32 image_offset_y;
+};
+
 enum drm_panel_orientation {
 	DRM_MODE_PANEL_ORIENTATION_UNKNOWN = 4294967295,
 	DRM_MODE_PANEL_ORIENTATION_NORMAL = 0,
@@ -66597,6 +82459,27 @@ enum drm_panel_orientation {
 	DRM_MODE_PANEL_ORIENTATION_RIGHT_UP = 3,
 };
 
+struct bmp_file_header {
+	u16 id;
+	u32 file_size;
+	u32 reserved;
+	u32 bitmap_offset;
+} __attribute__((packed));
+
+struct bmp_dib_header {
+	u32 dib_header_size;
+	s32 width;
+	s32 height;
+	u16 planes;
+	u16 bpp;
+	u32 compression;
+	u32 bitmap_size;
+	u32 horz_resolution;
+	u32 vert_resolution;
+	u32 colors_used;
+	u32 colors_important;
+};
+
 struct timing_entry {
 	u32 min;
 	u32 typ;
@@ -66627,6 +82510,7 @@ struct thermal_cooling_device_ops;
 struct thermal_cooling_device {
 	int id;
 	char *type;
+	long unsigned int max_state;
 	struct device device;
 	struct device_node *np;
 	void *devdata;
@@ -66638,6 +82522,12 @@ struct thermal_cooling_device {
 	struct list_head node;
 };
 
+enum {
+	C1E_PROMOTION_PRESERVE = 0,
+	C1E_PROMOTION_ENABLE = 1,
+	C1E_PROMOTION_DISABLE = 2,
+};
+
 struct idle_cpu {
 	struct cpuidle_state *state_table;
 	long unsigned int auto_demotion_disable_flags;
@@ -66812,6 +82702,7 @@ enum si_type {
 	SI_KCS = 1,
 	SI_SMIC = 2,
 	SI_BT = 3,
+	SI_TYPE_MAX = 4,
 };
 
 enum ipmi_addr_space {
@@ -66911,11 +82802,10 @@ struct acpi_madt_generic_distributor {
 	u8 reserved2[3];
 };
 
-typedef int (*acpi_tbl_table_handler)(struct acpi_table_header *);
-
 enum acpi_subtable_type {
 	ACPI_SUBTABLE_COMMON = 0,
 	ACPI_SUBTABLE_HMAT = 1,
+	ACPI_SUBTABLE_PRMT = 2,
 };
 
 struct acpi_subtable_entry {
@@ -66940,7 +82830,7 @@ struct acpi_platform_list {
 	u32 data;
 };
 
-typedef char *acpi_string;
+typedef u32 (*acpi_interface_handler)(acpi_string, u32);
 
 struct acpi_osi_entry {
 	char string[64];
@@ -66969,14 +82859,6 @@ typedef void (*acpi_osd_exec_callback)(void *);
 
 typedef u32 (*acpi_gpe_handler)(acpi_handle, u32, void *);
 
-typedef void (*acpi_notify_handler)(acpi_handle, u32, void *);
-
-typedef void (*acpi_object_handler)(acpi_handle, void *);
-
-typedef acpi_status (*acpi_adr_space_handler)(u32, acpi_physical_address, u32, u64 *, void *, void *);
-
-typedef acpi_status (*acpi_adr_space_setup)(acpi_handle, u32, void *, void **);
-
 struct acpi_pci_id {
 	u16 segment;
 	u16 bus;
@@ -67008,6 +82890,20 @@ typedef enum {
 	OSL_EC_BURST_HANDLER = 6,
 } acpi_execute_type;
 
+struct acpi_debugger_ops {
+	int (*create_thread)(acpi_osd_exec_callback, void *);
+	ssize_t (*write_log)(const char *);
+	ssize_t (*read_cmd)(char *, size_t);
+	int (*wait_command_ready)(bool, char *, size_t);
+	int (*notify_command_complete)(void);
+};
+
+struct acpi_debugger {
+	const struct acpi_debugger_ops *ops;
+	struct module *owner;
+	struct mutex lock;
+};
+
 union acpi_operand_object;
 
 struct acpi_namespace_node {
@@ -67616,6 +83512,10 @@ struct acpi_parse_obj_common {
 	struct acpi_namespace_node *node;
 	union acpi_parse_value value;
 	u8 arg_list_length;
+	u16 disasm_flags;
+	u8 disasm_opcode;
+	char *operator_symbol;
+	char aml_op_name[16];
 };
 
 struct acpi_parse_obj_named {
@@ -67628,6 +83528,10 @@ struct acpi_parse_obj_named {
 	struct acpi_namespace_node *node;
 	union acpi_parse_value value;
 	u8 arg_list_length;
+	u16 disasm_flags;
+	u8 disasm_opcode;
+	char *operator_symbol;
+	char aml_op_name[16];
 	char *path;
 	u8 *data;
 	u32 length;
@@ -67644,6 +83548,10 @@ struct acpi_parse_obj_asl {
 	struct acpi_namespace_node *node;
 	union acpi_parse_value value;
 	u8 arg_list_length;
+	u16 disasm_flags;
+	u8 disasm_opcode;
+	char *operator_symbol;
+	char aml_op_name[16];
 	union acpi_parse_object *child;
 	union acpi_parse_object *parent_method;
 	char *filename;
@@ -67751,6 +83659,7 @@ union acpi_generic_state {
 };
 
 struct acpi_opcode_info {
+	char *name;
 	u32 parse_args;
 	u32 runtime_args;
 	u16 flags;
@@ -67782,11 +83691,6 @@ struct acpi_hp_work {
 	u32 src;
 };
 
-struct acpi_object_list {
-	u32 count;
-	union acpi_object *pointer;
-};
-
 struct acpi_pld_info {
 	u8 revision;
 	u8 ignore_color;
@@ -67872,23 +83776,6 @@ struct acpi_table_facs {
 	u8 reserved1[24];
 };
 
-struct lpi_device_info {
-	char *name;
-	int enabled;
-	union acpi_object *package;
-};
-
-struct lpi_device_constraint {
-	int uid;
-	int min_dstate;
-	int function_states;
-};
-
-struct lpi_constraints {
-	acpi_handle handle;
-	int min_dstate;
-};
-
 struct acpi_hardware_id {
 	struct list_head list;
 	const char *id;
@@ -67923,6 +83810,10 @@ struct acpi_device_physical_node {
 	bool put_online: 1;
 };
 
+typedef u32 (*acpi_event_handler)(void *);
+
+typedef acpi_status (*acpi_table_handler)(u32, void *, void *);
+
 enum acpi_bus_device_type {
 	ACPI_BUS_TYPE_DEVICE = 0,
 	ACPI_BUS_TYPE_POWER = 1,
@@ -67997,6 +83888,12 @@ struct acpi_table_stao {
 	u8 ignore_uart;
 } __attribute__((packed));
 
+struct acpi_dep_data {
+	struct list_head node;
+	acpi_handle supplier;
+	acpi_handle consumer;
+};
+
 enum acpi_reconfig_event {
 	ACPI_RECONFIG_DEVICE_ADD = 0,
 	ACPI_RECONFIG_DEVICE_REMOVE = 1,
@@ -68017,16 +83914,9 @@ struct acpi_probe_entry {
 	kernel_ulong_t driver_data;
 };
 
-struct acpi_dep_data {
-	struct list_head node;
-	acpi_handle master;
-	acpi_handle slave;
-};
-
-struct acpi_table_events_work {
+struct acpi_scan_clear_dep_work {
 	struct work_struct work;
-	void *table;
-	u32 event;
+	struct acpi_device *adev;
 };
 
 struct resource_win {
@@ -68034,6 +83924,15 @@ struct resource_win {
 	resource_size_t offset;
 };
 
+struct irq_override_cmp {
+	const struct dmi_system_id *system;
+	unsigned char irq;
+	unsigned char triggering;
+	unsigned char polarity;
+	unsigned char shareable;
+	bool override;
+};
+
 struct res_proc_context {
 	struct list_head *list;
 	int (*preproc)(struct acpi_resource *, void *);
@@ -68294,11 +84193,10 @@ struct acpi_power_dependent_device {
 struct acpi_power_resource {
 	struct acpi_device device;
 	struct list_head list_node;
-	char *name;
 	u32 system_level;
 	u32 order;
 	unsigned int ref_count;
-	bool wakeup_enabled;
+	u8 state;
 	struct mutex resource_lock;
 	struct list_head dependents;
 };
@@ -68348,12 +84246,24 @@ struct acpi_ged_event {
 	acpi_handle handle;
 };
 
+typedef void (*acpi_gbl_event_handler)(u32, acpi_handle, u32, void *);
+
 struct acpi_table_bert {
 	struct acpi_table_header header;
 	u32 region_length;
 	u64 address;
 };
 
+struct acpi_dlayer {
+	const char *name;
+	long unsigned int value;
+};
+
+struct acpi_dlevel {
+	const char *name;
+	long unsigned int value;
+};
+
 struct acpi_table_attr {
 	struct bin_attribute attr;
 	char name[4];
@@ -68392,6 +84302,36 @@ struct override_status_id {
 	long long unsigned int status;
 };
 
+struct acpi_s2idle_dev_ops {
+	struct list_head list_node;
+	void (*prepare)(void);
+	void (*restore)(void);
+};
+
+struct lpi_device_info {
+	char *name;
+	int enabled;
+	union acpi_object *package;
+};
+
+struct lpi_device_constraint {
+	int uid;
+	int min_dstate;
+	int function_states;
+};
+
+struct lpi_constraints {
+	acpi_handle handle;
+	int min_dstate;
+};
+
+struct lpi_device_constraint_amd {
+	char *name;
+	int enabled;
+	int function_states;
+	int min_dstate;
+};
+
 struct acpi_lpat {
 	int temp;
 	int raw;
@@ -68402,6 +84342,59 @@ struct acpi_lpat_conversion_table {
 	int lpat_count;
 };
 
+enum fpdt_subtable_type {
+	SUBTABLE_FBPT = 0,
+	SUBTABLE_S3PT = 1,
+};
+
+struct fpdt_subtable_entry {
+	u16 type;
+	u8 length;
+	u8 revision;
+	u32 reserved;
+	u64 address;
+};
+
+struct fpdt_subtable_header {
+	u32 signature;
+	u32 length;
+};
+
+enum fpdt_record_type {
+	RECORD_S3_RESUME = 0,
+	RECORD_S3_SUSPEND = 1,
+	RECORD_BOOT = 2,
+};
+
+struct fpdt_record_header {
+	u16 type;
+	u8 length;
+	u8 revision;
+};
+
+struct resume_performance_record {
+	struct fpdt_record_header header;
+	u32 resume_count;
+	u64 resume_prev;
+	u64 resume_avg;
+};
+
+struct boot_performance_record {
+	struct fpdt_record_header header;
+	u32 reserved;
+	u64 firmware_start;
+	u64 bootloader_load;
+	u64 bootloader_launch;
+	u64 exitbootservice_start;
+	u64 exitbootservice_end;
+};
+
+struct suspend_performance_record {
+	struct fpdt_record_header header;
+	u64 suspend_start;
+	u64 suspend_end;
+} __attribute__((packed));
+
 struct acpi_table_lpit {
 	struct acpi_table_header header;
 };
@@ -68454,70 +84447,74 @@ struct acpi_wdat_entry {
 	u32 mask;
 };
 
-enum {
-	ACPI_REFCLASS_LOCAL = 0,
-	ACPI_REFCLASS_ARG = 1,
-	ACPI_REFCLASS_REFOF = 2,
-	ACPI_REFCLASS_INDEX = 3,
-	ACPI_REFCLASS_TABLE = 4,
-	ACPI_REFCLASS_NAME = 5,
-	ACPI_REFCLASS_DEBUG = 6,
-	ACPI_REFCLASS_MAX = 6,
+typedef u64 acpi_integer;
+
+struct acpi_prmt_module_info {
+	u16 revision;
+	u16 length;
+	u8 module_guid[16];
+	u16 major_rev;
+	u16 minor_rev;
+	u16 handler_info_count;
+	u32 handler_info_offset;
+	u64 mmio_list_pointer;
+} __attribute__((packed));
+
+struct acpi_prmt_handler_info {
+	u16 revision;
+	u16 length;
+	u8 handler_guid[16];
+	u64 handler_address;
+	u64 static_data_buffer_address;
+	u64 acpi_param_buffer_address;
+} __attribute__((packed));
+
+struct prm_mmio_addr_range {
+	u64 phys_addr;
+	u64 virt_addr;
+	u32 length;
+} __attribute__((packed));
+
+struct prm_mmio_info {
+	u64 mmio_count;
+	struct prm_mmio_addr_range addr_ranges[0];
 };
 
-struct acpi_common_descriptor {
-	void *common_pointer;
-	u8 descriptor_type;
+struct prm_buffer {
+	u8 prm_status;
+	u64 efi_status;
+	u8 prm_cmd;
+	guid_t handler_guid;
+} __attribute__((packed));
+
+struct prm_context_buffer {
+	char signature[4];
+	u16 revision;
+	u16 reserved;
+	guid_t identifier;
+	u64 static_data_buffer;
+	struct prm_mmio_info *mmio_ranges;
 };
 
-union acpi_descriptor {
-	struct acpi_common_descriptor common;
-	union acpi_operand_object object;
-	struct acpi_namespace_node node;
-	union acpi_parse_object op;
+struct prm_handler_info {
+	guid_t guid;
+	u64 handler_addr;
+	u64 static_data_buffer_addr;
+	u64 acpi_param_buffer_addr;
+	struct list_head handler_list;
 };
 
-struct acpi_create_field_info {
-	struct acpi_namespace_node *region_node;
-	struct acpi_namespace_node *field_node;
-	struct acpi_namespace_node *register_node;
-	struct acpi_namespace_node *data_register_node;
-	struct acpi_namespace_node *connection_node;
-	u8 *resource_buffer;
-	u32 bank_value;
-	u32 field_bit_position;
-	u32 field_bit_length;
-	u16 resource_length;
-	u16 pin_number_index;
-	u8 field_flags;
-	u8 attribute;
-	u8 field_type;
-	u8 access_length;
+struct prm_module_info {
+	guid_t guid;
+	u16 major_rev;
+	u16 minor_rev;
+	u16 handler_count;
+	struct prm_mmio_info *mmio_info;
+	bool updatable;
+	struct list_head module_list;
+	struct prm_handler_info handlers[0];
 };
 
-struct acpi_init_walk_info {
-	u32 table_index;
-	u32 object_count;
-	u32 method_count;
-	u32 serial_method_count;
-	u32 non_serial_method_count;
-	u32 serialized_method_count;
-	u32 device_count;
-	u32 op_region_count;
-	u32 field_count;
-	u32 buffer_count;
-	u32 package_count;
-	u32 op_region_init;
-	u32 field_init;
-	u32 buffer_init;
-	u32 package_init;
-	acpi_owner_id owner_id;
-};
-
-typedef u32 acpi_name;
-
-typedef acpi_status (*acpi_exception_handler)(acpi_status, acpi_name, u16, u32, void *);
-
 struct acpi_name_info {
 	char name[4];
 	u16 argument_list;
@@ -68585,12 +84582,26 @@ struct acpi_evaluate_info {
 };
 
 enum {
-	AML_FIELD_ACCESS_ANY = 0,
-	AML_FIELD_ACCESS_BYTE = 1,
-	AML_FIELD_ACCESS_WORD = 2,
-	AML_FIELD_ACCESS_DWORD = 3,
-	AML_FIELD_ACCESS_QWORD = 4,
-	AML_FIELD_ACCESS_BUFFER = 5,
+	ACPI_REFCLASS_LOCAL = 0,
+	ACPI_REFCLASS_ARG = 1,
+	ACPI_REFCLASS_REFOF = 2,
+	ACPI_REFCLASS_INDEX = 3,
+	ACPI_REFCLASS_TABLE = 4,
+	ACPI_REFCLASS_NAME = 5,
+	ACPI_REFCLASS_DEBUG = 6,
+	ACPI_REFCLASS_MAX = 6,
+};
+
+struct acpi_common_descriptor {
+	void *common_pointer;
+	u8 descriptor_type;
+};
+
+union acpi_descriptor {
+	struct acpi_common_descriptor common;
+	union acpi_operand_object object;
+	struct acpi_namespace_node node;
+	union acpi_parse_object op;
 };
 
 typedef enum {
@@ -68599,12 +84610,58 @@ typedef enum {
 	ACPI_IMODE_EXECUTE = 3,
 } acpi_interpreter_mode;
 
+struct acpi_create_field_info {
+	struct acpi_namespace_node *region_node;
+	struct acpi_namespace_node *field_node;
+	struct acpi_namespace_node *register_node;
+	struct acpi_namespace_node *data_register_node;
+	struct acpi_namespace_node *connection_node;
+	u8 *resource_buffer;
+	u32 bank_value;
+	u32 field_bit_position;
+	u32 field_bit_length;
+	u16 resource_length;
+	u16 pin_number_index;
+	u8 field_flags;
+	u8 attribute;
+	u8 field_type;
+	u8 access_length;
+};
+
+struct acpi_init_walk_info {
+	u32 table_index;
+	u32 object_count;
+	u32 method_count;
+	u32 serial_method_count;
+	u32 non_serial_method_count;
+	u32 serialized_method_count;
+	u32 device_count;
+	u32 op_region_count;
+	u32 field_count;
+	u32 buffer_count;
+	u32 package_count;
+	u32 op_region_init;
+	u32 field_init;
+	u32 buffer_init;
+	u32 package_init;
+	acpi_owner_id owner_id;
+};
+
+typedef u32 acpi_name;
+
+typedef acpi_status (*acpi_exception_handler)(acpi_status, acpi_name, u16, u32, void *);
+
+enum {
+	AML_FIELD_ACCESS_ANY = 0,
+	AML_FIELD_ACCESS_BYTE = 1,
+	AML_FIELD_ACCESS_WORD = 2,
+	AML_FIELD_ACCESS_DWORD = 3,
+	AML_FIELD_ACCESS_QWORD = 4,
+	AML_FIELD_ACCESS_BUFFER = 5,
+};
+
 typedef acpi_status (*acpi_execute_op)(struct acpi_walk_state *);
 
-typedef void (*acpi_gbl_event_handler)(u32, acpi_handle, u32, void *);
-
-typedef u32 (*acpi_event_handler)(void *);
-
 struct acpi_fixed_event_handler {
 	acpi_event_handler handler;
 	void *context;
@@ -68617,6 +84674,8 @@ struct acpi_fixed_event_info {
 	u16 enable_bit_mask;
 };
 
+typedef u32 acpi_mutex_handle;
+
 struct acpi_gpe_walk_info {
 	struct acpi_namespace_node *gpe_device;
 	struct acpi_gpe_block_info *gpe_block;
@@ -68648,6 +84707,12 @@ struct acpi_sci_handler_info {
 	void *context;
 };
 
+struct acpi_exdump_info {
+	u8 opcode;
+	u8 offset;
+	const char *name;
+} __attribute__((packed));
+
 enum {
 	AML_FIELD_UPDATE_PRESERVE = 0,
 	AML_FIELD_UPDATE_WRITE_AS_ONES = 32,
@@ -68712,6 +84777,13 @@ struct acpi_pci_device {
 	struct acpi_pci_device *next;
 };
 
+struct acpi_walk_info {
+	u32 debug_level;
+	u32 count;
+	acpi_owner_id owner_id;
+	u8 display_type;
+};
+
 typedef acpi_status (*acpi_init_handler)(acpi_handle, u32);
 
 struct acpi_device_walk_info {
@@ -68722,6 +84794,8 @@ struct acpi_device_walk_info {
 	u32 num_INI;
 };
 
+typedef acpi_status (*acpi_pkg_callback)(u8, union acpi_operand_object *, union acpi_generic_state *, void *);
+
 struct acpi_table_list {
 	struct acpi_table_desc *tables;
 	u32 current_table_count;
@@ -68771,8 +84845,6 @@ struct acpi_namestring_info {
 	u8 fully_qualified;
 };
 
-typedef acpi_status (*acpi_walk_callback)(acpi_handle, u32, void *, void **);
-
 struct acpi_rw_lock {
 	void *writer_mutex;
 	void *reader_mutex;
@@ -68989,6 +85061,18 @@ struct aml_resource_common_serialbus {
 	u16 type_data_length;
 } __attribute__((packed));
 
+struct aml_resource_csi2_serialbus {
+	u8 descriptor_type;
+	u16 resource_length;
+	u8 revision_id;
+	u8 res_source_index;
+	u8 type;
+	u8 flags;
+	u16 type_specific_flags;
+	u8 type_revision_id;
+	u16 type_data_length;
+} __attribute__((packed));
+
 struct aml_resource_i2c_serialbus {
 	u8 descriptor_type;
 	u16 resource_length;
@@ -69130,6 +85214,7 @@ union aml_resource {
 	struct aml_resource_i2c_serialbus i2c_serial_bus;
 	struct aml_resource_spi_serialbus spi_serial_bus;
 	struct aml_resource_uart_serialbus uart_serial_bus;
+	struct aml_resource_csi2_serialbus csi2_serial_bus;
 	struct aml_resource_common_serialbus common_serial_bus;
 	struct aml_resource_pin_function pin_function;
 	struct aml_resource_pin_config pin_config;
@@ -69156,36 +85241,69 @@ enum {
 	ACPI_RSC_1BITFLAG = 3,
 	ACPI_RSC_2BITFLAG = 4,
 	ACPI_RSC_3BITFLAG = 5,
-	ACPI_RSC_ADDRESS = 6,
-	ACPI_RSC_BITMASK = 7,
-	ACPI_RSC_BITMASK16 = 8,
-	ACPI_RSC_COUNT = 9,
-	ACPI_RSC_COUNT16 = 10,
-	ACPI_RSC_COUNT_GPIO_PIN = 11,
-	ACPI_RSC_COUNT_GPIO_RES = 12,
-	ACPI_RSC_COUNT_GPIO_VEN = 13,
-	ACPI_RSC_COUNT_SERIAL_RES = 14,
-	ACPI_RSC_COUNT_SERIAL_VEN = 15,
-	ACPI_RSC_DATA8 = 16,
-	ACPI_RSC_EXIT_EQ = 17,
-	ACPI_RSC_EXIT_LE = 18,
-	ACPI_RSC_EXIT_NE = 19,
-	ACPI_RSC_LENGTH = 20,
-	ACPI_RSC_MOVE_GPIO_PIN = 21,
-	ACPI_RSC_MOVE_GPIO_RES = 22,
-	ACPI_RSC_MOVE_SERIAL_RES = 23,
-	ACPI_RSC_MOVE_SERIAL_VEN = 24,
-	ACPI_RSC_MOVE8 = 25,
-	ACPI_RSC_MOVE16 = 26,
-	ACPI_RSC_MOVE32 = 27,
-	ACPI_RSC_MOVE64 = 28,
-	ACPI_RSC_SET8 = 29,
-	ACPI_RSC_SOURCE = 30,
-	ACPI_RSC_SOURCEX = 31,
+	ACPI_RSC_6BITFLAG = 6,
+	ACPI_RSC_ADDRESS = 7,
+	ACPI_RSC_BITMASK = 8,
+	ACPI_RSC_BITMASK16 = 9,
+	ACPI_RSC_COUNT = 10,
+	ACPI_RSC_COUNT16 = 11,
+	ACPI_RSC_COUNT_GPIO_PIN = 12,
+	ACPI_RSC_COUNT_GPIO_RES = 13,
+	ACPI_RSC_COUNT_GPIO_VEN = 14,
+	ACPI_RSC_COUNT_SERIAL_RES = 15,
+	ACPI_RSC_COUNT_SERIAL_VEN = 16,
+	ACPI_RSC_DATA8 = 17,
+	ACPI_RSC_EXIT_EQ = 18,
+	ACPI_RSC_EXIT_LE = 19,
+	ACPI_RSC_EXIT_NE = 20,
+	ACPI_RSC_LENGTH = 21,
+	ACPI_RSC_MOVE_GPIO_PIN = 22,
+	ACPI_RSC_MOVE_GPIO_RES = 23,
+	ACPI_RSC_MOVE_SERIAL_RES = 24,
+	ACPI_RSC_MOVE_SERIAL_VEN = 25,
+	ACPI_RSC_MOVE8 = 26,
+	ACPI_RSC_MOVE16 = 27,
+	ACPI_RSC_MOVE32 = 28,
+	ACPI_RSC_MOVE64 = 29,
+	ACPI_RSC_SET8 = 30,
+	ACPI_RSC_SOURCE = 31,
+	ACPI_RSC_SOURCEX = 32,
 };
 
 typedef u16 acpi_rs_length;
 
+typedef acpi_status (*acpi_walk_aml_callback)(u8 *, u32, u32, u8, void **);
+
+struct acpi_rsdump_info {
+	u8 opcode;
+	u8 offset;
+	const char *name;
+	const char **pointer;
+} __attribute__((packed));
+
+enum {
+	ACPI_RSD_TITLE = 0,
+	ACPI_RSD_1BITFLAG = 1,
+	ACPI_RSD_2BITFLAG = 2,
+	ACPI_RSD_3BITFLAG = 3,
+	ACPI_RSD_6BITFLAG = 4,
+	ACPI_RSD_ADDRESS = 5,
+	ACPI_RSD_DWORDLIST = 6,
+	ACPI_RSD_LITERAL = 7,
+	ACPI_RSD_LONGLIST = 8,
+	ACPI_RSD_SHORTLIST = 9,
+	ACPI_RSD_SHORTLISTX = 10,
+	ACPI_RSD_SOURCE = 11,
+	ACPI_RSD_STRING = 12,
+	ACPI_RSD_UINT8 = 13,
+	ACPI_RSD_UINT16 = 14,
+	ACPI_RSD_UINT32 = 15,
+	ACPI_RSD_UINT64 = 16,
+	ACPI_RSD_WORDLIST = 17,
+	ACPI_RSD_LABEL = 18,
+	ACPI_RSD_SOURCE_LABEL = 19,
+};
+
 typedef u32 acpi_rsdesc_size;
 
 struct acpi_vendor_uuid {
@@ -69193,16 +85311,12 @@ struct acpi_vendor_uuid {
 	u8 data[16];
 };
 
-typedef acpi_status (*acpi_walk_resource_callback)(struct acpi_resource *, void *);
-
 struct acpi_vendor_walk_info {
 	struct acpi_vendor_uuid *uuid;
 	struct acpi_buffer *buffer;
 	acpi_status status;
 };
 
-typedef acpi_status (*acpi_table_handler)(u32, void *, void *);
-
 struct acpi_fadt_info {
 	const char *name;
 	u16 address64;
@@ -69248,8 +85362,6 @@ struct acpi_exception_info {
 	char *name;
 };
 
-typedef u32 (*acpi_interface_handler)(acpi_string, u32);
-
 struct acpi_mutex_info {
 	void *mutex;
 	u32 use_count;
@@ -69268,11 +85380,664 @@ struct acpi_interface_info {
 	u8 value;
 };
 
-typedef acpi_status (*acpi_pkg_callback)(u8, union acpi_operand_object *, union acpi_generic_state *, void *);
+struct acpi_handler_info {
+	void *handler;
+	char *name;
+};
 
-typedef u32 acpi_mutex_handle;
+struct acpi_db_method_info {
+	acpi_handle method;
+	acpi_handle main_thread_gate;
+	acpi_handle thread_complete_gate;
+	acpi_handle info_gate;
+	u64 *threads;
+	u32 num_threads;
+	u32 num_created;
+	u32 num_completed;
+	char *name;
+	u32 flags;
+	u32 num_loops;
+	char pathname[512];
+	char **args;
+	acpi_object_type *types;
+	char init_args;
+	acpi_object_type arg_types[7];
+	char *arguments[7];
+	char num_threads_str[11];
+	char id_of_thread_str[11];
+	char index_of_thread_str[11];
+};
 
-typedef acpi_status (*acpi_walk_aml_callback)(u8 *, u32, u32, u8, void **);
+struct history_info {
+	char *command;
+	u32 cmd_num;
+};
+
+typedef struct history_info HISTORY_INFO;
+
+struct acpi_db_command_info {
+	const char *name;
+	u8 min_args;
+};
+
+struct acpi_db_command_help {
+	u8 line_count;
+	char *invocation;
+	char *description;
+};
+
+enum acpi_ex_debugger_commands {
+	CMD_NOT_FOUND = 0,
+	CMD_NULL = 1,
+	CMD_ALL = 2,
+	CMD_ALLOCATIONS = 3,
+	CMD_ARGS = 4,
+	CMD_ARGUMENTS = 5,
+	CMD_BREAKPOINT = 6,
+	CMD_BUSINFO = 7,
+	CMD_CALL = 8,
+	CMD_DEBUG = 9,
+	CMD_DISASSEMBLE = 10,
+	CMD_DISASM = 11,
+	CMD_DUMP = 12,
+	CMD_EVALUATE = 13,
+	CMD_EXECUTE = 14,
+	CMD_EXIT = 15,
+	CMD_FIELDS = 16,
+	CMD_FIND = 17,
+	CMD_GO = 18,
+	CMD_HANDLERS = 19,
+	CMD_HELP = 20,
+	CMD_HELP2 = 21,
+	CMD_HISTORY = 22,
+	CMD_HISTORY_EXE = 23,
+	CMD_HISTORY_LAST = 24,
+	CMD_INFORMATION = 25,
+	CMD_INTEGRITY = 26,
+	CMD_INTO = 27,
+	CMD_LEVEL = 28,
+	CMD_LIST = 29,
+	CMD_LOCALS = 30,
+	CMD_LOCKS = 31,
+	CMD_METHODS = 32,
+	CMD_NAMESPACE = 33,
+	CMD_NOTIFY = 34,
+	CMD_OBJECTS = 35,
+	CMD_OSI = 36,
+	CMD_OWNER = 37,
+	CMD_PATHS = 38,
+	CMD_PREDEFINED = 39,
+	CMD_PREFIX = 40,
+	CMD_QUIT = 41,
+	CMD_REFERENCES = 42,
+	CMD_RESOURCES = 43,
+	CMD_RESULTS = 44,
+	CMD_SET = 45,
+	CMD_STATS = 46,
+	CMD_STOP = 47,
+	CMD_TABLES = 48,
+	CMD_TEMPLATE = 49,
+	CMD_TRACE = 50,
+	CMD_TREE = 51,
+	CMD_TYPE = 52,
+};
+
+struct acpi_db_execute_walk {
+	u32 count;
+	u32 max_count;
+	char name_seg[5];
+};
+
+struct acpi_integrity_info {
+	u32 nodes;
+	u32 objects;
+};
+
+struct acpi_object_info {
+	u32 types[28];
+};
+
+struct acpi_region_walk_info {
+	u32 debug_level;
+	u32 count;
+	acpi_owner_id owner_id;
+	u8 display_type;
+	u32 address_space_id;
+};
+
+struct acpi_db_argument_info {
+	const char *name;
+};
+
+enum led_brightness {
+	LED_OFF = 0,
+	LED_ON = 1,
+	LED_HALF = 127,
+	LED_FULL = 255,
+};
+
+struct led_hw_trigger_type {
+	int dummy;
+};
+
+struct led_pattern;
+
+struct led_trigger;
+
+struct led_classdev {
+	const char *name;
+	unsigned int brightness;
+	unsigned int max_brightness;
+	int flags;
+	long unsigned int work_flags;
+	void (*brightness_set)(struct led_classdev *, enum led_brightness);
+	int (*brightness_set_blocking)(struct led_classdev *, enum led_brightness);
+	enum led_brightness (*brightness_get)(struct led_classdev *);
+	int (*blink_set)(struct led_classdev *, long unsigned int *, long unsigned int *);
+	int (*pattern_set)(struct led_classdev *, struct led_pattern *, u32, int);
+	int (*pattern_clear)(struct led_classdev *);
+	struct device *dev;
+	const struct attribute_group **groups;
+	struct list_head node;
+	const char *default_trigger;
+	long unsigned int blink_delay_on;
+	long unsigned int blink_delay_off;
+	struct timer_list blink_timer;
+	int blink_brightness;
+	int new_blink_brightness;
+	void (*flash_resume)(struct led_classdev *);
+	struct work_struct set_brightness_work;
+	int delayed_set_value;
+	struct rw_semaphore trigger_lock;
+	struct led_trigger *trigger;
+	struct list_head trig_list;
+	void *trigger_data;
+	bool activated;
+	struct led_hw_trigger_type *trigger_type;
+	int brightness_hw_changed;
+	struct kernfs_node *brightness_hw_changed_kn;
+	struct mutex led_access;
+};
+
+struct led_pattern {
+	u32 delta_t;
+	int brightness;
+};
+
+struct led_trigger {
+	const char *name;
+	int (*activate)(struct led_classdev *);
+	void (*deactivate)(struct led_classdev *);
+	enum led_brightness brightness;
+	struct led_hw_trigger_type *trigger_type;
+	spinlock_t leddev_list_lock;
+	struct list_head led_cdevs;
+	struct list_head next_trig;
+	const struct attribute_group **groups;
+};
+
+enum power_supply_property {
+	POWER_SUPPLY_PROP_STATUS = 0,
+	POWER_SUPPLY_PROP_CHARGE_TYPE = 1,
+	POWER_SUPPLY_PROP_HEALTH = 2,
+	POWER_SUPPLY_PROP_PRESENT = 3,
+	POWER_SUPPLY_PROP_ONLINE = 4,
+	POWER_SUPPLY_PROP_AUTHENTIC = 5,
+	POWER_SUPPLY_PROP_TECHNOLOGY = 6,
+	POWER_SUPPLY_PROP_CYCLE_COUNT = 7,
+	POWER_SUPPLY_PROP_VOLTAGE_MAX = 8,
+	POWER_SUPPLY_PROP_VOLTAGE_MIN = 9,
+	POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN = 10,
+	POWER_SUPPLY_PROP_VOLTAGE_MIN_DESIGN = 11,
+	POWER_SUPPLY_PROP_VOLTAGE_NOW = 12,
+	POWER_SUPPLY_PROP_VOLTAGE_AVG = 13,
+	POWER_SUPPLY_PROP_VOLTAGE_OCV = 14,
+	POWER_SUPPLY_PROP_VOLTAGE_BOOT = 15,
+	POWER_SUPPLY_PROP_CURRENT_MAX = 16,
+	POWER_SUPPLY_PROP_CURRENT_NOW = 17,
+	POWER_SUPPLY_PROP_CURRENT_AVG = 18,
+	POWER_SUPPLY_PROP_CURRENT_BOOT = 19,
+	POWER_SUPPLY_PROP_POWER_NOW = 20,
+	POWER_SUPPLY_PROP_POWER_AVG = 21,
+	POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN = 22,
+	POWER_SUPPLY_PROP_CHARGE_EMPTY_DESIGN = 23,
+	POWER_SUPPLY_PROP_CHARGE_FULL = 24,
+	POWER_SUPPLY_PROP_CHARGE_EMPTY = 25,
+	POWER_SUPPLY_PROP_CHARGE_NOW = 26,
+	POWER_SUPPLY_PROP_CHARGE_AVG = 27,
+	POWER_SUPPLY_PROP_CHARGE_COUNTER = 28,
+	POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT = 29,
+	POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX = 30,
+	POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE = 31,
+	POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE_MAX = 32,
+	POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT = 33,
+	POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT_MAX = 34,
+	POWER_SUPPLY_PROP_CHARGE_CONTROL_START_THRESHOLD = 35,
+	POWER_SUPPLY_PROP_CHARGE_CONTROL_END_THRESHOLD = 36,
+	POWER_SUPPLY_PROP_INPUT_CURRENT_LIMIT = 37,
+	POWER_SUPPLY_PROP_INPUT_VOLTAGE_LIMIT = 38,
+	POWER_SUPPLY_PROP_INPUT_POWER_LIMIT = 39,
+	POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN = 40,
+	POWER_SUPPLY_PROP_ENERGY_EMPTY_DESIGN = 41,
+	POWER_SUPPLY_PROP_ENERGY_FULL = 42,
+	POWER_SUPPLY_PROP_ENERGY_EMPTY = 43,
+	POWER_SUPPLY_PROP_ENERGY_NOW = 44,
+	POWER_SUPPLY_PROP_ENERGY_AVG = 45,
+	POWER_SUPPLY_PROP_CAPACITY = 46,
+	POWER_SUPPLY_PROP_CAPACITY_ALERT_MIN = 47,
+	POWER_SUPPLY_PROP_CAPACITY_ALERT_MAX = 48,
+	POWER_SUPPLY_PROP_CAPACITY_ERROR_MARGIN = 49,
+	POWER_SUPPLY_PROP_CAPACITY_LEVEL = 50,
+	POWER_SUPPLY_PROP_TEMP = 51,
+	POWER_SUPPLY_PROP_TEMP_MAX = 52,
+	POWER_SUPPLY_PROP_TEMP_MIN = 53,
+	POWER_SUPPLY_PROP_TEMP_ALERT_MIN = 54,
+	POWER_SUPPLY_PROP_TEMP_ALERT_MAX = 55,
+	POWER_SUPPLY_PROP_TEMP_AMBIENT = 56,
+	POWER_SUPPLY_PROP_TEMP_AMBIENT_ALERT_MIN = 57,
+	POWER_SUPPLY_PROP_TEMP_AMBIENT_ALERT_MAX = 58,
+	POWER_SUPPLY_PROP_TIME_TO_EMPTY_NOW = 59,
+	POWER_SUPPLY_PROP_TIME_TO_EMPTY_AVG = 60,
+	POWER_SUPPLY_PROP_TIME_TO_FULL_NOW = 61,
+	POWER_SUPPLY_PROP_TIME_TO_FULL_AVG = 62,
+	POWER_SUPPLY_PROP_TYPE = 63,
+	POWER_SUPPLY_PROP_USB_TYPE = 64,
+	POWER_SUPPLY_PROP_SCOPE = 65,
+	POWER_SUPPLY_PROP_PRECHARGE_CURRENT = 66,
+	POWER_SUPPLY_PROP_CHARGE_TERM_CURRENT = 67,
+	POWER_SUPPLY_PROP_CALIBRATE = 68,
+	POWER_SUPPLY_PROP_MANUFACTURE_YEAR = 69,
+	POWER_SUPPLY_PROP_MANUFACTURE_MONTH = 70,
+	POWER_SUPPLY_PROP_MANUFACTURE_DAY = 71,
+	POWER_SUPPLY_PROP_MODEL_NAME = 72,
+	POWER_SUPPLY_PROP_MANUFACTURER = 73,
+	POWER_SUPPLY_PROP_SERIAL_NUMBER = 74,
+};
+
+enum power_supply_type {
+	POWER_SUPPLY_TYPE_UNKNOWN = 0,
+	POWER_SUPPLY_TYPE_BATTERY = 1,
+	POWER_SUPPLY_TYPE_UPS = 2,
+	POWER_SUPPLY_TYPE_MAINS = 3,
+	POWER_SUPPLY_TYPE_USB = 4,
+	POWER_SUPPLY_TYPE_USB_DCP = 5,
+	POWER_SUPPLY_TYPE_USB_CDP = 6,
+	POWER_SUPPLY_TYPE_USB_ACA = 7,
+	POWER_SUPPLY_TYPE_USB_TYPE_C = 8,
+	POWER_SUPPLY_TYPE_USB_PD = 9,
+	POWER_SUPPLY_TYPE_USB_PD_DRP = 10,
+	POWER_SUPPLY_TYPE_APPLE_BRICK_ID = 11,
+	POWER_SUPPLY_TYPE_WIRELESS = 12,
+};
+
+enum power_supply_usb_type {
+	POWER_SUPPLY_USB_TYPE_UNKNOWN = 0,
+	POWER_SUPPLY_USB_TYPE_SDP = 1,
+	POWER_SUPPLY_USB_TYPE_DCP = 2,
+	POWER_SUPPLY_USB_TYPE_CDP = 3,
+	POWER_SUPPLY_USB_TYPE_ACA = 4,
+	POWER_SUPPLY_USB_TYPE_C = 5,
+	POWER_SUPPLY_USB_TYPE_PD = 6,
+	POWER_SUPPLY_USB_TYPE_PD_DRP = 7,
+	POWER_SUPPLY_USB_TYPE_PD_PPS = 8,
+	POWER_SUPPLY_USB_TYPE_APPLE_BRICK_ID = 9,
+};
+
+union power_supply_propval {
+	int intval;
+	const char *strval;
+};
+
+struct power_supply_config {
+	struct device_node *of_node;
+	struct fwnode_handle *fwnode;
+	void *drv_data;
+	const struct attribute_group **attr_grp;
+	char **supplied_to;
+	size_t num_supplicants;
+};
+
+struct power_supply;
+
+struct power_supply_desc {
+	const char *name;
+	enum power_supply_type type;
+	const enum power_supply_usb_type *usb_types;
+	size_t num_usb_types;
+	const enum power_supply_property *properties;
+	size_t num_properties;
+	int (*get_property)(struct power_supply *, enum power_supply_property, union power_supply_propval *);
+	int (*set_property)(struct power_supply *, enum power_supply_property, const union power_supply_propval *);
+	int (*property_is_writeable)(struct power_supply *, enum power_supply_property);
+	void (*external_power_changed)(struct power_supply *);
+	void (*set_charged)(struct power_supply *);
+	bool no_thermal;
+	int use_for_apm;
+};
+
+struct thermal_zone_device;
+
+struct power_supply {
+	const struct power_supply_desc *desc;
+	char **supplied_to;
+	size_t num_supplicants;
+	char **supplied_from;
+	size_t num_supplies;
+	struct device_node *of_node;
+	void *drv_data;
+	struct device dev;
+	struct work_struct changed_work;
+	struct delayed_work deferred_register_work;
+	spinlock_t changed_lock;
+	bool changed;
+	bool initialized;
+	bool removing;
+	atomic_t use_cnt;
+	struct thermal_zone_device *tzd;
+	struct thermal_cooling_device *tcd;
+	struct led_trigger *charging_full_trig;
+	char *charging_full_trig_name;
+	struct led_trigger *charging_trig;
+	char *charging_trig_name;
+	struct led_trigger *full_trig;
+	char *full_trig_name;
+	struct led_trigger *online_trig;
+	char *online_trig_name;
+	struct led_trigger *charging_blink_full_solid_trig;
+	char *charging_blink_full_solid_trig_name;
+};
+
+struct acpi_ac_bl {
+	const char *hid;
+	int hrv;
+};
+
+struct acpi_ac {
+	struct power_supply *charger;
+	struct power_supply_desc charger_desc;
+	struct acpi_device *device;
+	long long unsigned int state;
+	struct notifier_block battery_nb;
+};
+
+struct input_id {
+	__u16 bustype;
+	__u16 vendor;
+	__u16 product;
+	__u16 version;
+};
+
+struct input_absinfo {
+	__s32 value;
+	__s32 minimum;
+	__s32 maximum;
+	__s32 fuzz;
+	__s32 flat;
+	__s32 resolution;
+};
+
+struct input_keymap_entry {
+	__u8 flags;
+	__u8 len;
+	__u16 index;
+	__u32 keycode;
+	__u8 scancode[32];
+};
+
+struct ff_replay {
+	__u16 length;
+	__u16 delay;
+};
+
+struct ff_trigger {
+	__u16 button;
+	__u16 interval;
+};
+
+struct ff_envelope {
+	__u16 attack_length;
+	__u16 attack_level;
+	__u16 fade_length;
+	__u16 fade_level;
+};
+
+struct ff_constant_effect {
+	__s16 level;
+	struct ff_envelope envelope;
+};
+
+struct ff_ramp_effect {
+	__s16 start_level;
+	__s16 end_level;
+	struct ff_envelope envelope;
+};
+
+struct ff_condition_effect {
+	__u16 right_saturation;
+	__u16 left_saturation;
+	__s16 right_coeff;
+	__s16 left_coeff;
+	__u16 deadband;
+	__s16 center;
+};
+
+struct ff_periodic_effect {
+	__u16 waveform;
+	__u16 period;
+	__s16 magnitude;
+	__s16 offset;
+	__u16 phase;
+	struct ff_envelope envelope;
+	__u32 custom_len;
+	__s16 *custom_data;
+};
+
+struct ff_rumble_effect {
+	__u16 strong_magnitude;
+	__u16 weak_magnitude;
+};
+
+struct ff_effect {
+	__u16 type;
+	__s16 id;
+	__u16 direction;
+	struct ff_trigger trigger;
+	struct ff_replay replay;
+	union {
+		struct ff_constant_effect constant;
+		struct ff_ramp_effect ramp;
+		struct ff_periodic_effect periodic;
+		struct ff_condition_effect condition[2];
+		struct ff_rumble_effect rumble;
+	} u;
+};
+
+struct input_device_id {
+	kernel_ulong_t flags;
+	__u16 bustype;
+	__u16 vendor;
+	__u16 product;
+	__u16 version;
+	kernel_ulong_t evbit[1];
+	kernel_ulong_t keybit[12];
+	kernel_ulong_t relbit[1];
+	kernel_ulong_t absbit[1];
+	kernel_ulong_t mscbit[1];
+	kernel_ulong_t ledbit[1];
+	kernel_ulong_t sndbit[1];
+	kernel_ulong_t ffbit[2];
+	kernel_ulong_t swbit[1];
+	kernel_ulong_t propbit[1];
+	kernel_ulong_t driver_info;
+};
+
+struct input_value {
+	__u16 type;
+	__u16 code;
+	__s32 value;
+};
+
+enum input_clock_type {
+	INPUT_CLK_REAL = 0,
+	INPUT_CLK_MONO = 1,
+	INPUT_CLK_BOOT = 2,
+	INPUT_CLK_MAX = 3,
+};
+
+struct ff_device;
+
+struct input_dev_poller;
+
+struct input_mt;
+
+struct input_handle;
+
+struct input_dev {
+	const char *name;
+	const char *phys;
+	const char *uniq;
+	struct input_id id;
+	long unsigned int propbit[1];
+	long unsigned int evbit[1];
+	long unsigned int keybit[12];
+	long unsigned int relbit[1];
+	long unsigned int absbit[1];
+	long unsigned int mscbit[1];
+	long unsigned int ledbit[1];
+	long unsigned int sndbit[1];
+	long unsigned int ffbit[2];
+	long unsigned int swbit[1];
+	unsigned int hint_events_per_packet;
+	unsigned int keycodemax;
+	unsigned int keycodesize;
+	void *keycode;
+	int (*setkeycode)(struct input_dev *, const struct input_keymap_entry *, unsigned int *);
+	int (*getkeycode)(struct input_dev *, struct input_keymap_entry *);
+	struct ff_device *ff;
+	struct input_dev_poller *poller;
+	unsigned int repeat_key;
+	struct timer_list timer;
+	int rep[2];
+	struct input_mt *mt;
+	struct input_absinfo *absinfo;
+	long unsigned int key[12];
+	long unsigned int led[1];
+	long unsigned int snd[1];
+	long unsigned int sw[1];
+	int (*open)(struct input_dev *);
+	void (*close)(struct input_dev *);
+	int (*flush)(struct input_dev *, struct file *);
+	int (*event)(struct input_dev *, unsigned int, unsigned int, int);
+	struct input_handle *grab;
+	spinlock_t event_lock;
+	struct mutex mutex;
+	unsigned int users;
+	bool going_away;
+	struct device dev;
+	struct list_head h_list;
+	struct list_head node;
+	unsigned int num_vals;
+	unsigned int max_vals;
+	struct input_value *vals;
+	bool devres_managed;
+	ktime_t timestamp[3];
+	bool inhibited;
+};
+
+struct ff_device {
+	int (*upload)(struct input_dev *, struct ff_effect *, struct ff_effect *);
+	int (*erase)(struct input_dev *, int);
+	int (*playback)(struct input_dev *, int, int);
+	void (*set_gain)(struct input_dev *, u16);
+	void (*set_autocenter)(struct input_dev *, u16);
+	void (*destroy)(struct ff_device *);
+	void *private;
+	long unsigned int ffbit[2];
+	struct mutex mutex;
+	int max_effects;
+	struct ff_effect *effects;
+	struct file *effect_owners[0];
+};
+
+struct input_handler;
+
+struct input_handle {
+	void *private;
+	int open;
+	const char *name;
+	struct input_dev *dev;
+	struct input_handler *handler;
+	struct list_head d_node;
+	struct list_head h_node;
+};
+
+struct input_handler {
+	void *private;
+	void (*event)(struct input_handle *, unsigned int, unsigned int, int);
+	void (*events)(struct input_handle *, const struct input_value *, unsigned int);
+	bool (*filter)(struct input_handle *, unsigned int, unsigned int, int);
+	bool (*match)(struct input_handler *, struct input_dev *);
+	int (*connect)(struct input_handler *, struct input_dev *, const struct input_device_id *);
+	void (*disconnect)(struct input_handle *);
+	void (*start)(struct input_handle *);
+	bool legacy_minors;
+	int minor;
+	const char *name;
+	const struct input_device_id *id_table;
+	struct list_head h_list;
+	struct list_head node;
+};
+
+enum {
+	ACPI_BUTTON_LID_INIT_IGNORE = 0,
+	ACPI_BUTTON_LID_INIT_OPEN = 1,
+	ACPI_BUTTON_LID_INIT_METHOD = 2,
+	ACPI_BUTTON_LID_INIT_DISABLED = 3,
+};
+
+struct acpi_button {
+	unsigned int type;
+	struct input_dev *input;
+	char phys[32];
+	long unsigned int pushed;
+	int last_state;
+	ktime_t last_time;
+	bool suspended;
+	bool lid_state_initialized;
+};
+
+struct acpi_fan_fps {
+	u64 control;
+	u64 trip_point;
+	u64 speed;
+	u64 noise_level;
+	u64 power;
+	char name[20];
+	struct device_attribute dev_attr;
+};
+
+struct acpi_fan_fif {
+	u8 revision;
+	u8 fine_grain_ctrl;
+	u8 step_size;
+	u8 low_speed_notification;
+};
+
+struct acpi_fan_fst {
+	u64 revision;
+	u64 control;
+	u64 speed;
+};
+
+struct acpi_fan {
+	bool acpi4;
+	struct acpi_fan_fif fif;
+	struct acpi_fan_fps *fps;
+	int fps_count;
+	struct thermal_cooling_device *cdev;
+	struct device_attribute fst_speed;
+	struct device_attribute fine_grain_control;
+};
 
 struct acpi_pci_slot {
 	struct pci_slot *pci_slot;
@@ -69334,8 +86099,6 @@ enum thermal_notify_event {
 	THERMAL_EVENT_KEEP_ALIVE = 8,
 };
 
-struct thermal_zone_device;
-
 struct thermal_zone_device_ops {
 	int (*bind)(struct thermal_zone_device *, struct thermal_cooling_device *);
 	int (*unbind)(struct thermal_zone_device *, struct thermal_cooling_device *);
@@ -69350,7 +86113,8 @@ struct thermal_zone_device_ops {
 	int (*get_crit_temp)(struct thermal_zone_device *, int *);
 	int (*set_emul_temp)(struct thermal_zone_device *, int);
 	int (*get_trend)(struct thermal_zone_device *, int, enum thermal_trend *);
-	int (*notify)(struct thermal_zone_device *, int, enum thermal_trip_type);
+	void (*hot)(struct thermal_zone_device *);
+	void (*critical)(struct thermal_zone_device *);
 };
 
 struct thermal_attr;
@@ -69369,17 +86133,16 @@ struct thermal_zone_device {
 	struct thermal_attr *trip_hyst_attrs;
 	enum thermal_device_mode mode;
 	void *devdata;
-	int trips;
+	int num_trips;
 	long unsigned int trips_disabled;
-	int passive_delay;
-	int polling_delay;
+	long unsigned int passive_delay_jiffies;
+	long unsigned int polling_delay_jiffies;
 	int temperature;
 	int last_temperature;
 	int emul_temperature;
 	int passive;
 	int prev_low_trip;
 	int prev_high_trip;
-	unsigned int forced_passive;
 	atomic_t need_update;
 	struct thermal_zone_device_ops *ops;
 	struct thermal_zone_params *tzp;
@@ -69570,7 +86333,8 @@ struct acpi_hmat_locality {
 	struct acpi_hmat_structure header;
 	u8 flags;
 	u8 data_type;
-	u16 reserved1;
+	u8 min_transfer_size;
+	u8 reserved1;
 	u32 number_of_initiator_Pds;
 	u32 number_of_target_Pds;
 	u32 reserved2;
@@ -69660,6 +86424,7 @@ struct acpi_memory_info {
 struct acpi_memory_device {
 	struct acpi_device *device;
 	struct list_head res_list;
+	int mgid;
 };
 
 struct acpi_pci_ioapic {
@@ -69671,14 +86436,135 @@ struct acpi_pci_ioapic {
 	struct list_head list;
 };
 
-struct acpi_table_bgrt {
-	struct acpi_table_header header;
-	u16 version;
-	u8 status;
-	u8 image_type;
-	u64 image_address;
-	u32 image_offset_x;
-	u32 image_offset_y;
+enum dmi_entry_type {
+	DMI_ENTRY_BIOS = 0,
+	DMI_ENTRY_SYSTEM = 1,
+	DMI_ENTRY_BASEBOARD = 2,
+	DMI_ENTRY_CHASSIS = 3,
+	DMI_ENTRY_PROCESSOR = 4,
+	DMI_ENTRY_MEM_CONTROLLER = 5,
+	DMI_ENTRY_MEM_MODULE = 6,
+	DMI_ENTRY_CACHE = 7,
+	DMI_ENTRY_PORT_CONNECTOR = 8,
+	DMI_ENTRY_SYSTEM_SLOT = 9,
+	DMI_ENTRY_ONBOARD_DEVICE = 10,
+	DMI_ENTRY_OEMSTRINGS = 11,
+	DMI_ENTRY_SYSCONF = 12,
+	DMI_ENTRY_BIOS_LANG = 13,
+	DMI_ENTRY_GROUP_ASSOC = 14,
+	DMI_ENTRY_SYSTEM_EVENT_LOG = 15,
+	DMI_ENTRY_PHYS_MEM_ARRAY = 16,
+	DMI_ENTRY_MEM_DEVICE = 17,
+	DMI_ENTRY_32_MEM_ERROR = 18,
+	DMI_ENTRY_MEM_ARRAY_MAPPED_ADDR = 19,
+	DMI_ENTRY_MEM_DEV_MAPPED_ADDR = 20,
+	DMI_ENTRY_BUILTIN_POINTING_DEV = 21,
+	DMI_ENTRY_PORTABLE_BATTERY = 22,
+	DMI_ENTRY_SYSTEM_RESET = 23,
+	DMI_ENTRY_HW_SECURITY = 24,
+	DMI_ENTRY_SYSTEM_POWER_CONTROLS = 25,
+	DMI_ENTRY_VOLTAGE_PROBE = 26,
+	DMI_ENTRY_COOLING_DEV = 27,
+	DMI_ENTRY_TEMP_PROBE = 28,
+	DMI_ENTRY_ELECTRICAL_CURRENT_PROBE = 29,
+	DMI_ENTRY_OOB_REMOTE_ACCESS = 30,
+	DMI_ENTRY_BIS_ENTRY = 31,
+	DMI_ENTRY_SYSTEM_BOOT = 32,
+	DMI_ENTRY_MGMT_DEV = 33,
+	DMI_ENTRY_MGMT_DEV_COMPONENT = 34,
+	DMI_ENTRY_MGMT_DEV_THRES = 35,
+	DMI_ENTRY_MEM_CHANNEL = 36,
+	DMI_ENTRY_IPMI_DEV = 37,
+	DMI_ENTRY_SYS_POWER_SUPPLY = 38,
+	DMI_ENTRY_ADDITIONAL = 39,
+	DMI_ENTRY_ONBOARD_DEV_EXT = 40,
+	DMI_ENTRY_MGMT_CONTROLLER_HOST = 41,
+	DMI_ENTRY_INACTIVE = 126,
+	DMI_ENTRY_END_OF_TABLE = 127,
+};
+
+enum {
+	POWER_SUPPLY_STATUS_UNKNOWN = 0,
+	POWER_SUPPLY_STATUS_CHARGING = 1,
+	POWER_SUPPLY_STATUS_DISCHARGING = 2,
+	POWER_SUPPLY_STATUS_NOT_CHARGING = 3,
+	POWER_SUPPLY_STATUS_FULL = 4,
+};
+
+enum {
+	POWER_SUPPLY_TECHNOLOGY_UNKNOWN = 0,
+	POWER_SUPPLY_TECHNOLOGY_NiMH = 1,
+	POWER_SUPPLY_TECHNOLOGY_LION = 2,
+	POWER_SUPPLY_TECHNOLOGY_LIPO = 3,
+	POWER_SUPPLY_TECHNOLOGY_LiFe = 4,
+	POWER_SUPPLY_TECHNOLOGY_NiCd = 5,
+	POWER_SUPPLY_TECHNOLOGY_LiMn = 6,
+};
+
+enum {
+	POWER_SUPPLY_CAPACITY_LEVEL_UNKNOWN = 0,
+	POWER_SUPPLY_CAPACITY_LEVEL_CRITICAL = 1,
+	POWER_SUPPLY_CAPACITY_LEVEL_LOW = 2,
+	POWER_SUPPLY_CAPACITY_LEVEL_NORMAL = 3,
+	POWER_SUPPLY_CAPACITY_LEVEL_HIGH = 4,
+	POWER_SUPPLY_CAPACITY_LEVEL_FULL = 5,
+};
+
+struct acpi_battery_hook {
+	const char *name;
+	int (*add_battery)(struct power_supply *);
+	int (*remove_battery)(struct power_supply *);
+	struct list_head list;
+};
+
+enum {
+	ACPI_BATTERY_ALARM_PRESENT = 0,
+	ACPI_BATTERY_XINFO_PRESENT = 1,
+	ACPI_BATTERY_QUIRK_PERCENTAGE_CAPACITY = 2,
+	ACPI_BATTERY_QUIRK_THINKPAD_MAH = 3,
+	ACPI_BATTERY_QUIRK_DEGRADED_FULL_CHARGE = 4,
+};
+
+struct acpi_battery {
+	struct mutex lock;
+	struct mutex sysfs_lock;
+	struct power_supply *bat;
+	struct power_supply_desc bat_desc;
+	struct acpi_device *device;
+	struct notifier_block pm_nb;
+	struct list_head list;
+	long unsigned int update_time;
+	int revision;
+	int rate_now;
+	int capacity_now;
+	int voltage_now;
+	int design_capacity;
+	int full_charge_capacity;
+	int technology;
+	int design_voltage;
+	int design_capacity_warning;
+	int design_capacity_low;
+	int cycle_count;
+	int measurement_accuracy;
+	int max_sampling_time;
+	int min_sampling_time;
+	int max_averaging_interval;
+	int min_averaging_interval;
+	int capacity_granularity_1;
+	int capacity_granularity_2;
+	int alarm;
+	char model_number[32];
+	char serial_number[32];
+	char type[32];
+	char oem_info[32];
+	int state;
+	int power_unit;
+	long unsigned int flags;
+};
+
+struct acpi_offsets {
+	size_t offset;
+	u8 mode;
 };
 
 struct acpi_pcct_hw_reduced {
@@ -69769,6 +86655,7 @@ struct cpc_desc {
 	int cpu_id;
 	int write_cmd_status;
 	int write_cmd_id;
+	spinlock_t rmw_lock;
 	struct cpc_register_resource cpc_regs[21];
 	struct acpi_psd_package domain_info;
 	struct kobject kobj;
@@ -69798,16 +86685,6 @@ enum cppc_regs {
 	NOMINAL_FREQ = 20,
 };
 
-struct cppc_perf_caps {
-	u32 guaranteed_perf;
-	u32 highest_perf;
-	u32 nominal_perf;
-	u32 lowest_perf;
-	u32 lowest_nonlinear_perf;
-	u32 lowest_freq;
-	u32 nominal_freq;
-};
-
 struct cppc_perf_ctrls {
 	u32 max_perf;
 	u32 min_perf;
@@ -69822,11 +86699,10 @@ struct cppc_perf_fb_ctrs {
 };
 
 struct cppc_cpudata {
-	int cpu;
+	struct list_head node;
 	struct cppc_perf_caps perf_caps;
 	struct cppc_perf_ctrls perf_ctrls;
 	struct cppc_perf_fb_ctrs perf_fb_ctrs;
-	struct cpufreq_policy *cur_policy;
 	unsigned int shared_type;
 	cpumask_var_t shared_cpu_map;
 };
@@ -69850,6 +86726,21 @@ struct cppc_pcc_data {
 	int refcount;
 };
 
+struct acpi_aml_io {
+	wait_queue_head_t wait;
+	long unsigned int flags;
+	long unsigned int users;
+	struct mutex lock;
+	struct task_struct *thread;
+	char out_buf[4096];
+	struct circ_buf out_crc;
+	char in_buf[4096];
+	struct circ_buf in_crc;
+	acpi_osd_exec_callback function;
+	void *context;
+	long unsigned int usages;
+};
+
 struct acpi_whea_header {
 	u8 action;
 	u8 instruction;
@@ -70208,18 +87099,6 @@ struct ghes_vendor_record_entry {
 	char vendor_record[0];
 };
 
-struct extlog_l1_head {
-	u32 ver;
-	u32 hdr_len;
-	u64 total_len;
-	u64 elog_base;
-	u64 elog_len;
-	u32 flags;
-	u8 rev0[12];
-	u32 entries;
-	u8 rev1[12];
-};
-
 struct pmic_table {
 	int address;
 	int reg;
@@ -70254,101 +87133,6 @@ struct intel_pmic_opregion {
 	struct intel_pmic_regs_handler_ctx ctx;
 };
 
-enum regcache_type {
-	REGCACHE_NONE = 0,
-	REGCACHE_RBTREE = 1,
-	REGCACHE_COMPRESSED = 2,
-	REGCACHE_FLAT = 3,
-};
-
-struct reg_default {
-	unsigned int reg;
-	unsigned int def;
-};
-
-enum regmap_endian {
-	REGMAP_ENDIAN_DEFAULT = 0,
-	REGMAP_ENDIAN_BIG = 1,
-	REGMAP_ENDIAN_LITTLE = 2,
-	REGMAP_ENDIAN_NATIVE = 3,
-};
-
-struct regmap_range {
-	unsigned int range_min;
-	unsigned int range_max;
-};
-
-struct regmap_access_table {
-	const struct regmap_range *yes_ranges;
-	unsigned int n_yes_ranges;
-	const struct regmap_range *no_ranges;
-	unsigned int n_no_ranges;
-};
-
-typedef void (*regmap_lock)(void *);
-
-typedef void (*regmap_unlock)(void *);
-
-struct regmap_range_cfg;
-
-struct regmap_config {
-	const char *name;
-	int reg_bits;
-	int reg_stride;
-	int pad_bits;
-	int val_bits;
-	bool (*writeable_reg)(struct device *, unsigned int);
-	bool (*readable_reg)(struct device *, unsigned int);
-	bool (*volatile_reg)(struct device *, unsigned int);
-	bool (*precious_reg)(struct device *, unsigned int);
-	bool (*writeable_noinc_reg)(struct device *, unsigned int);
-	bool (*readable_noinc_reg)(struct device *, unsigned int);
-	bool disable_locking;
-	regmap_lock lock;
-	regmap_unlock unlock;
-	void *lock_arg;
-	int (*reg_read)(void *, unsigned int, unsigned int *);
-	int (*reg_write)(void *, unsigned int, unsigned int);
-	bool fast_io;
-	unsigned int max_register;
-	const struct regmap_access_table *wr_table;
-	const struct regmap_access_table *rd_table;
-	const struct regmap_access_table *volatile_table;
-	const struct regmap_access_table *precious_table;
-	const struct regmap_access_table *wr_noinc_table;
-	const struct regmap_access_table *rd_noinc_table;
-	const struct reg_default *reg_defaults;
-	unsigned int num_reg_defaults;
-	enum regcache_type cache_type;
-	const void *reg_defaults_raw;
-	unsigned int num_reg_defaults_raw;
-	long unsigned int read_flag_mask;
-	long unsigned int write_flag_mask;
-	bool zero_flag_mask;
-	bool use_single_read;
-	bool use_single_write;
-	bool can_multi_write;
-	enum regmap_endian reg_format_endian;
-	enum regmap_endian val_format_endian;
-	const struct regmap_range_cfg *ranges;
-	unsigned int num_ranges;
-	bool use_hwlock;
-	unsigned int hwlock_id;
-	unsigned int hwlock_mode;
-	bool can_sleep;
-};
-
-struct regmap_range_cfg {
-	const char *name;
-	unsigned int range_min;
-	unsigned int range_max;
-	unsigned int selector_reg;
-	unsigned int selector_mask;
-	int selector_shift;
-	unsigned int window_start;
-	unsigned int window_len;
-};
-
 struct regmap_irq_type {
 	unsigned int type_reg_offset;
 	unsigned int type_reg_mask;
@@ -70382,6 +87166,7 @@ struct regmap_irq_chip {
 	unsigned int ack_base;
 	unsigned int wake_base;
 	unsigned int type_base;
+	unsigned int *virt_reg_base;
 	unsigned int irq_reg_stride;
 	bool mask_writeonly: 1;
 	bool init_ack_masked: 1;
@@ -70394,13 +87179,17 @@ struct regmap_irq_chip {
 	bool type_invert: 1;
 	bool type_in_mask: 1;
 	bool clear_on_unmask: 1;
+	bool not_fixed_stride: 1;
+	bool status_invert: 1;
 	int num_regs;
 	const struct regmap_irq *irqs;
 	int num_irqs;
 	int num_type_reg;
+	int num_virt_regs;
 	unsigned int type_reg_stride;
 	int (*handle_pre_irq)(void *);
 	int (*handle_post_irq)(void *);
+	int (*set_type_virt)(unsigned int **, unsigned int, long unsigned int, int);
 	void *irq_drv_data;
 };
 
@@ -70429,9 +87218,9 @@ struct mfd_cell {
 	int (*resume)(struct platform_device *);
 	void *platform_data;
 	size_t pdata_size;
-	const struct property_entry *properties;
+	const struct software_node *swnode;
 	const char *of_compatible;
-	const u64 of_reg;
+	u64 of_reg;
 	bool use_of_reg;
 	const struct mfd_cell_acpi_match *acpi_match;
 	int num_resources;
@@ -70442,23 +87231,90 @@ struct mfd_cell {
 	int num_parent_supplies;
 };
 
-struct acpi_table_xsdt {
+struct tps68470_pmic_table {
+	u32 address;
+	u32 reg;
+	u32 bitmask;
+};
+
+struct tps68470_pmic_opregion {
+	struct mutex lock;
+	struct regmap *regmap;
+};
+
+struct acpi_table_viot {
 	struct acpi_table_header header;
-	u64 table_offset_entry[1];
-} __attribute__((packed));
-
-struct sfi_table_key {
-	char *sig;
-	char *oem_id;
-	char *oem_table_id;
+	u16 node_count;
+	u16 node_offset;
+	u8 reserved[8];
 };
 
-struct sfi_table_attr {
-	struct bin_attribute attr;
-	char name[8];
+struct acpi_viot_header {
+	u8 type;
+	u8 reserved;
+	u16 length;
 };
 
-typedef int (*sfi_table_handler)(struct sfi_table_header *);
+enum acpi_viot_node_type {
+	ACPI_VIOT_NODE_PCI_RANGE = 1,
+	ACPI_VIOT_NODE_MMIO = 2,
+	ACPI_VIOT_NODE_VIRTIO_IOMMU_PCI = 3,
+	ACPI_VIOT_NODE_VIRTIO_IOMMU_MMIO = 4,
+	ACPI_VIOT_RESERVED = 5,
+};
+
+struct acpi_viot_pci_range {
+	struct acpi_viot_header header;
+	u32 endpoint_start;
+	u16 segment_start;
+	u16 segment_end;
+	u16 bdf_start;
+	u16 bdf_end;
+	u16 output_node;
+	u8 reserved[6];
+};
+
+struct acpi_viot_mmio {
+	struct acpi_viot_header header;
+	u32 endpoint;
+	u64 base_address;
+	u16 output_node;
+	u8 reserved[6];
+};
+
+struct acpi_viot_virtio_iommu_pci {
+	struct acpi_viot_header header;
+	u16 segment;
+	u16 bdf;
+	u8 reserved[8];
+};
+
+struct acpi_viot_virtio_iommu_mmio {
+	struct acpi_viot_header header;
+	u8 reserved[4];
+	u64 base_address;
+};
+
+struct viot_iommu {
+	unsigned int offset;
+	struct fwnode_handle *fwnode;
+	struct list_head list;
+};
+
+struct viot_endpoint {
+	union {
+		struct {
+			u16 segment_start;
+			u16 segment_end;
+			u16 bdf_start;
+			u16 bdf_end;
+		};
+		u64 address;
+	};
+	u32 endpoint_id;
+	struct viot_iommu *viommu;
+	struct list_head list;
+};
 
 struct pnp_resource {
 	struct list_head list;
@@ -70533,6 +87389,11 @@ struct clk_bulk_data {
 	struct clk *clk;
 };
 
+struct devm_clk_state {
+	struct clk *clk;
+	void (*exit)(struct clk *);
+};
+
 struct clk_bulk_devres {
 	struct clk_bulk_data *clks;
 	int num_clks;
@@ -70548,8 +87409,6 @@ struct clk_lookup {
 	struct clk_hw *clk_hw;
 };
 
-struct clk_core;
-
 struct clk_init_data;
 
 struct clk_hw {
@@ -70628,17 +87487,6 @@ struct clk_notifier {
 	struct list_head node;
 };
 
-struct clk {
-	struct clk_core *core;
-	struct device *dev;
-	const char *dev_id;
-	const char *con_id;
-	long unsigned int min_rate;
-	long unsigned int max_rate;
-	unsigned int exclusive_count;
-	struct hlist_node clks_node;
-};
-
 struct clk_notifier_data {
 	struct clk *clk;
 	long unsigned int old_rate;
@@ -70653,6 +87501,7 @@ struct clk_core {
 	struct clk_hw *hw;
 	struct module *owner;
 	struct device *dev;
+	struct hlist_node rpm_node;
 	struct device_node *of_node;
 	struct clk_core *parent;
 	struct clk_parent_map *parents;
@@ -70704,6 +87553,14 @@ struct trace_event_raw_clk_rate {
 	char __data[0];
 };
 
+struct trace_event_raw_clk_rate_range {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	long unsigned int min;
+	long unsigned int max;
+	char __data[0];
+};
+
 struct trace_event_raw_clk_parent {
 	struct trace_entry ent;
 	u32 __data_loc_name;
@@ -70734,6 +87591,10 @@ struct trace_event_data_offsets_clk_rate {
 	u32 name;
 };
 
+struct trace_event_data_offsets_clk_rate_range {
+	u32 name;
+};
+
 struct trace_event_data_offsets_clk_parent {
 	u32 name;
 	u32 pname;
@@ -70767,6 +87628,12 @@ typedef void (*btf_trace_clk_set_rate)(void *, struct clk_core *, long unsigned
 
 typedef void (*btf_trace_clk_set_rate_complete)(void *, struct clk_core *, long unsigned int);
 
+typedef void (*btf_trace_clk_set_min_rate)(void *, struct clk_core *, long unsigned int);
+
+typedef void (*btf_trace_clk_set_max_rate)(void *, struct clk_core *, long unsigned int);
+
+typedef void (*btf_trace_clk_set_rate_range)(void *, struct clk_core *, long unsigned int, long unsigned int);
+
 typedef void (*btf_trace_clk_set_parent)(void *, struct clk_core *, struct clk_core *);
 
 typedef void (*btf_trace_clk_set_parent_complete)(void *, struct clk_core *, struct clk_core *);
@@ -70779,6 +87646,11 @@ typedef void (*btf_trace_clk_set_duty_cycle)(void *, struct clk_core *, struct c
 
 typedef void (*btf_trace_clk_set_duty_cycle_complete)(void *, struct clk_core *, struct clk_duty *);
 
+struct clk_notifier_devres {
+	struct clk *clk;
+	struct notifier_block *nb;
+};
+
 struct clk_div_table {
 	unsigned int val;
 	unsigned int div;
@@ -70859,13 +87731,55 @@ struct clk_fractional_divider {
 	spinlock_t *lock;
 };
 
-struct gpio_desc;
-
 struct clk_gpio {
 	struct clk_hw hw;
 	struct gpio_desc *gpiod;
 };
 
+struct icst_params {
+	long unsigned int ref;
+	long unsigned int vco_max;
+	long unsigned int vco_min;
+	short unsigned int vd_min;
+	short unsigned int vd_max;
+	unsigned char rd_min;
+	unsigned char rd_max;
+	const unsigned char *s2div;
+	const unsigned char *idx2s;
+};
+
+struct icst_vco {
+	short unsigned int v;
+	unsigned char r;
+	unsigned char s;
+};
+
+enum icst_control_type {
+	ICST_VERSATILE = 0,
+	ICST_INTEGRATOR_AP_CM = 1,
+	ICST_INTEGRATOR_AP_SYS = 2,
+	ICST_INTEGRATOR_AP_PCI = 3,
+	ICST_INTEGRATOR_CP_CM_CORE = 4,
+	ICST_INTEGRATOR_CP_CM_MEM = 5,
+	ICST_INTEGRATOR_IM_PD1 = 6,
+};
+
+struct clk_icst_desc {
+	const struct icst_params *params;
+	u32 vco_offset;
+	u32 lock_offset;
+};
+
+struct clk_icst {
+	struct clk_hw hw;
+	struct regmap *map;
+	u32 vcoreg_off;
+	u32 lockreg_off;
+	struct icst_params *params;
+	long unsigned int rate;
+	enum icst_control_type ctype;
+};
+
 struct pmc_clk {
 	const char *name;
 	long unsigned int freq;
@@ -70898,325 +87812,6 @@ struct clk_plt_data {
 	struct clk_lookup *ether_clk_lookup;
 };
 
-typedef s32 dma_cookie_t;
-
-enum dma_status {
-	DMA_COMPLETE = 0,
-	DMA_IN_PROGRESS = 1,
-	DMA_PAUSED = 2,
-	DMA_ERROR = 3,
-	DMA_OUT_OF_ORDER = 4,
-};
-
-enum dma_transaction_type {
-	DMA_MEMCPY = 0,
-	DMA_XOR = 1,
-	DMA_PQ = 2,
-	DMA_XOR_VAL = 3,
-	DMA_PQ_VAL = 4,
-	DMA_MEMSET = 5,
-	DMA_MEMSET_SG = 6,
-	DMA_INTERRUPT = 7,
-	DMA_PRIVATE = 8,
-	DMA_ASYNC_TX = 9,
-	DMA_SLAVE = 10,
-	DMA_CYCLIC = 11,
-	DMA_INTERLEAVE = 12,
-	DMA_COMPLETION_NO_ORDER = 13,
-	DMA_REPEAT = 14,
-	DMA_LOAD_EOT = 15,
-	DMA_TX_TYPE_END = 16,
-};
-
-enum dma_transfer_direction {
-	DMA_MEM_TO_MEM = 0,
-	DMA_MEM_TO_DEV = 1,
-	DMA_DEV_TO_MEM = 2,
-	DMA_DEV_TO_DEV = 3,
-	DMA_TRANS_NONE = 4,
-};
-
-struct data_chunk {
-	size_t size;
-	size_t icg;
-	size_t dst_icg;
-	size_t src_icg;
-};
-
-struct dma_interleaved_template {
-	dma_addr_t src_start;
-	dma_addr_t dst_start;
-	enum dma_transfer_direction dir;
-	bool src_inc;
-	bool dst_inc;
-	bool src_sgl;
-	bool dst_sgl;
-	size_t numf;
-	size_t frame_size;
-	struct data_chunk sgl[0];
-};
-
-enum dma_ctrl_flags {
-	DMA_PREP_INTERRUPT = 1,
-	DMA_CTRL_ACK = 2,
-	DMA_PREP_PQ_DISABLE_P = 4,
-	DMA_PREP_PQ_DISABLE_Q = 8,
-	DMA_PREP_CONTINUE = 16,
-	DMA_PREP_FENCE = 32,
-	DMA_CTRL_REUSE = 64,
-	DMA_PREP_CMD = 128,
-	DMA_PREP_REPEAT = 256,
-	DMA_PREP_LOAD_EOT = 512,
-};
-
-enum sum_check_bits {
-	SUM_CHECK_P = 0,
-	SUM_CHECK_Q = 1,
-};
-
-enum sum_check_flags {
-	SUM_CHECK_P_RESULT = 1,
-	SUM_CHECK_Q_RESULT = 2,
-};
-
-typedef struct {
-	long unsigned int bits[1];
-} dma_cap_mask_t;
-
-enum dma_desc_metadata_mode {
-	DESC_METADATA_NONE = 0,
-	DESC_METADATA_CLIENT = 1,
-	DESC_METADATA_ENGINE = 2,
-};
-
-struct dma_chan_percpu {
-	long unsigned int memcpy_count;
-	long unsigned int bytes_transferred;
-};
-
-struct dma_router {
-	struct device *dev;
-	void (*route_free)(struct device *, void *);
-};
-
-struct dma_device;
-
-struct dma_chan_dev;
-
-struct dma_chan___2 {
-	struct dma_device *device;
-	struct device *slave;
-	dma_cookie_t cookie;
-	dma_cookie_t completed_cookie;
-	int chan_id;
-	struct dma_chan_dev *dev;
-	const char *name;
-	char *dbg_client_name;
-	struct list_head device_node;
-	struct dma_chan_percpu *local;
-	int client_count;
-	int table_count;
-	struct dma_router *router;
-	void *route_data;
-	void *private;
-};
-
-typedef bool (*dma_filter_fn)(struct dma_chan___2 *, void *);
-
-struct dma_slave_map;
-
-struct dma_filter {
-	dma_filter_fn fn;
-	int mapcnt;
-	const struct dma_slave_map *map;
-};
-
-enum dmaengine_alignment {
-	DMAENGINE_ALIGN_1_BYTE = 0,
-	DMAENGINE_ALIGN_2_BYTES = 1,
-	DMAENGINE_ALIGN_4_BYTES = 2,
-	DMAENGINE_ALIGN_8_BYTES = 3,
-	DMAENGINE_ALIGN_16_BYTES = 4,
-	DMAENGINE_ALIGN_32_BYTES = 5,
-	DMAENGINE_ALIGN_64_BYTES = 6,
-};
-
-enum dma_residue_granularity {
-	DMA_RESIDUE_GRANULARITY_DESCRIPTOR = 0,
-	DMA_RESIDUE_GRANULARITY_SEGMENT = 1,
-	DMA_RESIDUE_GRANULARITY_BURST = 2,
-};
-
-struct dma_async_tx_descriptor;
-
-struct dma_slave_caps;
-
-struct dma_slave_config;
-
-struct dma_tx_state;
-
-struct dma_device {
-	struct kref ref;
-	unsigned int chancnt;
-	unsigned int privatecnt;
-	struct list_head channels;
-	struct list_head global_node;
-	struct dma_filter filter;
-	dma_cap_mask_t cap_mask;
-	enum dma_desc_metadata_mode desc_metadata_modes;
-	short unsigned int max_xor;
-	short unsigned int max_pq;
-	enum dmaengine_alignment copy_align;
-	enum dmaengine_alignment xor_align;
-	enum dmaengine_alignment pq_align;
-	enum dmaengine_alignment fill_align;
-	int dev_id;
-	struct device *dev;
-	struct module *owner;
-	struct ida chan_ida;
-	struct mutex chan_mutex;
-	u32 src_addr_widths;
-	u32 dst_addr_widths;
-	u32 directions;
-	u32 min_burst;
-	u32 max_burst;
-	u32 max_sg_burst;
-	bool descriptor_reuse;
-	enum dma_residue_granularity residue_granularity;
-	int (*device_alloc_chan_resources)(struct dma_chan___2 *);
-	void (*device_free_chan_resources)(struct dma_chan___2 *);
-	struct dma_async_tx_descriptor * (*device_prep_dma_memcpy)(struct dma_chan___2 *, dma_addr_t, dma_addr_t, size_t, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_xor)(struct dma_chan___2 *, dma_addr_t, dma_addr_t *, unsigned int, size_t, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_xor_val)(struct dma_chan___2 *, dma_addr_t *, unsigned int, size_t, enum sum_check_flags *, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_pq)(struct dma_chan___2 *, dma_addr_t *, dma_addr_t *, unsigned int, const unsigned char *, size_t, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_pq_val)(struct dma_chan___2 *, dma_addr_t *, dma_addr_t *, unsigned int, const unsigned char *, size_t, enum sum_check_flags *, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_memset)(struct dma_chan___2 *, dma_addr_t, int, size_t, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_memset_sg)(struct dma_chan___2 *, struct scatterlist *, unsigned int, int, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_interrupt)(struct dma_chan___2 *, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_slave_sg)(struct dma_chan___2 *, struct scatterlist *, unsigned int, enum dma_transfer_direction, long unsigned int, void *);
-	struct dma_async_tx_descriptor * (*device_prep_dma_cyclic)(struct dma_chan___2 *, dma_addr_t, size_t, size_t, enum dma_transfer_direction, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_interleaved_dma)(struct dma_chan___2 *, struct dma_interleaved_template *, long unsigned int);
-	struct dma_async_tx_descriptor * (*device_prep_dma_imm_data)(struct dma_chan___2 *, dma_addr_t, u64, long unsigned int);
-	void (*device_caps)(struct dma_chan___2 *, struct dma_slave_caps *);
-	int (*device_config)(struct dma_chan___2 *, struct dma_slave_config *);
-	int (*device_pause)(struct dma_chan___2 *);
-	int (*device_resume)(struct dma_chan___2 *);
-	int (*device_terminate_all)(struct dma_chan___2 *);
-	void (*device_synchronize)(struct dma_chan___2 *);
-	enum dma_status (*device_tx_status)(struct dma_chan___2 *, dma_cookie_t, struct dma_tx_state *);
-	void (*device_issue_pending)(struct dma_chan___2 *);
-	void (*device_release)(struct dma_device *);
-	void (*dbg_summary_show)(struct seq_file *, struct dma_device *);
-	struct dentry *dbg_dev_root;
-};
-
-struct dma_chan_dev {
-	struct dma_chan___2 *chan;
-	struct device device;
-	int dev_id;
-};
-
-enum dma_slave_buswidth {
-	DMA_SLAVE_BUSWIDTH_UNDEFINED = 0,
-	DMA_SLAVE_BUSWIDTH_1_BYTE = 1,
-	DMA_SLAVE_BUSWIDTH_2_BYTES = 2,
-	DMA_SLAVE_BUSWIDTH_3_BYTES = 3,
-	DMA_SLAVE_BUSWIDTH_4_BYTES = 4,
-	DMA_SLAVE_BUSWIDTH_8_BYTES = 8,
-	DMA_SLAVE_BUSWIDTH_16_BYTES = 16,
-	DMA_SLAVE_BUSWIDTH_32_BYTES = 32,
-	DMA_SLAVE_BUSWIDTH_64_BYTES = 64,
-};
-
-struct dma_slave_config {
-	enum dma_transfer_direction direction;
-	phys_addr_t src_addr;
-	phys_addr_t dst_addr;
-	enum dma_slave_buswidth src_addr_width;
-	enum dma_slave_buswidth dst_addr_width;
-	u32 src_maxburst;
-	u32 dst_maxburst;
-	u32 src_port_window_size;
-	u32 dst_port_window_size;
-	bool device_fc;
-	unsigned int slave_id;
-};
-
-struct dma_slave_caps {
-	u32 src_addr_widths;
-	u32 dst_addr_widths;
-	u32 directions;
-	u32 min_burst;
-	u32 max_burst;
-	u32 max_sg_burst;
-	bool cmd_pause;
-	bool cmd_resume;
-	bool cmd_terminate;
-	enum dma_residue_granularity residue_granularity;
-	bool descriptor_reuse;
-};
-
-typedef void (*dma_async_tx_callback)(void *);
-
-enum dmaengine_tx_result {
-	DMA_TRANS_NOERROR = 0,
-	DMA_TRANS_READ_FAILED = 1,
-	DMA_TRANS_WRITE_FAILED = 2,
-	DMA_TRANS_ABORTED = 3,
-};
-
-struct dmaengine_result {
-	enum dmaengine_tx_result result;
-	u32 residue;
-};
-
-typedef void (*dma_async_tx_callback_result)(void *, const struct dmaengine_result *);
-
-struct dmaengine_unmap_data {
-	u16 map_cnt;
-	u8 to_cnt;
-	u8 from_cnt;
-	u8 bidi_cnt;
-	struct device *dev;
-	struct kref kref;
-	size_t len;
-	dma_addr_t addr[0];
-};
-
-struct dma_descriptor_metadata_ops {
-	int (*attach)(struct dma_async_tx_descriptor *, void *, size_t);
-	void * (*get_ptr)(struct dma_async_tx_descriptor *, size_t *, size_t *);
-	int (*set_len)(struct dma_async_tx_descriptor *, size_t);
-};
-
-struct dma_async_tx_descriptor {
-	dma_cookie_t cookie;
-	enum dma_ctrl_flags flags;
-	dma_addr_t phys;
-	struct dma_chan___2 *chan;
-	dma_cookie_t (*tx_submit)(struct dma_async_tx_descriptor *);
-	int (*desc_free)(struct dma_async_tx_descriptor *);
-	dma_async_tx_callback callback;
-	dma_async_tx_callback_result callback_result;
-	void *callback_param;
-	struct dmaengine_unmap_data *unmap;
-	enum dma_desc_metadata_mode desc_metadata_mode;
-	struct dma_descriptor_metadata_ops *metadata_ops;
-};
-
-struct dma_tx_state {
-	dma_cookie_t last;
-	dma_cookie_t used;
-	u32 residue;
-	u32 in_flight_bytes;
-};
-
-struct dma_slave_map {
-	const char *devname;
-	const char *slave;
-	void *param;
-};
-
 struct dma_chan_tbl_ent {
 	struct dma_chan___2 *chan;
 };
@@ -71351,6 +87946,420 @@ struct hsu_dma_chan {
 	struct hsu_dma_desc *desc;
 };
 
+struct of_dma {
+	struct list_head of_dma_controllers;
+	struct device_node *of_node;
+	struct dma_chan___2 * (*of_dma_xlate)(struct of_phandle_args *, struct of_dma *);
+	void * (*of_dma_route_allocate)(struct of_phandle_args *, struct of_dma *);
+	struct dma_router *dma_router;
+	void *of_dma_data;
+};
+
+enum ldma_chan_on_off {
+	DMA_CH_OFF = 0,
+	DMA_CH_ON = 1,
+};
+
+enum {
+	DMA_TYPE_TX = 0,
+	DMA_TYPE_RX = 1,
+	DMA_TYPE_MCPY = 2,
+};
+
+struct ldma_port;
+
+struct dw2_desc_sw;
+
+struct ldma_chan {
+	struct virt_dma_chan vchan;
+	struct ldma_port *port;
+	char name[8];
+	int nr;
+	u32 flags;
+	enum ldma_chan_on_off onoff;
+	dma_addr_t desc_phys;
+	void *desc_base;
+	u32 desc_cnt;
+	int rst;
+	u32 hdrm_len;
+	bool hdrm_csum;
+	u32 boff_len;
+	u32 data_endian;
+	u32 desc_endian;
+	bool pden;
+	bool desc_rx_np;
+	bool data_endian_en;
+	bool desc_endian_en;
+	bool abc_en;
+	bool desc_init;
+	struct dma_pool *desc_pool;
+	u32 desc_num;
+	struct dw2_desc_sw *ds;
+	struct work_struct work;
+	struct dma_slave_config config;
+};
+
+struct ldma_dev;
+
+struct ldma_port {
+	struct ldma_dev *ldev;
+	u32 portid;
+	u32 rxbl;
+	u32 txbl;
+	u32 rxendi;
+	u32 txendi;
+	u32 pkt_drop;
+};
+
+struct dw2_desc;
+
+struct dw2_desc_sw {
+	struct virt_dma_desc vdesc;
+	struct ldma_chan *chan;
+	dma_addr_t desc_phys;
+	size_t desc_cnt;
+	size_t size;
+	struct dw2_desc *desc_hw;
+};
+
+struct reset_control;
+
+struct ldma_inst_data;
+
+struct ldma_dev {
+	struct device *dev;
+	void *base;
+	struct reset_control *rst;
+	struct clk *core_clk;
+	struct dma_device dma_dev;
+	u32 ver;
+	int irq;
+	struct ldma_port *ports;
+	struct ldma_chan *chans;
+	spinlock_t dev_lock;
+	u32 chan_nrs;
+	u32 port_nrs;
+	u32 channels_mask;
+	u32 flags;
+	u32 pollcnt;
+	const struct ldma_inst_data *inst;
+	struct workqueue_struct *wq;
+};
+
+struct ldma_inst_data {
+	bool desc_in_sram;
+	bool chan_fc;
+	bool desc_fod;
+	bool valid_desc_fetch_ack;
+	u32 orrc;
+	const char *name;
+	u32 type;
+};
+
+struct dw2_desc {
+	u32 field;
+	u32 addr;
+};
+
+struct virtio_driver {
+	struct device_driver driver;
+	const struct virtio_device_id *id_table;
+	const unsigned int *feature_table;
+	unsigned int feature_table_size;
+	const unsigned int *feature_table_legacy;
+	unsigned int feature_table_size_legacy;
+	int (*validate)(struct virtio_device *);
+	int (*probe)(struct virtio_device *);
+	void (*scan)(struct virtio_device *);
+	void (*remove)(struct virtio_device *);
+	void (*config_changed)(struct virtio_device *);
+	int (*freeze)(struct virtio_device *);
+	int (*restore)(struct virtio_device *);
+};
+
+typedef __u16 __virtio16;
+
+typedef __u32 __virtio32;
+
+typedef __u64 __virtio64;
+
+struct vring_desc {
+	__virtio64 addr;
+	__virtio32 len;
+	__virtio16 flags;
+	__virtio16 next;
+};
+
+struct vring_avail {
+	__virtio16 flags;
+	__virtio16 idx;
+	__virtio16 ring[0];
+};
+
+struct vring_used_elem {
+	__virtio32 id;
+	__virtio32 len;
+};
+
+typedef struct vring_used_elem vring_used_elem_t;
+
+struct vring_used {
+	__virtio16 flags;
+	__virtio16 idx;
+	vring_used_elem_t ring[0];
+};
+
+typedef struct vring_desc vring_desc_t;
+
+typedef struct vring_avail vring_avail_t;
+
+typedef struct vring_used vring_used_t;
+
+struct vring {
+	unsigned int num;
+	vring_desc_t *desc;
+	vring_avail_t *avail;
+	vring_used_t *used;
+};
+
+struct vring_packed_desc_event {
+	__le16 off_wrap;
+	__le16 flags;
+};
+
+struct vring_packed_desc {
+	__le64 addr;
+	__le32 len;
+	__le16 id;
+	__le16 flags;
+};
+
+struct vring_desc_state_split {
+	void *data;
+	struct vring_desc *indir_desc;
+};
+
+struct vring_desc_state_packed {
+	void *data;
+	struct vring_packed_desc *indir_desc;
+	u16 num;
+	u16 last;
+};
+
+struct vring_desc_extra {
+	dma_addr_t addr;
+	u32 len;
+	u16 flags;
+	u16 next;
+};
+
+struct vring_virtqueue {
+	struct virtqueue vq;
+	bool packed_ring;
+	bool use_dma_api;
+	bool weak_barriers;
+	bool broken;
+	bool indirect;
+	bool event;
+	unsigned int free_head;
+	unsigned int num_added;
+	u16 last_used_idx;
+	bool event_triggered;
+	union {
+		struct {
+			struct vring vring;
+			u16 avail_flags_shadow;
+			u16 avail_idx_shadow;
+			struct vring_desc_state_split *desc_state;
+			struct vring_desc_extra *desc_extra;
+			dma_addr_t queue_dma_addr;
+			size_t queue_size_in_bytes;
+		} split;
+		struct {
+			struct {
+				unsigned int num;
+				struct vring_packed_desc *desc;
+				struct vring_packed_desc_event *driver;
+				struct vring_packed_desc_event *device;
+			} vring;
+			bool avail_wrap_counter;
+			bool used_wrap_counter;
+			u16 avail_used_flags;
+			u16 next_avail_idx;
+			u16 event_flags_shadow;
+			struct vring_desc_state_packed *desc_state;
+			struct vring_desc_extra *desc_extra;
+			dma_addr_t ring_dma_addr;
+			dma_addr_t driver_event_dma_addr;
+			dma_addr_t device_event_dma_addr;
+			size_t ring_size_in_bytes;
+			size_t event_size_in_bytes;
+		} packed;
+	};
+	bool (*notify)(struct virtqueue *);
+	bool we_own_ring;
+};
+
+struct virtio_pci_common_cfg {
+	__le32 device_feature_select;
+	__le32 device_feature;
+	__le32 guest_feature_select;
+	__le32 guest_feature;
+	__le16 msix_config;
+	__le16 num_queues;
+	__u8 device_status;
+	__u8 config_generation;
+	__le16 queue_select;
+	__le16 queue_size;
+	__le16 queue_msix_vector;
+	__le16 queue_enable;
+	__le16 queue_notify_off;
+	__le32 queue_desc_lo;
+	__le32 queue_desc_hi;
+	__le32 queue_avail_lo;
+	__le32 queue_avail_hi;
+	__le32 queue_used_lo;
+	__le32 queue_used_hi;
+};
+
+struct virtio_pci_modern_device {
+	struct pci_dev *pci_dev;
+	struct virtio_pci_common_cfg *common;
+	void *device;
+	void *notify_base;
+	resource_size_t notify_pa;
+	u8 *isr;
+	size_t notify_len;
+	size_t device_len;
+	int notify_map_cap;
+	u32 notify_offset_multiplier;
+	int modern_bars;
+	struct virtio_device_id id;
+};
+
+struct virtio_mmio_device {
+	struct virtio_device vdev;
+	struct platform_device *pdev;
+	void *base;
+	long unsigned int version;
+	spinlock_t lock;
+	struct list_head virtqueues;
+};
+
+struct virtio_mmio_vq_info {
+	struct virtqueue *vq;
+	struct list_head node;
+};
+
+struct virtio_pci_vq_info {
+	struct virtqueue *vq;
+	struct list_head node;
+	unsigned int msix_vector;
+};
+
+struct virtio_pci_device {
+	struct virtio_device vdev;
+	struct pci_dev *pci_dev;
+	struct virtio_pci_modern_device mdev;
+	u8 *isr;
+	void *ioaddr;
+	spinlock_t lock;
+	struct list_head virtqueues;
+	struct virtio_pci_vq_info **vqs;
+	int msix_enabled;
+	int intx_enabled;
+	cpumask_var_t *msix_affinity_masks;
+	char (*msix_names)[256];
+	unsigned int msix_vectors;
+	unsigned int msix_used_vectors;
+	bool per_vq_vectors;
+	struct virtqueue * (*setup_vq)(struct virtio_pci_device *, struct virtio_pci_vq_info *, unsigned int, void (*)(struct virtqueue *), const char *, bool, u16);
+	void (*del_vq)(struct virtio_pci_vq_info *);
+	u16 (*config_vector)(struct virtio_pci_device *, u16);
+};
+
+enum {
+	VP_MSIX_CONFIG_VECTOR = 0,
+	VP_MSIX_VQ_VECTOR = 1,
+};
+
+struct virtio_balloon_config {
+	__le32 num_pages;
+	__le32 actual;
+	union {
+		__le32 free_page_hint_cmd_id;
+		__le32 free_page_report_cmd_id;
+	};
+	__le32 poison_val;
+};
+
+struct virtio_balloon_stat {
+	__virtio16 tag;
+	__virtio64 val;
+} __attribute__((packed));
+
+enum virtio_balloon_vq {
+	VIRTIO_BALLOON_VQ_INFLATE = 0,
+	VIRTIO_BALLOON_VQ_DEFLATE = 1,
+	VIRTIO_BALLOON_VQ_STATS = 2,
+	VIRTIO_BALLOON_VQ_FREE_PAGE = 3,
+	VIRTIO_BALLOON_VQ_REPORTING = 4,
+	VIRTIO_BALLOON_VQ_MAX = 5,
+};
+
+enum virtio_balloon_config_read {
+	VIRTIO_BALLOON_CONFIG_READ_CMD_ID = 0,
+};
+
+struct virtio_balloon {
+	struct virtio_device *vdev;
+	struct virtqueue *inflate_vq;
+	struct virtqueue *deflate_vq;
+	struct virtqueue *stats_vq;
+	struct virtqueue *free_page_vq;
+	struct workqueue_struct *balloon_wq;
+	struct work_struct report_free_page_work;
+	struct work_struct update_balloon_stats_work;
+	struct work_struct update_balloon_size_work;
+	spinlock_t stop_update_lock;
+	bool stop_update;
+	long unsigned int config_read_bitmap;
+	struct list_head free_page_list;
+	spinlock_t free_page_list_lock;
+	long unsigned int num_free_page_blocks;
+	u32 cmd_id_received_cache;
+	__virtio32 cmd_id_active;
+	__virtio32 cmd_id_stop;
+	wait_queue_head_t acked;
+	unsigned int num_pages;
+	struct balloon_dev_info vb_dev_info;
+	struct mutex balloon_lock;
+	unsigned int num_pfns;
+	__virtio32 pfns[256];
+	struct virtio_balloon_stat stats[10];
+	struct shrinker shrinker;
+	struct notifier_block oom_nb;
+	struct virtqueue *reporting_vq;
+	struct page_reporting_dev_info pr_dev_info;
+};
+
+struct xsd_errors {
+	int errnum;
+	const char *errstring;
+};
+
+struct xenbus_watch {
+	struct list_head list;
+	const char *node;
+	unsigned int nr_pending;
+	bool (*will_handle)(struct xenbus_watch *, const char *, const char *);
+	void (*callback)(struct xenbus_watch *, const char *, const char *);
+};
+
+struct xenbus_transaction {
+	u32 id;
+};
+
 struct grant_entry_v1 {
 	uint16_t flags;
 	domid_t domid;
@@ -71459,6 +88468,16 @@ struct gnttab_page_cache {
 	unsigned int num_pages;
 };
 
+struct gnttab_dma_alloc_args {
+	struct device *dev;
+	bool coherent;
+	int nr_pages;
+	struct page **pages;
+	xen_pfn_t *frames;
+	void *vaddr;
+	dma_addr_t dev_bus_addr;
+};
+
 struct xen_page_foreign {
 	domid_t domid;
 	grant_ref_t gref;
@@ -71470,7 +88489,7 @@ struct gnttab_ops {
 	unsigned int version;
 	unsigned int grefs_per_grant_frame;
 	int (*map_frames)(xen_pfn_t *, unsigned int);
-	void (*unmap_frames)();
+	void (*unmap_frames)(void);
 	void (*update_entry)(grant_ref_t, domid_t, long unsigned int, unsigned int);
 	int (*end_foreign_access_ref)(grant_ref_t, int);
 	long unsigned int (*end_foreign_transfer_ref)(grant_ref_t);
@@ -71529,7 +88548,7 @@ struct suspend_info {
 struct shutdown_handler {
 	const char command[11];
 	bool flag;
-	void (*cb)();
+	void (*cb)(void);
 };
 
 struct vcpu_runstate_info {
@@ -71656,11 +88675,41 @@ struct physdev_get_free_pirq {
 	uint32_t pirq;
 };
 
+enum xenbus_state {
+	XenbusStateUnknown = 0,
+	XenbusStateInitialising = 1,
+	XenbusStateInitWait = 2,
+	XenbusStateInitialised = 3,
+	XenbusStateConnected = 4,
+	XenbusStateClosing = 5,
+	XenbusStateClosed = 6,
+	XenbusStateReconfiguring = 7,
+	XenbusStateReconfigured = 8,
+};
+
+struct xenbus_device {
+	const char *devicetype;
+	const char *nodename;
+	const char *otherend;
+	int otherend_id;
+	struct xenbus_watch otherend_watch;
+	struct device dev;
+	enum xenbus_state state;
+	struct completion down;
+	struct work_struct work;
+	struct semaphore reclaim_sem;
+	atomic_t event_channels;
+	atomic_t events;
+	atomic_t spurious_events;
+	atomic_t jiffies_eoi_delayed;
+	unsigned int spurious_threshold;
+};
+
 struct evtchn_loop_ctrl;
 
 struct evtchn_ops {
-	unsigned int (*max_channels)();
-	unsigned int (*nr_channels)();
+	unsigned int (*max_channels)(void);
+	unsigned int (*nr_channels)(void);
 	int (*setup)(evtchn_port_t);
 	void (*remove)(evtchn_port_t, unsigned int);
 	void (*bind_to_cpu)(evtchn_port_t, unsigned int, unsigned int);
@@ -71670,7 +88719,7 @@ struct evtchn_ops {
 	void (*mask)(evtchn_port_t);
 	void (*unmask)(evtchn_port_t);
 	void (*handle_events)(unsigned int, struct evtchn_loop_ctrl *);
-	void (*resume)();
+	void (*resume)(void);
 	int (*percpu_init)(unsigned int);
 	int (*percpu_deinit)(unsigned int);
 };
@@ -71692,8 +88741,10 @@ enum xen_irq_type {
 struct irq_info {
 	struct list_head list;
 	struct list_head eoi_list;
+	struct rcu_work rwork;
 	short int refcnt;
-	short int spurious_cnt;
+	u8 spurious_cnt;
+	u8 is_accounted;
 	short int type;
 	u8 mask_reason;
 	u8 is_active;
@@ -71714,6 +88765,7 @@ struct irq_info {
 			unsigned char flags;
 			uint16_t domid;
 		} pirq;
+		struct xenbus_device *interdomain;
 	} u;
 };
 
@@ -71874,6 +88926,26 @@ enum xenstore_init {
 	XS_LOCAL = 3,
 };
 
+struct xenbus_device_id {
+	char devicetype[32];
+};
+
+struct xenbus_driver {
+	const char *name;
+	const struct xenbus_device_id *ids;
+	bool allow_rebind;
+	int (*probe)(struct xenbus_device *, const struct xenbus_device_id *);
+	void (*otherend_changed)(struct xenbus_device *, enum xenbus_state);
+	int (*remove)(struct xenbus_device *);
+	int (*suspend)(struct xenbus_device *);
+	int (*resume)(struct xenbus_device *);
+	int (*uevent)(struct xenbus_device *, struct kobj_uevent_env *);
+	struct device_driver driver;
+	int (*read_otherend_details)(struct xenbus_device *);
+	int (*is_ready)(struct xenbus_device *);
+	void (*reclaim_memory)(struct xenbus_device *);
+};
+
 struct xen_hvm_param {
 	domid_t domid;
 	uint32_t index;
@@ -71973,17 +89045,6 @@ struct physdev_pci_device {
 	uint8_t devfn;
 };
 
-struct pci_mmcfg_region {
-	struct list_head list;
-	struct resource res;
-	u64 address;
-	char *virt;
-	u16 segment;
-	u8 start_bus;
-	u8 end_bus;
-	char name[30];
-};
-
 struct usb_device_descriptor {
 	__u8 bLength;
 	__u8 bDescriptorType;
@@ -72140,6 +89201,13 @@ enum usb3_link_state {
 	USB3_LPM_U3 = 3,
 };
 
+enum usb_ssp_rate {
+	USB_SSP_GEN_UNKNOWN = 0,
+	USB_SSP_GEN_2x1 = 1,
+	USB_SSP_GEN_1x2 = 2,
+	USB_SSP_GEN_2x2 = 3,
+};
+
 struct ep_device;
 
 struct usb_host_endpoint {
@@ -72252,12 +89320,6 @@ struct usb_bus {
 
 struct wusb_dev;
 
-enum usb_device_removable {
-	USB_DEVICE_REMOVABLE_UNKNOWN = 0,
-	USB_DEVICE_REMOVABLE = 1,
-	USB_DEVICE_FIXED = 2,
-};
-
 struct usb2_lpm_parameters {
 	unsigned int besl;
 	int timeout;
@@ -72280,6 +89342,7 @@ struct usb_device {
 	enum usb_device_speed speed;
 	unsigned int rx_lanes;
 	unsigned int tx_lanes;
+	enum usb_ssp_rate ssp_rate;
 	struct usb_tt *tt;
 	int ttport;
 	unsigned int toggle[2];
@@ -72327,7 +89390,6 @@ struct usb_device {
 	unsigned int port_is_suspended: 1;
 	struct wusb_dev *wusb_dev;
 	int slot_id;
-	enum usb_device_removable removable;
 	struct usb2_lpm_parameters l1_params;
 	struct usb3_lpm_parameters u1_params;
 	struct usb3_lpm_parameters u2_params;
@@ -72413,16 +89475,12 @@ enum usb_dev_authorize_policy {
 	USB_DEVICE_AUTHORIZE_INTERNAL = 2,
 };
 
+struct hc_driver;
+
 struct usb_phy;
 
 struct usb_phy_roothub;
 
-struct dma_pool;
-
-struct gen_pool;
-
-struct hc_driver;
-
 struct usb_hcd {
 	struct usb_bus self;
 	struct kref kref;
@@ -72513,6 +89571,7 @@ struct hc_driver {
 	int (*disable_usb3_lpm_timeout)(struct usb_hcd *, struct usb_device *, enum usb3_link_state);
 	int (*find_raw_port_number)(struct usb_hcd *, int);
 	int (*port_power)(struct usb_hcd *, int, bool);
+	int (*submit_single_step_set_feature)(struct usb_hcd *, struct urb *, int);
 };
 
 struct physdev_dbgp_op {
@@ -72527,6 +89586,7 @@ struct pcpu {
 	struct list_head list;
 	struct device dev;
 	uint32_t cpu_id;
+	uint32_t acpi_id;
 	uint32_t flags;
 };
 
@@ -72771,128 +89831,6 @@ struct ww_class {
 	unsigned int is_wait_die;
 };
 
-struct regulator_state {
-	int uV;
-	int min_uV;
-	int max_uV;
-	unsigned int mode;
-	int enabled;
-	bool changeable;
-};
-
-struct regulation_constraints {
-	const char *name;
-	int min_uV;
-	int max_uV;
-	int uV_offset;
-	int min_uA;
-	int max_uA;
-	int ilim_uA;
-	int system_load;
-	u32 *max_spread;
-	int max_uV_step;
-	unsigned int valid_modes_mask;
-	unsigned int valid_ops_mask;
-	int input_uV;
-	struct regulator_state state_disk;
-	struct regulator_state state_mem;
-	struct regulator_state state_standby;
-	suspend_state_t initial_state;
-	unsigned int initial_mode;
-	unsigned int ramp_delay;
-	unsigned int settling_time;
-	unsigned int settling_time_up;
-	unsigned int settling_time_down;
-	unsigned int enable_time;
-	unsigned int active_discharge;
-	unsigned int always_on: 1;
-	unsigned int boot_on: 1;
-	unsigned int apply_uV: 1;
-	unsigned int ramp_disable: 1;
-	unsigned int soft_start: 1;
-	unsigned int pull_down: 1;
-	unsigned int over_current_protection: 1;
-};
-
-struct regulator_consumer_supply;
-
-struct regulator_init_data {
-	const char *supply_regulator;
-	struct regulation_constraints constraints;
-	int num_consumer_supplies;
-	struct regulator_consumer_supply *consumer_supplies;
-	int (*regulator_init)(void *);
-	void *driver_data;
-};
-
-enum regulator_type {
-	REGULATOR_VOLTAGE = 0,
-	REGULATOR_CURRENT = 1,
-};
-
-struct regulator_config;
-
-struct regulator_ops;
-
-struct regulator_desc {
-	const char *name;
-	const char *supply_name;
-	const char *of_match;
-	const char *regulators_node;
-	int (*of_parse_cb)(struct device_node *, const struct regulator_desc *, struct regulator_config *);
-	int id;
-	unsigned int continuous_voltage_range: 1;
-	unsigned int n_voltages;
-	unsigned int n_current_limits;
-	const struct regulator_ops *ops;
-	int irq;
-	enum regulator_type type;
-	struct module *owner;
-	unsigned int min_uV;
-	unsigned int uV_step;
-	unsigned int linear_min_sel;
-	int fixed_uV;
-	unsigned int ramp_delay;
-	int min_dropout_uV;
-	const struct linear_range *linear_ranges;
-	const unsigned int *linear_range_selectors;
-	int n_linear_ranges;
-	const unsigned int *volt_table;
-	const unsigned int *curr_table;
-	unsigned int vsel_range_reg;
-	unsigned int vsel_range_mask;
-	unsigned int vsel_reg;
-	unsigned int vsel_mask;
-	unsigned int vsel_step;
-	unsigned int csel_reg;
-	unsigned int csel_mask;
-	unsigned int apply_reg;
-	unsigned int apply_bit;
-	unsigned int enable_reg;
-	unsigned int enable_mask;
-	unsigned int enable_val;
-	unsigned int disable_val;
-	bool enable_is_inverted;
-	unsigned int bypass_reg;
-	unsigned int bypass_mask;
-	unsigned int bypass_val_on;
-	unsigned int bypass_val_off;
-	unsigned int active_discharge_on;
-	unsigned int active_discharge_off;
-	unsigned int active_discharge_mask;
-	unsigned int active_discharge_reg;
-	unsigned int soft_start_reg;
-	unsigned int soft_start_mask;
-	unsigned int soft_start_val_on;
-	unsigned int pull_down_reg;
-	unsigned int pull_down_mask;
-	unsigned int pull_down_val_on;
-	unsigned int enable_time;
-	unsigned int off_on_delay;
-	unsigned int poll_enabled_time;
-	unsigned int (*of_map_mode)(unsigned int);
-};
-
 struct pre_voltage_change_data {
 	long unsigned int old_uV;
 	long unsigned int min_uV;
@@ -72910,8 +89848,6 @@ struct regulator_voltage {
 	int max_uV;
 };
 
-struct regulator_dev;
-
 struct regulator {
 	struct device *dev;
 	struct list_head list;
@@ -72935,43 +89871,6 @@ struct regulator_coupler {
 	int (*balance_voltage)(struct regulator_coupler *, struct regulator_dev *, suspend_state_t);
 };
 
-struct coupling_desc {
-	struct regulator_dev **coupled_rdevs;
-	struct regulator_coupler *coupler;
-	int n_resolved;
-	int n_coupled;
-};
-
-struct regulator_enable_gpio;
-
-struct regulator_dev {
-	const struct regulator_desc *desc;
-	int exclusive;
-	u32 use_count;
-	u32 open_count;
-	u32 bypass_count;
-	struct list_head list;
-	struct list_head consumer_list;
-	struct coupling_desc coupling_desc;
-	struct blocking_notifier_head notifier;
-	struct ww_mutex mutex;
-	struct task_struct *mutex_owner;
-	int ref_cnt;
-	struct module *owner;
-	struct device dev;
-	struct regulation_constraints *constraints;
-	struct regulator *supply;
-	const char *supply_name;
-	struct regmap *regmap;
-	struct delayed_work disable_work;
-	void *reg_data;
-	struct dentry *debugfs;
-	struct regulator_enable_gpio *ena_pin;
-	unsigned int ena_gpio_state: 1;
-	unsigned int is_switch: 1;
-	long unsigned int last_off_jiffy;
-};
-
 enum regulator_status {
 	REGULATOR_STATUS_OFF = 0,
 	REGULATOR_STATUS_ON = 1,
@@ -72984,49 +89883,10 @@ enum regulator_status {
 	REGULATOR_STATUS_UNDEFINED = 8,
 };
 
-struct regulator_ops {
-	int (*list_voltage)(struct regulator_dev *, unsigned int);
-	int (*set_voltage)(struct regulator_dev *, int, int, unsigned int *);
-	int (*map_voltage)(struct regulator_dev *, int, int);
-	int (*set_voltage_sel)(struct regulator_dev *, unsigned int);
-	int (*get_voltage)(struct regulator_dev *);
-	int (*get_voltage_sel)(struct regulator_dev *);
-	int (*set_current_limit)(struct regulator_dev *, int, int);
-	int (*get_current_limit)(struct regulator_dev *);
-	int (*set_input_current_limit)(struct regulator_dev *, int);
-	int (*set_over_current_protection)(struct regulator_dev *);
-	int (*set_active_discharge)(struct regulator_dev *, bool);
-	int (*enable)(struct regulator_dev *);
-	int (*disable)(struct regulator_dev *);
-	int (*is_enabled)(struct regulator_dev *);
-	int (*set_mode)(struct regulator_dev *, unsigned int);
-	unsigned int (*get_mode)(struct regulator_dev *);
-	int (*get_error_flags)(struct regulator_dev *, unsigned int *);
-	int (*enable_time)(struct regulator_dev *);
-	int (*set_ramp_delay)(struct regulator_dev *, int);
-	int (*set_voltage_time)(struct regulator_dev *, int, int);
-	int (*set_voltage_time_sel)(struct regulator_dev *, unsigned int, unsigned int);
-	int (*set_soft_start)(struct regulator_dev *);
-	int (*get_status)(struct regulator_dev *);
-	unsigned int (*get_optimum_mode)(struct regulator_dev *, int, int, int);
-	int (*set_load)(struct regulator_dev *, int);
-	int (*set_bypass)(struct regulator_dev *, bool);
-	int (*get_bypass)(struct regulator_dev *, bool *);
-	int (*set_suspend_voltage)(struct regulator_dev *, int);
-	int (*set_suspend_enable)(struct regulator_dev *);
-	int (*set_suspend_disable)(struct regulator_dev *);
-	int (*set_suspend_mode)(struct regulator_dev *, unsigned int);
-	int (*resume)(struct regulator_dev *);
-	int (*set_pull_down)(struct regulator_dev *);
-};
-
-struct regulator_config {
-	struct device *dev;
-	const struct regulator_init_data *init_data;
-	void *driver_data;
-	struct device_node *of_node;
-	struct regmap *regmap;
-	struct gpio_desc *ena_gpiod;
+enum regulator_detection_severity {
+	REGULATOR_SEVERITY_PROT = 0,
+	REGULATOR_SEVERITY_ERR = 1,
+	REGULATOR_SEVERITY_WARN = 2,
 };
 
 struct regulator_enable_gpio {
@@ -73152,6 +90012,34 @@ struct fixed_regulator_data {
 	struct platform_device pdev;
 };
 
+struct regulator_err_state {
+	struct regulator_dev *rdev;
+	long unsigned int notifs;
+	long unsigned int errors;
+	int possible_errs;
+};
+
+struct regulator_irq_data {
+	struct regulator_err_state *states;
+	int num_states;
+	void *data;
+	long int opaque;
+};
+
+struct regulator_irq_desc {
+	const char *name;
+	int irq_flags;
+	int fatal_cnt;
+	int reread_ms;
+	int irq_off_ms;
+	bool skip_off;
+	bool high_prio;
+	void *data;
+	int (*die)(struct regulator_irq_data *);
+	int (*map_event)(int, struct regulator_irq_data *, long unsigned int *);
+	int (*renable)(struct regulator_irq_data *);
+};
+
 struct regulator_bulk_devres {
 	struct regulator_bulk_data *consumers;
 	int num_consumers;
@@ -73167,8 +90055,39 @@ struct regulator_notifier_match {
 	struct notifier_block *nb;
 };
 
+enum {
+	REGULATOR_ERROR_CLEARED = 0,
+	REGULATOR_FAILED_RETRY = 1,
+	REGULATOR_ERROR_ON = 2,
+};
+
+struct regulator_irq {
+	struct regulator_irq_data rdata;
+	struct regulator_irq_desc desc;
+	int irq;
+	int retry_cnt;
+	struct delayed_work isr_work;
+};
+
+struct reset_control_bulk_data {
+	const char *id;
+	struct reset_control *rstc;
+};
+
 struct reset_controller_dev;
 
+struct reset_control {
+	struct reset_controller_dev *rcdev;
+	struct list_head list;
+	unsigned int id;
+	struct kref refcnt;
+	bool acquired;
+	bool shared;
+	bool array;
+	atomic_t deassert_count;
+	atomic_t triggered_count;
+};
+
 struct reset_control_ops {
 	int (*reset)(struct reset_controller_dev *, long unsigned int);
 	int (*assert)(struct reset_controller_dev *, long unsigned int);
@@ -73196,24 +90115,17 @@ struct reset_control_lookup {
 	const char *con_id;
 };
 
-struct reset_control {
-	struct reset_controller_dev *rcdev;
-	struct list_head list;
-	unsigned int id;
-	struct kref refcnt;
-	bool acquired;
-	bool shared;
-	bool array;
-	atomic_t deassert_count;
-	atomic_t triggered_count;
-};
-
 struct reset_control_array {
 	struct reset_control base;
 	unsigned int num_rstcs;
 	struct reset_control *rstc[0];
 };
 
+struct reset_control_bulk_devres {
+	int num_rstcs;
+	struct reset_control_bulk_data *rstcs;
+};
+
 struct serial_struct32 {
 	compat_int_t type;
 	compat_int_t line;
@@ -73304,8 +90216,6 @@ struct ldsem_waiter {
 	struct task_struct *task;
 };
 
-struct pts_fs_info;
-
 struct tty_audit_buf {
 	struct mutex mutex;
 	dev_t dev;
@@ -73314,233 +90224,6 @@ struct tty_audit_buf {
 	unsigned char *data;
 };
 
-struct input_id {
-	__u16 bustype;
-	__u16 vendor;
-	__u16 product;
-	__u16 version;
-};
-
-struct input_absinfo {
-	__s32 value;
-	__s32 minimum;
-	__s32 maximum;
-	__s32 fuzz;
-	__s32 flat;
-	__s32 resolution;
-};
-
-struct input_keymap_entry {
-	__u8 flags;
-	__u8 len;
-	__u16 index;
-	__u32 keycode;
-	__u8 scancode[32];
-};
-
-struct ff_replay {
-	__u16 length;
-	__u16 delay;
-};
-
-struct ff_trigger {
-	__u16 button;
-	__u16 interval;
-};
-
-struct ff_envelope {
-	__u16 attack_length;
-	__u16 attack_level;
-	__u16 fade_length;
-	__u16 fade_level;
-};
-
-struct ff_constant_effect {
-	__s16 level;
-	struct ff_envelope envelope;
-};
-
-struct ff_ramp_effect {
-	__s16 start_level;
-	__s16 end_level;
-	struct ff_envelope envelope;
-};
-
-struct ff_condition_effect {
-	__u16 right_saturation;
-	__u16 left_saturation;
-	__s16 right_coeff;
-	__s16 left_coeff;
-	__u16 deadband;
-	__s16 center;
-};
-
-struct ff_periodic_effect {
-	__u16 waveform;
-	__u16 period;
-	__s16 magnitude;
-	__s16 offset;
-	__u16 phase;
-	struct ff_envelope envelope;
-	__u32 custom_len;
-	__s16 *custom_data;
-};
-
-struct ff_rumble_effect {
-	__u16 strong_magnitude;
-	__u16 weak_magnitude;
-};
-
-struct ff_effect {
-	__u16 type;
-	__s16 id;
-	__u16 direction;
-	struct ff_trigger trigger;
-	struct ff_replay replay;
-	union {
-		struct ff_constant_effect constant;
-		struct ff_ramp_effect ramp;
-		struct ff_periodic_effect periodic;
-		struct ff_condition_effect condition[2];
-		struct ff_rumble_effect rumble;
-	} u;
-};
-
-struct input_device_id {
-	kernel_ulong_t flags;
-	__u16 bustype;
-	__u16 vendor;
-	__u16 product;
-	__u16 version;
-	kernel_ulong_t evbit[1];
-	kernel_ulong_t keybit[12];
-	kernel_ulong_t relbit[1];
-	kernel_ulong_t absbit[1];
-	kernel_ulong_t mscbit[1];
-	kernel_ulong_t ledbit[1];
-	kernel_ulong_t sndbit[1];
-	kernel_ulong_t ffbit[2];
-	kernel_ulong_t swbit[1];
-	kernel_ulong_t propbit[1];
-	kernel_ulong_t driver_info;
-};
-
-struct input_value {
-	__u16 type;
-	__u16 code;
-	__s32 value;
-};
-
-enum input_clock_type {
-	INPUT_CLK_REAL = 0,
-	INPUT_CLK_MONO = 1,
-	INPUT_CLK_BOOT = 2,
-	INPUT_CLK_MAX = 3,
-};
-
-struct ff_device;
-
-struct input_dev_poller;
-
-struct input_mt;
-
-struct input_handle;
-
-struct input_dev {
-	const char *name;
-	const char *phys;
-	const char *uniq;
-	struct input_id id;
-	long unsigned int propbit[1];
-	long unsigned int evbit[1];
-	long unsigned int keybit[12];
-	long unsigned int relbit[1];
-	long unsigned int absbit[1];
-	long unsigned int mscbit[1];
-	long unsigned int ledbit[1];
-	long unsigned int sndbit[1];
-	long unsigned int ffbit[2];
-	long unsigned int swbit[1];
-	unsigned int hint_events_per_packet;
-	unsigned int keycodemax;
-	unsigned int keycodesize;
-	void *keycode;
-	int (*setkeycode)(struct input_dev *, const struct input_keymap_entry *, unsigned int *);
-	int (*getkeycode)(struct input_dev *, struct input_keymap_entry *);
-	struct ff_device *ff;
-	struct input_dev_poller *poller;
-	unsigned int repeat_key;
-	struct timer_list timer;
-	int rep[2];
-	struct input_mt *mt;
-	struct input_absinfo *absinfo;
-	long unsigned int key[12];
-	long unsigned int led[1];
-	long unsigned int snd[1];
-	long unsigned int sw[1];
-	int (*open)(struct input_dev *);
-	void (*close)(struct input_dev *);
-	int (*flush)(struct input_dev *, struct file *);
-	int (*event)(struct input_dev *, unsigned int, unsigned int, int);
-	struct input_handle *grab;
-	spinlock_t event_lock;
-	struct mutex mutex;
-	unsigned int users;
-	bool going_away;
-	struct device dev;
-	struct list_head h_list;
-	struct list_head node;
-	unsigned int num_vals;
-	unsigned int max_vals;
-	struct input_value *vals;
-	bool devres_managed;
-	ktime_t timestamp[3];
-};
-
-struct ff_device {
-	int (*upload)(struct input_dev *, struct ff_effect *, struct ff_effect *);
-	int (*erase)(struct input_dev *, int);
-	int (*playback)(struct input_dev *, int, int);
-	void (*set_gain)(struct input_dev *, u16);
-	void (*set_autocenter)(struct input_dev *, u16);
-	void (*destroy)(struct ff_device *);
-	void *private;
-	long unsigned int ffbit[2];
-	struct mutex mutex;
-	int max_effects;
-	struct ff_effect *effects;
-	struct file *effect_owners[0];
-};
-
-struct input_handler;
-
-struct input_handle {
-	void *private;
-	int open;
-	const char *name;
-	struct input_dev *dev;
-	struct input_handler *handler;
-	struct list_head d_node;
-	struct list_head h_node;
-};
-
-struct input_handler {
-	void *private;
-	void (*event)(struct input_handle *, unsigned int, unsigned int, int);
-	void (*events)(struct input_handle *, const struct input_value *, unsigned int);
-	bool (*filter)(struct input_handle *, unsigned int, unsigned int, int);
-	bool (*match)(struct input_handler *, struct input_dev *);
-	int (*connect)(struct input_handler *, struct input_dev *, const struct input_device_id *);
-	void (*disconnect)(struct input_handle *);
-	void (*start)(struct input_handle *);
-	bool legacy_minors;
-	int minor;
-	const char *name;
-	const struct input_device_id *id_table;
-	struct list_head h_list;
-	struct list_head node;
-};
-
 struct sysrq_state {
 	struct input_handle handle;
 	struct work_struct reinject_work;
@@ -73571,6 +90254,22 @@ struct unimapdesc {
 	struct unipair *entries;
 };
 
+struct kbentry {
+	unsigned char kb_table;
+	unsigned char kb_index;
+	short unsigned int kb_value;
+};
+
+struct kbsentry {
+	unsigned char kb_func;
+	unsigned char kb_string[512];
+};
+
+struct kbkeycode {
+	unsigned int scancode;
+	unsigned int keycode;
+};
+
 struct kbd_repeat {
 	int delay;
 	int period;
@@ -73674,103 +90373,6 @@ struct vc_selection {
 	int end;
 };
 
-enum led_brightness {
-	LED_OFF = 0,
-	LED_ON = 1,
-	LED_HALF = 127,
-	LED_FULL = 255,
-};
-
-struct led_hw_trigger_type {
-	int dummy;
-};
-
-struct led_pattern;
-
-struct led_trigger;
-
-struct led_classdev {
-	const char *name;
-	enum led_brightness brightness;
-	enum led_brightness max_brightness;
-	int flags;
-	long unsigned int work_flags;
-	void (*brightness_set)(struct led_classdev *, enum led_brightness);
-	int (*brightness_set_blocking)(struct led_classdev *, enum led_brightness);
-	enum led_brightness (*brightness_get)(struct led_classdev *);
-	int (*blink_set)(struct led_classdev *, long unsigned int *, long unsigned int *);
-	int (*pattern_set)(struct led_classdev *, struct led_pattern *, u32, int);
-	int (*pattern_clear)(struct led_classdev *);
-	struct device *dev;
-	const struct attribute_group **groups;
-	struct list_head node;
-	const char *default_trigger;
-	long unsigned int blink_delay_on;
-	long unsigned int blink_delay_off;
-	struct timer_list blink_timer;
-	int blink_brightness;
-	int new_blink_brightness;
-	void (*flash_resume)(struct led_classdev *);
-	struct work_struct set_brightness_work;
-	int delayed_set_value;
-	struct rw_semaphore trigger_lock;
-	struct led_trigger *trigger;
-	struct list_head trig_list;
-	void *trigger_data;
-	bool activated;
-	struct led_hw_trigger_type *trigger_type;
-	int brightness_hw_changed;
-	struct kernfs_node *brightness_hw_changed_kn;
-	struct mutex led_access;
-};
-
-struct led_pattern {
-	u32 delta_t;
-	int brightness;
-};
-
-struct led_trigger {
-	const char *name;
-	int (*activate)(struct led_classdev *);
-	void (*deactivate)(struct led_classdev *);
-	struct led_hw_trigger_type *trigger_type;
-	rwlock_t leddev_list_lock;
-	struct list_head led_cdevs;
-	struct list_head next_trig;
-	const struct attribute_group **groups;
-};
-
-struct keyboard_notifier_param {
-	struct vc_data *vc;
-	int down;
-	int shift;
-	int ledstate;
-	unsigned int value;
-};
-
-struct kbd_struct {
-	unsigned char lockstate;
-	unsigned char slockstate;
-	unsigned char ledmode: 1;
-	unsigned char ledflagstate: 4;
-	char: 3;
-	unsigned char default_ledflagstate: 4;
-	unsigned char kbdmode: 3;
-	int: 1;
-	unsigned char modeflags: 5;
-};
-
-struct kbentry {
-	unsigned char kb_table;
-	unsigned char kb_index;
-	short unsigned int kb_value;
-};
-
-struct kbsentry {
-	unsigned char kb_func;
-	unsigned char kb_string[512];
-};
-
 struct kbdiacr {
 	unsigned char diacr;
 	unsigned char base;
@@ -73793,9 +90395,24 @@ struct kbdiacrsuc {
 	struct kbdiacruc kbdiacruc[256];
 };
 
-struct kbkeycode {
-	unsigned int scancode;
-	unsigned int keycode;
+struct keyboard_notifier_param {
+	struct vc_data *vc;
+	int down;
+	int shift;
+	int ledstate;
+	unsigned int value;
+};
+
+struct kbd_struct {
+	unsigned char lockstate;
+	unsigned char slockstate;
+	unsigned char ledmode: 1;
+	unsigned char ledflagstate: 4;
+	char: 3;
+	unsigned char default_ledflagstate: 4;
+	unsigned char kbdmode: 3;
+	int: 1;
+	unsigned char modeflags: 5;
 };
 
 typedef void k_handler_fn(struct vc_data *, unsigned char, char);
@@ -73918,154 +90535,6 @@ struct hv_ops {
 	void (*dtr_rts)(struct hvc_struct *, int);
 };
 
-struct circ_buf {
-	char *buf;
-	int head;
-	int tail;
-};
-
-struct serial_rs485 {
-	__u32 flags;
-	__u32 delay_rts_before_send;
-	__u32 delay_rts_after_send;
-	__u32 padding[5];
-};
-
-struct serial_iso7816 {
-	__u32 flags;
-	__u32 tg;
-	__u32 sc_fi;
-	__u32 sc_di;
-	__u32 clk;
-	__u32 reserved[5];
-};
-
-struct uart_port;
-
-struct uart_ops {
-	unsigned int (*tx_empty)(struct uart_port *);
-	void (*set_mctrl)(struct uart_port *, unsigned int);
-	unsigned int (*get_mctrl)(struct uart_port *);
-	void (*stop_tx)(struct uart_port *);
-	void (*start_tx)(struct uart_port *);
-	void (*throttle)(struct uart_port *);
-	void (*unthrottle)(struct uart_port *);
-	void (*send_xchar)(struct uart_port *, char);
-	void (*stop_rx)(struct uart_port *);
-	void (*enable_ms)(struct uart_port *);
-	void (*break_ctl)(struct uart_port *, int);
-	int (*startup)(struct uart_port *);
-	void (*shutdown)(struct uart_port *);
-	void (*flush_buffer)(struct uart_port *);
-	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
-	void (*set_ldisc)(struct uart_port *, struct ktermios *);
-	void (*pm)(struct uart_port *, unsigned int, unsigned int);
-	const char * (*type)(struct uart_port *);
-	void (*release_port)(struct uart_port *);
-	int (*request_port)(struct uart_port *);
-	void (*config_port)(struct uart_port *, int);
-	int (*verify_port)(struct uart_port *, struct serial_struct *);
-	int (*ioctl)(struct uart_port *, unsigned int, long unsigned int);
-};
-
-struct uart_icount {
-	__u32 cts;
-	__u32 dsr;
-	__u32 rng;
-	__u32 dcd;
-	__u32 rx;
-	__u32 tx;
-	__u32 frame;
-	__u32 overrun;
-	__u32 parity;
-	__u32 brk;
-	__u32 buf_overrun;
-};
-
-typedef unsigned int upf_t;
-
-typedef unsigned int upstat_t;
-
-struct uart_state;
-
-struct uart_port {
-	spinlock_t lock;
-	long unsigned int iobase;
-	unsigned char *membase;
-	unsigned int (*serial_in)(struct uart_port *, int);
-	void (*serial_out)(struct uart_port *, int, int);
-	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
-	void (*set_ldisc)(struct uart_port *, struct ktermios *);
-	unsigned int (*get_mctrl)(struct uart_port *);
-	void (*set_mctrl)(struct uart_port *, unsigned int);
-	unsigned int (*get_divisor)(struct uart_port *, unsigned int, unsigned int *);
-	void (*set_divisor)(struct uart_port *, unsigned int, unsigned int, unsigned int);
-	int (*startup)(struct uart_port *);
-	void (*shutdown)(struct uart_port *);
-	void (*throttle)(struct uart_port *);
-	void (*unthrottle)(struct uart_port *);
-	int (*handle_irq)(struct uart_port *);
-	void (*pm)(struct uart_port *, unsigned int, unsigned int);
-	void (*handle_break)(struct uart_port *);
-	int (*rs485_config)(struct uart_port *, struct serial_rs485 *);
-	int (*iso7816_config)(struct uart_port *, struct serial_iso7816 *);
-	unsigned int irq;
-	long unsigned int irqflags;
-	unsigned int uartclk;
-	unsigned int fifosize;
-	unsigned char x_char;
-	unsigned char regshift;
-	unsigned char iotype;
-	unsigned char quirks;
-	unsigned int read_status_mask;
-	unsigned int ignore_status_mask;
-	struct uart_state *state;
-	struct uart_icount icount;
-	struct console *cons;
-	upf_t flags;
-	upstat_t status;
-	int hw_stopped;
-	unsigned int mctrl;
-	unsigned int timeout;
-	unsigned int type;
-	const struct uart_ops *ops;
-	unsigned int custom_divisor;
-	unsigned int line;
-	unsigned int minor;
-	resource_size_t mapbase;
-	resource_size_t mapsize;
-	struct device *dev;
-	long unsigned int sysrq;
-	unsigned int sysrq_ch;
-	unsigned char has_sysrq;
-	unsigned char sysrq_seq;
-	unsigned char hub6;
-	unsigned char suspended;
-	unsigned char console_reinit;
-	const char *name;
-	struct attribute_group *attr_group;
-	const struct attribute_group **tty_groups;
-	struct serial_rs485 rs485;
-	struct gpio_desc *rs485_term_gpio;
-	struct serial_iso7816 iso7816;
-	void *private_data;
-};
-
-enum uart_pm_state {
-	UART_PM_STATE_ON = 0,
-	UART_PM_STATE_OFF = 3,
-	UART_PM_STATE_UNDEFINED = 4,
-};
-
-struct uart_state {
-	struct tty_port port;
-	enum uart_pm_state pm_state;
-	struct circ_buf xmit;
-	atomic_t refcount;
-	wait_queue_head_t remove_wait;
-	struct uart_port *uart_port;
-};
-
 struct earlycon_device {
 	struct console *con;
 	struct uart_port port;
@@ -74102,6 +90571,7 @@ struct xencons_info {
 	int irq;
 	int vtermno;
 	grant_ref_t gntref;
+	spinlock_t ring_lock;
 };
 
 struct uart_driver {
@@ -74174,6 +90644,7 @@ struct uart_8250_port;
 struct uart_8250_ops {
 	int (*setup_irq)(struct uart_8250_port *);
 	void (*release_irq)(struct uart_8250_port *);
+	void (*setup_timer)(struct uart_8250_port *);
 };
 
 struct mctrl_gpios;
@@ -74188,7 +90659,6 @@ struct uart_8250_port {
 	struct list_head list;
 	u32 capabilities;
 	short unsigned int bugs;
-	bool fifo_bug;
 	unsigned int tx_loadsz;
 	unsigned char acr;
 	unsigned char fcr;
@@ -74226,6 +90696,8 @@ struct uart_8250_em485 {
 struct uart_8250_dma {
 	int (*tx_dma)(struct uart_8250_port *);
 	int (*rx_dma)(struct uart_8250_port *);
+	void (*prepare_tx_dma)(struct uart_8250_port *);
+	void (*prepare_rx_dma)(struct uart_8250_port *);
 	dma_filter_fn fn;
 	void *rx_param;
 	void *tx_param;
@@ -74347,7 +90819,7 @@ enum pci_board_num_t {
 	pbn_b0_4_1250000 = 11,
 	pbn_b0_2_1843200 = 12,
 	pbn_b0_4_1843200 = 13,
-	pbn_b0_1_3906250 = 14,
+	pbn_b0_1_15625000 = 14,
 	pbn_b0_bt_1_115200 = 15,
 	pbn_b0_bt_2_115200 = 16,
 	pbn_b0_bt_4_115200 = 17,
@@ -74405,10 +90877,10 @@ enum pci_board_num_t {
 	pbn_panacom4 = 69,
 	pbn_plx_romulus = 70,
 	pbn_oxsemi = 71,
-	pbn_oxsemi_1_3906250 = 72,
-	pbn_oxsemi_2_3906250 = 73,
-	pbn_oxsemi_4_3906250 = 74,
-	pbn_oxsemi_8_3906250 = 75,
+	pbn_oxsemi_1_15625000 = 72,
+	pbn_oxsemi_2_15625000 = 73,
+	pbn_oxsemi_4_15625000 = 74,
+	pbn_oxsemi_8_15625000 = 75,
 	pbn_intel_i960 = 76,
 	pbn_sgi_ioc3 = 77,
 	pbn_computone_4 = 78,
@@ -74455,22 +90927,6 @@ enum pci_board_num_t {
 	pbn_moxa8250_8p = 119,
 };
 
-struct reset_control;
-
-struct dw8250_data {
-	struct dw8250_port_data data;
-	u8 usr_reg;
-	int msr_mask_on;
-	int msr_mask_off;
-	struct clk *clk;
-	struct clk *pclk;
-	struct notifier_block clk_notifier;
-	struct work_struct clk_work;
-	struct reset_control *rst;
-	unsigned int skip_autocfg: 1;
-	unsigned int uart_16550_compatible: 1;
-};
-
 struct hsu_dma_slave {
 	struct device *dma_dev;
 	int chan_id;
@@ -74495,6 +90951,267 @@ struct mid8250 {
 	struct hsu_dma_chip dma_chip;
 };
 
+struct spi_device_id {
+	char name[32];
+	kernel_ulong_t driver_data;
+};
+
+struct ptp_system_timestamp {
+	struct timespec64 pre_ts;
+	struct timespec64 post_ts;
+};
+
+struct spi_statistics {
+	spinlock_t lock;
+	long unsigned int messages;
+	long unsigned int transfers;
+	long unsigned int errors;
+	long unsigned int timedout;
+	long unsigned int spi_sync;
+	long unsigned int spi_sync_immediate;
+	long unsigned int spi_async;
+	long long unsigned int bytes;
+	long long unsigned int bytes_rx;
+	long long unsigned int bytes_tx;
+	long unsigned int transfer_bytes_histo[17];
+	long unsigned int transfers_split_maxsize;
+};
+
+struct spi_delay {
+	u16 value;
+	u8 unit;
+};
+
+struct spi_controller;
+
+struct spi_device {
+	struct device dev;
+	struct spi_controller *controller;
+	struct spi_controller *master;
+	u32 max_speed_hz;
+	u8 chip_select;
+	u8 bits_per_word;
+	bool rt;
+	u32 mode;
+	int irq;
+	void *controller_state;
+	void *controller_data;
+	char modalias[32];
+	const char *driver_override;
+	int cs_gpio;
+	struct gpio_desc *cs_gpiod;
+	struct spi_delay word_delay;
+	struct spi_delay cs_setup;
+	struct spi_delay cs_hold;
+	struct spi_delay cs_inactive;
+	struct spi_statistics statistics;
+};
+
+struct spi_message;
+
+struct spi_transfer;
+
+struct spi_controller_mem_ops;
+
+struct spi_controller {
+	struct device dev;
+	struct list_head list;
+	s16 bus_num;
+	u16 num_chipselect;
+	u16 dma_alignment;
+	u32 mode_bits;
+	u32 buswidth_override_bits;
+	u32 bits_per_word_mask;
+	u32 min_speed_hz;
+	u32 max_speed_hz;
+	u16 flags;
+	bool devm_allocated;
+	bool slave;
+	size_t (*max_transfer_size)(struct spi_device *);
+	size_t (*max_message_size)(struct spi_device *);
+	struct mutex io_mutex;
+	struct mutex add_lock;
+	spinlock_t bus_lock_spinlock;
+	struct mutex bus_lock_mutex;
+	bool bus_lock_flag;
+	int (*setup)(struct spi_device *);
+	int (*set_cs_timing)(struct spi_device *);
+	int (*transfer)(struct spi_device *, struct spi_message *);
+	void (*cleanup)(struct spi_device *);
+	bool (*can_dma)(struct spi_controller *, struct spi_device *, struct spi_transfer *);
+	struct device *dma_map_dev;
+	bool queued;
+	struct kthread_worker *kworker;
+	struct kthread_work pump_messages;
+	spinlock_t queue_lock;
+	struct list_head queue;
+	struct spi_message *cur_msg;
+	bool idling;
+	bool busy;
+	bool running;
+	bool rt;
+	bool auto_runtime_pm;
+	bool cur_msg_prepared;
+	bool cur_msg_mapped;
+	bool last_cs_enable;
+	bool last_cs_mode_high;
+	bool fallback;
+	struct completion xfer_completion;
+	size_t max_dma_len;
+	int (*prepare_transfer_hardware)(struct spi_controller *);
+	int (*transfer_one_message)(struct spi_controller *, struct spi_message *);
+	int (*unprepare_transfer_hardware)(struct spi_controller *);
+	int (*prepare_message)(struct spi_controller *, struct spi_message *);
+	int (*unprepare_message)(struct spi_controller *, struct spi_message *);
+	int (*slave_abort)(struct spi_controller *);
+	void (*set_cs)(struct spi_device *, bool);
+	int (*transfer_one)(struct spi_controller *, struct spi_device *, struct spi_transfer *);
+	void (*handle_err)(struct spi_controller *, struct spi_message *);
+	const struct spi_controller_mem_ops *mem_ops;
+	int *cs_gpios;
+	struct gpio_desc **cs_gpiods;
+	bool use_gpio_descriptors;
+	s8 unused_native_cs;
+	s8 max_native_cs;
+	struct spi_statistics statistics;
+	struct dma_chan___2 *dma_tx;
+	struct dma_chan___2 *dma_rx;
+	void *dummy_rx;
+	void *dummy_tx;
+	int (*fw_translate_cs)(struct spi_controller *, unsigned int);
+	bool ptp_sts_supported;
+	long unsigned int irq_flags;
+};
+
+struct spi_driver {
+	const struct spi_device_id *id_table;
+	int (*probe)(struct spi_device *);
+	int (*remove)(struct spi_device *);
+	void (*shutdown)(struct spi_device *);
+	struct device_driver driver;
+};
+
+struct spi_message {
+	struct list_head transfers;
+	struct spi_device *spi;
+	unsigned int is_dma_mapped: 1;
+	void (*complete)(void *);
+	void *context;
+	unsigned int frame_length;
+	unsigned int actual_length;
+	int status;
+	struct list_head queue;
+	void *state;
+	struct list_head resources;
+};
+
+struct spi_transfer {
+	const void *tx_buf;
+	void *rx_buf;
+	unsigned int len;
+	dma_addr_t tx_dma;
+	dma_addr_t rx_dma;
+	struct sg_table tx_sg;
+	struct sg_table rx_sg;
+	unsigned int dummy_data: 1;
+	unsigned int cs_change: 1;
+	unsigned int tx_nbits: 3;
+	unsigned int rx_nbits: 3;
+	u8 bits_per_word;
+	struct spi_delay delay;
+	struct spi_delay cs_change_delay;
+	struct spi_delay word_delay;
+	u32 speed_hz;
+	u32 effective_speed_hz;
+	unsigned int ptp_sts_word_pre;
+	unsigned int ptp_sts_word_post;
+	struct ptp_system_timestamp *ptp_sts;
+	bool timestamped;
+	struct list_head transfer_list;
+	u16 error;
+};
+
+struct spi_mem;
+
+struct spi_mem_op;
+
+struct spi_mem_dirmap_desc;
+
+struct spi_controller_mem_ops {
+	int (*adjust_op_size)(struct spi_mem *, struct spi_mem_op *);
+	bool (*supports_op)(struct spi_mem *, const struct spi_mem_op *);
+	int (*exec_op)(struct spi_mem *, const struct spi_mem_op *);
+	const char * (*get_name)(struct spi_mem *);
+	int (*dirmap_create)(struct spi_mem_dirmap_desc *);
+	void (*dirmap_destroy)(struct spi_mem_dirmap_desc *);
+	ssize_t (*dirmap_read)(struct spi_mem_dirmap_desc *, u64, size_t, void *);
+	ssize_t (*dirmap_write)(struct spi_mem_dirmap_desc *, u64, size_t, const void *);
+	int (*poll_status)(struct spi_mem *, const struct spi_mem_op *, u16, u16, long unsigned int, long unsigned int, long unsigned int);
+};
+
+struct max310x_if_cfg {
+	int (*extended_reg_enable)(struct device *, bool);
+	unsigned int rev_id_reg;
+};
+
+struct max310x_devtype {
+	char name[9];
+	int nr;
+	u8 mode1;
+	int (*detect)(struct device *);
+	void (*power)(struct uart_port *, int);
+};
+
+struct max310x_one {
+	struct uart_port port;
+	struct work_struct tx_work;
+	struct work_struct md_work;
+	struct work_struct rs_work;
+	struct regmap *regmap;
+	u8 rx_buf[128];
+};
+
+struct max310x_port {
+	const struct max310x_devtype *devtype;
+	const struct max310x_if_cfg *if_cfg;
+	struct regmap *regmap;
+	struct clk *clk;
+	struct gpio_chip gpio;
+	struct max310x_one p[0];
+};
+
+struct sccnxp_pdata {
+	const u8 reg_shift;
+	const u32 mctrl_cfg[2];
+	const unsigned int poll_time_us;
+};
+
+struct sccnxp_chip {
+	const char *name;
+	unsigned int nr;
+	long unsigned int freq_min;
+	long unsigned int freq_std;
+	long unsigned int freq_max;
+	unsigned int flags;
+	unsigned int fifosize;
+	unsigned int trwd;
+};
+
+struct sccnxp_port {
+	struct uart_driver uart;
+	struct uart_port port[2];
+	bool opened[2];
+	int irq;
+	u8 imr;
+	struct sccnxp_chip *chip;
+	struct console console;
+	spinlock_t lock;
+	bool poll;
+	struct timer_list timer;
+	struct sccnxp_pdata pdata;
+	struct regulator *regulator;
+};
+
 enum mctrl_gpio_idx {
 	UART_GPIO_CTS = 0,
 	UART_GPIO_DSR = 1,
@@ -74514,6 +91231,24 @@ struct mctrl_gpios {
 	bool mctrl_on;
 };
 
+typedef unsigned char unchar;
+
+struct kgdb_nmi_tty_priv {
+	struct tty_port port;
+	struct timer_list timer;
+	struct {
+		union {
+			struct __kfifo kfifo;
+			char *type;
+			const char *const_type;
+			char (*rectype)[0];
+			char *ptr;
+			const char *ptr_const;
+		};
+		char buf[64];
+	} fifo;
+};
+
 struct serdev_device;
 
 struct serdev_device_ops {
@@ -74650,6 +91385,105 @@ enum {
 	MIX_INFLIGHT = 2147483648,
 };
 
+struct ttyprintk_port {
+	struct tty_port port;
+	spinlock_t spinlock;
+};
+
+struct virtio_console_config {
+	__virtio16 cols;
+	__virtio16 rows;
+	__virtio32 max_nr_ports;
+	__virtio32 emerg_wr;
+};
+
+struct virtio_console_control {
+	__virtio32 id;
+	__virtio16 event;
+	__virtio16 value;
+};
+
+struct ports_driver_data {
+	struct class *class;
+	struct dentry *debugfs_dir;
+	struct list_head portdevs;
+	unsigned int next_vtermno;
+	struct list_head consoles;
+};
+
+struct console___2 {
+	struct list_head list;
+	struct hvc_struct *hvc;
+	struct winsize ws;
+	u32 vtermno;
+};
+
+struct port_buffer {
+	char *buf;
+	size_t size;
+	size_t len;
+	size_t offset;
+	dma_addr_t dma;
+	struct device *dev;
+	struct list_head list;
+	unsigned int sgpages;
+	struct scatterlist sg[0];
+};
+
+struct ports_device {
+	struct list_head list;
+	struct work_struct control_work;
+	struct work_struct config_work;
+	struct list_head ports;
+	spinlock_t ports_lock;
+	spinlock_t c_ivq_lock;
+	spinlock_t c_ovq_lock;
+	u32 max_nr_ports;
+	struct virtio_device *vdev;
+	struct virtqueue *c_ivq;
+	struct virtqueue *c_ovq;
+	struct virtio_console_control cpkt;
+	struct virtqueue **in_vqs;
+	struct virtqueue **out_vqs;
+	int chr_major;
+};
+
+struct port_stats {
+	long unsigned int bytes_sent;
+	long unsigned int bytes_received;
+	long unsigned int bytes_discarded;
+};
+
+struct port {
+	struct list_head list;
+	struct ports_device *portdev;
+	struct port_buffer *inbuf;
+	spinlock_t inbuf_lock;
+	spinlock_t outvq_lock;
+	struct virtqueue *in_vq;
+	struct virtqueue *out_vq;
+	struct dentry *debugfs_file;
+	struct port_stats stats;
+	struct console___2 cons;
+	struct cdev *cdev;
+	struct device *dev;
+	struct kref kref;
+	wait_queue_head_t waitqueue;
+	char *name;
+	struct fasync_struct *async_queue;
+	u32 id;
+	bool outvq_full;
+	bool host_connected;
+	bool guest_connected;
+};
+
+struct sg_list {
+	unsigned int n;
+	unsigned int size;
+	size_t len;
+	struct scatterlist *sg;
+};
+
 struct hpet_info {
 	long unsigned int hi_ireqfreq;
 	long unsigned int hi_flags;
@@ -74793,13 +91627,13 @@ struct agp_bridge_driver {
 	bool cant_use_aperture;
 	bool needs_scratch_page;
 	const struct gatt_mask *masks;
-	int (*fetch_size)();
-	int (*configure)();
+	int (*fetch_size)(void);
+	int (*configure)(void);
 	void (*agp_enable)(struct agp_bridge_data *, u32);
-	void (*cleanup)();
+	void (*cleanup)(void);
 	void (*tlb_flush)(struct agp_memory *);
 	long unsigned int (*mask_memory)(struct agp_bridge_data *, dma_addr_t, int);
-	void (*cache_flush)();
+	void (*cache_flush)(void);
 	int (*create_gatt_table)(struct agp_bridge_data *);
 	int (*free_gatt_table)(struct agp_bridge_data *);
 	int (*insert_memory)(struct agp_memory *, off_t, int);
@@ -74813,89 +91647,6 @@ struct agp_bridge_driver {
 	int (*agp_type_to_mask_type)(struct agp_bridge_data *, int);
 };
 
-struct agp_info {
-	struct agp_version version;
-	u32 bridge_id;
-	u32 agp_mode;
-	long unsigned int aper_base;
-	size_t aper_size;
-	size_t pg_total;
-	size_t pg_system;
-	size_t pg_used;
-};
-
-struct agp_setup {
-	u32 agp_mode;
-};
-
-struct agp_segment {
-	off_t pg_start;
-	size_t pg_count;
-	int prot;
-};
-
-struct agp_segment_priv {
-	off_t pg_start;
-	size_t pg_count;
-	pgprot_t prot;
-};
-
-struct agp_region {
-	pid_t pid;
-	size_t seg_count;
-	struct agp_segment *seg_list;
-};
-
-struct agp_allocate {
-	int key;
-	size_t pg_count;
-	u32 type;
-	u32 physical;
-};
-
-struct agp_bind {
-	int key;
-	off_t pg_start;
-};
-
-struct agp_unbind {
-	int key;
-	u32 priority;
-};
-
-struct agp_client {
-	struct agp_client *next;
-	struct agp_client *prev;
-	pid_t pid;
-	int num_segments;
-	struct agp_segment_priv **segments;
-};
-
-struct agp_controller {
-	struct agp_controller *next;
-	struct agp_controller *prev;
-	pid_t pid;
-	int num_clients;
-	struct agp_memory *pool;
-	struct agp_client *clients;
-};
-
-struct agp_file_private {
-	struct agp_file_private *next;
-	struct agp_file_private *prev;
-	pid_t my_pid;
-	long unsigned int access_flags;
-};
-
-struct agp_front_data {
-	struct mutex agp_mutex;
-	struct agp_controller *current_controller;
-	struct agp_controller *controllers;
-	struct agp_file_private *file_priv_list;
-	bool used_by_controller;
-	bool backend_acquired;
-};
-
 struct aper_size_info_8 {
 	int size;
 	int num_entries;
@@ -74945,46 +91696,6 @@ struct isoch_data {
 	struct agp_3_5_dev *dev;
 };
 
-struct agp_info32 {
-	struct agp_version version;
-	u32 bridge_id;
-	u32 agp_mode;
-	compat_long_t aper_base;
-	compat_size_t aper_size;
-	compat_size_t pg_total;
-	compat_size_t pg_system;
-	compat_size_t pg_used;
-};
-
-struct agp_segment32 {
-	compat_off_t pg_start;
-	compat_size_t pg_count;
-	compat_int_t prot;
-};
-
-struct agp_region32 {
-	compat_pid_t pid;
-	compat_size_t seg_count;
-	struct agp_segment32 *seg_list;
-};
-
-struct agp_allocate32 {
-	compat_int_t key;
-	compat_size_t pg_count;
-	u32 type;
-	u32 physical;
-};
-
-struct agp_bind32 {
-	compat_int_t key;
-	compat_off_t pg_start;
-};
-
-struct agp_unbind32 {
-	compat_int_t key;
-	u32 priority;
-};
-
 struct intel_agp_driver_description {
 	unsigned int chip_id;
 	char *name;
@@ -74998,11 +91709,11 @@ struct intel_gtt_driver {
 	unsigned int is_ironlake: 1;
 	unsigned int has_pgtbl_enable: 1;
 	unsigned int dma_mask_size: 8;
-	int (*setup)();
-	void (*cleanup)();
+	int (*setup)(void);
+	void (*cleanup)(void);
 	void (*write_entry)(dma_addr_t, unsigned int, unsigned int);
 	bool (*check_flags)(unsigned int);
-	void (*chipset_flush)();
+	void (*chipset_flush)(void);
 };
 
 struct _intel_private {
@@ -75042,6 +91753,561 @@ struct agp_device_ids {
 	int (*chipset_setup)(struct pci_dev *);
 };
 
+enum tpm2_startup_types {
+	TPM2_SU_CLEAR = 0,
+	TPM2_SU_STATE = 1,
+};
+
+enum tpm_chip_flags {
+	TPM_CHIP_FLAG_TPM2 = 2,
+	TPM_CHIP_FLAG_IRQ = 4,
+	TPM_CHIP_FLAG_VIRTUAL = 8,
+	TPM_CHIP_FLAG_HAVE_TIMEOUTS = 16,
+	TPM_CHIP_FLAG_ALWAYS_POWERED = 32,
+	TPM_CHIP_FLAG_FIRMWARE_POWER_MANAGED = 64,
+};
+
+struct file_priv {
+	struct tpm_chip *chip;
+	struct tpm_space *space;
+	struct mutex buffer_mutex;
+	struct timer_list user_read_timer;
+	struct work_struct timeout_work;
+	struct work_struct async_work;
+	wait_queue_head_t async_wait;
+	ssize_t response_length;
+	bool response_read;
+	bool command_enqueued;
+	u8 data_buffer[4096];
+};
+
+enum TPM_OPS_FLAGS {
+	TPM_OPS_AUTO_STARTUP = 1,
+};
+
+enum tpm2_timeouts {
+	TPM2_TIMEOUT_A = 750,
+	TPM2_TIMEOUT_B = 2000,
+	TPM2_TIMEOUT_C = 200,
+	TPM2_TIMEOUT_D = 30,
+	TPM2_DURATION_SHORT = 20,
+	TPM2_DURATION_MEDIUM = 750,
+	TPM2_DURATION_LONG = 2000,
+	TPM2_DURATION_LONG_LONG = 300000,
+	TPM2_DURATION_DEFAULT = 120000,
+};
+
+enum tpm_timeout {
+	TPM_TIMEOUT = 5,
+	TPM_TIMEOUT_RETRY = 100,
+	TPM_TIMEOUT_RANGE_US = 300,
+	TPM_TIMEOUT_POLL = 1,
+	TPM_TIMEOUT_USECS_MIN = 100,
+	TPM_TIMEOUT_USECS_MAX = 500,
+};
+
+struct stclear_flags_t {
+	__be16 tag;
+	u8 deactivated;
+	u8 disableForceClear;
+	u8 physicalPresence;
+	u8 physicalPresenceLock;
+	u8 bGlobalLock;
+} __attribute__((packed));
+
+struct tpm1_version {
+	u8 major;
+	u8 minor;
+	u8 rev_major;
+	u8 rev_minor;
+};
+
+struct tpm1_version2 {
+	__be16 tag;
+	struct tpm1_version version;
+};
+
+struct timeout_t {
+	__be32 a;
+	__be32 b;
+	__be32 c;
+	__be32 d;
+};
+
+struct duration_t {
+	__be32 tpm_short;
+	__be32 tpm_medium;
+	__be32 tpm_long;
+};
+
+struct permanent_flags_t {
+	__be16 tag;
+	u8 disable;
+	u8 ownership;
+	u8 deactivated;
+	u8 readPubek;
+	u8 disableOwnerClear;
+	u8 allowMaintenance;
+	u8 physicalPresenceLifetimeLock;
+	u8 physicalPresenceHWEnable;
+	u8 physicalPresenceCMDEnable;
+	u8 CEKPUsed;
+	u8 TPMpost;
+	u8 TPMpostLock;
+	u8 FIPS;
+	u8 operator;
+	u8 enableRevokeEK;
+	u8 nvLocked;
+	u8 readSRKPub;
+	u8 tpmEstablished;
+	u8 maintenanceDone;
+	u8 disableFullDALogicInfo;
+};
+
+typedef union {
+	struct permanent_flags_t perm_flags;
+	struct stclear_flags_t stclear_flags;
+	__u8 owned;
+	__be32 num_pcrs;
+	struct tpm1_version version1;
+	struct tpm1_version2 version2;
+	__be32 manufacturer_id;
+	struct timeout_t timeout;
+	struct duration_t duration;
+} cap_t;
+
+enum tpm_capabilities {
+	TPM_CAP_FLAG = 4,
+	TPM_CAP_PROP = 5,
+	TPM_CAP_VERSION_1_1 = 6,
+	TPM_CAP_VERSION_1_2 = 26,
+};
+
+enum tpm_sub_capabilities {
+	TPM_CAP_PROP_PCR = 257,
+	TPM_CAP_PROP_MANUFACTURER = 259,
+	TPM_CAP_FLAG_PERM = 264,
+	TPM_CAP_FLAG_VOL = 265,
+	TPM_CAP_PROP_OWNER = 273,
+	TPM_CAP_PROP_TIS_TIMEOUT = 277,
+	TPM_CAP_PROP_TIS_DURATION = 288,
+};
+
+struct tpm1_get_random_out {
+	__be32 rng_data_len;
+	u8 rng_data[128];
+};
+
+enum tpm2_const {
+	TPM2_PLATFORM_PCR = 24,
+	TPM2_PCR_SELECT_MIN = 3,
+};
+
+enum tpm2_capabilities {
+	TPM2_CAP_HANDLES = 1,
+	TPM2_CAP_COMMANDS = 2,
+	TPM2_CAP_PCRS = 5,
+	TPM2_CAP_TPM_PROPERTIES = 6,
+};
+
+enum tpm2_properties {
+	TPM_PT_TOTAL_COMMANDS = 297,
+};
+
+enum tpm2_cc_attrs {
+	TPM2_CC_ATTR_CHANDLES = 25,
+	TPM2_CC_ATTR_RHANDLE = 28,
+};
+
+struct tpm2_pcr_read_out {
+	__be32 update_cnt;
+	__be32 pcr_selects_cnt;
+	__be16 hash_alg;
+	u8 pcr_select_size;
+	u8 pcr_select[3];
+	__be32 digests_cnt;
+	__be16 digest_size;
+	u8 digest[0];
+} __attribute__((packed));
+
+struct tpm2_null_auth_area {
+	__be32 handle;
+	__be16 nonce_size;
+	u8 attributes;
+	__be16 auth_size;
+} __attribute__((packed));
+
+struct tpm2_get_random_out {
+	__be16 size;
+	u8 buffer[128];
+};
+
+struct tpm2_get_cap_out {
+	u8 more_data;
+	__be32 subcap_id;
+	__be32 property_cnt;
+	__be32 property_id;
+	__be32 value;
+} __attribute__((packed));
+
+struct tpm2_pcr_selection {
+	__be16 hash_alg;
+	u8 size_of_select;
+	u8 pcr_select[3];
+};
+
+struct tpmrm_priv {
+	struct file_priv priv;
+	struct tpm_space space;
+};
+
+enum tpm2_handle_types {
+	TPM2_HT_HMAC_SESSION = 33554432,
+	TPM2_HT_POLICY_SESSION = 50331648,
+	TPM2_HT_TRANSIENT = 2147483648,
+};
+
+struct tpm2_context {
+	__be64 sequence;
+	__be32 saved_handle;
+	__be32 hierarchy;
+	__be16 blob_size;
+} __attribute__((packed));
+
+struct tpm2_cap_handles {
+	u8 more_data;
+	__be32 capability;
+	__be32 count;
+	__be32 handles[0];
+} __attribute__((packed));
+
+struct tpm_readpubek_out {
+	u8 algorithm[4];
+	u8 encscheme[2];
+	u8 sigscheme[2];
+	__be32 paramsize;
+	u8 parameters[12];
+	__be32 keysize;
+	u8 modulus[256];
+	u8 checksum[20];
+};
+
+struct tpm_pcr_attr {
+	int alg_id;
+	int pcr;
+	struct device_attribute attr;
+};
+
+struct tcpa_event {
+	u32 pcr_index;
+	u32 event_type;
+	u8 pcr_value[20];
+	u32 event_size;
+	u8 event_data[0];
+};
+
+enum tcpa_event_types {
+	PREBOOT = 0,
+	POST_CODE = 1,
+	UNUSED = 2,
+	NO_ACTION = 3,
+	SEPARATOR = 4,
+	ACTION = 5,
+	EVENT_TAG = 6,
+	SCRTM_CONTENTS = 7,
+	SCRTM_VERSION = 8,
+	CPU_MICROCODE = 9,
+	PLATFORM_CONFIG_FLAGS = 10,
+	TABLE_OF_DEVICES = 11,
+	COMPACT_HASH = 12,
+	IPL = 13,
+	IPL_PARTITION_DATA = 14,
+	NONHOST_CODE = 15,
+	NONHOST_CONFIG = 16,
+	NONHOST_INFO = 17,
+};
+
+struct tcpa_pc_event {
+	u32 event_id;
+	u32 event_size;
+	u8 event_data[0];
+};
+
+enum tcpa_pc_event_ids {
+	SMBIOS = 1,
+	BIS_CERT = 2,
+	POST_BIOS_ROM = 3,
+	ESCD = 4,
+	CMOS = 5,
+	NVRAM = 6,
+	OPTION_ROM_EXEC = 7,
+	OPTION_ROM_CONFIG = 8,
+	OPTION_ROM_MICROCODE = 10,
+	S_CRTM_VERSION = 11,
+	S_CRTM_CONTENTS = 12,
+	POST_CONTENTS = 13,
+	HOST_TABLE_OF_DEVICES = 14,
+};
+
+struct tcg_efi_specid_event_algs {
+	u16 alg_id;
+	u16 digest_size;
+};
+
+struct tcg_efi_specid_event_head {
+	u8 signature[16];
+	u32 platform_class;
+	u8 spec_version_minor;
+	u8 spec_version_major;
+	u8 spec_errata;
+	u8 uintnsize;
+	u32 num_algs;
+	struct tcg_efi_specid_event_algs digest_sizes[0];
+};
+
+struct tcg_pcr_event {
+	u32 pcr_idx;
+	u32 event_type;
+	u8 digest[20];
+	u32 event_size;
+	u8 event[0];
+};
+
+struct tcg_event_field {
+	u32 event_size;
+	u8 event[0];
+};
+
+struct tcg_pcr_event2_head {
+	u32 pcr_idx;
+	u32 event_type;
+	u32 count;
+	struct tpm_digest digests[0];
+};
+
+struct acpi_table_tpm2 {
+	struct acpi_table_header header;
+	u16 platform_class;
+	u16 reserved;
+	u64 control_address;
+	u32 start_method;
+} __attribute__((packed));
+
+struct acpi_tpm2_phy {
+	u8 start_method_specific[12];
+	u32 log_area_minimum_length;
+	u64 log_area_start_address;
+};
+
+enum bios_platform_class {
+	BIOS_CLIENT = 0,
+	BIOS_SERVER = 1,
+};
+
+struct client_hdr {
+	u32 log_max_len;
+	u64 log_start_addr;
+} __attribute__((packed));
+
+struct server_hdr {
+	u16 reserved;
+	u64 log_max_len;
+	u64 log_start_addr;
+} __attribute__((packed));
+
+struct acpi_tcpa {
+	struct acpi_table_header hdr;
+	u16 platform_class;
+	union {
+		struct client_hdr client;
+		struct server_hdr server;
+	};
+};
+
+struct linux_efi_tpm_eventlog {
+	u32 size;
+	u32 final_events_preboot_size;
+	u8 version;
+	u8 log[0];
+};
+
+struct efi_tcg2_final_events_table {
+	u64 version;
+	u64 nr_events;
+	u8 events[0];
+};
+
+enum tis_access {
+	TPM_ACCESS_VALID = 128,
+	TPM_ACCESS_ACTIVE_LOCALITY = 32,
+	TPM_ACCESS_REQUEST_PENDING = 4,
+	TPM_ACCESS_REQUEST_USE = 2,
+};
+
+enum tis_status {
+	TPM_STS_VALID = 128,
+	TPM_STS_COMMAND_READY = 64,
+	TPM_STS_GO = 32,
+	TPM_STS_DATA_AVAIL = 16,
+	TPM_STS_DATA_EXPECT = 8,
+	TPM_STS_READ_ZERO = 35,
+};
+
+enum tis_int_flags {
+	TPM_GLOBAL_INT_ENABLE = 2147483648,
+	TPM_INTF_BURST_COUNT_STATIC = 256,
+	TPM_INTF_CMD_READY_INT = 128,
+	TPM_INTF_INT_EDGE_FALLING = 64,
+	TPM_INTF_INT_EDGE_RISING = 32,
+	TPM_INTF_INT_LEVEL_LOW = 16,
+	TPM_INTF_INT_LEVEL_HIGH = 8,
+	TPM_INTF_LOCALITY_CHANGE_INT = 4,
+	TPM_INTF_STS_VALID_INT = 2,
+	TPM_INTF_DATA_AVAIL_INT = 1,
+};
+
+enum tis_defaults {
+	TIS_MEM_LEN = 20480,
+	TIS_SHORT_TIMEOUT = 750,
+	TIS_LONG_TIMEOUT = 2000,
+	TIS_TIMEOUT_MIN_ATML = 14700,
+	TIS_TIMEOUT_MAX_ATML = 15000,
+};
+
+enum tpm_tis_flags {
+	TPM_TIS_ITPM_WORKAROUND = 1,
+	TPM_TIS_INVALID_STATUS = 2,
+};
+
+struct tpm_tis_phy_ops;
+
+struct tpm_tis_data {
+	u16 manufacturer_id;
+	struct mutex locality_count_mutex;
+	unsigned int locality_count;
+	int locality;
+	int irq;
+	bool irq_tested;
+	long unsigned int flags;
+	void *ilb_base_addr;
+	u16 clkrun_enabled;
+	wait_queue_head_t int_queue;
+	wait_queue_head_t read_queue;
+	const struct tpm_tis_phy_ops *phy_ops;
+	short unsigned int rng_quality;
+	unsigned int timeout_min;
+	unsigned int timeout_max;
+};
+
+struct tpm_tis_phy_ops {
+	int (*read_bytes)(struct tpm_tis_data *, u32, u16, u8 *);
+	int (*write_bytes)(struct tpm_tis_data *, u32, u16, const u8 *);
+	int (*read16)(struct tpm_tis_data *, u32, u16 *);
+	int (*read32)(struct tpm_tis_data *, u32, u32 *);
+	int (*write32)(struct tpm_tis_data *, u32, u32);
+};
+
+struct tis_vendor_durations_override {
+	u32 did_vid;
+	struct tpm1_version version;
+	long unsigned int durations[3];
+};
+
+struct tis_vendor_timeout_override {
+	u32 did_vid;
+	long unsigned int timeout_us[4];
+};
+
+struct tpm_info {
+	struct resource res;
+	int irq;
+};
+
+struct tpm_tis_tcg_phy {
+	struct tpm_tis_data priv;
+	void *iobase;
+};
+
+enum crb_defaults {
+	CRB_ACPI_START_REVISION_ID = 1,
+	CRB_ACPI_START_INDEX = 1,
+};
+
+enum crb_loc_ctrl {
+	CRB_LOC_CTRL_REQUEST_ACCESS = 1,
+	CRB_LOC_CTRL_RELINQUISH = 2,
+};
+
+enum crb_loc_state {
+	CRB_LOC_STATE_LOC_ASSIGNED = 2,
+	CRB_LOC_STATE_TPM_REG_VALID_STS = 128,
+};
+
+enum crb_ctrl_req {
+	CRB_CTRL_REQ_CMD_READY = 1,
+	CRB_CTRL_REQ_GO_IDLE = 2,
+};
+
+enum crb_ctrl_sts {
+	CRB_CTRL_STS_ERROR = 1,
+	CRB_CTRL_STS_TPM_IDLE = 2,
+};
+
+enum crb_start {
+	CRB_START_INVOKE = 1,
+};
+
+enum crb_cancel {
+	CRB_CANCEL_INVOKE = 1,
+};
+
+struct crb_regs_head {
+	u32 loc_state;
+	u32 reserved1;
+	u32 loc_ctrl;
+	u32 loc_sts;
+	u8 reserved2[32];
+	u64 intf_id;
+	u64 ctrl_ext;
+};
+
+struct crb_regs_tail {
+	u32 ctrl_req;
+	u32 ctrl_sts;
+	u32 ctrl_cancel;
+	u32 ctrl_start;
+	u32 ctrl_int_enable;
+	u32 ctrl_int_sts;
+	u32 ctrl_cmd_size;
+	u32 ctrl_cmd_pa_low;
+	u32 ctrl_cmd_pa_high;
+	u32 ctrl_rsp_size;
+	u64 ctrl_rsp_pa;
+};
+
+enum crb_status {
+	CRB_DRV_STS_COMPLETE = 1,
+};
+
+struct crb_priv {
+	u32 sm;
+	const char *hid;
+	struct crb_regs_head *regs_h;
+	struct crb_regs_tail *regs_t;
+	u8 *cmd;
+	u8 *rsp;
+	u32 cmd_size;
+	u32 smc_func_id;
+};
+
+struct tpm2_crb_smc {
+	u32 interrupt;
+	u8 interrupt_flags;
+	u8 op_flags;
+	u16 reserved2;
+	u32 smc_func_id;
+};
+
 struct vcpu_data;
 
 struct amd_iommu_pi_data {
@@ -75063,6 +92329,89 @@ struct amd_iommu_device_info {
 	u32 flags;
 };
 
+enum io_pgtable_fmt {
+	ARM_32_LPAE_S1 = 0,
+	ARM_32_LPAE_S2 = 1,
+	ARM_64_LPAE_S1 = 2,
+	ARM_64_LPAE_S2 = 3,
+	ARM_V7S = 4,
+	ARM_MALI_LPAE = 5,
+	AMD_IOMMU_V1 = 6,
+	APPLE_DART = 7,
+	IO_PGTABLE_NUM_FMTS = 8,
+};
+
+struct iommu_flush_ops {
+	void (*tlb_flush_all)(void *);
+	void (*tlb_flush_walk)(long unsigned int, size_t, size_t, void *);
+	void (*tlb_add_page)(struct iommu_iotlb_gather *, long unsigned int, size_t, void *);
+};
+
+struct io_pgtable_cfg {
+	long unsigned int quirks;
+	long unsigned int pgsize_bitmap;
+	unsigned int ias;
+	unsigned int oas;
+	bool coherent_walk;
+	const struct iommu_flush_ops *tlb;
+	struct device *iommu_dev;
+	union {
+		struct {
+			u64 ttbr;
+			struct {
+				u32 ips: 3;
+				u32 tg: 2;
+				u32 sh: 2;
+				u32 orgn: 2;
+				u32 irgn: 2;
+				u32 tsz: 6;
+			} tcr;
+			u64 mair;
+		} arm_lpae_s1_cfg;
+		struct {
+			u64 vttbr;
+			struct {
+				u32 ps: 3;
+				u32 tg: 2;
+				u32 sh: 2;
+				u32 orgn: 2;
+				u32 irgn: 2;
+				u32 sl: 2;
+				u32 tsz: 6;
+			} vtcr;
+		} arm_lpae_s2_cfg;
+		struct {
+			u32 ttbr;
+			u32 tcr;
+			u32 nmrr;
+			u32 prrr;
+		} arm_v7s_cfg;
+		struct {
+			u64 transtab;
+			u64 memattr;
+		} arm_mali_lpae_cfg;
+		struct {
+			u64 ttbr[4];
+			u32 n_ttbrs;
+		} apple_dart_cfg;
+	};
+};
+
+struct io_pgtable_ops {
+	int (*map)(struct io_pgtable_ops *, long unsigned int, phys_addr_t, size_t, int, gfp_t);
+	int (*map_pages)(struct io_pgtable_ops *, long unsigned int, phys_addr_t, size_t, size_t, int, gfp_t, size_t *);
+	size_t (*unmap)(struct io_pgtable_ops *, long unsigned int, size_t, struct iommu_iotlb_gather *);
+	size_t (*unmap_pages)(struct io_pgtable_ops *, long unsigned int, size_t, size_t, struct iommu_iotlb_gather *);
+	phys_addr_t (*iova_to_phys)(struct io_pgtable_ops *, long unsigned int);
+};
+
+struct io_pgtable {
+	enum io_pgtable_fmt fmt;
+	void *cookie;
+	struct io_pgtable_cfg cfg;
+	struct io_pgtable_ops ops;
+};
+
 struct irq_remap_table {
 	raw_spinlock_t lock;
 	unsigned int min_index;
@@ -75077,12 +92426,20 @@ struct amd_iommu_fault {
 	u16 flags;
 };
 
+struct amd_io_pgtable {
+	struct io_pgtable_cfg pgtbl_cfg;
+	struct io_pgtable iop;
+	int mode;
+	u64 *root;
+	atomic64_t pt_root;
+};
+
 struct protection_domain {
 	struct list_head dev_list;
 	struct iommu_domain domain;
+	struct amd_io_pgtable iop;
 	spinlock_t lock;
 	u16 id;
-	atomic64_t pt_root;
 	int glx;
 	u64 *gcr3_tbl;
 	long unsigned int flags;
@@ -75090,9 +92447,9 @@ struct protection_domain {
 	unsigned int dev_iommu[32];
 };
 
-struct domain_pgtable {
-	int mode;
-	u64 *root;
+struct amd_iommu_pci_seg {
+	struct list_head list;
+	u16 id;
 };
 
 struct amd_irte_ops;
@@ -75112,7 +92469,7 @@ struct amd_iommu {
 	bool is_iommu_v2;
 	u16 devid;
 	u16 cap_ptr;
-	u16 pci_seg;
+	struct amd_iommu_pci_seg *pci_seg;
 	u64 exclusion_start;
 	u64 exclusion_length;
 	u8 *cmd_buf;
@@ -75137,11 +92494,10 @@ struct amd_iommu {
 	u32 flags;
 	volatile u64 *cmd_sem;
 	u64 cmd_sem_val;
-	struct irq_affinity_notify intcapxt_notify;
 };
 
 struct amd_irte_ops {
-	void (*prepare)(void *, u32, u32, u8, u32, int);
+	void (*prepare)(void *, u32, bool, u8, u32, int);
 	void (*activate)(void *, u16, u16);
 	void (*deactivate)(void *, u16, u16);
 	void (*set_affinity)(void *, u16, u16, u8, u32);
@@ -75181,7 +92537,6 @@ struct iommu_dev_data {
 		int qdep;
 	} ats;
 	bool pri_tlp;
-	u32 errata;
 	bool use_vapic;
 	bool defer_attach;
 	struct ratelimit_state rs;
@@ -75274,18 +92629,17 @@ struct amd_ir_data {
 	void *ref;
 	struct irq_cfg *cfg;
 	int ga_vector;
-	int ga_root_ptr;
-	int ga_tag;
+	u64 ga_root_ptr;
+	u32 ga_tag;
 };
 
 struct irq_remap_ops {
 	int capability;
-	int (*prepare)();
-	int (*enable)();
-	void (*disable)();
+	int (*prepare)(void);
+	int (*enable)(void);
+	void (*disable)(void);
 	int (*reenable)(int);
-	int (*enable_faulting)();
-	struct irq_domain * (*get_irq_domain)(struct irq_alloc_info *);
+	int (*enable_faulting)(void);
 };
 
 struct iommu_cmd {
@@ -75340,11 +92694,23 @@ enum iommu_init_state {
 	IOMMU_ENABLED = 3,
 	IOMMU_PCI_INIT = 4,
 	IOMMU_INTERRUPTS_EN = 5,
-	IOMMU_DMA_OPS = 6,
-	IOMMU_INITIALIZED = 7,
-	IOMMU_NOT_FOUND = 8,
-	IOMMU_INIT_ERROR = 9,
-	IOMMU_CMDLINE_DISABLED = 10,
+	IOMMU_INITIALIZED = 6,
+	IOMMU_NOT_FOUND = 7,
+	IOMMU_INIT_ERROR = 8,
+	IOMMU_CMDLINE_DISABLED = 9,
+};
+
+union intcapxt {
+	u64 capxt;
+	struct {
+		u64 reserved_0: 2;
+		u64 dest_mode_logical: 1;
+		u64 reserved_1: 5;
+		u64 destid_0_23: 24;
+		u64 vector: 8;
+		u64 reserved_2: 16;
+		u64 destid_24_31: 8;
+	};
 };
 
 struct ivrs_quirk_entry {
@@ -75358,58 +92724,9 @@ enum {
 	LENOVO_IDEAPAD_330S_15ARR = 2,
 };
 
-typedef int (*amd_iommu_invalid_ppr_cb)(struct pci_dev *, u32, long unsigned int, u16);
-
-typedef void (*amd_iommu_invalidate_ctx)(struct pci_dev *, u32);
-
-struct pri_queue {
-	atomic_t inflight;
-	bool finish;
-	int status;
-};
-
-struct device_state;
-
-struct pasid_state {
-	struct list_head list;
-	atomic_t count;
-	unsigned int mmu_notifier_count;
-	struct mm_struct *mm;
-	struct mmu_notifier mn;
-	struct pri_queue pri[512];
-	struct device_state *device_state;
-	u32 pasid;
-	bool invalid;
-	spinlock_t lock;
-	wait_queue_head_t wq;
-};
-
-struct device_state {
-	struct list_head list;
-	u16 devid;
-	atomic_t count;
-	struct pci_dev *pdev;
-	struct pasid_state **states;
-	struct iommu_domain *domain;
-	int pasid_levels;
-	int max_pasids;
-	amd_iommu_invalid_ppr_cb inv_ppr_cb;
-	amd_iommu_invalidate_ctx inv_ctx_cb;
-	spinlock_t lock;
-	wait_queue_head_t wq;
-};
-
-struct fault {
-	struct work_struct work;
-	struct device_state *dev_state;
-	struct pasid_state *state;
-	struct mm_struct *mm;
-	u64 address;
-	u16 devid;
-	u32 pasid;
-	u16 tag;
-	u16 finish;
-	u16 flags;
+struct io_pgtable_init_fns {
+	struct io_pgtable * (*alloc)(struct io_pgtable_cfg *, void *);
+	void (*free)(struct io_pgtable *);
 };
 
 struct acpi_table_dmar {
@@ -75430,7 +92747,8 @@ enum acpi_dmar_type {
 	ACPI_DMAR_TYPE_ROOT_ATS = 2,
 	ACPI_DMAR_TYPE_HARDWARE_AFFINITY = 3,
 	ACPI_DMAR_TYPE_NAMESPACE = 4,
-	ACPI_DMAR_TYPE_RESERVED = 5,
+	ACPI_DMAR_TYPE_SATC = 5,
+	ACPI_DMAR_TYPE_RESERVED = 6,
 };
 
 struct acpi_dmar_device_scope {
@@ -75493,6 +92811,13 @@ struct acpi_dmar_andd {
 	char device_name[1];
 } __attribute__((packed));
 
+struct acpi_dmar_satc {
+	struct acpi_dmar_header header;
+	u8 flags;
+	u8 reserved;
+	u16 segment;
+};
+
 struct dmar_dev_scope {
 	struct device *dev;
 	u8 bus;
@@ -75538,6 +92863,8 @@ struct root_entry;
 
 struct page_req_dsc;
 
+struct iopf_queue;
+
 struct q_inval;
 
 struct ir_table;
@@ -75560,6 +92887,7 @@ struct intel_iommu {
 	unsigned char name[13];
 	long unsigned int *domain_ids;
 	struct dmar_domain ***domains;
+	long unsigned int *copied_tables;
 	spinlock_t lock;
 	struct root_entry *root_entry;
 	struct iommu_flush flush;
@@ -75567,8 +92895,10 @@ struct intel_iommu {
 	unsigned char prq_name[16];
 	struct completion prq_complete;
 	struct ioasid_allocator_ops pasid_allocator;
+	struct iopf_queue *iopf_queue;
+	unsigned char iopfq_name[16];
 	struct q_inval *qi;
-	u32 *iommu_state;
+	u32 iommu_state[4];
 	struct ir_table *ir_table;
 	struct irq_domain *ir_domain;
 	struct irq_domain *ir_msi_domain;
@@ -75576,6 +92906,7 @@ struct intel_iommu {
 	int node;
 	u32 flags;
 	struct dmar_drhd_unit *drhd;
+	void *perf_statistic;
 };
 
 struct dmar_pci_path {
@@ -75693,6 +93024,7 @@ struct iova_domain {
 	iova_entry_dtor entry_dtor;
 	struct timer_list fq_timer;
 	atomic_t fq_timer_on;
+	struct hlist_node cpuhp_dead;
 };
 
 struct iova_fq_entry {
@@ -75748,18 +93080,16 @@ struct dmar_domain {
 	int nid;
 	unsigned int iommu_refcnt[128];
 	u16 iommu_did[128];
-	unsigned int auxd_refcnt;
-	bool has_iotlb_device;
+	u8 has_iotlb_device: 1;
+	u8 iommu_coherency: 1;
+	u8 iommu_snooping: 1;
 	struct list_head devices;
-	struct list_head auxd;
+	struct list_head subdevices;
 	struct iova_domain iovad;
 	struct dma_pte *pgd;
 	int gaw;
 	int agaw;
 	int flags;
-	int iommu_coherency;
-	int iommu_snooping;
-	int iommu_count;
 	int iommu_superpage;
 	u64 max_addr;
 	u32 default_pasid;
@@ -75770,11 +93100,33 @@ struct dma_pte {
 	u64 val;
 };
 
+enum latency_type {
+	DMAR_LATENCY_INV_IOTLB = 0,
+	DMAR_LATENCY_INV_DEVTLB = 1,
+	DMAR_LATENCY_INV_IEC = 2,
+	DMAR_LATENCY_PRQ = 3,
+	DMAR_LATENCY_NUM = 4,
+};
+
+enum latency_count {
+	COUNTS_10e2 = 0,
+	COUNTS_10e3 = 1,
+	COUNTS_10e4 = 2,
+	COUNTS_10e5 = 3,
+	COUNTS_10e6 = 4,
+	COUNTS_10e7 = 5,
+	COUNTS_10e8_plus = 6,
+	COUNTS_MIN = 7,
+	COUNTS_MAX = 8,
+	COUNTS_SUM = 9,
+	COUNTS_NUM = 10,
+};
+
 typedef int (*dmar_res_handler_t)(struct acpi_dmar_header *, void *);
 
 struct dmar_res_callback {
-	dmar_res_handler_t cb[5];
-	void *arg[5];
+	dmar_res_handler_t cb[6];
+	void *arg[6];
 	bool ignore_unhandled;
 	bool print_entry;
 };
@@ -75785,6 +93137,10 @@ enum faulttype {
 	UNKNOWN = 2,
 };
 
+struct ioasid_set {
+	int dummy;
+};
+
 enum iommu_inv_granularity {
 	IOMMU_INV_GRANU_DOMAIN = 0,
 	IOMMU_INV_GRANU_PASID = 1,
@@ -75792,26 +93148,25 @@ enum iommu_inv_granularity {
 	IOMMU_INV_GRANU_NR = 3,
 };
 
-enum {
-	SR_DMAR_FECTL_REG = 0,
-	SR_DMAR_FEDATA_REG = 1,
-	SR_DMAR_FEADDR_REG = 2,
-	SR_DMAR_FEUADDR_REG = 3,
-	MAX_SR_DMAR_REGS = 4,
-};
-
 struct context_entry {
 	u64 lo;
 	u64 hi;
 };
 
+struct subdev_domain_info {
+	struct list_head link_phys;
+	struct list_head link_domain;
+	struct device *pdev;
+	struct dmar_domain *domain;
+	int users;
+};
+
 struct pasid_table;
 
 struct device_domain_info {
 	struct list_head link;
 	struct list_head global;
-	struct list_head table;
-	struct list_head auxiliary_domains;
+	struct list_head subdevices;
 	u32 segment;
 	u8 bus;
 	u8 devfn;
@@ -75834,7 +93189,13 @@ struct pasid_table {
 	void *table;
 	int order;
 	u32 max_pasid;
-	struct list_head dev;
+};
+
+enum cap_audit_type {
+	CAP_AUDIT_STATIC_DMAR = 0,
+	CAP_AUDIT_STATIC_IRQR = 1,
+	CAP_AUDIT_HOTPLUG_DMAR = 2,
+	CAP_AUDIT_HOTPLUG_IRQR = 3,
 };
 
 struct dmar_rmrr_unit {
@@ -75854,6 +93215,15 @@ struct dmar_atsr_unit {
 	u8 include_all: 1;
 };
 
+struct dmar_satc_unit {
+	struct list_head list;
+	struct acpi_dmar_header *hdr;
+	struct dmar_dev_scope *devices;
+	struct intel_iommu *iommu;
+	int devices_cnt;
+	u8 atc_required: 1;
+};
+
 struct domain_context_mapping_data {
 	struct dmar_domain *domain;
 	struct intel_iommu *iommu;
@@ -75868,66 +93238,42 @@ struct pasid_entry {
 	u64 val[8];
 };
 
-struct pasid_table_opaque {
-	struct pasid_table **pasid_table;
-	int segment;
-	int bus;
-	int devfn;
-};
-
-struct trace_event_raw_dma_map {
+struct trace_event_raw_qi_submit {
 	struct trace_entry ent;
-	u32 __data_loc_dev_name;
-	dma_addr_t dev_addr;
-	phys_addr_t phys_addr;
-	size_t size;
+	u64 qw0;
+	u64 qw1;
+	u64 qw2;
+	u64 qw3;
+	u32 __data_loc_iommu;
 	char __data[0];
 };
 
-struct trace_event_raw_dma_unmap {
+struct trace_event_raw_prq_report {
 	struct trace_entry ent;
-	u32 __data_loc_dev_name;
-	dma_addr_t dev_addr;
-	size_t size;
+	u64 dw0;
+	u64 dw1;
+	u64 dw2;
+	u64 dw3;
+	long unsigned int seq;
+	u32 __data_loc_iommu;
+	u32 __data_loc_dev;
+	u32 __data_loc_buff;
 	char __data[0];
 };
 
-struct trace_event_raw_dma_map_sg {
-	struct trace_entry ent;
-	u32 __data_loc_dev_name;
-	dma_addr_t dev_addr;
-	phys_addr_t phys_addr;
-	size_t size;
-	int index;
-	int total;
-	char __data[0];
+struct trace_event_data_offsets_qi_submit {
+	u32 iommu;
 };
 
-struct trace_event_data_offsets_dma_map {
-	u32 dev_name;
+struct trace_event_data_offsets_prq_report {
+	u32 iommu;
+	u32 dev;
+	u32 buff;
 };
 
-struct trace_event_data_offsets_dma_unmap {
-	u32 dev_name;
-};
+typedef void (*btf_trace_qi_submit)(void *, struct intel_iommu *, u64, u64, u64, u64);
 
-struct trace_event_data_offsets_dma_map_sg {
-	u32 dev_name;
-};
-
-typedef void (*btf_trace_map_single)(void *, struct device *, dma_addr_t, phys_addr_t, size_t);
-
-typedef void (*btf_trace_bounce_map_single)(void *, struct device *, dma_addr_t, phys_addr_t, size_t);
-
-typedef void (*btf_trace_unmap_single)(void *, struct device *, dma_addr_t, size_t);
-
-typedef void (*btf_trace_unmap_sg)(void *, struct device *, dma_addr_t, size_t);
-
-typedef void (*btf_trace_bounce_unmap_single)(void *, struct device *, dma_addr_t, size_t);
-
-typedef void (*btf_trace_map_sg)(void *, struct device *, int, int, struct scatterlist *);
-
-typedef void (*btf_trace_bounce_map_sg)(void *, struct device *, int, int, struct scatterlist *);
+typedef void (*btf_trace_prq_report)(void *, struct intel_iommu *, struct device *, u64, u64, u64, u64, long unsigned int);
 
 enum iommu_fault_type {
 	IOMMU_FAULT_DMA_UNRECOV = 1,
@@ -75962,15 +93308,13 @@ struct page_req_dsc {
 	u64 priv_data[2];
 };
 
-struct svm_dev_ops;
-
 struct intel_svm_dev {
 	struct list_head list;
 	struct callback_head rcu;
 	struct device *dev;
 	struct intel_iommu *iommu;
-	struct svm_dev_ops *ops;
 	struct iommu_sva sva;
+	long unsigned int prq_seq_number;
 	u32 pasid;
 	int users;
 	u16 did;
@@ -75979,10 +93323,6 @@ struct intel_svm_dev {
 	u16 qdep;
 };
 
-struct svm_dev_ops {
-	void (*fault_cb)(struct device *, u32, u64, void *, int, int);
-};
-
 struct intel_svm {
 	struct mmu_notifier notifier;
 	struct mm_struct *mm;
@@ -75990,7 +93330,6 @@ struct intel_svm {
 	u32 pasid;
 	int gpasid;
 	struct list_head devs;
-	struct list_head list;
 };
 
 enum irq_mode {
@@ -76213,12 +93552,6 @@ typedef void (*btf_trace_unmap)(void *, long unsigned int, size_t, size_t);
 
 typedef void (*btf_trace_io_page_fault)(void *, struct device *, long unsigned int, int);
 
-struct iommu_dma_msi_page {
-	struct list_head list;
-	dma_addr_t iova;
-	phys_addr_t phys;
-};
-
 enum iommu_dma_cookie_type {
 	IOMMU_DMA_IOVA_COOKIE = 0,
 	IOMMU_DMA_MSI_COOKIE = 1,
@@ -76234,8 +93567,10 @@ struct iommu_dma_cookie {
 	struct iommu_domain *fq_domain;
 };
 
-struct ioasid_set {
-	int dummy;
+struct iommu_dma_msi_page {
+	struct list_head list;
+	dma_addr_t iova;
+	phys_addr_t phys;
 };
 
 struct ioasid_data {
@@ -76243,6 +93578,7 @@ struct ioasid_data {
 	struct ioasid_set *set;
 	void *private;
 	struct callback_head rcu;
+	refcount_t refs;
 };
 
 struct ioasid_allocator_data {
@@ -76265,6 +93601,8408 @@ struct iova_cpu_rcache {
 	struct iova_magazine *prev;
 };
 
+struct hyperv_root_ir_data {
+	u8 ioapic_id;
+	bool is_level;
+	struct hv_interrupt_entry entry;
+} __attribute__((packed));
+
+struct virtio_iommu_range_64 {
+	__le64 start;
+	__le64 end;
+};
+
+struct virtio_iommu_range_32 {
+	__le32 start;
+	__le32 end;
+};
+
+struct virtio_iommu_config {
+	__le64 page_size_mask;
+	struct virtio_iommu_range_64 input_range;
+	struct virtio_iommu_range_32 domain_range;
+	__le32 probe_size;
+};
+
+struct virtio_iommu_req_head {
+	__u8 type;
+	__u8 reserved[3];
+};
+
+struct virtio_iommu_req_tail {
+	__u8 status;
+	__u8 reserved[3];
+};
+
+struct virtio_iommu_req_attach {
+	struct virtio_iommu_req_head head;
+	__le32 domain;
+	__le32 endpoint;
+	__u8 reserved[8];
+	struct virtio_iommu_req_tail tail;
+};
+
+struct virtio_iommu_req_map {
+	struct virtio_iommu_req_head head;
+	__le32 domain;
+	__le64 virt_start;
+	__le64 virt_end;
+	__le64 phys_start;
+	__le32 flags;
+	struct virtio_iommu_req_tail tail;
+};
+
+struct virtio_iommu_req_unmap {
+	struct virtio_iommu_req_head head;
+	__le32 domain;
+	__le64 virt_start;
+	__le64 virt_end;
+	__u8 reserved[4];
+	struct virtio_iommu_req_tail tail;
+};
+
+struct virtio_iommu_probe_property {
+	__le16 type;
+	__le16 length;
+};
+
+struct virtio_iommu_probe_resv_mem {
+	struct virtio_iommu_probe_property head;
+	__u8 subtype;
+	__u8 reserved[3];
+	__le64 start;
+	__le64 end;
+};
+
+struct virtio_iommu_req_probe {
+	struct virtio_iommu_req_head head;
+	__le32 endpoint;
+	__u8 reserved[64];
+	__u8 properties[0];
+};
+
+struct virtio_iommu_fault {
+	__u8 reason;
+	__u8 reserved[3];
+	__le32 flags;
+	__le32 endpoint;
+	__u8 reserved2[4];
+	__le64 address;
+};
+
+struct viommu_dev {
+	struct iommu_device iommu;
+	struct device *dev;
+	struct virtio_device *vdev;
+	struct ida domain_ids;
+	struct virtqueue *vqs[2];
+	spinlock_t request_lock;
+	struct list_head requests;
+	void *evts;
+	struct iommu_domain_geometry geometry;
+	u64 pgsize_bitmap;
+	u32 first_domain;
+	u32 last_domain;
+	u32 map_flags;
+	u32 probe_size;
+};
+
+struct viommu_mapping {
+	phys_addr_t paddr;
+	struct interval_tree_node iova;
+	u32 flags;
+};
+
+struct viommu_domain {
+	struct iommu_domain domain;
+	struct viommu_dev *viommu;
+	struct mutex mutex;
+	unsigned int id;
+	u32 map_flags;
+	spinlock_t mappings_lock;
+	struct rb_root_cached mappings;
+	long unsigned int nr_endpoints;
+};
+
+struct viommu_endpoint {
+	struct device *dev;
+	struct viommu_dev *viommu;
+	struct viommu_domain *vdomain;
+	struct list_head resv_regions;
+};
+
+struct viommu_request {
+	struct list_head list;
+	void *writeback;
+	unsigned int write_offset;
+	unsigned int len;
+	char buf[0];
+};
+
+struct viommu_event {
+	union {
+		u32 head;
+		struct virtio_iommu_fault fault;
+	};
+};
+
+enum iommu_page_response_code {
+	IOMMU_PAGE_RESP_SUCCESS = 0,
+	IOMMU_PAGE_RESP_INVALID = 1,
+	IOMMU_PAGE_RESP_FAILURE = 2,
+};
+
+struct iopf_device_param {
+	struct device *dev;
+	struct iopf_queue *queue;
+	struct list_head queue_list;
+	struct list_head partial;
+};
+
+struct iopf_queue {
+	struct workqueue_struct *wq;
+	struct list_head devices;
+	struct mutex lock;
+};
+
+struct iopf_fault {
+	struct iommu_fault fault;
+	struct list_head list;
+};
+
+struct iopf_group {
+	struct iopf_fault last_fault;
+	struct list_head faults;
+	struct work_struct work;
+	struct device *dev;
+};
+
+struct cb_id {
+	__u32 idx;
+	__u32 val;
+};
+
+struct cn_msg {
+	struct cb_id id;
+	__u32 seq;
+	__u32 ack;
+	__u16 len;
+	__u16 flags;
+	__u8 data[0];
+};
+
+struct cn_queue_dev {
+	atomic_t refcnt;
+	unsigned char name[32];
+	struct list_head queue_list;
+	spinlock_t queue_lock;
+	struct sock *nls;
+};
+
+struct cn_callback_id {
+	unsigned char name[32];
+	struct cb_id id;
+};
+
+struct cn_callback_entry {
+	struct list_head callback_entry;
+	refcount_t refcnt;
+	struct cn_queue_dev *pdev;
+	struct cn_callback_id id;
+	void (*callback)(struct cn_msg *, struct netlink_skb_parms *);
+	u32 seq;
+	u32 group;
+};
+
+struct cn_dev {
+	struct cb_id id;
+	u32 seq;
+	u32 groups;
+	struct sock *nls;
+	struct cn_queue_dev *cbdev;
+};
+
+enum proc_cn_mcast_op {
+	PROC_CN_MCAST_LISTEN = 1,
+	PROC_CN_MCAST_IGNORE = 2,
+};
+
+struct fork_proc_event {
+	__kernel_pid_t parent_pid;
+	__kernel_pid_t parent_tgid;
+	__kernel_pid_t child_pid;
+	__kernel_pid_t child_tgid;
+};
+
+struct exec_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+};
+
+struct id_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+	union {
+		__u32 ruid;
+		__u32 rgid;
+	} r;
+	union {
+		__u32 euid;
+		__u32 egid;
+	} e;
+};
+
+struct sid_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+};
+
+struct ptrace_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+	__kernel_pid_t tracer_pid;
+	__kernel_pid_t tracer_tgid;
+};
+
+struct comm_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+	char comm[16];
+};
+
+struct coredump_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+	__kernel_pid_t parent_pid;
+	__kernel_pid_t parent_tgid;
+};
+
+struct exit_proc_event {
+	__kernel_pid_t process_pid;
+	__kernel_pid_t process_tgid;
+	__u32 exit_code;
+	__u32 exit_signal;
+	__kernel_pid_t parent_pid;
+	__kernel_pid_t parent_tgid;
+};
+
+struct proc_event {
+	enum what what;
+	__u32 cpu;
+	__u64 timestamp_ns;
+	union {
+		struct {
+			__u32 err;
+		} ack;
+		struct fork_proc_event fork;
+		struct exec_proc_event exec;
+		struct id_proc_event id;
+		struct sid_proc_event sid;
+		struct ptrace_proc_event ptrace;
+		struct comm_proc_event comm;
+		struct coredump_proc_event coredump;
+		struct exit_proc_event exit;
+	} event_data;
+};
+
+struct local_event {
+	local_lock_t lock;
+	__u32 count;
+};
+
+struct component_ops {
+	int (*bind)(struct device *, struct device *, void *);
+	void (*unbind)(struct device *, struct device *, void *);
+};
+
+struct component_master_ops {
+	int (*bind)(struct device *);
+	void (*unbind)(struct device *);
+};
+
+struct component;
+
+struct component_match_array {
+	void *data;
+	int (*compare)(struct device *, void *);
+	int (*compare_typed)(struct device *, int, void *);
+	void (*release)(struct device *, void *);
+	struct component *component;
+	bool duplicate;
+};
+
+struct master;
+
+struct component {
+	struct list_head node;
+	struct master *master;
+	bool bound;
+	const struct component_ops *ops;
+	int subcomponent;
+	struct device *dev;
+};
+
+struct component_match {
+	size_t alloc;
+	size_t num;
+	struct component_match_array *compare;
+};
+
+struct master {
+	struct list_head node;
+	bool bound;
+	const struct component_master_ops *ops;
+	struct device *parent;
+	struct component_match *match;
+};
+
+struct fwnode_link {
+	struct fwnode_handle *supplier;
+	struct list_head s_hook;
+	struct fwnode_handle *consumer;
+	struct list_head c_hook;
+};
+
+struct wake_irq {
+	struct device *dev;
+	unsigned int status;
+	int irq;
+	const char *name;
+};
+
+enum dpm_order {
+	DPM_ORDER_NONE = 0,
+	DPM_ORDER_DEV_AFTER_PARENT = 1,
+	DPM_ORDER_PARENT_BEFORE_DEV = 2,
+	DPM_ORDER_DEV_LAST = 3,
+};
+
+struct subsys_private {
+	struct kset subsys;
+	struct kset *devices_kset;
+	struct list_head interfaces;
+	struct mutex mutex;
+	struct kset *drivers_kset;
+	struct klist klist_devices;
+	struct klist klist_drivers;
+	struct blocking_notifier_head bus_notifier;
+	unsigned int drivers_autoprobe: 1;
+	struct bus_type *bus;
+	struct kset glue_dirs;
+	struct class *class;
+};
+
+struct driver_private {
+	struct kobject kobj;
+	struct klist klist_devices;
+	struct klist_node knode_bus;
+	struct module_kobject *mkobj;
+	struct device_driver *driver;
+};
+
+struct device_private {
+	struct klist klist_children;
+	struct klist_node knode_parent;
+	struct klist_node knode_driver;
+	struct klist_node knode_bus;
+	struct klist_node knode_class;
+	struct list_head deferred_probe;
+	struct device_driver *async_driver;
+	char *deferred_probe_reason;
+	struct device *device;
+	u8 dead: 1;
+};
+
+union device_attr_group_devres {
+	const struct attribute_group *group;
+	const struct attribute_group **groups;
+};
+
+struct class_dir {
+	struct kobject kobj;
+	struct class *class;
+};
+
+struct root_device {
+	struct device dev;
+	struct module *owner;
+};
+
+struct subsys_dev_iter {
+	struct klist_iter ki;
+	const struct device_type *type;
+};
+
+struct device_attach_data {
+	struct device *dev;
+	bool check_async;
+	bool want_async;
+	bool have_async;
+};
+
+struct class_attribute_string {
+	struct class_attribute attr;
+	char *str;
+};
+
+struct class_compat {
+	struct kobject *kobj;
+};
+
+struct irq_affinity_devres {
+	unsigned int count;
+	unsigned int irq[0];
+};
+
+struct platform_object {
+	struct platform_device pdev;
+	char name[0];
+};
+
+struct cpu_attr {
+	struct device_attribute attr;
+	const struct cpumask * const map;
+};
+
+struct probe {
+	struct probe *next;
+	dev_t dev;
+	long unsigned int range;
+	struct module *owner;
+	kobj_probe_t *get;
+	int (*lock)(dev_t, void *);
+	void *data;
+};
+
+struct kobj_map {
+	struct probe *probes[255];
+	struct mutex *lock;
+};
+
+struct devres_node {
+	struct list_head entry;
+	dr_release_t release;
+	const char *name;
+	size_t size;
+};
+
+struct devres {
+	struct devres_node node;
+	u8 data[0];
+};
+
+struct devres_group {
+	struct devres_node node[2];
+	void *id;
+	int color;
+};
+
+struct action_devres {
+	void *data;
+	void (*action)(void *);
+};
+
+struct pages_devres {
+	long unsigned int addr;
+	unsigned int order;
+};
+
+struct attribute_container {
+	struct list_head node;
+	struct klist containers;
+	struct class *class;
+	const struct attribute_group *grp;
+	struct device_attribute **attrs;
+	int (*match)(struct attribute_container *, struct device *);
+	long unsigned int flags;
+};
+
+struct internal_container {
+	struct klist_node node;
+	struct attribute_container *cont;
+	struct device classdev;
+};
+
+struct transport_container;
+
+struct transport_class {
+	struct class class;
+	int (*setup)(struct transport_container *, struct device *, struct device *);
+	int (*configure)(struct transport_container *, struct device *, struct device *);
+	int (*remove)(struct transport_container *, struct device *, struct device *);
+};
+
+struct transport_container {
+	struct attribute_container ac;
+	const struct attribute_group *statistics;
+};
+
+struct anon_transport_class {
+	struct transport_class tclass;
+	struct attribute_container container;
+};
+
+typedef void * (*devcon_match_fn_t)(struct fwnode_handle *, const char *, void *);
+
+struct mii_bus;
+
+struct mdio_device {
+	struct device dev;
+	struct mii_bus *bus;
+	char modalias[32];
+	int (*bus_match)(struct device *, struct device_driver *);
+	void (*device_free)(struct mdio_device *);
+	void (*device_remove)(struct mdio_device *);
+	int addr;
+	int flags;
+	struct gpio_desc *reset_gpio;
+	struct reset_control *reset_ctrl;
+	unsigned int reset_assert_delay;
+	unsigned int reset_deassert_delay;
+};
+
+struct phy_c45_device_ids {
+	u32 devices_in_package;
+	u32 mmds_present;
+	u32 device_ids[32];
+};
+
+enum phy_state {
+	PHY_DOWN = 0,
+	PHY_READY = 1,
+	PHY_HALTED = 2,
+	PHY_UP = 3,
+	PHY_RUNNING = 4,
+	PHY_NOLINK = 5,
+	PHY_CABLETEST = 6,
+};
+
+typedef enum {
+	PHY_INTERFACE_MODE_NA = 0,
+	PHY_INTERFACE_MODE_INTERNAL = 1,
+	PHY_INTERFACE_MODE_MII = 2,
+	PHY_INTERFACE_MODE_GMII = 3,
+	PHY_INTERFACE_MODE_SGMII = 4,
+	PHY_INTERFACE_MODE_TBI = 5,
+	PHY_INTERFACE_MODE_REVMII = 6,
+	PHY_INTERFACE_MODE_RMII = 7,
+	PHY_INTERFACE_MODE_REVRMII = 8,
+	PHY_INTERFACE_MODE_RGMII = 9,
+	PHY_INTERFACE_MODE_RGMII_ID = 10,
+	PHY_INTERFACE_MODE_RGMII_RXID = 11,
+	PHY_INTERFACE_MODE_RGMII_TXID = 12,
+	PHY_INTERFACE_MODE_RTBI = 13,
+	PHY_INTERFACE_MODE_SMII = 14,
+	PHY_INTERFACE_MODE_XGMII = 15,
+	PHY_INTERFACE_MODE_XLGMII = 16,
+	PHY_INTERFACE_MODE_MOCA = 17,
+	PHY_INTERFACE_MODE_QSGMII = 18,
+	PHY_INTERFACE_MODE_TRGMII = 19,
+	PHY_INTERFACE_MODE_100BASEX = 20,
+	PHY_INTERFACE_MODE_1000BASEX = 21,
+	PHY_INTERFACE_MODE_2500BASEX = 22,
+	PHY_INTERFACE_MODE_5GBASER = 23,
+	PHY_INTERFACE_MODE_RXAUI = 24,
+	PHY_INTERFACE_MODE_XAUI = 25,
+	PHY_INTERFACE_MODE_10GBASER = 26,
+	PHY_INTERFACE_MODE_25GBASER = 27,
+	PHY_INTERFACE_MODE_USXGMII = 28,
+	PHY_INTERFACE_MODE_10GKR = 29,
+	PHY_INTERFACE_MODE_MAX = 30,
+} phy_interface_t;
+
+struct phylink;
+
+struct phy_driver;
+
+struct phy_led_trigger;
+
+struct phy_package_shared;
+
+struct mii_timestamper;
+
+struct phy_device {
+	struct mdio_device mdio;
+	struct phy_driver *drv;
+	u32 phy_id;
+	struct phy_c45_device_ids c45_ids;
+	unsigned int is_c45: 1;
+	unsigned int is_internal: 1;
+	unsigned int is_pseudo_fixed_link: 1;
+	unsigned int is_gigabit_capable: 1;
+	unsigned int has_fixups: 1;
+	unsigned int suspended: 1;
+	unsigned int suspended_by_mdio_bus: 1;
+	unsigned int sysfs_links: 1;
+	unsigned int loopback_enabled: 1;
+	unsigned int downshifted_rate: 1;
+	unsigned int is_on_sfp_module: 1;
+	unsigned int mac_managed_pm: 1;
+	unsigned int autoneg: 1;
+	unsigned int link: 1;
+	unsigned int autoneg_complete: 1;
+	unsigned int interrupts: 1;
+	unsigned int irq_suspended: 1;
+	unsigned int irq_rerun: 1;
+	enum phy_state state;
+	u32 dev_flags;
+	phy_interface_t interface;
+	int speed;
+	int duplex;
+	int port;
+	int pause;
+	int asym_pause;
+	u8 master_slave_get;
+	u8 master_slave_set;
+	u8 master_slave_state;
+	long unsigned int supported[2];
+	long unsigned int advertising[2];
+	long unsigned int lp_advertising[2];
+	long unsigned int adv_old[2];
+	u32 eee_broken_modes;
+	struct phy_led_trigger *phy_led_triggers;
+	unsigned int phy_num_led_triggers;
+	struct phy_led_trigger *last_triggered;
+	struct phy_led_trigger *led_link_trigger;
+	int irq;
+	void *priv;
+	struct phy_package_shared *shared;
+	struct sk_buff *skb;
+	void *ehdr;
+	struct nlattr *nest;
+	struct delayed_work state_queue;
+	struct mutex lock;
+	bool sfp_bus_attached;
+	struct sfp_bus *sfp_bus;
+	struct phylink *phylink;
+	struct net_device *attached_dev;
+	struct mii_timestamper *mii_ts;
+	u8 mdix;
+	u8 mdix_ctrl;
+	void (*phy_link_change)(struct phy_device *, bool);
+	void (*adjust_link)(struct net_device *);
+	const struct macsec_ops *macsec_ops;
+};
+
+struct phy_tdr_config {
+	u32 first;
+	u32 last;
+	u32 step;
+	s8 pair;
+};
+
+struct mdio_bus_stats {
+	u64_stats_t transfers;
+	u64_stats_t errors;
+	u64_stats_t writes;
+	u64_stats_t reads;
+	struct u64_stats_sync syncp;
+};
+
+struct mii_bus {
+	struct module *owner;
+	const char *name;
+	char id[61];
+	void *priv;
+	int (*read)(struct mii_bus *, int, int);
+	int (*write)(struct mii_bus *, int, int, u16);
+	int (*reset)(struct mii_bus *);
+	struct mdio_bus_stats stats[32];
+	struct mutex mdio_lock;
+	struct device *parent;
+	enum {
+		MDIOBUS_ALLOCATED = 1,
+		MDIOBUS_REGISTERED = 2,
+		MDIOBUS_UNREGISTERED = 3,
+		MDIOBUS_RELEASED = 4,
+	} state;
+	struct device dev;
+	struct mdio_device *mdio_map[32];
+	u32 phy_mask;
+	u32 phy_ignore_ta_mask;
+	int irq[32];
+	int reset_delay_us;
+	int reset_post_delay_us;
+	struct gpio_desc *reset_gpiod;
+	enum {
+		MDIOBUS_NO_CAP = 0,
+		MDIOBUS_C22 = 1,
+		MDIOBUS_C45 = 2,
+		MDIOBUS_C22_C45 = 3,
+	} probe_capabilities;
+	struct mutex shared_lock;
+	struct phy_package_shared *shared[32];
+};
+
+struct mdio_driver_common {
+	struct device_driver driver;
+	int flags;
+};
+
+struct mii_timestamper {
+	bool (*rxtstamp)(struct mii_timestamper *, struct sk_buff *, int);
+	void (*txtstamp)(struct mii_timestamper *, struct sk_buff *, int);
+	int (*hwtstamp)(struct mii_timestamper *, struct ifreq *);
+	void (*link_state)(struct mii_timestamper *, struct phy_device *);
+	int (*ts_info)(struct mii_timestamper *, struct ethtool_ts_info *);
+	struct device *device;
+};
+
+struct phy_package_shared {
+	int addr;
+	refcount_t refcnt;
+	long unsigned int flags;
+	size_t priv_size;
+	void *priv;
+};
+
+struct phy_driver {
+	struct mdio_driver_common mdiodrv;
+	u32 phy_id;
+	char *name;
+	u32 phy_id_mask;
+	const long unsigned int * const features;
+	u32 flags;
+	const void *driver_data;
+	int (*soft_reset)(struct phy_device *);
+	int (*config_init)(struct phy_device *);
+	int (*probe)(struct phy_device *);
+	int (*get_features)(struct phy_device *);
+	int (*suspend)(struct phy_device *);
+	int (*resume)(struct phy_device *);
+	int (*config_aneg)(struct phy_device *);
+	int (*aneg_done)(struct phy_device *);
+	int (*read_status)(struct phy_device *);
+	int (*config_intr)(struct phy_device *);
+	irqreturn_t (*handle_interrupt)(struct phy_device *);
+	void (*remove)(struct phy_device *);
+	int (*match_phy_device)(struct phy_device *);
+	int (*set_wol)(struct phy_device *, struct ethtool_wolinfo *);
+	void (*get_wol)(struct phy_device *, struct ethtool_wolinfo *);
+	void (*link_change_notify)(struct phy_device *);
+	int (*read_mmd)(struct phy_device *, int, u16);
+	int (*write_mmd)(struct phy_device *, int, u16, u16);
+	int (*read_page)(struct phy_device *);
+	int (*write_page)(struct phy_device *, int);
+	int (*module_info)(struct phy_device *, struct ethtool_modinfo *);
+	int (*module_eeprom)(struct phy_device *, struct ethtool_eeprom *, u8 *);
+	int (*cable_test_start)(struct phy_device *);
+	int (*cable_test_tdr_start)(struct phy_device *, const struct phy_tdr_config *);
+	int (*cable_test_get_status)(struct phy_device *, bool *);
+	int (*get_sset_count)(struct phy_device *);
+	void (*get_strings)(struct phy_device *, u8 *);
+	void (*get_stats)(struct phy_device *, struct ethtool_stats *, u64 *);
+	int (*get_tunable)(struct phy_device *, struct ethtool_tunable *, void *);
+	int (*set_tunable)(struct phy_device *, struct ethtool_tunable *, const void *);
+	int (*set_loopback)(struct phy_device *, bool);
+	int (*get_sqi)(struct phy_device *);
+	int (*get_sqi_max)(struct phy_device *);
+};
+
+struct software_node_ref_args {
+	const struct software_node *node;
+	unsigned int nargs;
+	u64 args[8];
+};
+
+struct swnode {
+	struct kobject kobj;
+	struct fwnode_handle fwnode;
+	const struct software_node *node;
+	int id;
+	struct ida child_ids;
+	struct list_head entry;
+	struct list_head children;
+	struct swnode *parent;
+	unsigned int allocated: 1;
+	unsigned int managed: 1;
+};
+
+struct auxiliary_device_id {
+	char name[32];
+	kernel_ulong_t driver_data;
+};
+
+struct auxiliary_device {
+	struct device dev;
+	const char *name;
+	u32 id;
+};
+
+struct auxiliary_driver {
+	int (*probe)(struct auxiliary_device *, const struct auxiliary_device_id *);
+	void (*remove)(struct auxiliary_device *);
+	void (*shutdown)(struct auxiliary_device *);
+	int (*suspend)(struct auxiliary_device *, pm_message_t);
+	int (*resume)(struct auxiliary_device *);
+	const char *name;
+	struct device_driver driver;
+	const struct auxiliary_device_id *id_table;
+};
+
+struct req {
+	struct req *next;
+	struct completion done;
+	int err;
+	const char *name;
+	umode_t mode;
+	kuid_t uid;
+	kgid_t gid;
+	struct device *dev;
+};
+
+typedef int (*pm_callback_t)(struct device *);
+
+enum gpd_status {
+	GENPD_STATE_ON = 0,
+	GENPD_STATE_OFF = 1,
+};
+
+enum genpd_notication {
+	GENPD_NOTIFY_PRE_OFF = 0,
+	GENPD_NOTIFY_OFF = 1,
+	GENPD_NOTIFY_PRE_ON = 2,
+	GENPD_NOTIFY_ON = 3,
+};
+
+struct dev_power_governor {
+	bool (*power_down_ok)(struct dev_pm_domain *);
+	bool (*suspend_ok)(struct device *);
+};
+
+struct gpd_dev_ops {
+	int (*start)(struct device *);
+	int (*stop)(struct device *);
+};
+
+struct genpd_power_state {
+	s64 power_off_latency_ns;
+	s64 power_on_latency_ns;
+	s64 residency_ns;
+	u64 usage;
+	u64 rejected;
+	struct fwnode_handle *fwnode;
+	ktime_t idle_time;
+	void *data;
+};
+
+struct opp_table;
+
+struct dev_pm_opp;
+
+struct genpd_lock_ops;
+
+struct generic_pm_domain {
+	struct device dev;
+	struct dev_pm_domain domain;
+	struct list_head gpd_list_node;
+	struct list_head parent_links;
+	struct list_head child_links;
+	struct list_head dev_list;
+	struct dev_power_governor *gov;
+	struct work_struct power_off_work;
+	struct fwnode_handle *provider;
+	bool has_provider;
+	const char *name;
+	atomic_t sd_count;
+	enum gpd_status status;
+	unsigned int device_count;
+	unsigned int suspended_count;
+	unsigned int prepared_count;
+	unsigned int performance_state;
+	cpumask_var_t cpus;
+	int (*power_off)(struct generic_pm_domain *);
+	int (*power_on)(struct generic_pm_domain *);
+	struct raw_notifier_head power_notifiers;
+	struct opp_table *opp_table;
+	unsigned int (*opp_to_performance_state)(struct generic_pm_domain *, struct dev_pm_opp *);
+	int (*set_performance_state)(struct generic_pm_domain *, unsigned int);
+	struct gpd_dev_ops dev_ops;
+	s64 max_off_time_ns;
+	ktime_t next_wakeup;
+	bool max_off_time_changed;
+	bool cached_power_down_ok;
+	bool cached_power_down_state_idx;
+	int (*attach_dev)(struct generic_pm_domain *, struct device *);
+	void (*detach_dev)(struct generic_pm_domain *, struct device *);
+	unsigned int flags;
+	struct genpd_power_state *states;
+	void (*free_states)(struct genpd_power_state *, unsigned int);
+	unsigned int state_count;
+	unsigned int state_idx;
+	ktime_t on_time;
+	ktime_t accounting_time;
+	const struct genpd_lock_ops *lock_ops;
+	union {
+		struct mutex mlock;
+		struct {
+			spinlock_t slock;
+			long unsigned int lock_flags;
+		};
+	};
+};
+
+struct genpd_lock_ops {
+	void (*lock)(struct generic_pm_domain *);
+	void (*lock_nested)(struct generic_pm_domain *, int);
+	int (*lock_interruptible)(struct generic_pm_domain *);
+	void (*unlock)(struct generic_pm_domain *);
+};
+
+struct gpd_link {
+	struct generic_pm_domain *parent;
+	struct list_head parent_node;
+	struct generic_pm_domain *child;
+	struct list_head child_node;
+	unsigned int performance_state;
+	unsigned int prev_performance_state;
+};
+
+struct gpd_timing_data {
+	s64 suspend_latency_ns;
+	s64 resume_latency_ns;
+	s64 effective_constraint_ns;
+	bool constraint_changed;
+	bool cached_suspend_ok;
+};
+
+struct generic_pm_domain_data {
+	struct pm_domain_data base;
+	struct gpd_timing_data td;
+	struct notifier_block nb;
+	struct notifier_block *power_nb;
+	int cpu;
+	unsigned int performance_state;
+	unsigned int default_pstate;
+	unsigned int rpm_pstate;
+	ktime_t next_wakeup;
+	void *data;
+};
+
+struct pm_clk_notifier_block {
+	struct notifier_block nb;
+	struct dev_pm_domain *pm_domain;
+	char *con_ids[0];
+};
+
+enum pce_status {
+	PCE_STATUS_NONE = 0,
+	PCE_STATUS_ACQUIRED = 1,
+	PCE_STATUS_PREPARED = 2,
+	PCE_STATUS_ENABLED = 3,
+	PCE_STATUS_ERROR = 4,
+};
+
+struct pm_clock_entry {
+	struct list_head node;
+	char *con_id;
+	struct clk *clk;
+	enum pce_status status;
+	bool enabled_when_prepared;
+};
+
+struct isa_driver {
+	int (*match)(struct device *, unsigned int);
+	int (*probe)(struct device *, unsigned int);
+	void (*remove)(struct device *, unsigned int);
+	void (*shutdown)(struct device *, unsigned int);
+	int (*suspend)(struct device *, unsigned int, pm_message_t);
+	int (*resume)(struct device *, unsigned int);
+	struct device_driver driver;
+	struct device *devices;
+};
+
+struct isa_dev {
+	struct device dev;
+	struct device *next;
+	unsigned int id;
+};
+
+struct firmware_fallback_config {
+	unsigned int force_sysfs_fallback;
+	unsigned int ignore_sysfs_fallback;
+	int old_timeout;
+	int loading_timeout;
+};
+
+enum fw_opt {
+	FW_OPT_UEVENT = 1,
+	FW_OPT_NOWAIT = 2,
+	FW_OPT_USERHELPER = 4,
+	FW_OPT_NO_WARN = 8,
+	FW_OPT_NOCACHE = 16,
+	FW_OPT_NOFALLBACK_SYSFS = 32,
+	FW_OPT_FALLBACK_PLATFORM = 64,
+	FW_OPT_PARTIAL = 128,
+};
+
+enum fw_status {
+	FW_STATUS_UNKNOWN = 0,
+	FW_STATUS_LOADING = 1,
+	FW_STATUS_DONE = 2,
+	FW_STATUS_ABORTED = 3,
+};
+
+struct fw_state {
+	struct completion completion;
+	enum fw_status status;
+};
+
+struct firmware_cache;
+
+struct fw_priv {
+	struct kref ref;
+	struct list_head list;
+	struct firmware_cache *fwc;
+	struct fw_state fw_st;
+	void *data;
+	size_t size;
+	size_t allocated_size;
+	size_t offset;
+	u32 opt_flags;
+	bool is_paged_buf;
+	struct page **pages;
+	int nr_pages;
+	int page_array_size;
+	bool need_uevent;
+	struct list_head pending_list;
+	const char *fw_name;
+};
+
+struct firmware_cache {
+	spinlock_t lock;
+	struct list_head head;
+	int state;
+	spinlock_t name_lock;
+	struct list_head fw_names;
+	struct delayed_work work;
+	struct notifier_block pm_notify;
+};
+
+struct fw_cache_entry {
+	struct list_head list;
+	const char *name;
+};
+
+struct fw_name_devm {
+	long unsigned int magic;
+	const char *name;
+};
+
+struct firmware_work {
+	struct work_struct work;
+	struct module *module;
+	const char *name;
+	struct device *device;
+	void *context;
+	void (*cont)(const struct firmware *, void *);
+	u32 opt_flags;
+};
+
+struct fw_sysfs {
+	bool nowait;
+	struct device dev;
+	struct fw_priv *fw_priv;
+	struct firmware *fw;
+};
+
+struct node_access_nodes {
+	struct device dev;
+	struct list_head list_node;
+	unsigned int access;
+	struct node_hmem_attrs hmem_attrs;
+};
+
+struct node_cache_info {
+	struct device dev;
+	struct list_head node;
+	struct node_cache_attrs cache_attrs;
+};
+
+struct node_attr {
+	struct device_attribute attr;
+	enum node_states state;
+};
+
+struct for_each_memory_block_cb_data {
+	walk_memory_blocks_func_t func;
+	void *arg;
+};
+
+struct reg_sequence {
+	unsigned int reg;
+	unsigned int def;
+	unsigned int delay_us;
+};
+
+struct regmap_async {
+	struct list_head list;
+	struct regmap *map;
+	void *work_buf;
+};
+
+struct reg_field {
+	unsigned int reg;
+	unsigned int lsb;
+	unsigned int msb;
+	unsigned int id_size;
+	unsigned int id_offset;
+};
+
+struct regmap_format {
+	size_t buf_size;
+	size_t reg_bytes;
+	size_t pad_bytes;
+	size_t val_bytes;
+	void (*format_write)(struct regmap *, unsigned int, unsigned int);
+	void (*format_reg)(void *, unsigned int, unsigned int);
+	void (*format_val)(void *, unsigned int, unsigned int);
+	unsigned int (*parse_val)(const void *);
+	void (*parse_inplace)(void *);
+};
+
+struct regcache_ops;
+
+struct hwspinlock;
+
+struct regmap {
+	union {
+		struct mutex mutex;
+		struct {
+			spinlock_t spinlock;
+			long unsigned int spinlock_flags;
+		};
+		struct {
+			raw_spinlock_t raw_spinlock;
+			long unsigned int raw_spinlock_flags;
+		};
+	};
+	regmap_lock lock;
+	regmap_unlock unlock;
+	void *lock_arg;
+	gfp_t alloc_flags;
+	struct device *dev;
+	void *work_buf;
+	struct regmap_format format;
+	const struct regmap_bus *bus;
+	void *bus_context;
+	const char *name;
+	bool async;
+	spinlock_t async_lock;
+	wait_queue_head_t async_waitq;
+	struct list_head async_list;
+	struct list_head async_free;
+	int async_ret;
+	bool debugfs_disable;
+	struct dentry *debugfs;
+	const char *debugfs_name;
+	unsigned int debugfs_reg_len;
+	unsigned int debugfs_val_len;
+	unsigned int debugfs_tot_len;
+	struct list_head debugfs_off_cache;
+	struct mutex cache_lock;
+	unsigned int max_register;
+	bool (*writeable_reg)(struct device *, unsigned int);
+	bool (*readable_reg)(struct device *, unsigned int);
+	bool (*volatile_reg)(struct device *, unsigned int);
+	bool (*precious_reg)(struct device *, unsigned int);
+	bool (*writeable_noinc_reg)(struct device *, unsigned int);
+	bool (*readable_noinc_reg)(struct device *, unsigned int);
+	const struct regmap_access_table *wr_table;
+	const struct regmap_access_table *rd_table;
+	const struct regmap_access_table *volatile_table;
+	const struct regmap_access_table *precious_table;
+	const struct regmap_access_table *wr_noinc_table;
+	const struct regmap_access_table *rd_noinc_table;
+	int (*reg_read)(void *, unsigned int, unsigned int *);
+	int (*reg_write)(void *, unsigned int, unsigned int);
+	int (*reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
+	int (*read)(void *, const void *, size_t, void *, size_t);
+	int (*write)(void *, const void *, size_t);
+	bool defer_caching;
+	long unsigned int read_flag_mask;
+	long unsigned int write_flag_mask;
+	int reg_shift;
+	int reg_stride;
+	int reg_stride_order;
+	const struct regcache_ops *cache_ops;
+	enum regcache_type cache_type;
+	unsigned int cache_size_raw;
+	unsigned int cache_word_size;
+	unsigned int num_reg_defaults;
+	unsigned int num_reg_defaults_raw;
+	bool cache_only;
+	bool cache_bypass;
+	bool cache_free;
+	struct reg_default *reg_defaults;
+	const void *reg_defaults_raw;
+	void *cache;
+	bool cache_dirty;
+	bool no_sync_defaults;
+	struct reg_sequence *patch;
+	int patch_regs;
+	bool use_single_read;
+	bool use_single_write;
+	bool can_multi_write;
+	size_t max_raw_read;
+	size_t max_raw_write;
+	struct rb_root range_tree;
+	void *selector_work_buf;
+	struct hwspinlock *hwlock;
+	bool can_sleep;
+};
+
+struct regcache_ops {
+	const char *name;
+	enum regcache_type type;
+	int (*init)(struct regmap *);
+	int (*exit)(struct regmap *);
+	void (*debugfs_init)(struct regmap *);
+	int (*read)(struct regmap *, unsigned int, unsigned int *);
+	int (*write)(struct regmap *, unsigned int, unsigned int);
+	int (*sync)(struct regmap *, unsigned int, unsigned int);
+	int (*drop)(struct regmap *, unsigned int, unsigned int);
+};
+
+struct regmap_range_node {
+	struct rb_node node;
+	const char *name;
+	struct regmap *map;
+	unsigned int range_min;
+	unsigned int range_max;
+	unsigned int selector_reg;
+	unsigned int selector_mask;
+	int selector_shift;
+	unsigned int window_start;
+	unsigned int window_len;
+};
+
+struct regmap_field {
+	struct regmap *regmap;
+	unsigned int mask;
+	unsigned int shift;
+	unsigned int reg;
+	unsigned int id_size;
+	unsigned int id_offset;
+};
+
+struct trace_event_raw_regmap_reg {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	unsigned int reg;
+	unsigned int val;
+	char __data[0];
+};
+
+struct trace_event_raw_regmap_block {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	unsigned int reg;
+	int count;
+	char __data[0];
+};
+
+struct trace_event_raw_regcache_sync {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	u32 __data_loc_status;
+	u32 __data_loc_type;
+	char __data[0];
+};
+
+struct trace_event_raw_regmap_bool {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	int flag;
+	char __data[0];
+};
+
+struct trace_event_raw_regmap_async {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	char __data[0];
+};
+
+struct trace_event_raw_regcache_drop_region {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	unsigned int from;
+	unsigned int to;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_regmap_reg {
+	u32 name;
+};
+
+struct trace_event_data_offsets_regmap_block {
+	u32 name;
+};
+
+struct trace_event_data_offsets_regcache_sync {
+	u32 name;
+	u32 status;
+	u32 type;
+};
+
+struct trace_event_data_offsets_regmap_bool {
+	u32 name;
+};
+
+struct trace_event_data_offsets_regmap_async {
+	u32 name;
+};
+
+struct trace_event_data_offsets_regcache_drop_region {
+	u32 name;
+};
+
+typedef void (*btf_trace_regmap_reg_write)(void *, struct regmap *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_regmap_reg_read)(void *, struct regmap *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_regmap_reg_read_cache)(void *, struct regmap *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_regmap_hw_read_start)(void *, struct regmap *, unsigned int, int);
+
+typedef void (*btf_trace_regmap_hw_read_done)(void *, struct regmap *, unsigned int, int);
+
+typedef void (*btf_trace_regmap_hw_write_start)(void *, struct regmap *, unsigned int, int);
+
+typedef void (*btf_trace_regmap_hw_write_done)(void *, struct regmap *, unsigned int, int);
+
+typedef void (*btf_trace_regcache_sync)(void *, struct regmap *, const char *, const char *);
+
+typedef void (*btf_trace_regmap_cache_only)(void *, struct regmap *, bool);
+
+typedef void (*btf_trace_regmap_cache_bypass)(void *, struct regmap *, bool);
+
+typedef void (*btf_trace_regmap_async_write_start)(void *, struct regmap *, unsigned int, int);
+
+typedef void (*btf_trace_regmap_async_io_complete)(void *, struct regmap *);
+
+typedef void (*btf_trace_regmap_async_complete_start)(void *, struct regmap *);
+
+typedef void (*btf_trace_regmap_async_complete_done)(void *, struct regmap *);
+
+typedef void (*btf_trace_regcache_drop_region)(void *, struct regmap *, unsigned int, unsigned int);
+
+struct regcache_rbtree_node {
+	void *block;
+	long int *cache_present;
+	unsigned int base_reg;
+	unsigned int blklen;
+	struct rb_node node;
+};
+
+struct regcache_rbtree_ctx {
+	struct rb_root root;
+	struct regcache_rbtree_node *cached_rbnode;
+};
+
+struct regmap_debugfs_off_cache {
+	struct list_head list;
+	off_t min;
+	off_t max;
+	unsigned int base_reg;
+	unsigned int max_reg;
+};
+
+struct regmap_debugfs_node {
+	struct regmap *map;
+	struct list_head link;
+};
+
+struct regmap_async_spi {
+	struct regmap_async core;
+	struct spi_message m;
+	struct spi_transfer t[2];
+};
+
+struct regmap_mmio_context {
+	void *regs;
+	unsigned int val_bytes;
+	bool relaxed_mmio;
+	bool attached_clk;
+	struct clk *clk;
+	void (*reg_write)(struct regmap_mmio_context *, unsigned int, unsigned int);
+	unsigned int (*reg_read)(struct regmap_mmio_context *, unsigned int);
+};
+
+struct regmap_irq_chip_data {
+	struct mutex lock;
+	struct irq_chip irq_chip;
+	struct regmap *map;
+	const struct regmap_irq_chip *chip;
+	int irq_base;
+	struct irq_domain *domain;
+	int irq;
+	int wake_count;
+	void *status_reg_buf;
+	unsigned int *main_status_buf;
+	unsigned int *status_buf;
+	unsigned int *mask_buf;
+	unsigned int *mask_buf_def;
+	unsigned int *wake_buf;
+	unsigned int *type_buf;
+	unsigned int *type_buf_def;
+	unsigned int **virt_buf;
+	unsigned int irq_reg_stride;
+	unsigned int type_reg_stride;
+	bool clear_status: 1;
+};
+
+struct devcd_entry {
+	struct device devcd_dev;
+	void *data;
+	size_t datalen;
+	struct mutex mutex;
+	bool delete_work;
+	struct module *owner;
+	ssize_t (*read)(char *, loff_t, size_t, void *, size_t);
+	void (*free)(void *);
+	struct delayed_work del_wk;
+	struct device *failing_dev;
+};
+
+typedef void (*irq_write_msi_msg_t)(struct msi_desc *, struct msi_msg *);
+
+struct platform_msi_priv_data {
+	struct device *dev;
+	void *host_data;
+	const struct attribute_group **msi_irq_groups;
+	msi_alloc_info_t arg;
+	irq_write_msi_msg_t write_msg;
+	int devid;
+};
+
+struct trace_event_raw_devres {
+	struct trace_entry ent;
+	u32 __data_loc_devname;
+	struct device *dev;
+	const char *op;
+	void *node;
+	const char *name;
+	size_t size;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_devres {
+	u32 devname;
+};
+
+typedef void (*btf_trace_devres_log)(void *, struct device *, const char *, void *, const char *, size_t);
+
+typedef long unsigned int __kernel_old_dev_t;
+
+typedef u16 compat_dev_t;
+
+enum {
+	LO_FLAGS_READ_ONLY = 1,
+	LO_FLAGS_AUTOCLEAR = 4,
+	LO_FLAGS_PARTSCAN = 8,
+	LO_FLAGS_DIRECT_IO = 16,
+};
+
+struct loop_info {
+	int lo_number;
+	__kernel_old_dev_t lo_device;
+	long unsigned int lo_inode;
+	__kernel_old_dev_t lo_rdevice;
+	int lo_offset;
+	int lo_encrypt_type;
+	int lo_encrypt_key_size;
+	int lo_flags;
+	char lo_name[64];
+	unsigned char lo_encrypt_key[32];
+	long unsigned int lo_init[2];
+	char reserved[4];
+};
+
+struct loop_info64 {
+	__u64 lo_device;
+	__u64 lo_inode;
+	__u64 lo_rdevice;
+	__u64 lo_offset;
+	__u64 lo_sizelimit;
+	__u32 lo_number;
+	__u32 lo_encrypt_type;
+	__u32 lo_encrypt_key_size;
+	__u32 lo_flags;
+	__u8 lo_file_name[64];
+	__u8 lo_crypt_name[64];
+	__u8 lo_encrypt_key[32];
+	__u64 lo_init[2];
+};
+
+struct loop_config {
+	__u32 fd;
+	__u32 block_size;
+	struct loop_info64 info;
+	__u64 __reserved[8];
+};
+
+enum {
+	Lo_unbound = 0,
+	Lo_bound = 1,
+	Lo_rundown = 2,
+	Lo_deleting = 3,
+};
+
+struct loop_func_table;
+
+struct loop_device {
+	int lo_number;
+	atomic_t lo_refcnt;
+	loff_t lo_offset;
+	loff_t lo_sizelimit;
+	int lo_flags;
+	int (*transfer)(struct loop_device *, int, struct page *, unsigned int, struct page *, unsigned int, int, sector_t);
+	char lo_file_name[64];
+	char lo_crypt_name[64];
+	char lo_encrypt_key[32];
+	int lo_encrypt_key_size;
+	struct loop_func_table *lo_encryption;
+	__u32 lo_init[2];
+	kuid_t lo_key_owner;
+	int (*ioctl)(struct loop_device *, int, long unsigned int);
+	struct file *lo_backing_file;
+	struct file *lo_backing_virt_file;
+	struct block_device *lo_device;
+	void *key_data;
+	gfp_t old_gfp_mask;
+	spinlock_t lo_lock;
+	int lo_state;
+	spinlock_t lo_work_lock;
+	struct workqueue_struct *workqueue;
+	struct work_struct rootcg_work;
+	struct list_head rootcg_cmd_list;
+	struct list_head idle_worker_list;
+	struct rb_root worker_tree;
+	struct timer_list timer;
+	bool use_dio;
+	bool sysfs_inited;
+	struct request_queue *lo_queue;
+	struct blk_mq_tag_set tag_set;
+	struct gendisk *lo_disk;
+	struct mutex lo_mutex;
+	bool idr_visible;
+};
+
+struct loop_func_table {
+	int number;
+	int (*transfer)(struct loop_device *, int, struct page *, unsigned int, struct page *, unsigned int, int, sector_t);
+	int (*init)(struct loop_device *, const struct loop_info64 *);
+	int (*release)(struct loop_device *);
+	int (*ioctl)(struct loop_device *, int, long unsigned int);
+	struct module *owner;
+};
+
+struct loop_cmd {
+	struct list_head list_entry;
+	bool use_aio;
+	atomic_t ref;
+	long int ret;
+	struct kiocb iocb;
+	struct bio_vec *bvec;
+	struct cgroup_subsys_state *blkcg_css;
+	struct cgroup_subsys_state *memcg_css;
+};
+
+struct loop_worker {
+	struct rb_node rb_node;
+	struct work_struct work;
+	struct list_head cmd_list;
+	struct list_head idle_list;
+	struct loop_device *lo;
+	struct cgroup_subsys_state *blkcg_css;
+	long unsigned int last_ran_at;
+};
+
+struct compat_loop_info {
+	compat_int_t lo_number;
+	compat_dev_t lo_device;
+	compat_ulong_t lo_inode;
+	compat_dev_t lo_rdevice;
+	compat_int_t lo_offset;
+	compat_int_t lo_encrypt_type;
+	compat_int_t lo_encrypt_key_size;
+	compat_int_t lo_flags;
+	char lo_name[64];
+	unsigned char lo_encrypt_key[32];
+	compat_ulong_t lo_init[2];
+	char reserved[4];
+};
+
+struct cdrom_device_ops;
+
+struct cdrom_device_info {
+	const struct cdrom_device_ops *ops;
+	struct list_head list;
+	struct gendisk *disk;
+	void *handle;
+	int mask;
+	int speed;
+	int capacity;
+	unsigned int options: 30;
+	unsigned int mc_flags: 2;
+	unsigned int vfs_events;
+	unsigned int ioctl_events;
+	int use_count;
+	char name[20];
+	__u8 sanyo_slot: 2;
+	__u8 keeplocked: 1;
+	__u8 reserved: 5;
+	int cdda_method;
+	__u8 last_sense;
+	__u8 media_written;
+	short unsigned int mmc3_profile;
+	int for_data;
+	int (*exit)(struct cdrom_device_info *);
+	int mrw_mode_page;
+};
+
+struct scsi_sense_hdr {
+	u8 response_code;
+	u8 sense_key;
+	u8 asc;
+	u8 ascq;
+	u8 byte4;
+	u8 byte5;
+	u8 byte6;
+	u8 additional_length;
+};
+
+struct cdrom_msf0 {
+	__u8 minute;
+	__u8 second;
+	__u8 frame;
+};
+
+union cdrom_addr {
+	struct cdrom_msf0 msf;
+	int lba;
+};
+
+struct cdrom_multisession {
+	union cdrom_addr addr;
+	__u8 xa_flag;
+	__u8 addr_format;
+};
+
+struct cdrom_mcn {
+	__u8 medium_catalog_number[14];
+};
+
+struct packet_command {
+	unsigned char cmd[12];
+	unsigned char *buffer;
+	unsigned int buflen;
+	int stat;
+	struct scsi_sense_hdr *sshdr;
+	unsigned char data_direction;
+	int quiet;
+	int timeout;
+	void *reserved[1];
+};
+
+struct cdrom_device_ops {
+	int (*open)(struct cdrom_device_info *, int);
+	void (*release)(struct cdrom_device_info *);
+	int (*drive_status)(struct cdrom_device_info *, int);
+	unsigned int (*check_events)(struct cdrom_device_info *, unsigned int, int);
+	int (*tray_move)(struct cdrom_device_info *, int);
+	int (*lock_door)(struct cdrom_device_info *, int);
+	int (*select_speed)(struct cdrom_device_info *, int);
+	int (*select_disc)(struct cdrom_device_info *, int);
+	int (*get_last_session)(struct cdrom_device_info *, struct cdrom_multisession *);
+	int (*get_mcn)(struct cdrom_device_info *, struct cdrom_mcn *);
+	int (*reset)(struct cdrom_device_info *);
+	int (*audio_ioctl)(struct cdrom_device_info *, unsigned int, void *);
+	int (*generic_packet)(struct cdrom_device_info *, struct packet_command *);
+	int (*read_cdda_bpc)(struct cdrom_device_info *, void *, u32, u32, u8 *);
+	const int capability;
+};
+
+typedef unsigned int RING_IDX;
+
+typedef uint16_t blkif_vdev_t;
+
+typedef uint64_t blkif_sector_t;
+
+struct blkif_request_segment {
+	grant_ref_t gref;
+	uint8_t first_sect;
+	uint8_t last_sect;
+};
+
+struct blkif_request_rw {
+	uint8_t nr_segments;
+	blkif_vdev_t handle;
+	uint32_t _pad1;
+	uint64_t id;
+	blkif_sector_t sector_number;
+	struct blkif_request_segment seg[11];
+} __attribute__((packed));
+
+struct blkif_request_discard {
+	uint8_t flag;
+	blkif_vdev_t _pad1;
+	uint32_t _pad2;
+	uint64_t id;
+	blkif_sector_t sector_number;
+	uint64_t nr_sectors;
+	uint8_t _pad3;
+} __attribute__((packed));
+
+struct blkif_request_other {
+	uint8_t _pad1;
+	blkif_vdev_t _pad2;
+	uint32_t _pad3;
+	uint64_t id;
+} __attribute__((packed));
+
+struct blkif_request_indirect {
+	uint8_t indirect_op;
+	uint16_t nr_segments;
+	uint32_t _pad1;
+	uint64_t id;
+	blkif_sector_t sector_number;
+	blkif_vdev_t handle;
+	uint16_t _pad2;
+	grant_ref_t indirect_grefs[8];
+	uint32_t _pad3;
+} __attribute__((packed));
+
+struct blkif_request {
+	uint8_t operation;
+	union {
+		struct blkif_request_rw rw;
+		struct blkif_request_discard discard;
+		struct blkif_request_other other;
+		struct blkif_request_indirect indirect;
+	} u;
+};
+
+struct blkif_response {
+	uint64_t id;
+	uint8_t operation;
+	int16_t status;
+};
+
+union blkif_sring_entry {
+	struct blkif_request req;
+	struct blkif_response rsp;
+};
+
+struct blkif_sring {
+	RING_IDX req_prod;
+	RING_IDX req_event;
+	RING_IDX rsp_prod;
+	RING_IDX rsp_event;
+	uint8_t __pad[48];
+	union blkif_sring_entry ring[1];
+};
+
+struct blkif_front_ring {
+	RING_IDX req_prod_pvt;
+	RING_IDX rsp_cons;
+	unsigned int nr_ents;
+	struct blkif_sring *sring;
+};
+
+enum blkif_state {
+	BLKIF_STATE_DISCONNECTED = 0,
+	BLKIF_STATE_CONNECTED = 1,
+	BLKIF_STATE_SUSPENDED = 2,
+	BLKIF_STATE_ERROR = 3,
+};
+
+struct grant {
+	grant_ref_t gref;
+	struct page *page;
+	struct list_head node;
+};
+
+enum blk_req_status {
+	REQ_PROCESSING = 0,
+	REQ_WAITING = 1,
+	REQ_DONE = 2,
+	REQ_ERROR = 3,
+	REQ_EOPNOTSUPP = 4,
+};
+
+struct blk_shadow {
+	struct blkif_request req;
+	struct request *request;
+	struct grant **grants_used;
+	struct grant **indirect_grants;
+	struct scatterlist *sg;
+	unsigned int num_sg;
+	enum blk_req_status status;
+	long unsigned int associated_id;
+};
+
+struct blkif_req {
+	blk_status_t error;
+};
+
+struct blkfront_info;
+
+struct blkfront_ring_info {
+	spinlock_t ring_lock;
+	struct blkif_front_ring ring;
+	unsigned int ring_ref[16];
+	unsigned int evtchn;
+	unsigned int irq;
+	struct work_struct work;
+	struct gnttab_free_callback callback;
+	struct list_head indirect_pages;
+	struct list_head grants;
+	unsigned int persistent_gnts_c;
+	long unsigned int shadow_free;
+	struct blkfront_info *dev_info;
+	struct blk_shadow shadow[0];
+};
+
+struct blkfront_info {
+	struct mutex mutex;
+	struct xenbus_device *xbdev;
+	struct gendisk *gd;
+	u16 sector_size;
+	unsigned int physical_sector_size;
+	int vdevice;
+	blkif_vdev_t handle;
+	enum blkif_state connected;
+	unsigned int nr_ring_pages;
+	struct request_queue *rq;
+	unsigned int feature_flush: 1;
+	unsigned int feature_fua: 1;
+	unsigned int feature_discard: 1;
+	unsigned int feature_secdiscard: 1;
+	unsigned int feature_persistent_parm: 1;
+	unsigned int feature_persistent: 1;
+	unsigned int bounce: 1;
+	unsigned int discard_granularity;
+	unsigned int discard_alignment;
+	unsigned int max_indirect_segments;
+	int is_ready;
+	struct blk_mq_tag_set tag_set;
+	struct blkfront_ring_info *rinfo;
+	unsigned int nr_rings;
+	unsigned int rinfo_size;
+	struct list_head requests;
+	struct bio_list bio_list;
+	struct list_head info_list;
+};
+
+struct setup_rw_req {
+	unsigned int grant_idx;
+	struct blkif_request_segment *segments;
+	struct blkfront_ring_info *rinfo;
+	struct blkif_request *ring_req;
+	grant_ref_t gref_head;
+	unsigned int id;
+	bool need_copy;
+	unsigned int bvec_off;
+	char *bvec_data;
+	bool require_extra_req;
+	struct blkif_request *extra_ring_req;
+};
+
+struct copy_from_grant {
+	const struct blk_shadow *s;
+	unsigned int grant_idx;
+	unsigned int bvec_offset;
+	char *bvec_data;
+};
+
+struct sram_config {
+	int (*init)(void);
+	bool map_only_reserved;
+};
+
+struct sram_partition {
+	void *base;
+	struct gen_pool *pool;
+	struct bin_attribute battr;
+	struct mutex lock;
+	struct list_head list;
+};
+
+struct sram_dev {
+	const struct sram_config *config;
+	struct device *dev;
+	void *virt_base;
+	bool no_memory_wc;
+	struct gen_pool *pool;
+	struct clk *clk;
+	struct sram_partition *partition;
+	u32 partitions;
+};
+
+struct sram_reserve {
+	struct list_head list;
+	u32 start;
+	u32 size;
+	struct resource res;
+	bool export;
+	bool pool;
+	bool protect_exec;
+	const char *label;
+};
+
+struct mfd_cell_acpi_match {
+	const char *pnpid;
+	const long long unsigned int adr;
+};
+
+enum {
+	CHIP_INVALID = 0,
+	CHIP_PM8606 = 1,
+	CHIP_PM8607 = 2,
+	CHIP_MAX = 3,
+};
+
+enum pm8606_ref_gp_and_osc_clients {
+	REF_GP_NO_CLIENTS = 0,
+	WLED1_DUTY = 1,
+	WLED2_DUTY = 2,
+	WLED3_DUTY = 4,
+	RGB1_ENABLE = 8,
+	RGB2_ENABLE = 16,
+	LDO_VBR_EN = 32,
+	REF_GP_MAX_CLIENT = 65535,
+};
+
+enum {
+	PM8607_IRQ_ONKEY = 0,
+	PM8607_IRQ_EXTON = 1,
+	PM8607_IRQ_CHG = 2,
+	PM8607_IRQ_BAT = 3,
+	PM8607_IRQ_RTC = 4,
+	PM8607_IRQ_CC = 5,
+	PM8607_IRQ_VBAT = 6,
+	PM8607_IRQ_VCHG = 7,
+	PM8607_IRQ_VSYS = 8,
+	PM8607_IRQ_TINT = 9,
+	PM8607_IRQ_GPADC0 = 10,
+	PM8607_IRQ_GPADC1 = 11,
+	PM8607_IRQ_GPADC2 = 12,
+	PM8607_IRQ_GPADC3 = 13,
+	PM8607_IRQ_AUDIO_SHORT = 14,
+	PM8607_IRQ_PEN = 15,
+	PM8607_IRQ_HEADSET = 16,
+	PM8607_IRQ_HOOK = 17,
+	PM8607_IRQ_MICIN = 18,
+	PM8607_IRQ_CHG_FAIL = 19,
+	PM8607_IRQ_CHG_DONE = 20,
+	PM8607_IRQ_CHG_FAULT = 21,
+};
+
+struct pm860x_chip {
+	struct device *dev;
+	struct mutex irq_lock;
+	struct mutex osc_lock;
+	struct i2c_client *client;
+	struct i2c_client *companion;
+	struct regmap *regmap;
+	struct regmap *regmap_companion;
+	int buck3_double;
+	int companion_addr;
+	short unsigned int osc_vote;
+	int id;
+	int irq_mode;
+	int irq_base;
+	int core_irq;
+	unsigned char chip_version;
+	unsigned char osc_status;
+	unsigned int wakeup_flag;
+};
+
+enum {
+	GI2C_PORT = 0,
+	PI2C_PORT = 1,
+};
+
+struct pm860x_backlight_pdata {
+	int pwm;
+	int iset;
+};
+
+struct pm860x_led_pdata {
+	int iset;
+};
+
+struct pm860x_rtc_pdata {
+	int (*sync)(unsigned int);
+	int vrtc;
+};
+
+struct pm860x_touch_pdata {
+	int gpadc_prebias;
+	int slot_cycle;
+	int off_scale;
+	int sw_cal;
+	int tsi_prebias;
+	int pen_prebias;
+	int pen_prechg;
+	int res_x;
+	long unsigned int flags;
+};
+
+struct pm860x_power_pdata {
+	int max_capacity;
+	int resistor;
+};
+
+struct charger_desc;
+
+struct pm860x_platform_data {
+	struct pm860x_backlight_pdata *backlight;
+	struct pm860x_led_pdata *led;
+	struct pm860x_rtc_pdata *rtc;
+	struct pm860x_touch_pdata *touch;
+	struct pm860x_power_pdata *power;
+	struct regulator_init_data *buck1;
+	struct regulator_init_data *buck2;
+	struct regulator_init_data *buck3;
+	struct regulator_init_data *ldo1;
+	struct regulator_init_data *ldo2;
+	struct regulator_init_data *ldo3;
+	struct regulator_init_data *ldo4;
+	struct regulator_init_data *ldo5;
+	struct regulator_init_data *ldo6;
+	struct regulator_init_data *ldo7;
+	struct regulator_init_data *ldo8;
+	struct regulator_init_data *ldo9;
+	struct regulator_init_data *ldo10;
+	struct regulator_init_data *ldo12;
+	struct regulator_init_data *ldo_vibrator;
+	struct regulator_init_data *ldo14;
+	struct charger_desc *chg_desc;
+	int companion_addr;
+	int i2c_port;
+	int irq_mode;
+	int irq_base;
+	int num_leds;
+	int num_backlights;
+};
+
+enum polling_modes {
+	CM_POLL_DISABLE = 0,
+	CM_POLL_ALWAYS = 1,
+	CM_POLL_EXTERNAL_POWER_ONLY = 2,
+	CM_POLL_CHARGING_ONLY = 3,
+};
+
+enum data_source {
+	CM_BATTERY_PRESENT = 0,
+	CM_NO_BATTERY = 1,
+	CM_FUEL_GAUGE = 2,
+	CM_CHARGER_STAT = 3,
+};
+
+struct charger_regulator;
+
+struct charger_desc {
+	const char *psy_name;
+	enum polling_modes polling_mode;
+	unsigned int polling_interval_ms;
+	unsigned int fullbatt_vchkdrop_uV;
+	unsigned int fullbatt_uV;
+	unsigned int fullbatt_soc;
+	unsigned int fullbatt_full_capacity;
+	enum data_source battery_present;
+	const char **psy_charger_stat;
+	int num_charger_regulators;
+	struct charger_regulator *charger_regulators;
+	const struct attribute_group **sysfs_groups;
+	const char *psy_fuel_gauge;
+	const char *thermal_zone;
+	int temp_min;
+	int temp_max;
+	int temp_diff;
+	bool measure_battery_temp;
+	u32 charging_max_duration_ms;
+	u32 discharging_max_duration_ms;
+};
+
+struct charger_manager;
+
+struct charger_cable {
+	const char *extcon_name;
+	const char *name;
+	struct extcon_dev *extcon_dev;
+	u64 extcon_type;
+	struct work_struct wq;
+	struct notifier_block nb;
+	bool attached;
+	struct charger_regulator *charger;
+	int min_uA;
+	int max_uA;
+	struct charger_manager *cm;
+};
+
+struct charger_regulator {
+	const char *regulator_name;
+	struct regulator *consumer;
+	int externally_control;
+	struct charger_cable *cables;
+	int num_cables;
+	struct attribute_group attr_grp;
+	struct device_attribute attr_name;
+	struct device_attribute attr_state;
+	struct device_attribute attr_externally_control;
+	struct attribute *attrs[4];
+	struct charger_manager *cm;
+};
+
+struct charger_manager {
+	struct list_head entry;
+	struct device *dev;
+	struct charger_desc *desc;
+	struct thermal_zone_device *tzd_batt;
+	bool charger_enabled;
+	int emergency_stop;
+	char psy_name_buf[31];
+	struct power_supply_desc charger_psy_desc;
+	struct power_supply *charger_psy;
+	u64 charging_start_time;
+	u64 charging_end_time;
+	int battery_status;
+};
+
+struct pm860x_irq_data {
+	int reg;
+	int mask_reg;
+	int enable;
+	int offs;
+};
+
+struct htcpld_chip_platform_data {
+	unsigned int addr;
+	unsigned int reset;
+	unsigned int num_gpios;
+	unsigned int gpio_out_base;
+	unsigned int gpio_in_base;
+	unsigned int irq_base;
+	unsigned int num_irqs;
+};
+
+struct htcpld_core_platform_data {
+	unsigned int int_reset_gpio_hi;
+	unsigned int int_reset_gpio_lo;
+	unsigned int i2c_adapter_id;
+	struct htcpld_chip_platform_data *chip;
+	unsigned int num_chip;
+};
+
+struct htcpld_chip {
+	spinlock_t lock;
+	u8 reset;
+	u8 addr;
+	struct device *dev;
+	struct i2c_client *client;
+	u8 cache_out;
+	struct gpio_chip chip_out;
+	u8 cache_in;
+	struct gpio_chip chip_in;
+	u16 irqs_enabled;
+	uint irq_start;
+	int nirqs;
+	unsigned int flow_type;
+	struct work_struct set_val_work;
+};
+
+struct htcpld_data {
+	u16 irqs_enabled;
+	uint irq_start;
+	int nirqs;
+	uint chained_irq;
+	unsigned int int_reset_gpio_hi;
+	unsigned int int_reset_gpio_lo;
+	struct htcpld_chip *chip;
+	unsigned int nchips;
+};
+
+struct wm8400_platform_data {
+	int (*platform_init)(struct device *);
+};
+
+struct wm8400 {
+	struct device *dev;
+	struct regmap *regmap;
+	struct platform_device regulators[6];
+};
+
+enum wm831x_auxadc {
+	WM831X_AUX_CAL = 15,
+	WM831X_AUX_BKUP_BATT = 10,
+	WM831X_AUX_WALL = 9,
+	WM831X_AUX_BATT = 8,
+	WM831X_AUX_USB = 7,
+	WM831X_AUX_SYSVDD = 6,
+	WM831X_AUX_BATT_TEMP = 5,
+	WM831X_AUX_CHIP_TEMP = 4,
+	WM831X_AUX_AUX4 = 3,
+	WM831X_AUX_AUX3 = 2,
+	WM831X_AUX_AUX2 = 1,
+	WM831X_AUX_AUX1 = 0,
+};
+
+struct wm831x_backlight_pdata {
+	int isink;
+	int max_uA;
+};
+
+struct wm831x_backup_pdata {
+	int charger_enable;
+	int no_constant_voltage;
+	int vlim;
+	int ilim;
+};
+
+struct wm831x_battery_pdata {
+	int enable;
+	int fast_enable;
+	int off_mask;
+	int trickle_ilim;
+	int vsel;
+	int eoc_iterm;
+	int fast_ilim;
+	int timeout;
+};
+
+enum wm831x_status_src {
+	WM831X_STATUS_PRESERVE = 0,
+	WM831X_STATUS_OTP = 1,
+	WM831X_STATUS_POWER = 2,
+	WM831X_STATUS_CHARGER = 3,
+	WM831X_STATUS_MANUAL = 4,
+};
+
+struct wm831x_status_pdata {
+	enum wm831x_status_src default_src;
+	const char *name;
+	const char *default_trigger;
+};
+
+struct wm831x_touch_pdata {
+	int fivewire;
+	int isel;
+	int rpu;
+	int pressure;
+	unsigned int data_irq;
+	int data_irqf;
+	unsigned int pd_irq;
+	int pd_irqf;
+};
+
+enum wm831x_watchdog_action {
+	WM831X_WDOG_NONE = 0,
+	WM831X_WDOG_INTERRUPT = 1,
+	WM831X_WDOG_RESET = 2,
+	WM831X_WDOG_WAKE = 3,
+};
+
+struct wm831x_watchdog_pdata {
+	enum wm831x_watchdog_action primary;
+	enum wm831x_watchdog_action secondary;
+	unsigned int software: 1;
+};
+
+struct wm831x;
+
+struct wm831x_pdata {
+	int wm831x_num;
+	int (*pre_init)(struct wm831x *);
+	int (*post_init)(struct wm831x *);
+	bool irq_cmos;
+	bool disable_touch;
+	bool soft_shutdown;
+	int irq_base;
+	int gpio_base;
+	int gpio_defaults[16];
+	struct wm831x_backlight_pdata *backlight;
+	struct wm831x_backup_pdata *backup;
+	struct wm831x_battery_pdata *battery;
+	struct wm831x_touch_pdata *touch;
+	struct wm831x_watchdog_pdata *watchdog;
+	struct wm831x_status_pdata *status[2];
+	struct regulator_init_data *dcdc[4];
+	struct regulator_init_data *epe[2];
+	struct regulator_init_data *ldo[11];
+	struct regulator_init_data *isink[2];
+};
+
+enum wm831x_parent {
+	WM8310 = 33552,
+	WM8311 = 33553,
+	WM8312 = 33554,
+	WM8320 = 33568,
+	WM8321 = 33569,
+	WM8325 = 33573,
+	WM8326 = 33574,
+};
+
+typedef int (*wm831x_auxadc_read_fn)(struct wm831x *, enum wm831x_auxadc);
+
+struct wm831x {
+	struct mutex io_lock;
+	struct device *dev;
+	struct regmap *regmap;
+	struct wm831x_pdata pdata;
+	enum wm831x_parent type;
+	int irq;
+	struct mutex irq_lock;
+	struct irq_domain *irq_domain;
+	int irq_masks_cur[5];
+	int irq_masks_cache[5];
+	bool soft_shutdown;
+	unsigned int has_gpio_ena: 1;
+	unsigned int has_cs_sts: 1;
+	unsigned int charger_irq_wake: 1;
+	int num_gpio;
+	int gpio_update[16];
+	bool gpio_level_high[16];
+	bool gpio_level_low[16];
+	struct mutex auxadc_lock;
+	struct list_head auxadc_pending;
+	u16 auxadc_active;
+	wm831x_auxadc_read_fn auxadc_read;
+	struct mutex key_lock;
+	unsigned int locked: 1;
+};
+
+struct wm831x_irq_data {
+	int primary;
+	int reg;
+	int mask;
+};
+
+struct wm831x_auxadc_req {
+	struct list_head list;
+	enum wm831x_auxadc input;
+	int val;
+	struct completion done;
+};
+
+struct wm8350_audio_platform_data {
+	int vmid_discharge_msecs;
+	int drain_msecs;
+	int cap_discharge_msecs;
+	int vmid_charge_msecs;
+	u32 vmid_s_curve: 2;
+	u32 dis_out4: 2;
+	u32 dis_out3: 2;
+	u32 dis_out2: 2;
+	u32 dis_out1: 2;
+	u32 vroi_out4: 1;
+	u32 vroi_out3: 1;
+	u32 vroi_out2: 1;
+	u32 vroi_out1: 1;
+	u32 vroi_enable: 1;
+	u32 codec_current_on: 2;
+	u32 codec_current_standby: 2;
+	u32 codec_current_charge: 2;
+};
+
+struct wm8350_codec {
+	struct platform_device *pdev;
+	struct wm8350_audio_platform_data *platform_data;
+};
+
+struct wm8350_gpio {
+	struct platform_device *pdev;
+};
+
+struct wm8350_led {
+	struct platform_device *pdev;
+	struct work_struct work;
+	spinlock_t value_lock;
+	enum led_brightness value;
+	struct led_classdev cdev;
+	int max_uA_index;
+	int enabled;
+	struct regulator *isink;
+	struct regulator_consumer_supply isink_consumer;
+	struct regulator_init_data isink_init;
+	struct regulator *dcdc;
+	struct regulator_consumer_supply dcdc_consumer;
+	struct regulator_init_data dcdc_init;
+};
+
+struct wm8350_pmic {
+	int max_dcdc;
+	int max_isink;
+	int isink_A_dcdc;
+	int isink_B_dcdc;
+	u16 dcdc1_hib_mode;
+	u16 dcdc3_hib_mode;
+	u16 dcdc4_hib_mode;
+	u16 dcdc6_hib_mode;
+	struct platform_device *pdev[12];
+	struct wm8350_led led[2];
+};
+
+struct wm8350_rtc {
+	struct platform_device *pdev;
+	struct rtc_device *rtc;
+	int alarm_enabled;
+	int update_enabled;
+};
+
+struct wm8350_charger_policy {
+	int eoc_mA;
+	int charge_mV;
+	int fast_limit_mA;
+	int fast_limit_USB_mA;
+	int charge_timeout;
+	int trickle_start_mV;
+	int trickle_charge_mA;
+	int trickle_charge_USB_mA;
+};
+
+struct wm8350_power {
+	struct platform_device *pdev;
+	struct power_supply *battery;
+	struct power_supply *usb;
+	struct power_supply *ac;
+	struct wm8350_charger_policy *policy;
+	int rev_g_coeff;
+};
+
+struct wm8350_wdt {
+	struct platform_device *pdev;
+};
+
+struct wm8350_hwmon {
+	struct platform_device *pdev;
+	struct device *classdev;
+};
+
+struct wm8350 {
+	struct device *dev;
+	struct regmap *regmap;
+	bool unlocked;
+	struct mutex auxadc_mutex;
+	struct completion auxadc_done;
+	struct mutex irq_lock;
+	int chip_irq;
+	int irq_base;
+	u16 irq_masks[7];
+	struct wm8350_codec codec;
+	struct wm8350_gpio gpio;
+	struct wm8350_hwmon hwmon;
+	struct wm8350_pmic pmic;
+	struct wm8350_power power;
+	struct wm8350_rtc rtc;
+	struct wm8350_wdt wdt;
+};
+
+struct wm8350_platform_data {
+	int (*init)(struct wm8350 *);
+	int irq_high;
+	int irq_base;
+	int gpio_base;
+};
+
+struct wm8350_reg_access {
+	u16 readable;
+	u16 writable;
+	u16 vol;
+};
+
+struct wm8350_irq_data {
+	int primary;
+	int reg;
+	int mask;
+	int primary_only;
+};
+
+struct tps65910_platform_data {
+	int irq;
+	int irq_base;
+};
+
+enum tps65912_irqs {
+	TPS65912_IRQ_PWRHOLD_F = 0,
+	TPS65912_IRQ_VMON = 1,
+	TPS65912_IRQ_PWRON = 2,
+	TPS65912_IRQ_PWRON_LP = 3,
+	TPS65912_IRQ_PWRHOLD_R = 4,
+	TPS65912_IRQ_HOTDIE = 5,
+	TPS65912_IRQ_GPIO1_R = 6,
+	TPS65912_IRQ_GPIO1_F = 7,
+	TPS65912_IRQ_GPIO2_R = 8,
+	TPS65912_IRQ_GPIO2_F = 9,
+	TPS65912_IRQ_GPIO3_R = 10,
+	TPS65912_IRQ_GPIO3_F = 11,
+	TPS65912_IRQ_GPIO4_R = 12,
+	TPS65912_IRQ_GPIO4_F = 13,
+	TPS65912_IRQ_GPIO5_R = 14,
+	TPS65912_IRQ_GPIO5_F = 15,
+	TPS65912_IRQ_PGOOD_DCDC1 = 16,
+	TPS65912_IRQ_PGOOD_DCDC2 = 17,
+	TPS65912_IRQ_PGOOD_DCDC3 = 18,
+	TPS65912_IRQ_PGOOD_DCDC4 = 19,
+	TPS65912_IRQ_PGOOD_LDO1 = 20,
+	TPS65912_IRQ_PGOOD_LDO2 = 21,
+	TPS65912_IRQ_PGOOD_LDO3 = 22,
+	TPS65912_IRQ_PGOOD_LDO4 = 23,
+	TPS65912_IRQ_PGOOD_LDO5 = 24,
+	TPS65912_IRQ_PGOOD_LDO6 = 25,
+	TPS65912_IRQ_PGOOD_LDO7 = 26,
+	TPS65912_IRQ_PGOOD_LDO8 = 27,
+	TPS65912_IRQ_PGOOD_LDO9 = 28,
+	TPS65912_IRQ_PGOOD_LDO10 = 29,
+};
+
+struct tps65912 {
+	struct device *dev;
+	struct regmap *regmap;
+	int irq;
+	struct regmap_irq_chip_data *irq_data;
+};
+
+enum chips {
+	TPS80031 = 1,
+	TPS80032 = 2,
+};
+
+enum {
+	TPS80031_INT_PWRON = 0,
+	TPS80031_INT_RPWRON = 1,
+	TPS80031_INT_SYS_VLOW = 2,
+	TPS80031_INT_RTC_ALARM = 3,
+	TPS80031_INT_RTC_PERIOD = 4,
+	TPS80031_INT_HOT_DIE = 5,
+	TPS80031_INT_VXX_SHORT = 6,
+	TPS80031_INT_SPDURATION = 7,
+	TPS80031_INT_WATCHDOG = 8,
+	TPS80031_INT_BAT = 9,
+	TPS80031_INT_SIM = 10,
+	TPS80031_INT_MMC = 11,
+	TPS80031_INT_RES = 12,
+	TPS80031_INT_GPADC_RT = 13,
+	TPS80031_INT_GPADC_SW2_EOC = 14,
+	TPS80031_INT_CC_AUTOCAL = 15,
+	TPS80031_INT_ID_WKUP = 16,
+	TPS80031_INT_VBUSS_WKUP = 17,
+	TPS80031_INT_ID = 18,
+	TPS80031_INT_VBUS = 19,
+	TPS80031_INT_CHRG_CTRL = 20,
+	TPS80031_INT_EXT_CHRG = 21,
+	TPS80031_INT_INT_CHRG = 22,
+	TPS80031_INT_RES2 = 23,
+	TPS80031_INT_BAT_TEMP_OVRANGE = 24,
+	TPS80031_INT_BAT_REMOVED = 25,
+	TPS80031_INT_VBUS_DET = 26,
+	TPS80031_INT_VAC_DET = 27,
+	TPS80031_INT_FAULT_WDG = 28,
+	TPS80031_INT_LINCH_GATED = 29,
+	TPS80031_INT_NR = 30,
+};
+
+enum {
+	TPS80031_REGULATOR_VIO = 0,
+	TPS80031_REGULATOR_SMPS1 = 1,
+	TPS80031_REGULATOR_SMPS2 = 2,
+	TPS80031_REGULATOR_SMPS3 = 3,
+	TPS80031_REGULATOR_SMPS4 = 4,
+	TPS80031_REGULATOR_VANA = 5,
+	TPS80031_REGULATOR_LDO1 = 6,
+	TPS80031_REGULATOR_LDO2 = 7,
+	TPS80031_REGULATOR_LDO3 = 8,
+	TPS80031_REGULATOR_LDO4 = 9,
+	TPS80031_REGULATOR_LDO5 = 10,
+	TPS80031_REGULATOR_LDO6 = 11,
+	TPS80031_REGULATOR_LDO7 = 12,
+	TPS80031_REGULATOR_LDOLN = 13,
+	TPS80031_REGULATOR_LDOUSB = 14,
+	TPS80031_REGULATOR_VBUS = 15,
+	TPS80031_REGULATOR_REGEN1 = 16,
+	TPS80031_REGULATOR_REGEN2 = 17,
+	TPS80031_REGULATOR_SYSEN = 18,
+	TPS80031_REGULATOR_MAX = 19,
+};
+
+enum tps80031_ext_control {
+	TPS80031_PWR_REQ_INPUT_NONE = 0,
+	TPS80031_PWR_REQ_INPUT_PREQ1 = 1,
+	TPS80031_PWR_REQ_INPUT_PREQ2 = 2,
+	TPS80031_PWR_REQ_INPUT_PREQ3 = 4,
+	TPS80031_PWR_OFF_ON_SLEEP = 8,
+	TPS80031_PWR_ON_ON_SLEEP = 16,
+};
+
+enum tps80031_pupd_pins {
+	TPS80031_PREQ1 = 0,
+	TPS80031_PREQ2A = 1,
+	TPS80031_PREQ2B = 2,
+	TPS80031_PREQ2C = 3,
+	TPS80031_PREQ3 = 4,
+	TPS80031_NRES_WARM = 5,
+	TPS80031_PWM_FORCE = 6,
+	TPS80031_CHRG_EXT_CHRG_STATZ = 7,
+	TPS80031_SIM = 8,
+	TPS80031_MMC = 9,
+	TPS80031_GPADC_START = 10,
+	TPS80031_DVSI2C_SCL = 11,
+	TPS80031_DVSI2C_SDA = 12,
+	TPS80031_CTLI2C_SCL = 13,
+	TPS80031_CTLI2C_SDA = 14,
+};
+
+enum tps80031_pupd_settings {
+	TPS80031_PUPD_NORMAL = 0,
+	TPS80031_PUPD_PULLDOWN = 1,
+	TPS80031_PUPD_PULLUP = 2,
+};
+
+struct tps80031 {
+	struct device *dev;
+	long unsigned int chip_info;
+	int es_version;
+	struct i2c_client *clients[4];
+	struct regmap *regmap[4];
+	struct regmap_irq_chip_data *irq_data;
+};
+
+struct tps80031_pupd_init_data {
+	int input_pin;
+	int setting;
+};
+
+struct tps80031_regulator_platform_data {
+	struct regulator_init_data *reg_init_data;
+	unsigned int ext_ctrl_flag;
+	unsigned int config_flags;
+};
+
+struct tps80031_platform_data {
+	int irq_base;
+	bool use_power_off;
+	struct tps80031_pupd_init_data *pupd_init_data;
+	int pupd_init_data_size;
+	struct tps80031_regulator_platform_data *regulator_pdata[19];
+};
+
+struct tps80031_pupd_data {
+	u8 reg;
+	u8 pullup_bit;
+	u8 pulldown_bit;
+};
+
+struct of_dev_auxdata {
+	char *compatible;
+	resource_size_t phys_addr;
+	char *name;
+	void *platform_data;
+};
+
+struct matrix_keymap_data {
+	const uint32_t *keymap;
+	unsigned int keymap_size;
+};
+
+enum twl_module_ids {
+	TWL_MODULE_USB = 0,
+	TWL_MODULE_PIH = 1,
+	TWL_MODULE_MAIN_CHARGE = 2,
+	TWL_MODULE_PM_MASTER = 3,
+	TWL_MODULE_PM_RECEIVER = 4,
+	TWL_MODULE_RTC = 5,
+	TWL_MODULE_PWM = 6,
+	TWL_MODULE_LED = 7,
+	TWL_MODULE_SECURED_REG = 8,
+	TWL_MODULE_LAST = 9,
+};
+
+enum twl4030_module_ids {
+	TWL4030_MODULE_AUDIO_VOICE = 9,
+	TWL4030_MODULE_GPIO = 10,
+	TWL4030_MODULE_INTBR = 11,
+	TWL4030_MODULE_TEST = 12,
+	TWL4030_MODULE_KEYPAD = 13,
+	TWL4030_MODULE_MADC = 14,
+	TWL4030_MODULE_INTERRUPTS = 15,
+	TWL4030_MODULE_PRECHARGE = 16,
+	TWL4030_MODULE_BACKUP = 17,
+	TWL4030_MODULE_INT = 18,
+	TWL5031_MODULE_ACCESSORY = 19,
+	TWL5031_MODULE_INTERRUPTS = 20,
+	TWL4030_MODULE_LAST = 21,
+};
+
+enum twl6030_module_ids {
+	TWL6030_MODULE_ID0 = 9,
+	TWL6030_MODULE_ID1 = 10,
+	TWL6030_MODULE_ID2 = 11,
+	TWL6030_MODULE_GPADC = 12,
+	TWL6030_MODULE_GASGAUGE = 13,
+	TWL6030_MODULE_LAST = 14,
+};
+
+struct twl4030_clock_init_data {
+	bool ck32k_lowpwr_enable;
+};
+
+struct twl4030_bci_platform_data {
+	int *battery_tmp_tbl;
+	unsigned int tblsize;
+	int bb_uvolt;
+	int bb_uamp;
+};
+
+struct twl4030_gpio_platform_data {
+	bool use_leds;
+	u8 mmc_cd;
+	u32 debounce;
+	u32 pullups;
+	u32 pulldowns;
+	int (*setup)(struct device *, unsigned int, unsigned int);
+	int (*teardown)(struct device *, unsigned int, unsigned int);
+};
+
+struct twl4030_madc_platform_data {
+	int irq_line;
+};
+
+struct twl4030_keypad_data {
+	const struct matrix_keymap_data *keymap_data;
+	unsigned int rows;
+	unsigned int cols;
+	bool rep;
+};
+
+enum twl4030_usb_mode {
+	T2_USB_MODE_ULPI = 1,
+	T2_USB_MODE_CEA2011_3PIN = 2,
+};
+
+struct twl4030_usb_data {
+	enum twl4030_usb_mode usb_mode;
+	long unsigned int features;
+	int (*phy_init)(struct device *);
+	int (*phy_exit)(struct device *);
+	int (*phy_power)(struct device *, int, int);
+	int (*phy_set_clock)(struct device *, int);
+	int (*phy_suspend)(struct device *, int);
+};
+
+struct twl4030_ins {
+	u16 pmb_message;
+	u8 delay;
+};
+
+struct twl4030_script {
+	struct twl4030_ins *script;
+	unsigned int size;
+	u8 flags;
+};
+
+struct twl4030_resconfig {
+	u8 resource;
+	u8 devgroup;
+	u8 type;
+	u8 type2;
+	u8 remap_off;
+	u8 remap_sleep;
+};
+
+struct twl4030_power_data {
+	struct twl4030_script **scripts;
+	unsigned int num;
+	struct twl4030_resconfig *resource_config;
+	struct twl4030_resconfig *board_config;
+	bool use_poweroff;
+	bool ac_charger_quirk;
+};
+
+struct twl4030_codec_data {
+	unsigned int digimic_delay;
+	unsigned int ramp_delay_value;
+	unsigned int offset_cncl_path;
+	unsigned int hs_extmute: 1;
+	int hs_extmute_gpio;
+};
+
+struct twl4030_vibra_data {
+	unsigned int coexist;
+};
+
+struct twl4030_audio_data {
+	unsigned int audio_mclk;
+	struct twl4030_codec_data *codec;
+	struct twl4030_vibra_data *vibra;
+	int audpwron_gpio;
+	int naudint_irq;
+	unsigned int irq_base;
+};
+
+struct twl4030_platform_data {
+	struct twl4030_clock_init_data *clock;
+	struct twl4030_bci_platform_data *bci;
+	struct twl4030_gpio_platform_data *gpio;
+	struct twl4030_madc_platform_data *madc;
+	struct twl4030_keypad_data *keypad;
+	struct twl4030_usb_data *usb;
+	struct twl4030_power_data *power;
+	struct twl4030_audio_data *audio;
+	struct regulator_init_data *vdac;
+	struct regulator_init_data *vaux1;
+	struct regulator_init_data *vaux2;
+	struct regulator_init_data *vaux3;
+	struct regulator_init_data *vdd1;
+	struct regulator_init_data *vdd2;
+	struct regulator_init_data *vdd3;
+	struct regulator_init_data *vpll1;
+	struct regulator_init_data *vpll2;
+	struct regulator_init_data *vmmc1;
+	struct regulator_init_data *vmmc2;
+	struct regulator_init_data *vsim;
+	struct regulator_init_data *vaux4;
+	struct regulator_init_data *vio;
+	struct regulator_init_data *vintana1;
+	struct regulator_init_data *vintana2;
+	struct regulator_init_data *vintdig;
+	struct regulator_init_data *vmmc;
+	struct regulator_init_data *vpp;
+	struct regulator_init_data *vusim;
+	struct regulator_init_data *vana;
+	struct regulator_init_data *vcxio;
+	struct regulator_init_data *vusb;
+	struct regulator_init_data *clk32kg;
+	struct regulator_init_data *v1v8;
+	struct regulator_init_data *v2v1;
+	struct regulator_init_data *ldo1;
+	struct regulator_init_data *ldo2;
+	struct regulator_init_data *ldo3;
+	struct regulator_init_data *ldo4;
+	struct regulator_init_data *ldo5;
+	struct regulator_init_data *ldo6;
+	struct regulator_init_data *ldo7;
+	struct regulator_init_data *ldoln;
+	struct regulator_init_data *ldousb;
+	struct regulator_init_data *smps3;
+	struct regulator_init_data *smps4;
+	struct regulator_init_data *vio6025;
+};
+
+struct twl_regulator_driver_data {
+	int (*set_voltage)(void *, int);
+	int (*get_voltage)(void *);
+	void *data;
+	long unsigned int features;
+};
+
+struct twl_client {
+	struct i2c_client *client;
+	struct regmap *regmap;
+};
+
+struct twl_mapping {
+	unsigned char sid;
+	unsigned char base;
+};
+
+struct twl_private {
+	bool ready;
+	u32 twl_idcode;
+	unsigned int twl_id;
+	struct twl_mapping *twl_map;
+	struct twl_client *twl_modules;
+};
+
+struct sih_irq_data {
+	u8 isr_offset;
+	u8 imr_offset;
+};
+
+struct sih {
+	char name[8];
+	u8 module;
+	u8 control_offset;
+	bool set_cor;
+	u8 bits;
+	u8 bytes_ixr;
+	u8 edr_offset;
+	u8 bytes_edr;
+	u8 irq_lines;
+	struct sih_irq_data mask[2];
+};
+
+struct sih_agent {
+	int irq_base;
+	const struct sih *sih;
+	u32 imr;
+	bool imr_change_pending;
+	u32 edge_change;
+	struct mutex irq_lock;
+	char *irq_name;
+};
+
+struct twl6030_irq {
+	unsigned int irq_base;
+	int twl_irq;
+	bool irq_wake_enabled;
+	atomic_t wakeirqs;
+	struct notifier_block pm_nb;
+	struct irq_chip irq_chip;
+	struct irq_domain *irq_domain;
+	const int *irq_mapping_tbl;
+};
+
+enum twl4030_audio_res {
+	TWL4030_AUDIO_RES_POWER = 0,
+	TWL4030_AUDIO_RES_APLL = 1,
+	TWL4030_AUDIO_RES_MAX = 2,
+};
+
+struct twl4030_audio_resource {
+	int request_count;
+	u8 reg;
+	u8 mask;
+};
+
+struct twl4030_audio {
+	unsigned int audio_mclk;
+	struct mutex mutex;
+	struct twl4030_audio_resource resource[2];
+	struct mfd_cell cells[2];
+};
+
+enum of_gpio_flags {
+	OF_GPIO_ACTIVE_LOW = 1,
+	OF_GPIO_SINGLE_ENDED = 2,
+	OF_GPIO_OPEN_DRAIN = 4,
+	OF_GPIO_TRANSITORY = 8,
+	OF_GPIO_PULL_UP = 16,
+	OF_GPIO_PULL_DOWN = 32,
+};
+
+struct twl6040 {
+	struct device *dev;
+	struct regmap *regmap;
+	struct regmap_irq_chip_data *irq_data;
+	struct regulator_bulk_data supplies[2];
+	struct clk *clk32k;
+	struct clk *mclk;
+	struct mutex mutex;
+	struct mutex irq_mutex;
+	struct mfd_cell cells[4];
+	struct completion ready;
+	int audpwron;
+	int power_count;
+	int rev;
+	int pll;
+	unsigned int sysclk_rate;
+	unsigned int mclk_rate;
+	unsigned int irq;
+	unsigned int irq_ready;
+	unsigned int irq_th;
+};
+
+struct mfd_of_node_entry {
+	struct list_head list;
+	struct device *dev;
+	struct device_node *np;
+};
+
+struct pcap_subdev {
+	int id;
+	const char *name;
+	void *platform_data;
+};
+
+struct pcap_platform_data {
+	unsigned int irq_base;
+	unsigned int config;
+	int gpio;
+	void (*init)(void *);
+	int num_subdevs;
+	struct pcap_subdev *subdevs;
+};
+
+struct pcap_adc_request {
+	u8 bank;
+	u8 ch[2];
+	u32 flags;
+	void (*callback)(void *, u16 *);
+	void *data;
+};
+
+struct pcap_adc_sync_request {
+	u16 res[2];
+	struct completion completion;
+};
+
+struct pcap_chip {
+	struct spi_device *spi;
+	u32 buf;
+	spinlock_t io_lock;
+	unsigned int irq_base;
+	u32 msr;
+	struct work_struct isr_work;
+	struct work_struct msr_work;
+	struct workqueue_struct *workqueue;
+	struct pcap_adc_request *adc_queue[8];
+	u8 adc_head;
+	u8 adc_tail;
+	spinlock_t adc_lock;
+};
+
+struct da903x_subdev_info {
+	int id;
+	const char *name;
+	void *platform_data;
+};
+
+struct da903x_platform_data {
+	int num_subdevs;
+	struct da903x_subdev_info *subdevs;
+};
+
+struct da903x_chip;
+
+struct da903x_chip_ops {
+	int (*init_chip)(struct da903x_chip *);
+	int (*unmask_events)(struct da903x_chip *, unsigned int);
+	int (*mask_events)(struct da903x_chip *, unsigned int);
+	int (*read_events)(struct da903x_chip *, unsigned int *);
+	int (*read_status)(struct da903x_chip *, unsigned int *);
+};
+
+struct da903x_chip {
+	struct i2c_client *client;
+	struct device *dev;
+	const struct da903x_chip_ops *ops;
+	int type;
+	uint32_t events_mask;
+	struct mutex lock;
+	struct work_struct irq_work;
+	struct blocking_notifier_head notifier_list;
+};
+
+struct da9052 {
+	struct device *dev;
+	struct regmap *regmap;
+	struct mutex auxadc_lock;
+	struct completion done;
+	int irq_base;
+	struct regmap_irq_chip_data *irq_data;
+	u8 chip_id;
+	int chip_irq;
+	int (*fix_io)(struct da9052 *, unsigned char);
+};
+
+struct led_platform_data;
+
+struct da9052_pdata {
+	struct led_platform_data *pled;
+	int (*init)(struct da9052 *);
+	int irq_base;
+	int gpio_base;
+	int use_for_apm;
+	struct regulator_init_data *regulators[14];
+};
+
+enum da9052_chip_id {
+	DA9052 = 0,
+	DA9053_AA = 1,
+	DA9053_BA = 2,
+	DA9053_BB = 3,
+	DA9053_BC = 4,
+};
+
+enum lp8788_int_id {
+	LP8788_INT_TSDL = 0,
+	LP8788_INT_TSDH = 1,
+	LP8788_INT_UVLO = 2,
+	LP8788_INT_FLAGMON = 3,
+	LP8788_INT_PWRON_TIME = 4,
+	LP8788_INT_PWRON = 5,
+	LP8788_INT_COMP1 = 6,
+	LP8788_INT_COMP2 = 7,
+	LP8788_INT_CHG_INPUT_STATE = 8,
+	LP8788_INT_CHG_STATE = 9,
+	LP8788_INT_EOC = 10,
+	LP8788_INT_CHG_RESTART = 11,
+	LP8788_INT_RESTART_TIMEOUT = 12,
+	LP8788_INT_FULLCHG_TIMEOUT = 13,
+	LP8788_INT_PRECHG_TIMEOUT = 14,
+	LP8788_INT_RTC_ALARM1 = 17,
+	LP8788_INT_RTC_ALARM2 = 18,
+	LP8788_INT_ENTER_SYS_SUPPORT = 19,
+	LP8788_INT_EXIT_SYS_SUPPORT = 20,
+	LP8788_INT_BATT_LOW = 21,
+	LP8788_INT_NO_BATT = 22,
+	LP8788_INT_MAX = 24,
+};
+
+enum lp8788_dvs_sel {
+	DVS_SEL_V0 = 0,
+	DVS_SEL_V1 = 1,
+	DVS_SEL_V2 = 2,
+	DVS_SEL_V3 = 3,
+};
+
+enum lp8788_charger_event {
+	NO_CHARGER = 0,
+	CHARGER_DETECTED = 1,
+};
+
+enum lp8788_bl_ctrl_mode {
+	LP8788_BL_REGISTER_ONLY = 0,
+	LP8788_BL_COMB_PWM_BASED = 1,
+	LP8788_BL_COMB_REGISTER_BASED = 2,
+};
+
+enum lp8788_bl_dim_mode {
+	LP8788_DIM_EXPONENTIAL = 0,
+	LP8788_DIM_LINEAR = 1,
+};
+
+enum lp8788_bl_full_scale_current {
+	LP8788_FULLSCALE_5000uA = 0,
+	LP8788_FULLSCALE_8500uA = 1,
+	LP8788_FULLSCALE_1200uA = 2,
+	LP8788_FULLSCALE_1550uA = 3,
+	LP8788_FULLSCALE_1900uA = 4,
+	LP8788_FULLSCALE_2250uA = 5,
+	LP8788_FULLSCALE_2600uA = 6,
+	LP8788_FULLSCALE_2950uA = 7,
+};
+
+enum lp8788_bl_ramp_step {
+	LP8788_RAMP_8us = 0,
+	LP8788_RAMP_1024us = 1,
+	LP8788_RAMP_2048us = 2,
+	LP8788_RAMP_4096us = 3,
+	LP8788_RAMP_8192us = 4,
+	LP8788_RAMP_16384us = 5,
+	LP8788_RAMP_32768us = 6,
+	LP8788_RAMP_65538us = 7,
+};
+
+enum lp8788_isink_scale {
+	LP8788_ISINK_SCALE_100mA = 0,
+	LP8788_ISINK_SCALE_120mA = 1,
+};
+
+enum lp8788_isink_number {
+	LP8788_ISINK_1 = 0,
+	LP8788_ISINK_2 = 1,
+	LP8788_ISINK_3 = 2,
+};
+
+enum lp8788_alarm_sel {
+	LP8788_ALARM_1 = 0,
+	LP8788_ALARM_2 = 1,
+	LP8788_ALARM_MAX = 2,
+};
+
+struct lp8788_buck1_dvs {
+	int gpio;
+	enum lp8788_dvs_sel vsel;
+};
+
+struct lp8788_buck2_dvs {
+	int gpio[2];
+	enum lp8788_dvs_sel vsel;
+};
+
+struct lp8788_chg_param {
+	u8 addr;
+	u8 val;
+};
+
+struct lp8788;
+
+struct lp8788_charger_platform_data {
+	const char *adc_vbatt;
+	const char *adc_batt_temp;
+	unsigned int max_vbatt_mv;
+	struct lp8788_chg_param *chg_params;
+	int num_chg_params;
+	void (*charger_event)(struct lp8788 *, enum lp8788_charger_event);
+};
+
+struct lp8788_platform_data;
+
+struct lp8788 {
+	struct device *dev;
+	struct regmap *regmap;
+	struct irq_domain *irqdm;
+	int irq;
+	struct lp8788_platform_data *pdata;
+};
+
+struct lp8788_backlight_platform_data {
+	char *name;
+	int initial_brightness;
+	enum lp8788_bl_ctrl_mode bl_mode;
+	enum lp8788_bl_dim_mode dim_mode;
+	enum lp8788_bl_full_scale_current full_scale;
+	enum lp8788_bl_ramp_step rise_time;
+	enum lp8788_bl_ramp_step fall_time;
+	enum pwm_polarity pwm_pol;
+	unsigned int period_ns;
+};
+
+struct lp8788_led_platform_data {
+	char *name;
+	enum lp8788_isink_scale scale;
+	enum lp8788_isink_number num;
+	int iout_code;
+};
+
+struct lp8788_vib_platform_data {
+	char *name;
+	enum lp8788_isink_scale scale;
+	enum lp8788_isink_number num;
+	int iout_code;
+	int pwm_code;
+};
+
+struct iio_map;
+
+struct lp8788_platform_data {
+	int (*init_func)(struct lp8788 *);
+	struct regulator_init_data *buck_data[4];
+	struct regulator_init_data *dldo_data[12];
+	struct regulator_init_data *aldo_data[10];
+	struct lp8788_buck1_dvs *buck1_dvs;
+	struct lp8788_buck2_dvs *buck2_dvs;
+	struct lp8788_charger_platform_data *chg_pdata;
+	enum lp8788_alarm_sel alarm_sel;
+	struct lp8788_backlight_platform_data *bl_pdata;
+	struct lp8788_led_platform_data *led_pdata;
+	struct lp8788_vib_platform_data *vib_pdata;
+	struct iio_map *adc_pdata;
+};
+
+struct lp8788_irq_data {
+	struct lp8788 *lp;
+	struct mutex irq_lock;
+	struct irq_domain *domain;
+	int enabled[24];
+};
+
+struct da9055 {
+	struct regmap *regmap;
+	struct regmap_irq_chip_data *irq_data;
+	struct device *dev;
+	struct i2c_client *i2c_client;
+	int irq_base;
+	int chip_irq;
+};
+
+enum gpio_select {
+	NO_GPIO = 0,
+	GPIO_1 = 1,
+	GPIO_2 = 2,
+};
+
+struct da9055_pdata {
+	int (*init)(struct da9055 *);
+	int irq_base;
+	int gpio_base;
+	struct regulator_init_data *regulators[8];
+	bool reset_enable;
+	int *gpio_ren;
+	int *gpio_rsel;
+	enum gpio_select *reg_ren;
+	enum gpio_select *reg_rsel;
+	struct gpio_desc **ena_gpiods;
+};
+
+enum da9063_type {
+	PMIC_TYPE_DA9063 = 0,
+	PMIC_TYPE_DA9063L = 1,
+};
+
+enum da9063_irqs {
+	DA9063_IRQ_ONKEY = 0,
+	DA9063_IRQ_ALARM = 1,
+	DA9063_IRQ_TICK = 2,
+	DA9063_IRQ_ADC_RDY = 3,
+	DA9063_IRQ_SEQ_RDY = 4,
+	DA9063_IRQ_WAKE = 5,
+	DA9063_IRQ_TEMP = 6,
+	DA9063_IRQ_COMP_1V2 = 7,
+	DA9063_IRQ_LDO_LIM = 8,
+	DA9063_IRQ_REG_UVOV = 9,
+	DA9063_IRQ_DVC_RDY = 10,
+	DA9063_IRQ_VDD_MON = 11,
+	DA9063_IRQ_WARN = 12,
+	DA9063_IRQ_GPI0 = 13,
+	DA9063_IRQ_GPI1 = 14,
+	DA9063_IRQ_GPI2 = 15,
+	DA9063_IRQ_GPI3 = 16,
+	DA9063_IRQ_GPI4 = 17,
+	DA9063_IRQ_GPI5 = 18,
+	DA9063_IRQ_GPI6 = 19,
+	DA9063_IRQ_GPI7 = 20,
+	DA9063_IRQ_GPI8 = 21,
+	DA9063_IRQ_GPI9 = 22,
+	DA9063_IRQ_GPI10 = 23,
+	DA9063_IRQ_GPI11 = 24,
+	DA9063_IRQ_GPI12 = 25,
+	DA9063_IRQ_GPI13 = 26,
+	DA9063_IRQ_GPI14 = 27,
+	DA9063_IRQ_GPI15 = 28,
+};
+
+struct da9063 {
+	struct device *dev;
+	enum da9063_type type;
+	unsigned char variant_code;
+	unsigned int flags;
+	struct regmap *regmap;
+	int chip_irq;
+	unsigned int irq_base;
+	struct regmap_irq_chip_data *regmap_irq;
+};
+
+enum da9063_variant_codes {
+	PMIC_DA9063_AD = 3,
+	PMIC_DA9063_BB = 5,
+	PMIC_DA9063_CA = 6,
+	PMIC_DA9063_DA = 7,
+};
+
+enum da9063_page_sel_buf_fmt {
+	DA9063_PAGE_SEL_BUF_PAGE_REG = 0,
+	DA9063_PAGE_SEL_BUF_PAGE_VAL = 1,
+	DA9063_PAGE_SEL_BUF_SIZE = 2,
+};
+
+enum da9063_paged_read_msgs {
+	DA9063_PAGED_READ_MSG_PAGE_SEL = 0,
+	DA9063_PAGED_READ_MSG_REG_SEL = 1,
+	DA9063_PAGED_READ_MSG_DATA = 2,
+	DA9063_PAGED_READ_MSG_CNT = 3,
+};
+
+enum {
+	DA9063_DEV_ID_REG = 0,
+	DA9063_VAR_ID_REG = 1,
+	DA9063_CHIP_ID_REGS = 2,
+};
+
+struct max14577_regulator_platform_data {
+	int id;
+	struct regulator_init_data *initdata;
+	struct device_node *of_node;
+};
+
+struct max14577_platform_data {
+	int irq_base;
+	int gpio_pogo_vbatt_en;
+	int gpio_pogo_vbus_en;
+	int (*set_gpio_pogo_vbatt_en)(int);
+	int (*set_gpio_pogo_vbus_en)(int);
+	int (*set_gpio_pogo_cb)(int);
+	struct max14577_regulator_platform_data *regulators;
+};
+
+struct maxim_charger_current {
+	unsigned int min;
+	unsigned int high_start;
+	unsigned int high_step;
+	unsigned int max;
+};
+
+enum maxim_device_type {
+	MAXIM_DEVICE_TYPE_UNKNOWN = 0,
+	MAXIM_DEVICE_TYPE_MAX14577 = 1,
+	MAXIM_DEVICE_TYPE_MAX77836 = 2,
+	MAXIM_DEVICE_TYPE_NUM = 3,
+};
+
+enum max14577_reg {
+	MAX14577_REG_DEVICEID = 0,
+	MAX14577_REG_INT1 = 1,
+	MAX14577_REG_INT2 = 2,
+	MAX14577_REG_INT3 = 3,
+	MAX14577_REG_STATUS1 = 4,
+	MAX14577_REG_STATUS2 = 5,
+	MAX14577_REG_STATUS3 = 6,
+	MAX14577_REG_INTMASK1 = 7,
+	MAX14577_REG_INTMASK2 = 8,
+	MAX14577_REG_INTMASK3 = 9,
+	MAX14577_REG_CDETCTRL1 = 10,
+	MAX14577_REG_RFU = 11,
+	MAX14577_REG_CONTROL1 = 12,
+	MAX14577_REG_CONTROL2 = 13,
+	MAX14577_REG_CONTROL3 = 14,
+	MAX14577_REG_CHGCTRL1 = 15,
+	MAX14577_REG_CHGCTRL2 = 16,
+	MAX14577_REG_CHGCTRL3 = 17,
+	MAX14577_REG_CHGCTRL4 = 18,
+	MAX14577_REG_CHGCTRL5 = 19,
+	MAX14577_REG_CHGCTRL6 = 20,
+	MAX14577_REG_CHGCTRL7 = 21,
+	MAX14577_REG_END = 22,
+};
+
+enum max77836_pmic_reg {
+	MAX77836_PMIC_REG_PMIC_ID = 32,
+	MAX77836_PMIC_REG_PMIC_REV = 33,
+	MAX77836_PMIC_REG_INTSRC = 34,
+	MAX77836_PMIC_REG_INTSRC_MASK = 35,
+	MAX77836_PMIC_REG_TOPSYS_INT = 36,
+	MAX77836_PMIC_REG_TOPSYS_INT_MASK = 38,
+	MAX77836_PMIC_REG_TOPSYS_STAT = 40,
+	MAX77836_PMIC_REG_MRSTB_CNTL = 42,
+	MAX77836_PMIC_REG_LSCNFG = 43,
+	MAX77836_LDO_REG_CNFG1_LDO1 = 81,
+	MAX77836_LDO_REG_CNFG2_LDO1 = 82,
+	MAX77836_LDO_REG_CNFG1_LDO2 = 83,
+	MAX77836_LDO_REG_CNFG2_LDO2 = 84,
+	MAX77836_LDO_REG_CNFG_LDO_BIAS = 85,
+	MAX77836_COMP_REG_COMP1 = 96,
+	MAX77836_PMIC_REG_END = 97,
+};
+
+enum max77836_fg_reg {
+	MAX77836_FG_REG_VCELL_MSB = 2,
+	MAX77836_FG_REG_VCELL_LSB = 3,
+	MAX77836_FG_REG_SOC_MSB = 4,
+	MAX77836_FG_REG_SOC_LSB = 5,
+	MAX77836_FG_REG_MODE_H = 6,
+	MAX77836_FG_REG_MODE_L = 7,
+	MAX77836_FG_REG_VERSION_MSB = 8,
+	MAX77836_FG_REG_VERSION_LSB = 9,
+	MAX77836_FG_REG_HIBRT_H = 10,
+	MAX77836_FG_REG_HIBRT_L = 11,
+	MAX77836_FG_REG_CONFIG_H = 12,
+	MAX77836_FG_REG_CONFIG_L = 13,
+	MAX77836_FG_REG_VALRT_MIN = 20,
+	MAX77836_FG_REG_VALRT_MAX = 21,
+	MAX77836_FG_REG_CRATE_MSB = 22,
+	MAX77836_FG_REG_CRATE_LSB = 23,
+	MAX77836_FG_REG_VRESET = 24,
+	MAX77836_FG_REG_FGID = 25,
+	MAX77836_FG_REG_STATUS_H = 26,
+	MAX77836_FG_REG_STATUS_L = 27,
+	MAX77836_FG_REG_END = 28,
+};
+
+struct max14577 {
+	struct device *dev;
+	struct i2c_client *i2c;
+	struct i2c_client *i2c_pmic;
+	enum maxim_device_type dev_type;
+	struct regmap *regmap;
+	struct regmap *regmap_pmic;
+	struct regmap_irq_chip_data *irq_data;
+	struct regmap_irq_chip_data *irq_data_pmic;
+	int irq;
+};
+
+enum max77693_types {
+	TYPE_MAX77693_UNKNOWN = 0,
+	TYPE_MAX77693 = 1,
+	TYPE_MAX77843 = 2,
+	TYPE_MAX77693_NUM = 3,
+};
+
+struct max77693_dev {
+	struct device *dev;
+	struct i2c_client *i2c;
+	struct i2c_client *i2c_muic;
+	struct i2c_client *i2c_haptic;
+	struct i2c_client *i2c_chg;
+	enum max77693_types type;
+	struct regmap *regmap;
+	struct regmap *regmap_muic;
+	struct regmap *regmap_haptic;
+	struct regmap *regmap_chg;
+	struct regmap_irq_chip_data *irq_data_led;
+	struct regmap_irq_chip_data *irq_data_topsys;
+	struct regmap_irq_chip_data *irq_data_chg;
+	struct regmap_irq_chip_data *irq_data_muic;
+	int irq;
+};
+
+enum max77693_pmic_reg {
+	MAX77693_LED_REG_IFLASH1 = 0,
+	MAX77693_LED_REG_IFLASH2 = 1,
+	MAX77693_LED_REG_ITORCH = 2,
+	MAX77693_LED_REG_ITORCHTIMER = 3,
+	MAX77693_LED_REG_FLASH_TIMER = 4,
+	MAX77693_LED_REG_FLASH_EN = 5,
+	MAX77693_LED_REG_MAX_FLASH1 = 6,
+	MAX77693_LED_REG_MAX_FLASH2 = 7,
+	MAX77693_LED_REG_MAX_FLASH3 = 8,
+	MAX77693_LED_REG_MAX_FLASH4 = 9,
+	MAX77693_LED_REG_VOUT_CNTL = 10,
+	MAX77693_LED_REG_VOUT_FLASH1 = 11,
+	MAX77693_LED_REG_VOUT_FLASH2 = 12,
+	MAX77693_LED_REG_FLASH_INT = 14,
+	MAX77693_LED_REG_FLASH_INT_MASK = 15,
+	MAX77693_LED_REG_FLASH_STATUS = 16,
+	MAX77693_PMIC_REG_PMIC_ID1 = 32,
+	MAX77693_PMIC_REG_PMIC_ID2 = 33,
+	MAX77693_PMIC_REG_INTSRC = 34,
+	MAX77693_PMIC_REG_INTSRC_MASK = 35,
+	MAX77693_PMIC_REG_TOPSYS_INT = 36,
+	MAX77693_PMIC_REG_TOPSYS_INT_MASK = 38,
+	MAX77693_PMIC_REG_TOPSYS_STAT = 40,
+	MAX77693_PMIC_REG_MAINCTRL1 = 42,
+	MAX77693_PMIC_REG_LSCNFG = 43,
+	MAX77693_CHG_REG_CHG_INT = 176,
+	MAX77693_CHG_REG_CHG_INT_MASK = 177,
+	MAX77693_CHG_REG_CHG_INT_OK = 178,
+	MAX77693_CHG_REG_CHG_DETAILS_00 = 179,
+	MAX77693_CHG_REG_CHG_DETAILS_01 = 180,
+	MAX77693_CHG_REG_CHG_DETAILS_02 = 181,
+	MAX77693_CHG_REG_CHG_DETAILS_03 = 182,
+	MAX77693_CHG_REG_CHG_CNFG_00 = 183,
+	MAX77693_CHG_REG_CHG_CNFG_01 = 184,
+	MAX77693_CHG_REG_CHG_CNFG_02 = 185,
+	MAX77693_CHG_REG_CHG_CNFG_03 = 186,
+	MAX77693_CHG_REG_CHG_CNFG_04 = 187,
+	MAX77693_CHG_REG_CHG_CNFG_05 = 188,
+	MAX77693_CHG_REG_CHG_CNFG_06 = 189,
+	MAX77693_CHG_REG_CHG_CNFG_07 = 190,
+	MAX77693_CHG_REG_CHG_CNFG_08 = 191,
+	MAX77693_CHG_REG_CHG_CNFG_09 = 192,
+	MAX77693_CHG_REG_CHG_CNFG_10 = 193,
+	MAX77693_CHG_REG_CHG_CNFG_11 = 194,
+	MAX77693_CHG_REG_CHG_CNFG_12 = 195,
+	MAX77693_CHG_REG_CHG_CNFG_13 = 196,
+	MAX77693_CHG_REG_CHG_CNFG_14 = 197,
+	MAX77693_CHG_REG_SAFEOUT_CTRL = 198,
+	MAX77693_PMIC_REG_END = 199,
+};
+
+enum max77693_muic_reg {
+	MAX77693_MUIC_REG_ID = 0,
+	MAX77693_MUIC_REG_INT1 = 1,
+	MAX77693_MUIC_REG_INT2 = 2,
+	MAX77693_MUIC_REG_INT3 = 3,
+	MAX77693_MUIC_REG_STATUS1 = 4,
+	MAX77693_MUIC_REG_STATUS2 = 5,
+	MAX77693_MUIC_REG_STATUS3 = 6,
+	MAX77693_MUIC_REG_INTMASK1 = 7,
+	MAX77693_MUIC_REG_INTMASK2 = 8,
+	MAX77693_MUIC_REG_INTMASK3 = 9,
+	MAX77693_MUIC_REG_CDETCTRL1 = 10,
+	MAX77693_MUIC_REG_CDETCTRL2 = 11,
+	MAX77693_MUIC_REG_CTRL1 = 12,
+	MAX77693_MUIC_REG_CTRL2 = 13,
+	MAX77693_MUIC_REG_CTRL3 = 14,
+	MAX77693_MUIC_REG_END = 15,
+};
+
+enum max77693_haptic_reg {
+	MAX77693_HAPTIC_REG_STATUS = 0,
+	MAX77693_HAPTIC_REG_CONFIG1 = 1,
+	MAX77693_HAPTIC_REG_CONFIG2 = 2,
+	MAX77693_HAPTIC_REG_CONFIG_CHNL = 3,
+	MAX77693_HAPTIC_REG_CONFG_CYC1 = 4,
+	MAX77693_HAPTIC_REG_CONFG_CYC2 = 5,
+	MAX77693_HAPTIC_REG_CONFIG_PER1 = 6,
+	MAX77693_HAPTIC_REG_CONFIG_PER2 = 7,
+	MAX77693_HAPTIC_REG_CONFIG_PER3 = 8,
+	MAX77693_HAPTIC_REG_CONFIG_PER4 = 9,
+	MAX77693_HAPTIC_REG_CONFIG_DUTY1 = 10,
+	MAX77693_HAPTIC_REG_CONFIG_DUTY2 = 11,
+	MAX77693_HAPTIC_REG_CONFIG_PWM1 = 12,
+	MAX77693_HAPTIC_REG_CONFIG_PWM2 = 13,
+	MAX77693_HAPTIC_REG_CONFIG_PWM3 = 14,
+	MAX77693_HAPTIC_REG_CONFIG_PWM4 = 15,
+	MAX77693_HAPTIC_REG_REV = 16,
+	MAX77693_HAPTIC_REG_END = 17,
+};
+
+enum max77843_sys_reg {
+	MAX77843_SYS_REG_PMICID = 0,
+	MAX77843_SYS_REG_PMICREV = 1,
+	MAX77843_SYS_REG_MAINCTRL1 = 2,
+	MAX77843_SYS_REG_INTSRC = 34,
+	MAX77843_SYS_REG_INTSRCMASK = 35,
+	MAX77843_SYS_REG_SYSINTSRC = 36,
+	MAX77843_SYS_REG_SYSINTMASK = 38,
+	MAX77843_SYS_REG_TOPSYS_STAT = 40,
+	MAX77843_SYS_REG_SAFEOUTCTRL = 198,
+	MAX77843_SYS_REG_END = 199,
+};
+
+enum max77843_charger_reg {
+	MAX77843_CHG_REG_CHG_INT = 176,
+	MAX77843_CHG_REG_CHG_INT_MASK = 177,
+	MAX77843_CHG_REG_CHG_INT_OK = 178,
+	MAX77843_CHG_REG_CHG_DTLS_00 = 179,
+	MAX77843_CHG_REG_CHG_DTLS_01 = 180,
+	MAX77843_CHG_REG_CHG_DTLS_02 = 181,
+	MAX77843_CHG_REG_CHG_CNFG_00 = 183,
+	MAX77843_CHG_REG_CHG_CNFG_01 = 184,
+	MAX77843_CHG_REG_CHG_CNFG_02 = 185,
+	MAX77843_CHG_REG_CHG_CNFG_03 = 186,
+	MAX77843_CHG_REG_CHG_CNFG_04 = 187,
+	MAX77843_CHG_REG_CHG_CNFG_06 = 189,
+	MAX77843_CHG_REG_CHG_CNFG_07 = 190,
+	MAX77843_CHG_REG_CHG_CNFG_09 = 192,
+	MAX77843_CHG_REG_CHG_CNFG_10 = 193,
+	MAX77843_CHG_REG_CHG_CNFG_11 = 194,
+	MAX77843_CHG_REG_CHG_CNFG_12 = 195,
+	MAX77843_CHG_REG_END = 196,
+};
+
+enum {
+	MAX8925_IRQ_VCHG_DC_OVP = 0,
+	MAX8925_IRQ_VCHG_DC_F = 1,
+	MAX8925_IRQ_VCHG_DC_R = 2,
+	MAX8925_IRQ_VCHG_THM_OK_R = 3,
+	MAX8925_IRQ_VCHG_THM_OK_F = 4,
+	MAX8925_IRQ_VCHG_SYSLOW_F = 5,
+	MAX8925_IRQ_VCHG_SYSLOW_R = 6,
+	MAX8925_IRQ_VCHG_RST = 7,
+	MAX8925_IRQ_VCHG_DONE = 8,
+	MAX8925_IRQ_VCHG_TOPOFF = 9,
+	MAX8925_IRQ_VCHG_TMR_FAULT = 10,
+	MAX8925_IRQ_GPM_RSTIN = 11,
+	MAX8925_IRQ_GPM_MPL = 12,
+	MAX8925_IRQ_GPM_SW_3SEC = 13,
+	MAX8925_IRQ_GPM_EXTON_F = 14,
+	MAX8925_IRQ_GPM_EXTON_R = 15,
+	MAX8925_IRQ_GPM_SW_1SEC = 16,
+	MAX8925_IRQ_GPM_SW_F = 17,
+	MAX8925_IRQ_GPM_SW_R = 18,
+	MAX8925_IRQ_GPM_SYSCKEN_F = 19,
+	MAX8925_IRQ_GPM_SYSCKEN_R = 20,
+	MAX8925_IRQ_RTC_ALARM1 = 21,
+	MAX8925_IRQ_RTC_ALARM0 = 22,
+	MAX8925_IRQ_TSC_STICK = 23,
+	MAX8925_IRQ_TSC_NSTICK = 24,
+	MAX8925_NR_IRQS = 25,
+};
+
+struct max8925_chip {
+	struct device *dev;
+	struct i2c_client *i2c;
+	struct i2c_client *adc;
+	struct i2c_client *rtc;
+	struct mutex io_lock;
+	struct mutex irq_lock;
+	int irq_base;
+	int core_irq;
+	int tsc_irq;
+	unsigned int wakeup_flag;
+};
+
+struct max8925_backlight_pdata {
+	int lxw_scl;
+	int lxw_freq;
+	int dual_string;
+};
+
+struct max8925_touch_pdata {
+	unsigned int flags;
+};
+
+struct max8925_power_pdata {
+	int (*set_charger)(int);
+	unsigned int batt_detect: 1;
+	unsigned int topoff_threshold: 2;
+	unsigned int fast_charge: 3;
+	unsigned int no_temp_support: 1;
+	unsigned int no_insert_detect: 1;
+	char **supplied_to;
+	int num_supplicants;
+};
+
+struct max8925_platform_data {
+	struct max8925_backlight_pdata *backlight;
+	struct max8925_touch_pdata *touch;
+	struct max8925_power_pdata *power;
+	struct regulator_init_data *sd1;
+	struct regulator_init_data *sd2;
+	struct regulator_init_data *sd3;
+	struct regulator_init_data *ldo1;
+	struct regulator_init_data *ldo2;
+	struct regulator_init_data *ldo3;
+	struct regulator_init_data *ldo4;
+	struct regulator_init_data *ldo5;
+	struct regulator_init_data *ldo6;
+	struct regulator_init_data *ldo7;
+	struct regulator_init_data *ldo8;
+	struct regulator_init_data *ldo9;
+	struct regulator_init_data *ldo10;
+	struct regulator_init_data *ldo11;
+	struct regulator_init_data *ldo12;
+	struct regulator_init_data *ldo13;
+	struct regulator_init_data *ldo14;
+	struct regulator_init_data *ldo15;
+	struct regulator_init_data *ldo16;
+	struct regulator_init_data *ldo17;
+	struct regulator_init_data *ldo18;
+	struct regulator_init_data *ldo19;
+	struct regulator_init_data *ldo20;
+	int irq_base;
+	int tsc_irq;
+};
+
+enum {
+	FLAGS_ADC = 1,
+	FLAGS_RTC = 2,
+};
+
+struct max8925_irq_data {
+	int reg;
+	int mask_reg;
+	int enable;
+	int offs;
+	int flags;
+	int tsc_irq;
+};
+
+struct max8997_regulator_data {
+	int id;
+	struct regulator_init_data *initdata;
+	struct device_node *reg_node;
+};
+
+struct max8997_muic_reg_data {
+	u8 addr;
+	u8 data;
+};
+
+struct max8997_muic_platform_data {
+	struct max8997_muic_reg_data *init_data;
+	int num_init_data;
+	int detcable_delay_ms;
+	int path_usb;
+	int path_uart;
+};
+
+enum max8997_haptic_motor_type {
+	MAX8997_HAPTIC_ERM = 0,
+	MAX8997_HAPTIC_LRA = 1,
+};
+
+enum max8997_haptic_pulse_mode {
+	MAX8997_EXTERNAL_MODE = 0,
+	MAX8997_INTERNAL_MODE = 1,
+};
+
+enum max8997_haptic_pwm_divisor {
+	MAX8997_PWM_DIVISOR_32 = 0,
+	MAX8997_PWM_DIVISOR_64 = 1,
+	MAX8997_PWM_DIVISOR_128 = 2,
+	MAX8997_PWM_DIVISOR_256 = 3,
+};
+
+struct max8997_haptic_platform_data {
+	unsigned int pwm_channel_id;
+	unsigned int pwm_period;
+	enum max8997_haptic_motor_type type;
+	enum max8997_haptic_pulse_mode mode;
+	enum max8997_haptic_pwm_divisor pwm_divisor;
+	unsigned int internal_mode_pattern;
+	unsigned int pattern_cycle;
+	unsigned int pattern_signal_period;
+};
+
+enum max8997_led_mode {
+	MAX8997_NONE = 0,
+	MAX8997_FLASH_MODE = 1,
+	MAX8997_MOVIE_MODE = 2,
+	MAX8997_FLASH_PIN_CONTROL_MODE = 3,
+	MAX8997_MOVIE_PIN_CONTROL_MODE = 4,
+};
+
+struct max8997_led_platform_data {
+	enum max8997_led_mode mode[2];
+	u8 brightness[2];
+};
+
+struct max8997_platform_data {
+	int ono;
+	struct max8997_regulator_data *regulators;
+	int num_regulators;
+	bool ignore_gpiodvs_side_effect;
+	int buck125_gpios[3];
+	int buck125_default_idx;
+	unsigned int buck1_voltage[8];
+	bool buck1_gpiodvs;
+	unsigned int buck2_voltage[8];
+	bool buck2_gpiodvs;
+	unsigned int buck5_voltage[8];
+	bool buck5_gpiodvs;
+	int eoc_mA;
+	int timeout;
+	struct max8997_muic_platform_data *muic_pdata;
+	struct max8997_haptic_platform_data *haptic_pdata;
+	struct max8997_led_platform_data *led_pdata;
+};
+
+enum max8997_pmic_reg {
+	MAX8997_REG_PMIC_ID0 = 0,
+	MAX8997_REG_PMIC_ID1 = 1,
+	MAX8997_REG_INTSRC = 2,
+	MAX8997_REG_INT1 = 3,
+	MAX8997_REG_INT2 = 4,
+	MAX8997_REG_INT3 = 5,
+	MAX8997_REG_INT4 = 6,
+	MAX8997_REG_INT1MSK = 8,
+	MAX8997_REG_INT2MSK = 9,
+	MAX8997_REG_INT3MSK = 10,
+	MAX8997_REG_INT4MSK = 11,
+	MAX8997_REG_STATUS1 = 13,
+	MAX8997_REG_STATUS2 = 14,
+	MAX8997_REG_STATUS3 = 15,
+	MAX8997_REG_STATUS4 = 16,
+	MAX8997_REG_MAINCON1 = 19,
+	MAX8997_REG_MAINCON2 = 20,
+	MAX8997_REG_BUCKRAMP = 21,
+	MAX8997_REG_BUCK1CTRL = 24,
+	MAX8997_REG_BUCK1DVS1 = 25,
+	MAX8997_REG_BUCK1DVS2 = 26,
+	MAX8997_REG_BUCK1DVS3 = 27,
+	MAX8997_REG_BUCK1DVS4 = 28,
+	MAX8997_REG_BUCK1DVS5 = 29,
+	MAX8997_REG_BUCK1DVS6 = 30,
+	MAX8997_REG_BUCK1DVS7 = 31,
+	MAX8997_REG_BUCK1DVS8 = 32,
+	MAX8997_REG_BUCK2CTRL = 33,
+	MAX8997_REG_BUCK2DVS1 = 34,
+	MAX8997_REG_BUCK2DVS2 = 35,
+	MAX8997_REG_BUCK2DVS3 = 36,
+	MAX8997_REG_BUCK2DVS4 = 37,
+	MAX8997_REG_BUCK2DVS5 = 38,
+	MAX8997_REG_BUCK2DVS6 = 39,
+	MAX8997_REG_BUCK2DVS7 = 40,
+	MAX8997_REG_BUCK2DVS8 = 41,
+	MAX8997_REG_BUCK3CTRL = 42,
+	MAX8997_REG_BUCK3DVS = 43,
+	MAX8997_REG_BUCK4CTRL = 44,
+	MAX8997_REG_BUCK4DVS = 45,
+	MAX8997_REG_BUCK5CTRL = 46,
+	MAX8997_REG_BUCK5DVS1 = 47,
+	MAX8997_REG_BUCK5DVS2 = 48,
+	MAX8997_REG_BUCK5DVS3 = 49,
+	MAX8997_REG_BUCK5DVS4 = 50,
+	MAX8997_REG_BUCK5DVS5 = 51,
+	MAX8997_REG_BUCK5DVS6 = 52,
+	MAX8997_REG_BUCK5DVS7 = 53,
+	MAX8997_REG_BUCK5DVS8 = 54,
+	MAX8997_REG_BUCK6CTRL = 55,
+	MAX8997_REG_BUCK6BPSKIPCTRL = 56,
+	MAX8997_REG_BUCK7CTRL = 57,
+	MAX8997_REG_BUCK7DVS = 58,
+	MAX8997_REG_LDO1CTRL = 59,
+	MAX8997_REG_LDO2CTRL = 60,
+	MAX8997_REG_LDO3CTRL = 61,
+	MAX8997_REG_LDO4CTRL = 62,
+	MAX8997_REG_LDO5CTRL = 63,
+	MAX8997_REG_LDO6CTRL = 64,
+	MAX8997_REG_LDO7CTRL = 65,
+	MAX8997_REG_LDO8CTRL = 66,
+	MAX8997_REG_LDO9CTRL = 67,
+	MAX8997_REG_LDO10CTRL = 68,
+	MAX8997_REG_LDO11CTRL = 69,
+	MAX8997_REG_LDO12CTRL = 70,
+	MAX8997_REG_LDO13CTRL = 71,
+	MAX8997_REG_LDO14CTRL = 72,
+	MAX8997_REG_LDO15CTRL = 73,
+	MAX8997_REG_LDO16CTRL = 74,
+	MAX8997_REG_LDO17CTRL = 75,
+	MAX8997_REG_LDO18CTRL = 76,
+	MAX8997_REG_LDO21CTRL = 77,
+	MAX8997_REG_MBCCTRL1 = 80,
+	MAX8997_REG_MBCCTRL2 = 81,
+	MAX8997_REG_MBCCTRL3 = 82,
+	MAX8997_REG_MBCCTRL4 = 83,
+	MAX8997_REG_MBCCTRL5 = 84,
+	MAX8997_REG_MBCCTRL6 = 85,
+	MAX8997_REG_OTPCGHCVS = 86,
+	MAX8997_REG_SAFEOUTCTRL = 90,
+	MAX8997_REG_LBCNFG1 = 94,
+	MAX8997_REG_LBCNFG2 = 95,
+	MAX8997_REG_BBCCTRL = 96,
+	MAX8997_REG_FLASH1_CUR = 99,
+	MAX8997_REG_FLASH2_CUR = 100,
+	MAX8997_REG_MOVIE_CUR = 101,
+	MAX8997_REG_GSMB_CUR = 102,
+	MAX8997_REG_BOOST_CNTL = 103,
+	MAX8997_REG_LEN_CNTL = 104,
+	MAX8997_REG_FLASH_CNTL = 105,
+	MAX8997_REG_WDT_CNTL = 106,
+	MAX8997_REG_MAXFLASH1 = 107,
+	MAX8997_REG_MAXFLASH2 = 108,
+	MAX8997_REG_FLASHSTATUS = 109,
+	MAX8997_REG_FLASHSTATUSMASK = 110,
+	MAX8997_REG_GPIOCNTL1 = 112,
+	MAX8997_REG_GPIOCNTL2 = 113,
+	MAX8997_REG_GPIOCNTL3 = 114,
+	MAX8997_REG_GPIOCNTL4 = 115,
+	MAX8997_REG_GPIOCNTL5 = 116,
+	MAX8997_REG_GPIOCNTL6 = 117,
+	MAX8997_REG_GPIOCNTL7 = 118,
+	MAX8997_REG_GPIOCNTL8 = 119,
+	MAX8997_REG_GPIOCNTL9 = 120,
+	MAX8997_REG_GPIOCNTL10 = 121,
+	MAX8997_REG_GPIOCNTL11 = 122,
+	MAX8997_REG_GPIOCNTL12 = 123,
+	MAX8997_REG_LDO1CONFIG = 128,
+	MAX8997_REG_LDO2CONFIG = 129,
+	MAX8997_REG_LDO3CONFIG = 130,
+	MAX8997_REG_LDO4CONFIG = 131,
+	MAX8997_REG_LDO5CONFIG = 132,
+	MAX8997_REG_LDO6CONFIG = 133,
+	MAX8997_REG_LDO7CONFIG = 134,
+	MAX8997_REG_LDO8CONFIG = 135,
+	MAX8997_REG_LDO9CONFIG = 136,
+	MAX8997_REG_LDO10CONFIG = 137,
+	MAX8997_REG_LDO11CONFIG = 138,
+	MAX8997_REG_LDO12CONFIG = 139,
+	MAX8997_REG_LDO13CONFIG = 140,
+	MAX8997_REG_LDO14CONFIG = 141,
+	MAX8997_REG_LDO15CONFIG = 142,
+	MAX8997_REG_LDO16CONFIG = 143,
+	MAX8997_REG_LDO17CONFIG = 144,
+	MAX8997_REG_LDO18CONFIG = 145,
+	MAX8997_REG_LDO21CONFIG = 146,
+	MAX8997_REG_DVSOKTIMER1 = 151,
+	MAX8997_REG_DVSOKTIMER2 = 152,
+	MAX8997_REG_DVSOKTIMER4 = 153,
+	MAX8997_REG_DVSOKTIMER5 = 154,
+	MAX8997_REG_PMIC_END = 155,
+};
+
+enum max8997_muic_reg {
+	MAX8997_MUIC_REG_ID = 0,
+	MAX8997_MUIC_REG_INT1 = 1,
+	MAX8997_MUIC_REG_INT2 = 2,
+	MAX8997_MUIC_REG_INT3 = 3,
+	MAX8997_MUIC_REG_STATUS1 = 4,
+	MAX8997_MUIC_REG_STATUS2 = 5,
+	MAX8997_MUIC_REG_STATUS3 = 6,
+	MAX8997_MUIC_REG_INTMASK1 = 7,
+	MAX8997_MUIC_REG_INTMASK2 = 8,
+	MAX8997_MUIC_REG_INTMASK3 = 9,
+	MAX8997_MUIC_REG_CDETCTRL = 10,
+	MAX8997_MUIC_REG_CONTROL1 = 12,
+	MAX8997_MUIC_REG_CONTROL2 = 13,
+	MAX8997_MUIC_REG_CONTROL3 = 14,
+	MAX8997_MUIC_REG_END = 15,
+};
+
+enum max8997_haptic_reg {
+	MAX8997_HAPTIC_REG_GENERAL = 0,
+	MAX8997_HAPTIC_REG_CONF1 = 1,
+	MAX8997_HAPTIC_REG_CONF2 = 2,
+	MAX8997_HAPTIC_REG_DRVCONF = 3,
+	MAX8997_HAPTIC_REG_CYCLECONF1 = 4,
+	MAX8997_HAPTIC_REG_CYCLECONF2 = 5,
+	MAX8997_HAPTIC_REG_SIGCONF1 = 6,
+	MAX8997_HAPTIC_REG_SIGCONF2 = 7,
+	MAX8997_HAPTIC_REG_SIGCONF3 = 8,
+	MAX8997_HAPTIC_REG_SIGCONF4 = 9,
+	MAX8997_HAPTIC_REG_SIGDC1 = 10,
+	MAX8997_HAPTIC_REG_SIGDC2 = 11,
+	MAX8997_HAPTIC_REG_SIGPWMDC1 = 12,
+	MAX8997_HAPTIC_REG_SIGPWMDC2 = 13,
+	MAX8997_HAPTIC_REG_SIGPWMDC3 = 14,
+	MAX8997_HAPTIC_REG_SIGPWMDC4 = 15,
+	MAX8997_HAPTIC_REG_MTR_REV = 16,
+	MAX8997_HAPTIC_REG_END = 17,
+};
+
+enum max8997_irq_source {
+	PMIC_INT1 = 0,
+	PMIC_INT2 = 1,
+	PMIC_INT3 = 2,
+	PMIC_INT4 = 3,
+	FUEL_GAUGE = 4,
+	MUIC_INT1 = 5,
+	MUIC_INT2 = 6,
+	MUIC_INT3 = 7,
+	GPIO_LOW = 8,
+	GPIO_HI = 9,
+	FLASH_STATUS = 10,
+	MAX8997_IRQ_GROUP_NR = 11,
+};
+
+struct max8997_dev {
+	struct device *dev;
+	struct max8997_platform_data *pdata;
+	struct i2c_client *i2c;
+	struct i2c_client *rtc;
+	struct i2c_client *haptic;
+	struct i2c_client *muic;
+	struct mutex iolock;
+	long unsigned int type;
+	struct platform_device *battery;
+	int irq;
+	int ono;
+	struct irq_domain *irq_domain;
+	struct mutex irqlock;
+	int irq_masks_cur[11];
+	int irq_masks_cache[11];
+	u8 reg_dump[187];
+	bool gpio_status[12];
+};
+
+enum max8997_types {
+	TYPE_MAX8997 = 0,
+	TYPE_MAX8966 = 1,
+};
+
+enum max8997_irq {
+	MAX8997_PMICIRQ_PWRONR = 0,
+	MAX8997_PMICIRQ_PWRONF = 1,
+	MAX8997_PMICIRQ_PWRON1SEC = 2,
+	MAX8997_PMICIRQ_JIGONR = 3,
+	MAX8997_PMICIRQ_JIGONF = 4,
+	MAX8997_PMICIRQ_LOWBAT2 = 5,
+	MAX8997_PMICIRQ_LOWBAT1 = 6,
+	MAX8997_PMICIRQ_JIGR = 7,
+	MAX8997_PMICIRQ_JIGF = 8,
+	MAX8997_PMICIRQ_MR = 9,
+	MAX8997_PMICIRQ_DVS1OK = 10,
+	MAX8997_PMICIRQ_DVS2OK = 11,
+	MAX8997_PMICIRQ_DVS3OK = 12,
+	MAX8997_PMICIRQ_DVS4OK = 13,
+	MAX8997_PMICIRQ_CHGINS = 14,
+	MAX8997_PMICIRQ_CHGRM = 15,
+	MAX8997_PMICIRQ_DCINOVP = 16,
+	MAX8997_PMICIRQ_TOPOFFR = 17,
+	MAX8997_PMICIRQ_CHGRSTF = 18,
+	MAX8997_PMICIRQ_MBCHGTMEXPD = 19,
+	MAX8997_PMICIRQ_RTC60S = 20,
+	MAX8997_PMICIRQ_RTCA1 = 21,
+	MAX8997_PMICIRQ_RTCA2 = 22,
+	MAX8997_PMICIRQ_SMPL_INT = 23,
+	MAX8997_PMICIRQ_RTC1S = 24,
+	MAX8997_PMICIRQ_WTSR = 25,
+	MAX8997_MUICIRQ_ADCError = 26,
+	MAX8997_MUICIRQ_ADCLow = 27,
+	MAX8997_MUICIRQ_ADC = 28,
+	MAX8997_MUICIRQ_VBVolt = 29,
+	MAX8997_MUICIRQ_DBChg = 30,
+	MAX8997_MUICIRQ_DCDTmr = 31,
+	MAX8997_MUICIRQ_ChgDetRun = 32,
+	MAX8997_MUICIRQ_ChgTyp = 33,
+	MAX8997_MUICIRQ_OVP = 34,
+	MAX8997_IRQ_NR = 35,
+};
+
+struct max8997_irq_data {
+	int mask;
+	enum max8997_irq_source group;
+};
+
+struct max8998_regulator_data {
+	int id;
+	struct regulator_init_data *initdata;
+	struct device_node *reg_node;
+};
+
+struct max8998_platform_data {
+	struct max8998_regulator_data *regulators;
+	int num_regulators;
+	unsigned int irq_base;
+	int ono;
+	bool buck_voltage_lock;
+	int buck1_voltage[4];
+	int buck2_voltage[2];
+	int buck1_set1;
+	int buck1_set2;
+	int buck1_default_idx;
+	int buck2_set3;
+	int buck2_default_idx;
+	bool wakeup;
+	bool rtc_delay;
+	int eoc;
+	int restart;
+	int timeout;
+};
+
+enum {
+	MAX8998_REG_IRQ1 = 0,
+	MAX8998_REG_IRQ2 = 1,
+	MAX8998_REG_IRQ3 = 2,
+	MAX8998_REG_IRQ4 = 3,
+	MAX8998_REG_IRQM1 = 4,
+	MAX8998_REG_IRQM2 = 5,
+	MAX8998_REG_IRQM3 = 6,
+	MAX8998_REG_IRQM4 = 7,
+	MAX8998_REG_STATUS1 = 8,
+	MAX8998_REG_STATUS2 = 9,
+	MAX8998_REG_STATUSM1 = 10,
+	MAX8998_REG_STATUSM2 = 11,
+	MAX8998_REG_CHGR1 = 12,
+	MAX8998_REG_CHGR2 = 13,
+	MAX8998_REG_LDO_ACTIVE_DISCHARGE1 = 14,
+	MAX8998_REG_LDO_ACTIVE_DISCHARGE2 = 15,
+	MAX8998_REG_BUCK_ACTIVE_DISCHARGE3 = 16,
+	MAX8998_REG_ONOFF1 = 17,
+	MAX8998_REG_ONOFF2 = 18,
+	MAX8998_REG_ONOFF3 = 19,
+	MAX8998_REG_ONOFF4 = 20,
+	MAX8998_REG_BUCK1_VOLTAGE1 = 21,
+	MAX8998_REG_BUCK1_VOLTAGE2 = 22,
+	MAX8998_REG_BUCK1_VOLTAGE3 = 23,
+	MAX8998_REG_BUCK1_VOLTAGE4 = 24,
+	MAX8998_REG_BUCK2_VOLTAGE1 = 25,
+	MAX8998_REG_BUCK2_VOLTAGE2 = 26,
+	MAX8998_REG_BUCK3 = 27,
+	MAX8998_REG_BUCK4 = 28,
+	MAX8998_REG_LDO2_LDO3 = 29,
+	MAX8998_REG_LDO4 = 30,
+	MAX8998_REG_LDO5 = 31,
+	MAX8998_REG_LDO6 = 32,
+	MAX8998_REG_LDO7 = 33,
+	MAX8998_REG_LDO8_LDO9 = 34,
+	MAX8998_REG_LDO10_LDO11 = 35,
+	MAX8998_REG_LDO12 = 36,
+	MAX8998_REG_LDO13 = 37,
+	MAX8998_REG_LDO14 = 38,
+	MAX8998_REG_LDO15 = 39,
+	MAX8998_REG_LDO16 = 40,
+	MAX8998_REG_LDO17 = 41,
+	MAX8998_REG_BKCHR = 42,
+	MAX8998_REG_LBCNFG1 = 43,
+	MAX8998_REG_LBCNFG2 = 44,
+};
+
+enum {
+	TYPE_MAX8998 = 0,
+	TYPE_LP3974 = 1,
+	TYPE_LP3979 = 2,
+};
+
+struct max8998_dev {
+	struct device *dev;
+	struct max8998_platform_data *pdata;
+	struct i2c_client *i2c;
+	struct i2c_client *rtc;
+	struct mutex iolock;
+	struct mutex irqlock;
+	unsigned int irq_base;
+	struct irq_domain *irq_domain;
+	int irq;
+	int ono;
+	u8 irq_masks_cur[4];
+	u8 irq_masks_cache[4];
+	long unsigned int type;
+	bool wakeup;
+};
+
+struct max8998_reg_dump {
+	u8 addr;
+	u8 val;
+};
+
+enum {
+	MAX8998_IRQ_DCINF = 0,
+	MAX8998_IRQ_DCINR = 1,
+	MAX8998_IRQ_JIGF = 2,
+	MAX8998_IRQ_JIGR = 3,
+	MAX8998_IRQ_PWRONF = 4,
+	MAX8998_IRQ_PWRONR = 5,
+	MAX8998_IRQ_WTSREVNT = 6,
+	MAX8998_IRQ_SMPLEVNT = 7,
+	MAX8998_IRQ_ALARM1 = 8,
+	MAX8998_IRQ_ALARM0 = 9,
+	MAX8998_IRQ_ONKEY1S = 10,
+	MAX8998_IRQ_TOPOFFR = 11,
+	MAX8998_IRQ_DCINOVPR = 12,
+	MAX8998_IRQ_CHGRSTF = 13,
+	MAX8998_IRQ_DONER = 14,
+	MAX8998_IRQ_CHGFAULT = 15,
+	MAX8998_IRQ_LOBAT1 = 16,
+	MAX8998_IRQ_LOBAT2 = 17,
+	MAX8998_IRQ_NR = 18,
+};
+
+struct max8998_irq_data {
+	int reg;
+	int mask;
+};
+
+struct adp5520_gpio_platform_data {
+	unsigned int gpio_start;
+	u8 gpio_en_mask;
+	u8 gpio_pullup_mask;
+};
+
+struct adp5520_keys_platform_data {
+	int rows_en_mask;
+	int cols_en_mask;
+	const short unsigned int *keymap;
+	short unsigned int keymapsize;
+	unsigned int repeat: 1;
+};
+
+struct led_info;
+
+struct adp5520_leds_platform_data {
+	int num_leds;
+	struct led_info *leds;
+	u8 fade_in;
+	u8 fade_out;
+	u8 led_on_time;
+};
+
+struct adp5520_backlight_platform_data {
+	u8 fade_in;
+	u8 fade_out;
+	u8 fade_led_law;
+	u8 en_ambl_sens;
+	u8 abml_filt;
+	u8 l1_daylight_max;
+	u8 l1_daylight_dim;
+	u8 l2_office_max;
+	u8 l2_office_dim;
+	u8 l3_dark_max;
+	u8 l3_dark_dim;
+	u8 l2_trip;
+	u8 l2_hyst;
+	u8 l3_trip;
+	u8 l3_hyst;
+};
+
+struct adp5520_platform_data {
+	struct adp5520_keys_platform_data *keys;
+	struct adp5520_gpio_platform_data *gpio;
+	struct adp5520_leds_platform_data *leds;
+	struct adp5520_backlight_platform_data *backlight;
+};
+
+struct adp5520_chip {
+	struct i2c_client *client;
+	struct device *dev;
+	struct mutex lock;
+	struct blocking_notifier_head notifier_list;
+	int irq;
+	long unsigned int id;
+	uint8_t mode;
+};
+
+struct tps6586x_irq_data {
+	u8 mask_reg;
+	u8 mask_mask;
+};
+
+struct tps6586x {
+	struct device *dev;
+	struct i2c_client *client;
+	struct regmap *regmap;
+	int version;
+	int irq;
+	struct irq_chip irq_chip;
+	struct mutex irq_lock;
+	int irq_base;
+	u32 irq_en;
+	u8 mask_reg[5];
+	struct irq_domain *irq_domain;
+};
+
+enum {
+	TPS65090_IRQ_INTERRUPT = 0,
+	TPS65090_IRQ_VAC_STATUS_CHANGE = 1,
+	TPS65090_IRQ_VSYS_STATUS_CHANGE = 2,
+	TPS65090_IRQ_BAT_STATUS_CHANGE = 3,
+	TPS65090_IRQ_CHARGING_STATUS_CHANGE = 4,
+	TPS65090_IRQ_CHARGING_COMPLETE = 5,
+	TPS65090_IRQ_OVERLOAD_DCDC1 = 6,
+	TPS65090_IRQ_OVERLOAD_DCDC2 = 7,
+	TPS65090_IRQ_OVERLOAD_DCDC3 = 8,
+	TPS65090_IRQ_OVERLOAD_FET1 = 9,
+	TPS65090_IRQ_OVERLOAD_FET2 = 10,
+	TPS65090_IRQ_OVERLOAD_FET3 = 11,
+	TPS65090_IRQ_OVERLOAD_FET4 = 12,
+	TPS65090_IRQ_OVERLOAD_FET5 = 13,
+	TPS65090_IRQ_OVERLOAD_FET6 = 14,
+	TPS65090_IRQ_OVERLOAD_FET7 = 15,
+};
+
+enum {
+	TPS65090_REGULATOR_DCDC1 = 0,
+	TPS65090_REGULATOR_DCDC2 = 1,
+	TPS65090_REGULATOR_DCDC3 = 2,
+	TPS65090_REGULATOR_FET1 = 3,
+	TPS65090_REGULATOR_FET2 = 4,
+	TPS65090_REGULATOR_FET3 = 5,
+	TPS65090_REGULATOR_FET4 = 6,
+	TPS65090_REGULATOR_FET5 = 7,
+	TPS65090_REGULATOR_FET6 = 8,
+	TPS65090_REGULATOR_FET7 = 9,
+	TPS65090_REGULATOR_LDO1 = 10,
+	TPS65090_REGULATOR_LDO2 = 11,
+	TPS65090_REGULATOR_MAX = 12,
+};
+
+struct tps65090 {
+	struct device *dev;
+	struct regmap *rmap;
+	struct regmap_irq_chip_data *irq_data;
+};
+
+struct tps65090_regulator_plat_data {
+	struct regulator_init_data *reg_init_data;
+	bool enable_ext_control;
+	struct gpio_desc *gpiod;
+	bool overcurrent_wait_valid;
+	int overcurrent_wait;
+};
+
+struct tps65090_platform_data {
+	int irq_base;
+	char **supplied_to;
+	size_t num_supplicants;
+	int enable_low_current_chrg;
+	struct tps65090_regulator_plat_data *reg_pdata[12];
+};
+
+enum tps65090_cells {
+	PMIC = 0,
+	CHARGER = 1,
+};
+
+enum aat2870_id {
+	AAT2870_ID_BL = 0,
+	AAT2870_ID_LDOA = 1,
+	AAT2870_ID_LDOB = 2,
+	AAT2870_ID_LDOC = 3,
+	AAT2870_ID_LDOD = 4,
+};
+
+struct aat2870_register {
+	bool readable;
+	bool writeable;
+	u8 value;
+};
+
+struct aat2870_data {
+	struct device *dev;
+	struct i2c_client *client;
+	struct mutex io_lock;
+	struct aat2870_register *reg_cache;
+	int en_pin;
+	bool is_enable;
+	int (*init)(struct aat2870_data *);
+	void (*uninit)(struct aat2870_data *);
+	int (*read)(struct aat2870_data *, u8, u8 *);
+	int (*write)(struct aat2870_data *, u8, u8);
+	int (*update)(struct aat2870_data *, u8, u8, u8);
+	struct dentry *dentry_root;
+};
+
+struct aat2870_subdev_info {
+	int id;
+	const char *name;
+	void *platform_data;
+};
+
+struct aat2870_platform_data {
+	int en_pin;
+	struct aat2870_subdev_info *subdevs;
+	int num_subdevs;
+	int (*init)(struct aat2870_data *);
+	void (*uninit)(struct aat2870_data *);
+};
+
+enum {
+	PALMAS_EXT_CONTROL_ENABLE1 = 1,
+	PALMAS_EXT_CONTROL_ENABLE2 = 2,
+	PALMAS_EXT_CONTROL_NSLEEP = 4,
+};
+
+enum palmas_external_requestor_id {
+	PALMAS_EXTERNAL_REQSTR_ID_REGEN1 = 0,
+	PALMAS_EXTERNAL_REQSTR_ID_REGEN2 = 1,
+	PALMAS_EXTERNAL_REQSTR_ID_SYSEN1 = 2,
+	PALMAS_EXTERNAL_REQSTR_ID_SYSEN2 = 3,
+	PALMAS_EXTERNAL_REQSTR_ID_CLK32KG = 4,
+	PALMAS_EXTERNAL_REQSTR_ID_CLK32KGAUDIO = 5,
+	PALMAS_EXTERNAL_REQSTR_ID_REGEN3 = 6,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS12 = 7,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS3 = 8,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS45 = 9,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS6 = 10,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS7 = 11,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS8 = 12,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS9 = 13,
+	PALMAS_EXTERNAL_REQSTR_ID_SMPS10 = 14,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO1 = 15,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO2 = 16,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO3 = 17,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO4 = 18,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO5 = 19,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO6 = 20,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO7 = 21,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO8 = 22,
+	PALMAS_EXTERNAL_REQSTR_ID_LDO9 = 23,
+	PALMAS_EXTERNAL_REQSTR_ID_LDOLN = 24,
+	PALMAS_EXTERNAL_REQSTR_ID_LDOUSB = 25,
+	PALMAS_EXTERNAL_REQSTR_ID_MAX = 26,
+};
+
+enum tps65917_irqs {
+	TPS65917_RESERVED1 = 0,
+	TPS65917_PWRON_IRQ = 1,
+	TPS65917_LONG_PRESS_KEY_IRQ = 2,
+	TPS65917_RESERVED2 = 3,
+	TPS65917_PWRDOWN_IRQ = 4,
+	TPS65917_HOTDIE_IRQ = 5,
+	TPS65917_VSYS_MON_IRQ = 6,
+	TPS65917_RESERVED3 = 7,
+	TPS65917_RESERVED4 = 8,
+	TPS65917_OTP_ERROR_IRQ = 9,
+	TPS65917_WDT_IRQ = 10,
+	TPS65917_RESERVED5 = 11,
+	TPS65917_RESET_IN_IRQ = 12,
+	TPS65917_FSD_IRQ = 13,
+	TPS65917_SHORT_IRQ = 14,
+	TPS65917_RESERVED6 = 15,
+	TPS65917_GPADC_AUTO_0_IRQ = 16,
+	TPS65917_GPADC_AUTO_1_IRQ = 17,
+	TPS65917_GPADC_EOC_SW_IRQ = 18,
+	TPS65917_RESREVED6 = 19,
+	TPS65917_RESERVED7 = 20,
+	TPS65917_RESERVED8 = 21,
+	TPS65917_RESERVED9 = 22,
+	TPS65917_VBUS_IRQ = 23,
+	TPS65917_GPIO_0_IRQ = 24,
+	TPS65917_GPIO_1_IRQ = 25,
+	TPS65917_GPIO_2_IRQ = 26,
+	TPS65917_GPIO_3_IRQ = 27,
+	TPS65917_GPIO_4_IRQ = 28,
+	TPS65917_GPIO_5_IRQ = 29,
+	TPS65917_GPIO_6_IRQ = 30,
+	TPS65917_RESERVED10 = 31,
+	TPS65917_NUM_IRQ = 32,
+};
+
+struct palmas_driver_data {
+	unsigned int *features;
+	struct regmap_irq_chip *irq_chip;
+};
+
+enum {
+	RC5T583_DS_NONE = 0,
+	RC5T583_DS_DC0 = 1,
+	RC5T583_DS_DC1 = 2,
+	RC5T583_DS_DC2 = 3,
+	RC5T583_DS_DC3 = 4,
+	RC5T583_DS_LDO0 = 5,
+	RC5T583_DS_LDO1 = 6,
+	RC5T583_DS_LDO2 = 7,
+	RC5T583_DS_LDO3 = 8,
+	RC5T583_DS_LDO4 = 9,
+	RC5T583_DS_LDO5 = 10,
+	RC5T583_DS_LDO6 = 11,
+	RC5T583_DS_LDO7 = 12,
+	RC5T583_DS_LDO8 = 13,
+	RC5T583_DS_LDO9 = 14,
+	RC5T583_DS_PSO0 = 15,
+	RC5T583_DS_PSO1 = 16,
+	RC5T583_DS_PSO2 = 17,
+	RC5T583_DS_PSO3 = 18,
+	RC5T583_DS_PSO4 = 19,
+	RC5T583_DS_PSO5 = 20,
+	RC5T583_DS_PSO6 = 21,
+	RC5T583_DS_PSO7 = 22,
+	RC5T583_DS_MAX = 23,
+};
+
+enum {
+	RC5T583_EXT_PWRREQ1_CONTROL = 1,
+	RC5T583_EXT_PWRREQ2_CONTROL = 2,
+};
+
+struct deepsleep_control_data {
+	u8 reg_add;
+	u8 ds_pos_bit;
+};
+
+enum int_type {
+	SYS_INT = 1,
+	DCDC_INT = 2,
+	RTC_INT = 4,
+	ADC_INT = 8,
+	GPIO_INT = 16,
+};
+
+struct rc5t583_irq_data {
+	u8 int_type;
+	u8 master_bit;
+	u8 int_en_bit;
+	u8 mask_reg_index;
+	int grp_index;
+};
+
+struct syscon_platform_data {
+	const char *label;
+};
+
+struct syscon {
+	struct device_node *np;
+	struct regmap *regmap;
+	struct list_head list;
+};
+
+enum {
+	AS3711_REGULATOR_SD_1 = 0,
+	AS3711_REGULATOR_SD_2 = 1,
+	AS3711_REGULATOR_SD_3 = 2,
+	AS3711_REGULATOR_SD_4 = 3,
+	AS3711_REGULATOR_LDO_1 = 4,
+	AS3711_REGULATOR_LDO_2 = 5,
+	AS3711_REGULATOR_LDO_3 = 6,
+	AS3711_REGULATOR_LDO_4 = 7,
+	AS3711_REGULATOR_LDO_5 = 8,
+	AS3711_REGULATOR_LDO_6 = 9,
+	AS3711_REGULATOR_LDO_7 = 10,
+	AS3711_REGULATOR_LDO_8 = 11,
+	AS3711_REGULATOR_MAX = 12,
+};
+
+struct as3711 {
+	struct device *dev;
+	struct regmap *regmap;
+};
+
+enum as3711_su2_feedback {
+	AS3711_SU2_VOLTAGE = 0,
+	AS3711_SU2_CURR1 = 1,
+	AS3711_SU2_CURR2 = 2,
+	AS3711_SU2_CURR3 = 3,
+	AS3711_SU2_CURR_AUTO = 4,
+};
+
+enum as3711_su2_fbprot {
+	AS3711_SU2_LX_SD4 = 0,
+	AS3711_SU2_GPIO2 = 1,
+	AS3711_SU2_GPIO3 = 2,
+	AS3711_SU2_GPIO4 = 3,
+};
+
+struct as3711_regulator_pdata {
+	struct regulator_init_data *init_data[12];
+};
+
+struct as3711_bl_pdata {
+	bool su1_fb;
+	int su1_max_uA;
+	bool su2_fb;
+	int su2_max_uA;
+	enum as3711_su2_feedback su2_feedback;
+	enum as3711_su2_fbprot su2_fbprot;
+	bool su2_auto_curr1;
+	bool su2_auto_curr2;
+	bool su2_auto_curr3;
+};
+
+struct as3711_platform_data {
+	struct as3711_regulator_pdata regulator;
+	struct as3711_bl_pdata backlight;
+};
+
+enum {
+	AS3711_REGULATOR = 0,
+	AS3711_BACKLIGHT = 1,
+};
+
+struct intel_soc_pmic_config {
+	long unsigned int irq_flags;
+	struct mfd_cell *cell_dev;
+	int n_cell_devs;
+	const struct regmap_config *regmap_config;
+	const struct regmap_irq_chip *irq_chip;
+};
+
+enum {
+	CHT_WC_PWRSRC_IRQ = 0,
+	CHT_WC_THRM_IRQ = 1,
+	CHT_WC_BCU_IRQ = 2,
+	CHT_WC_ADC_IRQ = 3,
+	CHT_WC_EXT_CHGR_IRQ = 4,
+	CHT_WC_GPIO_IRQ = 5,
+	CHT_WC_CRIT_IRQ = 7,
+};
+
+struct badrange {
+	struct list_head list;
+	spinlock_t lock;
+};
+
+enum {
+	NDD_ALIASING = 0,
+	NDD_UNARMED = 1,
+	NDD_LOCKED = 2,
+	NDD_SECURITY_OVERWRITE = 3,
+	NDD_WORK_PENDING = 4,
+	NDD_NOBLK = 5,
+	NDD_LABELING = 6,
+	ND_IOCTL_MAX_BUFLEN = 4194304,
+	ND_CMD_MAX_ELEM = 5,
+	ND_CMD_MAX_ENVELOPE = 256,
+	ND_MAX_MAPPINGS = 32,
+	ND_REGION_PAGEMAP = 0,
+	ND_REGION_PERSIST_CACHE = 1,
+	ND_REGION_PERSIST_MEMCTRL = 2,
+	ND_REGION_ASYNC = 3,
+	DPA_RESOURCE_ADJUSTED = 1,
+};
+
+struct nvdimm_bus_descriptor;
+
+struct nvdimm;
+
+typedef int (*ndctl_fn)(struct nvdimm_bus_descriptor *, struct nvdimm *, unsigned int, void *, unsigned int, int *);
+
+struct nvdimm_bus_fw_ops;
+
+struct nvdimm_bus_descriptor {
+	const struct attribute_group **attr_groups;
+	long unsigned int cmd_mask;
+	long unsigned int dimm_family_mask;
+	long unsigned int bus_family_mask;
+	struct module *module;
+	char *provider_name;
+	struct device_node *of_node;
+	ndctl_fn ndctl;
+	int (*flush_probe)(struct nvdimm_bus_descriptor *);
+	int (*clear_to_send)(struct nvdimm_bus_descriptor *, struct nvdimm *, unsigned int, void *);
+	const struct nvdimm_bus_fw_ops *fw_ops;
+};
+
+struct nvdimm_security_ops;
+
+struct nvdimm_fw_ops;
+
+struct nvdimm {
+	long unsigned int flags;
+	void *provider_data;
+	long unsigned int cmd_mask;
+	struct device dev;
+	atomic_t busy;
+	int id;
+	int num_flush;
+	struct resource *flush_wpq;
+	const char *dimm_id;
+	struct {
+		const struct nvdimm_security_ops *ops;
+		long unsigned int flags;
+		long unsigned int ext_flags;
+		unsigned int overwrite_tmo;
+		struct kernfs_node *overwrite_state;
+	} sec;
+	struct delayed_work dwork;
+	const struct nvdimm_fw_ops *fw_ops;
+};
+
+enum nvdimm_fwa_state {
+	NVDIMM_FWA_INVALID = 0,
+	NVDIMM_FWA_IDLE = 1,
+	NVDIMM_FWA_ARMED = 2,
+	NVDIMM_FWA_BUSY = 3,
+	NVDIMM_FWA_ARM_OVERFLOW = 4,
+};
+
+enum nvdimm_fwa_capability {
+	NVDIMM_FWA_CAP_INVALID = 0,
+	NVDIMM_FWA_CAP_NONE = 1,
+	NVDIMM_FWA_CAP_QUIESCE = 2,
+	NVDIMM_FWA_CAP_LIVE = 3,
+};
+
+struct nvdimm_bus_fw_ops {
+	enum nvdimm_fwa_state (*activate_state)(struct nvdimm_bus_descriptor *);
+	enum nvdimm_fwa_capability (*capability)(struct nvdimm_bus_descriptor *);
+	int (*activate)(struct nvdimm_bus_descriptor *);
+};
+
+struct nvdimm_bus {
+	struct nvdimm_bus_descriptor *nd_desc;
+	wait_queue_head_t wait;
+	struct list_head list;
+	struct device dev;
+	int id;
+	int probe_active;
+	atomic_t ioctl_active;
+	struct list_head mapping_list;
+	struct mutex reconfig_mutex;
+	struct badrange badrange;
+};
+
+struct nvdimm_key_data {
+	u8 data[32];
+};
+
+enum nvdimm_passphrase_type {
+	NVDIMM_USER = 0,
+	NVDIMM_MASTER = 1,
+};
+
+struct nvdimm_security_ops {
+	long unsigned int (*get_flags)(struct nvdimm *, enum nvdimm_passphrase_type);
+	int (*freeze)(struct nvdimm *);
+	int (*change_key)(struct nvdimm *, const struct nvdimm_key_data *, const struct nvdimm_key_data *, enum nvdimm_passphrase_type);
+	int (*unlock)(struct nvdimm *, const struct nvdimm_key_data *);
+	int (*disable)(struct nvdimm *, const struct nvdimm_key_data *);
+	int (*erase)(struct nvdimm *, const struct nvdimm_key_data *, enum nvdimm_passphrase_type);
+	int (*overwrite)(struct nvdimm *, const struct nvdimm_key_data *);
+	int (*query_overwrite)(struct nvdimm *);
+};
+
+enum nvdimm_fwa_trigger {
+	NVDIMM_FWA_ARM = 0,
+	NVDIMM_FWA_DISARM = 1,
+};
+
+enum nvdimm_fwa_result {
+	NVDIMM_FWA_RESULT_INVALID = 0,
+	NVDIMM_FWA_RESULT_NONE = 1,
+	NVDIMM_FWA_RESULT_SUCCESS = 2,
+	NVDIMM_FWA_RESULT_NOTSTAGED = 3,
+	NVDIMM_FWA_RESULT_NEEDRESET = 4,
+	NVDIMM_FWA_RESULT_FAIL = 5,
+};
+
+struct nvdimm_fw_ops {
+	enum nvdimm_fwa_state (*activate_state)(struct nvdimm *);
+	enum nvdimm_fwa_result (*activate_result)(struct nvdimm *);
+	int (*arm)(struct nvdimm *, enum nvdimm_fwa_trigger);
+};
+
+enum {
+	ND_CMD_IMPLEMENTED = 0,
+	ND_CMD_ARS_CAP = 1,
+	ND_CMD_ARS_START = 2,
+	ND_CMD_ARS_STATUS = 3,
+	ND_CMD_CLEAR_ERROR = 4,
+	ND_CMD_SMART = 1,
+	ND_CMD_SMART_THRESHOLD = 2,
+	ND_CMD_DIMM_FLAGS = 3,
+	ND_CMD_GET_CONFIG_SIZE = 4,
+	ND_CMD_GET_CONFIG_DATA = 5,
+	ND_CMD_SET_CONFIG_DATA = 6,
+	ND_CMD_VENDOR_EFFECT_LOG_SIZE = 7,
+	ND_CMD_VENDOR_EFFECT_LOG = 8,
+	ND_CMD_VENDOR = 9,
+	ND_CMD_CALL = 10,
+};
+
+enum {
+	NSINDEX_SIG_LEN = 16,
+	NSINDEX_ALIGN = 256,
+	NSINDEX_SEQ_MASK = 3,
+	NSLABEL_UUID_LEN = 16,
+	NSLABEL_NAME_LEN = 64,
+	NSLABEL_FLAG_ROLABEL = 1,
+	NSLABEL_FLAG_LOCAL = 2,
+	NSLABEL_FLAG_BTT = 4,
+	NSLABEL_FLAG_UPDATING = 8,
+	BTT_ALIGN = 4096,
+	BTTINFO_SIG_LEN = 16,
+	BTTINFO_UUID_LEN = 16,
+	BTTINFO_FLAG_ERROR = 1,
+	BTTINFO_MAJOR_VERSION = 1,
+	ND_LABEL_MIN_SIZE = 1024,
+	ND_LABEL_ID_SIZE = 50,
+	ND_NSINDEX_INIT = 1,
+};
+
+struct nvdimm_map {
+	struct nvdimm_bus *nvdimm_bus;
+	struct list_head list;
+	resource_size_t offset;
+	long unsigned int flags;
+	size_t size;
+	union {
+		void *mem;
+		void *iomem;
+	};
+	struct kref kref;
+};
+
+struct badrange_entry {
+	u64 start;
+	u64 length;
+	struct list_head list;
+};
+
+struct nd_cmd_desc {
+	int in_num;
+	int out_num;
+	u32 in_sizes[5];
+	int out_sizes[5];
+};
+
+struct nd_interleave_set {
+	u64 cookie1;
+	u64 cookie2;
+	u64 altcookie;
+	guid_t type_guid;
+};
+
+struct nvdimm_drvdata;
+
+struct nd_mapping {
+	struct nvdimm *nvdimm;
+	u64 start;
+	u64 size;
+	int position;
+	struct list_head labels;
+	struct mutex lock;
+	struct nvdimm_drvdata *ndd;
+};
+
+struct nd_percpu_lane;
+
+struct nd_region {
+	struct device dev;
+	struct ida ns_ida;
+	struct ida btt_ida;
+	struct ida pfn_ida;
+	struct ida dax_ida;
+	long unsigned int flags;
+	struct device *ns_seed;
+	struct device *btt_seed;
+	struct device *pfn_seed;
+	struct device *dax_seed;
+	long unsigned int align;
+	u16 ndr_mappings;
+	u64 ndr_size;
+	u64 ndr_start;
+	int id;
+	int num_lanes;
+	int ro;
+	int numa_node;
+	int target_node;
+	void *provider_data;
+	struct kernfs_node *bb_state;
+	struct badblocks bb;
+	struct nd_interleave_set *nd_set;
+	struct nd_percpu_lane *lane;
+	int (*flush)(struct nd_region *, struct bio *);
+	struct nd_mapping mapping[0];
+};
+
+struct nd_cmd_get_config_size {
+	__u32 status;
+	__u32 config_size;
+	__u32 max_xfer;
+};
+
+struct nd_cmd_set_config_hdr {
+	__u32 in_offset;
+	__u32 in_length;
+	__u8 in_buf[0];
+};
+
+struct nd_cmd_vendor_hdr {
+	__u32 opcode;
+	__u32 in_length;
+	__u8 in_buf[0];
+};
+
+struct nd_cmd_ars_cap {
+	__u64 address;
+	__u64 length;
+	__u32 status;
+	__u32 max_ars_out;
+	__u32 clear_err_unit;
+	__u16 flags;
+	__u16 reserved;
+};
+
+struct nd_cmd_clear_error {
+	__u64 address;
+	__u64 length;
+	__u32 status;
+	__u8 reserved[4];
+	__u64 cleared;
+};
+
+struct nd_cmd_pkg {
+	__u64 nd_family;
+	__u64 nd_command;
+	__u32 nd_size_in;
+	__u32 nd_size_out;
+	__u32 nd_reserved2[9];
+	__u32 nd_fw_size;
+	unsigned char nd_payload[0];
+};
+
+enum nvdimm_event {
+	NVDIMM_REVALIDATE_POISON = 0,
+	NVDIMM_REVALIDATE_REGION = 1,
+};
+
+enum nvdimm_claim_class {
+	NVDIMM_CCLASS_NONE = 0,
+	NVDIMM_CCLASS_BTT = 1,
+	NVDIMM_CCLASS_BTT2 = 2,
+	NVDIMM_CCLASS_PFN = 3,
+	NVDIMM_CCLASS_DAX = 4,
+	NVDIMM_CCLASS_UNKNOWN = 5,
+};
+
+struct nd_device_driver {
+	struct device_driver drv;
+	long unsigned int type;
+	int (*probe)(struct device *);
+	void (*remove)(struct device *);
+	void (*shutdown)(struct device *);
+	void (*notify)(struct device *, enum nvdimm_event);
+};
+
+struct nd_namespace_common {
+	int force_raw;
+	struct device dev;
+	struct device *claim;
+	enum nvdimm_claim_class claim_class;
+	int (*rw_bytes)(struct nd_namespace_common *, resource_size_t, void *, size_t, int, long unsigned int);
+};
+
+struct nd_namespace_io {
+	struct nd_namespace_common common;
+	struct resource res;
+	resource_size_t size;
+	void *addr;
+	struct badblocks bb;
+};
+
+struct nvdimm_drvdata {
+	struct device *dev;
+	int nslabel_size;
+	struct nd_cmd_get_config_size nsarea;
+	void *data;
+	int ns_current;
+	int ns_next;
+	struct resource dpa;
+	struct kref kref;
+};
+
+struct nd_percpu_lane {
+	int count;
+	spinlock_t lock;
+};
+
+struct btt;
+
+struct nd_btt {
+	struct device dev;
+	struct nd_namespace_common *ndns;
+	struct btt *btt;
+	long unsigned int lbasize;
+	u64 size;
+	u8 *uuid;
+	int id;
+	int initial_offset;
+	u16 version_major;
+	u16 version_minor;
+};
+
+enum nd_pfn_mode {
+	PFN_MODE_NONE = 0,
+	PFN_MODE_RAM = 1,
+	PFN_MODE_PMEM = 2,
+};
+
+struct nd_pfn_sb;
+
+struct nd_pfn {
+	int id;
+	u8 *uuid;
+	struct device dev;
+	long unsigned int align;
+	long unsigned int npfns;
+	enum nd_pfn_mode mode;
+	struct nd_pfn_sb *pfn_sb;
+	struct nd_namespace_common *ndns;
+};
+
+struct nd_pfn_sb {
+	u8 signature[16];
+	u8 uuid[16];
+	u8 parent_uuid[16];
+	__le32 flags;
+	__le16 version_major;
+	__le16 version_minor;
+	__le64 dataoff;
+	__le64 npfns;
+	__le32 mode;
+	__le32 start_pad;
+	__le32 end_trunc;
+	__le32 align;
+	__le32 page_size;
+	__le16 page_struct_size;
+	u8 padding[3994];
+	__le64 checksum;
+};
+
+struct nd_dax {
+	struct nd_pfn nd_pfn;
+};
+
+enum nd_async_mode {
+	ND_SYNC = 0,
+	ND_ASYNC = 1,
+};
+
+struct clear_badblocks_context {
+	resource_size_t phys;
+	resource_size_t cleared;
+};
+
+enum nd_ioctl_mode {
+	BUS_IOCTL = 0,
+	DIMM_IOCTL = 1,
+};
+
+struct nd_cmd_get_config_data_hdr {
+	__u32 in_offset;
+	__u32 in_length;
+	__u32 status;
+	__u8 out_buf[0];
+};
+
+struct nd_blk_region {
+	int (*enable)(struct nvdimm_bus *, struct device *);
+	int (*do_io)(struct nd_blk_region *, resource_size_t, void *, u64, int);
+	void *blk_provider_data;
+	struct nd_region nd_region;
+};
+
+enum nvdimm_security_bits {
+	NVDIMM_SECURITY_DISABLED = 0,
+	NVDIMM_SECURITY_UNLOCKED = 1,
+	NVDIMM_SECURITY_LOCKED = 2,
+	NVDIMM_SECURITY_FROZEN = 3,
+	NVDIMM_SECURITY_OVERWRITE = 4,
+};
+
+struct nd_label_id {
+	char id[50];
+};
+
+struct blk_alloc_info {
+	struct nd_mapping *nd_mapping;
+	resource_size_t available;
+	resource_size_t busy;
+	struct resource *res;
+};
+
+enum nd_driver_flags {
+	ND_DRIVER_DIMM = 2,
+	ND_DRIVER_REGION_PMEM = 4,
+	ND_DRIVER_REGION_BLK = 8,
+	ND_DRIVER_NAMESPACE_IO = 16,
+	ND_DRIVER_NAMESPACE_PMEM = 32,
+	ND_DRIVER_NAMESPACE_BLK = 64,
+	ND_DRIVER_DAX_PMEM = 128,
+};
+
+struct nd_mapping_desc {
+	struct nvdimm *nvdimm;
+	u64 start;
+	u64 size;
+	int position;
+};
+
+struct nd_region_desc {
+	struct resource *res;
+	struct nd_mapping_desc *mapping;
+	u16 num_mappings;
+	const struct attribute_group **attr_groups;
+	struct nd_interleave_set *nd_set;
+	void *provider_data;
+	int num_lanes;
+	int numa_node;
+	int target_node;
+	long unsigned int flags;
+	struct device_node *of_node;
+	int (*flush)(struct nd_region *, struct bio *);
+};
+
+struct nd_blk_region_desc {
+	int (*enable)(struct nvdimm_bus *, struct device *);
+	int (*do_io)(struct nd_blk_region *, resource_size_t, void *, u64, int);
+	struct nd_region_desc ndr_desc;
+};
+
+struct nd_namespace_index {
+	u8 sig[16];
+	u8 flags[3];
+	u8 labelsize;
+	__le32 seq;
+	__le64 myoff;
+	__le64 mysize;
+	__le64 otheroff;
+	__le64 labeloff;
+	__le32 nslot;
+	__le16 major;
+	__le16 minor;
+	__le64 checksum;
+	u8 free[0];
+};
+
+struct nd_namespace_label {
+	u8 uuid[16];
+	u8 name[64];
+	__le32 flags;
+	__le16 nlabel;
+	__le16 position;
+	__le64 isetcookie;
+	__le64 lbasize;
+	__le64 dpa;
+	__le64 rawsize;
+	__le32 slot;
+	u8 align;
+	u8 reserved[3];
+	guid_t type_guid;
+	guid_t abstraction_guid;
+	u8 reserved2[88];
+	__le64 checksum;
+};
+
+enum {
+	ND_MAX_LANES = 256,
+	INT_LBASIZE_ALIGNMENT = 64,
+	NVDIMM_IO_ATOMIC = 1,
+};
+
+struct nd_region_data {
+	int ns_count;
+	int ns_active;
+	unsigned int hints_shift;
+	void *flush_wpq[0];
+};
+
+struct nd_label_ent {
+	struct list_head list;
+	long unsigned int flags;
+	struct nd_namespace_label *label;
+};
+
+struct conflict_context {
+	struct nd_region *nd_region;
+	resource_size_t start;
+	resource_size_t size;
+};
+
+enum {
+	ND_MIN_NAMESPACE_SIZE = 4096,
+};
+
+struct nd_namespace_pmem {
+	struct nd_namespace_io nsio;
+	long unsigned int lbasize;
+	char *alt_name;
+	u8 *uuid;
+	int id;
+};
+
+struct nd_namespace_blk {
+	struct nd_namespace_common common;
+	char *alt_name;
+	u8 *uuid;
+	int id;
+	long unsigned int lbasize;
+	resource_size_t size;
+	int num_resources;
+	struct resource **res;
+};
+
+enum nd_label_flags {
+	ND_LABEL_REAP = 0,
+};
+
+enum alloc_loc {
+	ALLOC_ERR = 0,
+	ALLOC_BEFORE = 1,
+	ALLOC_MID = 2,
+	ALLOC_AFTER = 3,
+};
+
+struct btt {
+	struct gendisk *btt_disk;
+	struct list_head arena_list;
+	struct dentry *debugfs_dir;
+	struct nd_btt *nd_btt;
+	u64 nlba;
+	long long unsigned int rawsize;
+	u32 lbasize;
+	u32 sector_size;
+	struct nd_region *nd_region;
+	struct mutex init_lock;
+	int init_state;
+	int num_arenas;
+	struct badblocks *phys_bb;
+};
+
+struct nd_gen_sb {
+	char reserved[4088];
+	__le64 checksum;
+};
+
+struct btt_sb {
+	u8 signature[16];
+	u8 uuid[16];
+	u8 parent_uuid[16];
+	__le32 flags;
+	__le16 version_major;
+	__le16 version_minor;
+	__le32 external_lbasize;
+	__le32 external_nlba;
+	__le32 internal_lbasize;
+	__le32 internal_nlba;
+	__le32 nfree;
+	__le32 infosize;
+	__le64 nextoff;
+	__le64 dataoff;
+	__le64 mapoff;
+	__le64 logoff;
+	__le64 info2off;
+	u8 padding[3968];
+	__le64 checksum;
+};
+
+enum nvdimmsec_op_ids {
+	OP_FREEZE = 0,
+	OP_DISABLE = 1,
+	OP_UPDATE = 2,
+	OP_ERASE = 3,
+	OP_OVERWRITE = 4,
+	OP_MASTER_UPDATE = 5,
+	OP_MASTER_ERASE = 6,
+};
+
+struct dax_operations {
+	long int (*direct_access)(struct dax_device *, long unsigned int, long int, void **, pfn_t *);
+	bool (*dax_supported)(struct dax_device *, struct block_device *, int, sector_t, sector_t);
+	size_t (*copy_from_iter)(struct dax_device *, long unsigned int, void *, size_t, struct iov_iter *);
+	size_t (*copy_to_iter)(struct dax_device *, long unsigned int, void *, size_t, struct iov_iter *);
+	int (*zero_page_range)(struct dax_device *, long unsigned int, size_t);
+};
+
+struct dax_device {
+	struct hlist_node list;
+	struct inode inode;
+	struct cdev cdev;
+	const char *host;
+	void *private;
+	long unsigned int flags;
+	const struct dax_operations *ops;
+};
+
+enum dax_device_flags {
+	DAXDEV_ALIVE = 0,
+	DAXDEV_WRITE_CACHE = 1,
+	DAXDEV_SYNC = 2,
+};
+
+struct dax_region {
+	int id;
+	int target_node;
+	struct kref kref;
+	struct device *dev;
+	unsigned int align;
+	struct ida ida;
+	struct resource res;
+	struct device *seed;
+	struct device *youngest;
+};
+
+struct dax_mapping {
+	struct device dev;
+	int range_id;
+	int id;
+};
+
+struct dev_dax_range {
+	long unsigned int pgoff;
+	struct range range;
+	struct dax_mapping *mapping;
+};
+
+struct dev_dax {
+	struct dax_region *region;
+	struct dax_device *dax_dev;
+	unsigned int align;
+	int target_node;
+	bool dyn_id;
+	int id;
+	struct ida ida;
+	struct device dev;
+	struct dev_pagemap *pgmap;
+	int nr_range;
+	struct dev_dax_range *ranges;
+};
+
+enum dev_dax_subsys {
+	DEV_DAX_BUS = 0,
+	DEV_DAX_CLASS = 1,
+};
+
+struct dev_dax_data {
+	struct dax_region *dax_region;
+	struct dev_pagemap *pgmap;
+	enum dev_dax_subsys subsys;
+	resource_size_t size;
+	int id;
+};
+
+struct dax_device_driver {
+	struct device_driver drv;
+	struct list_head ids;
+	int match_always;
+	int (*probe)(struct dev_dax *);
+	void (*remove)(struct dev_dax *);
+};
+
+struct dax_id {
+	struct list_head list;
+	char dev_name[30];
+};
+
+enum id_action {
+	ID_REMOVE = 0,
+	ID_ADD = 1,
+};
+
+struct memregion_info {
+	int target_node;
+};
+
+struct seqcount_ww_mutex {
+	seqcount_t seqcount;
+};
+
+typedef struct seqcount_ww_mutex seqcount_ww_mutex_t;
+
+struct dma_buf_map {
+	union {
+		void *vaddr_iomem;
+		void *vaddr;
+	};
+	bool is_iomem;
+};
+
+struct dma_fence_ops;
+
+struct dma_fence {
+	spinlock_t *lock;
+	const struct dma_fence_ops *ops;
+	union {
+		struct list_head cb_list;
+		ktime_t timestamp;
+		struct callback_head rcu;
+	};
+	u64 context;
+	u64 seqno;
+	long unsigned int flags;
+	struct kref refcount;
+	int error;
+};
+
+struct dma_fence_ops {
+	bool use_64bit_seqno;
+	const char * (*get_driver_name)(struct dma_fence *);
+	const char * (*get_timeline_name)(struct dma_fence *);
+	bool (*enable_signaling)(struct dma_fence *);
+	bool (*signaled)(struct dma_fence *);
+	long int (*wait)(struct dma_fence *, bool, long int);
+	void (*release)(struct dma_fence *);
+	void (*fence_value_str)(struct dma_fence *, char *, int);
+	void (*timeline_value_str)(struct dma_fence *, char *, int);
+};
+
+enum dma_fence_flag_bits {
+	DMA_FENCE_FLAG_SIGNALED_BIT = 0,
+	DMA_FENCE_FLAG_TIMESTAMP_BIT = 1,
+	DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT = 2,
+	DMA_FENCE_FLAG_USER_BITS = 3,
+};
+
+struct dma_fence_cb;
+
+typedef void (*dma_fence_func_t)(struct dma_fence *, struct dma_fence_cb *);
+
+struct dma_fence_cb {
+	struct list_head node;
+	dma_fence_func_t func;
+};
+
+struct dma_buf;
+
+struct dma_buf_attachment;
+
+struct dma_buf_ops {
+	bool cache_sgt_mapping;
+	int (*attach)(struct dma_buf *, struct dma_buf_attachment *);
+	void (*detach)(struct dma_buf *, struct dma_buf_attachment *);
+	int (*pin)(struct dma_buf_attachment *);
+	void (*unpin)(struct dma_buf_attachment *);
+	struct sg_table * (*map_dma_buf)(struct dma_buf_attachment *, enum dma_data_direction);
+	void (*unmap_dma_buf)(struct dma_buf_attachment *, struct sg_table *, enum dma_data_direction);
+	void (*release)(struct dma_buf *);
+	int (*begin_cpu_access)(struct dma_buf *, enum dma_data_direction);
+	int (*end_cpu_access)(struct dma_buf *, enum dma_data_direction);
+	int (*mmap)(struct dma_buf *, struct vm_area_struct *);
+	int (*vmap)(struct dma_buf *, struct dma_buf_map *);
+	void (*vunmap)(struct dma_buf *, struct dma_buf_map *);
+};
+
+struct dma_buf_poll_cb_t {
+	struct dma_fence_cb cb;
+	wait_queue_head_t *poll;
+	__poll_t active;
+};
+
+struct dma_resv;
+
+struct dma_buf {
+	size_t size;
+	struct file *file;
+	struct list_head attachments;
+	const struct dma_buf_ops *ops;
+	struct mutex lock;
+	unsigned int vmapping_counter;
+	struct dma_buf_map vmap_ptr;
+	const char *exp_name;
+	const char *name;
+	spinlock_t name_lock;
+	struct module *owner;
+	struct list_head list_node;
+	void *priv;
+	struct dma_resv *resv;
+	wait_queue_head_t poll;
+	struct dma_buf_poll_cb_t cb_in;
+	struct dma_buf_poll_cb_t cb_out;
+};
+
+struct dma_buf_attach_ops;
+
+struct dma_buf_attachment {
+	struct dma_buf *dmabuf;
+	struct device *dev;
+	struct list_head node;
+	struct sg_table *sgt;
+	enum dma_data_direction dir;
+	bool peer2peer;
+	const struct dma_buf_attach_ops *importer_ops;
+	void *importer_priv;
+	void *priv;
+};
+
+struct dma_resv_list;
+
+struct dma_resv {
+	struct ww_mutex lock;
+	seqcount_ww_mutex_t seq;
+	struct dma_fence *fence_excl;
+	struct dma_resv_list *fence;
+};
+
+struct dma_buf_attach_ops {
+	bool allow_peer2peer;
+	void (*move_notify)(struct dma_buf_attachment *);
+};
+
+struct dma_buf_export_info {
+	const char *exp_name;
+	struct module *owner;
+	const struct dma_buf_ops *ops;
+	size_t size;
+	int flags;
+	struct dma_resv *resv;
+	void *priv;
+};
+
+struct dma_resv_list {
+	struct callback_head rcu;
+	u32 shared_count;
+	u32 shared_max;
+	struct dma_fence *shared[0];
+};
+
+struct dma_buf_sync {
+	__u64 flags;
+};
+
+struct dma_buf_list {
+	struct list_head head;
+	struct mutex lock;
+};
+
+struct trace_event_raw_dma_fence {
+	struct trace_entry ent;
+	u32 __data_loc_driver;
+	u32 __data_loc_timeline;
+	unsigned int context;
+	unsigned int seqno;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_dma_fence {
+	u32 driver;
+	u32 timeline;
+};
+
+typedef void (*btf_trace_dma_fence_emit)(void *, struct dma_fence *);
+
+typedef void (*btf_trace_dma_fence_init)(void *, struct dma_fence *);
+
+typedef void (*btf_trace_dma_fence_destroy)(void *, struct dma_fence *);
+
+typedef void (*btf_trace_dma_fence_enable_signal)(void *, struct dma_fence *);
+
+typedef void (*btf_trace_dma_fence_signaled)(void *, struct dma_fence *);
+
+typedef void (*btf_trace_dma_fence_wait_start)(void *, struct dma_fence *);
+
+typedef void (*btf_trace_dma_fence_wait_end)(void *, struct dma_fence *);
+
+struct default_wait_cb {
+	struct dma_fence_cb base;
+	struct task_struct *task;
+};
+
+struct dma_fence_array;
+
+struct dma_fence_array_cb {
+	struct dma_fence_cb cb;
+	struct dma_fence_array *array;
+};
+
+struct dma_fence_array {
+	struct dma_fence base;
+	spinlock_t lock;
+	unsigned int num_fences;
+	atomic_t num_pending;
+	struct dma_fence **fences;
+	struct irq_work work;
+};
+
+struct dma_fence_chain {
+	struct dma_fence base;
+	struct dma_fence *prev;
+	u64 prev_seqno;
+	struct dma_fence *fence;
+	union {
+		struct dma_fence_cb cb;
+		struct irq_work work;
+	};
+	spinlock_t lock;
+};
+
+enum seqno_fence_condition {
+	SEQNO_FENCE_WAIT_GEQUAL = 0,
+	SEQNO_FENCE_WAIT_NONZERO = 1,
+};
+
+struct seqno_fence {
+	struct dma_fence base;
+	const struct dma_fence_ops *ops;
+	struct dma_buf *sync_buf;
+	uint32_t seqno_ofs;
+	enum seqno_fence_condition condition;
+};
+
+struct dma_heap;
+
+struct dma_heap_ops {
+	struct dma_buf * (*allocate)(struct dma_heap *, long unsigned int, long unsigned int, long unsigned int);
+};
+
+struct dma_heap {
+	const char *name;
+	const struct dma_heap_ops *ops;
+	void *priv;
+	dev_t heap_devt;
+	struct list_head list;
+	struct cdev heap_cdev;
+};
+
+struct dma_heap_export_info {
+	const char *name;
+	const struct dma_heap_ops *ops;
+	void *priv;
+};
+
+struct dma_heap_allocation_data {
+	__u64 len;
+	__u32 fd;
+	__u32 fd_flags;
+	__u64 heap_flags;
+};
+
+struct system_heap_buffer {
+	struct dma_heap *heap;
+	struct list_head attachments;
+	struct mutex lock;
+	long unsigned int len;
+	struct sg_table sg_table;
+	int vmap_cnt;
+	void *vaddr;
+};
+
+struct dma_heap_attachment {
+	struct device *dev;
+	struct sg_table *table;
+	struct list_head list;
+	bool mapped;
+};
+
+struct sync_file {
+	struct file *file;
+	char user_name[32];
+	struct list_head sync_file_list;
+	wait_queue_head_t wq;
+	long unsigned int flags;
+	struct dma_fence *fence;
+	struct dma_fence_cb cb;
+};
+
+struct sync_merge_data {
+	char name[32];
+	__s32 fd2;
+	__s32 fence;
+	__u32 flags;
+	__u32 pad;
+};
+
+struct sync_fence_info {
+	char obj_name[32];
+	char driver_name[32];
+	__s32 status;
+	__u32 flags;
+	__u64 timestamp_ns;
+};
+
+struct sync_file_info {
+	char name[32];
+	__s32 status;
+	__u32 flags;
+	__u32 num_fences;
+	__u32 pad;
+	__u64 sync_fence_info;
+};
+
+struct sync_timeline {
+	struct kref kref;
+	char name[32];
+	u64 context;
+	int value;
+	struct rb_root pt_tree;
+	struct list_head pt_list;
+	spinlock_t lock;
+	struct list_head sync_timeline_list;
+};
+
+struct sync_pt {
+	struct dma_fence base;
+	struct list_head link;
+	struct rb_node node;
+};
+
+struct trace_event_raw_sync_timeline {
+	struct trace_entry ent;
+	u32 __data_loc_name;
+	u32 value;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_sync_timeline {
+	u32 name;
+};
+
+typedef void (*btf_trace_sync_timeline)(void *, struct sync_timeline *);
+
+struct sw_sync_create_fence_data {
+	__u32 value;
+	char name[32];
+	__s32 fence;
+};
+
+struct udmabuf_create {
+	__u32 memfd;
+	__u32 flags;
+	__u64 offset;
+	__u64 size;
+};
+
+struct udmabuf_create_item {
+	__u32 memfd;
+	__u32 __pad;
+	__u64 offset;
+	__u64 size;
+};
+
+struct udmabuf_create_list {
+	__u32 flags;
+	__u32 count;
+	struct udmabuf_create_item list[0];
+};
+
+struct udmabuf {
+	long unsigned int pagecount;
+	struct page **pages;
+	struct sg_table *sg;
+	struct miscdevice *device;
+};
+
+enum sam_status {
+	SAM_STAT_GOOD = 0,
+	SAM_STAT_CHECK_CONDITION = 2,
+	SAM_STAT_CONDITION_MET = 4,
+	SAM_STAT_BUSY = 8,
+	SAM_STAT_INTERMEDIATE = 16,
+	SAM_STAT_INTERMEDIATE_CONDITION_MET = 20,
+	SAM_STAT_RESERVATION_CONFLICT = 24,
+	SAM_STAT_COMMAND_TERMINATED = 34,
+	SAM_STAT_TASK_SET_FULL = 40,
+	SAM_STAT_ACA_ACTIVE = 48,
+	SAM_STAT_TASK_ABORTED = 64,
+};
+
+enum scsi_host_status {
+	DID_OK = 0,
+	DID_NO_CONNECT = 1,
+	DID_BUS_BUSY = 2,
+	DID_TIME_OUT = 3,
+	DID_BAD_TARGET = 4,
+	DID_ABORT = 5,
+	DID_PARITY = 6,
+	DID_ERROR = 7,
+	DID_RESET = 8,
+	DID_BAD_INTR = 9,
+	DID_PASSTHROUGH = 10,
+	DID_SOFT_ERROR = 11,
+	DID_IMM_RETRY = 12,
+	DID_REQUEUE = 13,
+	DID_TRANSPORT_DISRUPTED = 14,
+	DID_TRANSPORT_FAILFAST = 15,
+	DID_TARGET_FAILURE = 16,
+	DID_NEXUS_FAILURE = 17,
+	DID_ALLOC_FAILURE = 18,
+	DID_MEDIUM_ERROR = 19,
+	DID_TRANSPORT_MARGINAL = 20,
+};
+
+enum scsi_disposition {
+	NEEDS_RETRY = 8193,
+	SUCCESS = 8194,
+	FAILED = 8195,
+	QUEUED = 8196,
+	SOFT_ERROR = 8197,
+	ADD_TO_MLQUEUE = 8198,
+	TIMEOUT_ERROR = 8199,
+	SCSI_RETURN_NOT_HANDLED = 8200,
+	FAST_IO_FAIL = 8201,
+};
+
+typedef __u64 blist_flags_t;
+
+enum scsi_device_state {
+	SDEV_CREATED = 1,
+	SDEV_RUNNING = 2,
+	SDEV_CANCEL = 3,
+	SDEV_DEL = 4,
+	SDEV_QUIESCE = 5,
+	SDEV_OFFLINE = 6,
+	SDEV_TRANSPORT_OFFLINE = 7,
+	SDEV_BLOCK = 8,
+	SDEV_CREATED_BLOCK = 9,
+};
+
+struct scsi_vpd {
+	struct callback_head rcu;
+	int len;
+	unsigned char data[0];
+};
+
+struct Scsi_Host;
+
+struct scsi_target;
+
+struct scsi_device_handler;
+
+struct scsi_device {
+	struct Scsi_Host *host;
+	struct request_queue *request_queue;
+	struct list_head siblings;
+	struct list_head same_target_siblings;
+	struct sbitmap budget_map;
+	atomic_t device_blocked;
+	atomic_t restarts;
+	spinlock_t list_lock;
+	struct list_head starved_entry;
+	short unsigned int queue_depth;
+	short unsigned int max_queue_depth;
+	short unsigned int last_queue_full_depth;
+	short unsigned int last_queue_full_count;
+	long unsigned int last_queue_full_time;
+	long unsigned int queue_ramp_up_period;
+	long unsigned int last_queue_ramp_up;
+	unsigned int id;
+	unsigned int channel;
+	u64 lun;
+	unsigned int manufacturer;
+	unsigned int sector_size;
+	void *hostdata;
+	unsigned char type;
+	char scsi_level;
+	char inq_periph_qual;
+	struct mutex inquiry_mutex;
+	unsigned char inquiry_len;
+	unsigned char *inquiry;
+	const char *vendor;
+	const char *model;
+	const char *rev;
+	struct scsi_vpd *vpd_pg0;
+	struct scsi_vpd *vpd_pg83;
+	struct scsi_vpd *vpd_pg80;
+	struct scsi_vpd *vpd_pg89;
+	struct scsi_target *sdev_target;
+	blist_flags_t sdev_bflags;
+	unsigned int eh_timeout;
+	unsigned int removable: 1;
+	unsigned int changed: 1;
+	unsigned int busy: 1;
+	unsigned int lockable: 1;
+	unsigned int locked: 1;
+	unsigned int borken: 1;
+	unsigned int disconnect: 1;
+	unsigned int soft_reset: 1;
+	unsigned int sdtr: 1;
+	unsigned int wdtr: 1;
+	unsigned int ppr: 1;
+	unsigned int tagged_supported: 1;
+	unsigned int simple_tags: 1;
+	unsigned int was_reset: 1;
+	unsigned int expecting_cc_ua: 1;
+	unsigned int use_10_for_rw: 1;
+	unsigned int use_10_for_ms: 1;
+	unsigned int set_dbd_for_ms: 1;
+	unsigned int no_report_opcodes: 1;
+	unsigned int no_write_same: 1;
+	unsigned int use_16_for_rw: 1;
+	unsigned int skip_ms_page_8: 1;
+	unsigned int skip_ms_page_3f: 1;
+	unsigned int skip_vpd_pages: 1;
+	unsigned int try_vpd_pages: 1;
+	unsigned int use_192_bytes_for_3f: 1;
+	unsigned int no_start_on_add: 1;
+	unsigned int allow_restart: 1;
+	unsigned int manage_start_stop: 1;
+	unsigned int start_stop_pwr_cond: 1;
+	unsigned int no_uld_attach: 1;
+	unsigned int select_no_atn: 1;
+	unsigned int fix_capacity: 1;
+	unsigned int guess_capacity: 1;
+	unsigned int retry_hwerror: 1;
+	unsigned int last_sector_bug: 1;
+	unsigned int no_read_disc_info: 1;
+	unsigned int no_read_capacity_16: 1;
+	unsigned int try_rc_10_first: 1;
+	unsigned int security_supported: 1;
+	unsigned int is_visible: 1;
+	unsigned int wce_default_on: 1;
+	unsigned int no_dif: 1;
+	unsigned int broken_fua: 1;
+	unsigned int lun_in_cdb: 1;
+	unsigned int unmap_limit_for_ws: 1;
+	unsigned int rpm_autosuspend: 1;
+	unsigned int ignore_media_change: 1;
+	unsigned int silence_suspend: 1;
+	bool offline_already;
+	atomic_t disk_events_disable_depth;
+	long unsigned int supported_events[1];
+	long unsigned int pending_events[1];
+	struct list_head event_list;
+	struct work_struct event_work;
+	unsigned int max_device_blocked;
+	atomic_t iorequest_cnt;
+	atomic_t iodone_cnt;
+	atomic_t ioerr_cnt;
+	struct device sdev_gendev;
+	struct device sdev_dev;
+	struct execute_work ew;
+	struct work_struct requeue_work;
+	struct scsi_device_handler *handler;
+	void *handler_data;
+	size_t dma_drain_len;
+	void *dma_drain_buf;
+	unsigned int sg_timeout;
+	unsigned int sg_reserved_size;
+	struct bsg_device *bsg_dev;
+	unsigned char access_state;
+	struct mutex state_mutex;
+	enum scsi_device_state sdev_state;
+	struct task_struct *quiesced_by;
+	long unsigned int sdev_data[0];
+};
+
+enum scsi_host_state {
+	SHOST_CREATED = 1,
+	SHOST_RUNNING = 2,
+	SHOST_CANCEL = 3,
+	SHOST_DEL = 4,
+	SHOST_RECOVERY = 5,
+	SHOST_CANCEL_RECOVERY = 6,
+	SHOST_DEL_RECOVERY = 7,
+};
+
+struct scsi_host_template;
+
+struct scsi_transport_template;
+
+struct Scsi_Host {
+	struct list_head __devices;
+	struct list_head __targets;
+	struct list_head starved_list;
+	spinlock_t default_lock;
+	spinlock_t *host_lock;
+	struct mutex scan_mutex;
+	struct list_head eh_abort_list;
+	struct list_head eh_cmd_q;
+	struct task_struct *ehandler;
+	struct completion *eh_action;
+	wait_queue_head_t host_wait;
+	struct scsi_host_template *hostt;
+	struct scsi_transport_template *transportt;
+	struct kref tagset_refcnt;
+	struct completion tagset_freed;
+	struct blk_mq_tag_set tag_set;
+	atomic_t host_blocked;
+	unsigned int host_failed;
+	unsigned int host_eh_scheduled;
+	unsigned int host_no;
+	int eh_deadline;
+	long unsigned int last_reset;
+	unsigned int max_channel;
+	unsigned int max_id;
+	u64 max_lun;
+	unsigned int unique_id;
+	short unsigned int max_cmd_len;
+	int this_id;
+	int can_queue;
+	short int cmd_per_lun;
+	short unsigned int sg_tablesize;
+	short unsigned int sg_prot_tablesize;
+	unsigned int max_sectors;
+	unsigned int max_segment_size;
+	long unsigned int dma_boundary;
+	long unsigned int virt_boundary_mask;
+	unsigned int nr_hw_queues;
+	unsigned int nr_maps;
+	unsigned int active_mode: 2;
+	unsigned int host_self_blocked: 1;
+	unsigned int reverse_ordering: 1;
+	unsigned int tmf_in_progress: 1;
+	unsigned int async_scan: 1;
+	unsigned int eh_noresume: 1;
+	unsigned int no_write_same: 1;
+	unsigned int host_tagset: 1;
+	unsigned int short_inquiry: 1;
+	unsigned int no_scsi2_lun_in_cdb: 1;
+	char work_q_name[20];
+	struct workqueue_struct *work_q;
+	struct workqueue_struct *tmf_work_q;
+	unsigned int max_host_blocked;
+	unsigned int prot_capabilities;
+	unsigned char prot_guard_type;
+	long unsigned int base;
+	long unsigned int io_port;
+	unsigned char n_io_port;
+	unsigned char dma_channel;
+	unsigned int irq;
+	enum scsi_host_state shost_state;
+	struct device shost_gendev;
+	struct device shost_dev;
+	void *shost_data;
+	struct device *dma_dev;
+	long unsigned int hostdata[0];
+};
+
+enum scsi_target_state {
+	STARGET_CREATED = 1,
+	STARGET_RUNNING = 2,
+	STARGET_REMOVE = 3,
+	STARGET_CREATED_REMOVE = 4,
+	STARGET_DEL = 5,
+};
+
+struct scsi_target {
+	struct scsi_device *starget_sdev_user;
+	struct list_head siblings;
+	struct list_head devices;
+	struct device dev;
+	struct kref reap_ref;
+	unsigned int channel;
+	unsigned int id;
+	unsigned int create: 1;
+	unsigned int single_lun: 1;
+	unsigned int pdt_1f_for_no_lun: 1;
+	unsigned int no_report_luns: 1;
+	unsigned int expecting_lun_change: 1;
+	atomic_t target_busy;
+	atomic_t target_blocked;
+	unsigned int can_queue;
+	unsigned int max_target_blocked;
+	char scsi_level;
+	enum scsi_target_state state;
+	void *hostdata;
+	long unsigned int starget_data[0];
+};
+
+struct scsi_host_cmd_pool;
+
+struct scsi_cmnd;
+
+struct scsi_host_template {
+	unsigned int cmd_size;
+	int (*queuecommand)(struct Scsi_Host *, struct scsi_cmnd *);
+	void (*commit_rqs)(struct Scsi_Host *, u16);
+	struct module *module;
+	const char *name;
+	const char * (*info)(struct Scsi_Host *);
+	int (*ioctl)(struct scsi_device *, unsigned int, void *);
+	int (*compat_ioctl)(struct scsi_device *, unsigned int, void *);
+	int (*init_cmd_priv)(struct Scsi_Host *, struct scsi_cmnd *);
+	int (*exit_cmd_priv)(struct Scsi_Host *, struct scsi_cmnd *);
+	int (*eh_abort_handler)(struct scsi_cmnd *);
+	int (*eh_device_reset_handler)(struct scsi_cmnd *);
+	int (*eh_target_reset_handler)(struct scsi_cmnd *);
+	int (*eh_bus_reset_handler)(struct scsi_cmnd *);
+	int (*eh_host_reset_handler)(struct scsi_cmnd *);
+	int (*slave_alloc)(struct scsi_device *);
+	int (*slave_configure)(struct scsi_device *);
+	void (*slave_destroy)(struct scsi_device *);
+	int (*target_alloc)(struct scsi_target *);
+	void (*target_destroy)(struct scsi_target *);
+	int (*scan_finished)(struct Scsi_Host *, long unsigned int);
+	void (*scan_start)(struct Scsi_Host *);
+	int (*change_queue_depth)(struct scsi_device *, int);
+	int (*map_queues)(struct Scsi_Host *);
+	int (*mq_poll)(struct Scsi_Host *, unsigned int);
+	bool (*dma_need_drain)(struct request *);
+	int (*bios_param)(struct scsi_device *, struct block_device *, sector_t, int *);
+	void (*unlock_native_capacity)(struct scsi_device *);
+	int (*show_info)(struct seq_file *, struct Scsi_Host *);
+	int (*write_info)(struct Scsi_Host *, char *, int);
+	enum blk_eh_timer_return (*eh_timed_out)(struct scsi_cmnd *);
+	bool (*eh_should_retry_cmd)(struct scsi_cmnd *);
+	int (*host_reset)(struct Scsi_Host *, int);
+	const char *proc_name;
+	struct proc_dir_entry *proc_dir;
+	int can_queue;
+	int this_id;
+	short unsigned int sg_tablesize;
+	short unsigned int sg_prot_tablesize;
+	unsigned int max_sectors;
+	unsigned int max_segment_size;
+	long unsigned int dma_boundary;
+	long unsigned int virt_boundary_mask;
+	short int cmd_per_lun;
+	unsigned char present;
+	int tag_alloc_policy;
+	unsigned int track_queue_depth: 1;
+	unsigned int supported_mode: 2;
+	unsigned int emulated: 1;
+	unsigned int skip_settle_delay: 1;
+	unsigned int no_write_same: 1;
+	unsigned int host_tagset: 1;
+	unsigned int max_host_blocked;
+	struct device_attribute **shost_attrs;
+	struct device_attribute **sdev_attrs;
+	const struct attribute_group **sdev_groups;
+	u64 vendor_id;
+	struct scsi_host_cmd_pool *cmd_pool;
+	int rpm_autosuspend_delay;
+};
+
+struct scsi_request {
+	unsigned char __cmd[16];
+	unsigned char *cmd;
+	short unsigned int cmd_len;
+	int result;
+	unsigned int sense_len;
+	unsigned int resid_len;
+	int retries;
+	void *sense;
+};
+
+enum scsi_cmnd_submitter {
+	SUBMITTED_BY_BLOCK_LAYER = 0,
+	SUBMITTED_BY_SCSI_ERROR_HANDLER = 1,
+	SUBMITTED_BY_SCSI_RESET_IOCTL = 2,
+};
+
+struct scsi_data_buffer {
+	struct sg_table table;
+	unsigned int length;
+};
+
+struct scsi_pointer {
+	char *ptr;
+	int this_residual;
+	struct scatterlist *buffer;
+	int buffers_residual;
+	dma_addr_t dma_handle;
+	volatile int Status;
+	volatile int Message;
+	volatile int have_data_in;
+	volatile int sent_command;
+	volatile int phase;
+};
+
+struct scsi_cmnd {
+	struct scsi_request req;
+	struct scsi_device *device;
+	struct list_head eh_entry;
+	struct delayed_work abort_work;
+	struct callback_head rcu;
+	int eh_eflags;
+	int budget_token;
+	long unsigned int jiffies_at_alloc;
+	int retries;
+	int allowed;
+	unsigned char prot_op;
+	unsigned char prot_type;
+	unsigned char prot_flags;
+	enum scsi_cmnd_submitter submitter;
+	short unsigned int cmd_len;
+	enum dma_data_direction sc_data_direction;
+	unsigned char *cmnd;
+	struct scsi_data_buffer sdb;
+	struct scsi_data_buffer *prot_sdb;
+	unsigned int underflow;
+	unsigned int transfersize;
+	unsigned char *sense_buffer;
+	void (*scsi_done)(struct scsi_cmnd *);
+	struct scsi_pointer SCp;
+	unsigned char *host_scribble;
+	int result;
+	int flags;
+	long unsigned int state;
+	unsigned int extra_len;
+};
+
+enum scsi_prot_operations {
+	SCSI_PROT_NORMAL = 0,
+	SCSI_PROT_READ_INSERT = 1,
+	SCSI_PROT_WRITE_STRIP = 2,
+	SCSI_PROT_READ_STRIP = 3,
+	SCSI_PROT_WRITE_INSERT = 4,
+	SCSI_PROT_READ_PASS = 5,
+	SCSI_PROT_WRITE_PASS = 6,
+};
+
+struct scsi_driver {
+	struct device_driver gendrv;
+	void (*rescan)(struct device *);
+	blk_status_t (*init_command)(struct scsi_cmnd *);
+	void (*uninit_command)(struct scsi_cmnd *);
+	int (*done)(struct scsi_cmnd *);
+	int (*eh_action)(struct scsi_cmnd *, int);
+	void (*eh_reset)(struct scsi_cmnd *);
+};
+
+struct trace_event_raw_scsi_dispatch_cmd_start {
+	struct trace_entry ent;
+	unsigned int host_no;
+	unsigned int channel;
+	unsigned int id;
+	unsigned int lun;
+	unsigned int opcode;
+	unsigned int cmd_len;
+	unsigned int data_sglen;
+	unsigned int prot_sglen;
+	unsigned char prot_op;
+	u32 __data_loc_cmnd;
+	char __data[0];
+};
+
+struct trace_event_raw_scsi_dispatch_cmd_error {
+	struct trace_entry ent;
+	unsigned int host_no;
+	unsigned int channel;
+	unsigned int id;
+	unsigned int lun;
+	int rtn;
+	unsigned int opcode;
+	unsigned int cmd_len;
+	unsigned int data_sglen;
+	unsigned int prot_sglen;
+	unsigned char prot_op;
+	u32 __data_loc_cmnd;
+	char __data[0];
+};
+
+struct trace_event_raw_scsi_cmd_done_timeout_template {
+	struct trace_entry ent;
+	unsigned int host_no;
+	unsigned int channel;
+	unsigned int id;
+	unsigned int lun;
+	int result;
+	unsigned int opcode;
+	unsigned int cmd_len;
+	unsigned int data_sglen;
+	unsigned int prot_sglen;
+	unsigned char prot_op;
+	u32 __data_loc_cmnd;
+	char __data[0];
+};
+
+struct trace_event_raw_scsi_eh_wakeup {
+	struct trace_entry ent;
+	unsigned int host_no;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_scsi_dispatch_cmd_start {
+	u32 cmnd;
+};
+
+struct trace_event_data_offsets_scsi_dispatch_cmd_error {
+	u32 cmnd;
+};
+
+struct trace_event_data_offsets_scsi_cmd_done_timeout_template {
+	u32 cmnd;
+};
+
+struct trace_event_data_offsets_scsi_eh_wakeup {};
+
+typedef void (*btf_trace_scsi_dispatch_cmd_start)(void *, struct scsi_cmnd *);
+
+typedef void (*btf_trace_scsi_dispatch_cmd_error)(void *, struct scsi_cmnd *, int);
+
+typedef void (*btf_trace_scsi_dispatch_cmd_done)(void *, struct scsi_cmnd *);
+
+typedef void (*btf_trace_scsi_dispatch_cmd_timeout)(void *, struct scsi_cmnd *);
+
+typedef void (*btf_trace_scsi_eh_wakeup)(void *, struct Scsi_Host *);
+
+struct scsi_transport_template {
+	struct transport_container host_attrs;
+	struct transport_container target_attrs;
+	struct transport_container device_attrs;
+	int (*user_scan)(struct Scsi_Host *, uint, uint, u64);
+	int device_size;
+	int device_private_offset;
+	int target_size;
+	int target_private_offset;
+	int host_size;
+	unsigned int create_work_queue: 1;
+	void (*eh_strategy_handler)(struct Scsi_Host *);
+};
+
+struct scsi_host_busy_iter_data {
+	bool (*fn)(struct scsi_cmnd *, void *, bool);
+	void *priv;
+};
+
+struct request_sense;
+
+struct cdrom_generic_command {
+	unsigned char cmd[12];
+	unsigned char *buffer;
+	unsigned int buflen;
+	int stat;
+	struct request_sense *sense;
+	unsigned char data_direction;
+	int quiet;
+	int timeout;
+	union {
+		void *reserved[1];
+		void *unused;
+	};
+};
+
+struct request_sense {
+	__u8 error_code: 7;
+	__u8 valid: 1;
+	__u8 segment_number;
+	__u8 sense_key: 4;
+	__u8 reserved2: 1;
+	__u8 ili: 1;
+	__u8 reserved1: 2;
+	__u8 information[4];
+	__u8 add_sense_len;
+	__u8 command_info[4];
+	__u8 asc;
+	__u8 ascq;
+	__u8 fruc;
+	__u8 sks[3];
+	__u8 asb[46];
+};
+
+enum scsi_msg_byte {
+	COMMAND_COMPLETE = 0,
+	EXTENDED_MESSAGE = 1,
+	SAVE_POINTERS = 2,
+	RESTORE_POINTERS = 3,
+	DISCONNECT = 4,
+	INITIATOR_ERROR = 5,
+	ABORT_TASK_SET = 6,
+	MESSAGE_REJECT = 7,
+	NOP___2 = 8,
+	MSG_PARITY_ERROR = 9,
+	LINKED_CMD_COMPLETE = 10,
+	LINKED_FLG_CMD_COMPLETE = 11,
+	TARGET_RESET = 12,
+	ABORT_TASK = 13,
+	CLEAR_TASK_SET = 14,
+	INITIATE_RECOVERY = 15,
+	RELEASE_RECOVERY = 16,
+	TERMINATE_IO_PROC = 17,
+	CLEAR_ACA = 22,
+	LOGICAL_UNIT_RESET = 23,
+	SIMPLE_QUEUE_TAG = 32,
+	HEAD_OF_QUEUE_TAG = 33,
+	ORDERED_QUEUE_TAG = 34,
+	IGNORE_WIDE_RESIDUE = 35,
+	ACA = 36,
+	QAS_REQUEST = 85,
+	BUS_DEVICE_RESET = 12,
+	ABORT = 6,
+};
+
+struct scsi_ioctl_command {
+	unsigned int inlen;
+	unsigned int outlen;
+	unsigned char data[0];
+};
+
+struct scsi_idlun {
+	__u32 dev_id;
+	__u32 host_unique_id;
+};
+
+struct sg_io_hdr {
+	int interface_id;
+	int dxfer_direction;
+	unsigned char cmd_len;
+	unsigned char mx_sb_len;
+	short unsigned int iovec_count;
+	unsigned int dxfer_len;
+	void *dxferp;
+	unsigned char *cmdp;
+	void *sbp;
+	unsigned int timeout;
+	unsigned int flags;
+	int pack_id;
+	void *usr_ptr;
+	unsigned char status;
+	unsigned char masked_status;
+	unsigned char msg_status;
+	unsigned char sb_len_wr;
+	short unsigned int host_status;
+	short unsigned int driver_status;
+	int resid;
+	unsigned int duration;
+	unsigned int info;
+};
+
+struct compat_sg_io_hdr {
+	compat_int_t interface_id;
+	compat_int_t dxfer_direction;
+	unsigned char cmd_len;
+	unsigned char mx_sb_len;
+	short unsigned int iovec_count;
+	compat_uint_t dxfer_len;
+	compat_uint_t dxferp;
+	compat_uptr_t cmdp;
+	compat_uptr_t sbp;
+	compat_uint_t timeout;
+	compat_uint_t flags;
+	compat_int_t pack_id;
+	compat_uptr_t usr_ptr;
+	unsigned char status;
+	unsigned char masked_status;
+	unsigned char msg_status;
+	unsigned char sb_len_wr;
+	short unsigned int host_status;
+	short unsigned int driver_status;
+	compat_int_t resid;
+	compat_uint_t duration;
+	compat_uint_t info;
+};
+
+struct compat_cdrom_generic_command {
+	unsigned char cmd[12];
+	compat_caddr_t buffer;
+	compat_uint_t buflen;
+	compat_int_t stat;
+	compat_caddr_t sense;
+	unsigned char data_direction;
+	unsigned char pad[3];
+	compat_int_t quiet;
+	compat_int_t timeout;
+	compat_caddr_t unused;
+};
+
+enum {
+	OMAX_SB_LEN = 16,
+};
+
+typedef void (*activate_complete)(void *, int);
+
+struct scsi_device_handler {
+	struct list_head list;
+	struct module *module;
+	const char *name;
+	enum scsi_disposition (*check_sense)(struct scsi_device *, struct scsi_sense_hdr *);
+	int (*attach)(struct scsi_device *);
+	void (*detach)(struct scsi_device *);
+	int (*activate)(struct scsi_device *, activate_complete, void *);
+	blk_status_t (*prep_fn)(struct scsi_device *, struct request *);
+	int (*set_params)(struct scsi_device *, const char *);
+	void (*rescan)(struct scsi_device *);
+};
+
+struct scsi_eh_save {
+	int result;
+	unsigned int resid_len;
+	int eh_eflags;
+	enum dma_data_direction data_direction;
+	unsigned int underflow;
+	unsigned char cmd_len;
+	unsigned char prot_op;
+	unsigned char *cmnd;
+	struct scsi_data_buffer sdb;
+	unsigned char eh_cmnd[16];
+	struct scatterlist sense_sgl;
+};
+
+struct scsi_mode_data {
+	__u32 length;
+	__u16 block_descriptor_length;
+	__u8 medium_type;
+	__u8 device_specific;
+	__u8 header_length;
+	__u8 longlba: 1;
+};
+
+struct scsi_event {
+	enum scsi_device_event evt_type;
+	struct list_head node;
+};
+
+enum scsi_host_prot_capabilities {
+	SHOST_DIF_TYPE1_PROTECTION = 1,
+	SHOST_DIF_TYPE2_PROTECTION = 2,
+	SHOST_DIF_TYPE3_PROTECTION = 4,
+	SHOST_DIX_TYPE0_PROTECTION = 8,
+	SHOST_DIX_TYPE1_PROTECTION = 16,
+	SHOST_DIX_TYPE2_PROTECTION = 32,
+	SHOST_DIX_TYPE3_PROTECTION = 64,
+};
+
+enum {
+	ACTION_FAIL = 0,
+	ACTION_REPREP = 1,
+	ACTION_RETRY = 2,
+	ACTION_DELAYED_RETRY = 3,
+};
+
+struct value_name_pair;
+
+struct sa_name_list {
+	int opcode;
+	const struct value_name_pair *arr;
+	int arr_sz;
+};
+
+struct value_name_pair {
+	int value;
+	const char *name;
+};
+
+struct error_info {
+	short unsigned int code12;
+	short unsigned int size;
+};
+
+struct error_info2 {
+	unsigned char code1;
+	unsigned char code2_min;
+	unsigned char code2_max;
+	const char *str;
+	const char *fmt;
+};
+
+struct scsi_lun {
+	__u8 scsi_lun[8];
+};
+
+enum scsi_timeouts {
+	SCSI_DEFAULT_EH_TIMEOUT = 2500,
+};
+
+enum scsi_scan_mode {
+	SCSI_SCAN_INITIAL = 0,
+	SCSI_SCAN_RESCAN = 1,
+	SCSI_SCAN_MANUAL = 2,
+};
+
+struct async_scan_data {
+	struct list_head list;
+	struct Scsi_Host *shost;
+	struct completion prev_finished;
+};
+
+enum scsi_devinfo_key {
+	SCSI_DEVINFO_GLOBAL = 0,
+	SCSI_DEVINFO_SPI = 1,
+};
+
+struct scsi_dev_info_list {
+	struct list_head dev_info_list;
+	char vendor[8];
+	char model[16];
+	blist_flags_t flags;
+	unsigned int compatible;
+};
+
+struct scsi_dev_info_list_table {
+	struct list_head node;
+	struct list_head scsi_dev_info_list;
+	const char *name;
+	int key;
+};
+
+struct double_list {
+	struct list_head *top;
+	struct list_head *bottom;
+};
+
+struct scsi_nl_hdr {
+	__u8 version;
+	__u8 transport;
+	__u16 magic;
+	__u16 msgtype;
+	__u16 msglen;
+};
+
+struct scsi_varlen_cdb_hdr {
+	__u8 opcode;
+	__u8 control;
+	__u8 misc[5];
+	__u8 additional_cdb_length;
+	__be16 service_action;
+};
+
+enum {
+	SCSI_DH_OK = 0,
+	SCSI_DH_DEV_FAILED = 1,
+	SCSI_DH_DEV_TEMP_BUSY = 2,
+	SCSI_DH_DEV_UNSUPP = 3,
+	SCSI_DH_DEVICE_MAX = 4,
+	SCSI_DH_NOTCONN = 5,
+	SCSI_DH_CONN_FAILURE = 6,
+	SCSI_DH_TRANSPORT_MAX = 7,
+	SCSI_DH_IO = 8,
+	SCSI_DH_INVALID_IO = 9,
+	SCSI_DH_RETRY = 10,
+	SCSI_DH_IMM_RETRY = 11,
+	SCSI_DH_TIMED_OUT = 12,
+	SCSI_DH_RES_TEMP_UNAVAIL = 13,
+	SCSI_DH_DEV_OFFLINED = 14,
+	SCSI_DH_NOMEM = 15,
+	SCSI_DH_NOSYS = 16,
+	SCSI_DH_DRIVER_MAX = 17,
+};
+
+struct scsi_dh_blist {
+	const char *vendor;
+	const char *model;
+	const char *driver;
+};
+
+enum scsi_prot_flags {
+	SCSI_PROT_TRANSFER_PI = 1,
+	SCSI_PROT_GUARD_CHECK = 2,
+	SCSI_PROT_REF_CHECK = 4,
+	SCSI_PROT_REF_INCREMENT = 8,
+	SCSI_PROT_IP_CHECKSUM = 16,
+};
+
+enum {
+	SD_EXT_CDB_SIZE = 32,
+	SD_MEMPOOL_SIZE = 2,
+};
+
+enum {
+	SD_DEF_XFER_BLOCKS = 65535,
+	SD_MAX_XFER_BLOCKS = 4294967295,
+	SD_MAX_WS10_BLOCKS = 65535,
+	SD_MAX_WS16_BLOCKS = 8388607,
+};
+
+enum {
+	SD_LBP_FULL = 0,
+	SD_LBP_UNMAP = 1,
+	SD_LBP_WS16 = 2,
+	SD_LBP_WS10 = 3,
+	SD_LBP_ZERO = 4,
+	SD_LBP_DISABLE = 5,
+};
+
+enum {
+	SD_ZERO_WRITE = 0,
+	SD_ZERO_WS = 1,
+	SD_ZERO_WS16_UNMAP = 2,
+	SD_ZERO_WS10_UNMAP = 3,
+};
+
+struct scsi_disk {
+	struct scsi_driver *driver;
+	struct scsi_device *device;
+	struct device dev;
+	struct gendisk *disk;
+	struct opal_dev *opal_dev;
+	u32 nr_zones;
+	u32 rev_nr_zones;
+	u32 zone_blocks;
+	u32 rev_zone_blocks;
+	u32 zones_optimal_open;
+	u32 zones_optimal_nonseq;
+	u32 zones_max_open;
+	u32 *zones_wp_offset;
+	spinlock_t zones_wp_offset_lock;
+	u32 *rev_wp_offset;
+	struct mutex rev_mutex;
+	struct work_struct zone_wp_offset_work;
+	char *zone_wp_update_buf;
+	atomic_t openers;
+	sector_t capacity;
+	int max_retries;
+	u32 max_xfer_blocks;
+	u32 opt_xfer_blocks;
+	u32 max_ws_blocks;
+	u32 max_unmap_blocks;
+	u32 unmap_granularity;
+	u32 unmap_alignment;
+	u32 index;
+	unsigned int physical_block_size;
+	unsigned int max_medium_access_timeouts;
+	unsigned int medium_access_timed_out;
+	u8 media_present;
+	u8 write_prot;
+	u8 protection_type;
+	u8 provisioning_mode;
+	u8 zeroing_mode;
+	unsigned int ATO: 1;
+	unsigned int cache_override: 1;
+	unsigned int WCE: 1;
+	unsigned int RCD: 1;
+	unsigned int DPOFUA: 1;
+	unsigned int first_scan: 1;
+	unsigned int lbpme: 1;
+	unsigned int lbprz: 1;
+	unsigned int lbpu: 1;
+	unsigned int lbpws: 1;
+	unsigned int lbpws10: 1;
+	unsigned int lbpvpd: 1;
+	unsigned int ws10: 1;
+	unsigned int ws16: 1;
+	unsigned int rc_basis: 2;
+	unsigned int zoned: 2;
+	unsigned int urswrz: 1;
+	unsigned int security: 1;
+	unsigned int ignore_medium_access_errors: 1;
+};
+
+enum scsi_host_guard_type {
+	SHOST_DIX_GUARD_CRC = 1,
+	SHOST_DIX_GUARD_IP = 2,
+};
+
+enum zbc_zone_type {
+	ZBC_ZONE_TYPE_CONV = 1,
+	ZBC_ZONE_TYPE_SEQWRITE_REQ = 2,
+	ZBC_ZONE_TYPE_SEQWRITE_PREF = 3,
+};
+
+enum zbc_zone_cond {
+	ZBC_ZONE_COND_NO_WP = 0,
+	ZBC_ZONE_COND_EMPTY = 1,
+	ZBC_ZONE_COND_IMP_OPEN = 2,
+	ZBC_ZONE_COND_EXP_OPEN = 3,
+	ZBC_ZONE_COND_CLOSED = 4,
+	ZBC_ZONE_COND_READONLY = 13,
+	ZBC_ZONE_COND_FULL = 14,
+	ZBC_ZONE_COND_OFFLINE = 15,
+};
+
+enum {
+	mechtype_caddy = 0,
+	mechtype_tray = 1,
+	mechtype_popup = 2,
+	mechtype_individual_changer = 4,
+	mechtype_cartridge_changer = 5,
+};
+
+struct event_header {
+	__be16 data_len;
+	__u8 notification_class: 3;
+	__u8 reserved1: 4;
+	__u8 nea: 1;
+	__u8 supp_event_class;
+};
+
+struct media_event_desc {
+	__u8 media_event_code: 4;
+	__u8 reserved1: 4;
+	__u8 door_open: 1;
+	__u8 media_present: 1;
+	__u8 reserved2: 6;
+	__u8 start_slot;
+	__u8 end_slot;
+};
+
+struct scsi_cd {
+	struct scsi_driver *driver;
+	unsigned int capacity;
+	struct scsi_device *device;
+	unsigned int vendor;
+	long unsigned int ms_offset;
+	unsigned int writeable: 1;
+	unsigned int use: 1;
+	unsigned int xa_flag: 1;
+	unsigned int readcd_known: 1;
+	unsigned int readcd_cdda: 1;
+	unsigned int media_present: 1;
+	int tur_mismatch;
+	bool tur_changed: 1;
+	bool get_event_changed: 1;
+	bool ignore_get_event: 1;
+	struct cdrom_device_info cdi;
+	struct mutex lock;
+	struct kref kref;
+	struct gendisk *disk;
+};
+
+typedef struct scsi_cd Scsi_CD;
+
+struct cdrom_ti {
+	__u8 cdti_trk0;
+	__u8 cdti_ind0;
+	__u8 cdti_trk1;
+	__u8 cdti_ind1;
+};
+
+struct cdrom_tochdr {
+	__u8 cdth_trk0;
+	__u8 cdth_trk1;
+};
+
+struct cdrom_tocentry {
+	__u8 cdte_track;
+	__u8 cdte_adr: 4;
+	__u8 cdte_ctrl: 4;
+	__u8 cdte_format;
+	union cdrom_addr cdte_addr;
+	__u8 cdte_datamode;
+};
+
+struct ccs_modesel_head {
+	__u8 _r1;
+	__u8 medium;
+	__u8 _r2;
+	__u8 block_desc_length;
+	__u8 density;
+	__u8 number_blocks_hi;
+	__u8 number_blocks_med;
+	__u8 number_blocks_lo;
+	__u8 _r3;
+	__u8 block_length_hi;
+	__u8 block_length_med;
+	__u8 block_length_lo;
+};
+
+typedef struct sg_io_hdr sg_io_hdr_t;
+
+struct sg_scsi_id {
+	int host_no;
+	int channel;
+	int scsi_id;
+	int lun;
+	int scsi_type;
+	short int h_cmd_per_lun;
+	short int d_queue_depth;
+	int unused[2];
+};
+
+typedef struct sg_scsi_id sg_scsi_id_t;
+
+struct sg_req_info {
+	char req_state;
+	char orphan;
+	char sg_io_owned;
+	char problem;
+	int pack_id;
+	void *usr_ptr;
+	unsigned int duration;
+	int unused;
+};
+
+typedef struct sg_req_info sg_req_info_t;
+
+struct sg_header {
+	int pack_len;
+	int reply_len;
+	int pack_id;
+	int result;
+	unsigned int twelve_byte: 1;
+	unsigned int target_status: 5;
+	unsigned int host_status: 8;
+	unsigned int driver_status: 8;
+	unsigned int other_flags: 10;
+	unsigned char sense_buffer[16];
+};
+
+struct sg_scatter_hold {
+	short unsigned int k_use_sg;
+	unsigned int sglist_len;
+	unsigned int bufflen;
+	struct page **pages;
+	int page_order;
+	char dio_in_use;
+	unsigned char cmd_opcode;
+};
+
+typedef struct sg_scatter_hold Sg_scatter_hold;
+
+struct sg_fd;
+
+struct sg_request {
+	struct list_head entry;
+	struct sg_fd *parentfp;
+	Sg_scatter_hold data;
+	sg_io_hdr_t header;
+	unsigned char sense_b[96];
+	char res_used;
+	char orphan;
+	char sg_io_owned;
+	char done;
+	struct request *rq;
+	struct bio *bio;
+	struct execute_work ew;
+};
+
+typedef struct sg_request Sg_request;
+
+struct sg_device;
+
+struct sg_fd {
+	struct list_head sfd_siblings;
+	struct sg_device *parentdp;
+	wait_queue_head_t read_wait;
+	rwlock_t rq_list_lock;
+	struct mutex f_mutex;
+	int timeout;
+	int timeout_user;
+	Sg_scatter_hold reserve;
+	struct list_head rq_list;
+	struct fasync_struct *async_qp;
+	Sg_request req_arr[16];
+	char force_packid;
+	char cmd_q;
+	unsigned char next_cmd_len;
+	char keep_orphan;
+	char mmap_called;
+	char res_in_use;
+	struct kref f_ref;
+	struct execute_work ew;
+};
+
+struct sg_device {
+	struct scsi_device *device;
+	wait_queue_head_t open_wait;
+	struct mutex open_rel_lock;
+	int sg_tablesize;
+	u32 index;
+	struct list_head sfds;
+	rwlock_t sfd_lock;
+	atomic_t detaching;
+	bool exclude;
+	int open_cnt;
+	char sgdebug;
+	char name[32];
+	struct cdev *cdev;
+	struct kref d_ref;
+};
+
+typedef struct sg_fd Sg_fd;
+
+typedef struct sg_device Sg_device;
+
+struct compat_sg_req_info {
+	char req_state;
+	char orphan;
+	char sg_io_owned;
+	char problem;
+	int pack_id;
+	compat_uptr_t usr_ptr;
+	unsigned int duration;
+	int unused;
+};
+
+struct sg_proc_deviter {
+	loff_t index;
+	size_t max;
+};
+
+enum {
+	ATA_MAX_DEVICES = 2,
+	ATA_MAX_PRD = 256,
+	ATA_SECT_SIZE = 512,
+	ATA_MAX_SECTORS_128 = 128,
+	ATA_MAX_SECTORS = 256,
+	ATA_MAX_SECTORS_1024 = 1024,
+	ATA_MAX_SECTORS_LBA48 = 65535,
+	ATA_MAX_SECTORS_TAPE = 65535,
+	ATA_MAX_TRIM_RNUM = 64,
+	ATA_ID_WORDS = 256,
+	ATA_ID_CONFIG = 0,
+	ATA_ID_CYLS = 1,
+	ATA_ID_HEADS = 3,
+	ATA_ID_SECTORS = 6,
+	ATA_ID_SERNO = 10,
+	ATA_ID_BUF_SIZE = 21,
+	ATA_ID_FW_REV = 23,
+	ATA_ID_PROD = 27,
+	ATA_ID_MAX_MULTSECT = 47,
+	ATA_ID_DWORD_IO = 48,
+	ATA_ID_TRUSTED = 48,
+	ATA_ID_CAPABILITY = 49,
+	ATA_ID_OLD_PIO_MODES = 51,
+	ATA_ID_OLD_DMA_MODES = 52,
+	ATA_ID_FIELD_VALID = 53,
+	ATA_ID_CUR_CYLS = 54,
+	ATA_ID_CUR_HEADS = 55,
+	ATA_ID_CUR_SECTORS = 56,
+	ATA_ID_MULTSECT = 59,
+	ATA_ID_LBA_CAPACITY = 60,
+	ATA_ID_SWDMA_MODES = 62,
+	ATA_ID_MWDMA_MODES = 63,
+	ATA_ID_PIO_MODES = 64,
+	ATA_ID_EIDE_DMA_MIN = 65,
+	ATA_ID_EIDE_DMA_TIME = 66,
+	ATA_ID_EIDE_PIO = 67,
+	ATA_ID_EIDE_PIO_IORDY = 68,
+	ATA_ID_ADDITIONAL_SUPP = 69,
+	ATA_ID_QUEUE_DEPTH = 75,
+	ATA_ID_SATA_CAPABILITY = 76,
+	ATA_ID_SATA_CAPABILITY_2 = 77,
+	ATA_ID_FEATURE_SUPP = 78,
+	ATA_ID_MAJOR_VER = 80,
+	ATA_ID_COMMAND_SET_1 = 82,
+	ATA_ID_COMMAND_SET_2 = 83,
+	ATA_ID_CFSSE = 84,
+	ATA_ID_CFS_ENABLE_1 = 85,
+	ATA_ID_CFS_ENABLE_2 = 86,
+	ATA_ID_CSF_DEFAULT = 87,
+	ATA_ID_UDMA_MODES = 88,
+	ATA_ID_HW_CONFIG = 93,
+	ATA_ID_SPG = 98,
+	ATA_ID_LBA_CAPACITY_2 = 100,
+	ATA_ID_SECTOR_SIZE = 106,
+	ATA_ID_WWN = 108,
+	ATA_ID_LOGICAL_SECTOR_SIZE = 117,
+	ATA_ID_COMMAND_SET_3 = 119,
+	ATA_ID_COMMAND_SET_4 = 120,
+	ATA_ID_LAST_LUN = 126,
+	ATA_ID_DLF = 128,
+	ATA_ID_CSFO = 129,
+	ATA_ID_CFA_POWER = 160,
+	ATA_ID_CFA_KEY_MGMT = 162,
+	ATA_ID_CFA_MODES = 163,
+	ATA_ID_DATA_SET_MGMT = 169,
+	ATA_ID_SCT_CMD_XPORT = 206,
+	ATA_ID_ROT_SPEED = 217,
+	ATA_ID_PIO4 = 2,
+	ATA_ID_SERNO_LEN = 20,
+	ATA_ID_FW_REV_LEN = 8,
+	ATA_ID_PROD_LEN = 40,
+	ATA_ID_WWN_LEN = 8,
+	ATA_PCI_CTL_OFS = 2,
+	ATA_PIO0 = 1,
+	ATA_PIO1 = 3,
+	ATA_PIO2 = 7,
+	ATA_PIO3 = 15,
+	ATA_PIO4 = 31,
+	ATA_PIO5 = 63,
+	ATA_PIO6 = 127,
+	ATA_PIO4_ONLY = 16,
+	ATA_SWDMA0 = 1,
+	ATA_SWDMA1 = 3,
+	ATA_SWDMA2 = 7,
+	ATA_SWDMA2_ONLY = 4,
+	ATA_MWDMA0 = 1,
+	ATA_MWDMA1 = 3,
+	ATA_MWDMA2 = 7,
+	ATA_MWDMA3 = 15,
+	ATA_MWDMA4 = 31,
+	ATA_MWDMA12_ONLY = 6,
+	ATA_MWDMA2_ONLY = 4,
+	ATA_UDMA0 = 1,
+	ATA_UDMA1 = 3,
+	ATA_UDMA2 = 7,
+	ATA_UDMA3 = 15,
+	ATA_UDMA4 = 31,
+	ATA_UDMA5 = 63,
+	ATA_UDMA6 = 127,
+	ATA_UDMA7 = 255,
+	ATA_UDMA24_ONLY = 20,
+	ATA_UDMA_MASK_40C = 7,
+	ATA_PRD_SZ = 8,
+	ATA_PRD_TBL_SZ = 2048,
+	ATA_PRD_EOT = 2147483648,
+	ATA_DMA_TABLE_OFS = 4,
+	ATA_DMA_STATUS = 2,
+	ATA_DMA_CMD = 0,
+	ATA_DMA_WR = 8,
+	ATA_DMA_START = 1,
+	ATA_DMA_INTR = 4,
+	ATA_DMA_ERR = 2,
+	ATA_DMA_ACTIVE = 1,
+	ATA_HOB = 128,
+	ATA_NIEN = 2,
+	ATA_LBA = 64,
+	ATA_DEV1 = 16,
+	ATA_DEVICE_OBS = 160,
+	ATA_DEVCTL_OBS = 8,
+	ATA_BUSY = 128,
+	ATA_DRDY = 64,
+	ATA_DF = 32,
+	ATA_DSC = 16,
+	ATA_DRQ = 8,
+	ATA_CORR = 4,
+	ATA_SENSE = 2,
+	ATA_ERR = 1,
+	ATA_SRST = 4,
+	ATA_ICRC = 128,
+	ATA_BBK = 128,
+	ATA_UNC = 64,
+	ATA_MC = 32,
+	ATA_IDNF = 16,
+	ATA_MCR = 8,
+	ATA_ABORTED = 4,
+	ATA_TRK0NF = 2,
+	ATA_AMNF = 1,
+	ATAPI_LFS = 240,
+	ATAPI_EOM = 2,
+	ATAPI_ILI = 1,
+	ATAPI_IO = 2,
+	ATAPI_COD = 1,
+	ATA_REG_DATA = 0,
+	ATA_REG_ERR = 1,
+	ATA_REG_NSECT = 2,
+	ATA_REG_LBAL = 3,
+	ATA_REG_LBAM = 4,
+	ATA_REG_LBAH = 5,
+	ATA_REG_DEVICE = 6,
+	ATA_REG_STATUS = 7,
+	ATA_REG_FEATURE = 1,
+	ATA_REG_CMD = 7,
+	ATA_REG_BYTEL = 4,
+	ATA_REG_BYTEH = 5,
+	ATA_REG_DEVSEL = 6,
+	ATA_REG_IRQ = 2,
+	ATA_CMD_DEV_RESET = 8,
+	ATA_CMD_CHK_POWER = 229,
+	ATA_CMD_STANDBY = 226,
+	ATA_CMD_IDLE = 227,
+	ATA_CMD_EDD = 144,
+	ATA_CMD_DOWNLOAD_MICRO = 146,
+	ATA_CMD_DOWNLOAD_MICRO_DMA = 147,
+	ATA_CMD_NOP = 0,
+	ATA_CMD_FLUSH = 231,
+	ATA_CMD_FLUSH_EXT = 234,
+	ATA_CMD_ID_ATA = 236,
+	ATA_CMD_ID_ATAPI = 161,
+	ATA_CMD_SERVICE = 162,
+	ATA_CMD_READ = 200,
+	ATA_CMD_READ_EXT = 37,
+	ATA_CMD_READ_QUEUED = 38,
+	ATA_CMD_READ_STREAM_EXT = 43,
+	ATA_CMD_READ_STREAM_DMA_EXT = 42,
+	ATA_CMD_WRITE = 202,
+	ATA_CMD_WRITE_EXT = 53,
+	ATA_CMD_WRITE_QUEUED = 54,
+	ATA_CMD_WRITE_STREAM_EXT = 59,
+	ATA_CMD_WRITE_STREAM_DMA_EXT = 58,
+	ATA_CMD_WRITE_FUA_EXT = 61,
+	ATA_CMD_WRITE_QUEUED_FUA_EXT = 62,
+	ATA_CMD_FPDMA_READ = 96,
+	ATA_CMD_FPDMA_WRITE = 97,
+	ATA_CMD_NCQ_NON_DATA = 99,
+	ATA_CMD_FPDMA_SEND = 100,
+	ATA_CMD_FPDMA_RECV = 101,
+	ATA_CMD_PIO_READ = 32,
+	ATA_CMD_PIO_READ_EXT = 36,
+	ATA_CMD_PIO_WRITE = 48,
+	ATA_CMD_PIO_WRITE_EXT = 52,
+	ATA_CMD_READ_MULTI = 196,
+	ATA_CMD_READ_MULTI_EXT = 41,
+	ATA_CMD_WRITE_MULTI = 197,
+	ATA_CMD_WRITE_MULTI_EXT = 57,
+	ATA_CMD_WRITE_MULTI_FUA_EXT = 206,
+	ATA_CMD_SET_FEATURES = 239,
+	ATA_CMD_SET_MULTI = 198,
+	ATA_CMD_PACKET = 160,
+	ATA_CMD_VERIFY = 64,
+	ATA_CMD_VERIFY_EXT = 66,
+	ATA_CMD_WRITE_UNCORR_EXT = 69,
+	ATA_CMD_STANDBYNOW1 = 224,
+	ATA_CMD_IDLEIMMEDIATE = 225,
+	ATA_CMD_SLEEP = 230,
+	ATA_CMD_INIT_DEV_PARAMS = 145,
+	ATA_CMD_READ_NATIVE_MAX = 248,
+	ATA_CMD_READ_NATIVE_MAX_EXT = 39,
+	ATA_CMD_SET_MAX = 249,
+	ATA_CMD_SET_MAX_EXT = 55,
+	ATA_CMD_READ_LOG_EXT = 47,
+	ATA_CMD_WRITE_LOG_EXT = 63,
+	ATA_CMD_READ_LOG_DMA_EXT = 71,
+	ATA_CMD_WRITE_LOG_DMA_EXT = 87,
+	ATA_CMD_TRUSTED_NONDATA = 91,
+	ATA_CMD_TRUSTED_RCV = 92,
+	ATA_CMD_TRUSTED_RCV_DMA = 93,
+	ATA_CMD_TRUSTED_SND = 94,
+	ATA_CMD_TRUSTED_SND_DMA = 95,
+	ATA_CMD_PMP_READ = 228,
+	ATA_CMD_PMP_READ_DMA = 233,
+	ATA_CMD_PMP_WRITE = 232,
+	ATA_CMD_PMP_WRITE_DMA = 235,
+	ATA_CMD_CONF_OVERLAY = 177,
+	ATA_CMD_SEC_SET_PASS = 241,
+	ATA_CMD_SEC_UNLOCK = 242,
+	ATA_CMD_SEC_ERASE_PREP = 243,
+	ATA_CMD_SEC_ERASE_UNIT = 244,
+	ATA_CMD_SEC_FREEZE_LOCK = 245,
+	ATA_CMD_SEC_DISABLE_PASS = 246,
+	ATA_CMD_CONFIG_STREAM = 81,
+	ATA_CMD_SMART = 176,
+	ATA_CMD_MEDIA_LOCK = 222,
+	ATA_CMD_MEDIA_UNLOCK = 223,
+	ATA_CMD_DSM = 6,
+	ATA_CMD_CHK_MED_CRD_TYP = 209,
+	ATA_CMD_CFA_REQ_EXT_ERR = 3,
+	ATA_CMD_CFA_WRITE_NE = 56,
+	ATA_CMD_CFA_TRANS_SECT = 135,
+	ATA_CMD_CFA_ERASE = 192,
+	ATA_CMD_CFA_WRITE_MULT_NE = 205,
+	ATA_CMD_REQ_SENSE_DATA = 11,
+	ATA_CMD_SANITIZE_DEVICE = 180,
+	ATA_CMD_ZAC_MGMT_IN = 74,
+	ATA_CMD_ZAC_MGMT_OUT = 159,
+	ATA_CMD_RESTORE = 16,
+	ATA_SUBCMD_FPDMA_RECV_RD_LOG_DMA_EXT = 1,
+	ATA_SUBCMD_FPDMA_RECV_ZAC_MGMT_IN = 2,
+	ATA_SUBCMD_FPDMA_SEND_DSM = 0,
+	ATA_SUBCMD_FPDMA_SEND_WR_LOG_DMA_EXT = 2,
+	ATA_SUBCMD_NCQ_NON_DATA_ABORT_QUEUE = 0,
+	ATA_SUBCMD_NCQ_NON_DATA_SET_FEATURES = 5,
+	ATA_SUBCMD_NCQ_NON_DATA_ZERO_EXT = 6,
+	ATA_SUBCMD_NCQ_NON_DATA_ZAC_MGMT_OUT = 7,
+	ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES = 0,
+	ATA_SUBCMD_ZAC_MGMT_OUT_CLOSE_ZONE = 1,
+	ATA_SUBCMD_ZAC_MGMT_OUT_FINISH_ZONE = 2,
+	ATA_SUBCMD_ZAC_MGMT_OUT_OPEN_ZONE = 3,
+	ATA_SUBCMD_ZAC_MGMT_OUT_RESET_WRITE_POINTER = 4,
+	ATA_LOG_DIRECTORY = 0,
+	ATA_LOG_SATA_NCQ = 16,
+	ATA_LOG_NCQ_NON_DATA = 18,
+	ATA_LOG_NCQ_SEND_RECV = 19,
+	ATA_LOG_IDENTIFY_DEVICE = 48,
+	ATA_LOG_SECURITY = 6,
+	ATA_LOG_SATA_SETTINGS = 8,
+	ATA_LOG_ZONED_INFORMATION = 9,
+	ATA_LOG_DEVSLP_OFFSET = 48,
+	ATA_LOG_DEVSLP_SIZE = 8,
+	ATA_LOG_DEVSLP_MDAT = 0,
+	ATA_LOG_DEVSLP_MDAT_MASK = 31,
+	ATA_LOG_DEVSLP_DETO = 1,
+	ATA_LOG_DEVSLP_VALID = 7,
+	ATA_LOG_DEVSLP_VALID_MASK = 128,
+	ATA_LOG_NCQ_PRIO_OFFSET = 9,
+	ATA_LOG_NCQ_SEND_RECV_SUBCMDS_OFFSET = 0,
+	ATA_LOG_NCQ_SEND_RECV_SUBCMDS_DSM = 1,
+	ATA_LOG_NCQ_SEND_RECV_DSM_OFFSET = 4,
+	ATA_LOG_NCQ_SEND_RECV_DSM_TRIM = 1,
+	ATA_LOG_NCQ_SEND_RECV_RD_LOG_OFFSET = 8,
+	ATA_LOG_NCQ_SEND_RECV_RD_LOG_SUPPORTED = 1,
+	ATA_LOG_NCQ_SEND_RECV_WR_LOG_OFFSET = 12,
+	ATA_LOG_NCQ_SEND_RECV_WR_LOG_SUPPORTED = 1,
+	ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_OFFSET = 16,
+	ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_OUT_SUPPORTED = 1,
+	ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_IN_SUPPORTED = 2,
+	ATA_LOG_NCQ_SEND_RECV_SIZE = 20,
+	ATA_LOG_NCQ_NON_DATA_SUBCMDS_OFFSET = 0,
+	ATA_LOG_NCQ_NON_DATA_ABORT_OFFSET = 0,
+	ATA_LOG_NCQ_NON_DATA_ABORT_NCQ = 1,
+	ATA_LOG_NCQ_NON_DATA_ABORT_ALL = 2,
+	ATA_LOG_NCQ_NON_DATA_ABORT_STREAMING = 4,
+	ATA_LOG_NCQ_NON_DATA_ABORT_NON_STREAMING = 8,
+	ATA_LOG_NCQ_NON_DATA_ABORT_SELECTED = 16,
+	ATA_LOG_NCQ_NON_DATA_ZAC_MGMT_OFFSET = 28,
+	ATA_LOG_NCQ_NON_DATA_ZAC_MGMT_OUT = 1,
+	ATA_LOG_NCQ_NON_DATA_SIZE = 64,
+	ATA_CMD_READ_LONG = 34,
+	ATA_CMD_READ_LONG_ONCE = 35,
+	ATA_CMD_WRITE_LONG = 50,
+	ATA_CMD_WRITE_LONG_ONCE = 51,
+	SETFEATURES_XFER = 3,
+	XFER_UDMA_7 = 71,
+	XFER_UDMA_6 = 70,
+	XFER_UDMA_5 = 69,
+	XFER_UDMA_4 = 68,
+	XFER_UDMA_3 = 67,
+	XFER_UDMA_2 = 66,
+	XFER_UDMA_1 = 65,
+	XFER_UDMA_0 = 64,
+	XFER_MW_DMA_4 = 36,
+	XFER_MW_DMA_3 = 35,
+	XFER_MW_DMA_2 = 34,
+	XFER_MW_DMA_1 = 33,
+	XFER_MW_DMA_0 = 32,
+	XFER_SW_DMA_2 = 18,
+	XFER_SW_DMA_1 = 17,
+	XFER_SW_DMA_0 = 16,
+	XFER_PIO_6 = 14,
+	XFER_PIO_5 = 13,
+	XFER_PIO_4 = 12,
+	XFER_PIO_3 = 11,
+	XFER_PIO_2 = 10,
+	XFER_PIO_1 = 9,
+	XFER_PIO_0 = 8,
+	XFER_PIO_SLOW = 0,
+	SETFEATURES_WC_ON = 2,
+	SETFEATURES_WC_OFF = 130,
+	SETFEATURES_RA_ON = 170,
+	SETFEATURES_RA_OFF = 85,
+	SETFEATURES_AAM_ON = 66,
+	SETFEATURES_AAM_OFF = 194,
+	SETFEATURES_SPINUP = 7,
+	SETFEATURES_SPINUP_TIMEOUT = 30000,
+	SETFEATURES_SATA_ENABLE = 16,
+	SETFEATURES_SATA_DISABLE = 144,
+	SATA_FPDMA_OFFSET = 1,
+	SATA_FPDMA_AA = 2,
+	SATA_DIPM = 3,
+	SATA_FPDMA_IN_ORDER = 4,
+	SATA_AN = 5,
+	SATA_SSP = 6,
+	SATA_DEVSLP = 9,
+	SETFEATURE_SENSE_DATA = 195,
+	ATA_SET_MAX_ADDR = 0,
+	ATA_SET_MAX_PASSWD = 1,
+	ATA_SET_MAX_LOCK = 2,
+	ATA_SET_MAX_UNLOCK = 3,
+	ATA_SET_MAX_FREEZE_LOCK = 4,
+	ATA_SET_MAX_PASSWD_DMA = 5,
+	ATA_SET_MAX_UNLOCK_DMA = 6,
+	ATA_DCO_RESTORE = 192,
+	ATA_DCO_FREEZE_LOCK = 193,
+	ATA_DCO_IDENTIFY = 194,
+	ATA_DCO_SET = 195,
+	ATA_SMART_ENABLE = 216,
+	ATA_SMART_READ_VALUES = 208,
+	ATA_SMART_READ_THRESHOLDS = 209,
+	ATA_DSM_TRIM = 1,
+	ATA_SMART_LBAM_PASS = 79,
+	ATA_SMART_LBAH_PASS = 194,
+	ATAPI_PKT_DMA = 1,
+	ATAPI_DMADIR = 4,
+	ATAPI_CDB_LEN = 16,
+	SATA_PMP_MAX_PORTS = 15,
+	SATA_PMP_CTRL_PORT = 15,
+	SATA_PMP_GSCR_DWORDS = 128,
+	SATA_PMP_GSCR_PROD_ID = 0,
+	SATA_PMP_GSCR_REV = 1,
+	SATA_PMP_GSCR_PORT_INFO = 2,
+	SATA_PMP_GSCR_ERROR = 32,
+	SATA_PMP_GSCR_ERROR_EN = 33,
+	SATA_PMP_GSCR_FEAT = 64,
+	SATA_PMP_GSCR_FEAT_EN = 96,
+	SATA_PMP_PSCR_STATUS = 0,
+	SATA_PMP_PSCR_ERROR = 1,
+	SATA_PMP_PSCR_CONTROL = 2,
+	SATA_PMP_FEAT_BIST = 1,
+	SATA_PMP_FEAT_PMREQ = 2,
+	SATA_PMP_FEAT_DYNSSC = 4,
+	SATA_PMP_FEAT_NOTIFY = 8,
+	ATA_CBL_NONE = 0,
+	ATA_CBL_PATA40 = 1,
+	ATA_CBL_PATA80 = 2,
+	ATA_CBL_PATA40_SHORT = 3,
+	ATA_CBL_PATA_UNK = 4,
+	ATA_CBL_PATA_IGN = 5,
+	ATA_CBL_SATA = 6,
+	SCR_STATUS = 0,
+	SCR_ERROR = 1,
+	SCR_CONTROL = 2,
+	SCR_ACTIVE = 3,
+	SCR_NOTIFICATION = 4,
+	SERR_DATA_RECOVERED = 1,
+	SERR_COMM_RECOVERED = 2,
+	SERR_DATA = 256,
+	SERR_PERSISTENT = 512,
+	SERR_PROTOCOL = 1024,
+	SERR_INTERNAL = 2048,
+	SERR_PHYRDY_CHG = 65536,
+	SERR_PHY_INT_ERR = 131072,
+	SERR_COMM_WAKE = 262144,
+	SERR_10B_8B_ERR = 524288,
+	SERR_DISPARITY = 1048576,
+	SERR_CRC = 2097152,
+	SERR_HANDSHAKE = 4194304,
+	SERR_LINK_SEQ_ERR = 8388608,
+	SERR_TRANS_ST_ERROR = 16777216,
+	SERR_UNRECOG_FIS = 33554432,
+	SERR_DEV_XCHG = 67108864,
+};
+
+enum ata_prot_flags {
+	ATA_PROT_FLAG_PIO = 1,
+	ATA_PROT_FLAG_DMA = 2,
+	ATA_PROT_FLAG_NCQ = 4,
+	ATA_PROT_FLAG_ATAPI = 8,
+	ATA_PROT_UNKNOWN = 255,
+	ATA_PROT_NODATA = 0,
+	ATA_PROT_PIO = 1,
+	ATA_PROT_DMA = 2,
+	ATA_PROT_NCQ_NODATA = 4,
+	ATA_PROT_NCQ = 6,
+	ATAPI_PROT_NODATA = 8,
+	ATAPI_PROT_PIO = 9,
+	ATAPI_PROT_DMA = 10,
+};
+
+struct ata_bmdma_prd {
+	__le32 addr;
+	__le32 flags_len;
+};
+
+enum {
+	ATA_MSG_DRV = 1,
+	ATA_MSG_INFO = 2,
+	ATA_MSG_PROBE = 4,
+	ATA_MSG_WARN = 8,
+	ATA_MSG_MALLOC = 16,
+	ATA_MSG_CTL = 32,
+	ATA_MSG_INTR = 64,
+	ATA_MSG_ERR = 128,
+};
+
+enum {
+	LIBATA_MAX_PRD = 128,
+	LIBATA_DUMB_MAX_PRD = 64,
+	ATA_DEF_QUEUE = 1,
+	ATA_MAX_QUEUE = 32,
+	ATA_TAG_INTERNAL = 32,
+	ATA_SHORT_PAUSE = 16,
+	ATAPI_MAX_DRAIN = 16384,
+	ATA_ALL_DEVICES = 3,
+	ATA_SHT_EMULATED = 1,
+	ATA_SHT_THIS_ID = 4294967295,
+	ATA_TFLAG_LBA48 = 1,
+	ATA_TFLAG_ISADDR = 2,
+	ATA_TFLAG_DEVICE = 4,
+	ATA_TFLAG_WRITE = 8,
+	ATA_TFLAG_LBA = 16,
+	ATA_TFLAG_FUA = 32,
+	ATA_TFLAG_POLLING = 64,
+	ATA_DFLAG_LBA = 1,
+	ATA_DFLAG_LBA48 = 2,
+	ATA_DFLAG_CDB_INTR = 4,
+	ATA_DFLAG_NCQ = 8,
+	ATA_DFLAG_FLUSH_EXT = 16,
+	ATA_DFLAG_ACPI_PENDING = 32,
+	ATA_DFLAG_ACPI_FAILED = 64,
+	ATA_DFLAG_AN = 128,
+	ATA_DFLAG_TRUSTED = 256,
+	ATA_DFLAG_DMADIR = 1024,
+	ATA_DFLAG_CFG_MASK = 4095,
+	ATA_DFLAG_PIO = 4096,
+	ATA_DFLAG_NCQ_OFF = 8192,
+	ATA_DFLAG_SLEEPING = 32768,
+	ATA_DFLAG_DUBIOUS_XFER = 65536,
+	ATA_DFLAG_NO_UNLOAD = 131072,
+	ATA_DFLAG_UNLOCK_HPA = 262144,
+	ATA_DFLAG_NCQ_SEND_RECV = 524288,
+	ATA_DFLAG_NCQ_PRIO = 1048576,
+	ATA_DFLAG_NCQ_PRIO_ENABLE = 2097152,
+	ATA_DFLAG_INIT_MASK = 16777215,
+	ATA_DFLAG_DETACH = 16777216,
+	ATA_DFLAG_DETACHED = 33554432,
+	ATA_DFLAG_DA = 67108864,
+	ATA_DFLAG_DEVSLP = 134217728,
+	ATA_DFLAG_ACPI_DISABLED = 268435456,
+	ATA_DFLAG_D_SENSE = 536870912,
+	ATA_DFLAG_ZAC = 1073741824,
+	ATA_DFLAG_FEATURES_MASK = 202899712,
+	ATA_DEV_UNKNOWN = 0,
+	ATA_DEV_ATA = 1,
+	ATA_DEV_ATA_UNSUP = 2,
+	ATA_DEV_ATAPI = 3,
+	ATA_DEV_ATAPI_UNSUP = 4,
+	ATA_DEV_PMP = 5,
+	ATA_DEV_PMP_UNSUP = 6,
+	ATA_DEV_SEMB = 7,
+	ATA_DEV_SEMB_UNSUP = 8,
+	ATA_DEV_ZAC = 9,
+	ATA_DEV_ZAC_UNSUP = 10,
+	ATA_DEV_NONE = 11,
+	ATA_LFLAG_NO_HRST = 2,
+	ATA_LFLAG_NO_SRST = 4,
+	ATA_LFLAG_ASSUME_ATA = 8,
+	ATA_LFLAG_ASSUME_SEMB = 16,
+	ATA_LFLAG_ASSUME_CLASS = 24,
+	ATA_LFLAG_NO_RETRY = 32,
+	ATA_LFLAG_DISABLED = 64,
+	ATA_LFLAG_SW_ACTIVITY = 128,
+	ATA_LFLAG_NO_LPM = 256,
+	ATA_LFLAG_RST_ONCE = 512,
+	ATA_LFLAG_CHANGED = 1024,
+	ATA_LFLAG_NO_DEBOUNCE_DELAY = 2048,
+	ATA_FLAG_SLAVE_POSS = 1,
+	ATA_FLAG_SATA = 2,
+	ATA_FLAG_NO_LPM = 4,
+	ATA_FLAG_NO_LOG_PAGE = 32,
+	ATA_FLAG_NO_ATAPI = 64,
+	ATA_FLAG_PIO_DMA = 128,
+	ATA_FLAG_PIO_LBA48 = 256,
+	ATA_FLAG_PIO_POLLING = 512,
+	ATA_FLAG_NCQ = 1024,
+	ATA_FLAG_NO_POWEROFF_SPINDOWN = 2048,
+	ATA_FLAG_NO_HIBERNATE_SPINDOWN = 4096,
+	ATA_FLAG_DEBUGMSG = 8192,
+	ATA_FLAG_FPDMA_AA = 16384,
+	ATA_FLAG_IGN_SIMPLEX = 32768,
+	ATA_FLAG_NO_IORDY = 65536,
+	ATA_FLAG_ACPI_SATA = 131072,
+	ATA_FLAG_AN = 262144,
+	ATA_FLAG_PMP = 524288,
+	ATA_FLAG_FPDMA_AUX = 1048576,
+	ATA_FLAG_EM = 2097152,
+	ATA_FLAG_SW_ACTIVITY = 4194304,
+	ATA_FLAG_NO_DIPM = 8388608,
+	ATA_FLAG_SAS_HOST = 16777216,
+	ATA_PFLAG_EH_PENDING = 1,
+	ATA_PFLAG_EH_IN_PROGRESS = 2,
+	ATA_PFLAG_FROZEN = 4,
+	ATA_PFLAG_RECOVERED = 8,
+	ATA_PFLAG_LOADING = 16,
+	ATA_PFLAG_SCSI_HOTPLUG = 64,
+	ATA_PFLAG_INITIALIZING = 128,
+	ATA_PFLAG_RESETTING = 256,
+	ATA_PFLAG_UNLOADING = 512,
+	ATA_PFLAG_UNLOADED = 1024,
+	ATA_PFLAG_SUSPENDED = 131072,
+	ATA_PFLAG_PM_PENDING = 262144,
+	ATA_PFLAG_INIT_GTM_VALID = 524288,
+	ATA_PFLAG_PIO32 = 1048576,
+	ATA_PFLAG_PIO32CHANGE = 2097152,
+	ATA_PFLAG_EXTERNAL = 4194304,
+	ATA_QCFLAG_ACTIVE = 1,
+	ATA_QCFLAG_DMAMAP = 2,
+	ATA_QCFLAG_IO = 8,
+	ATA_QCFLAG_RESULT_TF = 16,
+	ATA_QCFLAG_CLEAR_EXCL = 32,
+	ATA_QCFLAG_QUIET = 64,
+	ATA_QCFLAG_RETRY = 128,
+	ATA_QCFLAG_FAILED = 65536,
+	ATA_QCFLAG_SENSE_VALID = 131072,
+	ATA_QCFLAG_EH_SCHEDULED = 262144,
+	ATA_HOST_SIMPLEX = 1,
+	ATA_HOST_STARTED = 2,
+	ATA_HOST_PARALLEL_SCAN = 4,
+	ATA_HOST_IGNORE_ATA = 8,
+	ATA_HOST_NO_PART = 16,
+	ATA_HOST_NO_SSC = 32,
+	ATA_HOST_NO_DEVSLP = 64,
+	ATA_TMOUT_BOOT = 30000,
+	ATA_TMOUT_BOOT_QUICK = 7000,
+	ATA_TMOUT_INTERNAL_QUICK = 5000,
+	ATA_TMOUT_MAX_PARK = 30000,
+	ATA_TMOUT_FF_WAIT_LONG = 2000,
+	ATA_TMOUT_FF_WAIT = 800,
+	ATA_WAIT_AFTER_RESET = 150,
+	ATA_TMOUT_PMP_SRST_WAIT = 10000,
+	ATA_TMOUT_SPURIOUS_PHY = 10000,
+	BUS_UNKNOWN = 0,
+	BUS_DMA = 1,
+	BUS_IDLE = 2,
+	BUS_NOINTR = 3,
+	BUS_NODATA = 4,
+	BUS_TIMER = 5,
+	BUS_PIO = 6,
+	BUS_EDD = 7,
+	BUS_IDENTIFY = 8,
+	BUS_PACKET = 9,
+	PORT_UNKNOWN = 0,
+	PORT_ENABLED = 1,
+	PORT_DISABLED = 2,
+	ATA_NR_PIO_MODES = 7,
+	ATA_NR_MWDMA_MODES = 5,
+	ATA_NR_UDMA_MODES = 8,
+	ATA_SHIFT_PIO = 0,
+	ATA_SHIFT_MWDMA = 7,
+	ATA_SHIFT_UDMA = 12,
+	ATA_SHIFT_PRIO = 6,
+	ATA_PRIO_HIGH = 2,
+	ATA_DMA_PAD_SZ = 4,
+	ATA_ERING_SIZE = 32,
+	ATA_DEFER_LINK = 1,
+	ATA_DEFER_PORT = 2,
+	ATA_EH_DESC_LEN = 80,
+	ATA_EH_REVALIDATE = 1,
+	ATA_EH_SOFTRESET = 2,
+	ATA_EH_HARDRESET = 4,
+	ATA_EH_RESET = 6,
+	ATA_EH_ENABLE_LINK = 8,
+	ATA_EH_PARK = 32,
+	ATA_EH_PERDEV_MASK = 33,
+	ATA_EH_ALL_ACTIONS = 15,
+	ATA_EHI_HOTPLUGGED = 1,
+	ATA_EHI_NO_AUTOPSY = 4,
+	ATA_EHI_QUIET = 8,
+	ATA_EHI_NO_RECOVERY = 16,
+	ATA_EHI_DID_SOFTRESET = 65536,
+	ATA_EHI_DID_HARDRESET = 131072,
+	ATA_EHI_PRINTINFO = 262144,
+	ATA_EHI_SETMODE = 524288,
+	ATA_EHI_POST_SETMODE = 1048576,
+	ATA_EHI_DID_RESET = 196608,
+	ATA_EHI_TO_SLAVE_MASK = 12,
+	ATA_EH_MAX_TRIES = 5,
+	ATA_LINK_RESUME_TRIES = 5,
+	ATA_PROBE_MAX_TRIES = 3,
+	ATA_EH_DEV_TRIES = 3,
+	ATA_EH_PMP_TRIES = 5,
+	ATA_EH_PMP_LINK_TRIES = 3,
+	SATA_PMP_RW_TIMEOUT = 3000,
+	ATA_EH_CMD_TIMEOUT_TABLE_SIZE = 7,
+	ATA_HORKAGE_DIAGNOSTIC = 1,
+	ATA_HORKAGE_NODMA = 2,
+	ATA_HORKAGE_NONCQ = 4,
+	ATA_HORKAGE_MAX_SEC_128 = 8,
+	ATA_HORKAGE_BROKEN_HPA = 16,
+	ATA_HORKAGE_DISABLE = 32,
+	ATA_HORKAGE_HPA_SIZE = 64,
+	ATA_HORKAGE_IVB = 256,
+	ATA_HORKAGE_STUCK_ERR = 512,
+	ATA_HORKAGE_BRIDGE_OK = 1024,
+	ATA_HORKAGE_ATAPI_MOD16_DMA = 2048,
+	ATA_HORKAGE_FIRMWARE_WARN = 4096,
+	ATA_HORKAGE_1_5_GBPS = 8192,
+	ATA_HORKAGE_NOSETXFER = 16384,
+	ATA_HORKAGE_BROKEN_FPDMA_AA = 32768,
+	ATA_HORKAGE_DUMP_ID = 65536,
+	ATA_HORKAGE_MAX_SEC_LBA48 = 131072,
+	ATA_HORKAGE_ATAPI_DMADIR = 262144,
+	ATA_HORKAGE_NO_NCQ_TRIM = 524288,
+	ATA_HORKAGE_NOLPM = 1048576,
+	ATA_HORKAGE_WD_BROKEN_LPM = 2097152,
+	ATA_HORKAGE_ZERO_AFTER_TRIM = 4194304,
+	ATA_HORKAGE_NO_DMA_LOG = 8388608,
+	ATA_HORKAGE_NOTRIM = 16777216,
+	ATA_HORKAGE_MAX_SEC_1024 = 33554432,
+	ATA_HORKAGE_MAX_TRIM_128M = 67108864,
+	ATA_HORKAGE_NO_NCQ_ON_ATI = 134217728,
+	ATA_DMA_MASK_ATA = 1,
+	ATA_DMA_MASK_ATAPI = 2,
+	ATA_DMA_MASK_CFA = 4,
+	ATAPI_READ = 0,
+	ATAPI_WRITE = 1,
+	ATAPI_READ_CD = 2,
+	ATAPI_PASS_THRU = 3,
+	ATAPI_MISC = 4,
+	ATA_TIMING_SETUP = 1,
+	ATA_TIMING_ACT8B = 2,
+	ATA_TIMING_REC8B = 4,
+	ATA_TIMING_CYC8B = 8,
+	ATA_TIMING_8BIT = 14,
+	ATA_TIMING_ACTIVE = 16,
+	ATA_TIMING_RECOVER = 32,
+	ATA_TIMING_DMACK_HOLD = 64,
+	ATA_TIMING_CYCLE = 128,
+	ATA_TIMING_UDMA = 256,
+	ATA_TIMING_ALL = 511,
+	ATA_ACPI_FILTER_SETXFER = 1,
+	ATA_ACPI_FILTER_LOCK = 2,
+	ATA_ACPI_FILTER_DIPM = 4,
+	ATA_ACPI_FILTER_FPDMA_OFFSET = 8,
+	ATA_ACPI_FILTER_FPDMA_AA = 16,
+	ATA_ACPI_FILTER_DEFAULT = 7,
+};
+
+enum ata_xfer_mask {
+	ATA_MASK_PIO = 127,
+	ATA_MASK_MWDMA = 3968,
+	ATA_MASK_UDMA = 1044480,
+};
+
+enum ata_completion_errors {
+	AC_ERR_OK = 0,
+	AC_ERR_DEV = 1,
+	AC_ERR_HSM = 2,
+	AC_ERR_TIMEOUT = 4,
+	AC_ERR_MEDIA = 8,
+	AC_ERR_ATA_BUS = 16,
+	AC_ERR_HOST_BUS = 32,
+	AC_ERR_SYSTEM = 64,
+	AC_ERR_INVALID = 128,
+	AC_ERR_OTHER = 256,
+	AC_ERR_NODEV_HINT = 512,
+	AC_ERR_NCQ = 1024,
+};
+
+enum ata_lpm_policy {
+	ATA_LPM_UNKNOWN = 0,
+	ATA_LPM_MAX_POWER = 1,
+	ATA_LPM_MED_POWER = 2,
+	ATA_LPM_MED_POWER_WITH_DIPM = 3,
+	ATA_LPM_MIN_POWER_WITH_PARTIAL = 4,
+	ATA_LPM_MIN_POWER = 5,
+};
+
+struct ata_queued_cmd;
+
+typedef void (*ata_qc_cb_t)(struct ata_queued_cmd *);
+
+struct ata_taskfile {
+	long unsigned int flags;
+	u8 protocol;
+	u8 ctl;
+	u8 hob_feature;
+	u8 hob_nsect;
+	u8 hob_lbal;
+	u8 hob_lbam;
+	u8 hob_lbah;
+	union {
+		u8 error;
+		u8 feature;
+	};
+	u8 nsect;
+	u8 lbal;
+	u8 lbam;
+	u8 lbah;
+	u8 device;
+	union {
+		u8 status;
+		u8 command;
+	};
+	u32 auxiliary;
+};
+
+struct ata_port;
+
+struct ata_device;
+
+struct ata_queued_cmd {
+	struct ata_port *ap;
+	struct ata_device *dev;
+	struct scsi_cmnd *scsicmd;
+	void (*scsidone)(struct scsi_cmnd *);
+	struct ata_taskfile tf;
+	u8 cdb[16];
+	long unsigned int flags;
+	unsigned int tag;
+	unsigned int hw_tag;
+	unsigned int n_elem;
+	unsigned int orig_n_elem;
+	int dma_dir;
+	unsigned int sect_size;
+	unsigned int nbytes;
+	unsigned int extrabytes;
+	unsigned int curbytes;
+	struct scatterlist sgent;
+	struct scatterlist *sg;
+	struct scatterlist *cursg;
+	unsigned int cursg_ofs;
+	unsigned int err_mask;
+	struct ata_taskfile result_tf;
+	ata_qc_cb_t complete_fn;
+	void *private_data;
+	void *lldd_task;
+};
+
+struct ata_link;
+
+typedef int (*ata_prereset_fn_t)(struct ata_link *, long unsigned int);
+
+struct ata_eh_info {
+	struct ata_device *dev;
+	u32 serror;
+	unsigned int err_mask;
+	unsigned int action;
+	unsigned int dev_action[2];
+	unsigned int flags;
+	unsigned int probe_mask;
+	char desc[80];
+	int desc_len;
+};
+
+struct ata_eh_context {
+	struct ata_eh_info i;
+	int tries[2];
+	int cmd_timeout_idx[14];
+	unsigned int classes[2];
+	unsigned int did_probe_mask;
+	unsigned int unloaded_mask;
+	unsigned int saved_ncq_enabled;
+	u8 saved_xfer_mode[2];
+	long unsigned int last_reset;
+};
+
+struct ata_ering_entry {
+	unsigned int eflags;
+	unsigned int err_mask;
+	u64 timestamp;
+};
+
+struct ata_ering {
+	int cursor;
+	struct ata_ering_entry ring[32];
+};
+
+struct ata_device {
+	struct ata_link *link;
+	unsigned int devno;
+	unsigned int horkage;
+	long unsigned int flags;
+	struct scsi_device *sdev;
+	void *private_data;
+	union acpi_object *gtf_cache;
+	unsigned int gtf_filter;
+	void *zpodd;
+	struct device tdev;
+	u64 n_sectors;
+	u64 n_native_sectors;
+	unsigned int class;
+	long unsigned int unpark_deadline;
+	u8 pio_mode;
+	u8 dma_mode;
+	u8 xfer_mode;
+	unsigned int xfer_shift;
+	unsigned int multi_count;
+	unsigned int max_sectors;
+	unsigned int cdb_len;
+	long unsigned int pio_mask;
+	long unsigned int mwdma_mask;
+	long unsigned int udma_mask;
+	u16 cylinders;
+	u16 heads;
+	u16 sectors;
+	union {
+		u16 id[256];
+		u32 gscr[128];
+	};
+	u8 devslp_timing[8];
+	u8 ncq_send_recv_cmds[20];
+	u8 ncq_non_data_cmds[64];
+	u32 zac_zoned_cap;
+	u32 zac_zones_optimal_open;
+	u32 zac_zones_optimal_nonseq;
+	u32 zac_zones_max_open;
+	int spdn_cnt;
+	struct ata_ering ering;
+	long: 64;
+};
+
+struct ata_link {
+	struct ata_port *ap;
+	int pmp;
+	struct device tdev;
+	unsigned int active_tag;
+	u32 sactive;
+	unsigned int flags;
+	u32 saved_scontrol;
+	unsigned int hw_sata_spd_limit;
+	unsigned int sata_spd_limit;
+	unsigned int sata_spd;
+	enum ata_lpm_policy lpm_policy;
+	struct ata_eh_info eh_info;
+	struct ata_eh_context eh_context;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct ata_device device[2];
+	long unsigned int last_lpm_change;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+typedef int (*ata_reset_fn_t)(struct ata_link *, unsigned int *, long unsigned int);
+
+typedef void (*ata_postreset_fn_t)(struct ata_link *, unsigned int *);
+
+enum sw_activity {
+	OFF = 0,
+	BLINK_ON = 1,
+	BLINK_OFF = 2,
+};
+
+struct ata_ioports {
+	void *cmd_addr;
+	void *data_addr;
+	void *error_addr;
+	void *feature_addr;
+	void *nsect_addr;
+	void *lbal_addr;
+	void *lbam_addr;
+	void *lbah_addr;
+	void *device_addr;
+	void *status_addr;
+	void *command_addr;
+	void *altstatus_addr;
+	void *ctl_addr;
+	void *bmdma_addr;
+	void *scr_addr;
+};
+
+struct ata_port_operations;
+
+struct ata_host {
+	spinlock_t lock;
+	struct device *dev;
+	void * const *iomap;
+	unsigned int n_ports;
+	unsigned int n_tags;
+	void *private_data;
+	struct ata_port_operations *ops;
+	long unsigned int flags;
+	struct kref kref;
+	struct mutex eh_mutex;
+	struct task_struct *eh_owner;
+	struct ata_port *simplex_claimed;
+	struct ata_port *ports[0];
+};
+
+struct ata_port_operations {
+	int (*qc_defer)(struct ata_queued_cmd *);
+	int (*check_atapi_dma)(struct ata_queued_cmd *);
+	enum ata_completion_errors (*qc_prep)(struct ata_queued_cmd *);
+	unsigned int (*qc_issue)(struct ata_queued_cmd *);
+	bool (*qc_fill_rtf)(struct ata_queued_cmd *);
+	int (*cable_detect)(struct ata_port *);
+	long unsigned int (*mode_filter)(struct ata_device *, long unsigned int);
+	void (*set_piomode)(struct ata_port *, struct ata_device *);
+	void (*set_dmamode)(struct ata_port *, struct ata_device *);
+	int (*set_mode)(struct ata_link *, struct ata_device **);
+	unsigned int (*read_id)(struct ata_device *, struct ata_taskfile *, u16 *);
+	void (*dev_config)(struct ata_device *);
+	void (*freeze)(struct ata_port *);
+	void (*thaw)(struct ata_port *);
+	ata_prereset_fn_t prereset;
+	ata_reset_fn_t softreset;
+	ata_reset_fn_t hardreset;
+	ata_postreset_fn_t postreset;
+	ata_prereset_fn_t pmp_prereset;
+	ata_reset_fn_t pmp_softreset;
+	ata_reset_fn_t pmp_hardreset;
+	ata_postreset_fn_t pmp_postreset;
+	void (*error_handler)(struct ata_port *);
+	void (*lost_interrupt)(struct ata_port *);
+	void (*post_internal_cmd)(struct ata_queued_cmd *);
+	void (*sched_eh)(struct ata_port *);
+	void (*end_eh)(struct ata_port *);
+	int (*scr_read)(struct ata_link *, unsigned int, u32 *);
+	int (*scr_write)(struct ata_link *, unsigned int, u32);
+	void (*pmp_attach)(struct ata_port *);
+	void (*pmp_detach)(struct ata_port *);
+	int (*set_lpm)(struct ata_link *, enum ata_lpm_policy, unsigned int);
+	int (*port_suspend)(struct ata_port *, pm_message_t);
+	int (*port_resume)(struct ata_port *);
+	int (*port_start)(struct ata_port *);
+	void (*port_stop)(struct ata_port *);
+	void (*host_stop)(struct ata_host *);
+	void (*sff_dev_select)(struct ata_port *, unsigned int);
+	void (*sff_set_devctl)(struct ata_port *, u8);
+	u8 (*sff_check_status)(struct ata_port *);
+	u8 (*sff_check_altstatus)(struct ata_port *);
+	void (*sff_tf_load)(struct ata_port *, const struct ata_taskfile *);
+	void (*sff_tf_read)(struct ata_port *, struct ata_taskfile *);
+	void (*sff_exec_command)(struct ata_port *, const struct ata_taskfile *);
+	unsigned int (*sff_data_xfer)(struct ata_queued_cmd *, unsigned char *, unsigned int, int);
+	void (*sff_irq_on)(struct ata_port *);
+	bool (*sff_irq_check)(struct ata_port *);
+	void (*sff_irq_clear)(struct ata_port *);
+	void (*sff_drain_fifo)(struct ata_queued_cmd *);
+	void (*bmdma_setup)(struct ata_queued_cmd *);
+	void (*bmdma_start)(struct ata_queued_cmd *);
+	void (*bmdma_stop)(struct ata_queued_cmd *);
+	u8 (*bmdma_status)(struct ata_port *);
+	ssize_t (*em_show)(struct ata_port *, char *);
+	ssize_t (*em_store)(struct ata_port *, const char *, size_t);
+	ssize_t (*sw_activity_show)(struct ata_device *, char *);
+	ssize_t (*sw_activity_store)(struct ata_device *, enum sw_activity);
+	ssize_t (*transmit_led_message)(struct ata_port *, u32, ssize_t);
+	void (*phy_reset)(struct ata_port *);
+	void (*eng_timeout)(struct ata_port *);
+	const struct ata_port_operations *inherits;
+};
+
+struct ata_port_stats {
+	long unsigned int unhandled_irq;
+	long unsigned int idle_irq;
+	long unsigned int rw_reqbuf;
+};
+
+struct ata_acpi_drive {
+	u32 pio;
+	u32 dma;
+};
+
+struct ata_acpi_gtm {
+	struct ata_acpi_drive drive[2];
+	u32 flags;
+};
+
+struct ata_port {
+	struct Scsi_Host *scsi_host;
+	struct ata_port_operations *ops;
+	spinlock_t *lock;
+	long unsigned int flags;
+	unsigned int pflags;
+	unsigned int print_id;
+	unsigned int local_port_no;
+	unsigned int port_no;
+	struct ata_ioports ioaddr;
+	u8 ctl;
+	u8 last_ctl;
+	struct ata_link *sff_pio_task_link;
+	struct delayed_work sff_pio_task;
+	struct ata_bmdma_prd *bmdma_prd;
+	dma_addr_t bmdma_prd_dma;
+	unsigned int pio_mask;
+	unsigned int mwdma_mask;
+	unsigned int udma_mask;
+	unsigned int cbl;
+	struct ata_queued_cmd qcmd[33];
+	long unsigned int sas_tag_allocated;
+	u64 qc_active;
+	int nr_active_links;
+	unsigned int sas_last_tag;
+	long: 64;
+	struct ata_link link;
+	struct ata_link *slave_link;
+	int nr_pmp_links;
+	struct ata_link *pmp_link;
+	struct ata_link *excl_link;
+	struct ata_port_stats stats;
+	struct ata_host *host;
+	struct device *dev;
+	struct device tdev;
+	struct mutex scsi_scan_mutex;
+	struct delayed_work hotplug_task;
+	struct delayed_work scsi_rescan_task;
+	unsigned int hsm_task_state;
+	u32 msg_enable;
+	struct list_head eh_done_q;
+	wait_queue_head_t eh_wait_q;
+	int eh_tries;
+	struct completion park_req_pending;
+	pm_message_t pm_mesg;
+	enum ata_lpm_policy target_lpm_policy;
+	struct timer_list fastdrain_timer;
+	long unsigned int fastdrain_cnt;
+	async_cookie_t cookie;
+	int em_message_type;
+	void *private_data;
+	struct ata_acpi_gtm __acpi_init_gtm;
+	long: 0;
+	u8 sector_buf[512];
+};
+
+struct ata_port_info {
+	long unsigned int flags;
+	long unsigned int link_flags;
+	long unsigned int pio_mask;
+	long unsigned int mwdma_mask;
+	long unsigned int udma_mask;
+	struct ata_port_operations *port_ops;
+	void *private_data;
+};
+
+struct ata_timing {
+	short unsigned int mode;
+	short unsigned int setup;
+	short unsigned int act8b;
+	short unsigned int rec8b;
+	short unsigned int cyc8b;
+	short unsigned int active;
+	short unsigned int recover;
+	short unsigned int dmack_hold;
+	short unsigned int cycle;
+	short unsigned int udma;
+};
+
+struct pci_bits {
+	unsigned int reg;
+	unsigned int width;
+	long unsigned int mask;
+	long unsigned int val;
+};
+
+enum ata_link_iter_mode {
+	ATA_LITER_EDGE = 0,
+	ATA_LITER_HOST_FIRST = 1,
+	ATA_LITER_PMP_FIRST = 2,
+};
+
+enum ata_dev_iter_mode {
+	ATA_DITER_ENABLED = 0,
+	ATA_DITER_ENABLED_REVERSE = 1,
+	ATA_DITER_ALL = 2,
+	ATA_DITER_ALL_REVERSE = 3,
+};
+
+struct trace_event_raw_ata_qc_issue {
+	struct trace_entry ent;
+	unsigned int ata_port;
+	unsigned int ata_dev;
+	unsigned int tag;
+	unsigned char cmd;
+	unsigned char dev;
+	unsigned char lbal;
+	unsigned char lbam;
+	unsigned char lbah;
+	unsigned char nsect;
+	unsigned char feature;
+	unsigned char hob_lbal;
+	unsigned char hob_lbam;
+	unsigned char hob_lbah;
+	unsigned char hob_nsect;
+	unsigned char hob_feature;
+	unsigned char ctl;
+	unsigned char proto;
+	long unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ata_qc_complete_template {
+	struct trace_entry ent;
+	unsigned int ata_port;
+	unsigned int ata_dev;
+	unsigned int tag;
+	unsigned char status;
+	unsigned char dev;
+	unsigned char lbal;
+	unsigned char lbam;
+	unsigned char lbah;
+	unsigned char nsect;
+	unsigned char error;
+	unsigned char hob_lbal;
+	unsigned char hob_lbam;
+	unsigned char hob_lbah;
+	unsigned char hob_nsect;
+	unsigned char hob_feature;
+	unsigned char ctl;
+	long unsigned int flags;
+	char __data[0];
+};
+
+struct trace_event_raw_ata_eh_link_autopsy {
+	struct trace_entry ent;
+	unsigned int ata_port;
+	unsigned int ata_dev;
+	unsigned int eh_action;
+	unsigned int eh_err_mask;
+	char __data[0];
+};
+
+struct trace_event_raw_ata_eh_link_autopsy_qc {
+	struct trace_entry ent;
+	unsigned int ata_port;
+	unsigned int ata_dev;
+	unsigned int tag;
+	unsigned int qc_flags;
+	unsigned int eh_err_mask;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_ata_qc_issue {};
+
+struct trace_event_data_offsets_ata_qc_complete_template {};
+
+struct trace_event_data_offsets_ata_eh_link_autopsy {};
+
+struct trace_event_data_offsets_ata_eh_link_autopsy_qc {};
+
+typedef void (*btf_trace_ata_qc_issue)(void *, struct ata_queued_cmd *);
+
+typedef void (*btf_trace_ata_qc_complete_internal)(void *, struct ata_queued_cmd *);
+
+typedef void (*btf_trace_ata_qc_complete_failed)(void *, struct ata_queued_cmd *);
+
+typedef void (*btf_trace_ata_qc_complete_done)(void *, struct ata_queued_cmd *);
+
+typedef void (*btf_trace_ata_eh_link_autopsy)(void *, struct ata_device *, unsigned int, unsigned int);
+
+typedef void (*btf_trace_ata_eh_link_autopsy_qc)(void *, struct ata_queued_cmd *);
+
+enum {
+	ATA_READID_POSTRESET = 1,
+	ATA_DNXFER_PIO = 0,
+	ATA_DNXFER_DMA = 1,
+	ATA_DNXFER_40C = 2,
+	ATA_DNXFER_FORCE_PIO = 3,
+	ATA_DNXFER_FORCE_PIO0 = 4,
+	ATA_DNXFER_QUIET = 2147483648,
+};
+
+struct ata_force_param {
+	const char *name;
+	u8 cbl;
+	u8 spd_limit;
+	long unsigned int xfer_mask;
+	unsigned int horkage_on;
+	unsigned int horkage_off;
+	u16 lflags;
+};
+
+struct ata_force_ent {
+	int port;
+	int device;
+	struct ata_force_param param;
+};
+
+struct ata_xfer_ent {
+	int shift;
+	int bits;
+	u8 base;
+};
+
+struct ata_blacklist_entry {
+	const char *model_num;
+	const char *model_rev;
+	long unsigned int horkage;
+};
+
+typedef unsigned int (*ata_xlat_func_t)(struct ata_queued_cmd *);
+
+struct ata_scsi_args {
+	struct ata_device *dev;
+	u16 *id;
+	struct scsi_cmnd *cmd;
+};
+
+enum ata_lpm_hints {
+	ATA_LPM_EMPTY = 1,
+	ATA_LPM_HIPM = 2,
+	ATA_LPM_WAKE_ONLY = 4,
+};
+
+enum {
+	ATA_EH_SPDN_NCQ_OFF = 1,
+	ATA_EH_SPDN_SPEED_DOWN = 2,
+	ATA_EH_SPDN_FALLBACK_TO_PIO = 4,
+	ATA_EH_SPDN_KEEP_ERRORS = 8,
+	ATA_EFLAG_IS_IO = 1,
+	ATA_EFLAG_DUBIOUS_XFER = 2,
+	ATA_EFLAG_OLD_ER = 2147483648,
+	ATA_ECAT_NONE = 0,
+	ATA_ECAT_ATA_BUS = 1,
+	ATA_ECAT_TOUT_HSM = 2,
+	ATA_ECAT_UNK_DEV = 3,
+	ATA_ECAT_DUBIOUS_NONE = 4,
+	ATA_ECAT_DUBIOUS_ATA_BUS = 5,
+	ATA_ECAT_DUBIOUS_TOUT_HSM = 6,
+	ATA_ECAT_DUBIOUS_UNK_DEV = 7,
+	ATA_ECAT_NR = 8,
+	ATA_EH_CMD_DFL_TIMEOUT = 5000,
+	ATA_EH_RESET_COOL_DOWN = 5000,
+	ATA_EH_PRERESET_TIMEOUT = 10000,
+	ATA_EH_FASTDRAIN_INTERVAL = 3000,
+	ATA_EH_UA_TRIES = 5,
+	ATA_EH_PROBE_TRIAL_INTERVAL = 60000,
+	ATA_EH_PROBE_TRIALS = 2,
+};
+
+struct ata_eh_cmd_timeout_ent {
+	const u8 *commands;
+	const long unsigned int *timeouts;
+};
+
+struct speed_down_verdict_arg {
+	u64 since;
+	int xfer_ok;
+	int nr_errors[8];
+};
+
+struct ata_internal {
+	struct scsi_transport_template t;
+	struct device_attribute private_port_attrs[3];
+	struct device_attribute private_link_attrs[3];
+	struct device_attribute private_dev_attrs[9];
+	struct transport_container link_attr_cont;
+	struct transport_container dev_attr_cont;
+	struct device_attribute *link_attrs[4];
+	struct device_attribute *port_attrs[4];
+	struct device_attribute *dev_attrs[10];
+};
+
+struct ata_show_ering_arg {
+	char *buf;
+	int written;
+};
+
+enum hsm_task_states {
+	HSM_ST_IDLE = 0,
+	HSM_ST_FIRST = 1,
+	HSM_ST = 2,
+	HSM_ST_LAST = 3,
+	HSM_ST_ERR = 4,
+};
+
+struct ata_acpi_gtf {
+	u8 tf[7];
+};
+
+struct ata_acpi_hotplug_context {
+	struct acpi_hotplug_context hp;
+	union {
+		struct ata_port *ap;
+		struct ata_device *dev;
+	} data;
+};
+
+struct rm_feature_desc {
+	__be16 feature_code;
+	__u8 curr: 1;
+	__u8 persistent: 1;
+	__u8 feature_version: 4;
+	__u8 reserved1: 2;
+	__u8 add_len;
+	__u8 lock: 1;
+	__u8 dbml: 1;
+	__u8 pvnt_jmpr: 1;
+	__u8 eject: 1;
+	__u8 load: 1;
+	__u8 mech_type: 3;
+	__u8 reserved2;
+	__u8 reserved3;
+	__u8 reserved4;
+};
+
+enum odd_mech_type {
+	ODD_MECH_TYPE_SLOT = 0,
+	ODD_MECH_TYPE_DRAWER = 1,
+	ODD_MECH_TYPE_UNSUPPORTED = 2,
+};
+
+struct zpodd {
+	enum odd_mech_type mech_type;
+	struct ata_device *dev;
+	bool from_notify;
+	bool zp_ready;
+	long unsigned int last_ready;
+	bool zp_sampled;
+	bool powered_off;
+};
+
+enum {
+	PIIX_IOCFG = 84,
+	ICH5_PMR = 144,
+	ICH5_PCS = 146,
+	PIIX_SIDPR_BAR = 5,
+	PIIX_SIDPR_LEN = 16,
+	PIIX_SIDPR_IDX = 0,
+	PIIX_SIDPR_DATA = 4,
+	PIIX_FLAG_CHECKINTR = 268435456,
+	PIIX_FLAG_SIDPR = 536870912,
+	PIIX_PATA_FLAGS = 1,
+	PIIX_SATA_FLAGS = 268435458,
+	PIIX_FLAG_PIO16 = 1073741824,
+	PIIX_80C_PRI = 48,
+	PIIX_80C_SEC = 192,
+	P0 = 0,
+	P1 = 1,
+	P2 = 2,
+	P3 = 3,
+	IDE = 4294967295,
+	NA = 4294967294,
+	RV = 4294967293,
+	PIIX_AHCI_DEVICE = 6,
+	PIIX_HOST_BROKEN_SUSPEND = 16777216,
+};
+
+enum piix_controller_ids {
+	piix_pata_mwdma = 0,
+	piix_pata_33 = 1,
+	ich_pata_33 = 2,
+	ich_pata_66 = 3,
+	ich_pata_100 = 4,
+	ich_pata_100_nomwdma1 = 5,
+	ich5_sata = 6,
+	ich6_sata = 7,
+	ich6m_sata = 8,
+	ich8_sata = 9,
+	ich8_2port_sata = 10,
+	ich8m_apple_sata = 11,
+	tolapai_sata = 12,
+	piix_pata_vmw = 13,
+	ich8_sata_snb = 14,
+	ich8_2port_sata_snb = 15,
+	ich8_2port_sata_byt = 16,
+};
+
+struct piix_map_db {
+	const u32 mask;
+	const u16 port_enable;
+	const int map[0];
+};
+
+struct piix_host_priv {
+	const int *map;
+	u32 saved_iocfg;
+	void *sidpr;
+};
+
+struct ich_laptop {
+	u16 device;
+	u16 subvendor;
+	u16 subdevice;
+};
+
+struct sis_chipset {
+	u16 device;
+	const struct ata_port_info *info;
+};
+
+struct sis_laptop {
+	u16 device;
+	u16 subvendor;
+	u16 subdevice;
+};
+
+enum {
+	ATA_GEN_CLASS_MATCH = 1,
+	ATA_GEN_FORCE_DMA = 2,
+	ATA_GEN_INTEL_IDER = 4,
+};
+
 struct mipi_dsi_msg {
 	u8 channel;
 	u8 type;
@@ -76308,6 +102046,7 @@ enum mipi_dsi_pixel_format {
 struct mipi_dsi_device {
 	struct mipi_dsi_host *host;
 	struct device dev;
+	bool attached;
 	char name[20];
 	unsigned int channel;
 	unsigned int lanes;
@@ -76506,9 +102245,7 @@ struct vga_device {
 	unsigned int io_norm_cnt;
 	unsigned int mem_norm_cnt;
 	bool bridge_has_one_vga;
-	void *cookie;
-	void (*irq_set_state)(void *, bool);
-	unsigned int (*set_vga_decode)(void *, bool);
+	unsigned int (*set_decode)(struct pci_dev *, bool);
 };
 
 struct vga_arb_user_card {
@@ -76543,7 +102280,7 @@ enum vga_switcheroo_client_id {
 };
 
 struct vga_switcheroo_handler {
-	int (*init)();
+	int (*init)(void);
 	int (*switchto)(enum vga_switcheroo_client_id);
 	int (*switch_ddc)(enum vga_switcheroo_client_id);
 	int (*power_state)(enum vga_switcheroo_client_id, enum vga_switcheroo_state);
@@ -76582,2108 +102319,6 @@ struct vgasr_priv {
 	int old_ddc_owner;
 };
 
-struct cb_id {
-	__u32 idx;
-	__u32 val;
-};
-
-struct cn_msg {
-	struct cb_id id;
-	__u32 seq;
-	__u32 ack;
-	__u16 len;
-	__u16 flags;
-	__u8 data[0];
-};
-
-struct cn_queue_dev {
-	atomic_t refcnt;
-	unsigned char name[32];
-	struct list_head queue_list;
-	spinlock_t queue_lock;
-	struct sock *nls;
-};
-
-struct cn_callback_id {
-	unsigned char name[32];
-	struct cb_id id;
-};
-
-struct cn_callback_entry {
-	struct list_head callback_entry;
-	refcount_t refcnt;
-	struct cn_queue_dev *pdev;
-	struct cn_callback_id id;
-	void (*callback)(struct cn_msg *, struct netlink_skb_parms *);
-	u32 seq;
-	u32 group;
-};
-
-struct cn_dev {
-	struct cb_id id;
-	u32 seq;
-	u32 groups;
-	struct sock *nls;
-	struct cn_queue_dev *cbdev;
-};
-
-enum proc_cn_mcast_op {
-	PROC_CN_MCAST_LISTEN = 1,
-	PROC_CN_MCAST_IGNORE = 2,
-};
-
-struct fork_proc_event {
-	__kernel_pid_t parent_pid;
-	__kernel_pid_t parent_tgid;
-	__kernel_pid_t child_pid;
-	__kernel_pid_t child_tgid;
-};
-
-struct exec_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-};
-
-struct id_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-	union {
-		__u32 ruid;
-		__u32 rgid;
-	} r;
-	union {
-		__u32 euid;
-		__u32 egid;
-	} e;
-};
-
-struct sid_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-};
-
-struct ptrace_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-	__kernel_pid_t tracer_pid;
-	__kernel_pid_t tracer_tgid;
-};
-
-struct comm_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-	char comm[16];
-};
-
-struct coredump_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-	__kernel_pid_t parent_pid;
-	__kernel_pid_t parent_tgid;
-};
-
-struct exit_proc_event {
-	__kernel_pid_t process_pid;
-	__kernel_pid_t process_tgid;
-	__u32 exit_code;
-	__u32 exit_signal;
-	__kernel_pid_t parent_pid;
-	__kernel_pid_t parent_tgid;
-};
-
-struct proc_event {
-	enum what what;
-	__u32 cpu;
-	__u64 timestamp_ns;
-	union {
-		struct {
-			__u32 err;
-		} ack;
-		struct fork_proc_event fork;
-		struct exec_proc_event exec;
-		struct id_proc_event id;
-		struct sid_proc_event sid;
-		struct ptrace_proc_event ptrace;
-		struct comm_proc_event comm;
-		struct coredump_proc_event coredump;
-		struct exit_proc_event exit;
-	} event_data;
-};
-
-struct local_event {
-	local_lock_t lock;
-	__u32 count;
-};
-
-struct component_ops {
-	int (*bind)(struct device *, struct device *, void *);
-	void (*unbind)(struct device *, struct device *, void *);
-};
-
-struct component_master_ops {
-	int (*bind)(struct device *);
-	void (*unbind)(struct device *);
-};
-
-struct component;
-
-struct component_match_array {
-	void *data;
-	int (*compare)(struct device *, void *);
-	int (*compare_typed)(struct device *, int, void *);
-	void (*release)(struct device *, void *);
-	struct component *component;
-	bool duplicate;
-};
-
-struct master;
-
-struct component {
-	struct list_head node;
-	struct master *master;
-	bool bound;
-	const struct component_ops *ops;
-	int subcomponent;
-	struct device *dev;
-};
-
-struct component_match {
-	size_t alloc;
-	size_t num;
-	struct component_match_array *compare;
-};
-
-struct master {
-	struct list_head node;
-	bool bound;
-	const struct component_master_ops *ops;
-	struct device *dev;
-	struct component_match *match;
-	struct dentry *dentry;
-};
-
-struct wake_irq {
-	struct device *dev;
-	unsigned int status;
-	int irq;
-	const char *name;
-};
-
-enum dpm_order {
-	DPM_ORDER_NONE = 0,
-	DPM_ORDER_DEV_AFTER_PARENT = 1,
-	DPM_ORDER_PARENT_BEFORE_DEV = 2,
-	DPM_ORDER_DEV_LAST = 3,
-};
-
-struct subsys_private {
-	struct kset subsys;
-	struct kset *devices_kset;
-	struct list_head interfaces;
-	struct mutex mutex;
-	struct kset *drivers_kset;
-	struct klist klist_devices;
-	struct klist klist_drivers;
-	struct blocking_notifier_head bus_notifier;
-	unsigned int drivers_autoprobe: 1;
-	struct bus_type *bus;
-	struct kset glue_dirs;
-	struct class *class;
-};
-
-struct driver_private {
-	struct kobject kobj;
-	struct klist klist_devices;
-	struct klist_node knode_bus;
-	struct module_kobject *mkobj;
-	struct device_driver *driver;
-};
-
-struct device_private {
-	struct klist klist_children;
-	struct klist_node knode_parent;
-	struct klist_node knode_driver;
-	struct klist_node knode_bus;
-	struct klist_node knode_class;
-	struct list_head deferred_probe;
-	struct device_driver *async_driver;
-	char *deferred_probe_reason;
-	struct device *device;
-	u8 dead: 1;
-};
-
-union device_attr_group_devres {
-	const struct attribute_group *group;
-	const struct attribute_group **groups;
-};
-
-struct class_dir {
-	struct kobject kobj;
-	struct class *class;
-};
-
-struct root_device {
-	struct device dev;
-	struct module *owner;
-};
-
-struct subsys_dev_iter {
-	struct klist_iter ki;
-	const struct device_type *type;
-};
-
-struct device_attach_data {
-	struct device *dev;
-	bool check_async;
-	bool want_async;
-	bool have_async;
-};
-
-struct class_attribute_string {
-	struct class_attribute attr;
-	char *str;
-};
-
-struct class_compat {
-	struct kobject *kobj;
-};
-
-struct platform_object {
-	struct platform_device pdev;
-	char name[0];
-};
-
-struct cpu_attr {
-	struct device_attribute attr;
-	const struct cpumask * const map;
-};
-
-typedef struct kobject *kobj_probe_t(dev_t, int *, void *);
-
-struct probe {
-	struct probe *next;
-	dev_t dev;
-	long unsigned int range;
-	struct module *owner;
-	kobj_probe_t *get;
-	int (*lock)(dev_t, void *);
-	void *data;
-};
-
-struct kobj_map {
-	struct probe *probes[255];
-	struct mutex *lock;
-};
-
-typedef int (*dr_match_t)(struct device *, void *, void *);
-
-struct devres_node {
-	struct list_head entry;
-	dr_release_t release;
-};
-
-struct devres {
-	struct devres_node node;
-	u8 data[0];
-};
-
-struct devres_group {
-	struct devres_node node[2];
-	void *id;
-	int color;
-};
-
-struct action_devres {
-	void *data;
-	void (*action)(void *);
-};
-
-struct pages_devres {
-	long unsigned int addr;
-	unsigned int order;
-};
-
-struct attribute_container {
-	struct list_head node;
-	struct klist containers;
-	struct class *class;
-	const struct attribute_group *grp;
-	struct device_attribute **attrs;
-	int (*match)(struct attribute_container *, struct device *);
-	long unsigned int flags;
-};
-
-struct internal_container {
-	struct klist_node node;
-	struct attribute_container *cont;
-	struct device classdev;
-};
-
-struct transport_container;
-
-struct transport_class {
-	struct class class;
-	int (*setup)(struct transport_container *, struct device *, struct device *);
-	int (*configure)(struct transport_container *, struct device *, struct device *);
-	int (*remove)(struct transport_container *, struct device *, struct device *);
-};
-
-struct transport_container {
-	struct attribute_container ac;
-	const struct attribute_group *statistics;
-};
-
-struct anon_transport_class {
-	struct transport_class tclass;
-	struct attribute_container container;
-};
-
-typedef void * (*devcon_match_fn_t)(struct fwnode_handle *, const char *, void *);
-
-enum ethtool_link_mode_bit_indices {
-	ETHTOOL_LINK_MODE_10baseT_Half_BIT = 0,
-	ETHTOOL_LINK_MODE_10baseT_Full_BIT = 1,
-	ETHTOOL_LINK_MODE_100baseT_Half_BIT = 2,
-	ETHTOOL_LINK_MODE_100baseT_Full_BIT = 3,
-	ETHTOOL_LINK_MODE_1000baseT_Half_BIT = 4,
-	ETHTOOL_LINK_MODE_1000baseT_Full_BIT = 5,
-	ETHTOOL_LINK_MODE_Autoneg_BIT = 6,
-	ETHTOOL_LINK_MODE_TP_BIT = 7,
-	ETHTOOL_LINK_MODE_AUI_BIT = 8,
-	ETHTOOL_LINK_MODE_MII_BIT = 9,
-	ETHTOOL_LINK_MODE_FIBRE_BIT = 10,
-	ETHTOOL_LINK_MODE_BNC_BIT = 11,
-	ETHTOOL_LINK_MODE_10000baseT_Full_BIT = 12,
-	ETHTOOL_LINK_MODE_Pause_BIT = 13,
-	ETHTOOL_LINK_MODE_Asym_Pause_BIT = 14,
-	ETHTOOL_LINK_MODE_2500baseX_Full_BIT = 15,
-	ETHTOOL_LINK_MODE_Backplane_BIT = 16,
-	ETHTOOL_LINK_MODE_1000baseKX_Full_BIT = 17,
-	ETHTOOL_LINK_MODE_10000baseKX4_Full_BIT = 18,
-	ETHTOOL_LINK_MODE_10000baseKR_Full_BIT = 19,
-	ETHTOOL_LINK_MODE_10000baseR_FEC_BIT = 20,
-	ETHTOOL_LINK_MODE_20000baseMLD2_Full_BIT = 21,
-	ETHTOOL_LINK_MODE_20000baseKR2_Full_BIT = 22,
-	ETHTOOL_LINK_MODE_40000baseKR4_Full_BIT = 23,
-	ETHTOOL_LINK_MODE_40000baseCR4_Full_BIT = 24,
-	ETHTOOL_LINK_MODE_40000baseSR4_Full_BIT = 25,
-	ETHTOOL_LINK_MODE_40000baseLR4_Full_BIT = 26,
-	ETHTOOL_LINK_MODE_56000baseKR4_Full_BIT = 27,
-	ETHTOOL_LINK_MODE_56000baseCR4_Full_BIT = 28,
-	ETHTOOL_LINK_MODE_56000baseSR4_Full_BIT = 29,
-	ETHTOOL_LINK_MODE_56000baseLR4_Full_BIT = 30,
-	ETHTOOL_LINK_MODE_25000baseCR_Full_BIT = 31,
-	ETHTOOL_LINK_MODE_25000baseKR_Full_BIT = 32,
-	ETHTOOL_LINK_MODE_25000baseSR_Full_BIT = 33,
-	ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT = 34,
-	ETHTOOL_LINK_MODE_50000baseKR2_Full_BIT = 35,
-	ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT = 36,
-	ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 37,
-	ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 38,
-	ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 39,
-	ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 40,
-	ETHTOOL_LINK_MODE_1000baseX_Full_BIT = 41,
-	ETHTOOL_LINK_MODE_10000baseCR_Full_BIT = 42,
-	ETHTOOL_LINK_MODE_10000baseSR_Full_BIT = 43,
-	ETHTOOL_LINK_MODE_10000baseLR_Full_BIT = 44,
-	ETHTOOL_LINK_MODE_10000baseLRM_Full_BIT = 45,
-	ETHTOOL_LINK_MODE_10000baseER_Full_BIT = 46,
-	ETHTOOL_LINK_MODE_2500baseT_Full_BIT = 47,
-	ETHTOOL_LINK_MODE_5000baseT_Full_BIT = 48,
-	ETHTOOL_LINK_MODE_FEC_NONE_BIT = 49,
-	ETHTOOL_LINK_MODE_FEC_RS_BIT = 50,
-	ETHTOOL_LINK_MODE_FEC_BASER_BIT = 51,
-	ETHTOOL_LINK_MODE_50000baseKR_Full_BIT = 52,
-	ETHTOOL_LINK_MODE_50000baseSR_Full_BIT = 53,
-	ETHTOOL_LINK_MODE_50000baseCR_Full_BIT = 54,
-	ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT = 55,
-	ETHTOOL_LINK_MODE_50000baseDR_Full_BIT = 56,
-	ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT = 57,
-	ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT = 58,
-	ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT = 59,
-	ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT = 60,
-	ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT = 61,
-	ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT = 62,
-	ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT = 63,
-	ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 64,
-	ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 65,
-	ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66,
-	ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 67,
-	ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 68,
-	ETHTOOL_LINK_MODE_400000baseKR8_Full_BIT = 69,
-	ETHTOOL_LINK_MODE_400000baseSR8_Full_BIT = 70,
-	ETHTOOL_LINK_MODE_400000baseLR8_ER8_FR8_Full_BIT = 71,
-	ETHTOOL_LINK_MODE_400000baseDR8_Full_BIT = 72,
-	ETHTOOL_LINK_MODE_400000baseCR8_Full_BIT = 73,
-	ETHTOOL_LINK_MODE_FEC_LLRS_BIT = 74,
-	ETHTOOL_LINK_MODE_100000baseKR_Full_BIT = 75,
-	ETHTOOL_LINK_MODE_100000baseSR_Full_BIT = 76,
-	ETHTOOL_LINK_MODE_100000baseLR_ER_FR_Full_BIT = 77,
-	ETHTOOL_LINK_MODE_100000baseCR_Full_BIT = 78,
-	ETHTOOL_LINK_MODE_100000baseDR_Full_BIT = 79,
-	ETHTOOL_LINK_MODE_200000baseKR2_Full_BIT = 80,
-	ETHTOOL_LINK_MODE_200000baseSR2_Full_BIT = 81,
-	ETHTOOL_LINK_MODE_200000baseLR2_ER2_FR2_Full_BIT = 82,
-	ETHTOOL_LINK_MODE_200000baseDR2_Full_BIT = 83,
-	ETHTOOL_LINK_MODE_200000baseCR2_Full_BIT = 84,
-	ETHTOOL_LINK_MODE_400000baseKR4_Full_BIT = 85,
-	ETHTOOL_LINK_MODE_400000baseSR4_Full_BIT = 86,
-	ETHTOOL_LINK_MODE_400000baseLR4_ER4_FR4_Full_BIT = 87,
-	ETHTOOL_LINK_MODE_400000baseDR4_Full_BIT = 88,
-	ETHTOOL_LINK_MODE_400000baseCR4_Full_BIT = 89,
-	ETHTOOL_LINK_MODE_100baseFX_Half_BIT = 90,
-	ETHTOOL_LINK_MODE_100baseFX_Full_BIT = 91,
-	__ETHTOOL_LINK_MODE_MASK_NBITS = 92,
-};
-
-struct mii_bus;
-
-struct mdio_device {
-	struct device dev;
-	struct mii_bus *bus;
-	char modalias[32];
-	int (*bus_match)(struct device *, struct device_driver *);
-	void (*device_free)(struct mdio_device *);
-	void (*device_remove)(struct mdio_device *);
-	int addr;
-	int flags;
-	struct gpio_desc *reset_gpio;
-	struct reset_control *reset_ctrl;
-	unsigned int reset_assert_delay;
-	unsigned int reset_deassert_delay;
-};
-
-struct phy_c45_device_ids {
-	u32 devices_in_package;
-	u32 mmds_present;
-	u32 device_ids[32];
-};
-
-enum phy_state {
-	PHY_DOWN = 0,
-	PHY_READY = 1,
-	PHY_HALTED = 2,
-	PHY_UP = 3,
-	PHY_RUNNING = 4,
-	PHY_NOLINK = 5,
-	PHY_CABLETEST = 6,
-};
-
-typedef enum {
-	PHY_INTERFACE_MODE_NA = 0,
-	PHY_INTERFACE_MODE_INTERNAL = 1,
-	PHY_INTERFACE_MODE_MII = 2,
-	PHY_INTERFACE_MODE_GMII = 3,
-	PHY_INTERFACE_MODE_SGMII = 4,
-	PHY_INTERFACE_MODE_TBI = 5,
-	PHY_INTERFACE_MODE_REVMII = 6,
-	PHY_INTERFACE_MODE_RMII = 7,
-	PHY_INTERFACE_MODE_RGMII = 8,
-	PHY_INTERFACE_MODE_RGMII_ID = 9,
-	PHY_INTERFACE_MODE_RGMII_RXID = 10,
-	PHY_INTERFACE_MODE_RGMII_TXID = 11,
-	PHY_INTERFACE_MODE_RTBI = 12,
-	PHY_INTERFACE_MODE_SMII = 13,
-	PHY_INTERFACE_MODE_XGMII = 14,
-	PHY_INTERFACE_MODE_XLGMII = 15,
-	PHY_INTERFACE_MODE_MOCA = 16,
-	PHY_INTERFACE_MODE_QSGMII = 17,
-	PHY_INTERFACE_MODE_TRGMII = 18,
-	PHY_INTERFACE_MODE_1000BASEX = 19,
-	PHY_INTERFACE_MODE_2500BASEX = 20,
-	PHY_INTERFACE_MODE_RXAUI = 21,
-	PHY_INTERFACE_MODE_XAUI = 22,
-	PHY_INTERFACE_MODE_10GBASER = 23,
-	PHY_INTERFACE_MODE_USXGMII = 24,
-	PHY_INTERFACE_MODE_10GKR = 25,
-	PHY_INTERFACE_MODE_MAX = 26,
-} phy_interface_t;
-
-struct phy_led_trigger;
-
-struct phylink;
-
-struct phy_driver;
-
-struct phy_package_shared;
-
-struct mii_timestamper;
-
-struct phy_device {
-	struct mdio_device mdio;
-	struct phy_driver *drv;
-	u32 phy_id;
-	struct phy_c45_device_ids c45_ids;
-	unsigned int is_c45: 1;
-	unsigned int is_internal: 1;
-	unsigned int is_pseudo_fixed_link: 1;
-	unsigned int is_gigabit_capable: 1;
-	unsigned int has_fixups: 1;
-	unsigned int suspended: 1;
-	unsigned int suspended_by_mdio_bus: 1;
-	unsigned int sysfs_links: 1;
-	unsigned int loopback_enabled: 1;
-	unsigned int downshifted_rate: 1;
-	unsigned int autoneg: 1;
-	unsigned int link: 1;
-	unsigned int autoneg_complete: 1;
-	unsigned int interrupts: 1;
-	enum phy_state state;
-	u32 dev_flags;
-	phy_interface_t interface;
-	int speed;
-	int duplex;
-	int port;
-	int pause;
-	int asym_pause;
-	u8 master_slave_get;
-	u8 master_slave_set;
-	u8 master_slave_state;
-	long unsigned int supported[2];
-	long unsigned int advertising[2];
-	long unsigned int lp_advertising[2];
-	long unsigned int adv_old[2];
-	u32 eee_broken_modes;
-	struct phy_led_trigger *phy_led_triggers;
-	unsigned int phy_num_led_triggers;
-	struct phy_led_trigger *last_triggered;
-	struct phy_led_trigger *led_link_trigger;
-	int irq;
-	void *priv;
-	struct phy_package_shared *shared;
-	struct sk_buff *skb;
-	void *ehdr;
-	struct nlattr *nest;
-	struct delayed_work state_queue;
-	struct mutex lock;
-	bool sfp_bus_attached;
-	struct sfp_bus *sfp_bus;
-	struct phylink *phylink;
-	struct net_device *attached_dev;
-	struct mii_timestamper *mii_ts;
-	u8 mdix;
-	u8 mdix_ctrl;
-	void (*phy_link_change)(struct phy_device *, bool);
-	void (*adjust_link)(struct net_device *);
-	const struct macsec_ops *macsec_ops;
-};
-
-struct phy_tdr_config {
-	u32 first;
-	u32 last;
-	u32 step;
-	s8 pair;
-};
-
-struct mdio_bus_stats {
-	u64_stats_t transfers;
-	u64_stats_t errors;
-	u64_stats_t writes;
-	u64_stats_t reads;
-	struct u64_stats_sync syncp;
-};
-
-struct mii_bus {
-	struct module *owner;
-	const char *name;
-	char id[61];
-	void *priv;
-	int (*read)(struct mii_bus *, int, int);
-	int (*write)(struct mii_bus *, int, int, u16);
-	int (*reset)(struct mii_bus *);
-	struct mdio_bus_stats stats[32];
-	struct mutex mdio_lock;
-	struct device *parent;
-	enum {
-		MDIOBUS_ALLOCATED = 1,
-		MDIOBUS_REGISTERED = 2,
-		MDIOBUS_UNREGISTERED = 3,
-		MDIOBUS_RELEASED = 4,
-	} state;
-	struct device dev;
-	struct mdio_device *mdio_map[32];
-	u32 phy_mask;
-	u32 phy_ignore_ta_mask;
-	int irq[32];
-	int reset_delay_us;
-	int reset_post_delay_us;
-	struct gpio_desc *reset_gpiod;
-	enum {
-		MDIOBUS_NO_CAP = 0,
-		MDIOBUS_C22 = 1,
-		MDIOBUS_C45 = 2,
-		MDIOBUS_C22_C45 = 3,
-	} probe_capabilities;
-	struct mutex shared_lock;
-	struct phy_package_shared *shared[32];
-};
-
-struct mdio_driver_common {
-	struct device_driver driver;
-	int flags;
-};
-
-struct mii_timestamper {
-	bool (*rxtstamp)(struct mii_timestamper *, struct sk_buff *, int);
-	void (*txtstamp)(struct mii_timestamper *, struct sk_buff *, int);
-	int (*hwtstamp)(struct mii_timestamper *, struct ifreq *);
-	void (*link_state)(struct mii_timestamper *, struct phy_device *);
-	int (*ts_info)(struct mii_timestamper *, struct ethtool_ts_info *);
-	struct device *device;
-};
-
-struct phy_package_shared {
-	int addr;
-	refcount_t refcnt;
-	long unsigned int flags;
-	size_t priv_size;
-	void *priv;
-};
-
-struct phy_driver {
-	struct mdio_driver_common mdiodrv;
-	u32 phy_id;
-	char *name;
-	u32 phy_id_mask;
-	const long unsigned int * const features;
-	u32 flags;
-	const void *driver_data;
-	int (*soft_reset)(struct phy_device *);
-	int (*config_init)(struct phy_device *);
-	int (*probe)(struct phy_device *);
-	int (*get_features)(struct phy_device *);
-	int (*suspend)(struct phy_device *);
-	int (*resume)(struct phy_device *);
-	int (*config_aneg)(struct phy_device *);
-	int (*aneg_done)(struct phy_device *);
-	int (*read_status)(struct phy_device *);
-	int (*ack_interrupt)(struct phy_device *);
-	int (*config_intr)(struct phy_device *);
-	int (*did_interrupt)(struct phy_device *);
-	irqreturn_t (*handle_interrupt)(struct phy_device *);
-	void (*remove)(struct phy_device *);
-	int (*match_phy_device)(struct phy_device *);
-	int (*set_wol)(struct phy_device *, struct ethtool_wolinfo *);
-	void (*get_wol)(struct phy_device *, struct ethtool_wolinfo *);
-	void (*link_change_notify)(struct phy_device *);
-	int (*read_mmd)(struct phy_device *, int, u16);
-	int (*write_mmd)(struct phy_device *, int, u16, u16);
-	int (*read_page)(struct phy_device *);
-	int (*write_page)(struct phy_device *, int);
-	int (*module_info)(struct phy_device *, struct ethtool_modinfo *);
-	int (*module_eeprom)(struct phy_device *, struct ethtool_eeprom *, u8 *);
-	int (*cable_test_start)(struct phy_device *);
-	int (*cable_test_tdr_start)(struct phy_device *, const struct phy_tdr_config *);
-	int (*cable_test_get_status)(struct phy_device *, bool *);
-	int (*get_sset_count)(struct phy_device *);
-	void (*get_strings)(struct phy_device *, u8 *);
-	void (*get_stats)(struct phy_device *, struct ethtool_stats *, u64 *);
-	int (*get_tunable)(struct phy_device *, struct ethtool_tunable *, void *);
-	int (*set_tunable)(struct phy_device *, struct ethtool_tunable *, const void *);
-	int (*set_loopback)(struct phy_device *, bool);
-	int (*get_sqi)(struct phy_device *);
-	int (*get_sqi_max)(struct phy_device *);
-};
-
-struct software_node;
-
-struct software_node_ref_args {
-	const struct software_node *node;
-	unsigned int nargs;
-	u64 args[8];
-};
-
-struct software_node {
-	const char *name;
-	const struct software_node *parent;
-	const struct property_entry *properties;
-};
-
-struct swnode {
-	int id;
-	struct kobject kobj;
-	struct fwnode_handle fwnode;
-	const struct software_node *node;
-	struct ida child_ids;
-	struct list_head entry;
-	struct list_head children;
-	struct swnode *parent;
-	unsigned int allocated: 1;
-};
-
-struct req {
-	struct req *next;
-	struct completion done;
-	int err;
-	const char *name;
-	umode_t mode;
-	kuid_t uid;
-	kgid_t gid;
-	struct device *dev;
-};
-
-typedef int (*pm_callback_t)(struct device *);
-
-enum gpd_status {
-	GENPD_STATE_ON = 0,
-	GENPD_STATE_OFF = 1,
-};
-
-enum genpd_notication {
-	GENPD_NOTIFY_PRE_OFF = 0,
-	GENPD_NOTIFY_OFF = 1,
-	GENPD_NOTIFY_PRE_ON = 2,
-	GENPD_NOTIFY_ON = 3,
-};
-
-struct dev_power_governor {
-	bool (*power_down_ok)(struct dev_pm_domain *);
-	bool (*suspend_ok)(struct device *);
-};
-
-struct gpd_dev_ops {
-	int (*start)(struct device *);
-	int (*stop)(struct device *);
-};
-
-struct genpd_power_state {
-	s64 power_off_latency_ns;
-	s64 power_on_latency_ns;
-	s64 residency_ns;
-	u64 usage;
-	u64 rejected;
-	struct fwnode_handle *fwnode;
-	ktime_t idle_time;
-	void *data;
-};
-
-struct opp_table;
-
-struct dev_pm_opp;
-
-struct genpd_lock_ops;
-
-struct generic_pm_domain {
-	struct device dev;
-	struct dev_pm_domain domain;
-	struct list_head gpd_list_node;
-	struct list_head parent_links;
-	struct list_head child_links;
-	struct list_head dev_list;
-	struct dev_power_governor *gov;
-	struct work_struct power_off_work;
-	struct fwnode_handle *provider;
-	bool has_provider;
-	const char *name;
-	atomic_t sd_count;
-	enum gpd_status status;
-	unsigned int device_count;
-	unsigned int suspended_count;
-	unsigned int prepared_count;
-	unsigned int performance_state;
-	cpumask_var_t cpus;
-	int (*power_off)(struct generic_pm_domain *);
-	int (*power_on)(struct generic_pm_domain *);
-	struct raw_notifier_head power_notifiers;
-	struct opp_table *opp_table;
-	unsigned int (*opp_to_performance_state)(struct generic_pm_domain *, struct dev_pm_opp *);
-	int (*set_performance_state)(struct generic_pm_domain *, unsigned int);
-	struct gpd_dev_ops dev_ops;
-	s64 max_off_time_ns;
-	bool max_off_time_changed;
-	bool cached_power_down_ok;
-	bool cached_power_down_state_idx;
-	int (*attach_dev)(struct generic_pm_domain *, struct device *);
-	void (*detach_dev)(struct generic_pm_domain *, struct device *);
-	unsigned int flags;
-	struct genpd_power_state *states;
-	void (*free_states)(struct genpd_power_state *, unsigned int);
-	unsigned int state_count;
-	unsigned int state_idx;
-	ktime_t on_time;
-	ktime_t accounting_time;
-	const struct genpd_lock_ops *lock_ops;
-	union {
-		struct mutex mlock;
-		struct {
-			spinlock_t slock;
-			long unsigned int lock_flags;
-		};
-	};
-};
-
-struct genpd_lock_ops {
-	void (*lock)(struct generic_pm_domain *);
-	void (*lock_nested)(struct generic_pm_domain *, int);
-	int (*lock_interruptible)(struct generic_pm_domain *);
-	void (*unlock)(struct generic_pm_domain *);
-};
-
-struct gpd_link {
-	struct generic_pm_domain *parent;
-	struct list_head parent_node;
-	struct generic_pm_domain *child;
-	struct list_head child_node;
-	unsigned int performance_state;
-	unsigned int prev_performance_state;
-};
-
-struct gpd_timing_data {
-	s64 suspend_latency_ns;
-	s64 resume_latency_ns;
-	s64 effective_constraint_ns;
-	bool constraint_changed;
-	bool cached_suspend_ok;
-};
-
-struct generic_pm_domain_data {
-	struct pm_domain_data base;
-	struct gpd_timing_data td;
-	struct notifier_block nb;
-	struct notifier_block *power_nb;
-	int cpu;
-	unsigned int performance_state;
-	void *data;
-};
-
-struct pm_clk_notifier_block {
-	struct notifier_block nb;
-	struct dev_pm_domain *pm_domain;
-	char *con_ids[0];
-};
-
-enum pce_status {
-	PCE_STATUS_NONE = 0,
-	PCE_STATUS_ACQUIRED = 1,
-	PCE_STATUS_ENABLED = 2,
-	PCE_STATUS_ERROR = 3,
-};
-
-struct pm_clock_entry {
-	struct list_head node;
-	char *con_id;
-	struct clk *clk;
-	enum pce_status status;
-};
-
-struct firmware_fallback_config {
-	unsigned int force_sysfs_fallback;
-	unsigned int ignore_sysfs_fallback;
-	int old_timeout;
-	int loading_timeout;
-};
-
-enum fw_opt {
-	FW_OPT_UEVENT = 1,
-	FW_OPT_NOWAIT = 2,
-	FW_OPT_USERHELPER = 4,
-	FW_OPT_NO_WARN = 8,
-	FW_OPT_NOCACHE = 16,
-	FW_OPT_NOFALLBACK_SYSFS = 32,
-	FW_OPT_FALLBACK_PLATFORM = 64,
-	FW_OPT_PARTIAL = 128,
-};
-
-enum fw_status {
-	FW_STATUS_UNKNOWN = 0,
-	FW_STATUS_LOADING = 1,
-	FW_STATUS_DONE = 2,
-	FW_STATUS_ABORTED = 3,
-};
-
-struct fw_state {
-	struct completion completion;
-	enum fw_status status;
-};
-
-struct firmware_cache;
-
-struct fw_priv {
-	struct kref ref;
-	struct list_head list;
-	struct firmware_cache *fwc;
-	struct fw_state fw_st;
-	void *data;
-	size_t size;
-	size_t allocated_size;
-	size_t offset;
-	u32 opt_flags;
-	bool is_paged_buf;
-	struct page **pages;
-	int nr_pages;
-	int page_array_size;
-	bool need_uevent;
-	struct list_head pending_list;
-	const char *fw_name;
-};
-
-struct firmware_cache {
-	spinlock_t lock;
-	struct list_head head;
-	int state;
-	spinlock_t name_lock;
-	struct list_head fw_names;
-	struct delayed_work work;
-	struct notifier_block pm_notify;
-};
-
-struct fw_cache_entry {
-	struct list_head list;
-	const char *name;
-};
-
-struct fw_name_devm {
-	long unsigned int magic;
-	const char *name;
-};
-
-struct firmware_work {
-	struct work_struct work;
-	struct module *module;
-	const char *name;
-	struct device *device;
-	void *context;
-	void (*cont)(const struct firmware *, void *);
-	u32 opt_flags;
-};
-
-struct fw_sysfs {
-	bool nowait;
-	struct device dev;
-	struct fw_priv *fw_priv;
-	struct firmware *fw;
-};
-
-typedef void (*node_registration_func_t)(struct node___2 *);
-
-typedef int (*walk_memory_blocks_func_t)(struct memory_block *, void *);
-
-struct node_access_nodes {
-	struct device dev;
-	struct list_head list_node;
-	unsigned int access;
-	struct node_hmem_attrs hmem_attrs;
-};
-
-struct node_cache_info {
-	struct device dev;
-	struct list_head node;
-	struct node_cache_attrs cache_attrs;
-};
-
-struct node_attr {
-	struct device_attribute attr;
-	enum node_states state;
-};
-
-struct for_each_memory_block_cb_data {
-	walk_memory_blocks_func_t func;
-	void *arg;
-};
-
-struct reg_sequence {
-	unsigned int reg;
-	unsigned int def;
-	unsigned int delay_us;
-};
-
-typedef int (*regmap_hw_write)(void *, const void *, size_t);
-
-typedef int (*regmap_hw_gather_write)(void *, const void *, size_t, const void *, size_t);
-
-struct regmap_async;
-
-typedef int (*regmap_hw_async_write)(void *, const void *, size_t, const void *, size_t, struct regmap_async *);
-
-struct regmap;
-
-struct regmap_async {
-	struct list_head list;
-	struct regmap *map;
-	void *work_buf;
-};
-
-typedef int (*regmap_hw_read)(void *, const void *, size_t, void *, size_t);
-
-typedef int (*regmap_hw_reg_read)(void *, unsigned int, unsigned int *);
-
-typedef int (*regmap_hw_reg_write)(void *, unsigned int, unsigned int);
-
-typedef int (*regmap_hw_reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
-
-typedef struct regmap_async * (*regmap_hw_async_alloc)();
-
-typedef void (*regmap_hw_free_context)(void *);
-
-struct regmap_bus {
-	bool fast_io;
-	regmap_hw_write write;
-	regmap_hw_gather_write gather_write;
-	regmap_hw_async_write async_write;
-	regmap_hw_reg_write reg_write;
-	regmap_hw_reg_update_bits reg_update_bits;
-	regmap_hw_read read;
-	regmap_hw_reg_read reg_read;
-	regmap_hw_free_context free_context;
-	regmap_hw_async_alloc async_alloc;
-	u8 read_flag_mask;
-	enum regmap_endian reg_format_endian_default;
-	enum regmap_endian val_format_endian_default;
-	size_t max_raw_read;
-	size_t max_raw_write;
-};
-
-struct reg_field {
-	unsigned int reg;
-	unsigned int lsb;
-	unsigned int msb;
-	unsigned int id_size;
-	unsigned int id_offset;
-};
-
-struct regmap_format {
-	size_t buf_size;
-	size_t reg_bytes;
-	size_t pad_bytes;
-	size_t val_bytes;
-	void (*format_write)(struct regmap *, unsigned int, unsigned int);
-	void (*format_reg)(void *, unsigned int, unsigned int);
-	void (*format_val)(void *, unsigned int, unsigned int);
-	unsigned int (*parse_val)(const void *);
-	void (*parse_inplace)(void *);
-};
-
-struct hwspinlock;
-
-struct regcache_ops;
-
-struct regmap {
-	union {
-		struct mutex mutex;
-		struct {
-			spinlock_t spinlock;
-			long unsigned int spinlock_flags;
-		};
-	};
-	regmap_lock lock;
-	regmap_unlock unlock;
-	void *lock_arg;
-	gfp_t alloc_flags;
-	struct device *dev;
-	void *work_buf;
-	struct regmap_format format;
-	const struct regmap_bus *bus;
-	void *bus_context;
-	const char *name;
-	bool async;
-	spinlock_t async_lock;
-	wait_queue_head_t async_waitq;
-	struct list_head async_list;
-	struct list_head async_free;
-	int async_ret;
-	bool debugfs_disable;
-	struct dentry *debugfs;
-	const char *debugfs_name;
-	unsigned int debugfs_reg_len;
-	unsigned int debugfs_val_len;
-	unsigned int debugfs_tot_len;
-	struct list_head debugfs_off_cache;
-	struct mutex cache_lock;
-	unsigned int max_register;
-	bool (*writeable_reg)(struct device *, unsigned int);
-	bool (*readable_reg)(struct device *, unsigned int);
-	bool (*volatile_reg)(struct device *, unsigned int);
-	bool (*precious_reg)(struct device *, unsigned int);
-	bool (*writeable_noinc_reg)(struct device *, unsigned int);
-	bool (*readable_noinc_reg)(struct device *, unsigned int);
-	const struct regmap_access_table *wr_table;
-	const struct regmap_access_table *rd_table;
-	const struct regmap_access_table *volatile_table;
-	const struct regmap_access_table *precious_table;
-	const struct regmap_access_table *wr_noinc_table;
-	const struct regmap_access_table *rd_noinc_table;
-	int (*reg_read)(void *, unsigned int, unsigned int *);
-	int (*reg_write)(void *, unsigned int, unsigned int);
-	int (*reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
-	bool defer_caching;
-	long unsigned int read_flag_mask;
-	long unsigned int write_flag_mask;
-	int reg_shift;
-	int reg_stride;
-	int reg_stride_order;
-	const struct regcache_ops *cache_ops;
-	enum regcache_type cache_type;
-	unsigned int cache_size_raw;
-	unsigned int cache_word_size;
-	unsigned int num_reg_defaults;
-	unsigned int num_reg_defaults_raw;
-	bool cache_only;
-	bool cache_bypass;
-	bool cache_free;
-	struct reg_default *reg_defaults;
-	const void *reg_defaults_raw;
-	void *cache;
-	bool cache_dirty;
-	bool no_sync_defaults;
-	struct reg_sequence *patch;
-	int patch_regs;
-	bool use_single_read;
-	bool use_single_write;
-	bool can_multi_write;
-	size_t max_raw_read;
-	size_t max_raw_write;
-	struct rb_root range_tree;
-	void *selector_work_buf;
-	struct hwspinlock *hwlock;
-	bool can_sleep;
-};
-
-struct regcache_ops {
-	const char *name;
-	enum regcache_type type;
-	int (*init)(struct regmap *);
-	int (*exit)(struct regmap *);
-	void (*debugfs_init)(struct regmap *);
-	int (*read)(struct regmap *, unsigned int, unsigned int *);
-	int (*write)(struct regmap *, unsigned int, unsigned int);
-	int (*sync)(struct regmap *, unsigned int, unsigned int);
-	int (*drop)(struct regmap *, unsigned int, unsigned int);
-};
-
-struct regmap_range_node {
-	struct rb_node node;
-	const char *name;
-	struct regmap *map;
-	unsigned int range_min;
-	unsigned int range_max;
-	unsigned int selector_reg;
-	unsigned int selector_mask;
-	int selector_shift;
-	unsigned int window_start;
-	unsigned int window_len;
-};
-
-struct regmap_field {
-	struct regmap *regmap;
-	unsigned int mask;
-	unsigned int shift;
-	unsigned int reg;
-	unsigned int id_size;
-	unsigned int id_offset;
-};
-
-struct trace_event_raw_regmap_reg {
-	struct trace_entry ent;
-	u32 __data_loc_name;
-	unsigned int reg;
-	unsigned int val;
-	char __data[0];
-};
-
-struct trace_event_raw_regmap_block {
-	struct trace_entry ent;
-	u32 __data_loc_name;
-	unsigned int reg;
-	int count;
-	char __data[0];
-};
-
-struct trace_event_raw_regcache_sync {
-	struct trace_entry ent;
-	u32 __data_loc_name;
-	u32 __data_loc_status;
-	u32 __data_loc_type;
-	int type;
-	char __data[0];
-};
-
-struct trace_event_raw_regmap_bool {
-	struct trace_entry ent;
-	u32 __data_loc_name;
-	int flag;
-	char __data[0];
-};
-
-struct trace_event_raw_regmap_async {
-	struct trace_entry ent;
-	u32 __data_loc_name;
-	char __data[0];
-};
-
-struct trace_event_raw_regcache_drop_region {
-	struct trace_entry ent;
-	u32 __data_loc_name;
-	unsigned int from;
-	unsigned int to;
-	char __data[0];
-};
-
-struct trace_event_data_offsets_regmap_reg {
-	u32 name;
-};
-
-struct trace_event_data_offsets_regmap_block {
-	u32 name;
-};
-
-struct trace_event_data_offsets_regcache_sync {
-	u32 name;
-	u32 status;
-	u32 type;
-};
-
-struct trace_event_data_offsets_regmap_bool {
-	u32 name;
-};
-
-struct trace_event_data_offsets_regmap_async {
-	u32 name;
-};
-
-struct trace_event_data_offsets_regcache_drop_region {
-	u32 name;
-};
-
-typedef void (*btf_trace_regmap_reg_write)(void *, struct regmap *, unsigned int, unsigned int);
-
-typedef void (*btf_trace_regmap_reg_read)(void *, struct regmap *, unsigned int, unsigned int);
-
-typedef void (*btf_trace_regmap_reg_read_cache)(void *, struct regmap *, unsigned int, unsigned int);
-
-typedef void (*btf_trace_regmap_hw_read_start)(void *, struct regmap *, unsigned int, int);
-
-typedef void (*btf_trace_regmap_hw_read_done)(void *, struct regmap *, unsigned int, int);
-
-typedef void (*btf_trace_regmap_hw_write_start)(void *, struct regmap *, unsigned int, int);
-
-typedef void (*btf_trace_regmap_hw_write_done)(void *, struct regmap *, unsigned int, int);
-
-typedef void (*btf_trace_regcache_sync)(void *, struct regmap *, const char *, const char *);
-
-typedef void (*btf_trace_regmap_cache_only)(void *, struct regmap *, bool);
-
-typedef void (*btf_trace_regmap_cache_bypass)(void *, struct regmap *, bool);
-
-typedef void (*btf_trace_regmap_async_write_start)(void *, struct regmap *, unsigned int, int);
-
-typedef void (*btf_trace_regmap_async_io_complete)(void *, struct regmap *);
-
-typedef void (*btf_trace_regmap_async_complete_start)(void *, struct regmap *);
-
-typedef void (*btf_trace_regmap_async_complete_done)(void *, struct regmap *);
-
-typedef void (*btf_trace_regcache_drop_region)(void *, struct regmap *, unsigned int, unsigned int);
-
-struct regcache_rbtree_node {
-	void *block;
-	long int *cache_present;
-	unsigned int base_reg;
-	unsigned int blklen;
-	struct rb_node node;
-};
-
-struct regcache_rbtree_ctx {
-	struct rb_root root;
-	struct regcache_rbtree_node *cached_rbnode;
-};
-
-struct regmap_debugfs_off_cache {
-	struct list_head list;
-	off_t min;
-	off_t max;
-	unsigned int base_reg;
-	unsigned int max_reg;
-};
-
-struct regmap_debugfs_node {
-	struct regmap *map;
-	struct list_head link;
-};
-
-struct i2c_msg {
-	__u16 addr;
-	__u16 flags;
-	__u16 len;
-	__u8 *buf;
-};
-
-union i2c_smbus_data {
-	__u8 byte;
-	__u16 word;
-	__u8 block[34];
-};
-
-struct i2c_adapter;
-
-struct i2c_client {
-	short unsigned int flags;
-	short unsigned int addr;
-	char name[20];
-	struct i2c_adapter *adapter;
-	struct device dev;
-	int init_irq;
-	int irq;
-	struct list_head detected;
-};
-
-struct i2c_algorithm;
-
-struct i2c_lock_operations;
-
-struct i2c_bus_recovery_info;
-
-struct i2c_adapter_quirks;
-
-struct i2c_adapter {
-	struct module *owner;
-	unsigned int class;
-	const struct i2c_algorithm *algo;
-	void *algo_data;
-	const struct i2c_lock_operations *lock_ops;
-	struct rt_mutex bus_lock;
-	struct rt_mutex mux_lock;
-	int timeout;
-	int retries;
-	struct device dev;
-	long unsigned int locked_flags;
-	int nr;
-	char name[48];
-	struct completion dev_released;
-	struct mutex userspace_clients_lock;
-	struct list_head userspace_clients;
-	struct i2c_bus_recovery_info *bus_recovery_info;
-	const struct i2c_adapter_quirks *quirks;
-	struct irq_domain *host_notify_domain;
-};
-
-struct i2c_algorithm {
-	int (*master_xfer)(struct i2c_adapter *, struct i2c_msg *, int);
-	int (*master_xfer_atomic)(struct i2c_adapter *, struct i2c_msg *, int);
-	int (*smbus_xfer)(struct i2c_adapter *, u16, short unsigned int, char, u8, int, union i2c_smbus_data *);
-	int (*smbus_xfer_atomic)(struct i2c_adapter *, u16, short unsigned int, char, u8, int, union i2c_smbus_data *);
-	u32 (*functionality)(struct i2c_adapter *);
-};
-
-struct i2c_lock_operations {
-	void (*lock_bus)(struct i2c_adapter *, unsigned int);
-	int (*trylock_bus)(struct i2c_adapter *, unsigned int);
-	void (*unlock_bus)(struct i2c_adapter *, unsigned int);
-};
-
-struct i2c_bus_recovery_info {
-	int (*recover_bus)(struct i2c_adapter *);
-	int (*get_scl)(struct i2c_adapter *);
-	void (*set_scl)(struct i2c_adapter *, int);
-	int (*get_sda)(struct i2c_adapter *);
-	void (*set_sda)(struct i2c_adapter *, int);
-	int (*get_bus_free)(struct i2c_adapter *);
-	void (*prepare_recovery)(struct i2c_adapter *);
-	void (*unprepare_recovery)(struct i2c_adapter *);
-	struct gpio_desc *scl_gpiod;
-	struct gpio_desc *sda_gpiod;
-	struct pinctrl *pinctrl;
-	struct pinctrl_state *pins_default;
-	struct pinctrl_state *pins_gpio;
-};
-
-struct i2c_adapter_quirks {
-	u64 flags;
-	int max_num_msgs;
-	u16 max_write_len;
-	u16 max_read_len;
-	u16 max_comb_1st_msg_len;
-	u16 max_comb_2nd_msg_len;
-};
-
-struct regmap_mmio_context {
-	void *regs;
-	unsigned int val_bytes;
-	bool attached_clk;
-	struct clk *clk;
-	void (*reg_write)(struct regmap_mmio_context *, unsigned int, unsigned int);
-	unsigned int (*reg_read)(struct regmap_mmio_context *, unsigned int);
-};
-
-struct regmap_irq_chip_data {
-	struct mutex lock;
-	struct irq_chip irq_chip;
-	struct regmap *map;
-	const struct regmap_irq_chip *chip;
-	int irq_base;
-	struct irq_domain *domain;
-	int irq;
-	int wake_count;
-	void *status_reg_buf;
-	unsigned int *main_status_buf;
-	unsigned int *status_buf;
-	unsigned int *mask_buf;
-	unsigned int *mask_buf_def;
-	unsigned int *wake_buf;
-	unsigned int *type_buf;
-	unsigned int *type_buf_def;
-	unsigned int irq_reg_stride;
-	unsigned int type_reg_stride;
-	bool clear_status: 1;
-};
-
-struct devcd_entry {
-	struct device devcd_dev;
-	void *data;
-	size_t datalen;
-	struct module *owner;
-	ssize_t (*read)(char *, loff_t, size_t, void *, size_t);
-	void (*free)(void *);
-	struct delayed_work del_wk;
-	struct device *failing_dev;
-};
-
-typedef void (*irq_write_msi_msg_t)(struct msi_desc *, struct msi_msg *);
-
-struct platform_msi_priv_data {
-	struct device *dev;
-	void *host_data;
-	msi_alloc_info_t arg;
-	irq_write_msi_msg_t write_msg;
-	int devid;
-};
-
-struct mfd_cell_acpi_match {
-	const char *pnpid;
-	const long long unsigned int adr;
-};
-
-struct mfd_of_node_entry {
-	struct list_head list;
-	struct device *dev;
-	struct device_node *np;
-};
-
-struct syscon_platform_data {
-	const char *label;
-};
-
-struct syscon {
-	struct device_node *np;
-	struct regmap *regmap;
-	struct list_head list;
-};
-
-struct i2c_device_id {
-	char name[20];
-	kernel_ulong_t driver_data;
-};
-
-enum i2c_alert_protocol {
-	I2C_PROTOCOL_SMBUS_ALERT = 0,
-	I2C_PROTOCOL_SMBUS_HOST_NOTIFY = 1,
-};
-
-struct i2c_board_info;
-
-struct i2c_driver {
-	unsigned int class;
-	int (*probe)(struct i2c_client *, const struct i2c_device_id *);
-	int (*remove)(struct i2c_client *);
-	int (*probe_new)(struct i2c_client *);
-	void (*shutdown)(struct i2c_client *);
-	void (*alert)(struct i2c_client *, enum i2c_alert_protocol, unsigned int);
-	int (*command)(struct i2c_client *, unsigned int, void *);
-	struct device_driver driver;
-	const struct i2c_device_id *id_table;
-	int (*detect)(struct i2c_client *, struct i2c_board_info *);
-	const short unsigned int *address_list;
-	struct list_head clients;
-};
-
-struct i2c_board_info {
-	char type[20];
-	short unsigned int flags;
-	short unsigned int addr;
-	const char *dev_name;
-	void *platform_data;
-	struct device_node *of_node;
-	struct fwnode_handle *fwnode;
-	const struct property_entry *properties;
-	const struct resource *resources;
-	unsigned int num_resources;
-	int irq;
-};
-
-struct intel_soc_pmic_config {
-	long unsigned int irq_flags;
-	struct mfd_cell *cell_dev;
-	int n_cell_devs;
-	const struct regmap_config *regmap_config;
-	const struct regmap_irq_chip *irq_chip;
-};
-
-enum {
-	CHT_WC_PWRSRC_IRQ = 0,
-	CHT_WC_THRM_IRQ = 1,
-	CHT_WC_BCU_IRQ = 2,
-	CHT_WC_ADC_IRQ = 3,
-	CHT_WC_EXT_CHGR_IRQ = 4,
-	CHT_WC_GPIO_IRQ = 5,
-	CHT_WC_CRIT_IRQ = 7,
-};
-
-struct dax_device;
-
-struct dax_operations {
-	long int (*direct_access)(struct dax_device *, long unsigned int, long int, void **, pfn_t *);
-	bool (*dax_supported)(struct dax_device *, struct block_device *, int, sector_t, sector_t);
-	size_t (*copy_from_iter)(struct dax_device *, long unsigned int, void *, size_t, struct iov_iter *);
-	size_t (*copy_to_iter)(struct dax_device *, long unsigned int, void *, size_t, struct iov_iter *);
-	int (*zero_page_range)(struct dax_device *, long unsigned int, size_t);
-};
-
-struct dax_device {
-	struct hlist_node list;
-	struct inode inode;
-	struct cdev cdev;
-	const char *host;
-	void *private;
-	long unsigned int flags;
-	const struct dax_operations *ops;
-};
-
-enum dax_device_flags {
-	DAXDEV_ALIVE = 0,
-	DAXDEV_WRITE_CACHE = 1,
-	DAXDEV_SYNC = 2,
-};
-
-struct dax_region {
-	int id;
-	int target_node;
-	struct kref kref;
-	struct device *dev;
-	unsigned int align;
-	struct ida ida;
-	struct resource res;
-	struct device *seed;
-	struct device *youngest;
-};
-
-struct dax_mapping {
-	struct device dev;
-	int range_id;
-	int id;
-};
-
-struct dev_dax_range {
-	long unsigned int pgoff;
-	struct range range;
-	struct dax_mapping *mapping;
-};
-
-struct dev_dax {
-	struct dax_region *region;
-	struct dax_device *dax_dev;
-	unsigned int align;
-	int target_node;
-	int id;
-	struct ida ida;
-	struct device dev;
-	struct dev_pagemap *pgmap;
-	int nr_range;
-	struct dev_dax_range *ranges;
-};
-
-enum dev_dax_subsys {
-	DEV_DAX_BUS = 0,
-	DEV_DAX_CLASS = 1,
-};
-
-struct dev_dax_data {
-	struct dax_region *dax_region;
-	struct dev_pagemap *pgmap;
-	enum dev_dax_subsys subsys;
-	resource_size_t size;
-	int id;
-};
-
-struct dax_device_driver {
-	struct device_driver drv;
-	struct list_head ids;
-	int match_always;
-	int (*probe)(struct dev_dax *);
-	int (*remove)(struct dev_dax *);
-};
-
-struct dax_id {
-	struct list_head list;
-	char dev_name[30];
-};
-
-enum id_action {
-	ID_REMOVE = 0,
-	ID_ADD = 1,
-};
-
-struct memregion_info {
-	int target_node;
-};
-
-struct seqcount_ww_mutex {
-	seqcount_t seqcount;
-};
-
-typedef struct seqcount_ww_mutex seqcount_ww_mutex_t;
-
-struct dma_fence_ops;
-
-struct dma_fence {
-	spinlock_t *lock;
-	const struct dma_fence_ops *ops;
-	union {
-		struct list_head cb_list;
-		ktime_t timestamp;
-		struct callback_head rcu;
-	};
-	u64 context;
-	u64 seqno;
-	long unsigned int flags;
-	struct kref refcount;
-	int error;
-};
-
-struct dma_fence_ops {
-	bool use_64bit_seqno;
-	const char * (*get_driver_name)(struct dma_fence *);
-	const char * (*get_timeline_name)(struct dma_fence *);
-	bool (*enable_signaling)(struct dma_fence *);
-	bool (*signaled)(struct dma_fence *);
-	long int (*wait)(struct dma_fence *, bool, long int);
-	void (*release)(struct dma_fence *);
-	void (*fence_value_str)(struct dma_fence *, char *, int);
-	void (*timeline_value_str)(struct dma_fence *, char *, int);
-};
-
-enum dma_fence_flag_bits {
-	DMA_FENCE_FLAG_SIGNALED_BIT = 0,
-	DMA_FENCE_FLAG_TIMESTAMP_BIT = 1,
-	DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT = 2,
-	DMA_FENCE_FLAG_USER_BITS = 3,
-};
-
-struct dma_fence_cb;
-
-typedef void (*dma_fence_func_t)(struct dma_fence *, struct dma_fence_cb *);
-
-struct dma_fence_cb {
-	struct list_head node;
-	dma_fence_func_t func;
-};
-
-struct dma_buf;
-
-struct dma_buf_attachment;
-
-struct dma_buf_ops {
-	bool cache_sgt_mapping;
-	int (*attach)(struct dma_buf *, struct dma_buf_attachment *);
-	void (*detach)(struct dma_buf *, struct dma_buf_attachment *);
-	int (*pin)(struct dma_buf_attachment *);
-	void (*unpin)(struct dma_buf_attachment *);
-	struct sg_table * (*map_dma_buf)(struct dma_buf_attachment *, enum dma_data_direction);
-	void (*unmap_dma_buf)(struct dma_buf_attachment *, struct sg_table *, enum dma_data_direction);
-	void (*release)(struct dma_buf *);
-	int (*begin_cpu_access)(struct dma_buf *, enum dma_data_direction);
-	int (*end_cpu_access)(struct dma_buf *, enum dma_data_direction);
-	int (*mmap)(struct dma_buf *, struct vm_area_struct *);
-	void * (*vmap)(struct dma_buf *);
-	void (*vunmap)(struct dma_buf *, void *);
-};
-
-struct dma_buf_poll_cb_t {
-	struct dma_fence_cb cb;
-	wait_queue_head_t *poll;
-	__poll_t active;
-};
-
-struct dma_resv;
-
-struct dma_buf {
-	size_t size;
-	struct file *file;
-	struct list_head attachments;
-	const struct dma_buf_ops *ops;
-	struct mutex lock;
-	unsigned int vmapping_counter;
-	void *vmap_ptr;
-	const char *exp_name;
-	const char *name;
-	spinlock_t name_lock;
-	struct module *owner;
-	struct list_head list_node;
-	void *priv;
-	struct dma_resv *resv;
-	wait_queue_head_t poll;
-	struct dma_buf_poll_cb_t cb_excl;
-	struct dma_buf_poll_cb_t cb_shared;
-};
-
-struct dma_buf_attach_ops;
-
-struct dma_buf_attachment {
-	struct dma_buf *dmabuf;
-	struct device *dev;
-	struct list_head node;
-	struct sg_table *sgt;
-	enum dma_data_direction dir;
-	bool peer2peer;
-	const struct dma_buf_attach_ops *importer_ops;
-	void *importer_priv;
-	void *priv;
-};
-
-struct dma_resv_list;
-
-struct dma_resv {
-	struct ww_mutex lock;
-	seqcount_ww_mutex_t seq;
-	struct dma_fence *fence_excl;
-	struct dma_resv_list *fence;
-};
-
-struct dma_buf_attach_ops {
-	bool allow_peer2peer;
-	void (*move_notify)(struct dma_buf_attachment *);
-};
-
-struct dma_buf_export_info {
-	const char *exp_name;
-	struct module *owner;
-	const struct dma_buf_ops *ops;
-	size_t size;
-	int flags;
-	struct dma_resv *resv;
-	void *priv;
-};
-
-struct dma_resv_list {
-	struct callback_head rcu;
-	u32 shared_count;
-	u32 shared_max;
-	struct dma_fence *shared[0];
-};
-
-struct dma_buf_sync {
-	__u64 flags;
-};
-
-struct dma_buf_list {
-	struct list_head head;
-	struct mutex lock;
-};
-
-struct trace_event_raw_dma_fence {
-	struct trace_entry ent;
-	u32 __data_loc_driver;
-	u32 __data_loc_timeline;
-	unsigned int context;
-	unsigned int seqno;
-	char __data[0];
-};
-
-struct trace_event_data_offsets_dma_fence {
-	u32 driver;
-	u32 timeline;
-};
-
-typedef void (*btf_trace_dma_fence_emit)(void *, struct dma_fence *);
-
-typedef void (*btf_trace_dma_fence_init)(void *, struct dma_fence *);
-
-typedef void (*btf_trace_dma_fence_destroy)(void *, struct dma_fence *);
-
-typedef void (*btf_trace_dma_fence_enable_signal)(void *, struct dma_fence *);
-
-typedef void (*btf_trace_dma_fence_signaled)(void *, struct dma_fence *);
-
-typedef void (*btf_trace_dma_fence_wait_start)(void *, struct dma_fence *);
-
-typedef void (*btf_trace_dma_fence_wait_end)(void *, struct dma_fence *);
-
-struct default_wait_cb {
-	struct dma_fence_cb base;
-	struct task_struct *task;
-};
-
-struct dma_fence_array;
-
-struct dma_fence_array_cb {
-	struct dma_fence_cb cb;
-	struct dma_fence_array *array;
-};
-
-struct dma_fence_array {
-	struct dma_fence base;
-	spinlock_t lock;
-	unsigned int num_fences;
-	atomic_t num_pending;
-	struct dma_fence **fences;
-	struct irq_work work;
-};
-
-struct dma_fence_chain {
-	struct dma_fence base;
-	spinlock_t lock;
-	struct dma_fence *prev;
-	u64 prev_seqno;
-	struct dma_fence *fence;
-	struct dma_fence_cb cb;
-	struct irq_work work;
-};
-
-enum seqno_fence_condition {
-	SEQNO_FENCE_WAIT_GEQUAL = 0,
-	SEQNO_FENCE_WAIT_NONZERO = 1,
-};
-
-struct seqno_fence {
-	struct dma_fence base;
-	const struct dma_fence_ops *ops;
-	struct dma_buf *sync_buf;
-	uint32_t seqno_ofs;
-	enum seqno_fence_condition condition;
-};
-
-struct sync_file {
-	struct file *file;
-	char user_name[32];
-	struct list_head sync_file_list;
-	wait_queue_head_t wq;
-	long unsigned int flags;
-	struct dma_fence *fence;
-	struct dma_fence_cb cb;
-};
-
-struct sync_merge_data {
-	char name[32];
-	__s32 fd2;
-	__s32 fence;
-	__u32 flags;
-	__u32 pad;
-};
-
-struct sync_fence_info {
-	char obj_name[32];
-	char driver_name[32];
-	__s32 status;
-	__u32 flags;
-	__u64 timestamp_ns;
-};
-
-struct sync_file_info {
-	char name[32];
-	__s32 status;
-	__u32 flags;
-	__u32 num_fences;
-	__u32 pad;
-	__u64 sync_fence_info;
-};
-
-struct scsi_lun {
-	__u8 scsi_lun[8];
-};
-
-struct spi_device_id {
-	char name[32];
-	kernel_ulong_t driver_data;
-};
-
-struct ptp_system_timestamp {
-	struct timespec64 pre_ts;
-	struct timespec64 post_ts;
-};
-
-struct spi_statistics {
-	spinlock_t lock;
-	long unsigned int messages;
-	long unsigned int transfers;
-	long unsigned int errors;
-	long unsigned int timedout;
-	long unsigned int spi_sync;
-	long unsigned int spi_sync_immediate;
-	long unsigned int spi_async;
-	long long unsigned int bytes;
-	long long unsigned int bytes_rx;
-	long long unsigned int bytes_tx;
-	long unsigned int transfer_bytes_histo[17];
-	long unsigned int transfers_split_maxsize;
-};
-
-struct spi_delay {
-	u16 value;
-	u8 unit;
-};
-
-struct spi_controller;
-
-struct spi_device {
-	struct device dev;
-	struct spi_controller *controller;
-	struct spi_controller *master;
-	u32 max_speed_hz;
-	u8 chip_select;
-	u8 bits_per_word;
-	bool rt;
-	u32 mode;
-	int irq;
-	void *controller_state;
-	void *controller_data;
-	char modalias[32];
-	const char *driver_override;
-	int cs_gpio;
-	struct gpio_desc *cs_gpiod;
-	struct spi_delay word_delay;
-	struct spi_statistics statistics;
-};
-
-struct spi_message;
-
-struct spi_transfer;
-
-struct spi_controller_mem_ops;
-
-struct spi_controller {
-	struct device dev;
-	struct list_head list;
-	s16 bus_num;
-	u16 num_chipselect;
-	u16 dma_alignment;
-	u32 mode_bits;
-	u32 buswidth_override_bits;
-	u32 bits_per_word_mask;
-	u32 min_speed_hz;
-	u32 max_speed_hz;
-	u16 flags;
-	bool devm_allocated;
-	bool slave;
-	size_t (*max_transfer_size)(struct spi_device *);
-	size_t (*max_message_size)(struct spi_device *);
-	struct mutex io_mutex;
-	spinlock_t bus_lock_spinlock;
-	struct mutex bus_lock_mutex;
-	bool bus_lock_flag;
-	int (*setup)(struct spi_device *);
-	int (*set_cs_timing)(struct spi_device *, struct spi_delay *, struct spi_delay *, struct spi_delay *);
-	int (*transfer)(struct spi_device *, struct spi_message *);
-	void (*cleanup)(struct spi_device *);
-	bool (*can_dma)(struct spi_controller *, struct spi_device *, struct spi_transfer *);
-	bool queued;
-	struct kthread_worker *kworker;
-	struct kthread_work pump_messages;
-	spinlock_t queue_lock;
-	struct list_head queue;
-	struct spi_message *cur_msg;
-	bool idling;
-	bool busy;
-	bool running;
-	bool rt;
-	bool auto_runtime_pm;
-	bool cur_msg_prepared;
-	bool cur_msg_mapped;
-	bool last_cs_enable;
-	bool last_cs_mode_high;
-	bool fallback;
-	struct completion xfer_completion;
-	size_t max_dma_len;
-	int (*prepare_transfer_hardware)(struct spi_controller *);
-	int (*transfer_one_message)(struct spi_controller *, struct spi_message *);
-	int (*unprepare_transfer_hardware)(struct spi_controller *);
-	int (*prepare_message)(struct spi_controller *, struct spi_message *);
-	int (*unprepare_message)(struct spi_controller *, struct spi_message *);
-	int (*slave_abort)(struct spi_controller *);
-	void (*set_cs)(struct spi_device *, bool);
-	int (*transfer_one)(struct spi_controller *, struct spi_device *, struct spi_transfer *);
-	void (*handle_err)(struct spi_controller *, struct spi_message *);
-	const struct spi_controller_mem_ops *mem_ops;
-	struct spi_delay cs_setup;
-	struct spi_delay cs_hold;
-	struct spi_delay cs_inactive;
-	int *cs_gpios;
-	struct gpio_desc **cs_gpiods;
-	bool use_gpio_descriptors;
-	s8 unused_native_cs;
-	s8 max_native_cs;
-	struct spi_statistics statistics;
-	struct dma_chan___2 *dma_tx;
-	struct dma_chan___2 *dma_rx;
-	void *dummy_rx;
-	void *dummy_tx;
-	int (*fw_translate_cs)(struct spi_controller *, unsigned int);
-	bool ptp_sts_supported;
-	long unsigned int irq_flags;
-};
-
-struct spi_driver {
-	const struct spi_device_id *id_table;
-	int (*probe)(struct spi_device *);
-	int (*remove)(struct spi_device *);
-	void (*shutdown)(struct spi_device *);
-	struct device_driver driver;
-};
-
-struct spi_message {
-	struct list_head transfers;
-	struct spi_device *spi;
-	unsigned int is_dma_mapped: 1;
-	void (*complete)(void *);
-	void *context;
-	unsigned int frame_length;
-	unsigned int actual_length;
-	int status;
-	struct list_head queue;
-	void *state;
-	struct list_head resources;
-};
-
-struct spi_transfer {
-	const void *tx_buf;
-	void *rx_buf;
-	unsigned int len;
-	dma_addr_t tx_dma;
-	dma_addr_t rx_dma;
-	struct sg_table tx_sg;
-	struct sg_table rx_sg;
-	unsigned int cs_change: 1;
-	unsigned int tx_nbits: 3;
-	unsigned int rx_nbits: 3;
-	u8 bits_per_word;
-	u16 delay_usecs;
-	struct spi_delay delay;
-	struct spi_delay cs_change_delay;
-	struct spi_delay word_delay;
-	u32 speed_hz;
-	u32 effective_speed_hz;
-	unsigned int ptp_sts_word_pre;
-	unsigned int ptp_sts_word_post;
-	struct ptp_system_timestamp *ptp_sts;
-	bool timestamped;
-	struct list_head transfer_list;
-	u16 error;
-};
-
-struct spi_mem;
-
-struct spi_mem_op;
-
-struct spi_mem_dirmap_desc;
-
-struct spi_controller_mem_ops {
-	int (*adjust_op_size)(struct spi_mem *, struct spi_mem_op *);
-	bool (*supports_op)(struct spi_mem *, const struct spi_mem_op *);
-	int (*exec_op)(struct spi_mem *, const struct spi_mem_op *);
-	const char * (*get_name)(struct spi_mem *);
-	int (*dirmap_create)(struct spi_mem_dirmap_desc *);
-	void (*dirmap_destroy)(struct spi_mem_dirmap_desc *);
-	ssize_t (*dirmap_read)(struct spi_mem_dirmap_desc *, u64, size_t, void *);
-	ssize_t (*dirmap_write)(struct spi_mem_dirmap_desc *, u64, size_t, const void *);
-};
-
 typedef void (*spi_res_release_t)(struct spi_controller *, struct spi_message *, void *);
 
 struct spi_res {
@@ -78708,7 +102343,7 @@ struct spi_replaced_transfers {
 struct spi_board_info {
 	char modalias[32];
 	const void *platform_data;
-	const struct property_entry *properties;
+	const struct software_node *swnode;
 	void *controller_data;
 	int irq;
 	u32 max_speed_hz;
@@ -78778,6 +102413,26 @@ struct trace_event_raw_spi_controller {
 	char __data[0];
 };
 
+struct trace_event_raw_spi_setup {
+	struct trace_entry ent;
+	int bus_num;
+	int chip_select;
+	long unsigned int mode;
+	unsigned int bits_per_word;
+	unsigned int max_speed_hz;
+	int status;
+	char __data[0];
+};
+
+struct trace_event_raw_spi_set_cs {
+	struct trace_entry ent;
+	int bus_num;
+	int chip_select;
+	long unsigned int mode;
+	bool enable;
+	char __data[0];
+};
+
 struct trace_event_raw_spi_message {
 	struct trace_entry ent;
 	int bus_num;
@@ -78809,6 +102464,10 @@ struct trace_event_raw_spi_transfer {
 
 struct trace_event_data_offsets_spi_controller {};
 
+struct trace_event_data_offsets_spi_setup {};
+
+struct trace_event_data_offsets_spi_set_cs {};
+
 struct trace_event_data_offsets_spi_message {};
 
 struct trace_event_data_offsets_spi_message_done {};
@@ -78822,6 +102481,10 @@ typedef void (*btf_trace_spi_controller_idle)(void *, struct spi_controller *);
 
 typedef void (*btf_trace_spi_controller_busy)(void *, struct spi_controller *);
 
+typedef void (*btf_trace_spi_setup)(void *, struct spi_device *, int);
+
+typedef void (*btf_trace_spi_set_cs)(void *, struct spi_device *, bool);
+
 typedef void (*btf_trace_spi_message_submit)(void *, struct spi_message *);
 
 typedef void (*btf_trace_spi_message_start)(void *, struct spi_message *);
@@ -78844,6 +102507,8 @@ struct acpi_spi_lookup {
 	int irq;
 	u8 bits_per_word;
 	u8 chip_select;
+	int n;
+	int index;
 };
 
 struct spi_mem_driver {
@@ -78853,37 +102518,6 @@ struct spi_mem_driver {
 	void (*shutdown)(struct spi_mem *);
 };
 
-struct spi_ioc_transfer {
-	__u64 tx_buf;
-	__u64 rx_buf;
-	__u32 len;
-	__u32 speed_hz;
-	__u16 delay_usecs;
-	__u8 bits_per_word;
-	__u8 cs_change;
-	__u8 tx_nbits;
-	__u8 rx_nbits;
-	__u8 word_delay_usecs;
-	__u8 pad;
-};
-
-struct spidev_data {
-	dev_t devt;
-	spinlock_t spi_lock;
-	struct spi_device *spi;
-	struct list_head device_entry;
-	struct mutex buf_lock;
-	unsigned int users;
-	u8 *tx_buffer;
-	u8 *rx_buffer;
-	u32 speed_hz;
-};
-
-struct devprobe2 {
-	struct net_device * (*probe)(int);
-	int status;
-};
-
 enum {
 	NETIF_F_SG_BIT = 0,
 	NETIF_F_IP_CSUM_BIT = 1,
@@ -78946,51 +102580,42 @@ enum {
 	NETIF_F_HW_TLS_RECORD_BIT = 56,
 	NETIF_F_GRO_FRAGLIST_BIT = 57,
 	NETIF_F_HW_MACSEC_BIT = 58,
-	NETDEV_FEATURE_COUNT = 59,
+	NETIF_F_GRO_UDP_FWD_BIT = 59,
+	NETIF_F_HW_HSR_TAG_INS_BIT = 60,
+	NETIF_F_HW_HSR_TAG_RM_BIT = 61,
+	NETIF_F_HW_HSR_FWD_BIT = 62,
+	NETIF_F_HW_HSR_DUP_BIT = 63,
+	NETDEV_FEATURE_COUNT = 64,
+};
+
+typedef struct bio_vec skb_frag_t;
+
+struct skb_shared_hwtstamps {
+	ktime_t hwtstamp;
 };
 
 enum {
 	SKBTX_HW_TSTAMP = 1,
 	SKBTX_SW_TSTAMP = 2,
 	SKBTX_IN_PROGRESS = 4,
-	SKBTX_DEV_ZEROCOPY = 8,
 	SKBTX_WIFI_STATUS = 16,
-	SKBTX_SHARED_FRAG = 32,
 	SKBTX_SCHED_TSTAMP = 64,
 };
 
-enum netdev_priv_flags {
-	IFF_802_1Q_VLAN = 1,
-	IFF_EBRIDGE = 2,
-	IFF_BONDING = 4,
-	IFF_ISATAP = 8,
-	IFF_WAN_HDLC = 16,
-	IFF_XMIT_DST_RELEASE = 32,
-	IFF_DONT_BRIDGE = 64,
-	IFF_DISABLE_NETPOLL = 128,
-	IFF_MACVLAN_PORT = 256,
-	IFF_BRIDGE_PORT = 512,
-	IFF_OVS_DATAPATH = 1024,
-	IFF_TX_SKB_SHARING = 2048,
-	IFF_UNICAST_FLT = 4096,
-	IFF_TEAM_PORT = 8192,
-	IFF_SUPP_NOFCS = 16384,
-	IFF_LIVE_ADDR_CHANGE = 32768,
-	IFF_MACVLAN = 65536,
-	IFF_XMIT_DST_RELEASE_PERM = 131072,
-	IFF_L3MDEV_MASTER = 262144,
-	IFF_NO_QUEUE = 524288,
-	IFF_OPENVSWITCH = 1048576,
-	IFF_L3MDEV_SLAVE = 2097152,
-	IFF_TEAM = 4194304,
-	IFF_RXFH_CONFIGURED = 8388608,
-	IFF_PHONY_HEADROOM = 16777216,
-	IFF_MACSEC = 33554432,
-	IFF_NO_RX_HANDLER = 67108864,
-	IFF_FAILOVER = 134217728,
-	IFF_FAILOVER_SLAVE = 268435456,
-	IFF_L3MDEV_RX_HANDLER = 536870912,
-	IFF_LIVE_RENAME_OK = 1073741824,
+struct skb_shared_info {
+	__u8 flags;
+	__u8 meta_len;
+	__u8 nr_frags;
+	__u8 tx_flags;
+	short unsigned int gso_size;
+	short unsigned int gso_segs;
+	struct sk_buff *frag_list;
+	struct skb_shared_hwtstamps hwtstamps;
+	unsigned int gso_type;
+	u32 tskey;
+	atomic_t dataref;
+	void *destructor_arg;
+	skb_frag_t frags[17];
 };
 
 struct mdio_board_info {
@@ -79005,27 +102630,92 @@ struct mdio_board_entry {
 	struct mdio_board_info board_info;
 };
 
-struct sfp;
+struct mdiobus_devres {
+	struct mii_bus *mii;
+};
 
-struct sfp_socket_ops;
+enum netdev_state_t {
+	__LINK_STATE_START = 0,
+	__LINK_STATE_PRESENT = 1,
+	__LINK_STATE_NOCARRIER = 2,
+	__LINK_STATE_LINKWATCH_PENDING = 3,
+	__LINK_STATE_DORMANT = 4,
+	__LINK_STATE_TESTING = 5,
+};
 
-struct sfp_quirk;
+struct mii_ioctl_data {
+	__u16 phy_id;
+	__u16 reg_num;
+	__u16 val_in;
+	__u16 val_out;
+};
 
-struct sfp_upstream_ops;
+enum {
+	ETHTOOL_MSG_KERNEL_NONE = 0,
+	ETHTOOL_MSG_STRSET_GET_REPLY = 1,
+	ETHTOOL_MSG_LINKINFO_GET_REPLY = 2,
+	ETHTOOL_MSG_LINKINFO_NTF = 3,
+	ETHTOOL_MSG_LINKMODES_GET_REPLY = 4,
+	ETHTOOL_MSG_LINKMODES_NTF = 5,
+	ETHTOOL_MSG_LINKSTATE_GET_REPLY = 6,
+	ETHTOOL_MSG_DEBUG_GET_REPLY = 7,
+	ETHTOOL_MSG_DEBUG_NTF = 8,
+	ETHTOOL_MSG_WOL_GET_REPLY = 9,
+	ETHTOOL_MSG_WOL_NTF = 10,
+	ETHTOOL_MSG_FEATURES_GET_REPLY = 11,
+	ETHTOOL_MSG_FEATURES_SET_REPLY = 12,
+	ETHTOOL_MSG_FEATURES_NTF = 13,
+	ETHTOOL_MSG_PRIVFLAGS_GET_REPLY = 14,
+	ETHTOOL_MSG_PRIVFLAGS_NTF = 15,
+	ETHTOOL_MSG_RINGS_GET_REPLY = 16,
+	ETHTOOL_MSG_RINGS_NTF = 17,
+	ETHTOOL_MSG_CHANNELS_GET_REPLY = 18,
+	ETHTOOL_MSG_CHANNELS_NTF = 19,
+	ETHTOOL_MSG_COALESCE_GET_REPLY = 20,
+	ETHTOOL_MSG_COALESCE_NTF = 21,
+	ETHTOOL_MSG_PAUSE_GET_REPLY = 22,
+	ETHTOOL_MSG_PAUSE_NTF = 23,
+	ETHTOOL_MSG_EEE_GET_REPLY = 24,
+	ETHTOOL_MSG_EEE_NTF = 25,
+	ETHTOOL_MSG_TSINFO_GET_REPLY = 26,
+	ETHTOOL_MSG_CABLE_TEST_NTF = 27,
+	ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 28,
+	ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 29,
+	ETHTOOL_MSG_FEC_GET_REPLY = 30,
+	ETHTOOL_MSG_FEC_NTF = 31,
+	ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY = 32,
+	ETHTOOL_MSG_STATS_GET_REPLY = 33,
+	ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY = 34,
+	__ETHTOOL_MSG_KERNEL_CNT = 35,
+	ETHTOOL_MSG_KERNEL_MAX = 34,
+};
 
-struct sfp_bus {
-	struct kref kref;
-	struct list_head node;
-	struct fwnode_handle *fwnode;
-	const struct sfp_socket_ops *socket_ops;
-	struct device *sfp_dev;
-	struct sfp *sfp;
-	const struct sfp_quirk *sfp_quirk;
-	const struct sfp_upstream_ops *upstream_ops;
-	void *upstream;
-	struct phy_device *phydev;
-	bool registered;
-	bool started;
+struct phy_led_trigger {
+	struct led_trigger trigger;
+	char name[76];
+	unsigned int speed;
+};
+
+struct phy_setting {
+	u32 speed;
+	u8 duplex;
+	u8 bit;
+};
+
+struct ethtool_phy_ops {
+	int (*get_sset_count)(struct phy_device *);
+	int (*get_strings)(struct phy_device *, u8 *);
+	int (*get_stats)(struct phy_device *, struct ethtool_stats *, u64 *);
+	int (*start_cable_test)(struct phy_device *, struct netlink_ext_ack *);
+	int (*start_cable_test_tdr)(struct phy_device *, struct netlink_ext_ack *, const struct phy_tdr_config *);
+};
+
+struct phy_fixup {
+	struct list_head list;
+	char bus_id[64];
+	u32 phy_uid;
+	u32 phy_uid_mask;
+	int (*run)(struct phy_device *);
 };
 
 struct sfp_eeprom_base {
@@ -79144,6 +102834,100 @@ struct sfp_eeprom_id {
 	struct sfp_eeprom_ext ext;
 };
 
+struct sfp_upstream_ops {
+	void (*attach)(void *, struct sfp_bus *);
+	void (*detach)(void *, struct sfp_bus *);
+	int (*module_insert)(void *, const struct sfp_eeprom_id *);
+	void (*module_remove)(void *);
+	int (*module_start)(void *);
+	void (*module_stop)(void *);
+	void (*link_down)(void *);
+	void (*link_up)(void *);
+	int (*connect_phy)(void *, struct phy_device *);
+	void (*disconnect_phy)(void *);
+};
+
+struct trace_event_raw_mdio_access {
+	struct trace_entry ent;
+	char busid[61];
+	char read;
+	u8 addr;
+	u16 val;
+	unsigned int regnum;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_mdio_access {};
+
+typedef void (*btf_trace_mdio_access)(void *, struct mii_bus *, char, u8, unsigned int, u16, int);
+
+struct mdio_bus_stat_attr {
+	int addr;
+	unsigned int field_offset;
+};
+
+struct mdio_driver {
+	struct mdio_driver_common mdiodrv;
+	int (*probe)(struct mdio_device *);
+	void (*remove)(struct mdio_device *);
+	void (*shutdown)(struct mdio_device *);
+};
+
+struct fixed_phy_status {
+	int link;
+	int speed;
+	int duplex;
+	int pause;
+	int asym_pause;
+};
+
+struct swmii_regs {
+	u16 bmsr;
+	u16 lpa;
+	u16 lpagb;
+	u16 estat;
+};
+
+enum {
+	SWMII_SPEED_10 = 0,
+	SWMII_SPEED_100 = 1,
+	SWMII_SPEED_1000 = 2,
+	SWMII_DUPLEX_HALF = 0,
+	SWMII_DUPLEX_FULL = 1,
+};
+
+struct mii_timestamping_ctrl {
+	struct mii_timestamper * (*probe_channel)(struct device *, unsigned int);
+	void (*release_channel)(struct device *, struct mii_timestamper *);
+};
+
+struct mii_timestamping_desc {
+	struct list_head list;
+	struct mii_timestamping_ctrl *ctrl;
+	struct device *device;
+};
+
+struct sfp;
+
+struct sfp_socket_ops;
+
+struct sfp_quirk;
+
+struct sfp_bus {
+	struct kref kref;
+	struct list_head node;
+	struct fwnode_handle *fwnode;
+	const struct sfp_socket_ops *socket_ops;
+	struct device *sfp_dev;
+	struct sfp *sfp;
+	const struct sfp_quirk *sfp_quirk;
+	const struct sfp_upstream_ops *upstream_ops;
+	void *upstream;
+	struct phy_device *phydev;
+	bool registered;
+	bool started;
+};
+
 enum {
 	SFF8024_ID_UNK = 0,
 	SFF8024_ID_SFF_8472 = 2,
@@ -79194,19 +102978,6 @@ enum {
 	SFF8024_ECC_2_5GBASE_T = 30,
 };
 
-struct sfp_upstream_ops {
-	void (*attach)(void *, struct sfp_bus *);
-	void (*detach)(void *, struct sfp_bus *);
-	int (*module_insert)(void *, const struct sfp_eeprom_id *);
-	void (*module_remove)(void *);
-	int (*module_start)(void *);
-	void (*module_stop)(void *);
-	void (*link_down)(void *);
-	void (*link_up)(void *);
-	int (*connect_phy)(void *, struct phy_device *);
-	void (*disconnect_phy)(void *);
-};
-
 struct sfp_socket_ops {
 	void (*attach)(struct sfp *);
 	void (*detach)(struct sfp *);
@@ -79214,6 +102985,7 @@ struct sfp_socket_ops {
 	void (*stop)(struct sfp *);
 	int (*module_info)(struct sfp *, struct ethtool_modinfo *);
 	int (*module_eeprom)(struct sfp *, struct ethtool_eeprom *, u8 *);
+	int (*module_eeprom_by_page)(struct sfp *, const struct ethtool_module_eeprom *, struct netlink_ext_ack *);
 };
 
 struct sfp_quirk {
@@ -79222,6 +102994,3429 @@ struct sfp_quirk {
 	void (*modes)(const struct sfp_eeprom_id *, long unsigned int *);
 };
 
+struct mdio_device_id {
+	__u32 phy_id;
+	__u32 phy_id_mask;
+};
+
+enum {
+	MDIO_AN_C22 = 65504,
+};
+
+struct fixed_mdio_bus {
+	struct mii_bus *mii_bus;
+	struct list_head phys;
+};
+
+struct fixed_phy {
+	int addr;
+	struct phy_device *phydev;
+	struct fixed_phy_status status;
+	bool no_carrier;
+	int (*link_update)(struct net_device *, struct fixed_phy_status *);
+	struct list_head node;
+	struct gpio_desc *link_gpiod;
+};
+
+struct flow_dissector_key_control {
+	u16 thoff;
+	u16 addr_type;
+	u32 flags;
+};
+
+struct flow_dissector_key_basic {
+	__be16 n_proto;
+	u8 ip_proto;
+	u8 padding;
+};
+
+struct flow_dissector {
+	unsigned int used_keys;
+	short unsigned int offset[28];
+};
+
+struct flow_keys_basic {
+	struct flow_dissector_key_control control;
+	struct flow_dissector_key_basic basic;
+};
+
+struct nf_conntrack {
+	refcount_t use;
+};
+
+enum {
+	SKBFL_ZEROCOPY_ENABLE = 1,
+	SKBFL_SHARED_FRAG = 2,
+};
+
+struct mmpin {
+	struct user_struct *user;
+	unsigned int num_pg;
+};
+
+struct ubuf_info {
+	void (*callback)(struct sk_buff *, struct ubuf_info *, bool);
+	union {
+		struct {
+			long unsigned int desc;
+			void *ctx;
+		};
+		struct {
+			u32 id;
+			u16 len;
+			u16 zerocopy: 1;
+			u32 bytelen;
+		};
+	};
+	refcount_t refcnt;
+	u8 flags;
+	struct mmpin mmp;
+};
+
+enum {
+	SKB_GSO_TCPV4 = 1,
+	SKB_GSO_DODGY = 2,
+	SKB_GSO_TCP_ECN = 4,
+	SKB_GSO_TCP_FIXEDID = 8,
+	SKB_GSO_TCPV6 = 16,
+	SKB_GSO_FCOE = 32,
+	SKB_GSO_GRE = 64,
+	SKB_GSO_GRE_CSUM = 128,
+	SKB_GSO_IPXIP4 = 256,
+	SKB_GSO_IPXIP6 = 512,
+	SKB_GSO_UDP_TUNNEL = 1024,
+	SKB_GSO_UDP_TUNNEL_CSUM = 2048,
+	SKB_GSO_PARTIAL = 4096,
+	SKB_GSO_TUNNEL_REMCSUM = 8192,
+	SKB_GSO_SCTP = 16384,
+	SKB_GSO_ESP = 32768,
+	SKB_GSO_UDP = 65536,
+	SKB_GSO_UDP_L4 = 131072,
+	SKB_GSO_FRAGLIST = 262144,
+};
+
+enum {
+	IFLA_TUN_UNSPEC = 0,
+	IFLA_TUN_OWNER = 1,
+	IFLA_TUN_GROUP = 2,
+	IFLA_TUN_TYPE = 3,
+	IFLA_TUN_PI = 4,
+	IFLA_TUN_VNET_HDR = 5,
+	IFLA_TUN_PERSIST = 6,
+	IFLA_TUN_MULTI_QUEUE = 7,
+	IFLA_TUN_NUM_QUEUES = 8,
+	IFLA_TUN_NUM_DISABLED_QUEUES = 9,
+	__IFLA_TUN_MAX = 10,
+};
+
+struct gro_list {
+	struct list_head list;
+	int count;
+};
+
+struct napi_struct {
+	struct list_head poll_list;
+	long unsigned int state;
+	int weight;
+	int defer_hard_irqs_count;
+	long unsigned int gro_bitmask;
+	int (*poll)(struct napi_struct *, int);
+	int poll_owner;
+	struct net_device *dev;
+	struct gro_list gro_hash[8];
+	struct sk_buff *skb;
+	struct list_head rx_list;
+	int rx_count;
+	struct hrtimer timer;
+	struct list_head dev_list;
+	struct hlist_node napi_hash_node;
+	unsigned int napi_id;
+	struct task_struct *thread;
+};
+
+enum gro_result {
+	GRO_MERGED = 0,
+	GRO_MERGED_FREE = 1,
+	GRO_HELD = 2,
+	GRO_NORMAL = 3,
+	GRO_CONSUMED = 4,
+};
+
+typedef enum gro_result gro_result_t;
+
+enum netdev_queue_state_t {
+	__QUEUE_STATE_DRV_XOFF = 0,
+	__QUEUE_STATE_STACK_XOFF = 1,
+	__QUEUE_STATE_FROZEN = 2,
+};
+
+struct rps_sock_flow_table {
+	u32 mask;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	u32 ents[0];
+};
+
+struct ip_tunnel_parm {
+	char name[16];
+	int link;
+	__be16 i_flags;
+	__be16 o_flags;
+	__be32 i_key;
+	__be32 o_key;
+	struct iphdr iph;
+};
+
+struct wpan_phy;
+
+struct wpan_dev_header_ops;
+
+struct wpan_dev {
+	struct wpan_phy *wpan_phy;
+	int iftype;
+	struct list_head list;
+	struct net_device *netdev;
+	const struct wpan_dev_header_ops *header_ops;
+	struct net_device *lowpan_dev;
+	u32 identifier;
+	__le16 pan_id;
+	__le16 short_addr;
+	__le64 extended_addr;
+	atomic_t bsn;
+	atomic_t dsn;
+	u8 min_be;
+	u8 max_be;
+	u8 csma_retries;
+	s8 frame_retries;
+	bool lbt;
+	bool promiscuous_mode;
+	bool ackreq;
+};
+
+struct tun_pi {
+	__u16 flags;
+	__be16 proto;
+};
+
+struct tun_filter {
+	__u16 flags;
+	__u16 count;
+	__u8 addr[0];
+};
+
+struct virtio_net_hdr {
+	__u8 flags;
+	__u8 gso_type;
+	__virtio16 hdr_len;
+	__virtio16 gso_size;
+	__virtio16 csum_start;
+	__virtio16 csum_offset;
+};
+
+struct tun_msg_ctl {
+	short unsigned int type;
+	short unsigned int num;
+	void *ptr;
+};
+
+struct tun_xdp_hdr {
+	int buflen;
+	struct virtio_net_hdr gso;
+};
+
+struct fib_info;
+
+struct fib_nh {
+	struct fib_nh_common nh_common;
+	struct hlist_node nh_hash;
+	struct fib_info *nh_parent;
+	__u32 nh_tclassid;
+	__be32 nh_saddr;
+	int nh_saddr_genid;
+};
+
+struct fib_info {
+	struct hlist_node fib_hash;
+	struct hlist_node fib_lhash;
+	struct list_head nh_list;
+	struct net *fib_net;
+	refcount_t fib_treeref;
+	refcount_t fib_clntref;
+	unsigned int fib_flags;
+	unsigned char fib_dead;
+	unsigned char fib_protocol;
+	unsigned char fib_scope;
+	unsigned char fib_type;
+	__be32 fib_prefsrc;
+	u32 fib_tb_id;
+	u32 fib_priority;
+	struct dst_metrics *fib_metrics;
+	int fib_nhs;
+	bool fib_nh_is_v6;
+	bool nh_updated;
+	bool pfsrc_removed;
+	struct nexthop *nh;
+	struct callback_head rcu;
+	struct fib_nh fib_nh[0];
+};
+
+struct nh_info;
+
+struct nh_group;
+
+struct nexthop {
+	struct rb_node rb_node;
+	struct list_head fi_list;
+	struct list_head f6i_list;
+	struct list_head fdb_list;
+	struct list_head grp_list;
+	struct net *net;
+	u32 id;
+	u8 protocol;
+	u8 nh_flags;
+	bool is_group;
+	refcount_t refcnt;
+	struct callback_head rcu;
+	union {
+		struct nh_info *nh_info;
+		struct nh_group *nh_grp;
+	};
+};
+
+struct nh_info {
+	struct hlist_node dev_hash;
+	struct nexthop *nh_parent;
+	u8 family;
+	bool reject_nh;
+	bool fdb_nh;
+	union {
+		struct fib_nh_common fib_nhc;
+		struct fib_nh fib_nh;
+		struct fib6_nh fib6_nh;
+	};
+};
+
+struct nh_grp_entry;
+
+struct nh_res_bucket {
+	struct nh_grp_entry *nh_entry;
+	atomic_long_t used_time;
+	long unsigned int migrated_time;
+	bool occupied;
+	u8 nh_flags;
+};
+
+struct nh_grp_entry {
+	struct nexthop *nh;
+	u8 weight;
+	union {
+		struct {
+			atomic_t upper_bound;
+		} hthr;
+		struct {
+			struct list_head uw_nh_entry;
+			u16 count_buckets;
+			u16 wants_buckets;
+		} res;
+	};
+	struct list_head nh_list;
+	struct nexthop *nh_parent;
+};
+
+struct nh_res_table {
+	struct net *net;
+	u32 nhg_id;
+	struct delayed_work upkeep_dw;
+	struct list_head uw_nh_entries;
+	long unsigned int unbalanced_since;
+	u32 idle_timer;
+	u32 unbalanced_timer;
+	u16 num_nh_buckets;
+	struct nh_res_bucket nh_buckets[0];
+};
+
+struct nh_group {
+	struct nh_group *spare;
+	u16 num_nh;
+	bool is_multipath;
+	bool hash_threshold;
+	bool resilient;
+	bool fdb_nh;
+	bool has_v4;
+	struct nh_res_table *res_table;
+	struct nh_grp_entry nh_entries[0];
+};
+
+enum {
+	AX25_VALUES_IPDEFMODE = 0,
+	AX25_VALUES_AXDEFMODE = 1,
+	AX25_VALUES_BACKOFF = 2,
+	AX25_VALUES_CONMODE = 3,
+	AX25_VALUES_WINDOW = 4,
+	AX25_VALUES_EWINDOW = 5,
+	AX25_VALUES_T1 = 6,
+	AX25_VALUES_T2 = 7,
+	AX25_VALUES_T3 = 8,
+	AX25_VALUES_IDLE = 9,
+	AX25_VALUES_N2 = 10,
+	AX25_VALUES_PACLEN = 11,
+	AX25_VALUES_PROTOCOL = 12,
+	AX25_VALUES_DS_TIMEOUT = 13,
+	AX25_MAX_VALUES = 14,
+};
+
+enum nl802154_cca_modes {
+	__NL802154_CCA_INVALID = 0,
+	NL802154_CCA_ENERGY = 1,
+	NL802154_CCA_CARRIER = 2,
+	NL802154_CCA_ENERGY_CARRIER = 3,
+	NL802154_CCA_ALOHA = 4,
+	NL802154_CCA_UWB_SHR = 5,
+	NL802154_CCA_UWB_MULTIPLEXED = 6,
+	__NL802154_CCA_ATTR_AFTER_LAST = 7,
+	NL802154_CCA_ATTR_MAX = 6,
+};
+
+enum nl802154_cca_opts {
+	NL802154_CCA_OPT_ENERGY_CARRIER_AND = 0,
+	NL802154_CCA_OPT_ENERGY_CARRIER_OR = 1,
+	__NL802154_CCA_OPT_ATTR_AFTER_LAST = 2,
+	NL802154_CCA_OPT_ATTR_MAX = 1,
+};
+
+enum nl802154_supported_bool_states {
+	NL802154_SUPPORTED_BOOL_FALSE = 0,
+	NL802154_SUPPORTED_BOOL_TRUE = 1,
+	__NL802154_SUPPORTED_BOOL_INVALD = 2,
+	NL802154_SUPPORTED_BOOL_BOTH = 3,
+	__NL802154_SUPPORTED_BOOL_AFTER_LAST = 4,
+	NL802154_SUPPORTED_BOOL_MAX = 3,
+};
+
+struct wpan_phy_supported {
+	u32 channels[32];
+	u32 cca_modes;
+	u32 cca_opts;
+	u32 iftypes;
+	enum nl802154_supported_bool_states lbt;
+	u8 min_minbe;
+	u8 max_minbe;
+	u8 min_maxbe;
+	u8 max_maxbe;
+	u8 min_csma_backoffs;
+	u8 max_csma_backoffs;
+	s8 min_frame_retries;
+	s8 max_frame_retries;
+	size_t tx_powers_size;
+	size_t cca_ed_levels_size;
+	const s32 *tx_powers;
+	const s32 *cca_ed_levels;
+};
+
+struct wpan_phy_cca {
+	enum nl802154_cca_modes mode;
+	enum nl802154_cca_opts opt;
+};
+
+struct wpan_phy {
+	const void *privid;
+	u32 flags;
+	u8 current_channel;
+	u8 current_page;
+	struct wpan_phy_supported supported;
+	s32 transmit_power;
+	struct wpan_phy_cca cca;
+	__le64 perm_extended_addr;
+	s32 cca_ed_level;
+	u8 symbol_duration;
+	u16 lifs_period;
+	u16 sifs_period;
+	struct device dev;
+	possible_net_t _net;
+	char priv[0];
+};
+
+struct ieee802154_addr {
+	u8 mode;
+	__le16 pan_id;
+	union {
+		__le16 short_addr;
+		__le64 extended_addr;
+	};
+};
+
+struct wpan_dev_header_ops {
+	int (*create)(struct sk_buff *, struct net_device *, const struct ieee802154_addr *, const struct ieee802154_addr *, unsigned int);
+};
+
+struct tap_filter {
+	unsigned int count;
+	u32 mask[2];
+	unsigned char addr[48];
+};
+
+struct tun_struct;
+
+struct tun_file {
+	struct sock sk;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct socket socket;
+	struct tun_struct *tun;
+	struct fasync_struct *fasync;
+	unsigned int flags;
+	union {
+		u16 queue_index;
+		unsigned int ifindex;
+	};
+	struct napi_struct napi;
+	bool napi_enabled;
+	bool napi_frags_enabled;
+	struct mutex napi_mutex;
+	struct list_head next;
+	struct tun_struct *detached;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct ptr_ring tx_ring;
+	struct xdp_rxq_info xdp_rxq;
+};
+
+struct tun_prog;
+
+struct tun_struct {
+	struct tun_file *tfiles[256];
+	unsigned int numqueues;
+	unsigned int flags;
+	kuid_t owner;
+	kgid_t group;
+	struct net_device *dev;
+	netdev_features_t set_features;
+	int align;
+	int vnet_hdr_sz;
+	int sndbuf;
+	struct tap_filter txflt;
+	struct sock_fprog fprog;
+	bool filter_attached;
+	u32 msg_enable;
+	spinlock_t lock;
+	struct hlist_head flows[1024];
+	struct timer_list flow_gc_timer;
+	long unsigned int ageing_time;
+	unsigned int numdisabled;
+	struct list_head disabled;
+	void *security;
+	u32 flow_count;
+	u32 rx_batched;
+	atomic_long_t rx_frame_errors;
+	struct bpf_prog *xdp_prog;
+	struct tun_prog *steering_prog;
+	struct tun_prog *filter_prog;
+	struct ethtool_link_ksettings link_ksettings;
+	struct file *file;
+	struct ifreq *ifr;
+};
+
+struct tun_page {
+	struct page *page;
+	int count;
+};
+
+struct tun_flow_entry {
+	struct hlist_node hash_link;
+	struct callback_head rcu;
+	struct tun_struct *tun;
+	u32 rxhash;
+	u32 rps_rxhash;
+	int queue_index;
+	long: 64;
+	long unsigned int updated;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct tun_prog {
+	struct callback_head rcu;
+	struct bpf_prog *prog;
+};
+
+struct veth {
+	__be16 h_vlan_proto;
+	__be16 h_vlan_TCI;
+};
+
+enum {
+	IFLA_UNSPEC = 0,
+	IFLA_ADDRESS = 1,
+	IFLA_BROADCAST = 2,
+	IFLA_IFNAME = 3,
+	IFLA_MTU = 4,
+	IFLA_LINK = 5,
+	IFLA_QDISC = 6,
+	IFLA_STATS = 7,
+	IFLA_COST = 8,
+	IFLA_PRIORITY = 9,
+	IFLA_MASTER = 10,
+	IFLA_WIRELESS = 11,
+	IFLA_PROTINFO = 12,
+	IFLA_TXQLEN = 13,
+	IFLA_MAP = 14,
+	IFLA_WEIGHT = 15,
+	IFLA_OPERSTATE = 16,
+	IFLA_LINKMODE = 17,
+	IFLA_LINKINFO = 18,
+	IFLA_NET_NS_PID = 19,
+	IFLA_IFALIAS = 20,
+	IFLA_NUM_VF = 21,
+	IFLA_VFINFO_LIST = 22,
+	IFLA_STATS64 = 23,
+	IFLA_VF_PORTS = 24,
+	IFLA_PORT_SELF = 25,
+	IFLA_AF_SPEC = 26,
+	IFLA_GROUP = 27,
+	IFLA_NET_NS_FD = 28,
+	IFLA_EXT_MASK = 29,
+	IFLA_PROMISCUITY = 30,
+	IFLA_NUM_TX_QUEUES = 31,
+	IFLA_NUM_RX_QUEUES = 32,
+	IFLA_CARRIER = 33,
+	IFLA_PHYS_PORT_ID = 34,
+	IFLA_CARRIER_CHANGES = 35,
+	IFLA_PHYS_SWITCH_ID = 36,
+	IFLA_LINK_NETNSID = 37,
+	IFLA_PHYS_PORT_NAME = 38,
+	IFLA_PROTO_DOWN = 39,
+	IFLA_GSO_MAX_SEGS = 40,
+	IFLA_GSO_MAX_SIZE = 41,
+	IFLA_PAD = 42,
+	IFLA_XDP = 43,
+	IFLA_EVENT = 44,
+	IFLA_NEW_NETNSID = 45,
+	IFLA_IF_NETNSID = 46,
+	IFLA_TARGET_NETNSID = 46,
+	IFLA_CARRIER_UP_COUNT = 47,
+	IFLA_CARRIER_DOWN_COUNT = 48,
+	IFLA_NEW_IFINDEX = 49,
+	IFLA_MIN_MTU = 50,
+	IFLA_MAX_MTU = 51,
+	IFLA_PROP_LIST = 52,
+	IFLA_ALT_IFNAME = 53,
+	IFLA_PERM_ADDRESS = 54,
+	IFLA_PROTO_DOWN_REASON = 55,
+	IFLA_PARENT_DEV_NAME = 56,
+	IFLA_PARENT_DEV_BUS_NAME = 57,
+	__IFLA_MAX = 58,
+};
+
+enum {
+	IFLA_PPP_UNSPEC = 0,
+	IFLA_PPP_DEV_FD = 1,
+	__IFLA_PPP_MAX = 2,
+};
+
+enum NPmode {
+	NPMODE_PASS = 0,
+	NPMODE_DROP = 1,
+	NPMODE_ERROR = 2,
+	NPMODE_QUEUE = 3,
+};
+
+struct pppstat {
+	__u32 ppp_discards;
+	__u32 ppp_ibytes;
+	__u32 ppp_ioctects;
+	__u32 ppp_ipackets;
+	__u32 ppp_ierrors;
+	__u32 ppp_ilqrs;
+	__u32 ppp_obytes;
+	__u32 ppp_ooctects;
+	__u32 ppp_opackets;
+	__u32 ppp_oerrors;
+	__u32 ppp_olqrs;
+};
+
+struct vjstat {
+	__u32 vjs_packets;
+	__u32 vjs_compressed;
+	__u32 vjs_searches;
+	__u32 vjs_misses;
+	__u32 vjs_uncompressedin;
+	__u32 vjs_compressedin;
+	__u32 vjs_errorin;
+	__u32 vjs_tossed;
+};
+
+struct compstat {
+	__u32 unc_bytes;
+	__u32 unc_packets;
+	__u32 comp_bytes;
+	__u32 comp_packets;
+	__u32 inc_bytes;
+	__u32 inc_packets;
+	__u32 in_count;
+	__u32 bytes_out;
+	double ratio;
+};
+
+struct ppp_stats {
+	struct pppstat p;
+	struct vjstat vj;
+};
+
+struct ppp_comp_stats {
+	struct compstat c;
+	struct compstat d;
+};
+
+struct ppp_idle32 {
+	__s32 xmit_idle;
+	__s32 recv_idle;
+};
+
+struct ppp_idle64 {
+	__s64 xmit_idle;
+	__s64 recv_idle;
+};
+
+struct npioctl {
+	int protocol;
+	enum NPmode mode;
+};
+
+struct ppp_option_data {
+	__u8 *ptr;
+	__u32 length;
+	int transmit;
+};
+
+struct ppp_channel;
+
+struct ppp_channel_ops {
+	int (*start_xmit)(struct ppp_channel *, struct sk_buff *);
+	int (*ioctl)(struct ppp_channel *, unsigned int, long unsigned int);
+	int (*fill_forward_path)(struct net_device_path_ctx *, struct net_device_path *, const struct ppp_channel *);
+};
+
+struct ppp_channel {
+	void *private;
+	const struct ppp_channel_ops *ops;
+	int mtu;
+	int hdrlen;
+	void *ppp;
+	int speed;
+	int latency;
+};
+
+struct compressor {
+	int compress_proto;
+	void * (*comp_alloc)(unsigned char *, int);
+	void (*comp_free)(void *);
+	int (*comp_init)(void *, unsigned char *, int, int, int, int);
+	void (*comp_reset)(void *);
+	int (*compress)(void *, unsigned char *, unsigned char *, int, int);
+	void (*comp_stat)(void *, struct compstat *);
+	void * (*decomp_alloc)(unsigned char *, int);
+	void (*decomp_free)(void *);
+	int (*decomp_init)(void *, unsigned char *, int, int, int, int, int);
+	void (*decomp_reset)(void *);
+	int (*decompress)(void *, unsigned char *, int, unsigned char *, int);
+	void (*incomp)(void *, unsigned char *, int);
+	void (*decomp_stat)(void *, struct compstat *);
+	struct module *owner;
+	unsigned int comp_extra;
+};
+
+typedef __u8 byte_t;
+
+typedef __u32 int32;
+
+struct cstate___2 {
+	byte_t cs_this;
+	bool initialized;
+	struct cstate___2 *next;
+	struct iphdr cs_ip;
+	struct tcphdr cs_tcp;
+	unsigned char cs_ipopt[64];
+	unsigned char cs_tcpopt[64];
+	int cs_hsize;
+};
+
+struct slcompress {
+	struct cstate___2 *tstate;
+	struct cstate___2 *rstate;
+	byte_t tslot_limit;
+	byte_t rslot_limit;
+	byte_t xmit_oldest;
+	byte_t xmit_current;
+	byte_t recv_current;
+	byte_t flags;
+	int32 sls_o_nontcp;
+	int32 sls_o_tcp;
+	int32 sls_o_uncompressed;
+	int32 sls_o_compressed;
+	int32 sls_o_searches;
+	int32 sls_o_misses;
+	int32 sls_i_uncompressed;
+	int32 sls_i_compressed;
+	int32 sls_i_error;
+	int32 sls_i_tossed;
+	int32 sls_i_runt;
+	int32 sls_i_badcheck;
+};
+
+struct ppp_file {
+	enum {
+		INTERFACE = 1,
+		CHANNEL = 2,
+	} kind;
+	struct sk_buff_head xq;
+	struct sk_buff_head rq;
+	wait_queue_head_t rwait;
+	refcount_t refcnt;
+	int hdrlen;
+	int index;
+	int dead;
+};
+
+struct ppp_link_stats {
+	u64 rx_packets;
+	u64 tx_packets;
+	u64 rx_bytes;
+	u64 tx_bytes;
+};
+
+struct ppp {
+	struct ppp_file file;
+	struct file *owner;
+	struct list_head channels;
+	int n_channels;
+	spinlock_t rlock;
+	spinlock_t wlock;
+	int *xmit_recursion;
+	int mru;
+	unsigned int flags;
+	unsigned int xstate;
+	unsigned int rstate;
+	int debug;
+	struct slcompress *vj;
+	enum NPmode npmode[6];
+	struct sk_buff *xmit_pending;
+	struct compressor *xcomp;
+	void *xc_state;
+	struct compressor *rcomp;
+	void *rc_state;
+	long unsigned int last_xmit;
+	long unsigned int last_recv;
+	struct net_device *dev;
+	int closing;
+	int nxchan;
+	u32 nxseq;
+	int mrru;
+	u32 nextseq;
+	u32 minseq;
+	struct sk_buff_head mrq;
+	struct bpf_prog *pass_filter;
+	struct bpf_prog *active_filter;
+	struct net *ppp_net;
+	struct ppp_link_stats stats64;
+};
+
+struct channel {
+	struct ppp_file file;
+	struct list_head list;
+	struct ppp_channel *chan;
+	struct rw_semaphore chan_sem;
+	spinlock_t downl;
+	struct ppp *ppp;
+	struct net *chan_net;
+	struct list_head clist;
+	rwlock_t upl;
+	struct channel *bridge;
+	u8 avail;
+	u8 had_frag;
+	u32 lastseq;
+	int speed;
+};
+
+struct ppp_config {
+	struct file *file;
+	s32 unit;
+	bool ifname_is_set;
+};
+
+struct ppp_net {
+	struct idr units_idr;
+	struct mutex all_ppp_mutex;
+	struct list_head all_channels;
+	struct list_head new_channels;
+	int last_channel_index;
+	spinlock_t all_channels_lock;
+};
+
+struct sock_fprog32 {
+	short unsigned int len;
+	compat_caddr_t filter;
+};
+
+struct ppp_option_data32 {
+	compat_uptr_t ptr;
+	u32 length;
+	compat_int_t transmit;
+};
+
+struct ppp_mp_skb_parm {
+	u32 sequence;
+	u8 BEbits;
+};
+
+struct compressor_entry {
+	struct list_head list;
+	struct compressor *comp;
+};
+
+struct wl1251_platform_data {
+	int power_gpio;
+	int irq;
+	bool use_eeprom;
+};
+
+enum skb_free_reason {
+	SKB_REASON_CONSUMED = 0,
+	SKB_REASON_DROPPED = 1,
+};
+
+enum ethtool_stringset {
+	ETH_SS_TEST = 0,
+	ETH_SS_STATS = 1,
+	ETH_SS_PRIV_FLAGS = 2,
+	ETH_SS_NTUPLE_FILTERS = 3,
+	ETH_SS_FEATURES = 4,
+	ETH_SS_RSS_HASH_FUNCS = 5,
+	ETH_SS_TUNABLES = 6,
+	ETH_SS_PHY_STATS = 7,
+	ETH_SS_PHY_TUNABLES = 8,
+	ETH_SS_LINK_MODES = 9,
+	ETH_SS_MSG_CLASSES = 10,
+	ETH_SS_WOL_MODES = 11,
+	ETH_SS_SOF_TIMESTAMPING = 12,
+	ETH_SS_TS_TX_TYPES = 13,
+	ETH_SS_TS_RX_FILTERS = 14,
+	ETH_SS_UDP_TUNNEL_TYPES = 15,
+	ETH_SS_STATS_STD = 16,
+	ETH_SS_STATS_ETH_PHY = 17,
+	ETH_SS_STATS_ETH_MAC = 18,
+	ETH_SS_STATS_ETH_CTRL = 19,
+	ETH_SS_STATS_RMON = 20,
+	ETH_SS_COUNT = 21,
+};
+
+struct xen_netif_tx_request {
+	grant_ref_t gref;
+	uint16_t offset;
+	uint16_t flags;
+	uint16_t id;
+	uint16_t size;
+};
+
+struct xen_netif_extra_info {
+	uint8_t type;
+	uint8_t flags;
+	union {
+		struct {
+			uint16_t size;
+			uint8_t type;
+			uint8_t pad;
+			uint16_t features;
+		} gso;
+		struct {
+			uint8_t addr[6];
+		} mcast;
+		struct {
+			uint8_t type;
+			uint8_t algorithm;
+			uint8_t value[4];
+		} hash;
+		struct {
+			uint16_t headroom;
+			uint16_t pad[2];
+		} xdp;
+		uint16_t pad[3];
+	} u;
+};
+
+struct xen_netif_tx_response {
+	uint16_t id;
+	int16_t status;
+};
+
+struct xen_netif_rx_request {
+	uint16_t id;
+	uint16_t pad;
+	grant_ref_t gref;
+};
+
+struct xen_netif_rx_response {
+	uint16_t id;
+	uint16_t offset;
+	uint16_t flags;
+	int16_t status;
+};
+
+union xen_netif_tx_sring_entry {
+	struct xen_netif_tx_request req;
+	struct xen_netif_tx_response rsp;
+};
+
+struct xen_netif_tx_sring {
+	RING_IDX req_prod;
+	RING_IDX req_event;
+	RING_IDX rsp_prod;
+	RING_IDX rsp_event;
+	uint8_t __pad[48];
+	union xen_netif_tx_sring_entry ring[1];
+};
+
+struct xen_netif_tx_front_ring {
+	RING_IDX req_prod_pvt;
+	RING_IDX rsp_cons;
+	unsigned int nr_ents;
+	struct xen_netif_tx_sring *sring;
+};
+
+union xen_netif_rx_sring_entry {
+	struct xen_netif_rx_request req;
+	struct xen_netif_rx_response rsp;
+};
+
+struct xen_netif_rx_sring {
+	RING_IDX req_prod;
+	RING_IDX req_event;
+	RING_IDX rsp_prod;
+	RING_IDX rsp_event;
+	uint8_t __pad[48];
+	union xen_netif_rx_sring_entry ring[1];
+};
+
+struct xen_netif_rx_front_ring {
+	RING_IDX req_prod_pvt;
+	RING_IDX rsp_cons;
+	unsigned int nr_ents;
+	struct xen_netif_rx_sring *sring;
+};
+
+struct netfront_cb {
+	int pull_to;
+};
+
+struct netfront_stats {
+	u64 packets;
+	u64 bytes;
+	struct u64_stats_sync syncp;
+};
+
+struct netfront_info;
+
+struct netfront_queue {
+	unsigned int id;
+	char name[22];
+	struct netfront_info *info;
+	struct bpf_prog *xdp_prog;
+	struct napi_struct napi;
+	unsigned int tx_evtchn;
+	unsigned int rx_evtchn;
+	unsigned int tx_irq;
+	unsigned int rx_irq;
+	char tx_irq_name[25];
+	char rx_irq_name[25];
+	spinlock_t tx_lock;
+	struct xen_netif_tx_front_ring tx;
+	int tx_ring_ref;
+	struct sk_buff *tx_skbs[256];
+	short unsigned int tx_link[256];
+	grant_ref_t gref_tx_head;
+	grant_ref_t grant_tx_ref[256];
+	struct page *grant_tx_page[256];
+	unsigned int tx_skb_freelist;
+	unsigned int tx_pend_queue;
+	long: 64;
+	spinlock_t rx_lock;
+	struct xen_netif_rx_front_ring rx;
+	int rx_ring_ref;
+	struct timer_list rx_refill_timer;
+	struct sk_buff *rx_skbs[256];
+	grant_ref_t gref_rx_head;
+	grant_ref_t grant_rx_ref[256];
+	unsigned int rx_rsp_unconsumed;
+	spinlock_t rx_cons_lock;
+	struct page_pool *page_pool;
+	long: 64;
+	long: 64;
+	long: 64;
+	struct xdp_rxq_info xdp_rxq;
+};
+
+struct netfront_info {
+	struct list_head list;
+	struct net_device *netdev;
+	struct xenbus_device *xbdev;
+	struct netfront_queue *queues;
+	struct netfront_stats *rx_stats;
+	struct netfront_stats *tx_stats;
+	bool netback_has_xdp_headroom;
+	bool netfront_xdp_enabled;
+	bool broken;
+	bool bounce;
+	atomic_t rx_gso_checksum_fixup;
+};
+
+struct netfront_rx_info {
+	struct xen_netif_rx_response rx;
+	struct xen_netif_extra_info extras[5];
+};
+
+struct xennet_gnttab_make_txreq {
+	struct netfront_queue *queue;
+	struct sk_buff *skb;
+	struct page *page;
+	struct xen_netif_tx_request *tx;
+	struct xen_netif_tx_request tx_local;
+	unsigned int size;
+};
+
+struct xennet_stat {
+	char name[32];
+	u16 offset;
+};
+
+struct vfio_info_cap_header {
+	__u16 id;
+	__u16 version;
+	__u32 next;
+};
+
+struct vfio_group_status {
+	__u32 argsz;
+	__u32 flags;
+};
+
+struct vfio_irq_set {
+	__u32 argsz;
+	__u32 flags;
+	__u32 index;
+	__u32 start;
+	__u32 count;
+	__u8 data[0];
+};
+
+struct vfio_device_set {
+	void *set_id;
+	struct mutex lock;
+	struct list_head device_list;
+	unsigned int device_count;
+};
+
+struct vfio_device_ops;
+
+struct vfio_group;
+
+struct vfio_device {
+	struct device *dev;
+	const struct vfio_device_ops *ops;
+	struct vfio_group *group;
+	struct vfio_device_set *dev_set;
+	struct list_head dev_set_list;
+	refcount_t refcount;
+	unsigned int open_count;
+	struct completion comp;
+	struct list_head group_next;
+};
+
+struct vfio_device_ops {
+	char *name;
+	int (*open_device)(struct vfio_device *);
+	void (*close_device)(struct vfio_device *);
+	ssize_t (*read)(struct vfio_device *, char *, size_t, loff_t *);
+	ssize_t (*write)(struct vfio_device *, const char *, size_t, loff_t *);
+	long int (*ioctl)(struct vfio_device *, unsigned int, long unsigned int);
+	int (*mmap)(struct vfio_device *, struct vm_area_struct *);
+	void (*request)(struct vfio_device *, unsigned int);
+	int (*match)(struct vfio_device *, char *);
+};
+
+struct vfio_container;
+
+struct vfio_group {
+	struct kref kref;
+	int minor;
+	atomic_t container_users;
+	struct iommu_group *iommu_group;
+	struct vfio_container *container;
+	struct list_head device_list;
+	struct mutex device_lock;
+	struct device *dev;
+	struct notifier_block nb;
+	struct list_head vfio_next;
+	struct list_head container_next;
+	struct list_head unbound_list;
+	struct mutex unbound_lock;
+	atomic_t opened;
+	wait_queue_head_t container_q;
+	bool noiommu;
+	unsigned int dev_counter;
+	struct kvm *kvm;
+	struct blocking_notifier_head notifier;
+};
+
+enum vfio_iommu_notify_type {
+	VFIO_IOMMU_CONTAINER_CLOSE = 0,
+};
+
+struct vfio_iommu_driver_ops {
+	char *name;
+	struct module *owner;
+	void * (*open)(long unsigned int);
+	void (*release)(void *);
+	ssize_t (*read)(void *, char *, size_t, loff_t *);
+	ssize_t (*write)(void *, const char *, size_t, loff_t *);
+	long int (*ioctl)(void *, unsigned int, long unsigned int);
+	int (*mmap)(void *, struct vm_area_struct *);
+	int (*attach_group)(void *, struct iommu_group *);
+	void (*detach_group)(void *, struct iommu_group *);
+	int (*pin_pages)(void *, struct iommu_group *, long unsigned int *, int, int, long unsigned int *);
+	int (*unpin_pages)(void *, long unsigned int *, int);
+	int (*register_notifier)(void *, long unsigned int *, struct notifier_block *);
+	int (*unregister_notifier)(void *, struct notifier_block *);
+	int (*dma_rw)(void *, dma_addr_t, void *, size_t, bool);
+	struct iommu_domain * (*group_iommu_domain)(void *, struct iommu_group *);
+	void (*notify)(void *, enum vfio_iommu_notify_type);
+};
+
+enum vfio_notify_type {
+	VFIO_IOMMU_NOTIFY = 0,
+	VFIO_GROUP_NOTIFY = 1,
+};
+
+struct vfio_info_cap {
+	struct vfio_info_cap_header *buf;
+	size_t size;
+};
+
+struct vfio {
+	struct class *class;
+	struct list_head iommu_drivers_list;
+	struct mutex iommu_drivers_lock;
+	struct list_head group_list;
+	struct idr group_idr;
+	struct mutex group_lock;
+	struct cdev group_cdev;
+	dev_t group_devt;
+};
+
+struct vfio_iommu_driver {
+	const struct vfio_iommu_driver_ops *ops;
+	struct list_head vfio_next;
+};
+
+struct vfio_container {
+	struct kref kref;
+	struct list_head group_list;
+	struct rw_semaphore group_lock;
+	struct vfio_iommu_driver *iommu_driver;
+	void *iommu_data;
+	bool noiommu;
+};
+
+struct vfio_unbound_dev {
+	struct device *dev;
+	struct list_head unbound_next;
+};
+
+struct vfio_group_put_work {
+	struct work_struct work;
+	struct vfio_group *group;
+};
+
+struct virqfd {
+	void *opaque;
+	struct eventfd_ctx *eventfd;
+	int (*handler)(void *, void *);
+	void (*thread)(void *, void *);
+	void *data;
+	struct work_struct inject;
+	wait_queue_entry_t wait;
+	poll_table pt;
+	struct work_struct shutdown;
+	struct work_struct flush_inject;
+	struct virqfd **pvirqfd;
+};
+
+struct vfio_iommu_type1_info {
+	__u32 argsz;
+	__u32 flags;
+	__u64 iova_pgsizes;
+	__u32 cap_offset;
+};
+
+struct vfio_iova_range {
+	__u64 start;
+	__u64 end;
+};
+
+struct vfio_iommu_type1_info_cap_iova_range {
+	struct vfio_info_cap_header header;
+	__u32 nr_iovas;
+	__u32 reserved;
+	struct vfio_iova_range iova_ranges[0];
+};
+
+struct vfio_iommu_type1_info_cap_migration {
+	struct vfio_info_cap_header header;
+	__u32 flags;
+	__u64 pgsize_bitmap;
+	__u64 max_dirty_bitmap_size;
+};
+
+struct vfio_iommu_type1_info_dma_avail {
+	struct vfio_info_cap_header header;
+	__u32 avail;
+};
+
+struct vfio_iommu_type1_dma_map {
+	__u32 argsz;
+	__u32 flags;
+	__u64 vaddr;
+	__u64 iova;
+	__u64 size;
+};
+
+struct vfio_bitmap {
+	__u64 pgsize;
+	__u64 size;
+	__u64 *data;
+};
+
+struct vfio_iommu_type1_dma_unmap {
+	__u32 argsz;
+	__u32 flags;
+	__u64 iova;
+	__u64 size;
+	__u8 data[0];
+};
+
+struct vfio_iommu_type1_dirty_bitmap {
+	__u32 argsz;
+	__u32 flags;
+	__u8 data[0];
+};
+
+struct vfio_iommu_type1_dirty_bitmap_get {
+	__u64 iova;
+	__u64 size;
+	struct vfio_bitmap bitmap;
+};
+
+struct mdev_type;
+
+struct mdev_device {
+	struct device dev;
+	guid_t uuid;
+	void *driver_data;
+	struct list_head next;
+	struct mdev_type *type;
+	struct device *iommu_device;
+	bool active;
+};
+
+struct vfio_domain;
+
+struct vfio_iommu {
+	struct list_head domain_list;
+	struct list_head iova_list;
+	struct vfio_domain *external_domain;
+	struct mutex lock;
+	struct rb_root dma_list;
+	struct blocking_notifier_head notifier;
+	unsigned int dma_avail;
+	unsigned int vaddr_invalid_count;
+	uint64_t pgsize_bitmap;
+	uint64_t num_non_pinned_groups;
+	wait_queue_head_t vaddr_wait;
+	bool v2;
+	bool nesting;
+	bool dirty_page_tracking;
+	bool container_open;
+};
+
+struct vfio_domain {
+	struct iommu_domain *domain;
+	struct list_head next;
+	struct list_head group_list;
+	int prot;
+	bool fgsp;
+};
+
+struct vfio_dma {
+	struct rb_node node;
+	dma_addr_t iova;
+	long unsigned int vaddr;
+	size_t size;
+	int prot;
+	bool iommu_mapped;
+	bool lock_cap;
+	bool vaddr_invalid;
+	struct task_struct *task;
+	struct rb_root pfn_list;
+	long unsigned int *bitmap;
+	struct mm_struct *mm;
+	size_t locked_vm;
+};
+
+struct vfio_batch {
+	struct page **pages;
+	struct page *fallback_page;
+	int capacity;
+	int size;
+	int offset;
+};
+
+struct vfio_iommu_group {
+	struct iommu_group *iommu_group;
+	struct list_head next;
+	bool mdev_group;
+	bool pinned_page_dirty_scope;
+};
+
+struct vfio_iova {
+	struct list_head list;
+	dma_addr_t start;
+	dma_addr_t end;
+};
+
+struct vfio_pfn {
+	struct rb_node node;
+	dma_addr_t iova;
+	long unsigned int pfn;
+	unsigned int ref_count;
+};
+
+struct vfio_regions {
+	struct list_head list;
+	dma_addr_t iova;
+	phys_addr_t phys;
+	size_t len;
+};
+
+struct vfio_device_info {
+	__u32 argsz;
+	__u32 flags;
+	__u32 num_regions;
+	__u32 num_irqs;
+	__u32 cap_offset;
+};
+
+struct vfio_region_info {
+	__u32 argsz;
+	__u32 flags;
+	__u32 index;
+	__u32 cap_offset;
+	__u64 size;
+	__u64 offset;
+};
+
+struct vfio_region_info_cap_type {
+	struct vfio_info_cap_header header;
+	__u32 type;
+	__u32 subtype;
+};
+
+struct vfio_irq_info {
+	__u32 argsz;
+	__u32 flags;
+	__u32 index;
+	__u32 count;
+};
+
+enum {
+	VFIO_PCI_BAR0_REGION_INDEX = 0,
+	VFIO_PCI_BAR1_REGION_INDEX = 1,
+	VFIO_PCI_BAR2_REGION_INDEX = 2,
+	VFIO_PCI_BAR3_REGION_INDEX = 3,
+	VFIO_PCI_BAR4_REGION_INDEX = 4,
+	VFIO_PCI_BAR5_REGION_INDEX = 5,
+	VFIO_PCI_ROM_REGION_INDEX = 6,
+	VFIO_PCI_CONFIG_REGION_INDEX = 7,
+	VFIO_PCI_VGA_REGION_INDEX = 8,
+	VFIO_PCI_NUM_REGIONS = 9,
+};
+
+enum {
+	VFIO_PCI_INTX_IRQ_INDEX = 0,
+	VFIO_PCI_MSI_IRQ_INDEX = 1,
+	VFIO_PCI_MSIX_IRQ_INDEX = 2,
+	VFIO_PCI_ERR_IRQ_INDEX = 3,
+	VFIO_PCI_REQ_IRQ_INDEX = 4,
+	VFIO_PCI_NUM_IRQS = 5,
+};
+
+struct vfio_pci_dependent_device {
+	__u32 group_id;
+	__u16 segment;
+	__u8 bus;
+	__u8 devfn;
+};
+
+struct vfio_pci_hot_reset_info {
+	__u32 argsz;
+	__u32 flags;
+	__u32 count;
+	struct vfio_pci_dependent_device devices[0];
+};
+
+struct vfio_pci_hot_reset {
+	__u32 argsz;
+	__u32 flags;
+	__u32 count;
+	__s32 group_fds[0];
+};
+
+struct vfio_device_ioeventfd {
+	__u32 argsz;
+	__u32 flags;
+	__u64 offset;
+	__u64 data;
+	__s32 fd;
+};
+
+struct vfio_device_feature {
+	__u32 argsz;
+	__u32 flags;
+	__u8 data[0];
+};
+
+struct irq_bypass_consumer;
+
+struct irq_bypass_producer {
+	struct list_head node;
+	void *token;
+	int irq;
+	int (*add_consumer)(struct irq_bypass_producer *, struct irq_bypass_consumer *);
+	void (*del_consumer)(struct irq_bypass_producer *, struct irq_bypass_consumer *);
+	void (*stop)(struct irq_bypass_producer *);
+	void (*start)(struct irq_bypass_producer *);
+};
+
+struct irq_bypass_consumer {
+	struct list_head node;
+	void *token;
+	int (*add_producer)(struct irq_bypass_consumer *, struct irq_bypass_producer *);
+	void (*del_producer)(struct irq_bypass_consumer *, struct irq_bypass_producer *);
+	void (*stop)(struct irq_bypass_consumer *);
+	void (*start)(struct irq_bypass_consumer *);
+};
+
+struct vfio_pci_core_device;
+
+struct vfio_pci_ioeventfd {
+	struct list_head next;
+	struct vfio_pci_core_device *vdev;
+	struct virqfd *virqfd;
+	void *addr;
+	uint64_t data;
+	loff_t pos;
+	int bar;
+	int count;
+	bool test_mem;
+};
+
+struct perm_bits;
+
+struct vfio_pci_irq_ctx;
+
+struct vfio_pci_region;
+
+struct vfio_pci_vf_token;
+
+struct vfio_pci_core_device {
+	struct vfio_device vdev;
+	struct pci_dev *pdev;
+	void *barmap[6];
+	bool bar_mmap_supported[6];
+	u8 *pci_config_map;
+	u8 *vconfig;
+	struct perm_bits *msi_perm;
+	spinlock_t irqlock;
+	struct mutex igate;
+	struct vfio_pci_irq_ctx *ctx;
+	int num_ctx;
+	int irq_type;
+	int num_regions;
+	struct vfio_pci_region *region;
+	u8 msi_qmax;
+	u8 msix_bar;
+	u16 msix_size;
+	u32 msix_offset;
+	u32 rbar[7];
+	bool pci_2_3;
+	bool virq_disabled;
+	bool reset_works;
+	bool extended_caps;
+	bool bardirty;
+	bool has_vga;
+	bool needs_reset;
+	bool nointx;
+	bool needs_pm_restore;
+	struct pci_saved_state *pci_saved_state;
+	struct pci_saved_state *pm_save;
+	int ioeventfds_nr;
+	struct eventfd_ctx *err_trigger;
+	struct eventfd_ctx *req_trigger;
+	struct list_head dummy_resources_list;
+	struct mutex ioeventfds_lock;
+	struct list_head ioeventfds_list;
+	struct vfio_pci_vf_token *vf_token;
+	struct list_head sriov_pfs_item;
+	struct vfio_pci_core_device *sriov_pf_core_dev;
+	struct notifier_block nb;
+	struct mutex vma_lock;
+	struct list_head vma_list;
+	struct rw_semaphore memory_lock;
+};
+
+struct vfio_pci_irq_ctx {
+	struct eventfd_ctx *trigger;
+	struct virqfd *unmask;
+	struct virqfd *mask;
+	char *name;
+	bool masked;
+	struct irq_bypass_producer producer;
+};
+
+struct vfio_pci_regops {
+	ssize_t (*rw)(struct vfio_pci_core_device *, char *, size_t, loff_t *, bool);
+	void (*release)(struct vfio_pci_core_device *, struct vfio_pci_region *);
+	int (*mmap)(struct vfio_pci_core_device *, struct vfio_pci_region *, struct vm_area_struct *);
+	int (*add_capability)(struct vfio_pci_core_device *, struct vfio_pci_region *, struct vfio_info_cap *);
+};
+
+struct vfio_pci_region {
+	u32 type;
+	u32 subtype;
+	const struct vfio_pci_regops *ops;
+	void *data;
+	size_t size;
+	u32 flags;
+};
+
+struct vfio_pci_dummy_resource {
+	struct resource resource;
+	int index;
+	struct list_head res_next;
+};
+
+struct vfio_pci_vf_token {
+	struct mutex lock;
+	uuid_t uuid;
+	int users;
+};
+
+struct vfio_pci_mmap_vma {
+	struct vm_area_struct *vma;
+	struct list_head vma_next;
+};
+
+struct vfio_pci_fill_info {
+	int max;
+	int cur;
+	struct vfio_pci_dependent_device *devices;
+};
+
+struct vfio_pci_group_info {
+	int count;
+	struct vfio_group **groups;
+};
+
+struct vfio_pci_walk_info {
+	int (*fn)(struct pci_dev *, void *);
+	void *data;
+	struct pci_dev *pdev;
+	bool slot;
+	int ret;
+};
+
+struct perm_bits {
+	u8 *virt;
+	u8 *write;
+	int (*readfn)(struct vfio_pci_core_device *, int, int, struct perm_bits *, int, __le32 *);
+	int (*writefn)(struct vfio_pci_core_device *, int, int, struct perm_bits *, int, __le32);
+};
+
+enum {
+	PCI_ID_F_VFIO_DRIVER_OVERRIDE = 1,
+};
+
+struct cdrom_msf {
+	__u8 cdmsf_min0;
+	__u8 cdmsf_sec0;
+	__u8 cdmsf_frame0;
+	__u8 cdmsf_min1;
+	__u8 cdmsf_sec1;
+	__u8 cdmsf_frame1;
+};
+
+struct cdrom_volctrl {
+	__u8 channel0;
+	__u8 channel1;
+	__u8 channel2;
+	__u8 channel3;
+};
+
+struct cdrom_subchnl {
+	__u8 cdsc_format;
+	__u8 cdsc_audiostatus;
+	__u8 cdsc_adr: 4;
+	__u8 cdsc_ctrl: 4;
+	__u8 cdsc_trk;
+	__u8 cdsc_ind;
+	union cdrom_addr cdsc_absaddr;
+	union cdrom_addr cdsc_reladdr;
+};
+
+struct cdrom_read_audio {
+	union cdrom_addr addr;
+	__u8 addr_format;
+	int nframes;
+	__u8 *buf;
+};
+
+struct cdrom_blk {
+	unsigned int from;
+	short unsigned int len;
+};
+
+struct dvd_layer {
+	__u8 book_version: 4;
+	__u8 book_type: 4;
+	__u8 min_rate: 4;
+	__u8 disc_size: 4;
+	__u8 layer_type: 4;
+	__u8 track_path: 1;
+	__u8 nlayers: 2;
+	char: 1;
+	__u8 track_density: 4;
+	__u8 linear_density: 4;
+	__u8 bca: 1;
+	__u32 start_sector;
+	__u32 end_sector;
+	__u32 end_sector_l0;
+};
+
+struct dvd_physical {
+	__u8 type;
+	__u8 layer_num;
+	struct dvd_layer layer[4];
+};
+
+struct dvd_copyright {
+	__u8 type;
+	__u8 layer_num;
+	__u8 cpst;
+	__u8 rmi;
+};
+
+struct dvd_disckey {
+	__u8 type;
+	unsigned int agid: 2;
+	__u8 value[2048];
+};
+
+struct dvd_bca {
+	__u8 type;
+	int len;
+	__u8 value[188];
+};
+
+struct dvd_manufact {
+	__u8 type;
+	__u8 layer_num;
+	int len;
+	__u8 value[2048];
+};
+
+typedef union {
+	__u8 type;
+	struct dvd_physical physical;
+	struct dvd_copyright copyright;
+	struct dvd_disckey disckey;
+	struct dvd_bca bca;
+	struct dvd_manufact manufact;
+} dvd_struct;
+
+typedef __u8 dvd_key[5];
+
+typedef __u8 dvd_challenge[10];
+
+struct dvd_lu_send_agid {
+	__u8 type;
+	unsigned int agid: 2;
+};
+
+struct dvd_host_send_challenge {
+	__u8 type;
+	unsigned int agid: 2;
+	dvd_challenge chal;
+};
+
+struct dvd_send_key {
+	__u8 type;
+	unsigned int agid: 2;
+	dvd_key key;
+};
+
+struct dvd_lu_send_challenge {
+	__u8 type;
+	unsigned int agid: 2;
+	dvd_challenge chal;
+};
+
+struct dvd_lu_send_title_key {
+	__u8 type;
+	unsigned int agid: 2;
+	dvd_key title_key;
+	int lba;
+	unsigned int cpm: 1;
+	unsigned int cp_sec: 1;
+	unsigned int cgms: 2;
+};
+
+struct dvd_lu_send_asf {
+	__u8 type;
+	unsigned int agid: 2;
+	unsigned int asf: 1;
+};
+
+struct dvd_host_send_rpcstate {
+	__u8 type;
+	__u8 pdrc;
+};
+
+struct dvd_lu_send_rpcstate {
+	__u8 type: 2;
+	__u8 vra: 3;
+	__u8 ucca: 3;
+	__u8 region_mask;
+	__u8 rpc_scheme;
+};
+
+typedef union {
+	__u8 type;
+	struct dvd_lu_send_agid lsa;
+	struct dvd_host_send_challenge hsc;
+	struct dvd_send_key lsk;
+	struct dvd_lu_send_challenge lsc;
+	struct dvd_send_key hsk;
+	struct dvd_lu_send_title_key lstk;
+	struct dvd_lu_send_asf lsasf;
+	struct dvd_host_send_rpcstate hrpcs;
+	struct dvd_lu_send_rpcstate lrpcs;
+} dvd_authinfo;
+
+struct mrw_feature_desc {
+	__be16 feature_code;
+	__u8 curr: 1;
+	__u8 persistent: 1;
+	__u8 feature_version: 4;
+	__u8 reserved1: 2;
+	__u8 add_len;
+	__u8 write: 1;
+	__u8 reserved2: 7;
+	__u8 reserved3;
+	__u8 reserved4;
+	__u8 reserved5;
+};
+
+struct rwrt_feature_desc {
+	__be16 feature_code;
+	__u8 curr: 1;
+	__u8 persistent: 1;
+	__u8 feature_version: 4;
+	__u8 reserved1: 2;
+	__u8 add_len;
+	__u32 last_lba;
+	__u32 block_size;
+	__u16 blocking;
+	__u8 page_present: 1;
+	__u8 reserved2: 7;
+	__u8 reserved3;
+};
+
+typedef struct {
+	__be16 disc_information_length;
+	__u8 disc_status: 2;
+	__u8 border_status: 2;
+	__u8 erasable: 1;
+	__u8 reserved1: 3;
+	__u8 n_first_track;
+	__u8 n_sessions_lsb;
+	__u8 first_track_lsb;
+	__u8 last_track_lsb;
+	__u8 mrw_status: 2;
+	__u8 dbit: 1;
+	__u8 reserved2: 2;
+	__u8 uru: 1;
+	__u8 dbc_v: 1;
+	__u8 did_v: 1;
+	__u8 disc_type;
+	__u8 n_sessions_msb;
+	__u8 first_track_msb;
+	__u8 last_track_msb;
+	__u32 disc_id;
+	__u32 lead_in;
+	__u32 lead_out;
+	__u8 disc_bar_code[8];
+	__u8 reserved3;
+	__u8 n_opc;
+} disc_information;
+
+typedef struct {
+	__be16 track_information_length;
+	__u8 track_lsb;
+	__u8 session_lsb;
+	__u8 reserved1;
+	__u8 track_mode: 4;
+	__u8 copy: 1;
+	__u8 damage: 1;
+	__u8 reserved2: 2;
+	__u8 data_mode: 4;
+	__u8 fp: 1;
+	__u8 packet: 1;
+	__u8 blank: 1;
+	__u8 rt: 1;
+	__u8 nwa_v: 1;
+	__u8 lra_v: 1;
+	__u8 reserved3: 6;
+	__be32 track_start;
+	__be32 next_writable;
+	__be32 free_blocks;
+	__be32 fixed_packet_size;
+	__be32 track_size;
+	__be32 last_rec_address;
+} track_information;
+
+struct mode_page_header {
+	__be16 mode_data_length;
+	__u8 medium_type;
+	__u8 reserved1;
+	__u8 reserved2;
+	__u8 reserved3;
+	__be16 desc_length;
+};
+
+typedef struct {
+	int data;
+	int audio;
+	int cdi;
+	int xa;
+	long int error;
+} tracktype;
+
+struct cdrom_mechstat_header {
+	__u8 curslot: 5;
+	__u8 changer_state: 2;
+	__u8 fault: 1;
+	__u8 reserved1: 4;
+	__u8 door_open: 1;
+	__u8 mech_state: 3;
+	__u8 curlba[3];
+	__u8 nslots;
+	__u16 slot_tablelen;
+};
+
+struct cdrom_slot {
+	__u8 change: 1;
+	__u8 reserved1: 6;
+	__u8 disc_present: 1;
+	__u8 reserved2[3];
+};
+
+struct cdrom_changer_info {
+	struct cdrom_mechstat_header hdr;
+	struct cdrom_slot slots[256];
+};
+
+struct modesel_head {
+	__u8 reserved1;
+	__u8 medium;
+	__u8 reserved2;
+	__u8 block_desc_length;
+	__u8 density;
+	__u8 number_of_blocks_hi;
+	__u8 number_of_blocks_med;
+	__u8 number_of_blocks_lo;
+	__u8 reserved3;
+	__u8 block_length_hi;
+	__u8 block_length_med;
+	__u8 block_length_lo;
+};
+
+typedef struct {
+	__u16 report_key_length;
+	__u8 reserved1;
+	__u8 reserved2;
+	__u8 ucca: 3;
+	__u8 vra: 3;
+	__u8 type_code: 2;
+	__u8 region_mask;
+	__u8 rpc_scheme;
+	__u8 reserved3;
+} rpc_state_t;
+
+struct cdrom_sysctl_settings {
+	char info[1000];
+	int autoclose;
+	int autoeject;
+	int debug;
+	int lock;
+	int check;
+};
+
+enum cdrom_print_option {
+	CTL_NAME = 0,
+	CTL_SPEED = 1,
+	CTL_SLOTS = 2,
+	CTL_CAPABILITY = 3,
+};
+
+struct compat_cdrom_read_audio {
+	union cdrom_addr addr;
+	u8 addr_format;
+	compat_int_t nframes;
+	compat_caddr_t buf;
+};
+
+enum usb_otg_state {
+	OTG_STATE_UNDEFINED = 0,
+	OTG_STATE_B_IDLE = 1,
+	OTG_STATE_B_SRP_INIT = 2,
+	OTG_STATE_B_PERIPHERAL = 3,
+	OTG_STATE_B_WAIT_ACON = 4,
+	OTG_STATE_B_HOST = 5,
+	OTG_STATE_A_IDLE = 6,
+	OTG_STATE_A_WAIT_VRISE = 7,
+	OTG_STATE_A_WAIT_BCON = 8,
+	OTG_STATE_A_HOST = 9,
+	OTG_STATE_A_SUSPEND = 10,
+	OTG_STATE_A_PERIPHERAL = 11,
+	OTG_STATE_A_WAIT_VFALL = 12,
+	OTG_STATE_A_VBUS_ERR = 13,
+};
+
+enum usb_dr_mode {
+	USB_DR_MODE_UNKNOWN = 0,
+	USB_DR_MODE_HOST = 1,
+	USB_DR_MODE_PERIPHERAL = 2,
+	USB_DR_MODE_OTG = 3,
+};
+
+enum usb_led_event {
+	USB_LED_EVENT_HOST = 0,
+	USB_LED_EVENT_GADGET = 1,
+};
+
+struct usb_device_id {
+	__u16 match_flags;
+	__u16 idVendor;
+	__u16 idProduct;
+	__u16 bcdDevice_lo;
+	__u16 bcdDevice_hi;
+	__u8 bDeviceClass;
+	__u8 bDeviceSubClass;
+	__u8 bDeviceProtocol;
+	__u8 bInterfaceClass;
+	__u8 bInterfaceSubClass;
+	__u8 bInterfaceProtocol;
+	__u8 bInterfaceNumber;
+	kernel_ulong_t driver_info;
+};
+
+struct usb_descriptor_header {
+	__u8 bLength;
+	__u8 bDescriptorType;
+};
+
+enum usb_port_connect_type {
+	USB_PORT_CONNECT_TYPE_UNKNOWN = 0,
+	USB_PORT_CONNECT_TYPE_HOT_PLUG = 1,
+	USB_PORT_CONNECT_TYPE_HARD_WIRED = 2,
+	USB_PORT_NOT_USED = 3,
+};
+
+struct usb_dynids {
+	spinlock_t lock;
+	struct list_head list;
+};
+
+struct usbdrv_wrap {
+	struct device_driver driver;
+	int for_devices;
+};
+
+struct usb_driver {
+	const char *name;
+	int (*probe)(struct usb_interface *, const struct usb_device_id *);
+	void (*disconnect)(struct usb_interface *);
+	int (*unlocked_ioctl)(struct usb_interface *, unsigned int, void *);
+	int (*suspend)(struct usb_interface *, pm_message_t);
+	int (*resume)(struct usb_interface *);
+	int (*reset_resume)(struct usb_interface *);
+	int (*pre_reset)(struct usb_interface *);
+	int (*post_reset)(struct usb_interface *);
+	const struct usb_device_id *id_table;
+	const struct attribute_group **dev_groups;
+	struct usb_dynids dynids;
+	struct usbdrv_wrap drvwrap;
+	unsigned int no_dynamic_id: 1;
+	unsigned int supports_autosuspend: 1;
+	unsigned int disable_hub_initiated_lpm: 1;
+	unsigned int soft_unbind: 1;
+};
+
+struct usb_device_driver {
+	const char *name;
+	bool (*match)(struct usb_device *);
+	int (*probe)(struct usb_device *);
+	void (*disconnect)(struct usb_device *);
+	int (*suspend)(struct usb_device *, pm_message_t);
+	int (*resume)(struct usb_device *, pm_message_t);
+	const struct attribute_group **dev_groups;
+	struct usbdrv_wrap drvwrap;
+	const struct usb_device_id *id_table;
+	unsigned int supports_autosuspend: 1;
+	unsigned int generic_subclass: 1;
+};
+
+enum usb_phy_type {
+	USB_PHY_TYPE_UNDEFINED = 0,
+	USB_PHY_TYPE_USB2 = 1,
+	USB_PHY_TYPE_USB3 = 2,
+};
+
+enum usb_phy_events {
+	USB_EVENT_NONE = 0,
+	USB_EVENT_VBUS = 1,
+	USB_EVENT_ID = 2,
+	USB_EVENT_CHARGER = 3,
+	USB_EVENT_ENUMERATED = 4,
+};
+
+enum usb_charger_type {
+	UNKNOWN_TYPE = 0,
+	SDP_TYPE = 1,
+	DCP_TYPE = 2,
+	CDP_TYPE = 3,
+	ACA_TYPE = 4,
+};
+
+enum usb_charger_state {
+	USB_CHARGER_DEFAULT = 0,
+	USB_CHARGER_PRESENT = 1,
+	USB_CHARGER_ABSENT = 2,
+};
+
+struct usb_charger_current {
+	unsigned int sdp_min;
+	unsigned int sdp_max;
+	unsigned int dcp_min;
+	unsigned int dcp_max;
+	unsigned int cdp_min;
+	unsigned int cdp_max;
+	unsigned int aca_min;
+	unsigned int aca_max;
+};
+
+struct usb_otg;
+
+struct usb_phy_io_ops;
+
+struct usb_phy {
+	struct device *dev;
+	const char *label;
+	unsigned int flags;
+	enum usb_phy_type type;
+	enum usb_phy_events last_event;
+	struct usb_otg *otg;
+	struct device *io_dev;
+	struct usb_phy_io_ops *io_ops;
+	void *io_priv;
+	struct extcon_dev *edev;
+	struct extcon_dev *id_edev;
+	struct notifier_block vbus_nb;
+	struct notifier_block id_nb;
+	struct notifier_block type_nb;
+	enum usb_charger_type chg_type;
+	enum usb_charger_state chg_state;
+	struct usb_charger_current chg_cur;
+	struct work_struct chg_work;
+	struct atomic_notifier_head notifier;
+	u16 port_status;
+	u16 port_change;
+	struct list_head head;
+	int (*init)(struct usb_phy *);
+	void (*shutdown)(struct usb_phy *);
+	int (*set_vbus)(struct usb_phy *, int);
+	int (*set_power)(struct usb_phy *, unsigned int);
+	int (*set_suspend)(struct usb_phy *, int);
+	int (*set_wakeup)(struct usb_phy *, bool);
+	int (*notify_connect)(struct usb_phy *, enum usb_device_speed);
+	int (*notify_disconnect)(struct usb_phy *, enum usb_device_speed);
+	enum usb_charger_type (*charger_detect)(struct usb_phy *);
+};
+
+struct usb_port_status {
+	__le16 wPortStatus;
+	__le16 wPortChange;
+	__le32 dwExtPortStatus;
+};
+
+struct usb_hub_status {
+	__le16 wHubStatus;
+	__le16 wHubChange;
+};
+
+struct usb_hub_descriptor {
+	__u8 bDescLength;
+	__u8 bDescriptorType;
+	__u8 bNbrPorts;
+	__le16 wHubCharacteristics;
+	__u8 bPwrOn2PwrGood;
+	__u8 bHubContrCurrent;
+	union {
+		struct {
+			__u8 DeviceRemovable[4];
+			__u8 PortPwrCtrlMask[4];
+		} hs;
+		struct {
+			__u8 bHubHdrDecLat;
+			__le16 wHubDelay;
+			__le16 DeviceRemovable;
+		} __attribute__((packed)) ss;
+	} u;
+} __attribute__((packed));
+
+struct usb_phy_io_ops {
+	int (*read)(struct usb_phy *, u32);
+	int (*write)(struct usb_phy *, u32, u32);
+};
+
+struct usb_gadget;
+
+struct usb_otg {
+	u8 default_a;
+	struct phy *phy;
+	struct usb_phy *usb_phy;
+	struct usb_bus *host;
+	struct usb_gadget *gadget;
+	enum usb_otg_state state;
+	int (*set_host)(struct usb_otg *, struct usb_bus *);
+	int (*set_peripheral)(struct usb_otg *, struct usb_gadget *);
+	int (*set_vbus)(struct usb_otg *, bool);
+	int (*start_srp)(struct usb_otg *);
+	int (*start_hnp)(struct usb_otg *);
+};
+
+typedef u32 usb_port_location_t;
+
+struct usb_port;
+
+struct usb_hub {
+	struct device *intfdev;
+	struct usb_device *hdev;
+	struct kref kref;
+	struct urb *urb;
+	u8 (*buffer)[8];
+	union {
+		struct usb_hub_status hub;
+		struct usb_port_status port;
+	} *status;
+	struct mutex status_mutex;
+	int error;
+	int nerrors;
+	long unsigned int event_bits[1];
+	long unsigned int change_bits[1];
+	long unsigned int removed_bits[1];
+	long unsigned int wakeup_bits[1];
+	long unsigned int power_bits[1];
+	long unsigned int child_usage_bits[1];
+	long unsigned int warm_reset_bits[1];
+	struct usb_hub_descriptor *descriptor;
+	struct usb_tt tt;
+	unsigned int mA_per_port;
+	unsigned int wakeup_enabled_descendants;
+	unsigned int limited_power: 1;
+	unsigned int quiescing: 1;
+	unsigned int disconnected: 1;
+	unsigned int in_reset: 1;
+	unsigned int quirk_disable_autosuspend: 1;
+	unsigned int quirk_check_port_auto_suspend: 1;
+	unsigned int has_indicators: 1;
+	u8 indicator[31];
+	struct delayed_work leds;
+	struct delayed_work init_work;
+	struct work_struct events;
+	spinlock_t irq_urb_lock;
+	struct timer_list irq_urb_retry;
+	struct usb_port **ports;
+};
+
+struct usb_dev_state;
+
+struct usb_port {
+	struct usb_device *child;
+	struct device dev;
+	struct usb_dev_state *port_owner;
+	struct usb_port *peer;
+	struct dev_pm_qos_request *req;
+	enum usb_port_connect_type connect_type;
+	usb_port_location_t location;
+	struct mutex status_lock;
+	u32 over_current_count;
+	u8 portnum;
+	u32 quirks;
+	unsigned int is_superspeed: 1;
+	unsigned int usb3_lpm_u1_permit: 1;
+	unsigned int usb3_lpm_u2_permit: 1;
+};
+
+struct find_interface_arg {
+	int minor;
+	struct device_driver *drv;
+};
+
+struct each_dev_arg {
+	void *data;
+	int (*fn)(struct usb_device *, void *);
+};
+
+struct each_hub_arg {
+	void *data;
+	int (*fn)(struct device *, void *);
+};
+
+struct usb_qualifier_descriptor {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__le16 bcdUSB;
+	__u8 bDeviceClass;
+	__u8 bDeviceSubClass;
+	__u8 bDeviceProtocol;
+	__u8 bMaxPacketSize0;
+	__u8 bNumConfigurations;
+	__u8 bRESERVED;
+};
+
+struct usb_set_sel_req {
+	__u8 u1_sel;
+	__u8 u1_pel;
+	__le16 u2_sel;
+	__le16 u2_pel;
+};
+
+struct usbdevfs_hub_portinfo {
+	char nports;
+	char port[127];
+};
+
+enum hub_led_mode {
+	INDICATOR_AUTO = 0,
+	INDICATOR_CYCLE = 1,
+	INDICATOR_GREEN_BLINK = 2,
+	INDICATOR_GREEN_BLINK_OFF = 3,
+	INDICATOR_AMBER_BLINK = 4,
+	INDICATOR_AMBER_BLINK_OFF = 5,
+	INDICATOR_ALT_BLINK = 6,
+	INDICATOR_ALT_BLINK_OFF = 7,
+};
+
+struct usb_tt_clear {
+	struct list_head clear_list;
+	unsigned int tt;
+	u16 devinfo;
+	struct usb_hcd *hcd;
+	struct usb_host_endpoint *ep;
+};
+
+enum hub_activation_type {
+	HUB_INIT = 0,
+	HUB_INIT2 = 1,
+	HUB_INIT3 = 2,
+	HUB_POST_RESET = 3,
+	HUB_RESUME = 4,
+	HUB_RESET_RESUME = 5,
+};
+
+enum hub_quiescing_type {
+	HUB_DISCONNECT = 0,
+	HUB_PRE_RESET = 1,
+	HUB_SUSPEND = 2,
+};
+
+struct usb_ctrlrequest {
+	__u8 bRequestType;
+	__u8 bRequest;
+	__le16 wValue;
+	__le16 wIndex;
+	__le16 wLength;
+};
+
+struct usb_mon_operations {
+	void (*urb_submit)(struct usb_bus *, struct urb *);
+	void (*urb_submit_error)(struct usb_bus *, struct urb *, int);
+	void (*urb_complete)(struct usb_bus *, struct urb *, int);
+};
+
+struct usb_sg_request {
+	int status;
+	size_t bytes;
+	spinlock_t lock;
+	struct usb_device *dev;
+	int pipe;
+	int entries;
+	struct urb **urbs;
+	int count;
+	struct completion complete;
+};
+
+struct usb_cdc_header_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__le16 bcdCDC;
+} __attribute__((packed));
+
+struct usb_cdc_call_mgmt_descriptor {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 bmCapabilities;
+	__u8 bDataInterface;
+};
+
+struct usb_cdc_acm_descriptor {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 bmCapabilities;
+};
+
+struct usb_cdc_union_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 bMasterInterface0;
+	__u8 bSlaveInterface0;
+};
+
+struct usb_cdc_country_functional_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 iCountryCodeRelDate;
+	__le16 wCountyCode0;
+};
+
+struct usb_cdc_network_terminal_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 bEntityId;
+	__u8 iName;
+	__u8 bChannelIndex;
+	__u8 bPhysicalInterface;
+};
+
+struct usb_cdc_ether_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 iMACAddress;
+	__le32 bmEthernetStatistics;
+	__le16 wMaxSegmentSize;
+	__le16 wNumberMCFilters;
+	__u8 bNumberPowerFilters;
+} __attribute__((packed));
+
+struct usb_cdc_dmm_desc {
+	__u8 bFunctionLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubtype;
+	__u16 bcdVersion;
+	__le16 wMaxCommand;
+} __attribute__((packed));
+
+struct usb_cdc_mdlm_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__le16 bcdVersion;
+	__u8 bGUID[16];
+} __attribute__((packed));
+
+struct usb_cdc_mdlm_detail_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__u8 bGuidDescriptorType;
+	__u8 bDetailData[0];
+};
+
+struct usb_cdc_obex_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__le16 bcdVersion;
+} __attribute__((packed));
+
+struct usb_cdc_ncm_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__le16 bcdNcmVersion;
+	__u8 bmNetworkCapabilities;
+} __attribute__((packed));
+
+struct usb_cdc_mbim_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__le16 bcdMBIMVersion;
+	__le16 wMaxControlMessage;
+	__u8 bNumberFilters;
+	__u8 bMaxFilterSize;
+	__le16 wMaxSegmentSize;
+	__u8 bmNetworkCapabilities;
+} __attribute__((packed));
+
+struct usb_cdc_mbim_extended_desc {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDescriptorSubType;
+	__le16 bcdMBIMExtendedVersion;
+	__u8 bMaxOutstandingCommandMessages;
+	__le16 wMTU;
+} __attribute__((packed));
+
+struct usb_cdc_parsed_header {
+	struct usb_cdc_union_desc *usb_cdc_union_desc;
+	struct usb_cdc_header_desc *usb_cdc_header_desc;
+	struct usb_cdc_call_mgmt_descriptor *usb_cdc_call_mgmt_descriptor;
+	struct usb_cdc_acm_descriptor *usb_cdc_acm_descriptor;
+	struct usb_cdc_country_functional_desc *usb_cdc_country_functional_desc;
+	struct usb_cdc_network_terminal_desc *usb_cdc_network_terminal_desc;
+	struct usb_cdc_ether_desc *usb_cdc_ether_desc;
+	struct usb_cdc_dmm_desc *usb_cdc_dmm_desc;
+	struct usb_cdc_mdlm_desc *usb_cdc_mdlm_desc;
+	struct usb_cdc_mdlm_detail_desc *usb_cdc_mdlm_detail_desc;
+	struct usb_cdc_obex_desc *usb_cdc_obex_desc;
+	struct usb_cdc_ncm_desc *usb_cdc_ncm_desc;
+	struct usb_cdc_mbim_desc *usb_cdc_mbim_desc;
+	struct usb_cdc_mbim_extended_desc *usb_cdc_mbim_extended_desc;
+	bool phonet_magic_present;
+};
+
+struct api_context {
+	struct completion done;
+	int status;
+};
+
+struct set_config_request {
+	struct usb_device *udev;
+	int config;
+	struct work_struct work;
+	struct list_head node;
+};
+
+struct usb_dynid {
+	struct list_head node;
+	struct usb_device_id id;
+};
+
+struct usb_dev_cap_header {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDevCapabilityType;
+};
+
+struct usb_class_driver {
+	char *name;
+	char * (*devnode)(struct device *, umode_t *);
+	const struct file_operations *fops;
+	int minor_base;
+};
+
+struct usb_class {
+	struct kref kref;
+	struct class *class;
+};
+
+struct ep_device {
+	struct usb_endpoint_descriptor *desc;
+	struct usb_device *udev;
+	struct device dev;
+};
+
+struct usbdevfs_ctrltransfer {
+	__u8 bRequestType;
+	__u8 bRequest;
+	__u16 wValue;
+	__u16 wIndex;
+	__u16 wLength;
+	__u32 timeout;
+	void *data;
+};
+
+struct usbdevfs_bulktransfer {
+	unsigned int ep;
+	unsigned int len;
+	unsigned int timeout;
+	void *data;
+};
+
+struct usbdevfs_setinterface {
+	unsigned int interface;
+	unsigned int altsetting;
+};
+
+struct usbdevfs_disconnectsignal {
+	unsigned int signr;
+	void *context;
+};
+
+struct usbdevfs_getdriver {
+	unsigned int interface;
+	char driver[256];
+};
+
+struct usbdevfs_connectinfo {
+	unsigned int devnum;
+	unsigned char slow;
+};
+
+struct usbdevfs_conninfo_ex {
+	__u32 size;
+	__u32 busnum;
+	__u32 devnum;
+	__u32 speed;
+	__u8 num_ports;
+	__u8 ports[7];
+};
+
+struct usbdevfs_iso_packet_desc {
+	unsigned int length;
+	unsigned int actual_length;
+	unsigned int status;
+};
+
+struct usbdevfs_urb {
+	unsigned char type;
+	unsigned char endpoint;
+	int status;
+	unsigned int flags;
+	void *buffer;
+	int buffer_length;
+	int actual_length;
+	int start_frame;
+	union {
+		int number_of_packets;
+		unsigned int stream_id;
+	};
+	int error_count;
+	unsigned int signr;
+	void *usercontext;
+	struct usbdevfs_iso_packet_desc iso_frame_desc[0];
+};
+
+struct usbdevfs_ioctl {
+	int ifno;
+	int ioctl_code;
+	void *data;
+};
+
+struct usbdevfs_disconnect_claim {
+	unsigned int interface;
+	unsigned int flags;
+	char driver[256];
+};
+
+struct usbdevfs_streams {
+	unsigned int num_streams;
+	unsigned int num_eps;
+	unsigned char eps[0];
+};
+
+struct usbdevfs_ctrltransfer32 {
+	u8 bRequestType;
+	u8 bRequest;
+	u16 wValue;
+	u16 wIndex;
+	u16 wLength;
+	u32 timeout;
+	compat_caddr_t data;
+};
+
+struct usbdevfs_bulktransfer32 {
+	compat_uint_t ep;
+	compat_uint_t len;
+	compat_uint_t timeout;
+	compat_caddr_t data;
+};
+
+struct usbdevfs_disconnectsignal32 {
+	compat_int_t signr;
+	compat_caddr_t context;
+};
+
+struct usbdevfs_urb32 {
+	unsigned char type;
+	unsigned char endpoint;
+	compat_int_t status;
+	compat_uint_t flags;
+	compat_caddr_t buffer;
+	compat_int_t buffer_length;
+	compat_int_t actual_length;
+	compat_int_t start_frame;
+	compat_int_t number_of_packets;
+	compat_int_t error_count;
+	compat_uint_t signr;
+	compat_caddr_t usercontext;
+	struct usbdevfs_iso_packet_desc iso_frame_desc[0];
+};
+
+struct usbdevfs_ioctl32 {
+	s32 ifno;
+	s32 ioctl_code;
+	compat_caddr_t data;
+};
+
+struct usb_dev_state {
+	struct list_head list;
+	struct usb_device *dev;
+	struct file *file;
+	spinlock_t lock;
+	struct list_head async_pending;
+	struct list_head async_completed;
+	struct list_head memory_list;
+	wait_queue_head_t wait;
+	wait_queue_head_t wait_for_resume;
+	unsigned int discsignr;
+	struct pid *disc_pid;
+	const struct cred *cred;
+	sigval_t disccontext;
+	long unsigned int ifclaimed;
+	u32 disabled_bulk_eps;
+	long unsigned int interface_allowed_mask;
+	int not_yet_resumed;
+	bool suspend_allowed;
+	bool privileges_dropped;
+};
+
+struct usb_memory {
+	struct list_head memlist;
+	int vma_use_count;
+	int urb_use_count;
+	u32 size;
+	void *mem;
+	dma_addr_t dma_handle;
+	long unsigned int vm_start;
+	struct usb_dev_state *ps;
+};
+
+struct async {
+	struct list_head asynclist;
+	struct usb_dev_state *ps;
+	struct pid *pid;
+	const struct cred *cred;
+	unsigned int signr;
+	unsigned int ifnum;
+	void *userbuffer;
+	void *userurb;
+	sigval_t userurb_sigval;
+	struct urb *urb;
+	struct usb_memory *usbm;
+	unsigned int mem_usage;
+	int status;
+	u8 bulk_addr;
+	u8 bulk_status;
+};
+
+enum snoop_when {
+	SUBMIT = 0,
+	COMPLETE = 1,
+};
+
+struct quirk_entry {
+	u16 vid;
+	u16 pid;
+	u32 flags;
+};
+
+struct class_info {
+	int class;
+	char *class_name;
+};
+
+struct usb_phy_roothub {
+	struct phy *phy;
+	struct list_head list;
+};
+
+typedef void (*companion_fn)(struct pci_dev *, struct usb_hcd *, struct pci_dev *, struct usb_hcd *);
+
+struct phy_devm {
+	struct usb_phy *phy;
+	struct notifier_block *nb;
+};
+
+struct usb_ep;
+
+struct usb_request {
+	void *buf;
+	unsigned int length;
+	dma_addr_t dma;
+	struct scatterlist *sg;
+	unsigned int num_sgs;
+	unsigned int num_mapped_sgs;
+	unsigned int stream_id: 16;
+	unsigned int is_last: 1;
+	unsigned int no_interrupt: 1;
+	unsigned int zero: 1;
+	unsigned int short_not_ok: 1;
+	unsigned int dma_mapped: 1;
+	void (*complete)(struct usb_ep *, struct usb_request *);
+	void *context;
+	struct list_head list;
+	unsigned int frame_number;
+	int status;
+	unsigned int actual;
+};
+
+struct usb_ep_caps {
+	unsigned int type_control: 1;
+	unsigned int type_iso: 1;
+	unsigned int type_bulk: 1;
+	unsigned int type_int: 1;
+	unsigned int dir_in: 1;
+	unsigned int dir_out: 1;
+};
+
+struct usb_ep_ops;
+
+struct usb_ep {
+	void *driver_data;
+	const char *name;
+	const struct usb_ep_ops *ops;
+	struct list_head ep_list;
+	struct usb_ep_caps caps;
+	bool claimed;
+	bool enabled;
+	unsigned int maxpacket: 16;
+	unsigned int maxpacket_limit: 16;
+	unsigned int max_streams: 16;
+	unsigned int mult: 2;
+	unsigned int maxburst: 5;
+	u8 address;
+	const struct usb_endpoint_descriptor *desc;
+	const struct usb_ss_ep_comp_descriptor *comp_desc;
+};
+
+struct usb_ep_ops {
+	int (*enable)(struct usb_ep *, const struct usb_endpoint_descriptor *);
+	int (*disable)(struct usb_ep *);
+	void (*dispose)(struct usb_ep *);
+	struct usb_request * (*alloc_request)(struct usb_ep *, gfp_t);
+	void (*free_request)(struct usb_ep *, struct usb_request *);
+	int (*queue)(struct usb_ep *, struct usb_request *, gfp_t);
+	int (*dequeue)(struct usb_ep *, struct usb_request *);
+	int (*set_halt)(struct usb_ep *, int);
+	int (*set_wedge)(struct usb_ep *);
+	int (*fifo_status)(struct usb_ep *);
+	void (*fifo_flush)(struct usb_ep *);
+};
+
+struct usb_dcd_config_params {
+	__u8 bU1devExitLat;
+	__le16 bU2DevExitLat;
+	__u8 besl_baseline;
+	__u8 besl_deep;
+};
+
+struct usb_gadget_driver;
+
+struct usb_gadget_ops {
+	int (*get_frame)(struct usb_gadget *);
+	int (*wakeup)(struct usb_gadget *);
+	int (*set_remote_wakeup)(struct usb_gadget *, int);
+	int (*set_selfpowered)(struct usb_gadget *, int);
+	int (*vbus_session)(struct usb_gadget *, int);
+	int (*vbus_draw)(struct usb_gadget *, unsigned int);
+	int (*pullup)(struct usb_gadget *, int);
+	int (*ioctl)(struct usb_gadget *, unsigned int, long unsigned int);
+	void (*get_config_params)(struct usb_gadget *, struct usb_dcd_config_params *);
+	int (*udc_start)(struct usb_gadget *, struct usb_gadget_driver *);
+	int (*udc_stop)(struct usb_gadget *);
+	void (*udc_set_speed)(struct usb_gadget *, enum usb_device_speed);
+	void (*udc_set_ssp_rate)(struct usb_gadget *, enum usb_ssp_rate);
+	void (*udc_async_callbacks)(struct usb_gadget *, bool);
+	struct usb_ep * (*match_ep)(struct usb_gadget *, struct usb_endpoint_descriptor *, struct usb_ss_ep_comp_descriptor *);
+	int (*check_config)(struct usb_gadget *);
+};
+
+struct usb_udc;
+
+struct usb_otg_caps;
+
+struct usb_gadget {
+	struct work_struct work;
+	struct usb_udc *udc;
+	const struct usb_gadget_ops *ops;
+	struct usb_ep *ep0;
+	struct list_head ep_list;
+	enum usb_device_speed speed;
+	enum usb_device_speed max_speed;
+	enum usb_ssp_rate ssp_rate;
+	enum usb_ssp_rate max_ssp_rate;
+	enum usb_device_state state;
+	const char *name;
+	struct device dev;
+	unsigned int isoch_delay;
+	unsigned int out_epnum;
+	unsigned int in_epnum;
+	unsigned int mA;
+	struct usb_otg_caps *otg_caps;
+	unsigned int sg_supported: 1;
+	unsigned int is_otg: 1;
+	unsigned int is_a_peripheral: 1;
+	unsigned int b_hnp_enable: 1;
+	unsigned int a_hnp_support: 1;
+	unsigned int a_alt_hnp_support: 1;
+	unsigned int hnp_polling_support: 1;
+	unsigned int host_request_flag: 1;
+	unsigned int quirk_ep_out_aligned_size: 1;
+	unsigned int quirk_altset_not_supp: 1;
+	unsigned int quirk_stall_not_supp: 1;
+	unsigned int quirk_zlp_not_supp: 1;
+	unsigned int quirk_avoids_skb_reserve: 1;
+	unsigned int is_selfpowered: 1;
+	unsigned int deactivated: 1;
+	unsigned int connected: 1;
+	unsigned int lpm_capable: 1;
+	unsigned int wakeup_capable: 1;
+	unsigned int wakeup_armed: 1;
+	int irq;
+};
+
+struct usb_gadget_driver {
+	char *function;
+	enum usb_device_speed max_speed;
+	int (*bind)(struct usb_gadget *, struct usb_gadget_driver *);
+	void (*unbind)(struct usb_gadget *);
+	int (*setup)(struct usb_gadget *, const struct usb_ctrlrequest *);
+	void (*disconnect)(struct usb_gadget *);
+	void (*suspend)(struct usb_gadget *);
+	void (*resume)(struct usb_gadget *);
+	void (*reset)(struct usb_gadget *);
+	struct device_driver driver;
+	char *udc_name;
+	struct list_head pending;
+	unsigned int match_existing_only: 1;
+};
+
+struct usb_otg_caps {
+	u16 otg_rev;
+	bool hnp_support;
+	bool srp_support;
+	bool adp_support;
+};
+
+struct dwc2_dma_desc {
+	u32 status;
+	u32 buf;
+};
+
+struct dwc2_hw_params {
+	unsigned int op_mode: 3;
+	unsigned int arch: 2;
+	unsigned int dma_desc_enable: 1;
+	unsigned int enable_dynamic_fifo: 1;
+	unsigned int en_multiple_tx_fifo: 1;
+	unsigned int rx_fifo_size: 16;
+	int: 8;
+	unsigned int host_nperio_tx_fifo_size: 16;
+	unsigned int dev_nperio_tx_fifo_size: 16;
+	unsigned int host_perio_tx_fifo_size: 16;
+	unsigned int nperio_tx_q_depth: 3;
+	unsigned int host_perio_tx_q_depth: 3;
+	unsigned int dev_token_q_depth: 5;
+	int: 5;
+	unsigned int max_transfer_size: 26;
+	long: 6;
+	unsigned int max_packet_count: 11;
+	unsigned int host_channels: 5;
+	unsigned int hs_phy_type: 2;
+	unsigned int fs_phy_type: 2;
+	unsigned int i2c_enable: 1;
+	unsigned int acg_enable: 1;
+	unsigned int num_dev_ep: 4;
+	unsigned int num_dev_in_eps: 4;
+	int: 2;
+	unsigned int num_dev_perio_in_ep: 4;
+	unsigned int total_fifo_size: 16;
+	unsigned int power_optimized: 1;
+	unsigned int hibernation: 1;
+	unsigned int utmi_phy_data_width: 2;
+	unsigned int lpm_mode: 1;
+	unsigned int ipg_isoc_en: 1;
+	unsigned int service_interval_mode: 1;
+	u32 snpsid;
+	u32 dev_ep_dirs;
+	u32 g_tx_fifo_size[16];
+};
+
+struct dwc2_core_params {
+	u8 otg_cap;
+	u8 phy_type;
+	u8 speed;
+	u8 phy_utmi_width;
+	bool phy_ulpi_ddr;
+	bool phy_ulpi_ext_vbus;
+	bool enable_dynamic_fifo;
+	bool en_multiple_tx_fifo;
+	bool i2c_enable;
+	bool acg_enable;
+	bool ulpi_fs_ls;
+	bool ts_dline;
+	bool reload_ctl;
+	bool uframe_sched;
+	bool external_id_pin_ctl;
+	int power_down;
+	bool no_clock_gating;
+	bool lpm;
+	bool lpm_clock_gating;
+	bool besl;
+	bool hird_threshold_en;
+	bool service_interval;
+	u8 hird_threshold;
+	bool activate_stm_fs_transceiver;
+	bool activate_stm_id_vb_detection;
+	bool ipg_isoc_en;
+	u16 max_packet_count;
+	u32 max_transfer_size;
+	u32 ahbcfg;
+	u32 ref_clk_per;
+	u16 sof_cnt_wkup_alert;
+	bool host_dma;
+	bool dma_desc_enable;
+	bool dma_desc_fs_enable;
+	bool host_support_fs_ls_low_power;
+	bool host_ls_low_power_phy_clk;
+	bool oc_disable;
+	u8 host_channels;
+	u16 host_rx_fifo_size;
+	u16 host_nperio_tx_fifo_size;
+	u16 host_perio_tx_fifo_size;
+	bool g_dma;
+	bool g_dma_desc;
+	u32 g_rx_fifo_size;
+	u32 g_np_tx_fifo_size;
+	u32 g_tx_fifo_size[16];
+	bool change_speed_quirk;
+};
+
+enum dwc2_lx_state {
+	DWC2_L0 = 0,
+	DWC2_L1 = 1,
+	DWC2_L2 = 2,
+	DWC2_L3 = 3,
+};
+
+struct dwc2_gregs_backup {
+	u32 gotgctl;
+	u32 gintmsk;
+	u32 gahbcfg;
+	u32 gusbcfg;
+	u32 grxfsiz;
+	u32 gnptxfsiz;
+	u32 gi2cctl;
+	u32 glpmcfg;
+	u32 pcgcctl;
+	u32 pcgcctl1;
+	u32 gdfifocfg;
+	u32 gpwrdn;
+	bool valid;
+};
+
+struct dwc2_dregs_backup {
+	u32 dcfg;
+	u32 dctl;
+	u32 daintmsk;
+	u32 diepmsk;
+	u32 doepmsk;
+	u32 diepctl[16];
+	u32 dieptsiz[16];
+	u32 diepdma[16];
+	u32 doepctl[16];
+	u32 doeptsiz[16];
+	u32 doepdma[16];
+	u32 dtxfsiz[16];
+	bool valid;
+};
+
+struct dwc2_hregs_backup {
+	u32 hcfg;
+	u32 hflbaddr;
+	u32 haintmsk;
+	u32 hcchar[16];
+	u32 hcsplt[16];
+	u32 hcintmsk[16];
+	u32 hctsiz[16];
+	u32 hcidma[16];
+	u32 hcidmab[16];
+	u32 hprt0;
+	u32 hfir;
+	u32 hptxfsiz;
+	bool valid;
+};
+
+union dwc2_hcd_internal_flags {
+	u32 d32;
+	struct {
+		unsigned int port_connect_status_change: 1;
+		unsigned int port_connect_status: 1;
+		unsigned int port_reset_change: 1;
+		unsigned int port_enable_change: 1;
+		unsigned int port_suspend_change: 1;
+		unsigned int port_over_current_change: 1;
+		unsigned int port_l1_change: 1;
+		unsigned int reserved: 25;
+	} b;
+};
+
+struct usb_role_switch;
+
+struct dwc2_hsotg_plat;
+
+struct dwc2_host_chan;
+
+struct dwc2_hsotg {
+	struct device *dev;
+	void *regs;
+	struct dwc2_hw_params hw_params;
+	struct dwc2_core_params params;
+	enum usb_otg_state op_state;
+	enum usb_dr_mode dr_mode;
+	struct usb_role_switch *role_sw;
+	unsigned int hcd_enabled: 1;
+	unsigned int gadget_enabled: 1;
+	unsigned int ll_hw_enabled: 1;
+	unsigned int hibernated: 1;
+	unsigned int in_ppd: 1;
+	bool bus_suspended;
+	unsigned int reset_phy_on_wake: 1;
+	unsigned int need_phy_for_wake: 1;
+	unsigned int phy_off_for_suspend: 1;
+	u16 frame_number;
+	struct phy *phy;
+	struct usb_phy *uphy;
+	struct dwc2_hsotg_plat *plat;
+	struct regulator_bulk_data supplies[2];
+	struct regulator *vbus_supply;
+	struct regulator *usb33d;
+	spinlock_t lock;
+	void *priv;
+	int irq;
+	struct clk *clk;
+	struct reset_control *reset;
+	struct reset_control *reset_ecc;
+	unsigned int queuing_high_bandwidth: 1;
+	unsigned int srp_success: 1;
+	struct workqueue_struct *wq_otg;
+	struct work_struct wf_otg;
+	struct timer_list wkp_timer;
+	enum dwc2_lx_state lx_state;
+	struct dwc2_gregs_backup gr_backup;
+	struct dwc2_dregs_backup dr_backup;
+	struct dwc2_hregs_backup hr_backup;
+	struct dentry *debug_root;
+	struct debugfs_regset32 *regset;
+	bool needs_byte_swap;
+	union dwc2_hcd_internal_flags flags;
+	struct list_head non_periodic_sched_inactive;
+	struct list_head non_periodic_sched_waiting;
+	struct list_head non_periodic_sched_active;
+	struct list_head *non_periodic_qh_ptr;
+	struct list_head periodic_sched_inactive;
+	struct list_head periodic_sched_ready;
+	struct list_head periodic_sched_assigned;
+	struct list_head periodic_sched_queued;
+	struct list_head split_order;
+	u16 periodic_usecs;
+	long unsigned int hs_periodic_bitmap[13];
+	u16 periodic_qh_count;
+	bool new_connection;
+	u16 last_frame_num;
+	struct list_head free_hc_list;
+	int periodic_channels;
+	int non_periodic_channels;
+	int available_host_channels;
+	struct dwc2_host_chan *hc_ptr_array[16];
+	u8 *status_buf;
+	dma_addr_t status_buf_dma;
+	struct delayed_work start_work;
+	struct delayed_work reset_work;
+	struct work_struct phy_reset_work;
+	u8 otg_port;
+	u32 *frame_list;
+	dma_addr_t frame_list_dma;
+	u32 frame_list_sz;
+	struct kmem_cache *desc_gen_cache;
+	struct kmem_cache *desc_hsisoc_cache;
+	struct kmem_cache *unaligned_cache;
+};
+
+enum dwc2_halt_status {
+	DWC2_HC_XFER_NO_HALT_STATUS = 0,
+	DWC2_HC_XFER_COMPLETE = 1,
+	DWC2_HC_XFER_URB_COMPLETE = 2,
+	DWC2_HC_XFER_ACK = 3,
+	DWC2_HC_XFER_NAK = 4,
+	DWC2_HC_XFER_NYET = 5,
+	DWC2_HC_XFER_STALL = 6,
+	DWC2_HC_XFER_XACT_ERR = 7,
+	DWC2_HC_XFER_FRAME_OVERRUN = 8,
+	DWC2_HC_XFER_BABBLE_ERR = 9,
+	DWC2_HC_XFER_DATA_TOGGLE_ERR = 10,
+	DWC2_HC_XFER_AHB_ERR = 11,
+	DWC2_HC_XFER_PERIODIC_INCOMPLETE = 12,
+	DWC2_HC_XFER_URB_DEQUEUE = 13,
+};
+
+struct dwc2_qh;
+
+struct dwc2_host_chan {
+	u8 hc_num;
+	unsigned int dev_addr: 7;
+	unsigned int ep_num: 4;
+	unsigned int ep_is_in: 1;
+	unsigned int speed: 4;
+	unsigned int ep_type: 2;
+	int: 6;
+	unsigned int max_packet: 11;
+	unsigned int data_pid_start: 2;
+	unsigned int multi_count: 2;
+	u8 *xfer_buf;
+	dma_addr_t xfer_dma;
+	dma_addr_t align_buf;
+	u32 xfer_len;
+	u32 xfer_count;
+	u16 start_pkt_count;
+	u8 xfer_started;
+	u8 do_ping;
+	u8 error_state;
+	u8 halt_on_queue;
+	u8 halt_pending;
+	u8 do_split;
+	u8 complete_split;
+	u8 hub_addr;
+	u8 hub_port;
+	u8 xact_pos;
+	u8 requests;
+	u8 schinfo;
+	u16 ntd;
+	enum dwc2_halt_status halt_status;
+	u32 hcint;
+	struct dwc2_qh *qh;
+	struct list_head hc_list_entry;
+	dma_addr_t desc_list_addr;
+	u32 desc_list_sz;
+	struct list_head split_order_list_entry;
+};
+
+struct dwc2_hs_transfer_time {
+	u32 start_schedule_us;
+	u16 duration_us;
+};
+
+struct dwc2_tt;
+
+struct dwc2_qh {
+	struct dwc2_hsotg *hsotg;
+	u8 ep_type;
+	u8 ep_is_in;
+	u16 maxp;
+	u16 maxp_mult;
+	u8 dev_speed;
+	u8 data_toggle;
+	u8 ping_state;
+	u8 do_split;
+	u8 td_first;
+	u8 td_last;
+	u16 host_us;
+	u16 device_us;
+	u16 host_interval;
+	u16 device_interval;
+	u16 next_active_frame;
+	u16 start_active_frame;
+	s16 num_hs_transfers;
+	struct dwc2_hs_transfer_time hs_transfers[8];
+	u32 ls_start_schedule_slice;
+	u16 ntd;
+	u8 *dw_align_buf;
+	dma_addr_t dw_align_buf_dma;
+	struct list_head qtd_list;
+	struct dwc2_host_chan *channel;
+	struct list_head qh_list_entry;
+	struct dwc2_dma_desc *desc_list;
+	dma_addr_t desc_list_dma;
+	u32 desc_list_sz;
+	u32 *n_bytes;
+	struct timer_list unreserve_timer;
+	struct hrtimer wait_timer;
+	struct dwc2_tt *dwc_tt;
+	int ttport;
+	unsigned int tt_buffer_dirty: 1;
+	unsigned int unreserve_pending: 1;
+	unsigned int schedule_low_speed: 1;
+	unsigned int want_wait: 1;
+	unsigned int wait_timer_cancel: 1;
+};
+
+struct dwc2_tt {
+	int refcount;
+	struct usb_tt *usb_tt;
+	long unsigned int periodic_bitmaps[0];
+};
+
+enum dwc2_hsotg_dmamode {
+	S3C_HSOTG_DMA_NONE = 0,
+	S3C_HSOTG_DMA_ONLY = 1,
+	S3C_HSOTG_DMA_DRV = 2,
+};
+
+struct dwc2_hsotg_plat {
+	enum dwc2_hsotg_dmamode dma;
+	unsigned int is_osc: 1;
+	int phy_type;
+	int (*phy_init)(struct platform_device *, int);
+	int (*phy_exit)(struct platform_device *, int);
+};
+
+enum usb_role {
+	USB_ROLE_NONE = 0,
+	USB_ROLE_HOST = 1,
+	USB_ROLE_DEVICE = 2,
+};
+
+typedef int (*usb_role_switch_set_t)(struct usb_role_switch *, enum usb_role);
+
+typedef enum usb_role (*usb_role_switch_get_t)(struct usb_role_switch *);
+
+struct usb_role_switch_desc {
+	struct fwnode_handle *fwnode;
+	struct device *usb2_port;
+	struct device *usb3_port;
+	struct device *udc;
+	usb_role_switch_set_t set;
+	usb_role_switch_get_t get;
+	bool allow_userspace_control;
+	void *driver_data;
+	const char *name;
+};
+
+typedef void (*set_params_cb)(struct dwc2_hsotg *);
+
+struct dwc2_hcd_pipe_info {
+	u8 dev_addr;
+	u8 ep_num;
+	u8 pipe_type;
+	u8 pipe_dir;
+	u16 maxp;
+	u16 maxp_mult;
+};
+
+struct dwc2_hcd_iso_packet_desc {
+	u32 offset;
+	u32 length;
+	u32 actual_length;
+	u32 status;
+};
+
+struct dwc2_qtd;
+
+struct dwc2_hcd_urb {
+	void *priv;
+	struct dwc2_qtd *qtd;
+	void *buf;
+	dma_addr_t dma;
+	void *setup_packet;
+	dma_addr_t setup_dma;
+	u32 length;
+	u32 actual_length;
+	u32 status;
+	u32 error_count;
+	u32 packet_count;
+	u32 flags;
+	u16 interval;
+	struct dwc2_hcd_pipe_info pipe_info;
+	struct dwc2_hcd_iso_packet_desc iso_descs[0];
+};
+
+enum dwc2_control_phase {
+	DWC2_CONTROL_SETUP = 0,
+	DWC2_CONTROL_DATA = 1,
+	DWC2_CONTROL_STATUS = 2,
+};
+
+struct dwc2_qtd {
+	enum dwc2_control_phase control_phase;
+	u8 in_process;
+	u8 data_toggle;
+	u8 complete_split;
+	u8 isoc_split_pos;
+	u16 isoc_frame_index;
+	u16 isoc_split_offset;
+	u16 isoc_td_last;
+	u16 isoc_td_first;
+	u32 ssplit_out_xfer_count;
+	u8 error_count;
+	u8 n_desc;
+	u16 isoc_frame_index_last;
+	u16 num_naks;
+	struct dwc2_hcd_urb *urb;
+	struct dwc2_qh *qh;
+	struct list_head qtd_list_entry;
+};
+
+enum dwc2_transaction_type {
+	DWC2_TRANSACTION_NONE = 0,
+	DWC2_TRANSACTION_PERIODIC = 1,
+	DWC2_TRANSACTION_NON_PERIODIC = 2,
+	DWC2_TRANSACTION_ALL = 3,
+};
+
+struct wrapper_priv_data {
+	struct dwc2_hsotg *hsotg;
+};
+
 enum amd_chipset_gen {
 	NOT_AMD_CHIPSET = 0,
 	AMD_CHIPSET_SB600 = 1,
@@ -79249,6 +106444,1744 @@ struct amd_chipset_info {
 	bool need_pll_quirk;
 };
 
+struct ehci_stats {
+	long unsigned int normal;
+	long unsigned int error;
+	long unsigned int iaa;
+	long unsigned int lost_iaa;
+	long unsigned int complete;
+	long unsigned int unlink;
+};
+
+struct ehci_per_sched {
+	struct usb_device *udev;
+	struct usb_host_endpoint *ep;
+	struct list_head ps_list;
+	u16 tt_usecs;
+	u16 cs_mask;
+	u16 period;
+	u16 phase;
+	u8 bw_phase;
+	u8 phase_uf;
+	u8 usecs;
+	u8 c_usecs;
+	u8 bw_uperiod;
+	u8 bw_period;
+};
+
+enum ehci_rh_state {
+	EHCI_RH_HALTED = 0,
+	EHCI_RH_SUSPENDED = 1,
+	EHCI_RH_RUNNING = 2,
+	EHCI_RH_STOPPING = 3,
+};
+
+enum ehci_hrtimer_event {
+	EHCI_HRTIMER_POLL_ASS = 0,
+	EHCI_HRTIMER_POLL_PSS = 1,
+	EHCI_HRTIMER_POLL_DEAD = 2,
+	EHCI_HRTIMER_UNLINK_INTR = 3,
+	EHCI_HRTIMER_FREE_ITDS = 4,
+	EHCI_HRTIMER_ACTIVE_UNLINK = 5,
+	EHCI_HRTIMER_START_UNLINK_INTR = 6,
+	EHCI_HRTIMER_ASYNC_UNLINKS = 7,
+	EHCI_HRTIMER_IAA_WATCHDOG = 8,
+	EHCI_HRTIMER_DISABLE_PERIODIC = 9,
+	EHCI_HRTIMER_DISABLE_ASYNC = 10,
+	EHCI_HRTIMER_IO_WATCHDOG = 11,
+	EHCI_HRTIMER_NUM_EVENTS = 12,
+};
+
+struct ehci_caps;
+
+struct ehci_regs;
+
+struct ehci_dbg_port;
+
+struct ehci_qh;
+
+union ehci_shadow;
+
+struct ehci_itd;
+
+struct ehci_sitd;
+
+struct ehci_hcd {
+	enum ehci_hrtimer_event next_hrtimer_event;
+	unsigned int enabled_hrtimer_events;
+	ktime_t hr_timeouts[12];
+	struct hrtimer hrtimer;
+	int PSS_poll_count;
+	int ASS_poll_count;
+	int died_poll_count;
+	struct ehci_caps *caps;
+	struct ehci_regs *regs;
+	struct ehci_dbg_port *debug;
+	__u32 hcs_params;
+	spinlock_t lock;
+	enum ehci_rh_state rh_state;
+	bool scanning: 1;
+	bool need_rescan: 1;
+	bool intr_unlinking: 1;
+	bool iaa_in_progress: 1;
+	bool async_unlinking: 1;
+	bool shutdown: 1;
+	struct ehci_qh *qh_scan_next;
+	struct ehci_qh *async;
+	struct ehci_qh *dummy;
+	struct list_head async_unlink;
+	struct list_head async_idle;
+	unsigned int async_unlink_cycle;
+	unsigned int async_count;
+	__le32 old_current;
+	__le32 old_token;
+	unsigned int periodic_size;
+	__le32 *periodic;
+	dma_addr_t periodic_dma;
+	struct list_head intr_qh_list;
+	unsigned int i_thresh;
+	union ehci_shadow *pshadow;
+	struct list_head intr_unlink_wait;
+	struct list_head intr_unlink;
+	unsigned int intr_unlink_wait_cycle;
+	unsigned int intr_unlink_cycle;
+	unsigned int now_frame;
+	unsigned int last_iso_frame;
+	unsigned int intr_count;
+	unsigned int isoc_count;
+	unsigned int periodic_count;
+	unsigned int uframe_periodic_max;
+	struct list_head cached_itd_list;
+	struct ehci_itd *last_itd_to_free;
+	struct list_head cached_sitd_list;
+	struct ehci_sitd *last_sitd_to_free;
+	long unsigned int reset_done[15];
+	long unsigned int bus_suspended;
+	long unsigned int companion_ports;
+	long unsigned int owned_ports;
+	long unsigned int port_c_suspend;
+	long unsigned int suspended_ports;
+	long unsigned int resuming_ports;
+	struct dma_pool *qh_pool;
+	struct dma_pool *qtd_pool;
+	struct dma_pool *itd_pool;
+	struct dma_pool *sitd_pool;
+	unsigned int random_frame;
+	long unsigned int next_statechange;
+	ktime_t last_periodic_enable;
+	u32 command;
+	unsigned int no_selective_suspend: 1;
+	unsigned int has_fsl_port_bug: 1;
+	unsigned int has_fsl_hs_errata: 1;
+	unsigned int has_fsl_susp_errata: 1;
+	unsigned int has_ci_pec_bug: 1;
+	unsigned int big_endian_mmio: 1;
+	unsigned int big_endian_desc: 1;
+	unsigned int big_endian_capbase: 1;
+	unsigned int has_amcc_usb23: 1;
+	unsigned int need_io_watchdog: 1;
+	unsigned int amd_pll_fix: 1;
+	unsigned int use_dummy_qh: 1;
+	unsigned int has_synopsys_hc_bug: 1;
+	unsigned int frame_index_bug: 1;
+	unsigned int need_oc_pp_cycle: 1;
+	unsigned int imx28_write_fix: 1;
+	unsigned int spurious_oc: 1;
+	unsigned int is_aspeed: 1;
+	__le32 *ohci_hcctrl_reg;
+	unsigned int has_hostpc: 1;
+	unsigned int has_tdi_phy_lpm: 1;
+	unsigned int has_ppcd: 1;
+	u8 sbrn;
+	struct ehci_stats stats;
+	struct dentry *debug_dir;
+	u8 bandwidth[64];
+	u8 tt_budget[64];
+	struct list_head tt_list;
+	long unsigned int priv[0];
+};
+
+struct ehci_caps {
+	u32 hc_capbase;
+	u32 hcs_params;
+	u32 hcc_params;
+	u8 portroute[8];
+};
+
+struct ehci_regs {
+	u32 command;
+	u32 status;
+	u32 intr_enable;
+	u32 frame_index;
+	u32 segment;
+	u32 frame_list;
+	u32 async_next;
+	u32 reserved1[2];
+	u32 txfill_tuning;
+	u32 reserved2[6];
+	u32 configured_flag;
+	union {
+		u32 port_status[15];
+		struct {
+			u32 reserved3[9];
+			u32 usbmode;
+		};
+	};
+	union {
+		struct {
+			u32 reserved4;
+			u32 hostpc[15];
+		};
+		u32 brcm_insnreg[4];
+	};
+	u32 reserved5[2];
+	u32 usbmode_ex;
+};
+
+struct ehci_dbg_port {
+	u32 control;
+	u32 pids;
+	u32 data03;
+	u32 data47;
+	u32 address;
+};
+
+struct ehci_fstn;
+
+union ehci_shadow {
+	struct ehci_qh *qh;
+	struct ehci_itd *itd;
+	struct ehci_sitd *sitd;
+	struct ehci_fstn *fstn;
+	__le32 *hw_next;
+	void *ptr;
+};
+
+struct ehci_qh_hw;
+
+struct ehci_qtd;
+
+struct ehci_qh {
+	struct ehci_qh_hw *hw;
+	dma_addr_t qh_dma;
+	union ehci_shadow qh_next;
+	struct list_head qtd_list;
+	struct list_head intr_node;
+	struct ehci_qtd *dummy;
+	struct list_head unlink_node;
+	struct ehci_per_sched ps;
+	unsigned int unlink_cycle;
+	u8 qh_state;
+	u8 xacterrs;
+	u8 unlink_reason;
+	u8 gap_uf;
+	unsigned int is_out: 1;
+	unsigned int clearing_tt: 1;
+	unsigned int dequeue_during_giveback: 1;
+	unsigned int should_be_inactive: 1;
+};
+
+struct ehci_iso_stream;
+
+struct ehci_itd {
+	__le32 hw_next;
+	__le32 hw_transaction[8];
+	__le32 hw_bufp[7];
+	__le32 hw_bufp_hi[7];
+	dma_addr_t itd_dma;
+	union ehci_shadow itd_next;
+	struct urb *urb;
+	struct ehci_iso_stream *stream;
+	struct list_head itd_list;
+	unsigned int frame;
+	unsigned int pg;
+	unsigned int index[8];
+	long: 64;
+};
+
+struct ehci_sitd {
+	__le32 hw_next;
+	__le32 hw_fullspeed_ep;
+	__le32 hw_uframe;
+	__le32 hw_results;
+	__le32 hw_buf[2];
+	__le32 hw_backpointer;
+	__le32 hw_buf_hi[2];
+	dma_addr_t sitd_dma;
+	union ehci_shadow sitd_next;
+	struct urb *urb;
+	struct ehci_iso_stream *stream;
+	struct list_head sitd_list;
+	unsigned int frame;
+	unsigned int index;
+};
+
+struct ehci_qtd {
+	__le32 hw_next;
+	__le32 hw_alt_next;
+	__le32 hw_token;
+	__le32 hw_buf[5];
+	__le32 hw_buf_hi[5];
+	dma_addr_t qtd_dma;
+	struct list_head qtd_list;
+	struct urb *urb;
+	size_t length;
+};
+
+struct ehci_fstn {
+	__le32 hw_next;
+	__le32 hw_prev;
+	dma_addr_t fstn_dma;
+	union ehci_shadow fstn_next;
+	long: 64;
+};
+
+struct ehci_qh_hw {
+	__le32 hw_next;
+	__le32 hw_info1;
+	__le32 hw_info2;
+	__le32 hw_current;
+	__le32 hw_qtd_next;
+	__le32 hw_alt_next;
+	__le32 hw_token;
+	__le32 hw_buf[5];
+	__le32 hw_buf_hi[5];
+	long: 64;
+	long: 64;
+	long: 64;
+};
+
+struct ehci_iso_packet {
+	u64 bufp;
+	__le32 transaction;
+	u8 cross;
+	u32 buf1;
+};
+
+struct ehci_iso_sched {
+	struct list_head td_list;
+	unsigned int span;
+	unsigned int first_packet;
+	struct ehci_iso_packet packet[0];
+};
+
+struct ehci_iso_stream {
+	struct ehci_qh_hw *hw;
+	u8 bEndpointAddress;
+	u8 highspeed;
+	struct list_head td_list;
+	struct list_head free_list;
+	struct ehci_per_sched ps;
+	unsigned int next_uframe;
+	__le32 splits;
+	u16 uperiod;
+	u16 maxp;
+	unsigned int bandwidth;
+	__le32 buf0;
+	__le32 buf1;
+	__le32 buf2;
+	__le32 address;
+};
+
+struct ehci_tt {
+	u16 bandwidth[8];
+	struct list_head tt_list;
+	struct list_head ps_list;
+	struct usb_tt *usb_tt;
+	int tt_port;
+};
+
+struct ehci_driver_overrides {
+	size_t extra_priv_size;
+	int (*reset)(struct usb_hcd *);
+	int (*port_power)(struct usb_hcd *, int, bool);
+};
+
+struct debug_buffer {
+	ssize_t (*fill_func)(struct debug_buffer *);
+	struct usb_bus *bus;
+	struct mutex mutex;
+	size_t count;
+	char *output_buf;
+	size_t alloc_size;
+};
+
+struct soc_device_attribute {
+	const char *machine;
+	const char *family;
+	const char *revision;
+	const char *serial_number;
+	const char *soc_id;
+	const void *data;
+	const struct attribute_group *custom_attr_group;
+};
+
+struct usb_ehci_pdata {
+	int caps_offset;
+	unsigned int has_tt: 1;
+	unsigned int has_synopsys_hc_bug: 1;
+	unsigned int big_endian_desc: 1;
+	unsigned int big_endian_mmio: 1;
+	unsigned int no_io_watchdog: 1;
+	unsigned int reset_on_resume: 1;
+	unsigned int dma_mask_64: 1;
+	unsigned int spurious_oc: 1;
+	int (*power_on)(struct platform_device *);
+	void (*power_off)(struct platform_device *);
+	void (*power_suspend)(struct platform_device *);
+	int (*pre_setup)(struct usb_hcd *);
+};
+
+struct ehci_platform_priv {
+	struct clk *clks[4];
+	struct reset_control *rsts;
+	bool reset_on_resume;
+	bool quirk_poll;
+	struct timer_list poll_timer;
+	struct delayed_work poll_work;
+};
+
+typedef __u32 __hc32;
+
+typedef __u16 __hc16;
+
+struct td;
+
+struct ed {
+	__hc32 hwINFO;
+	__hc32 hwTailP;
+	__hc32 hwHeadP;
+	__hc32 hwNextED;
+	dma_addr_t dma;
+	struct td *dummy;
+	struct ed *ed_next;
+	struct ed *ed_prev;
+	struct list_head td_list;
+	struct list_head in_use_list;
+	u8 state;
+	u8 type;
+	u8 branch;
+	u16 interval;
+	u16 load;
+	u16 last_iso;
+	u16 tick;
+	unsigned int takeback_wdh_cnt;
+	struct td *pending_td;
+	long: 64;
+};
+
+struct td {
+	__hc32 hwINFO;
+	__hc32 hwCBP;
+	__hc32 hwNextTD;
+	__hc32 hwBE;
+	__hc16 hwPSW[2];
+	__u8 index;
+	struct ed *ed;
+	struct td *td_hash;
+	struct td *next_dl_td;
+	struct urb *urb;
+	dma_addr_t td_dma;
+	dma_addr_t data_dma;
+	struct list_head td_list;
+	long: 64;
+};
+
+struct ohci_hcca {
+	__hc32 int_table[32];
+	__hc32 frame_no;
+	__hc32 done_head;
+	u8 reserved_for_hc[116];
+	u8 what[4];
+};
+
+struct ohci_roothub_regs {
+	__hc32 a;
+	__hc32 b;
+	__hc32 status;
+	__hc32 portstatus[15];
+};
+
+struct ohci_regs {
+	__hc32 revision;
+	__hc32 control;
+	__hc32 cmdstatus;
+	__hc32 intrstatus;
+	__hc32 intrenable;
+	__hc32 intrdisable;
+	__hc32 hcca;
+	__hc32 ed_periodcurrent;
+	__hc32 ed_controlhead;
+	__hc32 ed_controlcurrent;
+	__hc32 ed_bulkhead;
+	__hc32 ed_bulkcurrent;
+	__hc32 donehead;
+	__hc32 fminterval;
+	__hc32 fmremaining;
+	__hc32 fmnumber;
+	__hc32 periodicstart;
+	__hc32 lsthresh;
+	struct ohci_roothub_regs roothub;
+	long: 64;
+	long: 64;
+};
+
+struct urb_priv {
+	struct ed *ed;
+	u16 length;
+	u16 td_cnt;
+	struct list_head pending;
+	struct td *td[0];
+};
+
+typedef struct urb_priv urb_priv_t;
+
+enum ohci_rh_state {
+	OHCI_RH_HALTED = 0,
+	OHCI_RH_SUSPENDED = 1,
+	OHCI_RH_RUNNING = 2,
+};
+
+struct ohci_hcd {
+	spinlock_t lock;
+	struct ohci_regs *regs;
+	struct ohci_hcca *hcca;
+	dma_addr_t hcca_dma;
+	struct ed *ed_rm_list;
+	struct ed *ed_bulktail;
+	struct ed *ed_controltail;
+	struct ed *periodic[32];
+	void (*start_hnp)(struct ohci_hcd *);
+	struct dma_pool *td_cache;
+	struct dma_pool *ed_cache;
+	struct td *td_hash[64];
+	struct td *dl_start;
+	struct td *dl_end;
+	struct list_head pending;
+	struct list_head eds_in_use;
+	enum ohci_rh_state rh_state;
+	int num_ports;
+	int load[32];
+	u32 hc_control;
+	long unsigned int next_statechange;
+	u32 fminterval;
+	unsigned int autostop: 1;
+	unsigned int working: 1;
+	unsigned int restart_work: 1;
+	long unsigned int flags;
+	unsigned int prev_frame_no;
+	unsigned int wdh_cnt;
+	unsigned int prev_wdh_cnt;
+	u32 prev_donehead;
+	struct timer_list io_watchdog;
+	struct work_struct nec_work;
+	struct dentry *debug_dir;
+	long unsigned int priv[0];
+};
+
+struct ohci_driver_overrides {
+	const char *product_desc;
+	size_t extra_priv_size;
+	int (*reset)(struct usb_hcd *);
+};
+
+struct debug_buffer___2 {
+	ssize_t (*fill_func)(struct debug_buffer___2 *);
+	struct ohci_hcd *ohci;
+	struct mutex mutex;
+	size_t count;
+	char *page;
+};
+
+struct usb_ohci_pdata {
+	unsigned int big_endian_desc: 1;
+	unsigned int big_endian_mmio: 1;
+	unsigned int no_big_frame_no: 1;
+	unsigned int num_ports;
+	int (*power_on)(struct platform_device *);
+	void (*power_off)(struct platform_device *);
+	void (*power_suspend)(struct platform_device *);
+};
+
+struct ohci_platform_priv {
+	struct clk *clks[3];
+	struct reset_control *resets;
+};
+
+struct uhci_td;
+
+struct uhci_qh {
+	__le32 link;
+	__le32 element;
+	dma_addr_t dma_handle;
+	struct list_head node;
+	struct usb_host_endpoint *hep;
+	struct usb_device *udev;
+	struct list_head queue;
+	struct uhci_td *dummy_td;
+	struct uhci_td *post_td;
+	struct usb_iso_packet_descriptor *iso_packet_desc;
+	long unsigned int advance_jiffies;
+	unsigned int unlink_frame;
+	unsigned int period;
+	short int phase;
+	short int load;
+	unsigned int iso_frame;
+	int state;
+	int type;
+	int skel;
+	unsigned int initial_toggle: 1;
+	unsigned int needs_fixup: 1;
+	unsigned int is_stopped: 1;
+	unsigned int wait_expired: 1;
+	unsigned int bandwidth_reserved: 1;
+};
+
+struct uhci_td {
+	__le32 link;
+	__le32 status;
+	__le32 token;
+	__le32 buffer;
+	dma_addr_t dma_handle;
+	struct list_head list;
+	int frame;
+	struct list_head fl_list;
+};
+
+enum uhci_rh_state {
+	UHCI_RH_RESET = 0,
+	UHCI_RH_SUSPENDED = 1,
+	UHCI_RH_AUTO_STOPPED = 2,
+	UHCI_RH_RESUMING = 3,
+	UHCI_RH_SUSPENDING = 4,
+	UHCI_RH_RUNNING = 5,
+	UHCI_RH_RUNNING_NODEVS = 6,
+};
+
+struct uhci_hcd {
+	long unsigned int io_addr;
+	void *regs;
+	struct dma_pool *qh_pool;
+	struct dma_pool *td_pool;
+	struct uhci_td *term_td;
+	struct uhci_qh *skelqh[11];
+	struct uhci_qh *next_qh;
+	spinlock_t lock;
+	dma_addr_t frame_dma_handle;
+	__le32 *frame;
+	void **frame_cpu;
+	enum uhci_rh_state rh_state;
+	long unsigned int auto_stop_time;
+	unsigned int frame_number;
+	unsigned int is_stopped;
+	unsigned int last_iso_frame;
+	unsigned int cur_iso_frame;
+	unsigned int scan_in_progress: 1;
+	unsigned int need_rescan: 1;
+	unsigned int dead: 1;
+	unsigned int RD_enable: 1;
+	unsigned int is_initialized: 1;
+	unsigned int fsbr_is_on: 1;
+	unsigned int fsbr_is_wanted: 1;
+	unsigned int fsbr_expiring: 1;
+	struct timer_list fsbr_timer;
+	unsigned int oc_low: 1;
+	unsigned int wait_for_hp: 1;
+	unsigned int big_endian_mmio: 1;
+	unsigned int big_endian_desc: 1;
+	unsigned int is_aspeed: 1;
+	long unsigned int port_c_suspend;
+	long unsigned int resuming_ports;
+	long unsigned int ports_timeout;
+	struct list_head idle_qh_list;
+	int rh_numports;
+	wait_queue_head_t waitqh;
+	int num_waiting;
+	int total_load;
+	short int load[32];
+	struct clk *clk;
+	void (*reset_hc)(struct uhci_hcd *);
+	int (*check_and_reset_hc)(struct uhci_hcd *);
+	void (*configure_hc)(struct uhci_hcd *);
+	int (*resume_detect_interrupts_are_broken)(struct uhci_hcd *);
+	int (*global_suspend_mode_is_broken)(struct uhci_hcd *);
+};
+
+struct urb_priv___2 {
+	struct list_head node;
+	struct urb *urb;
+	struct uhci_qh *qh;
+	struct list_head td_list;
+	unsigned int fsbr: 1;
+};
+
+struct uhci_debug {
+	int size;
+	char *data;
+};
+
+struct xhci_cap_regs {
+	__le32 hc_capbase;
+	__le32 hcs_params1;
+	__le32 hcs_params2;
+	__le32 hcs_params3;
+	__le32 hcc_params;
+	__le32 db_off;
+	__le32 run_regs_off;
+	__le32 hcc_params2;
+};
+
+struct xhci_op_regs {
+	__le32 command;
+	__le32 status;
+	__le32 page_size;
+	__le32 reserved1;
+	__le32 reserved2;
+	__le32 dev_notification;
+	__le64 cmd_ring;
+	__le32 reserved3[4];
+	__le64 dcbaa_ptr;
+	__le32 config_reg;
+	__le32 reserved4[241];
+	__le32 port_status_base;
+	__le32 port_power_base;
+	__le32 port_link_base;
+	__le32 reserved5;
+	__le32 reserved6[1016];
+};
+
+struct xhci_intr_reg {
+	__le32 irq_pending;
+	__le32 irq_control;
+	__le32 erst_size;
+	__le32 rsvd;
+	__le64 erst_base;
+	__le64 erst_dequeue;
+};
+
+struct xhci_run_regs {
+	__le32 microframe_index;
+	__le32 rsvd[7];
+	struct xhci_intr_reg ir_set[128];
+};
+
+struct xhci_doorbell_array {
+	__le32 doorbell[256];
+};
+
+struct xhci_container_ctx {
+	unsigned int type;
+	int size;
+	u8 *bytes;
+	dma_addr_t dma;
+};
+
+struct xhci_slot_ctx {
+	__le32 dev_info;
+	__le32 dev_info2;
+	__le32 tt_info;
+	__le32 dev_state;
+	__le32 reserved[4];
+};
+
+struct xhci_ep_ctx {
+	__le32 ep_info;
+	__le32 ep_info2;
+	__le64 deq;
+	__le32 tx_info;
+	__le32 reserved[3];
+};
+
+struct xhci_input_control_ctx {
+	__le32 drop_flags;
+	__le32 add_flags;
+	__le32 rsvd2[6];
+};
+
+union xhci_trb;
+
+struct xhci_command {
+	struct xhci_container_ctx *in_ctx;
+	u32 status;
+	int slot_id;
+	struct completion *completion;
+	union xhci_trb *command_trb;
+	struct list_head cmd_list;
+};
+
+struct xhci_link_trb {
+	__le64 segment_ptr;
+	__le32 intr_target;
+	__le32 control;
+};
+
+struct xhci_transfer_event {
+	__le64 buffer;
+	__le32 transfer_len;
+	__le32 flags;
+};
+
+struct xhci_event_cmd {
+	__le64 cmd_trb;
+	__le32 status;
+	__le32 flags;
+};
+
+struct xhci_generic_trb {
+	__le32 field[4];
+};
+
+union xhci_trb {
+	struct xhci_link_trb link;
+	struct xhci_transfer_event trans_event;
+	struct xhci_event_cmd event_cmd;
+	struct xhci_generic_trb generic;
+};
+
+struct xhci_stream_ctx {
+	__le64 stream_ring;
+	__le32 reserved[2];
+};
+
+struct xhci_ring;
+
+struct xhci_stream_info {
+	struct xhci_ring **stream_rings;
+	unsigned int num_streams;
+	struct xhci_stream_ctx *stream_ctx_array;
+	unsigned int num_stream_ctxs;
+	dma_addr_t ctx_array_dma;
+	struct xarray trb_address_map;
+	struct xhci_command *free_streams_command;
+};
+
+enum xhci_ring_type {
+	TYPE_CTRL = 0,
+	TYPE_ISOC = 1,
+	TYPE_BULK = 2,
+	TYPE_INTR = 3,
+	TYPE_STREAM = 4,
+	TYPE_COMMAND = 5,
+	TYPE_EVENT = 6,
+};
+
+struct xhci_segment;
+
+struct xhci_ring {
+	struct xhci_segment *first_seg;
+	struct xhci_segment *last_seg;
+	union xhci_trb *enqueue;
+	struct xhci_segment *enq_seg;
+	union xhci_trb *dequeue;
+	struct xhci_segment *deq_seg;
+	struct list_head td_list;
+	u32 cycle_state;
+	unsigned int stream_id;
+	unsigned int num_segs;
+	unsigned int num_trbs_free;
+	unsigned int num_trbs_free_temp;
+	unsigned int bounce_buf_len;
+	enum xhci_ring_type type;
+	bool last_td_was_short;
+	struct xarray *trb_address_map;
+};
+
+struct xhci_bw_info {
+	unsigned int ep_interval;
+	unsigned int mult;
+	unsigned int num_packets;
+	unsigned int max_packet_size;
+	unsigned int max_esit_payload;
+	unsigned int type;
+};
+
+struct xhci_virt_device;
+
+struct xhci_hcd;
+
+struct xhci_virt_ep {
+	struct xhci_virt_device *vdev;
+	unsigned int ep_index;
+	struct xhci_ring *ring;
+	struct xhci_stream_info *stream_info;
+	struct xhci_ring *new_ring;
+	unsigned int err_count;
+	unsigned int ep_state;
+	struct list_head cancelled_td_list;
+	struct timer_list stop_cmd_timer;
+	struct xhci_hcd *xhci;
+	struct xhci_segment *queued_deq_seg;
+	union xhci_trb *queued_deq_ptr;
+	bool skip;
+	struct xhci_bw_info bw_info;
+	struct list_head bw_endpoint_list;
+	int next_frame_id;
+	bool use_extended_tbc;
+};
+
+struct xhci_interval_bw_table;
+
+struct xhci_tt_bw_info;
+
+struct xhci_virt_device {
+	int slot_id;
+	struct usb_device *udev;
+	struct xhci_container_ctx *out_ctx;
+	struct xhci_container_ctx *in_ctx;
+	struct xhci_virt_ep eps[31];
+	u8 fake_port;
+	u8 real_port;
+	struct xhci_interval_bw_table *bw_table;
+	struct xhci_tt_bw_info *tt_info;
+	long unsigned int flags;
+	u16 current_mel;
+	void *debugfs_private;
+};
+
+struct s3_save {
+	u32 command;
+	u32 dev_nt;
+	u64 dcbaa_ptr;
+	u32 config_reg;
+};
+
+struct xhci_bus_state {
+	long unsigned int bus_suspended;
+	long unsigned int next_statechange;
+	u32 port_c_suspend;
+	u32 suspended_ports;
+	u32 port_remote_wakeup;
+	long unsigned int resuming_ports;
+};
+
+struct xhci_port;
+
+struct xhci_hub {
+	struct xhci_port **ports;
+	unsigned int num_ports;
+	struct usb_hcd *hcd;
+	struct xhci_bus_state bus_state;
+	u8 maj_rev;
+	u8 min_rev;
+};
+
+struct xhci_device_context_array;
+
+struct xhci_interrupter;
+
+struct xhci_scratchpad;
+
+struct xhci_root_port_bw_info;
+
+struct xhci_port_cap;
+
+struct xhci_hcd {
+	struct usb_hcd *main_hcd;
+	struct usb_hcd *shared_hcd;
+	struct xhci_cap_regs *cap_regs;
+	struct xhci_op_regs *op_regs;
+	struct xhci_run_regs *run_regs;
+	struct xhci_doorbell_array *dba;
+	__u32 hcs_params1;
+	__u32 hcs_params2;
+	__u32 hcs_params3;
+	__u32 hcc_params;
+	__u32 hcc_params2;
+	spinlock_t lock;
+	u8 sbrn;
+	u16 hci_version;
+	u8 max_slots;
+	u16 max_interrupters;
+	u8 max_ports;
+	u8 isoc_threshold;
+	u32 imod_interval;
+	u32 isoc_bei_interval;
+	int event_ring_max;
+	int page_size;
+	int page_shift;
+	int msix_count;
+	struct clk *clk;
+	struct clk *reg_clk;
+	struct reset_control *reset;
+	struct xhci_device_context_array *dcbaa;
+	struct xhci_interrupter *interrupter;
+	struct xhci_ring *cmd_ring;
+	unsigned int cmd_ring_state;
+	struct list_head cmd_list;
+	unsigned int cmd_ring_reserved_trbs;
+	struct delayed_work cmd_timer;
+	struct completion cmd_ring_stop_completion;
+	struct xhci_command *current_cmd;
+	struct xhci_scratchpad *scratchpad;
+	struct list_head lpm_failed_devs;
+	struct mutex mutex;
+	struct xhci_command *lpm_command;
+	struct xhci_virt_device *devs[256];
+	struct xhci_root_port_bw_info *rh_bw;
+	struct dma_pool *device_pool;
+	struct dma_pool *segment_pool;
+	struct dma_pool *small_streams_pool;
+	struct dma_pool *medium_streams_pool;
+	unsigned int xhc_state;
+	long unsigned int run_graceperiod;
+	u32 command;
+	struct s3_save s3;
+	long long unsigned int quirks;
+	unsigned int num_active_eps;
+	unsigned int limit_active_eps;
+	struct xhci_port *hw_ports;
+	struct xhci_hub usb2_rhub;
+	struct xhci_hub usb3_rhub;
+	unsigned int hw_lpm_support: 1;
+	unsigned int broken_suspend: 1;
+	u32 *ext_caps;
+	unsigned int num_ext_caps;
+	struct xhci_port_cap *port_caps;
+	unsigned int num_port_caps;
+	struct timer_list comp_mode_recovery_timer;
+	u32 port_status_u0;
+	u16 test_mode;
+	struct dentry *debugfs_root;
+	struct dentry *debugfs_slots;
+	struct list_head regset_list;
+	void *dbc;
+	long unsigned int priv[0];
+};
+
+struct xhci_segment {
+	union xhci_trb *trbs;
+	struct xhci_segment *next;
+	dma_addr_t dma;
+	dma_addr_t bounce_dma;
+	void *bounce_buf;
+	unsigned int bounce_offs;
+	unsigned int bounce_len;
+};
+
+enum xhci_overhead_type {
+	LS_OVERHEAD_TYPE = 0,
+	FS_OVERHEAD_TYPE = 1,
+	HS_OVERHEAD_TYPE = 2,
+};
+
+struct xhci_interval_bw {
+	unsigned int num_packets;
+	struct list_head endpoints;
+	unsigned int overhead[3];
+};
+
+struct xhci_interval_bw_table {
+	unsigned int interval0_esit_payload;
+	struct xhci_interval_bw interval_bw[16];
+	unsigned int bw_used;
+	unsigned int ss_bw_in;
+	unsigned int ss_bw_out;
+};
+
+struct xhci_tt_bw_info {
+	struct list_head tt_list;
+	int slot_id;
+	int ttport;
+	struct xhci_interval_bw_table bw_table;
+	int active_eps;
+};
+
+struct xhci_root_port_bw_info {
+	struct list_head tts;
+	unsigned int num_active_tts;
+	struct xhci_interval_bw_table bw_table;
+};
+
+struct xhci_device_context_array {
+	__le64 dev_context_ptrs[256];
+	dma_addr_t dma;
+};
+
+enum xhci_setup_dev {
+	SETUP_CONTEXT_ONLY = 0,
+	SETUP_CONTEXT_ADDRESS = 1,
+};
+
+enum xhci_cancelled_td_status {
+	TD_DIRTY = 0,
+	TD_HALTED = 1,
+	TD_CLEARING_CACHE = 2,
+	TD_CLEARING_CACHE_DEFERRED = 3,
+	TD_CLEARED = 4,
+};
+
+struct xhci_td {
+	struct list_head td_list;
+	struct list_head cancelled_td_list;
+	int status;
+	enum xhci_cancelled_td_status cancel_status;
+	struct urb *urb;
+	struct xhci_segment *start_seg;
+	union xhci_trb *first_trb;
+	union xhci_trb *last_trb;
+	struct xhci_segment *last_trb_seg;
+	struct xhci_segment *bounce_seg;
+	bool urb_length_set;
+	bool error_mid_td;
+	unsigned int num_trbs;
+};
+
+struct xhci_erst_entry {
+	__le64 seg_addr;
+	__le32 seg_size;
+	__le32 rsvd;
+};
+
+struct xhci_erst {
+	struct xhci_erst_entry *entries;
+	unsigned int num_entries;
+	dma_addr_t erst_dma_addr;
+	unsigned int erst_size;
+};
+
+struct xhci_scratchpad {
+	u64 *sp_array;
+	dma_addr_t sp_dma;
+	void **sp_buffers;
+};
+
+struct urb_priv___3 {
+	int num_tds;
+	int num_tds_done;
+	struct xhci_td td[0];
+};
+
+struct xhci_interrupter {
+	struct xhci_ring *event_ring;
+	struct xhci_erst erst;
+	struct xhci_intr_reg *ir_set;
+	unsigned int intr_num;
+	u32 s3_irq_pending;
+	u32 s3_irq_control;
+	u32 s3_erst_size;
+	u64 s3_erst_base;
+	u64 s3_erst_dequeue;
+};
+
+struct xhci_port_cap {
+	u32 *psi;
+	u8 psi_count;
+	u8 psi_uid_count;
+	u8 maj_rev;
+	u8 min_rev;
+};
+
+struct xhci_port {
+	__le32 *addr;
+	int hw_portnum;
+	int hcd_portnum;
+	struct xhci_hub *rhub;
+	struct xhci_port_cap *port_cap;
+	unsigned int lpm_incapable: 1;
+	long unsigned int resume_timestamp;
+	bool rexit_active;
+	struct completion rexit_done;
+	struct completion u3exit_done;
+};
+
+struct xhci_driver_overrides {
+	size_t extra_priv_size;
+	int (*reset)(struct usb_hcd *);
+	int (*start)(struct usb_hcd *);
+	int (*add_endpoint)(struct usb_hcd *, struct usb_device *, struct usb_host_endpoint *);
+	int (*drop_endpoint)(struct usb_hcd *, struct usb_device *, struct usb_host_endpoint *);
+	int (*check_bandwidth)(struct usb_hcd *, struct usb_device *);
+	void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);
+	int (*update_hub_device)(struct usb_hcd *, struct usb_device *, struct usb_tt *, gfp_t);
+};
+
+typedef void (*xhci_get_quirks_t)(struct device *, struct xhci_hcd *);
+
+enum xhci_ep_reset_type {
+	EP_HARD_RESET = 0,
+	EP_SOFT_RESET = 1,
+};
+
+struct dbc_regs {
+	__le32 capability;
+	__le32 doorbell;
+	__le32 ersts;
+	__le32 __reserved_0;
+	__le64 erstba;
+	__le64 erdp;
+	__le32 control;
+	__le32 status;
+	__le32 portsc;
+	__le32 __reserved_1;
+	__le64 dccp;
+	__le32 devinfo1;
+	__le32 devinfo2;
+};
+
+struct dbc_str_descs {
+	char string0[64];
+	char manufacturer[64];
+	char product[64];
+	char serial[64];
+};
+
+enum dbc_state {
+	DS_DISABLED = 0,
+	DS_INITIALIZED = 1,
+	DS_ENABLED = 2,
+	DS_CONNECTED = 3,
+	DS_CONFIGURED = 4,
+	DS_STALLED = 5,
+};
+
+struct xhci_dbc;
+
+struct dbc_ep {
+	struct xhci_dbc *dbc;
+	struct list_head list_pending;
+	struct xhci_ring *ring;
+	unsigned int direction: 1;
+};
+
+struct dbc_driver;
+
+struct xhci_dbc {
+	spinlock_t lock;
+	struct device *dev;
+	struct xhci_hcd *xhci;
+	struct dbc_regs *regs;
+	struct xhci_ring *ring_evt;
+	struct xhci_ring *ring_in;
+	struct xhci_ring *ring_out;
+	struct xhci_erst erst;
+	struct xhci_container_ctx *ctx;
+	struct dbc_str_descs *string;
+	dma_addr_t string_dma;
+	size_t string_size;
+	enum dbc_state state;
+	struct delayed_work event_work;
+	unsigned int resume_required: 1;
+	struct dbc_ep eps[2];
+	const struct dbc_driver *driver;
+	void *priv;
+};
+
+struct dbc_driver {
+	int (*configure)(struct xhci_dbc *);
+	void (*disconnect)(struct xhci_dbc *);
+};
+
+struct dbc_request {
+	void *buf;
+	unsigned int length;
+	dma_addr_t dma;
+	void (*complete)(struct xhci_dbc *, struct dbc_request *);
+	struct list_head list_pool;
+	int status;
+	unsigned int actual;
+	struct xhci_dbc *dbc;
+	struct list_head list_pending;
+	dma_addr_t trb_dma;
+	union xhci_trb *trb;
+	unsigned int direction: 1;
+};
+
+struct trace_event_raw_xhci_log_msg {
+	struct trace_entry ent;
+	u32 __data_loc_msg;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_ctx {
+	struct trace_entry ent;
+	int ctx_64;
+	unsigned int ctx_type;
+	dma_addr_t ctx_dma;
+	u8 *ctx_va;
+	unsigned int ctx_ep_num;
+	int slot_id;
+	u32 __data_loc_ctx_data;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_trb {
+	struct trace_entry ent;
+	u32 type;
+	u32 field0;
+	u32 field1;
+	u32 field2;
+	u32 field3;
+	u32 __data_loc_str;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_free_virt_dev {
+	struct trace_entry ent;
+	void *vdev;
+	long long unsigned int out_ctx;
+	long long unsigned int in_ctx;
+	u8 fake_port;
+	u8 real_port;
+	u16 current_mel;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_virt_dev {
+	struct trace_entry ent;
+	void *vdev;
+	long long unsigned int out_ctx;
+	long long unsigned int in_ctx;
+	int devnum;
+	int state;
+	int speed;
+	u8 portnum;
+	u8 level;
+	int slot_id;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_urb {
+	struct trace_entry ent;
+	void *urb;
+	unsigned int pipe;
+	unsigned int stream;
+	int status;
+	unsigned int flags;
+	int num_mapped_sgs;
+	int num_sgs;
+	int length;
+	int actual;
+	int epnum;
+	int dir_in;
+	int type;
+	int slot_id;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_ep_ctx {
+	struct trace_entry ent;
+	u32 info;
+	u32 info2;
+	u64 deq;
+	u32 tx_info;
+	u32 __data_loc_str;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_slot_ctx {
+	struct trace_entry ent;
+	u32 info;
+	u32 info2;
+	u32 tt_info;
+	u32 state;
+	u32 __data_loc_str;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_ctrl_ctx {
+	struct trace_entry ent;
+	u32 drop;
+	u32 add;
+	u32 __data_loc_str;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_ring {
+	struct trace_entry ent;
+	u32 type;
+	void *ring;
+	dma_addr_t enq;
+	dma_addr_t deq;
+	dma_addr_t enq_seg;
+	dma_addr_t deq_seg;
+	unsigned int num_segs;
+	unsigned int stream_id;
+	unsigned int cycle_state;
+	unsigned int num_trbs_free;
+	unsigned int bounce_buf_len;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_portsc {
+	struct trace_entry ent;
+	u32 portnum;
+	u32 portsc;
+	u32 __data_loc_str;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_log_doorbell {
+	struct trace_entry ent;
+	u32 slot;
+	u32 doorbell;
+	u32 __data_loc_str;
+	char __data[0];
+};
+
+struct trace_event_raw_xhci_dbc_log_request {
+	struct trace_entry ent;
+	struct dbc_request *req;
+	bool dir;
+	unsigned int actual;
+	unsigned int length;
+	int status;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_xhci_log_msg {
+	u32 msg;
+};
+
+struct trace_event_data_offsets_xhci_log_ctx {
+	u32 ctx_data;
+};
+
+struct trace_event_data_offsets_xhci_log_trb {
+	u32 str;
+};
+
+struct trace_event_data_offsets_xhci_log_free_virt_dev {};
+
+struct trace_event_data_offsets_xhci_log_virt_dev {};
+
+struct trace_event_data_offsets_xhci_log_urb {};
+
+struct trace_event_data_offsets_xhci_log_ep_ctx {
+	u32 str;
+};
+
+struct trace_event_data_offsets_xhci_log_slot_ctx {
+	u32 str;
+};
+
+struct trace_event_data_offsets_xhci_log_ctrl_ctx {
+	u32 str;
+};
+
+struct trace_event_data_offsets_xhci_log_ring {};
+
+struct trace_event_data_offsets_xhci_log_portsc {
+	u32 str;
+};
+
+struct trace_event_data_offsets_xhci_log_doorbell {
+	u32 str;
+};
+
+struct trace_event_data_offsets_xhci_dbc_log_request {};
+
+typedef void (*btf_trace_xhci_dbg_address)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_dbg_context_change)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_dbg_quirks)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_dbg_reset_ep)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_dbg_cancel_urb)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_dbg_init)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_dbg_ring_expansion)(void *, struct va_format *);
+
+typedef void (*btf_trace_xhci_address_ctx)(void *, struct xhci_hcd *, struct xhci_container_ctx *, unsigned int);
+
+typedef void (*btf_trace_xhci_handle_event)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_handle_command)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_handle_transfer)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_queue_trb)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_dbc_handle_event)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_dbc_handle_transfer)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_dbc_gadget_ep_queue)(void *, struct xhci_ring *, struct xhci_generic_trb *);
+
+typedef void (*btf_trace_xhci_free_virt_device)(void *, struct xhci_virt_device *);
+
+typedef void (*btf_trace_xhci_alloc_virt_device)(void *, struct xhci_virt_device *);
+
+typedef void (*btf_trace_xhci_setup_device)(void *, struct xhci_virt_device *);
+
+typedef void (*btf_trace_xhci_setup_addressable_virt_device)(void *, struct xhci_virt_device *);
+
+typedef void (*btf_trace_xhci_stop_device)(void *, struct xhci_virt_device *);
+
+typedef void (*btf_trace_xhci_urb_enqueue)(void *, struct urb *);
+
+typedef void (*btf_trace_xhci_urb_giveback)(void *, struct urb *);
+
+typedef void (*btf_trace_xhci_urb_dequeue)(void *, struct urb *);
+
+typedef void (*btf_trace_xhci_handle_cmd_stop_ep)(void *, struct xhci_ep_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_set_deq_ep)(void *, struct xhci_ep_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_reset_ep)(void *, struct xhci_ep_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_config_ep)(void *, struct xhci_ep_ctx *);
+
+typedef void (*btf_trace_xhci_add_endpoint)(void *, struct xhci_ep_ctx *);
+
+typedef void (*btf_trace_xhci_alloc_dev)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_free_dev)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_disable_slot)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_discover_or_reset_device)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_setup_device_slot)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_addr_dev)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_reset_dev)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_handle_cmd_set_deq)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_configure_endpoint)(void *, struct xhci_slot_ctx *);
+
+typedef void (*btf_trace_xhci_address_ctrl_ctx)(void *, struct xhci_input_control_ctx *);
+
+typedef void (*btf_trace_xhci_configure_endpoint_ctrl_ctx)(void *, struct xhci_input_control_ctx *);
+
+typedef void (*btf_trace_xhci_ring_alloc)(void *, struct xhci_ring *);
+
+typedef void (*btf_trace_xhci_ring_free)(void *, struct xhci_ring *);
+
+typedef void (*btf_trace_xhci_ring_expansion)(void *, struct xhci_ring *);
+
+typedef void (*btf_trace_xhci_inc_enq)(void *, struct xhci_ring *);
+
+typedef void (*btf_trace_xhci_inc_deq)(void *, struct xhci_ring *);
+
+typedef void (*btf_trace_xhci_handle_port_status)(void *, u32, u32);
+
+typedef void (*btf_trace_xhci_get_port_status)(void *, u32, u32);
+
+typedef void (*btf_trace_xhci_hub_status_data)(void *, u32, u32);
+
+typedef void (*btf_trace_xhci_ring_ep_doorbell)(void *, u32, u32);
+
+typedef void (*btf_trace_xhci_ring_host_doorbell)(void *, u32, u32);
+
+typedef void (*btf_trace_xhci_dbc_alloc_request)(void *, struct dbc_request *);
+
+typedef void (*btf_trace_xhci_dbc_free_request)(void *, struct dbc_request *);
+
+typedef void (*btf_trace_xhci_dbc_queue_request)(void *, struct dbc_request *);
+
+typedef void (*btf_trace_xhci_dbc_giveback_request)(void *, struct dbc_request *);
+
+struct usb_string_descriptor {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__le16 wData[1];
+};
+
+struct dbc_info_context {
+	__le64 string0;
+	__le64 manufacturer;
+	__le64 product;
+	__le64 serial;
+	__le32 length;
+	__le32 __reserved_0[7];
+};
+
+enum evtreturn {
+	EVT_ERR = 4294967295,
+	EVT_DONE = 0,
+	EVT_GSER = 1,
+	EVT_DISC = 2,
+};
+
+struct kfifo {
+	union {
+		struct __kfifo kfifo;
+		unsigned char *type;
+		const unsigned char *const_type;
+		char (*rectype)[0];
+		void *ptr;
+		const void *ptr_const;
+	};
+	unsigned char buf[0];
+};
+
+struct dbc_port {
+	struct tty_port port;
+	spinlock_t port_lock;
+	struct list_head read_pool;
+	struct list_head read_queue;
+	unsigned int n_read;
+	struct tasklet_struct push;
+	struct list_head write_pool;
+	struct kfifo write_fifo;
+	bool registered;
+};
+
+struct xhci_regset {
+	char name[32];
+	struct debugfs_regset32 regset;
+	size_t nregs;
+	struct list_head list;
+};
+
+struct xhci_file_map {
+	const char *name;
+	int (*show)(struct seq_file *, void *);
+};
+
+struct xhci_ep_priv {
+	char name[32];
+	struct dentry *root;
+	struct xhci_stream_info *stream_info;
+	struct xhci_ring *show_ring;
+	unsigned int stream_id;
+};
+
+struct xhci_slot_priv {
+	char name[32];
+	struct dentry *root;
+	struct xhci_ep_priv *eps[31];
+	struct xhci_virt_device *dev;
+};
+
+struct usb_debug_descriptor {
+	__u8 bLength;
+	__u8 bDescriptorType;
+	__u8 bDebugInEndpoint;
+	__u8 bDebugOutEndpoint;
+};
+
+struct ehci_dev {
+	u32 bus;
+	u32 slot;
+	u32 func;
+};
+
+typedef void (*set_debug_port_t)(int);
+
+struct xdbc_regs {
+	__le32 capability;
+	__le32 doorbell;
+	__le32 ersts;
+	__le32 __reserved_0;
+	__le64 erstba;
+	__le64 erdp;
+	__le32 control;
+	__le32 status;
+	__le32 portsc;
+	__le32 __reserved_1;
+	__le64 dccp;
+	__le32 devinfo1;
+	__le32 devinfo2;
+};
+
+struct xdbc_trb {
+	__le32 field[4];
+};
+
+struct xdbc_erst_entry {
+	__le64 seg_addr;
+	__le32 seg_size;
+	__le32 __reserved_0;
+};
+
+struct xdbc_info_context {
+	__le64 string0;
+	__le64 manufacturer;
+	__le64 product;
+	__le64 serial;
+	__le32 length;
+	__le32 __reserved_0[7];
+};
+
+struct xdbc_ep_context {
+	__le32 ep_info1;
+	__le32 ep_info2;
+	__le64 deq;
+	__le32 tx_info;
+	__le32 __reserved_0[11];
+};
+
+struct xdbc_context {
+	struct xdbc_info_context info;
+	struct xdbc_ep_context out;
+	struct xdbc_ep_context in;
+};
+
+struct xdbc_strings {
+	char string0[64];
+	char manufacturer[64];
+	char product[64];
+	char serial[64];
+};
+
+struct xdbc_segment {
+	struct xdbc_trb *trbs;
+	dma_addr_t dma;
+};
+
+struct xdbc_ring {
+	struct xdbc_segment *segment;
+	struct xdbc_trb *enqueue;
+	struct xdbc_trb *dequeue;
+	u32 cycle_state;
+};
+
+struct xdbc_state {
+	u16 vendor;
+	u16 device;
+	u32 bus;
+	u32 dev;
+	u32 func;
+	void *xhci_base;
+	u64 xhci_start;
+	size_t xhci_length;
+	int port_number;
+	struct xdbc_regs *xdbc_reg;
+	dma_addr_t table_dma;
+	void *table_base;
+	dma_addr_t erst_dma;
+	size_t erst_size;
+	void *erst_base;
+	struct xdbc_ring evt_ring;
+	struct xdbc_segment evt_seg;
+	dma_addr_t dbcc_dma;
+	size_t dbcc_size;
+	void *dbcc_base;
+	dma_addr_t string_dma;
+	size_t string_size;
+	void *string_base;
+	struct xdbc_ring out_ring;
+	struct xdbc_segment out_seg;
+	void *out_buf;
+	dma_addr_t out_dma;
+	struct xdbc_ring in_ring;
+	struct xdbc_segment in_seg;
+	void *in_buf;
+	dma_addr_t in_dma;
+	u32 flags;
+	raw_spinlock_t lock;
+};
+
+struct usb_role_switch {
+	struct device dev;
+	struct mutex lock;
+	struct module *module;
+	enum usb_role role;
+	bool registered;
+	struct device *usb2_port;
+	struct device *usb3_port;
+	struct device *udc;
+	usb_role_switch_set_t set;
+	usb_role_switch_get_t get;
+	bool allow_userspace_control;
+};
+
 struct serio_device_id {
 	__u8 type;
 	__u8 extra;
@@ -79419,16 +108352,12 @@ struct input_dev_poller {
 	struct delayed_work work;
 };
 
-struct input_led {
-	struct led_classdev cdev;
-	struct input_handle *handle;
-	unsigned int code;
-};
-
-struct input_leds {
-	struct input_handle handle;
-	unsigned int num_leds;
-	struct input_led leds[0];
+struct touchscreen_properties {
+	unsigned int max_x;
+	unsigned int max_y;
+	bool invert_x;
+	bool invert_y;
+	bool swap_x_y;
 };
 
 struct mousedev_hw_data {
@@ -79501,6 +108430,42 @@ enum {
 	FRACTION_DENOM = 128,
 };
 
+struct input_mask {
+	__u32 type;
+	__u32 codes_size;
+	__u64 codes_ptr;
+};
+
+struct evdev_client;
+
+struct evdev {
+	int open;
+	struct input_handle handle;
+	struct evdev_client *grab;
+	struct list_head client_list;
+	spinlock_t client_lock;
+	struct mutex mutex;
+	struct device dev;
+	struct cdev cdev;
+	bool exist;
+};
+
+struct evdev_client {
+	unsigned int head;
+	unsigned int tail;
+	unsigned int packet_head;
+	spinlock_t buffer_lock;
+	wait_queue_head_t wait;
+	struct fasync_struct *fasync;
+	struct evdev *evdev;
+	struct list_head node;
+	enum input_clock_type clk_type;
+	bool revoked;
+	long unsigned int *evmasks[32];
+	unsigned int bufsize;
+	struct input_event buffer[0];
+};
+
 struct atkbd {
 	struct ps2dev ps2dev;
 	struct input_dev *dev;
@@ -79532,84 +108497,136 @@ struct atkbd {
 	int num_function_row_keys;
 };
 
-struct touchscreen_properties {
-	unsigned int max_x;
-	unsigned int max_y;
-	bool invert_x;
-	bool invert_y;
-	bool swap_x_y;
+enum elants_chip_id {
+	EKTH3500 = 0,
+	EKTF3624 = 1,
 };
 
-struct xenkbd_motion {
-	uint8_t type;
-	int32_t rel_x;
-	int32_t rel_y;
-	int32_t rel_z;
+enum elants_state {
+	ELAN_STATE_NORMAL = 0,
+	ELAN_WAIT_QUEUE_HEADER = 1,
+	ELAN_WAIT_RECALIBRATION = 2,
 };
 
-struct xenkbd_key {
-	uint8_t type;
-	uint8_t pressed;
-	uint32_t keycode;
+enum elants_iap_mode {
+	ELAN_IAP_OPERATIONAL = 0,
+	ELAN_IAP_RECOVERY = 1,
 };
 
-struct xenkbd_position {
-	uint8_t type;
-	int32_t abs_x;
-	int32_t abs_y;
-	int32_t rel_z;
+struct elants_data {
+	struct i2c_client *client;
+	struct input_dev *input;
+	struct regulator *vcc33;
+	struct regulator *vccio;
+	struct gpio_desc *reset_gpio;
+	u16 fw_version;
+	u8 test_version;
+	u8 solution_version;
+	u8 bc_version;
+	u8 iap_version;
+	u16 hw_version;
+	u8 major_res;
+	unsigned int x_res;
+	unsigned int y_res;
+	unsigned int x_max;
+	unsigned int y_max;
+	unsigned int phy_x;
+	unsigned int phy_y;
+	struct touchscreen_properties prop;
+	enum elants_state state;
+	enum elants_chip_id chip_id;
+	enum elants_iap_mode iap_mode;
+	struct mutex sysfs_mutex;
+	u8 cmd_resp[4];
+	struct completion cmd_done;
+	bool wake_irq_enabled;
+	bool keep_power_in_suspend;
+	long: 64;
+	u8 buf[169];
+	long: 64;
+	long: 64;
 };
 
-struct xenkbd_mtouch {
-	uint8_t type;
-	uint8_t event_type;
-	uint8_t contact_id;
-	uint8_t reserved[5];
+struct elants_version_attribute {
+	struct device_attribute dattr;
+	size_t field_offset;
+	size_t field_size;
+};
+
+struct uinput_ff_upload {
+	__u32 request_id;
+	__s32 retval;
+	struct ff_effect effect;
+	struct ff_effect old;
+};
+
+struct uinput_ff_erase {
+	__u32 request_id;
+	__s32 retval;
+	__u32 effect_id;
+};
+
+struct uinput_setup {
+	struct input_id id;
+	char name[80];
+	__u32 ff_effects_max;
+};
+
+struct uinput_abs_setup {
+	__u16 code;
+	struct input_absinfo absinfo;
+};
+
+struct uinput_user_dev {
+	char name[80];
+	struct input_id id;
+	__u32 ff_effects_max;
+	__s32 absmax[64];
+	__s32 absmin[64];
+	__s32 absfuzz[64];
+	__s32 absflat[64];
+};
+
+enum uinput_state {
+	UIST_NEW_DEVICE = 0,
+	UIST_SETUP_COMPLETE = 1,
+	UIST_CREATED = 2,
+};
+
+struct uinput_request {
+	unsigned int id;
+	unsigned int code;
+	int retval;
+	struct completion done;
 	union {
+		unsigned int effect_id;
 		struct {
-			int32_t abs_x;
-			int32_t abs_y;
-		} pos;
-		struct {
-			uint32_t major;
-			uint32_t minor;
-		} shape;
-		int16_t orientation;
+			struct ff_effect *effect;
+			struct ff_effect *old;
+		} upload;
 	} u;
 };
 
-union xenkbd_in_event {
-	uint8_t type;
-	struct xenkbd_motion motion;
-	struct xenkbd_key key;
-	struct xenkbd_position pos;
-	struct xenkbd_mtouch mtouch;
-	char pad[40];
+struct uinput_device {
+	struct input_dev *dev;
+	struct mutex mutex;
+	enum uinput_state state;
+	wait_queue_head_t waitq;
+	unsigned char ready;
+	unsigned char head;
+	unsigned char tail;
+	struct input_event buff[16];
+	unsigned int ff_effects_max;
+	struct uinput_request *requests[16];
+	wait_queue_head_t requests_waitq;
+	spinlock_t requests_lock;
 };
 
-struct xenkbd_page {
-	uint32_t in_cons;
-	uint32_t in_prod;
-	uint32_t out_cons;
-	uint32_t out_prod;
-};
-
-struct xenkbd_info {
-	struct input_dev *kbd;
-	struct input_dev *ptr;
-	struct input_dev *mtouch;
-	struct xenkbd_page *page;
-	int gref;
-	int irq;
-	struct xenbus_device *xbdev;
-	char phys[32];
-	int mtouch_cur_contact_id;
-};
-
-enum {
-	KPARAM_X = 0,
-	KPARAM_Y = 1,
-	KPARAM_CNT___2 = 2,
+struct uinput_ff_upload_compat {
+	__u32 request_id;
+	__s32 retval;
+	struct ff_effect_compat effect;
+	struct ff_effect_compat old;
 };
 
 struct trace_event_raw_rtc_time_alarm_class {
@@ -79715,6 +108732,13 @@ enum nvmem_type {
 	NVMEM_TYPE_EEPROM = 1,
 	NVMEM_TYPE_OTP = 2,
 	NVMEM_TYPE_BATTERY_BACKED = 3,
+	NVMEM_TYPE_FRAM = 4,
+};
+
+struct nvmem_keepout {
+	unsigned int start;
+	unsigned int end;
+	unsigned char value;
 };
 
 struct nvmem_config {
@@ -79722,12 +108746,15 @@ struct nvmem_config {
 	const char *name;
 	int id;
 	struct module *owner;
-	struct gpio_desc *wp_gpio;
 	const struct nvmem_cell_info *cells;
 	int ncells;
+	const struct nvmem_keepout *keepout;
+	unsigned int nkeepout;
 	enum nvmem_type type;
 	bool read_only;
 	bool root_only;
+	bool ignore_wp;
+	struct device_node *of_node;
 	bool no_of_node;
 	nvmem_reg_read_t reg_read;
 	nvmem_reg_write_t reg_write;
@@ -79739,8 +108766,6 @@ struct nvmem_config {
 	struct device *base_dev;
 };
 
-struct nvmem_device;
-
 struct cmos_rtc_board_info {
 	void (*wake_on)(struct device *);
 	void (*wake_off)(struct device *);
@@ -79767,6 +108792,22 @@ struct cmos_rtc {
 	struct rtc_wkalrm saved_wkalrm;
 };
 
+struct cmos_read_alarm_callback_param {
+	struct cmos_rtc *cmos;
+	struct rtc_time *time;
+	unsigned char rtc_control;
+};
+
+struct cmos_set_alarm_callback_param {
+	struct cmos_rtc *cmos;
+	unsigned char mon;
+	unsigned char mday;
+	unsigned char hrs;
+	unsigned char min;
+	unsigned char sec;
+	struct rtc_wkalrm *t;
+};
+
 struct i2c_devinfo {
 	struct list_head list;
 	int busnum;
@@ -79850,12 +108891,6 @@ typedef void (*btf_trace_i2c_reply)(void *, const struct i2c_adapter *, const st
 
 typedef void (*btf_trace_i2c_result)(void *, const struct i2c_adapter *, int, int);
 
-struct i2c_dummy_devres {
-	struct i2c_client *client;
-};
-
-struct class_compat;
-
 struct i2c_cmd_arg {
 	unsigned int cmd;
 	void *arg;
@@ -79955,6 +108990,44 @@ struct i2c_acpi_lookup {
 	u32 force_speed;
 };
 
+struct i2c_smbus_ioctl_data {
+	__u8 read_write;
+	__u8 command;
+	__u32 size;
+	union i2c_smbus_data *data;
+};
+
+struct i2c_rdwr_ioctl_data {
+	struct i2c_msg *msgs;
+	__u32 nmsgs;
+};
+
+struct i2c_dev {
+	struct list_head list;
+	struct i2c_adapter *adap;
+	struct device dev;
+	struct cdev cdev;
+};
+
+struct i2c_smbus_ioctl_data32 {
+	u8 read_write;
+	u8 command;
+	u32 size;
+	compat_caddr_t data;
+};
+
+struct i2c_msg32 {
+	u16 addr;
+	u16 flags;
+	u16 len;
+	compat_caddr_t buf;
+};
+
+struct i2c_rdwr_ioctl_data32 {
+	compat_caddr_t msgs;
+	u32 nmsgs;
+};
+
 struct dw_i2c_dev {
 	struct device *dev;
 	struct regmap *map;
@@ -79998,8 +109071,8 @@ struct dw_i2c_dev {
 	u16 fp_lcnt;
 	u16 hs_hcnt;
 	u16 hs_lcnt;
-	int (*acquire_lock)();
-	void (*release_lock)();
+	int (*acquire_lock)(void);
+	void (*release_lock)(void);
 	bool shared_with_punit;
 	void (*disable)(struct dw_i2c_dev *);
 	void (*disable_int)(struct dw_i2c_dev *);
@@ -80010,183 +109083,306 @@ struct dw_i2c_dev {
 	bool suspended;
 };
 
-struct dw_i2c_platform_data {
-	unsigned int i2c_scl_freq;
+struct pps_ktime {
+	__s64 sec;
+	__s32 nsec;
+	__u32 flags;
 };
 
-enum power_supply_property {
-	POWER_SUPPLY_PROP_STATUS = 0,
-	POWER_SUPPLY_PROP_CHARGE_TYPE = 1,
-	POWER_SUPPLY_PROP_HEALTH = 2,
-	POWER_SUPPLY_PROP_PRESENT = 3,
-	POWER_SUPPLY_PROP_ONLINE = 4,
-	POWER_SUPPLY_PROP_AUTHENTIC = 5,
-	POWER_SUPPLY_PROP_TECHNOLOGY = 6,
-	POWER_SUPPLY_PROP_CYCLE_COUNT = 7,
-	POWER_SUPPLY_PROP_VOLTAGE_MAX = 8,
-	POWER_SUPPLY_PROP_VOLTAGE_MIN = 9,
-	POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN = 10,
-	POWER_SUPPLY_PROP_VOLTAGE_MIN_DESIGN = 11,
-	POWER_SUPPLY_PROP_VOLTAGE_NOW = 12,
-	POWER_SUPPLY_PROP_VOLTAGE_AVG = 13,
-	POWER_SUPPLY_PROP_VOLTAGE_OCV = 14,
-	POWER_SUPPLY_PROP_VOLTAGE_BOOT = 15,
-	POWER_SUPPLY_PROP_CURRENT_MAX = 16,
-	POWER_SUPPLY_PROP_CURRENT_NOW = 17,
-	POWER_SUPPLY_PROP_CURRENT_AVG = 18,
-	POWER_SUPPLY_PROP_CURRENT_BOOT = 19,
-	POWER_SUPPLY_PROP_POWER_NOW = 20,
-	POWER_SUPPLY_PROP_POWER_AVG = 21,
-	POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN = 22,
-	POWER_SUPPLY_PROP_CHARGE_EMPTY_DESIGN = 23,
-	POWER_SUPPLY_PROP_CHARGE_FULL = 24,
-	POWER_SUPPLY_PROP_CHARGE_EMPTY = 25,
-	POWER_SUPPLY_PROP_CHARGE_NOW = 26,
-	POWER_SUPPLY_PROP_CHARGE_AVG = 27,
-	POWER_SUPPLY_PROP_CHARGE_COUNTER = 28,
-	POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT = 29,
-	POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX = 30,
-	POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE = 31,
-	POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE_MAX = 32,
-	POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT = 33,
-	POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT_MAX = 34,
-	POWER_SUPPLY_PROP_CHARGE_CONTROL_START_THRESHOLD = 35,
-	POWER_SUPPLY_PROP_CHARGE_CONTROL_END_THRESHOLD = 36,
-	POWER_SUPPLY_PROP_INPUT_CURRENT_LIMIT = 37,
-	POWER_SUPPLY_PROP_INPUT_VOLTAGE_LIMIT = 38,
-	POWER_SUPPLY_PROP_INPUT_POWER_LIMIT = 39,
-	POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN = 40,
-	POWER_SUPPLY_PROP_ENERGY_EMPTY_DESIGN = 41,
-	POWER_SUPPLY_PROP_ENERGY_FULL = 42,
-	POWER_SUPPLY_PROP_ENERGY_EMPTY = 43,
-	POWER_SUPPLY_PROP_ENERGY_NOW = 44,
-	POWER_SUPPLY_PROP_ENERGY_AVG = 45,
-	POWER_SUPPLY_PROP_CAPACITY = 46,
-	POWER_SUPPLY_PROP_CAPACITY_ALERT_MIN = 47,
-	POWER_SUPPLY_PROP_CAPACITY_ALERT_MAX = 48,
-	POWER_SUPPLY_PROP_CAPACITY_ERROR_MARGIN = 49,
-	POWER_SUPPLY_PROP_CAPACITY_LEVEL = 50,
-	POWER_SUPPLY_PROP_TEMP = 51,
-	POWER_SUPPLY_PROP_TEMP_MAX = 52,
-	POWER_SUPPLY_PROP_TEMP_MIN = 53,
-	POWER_SUPPLY_PROP_TEMP_ALERT_MIN = 54,
-	POWER_SUPPLY_PROP_TEMP_ALERT_MAX = 55,
-	POWER_SUPPLY_PROP_TEMP_AMBIENT = 56,
-	POWER_SUPPLY_PROP_TEMP_AMBIENT_ALERT_MIN = 57,
-	POWER_SUPPLY_PROP_TEMP_AMBIENT_ALERT_MAX = 58,
-	POWER_SUPPLY_PROP_TIME_TO_EMPTY_NOW = 59,
-	POWER_SUPPLY_PROP_TIME_TO_EMPTY_AVG = 60,
-	POWER_SUPPLY_PROP_TIME_TO_FULL_NOW = 61,
-	POWER_SUPPLY_PROP_TIME_TO_FULL_AVG = 62,
-	POWER_SUPPLY_PROP_TYPE = 63,
-	POWER_SUPPLY_PROP_USB_TYPE = 64,
-	POWER_SUPPLY_PROP_SCOPE = 65,
-	POWER_SUPPLY_PROP_PRECHARGE_CURRENT = 66,
-	POWER_SUPPLY_PROP_CHARGE_TERM_CURRENT = 67,
-	POWER_SUPPLY_PROP_CALIBRATE = 68,
-	POWER_SUPPLY_PROP_MANUFACTURE_YEAR = 69,
-	POWER_SUPPLY_PROP_MANUFACTURE_MONTH = 70,
-	POWER_SUPPLY_PROP_MANUFACTURE_DAY = 71,
-	POWER_SUPPLY_PROP_MODEL_NAME = 72,
-	POWER_SUPPLY_PROP_MANUFACTURER = 73,
-	POWER_SUPPLY_PROP_SERIAL_NUMBER = 74,
+struct pps_ktime_compat {
+	__s64 sec;
+	__s32 nsec;
+	__u32 flags;
 };
 
-enum power_supply_type {
-	POWER_SUPPLY_TYPE_UNKNOWN = 0,
-	POWER_SUPPLY_TYPE_BATTERY = 1,
-	POWER_SUPPLY_TYPE_UPS = 2,
-	POWER_SUPPLY_TYPE_MAINS = 3,
-	POWER_SUPPLY_TYPE_USB = 4,
-	POWER_SUPPLY_TYPE_USB_DCP = 5,
-	POWER_SUPPLY_TYPE_USB_CDP = 6,
-	POWER_SUPPLY_TYPE_USB_ACA = 7,
-	POWER_SUPPLY_TYPE_USB_TYPE_C = 8,
-	POWER_SUPPLY_TYPE_USB_PD = 9,
-	POWER_SUPPLY_TYPE_USB_PD_DRP = 10,
-	POWER_SUPPLY_TYPE_APPLE_BRICK_ID = 11,
-	POWER_SUPPLY_TYPE_WIRELESS = 12,
+struct pps_kinfo {
+	__u32 assert_sequence;
+	__u32 clear_sequence;
+	struct pps_ktime assert_tu;
+	struct pps_ktime clear_tu;
+	int current_mode;
 };
 
-enum power_supply_usb_type {
-	POWER_SUPPLY_USB_TYPE_UNKNOWN = 0,
-	POWER_SUPPLY_USB_TYPE_SDP = 1,
-	POWER_SUPPLY_USB_TYPE_DCP = 2,
-	POWER_SUPPLY_USB_TYPE_CDP = 3,
-	POWER_SUPPLY_USB_TYPE_ACA = 4,
-	POWER_SUPPLY_USB_TYPE_C = 5,
-	POWER_SUPPLY_USB_TYPE_PD = 6,
-	POWER_SUPPLY_USB_TYPE_PD_DRP = 7,
-	POWER_SUPPLY_USB_TYPE_PD_PPS = 8,
-	POWER_SUPPLY_USB_TYPE_APPLE_BRICK_ID = 9,
+struct pps_kinfo_compat {
+	__u32 assert_sequence;
+	__u32 clear_sequence;
+	struct pps_ktime_compat assert_tu;
+	struct pps_ktime_compat clear_tu;
+	int current_mode;
+} __attribute__((packed));
+
+struct pps_kparams {
+	int api_version;
+	int mode;
+	struct pps_ktime assert_off_tu;
+	struct pps_ktime clear_off_tu;
+};
+
+struct pps_fdata {
+	struct pps_kinfo info;
+	struct pps_ktime timeout;
+};
+
+struct pps_fdata_compat {
+	struct pps_kinfo_compat info;
+	struct pps_ktime_compat timeout;
+} __attribute__((packed));
+
+struct pps_bind_args {
+	int tsformat;
+	int edge;
+	int consumer;
+};
+
+struct pps_device;
+
+struct pps_source_info {
+	char name[32];
+	char path[32];
+	int mode;
+	void (*echo)(struct pps_device *, int, void *);
+	struct module *owner;
+	struct device *dev;
+};
+
+struct pps_device {
+	struct pps_source_info info;
+	struct pps_kparams params;
+	__u32 assert_sequence;
+	__u32 clear_sequence;
+	struct pps_ktime assert_tu;
+	struct pps_ktime clear_tu;
+	int current_mode;
+	unsigned int last_ev;
+	wait_queue_head_t queue;
+	unsigned int id;
+	const void *lookup_cookie;
+	struct cdev cdev;
+	struct device *dev;
+	struct fasync_struct *async_queue;
+	spinlock_t lock;
+};
+
+struct pps_event_time {
+	struct timespec64 ts_real;
+};
+
+struct ptp_clock_time {
+	__s64 sec;
+	__u32 nsec;
+	__u32 reserved;
+};
+
+struct ptp_extts_request {
+	unsigned int index;
+	unsigned int flags;
+	unsigned int rsv[2];
+};
+
+struct ptp_perout_request {
+	union {
+		struct ptp_clock_time start;
+		struct ptp_clock_time phase;
+	};
+	struct ptp_clock_time period;
+	unsigned int index;
+	unsigned int flags;
+	union {
+		struct ptp_clock_time on;
+		unsigned int rsv[4];
+	};
+};
+
+enum ptp_pin_function {
+	PTP_PF_NONE = 0,
+	PTP_PF_EXTTS = 1,
+	PTP_PF_PEROUT = 2,
+	PTP_PF_PHYSYNC = 3,
+};
+
+struct ptp_pin_desc {
+	char name[64];
+	unsigned int index;
+	unsigned int func;
+	unsigned int chan;
+	unsigned int rsv[5];
+};
+
+struct ptp_extts_event {
+	struct ptp_clock_time t;
+	unsigned int index;
+	unsigned int flags;
+	unsigned int rsv[2];
+};
+
+struct ptp_clock_request {
+	enum {
+		PTP_CLK_REQ_EXTTS = 0,
+		PTP_CLK_REQ_PEROUT = 1,
+		PTP_CLK_REQ_PPS = 2,
+	} type;
+	union {
+		struct ptp_extts_request extts;
+		struct ptp_perout_request perout;
+	};
+};
+
+struct ptp_clock_info {
+	struct module *owner;
+	char name[32];
+	s32 max_adj;
+	int n_alarm;
+	int n_ext_ts;
+	int n_per_out;
+	int n_pins;
+	int pps;
+	struct ptp_pin_desc *pin_config;
+	int (*adjfine)(struct ptp_clock_info *, long int);
+	int (*adjfreq)(struct ptp_clock_info *, s32);
+	int (*adjphase)(struct ptp_clock_info *, s32);
+	int (*adjtime)(struct ptp_clock_info *, s64);
+	int (*gettime64)(struct ptp_clock_info *, struct timespec64 *);
+	int (*gettimex64)(struct ptp_clock_info *, struct timespec64 *, struct ptp_system_timestamp *);
+	int (*getcrosststamp)(struct ptp_clock_info *, struct system_device_crosststamp *);
+	int (*settime64)(struct ptp_clock_info *, const struct timespec64 *);
+	int (*enable)(struct ptp_clock_info *, struct ptp_clock_request *, int);
+	int (*verify)(struct ptp_clock_info *, unsigned int, enum ptp_pin_function, unsigned int);
+	long int (*do_aux_work)(struct ptp_clock_info *);
+};
+
+enum ptp_clock_events {
+	PTP_CLOCK_ALARM = 0,
+	PTP_CLOCK_EXTTS = 1,
+	PTP_CLOCK_PPS = 2,
+	PTP_CLOCK_PPSUSR = 3,
+};
+
+struct ptp_clock_event {
+	int type;
+	int index;
+	union {
+		u64 timestamp;
+		struct pps_event_time pps_times;
+	};
+};
+
+struct timestamp_event_queue {
+	struct ptp_extts_event buf[128];
+	int head;
+	int tail;
+	spinlock_t lock;
+};
+
+struct ptp_clock {
+	struct posix_clock clock;
+	struct device dev;
+	struct ptp_clock_info *info;
+	dev_t devid;
+	int index;
+	struct pps_device *pps_source;
+	long int dialed_frequency;
+	struct timestamp_event_queue tsevq;
+	struct mutex tsevq_mux;
+	struct mutex pincfg_mux;
+	wait_queue_head_t tsev_wq;
+	int defunct;
+	struct device_attribute *pin_dev_attr;
+	struct attribute **pin_attr;
+	struct attribute_group pin_attr_group;
+	const struct attribute_group *pin_attr_groups[2];
+	struct kthread_worker *kworker;
+	struct kthread_delayed_work aux_work;
+	unsigned int max_vclocks;
+	unsigned int n_vclocks;
+	int *vclock_index;
+	struct mutex n_vclocks_mux;
+	bool is_virtual_clock;
+};
+
+struct ptp_vclock {
+	struct ptp_clock *pclock;
+	struct ptp_clock_info info;
+	struct ptp_clock *clock;
+	struct cyclecounter cc;
+	struct timecounter tc;
+	spinlock_t lock;
+};
+
+struct ptp_clock_caps {
+	int max_adj;
+	int n_alarm;
+	int n_ext_ts;
+	int n_per_out;
+	int pps;
+	int n_pins;
+	int cross_timestamping;
+	int adjust_phase;
+	int rsv[12];
+};
+
+struct ptp_sys_offset {
+	unsigned int n_samples;
+	unsigned int rsv[3];
+	struct ptp_clock_time ts[51];
+};
+
+struct ptp_sys_offset_extended {
+	unsigned int n_samples;
+	unsigned int rsv[3];
+	struct ptp_clock_time ts[75];
+};
+
+struct ptp_sys_offset_precise {
+	struct ptp_clock_time device;
+	struct ptp_clock_time sys_realtime;
+	struct ptp_clock_time sys_monoraw;
+	unsigned int rsv[4];
+};
+
+struct mt6397_chip {
+	struct device *dev;
+	struct regmap *regmap;
+	struct notifier_block pm_nb;
+	int irq;
+	struct irq_domain *irq_domain;
+	struct mutex irqlock;
+	u16 wake_mask[2];
+	u16 irq_masks_cur[2];
+	u16 irq_masks_cache[2];
+	u16 int_con[2];
+	u16 int_status[2];
+	u16 chip_id;
+	void *irq_data;
+};
+
+struct mt6323_pwrc {
+	struct device *dev;
+	struct regmap *regmap;
+	u32 base;
+};
+
+struct tps65086 {
+	struct device *dev;
+	struct regmap *regmap;
+	int irq;
+	struct regmap_irq_chip_data *irq_data;
+};
+
+struct tps65086_restart {
+	struct notifier_block handler;
+	struct device *dev;
+};
+
+enum {
+	POWER_SUPPLY_SCOPE_UNKNOWN = 0,
+	POWER_SUPPLY_SCOPE_SYSTEM = 1,
+	POWER_SUPPLY_SCOPE_DEVICE = 2,
 };
 
 enum power_supply_notifier_events {
 	PSY_EVENT_PROP_CHANGED = 0,
 };
 
-union power_supply_propval {
-	int intval;
-	const char *strval;
-};
-
-struct power_supply_config {
-	struct device_node *of_node;
-	struct fwnode_handle *fwnode;
-	void *drv_data;
-	const struct attribute_group **attr_grp;
-	char **supplied_to;
-	size_t num_supplicants;
-};
-
-struct power_supply;
-
-struct power_supply_desc {
-	const char *name;
-	enum power_supply_type type;
-	const enum power_supply_usb_type *usb_types;
-	size_t num_usb_types;
-	const enum power_supply_property *properties;
-	size_t num_properties;
-	int (*get_property)(struct power_supply *, enum power_supply_property, union power_supply_propval *);
-	int (*set_property)(struct power_supply *, enum power_supply_property, const union power_supply_propval *);
-	int (*property_is_writeable)(struct power_supply *, enum power_supply_property);
-	void (*external_power_changed)(struct power_supply *);
-	void (*set_charged)(struct power_supply *);
-	bool no_thermal;
-	int use_for_apm;
-};
-
-struct power_supply {
-	const struct power_supply_desc *desc;
-	char **supplied_to;
-	size_t num_supplicants;
-	char **supplied_from;
-	size_t num_supplies;
-	struct device_node *of_node;
-	void *drv_data;
-	struct device dev;
-	struct work_struct changed_work;
-	struct delayed_work deferred_register_work;
-	spinlock_t changed_lock;
-	bool changed;
-	bool initialized;
-	bool removing;
-	atomic_t use_cnt;
-	struct thermal_zone_device *tzd;
-	struct thermal_cooling_device *tcd;
-	struct led_trigger *charging_full_trig;
-	char *charging_full_trig_name;
-	struct led_trigger *charging_trig;
-	char *charging_trig_name;
-	struct led_trigger *full_trig;
-	char *full_trig_name;
-	struct led_trigger *online_trig;
-	char *online_trig_name;
-	struct led_trigger *charging_blink_full_solid_trig;
-	char *charging_blink_full_solid_trig_name;
-};
-
 struct power_supply_battery_ocv_table {
 	int ocv;
 	int capacity;
@@ -80198,6 +109394,7 @@ struct power_supply_resistance_temp_table {
 };
 
 struct power_supply_battery_info {
+	unsigned int technology;
 	int energy_full_design_uwh;
 	int charge_full_design_uah;
 	int voltage_min_design_uv;
@@ -80229,12 +109426,10 @@ struct psy_am_i_supplied_data {
 	unsigned int count;
 };
 
-enum {
-	POWER_SUPPLY_STATUS_UNKNOWN = 0,
-	POWER_SUPPLY_STATUS_CHARGING = 1,
-	POWER_SUPPLY_STATUS_DISCHARGING = 2,
-	POWER_SUPPLY_STATUS_NOT_CHARGING = 3,
-	POWER_SUPPLY_STATUS_FULL = 4,
+struct psy_get_supplier_prop_data {
+	struct power_supply *psy;
+	enum power_supply_property psp;
+	union power_supply_propval *val;
 };
 
 enum {
@@ -80265,31 +109460,6 @@ enum {
 	POWER_SUPPLY_HEALTH_HOT = 13,
 };
 
-enum {
-	POWER_SUPPLY_TECHNOLOGY_UNKNOWN = 0,
-	POWER_SUPPLY_TECHNOLOGY_NiMH = 1,
-	POWER_SUPPLY_TECHNOLOGY_LION = 2,
-	POWER_SUPPLY_TECHNOLOGY_LIPO = 3,
-	POWER_SUPPLY_TECHNOLOGY_LiFe = 4,
-	POWER_SUPPLY_TECHNOLOGY_NiCd = 5,
-	POWER_SUPPLY_TECHNOLOGY_LiMn = 6,
-};
-
-enum {
-	POWER_SUPPLY_CAPACITY_LEVEL_UNKNOWN = 0,
-	POWER_SUPPLY_CAPACITY_LEVEL_CRITICAL = 1,
-	POWER_SUPPLY_CAPACITY_LEVEL_LOW = 2,
-	POWER_SUPPLY_CAPACITY_LEVEL_NORMAL = 3,
-	POWER_SUPPLY_CAPACITY_LEVEL_HIGH = 4,
-	POWER_SUPPLY_CAPACITY_LEVEL_FULL = 5,
-};
-
-enum {
-	POWER_SUPPLY_SCOPE_UNKNOWN = 0,
-	POWER_SUPPLY_SCOPE_SYSTEM = 1,
-	POWER_SUPPLY_SCOPE_DEVICE = 2,
-};
-
 struct power_supply_attr {
 	const char *prop_name;
 	char attr_name[31];
@@ -80411,6 +109581,12 @@ struct hwmon_type_attr_list {
 	size_t n_attrs;
 };
 
+enum cm_batt_temp {
+	CM_BATT_OK = 0,
+	CM_BATT_OVERHEAT = 1,
+	CM_BATT_COLD = 2,
+};
+
 enum hwmon_chip_attributes {
 	hwmon_chip_temp_reset_history = 0,
 	hwmon_chip_in_reset_history = 1,
@@ -80597,9 +109773,8 @@ struct trace_event_raw_thermal_power_devfreq_get_power {
 	struct trace_entry ent;
 	u32 __data_loc_type;
 	long unsigned int freq;
-	u32 load;
-	u32 dynamic_power;
-	u32 static_power;
+	u32 busy_time;
+	u32 total_time;
 	u32 power;
 	char __data[0];
 };
@@ -80639,7 +109814,7 @@ typedef void (*btf_trace_cdev_update)(void *, struct thermal_cooling_device *, l
 
 typedef void (*btf_trace_thermal_zone_trip)(void *, struct thermal_zone_device *, int, enum thermal_trip_type);
 
-typedef void (*btf_trace_thermal_power_devfreq_get_power)(void *, struct thermal_cooling_device *, struct devfreq_dev_status *, long unsigned int, u32, u32, u32);
+typedef void (*btf_trace_thermal_power_devfreq_get_power)(void *, struct thermal_cooling_device *, struct devfreq_dev_status *, long unsigned int, u32);
 
 typedef void (*btf_trace_thermal_power_devfreq_limit)(void *, struct thermal_cooling_device *, long unsigned int, long unsigned int, u32);
 
@@ -80672,6 +109847,87 @@ struct cooling_dev_stats {
 	unsigned int *trans_table;
 };
 
+struct genl_dumpit_info {
+	const struct genl_family *family;
+	struct genl_ops op;
+	struct nlattr **attrs;
+};
+
+enum thermal_genl_attr {
+	THERMAL_GENL_ATTR_UNSPEC = 0,
+	THERMAL_GENL_ATTR_TZ = 1,
+	THERMAL_GENL_ATTR_TZ_ID = 2,
+	THERMAL_GENL_ATTR_TZ_TEMP = 3,
+	THERMAL_GENL_ATTR_TZ_TRIP = 4,
+	THERMAL_GENL_ATTR_TZ_TRIP_ID = 5,
+	THERMAL_GENL_ATTR_TZ_TRIP_TYPE = 6,
+	THERMAL_GENL_ATTR_TZ_TRIP_TEMP = 7,
+	THERMAL_GENL_ATTR_TZ_TRIP_HYST = 8,
+	THERMAL_GENL_ATTR_TZ_MODE = 9,
+	THERMAL_GENL_ATTR_TZ_NAME = 10,
+	THERMAL_GENL_ATTR_TZ_CDEV_WEIGHT = 11,
+	THERMAL_GENL_ATTR_TZ_GOV = 12,
+	THERMAL_GENL_ATTR_TZ_GOV_NAME = 13,
+	THERMAL_GENL_ATTR_CDEV = 14,
+	THERMAL_GENL_ATTR_CDEV_ID = 15,
+	THERMAL_GENL_ATTR_CDEV_CUR_STATE = 16,
+	THERMAL_GENL_ATTR_CDEV_MAX_STATE = 17,
+	THERMAL_GENL_ATTR_CDEV_NAME = 18,
+	THERMAL_GENL_ATTR_GOV_NAME = 19,
+	__THERMAL_GENL_ATTR_MAX = 20,
+};
+
+enum thermal_genl_sampling {
+	THERMAL_GENL_SAMPLING_TEMP = 0,
+	__THERMAL_GENL_SAMPLING_MAX = 1,
+};
+
+enum thermal_genl_event {
+	THERMAL_GENL_EVENT_UNSPEC = 0,
+	THERMAL_GENL_EVENT_TZ_CREATE = 1,
+	THERMAL_GENL_EVENT_TZ_DELETE = 2,
+	THERMAL_GENL_EVENT_TZ_DISABLE = 3,
+	THERMAL_GENL_EVENT_TZ_ENABLE = 4,
+	THERMAL_GENL_EVENT_TZ_TRIP_UP = 5,
+	THERMAL_GENL_EVENT_TZ_TRIP_DOWN = 6,
+	THERMAL_GENL_EVENT_TZ_TRIP_CHANGE = 7,
+	THERMAL_GENL_EVENT_TZ_TRIP_ADD = 8,
+	THERMAL_GENL_EVENT_TZ_TRIP_DELETE = 9,
+	THERMAL_GENL_EVENT_CDEV_ADD = 10,
+	THERMAL_GENL_EVENT_CDEV_DELETE = 11,
+	THERMAL_GENL_EVENT_CDEV_STATE_UPDATE = 12,
+	THERMAL_GENL_EVENT_TZ_GOV_CHANGE = 13,
+	__THERMAL_GENL_EVENT_MAX = 14,
+};
+
+enum thermal_genl_cmd {
+	THERMAL_GENL_CMD_UNSPEC = 0,
+	THERMAL_GENL_CMD_TZ_GET_ID = 1,
+	THERMAL_GENL_CMD_TZ_GET_TRIP = 2,
+	THERMAL_GENL_CMD_TZ_GET_TEMP = 3,
+	THERMAL_GENL_CMD_TZ_GET_GOV = 4,
+	THERMAL_GENL_CMD_TZ_GET_MODE = 5,
+	THERMAL_GENL_CMD_CDEV_GET = 6,
+	__THERMAL_GENL_CMD_MAX = 7,
+};
+
+struct param {
+	struct nlattr **attrs;
+	struct sk_buff *msg;
+	const char *name;
+	int tz_id;
+	int cdev_id;
+	int trip_id;
+	int trip_temp;
+	int trip_type;
+	int trip_hyst;
+	int temp;
+	int cdev_state;
+	int cdev_max_state;
+};
+
+typedef int (*cb_t)(struct param *);
+
 struct thermal_hwmon_device {
 	char type[20];
 	struct device *device;
@@ -80736,6 +109992,7 @@ struct power_allocator_params {
 	s32 prev_err;
 	int trip_switch_on;
 	int trip_max_desired_temperature;
+	u32 sustainable_power;
 };
 
 enum devfreq_timer {
@@ -80748,6 +110005,7 @@ struct devfreq_dev_profile {
 	long unsigned int initial_freq;
 	unsigned int polling_ms;
 	enum devfreq_timer timer;
+	bool is_cooling_device;
 	int (*target)(struct device *, long unsigned int *, u32);
 	int (*get_dev_status)(struct device *, struct devfreq_dev_status *);
 	int (*get_cur_freq)(struct device *, long unsigned int *);
@@ -80771,12 +110029,13 @@ struct devfreq {
 	struct device dev;
 	struct devfreq_dev_profile *profile;
 	const struct devfreq_governor *governor;
-	char governor_name[16];
+	struct opp_table *opp_table;
 	struct notifier_block nb;
 	struct delayed_work work;
 	long unsigned int previous_freq;
 	struct devfreq_dev_status last_status;
 	void *data;
+	void *governor_data;
 	struct dev_pm_qos_request user_min_freq_req;
 	struct dev_pm_qos_request user_max_freq_req;
 	long unsigned int scaling_min_freq;
@@ -80787,6 +110046,7 @@ struct devfreq {
 	atomic_t suspend_count;
 	struct devfreq_stats stats;
 	struct srcu_notifier_head transition_notifier_list;
+	struct thermal_cooling_device *cdev;
 	struct notifier_block nb_min;
 	struct notifier_block nb_max;
 };
@@ -80794,31 +110054,974 @@ struct devfreq {
 struct devfreq_governor {
 	struct list_head node;
 	const char name[16];
-	const unsigned int immutable;
-	const unsigned int interrupt_driven;
+	const u64 attrs;
+	const u64 flags;
 	int (*get_target_freq)(struct devfreq *, long unsigned int *);
 	int (*event_handler)(struct devfreq *, unsigned int, void *);
 };
 
 struct devfreq_cooling_power {
-	long unsigned int (*get_static_power)(struct devfreq *, long unsigned int);
-	long unsigned int (*get_dynamic_power)(struct devfreq *, long unsigned int, long unsigned int);
 	int (*get_real_power)(struct devfreq *, u32 *, long unsigned int, long unsigned int);
-	long unsigned int dyn_power_coeff;
 };
 
 struct devfreq_cooling_device {
-	int id;
 	struct thermal_cooling_device *cdev;
 	struct devfreq *devfreq;
 	long unsigned int cooling_state;
-	u32 *power_table;
 	u32 *freq_table;
-	size_t freq_table_size;
+	size_t max_state;
 	struct devfreq_cooling_power *power_ops;
 	u32 res_util;
 	int capped_state;
 	struct dev_pm_qos_request req_max_freq;
+	struct em_perf_domain *em_pd;
+};
+
+struct _thermal_state {
+	u64 next_check;
+	u64 last_interrupt_time;
+	struct delayed_work therm_work;
+	long unsigned int count;
+	long unsigned int last_count;
+	long unsigned int max_time_ms;
+	long unsigned int total_time_ms;
+	bool rate_control_active;
+	bool new_event;
+	u8 level;
+	u8 sample_index;
+	u8 sample_count;
+	u8 average;
+	u8 baseline_temp;
+	u8 temp_samples[3];
+};
+
+struct thermal_state {
+	struct _thermal_state core_throttle;
+	struct _thermal_state core_power_limit;
+	struct _thermal_state package_throttle;
+	struct _thermal_state package_power_limit;
+	struct _thermal_state core_thresh0;
+	struct _thermal_state core_thresh1;
+	struct _thermal_state pkg_thresh0;
+	struct _thermal_state pkg_thresh1;
+};
+
+struct watchdog_info {
+	__u32 options;
+	__u32 firmware_version;
+	__u8 identity[32];
+};
+
+struct watchdog_device;
+
+struct watchdog_ops {
+	struct module *owner;
+	int (*start)(struct watchdog_device *);
+	int (*stop)(struct watchdog_device *);
+	int (*ping)(struct watchdog_device *);
+	unsigned int (*status)(struct watchdog_device *);
+	int (*set_timeout)(struct watchdog_device *, unsigned int);
+	int (*set_pretimeout)(struct watchdog_device *, unsigned int);
+	unsigned int (*get_timeleft)(struct watchdog_device *);
+	int (*restart)(struct watchdog_device *, long unsigned int, void *);
+	long int (*ioctl)(struct watchdog_device *, unsigned int, long unsigned int);
+};
+
+struct watchdog_governor;
+
+struct watchdog_core_data;
+
+struct watchdog_device {
+	int id;
+	struct device *parent;
+	const struct attribute_group **groups;
+	const struct watchdog_info *info;
+	const struct watchdog_ops *ops;
+	const struct watchdog_governor *gov;
+	unsigned int bootstatus;
+	unsigned int timeout;
+	unsigned int pretimeout;
+	unsigned int min_timeout;
+	unsigned int max_timeout;
+	unsigned int min_hw_heartbeat_ms;
+	unsigned int max_hw_heartbeat_ms;
+	struct notifier_block reboot_nb;
+	struct notifier_block restart_nb;
+	struct notifier_block pm_nb;
+	void *driver_data;
+	struct watchdog_core_data *wd_data;
+	long unsigned int status;
+	struct list_head deferred;
+};
+
+struct watchdog_governor {
+	const char name[20];
+	void (*pretimeout)(struct watchdog_device *);
+};
+
+struct watchdog_core_data {
+	struct device dev;
+	struct cdev cdev;
+	struct watchdog_device *wdd;
+	struct mutex lock;
+	ktime_t last_keepalive;
+	ktime_t last_hw_keepalive;
+	ktime_t open_deadline;
+	struct hrtimer timer;
+	struct kthread_work work;
+	long unsigned int status;
+};
+
+struct watchdog_pretimeout {
+	struct watchdog_device *wdd;
+	struct list_head entry;
+};
+
+struct governor_priv {
+	struct watchdog_governor *gov;
+	struct list_head entry;
+};
+
+struct mdp_device_descriptor_s {
+	__u32 number;
+	__u32 major;
+	__u32 minor;
+	__u32 raid_disk;
+	__u32 state;
+	__u32 reserved[27];
+};
+
+typedef struct mdp_device_descriptor_s mdp_disk_t;
+
+struct mdp_superblock_s {
+	__u32 md_magic;
+	__u32 major_version;
+	__u32 minor_version;
+	__u32 patch_version;
+	__u32 gvalid_words;
+	__u32 set_uuid0;
+	__u32 ctime;
+	__u32 level;
+	__u32 size;
+	__u32 nr_disks;
+	__u32 raid_disks;
+	__u32 md_minor;
+	__u32 not_persistent;
+	__u32 set_uuid1;
+	__u32 set_uuid2;
+	__u32 set_uuid3;
+	__u32 gstate_creserved[16];
+	__u32 utime;
+	__u32 state;
+	__u32 active_disks;
+	__u32 working_disks;
+	__u32 failed_disks;
+	__u32 spare_disks;
+	__u32 sb_csum;
+	__u32 events_lo;
+	__u32 events_hi;
+	__u32 cp_events_lo;
+	__u32 cp_events_hi;
+	__u32 recovery_cp;
+	__u64 reshape_position;
+	__u32 new_level;
+	__u32 delta_disks;
+	__u32 new_layout;
+	__u32 new_chunk;
+	__u32 gstate_sreserved[14];
+	__u32 layout;
+	__u32 chunk_size;
+	__u32 root_pv;
+	__u32 root_block;
+	__u32 pstate_reserved[60];
+	mdp_disk_t disks[27];
+	__u32 reserved[0];
+	mdp_disk_t this_disk;
+};
+
+typedef struct mdp_superblock_s mdp_super_t;
+
+struct mdp_superblock_1 {
+	__le32 magic;
+	__le32 major_version;
+	__le32 feature_map;
+	__le32 pad0;
+	__u8 set_uuid[16];
+	char set_name[32];
+	__le64 ctime;
+	__le32 level;
+	__le32 layout;
+	__le64 size;
+	__le32 chunksize;
+	__le32 raid_disks;
+	union {
+		__le32 bitmap_offset;
+		struct {
+			__le16 offset;
+			__le16 size;
+		} ppl;
+	};
+	__le32 new_level;
+	__le64 reshape_position;
+	__le32 delta_disks;
+	__le32 new_layout;
+	__le32 new_chunk;
+	__le32 new_offset;
+	__le64 data_offset;
+	__le64 data_size;
+	__le64 super_offset;
+	union {
+		__le64 recovery_offset;
+		__le64 journal_tail;
+	};
+	__le32 dev_number;
+	__le32 cnt_corrected_read;
+	__u8 device_uuid[16];
+	__u8 devflags;
+	__u8 bblog_shift;
+	__le16 bblog_size;
+	__le32 bblog_offset;
+	__le64 utime;
+	__le64 events;
+	__le64 resync_offset;
+	__le32 sb_csum;
+	__le32 max_dev;
+	__u8 pad3[32];
+	__le16 dev_roles[0];
+};
+
+struct mdu_version_s {
+	int major;
+	int minor;
+	int patchlevel;
+};
+
+typedef struct mdu_version_s mdu_version_t;
+
+struct mdu_array_info_s {
+	int major_version;
+	int minor_version;
+	int patch_version;
+	unsigned int ctime;
+	int level;
+	int size;
+	int nr_disks;
+	int raid_disks;
+	int md_minor;
+	int not_persistent;
+	unsigned int utime;
+	int state;
+	int active_disks;
+	int working_disks;
+	int failed_disks;
+	int spare_disks;
+	int layout;
+	int chunk_size;
+};
+
+typedef struct mdu_array_info_s mdu_array_info_t;
+
+struct mdu_disk_info_s {
+	int number;
+	int major;
+	int minor;
+	int raid_disk;
+	int state;
+};
+
+typedef struct mdu_disk_info_s mdu_disk_info_t;
+
+struct mdu_bitmap_file_s {
+	char pathname[4096];
+};
+
+typedef struct mdu_bitmap_file_s mdu_bitmap_file_t;
+
+struct mddev;
+
+struct md_rdev;
+
+struct md_cluster_operations {
+	int (*join)(struct mddev *, int);
+	int (*leave)(struct mddev *);
+	int (*slot_number)(struct mddev *);
+	int (*resync_info_update)(struct mddev *, sector_t, sector_t);
+	void (*resync_info_get)(struct mddev *, sector_t *, sector_t *);
+	int (*metadata_update_start)(struct mddev *);
+	int (*metadata_update_finish)(struct mddev *);
+	void (*metadata_update_cancel)(struct mddev *);
+	int (*resync_start)(struct mddev *);
+	int (*resync_finish)(struct mddev *);
+	int (*area_resyncing)(struct mddev *, int, sector_t, sector_t);
+	int (*add_new_disk)(struct mddev *, struct md_rdev *);
+	void (*add_new_disk_cancel)(struct mddev *);
+	int (*new_disk_ack)(struct mddev *, bool);
+	int (*remove_disk)(struct mddev *, struct md_rdev *);
+	void (*load_bitmaps)(struct mddev *, int);
+	int (*gather_bitmaps)(struct md_rdev *);
+	int (*resize_bitmaps)(struct mddev *, sector_t, sector_t);
+	int (*lock_all_bitmaps)(struct mddev *);
+	void (*unlock_all_bitmaps)(struct mddev *);
+	void (*update_size)(struct mddev *, sector_t);
+};
+
+struct md_cluster_info;
+
+struct md_personality;
+
+struct md_thread;
+
+struct bitmap;
+
+struct mddev {
+	void *private;
+	struct md_personality *pers;
+	dev_t unit;
+	int md_minor;
+	struct list_head disks;
+	long unsigned int flags;
+	long unsigned int sb_flags;
+	int suspended;
+	atomic_t active_io;
+	int ro;
+	int sysfs_active;
+	struct gendisk *gendisk;
+	struct kobject kobj;
+	int hold_active;
+	int major_version;
+	int minor_version;
+	int patch_version;
+	int persistent;
+	int external;
+	char metadata_type[17];
+	int chunk_sectors;
+	time64_t ctime;
+	time64_t utime;
+	int level;
+	int layout;
+	char clevel[16];
+	int raid_disks;
+	int max_disks;
+	sector_t dev_sectors;
+	sector_t array_sectors;
+	int external_size;
+	__u64 events;
+	int can_decrease_events;
+	char uuid[16];
+	sector_t reshape_position;
+	int delta_disks;
+	int new_level;
+	int new_layout;
+	int new_chunk_sectors;
+	int reshape_backwards;
+	struct md_thread *thread;
+	struct md_thread *sync_thread;
+	char *last_sync_action;
+	sector_t curr_resync;
+	sector_t curr_resync_completed;
+	long unsigned int resync_mark;
+	sector_t resync_mark_cnt;
+	sector_t curr_mark_cnt;
+	sector_t resync_max_sectors;
+	atomic64_t resync_mismatches;
+	sector_t suspend_lo;
+	sector_t suspend_hi;
+	int sync_speed_min;
+	int sync_speed_max;
+	int parallel_resync;
+	int ok_start_degraded;
+	long unsigned int recovery;
+	int recovery_disabled;
+	int in_sync;
+	struct mutex open_mutex;
+	struct mutex reconfig_mutex;
+	atomic_t active;
+	atomic_t openers;
+	int changed;
+	int degraded;
+	atomic_t recovery_active;
+	wait_queue_head_t recovery_wait;
+	sector_t recovery_cp;
+	sector_t resync_min;
+	sector_t resync_max;
+	struct kernfs_node *sysfs_state;
+	struct kernfs_node *sysfs_action;
+	struct kernfs_node *sysfs_completed;
+	struct kernfs_node *sysfs_degraded;
+	struct kernfs_node *sysfs_level;
+	struct work_struct del_work;
+	spinlock_t lock;
+	wait_queue_head_t sb_wait;
+	atomic_t pending_writes;
+	unsigned int safemode;
+	unsigned int safemode_delay;
+	struct timer_list safemode_timer;
+	struct percpu_ref writes_pending;
+	int sync_checkers;
+	struct request_queue *queue;
+	struct bitmap *bitmap;
+	struct {
+		struct file *file;
+		loff_t offset;
+		long unsigned int space;
+		loff_t default_offset;
+		long unsigned int default_space;
+		struct mutex mutex;
+		long unsigned int chunksize;
+		long unsigned int daemon_sleep;
+		long unsigned int max_write_behind;
+		int external;
+		int nodes;
+		char cluster_name[64];
+	} bitmap_info;
+	atomic_t max_corr_read_errors;
+	struct list_head all_mddevs;
+	const struct attribute_group *to_remove;
+	struct bio_set bio_set;
+	struct bio_set sync_set;
+	struct bio_set io_acct_set;
+	struct bio *flush_bio;
+	atomic_t flush_pending;
+	ktime_t start_flush;
+	ktime_t prev_flush_start;
+	struct work_struct flush_work;
+	struct work_struct event_work;
+	mempool_t *serial_info_pool;
+	void (*sync_super)(struct mddev *, struct md_rdev *);
+	struct md_cluster_info *cluster_info;
+	unsigned int good_device_nr;
+	unsigned int noio_flag;
+	bool has_superblocks: 1;
+	bool fail_last_dev: 1;
+	bool serialize_policy: 1;
+};
+
+struct serial_in_rdev;
+
+struct md_rdev {
+	struct list_head same_set;
+	sector_t sectors;
+	struct mddev *mddev;
+	int last_events;
+	struct block_device *meta_bdev;
+	struct block_device *bdev;
+	struct page *sb_page;
+	struct page *bb_page;
+	int sb_loaded;
+	__u64 sb_events;
+	sector_t data_offset;
+	sector_t new_data_offset;
+	sector_t sb_start;
+	int sb_size;
+	int preferred_minor;
+	struct kobject kobj;
+	long unsigned int flags;
+	wait_queue_head_t blocked_wait;
+	int desc_nr;
+	int raid_disk;
+	int new_raid_disk;
+	int saved_raid_disk;
+	union {
+		sector_t recovery_offset;
+		sector_t journal_tail;
+	};
+	atomic_t nr_pending;
+	atomic_t read_errors;
+	time64_t last_read_error;
+	atomic_t corrected_errors;
+	struct serial_in_rdev *serial;
+	struct work_struct del_work;
+	struct kernfs_node *sysfs_state;
+	struct kernfs_node *sysfs_unack_badblocks;
+	struct kernfs_node *sysfs_badblocks;
+	struct badblocks badblocks;
+	struct {
+		short int offset;
+		unsigned int size;
+		sector_t sector;
+	} ppl;
+};
+
+struct serial_in_rdev {
+	struct rb_root_cached serial_rb;
+	spinlock_t serial_lock;
+	wait_queue_head_t serial_io_wait;
+};
+
+enum flag_bits {
+	Faulty = 0,
+	In_sync = 1,
+	Bitmap_sync = 2,
+	WriteMostly = 3,
+	AutoDetected = 4,
+	Blocked = 5,
+	WriteErrorSeen = 6,
+	FaultRecorded = 7,
+	BlockedBadBlocks = 8,
+	WantReplacement = 9,
+	Replacement = 10,
+	Candidate = 11,
+	Journal = 12,
+	ClusterRemove = 13,
+	RemoveSynchronized = 14,
+	ExternalBbl = 15,
+	FailFast = 16,
+	LastDev = 17,
+	CollisionCheck = 18,
+};
+
+enum mddev_flags {
+	MD_ARRAY_FIRST_USE = 0,
+	MD_CLOSING = 1,
+	MD_JOURNAL_CLEAN = 2,
+	MD_HAS_JOURNAL = 3,
+	MD_CLUSTER_RESYNC_LOCKED = 4,
+	MD_FAILFAST_SUPPORTED = 5,
+	MD_HAS_PPL = 6,
+	MD_HAS_MULTIPLE_PPLS = 7,
+	MD_ALLOW_SB_UPDATE = 8,
+	MD_UPDATING_SB = 9,
+	MD_NOT_READY = 10,
+	MD_BROKEN = 11,
+};
+
+enum mddev_sb_flags {
+	MD_SB_CHANGE_DEVS = 0,
+	MD_SB_CHANGE_CLEAN = 1,
+	MD_SB_CHANGE_PENDING = 2,
+	MD_SB_NEED_REWRITE = 3,
+};
+
+struct md_personality {
+	char *name;
+	int level;
+	struct list_head list;
+	struct module *owner;
+	bool (*make_request)(struct mddev *, struct bio *);
+	int (*run)(struct mddev *);
+	int (*start)(struct mddev *);
+	void (*free)(struct mddev *, void *);
+	void (*status)(struct seq_file *, struct mddev *);
+	void (*error_handler)(struct mddev *, struct md_rdev *);
+	int (*hot_add_disk)(struct mddev *, struct md_rdev *);
+	int (*hot_remove_disk)(struct mddev *, struct md_rdev *);
+	int (*spare_active)(struct mddev *);
+	sector_t (*sync_request)(struct mddev *, sector_t, int *);
+	int (*resize)(struct mddev *, sector_t);
+	sector_t (*size)(struct mddev *, sector_t, int);
+	int (*check_reshape)(struct mddev *);
+	int (*start_reshape)(struct mddev *);
+	void (*finish_reshape)(struct mddev *);
+	void (*update_reshape_pos)(struct mddev *);
+	void (*quiesce)(struct mddev *, int);
+	void * (*takeover)(struct mddev *);
+	int (*change_consistency_policy)(struct mddev *, const char *);
+};
+
+struct md_thread {
+	void (*run)(struct md_thread *);
+	struct mddev *mddev;
+	wait_queue_head_t wqueue;
+	long unsigned int flags;
+	struct task_struct *tsk;
+	long unsigned int timeout;
+	void *private;
+};
+
+struct bitmap_page;
+
+struct bitmap_counts {
+	spinlock_t lock;
+	struct bitmap_page *bp;
+	long unsigned int pages;
+	long unsigned int missing_pages;
+	long unsigned int chunkshift;
+	long unsigned int chunks;
+};
+
+struct bitmap_storage {
+	struct file *file;
+	struct page *sb_page;
+	struct page **filemap;
+	long unsigned int *filemap_attr;
+	long unsigned int file_pages;
+	long unsigned int bytes;
+};
+
+struct bitmap {
+	struct bitmap_counts counts;
+	struct mddev *mddev;
+	__u64 events_cleared;
+	int need_sync;
+	struct bitmap_storage storage;
+	long unsigned int flags;
+	int allclean;
+	atomic_t behind_writes;
+	long unsigned int behind_writes_used;
+	long unsigned int daemon_lastrun;
+	long unsigned int last_end_sync;
+	atomic_t pending_writes;
+	wait_queue_head_t write_wait;
+	wait_queue_head_t overflow_wait;
+	wait_queue_head_t behind_wait;
+	struct kernfs_node *sysfs_can_clear;
+	int cluster_slot;
+};
+
+enum recovery_flags {
+	MD_RECOVERY_RUNNING = 0,
+	MD_RECOVERY_SYNC = 1,
+	MD_RECOVERY_RECOVER = 2,
+	MD_RECOVERY_INTR = 3,
+	MD_RECOVERY_DONE = 4,
+	MD_RECOVERY_NEEDED = 5,
+	MD_RECOVERY_REQUESTED = 6,
+	MD_RECOVERY_CHECK = 7,
+	MD_RECOVERY_RESHAPE = 8,
+	MD_RECOVERY_FROZEN = 9,
+	MD_RECOVERY_ERROR = 10,
+	MD_RECOVERY_WAIT = 11,
+	MD_RESYNCING_REMOTE = 12,
+};
+
+struct md_sysfs_entry {
+	struct attribute attr;
+	ssize_t (*show)(struct mddev *, char *);
+	ssize_t (*store)(struct mddev *, const char *, size_t);
+};
+
+struct md_io_acct {
+	struct bio *orig_bio;
+	long unsigned int start_time;
+	struct bio bio_clone;
+};
+
+struct bitmap_page {
+	char *map;
+	unsigned int hijacked: 1;
+	unsigned int pending: 1;
+	unsigned int count: 30;
+};
+
+enum md_ro_state {
+	MD_RDWR = 0,
+	MD_RDONLY = 1,
+	MD_AUTO_READ = 2,
+	MD_MAX_STATE = 3,
+};
+
+struct super_type {
+	char *name;
+	struct module *owner;
+	int (*load_super)(struct md_rdev *, struct md_rdev *, int);
+	int (*validate_super)(struct mddev *, struct md_rdev *, struct md_rdev *);
+	void (*sync_super)(struct mddev *, struct md_rdev *);
+	long long unsigned int (*rdev_size_change)(struct md_rdev *, sector_t);
+	int (*allow_new_offset)(struct md_rdev *, long long unsigned int);
+};
+
+struct rdev_sysfs_entry {
+	struct attribute attr;
+	ssize_t (*show)(struct md_rdev *, char *);
+	ssize_t (*store)(struct md_rdev *, const char *, size_t);
+};
+
+enum array_state {
+	clear = 0,
+	inactive = 1,
+	suspended = 2,
+	readonly = 3,
+	read_auto = 4,
+	clean = 5,
+	active = 6,
+	write_pending = 7,
+	active_idle = 8,
+	broken = 9,
+	bad_word = 10,
+};
+
+struct detected_devices_node {
+	struct list_head list;
+	dev_t dev;
+};
+
+typedef __u16 bitmap_counter_t;
+
+enum bitmap_state {
+	BITMAP_STALE = 1,
+	BITMAP_WRITE_ERROR = 2,
+	BITMAP_HOSTENDIAN = 15,
+};
+
+struct bitmap_super_s {
+	__le32 magic;
+	__le32 version;
+	__u8 uuid[16];
+	__le64 events;
+	__le64 events_cleared;
+	__le64 sync_size;
+	__le32 state;
+	__le32 chunksize;
+	__le32 daemon_sleep;
+	__le32 write_behind;
+	__le32 sectors_reserved;
+	__le32 nodes;
+	__u8 cluster_name[64];
+	__u8 pad[120];
+};
+
+typedef struct bitmap_super_s bitmap_super_t;
+
+enum bitmap_page_attr {
+	BITMAP_PAGE_DIRTY = 0,
+	BITMAP_PAGE_PENDING = 1,
+	BITMAP_PAGE_NEEDWRITE = 2,
+};
+
+struct md_setup_args {
+	int minor;
+	int partitioned;
+	int level;
+	int chunk;
+	char *device_names;
+};
+
+struct dm_ioctl {
+	__u32 version[3];
+	__u32 data_size;
+	__u32 data_start;
+	__u32 target_count;
+	__s32 open_count;
+	__u32 flags;
+	__u32 event_nr;
+	__u32 padding;
+	__u64 dev;
+	char name[128];
+	char uuid[129];
+	char data[7];
+};
+
+struct dm_target_spec {
+	__u64 sector_start;
+	__u64 length;
+	__s32 status;
+	__u32 next;
+	char target_type[16];
+};
+
+struct dm_device {
+	struct dm_ioctl dmi;
+	struct dm_target_spec *table[256];
+	char *target_args_array[256];
+	struct list_head list;
+};
+
+typedef enum {
+	STATUSTYPE_INFO = 0,
+	STATUSTYPE_TABLE = 1,
+	STATUSTYPE_IMA = 2,
+} status_type_t;
+
+union map_info___2 {
+	void *ptr;
+};
+
+struct dm_target;
+
+typedef int (*dm_ctr_fn)(struct dm_target *, unsigned int, char **);
+
+struct dm_table;
+
+struct target_type;
+
+struct dm_target {
+	struct dm_table *table;
+	struct target_type *type;
+	sector_t begin;
+	sector_t len;
+	uint32_t max_io_len;
+	unsigned int num_flush_bios;
+	unsigned int num_discard_bios;
+	unsigned int num_secure_erase_bios;
+	unsigned int num_write_same_bios;
+	unsigned int num_write_zeroes_bios;
+	unsigned int per_io_data_size;
+	void *private;
+	char *error;
+	bool flush_supported: 1;
+	bool discards_supported: 1;
+	bool limit_swap_bios: 1;
+	bool emulate_zone_append: 1;
+};
+
+typedef void (*dm_dtr_fn)(struct dm_target *);
+
+typedef int (*dm_map_fn)(struct dm_target *, struct bio *);
+
+typedef int (*dm_clone_and_map_request_fn)(struct dm_target *, struct request *, union map_info___2 *, struct request **);
+
+typedef void (*dm_release_clone_request_fn)(struct request *, union map_info___2 *);
+
+typedef int (*dm_endio_fn)(struct dm_target *, struct bio *, blk_status_t *);
+
+typedef int (*dm_request_endio_fn)(struct dm_target *, struct request *, blk_status_t, union map_info___2 *);
+
+typedef void (*dm_presuspend_fn)(struct dm_target *);
+
+typedef void (*dm_presuspend_undo_fn)(struct dm_target *);
+
+typedef void (*dm_postsuspend_fn)(struct dm_target *);
+
+typedef int (*dm_preresume_fn)(struct dm_target *);
+
+typedef void (*dm_resume_fn)(struct dm_target *);
+
+typedef void (*dm_status_fn)(struct dm_target *, status_type_t, unsigned int, char *, unsigned int);
+
+typedef int (*dm_message_fn)(struct dm_target *, unsigned int, char **, char *, unsigned int);
+
+typedef int (*dm_prepare_ioctl_fn)(struct dm_target *, struct block_device **);
+
+struct dm_report_zones_args;
+
+typedef int (*dm_report_zones_fn)(struct dm_target *, struct dm_report_zones_args *, unsigned int);
+
+struct dm_report_zones_args {
+	struct dm_target *tgt;
+	sector_t next_sector;
+	void *orig_data;
+	report_zones_cb orig_cb;
+	unsigned int zone_idx;
+	sector_t start;
+};
+
+struct dm_dev;
+
+typedef int (*iterate_devices_callout_fn)(struct dm_target *, struct dm_dev *, sector_t, sector_t, void *);
+
+struct dm_dev {
+	struct block_device *bdev;
+	struct dax_device *dax_dev;
+	fmode_t mode;
+	char name[16];
+};
+
+typedef int (*dm_iterate_devices_fn)(struct dm_target *, iterate_devices_callout_fn, void *);
+
+typedef void (*dm_io_hints_fn)(struct dm_target *, struct queue_limits *);
+
+typedef int (*dm_busy_fn)(struct dm_target *);
+
+typedef long int (*dm_dax_direct_access_fn)(struct dm_target *, long unsigned int, long int, void **, pfn_t *);
+
+typedef size_t (*dm_dax_copy_iter_fn)(struct dm_target *, long unsigned int, void *, size_t, struct iov_iter *);
+
+typedef int (*dm_dax_zero_page_range_fn)(struct dm_target *, long unsigned int, size_t);
+
+struct target_type {
+	uint64_t features;
+	const char *name;
+	struct module *module;
+	unsigned int version[3];
+	dm_ctr_fn ctr;
+	dm_dtr_fn dtr;
+	dm_map_fn map;
+	dm_clone_and_map_request_fn clone_and_map_rq;
+	dm_release_clone_request_fn release_clone_rq;
+	dm_endio_fn end_io;
+	dm_request_endio_fn rq_end_io;
+	dm_presuspend_fn presuspend;
+	dm_presuspend_undo_fn presuspend_undo;
+	dm_postsuspend_fn postsuspend;
+	dm_preresume_fn preresume;
+	dm_resume_fn resume;
+	dm_status_fn status;
+	dm_message_fn message;
+	dm_prepare_ioctl_fn prepare_ioctl;
+	dm_report_zones_fn report_zones;
+	dm_busy_fn busy;
+	dm_iterate_devices_fn iterate_devices;
+	dm_io_hints_fn io_hints;
+	dm_dax_direct_access_fn direct_access;
+	dm_dax_copy_iter_fn dax_copy_from_iter;
+	dm_dax_copy_iter_fn dax_copy_to_iter;
+	dm_dax_zero_page_range_fn dax_zero_page_range;
+	struct list_head list;
+};
+
+enum dm_uevent_type {
+	DM_UEVENT_PATH_FAILED = 0,
+	DM_UEVENT_PATH_REINSTATED = 1,
+};
+
+struct mapped_device;
+
+struct dm_uevent {
+	struct mapped_device *md;
+	enum kobject_action action;
+	struct kobj_uevent_env ku_env;
+	struct list_head elist;
+	char name[128];
+	char uuid[129];
+};
+
+enum dm_queue_mode {
+	DM_TYPE_NONE = 0,
+	DM_TYPE_BIO_BASED = 1,
+	DM_TYPE_REQUEST_BASED = 2,
+	DM_TYPE_DAX_BIO_BASED = 3,
+};
+
+struct dm_md_mempools;
+
+struct dm_table {
+	struct mapped_device *md;
+	enum dm_queue_mode type;
+	unsigned int depth;
+	unsigned int counts[16];
+	sector_t *index[16];
+	unsigned int num_targets;
+	unsigned int num_allocated;
+	sector_t *highs;
+	struct dm_target *targets;
+	struct target_type *immutable_target_type;
+	bool integrity_supported: 1;
+	bool singleton: 1;
+	unsigned int integrity_added: 1;
+	fmode_t mode;
+	struct list_head devices;
+	void (*event_fn)(void *);
+	void *event_context;
+	struct dm_md_mempools *mempools;
+	struct blk_keyslot_manager *ksm;
+};
+
+struct dm_stats_last_position;
+
+struct dm_stats {
+	struct mutex mutex;
+	struct list_head list;
+	struct dm_stats_last_position *last;
+	bool precise_timestamps;
+};
+
+struct dm_stats_aux {
+	bool merged;
+	long long unsigned int duration_ns;
+};
+
+struct dm_ima_device_table_metadata {
+	char *device_metadata;
+	unsigned int device_metadata_len;
+	unsigned int num_targets;
+	char *hash;
+	unsigned int hash_len;
+};
+
+struct dm_ima_measurements {
+	struct dm_ima_device_table_metadata active_table;
+	struct dm_ima_device_table_metadata inactive_table;
+	unsigned int dm_version_str_len;
 };
 
 struct dm_kobject_holder {
@@ -80826,6 +111029,419 @@ struct dm_kobject_holder {
 	struct completion completion;
 };
 
+struct mapped_device {
+	struct mutex suspend_lock;
+	struct mutex table_devices_lock;
+	struct list_head table_devices;
+	void *map;
+	long unsigned int flags;
+	struct mutex type_lock;
+	enum dm_queue_mode type;
+	int numa_node_id;
+	struct request_queue *queue;
+	atomic_t holders;
+	atomic_t open_count;
+	struct dm_target *immutable_target;
+	struct target_type *immutable_target_type;
+	char name[16];
+	struct gendisk *disk;
+	struct dax_device *dax_dev;
+	long unsigned int *pending_io;
+	struct work_struct work;
+	wait_queue_head_t wait;
+	spinlock_t deferred_lock;
+	struct bio_list deferred;
+	void *interface_ptr;
+	wait_queue_head_t eventq;
+	atomic_t event_nr;
+	atomic_t uevent_seq;
+	struct list_head uevent_list;
+	spinlock_t uevent_lock;
+	unsigned int internal_suspend_count;
+	struct bio_set io_bs;
+	struct bio_set bs;
+	struct workqueue_struct *wq;
+	struct hd_geometry geometry;
+	struct dm_kobject_holder kobj_holder;
+	int swap_bios;
+	struct semaphore swap_bios_semaphore;
+	struct mutex swap_bios_lock;
+	struct dm_stats stats;
+	struct blk_mq_tag_set *tag_set;
+	bool init_tio_pdu: 1;
+	struct srcu_struct io_barrier;
+	unsigned int nr_zones;
+	unsigned int *zwp_offset;
+	struct dm_ima_measurements ima;
+};
+
+struct dm_io;
+
+struct dm_target_io {
+	unsigned int magic;
+	struct dm_io *io;
+	struct dm_target *ti;
+	unsigned int target_bio_nr;
+	unsigned int *len_ptr;
+	bool inside_dm_io;
+	struct bio clone;
+};
+
+struct dm_io {
+	unsigned int magic;
+	struct mapped_device *md;
+	blk_status_t status;
+	atomic_t io_count;
+	struct bio *orig_bio;
+	long unsigned int start_time;
+	spinlock_t endio_lock;
+	struct dm_stats_aux stats_aux;
+	struct dm_target_io tio;
+};
+
+struct dm_md_mempools {
+	struct bio_set bs;
+	struct bio_set io_bs;
+};
+
+struct clone_info {
+	struct dm_table *map;
+	struct bio *bio;
+	struct dm_io *io;
+	sector_t sector;
+	unsigned int sector_count;
+};
+
+struct table_device {
+	struct list_head list;
+	refcount_t count;
+	struct dm_dev dm_dev;
+};
+
+struct dm_pr {
+	u64 old_key;
+	u64 new_key;
+	u32 flags;
+	bool fail_early;
+};
+
+struct dm_arg_set {
+	unsigned int argc;
+	char **argv;
+};
+
+struct dm_arg {
+	unsigned int min;
+	unsigned int max;
+	char *error;
+};
+
+struct dm_dev_internal {
+	struct list_head list;
+	refcount_t count;
+	struct dm_dev *dm_dev;
+};
+
+struct dm_keyslot_manager {
+	struct blk_keyslot_manager ksm;
+	struct mapped_device *md;
+};
+
+enum suspend_mode {
+	PRESUSPEND = 0,
+	PRESUSPEND_UNDO = 1,
+	POSTSUSPEND = 2,
+};
+
+struct linear_c {
+	struct dm_dev *dev;
+	sector_t start;
+};
+
+struct stripe {
+	struct dm_dev *dev;
+	sector_t physical_start;
+	atomic_t error_count;
+};
+
+struct stripe_c {
+	uint32_t stripes;
+	int stripes_shift;
+	sector_t stripe_width;
+	uint32_t chunk_size;
+	int chunk_size_shift;
+	struct dm_target *ti;
+	struct work_struct trigger_event;
+	struct stripe stripe[0];
+};
+
+struct dm_target_deps {
+	__u32 count;
+	__u32 padding;
+	__u64 dev[0];
+};
+
+struct dm_name_list {
+	__u64 dev;
+	__u32 next;
+	char name[0];
+};
+
+struct dm_target_versions {
+	__u32 next;
+	__u32 version[3];
+	char name[0];
+};
+
+struct dm_target_msg {
+	__u64 sector;
+	char message[0];
+};
+
+enum {
+	DM_VERSION_CMD = 0,
+	DM_REMOVE_ALL_CMD = 1,
+	DM_LIST_DEVICES_CMD = 2,
+	DM_DEV_CREATE_CMD = 3,
+	DM_DEV_REMOVE_CMD = 4,
+	DM_DEV_RENAME_CMD = 5,
+	DM_DEV_SUSPEND_CMD = 6,
+	DM_DEV_STATUS_CMD = 7,
+	DM_DEV_WAIT_CMD = 8,
+	DM_TABLE_LOAD_CMD = 9,
+	DM_TABLE_CLEAR_CMD = 10,
+	DM_TABLE_DEPS_CMD = 11,
+	DM_TABLE_STATUS_CMD = 12,
+	DM_LIST_VERSIONS_CMD = 13,
+	DM_TARGET_MSG_CMD = 14,
+	DM_DEV_SET_GEOMETRY_CMD = 15,
+	DM_DEV_ARM_POLL_CMD = 16,
+	DM_GET_TARGET_VERSION_CMD = 17,
+};
+
+struct dm_file {
+	volatile unsigned int global_event_nr;
+};
+
+struct hash_cell {
+	struct rb_node name_node;
+	struct rb_node uuid_node;
+	bool name_set;
+	bool uuid_set;
+	char *name;
+	char *uuid;
+	struct mapped_device *md;
+	struct dm_table *new_map;
+};
+
+struct vers_iter {
+	size_t param_size;
+	struct dm_target_versions *vers;
+	struct dm_target_versions *old_vers;
+	char *end;
+	uint32_t flags;
+};
+
+typedef int (*ioctl_fn___2)(struct file *, struct dm_ioctl *, size_t);
+
+struct dm_io_region {
+	struct block_device *bdev;
+	sector_t sector;
+	sector_t count;
+};
+
+struct page_list {
+	struct page_list *next;
+	struct page *page;
+};
+
+typedef void (*io_notify_fn)(long unsigned int, void *);
+
+enum dm_io_mem_type {
+	DM_IO_PAGE_LIST = 0,
+	DM_IO_BIO = 1,
+	DM_IO_VMA = 2,
+	DM_IO_KMEM = 3,
+};
+
+struct dm_io_memory {
+	enum dm_io_mem_type type;
+	unsigned int offset;
+	union {
+		struct page_list *pl;
+		struct bio *bio;
+		void *vma;
+		void *addr;
+	} ptr;
+};
+
+struct dm_io_notify {
+	io_notify_fn fn;
+	void *context;
+};
+
+struct dm_io_client;
+
+struct dm_io_request {
+	int bi_op;
+	int bi_op_flags;
+	struct dm_io_memory mem;
+	struct dm_io_notify notify;
+	struct dm_io_client *client;
+};
+
+struct dm_io_client {
+	mempool_t pool;
+	struct bio_set bios;
+};
+
+struct io {
+	long unsigned int error_bits;
+	atomic_t count;
+	struct dm_io_client *client;
+	io_notify_fn callback;
+	void *context;
+	void *vma_invalidate_address;
+	long unsigned int vma_invalidate_size;
+	long: 64;
+};
+
+struct dpages {
+	void (*get_page)(struct dpages *, struct page **, long unsigned int *, unsigned int *);
+	void (*next_page)(struct dpages *);
+	union {
+		unsigned int context_u;
+		struct bvec_iter context_bi;
+	};
+	void *context_ptr;
+	void *vma_invalidate_address;
+	long unsigned int vma_invalidate_size;
+};
+
+struct sync_io {
+	long unsigned int error_bits;
+	struct completion wait;
+};
+
+struct dm_kcopyd_throttle {
+	unsigned int throttle;
+	unsigned int num_io_jobs;
+	unsigned int io_period;
+	unsigned int total_period;
+	unsigned int last_jiffies;
+};
+
+typedef void (*dm_kcopyd_notify_fn)(int, long unsigned int, void *);
+
+struct dm_kcopyd_client {
+	struct page_list *pages;
+	unsigned int nr_reserved_pages;
+	unsigned int nr_free_pages;
+	unsigned int sub_job_size;
+	struct dm_io_client *io_client;
+	wait_queue_head_t destroyq;
+	mempool_t job_pool;
+	struct workqueue_struct *kcopyd_wq;
+	struct work_struct kcopyd_work;
+	struct dm_kcopyd_throttle *throttle;
+	atomic_t nr_jobs;
+	spinlock_t job_lock;
+	struct list_head callback_jobs;
+	struct list_head complete_jobs;
+	struct list_head io_jobs;
+	struct list_head pages_jobs;
+};
+
+struct kcopyd_job {
+	struct dm_kcopyd_client *kc;
+	struct list_head list;
+	unsigned int flags;
+	int read_err;
+	long unsigned int write_err;
+	int rw;
+	struct dm_io_region source;
+	unsigned int num_dests;
+	struct dm_io_region dests[8];
+	struct page_list *pages;
+	dm_kcopyd_notify_fn fn;
+	void *context;
+	struct mutex lock;
+	atomic_t sub_jobs;
+	sector_t progress;
+	sector_t write_offset;
+	struct kcopyd_job *master_job;
+};
+
+struct dm_sysfs_attr {
+	struct attribute attr;
+	ssize_t (*show)(struct mapped_device *, char *);
+	ssize_t (*store)(struct mapped_device *, const char *, size_t);
+};
+
+struct dm_stats_last_position {
+	sector_t last_sector;
+	unsigned int last_rw;
+};
+
+struct dm_stat_percpu {
+	long long unsigned int sectors[2];
+	long long unsigned int ios[2];
+	long long unsigned int merges[2];
+	long long unsigned int ticks[2];
+	long long unsigned int io_ticks[2];
+	long long unsigned int io_ticks_total;
+	long long unsigned int time_in_queue;
+	long long unsigned int *histogram;
+};
+
+struct dm_stat_shared {
+	atomic_t in_flight[2];
+	long long unsigned int stamp;
+	struct dm_stat_percpu tmp;
+};
+
+struct dm_stat {
+	struct list_head list_entry;
+	int id;
+	unsigned int stat_flags;
+	size_t n_entries;
+	sector_t start;
+	sector_t end;
+	sector_t step;
+	unsigned int n_histogram_entries;
+	long long unsigned int *histogram_boundaries;
+	const char *program_id;
+	const char *aux_data;
+	struct callback_head callback_head;
+	size_t shared_alloc_size;
+	size_t percpu_alloc_size;
+	size_t histogram_alloc_size;
+	struct dm_stat_percpu *stat_percpu[8192];
+	struct dm_stat_shared stat_shared[0];
+};
+
+struct dm_rq_target_io;
+
+struct dm_rq_clone_bio_info {
+	struct bio *orig;
+	struct dm_rq_target_io *tio;
+	struct bio clone;
+};
+
+struct dm_rq_target_io {
+	struct mapped_device *md;
+	struct dm_target *ti;
+	struct request *orig;
+	struct request *clone;
+	struct kthread_work work;
+	blk_status_t error;
+	union map_info___2 info;
+	struct dm_stats_aux stats_aux;
+	long unsigned int duration_jiffies;
+	unsigned int n_sectors;
+	unsigned int completed;
+};
+
 enum dev_type {
 	DEV_UNKNOWN = 0,
 	DEV_X1 = 1,
@@ -80864,10 +111480,17 @@ enum mem_type {
 	MEM_DDR3 = 15,
 	MEM_RDDR3 = 16,
 	MEM_LRDDR3 = 17,
-	MEM_DDR4 = 18,
-	MEM_RDDR4 = 19,
-	MEM_LRDDR4 = 20,
-	MEM_NVDIMM = 21,
+	MEM_LPDDR3 = 18,
+	MEM_DDR4 = 19,
+	MEM_RDDR4 = 20,
+	MEM_LRDDR4 = 21,
+	MEM_LPDDR4 = 22,
+	MEM_DDR5 = 23,
+	MEM_RDDR5 = 24,
+	MEM_LRDDR5 = 25,
+	MEM_NVDIMM = 26,
+	MEM_WIO2 = 27,
+	MEM_HBM2 = 28,
 };
 
 enum edac_type {
@@ -81085,11 +111708,6 @@ struct edac_device_instance {
 	struct kobject kobj;
 };
 
-struct dev_ch_attribute {
-	struct device_attribute attr;
-	unsigned int channel;
-};
-
 struct ctl_info_attribute {
 	struct attribute attr;
 	ssize_t (*show)(struct edac_device_ctl_info *, char *);
@@ -81145,6 +111763,79 @@ struct edac_pci_dev_attribute {
 
 typedef void (*pci_parity_check_fn_t)(struct pci_dev *);
 
+struct ghes_pvt {
+	struct mem_ctl_info *mci;
+	char other_detail[400];
+	char msg[80];
+};
+
+struct ghes_hw_desc {
+	int num_dimms;
+	struct dimm_info *dimms;
+};
+
+struct memdev_dmi_entry {
+	u8 type;
+	u8 length;
+	u16 handle;
+	u16 phys_mem_array_handle;
+	u16 mem_err_info_handle;
+	u16 total_width;
+	u16 data_width;
+	u16 size;
+	u8 form_factor;
+	u8 device_set;
+	u8 device_locator;
+	u8 bank_locator;
+	u8 memory_type;
+	u16 type_detail;
+	u16 speed;
+	u8 manufacturer;
+	u8 serial_number;
+	u8 asset_tag;
+	u8 part_number;
+	u8 attributes;
+	u32 extended_size;
+	u16 conf_mem_clk_speed;
+} __attribute__((packed));
+
+struct eisa_device_id {
+	char sig[8];
+	kernel_ulong_t driver_data;
+};
+
+struct eisa_device {
+	struct eisa_device_id id;
+	int slot;
+	int state;
+	long unsigned int base_addr;
+	struct resource res[4];
+	u64 dma_mask;
+	struct device dev;
+	char pretty_name[50];
+};
+
+struct eisa_driver {
+	const struct eisa_device_id *id_table;
+	struct device_driver driver;
+};
+
+struct eisa_root_device {
+	struct device *dev;
+	struct resource *res;
+	long unsigned int bus_base_addr;
+	int slots;
+	int force_probe;
+	u64 dma_mask;
+	int bus_nr;
+	struct resource eisa_root_res;
+};
+
+struct eisa_device_info {
+	struct eisa_device_id id;
+	char name[50];
+};
+
 enum opp_table_access {
 	OPP_TABLE_ACCESS_UNKNOWN = 0,
 	OPP_TABLE_ACCESS_EXCLUSIVE = 1,
@@ -81153,12 +111844,13 @@ enum opp_table_access {
 
 struct icc_path;
 
-struct dev_pm_opp;
-
 struct dev_pm_set_opp_data;
 
+struct dev_pm_opp_supply;
+
 struct opp_table {
 	struct list_head node;
+	struct list_head lazy;
 	struct blocking_notifier_head head;
 	struct list_head dev_list;
 	struct list_head opp_list;
@@ -81169,6 +111861,8 @@ struct opp_table {
 	unsigned int voltage_tolerance_v1;
 	unsigned int parsed_static_opps;
 	enum opp_table_access shared_opp;
+	long unsigned int current_rate;
+	struct dev_pm_opp *current_opp;
 	struct dev_pm_opp *suspend_opp;
 	struct mutex genpd_virt_dev_lock;
 	struct device **genpd_virt_devs;
@@ -81186,13 +111880,12 @@ struct opp_table {
 	bool genpd_performance_state;
 	bool is_genpd;
 	int (*set_opp)(struct dev_pm_set_opp_data *);
+	struct dev_pm_opp_supply *sod_supplies;
 	struct dev_pm_set_opp_data *set_opp_data;
 	struct dentry *dentry;
 	char dentry_name[255];
 };
 
-struct dev_pm_opp_supply;
-
 struct dev_pm_opp_icc_bw;
 
 struct dev_pm_opp {
@@ -81202,6 +111895,7 @@ struct dev_pm_opp {
 	bool dynamic;
 	bool turbo;
 	bool suspend;
+	bool removed;
 	unsigned int pstate;
 	long unsigned int rate;
 	unsigned int level;
@@ -81212,6 +111906,7 @@ struct dev_pm_opp {
 	struct opp_table *opp_table;
 	struct device_node *np;
 	struct dentry *dentry;
+	const char *of_name;
 };
 
 enum dev_pm_opp_event {
@@ -81278,7 +111973,7 @@ struct cpufreq_driver {
 	int (*target)(struct cpufreq_policy *, unsigned int, unsigned int);
 	int (*target_index)(struct cpufreq_policy *, unsigned int);
 	unsigned int (*fast_switch)(struct cpufreq_policy *, unsigned int);
-	unsigned int (*resolve_freq)(struct cpufreq_policy *, unsigned int);
+	void (*adjust_perf)(unsigned int, long unsigned int, long unsigned int, long unsigned int);
 	unsigned int (*get_intermediate)(struct cpufreq_policy *, unsigned int);
 	int (*target_intermediate)(struct cpufreq_policy *, unsigned int);
 	unsigned int (*get)(unsigned int);
@@ -81287,13 +111982,12 @@ struct cpufreq_driver {
 	int (*online)(struct cpufreq_policy *);
 	int (*offline)(struct cpufreq_policy *);
 	int (*exit)(struct cpufreq_policy *);
-	void (*stop_cpu)(struct cpufreq_policy *);
 	int (*suspend)(struct cpufreq_policy *);
 	int (*resume)(struct cpufreq_policy *);
-	void (*ready)(struct cpufreq_policy *);
 	struct freq_attr **attr;
 	bool boost_enabled;
 	int (*set_boost)(struct cpufreq_policy *, int);
+	void (*register_em)(struct cpufreq_policy *);
 };
 
 struct cpufreq_stats {
@@ -81309,8 +112003,16 @@ struct cpufreq_stats {
 	long long unsigned int reset_time;
 };
 
+enum {
+	OD_NORMAL_SAMPLE = 0,
+	OD_SUB_SAMPLE = 1,
+};
+
+struct dbs_governor;
+
 struct dbs_data {
 	struct gov_attr_set attr_set;
+	struct dbs_governor *gov;
 	void *tuners;
 	unsigned int ignore_nice_load;
 	unsigned int sampling_rate;
@@ -81319,6 +112021,20 @@ struct dbs_data {
 	unsigned int io_is_busy;
 };
 
+struct policy_dbs_info;
+
+struct dbs_governor {
+	struct cpufreq_governor gov;
+	struct kobj_type kobj_type;
+	struct dbs_data *gdbs_data;
+	unsigned int (*gov_dbs_update)(struct cpufreq_policy *);
+	struct policy_dbs_info * (*alloc)(void);
+	void (*free)(struct policy_dbs_info *);
+	int (*init)(struct dbs_data *);
+	void (*exit)(struct dbs_data *);
+	void (*start)(struct cpufreq_policy *);
+};
+
 struct policy_dbs_info {
 	struct cpufreq_policy *policy;
 	struct mutex update_mutex;
@@ -81335,6 +112051,33 @@ struct policy_dbs_info {
 	bool work_in_progress;
 };
 
+struct od_ops {
+	unsigned int (*powersave_bias_target)(struct cpufreq_policy *, unsigned int, unsigned int);
+};
+
+struct od_policy_dbs_info {
+	struct policy_dbs_info policy_dbs;
+	unsigned int freq_lo;
+	unsigned int freq_lo_delay_us;
+	unsigned int freq_hi_delay_us;
+	unsigned int sample_type: 1;
+};
+
+struct od_dbs_tuners {
+	unsigned int powersave_bias;
+};
+
+struct cs_policy_dbs_info {
+	struct policy_dbs_info policy_dbs;
+	unsigned int down_skip;
+	unsigned int requested_freq;
+};
+
+struct cs_dbs_tuners {
+	unsigned int down_threshold;
+	unsigned int freq_step;
+};
+
 struct cpu_dbs_info {
 	u64 prev_cpu_idle;
 	u64 prev_update_time;
@@ -81344,16 +112087,171 @@ struct cpu_dbs_info {
 	struct policy_dbs_info *policy_dbs;
 };
 
-struct dbs_governor {
-	struct cpufreq_governor gov;
-	struct kobj_type kobj_type;
-	struct dbs_data *gdbs_data;
-	unsigned int (*gov_dbs_update)(struct cpufreq_policy *);
-	struct policy_dbs_info * (*alloc)();
-	void (*free)(struct policy_dbs_info *);
-	int (*init)(struct dbs_data *);
-	void (*exit)(struct dbs_data *);
-	void (*start)(struct cpufreq_policy *);
+enum {
+	UNDEFINED_CAPABLE = 0,
+	SYSTEM_INTEL_MSR_CAPABLE = 1,
+	SYSTEM_AMD_MSR_CAPABLE = 2,
+	SYSTEM_IO_CAPABLE = 3,
+};
+
+struct acpi_cpufreq_data {
+	unsigned int resume;
+	unsigned int cpu_feature;
+	unsigned int acpi_perf_cpu;
+	cpumask_var_t freqdomain_cpus;
+	void (*cpu_freq_write)(struct acpi_pct_register *, u32);
+	u32 (*cpu_freq_read)(struct acpi_pct_register *);
+};
+
+struct drv_cmd {
+	struct acpi_pct_register *reg;
+	u32 val;
+	union {
+		void (*write)(struct acpi_pct_register *, u32);
+		u32 (*read)(struct acpi_pct_register *);
+	} func;
+};
+
+struct amd_cpudata {
+	int cpu;
+	struct freq_qos_request req[2];
+	u64 cppc_req_cached;
+	u32 highest_perf;
+	u32 nominal_perf;
+	u32 lowest_nonlinear_perf;
+	u32 lowest_perf;
+	u32 max_freq;
+	u32 min_freq;
+	u32 nominal_freq;
+	u32 lowest_nonlinear_freq;
+	bool boost_supported;
+};
+
+struct trace_event_raw_amd_pstate_perf {
+	struct trace_entry ent;
+	long unsigned int min_perf;
+	long unsigned int target_perf;
+	long unsigned int capacity;
+	unsigned int cpu_id;
+	bool changed;
+	bool fast_switch;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_amd_pstate_perf {};
+
+typedef void (*btf_trace_amd_pstate_perf)(void *, long unsigned int, long unsigned int, long unsigned int, unsigned int, bool, bool);
+
+struct powernow_k8_data {
+	unsigned int cpu;
+	u32 numps;
+	u32 batps;
+	u32 rvo;
+	u32 irt;
+	u32 vidmvs;
+	u32 vstable;
+	u32 plllock;
+	u32 exttype;
+	u32 currvid;
+	u32 currfid;
+	struct cpufreq_frequency_table *powernow_table;
+	struct acpi_processor_performance acpi_data;
+	struct cpumask *available_cores;
+};
+
+struct psb_s {
+	u8 signature[10];
+	u8 tableversion;
+	u8 flags1;
+	u16 vstable;
+	u8 flags2;
+	u8 num_tables;
+	u32 cpuid;
+	u8 plllocktime;
+	u8 maxfid;
+	u8 maxvid;
+	u8 numps;
+};
+
+struct pst_s {
+	u8 fid;
+	u8 vid;
+};
+
+struct powernowk8_target_arg {
+	struct cpufreq_policy *pol;
+	unsigned int newstate;
+};
+
+struct init_on_cpu {
+	struct powernow_k8_data *data;
+	int rc;
+};
+
+struct pcc_register_resource {
+	u8 descriptor;
+	u16 length;
+	u8 space_id;
+	u8 bit_width;
+	u8 bit_offset;
+	u8 access_size;
+	u64 address;
+} __attribute__((packed));
+
+struct pcc_memory_resource {
+	u8 descriptor;
+	u16 length;
+	u8 space_id;
+	u8 resource_usage;
+	u8 type_specific;
+	u64 granularity;
+	u64 minimum;
+	u64 maximum;
+	u64 translation_offset;
+	u64 address_length;
+} __attribute__((packed));
+
+struct pcc_header {
+	u32 signature;
+	u16 length;
+	u8 major;
+	u8 minor;
+	u32 features;
+	u16 command;
+	u16 status;
+	u32 latency;
+	u32 minimum_time;
+	u32 maximum_time;
+	u32 nominal;
+	u32 throttled_frequency;
+	u32 minimum_frequency;
+};
+
+struct pcc_cpu {
+	u32 input_offset;
+	u32 output_offset;
+};
+
+struct cpu_id {
+	__u8 x86;
+	__u8 x86_model;
+	__u8 x86_stepping;
+};
+
+enum {
+	CPU_BANIAS = 0,
+	CPU_DOTHAN_A1 = 1,
+	CPU_DOTHAN_A2 = 2,
+	CPU_DOTHAN_B0 = 3,
+	CPU_MP4HT_D0 = 4,
+	CPU_MP4HT_E0 = 5,
+};
+
+struct cpu_model {
+	const struct cpu_id *cpu_id;
+	const char *model_name;
+	unsigned int max_freq;
+	struct cpufreq_frequency_table *op_points;
 };
 
 enum acpi_preferred_pm_profiles {
@@ -81382,8 +112280,10 @@ struct pstate_data {
 	int min_pstate;
 	int max_pstate;
 	int max_pstate_physical;
+	int perf_ctl_scaling;
 	int scaling;
 	int turbo_pstate;
+	unsigned int min_freq;
 	unsigned int max_freq;
 	unsigned int turbo_freq;
 };
@@ -81436,16 +112336,25 @@ struct cpudata {
 };
 
 struct pstate_funcs {
-	int (*get_max)();
-	int (*get_max_physical)();
-	int (*get_min)();
-	int (*get_turbo)();
-	int (*get_scaling)();
-	int (*get_aperf_mperf_shift)();
+	int (*get_max)(int);
+	int (*get_max_physical)(int);
+	int (*get_min)(int);
+	int (*get_turbo)(int);
+	int (*get_scaling)(void);
+	int (*get_cpu_scaling)(int);
+	int (*get_aperf_mperf_shift)(void);
 	u64 (*get_val)(struct cpudata *, int);
 	void (*get_vid)(struct cpudata *);
 };
 
+enum energy_perf_value_index {
+	EPP_INDEX_DEFAULT = 0,
+	EPP_INDEX_PERFORMANCE = 1,
+	EPP_INDEX_BALANCE_PERFORMANCE = 2,
+	EPP_INDEX_BALANCE_POWERSAVE = 3,
+	EPP_INDEX_POWERSAVE = 4,
+};
+
 enum {
 	PSS = 0,
 	PPC = 1,
@@ -81514,7 +112423,697 @@ struct menu_device {
 	int interval_ptr;
 };
 
-struct pci_dev;
+struct teo_bin {
+	unsigned int intercepts;
+	unsigned int hits;
+	unsigned int recent;
+};
+
+struct teo_cpu {
+	s64 time_span_ns;
+	s64 sleep_length_ns;
+	struct teo_bin state_bins[10];
+	unsigned int total;
+	int next_recent_idx;
+	int recent_idx[9];
+};
+
+struct mmc_cid {
+	unsigned int manfid;
+	char prod_name[8];
+	unsigned char prv;
+	unsigned int serial;
+	short unsigned int oemid;
+	short unsigned int year;
+	unsigned char hwrev;
+	unsigned char fwrev;
+	unsigned char month;
+};
+
+struct mmc_csd {
+	unsigned char structure;
+	unsigned char mmca_vsn;
+	short unsigned int cmdclass;
+	short unsigned int taac_clks;
+	unsigned int taac_ns;
+	unsigned int c_size;
+	unsigned int r2w_factor;
+	unsigned int max_dtr;
+	unsigned int erase_size;
+	unsigned int read_blkbits;
+	unsigned int write_blkbits;
+	unsigned int capacity;
+	unsigned int read_partial: 1;
+	unsigned int read_misalign: 1;
+	unsigned int write_partial: 1;
+	unsigned int write_misalign: 1;
+	unsigned int dsr_imp: 1;
+};
+
+struct mmc_ext_csd {
+	u8 rev;
+	u8 erase_group_def;
+	u8 sec_feature_support;
+	u8 rel_sectors;
+	u8 rel_param;
+	bool enhanced_rpmb_supported;
+	u8 part_config;
+	u8 cache_ctrl;
+	u8 rst_n_function;
+	u8 max_packed_writes;
+	u8 max_packed_reads;
+	u8 packed_event_en;
+	unsigned int part_time;
+	unsigned int sa_timeout;
+	unsigned int generic_cmd6_time;
+	unsigned int power_off_longtime;
+	u8 power_off_notification;
+	unsigned int hs_max_dtr;
+	unsigned int hs200_max_dtr;
+	unsigned int sectors;
+	unsigned int hc_erase_size;
+	unsigned int hc_erase_timeout;
+	unsigned int sec_trim_mult;
+	unsigned int sec_erase_mult;
+	unsigned int trim_timeout;
+	bool partition_setting_completed;
+	long long unsigned int enhanced_area_offset;
+	unsigned int enhanced_area_size;
+	unsigned int cache_size;
+	bool hpi_en;
+	bool hpi;
+	unsigned int hpi_cmd;
+	bool bkops;
+	bool man_bkops_en;
+	bool auto_bkops_en;
+	unsigned int data_sector_size;
+	unsigned int data_tag_unit_size;
+	unsigned int boot_ro_lock;
+	bool boot_ro_lockable;
+	bool ffu_capable;
+	bool cmdq_en;
+	bool cmdq_support;
+	unsigned int cmdq_depth;
+	u8 fwrev[8];
+	u8 raw_exception_status;
+	u8 raw_partition_support;
+	u8 raw_rpmb_size_mult;
+	u8 raw_erased_mem_count;
+	u8 strobe_support;
+	u8 raw_ext_csd_structure;
+	u8 raw_card_type;
+	u8 raw_driver_strength;
+	u8 out_of_int_time;
+	u8 raw_pwr_cl_52_195;
+	u8 raw_pwr_cl_26_195;
+	u8 raw_pwr_cl_52_360;
+	u8 raw_pwr_cl_26_360;
+	u8 raw_s_a_timeout;
+	u8 raw_hc_erase_gap_size;
+	u8 raw_erase_timeout_mult;
+	u8 raw_hc_erase_grp_size;
+	u8 raw_boot_mult;
+	u8 raw_sec_trim_mult;
+	u8 raw_sec_erase_mult;
+	u8 raw_sec_feature_support;
+	u8 raw_trim_mult;
+	u8 raw_pwr_cl_200_195;
+	u8 raw_pwr_cl_200_360;
+	u8 raw_pwr_cl_ddr_52_195;
+	u8 raw_pwr_cl_ddr_52_360;
+	u8 raw_pwr_cl_ddr_200_360;
+	u8 raw_bkops_status;
+	u8 raw_sectors[4];
+	u8 pre_eol_info;
+	u8 device_life_time_est_typ_a;
+	u8 device_life_time_est_typ_b;
+	unsigned int feature_support;
+};
+
+struct sd_scr {
+	unsigned char sda_vsn;
+	unsigned char sda_spec3;
+	unsigned char sda_spec4;
+	unsigned char sda_specx;
+	unsigned char bus_widths;
+	unsigned char cmds;
+};
+
+struct sd_ssr {
+	unsigned int au;
+	unsigned int erase_timeout;
+	unsigned int erase_offset;
+};
+
+struct sd_switch_caps {
+	unsigned int hs_max_dtr;
+	unsigned int uhs_max_dtr;
+	unsigned int sd3_bus_mode;
+	unsigned int sd3_drv_type;
+	unsigned int sd3_curr_limit;
+};
+
+struct sd_ext_reg {
+	u8 fno;
+	u8 page;
+	u16 offset;
+	u8 rev;
+	u8 feature_enabled;
+	u8 feature_support;
+};
+
+struct sdio_cccr {
+	unsigned int sdio_vsn;
+	unsigned int sd_vsn;
+	unsigned int multi_block: 1;
+	unsigned int low_speed: 1;
+	unsigned int wide_bus: 1;
+	unsigned int high_power: 1;
+	unsigned int high_speed: 1;
+	unsigned int disable_cd: 1;
+};
+
+struct sdio_cis {
+	short unsigned int vendor;
+	short unsigned int device;
+	short unsigned int blksize;
+	unsigned int max_dtr;
+};
+
+struct mmc_part {
+	u64 size;
+	unsigned int part_cfg;
+	char name[20];
+	bool force_ro;
+	unsigned int area_type;
+};
+
+struct mmc_host;
+
+struct sdio_func;
+
+struct sdio_func_tuple;
+
+struct mmc_card {
+	struct mmc_host *host;
+	struct device dev;
+	u32 ocr;
+	unsigned int rca;
+	unsigned int type;
+	unsigned int state;
+	unsigned int quirks;
+	unsigned int quirk_max_rate;
+	bool reenable_cmdq;
+	unsigned int erase_size;
+	unsigned int erase_shift;
+	unsigned int pref_erase;
+	unsigned int eg_boundary;
+	unsigned int erase_arg;
+	u8 erased_byte;
+	u32 raw_cid[4];
+	u32 raw_csd[4];
+	u32 raw_scr[2];
+	u32 raw_ssr[16];
+	struct mmc_cid cid;
+	struct mmc_csd csd;
+	struct mmc_ext_csd ext_csd;
+	struct sd_scr scr;
+	struct sd_ssr ssr;
+	struct sd_switch_caps sw_caps;
+	struct sd_ext_reg ext_power;
+	struct sd_ext_reg ext_perf;
+	unsigned int sdio_funcs;
+	atomic_t sdio_funcs_probed;
+	struct sdio_cccr cccr;
+	struct sdio_cis cis;
+	struct sdio_func *sdio_func[7];
+	struct sdio_func *sdio_single_irq;
+	u8 major_rev;
+	u8 minor_rev;
+	unsigned int num_info;
+	const char **info;
+	struct sdio_func_tuple *tuples;
+	unsigned int sd_bus_speed;
+	unsigned int mmc_avail_type;
+	unsigned int drive_strength;
+	struct dentry *debugfs_root;
+	struct mmc_part part[7];
+	unsigned int nr_parts;
+	struct workqueue_struct *complete_wq;
+};
+
+typedef unsigned int mmc_pm_flag_t;
+
+struct mmc_ios {
+	unsigned int clock;
+	short unsigned int vdd;
+	unsigned int power_delay_ms;
+	unsigned char bus_mode;
+	unsigned char chip_select;
+	unsigned char power_mode;
+	unsigned char bus_width;
+	unsigned char timing;
+	unsigned char signal_voltage;
+	unsigned char drv_type;
+	bool enhanced_strobe;
+};
+
+struct mmc_ctx {
+	struct task_struct *task;
+};
+
+struct mmc_slot {
+	int cd_irq;
+	bool cd_wake_enabled;
+	void *handler_priv;
+};
+
+struct mmc_supply {
+	struct regulator *vmmc;
+	struct regulator *vqmmc;
+};
+
+struct mmc_host_ops;
+
+struct mmc_pwrseq;
+
+struct mmc_bus_ops;
+
+struct mmc_request;
+
+struct mmc_cqe_ops;
+
+struct mmc_host {
+	struct device *parent;
+	struct device class_dev;
+	int index;
+	const struct mmc_host_ops *ops;
+	struct mmc_pwrseq *pwrseq;
+	unsigned int f_min;
+	unsigned int f_max;
+	unsigned int f_init;
+	u32 ocr_avail;
+	u32 ocr_avail_sdio;
+	u32 ocr_avail_sd;
+	u32 ocr_avail_mmc;
+	struct wakeup_source *ws;
+	u32 max_current_330;
+	u32 max_current_300;
+	u32 max_current_180;
+	u32 caps;
+	u32 caps2;
+	int fixed_drv_type;
+	mmc_pm_flag_t pm_caps;
+	unsigned int max_seg_size;
+	short unsigned int max_segs;
+	short unsigned int unused;
+	unsigned int max_req_size;
+	unsigned int max_blk_size;
+	unsigned int max_blk_count;
+	unsigned int max_busy_timeout;
+	spinlock_t lock;
+	struct mmc_ios ios;
+	unsigned int use_spi_crc: 1;
+	unsigned int claimed: 1;
+	unsigned int doing_init_tune: 1;
+	unsigned int can_retune: 1;
+	unsigned int doing_retune: 1;
+	unsigned int retune_now: 1;
+	unsigned int retune_paused: 1;
+	unsigned int retune_crc_disable: 1;
+	unsigned int can_dma_map_merge: 1;
+	unsigned int vqmmc_enabled: 1;
+	int rescan_disable;
+	int rescan_entered;
+	int need_retune;
+	int hold_retune;
+	unsigned int retune_period;
+	struct timer_list retune_timer;
+	bool trigger_card_event;
+	struct mmc_card *card;
+	wait_queue_head_t wq;
+	struct mmc_ctx *claimer;
+	int claim_cnt;
+	struct mmc_ctx default_ctx;
+	struct delayed_work detect;
+	int detect_change;
+	struct mmc_slot slot;
+	const struct mmc_bus_ops *bus_ops;
+	unsigned int sdio_irqs;
+	struct task_struct *sdio_irq_thread;
+	struct delayed_work sdio_irq_work;
+	bool sdio_irq_pending;
+	atomic_t sdio_irq_thread_abort;
+	mmc_pm_flag_t pm_flags;
+	struct led_trigger *led;
+	bool regulator_enabled;
+	struct mmc_supply supply;
+	struct dentry *debugfs_root;
+	struct mmc_request *ongoing_mrq;
+	unsigned int actual_clock;
+	unsigned int slotno;
+	int dsr_req;
+	u32 dsr;
+	const struct mmc_cqe_ops *cqe_ops;
+	void *cqe_private;
+	int cqe_qdepth;
+	bool cqe_enabled;
+	bool cqe_on;
+	struct blk_keyslot_manager ksm;
+	bool hsq_enabled;
+	long: 64;
+	long unsigned int private[0];
+};
+
+struct mmc_data;
+
+struct mmc_command {
+	u32 opcode;
+	u32 arg;
+	u32 resp[4];
+	unsigned int flags;
+	unsigned int retries;
+	int error;
+	unsigned int busy_timeout;
+	struct mmc_data *data;
+	struct mmc_request *mrq;
+};
+
+struct mmc_data {
+	unsigned int timeout_ns;
+	unsigned int timeout_clks;
+	unsigned int blksz;
+	unsigned int blocks;
+	unsigned int blk_addr;
+	int error;
+	unsigned int flags;
+	unsigned int bytes_xfered;
+	struct mmc_command *stop;
+	struct mmc_request *mrq;
+	unsigned int sg_len;
+	int sg_count;
+	struct scatterlist *sg;
+	s32 host_cookie;
+};
+
+struct mmc_request {
+	struct mmc_command *sbc;
+	struct mmc_command *cmd;
+	struct mmc_data *data;
+	struct mmc_command *stop;
+	struct completion completion;
+	struct completion cmd_completion;
+	void (*done)(struct mmc_request *);
+	void (*recovery_notifier)(struct mmc_request *);
+	struct mmc_host *host;
+	bool cap_cmd_during_tfr;
+	int tag;
+	const struct bio_crypt_ctx *crypto_ctx;
+	int crypto_key_slot;
+};
+
+struct mmc_host_ops {
+	void (*post_req)(struct mmc_host *, struct mmc_request *, int);
+	void (*pre_req)(struct mmc_host *, struct mmc_request *);
+	void (*request)(struct mmc_host *, struct mmc_request *);
+	int (*request_atomic)(struct mmc_host *, struct mmc_request *);
+	void (*set_ios)(struct mmc_host *, struct mmc_ios *);
+	int (*get_ro)(struct mmc_host *);
+	int (*get_cd)(struct mmc_host *);
+	void (*enable_sdio_irq)(struct mmc_host *, int);
+	void (*ack_sdio_irq)(struct mmc_host *);
+	void (*init_card)(struct mmc_host *, struct mmc_card *);
+	int (*start_signal_voltage_switch)(struct mmc_host *, struct mmc_ios *);
+	int (*card_busy)(struct mmc_host *);
+	int (*execute_tuning)(struct mmc_host *, u32);
+	int (*prepare_hs400_tuning)(struct mmc_host *, struct mmc_ios *);
+	int (*hs400_prepare_ddr)(struct mmc_host *);
+	void (*hs400_downgrade)(struct mmc_host *);
+	void (*hs400_complete)(struct mmc_host *);
+	void (*hs400_enhanced_strobe)(struct mmc_host *, struct mmc_ios *);
+	int (*select_drive_strength)(struct mmc_card *, unsigned int, int, int, int *);
+	void (*hw_reset)(struct mmc_host *);
+	void (*card_event)(struct mmc_host *);
+	int (*multi_io_quirk)(struct mmc_card *, unsigned int, int);
+	int (*init_sd_express)(struct mmc_host *, struct mmc_ios *);
+};
+
+struct mmc_cqe_ops {
+	int (*cqe_enable)(struct mmc_host *, struct mmc_card *);
+	void (*cqe_disable)(struct mmc_host *);
+	int (*cqe_request)(struct mmc_host *, struct mmc_request *);
+	void (*cqe_post_req)(struct mmc_host *, struct mmc_request *);
+	void (*cqe_off)(struct mmc_host *);
+	int (*cqe_wait_for_idle)(struct mmc_host *);
+	bool (*cqe_timeout)(struct mmc_host *, struct mmc_request *, bool *);
+	void (*cqe_recovery_start)(struct mmc_host *);
+	void (*cqe_recovery_finish)(struct mmc_host *);
+};
+
+struct mmc_pwrseq_ops;
+
+struct mmc_pwrseq {
+	const struct mmc_pwrseq_ops *ops;
+	struct device *dev;
+	struct list_head pwrseq_node;
+	struct module *owner;
+};
+
+struct mmc_bus_ops {
+	void (*remove)(struct mmc_host *);
+	void (*detect)(struct mmc_host *);
+	int (*pre_suspend)(struct mmc_host *);
+	int (*suspend)(struct mmc_host *);
+	int (*resume)(struct mmc_host *);
+	int (*runtime_suspend)(struct mmc_host *);
+	int (*runtime_resume)(struct mmc_host *);
+	int (*alive)(struct mmc_host *);
+	int (*shutdown)(struct mmc_host *);
+	int (*hw_reset)(struct mmc_host *);
+	int (*sw_reset)(struct mmc_host *);
+	bool (*cache_enabled)(struct mmc_host *);
+	int (*flush_cache)(struct mmc_host *);
+};
+
+struct trace_event_raw_mmc_request_start {
+	struct trace_entry ent;
+	u32 cmd_opcode;
+	u32 cmd_arg;
+	unsigned int cmd_flags;
+	unsigned int cmd_retries;
+	u32 stop_opcode;
+	u32 stop_arg;
+	unsigned int stop_flags;
+	unsigned int stop_retries;
+	u32 sbc_opcode;
+	u32 sbc_arg;
+	unsigned int sbc_flags;
+	unsigned int sbc_retries;
+	unsigned int blocks;
+	unsigned int blk_addr;
+	unsigned int blksz;
+	unsigned int data_flags;
+	int tag;
+	unsigned int can_retune;
+	unsigned int doing_retune;
+	unsigned int retune_now;
+	int need_retune;
+	int hold_retune;
+	unsigned int retune_period;
+	struct mmc_request *mrq;
+	u32 __data_loc_name;
+	char __data[0];
+};
+
+struct trace_event_raw_mmc_request_done {
+	struct trace_entry ent;
+	u32 cmd_opcode;
+	int cmd_err;
+	u32 cmd_resp[4];
+	unsigned int cmd_retries;
+	u32 stop_opcode;
+	int stop_err;
+	u32 stop_resp[4];
+	unsigned int stop_retries;
+	u32 sbc_opcode;
+	int sbc_err;
+	u32 sbc_resp[4];
+	unsigned int sbc_retries;
+	unsigned int bytes_xfered;
+	int data_err;
+	int tag;
+	unsigned int can_retune;
+	unsigned int doing_retune;
+	unsigned int retune_now;
+	int need_retune;
+	int hold_retune;
+	unsigned int retune_period;
+	struct mmc_request *mrq;
+	u32 __data_loc_name;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_mmc_request_start {
+	u32 name;
+};
+
+struct trace_event_data_offsets_mmc_request_done {
+	u32 name;
+};
+
+typedef void (*btf_trace_mmc_request_start)(void *, struct mmc_host *, struct mmc_request *);
+
+typedef void (*btf_trace_mmc_request_done)(void *, struct mmc_host *, struct mmc_request *);
+
+struct mmc_pwrseq_ops {
+	void (*pre_power_on)(struct mmc_host *);
+	void (*post_power_on)(struct mmc_host *);
+	void (*power_off)(struct mmc_host *);
+	void (*reset)(struct mmc_host *);
+};
+
+enum mmc_busy_cmd {
+	MMC_BUSY_CMD6 = 0,
+	MMC_BUSY_ERASE = 1,
+	MMC_BUSY_HPI = 2,
+	MMC_BUSY_EXTR_SINGLE = 3,
+	MMC_BUSY_IO = 4,
+};
+
+struct mmc_driver {
+	struct device_driver drv;
+	int (*probe)(struct mmc_card *);
+	void (*remove)(struct mmc_card *);
+	void (*shutdown)(struct mmc_card *);
+};
+
+struct mmc_clk_phase {
+	bool valid;
+	u16 in_deg;
+	u16 out_deg;
+};
+
+struct mmc_clk_phase_map {
+	struct mmc_clk_phase phase[11];
+};
+
+struct mmc_fixup {
+	const char *name;
+	u64 rev_start;
+	u64 rev_end;
+	unsigned int manfid;
+	short unsigned int oemid;
+	u16 cis_vendor;
+	u16 cis_device;
+	unsigned int ext_csd_rev;
+	void (*vendor_fixup)(struct mmc_card *, int);
+	int data;
+};
+
+struct mmc_busy_data {
+	struct mmc_card *card;
+	bool retry_crc_err;
+	enum mmc_busy_cmd busy_cmd;
+};
+
+struct sd_busy_data {
+	struct mmc_card *card;
+	u8 *reg_buf;
+};
+
+typedef void sdio_irq_handler_t(struct sdio_func *);
+
+struct sdio_func {
+	struct mmc_card *card;
+	struct device dev;
+	sdio_irq_handler_t *irq_handler;
+	unsigned int num;
+	unsigned char class;
+	short unsigned int vendor;
+	short unsigned int device;
+	unsigned int max_blksize;
+	unsigned int cur_blksize;
+	unsigned int enable_timeout;
+	unsigned int state;
+	u8 *tmpbuf;
+	u8 major_rev;
+	u8 minor_rev;
+	unsigned int num_info;
+	const char **info;
+	struct sdio_func_tuple *tuples;
+};
+
+struct sdio_func_tuple {
+	struct sdio_func_tuple *next;
+	unsigned char code;
+	unsigned char size;
+	unsigned char data[0];
+};
+
+struct sdio_device_id {
+	__u8 class;
+	__u16 vendor;
+	__u16 device;
+	kernel_ulong_t driver_data;
+};
+
+struct sdio_driver {
+	char *name;
+	const struct sdio_device_id *id_table;
+	int (*probe)(struct sdio_func *, const struct sdio_device_id *);
+	void (*remove)(struct sdio_func *);
+	struct device_driver drv;
+};
+
+typedef int tpl_parse_t(struct mmc_card *, struct sdio_func *, const unsigned char *, unsigned int);
+
+struct cis_tpl {
+	unsigned char code;
+	unsigned char min_size;
+	tpl_parse_t *parse;
+};
+
+struct mmc_gpio {
+	struct gpio_desc *ro_gpio;
+	struct gpio_desc *cd_gpio;
+	irqreturn_t (*cd_gpio_isr)(int, void *);
+	char *ro_label;
+	char *cd_label;
+	u32 cd_debounce_delay_ms;
+};
+
+enum mmc_issue_type {
+	MMC_ISSUE_SYNC = 0,
+	MMC_ISSUE_DCMD = 1,
+	MMC_ISSUE_ASYNC = 2,
+	MMC_ISSUE_MAX = 3,
+};
+
+struct mmc_blk_request {
+	struct mmc_request mrq;
+	struct mmc_command sbc;
+	struct mmc_command cmd;
+	struct mmc_command stop;
+	struct mmc_data data;
+};
+
+enum mmc_drv_op {
+	MMC_DRV_OP_IOCTL = 0,
+	MMC_DRV_OP_IOCTL_RPMB = 1,
+	MMC_DRV_OP_BOOT_WP = 2,
+	MMC_DRV_OP_GET_CARD_STATUS = 3,
+	MMC_DRV_OP_GET_EXT_CSD = 4,
+};
+
+struct mmc_queue_req {
+	struct mmc_blk_request brq;
+	struct scatterlist *sg;
+	enum mmc_drv_op drv_op;
+	int drv_op_result;
+	void *drv_op_data;
+	unsigned int ioc_count;
+	int retries;
+};
 
 struct sdhci_pci_data {
 	struct pci_dev *pdev;
@@ -81525,6 +113124,12 @@ struct sdhci_pci_data {
 	void (*cleanup)(struct sdhci_pci_data *);
 };
 
+enum led_default_state {
+	LEDS_DEFSTATE_OFF = 0,
+	LEDS_DEFSTATE_ON = 1,
+	LEDS_DEFSTATE_KEEP = 2,
+};
+
 struct led_init_data {
 	struct fwnode_handle *fwnode;
 	const char *default_label;
@@ -81555,53 +113160,6 @@ struct led_trigger_cpu {
 	struct led_trigger *_trig;
 };
 
-enum dmi_entry_type {
-	DMI_ENTRY_BIOS = 0,
-	DMI_ENTRY_SYSTEM = 1,
-	DMI_ENTRY_BASEBOARD = 2,
-	DMI_ENTRY_CHASSIS = 3,
-	DMI_ENTRY_PROCESSOR = 4,
-	DMI_ENTRY_MEM_CONTROLLER = 5,
-	DMI_ENTRY_MEM_MODULE = 6,
-	DMI_ENTRY_CACHE = 7,
-	DMI_ENTRY_PORT_CONNECTOR = 8,
-	DMI_ENTRY_SYSTEM_SLOT = 9,
-	DMI_ENTRY_ONBOARD_DEVICE = 10,
-	DMI_ENTRY_OEMSTRINGS = 11,
-	DMI_ENTRY_SYSCONF = 12,
-	DMI_ENTRY_BIOS_LANG = 13,
-	DMI_ENTRY_GROUP_ASSOC = 14,
-	DMI_ENTRY_SYSTEM_EVENT_LOG = 15,
-	DMI_ENTRY_PHYS_MEM_ARRAY = 16,
-	DMI_ENTRY_MEM_DEVICE = 17,
-	DMI_ENTRY_32_MEM_ERROR = 18,
-	DMI_ENTRY_MEM_ARRAY_MAPPED_ADDR = 19,
-	DMI_ENTRY_MEM_DEV_MAPPED_ADDR = 20,
-	DMI_ENTRY_BUILTIN_POINTING_DEV = 21,
-	DMI_ENTRY_PORTABLE_BATTERY = 22,
-	DMI_ENTRY_SYSTEM_RESET = 23,
-	DMI_ENTRY_HW_SECURITY = 24,
-	DMI_ENTRY_SYSTEM_POWER_CONTROLS = 25,
-	DMI_ENTRY_VOLTAGE_PROBE = 26,
-	DMI_ENTRY_COOLING_DEV = 27,
-	DMI_ENTRY_TEMP_PROBE = 28,
-	DMI_ENTRY_ELECTRICAL_CURRENT_PROBE = 29,
-	DMI_ENTRY_OOB_REMOTE_ACCESS = 30,
-	DMI_ENTRY_BIS_ENTRY = 31,
-	DMI_ENTRY_SYSTEM_BOOT = 32,
-	DMI_ENTRY_MGMT_DEV = 33,
-	DMI_ENTRY_MGMT_DEV_COMPONENT = 34,
-	DMI_ENTRY_MGMT_DEV_THRES = 35,
-	DMI_ENTRY_MEM_CHANNEL = 36,
-	DMI_ENTRY_IPMI_DEV = 37,
-	DMI_ENTRY_SYS_POWER_SUPPLY = 38,
-	DMI_ENTRY_ADDITIONAL = 39,
-	DMI_ENTRY_ONBOARD_DEV_EXT = 40,
-	DMI_ENTRY_MGMT_CONTROLLER_HOST = 41,
-	DMI_ENTRY_INACTIVE = 126,
-	DMI_ENTRY_END_OF_TABLE = 127,
-};
-
 struct dmi_memdev_info {
 	const char *device;
 	const char *bank;
@@ -81610,71 +113168,19 @@ struct dmi_memdev_info {
 	u8 type;
 };
 
-struct dmi_sysfs_entry {
-	struct dmi_header dh;
+struct edd_device {
+	unsigned int index;
+	unsigned int mbr_signature;
+	struct edd_info *info;
 	struct kobject kobj;
-	int instance;
-	int position;
-	struct list_head list;
-	struct kobject *child;
 };
 
-struct dmi_sysfs_attribute {
+struct edd_attribute {
 	struct attribute attr;
-	ssize_t (*show)(struct dmi_sysfs_entry *, char *);
+	ssize_t (*show)(struct edd_device *, char *);
+	int (*test)(struct edd_device *);
 };
 
-struct dmi_sysfs_mapped_attribute {
-	struct attribute attr;
-	ssize_t (*show)(struct dmi_sysfs_entry *, const struct dmi_header *, char *);
-};
-
-typedef ssize_t (*dmi_callback)(struct dmi_sysfs_entry *, const struct dmi_header *, void *);
-
-struct find_dmi_data {
-	struct dmi_sysfs_entry *entry;
-	dmi_callback callback;
-	void *private;
-	int instance_countdown;
-	ssize_t ret;
-};
-
-struct dmi_read_state {
-	char *buf;
-	loff_t pos;
-	size_t count;
-};
-
-struct dmi_entry_attr_show_data {
-	struct attribute *attr;
-	char *buf;
-};
-
-struct dmi_system_event_log {
-	struct dmi_header header;
-	u16 area_length;
-	u16 header_start_offset;
-	u16 data_start_offset;
-	u8 access_method;
-	u8 status;
-	u32 change_token;
-	union {
-		struct {
-			u16 index_addr;
-			u16 data_addr;
-		} io;
-		u32 phys_addr32;
-		u16 gpnv_handle;
-		u32 access_method_address;
-	};
-	u8 header_format;
-	u8 type_descriptors_supported_count;
-	u8 per_log_type_descriptor_length;
-	u8 supported_log_type_descriptos[0];
-} __attribute__((packed));
-
-typedef u8 (*sel_io_reader)(const struct dmi_system_event_log *, loff_t);
-
 struct dmi_device_attribute {
 	struct device_attribute dev_attr;
 	int field;
@@ -81685,11 +113191,6 @@ struct mafield {
 	int field;
 };
 
-struct acpi_table_ibft {
-	struct acpi_table_header header;
-	u8 reserved[12];
-};
-
 struct firmware_map_entry {
 	u64 start;
 	u64 end;
@@ -81703,6 +113204,13 @@ struct memmap_attribute {
 	ssize_t (*show)(struct firmware_map_entry *, char *);
 };
 
+struct simplefb_platform_data {
+	u32 width;
+	u32 height;
+	u32 stride;
+	const char *format;
+};
+
 struct bmp_header {
 	u16 id;
 	u32 size;
@@ -81710,19 +113218,6 @@ struct bmp_header {
 
 typedef efi_status_t efi_query_variable_store_t(u32, long unsigned int, bool);
 
-typedef struct {
-	efi_guid_t guid;
-	u32 table;
-} efi_config_table_32_t;
-
-typedef union {
-	struct {
-		efi_guid_t guid;
-		void *table;
-	};
-	efi_config_table_32_t mixed_mode;
-} efi_config_table_t;
-
 typedef struct {
 	u16 version;
 	u16 length;
@@ -81743,23 +113238,6 @@ struct efivars {
 	const struct efivar_operations *ops;
 };
 
-struct efi_variable {
-	efi_char16_t VariableName[512];
-	efi_guid_t VendorGuid;
-	long unsigned int DataSize;
-	__u8 Data[1024];
-	efi_status_t Status;
-	__u32 Attributes;
-} __attribute__((packed));
-
-struct efivar_entry {
-	struct efi_variable var;
-	struct list_head list;
-	struct kobject kobj;
-	bool scanning;
-	bool deleting;
-};
-
 struct linux_efi_random_seed {
 	u32 size;
 	u8 bits[0];
@@ -81775,6 +113253,12 @@ struct linux_efi_memreserve {
 	} entry[0];
 };
 
+struct efi_error_code {
+	efi_status_t status;
+	int errno;
+	const char *description;
+};
+
 struct efi_generic_dev_path {
 	u8 type;
 	u8 sub_type;
@@ -81795,92 +113279,6 @@ typedef struct {
 	efi_memory_desc_t entry[0];
 } efi_memory_attributes_table_t;
 
-typedef int (*efi_memattr_perm_setter)(struct mm_struct *, efi_memory_desc_t *);
-
-struct linux_efi_tpm_eventlog {
-	u32 size;
-	u32 final_events_preboot_size;
-	u8 version;
-	u8 log[0];
-};
-
-struct efi_tcg2_final_events_table {
-	u64 version;
-	u64 nr_events;
-	u8 events[0];
-};
-
-struct tpm_digest {
-	u16 alg_id;
-	u8 digest[64];
-};
-
-enum tpm_duration {
-	TPM_SHORT = 0,
-	TPM_MEDIUM = 1,
-	TPM_LONG = 2,
-	TPM_LONG_LONG = 3,
-	TPM_UNDEFINED = 4,
-	TPM_NUM_DURATIONS = 4,
-};
-
-enum tcpa_event_types {
-	PREBOOT = 0,
-	POST_CODE = 1,
-	UNUSED = 2,
-	NO_ACTION = 3,
-	SEPARATOR = 4,
-	ACTION = 5,
-	EVENT_TAG = 6,
-	SCRTM_CONTENTS = 7,
-	SCRTM_VERSION = 8,
-	CPU_MICROCODE = 9,
-	PLATFORM_CONFIG_FLAGS = 10,
-	TABLE_OF_DEVICES = 11,
-	COMPACT_HASH = 12,
-	IPL = 13,
-	IPL_PARTITION_DATA = 14,
-	NONHOST_CODE = 15,
-	NONHOST_CONFIG = 16,
-	NONHOST_INFO = 17,
-};
-
-struct tcg_efi_specid_event_algs {
-	u16 alg_id;
-	u16 digest_size;
-};
-
-struct tcg_efi_specid_event_head {
-	u8 signature[16];
-	u32 platform_class;
-	u8 spec_version_minor;
-	u8 spec_version_major;
-	u8 spec_errata;
-	u8 uintnsize;
-	u32 num_algs;
-	struct tcg_efi_specid_event_algs digest_sizes[0];
-};
-
-struct tcg_pcr_event {
-	u32 pcr_idx;
-	u32 event_type;
-	u8 digest[20];
-	u32 event_size;
-	u8 event[0];
-};
-
-struct tcg_event_field {
-	u32 event_size;
-	u8 event[0];
-};
-
-struct tcg_pcr_event2_head {
-	u32 pcr_idx;
-	u32 event_type;
-	u32 count;
-	struct tpm_digest digests[0];
-};
-
 typedef u64 efi_physical_addr_t;
 
 typedef struct {
@@ -81888,6 +113286,21 @@ typedef struct {
 	u64 data;
 } efi_capsule_block_desc_t;
 
+struct compat_efi_variable {
+	efi_char16_t VariableName[512];
+	efi_guid_t VendorGuid;
+	__u32 DataSize;
+	__u8 Data[1024];
+	__u32 Status;
+	__u32 Attributes;
+};
+
+struct efivar_attribute {
+	struct attribute attr;
+	ssize_t (*show)(struct efivar_entry *, char *);
+	ssize_t (*store)(struct efivar_entry *, const char *, size_t);
+};
+
 struct efi_system_resource_entry_v1 {
 	efi_guid_t fw_class;
 	u32 fw_type;
@@ -82007,11 +113420,6 @@ struct efi_dev_path {
 	};
 };
 
-struct acpi_hid_uid {
-	struct acpi_device_id hid[2];
-	char uid[11];
-};
-
 struct dev_header {
 	u32 len;
 	u32 prop_count;
@@ -82025,11 +113433,100 @@ struct properties_header {
 	struct dev_header dev_header[0];
 };
 
+struct efi_embedded_fw {
+	struct list_head list;
+	const char *name;
+	const u8 *data;
+	size_t length;
+};
+
+struct efi_embedded_fw_desc {
+	const char *name;
+	u8 prefix[8];
+	u32 length;
+	u8 sha256[32];
+};
+
 struct efi_mokvar_sysfs_attr {
 	struct bin_attribute bin_attr;
 	struct list_head node;
 };
 
+struct of_bus;
+
+struct of_pci_range_parser {
+	struct device_node *node;
+	struct of_bus *bus;
+	const __be32 *range;
+	const __be32 *end;
+	int na;
+	int ns;
+	int pna;
+	bool dma;
+};
+
+struct of_pci_range {
+	union {
+		u64 pci_addr;
+		u64 bus_addr;
+	};
+	u64 cpu_addr;
+	u64 size;
+	u32 flags;
+};
+
+enum {
+	M_I17 = 0,
+	M_I20 = 1,
+	M_I20_SR = 2,
+	M_I24 = 3,
+	M_I24_8_1 = 4,
+	M_I24_10_1 = 5,
+	M_I27_11_1 = 6,
+	M_MINI = 7,
+	M_MINI_3_1 = 8,
+	M_MINI_4_1 = 9,
+	M_MB = 10,
+	M_MB_2 = 11,
+	M_MB_3 = 12,
+	M_MB_5_1 = 13,
+	M_MB_6_1 = 14,
+	M_MB_7_1 = 15,
+	M_MB_SR = 16,
+	M_MBA = 17,
+	M_MBA_3 = 18,
+	M_MBP = 19,
+	M_MBP_2 = 20,
+	M_MBP_2_2 = 21,
+	M_MBP_SR = 22,
+	M_MBP_4 = 23,
+	M_MBP_5_1 = 24,
+	M_MBP_5_2 = 25,
+	M_MBP_5_3 = 26,
+	M_MBP_6_1 = 27,
+	M_MBP_6_2 = 28,
+	M_MBP_7_1 = 29,
+	M_MBP_8_2 = 30,
+	M_UNKNOWN = 31,
+};
+
+struct efifb_dmi_info {
+	char *optname;
+	long unsigned int base;
+	int stride;
+	int width;
+	int height;
+	int flags;
+};
+
+enum {
+	OVERRIDE_NONE = 0,
+	OVERRIDE_BASE = 1,
+	OVERRIDE_STRIDE = 2,
+	OVERRIDE_HEIGHT = 4,
+	OVERRIDE_WIDTH = 8,
+};
+
 struct cper_ia_err_info {
 	guid_t err_type;
 	u64 validation_bits;
@@ -82040,13 +113537,6 @@ struct cper_ia_err_info {
 	u64 ip;
 };
 
-struct cper_ia_proc_ctx {
-	u16 reg_ctx_type;
-	u16 reg_arr_size;
-	u32 msr_addr;
-	u64 mm_reg_addr;
-};
-
 enum err_types {
 	ERR_TYPE_CACHE = 0,
 	ERR_TYPE_TLB = 1,
@@ -82055,6 +113545,71 @@ enum err_types {
 	N_ERR_TYPES = 4,
 };
 
+enum ppfear_regs {
+	SPT_PMC_XRAM_PPFEAR0A = 1424,
+	SPT_PMC_XRAM_PPFEAR0B = 1425,
+	SPT_PMC_XRAM_PPFEAR0C = 1426,
+	SPT_PMC_XRAM_PPFEAR0D = 1427,
+	SPT_PMC_XRAM_PPFEAR1A = 1428,
+};
+
+struct pmc_bit_map {
+	const char *name;
+	u32 bit_mask;
+};
+
+struct pmc_reg_map {
+	const struct pmc_bit_map **pfear_sts;
+	const struct pmc_bit_map *mphy_sts;
+	const struct pmc_bit_map *pll_sts;
+	const struct pmc_bit_map **slps0_dbg_maps;
+	const struct pmc_bit_map *ltr_show_sts;
+	const struct pmc_bit_map *msr_sts;
+	const struct pmc_bit_map **lpm_sts;
+	const u32 slp_s0_offset;
+	const int slp_s0_res_counter_step;
+	const u32 ltr_ignore_offset;
+	const int regmap_length;
+	const u32 ppfear0_offset;
+	const int ppfear_buckets;
+	const u32 pm_cfg_offset;
+	const int pm_read_disable_bit;
+	const u32 slps0_dbg_offset;
+	const u32 ltr_ignore_max;
+	const u32 pm_vric1_offset;
+	const int lpm_num_maps;
+	const int lpm_num_modes;
+	const int lpm_res_counter_step_x2;
+	const u32 lpm_sts_latch_en_offset;
+	const u32 lpm_en_offset;
+	const u32 lpm_priority_offset;
+	const u32 lpm_residency_offset;
+	const u32 lpm_status_offset;
+	const u32 lpm_live_status_offset;
+	const u32 etr3_offset;
+};
+
+struct pmc_dev {
+	u32 base_addr;
+	void *regbase;
+	const struct pmc_reg_map *map;
+	struct dentry *dbgfs_dir;
+	int pmc_xram_read_bit;
+	struct mutex lock;
+	bool check_counters;
+	u64 pc10_counter;
+	u64 s0ix_counter;
+	int num_lpm_modes;
+	int lpm_en_modes[8];
+	u32 *lpm_req_regs;
+};
+
+struct ts_dmi_data {
+	struct efi_embedded_fw_desc embedded_fw;
+	const char *acpi_name;
+	const struct property_entry *properties;
+};
+
 struct intel_scu_ipc_data {
 	struct resource mem;
 	int irq;
@@ -82073,12 +113628,7 @@ struct intel_scu_ipc_devres {
 	struct intel_scu_ipc_dev *scu;
 };
 
-struct pmc_bit_map {
-	const char *name;
-	u32 bit_mask;
-};
-
-struct pmc_reg_map {
+struct pmc_reg_map___2 {
 	const struct pmc_bit_map *d3_sts_0;
 	const struct pmc_bit_map *d3_sts_1;
 	const struct pmc_bit_map *func_dis;
@@ -82087,18 +113637,474 @@ struct pmc_reg_map {
 };
 
 struct pmc_data {
-	const struct pmc_reg_map *map;
+	const struct pmc_reg_map___2 *map;
 	const struct pmc_clk *clks;
 };
 
-struct pmc_dev {
+struct pmc_dev___2 {
 	u32 base_addr;
 	void *regmap;
-	const struct pmc_reg_map *map;
+	const struct pmc_reg_map___2 *map;
 	struct dentry *dbgfs_dir;
 	bool init;
 };
 
+enum ec_status {
+	EC_RES_SUCCESS = 0,
+	EC_RES_INVALID_COMMAND = 1,
+	EC_RES_ERROR = 2,
+	EC_RES_INVALID_PARAM = 3,
+	EC_RES_ACCESS_DENIED = 4,
+	EC_RES_INVALID_RESPONSE = 5,
+	EC_RES_INVALID_VERSION = 6,
+	EC_RES_INVALID_CHECKSUM = 7,
+	EC_RES_IN_PROGRESS = 8,
+	EC_RES_UNAVAILABLE = 9,
+	EC_RES_TIMEOUT = 10,
+	EC_RES_OVERFLOW = 11,
+	EC_RES_INVALID_HEADER = 12,
+	EC_RES_REQUEST_TRUNCATED = 13,
+	EC_RES_RESPONSE_TOO_BIG = 14,
+	EC_RES_BUS_ERROR = 15,
+	EC_RES_BUSY = 16,
+	EC_RES_INVALID_HEADER_VERSION = 17,
+	EC_RES_INVALID_HEADER_CRC = 18,
+	EC_RES_INVALID_DATA_CRC = 19,
+	EC_RES_DUP_UNAVAILABLE = 20,
+};
+
+enum host_event_code {
+	EC_HOST_EVENT_LID_CLOSED = 1,
+	EC_HOST_EVENT_LID_OPEN = 2,
+	EC_HOST_EVENT_POWER_BUTTON = 3,
+	EC_HOST_EVENT_AC_CONNECTED = 4,
+	EC_HOST_EVENT_AC_DISCONNECTED = 5,
+	EC_HOST_EVENT_BATTERY_LOW = 6,
+	EC_HOST_EVENT_BATTERY_CRITICAL = 7,
+	EC_HOST_EVENT_BATTERY = 8,
+	EC_HOST_EVENT_THERMAL_THRESHOLD = 9,
+	EC_HOST_EVENT_DEVICE = 10,
+	EC_HOST_EVENT_THERMAL = 11,
+	EC_HOST_EVENT_USB_CHARGER = 12,
+	EC_HOST_EVENT_KEY_PRESSED = 13,
+	EC_HOST_EVENT_INTERFACE_READY = 14,
+	EC_HOST_EVENT_KEYBOARD_RECOVERY = 15,
+	EC_HOST_EVENT_THERMAL_SHUTDOWN = 16,
+	EC_HOST_EVENT_BATTERY_SHUTDOWN = 17,
+	EC_HOST_EVENT_THROTTLE_START = 18,
+	EC_HOST_EVENT_THROTTLE_STOP = 19,
+	EC_HOST_EVENT_HANG_DETECT = 20,
+	EC_HOST_EVENT_HANG_REBOOT = 21,
+	EC_HOST_EVENT_PD_MCU = 22,
+	EC_HOST_EVENT_BATTERY_STATUS = 23,
+	EC_HOST_EVENT_PANIC = 24,
+	EC_HOST_EVENT_KEYBOARD_FASTBOOT = 25,
+	EC_HOST_EVENT_RTC = 26,
+	EC_HOST_EVENT_MKBP = 27,
+	EC_HOST_EVENT_USB_MUX = 28,
+	EC_HOST_EVENT_MODE_CHANGE = 29,
+	EC_HOST_EVENT_KEYBOARD_RECOVERY_HW_REINIT = 30,
+	EC_HOST_EVENT_WOV = 31,
+	EC_HOST_EVENT_INVALID = 32,
+};
+
+struct ec_host_request {
+	uint8_t struct_version;
+	uint8_t checksum;
+	uint16_t command;
+	uint8_t command_version;
+	uint8_t reserved;
+	uint16_t data_len;
+};
+
+struct ec_params_hello {
+	uint32_t in_data;
+};
+
+struct ec_response_hello {
+	uint32_t out_data;
+};
+
+struct ec_params_get_cmd_versions {
+	uint8_t cmd;
+};
+
+struct ec_response_get_cmd_versions {
+	uint32_t version_mask;
+};
+
+enum ec_comms_status {
+	EC_COMMS_STATUS_PROCESSING = 1,
+};
+
+struct ec_response_get_comms_status {
+	uint32_t flags;
+};
+
+struct ec_response_get_protocol_info {
+	uint32_t protocol_versions;
+	uint16_t max_request_packet_size;
+	uint16_t max_response_packet_size;
+	uint32_t flags;
+};
+
+enum ec_led_colors {
+	EC_LED_COLOR_RED = 0,
+	EC_LED_COLOR_GREEN = 1,
+	EC_LED_COLOR_BLUE = 2,
+	EC_LED_COLOR_YELLOW = 3,
+	EC_LED_COLOR_WHITE = 4,
+	EC_LED_COLOR_AMBER = 5,
+	EC_LED_COLOR_COUNT = 6,
+};
+
+enum motionsense_command {
+	MOTIONSENSE_CMD_DUMP = 0,
+	MOTIONSENSE_CMD_INFO = 1,
+	MOTIONSENSE_CMD_EC_RATE = 2,
+	MOTIONSENSE_CMD_SENSOR_ODR = 3,
+	MOTIONSENSE_CMD_SENSOR_RANGE = 4,
+	MOTIONSENSE_CMD_KB_WAKE_ANGLE = 5,
+	MOTIONSENSE_CMD_DATA = 6,
+	MOTIONSENSE_CMD_FIFO_INFO = 7,
+	MOTIONSENSE_CMD_FIFO_FLUSH = 8,
+	MOTIONSENSE_CMD_FIFO_READ = 9,
+	MOTIONSENSE_CMD_PERFORM_CALIB = 10,
+	MOTIONSENSE_CMD_SENSOR_OFFSET = 11,
+	MOTIONSENSE_CMD_LIST_ACTIVITIES = 12,
+	MOTIONSENSE_CMD_SET_ACTIVITY = 13,
+	MOTIONSENSE_CMD_LID_ANGLE = 14,
+	MOTIONSENSE_CMD_FIFO_INT_ENABLE = 15,
+	MOTIONSENSE_CMD_SPOOF = 16,
+	MOTIONSENSE_CMD_TABLET_MODE_LID_ANGLE = 17,
+	MOTIONSENSE_CMD_SENSOR_SCALE = 18,
+	MOTIONSENSE_NUM_CMDS = 19,
+};
+
+struct ec_response_motion_sensor_data {
+	uint8_t flags;
+	uint8_t sensor_num;
+	union {
+		int16_t data[3];
+		struct {
+			uint16_t reserved;
+			uint32_t timestamp;
+		} __attribute__((packed));
+		struct {
+			uint8_t activity;
+			uint8_t state;
+			int16_t add_info[2];
+		};
+	};
+};
+
+struct ec_response_motion_sense_fifo_info {
+	uint16_t size;
+	uint16_t count;
+	uint32_t timestamp;
+	uint16_t total_lost;
+	uint16_t lost[0];
+} __attribute__((packed));
+
+struct ec_response_motion_sense_fifo_data {
+	uint32_t number_data;
+	struct ec_response_motion_sensor_data data[0];
+};
+
+struct ec_motion_sense_activity {
+	uint8_t sensor_num;
+	uint8_t activity;
+	uint8_t enable;
+	uint8_t reserved;
+	uint16_t parameters[3];
+};
+
+struct ec_params_motion_sense {
+	uint8_t cmd;
+	union {
+		struct {
+			uint8_t max_sensor_count;
+		} dump;
+		struct {
+			int16_t data;
+		} kb_wake_angle;
+		struct {
+			uint8_t sensor_num;
+		} info;
+		struct {
+			uint8_t sensor_num;
+		} info_3;
+		struct {
+			uint8_t sensor_num;
+		} data;
+		struct {
+			uint8_t sensor_num;
+		} fifo_flush;
+		struct {
+			uint8_t sensor_num;
+		} perform_calib;
+		struct {
+			uint8_t sensor_num;
+		} list_activities;
+		struct {
+			uint8_t sensor_num;
+			uint8_t roundup;
+			uint16_t reserved;
+			int32_t data;
+		} ec_rate;
+		struct {
+			uint8_t sensor_num;
+			uint8_t roundup;
+			uint16_t reserved;
+			int32_t data;
+		} sensor_odr;
+		struct {
+			uint8_t sensor_num;
+			uint8_t roundup;
+			uint16_t reserved;
+			int32_t data;
+		} sensor_range;
+		struct {
+			uint8_t sensor_num;
+			uint16_t flags;
+			int16_t temp;
+			int16_t offset[3];
+		} __attribute__((packed)) sensor_offset;
+		struct {
+			uint8_t sensor_num;
+			uint16_t flags;
+			int16_t temp;
+			uint16_t scale[3];
+		} __attribute__((packed)) sensor_scale;
+		struct {
+			uint32_t max_data_vector;
+		} fifo_read;
+		struct ec_motion_sense_activity set_activity;
+		struct {
+			int8_t enable;
+		} fifo_int_enable;
+		struct {
+			uint8_t sensor_id;
+			uint8_t spoof_enable;
+			uint8_t reserved;
+			int16_t components[3];
+		} __attribute__((packed)) spoof;
+		struct {
+			int16_t lid_angle;
+			int16_t hys_degree;
+		} tablet_mode_threshold;
+	};
+} __attribute__((packed));
+
+struct ec_response_motion_sense {
+	union {
+		struct {
+			uint8_t module_flags;
+			uint8_t sensor_count;
+			struct ec_response_motion_sensor_data sensor[0];
+		} dump;
+		struct {
+			uint8_t type;
+			uint8_t location;
+			uint8_t chip;
+		} info;
+		struct {
+			uint8_t type;
+			uint8_t location;
+			uint8_t chip;
+			uint32_t min_frequency;
+			uint32_t max_frequency;
+			uint32_t fifo_max_event_count;
+		} info_3;
+		struct ec_response_motion_sensor_data data;
+		struct {
+			int32_t ret;
+		} ec_rate;
+		struct {
+			int32_t ret;
+		} sensor_odr;
+		struct {
+			int32_t ret;
+		} sensor_range;
+		struct {
+			int32_t ret;
+		} kb_wake_angle;
+		struct {
+			int32_t ret;
+		} fifo_int_enable;
+		struct {
+			int32_t ret;
+		} spoof;
+		struct {
+			int16_t temp;
+			int16_t offset[3];
+		} sensor_offset;
+		struct {
+			int16_t temp;
+			int16_t offset[3];
+		} perform_calib;
+		struct {
+			int16_t temp;
+			uint16_t scale[3];
+		} sensor_scale;
+		struct ec_response_motion_sense_fifo_info fifo_info;
+		struct ec_response_motion_sense_fifo_info fifo_flush;
+		struct ec_response_motion_sense_fifo_data fifo_read;
+		struct {
+			uint16_t reserved;
+			uint32_t enabled;
+			uint32_t disabled;
+		} __attribute__((packed)) list_activities;
+		struct {
+			uint16_t value;
+		} lid_angle;
+		struct {
+			uint16_t lid_angle;
+			uint16_t hys_degree;
+		} tablet_mode_threshold;
+	};
+};
+
+enum ec_temp_thresholds {
+	EC_TEMP_THRESH_WARN = 0,
+	EC_TEMP_THRESH_HIGH = 1,
+	EC_TEMP_THRESH_HALT = 2,
+	EC_TEMP_THRESH_COUNT = 3,
+};
+
+enum ec_mkbp_event {
+	EC_MKBP_EVENT_KEY_MATRIX = 0,
+	EC_MKBP_EVENT_HOST_EVENT = 1,
+	EC_MKBP_EVENT_SENSOR_FIFO = 2,
+	EC_MKBP_EVENT_BUTTON = 3,
+	EC_MKBP_EVENT_SWITCH = 4,
+	EC_MKBP_EVENT_FINGERPRINT = 5,
+	EC_MKBP_EVENT_SYSRQ = 6,
+	EC_MKBP_EVENT_HOST_EVENT64 = 7,
+	EC_MKBP_EVENT_CEC_EVENT = 8,
+	EC_MKBP_EVENT_CEC_MESSAGE = 9,
+	EC_MKBP_EVENT_COUNT = 10,
+};
+
+union ec_response_get_next_data_v1 {
+	uint8_t key_matrix[16];
+	uint32_t host_event;
+	uint64_t host_event64;
+	struct {
+		uint8_t reserved[3];
+		struct ec_response_motion_sense_fifo_info info;
+	} sensor_fifo;
+	uint32_t buttons;
+	uint32_t switches;
+	uint32_t fp_events;
+	uint32_t sysrq;
+	uint32_t cec_events;
+	uint8_t cec_message[16];
+};
+
+struct ec_response_get_next_event_v1 {
+	uint8_t event_type;
+	union ec_response_get_next_data_v1 data;
+} __attribute__((packed));
+
+struct ec_response_host_event_mask {
+	uint32_t mask;
+};
+
+enum {
+	EC_MSG_TX_HEADER_BYTES = 3,
+	EC_MSG_TX_TRAILER_BYTES = 1,
+	EC_MSG_TX_PROTO_BYTES = 4,
+	EC_MSG_RX_PROTO_BYTES = 3,
+	EC_PROTO2_MSG_BYTES = 256,
+	EC_MAX_MSG_BYTES = 65536,
+};
+
+struct cros_ec_command {
+	uint32_t version;
+	uint32_t command;
+	uint32_t outsize;
+	uint32_t insize;
+	uint32_t result;
+	uint8_t data[0];
+};
+
+struct cros_ec_device {
+	const char *phys_name;
+	struct device *dev;
+	bool was_wake_device;
+	struct class *cros_class;
+	int (*cmd_readmem)(struct cros_ec_device *, unsigned int, unsigned int, void *);
+	u16 max_request;
+	u16 max_response;
+	u16 max_passthru;
+	u16 proto_version;
+	void *priv;
+	int irq;
+	u8 *din;
+	u8 *dout;
+	int din_size;
+	int dout_size;
+	bool wake_enabled;
+	bool suspended;
+	int (*cmd_xfer)(struct cros_ec_device *, struct cros_ec_command *);
+	int (*pkt_xfer)(struct cros_ec_device *, struct cros_ec_command *);
+	struct mutex lock;
+	u8 mkbp_event_supported;
+	bool host_sleep_v1;
+	struct blocking_notifier_head event_notifier;
+	struct ec_response_get_next_event_v1 event_data;
+	int event_size;
+	u32 host_event_wake_mask;
+	u32 last_resume_result;
+	ktime_t last_event_time;
+	struct notifier_block notifier_ready;
+	struct platform_device *ec;
+	struct platform_device *pd;
+};
+
+struct cros_ec_debugfs;
+
+struct cros_ec_dev {
+	struct device class_dev;
+	struct cros_ec_device *ec_dev;
+	struct device *dev;
+	struct cros_ec_debugfs *debug_info;
+	bool has_kb_wake_angle;
+	u16 cmd_offset;
+	u32 features[2];
+};
+
+struct trace_event_raw_cros_ec_request_start {
+	struct trace_entry ent;
+	uint32_t version;
+	uint32_t offset;
+	uint32_t command;
+	uint32_t outsize;
+	uint32_t insize;
+	char __data[0];
+};
+
+struct trace_event_raw_cros_ec_request_done {
+	struct trace_entry ent;
+	uint32_t version;
+	uint32_t offset;
+	uint32_t command;
+	uint32_t outsize;
+	uint32_t insize;
+	uint32_t result;
+	int retval;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_cros_ec_request_start {};
+
+struct trace_event_data_offsets_cros_ec_request_done {};
+
+typedef void (*btf_trace_cros_ec_request_start)(void *, struct cros_ec_command *);
+
+typedef void (*btf_trace_cros_ec_request_done)(void *, struct cros_ec_command *, int);
+
 struct acpi_table_pcct {
 	struct acpi_table_header header;
 	u32 flags;
@@ -82111,7 +114117,8 @@ enum acpi_pcct_type {
 	ACPI_PCCT_TYPE_HW_REDUCED_SUBSPACE_TYPE2 = 2,
 	ACPI_PCCT_TYPE_EXT_PCC_MASTER_SUBSPACE = 3,
 	ACPI_PCCT_TYPE_EXT_PCC_SLAVE_SUBSPACE = 4,
-	ACPI_PCCT_TYPE_RESERVED = 5,
+	ACPI_PCCT_TYPE_HW_REG_COMM_SUBSPACE = 5,
+	ACPI_PCCT_TYPE_RESERVED = 6,
 };
 
 struct acpi_pcct_subspace {
@@ -82145,11 +114152,282 @@ struct acpi_pcct_hw_reduced_type2 {
 	u64 ack_write_mask;
 } __attribute__((packed));
 
+struct hwspinlock_ops {
+	int (*trylock)(struct hwspinlock *);
+	void (*unlock)(struct hwspinlock *);
+	int (*bust)(struct hwspinlock *, unsigned int);
+	void (*relax)(struct hwspinlock *);
+};
+
+struct hwspinlock_device;
+
+struct hwspinlock {
+	struct hwspinlock_device *bank;
+	spinlock_t lock;
+	void *priv;
+};
+
+struct hwspinlock_device {
+	struct device *dev;
+	const struct hwspinlock_ops *ops;
+	int base_id;
+	int num_locks;
+	struct hwspinlock lock[0];
+};
+
+struct resource_table {
+	u32 ver;
+	u32 num;
+	u32 reserved[2];
+	u32 offset[0];
+};
+
+struct fw_rsc_hdr {
+	u32 type;
+	u8 data[0];
+};
+
+enum fw_resource_type {
+	RSC_CARVEOUT = 0,
+	RSC_DEVMEM = 1,
+	RSC_TRACE = 2,
+	RSC_VDEV = 3,
+	RSC_LAST = 4,
+	RSC_VENDOR_START = 128,
+	RSC_VENDOR_END = 512,
+};
+
+struct fw_rsc_carveout {
+	u32 da;
+	u32 pa;
+	u32 len;
+	u32 flags;
+	u32 reserved;
+	u8 name[32];
+};
+
+struct fw_rsc_devmem {
+	u32 da;
+	u32 pa;
+	u32 len;
+	u32 flags;
+	u32 reserved;
+	u8 name[32];
+};
+
+struct fw_rsc_trace {
+	u32 da;
+	u32 len;
+	u32 reserved;
+	u8 name[32];
+};
+
+struct fw_rsc_vdev_vring {
+	u32 da;
+	u32 align;
+	u32 num;
+	u32 notifyid;
+	u32 pa;
+};
+
+struct fw_rsc_vdev {
+	u32 id;
+	u32 notifyid;
+	u32 dfeatures;
+	u32 gfeatures;
+	u32 config_len;
+	u8 status;
+	u8 num_of_vrings;
+	u8 reserved[2];
+	struct fw_rsc_vdev_vring vring[0];
+};
+
+struct rproc;
+
+struct rproc_mem_entry {
+	void *va;
+	bool is_iomem;
+	dma_addr_t dma;
+	size_t len;
+	u32 da;
+	void *priv;
+	char name[32];
+	struct list_head node;
+	u32 rsc_offset;
+	u32 flags;
+	u32 of_resm_idx;
+	int (*alloc)(struct rproc *, struct rproc_mem_entry *);
+	int (*release)(struct rproc *, struct rproc_mem_entry *);
+};
+
+enum rproc_dump_mechanism {
+	RPROC_COREDUMP_DISABLED = 0,
+	RPROC_COREDUMP_ENABLED = 1,
+	RPROC_COREDUMP_INLINE = 2,
+};
+
+struct rproc_ops;
+
+struct rproc {
+	struct list_head node;
+	struct iommu_domain *domain;
+	const char *name;
+	const char *firmware;
+	void *priv;
+	struct rproc_ops *ops;
+	struct device dev;
+	atomic_t power;
+	unsigned int state;
+	enum rproc_dump_mechanism dump_conf;
+	struct mutex lock;
+	struct dentry *dbg_dir;
+	struct list_head traces;
+	int num_traces;
+	struct list_head carveouts;
+	struct list_head mappings;
+	u64 bootaddr;
+	struct list_head rvdevs;
+	struct list_head subdevs;
+	struct idr notifyids;
+	int index;
+	struct work_struct crash_handler;
+	unsigned int crash_cnt;
+	bool recovery_disabled;
+	int max_notifyid;
+	struct resource_table *table_ptr;
+	struct resource_table *clean_table;
+	struct resource_table *cached_table;
+	size_t table_sz;
+	bool has_iommu;
+	bool auto_boot;
+	struct list_head dump_segments;
+	int nb_vdev;
+	u8 elf_class;
+	u16 elf_machine;
+	struct cdev cdev;
+	bool cdev_put_on_release;
+};
+
+enum rsc_handling_status {
+	RSC_HANDLED = 0,
+	RSC_IGNORED = 1,
+};
+
+struct rproc_ops {
+	int (*prepare)(struct rproc *);
+	int (*unprepare)(struct rproc *);
+	int (*start)(struct rproc *);
+	int (*stop)(struct rproc *);
+	int (*attach)(struct rproc *);
+	int (*detach)(struct rproc *);
+	void (*kick)(struct rproc *, int);
+	void * (*da_to_va)(struct rproc *, u64, size_t, bool *);
+	int (*parse_fw)(struct rproc *, const struct firmware *);
+	int (*handle_rsc)(struct rproc *, u32, void *, int, int);
+	struct resource_table * (*find_loaded_rsc_table)(struct rproc *, const struct firmware *);
+	struct resource_table * (*get_loaded_rsc_table)(struct rproc *, size_t *);
+	int (*load)(struct rproc *, const struct firmware *);
+	int (*sanity_check)(struct rproc *, const struct firmware *);
+	u64 (*get_boot_addr)(struct rproc *, const struct firmware *);
+	long unsigned int (*panic)(struct rproc *);
+	void (*coredump)(struct rproc *);
+};
+
+enum rproc_state {
+	RPROC_OFFLINE = 0,
+	RPROC_SUSPENDED = 1,
+	RPROC_RUNNING = 2,
+	RPROC_CRASHED = 3,
+	RPROC_DELETED = 4,
+	RPROC_ATTACHED = 5,
+	RPROC_DETACHED = 6,
+	RPROC_LAST = 7,
+};
+
+enum rproc_crash_type {
+	RPROC_MMUFAULT = 0,
+	RPROC_WATCHDOG = 1,
+	RPROC_FATAL_ERROR = 2,
+};
+
+struct rproc_subdev {
+	struct list_head node;
+	int (*prepare)(struct rproc_subdev *);
+	int (*start)(struct rproc_subdev *);
+	void (*stop)(struct rproc_subdev *, bool);
+	void (*unprepare)(struct rproc_subdev *);
+};
+
+struct rproc_vdev;
+
+struct rproc_vring {
+	void *va;
+	int len;
+	u32 da;
+	u32 align;
+	int notifyid;
+	struct rproc_vdev *rvdev;
+	struct virtqueue *vq;
+};
+
+struct rproc_vdev {
+	struct kref refcount;
+	struct rproc_subdev subdev;
+	struct device dev;
+	unsigned int id;
+	struct list_head node;
+	struct rproc *rproc;
+	struct rproc_vring vring[2];
+	u32 rsc_offset;
+	u32 index;
+};
+
+struct rproc_debug_trace {
+	struct rproc *rproc;
+	struct dentry *tfile;
+	struct list_head node;
+	struct rproc_mem_entry trace_mem;
+};
+
+typedef int (*rproc_handle_resource_t)(struct rproc *, void *, int, int);
+
+struct rproc_dump_segment {
+	struct list_head node;
+	dma_addr_t da;
+	size_t size;
+	void *priv;
+	void (*dump)(struct rproc *, struct rproc_dump_segment *, void *, size_t, size_t);
+	loff_t offset;
+};
+
+struct rproc_coredump_state {
+	struct rproc *rproc;
+	void *header;
+	struct completion dump_done;
+};
+
 struct devfreq_freqs {
 	long unsigned int old;
 	long unsigned int new;
 };
 
+struct devfreq_passive_data {
+	struct devfreq *parent;
+	int (*get_target_freq)(struct devfreq *, long unsigned int *);
+	struct devfreq *this;
+	struct notifier_block nb;
+};
+
+struct trace_event_raw_devfreq_frequency {
+	struct trace_entry ent;
+	u32 __data_loc_dev_name;
+	long unsigned int freq;
+	long unsigned int prev_freq;
+	long unsigned int busy_time;
+	long unsigned int total_time;
+	char __data[0];
+};
+
 struct trace_event_raw_devfreq_monitor {
 	struct trace_entry ent;
 	long unsigned int freq;
@@ -82160,10 +114438,16 @@ struct trace_event_raw_devfreq_monitor {
 	char __data[0];
 };
 
+struct trace_event_data_offsets_devfreq_frequency {
+	u32 dev_name;
+};
+
 struct trace_event_data_offsets_devfreq_monitor {
 	u32 dev_name;
 };
 
+typedef void (*btf_trace_devfreq_frequency)(void *, struct devfreq *, long unsigned int, long unsigned int);
+
 typedef void (*btf_trace_devfreq_monitor)(void *, struct devfreq *);
 
 struct devfreq_notifier_devres {
@@ -82172,6 +114456,267 @@ struct devfreq_notifier_devres {
 	unsigned int list;
 };
 
+struct devfreq_event_desc;
+
+struct devfreq_event_dev {
+	struct list_head node;
+	struct device dev;
+	struct mutex lock;
+	u32 enable_count;
+	const struct devfreq_event_desc *desc;
+};
+
+struct devfreq_event_ops;
+
+struct devfreq_event_desc {
+	const char *name;
+	u32 event_type;
+	void *driver_data;
+	const struct devfreq_event_ops *ops;
+};
+
+struct devfreq_event_data {
+	long unsigned int load_count;
+	long unsigned int total_count;
+};
+
+struct devfreq_event_ops {
+	int (*enable)(struct devfreq_event_dev *);
+	int (*disable)(struct devfreq_event_dev *);
+	int (*reset)(struct devfreq_event_dev *);
+	int (*set_event)(struct devfreq_event_dev *);
+	int (*get_event)(struct devfreq_event_dev *, struct devfreq_event_data *);
+};
+
+struct devfreq_simple_ondemand_data {
+	unsigned int upthreshold;
+	unsigned int downdifferential;
+};
+
+struct userspace_data {
+	long unsigned int user_frequency;
+	bool valid;
+};
+
+union extcon_property_value {
+	int intval;
+};
+
+struct extcon_cable;
+
+struct extcon_dev {
+	const char *name;
+	const unsigned int *supported_cable;
+	const u32 *mutually_exclusive;
+	struct device dev;
+	struct raw_notifier_head nh_all;
+	struct raw_notifier_head *nh;
+	struct list_head entry;
+	int max_supported;
+	spinlock_t lock;
+	u32 state;
+	struct device_type extcon_dev_type;
+	struct extcon_cable *cables;
+	struct attribute_group attr_g_muex;
+	struct attribute **attrs_muex;
+	struct device_attribute *d_attrs_muex;
+};
+
+struct extcon_cable {
+	struct extcon_dev *edev;
+	int cable_index;
+	struct attribute_group attr_g;
+	struct device_attribute attr_name;
+	struct device_attribute attr_state;
+	struct attribute *attrs[3];
+	union extcon_property_value usb_propval[3];
+	union extcon_property_value chg_propval[1];
+	union extcon_property_value jack_propval[1];
+	union extcon_property_value disp_propval[2];
+	long unsigned int usb_bits[1];
+	long unsigned int chg_bits[1];
+	long unsigned int jack_bits[1];
+	long unsigned int disp_bits[1];
+};
+
+struct __extcon_info {
+	unsigned int type;
+	unsigned int id;
+	const char *name;
+};
+
+struct extcon_dev_notifier_devres {
+	struct extcon_dev *edev;
+	unsigned int id;
+	struct notifier_block *nb;
+};
+
+enum vme_resource_type {
+	VME_MASTER = 0,
+	VME_SLAVE = 1,
+	VME_DMA = 2,
+	VME_LM = 3,
+};
+
+struct vme_dma_attr {
+	u32 type;
+	void *private;
+};
+
+struct vme_resource {
+	enum vme_resource_type type;
+	struct list_head *entry;
+};
+
+struct vme_bridge;
+
+struct vme_dev {
+	int num;
+	struct vme_bridge *bridge;
+	struct device dev;
+	struct list_head drv_list;
+	struct list_head bridge_list;
+};
+
+struct vme_callback {
+	void (*func)(int, int, void *);
+	void *priv_data;
+};
+
+struct vme_irq {
+	int count;
+	struct vme_callback callback[256];
+};
+
+struct vme_slave_resource;
+
+struct vme_master_resource;
+
+struct vme_dma_list;
+
+struct vme_lm_resource;
+
+struct vme_bridge {
+	char name[16];
+	int num;
+	struct list_head master_resources;
+	struct list_head slave_resources;
+	struct list_head dma_resources;
+	struct list_head lm_resources;
+	struct list_head vme_error_handlers;
+	struct list_head devices;
+	struct device *parent;
+	void *driver_priv;
+	struct list_head bus_list;
+	struct vme_irq irq[7];
+	struct mutex irq_mtx;
+	int (*slave_get)(struct vme_slave_resource *, int *, long long unsigned int *, long long unsigned int *, dma_addr_t *, u32 *, u32 *);
+	int (*slave_set)(struct vme_slave_resource *, int, long long unsigned int, long long unsigned int, dma_addr_t, u32, u32);
+	int (*master_get)(struct vme_master_resource *, int *, long long unsigned int *, long long unsigned int *, u32 *, u32 *, u32 *);
+	int (*master_set)(struct vme_master_resource *, int, long long unsigned int, long long unsigned int, u32, u32, u32);
+	ssize_t (*master_read)(struct vme_master_resource *, void *, size_t, loff_t);
+	ssize_t (*master_write)(struct vme_master_resource *, void *, size_t, loff_t);
+	unsigned int (*master_rmw)(struct vme_master_resource *, unsigned int, unsigned int, unsigned int, loff_t);
+	int (*dma_list_add)(struct vme_dma_list *, struct vme_dma_attr *, struct vme_dma_attr *, size_t);
+	int (*dma_list_exec)(struct vme_dma_list *);
+	int (*dma_list_empty)(struct vme_dma_list *);
+	void (*irq_set)(struct vme_bridge *, int, int, int);
+	int (*irq_generate)(struct vme_bridge *, int, int);
+	int (*lm_set)(struct vme_lm_resource *, long long unsigned int, u32, u32);
+	int (*lm_get)(struct vme_lm_resource *, long long unsigned int *, u32 *, u32 *);
+	int (*lm_attach)(struct vme_lm_resource *, int, void (*)(void *), void *);
+	int (*lm_detach)(struct vme_lm_resource *, int);
+	int (*slot_get)(struct vme_bridge *);
+	void * (*alloc_consistent)(struct device *, size_t, dma_addr_t *);
+	void (*free_consistent)(struct device *, size_t, void *, dma_addr_t);
+};
+
+struct vme_driver {
+	const char *name;
+	int (*match)(struct vme_dev *);
+	int (*probe)(struct vme_dev *);
+	void (*remove)(struct vme_dev *);
+	struct device_driver driver;
+	struct list_head devices;
+};
+
+struct vme_master_resource {
+	struct list_head list;
+	struct vme_bridge *parent;
+	spinlock_t lock;
+	int locked;
+	int number;
+	u32 address_attr;
+	u32 cycle_attr;
+	u32 width_attr;
+	struct resource bus_resource;
+	void *kern_base;
+};
+
+struct vme_slave_resource {
+	struct list_head list;
+	struct vme_bridge *parent;
+	struct mutex mtx;
+	int locked;
+	int number;
+	u32 address_attr;
+	u32 cycle_attr;
+};
+
+struct vme_dma_pattern {
+	u32 pattern;
+	u32 type;
+};
+
+struct vme_dma_pci {
+	dma_addr_t address;
+};
+
+struct vme_dma_vme {
+	long long unsigned int address;
+	u32 aspace;
+	u32 cycle;
+	u32 dwidth;
+};
+
+struct vme_dma_resource;
+
+struct vme_dma_list {
+	struct list_head list;
+	struct vme_dma_resource *parent;
+	struct list_head entries;
+	struct mutex mtx;
+};
+
+struct vme_dma_resource {
+	struct list_head list;
+	struct vme_bridge *parent;
+	struct mutex mtx;
+	int locked;
+	int number;
+	struct list_head pending;
+	struct list_head running;
+	u32 route_attr;
+};
+
+struct vme_lm_resource {
+	struct list_head list;
+	struct vme_bridge *parent;
+	struct mutex mtx;
+	int locked;
+	int number;
+	int monitors;
+};
+
+struct vme_error_handler {
+	struct list_head list;
+	long long unsigned int start;
+	long long unsigned int end;
+	long long unsigned int first_error;
+	u32 aspace;
+	unsigned int num_errors;
+};
+
 struct powercap_control_type;
 
 struct powercap_control_type_ops {
@@ -82243,6 +114788,43 @@ struct powercap_zone_constraint_ops {
 	const char * (*get_name)(struct powercap_zone *, int);
 };
 
+struct dtpm_ops;
+
+struct dtpm {
+	struct powercap_zone zone;
+	struct dtpm *parent;
+	struct list_head sibling;
+	struct list_head children;
+	struct dtpm_ops *ops;
+	long unsigned int flags;
+	u64 power_limit;
+	u64 power_max;
+	u64 power_min;
+	int weight;
+	void *private;
+};
+
+struct dtpm_ops {
+	u64 (*set_power_uw)(struct dtpm *, u64);
+	u64 (*get_power_uw)(struct dtpm *);
+	void (*release)(struct dtpm *);
+};
+
+struct dtpm_descr;
+
+typedef int (*dtpm_init_t)(struct dtpm_descr *);
+
+struct dtpm_descr {
+	struct dtpm *parent;
+	const char *name;
+	dtpm_init_t init;
+};
+
+struct dtpm_cpu {
+	struct freq_qos_request qos_req;
+	int cpu;
+};
+
 struct powercap_constraint_attr {
 	struct device_attribute power_limit_attr;
 	struct device_attribute time_window_attr;
@@ -82253,6 +114835,19 @@ struct powercap_constraint_attr {
 	struct device_attribute name_attr;
 };
 
+struct idle_inject_thread {
+	struct task_struct *tsk;
+	int should_run;
+};
+
+struct idle_inject_device {
+	struct hrtimer timer;
+	unsigned int idle_duration_us;
+	unsigned int run_duration_us;
+	unsigned int latency_us;
+	long unsigned int cpumask[0];
+};
+
 struct trace_event_raw_extlog_mem_event {
 	struct trace_entry ent;
 	u32 err_seq;
@@ -82357,6 +114952,22 @@ typedef void (*btf_trace_aer_event)(void *, const char *, const u32, const u8, c
 
 typedef void (*btf_trace_memory_failure_event)(void *, long unsigned int, int, int);
 
+struct ce_array {
+	u64 *array;
+	unsigned int n;
+	unsigned int decay_count;
+	u64 pfns_poisoned;
+	u64 ces_entered;
+	u64 decays_done;
+	union {
+		struct {
+			__u32 disabled: 1;
+			__u32 __resv: 31;
+		};
+		__u32 flags;
+	};
+};
+
 struct nvmem_cell_lookup {
 	const char *nvmem_name;
 	const char *cell_name;
@@ -82394,6 +115005,8 @@ struct nvmem_device {
 	struct bin_attribute eeprom;
 	struct device *base_dev;
 	struct list_head cells;
+	const struct nvmem_keepout *keepout;
+	unsigned int nkeepout;
 	nvmem_reg_read_t reg_read;
 	nvmem_reg_write_t reg_write;
 	struct gpio_desc *wp_gpio;
@@ -82411,6 +115024,111 @@ struct nvmem_cell {
 	struct list_head node;
 };
 
+struct icc_node;
+
+struct icc_req {
+	struct hlist_node req_node;
+	struct icc_node *node;
+	struct device *dev;
+	bool enabled;
+	u32 tag;
+	u32 avg_bw;
+	u32 peak_bw;
+};
+
+struct icc_path {
+	const char *name;
+	size_t num_nodes;
+	struct icc_req reqs[0];
+};
+
+struct icc_node_data {
+	struct icc_node *node;
+	u32 tag;
+};
+
+struct icc_provider;
+
+struct icc_node {
+	int id;
+	const char *name;
+	struct icc_node **links;
+	size_t num_links;
+	struct icc_provider *provider;
+	struct list_head node_list;
+	struct list_head search_list;
+	struct icc_node *reverse;
+	u8 is_traversed: 1;
+	struct hlist_head req_list;
+	u32 avg_bw;
+	u32 peak_bw;
+	u32 init_avg;
+	u32 init_peak;
+	void *data;
+};
+
+struct icc_onecell_data {
+	unsigned int num_nodes;
+	struct icc_node *nodes[0];
+};
+
+struct icc_provider {
+	struct list_head provider_list;
+	struct list_head nodes;
+	int (*set)(struct icc_node *, struct icc_node *);
+	int (*aggregate)(struct icc_node *, u32, u32, u32, u32 *, u32 *);
+	void (*pre_aggregate)(struct icc_node *);
+	int (*get_bw)(struct icc_node *, u32 *, u32 *);
+	struct icc_node * (*xlate)(struct of_phandle_args *, void *);
+	struct icc_node_data * (*xlate_extended)(struct of_phandle_args *, void *);
+	struct device *dev;
+	int users;
+	bool inter_set;
+	void *data;
+};
+
+struct trace_event_raw_icc_set_bw {
+	struct trace_entry ent;
+	u32 __data_loc_path_name;
+	u32 __data_loc_dev;
+	u32 __data_loc_node_name;
+	u32 avg_bw;
+	u32 peak_bw;
+	u32 node_avg_bw;
+	u32 node_peak_bw;
+	char __data[0];
+};
+
+struct trace_event_raw_icc_set_bw_end {
+	struct trace_entry ent;
+	u32 __data_loc_path_name;
+	u32 __data_loc_dev;
+	int ret;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_icc_set_bw {
+	u32 path_name;
+	u32 dev;
+	u32 node_name;
+};
+
+struct trace_event_data_offsets_icc_set_bw_end {
+	u32 path_name;
+	u32 dev;
+};
+
+typedef void (*btf_trace_icc_set_bw)(void *, struct icc_path *, struct icc_node *, int, u32, u32);
+
+typedef void (*btf_trace_icc_set_bw_end)(void *, struct icc_path *, int);
+
+struct icc_bulk_data {
+	struct icc_path *path;
+	const char *name;
+	u32 avg_bw;
+	u32 peak_bw;
+};
+
 struct net_device_devres {
 	struct net_device *ndev;
 };
@@ -82434,25 +115152,6 @@ struct scm_timestamping_internal {
 	struct timespec64 ts[3];
 };
 
-enum sock_shutdown_cmd {
-	SHUT_RD = 0,
-	SHUT_WR = 1,
-	SHUT_RDWR = 2,
-};
-
-struct net_proto_family {
-	int family;
-	int (*create)(struct net *, struct socket *, int, int);
-	struct module *owner;
-};
-
-enum {
-	SOCK_WAKE_IO = 0,
-	SOCK_WAKE_WAITD = 1,
-	SOCK_WAKE_SPACE = 2,
-	SOCK_WAKE_URG = 3,
-};
-
 struct ifconf {
 	int ifc_len;
 	union {
@@ -82497,9 +115196,23 @@ struct compat_ifreq {
 	} ifr_ifru;
 };
 
-struct compat_ifconf {
-	compat_int_t ifc_len;
-	compat_caddr_t ifcbuf;
+enum sock_shutdown_cmd {
+	SHUT_RD = 0,
+	SHUT_WR = 1,
+	SHUT_RDWR = 2,
+};
+
+struct net_proto_family {
+	int family;
+	int (*create)(struct net *, struct socket *, int, int);
+	struct module *owner;
+};
+
+enum {
+	SOCK_WAKE_IO = 0,
+	SOCK_WAKE_WAITD = 1,
+	SOCK_WAKE_SPACE = 2,
+	SOCK_WAKE_URG = 3,
 };
 
 struct libipw_device;
@@ -82620,8 +115333,9 @@ enum {
 	SOF_TIMESTAMPING_OPT_STATS = 4096,
 	SOF_TIMESTAMPING_OPT_PKTINFO = 8192,
 	SOF_TIMESTAMPING_OPT_TX_SWHW = 16384,
-	SOF_TIMESTAMPING_LAST = 16384,
-	SOF_TIMESTAMPING_MASK = 32767,
+	SOF_TIMESTAMPING_BIND_PHC = 32768,
+	SOF_TIMESTAMPING_LAST = 32768,
+	SOF_TIMESTAMPING_MASK = 65535,
 };
 
 struct scm_ts_pktinfo {
@@ -82687,79 +115401,6 @@ struct ucred {
 	__u32 gid;
 };
 
-struct mmpin {
-	struct user_struct *user;
-	unsigned int num_pg;
-};
-
-struct ubuf_info {
-	void (*callback)(struct ubuf_info *, bool);
-	union {
-		struct {
-			long unsigned int desc;
-			void *ctx;
-		};
-		struct {
-			u32 id;
-			u16 len;
-			u16 zerocopy: 1;
-			u32 bytelen;
-		};
-	};
-	refcount_t refcnt;
-	struct mmpin mmp;
-};
-
-enum {
-	SKB_GSO_TCPV4 = 1,
-	SKB_GSO_DODGY = 2,
-	SKB_GSO_TCP_ECN = 4,
-	SKB_GSO_TCP_FIXEDID = 8,
-	SKB_GSO_TCPV6 = 16,
-	SKB_GSO_FCOE = 32,
-	SKB_GSO_GRE = 64,
-	SKB_GSO_GRE_CSUM = 128,
-	SKB_GSO_IPXIP4 = 256,
-	SKB_GSO_IPXIP6 = 512,
-	SKB_GSO_UDP_TUNNEL = 1024,
-	SKB_GSO_UDP_TUNNEL_CSUM = 2048,
-	SKB_GSO_PARTIAL = 4096,
-	SKB_GSO_TUNNEL_REMCSUM = 8192,
-	SKB_GSO_SCTP = 16384,
-	SKB_GSO_ESP = 32768,
-	SKB_GSO_UDP = 65536,
-	SKB_GSO_UDP_L4 = 131072,
-	SKB_GSO_FRAGLIST = 262144,
-};
-
-struct prot_inuse {
-	int val[64];
-};
-
-struct gro_list {
-	struct list_head list;
-	int count;
-};
-
-struct napi_struct {
-	struct list_head poll_list;
-	long unsigned int state;
-	int weight;
-	int defer_hard_irqs_count;
-	long unsigned int gro_bitmask;
-	int (*poll)(struct napi_struct *, int);
-	int poll_owner;
-	struct net_device *dev;
-	struct gro_list gro_hash[8];
-	struct sk_buff *skb;
-	struct list_head rx_list;
-	int rx_count;
-	struct hrtimer timer;
-	struct list_head dev_list;
-	struct hlist_node napi_hash_node;
-	unsigned int napi_id;
-};
-
 struct sd_flow_limit {
 	u64 count;
 	unsigned int num_buckets;
@@ -82804,7 +115445,11 @@ struct softnet_data {
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
+};
+
+struct so_timestamping {
+	int flags;
+	int bind_phc;
 };
 
 enum txtime_flags {
@@ -82887,7 +115532,6 @@ struct inet_connection_sock {
 	const struct tcp_ulp_ops *icsk_ulp_ops;
 	void *icsk_ulp_data;
 	void (*icsk_clean_acked)(struct sock *, u32);
-	struct hlist_node icsk_listen_portaddr_node;
 	unsigned int (*icsk_sync_mss)(struct sock *, u32);
 	__u8 icsk_ca_state: 5;
 	__u8 icsk_ca_initialized: 1;
@@ -82911,10 +115555,10 @@ struct inet_connection_sock {
 		__u16 rcv_mss;
 	} icsk_ack;
 	struct {
-		int enabled;
 		int search_high;
 		int search_low;
-		int probe_size;
+		u32 probe_size: 31;
+		u32 enabled: 1;
 		u32 probe_timestamp;
 	} icsk_mtup;
 	u32 icsk_probes_tstamp;
@@ -82942,7 +115586,7 @@ struct tcp_ulp_ops {
 	int (*init)(struct sock *);
 	void (*update)(struct sock *, struct proto *, void (*)(struct sock *));
 	void (*release)(struct sock *);
-	int (*get_info)(const struct sock *, struct sk_buff *);
+	int (*get_info)(struct sock *, struct sk_buff *);
 	size_t (*get_info_size)(const struct sock *);
 	void (*clone)(const struct request_sock *, struct sock *, const gfp_t);
 	char name[16];
@@ -83070,7 +115714,7 @@ struct tcp_sock {
 	u32 packets_out;
 	u32 retrans_out;
 	u32 max_packets_out;
-	u32 max_packets_seq;
+	u32 cwnd_usage_seq;
 	u16 urg_data;
 	u8 ecn_flags;
 	u8 keepalive_probes;
@@ -83142,6 +115786,7 @@ struct tcp_sock {
 		u32 probe_seq_end;
 	} mtu_probe;
 	u32 mtu_info;
+	bool is_mptcp;
 	bool syn_smc;
 	const struct tcp_sock_af_ops *af_specific;
 	struct tcp_md5sig_info *md5sig_info;
@@ -83181,6 +115826,7 @@ struct tcp_md5sig_key {
 	u8 keylen;
 	u8 family;
 	u8 prefixlen;
+	u8 flags;
 	union tcp_md5_addr addr;
 	int l3index;
 	u8 key[80];
@@ -83188,12 +115834,9 @@ struct tcp_md5sig_key {
 };
 
 struct net_protocol {
-	int (*early_demux)(struct sk_buff *);
-	int (*early_demux_handler)(struct sk_buff *);
 	int (*handler)(struct sk_buff *);
 	int (*err_handler)(struct sk_buff *, u32);
 	unsigned int no_policy: 1;
-	unsigned int netns_ok: 1;
 	unsigned int icmp_strict_tag_validation: 1;
 };
 
@@ -83253,6 +115896,7 @@ struct tcp_request_sock {
 	u64 snt_synack;
 	bool tfo_listener;
 	bool is_mptcp;
+	bool drop_req;
 	u32 txhash;
 	u32 rcv_isn;
 	u32 snt_isn;
@@ -83272,18 +115916,13 @@ struct tcp_request_sock_ops {
 	u16 mss_clamp;
 	struct tcp_md5sig_key * (*req_md5_lookup)(const struct sock *, const struct sock *);
 	int (*calc_md5_hash)(char *, const struct tcp_md5sig_key *, const struct sock *, const struct sk_buff *);
-	void (*init_req)(struct request_sock *, const struct sock *, struct sk_buff *);
 	__u32 (*cookie_init_seq)(const struct sk_buff *, __u16 *);
-	struct dst_entry * (*route_req)(const struct sock *, struct flowi *, const struct request_sock *);
+	struct dst_entry * (*route_req)(const struct sock *, struct sk_buff *, struct flowi *, struct request_sock *);
 	u32 (*init_seq)(const struct sk_buff *);
 	u32 (*init_ts_off)(const struct net *, const struct sk_buff *);
 	int (*send_synack)(const struct sock *, struct dst_entry *, struct flowi *, struct request_sock *, struct tcp_fastopen_cookie *, enum tcp_synack_type, struct sk_buff *);
 };
 
-struct nf_conntrack {
-	atomic_t use;
-};
-
 enum {
 	SKB_FCLONE_UNAVAILABLE = 0,
 	SKB_FCLONE_ORIG = 1,
@@ -83304,6 +115943,7 @@ struct skb_seq_state {
 	struct sk_buff *root_skb;
 	struct sk_buff *cur_skb;
 	__u8 *frag_data;
+	__u32 frag_off;
 };
 
 struct skb_checksum_ops {
@@ -83345,9 +115985,24 @@ struct napi_gro_cb {
 	struct sk_buff *last;
 };
 
-enum skb_free_reason {
-	SKB_REASON_CONSUMED = 0,
-	SKB_REASON_DROPPED = 1,
+enum {
+	TCA_UNSPEC = 0,
+	TCA_KIND = 1,
+	TCA_OPTIONS = 2,
+	TCA_STATS = 3,
+	TCA_XSTATS = 4,
+	TCA_RATE = 5,
+	TCA_FCNT = 6,
+	TCA_STATS2 = 7,
+	TCA_STAB = 8,
+	TCA_PAD = 9,
+	TCA_DUMP_INVISIBLE = 10,
+	TCA_CHAIN = 11,
+	TCA_HW_OFFLOAD = 12,
+	TCA_INGRESS_BLOCK = 13,
+	TCA_EGRESS_BLOCK = 14,
+	TCA_DUMP_FLAGS = 15,
+	__TCA_MAX = 16,
 };
 
 struct vlan_hdr {
@@ -83402,13 +116057,22 @@ struct napi_alloc_cache {
 	void *skb_cache[64];
 };
 
-struct ahash_request;
+typedef int (*sendmsg_func)(struct sock *, struct msghdr *, struct kvec *, size_t, size_t);
+
+typedef int (*sendpage_func)(struct sock *, struct page *, int, size_t, int);
+
+struct scm_fp_list {
+	short int count;
+	short int max;
+	struct user_struct *user;
+	struct file *fp[253];
+};
 
 struct scm_cookie {
 	struct pid *pid;
 	struct scm_fp_list *fp;
 	struct scm_creds creds;
-	u32 secid;
+	struct lsmblob lsmblob;
 };
 
 struct scm_timestamping {
@@ -83545,6 +116209,10 @@ struct gen_cookie {
 	long: 64;
 };
 
+typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *, struct netlink_ext_ack *);
+
+typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *);
+
 enum rtnl_link_flags {
 	RTNL_FLAG_DOIT_UNLOCKED = 1,
 };
@@ -83574,12 +116242,6 @@ typedef u32 u_int32_t;
 
 typedef u64 u_int64_t;
 
-struct flow_dissector_key_control {
-	u16 thoff;
-	u16 addr_type;
-	u32 flags;
-};
-
 enum flow_dissect_ret {
 	FLOW_DISSECT_RET_OUT_GOOD = 0,
 	FLOW_DISSECT_RET_OUT_BAD = 1,
@@ -83588,12 +116250,6 @@ enum flow_dissect_ret {
 	FLOW_DISSECT_RET_CONTINUE = 4,
 };
 
-struct flow_dissector_key_basic {
-	__be16 n_proto;
-	u8 ip_proto;
-	u8 padding;
-};
-
 struct flow_dissector_key_tags {
 	u32 flow_label;
 };
@@ -83717,16 +116373,6 @@ struct flow_dissector_key {
 	size_t offset;
 };
 
-struct flow_dissector {
-	unsigned int used_keys;
-	short unsigned int offset[28];
-};
-
-struct flow_keys_basic {
-	struct flow_dissector_key_control control;
-	struct flow_dissector_key_basic basic;
-};
-
 struct flow_keys {
 	struct flow_dissector_key_control control;
 	struct flow_dissector_key_basic basic;
@@ -83755,19 +116401,6 @@ enum ip_conntrack_info {
 	IP_CT_UNTRACKED = 7,
 };
 
-struct xt_table_info;
-
-struct xt_table {
-	struct list_head list;
-	unsigned int valid_hooks;
-	struct xt_table_info *private;
-	struct module *me;
-	u_int8_t af;
-	int priority;
-	int (*table_init)(struct net *);
-	const char name[32];
-};
-
 union nf_inet_addr {
 	__u32 all[4];
 	__be32 ip;
@@ -83832,20 +116465,18 @@ struct nf_ct_dccp {
 struct ip_ct_sctp {
 	enum sctp_conntrack state;
 	__be32 vtag[2];
+	u8 init[2];
 	u8 last_dir;
 	u8 flags;
 };
 
 struct nf_ct_event;
 
-struct nf_ct_event_notifier {
-	int (*fcn)(unsigned int, struct nf_ct_event *);
-};
-
 struct nf_exp_event;
 
-struct nf_exp_event_notifier {
-	int (*fcn)(unsigned int, struct nf_exp_event *);
+struct nf_ct_event_notifier {
+	int (*ct_event)(unsigned int, const struct nf_ct_event *);
+	int (*exp_event)(unsigned int, const struct nf_exp_event *);
 };
 
 enum bpf_ret_code {
@@ -83861,6 +116492,16 @@ enum {
 	BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = 4,
 };
 
+enum {
+	TCA_FLOWER_KEY_CT_FLAGS_NEW = 1,
+	TCA_FLOWER_KEY_CT_FLAGS_ESTABLISHED = 2,
+	TCA_FLOWER_KEY_CT_FLAGS_RELATED = 4,
+	TCA_FLOWER_KEY_CT_FLAGS_TRACKED = 8,
+	TCA_FLOWER_KEY_CT_FLAGS_INVALID = 16,
+	TCA_FLOWER_KEY_CT_FLAGS_REPLY = 32,
+	__TCA_FLOWER_KEY_CT_FLAGS_MAX = 33,
+};
+
 enum devlink_port_type {
 	DEVLINK_PORT_TYPE_NOTSET = 0,
 	DEVLINK_PORT_TYPE_AUTO = 1,
@@ -83876,6 +116517,7 @@ enum devlink_port_flavour {
 	DEVLINK_PORT_FLAVOUR_PCI_VF = 4,
 	DEVLINK_PORT_FLAVOUR_VIRTUAL = 5,
 	DEVLINK_PORT_FLAVOUR_UNUSED = 6,
+	DEVLINK_PORT_FLAVOUR_PCI_SF = 7,
 };
 
 struct devlink_port_phys_attrs {
@@ -83896,6 +116538,13 @@ struct devlink_port_pci_vf_attrs {
 	u8 external: 1;
 };
 
+struct devlink_port_pci_sf_attrs {
+	u32 controller;
+	u32 sf;
+	u16 pf;
+	u8 external: 1;
+};
+
 struct devlink_port_attrs {
 	u8 split: 1;
 	u8 splittable: 1;
@@ -83906,18 +116555,20 @@ struct devlink_port_attrs {
 		struct devlink_port_phys_attrs phys;
 		struct devlink_port_pci_pf_attrs pci_pf;
 		struct devlink_port_pci_vf_attrs pci_vf;
+		struct devlink_port_pci_sf_attrs pci_sf;
 	};
 };
 
 struct devlink;
 
+struct devlink_rate;
+
 struct devlink_port {
 	struct list_head list;
 	struct list_head param_list;
 	struct list_head region_list;
 	struct devlink *devlink;
 	unsigned int index;
-	bool registered;
 	spinlock_t type_lock;
 	enum devlink_port_type type;
 	enum devlink_port_type desired_type;
@@ -83928,18 +116579,175 @@ struct devlink_port {
 	struct delayed_work type_warn_dw;
 	struct list_head reporter_list;
 	struct mutex reporters_lock;
+	struct devlink_rate *devlink_rate;
 };
 
-struct ip_tunnel_parm {
-	char name[16];
-	int link;
-	__be16 i_flags;
-	__be16 o_flags;
-	__be32 i_key;
-	__be32 o_key;
-	struct iphdr iph;
+enum phylink_op_type {
+	PHYLINK_NETDEV = 0,
+	PHYLINK_DEV = 1,
 };
 
+struct phylink_link_state;
+
+struct phylink_config {
+	struct device *dev;
+	enum phylink_op_type type;
+	bool pcs_poll;
+	bool poll_fixed_state;
+	bool mac_managed_pm;
+	bool ovr_an_inband;
+	void (*get_fixed_state)(struct phylink_config *, struct phylink_link_state *);
+};
+
+struct dsa_device_ops;
+
+struct dsa_switch_tree;
+
+struct dsa_switch;
+
+struct dsa_netdevice_ops;
+
+struct dsa_port {
+	union {
+		struct net_device *master;
+		struct net_device *slave;
+	};
+	const struct dsa_device_ops *tag_ops;
+	struct dsa_switch_tree *dst;
+	struct sk_buff * (*rcv)(struct sk_buff *, struct net_device *);
+	enum {
+		DSA_PORT_TYPE_UNUSED = 0,
+		DSA_PORT_TYPE_CPU = 1,
+		DSA_PORT_TYPE_DSA = 2,
+		DSA_PORT_TYPE_USER = 3,
+	} type;
+	struct dsa_switch *ds;
+	unsigned int index;
+	const char *name;
+	struct dsa_port *cpu_dp;
+	u8 mac[6];
+	struct device_node *dn;
+	unsigned int ageing_time;
+	bool vlan_filtering;
+	bool learning;
+	u8 stp_state;
+	struct net_device *bridge_dev;
+	int bridge_num;
+	struct devlink_port devlink_port;
+	bool devlink_port_setup;
+	struct phylink *pl;
+	struct phylink_config pl_config;
+	struct net_device *lag_dev;
+	bool lag_tx_enabled;
+	struct net_device *hsr_dev;
+	struct list_head list;
+	void *priv;
+	const struct ethtool_ops *orig_ethtool_ops;
+	const struct dsa_netdevice_ops *netdev_ops;
+	struct list_head fdbs;
+	struct list_head mdbs;
+	bool setup;
+};
+
+enum netdev_lag_tx_type {
+	NETDEV_LAG_TX_TYPE_UNKNOWN = 0,
+	NETDEV_LAG_TX_TYPE_RANDOM = 1,
+	NETDEV_LAG_TX_TYPE_BROADCAST = 2,
+	NETDEV_LAG_TX_TYPE_ROUNDROBIN = 3,
+	NETDEV_LAG_TX_TYPE_ACTIVEBACKUP = 4,
+	NETDEV_LAG_TX_TYPE_HASH = 5,
+};
+
+enum netdev_lag_hash {
+	NETDEV_LAG_HASH_NONE = 0,
+	NETDEV_LAG_HASH_L2 = 1,
+	NETDEV_LAG_HASH_L34 = 2,
+	NETDEV_LAG_HASH_L23 = 3,
+	NETDEV_LAG_HASH_E23 = 4,
+	NETDEV_LAG_HASH_E34 = 5,
+	NETDEV_LAG_HASH_VLAN_SRCMAC = 6,
+	NETDEV_LAG_HASH_UNKNOWN = 7,
+};
+
+struct netdev_lag_upper_info {
+	enum netdev_lag_tx_type tx_type;
+	enum netdev_lag_hash hash_type;
+};
+
+struct netdev_notifier_changeupper_info {
+	struct netdev_notifier_info info;
+	struct net_device *upper_dev;
+	bool master;
+	bool linking;
+	void *upper_info;
+};
+
+struct flow_match {
+	struct flow_dissector *dissector;
+	void *mask;
+	void *key;
+};
+
+enum flow_action_id {
+	FLOW_ACTION_ACCEPT = 0,
+	FLOW_ACTION_DROP = 1,
+	FLOW_ACTION_TRAP = 2,
+	FLOW_ACTION_GOTO = 3,
+	FLOW_ACTION_REDIRECT = 4,
+	FLOW_ACTION_MIRRED = 5,
+	FLOW_ACTION_REDIRECT_INGRESS = 6,
+	FLOW_ACTION_MIRRED_INGRESS = 7,
+	FLOW_ACTION_VLAN_PUSH = 8,
+	FLOW_ACTION_VLAN_POP = 9,
+	FLOW_ACTION_VLAN_MANGLE = 10,
+	FLOW_ACTION_TUNNEL_ENCAP = 11,
+	FLOW_ACTION_TUNNEL_DECAP = 12,
+	FLOW_ACTION_MANGLE = 13,
+	FLOW_ACTION_ADD = 14,
+	FLOW_ACTION_CSUM = 15,
+	FLOW_ACTION_MARK = 16,
+	FLOW_ACTION_PTYPE = 17,
+	FLOW_ACTION_PRIORITY = 18,
+	FLOW_ACTION_WAKE = 19,
+	FLOW_ACTION_QUEUE = 20,
+	FLOW_ACTION_SAMPLE = 21,
+	FLOW_ACTION_POLICE = 22,
+	FLOW_ACTION_CT = 23,
+	FLOW_ACTION_CT_METADATA = 24,
+	FLOW_ACTION_MPLS_PUSH = 25,
+	FLOW_ACTION_MPLS_POP = 26,
+	FLOW_ACTION_MPLS_MANGLE = 27,
+	FLOW_ACTION_GATE = 28,
+	FLOW_ACTION_PPPOE_PUSH = 29,
+	NUM_FLOW_ACTIONS = 30,
+};
+
+enum flow_action_mangle_base {
+	FLOW_ACT_MANGLE_UNSPEC = 0,
+	FLOW_ACT_MANGLE_HDR_TYPE_ETH = 1,
+	FLOW_ACT_MANGLE_HDR_TYPE_IP4 = 2,
+	FLOW_ACT_MANGLE_HDR_TYPE_IP6 = 3,
+	FLOW_ACT_MANGLE_HDR_TYPE_TCP = 4,
+	FLOW_ACT_MANGLE_HDR_TYPE_UDP = 5,
+};
+
+enum flow_action_hw_stats {
+	FLOW_ACTION_HW_STATS_IMMEDIATE = 1,
+	FLOW_ACTION_HW_STATS_DELAYED = 2,
+	FLOW_ACTION_HW_STATS_ANY = 3,
+	FLOW_ACTION_HW_STATS_DISABLED = 4,
+	FLOW_ACTION_HW_STATS_DONT_CARE = 7,
+};
+
+typedef void (*action_destr)(void *);
+
+struct flow_action_cookie {
+	u32 cookie_len;
+	u8 cookie[0];
+};
+
+struct nf_flowtable;
+
 struct ip_tunnel_key {
 	__be64 tun_id;
 	union {
@@ -83974,11 +116782,174 @@ struct ip_tunnel_info {
 	u8 mode;
 };
 
+struct psample_group;
+
+struct action_gate_entry;
+
+struct flow_action_entry {
+	enum flow_action_id id;
+	enum flow_action_hw_stats hw_stats;
+	action_destr destructor;
+	void *destructor_priv;
+	union {
+		u32 chain_index;
+		struct net_device *dev;
+		struct {
+			u16 vid;
+			__be16 proto;
+			u8 prio;
+		} vlan;
+		struct {
+			enum flow_action_mangle_base htype;
+			u32 offset;
+			u32 mask;
+			u32 val;
+		} mangle;
+		struct ip_tunnel_info *tunnel;
+		u32 csum_flags;
+		u32 mark;
+		u16 ptype;
+		u32 priority;
+		struct {
+			u32 ctx;
+			u32 index;
+			u8 vf;
+		} queue;
+		struct {
+			struct psample_group *psample_group;
+			u32 rate;
+			u32 trunc_size;
+			bool truncate;
+		} sample;
+		struct {
+			u32 index;
+			u32 burst;
+			u64 rate_bytes_ps;
+			u64 burst_pkt;
+			u64 rate_pkt_ps;
+			u32 mtu;
+		} police;
+		struct {
+			int action;
+			u16 zone;
+			struct nf_flowtable *flow_table;
+		} ct;
+		struct {
+			long unsigned int cookie;
+			u32 mark;
+			u32 labels[4];
+			bool orig_dir;
+		} ct_metadata;
+		struct {
+			u32 label;
+			__be16 proto;
+			u8 tc;
+			u8 bos;
+			u8 ttl;
+		} mpls_push;
+		struct {
+			__be16 proto;
+		} mpls_pop;
+		struct {
+			u32 label;
+			u8 tc;
+			u8 bos;
+			u8 ttl;
+		} mpls_mangle;
+		struct {
+			u32 index;
+			s32 prio;
+			u64 basetime;
+			u64 cycletime;
+			u64 cycletimeext;
+			u32 num_entries;
+			struct action_gate_entry *entries;
+		} gate;
+		struct {
+			u16 sid;
+		} pppoe;
+	};
+	struct flow_action_cookie *cookie;
+};
+
+struct flow_action {
+	unsigned int num_entries;
+	struct flow_action_entry entries[0];
+};
+
+struct flow_rule {
+	struct flow_match match;
+	struct flow_action action;
+};
+
+struct flow_stats {
+	u64 pkts;
+	u64 bytes;
+	u64 drops;
+	u64 lastused;
+	enum flow_action_hw_stats used_hw_stats;
+	bool used_hw_stats_valid;
+};
+
+enum flow_cls_command {
+	FLOW_CLS_REPLACE = 0,
+	FLOW_CLS_DESTROY = 1,
+	FLOW_CLS_STATS = 2,
+	FLOW_CLS_TMPLT_CREATE = 3,
+	FLOW_CLS_TMPLT_DESTROY = 4,
+};
+
+struct flow_cls_common_offload {
+	u32 chain_index;
+	__be16 protocol;
+	u32 prio;
+	struct netlink_ext_ack *extack;
+};
+
+struct flow_cls_offload {
+	struct flow_cls_common_offload common;
+	enum flow_cls_command command;
+	long unsigned int cookie;
+	struct flow_rule *rule;
+	struct flow_stats stats;
+	u32 classid;
+};
+
 union tcp_word_hdr {
 	struct tcphdr hdr;
 	__be32 words[5];
 };
 
+struct dsa_chip_data {
+	struct device *host_dev;
+	int sw_addr;
+	struct device *netdev[12];
+	int eeprom_len;
+	struct device_node *of_node;
+	char *port_names[12];
+	struct device_node *port_dn[12];
+	s8 rtable[4];
+};
+
+struct dsa_platform_data {
+	struct device *netdev;
+	struct net_device *of_netdev;
+	int nr_chips;
+	struct dsa_chip_data *chip;
+};
+
+struct phylink_link_state {
+	long unsigned int advertising[2];
+	long unsigned int lp_advertising[2];
+	phy_interface_t interface;
+	int speed;
+	int duplex;
+	int pause;
+	unsigned int link: 1;
+	unsigned int an_enabled: 1;
+	unsigned int an_complete: 1;
+};
+
 enum devlink_sb_pool_type {
 	DEVLINK_SB_POOL_TYPE_INGRESS = 0,
 	DEVLINK_SB_POOL_TYPE_EGRESS = 1,
@@ -83994,6 +116965,19 @@ enum devlink_eswitch_encap_mode {
 	DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 1,
 };
 
+enum devlink_rate_type {
+	DEVLINK_RATE_TYPE_LEAF = 0,
+	DEVLINK_RATE_TYPE_NODE = 1,
+};
+
+enum devlink_param_cmode {
+	DEVLINK_PARAM_CMODE_RUNTIME = 0,
+	DEVLINK_PARAM_CMODE_DRIVERINIT = 1,
+	DEVLINK_PARAM_CMODE_PERMANENT = 2,
+	__DEVLINK_PARAM_CMODE_MAX = 3,
+	DEVLINK_PARAM_CMODE_MAX = 2,
+};
+
 enum devlink_trap_action {
 	DEVLINK_TRAP_ACTION_DROP = 0,
 	DEVLINK_TRAP_ACTION_TRAP = 1,
@@ -84026,6 +117010,16 @@ enum devlink_dpipe_field_mapping_type {
 	DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 1,
 };
 
+enum devlink_port_fn_state {
+	DEVLINK_PORT_FN_STATE_INACTIVE = 0,
+	DEVLINK_PORT_FN_STATE_ACTIVE = 1,
+};
+
+enum devlink_port_fn_opstate {
+	DEVLINK_PORT_FN_OPSTATE_DETACHED = 0,
+	DEVLINK_PORT_FN_OPSTATE_ATTACHED = 1,
+};
+
 struct devlink_dev_stats {
 	u32 reload_stats[6];
 	u32 remote_reload_stats[6];
@@ -84036,8 +117030,9 @@ struct devlink_dpipe_headers;
 struct devlink_ops;
 
 struct devlink {
-	struct list_head list;
+	u32 index;
 	struct list_head port_list;
+	struct list_head rate_list;
 	struct list_head sb_list;
 	struct list_head dpipe_table_list;
 	struct list_head resource_list;
@@ -84057,8 +117052,8 @@ struct devlink {
 	struct mutex lock;
 	u8 reload_failed: 1;
 	u8 reload_enabled: 1;
-	u8 registered: 1;
-	long: 64;
+	refcount_t refcount;
+	struct completion comp;
 	char priv[0];
 };
 
@@ -84081,6 +117076,8 @@ struct devlink_trap_group;
 
 struct devlink_trap_policer;
 
+struct devlink_port_new_attrs;
+
 struct devlink_ops {
 	u32 supported_flash_update_params;
 	long unsigned int reload_actions;
@@ -84114,12 +117111,53 @@ struct devlink_ops {
 	int (*trap_group_init)(struct devlink *, const struct devlink_trap_group *);
 	int (*trap_group_set)(struct devlink *, const struct devlink_trap_group *, const struct devlink_trap_policer *, struct netlink_ext_ack *);
 	int (*trap_group_action_set)(struct devlink *, const struct devlink_trap_group *, enum devlink_trap_action, struct netlink_ext_ack *);
+	int (*trap_drop_counter_get)(struct devlink *, const struct devlink_trap *, u64 *);
 	int (*trap_policer_init)(struct devlink *, const struct devlink_trap_policer *);
 	void (*trap_policer_fini)(struct devlink *, const struct devlink_trap_policer *);
 	int (*trap_policer_set)(struct devlink *, const struct devlink_trap_policer *, u64, u64, struct netlink_ext_ack *);
 	int (*trap_policer_counter_get)(struct devlink *, const struct devlink_trap_policer *, u64 *);
-	int (*port_function_hw_addr_get)(struct devlink *, struct devlink_port *, u8 *, int *, struct netlink_ext_ack *);
-	int (*port_function_hw_addr_set)(struct devlink *, struct devlink_port *, const u8 *, int, struct netlink_ext_ack *);
+	int (*port_function_hw_addr_get)(struct devlink_port *, u8 *, int *, struct netlink_ext_ack *);
+	int (*port_function_hw_addr_set)(struct devlink_port *, const u8 *, int, struct netlink_ext_ack *);
+	int (*port_new)(struct devlink *, const struct devlink_port_new_attrs *, struct netlink_ext_ack *, unsigned int *);
+	int (*port_del)(struct devlink *, unsigned int, struct netlink_ext_ack *);
+	int (*port_fn_state_get)(struct devlink_port *, enum devlink_port_fn_state *, enum devlink_port_fn_opstate *, struct netlink_ext_ack *);
+	int (*port_fn_state_set)(struct devlink_port *, enum devlink_port_fn_state, struct netlink_ext_ack *);
+	int (*rate_leaf_tx_share_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
+	int (*rate_leaf_tx_max_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
+	int (*rate_node_tx_share_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
+	int (*rate_node_tx_max_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
+	int (*rate_node_new)(struct devlink_rate *, void **, struct netlink_ext_ack *);
+	int (*rate_node_del)(struct devlink_rate *, void *, struct netlink_ext_ack *);
+	int (*rate_leaf_parent_set)(struct devlink_rate *, struct devlink_rate *, void *, void *, struct netlink_ext_ack *);
+	int (*rate_node_parent_set)(struct devlink_rate *, struct devlink_rate *, void *, void *, struct netlink_ext_ack *);
+};
+
+struct devlink_rate {
+	struct list_head list;
+	enum devlink_rate_type type;
+	struct devlink *devlink;
+	void *priv;
+	u64 tx_share;
+	u64 tx_max;
+	struct devlink_rate *parent;
+	union {
+		struct devlink_port *devlink_port;
+		struct {
+			char *name;
+			refcount_t refcnt;
+		};
+	};
+};
+
+struct devlink_port_new_attrs {
+	enum devlink_port_flavour flavour;
+	unsigned int port_index;
+	u32 controller;
+	u32 sfnum;
+	u16 pfnum;
+	u8 port_index_valid: 1;
+	u8 controller_valid: 1;
+	u8 sfnum_valid: 1;
 };
 
 struct devlink_sb_pool_info {
@@ -84144,8 +117182,21 @@ struct devlink_dpipe_header {
 	bool global;
 };
 
+union devlink_param_value {
+	u8 vu8;
+	u16 vu16;
+	u32 vu32;
+	char vstr[32];
+	bool vbool;
+};
+
+struct devlink_param_gset_ctx {
+	union devlink_param_value val;
+	enum devlink_param_cmode cmode;
+};
+
 struct devlink_flash_update_params {
-	const char *file_name;
+	const struct firmware *fw;
 	const char *component;
 	u32 overwrite_mask;
 };
@@ -84185,62 +117236,267 @@ struct arphdr {
 	__be16 ar_op;
 };
 
-struct fib_info;
-
-struct fib_nh {
-	struct fib_nh_common nh_common;
-	struct hlist_node nh_hash;
-	struct fib_info *nh_parent;
-	__u32 nh_tclassid;
-	__be32 nh_saddr;
-	int nh_saddr_genid;
+struct switchdev_brport_flags {
+	long unsigned int val;
+	long unsigned int mask;
 };
 
-struct fib_info {
-	struct hlist_node fib_hash;
-	struct hlist_node fib_lhash;
-	struct list_head nh_list;
-	struct net *fib_net;
-	int fib_treeref;
-	refcount_t fib_clntref;
-	unsigned int fib_flags;
-	unsigned char fib_dead;
-	unsigned char fib_protocol;
-	unsigned char fib_scope;
-	unsigned char fib_type;
-	__be32 fib_prefsrc;
-	u32 fib_tb_id;
-	u32 fib_priority;
-	struct dst_metrics *fib_metrics;
-	int fib_nhs;
-	bool fib_nh_is_v6;
-	bool nh_updated;
-	struct nexthop *nh;
-	struct callback_head rcu;
-	struct fib_nh fib_nh[0];
+enum switchdev_obj_id {
+	SWITCHDEV_OBJ_ID_UNDEFINED = 0,
+	SWITCHDEV_OBJ_ID_PORT_VLAN = 1,
+	SWITCHDEV_OBJ_ID_PORT_MDB = 2,
+	SWITCHDEV_OBJ_ID_HOST_MDB = 3,
+	SWITCHDEV_OBJ_ID_MRP = 4,
+	SWITCHDEV_OBJ_ID_RING_TEST_MRP = 5,
+	SWITCHDEV_OBJ_ID_RING_ROLE_MRP = 6,
+	SWITCHDEV_OBJ_ID_RING_STATE_MRP = 7,
+	SWITCHDEV_OBJ_ID_IN_TEST_MRP = 8,
+	SWITCHDEV_OBJ_ID_IN_ROLE_MRP = 9,
+	SWITCHDEV_OBJ_ID_IN_STATE_MRP = 10,
 };
 
-struct nh_info;
+struct switchdev_obj {
+	struct list_head list;
+	struct net_device *orig_dev;
+	enum switchdev_obj_id id;
+	u32 flags;
+	void *complete_priv;
+	void (*complete)(struct net_device *, int, void *);
+};
 
-struct nh_group;
+struct switchdev_obj_port_vlan {
+	struct switchdev_obj obj;
+	u16 flags;
+	u16 vid;
+};
 
-struct nexthop {
-	struct rb_node rb_node;
-	struct list_head fi_list;
-	struct list_head f6i_list;
-	struct list_head fdb_list;
-	struct list_head grp_list;
-	struct net *net;
-	u32 id;
-	u8 protocol;
-	u8 nh_flags;
-	bool is_group;
-	refcount_t refcnt;
-	struct callback_head rcu;
-	union {
-		struct nh_info *nh_info;
-		struct nh_group *nh_grp;
-	};
+struct switchdev_obj_port_mdb {
+	struct switchdev_obj obj;
+	unsigned char addr[6];
+	u16 vid;
+};
+
+struct switchdev_obj_mrp {
+	struct switchdev_obj obj;
+	struct net_device *p_port;
+	struct net_device *s_port;
+	u32 ring_id;
+	u16 prio;
+};
+
+struct switchdev_obj_ring_role_mrp {
+	struct switchdev_obj obj;
+	u8 ring_role;
+	u32 ring_id;
+	u8 sw_backup;
+};
+
+enum dsa_tag_protocol {
+	DSA_TAG_PROTO_NONE = 0,
+	DSA_TAG_PROTO_BRCM = 1,
+	DSA_TAG_PROTO_BRCM_LEGACY = 22,
+	DSA_TAG_PROTO_BRCM_PREPEND = 2,
+	DSA_TAG_PROTO_DSA = 3,
+	DSA_TAG_PROTO_EDSA = 4,
+	DSA_TAG_PROTO_GSWIP = 5,
+	DSA_TAG_PROTO_KSZ9477 = 6,
+	DSA_TAG_PROTO_KSZ9893 = 7,
+	DSA_TAG_PROTO_LAN9303 = 8,
+	DSA_TAG_PROTO_MTK = 9,
+	DSA_TAG_PROTO_QCA = 10,
+	DSA_TAG_PROTO_TRAILER = 11,
+	DSA_TAG_PROTO_8021Q = 12,
+	DSA_TAG_PROTO_SJA1105 = 13,
+	DSA_TAG_PROTO_KSZ8795 = 14,
+	DSA_TAG_PROTO_OCELOT = 15,
+	DSA_TAG_PROTO_AR9331 = 16,
+	DSA_TAG_PROTO_RTL4_A = 17,
+	DSA_TAG_PROTO_HELLCREEK = 18,
+	DSA_TAG_PROTO_XRS700X = 19,
+	DSA_TAG_PROTO_OCELOT_8021Q = 20,
+	DSA_TAG_PROTO_SEVILLE = 21,
+	DSA_TAG_PROTO_SJA1110 = 23,
+};
+
+struct dsa_device_ops {
+	struct sk_buff * (*xmit)(struct sk_buff *, struct net_device *);
+	struct sk_buff * (*rcv)(struct sk_buff *, struct net_device *);
+	void (*flow_dissect)(const struct sk_buff *, __be16 *, int *);
+	unsigned int needed_headroom;
+	unsigned int needed_tailroom;
+	const char *name;
+	enum dsa_tag_protocol proto;
+	bool promisc_on_master;
+};
+
+struct dsa_netdevice_ops {
+	int (*ndo_eth_ioctl)(struct net_device *, struct ifreq *, int);
+};
+
+struct dsa_switch_tree {
+	struct list_head list;
+	struct raw_notifier_head nh;
+	unsigned int index;
+	struct kref refcount;
+	bool setup;
+	const struct dsa_device_ops *tag_ops;
+	enum dsa_tag_protocol default_proto;
+	struct dsa_platform_data *pd;
+	struct list_head ports;
+	struct list_head rtable;
+	struct net_device **lags;
+	unsigned int lags_len;
+	unsigned int last_switch;
+};
+
+struct dsa_mall_mirror_tc_entry {
+	u8 to_local_port;
+	bool ingress;
+};
+
+struct dsa_mall_policer_tc_entry {
+	u32 burst;
+	u64 rate_bytes_per_sec;
+};
+
+struct dsa_8021q_context;
+
+struct dsa_switch_ops;
+
+struct dsa_switch {
+	bool setup;
+	struct device *dev;
+	struct dsa_switch_tree *dst;
+	unsigned int index;
+	struct notifier_block nb;
+	void *priv;
+	struct dsa_chip_data *cd;
+	const struct dsa_switch_ops *ops;
+	u32 phys_mii_mask;
+	struct mii_bus *slave_mii_bus;
+	unsigned int ageing_time_min;
+	unsigned int ageing_time_max;
+	struct dsa_8021q_context *tag_8021q_ctx;
+	struct devlink *devlink;
+	unsigned int num_tx_queues;
+	bool vlan_filtering_is_global;
+	bool needs_standalone_vlan_filtering;
+	bool configure_vlan_while_not_filtering;
+	bool untag_bridge_pvid;
+	bool assisted_learning_on_cpu_port;
+	bool vlan_filtering;
+	bool pcs_poll;
+	bool mtu_enforcement_ingress;
+	unsigned int num_lag_ids;
+	unsigned int num_fwd_offloading_bridges;
+	size_t num_ports;
+};
+
+typedef int dsa_fdb_dump_cb_t(const unsigned char *, u16, bool, void *);
+
+struct dsa_switch_ops {
+	enum dsa_tag_protocol (*get_tag_protocol)(struct dsa_switch *, int, enum dsa_tag_protocol);
+	int (*change_tag_protocol)(struct dsa_switch *, int, enum dsa_tag_protocol);
+	int (*setup)(struct dsa_switch *);
+	void (*teardown)(struct dsa_switch *);
+	int (*port_setup)(struct dsa_switch *, int);
+	void (*port_teardown)(struct dsa_switch *, int);
+	u32 (*get_phy_flags)(struct dsa_switch *, int);
+	int (*phy_read)(struct dsa_switch *, int, int);
+	int (*phy_write)(struct dsa_switch *, int, int, u16);
+	void (*adjust_link)(struct dsa_switch *, int, struct phy_device *);
+	void (*fixed_link_update)(struct dsa_switch *, int, struct fixed_phy_status *);
+	void (*phylink_validate)(struct dsa_switch *, int, long unsigned int *, struct phylink_link_state *);
+	int (*phylink_mac_link_state)(struct dsa_switch *, int, struct phylink_link_state *);
+	void (*phylink_mac_config)(struct dsa_switch *, int, unsigned int, const struct phylink_link_state *);
+	void (*phylink_mac_an_restart)(struct dsa_switch *, int);
+	void (*phylink_mac_link_down)(struct dsa_switch *, int, unsigned int, phy_interface_t);
+	void (*phylink_mac_link_up)(struct dsa_switch *, int, unsigned int, phy_interface_t, struct phy_device *, int, int, bool, bool);
+	void (*phylink_fixed_state)(struct dsa_switch *, int, struct phylink_link_state *);
+	void (*get_strings)(struct dsa_switch *, int, u32, uint8_t *);
+	void (*get_ethtool_stats)(struct dsa_switch *, int, uint64_t *);
+	int (*get_sset_count)(struct dsa_switch *, int, int);
+	void (*get_ethtool_phy_stats)(struct dsa_switch *, int, uint64_t *);
+	void (*get_stats64)(struct dsa_switch *, int, struct rtnl_link_stats64 *);
+	void (*self_test)(struct dsa_switch *, int, struct ethtool_test *, u64 *);
+	void (*get_wol)(struct dsa_switch *, int, struct ethtool_wolinfo *);
+	int (*set_wol)(struct dsa_switch *, int, struct ethtool_wolinfo *);
+	int (*get_ts_info)(struct dsa_switch *, int, struct ethtool_ts_info *);
+	int (*suspend)(struct dsa_switch *);
+	int (*resume)(struct dsa_switch *);
+	int (*port_enable)(struct dsa_switch *, int, struct phy_device *);
+	void (*port_disable)(struct dsa_switch *, int);
+	struct dsa_port * (*preferred_default_local_cpu_port)(struct dsa_switch *);
+	int (*set_mac_eee)(struct dsa_switch *, int, struct ethtool_eee *);
+	int (*get_mac_eee)(struct dsa_switch *, int, struct ethtool_eee *);
+	int (*get_eeprom_len)(struct dsa_switch *);
+	int (*get_eeprom)(struct dsa_switch *, struct ethtool_eeprom *, u8 *);
+	int (*set_eeprom)(struct dsa_switch *, struct ethtool_eeprom *, u8 *);
+	int (*get_regs_len)(struct dsa_switch *, int);
+	void (*get_regs)(struct dsa_switch *, int, struct ethtool_regs *, void *);
+	int (*port_prechangeupper)(struct dsa_switch *, int, struct netdev_notifier_changeupper_info *);
+	int (*set_ageing_time)(struct dsa_switch *, unsigned int);
+	int (*port_bridge_join)(struct dsa_switch *, int, struct net_device *);
+	void (*port_bridge_leave)(struct dsa_switch *, int, struct net_device *);
+	int (*port_bridge_tx_fwd_offload)(struct dsa_switch *, int, struct net_device *, int);
+	void (*port_bridge_tx_fwd_unoffload)(struct dsa_switch *, int, struct net_device *, int);
+	void (*port_stp_state_set)(struct dsa_switch *, int, u8);
+	void (*port_fast_age)(struct dsa_switch *, int);
+	int (*port_pre_bridge_flags)(struct dsa_switch *, int, struct switchdev_brport_flags, struct netlink_ext_ack *);
+	int (*port_bridge_flags)(struct dsa_switch *, int, struct switchdev_brport_flags, struct netlink_ext_ack *);
+	int (*port_vlan_filtering)(struct dsa_switch *, int, bool, struct netlink_ext_ack *);
+	int (*port_vlan_add)(struct dsa_switch *, int, const struct switchdev_obj_port_vlan *, struct netlink_ext_ack *);
+	int (*port_vlan_del)(struct dsa_switch *, int, const struct switchdev_obj_port_vlan *);
+	int (*port_fdb_add)(struct dsa_switch *, int, const unsigned char *, u16);
+	int (*port_fdb_del)(struct dsa_switch *, int, const unsigned char *, u16);
+	int (*port_fdb_dump)(struct dsa_switch *, int, dsa_fdb_dump_cb_t *, void *);
+	int (*port_mdb_add)(struct dsa_switch *, int, const struct switchdev_obj_port_mdb *);
+	int (*port_mdb_del)(struct dsa_switch *, int, const struct switchdev_obj_port_mdb *);
+	int (*get_rxnfc)(struct dsa_switch *, int, struct ethtool_rxnfc *, u32 *);
+	int (*set_rxnfc)(struct dsa_switch *, int, struct ethtool_rxnfc *);
+	int (*cls_flower_add)(struct dsa_switch *, int, struct flow_cls_offload *, bool);
+	int (*cls_flower_del)(struct dsa_switch *, int, struct flow_cls_offload *, bool);
+	int (*cls_flower_stats)(struct dsa_switch *, int, struct flow_cls_offload *, bool);
+	int (*port_mirror_add)(struct dsa_switch *, int, struct dsa_mall_mirror_tc_entry *, bool);
+	void (*port_mirror_del)(struct dsa_switch *, int, struct dsa_mall_mirror_tc_entry *);
+	int (*port_policer_add)(struct dsa_switch *, int, struct dsa_mall_policer_tc_entry *);
+	void (*port_policer_del)(struct dsa_switch *, int);
+	int (*port_setup_tc)(struct dsa_switch *, int, enum tc_setup_type, void *);
+	int (*crosschip_bridge_join)(struct dsa_switch *, int, int, int, struct net_device *);
+	void (*crosschip_bridge_leave)(struct dsa_switch *, int, int, int, struct net_device *);
+	int (*crosschip_lag_change)(struct dsa_switch *, int, int);
+	int (*crosschip_lag_join)(struct dsa_switch *, int, int, struct net_device *, struct netdev_lag_upper_info *);
+	int (*crosschip_lag_leave)(struct dsa_switch *, int, int, struct net_device *);
+	int (*port_hwtstamp_get)(struct dsa_switch *, int, struct ifreq *);
+	int (*port_hwtstamp_set)(struct dsa_switch *, int, struct ifreq *);
+	void (*port_txtstamp)(struct dsa_switch *, int, struct sk_buff *);
+	bool (*port_rxtstamp)(struct dsa_switch *, int, struct sk_buff *, unsigned int);
+	int (*devlink_param_get)(struct dsa_switch *, u32, struct devlink_param_gset_ctx *);
+	int (*devlink_param_set)(struct dsa_switch *, u32, struct devlink_param_gset_ctx *);
+	int (*devlink_info_get)(struct dsa_switch *, struct devlink_info_req *, struct netlink_ext_ack *);
+	int (*devlink_sb_pool_get)(struct dsa_switch *, unsigned int, u16, struct devlink_sb_pool_info *);
+	int (*devlink_sb_pool_set)(struct dsa_switch *, unsigned int, u16, u32, enum devlink_sb_threshold_type, struct netlink_ext_ack *);
+	int (*devlink_sb_port_pool_get)(struct dsa_switch *, int, unsigned int, u16, u32 *);
+	int (*devlink_sb_port_pool_set)(struct dsa_switch *, int, unsigned int, u16, u32, struct netlink_ext_ack *);
+	int (*devlink_sb_tc_pool_bind_get)(struct dsa_switch *, int, unsigned int, u16, enum devlink_sb_pool_type, u16 *, u32 *);
+	int (*devlink_sb_tc_pool_bind_set)(struct dsa_switch *, int, unsigned int, u16, enum devlink_sb_pool_type, u16, u32, struct netlink_ext_ack *);
+	int (*devlink_sb_occ_snapshot)(struct dsa_switch *, unsigned int);
+	int (*devlink_sb_occ_max_clear)(struct dsa_switch *, unsigned int);
+	int (*devlink_sb_occ_port_pool_get)(struct dsa_switch *, int, unsigned int, u16, u32 *, u32 *);
+	int (*devlink_sb_occ_tc_port_bind_get)(struct dsa_switch *, int, unsigned int, u16, enum devlink_sb_pool_type, u32 *, u32 *);
+	int (*port_change_mtu)(struct dsa_switch *, int, int);
+	int (*port_max_mtu)(struct dsa_switch *, int);
+	int (*port_lag_change)(struct dsa_switch *, int);
+	int (*port_lag_join)(struct dsa_switch *, int, struct net_device *, struct netdev_lag_upper_info *);
+	int (*port_lag_leave)(struct dsa_switch *, int, struct net_device *);
+	int (*port_hsr_join)(struct dsa_switch *, int, struct net_device *);
+	int (*port_hsr_leave)(struct dsa_switch *, int, struct net_device *);
+	int (*port_mrp_add)(struct dsa_switch *, int, const struct switchdev_obj_mrp *);
+	int (*port_mrp_del)(struct dsa_switch *, int, const struct switchdev_obj_mrp *);
+	int (*port_mrp_add_ring_role)(struct dsa_switch *, int, const struct switchdev_obj_ring_role_mrp *);
+	int (*port_mrp_del_ring_role)(struct dsa_switch *, int, const struct switchdev_obj_ring_role_mrp *);
+	int (*tag_8021q_vlan_add)(struct dsa_switch *, int, u16, u16);
+	int (*tag_8021q_vlan_del)(struct dsa_switch *, int, u16);
 };
 
 enum lwtunnel_encap_types {
@@ -84253,37 +117509,8 @@ enum lwtunnel_encap_types {
 	LWTUNNEL_ENCAP_BPF = 6,
 	LWTUNNEL_ENCAP_SEG6_LOCAL = 7,
 	LWTUNNEL_ENCAP_RPL = 8,
-	__LWTUNNEL_ENCAP_MAX = 9,
-};
-
-struct nh_info {
-	struct hlist_node dev_hash;
-	struct nexthop *nh_parent;
-	u8 family;
-	bool reject_nh;
-	bool fdb_nh;
-	union {
-		struct fib_nh_common fib_nhc;
-		struct fib_nh fib_nh;
-		struct fib6_nh fib6_nh;
-	};
-};
-
-struct nh_grp_entry {
-	struct nexthop *nh;
-	u8 weight;
-	atomic_t upper_bound;
-	struct list_head nh_list;
-	struct nexthop *nh_parent;
-};
-
-struct nh_group {
-	struct nh_group *spare;
-	u16 num_nh;
-	bool mpath;
-	bool fdb_nh;
-	bool has_v4;
-	struct nh_grp_entry nh_entries[0];
+	LWTUNNEL_ENCAP_IOAM6 = 9,
+	__LWTUNNEL_ENCAP_MAX = 10,
 };
 
 enum metadata_type {
@@ -84374,6 +117601,30 @@ struct mpls_label {
 	__be32 entry;
 };
 
+struct clock_identity {
+	u8 id[8];
+};
+
+struct port_identity {
+	struct clock_identity clock_identity;
+	__be16 port_number;
+};
+
+struct ptp_header {
+	u8 tsmt;
+	u8 ver;
+	__be16 message_length;
+	u8 domain_number;
+	u8 reserved1;
+	u8 flag_field[2];
+	__be64 correction;
+	__be32 reserved2;
+	struct port_identity source_port_identity;
+	__be16 sequence_id;
+	u8 control;
+	u8 log_message_interval;
+} __attribute__((packed));
+
 enum batadv_packettype {
 	BATADV_IV_OGM = 0,
 	BATADV_BCAST = 1,
@@ -84481,17 +117732,6 @@ struct nf_conn {
 	union nf_conntrack_proto proto;
 };
 
-struct xt_table_info {
-	unsigned int size;
-	unsigned int number;
-	unsigned int initial_entries;
-	unsigned int hook_entry[5];
-	unsigned int underflow[5];
-	unsigned int stacksize;
-	void ***jumpstack;
-	unsigned char entries[0];
-};
-
 struct nf_conntrack_tuple_mask {
 	struct {
 		union nf_inet_addr u3;
@@ -84563,26 +117803,13 @@ struct _flow_keys_digest_data {
 	__be32 dst;
 };
 
-struct rps_sock_flow_table {
-	u32 mask;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	u32 ents[0];
-};
-
-enum {
-	IF_OPER_UNKNOWN = 0,
-	IF_OPER_NOTPRESENT = 1,
-	IF_OPER_DOWN = 2,
-	IF_OPER_LOWERLAYERDOWN = 3,
-	IF_OPER_TESTING = 4,
-	IF_OPER_DORMANT = 5,
-	IF_OPER_UP = 6,
+struct tc_skb_ext {
+	__u32 chain;
+	__u16 mru;
+	__u16 zone;
+	u8 post_ct: 1;
+	u8 post_ct_snat: 1;
+	u8 post_ct_dnat: 1;
 };
 
 struct ipv4_devconf {
@@ -84596,6 +117823,16 @@ enum nf_dev_hooks {
 	NF_NETDEV_NUMHOOKS = 1,
 };
 
+enum {
+	IF_OPER_UNKNOWN = 0,
+	IF_OPER_NOTPRESENT = 1,
+	IF_OPER_DOWN = 2,
+	IF_OPER_LOWERLAYERDOWN = 3,
+	IF_OPER_TESTING = 4,
+	IF_OPER_DORMANT = 5,
+	IF_OPER_UP = 6,
+};
+
 struct ifbond {
 	__s32 bond_mode;
 	__s32 num_slaves;
@@ -84614,20 +117851,6 @@ struct ifslave {
 
 typedef struct ifslave ifslave;
 
-enum netdev_state_t {
-	__LINK_STATE_START = 0,
-	__LINK_STATE_PRESENT = 1,
-	__LINK_STATE_NOCARRIER = 2,
-	__LINK_STATE_LINKWATCH_PENDING = 3,
-	__LINK_STATE_DORMANT = 4,
-	__LINK_STATE_TESTING = 5,
-};
-
-struct netdev_boot_setup {
-	char name[16];
-	struct ifmap map;
-};
-
 enum {
 	NAPIF_STATE_SCHED = 1,
 	NAPIF_STATE_MISSED = 2,
@@ -84636,23 +117859,14 @@ enum {
 	NAPIF_STATE_LISTED = 16,
 	NAPIF_STATE_NO_BUSY_POLL = 32,
 	NAPIF_STATE_IN_BUSY_POLL = 64,
+	NAPIF_STATE_PREFER_BUSY_POLL = 128,
+	NAPIF_STATE_THREADED = 256,
+	NAPIF_STATE_SCHED_THREADED = 512,
 };
 
-enum gro_result {
-	GRO_MERGED = 0,
-	GRO_MERGED_FREE = 1,
-	GRO_HELD = 2,
-	GRO_NORMAL = 3,
-	GRO_DROP = 4,
-	GRO_CONSUMED = 5,
-};
-
-typedef enum gro_result gro_result_t;
-
-enum netdev_queue_state_t {
-	__QUEUE_STATE_DRV_XOFF = 0,
-	__QUEUE_STATE_STACK_XOFF = 1,
-	__QUEUE_STATE_FROZEN = 2,
+struct net_device_path_stack {
+	int num_paths;
+	struct net_device_path path[5];
 };
 
 struct bpf_xdp_link {
@@ -84677,13 +117891,6 @@ struct netpoll_info {
 	struct callback_head rcu;
 };
 
-struct udp_tunnel_info {
-	short unsigned int type;
-	sa_family_t sa_family;
-	__be16 port;
-	u8 hw_priv;
-};
-
 struct in_ifaddr;
 
 struct ip_mc_list;
@@ -84750,14 +117957,6 @@ struct netdev_notifier_change_info {
 	unsigned int flags_changed;
 };
 
-struct netdev_notifier_changeupper_info {
-	struct netdev_notifier_info info;
-	struct net_device *upper_dev;
-	bool master;
-	bool linking;
-	void *upper_info;
-};
-
 struct netdev_notifier_changelowerstate_info {
 	struct netdev_notifier_info info;
 	void *lower_state_info;
@@ -84814,6 +118013,7 @@ enum qdisc_state_t {
 	__QDISC_STATE_SCHED = 0,
 	__QDISC_STATE_DEACTIVATED = 1,
 	__QDISC_STATE_MISSED = 2,
+	__QDISC_STATE_DRAINING = 3,
 };
 
 struct tcf_walker {
@@ -84861,6 +118061,15 @@ enum {
 	__IPV4_DEVCONF_MAX = 33,
 };
 
+struct tc_skb_cb {
+	struct qdisc_skb_cb qdisc_cb;
+	u16 mru;
+	u8 post_ct: 1;
+	u8 post_ct_snat: 1;
+	u8 post_ct_dnat: 1;
+	u16 zone;
+};
+
 struct in_ifaddr {
 	struct hlist_node hash;
 	struct in_ifaddr *ifa_next;
@@ -84881,6 +118090,13 @@ struct in_ifaddr {
 	long unsigned int ifa_tstamp;
 };
 
+struct udp_tunnel_info {
+	short unsigned int type;
+	sa_family_t sa_family;
+	__be16 port;
+	u8 hw_priv;
+};
+
 struct udp_tunnel_nic_shared {
 	struct udp_tunnel_nic *udp_tunnel_nic_info;
 	struct list_head devices;
@@ -84902,6 +118118,7 @@ struct netdev_adjacent {
 
 struct netdev_hw_addr {
 	struct list_head list;
+	struct rb_node node;
 	unsigned char addr[32];
 	unsigned char type;
 	bool global_use;
@@ -85108,67 +118325,6 @@ struct rtnl_link_ifmap {
 	__u8 port;
 };
 
-enum {
-	IFLA_UNSPEC = 0,
-	IFLA_ADDRESS = 1,
-	IFLA_BROADCAST = 2,
-	IFLA_IFNAME = 3,
-	IFLA_MTU = 4,
-	IFLA_LINK = 5,
-	IFLA_QDISC = 6,
-	IFLA_STATS = 7,
-	IFLA_COST = 8,
-	IFLA_PRIORITY = 9,
-	IFLA_MASTER = 10,
-	IFLA_WIRELESS = 11,
-	IFLA_PROTINFO = 12,
-	IFLA_TXQLEN = 13,
-	IFLA_MAP = 14,
-	IFLA_WEIGHT = 15,
-	IFLA_OPERSTATE = 16,
-	IFLA_LINKMODE = 17,
-	IFLA_LINKINFO = 18,
-	IFLA_NET_NS_PID = 19,
-	IFLA_IFALIAS = 20,
-	IFLA_NUM_VF = 21,
-	IFLA_VFINFO_LIST = 22,
-	IFLA_STATS64 = 23,
-	IFLA_VF_PORTS = 24,
-	IFLA_PORT_SELF = 25,
-	IFLA_AF_SPEC = 26,
-	IFLA_GROUP = 27,
-	IFLA_NET_NS_FD = 28,
-	IFLA_EXT_MASK = 29,
-	IFLA_PROMISCUITY = 30,
-	IFLA_NUM_TX_QUEUES = 31,
-	IFLA_NUM_RX_QUEUES = 32,
-	IFLA_CARRIER = 33,
-	IFLA_PHYS_PORT_ID = 34,
-	IFLA_CARRIER_CHANGES = 35,
-	IFLA_PHYS_SWITCH_ID = 36,
-	IFLA_LINK_NETNSID = 37,
-	IFLA_PHYS_PORT_NAME = 38,
-	IFLA_PROTO_DOWN = 39,
-	IFLA_GSO_MAX_SEGS = 40,
-	IFLA_GSO_MAX_SIZE = 41,
-	IFLA_PAD = 42,
-	IFLA_XDP = 43,
-	IFLA_EVENT = 44,
-	IFLA_NEW_NETNSID = 45,
-	IFLA_IF_NETNSID = 46,
-	IFLA_TARGET_NETNSID = 46,
-	IFLA_CARRIER_UP_COUNT = 47,
-	IFLA_CARRIER_DOWN_COUNT = 48,
-	IFLA_NEW_IFINDEX = 49,
-	IFLA_MIN_MTU = 50,
-	IFLA_MAX_MTU = 51,
-	IFLA_PROP_LIST = 52,
-	IFLA_ALT_IFNAME = 53,
-	IFLA_PERM_ADDRESS = 54,
-	IFLA_PROTO_DOWN_REASON = 55,
-	__IFLA_MAX = 56,
-};
-
 enum {
 	IFLA_PROTO_DOWN_REASON_UNSPEC = 0,
 	IFLA_PROTO_DOWN_REASON_MASK = 1,
@@ -85215,7 +118371,9 @@ enum {
 	IFLA_BRPORT_BACKUP_PORT = 34,
 	IFLA_BRPORT_MRP_RING_OPEN = 35,
 	IFLA_BRPORT_MRP_IN_OPEN = 36,
-	__IFLA_BRPORT_MAX = 37,
+	IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT = 37,
+	IFLA_BRPORT_MCAST_EHT_HOSTS_CNT = 38,
+	__IFLA_BRPORT_MAX = 39,
 };
 
 enum {
@@ -85403,7 +118561,8 @@ enum {
 	IFLA_BRIDGE_VLAN_INFO = 2,
 	IFLA_BRIDGE_VLAN_TUNNEL_INFO = 3,
 	IFLA_BRIDGE_MRP = 4,
-	__IFLA_BRIDGE_MAX = 5,
+	IFLA_BRIDGE_CFM = 5,
+	__IFLA_BRIDGE_MAX = 6,
 };
 
 enum {
@@ -85467,17 +118626,29 @@ struct ifinfomsg {
 	unsigned int ifi_change;
 };
 
-typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *, struct netlink_ext_ack *);
+enum rtnl_kinds {
+	RTNL_KIND_NEW = 0,
+	RTNL_KIND_DEL = 1,
+	RTNL_KIND_GET = 2,
+	RTNL_KIND_SET = 3,
+};
 
-typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *);
+struct rtnl_msg_handler {
+	struct module *owner;
+	int protocol;
+	int msgtype;
+	rtnl_doit_func doit;
+	rtnl_dumpit_func dumpit;
+	int flags;
+};
 
 struct rtnl_af_ops {
 	struct list_head list;
 	int family;
 	int (*fill_link_af)(struct sk_buff *, const struct net_device *, u32);
 	size_t (*get_link_af_size)(const struct net_device *, u32);
-	int (*validate_link_af)(const struct net_device *, const struct nlattr *);
-	int (*set_link_af)(struct net_device *, const struct nlattr *);
+	int (*validate_link_af)(const struct net_device *, const struct nlattr *, struct netlink_ext_ack *);
+	int (*set_link_af)(struct net_device *, const struct nlattr *, struct netlink_ext_ack *);
 	int (*fill_stats_af)(struct sk_buff *, const struct net_device *);
 	size_t (*get_stats_af_size)(const struct net_device *);
 };
@@ -85549,6 +118720,7 @@ enum {
 	BPF_F_ADJ_ROOM_ENCAP_L4_GRE = 8,
 	BPF_F_ADJ_ROOM_ENCAP_L4_UDP = 16,
 	BPF_F_ADJ_ROOM_NO_CSUM_RESET = 32,
+	BPF_F_ADJ_ROOM_ENCAP_L2_ETH = 64,
 };
 
 enum {
@@ -85697,6 +118869,9 @@ enum {
 enum {
 	BPF_FIB_LOOKUP_DIRECT = 1,
 	BPF_FIB_LOOKUP_OUTPUT = 2,
+	BPF_FIB_LOOKUP_SKIP_NEIGH = 4,
+	BPF_FIB_LOOKUP_TBID = 8,
+	BPF_FIB_LOOKUP_SRC = 16,
 };
 
 enum {
@@ -85709,6 +118884,7 @@ enum {
 	BPF_FIB_LKUP_RET_UNSUPP_LWT = 6,
 	BPF_FIB_LKUP_RET_NO_NEIGH = 7,
 	BPF_FIB_LKUP_RET_FRAG_NEEDED = 8,
+	BPF_FIB_LKUP_RET_NO_SRC_ADDR = 9,
 };
 
 struct bpf_fib_lookup {
@@ -85716,7 +118892,10 @@ struct bpf_fib_lookup {
 	__u8 l4_protocol;
 	__be16 sport;
 	__be16 dport;
-	__u16 tot_len;
+	union {
+		__u16 tot_len;
+		__u16 mtu_result;
+	};
 	__u32 ifindex;
 	union {
 		__u8 tos;
@@ -85731,8 +118910,13 @@ struct bpf_fib_lookup {
 		__be32 ipv4_dst;
 		__u32 ipv6_dst[4];
 	};
-	__be16 h_vlan_proto;
-	__be16 h_vlan_TCI;
+	union {
+		struct {
+			__be16 h_vlan_proto;
+			__be16 h_vlan_TCI;
+		};
+		__u32 tbid;
+	};
 	__u8 smac[6];
 	__u8 dmac[6];
 };
@@ -85745,6 +118929,16 @@ struct bpf_redir_neigh {
 	};
 };
 
+enum bpf_check_mtu_flags {
+	BPF_MTU_CHK_SEGS = 1,
+};
+
+enum bpf_check_mtu_ret {
+	BPF_MTU_CHK_RET_SUCCESS = 0,
+	BPF_MTU_CHK_RET_FRAG_NEEDED = 1,
+	BPF_MTU_CHK_RET_SEGS_TOOBIG = 2,
+};
+
 enum rt_scope_t {
 	RT_SCOPE_UNIVERSE = 0,
 	RT_SCOPE_SITE = 200,
@@ -85770,8 +118964,6 @@ struct nl_info {
 	u8 skip_notify_kernel: 1;
 };
 
-typedef int (*bpf_aux_classic_check_t)(struct sock_filter *, unsigned int);
-
 struct inet_timewait_sock {
 	struct sock_common __tw_common;
 	__u32 tw_mark;
@@ -85818,10 +119010,13 @@ struct udp_sock {
 	__u8 pcflag;
 	__u8 unused[3];
 	int (*encap_rcv)(struct sock *, struct sk_buff *);
+	void (*encap_err_rcv)(struct sock *, struct sk_buff *, unsigned int);
 	int (*encap_err_lookup)(struct sock *, struct sk_buff *);
 	void (*encap_destroy)(struct sock *);
 	struct sk_buff * (*gro_receive)(struct sock *, struct list_head *, struct sk_buff *);
 	int (*gro_complete)(struct sock *, struct sk_buff *, int);
+	long: 64;
+	long: 64;
 	struct sk_buff_head reader_queue;
 	int forward_deficit;
 	long: 64;
@@ -85864,13 +119059,14 @@ struct ipv6_stub {
 	void (*fib6_update_sernum)(struct net *, struct fib6_info *);
 	int (*ip6_del_rt)(struct net *, struct fib6_info *, bool);
 	void (*fib6_rt_update)(struct net *, struct fib6_info *, struct nl_info *);
-	void (*udpv6_encap_enable)();
+	void (*udpv6_encap_enable)(void);
 	void (*ndisc_send_na)(struct net_device *, const struct in6_addr *, const struct in6_addr *, bool, bool, bool, bool);
 	void (*xfrm6_local_rxpmtu)(struct sk_buff *, u32);
 	int (*xfrm6_udp_encap_rcv)(struct sock *, struct sk_buff *);
 	int (*xfrm6_rcv_encap)(struct sk_buff *, int, __be32, int);
 	struct neigh_table *nd_tbl;
 	int (*ipv6_fragment)(struct net *, struct sock *, struct sk_buff *, int (*)(struct net *, struct sock *, struct sk_buff *));
+	struct net_device * (*ipv6_dev_find)(struct net *, const struct in6_addr *, struct net_device *);
 };
 
 struct fib6_result {
@@ -85912,6 +119108,7 @@ struct fib6_config {
 struct ipv6_bpf_stub {
 	int (*inet6_bind)(struct sock *, struct sockaddr *, int, u32);
 	struct sock * (*udp6_lib_lookup)(struct net *, const struct in6_addr *, __be16, const struct in6_addr *, __be16, int, int, struct udp_table *, struct sk_buff *);
+	int (*ipv6_dev_get_saddr)(struct net *, const struct net_device *, const struct in6_addr *, unsigned int, struct in6_addr *);
 };
 
 struct fib_result {
@@ -85966,51 +119163,9 @@ struct tcp_skb_cb {
 			struct inet_skb_parm h4;
 			struct inet6_skb_parm h6;
 		} header;
-		struct {
-			__u32 flags;
-			struct sock *sk_redir;
-			void *data_end;
-		} bpf;
 	};
 };
 
-struct strp_stats {
-	long long unsigned int msgs;
-	long long unsigned int bytes;
-	unsigned int mem_fail;
-	unsigned int need_more_hdr;
-	unsigned int msg_too_big;
-	unsigned int msg_timeouts;
-	unsigned int bad_hdr_len;
-};
-
-struct strparser;
-
-struct strp_callbacks {
-	int (*parse_msg)(struct strparser *, struct sk_buff *);
-	void (*rcv_msg)(struct strparser *, struct sk_buff *);
-	int (*read_sock_done)(struct strparser *, int);
-	void (*abort_parser)(struct strparser *, int);
-	void (*lock)(struct strparser *);
-	void (*unlock)(struct strparser *);
-};
-
-struct strparser {
-	struct sock *sk;
-	u32 stopped: 1;
-	u32 paused: 1;
-	u32 aborted: 1;
-	u32 interrupted: 1;
-	u32 unrecov_intr: 1;
-	struct sk_buff **skb_nextp;
-	struct sk_buff *skb_head;
-	unsigned int need_bytes;
-	struct delayed_work msg_timer_work;
-	struct work_struct work;
-	struct strp_stats stats;
-	struct strp_callbacks cb;
-};
-
 struct strp_msg {
 	int full_len;
 	int offset;
@@ -86021,9 +119176,16 @@ struct _strp_msg {
 	int accum_len;
 };
 
+struct tls_msg {
+	u8 control;
+	u8 decrypted;
+};
+
 struct sk_skb_cb {
 	unsigned char data[20];
 	struct _strp_msg strp;
+	u64 temp_reg;
+	struct tls_msg tls;
 };
 
 struct xdp_umem {
@@ -86043,27 +119205,14 @@ struct xdp_umem {
 	struct work_struct work;
 };
 
-struct xdp_sock;
-
-struct xsk_map {
-	struct bpf_map map;
-	spinlock_t lock;
-	struct xdp_sock *xsk_map[0];
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
 struct xsk_queue;
 
 struct xdp_sock {
 	struct sock sk;
 	long: 64;
 	long: 64;
+	long: 64;
+	long: 64;
 	struct xsk_queue *rx;
 	struct net_device *dev;
 	struct xdp_umem *umem;
@@ -86118,7 +119267,8 @@ enum {
 	SEG6_LOCAL_ACTION_END_AS = 13,
 	SEG6_LOCAL_ACTION_END_AM = 14,
 	SEG6_LOCAL_ACTION_END_BPF = 15,
-	__SEG6_LOCAL_ACTION_MAX = 16,
+	SEG6_LOCAL_ACTION_END_DT46 = 16,
+	__SEG6_LOCAL_ACTION_MAX = 17,
 };
 
 struct seg6_bpf_srh_state {
@@ -86148,6 +119298,14 @@ struct tls12_crypto_info_aes_gcm_256 {
 	unsigned char rec_seq[8];
 };
 
+struct tls12_crypto_info_chacha20_poly1305 {
+	struct tls_crypto_info info;
+	unsigned char iv[12];
+	unsigned char key[32];
+	unsigned char salt[0];
+	unsigned char rec_seq[8];
+};
+
 struct tls_sw_context_rx {
 	struct crypto_aead *aead_recv;
 	struct crypto_wait async_wait;
@@ -86155,25 +119313,11 @@ struct tls_sw_context_rx {
 	struct sk_buff_head rx_list;
 	void (*saved_data_ready)(struct sock *);
 	struct sk_buff *recv_pkt;
-	u8 control;
+	u8 reader_present;
 	u8 async_capable: 1;
-	u8 decrypted: 1;
+	u8 reader_contended: 1;
 	atomic_t decrypt_pending;
-	spinlock_t decrypt_compl_lock;
-	bool async_notify;
-};
-
-struct cipher_context {
-	char *iv;
-	char *rec_seq;
-};
-
-union tls_crypto_context {
-	struct tls_crypto_info info;
-	union {
-		struct tls12_crypto_info_aes_gcm_128 aes_gcm_128;
-		struct tls12_crypto_info_aes_gcm_256 aes_gcm_256;
-	};
+	struct wait_queue_head wq;
 };
 
 struct tls_prot_info {
@@ -86189,6 +119333,20 @@ struct tls_prot_info {
 	u16 tail_size;
 };
 
+struct cipher_context {
+	char *iv;
+	char *rec_seq;
+};
+
+union tls_crypto_context {
+	struct tls_crypto_info info;
+	union {
+		struct tls12_crypto_info_aes_gcm_128 aes_gcm_128;
+		struct tls12_crypto_info_aes_gcm_256 aes_gcm_256;
+		struct tls12_crypto_info_chacha20_poly1305 chacha20_poly1305;
+	};
+};
+
 struct tls_context {
 	struct tls_prot_info prot_info;
 	u8 tx_conf: 3;
@@ -86289,7 +119447,7 @@ typedef u64 (*btf_bpf_msg_push_data)(struct sk_msg *, u32, u32, u64);
 
 typedef u64 (*btf_bpf_msg_pop_data)(struct sk_msg *, u32, u32, u64);
 
-typedef u64 (*btf_bpf_get_cgroup_classid_curr)();
+typedef u64 (*btf_bpf_get_cgroup_classid_curr)(void);
 
 typedef u64 (*btf_bpf_skb_cgroup_classid)(const struct sk_buff *);
 
@@ -86361,14 +119519,24 @@ typedef u64 (*btf_bpf_get_socket_cookie_sock_addr)(struct bpf_sock_addr_kern *);
 
 typedef u64 (*btf_bpf_get_socket_cookie_sock)(struct sock *);
 
+typedef u64 (*btf_bpf_get_socket_ptr_cookie)(struct sock *);
+
 typedef u64 (*btf_bpf_get_socket_cookie_sock_ops)(struct bpf_sock_ops_kern *);
 
 typedef u64 (*btf_bpf_get_netns_cookie_sock)(struct sock *);
 
 typedef u64 (*btf_bpf_get_netns_cookie_sock_addr)(struct bpf_sock_addr_kern *);
 
+typedef u64 (*btf_bpf_get_netns_cookie_sock_ops)(struct bpf_sock_ops_kern *);
+
+typedef u64 (*btf_bpf_get_netns_cookie_sk_msg)(struct sk_msg *);
+
 typedef u64 (*btf_bpf_get_socket_uid)(struct sk_buff *);
 
+typedef u64 (*btf_bpf_sk_setsockopt)(struct sock *, int, int, char *, int);
+
+typedef u64 (*btf_bpf_sk_getsockopt)(struct sock *, int, int, char *, int);
+
 typedef u64 (*btf_bpf_sock_addr_setsockopt)(struct bpf_sock_addr_kern *, int, int, char *, int);
 
 typedef u64 (*btf_bpf_sock_addr_getsockopt)(struct bpf_sock_addr_kern *, int, int, char *, int);
@@ -86387,6 +119555,10 @@ typedef u64 (*btf_bpf_xdp_fib_lookup)(struct xdp_buff *, struct bpf_fib_lookup *
 
 typedef u64 (*btf_bpf_skb_fib_lookup)(struct sk_buff *, struct bpf_fib_lookup *, int, u32);
 
+typedef u64 (*btf_bpf_skb_check_mtu)(struct sk_buff *, u32, u32 *, s32, u64);
+
+typedef u64 (*btf_bpf_xdp_check_mtu)(struct xdp_buff *, u32, u32 *, s32, u64);
+
 typedef u64 (*btf_bpf_lwt_in_push_encap)(struct sk_buff *, u32, void *, u32);
 
 typedef u64 (*btf_bpf_lwt_xmit_push_encap)(struct sk_buff *, u32, void *, u32);
@@ -86403,6 +119575,12 @@ typedef u64 (*btf_bpf_sk_lookup_tcp)(struct sk_buff *, struct bpf_sock_tuple *,
 
 typedef u64 (*btf_bpf_sk_lookup_udp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
 
+typedef u64 (*btf_bpf_tc_skc_lookup_tcp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
+
+typedef u64 (*btf_bpf_tc_sk_lookup_tcp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
+
+typedef u64 (*btf_bpf_tc_sk_lookup_udp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
+
 typedef u64 (*btf_bpf_sk_release)(struct sock *);
 
 typedef u64 (*btf_bpf_xdp_sk_lookup_udp)(struct xdp_buff *, struct bpf_sock_tuple *, u32, u32, u64);
@@ -86453,7 +119631,7 @@ typedef u64 (*btf_bpf_skc_to_tcp_request_sock)(struct sock *);
 
 typedef u64 (*btf_bpf_skc_to_udp6_sock)(struct sock *);
 
-struct bpf_dtab_netdev;
+typedef u64 (*btf_bpf_sock_from_file)(struct file *);
 
 enum {
 	INET_DIAG_REQ_NONE = 0,
@@ -86514,6 +119692,11 @@ enum hwtstamp_rx_filters {
 	__HWTSTAMP_FILTER_CNT = 16,
 };
 
+struct compat_ifconf {
+	compat_int_t ifc_len;
+	compat_caddr_t ifcbuf;
+};
+
 struct tso_t {
 	int next_frag_idx;
 	int size;
@@ -86547,6 +119730,12 @@ struct fib_notifier_net {
 	struct atomic_notifier_head fib_chain;
 };
 
+struct xdp_frame_bulk {
+	int count;
+	void *xa;
+	void *q[16];
+};
+
 struct xdp_attachment_info {
 	struct bpf_prog *prog;
 	u32 flags;
@@ -86554,6 +119743,8 @@ struct xdp_attachment_info {
 
 struct xdp_buff_xsk;
 
+struct xdp_desc;
+
 struct xsk_buff_pool {
 	struct device *dev;
 	struct net_device *netdev;
@@ -86572,6 +119763,7 @@ struct xsk_buff_pool {
 	struct xsk_queue *cq;
 	dma_addr_t *dma_pages;
 	struct xdp_buff_xsk *heads;
+	struct xdp_desc *tx_descs;
 	u64 chunk_mask;
 	u64 addrs_cnt;
 	u32 free_list_cnt;
@@ -86590,54 +119782,12 @@ struct xsk_buff_pool {
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
 };
 
-struct pp_alloc_cache {
-	u32 count;
-	void *cache[128];
-};
-
-struct page_pool_params {
-	unsigned int flags;
-	unsigned int order;
-	unsigned int pool_size;
-	int nid;
-	struct device *dev;
-	enum dma_data_direction dma_dir;
-	unsigned int max_len;
-	unsigned int offset;
-};
-
-struct page_pool {
-	struct page_pool_params p;
-	struct delayed_work release_dw;
-	void (*disconnect)(void *);
-	long unsigned int defer_start;
-	long unsigned int defer_warn;
-	u32 pages_state_hold_cnt;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct pp_alloc_cache alloc;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	struct ptr_ring ring;
-	atomic_t pages_state_release_cnt;
-	refcount_t user_cnt;
-	u64 destroy_cnt;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
-	long: 64;
+struct xdp_desc {
+	__u64 addr;
+	__u32 len;
+	__u32 options;
 };
 
 struct xdp_buff_xsk {
@@ -86650,12 +119800,6 @@ struct xdp_buff_xsk {
 	struct list_head free_list_node;
 };
 
-struct flow_match {
-	struct flow_dissector *dissector;
-	void *mask;
-	void *key;
-};
-
 struct flow_match_meta {
 	struct flow_dissector_key_meta *key;
 	struct flow_dissector_key_meta *mask;
@@ -86731,159 +119875,6 @@ struct flow_match_ct {
 	struct flow_dissector_key_ct *mask;
 };
 
-enum flow_action_id {
-	FLOW_ACTION_ACCEPT = 0,
-	FLOW_ACTION_DROP = 1,
-	FLOW_ACTION_TRAP = 2,
-	FLOW_ACTION_GOTO = 3,
-	FLOW_ACTION_REDIRECT = 4,
-	FLOW_ACTION_MIRRED = 5,
-	FLOW_ACTION_REDIRECT_INGRESS = 6,
-	FLOW_ACTION_MIRRED_INGRESS = 7,
-	FLOW_ACTION_VLAN_PUSH = 8,
-	FLOW_ACTION_VLAN_POP = 9,
-	FLOW_ACTION_VLAN_MANGLE = 10,
-	FLOW_ACTION_TUNNEL_ENCAP = 11,
-	FLOW_ACTION_TUNNEL_DECAP = 12,
-	FLOW_ACTION_MANGLE = 13,
-	FLOW_ACTION_ADD = 14,
-	FLOW_ACTION_CSUM = 15,
-	FLOW_ACTION_MARK = 16,
-	FLOW_ACTION_PTYPE = 17,
-	FLOW_ACTION_PRIORITY = 18,
-	FLOW_ACTION_WAKE = 19,
-	FLOW_ACTION_QUEUE = 20,
-	FLOW_ACTION_SAMPLE = 21,
-	FLOW_ACTION_POLICE = 22,
-	FLOW_ACTION_CT = 23,
-	FLOW_ACTION_CT_METADATA = 24,
-	FLOW_ACTION_MPLS_PUSH = 25,
-	FLOW_ACTION_MPLS_POP = 26,
-	FLOW_ACTION_MPLS_MANGLE = 27,
-	FLOW_ACTION_GATE = 28,
-	NUM_FLOW_ACTIONS = 29,
-};
-
-enum flow_action_mangle_base {
-	FLOW_ACT_MANGLE_UNSPEC = 0,
-	FLOW_ACT_MANGLE_HDR_TYPE_ETH = 1,
-	FLOW_ACT_MANGLE_HDR_TYPE_IP4 = 2,
-	FLOW_ACT_MANGLE_HDR_TYPE_IP6 = 3,
-	FLOW_ACT_MANGLE_HDR_TYPE_TCP = 4,
-	FLOW_ACT_MANGLE_HDR_TYPE_UDP = 5,
-};
-
-enum flow_action_hw_stats {
-	FLOW_ACTION_HW_STATS_IMMEDIATE = 1,
-	FLOW_ACTION_HW_STATS_DELAYED = 2,
-	FLOW_ACTION_HW_STATS_ANY = 3,
-	FLOW_ACTION_HW_STATS_DISABLED = 4,
-	FLOW_ACTION_HW_STATS_DONT_CARE = 7,
-};
-
-typedef void (*action_destr)(void *);
-
-struct flow_action_cookie {
-	u32 cookie_len;
-	u8 cookie[0];
-};
-
-struct nf_flowtable;
-
-struct psample_group;
-
-struct action_gate_entry;
-
-struct flow_action_entry {
-	enum flow_action_id id;
-	enum flow_action_hw_stats hw_stats;
-	action_destr destructor;
-	void *destructor_priv;
-	union {
-		u32 chain_index;
-		struct net_device *dev;
-		struct {
-			u16 vid;
-			__be16 proto;
-			u8 prio;
-		} vlan;
-		struct {
-			enum flow_action_mangle_base htype;
-			u32 offset;
-			u32 mask;
-			u32 val;
-		} mangle;
-		struct ip_tunnel_info *tunnel;
-		u32 csum_flags;
-		u32 mark;
-		u16 ptype;
-		u32 priority;
-		struct {
-			u32 ctx;
-			u32 index;
-			u8 vf;
-		} queue;
-		struct {
-			struct psample_group *psample_group;
-			u32 rate;
-			u32 trunc_size;
-			bool truncate;
-		} sample;
-		struct {
-			u32 index;
-			u32 burst;
-			u64 rate_bytes_ps;
-			u32 mtu;
-		} police;
-		struct {
-			int action;
-			u16 zone;
-			struct nf_flowtable *flow_table;
-		} ct;
-		struct {
-			long unsigned int cookie;
-			u32 mark;
-			u32 labels[4];
-		} ct_metadata;
-		struct {
-			u32 label;
-			__be16 proto;
-			u8 tc;
-			u8 bos;
-			u8 ttl;
-		} mpls_push;
-		struct {
-			__be16 proto;
-		} mpls_pop;
-		struct {
-			u32 label;
-			u8 tc;
-			u8 bos;
-			u8 ttl;
-		} mpls_mangle;
-		struct {
-			u32 index;
-			s32 prio;
-			u64 basetime;
-			u64 cycletime;
-			u64 cycletimeext;
-			u32 num_entries;
-			struct action_gate_entry *entries;
-		} gate;
-	};
-	struct flow_action_cookie *cookie;
-};
-
-struct flow_action {
-	unsigned int num_entries;
-	struct flow_action_entry entries[0];
-};
-
-struct flow_rule {
-	struct flow_match match;
-	struct flow_action action;
-};
-
 enum flow_block_command {
 	FLOW_BLOCK_BIND = 0,
 	FLOW_BLOCK_UNBIND = 1,
@@ -86941,7 +119932,6 @@ struct flow_indr_dev {
 	flow_indr_block_bind_cb_t *cb;
 	void *cb_priv;
 	refcount_t refcnt;
-	struct callback_head rcu;
 };
 
 struct flow_indir_dev_info {
@@ -86968,68 +119958,6 @@ struct netdev_queue_attribute {
 	ssize_t (*store)(struct netdev_queue *, const char *, size_t);
 };
 
-enum __sk_action {
-	__SK_DROP = 0,
-	__SK_PASS = 1,
-	__SK_REDIRECT = 2,
-	__SK_NONE = 3,
-};
-
-struct sk_psock_progs {
-	struct bpf_prog *msg_parser;
-	struct bpf_prog *skb_parser;
-	struct bpf_prog *skb_verdict;
-};
-
-enum sk_psock_state_bits {
-	SK_PSOCK_TX_ENABLED = 0,
-};
-
-struct sk_psock_link {
-	struct list_head list;
-	struct bpf_map *map;
-	void *link_raw;
-};
-
-struct sk_psock_parser {
-	struct strparser strp;
-	bool enabled;
-	void (*saved_data_ready)(struct sock *);
-};
-
-struct sk_psock_work_state {
-	struct sk_buff *skb;
-	u32 len;
-	u32 off;
-};
-
-struct sk_psock {
-	struct sock *sk;
-	struct sock *sk_redir;
-	u32 apply_bytes;
-	u32 cork_bytes;
-	u32 eval;
-	struct sk_msg *cork;
-	struct sk_psock_progs progs;
-	struct sk_psock_parser parser;
-	struct sk_buff_head ingress_skb;
-	struct list_head ingress_msg;
-	long unsigned int state;
-	struct list_head link;
-	spinlock_t link_lock;
-	refcount_t refcnt;
-	void (*saved_unhash)(struct sock *);
-	void (*saved_close)(struct sock *, long int);
-	void (*saved_write_space)(struct sock *);
-	struct proto *sk_proto;
-	struct sk_psock_work_state work_state;
-	struct work_struct work;
-	union {
-		struct callback_head rcu;
-		struct work_struct gc;
-	};
-};
-
 struct inet6_ifaddr {
 	struct in6_addr addr;
 	__u32 prefix_len;
@@ -87117,6 +120045,7 @@ struct trace_event_raw_kfree_skb {
 	void *skbaddr;
 	void *location;
 	short unsigned int protocol;
+	enum skb_drop_reason reason;
 	char __data[0];
 };
 
@@ -87139,7 +120068,7 @@ struct trace_event_data_offsets_consume_skb {};
 
 struct trace_event_data_offsets_skb_copy_datagram_iovec {};
 
-typedef void (*btf_trace_kfree_skb)(void *, struct sk_buff *, void *);
+typedef void (*btf_trace_kfree_skb)(void *, struct sk_buff *, void *, enum skb_drop_reason);
 
 typedef void (*btf_trace_consume_skb)(void *, struct sk_buff *);
 
@@ -87342,18 +120271,36 @@ struct trace_event_raw_inet_sock_set_state {
 	char __data[0];
 };
 
+struct trace_event_raw_inet_sk_error_report {
+	struct trace_entry ent;
+	int error;
+	__u16 sport;
+	__u16 dport;
+	__u16 family;
+	__u16 protocol;
+	__u8 saddr[4];
+	__u8 daddr[4];
+	__u8 saddr_v6[16];
+	__u8 daddr_v6[16];
+	char __data[0];
+};
+
 struct trace_event_data_offsets_sock_rcvqueue_full {};
 
 struct trace_event_data_offsets_sock_exceed_buf_limit {};
 
 struct trace_event_data_offsets_inet_sock_set_state {};
 
+struct trace_event_data_offsets_inet_sk_error_report {};
+
 typedef void (*btf_trace_sock_rcvqueue_full)(void *, struct sock *, struct sk_buff *);
 
 typedef void (*btf_trace_sock_exceed_buf_limit)(void *, struct sock *, struct proto *, long int, int);
 
 typedef void (*btf_trace_inet_sock_set_state)(void *, const struct sock *, const int, const int);
 
+typedef void (*btf_trace_inet_sk_error_report)(void *, const struct sock *);
+
 struct trace_event_raw_udp_fail_queue_rcv_skb {
 	struct trace_entry ent;
 	int rc;
@@ -87372,6 +120319,7 @@ struct trace_event_raw_tcp_event_sk_skb {
 	int state;
 	__u16 sport;
 	__u16 dport;
+	__u16 family;
 	__u8 saddr[4];
 	__u8 daddr[4];
 	__u8 saddr_v6[16];
@@ -87384,6 +120332,7 @@ struct trace_event_raw_tcp_event_sk {
 	const void *skaddr;
 	__u16 sport;
 	__u16 dport;
+	__u16 family;
 	__u8 saddr[4];
 	__u8 daddr[4];
 	__u8 saddr_v6[16];
@@ -87398,6 +120347,7 @@ struct trace_event_raw_tcp_retransmit_synack {
 	const void *req;
 	__u16 sport;
 	__u16 dport;
+	__u16 family;
 	__u8 saddr[4];
 	__u8 daddr[4];
 	__u8 saddr_v6[16];
@@ -87411,6 +120361,7 @@ struct trace_event_raw_tcp_probe {
 	__u8 daddr[28];
 	__u16 sport;
 	__u16 dport;
+	__u16 family;
 	__u32 mark;
 	__u16 data_len;
 	__u32 snd_nxt;
@@ -87424,6 +120375,14 @@ struct trace_event_raw_tcp_probe {
 	char __data[0];
 };
 
+struct trace_event_raw_tcp_event_skb {
+	struct trace_entry ent;
+	const void *skbaddr;
+	__u8 saddr[28];
+	__u8 daddr[28];
+	char __data[0];
+};
+
 struct trace_event_data_offsets_tcp_event_sk_skb {};
 
 struct trace_event_data_offsets_tcp_event_sk {};
@@ -87432,6 +120391,8 @@ struct trace_event_data_offsets_tcp_retransmit_synack {};
 
 struct trace_event_data_offsets_tcp_probe {};
 
+struct trace_event_data_offsets_tcp_event_skb {};
+
 typedef void (*btf_trace_tcp_retransmit_skb)(void *, const struct sock *, const struct sk_buff *);
 
 typedef void (*btf_trace_tcp_send_reset)(void *, const struct sock *, const struct sk_buff *);
@@ -87446,6 +120407,8 @@ typedef void (*btf_trace_tcp_retransmit_synack)(void *, const struct sock *, con
 
 typedef void (*btf_trace_tcp_probe)(void *, struct sock *, struct sk_buff *);
 
+typedef void (*btf_trace_tcp_bad_csum)(void *, const struct sk_buff *);
+
 struct trace_event_raw_fib_table_lookup {
 	struct trace_entry ent;
 	u32 tb_id;
@@ -87485,6 +120448,17 @@ struct trace_event_raw_qdisc_dequeue {
 	char __data[0];
 };
 
+struct trace_event_raw_qdisc_enqueue {
+	struct trace_entry ent;
+	struct Qdisc *qdisc;
+	const struct netdev_queue *txq;
+	void *skbaddr;
+	int ifindex;
+	u32 handle;
+	u32 parent;
+	char __data[0];
+};
+
 struct trace_event_raw_qdisc_reset {
 	struct trace_entry ent;
 	u32 __data_loc_dev;
@@ -87513,6 +120487,8 @@ struct trace_event_raw_qdisc_create {
 
 struct trace_event_data_offsets_qdisc_dequeue {};
 
+struct trace_event_data_offsets_qdisc_enqueue {};
+
 struct trace_event_data_offsets_qdisc_reset {
 	u32 dev;
 	u32 kind;
@@ -87530,6 +120506,8 @@ struct trace_event_data_offsets_qdisc_create {
 
 typedef void (*btf_trace_qdisc_dequeue)(void *, struct Qdisc *, const struct netdev_queue *, int, struct sk_buff *);
 
+typedef void (*btf_trace_qdisc_enqueue)(void *, struct Qdisc *, const struct netdev_queue *, struct sk_buff *);
+
 typedef void (*btf_trace_qdisc_reset)(void *, struct Qdisc *);
 
 typedef void (*btf_trace_qdisc_destroy)(void *, struct Qdisc *);
@@ -87572,6 +120550,7 @@ struct br_ip {
 	union {
 		__be32 ip4;
 		struct in6_addr ip6;
+		unsigned char mac_addr[6];
 	} dst;
 	__be16 proto;
 	__u16 vid;
@@ -87599,22 +120578,40 @@ struct bridge_mcast_own_query {
 
 struct bridge_mcast_other_query {
 	struct timer_list timer;
-	long unsigned int delay_time;
+	struct timer_list delay_timer;
+};
+
+struct bridge_mcast_querier {
+	struct br_ip addr;
+	int port_ifidx;
+	seqcount_spinlock_t seq;
+};
+
+struct bridge_mcast_stats {
+	struct br_mcast_stats mstats;
+	struct u64_stats_sync syncp;
 };
 
 struct net_bridge_port;
 
-struct bridge_mcast_querier {
-	struct br_ip addr;
+struct net_bridge_vlan;
+
+struct net_bridge_mcast_port {
 	struct net_bridge_port *port;
+	struct net_bridge_vlan *vlan;
+	struct bridge_mcast_own_query ip4_own_query;
+	struct timer_list ip4_mc_router_timer;
+	struct hlist_node ip4_rlist;
+	struct bridge_mcast_own_query ip6_own_query;
+	struct timer_list ip6_mc_router_timer;
+	struct hlist_node ip6_rlist;
+	unsigned char multicast_router;
 };
 
 struct net_bridge;
 
 struct net_bridge_vlan_group;
 
-struct bridge_mcast_stats;
-
 struct net_bridge_port {
 	struct net_bridge *br;
 	struct net_device *dev;
@@ -87639,37 +120636,89 @@ struct net_bridge_port {
 	struct timer_list message_age_timer;
 	struct kobject kobj;
 	struct callback_head rcu;
-	struct bridge_mcast_own_query ip4_own_query;
-	struct bridge_mcast_own_query ip6_own_query;
-	unsigned char multicast_router;
+	struct net_bridge_mcast_port multicast_ctx;
 	struct bridge_mcast_stats *mcast_stats;
-	struct timer_list multicast_router_timer;
+	u32 multicast_eht_hosts_limit;
+	u32 multicast_eht_hosts_cnt;
 	struct hlist_head mglist;
-	struct hlist_node rlist;
 	char sysfs_name[16];
 	struct netpoll *np;
-	int offload_fwd_mark;
+	int hwdom;
+	int offload_count;
+	struct netdev_phys_item_id ppid;
 	u16 group_fwd_mask;
 	u16 backup_redirected_cnt;
 	struct bridge_stp_xstats stp_xstats;
 };
 
-struct bridge_mcast_stats {
-	struct br_mcast_stats mstats;
-	struct u64_stats_sync syncp;
+struct br_tunnel_info {
+	__be64 tunnel_id;
+	struct metadata_dst *tunnel_dst;
+};
+
+struct net_bridge_mcast {
+	struct net_bridge *br;
+	struct net_bridge_vlan *vlan;
+	u32 multicast_last_member_count;
+	u32 multicast_startup_query_count;
+	u8 multicast_querier;
+	u8 multicast_igmp_version;
+	u8 multicast_router;
+	u8 multicast_mld_version;
+	long unsigned int multicast_last_member_interval;
+	long unsigned int multicast_membership_interval;
+	long unsigned int multicast_querier_interval;
+	long unsigned int multicast_query_interval;
+	long unsigned int multicast_query_response_interval;
+	long unsigned int multicast_startup_query_interval;
+	struct hlist_head ip4_mc_router_list;
+	struct timer_list ip4_mc_router_timer;
+	struct bridge_mcast_other_query ip4_other_query;
+	struct bridge_mcast_own_query ip4_own_query;
+	struct bridge_mcast_querier ip4_querier;
+	struct hlist_head ip6_mc_router_list;
+	struct timer_list ip6_mc_router_timer;
+	struct bridge_mcast_other_query ip6_other_query;
+	struct bridge_mcast_own_query ip6_own_query;
+	struct bridge_mcast_querier ip6_querier;
+};
+
+struct net_bridge_vlan {
+	struct rhash_head vnode;
+	struct rhash_head tnode;
+	u16 vid;
+	u16 flags;
+	u16 priv_flags;
+	u8 state;
+	struct pcpu_sw_netstats *stats;
+	union {
+		struct net_bridge *br;
+		struct net_bridge_port *port;
+	};
+	union {
+		refcount_t refcnt;
+		struct net_bridge_vlan *brvlan;
+	};
+	struct br_tunnel_info tinfo;
+	union {
+		struct net_bridge_mcast br_mcast_ctx;
+		struct net_bridge_mcast_port port_mcast_ctx;
+	};
+	struct list_head vlist;
+	struct callback_head rcu;
 };
 
 struct net_bridge {
 	spinlock_t lock;
 	spinlock_t hash_lock;
-	struct list_head port_list;
+	struct hlist_head frame_type_list;
 	struct net_device *dev;
-	struct pcpu_sw_netstats *stats;
 	long unsigned int options;
 	__be16 vlan_proto;
 	u16 default_pvid;
 	struct net_bridge_vlan_group *vlgrp;
 	struct rhashtable fdb_hash_tbl;
+	struct list_head port_list;
 	union {
 		struct rtable fake_rtable;
 		struct rt6_info fake_rt6_info;
@@ -87696,32 +120745,14 @@ struct net_bridge {
 		BR_KERNEL_STP = 1,
 		BR_USER_STP = 2,
 	} stp_enabled;
+	struct net_bridge_mcast multicast_ctx;
+	struct bridge_mcast_stats *mcast_stats;
 	u32 hash_max;
-	u32 multicast_last_member_count;
-	u32 multicast_startup_query_count;
-	u8 multicast_igmp_version;
-	u8 multicast_router;
-	u8 multicast_mld_version;
 	spinlock_t multicast_lock;
-	long unsigned int multicast_last_member_interval;
-	long unsigned int multicast_membership_interval;
-	long unsigned int multicast_querier_interval;
-	long unsigned int multicast_query_interval;
-	long unsigned int multicast_query_response_interval;
-	long unsigned int multicast_startup_query_interval;
 	struct rhashtable mdb_hash_tbl;
 	struct rhashtable sg_port_tbl;
 	struct hlist_head mcast_gc_list;
 	struct hlist_head mdb_list;
-	struct hlist_head router_list;
-	struct timer_list multicast_router_timer;
-	struct bridge_mcast_other_query ip4_other_query;
-	struct bridge_mcast_own_query ip4_own_query;
-	struct bridge_mcast_querier ip4_querier;
-	struct bridge_mcast_stats *mcast_stats;
-	struct bridge_mcast_other_query ip6_other_query;
-	struct bridge_mcast_own_query ip6_own_query;
-	struct bridge_mcast_querier ip6_querier;
 	struct work_struct mcast_gc_work;
 	struct timer_list hello_timer;
 	struct timer_list tcn_timer;
@@ -87729,8 +120760,11 @@ struct net_bridge {
 	struct delayed_work gc_work;
 	struct kobject *ifobj;
 	u32 auto_cnt;
-	int offload_fwd_mark;
+	int last_hwdom;
+	long unsigned int busy_hwdoms;
 	struct hlist_head fdb_list;
+	struct hlist_head mrp_list;
+	struct hlist_head mep_list;
 };
 
 struct net_bridge_vlan_group {
@@ -87962,30 +120996,181 @@ typedef void (*btf_trace_neigh_event_send_dead)(void *, struct neighbour *, int)
 
 typedef void (*btf_trace_neigh_cleanup_and_release)(void *, struct neighbour *, int);
 
-struct clock_identity {
-	u8 id[8];
+struct net_dm_drop_point {
+	__u8 pc[8];
+	__u32 count;
 };
 
-struct port_identity {
-	struct clock_identity clock_identity;
-	__be16 port_number;
+struct net_dm_alert_msg {
+	__u32 entries;
+	struct net_dm_drop_point points[0];
 };
 
-struct ptp_header {
-	u8 tsmt;
-	u8 ver;
-	__be16 message_length;
-	u8 domain_number;
-	u8 reserved1;
-	u8 flag_field[2];
-	__be64 correction;
-	__be32 reserved2;
-	struct port_identity source_port_identity;
-	__be16 sequence_id;
-	u8 control;
-	u8 log_message_interval;
+enum {
+	NET_DM_CMD_UNSPEC = 0,
+	NET_DM_CMD_ALERT = 1,
+	NET_DM_CMD_CONFIG = 2,
+	NET_DM_CMD_START = 3,
+	NET_DM_CMD_STOP = 4,
+	NET_DM_CMD_PACKET_ALERT = 5,
+	NET_DM_CMD_CONFIG_GET = 6,
+	NET_DM_CMD_CONFIG_NEW = 7,
+	NET_DM_CMD_STATS_GET = 8,
+	NET_DM_CMD_STATS_NEW = 9,
+	_NET_DM_CMD_MAX = 10,
+};
+
+enum net_dm_attr {
+	NET_DM_ATTR_UNSPEC = 0,
+	NET_DM_ATTR_ALERT_MODE = 1,
+	NET_DM_ATTR_PC = 2,
+	NET_DM_ATTR_SYMBOL = 3,
+	NET_DM_ATTR_IN_PORT = 4,
+	NET_DM_ATTR_TIMESTAMP = 5,
+	NET_DM_ATTR_PROTO = 6,
+	NET_DM_ATTR_PAYLOAD = 7,
+	NET_DM_ATTR_PAD = 8,
+	NET_DM_ATTR_TRUNC_LEN = 9,
+	NET_DM_ATTR_ORIG_LEN = 10,
+	NET_DM_ATTR_QUEUE_LEN = 11,
+	NET_DM_ATTR_STATS = 12,
+	NET_DM_ATTR_HW_STATS = 13,
+	NET_DM_ATTR_ORIGIN = 14,
+	NET_DM_ATTR_HW_TRAP_GROUP_NAME = 15,
+	NET_DM_ATTR_HW_TRAP_NAME = 16,
+	NET_DM_ATTR_HW_ENTRIES = 17,
+	NET_DM_ATTR_HW_ENTRY = 18,
+	NET_DM_ATTR_HW_TRAP_COUNT = 19,
+	NET_DM_ATTR_SW_DROPS = 20,
+	NET_DM_ATTR_HW_DROPS = 21,
+	NET_DM_ATTR_FLOW_ACTION_COOKIE = 22,
+	__NET_DM_ATTR_MAX = 23,
+	NET_DM_ATTR_MAX = 22,
+};
+
+enum net_dm_alert_mode {
+	NET_DM_ALERT_MODE_SUMMARY = 0,
+	NET_DM_ALERT_MODE_PACKET = 1,
+};
+
+enum {
+	NET_DM_ATTR_PORT_NETDEV_IFINDEX = 0,
+	NET_DM_ATTR_PORT_NETDEV_NAME = 1,
+	__NET_DM_ATTR_PORT_MAX = 2,
+	NET_DM_ATTR_PORT_MAX = 1,
+};
+
+enum {
+	NET_DM_ATTR_STATS_DROPPED = 0,
+	__NET_DM_ATTR_STATS_MAX = 1,
+	NET_DM_ATTR_STATS_MAX = 0,
+};
+
+enum net_dm_origin {
+	NET_DM_ORIGIN_SW = 0,
+	NET_DM_ORIGIN_HW = 1,
+};
+
+struct devlink_trap_metadata {
+	const char *trap_name;
+	const char *trap_group_name;
+	struct net_device *input_dev;
+	const struct flow_action_cookie *fa_cookie;
+	enum devlink_trap_type trap_type;
+};
+
+struct net_dm_stats {
+	u64 dropped;
+	struct u64_stats_sync syncp;
+};
+
+struct net_dm_hw_entry {
+	char trap_name[40];
+	u32 count;
+};
+
+struct net_dm_hw_entries {
+	u32 num_entries;
+	struct net_dm_hw_entry entries[0];
+};
+
+struct per_cpu_dm_data {
+	raw_spinlock_t lock;
+	union {
+		struct sk_buff *skb;
+		struct net_dm_hw_entries *hw_entries;
+	};
+	struct sk_buff_head drop_queue;
+	struct work_struct dm_alert_work;
+	struct timer_list send_timer;
+	struct net_dm_stats stats;
+};
+
+struct dm_hw_stat_delta {
+	struct net_device *dev;
+	long unsigned int last_rx;
+	struct list_head list;
+	struct callback_head rcu;
+	long unsigned int last_drop_val;
+};
+
+struct net_dm_alert_ops {
+	void (*kfree_skb_probe)(void *, struct sk_buff *, void *, enum skb_drop_reason);
+	void (*napi_poll_probe)(void *, struct napi_struct *, int, int);
+	void (*work_item_func)(struct work_struct *);
+	void (*hw_work_item_func)(struct work_struct *);
+	void (*hw_trap_probe)(void *, const struct devlink *, struct sk_buff *, const struct devlink_trap_metadata *);
+};
+
+struct net_dm_skb_cb {
+	union {
+		struct devlink_trap_metadata *hw_metadata;
+		void *pc;
+	};
+};
+
+enum ethtool_test_flags {
+	ETH_TEST_FL_OFFLINE = 1,
+	ETH_TEST_FL_FAILED = 2,
+	ETH_TEST_FL_EXTERNAL_LB = 4,
+	ETH_TEST_FL_EXTERNAL_LB_DONE = 8,
+};
+
+struct net_packet_attrs {
+	unsigned char *src;
+	unsigned char *dst;
+	u32 ip_src;
+	u32 ip_dst;
+	bool tcp;
+	u16 sport;
+	u16 dport;
+	int timeout;
+	int size;
+	int max_size;
+	u8 id;
+	u16 queue_mapping;
+};
+
+struct net_test_priv {
+	struct net_packet_attrs *packet;
+	struct packet_type pt;
+	struct completion comp;
+	int double_vlan;
+	int vlan_id;
+	int ok;
+};
+
+struct netsfhdr {
+	__be32 version;
+	__be64 magic;
+	u8 id;
 } __attribute__((packed));
 
+struct net_test {
+	char name[32];
+	int (*fn)(struct net_device *);
+};
+
 struct update_classid_context {
 	u32 classid;
 	unsigned int batch;
@@ -88028,7 +121213,7 @@ enum {
 
 enum {
 	LWTUNNEL_XMIT_DONE = 0,
-	LWTUNNEL_XMIT_CONTINUE = 1,
+	LWTUNNEL_XMIT_CONTINUE = 256,
 };
 
 struct bpf_lwt_prog {
@@ -88043,79 +121228,6 @@ struct bpf_lwt {
 	int family;
 };
 
-struct bpf_stab {
-	struct bpf_map map;
-	struct sock **sks;
-	struct sk_psock_progs progs;
-	raw_spinlock_t lock;
-	long: 64;
-	long: 64;
-	long: 64;
-};
-
-typedef u64 (*btf_bpf_sock_map_update)(struct bpf_sock_ops_kern *, struct bpf_map *, void *, u64);
-
-typedef u64 (*btf_bpf_sk_redirect_map)(struct sk_buff *, struct bpf_map *, u32, u64);
-
-typedef u64 (*btf_bpf_msg_redirect_map)(struct sk_msg *, struct bpf_map *, u32, u64);
-
-struct sock_map_seq_info {
-	struct bpf_map *map;
-	struct sock *sk;
-	u32 index;
-};
-
-struct bpf_iter__sockmap {
-	union {
-		struct bpf_iter_meta *meta;
-	};
-	union {
-		struct bpf_map *map;
-	};
-	union {
-		void *key;
-	};
-	union {
-		struct sock *sk;
-	};
-};
-
-struct bpf_shtab_elem {
-	struct callback_head rcu;
-	u32 hash;
-	struct sock *sk;
-	struct hlist_node node;
-	u8 key[0];
-};
-
-struct bpf_shtab_bucket {
-	struct hlist_head head;
-	raw_spinlock_t lock;
-};
-
-struct bpf_shtab {
-	struct bpf_map map;
-	struct bpf_shtab_bucket *buckets;
-	u32 buckets_num;
-	u32 elem_size;
-	struct sk_psock_progs progs;
-	atomic_t count;
-	long: 64;
-	long: 64;
-};
-
-typedef u64 (*btf_bpf_sock_hash_update)(struct bpf_sock_ops_kern *, struct bpf_map *, void *, u64);
-
-typedef u64 (*btf_bpf_sk_redirect_hash)(struct sk_buff *, struct bpf_map *, void *, u64);
-
-typedef u64 (*btf_bpf_msg_redirect_hash)(struct sk_msg *, struct bpf_map *, void *, u64);
-
-struct sock_hash_seq_info {
-	struct bpf_map *map;
-	struct bpf_shtab *htab;
-	u32 bucket_id;
-};
-
 struct dst_cache_pcpu {
 	long unsigned int refresh_ts;
 	struct dst_entry *dst;
@@ -88126,12 +121238,6 @@ struct dst_cache_pcpu {
 	};
 };
 
-struct genl_dumpit_info {
-	const struct genl_family *family;
-	struct genl_ops op;
-	struct nlattr **attrs;
-};
-
 enum devlink_command {
 	DEVLINK_CMD_UNSPEC = 0,
 	DEVLINK_CMD_GET = 1,
@@ -88207,8 +121313,12 @@ enum devlink_command {
 	DEVLINK_CMD_TRAP_POLICER_NEW = 71,
 	DEVLINK_CMD_TRAP_POLICER_DEL = 72,
 	DEVLINK_CMD_HEALTH_REPORTER_TEST = 73,
-	__DEVLINK_CMD_MAX = 74,
-	DEVLINK_CMD_MAX = 73,
+	DEVLINK_CMD_RATE_GET = 74,
+	DEVLINK_CMD_RATE_SET = 75,
+	DEVLINK_CMD_RATE_NEW = 76,
+	DEVLINK_CMD_RATE_DEL = 77,
+	__DEVLINK_CMD_MAX = 78,
+	DEVLINK_CMD_MAX = 77,
 };
 
 enum devlink_eswitch_mode {
@@ -88216,14 +121326,6 @@ enum devlink_eswitch_mode {
 	DEVLINK_ESWITCH_MODE_SWITCHDEV = 1,
 };
 
-enum devlink_param_cmode {
-	DEVLINK_PARAM_CMODE_RUNTIME = 0,
-	DEVLINK_PARAM_CMODE_DRIVERINIT = 1,
-	DEVLINK_PARAM_CMODE_PERMANENT = 2,
-	__DEVLINK_PARAM_CMODE_MAX = 3,
-	DEVLINK_PARAM_CMODE_MAX = 2,
-};
-
 enum {
 	DEVLINK_ATTR_STATS_RX_PACKETS = 0,
 	DEVLINK_ATTR_STATS_RX_BYTES = 1,
@@ -88409,8 +121511,14 @@ enum devlink_attr {
 	DEVLINK_ATTR_REMOTE_RELOAD_STATS = 161,
 	DEVLINK_ATTR_RELOAD_ACTION_INFO = 162,
 	DEVLINK_ATTR_RELOAD_ACTION_STATS = 163,
-	__DEVLINK_ATTR_MAX = 164,
-	DEVLINK_ATTR_MAX = 163,
+	DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 164,
+	DEVLINK_ATTR_RATE_TYPE = 165,
+	DEVLINK_ATTR_RATE_TX_SHARE = 166,
+	DEVLINK_ATTR_RATE_TX_MAX = 167,
+	DEVLINK_ATTR_RATE_NODE_NAME = 168,
+	DEVLINK_ATTR_RATE_PARENT_NODE_NAME = 169,
+	__DEVLINK_ATTR_MAX = 170,
+	DEVLINK_ATTR_MAX = 169,
 };
 
 enum devlink_dpipe_match_type {
@@ -88446,8 +121554,10 @@ enum devlink_resource_unit {
 enum devlink_port_function_attr {
 	DEVLINK_PORT_FUNCTION_ATTR_UNSPEC = 0,
 	DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR = 1,
-	__DEVLINK_PORT_FUNCTION_ATTR_MAX = 2,
-	DEVLINK_PORT_FUNCTION_ATTR_MAX = 1,
+	DEVLINK_PORT_FN_ATTR_STATE = 2,
+	DEVLINK_PORT_FN_ATTR_OPSTATE = 3,
+	__DEVLINK_PORT_FUNCTION_ATTR_MAX = 4,
+	DEVLINK_PORT_FUNCTION_ATTR_MAX = 3,
 };
 
 struct devlink_dpipe_match {
@@ -88548,19 +121658,6 @@ enum devlink_param_type {
 	DEVLINK_PARAM_TYPE_BOOL = 4,
 };
 
-union devlink_param_value {
-	u8 vu8;
-	u16 vu16;
-	u32 vu32;
-	char vstr[32];
-	bool vbool;
-};
-
-struct devlink_param_gset_ctx {
-	union devlink_param_value val;
-	enum devlink_param_cmode cmode;
-};
-
 struct devlink_flash_notify {
 	const char *status_msg;
 	const char *component;
@@ -88600,8 +121697,11 @@ enum devlink_param_generic_id {
 	DEVLINK_PARAM_GENERIC_ID_RESET_DEV_ON_DRV_PROBE = 8,
 	DEVLINK_PARAM_GENERIC_ID_ENABLE_ROCE = 9,
 	DEVLINK_PARAM_GENERIC_ID_ENABLE_REMOTE_DEV_RESET = 10,
-	__DEVLINK_PARAM_GENERIC_ID_MAX = 11,
-	DEVLINK_PARAM_GENERIC_ID_MAX = 10,
+	DEVLINK_PARAM_GENERIC_ID_ENABLE_ETH = 11,
+	DEVLINK_PARAM_GENERIC_ID_ENABLE_RDMA = 12,
+	DEVLINK_PARAM_GENERIC_ID_ENABLE_VNET = 13,
+	__DEVLINK_PARAM_GENERIC_ID_MAX = 14,
+	DEVLINK_PARAM_GENERIC_ID_MAX = 13,
 };
 
 struct devlink_region_ops {
@@ -88660,14 +121760,6 @@ struct devlink_fmsg {
 	bool putting_binary;
 };
 
-struct devlink_trap_metadata {
-	const char *trap_name;
-	const char *trap_group_name;
-	struct net_device *input_dev;
-	const struct flow_action_cookie *fa_cookie;
-	enum devlink_trap_type trap_type;
-};
-
 enum devlink_trap_generic_id {
 	DEVLINK_TRAP_GENERIC_ID_SMAC_MC = 0,
 	DEVLINK_TRAP_GENERIC_ID_VLAN_TAG_MISMATCH = 1,
@@ -88759,8 +121851,10 @@ enum devlink_trap_generic_id {
 	DEVLINK_TRAP_GENERIC_ID_DCCP_PARSING = 87,
 	DEVLINK_TRAP_GENERIC_ID_GTP_PARSING = 88,
 	DEVLINK_TRAP_GENERIC_ID_ESP_PARSING = 89,
-	__DEVLINK_TRAP_GENERIC_ID_MAX = 90,
-	DEVLINK_TRAP_GENERIC_ID_MAX = 89,
+	DEVLINK_TRAP_GENERIC_ID_BLACKHOLE_NEXTHOP = 90,
+	DEVLINK_TRAP_GENERIC_ID_DMAC_FILTER = 91,
+	__DEVLINK_TRAP_GENERIC_ID_MAX = 92,
+	DEVLINK_TRAP_GENERIC_ID_MAX = 91,
 };
 
 enum devlink_trap_group_generic_id {
@@ -89007,6 +122101,95 @@ struct gro_cell {
 	struct napi_struct napi;
 };
 
+enum __sk_action {
+	__SK_DROP = 0,
+	__SK_PASS = 1,
+	__SK_REDIRECT = 2,
+	__SK_NONE = 3,
+};
+
+enum sk_psock_state_bits {
+	SK_PSOCK_TX_ENABLED = 0,
+	SK_PSOCK_RX_STRP_ENABLED = 1,
+};
+
+struct sk_psock_link {
+	struct list_head list;
+	struct bpf_map *map;
+	void *link_raw;
+};
+
+struct bpf_stab {
+	struct bpf_map map;
+	struct sock **sks;
+	struct sk_psock_progs progs;
+	raw_spinlock_t lock;
+	long: 64;
+	long: 64;
+};
+
+typedef u64 (*btf_bpf_sock_map_update)(struct bpf_sock_ops_kern *, struct bpf_map *, void *, u64);
+
+typedef u64 (*btf_bpf_sk_redirect_map)(struct sk_buff *, struct bpf_map *, u32, u64);
+
+typedef u64 (*btf_bpf_msg_redirect_map)(struct sk_msg *, struct bpf_map *, u32, u64);
+
+struct sock_map_seq_info {
+	struct bpf_map *map;
+	struct sock *sk;
+	u32 index;
+};
+
+struct bpf_iter__sockmap {
+	union {
+		struct bpf_iter_meta *meta;
+	};
+	union {
+		struct bpf_map *map;
+	};
+	union {
+		void *key;
+	};
+	union {
+		struct sock *sk;
+	};
+};
+
+struct bpf_shtab_elem {
+	struct callback_head rcu;
+	u32 hash;
+	struct sock *sk;
+	struct hlist_node node;
+	u8 key[0];
+};
+
+struct bpf_shtab_bucket {
+	struct hlist_head head;
+	raw_spinlock_t lock;
+};
+
+struct bpf_shtab {
+	struct bpf_map map;
+	struct bpf_shtab_bucket *buckets;
+	u32 buckets_num;
+	u32 elem_size;
+	struct sk_psock_progs progs;
+	atomic_t count;
+	long: 64;
+};
+
+typedef u64 (*btf_bpf_sock_hash_update)(struct bpf_sock_ops_kern *, struct bpf_map *, void *, u64);
+
+typedef u64 (*btf_bpf_sk_redirect_hash)(struct sk_buff *, struct bpf_map *, void *, u64);
+
+typedef u64 (*btf_bpf_msg_redirect_hash)(struct sk_msg *, struct bpf_map *, void *, u64);
+
+struct sock_hash_seq_info {
+	struct bpf_map *map;
+	struct bpf_shtab *htab;
+	u32 bucket_id;
+};
+
 enum {
 	SK_DIAG_BPF_STORAGE_REQ_NONE = 0,
 	SK_DIAG_BPF_STORAGE_REQ_MAP_FD = 1,
@@ -89031,6 +122214,10 @@ typedef u64 (*btf_bpf_sk_storage_get)(struct bpf_map *, struct sock *, void *, u
 
 typedef u64 (*btf_bpf_sk_storage_delete)(struct bpf_map *, struct sock *);
 
+typedef u64 (*btf_bpf_sk_storage_get_tracing)(struct bpf_map *, struct sock *, void *, u64);
+
+typedef u64 (*btf_bpf_sk_storage_delete_tracing)(struct bpf_map *, struct sock *);
+
 struct bpf_sk_storage_diag {
 	u32 nr_maps;
 	struct bpf_map *maps[0];
@@ -89063,10 +122250,6 @@ struct compat_cmsghdr {
 	compat_int_t cmsg_type;
 };
 
-typedef struct sk_buff * (*gro_receive_t)(struct list_head *, struct sk_buff *);
-
-struct nvmem_cell;
-
 struct fch_hdr {
 	__u8 daddr[6];
 	__u8 saddr[6];
@@ -89112,43 +122295,6 @@ struct fddihdr {
 	} hdr;
 } __attribute__((packed));
 
-struct hippi_fp_hdr {
-	__be32 fixed;
-	__be32 d2_size;
-};
-
-struct hippi_le_hdr {
-	__u8 message_type: 4;
-	__u8 double_wide: 1;
-	__u8 fc: 3;
-	__u8 dest_switch_addr[3];
-	__u8 src_addr_type: 4;
-	__u8 dest_addr_type: 4;
-	__u8 src_switch_addr[3];
-	__u16 reserved;
-	__u8 daddr[6];
-	__u16 locally_administered;
-	__u8 saddr[6];
-};
-
-struct hippi_snap_hdr {
-	__u8 dsap;
-	__u8 ssap;
-	__u8 ctrl;
-	__u8 oui[3];
-	__be16 ethertype;
-};
-
-struct hippi_hdr {
-	struct hippi_fp_hdr fp;
-	struct hippi_le_hdr le;
-	struct hippi_snap_hdr snap;
-};
-
-struct hippi_cb {
-	__u32 ifield;
-};
-
 enum macvlan_mode {
 	MACVLAN_MODE_PRIVATE = 1,
 	MACVLAN_MODE_VEPA = 2,
@@ -89171,26 +122317,6 @@ struct tc_prio_qopt {
 	__u8 priomap[16];
 };
 
-enum {
-	TCA_UNSPEC = 0,
-	TCA_KIND = 1,
-	TCA_OPTIONS = 2,
-	TCA_STATS = 3,
-	TCA_XSTATS = 4,
-	TCA_RATE = 5,
-	TCA_FCNT = 6,
-	TCA_STATS2 = 7,
-	TCA_STAB = 8,
-	TCA_PAD = 9,
-	TCA_DUMP_INVISIBLE = 10,
-	TCA_CHAIN = 11,
-	TCA_HW_OFFLOAD = 12,
-	TCA_INGRESS_BLOCK = 13,
-	TCA_EGRESS_BLOCK = 14,
-	TCA_DUMP_FLAGS = 15,
-	__TCA_MAX = 16,
-};
-
 struct vlan_pcpu_stats {
 	u64 rx_packets;
 	u64 rx_bytes;
@@ -89202,8 +122328,6 @@ struct vlan_pcpu_stats {
 	u32 tx_dropped;
 };
 
-struct netpoll;
-
 struct skb_array {
 	struct ptr_ring ring;
 };
@@ -89223,6 +122347,7 @@ struct macvlan_dev {
 	enum macvlan_mode mode;
 	u16 flags;
 	unsigned int macaddr_count;
+	u32 bc_queue_len_req;
 	struct netpoll *netpoll;
 };
 
@@ -89235,6 +122360,12 @@ struct psched_ratecfg {
 	u8 shift;
 };
 
+struct psched_pktrate {
+	u64 rate_pkts_ps;
+	u32 mult;
+	u8 shift;
+};
+
 struct mini_Qdisc_pair {
 	struct mini_Qdisc miniq1;
 	struct mini_Qdisc miniq2;
@@ -89275,6 +122406,17 @@ struct mq_sched {
 	struct Qdisc **qdiscs;
 };
 
+struct sch_frag_data {
+	long unsigned int dst;
+	struct qdisc_skb_cb cb;
+	__be16 inner_protocol;
+	u16 vlan_tci;
+	__be16 vlan_proto;
+	unsigned int l2_len;
+	u8 l2_data[18];
+	int (*xmit)(struct sk_buff *);
+};
+
 enum tc_link_layer {
 	TC_LINKLAYER_UNAWARE = 0,
 	TC_LINKLAYER_ETHERNET = 1,
@@ -89474,7 +122616,7 @@ struct tc_action_ops {
 	int (*dump)(struct sk_buff *, struct tc_action *, int, int);
 	void (*cleanup)(struct tc_action *);
 	int (*lookup)(struct net *, struct tc_action **, u32);
-	int (*init)(struct net *, struct nlattr *, struct nlattr *, struct tc_action **, int, int, bool, struct tcf_proto *, u32, struct netlink_ext_ack *);
+	int (*init)(struct net *, struct nlattr *, struct nlattr *, struct tc_action **, struct tcf_proto *, u32, struct netlink_ext_ack *);
 	int (*walk)(struct net *, struct sk_buff *, struct netlink_callback *, int, const struct tc_action_ops *, struct netlink_ext_ack *);
 	void (*stats_update)(struct tc_action *, u64, u64, u64, u64, bool);
 	size_t (*get_fill_size)(const struct tc_action *);
@@ -89540,13 +122682,18 @@ struct tcf_pedit_key_ex {
 	enum pedit_cmd cmd;
 };
 
-struct tcf_pedit {
-	struct tc_action common;
-	unsigned char tcfp_nkeys;
-	unsigned char tcfp_flags;
-	u32 tcfp_off_max_hint;
+struct tcf_pedit_parms {
 	struct tc_pedit_key *tcfp_keys;
 	struct tcf_pedit_key_ex *tcfp_keys_ex;
+	u32 tcfp_off_max_hint;
+	unsigned char tcfp_nkeys;
+	unsigned char tcfp_flags;
+	struct callback_head rcu;
+};
+
+struct tcf_pedit {
+	struct tc_action common;
+	struct tcf_pedit_parms *parms;
 };
 
 struct tcf_mirred {
@@ -89608,10 +122755,13 @@ struct tcf_police_params {
 	s64 tcfp_burst;
 	u32 tcfp_mtu;
 	s64 tcfp_mtu_ptoks;
+	s64 tcfp_pkt_burst;
 	struct psched_ratecfg rate;
 	bool rate_present;
 	struct psched_ratecfg peak;
 	bool peak_present;
+	struct psched_pktrate ppsrate;
+	bool pps_present;
 	struct callback_head rcu;
 };
 
@@ -89628,11 +122778,11 @@ struct tcf_police {
 	spinlock_t tcfp_lock;
 	s64 tcfp_toks;
 	s64 tcfp_ptoks;
+	s64 tcfp_pkttoks;
 	s64 tcfp_t_c;
 	long: 64;
 	long: 64;
 	long: 64;
-	long: 64;
 };
 
 struct tcf_sample {
@@ -89907,6 +123057,18 @@ struct netlink_tap {
 	struct list_head list;
 };
 
+struct trace_event_raw_netlink_extack {
+	struct trace_entry ent;
+	u32 __data_loc_msg;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_netlink_extack {
+	u32 msg;
+};
+
+typedef void (*btf_trace_netlink_extack)(void *, const char *);
+
 struct netlink_sock {
 	struct sock sk;
 	u32 portid;
@@ -90206,26 +123368,6 @@ enum phy_tunable_id {
 	__ETHTOOL_PHY_TUNABLE_COUNT = 4,
 };
 
-enum ethtool_stringset {
-	ETH_SS_TEST = 0,
-	ETH_SS_STATS = 1,
-	ETH_SS_PRIV_FLAGS = 2,
-	ETH_SS_NTUPLE_FILTERS = 3,
-	ETH_SS_FEATURES = 4,
-	ETH_SS_RSS_HASH_FUNCS = 5,
-	ETH_SS_TUNABLES = 6,
-	ETH_SS_PHY_STATS = 7,
-	ETH_SS_PHY_TUNABLES = 8,
-	ETH_SS_LINK_MODES = 9,
-	ETH_SS_MSG_CLASSES = 10,
-	ETH_SS_WOL_MODES = 11,
-	ETH_SS_SOF_TIMESTAMPING = 12,
-	ETH_SS_TS_TX_TYPES = 13,
-	ETH_SS_TS_RX_FILTERS = 14,
-	ETH_SS_UDP_TUNNEL_TYPES = 15,
-	ETH_SS_COUNT = 16,
-};
-
 struct ethtool_gstrings {
 	__u32 cmd;
 	__u32 string_set;
@@ -90302,6 +123444,15 @@ struct ethtool_per_queue_op {
 	char data[0];
 };
 
+enum ethtool_fec_config_bits {
+	ETHTOOL_FEC_NONE_BIT = 0,
+	ETHTOOL_FEC_AUTO_BIT = 1,
+	ETHTOOL_FEC_OFF_BIT = 2,
+	ETHTOOL_FEC_RS_BIT = 3,
+	ETHTOOL_FEC_BASER_BIT = 4,
+	ETHTOOL_FEC_LLRS_BIT = 5,
+};
+
 struct compat_ethtool_rx_flow_spec {
 	u32 flow_type;
 	union ethtool_flow_union h_u;
@@ -90338,49 +123489,6 @@ struct ethtool_rx_flow_spec_input {
 	u32 rss_ctx;
 };
 
-struct ethtool_phy_ops {
-	int (*get_sset_count)(struct phy_device *);
-	int (*get_strings)(struct phy_device *, u8 *);
-	int (*get_stats)(struct phy_device *, struct ethtool_stats *, u64 *);
-	int (*start_cable_test)(struct phy_device *, struct netlink_ext_ack *);
-	int (*start_cable_test_tdr)(struct phy_device *, struct netlink_ext_ack *, const struct phy_tdr_config *);
-};
-
-enum {
-	ETHTOOL_MSG_KERNEL_NONE = 0,
-	ETHTOOL_MSG_STRSET_GET_REPLY = 1,
-	ETHTOOL_MSG_LINKINFO_GET_REPLY = 2,
-	ETHTOOL_MSG_LINKINFO_NTF = 3,
-	ETHTOOL_MSG_LINKMODES_GET_REPLY = 4,
-	ETHTOOL_MSG_LINKMODES_NTF = 5,
-	ETHTOOL_MSG_LINKSTATE_GET_REPLY = 6,
-	ETHTOOL_MSG_DEBUG_GET_REPLY = 7,
-	ETHTOOL_MSG_DEBUG_NTF = 8,
-	ETHTOOL_MSG_WOL_GET_REPLY = 9,
-	ETHTOOL_MSG_WOL_NTF = 10,
-	ETHTOOL_MSG_FEATURES_GET_REPLY = 11,
-	ETHTOOL_MSG_FEATURES_SET_REPLY = 12,
-	ETHTOOL_MSG_FEATURES_NTF = 13,
-	ETHTOOL_MSG_PRIVFLAGS_GET_REPLY = 14,
-	ETHTOOL_MSG_PRIVFLAGS_NTF = 15,
-	ETHTOOL_MSG_RINGS_GET_REPLY = 16,
-	ETHTOOL_MSG_RINGS_NTF = 17,
-	ETHTOOL_MSG_CHANNELS_GET_REPLY = 18,
-	ETHTOOL_MSG_CHANNELS_NTF = 19,
-	ETHTOOL_MSG_COALESCE_GET_REPLY = 20,
-	ETHTOOL_MSG_COALESCE_NTF = 21,
-	ETHTOOL_MSG_PAUSE_GET_REPLY = 22,
-	ETHTOOL_MSG_PAUSE_NTF = 23,
-	ETHTOOL_MSG_EEE_GET_REPLY = 24,
-	ETHTOOL_MSG_EEE_NTF = 25,
-	ETHTOOL_MSG_TSINFO_GET_REPLY = 26,
-	ETHTOOL_MSG_CABLE_TEST_NTF = 27,
-	ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 28,
-	ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 29,
-	__ETHTOOL_MSG_KERNEL_CNT = 30,
-	ETHTOOL_MSG_KERNEL_MAX = 29,
-};
-
 struct ethtool_link_usettings {
 	struct ethtool_link_settings base;
 	struct {
@@ -90416,6 +123524,12 @@ enum {
 	__ETHTOOL_UDP_TUNNEL_TYPE_CNT = 3,
 };
 
+struct link_mode_info {
+	int speed;
+	u8 lanes;
+	u8 duplex;
+};
+
 enum {
 	ETHTOOL_MSG_USER_NONE = 0,
 	ETHTOOL_MSG_STRSET_GET = 1,
@@ -90446,8 +123560,13 @@ enum {
 	ETHTOOL_MSG_CABLE_TEST_ACT = 26,
 	ETHTOOL_MSG_CABLE_TEST_TDR_ACT = 27,
 	ETHTOOL_MSG_TUNNEL_INFO_GET = 28,
-	__ETHTOOL_MSG_USER_CNT = 29,
-	ETHTOOL_MSG_USER_MAX = 28,
+	ETHTOOL_MSG_FEC_GET = 29,
+	ETHTOOL_MSG_FEC_SET = 30,
+	ETHTOOL_MSG_MODULE_EEPROM_GET = 31,
+	ETHTOOL_MSG_STATS_GET = 32,
+	ETHTOOL_MSG_PHC_VCLOCKS_GET = 33,
+	__ETHTOOL_MSG_USER_CNT = 34,
+	ETHTOOL_MSG_USER_MAX = 33,
 };
 
 enum {
@@ -90490,8 +123609,9 @@ enum {
 	ETHTOOL_A_LINKMODES_DUPLEX = 6,
 	ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG = 7,
 	ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE = 8,
-	__ETHTOOL_A_LINKMODES_CNT = 9,
-	ETHTOOL_A_LINKMODES_MAX = 8,
+	ETHTOOL_A_LINKMODES_LANES = 9,
+	__ETHTOOL_A_LINKMODES_CNT = 10,
+	ETHTOOL_A_LINKMODES_MAX = 9,
 };
 
 enum {
@@ -90597,8 +123717,10 @@ enum {
 	ETHTOOL_A_COALESCE_TX_USECS_HIGH = 21,
 	ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH = 22,
 	ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL = 23,
-	__ETHTOOL_A_COALESCE_CNT = 24,
-	ETHTOOL_A_COALESCE_MAX = 23,
+	ETHTOOL_A_COALESCE_USE_CQE_MODE_TX = 24,
+	ETHTOOL_A_COALESCE_USE_CQE_MODE_RX = 25,
+	__ETHTOOL_A_COALESCE_CNT = 26,
+	ETHTOOL_A_COALESCE_MAX = 25,
 };
 
 enum {
@@ -90636,6 +123758,15 @@ enum {
 	ETHTOOL_A_TSINFO_MAX = 5,
 };
 
+enum {
+	ETHTOOL_A_PHC_VCLOCKS_UNSPEC = 0,
+	ETHTOOL_A_PHC_VCLOCKS_HEADER = 1,
+	ETHTOOL_A_PHC_VCLOCKS_NUM = 2,
+	ETHTOOL_A_PHC_VCLOCKS_INDEX = 3,
+	__ETHTOOL_A_PHC_VCLOCKS_CNT = 4,
+	ETHTOOL_A_PHC_VCLOCKS_MAX = 3,
+};
+
 enum {
 	ETHTOOL_A_CABLE_TEST_UNSPEC = 0,
 	ETHTOOL_A_CABLE_TEST_HEADER = 1,
@@ -90659,6 +123790,98 @@ enum {
 	ETHTOOL_A_TUNNEL_INFO_MAX = 2,
 };
 
+enum {
+	ETHTOOL_A_FEC_UNSPEC = 0,
+	ETHTOOL_A_FEC_HEADER = 1,
+	ETHTOOL_A_FEC_MODES = 2,
+	ETHTOOL_A_FEC_AUTO = 3,
+	ETHTOOL_A_FEC_ACTIVE = 4,
+	ETHTOOL_A_FEC_STATS = 5,
+	__ETHTOOL_A_FEC_CNT = 6,
+	ETHTOOL_A_FEC_MAX = 5,
+};
+
+enum {
+	ETHTOOL_A_MODULE_EEPROM_UNSPEC = 0,
+	ETHTOOL_A_MODULE_EEPROM_HEADER = 1,
+	ETHTOOL_A_MODULE_EEPROM_OFFSET = 2,
+	ETHTOOL_A_MODULE_EEPROM_LENGTH = 3,
+	ETHTOOL_A_MODULE_EEPROM_PAGE = 4,
+	ETHTOOL_A_MODULE_EEPROM_BANK = 5,
+	ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS = 6,
+	ETHTOOL_A_MODULE_EEPROM_DATA = 7,
+	__ETHTOOL_A_MODULE_EEPROM_CNT = 8,
+	ETHTOOL_A_MODULE_EEPROM_MAX = 7,
+};
+
+enum {
+	ETHTOOL_A_STATS_UNSPEC = 0,
+	ETHTOOL_A_STATS_PAD = 1,
+	ETHTOOL_A_STATS_HEADER = 2,
+	ETHTOOL_A_STATS_GROUPS = 3,
+	ETHTOOL_A_STATS_GRP = 4,
+	__ETHTOOL_A_STATS_CNT = 5,
+	ETHTOOL_A_STATS_MAX = 4,
+};
+
+enum {
+	ETHTOOL_STATS_ETH_PHY = 0,
+	ETHTOOL_STATS_ETH_MAC = 1,
+	ETHTOOL_STATS_ETH_CTRL = 2,
+	ETHTOOL_STATS_RMON = 3,
+	__ETHTOOL_STATS_CNT = 4,
+};
+
+enum {
+	ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR = 0,
+	__ETHTOOL_A_STATS_ETH_PHY_CNT = 1,
+	ETHTOOL_A_STATS_ETH_PHY_MAX = 0,
+};
+
+enum {
+	ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT = 0,
+	ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL = 1,
+	ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL = 2,
+	ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT = 3,
+	ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR = 4,
+	ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR = 5,
+	ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES = 6,
+	ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER = 7,
+	ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL = 8,
+	ETHTOOL_A_STATS_ETH_MAC_11_XS_COL = 9,
+	ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR = 10,
+	ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR = 11,
+	ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES = 12,
+	ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR = 13,
+	ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST = 14,
+	ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST = 15,
+	ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER = 16,
+	ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST = 17,
+	ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST = 18,
+	ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR = 19,
+	ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN = 20,
+	ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR = 21,
+	__ETHTOOL_A_STATS_ETH_MAC_CNT = 22,
+	ETHTOOL_A_STATS_ETH_MAC_MAX = 21,
+};
+
+enum {
+	ETHTOOL_A_STATS_ETH_CTRL_3_TX = 0,
+	ETHTOOL_A_STATS_ETH_CTRL_4_RX = 1,
+	ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP = 2,
+	__ETHTOOL_A_STATS_ETH_CTRL_CNT = 3,
+	ETHTOOL_A_STATS_ETH_CTRL_MAX = 2,
+};
+
+enum {
+	ETHTOOL_A_STATS_RMON_UNDERSIZE = 0,
+	ETHTOOL_A_STATS_RMON_OVERSIZE = 1,
+	ETHTOOL_A_STATS_RMON_FRAG = 2,
+	ETHTOOL_A_STATS_RMON_JABBER = 3,
+	__ETHTOOL_A_STATS_RMON_CNT = 4,
+	ETHTOOL_A_STATS_RMON_MAX = 3,
+};
+
 enum ethtool_multicast_groups {
 	ETHNL_MCGRP_MONITOR = 0,
 };
@@ -90771,7 +123994,7 @@ struct strset_req_info {
 
 struct strset_reply_data {
 	struct ethnl_reply_data base;
-	struct strset_info sets[16];
+	struct strset_info sets[21];
 };
 
 struct linkinfo_reply_data {
@@ -90787,11 +124010,6 @@ struct linkmodes_reply_data {
 	bool peer_empty;
 };
 
-struct link_mode_info {
-	int speed;
-	u8 duplex;
-};
-
 struct linkstate_reply_data {
 	struct ethnl_reply_data base;
 	int link;
@@ -90841,6 +124059,7 @@ struct channels_reply_data {
 struct coalesce_reply_data {
 	struct ethnl_reply_data base;
 	struct ethtool_coalesce coalesce;
+	struct kernel_ethtool_coalesce kernel_coalesce;
 	u32 supported_params;
 };
 
@@ -91011,13 +124230,86 @@ struct ethnl_tunnel_info_dump_ctx {
 	int pos_idx;
 };
 
+enum {
+	ETHTOOL_A_FEC_STAT_UNSPEC = 0,
+	ETHTOOL_A_FEC_STAT_PAD = 1,
+	ETHTOOL_A_FEC_STAT_CORRECTED = 2,
+	ETHTOOL_A_FEC_STAT_UNCORR = 3,
+	ETHTOOL_A_FEC_STAT_CORR_BITS = 4,
+	__ETHTOOL_A_FEC_STAT_CNT = 5,
+	ETHTOOL_A_FEC_STAT_MAX = 4,
+};
+
+struct fec_stat_grp {
+	u64 stats[9];
+	u8 cnt;
+};
+
+struct fec_reply_data {
+	struct ethnl_reply_data base;
+	long unsigned int fec_link_modes[2];
+	u32 active_fec;
+	u8 fec_auto;
+	struct fec_stat_grp corr;
+	struct fec_stat_grp uncorr;
+	struct fec_stat_grp corr_bits;
+};
+
+struct eeprom_req_info {
+	struct ethnl_req_info base;
+	u32 offset;
+	u32 length;
+	u8 page;
+	u8 bank;
+	u8 i2c_address;
+};
+
+struct eeprom_reply_data {
+	struct ethnl_reply_data base;
+	u32 length;
+	u8 *data;
+};
+
+enum {
+	ETHTOOL_A_STATS_GRP_UNSPEC = 0,
+	ETHTOOL_A_STATS_GRP_PAD = 1,
+	ETHTOOL_A_STATS_GRP_ID = 2,
+	ETHTOOL_A_STATS_GRP_SS_ID = 3,
+	ETHTOOL_A_STATS_GRP_STAT = 4,
+	ETHTOOL_A_STATS_GRP_HIST_RX = 5,
+	ETHTOOL_A_STATS_GRP_HIST_TX = 6,
+	ETHTOOL_A_STATS_GRP_HIST_BKT_LOW = 7,
+	ETHTOOL_A_STATS_GRP_HIST_BKT_HI = 8,
+	ETHTOOL_A_STATS_GRP_HIST_VAL = 9,
+	__ETHTOOL_A_STATS_GRP_CNT = 10,
+	ETHTOOL_A_STATS_GRP_MAX = 9,
+};
+
+struct stats_req_info {
+	struct ethnl_req_info base;
+	long unsigned int stat_mask[1];
+};
+
+struct stats_reply_data {
+	struct ethnl_reply_data base;
+	struct ethtool_eth_phy_stats phy_stats;
+	struct ethtool_eth_mac_stats mac_stats;
+	struct ethtool_eth_ctrl_stats ctrl_stats;
+	struct ethtool_rmon_stats rmon_stats;
+	const struct ethtool_rmon_hist_range *rmon_ranges;
+};
+
+struct phc_vclocks_reply_data {
+	struct ethnl_reply_data base;
+	int num;
+	int *index;
+};
+
 struct nf_hook_entries_rcu_head {
 	struct callback_head head;
 	void *allocation;
 };
 
-struct nf_conn;
-
 enum nf_nat_manip_type;
 
 struct nf_nat_hook {
@@ -91026,16 +124318,16 @@ struct nf_nat_hook {
 	unsigned int (*manip_pkt)(struct sk_buff *, struct nf_conn *, enum nf_nat_manip_type, enum ip_conntrack_dir);
 };
 
-struct nf_conntrack_tuple;
-
 struct nf_ct_hook {
 	int (*update)(struct net *, struct sk_buff *);
 	void (*destroy)(struct nf_conntrack *);
 	bool (*get_tuple_skb)(struct nf_conntrack_tuple *, const struct sk_buff *);
+	void (*attach)(struct sk_buff *, const struct sk_buff *);
+	void (*set_closing)(struct nf_conntrack *);
+	int (*confirm)(struct sk_buff *);
 };
 
 struct nfnl_ct_hook {
-	struct nf_conn * (*get_ct)(const struct sk_buff *, enum ip_conntrack_info *);
 	size_t (*build_size)(const struct nf_conn *);
 	int (*build)(struct sk_buff *, struct nf_conn *, enum ip_conntrack_info, u_int16_t, u_int16_t);
 	int (*parse)(const struct nlattr *, struct nf_conn *);
@@ -91043,6 +124335,8 @@ struct nfnl_ct_hook {
 	void (*seq_adjust)(struct sk_buff *, struct nf_conn *, enum ip_conntrack_info, s32);
 };
 
+struct nf_queue_entry;
+
 struct nf_ipv6_ops {
 	void (*route_input)(struct sk_buff *);
 	int (*fragment)(struct net *, struct sock *, struct sk_buff *, int (*)(struct net *, struct sock *, struct sk_buff *));
@@ -91090,6 +124384,7 @@ struct nf_bridge_info {
 	u8 pkt_otherhost: 1;
 	u8 in_prerouting: 1;
 	u8 bridged_dnat: 1;
+	u8 sabotage_in_done: 1;
 	__u16 frag_max_size;
 	struct net_device *physindev;
 	struct net_device *physoutdev;
@@ -91113,6 +124408,11 @@ struct ip6_rt_info {
 	u_int32_t mark;
 };
 
+struct nf_queue_handler {
+	int (*outfn)(struct nf_queue_entry *, unsigned int);
+	void (*nf_hook_drop)(struct net *);
+};
+
 struct nf_sockopt_ops {
 	struct list_head list;
 	u_int8_t pf;
@@ -91239,7 +124539,8 @@ struct fib_rt_info {
 	u8 type;
 	u8 offload: 1;
 	u8 trap: 1;
-	u8 unused: 6;
+	u8 offload_failed: 1;
+	u8 unused: 5;
 };
 
 struct uncached_list {
@@ -91274,9 +124575,9 @@ struct fib_alias {
 	u8 fa_slen;
 	u32 tb_id;
 	s16 fa_default;
-	u8 offload: 1;
-	u8 trap: 1;
-	u8 unused: 6;
+	u8 offload;
+	u8 trap;
+	u8 offload_failed;
 	struct callback_head rcu;
 };
 
@@ -91337,6 +124638,7 @@ struct ipcm_cookie {
 	__be32 addr;
 	int oif;
 	struct ip_options_rcu *opt;
+	__u8 protocol;
 	__u8 ttl;
 	__s16 tos;
 	char priority;
@@ -91378,11 +124680,22 @@ struct ip_mreq_source {
 };
 
 struct ip_msfilter {
-	__be32 imsf_multiaddr;
-	__be32 imsf_interface;
-	__u32 imsf_fmode;
-	__u32 imsf_numsrc;
-	__be32 imsf_slist[1];
+	union {
+		struct {
+			__be32 imsf_multiaddr_aux;
+			__be32 imsf_interface_aux;
+			__u32 imsf_fmode_aux;
+			__u32 imsf_numsrc_aux;
+			__be32 imsf_slist[1];
+		};
+		struct {
+			__be32 imsf_multiaddr;
+			__be32 imsf_interface;
+			__u32 imsf_fmode;
+			__u32 imsf_numsrc;
+			__be32 imsf_slist_flex[0];
+		};
+	};
 };
 
 struct group_req {
@@ -91397,11 +124710,22 @@ struct group_source_req {
 };
 
 struct group_filter {
-	__u32 gf_interface;
-	struct __kernel_sockaddr_storage gf_group;
-	__u32 gf_fmode;
-	__u32 gf_numsrc;
-	struct __kernel_sockaddr_storage gf_slist[1];
+	union {
+		struct {
+			__u32 gf_interface_aux;
+			struct __kernel_sockaddr_storage gf_group_aux;
+			__u32 gf_fmode_aux;
+			__u32 gf_numsrc_aux;
+			struct __kernel_sockaddr_storage gf_slist[1];
+		};
+		struct {
+			__u32 gf_interface;
+			struct __kernel_sockaddr_storage gf_group;
+			__u32 gf_fmode;
+			__u32 gf_numsrc;
+			struct __kernel_sockaddr_storage gf_slist_flex[0];
+		};
+	};
 };
 
 struct in_pktinfo {
@@ -91422,12 +124746,39 @@ struct compat_group_source_req {
 } __attribute__((packed));
 
 struct compat_group_filter {
-	__u32 gf_interface;
-	struct __kernel_sockaddr_storage gf_group;
-	__u32 gf_fmode;
-	__u32 gf_numsrc;
-	struct __kernel_sockaddr_storage gf_slist[1];
-} __attribute__((packed));
+	union {
+		struct {
+			__u32 gf_interface_aux;
+			struct __kernel_sockaddr_storage gf_group_aux;
+			__u32 gf_fmode_aux;
+			__u32 gf_numsrc_aux;
+			struct __kernel_sockaddr_storage gf_slist[1];
+		} __attribute__((packed));
+		struct {
+			__u32 gf_interface;
+			struct __kernel_sockaddr_storage gf_group;
+			__u32 gf_fmode;
+			__u32 gf_numsrc;
+			struct __kernel_sockaddr_storage gf_slist_flex[0];
+		} __attribute__((packed));
+	};
+};
+
+enum {
+	BPFILTER_IPT_SO_SET_REPLACE = 64,
+	BPFILTER_IPT_SO_SET_ADD_COUNTERS = 65,
+	BPFILTER_IPT_SET_MAX = 66,
+};
+
+enum {
+	BPFILTER_IPT_SO_GET_INFO = 64,
+	BPFILTER_IPT_SO_GET_ENTRIES = 65,
+	BPFILTER_IPT_SO_GET_REVISION_MATCH = 66,
+	BPFILTER_IPT_SO_GET_REVISION_TARGET = 67,
+	BPFILTER_IPT_GET_MAX = 68,
+};
+
+typedef u32 inet_ehashfn_t(const struct net *, const __be32, const __u16, const __be32, const __be16);
 
 struct tcpvegas_info {
 	__u32 tcpv_enabled;
@@ -91601,6 +124952,7 @@ enum {
 	TCP_NLA_TIMEOUT_REHASH = 23,
 	TCP_NLA_BYTES_NOTSENT = 24,
 	TCP_NLA_EDT = 25,
+	TCP_NLA_TTL = 26,
 };
 
 struct tcp_zerocopy_receive {
@@ -91611,6 +124963,11 @@ struct tcp_zerocopy_receive {
 	__s32 err;
 	__u64 copybuf_address;
 	__s32 copybuf_len;
+	__u32 flags;
+	__u64 msg_control;
+	__u64 msg_controllen;
+	__u32 msg_flags;
+	__u32 reserved;
 };
 
 struct tcp_md5sig_pool {
@@ -91626,6 +124983,11 @@ enum tcp_chrono {
 	__TCP_CHRONO_MAX = 4,
 };
 
+enum {
+	TCP_CMSG_INQ = 1,
+	TCP_CMSG_TS = 2,
+};
+
 struct tcp_splice_state {
 	struct pipe_inode_info *pipe;
 	size_t len;
@@ -91644,6 +125006,33 @@ struct tcp_sack_block_wire {
 	__be32 end_seq;
 };
 
+struct static_key_false_deferred {
+	struct static_key_false key;
+	long unsigned int timeout;
+	struct delayed_work work;
+};
+
+struct mptcp_ext {
+	union {
+		u64 data_ack;
+		u32 data_ack32;
+	};
+	u64 data_seq;
+	u32 subflow_seq;
+	u16 data_len;
+	__sum16 csum;
+	u8 use_map: 1;
+	u8 dsn64: 1;
+	u8 data_fin: 1;
+	u8 use_ack: 1;
+	u8 ack64: 1;
+	u8 mpc_map: 1;
+	u8 frozen: 1;
+	u8 reset_transient: 1;
+	u8 reset_reason: 4;
+	u8 csum_reqd: 1;
+};
+
 enum tcp_queue {
 	TCP_FRAG_IN_WRITE_QUEUE = 0,
 	TCP_FRAG_IN_RTX_QUEUE = 1,
@@ -91686,7 +125075,55 @@ enum tsq_flags {
 	TCPF_MTU_REDUCED_DEFERRED = 32,
 };
 
-struct mptcp_out_options {};
+struct mptcp_rm_list {
+	u8 ids[8];
+	u8 nr;
+};
+
+struct mptcp_addr_info {
+	u8 id;
+	sa_family_t family;
+	__be16 port;
+	union {
+		struct in_addr addr;
+		struct in6_addr addr6;
+	};
+};
+
+struct mptcp_out_options {
+	u16 suboptions;
+	struct mptcp_rm_list rm_list;
+	u8 join_id;
+	u8 backup;
+	u8 reset_reason: 4;
+	u8 reset_transient: 1;
+	u8 csum_reqd: 1;
+	u8 allow_join_id0: 1;
+	union {
+		struct {
+			u64 sndr_key;
+			u64 rcvr_key;
+			u64 data_seq;
+			u32 subflow_seq;
+			u16 data_len;
+			__sum16 csum;
+		};
+		struct {
+			struct mptcp_addr_info addr;
+			u64 ahmac;
+		};
+		struct {
+			struct mptcp_ext ext_copy;
+			u64 fail_seq;
+		};
+		struct {
+			u32 nonce;
+			u32 token;
+			u64 thmac;
+			u8 hmac[20];
+		};
+	};
+};
 
 struct tcp_out_options {
 	u16 options;
@@ -91749,7 +125186,6 @@ struct tcp_iter_state {
 	struct seq_net_private p;
 	enum tcp_seq_states state;
 	struct sock *syn_wait_sk;
-	struct tcp_seq_afinfo *bpf_seq_afinfo;
 	int bucket;
 	int offset;
 	int sbucket;
@@ -91757,6 +125193,15 @@ struct tcp_iter_state {
 	loff_t last_pos;
 };
 
+struct bpf_tcp_iter_state {
+	struct tcp_iter_state state;
+	unsigned int cur_sk;
+	unsigned int end_sk;
+	unsigned int max_sk;
+	struct sock **batch;
+	bool st_bucket_done;
+};
+
 struct bpf_iter__tcp {
 	union {
 		struct bpf_iter_meta *meta;
@@ -91813,7 +125258,7 @@ struct tcp_fastopen_metrics {
 
 struct tcp_metrics_block {
 	struct tcp_metrics_block *tcpm_next;
-	possible_net_t tcpm_net;
+	struct net *tcpm_net;
 	struct inetpeer_addr tcpm_saddr;
 	struct inetpeer_addr tcpm_daddr;
 	long unsigned int tcpm_stamp;
@@ -91912,9 +125357,11 @@ struct inet_protosw {
 	unsigned char flags;
 };
 
+typedef struct sk_buff * (*gro_receive_t)(struct list_head *, struct sk_buff *);
+
 typedef struct sk_buff * (*gro_receive_sk_t)(struct sock *, struct list_head *, struct sk_buff *);
 
-typedef struct sock * (*udp_lookup_t)(struct sk_buff *, __be16, __be16);
+typedef struct sock * (*udp_lookup_t)(const struct sk_buff *, __be16, __be16);
 
 struct arpreq {
 	struct sockaddr arp_pa;
@@ -91928,24 +125375,6 @@ typedef struct {
 	char ax25_call[7];
 } ax25_address;
 
-enum {
-	AX25_VALUES_IPDEFMODE = 0,
-	AX25_VALUES_AXDEFMODE = 1,
-	AX25_VALUES_BACKOFF = 2,
-	AX25_VALUES_CONMODE = 3,
-	AX25_VALUES_WINDOW = 4,
-	AX25_VALUES_EWINDOW = 5,
-	AX25_VALUES_T1 = 6,
-	AX25_VALUES_T2 = 7,
-	AX25_VALUES_T3 = 8,
-	AX25_VALUES_IDLE = 9,
-	AX25_VALUES_N2 = 10,
-	AX25_VALUES_PACLEN = 11,
-	AX25_VALUES_PROTOCOL = 12,
-	AX25_VALUES_DS_TIMEOUT = 13,
-	AX25_MAX_VALUES = 14,
-};
-
 enum ip_conntrack_status {
 	IPS_EXPECTED_BIT = 0,
 	IPS_EXPECTED = 1,
@@ -92006,6 +125435,27 @@ struct icmp_extobj_hdr {
 	__u8 class_type;
 };
 
+struct icmp_ext_echo_ctype3_hdr {
+	__be16 afi;
+	__u8 addrlen;
+	__u8 reserved;
+};
+
+struct icmp_ext_echo_iio {
+	struct icmp_extobj_hdr extobj_hdr;
+	union {
+		char name[16];
+		__be32 ifindex;
+		struct {
+			struct icmp_ext_echo_ctype3_hdr ctype3_hdr;
+			union {
+				__be32 ipv4_addr;
+				struct in6_addr ipv6_addr;
+			} ip_addr;
+		} addr;
+	} ident;
+};
+
 struct icmp_bxm {
 	struct sk_buff *skb;
 	int offset;
@@ -92326,6 +125776,7 @@ struct ipfrag_skb_cb {
 	};
 	struct sk_buff *next_frag;
 	int frag_run_len;
+	int ip_defrag_offset;
 };
 
 struct icmpv6_echo {
@@ -92497,7 +125948,8 @@ struct nexthop_grp {
 
 enum {
 	NEXTHOP_GRP_TYPE_MPATH = 0,
-	__NEXTHOP_GRP_TYPE_MAX = 1,
+	NEXTHOP_GRP_TYPE_RES = 1,
+	__NEXTHOP_GRP_TYPE_MAX = 2,
 };
 
 enum {
@@ -92513,7 +125965,28 @@ enum {
 	NHA_GROUPS = 9,
 	NHA_MASTER = 10,
 	NHA_FDB = 11,
-	__NHA_MAX = 12,
+	NHA_RES_GROUP = 12,
+	NHA_RES_BUCKET = 13,
+	__NHA_MAX = 14,
+};
+
+enum {
+	NHA_RES_GROUP_UNSPEC = 0,
+	NHA_RES_GROUP_PAD = 0,
+	NHA_RES_GROUP_BUCKETS = 1,
+	NHA_RES_GROUP_IDLE_TIMER = 2,
+	NHA_RES_GROUP_UNBALANCED_TIMER = 3,
+	NHA_RES_GROUP_UNBALANCED_TIME = 4,
+	__NHA_RES_GROUP_MAX = 5,
+};
+
+enum {
+	NHA_RES_BUCKET_UNSPEC = 0,
+	NHA_RES_BUCKET_PAD = 0,
+	NHA_RES_BUCKET_INDEX = 1,
+	NHA_RES_BUCKET_IDLE_TIME = 2,
+	NHA_RES_BUCKET_NH_ID = 3,
+	__NHA_RES_BUCKET_MAX = 4,
 };
 
 struct nh_config {
@@ -92531,6 +126004,12 @@ struct nh_config {
 	} gw;
 	struct nlattr *nh_grp;
 	u16 nh_grp_type;
+	u16 nh_grp_res_num_buckets;
+	long unsigned int nh_grp_res_idle_timer;
+	long unsigned int nh_grp_res_unbalanced_timer;
+	bool nh_grp_res_has_num_buckets;
+	bool nh_grp_res_has_idle_timer;
+	bool nh_grp_res_has_unbalanced_timer;
 	struct nlattr *nh_encap;
 	u16 nh_encap_type;
 	u32 nlflags;
@@ -92539,14 +126018,97 @@ struct nh_config {
 
 enum nexthop_event_type {
 	NEXTHOP_EVENT_DEL = 0,
+	NEXTHOP_EVENT_REPLACE = 1,
+	NEXTHOP_EVENT_RES_TABLE_PRE_REPLACE = 2,
+	NEXTHOP_EVENT_BUCKET_REPLACE = 3,
 };
 
-struct inet6_protocol {
-	void (*early_demux)(struct sk_buff *);
-	void (*early_demux_handler)(struct sk_buff *);
-	int (*handler)(struct sk_buff *);
-	int (*err_handler)(struct sk_buff *, struct inet6_skb_parm *, u8, u8, int, __be32);
-	unsigned int flags;
+enum nh_notifier_info_type {
+	NH_NOTIFIER_INFO_TYPE_SINGLE = 0,
+	NH_NOTIFIER_INFO_TYPE_GRP = 1,
+	NH_NOTIFIER_INFO_TYPE_RES_TABLE = 2,
+	NH_NOTIFIER_INFO_TYPE_RES_BUCKET = 3,
+};
+
+struct nh_notifier_single_info {
+	struct net_device *dev;
+	u8 gw_family;
+	union {
+		__be32 ipv4;
+		struct in6_addr ipv6;
+	};
+	u8 is_reject: 1;
+	u8 is_fdb: 1;
+	u8 has_encap: 1;
+};
+
+struct nh_notifier_grp_entry_info {
+	u8 weight;
+	u32 id;
+	struct nh_notifier_single_info nh;
+};
+
+struct nh_notifier_grp_info {
+	u16 num_nh;
+	bool is_fdb;
+	struct nh_notifier_grp_entry_info nh_entries[0];
+};
+
+struct nh_notifier_res_bucket_info {
+	u16 bucket_index;
+	unsigned int idle_timer_ms;
+	bool force;
+	struct nh_notifier_single_info old_nh;
+	struct nh_notifier_single_info new_nh;
+};
+
+struct nh_notifier_res_table_info {
+	u16 num_nh_buckets;
+	struct nh_notifier_single_info nhs[0];
+};
+
+struct nh_notifier_info {
+	struct net *net;
+	struct netlink_ext_ack *extack;
+	u32 id;
+	enum nh_notifier_info_type type;
+	union {
+		struct nh_notifier_single_info *nh;
+		struct nh_notifier_grp_info *nh_grp;
+		struct nh_notifier_res_table_info *nh_res_table;
+		struct nh_notifier_res_bucket_info *nh_res_bucket;
+	};
+};
+
+struct nh_dump_filter {
+	u32 nh_id;
+	int dev_idx;
+	int master_idx;
+	bool group_filter;
+	bool fdb_filter;
+	u32 res_bucket_nh_id;
+};
+
+struct rtm_dump_nh_ctx {
+	u32 idx;
+};
+
+struct rtm_dump_res_bucket_ctx {
+	struct rtm_dump_nh_ctx nh;
+	u16 bucket_index;
+	u32 done_nh_idx;
+};
+
+struct rtm_dump_nexthop_bucket_data {
+	struct rtm_dump_res_bucket_ctx *ctx;
+	struct nh_dump_filter filter;
+};
+
+struct bpfilter_umh_ops {
+	struct umd_info info;
+	struct mutex lock;
+	int (*sockopt)(struct sock *, int, sockptr_t, unsigned int, bool);
+	int (*start)(void);
 };
 
 struct snmp_mib {
@@ -92868,8 +126430,6 @@ struct tls_sw_context_tx {
 	struct tls_rec *open_rec;
 	struct list_head tx_list;
 	atomic_t encrypt_pending;
-	spinlock_t encrypt_compl_lock;
-	int async_notify;
 	u8 async_capable: 1;
 	long unsigned int tx_bitmask;
 };
@@ -92883,7 +126443,9 @@ enum {
 enum {
 	TCP_BPF_BASE = 0,
 	TCP_BPF_TX = 1,
-	TCP_BPF_NUM_CFGS = 2,
+	TCP_BPF_RX = 2,
+	TCP_BPF_TXRX = 3,
+	TCP_BPF_NUM_CFGS = 4,
 };
 
 enum {
@@ -92892,39 +126454,6 @@ enum {
 	UDP_BPF_NUM_PROTS = 2,
 };
 
-struct netlbl_audit {
-	u32 secid;
-	kuid_t loginuid;
-	unsigned int sessionid;
-};
-
-struct cipso_v4_std_map_tbl {
-	struct {
-		u32 *cipso;
-		u32 *local;
-		u32 cipso_size;
-		u32 local_size;
-	} lvl;
-	struct {
-		u32 *cipso;
-		u32 *local;
-		u32 cipso_size;
-		u32 local_size;
-	} cat;
-};
-
-struct cipso_v4_doi {
-	u32 doi;
-	u32 type;
-	union {
-		struct cipso_v4_std_map_tbl *std;
-	} map;
-	u8 tags[5];
-	refcount_t refcount;
-	struct list_head list;
-	struct callback_head rcu;
-};
-
 struct cipso_v4_map_cache_bkt {
 	spinlock_t lock;
 	u32 size;
@@ -93049,26 +126578,6 @@ struct xfrm_policy_walk {
 	u32 seq;
 };
 
-struct xfrm_kmaddress {
-	xfrm_address_t local;
-	xfrm_address_t remote;
-	u32 reserved;
-	u16 family;
-};
-
-struct xfrm_migrate {
-	xfrm_address_t old_daddr;
-	xfrm_address_t old_saddr;
-	xfrm_address_t new_daddr;
-	xfrm_address_t new_saddr;
-	u8 proto;
-	u8 mode;
-	u16 reserved;
-	u32 reqid;
-	u16 old_family;
-	u16 new_family;
-};
-
 struct xfrmk_spdinfo {
 	u32 incnt;
 	u32 outcnt;
@@ -93179,6 +126688,26 @@ struct km_event {
 	struct net *net;
 };
 
+struct xfrm_kmaddress {
+	xfrm_address_t local;
+	xfrm_address_t remote;
+	u32 reserved;
+	u16 family;
+};
+
+struct xfrm_migrate {
+	xfrm_address_t old_daddr;
+	xfrm_address_t old_saddr;
+	xfrm_address_t new_daddr;
+	xfrm_address_t new_saddr;
+	u8 proto;
+	u8 mode;
+	u16 reserved;
+	u32 reqid;
+	u16 old_family;
+	u16 new_family;
+};
+
 struct xfrm_mgr {
 	struct list_head list;
 	int (*notify)(struct xfrm_state *, const struct km_event *);
@@ -93218,6 +126747,10 @@ struct ip_tunnel_6rd_parm {
 	u16 relay_prefixlen;
 };
 
+struct ip_tunnel_fan {
+	struct list_head fan_maps;
+};
+
 struct ip_tunnel_prl_entry;
 
 struct ip_tunnel {
@@ -93243,6 +126776,7 @@ struct ip_tunnel {
 	struct ip_tunnel_6rd_parm ip6rd;
 	struct ip_tunnel_prl_entry *prl;
 	unsigned int prl_count;
+	struct ip_tunnel_fan fan;
 	unsigned int ip_tnl_net_id;
 	struct gro_cells gro_cells;
 	__u32 fwmark;
@@ -93313,7 +126847,8 @@ struct ip_tunnel_prl_entry {
 };
 
 struct xfrm_trans_tasklet {
-	struct tasklet_struct tasklet;
+	struct work_struct work;
+	spinlock_t queue_lock;
 	struct sk_buff_head queue;
 };
 
@@ -93331,6 +126866,34 @@ struct xfrm_user_offload {
 	__u8 flags;
 };
 
+struct espintcp_msg {
+	struct sk_buff *skb;
+	struct sk_msg skmsg;
+	int offset;
+	int len;
+};
+
+struct espintcp_ctx {
+	struct strparser strp;
+	struct sk_buff_head ike_queue;
+	struct sk_buff_head out_queue;
+	struct espintcp_msg partial;
+	void (*saved_data_ready)(struct sock *);
+	void (*saved_write_space)(struct sock *);
+	void (*saved_destruct)(struct sock *);
+	struct work_struct work;
+	bool tx_running;
+};
+
+struct unix_skb_parms {
+	struct pid *pid;
+	kuid_t uid;
+	kgid_t gid;
+	struct scm_fp_list *fp;
+	struct lsmblob lsmblob;
+	u32 consumed;
+};
+
 struct unix_stream_read_state {
 	int (*recv_actor)(struct sk_buff *, int, int, struct unix_stream_read_state *);
 	struct socket *socket;
@@ -93341,6 +126904,22 @@ struct unix_stream_read_state {
 	unsigned int splice_flags;
 };
 
+struct bpf_iter__unix {
+	union {
+		struct bpf_iter_meta *meta;
+	};
+	union {
+		struct unix_sock *unix_sk;
+	};
+	uid_t uid;
+};
+
+struct ioam6_pernet_data {
+	struct mutex lock;
+	struct rhashtable namespaces;
+	struct rhashtable schemas;
+};
+
 struct ipv6_params {
 	__s32 disable_ipv6;
 	__s32 autoconf;
@@ -93422,6 +127001,12 @@ struct ipcm6_cookie {
 	__u16 gso_size;
 };
 
+struct inet6_protocol {
+	int (*handler)(struct sk_buff *);
+	int (*err_handler)(struct sk_buff *, struct inet6_skb_parm *, u8, u8, int, __be32);
+	unsigned int flags;
+};
+
 enum {
 	IFLA_INET6_UNSPEC = 0,
 	IFLA_INET6_FLAGS = 1,
@@ -93432,7 +127017,8 @@ enum {
 	IFLA_INET6_ICMP6STATS = 6,
 	IFLA_INET6_TOKEN = 7,
 	IFLA_INET6_ADDR_GEN_MODE = 8,
-	__IFLA_INET6_MAX = 9,
+	IFLA_INET6_RA_MTU = 9,
+	__IFLA_INET6_MAX = 10,
 };
 
 enum in6_addr_gen_mode {
@@ -93449,32 +127035,6 @@ struct ifla_cacheinfo {
 	__u32 retrans_time;
 };
 
-struct wpan_phy;
-
-struct wpan_dev_header_ops;
-
-struct wpan_dev {
-	struct wpan_phy *wpan_phy;
-	int iftype;
-	struct list_head list;
-	struct net_device *netdev;
-	const struct wpan_dev_header_ops *header_ops;
-	struct net_device *lowpan_dev;
-	u32 identifier;
-	__le16 pan_id;
-	__le16 short_addr;
-	__le64 extended_addr;
-	atomic_t bsn;
-	atomic_t dsn;
-	u8 min_be;
-	u8 max_be;
-	u8 csma_retries;
-	s8 frame_retries;
-	bool lbt;
-	bool promiscuous_mode;
-	bool ackreq;
-};
-
 struct prefixmsg {
 	unsigned char prefix_family;
 	unsigned char prefix_pad1;
@@ -93557,7 +127117,14 @@ enum {
 	DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
 	DEVCONF_NDISC_TCLASS = 50,
 	DEVCONF_RPL_SEG_ENABLED = 51,
-	DEVCONF_MAX = 52,
+	DEVCONF_RA_DEFRTR_METRIC = 52,
+	DEVCONF_IOAM6_ENABLED = 53,
+	DEVCONF_IOAM6_ID = 54,
+	DEVCONF_IOAM6_ID_WIDE = 55,
+	DEVCONF_NDISC_EVICT_NOCARRIER = 56,
+	DEVCONF_ACCEPT_UNTRACKED_NA = 57,
+	DEVCONF_ACCEPT_RA_MIN_LFT = 58,
+	DEVCONF_MAX = 59,
 };
 
 enum {
@@ -93568,93 +127135,6 @@ enum {
 	INET6_IFADDR_STATE_DEAD = 4,
 };
 
-enum nl802154_cca_modes {
-	__NL802154_CCA_INVALID = 0,
-	NL802154_CCA_ENERGY = 1,
-	NL802154_CCA_CARRIER = 2,
-	NL802154_CCA_ENERGY_CARRIER = 3,
-	NL802154_CCA_ALOHA = 4,
-	NL802154_CCA_UWB_SHR = 5,
-	NL802154_CCA_UWB_MULTIPLEXED = 6,
-	__NL802154_CCA_ATTR_AFTER_LAST = 7,
-	NL802154_CCA_ATTR_MAX = 6,
-};
-
-enum nl802154_cca_opts {
-	NL802154_CCA_OPT_ENERGY_CARRIER_AND = 0,
-	NL802154_CCA_OPT_ENERGY_CARRIER_OR = 1,
-	__NL802154_CCA_OPT_ATTR_AFTER_LAST = 2,
-	NL802154_CCA_OPT_ATTR_MAX = 1,
-};
-
-enum nl802154_supported_bool_states {
-	NL802154_SUPPORTED_BOOL_FALSE = 0,
-	NL802154_SUPPORTED_BOOL_TRUE = 1,
-	__NL802154_SUPPORTED_BOOL_INVALD = 2,
-	NL802154_SUPPORTED_BOOL_BOTH = 3,
-	__NL802154_SUPPORTED_BOOL_AFTER_LAST = 4,
-	NL802154_SUPPORTED_BOOL_MAX = 3,
-};
-
-struct wpan_phy_supported {
-	u32 channels[32];
-	u32 cca_modes;
-	u32 cca_opts;
-	u32 iftypes;
-	enum nl802154_supported_bool_states lbt;
-	u8 min_minbe;
-	u8 max_minbe;
-	u8 min_maxbe;
-	u8 max_maxbe;
-	u8 min_csma_backoffs;
-	u8 max_csma_backoffs;
-	s8 min_frame_retries;
-	s8 max_frame_retries;
-	size_t tx_powers_size;
-	size_t cca_ed_levels_size;
-	const s32 *tx_powers;
-	const s32 *cca_ed_levels;
-};
-
-struct wpan_phy_cca {
-	enum nl802154_cca_modes mode;
-	enum nl802154_cca_opts opt;
-};
-
-struct wpan_phy {
-	const void *privid;
-	u32 flags;
-	u8 current_channel;
-	u8 current_page;
-	struct wpan_phy_supported supported;
-	s32 transmit_power;
-	struct wpan_phy_cca cca;
-	__le64 perm_extended_addr;
-	s32 cca_ed_level;
-	u8 symbol_duration;
-	u16 lifs_period;
-	u16 sifs_period;
-	struct device dev;
-	possible_net_t _net;
-	long: 64;
-	long: 64;
-	long: 64;
-	char priv[0];
-};
-
-struct ieee802154_addr {
-	u8 mode;
-	__le16 pan_id;
-	union {
-		__le16 short_addr;
-		__le64 extended_addr;
-	};
-};
-
-struct wpan_dev_header_ops {
-	int (*create)(struct sk_buff *, struct net_device *, const struct ieee802154_addr *, const struct ieee802154_addr *, unsigned int);
-};
-
 union fwnet_hwaddr {
 	u8 u[16];
 	struct {
@@ -93694,14 +127174,12 @@ enum {
 	IPV6_SADDR_RULE_LOCAL = 1,
 	IPV6_SADDR_RULE_SCOPE = 2,
 	IPV6_SADDR_RULE_PREFERRED = 3,
-	IPV6_SADDR_RULE_HOA = 4,
-	IPV6_SADDR_RULE_OIF = 5,
-	IPV6_SADDR_RULE_LABEL = 6,
-	IPV6_SADDR_RULE_PRIVACY = 7,
-	IPV6_SADDR_RULE_ORCHID = 8,
-	IPV6_SADDR_RULE_PREFIX = 9,
-	IPV6_SADDR_RULE_NOT_OPTIMISTIC = 10,
-	IPV6_SADDR_RULE_MAX = 11,
+	IPV6_SADDR_RULE_OIF = 4,
+	IPV6_SADDR_RULE_LABEL = 5,
+	IPV6_SADDR_RULE_PRIVACY = 6,
+	IPV6_SADDR_RULE_ORCHID = 7,
+	IPV6_SADDR_RULE_PREFIX = 8,
+	IPV6_SADDR_RULE_MAX = 9,
 };
 
 struct ipv6_saddr_score {
@@ -93799,6 +127277,8 @@ struct rt6_exception {
 	struct callback_head rcu;
 };
 
+typedef struct rt6_info * (*pol_lookup_t)(struct net *, struct fib6_table *, struct flowi6 *, const struct sk_buff *, int);
+
 struct route_info {
 	__u8 type;
 	__u8 length;
@@ -94075,11 +127555,7 @@ struct ra_msg {
 	__be32 retrans_timer;
 };
 
-struct static_key_false_deferred {
-	struct static_key_false key;
-	long unsigned int timeout;
-	struct delayed_work work;
-};
+typedef u32 inet6_ehashfn_t(const struct net *, const struct in6_addr *, const u16, const struct in6_addr *, const __be16);
 
 struct icmp6_filter {
 	__u32 data[8];
@@ -94209,9 +127685,70 @@ struct ipv6_rpl_sr_hdr {
 	} segments;
 };
 
-struct tlvtype_proc {
-	int type;
-	bool (*func)(struct sk_buff *, int);
+struct ioam6_hdr {
+	__u8 opt_type;
+	__u8 opt_len;
+	char: 8;
+	__u8 type;
+};
+
+struct ioam6_trace_hdr {
+	__be16 namespace_id;
+	char: 2;
+	__u8 overflow: 1;
+	__u8 nodelen: 5;
+	__u8 remlen: 7;
+	union {
+		__be32 type_be32;
+		struct {
+			__u32 bit7: 1;
+			__u32 bit6: 1;
+			__u32 bit5: 1;
+			__u32 bit4: 1;
+			__u32 bit3: 1;
+			__u32 bit2: 1;
+			__u32 bit1: 1;
+			__u32 bit0: 1;
+			__u32 bit15: 1;
+			__u32 bit14: 1;
+			__u32 bit13: 1;
+			__u32 bit12: 1;
+			__u32 bit11: 1;
+			__u32 bit10: 1;
+			__u32 bit9: 1;
+			__u32 bit8: 1;
+			__u32 bit23: 1;
+			__u32 bit22: 1;
+			__u32 bit21: 1;
+			__u32 bit20: 1;
+			__u32 bit19: 1;
+			__u32 bit18: 1;
+			__u32 bit17: 1;
+			__u32 bit16: 1;
+		} type;
+	};
+	__u8 data[0];
+};
+
+struct ioam6_schema;
+
+struct ioam6_namespace {
+	struct rhash_head head;
+	struct callback_head rcu;
+	struct ioam6_schema *schema;
+	__be16 id;
+	__be32 data;
+	__be64 data_wide;
+};
+
+struct ioam6_schema {
+	struct rhash_head head;
+	struct callback_head rcu;
+	struct ioam6_namespace *ns;
+	u32 id;
+	int len;
+	__be32 hdr;
+	u8 data[0];
 };
 
 struct ip6fl_iter_state {
@@ -94256,6 +127793,30 @@ struct seg6_hmac_info {
 	u8 alg_id;
 };
 
+enum {
+	IOAM6_ATTR_UNSPEC = 0,
+	IOAM6_ATTR_NS_ID = 1,
+	IOAM6_ATTR_NS_DATA = 2,
+	IOAM6_ATTR_NS_DATA_WIDE = 3,
+	IOAM6_ATTR_SC_ID = 4,
+	IOAM6_ATTR_SC_DATA = 5,
+	IOAM6_ATTR_SC_NONE = 6,
+	IOAM6_ATTR_PAD = 7,
+	__IOAM6_ATTR_MAX = 8,
+};
+
+enum {
+	IOAM6_CMD_UNSPEC = 0,
+	IOAM6_CMD_ADD_NAMESPACE = 1,
+	IOAM6_CMD_DEL_NAMESPACE = 2,
+	IOAM6_CMD_DUMP_NAMESPACES = 3,
+	IOAM6_CMD_ADD_SCHEMA = 4,
+	IOAM6_CMD_DEL_SCHEMA = 5,
+	IOAM6_CMD_DUMP_SCHEMAS = 6,
+	IOAM6_CMD_NS_SET_SCHEMA = 7,
+	__IOAM6_CMD_MAX = 8,
+};
+
 typedef short unsigned int mifi_t;
 
 typedef __u32 if_mask;
@@ -94366,15 +127927,16 @@ struct br_input_skb_cb {
 	u8 mrouters_only: 1;
 	u8 proxyarp_replied: 1;
 	u8 src_port_isolated: 1;
+	u8 promisc: 1;
 	u8 vlan_filtered: 1;
 	u8 br_netfilter_broute: 1;
-	int offload_fwd_mark;
+	u8 tx_fwd_offload: 1;
+	int src_hwdom;
+	long unsigned int fwd_hwdoms;
 };
 
 struct nf_bridge_frag_data;
 
-typedef struct rt6_info * (*pol_lookup_t)(struct net *, struct fib6_table *, struct flowi6 *, const struct sk_buff *, int);
-
 struct fib6_rule {
 	struct fib_rule common;
 	struct rt6key src;
@@ -94400,7 +127962,7 @@ struct netlbl_calipso_ops {
 	unsigned char * (*skbuff_optptr)(const struct sk_buff *);
 	int (*skbuff_setattr)(struct sk_buff *, const struct calipso_doi *, const struct netlbl_lsm_secattr *);
 	int (*skbuff_delattr)(struct sk_buff *);
-	void (*cache_invalidate)();
+	void (*cache_invalidate)(void);
 	int (*cache_add)(const unsigned char *, const struct netlbl_lsm_secattr *);
 };
 
@@ -94449,6 +128011,18 @@ struct seg6_lwt {
 	struct seg6_iptunnel_encap tuninfo[0];
 };
 
+enum l3mdev_type {
+	L3MDEV_TYPE_UNSPEC = 0,
+	L3MDEV_TYPE_VRF = 1,
+	__L3MDEV_TYPE_MAX = 2,
+};
+
+enum {
+	IP6_FH_F_FRAG = 1,
+	IP6_FH_F_AUTH = 2,
+	IP6_FH_F_SKIP_RH = 4,
+};
+
 enum {
 	SEG6_LOCAL_UNSPEC = 0,
 	SEG6_LOCAL_ACTION = 1,
@@ -94459,7 +128033,9 @@ enum {
 	SEG6_LOCAL_IIF = 6,
 	SEG6_LOCAL_OIF = 7,
 	SEG6_LOCAL_BPF = 8,
-	__SEG6_LOCAL_MAX = 9,
+	SEG6_LOCAL_VRFTABLE = 9,
+	SEG6_LOCAL_COUNTERS = 10,
+	__SEG6_LOCAL_MAX = 11,
 };
 
 enum {
@@ -94469,15 +128045,40 @@ enum {
 	__SEG6_LOCAL_BPF_PROG_MAX = 3,
 };
 
+enum {
+	SEG6_LOCAL_CNT_UNSPEC = 0,
+	SEG6_LOCAL_CNT_PAD = 1,
+	SEG6_LOCAL_CNT_PACKETS = 2,
+	SEG6_LOCAL_CNT_BYTES = 3,
+	SEG6_LOCAL_CNT_ERRORS = 4,
+	__SEG6_LOCAL_CNT_MAX = 5,
+};
+
 struct seg6_local_lwt;
 
-struct seg6_action_desc {
-	int action;
-	long unsigned int attrs;
-	int (*input)(struct sk_buff *, struct seg6_local_lwt *);
-	int static_headroom;
+struct seg6_local_lwtunnel_ops {
+	int (*build_state)(struct seg6_local_lwt *, const void *, struct netlink_ext_ack *);
+	void (*destroy_state)(struct seg6_local_lwt *);
 };
 
+enum seg6_end_dt_mode {
+	DT_INVALID_MODE = 4294967274,
+	DT_LEGACY_MODE = 0,
+	DT_VRF_MODE = 1,
+};
+
+struct seg6_end_dt_info {
+	enum seg6_end_dt_mode mode;
+	struct net *net;
+	int vrf_ifindex;
+	int vrf_table;
+	u16 family;
+};
+
+struct pcpu_seg6_local_counters;
+
+struct seg6_action_desc;
+
 struct seg6_local_lwt {
 	int action;
 	struct ipv6_sr_hdr *srh;
@@ -94487,14 +128088,40 @@ struct seg6_local_lwt {
 	int iif;
 	int oif;
 	struct bpf_lwt_prog bpf;
+	struct seg6_end_dt_info dt_info;
+	struct pcpu_seg6_local_counters *pcpu_counters;
 	int headroom;
 	struct seg6_action_desc *desc;
+	long unsigned int parsed_optattrs;
+};
+
+struct seg6_action_desc {
+	int action;
+	long unsigned int attrs;
+	long unsigned int optattrs;
+	int (*input)(struct sk_buff *, struct seg6_local_lwt *);
+	int static_headroom;
+	struct seg6_local_lwtunnel_ops slwt_ops;
+};
+
+struct pcpu_seg6_local_counters {
+	u64_stats_t packets;
+	u64_stats_t bytes;
+	u64_stats_t errors;
+	struct u64_stats_sync syncp;
+};
+
+struct seg6_local_counters {
+	__u64 packets;
+	__u64 bytes;
+	__u64 errors;
 };
 
 struct seg6_action_param {
 	int (*parse)(struct nlattr **, struct seg6_local_lwt *);
 	int (*put)(struct sk_buff *, struct seg6_local_lwt *);
 	int (*cmp)(struct seg6_local_lwt *, struct seg6_local_lwt *);
+	void (*destroy)(struct seg6_local_lwt *);
 };
 
 struct sr6_tlv_hmac {
@@ -94516,24 +128143,21 @@ struct seg6_hmac_algo {
 	struct shash_desc **shashs;
 };
 
-struct rt2_hdr {
-	struct ipv6_rt_hdr rt_hdr;
-	__u32 reserved;
-	struct in6_addr addr;
-};
-
-struct mip6_report_rate_limiter {
-	spinlock_t lock;
-	ktime_t stamp;
-	int iif;
-	struct in6_addr src;
-	struct in6_addr dst;
-};
-
 enum {
-	IP6_FH_F_FRAG = 1,
-	IP6_FH_F_AUTH = 2,
-	IP6_FH_F_SKIP_RH = 4,
+	IOAM6_IPTUNNEL_UNSPEC = 0,
+	IOAM6_IPTUNNEL_TRACE = 1,
+	__IOAM6_IPTUNNEL_MAX = 2,
+};
+
+struct ioam6_lwt_encap {
+	struct ipv6_opt_hdr eh;
+	u8 pad[2];
+	struct ioam6_hdr ioamh;
+	struct ioam6_trace_hdr traceh;
+};
+
+struct ioam6_lwt {
+	struct ioam6_lwt_encap tuninfo;
 };
 
 struct sockaddr_pkt {
@@ -94691,17 +128315,6 @@ struct fanout_args {
 	__u32 max_num_members;
 };
 
-typedef __u16 __virtio16;
-
-struct virtio_net_hdr {
-	__u8 flags;
-	__u8 gso_type;
-	__virtio16 hdr_len;
-	__virtio16 gso_size;
-	__virtio16 csum_start;
-	__virtio16 csum_offset;
-};
-
 struct packet_mclist {
 	struct packet_mclist *next;
 	int ifindex;
@@ -94805,9 +128418,8 @@ struct packet_sock {
 	int copy_thresh;
 	spinlock_t bind_lock;
 	struct mutex pg_vec_lock;
+	long unsigned int flags;
 	unsigned int running;
-	unsigned int auxdata: 1;
-	unsigned int origdev: 1;
 	unsigned int has_vnet_hdr: 1;
 	unsigned int tp_loss: 1;
 	unsigned int tp_tx_has_off: 1;
@@ -94816,7 +128428,7 @@ struct packet_sock {
 	__be16 num;
 	struct packet_rollover *rollover;
 	struct packet_mclist *mclist;
-	atomic_t mapped;
+	atomic_long_t mapped;
 	enum tpacket_versions tp_version;
 	unsigned int tp_hdrlen;
 	unsigned int tp_reserve;
@@ -94826,6 +128438,7 @@ struct packet_sock {
 	int (*xmit)(struct sk_buff *);
 	long: 64;
 	long: 64;
+	long: 64;
 	struct packet_type prot_hook;
 	long: 64;
 	long: 64;
@@ -94844,6 +128457,11 @@ struct packet_sock {
 	long: 64;
 };
 
+enum packet_sock_flags {
+	PACKET_SOCK_ORIGDEV = 0,
+	PACKET_SOCK_AUXDATA = 1,
+};
+
 struct packet_mreq_max {
 	int mr_ifindex;
 	short unsigned int mr_type;
@@ -95062,6 +128680,13 @@ enum nl80211_mfp {
 	NL80211_MFP_OPTIONAL = 2,
 };
 
+enum nl80211_sae_pwe_mechanism {
+	NL80211_SAE_PWE_UNSPECIFIED = 0,
+	NL80211_SAE_PWE_HUNT_AND_PECK = 1,
+	NL80211_SAE_PWE_HASH_TO_ELEMENT = 2,
+	NL80211_SAE_PWE_BOTH = 3,
+};
+
 struct cfg80211_crypto_settings {
 	u32 wpa_versions;
 	u32 cipher_group;
@@ -95079,6 +128704,7 @@ struct cfg80211_crypto_settings {
 	const u8 *psk;
 	const u8 *sae_pwd;
 	u8 sae_pwd_len;
+	enum nl80211_sae_pwe_mechanism sae_pwe;
 };
 
 struct ieee80211_vht_mcs_info {
@@ -95175,6 +128801,8 @@ struct wireless_dev {
 	struct mutex mtx;
 	bool use_4addr;
 	bool is_running;
+	bool registered;
+	bool registering;
 	u8 address[6];
 	u8 ssid[32];
 	u8 ssid_len;
@@ -95254,7 +128882,13 @@ struct compat_iw_point {
 struct __compat_iw_event {
 	__u16 len;
 	__u16 cmd;
-	compat_caddr_t pointer;
+	union {
+		compat_caddr_t pointer;
+		struct {
+			struct {} __empty_ptr_bytes;
+			__u8 ptr_bytes[0];
+		};
+	};
 };
 
 enum nl80211_reg_initiator {
@@ -95377,8 +129011,13 @@ enum nl80211_ext_feature_index {
 	NL80211_EXT_FEATURE_SAE_OFFLOAD_AP = 51,
 	NL80211_EXT_FEATURE_FILS_DISCOVERY = 52,
 	NL80211_EXT_FEATURE_UNSOL_BCAST_PROBE_RESP = 53,
-	NUM_NL80211_EXT_FEATURES = 54,
-	MAX_NL80211_EXT_FEATURES = 53,
+	NL80211_EXT_FEATURE_BEACON_RATE_HE = 54,
+	NL80211_EXT_FEATURE_SECURE_LTF = 55,
+	NL80211_EXT_FEATURE_SECURE_RTT = 56,
+	NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE = 57,
+	NL80211_EXT_FEATURE_BSS_COLOR = 58,
+	NUM_NL80211_EXT_FEATURES = 59,
+	MAX_NL80211_EXT_FEATURES = 58,
 };
 
 enum nl80211_dfs_state {
@@ -95392,6 +129031,11 @@ struct nl80211_vendor_cmd_info {
 	__u32 subcmd;
 };
 
+enum nl80211_sar_type {
+	NL80211_SAR_TYPE_POWER = 0,
+	NUM_NL80211_SAR_TYPE = 1,
+};
+
 struct ieee80211_he_cap_elem {
 	u8 mac_cap_info[6];
 	u8 phy_cap_info[11];
@@ -95520,7 +129164,11 @@ struct ieee80211_sband_iftype_data {
 	u16 types_mask;
 	struct ieee80211_sta_he_cap he_cap;
 	struct ieee80211_he_6ghz_capa he_6ghz_capa;
-	int: 0;
+	long: 0;
+	struct {
+		const u8 *data;
+		unsigned int len;
+	} vendor_elems;
 } __attribute__((packed));
 
 struct ieee80211_sta_s1g_cap {
@@ -95557,6 +129205,17 @@ struct mac_address {
 	u8 addr[6];
 };
 
+struct cfg80211_sar_freq_ranges {
+	u32 start_freq;
+	u32 end_freq;
+};
+
+struct cfg80211_sar_capa {
+	enum nl80211_sar_type type;
+	u32 num_freq_ranges;
+	const struct cfg80211_sar_freq_ranges *freq_ranges;
+};
+
 struct cfg80211_ssid {
 	u8 ssid[32];
 	u8 ssid_len;
@@ -95586,7 +129245,10 @@ struct wiphy_vendor_command;
 
 struct cfg80211_pmsr_capabilities;
 
+struct rfkill;
+
 struct wiphy {
+	struct mutex mtx;
 	u8 perm_addr[6];
 	u8 addr_mask[6];
 	struct mac_address *addresses;
@@ -95600,7 +129262,7 @@ struct wiphy {
 	u32 flags;
 	u32 regulatory_flags;
 	u32 features;
-	u8 ext_features[7];
+	u8 ext_features[8];
 	u32 ap_sme_capa;
 	enum cfg80211_signal_type signal_type;
 	int bss_priv_size;
@@ -95672,7 +129334,8 @@ struct wiphy {
 		u8 max_retry;
 	} tid_config_support;
 	u8 max_data_retry_count;
-	long: 64;
+	const struct cfg80211_sar_capa *sar_capa;
+	struct rfkill *rfkill;
 	long: 64;
 	char priv[0];
 };
@@ -95985,13 +129648,13 @@ struct netlbl_unlhsh_tbl {
 };
 
 struct netlbl_unlhsh_addr4 {
-	u32 secid;
+	struct lsmblob lsmblob;
 	struct netlbl_af4list list;
 	struct callback_head rcu;
 };
 
 struct netlbl_unlhsh_addr6 {
-	u32 secid;
+	struct lsmblob lsmblob;
 	struct netlbl_af6list list;
 	struct callback_head rcu;
 };
@@ -96070,6 +129733,101 @@ struct netlbl_calipso_doiwalk_arg {
 	u32 seq;
 };
 
+enum rfkill_type {
+	RFKILL_TYPE_ALL = 0,
+	RFKILL_TYPE_WLAN = 1,
+	RFKILL_TYPE_BLUETOOTH = 2,
+	RFKILL_TYPE_UWB = 3,
+	RFKILL_TYPE_WIMAX = 4,
+	RFKILL_TYPE_WWAN = 5,
+	RFKILL_TYPE_GPS = 6,
+	RFKILL_TYPE_FM = 7,
+	RFKILL_TYPE_NFC = 8,
+	NUM_RFKILL_TYPES = 9,
+};
+
+enum rfkill_operation {
+	RFKILL_OP_ADD = 0,
+	RFKILL_OP_DEL = 1,
+	RFKILL_OP_CHANGE = 2,
+	RFKILL_OP_CHANGE_ALL = 3,
+};
+
+enum rfkill_hard_block_reasons {
+	RFKILL_HARD_BLOCK_SIGNAL = 1,
+	RFKILL_HARD_BLOCK_NOT_OWNER = 2,
+};
+
+struct rfkill_event_ext {
+	__u32 idx;
+	__u8 type;
+	__u8 op;
+	__u8 soft;
+	__u8 hard;
+	__u8 hard_block_reasons;
+} __attribute__((packed));
+
+enum rfkill_user_states {
+	RFKILL_USER_STATE_SOFT_BLOCKED = 0,
+	RFKILL_USER_STATE_UNBLOCKED = 1,
+	RFKILL_USER_STATE_HARD_BLOCKED = 2,
+};
+
+struct rfkill_ops {
+	void (*poll)(struct rfkill *, void *);
+	void (*query)(struct rfkill *, void *);
+	int (*set_block)(void *, bool);
+};
+
+struct rfkill {
+	spinlock_t lock;
+	enum rfkill_type type;
+	long unsigned int state;
+	long unsigned int hard_block_reasons;
+	u32 idx;
+	bool registered;
+	bool persistent;
+	bool polling_paused;
+	bool suspended;
+	const struct rfkill_ops *ops;
+	void *data;
+	struct led_trigger led_trigger;
+	const char *ledtrigname;
+	struct device dev;
+	struct list_head node;
+	struct delayed_work poll_work;
+	struct work_struct uevent_work;
+	struct work_struct sync_work;
+	char name[0];
+};
+
+struct rfkill_int_event {
+	struct list_head list;
+	struct rfkill_event_ext ev;
+};
+
+struct rfkill_data {
+	struct list_head list;
+	struct list_head events;
+	struct mutex mtx;
+	wait_queue_head_t read_wait;
+	bool input_handler;
+};
+
+enum rfkill_input_master_mode {
+	RFKILL_INPUT_MASTER_UNLOCK = 0,
+	RFKILL_INPUT_MASTER_RESTORE = 1,
+	RFKILL_INPUT_MASTER_UNBLOCKALL = 2,
+	NUM_RFKILL_INPUT_MASTER_MODES = 3,
+};
+
+enum rfkill_sched_op {
+	RFKILL_GLOBAL_OP_EPO = 0,
+	RFKILL_GLOBAL_OP_RESTORE = 1,
+	RFKILL_GLOBAL_OP_UNLOCK = 2,
+	RFKILL_GLOBAL_OP_UNBLOCK = 3,
+};
+
 struct dcbmsg {
 	__u8 dcb_family;
 	__u8 cmd;
@@ -96326,8 +130084,38 @@ struct reply_func {
 	int (*cb)(struct net_device *, struct nlmsghdr *, u32, struct nlattr **, struct sk_buff *);
 };
 
-struct switchdev_trans {
-	bool ph_prepare;
+enum dns_payload_content_type {
+	DNS_PAYLOAD_IS_SERVER_LIST = 0,
+};
+
+enum dns_lookup_status {
+	DNS_LOOKUP_NOT_DONE = 0,
+	DNS_LOOKUP_GOOD = 1,
+	DNS_LOOKUP_GOOD_WITH_BAD = 2,
+	DNS_LOOKUP_BAD = 3,
+	DNS_LOOKUP_GOT_NOT_FOUND = 4,
+	DNS_LOOKUP_GOT_LOCAL_FAILURE = 5,
+	DNS_LOOKUP_GOT_TEMP_FAILURE = 6,
+	DNS_LOOKUP_GOT_NS_FAILURE = 7,
+	NR__dns_lookup_status = 8,
+};
+
+struct dns_payload_header {
+	__u8 zero;
+	__u8 content;
+	__u8 version;
+};
+
+struct dns_server_list_v1_header {
+	struct dns_payload_header hdr;
+	__u8 source;
+	__u8 status;
+	__u8 nr_servers;
+};
+
+enum {
+	dns_key_data = 0,
+	dns_key_error = 1,
 };
 
 enum switchdev_attr_id {
@@ -96338,8 +130126,10 @@ enum switchdev_attr_id {
 	SWITCHDEV_ATTR_ID_PORT_MROUTER = 4,
 	SWITCHDEV_ATTR_ID_BRIDGE_AGEING_TIME = 5,
 	SWITCHDEV_ATTR_ID_BRIDGE_VLAN_FILTERING = 6,
-	SWITCHDEV_ATTR_ID_BRIDGE_MC_DISABLED = 7,
-	SWITCHDEV_ATTR_ID_BRIDGE_MROUTER = 8,
+	SWITCHDEV_ATTR_ID_BRIDGE_VLAN_PROTOCOL = 7,
+	SWITCHDEV_ATTR_ID_BRIDGE_MC_DISABLED = 8,
+	SWITCHDEV_ATTR_ID_BRIDGE_MROUTER = 9,
+	SWITCHDEV_ATTR_ID_MRP_PORT_ROLE = 10,
 };
 
 struct switchdev_attr {
@@ -96350,27 +130140,22 @@ struct switchdev_attr {
 	void (*complete)(struct net_device *, int, void *);
 	union {
 		u8 stp_state;
-		long unsigned int brport_flags;
+		struct switchdev_brport_flags brport_flags;
 		bool mrouter;
 		clock_t ageing_time;
 		bool vlan_filtering;
+		u16 vlan_protocol;
 		bool mc_disabled;
+		u8 mrp_port_role;
 	} u;
 };
 
-enum switchdev_obj_id {
-	SWITCHDEV_OBJ_ID_UNDEFINED = 0,
-	SWITCHDEV_OBJ_ID_PORT_VLAN = 1,
-	SWITCHDEV_OBJ_ID_PORT_MDB = 2,
-	SWITCHDEV_OBJ_ID_HOST_MDB = 3,
-};
-
-struct switchdev_obj {
-	struct net_device *orig_dev;
-	enum switchdev_obj_id id;
-	u32 flags;
-	void *complete_priv;
-	void (*complete)(struct net_device *, int, void *);
+struct switchdev_brport {
+	struct net_device *dev;
+	const void *ctx;
+	struct notifier_block *atomic_nb;
+	struct notifier_block *blocking_nb;
+	bool tx_fwd_offload;
 };
 
 enum switchdev_notifier_type {
@@ -96388,27 +130173,42 @@ enum switchdev_notifier_type {
 	SWITCHDEV_VXLAN_FDB_ADD_TO_DEVICE = 12,
 	SWITCHDEV_VXLAN_FDB_DEL_TO_DEVICE = 13,
 	SWITCHDEV_VXLAN_FDB_OFFLOADED = 14,
+	SWITCHDEV_BRPORT_OFFLOADED = 15,
+	SWITCHDEV_BRPORT_UNOFFLOADED = 16,
 };
 
 struct switchdev_notifier_info {
 	struct net_device *dev;
 	struct netlink_ext_ack *extack;
+	const void *ctx;
+};
+
+struct switchdev_notifier_fdb_info {
+	struct switchdev_notifier_info info;
+	const unsigned char *addr;
+	u16 vid;
+	u8 added_by_user: 1;
+	u8 is_local: 1;
+	u8 offloaded: 1;
 };
 
 struct switchdev_notifier_port_obj_info {
 	struct switchdev_notifier_info info;
 	const struct switchdev_obj *obj;
-	struct switchdev_trans *trans;
 	bool handled;
 };
 
 struct switchdev_notifier_port_attr_info {
 	struct switchdev_notifier_info info;
 	const struct switchdev_attr *attr;
-	struct switchdev_trans *trans;
 	bool handled;
 };
 
+struct switchdev_notifier_brport_info {
+	struct switchdev_notifier_info info;
+	const struct switchdev_brport brport;
+};
+
 typedef void switchdev_deferred_func_t(struct net_device *, const void *);
 
 struct switchdev_deferred_item {
@@ -96418,10 +130218,11 @@ struct switchdev_deferred_item {
 	long unsigned int data[0];
 };
 
-enum l3mdev_type {
-	L3MDEV_TYPE_UNSPEC = 0,
-	L3MDEV_TYPE_VRF = 1,
-	__L3MDEV_TYPE_MAX = 2,
+struct switchdev_nested_priv {
+	bool (*check_cb)(const struct net_device *);
+	bool (*foreign_dev_check_cb)(const struct net_device *, const struct net_device *);
+	const struct net_device *dev;
+	struct net_device *lower_dev;
 };
 
 typedef int (*lookup_by_table_id_t)(struct net *, u32);
@@ -96430,6 +130231,720 @@ struct l3mdev_handler {
 	lookup_by_table_id_t dev_lookup;
 };
 
+struct ncsi_dev {
+	int state;
+	int link_up;
+	struct net_device *dev;
+	void (*handler)(struct ncsi_dev *);
+};
+
+struct ncsi_channel_version {
+	u8 major;
+	u8 minor;
+	u8 update;
+	char alpha1;
+	char alpha2;
+	u8 fw_name[12];
+	u32 fw_version;
+	u16 pci_ids[4];
+	u32 mf_id;
+};
+
+struct ncsi_channel_cap {
+	u32 index;
+	u32 cap;
+};
+
+struct ncsi_channel_mode {
+	u32 index;
+	u32 enable;
+	u32 size;
+	u32 data[8];
+};
+
+struct ncsi_channel_mac_filter {
+	u8 n_uc;
+	u8 n_mc;
+	u8 n_mixed;
+	u64 bitmap;
+	unsigned char *addrs;
+};
+
+struct ncsi_channel_vlan_filter {
+	u8 n_vids;
+	u64 bitmap;
+	u16 *vids;
+};
+
+struct ncsi_channel_stats {
+	u32 hnc_cnt_hi;
+	u32 hnc_cnt_lo;
+	u32 hnc_rx_bytes;
+	u32 hnc_tx_bytes;
+	u32 hnc_rx_uc_pkts;
+	u32 hnc_rx_mc_pkts;
+	u32 hnc_rx_bc_pkts;
+	u32 hnc_tx_uc_pkts;
+	u32 hnc_tx_mc_pkts;
+	u32 hnc_tx_bc_pkts;
+	u32 hnc_fcs_err;
+	u32 hnc_align_err;
+	u32 hnc_false_carrier;
+	u32 hnc_runt_pkts;
+	u32 hnc_jabber_pkts;
+	u32 hnc_rx_pause_xon;
+	u32 hnc_rx_pause_xoff;
+	u32 hnc_tx_pause_xon;
+	u32 hnc_tx_pause_xoff;
+	u32 hnc_tx_s_collision;
+	u32 hnc_tx_m_collision;
+	u32 hnc_l_collision;
+	u32 hnc_e_collision;
+	u32 hnc_rx_ctl_frames;
+	u32 hnc_rx_64_frames;
+	u32 hnc_rx_127_frames;
+	u32 hnc_rx_255_frames;
+	u32 hnc_rx_511_frames;
+	u32 hnc_rx_1023_frames;
+	u32 hnc_rx_1522_frames;
+	u32 hnc_rx_9022_frames;
+	u32 hnc_tx_64_frames;
+	u32 hnc_tx_127_frames;
+	u32 hnc_tx_255_frames;
+	u32 hnc_tx_511_frames;
+	u32 hnc_tx_1023_frames;
+	u32 hnc_tx_1522_frames;
+	u32 hnc_tx_9022_frames;
+	u32 hnc_rx_valid_bytes;
+	u32 hnc_rx_runt_pkts;
+	u32 hnc_rx_jabber_pkts;
+	u32 ncsi_rx_cmds;
+	u32 ncsi_dropped_cmds;
+	u32 ncsi_cmd_type_errs;
+	u32 ncsi_cmd_csum_errs;
+	u32 ncsi_rx_pkts;
+	u32 ncsi_tx_pkts;
+	u32 ncsi_tx_aen_pkts;
+	u32 pt_tx_pkts;
+	u32 pt_tx_dropped;
+	u32 pt_tx_channel_err;
+	u32 pt_tx_us_err;
+	u32 pt_rx_pkts;
+	u32 pt_rx_dropped;
+	u32 pt_rx_channel_err;
+	u32 pt_rx_us_err;
+	u32 pt_rx_os_err;
+};
+
+struct ncsi_package;
+
+struct ncsi_channel {
+	unsigned char id;
+	int state;
+	bool reconfigure_needed;
+	spinlock_t lock;
+	struct ncsi_package *package;
+	struct ncsi_channel_version version;
+	struct ncsi_channel_cap caps[6];
+	struct ncsi_channel_mode modes[8];
+	struct ncsi_channel_mac_filter mac_filter;
+	struct ncsi_channel_vlan_filter vlan_filter;
+	struct ncsi_channel_stats stats;
+	struct {
+		struct timer_list timer;
+		bool enabled;
+		unsigned int state;
+	} monitor;
+	struct list_head node;
+	struct list_head link;
+};
+
+struct ncsi_dev_priv;
+
+struct ncsi_package {
+	unsigned char id;
+	unsigned char uuid[16];
+	struct ncsi_dev_priv *ndp;
+	spinlock_t lock;
+	unsigned int channel_num;
+	struct list_head channels;
+	struct list_head node;
+	bool multi_channel;
+	u32 channel_whitelist;
+	struct ncsi_channel *preferred_channel;
+};
+
+struct ncsi_request {
+	unsigned char id;
+	bool used;
+	unsigned int flags;
+	struct ncsi_dev_priv *ndp;
+	struct sk_buff *cmd;
+	struct sk_buff *rsp;
+	struct timer_list timer;
+	bool enabled;
+	u32 snd_seq;
+	u32 snd_portid;
+	struct nlmsghdr nlhdr;
+};
+
+struct ncsi_dev_priv {
+	struct ncsi_dev ndev;
+	unsigned int flags;
+	unsigned int gma_flag;
+	spinlock_t lock;
+	unsigned int package_probe_id;
+	unsigned int package_num;
+	unsigned int channel_probe_id;
+	struct list_head packages;
+	struct ncsi_channel *hot_channel;
+	struct ncsi_request requests[256];
+	unsigned int request_id;
+	unsigned int pending_req_num;
+	struct ncsi_package *active_package;
+	struct ncsi_channel *active_channel;
+	struct list_head channel_queue;
+	struct work_struct work;
+	struct packet_type ptype;
+	struct list_head node;
+	struct list_head vlan_vids;
+	bool multi_package;
+	bool mlx_multi_host;
+	u32 package_whitelist;
+	unsigned char channel_count;
+};
+
+struct ncsi_cmd_arg {
+	struct ncsi_dev_priv *ndp;
+	unsigned char type;
+	unsigned char id;
+	unsigned char package;
+	unsigned char channel;
+	short unsigned int payload;
+	unsigned int req_flags;
+	union {
+		unsigned char bytes[16];
+		short unsigned int words[8];
+		unsigned int dwords[4];
+	};
+	unsigned char *data;
+	struct genl_info *info;
+};
+
+struct ncsi_pkt_hdr {
+	unsigned char mc_id;
+	unsigned char revision;
+	unsigned char reserved;
+	unsigned char id;
+	unsigned char type;
+	unsigned char channel;
+	__be16 length;
+	__be32 reserved1[2];
+};
+
+struct ncsi_cmd_pkt_hdr {
+	struct ncsi_pkt_hdr common;
+};
+
+struct ncsi_cmd_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be32 checksum;
+	unsigned char pad[26];
+};
+
+struct ncsi_cmd_sp_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	unsigned char reserved[3];
+	unsigned char hw_arbitration;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_dc_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	unsigned char reserved[3];
+	unsigned char ald;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_rc_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be32 reserved;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_ae_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	unsigned char reserved[3];
+	unsigned char mc_id;
+	__be32 mode;
+	__be32 checksum;
+	unsigned char pad[18];
+};
+
+struct ncsi_cmd_sl_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be32 mode;
+	__be32 oem_mode;
+	__be32 checksum;
+	unsigned char pad[18];
+};
+
+struct ncsi_cmd_svf_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be16 reserved;
+	__be16 vlan;
+	__be16 reserved1;
+	unsigned char index;
+	unsigned char enable;
+	__be32 checksum;
+	unsigned char pad[18];
+};
+
+struct ncsi_cmd_ev_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	unsigned char reserved[3];
+	unsigned char mode;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_sma_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	unsigned char mac[6];
+	unsigned char index;
+	unsigned char at_e;
+	__be32 checksum;
+	unsigned char pad[18];
+};
+
+struct ncsi_cmd_ebf_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be32 mode;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_egmf_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be32 mode;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_snfc_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	unsigned char reserved[3];
+	unsigned char mode;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_cmd_oem_pkt {
+	struct ncsi_cmd_pkt_hdr cmd;
+	__be32 mfr_id;
+	unsigned char data[0];
+};
+
+struct ncsi_cmd_handler {
+	unsigned char type;
+	int payload;
+	int (*handler)(struct sk_buff *, struct ncsi_cmd_arg *);
+};
+
+enum {
+	NCSI_CAP_BASE = 0,
+	NCSI_CAP_GENERIC = 0,
+	NCSI_CAP_BC = 1,
+	NCSI_CAP_MC = 2,
+	NCSI_CAP_BUFFER = 3,
+	NCSI_CAP_AEN = 4,
+	NCSI_CAP_VLAN = 5,
+	NCSI_CAP_MAX = 6,
+};
+
+enum {
+	NCSI_CAP_GENERIC_HWA = 1,
+	NCSI_CAP_GENERIC_HDS = 2,
+	NCSI_CAP_GENERIC_FC = 4,
+	NCSI_CAP_GENERIC_FC1 = 8,
+	NCSI_CAP_GENERIC_MC = 16,
+	NCSI_CAP_GENERIC_HWA_UNKNOWN = 0,
+	NCSI_CAP_GENERIC_HWA_SUPPORT = 32,
+	NCSI_CAP_GENERIC_HWA_NOT_SUPPORT = 64,
+	NCSI_CAP_GENERIC_HWA_RESERVED = 96,
+	NCSI_CAP_GENERIC_HWA_MASK = 96,
+	NCSI_CAP_GENERIC_MASK = 127,
+	NCSI_CAP_BC_ARP = 1,
+	NCSI_CAP_BC_DHCPC = 2,
+	NCSI_CAP_BC_DHCPS = 4,
+	NCSI_CAP_BC_NETBIOS = 8,
+	NCSI_CAP_BC_MASK = 15,
+	NCSI_CAP_MC_IPV6_NEIGHBOR = 1,
+	NCSI_CAP_MC_IPV6_ROUTER = 2,
+	NCSI_CAP_MC_DHCPV6_RELAY = 4,
+	NCSI_CAP_MC_DHCPV6_WELL_KNOWN = 8,
+	NCSI_CAP_MC_IPV6_MLD = 16,
+	NCSI_CAP_MC_IPV6_NEIGHBOR_S = 32,
+	NCSI_CAP_MC_MASK = 63,
+	NCSI_CAP_AEN_LSC = 1,
+	NCSI_CAP_AEN_CR = 2,
+	NCSI_CAP_AEN_HDS = 4,
+	NCSI_CAP_AEN_MASK = 7,
+	NCSI_CAP_VLAN_ONLY = 1,
+	NCSI_CAP_VLAN_NO = 2,
+	NCSI_CAP_VLAN_ANY = 4,
+	NCSI_CAP_VLAN_MASK = 7,
+};
+
+enum {
+	NCSI_MODE_BASE = 0,
+	NCSI_MODE_ENABLE = 0,
+	NCSI_MODE_TX_ENABLE = 1,
+	NCSI_MODE_LINK = 2,
+	NCSI_MODE_VLAN = 3,
+	NCSI_MODE_BC = 4,
+	NCSI_MODE_MC = 5,
+	NCSI_MODE_AEN = 6,
+	NCSI_MODE_FC = 7,
+	NCSI_MODE_MAX = 8,
+};
+
+struct ncsi_rsp_pkt_hdr {
+	struct ncsi_pkt_hdr common;
+	__be16 code;
+	__be16 reason;
+};
+
+struct ncsi_rsp_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 checksum;
+	unsigned char pad[22];
+};
+
+struct ncsi_rsp_oem_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 mfr_id;
+	unsigned char data[0];
+};
+
+struct ncsi_rsp_oem_mlx_pkt {
+	unsigned char cmd_rev;
+	unsigned char cmd;
+	unsigned char param;
+	unsigned char optional;
+	unsigned char data[0];
+};
+
+struct ncsi_rsp_oem_bcm_pkt {
+	unsigned char ver;
+	unsigned char type;
+	__be16 len;
+	unsigned char data[0];
+};
+
+struct ncsi_rsp_oem_intel_pkt {
+	unsigned char cmd;
+	unsigned char data[0];
+};
+
+struct ncsi_rsp_gls_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 status;
+	__be32 other;
+	__be32 oem_status;
+	__be32 checksum;
+	unsigned char pad[10];
+};
+
+struct ncsi_rsp_gvi_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	unsigned char major;
+	unsigned char minor;
+	unsigned char update;
+	unsigned char alpha1;
+	unsigned char reserved[3];
+	unsigned char alpha2;
+	unsigned char fw_name[12];
+	__be32 fw_version;
+	__be16 pci_ids[4];
+	__be32 mf_id;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gc_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 cap;
+	__be32 bc_cap;
+	__be32 mc_cap;
+	__be32 buf_cap;
+	__be32 aen_cap;
+	unsigned char vlan_cnt;
+	unsigned char mixed_cnt;
+	unsigned char mc_cnt;
+	unsigned char uc_cnt;
+	unsigned char reserved[2];
+	unsigned char vlan_mode;
+	unsigned char channel_cnt;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gp_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	unsigned char mac_cnt;
+	unsigned char reserved[2];
+	unsigned char mac_enable;
+	unsigned char vlan_cnt;
+	unsigned char reserved1;
+	__be16 vlan_enable;
+	__be32 link_mode;
+	__be32 bc_mode;
+	__be32 valid_modes;
+	unsigned char vlan_mode;
+	unsigned char fc_mode;
+	unsigned char reserved2[2];
+	__be32 aen_mode;
+	unsigned char mac[6];
+	__be16 vlan;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gcps_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 cnt_hi;
+	__be32 cnt_lo;
+	__be32 rx_bytes;
+	__be32 tx_bytes;
+	__be32 rx_uc_pkts;
+	__be32 rx_mc_pkts;
+	__be32 rx_bc_pkts;
+	__be32 tx_uc_pkts;
+	__be32 tx_mc_pkts;
+	__be32 tx_bc_pkts;
+	__be32 fcs_err;
+	__be32 align_err;
+	__be32 false_carrier;
+	__be32 runt_pkts;
+	__be32 jabber_pkts;
+	__be32 rx_pause_xon;
+	__be32 rx_pause_xoff;
+	__be32 tx_pause_xon;
+	__be32 tx_pause_xoff;
+	__be32 tx_s_collision;
+	__be32 tx_m_collision;
+	__be32 l_collision;
+	__be32 e_collision;
+	__be32 rx_ctl_frames;
+	__be32 rx_64_frames;
+	__be32 rx_127_frames;
+	__be32 rx_255_frames;
+	__be32 rx_511_frames;
+	__be32 rx_1023_frames;
+	__be32 rx_1522_frames;
+	__be32 rx_9022_frames;
+	__be32 tx_64_frames;
+	__be32 tx_127_frames;
+	__be32 tx_255_frames;
+	__be32 tx_511_frames;
+	__be32 tx_1023_frames;
+	__be32 tx_1522_frames;
+	__be32 tx_9022_frames;
+	__be32 rx_valid_bytes;
+	__be32 rx_runt_pkts;
+	__be32 rx_jabber_pkts;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gns_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 rx_cmds;
+	__be32 dropped_cmds;
+	__be32 cmd_type_errs;
+	__be32 cmd_csum_errs;
+	__be32 rx_pkts;
+	__be32 tx_pkts;
+	__be32 tx_aen_pkts;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gnpts_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 tx_pkts;
+	__be32 tx_dropped;
+	__be32 tx_channel_err;
+	__be32 tx_us_err;
+	__be32 rx_pkts;
+	__be32 rx_dropped;
+	__be32 rx_channel_err;
+	__be32 rx_us_err;
+	__be32 rx_os_err;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gps_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	__be32 status;
+	__be32 checksum;
+};
+
+struct ncsi_rsp_gpuuid_pkt {
+	struct ncsi_rsp_pkt_hdr rsp;
+	unsigned char uuid[16];
+	__be32 checksum;
+};
+
+struct ncsi_rsp_oem_handler {
+	unsigned int mfr_id;
+	int (*handler)(struct ncsi_request *);
+};
+
+struct ncsi_rsp_handler {
+	unsigned char type;
+	int payload;
+	int (*handler)(struct ncsi_request *);
+};
+
+struct ncsi_aen_pkt_hdr {
+	struct ncsi_pkt_hdr common;
+	unsigned char reserved2[3];
+	unsigned char type;
+};
+
+struct ncsi_aen_lsc_pkt {
+	struct ncsi_aen_pkt_hdr aen;
+	__be32 status;
+	__be32 oem_status;
+	__be32 checksum;
+	unsigned char pad[14];
+};
+
+struct ncsi_aen_hncdsc_pkt {
+	struct ncsi_aen_pkt_hdr aen;
+	__be32 status;
+	__be32 checksum;
+	unsigned char pad[18];
+};
+
+struct ncsi_aen_handler {
+	unsigned char type;
+	int payload;
+	int (*handler)(struct ncsi_dev_priv *, struct ncsi_aen_pkt_hdr *);
+};
+
+enum {
+	ncsi_dev_state_registered = 0,
+	ncsi_dev_state_functional = 256,
+	ncsi_dev_state_probe = 512,
+	ncsi_dev_state_config = 768,
+	ncsi_dev_state_suspend = 1024,
+};
+
+enum {
+	MLX_MC_RBT_SUPPORT = 1,
+	MLX_MC_RBT_AVL = 8,
+};
+
+enum {
+	ncsi_dev_state_major = 65280,
+	ncsi_dev_state_minor = 255,
+	ncsi_dev_state_probe_deselect = 513,
+	ncsi_dev_state_probe_package = 514,
+	ncsi_dev_state_probe_channel = 515,
+	ncsi_dev_state_probe_mlx_gma = 516,
+	ncsi_dev_state_probe_mlx_smaf = 517,
+	ncsi_dev_state_probe_cis = 518,
+	ncsi_dev_state_probe_keep_phy = 519,
+	ncsi_dev_state_probe_gvi = 520,
+	ncsi_dev_state_probe_gc = 521,
+	ncsi_dev_state_probe_gls = 522,
+	ncsi_dev_state_probe_dp = 523,
+	ncsi_dev_state_config_sp = 769,
+	ncsi_dev_state_config_cis = 770,
+	ncsi_dev_state_config_oem_gma = 771,
+	ncsi_dev_state_config_clear_vids = 772,
+	ncsi_dev_state_config_svf = 773,
+	ncsi_dev_state_config_ev = 774,
+	ncsi_dev_state_config_sma = 775,
+	ncsi_dev_state_config_ebf = 776,
+	ncsi_dev_state_config_dgmf = 777,
+	ncsi_dev_state_config_ecnt = 778,
+	ncsi_dev_state_config_ec = 779,
+	ncsi_dev_state_config_ae = 780,
+	ncsi_dev_state_config_gls = 781,
+	ncsi_dev_state_config_done = 782,
+	ncsi_dev_state_suspend_select = 1025,
+	ncsi_dev_state_suspend_gls = 1026,
+	ncsi_dev_state_suspend_dcnt = 1027,
+	ncsi_dev_state_suspend_dc = 1028,
+	ncsi_dev_state_suspend_deselect = 1029,
+	ncsi_dev_state_suspend_done = 1030,
+};
+
+struct vlan_vid {
+	struct list_head list;
+	__be16 proto;
+	u16 vid;
+};
+
+struct ncsi_oem_gma_handler {
+	unsigned int mfr_id;
+	int (*handler)(struct ncsi_cmd_arg *);
+};
+
+enum ncsi_nl_commands {
+	NCSI_CMD_UNSPEC = 0,
+	NCSI_CMD_PKG_INFO = 1,
+	NCSI_CMD_SET_INTERFACE = 2,
+	NCSI_CMD_CLEAR_INTERFACE = 3,
+	NCSI_CMD_SEND_CMD = 4,
+	NCSI_CMD_SET_PACKAGE_MASK = 5,
+	NCSI_CMD_SET_CHANNEL_MASK = 6,
+	__NCSI_CMD_AFTER_LAST = 7,
+	NCSI_CMD_MAX = 6,
+};
+
+enum ncsi_nl_attrs {
+	NCSI_ATTR_UNSPEC = 0,
+	NCSI_ATTR_IFINDEX = 1,
+	NCSI_ATTR_PACKAGE_LIST = 2,
+	NCSI_ATTR_PACKAGE_ID = 3,
+	NCSI_ATTR_CHANNEL_ID = 4,
+	NCSI_ATTR_DATA = 5,
+	NCSI_ATTR_MULTI_FLAG = 6,
+	NCSI_ATTR_PACKAGE_MASK = 7,
+	NCSI_ATTR_CHANNEL_MASK = 8,
+	__NCSI_ATTR_AFTER_LAST = 9,
+	NCSI_ATTR_MAX = 8,
+};
+
+enum ncsi_nl_pkg_attrs {
+	NCSI_PKG_ATTR_UNSPEC = 0,
+	NCSI_PKG_ATTR = 1,
+	NCSI_PKG_ATTR_ID = 2,
+	NCSI_PKG_ATTR_FORCED = 3,
+	NCSI_PKG_ATTR_CHANNEL_LIST = 4,
+	__NCSI_PKG_ATTR_AFTER_LAST = 5,
+	NCSI_PKG_ATTR_MAX = 4,
+};
+
+enum ncsi_nl_channel_attrs {
+	NCSI_CHANNEL_ATTR_UNSPEC = 0,
+	NCSI_CHANNEL_ATTR = 1,
+	NCSI_CHANNEL_ATTR_ID = 2,
+	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 3,
+	NCSI_CHANNEL_ATTR_VERSION_MINOR = 4,
+	NCSI_CHANNEL_ATTR_VERSION_STR = 5,
+	NCSI_CHANNEL_ATTR_LINK_STATE = 6,
+	NCSI_CHANNEL_ATTR_ACTIVE = 7,
+	NCSI_CHANNEL_ATTR_FORCED = 8,
+	NCSI_CHANNEL_ATTR_VLAN_LIST = 9,
+	NCSI_CHANNEL_ATTR_VLAN_ID = 10,
+	__NCSI_CHANNEL_ATTR_AFTER_LAST = 11,
+	NCSI_CHANNEL_ATTR_MAX = 10,
+};
+
 struct sockaddr_xdp {
 	__u16 sxdp_family;
 	__u16 sxdp_flags;
@@ -96473,10 +130988,17 @@ struct xdp_options {
 	__u32 flags;
 };
 
-struct xdp_desc {
-	__u64 addr;
-	__u32 len;
-	__u32 options;
+struct xsk_map {
+	struct bpf_map map;
+	spinlock_t lock;
+	struct xdp_sock *xsk_map[0];
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct xdp_ring;
@@ -96519,7 +131041,7 @@ struct xdp_ring {
 	long: 64;
 	long: 64;
 	long: 64;
-	u32 pad;
+	u32 pad1;
 	long: 64;
 	long: 64;
 	long: 64;
@@ -96528,6 +131050,14 @@ struct xdp_ring {
 	long: 64;
 	long: 64;
 	u32 consumer;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	u32 pad2;
 	u32 flags;
 	long: 64;
 	long: 64;
@@ -96536,6 +131066,14 @@ struct xdp_ring {
 	long: 64;
 	long: 64;
 	long: 64;
+	u32 pad3;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
+	long: 64;
 };
 
 struct xdp_rxtx_ring {
@@ -96558,6 +131096,532 @@ struct xsk_dma_map {
 	bool dma_need_sync;
 };
 
+struct mptcp_mib {
+	long unsigned int mibs[45];
+};
+
+enum mptcp_event_type {
+	MPTCP_EVENT_UNSPEC = 0,
+	MPTCP_EVENT_CREATED = 1,
+	MPTCP_EVENT_ESTABLISHED = 2,
+	MPTCP_EVENT_CLOSED = 3,
+	MPTCP_EVENT_ANNOUNCED = 6,
+	MPTCP_EVENT_REMOVED = 7,
+	MPTCP_EVENT_SUB_ESTABLISHED = 10,
+	MPTCP_EVENT_SUB_CLOSED = 11,
+	MPTCP_EVENT_SUB_PRIORITY = 13,
+};
+
+struct mptcp_options_received {
+	u64 sndr_key;
+	u64 rcvr_key;
+	u64 data_ack;
+	u64 data_seq;
+	u32 subflow_seq;
+	u16 data_len;
+	__sum16 csum;
+	u16 suboptions;
+	u32 token;
+	u32 nonce;
+	u16 use_map: 1;
+	u16 dsn64: 1;
+	u16 data_fin: 1;
+	u16 use_ack: 1;
+	u16 ack64: 1;
+	u16 mpc_map: 1;
+	u16 reset_reason: 4;
+	u16 reset_transient: 1;
+	u16 echo: 1;
+	u16 backup: 1;
+	u16 deny_join_id0: 1;
+	u16 __unused: 2;
+	u8 join_id;
+	u64 thmac;
+	u8 hmac[20];
+	struct mptcp_addr_info addr;
+	struct mptcp_rm_list rm_list;
+	u64 ahmac;
+	u64 fail_seq;
+};
+
+struct mptcp_pm_data {
+	struct mptcp_addr_info local;
+	struct mptcp_addr_info remote;
+	struct list_head anno_list;
+	spinlock_t lock;
+	u8 addr_signal;
+	bool server_side;
+	bool work_pending;
+	bool accept_addr;
+	bool accept_subflow;
+	bool remote_deny_join_id0;
+	u8 add_addr_signaled;
+	u8 add_addr_accepted;
+	u8 local_addr_used;
+	u8 subflows;
+	u8 status;
+	struct mptcp_rm_list rm_list_tx;
+	struct mptcp_rm_list rm_list_rx;
+};
+
+struct mptcp_data_frag {
+	struct list_head list;
+	u64 data_seq;
+	u16 data_len;
+	u16 offset;
+	u16 overhead;
+	u16 already_sent;
+	struct page *page;
+};
+
+struct mptcp_sock {
+	struct inet_connection_sock sk;
+	u64 local_key;
+	u64 remote_key;
+	u64 write_seq;
+	u64 snd_nxt;
+	u64 ack_seq;
+	u64 rcv_wnd_sent;
+	u64 rcv_data_fin_seq;
+	int wmem_reserved;
+	struct sock *last_snd;
+	int snd_burst;
+	int old_wspace;
+	u64 recovery_snd_nxt;
+	u64 snd_una;
+	u64 wnd_end;
+	long unsigned int timer_ival;
+	u32 token;
+	int rmem_released;
+	long unsigned int flags;
+	bool recovery;
+	bool can_ack;
+	bool fully_established;
+	bool rcv_data_fin;
+	bool snd_data_fin_enable;
+	bool rcv_fastclose;
+	bool use_64bit_ack;
+	bool csum_enabled;
+	spinlock_t join_list_lock;
+	int keepalive_cnt;
+	int keepalive_idle;
+	int keepalive_intvl;
+	struct work_struct work;
+	struct sk_buff *ooo_last_skb;
+	struct rb_root out_of_order_queue;
+	struct sk_buff_head receive_queue;
+	int tx_pending_data;
+	struct list_head conn_list;
+	struct list_head rtx_queue;
+	struct mptcp_data_frag *first_pending;
+	struct list_head join_list;
+	struct socket *subflow;
+	struct sock *first;
+	struct mptcp_pm_data pm;
+	struct {
+		u32 space;
+		u32 copied;
+		u64 time;
+		u64 rtt_us;
+	} rcvq_space;
+	u32 setsockopt_seq;
+	char ca_name[16];
+};
+
+struct mptcp_subflow_request_sock {
+	struct tcp_request_sock sk;
+	u16 mp_capable: 1;
+	u16 mp_join: 1;
+	u16 backup: 1;
+	u16 request_bkup: 1;
+	u16 csum_reqd: 1;
+	u16 allow_join_id0: 1;
+	u8 local_id;
+	u8 remote_id;
+	u64 local_key;
+	u64 idsn;
+	u32 token;
+	u32 ssn_offset;
+	u64 thmac;
+	u32 local_nonce;
+	u32 remote_nonce;
+	struct mptcp_sock *msk;
+	struct hlist_nulls_node token_node;
+};
+
+enum mptcp_data_avail {
+	MPTCP_SUBFLOW_NODATA = 0,
+	MPTCP_SUBFLOW_DATA_AVAIL = 1,
+};
+
+struct mptcp_delegated_action {
+	struct napi_struct napi;
+	struct list_head head;
+};
+
+struct mptcp_subflow_context {
+	struct list_head node;
+	u64 local_key;
+	u64 remote_key;
+	u64 idsn;
+	u64 map_seq;
+	u32 snd_isn;
+	u32 token;
+	u32 rel_write_seq;
+	u32 map_subflow_seq;
+	u32 ssn_offset;
+	u32 map_data_len;
+	__wsum map_data_csum;
+	u32 map_csum_len;
+	u32 request_mptcp: 1;
+	u32 request_join: 1;
+	u32 request_bkup: 1;
+	u32 mp_capable: 1;
+	u32 mp_join: 1;
+	u32 fully_established: 1;
+	u32 pm_notified: 1;
+	u32 conn_finished: 1;
+	u32 map_valid: 1;
+	u32 map_csum_reqd: 1;
+	u32 map_data_fin: 1;
+	u32 mpc_map: 1;
+	u32 backup: 1;
+	u32 send_mp_prio: 1;
+	u32 send_mp_fail: 1;
+	u32 rx_eof: 1;
+	u32 can_ack: 1;
+	u32 disposable: 1;
+	u32 stale: 1;
+	u32 valid_csum_seen: 1;
+	u32 close_event_done: 1;
+	u32 __unused: 11;
+	enum mptcp_data_avail data_avail;
+	u32 remote_nonce;
+	u64 thmac;
+	u32 local_nonce;
+	u32 remote_token;
+	u8 hmac[20];
+	u8 local_id;
+	u8 remote_id;
+	u8 reset_seen: 1;
+	u8 reset_transient: 1;
+	u8 reset_reason: 4;
+	u8 stale_count;
+	long int delegated_status;
+	struct list_head delegated_node;
+	u32 setsockopt_seq;
+	u32 stale_rcv_tstamp;
+	struct sock *tcp_sock;
+	struct sock *conn;
+	const struct inet_connection_sock_af_ops *icsk_af_ops;
+	void (*tcp_data_ready)(struct sock *);
+	void (*tcp_state_change)(struct sock *);
+	void (*tcp_write_space)(struct sock *);
+	void (*tcp_error_report)(struct sock *);
+	struct callback_head rcu;
+};
+
+enum linux_mptcp_mib_field {
+	MPTCP_MIB_NUM = 0,
+	MPTCP_MIB_MPCAPABLEPASSIVE = 1,
+	MPTCP_MIB_MPCAPABLEACTIVE = 2,
+	MPTCP_MIB_MPCAPABLEACTIVEACK = 3,
+	MPTCP_MIB_MPCAPABLEPASSIVEACK = 4,
+	MPTCP_MIB_MPCAPABLEPASSIVEFALLBACK = 5,
+	MPTCP_MIB_MPCAPABLEACTIVEFALLBACK = 6,
+	MPTCP_MIB_TOKENFALLBACKINIT = 7,
+	MPTCP_MIB_RETRANSSEGS = 8,
+	MPTCP_MIB_JOINNOTOKEN = 9,
+	MPTCP_MIB_JOINSYNRX = 10,
+	MPTCP_MIB_JOINSYNBACKUPRX = 11,
+	MPTCP_MIB_JOINSYNACKRX = 12,
+	MPTCP_MIB_JOINSYNACKBACKUPRX = 13,
+	MPTCP_MIB_JOINSYNACKMAC = 14,
+	MPTCP_MIB_JOINACKRX = 15,
+	MPTCP_MIB_JOINACKMAC = 16,
+	MPTCP_MIB_DSSNOMATCH = 17,
+	MPTCP_MIB_INFINITEMAPRX = 18,
+	MPTCP_MIB_DSSTCPMISMATCH = 19,
+	MPTCP_MIB_DATACSUMERR = 20,
+	MPTCP_MIB_OFOQUEUETAIL = 21,
+	MPTCP_MIB_OFOQUEUE = 22,
+	MPTCP_MIB_OFOMERGE = 23,
+	MPTCP_MIB_NODSSWINDOW = 24,
+	MPTCP_MIB_DUPDATA = 25,
+	MPTCP_MIB_ADDADDR = 26,
+	MPTCP_MIB_ECHOADD = 27,
+	MPTCP_MIB_PORTADD = 28,
+	MPTCP_MIB_ADDADDRDROP = 29,
+	MPTCP_MIB_JOINPORTSYNRX = 30,
+	MPTCP_MIB_JOINPORTSYNACKRX = 31,
+	MPTCP_MIB_JOINPORTACKRX = 32,
+	MPTCP_MIB_MISMATCHPORTSYNRX = 33,
+	MPTCP_MIB_MISMATCHPORTACKRX = 34,
+	MPTCP_MIB_RMADDR = 35,
+	MPTCP_MIB_RMADDRDROP = 36,
+	MPTCP_MIB_RMSUBFLOW = 37,
+	MPTCP_MIB_MPPRIOTX = 38,
+	MPTCP_MIB_MPPRIORX = 39,
+	MPTCP_MIB_MPFAILTX = 40,
+	MPTCP_MIB_MPFAILRX = 41,
+	MPTCP_MIB_RCVPRUNED = 42,
+	MPTCP_MIB_SUBFLOWSTALE = 43,
+	MPTCP_MIB_SUBFLOWRECOVER = 44,
+	__MPTCP_MIB_MAX = 45,
+};
+
+struct trace_event_raw_mptcp_subflow_get_send {
+	struct trace_entry ent;
+	bool active;
+	bool free;
+	u32 snd_wnd;
+	u32 pace;
+	u8 backup;
+	u64 ratio;
+	char __data[0];
+};
+
+struct trace_event_raw_mptcp_dump_mpext {
+	struct trace_entry ent;
+	u64 data_ack;
+	u64 data_seq;
+	u32 subflow_seq;
+	u16 data_len;
+	u16 csum;
+	u8 use_map;
+	u8 dsn64;
+	u8 data_fin;
+	u8 use_ack;
+	u8 ack64;
+	u8 mpc_map;
+	u8 frozen;
+	u8 reset_transient;
+	u8 reset_reason;
+	u8 csum_reqd;
+	char __data[0];
+};
+
+struct trace_event_raw_ack_update_msk {
+	struct trace_entry ent;
+	u64 data_ack;
+	u64 old_snd_una;
+	u64 new_snd_una;
+	u64 new_wnd_end;
+	u64 msk_wnd_end;
+	char __data[0];
+};
+
+struct trace_event_raw_subflow_check_data_avail {
+	struct trace_entry ent;
+	u8 status;
+	const void *skb;
+	char __data[0];
+};
+
+struct trace_event_data_offsets_mptcp_subflow_get_send {};
+
+struct trace_event_data_offsets_mptcp_dump_mpext {};
+
+struct trace_event_data_offsets_ack_update_msk {};
+
+struct trace_event_data_offsets_subflow_check_data_avail {};
+
+typedef void (*btf_trace_mptcp_subflow_get_send)(void *, struct mptcp_subflow_context *);
+
+typedef void (*btf_trace_get_mapping_status)(void *, struct mptcp_ext *);
+
+typedef void (*btf_trace_ack_update_msk)(void *, u64, u64, u64, u64, u64);
+
+typedef void (*btf_trace_subflow_check_data_avail)(void *, __u8, struct sk_buff *);
+
+struct mptcp_skb_cb {
+	u64 map_seq;
+	u64 end_seq;
+	u32 offset;
+	u8 has_rxtstamp: 1;
+};
+
+enum {
+	MPTCP_CMSG_TS = 1,
+};
+
+struct mptcp_sendmsg_info {
+	int mss_now;
+	int size_goal;
+	u16 limit;
+	u16 sent;
+	unsigned int flags;
+	bool data_lock_held;
+};
+
+struct subflow_send_info {
+	struct sock *ssk;
+	u64 ratio;
+};
+
+enum mapping_status {
+	MAPPING_OK = 0,
+	MAPPING_INVALID = 1,
+	MAPPING_EMPTY = 2,
+	MAPPING_DATA_FIN = 3,
+	MAPPING_DUMMY = 4,
+};
+
+enum mptcp_addr_signal_status {
+	MPTCP_ADD_ADDR_SIGNAL = 0,
+	MPTCP_ADD_ADDR_ECHO = 1,
+	MPTCP_RM_ADDR_SIGNAL = 2,
+};
+
+struct csum_pseudo_header {
+	__be64 data_seq;
+	__be32 subflow_seq;
+	__be16 data_len;
+	__sum16 csum;
+};
+
+struct token_bucket {
+	spinlock_t lock;
+	int chain_len;
+	struct hlist_nulls_head req_chain;
+	struct hlist_nulls_head msk_chain;
+};
+
+struct mptcp_pernet {
+	struct ctl_table_header *ctl_table_hdr;
+	unsigned int add_addr_timeout;
+	unsigned int stale_loss_cnt;
+	u8 mptcp_enabled;
+	u8 checksum_enabled;
+	u8 allow_join_initial_addr_port;
+};
+
+enum mptcp_pm_status {
+	MPTCP_PM_ADD_ADDR_RECEIVED = 0,
+	MPTCP_PM_ADD_ADDR_SEND_ACK = 1,
+	MPTCP_PM_RM_ADDR_RECEIVED = 2,
+	MPTCP_PM_ESTABLISHED = 3,
+	MPTCP_PM_ALREADY_ESTABLISHED = 4,
+	MPTCP_PM_SUBFLOW_ESTABLISHED = 5,
+};
+
+enum {
+	INET_ULP_INFO_UNSPEC = 0,
+	INET_ULP_INFO_NAME = 1,
+	INET_ULP_INFO_TLS = 2,
+	INET_ULP_INFO_MPTCP = 3,
+	__INET_ULP_INFO_MAX = 4,
+};
+
+enum {
+	MPTCP_SUBFLOW_ATTR_UNSPEC = 0,
+	MPTCP_SUBFLOW_ATTR_TOKEN_REM = 1,
+	MPTCP_SUBFLOW_ATTR_TOKEN_LOC = 2,
+	MPTCP_SUBFLOW_ATTR_RELWRITE_SEQ = 3,
+	MPTCP_SUBFLOW_ATTR_MAP_SEQ = 4,
+	MPTCP_SUBFLOW_ATTR_MAP_SFSEQ = 5,
+	MPTCP_SUBFLOW_ATTR_SSN_OFFSET = 6,
+	MPTCP_SUBFLOW_ATTR_MAP_DATALEN = 7,
+	MPTCP_SUBFLOW_ATTR_FLAGS = 8,
+	MPTCP_SUBFLOW_ATTR_ID_REM = 9,
+	MPTCP_SUBFLOW_ATTR_ID_LOC = 10,
+	MPTCP_SUBFLOW_ATTR_PAD = 11,
+	__MPTCP_SUBFLOW_ATTR_MAX = 12,
+};
+
+enum {
+	MPTCP_PM_ATTR_UNSPEC = 0,
+	MPTCP_PM_ATTR_ADDR = 1,
+	MPTCP_PM_ATTR_RCV_ADD_ADDRS = 2,
+	MPTCP_PM_ATTR_SUBFLOWS = 3,
+	__MPTCP_PM_ATTR_MAX = 4,
+};
+
+enum {
+	MPTCP_PM_ADDR_ATTR_UNSPEC = 0,
+	MPTCP_PM_ADDR_ATTR_FAMILY = 1,
+	MPTCP_PM_ADDR_ATTR_ID = 2,
+	MPTCP_PM_ADDR_ATTR_ADDR4 = 3,
+	MPTCP_PM_ADDR_ATTR_ADDR6 = 4,
+	MPTCP_PM_ADDR_ATTR_PORT = 5,
+	MPTCP_PM_ADDR_ATTR_FLAGS = 6,
+	MPTCP_PM_ADDR_ATTR_IF_IDX = 7,
+	__MPTCP_PM_ADDR_ATTR_MAX = 8,
+};
+
+enum {
+	MPTCP_PM_CMD_UNSPEC = 0,
+	MPTCP_PM_CMD_ADD_ADDR = 1,
+	MPTCP_PM_CMD_DEL_ADDR = 2,
+	MPTCP_PM_CMD_GET_ADDR = 3,
+	MPTCP_PM_CMD_FLUSH_ADDRS = 4,
+	MPTCP_PM_CMD_SET_LIMITS = 5,
+	MPTCP_PM_CMD_GET_LIMITS = 6,
+	MPTCP_PM_CMD_SET_FLAGS = 7,
+	__MPTCP_PM_CMD_AFTER_LAST = 8,
+};
+
+enum mptcp_event_attr {
+	MPTCP_ATTR_UNSPEC = 0,
+	MPTCP_ATTR_TOKEN = 1,
+	MPTCP_ATTR_FAMILY = 2,
+	MPTCP_ATTR_LOC_ID = 3,
+	MPTCP_ATTR_REM_ID = 4,
+	MPTCP_ATTR_SADDR4 = 5,
+	MPTCP_ATTR_SADDR6 = 6,
+	MPTCP_ATTR_DADDR4 = 7,
+	MPTCP_ATTR_DADDR6 = 8,
+	MPTCP_ATTR_SPORT = 9,
+	MPTCP_ATTR_DPORT = 10,
+	MPTCP_ATTR_BACKUP = 11,
+	MPTCP_ATTR_ERROR = 12,
+	MPTCP_ATTR_FLAGS = 13,
+	MPTCP_ATTR_TIMEOUT = 14,
+	MPTCP_ATTR_IF_IDX = 15,
+	MPTCP_ATTR_RESET_REASON = 16,
+	MPTCP_ATTR_RESET_FLAGS = 17,
+	__MPTCP_ATTR_AFTER_LAST = 18,
+};
+
+struct mptcp_pm_addr_entry {
+	struct list_head list;
+	struct mptcp_addr_info addr;
+	u8 flags;
+	int ifindex;
+	struct socket *lsk;
+};
+
+struct mptcp_pm_add_entry {
+	struct list_head list;
+	struct mptcp_addr_info addr;
+	struct timer_list add_timer;
+	struct mptcp_sock *sock;
+	u8 retrans_times;
+};
+
+struct pm_nl_pernet {
+	spinlock_t lock;
+	struct list_head local_addr_list;
+	unsigned int addrs;
+	unsigned int stale_loss_cnt;
+	unsigned int add_addr_signal_max;
+	unsigned int add_addr_accept_max;
+	unsigned int local_addr_max;
+	unsigned int subflows_max;
+	unsigned int next_id;
+	long unsigned int id_bitmap[4];
+};
+
+struct join_entry {
+	u32 token;
+	u32 remote_nonce;
+	u32 local_nonce;
+	u8 join_id;
+	u8 local_id;
+	u8 backup;
+	u8 valid;
+};
+
 struct pcibios_fwaddrmap {
 	struct list_head list;
 	struct pci_dev *dev;
@@ -96592,10 +131656,10 @@ struct pci_mmcfg_hostbridge_probe {
 	u32 devfn;
 	u32 vendor;
 	u32 device;
-	const char * (*probe)();
+	const char * (*probe)(void);
 };
 
-typedef bool (*check_reserved_t)(u64, u64, unsigned int);
+typedef bool (*check_reserved_t)(u64, u64, enum e820_type);
 
 struct physdev_restore_msi {
 	uint8_t bus;
@@ -96666,6 +131730,7 @@ struct irq_router {
 	u16 device;
 	int (*get)(struct pci_dev *, struct pci_dev *, int);
 	int (*set)(struct pci_dev *, struct pci_dev *, int, int);
+	int (*lvl)(struct pci_dev *, struct pci_dev *, int, int);
 };
 
 struct irq_router_handler {
@@ -96752,6 +131817,11 @@ struct saved_context {
 
 typedef int (*pm_cpu_match_t)(const struct x86_cpu_id *);
 
+struct msr_enumeration {
+	u32 msr_no;
+	u32 feature;
+};
+
 struct restore_data_record {
 	long unsigned int jump_address;
 	long unsigned int jump_address_phys;