rust-doc-1.43.1-15.1<>,-N`̡p9|+d8 }9d.0 鬒55ުp6!ߛVՆG^ɢ1aI A;=7#b:.>|8:j% r/aMLQ@3j6(kA6 b=qGWV O ϘeJv ]xMnW\ׁ/Į)Lu͌8CAhJu\k\h*7BI;,)?,)d   *PT\`y W_(W :W LW pW J9W WW4W WŽ¨W   !d(!8!}9#}:.e}FTGhWH WI!yWX!<Y!D\!\W]#/W^*&b*hc*d*e*f*l*u*Wv,5z,)e,)x,)|,),)Crust-doc1.43.115.1Rust documentationDocumentation for the Rust language.`̡s390lpd1SUSE Linux Enterprise 15SUSE LLC MIT OR Apache-2.0https://www.suse.com/Development/Languages/Rusthttps://www.rust-lang.orglinuxs390xE*_ذ@l@hZ;:sA=q9I9E%A-+4OY-ksRp A5A%9j.;-6MUI5MAY1=l~їDV(\A-!=1U5AM9EAIQ!m5 !v4ݔYQ;TeD ' h=oDּRo9EMI_P#wr A r,=E511EAAMI95E==191==1Fv) WXhxu u-h0r(oc!c$6T;%5% )XB)1rV{29MYE5&'-=Q]I9E=IE5A9E= U M1IY1F N- _g {K1E+`5M5MMUU95AQ=YUAaq]]E%eu5E]m7uQei9YA=MnQx0yustNZ[[)(k8G<Hy'YUA9=$Q%9^-a;'-*9-%O æyn~-hcddVdbdd;dRbaVcd ccd dfdd\dccddFdHdBcdXdVdZcd.cdAd[de%ddTd5d,dWd&ddd|dZcd6dJddd<dddxddeefde>dddd<ddNddjd6ddrcdtddIdoddrddCdwdTdddfdddQdldddd d dd2dfdddyddP*$ *F/XaOGu'qP%M $ IG !+a}CBkFQPo34<<4=>g e~+eKeqk  Yfv}IjBl7f${7h h?|qsxd^tj?{jۗjQmtpq4t.| jzhRs47~nir|U|IqC|h!j~EiؓEkXg#  h 2!=   67??7@ACLB!@BBC BBBBC%C!" $C0CBB"BBC<BBBBCBB@BBBBBBBC^BBBLCBCC* BBCBBC![""BBCCBC.CcBBn@ Xm  26((!!!!!!T?qi!!!!!m ${  f=  m @@67??7@Abbccbcba1!bbbbbc.cHc$bbbbccc bc cc"bbbc bc5c>c{cbbbcbckcycDc"bbcbbcbc~c@c,cd.cdcccHccTccXc2bcc:bc<cxcc7cac:bc c?ccc\c.ccPcc4c~bbbbbbcVccAcc !" $"`T$$$$$$$$$$$$$$$`ECNN"" F t  *me 8y  X T* ;<DD<EFWw&%QFCnVkbg.Tl`bJkbiK|-s#|4acNmm/fVfOTPPOO&'%)'{6V8OTvedboaXYZQXTuPQ~"!8`+-^Ps l~.k{gSFZiF*ebD '1-9%-)AEUUe_!!-$"nU*\GTdAO)9j&+C5Q1)A51%%%%%)%)1115111MMMM2*!6R:WHHmm^vvg  xxlusssm|||vxxzir~~xzwx}t|}{{lu{x||rrc{{lxxr{zz~~ox~t}QHQQQH{ rrrc{{{lxxxr{,EEEEEEEMMMAIIIEIIAIIIQQQEMMMW89 HBHJHwH{HHH HHH H8DEEHD.DE/H@H-H;H#H[H^HTDE6EH(DNDEYH-H;H&H.H#H'HTDE6EHDNDEUIIIIIIIQQQEMMM1111-11-55551551555551555155=9111-111-55515551111111-111-5555551555111111-111-555551555111111-111-555551555111111-111-555551555111111-111-5555515551AAAA=AAA=AAA=99111-111-5551555111EAIII5515519959955515519959951155515519999599555515519999599555155155555591111-11-555551551-11-11-1551551111-111-5551555155551551999959955551551999959955515519959959551551995995a]aaa]995995==9==9==9==EEIEMM9911111-111-5555515551&B*Go]]NffWhh\qqeuccc]lllfhhjYrssbnnphyyyqyyjpyrzvvgwwh||v}}w||mu|ssd{{lyys{|||mv|kk\tteqqkzztwwhq}}wtbbSkk\zhhbqqkqzyyjsyyjsnn_wwhttn}}wssd||myys|A8AAA8zzktztbbbSkkk\zhhhbqqqk;U88H2H:HHGHGGH(GDDEHH+HDHD>DEIHH+HHHHHDH D>DEE &%&&&% EEEEIIIIIIIIIIIIAAAAEEEE=AIIIIIIIIEEEEEEEEIIIIIIIIAAAAEEEEEEEEIIIIEEEEIIIIAE=AAAAAEEEE=====AEAAAAEEEE99999====AAAAAEEEEEEEEIIIIIIIIEEEEEEEEIIIIIIIIIIIIIIIIAEEEEEEEEIIIIIIMMMMMMMMMMMMAAAAAAIIAAAAAAAAEEEEEEAAEEAAEEEIIMMMMAAAAAAAAEEEEIIAAIIAAEEAAAAEEIIAAAAAAAAAAAAEEAAEEEEEEAAEEMMMM==QQQQIIIIIIIIIIIIEEEEAAAAEEEEAAAAIIIIEEEE9999====IIMMEEEEEEEEEEEEEEEEIIIIIIIIEEEEEEEEEEEEIIIIIIIIEEEEEEEEAIIMMEEEEEEIIAAAAAAAAAAAA=A9=EEEEEEEEAAAAEEEEEEEE=======AAAA====AAAAEEEEIIII====AAAAAAAAEEEE====AAAAAAAAEEEE9999IIIIIIIIQQQQQQQQAAAAEEEEAAAA=A)QHNK 4+1.=4:7{~|YOePEd[a^0*.,"! $!#"zqwt}  qtlo(*y|01ACBDgdfehkil!9;z}-/13  QNPOsmqotqsr2/10I@FCh_ebtkqnh_ebtkqnkULROwtzoimklfjh"  5/31 /)-+ZQWT]TZW4lGcGcG9G9G9G?G?G?GKGK5555555555ZQWT    =4:7F=C@!bX$" nYNmdjg!9375  $" +(*)-*,+z} z}ux139:JLKMpmon #qtru'*BD68:<  ZWYX|vzx}z|{;8:9RIOLqhnk}tzwqhnk}tzw t^U[X}xrvtuosq  ! +%)'>8<: 8264cZ`]f]c`?]GlGlGBGBGBGHGHGHGTGTEAAAAAA===AEEE,)))%%%!!#)'''+ !-)!-IHIBIzAaUiqI HIKI"$&E55ee51Y111155515Y=9555ee51Y111155515Y=95Ovx  m!tv  m p}m^{~uWo " "|m^{~tWnm^{~sq~m^{~vHv%Sov5aaII1Y99999999515Y5===5aaM5II1Y99999999515Y5===5mmM5IIY5Y5===5mm5aaII1Y99999999515Y5===5aa==;uG=11I951-91MQQQQ]]QQQQQQQQUUUUUUUUUUUUQQYYYYmuqqeuyuqmeiyemye}}qiimmeYUUUemii]mqaam}Yimme=Uauyieeeeeii]ia]e-EM9==9==9==5=1EI5=91eQIAA5599==55AA599=5)51-91=115599111555555=9551155991QQMQQQMEEUQUQQQYEEQQQ]QMYYMMYQQ]]]]imme}em]]iiQ]iiQ]i]]iIIEEYYYUYYYUeeeYYaaaeeeaaaYMMYMMQaQ]]EEAaa]eeqqMMMMYYMMYYQQQQUUIIYUUIIYii]]ii]]]]YaammYIIUY]]MMYeeUa}}qq}}qqeeYYii]]QQMQQMEEQQMQQMEEUYYaYY]QQEEYY]YYAAMYY]]iiuuqeUU}qaaEMMMMUUYQIIQQUMMQQEEUUYQQUUIIUUaa]UUiiUUQQQQUUUUUUIIQQUUUQQQUUUUUUMMY]aaQQ]QQ]QQQMEEUQUQMMYUUaMMY]]ieeeaYYeeeaYYEEQIQiiiQeeeiUUaEEAAA=EEEA9AA=99A9IEIEEAEAEEQaQaQuMI99EEEQEAA=MMAAMEEQ]aaYYaMMEQEQQQ=====a9999MMMIAAAAAAAAAAAAAAAMMMIAIIEAAAAAAAAAAAAAAMMIAAAAEEEEEEEEEEEEEEEEEEEEEEEEMMMMEEEEEEEEEEIIEEAEEEEYYYMMUUUYYYUUUMIAAIIIQEMAAIIEIEEIAUIUQIQEAIIIQMQMMM9999555UUQQIQAAAAAAAAMMAAAAMMEEEEEEEE9II=EE=MIII=EE=MI]]QQ]]QQQQMMEMM9AA=A=A=I=IAAMAAAAAAMYYIUQqqeeqqeeYYMMU]]]QQEEAEEA9A9=999EEAEEA9A9=99QI==IMEMEUMQMUUQEE9999AMMIQMMMI55AMMIIQQ5IIUUA99AAAAAAA=IIIME=EEA=EEEIA9=AA=9=999IIIE=EEA=IIUQ9YY]]aaeUQIQMI]]IIEEEAEEEIIIIII====EEIIIEEEIIIIIIEEAEAEAMAEEQEEEEEEQEEEEQMEEEEA9AA=99A9IEIEEAEAUYmAAMIIUAAMAIIIIIIIIIIMMQQ]YYYUMUUQMYYYUMUUQM99E5555IIII)I==999-A-%--1)-5--)-)/+?;=940:61-7395IE@<FB=9&":640x~~~x]Mfz\ZHZTTTlxrrxx~f|xZ^t\_qe_>>~$ *11#&--,L\#YL~qbd q7fg}gfEmmmgxo|to."\VFNN[]U@349 19  ,)[d^^.8{+8lEB<4pjWONByWKy_SfZ:==@ff]$HYneSXWHwnwnTQ//0w7}[B9IPMGRlG+\mm2ctt|x M<<<%--(((&*'z _$ MVP M$D.$i).}4322;<3XZZPix jrj{sAgg_B 199F@+  ICBE ]NOyy{qf o?(Iv;Hs6M}}uj *;\_o3Gzzrg'5n@~R_uFJ{OYrCDjCE~OQ<wtXEE<dUo'  $~:j:%hM[::-r [0 kx29/q'}lw! RLLN9-pdB6pdJ>QE41D2KCp]l5cdPMGtwwbYwwbY[%?<tt] 5@C op :<9w:;(! /xrkkJrb}]|}Zv/7|kp oR >>6  q;W1S38^i5zyyqnpzcA;e7qkCJz"OOWW5'x&3$ilX5Vc'|R(QSdRR\SeK K K{S1! !"! &""'## $%%# #$%%#!"%%,,$%%(EI5=99#mYQ5=515959 !  !!!!$%%#)#%!!$$!$$!$!!$  ### """###"""  "!!""a!##&&    $$!!$$!!!!] ""%%  !! ##"))&&))&&## $$!! " ! !  !!$$''&#)&""  ""!$$ !""!! " !!$###" ###" $$$###$"""'!"" ""E  IMUYIUIMYIMQMU!!!!Q &&##&&## !!! !!""#!!M %A!  5555III95915=5995;7KGIE@<FB=9C?EAUQLHRNIE2.FB@<iYrhfTf```x~~rfjhk}qkJJ 0(6==/299+8Xh/2ehXZ&5}n}p}Crss#rQyyys{ {:.hbRZZgiaL?@E= E85gp+#jj:D7DxQN'H@|vc[ ZNcWk_rfFIILrrpi0'Te*'zq _dcTzz%%`];;<CgNEU\YS^xS7hyy>o Y)) HHH199444263k%0Yb\Y$P.$u5.)@?>>**GH?dff\uv~vMsskN$=EERL7,!,!UONQiZ[}r{K(U(GTBYv6G\'k{?S~s3AzL^kRV[e~OPvOQ[]H  dQQRHpa{3"((((   '0FvF"1tYgFFi9~,/6g<(w>E;}q3>x- ^XXZE9|pNB|pVJ]Q@=%P>WXO%|i$xAop \YSneneg1KHi*  ALO {|FHEFG4-!;~wwV~nif/Cw| +$({^JJB "" ,"#,}Gc=_?DjutA}z|oMGqCE }wOV$'.1[[^ccfAE372C?P0?uxdEy|R4QSpSRhSqKKKS=U3Ue(6dEOa6$I-)5AA1 #{T#CMY1-=9Igo1AAOfzB})aMa"$$5Y}MMYW}91YA$P<9M!#eWCY_ UGy1fl%)9AE='<$9 0)9)9a.,zR65Q5Q11E-A-99 1#y(G6L-~ 4`2&%&&('('((**+*,,(((((())))((()))((()))((()))((()))()()(((&%''))))))%&&&))))()))()))(&&&%&&%''''&''&&&&%&&%''''&''&&&''''&''&''''&''&%%%&%""""""#"#$e)((((('(((')))()))(((('((')))())(((('((')))())(((('((')))())(((('((')))())(((('((')))())(((('(((')))()))())())(**)**)))())(**)**)((('((')))())(((('(((')))()))())())(**)**)))())(**)**)**)**)++*++*(((('((('))))()))(&&&&&&&%''''''&((('''''''&(((%%%$%%$&&%&&%&&&&%&&&%''%%*)+++%%&&%&&%&&&&&&'$%%$%%$%&&%&&%&&&%&&%&&&%&&%'101110(''%%''''((((((((((((&&&&''''%&((((((((''''''''((((((((&&&&''''''''((((''''((((&'%&&&&&''''%%%%%&'&&&&''''$$$$$%%%%&&&&&''''''''((((((((''''''''((((((((((((((((&''''''''(((((())))))))))))&&&&&&((&&&&&&&&''''''&&''&&'''(())))&&&&&&&&''''((&&((&&''&&&&''((&&&&&&&&&&&&''&&''''''&&''))))%%****((((((((((((''''&&&&''''&&&&((((''''$$$$%%%%(())''''''''''''''''((((((((''''''''''''((((((((''''''''&(())''''''((&&&&&&&&&&&&%&$%''''''''&&&&''''''''%%%%%%%&&&&%%%%&&&&''''((((%%%%&&&&&&&&''''%%%%&&&&&&&&''''$$$$((((((((********&&&&''''&&&&%&%$$$$$$###$%%%)-*/1)++''%%11%$.$$$$%%%$%.'&%%%11%$.$$$$%%%$%.'&%%00**$.&&&&&&&&%$%.%'''%00%**$.&&&&&&&&%$%.%'''%33%**.%.%'''%33%00**$.&&&&&&&&%$%.%'''%00 $*&%$#&$$#"&'')-)-)2####&&########$$$$$$$$$$$$##%%%%&&))&&))(()),,,,//),//),/,,/''&&+++(+(),,&&%..1(('''',,+--0+''*+,,((+++,,&&&&*++++&&%%//2**--&(((**+)''))*(())&&**+))**''**-**''((+,--)),)),&&((+**-((+,,/++++&&')///)####(())''**%%''%%))()))(*)*)+),)(+++/00.4.0,,+++*+++*...---...---)---,1**+**+//,,//,,0*-44114411..//))())())())(-,))++,++(++,,21.41(-,//**))))******))***)))******)))(*)*)...-...-)(,--++-,,)),,))11..11..++,,''''')./**-....++"$#"$"%#""""!.)'$ &("((%%((++((++))))%%%%((%%%%((&&&&&&&&y! !!!""##!!!""##!%%$&%&%''&))"''&&%%%$&&%)%%$&%&%**)**)-''''!))&)'&( % ++,,--.*,++(,-,+*/00.%$$$(*))&*+''*.%/00.$*$!!""""""$#""###&%$%%%%%%%%%%&&&&&&&&&&&&((&&&&&'&&&&'')&''&'&'&'''((##)#(%$%$%%%%*%#$#%#$#$&&)(##''"%##%%$$#$##$'#)'$$&%&%&&&&&&##'''''()((#&&&%##%'&'&#&&)&%((&)&)))$(('%%%%(('%%%%(('%%&&&&&&&&&&&&((&&&&&'((('%'(%&'%*'*%)()(##*)#%$%$'%(%%%(',&%###&%##'$*(**&##%((("%(()"%'''(&$&&&'%#$#'''&$'**',,&&&''''$$&&''&&&''''&%&%(&)&&&)&)(&&&%##%'&'&'''''(),+++*(+++*(#&&&$$$$(''(((1)-(*-(2..+)(%%(&&$$$$(+++***+++***""*)'%%%%)(&&%&&&%&&))&()%%%%*+0(*(',-0)077/00(((((%%%%%%%(%%%%%%%&&%  )(&&&&%%%$('''&&('''&&('*))()(''&&&%%%""##$$""%%##$$##3 ! " &%)**/0%'&%'%(&%%%%$&3.,&&%****+*+-.*-+.+,+-,)%&$%'%MYY9:^L )AEIeQE5QEY5Y= ' o c { e E -M]MaMMMMM=9EEEA1A5 b"? 1 o l } n E !%!&!!!!! b!"?9I1?TV-  "! #""%$?#eRl+mv`f|3T1|.z3T4|xGuIU5 \8]EIi-5E6{bkk*V<5KUnn5e     x z9QIk%UA)9IUIYAQ]aqQaQamqaqAQ]Q=M]e9IUIY9IUIY=MYM]5EQEUqAQai=MYM]=MYM]=MYM]=MYM]9IUIY=MYM]99%M--!]==))!A%!AY5--))--5511))5Cu5+D\3KWWX9RR$,EbbBDCHq_&&.TVV|'  ^**''W!!!!bA L*Z0~==s  Ii(.+)dNTS&$)55?;!)11--))55AQ55QEUAA9U)a))--EYu]yM--=A119IIF))-=--U511-mqEEEEEEE)1!aE]IAAA= 5995i5Ea59E==9M1Q=M=-A1AA99I-11E-9I)1EE-  }yy}}}% ""l'-!5y)=^qymu}9nU?}1h#^" \0:K:ZҜ-Фx} -E     ""  i% 5   @r;   x+A `9IE1A- AS-M)*Q'$I#1.W9'Z-MU-1Mi-15Vyc.jk%'QQI1AA!<"/&**SDV(I%!%-, Ud!!IET)AIMIIIEQMIIIEQ]U]Aba@bY|>*V<\qc!d)A5M1I5M-Q1=Y)A-%15AQ1=)A)).IEEY=a)A)A)A)A)     qqqqqq  }y}qqqyu~ my}p8y1u}BosV>՛d?F@9'+7*V15JU7EHyxc¡MieeeameeeamIEEEAMEEEEAMIo%&n%\-NBI F;;;;?e;;;;?e 6=)AY5x8u8BM^T.A     x w9I%M5e5=  ;118?> i K 9 c 3 c o])}!!y  ;<DD<EF&%&'%)^cwj' "!ZZ \^dfba`as`]`cb^ ]_`p_hH`dd](_f]ic^e'^zb_l]qgt^\ccH\W\^a@g f]CedfdCl]b]a`|d0b2_L]`?~@niaCbau]iIdx]``I Z Zx';<DD<EF2t!zߏ()  7 +*~;<DD<EFZCq&DakFOP%RELGt&'%)E[CSwt'dFd "!KMlNOu PF_FMJVK/>R>FJ\g 00S'JJJeDNfkGNHNUUsPJUOKSQ[FVV =I55-AI=A5I51M=qcY_`r(81%i}9ywp?eHoaq39$%a;<DD<EFl\Hehp$u&re%n:6ong&'%)lcS'qaknpQg^ifvc{}`rydQlma~j "!ct`]bu jm|u:t[}"llBld{qY\X(k4 _]]Xg] Ajn   zj_Atp>'y|\c`GqchjdaZafa_kc[dKaIqcaYa]_~d`;<DD<EF'*&YAh%zDn&'%),{1h'lykH -5sAHJ|%:&xbqg+^G"!h [sno8[r|}-vX{<L  =2iW@+Z*, id| H' 7Qu,~';<DD<EF&%z0(&'%)' "!7\SC:\4RgM51 ?VL ttn2358b'7 ;<DD<EF2&%m&'%)m.' "!7=?:g 7x @!M'7=NNw8lMg I i>E@5!]_[<GWQApI?N@ 8^xpC2R;&q0^YM{{?zLC|?uj&uY7]FDI]"b*xW jk_~8UUv@-b#l;RN{ z}>Hb3dReB*b*7 poj[qtvEr,9(Oouc cn nJUJc35 Z+G EXa _;Q7A0!^ U% 3AcJ`(j#9#UtAXJ4E~#Y{g/xpj6##90߰A}jzi* MDVq_9[$Y1N(G0\*C1s}Ir  Fg (`3v(P @~&-'%@ Ax bEC[!$4)gVN#D f9s+ALH|tU@5B!!-$"9% nU+4 av~ze8P+W&A&3&)!p| ED-=$&.@ rU99EUY=[;= #!#x1!M6"/9"%!gC YNYOw='"'"$$%,"")%*%')'1#9y{,Ov3 \[$ GN  F=Y115==5.18396<25l7|L^4`]E416230914725j59#sh468621?157CnU649563<M]iEme:5896;95B4 3162309"%&$725s#Q{B<-f]jb^sXXdfj63862?1KCq47962387b'=)g32x7 }[Ԥ362345OO9E$$!! "##97;3 9)!I15519YI919!-9]QQ]QA1n%==w%Z=,^7+61(99M- /=qXjij:1)!-5=1^/=9%  "" W u !)-).)))))%$'''&"&#   I)"&9%  "" a u !)-).)))))%$'''&"&#   I)"&91=u]A5A uC;:yH"$|}MAZ\c  "! D(b/ ess}fzq# ZJcUcW-51IA1AAMM=A!9IFj+ 3/-J*5&115I9I=)Ml5ZykQ "Li") 6h, {|8. B{ EOb ,=  9 9 9 5 -5-L".)#'+.+/)-90<15-1-1=4@5915)-0-(,02'+.+/'+.+/(,/,0&*-*.59<9)-13(,/,0(,/,0(,/,0(,/,0'+.+/(,/,0''",$$!0((##!)"!)/#&$$##$$&&:%%##&XAwagPw7Ngm`yvxw|jLl.ddu%kwwiirrX1QovvmmJ$  q@$#)@@wbbHppzz_x }"(%|[ c&#&&7!#%%$$##&&)-&&-*.))'.#1##$$*/607,$$()%%'++G##$($$.&%% $45*******#%)1@*0+)))(9EE1=MY=II--919I5E9I!4yc[ }uq:or|EL* !)%iei)yuy?DmH@vEݟOCb"gn_b0Snj`,jaTd<] $aeia uyqy}yA !* ( #$#! ! ! # "(4 " (K0PF8ʱUd )&pe%vzi  12B7 {%0 %  ( 4# %, F#= Z &    E @15S} 4t  |i"r!|$",h 19XLMZ *3!&"-&$&%,]0Cg6(:uj9""!""2")&$*D)#$%)-'$(d &$#&151YA1AAa9AQQMEQEy?c"9uNjhK7ߚ2ȎA "! "! "%#%on[ہOԚ̕ы@wU}tL#M"!"#%$.!$&<p"qdpOA)E@)H܇c#,W`=/09qCpWb+ y:.4"!#:Z_ j3/0"8P"njI\֔9=-5-1!1-1=Uey}}T195-1A55515E94uv&d=I QI9I!UU+-aoCY /N9'Y9AA-zOH79IQQI-A@q--EQ}5R8F$%-!#!- "uyy|yyy-OQAxI! # !; !#o!=A:< ;p^`{IIQQQQ== B 4n#-!++-$'11i9@-a !QEAhBE1p Vm5nRquE=I=/a1=1]a QL5AeO!Rv|]FI'd- *ieeaa]eaaa]iiqyiaieaaa]eiU01O-rwk !Tz^AK'5MIM=AI95I"!zDv`=ybd)d!0#W.%V7~9(E"E(?I,"&(x3$#*.9)(%$1!mr8d1Q3/0@"P=5+VA$'"/0 %(#" ##!" ^ !'+!E"^S8^xwxPwaf4~1;r=9"""$$#%$ '+&& W&]0 $*.67.35)1,*-m+wy)z7v:UMbl  <UKxv e8Kz0('$ "$#^6Y%=9=e=A5IMEM9]aIMe1000/2000/2+***),****),!/}&&f%T'N*/ K K K J0OK K K J0OgI62AEYE9I=II-% L`WPxlog1A}yqDdN8`?+Tq;[_zQ+)%)*,,%y%''#)++)-0,-.$*,*$+01-/-.$/,$'"&'))*y))++++''*-%%!$&%* GRobM=IA9A-.efw/E 5!AM%1%wH|cvs"5=I]Q5Fq>~; 95A5=  9 9 9 5 !9==1A !063% UG399EE=IAEIAU19A9YQ=5 U<Wt!1-^Vy9mU}TYgvb+aBi\OB{lA1u G9E/Equmqi15 #1=Q&\z^Y5]$qD'kK #QA]c+Qku~]en#()^`^t-Ecpm1z(5Qiq]eemu;<DD<EF&%~\!O&'%)' "!&!-}-#--9?p!MsSEUO79/tCa]:S e/ AmcMc;K'I;/) Me]-]z) 6=?=/+'gW&[eM-  n!)7537.q//,313%jA Oa- ;KME Eoi[;+==WA)WuqU77ac//='A=(%! %7 i )1/E#EKK$06C9G'#)-Ig /E/!+9GIA73AUQ3-+?%7)-!%3ACO]G'%_.mdI5)5! 55  g'FAA큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤AAAAA큤A큤A큤AA큤AA큤AAAAAAAAAAAA큤AAAAAAAAAAAAAAAA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤AA큤AA큤A큤A큤A큤A큤AA큤AAAA큤A큤AAA큤A큤A큤AAAAA큤AA큤AAAAAAAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤AAAAA큤A큤AAA큤AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA큤A큤A큤AAA큤AAA큤AA큤AA큤AAAAAA큤AA큤AAAAAAAAAAAAAA큤A큤AAA큤AA큤AAAAAAA큤AAAAAA큤A큤A큤A큤A큤A큤AA큤AAA큤AA큤AAA큤A큤AAA큤AAAAAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAAAAAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AAAAA큤AA큤AAA큤A큤A큤A큤AAA큤AAAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AAAA큤AA큤A큤AAA큤A큤A큤AA큤AAA큤A큤AA큤A큤AA큤AAAAAAAAAAAAAAA큤AAAAAAA큤AAAAAA큤A큤AAAA큤AAAA큤AA큤A큤A큤A큤AAAAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤AA큤A큤A큤A큤AAAAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAAAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAAAA큤A큤A큤A큤A큤A큤AAA큤A큤A큤AAAA큤AAAAAAAA큤AAAAAAAAA큤AA큤AA큤AA큤AAAA큤AAAA큤A큤A큤A큤A큤AA큤AAAA큤AAA큤AAAA큤AAAAAAAAA큤AA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAAA큤A큤AAAAAAAAAAAAAA큤AAAA큤AAAAAAAA큤AAA큤AAAAAA큤AAA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤AA큤AAAAAAAAA큤AA큤A큤`̡2`̡ `̠{`̠{`̠{`̠z`̠`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̠|`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̡*`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̡*`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̠|`̠|`̠|`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡)`̡*`̡)`̡)`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̡)`̡)`̡)`̠|`̡)`̠|`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠|`̠|`̡)`̠|`̡)`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̡)`̡)`̡)`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̠|`̡)`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̠|`̠|`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠|`̠|`̠|`̠|`̡)`̡)`̡)`̡)`̡)`̠|`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̠|`̠|`̡)`̠|`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠|`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠|`̡)`̠|`̡)`̠|`̠|`̡)`̡)`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̡)`̡)`̠|`̡)`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̡+`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̡+`̠{`̠{`̠{`̡)`̠z`̠z`̡)`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̡`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̡`̡`̠{`̠{`̡`̡`̡`̡`̠{`̠{`̡`̠{`̠{`̠{`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̡`̠{`̡`̡`̠{`̡`̡`̠{`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̠z`̡`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̡)`̠{`̠{`̠{`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̡)`̠{`̠{`̠{`̠{`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠z`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̡(`̡)`̡(`̡)`̠z`̠z`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̠z`̡(`̡(`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̡"`̡"`̡"`̡"`̡"`̡"`̠z`̠z`̠z`̠z`̡"`̡"`̠z`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̡(`̠z`̡(`̡(`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡(`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡(`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡(`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡(`̡(`̡(`̡'`̡(`̡'`̡(`̡(`̡(`̡'`̡(`̡(`̡'`̡(`̡'`̡(`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡(`̡'`̡(`̡(`̡'`̡(`̡(`̡(`̡(`̡'`̡(`̡(`̡(`̡'`̡(`̡(`̡'`̡(`̡'`̡(`̡(`̡(`̡(`̡'`̡'`̡(`̡'`̡(`̡(`̡'`̡'`̡(`̡(`̡(`̡'`̡(`̡(`̡(`̡(`̡'`̡(`̡(`̡(`̡(`̡'`̡(`̡(`̡(`̡'`̡(`̡(`̡'`̡(`̡'`̡'`̡(`̡(`̡(`̡(`̡(`̡'`̡(`̡(`̡'`̡(`̡'`̡(`̡'`̡(`̡(`̡(`̡'`̡(`̡(`̡(`̡(`̡(`̡'`̡(`̡'`̡(`̡'`̡(`̡(`̡'`̡'`̡'`̡'`̡'`̡(`̡'`̡(`̡(`̡'`̡(`̡(`̡(`̡(`̠z`̠z`̡!`̡!`̠z`̡!`̡ `̡ `̡ `̡!`̡`̡!`̡ `̡`̡ `̡ `̡!`̡ `̡`̡!`̡ `̡ `̡ `̡ `̡`̡ `̡ `̡ `̡!`̡`̡`̡ `̡`̡!`̡`̡!`̡!`̡ `̡!`̡ `̡`̡ `̡ `̡ `̡`̡ `̡ `̡`̡`̡ `̡!`̡`̡ `̡ `̡ `̡!`̡!`̡!`̡ `̡ `̡!`̡ `̡!`̡ `̡ `̡ `̡`̡!`̡`̡`̡`̡ `̡ `̡ `̡!`̡!`̡!`̡!`̡!`̡ `̡!`̡`̡ `̡`̡ `̡!`̡`̡ `̡`̡!`̡!`̡`̡!`̡!`̡`̡!`̡!`̡ `̡ `̡`̡!`̡!`̡!`̡ `̡ `̡!`̡!`̡ `̡ `̡`̡!`̡ `̡`̡`̡!`̡`̡ `̡`̡ `̡ `̡!`̡ `̡ `̡!`̡!`̡`̡`̡ `̡ `̡`̡ `̡`̡!`̡!`̡`̡`̡ `̡`̡!`̡!`̡ `̡`̡`̡`̡ `̡`̡`̡ `̡ `̡ `̡`̡ `̡`̡ `̡ `̡!`̡ `̡`̡!`̡`̡ `̡ `̡!`̡`̡ `̡ `̡!`̡`̡`̡!`̡`̡`̡ `̡ `̡ `̡`̡`̡ `̡!`̡!`̡!`̡`̡`̡ `̡!`̡ `̡!`̡ `̡!`̡!`̡ `̡`̡ `̡!`̡!`̡ `̡ `̡!`̡`̡ `̡ `̡ `̡ `̡ `̡!`̡`̡ `̡`̡`̡`̡`̡ `̡ `̡!`̡ `̡`̡ `̡!`̡ `̡ `̡!`̡`̡ `̡ `̡ `̡!`̡ `̡`̡`̡`̡`̡ `̡`̡!`̡!`̡`̡ `̡ `̡ `̡ `̡!`̡!`̡`̡ `̡`̡ `̡ `̡`̡!`̡!`̡`̡`̡`̡`̡`̡`̡`̡!`̡ `̡ `̡!`̡`̡`̡ `̡`̡!`̡!`̡ `̡!`̡`̡`̡!`̡`̡ `̡!`̡ `̡ `̡ `̡`̡`̡ `̡ `̡`̡`̡!`̡!`̡ `̡`̡ `̡!`̡ `̡ `̡ `̡ `̡ `̡ `̡`̡`̡ `̡`̡ `̡ `̡`̡!`̡ `̡`̡ `̡!`̡ `̡!`̡ `̡`̡ `̡`̡ `̡`̡ `̡ `̡ `̡!`̡`̡`̡ `̡!`̡`̡ `̡`̡ `̡`̡`̡ `̡`̡ `̡`̡`̡`̡`̡`̡ `̡ `̡!`̡ `̡`̡ `̡`̡`̡`̡`̡ `̡ `̡ `̡!`̡!`̡`̡`̡ `̡`̡ `̡!`̡!`̡ `̡ `̡ `̡ `̡!`̡`̡`̡`̡`̡ `̡ `̡!`̡ `̡`̡!`̡!`̡!`̡!`̡`̡!`̡ `̡`̡`̡ `̡`̡ `̡`̡!`̡!`̡!`̡!`̡`̡ `̡`̡ `̡ `̡ `̡ `̡!`̡ `̡ `̡ `̡!`̡ `̡`̡`̡!`̡!`̡ `̡!`̡`̡`̡!`̡ `̡`̡!`̡`̡ `̡`̡ `̡`̡ `̡ `̡!`̡ `̡ `̡`̡`̡`̡ `̡ `̡ `̡`̡!`̡!`̡ `̡!`̡!`̡ `̡ `̡ `̡`̡!`̡ `̡ `̡`̡`̡ `̡ `̡ `̡ `̡!`̡ `̡ `̡`̡!`̡`̡ `̡`̡ `̡ `̡ `̡`̡!`̡ `̡`̡ `̡ `̡`̡`̡ `̡ `̡!`̡!`̡ `̡ `̡!`̡ `̡ `̡!`̡!`̡ `̡ `̡!`̡`̡ `̡`̡ `̡!`̡ `̡ `̡!`̡`̡!`̡!`̡ `̡ `̡!`̡ `̡ `̡`̡ `̡!`̡ `̡ `̡ `̡ `̡!`̡`̡ `̡ `̡ `̡ `̡ `̡ `̡ `̡`̡ `̡`̡`̡`̡!`̡ `̡ `̡ `̡`̡`̡`̡`̡!`̡ `̡!`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡ `̡!`̡`̡ `̡ `̡ `̡ `̡`̡!`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̡)`̡`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡"`̡"`̡"`̠z`̠z`̠z`̡"`̡"`̠z`̡"`̠z`̠z`̡"`̡"`̡"`̡"`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡"`̡!`̡"`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡"`̡!`̡"`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡!`̡"`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡"`̡"`̡!`̡!`̡"`̡"`̡"`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡"`̡!`̡"`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡"`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̡!`̠z`̡!`̡!`̡!`̡!`̡!`̡!`̡"`̡!`̡!`̡"`̡'`̡%`̡$`̡%`̡&`̡"`̡&`̡'`̡"`̡&`̡$`̡&`̡&`̡&`̡&`̠z`̠z`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̠z`̠z`̠z`̠z`̠z`̠z`̡&`̡&`̡&`̡%`̡%`̡%`̡%`̡%`̡%`̡&`̡&`̡&`̡%`̡&`̡&`̡%`̡%`̡&`̡%`̡%`̡%`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡&`̡%`̡%`̡%`̡%`̡&`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡%`̡&`̡%`̡&`̡&`̡%`̡&`̡%`̡%`̡%`̡%`̡&`̡&`̡%`̡%`̡%`̡%`̡&`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡%`̡&`̡%`̡&`̡&`̡%`̡&`̡%`̡&`̡%`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡%`̡&`̡%`̡&`̡&`̡&`̡%`̡&`̡&`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡%`̡%`̡&`̡&`̡&`̡&`̡%`̡%`̡%`̡&`̡&`̡&`̡%`̡%`̡&`̡%`̡%`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡%`̡%`̡&`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡&`̡%`̡%`̡&`̡%`̡&`̡%`̡%`̡%`̡&`̡&`̡&`̡%`̡%`̡%`̡%`̡%`̡%`̡%`̡&`̡&`̡&`̡%`̡%`̡%`̡&`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡&`̡%`̡&`̡&`̡%`̡%`̡%`̡&`̡%`̡%`̡%`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡%`̡%`̡%`̡&`̡&`̡%`̡%`̡%`̡%`̡%`̡&`̡%`̡&`̡%`̡&`̡&`̡%`̡%`̡&`̡%`̡&`̡&`̡%`̡&`̡%`̡&`̡&`̡%`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡%`̡$`̡%`̡%`̡%`̡%`̡%`̡%`̡$`̡%`̡$`̡$`̡%`̡$`̡%`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡%`̡%`̡%`̡%`̡%`̡%`̡$`̡%`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡%`̡%`̡%`̡%`̡%`̡$`̡$`̡%`̡$`̡$`̡%`̡%`̡$`̡%`̡$`̡%`̡%`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡%`̡$`̡%`̡$`̡$`̡$`̡%`̡%`̡%`̡%`̡%`̡$`̡$`̡$`̡$`̡$`̡%`̡%`̡$`̡%`̡%`̡$`̡%`̡%`̡$`̡%`̡$`̡$`̡%`̡%`̡$`̡%`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡%`̡$`̡%`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡%`̡$`̡%`̡$`̡$`̡%`̡%`̡%`̡$`̡$`̡%`̡%`̡%`̡$`̡%`̡%`̡$`̡%`̡$`̡$`̡$`̡%`̡%`̡$`̡$`̡$`̡$`̡%`̡%`̡%`̡$`̡$`̡%`̡$`̡$`̡$`̡%`̡$`̡$`̡$`̡$`̡%`̡$`̡$`̡$`̡$`̡%`̡$`̡$`̡%`̡%`̡%`̡%`̡%`̡%`̡%`̡$`̡$`̡%`̡$`̡%`̡$`̡$`̡$`̡%`̡$`̡$`̡%`̡$`̡%`̡%`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡%`̡%`̡%`̡%`̡%`̡%`̡%`̠z`̠z`̠z`̠z`̠z`̠z`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̠z`̠z`̠z`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡"`̡"`̡"`̡"`̡"`̠z`̠z`̠z`̠z`̡%`̡%`̠z`̡"`̡"`̡"`̡"`̡"`̠z`̠z`̠z`̠z`̡$`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̠z`̡$`̠z`̡$`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̠z`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡%`̡%`̡%`̠z`̠z`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡&`̡&`̠z`̡&`̡&`̡&`̡&`̡&`̠z`̠z`̠z`̠z`̡"`̡"`̡"`̠z`̠z`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡%`̡%`̡%`̡%`̡%`̡%`̡%`̡%`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̡"`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡$`̡#`̡$`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̡#`̡$`̡$`̡$`̡#`̡#`̡#`̡#`̡$`̡$`̡$`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̡$`̡$`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡$`̡#`̡$`̡$`̡#`̡#`̡$`̡#`̡#`̡$`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̡#`̡$`̡#`̡$`̡#`̡#`̡#`̡$`̡$`̡#`̡$`̡#`̡#`̡$`̡#`̡#`̡#`̡$`̡$`̡$`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡$`̡$`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡$`̡#`̡#`̡#`̡$`̡$`̡#`̡#`̡$`̡#`̡$`̡#`̡#`̡#`̡$`̡#`̡#`̡$`̡$`̡#`̡#`̡$`̡#`̡$`̡#`̡#`̡#`̡$`̡#`̡$`̡$`̡$`̡$`̡$`̡#`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡$`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡$`̡#`̡$`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡$`̡$`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡$`̡#`̡#`̡$`̡#`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡$`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̡#`̡#`̡$`̡#`̡#`̡#`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡'`̡&`̡&`̡'`̡&`̡'`̡&`̡&`̡&`̡&`̡&`̡'`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡#`̡#`̡#`̡#`̡"`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡"`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡"`̡"`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡"`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡"`̡"`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̡#`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡%`̡%`̡%`̡%`̡%`̠z`̠z`̠z`̠z`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̡&`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡"`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̡$`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̠z`̠z`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̡)`̡)`̠z`̡)`̡)`̠z`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̠z`̡)`̡)`̠z`̡)`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̠z`̡)`̡)`̠z`̡)`̡)`̡)`̠z`̠z`̡)`̡)`̡)`̠z`̠z`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̠z`̠z`̡)`̡)`̠z`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠{`̠{`̠{`̠{`̠{`̠z`̡)`̠{`̠{`̠{`̠{`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡)`̠{`̠{`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̠{`̠{`̡)`̠{`̠{`̠{`̠{`̡)`̠{`̠{`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̡`̡`̡`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̠{`̠{`̠{`̠{`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̡`̠z`̡`̠z`̡)`̠z`̡)`̠z`̡`̠z`̡`̠z`̡`̠z`̡)`̠z`̡`̠z`̡`̠z`̡`̠z`̡)`̠z`̡)`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̡)`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̡)`̠z`̡)`̠z`̡)`̠z`̡`̠z`̡)`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̡`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̡`̡`̠z`̠z`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̡`̠z`̡`̡`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̡`̡`̡`̠z`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̡)`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠{`̠{`̠{`̡)`̠{`̡)`̡`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̡`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡)`̠{`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡)`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̠z`̠z`̠z`̡`̡`̡`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̠z`̡`̡`̡`̠z`̡)`̡`̡)`̡)`̡)`̠{`̠{`̠{`̠{`̡)`̡`̠{`̠{`̡*`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̡*`̡`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̡`̠z`̠z`̡`̠z`̠z`̠z`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̠z`̡`̠z`̠z`̠z`̠z`̠{`̠{`̠{`̠{`̠z`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̠|`̠|`̡+`̡+`̡+`̠|`̡+`̡+`̠|`̡+`̡+`̡+`̡+`̠|`̡+`̡+`̠|`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̡+`̠|`̡+`̠|`̡+`̠|`̠|`̡+`̡+`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̡+`̡+`̡+`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̡+`̡+`̠|`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̡*`̠|`̡*`̡*`̡*`̠|`̠|`̡*`̡*`̡*`̡*`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̡*`̠|`̠|`̠|`̡*`̠|`̡*`̠|`̡*`̡*`̠|`̠|`̡*`̡*`̡*`̠|`̡*`̡*`̠|`̡*`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̡*`̠|`̠|`̡+`̡+`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡*`̡+`̡*`̡*`̡*`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̡*`̡*`̡*`̡*`̡*`̠|`̡*`̡*`̠|`̠|`̠|`̠{`̠{`̠{`̠{`̡+`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̡+`̠|`̡+`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̡+`̠|`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠z`̠{`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̠|`̠|`̠|`̡+`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̡+`̠|`̠|`̠|`̠|`̡+`̠{`̠|`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̡+`̡+`̠|`̠|`̠|`̠|`̡+`̡+`̡+`̡+`̡+`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̡+`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡+`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̡*`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠{`̠{`̡*`̠{`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̡`̠{`̠z`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠z`̡`̡`̡`̠z`̡`̡`̡`̡`̡`̠z`̡`̡`̡`̡`̠z`̠z`̠z`̡`̠z`̠z`̡`̠z`̠z`̠z`̡`̠z`̠z`̠{`̠{`̠{`̠{`̠z`̠{`̠z`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̠|`̠|`̠|`̡`̠|`̠|`̡`̡`̡`̠{`̡`̡`̡`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̠{`̠{`̡`̠{`̠{`̠{`̡`̡`̠|`̡`̠|`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠{`̡`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̠|`̡`̠|`̡`̠|`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠{`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠{`̠{`̠{`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̡`̠{`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠{`̠|`̠|`̠|`̠{`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠|`̠|`̠{`̠|`̠{`̠|`̠|`̠|`̡`̡`̡`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̡`̡`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̡`̠{`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̠{`̠{`̠{`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̡`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̡`̡`̡`̠{`̡`̠{`̠{`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̡`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̠|`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̡`̡`̡`̡`̡`̠|`̡`̠{`̡`̠{`̠{`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̡`̡`̠|`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̠{`̠{`̡`̠{`̠{`̠{`̠{`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̠|`̠|`̠|`̡`̠|`̡`̡`̠|`̠|`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̠|`̠|`̡`̡`̡`̡`̠|`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̡`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̡`̡`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̡`̡`̡`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̠{`̡`̠{`̠{`̠|`̠|`̠|`̡`̠|`̡`̠|`̠|`̠{`̠{`̠|`̠|`̠{`̠{`̠|`̠|`̠{`̠{`̠{`̠{`̠{`̠{`̠|`̠|`̠{`̠{`̠|`̠|`̠{`̠{`̠|`̠|`̠{`̠{`̠{`̠{`̠|`̠|`̠{`̠{`̠{`̠{`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠{`̠|`̠|`̠|`̠|`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̡`̡`̡`̡`̡`̡`̠|`̡`̡`̠|`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̠{`̡`̠{`̡`̡`̡`̠|`̡`̠|`̠|`̠{`̠{`̡`̡`̡`̡`̡`̠|`̠|`̡`̠|`̠|`̠|`̠{`̠{`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠{`̠{`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠|`̠|`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠|`̠|`̡`̡`̡`̡`̠|`̠|`̠|`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̠{`̠{`̡`̠{`̠{`̡`̡`̡`̡`̠{`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̡`̡`̠{`̡`̠{`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̡`̡`̡`̠{`̠{`̠{`̡`̡`̡`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̡`̠{`̠{`̠{`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠|`̡`̡`̡`̠|`̠|`̡`̡`̡`̡`̡`̠|`̠|`̠|`̠|`̡`̡`̠|`̡`̡`̡`̡`̡`̡`̠|`̠|`̡`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡`̡`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̠{`̠{`̡`̠{`̠{`̡`̠{`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̡`̠{`̡`̡`̠{`̠{`̠{`̡`̡`̠{`̠{`̡`̠{`̠{`̡`̠{`̡`̡`̠|`̠|`̠|`̡`̡`̡`̡`̡`̡`̡`̡`̠{`̡`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡`̡`̠{`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̡*`̡*`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̡*`̡*`̠|`̡*`̡*`̡*`̠|`̠|`̠|`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠|`̠|`̠|`̠|`̠|`̠|`̠|`̠{`̠{`̡*`̠{`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̡*`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̠{`̡*`̠{`̡*`̠{`̠{`̠{`̡*`̠{`̠{8afa679df407cd8f8601d0bc249fc2ef258113544b3a31781fb52459ef9b24cc6d5ef17c4881e7d3ae15ce980afb5e2882e22678561cef2306db9debb5ca152e5ee4973232b036b54b12153243e7eb6a263fb7bc43d585149002327ad7e7483bf424919647a665eebd5f5f6fb13f022b46f8542365f2892d6e5cf9318574379ba60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f223f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca31092f40afcc93c66c3abca1bae7bd89caef18fd70f8fea25ac3c5e5258ee5e5b388f15097805fe7f375c62439e356cb018e000be399006fb6695839d73dd595a0c5004c291a794d0ab9926b6568f8e98c32e9fce991460715fc4a1fea8fb36d1a4339e99c84cc8ddf03abf2d19d92d7a9fb5893c8b8ce693bfd34765e10c693b99e772d22612bf9be83fe699d88c118d84a95aeaa3c0d11a782a3b932bb255503c5d7588508b9be768142136906bcc11cad7c70145b3881d7300701ea62272ac14b87dcc4c283f26322eedc9cc638f5839c1f7e3bf6d2085d2aa7459d175ee6aa0c1d9d626aa9860387d1c130e5a0979da7e1897eb1edb7893f50cdf4eab6f1eedee5c43a09f7ca5b97c3f9ae525166564e92456553dfae017ccfd71efc9e2c9dcda768d68ca234d07bdeb07f1bcfb44f8b05bb346324e07b4801bcb20017cf216be69f08f53d0162a487e3a2311aae1cb78cd083bc998320da84937adb50fce3801a63f9454fce1d55ccc4d61a57d76019a21df78007b9f7ba46fed604c00088654a056e7d86f9c320caa8c2024230b87bca62d2f7f5df00f7d70998c6699558f1d1f35b948f72889f6fe9dda7afaa9c4f5cd659c8b001a35f5e581f4b7f5af221e8342dc7ee8f7103770c0c1640052a6d06014130119754ac6872ad4f324d69f3c1d20cc0dcc27c757beba3c632d694d3075eebe462eb532cf91220e5d9a973567dfb807691ad6503e275bc78ad87909566a5c7d1724aa3ec055115a17d258fe4c2a6285e444c6fe11b6527a89f39d92c01ea38046fbdf3164b31d423996c7f9971e22575bd3c73001e6637492a38eb117defce78dee3cc49ac33045275adb2c55eedd23f80383e4ee6838af25ef1fac4d054fd29a287fb67b5578d1b426812c8361e386a2da75add61bc0b8046221e6b7e48b5b734d7b9b6b9314a1a4a607156cf9b23e10a64fca261b0347ded7e727c10def43d85e0d6d7b9b024af3a831a8f37e5be96c8a854692395bb12c3b9384956068ffd6f13074f7fef798b3af70ff577b49b9ca4680ecc8dcece7547d156c3a0411d3acba11e416838b317c6a8c7fa05d0c5843dc08150818639fde8b990efb0e4faa118ce4a81189cc77d0659c657dd170827874f20f546cd8a3ba0a8a5a2bca5ead52215b1d4c01533a2f0a15d3da27f96da57ffb463a1cd0dd3634c78435886deba2983e25f30a2145951d248272148e10a1a9f2ab10d68286343ad4018382c3adc9dc5b8350cb0e747e0ab509e485a2658f002102933d990b3f17725ede837e044dbfb5556e9673052bbe9e25a7459b6d19142cb5cffb20438b4043b4a836ea3e5fda219bdacbeffae7db880f87838e87d01134b3ddcaf5a4419aeb0861895a5f3d68af26ec19b9c7ebb531d628090c757b28b753533ce81073a56f7fabfe5d0fbacbde6867ccf73df93d5554d4c6e44bba998a8f818ce8ac3781c981ccb97a63237133e4dbddea734d4e5a2b84eb871cf4336ceb12b427f92cac3631f7bca6ccacf3cf930ad0a63bafbcda7c3550433c0b6903a3006d624e1aee92426ae0ac6707fd9cdce342bcc60ae98b5ff8ecf3cbb7a75efb168fa62ad8c5a08b38b2bd6aba172f582b0937d43925e9d181fbd3ec7351066b4ada3c1b27eaf4bd97d37ee61c1ae33bb1888f7eedd3a3d17f6a189f5b2bf08841e38c71b6fa532af9c76a4c79d9077902615c2a39e8b2b2e77d3ef4580a03c562798ea89ebeae8bcf6a7cab37f99dcc10388b227d6b8b4415f76afc93102dbcdfb898c76df5aa142d29f80088b085d91ffee475a1e2d2596d2de32df100084435e5001b9a75cd862626712a4a791d3b8fb8f5c84465e84c03ebd5bac3518322193f5f5aebaa60d202dc0e06797c58e7bd858ccc84c77fe4dd7e90a44e01bb9c1cebc0c6a62d40c08aa0bd6a88bcdcfd5173f16c97c3ba141939be10ad89979720aef0d30d000d9ec9ba2c5ff28ee5c9265b3833ee155c7c309decd6d114e50768da93baeeafb83ac9a0e53a205312718f8d6c7bfb6dc5ae54daed3723085fc71479b3dd5630c0fe7b1eb4975084a97035c774d05085dfe247756ce58214624ecaa19726ba0351b2c35403e1829c46b1cb0bd4ab6510fe93b8d60ca35f505768b3873e5b615fbda8b75205f38be99fbe395f8711b8a7d16b922c017e62257e9a3c3ab0f4eb56624321f634e8b323d02daf04d43f9165e559161e46f7eb0e01f4844e69c57b79add3dfc205bc4fee4778514ca4ce0578898dac3b24e6db2a66ef2aa0cce35466663f5552fee7c4ab847d5c78be9a3edecadeee77610c4b4e159ab067cc41fe601c45d5e84af070c8d9173a5094e35897ea94775f2b7abab353b87940e4ba5c22cd6df48edae5c2899ba914f624ff98534b8e943d5185b8ab745e06a280e4400339eb2ebf9331cb66131cb7a597e196a019b8816488f563899089b33e8a6f9252aeeb097d617de45fc29bfaf002bfc8849a470934bb5ccf70b1bfc157ca7c630d264019e39ca22ea0bf6c7b7a608541f55ca60043a7f845e5d59c1d7bad3d7edad8e10d94f60b2e56404b658c582701817af6c5b758d53c498bd899b05bf20580ac892db87a1d6810d62205fe4ff0ec6be126fb04437c4c7c6b851fe171de30801b51b4848c230a0e54937921c4e4aae1f895abeaaa8590de5fa1b4bccc3140aa2becaaa06caa36fdb829a0b98cbc1e429de8483d2ad9549baa1f45ef264c435ed4b088e22a52c448ffc15c588ccbd5b2d55303378748b3515c83120aa2de5abccbc43984615696d250a971e17c500031fa8f3a4c071546f89892ef827e91537bac0011d81c2afcf253cdf2c455364dee8ca67f2f2395affdada77f2c59b3572911afd3a49ee50824abf126444f3823b54ec45869fbc2c81b38758ecc42228edf0f44a601e20593b80965268daf3de1814713edbbc2c43862b1f5ba82152abeedfcf2051ad6c6142a4e52011f861e8012fe78356fef94f7dcc078fa9c4569d09ac7241315b14dde61902a59439a8443c40990e3484d8e45fc5d400ee352ae89a36a2d86c328ebfaa5a9576fac94587c6316a668eb40b7f2b64f868807c2b53d2e400e7ed962252d2afe2c083584f8153d3b076f0d7b186594356d1536f531afbd7819769f6dde305a4d61e10190303e1ac1842b040abd9eb61b47f5fdf125d919cfb2888a68564a5cec6bdd5420689e659a751bcedd103fd9f398780a44694caa6582d1561fed1dbccb30593fd5e68a8a73383b9a67fea0e4c40b70127184e0a50227f75a50ccfac24c6e722e5bf0e7c2565e6726f70278d4ed45b3e85768ea4d728a0da95c8ff2a030fcdc41e5a59e2c8afe18e66e9146cedab1707d6cfb77654366ec84f6bf1b205ea1d9be517a6222750779b8b4e83caf28d548925b2f6834e4bb502fffceec55b1842c45864d5f0309d5e4173125129000ac62f66e6d3c25f2eb41af79964993aa1e1b8cca32d2f49004ee1e7d68c9889846def93b905452b55659c8da8c530240f64a54f408bfd5e48964457ab51180eaa6a2d1f83ec764d1eb2eb9415e9dfdd40ee5dbb719bdb915858b64fe1c580f437e72517f6d4b96c7f0ce505ae8c6f6471bb3161a4761df4dd0e24ec508a1389ba9e00995a9103e9b892bd3634157966b25843d18211188421b250c2ad3d32fa13c4ffb1b73e4a0a47e90ff5270318244301a9b5d89a21cd29af8adeeae7db1c5e45f3c4cbd8f72b1f956106f1aa9b7829932e7aaf4814bbff92fbf1068699286b788a0bee0eaa1790d5a50fe84b99e09167b797786cfbe86e1cd324748ef2134db648d6da232f87c398dd6e810f90a09514e51a509b28055adc3b870a9cb4ce01df7d4a2f40b6ad7c81e68e6453271ca94b38c8c6738da6f99ce5d4b2a64b55ca6c9fa8bdd1eb28420645654b451fcb3454f6f239950c74f539068ec4b9e6ed0935d785862449664db67540f6ab6f6e05f886a8afa1b64f2e10e92ab8620c6a5060e56cd54226910e37a3e770de4c7f74c7fb92b515f8bbffc6b385dedc5733d4d77b779b57602fe6cfe3e06d2cfecb7b57b6bb914b8f9336cd5de22242db1921c3f2efc92d276d97b75d92ebf1bcb272be911cdc76eba61b540b9b46f9004bd8490df90f1543f28a753d461518b3cf2e97ab6efb58861d8047871968c99cfa8fa35ff98855c202934b1c117679f3c103f8eacada3744398362730058ca68fe7db98968c0f3c34aef08f4d4f1f19dbb7bea55e8cd27a791acae9a7bfa35adf1762821558c03c51f6ca3f092ccdb7a1556c9e5c65eb57471023e96ca78753182cfd1ec43d613eb229159d4354f6c53a8639d90146861317a7d85aba2c7b9555050ff20769777bef0eabedb74a74a17e321d673be829d102711ff344018466fb77923880cfe0b2738160a61478670bc5a2be6576cce71e45d3d50c8aa33afe7cd9daf13686c8ce6b3805c094c2eca6acfbbe6a9f1a3c768cd860d40f1e7dcdf9aff903774afbd710cfa1c86bf1ba77d55de6923071e92c7fe8c0ff7a3c3555a8035247f3794d232a3d2b124fbc944964a44dd59385d0edd300ec24641821fda2b60968866e942ffc004499b0bfc458a6d497adc53683d923a150db608025d5eff3a3cb8d9b40b6189605425564cfae6d04b1ab1e21d65225984c6228e319c80ac65f1f1ae13a7cfdaa85cf2c4cb5d956b4cbce9d5b3c003d6542209306a52c2044b1b04526a8dfe50b7e007ed59a75dc75518071e789ae648dfac557d644d4d5b8674639b208ed76983961b3713f3543bf1b04cbfef9d51f6def0e5f8f47c42d75cdf0d0a3a4943066026f496ce84e16055c521567004a67627902bf8e05d07535ef9161860d4bd1f495892565b6da9c18bfbd11d25f42457695deb440cc0220f8a9ad7c9a03d4c03757fd20d5bff017e46ef44f6f4711dae88a02c5c2a6ba5ea276d125836ecad2e80c001c67ff5da8265ab7f68081b5911d0131e1afce11d8aa780ac381e0ae0748e38fb64222e28a47c6b4d7c4a311566d0bc55929e3e9eae5afb1cb0d9f4d75d1e7e3af283761fb9cf131e4adb961e64869be3c2d7522af821dc6a0348b89de400bcc4586e19ee388870a66470ea597f1776bae2da9ce6ef9f43320ad643d8499fb6d397ebf04cd28b9102b2842c7660eb2a6f2009ddc47efa909e38832528be1d211ff3ffb6284daa72d9cf172ef4c43381907254b5aef3066f8714574ddb39a55ce6800fc691dad1dfa759b72b426d6aff3656e7ea0f6a4dad33b635f16045c15b66dc60eda052ac86a2707728038d86b0c1cbb496a3fc35b6484c9ae5685ef2cfbde607d4968c056dfd851e466012192cb7a76cdb486a0a5727638808b695addfa3a0e11e361da2660aa3aecd53ff94d9c377ea1a6d8c9168c9ef6ba838912040acd3d74839ace763c34e8f59e9430fc8b110719384c4d424aa62588827207629fcd253af91fa1a62ed0efaeb562f9c8426596d8e44e5080c49dc323b105719915f3cca6872639b0e5e22f591e1566f1e394df1dbb296ae894b81c469e55466c89a0343b3ef426fe7ebd5a3332ecaa2052596f05615bb69794428913570f765791baa019eb80230fba7934e7bcee81275516f4e7a3ae85faccb29b749202aced38be903b0e07af8e75c102fba0a2d63c5e740d9699660b271ebc3e2002b248e82b4198934a10c1005f9d9d54eaba0d38d2a0e217cbb0cad144234d19cc89eaf32462e2120314cf6f4e780e23773d5106182bb99c24b488d793eb6072f3904994ea79f6a4b0248dac14d9b1ca71679fba3f665f5a655ea4c6fd129581125513cc83134fe96510407b006d51fcef6b6acba2b6e7fcc91bb619c4b16310be51ac99a95e17b8b600a7d1b18a77473aba0c50225f6efdcc8c46ca476db5dfafabd2eb0b7405b1a0a970d2227895648b5755e3a235b65aae170bc8b53d439f5e91c8718b376954ea5627ff80e0eac521657ea73de9a551eb048674281ddd13cc1c56626c1d1967cd747e8b8910362a3aa927944fb17fd01bf1c6a97790e37a6059c2f0b111f445267d015baf307451c7a5b6ed4411d3798a77c98dff4d9dc68832ecd8ea6f981e3f05bf5a053c6958173730688f5e01a48461353691d4777887a6f34f90c88d13d0f172eb95ae6dfb8aa88961a4641b3656eb0afb670b6e3eacd520572aab3ab57a547bdfbbe2b0e3cf53e0bba46a5038858394fa61cb4fc040f74315a3163688a71e794da02761c754b50e1e0016308a4416cda0edecb9bbe74427e207e4f763f443131f5cba8eef079d5c9c4ed0293ce6ccd0ca39d7927f869d03296ebaacc8b717ca852b0840efd5cd4adfa033d2d6c649332d9cc7aac9a0a732bce60412f066d068436bf9ff9ae8da6a9ba808797dfa4ce440fd2c76b0dcd62dfc88d2036c00f63e861ec760a82dc854528b0eefb686a24436fcf02e7dec8b96beb5b4aded9d003eae2bef9a6081bb91373d76cfa617d601e723ecbbbd3026dd78796c1bab765f36b1baf6d79bd22e29de7e719ee62085fc00fb2c8cfc91cc0967bfc76a052273cd81dbb376781ff4fc2b1e93c1f51bd74a3aae04d28a1ca414d51cbf72499d661faec00fe133816ae2ef1b37475b1f994abdcd368b4a31d8b730fff607795ca78dda68c647cb51b4410e460ec636635d6f62df96dbd67e547ed46d4ebccb5b0f7b7d6831aa7f3c79e58f17ef4a733990952c039268a32c5dd317d2a53a4839ee9b181a468b5719acc3dfc0f67c3d7771e53c497f8b262c60403c741e16513f70997d95ea4b3e71df6ba834a62f9325e57cee7f2b738a905c2ec3450923692c8dcc4160a413aad7403abebb96fb806e7ce40bc2d2721b6946d218484ca9a3087679218face874d869d3c6ffb0e6b7033c31a0ae3fce18cf6700207eeead5221592ee36082e586d8cca7bfd100925d67feeb85420e3e8c12cfbafcbcc3ef53277dd5d6be098646b969b37627279992729a9bab687084ccff7d41747f23b4cf52dc866c6a095648c850c2bca227fe22a7f8a954ead47cf430aa5a16b1f52536df7da8dc194de11fc1c58b913ca49210f101bc75d132bd07b651b2087fb7174dd83ecb26b70b446931eb063cf1a06020a37f074df7d117508a49f3b1afaddce8f579cbd42bae506f98287726c7b77fd3245dca685fa5b3c9069ae6931cf4287d8852dd9e239c15b46ce68648f54931202968f4899141e5032d79486317f1eec621fff5cb8ee899a6a62131763d0308c6d8b94c52ac62de9827220ce1788aaf36aa93fcb74e2be15195160d9008c47d437b765ad2aaa59d2343862c5e0f754dc84f60c783c808d45b941df46358289558d950574b893b90dcb9f762c386cd874d61c14a831389c62fc68f814253e83f362b0a2a347a921f3c3f38d4a9e4bacb79fafb4097dd2302efe3dd4584c23014641f2b6da6a1604131e99dd1c44b510864f1ebe19c10f5d1b769932cffa2b43cfffa8d288ba7ffe270374baac4d5b7d64933650100dcb4ec172b92da6113bacbe5e1d07ece6e0604ff1522d29d85794acc3c3ea96de1a65b555e1a0802122758674d6b97fa1ac0035fe69b6524c4cf6fdefce8033a869e14668f8343068be2b947d197fd443560bf07a9b051f0d70b6743e8b60c41321b507ea73284d777a48ae654ef2c6a6cb48573950e651d95f61b72c3d80e2db5d80393a9e9894a5969ee3dbf65e8bdbf58863bcf2370c63c340adcbe5105434cc8080cb36862cda5c49f8ad2a0b11925bdebc529d11ab1b3140be024c1f53ca2821d03e96c0d7ce9ca30af49dd5d52ec7bad11eb66cc44343a7143d9ab6d979c86490cb7b2af2bb66b0e514e2f37b84a65961aacd6f9a233b3839aeea9cfba60d8014795878b579251e8b6a224118096ed2a99762b05b6e793f26ff841ffc9fae3813e9ccbaa5d07417aea5d0152c9ce68d5f1fa8f85190372fdb74d609061142f64110110530a7e14e3061bd8d0783cf17ef88fd2f2d349c83f8dbac2be79fe83ba4f01272de5beca4c2cd37b55b71220d35533a138270d20d89167499c3340743beecf9cbf7b5917877f4beb97fe7e29cf42e7ee08bdad5b1f7d4c262f635be20ee5ad61d1e99b5d05f1acbfa4e9068998a86d4c2b94c339e58a5d716f4aadeea02105e1d3f110b76ccdae91c96b030816e1338576c337cf115ebaeeeb410cec4de0150b10c159fcb4e2bbe34f7825b026526c57322a8bba43f39ed69c3183e1e16623086ead4425bea11300c85668d93a78fcc38a58871cd027c5e0e1113aded424f420f2e25c890bb84f66662a27c5cef9e3c80045903ced5b3b0083b4a916c1712c0eafbb311d1405247bf9c3fc622aa16c474d24bbacbf4de4fc9ad6a189840a504e22cbfba1861b3af656afa79b70b06ea8fea87319854e23e4ec1ae3422459fc4c4907b39cba23b2d0d3d28e4cf45cf97d51d2dc19f352c11f0877ffd696cd6075ff0845aebd43c581a88c56838bf50713588c819b2534377b0f00190f13e7086576a78ad9a28fce0c5feb11927b6c72542c9b2f3432fc4a58cb13ce14363e314977aeb019a0752c9de70a2f73cb13b062770254d6b2197e46689838a35af4aea356f86e1d881560a3f81d7ba2696c8f66000480919b776cf3477ebb51c1f04b382bb190acebf15498096a954bf4acb4032613826e92dc9a73a20d2a1850cf06f6a59e14b9db6b3c8fd7cecd9a2c003ea43b17cf6859f3ac863ef97cc044ae9b30f750591482975090501ff532dfbbeb2dfaa6f28b6960ddfc8d3d132c7dfcd5be150bb743385ee4f66928feb3d5f608f3fe22344b6d9f6653e0902246ac0b3082bba11f8ef39747e999a7844bea68d4c4d6653e14f6269612b23489ea57c48f2a3d9aa647e56eab63d1a62fd1ae6703408aad474ae9f1bbae43cb49bcde07936c372f7bab90c81704aa0a6454f0ce61fb0790cc8d65a00e40b639d83d06bff4939cf14881c5ba858120ef06d564984fcddedadae5ef745db96775bbc0a345ee9b3072c2c366e9f81ee011f37c067669e5e5f674bc043de308ac02aea4f26d1b4b2e8ea8f41db48c64dc8f0122064764758c362cbedb00b3bd5a1426d98dc507b90496dfd5344f16d89dd7acc26f54622a10de1e3323240ee1d3e7891ba766fc9938c4740efe7c6e49e87770a44f5923f1ff94507c1cd06314b4ef442aa4c47c7ae5faf42f4a6daef881bc65e3d9ee6a8d386c3b3332c3fe06dd5945bf8a7b767b7dbfc2bd18540c4d47187e73dafaefaa9bdc76914534c1a4973fa30930e0ef50b7fe1b169e3234540a015c8d7cd3427e03a7be4fa89de0161c64fabe8ffc832c802d3cc36bbacbfb3d2cdba17a138648104b8e738d669de78f03983420d7a0a55f1829f22ee7fde3eb1109b3f38afd26c899ed791abb1f9764cca1dc6a5023a1c43869b9c134e2371df9dacebb57c8a6043a71f8ef484cc068459a7b8503fb90128525ba005470c6da8148e357e521bbb10a6d7e140c7d5969367494183ac0f06d618a028d3a5bd3d51e31ebb5e02249544019da505a6697c01c30b76520d189b6e4a568478a8592430471162ad2fdfb9a2738ddbf2d808c03aafbb712ef62b7d7ba195baf4b76141be64c33cad3d4465f45e4d4dcd3f8f3120d09a4077eeb384db1e63d8f9e7740751e35708e37cfb13c9e007692a92411d52fece8c908db4584e2a569a87100576b9de2ee74f119422a007239d7c914f7eb3d038a50275af75f5eaa8732f95827688d73dbdf3156370e10ad065a51ca8d1940a4410f0cbb51870317fee42e2c18874a933fa20a195550138f7e2ac19b6a8e726ac8365ec7928d05032a1bba30934f46a43af664ab18984543742972aaa7014430b3653c649553e8eb9c4da06ab865c457768881e2dd43af63c4111f315e77b6af0455739498228c97215f56fb03c6fd93ed6ffe983d9551bfb51efb6609568be9a324b8b08e18bf772d83daabd62fa970bcdad3bd6f9fa96039984d8a9382061928180ec374a9405e68d82e893c5e7f3a8e2a1440d2f2e7797e2cf1dda0e5f9aa1f3e7ca24c543fd6755bf147f340f1040f89249dcf48d00da1a60f3e42c888b9fa7f4a3a8d24f38d3dd7ffc4a094e9ac79d08ac03e90c93f4f9036b81c1caa832c68640d10a731055d1e130909f6b67bd1b9c84f39852e6e5d1795030e772020db8a6a83aa37c3f19e31b7c267a741a522260980ccd014d0054f25f007829df597e0eb946802a964c4507a826404c51ad00fa43846defab3c680f241c70a20e84d065aacdb9821b971ec24a4f60766bb9b7a03603a47e3e3bcf8c9d980242601269e8cd2418fa012110c0bde3ebee5054c5e82277c6cf995d6fb5c0bd569033a873b5aff05675fe5eb0688f0bfcb6815f560ad0b69e6554527d412c9e6d58ae989234d4f7d557857c7a128a7fa5d848fbca2315dca61329462bdd14e7b8c4f8263eb406aafe73345cdd99f46d26cc5ed30445d5c4f20f8acaf8548623330b617f6aec0df3b117f0468b5d47b556f2c2d926f638df632496d2c76f7b4c5fe90e31673e080ee51ddce0e906e52936ca9627c57fea409436e969974ed8366fc2989583a48b64a6c881f2a71e774d407c8b3a7dfd90ec6152e7ef913953e7073399e2e6ba47b3729e7c868e3b2301f9452de44523889d571866540b67220c408d713e16753fb76e23b2ff5b5bdba72fa8ba01eddd48c6dcfe613b0f248908e920269df212db27674af9ddf08a3033736c1e0e38ba4a685f744cdc42dfd997dbaf7de3f1beaedc42c7a4bf15265c822c808aa96350c6de9853b0d1b884a29e65131051c3c8906f5dcca65d4a6c34543c9443ac28d4ec927b080bd57c47c6db15670d8a09b0e358397be99f58f1bd1879705cf504796ed3c1ca80de9dea31faf6437d272b22925e04a4f55480ec33700f0afaaccdd6f9ab5426b1f5631719966a585dacdbb58337842cc34c970b21daebe141b387305ea93d98a7b4494fdf122241d325b4682d2aa04fab568024926d991e59577b02a0d7a87a5ca48964d2ba543c9524814322200fc08a55ce7f7e22f03ddb5a934d2c827081d27591921b05a4c048c6c535922f92961d66c643841b4d2eb1666f149cae988cc6085cbc934449d3697a130ab0ca3e6d1ee5849335379dc07412e6d46a26db2e902d8316c7b227114d126b129369b070377734685e7e35d6f59a097b0f858c4ae13a13624fec7c030952bbc6a2bff29881f12a607274bbc76a3b22f0b7f32bbf45507ee75fbae507a4c4b0dc015f97643490e7251a454f5b89929a991ee15d5c39e5fcac91e3191ef90147c72daae0f1cd0885bbff6d7cb179a55530f8b601a78f07469f2c0e7e7b38de109645e1861fafe5c9482c5c4f11c124a40dfd467136b8d84d17fe374c50ced08254e30f32ab2d2f93bdffee26aa41afff2c5c54899c270311ccfc10b4b9dfa3690fdf14037f9ffec759e88da41e1ba47e30f911cd2bf87c4c550c86a74b0da882e6961c56d2410ad1b45832f08b02ea48a760d45447951be321a8953ec787d896d150a42957f7bda057db1c10cb26e35f8198dce096dbdc15ef45bd176075cddb59f653efe27c984bc0184b399d7943f5b81c7fa9803c87845d62f52665881ccfcb392558f11d7c2f7dd79e80ac8a6ba084fbd592fbe3c4017a9b9236363a5efc111e0753a3fb91540b35d23d6ce8c0a1d02dbe7873d0475ca4afec34b7af15a6632186ee9f652b53faa348c69a149fa243f39feeeac0d51af5c4e94b6a894144325be6dc7d0913beb1f84d93c7196fe118f7c3f16a6801eaa2e176d44f9d3cefffbb2ceb8e2470cb140a063af4829af4af106cb1a90e309a0c66db647969158103a0e620fbb7c41e7ca6c212b82ba4daed4b1b991ff05b74f7eb18af652c761211629783c583974ee9e956e51aac692c7fc1903de80ac9cd4a2178a2554bfc1a2ac980e5d56224d39f4adef6e202f0f9e73fe3a4c35651f8098c55ba1ca3a7d2e09669c0708154f5f4a7ef1d4513bd846f1f656b9092c77d67d42543327deb242623959de74a6b56737d23e4190950259693984492f9173d9b3bf2c71f0bba3102fb70a55b052a3e224db7daa8d047357d8c7503c12a78aefb79bec1bfd7467c41779229e6b20c3ab28f1c83d1336b2cc3a35abf054db651d98a73b12bd3dc2fca000d318d9226251ff7dc904bb2491d4cec3c693f783e0a47492c5b99a626dcc5cdf414a573d64d3c1a249c9cf722175c2e02a853256a7e1a297447f721b81f0753098f047feb63ea7b9476e388e666d0b4627714c96205fb3d149a3eb6c897c8162f8473b8d4f7adf8be2003a19936b1512863f615cc073fb790ecfb3a35f2321da91dc57b0e9fcc4a2a2fec5499904fd79b9c77a3144d16e4bae6950e3f505b05145f40a53926a9b51d58177ccb9b46a1534dce58fdf7d14a6233d8c5b41bda2c39d84050863facc0e9835147017a5240a3147f651b6eeb78dec7d9e0ff9a7b152f2c8f697d2e328168357942b1f86d1ea936be6f8d349fb3d3d8c5de401318fa1a5cc03fbcdfead924ae48d5c29d3fa84e324f533f8a858436446ff5c353a08cc0bfb0214a6005e729fcbff4444153677654b678f9f9fea6afe2abfa5f228e72cd1b28258567cfffca97cf815d0b451369d63438d88357dc3e626f29325e4147836442d3a09bec7f6b222a9fd7fa7e710761cc6e8ed705f7daf9faa100eeaeae307135e97bdc18eb7183b5ef153fcd653dec82e7217d1b67667054ab70d3c2e0459aa03c0dd10315e6d4d080fc693a82549cc7630e1e0066697022b1ba1255a86972b98b2d75a83ea0a98c44ebd78f239555c6cc2cc9f7da2a3d2361333552fd4f09b1a3c904ea78d8bf55b97b603eaf1e4f88d35f851d968ab83b0acd225c44ec17cbec0f539cba07810575af507a76ecdc9114597f341f225d1e72c0f9e0ae5686c71c0ffaddf251fcc7fe50b8fd67e8f7c4f669e2951d6aa4b240f766bb8526cc9277372f05fd564e448a3392c11cca2953e604a5b798145869f5144ae0e75cf35f0dec6e862d65ba44aa51dcc6fe2a7ea6750b0611060c340de48723f1a9fe0545654ed552c86ab8cb623ec2f331dd3ac4463ab08c7164a8a7b31d1b0b04c3ef39d90989393b28255f4499d9c69700e66134994a8160df8eeea50e7ec76c182302f399e4de9f910dfb811c74ac40f4049f8fe38150d7a3138956c51672ba38048a7b2b19c5202651d45605b005e0fae9b0d7ecdaaedc1116a5c3c00e253d24a2747998798aca9d85a8bc1688de95b1f826bbffa7fe652b02ce6c5847d8944149fa7e06dee090df045d84c446dd8fbda0832076c30254cf2ce526c2f99e626d51d9f5d29159517d25dc6cd38f0df0060452dc4589bc17f51990a79c527db528bca41501f5b30d9f4d10ca1d51dec850cd82ccefafb42ba36d3aaa2e6ce43b2aa68b59c6699191a14b427c75051b5340f75becf29fd454571b6b33929d205cd1de927b5fe69c07d36eb0638e646ef0328e08466136bc37cf6f95d3f5ae6aa1fc3e788156b45534d78b4804ea6ae2026211da05bf7e8d29a72166289e992eec1dfb115521765eb1e42d134c65826a49b56deaf41099c02f5432b8f1b7d375db9882b5498f5dc2674575b3c244e4dcf0e03eb19d410300c42d2857623fb531aef00c95caac4516fa60cce36dc1978ad4f02005a610b4ca13b80cfe4947091dd082ddcf563e1e3c013ce2a90c1f0f1569630b169010ee997516c313c7c3fe26f0f22782e5a0c79390484562ccadeb664bfd7c99b185d7d708936a4c74bfc1748b05f15d6338627d97497ae43f04390977ed9bdb295f762cc0d7e5195b8a9424f4c6d0e6b5eee24e24127a84cfc9e13706c4784bf7112c2c14a975891b429f244b922487e22e93a8ea864860f9be28a6fcf0af6f89175d5fdc98c3e0cd55b46004fb397f83ec59488861bec33e7bafd9ba0b10d0ab31386c95beb69a938fdc7ed625b1dbf68abe4f3a239d28433de8cf4ed825e1879ea0ec6e1b9fc7e79584f38bc07ece21c807899b5de54dd00032aed8ea1e3c9377a010c3ccf8023f3a3eb5495f625fdba1cdf6409a713491e446234aa5b5a328a5ee824b00b71b1e114d86aa7afc74375c496af2fbc7b259056b1f35365dedd858be98c7ebb5fd78f2d60006cf70b12fb3f044182e4932de103a29499b3a3dd6327bc7baeafe2faf405e269f224ce0f66bbd6c5b10b553991824643cdb8d72db401a3fcc099d5e876dbde61d6e880280f63cae6920c07b6d36f0cbf6da6a52d53c4907805e59dac36a3dceb986ff3f7eabf95a865b31ed748dda1d0f2cdd3cd3e9cfca55ba027805d22fa38897597f6b45cdf30c1bf07204716efb7eb20e18d075678c3eceac47e83b53cf69d6c95ddcd68113a180c68aa34baf0493e0f578293650af74cf8c386ebd0373a87447f818d8f8fcc1019c3971f54fb601c959163b6086b52cbc4c3a1516ed38a2f7ad030a54de56d6323e21dd301d047ff5fe1fff3de228b803cfdf26eec66a5717dcf3839b81e77769c62fec3d10307606402174e05990bfd18f87a975ced356d0380f113b6f638ea79d39337c026c2590866eb8aa579982acf42416b1771807743a4c7ce14230249b044c8a6056dd5f92782563b2437a7a8a6a466a9c4dc96222f1a34a8141774c36f5d9c556b6681c02036323630eac5345eaa659e5c5cc038cbd30ea3f52486eef2719a6250d25dce140394265c3f6364a3454c124ac429e41b54d179d37462eefb690a61525d47aa4a6e4f0e7b64d6394e2baaaa4bef08f6d6b9fdfba7bfb720ce63b2e4284392cd7134bb6b500df99c3e2888f42c2cdb6193089db6d854acdb0ae7bde25d6161d850b65b20332866b00016b8b235d37363099626923830ebff1577955b201122fad4d201f4bec0e534fda84a9953b0134f1e6b44f1a15791725ffec6709e1ff1d3160cace364b1cdaed5957bff89e30f9551a8e34cc1cbb754f94322ba4ff2cc797aae0720dd9eaf5a194001fd3c12d95dddeebf89e4bd732dd357db141ce810d6c283072753541398d5835173390d2d6cf520623238de2e1e0fa561b61651c9c78c95b2e96a2696f116a09d3b51b7356ad98c6e8f37164e676fd56dbe0d93a6f0ca4d0c8ee427fefba526c6c6eafe4596be732905368e37f1ea232421c0677970ace2d5fe8f05e1b96ee5bf2bcdadb4e6f9d3a6443b4877c87a1b04d65c1813bf63fc0bbc3b12bc75ae43fe04bbfc109af969c96f8f400819b02e90e3cb5a5e832ea06ad4cec2465603c2bb6fd94ec3527383785284c9f074a0b9fc3596eb15ba2c5d49236a87b0ad3893c984172a31db1d8d21d137e5c9b012925b5ae6e110f156b64a1831f6932040ca488d7ab1daed3cac01b2b8e077e922bf5a21d6677dba639234ae1ec5da7d2271bb8f7c7c5305d10667ca1e631748dabbc439532f98637810718163e3a5f564be320feeeac24b32de4afac03a658b8d5be39a542b2322c8b3e2e7b6f95e42c7a4c6d05d7498ef04a2ea15e97d12d02f8674f0a56c1dc88ac0d66f5a85dbaeab67be7b371a6c698b4f0d808f6ff56acfef0e4bc4c1324e0396bc916dc09178d793470f2cb0c77cb30a75523d5b74ef2e96bf4106d13418e5abe4d9865a3966a5eb13d3d2609da7db73b3fcf64bb811e870844645232dea1df2fa7a5c1240333fac7f9687dda99c0f3d99f8638065954887055a347da61ebdcfd609eb10df8f0a368e1227c1df4b9a7d1e7f813b6fd3ebc76e221853de6f7f67b408f3e0a040095c78bf6345f05a9259f38eae2a878b36b7fa5a187d95db4e3e67d8c78411545d15c505c4127894c55e39638dcff050285e6407ed12bac51902943fc188d0cac629c05c3880996f415b26fc84caea5d2bd1435f9a0f7527875ca5574e6522c0d9d2c0b91a3f13ee0641e16661b4a00367a10a910d7ce9299eb2a58c253812820244885f9954dc21009908343ef73c3fbde5853cbaacd715226d64523aacefa735e07036d47d6999be12adfeab766fbfb64ca50a46c497b815b459de8af10ee8747bdf604cdd9a7becc0cc0346d43205455639ef72ebb96eebe2336068a00f8358425d98e9b54ff43b1e74174f6e0b65bcf3f5360d30d4771f676fe6178f15213e19687d0c44f24704da89f05e8dc61a16f2a1ab835c90b7f3fcfc69f2dde62ac90ec5ccb4a9f84c4f046f2bcc3abfb969fb8514cd3bc2f5a2e7aa18d56117bb55bb075f2d4ffc1ac6f99393aa06d68746deb9ab6518c85fcbda09753082cb812a2a460c09eea549b44b72dfeaa50422148e23fefe3dffbb987b656cb697f561b5773292d2933cfa09b5e40e1de3e63d1d522d76616b5714e7910494e1ba56dbef31922f66302837d58c62e31c468d073f572a2748e524eee93c534f66ad37f04b66fe084d2f29dd90267fbd817e48f2ddaa9862ec606716566fff765dd010c93bb26d19db90fbf14cb3e12a4147bc25a14bb5e1dd842c71d400f9c3f42c14ac069f0e70e428d54f0732001c5c4d9020e6d33b9e35a3e5dd6590acf7f234752e1b27d3b3abd1038a1894e05fee6e729095c5811e96a52d970413746a7e01121076e47f6cf53703a2e85b4c755c4281a8a91b9e01653f6aac9f77705cc05a4b489b6628cfb50aabf11344c7082ca52aef14727231686ab3082248e5d11b18dcbce7812db8231d1b600abd799aeb25cc0373fdee0e1b1db7ad6c2f6a0e058dfadaa3379689f583213190bdaa58f33f239a0fb02f5c7a6c45c043d7a9ac9a093335806694ecd6d4edc0d6a87bfcab6db99d5cfbf1705ca0536ddc78585432cc5fa41bbd7ad0f009033b2979ad6157926c1622ba4e1d03d478f1541368524bfc46f51e42fe0d945f7ef323e4ba0c59deb5450f5cb41b3f93609ee2d0d995415877ddfa223e8a8a7533474f072adefcbc041e7d18fcf2d417879dc5a09997aa64d675b7a3c4b6ce33da13f3fe7d7f2db2ae44061b6ff45eb5eff32adbfb973ad2636814fa3bd8d90c6d0df8099070e7cf1ff3cc899abacbf2febf51eb83d18af53e11eeb6e5c5bbe5e2e305b1b5cec614442393b86827715baf6a4530245470519f9798c081ac0018e3578c0d72921a7cc47a7995af30342995c18caeb03cf743171c43c8a671de9b564d73adcbe5b694c299f916e3540b562fecf72cea1f8dcb27837e50e3436b2d8be77834460f5e9d7540de51c2959429c4dbaaa71157d006ee50f131025df0a75c0f95f9337125c58ce5f642f128300aaf581ff856694513e45e9cae456efd7240d231ec4bf76c6179ffdec087ea145fdc13a4570b694019a1567630f06c4497cb49c03a92a7374e1ef56769b647082c45918eb61f8fc5090d010c1afd28e9df05f4c49b53e301e89a4d519e839b522650bb7818968a17160f2f7408d1c4f7c8b30dc2e8873f0ac3184c29dc7d005e1eaca2fc3da4aaf907b537eed2b203f4dc7ba38c565c2f6ca261b895021a575af533bd1bde3daeee493465b8a88a69868dde3599c9a20629d31ce540195e5f27c1c13b0071ef49806d0b0d5a2160a4fb126b62502fbb95171f80b781281589f4890fc61d05628f2cf4ed51b75ee020b622a35434287c76b6912851983c89c80d97171c871603f00ae79f203879d23a0a86de3084acc07db63e928274edb92b338cd6079c0dd3419de966a4340c4ed307b27d4b47a548f0faefd26119dce900d9986b606c3225b4c82247570c5fe9475d35826c0a5ccbd257babeb1f767851cfa113369e8bd754002af0adb42f2dced9a1168424c063b803cc26ff550dd888f6ccc8a22e25183c4b5c2d444034bb8ddd0e8fc233c7d7bf09da817eb3b9b327a940512e0f5a47b71e751ca9b701fbd57c3cfce47e61686aafc1e1a23308525f98eef3bec6aabf05c411bf003042b7688496aa97feb1837110a2a4ab5d50fbc836015c3d679f80022446b44631f318f3d2cd2397cd8a162124d9b8369f45e5382e9d80e03934e2e64ed7cfaef53804ade8355babc58854b598ecbda002c3cc519a72e55b9d154f65b0afc665540190f7189873ec5247216060e862a4cc80155c6b63da20cbdc9498ee2e71801440918487e85a0d7c6244f0ca048588514528a8f3ba689966dd35c247d710784e4cc4e720f0a291eaf1f2998aa1c996cc9ec9c2c5fc0708694db86638fcbf221718d1024effdc000557fbeb7aa11e3408c18ff754fa80210e9cd8c39a7426cb6020575d682e99e4691db456a4c7d7bf2069434aa5f08f9c142b2734b916de2f9d54db6bda74a224a6e71b0788d1601d89c34ed9a0faa617b5a15393e717ecf795d10530fe22d7245c5e11d7bc47f289a0bcaec5fcdabdca9a74410c6fc5e1cb063253b7a73ccf253cdd87e659409cb6b81a131fce46b90a1ca7331239383892a082fc46617089f587a2e92fdc062d2855d9b5b2639d357523b22806a52073153c923de989e8ce91ae377e97d78a444f17bb721a856c4f142f101addc6cfdfa002b36a2667ed5babdaa4a79f95a1176248f2c696317da9ff63c4179d2b8fb0f33e4c1b360247530e70861ae1491e01e7589595b677e3d5586994b7fa0756e8ed4678e90bd0484f85f73e940b022e4fa9c5bd9b6025c2bd023145e913275b0d3a0243be13fdf2dcc4273869f4289cc5d89dbbcbfbb12010cf8170759b52eea8f25e460dba8356fe76d71d55c13e8e81aae48d0e97d974bdddff9f82f769e9d9570f349ec403d6b0aab0f9f3efe52b3b685224e4f9de78dcb22d1e02cd8199dd2a7b005ba9d8b3c890161d266a679bfd9b00e434ddbd738dbcbc8b28fd90b8c28228c66a6fe09dc46a52ddb0fbcebdb135a4fc57357db74b324cf8a69a06f84cbd5b1e85cff5827d278f1593578f69d6f0131fedc20ea721ee64952bf36c3413edbd961ff8896a285d7249ea9cbe5417b6e00349d997b79a952240a0dacd6efd19c972179c57159faf993960dbea14c08b95fd787e3144eadfac9e31a71190e8feba0f53134dfbc2f7cc5ba48d0bc5cf4677cb871f89f140c91652defebf38b676e4f6d7acd044c013b16abb5299283df8bbb065917c9707eb1be982ce4a6d189b1c63a95e7a92808fda30acb56e533a4b95ed4beb607c76c64ae7968433ca41ce204fa6ac8eb20eb7192663c09c4f7c2e0ccfda1bff4eb6048397dd9bf65524ee88e6f0829a23b3bbeae3c7ec445a6fa15bf7afb1b0f2cde2ab71e84d866e0388984f666b798e1c5e1d1fa9efa182542138bb49af24ee5943f9ccc60b8e00eb80af5fce37a764abc7397c83eac9dee8c3befe8763dc88bf5ae11ac0d9317b99aa8a9f711e88e466477969224f13ed186eb21b7e25dbc8bfd9f49b6a3ad1ded80e1978a9790888b670dc99b17d269757c60102d8b91a3b178ededf06e8d8102438ca7677fa9d832fd9e8391f6a7b58008a5dde4a1a2e563b17924227e26404c450e605c6fa1daa68606a7ea0713f722d69f4ae79dc54b66186444179d5f129bafba009cb3af339d2a8245152456a115d13ba52b4afbf5cf98001053ab8f22d65925fe467e65db43391963476a508901475bd29248185f1b38c33ea72b5b8c56e8374ecdde1f907911a475b965b03c4d4a7fd3c7b7e1ce1ef52ce993398c58d8314293caf3e8fe9238fb73fbf93325fee82a0f33871243565a8edef64eb59da3296fd17a487ae18c726797a5f3c94e652df1de3c076090c4d7e560556ee70104645904ceca06f5d93179140d0923e7d1640dca8f1a66d9b6408643bc49d81582e32e5021b8af3ee5f5f53141cf6d70724840c9251a9ecc20aef00dbc7a90a9661bd212151348939ebe1449ab37cfe349022f74ae5286493104ab9aa9fd2551d1a139e05dd612267a69a3c4113054af40c1f5d50ca3cbdc5f72fd367774e3c02c0594d6c7486a1b0ad97db96dd93150b7404894f7c9d0e64d70a727e937e2db95f297069b386c8bd46e050d6027a613fee0b3beadf65abf9355177cfa5373978e5fb2ffd38749f73c561e8dc1e08c6d8a7ef5559d10a9986e278db6bf8535c19b8e1e318b816a7b745908ac4274afe70b3e0aedc8fa7e85b0647bb74d9675684467495ce8366f16737ddf3f32bb1a9c5e1dc53a3e2f1bcff9a45448632860552fd2836da45975e630ae630cfe4689bd7496a79404c058a6635405b7232b54bc9de2813b2281a25369d4edd0a814208dea1a98de3047eb9572e5f9abf25b28f64c9b747210ae374836c38e7b820952f9f415a96328f60d1ee489035a915a9e3f95f576fe901353bcd5cbea52bf970e1b284a4e562d8b5a75a3c07af66a5b7d96d2882f39ab29397de123d684a012141838301cd3364bdc7154b81d512c1b7057d84a8f93b57af2277e0a52240ca01a28a63866d789cd754bbd4af509cd86630a0d8ad6c48791736f233867fe21f627a0808999858d44d9146afe2489b05b17a83382bb744f256cb4d8709905ea740ca8fe33cc6f841e4c4db6489e0d942cc41150ba93352dfbe79224a45006acb40faf9bf8be78d71da0171540bca245278f0b3d3644d99f19e44a09c256c634a9ce19ebe525d1872b9b6c6b2711bad4d810937e4038ba28953f80bd685976a558742246919fe9ce68f79cdec85bff780c76090815f69c4c50034b46da33cbfdce9cbfb9f3d16fc956bf31cc62d334974d47486578f06fe0a115a8a5d16b68ef25abb8f5456988a425097c993f396956a756490bd5f02a90f9f4ab1173fc4d414012df9fb028ae35225d9244a706628b0dfcbcd5017b6b5c542adeb1b2c2338b6f59cce8f84ca12460698465ae8e7017c9a9532e26e3c4faedb2aa3cd6cf54ae2b13078e75ae3a762f85f18f7a7ae7ca2bf9131202c70676ad25c5d19a2505c487384c7a98a070fbd6effc3870102f5af32f254d0ce9c19e520202b006833dbb99402052d48d66867d8dee768892f7e8b7ff3ca42b34f709c2a0e3e983a2cbf396a1d55abb0996843cea2ce07b53a759158af8caee1f571d14b821aff06e07f7e9c7bfdbc29f375b0d12a0b16cf81054a5221800f25f5223f0d3872a598acc02ad2868dd4e10b6d048dba64093783f8a95c10115c198e29d9a1fb14679d4ed630c50035ac65efeb5ef6eca4b3ec26a5c8f60ecd45c9631153aefb4fc21892188087fb348e1d4de854fd1b79e63455fb9c1cf2d56637544359fcc643c4bc97dbe36a8370af7921e1d731b6c89fc22cf32d4496cff32748613677a0934853d0821e4f5cd71fd63e85cd40318298ada46db858b4010a44ca02f627892ae496737232de419430b362908013cad40e1152dde16e1e8dcd4547c12d40a4927185e5d65ae450c508e56fc04c824c2a197488a02f0ab24e076459eacd736f2d77311006db06e97ce116aa20c008878f076aa96c0f99ff8b28da9ae8142c60a38234ffb60e1545c1c34194f49223863bb44c063f166d04e2be027f4676740d7ef8568ac5e459af3eb43f1a3dd37c23c54c3755c4e8d0e8f14f7989aeaeb1ae6fd919e0d2a1a95a568bb06624d636300092e6e680e1be4f0f5b86deb776977aa847424e334daf4ecf8da3d3521a2d09b4bcf7948fe47c678dc4291d6c6e08d47c62acb541a1626706afc88d95ebe1173b553ec732c6dc82a576989315fdf5e7779af738a44812c4e572304492b1c7cf247e3ab0a5d0612fd1782e52eb4543caa83d5821b69cbf1b795927e593284bd46fb2536e168d728a6358a50506ffbd876ea07ffef3fa4278dff9af38765eb9d344aa56dcc652ac79c73afc408385b62a4b611b89c14ccf9aa3f3dcb79b967e13658d101b3f7b9efa914ae0c5e05ac5ed322af33c5bfef4e11c157b1e2e89782d30bd726f2d5ff7834ea5e26ad02474325f8b1f126c98114d1fc74f4b5621ad9afde7746ed9cf7e420be317a6e29023d2298d58aa15ba4fe1a08612fde3bbb7213a897de130499ac4c0ea6ca6bbbe5557b50f7c781e84d46571e013766dc997bccc3405a28848d083a26d269cb9f7c2ee0629b3cc8061b72b7790e210413e07fefa94f40d699d859fecde803d092e222ad34b23e488a6ebb896cc720d92a56def939b787cb25a2facfcfa9d95eeac9f979b092f1571631d16ac865f002f10b7569424951077a1bb15af6a551796501adef67d405d463e4fd4c36e28bb5e47f4a3c61e2548d15ea40814e44acde0798cc95cb15335a1647b7adac4986fcc948d56a2bccea0226724a842ac0ca25bfba1ade2cc099b33327f1dd68bde067c25be6468bbffe42bec9e908d522e68fbc4e632f0ce07838a574f15bd5188063687c6bd46dcca9909eebcfa3877cfc2aa1416a11c0fd140c2e6a1fa64ab777ad341b944bf7e81a2f2ba0591c02749018a840ef634c644f6ee3bb682764358406b00f0019cc94b701482846bd8e41ea7715a1e1514c6c8c1b70c8ee5708ea30eaeb0b0affadf32a58b7645b4ce0ab78de9f3ec6f7a90d3cc8f3040f910e94b35fb7df8eae5dbdb36a7e3ff916703fc7a1097a5e439b1a60b6508ade0cb026100c6551d616797110fe0ea95010f1e53de49ac2352e73cd80e6e22004bd5639b8dfed0d49610323283801daa0b3dc7e6ea474045a4ebb54f661b79c68352ca2af3cc5975ea9ee2a1c4b468ea2d336988ce0f8ebd8707b28d44b5574c26e015d15e7bf7bab8623c649d419fcbc16e3d6393409b83a845b5b21ec8f52f1a617a9e4dda9aef7d785ca01e95b5d83ef9a29bf58b32e44b20e19cd04e3e3ff84b4afbb2646adbbca959f1bda30264730c8100179b3cb7a9abff73d684c8acb018bf29622099bdbdced748b545bb00094314c94ade7acd57580ecf51808b8a95ade376ae0d2b7f0d40bcf4ce355c91bab3436fc02db0b03bf420089da24552ce09ecf7b274f4dd3013deb9b5420d46b6a60061b90a09fbdbbede7d3c114d64ec22398b94a73d7bf5eec53d1c7502e1e9bddce8ec177f428a5ecc13aa024a9974283e76f80f6dedf0e438f4d778ce9103971638e8cc7067baa4774c187b43c3973ac18840b16ab41aa8c88177268ed43b17ce211244a08206f858dc075dd09e88c2cfaf23ea8a37b5681433eafea97033af632ecc948c8c1ee9944647743c4d2787b55ecd4b9ce42093acdaea9528cfa1b59e19ca3d348b4e61a816c83f1cb2e829c9a1efb9063231e0139abd7a1070306b26e9a0e5da83376f742995f065cf3ce62be01e02df7fa2e9e4e8f8aa44e69a6357da3f9fa14bd84f5879c29463a54ac158d00f15494bd4b14e9885fea0427784da7cb9c8f50bb96c8c1660fe2ac5bde6f24c4c5d8067ad57f8b2b37b764600b64d622b17bbc976c1da14b5a3f92f2653f656bbf30d1b65a1943a9a9161f53681584ade1490c4fde1e41576973243cb61aa526cef79b3545b1c7f2b681747dd346867c8ceb36c69487acc390fb595b9e7fe9ef56f9c89f587ec78a2bcf06ae344a089c56ade44966839456bd475c5f9318215eaa787ae2a1c43d864d1a9c23fb40e6e3e36136aaba7b87f60c9f5a3e9777710282d54b1d8c0cbd80b1f048488ec84ecd583d182e15213843b2e00199f6155a1f554a32567e9052098d1673d28ee12a53f055a14cbb6ebe6b6f00b225b018b3d90d6878e5c6dc27df077b4c7deec97e23c7920aba682908b8be48f98e9890477cd2bf2fd1e9a7bac28f6b095f8367c4882c54256295620d2e4d63917123f7dd2ac480db58ac1bb7551deebee58dffdc10e8185a6d1c9638a382a2647f0cc2ab1f732e10ae3c72e8ab6a8aed88fe51d86fd589d7c5d258591fff68d4256a966e259ab130385519f87552369ada023adcc9355cd508d1c9dde286e16e9d954893f0ebecc2b7100a3e8aca11aa03363fb2d2781919752dab147595efc1bb24abb9109535551c5da4f0e5a377d1bb9344c6b66f0f34e25c454ed84bfda387d274e8a123ae391cef4ef143b4df1188432098becf7d9d10c45b9a2bf0af699ea1548a3fbda6ae15dbb6d62783b33e061d247a29afc307611560ae7419f4d97dd26c131adf69d96c6a67164a5e19c44acd8d2556c86dd4f76c564ba583e21e22ed32a727f6097a1d4ca4771ea029d56fe5df0df58f5a62c4b4a8884a0aa086133f551fcff6fca82890eada3090981f6288f709468233985fe6eeb8e5f7eaa2ce1eddc1c98eefebcc1ac41c00a08ad94d224c60604f06b0218b776abb2a82390630d3f02b4033e6098f5eb6f6cabc5f6b5201f480b5f54c8c6c992919557d414f8b3a04a149a62718e6b5c6500ae69a8afe86f281bbcf51952f6d0c0d18f743d4bb5685646a1ab03d0f9032e7e2dd526a569343f72a14566de3a2ee0a28dbd01bea722f152d4d227fa15efc1487e6ba00237d95bbc27d53e5ea829a870b72ff705c0b43161a522a8cc7c00b8cf68ccc5a002c433a2c3ac215d1c28ff3d1c92183a5a9efe118852af78247ccb3c5af9e1aaafab52e1599cd67f7276741cc260aeccc467c68c700422294f8240d3523c30ca27696646bb2d6e68b1a020816e73dd4430b9a870de67c718def043f5d5e253aaa5c34fbcc4b2c5dc13c4b4586592a846de2d2560bf55aa9423f207501863aa3bf177cc99715260e45188ebbae20f17561c4d691341777eb34496ec6f6ef9ee8ccb5f1c773d79d817332e792423c31f4ea143ad06bde54e129968c4bf67aca7018041aaaf65911321c381dd59e300431a5bb742266b1d6a7e7487f3ede73a13cadc2b36a55e1bc0bb3912e0aebd610f298ad0422467e5199f17fbbc95a3ff9ec375b75bea639238ea362f173f223efc372a8f3d1a039fe15c2979d1f46ca834d7470b8c25664443be0b2d4a7225b398a86bb0219b12db487ebd05e18928c12a8ff8cf1c29e01812f73004ce64d414242987aa69426305607e2c89a330796f02ef7b7cd2983f051f3e45f5298c7cef284384287a0d7c912e81641f5eb2127020bd94b51bd899020c385f3dea2f8ad6e5d4c8a48ff14cd7213675b26834df363e510a0324cf066939b4a36746e3e232e3bbdc378ca5989133906d95082e90f3f4e8e1c9e07e6cc4ec40006ae618ac72b7a746e027569b0a459cdb6712600a73c19dab1520767e2c3266e24512be1dc3b7f775984be15e74aeee3d37cfb48e38c6d70c5c038736be5d8cd35d5ee5a90893f0aeabe68c1509d14814f2d68475d7100843c64898c6523080ea20f8b478aa7d1fbf8a72f96cd396bab12411ed93d710fae59bcc727fdea3493c23985540fa57002d7522f7d2d594576bb390aa81a726815b35eeeb99c6404a26327eaaad3ecf883fe328e34c8e553ae19a0328b6f549d67beeee13450ef870cf62ddd61b3c4cc08d551f18d19b67249dec6230eb52663e7237d100dcfea9119315cd9824b0e3d9bca06a12ce898589d99c511c537a9448ca50a30fc73367fcb482212218b8c6419060520814702f0733e1ad7d53944bcd8bac165490c5d70f278fdac0f2c213efc6005ad9396128308e2ce9e33b41fbacca4266c500433524210307d2b1807408cad5e38c843ce6c194ce136bd0d0e4eea7870b8928f0755b765019366c009d86b77454a7064d56cf41b70a5b886059043e71374a6377e6bbf9db6aa8a6eae6883876c74e732520bfb443d2176bf47fc610b83f7103ff6f909ba53cfd4478b61a2024dc38d6d11a9632cc40f43d88966552f89831cb21a75790d437fab692445e937ae6e117db721713aac271751777406e3bcd48b88b631b79b28a0d8c6d0687b096dc4ed3adde4ff94bd290d41015ae307f602e9d51a4e5952b62b69e657e031ae09a0f133ca1dc62830a083db1477ab1893a09e3c63d7908eb74038b700acd57af6b56b5de95d890ae85bf872b4387c9dce7602f07911fefc9c8ff4ec6136f9bedcfaa0441cf32e413feb324be9cf3029ac661d13ed0ba633116444e88ba7234a41c47f638d8b945393b1b3118a10e02e599973d99f7f0873b106c2cd243baac96b982254a2bed514c9fa8e75ce55226fa248fd9ee78e9058a4aefb53e668b37c009664f03334c37efb56ff71254905168f6b74afbba34993eda291039d5cc772d51967036c6ee562c659f3867865a0f1e998b1f05909572ccc42a57841848eb0453cb3f59a03d18eab29cfbc6a01a739462fd9c038a7ec013882617d7b1279232eaf53802cb85e757942dbd84d48e17cc124d9fccf73681d2f84b0ea30e85d26435e32205e3eea19b75e9646cb56c4ae9f9f2fa8864e59aacb926f3bb96193ccee5594d86801de9f3e5c9d90db305b432aaed0d4e4b5b7ef21d31915e1941680d9abe9534b690d594caa4dd41d0a36215033f90eb31f0cb05916e20b2a6047ef61d468f262b55953e247add46acedf8ef0350bd97587638238423024893846cfff47b9687d369cc35a936e0b2071f33e2a950c49b07fbbfb4356fb11399a5a196878a98e44569bc11043499092007f2c7cfbe5aef9cbacdbff25ae85bed44824c0ad312dcbd572e18ba66c289d951a15cc229fa0f25e0f2a276d2afc63c354ba350cd4dc95e90f115f2fc2b37259aea06c7ecc21ecfc451e85c8f573a097b7b7a150f851cf6e709b2eab461a47cf4b5dcc69d7ef14571d292f0b795f74c9f87cfceb7724a39798fd53dd47f5453ac64c1c7365e66f3609fb94ca9e928b43fb41a96719029e8b9c648a602350b70394815505285985d12d5b0a35d6111b66a513dadf854700aaa361c501d482e881d6bd7dd8b03be6cd28a38820d2b506d1e8050d0773eb80ab0cc08cc14d050e8e03d32ec04e060524ace9803a87e38220356ca3ec6af16630a3342937586a6c0fba38f8b4b66c7a5eb84fdff01cc3e6d9712a02d8face42d5f5938063e154d8b3855da6798d28fbf8abea4b0be52d6eee55dcabef3726b3b8cf5d621d2d4c425e957decaa90e977b9d533e49b8b86827028aa17d32ef9bf22b0dbad663eae245ccdfc9ee192b77fab5e4ce538cb696f1c9cbec43eb134f598a77d726607daf6a8c248b355d10fb45764f2a4012defcdf6ba5e74b969107dd133a2c9bc342b1e40ebd3dd10f81e29f92d3ea1e59ac5a5c66a6cf18c06571f89b0af36c5f10690453f35a9d2717319488234cce7179f241f8b89264632539783c5159b00a0b872c9422916cdf02489d6c265c7e1d1efd3b3c9868b0e8d783186bb493d4495700c4760a485a8a9e70970fd416b0be2772ae680ea096b29894b4e004e4650259cf8b3501ec484664dafb0cb40767482b27f4e218710b7b5d5c96aea7af82a362718366a19a97c7a65b42ea57e0c3ffa8bee83b211b46891c9045b522f11d86a9dfe0211156a10e331445fb6624e9f499322903de7c6343ef493adfe38588fef7f4216714306536fc87230b80b0e2817d2398be19d9630b7fe876d6cbc1ebf7266d862518716e4500795baba3cb0703643e590bc47c2659fab05ce4b6ee8e33c5350b437bd94ba3a606621617aa3a49fed3fda0c98fb4b6ac3fd13450dd7c21bf75ec2e012c125ce50adf7051d10f6e5d8a47be25c602855148ad75df34198336f5a6097ef04c04bdb9f0022ea7cbf78681ed6a05df4f40d9a06e6d3a2bf0891032919d29968f34734426d2e88543aa2335cf3ed092e1ea7c3a60e21ae4fab120ff24ed6ca719226b6146c9b47f0e9f3dc76a93e1f89a11cfe7ebf7dfeba9ec31662d5d00954fee49e30cb0be34970f1bfa653320a2fd07622169b6d1aa1521c162652ab1d06596bbf12236393b9ce463b40054811bbea422dbdb2c1140d651dc1acba73352ff69d17101f2f67c2b919138c966938ae31052d4fcf479aee4054c2dd1134cc944f41fedb7c779d1942058472f15be715432f3cf4ac7cd0e37448dc350d4178bf54aa9dcf72a75179a5f8bceae63d2b835121cfec79ee8ebdd747ab9342bc85d6d6418469dd3b8e18538085eecdcb92227f7f3e6cbe1bda98618dbb79afa6052cba9777f1fca9c37e0f3e3d8bd3d8e732a3da0ffc89196328dc0d558956c0e6b158b286a6797bf2d08f3b8334777e24804b53cd237271f8d2b0b7b09d9c4fba731ae1a1bf1695a5e1ceb23245e954429cd2911251e579abeb830db8b652817abbd582617c934bc5cbbe37ec00708f88f44acceba8e80f1933b05095811e6dad209a6727ea4faf195bd0ce769542e8b2e4288ea8a5f292bdfa3c15c8015e352de7e2d2cd9c6026411aae89e4f805625ef9a8dfde1652c0a13ca5a960ca89419a1c7abc2d78d1d1b58b89b6c01ef44059bd7c043e9993346efb610088584eed3716e49723cea8d71302ea34bf15f2676cb63c3e3a24ad5bfc68e0590eef02064bec1cd45e7a9bcc538e4be14118bf7aead17c16a7b161fa8e230eed150aef31da0e301fb9f88636f00c7922e3a9974f7705553c04f195d4c4171747da442b94e6d51bb0859dc606c4357a9205691b8b4b546b1dbdf1885209fe2276327f473c4cfb9380564a306f4c0112350fc3dbbcbfcac91cf330579e0dfc3b171748f2d692c42add28a67167f3a3e58d7db4d87607542fe2422fb841a1ae91c44ca9b8c0d21326aa58e927983905657978f96a0618cc45793437e3015350437ca06bcf02a1cf9f40896b861f72857dcf0287f7c638a8b0e97b69af07fe428f3381d7bf87c7337ae885027a260e2090d567f0713987361c561691862db3fa2dc4c143b534c74182d27f20bf0260a27f9a87ad0615c7fd1e08d06a6e6f59fefa32952572841ea692b074ad8e5820c79648d3d8695ed564a5a17d0deff4994a7627b1fb5bb60f69ad8ffc1158b18b8819066ee58f6a653e47c27294c6de1f967740b9a91b2e33565b59d4b0af1796118001299a006b7315c91e004332cfacc6fc46ec8a6ea7e7b6089f15f871d53a9dcc1dc527ec0ab681019f71cfecb4af73b4d01c4274873007ec9ab5a9b2b0ea91d14f2adc8fb9d1ea1192d2cfd9173b8dbba7e5c693d490b74ada54ca0fbbf0c57bd8e06d8baf85366603982367953d43b43fe6743e5d6023305e66c1f579001362b5ed85cc3b4784932f34d0a7f9eba97b1c8a9646e3d198ad77705af20a09872984f885de5225b09394df91f8ff0b28d0cfb8985b19a58186ec838f388ec2730a42a89714878927ec04addc917d8be7a502e8ea8f11e7012bd49a5793897b5ac386796c83a469762f2fa14273b3d951ad471effaf38688579ccb6eefb59decd0d53181192eb114eec9f2165be87f0dec397c07ba56388d49524a48cc8176acb5e21d93d57d08773e8f841a3c61645f84a323a78ef8d736a02b4dfac7caf0f3d692dbc1d00fefa44593c443711fec9cc061ba45108e8a8feddec5c32cb2a2185c2b9143a16d9f9da04e5baf9866d50a8906d37bb492564ac5e9e9b2775389ec1569f963bb52795fdd0aeabb221e42f12b7cd7e118f98379b18b5b04cc77a31a49f8fd61b0037c59da63feb9700d7f54a2f57f081777dd0bf0020d6a50874877b712f09d634519ee807692025a9ca280b276ac89d0cf77fdd6e512da4861ac0915a93ff73d57c3a998975eede4037b8a1494561a00a7f54d5bc446cb8a1d1c17772c069bc0e9411f3e6a146e7e7cd4dd987759d3e5d49a18fe8cfaa4e53e2383347084de20c2fefec7838cde69d1953a9006b8b30251cf84772ff82e2e6cc9660699a1d1ab7f39f9bb865814ac286e73de34269424f226769f397c7ab3411ed7701c5180a164bafdf00316e6d288f53a67ac5d72d0a127268b57080023c1a1d209110e5b9ea5637e6126881b60e69defd2081e775fb1c395cfef8c5c53b07b938016050b19b3216f5d3bba3125f57adae33bcb1e149e671a526e94954280389ea0bd6260dd992ae4f0b7746dd39ddb5bee88a4bc799ad3ed4c9073ab66d2b1aa4bd5753a37f05d473127ad8cdd5e1e0f67127e534469c04aa534da7bbbe96228d83351047bb54246e0d80e660590180ef0aa1d7d7063f34b846eda386ef592e39c20c936ced8433a24a1905d1d51c78c027512447e241052e413b426ff7f20883670304656360a3f0a106ea6907582c28a8382b863a6c2e3b1870c78c9dd1eed0368e2a232e6b4d90bdb315a22916b06dedb172fe53aa4fe79c21e547e5000e71d18a9f6f13a42d7261b53576b2d06b7a632dcf9315b42f83d1021879941c2f091476ce9e9bc2372a4cc2a4b543ebd475560aaa3e2125d50cb054265a2e709ef14b56c305ad27e7ab3816ceb71661835e4cfd86dd084f5f58ab0d9f8bde5fd796f157b5b80798915e59b78ae5a5258c5e8f5f8f2ceb9aad553e68e05a3ae4de49cd14eeaceaff67340c09d95d6f24e449526d2f5e8fb8da1e733f165705b6b2700a909ec7661003032693ccbf8d72b83b73db267b338207b33d2e10c6a4e95ee3e8ba14e91614702f23275193927acff3c968d6e9f5da9c59eef7985d4e3813b7c0e718b79593830701b4f7213c5352af812fb96eca6359c4c3ed9548518cbe15d9bcb1c0a4da9f45e706765221ae421161498dd3c41dcec5a866fd15caaebce5e011effffe2d651186727f9d32a55565a82362124a200f4eaed64426acc3f37ca37e97c0663bfde7c9e050556d76a5140d38a1823bd231a0519f4771ff94279216847c5a9a272e956c9a8490b4380d4d28ea3f5594b5fa81831147f865d27be3c0afc40410c3d59532ad5b97d4116701ef0e5a24e5a34e22e61c98888f3e86c5cf4adc946d2e7f49f32ffaee45e4ec9f7628fcaec3612a7bda2c6e3cbeea7612b8ec9d8bf840d077d738ed8e80cbfb5a35054d5bf4e310a50d8bb4c682c78cd3357369eaff8df4fbcab3515d487e2ac4d4f4ed1373631eb18c5c69eae84db5a440e7705917b78a7ab4916a22fe6462e859fa968af9dbd58f4db4d4c0454f40ffb9ff8c0172afd6300c4c0efd3f362006301504af637b8928ab9e87ab5bc80cc53cd5ad415ddcf5f8f8fb23d1ae8a455d89f985c8dfd7568beabf1d9e94a49c107ffa0cfcb845b6ab373bde2e4ce3a3d0808c3eff3e52945082f8c5e52cb2b7933daaf34233ec74bb8dbd1a6a24b3aff4a20de6492a8d4a90eafaa9adfef243abb1101a4903c979424516739dcdee78cdb118bc2644fed0b378e3130c4f05b503a8d2e04901cf0dfa091e737bdd9c17227451dcf9f3964a70d0746c359a7c4d11c1801e908ef467d6f9e59391933078e1b0a3f1b1e0a33e6b09b8557cfdae23ba874e4397c3bc8e63c517773565da7d58958af107adb93be60376b7965a60686312658fe795b881c550ee95999fb0cfce7ab6ffccb0d7b054edce54e8697ea47b209c9fd68f3c1cce1f406d173aef292519d2d73e0b145cccae3a86ecd43f8cadd2621991012a6f11793e39c6c7c2cec1f14a02138d0bfae837daddd95d4a79fb009ad774294a7618380da5b828d0fd61631be15cf9daabcba4479690a13ff03245178b03d2a1e89c3ee15278d5c32e74e395a5c629ab863e5c31b6e0270790089fd6793755f7349280871999f2c7178d62c0eca689d2869c2e5eb60bbe3cd21c91e779ae9f6beb3de461925589f781272c27b18b8cea5eb7aed24f3068e594014072403750c36936a05933c65209793f6b8225a3fcc326fc567c8d7e108b105f0fde3e81c24016d78676b84ef75860c00cf6914467d93b9710bd9c0cd2e09063cc6c591d3dcf90e076a0828d744e4ad722a28eeee2aba765d426c27f0dd261ca89c6ee66e2ad960a4608ca74dbde817f9df66c8f89482e282ca9f91a83f468d5f888dda3117d569ad405ca8af43836679f13cb3e8dd82313203001634a91efe1ec5d2512cfae6f79197698cb201bed68c0b2f165347b6d76caf50ed5365a0068ed6e992101e2091a290d1b02346c422939abad4067ae2b0a27399061e57b9cb83da5fd407121a0bce3f55ed1b096381661ce7f56574f6f165d3bf57497fb334d4eee030df824536c14f91b4ac6f1ce7c4d950ab9faf7652a13b500a42658a8a1c36f98440f34a6e03f55892a81e395fccecfdab2d1bd2f7f4956d5d23c9c3833b8d83a74954fc8a5496b8a23a455b16b24e503253070f4eeabdcbb3d23bad22aaaf3ce0b7265872d068bf8b07bf86b11c8fabac184f082c7b6cff389f71281eeae6c48a639d5ca984455b61107984dce4cc395a6cb6cb913738ff3268b66c8ef5b9586f191cba991a9f7d059068f7fe6bb0ebb3bbd77bb8689282b3637a1ec7a0cd60b8a6071396145423366ab30e773d9dc5acc34f707b021d115c32048eb26a52a72034e0ddf55ee58e34cffe7c70ceeb14e09a4792c02bded3b691601f5087b3dfaf2aaf9ebd1c5cec79ee2f2a22efba377d1e96f913e6b7cd45b9b99018e3df8448c8399d66a59f0abb2a0d1111437d1fada50006b272564cce12da869e4c9617dba9ce1c6ad8b7c32dd08788a08fe49f04e25334251d6555b61d519ce67ade439113384b3cbc88a331a2652de1233fcfee52d8586e881270efe8c4d1b927e3de004c667fc9b80ad23497a6c2972446abbab2fdb20565d3f678451f60783e0837a1c5454b1798608d354c51709dd9a8fdd100d1d90321a826e4886f8e6dff6aa0b5c35eee515821a480fe2b74c6e215f6ba4d062e7f526ec19ab72cbcd4195f86a0de089718a918cdda6d6b91e168f2a35a2edf07394b08b64b0b18e195045ade89f827e0e0cbb189ce9c7a517d10b131edfe3d8939a4dba127d73c8817a6839f9c6575adf8173111ad83753f9d35399b9fc742e01da4303ebaa138292ee6b0d94f7aaa5f0ec2780a85fed551ae1e9aa3986e31e2839fba05487e0d78847fe98d575df4747316dc4d6e18ab74324ba24337c4754f7763110144ee61e50bb074bbe181b2a0af75dbbae11d8d3b33dc5cde44ae32b7103b2861e63416bd7d4ad4838907f21e353d50ed42eb78cb53134c2e4cf8becd8998cbe4571426792e8102a31e7ad74825b91f2727612d19ec35503bca8fd252b8e620f3956affe6fa3569504ab7c1e47781244946e0fc47e4bb6926c285df807eec4a7b02c79b6e87cee3eefdf0e6ed4918c115d3e9af6a60ef7a895cc0c5bd42007e14f8b7d068a1fd0c4a4bc84fa88bed68c5560ddda60fe161ff2376b2437b52e2a7b3599920861661fd9bcf298d67982f7b26873d3c7fba23ea665fbab7176bf1bde2a44fec654c75fc1317d168bd6bfd69321994d777b9ccc3ae45f27d4490c4732fe3abf272605478c72b2e0e6b2d3e576a60d245ba61c1ab4055becdf591ee791fa92ac30ab6916ac484b939d8f07da92cc27a8a4f71bde2da30bb7e8d1c8a482f56b6419bf8f85db2c5240a5fa088874a5252d6487d2e6483c8690eaec9f008768e403f1bed8790e65a855cb773115eecc48c36a14619d72bc5bad436aa3db904b81c3e6e2073d7143db9640115a7a3d650c0600ee9cb418ec623ec5407c61d35d92d723303a8502a5a42affe77fc7fbee773a41ecddcd04f603ae332f41c3bc3fbdc89ca424b5154f9f46a5bc3c30eeb46a0e87746c39170a3aa87f94607c3a568cc798cb56f41e989fc2cc6c8bf238c2f8eb1cd16f65913cdbd56c71bde528bd3e4d8e0e2c8deb0e9cb22a05ec84089f5925a2335e88e8aeb16758e141ae1bbcee926cc05e1bff2b63eb6cbd1fe7132acdb7d6a3d89bd46669cb7f1d2d6e25a7495bdb017798a1a7b2232937b2c76e78c4eb3592559fb50c4755f533f00ef3857c44384efab5c9d4ac3379ba494d83c58081511dddbc1a6885a348727a30e4ab694e6e2d529949946f8a0ffd7a2596176daadb2b79d71ac9bbdf0e9c9b2481e8d255f1a95e6369500fd38498b580cbe19e63a51d8c97207a5c51382bf878662e50a8944c04499972ac0645e9be4aa9bb457cd047151843e54f948ae198f5865d1d3d3ecc3e49fd821d09d045574674d884bef89d7db56787a22670cdd0168005484a93568698b3f749e03742237dae4de5582dd7c2bdf4a6a6ee2321574653fe7e46f5dccb2d26361412840c6a0ae2bf294ae9ad3d1c2b4c3f603f88b8fa8262f8683961b865f13dadf4d9591e74fd61dd0653c89360a05e6a0684c3e554098f13450495a3bec372de97a5ad55c3f238b3679d7776c381c1b8e1afc7d9382ab6a7be779748946915780b1242bf342e3b40783dc01089e3007d658aeb0e167b019345ae9953a4447b984ff891104965f193238bdcb02df734eaf97982c89d0448b2732d03e6c4e1b42179406e52a002abaccc93acf33fcf4946953b27b7d507e72fb219dcba26571e1fffe16f50ab894215cb240e1c1f71c1ef1fef724a05499b76ca785fc1fa84816473e192199600f89d66e1212ab30808b09ba7e690b35ff960aa90e7905c00de4e8b729818c0645d93165c966b886c522fb714303d9d1d8fac1320d99104785ea784c970387b7d62818cc0130f820cc5411221fcf5c6375220fae86e49b518be8e5db71e3d4cd828ccdba4b706e46f40755465d89df650c7b853568867e17e2d6b55dac96846a8c98db798a14d805149bf6533e7f6b95d5dd2b2524ce967adeb91d98ac6c21f7363085b92077c1f7b1b575eaddf0ceb7cd971c6d8a6a6a7d352ea06f2cac4f1f4de581793f9592cddccf009b3ea6c5eab992a09d32283e25e2720fc5bd7bf39e9c54b4fbd1430f3f2c94ed3278de1f93cd4e533546fa43a29272abc48f37b86d3a5350856ac8f0b61cb947f9427da51038b3a5988c0bba67e63293ba9451e81f6c0ad24b6e157b3cba7de633a462a50685810f76ba6d8600708ba56324ed4f38f8e47c08ea32fcc3b3797d5f553916700fe85d795ec551c0daf239ffb1038cb12a197bf56359c29f72bb68f0a9a8394125ac34b4e87c274721c12b6c3e239ab0be18c639f7e615c9170434796b4bf011708afbb9574c367c05bc24f1f5b8369be6eb2e8218ad91417be1f11f179fe51517a1c1c581bc67d1014abffc89846a5758c05f8910e4fa573ebd852ac4f8a5c5cdc5ef4154fa9a6a53725db75b01306a22da33dad8f791d63bb74bce46b8deff4c2280a93ef212311778b18b16f95e22ff223edbd89a844890defd89f06302bd856aa454e82b6ae05aaf349f4186369ee33f524f14c4895b7957cbfcca1b7574c0480e855d9549afa73b8faa2964987baf8190c92babd9c88074a0978b60b463d74b8173be2701d6a2a5ff7b027a40e4ae4d7655675395ee4ecba9ad5d1fcce5abd840ea367fda459d679348bebb82409c8dcd6294d9b4ef52872e2744f10f7cb3180ae16c7324e865aa49ee26f6bfc5dd55adaada4997a0fb41816a246da9228e832916308cf27193d5d1b46259c0dbb71c7259cbd93e7264624ffcc38c7a35a2ded0ade74274f079abd3cb2263ae8e78ea0f1b83986d62eb7dd15734a10f5c490fa921350451c4cf400c8e15cf23b30041b4d726f731e238070f36b8d38492be98ecf5b2e77b63639aaed6e126a060d29e4c13f13cc15f1205921317f8589af4b162abea76becb7aa0fee4b0c7113d746364bb01f709a8c18d34fca5d39b39cbf2ea5de3bde5dd9a77741404367db2b42b5cbc93e5bc3af5aff2c3b1221bd4205b05c3f3a5267d12183531998bfa386a0bae2e8ef78c1ad5647a1c4632ceb24c1e8616748c459288ce607da14d09db49019e113186c08792c0527c347e623fe1a32c10eeb10a0ef0f452937169d1b422d6b0102e11c4605b99c8a76ce35ef7ae3bdc0e7483fb7f7ac96485751d9f9d9affb27b7bb7421ad93ec19de940e38fe92065b65e7e3a59aa3f32ec64c591771336de2c285ed67872aba42ddf0dff2e2e91f0d863d6c351525c935ec2c6d700b07714b7d6d70cb69c11d604d35172879c2fad15bc1e1eff4e81cb41a69b3f4fd655587292ab73f593df6aa8f6f97322c0b741db1d1b62a644491577a933edc992b34f7ef41ed3bb418b94fb7edefbb496910bb3ff41a680a903d29a1d12e41bf586264fd778301f5ed1a8437dcaa4bd477e0c28394ca2e3e41c6d82861e598a73a1a0aea877823448dcb146c0890b6156942eb77f7780973deb8449e0962951b75c6ab1d6dde2208e4687d114171a384b5a80d1292a77c73ca7999e79347e28d9b684da2755a82ef228e82a036f7f4a817ccd62e80440a352af8453cfbcafdd62292ca72d440da26ff901af1a34de9e8232319e95cafd5e06e5d31b43f5cac9da81aaaf2d7072cac3abeed4525ffbf1870352293b043fcd37cd77e778f6df065f2f49cdf0ca4d3f3e204f2564c9a82ba828a0d5eef5d715b980ff2901f36d8f4d74017f66adb6d8a1876e6e3e3ca19c7443f83881dcfb400b79d0b3fe9287200a0e868823ad833eb5d4239545238820fe72a5fb3b4f2c89369abdbc07ef0bdf74181471f0708615b6d831192ab3220daadf1af920795a56f807a1d62f4e15d3ea05746a99a9d16c9f05bb5f9e67ebcac6d1d2a4de608abc5fd5268cdbc3092020a7ee61ec71f187f19d8821bc28b110132baaf83b07b416f31b60ddfc957158ae04f0cd1eb3c183981f4fe3af0077d7a29cdfce18693e4a159a181c4f3aa66fd7053fb9ba288911c8bb39913462e7df3d9bfb57342315ec19fcd3824befa52a36483c14304794a22c9bd029ffeb53a8e22878d1d554c3df3ae1ccde68cfbd445e7349dfc5deb315225e13782d0074da6c807f1b7439b8aa5c0135bb4ce13a0c9b4289709403ac0a6c5c284f63bc81c2c80c97f3f5ea8edb188311d82b606dac3c7f1b287a55cf9b897711ea6c0330037b387b04bbac6759ffce2079601ef06a27be85dfd96803b2d6d625d118263b734496cc35277add1df194f6293142571e5c5ebbf41fad01f798b8237e311896a14fce54e845b7e45ac53320f998bb145cd2584f2e8eadcf008eb567cd3e73595cf4e8fbfb49559c4b97a48d7112ae294436a0cef8e49ee3c315da444ccf54dd6ca517772792ef4e74196fa3c6c5c1c3165c604e1d6af617a6149b02646108789ddb6bb6adbd83267cc6dd2d36ae1ac734f448f74291cd82620def84be36a7a78bc8c6a930bfcbb061b72e41b6e507cf8fb600322b0fa38d901d4e560b5f10ce1d1a0b47b89c3625ef8b5b8b7ba4f055eaeead84aefff634182abca55fffa1474823e4ffabc2ba17884c04b4e59dd2128df453479d30a5e7e63b167bf4b3f5fea2157b438d78edc7e84deb52ff47ad93ba427b75be78bc2f5343c492a1a847f69933cde96a975bc88ba5650a9354ba34896eb8ed599e6bd00ba929d2008850c4788285326f4b9d982444d4cfd1cff6f0650ef91e51723bb72d06d1fe695ac14e875f4f8da07ac675e882231c31136be1f5af2a01b3f0a3f7fda13c2317e8136dca33aa4679720d3014ca25dbe536f337b94b4b8b89b9800af4e33b0b15e01d5fb37eb4b5e47cc56388c61f6fe3a94323d828cf46d466fcd776bfefd5528a7af8b7812192536d890bd8db1609f498146b0f02ffba8c121cd5ad447f36a35615f3c4753c476467f3784f4e513d5e2c6b29bd571fe1bddea6ad1002cdbe0ffd95b483f9ddd9aa9d60809a520af4109e62c59255e174d59c39f3fe851fa6c07511506fdb51252731fc411db7ee36b802a4961ce1b204bc8dff64971872852dd14880c44435862f0b68ce48398e468a9c02f8bbf13472a52d1f04950866a4bb2b740de7d33b090c61fa4aff592a64f56d7df5d1e7005320e551b2cab6525afb680470bc0bdb3ccace7897fe4ec0c55e83006cfc0d282287f6b23fb1f388032078caa03f1ca434e1845301cc10997ab41dab1c5b8eda92549c24cda8f9aa0c256ed1a05261110f4ea63949f2129f7d42d94530b64ae1f20bbdeec49ece12245367ef591c783d81b0de83694e770211c91d86e4ee57179ee19d4bba88dd32d27568b829d9b929a77f983c2b0ab47719b5b940781326f37035918e218bae2bb3cf234a109d772554eec38463aeceba3de15f4d30996878a80926e5a867ae4a68784cb9c971af4d6333bd70dd056cfec89850d310f658d484e84df588573c6e0d91c6e1a518d9775d0263d682b22655ab05c88ba7a22b79153ffbd6a79bb81212bebca737720a1abf7d7a35e6f8acb4f58d396d592cfb069eeded75d2ad8b80c8a9cafff3a94da50c258c2ef8f2bcbb71688d89211e04c149bfa6a7384c82be31968614428fc7108b01353a6269fd97cefdd8c72cd8b84f01515c26b63790a7d01cd94fe62485c8c48d46835e47d2499f07a6a670a13c1fd36d04f9ece3703554784684daa83ae94cfcea9b24c711c3de00ff13d09be2fe45fef94654e14053b97cf7c68f5e9b1c3a375c14560cb2e5eb2c655e87177a3d3b69ff125d0d77ab951ee1c6f8de49728151e20eee4ff5092b20e7cf8f16d7868bac1ed985d4650023b9864a2cd30fa94be1a129108befa3c23aab7da2cb8165182d6e728b8d8cc74a71a050083c5339f0f5dc3e919c87f110b9f524cafbc5df314f27aff55f56229832357724bfb4cab3d375f0fc4d22aad83d27b8fad277cce98638cb2a0cf0c6b4bcf3844b77a7811986d3aca0f16271d0cf12ce3ca00dedf72b576057831cae8ee9d7339f3f09f8f406f88b19e10da0c208e82c0f243dc9bf544763cfac074281e6762f038ae6a60d941c1656c7b642c07493160de0316464627305d18f1f33dee0077e3bb3c752e3ee61fc123ffe21a4046f3fe8e41621f181e75d8c3053e802687b5bfac1fd90a9acaf248c8f0703b34b75887d6bdf9b4de8ba7de0a457e53520941ee0137e540e17039cccdaef376a043a2b353138620a88c7697f11386449f5afdfc91d33d6c99f0de831ed029b7b23c6e9dad9fb78bd656f6ad8dc1a1c2e7a9d63d975b7bd6ab62ecbb96de35a8613331edc562d3d8be91c4788aacf38e00c44a47a0f85e852b6b759cdbddc8d0f74a907345b9fc33d1e0f156a100550b9b0c30106a9b1de47a24e71f358538069f5d0c1ef2ef53cd44951768040fc6b0a353bf717c9ba309f77e45a35d10000fbf014fb48654000b39655f4bdbfc0e793a232622927e77aea82923e1ad7983d48732be28be9a0de02d42da9d5febef03b2f4a6ecd6b220cdc63ccecabfb0e93ceb71b15c5e523e4c6c57ff24ed74856bd4b43c69ff0ea010838238b712852173d9646748c5a1276ea074b33bb6bcc5f9013875389ed9a88b1cc6873e7e592c5619fb2eea4d3fdb3b8004454e73975d5376252eb98bb39fea4d2f122bf91a1de476ae13a7f191b2edf350ee29064887920eeaa2af056f5dfa5f59cc2014987b67a1106947f495f6a7fb20e0593545ff6b3128834ae56789083e4df9944046485427f215699f4b2699efe8b0364e59743b4ff84fe26a94c56a2c05823c872a92beb6cc1af75f102617fcc47239c371ad78777f849ca4071b08e2bb567c27a8180d0a30673f79ed89c71f097b0e9d36e92696d003b2de67c90208957fba354c618e601d522b4d2b6ebda99dede181f35b9b12db0bfc076800b72480d1fd4e20f5671b17c618fff5f657edabff7482547f3b533edac34f8ffc3827093cb41a18c5ec473f9e3ca14140879e747860f0d6eae80b1754ed7dffa8752ee9aec39c3c662f84d7cfa23d3846bf7470e63effca591a84e4f8e82b8c7ef5bf530e6bf85b1f83f6f34135d7f0fbe6e4095eeb4d553ae0688681d84beaaff9a8882389a2af864525c6e0a674c54e53d7021a0b791c171cd518c7d8ee33e19ab2797383cf498fbe4eafdfc2ed74c2d38268fd58568587aaa4c031bb1fc8639fce1a4f60b283f0a92ccd776a92a4e5e9ce860717f174b3b5d0349bd4cbec3b992f0d14e271f4f1b147df1be3201b4e1dbf3df9b642cceee836a77f11853f33fc8c528d22499041c1a214d2edd0c921bb075a1fd9e6b805f34b3e053d09443be7ec2ee6d5fe3ecd4714e0f4ea533ca6db467940b0535ab5178d0215296c6f140f6b4afeaebc8fe209b36dc7e0ccb1fd0740a4a8057025a479c0f0c4072de122cef8135e5d864daf1199bc034478b8dccb8d17c4e6fdd74d80437c440052a50d062d94c9a041067d2af60656bf0bdff0651e2d7cc174ac8fb892e0543d3a78fb48a51af5a8d1c2fd1e74f9923e437181298a1ad51e0b493984ed278c630303fba47b238271b1a6490aea3773566a9ea61b9e138f9969c325dfc73f0cc62139c3566f244a688d51b006aa7b820a204b049b54e4a4baafd0174d8456bc02272c2aedf14f32a0f0528e751c67a45d5aa8ea0a9fd2e23cc8e712c5ecdf27742e60bb44c5f70e61b8b70da0413016585caf253e0d4094368a26e95658c0fe6ada14d1976561aed90a28c0fc5d56a7ed84bb62129bab8b340e98a6674894016147e87dfcf7542875c6cf128883f7414878bd09ffc71bca28b3c74bbf61efe19b67ee5a44d5fbe19908398bb71a65683b483446a43410eb0384ee33c67e21f34f29b6debed2fa74e88e538e9044e383843f2fd7e285d5f943767ec1c2f7be481cbf2898f9ae5f472ab53be291e34e14191f1fa6f3ebaddabbf02d40264ae1da2da10fc2837d72ad22b8abbe0595a0460f94d4c843800e12dd5a13378187365a35ae5485d27d18ef05dd325e1dc97747efda85589f7f070f1f09bb90fccf87b2334389effafdd1844641f7a67efdeb22741a149543b9a2cd12ff35a061ed5f423965732697324f396a2341d60acee1dd145ae729e0b4d8e89a589ad0b298c9b0a76ccb1e17700d41951516e5e62ac657e1f3d291b2487e530a5e3ba25e6c2c74c973fe9e300255501ef218138d1aab85a012503e1beac9514ce65b54e8a111b84e54b54f023074f308528e8480a587c7d7b24c9845d8d7a2483fb4da34601703ec917da46e8808f5b4e814bf19f00f882d7d9f33270940823c558c1a4beae750968c8464a625445c5c5e67778658b390cd6e68cac397b511c6693ddf603957320d1cbb9c86412fd4b67f575df7e22d602c2e4f69a32cbb77231876bdf8239916927ab900c969f0d61e40e3755d898c9e9845df2ab77458917f4ff57952cf985043c4367da876e937a30d8e026c609fb626769af16bccd3f10c8479c3efa34e4a6e4a3b5093c594acef9c3e10dca8b90dd6ead6ad4bb198596ea5dfd388219ee069da7c6ce1c28ae07696a2957e3aafa560338c92d29107eed3bac78040b789e74280fe8d75679f43269e62c833dfcbcc664cfc53c2e539cd8abcc883e9551a373cf9c6c558f0eed3f1ac5de0dfe7e5089df4a4d34c0d695cbe9f7bc5630cd6530dc7ef65e5ed79e7901b81024abfbfb91ce19334944bc354c518913a2c638379db5c0845fb9b89eaf2cedca80b6691fcbee4d115bcfe67b153fd255df4486316d9372c26c92df3540227f8b049b899f6e55fbbd9a80a31a44c7689068b1ac7050ec5a1a6d425e50cfde69fb40e056c2e88612e9eebb475870d68cbf2c8e42026acf307f9a1665560e5e17f2d8deed55bd301640f76ea452ab1eab26a76c799522e7aceaca05b4aa99c710f9eef458e6b6eadfdbc73527c3a8ebcb947f126d2525583490f2488ace67b29858a619da0acadccb49b3deaca16be91e3b681411eae2c8228785c2b31ce22d26c68862da5f7c13ded151d034a53c590ab68a8f9fb777c19be33d04fe61591f3bcfc1fbc69218da4226d43980dfb71f5f041768093b083abf0043fc7630ebdb8a485be312ea0e0681b85e4a795bb7d86ca2ab2d8fde89eb26c51a5cd8ee72eacfb1467480f62008d1e815c1032299d78296a1c62a6f54ee74345782f1350da3c0c991a13690ba09beb145a2c0beb144b79e89756e5b789cb0af13f5087514f4576d8e4cdea96bef989fdcd4123b816cac082165b3a1491f85a4f8a4811f96546a25458d6a60f4bba9e3958344bc5d6bc66a86381a8d216e12ccec29da6f6d261dc76581763191a5c53789f0bdd8ccc28441048949499c0ed6e07c9853175bdac4f624e0c1ba08a230be3e4ddda1ce9f7abc50a9a74a2482ffd7c36fdccec7f8055c5e633826094a1427df155748ae594c2e521cc9509d142263bee5afaeaedb13527972c22e0e54dbadaf81bff10ba0bc743948260e4d4a7fc89f780b03cab667c938b53702f933bdd025c50cb9f386b72e5e27d7bdc5bcfb12ec9d06f044ebc9b729f0f8301a910502de3e4bc40918da3dd1b1da0cf03530f1382b37c542dce641f0e1d3f0122f8e34bc9fba65cfaea4f84938da2a464a7143b53f92d57238bb57242c60d1f3cff5682197aea4461f00998a7c0cca58fe24c44fba67307457473e356f7e739e4ceabdb4df4d54d11a9c1b618aaeb3c57e7a7b3d45bd377d4045a0304f201c34b66a65c22a7fc877b7dbd1a6f35eef519d03c90efc632b210e6338d05c2be88809cd1c2087f2304c71cc3211a8a42eecb30d704117a8644f61526a75eaf24e6488c1475c9d9866f8fed6693fcf467d5b2e53b95498763fa56a484808699806ccfd58271b7d9462c28504952050661a5814dcdf970aa82cc409b43bd01189f36122bacc76d131acc204d3a159a0e68ce4020b4122ff4bc2f4d1b54ac50dd2cf1a727c1dfa6ed2298ac83bdfb96986db6a4212cfde014ab6609aa3eb2f137724a629a5574db8b843c09a50873581a067ed8e40048e6fa79aa77080636e88693022453d178438aa9c3ee084b5b27aa373a6517c8dcc87547152dde9972e7443e5f7bed653bcb615e9cda4886e1ef5d8ebf41b829bd61ae77b3925077a3c951fb111b1edc4df2fb8669f1656f848e559b00e62dce9cfb688366fe52f271c4b9b0f724464b79e3f4ef725e819a2572c4673df25fdc4119e57637fd5a5a14b46082cf0d8af74dcf8a1d8045107e90ec5c3530650aa93717d16aa7884f1fb25fb5dc6f2d2ac751ed0308b8f27ed267884042e79fb2c6407973ca8ec39824fa45969a726183390e3dacb46a6b8db398c4042a63a4b53d55fe6e634908118d07da8e89fa33f5cf5234b13a3ad570f5d954b2e1bd5b97cfa486c57c5271c32b4bcf3523f0d0c24f9820c2e67bb70369f91bb6886695ce8f9ccb624a6386768e3ad3e6fa77966abebd2f91732ff59080b92cc3ada58813e71a798720085225b8f7792f1dd05387e563abb3921657ee222aa496a540a2e99aa8de2638c7f36fd446b5092ac4dc5bcdaa503e3dd04fd5a289276fc7475cb6996031efca4d2e65e2113e174c5a4ef68ce6752cad5623ff516762ce8c7b5f118af4f01ef94bfa987c8e872031ddf9a46b4396c5b6b73ddd490c64025e1666a917e0876c948dd294c297dab98302fd020e001c7553a386e3dd8a29975138d21efb0286966a205f633df2fb13b069d16aaab809e13073bacf8263103b5d05491ce1501750f19796cca0bcccb1248434b422788bae97549a047504059d96e2a2b750e2fbaf0f63295ba966cc2b96fb6997263ca6efd8295140c87296075c457f00ee26394e5813317f05ee02dc2591e76cc235daedc5fb9f53245ed8fedb4e4afaab2debf92e301af9c91d52cca6b788edcba58e622d5141db775f01b7508d19f6575ff47a0294845e0a6d380e7ca2593d64c29992ed43c29863b03071584dc0e5690006397e15b5aca2b16877d68dead7675f537e75f273cf8087ff6ceb98ec0215aa72ce71607b409252d95c8adac72523bda1e44faf35f281cd13a2bf787b557e3a1dabc0aa5539777bb2a1e389c8e0c5690096bfc5fed542d8489d8befa1d8b1df288ee123c2a4043f7fa1c494dc1dc1e075b87c6fb47777009fb64f7daeb4ee0af39beb1fb0abbfb8bf1db55e0949623168c93d8333f198ef5eeb2e05c231712cf62433db04dd26b6e6df4ba009c0eae53473044de4795047230f1cdda0cd6ffc3b2529f518ce3d021c477c4e7a0d37d2fd2ccf2e5d151f405091bd9d5c572d62207fcfcc610a6af296b925f587bad79aff83d703d57d56dab5c7212ed238f4bec825db00f90e054f5292cfe0c902efeb9b26dcdcac554c947573fdf0de79b17b5f902960122be6cc27b6a3b809bae6fe4e9268dafd79d9b06df290617915acfeaeb025a77966f0f4942e418e1322ac8e18d49a7aeb6e27d52650b64598b9651a6d748efef397f380a377f5124d4f50638c6bff46ca798f57c3fa5b9356c73688eeb0e94ba099772869f3265ca75a5158fe052e00bb029510c7ffa2fb17e45993393f16038c82d5872a70334378a642e9f42b132ce5014d50fd69db3c54c4a90f6ce091236398e8350b280f5ef9fff4d2a98283547eff714097bf3dc8cdefa6a4f3c85a336ac02ebacbe4caa92ce48437f5e116a95d5db7edca4b3b35b79f186d2521d0b3962c1a2a4b18a13a5e42a3b0b4367fa54416ed18223cd6965fad1f7843542aa81e2c3d9aeb9c66c720369fa520d19656f08eb4e12b26fe4afe77ca5ba0aaa0ae4661a60c575df171b31a4446547eb235926cd453b88a5e9f6e03d348204b5232253b2bf0bb5aa531a9b78b7d0d7bc212508026c7633df6717262271ed97b5a57269324c48fd106cd96ed981ef878742b546cdea842968f43c75fb679cec37f1d32fae22dd7c4c9bdef0343d10fa6660a993994e19034714d293503f582c8002372ff8d15b6a0e186a29a908f3fc2b5350f2344175cd1f289aae51912581b2c07e1b4f8ea9a6be9025f64630e0aa0b7663f1577ab86b790cfdb832832e15975d26b7828c16c6270b2c8b1956fb65e85da152599988921b7a4ba463b619921952d6ae6fcd2c7ef89b0c267c81d24c8e1e84afe2104fcb89e70f9a66b52d5b65802bd67b122286d272fd4697d405c0e0ad6d693f033cbecc3ca877fa484856d55dad37575474732e54280d7ccd08632c0872b36bcf71daf0c04e09cbacf9722dd08aa6584202407106a8e5048465dac5aaab13913e5677bdb3a9fdef34a55a917a307a981e203c171d2b89409c9ed53171d2f6088f9e7cd3a5e73f6fc619d76c7d14394fc65d04cad57aae79ff1ef7bbe0e2535b6c42c63491ae82e97d4c9060fd6c799cb3fc23011317b7869bd52a66aee4dafa3a206963b36b111a938d78c3a68dc16f449a6bdd3bb77ca85c78fef7691a53e2b79422e9553406610fe088144cd9bc9dc5e5291b86e8633580d0c347c6435e14f4d4459eb2180750115aa4135a900434b063987a133b8e12650fd7e375591e73459984937bf8f44756c20fe1ab2b31be17064e919baf25d1efe14c9518f10b6a384bdcb8f1f9b15ee551cbece0760c59c9caaebd7ac0da3f7cc73525929bf96e83d75a1230d6aa4c249eafacc32907f846696f3c6d87312bbcfdbbd72dd2f9d76d5347a8bf0e0603595eb8d0c90fbc241f3aeb59a5eb23d05dcdab7a60738ba124a9e04175c11efa1fe425b2bbcf6a319e27ae56ef64cd6e6d3d3233c246d0eb106af3e428da252dcbf575d84506426f111534dba648f585eec8c1b780b202fe5c7c8265f9005345b8243087c26f4ed975b204b8b945daaa82aed73da835a49295cb47a97547fe4198a433756901032db0d0496a59465a5439a57d5cf677cd4f28de5f5ec01be206d9e4d805902cd6e9d17c9b09d17fb6732570bcace8073a60becffd37569725469245dbc22a80fc6d643b9c59179bf6ea0e759d9b7332060aa154f0c2517ac7bbd0e4fe0c36a54bc746004951db719b51dc989ef9ee9ff35349b4b58bd668ec230c2dd156d43546737ca2dcf83253ee2f26a326976ea6b44e6b58dc7812768684a08363931c8f218537563d099ac4d79e20c6cec5d8345775db91043c82c943fc59b91b933e398a48fbe7033bfbaf68ede5b8d150c954e7248431726cb2f40f461b1b0ca4ecf26c09939dcbaa9365fe23c68a4ec1c6de95d42edc1eb024e14657fabce3db16562da70d472a558ac4f0c03018e454fa56129546b46ea0629eaaa3327aebb3791019644895b3af1d1f2481d50b96cbb9c36d882a72be53d72b03218ef18469088a3ec026cbe51f1cfe40b178183c87a6447496509d8e08a97ac662ca3812564dd0fc4ee66ae9b9447cdaa0d364b2346dd86df19552f3a91e952e118a805e281327e1daa16c80a0ef62b464af47f898527e50725f6dad2a632bae015d774589259e99d9ccc7bf5643e606c40b4a42b3e8893e0b66dd2f0082a63a12fdec36afa899240dbd23d89a54fa412b7470698a4cf0f9c77bb3b0f2bc53dd07b1ef984d30124d0d0c16eb5c128da9526fb897f9f77fac33a6c4181e80363e9d8a5eccd6a72cd28ea24e7748cd21ab7add45e3a17ad7515f0fc2a7c0fc873d43f0657c456e315a454265651932827ec21bda8f409c240a512eb06d77b10123ee97f6487737a398c14bdb471e9adfe3f6c637d7ba376176203adb8e96473ebfe7fcd30d7f2e7e8bbc2e1efda803d52f91959a7bb3e4bffbc4693688f4f7d6dd7d113533b9a9fe4d820df7d0937183a28b7d1021bf84f3ba93d300b317fae91bbede689254a1910fa6a6f5c85be7759e76f0f2b1466b86583f7661e61df8863bb18c2d1d3ff9e18ffb420f2ef3c223280ab1be74adb84664cefea6a75eef6ecff5b060c91544f648c7f44be13d4e4e28d221ae0f5e5682d00e1bfda72739803fa04c32cc3ad62a690e31edf183a691064d6cef23d33f77a9c040e816d2de66606cbf05bf45da25aa48a950bf4eaf880b6c3642422293ba3013ed594cd7a637c26fde0349c96ad6785821f03a2d7b62f7ab122ce0aaabd527776faabcaad471d8d59961a6744595415887f1577804dcb7f26f14b18e495248527eb4aae0e2b49707fce1ad08ca5bc3d6c706547146ee59f7ad0a3a35baa9a0f18460690ed03c9afc3e928b132c90e376b5081bbfea7a5f24b5ad91c3f4cac8f432a46be98e9464d9826d089b9005194f7590a1d025ed0b8fb19d095c7ea621eb1fbc0c018263ebab0efbb949c97bb19c2ccb0e90206a825e64a5cf3050dd4cbef3bbe90d6035fa4d40bcffd9d6d618924fdd67da731f56876222553821546e244dc798d43a2a822aa405edeb7ec5578cde27b1c337d4d888cf70f79d6e75e7507ffe34c2797352006eecc5307e1a7a88108fed2b4a4fd4ce306a1e7faf375abd38d02d4c1176bd163b8c9aa9d2daf33610ee482625be82494c248788d6a0d0e92790b54421373ffeac05a43f299b025259d3e521caf16ee2a163babf6d95a3d7dff4406b38998d6a36624aba835579782e36f48ba6eccbf38e2b21a4e45d75a8c68b152ad4d02104f923271575d81885ec5cf07cf854c24c6b269dd2c9093ec4fefa911dfea0998d7a5ee6d85e3e340672214b758fb7e4baac259fa977be7c9bafdc5dd762d751b133049619d4436e4f57430474dc7870c89acd58571df0fb28f76ff37b52caf6bf3aee57d27773e5a75c1a1fd0f03b95afa9a3001b61f66d9d211ea3597d4e3dcf9e1145a4422825eb3e54486cf00250553b00ef02f203585d458fad989e6a01ad8aaa4e05548f1c5ca26b957f76092caabbc565d38b106e8f1ae71ffd07f316b6dd81ed4aa0bff4e0385dfb71b163689706f30befee93d7e34b8d477e0fd8e423ad9ae10abafe15e7e804a910d9ee0701415b99b4b36dab55ba9757d53c0ff37924951907c9bbd7680c698d8e39c35d4fe2ce7499f3fa7b120fb7ada26d1a7b2bf955e986ab64b6f103d4ce6e6e1dd8955edad33d692141f38e3f83c7b0fb44c61e2cc6655c182b67ed8bab78c5de80c30434d714bb830cd3f8a81b110d86807dc7530a803bbf810af39f355a5e76466d566b713f4d62b0fb23c675dac24fe351e7018fa906f3085db47e3daac4df7a90392d36206c8e0ab8e4bc521e1ecc03ee315d6b7193370726a68d694a9b9602c71238579be78be334f11c42b26f8534b7ee2706dd74735817bace17805eeffb1f5e7c6711d2be3f5ebc24ee22230dbe513f732bc4949522b0257705c8e137ec8a64454cd4833e9cf14d87f1ab51e49119a11aff6966568bb96b9bd6f756c9030cf7ccdb6301af19f5b0a08377c398960ab91e18761cfa2a48464d9e803b0c4a4dc0fbdc59af7518ce8c306fcef0fd2c8b1e87f5528416ce9e5d33f7297f4caea854499acf1d549c2e83f8701e388378aec3e90a90b3ef34ca7636d4adf73c0c6b4e948e595d4fb9a97d72543410e2942844699464a784e015d5f3fbc0c677d00d86899e928ee3b6f1894f8d003438a3c66eb185a49e391668896da406924e92fac2aac33a151c79e4f57975a8b8d4dc5d240d12aca3200edb0f277fc55dbf79a372491c8eba06fdb4c3d7973a48bcc27def605fb684364c154a0a7161d68ba6c744e564155f3b95f71373520c655f861e45a89c4e700774e932ecc47f2dc72a6cadb4993deb055ff9f2c87dc20b0f5d25182388101b6af0c6ea39047bbafad2c5474fc7b6fea31d9b7dd979c2f955939011b34fb54d75e10e5f30afc59c1087aa90734bcdce7f37351aee50e87dd1545f9d20be65fe68dc13eee4e2f95ae2d8e21ace4de81804d81162ed4a6c2858fb15409c35a48def5b6dd2536ecc829a05b2de788955f0d89de9691b8cb2378a14e34c1b2b6563dc2bf092937febc383386ecc6cfee54543a09b0c9549760e06b83c629fe43bce6faab3bbd619cea82120ec934d29ee0d3344427dcbbe3ba5d63a70e340eb2e28b9676af802962144f388bfdf843969dd2b886daee6ad65921c3eb5dfd375e433bec5475461f490429a0204d0ba36f11bcb87be639a823cd669ca73e2dc19242eac03bd6525a4851fa6aaf84d0eee690a2bc27be9c144e4f44d69e8e222139db20259686e5f472cafca66d467b8a6d877d6a2eb7d93d086c6605bf8e5abcca032f4bc6c23a1da6076a28463cb322bbb1230ebdb2ae874704ccdac99ec45680be01ab8ed1eeeaf7bbf5476ce28a4cf2787718fbdd6ffa6c276d85345ca3016f50090a26d2e2f614c9c8c09d1904e718e39002c3ef1a5ff63179b15a0a239f1d819dc07262b85e163a09b04a42a9185a03af90e2320546c28e817e594840acd8f16e874d401359568a143ebfc8e0e581d334e2cfcee6c6fb326e26d8d2eba15cf4d2bba25fb555a520129da28f0201e3906952602840a4e2112f48cab01082018309a43101de4dbefc03743a9ae20604696c40c5dede1ca767b955e132661a99124c46ebfdb6098abb8d4c9ed05815301ed01c75f6e657f841bc4c4e01952ba7738a96b0684b884549a2b6f9e0968f7bea8920f637ca654b3ddb392941618b3d6010c0e78a9f24db7f523169ff42036876865403965f66da77a1269916414697a3d9a18dc59b092a3dce24f1ae05946dad5e522b858f4537e2961deb807b36e9a32e69544f97f0639d72b1628001f0f95348ddb30329dd34e274bd3c945deb6ca8cc2534d87d44b3fcb59d9568430fc039d00fc4c79685943eb5d17b86e5ae35f658884f4f22782934a16825b79727de92bb6ebef0a5b993f5e1558c79d8b4c2e5a6f0ee807b2582dcf3bcddc3f6684d4a06a45fe7af2ca82420e689fce1419614492e8ba1cb826c66a28768788fdd7a660f0d039240420da5e4fcc437f9fcecd5152f7e0449a9c85daa22470a479026a9c23100ac397ca3bb5ca237ba532313b9bbad0b73c1e12e127c066db975df5bc7782d46f68395e72ecac62251a8f7a33f7738dac135300bc440e8af982f0a7e4c4079fe668ecdab4d053dd445d9629b1a6a4a1358fe1156d1e5f82c6ac50659cf792b38919805471855183ebffa782d9538546f8b1b69d31916e1cd6c16e5d4408817ded123243bf5cd8bd7f4d0af829679f96343501d0e095b9715ce2bf43a97059fe326c94d70b6ed19fd30866b9b269d5f6345a38f5ad0b252bdac634e2ef8f4d0f7019277d9a5f79c8af7de601f2c18ddf352cfb5cb8d6f8c50f0d0415dbc044d7f4b63b6ea5af19cead85fbee930bcc8f126b94a5521da02cc40e82f3536cf5a507b664c9bbd63a71f41d19af6a3c0ef456239914a008148a9e2eb621ececb8210c7a98f41ca46a2aec2986c64d8b3b76111c2f17d8782ddd11a8f68fefb258b5eea30d5b885c21457f8b5ad0ecfefbb1737fb79f375ed243d9d2a3f66cf9dc68558eeecc0400f2589ae2be7f87837a4a1bfc6c4e475a23645ef8bdad9f0066533a8e4f38ea365c2afa6fcc097f26dfe476061ada212446dc6bf1ca64e728f19fc821460e690ed35ee14ca582dd8a6a286be2363106b4fb3081dc80983c1d60226fdac89ba76966772ec78fc3474894087502c03eb6e2585cb96041aaa132d659e74de10324a2450b001996b51d696eff44f14e5fd47bde0d09435d0c4d6f700e9346630b36672ccac958faa97e2c42a09705a25bdad829a46ee39465fe467b040a55807b1732c11b9eadd04651bab1eae833107d57732adb5caecc3b46c7f09327b0a281ef18a6b2ab181069b3a9403d058a939b1b133808c8d352d64c91dc778ec4f926dd1c8a2b81ea9070b3034ddba74f2286b548efc613b9e23855988c1265a8e19ee642c30d91172ba5aa07a71bfc8e3c0e69d46ba2cd7b529aa287cd4a7f7531c4797374cbca0390cf7dda0264c252eacdd8adbc5f3fd4f6e01fd20adf814c92110785672f43fcb4d1ada3cee6f3251c4b4d7a48103287cdd30fbbc717c7135103749f10244f7c310189f3af77e8708978d38246c838c5ba9555e467bba031a003562e8fe876016a4aaa6f6ba49b1f920e85b717e8e661f4db6867ca423c4397eaf0fa6f043f25a08bb9ef66edf4831d888a8736721e07ff17905ba6f679263fc2489b489b76937657fb623fa6dcc7aa4ff4fa1b5842bdff3c6f73c1a2b138b93c98bfd99919eebfc800d2c733e2150e9075855cd2da5b99b8c2eeb1d433d1f49a63c71247471c8addbb293d2e8a8f1a921b567e4c0d87dac1b8473f2f3764b08bb53a2f9d18ab45cb948de3465d66f63aa8ad44346c6b553ecf413542340d2bfeeb5c4cfab305dc69b57d27934fb9b688af9d766a4ecf4d023df935a59fe704b49cd60e913cfd21ccf82ee84716e5c65d1bce5ca235cb705165a67a05cd9e792f79763dda88cb6abe59aa1853e6b58db65be21aa789d8091db66ef8e37c5209329212c86b0090b7a8485d5c8b176c208c54bf7535508c5e708f7c78b776644005fb654e8811d8e7fd323377b5e1713297d565d1816c4a369fbd8a00463f6106c1960390ba7dace9f44ba50921de22221122339f8e11a32f907162daa91035308ae8bdb19e2d0c6e30e1475a9a37766dc7de2f719700be2982a48812eff84997cb7ea9e6566b3055c9d8930c1570d407a5903ea88c89a06f6f97a843812bb98395c5a9c871ee0648739af374e2dd1fdd07038b30dd67fbd22ad9b227076b07832657e08b142179e663a371de2cbda1c1823e46a8a429f2abfd362679593dad1a7fede1679f52c2bce23c301f7b0ee5595464e6455650e7449f58732914fa4e6829403ce70827e9630efe42e060e567f1910ce9c9bf0736f56dd78b8714d3a48e008c0ce0fdce93214ba9148a125c4a645ed20e7342666c6415814af9f12ca0de8e97aeb924d0dee15902e746c6e53a414a16e25fa0d8d98086e27d2f5331ce7c8b2b3e39e8160d1a12c264246bba5d565a63993d3bb329d9e71615d840fd0d692c4d0f112185a541bfc382d4d07e5b07fa4cf07f454664e910c3bca4ad2abc4d36341124712cdb94b3209ee5dadcae00383da5dc49ca3cc1f314d0252c2900a95ebe485da79f583ec476609bf7c5c2a1bd90bbbcee2d2ede01132307c534bba889be84d5b8dc80871002a16f579d2492d180f6d13991ec433dfdc60ef12554506f8ac8ff422d1d84fa699d2b1c0eceb9289cc26ca4fc36b50f8927daf9e7e9dfe2a171476cd777d2f5d36370bd37985562dee8389728a54b61b624abdd83f006bdb941a4261b91183881d283b6ccb40f8cf851df737519390854fc206e0f2a2b5304ad716064144088ac05804a7914c36b03cf988562b7b74ac82d2106d8a74f90c24660e1afdc9c9542db42d8248cb8f5052667cef943498f3f7121b887aaa96c706235a5e7c5691e5943ad4157b2b97dd8b25fb52b7b4aeb0ae6be02176478c0980f8e1817285e54f13550d0628e26c67d48d1f6f2e156c40e5a4c76bade4bcc69911bbfcd8a8f97f107a4db0fcd9ed01ffb492e883c35a911a2a49ae97f217bf30641d7bbdf232aafede1d331c0b8c204cf0a777fb8d27f861f8dfda8658044b7937c6ac94c4de1b290a110dd7a6460a34023cdbf4e7387e3ae47d70463a05da45c6ddca0e1069ea788efc4c8e9c82e68a1d955a8484d7c0e8f2226fea24f2382389e7791cedb4c65bd3635e7accabe663470e1205e3a2159f57448580acd0842aefde8339da56f11ceda23adfd7309adf7952c509d4a4929ca944a73b242029784b41be7107b85f21e544d630889173ebd8bcb097cf2aeaedd29b63b988f357ae1befef8e2cab8d494d2d6c29233f16b00e9e47a8f87391b654f7c1def5a6e571cbbf4cd62cb6eca400c3d09798e516dd2e46845cc10e766b085ff5ef38eafdd45876263d5dce297f42497c7af228baccfba74057fdb442f1fdcd23fe9d49b4be7e8cee36ddbd5f779ccbe46cdb005aa939df038f9262e37b3237146389b8937b4dcfe517128dbe2fe6d5b842eae7a3545dd58655dbc2dc21134359b9d3b0c9800fb4e1c4b329a1598a3e092abaaa36a6398d02f71c97407c4415996634cafa908ed18f23c0d41b2ddd7efb5965d5c5a101ccdea22eb5eb677e14d4caf6202983999d5f89a561f25137a86ee987f2d054c1c9290fd2a52751d936b182a6a140f0d003a72f78b2986b0593160b217eb065d508f363d5dae81697c8cbd9153605d0f226173259dc2e34421a12eac0672094ac7ba1ecdea823805906525d6e74dde7615ee4702e5ca2fdb2506ded2c3f7744d60b5c5dcf2c0bfa3511b93f1f2160863053d4b058143b80aeac98ad4b7a061cf5e1abbe23a574063a447c4a1ee9f0e0d04095c77368ab60d8f82b5aca451371bc1228e720276cf562c59d33ceb2ca9bc39a7674786637518753dcf2f2c27b4265b3ff69f59c79eea1c733868915ab767d586ee54dd9ddd2c7f0104604fc655bc86b7a975b1ab55f119971cc9971cac845c584e324c0dc9eb13e3b4c058875b5ca4901702bb3b51f96785b077a107ee12a3d5e82dd093ec2acb21036f500cf004ef64cf8ec24fd7f243d38cbbe4493a2938e035e46134936a049aefb77504317e78556a093086ca35ad5a63250dc06099e1c4646ed927c3129e7fa3f5992165fa159d4ecda2ba66d9efa6a2bd306fc57bebb5180fb8367d8c57fd34a916ed859d54cd310f267611c0046ccef62d3a50967ba105e1472b0ef4088dec8fca33be3a179572e37e37cb70f9c2b898e7a7102db025205051b7700e455732fcd2966a3a28d38c1bf17a84491b25b38bd6a63809386963fe0ffcc8516cd54dcfc8a3caebd95e5a95aebbec488dc250a3ce49c59adf11f5323b3b3c6d5be9bd173da1f29e9d759b1d402318e26d0102a20a1fb32be91a0cb3ef5efe7580135268bd4bf5f6616f7edb3597be4ed38a40f99045d0322c8b626bad8eeb27db358e968a04951df98ca4d6b8d8deadfa5b3d34cfa964ec4659dd68a7e72e7f4dca8d9b5945b5407554ac067298577cfdfec66463676b275e6d4c06e6f505d29278d2929348c84e5f4244788cddb0c6fe040227243bd2a847d239251561ce4138c66fc8f913fe61f0c0a4295b56ea02959378ea8237548f84183f969a2818f9613bff3c53b3868b31d50327c02d7c5f0bf192e452a63382adf38106b196e24d0f99e89a090987603d9ba9c6c1f9dec1abd3f406adbb4ab435217a3a7db1a709c25048628be43b4cb671a47a192b1a26f9081bf502c4699487fca98ac7187c29ca6ab3678c2060c00d41c0d826feebdcb2c7e564b101603c3b798c5da6f9fd2ea24a839ef6c45cc1d1c649a9f384c199e233c92cd88b99e86916cd10b929b32219d2f5dcaca77452f8de4d85e24d2d542ff013c096cad9a73254539be8eafc057b8c632021825bfc304d788779c262b3b48a965adb3328d74625b1ecce21de950d750ae84b5a621d505e977d8c5269ec746aae573e6db53e15b02e57d4ffab8adbde3bbaadc9995fe9c3c82c91db85ebcb8601ae107038a6f70801e3caa0302d77d4bfad3406690e1534a178cab0b2c4e7ce5de2db479bdbe29be8ad0d542de52cb8b87114e610173a7e1a7d4e7a54998a5e2b8a9fff021113fcbd5b4cc5a57501786df312146619af5f3ac30b168a4e00adf3dd6bc60797abd604c425b7f9d81f583df47176acb068a3a12b5082cd1564221954667815a41123fb8145f2f51bd43c0df3ad744fe1d3f3cb03899ec4764b0c5771b2ee58a907c2cb3ceb4df82c1974ad38e89b529ca4c74efd00bf2221473b66f03c8ca804604c15f60bec1c5f2ea0a14d0e55665e104eaa3983d22756fd6eaf6dfd371fddf28ddb7548972ad4d0a6b0c1185748cc055c5de5a45e9d596ae2ff5fb73adc28ba245674f84305e956fd2cb60ffe05a323e3166f18696e89da919b7100eeaf59f6fe0d4670ecdfcf8a088c3da47d191cb43037ccc53949d01ae0b497ddc312f468e298ad9eb2593f1efea620693e207a0413cfddb24d5bc70f5363628ff046a7c610230c3a83c54353df0701583ff174de68fb6089a464649712072088db79cf4bbc8e970bd55eed7238e17f7e335d0e4c7347080cab93f4cad1a921168ea4ed88f304be90c34e6ae8619e800890f58ed696a81eba36cd6f701fccec722e4452937c1f421e6ec9c35d41568c7f6745d59444833e85cc220ca533c5c245144f25313c8b8de87f94cd13ac9950874427b5e2d6c83b17465f8779b7c6f570b57b333743eaab85cbf732d24a74a132b2e5e74d3fe02a9dc189f9cc5fb669040142ca290fabe912ca7ef718c3c8bea5ced29210da17f1da32584db46cc3b07408a85425f9cdd217f5585ef04e41f06e76d58336fb9dc4deca481bbd25173389d3324720005e9a4941028b3322b214a77bd08a38b0445e78d04b5f1b7d883f572712938f7e25a436222075e8d6c892d4c10f5a553cfa8b7f9345fae353f99934881bd996a660009c63a679bac2eaefaf8ba5f1b811db2e2101f5f645927764daddbec8ed6f81052a179467710b70478ef081e05746ec57842944ba71822d5d9beebd477a77385366627916a46691afd49103ecd5e25988976df6e0d5ec7d6ce261beefb371c165974732ea8e8a836f97445048d6032575020d3fe175452b421f3292287678d1c5d387ae8e3664b8c4a2c3d57510d417c132f5a6c2f773e953b72d05f4bfabf5d0f7e79f13cacc265e936b344c8f75b891a55677cbcbaa26bd5e25be38865b954958c2f23828f016f600661df565b7fec347093c75f98ef54b3f125c2396edbe660272facbc7e5d3f0b94f83a41343600a5f3b2d4465d73dac1d4223b7508807ee423ceaca5b6b7f6af743321a6312fe76897d5e0f63bef4cc40e1e2008c7c74c1996bc46fdbc4dd256b1ae8aa95b3f561887f576b9a3213fdf2145998d63de99beba2872119d7868f497a4be944c1098ea07c44dcedbc91019730c6bf0547063d5249a61957605e5e31bd742f783dbfd006d5a85b3d1403982e8c4883ef94682935d9ef1679a1ea6d05fdabe04bed5e1a8c0b79b7b5006ceea918b4d418ecbb7069fb7558663d9e9ceae8aeb7d246a286454584a460295fc681cbf91921c9e7c8d136046641b5dbe7290e39dd54009d56c34fd0d188e614c98be560f6d1f8efeb2241b57acf0710bcf0deb42a5207083d78bf352f4c34172bb48bf2334d16ac396ea6d59e0f60bf7e9ce2349ab4dac67ef6e792dda553be60767f18b38149770c9ebfc8a2d195c4f8c84a85cc278a5095c14f92a3019ca735884ae2696dc32b5e70d046737ea1d47f7b337c1b6c99f3a8f1cbd59b59bea5b393aabb22d5f79894c1dd17f014044485cee2e88ef43f98c1820414d82ef36ef31e7c4048b48ecc06f2fdb0f760387ae084b4a9646b3ca7921a679e2f85b3a65e0b3215bfda50e59fcae698776f0ebc6d8396b4b77f6be05c7ff99116b0223b6bbbae9a8ac8f91f796c0c992e9bb40440488273c9b909eae80241cfff4a936be06b39e40463b1175a5386dff6b56a74fba62b1c1c75ce382ceda50041bf411ff6bfa84dcdf2dc7242f79ceeb3d879c7db880697aa8095a61d6728c699a14a2f742372c6bc1f64c428b0bde9cdea0048e2d37b3affb6242d00cad9a11c48e16a1117add6a39cfbfe922b7e5d2375caf5f95976ea1102bf3e805b084eae0b3ae36147a8eb7c9fdfa55e26a329171444512d84d7df66145c48913ec6e0b00915fd4e0c50293f14f5cbd0678cc919fe01065addaeb30dc1b9de469c276704a4bde86d68809ba9e7ce2c2eb75430f4f09176b977c6553ab88a6810c106701499202b8f6dc489211e5198d0e2d8ef06dcb1d7cf0213a2a7a2c4458ec3ba2180e6d1c0cd656a0b3b80f925292eaf4cbfdf67da086381b354249dd7a07e5c4b66494f1ddf878c74ed7baf3041feaa623135cbaecc06902e5706fbf8c92838a02f7628f3298b6056e56923cddb1738d7ea321301fd0be272b27d90dd30d341add6cee5db64ff765dec2e808cb84c95842797a8b5887bd5afd6e18689f1f5b703b11dfef516f5ef1a3168d1c3862e87d6a6b3af98e64c406db62ab84ab72a7705be43d2a756b339e08810bb5854074c01de3d3d5608ad09432a4fe31ea03a55027633bb840023a45249ecbb9732df7d409abada1f6ef4abd5bd1dd98ad0ce271acecdf53cb1296d62f6436eae075679d4c2bf61309be58f650180cb7ea694a1a2ab276430dc028fad766398c832582d2d53ea40ed6c863d8ad3988fa6e5b462813107664f1982a55fd943e54f2f9dcc4cfbdbcec9c9a60be1ae3c376e42857303e3d5e450ccbb79cdc7f8436be4ff7eb297f96bb4ba079ca51bd21a5279dce4937b2a5921635df8945b6af0dd43056d7fbd13cb8698f7e4ea9027e70a87cbbf85b37f87f2cd4093fc689d6c41e5484b22a0aa32d615a418aaae311de403ac057d60106c3113eb057d641e9d89853e6287ab79d68b0b4fe09868a51f1a6b4f7649a42a47d1948ded2f56226a42b1aa1c385e43739371d37b9bea903b5a856ed1da6bb819f4e99a0b5821d026cbf8779499bcbe3b0a205c2c8c199945b46b90b158b4fd33fc7f07192b48ed015c010a017bfdcefbded63eb439ccd0b2b8e386dd809929a971a00d98e6fdab4735bac9e3b5a83deffe2227c4e8a92a7d1fcaf82d215211d2a5ae13b3691d99dc43c83e6413e9ebec849e897edb5170aecd55bfd4b46a69a4ad52897cb5732fd2b380375fdf3f38500d48079322166e706a8fba37e30bf7edb4e0cae4614b61280121cf505b080b38a08a58ca23a6ee49ba9b33fd51f6f082bfda93995f24e8a4e39052200d61dcf7d0936f91fbe243ea2f2ca3bdf59a23ebff0a5b5149f83999475a8e5ffddd49019f8b7fbffda71184f21cb11bd0662dfa5097eecc6e5d72c0952857743ddec750054872efe2ce9d1fc0704dc456795dbcfa10ebc6ab42b98a8b151133d255d988add2c6c7c79e33c4f09b8991415ca141cb1cc35daa6f91a477382196cf7d8907b66090aa2ac63e0a5cf19a6bf40f0cf05d0c1d7a2aa5b9b836fb77b12f9a382b5792851a01ecebe860d8b12e49cac881a5ded153cbb1fdbeb8924e6b37beecad0a1f472122b7ef2e6aa25ed268b43e0fb356cfa0033761e8c0300e5cfc7286d5441c4672b1c76347b414dea47d552d07916b21e300e9881254b638f8c111fa5bcc9c6b1c8151ae19fbc03c256d751fd4b55b81d2254e638bb179d1193e2e66aec90f102553c78d387906877a35fc95be100680c1427894e163e0b9a6957b31796c5a7249562f19bc97e5e92827f75283b4f032e90eb71857941f196097cbf683503671b6780e297203e10d814c486a179d4f340afe11cc38960df4295fb090f468fb1588a9887ec4bfaa1d8be530f1e9cd2e817a950928fcae2d62f18657634f082c409f677a7886887cb725a2e1d0552f386e3e63db7e3906c7597b6afed98965e930514008c0557729fd4d82fccc71d9e9ef2204553af17a5b7ac3de178c5c479543ac699014990a943a97e51829aec707c24e97fe894bfc5f31f3742232abc6c8dfe71113309ff8fe885210069d77a7b1178174f341fb1927ec75a1a2c50699dc10d92154c4562dd782e1636d51e1a72331965f665f39c2b85a283a21eaa544171f6b21a5c9f43439b99edb4489a32ede012edee98fe1c898f2bd904dc52f94b62beda1203af5aa9c5c930930dfaa8bab75af45c3a717137dba31cab08630e35d6bf59f56c67fb779415c922b6f12d561038d3e3fd98f538e78b77f71133527a98f3b9e4dd1809b4b2b841886d8ded45bce35b4606c4450f6ebf77675359956122cceba3e7a110cb78bf73244e8cbc9c70176f492053c3aab73fa6e3eec05c5728fa81f505a1268fd8c25d2e221da43b7b75fbc43fe2bb988a722309723aadf8304cec83abcb471fb459fb9829a6329c19f51741c165984f9d460c230f312203bf603a11dd04a279e45955494b44d5a51aaca0c40989a2ec916de6b76fb6b11c1b122677f32f2dd79edee3d27e0236158aadc685a03003dba64baf9897429f8f2ed0d995ad49aa44f1c18c537b71439bb145e0ca03778e3a0717400a02c5f7f88c84d10f46c824cede5262f6ffe9835e5c547d84b1a890e6bda000a1e67ccfdca36d943ec98a30352ddb82272ceb66a8f561d73559e21eead347f483c80959395a5e04c43bc6737f17a165b54d359cd835071d1d9ffde412b45e3779ce266e60d88365b1096157fe68d22372f3f5c7ea567a6bd293abefe3fdb5b6a818dedb600dd4a8857729ecb046dc36ec9280a9baf75dc01ee81fa620ef3e17deba69b52f82c546e5e65939a08c51055175d89c57d3022fdb97efe758586bdb4a4d1db05b8ffb6496d1945931b9c26292aa0be1465b1b428819c156ba35ced51c32bfc295fea17a1f255ee200f4ffddbc70d5e93a6f938553bc1a8b0224a5ac5093d42d2ec4abf7691bd0bd4908011a9908e6298295d1f1301d1a8bfacd4efd88b1116169c8948cba9c49b532af20016a45c80006a582ccbdc7fe77d9ea082d27d02bcdff049c330e09c7807e369511c417d6c32a397dc6115bb64639969ddb6dd78f45c9aa806f41f1c0cafa00741c973e9f9745df8b35955aae36bb2e64dfacaedc20eb2c796f39c238576d7e1a0dd5a39744fa67553082755f9893984a04c4c6ce37a12cbca0b752ed53a07774a2983c684657b0fb5d0dfe0016fd9332d00d9919dff8882217b80368ff2c0047de49629ede5af2aa049fa0066ac21c832cbf32e7cab9aafe9f6f7954df5adcc4318b3ff4a06406b069841dc362c89f957d36b632adddf09e77a6efeb9935197da3c039f0016ffe69efeecb73435785db16e7caff4de82737ff22fc935b994a148d5cf8a15e51d2c7ee986ef7fce8c8932f0469dba5caa1fa953da8ebac6805c1c1e4b6c926c6d6a32f0bc95cfe7f30bff5d8fff2566978128ece41171ca7d93f9a99f32ec5329f840256df1e194d4e523d314cd5dee349c25bb09258df2cb9a7fcfd5586a79b5fa494bbf6b2c7f8ecf4295e7e31a849ef979d9e72a46f4f14f93a07040b92d970c1fb5b469007d1fa9750e1c7584f1aeb49a180a6aee5eb955e4a5f35b7f5d891b9a21d1d8f9c6e0bf5ffdb184802cd198dab0d494566b61978e696e40d0e6c3c9ea0a6c1ad196cd13ed7128aace56e049f0e722a24712b326dea39601457ac1196f1f6adb7104ec5271ce21d650be30e71b72c11dc9c157a7a41de9d4315630424a099b8c4cd630ecb5535422ca5c8ec69b88fb28a577411f14d66a7c4115fb20dc5f4759458f4a738d8ae0f29043759cbcfff4a5531e0bae34c329d4fc9a36dde0434c33e00b2eee72752b70a981f59b866849e4f59090767a957eab99f80975acbedad9a267e84e08f6b6a6802dc46f8286a47a0a3380629190c526001940f6c353caec584cda1a8eda7caba1415f9da64b3c155e6d594c08a6fe629802a5f0f2c9e72a9d20962715cf73bdd614d6c5419c341f537f1229794d98d847c234ecf51d7c7dc7d5f229a74ccc74a42b84bbbdf202f50ba58a5446c30f612aa7102480c39d5027fc5b8113b12b4964376ddf87cafba9a4c4725ff34f41860c1f8673712aba8ae4d5ef0ae4d0cd8aa4b5ef6ba74b1a9f103fc671266fddb73e3e99a524bdb2eb64d9ce3ceabacfbd27cc3a13191007f8169e89d605a4956247a24fec4a518cb2d831340b072f4f4b1eae3152afe21984fbe9642a13a9effad19be0c3409203bd435036214660456913c526145888f5179fda15851aa3587739314db8f1c5bda8264e80ace62ac14010000a441a3d123d1b8c298e6714a89d0d0aa37cac8517351ed95ea3bb9774c414cdc7b4933fe908b5b3dcad18eb4c8a781f502def46f0f065e56450dba052b9b6532104d17f458710137d3dcce4435068ec0a95d3c7e9c08b7fd67be0f32ac0d48d33055721af2a5deba79c1c72cc2aaa53c7d3a20542e1514230fc6b473e87284e21bca1ffa2975b6e558702283aa4efed8320ec1a79ea9f4f2087a1841fada6b0098c1d7905ad27561c285f0be6816ceb1617ba5384a21f2aa173d061911c2a11eec73a2dfa3b95ce10f84a47a06a8a54d198ba585cfb596c0829b0961bdfdd108075113474c4d44cbec4d3b117cf8bddc03cfe5014cf38c4154b4a601e6bd5368bbdee1510e4741236005810c2fdb0ecb11dbcd7247c575beab1c3e3b1dd29c61222214f3519e9cf2a6476046c8efc7ec9e621859977449bf210fece2cb7e30a71d0d496d920017a595867b66367d0944a36375b11c68c727b1481f6ef79475865d6026b590a9d06060530514298d3c2476bffc2223e17d8f6189333271df1cd21278d9272300c9c88a90730f5e09888b825c558a6de181c4868426eb4da15e2ab5a75542200fbabd0a4774c9164bd36b22bc4a85a07e170dc3ca7b8fba831de1e2657e4639723bda351af0c1e17647b79a2921a61cca70850a9ee3027202850b3af1e898d3f2cb7e2da1264b37fb2f674be0a54b2089bea5899cf3f0d01be380c00d111936a77c615c99116d6906d63b0e55ac621b2ea9a3f498ee2ca80a5d6cf1f8ce73a97134995aff13e8ea6fb4a88264041757677e130ce83ddd8f580dec07d16a67b34f304e021c8b24bba5a22b98e6615495b8c289267cfb8fec4ccff1f44bc81d5a309797c5f380c9d1c63ca6df8f3c0c86f5985b1d68c15043943833771eaf817ed3ffa1a52a0456d01730c9231a1954b740c3b0ee1896ed01783c627d5edba4f0fb8d272d35f5fe7d254f0b8aa3445d358a7f22a0474a42cfd78b164159e1408dd3eaad344090448f67b54686b40dcedb937acd23acd056da79ed329df334f897e337062ad91630dec00737cc25b81fed9285dab3b03a8b14fd786b0b1262ae4f077d5e0259582f518f1025d9e30b7120a4e850147f8b1ba1a88c3d64027027e55728732bc2955a2bf4db007db8a2d552b2fa5eaf51f401c235f7dc902cbaa379d355cd2618dc01caf333ae5bb633c62be6361bafeb586aeb2cff803d92f10539ddd3aec98f6f2854c858f7dad26fafedaad773c91ca9319c36ddcb41bfa5d0b00d56bbacca6087a8b370fb63d46ee4f46623bff4f9116e3ffc193a84646b82d0442f317c690bbea0151d3d5c3e8ba6cebab2d29be9d9c0b7f9a8519fbe128b0f388386cb1805b6e554d566dda530fdc52b6bb730d033e03e33456eb9fe950754b5cb6cbfef66cec5d020991f44bb236e4b87c083b62f4f39f1db1c9051dd1d2bc765a8bb5d6aeeecd52827b5665d0da167b19e3ab1523533423139524917027172bec30635dfb62296a63eb562fe71a0140f4b4e56ef64483a96aeca2605a0677561dd27f3a2f4f0d3df12c0435e2a2796bc1d57c28aa89b1834d165aeec80ff12ec8b2a618e72687b6b033b32aff46c5a3e10400d50d4aa0faf6503c6cc230171ab3b2ca445b9f777b57f8ee65db3cff515df49e1b4b4ba42984127ad6048118b8ff0674c02e253a5a215946802cecd25b5b8dab3854597f043a1a4b66d49c8ffcfe861d6e725147788ab8c4cf52dd7caf67a4fd62864b0ffccb3c2467facfcd6348e20abf20d5249ced5de20af216b0db927aade64d2b33d2d6ef9cba4b4825df4783372db4e2f378fe7a47a812c945310e6101dc787d86bba629ef45e05bc30c5f7e179683ee48550703a26193a5564baa84cbe30397fec482ace566bb9110f1f5eaa95c700e3d79d1d9796edba5565de1a65b1135bb7f10533e3f60418efe164e167aa3e56412fb6f4d43e5f1559bb58acce2caef971ee736dd02a952253ffbed7bc00b726be64eb0bb298b918d7f47da2bb2111c21348a18cf680e9575a5c26729efbbbc486e791dbae50ac513395cfb48a55e09cc2f228cf33ff95d0542f5fa10868a0ed6ee6b9b73fccfba0a4fdccef27287595aad5ca2284751174c406a9d0790b75b358a70f238b7ca792fb442514f9bf167879e5a526a74c955088bb84da3e2a00f2c833c6e5b2e67f5a51e6e1c92b266310f84434a94921d87e7ddc49af2755b1c3e9efdce733c50bee8334f94d48d82b972ddccff20153235f409a89ed41ea7ad484e20b8fa8e5f32ad5c8fbe3315e98c3249f0853fd0265a262e4d20edf560b5953ae886f6d0986f0d0a9bfce4b5be426d921205a76b948a7780bfa9a2cb9c89e9cdea24960e166bf42560f11fbf6e7790e43d1a750e1dd32b67cd4f0bc2b7ddc3e8973c08e490f26374d2f443415fcb6779484d21d4a6e29089a09c6284ec91d61d09d3081e72375bf25ea01e282a0ca31d56d5fe13fe31efeed9e4deb2806469e69b05b11deff44472dfcbbf4e9a58584495469438e2a5abc60c169057931ba9b5393cd710d090615fd4351f64bdbe29357f0a7609310ecc7df5faa423b2a6cd8a328de865a3e3e96ef3c76fc67781105fcd537e1aba122279e58ec3073b074426b51f5846e476f240c3602fb46b7431e3bfbdc39d9dda2e2e1485bae4c16ccd87221348c66b7dd60552233f13568dbda9c9540a5cab0e553b89de86efe74d69e6e288b038434526454176c9da4301a6a16953bbee33370707a3c055d1f0b59d24f658be646638c2e649698bb36a16bf84a1486499b8859e22b86848853866241e2f2e3f81726f5f787716a590cd55073a60c59836900882feff67b12d5b5816c84e9f737c95e7a5eee1e891f28f880b9f05145bfe72c34ecc48b0b21f9243cdbcf4f45b171b0cf189e4a1cd8bfc4fadc33c95cde4d8c02ec3d6cc71c46dc10e93b1e3426ea8febdf2cb255aaa1c6e0047b415a66525e23c9093d4330495bf0c9a025dc14b88d71d9de41517a32eb16a5d4239d9a5b2459f61f792386ddf1aadb92f4b11864c38f14e957ecbe71b4663f401d52c9a698b55eb4b61b1296d24b671376b0bdadab5ca391486322c389d4cafb64f031d2fc8bf07c9334faff3d808e5c44bc4434a976bbc69ae49b9d0b27100e424f65d49f613918e6ad8c26103e19e98a6cfb9175dedade8c76d15c84db18361b6ce8d18328f2554bca239e373731ba5f75e78d0b23beb4f92fea625dbd15329750a29ef10b8ee177fe9c71dd8fb55729acbc4d6da588384136b0c1ad02b82642488c2b59f05a6028ae85655e6df22b38286cebd7327e4274e50d31210ab9a128df4603efe005109c140cef5ad4e3974fba2e2f5c0360cb8d14b68a9ba86fa2598e406ef89352fc701c6e2071403eb90edc0c852123fa5ecb56b13325ad5b1c9a8cd347c009f160beb2b28310068359eb4d7866fcce5832ec6c0b239126ad066e0aefb30c0fdbaba3c7491f6ae7c3ccfb8a2e05efcba0f6b5b91b92621fe7c1ff9a9da29e37e974d6d9e834db229322a7d995fa54145a23ddf1c2f191a8fa7f2cce658af3b58c629e36cad8eb3e53c5d70d291bed3fed9323bfb0f050e6a5804cb43d246043b9733d8ea1c9b29c06ef4826ddad03e7221da8b8b998621ec95f320eae3f536e94d2907fa06103663aa85b926c3ea5bcd2326ea9b0fba7a21a9061d474d0c984858d27ae36331ece615a650bc8b8e0e3e95bd1d20f9f851daa337967b4a826435a81d754dedeaf2ffb9fb905cd5f46f5f8e5246a999f3dea56ea5d504f564288786ddfcbc8de37cae25f70efe89ec5dac02dbcfae3e741ebb9480554addbd80fe53521162882595d56293c2c9c280f7171f466d61b80f446a639d64a41fe271f00ee3d7726f1136a35d3013aa1fa3d0da9f80f66ff340aec964c770f7728468e75319bc04941b794f50e734848f2794b9db271f82f2d482c128bd54329a086877930549b0e8416e6600e1dc34edcabb91f7c8f8dac18102ea8963513f6cce6e9d58de6a1192aef53d33fb8eea5e06143ce1a8cf4739a42748068ed4470475208ba0c7c57f99f448e6e0b8217e54cc5df6b889dcd489b6ea7a4124f2d834304cca7489cddd4bfa34104de0d242826a83277f8c3f7d3f17adf6072e1aec563120a22f32c9339462680c910380f11144a6ecf69b83fdf75109f18703a74899ed2946a2dff86842e188c44edf8ff4491d2079eeeec5685888dcc4d667fcd02ce5e475f786ab27ff6934aad8476722d054d67398b901a029af5ace3fc0a6e56745c28537fafb3697e2222936020d939ec0050c8aca20f01271dd239228eb89a7ad24560bc5a5ad6a53f1763abcae707bafdac147ecc38923ef9823eaca858b4b856b8260b81168b1caf3ee3e8c3ffa4e1a24037f5aac011e61d6be36df0828f3ca56a165f2cf58899df5f8efae7f6c956c99ffc2d6fc10df8314f7ed19c979a19bdab581224627bbe6cd2f1bab1e1865ed5cadfc06a417077a9237ba308031e7b56fbac44f0741bf4ba4b7d77f5d0e88c5ba773c89ff9a05dadb2bc9727e3e679847f081919975e4c128fa804c5cf34935afc39b46aeceaa67e9efb933a86807c4c8a9ccaeccdba25ffc04e88e566b31bf19686f97862dff7544ae5879b9b48cb1bf8b5a473567eab2fdc638a1f9c1b9cb19fa901723a403f93e8f65693956c116c31dce28c63d5d9d28116f285fddb22df4a2cb0bc24012fd2aa8060e9c1f7ffbdeb32d798b0d3cbc515c7b2e711ea0b50b2c5b8ac895cd92ad9a28e49fa8fc4db48ca64d0a82dd1c5aa15c4303cbd006b4bcf06d2eb845483ea31330737afe09ae89a04c8cc07112b7327b5584d1b937bf99b3b1d2d1470c1273d1ac35d4e7886670b36e27ad761b737adf84a9669f925137f2ca20c2637f469d2219304a1c317ff52138ddaad36c1e13a5f2e97ec942cd11d74b71c6daafa094f27c0b2cdcc186317c716b1c5a4bb94b9e39a62a14ba4311c650a46d0d6c34c0b205b2b9eeb27117cf4c833c528489ecf36107d7ff7f972499e8006270fcce9ea4909a29f17d5c093944c33febafdeba001732a4bacc1c7c996a7d97b231313cd044841c6157673bbbca95b537c4487585380c150631a29d8b31226505965155e72135c7a3377e5b6c909e16a11351b7f1be3298bc3c43c0349ee2768ed3e6948d5e54590399128340cf364d6120d9abb99c1dbb3bc4d0d98b76a699c46bb07466e374e90a7956c7b2e24bf5f84d6081d47a096439d504a1f7c8b1663f793509596dba0dac1e8e7fac8fe9a0cae9478cd2e02757c3b585d64bea2f543bdf0ac3f65c72531bcbdf153c2579f317a575e23b2d5dd1630fdd1675fc5e39e15699a94e1ab709ee5443463019df668bdf49c5e6af8684d12919b81e40f76f2282fd033d0319702c4867ca77163cea3d9fd2138aa7843f4d0b72d2ec318a69edfe2a2255ff023926f91a149be3bf2aaef6074317b99c549dcc1f72d0f9aff10c65cf4a6e17a7ab4e51818f93a8ec41690a3b7a6a71188b74b73927bc0cff24db112b90e8ce9e0850d527beb6642b1ba9960571869965c6b08fedc4320259db91112969baf56578f517c1530d4dc3b0884cbfe4c7cc07d7752b329e73330befc2f2427f5995c38a9ee298a923f15340a6ce6aeeb9608e5d778695bf63ebce23ddc2ed9bd444e87ea206d5aa18ff6c092fa89e9556bfe15d837a0a32c017d0799ef29ab93cb2b1159bdcae121ec4490410c22f9833c6020e20f29b69fb9db8510e9c2c854e772a66f8b6adc49f391614eca103e2e1b08ba73174f08ebc2e058b35fffcf7420da64f6859cb93be1bb55556cc98bac3a0f0f6e83ec0f9bc0e37479322db3c36f3b2d5b891b4bc3b393470fd3303a9e6a3ff7540516ff73cbabf96e6e5ff0dd9ec2d1afc8e9a4193b2c4273e3e2cbca7f480f0047e632580aaa8c80ae986ee81e834e3bbc700abdaa735cc42fd1ae4ef67aaaeebd0995b46a8205234303f769fd24324c06e62e9ef9ec96c8e3fbeb268e9b02a4ac7ab04a585fdbc06a53dab07d771469462c503bc9652a9aeea01e6e582d6fdab8792bae875649688c767d659db1c71c9cdf24ff081e964711da5bf05b219b6bec315291e9fc78f00bcbe94da62e88e1044d4748c30042f7129a73f82589ecaca848819a8a39ac2867fc4cb9a267b43eedd9b872542fa31620b58b6b6b04c911a4bd29e5d19a19b586432588b6559129defc48b8ccc68052a095bf2ab52b4c9dbe2197b868256776f3b80af1c6d0e2d26337e4c5262107c7ee4d0946625598b830e5b91af4ca198a487c5fef0a96b81881b78b611f3188c40adbc37b16c23be706b941b6e25ff09050d6bd4b933830df048a2517adb24b8a92fffb4fa2b631fa4a31e9f4f003c046ffc3dce4e9724b2bc8f78e155dad71007375eda848f29114bcf01dc4bebe07a031a5b603c4610b46c4bded721b9cf5815a515fc1fbc41cc6bfa1821d744f84b7be8aeb9e8d9b48c8ad495f5db18c5d89fb626fb80db1496504cb6f871286f6d5bc287469a3507c113ed4fd07f1331639d0840f091cfbdd7192c7534e8904dc079388d8854a1209908f283556c48251b3a91996e35a260383e25416537bcc24c46251ba5af27263ea246bd8edd703c0ad1e84ded144a65ab785030b110d65655f28074a3803a3823bc328a7485892bdf397b504b2be9cd317a8a636d6ab17f36fb0ccb17e39d29d98ff95998b8a5f3ca978a0ae536fd10c6d92c956fe2716648b26ca592229a91f97c5e94863cceb1cfcad4a15db3533269cf93ca9dce39b4dbe68f1ec552da7e1a078f958f2554ed7153ad778f61e9e857e4e338d4a318d223d08e7bddfa55182ab02b85d4bf5a3c74016c89a1e7ce152c80e6e9276fa5b25ec3071e4d9e2fe6d864a2d9be1bacfdf3d39264936010dbebe38b5e47ef70f6c6a3da85af8332af7e311df49e4557d45ca30640d922c45c05c45946204da24da5da3bb72c92e0859c8d2df2930a174211a81dcb9f4a7d87b98a4b4a34978dc9bd83bca63ca9acfaf70cd14b59cc3c7a1223b1a6607d44bedd8635a60cec00da7de466945937b891078dc33fafbfead083738adfc7fe1d7660a6f99cce79ab7ed714f119935d3a1abf25a54b74b01c6434cdf19e462cd71ee5e344f1e875fdbcdba770cd208385c1f606c5e5c2a72e68635af740e37f131a88d492e270b27d972a8136e68b86a122973dd9899f596b3d065cf861454aed5e909fc6833c093dcd3bdc4b1f1f97110e80651d308c7d1056d6714df4b69073d559136ad9a1119754df709783c6a4bcda584184085b3c925bb755855b0f2c3963cc220ce868115cd990ef1c1244403ef932e8a0cc4e0fbd1ab0e7a2bd8e8a960ce46d9c7da62379b7317b2f9006b3ad3560c1d0817f76fae129953af77df5f66ef10b1da6d04322ed8d5a56d8922354e4a516f911ebee308bd41cab664496fc7ebb9a9917b6b3922dd2007ed0bf974127f526ae2196e7580da08e9d198d15163c34559c9c838649f99d102abfc490bc73d6330bf40726da327659de6a83ffde94230beacc93d2ed76ad532c8be77232cada2b1dc687192bb9bff4643499355ef2cdfa2abe87ecd485096010adcfa6e4d5c3eeb54ad0b9b0cc5a987f91c92dce5c3c35ec165bb6ddc43b3716e07e0780b0cbd281ff878cae2c8ed0ac4c11606aa8ef36b0ced98fed2c691edf6db80ae51ccbc9c00a34ecbb4e91e5ce7510bdcd4081d6b0e5c0a80873ee9c1fe947ff2ba8a969c817e989922e26de73dc5e62b086cb54fdfdc11946d97b711da576f274ebb40309af476aff7463da58e8d3fb9619a507f8ff3d1f678fd5c94d91081a79a75fdb385c402edb6784ff0874463fbb85528fbfe4bcdeb7368b28c7f45b143c77863ab075cbf12ed319206890a16c02f17821ebcdfd6f250222bab0c819cc017dd9c46933c1fdccb3e5c6771146928f95cc03230c1a23d3b386f57833fd4a593b2811a6cca65327aca1f104ef565e73f57da28c94c978268c4c7a2d5811eb5c775bc07016caf2505368b985fed0e745e1494d9526cb5178eb94867ba0f50ca59dce4ad2c5bb1d2735933b02d1a48812533c53fd262fafe4dae04506922f37a6f992d8a0328b0158566de25076e60cdf28be25afcbf02456f7076bda2375a0edfb159c523ffeb87445cb59397a3477141f57af0b966b8e0212062281351b19250c55eba80bec9acbe064aae770aaef1db4b36ea241434a588edc7e71bb9101547e34e6b7c200c5dfc751cc716512a73399fcb6f4b87f347ad8912a08f16fc46a7d6ffcf6d009883e28f4c6e95c83e71689ca8023c1d9d8882cfc3387943346f97749abc015871423771f1c685c83cfb5bb5ab9d546e9641e557fd77404c6bfbae13e50fe3379659f10495764acaafbc354186df68a9dc4b60ce5648c178381e006d537a0f98d5a421a35bd6b0052686b9a0e7f2fa394d694cfbaf9ffe35cfad04970966995bf2d9059ad39c4ad2c36d48ac90846ffbcc6a00e61cd79a53a569f77be3f47b4001b3d5b6a47bb3b9fec7e4014b9b9a9cac9fcec2ced948c8feca6410b66501a8eb75b013053ae82a092d96f1b3a260f09bb66c83fe7154e036fe4b4f88ef68136a277debd208a15765f098aab2abf8cd8934ed04e2f927853448a8a3138cf59d6b6e998e1548b070f3f557ba97617d79f4ee73c52bd8274da94d759ebb8632d60e9f775d30afbd47e89f50f865f1b6d2035d5d3d6a5dc5e3325ceafae8f8d78254c06ad2aa83012b77b9aae4b47ed35e7f98d6b95e9b5333bcb2be0c8e419ddc6ea716baf772f2004e846cac6f245c45378079f69303921c437214a345a4613c1d7cd58707be74037f4e0bb4c893375c560665de17e0b369e605af800d818d5a8f2852553368c11348b5c417c27c115de60f75d7bfee0e2a2ee2b6cc645380120e57a5e1b00156e2e47c68906cdb78111446ae17783c993a260cf3219cf8e8ed7e6bd2fa5645725e16d13b17966857a76056dc3df4c270ac12cf1dddacb225cc178906e816a7b82e850c19057b3c48b235ecc3a3d262d7372939b9d0ea7acc5d69e714e614c072e5bde53214ecadf304a8ac2a2a0a20cca299e80b632912bb94ad26cf7362e7c3569f0e3d784cca1939cd33ec6fc1e0361c3a1de2ab6eb2f35e44606b1c81e25f4895d5154c12841f5e6a1303310bc75efc3d91a69f985e639fe87267da9155d2f2f9fb533a46303009e3a04c6e13a44d7ee8b5ef26de5a6155c30893cc9eb126d866307e969ac991404c1b805b073bce5b2bc7b6b68a01fa40bf297ce6b8277951d9f06a0d3ad3fce754e972925956aa9002f168adced84920150d94d4f3ac4065983829ec396f57aeb946df38b065c7f351d9fd70fed303b5622c3cb1581b1872cd1bbccb091fb160100fabff34982e93276fad5c8dc0b2b390c615b8bbdbbd66d3007cd098955529ce161e5cff0a60f6960561c70364c109aa768d071dbf124ec9ee6822e031ea8bde124c79ba17ad95b8a57eab94b4b89aa5015c2941da723e4a7eb0803bf69c05b212fcb0451c025ab27dc671aa854f34a66c4d7b74ca7c9a005861c59488eee52019be81573c40900f8ac53aedff191f8c1136b612feb47175c7f5d010640605d517165e417272d42df3d3bdfc47bd7789e3a291340026a56a36933e6d32ef388145c430c82ebd27a1b86a873dd4793dd2a13edf78c21727e913279687619d51cfa288e81389b140d900f1a437457bb605ad8f68dd553ec3991f9befa7db8788eb1c7435f31fbc69ee9b833b3821c0d6fe1061cf76305fa65268a37651ff75d16a8adce2db362a28256acd34b1fe0a219f6ad17dab4adb185d4d60aa2fb8dedcf4b8f7fbddf526bcb6127054bc0d84a34e04c9f77ca92d3f026bc6f10a81e1e107bbc5d3c18c8636b6fdf2d80be2f1162eb55a825bb0816010f2837dbfe6c9164e7dbfb5371bd82e9233565263c7482cbd935d2bc7ad4c6606749d717a55a03674c1ba9feebd0a3a17ff7f7e0c73854504337533db1e939a18656d0a68b726d5880c1ae25389dd3bcc7e3411f552dab1f901a8acd47374afdd47905bc26764147be20bbe98b6cb4569d92d23804537adac3870ec5c37013e7a62463cf5b5b7979d571ac9d9762b2d2d7af8c2c68fbd9bce7628401bd2fef7c341774e5e6a923c05791f3aebe353b0ceb27b5246180ab479b9054b9c55c6545348f84a43a77ce9e7374c2bffcc3ff14c12cdbee53d934166b66cfd71a6ada6e6bb0adace87bb0d59e02b0198c8cc0d21ee259e417d7775abaa239a4eedef8632c7405c88f0d36d287b8a83ea91036add5c5662e1ccf9fa7df2085c38ec6d09d3cdeeb9a79b2a3a7b811f734eebafdba1b901796d08a15421f44c39c42a5c1b0a2e00d0732f2d67c6d4974aea15c520dff098468b7171e933a101c46c216dc3c1e1574088582331a6d45109b7e758678faf07718a827b016b783a87418e6c4f64608e3a97df32257d340418d023f4748f0d4bbbfff974b2f584ebeceb0fcdf27df5063a0fe0178070bf2b76027de8f4c8c7a405fd0ec5f476c4a34e33ac2bb07c0397a82016732ba99bd963e1ead6dbc1867b38bb61025ecd38db79084bca36d3f22898d72c71299ca1ab1c20fa64efe5ced05ed73a0fd958636ed58ff8d0aecb75b4b533e2e4f754ca83f3e2a0b6a6ca94852a1db302dfdedb97b81d7d41e2e7aab3d8a21641db8c49d037e4b901337f85861467731ab8dfc5a75db1528728bfc4bbd747f52b46c2f617c93bc8d47642bf2da17fe3d7126e71d5ef5e03c6c59bd1430589aeda81d7a4a3ffda6a6732af2a9b5dbcab6145a59f0e87a83fb7ec36d47769d0c7260c4767794d01ce3545e4202ee342a2c2d72bd2a241ca3e6b3ba3020f8b06b44a0a55ae7bba77474b08a3f39a2f64f3f211568ae3575deca13e39cd7c7627a067c7402eb6da1c1dfea010e5b9d87d1bdb1b95d074c2cfe52b1ddc362086d261924d976946da025dd01baf4380382e14d060274540ef458eefaf33b50b5f6ff8f37d368a2117bb1b9987d5302d2f6f24520eb5febf2bf6b2e652857c9059d4aaedc18287a78e70343f925e3de5fb53759648d3afb59c2bb8bdeff3c3f8bc04ae4c0132bbf5dc80581fd415bf8a811ebafbb133c7f905770b517e0eb48cd63b3dac5ec6db3a8899ce731a37ef27c217e68314fa19cec6fdd3f412c972d4b1121f562534e1de1897e115748776202238fa1d6a0d2b5329b5042e6292b2190f7493bf8c21fc95c4f4c0a513d015f49006130c00e69072a45a1688394478a666d5b980e9a82ee2eae7a7b0f0da2bac3ea308b2abd2b0fa089beab6ee9a4ccde81956225579af4c9606bfe4c5f323450c731a186242e76319a1e6d15bb8ee92f3652b0dc53d4d31bb982cb279f5aabda403e93d31a183571725bad23ac722f267b87ef6882ce7b51523b8237274bc32494da899bbe24d88f32d6f2217d32da055efbd0d25c2e3eb313c3375c9ad5f7b7cdd0b60acfc6f7d0b1ac8eca83d19915f421a279d37ea4e85727e9415d235a6351540c8bd2b96256f0eece6b82e0513834d1d2f72115140725c15bc8cc183a4eb8c5696183c856565947b6e642bc9ce05749f3f8003bc78733ff5b0a92c29319b286f4b7e8e01363ec11c19e88bc928932818254a8675c2a19c197c74e2ce66a0523d72dbdabf645687489408c54e912e432d4b333608d43f85667d60a6d58f4f079c7b8e4940be89a2596385d8b573089c7e244c6720a43901f51bdb5d9343e1a4b70eb2a3ee124f351d82c19d76365d0c12ef992f43f10ad134f86e846a2b9bfa4fe9c2dda5237802e2e9b41947c4a10a489c843c2c1c28e180b384b6c0fc01f291b86932d42432c7f851d4371cd3acf3675163a0172300ceb4061f96834015c6033f7572be27c1c3e701d6cf3e7d9861b3450c9e3d117b1b5b6788149cc3d56a61e0dda8717c8bf8bae18a18c5e4d530d9026f6dd155e06f735c41ea3f466f9a01dc7f3d7880a5ce9f60e512ce89d67d793e96686b32ccad93abffa488b3c90f0db3a693d053f77ab732efedda839602734dac9647281e89b1ce7233f9b837ae85ca056653bf2a806e3f58cc54d24622456cdcdcb7539cd9e8b1b47f86595e2eac2c92e6e455ad1801d9c14732a8d719c1d1033fcd42905b1ba4e44f853084cfe5a2321fd5e2c080d536e143bc54feb56ecd86e7fc54666f0c2b5325f038d8ef0c86c3663a332b82dc54d483396966729ecd87eb0313e35cc176f06d1e0884ea08432f85404fb3a7c4299e93d57707db4f187bbaa7423452a55ddf2745ba7424559caadfc62f364ba9573c16797f74bb9c7255b0f978afb4933fdacfec3755e09a5eb70a4bd6b49e8efc123b9480333a7fda29af2506a6ebc479a98805299f6489ea2c4b67c4436fc5955cba305dfd1c2fda2e77bc38a9bd6f7fde2a283abb190649e5cedc85c8e78ceedb707230f29ee2cee1cedbac0d2a240cc4f433e7b54117c5cf48ccba2867f968e4d860c62c6745bc76da5da96ec09762c96e7fe941a67996e6b946e2c60137306da9c8c192d6208dab28a1ae1b40cf5f98d25b03f436083d2c83b7ecc9240028883beb0fb4f50f1973d2e1bda025b8bfd12025c71978ff485320d59b4d6d392e2516a7c8c97b78a048fe768ee5c90d54a4446fe3c540f0e0a0f7e588b03bab1db399d9dce738a0faaaeb072dbda09fd9c0e6445c69f0fd32f207190b52017391676de230c5d5b696c16ee0d1f1c8bc516e102a35b8c933c8a59c10574dce85f9bbc57443e6d1e9ac0e8a6d79f64f61b4589d8b0e7be61d94a1ec1ad27f79ac77bf4e5239c955b16844e4d7b5e65fcf78aeb14e2020ee3897cad294ef796c5e5ae0be4e568d6c2d5fe9a7bff9cccdc7bce979cc113ac845f3681c96e852c46c224a8c8fe3a7c12719913ebb9a3f3b774ab4257aac3a0a9743cc85d5a338ec9751c78143f0909dfa198aa114c465a04560a27be2401cac35b8e999018f8a14951081ce1288647b2f2f3c7f0e69d35ce60e162d4f4d02b84bd01500bc93b9ce53a73d2886ced808a769b20d155f19ced3575c54c52cc67269d7269644bf46832de3986ec78d55ff9d8945619be1d7e8da4495906aec5e16dd5565c1f310536642156e159d6b3f8bfde974beca751dd5d9de7c01e4c32f0685bb22c8ff03fde6bcf1fc782257d676f69d8324314d733012ed66db8070b48d4a904cf8aae51ccf8eeee6a811bcf5ba7c6aef4fffcea4a5a4efd174803ee7cb93589851c8fe11f7e3ad87f7b8daadce0e1c65d1dc041ad7e3b4e7b0f61828e64b2bf3b69f040d81cd2908a1723c1a9e0538d9e4724f4b5ac919834a26b08dec24f3a37cdbd931d6e1a48f6e9d59d4ad1d57bf3967ad113bc53bdbcd3fae1484796f609bf4ee0fecb1e379fa138ac84356406edb97cdbe5c620383358e0d990045d6fd7de9ce2b08542dfcf5533494b925222e70e8674e6cbada7505777bc791425e1501cc0da6c982116625cd56fbeef928a6783e1d6db52f81d588f304f53210bdd4f447330770637ebba6e98a8c4db09deb3ae3c69eef5726dbf691e7850fd91230e77504e6435ef6d0d4e6bc36201f74f6bb02d7b42fbab779866a138d93fa24f8a0fb4bf12d7bfeea5a4c7ffbb6f2d572651c18d38493481bd7e0d3e8cf77ca9ee76ef1de9eb8cd505fa2a0e761ed9b13b3ea1caba48594b966c145003c5245a51d04527aed388d618460f60c8a8916119f11b4514d75a57262a67ddbf91dc34653a5d6644e12f26b4cb60e690fb32f9bbca8fddec02fcdc9632036a763e63c8bd2b77701a3e8e9c9e87b9a12de7d01944c2908d34fc6de99cf6be853aae1941e192266f30d88bf948855ee40dc1e449ba20dba30b313ec93ad24497273199357b1057ecf46d9187d221a9e9542a80383203b846f72986cd2175c3f168d52885f7e2edb58409daa754d8979b84046563b568b5147724ce2d8ee0123b1e61d664d17988a3aa435f52b489989ba17ef10e1048389a2a6ec7f6729fe43b8bdc0c3c31fc417237d1449a5283311685b058dfc76ea13f21ac29cfb75007f122f5267adbf22214ed3b9b74bb1acf105b81dd80838d89dc6e517408b04e923f9ef77dec19f127efd52ead83d5b2ef9e3e2b0c6920f3dd3f3477710ca04b9c84712b00fcd076bd58fed368805b1036f24663e113602487892e8f848b6c86fe212eea051069609af331c79fd3504e7d63964733476114165897be8235c5c6465c8e3709c533c54333ed9d867c40195e22e93b8533bf5f58606052b07b016e867bad9ba6174e3b2f2a5f16df8197c3353d663df7c00fb44de5654ce282b504355c9446813ec1958fd2eecf1bf1b1397c8a33d2c06599400d292fbbc223773ac0f27a843c4c988675f119c40f1599dae3b1b842fc96e8ab593d6745223c21113f4181bfebbcd35aaee1f8d0f2e8556ff0ac0d415c43d834bda33f93b6a579efbc3ac9aa9bea111f25556a55abd56dcdbb38de418583399c2184b250764e1c1968a3aa6f60e05aab330788586f8f4e196a15cca83135b13c7854335d56b7e4c1242a204921fbaf2fb38ff90450f1c2ce34dcd3d86c3af4ed2912d39ddb2481b1e47668b7ae1996603f73205d50d9dd9848589b94bb384336cf01bdf9072ac6a13b1eaa05713839094634ed9d37dfed4cd18ba4aae3dbf7af5c3034afc886368353b7ac4963ba74a9cb470c73766569332b99041d5bb5929d52ebd08dd22ab0372c0bd2f87624ffa41b6984e5f0894ea256a90ceaded281d3864579b4adf0d752d25eac187827263ae0e3144b148fdbb570812194de951e08521c16ef91d1f64f326d0801a101252f92f4a8997aa11d14a51c71a8640b285d4bd06a5c2de59ce066f2ab464cee32be050d615b24caa187afe963fe39ba5482911585788166334a4af66377873a5e9a1736ee345b7f00f0d377350f952289bfc1f472b3b8eca3d5de684f66961899ff9453a542f1ffa4fa90093c1a35dfdd97ee532e7b11a9592c276cf9b8d95313ffadbb654af92482c5fc31845a50c84405a29f052bb22b2c7d2998ec07c998c19695ed919b59d19e1c311243ca9724a25238adc486e651ae468aeada958d2f45fc51008f99e1500d06653ee5fe5fa8a6beb040c36d7f260cb93bc01ae3a79ce4edcf610011f968ee3e3deeecbf503f90f6820712ead4dda45d0d539ece1cf828377118a274e0a80cf45ac29aaf6be395b650f2f65719fd9b2da58c8882aad1bd39785a80ed7736597b068c58819ba20be68dc9416a4a6f7e23842fa7b150fc886946038b10d264e7e455f7822132b492fcebd260832a9f0a4916bc1cb2330476e1da3f364481d5d91f791937e1f4b317fca8a5386cbe954f515161361f47211a924c00447ec51c9ea7c0ee9211a081c214a713a79ac9cee7c91ac54568c8a966148796e41a7d06b901960a3fd0bcdc8685c727df5a503b719ce65524ec5f7eec2469b5b81efb64c283befb7b25efaa885003588564b2ae4f073013c36bfe57c21fec2e4cb892d0e3d68b2580be4008ea949eab02f256033658f838722f06e15819dc062ab3965f887b031081b5a0ddf6e924abcc0f0a0a729754059e3849cc116e2a4d58b78127bdf3e3802f553bf481b5b54cbe3a4b83dc80805c0184679cdb204c3e2028c121e38adcd337659ff53866a360893c5d901793b7c927ce2f7d3aaea39fe4fa19a9a82df570c2c7ea38969c1ea040d883acdc773867cf4df7489ab6265f6bc8e0c6acad180fbbed6e0f61a6b5c012d99a7535a9a70178810e23267409a58d72b10a2e131ed5cdf6f5cbf562967fdf0aa863e49816f713c33d5c5274e04ab95657669a0c885c61bd7df73c5c61f9bea7d60a22a4353b30eb0753e25314013cf7b7ff383cd48b7441dff5a4d6dd59d3022f0ba8f7f8146082c017ec172dbeef7f625b4d7fa1e630bf47b68f1b35198f00175e2777f457e0b384a6ce732f910bd32b31ace59446ce9d92258c6fc586367564995864d2b9a2daa4b17826c2ccf104553ccabfb47e036160fd259891ae1de33e6ea761a7da3826dd6695db814bc48d3420869a538864125ecef45f9e46e14073bc180c0753ecaabdef14eda04babff4683d72d2a84b7e410a8b5b16811db1b24a8192a3fe24ad33725f01d81cc222fd35075c1fd47c5241d8623da4ece02ec0f4ce7113b52e2ed0e6628dbb4058c514a742e34f610b4739b713b0fdc41753371868a4aee255fb8180e578d83c1987ee2ca8a8ec742a476cd7199195d08632f64e5fdaa4ab60bac27496866993700c938b28eba298cb5a6ae867f1484ee77c56ae90df773f5d0f4889e564d936139cc80c5b921343782f2909289b6fabfac79610738edf2901cc0b434f3325d5b449139cb17458c396d8c07263d0850dd38a814b8e3b2e033e6c819ee73d5ca427144e9642f69b03576f20e347b176da9db68bfe29825a1aebbfcad94cb2d65b85e737ae1edd35d679d06f07c9cfcefa8533e1d7bed6d1f553f815b42edfc12a9e4af6fe2d6adf8fada4a714852120c40e26b0116874a96221f8710dc83a117d50efa46fdc7319d179e111131fdd4ef3dbf7329c5c0a975085b8efa7024e0ad1a727749019430456cd84a27f0190299a4ace29fa339686fd28d38aefe3a1e7d50d28445c6c61184c0e6011671eaa43adbba191790039448b079a5a1923ada6d72f9ab5aa39dd8b4bcc0d9a76b3189fd580ca132d59336a4aeaa7e0f190267d95311f5d2eb5cb40f35e6ffca9598c1cff17a768b0428283681e56d26b9847398d4d7662b6248edbc374fa8d755ae7c18db9f89d7effb4b4d5ffa9953530eac20d0166fde90bbd892e2380b2fa29056af67535be528db53954732683f3a167b845eef5f7d79ac62dda8329a6b88e7256fd684344cc7e05046e25f023655564ca0909399959c30ea6fea947b7e989da4908d964b38e6eaac1a2f0722d3d497477ab354b52e0d05b5552e27784d4322badb8dada25fed8d4b91f66acc1b6a5101e3fbfac4ee00cf8a226e403b8405642711bf55841f376583bbca61f0d8d9c4feb03d6ab095ddd9203dcb1da2fbc1cca0711568b2931cf9a1dae3e31808024d05ec1d14e23e63c8af0fa0446d01d1e5cfdeea75a8d26572cc1b5c14c0b8da960645cbb383424dc0a7a9242455b4ced72f8dc2ec6ef3f5bed0b8194972698c21b6fb2f3318182c45b5d36e0145a7714f9d5f997363b4dd759d60f563b0b089fdf4e1c5ec38cfee06947e9b22620b5a213d4203bd564f56dd45834ffb053ed9cdecd9ca33469a921ad4c13ef5d3ab3f7cf95876a73c729a2644ab5255e7981f769235387a07e469680370c5e65bb17d9fdbae55cf245673fc8335cda15b1bde31acb9dc265853eff6f8c2eb39aa065105b57b81dea5fd59c4f8bf3af088d230170ea69564fcdbb5eaa159742d72a635298b89ac5badb07b86ee308ad8e2eca82aae660100f696f48d8c93e4a23eabd85d750d7422dd8b4c2aceed4bfbe568bd0e826e79653692471a825414512d5e803b558563b6f10b6b2c5533a42251a525fb4c64e539fabb9fad78070425ea0e4e66330ef5a1480feb0ac2a5a4c53c65d8bd9ac267c787c01ccfdd9379a8809ff4b93ad8692647702b50019c7614b7b07a4b4f341bbda9a47b53fa9a9b2f6e429b705a16992f6340dc52fb5653fb49d18773ad19805333dcff7fa48724f89913d3cd5871c7aa9bf052fc43844e7cd4f674129b389d7406425f4538bc2b860895dad96e45d69b7c159ca5e8f8139da2521073bc6de39aa7b86194edbec9487b398ac3d3e2a2efb249d7614e9aba5bdf3e56db567b3ac874899fd1e1d6721df0deb5559457868888ecdb0aa4b98072ddcf1aece03784f80c6b2dfd9b67e906be7d5bf2bfef5887179addc1a696161e10146e7d54514374a09b1fe2976724a23c3a618e583b97f04898cce478ec78b32d01c190e7168d58fe5f8cd0ee64357e65926544330c4d2369fa4a305f5ff8e8a47515e618c7a339d38db82c63dd1b613fc40b3f02aefd2db9f095095db06ffb08558ed869d7d7f4f44f303c770acac13844d86daf861ddf1029e3effcc034f4439f80dd6ce6fea078346c91c4e738c6bcb574728675a4c8a747d149ec68b67ef6cc41f675ab794c283db38055aa93be94b22a857c62dad6832538d2caff68e607cb53ed04ce94c551bdbd967e001d5de0b2ed97338b92d92b45c3e508daa633672a22ee2da5f505bd3f892a65ade0abdd889f88d41cd661b1077eab5c296c0b299d9fbf5e572c014fe016a0095c38ba62cf9052f29835e55e9dbad0b4cd92d0d3935f8f008454bd623d0880e09deea83083498866289e44750d4d86825d5d2c26b1b4e40b735158e17a09d563117d8add971ece01209edc09a6bf4cfa538e17d709ab2817c40062322a6343b467343c5155805648c1d221dae4b794166633b74b122e6736bc50b9eec83849abf6527dd202a919299812dba126bdefcea3aa8c95430f7bebadc4403e138f433661bb0d6678eb8a163c60402fa93431569bf72a6955c98ff0916edb12693f4a1e567576b4d44adf3e27aec58f9b969ae4d4c9d66ab7c0efe23aee9e0b41c9d7ded46e63ea2567f6ccd9611c071224c1cdd41d193baf1429ae77647889e74076bb253ee7fa6cff9ecf3f7afb70e0a0415379b287575ea91563ad283e34bc716e17ec3b737ddbb4cc9bdd2a1375fdb47cda2c5fb1db1a91b303fb39580a807a471e9e477bb48488511ac7ac6bdb2acedb6a470d02b1fe4e55890f010cd31c9982ed54488539b4943e5da818d1944e61526c612f6048c3ca2fa1443652b6e6342c8c1598fde587e849791cf232c561d3b391ebd6b722e71df06c908fca9d517c401522f667afaa35fb511ff1a9e08bd273def6d3e511db3cbda235abf2e93ce70e0bc8975ec90705132596d44d6c149e3fbfcbbb9c403d8679832745e4421f793ea35784049fc837a286e33ad7f5af506f5eaf3b345d97d3423fb104463eb775cd12ecad9b2ea8c894db585a8678b14bd523c62667b42bb811c16a9d13468041bf8c76cee4df99d0a5bbb03e50cac14e8c85195f7aee8861bcf00e595d26180d41281e273cd2fa669fb9e408c16dd4409baffc05bb9412307810821d382912ca49984f851db351b78f3c44e3202dcc165bffe526e261971287896105a54425b8255a04bc8cb3484df3b124e71a109677cf92f520d505f88c8e71cef876884a682da68a5a58c02bb1fb64f5f2ec73a65abb8c6f00738775ac07f00b4f463aba78d1d0a6f2ec53c7d8c063a2f1c4cd113ae472fd514dec7cc439f986e333523f46a0c6e5069b1b216416a90ff4cf6939e7b5bca67e64505fb37778d0bde020c6267fd4d797980df3809f10965e1352de3e04c6d7c000c661df12a455e8ba01b8dcbfd55db376facea7510505405d865bc07d7686325a3f1f54a7e970a466135d6ca9948b03b1f6fd48ab34d738094f15bb4c85dd888906259754e7406e0dbbca61a220495f469ced98ac51739f4446fd400cf6c5a6a9ba8e25c7830f885f80dc5ae74f8ee0834c3111cb4bf55e36e995b5cb81e8bc588ad4de4b46c7f31b64326d6526aa31c4c629bebd3e0e17941c105a130ef5c748e9b4dcb6f999f50929bd38ab181cd99dd315d71a67014f62740d10e8a4457b6d96a0bb4740a453f2013acb5923bc269039c34fcd2812cee1b0aacd0d4a1b8c3ed1e105a749ad91a6c7a04c4beef43e71f2015961b5c2fbb3e920f3a46a43e9a782c383bee8002028d8a61a5a9ad7e328c5039998a6be3e88a4ab2dc7c7f2569b0c6038480d9e134c767abe5404025c8efa631b0bf1b3e7edd98b0d71a2422f6533176bd4666a2ab8d2b28dd0e79ccbc44018ba3166efdd260ce39bf19a170f2325a0d418a4166370e4828a5b41b40b0baa292a3da3ac455374bbaff89070cee8bbf66778fc6854a81923e42251dfffb89f25ca187ca00eea00968a59ff0d53076f8f524c27aa1f68971ec98548071238542be73a25f62ddb8afc7535d95dd6c81fce0537ad8f73523391a4c05393c3b063a815209c6543e48f11e00ddfba2646f09c2c4675127aaffd56d0d333a8a7711f34b978878848b9e57564ff1f5edd55f189f5cd9eae9c0c30b8223f3e179a5efb2fa17a89570a706e911ba928a892c28e1d663c21a907c264a46de05f3583295ae6827df023fed55338133e4ef3727e12f70973d8c5b54c1531707fb19b69c8229260446f0ae9bec46b2b8672ffac0b6392b0b2b8a223b551fb0dae33689a421a60bfbfc2d99184bf3429d7f965e04aad508c92f98aef6a702676a3f640aa4ae867399a7a476dc4320c0a611d5b81f232b7faef71dd2212112d73c1693dde08c8b7a81ca99e22ef281208cea612893aa266e538cf86c0981358116fff03532bb13f569958acdd795bad974f76b8ee8f13bdf96658ce8e22b7d0b37fe38cb03741c5b9360e59f5dbd837b3f9075732f2ddc401f93a2793adf87efc9ce9fae795d5933f4bf75e91efef5197adb8d8784bb54fba1c6b76732a1677f228c692f9a3330c99123f501c400fc4a8f149b510d29220349ded02734a71c1b40ae4351eb9529c6db7350ed5cfa15bd6868f21afbfda7fcf0d159cd3d699f5818b35aa29ebd91598a416a86a84a13d30be7004ecc6f062159e1b42fd549ccbd89034e06fe507ecf820108750dec2065607e27a0bf0a4c986668faee0e6e497c9d72843c9f130ddd988aabd68094c8f3d3f57620d6b5feb1a9b7b7d7e29ead87cca94dff67503f7606542466832036047833e150cb12d1da8262f41cecd361916825929b438f6ae473474eb74a587db4236c22e71f142adefd9ac86149b3100689eb5f9c7f2fe6102cd16487dec6eec9daa0e6ca8bc1629b9a88a70d2fcb997e329a28f14617be8c045b61990d535bf674d833286a6fb1cf68ec24dae41ca3ba1c2043af4aa3e5ed0914a2a1b267848c0a7a09236e08eeadbaa42626193eab26d68d05aed9bd36631e14c4fff914bbd7a8862559b9d9ffb32372f1ea2d7e5676e56a968b2790ffc834362087be6c4b8547e3c05a63954c901bc42d6e869df061bd0983e145b4a02d61c645bbc821202b45d1acdc1a5b2b3c3d8cbf8047c9bef36f3e6c5fb196a01e1a0784d4a6ec1654e14280e5200030f24f859e803cd297826791ea1ebe124a522a0247212e057a3c6d2f475635e2d2d99bd81d2481fe7a2cd8960205b71ca29bf87157c5839f1084b07c0d48b7a5bb12592d946ad4616ac4c0a6f8182772674873e567f54de9c3fea33d1982d64e973e75b65d566af3766a8d9c1f49821fbdc826814903a11d4e87110f0d8223424174990e2e653cc15286c0d5bea21190e808be8281aac4cae7be08204941d8ea89dc748f356ee5378b82a8c02916e84226cc90c51b686e610ae922ae34949d5bbc42c1a146a7f388ba1095af7497360a271fb168c99de1eff0696be00bcda6bfe0a7848048bbae442f47f6cdaf8620fffc4f20e44f71a4982a4f5906da0da15e6adf57cee836bea2e81773c68aa6f18eac4da6787feb59205be850f92d62669b1258b92b9e5664bdd949909c0665f3c03b58c2ee4ca4dab240c1c19bc6fa76dfe16f575311e52e7256c90dd012556d97c2fdbc09651cca126debbd590160a0f7c709d3efab15af2f5ddacbcfd72a1752d4304292aeb12dbe2a26fb815932521aff63a53d1ee59e0836202f794128134f435d7c3662516d08a0a629bccf8a188d7d6c6578a408e8ea44a5edf5740f35ca1c09308615da34dbc57cd4b78ccf61927d376320e0e5cedd0f58d65b3ad0d9f3a63fb98cd94d1beafb3ea6c51420a9574dc4d60e5441df0cb4c10775a4c3de464bfb9f56fd84b31079beee7132bedd37648f7b80851720dd3be97b9844116e7e963d31a78f6929d5453496beacaf19aeb753eab84f34fd96b61ebaa8792d4a5e64429c70d17fce7d1c4a5d334ca35d4141073853b662d90768896e9002acc2911ccd0c78fa0a14033bb16d7e110528624952e0ab8622c9926e0140baf9ef38e3914a96daf09d4e11a6120d1728534cfc3d04ade6e9562856d887bb427d238baa6f93512e5005012f1d62b446bb60a3d7b81cba8b859c13981b2f16be5682f414155ab40119800b32cb9d508aabce2689cf6a492c6eb4e8bb273266ea0e886fdfae96f992119c02db61535a57c7a524d4194b984d75ccc398b16a2239d076e9c67c261cc222f83990e3cfb127c5d17741a5b6baead961d67ea891feaeb3685abe9106d4b69f651c373177cd3ac371e4276b7f74f09ddaac4bae2918ffe66a439d8adf90855b99a8b897d56f6c6c4f5e3ff8c8319abc3f34fb4458e4bf7365334929f76d26686b2a02aabc5fd30ae8d5f82b0fa4f7cc61205d7361f8024f77c7f65443f9633e267d623bbb4572f399d04c4b77d96c099381f49b215ca9258500827f8ac3be28714966c55363237e7a5ebd6ab080d4596539fa0e26f1fc7cb8d2668cd06fdf561f217c3d267cbbead6b4b63a19927de51e26e22b906c22e02008682d9adaff5fb5eb22943940710b5c9aae635cfe90167a0384cbe25d93b93f08f2430581e069e21f09aadb97b0f6a6d9ab076ce106a3d83764d51dcdd1e907320477b5ca09b6a67758b3c1cd76d898813e45374042451ad632ecb4695a177276b3c1be5aa8fdd3766601ec6e5b402699395bf36cf5b50455ecb083d02a9726c5aa63e43444bbbf2d30555d9acd3e498536b01546a52d1920dab0517e2291b6f9e96d4bc95bb49181878ce92016d7a25a6f61e6f644d6f0645eaba8f6a8aabf5ef32e1c46fe0015cd0bf2de53e9177012fd95d3cb54e328a408b04348362f7237c9f0564c8f4fe8c1c360b928a83b23fdf8b4f12f0f0d250ebe9d987a2462a193e2f9a2cb01e44dd6373afd25bd8efb7d294ce7be67c7a92bfca967e00d7dd23376683ce2a0b6ce31adea14b15718c455f18567c4ad484247f20589b84fc7c1927b61729991885580372827fe497c11d615c76f5f4fdd5591da9a457b5f014c7b51c36f9350db401a2ba80700020516c87bd6dde4c0a38f22c2fc8ae90af00876819da044c5fb714f87e927eafdd8a90877139183fe975d3037763aa171e6551c34c629d6ce57b0874eefbf64d7681cdcb116dafc77e4761f4fc68e5970eb651b02395c6d0edf14a0bd1a3beb5c9e1bbc40ac0b373bc356052df4b8d00f70b81d370e81efae16fe0369dccfd8bf7e03822ebb123edad03ad6fe89fe521811cae7c892e9eada7602e64b902f238664ad1193c6838b13bd46df8b0d8733ef0c1a83d910ad26fa50e99ab260644d70942e198788dadad84619c9d6a0494bbac96791d44fa72ceadeb3e17f770d671a8b74e752577c476d979d523e878186c44c108a371247e142bc8ab0f852b6f69bb28cc21e87e0def249de64fb7ab55f8360cdb864d434ba6a935c99e312c90280d564fb2412cfbaeca23ba1c47e5f5136cc38d6dcf1877db3fbc5df7b8c0bcf5f0f336a4a16a28fa8ed1107dbc21bb72769b78e14d38201ebd1e69a9487a5b1b4431f65f97ac7052446240792f7bfa86defeec7b6139768f8617e91548ec3d4cbad44460d35341ea5cceebdf1498ceb9762fa41b4a0e8a2b3a7f97ee02dc38f70b87ad5674a72761fa4ddd1e33a1fde5ff343908bc17aa2385c9a790994e19fa483046c2f71a5811c9edd2f1c6b9a7cc3fc3bde2d0e8ff547e61f97a286053c6250876410ff32a893ae3e19ebca351d7e45907a27f7b8acc12accd858aef96e0d3048e4f8cd11d85816b14d97c758a4d96cc56c33515cbf38f284a38a16675949d172608ffe7f5b1870f5f5e826625bc10cea3536d24f4ec36db390d188917afba301af5ab7e2a170e75d30f234dde7551e75c6a0e0a970ef021d68076fec341fc67d9f8ae1549db481d0b67f59abd51a92e7da237a3afceda4fee94a249a8edb4fad04c9d1341c187f85e5ca8b7ed6e0416a48359abc297ad670754008806fa208e7885a19768864a6ed791434671140da3d8f67d80c874fc3a16d656a395c53bd2bcd125b6dbe13f4f1ff3dd89b93db8e0a645c915107de15ac926b189c5784e4e06ddb9b027ccf9dc191d504665c294472cb496fb714bde8647ed4ae0d5a1869d59b83edf4f26183f487085427f63e2bcac15bf7b178c3f91f832137a356863fee3fc16b84327fe98b0a8159f1da8a15e8128de7c3be7dc0a1684d7a66f15e7114a4e0dea07ec6c46ea34848b52b01dab556913a6afbd66d223bb91d16108c50617ca3cdd3539d9c23a8d6c6ebf52bce6f1b524ee8398a2cbb6920f33c8d9ce26fbdc4d0d49a8350b63c47c4f24d8b5f7618d16328be0fff5c0ecc0c8e89a8c4bf91b49802523fb5e87b5136499f05bc432de55b0d61574528c61362df09ca1902ddbd4c9fbe8d830f9c1d13518c1cf91968ee537bfaa59040941096efb0aa9668d7e26e8371451ff93e85e0df0d5295710abb736d6176ffd200a88475ba908ef0f6f92f70eef2c6b4b21574daf55ea99b93427468d2b9c76ce13903a14aa9e8c0b8bd70d2e4adbcfbc2fa8f572f3f9eeb512433a09d05de1ccd3eaebe34d71918b9f205a6b4d7909f2f6f60fda16b6cc791c23bc14f0e393bcac42c0577e697eb110048e9463d284d7dc23672dda33e1c5ed74f319bad5d6cd6064d60ab1d95d14c854da118369b69310b7c544aa212ceb3773b2c54e2add46673b23348b1d9d0b7ebb1ea7566d3dcc15334c473dd218f87a12c61898ce56e4692942edb07333ae763d7dc8c5beada2bc654c6165cefa7a70290629d8847441cb07181906619780a159cd96ff99e046b83e4e4d62c93dfae54a72761e7b5f7eafc26f0ab47eb91dc6e0d073fc0c987c05748467a0498bcadffeb0a0b63de94e1888eed4e92c287b1a6ae2c615f2ab7d4896bb8e9c11fd0c3c744f2428149bb84f638f8c53ee5dedf98fa4d9889d403dd46b41570fe04ba1d875bbaa3a13f626639a87bf8f805da6cdd622e90adbb5ffb17d559a41a453ed5359649f835f9a402857dc76cb8931b04343a5df9a94194903ec585b0937bf02c9942e6dc5c1f55fb3cd630a2cf9215fbef870421b1068e6025e3c2d16f141735a10607b845c746ffbe0bf21949d78f7e9bf9d432c24c0b83070a4b2da14b8e6ab59f074d01d03ff6bdf9bfd846081536bcc4d4dd1b61ab36399992235a0517b5a7243361bd53ecd83a5b4e9493198e872ec2fb8bc183aa37e140200b736f10b8c4a01b2bde144eea2cf75fadf0e7828e9649f8bb79e87283677f9e89fa7808a6bf93b3a00fbc8e242ef5d70498c03c7edaec73b2e713e90a81d5be442cf1db218d74844c842cb86b58c1e0b537d481b9b0cbc7c1c8be6d6e74d541973585d965c83d6e68208e09474df1d530de6b7163a3da930a7e96d45e153350406d63db4071f047f950a5cb4339dcc1cde4a457b00f468ae19b49642ab45e0c3f1afc2461ef5d23b7745dca7acf4ae21196eb14ff1bb4f1190192d96562891f571ba905d42a85a9c1e8535bd545ee484b2bf2095dc0f1bee14d0ec825239d0dc79effe5432b27cf8d08168b4b6d8356d7dc445fbf0377be64b0348a1ac04125513debea35031d0c6edaa750e02f66765fa287b332f6f15d6b9773d43d8abef4037ed75d033140a871188337b4ed40005a88c4974ab295510b04ceead01f24165d65179cd982882594b2a4ac771372d9e79ec6e3fa7cddd6ae13de72c2a2aef25baf18fb650cb3cc0b7ca228f72c03ea74148b1606105d0ecafc110c7f21892efedbdf6da92cce0afe464101e54a1c12c35082536519b97cd76325c4e8c1e201221b438b09ced6371aeb7a822a8d68246f7fb6237a3f03bc3f52980c9ffca9cf603478cbe8c4137a1cdef2602fab0538933d121d32f37bd33ae8f1ebf4a10d301070d998fad639e497fe6754382cbfba92a3217033198c25bfcb4360909b1c459e924f30b3b0f6619d3ee173ed3a43749e6fc6864fe7166e3320c1c4d8c0d4a5ca2a48ee7cb01725f4f278f2394585ac68b869765f8eeffc8db3b30017e1081ac52fc03ed6b854a39d734db7fb04e332cd6bc9031137ff627c56316ab0f88c5c969927ea005afc0842e92f49139834f629a0999fc67cc7e6e8308b7df4260c3a96ce444e8535e2e5b31e17fb8f67ce9286c5fc4856a1000be2129ca136092f14732305f6f07d849bbbb8df4cef0baff31631f3bae64bba48326151ae9db081749250859064aa92ea9210e3e757d166d0e760ad97288a661cef18f32cb74b61d08114240443915ee49ea117b7239b3b5f5cfe5482592f9862b95c92b38f22126a2821de0648959e0e13ccb3901d0ece1bf93a7fdba21f97ac5cdc255301b64af60dc785e1234722d2811b202c83fbe38d2c89c066239f60eed893ff8bcb0d6c5f586f2e6b2ad1a523c489300d905e328be969b8ea3d7d59d254863c619fc4b684e209ad7a01ed744043a73e4c2268b75b5ceee31ef8111532e44582688881f414935698eb881c27c852bf29e14e5907117715f823571a3f487b62de8ba4046ad94bac1061995e4ba087068d1cb8e7b8a74d5fe0e66c6334173951458677e995225281e58839f9d34ca842b433e39d4c57a95fae3db07d5361da1701ad6d9505a83b00612d4562fccf18eed24d11020514a2fbab68b4ce29a0d79e821a1081fccf8355c33de301fc1f14ebccc51216c281ca5c68f25e0ac84ca676c76c1f9ebf75575742eda7f3c3685b1faadb4b15499151f9c524f65df1bfd6106b7eff222c3bfc6458a16d4ba5c57ce9a37772414bf9f507341bd5f0ea16163cc25bc1602f8bab480826b4779ee010b1f100a72d025f339cbbe4abd24f8a72b34f232fcf6abdd05bc4fa1ebc2b383d8373fce93abe50392ba16801eb716a506ca0dd61a4d5d86ec52e312ba9ced7e8f7006d79e3c711d0fb8433b6962d0adcde6bf158210f15a5b4997637d1978141619a84901d5547e60df2be959e980f7643e4e01c8d03b28f8bd230c7c2809dfa136c8d5463377ea5fd0fc8887e78a27d96fd1cbfb43711b35a5866832b87ed7d522709cdb62b346b1ab206cfb7af5fcc8c4115fb5f016744ecc6fdbb2ac5bb619b1a97bb8d71b25b1d3d3888e4b52dded8489f7f7f8f8f54a1d68cea0d786edb1bfe1e6e641a39a8d0b0b6b19bb8dd355904545168b98fa55cddebafcc4a5b308357bfd6dd68bd00c85a75a9db684f32e4d8b813943f9a3957a8ec1fe29ef8f5b3b82aa840728d074ca495108d5cad19ef004bb540a5ff53092af4daebfe50eb65e378bb7f1083ea22787bf53700910e9a4fe8eba700a7d4e8aae78db560eac827b351f6620bb6fe48db786f5da3db05a7bc96114fd3544e721bab0b41b4acb7f57d85b897e4293cbf73ff830653be224620950efd3e3e80c78948d850a3b69974ab6b1f153d102fb0978dc660c1587729d22119970d40974cd399454f94c3b5643febbc6386cb07c87a8153e1ecd0567f8644b5dadbfdf72a612cd8ffd18e3fb113e5617bb88c3f12524d7099134ce3ae518b1c963f3fd5687aa80b9a01d5a964c5386b140c215a4684f69c7e96387ddee27805bead77bb9d2bc71eb7a9159a1656c943c313508dee978c5fcbaec815dcd7e98c7a1b89822eef9541501571f36185faf86f2cead8f9c81b9aafa88960dac376364cb363d607e20493aa702b5845fbcf6e0ac8e149e909f72c2c0bebc32af61e71eb9cfd248ac26bbea4c5dd2f456059cd38acd1274d51705244c10d31d1ed23612ec24a1b21a3f399989baa747a4d8b6ae3ee001740ff8263b652a9f0c5b4de1eb2bef51040ba25636525cde6e827d0547e4171092b062198a879fe3b8e762b6c6d586a5a2a8ba54b1b6e7e69eca82e9c208462d32bddd88987fb22d952d1dd0c264fb9cf266765a5d6f917aec51a8f0fd350dd153a73ce0ff2b1bba09507cd958baa83db1292d40d510e446153adf64c179b25aa5b237816cedd13c30dd62cbcb63581db159f99859ca541e9b25d6e70f5782e597f2e87c1c8db4feb8c0db0ebff310d63d69e5d9e39c81e2dab52ab6fa0337e64483b4e90292666db1315f592ab16774bc6aa1f6ab444673dfd5dc84cbd93d49b60d906bddf369206a649ca6aae1dae4cbfdfbfb65c9075f02bfb818d1cb4da91cb0c30456cdcb9909fec45fe0a8e655b65da53a0c756eda101506538bd535d338556dc17917e138fbbaf7a05dca9c34af17287aa0e0fd43da0c63b6f42da1d474f76a546b8907275d1ac5aae2604bb1f159d3b4c5c4383663d34b4b36e6d5d5c15b22ce5318cf8247f2e9e4b076161fa403109304d8128108dbd82af472d0d4e199a6cd852c86cf0dc86f785ba7ccc439dabad28850c7184e53e1612196af1cd75ba6f044afb4720938949889bc8fd7ab463f923b1e8b74e68cf7913a66a7a0f1df79244a0dc0fc2093d52088f122ede052705cad0fdc90bcb51d4afcaaa713b88fd535d536f865d9573570bffe3e79b08a7fc8d4e82dfbcb52f68c782946ac8905cc3755658540abb73147a2a1e2b4ae780a57bc129b077ef86af44de67a0d77e83272eef2918cbb8867d24ba3dc9b30c071d26c1d7241a64ccdce24a4edda3998c86829c172f61eac2b10ffb94f9614947d3c27377ea4727bc5af0b4802db26ed1271d284a6cdd55696e3eec67e3ac14fcc08910ae4f6673bbe793473b0713d969f0f96328b1676c747dc05784d158af86d8ca2656e81d00b23905eee5bb56152339cf034d8e25658219028c5621872f0151c9de467d6c10673cb5aad4e80aac4e181dcb46f277d6fbc6ffd6840615fe433fdb3f5487d3c27238fbe6884b41f6ac2d73cb82bb20dffd406198c5c741d42dccdb1dc6c2e6cc458820a67c5795394505f5ace18949fda2ed5d78b82ba524a184ed20b5304347dcecadcd92688ac8a92010241f0a17e65c85f103993585375a7d2b5fadb83fc98c3bc12628fe230547661b96df76c8e7e6c0179c9815286e1951b9985aa16a0b31b9b81226b81dcdb9918a9325f4ef9d0d24363f4a7e96c34f43fa84d658b2e327bf1a05675b532476708b319363dcfd7618b6b201a75171f5d9d3aee4a33921baa5cd0125193c0c83f96c7d81411066448ed00bf22bdf5e58b4ff59fb1d7c93a604e9be540dd7b41fec21e8a5c3c49c40b02b4ce7ca08f86979fc0c0b5cf7e173f8d0480a67f5f5c186473f3a303188ae9cc46f10d2f2608b0b956e3058daeb3984b540e5fc8839948e10adb896176babcecc827400f860ae18f4e35b6074d9787dca16a65ad49571f06952f5c64b5bd093a8ef84823d8fd6c7c52b55375f5fb643d5f8e4e358886983c3e00d0df1087b5c433d8ec889ebb4843afa512acad82a744bcd061bd4a31268c3f4751054b067e2deda448127365fa40aa9e6a692e9dbdcb31e156763e2657cfe43e7e67badff54ee2f40912370c44bad5c21783f6222255dc5661f7719dc7e36719dd3bfdedd57a635041d0043a5b57247e392e4d58af6bb3344d1a2066e658a2e61b7d32b0ac1fb72532161c2904c76e94564371444fd1b516f8e1ea68a52ad0a8836ffb949fdc8f14480dd81e27d960155eb58f647182164b1dc94d7421028f9a21926ff3c24a443fdf0303cc637a7c54965b6e10f8db28b3a624c9b6de0f4c4925e2a2db774dd2b0caf86eeb998dd1e968d1f3ced90597008aa1dd82a4a573112456a1e1f4b2bd8c372eed18ced8dee42c11820ff0fc66a43d27699fc8d4c24cbc2ba10aabbb6386bb8502dda04218a4230a581096e441ef98dc71e9e9df46402355a0f46c4b7694ac4690bd0e736df9982299e5a985ca93f1db5dafd4d05471652719f6f0131f1c6e41f2fabd918d81af115259752cde75192639a0e377131ce667954ae8d20675a57edd8ae7b49687bf41096eac2d64cccae24377603460ef69ff16d65b1b16b547e34ab903d980f6000dd1fcefd20f0eae0c43d9081d3adce106ffc44a712ac594eaba00bdc434621b666119c95a7dc96ff09389f1a5e3396a355902d1171b959b007b4c3ba0f7a25d89205fd32f00f363e768efa03939262f8a0bbd132aa6c83c5f60c7080d703c61db87f0051bc90f20eefe817c51ef971623b82a43014e345a384cd12e7a64270a42a68d67eb12b1960a589b88cd909ae64ff1fcb7f3b19c931ea9345c89c2ca0c4010b0823097757de74d75f6bacd5342340d96aee8a7b8898f13e207af0914f203adfe55aee54bfca9b94bc25ae260b8adfcaf043b114eab35308eea3dc28560ed23226bf784e9aff277a907078765d503c0d9fd5d47ecb62681302fbb34e363f81b806329408a361d5f11b350cc344eeb219dc332e0f3f6829939e4646a884d91840f30ce1dde0f444541f6e74e3286561b58129b37b436b3a6084131d2c45285dd027fb0e74a2cbfd6cedde53f50b325cbcd88288cbf7727693d1d3dfb78ceda2e87564f64b3c43d47ebfd701139cb0ccbf20400b9d4d2ce7aae6a31a47fed9edaaacd03963215fd7830e00fded7d529fa607c0a732bca109de81d099cd43cd691f3ffebab1efba7058152cc5df16ce988c53d8f53b4cffd68f51b4d94242a9cd59d633b3c7d380b88b1aaf98b29a3f0790991625c35feb017763d26296c9f4af7d5cf9f4412387bfdca95a8ca5b3000c767d3776fa4e2e982acfaf6f5912522e3c427adcd2d725ba276bb0bbcf113471b8dfb2d512d377bd024f7619f1d75cd02e17346afeedcf58374259ca11dd9fd941a03645746f98b22f9e49d1c820475e2603770c75f4a068d7c76623a64011a8151b51925b77a76dea7b701e9bde8b138f0a592f19873987b90f74717314798cb634506c007df8fe514e9879b36fb392e3290cfe00785fe94bee36d82861e2983351f53736a657559e48ddc823fe9e7ea471a0a47cc2b9037f684e1ecedf0b42001d05de4c26adc954c0247feff4b9ae3dcb5fce25476c183234dfdd1e0825c38df802b498121dac4ce746df845eafc695ae8f6fd7a772ef30cb2258343ce7534dd7c4306279f9b0b93126c79e4eed484af1d4993ae03613c695038f63cd9d23195120091661610cd763bb698f116bbee247d57d63578ce5e8e743f2cf1daf81325149b14caac1c634c6f2613f224c4d613c9b3f46ffe86651ccabd2e9383b15b8a55b4eabc6fdfbe660d28547f6736fa4ac652c2e29d2f39511b9102260782531f6a7b68636c39a2177e76b7aced50db5605405854f7554e301e36c53b403001873e065e55acd14415468c7368bca6541ed473e77b7ecd0bed842871997ed8c0fb9a3ae682d37bcf9e1626bdda27a8722c5a418828271a24f0753557c888ba55f091c90d773520db4f947aad5a0e65d3ef3f4e0accb7ae4cec1795c87ee06780982ddf79244ad89a43cf89062bea8916393bee619064a77667895ff6f98f72d2ee7fd6958caf833e4a913a73966df400303046bc48101d0fbc0a03345d2da3784ef227fa1a04adb0315a9fcd702acd90e216a2ba8af363e1d1977257357e8ed7fb1114ed1b7a475b556b20f7019d6f7a742d2c61c320e3be81f63e10479f060db0284a950fa55a1c6002e8e9cbd558b48e793c6635533caabb9d53d1561bc7ec1be145de19cfbb8409e8bce5b618fb0a340c4b15610413b43a48601379de6a9135b72178c1091a0b8ac470022609344d4772d6279175b561b8ab6ba3abe01e17c76cf8ccf201e66a481b2f3c8a6ef0eafdff2bf5c2aa2e31c4ddf44bfed874e01a679fee9ef8a9a04cb6fd4216e6fd46b0410ba464ae93a4b1b7721251d6f7b8468746c2d80e2e777606d14b6773147820600d9da36f31b34ac845a5f7dd8bc05deb61d71c9003af74a62796fef756d429584bce745674103b1e6ef3d2167df1b49db2e46e733bb3462f58329a4fea672254a688e7e386cb11a17d499d614c0cc1c84f088671ea70d54493f3200f3bd4ec06dd7ff87ae93c43d82223774a7d0052f5ddeadb9f452be62728eca1e6009af86c2dbfa37e14f130134a42458d20ec0b0f34a3b156088655fec3f7260ca566d5b909a3839821c4c1f47e60d999715d7e1db60d7fc1859fb1dbda4524801ba0b0c99ff1286431829de4f4a785ecc83bac4daa864546b388898792d1c2ce9b6949aa3406c0356df086923cd32a073bbec36f2cb9108f5158dcb80922ea739bff5ab8c5011e04ba4ac2a2bba24f2cff3760805820a8d0aee02d5c23ea413206041aef861c35e0cbedbf9429d15277cfe764aee952a86c59e2caf23bd46362780e72ed8d165d6738513e219401bfba1488b71416a8395989973ef06a52c3446ee70e3af8296e81b74d55175f838f0c18b28372f8a78fb097badd5ee7c2cc1a8e5e063a981d753a7fdd9110353d8107281d69a596b72f6aa17300fcdb30865d247d7e009d3d6f66ae3d5c56081eb8d19c4f8b4052863f9fd0147811f63e03e097ce95fc5e5689fcab7e518e678537a10316455dd1fe32c414ae583380f8f7a05661481b8f7767c12391c254a36ea35197a735a39a402f528417d4f2d15cab59059c950ba51f833aa43e5b5c8261c729a87983ad5ba87d2141dc7dfb7f411d3a6320e0e34a9488904dfb1a6115f0b660b06c4f61a1b5b9882b20b5cf0ea0a438fa13e3b09bb467b3af1604ece994cccbbdf26fe25b04903e499efdd777f7cef7599f4927b23961464492f3051be84783685ec87cbd5ca8bd01dbbb70d442d0fe5956e7ea1756eab75d456fa2e68ca0e5aef721452182c4bc7c9f03754ea824a39b5455244141117ffc1e464cac69e4f10aa0514c131f6335d948a831b2cccc3ba23b7ea178d04191509d31034d107f4ebaf47e2f5cee110863f514738fa8b2f99c3c368ff89478b3bc5620818594438faf10dadde1cd2a766d7459afef7184b36baab3d078bef20224b17c296c85053ceac0938f54388eabf2bedcd6b7ca170a7374efccb1f91f7de1fecb6658b47cfc41bc39715134ffbb622d8ecea597294d861dffe05098418da5e68744eb9dacd953e46e802d6a66b7dc03675b3962b0688b8240a5fda5b9533f13a609f91fc2be5cdf82d1ea533df77c15db9f4fc663826c698d4f37a7716dfe6df5a3f409844e21ad3e55c59780e0b81f9b6c2a4f7ad01c916bd83023fe17529af663ed649e86b00e4d42bf23eac0b357d401eda97be00ea5552c34bcb9ce28c664d3e905692d09e7060cc17ee5a117297fb400b186f50b1dd018e7e992842d76feb3e07015bbe97d53969cdf5fd2bef228d34420d3e7ef2c6bd8decef5a4a578ecdfb0457f5ef961793f47941027e78b4168966fa6dcf34b6310f42b584464e84789d569de4caff490417fa722b554d6d352e5aa26769aa110eed12cd7becaf61ce2d965492a15d485a111353d7c056d99ee30da41571037a183801ff0cd1f119e63480ad488d4a150132409d09276a0ce58c3355d92eaf9f1dd980990349482fcc354391e6d3906a116eae9601c8714321457973cbebbba8f24f12c21e3b04a3577adadb4ffeb1c8f7ef046aa39369dbba25f221fd5067d455499fb2b32572c65aee13de625aa1230f5d55ac29deea7126444bd11f2f3cfbd7e2518f5195ba2d19601a44131f28b3fb07121e8a1e984be513f91821a31c89d10012d56d86223fc936a91db3f3c7ed2750698ec3e81e8acbb6485dae1faa58fac3eb88ca5bf2d6fb2180fce95773a30e57a32237ac507d64953107cdd746b48abb206697032a81a4019d2f6ba898b13eee21b5f7bd335242c3b712a93860d312a33680e08844b2a9d6baa00452671e2fb66d1e840595e7de4a9d52ad99fdac6df3fda26f0dc1c1523bac45d7de95d17b8c024375c28f918ba5160a9f4c07adce56af1e2f082105a68638a465cc70dd95a143935d1d8265d0d2cc500dde8a07223e618257d078b921ab70a9b04e618817798db8ad61636639fd30ba09097e371491471782ca26af43e7874659d69c5c5d99657fa22356edbd885f08696bd143d297f7d2233eebdbb7b0042d86c04f3ade2d45848977dbcacda1557fbc806bc900aad5f51d94464643931d92e1aeb3d6afb3da5d9be95b70aea9f2b397db589c10466b47cb3b32f3282e98dd7209d23259a46548c8716ae2cdd5e0a5a0a920c59a7a514bce4aee30518602f2a7528adda84f581d870f810694d8e74f46a3ad76010cb8f53adee9f21de060d48bfd31dc29f07002a2248c3c0e744ed6e614160556ec7a0eab7d296361fb4d0de82f5cf475223abbd09cc3c0c60b40c98a7ffc986c46e5fc80d12aaec47f6c434dfbd0b1c39e5bdce2cf23257d0eada4882438a4077d23c300f24f5923c5238183eb6b341de24280033356ad64badd050ef251ae27f6ca36502a3fb8dabf0cc41d2ffd695852ebb98c02ca570bdc6991e0ce596d3829e418c138dfc94bd3ec753a0f3365fba74a73197f92fe8ae6a27b5c9b086d091f8f0c54243cc35cb5260b9c37e8f0c061c8c9c02c3f250f81d6b91380a10399fcf7d8ad6481c11a1726ec88092d28883666592831af557f7327f4c04fed3a712794758bfc8cec1a002cb9dec687ea33983af0de88e66b08273ee898440d61a4e1a6ef82c3e9f0cc01fd504a3a95d267374e585aad4edc89763a5811c09f280c7670fb720c02f6913b7d4948ec3ec9e3fefdb834666717c4c3ce5a10c72c032c3f574220ab2acf80fc373d83f1ae676cd5b08dc4965224f0b81a253d6ccdd45a69b829cc2ee9f52d14ccb7b69362256b9dadb13623136a27f799a25bff65883eccbb0b33bee99052bb3a2a343352901dae3917f90e30134f41a81a58b55cb4d94ced97002c5d767271e157a222defe6e86216e4ca65ef0ef7bacbdf4b21ee9ca9e220d9e6d4554a6aeeaed0fe6bce533bab41e14c47304c4a79a5fd3dc2566cd61001734f74e02e810c0f89ae2d4f47b366071408395807ce5ea7d42b36a6ce969e47f95fe3b29f4d80312d1bea9425cc4a4ce3cf82256c37230fec5d4b7fa7262da01711fe89dd9e88325fce87c3c15c71e296d03bc29623afde03ad67deec2261202a6aa2e6985c8789c693ff9a0c51a4640751948efa586f79f621d4159af43b5d41a160c52fa5e3d7d28bcb996f73f0d806b04863f09d967d2791898204d8a03c936a93a66793d3ce5584aa15e9160f63e301024a29f2a2f265e52227f2a05b13a022149d26df8434fe33c5883f23b4955f43890021235e641f884f9433f74638b2caab17f03d642ce9f41eeab72f9eb45931bdafe4d6f3e98812088938b171eaed8071a61268a31b11fd7f7e0b6d020edbb634da05227c7a4ca16b8f57ed83b4cd97e2a1a2a872332a4609588da47845a882aa707ab03a993e2e586a2aacf6e44177f9fc5d2823b12762dedca1e0404e0094f1b2da524b600abab2a1c93da8ee503035ebc16fd1b1b70abb0d966f56dadc48a4fde9d65252ace431dedb5c4740ef8a9b93a5f0e6a63a2067cee3c753338afddbdd0533c9eca24a00b88023e319116829f589c7395f6806a060c16a2040dae503df1925964ff86eb55f8667bacffeb1193c153a16ac857b245cdbfeca76a922ce24521e74f6549f9b9dcdeb41a6d7149e1cb5b6ee1d170e86fbaee8bcf165bcaafb35e9181eaa18f6da6eed387b01522f6352db80ca00dbe644a043ffaba866f01b7d7784eec5d923cf945a60d503dbe2e2496b18444ce8393cbee349a876c45471e7fef0f62668f93b7fa6719318f84b41ecf2592a8abb08f3d2dc0bd08a79ca9c234ac3b8bca45e65b13a72365fc827808257087cbd5a47751005bddd26c87b6681db08cf4656a0c8b5902683e5dcfb6beb62cb9c8c5ce961fec084facebeb3192c4704ba179a3dc9d9033c6e85cff6f4300f1a85978f321e3e29ef70908d962fae032273c98e3cb3b6c0830260e0415336de595f43b20409302ca77f1f0c5867b0f3cca0a7ec706dd53e3e91131008f89520e795ee9da5f84c3b2b680bd7dc039fcd59dad47fc2058dedb678a57fb4b480902ab8b4185e2935dfdd146ef25f408610fbdaf3a30f8448b3aa38130ec51d0124fc0bd4ac99d6d94ea59dbaf768a4dd00432a0fc66b2cc660ed244793c5a7cbbdef169efda7cde921a2fe642078e2f1753b57dd5a91d4fee10ae554c010266175a0817b98edcc73cf3161b70c2fa83dcf97cd931cf88d2382f90eec0530bf5dad92f389a4ad94f2f2dd07ea67c77b8fcd06b0552568d88d54d7917c7559bcd854c4929e3359b1fdbb099ea489c4bb9cc47574021420ad7a8e316e3ac3347ed5ec830b05ba21e6cb38b4d3ac5f4a199e20ee535be41ed51860c4a3f7800f6afa32d78a15c6c966dd2b309e907bd8e0d86c356a7ff6ade143cf9514150979fa1bf215fc6b0993243625815f698410057f8b75473822bbe96e1b34b76ee10809b78768839ef159e557bffb700b934f5692934c4774659681e62a93b84b192f52ab28bd04ba61c50f78a4a9829a375ee10f0c1a107018edb9c317fba29c21345469404456ac0acc3a3067cf3d7d870407e2c5b08c48036bf17e3f8171ea91925912882f562604aad63c6e1613dd01191549181233b242ebec26423059125ba171bcd343e9c9eeb926b7617ad08699882f2087b5de9a69323b87d2f9818780ace0f4c3ea800ec103176267ea05f02520c9c4e2405b8904a3e911c1d0206e73f64bb4b66a2b1ed5f0b220189e6b8c4ebfc800690d47579fd6422555c1fd5a9b5c9177cc63e1e07ca5c18a4ecc87c97b6a143a7f2d7a48d6025ebfb47e313ea8a64096ee0bab5f23d9bd709485d603d966e0ee4ccaeb1dbd8de59a8a9039729632b1c812fa14286d556a1b4f42dcf968d213c39201ad4a31a531de97754d79958663f3a6b5f6fa978cac1113e4630a0cb15c689d86802167ff7229b3a84de54ec093b5108bf93db3c095ab18650e6f3cf6fb78b0de5280a8cf0f76d1295f1b57f106f948b176a2b762faac67bd92cf16a45b943ae7326d8f9dd46c8149cc88d5c16cad9df25a6e717002398b4d131b5e3f3c7df0e086bf479575d964b6d128feaf3fd12b2fd131873a5564209a12c2cfd1c21fc2055fe8d7ab5fe5bbe0ffb9cb0e3dd5785d64f2c44248a791cfe80bc4288549f332352c1499eb309197a604b09e1502053938c31e6b1c012ac65b7a1fe1c6fab5dfddf80fdfc7cf452dfe3f18a9fcb3505600cfe6877c76badf041791f4cdccbd0b7c87ae038d7417c5269f3d8dae452b11f669c07f1207a1997f6cff8a3a85fa9fc91860b8ce44fbc3fc4c2c0b7003eb6d129f07c07d7b125c66e3e731a6e250fb7430d70177fc169c6336e9d2e3c42ce177b4636527d50ee8bc6871a2f4278e25c0058b04457fb24ab9f9e8819096edbe0dd4bd89075f4f5503ab21ead9c00cc79fbc9f6374a9e7899b9a1b087bef1bb5f29d398a1661c2771c032cdf5fb7f24bba2583870067b5d3acf28488ed6d45d385d3259796fb063c78c03d5d559987c6ca94b875464ce7ed636a86fa8789ca0c72154dfddae6dbdf0c259c80347887f1d68879621e0cc8ff60fa8916cfe2bbefd24e6c91a21e5aedc690eec5dfdbed0ae93c6be846fce9c7f5b6175e57d8be5166bd6086b927bf67524d00ac22af0a9bb3b0e4890051975c213820b57445bd3ba7962446fc46ce965a71fa28a863c5aad68604158864743b3e16639de94843a3b10f24c14055a418786d17e4d6ced24e10aa768b23aea4776a64782dca34c3050659e64ea475606bd13b7498a28b68e450ee0fb18605fd90de689f77914a7eea9333f694cda4b406746fd8c8382c0c74eca6577453bbabe05e45e2b901d60f4c4f132d6b1a65d8b2282a44c3116555f203534080d4c8e59694edfd1bc22696703a449b300880f9b81ea989f09c540b4d52523a2f9f06af197bbedcd2f5471454702a073cc30cb142aade62ae49e776e16afa7de8a430a7bbb82e84a049565d73065712c0226d9da23e734d8223532dbfd19f4629ba1cac41648945776d75e61c8fec5fc5eaa0b7a6a54b6d1f06a04bd175b472592b4828a9fd47b9deb2cb17f4fb76524374c5e2018dc823d3f195a94b5b3f556066851199d6724dc7aee180ad70ac138690d075329ea7759dba7c1becc7e22167e282b36364d05ff581c21c3effbbe4272495c01942b5a78814b0ba9cc11145c981b01eab7160ae8f15aaa44626cf5b8d9010b1878692860a749be99801ab44a7a942228891b5d9ebc5528cccc480f8135f603af338dcb6d6f8c8e590ade4bd2fed08ae41e0940b7d11c7d5fc516c9cc68368c6f1c533bff5d46f0f47e8dde56f8ef66cdba4e58795bf0336205fa55c624fd3b3053bcecc3072fb8a6fe6f662f55a51e70457c7380dfa36b75f6a803c5e99653d538eac465425f0a09b8ee93bd381958c9c77f8c0f404515662c9b72591f38c16349b14c31eaf66904c0110f2bf72cd928fa86a5b7df95ee0ce564feba59a4eb31bba5a728180729f6a6f52a76748e937d0d347cf19f046b52f72757c7009cb90dbbbec2d3067b12d88d5237d88b6c53db4ee66e79aab0df26d15379ca371398e5e80785cf30acf66864e584344a330cab73851ad38179224aea7b99603d55602f253ca2318fe1e0c3112e46620564848051340d7ccd2583f7b6ffad3fb5dfcb16648ca43d7f3a7e880db59356a32a18ba18d1f29db048c3aea613422663b0b902dd6fb6844fbb9d7500aba820b93612fc3b9c722adaca9d60032d1e623951a96cafc2ba147415394eac560b2f41be692d73aba7f6872b222e7f5a204be3b1307dbb2143522d8481dd406fb5e8ea71fdc1ffc9e7c67ca9ea209a1f0fe1f49147cd7554e8c3fe33437990fafed39ece23070d5ebe3e0f84de8d99ca2839551cd27a270c4d6177a6c0f9b23fd79a68051e8623eb6735451908be456a4c5f89a55d0fe54194130eeb0de8617b0a1f587048ef4a16a69078ec031b93ae3044010bfc0a84f87ec9b24e7177be13bcc8987a559469714035b06da9f7b1a230bd08ba9469faf31189c69ad7b91d18b8691ee7e8e9b1ae464e37c6f628279d87cb524edb5d0a2f7376e63b841a4450012a78d0208b1069dac293629a6bec4c2dcebbd1d9212c0141696597d21f3480512c43fc7cad42fb9e249b6418a5a9d64aee5c07320925eef124751373a7281783902f1c71604370d688c0359a12182a08512bebe1a3b105ed4b72d94ef6c53578589d7c2ec10fcebe4be57353745f2fd907b6ab76381ce5db0cb4c415cf1969093d60bbe30982f12bf044a110406651b635a12202505844b65c8ecfc429c447a4352066f31d7eeda40977f20d2507a5fed56153e7a7c1b161f7ebeef051eb6a6d117797ceb542cb118011f79130f793cd2ff5e573eae9526705ef98cf78823073d02085d86f0eb6b6fccaf75b23187d7ba571dbacaf882d82339e8b9bca30ad09e99cfe005da469a6628c4e07bce32cda793b40dfbe1dc9b754baac1bba68d67eb5d0cc8cdd98e23b64cefb12ea9fdb7df10901f853d9e9269c7d1d2520f8034078fda080496066917e9a846eda07460f85f49747b1cc6d99ba4e7998e85d67f1f6e92831ff563decfa7aa3c8bcc080ca92afd463d194b5072d77bfe76b20426b16f0cfccbfc582f687a00ba3ae023e204161922b17d07a008d022043e7a4d24aba3cfef58a35c8be4cc1987e2c5f9fb3b34a83fb4d53bf2157a7c4b724eaf3e9b9b3960dbd966dc5d1cdebd3a1bbf077a32985c1fc8212baa85cdffa6763b364fe04a91d7b8668715130c491368b9e2d620d1900b01f39a13ac790c5fac920c3bc730f5a3be705e5ba9ad07759d312c8a069355c3a478fdfa36a820c551ae9a9f0d3c6c07df7bf07eeddb25b456f7806f58653f575106230cd899a1055f0cdc250ebe7fd6c571ded9e97f5db87d21c16e37603b9734967567b8babc717dbf8fb028828b0cefb8f3dba9c6150a94899c804e5edf1afa7fe8b0dbae62bf7301f2383f375cdb0b9dabba05f59cde5b93f2b418c01f7df54cbb5b745746c7b57d81b7411815b3fabda160d9f59b13de51479d77194d168827354dcdcf74011aa233ff0abf610a1fdd5c86e4c04f81daa67f97873f00420bcb46607953c7b521ddfb3ea2c979309d23a440c0dbb87dee63ffcfbe6850eca1f98ce5412114f54755cfad515f420f2e3dc4a09c5ddeaca30e51d3851cedca59d1984b872d55092b89319c793a47cc90f297ebbca317741dbd6b9c8af183b99f77e359e9e0b893c638425a35efc23332893eac92892347644e09f473134c08d4512032428f834feb37ea468859debbf07e0d6f63a39245516a49a372fd7c1b991988fa93213acb78b2a9d5a46d585a7b8ccde94d0b026292007613b4f53adcc505b54728f8d38d48891eae45f956133f5de981546b4ee169d041a0d2b72a773dc5e651ababeeedf8ae49e917713bc30f62804de3ea6fd6e879f4aa05d09fa976f0b06cd68e740f7c271b17f5a9954966af9021e0ce17a7e4480decf57ff8de433943554f002ad588fde833feb3815ec9ac8696705c2e69b26b5b91c8101c0b5c7ed41a0baf294da3ebec1265b65f026d524e4d4e25c0ed5971c32ed549238084bcf091f0b862173ccc8fe20d7f8ebf5d0591ac2649da6b2ffa30737a63fa0af68ce4ca99da928317e6366b779c4c894ddb683fe957ce6bfb090cdd6b351501a9c176f434e639bde4f2ebd2254ca9f3e7187c47e48c09f1108e7cbadb26b885d09bbf156d6e19377d669314333a01a9cfe293c878b85300fa9e0777264139edfd48479a3b1d65a6a9de67885753ac5d1d996cac56ca3ef864cabf98be2f0efbd8c09e1bc70f67c0542574736ebfa7edb6c655fad8bdd33fb4a0a86551f298182b96c29bcf5a67ae7874f867e3c4f96c22f7a88a88bbfd081a11c7d30e77367e52577705b4d108edc69529f5002cc8f7c85c225332563708a6a7387a0244a9dab4ce81ef24a8aa2779576d1b7f710b9027dec5cc6e92da763ae67971386ffc70ff4fe0b107c01278dcdec92b3cc5d89516efe1e4ca78b01006c6019aebaf9e5bf568f3d8a029f8342dcb67de40ad0073573a77ff402d059bb56d15356f69020b096221f122c8c9a950a1199669d190a7eb0320490ec8ba33af46ab117befc873afc5f7bd80d1273f39d07138edfe12e0ba41aadadda1e12b3f35084f20cbc29c2512b32bda663edfa733f7c45ae375263143abbad05ad386870c03f220713968428b21905e5ec0dd83e5cc53477e14224a7d289fb1c8823da65b3e98f1fb90027652c609b0658e9b1be3b7a90d29139d8ffafe4081e076fd05826a97d742f7e5a827661da216c167ffb5e7b98ec6c81b32a32683a8b40a5a8c2040cca34b77718d1cef4b574a15ddbe8de69d2ca06c737875f2f8b027793b5f34b855fb6127e399a8b9f6c017a2633bd7ef8dcfb69bcc7c324df97ba08cdf1c60b41b6bf3c9ea8a85908bf415a6cf7923e984454bcf54a54ba60133fe399519f764e565466d4dfe5a5c18fed0ca01d5a2b56e299f3df570b41f33b6a6b70c53dc93f8d63a34fc11f18dd6d8dae4066a365f9a0a7a3c1e7820b1eaf3cc6d1b337d956b035a3a7b483bcce5fabb2ce885d5b6e7c306c65da1df090e1e164fff0d82c383f84b44c7921ee3ad861c2b64dde90eb2e7b827c80075961a88cf46d4c4c6d747abe38626ecd5addc76c26fd7752f1f7f592cdb176ea716c0b818c80c6a81bdfb75957e09fe4ab272c53805008af265cc74c3bccf316c2262103b79900851c75d6b37df2bca8813e0ad71f2fc98d16b1598b71cc8baa6df797f81d4bd90ce773a9f5773811d23ef0071b080e78c6d484b106e0636bb61f21c4a95b23ba306d6a095541c88d58a7592ba84bbac820fce6a9e3a42de428d4a12ca66143fa5562297409a966ef2e33e67da08a68019ade1458383872f7a7b4dbdb00dfb4e27c21932557dab59fe9a23a8694650cc5e18ace362846decd51f52398a763be02c0abe2dc713e27bafe2882888466e3fd9114e825d1be2b6ae9b068782e18aa60e1821788a9fd3bf421c340951119c70f0eb851d91addb4dac6bf248e1510ff5f8af7cca85b838a462b251db33c23aaf8ef6df24bbfc378235e0e5a6e3ca6280d11610cdf05c87047d8912d806de0671e0ed448159f176f755d9aee516b94f9310eb6b5197072bda83055065350df954d499506652ca88df5914789a66d6a948fb56f8aae1995dbf9f8fe655441e811970f884ce0e7f0e98ebec8855b8f77252d91b2a560a5b48430e45d51ecaebcad42514f8396e1d3722bb1ee1c886f1b64606278c62dda83f07c1075431018721613065021491d3c434ed45145ccfd399d95a87061fb0a121fd9b42675b6454bdc998e3db2ffb8e7bacce37a70e896706e45021b9b2857e970305945285f5a5feb8872a184b963692b111b3f17491267b538f403a5b838f8bda1f2e7114987c42d942c3d0982ef09f1e57ecf1c741a9ee1659de2cf8e556b2848c2e0fccf4b0056f4d06e07cfe532872611165790ee263f199ad6a7f5bc45fdb7827568a94bf5b7105164fd9bc58e5896603e7a78097354218dd98945971d2639be12d8810af23a336fcd3a7e8e3e9c7ba3eb67b8227859fdc7d54be838c0ef8a5c9ffe56a25a54b5c22365d6758c1139d93427ded5474c22d01fb2f67f6ad622b4a511da6910bc1579a560bbb728cd95bf5746b08197149c634e90217122f3b7774c6aea7dbf1c16c90b13ff6cd4b7ebfcba07809b8e71ec48a3c992a15ac5684f9bad88fb1611e1d307c0d8aff3170d29566496bae4264e93a06d595ad06dbaedf5a61c48117e787c602200c58589e59c8a78ebc236aa4545f9ee6fb190baf199dd6fd23df69930ac10733f6a8d785b2b44d427c6bde93969a69b5b8a54c04f1c10196c431ebc53764224a62b3152bfbf42eb326d3e7df448998b4ac5587e35d14f0b42f332b54f73f5522dd61171bc76ab9c0e5306469e2ed7edb70c7e1b6079a6a9c59cbf19b715c1edde2c9ce883eb928e9ebe0680f34c54b617c5ef66a79b5c9b916d8c682ca9d672662098c194e81cf7fb62e0da5db3357aaa63271fe60808196d7084bda8bef26f8bbd30545a91cbb71d231eff87b231b83a8d8e52ec8019d70528eb162dac5b1d7d12788eaa8778058c2e13801be6f1d1fd5f9121e0d23a14877ca4f8967a875d39f97d4fc6197d14040d53d4d47ad4c4c37e73bb92d9753ecb15fb93cac95d8431ea96adbaaff45b4b8d6eaad3f401e63bc7933ac4438cf95729a1d873990c35bcbf135ad326ad20bd08b0a46a95fc8b372b0171fb256dc08165b0774793713f06f99b905c8862c9dcb9cd452c3a238b7e99b7fd374fb51122372ad3d9dbaeb9c9b8527361dc66642b1335b8d85337e206b318fa2ddbab73fb22e9e20c8c664ee732067a724386d07521257ea2898ad6f49f40bad9c02ebdbb10958a89d83f51fb18c25e82fc5d6778fb761aeb14f5b091b442ece4524bf64089dfcfb75b02e067ae38bab85028b9346a1621e13551fe54ad1f4414fcd97630e04db518b72cd48b465e31ee68bafae607c0950530776a09b24c81da624abfafa10c684b8f290b865cc056684762b1ec5bf7a37e9fc7500d9734e9bc5b2084f9e6ccbff7530511821b03d081837a679a9b79bf261c2820872efc26661ee6a1e534628b99321c185ea2031fda6a0163f09df616d286046d2de0ebb6feb92ef3dfb40d333ab4e3a747a1d257074df0a9e8a59f4bace43ba56be0183cbee56c5976163144f9524b01e72e4fe11a985030a64434e177e53211c0c6b617088872f4f948975b00e69f7c607164731142234c0c5dfd1de8ecedc56dfbdfcb246dbe33c2e16d80f0dac15744487e1e3f4a7d2899b3d57d3246a69d7da5143da696cdac1d14011b37c771c539dd2e9f411ff103f18af1691c029c9c82bbed2a2c668b393e3da589be95fea3e827c53465a59eb11bcf3707be4bd33057ec479d01aa00935f17b6497d8478e4139547e2bbb11e8bcffcf8111f49a50e82b69620d59bdb41dc1606f574cc2227c70014747194100e0f61b3420afc48dc4e70c870bafe92763ee659333c6466cf2ff5fe6b1aa6bb440d100be43502680729361ea53993f15b46304e9cfcdc17f846e912aa2902b1bf6caa1ca8c9d00881ae00d1013f97e8b91904a931a5ed4630da14f6f32e16c3fbe38db260592b64a2e66379d98bf0d97d4f39d1514247a0645e658d255db8da5a7010e868fc6610e902cb9c6024e3c67a86342a33ef33b814303cc3edbbdcbe1e97417e207d03befc7babc39e1c614fbd7d7d480d923e70f3d59137ff744c2fd76d1dfd3fce36071bbb9c4e6fcb86010961026f3979ae7b31a9063accebc3094ce2db90dde785f8ae6aa335ff19877acd4d3624a41586773c53c6a744948a58f7862ad2e0813f7adfd2db747ae80a2abd6d6805cf4950cd4afcaf17d945265c6a07f6a78f87dbae7bcf2b9a31c4211613ee7eb088b452bda6e8ab542770d483e15b6828cfaa28dd0bca95aea6d2293eccc34e5f95ed962c91a0ff28a2ab7b8119a7f877a752960c469690be34544dba9506cf4cedf22550108cde318536205ad6cf8278f6c7c4510fe7fa6ec1c75ba6fbc3bf17c43cf05ee04b9f9ecd7b1b845793c2c945aada421a68e5ef0312dff756b3607015fdabad482c9f398ed31f2efee6f70cd951a52c63cd9f4e5c3e4caa7a31abfdd0fae89948bb8a63204adf8d530556cd0c2bd17a8127f84fb5afaf1cf0a7b1127e3b1e6198c7346a4daf053cb658c8a17c7a4689acc592173d176ef04b6494deb11b8bb10b2a9bef4f332d6346824c2f9b2e0d924ffdd951a6be04df23be7b823fe13d1e966c8221d8ad8ee3d8bac7007af1066d71cdc002e1a82ae047e2720989613295fe64c5001c1583bb41c67de085d83edab6dfc4829dfa0af34cdf1eaa1f0c9c004b731a95d865ef4225230bed26929149a5da9a46525326afaca1f1eceff021412417879d76fba3de2643632a34200572056bc330789596a74c3327aacf7e9497b86a78350982c33e7d692695f48a442d8a8d6b787f72d02d7e86c124478815d0d0b89dc29688ca6d46ce2db88afb112e11b50889ec7012e33ae7f81d3ce157fa937799e356fa7410073d54f2401e0911ed4b716a98cdbac7d2c530d4e4ac3d10d51f63b8f73279a56f81fb277fc706c4f1393847b71adeb902a19bcf9ec1481535fde631c5d0ac8f7ae3a24ebaa5e28b4316d362512e5673228f1e5161dd728f1e3f3683edffdf4c41270bd99c773a4685cfccd2113942d43048a108cb1c7c37ba176422b7d4dde03b5bffad9df604bc187840bef52a8d2a34850a04334382f1432df67b838407e04d901e6df5f128b9aba010551baf839816b5304227a5617e1076598f810f312eb41beed836433c6f659e6b7740ce174b83d867633a35fba3195005df1e32f148e2c536e65ceaffb891c3f4b507b302d49e89bf3c51cd14bf0d3793491e23b1743d2dfe1981ca580be0683de78d2f2562c37d4d1765528bce77e1fe9d3769acb05618b6a7d36b4e996a96061290a373cbafa243942c54f0446a7ce7ee6bb5439318cf711a826d9f1c26429ec80e3b3d97d85e2b9411c5acf59e27c79414077286c8cb67d9a9c33a235802679bd9c867a97516021bf2a7dc25dcec62c455b9821a44fd40e3d014f26e1e31920e77f4472c1b64c122744279ace2a07e6422a3d8a7b80a7a4625756756f7a330dbac9f715f95fb97c6b0ef1b907512a62218a72c8bd75e9ec2cc4a6cfe7553b42ad1a3a8f430e98b8c6320bd6f1a8433429119e415782bc95c5b2b8c159d24b79bc39b43e3969afd6d13c984f9ffe1e19f77110d76fefc99a6c33421df069e9ec1ce3123ca03bb711575d77e06bf7a8cc728d381fa3983f2a19162c343cfb57832686caf594a470090c6ecc9caa2e0361838b6fa6fbc3813cf5f98a23f36c55424cff226e55fb9d3048a4da2f9705f0ddb0408b1765d381da4dd30a616e163d8fccc553a1b4bdc0d8eb813054233fa47176314b74ca5e775696d452908abd0fdc75d048084ad4993d42118f5b1617d7add3fa3c5fcd4adc3c24de41d5565ebfb4df0a2562f37f4c7a869a57b939bf02bb08a4bb7e18212ca9fd754bfd3b99771e1d32519e85cc2011901a7ad72b975f256fe64835c74e9ddee6915d45848dfffb72d3eecdd0af1ab2fba09229588f8fa29054778bec233e4db0eb0ee333505e6edcaf2bde957435e9ca429f55fd42bbd39a4c4af266055b0fa43b60a844096f4a1bbd5fe5264ab80d084b26df01f4864ca9d74c27f67bbf3ebae21d1b098e9feb80f3e085290e56232c904728b219ed0cea940f4dccef7474b76eb9379ce177a31d36d1dc4cbbe47be694854021411292e5a611442109bff4b035c438c6b75f67c7dc87b14b462391af9606c69ed611c0df749072c35e79f62939be320040c78186841dc28698b4d723eed9d2a9aafca84594d2fd2364cdf1b5d1186d6a75e16205e881e492ba931919d2619030d7c1f7321fa56f16087c653e7a99e8d86815d486f313b73f714a38add3f98d9126513a73d7d75b2143e30f6d57023cfe5fe26a4a893e82a40f2e346667c77df74487a23185988ea7222caf111d503d4628a644924a4c88b636e5eb1525a8b9e0dedb5ea65ece95252d97923d8629741d2c6de12430d2c400696986e434b1192c55ed2e4a6e147805aa5ced18ef72cbb1933e5127b6303c979fc3e280bf42e62e06a54f15f32cf5bb22653f09730e61727df2d5fe9b81f6f5c6e9c01073867eae70740df4e521387efafcf235f5c0516bf26bac258da1ca156655ea1fa37244e8901d48cb275be7bc449e6c5c82037fc5f02400e0c08df40951ea047f8c9eb25306355152e436c3b1848c19ef42466dd3d899bdef254a5d837cf0bb9a9a05393b05e866c515b4ab10868bb8431a171297e4ae5723b208d3e97c99470f62a6afaba416a6408921409a8613461591a12aa4e412471e6772d3ef18e349d942382815c82f5da43b78b588b43b8c99dd74280c3a14be02e7be2ec2417663fcdd0b2971283f7a63740d907705ed79677a434f384a23d4df734f361e7123819aaaf1609964097b351b608e130cc1246455c03c2621ec410f816a03b8fc8400ebbb612341ff5b23df7f641f7c4f4fd65110034fa29c34a8636470361df7af71026e8053ad452d1c7cf4c6c3762df9c7e4976445ff6042e05f873f12cf7d90f7f646503567bc50896473200da03e1b108972a1a331431511ab8d0bcef8fcc6c2e7cb60cd57676f4c043b9bfaf6af83ddbf91491dd84a27a2c141225d0d18d18e8ce5add0677f11d0b6e413d84d6dc68ae1ec48ea90f0ebc328dc26405d985687e12f1876750f73eadaf539f072584cad017fb26c7c5c03b0ab9c9f9d522e6524a7aa286c60f1d7bdb8e71d69336674ee1f5217b71ba9e724686959421ff80f1882e1513874ad55cfc61c06972cf32ee003d9d467bfae877bb31cefc9a60562a9f63a6abbbd820080a769eb27661d7c0d30876c2167d1e7ba224334ac4c19fc618344b7e7b3ff9854c3a9a542b84d22858a440678c2a460d567fef64523ee0a73c8b3424eb060a614666698af02d746f1523c88f5e8fd08cf8064f79843e422e89c9e9139e8f13aadeb8cf59958e5776effb0241a42dd55f7c1e582bdef8e2fb08eb131dd38ea6560f02fdd36f41b0421abed0df7b5f83b2a22ad53d4f7a03e8869f89463845e6b879283125658e4ef0e603a4626553e19fc02b65762c945fd804e5e8aa40d92410a84e695def1486e5a976a9698f1d3dbe08fd09a1e459f90a1a3980628895029342d28650e0a4c295c40b9277f9a0cbd1a4722370137d0e871edbba614e457d5d829417c8a1b7a9ac6cdf59d1c90abbe3117ee0c53c38853e2bb887aac70898a2a1f4cb8fe9e8ca9cdfac4f2e720f579afe39e55815e8ce3d17696c71c3168f934397e86e3fdcfc6fc6a190306313bb8d8c23be41e8f87b7a67b2d56bb77a3fdf7d85ce554eb0a762c8a54bc30486d103c5f9c45959728a64b3f629da6098443e6fd87a15f93eaf85533b4d07cff12033102fa9e42b3cf0c3d9d63405eac4fe65489cc85072904f7c0990bd5e23b46cdb6433059340bed95db06e0c901d7a1de4f507c7b2d76b3e2e69df3f32db4e6764693ab2568dbc811765d55af1ed4f33e594b95a9cdbff3e39236e675e2329215ec311785fd93bf06ffb2ceec4e8a54aa5cbb2ca59a03d71e6c650a0166fc7e8ca2f92260dbd9a2196539ec44fa00e23e52f6af9f32e8dd2f803e905358ee21c3b65e4091bd42fee57c6d8cd8ccbf75848591622426310ba827270c18a1fd974a9a4563bb579930ddeaa82e299e9bbbe67e9278c30e2e4d21d1ae55b941de9c2dce75e1a7ba21e86eac5f1c7728d0f5c46bc974f0576fbc30457276ca206ec2c88a5622f2cce94eedd7683454a8ced4c4c0fc3f0266f48128bc6e123f074e5907b2a2ae7627b2e6f6661ce3a016b18e0c0355f055b29ec472fea23020caada0db894bbf22790dd1f4155644bedabed941d8b45106f8bb50a0d2584de2d2c781b5a5321f5968461235b423f65e3036303b197a32eec2feea6cbd977f7afd92b69b51ef1495dfc7526ccbd87279eee8686f4f1672af1ebefefa5a2e247d8f92c00a1a62c1eee15be7f6fb01bac86d99264df102a6c03c7769557b4081dd7c43f5d447c6c4fd1761fbb1530e097858ed5b0a60e8bed0a9ffd4ddf051598b1d6e4ffb6b8905ce4af44dfc78ced11f4c9d2ca2ce8f313e32fe458bfbbd8c602b905a12bd757d12cdf6398d0f8151040370a6fd265cc4737e08b4f4baea4670cd53239cc1ac86942e4e9e770b11c07341c59308017a358342db90b31403ef25d31598f551fd6de6344d958085b729425183f64dbb43520e0867a28c3107612ae2b04ab8db52863aa9377b74526da087170ca5b5fb54af04ebc1d7a2a851fb92bc009efc9e697905f1058b93c243f3da7e0a6d997fc813075409b6d2c6cc2b37c484fa6860ba0c96e2db185510da724ab06aac0eb083927427a6b06e83fee52168ed1b41badc1dca515115ceb6957047962512100fc0bed7b84547cacde7c0b77dce4ca0437b0630a2014d79d85180072fb6dd9841a208161d306e573a9805a9c2d7ff6a4212f4b4a56d6347c3665cb7c14625a50b48a255f6dfa50d42d01da34f67be7c75dcd83e289c3e8966c205b9672a39f581d36f45e42653f1c7f50dcb63e45ef8139cf20450e6bb0190cc33be7f0780034b1d1d6b307c8e95d9f1015cfe72bd3db0184e465b79d3f2cf213fbbfe1e83b6c3da4a110445b81ad20a905a220ff239a3bf5cab9912fb10734ab16e01072d2781914bf0cfc0d47d706de8bf85a0d7f6e077e7a30615a130401d8d11c111384bd80a2caf756eb3eaee0767b79afa0d6023812e6536562744d9aa0d1ae08c337b3955b30e502a37fd35d04db1500a842ea5894ebdbd60698c3910f756ea8af4606dbfeb03883c1e8c542afca70ff83d2e02913157b25e5875e817737dff4f62673fbf38ca6d8241940d9d246d0a5be33b2060d0bbed1641aa59bcce1a84de077fb9d85a5c8e391c92291384f46c3cb823749bc63f85239c676763a04bfc21c57b6fe7e0cd67482817b1bbef768771e207ee8f6e4989f4babe488dea4036a7dac81fe13a390661f79c499d8bc4b6c8bc04686831cd4754da4e7d66a39fb96953ac28a8b619a134ccbb497a3ba4d2d59be0c5c43a3743c5bbb2c4b657f1403a03ad7309695dcba52e89c23b14c5774484782f6c3993409d99f9ea7a0fa849f87117f98d163afcf87a9e2a77c599b5745f3599f492e50bcc1df688771a3361c4503f1930d06e195b67f12417f07d36ca57491d45c33542dc5c26333f0c5cd82c9851c840d89a1e4df3b3aa6a418c93cd7c045db4449e355646fd77088dd80d93dd9e59a60cb6d54d195fca00cdbab294fcb30c176d0ef863a8dff51012ee7215fcf15b762d0f179513de709cd1f8b0a452d9bfd0cea9697c9cd43df0eff43678725ce5e2daf2d73c81205fb7616fc7c9f2e4ba748b06c923d2225bf5fe2655ac1d2b4625f4ed3f2c0437383c238cbe94f1a76b28dadd50ba3247a3116815a02d775aa91a7fff8ba17bc77621620289c5b8d1e17e557c9d74280942b9836d7ee0e55d67993b73fb0979a81a80995aab1b9fe611d9c6b214568c11039d9ae860ac216abda85453ce8044c9f1336fd8d595a1330913f88d23ed9935a6aa637b41dc3ef8fad86b7417812bc2be0c354ac32079848e81abf7e71601ba3be9e54af90c6efa604933e37132f1bb417e11a49efd6221a673f6aef82aa10e5d54184878e1a1fe75fd485ce219347ed8a8137d0be9e8f953d3fe76dec78c0223983b9d09ca815d9b6feff60419f577365174e0d570f7ba7f5451ffe3826f7698784a1f2d7ee7e0e8f449a8a6ea946897ed89e7a115d03cbd2364b92db0fcccffe44b93529c813076939dba614dc4ff66b3141575fa2c1565e92aa403a8ce216852c2bc531f1911a95e43f8895fa476c6b711e6dce6c18457d7d011012da9432f25ffc46cb74cbb4e83d85c695e754f79c91421455b077efe778fd5cfcea84bedfd90174a333b459beae47e53bfc052105192f8ce1f893ec5e97131dffa9ba8ba246c3f558c6bdc2354b570428d2e4c110acfa9ef950b443fc87136af6432178e1893f418243e1bb4a9a4e0cb6f1be0e5c5dda59e1e1b978794292b35b52adb20ddd52a98667ef0f5a9ad485a1fb1bd703f6411c777412769fdc50208744ebf898f6a1d74ba76ef6250acbb0a5177b5f5cf9fdfadb8cfd677c3a8a1c296ccf0c2aaa19c5b23aaf0d46aff75c5c1aaadff5e0abcd41adcde7aeaa061fd6ec6fe243d9b4bd05afaf3e50a6fc2ebd660347fa9ab67716002406bdb59c55c80fc90aed9404b68b1284c13930baf8c03831670e613a492f7fb777d67e15cabc19facd16b924124baf461a7f9ecfdd19a97f7154cf50a6b1b6ef453f550842b20c84c02f01f22062779525ac5bd79e71fb4efb2d25567c75703d097a54031c052b5e0af39913ff918d3da70d0873bd0f410fe29a5bdee06ebfaa3640ae30ab528dc5b18542041a03af99ca2b596974260703bf4719f1b0ca8a80900cb42710fdd5f39ef7ceeb680617d60b468669619e1836fced2720136efdea74b90e4ba44b7a2210c8ee9853981403db62f06892389a584afe617b1bdb8447186d4159dc65737dffee3d46b37243059d108c65fef7da5298e033a2755ff41ac824c7cb85a396c251bc759963c6d597739c4b742d898bbf342841fc8b0ad6d31c4dbcb5e082e51111261a2a9101f9cf345db9d1f994543a2fde60d9f3ea44e55a8b61adf2fa46e6d966d0aaa610ae4f075cb9f02ec46220d8b1b77267b670ecb6511f660b8ba5f9750716632afee1473f766bc46b763f3029be43a312ef1dc152f33ffc81b8a5f2a1feb0ceefc3c5ad0c7b565ca298d7b3308ebff3020ef8f499519332b9b1e2cf125dbd0b7f08de9bf5ce57c482a4cb2784ab07b962544f0a679ef41fe043e3a883cd80eecf52dfa474b48fd71b0322edd04bf7357bbf505b1f4e7c80dd57f7adc3f80e66d66db217480bcb51b1dce1ca7a093a5103e3862ac46f2996406be0cf5fc0b4a550b65bfeac7803520f9dc5fc1c851434602b4f64953a716453cb49565cc6602333d80ea065568a604519665a56990414b6248fef2a31e300b9b7a5dffa4e4648be4fcbde7a47b1f461acdb21fcdaca8ec5cbc079642e8bacb66d2e0365548bed51353d0917436805c51daad2a43d69a6ef684621fe93ea951a1f29f024ff2bfe1a5a9c0490c96d779cfceb207fa1d30561857b281410268b0043d4532672a71a2af0a65c0aa66542f9009cd6e471aa299c14e36164c949027ef1bd5f625d733b6bc545694456f7bae9fdc5e904da7b8bc93a80c673949f93387bf91d0fd3d474bfbc96537d24e44f839a1c9ac4ce5dcfe51bd858141d2cd9293768598610b709b8d4f8fc8277155f97a6cef315a0d3e1cf9250ac076e7e797ee0ad220a9a1b7abc2951e223d769fa59ee46aa0ef32fc554f9e4cb81ca5c520f8229544cad755efd201d732c3c779b702a65bb792ac717273b834b2b9af659b777bd3ca082e64baef88e037fc2e9b3113d7ed49c4ab68eb321272d8a95c3b78093d281fc85450c8d5229fa2423111545bc3906b66c499b760842b13dfd7f37ea0dd65c8dc65d73487129c7cfe688ab65a43b0011f6bc28cb27f13e8861cfd4c4140140abd05d3de8b74d19d63aed8219cbd31eb55640ce5e6cccb523f374f1c9da10d642a44adc2344eb597ed34626ebd50accc219cff0de8a9dc6a30c18287cfbeeb137747976e4275d6b4ddf29694bfbcda353e104fe5dc0f2d2088a4e090e0b3804bc55fead4f84e110350c9b61b4d3490b569f04a7215d7c608103685f7c5252d4958f249bfe4ce5f33a645daa5184087939b1a05bbf7a23d492ea714b8f2f67b29f0f5f6c2f6e79e428ecc48c9d8d28625cbd27d9d0ffde5921982e170e7363bc031d26449b0340f90cd437863e0f856f8277d5cb7347f47d9b7a613d83661ed1eac9f2ee80025de5fdc8f8d44d9520f0797f43c827787da0c6c9e70e60d297c126c0465e894465efb2a6a055fbb799a2d04b66a207b17a921baad16737ec2ad31e55b1a48b26e15cb81c73bc13c8751916c5ef8a538ff15a7e35434ba26b8b3687944c3247ea34f46794feba63d10f3510796848092f70a67c0da6e65c7f3937e3313a6c8f6e9e86639aae9069e73ea8d15ad40e290bdad5f8bc813c59416ab3cadccdf5c4cb22da2879d24497ebb11344d86c6ed57a88c46fd2037a472b617c059b5da5fc9b82a094f11f923b42b0964769db3f00da5af91c7a8b674cac086c80d42cec573f4c2bbeabce122960f3980321f8b53f99594c83116de5546c887e5b270fdf04e26b73836b43ec0580ee11383a54ca59b9ff5a23633af29690ebbbdb9740c9abae7bfd23c4b5400c6df33f36150bf2b02d901776b801753907db42125897b5eb97094d4942c776ff43d8615096f8fd5cbf086d29780f9d056d74b8aa054e3deaa9f12da99025cc13821b441786a4ffbf84910069084a71fe2930ac14124f42eaf9855f339e2c7f34d734ffe29cf1c03acb254279ef1b79fd1196a6a8aadd00abc5b57a4cc7e74fb39be1b86b1d3f8a02071e00e4389b94f09a25f8e80493fda29279e5dd06f50bd70b08bdb0f0ce567aa39b60e72392a13b2356e96a8ea9887f3fb3c18ca4c373048c005468f9800f5e6c4be38de22e64cf349e4ee973e58db2f6af9f9e04be5d2181a46f69a75d3fba70a308ca3e95178336a1423dc206311cde9dc6bba81d2ddc914f5489dd13e1fad14c3e5f140b9da749a78e8347ae3eed965c86e923bf816aa050c524a0440f47d40eb9e5e0cbc3ba959797479f14df3e5f12bf05b9c566361e256f8ee2eb95cedc1df8053be020ea80fa2b032cc0f54b61394043caeacfde9362611cdbd02edc9b3602c30fcc2be5b35846335d8fe9e60a20b3ab69892312fee76bb3bc11ef37d374f970698e5cf21754c43bcfb6f4ac25ce863fc7aac5cf8ab926bcaca2f590ad38bcfd5ffb93f671f385d9edec171c31e9945e2d60e65ae91dfbf5f758e7d20cf4d05c9a918542b6db7dcae0268c2b764310f775a13887593a20caa3cc2f5aed3560140f6fd9f3a64cf3818695b45c495b1d1c2d5b1e69e59ab809e6978a4c9cefc9e2120851f665e2fcda36045705be01cfc4e9a44dcedb74fb5486b393744018086351a773215513edf15fcc63e463c1bbf25d5323d728b003d1689bde4ca156429646ec9bb17f8830ebbfd54a4c64378bca4177149d5a3dbef5b4bddef5df8e3bc6b78297928b628047bb9de03145b5e5e174dd05df94444476e7ee9f16f5300132a963ab70b2faae2b9ba7459a774d90b72221238b23aa128968584764039c39e116f904babaf71829b04b1deed80d9beadad62437e89d9485feaaa18178e3a4ffbcfcf71f1c4c85f2ff11dce74f49d448d32b31b85ca3bfd8b88e20e0935348c3c43a92075d87714c3e44bba8f456d36c37e599a515239857a1226d85b0a3ec74de3dbda70ed19b77b44773d29ee2812d1c222badf68af68b6634afffb7e14b5f1313439ed06d58754b413657e8f0783f173c13b1ee863038fdca34b9e5c6ede78197dd5d9ba8648132ad49f4abc3ad4ded523906cd714efb822d0e773d8a6a2b788b6a66be1d7cbeae8ddfc0bbe668a8422de742ff47f7cc19b01ac931ea5bd25f5c91940eab497bbdaacc1fb4e2f3438878de7941e377d9a7301cd310977e5b51a2316446b5f49a65adfd231f435a1f362bbdd6e66ff31d9f2de1d79f48279f798ffe250d1dc599316984d766332cfebe0beeeb0d9d1641941804ee63de82deebee7cff92553b78c566d6a60ce5713ef25c4aa8c62ccf5c0a11930f07a8d6567a1ecf2ced13a261312ec0054db4a2abae0b726ba9c8752a2e516ff8894cf916ea9999a662f6267e3062576d418aa8d05ada118cb25ddf639c80db191d345e2a407c67b0fe71c5f92c1ce6836545bbd05bee065b91948feece48344b4d3b09f325e4f109d5f8ca62a0e0941f1c6d31b70983c704a20bc24be33527a279986d9e8a22d5a095fee26a3f57003cd125b05403498c8f68585a69eca80906d027d20710317acf0422cde75c743fd97e1a47ee38dd98cabd3072ba52bfa56869f5222dc5efa92af0e7ef42716b1d0786cd443848d7f658b14330b5bd3ad9da16fff52f88801617fb4949109a8bc95a034bcbaa31eaa1f562f2607641bd4181cc96ff0a76bf2d1a62bc81cdb845829a1e54a55904dd13ec0e460d6a8b47e611459cf39ef996cbf84ab33cee2321ebb02927e992d3046ef69124ed54652ffa9bf459f8fad699e34e9ba938d2f85cf90912ef149059fdf0d0f322a9b872992aca61ed989b165a2966f3367705c7d9dec6aa9ed1ba7f411499b1f838ed8353026e320367cf961b068c88bf28a72d437fc8150d3b03d13f0dcf7f8b51d5761d9e4423ba60ae8b9efcba8b273abdd349b4fee069784a36eebf414fc2cf7606ef152f6245f5cb94927ec38bdcf35fad0a783d60c2d40d49ee6c3fbc3e00089b2c1ccd2f4e4376fa2ef8d6b70bdcca6f5dd3b6f70d4fce23c4fb0bb4700cbacd91c28a549b8ce7bc5b1c9708e2a88f2ebe43e1b0fbe385f3bb76d579058d3ad1e99a26aa435be1ae50631f930dfbfb5ca1ed85b9c15fb380ba55b684126c984da7409ef85dc6041bfcfc9aa972c04a8c39a05bebe85e8a138adb8807bb5ddc591c2ee593f2f7d68f7feb446ab6bdab91dd041a3dd8f1a22b0e1060edb56ab0d82db4960482a201000f626d2ce331d52b2ffef22dd608d1c85a62ea6d896c1a4e879670e1518441760c58ee0865be502884cfa0976d595179ae97d62eb3eced0c5a09b492b318b15c9618b012efed79f4dd1867c4b8a158917e4d37d5dda5872fe201f62ee4d3b1e56c2c3abc19b2559aae76647982edcaa42f4164afb5ecdad1fbac83694a5b4565b45d62ee7082c668dcef408b70d08710d23a63fdbfe0aa87492f192a342ae13a85f9316cbd09cb7f3638516e63d6c519d9b179cbbbe88e9e6cb2a4d99f2689b32291e0078416a31b01b576b8d2169f00c07a2a0f97ab0173c1ad8ab9b7cc59332ec26294f61b300fc254d318d54c3a8afde02fc25c736d153d2e70bbc8d98babffc667a3e21a626ddebf1ae7d206cf61c8f5b8e7815636788ec9cb170ec825f10cc165172eedbc1223bc016322797fb1d5986664b0479f5c89317cba56ca72af3eace5fc89e583282a42dd638188870305bf24403844d4a4354326895f12933dd6313a4faf42b0ff1effc3b9558e6e25849ffa6add378f74046760e16975ac0dae0129d21bf3b268b9f9aae05adf2dd43adb00362e078c8225a0bc2ce3f95a84f61a509edaa56c6b6ab9dfe882a1d457728726cf618a38ed64b58901ab1a3faebd494d49c2130020cb87a2ed610e009bf0d3e30b3e0b83133a9763db1bcfec04a5a21a132528e77d0a331d3498f7f1cf26778e4f06806416dd38bd162f9680dfd9f280d91671b5c13799c24cc9e7c446e687f77e4df3e76016c5693b2037aabee5d7888eb7a8ff9f6b78b5fa5ffd7fd286209b240495990736de3cf70b6f05cff3edaafd868221ae203320dd9ee5910d202f6c6ccb841a9172fe4df0d7faea73eb8d005393d001c371743bc5cd6247f0d988b8b5abbb9c19a0ded149447aa9110fa51908b49f711ef105a91caff74fe9e78d39d467e57f42b3d7d8ddb4ee459402964e8e591203b25d1805efbf2dcebf6f8c474465660c6c2cb0650d07a541980cd70d22ca3a210cd813a9acf9e340f6c671ba221e278d445b60ec2b84838fab7c2b691900b9e9533d6be9256bec3fb1e0f698a9aad11e36730a3f1abb77f85a33c5649152853768d37c3ff2ee6586ba862fda74a5d3cb4ba396b5ec4f9eef97ca7a34cedc366ca252dacdb004e4754b17c3cc2a908770e45b66c21eca309df52733dc51dbc42ef7b74f18d44084d8bcaa92992427528f13de47faeca4252549c410a956b08236bab0f2ae8e29f492bf9ddb71f74fbabb24ca54e88edfbdd9fec4283d2ec9b59ace41e72eadbd750d1c3ec18a9b37990f7a2fe54e1338ddf346f37034c24b420f34b47ce594b057af5081fa012b48826f19f557a149d857fa7fa2d573babdc577b5f7c0e7346cfed70fc9cb13fdcd8d529153740d2ecab5654db1d5a5f3262b785a168031033bf8ad9d43beecd664fddd90ac46eaab326244e38380b23e287ec27a789cca3e18a48edc3f0886020dc67b9d69656606095e8c73939b973e9e198cd8a99cfc07028c994d3d598aca1cff059e580dd6061a4bc428427973cb8fa070dd04bf0fc3e47117cedad2ff3a29b534b04afae23b85883b212c4d88a94d66ceb87092236b7d3f949e3c8b0bb14947e88c319cbe2adb944951a402e82caa5a01797c58aa2f3e56262b22d81c9688f54577539c0085aa968d50301d782524b24cac7bd492f0bce6e51bf5f09e926e18c144295685992827a388abf44513cbdbc8296bc6cb8b38b072b38f6b7ef6489b92e4f57a0807d37f51ceabf5034389d44516d7e2a2aba1fba88c0e05300494bdd20fd0830cc82972527dc253d63c27dbaaeaa74b5716bf83ff159abe4ad10aadf604b751dd9b4f93cd329c8188fdb02643ecd7ebf957161f2d10144c3ac70283a1f31a85856b4d4e0029451ab67c91782bc4d6b2120f6bc60dd4efead2acb414c1a469e6d545cadff424fd9b38a8c046e00aadad390d100624a0cd9b28f0cbab8c058a025716fb9c7d8e2d48e97b6bb5c00c44daaeb39eeb669b73f4c68d9138fbd2843f7c067ef71b30f9876aa4439d5d1f6fb918b1fc514e3c1aced2ab4f01d369ee37699a4357554c8dd004550b662e9ae23b6440ae173bc2668c2deb2ff156f8020df6488a5b97c5f4806556fe2b821ac2d0363d530e0f415e5078dfaad591ef005c4fd08c5867518df0f5d68a14390fcd6d142944823324c28fca44e70d8637f9555217de7f396a0a622a1f1fe7543dd464532682f19821b29f0d669dc2b791911e90fd1d6570ea0a29a01665139b00713f57084c11b8066af2126bccfc6a15cbe60cd11589e1deb39cd44b95186eee083ac179987f84c602de95cb93e8cdef23facf59885500f5e987eb5c565c6cc68fc4f8fcfb059e9a1f2fb2632526b6090554f4ec1afd3b12622df3a6ed9b33a6565b26bd57513aadd92183ebc51a8d71dc75a61b77064f49810aad15c200b2f24d8c40c7b6706fe420cd86c77cc5178ae42c029cf096bcd5bf6c01d7e40119829c71ecc6a785ebfacfceb18f09f0dd0262c15a25eba591c88f44db3b60e9e473e4da01cb8b63b303521d526deec0f90d4f0836fabb7b4ea4551f927cf4bc7d7cb4e5f84747e2c399b2f44492bdce50139d1870cab9e2d0bfcbf3f5cab17d9f35c5fc6a590c2ac6a59115cfc2a2b7bcb2aee2febc3aeeae08374e6d3b6f04a09af7a227e92842b0ce958050cdc3ba88b04302818b2ac660125cd3b083415e0f58d5d6633289dd1f154259443113a817e205a7f486da28d8064784ce4903e568660dc68920da0054a24cd76325ab485538dcb42cfd7dbd5d6022058f058bc80ffaf21b5fc002d9284322cf7dc6a555616f3a8723d912287c8526107a82c692e5f55ca360631f6bf2ba8a4f378b90b1a10adbd3873a579a256e91358821275398d9fc82421dd1ef938443f99474dd9568eea7d61281704fa1ee515207579bea9866564896d365850f7a77dbc78b2ba5b35f1c63787b3ff265f7a017bd9965ccb98a3b6ec3457f4d776987b3cb33f89e24a6487999c9c55b135f7b7dc3b39b9191d98f0edb5247893af96485528eefb394a9da34dfd20b0ee755d18eb3821c207c224163f43479444f2eb81bca99e9f845f6852b8e051e601a1d24a89b0761e283d42698cd88159b10ddac90d00b761c753b8a4f082c566872f2c20c8c42ec8c3426934286fa7f8cf0ec6c0115fbadb5906a9c155bb026ef361f7221f162923401bf2079894a06b3ecccc838f81706d9342a91e81be02ed57d9a5fc8b9069061005eaad263c8401028521c84d8816172611ac5bee78dee2cbe04cde2adb4d1f1852b715325e070528b82004b9f8743737eeeb4eb30b8344b24e80e1d7de445c72d34a0141aa43b1432ecb02119deb0ad8acd81a99cfb12b4b4d6bb4f52fbdae27c3b8b4bffc9a90bc65a4134003150ca9ea8f485903057c4f540dde2f74f498320de308877c1591ea2146f5a63b684faf7633f742e2ed6442f96a97babdd3afcb2579b22164576e8e938175bcccfb3b57444c57bd59fae9566a90dada36080b94d43abf1ee8d9911b18d7ddf74989d5ce17d6db3ae6f8628bd55e09a6560b50b1753bcad0a22bfe7c073c4093da4b87ee2408635a207e8cd6d09bc801cd9390d764e4faa6518dba91f18f83c22b364418e814d58d3e358c193f7f462a225fd4d24e632a1302797a040394924e713b3315afdada4224f917f93169f135360ea7860b836ddbcb32c6ec7dbc517f4d85212a5122d714f1554e51d4626cd7c1b81ca3ceab2f2bd569234062d59e2824a0fb45d993a4e1ddef293306c80aef8129aa7e0b237d6e8d61768860d3af064127c06486163d218c2507c765df5a33b36cbcf779162978781b86aaa0d931f693012607ff5025634bd6ec3069dcaffeabaf661bfa5ee534425aaf22228d0bc9a7b5d507f1ff4ab38e0ff75629eefad68f4be906f28c040ca421659c9225f109f7acba0f0171149cd1cc6cde0b4c4395b47de8e200defe3bd130a1f66ecf2fc7b525f1ccff5de73cae694f36ef1fe5e1869a24b0094db008d620b386c8d39a2f34a9cc5e7268888c34e1f7b598d055cd980c6d48334f80863368d4cf43862d5fa796a4f717647f51ef3550024a3655367dc03d5cfb7008211662c4433ee7271358aeebfaadf351820e40bf173529cc8b56872a6ff9a0b2de16eab14defa59686444f6e782f260ca452d2b38339be3396e9437d804aee378241f22922e1d2ace5495dfe39104f634a1a17793cb939894ced1c1b71ac7230ea7e9a43162762a561fc5d52463506eb86d2a0505bb042e2f492ff721e229efea8ab5d0822fa0a9fff0ba5c4ee538811b89cf95053ebf967baaa291662eaa7a939ba6202504a226f2f0f3d57f3edeefa68bbe44f487fc80e5ae95bbdb60c28897bdd75f69db5b5c13c2442a3314e7dc0a48b0662b070c19f1c5c6856fc4766a6eca50b4d56479bd69a0ac1037f49378c41341daed6107c18152ff7d5bed71a285a5ccdae7e0f6d079f5ac3706ff31731e848cb6c7044a09800d0ac5546c6435582481b2789bf06643d862b98749023837dc9f3cac591e49beabfb31de46ad50d5f25718db4ad96d3aa4bfe37d3a9c62218e5a699271188ecc24947c4baa55e988c48fcb5a8aacc6242535b404e9ea157ea630caceda2b804336d5da1e3edc60cf60bcca712d4ad31e1c6464821ece7fb040f7924df26980ca47360401a0a68b7b52351b356f1c1d41a871ae4017918ba1183bf61389fef31e0646b2e98959c33ffbfbf825a2d7219f9d0f2196523f3dc4220597e1e5a70aaaa75feed41a6efbd89f4ad54dfeeca3d7e147edef06de1eb09d19570c814ab5072f52f6fc7a27ecd095fe33a412ef4057dc4d94e819b1bc8d2f2f012251e8231596816f54da5c871b9eaf3ec5933e3d541445f3402bf49a2334568591e541e9b098443e41eca228bed128158160541d1ae125b330a45cef855777949527f10acd47e37675512149e0aa68ddf31e5717e7fc9077ca7ff7094c93726461ae60e9fb4b9cf5cf4ca0d244b3010cfe7135fecc17ba182f4444bb6cc24f9fc5cd2cbcf6b39515458b1fb4cc689b15a20e243208cf18d14e6b8af15ae3d54d3a82c41720c935ac3cb424c0c2f71453ff7a632e3fd61233fc285094dba6820f399afc13c0cf435541f43b13904e8b3a7c229aec325495982aa0a914dfc7b6ca797df1bd699d644abce13c522771d29c292af7d11036239b65cf5571647797dc8d61cc5cdfd4c83dd48c9e0292a35b71b50b14510fc251aed47e6e072ff3f26fcebd87ffca67f7343779a74b251be4ba5f2d5b9086f12ab1078448c9f65e975efc10408fe265dbe9655a16265173e8af98db2aab4f4f773fe8fba12b5ab5d37496c119d25cfc67cb9caa24f9de80d358fe59b8dada086076ba0df6c0c6bc60a675e83b032959c5a76187d434e357a2da2aa17d3fb73c887ccec3e670b872060f755e9a2e386b603c601839817d1ef597e233ab3804efc9815fc656c154b3e7a674888fbae6f4c252c152ac9a783b173059f0d36618207b5952d17bd80a532039bd1b4fbc3bd10af8c90bac7d2dc9921910bcb60c87c3304131087e9b9a9fd7fcfaf53da1084f155280c13da9082c0c5f84633aee3c25554bbe9b33c158eb7002051d2ce0ea2a127dda03860738f3ece0e9ae308296c8668dce68e6a52826e25586ccf404a472eee4a442e69aaa387f29ac34054b9cfa8ef2da08ffaee8d57229d0aeb57f7f0c9416ae4c794d2b7f1a78186448f69e2ef72dca12bb0c4d2a62583c873aa9e73ac6920182a65e7521d758579feade30f4f216e32972260dd3e4bb39343c6c01918c6deb9746fa978c88bd57ce35a9a227226ae432448972c791a6c5d49255b29a4e7095046c6c3e2dde8a8cbca9ec18bdd4e5d3e26f574d0c7ffbc027d28f91dfd36e399195352b6fa38f3780c6b7e7996a68433ce4f0a73010781bb905393f14af9cf20cc623ec08283e24bc721bacb91bb3b92fc44f003306acdf3b6b5f4d24ff7a846559c00b7bd16ac8ef2b8966709c5aaaceb89151d40d212cf0328317ade028b3a6188ad2e9de243dcebe1f2c3287c410c3d76be9af9f51ddb0d4d382db5aac398927eb677b3ab37d966469b884a388ee49f75b6c9dda47c3550e208a1f5468c14ccec312b560d0589360147013b1e7d7156094612eca7b54757a38fb1404da50667c5afaae16cbb44329d5ab9c5fe2fd7ee8e81dbe3b58df91add1beb583ac3274a110fb8deb6024d875a2a179ac27188a96b3d9565f0224048c015d63254347172006b9c2e44bdefab7523b770cfd9973268af804281dfcc1c837cf4fcee9b0721a496f73434b9296d2db1b61f0a0e2f52a69f115711d3b46ac2d15e37603a14524fcd896ef50859debb68b0fb5e231536f1fddf45b0f67ec8efdfcf030200942128d129d1ccc14918b7bc1515ab75d7d7922759f4ec975bd2e0b45f2f279eb314e284abda79c881ca202b6869d0aca0c9c3822e588d91e65ed1f2bd33abe85db9f7faa54d4c2f51db38185fee2acb1b36bcafd64936b4c7a8b7322eabffed7790bb51443e6d7f0fbfebb801b218edbf05ec68b6237eceeef5938ec4a8e183338b5853a277f74606e7c6b210b5f313d000c4bee6c88dda59111e655bf58774db5c13e84e645d2bc21581098afe8cff7e104a96db094f962d80773b7b6306eeca511810e3b1b75d152acefd07caa88eb25a8baa2084891a7007c375a12f730dc08ee0708d9c4f10fe0343dc957736d532c97d4038a94030dfa337dfbc8d3e4c02127816cba8c7a6451df10e41acfea8deaeb8ff306c6d9517ae38095c88735806ac22464ccff584d794a81a585ae72ef0ed3e03345ce01df1d039c6c8473a9bfd444afd5e2cdb0ac71eeae6c3829d2e063e3bd3645cdfb88f3e42d8d3cc0f1603d514269906eb81964a4ad90aa1ffbd986b1ff94b0919eea17d5f70f0093fad68df510e81e5e6523cfae64a31c8dc2d6376c06f3413a1871a590e6717f48ff5c3e2dc7350eb4b346150d02b8cb104303bc1f2e6c1f4b5efb7d3bb1d0c1450aaae219ae5b1a5ad8461f4abe8ef60c363b4a804bb1e6c74792e1f21970345225443e63b048178cdddb3b09a879f29680e71a85e1932f82f47de3e0609561b499cd7851f49fa1d478fed452ec1f444be3ed3dc7457c5e14e72d3c99972a73ea72c1cba5769a550e2c0d73aeb6ff8354493193ac6d2c2e7b1d3b244cf990c8bc58054994bb7321f97d4f1960e4f284a47b1ffe8832d137865da10f2a2a2e3d3ebf30d328262f443c7886963b4cadc97a6f9e0cc2288482fe0dad768b5e3df2ccbac75cce9b0b48e3a704abd308967e128e3ff31f8fc035299368a2cff1659476c94befc3d09983b9fbc067bbf9a10f2305154de054128988a3301a697c16b62aaa366d539233c7bfb9c01b6e7ad4f11a6ea8144fa5e8c91bf524eb06155e75efdaa20a65185d239dd992a1daaa23a8f504bf93875dbd2dcc93ba74531f39800b9246e935047c4f68a18054a9daede923ef0b53bddef8f040e01ed42c02dadfb8eeeed02515d708a8476145682147370e5cbaac5885db55a14b108e77142737e186da0cbcf3a352d5c3bbd84824e3da3ed0718a3b1ffa95a83a2d59bb3d089385a4bb0834aebd26d74b9af2435ee5fbb86648b311d4a80e83dba3857b654fa26e348ab70ba42b8d14c0fcc852691c9faa68312aaa08881836e2e8ef0e00c6032547a7b148d3a087912ce2b21cc6dff5e7502ff1b5211e2b3965040a0dbea866d2e3c64b36c78be663526425f01bf712b8f43b26e57c15fd14616260fbdf56fa9bf24dec2cc925cfa1ebbe48136d59256e3c4a40be1c9e53048a57aad9096129fd30162ac6ec36becb0e760d7dbfdbc4cc4494afbca9c914960a1ec4c14ac470f62d785a6975cc6fb01cb83c79252d8d5a9df3d9ecf5bf46b0046930c22af479201a7d453286e86119a98f1e4f57809a7d0c5cfc61d1a75a40a97e42c92afc21ecbde165e1a1c7893f38a5b18650bcf71a72aacf02793d8443dfeb681a8f1cc18b05b59404f3087a2b4051eee9e8e1c8b9b8b4b258b847a3fd7c5b728846e1d9d3872b7da496fb9321de197669ffdea670c0b2c9f84413b2424ffc7244481da87bc32005e7d556c9796d3c3619318d0e2c476027401a7715b1418d952c31cf61422890e31e978cb2d27183a5957bb54553a67d59f00893aaec76db8358d46dfe49c39a09eaa99ed57c76795741229b61d94578408103f2e8f21062b695d821a4d2e6eefd9419472eed4c2b01c0d3ed8ab5e2d932c2762cc946d784b4d31b0da35b0f38447831bda2d478cc41f97fd93c1e40773a8e535579da2d3ef47106c810fbc7837e7f7b2aea59fbb7d2bd989d1c10c975fddea72c3fb754b744a6621c4d21d756d32fb87a54862b8b7b0438b00ae923d51ff0f0ce291959f083ceba8eb604d5d01d422c3eeb0dd8c303a0ea9e5ff476c8ace7312be9511d93352ccc2021699cc79de91f1a02505ee9df6301bba49c24b7343d5cab052b02cb08e42c9651f36e898b5789eecf5365cadd70eab1cb061197b897591e74bd51baa92b090342847390094c895c307fcbaabb8f3a4b549a75a7d0222ac3488b9256c5e9a8c1f1701fa3dd9c8913e00f154596ae630ae6fd954d72fb649d29c52d9838a70e9ed112580b871466eee2953356edca8ea11361e1e81ed7b4a3296253376fb2d8cf4cad432c8bd136b6aeefa6dfc3f1a60101c6584e7cbce2793e47afa60f5b8c4f0c1f687c83d19cf2b3af20bc6712a89af4f8eed1df6672dc62728457145901c7a22d7aa48d1f9e4068937741fa246cc8aa93bb698366d747d363a79ce412cae8959a8dedc2d92575f738dd7889509b0fabaf6256ae746a3f4a6675610fe1b4daa99a08e240f839deb6e6d64c3cf306e542537c7cf47f4cf1783981d5af88e1fd6e01f58156e4278eae7c1853db9da69fbe5d075034eeb8b4fc7bad170668a9d9d141c28ad57e1f1fc2fe269b05f9fe0a47b28955d965a3544cda6ab8b036307dccd80fc903f5a4bda1ed008f6179720367e1d0cb89bf4d77d644b9ed5d7f2637b34a730870a5420e5928d29e4950a12728218d3c06b293938f3607a7df50e52afa1694f68517d4bc79fae25bb63d44b06789eaac71748cc659b8e4a34f6dd915920af76822d376ef3bd64578c49976469b5dc54d40f0537f2d11e5d710a6c1fc0f719b108eb82b1a423d25f43813a0c528916fbd09fccd7d874b984c496b0ca95e3d5db3e782d9e68fb17e9c00d35f17fddafd047f7aa48477e2296bdd6eead3d54f21b0843ed29193d5e7035f7626c48a4a2545558d1bdc97187ea05bf7ec41cb7b177b1cbb8d1a7f56becb0916ebe04da5dc4a98ab40b866ffbf1f68c162b8f0bd3828a7b51cd59cb229e7b85bebbbe7b70c648e1450948cca234515874506f308b6d027eaad6bb6c6db31ed7e8998dd476ecd3e6842f8697505d80bcd1366d94b0c7dd17c9e2c9141bbd86f95be066d1b9306b78520a351b88c53e2aa09f8b85ef2dc1cf8b9b4ee94d580aa482608e31c0917e48a607516bbd4174c9f5ddfda32355702b97e58d777a5be9cc4af432da7379e8d5b1c82356872dded0e89a8c4067bed258e630832f8eaff4b5014130f43e9664d9a890af97924095ef3fd93f1fd75c761d02834b0caba2c604b27b276c4d55dff5b898527c8cb56615c3fc6472a2a15c46ca4d124463288a60295538e0526f3acbe3dbf679d024e8c3c10bb8eddc5f5debc36a8ae6e7ccd979f8cad32fdaefe2ad8c92894f80fbbbfa5aadd3132f43cdb5f3737293636cf0d4540c28caf51828b1ca5a7af8b0d86d75e3ca3e3ca90accbab3402ee0a95f0f91577852bd5a5bd89de599a5a8d86cabb9641a49b1d5ff55625a3463d27ceb983213b10dc54dbfb22e5f472e6674274b5f647abd35c6f9c55b316383799210894d18defb0e6a2617bf3276d0a538766d1d444b701cb0ccd6cb104c9474ebcd80e9e6a54708ce59a37788cf9468dfb60e53b7e8ba7f4cf4f67138256fffda2e5e84b6a965d6e58828ff0cb4c34295a351e7a32762c663c5910e632872ae50f0cd1a525ff094d13cd5613cc792ed3c7d104b3f65abed4f5635a74c3e8293ad6192eed3e8527d065f16232099b0a865dd70dd42ad3376a10e3de874e427f0359892f157373a3dff081753326fecefbe7cec9b95129807eb14be769780ce3eb6669663e32f8e122481c3168a9ceb32de69aaee31a5f696d51f1d25646ad3630824917d48845fb06209abdbd75fe1d41dce77cd12c6a8215ebd7124d18d1a02b8bf4054ea17fb6bbd8ba849617a001b6abdf2e5359d006e151d1433294e8b2626438fe803ac4051b34286059796811500113478b0371b4b90b47aaacbd822527c9df39bf7b10bd55cfaac1ace2ccf2709a7a21113233044917758d4cd84104964b0dca14f05e3867ac73e22e834c49172f42cce5c7b6ff54dfd6ef723abc8c343147a3b1bc690a72a78b1abf6c672dd963f639c8681c01ccdf4ea4f031be6c3d4a6618e886285a3e848649ef48f88e821195c72e5d5bedceb53a45d43a98b659bce89dab1b66c1462d601dc5e734f096006dc00f350d7e92efa166796f69861e6e2223031c05403054a7f35dd8da393fb69788fa33d419d705dfbbfd1a74bedddbf72b8af96365e4a53170e7701234056d7be2bc221b5517bae17b390a29d2ea87ebd30246923b073bd3ac6b4529f578e0790ee86b627f9ae717727e27a04a488c98926c45986b2855092cdf18ac55f7c60e9c40d69e940713445c516181e77de9c282b6b19a5ad58d33230c4c983a8d7884a7befee3ed5afa257e1cd321838b3bd20fbb0963ee20462441cf1f515ba50aa279d9bfd75649372f8b85c2caa93bb53e28834c23d110840d1095d8b5d590827c238fe299a8b96ad0a1f16064b12cecad59c9caf6effc9144470e5d6ff769111ced71095ae04d823c797078578cb01a5bf779d2f84cf24a38713487095b27c84e72e45eaa55df2310c4eb40df60bd12c0e1fb8a2ffb840f651b4980b2168adc8edde4e9a9cc66748541118c2045eadf920198b58e86615575074099e3a03785d0435a31a848eae70c3d1a4c4292dfba99f7b75ee8f1dbbb060f71b183cc20c88a2bc2ba73c92b5660491c9380d2615548c8b2393ecf75c6a7d5565dde19fb5336ea845dccc0f555b5a98e45e6a0d5add8541def88e39576962e13e31c918809c4c3ec828b51aff97bad2b4c61be81553265d9e13463935d9d82b8116ac449889f703a828a6f367ede2c9c5821216db4d52ebaae9a4e6f7696ca4b2626e68c349df47c04b61c3482ee3359d533841bdf8b8dff79e626b98cb35bd470c081748cbba2896a6404a4b6c645743ec3e5f031a1e3f368e4a482786604e4256238d3df2a46f15a560ddee9cf0e50ad3bd9eafd82dc18b8579011a8b2690e88e429f12e749f32509afc765489ea4b1f048c33044f92acdb93d6dbb2a1d666c761e20ae79ef8c894f6d47b5b1c11a282ea9f44a005302569627217a84e8c453c97501cbe6183a1fcf83af8cba982c4ae3c1052ccf82d059203c80cf63c1c3933ee581f3972a6e493cc35bbf34491970ec9091f52edf1451d28afa6a36379267cece8587d0ac0d341475a70698064e3f59cdf84d8c96884fb75a6f9583e20ca33fe8969d04f9ce651e7f23d8d546d8988968ef813fe92befdac3c535b4cb178426872d701f4ffe8d0b98517d26f58e77e28983a9052e5a29d91e766f81847a9ca5783188a38579459ad8a976d7d145f7e2e8325626e124c4e0fd8964ddef115c11353c32a1fcc9282b9245db2b537b4c9865cbebe60e3a8f7e40fce14047f8db0787bc4d670b35b4b472b6cfd6d29eccc15445f4350a7f9c9ad1c17964b1d7a3e14002bb4709b086718d605cccfe2462984e690d430fe111a37b068644dec4c13b6a8e36de7c2294b3a903e19da3d35b597d6b3a14bbbfbed4dcb953a61aae0d084aad9b55b4c4a1d7973b160dce67f75c86996cf836e14d5ee205e6986ae5921ae8364083fd54f8d9ad5f54d51e510e2352fb4aad63bd1dd40e463e06a00572e47af16f12b8bd5abcebb3170ad425765b5988fbf3b778badfc30b579dfb155e7de09ddec6af1d240d5f435db8e589b156a326349278c8d886214803d0a0706299f13eb444d81cd0523dc49bda57d4bd05563d8e1f3cc4794a74929c9297b9a2b658d7aa59d0f046759c7ec785bca7984e8118257353d39c83b028fba8255ec44bdf6f984894a7ae2ac0ba31eb95e21fc350254f6ec277e6289c6cb5f519edbaa8527d4c310bf3d9d9500f374697f218686ab9b348754934280996ff108201dda4204c1eacd9c1120988f205f5cd89cd09c25f3acc034323bcbfa85220450aa63b8c0bb152c5299b53cdc5566c32dd332aa672a0c954e3b111443640c05124e38dbd18f5ed4ec89d36dd1d74e20e8138568946864bb38d8551735bebb3c99f33b8387f147b85c7fd7a36d13436c9826deaaf3667d2c59d7aa1beb65a8417612bfadcf4a18308a4c0da5ad68339936fe3cf4d899719c7bcd7cae0cc9ddc784280fcfdd26c4e7e470d064b455b6482b730b12be98a985d4da9549474a4b31d00ddd8c0e962bd732c8a5614396936b49ceb4c6a2bd5f99fcc3d9971affda40465fcbef36c85703c5cf4f75fcd6d4118231ac526e70f36b8ac0ba2101707e7e72bf07a26eaca18d76fb6a9b7154a34ff61660355dabddaeb2964bd49da59c5e4c49bc91212da0f06560ab8cb638b067b727e7611d395c39e760ed77d85da440b8acbe0e5c3be8499780a55afc08bde48b119487bde808ba3cbfa04bf5e44d498e0246abbc533eb4c8c58e8a4925bfe46ac48095f45110616cf2a95953020e57435339f31af80dcf53f5e776ea940529d06a52fa7a61bb8fa23dd0b3b07120e29559fd469005177d4de499c4972f253c2402f4d67ed387b02d8d934109769c8c5a0bd8d2a2dc7e99bc83d1dfa3007b5628312e53a1668fded90ecf2327fe805bd10da8e652bae4c3699993dd445b772c43e40ea9434d30607247512bd4584e7d6f6ca89acd9503b1fcfc4fc8eac4c9b99ba770bd12d64b6aa21aa15396fc62b5ddc7822cc41984816ca1e377dbcde5cd0670cc8ec6016a742f0f756ce521e108c0818bd9ce36182ad2803b0388e7f0b3cee7e53940a1c7400a97ba97380d57b5c8754bc08231704bce4e384c3476a26acdab265e0ca2c2203ec71c9ee00da509fa8331b68f9fa2275f24f0e7bb6826c596551dd6e27d837263d41195f40e6f602c40cc9897d806f1ebd9f265ce677c1f95968ede7323de1258cf00f1a86349c28764182ce2a6002fb738f3c0a5f45173af01c15b95df6a31f3a312cd67e93803e93330cb04414b52cffc59542d7b4666a87ca6212bd8571365322a46855965a4c4eb7fb53e17dad8688bdd4043f358756c21299fa688ce4878f3897a94db7ee3b2b56d05eb55ecf6e0a230abf9f19e9125febd49f4ed9634d90e3867dfb241d436f9d21bb16a695b961c3f78838aae3d1d1a11efeb3e209021fb8e791ebe34798afb935f0c66bd3d14ad730b325e53342ebcd209352ee61140508edee8af3a2904be7b7792b34194d839f367197d729aa80401bafd6330d1194b6b3804fd7914552d4d2f57082400c547b69883d0dde3723cac86291f366315a6dcff94eacc58758ea24095d0b9c3f9ceda8b8e1d31335a19d32ce5eae0d3599859a31c7d43845c01670b0d2054fb31d40c40af1059572f586ea543302b2f99eca6274ce522a655db784fd909874b6da552e63c90a1fb12074a5b80871288723ffefabcdedf521732c322c56a3d233bc9e8ffec73cca49d1a43bf9966d3986ffa0b4e0909f0b63026712138373425c0934095b9e9b80b7eea1109fdd8be9f6355cd36c5ec831c8b756e4478cbd5067f5781ff6415fe2a2d7393658def45eeb3df51f017bf97f1658420f2ba51b8e1949c04ee80535d64351384aa77a09753d8ea42cd0c0c7f8f90ab218960e7ba0906de05b20f7121f7060e6fc81b8a05aba1d3ad133975055af9240128e874915be0d5e1d4e9b42ceec1dfedf5459d36707f5a580f8ac1c5fd4ad7c82367cb43574fc776401c25c4939bc5d78f4e36937814873bad93192e9dbbc26ce30592cdf7e1fec119a3b82455f0aba856960fcd93355666671f892d575ae47aac0a25dcc3aa5a479a8f9d4be5f3b492bad2437ca87bc85dfe68ae2db4ac5992d723638e5682c817b2b9912c34d4f5bc977749519c141d1e1a486661c434006d20d0a875baec50c230bb986dec3ffa49acae5b49138fe9411e0c1086dae60db9ce7fc85224604c2c74af77921ca40a7ba1400e2d0944fcfbd2f3c2d6c1ec35a30bf8bebdba52b282bfda5c511a4467412899eb15277fc235a0b55d8a558572b4caa3d9bb5d17a18bb391f54c3062252b32bc8c194bdd2e3347fcae09290f96b746e037395a614e2ef904e53603a848d39861df6df62804f28d00fc3aa9b44dab79fdfa4b529fac5a1f0f1b7c3be7b88c3fbb4fb354b51ab1a93a7953a62e09bcd53c9ce2e180944b9e3ffcb44cf6aaec7f06a6ea780ee01a4ea46c0df731492ddbff8c328f22a3968295b6405fdf95e4cf4a721456946d15fdcd66600be9887538a409c7d9605fa8245114eaeef239e2b685b192f395e3d96720fd0fac1f2030b3b128544f7a2a544cf1e25a4f2e17add8e554690c4e3d65a8481dea044e72f03f43aafaf2e9a570eff00e060d79c0505436ce976ce9a2de61725df60b9c53b2aa15caed4451f4dd7a5f41d791136b8ff5a2cda608c375b4c7613c731215c90b545aadb47eace26679fbb73016f9a9f6b4914c8aeed0b1c84543af3b827f43dd97893b46388a7faacefaa98ae1d9b1d538018b1354a804d8bcd8d71924ce2bbbbe3f576a413d3580dd2b13324cfd42684b7d26d1218f78c3221b76927df571ed7546a97d06257f9b99d940770e64e482e10ebf4d820c9536459492c9363d7c5d9615459a9054f393fc18b521e9fdbae17e340cbd2079c187480005bea5bd834cc861227bbc33bb2ea71afdb02000f6451a19ed5e5141df3b0e2551163428700330345dea449d6b9c63021443bf6fef31385c6c89414944f0676e9e0700e5aad3aeac9e8d0a0502a3c5c6d198133650c9277b2ec5ba982e8a59eca6c4ca1571992e49288cc493b4572ddc0eb49ca421460ba07907803ffa6d1e7a66fb814bf26f4cc2b6d2f99ad7d9b31a690f89573b923c5acb967ab07cf6a2fdb0eba0627d31a9ccce3b4923cb75ffc89ac899ec954bb2851f76794e4bb27a9208132144670a5820191729bf1b53108ad3ecfb909f7a74777f66387d7bc07954d20b2eeeb428ebf237c2ab3ae0236d449f8bd97d8bbfa62211a5070e57708e52380c46542f6eaef872948976729223af360a20fc23e224fb0074acd62049fa206fea0e38d23d1e2f674e31ccd2cb28529ad18e41a804bba11e1b118be12ff2efdabc1cb5b216603c909019434ec31fceecc15aa1dc804d571f4d6279fb9036428afa9a7deee90a10e8a24d3381ebfdd92c416a5b88f04a412e4714827eed378ca43fc94b3dd6265b0f98df7895de85ab186602d7d3f4bd6be0f9069b3dc12263e85ca7051fde7cbb20ccc47a0624978598f226c21bc4b2abe2cff5ad517a404bfb1d4fe6254ed30b7e655cffd067bc4e15334b00fe99710f76ce6c84fa48c7f0e70e8e350e970dba94afed292d9b670e66ca9e4a8dad7b22b119129f84189bdf32967b80e6e69b369e38e32c96f727f7b2c45c99067262a16d0b6572cd66adf419026f7360f32066b01028db4aad1ee9538856066047a2405e8173a04ca72dad2fffeda645e494e187d341099f50e9ee8db3998eb72d64750e3eafaf2da58b7e9e6f47313e37c2449b7dd716387fbe92bc4cac2a6dd90409c532012526f99efda5ccc34e3c68bfe1145fd1e0dc7f0035dddf4a96af102bb76cfe8facf8ada464d43491e92cd3c56004158eb662b0897a1b2192f3bdb68f2d6829e15426322f5d55655c6bd4fb0f1ee128b98602591b28fa99fc97d65bf7dd755bc2bcf098a768c44a0c3be7d60aeb711f325dacd4a797c44061e8448a09b15927d4f588b79c68916ec9e4812fac2bebea882c70da93a342e79eb45d25423bbf95ea1fd3f387c2af9b0a3cd1bcc48c13cd354cb226215a432bbccbafbb31306b0cdddbed07083a0e5f4b9008f61581174eba61d1895bbc436b885a02846607b932b6ff7ee733d7b1705c757188f43680ac8c771ef4d50945f222002929f269c560d6d982f26618f9412f8df78578ca1ed91a20cd2f3a873d2ae12747b1e08afd66205597a86feada261ee8f420c63aaecde14a9b33fcac0e7f9f25cf42e92512e21d67899aca0abc069d5df093d01590c865d46ae45b1aa4363c47e1cade15b57295e8514b420b0662d4aee3a106b1136e16390fdf3470ddc08dd54961c7224d83cb17dc1abe40b75cb4abc208c9104c8f2e090954a5c8e38c81eb1f7ec0ed89fde18f3a2af7912d15d00af143ccb5eaa948f12fad80b8f6a675de6e8283a8f925465d8e4291ebc85a580bf96a323fe64593cd0fbfef8afc115b6c664a83324154b53e32c5983c8ba7151888017447faa9e2301823f77521ed3ea82d38a21944d50f566343fc5f8148282d0a0155454dab1f6bf04eda3e0b41f2cfbb62a0b96dbf414a52c81359eb75e114301a74730d43713fce9261dc0dfe3edef02d7d8f0a180b1604f1d015fe0257d1075ba4553bb887eb7f03cfc94b8ece20da3b265d055627353d186483dc1a46a0dcef9ba564feb22084df3b7d58c6a8201f3e4eb9e2a6990fcf89b3b8cc2640e039d09597b94b0651a292eca580bd3877860ed8b59eb9f996749831f4e3eabd7805347e150a732df8f39d46083b00745dada52e5ea1fae812a5de51b5eaa7c97f81d326ae27961e7bed3cd68273e7e1560e302b533ec3a660193cc8065b8e25ebdb037b9d2085070b4ff909037e6c327d2301095e19241d8c6e65ea927d9725aa7c9a7400600d23c3e80ba937e58146e9da73ac74a6ed6a0b29ea8226e61a40d7ba1023af37c1e1d9634ea83947c7b911eee513dc92ddf8b9a51437ed5c4cdfdf814b763e7160ad7cfba40a85b54ec6fcf5a71bcee57a9c6de1543a624df9602d2c5ee32955638a2ee799484e42ce4c810c25a46e09dcfa8ae317fbfbbe6926c039be93ae1bbab808bca8044b19479e615029595102bbaa5e89226bcfb267545abdc07186f8e2bcf8d74c6f9a4d5deaa94d0a46a85e36c0a48de543bf1082b8636ff4ffb2380a8bcca9902e482555db53018b6029a4345faa89c5848f55e7d84f113862db04209c3f2608066a4e5238091ec4dfb627403c9463326d782562ec06291ae277895519b668304c628d2956a5e8742a16341529fc55f2cb4b0b522e34b95d375cf931fd4164f835f6afd3c874116619208b10651a38ea2adcb926fd6f914c283a2910151b2cacdf7f94d2a5e1b1a658a1c251b39fe60af812adb1260079e8301b580fd36f2d6dcb1d672d2614152b81554ced1f6c31ea969ed6666c44f7cff8822d53dda4144d7c7986b7c7b758b9e40a6604479095afd79aef0d8000ec2f992143d017b98975af6dc440e9d0378b70561c7026c12f3b5611014e527f06ef1613a451e7e9b5805a4c8d43df07d46002ba5cbaf7557a8ee91c802a3dad90fa6c969f1ad42e7284c927cf48a381333641798cad2e43fb3187c5291f2b8caf0ac9ea9550a4cd5468d6956a54ec1fc681f474701e21ba514d7d572e119b0e8fcace2aea326375abb2f6185c70486c5f2f8bcec5726d834a61c07347b3f63a7d96c10ce431fd8729e1c4fa384f6d12ad129785292d20cb35505b9475a4df88a7a2c3d3fac5f743a5c5aa9480e04b4e9d1796a98e8a217fa4f82a142e1534768f438563f7b1650da2c7adea18edbeaa618ebd34fd6050d256c459c3405c7fb7f49f4bb57ca9f09ce631b7e05f293b43cf083e874c050d88c78107605f6d5c96747668fbeb7aa549cf6da45cfef2153b7eab83e24adb0d6fa411edd98e7a10c23fc045bed0ae7b554e5a17f98bbab0001a612d9054c89614698d29894f9f8cae8f5e557b413a9f583a04177568e3e22b21389e1e1f94407c6eca1e464c1db41134210d235c6e23735d4db62e98e73a2203b4284bd6291e2f7974f138a02ba0bee2d46fd36146d5c00ba5e09ce7473646113bd34a417b2fa0b0fd88d53e79926790eb9c9061ec351a30148089fcb772137dc79793e4cccb661c83b00dbcca3c4aed7e3b7af0896a9d8102b56d88aa28642b0318c67ecc81aa8a98e4021984b20d5cae9007658d397cab47d8ab1b1c0401880d9aec8b0550a74eb6997b749b2942ac76205a0ecf8fdabf149f4d86952b30aad049c82d6ae249cf7aae51cdec19e991ef406af3ae549d6de50e576167cdf34948d3f240156cb166e98b373916cf8e34611c2fb04af8256c4105e8942f8e96974176eab173a62a282d652e0d8cda2f1b25b97492b5cd97d53d5141bec3ccc55ca9a40075e8977ebf0b2dd0348e5d46bca66e0f7d403dbb23280d6e7553ccfcf028ad0e1f91b0735326aecccfd22b5e55d476994efd8757864795eb4556c0f66d723d62977745894c6a19ee733599ebd9183b4f43ebe942f42e8e5cc46cbe15c9c3caffba38589158c4494dfae5069ea4f20183b51d093545e31cc9033c27662ebc7cc09ae50aeb44c7c8b137a15aa08cd68ddbab90e189579502b1a9e684568be1a7e938d747d8cf09cf83bb2054829db46d7c3d7d5aafcca5b63025070c40fb24c51334eaf44fc0142f6b3b78833dabffd95ccf0e50f359c8fff7401d25d91ca68fb8faa1827684edaba57e71b343e8f26d839cb71b239b420f99c0766bd425ad83a6e4b3abb5562707701c52476589d5e956a530b805f922b282c7405f5d2a7313b59a8b2c12f6e1e60e3ebab3cb7fa8a147fc31d6b5384f052cbf1f088efd5cc1d78480d7059add38b4b2a14305521f0dcf9b82919cf34429566d569f43d74f68e135812f5f72482eca48fadf5b32138b8b4e0a00b038f946e1ddcb2ca013ddcbabf66a5ea4c7fabdbaa89f1c67d7208de613241ff8cc266adf7ef64dba054bd433f8816ce1d8d66d4faae45f7d62cd4baabd62bfe2b06ff8f18f14815566d35a799f789bd3f8e4cc7c2360fc44d2022988712eadb2741f5fa63620233879e5563f5c0fb7704452b5741ca535b1ea92907d11ef2cacdbb4846578f5a9347dd026d5ff2d1e2ea1b68b073f2c3fa569173c7b652b70d10d6370fd365222762b25ba579d4948282d56c5e812e0e5b130a8ada2e96893d20b3beb9c0f40e3b0d0b4c8c9135da5964d1d04ace3d54ae444022585c33b20b527ca85f366c24ea5013e1f31d093614ae1b6c0efe36c90deef90f8aaaf4a0dbd487ac124e723e7ffe2fcc26e406f1deb40049c6b24696f11d7db6e4cb9c1d41d46d251c350a5da1dd1e5efc2daefa21c78253f98f95151eb3801972d5298ddd88e6a83df68943ce36ca7a2980a6b5a5070fa35ca6eb3929b82fac3f8ff13dad0d445a163e714482eb6369aff435c01e7c7aea6839311c7d54c2fb1431c991c59d0a39692cbc63b8a38bbc107b289d29d6cdd6effe068a4fbfbaf767d2b4b7acb1991d7040de10d0a5ba0c1da9e68cc23ba96a56b54f73c422de15c87cfd9d83cd988f1f68bf42aa4dd261c1f7e1f9a84ee1089e6fa0ac4eff2fc17710203510478f9a6aa7410616eff35fdf286a62591733c4d8b3c41f0f485cf574abf609195086c1fec63f59fa118c07c6d59e0d4a7f8c1b460e43f295bb9cd937cbf3edf9ec672156eac096ceaf85c342293cac2e8b8edff516011e089ff9c29d2df1808ff1b9d67b4ac237367b8a54e61f4023200e4d56deadca245f24f9f9f5d68086edc76b9d0af62e340ad583a8d4d830685e2d06be6d75590ce0eaac966b97cb01eb9baa8cca036292cde700d8f9d9438c9ac1ad78a1b29a4313669cac74b2d5a0e71ff1d13ba9002586dfd5d461db7c18f668ff441890d288b1c9deab1b461b0c90296e1e34f26ec43e18f0b4ef610638c25ca34a27b7e635f271b2e063cbb9e748942f6d458952b5972678902b446afa79fa4d98b53b966ef708bfd1c20a0bc3ddda9e60e099319e7cf01df2cef6d3d54c76a0dfbb272b3c6733248c021a1ceac19b672e57b4c58becba5d7766f1537d14352fcffbc2c7c0870c889a668ae09ebee96bafa9a0757df14bd8fe7ea3bc67b9fcf1437832d3deedad7e79d39bcc4bf9628eab3be248e212e739202639396b9e05e330b27e574d6757be8d1973d2130896d43934b69ab386189289a622279c45c331d79f91041179a1fef29f1281557a1201bb85c5465fdaf902281c8ae6db26242f7b6171789dbf0b92610a0485064f8ab5e0eb98ee8abdc870ca6ee44e3fa700131fe7b53f82b1fbb479ebac14338707bf399992aa08645f034d57f89ae37336fa3b3b8b195094c6428043f1b4ecd6c781e8842e18a1ff67c7bdbe874ee918aafa8c889bc514e73e911b788e1f93890eb1561c476fe65553fe3b1945ff7f6358ef3a2aee934481fa127e23f9faba4881e345e5e02d08846f938738995cef52976a2666eefc2e9d9b38d5aa665c5830c707decab434f99f7022c76b80484fb88389d3a283f9085eb263812c919bfc9d59dc2ff48716949d729d7d71b70a762f150b00f4cf4d5dccfbe5aade8768c2c291d42f9bb97d7d7820c83587f45d66a3cbc42525189f7d495fd7649984ae3de952953d2d448bca81d2268f20b1454613297869822353a9c13fdf4c2a1a6268657a9e46f559cf2db5e3062a5ba8faa5be88e429f5813f09708da559f86985769c58969f335cbb21a47a86044a5f7c7526ae13be07b92024b24e08019b34787d8208e03259275039ba7ba80bf4e12dcac3a9c6397e83c78feced48f9c6d40061e78cc9c3be49949bb640643294749144992fdc668ee7ec03fadfac41eeeaca38ef12b7fc292e81c302c873f5fe8212cc6b24fee81c7ac5fa59cdf93fca4c92c871f0378e4cfb300dd3f80a165412556278ad051dcf37fc1d95f5c788421ef838137bb86f4a6e6813ededeeee32e5cc312efed6d85866dd2df5fe6941b1a7de65fd3828b8c549e4f832c71ccdadb120ddace6a0db9cfd7b4b650b3e78c69c76478f313aae3de9a19c4b85af3910ef430460b73f7c02b30f93e8b93053914eb0fe7f3c5f24a9a46ff4eac523b252f579a2a3040eb50f78675379de620c9fb242f2afedcdd5a45750f8d6ffcb29a92e4aca1eb8c6587de03d0503e20574aa6f8c8f0323573e187cd350fbde478b6214339fed06369b5f7ef9d24237faca1f281cef0ef1c64f1135219abd686cdd9cddd1dbced47fbc2a889b358e1a0b6a6e67f4a601be3c829b62de77e227f2b95bdc878b335f82ff1fe40fb36d2d405ef786bec5f5944bdfb6e7c3324cf204bd7c44c59e4c7efa0e54d2c15480d8563a676bf1341a2fbc4be5b21cd3d5959c7f69e925443ddaaf58bc36fc7fefeb62d3efb431e90ef7b6af4263e4f38c0d2e1e547b0742ecc46481711901b8cfee35f4f5d2dc644b45f5492cee3c17e4ef25aba2878be56f7c0cb95e29110761b56e702ff0425303e41ab65b65bd4edf201e9044253c64d41b000ede887f544185618e8ab4dc21a86141b8892a71eff7489eb8cf7c4db19f03c5824b842dcf6836e7e1c251ab259a02189a8f2940028f40159fc36ea4868552ae92c82373cc26007367155c2a8864f6036e32cf2446405995e8b74938e8607218896c9f1520545d784f4720855220287d9492317270a0e8f60730c81a99bd43d6d9066c7e5da75ff469f3dbfd782d3e0508bdee658c950d15b05343e63ac480f169a5bb6f00ae12739e3e902e76ac552956ab58f9cb279bf9c1b82639a804340e60189e6547cfe83c002c193bffb49b8dda412b046ff96d90e9431cdd9720df3265383538441fc1c1cf8957fa608f1b7ef2e1aaeb2db82a500897a3b41483c533924796fff42260b031fddd933705610d0605f5b953d1ef635e301365c91a32473708fc1054da695c5836fda21b2f858e3a4a86659c4f29b57c2ff866538286b3a192a6d4cdb2a83b89123cdebd75f842daac576f124f2e42af18c8c10496f8ac791ffbe65a76c274f9a0847e59766bdf7a3811e1a11575f03e7e750c4758ba0f73c51df99becd617886656bc6308ef9ef2db8c9abf1beb69a5b95ae5f72159c59efafaada727ff447517ce5b7831852f0d5412de5fb4dd4719ecde7a1122e64ff7b1ee1de3aaa7fab05f0ead7fdb2a6600ec4deda9951bcb8888e0a1af9e7ee38866e360204ee3025ccc65cee1482954f01a688fa7b32432459b3abc685c6984980bf73694cb696f004f6dcbe4cbb7078c2a6bb164eb10866833795aa112008e1f541ce105727e58df22113fb6084772d9c4e3ab37831f7649610406d33055c6e095d9ed6990f17ef484a8169a3c5be65628502273ac76f997ca486adff7a8179df763bf6e8ba00e7a74f4efe1399f1f6dc392555b16d59eb99a40faf0baf7d735a6f89a22b7d7b3e3b3f17f292c28549105bc94f55b082f86a3291e24fab51c698a92377992d3749714c1954a12e7593d0dbae86a7df6efc60a8cf28a429118891eeaf6c4956ecad44beffbbc089b89cff447b8e4e65793e0f2e2ee80d82ccd75d96d74b71d14b3ab71e2caa9607b44b7b1c9dbd5464e108b55c1bdf77c7c925e6c0ea92bf183537856c5222f01485128552ecf42a2c6491a3ecc3c3ca278164a830dc956bb3932b7e27bf958b8735c764f7ea62cb33f606d60367a693d8af60b5f5b7612d649c78d29d3ac41552f0b3f72fffb9d0a39f53bc4924e0b8db750d071beb401c3d07eca0b645fdb5518ac3cbf3f423a3f2b92a240685ca5958c4a014be18050a23bcf3dd8e603981e09998fd880d8717d06c120ae3b0ee5d3872c8aa4dd5f9aacc72ee3e54b3770df54dbe34e1f867e0b0ef066c0362fd08b72da9062b93d56a88ab1baf5c2b6f6f6fa335b9eec7da8650c68824862a27f46a158c1739cbaff91e50d25f42f9fb8d5f201bffa2ca159fa25e5ec503c981fc4f46067b51925869f94c0188182038ecfb0a0822e54193516554334e13ff0f9d40eee7f38e3fdeb42584c90c97b6de9c34471e511693db8fbd3d00572cbe2e581db3fefcfc635be04a11754ed3af63a33427629f73b8796c2dee92c4d80ee4bc594d235bfb1301e7c34a851edc776931cc8ced34780a88ae20cc029205340a0ce28fdc5ebd40f2ea8f1ffb5789d8c6d32a67b854314d0cd4610707d1dd72b551a7ae1b5bb934db9bf41685990d13abb18b1404a3a0dadf835d0b37f6d571cd7de068fa9ef09323e18a1276ba6080ac7c49447df2a1600d30c62c0fe0702d754a656f903faae0b511fb6a235f34f63b454e9e98ebe4bd1fd2b5a9a730c14d442cf8a062664937e720c27144dc82afdcda84250481d191b4b59b2d2b894a593df2d3f08b39bbcdb2ed53d6fd75d68f54cc24e5e23bb450b3d7954609d81b271ac445df71df2d9c3a19ad77203bb4c7b9d4e721123e1feb160e823dec90aac6f17e6e3547279722685e813000c4f4a8f0d12648b75d4a1584ded7636a8fa72cf98406c55c1d1640314761114bb49731004aab4d9e53ab3eb88b2c44fb1a78b2cd059020142509ae5e0fdb7edf3df1075586ea5a310fe389682cb3b81915e9565c87a32e16c90ad894059af78e5aba6e625325c354e010c8224cb16c873753c5a7d04f5e4320d387a6ccc171dabee1ab8d28b2a9ac88f497cfd7b7d8dd37afad433396a6c1be5943e3d666fbeb3985867ac89d41d5fd6ffb5b9e8a13c61debd846ee558f1198bdcf477769843b86bb03a9f1e78f2b0a8e4481655b4e4f037a5b6ab82804b8f29d968fd28d97ca08ce188b459708f0fe40edf2ae558ea7bf116176fb2dfea1b61b24b5324e939d7834fb8cb622f4f753d8ee8ab1731a5dca53c9b2121b582d0789c067e23eb5659488e5e3575dc1731209dd915f251278243a4482f34375c1d6eb595b63d3f6946c5db9314457729cde3012676a7611232d7a501dc620bfb1380431beb555f5efb4b5e4f6ee6b2589e5ba57c34a99a8f9a9766e7904d890c7132ccd5a149e8adf44432aa426234169711ee775de2b9f274aa24f886f05f4975e3979b2888a737b77698e3372ebfdc567639644b85a30af9ffc07531f6a6ceb22795f53a4cc1d9cc7611229c835b51ed3e859526e96a734a3a47bce97853781a9e36cef4730ab764e62233f0b6b0a69a368d7189bbcc4b986db9b33923242d899d44839f3d42d088c9c5f9adad3da36f3dd9da8ee01b04bf17dc5bc8aaa9c5ffbe2e0074b60e78593f714d27fc4e3145be1d3cbe6c5a6089144dddc74b67170308697db271aee29c4e49798e6d0512907afc4b89715b3d1db178cb369ea9ed0840be25f4746521a6f691a0484cc9fce3e48b9278d1c931eadc60b094da78d322e47a3a6ceec64683acc0801d5dacc3f3579018037f310d11a9003110beefeddc4ab00cbe6ead854a8583b4802d4997a1a8aae62ba47176d1776b9731795c135dc5bab8ee4fb7b676e08443382e2861de20a5447f57d08997d6e6b97503001c07f59c3bcfddf2d8fde18ed622945eb4b1565f8e58555175b64f1a182e247eca04887d8fb6c8b33cb78943ce9e8ca5ef2cf17c5e6bc2fd8d084f2e7532f2efe57d2f38d293145b65f274e72128ac1616ca8e6878cf174f374f765c0802d5bf0eb7317bfc2716499e890f4809a85043fdd6e091b80c1416a3f608b18370ce3953f16efbd9a1471536ec46afa2752b418873832d15f0eb342e584f4765bd2698b9cd8afc730ad9455d7dfd013c0abdef43046ba979ce44fa5d83788efc358f45842b41c18108aa421deeb540c310156a2b3d73f5961f8cf523321987058d46881c25ae20c23ec319b1baff5ce311c56ee274c0ba21f4245c4c9753963f8760b4671cefda1ceb758783d55542ba60a922c1de6310b129f28a9cbd763ba626ee9e32490fff2845b5f1e9740c17526086403d7f8fea9c427e2a73ee864480805e681c4c6373dc7a711f49f6c5e343991cdea14862160c37a59a943fc98865b3d87a9ce37a346ff948eeb000e5f132c278f3667ebe7dd0ed3b43211d2389aefdfd8fa820fe57efdb88c3796f3bb99d3089e1e5d5e35fd9c8c89874a28a68d6f0bcd0c7e05578d26e8608d81b8e272d388ca4320c400b4a96df290706ab9d2b8e72a8e4f03738e8fa56628c4d5818d80b9db21535ef51095810b74f70609f10a2cdf2a971801924a76cf5304eebfd6dfd0ea96c9fd1949a44630c0e6051c2ad3ef069f39393b5aefeadb30c335ee1791d55ff1245512619891cfdba2299e490d3f8c55df32befa002829fe4e90dc087c9bb13c2b7ef65b8c23b8628252696ed4dfe337171096c4a44d0e7258fa202bb5d73d08c89d27da2f85347081b769b3cfb754fffc63524f0b994329c53a369ab54fdeda43cbe9bbaec235b3519ec4a25f3b2b303753e99990058837841999fe880025347924199de14113a2d40ab762a4104db0f377c0d8bcb7d24082387007f3f9272e41a80e3967358fa8f64e6c7c49f8740c479174102756954fa37b5fcb578ef0c72961be3dc4f04a04f71b20b77908017a8a9f89821fc057db6e7edadaf260cdf28886a4bdee29e7e678a24eb9f7956df7376c16a3ad0524986715ea2042e5de6830b6e1aab2082590b2c52cbb00b6280fe90e7094e501e87e6aa7ec985e5b7ec1530f10a3c60b977a529116b9f426eec3136e47a93ae62b79a8325f84f30f914f7212df96e7457f5270897738fd14d79d455c0d09270f6b10ca9c02f370a66b15e4d816f1ee7a4b7a96129c018ed7a1866898b0e465af8c78ce04a0a1ef018bd990b3abef076e06cbdfa27941d53d37e59c3d11dfb5c13206c26cd53e46bc96b42701cdf38f4fdefc768818c781cf53703dd2f6541abcf8c65c63744279d2c27c8dc8d1dd8a059e9cbb7660d5b76385f6d47796be73922b25ed78f42095656894074991b82e980f86a3e040cc989951d2011c6c51e00fd3f188e354bbcc78c7493ff68234828fe8a22f35e3604ab3b913aaffae43ac03d287981ccf3d830aafdd908564fd96631f11e8a830b09b3e4f084751ca9de44972b49da94a09a2e28329d4c928245422fdd1dcb414864dc2f1d7c70b6788cb2e373b6fb26bdb50e6324ab2d336915fd2c7635774fbdc0812f8cb37439e76432337b0bba70116429083775e2dfb9744d0203b65688da1d5e0bd4ad6d635ea6d0b1e2e8e0a1cc326f20aa708fa3bb28da0dd25c32f36e3062337b22d497fabc751ce16392cb6d4c38f9b76176f005c28c39a83d9a306c1867c911095a25f7fb933d69a35aa2e92cdef8ac6a7bd0562f36ef8e9a5cf146e8541e60cfffc6d93a9a69aa7c3a6165f4d35b1a3e80b5be1690831eb637960856db35ef3d1c88823d45da418e3af81cf8f4f900d5d7505525855c9aa4301363c2283400eb46744ce8230133e09dcbdaf6082a9eb368c44a47914a8128348839176e6894b28a04a3974722ca825b74eb11279f4c5abfb5451c1a6a01bf986a091e161e0aa42b870d02756850f84568dd5ea784e24bf84cd5fd70f78ccc74122b504b0c9cc6da49fdf83c4a3aa83d6fb1223834ccc6b47f35aed0431157a1948b486db5d86475f8e037f1ff1fbb75941ebc66ee81a65bd53d25a6e69035ecb44eabaa50debb5acfff517963b9ebc084431d315d675a725c348da6b1a55859510a493f00a2df190a47e45a6fdfc8e5566de06efcca5a4189a7fc73fc6960a3ed533c591bb285fdb458d9d0f4b1549d104807a073d7973f3a4e4c83a73638e3aaaba4f4256f7f78cc9b7d52ee0a63ebb21675b875ca608ea9182d6ce8ae2a074b1f828cf4b2b09efd9ea61c2bd03a3042384d9b3df24a4922b0b89bd27eed776c08ccdc9f27417b24d1e6eb7e1e73a9ca5bf3f33a0e0d9733a52256f89afb4b673ef38826d8ea58b2e20de61de8a978a34680cb92db3d532e8952b69f7d9da260c65ba2e02aeb40de5d68921cf5da72814cf175d039dbc176dd37078e61f76dac0a721c5e92591187fc9afcee6b5cc11b2d4c7600a7aa04e06023e1a12015224f9291eb7732912fff6225584154026c636ec6cbd62276906b2ad06a9f5e1f299fccec09230ee9b5e9997d61c789ce6747d3dd54521dca250d18c520de4e1eb9f430117eb4b6a4a346fffd52cb28d6e1eb91c86a09d92f9bd881fa011500cfb80e0e9c19482e9dcf47863c374b91790f6d6054cbdee42da9afe6881074c69cb0aede7d37997ce9424913ffd4d2a2a0c4a54901f8941b53165b74fbb3405c49092b40d4da7afe1ddffc2dccaaed112ea62d2f4b5542b9a2972a81a1922a190a4a023b102377d8067fab12ec49768c08b4f082402b071b504eb7cf7958c17d09c3db039f729678af4d277d5b245377440fe82729bbe12e113847a73687f3f921eb977338f9484e8258b11c83b660fcd3a53d44b74d3c5b621cba5f966745e57793bdac6591df38ef0cd2bcc94af4d357b1319d690d68236695c19b22bc5bd3a0a456388f20a021933ccb0542c2d4d93d3294a45f6643eee462940ee31d4839f24b157e49f9fa659f7375031daea7f7dbb3dd18437bd3f518bf944591afd842ea110467017dec551e097d7f50efab7c9daba5e269dca202c1df8820b9cba49a9749a34832ffde768ec09e5c2cc2e0db39b7f2b6ad015c92704ff91b3151f6c7ce481846aacbe5703179b0f50ade809694bf86387ed0d8d7c1e77250659b1ca9ef8991667011c4bc52e17e199adc31642bf6b6a6f1ed1556012a0a28a2f133dafc925020fcfba93ab8ff3b93301099ca80f9d31f926a638b49dd1cb7cc3776e254905fc7c890c3a42a86c7f29a5666ed84203a0cc686f097bfb526f5fabef335e1f406888f8efb15095b38885cf2fc9c170c5000cefd1707dadf310e1acafa596b02b97f947c1b538037ae8b96d75e0591146a9884816349c36609ba9c10ef7bb2516468d702f48c64a74cbe596cbaf00d91eae9d18be0a94528f6257aae8d65242cfc374cbc289ddf27a2a3ccad57b4cbc000b313d715aa90c54428d09d69374b19b89af50354ab6e6fef9df788b64e049df085fbfc2757bce2c7ec436dbb8be27127beb48dc5cf12161afb8728ade699a6b601c5eb49f4f6b57fd58c03f1fe9676dae9fcdf9ee8d8581316d48a67e977a8d0661d06f9f237deb627b2b807ef2ef1a678da53b25f5ed91ab3f2cc0a8434a8ea78c5335484abd7a2084e1c056e93b00a7412567bd15ec6fcd960c13f011ca2afcb222c04b0de8fad1427bd7781593ffd3a7489aed9e96fdf868944ca85aa48974aa92393c426ff0078836469e2a901ecafe2c8cd253fb58827e4b01c7eb7143629201b1ef419cd6276529b10f192bac2d3a6baad34a7a196c64442810f6c8651d68cf74e9c424fe11a1fe38d2b55f1cfdaa1958caf62b19bb7f0b9c3c967d0635790a68b1f04e39c2e6e870984a2d4cdaf78708ab5501b8d73f15b4429e60ab5f0121bee54c04c4a91b2a8c5a73a861b435a256c76ebd4cc078b1629ecf96417bf7c006891c9f7bf5fd55d37aae0c34a297abfb9473cbfc6823327813c4d937c22bb13f6289c1420d869e57ad2745ed8dfc8c95c1dade3591ef379fff791ee5d291dfa88ebee4e7bf3ecfb8a45d2ceb991d0b97ff6aa8ba0ea6fce2cdb4eb656f54db41f134f2abfd3eebb28201b7fc66167062af0f8b92973b2547fdff460f40f7118005ecfd047d2a141baf270758b45e425239692396458566cf817315de75950537773e91c2a72fd03d6d7d8bfe43f430db0587daab700a15d37e0fbbff7ee0bb90f107fac062d3fab4bdbb84d3f4f6ec0ec56be590d87f3dd323f30023f7923a5e7e7587be62b0507e87c5b090fbea544b31a806720c62d2cab6b15faa57fc4f167e8db7e65211d34f0f57fcf1be46d4cb011ec8a576e479b23f52833c68bad57586890b31bc36d84cf369cf78ca43b3885a63c56a142a3ddd19c9561e27a71eb6f6849d8d52645b7ce96844d7c7e6b0fdb55c9f9460a5170837463691a6f860e82e7ba1fc4041c246fbd6027d8b386eb1237dc474b061278f19e071b33d4f82507061e180a7b4aa7f4e6efbd7778d80102578056f03920fc5407843564a537d41f4b0a7cfdf1861354953441ea1c6300b065d07cc939469aa110e8b7c9f4a20b1973bb4c6f77843d239162d780b7b98b3ae29b29d1e348c0e6866d1df60b420b421d89cf67fc34c10d9d5c486dc910741116995d2d5c29c3002739742f93ba80e2e13082d50409b5ffe39b98f5d22b3ffa96600aba67e2afa743f51b07fb1be60133739609dd153120b0f05a26f69e7e91172abb26374923b63a73bf0cca9c3638c27ce2d702377fa8d3b8c0322cfcb509f0f043192cc1f6a52e84f67a0bf2fac91f01a12aeee113fdf65508a37f84b76fa44bf51ca2c2b5ba7a0b1e93ed3bd6082083aa3d5e4d183aa9884eb4ad04d0dbc67eafdc745a764dfd395edd2ad27e5ff04ad747c142df1108fda20aee498befe4b1eff129478d0c9b79da2eb18297dab4d11cfd2ac63ad7bedc2426690f863e8f6829829cbf3d167756af47f2d5ff843056830f207a2cd040c1d65e468872be68a9fd50c8d0e7ef7a181d4e7c045c73e2855d9197055cbce00e55eba4315ecf3ee6792e5ecb2010a2dd702c77c4fd8a723dd16c8fc2bb5c4298d31d39e7c0966c9b8d705c840a11025f04f02a6967a1f70706f4437465c7230fb588050055d212a1c2c6d492c77e498c9216c5b5cdc43c255c354f039a0c0df45e77b160baa5be5024942bfb938dcdb65b8dc5c043b95df51acfcae08655c4b94f29e86dad468c5be779b3b2c4f00617b5a4139df2cb240d07d6176e0423e8e50b2bde4902cf686b8be3ea96f6edfac26c2e93fbc05ec6aa534a12f3227386d12eef9776e1fba7e04913a5a5cf0ae2ae628135784ddec9e336bea05748aaa113af6487826f66e7229bbc7447f3d6f13d02b6e32c9524c5bcfeacf42aee2edee96e4711c5ae355585a66195f77ec19a01d4e995c2ce9cba29c3657af3222109ea96800c2d137f1566d6cc39489be20ae8af3b4b6e5361848736b377e5e6cb169f467ffc9757bc14e858857e658486a48d5c62894139e8ebc822ff159d35b596e0edbed9fe31e16da17e95bf514a71b6e167e53399e842f4614a5be8cc686b82afdb7f11eef0385800cf7a8c597088d26dde6d3460ef8e1d8a877eab098edc40dcaf52a9e41a8c15a1bed9c62857da11b2fe4e2177ed51a43792c975de99220c743f56ab0f38d719fabdac5e13bd80d02988318af670325413cc50057374aeb25a144e1ed03893a638e504a671f82e0a562323cc702fe9452926de8201472de881100d9429a646295539620d8fd42974e5af38807a08eef63a585214ce81b4cf2aff6e08f31f9ea2ccad7862709936680674c6bdd958fb2ededa2c51dede6a7286b9638d09337a23753a4778de4277f910154bd5b83c2b10be98167a69c4023a3fbbdb35232a3e2ab2280a7dd1d906812ab80f06948be0d88dcd370585a320428cebbb8d2fe3bab31cb9a7b4c4ef5528162c788204e6c7fcc5d6a607b6e2c4bd5c9b696ae5f3f2edca9f76b093105e6759efb8331ce749724e42dccb750c57fc0097524f0e30e5cd675fd0689a8aab7f7730e2ea70cbe51b742750273260754e7213426a944cee5138beabee9c79d07861e3644af683e7b40aca202550711bc8eb5812d18fa4b72c843e1edac09460205d2993ebdc0fdd1fb4378ce2f0832e67a0d3984af696745bf097135d46a06210f4baafa91d683c7eea772dcb887e93b85cce11f32ca7d9f17a3df7a04681e05261e1b1b670ac9ea277ba47d3c8ba0769983ea8ba568549ff1f9bde41779fefab6a7ea1a103e32d8cfe407d9f1acfe85c0aa0b31cdb477afa4e59c8215211be6ca1f76c24b3f6ce250cc5aa5b3b582003be90e218f97d1b42e1c77f000c30ac729e0145ae05129bcd804b32d0a9dc51bf249512d87142ab623f30a481d488518c652ef07a86c021849e35354c8e40ac38c35da27f5ae4c259e812c6762e0be133ccf10969eafaff4087a08c376827bc01aaf94d0d43be215f8353040b3cd7d59f63600dde5378dfade0811424720fec3cb8b847829185d33000c02f011b1a575f59c34289528f58a6c6f80b84e8d02ab851a8fefc93073f3fee6d302ff4fe6b0c6fafd6bdc7489b721918ec6a2691c9ec97f1c5def3a96b957c54e2cc2965a6bf39bdc8e595e9cde1282910456c47425d748284efca21b2f3de72e019188b3c82f53290dae36a7b776907ee4bdc9b353f4d40115a97e856bb85b016b5ebf4d38ea4575bdd6dc18aa70e12e8cda5dcec4eb4c1be3e708178d700f52151efb5e704dab556ca16560cb6eb6791d3f66833f79d7d50ec7bc7f164defab14373ea38d6338799fdd53a44ae0a04cd666b7a75d7c8c374637f582ec38ff18fa264b3893493ce52feb6908ff7c56bb7b12d4576e59302ababe1d0093338015167c12f422d9be8762736eb2957813e1fec9ac3be55a0ca1108c6769a6c4c40332a8835cf5429c8b8387aefb92ccc26a1c7ab29ea7725dbd3bf5065722beb27e57a383d0f0cda6aa291583674aedd0a31ba26eb0b9a332cf444e451fee83727cd6ae1fcd7b94c55fe935ce6df8714b3ee2e6d007a9e86cf0885345249d3e13b0f2bb748a4003b718bb988e34c9f6e4bfd87858295386c1e361ca202343db22007ea763b3956cfa9afceadb7631ef5f165705a6c1228667f8f0ea256b1d85936ddeaf6b903b2fbc5c6210daadff4fd877457a6acf5f9e5d721143e5c29e9f9005d07a1ca97d881765bd947fa22f4ce5264f231353058f2a590207b0c1991ffd26a552208339fb985f23b687b7b23f7bd7ad558845ceea6c27a517e1cbd0949f9c9c8a04e0c57338a1d5292930a3f1eeb52d177f98df7a43783d812a5189121e4044cbde5e7065654898cb08588d8ec849a264779028234f6d153d260a95803ff4a0849ccaa168803e9a0c0a5e48be9d477fa690e925e9926c9e74858eab13f33a3331ed33f120e096471d4cec8a579d74af677e4de9dd4bdf7e1a9b0c8703e074c71039d17984ace1ea289b209fb2a777ce02ade91db29f8c09fa7626b29e08e970597b857abfb015cf8f6dc602028995da34115c468a2ef4b9a2d92a93c25b444b4340b35ba77644332af85977d7e32a2b487a5c9a331f1786fc36c77ef555b8d2b41296a45c10fc121f19527c2f8b0d5f824ab6b45060f550c10b2bb7297faca257f264c059b96e74b4e65ec8339fc3483c344cf49c2ea508ad48a1392cdb451654cb9e28f6173e7f72d360a4a5e7778435121dd17ab8f517354491977715be2c8a8ef2b79bb58e181ec59b11ebaedbaee1a39b657ce8059b15db4b1f1daf436db4180ce8fa439c2281c9710a27c80bf60ad1e3138b6128568fb1459352ebe5e6be00dacf08619092d444c512efcfd39fa85bed2586e13a04cba2be3fd672fd82501e88ba7632706d9fbd22b84f86fbb8e41f61339e44f0d8486282f11b62fb55fb66e1c4b9ca6a051d78e1c96e9906fdfa50350021f587e03f9d147132dd90f8de960812875e5ea82156de86f4de3b272a5bb1b8ee8e0681d59a5f4237536b688784943081e09eddf66666e4a2eea175df5848a3d7686055dbdc17170619d04f338ab23a53bbb85ab9869d89855d3de877c851b68244d51f9afa338c96d0d73a06990a358047fdc94cec09dc7893248c0d472f59c698213f07b959da19867ec8c5f20a01041093beb530729e7ccc63f5c1961cbc9e1d3557c8c674d8a7ea55a99800d0d75bb233c9c6c9617a8d8748459f290498f749cbf990dd58f21e6b8bdb473b0008f2d3bcdf94fe28365c532eaa00ba8d2dfcc01e992c8e8b5759499333025b0839835bd63417ec58e13ec9253c28c97fd2f0c919c890d78d7384ddbfccc371b37ec43020f6e0c5908f7a92214874335a7127fc4882e0ec0142d6d7e052bb3426ec7f746b5d8b2edff6b73e7352598fad148d5862c0b5b198e2aaee39e930aa6ca12913e79bc76393543454d5a456f1eef26d29d6c4efabc99dfeefedf5164a90be0de9126a37266d6fb6e252f462ccf7660dee018264bb0f15edcd07ab16bf68b4f5f1714a4efc7247e1bf066d092b239b1776b424c003985c3f2c43371fac5097ab446756e9efa1e00e3a6d08433381f49279681dd7732c3c937e240982267500023e3044a8712b39006147b9266d6a7540600381e6959281c037905c35bbe2ec42a8d36ca745bd8a6fb3becc4a04ed43d5d06ef8a851aee9701975f8d80325c11492256db2e2c65d93dbcb13fade15331f4addfe84bc9358e7db38239255ac67ded62f4be9c84d4c095c8be1dbab70d509b5068a2e41635c36946d5da17f8a6496c200b475ef8790d45a811e7897806bb5b397ccf27f4074107c6ea48773d6cd6bf242ebaf45ae6b471e893047a2cc9b2a33c565c63861b50621af9a277e62029ada534d9418c59613113a728af707cb83b78641d119f313f63f7403bcfbf287ca5fad561cffece25ebcc716d50efb2474557b307ec30727869080895e41d811b035bab96b10f511aede38b7f754227d02abd932dd09c2846032453927ee32cb08764bf81c668127dae2012a5acb61393277c2cd9fd093071154121e6cb7f718d6b85c7e4a86bd6ace077a630fa7977d0238cbb7010e190dd35decb8ca89686a9fb062627fa05c458e8317a3f2ace8acefb4042c2374c59f84c6b954cc55889981d34bbfdcc8d2deb855131944d9e4f30d78ad05d6859f2f17c32f27316c7df488d14e581b26901c97db4f2e26de53f9d39eae7b9034b3d1ac729272d219449f9e6c6ad891ac0025a4edbcc6735ae7cd90049ac2cc79ec0297aa082fa5e6c4762b89dd5b6e53c212854b581a195f3108652524364b04e7723efe3d5b0b2addd46db3140e17ae5306fa3ff1f59dddd2cffea88563410a9cab8f1ddf921f43f55cc5d7f6c81af340134c406e02226641e9a732c57a72d2040d1254253af716b6d9bb266495562fcc6c5b39cf1761dd68626e7a207da5d3a6ba4a8bbfa807b12f8120710e32a3fc73fa2d5c591c2e368b67f466ef944bbe498a39f6e52ed9d72061ae2a1af7b66c8bed6cc58173357b76bb084c92a7dd2dd9b091a63a828c58074d458a03f5b2ac00a216d6d0568bc32ce4ccf3a81b7e6461c19e831b481238b944e8242b628b383dfb0ffcc2e186e983e1708f084d7811d8d6165692fe879501847db3a57870cb1fbf16d9d63d188fa3b26f9e0eae103a7ab7d9170e3a4c5a86db612f6ca0e6bca2bc1f4480be5f02a8532c53368edc4f2745674be717d5824e747538dee0501df28a5841f4f95b337ac57f68aac2becba7d432d8022df6635e6f1a2722971c50a259292953fc346cdfe3efa2ec9f0aa3040c9acba4ca14a7dfb75b3f543480a3450839e34ac35bdbfe991371afc0731939bbacc8ed104431cfdc5c6f12601ccfe0e60834f67941cd0b4a2f03af1ebd9e6d9b0511ccf4c9076626f2603eeb06cab9f29e1231110000d15e6014bf9525db81b24445d4e4ce3e7abf210f7e384939a51099f3e86eb1b3de371b866fa8e1eb645183edf521c21df6988f7bac81fa9810b2b508437f1c5c4b15ab0d6cad828ff6e0d897cd5f55c8fc07ad778220d91201fca701bc0a00a3f83b2555eceaf2bdac15b9ea6d60421284db125924235a0e764c5e799b5ba0272ca9e93522227f5a43b467a165f2e3a8cf729fa4067f6a5c74b3339fe4678e6543dd3142dfe23474fa8ecccbb7eccc1e51ce5ff4944d8503a4e5a08264a56ce8050ac8e542afccb7724d7e069ac413418159cb00b523b2a9a6ef6c44a9bd033b93af6af3f88c5879305f87da6f7e08102b422fc61d39139d270e1ca13dc5cc58dd8ddbd5a3a92df113cd78e1976a6a33d2b80b18fc4b2a6456a5ddbf10538f05918d35f2fd7e49b24270151cc82c30450b3ca777b170309acdb6a85c51751234beeee9a15e91eef9d0a4021d6cfa215dc839eef088619215f21563ed45df35783f19ba73dc9efc35bc02c97b19c3489b4a60260a4391b744f36679da352152689b38256bce5f56e6466e728c0c72f24b016d56f73283de9c83148ea37ba47f366799880ccd9c6b56e8b77c5b38b5dd0f19a01ea8bc1a3692339596f002238e27267608d1c42b64aceab2082a821e6eab9d9c5ff754f277bd19ec575f3a553eb4b6011d08778f008ed530b2c3d1444efa3a961eab8209bd25ec218b18c756a0c3109e4d7fb31e4c021bb0787a7f0047f66d5b59559dfc9608fe140a50c3f6a14afc70042e11e026993190cd6ff3ebfbc3c26d4c45a771ba3fb064e03866506e0c3b0e76eb6e430a0d69d45ccbbd995bfaac0a94594cc4a7d242967581499b651b19cd2682b54b29c45e9040bbe09eec69bb0a7b415d987f031907c21f7e77eefcc5fab98d17d3c10516969225cf2354c2e446fe28d087ee5a25a8968a565a1e9666e63443976163f98218377f6bda109e9371907457fe5ae5b812bfdd9411737245e99ebddd586f8e8a6e44252d67ca81fe4f6d1c5d49b8e58bf623e3547a255f646093bb14e3e77e1bf3792339bf027c7dbc97d7c5673c3a2bf1169d49636ba6a913cc17e5a49fcc39b54526df04a7c1b4a1e9dd04b016a164a4f2ef1234b98430cb57a01668080b971489586bd1cd61e5add29333d67f2bdc474df6e8f967bc0727bc3b88012deeb9c408a1e4adc9cf0a6334f5b42ba13dbe67e9de011c0efa3c4b090ba4b761c1d58ad1486694fde99ed122527af1198e30d577f1caff72c39152e7eb161e6fbfb2056584fb967467132fdb1acb91751e467b4ce13a54f18c6b14568beeca5c6a891cf40ab5460281ffeb2f1e31df1ba07404156a640ecbf0a9a7d2c1743cab15993093083431813b91b98ec44512a7cd12e66ea3d558e742540ac2d8c51bd717417c96755c077f43fb4a3ee1d2328ce283fddf698ebaf0cd9d2df62c3e78d6fac22bd42fff03b935317c32341afaadf0fd12f1ff1409338e9299e7caab13301589122f49c6173648dc5479387bd7ee3ae9258ee58a680fe2fdd78bb64b180c6ba3fa0fbc2261643a7a32a9051088ddba8e789f3bec9be2b58ce13597a37e64bb72e6b94682a8ac41230924c37115d5454fc81f12a8b1cafff10d070ac51d84469bafecfcf2cb2f29de8390d7efef88326e6761fbb1a2d0f139cdebe0c2b9fc410f384d2cdcad83f9e79dd46405edaeeb0486e7e04603c9644088332442a87973c3fec559e2cb1283392026d330d31843503568cd3ba27a01b951c21d79b9ed1691d85fe98937e93a1a192a3c7367d156bbe1a0eed9d7cd8d6515cca72ecb61d0278f4f257fc34ffb38e6d17ce13c38736eba3b67ecb76ab8348ac47b2179b5ceb85b372e93781d654b65a32ff8c56688b74ca7715eecd60972d8efc45ff72ec64661ad2feece54aa56775bcc82027be24e1959e6af6e072e164a649bfe805bc6fd9705a6c7be363e2f17b584b0c1390879602cd4c58958c1d2c9fce5f192a2bbfc73a00032344dc10162321536f60596ca8b7e14d0819467bef0866ef9ec78179d0e47ca8da3c54e7dd496d1495529e28e42b34bd8aa0bd480fdd28f9d9d2e5195170cf3f7aaa6844273b6531a8e7653ca0e1798f8aef2b235aa9fb2fbac64b20bcf09552a8a41bf94dc1fd18a951fcfe99c0e7f166ee6644d23170160e25a55bcf78cb376489ad70a35ca385c9238937f34a27c8397d2f86106812bf1217537ff31ae5bd75f9e8a174715a0a47acd9854c9e323d168e484eaf2fda00063a8a255206723b22d15c74efe40540015f97ecb7044a70c1b493f985a1245fbbc9930e6a531bfd3a04072458b020aafde8cbcb80a41015aabf70703bd5526b936d94e1b70e9d4ecb5e5a67f1e60963d66128be1301e1d7906874a2e8a0fecb073b50e74b4d10383b431a87ec63d4fa7e7520ea05fedaf087296fb47b7780d4579d4c11165f21b2c25a2f5c5464754743542a8194f1c27fd0f6bb899a2aeb670caaefa588b2f407e073fe495742c39241fc4b7601f15e7c627ff725ed36010fd8b9c23a52db6b4c6f5d3d15d10444c3079d7794a0d133fb593afaf2d113c5b8a2294569f3feb6052da647350b1e7ceaef4c66ffe995a2cff4e9092f7e2bd1cb450d04adf9db7d45e53e0c7907e906dd269a99e650f1dad4fd7106da0bde1cbdf8782eb19c149d7be06c0281bb0600895aeb82cbcf31adc210a0620e9d3bf7dde9404c5b8e9477a4ab7e61d333059ff6336050ba56a1eb3283be764aa05ed6dd21abb48259ab550c5aafcfffa42d44ef7607048061105cfb0fcecfc9c856224e9ea32efd4003e00334e8a28f2ce580a0fbbc42db1464a15ff301f58891fb71150b92f2a30b1a024ef44171688279180108efa1af11fca4df0696d9326ad745b408583cf7668bd84ab2d4476e949ed5f8f2221894735ffb13570cfe1e5b8e4ed6f934725ed930d9f56bb8dcd3dcfc03789946ad8eaa0d2527c6b7475d956a6bc5c9509b4795260ea0591a9a8eaa46b5ba931d2d9d48bbc8d0cadfb1a710554d818b5f9e6d774459cb77edb821d2261b1502bfcfacc36b6095c6150404b80c2ea656e35a6800fa52072fc39c52669ecfc989e2d51a0863fd8970be73881a3f77dfa844f02fca028dcc2f1cfa6b7321a931e7d7415e256bc9c08d57be161d0f871c8fc30dc04885190cb1beb18734a2eaf5e5d2eef47379017e50bbe989f2ef1875441b673ea1f3c82e2fa1caea0862ab0b2a136abded3645269be766f5a232bf417b3529e394b5c6c7e14dfc44ca970a95f8101adfcfa0068214092039baf6053feed292cfec172821665d3fadf325a896e68750232c1cb4a5d2d2b3c865daaf80667608c9478ffca3c3f4100c9c91340498c2b89b32c1382067a1f229588c10ca14060a6d69faa76205159263cb7b14bf9c25784a3580b21950f5608b37ca5de21ab77bc74f738d943f7de3d62d9d3459f57d80e6675e851a99619a22868c6ba12ee2255d6bec1e8f996bf8cee8917d996ac93f9ed380a33c79a70838da287b7e87cb554dd5d631fe32530e5ccc34e37c938b6e86e7f09b0ab22ba0fc970394c6487f696534e0f4248b47602493a40e857b7372e3dea88a500e451669cca8a008a4cc8d915ef2fbf486b63e2dd2910b64482429e91b7ebfa457378ee88842d323819e92b5d1d6848a15c2e802b74b8fe2219ba8257646184cd3213ab443581f18908d62bbe6121807e16df6f5bfba93cb0e305547791ceac066c5d849b2db576ab2f1cbc533e84f92bbeb697636f6a9a06fab848792f08f05e112f6f852e0b59b781e79b0d7a1fd40b1ce0d45be957fcd98af6b54f9824c55279e2ad6e0898a9c7ca532a29ad80d34ee0a41fad34bfee3201be3b1c2269f23dfa45b633a326788af68f1c1f3c6071045427cb7f32e02d50ee2027dfd170b2fcddd1c0651ff2420f48ffdcd146efaaa7e2a39000fa1af24c1373b9d13b41a82c48656ad114e6a1c5b3bf6d1adaf1f3b81b79c705915b88078697f4357daa13f6059866fdbce80091e53cbb9f85fb0d2522465b06a83d3a9c355efcd8b46e2d5c63bb931a355e40c01304179d5e4e0aaee575f0d6d5b79ba812e6e2ff87af64009df889c0297a0574bacb74fe2e9c0f0dbe9829f4f5e01297b62263a69705645b65facdb7160f80eeb8a08f87ef5c008695fbacf802abe414a5d95d6d64064d5c34e496a245718dcb9470dc33276fba1c7d192a3b77bca37fa6f567192aafd48a91dde42a7cd6a02a3f1130acd2e7d7547b1023393cdeab395cd0e62cfc308935b6d24c4912bacb44b8ce09d8c4b34a2be3de03ebefa037fbcae3f3dc87f5bb2ce18e3cac847a93dfa0438446a1d0956cdef279bd88589e5fbf2a7e25926fceb0fde7f03c034469ad7e5419c19bb5ac0e8a14a259d053e58068b69bd07df01cb34b6fd827b401cc55912f20e78743d1e6b30b754087d6f7f3c45a1599b7f8e222da0eaaf54a33554097558cf76592247c9bced3fd882e8812372ab6fbca4988e9f9d57b7e9d592ce7325d72762ccadf645429dae14d5c949798bcfe4a2b2358934250cd4814882a178b86f27b203ec79ced55500370e493b51e2fa5119065db2964162671541443568a7c4a73c76db04cdd6e13d98836b26e1dfee9b48ee6cdd594491b48041fba92d791683153e28092e0522d430fd30171ec58d428a1ad3b8dce82b7ea8782443730bbd23c70686977948ca978348617ddb4513a7d46d980825c86f4412304be9a86880cee3f861cc8ec5dea4fd5a7ed13d17c2fe03ffb89a0401d569cbe17a98bc142550180aaec160b761877b94fd15774925be9476ccce240afdd7523d4f4ec1fdd0bbeeaa581d4162f55694e9f7d9e79ad01fd42cb57291293505aefc7bd46cc1e8a6213c54da1d1d0984a5b62493d76e1cebff96239c8e2af62d7438422a6a65da96fb376fd77336c344ee316ddfa723165bd5e4b912d291b4d021be43fdb3a163ae307f6ca40a2ca48a738f80d97cb316c44d72cf76d8eb9a706343b128aa4feaed53108f790dd2eab8d7b2e16e3cf8b461e8e499d177c8842c0798709f90ad3d62f164dc33af250c007287eecde1e4169e521226ffb2a958add88a6f7a0c75903d95a48ac95603bcf9702d17e372bf3a54eebf43560bd391fd0cd5930cc3952d425733e8cacc96be18f12414f7b385fd971b4bb83dac17e7e6b72969eb9f227c14376a788c61a6f65b95a1a46eceee64a3d1ea8e3bf72b02b7ae472425c0a7ba784192d92d813cd05f6f556872250e5810efd538929cc193420966048f7239585a619a618fff8ab98063124eb8872386d157866ec1397d733f1eace98ddb076548154a32984be14e2958cc3d09c7bd644cc72defe2c633f9f14554b5e1a5f7ca159e13c3648476fe5cf78d23f6eac51f3e7bdaf4500902d871cec6976fd7f781aeaf6ecab09161cbcbc805cc3f93c6e1faeb1a3f79a073ff964fc24c28c32656b33d836fd9b01b24f85864bda1c08cede50011bc10fc1297c856d1fac5ac4adb147d317ea06fe4624a39e83db19f1ed6a4a88f6a2eaba511a0b8a61bda56ed1da83c4cf139d16a22311d21c6cea325112ad624ee5d9dc03020120439c73454b28f1bb5e1364283ccdf8a5eab841fe7c1f448ff02b2005411f7e5fca27069269ada81f128bd7665dc28a97e5a91057ac408c0eca755917ae981402b8e1e37bf218dfb2ddfec76668e607661eb37d3e803f0a2cfd3d2c41690d3925e8669bdb24c5cfa5feacaabb18eba0d47999bae5ef13d825df451e989ae2b0e98792f03f8a9c98a708474f94a6faba84b190651aa3ea62fb429e7aec573af10bb0d788ac0c84b40f8f3da3d3b2dbe486c192e092e375126fcbc805ff8ccd002671bac6ae32d4df7302ba2d7d010092115e406672770a958c5a54c010a4a381734c71f255e824ab51c05b76fa2e86f25e13ecd4ca2e93460ec53315f70c0f77e1ce2877fc35837eb4ce0272e346177e0928efca3d226c51faca2f5415e69b54ab261f5ed5f5413789500c03bdd583f572376fe0fd65c4cdfc379392a5758c79c5cb386c9e0e3a680f23975116973883ce3fee7a5d4f44360ebc5530ad06b6017df289c133cb24166cf110709fc9fc873119fab8d97cc6fd95adb4cb3aff635368168a0a45de9f166c931951f5c77998f9fefc633fc369dfcdf28e0ec8820a439118f3c2175a295a7fac619cb3a5a3e3f403a9e27f3a2f2e25b5e4b2308b547f3dd13be986caf6252faebd414da14276000ad630ab07685cbc538c03e247154e42b56aa2a153282e748f37d5db20b19b2cf07de34f9050b70a7537345f2e5c3ddb1bdc5dd95d0ee5270cb5370c0d4c6228e961d36b08b9fff49268ea753a12d4c1a7e4789fab3fc5f923db41e8c66d67cfc363359dbfc9ce8a28f766917ed0dd04aa362f5507f2aaab0631e1bd15c8e0891c3fc7bfe7f0aad8418e85f66d6d50b07972438dee0a32a90894b95d5a3969112f5592f65b1c6be6c98bd8bee2dbee6c143a45d41adefb4ab45e3cb1a3676c189f3ba2af55fd03b30666bb5df2e7475df298f1ca07b78d55dd203eb0f477f9665ea1fce04a14a9698fa082531cd79b8b175a4881de2ee96ece11c8a2eb454648d9fa86472a845f7490bbb2f61bc0c8c1eca1cc2a02714daf180f43a97d7000795e336dad8b357b7346d6c1bfe769a0b674a3188442115fa036e72944f59b52a69934f68d10c15ee890de3b0042526faa4ceeae281df318f56ee31059238e10bd3f7e309bb29a75e888e0e4a533dc4568dfebbd6a2b07bf81796a453a286c68aeae5bd5a8f363c28be6082a0036a781c5f12e893989a5ab0a8c21a5969819f98cfe9a9ebb1cc471139a328e66f1d2b7d0dd7c114b8815175712422ef517ce2a1c96e2fddca8e9b5933b6a2af9a16ebd8162cd0a3f93e2ed5213bc6435fe424175bc4f34f50c46361a432d43793c15122023e9124c086a7c5d17d2f9d661c89bf39a16d5161725a432f133d83eb4b1b61f513b342696ec202f0b55608ae70d21b3fbd7c06ef55ef13f91b3d218da88a882984ae9b7dcf14d758e24c19853414cdb0169125880066b870c1f602d63c4ae72bb9345a62ec82aa64895ced119bb586e7b97c36fd4d95eae3d110cea1a3f438eb55b0445b7fd98e7782df9f312cf7f4ff73f0ad80c790bac15837c9526e8758134e2d6b5ce93910dc746f2d97e84881ed8eb673b3f679dcbc1543e86328f3b6e4dfafef2b352d22c1c95043048a67a59d1cdc3970e33781378395eb58a6e632ca876f717137694f836e7424758442c13fa7c36896c7bbb90f8ef775cb3170bd54c700703bf95fb36f124bbc023be6573a2832a7d5832bf6f3fdce9f3d267890cd58d6f6e5851a216b42c26fd6959cae76932d94bc5561fb46e549d7a828b488584f1bb6211167a725c447e60426cf8eca474b826d64934b05f79615d4224d675d4c4b511894f501a71093045aaac5cec5c99a8fe4cf23a0c1629415ba0adebb6aedc8ebdbf20d5cf6f0fda142784b6dd97a19db3d19f6ee26017a158505888d9ebdeb7f8bef210dc118441d67dd9293a409e7c56393da1c49edeb2a78d04787e71ebc7cce143cc15af1c245f472265671ba9d0f9edf8440f11aa082688d3b16950ac755bde8ed8830532a317b660b1a6f27cacdc2025e10d0e1731897f96809fb8aae1c7f34d442e8e2f7369b49f7343ed664d9b8f2bcdcc939d320b19438e29b037fa2fcfda336cadc443dccfe3264b8a420e7514eaf7efe46628c181153fc22cae0f1536e203f96728a687210207d134a26d79052066622fc8e223391eb84a4c070e205a12c2a48c20a2f949fe5cf6f1e18aa1b445e90a9326ea7fd4f7081f497393497d36729455b9cde59b157327cd1a09ca0940b38626255d0dd37bcc89ebc47434285186119d5b28aa669786c7a755df91d0fb54fbd6d8386bd708f045cdd3a70e4caf1a6db519e249323025ddcc75a451026cd83983636b7d741320f40c6156bc36edde51bf6421a383ef7e468fd0a15f10a13800481d470c1c06dee248498f7653f0fedf52cfd5e305c61eb3a12d76e3ea983c8ab2d488af2a29896f24ecdb621ecfd561e2b70efc7be5ac571070e81a1632ce54465e0c997b4e7f4145cee2b6c421c36298ba8319428a8af039424f0421f2c16c3b534abd0338e00082f8c2a8cde8b5eb0c38a5525d4c46b2b08243707e010279fbab712c88b651a4c3fe3d929dbf17c77b636954fdf3ee206bc515dccb67d54fa5a43e0dbc8d5380a63ba2ac8ec94cb49323eccf329dbd54fa347f772657266beba312b2fe0be242961951e7ea0798c184265faf9aafa4b78b004a6cc58c526189599d97f853e57f83b755699d588fae761c5f38ab9c9b4c96238de4b3be5151d601c281f184462bfd145fc8819bd2f046e79cfdebe1901b9881180d95ffe66362c982a4da893dcaea1e6d0fd6c09f088fa9f28abb0aa2b3d034f85c9d3f723f304c7a2afc97a74dcfd3333d376d7936efed98ea1808de7a7e0863568b2d81f5081c2bd8c1f973a814e6380d9e14be5907f394a759de3e203426e6ef391e6c676d40fbd6969f47e0dbb967bd88c1db3f30cba9554e04b5cf79656c69161a6b2d576fbcf21f3e0b009fe7e8edc57ca936cd64698922d2a5c285566e45403cdd924708ec8c7ab58fa749ef5d20fa28f54db2f8ee5c8bbecd1ccca4b0cbb1b2552d5d7e7c8c3f94c5c8438048303640adcd80a7b229996335e1fcbd2e2f2c77c396e1c081cd6de175d3cab328af62099e25cec4f70c121fe170dc60b5cb5c075561a44467827cc36965a812078fd1a3fc1c68b25e97a2679803380137610a0d3b61491fcde754d40a341fe96271ec11269e929be3765fc1dfe8313270c8b9a0d3485658d026e26c70bfe1cba0adf0700572d22fc612ee07e3e8dedacefbc5d1cd2759819a2904015397c9c5d51023956f7e6b5e444022e8d0692ea6089fbe7d533b75c25af4ef35e56c34c559e555faeca7da96b4e190cd74f5c5c4d725955559895a737b06eadb191e880ee8c8e57652f645aff6cf251e35714f1fa2e0546face6970d3882df501b695c1ab4954eceaecbf8fee761f92dfb055e6abee917666a0f0b1577e578e1f48dec367d49ae4e7c260fcd735673145738b4cd5b7526cc29c1ad934b4d6609048db42e7515a4d9a629689361e595908e736080ab31779f9127ddba683d896b5343d4149e79978be78b8905f101711b7ecf49586f895bdedb375b4ca1299089e63edf591a42bab007cff3a670998838f4d1a1d826d6bc40a91f4008ee80b47d809a8176fdbeb39555c362b6011281eed3c09849686afc127aee8d34bc212c3af983e41d0e60119461295239ad3130d9b390685101f0d56bf7eaf5eae1c64d87d0818152c28a4140c2c3ec7c3bb59693b5fc888d683d8564194ac560b300e733cc38959fa6917b702698d8e26e0f8f9f586096fca33c4fd80fab4c88cd3707cdd0120d9c620371b8aa0af9f7e460935c9afd2fa147d3c27af1c09d98138f2d41245e9d3d4ea1924acd376f0c7e9a69a9928e6e9162773b9074ec964e8e844fab602c2c742ebadb80b5d8cd7be052bc7788c155b0a2f9b426a9e4bf862de022f0c8b35f6444a81331255ade974843a57caa8057517f3be575f918bcdd2c50bf1b75a164c3aafb4947f966ee233850b1effd32fcd43b8fe26b13a87bd257f9ce9d709c1d093b9d412df5dcd78f42bd5a774207900e6b64961e87957f5f14e2dd2a9bb748be4a9d5969ec1d8efecc3edd8448f77efc3a7192f4bb43f13e1bb9c6f8c963f30ba3c0b17a9cc7d70c663005b39f2b9c192c49e37d9c68104c7965230eb0647449f6bad66d8b0aff797cdffa6362a5d94493d87ed915d026ae57afa9265187d6d30b532b7f5f13ea67cfcda3412a423c07b1e9a01284c04e1b53a6fe0c07b351a78c04f87ad4becb92c26c24e840042ccec966dbf63f83efe9e4893f6b18d29ee1cf87eda0ba1abbadb5794188075f3d1d71066e88666b7d35beaabf051a84cbfcc439a159eae1ac52b88a5e11d82c6aa408faccddbb904c9a9b44bb1880fd3fe85ed211a50ae3cff780e400facf7606817eb5640595a9e97ffd88f0b3f2b5ed56cfe5cda65b9c6bb83ba4454cab61f78da60112992140022655f1e8a2b67cef1024599a5c85794ac1aab4f453a13cef3d19e0857827ec63f1b975320473080d0af1fac15465af6e35b18d0a6765da3dd0e0da356f26240e6a51ce9afe61543e91f1cd42e3cec37924d3648bc1f4765a6b965be372ca540aadddb1e537eb935c6982a170fc43fbd7c563ec9ad52248b807dcd5d2193e3db642942c1a0c412b994ac48784f602518ca9eddc0d0cb455e290f84451f13c44ae4ef9bb5b4cf574036fa365189bde386f0b3e0b9ad6b02f5214a0ab516d47e0568a62a201f56503d3073a21b8fbedc2168ced9b3ed837ee46a664d49542dbf6812419223529e87c53ca2838d05961c80376b9a5c4ba24be34e0985cd5ae2b5e16451863834f7b902eb2b79c28dafdc14af67c141dff6828bc545629ceb7e237265d6423e0dc29f7a723616bc15422140e4ed17ec2c219553e3c38e7fcc815d952c1274602366f64dec010a7d5a2ba3b7576e3df4b27c40475443efa59d3eeca5ac6ba1ae26a335f4d2ad58b9889792c627a7b38c26d86b4d0d6cebde923151a6ecdd937d494da6dc1e2c89cd1bd26e521c0341167013c0c0e2c2ca31ca20999e05b1fc2dcc62b53086115995af641da96034ad52256a46465778f1d41c2888105ab4eb17661322784655fc4c029f1cee1662bda24138f787f72dbe1c03c474046e272b85b7b1ebc571185827b26051249ba46ef1a55c254fad339e38914ae15f08cc5d5ac7f8fc51baefd58466c28e25cfdfb1102427458b96902025c29a81390cbcd2a31c67031cbfdad73b0dda7a2d3f651f75c69b4b0cf9f5bc6e1042dd0eb15278b9dd1e7de04b6af7a7d566f4826d0f32b9abb448d26a669332816bbb9898fbf5033c79b2e4e0bcdb0fd3bf3a441ee8342fe5451f0dd38d907dbf58fddaee63798cca14d567ac06d2c537a157856f7e4d3d6fc21a4f4aaf758b4dc79728c167a4153d6686d8a59f691818dc6386eb16f0a9e5e7cad1315b0038b99bf010b0d14f011d6b9ca4ed333170a8fdc002a9807c5b8ca7e65d29f1e0a4cd383c673aaa30a3d86d994443bbff00256f9f9901037b96102cd1547bbd41fc53be9c434601c1a7d3fb385c8b13f3f7eecbdc9e80d8fdc4df1b6c2fa3359689da471caf21ec8af546308f0b6eacca0c8ba3eacc94d2dd2f0d099b0df8022e538f1a4b9498ee4283c208592003072dd15fe5ca6d0483896b09afa3f3df145d90a3f9f80b9031655cc3077cc88cededffb39c627aea5b14dd1d07a5315e7799ee558937c5156374618d1df35e36a76aa41c153f317d749fb398780f24a54feda370954f9d073299fdf23d538b38561625b4279539d5555c41712a8ee35289e4a3fecd76769a5e8e502aab9dce12bfb3600de527d18954a0875d5943e78ab05da4e0a8009b9dab707481ee148b3309f3a8e594bc77a57bdd325aa5378498436e6ddbf46a35a11ae9605811c523caf3a39196cc4774a8d06ddb372d32e2f1622311543ef356000d598b687f51099088cebc83909d2af0ef6317aaa9d7c070758dae29b89eb1e5c6e6e1637e3fea019df436509b11adf08c300e4965d673889ded5ae3daf4ccc9a3d779b629939088152fadb9d108ae3aa1bf5ecf0176c6c4e3487f2a568ffe4b350b66e4041cb40a681e0312ac0c8bd526be8ba17acc94fab97feddaa7764b91a18a17c9383007aefefb2e0536b60c0009adcd849d08028bb4833cfd1fd5a2ce4394ba0ecd6761102c9a595c9bb73d0b0bf746fd24f39f25215bddd687948c4b84a6a9e768f25d105ec70196a1d44c41a3b6e970c591348bec7f3cdfa10d924ef3cb662072b40083130070f981c854fc28f584df90c571fa4641fcf21d3353d1a76b9ab64c8fb12d43f13c14e4bb3b8185483373aed8bbe0825eee95a7e82690b3c2503b997715f37ce8aef8c0e1ccef2cfdfdc3a1f0894968f046939845a7dd4e1aabaf4e1cb44e66510a87b427afb68771f2238970e344a156ebc3fc869bdfee7a863bba4063e10cacbf36356ce764c6ec781678590c4b670082f8d8ab3b1e7fe2ef27228ddff776752678c0f5d28369c1cb5bc3ef55dc06f85a101d0b19056c897dc50e514f8ef147d2986d5a2c4d9cd975ee18ba07c11ff8508537bbce7611cf97afb94377547bbf1c3ba72de3a84e5c6250f0c4fa0136deee39da8b4357c7954749376259830a910f892706fe5ecfc16a56a89d09d339107eec15f070bbc19b242aae06a9329d9e58523623f098f7e263d0a1f721bd6dce2b77ab9c7d8031cc36eeda8277cc7e81eff89e6eaf0dbd503f9f818de2e0add613989d1473facf617a9702a8a74e321aedbe5f02ef3b350ecf1910981a897e7db09afe79e68ce794cf9045a9ecbca5b218927346c210234b5bf936691caa635746ac6636289fa4552d21d616f00b4e1e756313575c5b96e873024cffb4e2635ea2ca18d1198ae7f66b5f9e4b31757dfea3f4751db984f6d3ab12b52ffad0020225f18b097513056d469d5bbfe53ff7e2a6d1bce27bf556e75c461ca2e0b5ba55442c438ecbc917ad648ca926b38a890ec22c65661878d63052632a46ed20d6ad32f1a076040e0ac1a0f475fe60d2480de8ccb5e128b163c1413283816f3cdc9adc5fb9082401028fac3abc3f0db6bcd59b3cbdfdb8dba7cfd3a28eeaf03d8d73cc4dd4c7c3dc5a0bfb24dc29fd189fe4043416e05b57ce405f63c5e929843c0970a97abf9250117dc1d55fced167fea91ec1a2edf80d47fff8093140d24e0e4045e30e81d91979db21bef0b89c46c3618f3055faa6f11c737f20f91d437cd49f1f9b1fad36b637260bd922bb261cff3bf587e3678e3d7618c8c164a5dc0e05dc701684f63080e370564beebb9ac7d94be2674efb85b7544ce77ab22885067b357f44675ccf04f5b871ca8edbbd499f99696dc545281710170be9fa54c6ac3743ca8b162a3e6104924cc89effc7b1ecd1693f1cf6dbb4d97a8ff233a76ee238e42dbc4042d7819f4e5b67f30ea2995182584623f88df7e25d40998ef726d9834fd3bcc13ccaf175cc3c70b61f31d0f9024e2f419de76f49077abd6b12dacf712a6440ce86631f95fcae09116fc49591a17fd4a59b9f553f1fd89259ddbb7d4c79ebc7da3111319be5f8f0bae6683ef3f721fba4216bdc42ca93270872ff85a86a57dc1db960dc58d2cbb7ed3f11c6ea9cc9fac8b25b379a3c257444775b03cf18b47fb94632193ed38299d37d131f306a8c95150c35be98ae8be1b74045c7c24d55c64171358d1d0134e4717c67891c5145e1c5cd5ea4957273b45cd60bcb97a3fc53fb886fd655500ab76d1390358d3cf595d77823bbad45db81fc890643dc79314dfdc03aa80c2b42db863c200cceec0dfd6ea2da2cdd246069a86df20e387307aaa95176958857e86fdf9b94cbf848fb1f28ad24ba229a6a7e7f42f4915ba614b4bd21541228c799a39a61c35c7b96b8c434f5de189b81eda69315b989817039bb487c0970dfac3666117a11d387635d1141e1c619b215e7783b899f82ce20785a53592d126a6ad2a674b1081ed2a89b25ddb48db3420946fe23ce54cdab13d0648b5a5640b3ea08fdfdd0748c1b7a21dd8e144ebcc6aaaac46d02a82985d2baf6b8b739d0ad1d71fe19a9a31b8c6725b5cd07f3997859edc518ceeadad7b39ade01fde7cfa81b7369d77c174ca1ab12e76d1dc64528b4921a57acfb8d9d9f668865b5a064cf6f55172e3e9ed85fc3bfd6a21e7bd82c151819749ad8dc668889445923ca916d4b59fa7a0dd4286dedc0e65f66d4de848668b992fa3494424d0e11fbaaf642cf59a4d5beb646ca710f7025eff4939ace6a52e3a7832a77f285dc227be43767fcdf4c26468b8e7c31ab5348ab617c783d391ce9e46d47f23a58688b6c8ddb94bdeaf15ed356a7c289a5434ea45b1f37b05ad32e5354ebb0745a91c97464f181b35429173db8562429b376a1cacb7156b103075bf8a17171f8a1e01442f90376cc4f557936fac8dca14ae56b521805b93145a8fa7047d01018eadb3b5fa59a2744937f7d3d8f58a06540517c7cd9c4cdb3778e9cf0902c983520f0567955aa6db8a6a5a7141d383e185c8bcadf009c17b1cfc2b229c3d5347b604857f5f7d517cf5528b1fb88a8f867e0bc61105a8737ff825d89143f389539b35451ccc769ec267f882c986e1c9a4dc7a3281f4497d8a58a7acbe76b5f8e4b9f1ff3f8d899c961a1ac3781e1ea993834ba3279844d701f9e34ac9b61f37d345fd9ec761ab21181cbffe40f4d180d886e67a9ad8ea088db2ad83b711bb77a1a1d421a701b0061e584461057045980907a76cb44109c1dbb7dfbb29c5b1625969f84f71ec21a6a9e195aa805a118d5d3080b3adb582add0977b77745a10943ab57c798594f0fa651ab248a832c0e320865bfe7d7a9bf07c8be12bbc0bef05cd93b98d172885a69e49ce3faa6e2b47f24f655646c0b13e0226df1baeafd8eaeba0f1cae79665cf25da7efe6cee333ca37cd9ad4b9262cec3d0bf560b52b442982553b02ce2696ab206d13ffd24b37ea0a44a908f78aca1246630bfa2f521218566b2bf844ee2d3a21d0170892891764bab131f77a89dfd2839d029cb46d1bb74e12eb596e666906cec43dc62c6a9639dab34096acd54441d1b0343f614e90953a454a2e1dfe7e56d4606e1cd2f64d38bda8fe55e2ed5648d7f3c9a4b7fe07354710ebe4d0992c67b28de1c7ca966a13e5d07b8c31e1008f864e4f1dbad6d274985d58de14e7dcb909fe59ada03c48835bcab0eababf2dd4159be3a20356c13e2531b481b3be8caadf6765b75ab0df6020057fa338c5c7006aa61c4d48623ca57ff457da8ff757ae2ecdd856efd7ae379bbec13235d6a7fe5bb56929e8fe57e8cd93cb27b7be7cb02dfd96f1917a96850ec49be303447690c52471b279d0035bd2875ab1c8ea1c9316ee52444975ae92bc99c1126a286c008b7b208c7381ed79841b6cce7d7d691eaf07eefe3179564b7ecb6dd2dab8ad001e45937d6646c866684f20c9d06ea385795c255fe4734391170b9423ba4b77f8bf38168c6bcd519bdd81a1e82670e5855a1a8237f21fba0c1b25c5516781d4a86f06c70c9cc30953d43a36fc0d1f2d631546ef6b881c3c772fb8aea68d6d38bf71293922c68d23e3c538a61a6d6218c43b3ad967fd626a3a4a5cd8043550e576d4a78410acefac490547ab3746f5aecc091f98a589ec1ce19045af75e3f327f4d88d0d251319b59ac80f28ff93948eb7b062d18e4991a32d89e4742b7925cf462bb2785850d50a48858b4b393fe9ef6874785ac5ec713762aa65fa4c2b4f8d3e93f95d68aeea540e187bd483836540c956f7d7198955bec0d8bd75515ec8679e3bdad199eca3f65d9f7bfce20ab073755e56327bff09000fff4704f9ae65bc8d51de9a10407a5b23a3ec792bba0f0ced6d5275e1cef5ea23ede8f6311ce08c8b68fd9b82e8c812ef46d9ebda7f61d7bc5e1b153629caa1bc4c1de2f635846d4518dd1cce1ad41bb3c66588c88b446842b0e67e3bec257144a6e836136b258bffbd83e2f86b5d79346ecd5b8b6823bfe40a0903c94e9f033742a5762ec9e0af3d993fefff66f4b1898831359273f915a92df07cee5f11dc063d57da5c02c1285f92537dcb9f1f9ab1073ec1a1b53086d13472357c79601105fa35160cf427d53a60558068c9de83ec3639dc5a923513c916e2cb095dca85629ec45b43e723233deb73a149fa04cc437507d2419f406ca7627d53d5024727393baf94313ac6e4bf1759915fd07454e53657fd5716558e837b47f76cc50efdd32bf4f11d8044dccb8bcca678797899d2bb2bf56485564c23286c496fdd938fb3bd80d6abfc2a6f441753a477769dac232bcf2d83292aa314631a7f1555a36f9239bfbd6a037603c53ef7f423ead240916a05a2c19d41a4252e9e31677c638bc26a26048b0603ad96e581e94b5c2fc410f4e33dc28962b2f2b6e319e38253e3f39725601ee400d431fcb8c984f7f2b8884f96db033a2e0c0f16599d646de53406931195f828b07919f9d021178e638fd2344a306361ee684fae5dca9f5f6238826e0cd004802bf315d9fa69781c680774b14406b2b84ab41cf487ee796d78c19f9a7e876aa72dfa2ed38dcb754379af28866ac15c3dd0fe375ddc8e3577860f2211fa91683d41d6ff69aff405ae3ee309c868ba202d6950778d4d9476ab23ebb77d377a1b51d99cb7a6df7f104f58e3fa6ea99f00cb53c4d0ed6ec46d5727b0a4b93662fa2541b4b7c5fcf12f293ee6e5f8eeb57231db8a82dace57c8c4f3cc0453d79a711906d6037dc30fac9842565caae721f555e981f9b2f39a7c7472771dc2cd950ebae7d2e5082b99bbea6a4e58c4f15111173f2b26760ee0540fdf92fb7be6795ab5fb68bc20f30c9f5207b91f34c7706cf291f4d46d1af9213c500972b26704a7ead6675f81759d25907fa71cd1c4f4309cbf1e6b170f7343a66b997368cc5fb0a9925baa2ec7eb73cd0218d26af478726c051114d5ee7b4baf700a89a4fc77a8b7df80bb046dbe597e4b7b708877e5e90f4a28c52393ee353f93e1d8346a40bf5de48d7314f7b1b2e50b4e2af652e0179ebb1df480c5ae9188c6da4dca35fff1c59f74ab2cf52e4a95b2b09bfd457fe82dda03a789ec8678a3753760c23dcf2cf8aae08bf79b87495f85697714623dc9648882b7eb5f9cefdf17c9050bbbfe33ed3a0230bcab69eb517604f29c2c80f6bc65233c098a8453f24a9673ca4a9074a7360f525cb378afaa7741210019f74aa38c48c80bb1cdaae2b791c8e13845e640007474e0840af9948b574255c7e7262e7306869dd6eeb2da6cd8951d7d2b2b91af0d1d0adf6a71bc29163574dcbb3073933d46f212b813ffbbd1ac0b9e6abcc493e01e4ba4f1be3a451afefc026f058838e0954238cf9905bf0fad125c71f3f66969be42411855316a9ea0f993a1bec05eaf78d8ad16c93bc4d0e02822527cbb6de0c7fd9753fec8d7a0a055af8dc4c219bfbbdcbd528ffb6a77b24899e8c47c659da909d3e3bd02c046906adc442c6accfdc8d43b9163a2de7bca005c2e4d265f7f7de87330cf90244bb0a123d9794eebb28d9a2cb9def3e08830f1fb7cb53ea97174b6828c893d37f679fb5f88e51b92b7b8e47f57226783ec193fca3ad141bf51c262899764171f4611e2f05a77298070d30f2fef91ca134753e088e89b4a740260344e591a35c42f7529be2c6b27aaf3eb58cb0125bbb3f324348b1b6e58b207f3f52d21fbcf8fef9872fa706e358acdabbd36d8f6a16266b96f6f02803402e201556160857ec06ccabab8d5f84841e5514a682654e98f76003429da805cd9a24219a5d1cc0b4e38eb84975031942abbb83a225435fdba81fdf88efda6d03566f6f9b163e468353bb0eb4191e74ca4c9221ebf061cd2c60e1fc8339ddb0dfef93b4d2a790f15bdd13732c571214a45aa3794a6baa264348c1b5aa957c8a8fbdecb636e9d4cb7169628e81de5d3fcb8b5681736a9631439954f9939316d0f87884be8ed52eb029ec43782ff7814d8fdf525e2473b0f558ed58f3e0f76695a79d0160e83faff18103cb6c660be77fd846cb12f8c839f94cf89a6aa9376bdcf31fd1645a401a347d72db5daaac8ee9c56f880c34f0740fb883c16f0ec0aa00d68ca9be288a19c431bf9f7412969ed4356be3836a4f34bd3647950bf5c6355e4db7111cc97b14ddd833824dcbfa2c442f16b8211e6fd5e79c710f1c4dcc771fa0e572c55a9a6ee0301afa6b32388ae01bf7dbc2a484d9875c2e5810e6c51a570c78900acd23015628b2a0f2bcb35daf2a429804f5d4de4e28b765481aea15168a261cdd93e4d2f8a7c8b7e3440da0197e348d2360a6fee0ae4af554897864330170d0a1ad5fe7c903aa01a5ec1759dcacc9d99d79a80fab781c477f11def4ce6f3780404c176b47e2aadae7b2981145c5a6df747f047f6b77c48cae5b6d16b602964538c3b753fc355634bda49e6398de02c45b8be347d7b4f38926b1d59ee68de3dfc43457393f4c7466d9674901a4896344dd21afa512ead6a220bfc53c3ce8bd1a4e37eceb2a95a29a93f39e01889e49171191950ca9d15e83931dcb783a66d7ac981c44a46580e6cc14fbe81c815b157fe9577149f0a8acbd6328807ea7e3a0b85993a1483e0eb27aefe0640540c2f715fddffcfdaa46e84dbb060bcc21f5f2577188e70b073c393fdd19867c9f8914b5130e6131f0921aa9cc095cf28cf4bd13b27f78a6aaeee618e30fea6e2282feb731ad1c5c54d9c30995065f069d37195f92a0363d3e4b478cedb6999f97f851bba3957c1cd66c0c6905f0ac10d07ed11fa57714538feaa190d6fa3ab6d3f10ab9c742695cf3f64a84a3c94398810703ad3d75067aa26e67da1b4752fdb71d154e78ac77e3158aa807525ad246ee3fa6d0b11e99cac889a2b8654f07507ea94e4b635ba9051b34ab11e0bc64e533203c3412157b1edb493721afc58c515588a776530cfbb5e2a81428c43affb8849fb0ba87bbce6f1558b8b81b36c61e234d00cd3ed4dea0660e18e3a76caaa9c7332b46ba1926350b2196cde3afbf9db1853e33b737d7159d5438ee6964a68b3541c3afa3adfb2e1549c6c0c4fb3e70f8dd787d1f79fb0c59776642a0a1bba712f1fde791ff4e2129ad13976b1e21875a885c30093f649e10dfde0119187ffee9441bd74d99567c2b4dfaef06b4ac858aeab322615d91cf9c0653b49560b04e8b0aa190d553057b5b68df08c83ff7d67beed72cf6906ffd081bf3cd2b8433a1cb9a04c19dc279762cd4ec84c2ac28084ee6db5bd381934ddb732c9133fd81683281ba91d0de868f62cb62476f3da3ed28014e928587b5e4992a6fc9e1500364be76a33d2138cbb99e83b6a095d447c132f44f65e18691d74f17eafa051a33a7158fc2ffdbaea04187fecbd664040a8219c39cf5d93bab9894b6a871585fe9518a89c4a741152a5762321bf9e8341dcdaf6a82f365f513fa55fc6ed6394044b47127773144691aad902f759e0833c69dd4c89583ffaad8d6274f71d97b05921e4afff209d76bb0ee703241ca9cd368c8702c45ac6a1a075297b1596cf1c6e0dcbe792e86fc2c7bbe4acae13ae20d370d7a1212807c2c88716e6fccdb7f255751764bf56980f267d40c5be5e7335a38919c28be56d0b3d1bb9f1b7edde784f297849f5266721774b91f5eea14d005b7279bb764dfef6c1d7c7950e26e0586ee14f2c6e633fa8c892a1b7a372dbb80973d0b947613e3daf8ded0c3e236e936df3e59edf3b06b5b63e93a8a67f92bc952175794becdb2f80c18b989dc0fd04fe1f616b4e9b60cfacf767b29517351f4dcb806cc8cd1d2fd45536f4ddf98a11e447b576de5bda560b71206c45654c750c65731cf05c3974ac0a8df9ab0a35d6cd464fb996ddde92072d6e3c0b7b975e554a5ea60cf753dabf265bb828de032371cb950d923206d441c954dabbe9d1fe801e2c969d0a61350bf63c14dda701a4bb62c6185e96858cdf8a726ebdcda958ea738b604ce9e4cb33f2810ebfc442504c5eb937dcd00c53dfde2b23adb072b09c3c3c419ba7dd16f3fb6403877ecb36e91857b53a410097a2390707421ae7a8a7508b2b762cba8f0cbbf401700ddd21eb64c55a5363670c10ed7d3c60b02f889190fe49029d15c320dd88411b7d8c47d46d1112945d46fadf99e15caf545319562af50620599118a8bee11fa4ccbfd7481a6448d63472b761bca71559012495508d11cd0cf757d5f304a11a749b21f34e6089b2f0d4725c400fa60d51cff0fbce116e77e95aec9cb970400c00ce7e37c2de84603de2328d1bd1b8dd6f37e928e971936c7857322120de416653239f8e5d39e20f69233ea197da90c61993541121bd63d0f1158ab552cf6effe81455acc0eabe53d2e8cb2891fa02cc95688081b46e89277ed77b27ee250c7d702454cb2e2b6aabe7312f90dff9614cd4a09df5cb9eff0d89f405f4a602d6c0925539c6f38e196e860e72aafbfcb2ed9163b984e408c09aa5fcac86593ec15aa30023e1bf5eb475673c268a6a8798795fa2a57328d8a310cb418d36eec7ad232ca9beff2df43fa746eb6d0d19ff6a213c75f94ed0303d4e1b1820817cc0b0096c45abfb1f2d680ba594848ff6077be52944287bb1c610d99f7f6f7b323e2256a67bd6d00896e89c7a6b3d909d0cb2631fec416fda0a19771ae26ca810289a4765d0019f73b5187d67dd0c7ba75639c81d66d4ea1ec81ddc04bc83ca210133546606c34e809415f130bc4f3a1947f86d7a44aa0227646b3a5702eb892e0c6788a08684a37af8a6dd1c99bb469448912ae21814acfa3bbcdd6b1a4f6881849e47959df5271c04d9db8f058f13a82bf28fdb2f91a3220443269644040da6351a2e24c0823215f3c2e3f1e92fb03a7ba8c6ee2a7e77ecca6b837ec908efa5b76cd154398ad6eaa01a7b72427330028b1cce99c67585dd7d0e8133972a94cf3d68089dffe9b4dba25a390c03e46568557f84c347f1b5d3eb4e791174d87303deecd35c1c9e7c61ab427c25815b7b6d45e14c995863284b8a30a3bee89e5bbff7ce61fdf6f629d4160345289810b2bcf1ca876bd21caae5b95b8e7aee721b14e7f3608cf99cf31248aa244b5f6813856cb77b3300b0764bab105ffa7b2a4d538002e0f46fcb77c2b1ed58054588830b45f5cff5737932491d74d5bce4a1d184a828eb726fb22661e623a532ca7b91b76f0bbd5e36c6edfa3b3886bcf0a4b0184c5478071177181029b0090c838e100be01d2c883fbbee3250ea0b485f96dce062067a7db61a15d7b5ee453bd672e01d6ee579dbff87d3e52e7639f01e743ee03dca566e2b59e942ed84fc341302e901300cad42feb9ed8610833803a6839f6126719f8b544068b4e0a66d9a3b8589107075138ba4cef2a4705737369aa82dfa9c6ad146742d2ff295ce46016c81007f839f8e66033fbb42457e76e09cd32b6f2fd9828db1ecb0a63cc8eabfd29a260cf9e62a081ef8622bddef82a00fb4ad04eefe87de717f78e75566fe6d82cc0395732e1d3a3618c0b910906b1b09a2f524191f5e5fe6e724c96622b3bbc31c042f897be442061347d31169b385f1b8cf837417a4d1a0f4653e3e7893f55d121710acc519425598e726afa892f511e1577ad7e839ba4841903551bd282bf1684ff2d4cfa6ae8f3f40a066f77b5f6afdfc3e88e97106f1a31e57c3a73cb6a080c37b0e4e28a31bebc2de649fbe8851779df10622555942cecebc5cfa20f8704bcacfc3ffe58b4effe8c6824b4eda97a20bdcc67487c681d1d81bb04cd197f56fa3e2b1493dbe9b7d47554a22958303ef20397f8117a2a4231064dd0ba4da9dcd42aee917c131ce62bfbab0b80809a3112463d2cadae23e410106e7e77001bd9b5eac3a9d648af491d53644cd2cd9bacaa39be150da84aa5356f902f50065569cfc9ee8c0c136eb924fa47c72ef77e5cf35438b5ba521224368551a45a9407c511bcdb82ab56e642c938a3655a4564d1cadd83871657d12438688003dea6dbb4f86a6687c7c47471b5edc7bd24c2c37d4bf5be868abbb3e061af3437ce644c6b632a6da732a9d954eee76f5c9161078b88e75bd33f6d30865f2bb2db1be8b0bba128c743d437ab780d45135dbd47f99cebd99ded6caa12db9c313980cf96f6d7448e75bed9165a225654e4ab108ea1ce35edae6e97ad0bc36c38a7cc6ce27b7d00b55b090db850263e90056bc4204c4f757ebd9ee4f520e15b75c93927694722ea218a8909e515139bbb3048df0ea20b55ee9ed7c7a8c2f4226a240792ad71a16a72e618e8eca41bb95282ebb50b4e83485d714b5307cd438bdd43046634fbcdc79cc18db3ea49bbbabdabe6632508530599c1f77a84ef8b599b9599967fe636c0725891a04fd927ddb02b8e86af52e5c83b4641a206d368f5bbcd3f4f727d5bbef7430b9da186a9525dac596d4f340cea0f7b160e7393ff8eacf328e6206e20c90e5302d4d9aedea1d9df60e7a8a92e56f376867c0c8c5623c118567d0c8348b9030771934202d392c28863dc8a309634edc4ff6fd8384b3e6c389d9ff4dd5ff09b2e15e1554f971d24d3bcd21dab032a45d06e4e39fa0e6882ee01724404fec83d1ff574ad9f6bdc20702b6b7a6d8b8259b29f8e97b4eeff17615132ba98de0ce227c3edf3bb4c1e15ac60656b1ec4fae58bee97f550dae7e9b824cfb61c5f187b2e397fdcc5254d2aeb73782a4ce3fb259fa0518ccb7b9f312d5b51a5efdcbc2fa23b88ae2906dbd6bf65885ddafb12dc0d2babf208e878e030f2ec17a5ef3ca3e96555f226aeedc01b30b4c276367868fb71ffc1b22386b7ecfbca4892ae56f5450a6c79414c3c3a851645700aa903f7f919f5a6c7a01f0cbdafdcb2efef991ab5d884b82bc5c407d2900dbf88f2182c6f8da7c303990ff64091f596952e4a13076ca882cd16e6f9d99996177094fb3b2a50a940c2bcbd8c99532a1867a88752f7d2b615b788b49319688f897b81f2f3492afaa579bdf9b491a985a55aca76c96c7c08527c01b56a6d7344747542fb379e2c5c4667728b3b7e2908b2198807cb4a2520f4877697d1e914bec12baafe5af4e47c1b93e6e407fbd773bdbb76145724f0471f847df82ba355e486b41eb6bb42d1c8f69abc1e597c23d11b3fcb6742c7dad5510fe1471f60db56d54902b352234159c133e227306adb184e52f652907caa61585e8e167dafd8116a8ef7c265397a4cc1f7df13bbcfdc452a0bb649329e7f21919a2d1e73f38b321e07a6afe04c9f643940890565ae742cae832d52265ff3b6566461568e44a2ff96ed578f71d3ba696bf7e5e236fb5282c4e48b9377f0c6fa25c1aaeeca84cad98fba517a31ff9471635f3317c1e2cf1d9dded7c97fa1a8d82c514723bba9a54e25be6bbb9a9696739439a9678b92d77c80367c9ce4780c8e4fb5b3808642857a34b30f19d3c9d803a241440d841d84e3f31ced911a36f302c21a3cf29fb8b175d56d228ca9edf2c92147cd297b4cd9d70f380057d2c675556b55bf30ba5047e81abf3153ed2f2f0ef330093a823ad88bb1622fa3e27640a0ee801abb584a7080d4286b2003406fb6c05a36fbef821f8293b40597aa53af23286e30df337138b21f066041477cc5374f67e7d44456ef8c2886d3e57726606c89224441a42b0cd3cb2be3d46f042965d64024ad7ce387bfdbb87c3bb230b1df2aa056ef2d8b5b4733d5b1fc16b585d67a4778793111b8a2455e3e17edb43c1ae0b95a7cd865a1f16882358b7a64251e6015b2e9bb7fa5839c258808abcf485e9ed552e66e8d157f30de10dec12ac0906519fce6f04cb18e1597dfc984b37e18a2d6b851e03058143a8cc844017b994b7389aa721af5dba70338252694db7684238e7823adada7a216864aea9f135de936a467354f9193b3ec8458030f505d8bb165ee06945cb63736df9acf0e79fcf4274892815e4451397bf1c4aa5464b9de7bfdac391c9bd1c77951734466d439fed41d0e99a3b92749abdcde419ef968d5c636e23feecf68e1699bf10432d6ac9f4f976d31d65cfc82b21dca47d601d27e57139a13c26174eb2c7886a85a8303cae003222cd711696ed658ee2e6050e6d70626d97e8973bd15c238a88fdd2a482794f3dc991f168a09f19838285a2f530808f945e4efc7d7b5e6c469c0129d210228f89cd77bdfc52bca9887e67d380c466a61e8922ee020d1ca1855e60ade0437869e5fa4d7f6bdaf67edf57b777dac922f9cb5a2f155249637e43b0563b837cd8a58ba36066eaa5fe2982b9c911587fd37b72aa7551509a11fc20de816aad05d88e064153303ca5691f1692ace4b4baff593c9e8b8dda310e0e8cd107bd880c24aefc555d348134ce3a5efc4b56852b9a70fb002533bc1daa936a68e1b503ffdeccfecbc2f46bc053c7bac41f67fba02826ee74a6b438ec4976a5c2050bed8067c0af780ea1ad19b963078bc364b20d2299b385a101e477b9060f5661e940e47742730154b7d76ef9163dad3ca03644664ca0191baf93de5d2ca886b90a9b05141c45b1f70b54d1722a0a41c151b3c992d3ba94c2390c54aa8e1f71057d4dc7a68eff38616cd7eddcab69d1241f4811952ca4412983d08b11fb6b59cea93e5aa1a6b0183455dbdb1ab6bfc14d12dc0d5da66b07f1ed58fbd35ce4a8aad433f47a778405684f10678e7456cfac1fd8fd1cf016f56338096816957e59c3b06eb9758beed2f6b4c91e5fac04897e74b54f6317872cfc4e5aba0a4dae63614aba9a542fc206d9eadfafafb8919145d5df285593226d86260d88f0fcc2a56a93070634cf19ee34289fc8950e96913fb57104d3b867a743dc4b60dc936ff3d39f79fba400ad7618418917de46fb77f892018256b060a5e749ca52dc9f308461bcf2b542664f704ead1cb465de2c978c13ce562afd563f0bc80d65adbcc689ef581ff8edda84002641528104efe6881e24d5734c84db36f111cb91153066cbbf1b8b65c05660fb185dfbabee1cedbc77a2bc50216077971f31527da11be0e23879808b671c2c5d1f81823ff1d43aea423802846bab1ef80051641945338dfb72e0167d6e71f38d1a8f9b1c195bf18135eb60201edb7cceac72287c90f7ac6752401b657f2298be148d5d9c40dc8f019926c7781de6130596a7005a2ac30df79b3d7d325b05585736ca1b274f001730e15469089ffb41490d39e646cda24f60a02610aef385f79a145d9c6e49ec85417cc747a4389c7e3a2b0d665670a377c3162bc0aa3f1cac7582797d27fd8d6b397ec3ed0a9494ad62d73de7589b8cda8508278b7ef25dc5dbf661d31bea2d237192be0d34537f2caf3ded67f3c2a7932c15f31b4fdd98cced903ed1aadf27fd5b95efeefb7932788b54baf0c8d859ead436f5fdf1405c6287f582caa10cd9043f43d8678216137a054a9f865df999c38feab4e50c619bab022046033842d8f0ee3c0717bd4de492bb7ab8ba671904387ad9f1beb019d5366d19494f57b6a580ea963de19a3fc854cef80fb62fc8e2a594725abccb6feaa6de6790d8fad538286191982c6e314094d0d0381d59004ae588475c3f55723ffccb8fed9be64beb9d5ce9f07181dd17ad66bc6e7c4eb86f161f7b3a81f9dfdc2ad8f69171fa4febac143cf3bfd6db73c212c0af27e00b2c01bd55a809750b4881b02ca3cdd726cb00ed716177ae5b71a32a84f42fe6d1b0fb5b5fd6a87b88cc1c5df024f74da00301a35f94769a729491fd54446d4ab0c4cd0bc6a1acd07eb0e7435f639c431719e3d487c2a6422a0241864e1a583d6d05ee6c93ca3325aaf1566a3f80dac3b46315ec09ae2442a9670d31c81d711903c996424c5ee15f5a16d8dd46b4039db3fb4525f3cc2561b6529c110fb33eda54b33f48220326ae9958692aaba5048f8c81499f3b8a6b3523ee6c958f42a36ca18fa6b2e67aea6a8f3ba7ea4f9b91b6232691a6d25cc104a25924116c43dfd0b29b0b7db50cc96fb68e77d8f0bc9a4d36a585c6f1d3a668476aeb8fb28f296b55a8ac50d0560572d719fb7ab1a286d55504d9d309eac7c039c4bb465d9e6c94801cf96ada5da1169074753603a1d0ea19379112bdc3736712158b977c1aa7f3256ce27f2d76c85cdee9e2264b0b4f7f410f1017709dd3a0cb26fbe2a7610e2415a93124d392cbb302c709e45d9d6cf6b8b77173341f8e492d5200329b546339304fda2d08542d0855c621bf36739287ad0ce7fdebffc1e4d3b46a38e2257043095615bcb7388f1b483d813b62e6d40877433ee9355973714f7bc9528aeb891f813f7db3635b950cf77cae5a72ac828909d199592c528afbed0a88df6f9632d2a05594267684fac6ac9f7a740a0339f5c906cf2d4c9e2e6efef9a1afa6a4b3772b86aee2719a155ec8d0c1b8abb1e1e79f552e4a77110021a2f85999d6511d7d064c7e3db4fb3000c142922f51b981921daa9374956a8efcd966612a85d28a7666da9036f1c98c7609a2056be0972ba5b07f465aa31996eb6631aab9e26be513b9bb3eb8d0d8e0ad63572e3f3e2c2dc820bbf501ee3f4991735fe9fcbeae8dac2e3b25ebdfeb9bbb0b07d3ef4f24db54d8ecdd229c0e8ea9e3fd5427127e1ee3fd33276bbe776aaad4d8ac394c6f3ea635c919aecbe66b147e03e97564a46b614df2887ec45bd281232f9515e5fe707dbadd57b3ab4ae127422469e7c2ca15316736c3a444cdb1f8aac796aad64eba938a00b3117a44e3909cf64efdd65873ae637c03ba4b809e3eff98f7c9bde662084671841a187b587337392e55ed7e53169e13d6e792fc972370b04996588b2e17e6dd6a7ab8c7055ea0e1ae9b0758037ba7f3670da70a38dee0e18e7202c6d2a98ba0d74fdc8bd39108ed0c67672022326a45eccff4b4b67b7827a1a05b99aa61e11c60ac51e85f455de268a34875cd81596ea05754214941d740e6a028020a31291697477147f8dc0132bbfc3c3a9d31516fb2342c68fb8d40b9defcfdb963649ed8e910f36c1a448d8ba1b29d7d1e39d4537bda7e9609055a41ba0d208d98740710bef375397c097f441ba78861a50f7d87b61042c27f3d1af0a2ee0cdb085e8c61d270c593540207c56b0b5518747628b81dcc94027805b717f432db104a2e77389758a92067147401712423c49367b946cd160ca9ed421b732ca67781944800d4b4819df504df737d2c8298f83d9af0eb0f9451ffd76bbeda8d14b3de196cb98564263f0b8574d760da875aadb935b24142dd5f542127f3348d8d6efdde3a0f452805a0b6efc593047d3d5c90951b45efb5f8d57027bb46e13e1cb4ce031a868403ac76e06194dc5fb3f500fe4946e1bb112db6f5c22d3d663e7e3f4da4f028d3988a2308b2b9aaec12806d08149b2a741497c227a88738cd181e4b0b0ca2adbd4c99919dde46bc1b08003b886767bbd83f717f1945f91bd3d21f3fd31300331dc6c4619b9b2a7eb64b81786b54d2627df154f4f47456a56e52272cca499472879ab9337aed9de4bd88f9c5453f3cbc3b37225391046ce55fca4c0456b22af22b63cba13bc86eece5fa9c48428a686acfce1d9754a1d076dc1c773655b2b7a28d9f25ef8750308724b3dc82fef802ce719420fe6ac1eb65c1e77384f008b65e5491cb05db6684b63e22be68404703e90face084e4c459ba4944a489eb26c587ab707d3c60beed63b1b1c66ee3634e5ec0bbd438cd2248eafadec7df3894f2f5be11639eee2632ce225fb1efce56d0c9f820712e69fed941ddb7e91dcde5e299e7023abebfeef2ed6e53c8f4f9cc0c02ec46b86b75531e682bdbbb934bd0a8b08ea7f9fc874071c32c8fea4047322a78010692b761d0c0f3406a26352e0528196b2ed1ed37bdba38a27fc9561ed2d1ede06c28e6f4079bef8bc31f1baac917d24a8755f56b3b07f049631c68f822d3f3d51130e95cb9169aed0307e81f2c2b63afe9fc88ffdd8ad2872bdb371517fbf06bdc7a40cf35a9e6b9a6b82501be09beafa38fe7a6cd521b3f574b11313af136f7d4a03dc35bcf83e511f0446f9d5f253a604b2a5fc3ef49cdf793b895803ecf1882e678e38f6ea382b5a471ab65fa4f502f6c52537b5b68d7715cd9eb2f1f524f65bdf6cfb2af280f3eddcf08cec0d81a6155f03f7ca2b70e0652dfce361c0bb3bb255fe555d90342945cc6a17e4238716af82d4cf613cbb311a9226214bfc06ddb36729c54e9ddf7fad0b546ef5321fda9f5a165b6468570c9ea2819a01cc5e4a7087a4345d8bcf0e36fd584ad94db526bdee43cfd20c32a2fe9ca730ab8f47d0af32c05ac5e344eaac9fb4d483429f91dbfdcf350f25bab98e10370ad89ead5b9b871e80947e6991219ab19388fe117962be06c31cea055f167eebf6c75a5182ff73743882a9a22a8d11357a5383b5f7116ad8bff9b4f1c5e801cddcf4ecb39cf665ac3c129635104b449a25f1ed0109b8c03a62717dbd0b16e49e1e4c72420c06d2d996740c9bb0b62ca8cc6c4c1f140611e0500ecb2d102b440de0ee0449bbb231473fabf287809db18bf0156bf0b156650a9056b6988bef438cd6537e3633d2ebf1d75aaa88908f4f13c46a7d26201035a58d5963ec5036fd640b6ff72ee8552c7833f9de6b94cf31cacae7aeef82fa4dfb3f80b43d28f3191e5c9ec9256cac4ebc6d4d42ccb8d1caad3194ecb7bc0d0a6202bc78b909e583e7ba30e7e3440b66ec420db883e6d162af3c6aed9cd78894c8374c33c36d67b4a015455d0a05b6ac3d580014b4198f7c5c41fdd00625decc32e36fc0348936acabf2050755f02a13e555dacce487eed8b4bbf4d37e931102f0b569d6238af0376b60c7000b04dc3c2db22fe5d9b0be1cdbcd4827482b9a3e83fc24ac1a15858e3051a4da31122012c6a94e8434c17b7c35d5a7f8bdecc124f03b5e4452cea5d241be95787c027a316c02509337e6267c139004a1beb91faa118a1e74e13a217fcab4e352c73f495b9d9f1cd8162f66c4de5211cdca6bc761ab8ce90b172e34859cabd55aca2b1f425aa1aa0a3ee71a5a8caab9399719b262b9043c955034dbfb4ac000dd4651367146bebf9d044301d9b3e20388d1e3f90b87f875dc312180c7d7f9e464661b132d3aaf786e53e29f8f9d5b7bc023245eb60085236fb5c7e9ed32c773bcbd5b8c4a33bea5683d63009d005b87d8fe645ee8f718bc4a0ab32b1905518f53a1f12699ff3e8fff4098f2245d9f550f9b14d650903602bb35e68d830e3447b072ece592d90840515fad2a94a1fef72df1df25e037e293d10a83f055a0c00dbb91804383e64781e105abb4f08afc5a33ce8eb4c56ef810f631c9cfeea49aab611f6419ef5efe060e411e520030f150f7a107b96d0a9c5029d93e9fe8deec9bfcc6a2c92f4ff93dfeaddc0dbdaaccdd3cc4b28539e42fa72056e6317fa7de81a7963d305a31563b2bcc2fb1535290714c733415c419e017a86894db4576a009b83aa5bd0cb2dae418cc392102d92e0f492d3d376c0820b8e9e0692d8bd0d9d80f89871f05cbea8e3705771161566af7684b7a863ea7a9639fd05beb2d1d5a52a89ed6d6594ceb93d3700f434485e7919aa48ee03c7ff8408daf3d3f4f2c7e7acc424ae496fe5eba0f98f777b16b6ea530dfb138ccadfbf1dc5b0140bb4b80dab35b02e5363e0620adff9cf537bae5c3fffebdbb8809cb4ab3ba0c4962ab40ee3b4cf1662bc7e0e92100a20d4d10d5ae10ff03752ccdf90e4babcaf090dad52dd83f5025995abc0ae03a26125de5da3494be89b80f79b629278d973060f9d870d123da7f4a8a921f97464690735ecaa9844101dc3fadcecf0b6e723fd7f5a9c381cf67872af5989f5573105b9f7a2d9105da2044928a336bf514ed67b95bb14edf0d8d8e28f74007d96b3fd499e9f7c8ac2d225aaa11af1a745c5e942d1b57e38443bc1c00da0513c67b1a38c7d590a7c8818c36d456c879df60d56baaa50fef5ea1da69d62b88cb4cbccd3a894c23569b3578a52f519278403e729a8adbb165de7ace5e14629026aa27be220d07a2f0692af87e6f7c1de947f720de0781bc4876517d1d4de3692ad38c44569b249f28a52109dfc2887e877f191d69a6481c029185292da3aee46e0ed612cae47545af0ab5c7d271f132cbad57c31310ae5904b8aa98388bb4de0c8c5b09ddd9901088ba9744c8e93a53d3fe59c3c8841fc56741428c82b6d959efb42afa19281df7521ba77168095d6af743fb004e6ed0a4aaa55e83edb1be06367e8afe99f00235d1e9272facf3a71d542a0a22a30f37fe9779b3400f8b16289a2cb51621c99a71b837455fb1f65e3cbe2ea1b8d926ce33799a54734cc7b0f027ff2224ceb8be65cb8de734c257dbee59adb334b2254ce0ddd6cdbb6dedb83de8b03451c0039908d821c17cc186586503323cb9b6641050e71691ad91415347e4c6d552bcd0f7bbc490ec6095e8898a9dc2ac77f9d6c04cff20e039d40b4ce4c8a5964433087fb05121e88e69356e61d7fc2c8d5a567a6988005d2db856422e68ab165461186f0a7a5244192c5bac8960065b291d105f026e69610b418e3442af27cfd263af1a117bdd68c7746017103ab14f912acb38f3227e04ff1c7812d7fa974f97a40cd34ed86848d7ca8fec1dfc91fff5a60410c3e235ca706f55590e91278775020c21125bf923e044a180122e55d2a3d81f5b1eff67ebc4291599ebf20a104815c86ea42c205bbe552c8802aa9ef98ec8746b390084b8c20700766a709fbb3b1416515cfd5fe27bee1a80d792cdc19536acc50ca0698618a78ff82b988cff9e8ee86544f93b6ec4df5bd3d56dcada402c4ad01d40ff8094dfde30d61f27199b78d3c80351ef0ef1479feb614130503fc6fab6feed596ee4c51a1b4d012c56ff19b18a150ec188f8abf00b64a5deebed9f238a833c5b01224409a23c7db0d3c23b0ac0de797ea2a93075fa0f47ebf61e63a366ead5a8f83d77255dab8ace8272e0aec2d36e02ff184b93623d9d42d0c1f6699cb3305565b0b5d4b57c0f90d1c48c3f5e1898f4d004102e65f79c20eac92eb38175bed9747a588870801de42897a651ab86381c29174977011729d25738afafb89f39877ba6398b015f9c618c206b05e00d930de36f4c112406adc085e2c50005685c9b7a7aafc7fb4a9d012e1cd381ef86c5647475ccc66a90ad921ff19a746e00f02e8e1aaa42c76be98e2b8cd3abe92045cb798e02798132be872e96fe0084544801986e7a61c3d921a204a8cc5cc867e07e30bb06722a5325ff87e7854b59133c1744ebbea13dedf46b825f30ea9712e93290d17bf8798b2547aba738480a3ec24b4b508684bdfba38e90af44a7093a4900e05f8d9f127802035f671f026667fc468e61be2aeab43ef7e4e0c778d7212ee769693f01f1f07ac0318443ce98226862a76171180fe101ea0abc7b57f1330caaa062696969e8509e0ce1bff6e68250947638ba2b610ba1861f3e304c9ae74023366111e8bce0f2c58a856d8e90fa9f9c1308c4dc6428538e090c285d4d86b2ed7a01d0d74f8f34023ff1b9fd2dfce348fa7b6c78c38c5b05d74be70fd6d542aed284c63ddf88e7ca8f1200ffe306ca4d0f6397db025cab1603764ebef7e7accee43d242ce3b1aa5f072d7bc6b463412d2f3768b696e9929758cb6e0d53f1b0c1a8a25243d5327062d0d1d35ef0be0353fe369b952560c3cc7e5f20d3bd5d555fd3bbca58b9cb3cbc99a72867ef30508f875038430cda19d947fb8e1f8463db62d66887da36332e9491ce55736313466b154595bde6abc8ea043b2fa358de54992082d45bb9f7ab7b51a37537b13b2236b10b4e83f4ee5f310e09837c1b3c5fa6e30387ef17cee206c80ad4271e7d0926a7fb4cba12836e7a3077c7b363922e06c5b4bf020dfb624a146947f1e09988ddd993d4976a6288df7ea841712c95d871a7d3184cb8166d8b0b495da7a0ee1b3bd0acea6c4daac5a2049ea6e238896c967e713c8721b6a5c468f4f29f0a383a4b5456a3e5f5a9e1f18add9d9526bad87ff0a8da0b9636ece38b63471cbfb08d7e004e2021239f005576197006166011c42362284f03c338cc518c704711d5448735e2e282eb8419c5b9a9a8dc7db8c8ccef395d13c2113a2b676a37b5356f7813908067efb974df9b931e21a7f8c29f76b0b41af1f597997fa28cf11bd41f0f6bbfbfd0bd3329b9dfa41d4eae5476d717d3cfdd84f0733538433cb0470ad9c1dc81b71f080dcebfc88e2ae21dca873e6041ed7691759ddba0a36301a6325eaf0bfc9c58a05eecc1288774c5025ade34691baa46408de8349e3008004c838ed57f6276bb70015f61067040daeaaab609cb0f95f6e4c8144d1ac10e512025e98195e5099647b6bcf5c01862a3642754b31fc9f579a0a38ad7f5f2e9c8c9fefd8341e42db8ad4a0cba4375a747ede0cc5eec78a150f0884722b80179dd08feadf857d515bcad4a8206513043813d6348f4b7840777ede485414010b396e9a685e16e8867ab91a3cbbdd176bca3ac84f6a43faba80c6800d4aea465eaf4a6cbdc62d456bf3424b49d6b229f67d2ae045ac0c3731a807199c6a40e8f726a2c8590418e63d4dc176055c1b6651bbd121a0e7393ecdef4159508d618d9eae7153b0d8e41ebbb09ff22c6a5d6bcbc5a4aa94973beef1dedf7debefb63192ffb1b67bfb83bf68af1052eec99b377c590d9e407bd089bc139485c0c98978508c8a340831dca46b15b52267cca9a8448c24878b096b1b786bba60f0458b64d2daec63baadaed4b387bf7c50226b67e7e8f5cea50c773d76f8c966bb1601245e54799d9ad9efcbe564acb20173e1fb7fb8a4d19492c480932b7e523b01afbafaaace640062e02620bd9cef018922b30e311305a611816e0a3a2c4f2a8c5638168ecaeb2a44bcb157b5cc3637a86bff25cfa0cc1ffe561e65aed53d74d34ecdaac604e4f52ccf3f45fea920d4bc946169005349ad3f6a02f55d1ba622b7a1b821380eb38160b1ce5f3e27911fef4113df7523ad8ce8904eea7d51e12ef295591d36ae74c27eead763d5b852cb5e55197d1aba481d8245adeb00d887e885989f5d8126522d4d76fc79c24866b6ddbba5c4a1632ce3a9d5baea902cebfa9f1764b2a65487f3bc4970d40c72058b144f58ac1e6cb79a1aa82bc11c7412aa7429b69efa09786ce0273bbc11c14ee2f6cde01d662e97954a2cf4253f7e3de9e766a34d5f6f6e1f777f0e2436a1674aaeb883267b3a89b55d806b0dd671ca16360a74758df808a0da798693586ae8941308b6717b0acfff47345b65230e574014b6482b882097ed0c992acaaa2929ea071740ea0f7dfdfbbc9b30c780376836e2615460e83d357169616daf25cb5fec15238683a712f7d1cb0bf0163b8cba696634a20eab9d64c8f9a9089d49707b9904ae981eea29b69d53baa72b01ee889864f41378e3a1f0de5e37376ddc1d49383a546ca0229819a0b651a0112c4817501584535dcce9e56727df9293e02a4cbcc4c617246d2e8dc5e089916225357fbd385f2ea04c24116de66535f4aab32e1055f41849a5e313ee88fb1bf5b31d8cfa2e1a388df376ab2031b485e7e639fd9156d9e884530ca6213ec9776a74155359a805a3202832bbee7ef4ad33ac95adb1527bbb0703545d180815d7c1350e104186692462dea3c6c9252691fa240ccf4f4f771eb710cecf6dd3eca6da864fdaa5bee61445e15f2c8f3836eb519d6b66664f614f7032e36f02840092ec5c70d0de26725a98d6dbab37118ee554c174deefff683fe326aee8d454b3d809b3200f2c9ac9631d41e600fd3c81cffb02cd44824939d2dd2d04da613762a9fe8ee755ccc60eb3c62ba9a946598f1f8fef71acae214064053e2d7cd97404ffaee183824b8b9a37d693217245664e7df291b208c83c2b971814d6fb1d1d71626d77ec58860682c704f006abd8288664695b239838ea305388605e08554a232aeaf47847829a14796a66b8b6f19ae998d1fcf22f13e86038a18a0a556aee43b27e671d2f4ab8e4f086a2a65b2d08863c18229e6df5f4a77b24a8e078d4c84d93ba1d85f59f4dbc02fe29db36183eba3cfad9a75fff7ce6673444339cf1db7da067521c15a13c6f983870f3c2a8dd735b83f32bd8c9366640163a403edf2ae67dba10507a9df2f139d581de24257a7c100715e4912e2d052e491f9834299385053d01872cfa3d0b7423bc543407d24e11e018b025e9cdc7006946215269627b5902ebdf062bc8bd3fdfef895fccb9100ed9423cbe2b7df24c9648a98e21402da9771557bb0c6efebf32b0a596d0d756e916fb8156d971a32dd24c0a3be12d9d3829796ce92877f032b4df0cb68212425d61008d305bb1c16886468c6dae5fac35fbda3def1309dfe2be1e43b106ad62d2f448bac30954e26b5b972125464717bd62ee7e3781c5f8b2d6a146203e150d94b0ed24f39bac8fac30e1171ef98ce332c0a4bdc91053d4f3d4c0ca957b4c51cf57e4b986a8d678a2358142f725d0ac36c909d07248630952583b062632ed60170fe6008f82c84e59b41712e31497197e670c9a96970c1a77419ecd071fe0b5dbd5848819b7317e2f4bb7e3fa1467b0ad1afa666d9e96618dddfd1f397c91338fd51ba86a2bd510a579b81cb712c2c5164389b546030199ec60236093b9a26442a73f39a1de6bc88cb3838891efb085b076aafdd21bf7119548ee0dc63ea1348bc2f74063d6bfc731cb1d876da28499f04199d9f905609ba2023593f2ac06414d38b82db2afb1bd6b258f28a938ae0a0a5eb8e0ff25ce209972381046b115bfb339ea8bfde3a153b3c8ad31edca12b9baf1e336102e99c53ecbb88895a1ea8bca338aeb4ba76222063f4feb7006726174481a5b92dedfdfcde71213ac49403323669775f8e36f280e38028e1a491a363197b1d16f4f17a87da67db6f7642dc2cd36eee94068932a48da2f4cec0cbfe6850254ab1ef887324b11b45a170e7bbd24219fdcdaa248ea3a96b98294ca245fab05ff17c2072afa06867f0d7bf270608e440f73dae309f1c430f970e540c84cfa09e2e524bca04dec22d6031d77acee054cf05f9d1af97a38b5714baa4c18ebe30ad93c2d765cc8df783fe3f79abe94844c5b32eade85dfd6439bdea27b1eec55477830ea0cd00a5be710e98924b064c39d513c2a2a450736d9cb340e1be1183be99ef30912be2cad41b4f9f85c291900faa7cee6e602d42082b73785bc39a0b3fc603c851b838e7fdd83195ff8483cd88bd4e5873a1fdefd64f92e8d5d6ff0bc624d3040ea2a94e931d8ea49d9461f64b3ff1da82e3af8c7409bb703eafafac46fc2c7d29788423482bd3b8b20a77f12842b96836b036d04a7d299985f93c1556169c1f359fecb0c290c3729db4f419d57759d1d277e95f44f4e099496f7ec670c8b344aef3d7775a7820fd434dbc2ff23319f95ba2b6c79f6a454876b6cc323bd1483ecc017a0b88737e325226e0ffc02584945cc7a4ee0c89869e773ba6a6d821fba8381870cb8529bf05b8f1f08bf48e28b0f83ec87c52e0db1b7b894b5de8fb4b1bbbb50f64e871f09e668ba8cc80c4f40d1037ef3d96a8c78bb5f0ef570dd8e7a0aba706aad5ace3eedcd9501a601b90833c7703be9554cd00dc7b531b714e5a75bcad2da6a89fdabead44fb83a7021f0c7f2ac2ff524bf9a5919b6b761ee24f645c9ed1330ccfe1dddeb8b9533cf84ce3951e0632bcd1f8cd7131e0edd4919d6699de9ae84e8c59f54e39e8476cc5390e4d7cd1fdb831c1e832704f8a0f051e315b19b64e6950a329e11dc1bf88ce492334a1bd29508b42f6352ef01eecb4f2dbae4b13480837c56118c3c2ff693b97e7e7ddab2a56513d00b6b3f043648775259e1a879cb2a8cd1005e87a35e24ecda4c631cce54f05c3b43e92cfe5471bf25150a142d48160dc7bd4ac9caa5b09862f48659a348b83a488f0a02a550dd2818e32f698c36a388c53fa4b26a97f942df896501218edb6cb4cdd5fc7af5d91d24ada8ec284811466f4dfc8b70417539266f5a5dc3b356373eddbfc5756a9dcf944245ea4c69ef060c1621de1017dd939a45646fc1a9a814b5d47473c34a253805fe62e4903e2a78c091c4083a2dd7325dff742dea180496162e446f87db47331e9375debbae6b573dfbd5d40f147f4b0d3b07acfb480c1b3275bf0ae5363604becdb23891d043aa8d79abb282a2a09b2e1f4ab9891b053c94bdd6d0a4b71580e790afd2aa1136598b7e35c80c91eb3e30d1c020bd545f2274f05ccf9905e9a12c966c585d943a1d20fdb6a879558c0d5ccb6cc47019067c31fe83040e4aa858738a582c449cb995ef6a10a7e5d707597d366293d395849017e51a9acc1372325ebdcc630cf3cd3524eab9f15ec6b1bc6943ba3344c01210393508f7ec8de7c97d9745b42b601696f50d0627ee5e77836210430bdb5346997bef6ae7169eb99cd05830465216c8f30884a2e94c840254cd822c18ab2dd348ce7c80a7746ac0b8d3ebfe5ae72f65cbf5a018737e85dc93ad773d21a945fadf9cb8dceff6520a47cfa81f708fc48f34043c57de857e3d6b184d1d10b315f8202aa1499605cebc0952b3446d81c8be2d23de48cfdf1c840cb37b91b8a8d08078da8dc5ccadce6b710c7c06d3eece82648ee3b32d83158cb58f1f4cea50af051957bcf8b8e25a83df4637d57359e69ae53f87cdf98ce4313f2c087e817a796e108338785febed0981dd3def3d237529a5c26688a249095d4806af48233ce04d6934ded25dbfa66660427b5de1d85c591cd9e41d6cb4b685111302fea9ae15ff2253e1e624162ecab002be0f8424ab4e9355bc11d6050705b38cc6184409a19c60ce4f93f20d11b82a60c86c059c779eff222f55ca6bae90069c60e58a26be1a79a8ac3ef537837109641f2e0abc70e5be76f81e308fa83ac194e3d8954d6d2eeacfa1fb0b4d069badf42969a364466504616694ef8fd469ba5606388f0a6436f45623a3a4af6b9ff4020f95f2fdb1fcb5b15b42972ba78ec4d9a412e8cb8d433bbf39b198614e9cc21cf0117e0c599298eb93399f10ffd8ee0b6cebc150d92603c0d6ca468bb3060823532530b8fdc00870980c5f05d9faffddc607f22b91770497022a7ba28e12e69a8515cdd3b2366f057d4b12d5ea06efce26fa708b4f844d118097f0875d7067f000d9cb8eb985e0da4b6aa49408877ef8f33913a73507e8889215ee15764d6b3266d49c9d5d04b603955af640b6043a823210c77da5ffcfaf980a14faf34a0d61fffd54ff71307f1c318bd0c8f61e4059aaba3c92e13a175367236c06ba5025cbd12094e749da113b9534f17c620f65abc5438a858a820da4ab381a0c9cc89b45814f9df223318713f0249a289b4ce1377600cd23ce5f42fa00e8932d8e002857d423313b6a05ca95ce003ef807ad4c02feeca42e2f788ce9ea9301f9bc8627d5242467ec1723666232bc206be8e223e70805a06b691d1462c1c4e765c641e0f1e726987aee155a5da62c67f3670918e96125ec110e557c5cbe2fa026284b1a00265c0177945372c348c733d65cee940222fbe7a9bf57c930f4814221218c8aaae6e1f855fcc186725a96f2bf477fdda036318452e113ae077a9559bf6cfdd5ef5b9ab1ead7e8738ea3d8d2aa86dd4e4c0796e82dded86100b350a9e8c8520c5210941b0e871c421409c9dd9d5cc22bfae4b4f6975036df44008e60564a5ca576755ac1f7d763ab5002f4fafca4a9cb09d313db15fede0b3d989a954f3617b9b9954bc975ddb13e32de5f9245a92099ffb6c2620ce61c31d810f7d0703a207ced524ee93396a1cee7dea15fce647c94f910cb4c147fd7cee063c255ef1843fb90c3766f55f36b146e0a0220ee174937770d588aa6fa84473d692554df98ca0909bfd9c3520309a7592cec63897266ecf772f76fe6f39803c88d5505c7f0fa23babce2eeec14dd73b818f617968c28e3b8206711239ea0ca1082b999d5ecc82d6e575ce6ed1b853d00e28ead70503bcb7db2ff94b5bf5d4c74f1cbe6eb2f24c41c5ab9d26400da7545109941f9b66cde1a7c1ad7ae397d792dcb99ef40518814060bf538f859ec625bcbc5c374b75ee1ee70094976fc8439e530af043ddc797c4b48b427a271690fb7d4481394ae9edbcbab8a656f944b5351e339cc7000bc9d408a5a3cebbf86c2542154b82f03e1a5f75986a72ac14ccff12bc558084ada46a695cb9d3310447fc7605e5fac72d7e9db45098e502e2d212dedf6d1405cd08e14191059ad4c806dd3cbf7026b5f8fa58745ddc7f1e058b8c8b3165cfd33bab172b248b7e37f0c09bdfc2e1d3419ebf1752cebc236692c8171cae9266b4029696dd982f35c7bf31d16dce87b937b91f7b25ea5e45d62b5c26f628402cdddbb482af9ed24313250647febf6c2f10fc76700b7c8af79f00a78911c836eed8a1ce50fba0a8547e5c6f848362bd5e1a62493642ad2c00ecba917cf3da1f20d151b132e8d443db21eae99e84c0127724e694eb5419a4ad3cdf0e2cb81e02dea78bbdbda85c733c3f1de823c6498fe25e86b859a94daf4346d3b8376e21c3ecb1964f78ac29b1d24998b22667f085d52ce1fcf0676d304aebf40a17a4b4a043acd25e9dabc664a87df440c04c45e1692040bdb00e54f7acc1150c18f4c228435ed3947d87675235f3c80040d0b41da8346ebf2a3a91be322aa06a02fde26829d9fd3d3ae3cba9536f9d1b8b4887cd482e4d02b4e5c7b3513aaf6c70d5ae16fdd4eddef4c1362f39e23a856157263abf6fa12aedf0fc13e638630d63c43ef655519d9b3cb10878afdfeef9fe57c1d9fef35f0e131044c1b3d016764fabc2d9ce073e61d31472c857002329730278c13faf547046fb74bf63a722ad7a6774424052963869d9c93db7477a4b3625ab42e5b01cde05fd6c9c8c74a911b2a2703121460576bcb9e849d2707fe41a47e33830bb35af5fc3731096131d0899bf0b81004c3343efa791907e4155e8668dc56fd21c44a69967f1a31657afff25adb450a538d0017468af6e79fa397a3e6bf14fb6e02366efc2d558d3716eb2f8444441521eb67b1faa08c9dce443a4b8890a23098c72c80bf9c6c12c31a6ee9ed98e843a8f3d37e27cfbb34a9d67b591d377c2708930ca003fb76b44d19e3f245b451b17a6ca2286f10ee501a5bb3b62e13338f7e3b69662616b18c6b8ec5230dde9d7f2b6837409b4f8d5fe9920f1ce1113a17cdedb50c4f00bdeea6f94a315b04617e017048998b264947087f52395b13a05724ca7359a463f8c4e109b1414f34895925096798de9e4e42cee0015f2bd83687de2fb12fcae76cc99cad62dde05c57bee9ba2cd7faa2f1f89aafc169ef119d7cdbe23347c458317edf25697a40bb001abf562a68836ba9c0bce2a86ee432f247ef96919033d15c67d73dd331a92104c043ea8332010428bfb1d97c7e5281a5e4a188d06c513adaca98aab0dfb387e5ea1dff1ca58f30810fca05cb337d8f05d80806ebe1409f8abff852860cb1eb098657b134a57f2b37825a41556d62191868cd263113780c479a837f1d3ffc158d6d42237de29672dd8eb5a387f6e7f24675f307d64ff4bdaba02d9aba49c099586c534050fe0e59cbdc0d6f3ab5bd9bbec61a9e52c8bc60582f18b2a5b0981fa2cb0e23fe862769641e094745f2dae70229cc9051fd14535a520e44b622fdf568f09db87677ebdf49c7dadfbe660908683a1bdd285c4b482fa12d9c8bb9e30182207eb2ddd310b3d76772f9020316bb507a022465461d8611c269dd21248b2a06c9db2d0d6dae5cd5d3cd3648d4927ed0aab8b8b9359dd2872754d58a2056adccd6b1dcb45c3a71da4a2069e5883d4ced8a90ddeab96501535196fd45874de23060fea1c4dadf593ceba305638080d83d065e303fb76f2cbc3eb8cf5ab19b4b9c94dad94e285e0ad052491a934a49e3adf897be7151c9b06b4e71e6907944655af5881ffba7218a76fe0641f932a97c8ab2e95a483ec39ffbc4ff0c36c878427199a340e5133aa51c7bd146bdb628d36bbfd8763d734ae3ad6184e7d32f3c41713614ae45e5408d108b7648550ef89a08b394a327a15ccaeebd09879500595c41341d0477f34da160cef94429cb665e8a1633e04342da0d7a308fbfe8557aaba5e120fc13708254e594ea29ab6726a672c6fe734ff1004a7f70553910d1429b37cf16fded01c932396b9980006702e6020addbb0739cd5b7cf82c7ec10fa29a211c1dc86f735d33a695db083510c93b4023b039f2b7f6dbe63bd026148f42cf087e561cd5e879e7fff42287b8a4b5e3be88c958207956e782c185992619cb3c95b31a645c34fd038bdd0ffe8b5554bb9abedff37432b3b41a726b08804c49b4f73a04e10c40ffc6f37d857951085202f8cb1497ecc28632d4c1f488b28172a939de1744be49e780948a7db51d8c7acf1e001f2a07ba0511bac03e87d60e0e2a143835874bde02cf0dbbc93561bcbdf143de4506afa0afb83110a64c8e3df8408a38c53892a24f8049c87f068d6ef7696e9af32ffc95488aa633b821b5d8a9634584ea71820a3e6dab7a22ebd11f94bb53cd94c89c7dc31c06915eba14a93571fa281d508fd193f548b48c2486012b41741946c88ef89573db32a0861656e4fc943a2e57ad4d720b636babe6f78bee1c7c3e8fc01878a4d6cae254e212037b8db5887d3e42c526017ab9c9be49ddf07004f6b9bdcbf64a401b0f0850d4bbb8b987edff878f5a5637c201e41d586914a6e722a4c98615e5a17b0d4d37a3e209108855e9fb7c8b0c32eaf62d7e0bad3865e6c7368eafc433c96182be982bb4fa10d4168ba62e7b0c8bcb80682cab741fccd0f7b80ecc99260d17f3110d0e4323f14ee4c104ea06f8c370711e632459b4af1b761263f2eb985b7a6e885f753be55e97900261b99b43775e0199ea6bb1014ce47bca2cd7934debde257d372a4c6e5367ab506543e5ba37026d43985376bd77cdd8acb3120d54a729b0cf562fcec14d168cde9b15f812e2adbf7051e1f724fb50281f31b89ee951b98906a5fc09ba6c78009b3b418221aa241c82e03d3ea326842d3da8e4765396859dcd02682ba6eb34b31c1ab9d97c753a8f62a4dcd4f509df1665d503fbf945b9e057af3a29b8f6fb89c1bec17df4a106e03fe2a9b9b6188fd5e74379fda49f63e3b3ea280e68988973103dfa1c0f578b086e74dd1f204593e452de83de7ae7fe443bb388a36d2e32ffee1a885fe8422bf3a46b0a60b3caad76c3dcd4e714e1554ae5cc60e5ca9dc30043b89091f9d0bd3dade020f9c0b03632367170181516ad0b7afe77f74c0ff1ba25b540ad549553ef38f7d3538b6708ad76b1f1d7bfba57939caecf2bd9f8c61067ace38b89635870b4d7cb27c12c646ada90e6b072ecf0542ac2e97f244bf96636912926c6dc23ec7ddc705c0939b74fd0db3e6f78ab2de5bed5a728625637b92b33dac6fbae831d9a8a53f05e65115043606e9cc1c103f5cb100700e3722e26095962c18e5ad74ac58372c8e1299a63129e838d69b120f1adb1901db7d2a3df919e08705760839b544433b301525dca6a855e70b1fa2fa9f20ceb18dc06977962cd8a59a3044dfcd82f1bbb70e81b5ad96fda4b4e6292a6b36de5b22595d37a30dee1773464f9ddde9939503dd80b3ba4621edb35fc0a1e857e39d59b619ca8c043dfb5305def6b97b6bb1d6cd52b6368282c1dfe57859df4869101e499b753e166497702135537c0375f861ada615caf76542036649fe48222999e0083ab5f49e1d993f3cd21107d0fbf5fea067dda24862a587d2312d078f21eaa8c904f574cb375c330057415d0f4a0c81ea11338ac6058d96432a88aa0637e5c9d103a20eed61b58cedca22e863927f8dc53eb312c876bcf279f8906e04295cd6bdb754b4c09e6e4f4c41048f112a757d00962e669e1a1d2eb9754667d3502aa205673d75824912823d3ae3869b027546abd299c95a7fb129cc412b431e06da8df1e398605f3c4a6bbdee9fcc277ea5d0d83a6ac801297923f25a708faba426af4a255ed8d123858a2998045e44ade9ff96ad60f59777860bd7a22f23c633940977e9f9b13a61e2db4d20f79bda2e54ddbf3ed661bc0237e34ce583cb1c297b59d605c32d6187891c90f412cbe3838f5ceeaa1a3a64bd9fa78d8954c5218db06d58a859e897fc1a37c701ae9004a678b3ebb3e2d5eefe31e484b048e8616692eaaa05c1e11958dadb6cc7ffd5042f8901939eba0cac6174c1df86ba7b673021526d2217b1161152458db0967279258dbcdaea8e1e935ffa884a895700be67e6961611c8821589f03c58825d7fc02b417cd99798e6d261b6da07487e7881aeee64e39b983c302fa82467ff1808094b88d6f989f8245a23b4f69e78b16430585c9878222bc2c4dca5199a5e9c3c5ae007d7be2eaa0e3a1df227d857e6c8619490dc550bde0b24ef2f2f231c3b4e7fefa85379c8d21a009f721a71ee0628849666521f4084df6c0a96f6b75d9027fc1e14575ccfad7ee1dea35af1a6cc073d6d6f099551d1a71ad0ac4fdb81de7ec10203efc6b7713ff508fd8b35b8b143c0be28844880e30f4614125b48e9c264dd09d323b9cac94df4fad8cd3eda302cc24082935add470dafc7ab47afe5bab7f317088642446f3cac324d094f293827b3393c03624f740198068c0ab23b48b571f781b257cc10e019e5c6f39a834bd5dc017ad32b20d90e526c45b7d4c109bc5492b44de5142add6a6cddcd27cbd6674e72c8a557a805409a7f4fc064c83a3a57a9d7e9627ef6e38fd2f3b1004296610d00e76a72bf07d3a7b597371e384709e3b7d3ae1f73f556a98761c22ca436226c9ad9922b3ff58ee49392944d408f03a1db3d91a26a92a1988a674fdb358607dd83d6eac98762786ad3a4aef03f9e94c69d6bfda01530d0f2e8454f1a6a38fc586c90c67ceb15decb9cdda111d9e3a6047f7cb0efe23f847a65995b59a4958dace4a9e34b825121f97ce877f92b2c489693ba5190a811d0ded6f9ac2498565bc4d095b50e89cda2aade19a38d5805ca60d249861d62aa20a878dea90c68faeae3b81d40a404c4ebaaf285a16fa60063e52530c05cce385d8974bca4fb4a855ea29bbb5da03921e2596385f02a112f3b7b8652938e732b674ac2fc8946743e201f605175dc6abd98ce5cb8e52ec1d8cf7818b769c6dc323e3d7c8b57b91525adefb1f99bcb79a81498ccd100b922d15465f62cd358d1d731b881931e6b9219e7cedc0496e25edf15a36fe9f0c15b487d423b7108e114ce440ddc0a0d2fe8835ffeaea266e56d52f902e8f9bf136b939b78ef900f25405b6740257cd294b1772d0a68d36508e6aefa0ffed9310e9b23852add61e5bfadfb06cd90634218fe7fa2d43c8171353ed4a7b70ec8855cc68389ded8a0f4f8e7a08eae0268cae3608156f38523b7d0e2622561aa3d51ddaea54a297b49ddf7c5ed5610b37cc8cd5244d13d1f1bc93fd02a22921033c9f8950e8ae893ac464b1dc566bd6b3043520639c27359b2380e025f3b4a7fa91d8af86fb49011a58ab9f16583b84b8c070cb95c222089a0c2dd637ccc9462ebb5f2b4243c7f534b0fb5bd200214c39347d9a0dc40f24cfbb7533e833c3be9579665ee0e9aab80ae06be379213c2d28c6767f69eb27b6b7f1308d7624dae69fcc989f4ef95ae1a179f39e904006bf0c9581ece3332151c37cae72bdfef57f975f28cdadff9a5fa01f85cab6a2045bb2feeceacf641116fa433085c8b3660cb34a4a3a2bfd1bb739f9ff694f5e6cc0a1c15598335c51cbc124f07588df8fa3cec5756606b81f0325b6b17b1783bd318fa4aec551bff5560b319e045f7328200423ca6b925435fd4139b9993b69aacf6d68ab48595f113079b1a2386089925ae5fdf2d6b150a8ac5309780fca9bf985c36da11f9a4b5eee34aa5593e487f5ca2514f87d5016b8c8f79d49cbc5a8e63a6c34d674012503567f7ccf362372f3338b54ec05afe720c08dce7ab442efc340e7517c5833f1a537adbe74d5e276d5040434884ad0081e942fa930bd1e4cf22c05ccd1fedd81e9e0ba4a89ee7447480fd622ca1cc5dec08a4e12e59b0a93ef7c43e7150e2670ef324bfb76b7f9667bf7548e4da08bd497cac114e1003f8bd9cded5fe0a2e476fc39f1e0a4fd5ae7a92883052fc5ee9c7c4ea6f47f29537b2a5cc8cfc2369dbc75878984b817fb11aed3059e46bd71b395f761ffb60853fbb2c4cc8f6a3acbd3f4c5796c230d3e4d8f76d7992af17fb28293ea9a01e26f535de994a9c5ca478322db7e5123d977f752637deb2d0ab58055c0993ddf28ceb3d523f0d61b708948200eb919a459174b450c563d56f658967088e4e6036c9fb44290f29012860bb4530dc63cace0eb70ed03baf75212192a53394a8b625ae0589f815a6df579290f1e2c5578b67069bdbaefbe0492ad9269db2f582885f27e39c62d6c5c88e8a1b7ace09e39975724f6a60877d7b1b06db23019c33e98955b19beaa3205e6306ced560546a2df9b4fb45b171b6c92f9e7b164ac0880d20891934e7c8a99b7b7ed2c00606fa32873526e65467d750bf07b2b4c5bc39a0576f078c025c83a437f9daad24f7f4f5eb5b4547849007bc1146ac7d3f73d35b55b65b754495f60ec7fabbbfaba140ba6260e81a9526af3059cccb7ace5475d41d92d69d168c8f042ea18ab4792c65f77c3ada4c049abb944cb8f37a1919f37e68a63f2ce7750452c07a07d9ee67d6b11844ccd76c6793bae43d04672d2aa7cde38ffed99614e67465b9ee958e5215cd353630b951a4e1ec1543e606f647513e925e5e7348b9e22e602957039f5fef94ee99c96a1669451546f4d2fa04d756fb8b18906a569023045307a0b358df047118778b2867368bc47e689d4f82da32d94d93b8233ead69d5dd1267ca5def8035678a946ecb24d200d939e39320be73ced0ab03d1e274dfe7102597fa5fee2791c8c24590d55cba046661e6d7113a51537b3cec707f6f4f68ee80e5ab17299b0ab74fabb623dba5e9fc1d25ccb95cd853fa9ad013627853125ad6f6f8bd1de4cc900009010fd1a46b4baa58817d5b5770abce46e8ffb541de8f060b6eab5a9b6e3ab3e9ec464fcc5db6fea4ffdab4fcc2d8e151f5bad1897b41ad1576b1f00c8608be51860fd409172007325e576832822c3815dbd01a7a9e77a17cf19f69999dedcb3cfed210a67466a7710254817a2e71b96ea92d737ab2892894dff51dff88ff39175310766f73052c836c4b374d66fa8dace0db90067082e13b8c153ac3873ea917a7e654a932abd2e21aaa36132f59723f0246e4749a90bfc8b1e822e2f47d5e0cb3408cc1b8dd6f3a38bd6c032009d1b0e2ad651bc973f61f9222990ab11f8ab7de71815e730cd99be743ebe052740542ad7585da06cb7ce6a82c455722aea6934e6401f480b55f57027072f8ef84a143249f28273479c3e6fa486e9b7c732b23f946ddb28f05a4dc1d7afa9470437c1d1f9a994a21ca1fac1918e290e8d4dafebed05f54fe3a443e9599bcc352e4e9a0a24a9dec27dfa25730f90be0d51655c52dff87425001140da3c49dde7a4d4cfccd0142a5569e45c17fe6e261302d505dd8de1eaaa456b57b2a72ac5af6a2abe06a95fd43c509a824fa0e38008de1f291618e58f9d528de91cc9fa92f0281a14048685a293ec22aebbf7f95f77e73741d2b649f7c3adf21cd0a88d53086db2686548465a3496d479f2bfbe593ea8f951912ff6f4b3acde6c72a034fa917ade11d5558d406b3eba1d8087acd3112a31bebadcf06dbc103fd3a5ca03796bb134405b268c578feb489ab9c8e3720b212bdfbcb3f35df6804567a5a7b35854e292447f591aa79ed4a044381425f4da2f406c6746a28b862b4213f9c68d837c1056b572724b8fd6bfb4c85fc8754b107c79ecc2687842477da08981815a0db5e54c0af7718b592882fb6f99dd1ace304b5f4fb9095faaed03516d3109c43268490ee92c43edd71e45331ab0c8259ee022b71eac36b7882cc3eea7462e18ea6630991f4b6175bd954ff6820d83417fb040f64bc18b43b06f815a6d584a1d8636ed69c7cef89bdc0a8f5d11e3daa705b185944012e5ab96c2669fb853db4ab24676296dfa483ceb4dd2ed3a6792ecfd8d1f08b02a86b122f11ab7ecb56d7e6e94382fa4eb6eecdeb815d1ee5675751e3f755a5c0f67b28b9e391c779ea92dc15c7a29ab169b6a3a5efaa0461bfa585c541760b0df172a03e752723f120ba9a778181e776540ae8b50baf3059a8acd8349c0a25b7320b93ed957312cfeb34448184781c733842570af9675be86f4d17ae5ef8366f811a1ddd7bff510ce7fc3169d5e9dd3c1ec30f7a1d6d45374b0aae61b30f732dbc87979f0e30e6f4b6dad5b5577c8c1620bbf5aa02621614d67aba3a9b6659933dfd970bd781d721ece2642e9ec0e3e093baf175b592415acc5fa568d7d639dfbdebad8c45d4135c07a92a3d1ef9769a99558753fe54a129314bff85bbc250a2451613dd8482ba37b38eedb4548bf52b67de85616d840c91beb0f3276438465fec34c6cd7c9d6d92f56e0d9d9a1147c7dd885a11e6c08e07f21756a93d2c3af60aa6a56ab58d23b14f2b9cbda673a3e91e221374719d1db2a8ded8f51c80e6e2dd8a679eed39d5ffc1e5de6f922c1f500acbe90b4e3a90a97d1f88d810b36306d57f1647060bb9f4bf87cae28451ca47affe34d0513e192d8c33b887e3c36e6047d5db8dae550e023b38b01df92a0b4f3b48f81a0657be0a609981f4bef7415181c1f886fdb0f4de0ec60576b9828d0e9563a012422da685a81b804bc9270a8f6ea4ebe4471c6853e01313ed8f2fd9e9e0ea573b062b1a695f2515fd7fdc3afd88d6c48dfe427a73421b3b9f59bcd7d169f6e094c9284b883072989eabbe4f6bc108299098350b0cc2c51b0831268e762f5c8cd08e22fb6d5e031124873fc4a10cbeceb0f4040704a69aa7cc821f861582cd69218edeea12a2fc167937ee265c7cd2903ea208a3f8e30549d8e1d0b4cdaebadf9be062ba9e7bfd6048f824ed45cbdc9c8cc2629797ff367b194ab918426ca4a157fba866e1b58493a518ab8af5f406b2cd124337a312e02ec5d69c3d7e870053952c67d2185a3c7e4e110955de463b2aeeb7b7802a0523a763f2e9e9f01d82203bd88f679f0e9b6fe9ddabd97e8e1fc6a420cffa47c31a91c1c0f4e5e8884ee00952bab0b2345ba9e28c3d13d896612ce75fa181b12e17e354812fa6e5228d085cb0becea3ad5e4d15b715968fdea0bc84dabdb1ced5a7c9cffc2607c04b06d84efdf0a4b3a47ad8797dfac3b5b5f9c78d2ec284761a85c8c15d8cd03032cb3225c8bf668d0cc6c5137cc2a17d3d7a3844744fe8f357d0dc41d5e2de93cd10afaa2b14786cace2953c19fe350741986774130ca302353de358eff55a42aff2727deaaf9eacb728e8545ff4a82fb38bdd2eb5a39c7c036f93fc92767ecef22bd336a00584d5025e8dd486d9c8e348e6ecd6c70b0122e9904c992a7fd6be01a07d8c174e4d435098487fbf8e359b02e61dbb803226d13012659a405c2f34b6e4ed37dca2af8a7429e84218359873a12589b98ea36ef23353a31902e0d243dde4b70aa9918abd7f5f15b4733c7991fd012c284c6051a9743684eeb7ac129d24d647be5ddc4e2aeb79e2f343d7a9b614b7e63e84cdebb637a657d1496c3a1416dab4b420afeede95c14955c39df2a516592be9f10d5c4782d59b7411fc5e7198eaf60128b60a3981e59db8f91ccc6cd8aeb0d16fc6c02a8ea550ed859aba49b6f1c44d05f23f5b4c83532bf2d3b252fa264b9a5c7a8b7de22c29f0bdce3def9e142ed7d316fe0c38db1e28190b79354f1201313aea677cd4f517eede56c870a9657cb594fdca8e86d6c8a75454509f587781548ca1cb786ad3403752cf0e7b9d5fc5c3d8b649789f3be86416bbf30ce1be53bfc4b5cbc7b33728ed3cff10603effbe9e695c7a4dec6ffdd62d566ea3902abccf045ec81dd881c74c84bce0963d099f05eb0aec11d52dd8c94b49597b7c6ce2cb455491be9467bf519cfe7bbf434c88398488c5409dabb13db0119b0911df42bb5819c806715f75c738aeab8cd06fa9732f32f593c7ef167f8f288e46c67c856d7c617923cdf349e1fb05739b0d08f9baea7fefcf8bd61778f43f9691af21c806ef2a5644182e15bb0c812e586bd6dd025bc17d3762bd97358c8eaea92c68f9d74c08feb1393b1edaffdec7b404e2fc350560da3bb979c602b00bc69e0882c9f6d51735aa5dc6d081e4bf992ca12f6209fdb637c8394c838860a0316f5279d356b2fd1e2304b162a838975cfe82511f3bdf523b71da1dc94c29cccdd3573bf1018fbc05948c1ce0a98c0ac2e74e548ac0e537d5802cd00c7c73b55bbbddba1ec5d045e2e3484b2c6cb2755e9ea304eb477719911f4d43e37f5d2b6afff4b80f4571edeb73629afd49c54e96fbf62fa80af982478853b3c3c78c4090aedf677ff90dcbe7e9a262f004643dd9a647d96ceb3149114b8d1ab4f3e5cad9c31dabc38849060b5ce0aab89473eefedd35412d601c0cde60a35949de930b0e387ca284b75ae9eed7794071b83beefc552c7f9a8f34e26e721128da08a3a9465613e6530b97fcc57b1bfb6f9c4efa57bde659abcf7ad09db4acc434db028748358116d58871a563a965c68b2963e91ab2a67545e7a42fc3d3cd343440d7a40ea35654c1854bcf5d3ea2a026befa5c2f1227a87f6e41ed8dae0bd93e1bfd5ecc9f0e7912858f818554198d2d506f20e9ae889544ee6aa2df16948e4c65a65dcd78fbaaf8ca614ba8e31cb7cb681d8a5f4c646204eabb5650fe843f09dbe2833b059bd8568a7599c2b5d6b7fe6f6cad4f6f145f776306276d92e399533d8cff054c9bf829daa51e935242496fa186a97d1c8ed96c694fa0fd6c2f79c6ccb0b4497a4e4ee0080e314210513294a6a9e7fefecde4302de1bc97948d6c6314205237dc09fbd2726c833f3e804babad9ad483670b9c3f1745e15abb4fbabf25f1a77a15e8e8b39c497ecb28abccd9085e47fd57e900089ab5f8a8f844055a52f604dc1997103d6357eff20774606dd63c0ed640ce61427c90c5cad3e4af029a18105b9e9c52324d7c09f4a2771d3f15f1d30a1d22c785c56f2e7976cd7d6a4693c891b6a480e0aa7d28e0a0bf7469ccf6083ecbbcb6cc1f031fdb0e7744f304daa0eefcdb4d4c3390a401d5c33801fcaa61c5cfe44346ccb14f481ba2ec5ecefacea1c0d668019e7651c0d4c0ee22de61a4e9e93903597d05b7aae5ac313f124da044c13906f933597115e9837505e64a38a9595b7cd5366a12ff0d72655bc2e5ca5b464123b8e2385e3ec2a081f58d4684f2150c64d4489119b0ba81baf63b1eb623305930c8f5bb4497ff4e6c1fcb20b2b2cc22dd002f1ceac4fe8f9e9280b531ac8fa29c866e2039f65c76ed203c791236c4af41f0426e1cb64f8e66bf54884b4c42df072a9f6e95370d7aa22826002d53983441660e1dcc08a0a20c298a32e1634b691a0f4ebcc5ff78e93ee6673dbec69ffb34c09fefe169dfd59f2391ee0979b7cbcc44b3fb9f9bd562b4e124b54668af6c477629a9d012e70d6720c7e74dabd1c405014184d7023e34da546345f9169e9de3b5c859ed4600a45b9c8c733dd83d40669aba7431ac7ea95939f67340c6f9b767ee4e8d28c9292ba2dee6f0a951b0f91cf42af2cf4ec84bb24ec33d3910b3b2591c48cd062568aa36d52be6fea79063399f246e45010268f056937567ab17160cf13f6241a4845af3908d72d561c2143a743e56cd390fd9e27c6de16d398964c2e43c2334707962064980877f04627c867d249abe1fd8040793be9fa7ef4aef7957195f4376eb30bbfa14f1a3f914b0e9fbd6e76c5b22528b76e16ee3799e6f1e0c5615d3e844d947c20c1402b858e3b69d7dfd55181b7caa1c92b7f38d233449be0b2fc9ae3213a129638a060e254620ab1977de4074f99cfe67278502d3ecbe6941f11fd3a0a19f89af8c71b331fe183272e75b90b7f93a0f3f22fd61ef5feea8dd1846a28236ce6adceb5bd8974fd12466d1301db80feb6c2c6e67a412a20b7411b9b491928e94bd8a20f3ae34dfa5d5f67c5b85302416f00f1a3125b694bd877ae21b142b953ececf0e128e6dd805e6944052eb3922aeacf31cd43921658734a9863917de4f4214440d7413beb6438f7b0ed85c2b6c6a3c5174783d95474390d7cd13ea31465dc3b5def49083d17aea5e5c23a04213777c1bb20cf1e9d6c850f4a213b6150737bd9fa5d65d87734fac0faa941c1427130c99ce7ab32292c789fcad27f33730b57eb0b32ecf2eafbb422005bd2418aa5f08520e2e32fd89876c896ce75952778df7c3e0ff144d61b80b6fd7bcc92af309911adddd8d29263a07108bbca84e994d468de35f1926a20287debe35ed56c760e1610834943ddd5690b18c82d06cd0403569a002705b099907ecfddc32f206345867f15d282daffa6036f60ad930a2a069d413e4fab8bf1faf9fa01fdbdc5e376de7857fe1d70e98c1fa28fd276e23df951190f9f1168fd160b2f1ac751df9203dd1febdd781dac2bbd0a16cc18ca21e88451742ef23ea776e8616a315f1a75553236f6e4ccea32fdd0270459ff919b0f578040db73fbf0a8d1078f9351cdefc4f8dadde4f44569c502ab7c649c0529dc37e9fd84fddf8b18c81ae5a4f1e6076db30c427abf1869127084908372cc64553102fe0e5abffe450329b536c92cf40ec4c901692698c9df10594e73e356366bf7a88df58cd56283617d3f0f09a622add61cf36e7bbf73ea2fde635a6d38db3b60b640f9ffa8f301d5427b372e9aadacf0682414a096e4d84d699b3fc72d11503b76c6a38f1fbf005593e1fb285c62688fb5ce074fdd4d334965b6ea2c2967ea43c1f5849a1e2192c51574bf816505869f3a7a3d141fcbeaa574d4f5d5be1869d09ff248b671ea95e56bd4c4d2087213aaa04d0a176b65057143b30d862cf17b919000eb5312f9735c134faaaa9cd8278ac8eb59a2a242ffe4a636fa84dddd94bb24cdb9c638ecf9b197d9c91f096ce2fcf20cc6043cc441414686dda35e902bb85479de71b7cbd60fca91068dbd64f5f7443a1ee6accc46c3a4da1f8995234fd46d4e3cc29e74b379582fcef924f98cc8856b6abc6901a645d09705bd3319ff5eec512c81b4549cb235ab642c9db26ff87d6168d98f6e07f0a58191064e3e2b5f3745c6d8e82d4b92ee879a11681fbb3bb9b0bbaecb5c06014985e360415a5d4af84f86e2183ee230a2db66b347c49880b5f215b1bbc716ffcc2fe2e02c92f6fed4bc2fa5646222cf6923b08c931150824f5748728caff79286a3a420116308276eb09a5de67413f88d825567e31376ffac0f83e446d2d779cae9499107eeae80ec4d95bc244b11236fcaac421aeb7a6f7917947ee1a44c274027bc982ab5008d5cea3a5bdcf1b4354218f9ec8486a631b010ff78dd382a6ebbb941cccb45b322096b530207ee3bc429e62f720689ea06ff3f1d5f786cdb2072b5766e18a8d0eb37424ad23007db42080c4f8c666152721baffa5c566da9bcbc4d9534d44f859330e61f45fba9dd22a9875cb1ae54d0b2fc77a267fe77181065ca6e5313599181188715e53040056e660cfe6df8acab8dc3cf9f426da266472ae849f2e203443f9afc3ad9b0ad3b8238203ba61ee38389fc01648712c343c0d6dbe24af871cb9150abae48848ba8d3439a212a30212d316c3201d935c0bfe35a9a06d3bbc54b82eb3b6537c3a0bd8365d9caa0c2736946ec099636db8c0d8dc0e4e3d914d2f5b30b9109f4b482e59de95a6fc371f1d4edd604679f6e3a492abd6ebd205587d2634e5cb2e14e68ff07f1f236b6a2ac25bd049a7927d02636ac2414821a0ad0b03f14386831b17ff26beec0da46b1910cd9bd0c258ba3e12683aa8876b74b4163d25353356241b2e25726dc91f7ef073eb17cd3f0ffda8b62854f22891e6cd3f2aa613f93b7d74d209ab257225a4a85fa0b8cb048b52845a897a76d3e7809862387fbe5fcc969af1626bcccec3c0941bdb1ba439b26df1971956613540c1c95a03b6eacbc379f50e1cbd001e21fc0fbb22f83ae81bad084e5591c9ff2c4d15a06be6944ca544a013c0a9c3dffe04daf5202db2e8762891ab8187b646c840b7e65aec5d3b537c4a3002d3d0c2c947ec468cb0a661d4a82122035290e72876bdb0b8d202c80512cd7aee11693550905dff6effd12a32d4a15210b19fc441b210a23252e087ab746b76efc487fec1fc1507d4c79c44fbf7150f3a980257b2287ac42ac6c6243efb950ecf90ca8bd27689c2a532d09524bb6d43869b973282f5ed6012ab096631b095fcdc5cabf9ab8c7ff9978778e1ec38e4f32cafed598ea46a333fa1b1bf584da2b26fea2a59510b9c814fcb8bca842e1ac79424f5bd2a920baf8ad560f7d0b11c9cf08268a02617de96a7b3fe09b85fbd339f9ff1fb3b65017028e51ee4607c46fd47b96d97787cb5e26732410213dc41d140a974463db66c2618d94ff3f7db151795579e75a4fcdbf8082ee17405fdd8e7998952053280d59c4f523a08ee5252dbc200f5aeb8f007996bf788a92c6961fb7798e5ff9fb3860774e7dee23c15c846eb9bc99a662afc79a2bc1284e78b0003557cc710f2f992d86370401066dec3121769b125330132a6213d8a54cdd7365421ab1f7e8c099f86f80d7ce8e40dc743f074e351fbc01531692ee9afda0c75d811b8938cfb1256ed60770b333f6ec8293aa8981f18895fe92d8467aafc2fd31dfa74c48bec8e0c37b24f7838a1a9c0c6fb650470b7d6370ee6dbee4478aa419186412faab96e7940b94bef2f9c0c513742998cc3d4d91f0926decaa11ca296ad96472dbad9d10fad26f0474036599de4baf4e0de3037097adafb815348b30c12d2fe6fb2cf42e1cb4f22edbae0a23ce4bb98ca4144571a96b84de110fdb8e314a88328e702aa915ef932faf687a2c532654190c812f0f8b3f30de3e30b0adace3ee88d80fb030794a80aa3ec6159d578e2cfaaf15bf26625f39357a0698e2c7be68a9f849b70d52db130e4eda566a9730be15738e04e7634ba0d090fedb66309571f14546a9538b60add11d4f30a7527b75af1e0a60c2b819ba9ef5a49c8759426f7681aec27beee3914d645fc4cefc7cedb544987fd78568ec8599f6d64a0c59d5457a95d473e50b2963465eba0c7ff8983a83a6b8f60c46e13d701c551eef468e3efbe36b7fc789e77611ab4f8c4fb7d926b52696c21927aa056386aa61cf7b23e129aa11c0b612a59e5eb35f2ab65a9b43f3411b9e7322219059b3e157bbb4c568f195d02b6294d7aaad2a6ed83cb5baf56fac6b0d3e13ea478ce487bdf7bc744e586e25a2bdf1b2b9b1d0929f448776d4fe1cdded6e82d8ce3cfff18eddb3a8b5ee60cdf1d4f8a3075592e4029d843dca06d498028babbaa5f57ef9b207bb69b0f5dca7bb807daef3b9cbfb53488c8cc57d80aff1c1418380aed53f0b9caae19bf7c066ece871e8ddb183187d120f6e926edd2f11ab5e6323c937b760d0589bd012369cc4c35a174abf06114917def2f7f0c387f62e56a7db9e2a69d283da396b599f57a179f9656c36e2a2823c9440e6b90e4bbe7dc0b6e95852f39967be1000ab69fcb867fc4b94a6dd2ff8a24c0fda5e2b1969897f61c095609c8b87baf024ad3b855e163c9161824f131e890b6efa53ff9e0161c11fd899170b79909596203c653d67c98f15913ebb2bfe79ad2d88150f5df5fc28907d9b466a8f09d155ad6e874d59aa4decb477783cf58dff70802756fb51958a4efe9da0c54f3771a65f717b3e76c4a14bb4ddcd787b7a274bf3c8833d21a86fb0da75534d945089078893496c0effd804fdd91dc68b2d946c8538ee00bb1dad6b172b9afd18615c68f4c66d27b00aa561841fd2460a1cd4aef243f488801cff7724ad8256763f06218cf3126bf36c6ffe1a4a7007892251fae7744995f88de206c2c3b3cae1dc950a1a9a82d048cdf061e01eea7f5af6b679ed61f015a855212a679e5eba2723e9331651ab32a9246e98ac549505b53ba1bd77a5d17e9f47074bac23491468200cfb38fd4f722e4b7f506d04bf7b62f31e66102852b1064a073bbe6ef25c287bd9d9e7466748b3fa83ba5d7804a5af33ace29db044cee8a2a6f552d4af0ef375bfe737c9ca412c362f2f50c26546f2609f80f8cabe393a4ea5c646887f4e98ea43796ead1d383aa848208fa5eb13f3617dbb7982c7530c234e70db3ceaf5c8794d3bfcec581fb3f10cc54d91b33e8deb581edbce60b555f10d204bea9f79f759d3ca5a12261ecf418f3c9da508c5593d0366459b079d2bebe8a9523f268e3d96b3db84bbd4daa8b5929daabf5850eed94c7d3c4e4372417b557836741ae37bef80a003bc1a742ec55dd2fdd955bd74b6bf3079e91c2b20932fe293b279eaf64c6a3508c274f9bcae20baaae2c66e2bfcc9410c56dafd8b07f941125402eed342ed141e4966f29c2ca3d3eae527d171dea7b4a6914a345fc8843e4b8ebf2a0dbccdbb6da634e924a8ee78c675be7bc972e40e8b37abbe01e89638f3e98c6dd60d57aafe3c3af77ec0c18482d3342116b6087de17f92b8d09cfe709b78956961367614344cd22d79e39cb688c9efb9ba7cbb1bf1d7672576c73f258d56d973dbae071c20c0a279fb7fe329a980e4391479beb8fdd0b4a0577cf1a24c2fd99f3cd4091801c88f71e64ae07673df534ad7890838ff58a0bca41a3c9c5b60ec169fdb37ece69e8b2e48c7ba308bb235b9e0415cb30641e2570895b32765ab9e1cd8e7b22d63fbb10edfa03f33f41c28b56c9f817d000507bd3ae59de3b6b3b445c99cd4144d04eba0a3233c21ddf0bd729b0b2cf5b81f28a01a25cf8f73b6a1ce31d5bdc4b4252c4081db0a37a0ac1720b09621bb0cee803e2a00d00148b899ab99697c77bb2aea4cb21fbe57a4ae0df106fabd6f441025206c28c4477ac8cb88524a4f5917e52b07d94b8a89f758faf974d45a1673cc29fe608ce194ee2afd12803e03083bb80547f24b96fcc18fb2945fa26d1c26d7c7df2c2579e44c9000d08aff4d3ad102d8d3ceab052f6b4338ad212c3a17d915f5dceb64475d25d66505b11453d894bf22b6606d4619f3e47a17bc7a375cd5ba20b2d22349f4a532c8dfcaa227a92274a0c5ebeabe2b567919da226305dc8b34246a3012211f918c93057b85b6255eb9093700818b6e7bed6ae15c28c8bb266d721ec1c58a09ae167596d28a585e0e323a06d78fc0a66112a94741491e40394eb413a7dfa63a39b74cf10dff8b0fa3415acd14059b0b053ae12f4b3ce6ff76f3ea94cc9e45acfbac016b9c2faa94d1942aec6d1acb91a77c2d6c08943ee93bd340f6b43bd0c0ce33e5da2477ca295308444bb600e6c706937f262e3f12458db09d0b3c1a7b362c9ce06933304066a42b2b43e319e32ed9cbeb8d8368f779b480e48d26ea958dde8679d0029ab8d6d0d52b0b56e5da831fdd0e6db9761ab72d07bfa024af8c227ebb2592763426a6b1ca00e7faf89ca92780496582f06233b4fc58d903c666788cccd9311fc8c3d47f81fcb5529ce79fe8dea824d892d368bb3c150680f68821c13756cfc207a20e37e7512df5d1518f5a9a1c234f6d1da2e66859c67a377a5f3931878e521986203b5ad2c89ec682596f6d7cbf2449f8ac30e0702c9fc87c2338d6644b3a9a2cab5ef13a349f3b38dfc8ea6e112ae46659d5f9cc89b3125833b9c9ac6cc18d3fc49379beb2e753ec04f10afa0ba865035404ceb27ac7e4fc98f31e1f95091d08b2263f9d00e08431bc1c51e9316da143a5c1babe720b9800967656d04fb29ab76da965219a7cbdb4c9588b225f6b2d51f171fcbe1b14278ceb19283590288d0ee318479d66c15c69600cbd72a84e8d4f2101e42f3682d6bfde1e321482c39ae82ace01eb77de51d851c11602bc433d602ca7e93ad82db82e21e35a7afe65601db561c32d59049e31f053855eeba5bda8672d388e6379cd7587429f3219e915c0a7cb33a868147f2be8089b5f39552d96beb73e1e34047f552ce430c5b588d2ccb960bf358879e7fdf10a73566cf888f37b7eb099cd987552926d92457256dd048ad7ec0ad8e28f4cd78d55e06488312c45286b626a178fb2b814d2d9537c0ddd9f4680f4a8103e2a53e31725d035fb625d8d5c08de52328ebf863265689b8b2948510c6b897bae48142b40f884d72a798122c96ed01dd3af3d2a217928a0fdb3a3509cb6557aec7e99821da7029886668ce505b9d45f7f5c5b3939f461a783a76ea341cd5498735a6ad34c76bfc96a0fc25f815dc0910efa6e01951d69cad506b23e24f18677a9e0a0e29e1ad92ddb2a0d6102965393af2c1d51ea78dead7be271fcc3c1227f11cd4b4ac0fc4f4ebca6552a7c6a90a0769a41a0034a2e2125bd516769f5709203cd86cb9d5f13135384f6667be58364d4fecefc2b4db1f92cfb45621e91c8eb71112ccb7455cea9457f132f0aef5a5a3efedc145011ba7dc7a0a04bc77492856d7f57c2d73f838ed628b904df0ac28bc9305d6557b412ec235f4b37bd3cf3877bd720ed760824ced58378878ccf5f1af938f463bf85b899f9dbdaadecc7e454233b24c71e4d5651bb64802cbb4d6ccae6e3eaf765759dbea4bff4053c572c95478e3f84671da6635fd4b54349cc7f2d4b16cd629c159c135767eeb149560c692936d276a5fbf24b4ebad6bd025e52cd26182e87ff65506e98fc736bfbcc8bcf33ae88d46ca9a64723b71e6d4386e5da05ca72430d547d902635f85514280286036a4e90a4f7825d5b653d7e3f8573e34de375eac48c7a4c2d98d46c0439a4464bab51ec4aaf3330ac3bf69e24d05b57bb2cf3295e620109d4476b67584f5a64235d721826da7a8c1818ca470198fe05fbf39f5f0bd61faccfbeb9a2709cf3627f52736d9aca289f69d3c59cc2297e44d092b0951f78d0058f9b9c256c7c5d94204ab767b65cbeccb21e362e91afce75017ee59445d7f4ac4790e7e7fb48d4f4c243c964f2c73fd66ae115ca5f9369c7e66063fd585066c4099c1ffc1028ecfc3adac541027cc4d074715249dde2a9ce7720193a00738d644150d71e98f9b2a20272456b7a3effaa2d73528e1a7982c23076c9b15c041b47d260a8127a317f3f7d505355691eb5f556624c9aab70b8e5d01f81e5ce9ced4e6f64cceb7deb29921588fb5831059c43dccb196b4e1d606fea919fb2d7730390baddd160150ab41e79efd035e86a1350d19b7e03ed2e62b749f32a28a73ee9984ca3f3fd6b7acad80ffc1c57985c764d9a357d3de819cf89dbdfcd6daf4e71544342c8c4f465f579f9753121f06f4bd94bac052e8f744f4b0e405fda55847b9dbec4abe0dbc16811b07ef03228f1a886f582aac2763dab35258bd85e35a7010d73de039758491527dcf78e3b146f431ed906577c912f51c3ba903219b126504c524c98fc8669df3d389c656f87c1606ac30e87316ea3c4a007b900a7c2d90b9cb29473d6f6849c2e7baf1351abd19935b5ffcccfca6d158a4181de7fd52bf90105e59d9426b8b1a9997e605870c082ba1d517011a1fa4de0812ee846cc0bd4dd286b442455b07b28ff816854ba886ca70f2e1378dfddef45323770ea4d1638ecb7b06a40ff5cecac58cbbc50e704f2f4fee580e31c70fd7ecaafbaa9bed9fd7e36b2d8f584d4a7154a262d461fc7b464ab5ba1e6418d8469012d701146781d2f2e7a09a65ba6211d8981071d2eebad7d1ee8d1ad1d28bd5e8b5caab0d594b28b75f86710114fff381a276fd80c364a7e57dbe5040d73f406aa1edd8349e16e4a6e3ce49504fe275d2cceb83250dc8e24c4cd76b18f8c6a7ca71778ea9c05523975c950b2aa195884e8bb7ebdee17f30f95d68075308a44dad8610b817acb9abb10b68553df39d06bcb807dc8cde4e466fe73ba7c5ee1e4150f33a97d296060319246b7bde29c02ec4802cff724fd167aea093f9bb8b449ce2ad00b04ba7ea47b916034c0a3f5ba0e57bb279e9a332bfc0010ad41f1681ba66fbb26c468b835786520b66ac960ace45737250a44e0a60b94837a3b9f663dde38176bb63d51971477675bd24e5d0efa331f55a9a596e8c5a7f37c62f98653f02aa656f7bc0e764bc0b51b9fc80e9734ff78ba4f98c620f899675461a9efaaed6f39196224494572afbe857e5fdd24174ee9ea56ba65c6dca0d099a35363e426c47e34a163bfcc107b6b9ec0d53cec2bb0f62b4caac1488729e0f2de0794909b73fb9395349412e5dd94745e10062579e12fc2f9ec067f187c71359ba608db448e516898ea39648025d1a65c89e30c562a697cc9dc25891b184a1c8e5e6e4c600418f4ebd9fbbb718c01fecb18dccafa01714e1ce5910b135c48dbb08677f0a740768b2d10cea9686adf5a82aabeb01d939cf317d8d41158745d8fff85e98333a8ae142cb65d82fb490f17b1483bd14f3d6174f84c602473fd986d1129e13e318b9b330ec550efce72e0cc8148a37b4771d9273dcce5858c4e39f38a9a5320668af93a920f7fd5d61573a85177f0bf773133d46ef52aefc45db68d176aa9c35b27b84bf4b0438b68d4fb9945f69e850695904756221c79de87f47bfb7531544ddc5b23c75f30fbd673b96a1eaad731383d453787d6d340e336b8a3f2ea32e4ebc7d0e4551bea098870ff1306e403131d444e1f9f985f0a25090bd7392b7d7ec59aab6cd7b5f233b2768efe97cadd1862f833bfc4bbc803bd45fcdaf00251c9518252f2cb884c8571160e48eda0b4507e003b644281ac5bc8c1e9197ae30702a4051c23ed44450a8b5e14c8ab380f64188e99103a41b7b301e4b45602aefac2cb3f2de4f42a4cfbe6cf1f795255aa8f7d0e82051a73d10404d706977bc0a146fc8c6351e57430b9affb1ac669996792bc8c143ec801daa57ae93d8c1d35fa054ed6c8d0d10b6ede0c4bbb9043ce0677757bdadfded3c68b0599ace45f388f205e55ead3b339b84de86a346306dcddd7528d38a4e5b4da2f5de79103851ac12fec3a91a8960a44c125539e593909a41054dfaefed4c9c7a8026854f41f486b1f78302fa3a67571dc04516a3964102f0f7ccd8aea2a131bbb6468478ad1c3fe27eae0a5f6e8f714a5aa735775bcf6791ec5af4aa1a83e5cc21973bc913943eef9d0209a6ef60dfa4c27394f3cbcd5ffc95dffe64db38e7647206a2cc93a9ed4e5a39a316b66bb72c1d7b564ee4e800716f424aeef2c709b41b1bd26fec12e593a97ee18e373e1845ae46736766ef60af1725f8f1afec6d1dcaacfd0fcbdff00837abf96777d1bd62dca78823adda7392cb8fc6b5fda861e9ec5ce5b302e0a0ac536bd8cd6d8d72a714f18df19a8bcd0571ad68f7e2a03cf26e4a84550e5bfd5031c8e1e46c151313446a487d7729cfbda2259ef89a52e8538c4f81c93e18b9c62ade5011b4525debfc0eb38da513283b43897c908ae67ebb5c9236ca5c1776b17e8440a5d7b408c02f3c5ec07a4877d1d9efa66f814feb8730a430d31fd94fee2e11a18d22ab4d13716614c4486dc15be3e72b2f145b72b6aacf573f21a20fba1b02ad21bbccb7040b0aed227d6fcd676d2e2a98063881783a5803e6d0c6568efddc76db15d3b4d300e3ad2551f348d078078b20b50214d2790486f7190119cf6c6e2f149cff98f148e5b78f4aa55cd67d277d548df3db04fa3c2e317bc02066537d66548b55d9459e19e0f5c2e273145a7449292ce18630d9a911e784ae16dd0b8701d5184d15a0ceeb86528f558f7fda326f0b510c521e1f142d4bb264a1f720088f756787fb457165a8107fb445e7574ba81e6cd2a6f9786f0208fa31ba075a56ef92c80042c2d5a5942755f79aac73bece38646f40a60bde3ac4ab53a2facdbc181489172098a029d17d422f242f8f6b22773ee38a6c0464d9d09c14bfaaecacfabd81be92529f9e5a25767fb6ee32665e1be31231ce6e69ec97655bea431396d19a9c69904db34315179e30b2b66d775f7d5ee018f881cf5acb766908b4e936a6e7c5c412ff470d1c4d6078215644f81de56db6bd6c156e53248d17a4db44d3096bd2833e12b8a7fcc11f9f0c9233875f4f24cdc65dd06ab575b3c52b23b8e496551607247dae8bdf16c49807128cabc5c6696479f960dcfd351f6c08c53c9b75935e4e8e3885ab2b9c0eec3fcb23cf7a5572d4ef6a4cd907707fa0ef475f69ee6ee885b56cf676f41bdb21091bd4307caebe055441565fc21cc4baef3d28377c2317af36b46a95a8eb0617acff48bfb6989f3208d0ec72acdfbf326ca2cd4c2bfc7e6da42486ef10564322359768482604b65ae019366685682279b9c943f56c8d42ef701273a5b5019ce058bbf6b4f1617e85fe6ddda8e7337b57eda85c4dc20dc77e94676d27fc61585976fbca51f899e70bf290be80ea3c84b884733671cc5b7f53a210c04b6e04e1bc341b0e0d453e6a881ae91cee8fd983fd2611bc64a87dbd63285ce377142ec579cb02aa51f4fc19ff0a8b157f20042293e156b62f5705074ba2cb46f6c3b589403774810c5532cbc9262c2e3b36eaa138d636cf501ca5389c9f5b2681eea1a49b510e36b21fa27df400aa3a8c0335a1a9e4ec5c2761c0387c88f354c9bd701ab2921e77fd613e8c71c842c5efe966c18eff80ab70a6ae09cc06aabb53d731a28bcb422d10fa53d94ddb8174d0c50e79aa720ad2f578a6a40828b7d5cb98f21c704f1204e5326577b35f4a2ebc32eb16a83fa44f39b553db75096374d09da2ec15263a87c36cc3fdcb36f38acd068165a3b3299d8bd31c603aa526047c162e4b6611688c1146c031676c867136662e966e2a0f26f5ece3d7d465e656ef1cbb7506a2076799bee2951d61b6cbbaa1f2f970b70eae870c5b861b65c5287791070a75fda6763d89172e4b94cbda9b84cf771153953ee4c99f43c7e957e2879a4e054db5477a8625ce4d2c8c9cc86d5506337a230e72328275e130aa6086cd998fa04ed9f1595b8b15d776224084fb651369f31abd8d6ce3d0b348885d4fd551cd4761b681f39fbce3af9a7442292ad867fd699e5bfaae15f6c053f8e31cb65a28841e477943af1da39dfa63eb03c3eaee7f4bc10db53e176084f938ab6f63655f4dac23616d4d0488f155c61d05aa0451fa189842480bb04421a2f5b737711549e8252e4588313b14f2df02c6de82444671b3cb95f5a0d41f96d733ce7ffedc66160737e91c08c45c6b97fdc2cf4220d02efb7b88ccbfd9faba82e8f414d952b18677c357305880ab8b053222cae885e688b1082eea8d3289375840f0b89a353888532de7b79da543f9009fc51a717ae6f3a5816710516fc8cd5f9764114b2a2aafd0e8bef1b90e38b851aee2de4d10dacd6c2eec2bf28fc74666ead6023849d951586169650a80864bc2bb010c9026531c24a6d45ecb337fa1fa52e7312cd3f42959fd386f970dbd32b4d242a16311be75481a1feaa03e50973485652a321ef1debb6ec07cf8e01586277f64c0a13ab5a90b228328ad5ad6dd7a8ec7b6d54164e8930b0760ec7c6863f523d723c5c9360219a1121677e2e2244482f81a9fd99ece3667603ab1103dc318e48b1e0b9761b021e093da21172291884d38ea4949343a3c5d65a8c5277d88b5eada732cda1c7da963794cb4e2be6432853e5248a9ac41544a1e26c1eb29b9e66582157d796d4ce48fffca01f230472e139505b4e32c1a6e2a51dfc099ed88c4fff3f22f2738ca64354a307b8e7d50859f5d05ff2ba3c13b15e66e2aa5bad2316367d8c22540f03522270597ce83ba6d73295726757a9e93afe585b3a83d0cf9dc946ec333bdcfee8b8d948657dcfb57c9614e09d286a21dbf178897634a91d1cfab87486ae016afa8f446b21f338addf1b6f6d609bd197e782bd8988fb897280230b75f55074affc9bae780c05858409cd7cd271a021bf0ef8181323dca20849e298ac3b0eb46239e9b2e49d6897c292c37c5e36dd32a22ef4cf7452e396ed3a728d9ab1b2fc998d747005e2899a32def5b7788d4bec05d11ae30e83db5c3b1654898a36186e82ea17a3942c0144c45fc65e1983f5b76efcf3d19da76198fee6cd6af7fbee357ebea4454510a3edd4487dd5d2a13f19c8e3478dbc089427b963a4def051b21cc7e9dbd4e28b43a9e5a2cc27e64e0e270250afc3d4f5dfe1f9263ce9c53ba3b67fd7555183f38138b00998e3d73cb2777836aed414bcdc7b3632847945eb881dbe993aaf8df4da083e7e8ded045f529d1fa3bc8a3daf22cfb57c1572b50ec653287e774cb345d85b429ea16694870a2d3cedaa4ce083412e331e9cf7164a76fc0976ded64910f6b4fc92c6978d20add4e8fcea03c8044066139ff716546e8920158b1ad8068ba29f94fe1bf53291b0912412319e10830138d0e5b857162bd51d3b5bd68c4fe7de5c4118634bc92686ee9d100356753fb5964b96ff5980fc0521cd77284d9abaebd4b89c3e4cb969932b62fded7385d25e8e0803daa80187d4b94640937b412ae4aa48bb6201e7c0847fada8226dec5e3a0abcb7ea935fc63dcb71405d0a732ffeac0c5d0b6c1210a44946cdb0eeda1553771ba5b0fad2e22edbae5e5be9d9a8e7f6ecfb0c93fb0431584b7c5cccbbe57dbc41e4331552482c2f9afb96f6f3264f548d0ff23046a2696d48a9db9c85d64339bc91a5d3848394b096e52e61ff972ec9b7c1338baaa6268173bf3492e226995210b7c47eac562eed1a8c283b7fad3668e10655c106056ab0f9fde1645c5695583dfa22635bfc4ff45582b27e7cdf289416739578ce4b873b2a434dacd1994b7a35f6270a5f9fa6dbcd768f8f2743a1f0eea67dcf93ee9c455cea94b8d94a0146febd18d0429fe7639a7426658e9a760ad42ed67882e002fcc1a96e37629316d38e9c3721c54f692e5e89cb5049940f06f6ff70e9028a3f91ed927da04b7333cbbe59d03273aa985712b9f8ec0a75af42e1440445734cdf62f68188a12fb61124b01404937d6e54fff49bd13c3ab514870a37202edc4c8f93c436138547ec922afd087125cb5ba02cb1a657049827dfc49b6c174fee120f051c64d0ec7f4a5ade8370cfdf6d0fcdb1268d34e8b18591633162d55016b3b370bf3bbd9b0f502528acca98dd6d183dac3e952609ab9cd58146aa2363f5e098470a4fc6ac9130923c740875a27644aa281d1b104042737b04801b073e28f8b1cafde369d512638e547e38f5b673f9cbac70e3da6401bd0ea76bb0b60b831fcfd4346b993097617a06f153edf57b2b8e74a621a5a27fa3d76f648b1a15ddf93399655d5c139f273b8a7d18d6a23dd96027c9d2fb2d93b718bd94e178a8cff07b8c10ef137ca3d76a93105102ee1189d89dda19004d10c2d8edf6e3a833af9de397fb983a03138a6bdbb40e62573d96922aabef45707e7480002ebb047da5ba26548e777ddfd21dba1c54fccc0db6ee92c110fc5d8a4ae59be0b3d6aff177bc1e89d6aa41e0cb1a9a07ac356ab13fbdcaa3fede825de1cce02c1b35c93da85477336f663a889856079748898019c4c08186fffa6a5e7197ce872d2b436564c3cbcca680f72e91ff95a47bdb132917ef2d485fc97aee03c40bec68f6e9e239a22c56d4f03c7b59acfc989e4bcc3bed4ebeb04d1ba7de2b445637519b6870cd49b8ec6005728f74374e5008020b6f43799ae01ecb74ed1922f2e9d8536daa68b9308597c7cab3734995366759fcc35537c7599d63542654a34a2a461aa0d54661fa313443d4513ee33c2da8185afb100064abddddcb2b591e549a74deed623232256057bc890f29085ffbaa24135e2018fee1dde4464844a9c51a4e6f66178595b480821184cb05f5b215c701612f4f9a13f65a4a1ba6de5e49980c105b7899a5b783db5962061a3d42a23e80704114c6fda9221d57e59c131b7ad5566b9541a702c675efa9ea1975d9ee827a840ddd5090d1edc800ca836fd9cae9c0d97f8cbaa6845b6db8e33be69308950d157f694ce1dc740e945b6cff2fd4de0ad375cc3f965ac1556b68069b8a140760d154f2077e66b19235a02c71d0e315d8d0ab7f97e7aafa4aecc79e17e8977de99a68a94fdadb17e1324c03b57a608b90b09c70f1f3af3437a79c7b057bfeb8528214a6712e99c4a5be36e91429c7e004550628f2ee75d66ef0ea5be0c499610f65f8180da42534976ba2f67833e938e3f9bcbfcd2359ae239b29e0ae4c9128d5e835bd6294dc78b844c96cf2674df6f13142463cca2bb64f06b087a99fbb486664085510172d5462903d1c9293c56dc7bea9cd0392029a7b4fc8110ee89b6d2c54381f1b8f10452c661f82c2bd684ab7e25d9b16c1374a917579f2bcd6c67251d5e81a6774fceaa1ab17d21f9033c0c9d8adec8311cb1fc3fac35bf9d0c364c2afcb863bed23b6d0cda55ac2b414b0d6e541d0a35487d865b5509c57dfd6675620bd5a504db94b648a0b94128af17a54996a28632dc91d973c2d8e8f58048012ffee82d90e58cb3062518c2308f9e8c2be1742dde75af3bc7a93c137fe3945e1af81cb295bda09ac1b79b6cc8feb7e4d4e97c95814ae2b462f24ce1817947b0978a579ed8f21d10b39241163eacf757d68fdc0fabe5264ba495aa7f7e9298aa5afe3d5e05541d0590e7454fb4e334518328a96791d36deb4bb1598c50c0d98444b988d8e4d7f584153ded6b96ce1334a87dce57782649dad5f95b9a006fcefb2f788a749f2968091f6d2212fd32af1e55c02a0a82347f6c4e30ba52fdf8cba03ecf993e41fa31921a2d085969488b51560f811c62234421dbcf365856bb70353967a92da50ffc16c88570c413912239af8beeb4ad438cc82aba76705f3c42676ff199a12e16b97f46b84c049f2a9b1eedc91772af8b3ce15c107037616c2372f1a0d4377fb823c44a7960130a23a3d22aeebb94d077524b903acb554b34209f5f1a8dea3901a143681060acd4c38ed46e856a54bdbd2eee5724614b768c9cb8bbe7270b71fb5421080ef5267b0753c015302d0aa9527b0841b70db7736756d356172a433d9fc790e55b4ce1293859e3a47155814d3cbb69baf587a0ffe8318eb07583d1dfcd89cf640fc0224d857cbd77b32e14463892cb5a8eb3f7174918d44f0ddb87b0eea2d25d7c10a2e06cdc6d55fdfb85baef92639b0f4c3d0cb991c530b3026dd7e8ef80817fa1f04025e4d0cd238b66cc1c2be312a499d155ec13112f59b3b671a51f03f80bd2c723febffc5f33e6b2f71252443400ac45c92c3a78ecbbae680b8c93598489ef7049d1f52fdeea549be4740515184d032c1df19d51c9d39e999d196d70b1c8ca96e23cb1fc9e8c60c0c87437c5c76d0d07d14444f7f7d33598e9ced79f1fc884d478eec3d00b5123166cd3e2a38ba239180f7ce12761bf85a74a502ac7291a904e77a839da892d069a1c3b11bd69f1a4c10e69b5a35ec293a1d331ca7a1445967779d486935d9ddf0e5df6fc880709e20ee52dcadfc651c34fb69d507887da75b0ac4117d2829a856fdb57992ce9dbd42553bebe8d0f92a458830e091c844a051dfd650d78d8ce26846d9aeb87b2e9e58fd19f0e75c7258eb09c2c540b6f3cc8cdec185a7e63929d383d4f7b2d56d89b517fa5069baf1467558b41ab3ff316b30f42949adb537a91e56aa4db61a50524c0e920b4db39fd56804cb96249b95d0374e79b7489c10b939377f417c5d08abbb7f66a83acdda9b262f48b9b5edfdcae3c4ddfcfc191da337a5d118aa0f918add96a2f485e900d086dc7c0d4a2b792217ce4ada825c30369e16947a08ea62581d2e2100c32df6c02d309c24da01c9916c9000accf9612ba3fddf649c61f908a92492e5ace7c4c4fd454b4e5f51339b5df974b8f91081b26730ecf299e54fc59f3ffb5ff9316162ead136884c7f1532907bca6f1fe41b1df24939d1654c78aae3f23e2ef4bad4cf6162234380422afc6b305c189233c2667668f2bfa63c6458b4ee1193c54f553ca1b4c8ebfa41d379be6e1f0dca641ee2e041401cb056156f3d3c117bb37789dffaa36e0a75310eca6913646b381b568bc30e0856dfd3ca9d9189eaadd521e7f4def450ed183988bb86e67d78e9cfc1db6ae82930fc75e5ca19ccbaaa2163759e26462954bd396e6da1d5f3990b61a60ea828a9549083a8126d7b22a1865d238c67f0228d4cd95b942a8b04b2fa1a8a2db966002f1bf93168888627f17f9803d1ee25055bf0d16e3280ba62dc38efee2b34946027df04a77422cedb78d755ea5f6eae2c1c26bf48164a46e0e9ef0bacb17945b2b77bb691c552c061474d30f82bb13e51faaf539ea55658a067e5972d69a72e89b92291de45cb095d187b6757cd2a61d0653a642227664b7b967b4a14fc9154f8255522c4094cd0d14a2652353a965fa00f52160c0268a34bf4f2840615446eebfdd04ee3815531e33f6da401da851542b69a8737a373d34bcde702304f9a46451d696c75de338b2d592ecd93b5fea7062c92297711faa5df50b97d8343433ec30d002420ba5e83fa4b55f5aec491b0c5ee4900ae5575e3d8b33b5e5361dfd727af281edecdbf14849f89a273d77bc2a9d642031547eab7323869daef48c9b7b94e3c1c79fbdf1dd8a2a3a5a314002eac97bd2d09cb359799320d17e0dd5c706dcd0b0ad523036d3bf03566da2af10b6e93f8d09643c4a2ba43a03ff196fa7541072a6859f79e04cf5a8a173dcee007ff26ec2d7e46fe9ceccc41dd5ceb5d73a8bd79f81e887926c1460841ce0308b1c8ed2f77c5d78ed8c63b7e9c3a0e78ba3f9f67ecdf64e77d363845174741a83bfa0ce56a939c0862d500cfb0bd9ab6435893889ec84b544a2fca0498d09bba89988eef104024c1c932caf072322830025903b244d8f1f5a6e42355958c92ac772b426e0ce55f0b2069d39c17e52fda9ff070db34efe649cc6a3d48908b42bccc0a51d4a53433ad3c3f8d4f3630fa238e8bb7afebe14b4812c5c868571b52702e251ffe120cc6771804fbf51e89e6a8432e75083a241ec717a0105178df93129f346c5796f10554b8574ed20c20b8b856085047b075b82ec9b35d636c9e5e2f4fc7f34cd8c0d8ee806ccb3c75d389b7f6f104b46b39e1cdd1cfc3a220aff6af582b269975af15929d37151cc96c20ea104fc498294d291befa301df63a72460bd9ae140772ec34f51821f17be03a76f44441255a1bc87a854d8b973e8351793998925fb5855969515c5c78b626ed2e5c000f5ded72526ad3be0b553c6f8acd1fe2c548ba3b6c1e9391343ed831755929ce6dba4d889b4ea89a853825c21b96262c388dc55d4777a34c7e86e696d3b8e3f5eeb9ffcf23e5de556c21b6056f001e048a21b195786c08f2fe7b3d380addc8fd5c6d68d69822d4201af650a1e5d0aa6c8c22e2ca071d4da1d38c3a83718e6d4c365605bec7ef14918aa5cbe7ab05663e44610f1d49d834d6bd8539f55f38970f4a42b72380e41e4b7732d779270c54d6f04bcd03d7af459058c705670f8cb9926074cd1b4e18df8b8d464f5694c09c76eb7a411cc1350e2e0b657c679499bf195e0027f1512ba45aa530aaec96447e0ff53c748f16a03824cad1e910a6f5f318234c6627481399ac1c2de6e7cfad0f20b71d19a460c6cf7d81b3ea961b1ddce343c6f69e0220a3bc69561002d9c51f657cd4522c217220b5fc404f851b3129b03173c48b763e7d28e8633b36504d8b2ee3fc5064ab53949dd9d16577239a8d65fe069fc975c77d81823100a135d6f0e0742eb94b7ee611f8cb7fc2a34466185595aa2964771a37213c03e4d74c9606427a75b3cd3013ce49d16808421156544dbf20086785bbec83f06ec290a269ee024c593c3b5d0ef4c69ab4780318154b01234eed0cb4417533f6c1956beff85a7542a83f8d0b18038aa84e418c441b5a2323e6653c35daee116a154a3271ad6dd7b86bf3dc916e2ab78ba42c7254312ed625375fb418817aeeb888439260539e75c039a82ea3690b67fac1c7f864db8eef136fdb5b48e2f1d859fbc37a894cbb2eda0e6aef9fa4c4702cb96d9a512a79fefaa50f5e23cf31230655f1a9497f86b9531dbf9fc416718dddb6f8d76db2bcc170e2ebe87fa8c1f9af44bb16337483c086cf0852e14f37a8c4c3840a3a34c24eb8d045f37218480d7e5e27110aa8ffb607f63b5cbbcf24f38726b556de72c3fb6c4ebb0d5053e8128d084b42ca8035bafa6017d0eb1dbaeb379077900ec5583a17fea183a87c97198facbc83b7b02f1af280ed966ba6f7a6ad87e36339ca433242bdadd77d7f2b5ab3e53f2c9bced1da8b5366846c8639611cf43c1da72487847f4469b1494e4a9d7e2202e42d8757bfad93ee8de82d547e458c5d1857fd9f44a2f6e08555c71a95967383dd0b71fcc5fcdcb74eb035940f982e874feed0c1f123d8fc6362766a4cb6508c675fc592825b00e2c0462551608c55d79020eb959875dc062dfcb928e2993422ca19413840fabe16b9ba71f2ce06d46a5507de0a7720769d3c2e463316acbf7a314ede35d24babef827dd341cba2ec9badb42fe34ce5e447fa6688730f0ef4dd6ae1be0e6cdbe38803f5168d5acbf35d7aebe5798b8c1462e47f120f05a59e4c7128303be6c0ae67b043641b21cc2e5ea1dba955c29f2237142ee35922854d93169821b4107f50a05fb12bd9d88129fbb59a11783e76e62387726af6237fc73a0271daf00578975672feb21080df71eafeee52b6f51743e8d8b4100b28100282595463acc4edea735ba3c722c96642714811922e702e6ca2bdcc62cedcc47f5837751cd7ff24f3fc3f100c3e94602d522e88fd62a261fae29cf8e53e8ad57b7b09e7a006b2133e0b758b91467add2e5876b3f42e2a7676ace23c747c30939517c46c303fd8c1e2c59846cdabf743ceae3daf1ac26a190bc39322299db6c50e76bf2b966c21010fdbde5af2f1ab308b80bd06d62969a09ba4eb2c7d8c053ebba133103d7e61cafa3e4fae041c8b0c3bf14ba15edd76773849ac8c102691a02042f61d97bbb157f6d769eb62feaad4710cc15c7b1913c06e8ea80ec5e37fdd447704092a725e50e593523f59117b7e15854d014520eb09178a26ae20ef084087d80e6cb33023a8c4aca8ee101d12d72d790154e9212cba32cae4fc70336ca2cbb5dd2ced9acc5af3a6186b360bb2c52d6b55afb0f26246ec432b080b8b0104778a9b80c72684d70e8a546ce2b9bf2f1871ad30974f65f75a1596cb9ae32eec65479beace9472d9707dd20990475ae53dfa9bb34c63a78a69297fe17410a5b63ec367851ab4b453f849b0f5f5a08b77ac770ce6aae318c2cecdbe7b3097a8f5a26645386345506b74f96ec7c275ba9c6c4610eb805e8074be8f247a26254eb5736743061801f5b70be5e5ec1ce1f211e278fb39fe70beca29282d8ecaf3838ba708c78e782e0835f81c8a8377eb934c1696b0609b7b48dd3016cd1c9cbf7e99e5e91ede9ea306ebbf8b02dc2b135f46f4733bc5aaddc04350206838cbcd67796dc6ac4b3987160f67573f0464cdf397f9700506c9bb0a6dfa185b7bf143e75ec5ec116198259b2393bc1a719d0972d2170b4e31f17635277d2e834d784f9013cca622a0ee57d6b5814ee3e80d8e705796ff8a757cdee13b21a1d4e88048c75ca238783bcd5c71893a4f5c7275093142bd19fdbedbedb508317e9a77cab137138fe9a706e350332132ccd3adb99774f7e6ebf5ffdf9715284e47f4d739527feb159171ca8f00dbe5df6b1200ada55cfcdd8dcb2d36654979bc96b4384ebbeb1edd313164d2fe3cbe1f83549fcd6bb9709e91ca99580c1af004603c40ac7002b6209d8928248ba95aaa7a5c99402be89f6d896b1670a5d411d1765149544574d7d110880f18f9c696e7c1f26aee5f1619db48081404aa003d94d99b0a6764e6294245a0a71815bc6c3c04b6a4711203ad28eeb501d5ae9a43f8cd3baf3ba11c417cdbbe6e37d4eb0fe098b7ae3901c9f80bf89bf53ac5d7b595e74c50f260593d41f1625b35390973dabf0727a8f091ab1aa960db73ae620b5309c41406df14a1689110225db477aa1df99858c1a398c4af755d3022162aad538ff0bb0b79ac0ec1520998dcabe635aa032fb794c59f394ba518f53ec211346a30baddefc15ebd0b118e7d605a28ee82fd6d5d69a657148c955f5dec2c7593b9273c3ee1bb686d4e4082c17f14db6968436a2b9fe3546a38f3f6dbc61aa1b9ee6758abfeda245c4ea52cf690ba659ff89832277b3e6032f06b990166b187577477ffb7962c8636ebc6dcd0503d95e1ebfbcc9f4a76d13e15152c723111193e735a456d318c28c8e9c7b243b6450cc96502ee2c68922b078a969667adac6d99d14ddb44a691c457e8109bf3eb947c5756cb2ef79c1ffa4376ee8f95e911ecb4c96d5547be61fd46176db3bdefbbe635546d5885d398aaecfa00d3d40de25f9440da912ca5585001d534ff609801810ff8fe259a82aa08466e6bf7dc97192f373e7c6c83a82a1661a2ada430d2e16cff4c20842384a5bc1559f07c8c99865d8000cd53a38861dc1226f996dda908362ec61f125b7690beef6dddd60ee76cfe3152b634f2dfb1209c5d601730fdbfdd9c0d59c277064a9daa38cbf3cc48a2985b16ed888a8173ae26c7503b72fda202bb79e6087df1b50e40ced045375fbdf4b821023cd531598d44bd2b0c9f9282ea30c58d4228b7c0748f0e578dc7b5fe7f120b5289a5b68c84650eb72ad8cf1c49bdcb3f10d510705d4204f25b90a63472990aeb9fcd60cb8c1346a5ac4c9a6e5b82007db92cf2e966862fed81ca1fab8f20cac6b63db27a4804bef5b37fa4f2c190dd9636f8566947c2c4398f36421dbe2c88e6051f664306dfd3b81f04e87ac0d9bdfb9ea47262facc2bcec218f94e787ff957326ae572e45c82e49f49a007f9785f6d9b3ee2352856d96a3a4f9b6a025e78990611feb275ceae9a0a8d685142b7c96077a279f52572b31c14beca5f19df6b8e4eca627abcd6a2ccd378ea7eb54c7e9cecf565a381b03cb6a5e4e1cb9e859b7314b082690e122a03ac90b4c4cddf6cb60975c7e4887fa2e39e7a4f5f924c0debdd1a6d799967ea6799c2ceac4f710d6718e381e8830863f590b4bad2a5413d270b74fe6fde4aa2f64f367894c4b181e7d40b26bac7e514329a7c1d9d518fed8f10e010740efe3a1f6c569f2fd1d13c8b63ab5aa1f9b860c38ddaa7457830f8a8b8b2afdd0d5afbd97ad96a2857260aa0f457aaf3dece4f3b33c2c157de4c4debfc18d235e6dc6fe0bfd41f028d280839a7153ce4c4919ff260470452a99caae2872c477a3bcbae9e664f3645f11b6af977c98cf98e861e660337aeebc3c6a49bcfe7272c4446808b23fa8c8dfbcae223bcceb1e860fd9ed31f40d793fc1ad69ca9d38c296803f40a80072196edd99cc32ebc7c90d39cd1a80df552261e0d7417df18a0c2999800881e2b96befb05286f9c9c0edd59df3da5049177bf371af57d25f62e067ac25dbdce4e2c4d233e996bcffcc55524aa5b963961728e7e788608bc7073c18d3895332999ecc1a31f9474ac8bb7da200ad29a7937df0bd8826bb57d9a39a6067e6eaf2640b4865a55a7ce96327ce85b5607409b4955e616b97f3fc44ab6e380edea2ba8c67aee56e7777b5c750b970b063dd290cd1b45b4ca01deee44262604b510121f9133483e66004c1ac1ae3ac78dcce43190d70aae1cb4e353a349cdc25f981eb52d99bfddaabf88d5a8b008897e98e27eacd475369fa377173c175e0804b6f45a6c4a1a3a975d5c9f8b0dab6f49929d1d0eb1333a5391bd5cf6a833f41a71972cc8a39a552fb886afd3d08b47c7a3b8fd8a3d256f51709a10174eed58370fd4eb15142619eb6a1f36008bd883507ecc06068f9fb5e46eb99e60ad1f0cc155eb1e1d45e0c83b1a5de235b291b5b29f6972cdcd8795b8f25aaa516d53f9bca4f81a4b50a0e9f6946631ef9f40f4424a1131abc92991c8b0411a5e7464403f4bafbc5cb1f58a02e0710a4cdc6a8a636e67b3b23aab7c10e0b0f7bb5d09cdcbb4ffa4e280fb15e2f725c644b986a1eec98c8c8bcd3055cb7760a3426e429b08bb61574a347aa61563039f35abbaeb368a5a72293d8d85e116022cbe9634f5b050f156188e8d8c82c0b14beeed7d2e8b6ff6fb38e4a4d737786a93484c17d512f5e71d4a712a5c7a1baf2c6c38688e149580f2f3ff4ef470488a59607c09af2cedb86c6dd61516d93719f6373bbd749b92295c993d8e5334cfeec1399a2c2dd9ef7f7c4a2af52b0f2288c79a2bbdfe816ce88ca640b04011e2a7bffc52304dae242e71d847b8225abbd22d49debbdc25477859351471692be94b65533bb4917d89d503256e4517d361db49e0ea53c1cd47fbf74cde2afce1eada5f03da9d8bf9e64e34fc71e43ed325b1be0d99a94b567849da159cb8857a3ac6137ad79c1bdf4daae38138529a00e3e72c52a2ff1542214dca2c8d304b5dddff57ad177d37970a90bf0759362386026714d945dff90979cf8eb1163f47c24b1bca99b725aa6e1ee09a7f3529dcf795b060ebbd88087fb4ab818d90b62f6bad7e5088d1df89e86595a92453ca1337cf943c705251c4c6df5546224538735c70dfb7b38785c84a12f4c6ad106958735607988f464f455a09645e891f254d96c41b798e91c9975e93a9effcd4a221af88700ba6085af56cb2c5ea8e6d6b29a56f1aee317cf69e4a54b3fb1db3da209c8ef2b237a345ff962a438e941213335c12476bfdf58b0519818f41768382b4e2c3173c608795e0010c183cace0763e1dcf88e0f1753d087545db4d557320fcb104c0ee34ed08e85a613071d632475068309d736263b4749bdd594cdf8703f4ecc7e8fd4b7a9feb2b7d4a526cd1659b5ae7546e43d9ddff3f8ac9bda68dde44bf26a7a3b9920e94883e9ac8273b804f7345e1c2cb0ce255b54821a3d0d4b3c95cbbc1238ceb3f128fc2b692a6676f9113302b75b679f7601cbf44dab6e0dfeef024868da164f5180af8799cdd6d08d8e5e886472496c1fa7134d2b9e6111f40fb0945784cbcfcaf63e1dfa4bb5e4358d7092e349f105b6387d37e184024669f82022c1bb119029831be74ce249c9b2998731c4da1645b521cd5c7a8031ab3df6d49b5a96b78a7c8bf5d2cbaa05594671405cb71af11fcb9c76961231b33ef2e6c1ee54b39c88cda3f53d954c503e8c965665d3c1ba7c79a196b84541cd75c6cafaf40ee577af917ae80262d01006607bd1d05370416e40b270540de048bba9d600c3d59a3c6aba1c9c8bda72602ae0124cd75c348bb52fe005a54185b995e10f9cab9c9bedb0098c5a8a770b12f82a9ad4de93d75f6af361930728b252ca9acc6ca3de60df6f623f6848cd5b0b407f2846f27e9ca5faa2b04da10ed62acd7498358a22e26e5dba2b781584e4dc785ee5de027d2f4a7d49c26b8bb8f9ca8c67c6431323944fa53ecf39630005cdaf99a02555f3f66356e682c57e62e8ec5cc2b1f26ce2ac14a0a09f84ba56b68c9e223a040efc3224df7827078165c6694098b876852a08f06a6b4a96a9d551df1ac2b2ce33bb3a9b11b828a40f8416c42f15908a8f48ddacce00f9c7b090b04f7993df7f91cf6914043b1679969d357a728232b3b9f6333de37a000f8a74e36b616c3ac4be6fcb97ceccef185cd3070f801b5aa5410d2837d441c415cfe1e7321b2efe648cb071e8210060a156df92c5b87b87d6a1b2afa8a12332fd748d16eea23dc961c661afa75f3c4efedcf339facb2bc9addeab6ec89ef996fc59722816884dca20142cc60457c8c81c5725d48a289da73161c069283a973bb324859485af8b8f2b507b49f110313a4e738066fb1b820528066123e3dd92ad601814ec271574999fab5e2e313a5e66087332261ebaae53ea7f1e5843352804d50a46a51e0ae5fba886ce34d932a13b76a2b8da0084c2151ce35995f5def3aac5fc499f327dd37ad003c631c9dc897d278df320ad33637dd6301e79c027b8bf325176f0aa68bd118d25099a509d60f0dc8047d0434baeaaf4d56084ce7b2433e6748d98f87c1207a0c19aef93849559b41c56402c8bd6a9d280d39ee20c21407a853b17fc1b7e8015aef093b52a99edbb6e64ac3efe6bf76c7a4a0df21aa330cfcc0f76bdd1b6e704f31fd12014321b389fe39c9f603a37a4a07bfaa0e02987145d078bbb9f9a2d0b6f510b9fad77c071d500b074821bf8b7df5c4b8ebabfa04ff3919c25155ab0d8d4f660f905e09c3be256edf677af3c02616f83eef77ed684da40e60c99dbdb591ddd12e362f548828ac79cc5e1f12baa90b99d19c0ad961434beee5010262e5a8ad55564519bf864c731899e319e27376f43ade5a704db1b19b6de14746a696b0bd60ea4c0176f1711acb3fd3aa69d4dc6b5edc460512b09f8341e7f3589979b6baa77ada973a34bdf6b3ecc4ee9f3ca529abf94eca7fde35e456b17ce6d80df811ee2dfb7047d6b0720a2499c9376ca12c500af860b3b8446a0f4093b679c4477cc8edfbc01d4303b79f2b394475364268cb860725a0ef87ecdd4f1dbb9d5fdab3e9aa590ced058b78e3a3dd1767d3301691e0ac2dd8d0d5741580fe077da9891147c1451754d3773cc16178a68bb1d33ea0dc82451d862f1236055190d93cdc429a39319ada99a89312c2385ec2d26963ce974aaa441974460d38f1e2a719d398956d445e23c4d53c1fdf09890be1c54847583e4ccb0957c22acb7890a2e9f516ab14ad1a2a8d5eaa274adde705d5f38c707bf9770a06ca795b69d9d6884051c5124070d2f39d1bb48c999d56fd77e7529a2b6fc97525223d30999cc40df090f583d73e8f40d724caab505f34a2f031735ecfaf5597e544dce188b549bb31cdc5ee8ea5be183506f503b192237c315d13f7a5c38d1b5a8d7722863d8dfb5a10435f18840029b1257b693c7852bb9e39bc6f1c4b1e4d11c64ad992ae8bbcf603388720e1e7dc899f6a79cab9d2f0da1f180a53e0b58a615380396b7fa4cceef0ee180258abd852739eb5fdd3b4c78b14c38f9a88044f562c481628bbec965ea0c80150898f3152e0f1f0d216ce3111bc2c4cfbd1cdb92dc131f112feffd85178c44c820dd80ee3286c5b3b62938bb334485cc6f615af0f22988964ff0c355559c0edf6419387f0527030348807417b2c082c876e6c1859160c5f948194d555c95dd0c0b22f6ff1355a04bb7d9dae1d1a2d64dfd0bd6bf73fd1ea95250b3b4d933f69affbebeea320b612c79f49d090537223dda978890cab51a0d7c9b3538c4d119539bd820bf3cf4662235148120aebad5b65a27b53cc7f4cc2bd8ced258746ff752b5e69a1d4d2caeb731960701d43720a5f625ac02f15a7f4beec1ed9f7f6cf7d073e4b1185ca06d014aecfef26105e23fcae849d350098e2d9d3eee964a446120c56b5f42d56118d4ba7c984b3d14bc09229d480c53d82fce75388c337850c84fc2c12fcf0f0899807ec1981038b0f06dd8ea8e08751462112e68a32363e3387d92bfa8fb2beb9f01f81f3ad5302718c56315db69f241b9cd1cfabc2c7e0f71b45d6ef7649f7240eb8c578489df870a99c0eaf9c17fc023864c4e6008fc191118ed5b19009a0a4e02a79d06bf180a2518dde1c05b9b78a5397985af46e17651725edc979b9e300065a06301fd70aed9d039e6d5178c062e91fb47ea7d447ef541b1119ee5dd671174357630864fb7f2029f4ff56dd0afb87289224b6e924dead7cc9a051a249531a59dd980267c2fe8929799358e427a59b7e6508af46ea063db683415b01c276a05bce0e3b4fd16d181c8e33fc66a21729e4f5d4557fd221076e958b4b1925984a1c2472d58e9febbc9f5064fccada66b370aeda0eb41b834550fb6139d79f33f27a21624292da3fa80066414a0614071d9797df21d71bc650d7f4f29025c76f00eeae7a625d146da5f0385d1c2a372192e84c39847ad36026d74de799152a52deed2459562153e2e926ccd138c535258f15fe7ca72df8f3510b2306f561b18553436e27b1b712fe7bd65a39b0aa12ec7db8374c4d6ac6d487ca7f534d380abdcd11deeddec2b64763e4a710308a9d1f66bfff692537c164376ba895becf934e601ce83f703b1e3d3e50e61e97654c0c3e3341ba6865233c5e9dfb13e2dd28a301781e36b260070a53fec097a6bf6f5d2e36ab91c7ca024bdb2e724f9b02856041080fdd476ef656686c59b09d78661e5d2a70630ce5363087fbb7809a39ff7f600110e715fbecdb1c01e7673b9c26837e47be6152114827cdcb2a7096d3f2aec0a354bf38c3ca008c82f726f3a7d64e051f4b310f0b8709fe040aadabe477272928ee215ff8e4521af611286630c14fc181f9b8383fd95977ceae6183a1902083ce5f6763aabf76b693aa7c3ff061b8325d7237cb37e46e891a8add380eb2c88fad4cac82db3299a426e972258691f566d44958f3b0897a21c8b4e5969647e56691d73d23ccd06cd8a098c50e845aeeb2cc78605ac683aa35ed082f990f3e0d8f01831438d6e2fa31f83d422887893123fb7a9d53a6800c5a84a720e09891b3984dd41359deaf061075a65f91e517014f68ef928c0fe18cb11e38b6f0a2562c54877c9dcda6daaee0723662a81f0f167c7c1f159a9bcbba0022553d2e0be1e952de833ad8597e2fc58cbc0abf32323c16b323422003e4c8466b003b8316c5fa259ff6357741ac7ab06364d219f4bb9560729f43f9e45ebf0f69ac2817da079e52f30449a0480ce5293f0f3be0248261abe773f90bd562e983aced527d0a4bb99af30178a7f3039dd3764af60dec9fe0a396bb46cb6828487ab54e4f64e6383e0b30fe8e3f0abee5bfd30e750f21525269ead5dfe2ffaef263f0d8f512d49226ac60b4123da72f63940663bc9ed0fd1b4faeed7aa67d6e96898f8b2c877a82f94df9a48b0c5becd584dbd601ba12ee6b42e078b5e3be234f165d7390015b3769e19e64af54fcb09a0339bd23b2af7ddbab998625866d20f0f0f230fc6a3cc6546d6f7b26e16d9da1316fa854c6e03628a456aa21e9a729e6c3b7e52310333077f04fe91342339b228ed8bbf023e045a667162663a68e25086a034135649f393d669c9c253d34f5911706cd0509a4d1ca4c333cd13a473d6917687f8abada56de6dfd4fe90af3c8e4cffed3336923a8e9193a8a5af0bb6d9bf15a4eb8d4dcd5e9a4ec88eda2ce4f6b25e74c7d5616ad07df9b94e1019b5b3f0c85ce7ac11cadbfe40b2f8c9cbf792528a72b59ba2bcd9451473763ce7689b312cf0a4c7ed85619288b94c19d9230e041ab6a6c053b2bd0c8d823782ca7ed86b6d240bd1c20c30484b6bd47540b0de27f20609567b6c010de59af27dc122787888cb66449dc54e1c0f00b417c6294142f7a7a374af83db13ea712d21efced04fb83a872cd7e3692c59bf72f652a079398d3073163e00011f4f9461ebaf926835ba23121407ab9c4b16ebbaf2e508635d2bdecbf4c8c42090e164f9284897895c042958c1fb3200ea05443a4c72df0f97d604e7d4f5d2e1d9a6b3dfc6e5a0c50be0b0de9d9af0ad33cacd6ad30cbe577dfd9122b582ad661a34ee0ab18c377a00181cff3ce2e89151495c59ea1063ed46ea61bf3dd47f7a644ab38c6dd3e5ee47dc2c0086067c36c2a0a6bf1063ec15c0f3b288b82fa69b0b778f376b4f2ca22d601e8256d34c02a488035ed49284d8257928a4ad7694e3d63837470b9b890152ad706b538baa854f10a43ed544e244fd0e73366a32f3bfe8d563570b7f536475472ec4dcd1ca9a2a8ab22e26547ad453dea59354cf86028c0af982db34208e0b56809ac6c79aa8a5849cd9e054bcdd0c7e3538249d29fe2b7be754190d172ccdc15d6b7d6f053dedee388af110cb23ddfeed16dff57c61750378e18f7f7be552f1ba2237db657d6f69c1b24dd68fa3dac4c77648e87d60f960aeda42fae98ce33882671af8964d2509af59d3b16357eeb1bf04eefc2708e8b5a9c460cc855a1d582e49219abbd544de32c14d4e7e12e30a393a9d15bee4e086b50eb01c2a1745f65f9aad8e9633e4e9a22b4a73af89004a81d0be5aff0d41227e416222f1063477d84f5c72a7cfdbc91ae4b1740fc248f95564de62ca04cd4fa36d2d2afc5acdc928d9744e6234d5f4fe053ff0c2c568a68142b37b3fea1857315a5051a2c8e675f1d8f05a94cff9428edf15728d2dad7c8520ee46dc12dc66bea3d021d649903dfbdde283a5b41ed6359c6e817a783c14ec7431fc0a0c7419e9d82c2919f6ab5e793d17585b01e13c847d1746a0dad2d1d3adc941ad3b8fdff15540c9664afd7b9ee75267613f976e36c712cfb1cf4a7061b5147c76a7931e01883f748d2e5f79e69dded6d8ff0e44b283f3c8f789e1cc51d11b5de36f17f22824caf9f5d7943dcba15ea3287117c5f4c29b1d31a9a1900d5f70ba97fc7c85abbe7798763988a63654cb7dcce61669be4e2a4c929083997875938c5f592ed305304f4989cf1488ee15a7c7919e4c1c38db77f0427fb67c3ad9c2e7f31a94424a4956e8a7cbffeb58ddf32317e351d66adb7fa7f3bfcfa3a152dae0d3f71c065a4f0a8414fb4f8bc8bbe6c108e7e124b23b3dce5f20ea4b7e452e0ea81b29787ea379ca8a7b7c06f9d267b20e7d45302b6db6ad4b79aa000bb160f5528ce5e2500eb8f4b3ac3575ea43beded057b75ea69a4c461c2d3da0fca3a7ef6fdb679324160a10098ed0ff4feb4817c01609346e405ff787165fb83500738c204a21ad2ec4f5a703a5a50aa59d0fdd2b290f768d76479cbd9f243dca404b5599c34f767b52ab859b006d8b043619ae5eb85b3935fa4c9dfdbf74d7b4078af2b6ca5c9a9e41325de6971554b7c8fc4a1ae9649999aaf94d3858571e30f4dbe6fe4c0a85ed2b525dc879790cad6fb62ebe53f077d1b10dfa40bda08a2ad009941dee3110cf07038c19c1f149de591369a9c027c2f2c20d2e4cd308ec1d0a0f3cde0fcf79aeb9dc078eb7375e01a0ab7234f9b84bbc896a11428f05386928d987611ea701a9b9b13bc788965320d0788ac522e300ae690475386ac4fac63086a004cd804ced3720f892ab13ae1e2b1c6108bcf68e87cae39e8b38b24984ab49648a2201165bcbe177895662f419d575fb40018fc45a464f1f0487633de85660eb766d46bc0e5f33970dd1aa3e38b01f11e2b8379d56c1b140218f7c41b0d81d43d4ac96b567ac23f0efda7e38f236b3a3322185232802894386b6856ae9ef162f0b6c22dc683d9d415fef5da49877c6210ff93a314d3a21205abced7455be1e5945fc435bea734ab75df8208ae3f3b2b0ab21863ad759088d3776eedbd3c420540c04479779ac57f30b29e59c7587b38e15f829f8ea03449a4897d7b32cc310ed1393dea4cabfac3de8b17e7f9c16630ec9d010818659a27b8a34b7888079dd5a825c63a908f5f0a083107ea3c4454cb0dea8c9bf291f63d6275bc12ef8f3ed9837eab7c453e89bff4945bcf48082ae556a4609a45ce8856577c806681ea3024e2372c2f20aba7b914b00f9447cbf0074c7cf51113af7440c6791249ade6337300d89522329ee61c1344ad6a8969b872f56647da1dcdeded1112a5ed41fc3ed096957402f3e1e1dfdcef866708ad1ea262695d6c7bca5019f290779736fd8eefa85306eb0d0c4fe6aae7d419fb17820e7eb6222daa67841f7afe92546b52bd4b357cc65ca8d80e1d3f08c1454e796473b64ebc833d2420bdf731fe399809200a2205631c25e23ab00eb6a4441b5d71bf130e21003d693c7db1d5952326e7c25c81251c20d4afd7847875d6e9ddc56d30598eeda6d4ab2c9d7520486deb7e44ecea178ecd36e7e306d88de182510fd27ef63cff6fbb2402975e08374307cf2ff3447ed043cad62f9e37b55c8e005a86e5ab9f593de8a89e64eb9def4c9383e6a08db182fda6fa781f830d8eac73d36112be667eebc5508791f035946e0b42254ec827b0521e48f4c969ed923832123c75d7a5ebb256b058a50dd147f7f12209241dc9af37575466f442a8651442e3d74bed431934aa253e8e4be3d523c3aeafd5e2aeee75ab220113c3ff5153b0238e5525d17e361e323391e849dd9617d095f18b64f7a4ee73e24b7f462003a1cb0811b6e90b479fef5d470fb623b50f03d95028ddbf5d891545e3c4163b207dee1d1fba792b21d8575ec31fbccf09e765722c95e166a9da397a0713f565762d96874a4e7c5d85d4a1cb31978412ada44d619555283e84d5904523f9fccf30e8b262958d1e24ec62a7e8e872580d10d5698dca04d51b3bb1f38cb71c124adc018e8d776b72142d1a0b30065a39a5b40dcde808a203aeeb94e05dd38d41137b86e8c83200fee8f860eb785c8f201c337cc69411a30928d4c349ad6357895e0d4695902eb585538eb807f18fa0da048f34ac063bd81d5ec0b5a806a25643040c5de7a174c9824d32287a3a29f724bd6268db72b8576cefd72b8a04462faf520fb3ca5010303d7d3e9275906fb86c08e6e8a3f1cb4d0da3f1463f9c477dba49b4a2776b2a0967bbfaeb957cdc51462dcb6ac552cb6216230c2fbcd702b63f6861baf60811dc527e957edd39b7bcf63cdbc61ff8d8cf80025f608500e93f369bdb9837f51791eb6479e2cfe94dc750d924701956327be4fbbe3677c6b55b0a5cad474f2a4cb47b6cf1669811996012694be8d30e4c57876d1f6a2d5340251d1f4344f8e1cfb032439c5b8f9db4e45f75c849f0d15223bd0ff7b480262860fa0623af5bcf01e3f930ac06c43c246322cd8362ce86da31461c244e342adc25cf9f1ee7f5ed087a98ad264756be6639c6e7189e5bda83406881af3784f46dd58999ef8c317195a4b23189d31be0d06b840c5b9ecb3afbff2076d358121e1785b608ee11b712222d32f1d65036e93066919c081b421a1440cee851f434a906e10b318be85be005bdf9577f0691ff754150da535b30a74112ad0c492b1ace7b842c90c3baf414ff6296f0e9eb8ea3c2b732b105f2511af489ad416b10e7188d775a053b49fb587039ec6b101a9f03c99b5c6ca2ec9d33524ac20746dda663f7dbefcce11755508cfb569f17029423e1d428288f6164765fcaa0cc60bbd37cd517e84a2981137f8566a3136450f3e46c24bc33b369873787a04f3e4e5333ade36cdc9bf9228354bed86f465dd2a2df386db7cd0aa7c2214abc0d74d4742c7c3dc1a63573beb98de7ef4fba6dbb17edfdc16ac48c12492a25a9db1d9df6f1531480c364814f25880b41a9550fefb6cae619fff2bb7d4ac4fba8896131edf9e988b648f885ba29586acc0deac820c89280433314d72f8d1e992cfb80ed04edec713d85e1251d257fd66d65e0d5fd99a8b7b492d2cb84ffa385fa367f86e95a159427da461eb8ca81655483352e38a2d7362b6c7b041e1689bfa310b1b1c7e4b1b477ff8ae6b2beee666ccef26cd915041f34e64fd8dc1f133aaa6b7490ca8564534a423fb9591d98ed3fbe78422243427e593175b45f1804103116a7d1ce4fc1e3cad9e16b0b1d3a2629d86636ddff7784de6de1761c5889fa747280a4060561e1e4225e4244920723eb2bde4611d6bba80b00bc381f92e51a5e9ab898ff2776d302e0f5f9a44c4c33ff5a16f58c764fed49a16e6e5d48b7c1750a53424a54a4985a35f461444dc853df2560a8cb2955b0ca360ddff9c286a8e6cd7b60a027b2c174c00e420e1e0831c19914c9169e2495dbc5480897793998e4ec3bbddd7ccd3607d878cbcd916dbbdf5cddceae233f310b6ed0df35af8e159e9023d7b9690a7e7e74c2b4ed6c1f8bf79fa4dc160e9fada86d711edbb8dd54650f4d90c375db3edac4704f714165c220b445eb3263dc6d79ccb8ff07b6a6ae19fe38831e18f30bed1e152c363a65c682fc961f86a878a9abf6cff872912aa42602b0de99a6e9bae478a7895d27ef4c33ac8a72934f82e12b151b250045dd1ce659b0cf79249aa52c34248b8eeec3b784f1bc33900f2ec070a54fa6440bd3adf8c73055d4b63acbd5105b6ee9f112f83bd0b549d185ae983d04c12c637a83d2c2909eb5ca1f1235d2b286b3852152e3ce4806c6cd8e3376863bb3a02fd82ce428e3588561156fa76b7e9de46500f5d25b8e4b005803310b56e8c98878a841ed225bb463d7c353828637f1250c05db7f630f53be5b5e8befbac7dfa41bd63e3744f3de02b1175e8e280f7f417c1e05088db4053917c14fd69467c52790be6086ca4431e3b466f8a34f99e60f83793d1fcd88580193945e0f3163fa4bb0bd9260e9a56a37ce1dda57bd2bdd5fd6e6e81ce1926ac3a56ba8ccdafc7d6d98010d3dc3bc2219ecc1100966a93a6c10c225b4695168a721c1e28d7961dee5e28512589d4dc6ca85a34902cf4a72b1db32288a2ce03c1952bf97bda777e1f985633a7e527e0a4462e939bb88173ce8d16b4621fdbb848e88ac9ac5a3996464ef9b43742388d15379c4fec754c3a9269a144a28db1077ed80dc3754dae9b833e7526a1eaa9efd1726098c892475c3ee82b8b1ce759b2d72ab0c206a6ca322978b53d5aaece0dd0c8838d1dfe811538369cedf81665e79c9c2691bd5a771e571421df91883858584d0fbb5f0669244235e97acc44a2e1636ad13b0cc8ee71bfc7a24571bb47d8eac879229d9664b10d2079584cd81f904dfeccef724acf3632463c45353ff985052c57371a5532e79b7c2628e1f204b6ab935b37f50adf6ac64dab994df89999cf3657ddb6fc2af697e62ea680dd32dd7156c9a629f2a982bfd659af7e90b5105bf99098be25fee6f947daf510aa3034803614aaaf2416b5c8e84ad4996af62fc724edc6a953eb91dabf16b8d372516155b68a3e780f36b186c8517722ceb5dab653745aad54e436b2b04679c18489d8b518d5f5081837744cd76f76a206620fba33571fbc150deca819dda2fad47f36d39bd5d7c48364f0977daf74a704b60e11fce40aa3ead730a3e6609d382057b345f454879ee083c91fad2847ecdcdacb45a932a249e28245ec71b80645ab49e1f934afbf43f2b9ca030b49388867d15ccacf0959e17f8a219c72fe65b5bf5caa4a2d7e55fd6313ac2196295d6aacfd48e60972b132c367ff7d9a2d350beb017bb5e9aa3c90d501186b3240218c3a8ce9ae29917bf1000d3f21f6b3ad32b3a2e8d0ec9a2a80a2c136d3bc8d5b427f7a4a25fb225e8dc8f1b21b57f141e37ab736f6a9684473d68212a2a96597fc6f13c5df918806797b7844f0b845faae41f4a7cf7f1294019ba8cbd7bc380b59ab723ba74e551bde5b6d671e3b288b38eccdd3110297e2ba72f66f48acf815604c6c8268674e82fce944c6fe92ba0e9b1efa907ed430897d1f641eb1d5abc93b3d98a309d7d9747aad90084db96acb4abf0ca0cfa5d65e95310943609d00ea5bdaba6a3a08e1b6bbddb0a617e8d4c9417e75231d951e9a787bf5afae8e05c70276812e2762ee5f0b49bd91ff63b28c9dfae3b962a7e8df5e112b8f599b6f7808f589a733ef602738c2bee5077ea0c32b1a3f3c784fe6bcd2ba51ea4825ec8ac4dd5dc0533a2b861caa232cf43ea556f55707a2ea344a42a9f8f0ce4336c8b66da87e1537bc5914eea33b9a683ffc472d0f02128866495a692be704d2329016e1ee61f0e4463a1d9c5c5b5856afefd222aad5300cc2724ac92eaac38da59728b071dc5ddeaebaf1f61fc83c3426f7a0f88943dc6ca0afb614dfb658a18fd5ba7953fec4613d6f1a23ddbdcb6c919107fe47233de7c450569ffd500c2f117f5c5166299bb26aaeb2adea2e74f9ff8f137064bb11d4495f4603d0f5900c3044bd300e48d72ae601ec7c48f7f05af758b8fed7c0ab17647e7d009b2517cc7f9c5b3e27ba155c02d467f1775e7bc50dbe86946a1a704bc97c0914c6485ea49987b1343b3c70f20a9cb35ff3a5206cd6b7abd3fbaffaaed08d49f8c327cb9d1d4c8e7bb5ac01d6393d4a8f8498fe19d22f0afc279464a40dfdb14b84e0fd517f9127c2d8109bd54bbeeecd9aa676d99b884dbbeb49e37a8b11d56447ad564d9eb5209fcf4ad2fce0a586fc1b4e466706f6ce504349582cbd786690b2fff4d815fb3fd786121a0a4d5702c0870f3b72841c04675a63a4c16875c5763492af36c6a0941e701913ffac38319da9b11563ae8f4c2db7507ab9127ad26cdb9a233100191d1a0526f5352c8470a12b0a8ac4c57a3e245f5dabc908f295a9b9c205042e0d96fea2a20a01edfb3c20d55b7f6ba6146ced5263788eaa4b2c8db9ac00b005c8c9d7fdc212af7381d81e40c0954d5c984b3466b30b18330f6e97d71f5f0555f06c505f57d0f24dbfb925df1ca99bffaef203a8a717388c8f0f34723114da29c58eb5a96e9a3491ec30a3848349e812abbc53a06f0b10efab58cbd451131f1219be8818e3de80748f4c1315da852e83550c8bbe1c187cfd5f75282e445b94833de72d0beff99dac2dbbf47a28de2ce7e1c755198b1bc1224fb12b007c5d3fd0860e05ebe288c6d81126d4c65f9d881b970df2778bbc96747a324da9f025405fef21ed091a649fac5a62ead326d694bd21e8b8855fa27aa650ae0fd66eb78adf8402bc5a65daeb06b2d077e660cb1a4df6187559a59ed9ad4934c798f63e7b9f5d117633e4d0bc50a0405b1d8bea96fa8ae93898d21d82e821ca7de619bf3808010e380abb84175b013079602019804fdebfe2f183fd5cf0dc7dea744bd84ec9702f8a823bc68a59de01586b7a31797a3e3910655339b7672ea84e5f323e7935767a25d46f75a22727e26efb7e68111dc06989b3b4968fffe6fd385823fa65e4d3efd637d6bd210d9b4bb37a566676daed3051483fdabcdfd49be3c82190d648d800dfe1194eb3529e00b09ed9aeb2fcbc8c59a8f36f50a66ce660d5437d5810c9a252ff70afd00ca52c73697e0f27c916f37818df6be18a4e4db29f4f3aa6b2bff90877660498ae8ad5eb67d3ac9dce566d9e43df976162c7bcc3cc58b7c08bb4b7f0692ce5009e6d1f554378c54619e65c773ad08930ee064931b4c8505e7ca55eb76692c16f551244d3ec5b02408a42922118734110fe1f88ac3f79b3a7baf549d01b9306b143851a4bdf731d6a0fa5f4c7f3f5ac426fe4a93c95140f023cbb8a8195f96510e7b11f738dc33fcd15805f3df6e0fdd12994207d512c47aa46d572f38c739968dcfede5a3792a20f9c174cc11d1f7272075ef5549c564ebf37333b50caef00f222cd3b00596af2588503f533bf260ae7b2a65be1e01da113602d15b94e9b15522323c9159764d2969d03e0dbfe265b47626ea527a2b64647d20bf538ae3dec82f119c722c4c0694cb7496d719b05ba0506c045b8b1797bf1fa3fe405398ea264332fae295849ab96c8013a3a3c3c542ce648233d0067bee4cd7c8a68c11c3319e54ed3df085c6f84249e67cd0a1d3d64f3f1d8f175fc62f7ec0afd38fb2b99b309d1f795ceb9f71e78db114298a1e32ce57b6e4b6fe65a55dfa0f944328aea73a44b02209468b6b51befdba70bf43fd9c01c99b0e47dc4be6677e04e4204934211bdeafecebe45a1ee25a95372cc3db0afbd403cc0ec0c487a9d00fc6da18086337aef95571f4d4acd247b185fbb7fb59bd3f909d637cf26750501fa1572911535af37a4c5c0aa64fa149fd2f46ab2c5ffce3bf0b876978eeff1d84021855f84fd5e37b89a3f8b2f23a6ba0a68f112fb10569a9f9b3805093c3eb3808c0e7f64e6275ac010b0079148cc154a69e83c16e3bd8c2e2e793cee741acd64652215e6e4f26ef4e648b9a47555a50b798ebb106801fbcc1fa00c89d1847874633ec5005e75e1b795e3241acc38db3ae6f37bcde421746cd00891a07ec02eb0611461c3ba7759004cdbd3f5948058e2fa4cedac2055a536ad5286c7e420e3e261b0f41f7f83c76f1b73d69c5bbfe3347566aa3c5b7c00e366598acaef4f186c95a08ecfc9af53ee7f013a26ea1f1f7a6b66e2105aaf94d09adc1b49dd39540756b8ddbc64adf2b2d17dc2f0aa19d439724c42565fdb77fa27b862097beaabed7473f190aa6140c3303e6786adbd55c97279c961850ae196c56fa03af872e61e4ceef93ba0f4688ade61bd1792144dda8f62bb889720d4608ce22461697841c28780ea0101c75eddfdb17ed6b44aefd173743305083f1fe765e6b391c4efda8bf7ff107eff4b4d55426b951dd82ee2ae8536602af3f82e3048eb4079692a9ef29a90a831feb60f2ad1b48bec433cacf07271da4c16ee3a56367723c38c8a888e55246e9563f372874b153534d478237417d5ef5f9dc11d4784b51c86d34ab06a4ab20bbdac2e477ca08340a0ca3b734a2b9f47b27bd7d7f879e18d405933f2c9d9a7893d368a5058195e0a89d47313e9cd222bb5e95ca409a7dce3869b7c81b773213f023c63a200af1154e12ce4e667110400ce962ba7548cfbcce5a83c90de39d9cc205788027c7e3eda915a955e81b8b1967035c31709cedefc9ce7bea2a624de6ae4faae4a1453435106c3d98c238d073297f40ac72de4be3f65cfa0fcf89ca3e1ebd6b350492e00fd1ac875e1e5e2db0b275ca2695788f37fcc18bd26c293d591c7c0d47c73ae5308e8fcd3399b092748c19343607edaaa4c48e2a42d3069c58b1b50e28585599b2eeb3c22193f192d414c25e9ee2bd35712b3771186ffa60118c02c49261d838ebe523b1e7746e70ed5dec0cfa75e32d7f9bcd0e243dea52eab20cdf737ef3e1e94ecfa8217fc132aa6c9b88ce3ede9c1c62c167a0d17baaf5d55d94be4116750ae084419b44c21e1b6512c09ce5a06d39deff849bbd9feecb6f0c438071d41869e9b4f508231864dbb46e5b5b699cd57ecc0c64ad45ace142906299df5f7c3fd3efc1da4cf3df215d11780f8addf8940cdae15bc32e8961e2135248b67a525d549fa5f1dc261be75a229f28c98d8e972a3b7de5edb0348a58b435e925ba44a6202e8e5654e570d2f0b612e4f7f141c747fd1e392f5f464fccdbdfdf7475b578f980e007e5355081bf38ca4f072992b21b4262f2ddee83eb53ae209fc1d63feccaff93a1a29a5866a0dbe70be7faa65e089ff73371ff4d5d3cc7c2a0911c91eddfc1dc4f28af6dbbebe532e6c6371c7e6953558f0b0132f39ef0a903e2989c75b5879bb9f5139538aa650b5771ff4253508f2e62508cb012bee85e12bc0ee3869170794e90f210928fa68552a48f5ccbc6059c0e2572e314e7155f87d5cefee0de63103a1645f5f90f576de93e77de55e35c7f794718dc7a79f168a6b8602f13b4b708e8c677503a95c629a5454bba8e6bc0e643f3745f23116ed6ddf611c5c016dd4fe6722da34367e1867dd2cfab96cc241e8a822350a2f37a603ace92f5ade967d93b48353399e70109a0d0009370498a80b46ec2d4c7e95f597ed6a7e843e1f1448a8974553b486cb9c03ae7d2319b23c9a166fe6807cb940cd85a9a55ea51d878c2fc42d903b0e0eb9da70219443f1921869ffdbad2a90a86bced3d9d76da81225bd5a631c380dcebb049fec5952386f3e26b96b96f650294f0bc357b3e11597eefde05a874c98b26c4eb8edda36179dc9212c8bbfb2559c412bfdee4d5d6668efc346312fde6d9c1752b68b68ba1e6aca4bff9642488d9dd37d0bcb6854de5ec48fd759077d6fdcfc0bcde1b45b4380847d904edf23b3687fb6f0961756fde8386825e140b35669cf45e347dfe20b6d53f45adf893d35d33c2586de366d0a7cd066aa879f2b063edbd1112f2e22c0e6d2e35db05e7d1ec4783687e7427e6c55295e00c2b51fd659d826b49cb17b53f70934de80c21bd74eb989f9d79d1cbb090b4b748135a7c36239969734fe8a97e38c6479f08f2d319e21930d377f9aa86c111f18c60ee5f05e9e7d3091dcab32f18c466affc997f8d0788a01a0699d3303599bb01c2a6ae7466c3ea6d96d47d9b14561f7598dc9cf6bc5f5b098cefd9f11830af0e52bbefdd8be3649afd2b9a97c9474e68642272dc1c2ddbfc89e5daa6104677faf0d1fa760fce2c784e21f82ede51f4d9d76654a723b0f2c59915e0b4518cfc395dc520ad782a6cf2200f332895735396353ab4f7e68a2cf9a22d44ed054b93496cbdd554c56b686223df23e0369cdc93b56184038a925b166519b0dcc5d49d867bd5d794bba42ce2337b3738da52e9167c89025efc6836e22cf71419fe905ecd3b88c6427061a38d579ea1b5d7d503001351c71fb2fd0bbfddeb8297f14cc17dcc83da613c626b0182f76436ecc6e19260c8c5d3d7322d7357519a041f7364679cf86dc9f4c1aff9005b7449f781fad05fce7d83ac8e32f2f9bbac7acaa133283fde805084e7d301f3d77c0aab01ec1277ef80ad4c0495ad3f6595b64c2dc2a72420d67de27b11e0f61a1da6c046b6a91b3978f40bbd0e34684a4fa69674179fb0bf19399b55bc2f4c3c2aa225f57eda34fb8dca5e6de916514fb646b516c27567fc234880942b85f9af8cb4347757dbcc5d148b83f3c94486b82e6a637c5a848d57c15ddd0db90477e4783b6284ed0f7a6e9c353b5313069644916973c2a3e357ee22912759b4263658b7f87b1230c233fb21e736da94c936295d58363535f6658e598fb14083661e65c1b3e968e033944ef3bf73d3d10680a009fa535910bf1cbf65d492aa50cca20c958ca488764b940f97775d34e2a389c07b84e572f22ba318906ade66a4611528fdc1613a3f874575ce80471251c907b63fc22f9b08fd80325604c41de571e5961aabdc58788a2c415ec29185c3a583f3565e377594fd17db5ad03a8f0b0a53989740e28d3eab6ce552a25a0eefba5d668711a6a927ccb0298905268b56538c1b32c91d27c08bcf1be955cded46c8a180b002512658cc68d9c660244900c429a34ef9df1fd69ed339b0b90dab024aa4744633ec2d837bbf43374ad11ee98b0f249b38ab8c4e64a8c02d37df158cdb3bb755a381aa6f6905ee29671744e98424cca83647303f8213b890a3900c860de70b5a18548f8b14111693084793211b8ee41f9b1a428eb38bd1ff766ab8df440683ad0337d9da72608ece257f249c5896adb2229a8840636b4864bcd250a4f6e9906d3f13fd48c8d186ae25548d4ad00b027587b89cee765b275a7f7cc6aaeee9f536cc2af8913c432d41970115feb3d69ec1a63e1200d165dcbd884d79fb68ce9b1f10b0165c3cd1a84acee15160bdf395fa6f63aaba9a43c9a637da5d02b70f9f1235d18b513243716d1eef161339b184e268d1c3c194f5f66f20aeb07147be7310077a907f21d8d1c8612a051c71334cde2502805dfea548ddad787f94544dfff785a43ad6e029ec9e68b0353266b20fd249df5b51dac6a21caa7c7fea42bd6c7ae78df657f739f66fe2ac8ddb363c3e35265ea2b254eabdf4728dc81c11d2f9f525723a8f1e2dcd9609eb2d655a792632708ded4453721553b84784116481cfd152250f51547244a60f9c97edd55d167af6a7fea065db58e3a16c9bc3130750583bb90af77bf9234ca68d72e7a003b45545b87d4b4418a99568739590dadf36ac95218e412ff63e199ce2a5c52809c1b677a30b735cfed49669fd7d7c6abdd91651ce13e4eea30d2bcb486e6779497902ea2d48763bc2ffafb6007f732be1813714d232205faa8018875b86d3a8783a5507141242ce8be1a3f1c132ebb69083ea115b0bfbcd3195b7746f155a0e13653d78ec3eb417b2e10bb1df8167e4a988f7a48cd8949118360ff7a58f11bd944de5b3c5e4515cad59f7c5bdfc5066fbc39922968d6870f0483477e928fa2edabc3f5d0070133223a7b9f5b122e910d2ae3f7ad2249daf8622e0a51b1b87e7b03551a61791ee96f9ca1b06b7b0bc59a7e655647dae18d4941db56dc2911428716176b624474f5ae252fb7b89023e905a95a75d9b59ae98c2eaaa7369a37431faa407b76c25acf3b55c6f5a1c5d3281d73f4119f2022b8777f27a9d4f67752e90edce643d5c7ecb6f9111f91a4a49ee45076bba86fbb06000b8292c5876d46f480ace6bbf7a4b6a68eade4d8409f978c557e938fdcd3a39adc33cedd7acab04df61a05480ac8d7c1e2eadae7ca9f94644cdeec03ad18ddcca10d02cde17e9b978b6767c54b9c33fa9eeaaa65df0184b1d1c260d5f001c6f8872b552dcca65018eb08a29bc9dbbb3deac39b1f0f93beeb0b97a6dc22f4cb1995634a04313ad9a4a1b56e1606ef53516caa5d196f4f4db00337b5337965b3cb7aab389980d35c37e36fed0c8bc5587979ac40eee4f563b92dab8ece59124f026619342604c13c2345d9983e97dc314197d041a5374cade1e992d0c2f1fa8d1f6df20bf04ad2658003e9b8406b6ab46dd882a142ff15b5fd1ae7d696be4eb86bb6e78a7b3b638a98bee7e5e3d079c712c4363e22d7d26da7d488d0ff881d942fbd0c1ebf5b6d39d58f2f96cbc90d7a9862da873e8b9fcd0ad80e4f394a70fca5e312abcee9b5b10380445abc5d79de591abbd6a32333b08a7d0d786376ad02c8031a4986a7f79557875aab06de77f46bab4f934a0f3e8d80190dad0cd8f5490eea425f3d1d93ff982bca1ab421b209ee7a985e7f366908ed07593c44617e1f5fd689a75d4dac2597e5ff1938a074774c47fb0153adc5c589caa33fc60bb221743bdd6e0f864ee84bc45a4c6333015f749db5c0958ac4e32066d3d49206076448b91dfea31d5b2514ff0ee5e968c5eccdfa90ad9a01d14904e6eb0cb4e47caffa08da5285710cea66123d64542ce6754e6b33d660361c4fdc2da6f8ec8061998cde9538af2848663555cd72030c639a681c5f6590ed1205d8f2703fc5753423f32ec551f251017aa947bd10bffdb2e21b7016af2cbf8837dfaa60cc9f05c5db3526be6f0b9df57ece3df1599314e9e147b2bb9921c9ff31a4bed0dd7a74e30f193e824f05dbd46d1da61f4e4e1659a5c7ae2f34b466f3b9d3b92d45f2a47fd3c8fee699c9d1f796ee401cc9f29476bf7de011f464a8ee9080a6ecaf54f08ac1bf296924e690aa50b5509a6884175974cf0998fd85ed0b25d744555fc8c2f6fcbd09b8c2222cff9e069b4c4327b11e987315286a04dc112bea406fda203f6d3ac5315943e7b9d1c1d221ce2f796776f897358bfaa6d0a6a97c4b72c128b701a6ee052e4f586dbf2eb3cbae8f14d104ddcf8464544b3f743d7a16a033851ba022483b80ee6d4f0e990dfa3ca539c6f9ccf4c20f23135da74366206a62bf8a36098f9d19b5027604780d30baba48b85f25abb7e0b17894a7facb6f7f08d4cddc50188b62c104f90a91bbd7f90dddac270324c8efb7ed1f131f2362a3488ac903327e1a508f7f29b4c54302c2f14682ed5dcb6550355708f2e0264b366b234d9846e435c3ad8854696c1c8529197d353b1d6d97ba031bf3871bbfc1af65d7d5b064d482b129c90ce2d31028305f543307a8d8276bf44cc290bf658c6590946ffbc76730f724a23b826f58377e0594fd02e1447af4636c5f83f7e51833e0267eb2bfce3917ac414a19794e14fc8732641219e5332e9e0c0b0dda7c47014811a3ce252cb842f6b39e99df8023f699b45be244ebef7e966c7ac17011866699611d5a98990f94478e90e91b70b8d5f44da1fcf960798c32e9ae490db652fe1bdd38bf0b8f1e93ecbda9d96acfd851bcfc461ce2ace32fd41efabd5644d7ad87242b998e7622b72acde93884f782c310b20392acfeacd964e34c020e59f8d1e556d19d9cdfbbb851d6825fe5c9fc4b762186905f57fcc71d3065708df81f3a0b92f394f5e062ef59e5c4134d9a9b57e92bed038d7ce7a548098f16b52460d3d8a0eb9111818935b0c747dfc70e1cafe5f7cd683ee51b8f8af6d00a4175fe8e55a29d6b514a8e69557798304a800f43603e3d7f6261e69d4eaae726b61051cf26c6b7553c5b6a055770502e9395de80e2f40fe4d36721ff488ba8e55564273fc000195eb082b623d130e6e8a4f2e90d90921389e3074005099864ff92961f406099ef868fb8dbeea913df02c1eba82ea87932b2544a31712f838eeb4b21df5c85751b2568afbaabcdf2ee46733105463be98e0b725281ad7a1d5cdcbf9151cf9de16e47a2d4316519e73a8ff2cd3c834783d0fb66639242e84451fe1784d13a8e95228a0a83b1abba6f55dc8747c86a6120da3b9e7fe56e7bf59939a2a9f2f73492b6064f04031785f16bf1878dae5585e047c6321ae0dd311592c4f0d0e47b21808f8b0ba0e9aa1b4fe5c4e8f7481337e35262cbc22b81d214337e3e51f627a4d52c4d20683105db0740440cfb8d21ad93526fc572f027a9cfc030fb1fa8b1d768818fbc472a42e82dc2aa3e5cbe1b88350a3f235a0177f830e37a4c965d638f719eca1109a83815f8ce3df35896828f68197ef58349ee44b01af58da22bc49e7e92232bd3f26053100655089d5e18058ae4fe3150f033139765ea66b2c0b60240d10cbe45d2f8f282a36322a9145db86e542c72ff07083deeb53fd5e8c7cbd41a31a7b1dc323850fd9becc7bc58f260e10ff286ad6199d2c67c99d995bdcb1dfdac4e9ee4613e50a547d3d0a06b03afa33ec4f84484dc16884ffa286d762148a018426ea12d19b5840726823d640d9da002938f370e036e29163c90d55c301e2bb3b72ce783ca6d0ffdbf92cb1b5ae22cfda21f99553459a6d36bdd4b33777add8235538a12adf9dd16c9221d2aefae19a0a08692127c19444d0e3f07226a383caf891dff288d3e9acc30c5cf8f1dacdbd845719e63fc1c99260ba0d282c480172a28584c6ef5263dec22ba7c64449bc1a6745f03aae9009ce8513d754fcb17e732ea7dacc1a9dfe6f8e09ac1c346e5838f5529ce713e72d358ca9458d171dd75470cbb90b7b3adeba74421ed09e87b66b278c777d969499c72a3f903a7044866f0638ee5e9d77d9cf0e5be020cc7d2595791285f746c13c8d4173aaf361bf8ad83807740504e47c540e344c431e31d2c4808304a3b423a8f9d5aefe2f2370fb98588d967d9a1d3340d873b921c72644b2d413bc9923a0aafc38c0c334525b95593ed027ddb644005202beeb874ff590cee17c64e599dd47323d2f6024baa96d4816ae8617b66f922bb4018f4570a1981b2dddfa6d6839fc88dea053235b8ce7de82a003440d976b13fbe8534dfef893c9de40ab0fca71645818441834a6028eeac455d1703a15a362df598bfcc53b1719f869c9b4c03dc1f69bb8da542eb88eb5b3243cd91e945ffa26241dc553797d23e2335bfcf7d6d020b01bc7c394fa76d9106e0d494be36e983aee5c04210313ec79bfa00764823b9c7526f4b405f98fa3622136ef77bdd74b9222a698270580ecfe2ca7f9ba7a139bb341daa33f38436a2449741cea15cbc46758294e1e1c88bf4f05ae7ec394a199161c1e98af1dcd8b217d8ccd68310f01726c81b06f983f345e9a42005facc478fe5b7cc64d533e58cd55df36e3861b977fbe3c653eb987f974754ffee39f92838538550f7935c113b7d5d002e0744ada679fd8d3c1bb90c22d6a0a668975c10e314151a4e134c52e0f7a8ea45d0c85ca292478e137d8d7c92ec3ab80e9abdf55e03884a11ee5f2ab1648e3747e70cb52b6adafabe2265f2833429c3c933f8ba936551e06e2b5b0100c0ea82fc664c58b3f88350a4f0327dcb9c0fb69fd0b8c121ce3ce1ec439c1a5da78539e0a0fc4fc8478ae1d07c4ecf016e45dacd0af33cf3e245e9eb1452b7c79817b6a909e2e19b269e3e5ca1620a1df9ce1cf8529e79761199ba4b15cbdc55321f81bc65e3bc1232a6b1453eeff88c0642a2c7afc89976ee76d2e15f305c3dfae806ec23c287a473028a1973b76e9f55a75288d2c94d3733f84bd12de6e05cda7916a7de9ed9f6c1720f24cfda0ed1d2310e9b3c2e311e991a85ee6b0c317128dbffe81ba506460d5cbe3605e1376c0d8356fda0554c8180ce7ab2269ba70b1261d48dd2d0124ba55b17ddfc1951a408a6b0d51926f74df0ae8f3c841635139997a424089bf53186b0616c391138dafd5645ff57487174f17d13e8946ace047205c4bf836aadd8035b4e05a76ea9bb524a059fd41d91e0b44ddabc0ce1b1699737d7492cf5dac64fc72cf63b8b92aaad3a2b0166e784fb273290e778bab97c64314244cc918759625b0414c4b18b6448942ef903f2fe0b309e11461e8e32df6ae501cde08ad9b302596782007d4f2ab05c2ed4e391a50bd891120f8c2d79cce8354f82dbb4871e04bc8d27eacba43dc3d4d6d6552efac27ab8e08f7e86072560bd543802a60b86155d33fbd84d73174e871a57ec95e1fbb716f9bdeeb6b141d38c83b247e5bcd021512da7f36f829f487c18cf525cfa298af6420f1abcbd4e234b4c750dfdfb32d096decb202347f716d5125c45eb1cb9cb441f2edf20fcc64e5c5b41861db90c64b7bada054cc66e0168d315a9196cb9ec7863b1976deceb16d8e83fb94376cf4b08a93669b51b42ae6c1c9c407990c6b4d7253ff9f6bedbc6b3295c44dd0afc3f19dbb5a2639c5e15358e03cba2c6c556d7d0f66d9f857432255f2a75c75a8b81514fc7d400c6d3c6f5a9d0d8e681a4d6b6368318349c4832a335a22ef77ce08677dbc59c3de234241567881f3c7ffefc54d31fc8118f91eac394b4e26e5351970408c32617228e1a95a478584645ff5bf23802d5ba21fd9968361f166d219bf19407e72e9ba45b611425805412c3f9c6eddb9bf2290e5162477ce7aad0f9ecfd462b0dabf4d534d823b372491d90f3799849473d1fc6d3063d90510877cf5f29d541322e59af605d694af36599dd36b10e40788ae76d0048d3dd436306c747314b9473363e2362db321ebe3a327a4011f85af5462f4a14c910cb1540d92b3c04c311c63f2e72f44cb86f402807c7e40a48c75eb9bb4dffcea591dab1fc5f77eee8d49b5086f8b64a48d186657a4f5333abac89e56bea826e1a0c7dc3b24bf99820972e3c1e269f859863f2dc24570dc9300af70de9f01798d70d10df70273381feb6e3363bd8ec0235d77b20db288b60db6e083228fed68c2ff1f1e2f8bea79b31053e6310e55980eb4e7ff4e97434a6f9882579394d074ef528be0b227f0d0225185cb69941fa3b723b225a301d5e61a3951bfa00b6cedad008829393e075386902c35f1bcc0a30de9f1b4d98433b04d8cbae3fad3e8f7286231535cddbeed9b5faef8cbf999af5b43af75b8cfcbbf3579e986f3c403f8b60ab85ad300d1ccb46ead3d8ccf349c13f9b7fbbc3fb56b4e324da1a7b0db5141a5a21dbe02112f97dccdc867bf478ccd5f3780a42c5057186a46de850516c952941ee20e3c2ff8e22d8aff1412174bc2fc480eb6880e2f979cdf0ffa1fdc4732bbfc734999c27ce4920fda99e9ff4469fcf8c23be74b17e86a125d34b803427b668af884b8d74be185b7c9b6098db36e1fa6057f072fd0c08293f738d774cfa39d8fbe90a3e72cd8832786c0121baa5e98728b43e740663c09f9d6327c6dd8dd6a3562261eeed0d7113cfe1fff8863be611b5d2811f49f9985435cdd2df5103aa188fe96b6e585367a3ebf7c2b9f00dd8fa9868975cd0ded69d981d0245a971c750d0e5c7e2cd5a04b0fcb90955081b577d8df13e007186f9027f0f7fd29262bbab6156fdfc5c3511f4568d33e67cffa7d728c31a01ffcf09bc9aa02ca008c2061bdfbad1b99a361ef5d0c8a79479e27620f3493188d709a79c80df02964d042e758f4c7ba19cfbcbd70d4c92693473c74ec16074a35686b82e16257e127942ec5ac7afc30220e2523546a695489ff11a93262ac94738de80678aa2ee1a265c49afbdc0ae79e0c2830bda5349ddbf51147f68d3cd9e928e0b0699ea10b9bac10442116bb35107331afbaa7673bc24cb24f06bd8b021f2e3deeba6ed24531f42a8c5a0e0b002664d4684869b8488c27f2b9e6a47904c7d71bed9e71e04525344bd606a7d890d272bbfbdaab31a44cd6edbc539dfe17ec709b16a955f5ebb8cb4f266c72ea41681a39f69e09b04797e8b70e993b61eef46cdaf3dc5609e7c3abed832fecb0ddec0c5fad2e415aaf924b83325b43e9edf427e0b99066947e99812df3793ccf5a29d67424f8eeca4216cb1d351cb745d699ffa12def60c386c220449213035ddaaf8b77be45160c42cb3b3cbb8de0d9bd5264ed5bb9e5b4cb0e210b285b9e0a1892558a5e78f90d772332e0ebcd635f3d9c3594990bfc0e430c6762778e057f8747bdf122a66b43178031a94e7e5d98d7023956b476c7c93f362c844e78510a8724580cb091a891c54fd8a4e0a92b0ec7e8612401225827dfb0e0c75d93aee9389b5a04cbfdb684779536fd8f285c8ddddf62d30e19b63f805706f7d86c7576009c76a6823e26528355787d5eb4f0ec3ccb997935720281c367e579fca23aaeab4bbf5ed0c64961fcfc37c55162a6fa9397de4171cbb023be077cfb4413072fef466c1035af9b751610446e902d8a8cafe6ccd592af7812a4817f11f985b48c4a56e54a28fd7d7132a745ce8591f135a2221b12a0ea08860dc0b1ab343e1f61cda36e292400770be225733a406038a980b85facedef9553f08cd9fa80fc894c11325b80a6c9d87e42fdf2459ada0fb699111f02f11869dc2deeab798cb578a99bf9a90244b1028e822bb142bb48f0ac4d0e32b58860933f4444c7ea073f095ec19453b96e6b6025a688e22eadf271a553d9ac4714a496a3d53579df96c820e407c08c27cb5772e12b6e37aa6a0312de002615c05f962f9be4f2cbabde50a1f54a0f6ded8479d7cca1199c500e184d291c3b936cfa88163f19ff8ec119d9a2d027af16b46ffc207bfe9ffcac03f0694f5ca20e4c52a53000aab882cf79c48c19478469ce6d218d35907364ec77f955caf57951fa467309759bd9d26f53d045379cdc2a83b8e85b1e863b2d06b354843508b5629800bfa9622d00b80d000949e4edccd790d37d38e6184172405f5a26007ffcf7ac403581e010b2462dff0e0a6ccb48d704503a7d8facfd6d5c7d5ba695bf213619bcbcfa4d84cdf530110c01dc268ca95d043353bc74fcb07ffda6155276b05009c10d0f4af64ee8b175c75b82a0fdedd14809b6d994abee2b0afcd9f07d865a4da7ed58a052bfa75d9b921f2e16e29d6fcf9355c292a71be08d63d561fa195cb903df12a1707c59e8cb101ef628b1ec5211840507384697b121d730714f8c7e2d11e4f8e3d7da9e961d98ca7f498f88dbe720417d9287baea6d2ce2372d728f21d4b345c60cd92dcf7cebee10fb7c881ee498196c6362a3de48845006bcc035397ec6fb1dd9186365d40ff4f25e65cd2973e17568e0d3bb775d3a777ef4ffff6595c919f84a1402e65b774faac8e4b4d6b27cb328f58e459003bb656855fc72e69b3b44940e5dfb489de97031eb86660abc231cc5970a11b4e25230e2671c9e1b08586160bbf066df7ed8011463aebd821c414507146c90c2d80422657837177adef3251baabc913ebe16fd2dd61947dc9a2ae0bbf996d08f7d8c9521acf2e2582901a2d7ba9c312fe6beb93cb6be67ae7199ace2a410a07918e3446d5202614645e999cc0699a1196b4377a6632f6efdad6ff4810124d66d87ee891da902129e5e071fba56d8d83c45cefd1644ed7c682eefd6f8dad27124914be17acf27acc1d74a274af136121bc724032d1e3dd5790a8e3aec3d4de65bbe702f549c7b64ccfc23965046e90a264ae9ed13a5dd66707b00213baffcb612fa2f3113175b9ca741ff88406403fc43e3feeac9a1bc82b024e68b5704b1f01921eb14c89afc08db6219d344d700741df0b53589800cf9cd3285f96f0424476806f63fedda6f273326d40573d09afa457445c08d9c2ed4e7396e1b5e45a0ae13e3b4e3d16813689d702b22791338ac9c4c4c319706761362846f1083695dbe0013de9f1013cd18a6b5bd2c587727f0740f4537b7c174c07f69bc85168198593b764c528a710cbd356d4566641591c1ddf477c87b0cd2dda4a522d8a4e7609ab982e5c05433f9c54145b9093caa6fa1d2a58e49b8da29bb6dd5aa20986790c6a63b314c6a7689572a5fcad9c2bb5df061b3baa60ed44c5ef5cf9ba4722ef2cad42fe557db2cee16d222811134075395457f6222b30d5c1d70422ea521c90df71977f865cbaa7071958a82c436e2e90c744d8629d9358dca3c323c69fd40e25386cc18b0c86ef088cd39ed50e482254570ae760c220564636d756ea85821d2a7d4f1392dfb5ca2c8e9270ed02394399edc0c146ea7b5cea32f3fc4f9ead2e0c433d943605f97c6cfe27d7e2418227a825b5ac19dda1a9c808ab87a0f5e7874318d420d363e1d80b6ad1f9f4b4350e12a577570dfe531f16ccca7d9b0bfee86f127f67eabd8605dd6e27ea5166afd1fd82ff55bee020d67153e44c673a2404b99aa23738895d2fb5cef5a1c6d32f2b7f9f8c37c697818a842cfaa2a9d502647f1b2ad248314df750ebbc9b2cb8e1087f194bb1728fd109b4cab0c86034d30635115743725ddb8953deb424fc1379d84728706ff8f40f6eb3a8369aba5df717e39ad817b96e329fdb96cfb928ed6b940a32a7e41b77d555d940b972df60d41ade00097be0a9b9abc468f188930c89e91f80979bceb81d6e755d807421b63433fee81c03fccd09c964de07e32ab1e166141cccac9e08325d970ed57760570bdd31d01b9b6914c71498b6e4b65318e024daaf3ade1e520c8a1dbcdd8465d0f5c14a03ae69135536deded8605d9161a92dfaf67ed891d068b3e6183b4203679cb80736305eb6146b6a4881103ee11a060ec88ce285e3f24fdcdbad8450c7ce85bc03694b53d43e53a6421517aca2aa1321b675483934c5b0a95e028b1e40dbf66c02b9cbb191b610a92103433594967ad864294ec8808c8c3782a707e9deb4a27e5c96e369083589514810e00327be32c20786e8047c97a10e8021f8aa19e7fc0404e97ab4934ef44310f193a636a1a1c463f5d30f7ca5d2b17e0cc8d49ee8eeb5b6d220b988b1f0e3aa5f81d41a4236b623ad6782805d99a619c8bc3f0134e8add239dcd981d372243f930b4501d8917802fa6c5768c2f3653668f97d95c1f7751664be1fc05a70003820d3ec23e7d1735d21946906a5b9174e6305e408708f64b0aabd09a1dedc1d5d94dc430669334f2fcc26192127d056d90f1412d68fb6c18312cb0f770ed65edb5b97140c6062d04a04301939d27c061c90902826c2e6c1b40283fdbfb59d24764f9de1ff1350ef224dc3facd67c5dee2b4f3cecf1b42565c672072f9fc3fa691e533f8101661e73a39328e91ab796275123bda5e2d18187e1c934426e5196217c385e3615bc4e4f7e28b018962bba6b2a93eedd987bef8681d4e691498807d4e9ed003181b52684c5d8fdf76309488ef5f1078df8315d715c3e090eafb0c2833e47ba9e7e8c5273f473fd4de6bd133507aedffe94d6383d4598bafc254633599d929d3a4564ee67d7c094a42cdc65a44c7b7d8269d758bfa2413aea047eebfffbbc602bd9e088c77824045efe57cfbd20dd4e9f1dbb568465a9f2ec7ab28eb90f26fbe4e41d7d4b1565dbfc80548be199916ee6be1998aaa45598fc009c6afddb4432230d76f6437b4ce2a46c1fa9cfb0abeb7d3eec0bcc0b0b5fd81ec676a73f20a9e250dcc1f2b00b6abdd3fccff09d06e520fb8dbcd3d7e19ea66498c3f2181fd561834afb69d4dbf7c229b29d1ce3d7cc90159f19021b7430e6b8b991f3c40434c94b93167f983506f05d2eac08a931a18fc2a2597c974b77eb1dffca0cc6afa9abf6afea27fcf3a4ef0ef3a8194913d684eb31a09ec7c2765b90863d0b4bb15494ca2fc46f539973c7c3dfece648082ff2a226406226f5352186108cf93af8ad53b2ff189732c8edf236f92cde9cb50c1c982536a973dc3a9264a1a541ad44c1d79c0f49f7844eac38f53280d5b348d2ad5ded67a88598d94d6d8ef4b3789fb331e4732491ca5aa4259004386b529a6c968697185b3f60c1b9db78bd2f4d8bc7f453240228f01867af358fbda8c9f612e1e374c22115fec066b34f6dca0e430d60196079d4ca1fe9dac5cffdb12167eef2a81bce3d14dba415bf2bb6fbeedfdd2e7bddf87fe0bb995731d631ef82a26863c2382b9a521b8df36b007ec1da584c9c24d3f571bcb77f855e9c9b00e9844d49b5c2561172df71bcf24e9a94416a51e6bca41296f86224759f808def43c79e3b84f5e60bf8843c2081af5559f0d67c22ca6917a64b6ba527951eb720c3c3d1112a867031e0da7f022003670786d32d0adf0b14a6146d34f1417b62c2b2f4072746726caca6b1447cb325fd6f042a40dcbfeb1a959edf6cbf192be2b6e1e026c6991e57f9a8d576003159da648614e590b6fe46d97a82c81a82ac54ab0a246ce1d25c27f684dce0f2da6b47fafac756c55d9d2526a0802914ea6095c7407e10fca6ef58c21a6c642cd9ae079f5ddc1f9df8f3a99ea7e281a5bcf904d7f129378e94fa68dc3087c130fe6d7179debc04f1cb86b27d4c6679b57dd6635c031c13bb456f5185ea8f22b29d7f4d3957d1907fe1406d2fae2b7935a04da4a494e3ea1fdadc45994a5e944d051d3a2329ab4c075fc7abc57939aabfa6a2166234526259536f48717c4bdb3cde3e6c15d0f95f67093aff2995c603c5afb14423fed068008cd85dad89db159dc590facd4ff6dfccd34da5c5ddded25dfc9cb0fb71b20c8641245caf02e5ff8eb8e6b4af2eeb84ca2c280dc3fbb6c2b5aff7341a9d7f044e9ecbda4e4f0bd255d2889db5709f5f11d2f0a4aab7dca43c6931130c7ccc3b7d567ba5ff252adeb3da88d5c0251da0493264af3bf1312ea6676cb569118b748cc7f4023f7e5ecb9f6d7749c5e2e67a9cf444ac4da12be585d3c3f154689581882ba0bb4c8a7f99b62b13eee47acaa0baf9fa9f69e398d5acbdb70410ae449e5e2325b4651b3316f81db1b2ff3eefaafb598677234011e74ee81df4c53166483da03bf8a5152ba5668191208e3681cf236717ac9d36f67c4107979745ef15b818f666a00a1fc047dc6ca1787b24300dcc68987960019b2edbb85b11bdb5c93d7d6ccdd60a60460c2bfe11d6f818ea33deb421e85dcb3140fbdf62299e373d95868494695fafdef3f459ce8d34365d3bc009321ab093e0dcf5f5053ef68b835915498768ddb8a681f8fbf99eafe2cc2a83508c5a093706569b9f300321c9400677f2b636370fa1950c7982590c0ad33cf66f14919adf2e3b83ad13ba0f3d8464c40d116684a3f13369c27e230bfc3e9581194c8af29a4563e20a231b87d5440d17583bf6157fcd60679a02331e9715722385219aa4bbc06063c58602f991f41420c008ad5fd9afe15c256965d6e5ce17bc76b325cceee17fc6818ebd559e1a0014fc1e48fbf7a15c4d2441e20d73d481ce7f720a88855812d968f449620e4e805a49bb0c52b740cf885f39d2fc6afb84169814ad48acd8b8ca34d142529513796240277441a2b3f94fe88dfdd199a0b9de355c10300eaf8f0cd21fa627dce911b384f9acc9b2cbc1ad84597d4b0eac6e98e4408a9adb313a0542a25c36f13bd9d0938727672d6f0a72be88011926c5ff65d94ace5fff4645fdb125169b803bf02d8c8cf9ffda3954efde7a4e1f6a5cc4122b5be0d219082499eb78431bc7cc04b50aa668db9cc0e78e91a3b0955e582a7975280e26b0b99432cdaea68bbcfb6473a6096eb737cb829f7dcbcf790be4fd579e429fc342a4859b555a4c8055ab7ad1abef6de4993d872142e745e930feaa84df67b8a300a079a5de56a4255ac315db02f99735a82b7b18f75ec85212bb29cc7e6dc36b0b3531f2abe7c01038a60d4f8f24bbcf4a15ad8a25aef1169e1d40baf2f041e5c6fc150f4bfac421cb54e745780c06314084366967e1177060f43c7e99676c05e7305e20ea4f25162c99eade4b63f03ab09b3212bf7e0582e838520848a194539607d2adacceb7ea232952076ad4fbdc308e5c98d02bbf5810ba75533f09e52468b752f6ebe7fdbc2252adde98c9999460b839e2c7f1cb4132e61cf011bc32cfa6f05a4668b2d0b50b100d7e56b79ba30ebd40341175ccce057c2fe6780ac7aa439f696de621cd249d6c15905bf26d4beb88e3d18903ee89b7705771007cc2f9dcc9c7d2e98ef7ad306d0c508393ff78036080fadbadfe323a143a87f7ebfb85dd6719b1891a2fc076d525f9fd18e3705f16985b735e89244f06b1f9a5c0228f2ab928814569f43d1fbb6c3edefc487a4fcf26498869d1b68711970d37d33bcf9d9902c18ba4033645b23a7bab57e1c6092730e01ba3d23cd21602c9a223668223bf8ae97e1d1795de74bb890ae2e68c2d85536617c2082c20c7604d41acc5bfae06bc831128b88e77d4c4c404a9269399f7f9cc38b0235519e32bd03e715f289f44c0c511dbfd174ce196d204cf35583e3bf241b422da6f571b36f2d9b3854c0fd2318d60a28248e8c77b60d7cd6a534864df5d5bc6c803c04cdc3fa9951bd373a23a5b7e9abb89b64f2f8c929b8a1a0232df7a63108b32df13457bb24996038982ed0c5afab3d79d4bdec1cc5b6e884362386dc1d7700c62b886a9b7b3b12bdecf5824e004a764bfec71f514281277ae652e123008e481a805500de42119cd2fd0f68116b878da0528388fe2229a863856a079856374bef75b94619306efacc4637628c0a1785fd5a330c7d6a531335d93998e7420deef35a3803a60466fe99cccd1675b24435b4b8dfd99118c8ef88ded96eb550f89e5d61cd28704e40110a8ef820383fbec9a87fdbfbeef32f3a2afccde28c57231049332c90109e1beb7632c98a20761d94d44557b309073fe000db042d685849a2ba8e26dbfd056c7d58427a5998b20d7131aa31cd50d9df9e615e4904a8744e1eb8baa6e561591e046e6bc0bf5c28766b259b8856b640ab54e295004e7ffcd69b75ef7e53e9e5cce81016c0f936b5330b297e2cd80dfb21e9c49367c65fbecd61ff8359b8c963e8a4599c83022782680a3d25af70b7eccd972ccca0d4f57820d215b0137ea6b4b4ce80c024af857e522e396c5ce2f7e2e980871cd5193fcfa041e137606231f0ff8af3567e8f34e1412f24996e4109f876cccbb92421f097e378c4b78a26ae18fc58659cbc56d5f7e35d6b03117b514cfdd93013afdbd25bebdb3c3b054c0100882b35e92dceb3f510f16bebfa8d8db1676b08c3e7fce7fa800b806a7d94647b95755fd48c46097331b7a01ec105b2a99b5564bf7d29ac7fee6ddecea9e73f0090f09246b8abf09b2ab44a447a4ae618474058067e75e9c9472eb864667f414c2e52e61a5fedcbf82c2081ce248b566d4bb39bda76cca0ca1cff21bbdcdb83a9912bda23d6644d1d52deb004b3e82e933c3c8132e1bb32c70234580721bc63cdfe1fb11fc3df02f988a56564d0f42260e8c319fad5bc6593a0eff8a064f6f7e9bfdf3a0827457ecda5a9629f6ee8a47434ee3dae9f965df909efc82fce3d5d230ff47d801fdc4bdeb1edf0d505f13c80188a36c0a326ea260e8553352bafffeedf4b4901824325011f53bae03fd38c7a75c1afde9db048173612473083adc40e524bf613c74f78705c973044a6600694130dd08fb5078e77c949e90ad515d14199eecc5b1d46c56f640494132b8858d340cb2f0eefe6d953ffc94bc6ab1bccb007c844c8678d8bdedf082188e6abb32e44e4733ecefb3884526bc3849c9ef39b2e43ee9ce048426b78f276088c80ce4fc9ebb0881e9330b9f1093f5ee971e2ddd295e9c62e97112f9dfdeb208a0823dfac9868752a074828c728456fb363935ca952fc95b3fcc4ced6453e4abf40a5ffe61800f95d8f45e76301bdc499a007969f4a03e50b4df667c9b3595832255a8b6f736b6afef21f73d13e0c0a06e366bd46995ebb3bf7467ef0ae54fcf0b1fa7c3503995a9904448c4b453f145ba394c1fddbc476664bca1dee70c3eb5f4bda6e65212934b81694a5ca1d8c63eb33cce859813f0fe7105473513cd096da3e10bb2bf59a61666ecb0dc21479570380fc058b0b02f002986f1bf3b2829611a9c48f2a074718997b0cf1788cf5e7955bb0c941935d211e0b98fe41940aea8b84da470159a5b4aefb2bf998b7f0a370b4862d82c5e953fc66a1761968da17621a111a59aeb28b9c7b6e7df5b274478a8d6a5c4da5cd752874e26c582b49a9f2b17187421c8a1582476c7f677cfc0433704d3e1b6776ff2f2f4803632eebe7622ec39d187320d5ba802fdad1c0b4ae4b988e61f5f2441c9eebc7a3f92a7de7a4065a1326be3219dc37c9aa5d76d3ff71779000fee3392a30d6af4a2c9c33f86f21d2839fa90d4f4ed413746111b15576e6dda85f4ace379360f2958332c2e9043d40f1fbcc0c8d088284535b5c50ec1e51011f9aa5002246c1a6c26c7e68b3621d669ecc65a45ef143566c34b7e9ab2e03508fef67949c8f14e9cd87415fcc65367b10e945d29b91ba623aa9c7b4f03e4c8eda3f52331fc6d396ea8e6635b8854e6f1939abf9f2a98918938e567d13215c45c23e4e0eb8fe42a83845deb752d12546f5939a731c2ce9b14df1c29f9d2e870b7fd835ab175ae8779c49dfb2d4d0abaadd36f97fe5c73583f6ef6c10ee296f5c3fd0735adf589b4b184bee2e58981290ab0f67cebe8c36ea5304a050f62288286b36cb60eed316e446c9eea797c3e99688053afaeb517bc7276d95c093dc419d95fc2ae64643378ff7242af4cb1184c59dda52c3460b38612353a504e4231a94daa1098cfdab4efb971b1f537ddb01d4a09020a7e3100e738c9128b4b9d12cd2de93cc1cdfb30bb09627ba395644a66affb95833af23a792c065ab45df46535853f7f6374e81302724db2d353adde39ed4036de59ecb8f298e86814f49080021e097926f516f8c6953117d294d7553e3f16658e66daea1dc14ffc0e31b2f53069150842f53e1d7929c4e98abbec0f992c32d77331305f37d36b7250635c58081e52114bb42c565c113b5e0f1004890b62cc0030b3b227dfd5857b6b4b512bdc287ba613250808badbefe0571ad583506a09e458aa708a61c618c79fc065ec7625d7be6b7ac94404dd01a649cc16f1d8f446abc207b2495cded833e91bb5554d0b4a26c3e3c0bc8f065bf0d88e2b5ff67003135609a40ac84b94cb5681cb615dd26d849c9334c05122aa4ffea178eb67f63f91f54f5a7147ba1009cebc956e2411f86b1c0e36069f74af2b1717e139510dd2a2b0fa1a3b2041f128a703cb4714cbaef25a2a9bf81d4614948fddd4901347fd9ecf4659e55922f59f89d9673c5f9c3a10a2831b93aa7772812abc34ffc334db4a5bda064725be8b5f39aebde0eb9208c84317f3d0ba168fe861b74f6386f4a4913d4e34f570afb25451f5a401af8420054195b4f7f8ed0a7005c4135f9c2ae7a82c72eca2d19878974d8533ed2b34fd7159cf4ce92cb9e83f6e542b6077e41a05c475ab3fe0426c27fb078ed37a9261a6a0118595b6ff4b9ae5924e3ef9408fc4581410bff7068ef8c1b7cab2a74ff68b9077a53e31a8e45e04c31e3497c44761ca2bf543215fd37dd60bf73cdf3fdc30b3cae5e146f785b83806d7a647a49f4919f9402c635aad01d9bc8ce6833aed72ae585e57f6c67ff242f1bf6032a0f0c5146224e53bac8c157fa35398a4e80c8088fe3d553b97d4e63e3b8ff727b4ffbdd92ce559980e11f9a68f74f8bad31ea9415abace94ee5694c1646107ccc1e79c303f3f90b0bb5b684a1408dab2ac99376516b248e39653da6fd844f09b8068b56ec95e651472f7f021b1ab2766185e3b14d83eb48aec1a2bdd3ca29da8b9efcd658d7aab9e62b1dd70edfed22bcab20aacfaf5cff6b9fe9fd606caf71973bd0b0f33207b95e9bdc08569036852364331cc530f769b728667d5f9e4050c97f541e70965bd8225d1dbb34d3aa9b190e9d75b41cb4ed91bd63b20316a30159d6033914c8581979ef007b3dc80f27254db3e5fadf50ba250128743c9735a27db1d0411a1b9eae4374e80a99fac5df0187972c62a4ff4a258940d319f1e947c5c07a28df864cb1b1b50e27f2cba39d49e8f4a70724f1ed33c014ffe6f6bc5f1a653f913de7ef5ee2699e4df7e8e609bc755dfe60eb8d4d0ea748d07eeedb51a797c61a3035b523b19f16e150c88f78364291e014795b80ebf94b1431574c4cf9780cca9ca269ef08c8951e589e7336170daf431ee12d2e283c0b7c94fc61354b32df9b991d921f18f052ad984de42dfbd5dca7a3acf63adba2b433f96c36c33828364978dcbf9502645be09741475ccd70504496cac485317160f7a7c3c10ebc33926d7d99ece3b4d2418a2710b73e1485275a5b56e70f288f2a5466ee10d303c44c92d16f2a22bfd11c71d5d0405c60f77a6bd758507410740dbce2b2ccaeaf61225a68266ff22c8927c6d60c5af5ff3e5e9fc414cc2e919974d1ce1b15dda71aebc143616e79ad446f6cdaaebf1b2438a7313bf249549945f0d37126276480da39e6ef6cd9749d7e2f32aee225b6f0719dc23d63e94aea5aa11800126569cc66b2f1405fee4a7f0b5a4143ce09cb52f8a683b397a67de8b695dcdb2b6727b79865abbe78703764ae6dacf1824d035660fc7774e67e62b56d70eb3fd1df0b7d3421a1ec6c5c4458926d9424d9dceeb1f2ce389da83501619903762cfe103f3da77e8421fc567a360e5306da673e45c4bb1a6bdefb8d83bdf209d74f4328f4f460c43e278debcb5ab14d20615e96910d802f7aa6491edfe3783f5bf3b50418658df76f7e619fc80e768c5481ae8c76fd78c984fa7ee8ce1865e3190adc7b066d0e7a337795c40ddbb35d54bcdb9eb45162e61408c13179b36e49c63e6aeca380e742ef409f445d33a7c62788b371524ac1bda062c1c10ae3c6c3df9b38b119a957a6b9f28aee2e08393236755b6b10eeae2edfabd048b528d88642bc943aeb9bf874a2a3de1238069f8917fbef1187453ae7ea19eb7ccc7fc672dced7acafb959eb6e6e37e1e243eb76f12cf9be458bd575a4434b66b1a3c431235ef5bd9713c91f20d2455642b9141dd84556493fd1977e2a0d6d99cebadba6b14291abbc6828fc0225d51373fce6fc5b128cbc7ab3e20218974a66d1d947ce981f7a950d31512dfb6aafc69e8b2cf2253988ccc25057e9da43d9eb14d06fd5df6595a99ce8f5ee62e991b7c6810df204d17ca3ecd8a36ba5024ba054f5c59d69ef1bf9aecdb48c780e06abcaf914ad0a261e4adda1c9cf781ab3258bb07a9d27f7488f48b6dd5ee8ce575a9d3a94fb5a9938685cd0fe0d9e305fa31d5116aea07f63c6d73fd07ffcc2ff2c3ed55a0939e62d221ac4ec970dc5ff419eb3705ba996635cc5a40438aa5675e4dd3611632076d413923e4b3ca583e4c2abe8f66cf09da1bfa5bdf4e9f10e86ab42f8ac96fe7b1c3eb92567bea63a63f0598a7e4b86e9249e27beaacf7618c56f6d2377ebc607d000619a55bb8176bfe3858d327b23faedef44d839cf6b98c18df23549eb49afc01db4b27628b5cbdb8b3c4968b88e45ca518f65dfa8a4fde7ce376996827ef86adcd2a6e89e0283c6faa553955cde6702bf8a7dfecb515a7fc7d50ea36d0e84da5645fcb72e6d66b660fba883fd350db98f0b10e55cc44d63c2221de7fcf1dc614b39ff741c88af11f4723e6a28f7cd594c3d6bccf2c9f92e7195384e58c9d1add4b5059e0ab731c49e2957ac69dc87d1a8eabe283d508b8c4c59ec0165ba5cd78ea989c943a865331a48ef4f6dec542bdc3fca80e59107821d38aea66d2c933f351b0d7d94607987b0227c05db98db37bf245cb85d28b8169a5423a8d3c9dcf314b45cc1d1983b7afef55a9a0b42d8844e937832fa0e1d4ee6d4cdeb3bc55230ad0a18b680dab48316ef7eb828cf9e117896e84efa1ebfd3ac5f10bb1dda18c433375138333340a1d9c6f30cd45bb57675268fded44c2b16e5b425307f78df60ac8ce9cabff0a0ebf91a87ece55b90f70da3d2ebcd09132b9c5694ba2f522045c2be359ab36fbc54665e16d0ae521b180301e4b9c7a094401988ce5fde158fa0c8b330110007eadf6cbfbb9cbead78461d9e30a741f800afb8d478a76f5cb16b4d19388f4592df6fc2398d3561121a73b8e4be6e3b78cb93d46a5e2d6b8d7786c2061d1873ab7cad9b092d29d047098f5d1fe0eaf280542af9fc9b77abece12e5061e63ea8ba89e2793673981511868cf79a667491aadca03b2e4dedfea7eca6fe17af32817136dce7b5a5e33051cccbd67aad13550aebfa98b224b74e43d293df534fd256234e9112a20fb0e1bca71f35945b49121facca455e93d14427103840335a7d06f859c31b967d80c05b6c2b34d13d91abb8003958eb212f9b6120be9b252448e43c3c2b507dfdf5c7a6c6fd60b6fbe0d5d7595dcd22b411149d5828adfa2cb8018c503da1aa26ae20a563edbbd195c0a3783af34908ac2413d50013a6fff136412d703bb2b7929ab4612079e072ac86c42217e63b2e36effea4e4b2e05c2adfc1c90d8b4b5a7409eed34463355e2a5e17fc5d8f7bc47a5cf360f69702063058525d1fd0c78b937cbbff1544d6f078fffcb9b9ab8541d5347b03c637f9716e9aa8fb41d0a572a863f829ec421213ebc9ebba3088faff33439c08b0ad51387974c2eb703de7a152a2958ae84dd202e028bf916fe1f6cb2caeeb90a207b81061b1d5c710dee60489af0cb5f7d22540233ed52e0425edd6fce133e1e9af5cf58c11158cb32fa2108e5ea4168a85c817dc1c3eebb1f27bdf5392d5b06a6d07191d61cd6bf5a7cc09e3cb07d4e40058f8b8ecc845f1f65dc9d49069b24865c8cf28da30475f9f24667b4ed68fb531ab7b72cacbbee7a85e1902004bc82de4454987205d7689b24ed63c460ba36a0674570fc88a5461142b769ed6e34281134f4a262c22fcece3ca4066c0f4c723184cd4d511b05e44896c5acffc46e5e621bbf0984e85c99cac5e61908d93e664497e88fa90882582c4e9374bc39ac874388cbc4028fd172f1e44c551485fe1f84160a4abe9dd311f01dc856c22e8cd04b65d9d974614dd033242d7141ba4b19e4b2dc43f7c17768c9c3445be8aa0d23ea50ddd696bf0b1df7d96ff6253b84b0eda522db5c55a501596bd412f5c92d05a0031d9d3aa7daa56e1c2e91555dbecf84f541cc31648460b065cdcf960ea8c4d19b3fea551f6b508f9af7aca2e30f89b16dd787262d2031cfb38c889a8dc10557ba9cf7be646178719620fd7728843bc30cf0a6abb7760ac945de1c9586e5b32f0a502b67054c40abde7ba3f475d3b1837d646a61a58997c8d60db97ceaf1394585b615d1ed4f9a0acaa1609a87b6e5d2522a0a6d76ed54cd7292cdf542ce4b248595c366dc67a829bdfa7f1248d61a6deb03bb8e4ee6922294a0e315537341ba1f5872d75b27954f1d9816663d4b8471284392dc315e85fb9f8a125ba0db66c7435598b582a3b005f1270863d34e45d9d9ec511e6b10e32b8ca1cc0d0d7680d18f22ee48a8a3a9ed5058686209b20f026d76d05ad13ec7a860e7aebb7d2a1133eb8a0f01bc53f87f0e308ced97f4febb7e15ba60e6d86bddcb3c9b38734f309f27970dba5ffc03efd76065f6bb6eebbfe8aa7370de3a14092844623a810caa8528321375007dd81e9022f7009678a2a45b217097e9d6932c9ff65ea86c67257cd605c649034491b1de5e94937fc0ec0fa2be2f45249eefe741e55b9c4b536bdf1022c1afec9db0bd669afe514191068b14494435c035d23ad07c4fb1ef25fabfbbeab5f4817e652c96d319dcbc642ab574ac69cd26124078ef5c1c076fcd3e7ff307c560297fc2c1f225a989da9d56c7dc07eb2365fcce3844c3eb01564e869d0487b154a0ceaef5fafd4d32afe4baa6bcace796bdf5bb9748822917b0a72df0359db93a3e6529d5d75e356be3759850c8056c52613b744192cd89dd6b54d00e54a064babb686be3cf99dd00745ecba0de15b19994520ad46eedb7b9427e496d4b68b1db583babf76d9e4800052ffd1547ae947c4dffa3b693c78f4afc485c15e7623e04b57f0e3db408b90d211e83314d6c9a6aceea8ca82eb1919483a6e49701a18aa8211d1e97f0ec0adcb5c6722af74c2b0426dc394de6b1ba97758f84445d29197b4257d6489b4910d4c63e03a44b825194ae87b94205a0d5082066b8f7b83424d8173b3284126dd9893fc0fd2c7896e21ccbe0a267ec0df1a7cb11ef27acfd723889fee656965862aa118da403365f4c8b51176eecee56af9584f5d97d489c717eb4525d3e92f47dbd0cddbeae8200d029b3834f4febe4fb9285f7a1f066a8362a248ff827ff2f86c3251a9952b9b8636fb2fdc97fae9ade2376c4dbf293513f82f21bbe5efd6e37bf28ecf6acd38e19ba5be0efe81f60fe861adc3185c715da2c37a5aab19969e78cb97e0bc3fdff5e9d57afe9e668723bccd59baaeccd94fafd9115dbaa28c5a29724ae029771506a452fcf4bd2cd719f58e1d8efdb478e317be27e5783df79c9378ec785e248a719a64cf33b6991d1ff16b54dd8b3f62ddd4073851ef5c1b329ea11803c837dbe593dfa6bf21680682644c36940362f358b3cb3ec74dafb7e3742b94db1d6ad0626ee3f4459a606ad81dc671334696a7a0a7c4584acbda3e93da3fcf28c55a2054533dccd798a2dd4abd566d4cc34d1dc3b84b1b24243610d962ed5c14ba9770c82975e40d6b3e771efd172df3a523db247876970fc96767a211fbf5a2e980ed786203dd5a3aed129d9be1873a60318dc80da9c6e10e7bc3a9cd37c59437c4346fa028f3c6dbfe6b92546d74deb810e4fa7e27e282c6c76974a030d85296e1970b6fe67dc521fad3695342b9103ddc91f830fe5d57ab849a9c7f43a25f999310e22b2527a804dc99626d6e16f78972524580a4cbe4b097cc79fe5df138fdda9fc72f80f664bb72dc22729bd477908eca83ca051e163bbda770e381414b3ff702a7cdcdae43bed963e2e4b1394dd1f5513e024abf4f52fd9fadaf0ac5846985095d6f41b46f87a3a05cd2a4dacca50b98694980363d6ee065ac073ab98450b91fea192bad2f54f1f244c1131799d37da62b129baa32e5b04a2b8f1d85b3155c7eaf523d8ff120f3d0345787fd1b4c36b8c889b9cc0bf9440dc1da168eedd595af4b81158aed4a5d8444e93e1853a9cfc4c4a59f908c3bfbc4589c1b03b3805a5eaed943345ec15d66870a1d1b6750c5596ea117106ec94dfbdcc1fe05dab08f0abccb23bfd51c693f3ec404b7887698b7108ca51d48fbe1f8209b3869075a6d204bbafe760358fcb1e2d19e77e04d49db78fee3393d7c97f89dc89601c7334296e4b594971412f32bb4b5e91ca466479f30c190143fae54dae95d8b6784017867c117783bae2de9ad70927f7dcfbf19027eb64908f49c493ce5a0cdfaaa6dc334cc527b1d0de589da86231689b1c05c75c2ff7ea7eba0940c4151ac3a959725cb04b6528960209ad8017bd05cdd9add5feba388d81d0367596907928d4eb18b2c0a0e704e9c04adefc8d613f1cb7ec492c727ce80674b9103b548f3aea86fb86ff6333ac5d31c4a9ead794b5544c825b4a3c72d90dbe817564155a3abbe8553e06b40f91ab224ca6462679adeb1f7dfd4dd07a0345bf899c82e1485140626dfdeaff53741a31b2100f2ca3bb25ac503c34d2898869819ff0f2649b15e9a76c067e9a265f65a3ac2584e76f9c7323d885615bb183f4970908591ea7183cd829f8b8deee428f03b9b8f7bd2eb78cb3e5bdc9b4c886991d7bfa16eea49936573b30dfd1cb4e36ae394a6b101fe2dd0f66f17aecff1e0d53ac880797b88d8e77cb3570886cf60888f2072296b52bb2097e1ab6cb9dbd06fafe0f27a42f8e0f30481073d9dc3a1c4e86b47c66feaf7a4e88e23d9a00dc75d3280bfde78a0b33d9da6940b910b9dd8eb840b704194b7bdb6f2ef5d7f852b308ce6bda3f7d683aeec030bb12fc119ccb7c81476ab1191ecbc523997ddb36f3d2c95f0e0d41f75646155084cf8be75e997fc81c2315e7b966879cf0e8d8f17dc7d3f9513903c9950f2c9c45933e7c34d65a8c359f7177d6fc1c087f54e449ee2534a405201514b0c4366aca00d2efdbb9fe999c95c6965d18b1f25aa2a20013f8a3707a36676eb2cbb92835d03b75d3c8947437c4e35a63753b746884d0f075b0313b866823e389eed229d4c6e5d1a50679247bb40a98342ff84980a6b8df3b83446d117c4cb31f2cb2830e676e7a8ea32cdff69b5df63b733a52e3dc5319b8be00fe4bfc0fad4bd69a1cf6a433f895f53ff5d6c21dae9aab6ebb742248bb67640fb474f7159155637454341d172af27dca84d798870a85c0c1aedf0aea6660b3d5f7dc4ad93b1bce8a60ff7f906f3020a28963f93a79bf51f48d72db6f14af097c227263d1539afa6589c575371bf65feec958d3a67871573146f168391879b739eb14b6ee4bfa511a14f93ec424dd0a58b2e90ad7e900c17c044a28518b0ec720943d419c8680a70e336736e0e8bfa2dae0b5b9f13b32a57a86af45a086c470084661431fc5408d7d9c2eee4f4b275b5e6b4a6d91ab541b2ec42ae6f3a23014f2f60a084aa082b181b80e8197db5d4bc08c0b9f6ed42140992449935e05d88031a842a0ea1f105a7da8325c26af17d5d119b232cd6cce788890f0094902f008f2e2679d652881f0e4837bc6ed247528640c31bbd7799902b91011f6042ceb352464a05c9a3533e5ea793db8e1e29f5a7313c614fb93c36f8ed0570a651d220799c2503808be42773e4b85e7047fdb72f4056f1618a48a04dccedcc06aae10edd1b2ef5e5d18ab395e8bec6e8cb6899467459f17699298029fe099c7239e6acb385704000ffbf1f4357d1b92d829620b1c7ff6c86cb7feed11c8c05e223e163749ed2a673a1d0c036690f88b87799d2c1535260dd99d132ac3d10e023da4669e40edf71b687949d77b2663ea639b69ba90fcb7065bdcac867a59546f68139d879ab4d319a7514d5c6712a03c57732658b96b4cfcafb03e03fc5e56d91b935a069ef413870d2b05d8df8e9c2d645a5ff29901afd1fcc61785cadba4fcecfac32e92d96836618e49228a26fa2a5f99a3abdba33803e80b6c8084cf0a5410c5d8b704fb56ca8d6dab356a648326f3215b8b18b281b48e91516b20abfb9dc474adfbde5e036e335d94637ba5eb3f506ff3fe3cf472c5b4ac6f24025041f62c2dbbb9a89dfd0ce6b336d09edfda8e5203f40701a88d581fd42215270056096072cd800b94e42905fd6023d1f6621e5cf67da70f75433b345ed82058c6dc0106791d7769b749b983481bb9cbbda6c19280353eb6010f6d88959e0d3f3fd5f75a906c9ecd0c3dc4d7101b5778323a01a8229284209eaca87136ddc2da0971f629ad99f70de7c7514b8b771940576e80ba0d75171e377d437194ebc8403364a7627065436ed3eb5bdc3dcff94dc09204d18c9a8a87fefb183b2eb6dcce5f86205aa3ea7c91d11657a62af424007f6bbc72b15fc4eae38f94130aa65ebda70c0407d28991b97d41057d45edbf81154253e2b2de504e33076e09e27ed81058c090d34bebf6759bdeab2d82a665a20e68708394042f4baa5d38c2f58572fc44f096318e5a01578b91c3b7e8b29b0757d9bbf0ea8a7cf6c186eb936a9c76f4ef7e59533d00a31a79f39f02bb4138b6c4783fc86c06e5cc6d9047aa195b9cea8b84711a2a18a7392e487268ce13e330864e20b1e735c387bcebcad2abf79d0b460b1c979e0fd0e0bfaab8743d6e0c13172fdcd5792a8a3f2e32bfe971eea4346d7d49fc9b3c5464c181030a53ea9431bebe783f431270725bd663c9a8a10b18c9f713721f740853c4737aaedf7402ba98394984c0ceb2a86221f4ed90da7f067be492202cc56c9641e1e63f9db88337f2214aaf32b1ee3fb15eaa82bc97e7078a82317fdbd429c52197be5adc11f8f4aecea2c6a14e26b23ea335f363506817113944ffd54e7120cdaec9442c6628eca1d7ec0a523bfdda618da04b1c928ebbf252622f5313cfaa4b47eed16596871e353da3c8c31277953a5e0614831711e5f952f22aa39d44177f9dbf288cb001b629b799281a39385be431c942c448e93b5545f6bf6acbd3948d38bb2bf65ac3741800ceff5aff4d6e2894c263aa77ce5487f553d6d47769b2bf32f1360dbca256941cd716ac6f5d919b027b768e2ccf51e2daa3bd6ec5bf0b4465fcef83b0da204dea6c4e1a37f10f2cbf046f3e54689839275f575ba951c256af7c2dc330c5c6dec83bb1df1ea95865381fac8bc9e6212aba649fd1c665d9721a34c5e11e9cbf20d344ecc4eb44a043c1b0a390ed2237ccaeb847c85e6df2ef0f051f93fd72455270aa000dffab00e43f8046747c6dadcc3f19c3adf59e431890772f47f76fa910cd3347bab0f71a34d0a7eceb8b4685458b9c7cd196f9746d719abf77ad3dde9f3b0c8a858a6fb3bb1e003d82204a26e69023f1b40b87178511d6cdfe3710610c31b03369bdff94a5701a6b9150cbf9b8a0b62a1e46c9419a9bfc0f534bcf85ad9928804eee86819562041a27896e703558326b7dd7201621b5af97d55fd504623780f7f1156977a7854dd65f1e3697bc00e28aad9e136cc1fab20e841defa7c01ab9dc005e724dba60cf12dbfc124010d7f2e51d81b5f2884be50adda92400390acebbd33ef424742ff53e9c4f1ecffc583a220ce01d3e43da1c095d51802e2ba4c1adbb0cc10ce87cc7340dc8c2a9dc8d6e7206e80349e8cc066a4496cf949b656f52db886f8a03b141c016ca8b157b2bd35f688ed1285b627ee42f8970aa1231cde5b8b36a41abdb2d3fa34504a6ba00c8f12461c8dfbd4d9393c0add73fd6ff72986d0fd233a490e812dfbb8f4425edd58042c57cfc6719696d957e747d50a9c31c3bd7d929e6ec67d49aeb3a1cd6dea26dd4f1f546ff2820c8c4005296370e3778a62a3a79b26a14c705e5d87b763207daac22046b31af6e707c26e8616c61d8052ecb21211d0c24b6292a718c33a9647c6f1dbfb638779a3814df7d23b638678390e7cfddd4c6d16bf12b833655f7789145ff9280fe35349161387c50b68abc303854ddc55d72f6c5910ae8dd42ed9a9961fc4987fb797c12810a6bb85a511873ed905942bf6b9f9c9c85e02d2f70e15b39654fdfb7b2898b6e3337de4a5e1a5389484c11bba51104085dfb6273b77fb9fb6c8ceee04990f554393e87d057cbdf3fcb055a08b1ef116e0810e11678db7da714c34452db4ca4b9dde6a69d6029e2300794cf06ecc262fdca4d7b872983e786710713c7672a438f3bb70140f41451077adecad321b5961b90fd4eca629fb2eb6135222b209b4172ed2b277301b6788006353f1325bfc62c5eb6a18584b1eabfb960729e26d1d604da3a4a56db38ebf795576b026a59e3a885c57f710c3a305b4170ab5d4a520907ef0adf559455d7665c23180901821f937676c9c0d1f72076204f80f2391614812908e51678decba1464b6816ecfd2efc6110f7034a3b38f53621fed42906f08b3841c613e9874e27d88f66cfbedd3a809a64f921987143f86a9e355e85dc11b86953a6cdecf8fc1558d22dceef0edbad7a4ddba2045dce6f121bfb3bf5e5da65c998abc3940d561888e9ebf758eaa30c395445fc82cebc2105be94f835bd4ef581ad1d0706ca617bd593119feb0f908646dcabb1f83040831d3fe4d50790bd95c331b5bf2d242ab9c32f9668419ca2d4e997e152b9fff50faf98275820b00d7704f1c58483c632fb7f4bac3b619d86eb2e8108ad56721decb3883673fec152a9068e60279deef7fe006b091067fc42345380150129319bad95d205eed1cc455552ab4f71c91833584042eb93f14f67ae6b2b4999333708a688896774be046f6daf0aea72318a4aad4856c3cca97b54c7f7568e1448f026e37bff29ea2c13a6e2736e6a5f20446abae3c4ff7b491db57ef195a022f328698a49fb81606af4cd6d0cf3fa3ba0c05754c15a2ec8a374be3f8276088b34b88beefea5f20fd90e768b322612d461c90f1c88138f25c070ee5a18e26c2d495115a647b7598d15e9d0fb494a43b309d9c487705ec5812a75c04583e94507c76ebebdaa4de0216ed7615366f57e7b15238f7e64963b5ed65648cafb8a953a1b3394ca4a57e5e14b9094ee9f30e7b981e5533e2a4a92cdf6230ed104b3757e999f34799c439f15f12e9b125da0438d4ecfb68c0bc845933022a0e798f86aa40eec98d707144213fd67e6771053173463ca4dd1594941bd88f6a9573f47666746715fd3e5e7871c598db0aafab4e5f5e69ff17bd06348ad095d0ee514fae0a499a6c6f48bb72f69b9519a2088a11aefbd7e01ccb3ba1d4666cebb91c6391c5942e7e2291d8378abc9d9bc2f92648f3064bac59b2fcb6555d4142f94186a998c4927cbfa0cb265519eee709975bd0b350bc8ce01c8aaa18f748e81d24eb5d659fa3e433eae92d5349b40fee661b70da46fdf43b5b7dbb6dc29852f09c3671f25466e273dfe61dc92c0c1cd6406f3d1056e28b4ac5c3ddba8bbbff075856b4c4826ac538ab4bd5bfecc36481f3460e4198ad2d8900c51d2b27fb1d5d8856cb3127b19cedbab8228083f972a138a7785015187415d5550cd4ff9af08e8f2d1bb9b4a574c25de1db7b1387b60d0ecfaad0a49b1df2a5259cf452fa91bd11d46d1481778dccc9a84a0a8ebd62294fd39dd1991c59603f08cc157e5b81f893338df5b5f5658d603d5f45822feb46d7af98f5a73ad44430a9852397884889ec6832a78bb3db597f78bcef132cf9fd98635d447a751523bd5d1ee3ad21a60044e9b460b4b665b2b36fd07cd4582cf2d79b8367a03f721e896c0ee692110a69e9111fffb6e55b22ff6d65babc39a2398fcf19a26c608cf832419c872d6d17be89fbc3d7dd49d4e2a89642357624e6fac52cd7d106ecebea620a5635bec83617337dbd1db315b3bfb5ef83012be14998c8bc0631ee5a52bce858eebb0d9370dd0c41f734ad1e07f6e0af68e2dc612f744e8e500a1afd6882fc66aa9e1afa23bdd5345f961b7994b7a58811063148044f392dc1aeaa70d18ecd7450ab9254f56c756ca2fe762f1a69342cfc1de5a9f7b57ceaa805477ea7041f49c2b4abbcb42e0d1949389883e243482d3b74098e0c37fb341ace5546112049a6e990ee01d53ef3c8b91a977e074250ad3e97d105135bf5f452eb25653b0e267053550cd7b72d20630811227f244eb00c5d1d7d1690824b5d0315005c79bcbe613c095ed5e42d8243536b7ea6d97588f6521af342578fb83b34b2ecf68f6b1f8ff543da8b0da831739afb7769b2a1ea157d93227d6cc38e6157891ea2a5c0e0e7581183b72555b612a98aabaec1242edf3d4968500f2c183f6e171d66a9745d425481720154f2dd6c18e5d6726f0d7410e0a73cb1d74cd98334728b63c0c408e476ace5f4a15571e32b3f1c78e537b686b79dacf55ae1d217225e1ecae8e44ab00dba286695cd645dc0e413cf83c545f60a056c603cb176d9320ed518920c85d72fc28321eaf91c64a04c47300ee2ef373396432f297a4bb84cca5e7112095dde27173ce703918adcb566681761fd1c48d011c0ee78a0a1fb006701a82667451a57114983b3217a0876bc61882500099d92af44daaa9a2e2c6720d404ccac340f39a8651c649d491e6a4701d7ae3bdd9db073f81e8ca2f8ca11e801fd1554c33c05b72f065332ec18cf753ba507117d48c817f17e44ddc65a4b9a738d8aaac957623291ca6cebf48827ddc9b67498b0c1b71c6b97c0a5c5dd97740990de01660f380df1e5084d508aecfe7f464f71c4ed6f6e9cb0fe6a5e2b1862c2011d70e572f120cd9cafb42ec259402cb76c282f9f72316f9f3e0f1c321c1ad98deff15b8e9d8d1071cf4fa8eb5006c962b953fa2adaf44e0c18ff12b897830f43c456fbed14b7e0c0a5efe3902f20da29625c4daa3850865cd31a77f3fb45f51f93dbf5d398182374d4bb9f34c340e99e5a606caa27c3c64e3e9086bcb709226e747be38a43bfbfeb0456724de6a1829e54889a8980bcbbf06c00fbd4e37c4f61e0538bd2224f86444f0d923f9f28e15a0c1379b1d929bde7f7a9d35b3bcc4c273d225d00109054b4c5389dcbb838a12d09cc6d54f205abf549bb65a8559184072d554c5ee51d5154260a13a104a89ad743e5df1d2e0a333ff23c79204bf9d80ccec78082bb0d805ad5630b75ce2c14f3a5277924cdc6ecee02c8dc71e6728aebb86f2d192282ddfbdf234a914683c02884ee8902ffc5c1b2272bf40cb0872c356d73b16462ec65a76d9ebce9db6112f237932ec398803bfcc405b6b88b52115bc5ae1e0ec68097f00599cfa0d34234332f4c47405376a8611a8bbe549a0e6b5c8e6d3a2aaae71b2c864507f96aa01b91aadf153dd530ee97fbde09ada3810600015b808e923031e7adbba7ddef6a57d60508762bcf18102c45cdda58d4c38fda89f1137bdb953b2cf41f0eae67fa6581e352076b1a5f719cdea403486b83d686518953a8475eb3df22fcafd9a4976f1d0d31a91966671e73d0b7491c303b1a35cb4e651fb6cf7046da7c1b7523925582b4963ccb94767449a45eae8d008b5545c612bfad0dd027cc9f8cc72044b0132383525c67053a5543b36362ad60315475d89df710e83bdb0d883c69495a654aa9c5017df398e543e14a23acf4f16f67d800cad998d301bc7569d0febff5b9e3a9c873e444aab4e75fbf2f1dc4c0658ff446cb039447b0400a1dbe4b19934dc709e16f89dd144122a2b1971531dd94aec678d6ad8783b053e90daeaeca22da9e58244beae6646f8bb96c76338111047c06e1929763cd4303184e6ec2d031f3ebd79a317ee74ad542cb7f03b0f01a60bded39b94bc1525806411dfb96ab2877130b98f226612ee75ba661f5d5a645f815d95f495d28d9d21eec299b3aa1e18a55d56d00535171f6296ed4d828586feeacac1ae04f0da17b823e21c1c4efbc35ef882a11cb564138c3bbe73bdd3665973c4ce4faff2d6641879bd66afa6f2ac08f33636e9bab0c1c26c25c9fadb40fac66ac62f7084ec8ea5c7f96f9ea637d104fee05940a40236f1e623a435fb1f8056d0c80047601e9fdf64e8d68ddc1c01667c3c4226082684a925133aab5e9ee4390984c074ab29bb7a0158c8504f92cc3a6aaac5f4e1413d8734761ab8d8984bddbacae2025d74b083d0deaf5b49b59cfd2c39436e7f4854bf8ef310f9aeebd04e762d187e4c98f112a0bfdefc1b5bb537ebec434bd4f21a78954d3a369bed80e8c2b4a710dfb236858b23b57f03aba090374cd8e4676b443c0b43380ab77c6381877afa4785f22f26088b64fa31386415af021c61b26fe91b8811b482c572bdf1a665c3edce2d082eb202b10a5bc9c9ddf2edd97b30d89830288dd27142f509a1f78043ba4715eb0b521937517c187b7519f1a78082de68e4f8728dce2ccd42e5f88a6fb49f99d06bdf82f61e589cd96f8faf1cf806c91a1faca9d54de9667239f0755acec8746fa9bcde306a9305ddbc35b76bd3250ef87b2d539bf2305bfa18d9ac17d15ad9d0c8d9f5a9915a0caeb9fd516cf2eb45451cf01b434dd8c61336ff818cb72b1f998015810bab4fab0203adb325bbe98dd792fda934bc48aba32958ec7af8f920dff9f1f02ee238d55b07446f3eece494f24d9f18d094f738119df6818cb3df4a23d556daa241cf4a1412aefacbe39d1d834dc6393c09cdaf573042514c7636a0e1c252618ce5dce2b37215fc72efab9d5b96b522bf26d5a3d2a0bea3828b86cbc3219969a0639409ec106df696adfe4362da56b029e98a05108910c5b8a265881c7aa77ec2885e862c285d317dc5ceeef3bd60b680ef6fd9619505e133959f2dc6128005cd3976ef350d0ff61a415438634e0bbdce4d8c4f2aa930f85422783f62983a9748d11571045c9b8869d8baa6c9d5189cd684cc1d1e02c83d701b4f5c003a090a4516063375403f6e9a118ccfaf968c9a93616ecf5ec8651b9d518dbf525d842dd9ed1f4a543e11c6fa4abb93a887a374cd202b641302ef87541f34fe76e6434a8c80f65a59e631dae5658cef6e5d72f68c0367e3aec903637ef3e3c7bd5848daa78232241dc932cb41dbe6fa7ef48adeaf156380598d7940d2edde6f26a06c4e69358d9d0c64457ec2a28bb879c4485172cec3385e91b76b29c688d7ab25476c6c244992b6cca86203cdb6e7f4fb076fea926889eb5e6b22da224635801c2565339402aa485b9835ae0f93473dc80006e793620e85944e5bc139e882bb3941b24cb10a374ecc3a021a29b4628d8b7753ac2d20f7631a36b227b5d5bfd2d41beb76ac1c5cc578f13e9f118dc86c50dd9786c8b1676b6294a577e281f43d65036cd50f9492afa68ce9136acf2b5a564443bf697da6b86afdd29a31ff365353e3dd86e945438971c03c74ba0dc1bdf02b330f7f48169e040646ad90a6f7c7f0d2506b7a90fb91f0140ce9f3db5f969826a6fb9fe92932ae8b6b246f77fb00ebf587bc6e4f91943251c0925b88a07ab8959b4172336ef6f0f66c953b97862740deb7ffef29319a2afae18f974ea192b1f951b981de25200520cec07e893042b659aaff4616b1ba70fcaf4c9f7ac3b40a7e1ce620acea1ffad581c94161c37a48d4e1a5d597d7547a1113d692e5024185d575871a9ff402f866a59a673da2bde78d58e5ea5db24eca0f26689bb3c8f89b2f3ca4f2718025f431c16363123101be8f91df97047f332c7047517d78e08161bc252bc2469337327e87021d6d03b9e2ab7fd48945805fccad9849b86085201edf74db1009e7d0e9410e0722f384339f1499fcb93237be93b2c7653f6fb16eef4d2f1894394f950be58f53b8d40db11c13fee2d23fe2437baacd26690a99252601dc8a5b09a6c95ab945334f65451dc9a1219f7b21f1bb36fca14750596c6b20b9fc02c8876941e6bb9a2a54db5684aa966eace2aa17d01c5146b220cdd7cda15f50f1896f2d88475a3c1b62158e1dee26537ec921b28984b0c26ad5216802e5bfe925c1a2461923fd5949366660109cce56054c116d5f98de5a644c9a9e0c8ce7dfa0ac8d382efe7d0b0554a525222d9937ca8dd584e72f3f29ed23acedb733a21e4dee33edacf7e01f5d58351e50dea9ff57403564ada0864bad6eed8b4b9fea3e399643f3ffdc6ead9d21545f954eee1bb39f20b7fbe2ff5fa2f9be11f9d770287020ac2c1f6df5b361163a785e2dc55d41c96afba116176a1298a757866a2c6d76363ba3e2324bac9357e256e003956b398fa966abbca3bd9feb8aa59bf5c2aab8a8a39c5ea77a9c8f4cb584b3ff9055310a76fffedf02012c3256215e4e3afe71f8ee0e10823c40715bd9ccfa668f2e4bbe15336a3b8d873fe2b19ef9e28c0cbd233856bf224ef4adef7afcae96802bcd37a8e4b33374747993dc628ccd0e0e7a3b555a1ff586fb47f6a2a0a06dcda67f4c55620febc75dea225d400d918a262ba405237dffd0c3456e38df3c5c54bca47536a6bde1725c66354c79c09ad9ef293eb69f40544f91d6d71eb8cc0ac244722c4b04729fd5600232aeaca2b16c0c16e2aa9f1c25d8be3e7ca5d330ec6888d9a528c8415d0ca5f5563b20a85c8d6de6edc5481b50765f0ea07d2807be57aae797d022835f282a10844b931360ee17a1d3bee5ca1fbafac87d07ecf18eda8685fb35e6d45b3a5a1a22976992a4e0e9f3aab789e2948e1a10167d8467f8613f9a6ebca6c8ccfa218cc614949573fe18265003a46cd53b240adbed633c42cefe66f3a2d32ba078726154de42685511f3ebfbe6ff971a9f5c604dc85b4bc6f64c021f861bcd7f25b0ba009efebc48a11de96fe6e6ed468ab928447d422df04c6ed573ef0ecdc6f0b30ecf804d39b759a22dc7bf3f99d1a9186e073f27db82663590f051ec58eb25e2c8ca19c763ca1efd5cc76ae9773e365bcc6f1fbc36b8b5860e02c2e33a1c1e58b11827fc55b461e58a66950d15dc3d0036c638cc7f9f21f1d774c910d0a88d5e3243ae8eb5197bfb5c92551ab29416e92c32323fdb169b1499db755b8ff1903fbc17ab2094195cd83474c1c14032837d2b06c0e0554021071af6ad54cfd55d5cb392648e45711efd47f0836e5f93e8e7d48b40a5a51531771a2cf93b0a7471912ad5593be3d0232a5004b9331e8ac097682bf008a1c66402415b7356725b0d2ed8e97ae3f8cf40f6f8d0e7057fe776a934fcf80993bd3851bbeff009069a5ab907dbdf6bd7cf3c52ce6b4abbfd135d14a9a1e8b388e1663e3326cb352da898d4d3bcbf795288ebd04a99ab2a8bc2e3e331b13e54082148cd8b4d5342ed72161a1472a04bf256c1590ac1f9bbf5768efd4d049d82469d76db789ce00339bd5a632be41eade464d467d6f4401258efdba93cbdaa490f6ae46f8bee79b32b46067da3285954cd1713941046235435ef7d21d78e7a85972820a7b524241c75ddc4bca435392f63d97a5bb86bc4fcefa8201a7daa9cd23c5e45269d9a3bc6cbd44083fd6f63ccf6e6c4825adb8be29befc1522d8ca4eb5e44032fe4c93702ec01e5fd828e4bdaecbaa3754054b92b3b1affe16b3b043289ba874673dc237f21b9fd9831d5ac5c32dc78ef7cf87d5713d58e47eed41a493de50da710e70a5c85b87897c8f630ce67f6ca177514c81c6ee486b28968d2969cfaf25c7dff0465efb67a89d3259c32d82383863bc5da19059d2b1788c41d38f2d7d43180aa5a7e8be3eced8fef4d68a6eece4838d1e7e6e9688550db2dec5b32319b7cff091f5538d45505639878b9dfa55ad87f38a1a0942d24dfe749d522fafbe12dda89a33a696425dbee5ed61ba617baaab028c8330fb69dea0d4d65433647f12aa58ea9166905189b61aba11552a396f3ed2b856cb58d04b610c56231c75488500377c0690ccbd0bf9bbbe52ad985e42798995e409f3ab2732474318a83c880fac4091d658b3425fcee3c21a0b69039d74729265b28d5581f356d35678a6c33e942713bfa6c8aeee3cbe66be28c48cd290b75818949f62f7ef7354ecef00f34f8a7ea735fcfddc2ef8b9902b135171f8af009492a2aab917ebcd7d042a452469139d0abbb63d2f4e71888903a1eaf69bf4852573b571e8d2b58928d25ab502642861eae01ac8a5215ec3800c90d12b0876c05aed8a2057351e75ef9e92bb57136a2ea2e38c6a7003ac09274df8213ab117343f683dc55de023d973a1868d3ff2390304441e448ebcb27203a86c8d9de5985d4035882ac106d8c0d1255b97459bb4aea15721b3d0eae0cbd64b190a36709db71bae25b0d09537ab9b3c6f690a8e4871f6ec44ae7466f3770bf2af7827446bd5291e59565884f973d0b393f867daf649ed64c8507b7d9cdb726441a1e178ccdcbfe3ba65d6984b03f2aada3e74c4106bea85aec1117075d4affe59047e2690d5b684f75f739a00c51f0f806c49e2bea61c2d33cc63cb9ddea5e392d00356b0f9e1976d79ca7784b1ca74a4bd6e6eb9afb71d378798df86af851d32110a15d3c476d02769894c6e8058494a22db44838e006462cdfeaaf800e3c52d6f5e1feb1543d1d3d3b98e9367b8db80d18eb20235e5c7a36e37ebc057f67201c5497dcddef88e47172138c427267b2b05ae4f2e8c70c39cf51ab8f1b014c7389f824c186c7c02746cba7a6592bcfb1239f8d92f573f2bf1994504ac6f72e931fc8e88b4e53398e29c4d44b9fecce4d1e42a11affe2b7eaefd37f67b31a40be6a1e21aef4c396ed0907a0afca17be7905da810d4fca29fc7c2d53fb141ba23bbbb07b68248be540266098f21565310a99065f5ec1b1303efe7c6457beee24c1fc9c07c637c515cd64704496b5c970805a7e04e2736fbaa12cd60874edd085cb4a471b4abb98d6be66e33bc506296974b0ac5e965edaf0e778bfbb003eadace6f759a711612b8098deff3441b9733e2af2c11a18edb1689b4ffaed7d99bdc26ad3a9b02296ca70a5ec1081b7c17349adf6d0d84a94a8f0384e3abf07a14b5b4d73c4c4a2eef35b2c1059681489b683c8bc5e07c4fec073642d850c901d5459a91a44537179fde93f828675fa4d33d40a4543d306dd1471bbb1444d6682099981bf11a692ba7d8a13186db16eb03c38bd2a86bd546c73be61e9941a572c091c809d8b137f445c20ef272648d60c3b66c57dcf34c63a15d99c5f1df616bb3b81697c406a860b2ce20c598a8f57576aa3ebdead4e8fe588148ee281b838de09f1de4c53e2f93d2d1b7e45f67947aec2f96c4d0d812ffbd354dceeaa0de63bf226c4cd04723d485e2eb2423c368f3900656ce75514839204d48ffea00d6a4444c429b5dc6d0a52cd057fac43b4cbcf6c4ecf74f9294708a541a21adf063dbd21976531d6a24d37aa61edfff1a3b713be83ecfca3e802c3bc3be3879917c6083b6c19f58d98c1503d80cedc0bb1891b6180be94f66261e4251086dd4eb163f44daf5536a18b0e18cadf29e434efce25c26c1824836f7558ef3278fc353807b4d87b39ebe5785e4f3758f5fe41e77d9916e40359ad9a3b3ca5ccb56518249418308e37500c667b0e3fde3283ebb73abbbdf42c3cd0e1a4540cee497c415f2742223fe738bf5df7f57e04c8d455e7ad819603eed7c115ec3f3ec6f85fe6c506809e7aef58a15a29c24ef84e32aa5ea175085689f97dbd4015d01a130b443e65c9b2e9aafef6e2ee774d615706759ca6bba61063abedf3f2397a8ff96da4f97ac7916800a9abd78dde0eb38ecf900a3f16845d0b96e05dc47cf513c065617d5e0fb6dede9e8c5118b00d3409b977e83d9f9d0ab8afe19f2f0270bbbddf1e44a466f536a51a6a8af81b3ef53ca03502c339c0467ea8f07438ecf5232948373008842258cb22027f54e0c60b694e028ade4f828df7bc1c306ad886efd90d7be99a205d61c51b007f079ee3be18b8ec7aaf0e0830760bfc7ed4d5e0b10bd6a77f7c21fb235c453151a097bd8d8c591c4600cc5b75a8306a17fce7faeb015892643ade2e31a1329bdae6dbc8161f6233798455f7a8e0096b9dd1bd6a4ff4965fdbb764c19e9617c5f5212741e84a56f00f63107dc1777b84c8713d31ccdff9b63b7b5cf2815c65770442b82d51dc4d1b43f12552985c8675e551b93f2f4a185cb407f6b27ac689ff96d9f617d91aaf8ee56e8c2eee2ac6081a09b986c8ab7fe3c528fb4b7144f57c97c23e7d70a603e483aa9d43c95827ae4c8a820f69ac455b7c3f1f119b47f7a25df84d31efdb7cbb29c210e0e2ac9800e4c4e441b6260f8c2662e01f0cada8d9da11b10f94e6fe8eb70ac102b2cb7bb490cc14d6111f2323544f2260f180773fac45462788be53586ce70921e373568734a89c8db9315b91ae03db128b99d21b39d71942dd7d9eca310f2d129f7ddbab2afa6e3da58bf2d5ce912e373f323d53cf721dc134d3143a19414f0ffe2c58e040272159078224960ca52c38491a6c6a5a9bacf12ec11c7732f17886063e2d04081a6fa17f296be33524582b9e08ec91127382f45d9d4fc7d93ccf742269007e90bec144abb5b9bf0827494f55ef9114cf233c25b30647a8c251518b69fad2b50026f2293bf35a1768df6e3f02a4c91e1ab0f724bc4d1da7f3a5254f5a955578c60d07b72cfdec4623b1c31d44aabac26edeb77c8d172ff3a31de7971bf458ae0b797f6f4565efe66f4952a312ab0534ee6200516108cb89f72b5e6e261c5c95bba3312f4d7bc46cfbc2b5dc5c3cf91fc9ba4e76f38996d78e349c06da66e4cbbda0d06928275feafbee125b47cbd3b3a456322320022df6a389a321a1bdf798f135799ee100ec69c8ca5d23826d950b2c3bd7696ef5871ff3a9793a0dd5251ef5b38861528384cbd397ccbad5833e842aa57b53bd3831a00e58aa559960b0138412329d9c78692d719bfadaa9c238f347541cfb0e4be690d45acbc0e90a90454db5ed737301552adc8fdd7a833a6854386c42557a191712c3c17263d4fe6b5395f04209306580a4c7d080e16782910d7fc57072914339edf735b3060c099bf50b872434d6c715a78cee48bbc81f232153a941971c597b87374fd257d477cf1a536b2abb9ee7dfaa2ee5a89df4bdb8373f1cda50de0eed5d2f30a0863fc95f06720dcebbc60144ea5353d587c254e5e67080e7a0db0f25fde165d9fbf8806ff787fd387e0e2ea24cfedd688a6a5984cd4e0de392df4f8efe2fd2a06acca51663b6ecc6a2be10e3546f73ff9ff50790c34ca6b8089ea6033a4bc3924daf6233fffb0c24b2900ca7d88666514067c0c3c711fc050aee09c1e7e1fb2ae0f991773f55834dde39fcc03223f018dc733b4890ff960b1ce6d7f1daca953ed618df4fedb77fc8117886ea80f6bc6c9de30c3d6ec0343088ad1933a9521e044d96f0335daaf5be12c825a1b4ee22ca60b857fb3b1a97ee8d922c3ea6c44d34e85566d3ecb7a6be354835b6e3d79f75c474530a9dd83a07ddf7c6a460232c133fc4b1110f05ae1f4bbbe9d5afb15256ee4561c3c5f29e844b549b3875c7a17fb552b8ebd003f8ad621866e4572d74b3d7fbcf11099ac19b708eaeea1d09284c6cff8fd766b2a650de2f86ae9c8ce35f98442208f4af3f6e2facb4633d639aa547d112a2885ff5525a3d0880c32be874613a6d8ce9e28bd31c30a59a2a555909b1f449d60635260a705cc1f29d9d2d7a320dbad6e03b1b6c0aea6df5b3c5e13afbeb5c02b18c9a9fa500d720f9c676b1fbd202cb5d7a4f4d62cd2b388670395eae61f9bb82a97d3c02125b866221e15202fdb315451f6c73f8c099d69e848db4fe0782fb9a673d00ac3b9381802f62de0243a8681a9cdac5dc55ebd4a28efa0045ecc1143a60de0083ffa29e4ea4b9061b930e873f40a218189610c3312c84bdbcad63ff0cf7356bc7898ec1dd87d4df2dfc6b95b126aebfea68f6ebe08703fe3c45cc6ed84c995221ed69199138f07481e71bf90cbd7667f6f60e36d5603ad19279f5edf666064667f1f612f53120c0e20e4bf056ec2de2ca2ef61a42c44fb4347ffdc3fe4f72bc4fcc016b4f8d5190b7d54c91dc8e99d7b57492b0fc35ca3d9a8f6a8aed120009baa3d54a7e57ef0289ae18e37c327b1764b53e6bc53cf2d41422be464e46eb8a2d0856fa9ec08b44eedc8e3205782906b52ec9c170ff7a554fda2eca71bb72989f2edadf68cccb58766072a954d5f5ac473f199aa2756468fb503137da9b5079a8f54a4821a6e6d266c21426f9da9f1878b5ed73838554da3eab957cd0e5be81fef867ac742ce214da137c271f6c40a464f57938b8a44cf83bc17b675f82eb89de9e7b95c98977daf725a5f9b00c6f0e98036d5932d00a100f04c8cb9f971fd4a45199893f953c4b88179f2ff65f924ab66b9fbcd5f95aa489399c4b0464e002a4fae602392d8d2b98adbae1ab1a084daf4f1b37518640f2ddefb3ace04fc7a42c75fa40f397b7561489dda1562f61c4c7ad839298a36503972e04e83cbdfb61e559caaefb8b7129c8258cf273964e02cabf7ee8bc98fa002c65b313fa48ed91159d043c4d37e01da4b99a2c4a3417888d28b849de533b089df15f0b393afadd89b9fea811c9db039e2684ec0c9ecb49859379b02e7912747546e21d502c5b370d0f9bd2e46d472280ce6a3f1dc60e34922b139e0f9684c2bd0036966ebbdfc2e7b51300d3416c7c891501c036fd5568fc8f6cbd460e01a8992fde6916994332daf71898956748a1facbe34fc05d5dc309aaca1677d09cf6579039858a4359538dcef773f2dfbd0ff7ffa1352179c4d85e46a8823c325109c3514f40ce29f541c8dddb27e4baf42edeb9548419c6028d7aaa42aa7c92a3a7a2585ba553ec8107625f7ef9fff4380a4dab3116d24d4d5ed797180948c7a19d5e93ca934cbb960f5c36ae10f03d3ce18ff903aaa4876c4db515e7bd59fb6dcb6bb5f4e2d83ea2199846bfbd1e0d31636e95869ab35b600b85d344d0d63d026a2fb828b8c580d67798e820f8328f8bfe5e98b2c97bf3cf7b2943bc97329f278390993d76b53d1b5c413ea199008bdd132f9658c9fe29f02bbe3a95821f15d8f812246ebb60e702730aa84ca5e522f9e6948da00ce59611acc6e4252d722ad216d6afb1b4c8a3ea99fb6675fb80fffd0ccf19a4731ec8172f29a0437599f45eed3e7b02ff2e9ea6246d4f91c2c8ec3155e56046bbd9987b959d75b40bdd1e131903fc7ca785ae16757ed33dd6624b9caf9f1150f62d5a18b0b13c6153cfbd3fc8e49f2ea5ab0b06e190ad71987ed997d9f322c3c8f01dd2d63356ed3d74097bf26ba6b1c47d7594c368d49be5536ea7d82dfa281e24b866c75981c73acdb7abbc462346c1567d7400eab8f12c79f29c0c46b2d286d8f1546d07476cca44ecbe93153d5ad1f2bdc389f355358d4f4aad2fb064cf2d26e8f5f1dfcab6580c07ee48803717c52b1477df632b474e46797cbf42d40b091c787d973ad44811c83d60a78026a21876b0bed19ffc51eb8c11f906bf7ce5dfabfc24a8d201aba85e480bf7c0d26961583d84cb25f69e1c31b4acc7050f8cde591e3fc98e0aca77139de8050d4e8232394de54cceae87ba509032b498f894593a84ed0389ce19d6c560673bebe571e218ea510c796157f0dc74736e3a5bcce35367adc8f2be5169793ee2d76fc43121abe5fa475ee3fc02928ccaf2afba1247abe62257cc2e722c24f837b6204d7e1e31801549ca40035b2e113d88d96190fc459ba2ce8c092f9f28ebef285013a1102b5c779e4fa77002661d74f77cdb6fb0c5c19b82bd55ba84c79d850128e70b9884c08df52990e07fdca40e47c540582937fadd70d93a4d77b696aa2d8df331760601454d856eb1101a2717401a17ae92304ec45d311db1d678623a22ce2530d574af903ed4a217ecffe97d1be69220670e8e0786a66b2c2eadab784b8c71fc8c37f81b0d36b87119961f2d039e21af295a34d241c8b5b3705564c9ddd2708c5b77de6f86f628bc0e3b1c8e801566dc74ebe6860a0a0d704ead1967e678efaac5f09aaa3f5b74c3a89de7de37f9ce3a11007fdeabb8aa99641d9a93743bdd47a6f39484cf99aa3b99ae594b7125649620c08d70fe8f1dbae927d1bd220102c9addbfc2fb298dfdc3a7dd3f7f8d3546885cbdf779bb81c6968feff61270404150067830bead7fa2f387fb2279e2c7d4ede9b822a8d18fd1e48db558563f609ba84fa472013b70b7297e8ee70b6696bc68906bc9574de49977b8bcf1e59e718715d84c4ba360a7190d2ffc7773b8a4f2faf60722a7d7e6413207bf907270c72c517e1b2da858efac16880aab0368047dba6b74e64bf6e1218a754375a93aa51167c676eae23fd241bc1e82346b6b1c72344cf19882cc862c3d53578a75d8c7fe2c3bab8bb3e3d057e3bcd1cd60e6b568bfeb08cee3756f0dcafaecc2f9af51bee4ffc52da6d0fab29da4680ca23e4e17a57658fcc97faeffef97fa5e667942b87d5a70f1f118a5b959eb99c32fea54c693d681fc9a1319b0994e1772cac2927d7a312807530aa2fdfa4392a468691f295e263a4ed762ab40165f67b5e6554b792a84f6aa2019104fdf9e70d042c71a7707f1653609601d608e3a1dd8263d100d4e7c8b17136d8fa86b9e17079ff754f3badca33938e445bede102257abc4ecfc2b4f62e99ca83ec19365b98145ad03edb795f9fab1a745d5275806fdbadb8899b34e2f2e0ba4e90979afc62c0a9adfe258214bfe51d6ca87ea9daf7e957a15d8da71738f59568d9ebc58f94cfbfff8387e8a1423da40241d99a0542a93a84c59f76ee6f36fe3e71eab9699122fc2bcd215c4598dca3dabcbc23828bec0a67506dc5c4aa2d1cb0ecb8ced3cdee989ff6f53875dad586733985e3637ad142c3855b664e9a810595f091e5343c23320546f9970e411055a6085317a4583b7351f6220eec8ac02b92d2b53cd5e903ab97afa511bbd4c3ea39cb217c174cd7123014a6debacabd9a3981a07c6b2bdcbbb66a8c5bd5cd767370c5c5d0bc83d09634c0dc1813bc0089bfb9eb657c3d2f2d726ac0542d5c40a609d526479d470cfdd0ed9025ea8c1a1d93430dbdcc441ed071a9429ac8678fec65aa8331bed1fca942d577aa96e4e8ef00184ed07bd21798201cd7ce4120efeb805085ad81b4bd263aa5b6a615ee23539c10dd37bcc1dce00f0c8b40e151e3f40262be8016f70a34a765fd285cc8b0c42f5bca3d4adff6bb3d82426e7b62912a3909aa9811692b727c1b1ef44218611914b6eecba7324aaa2a0eb96a7efd16636e3fc962fd003cb0e5bce001ed0c8dc69b9ab0f42118b75f813b6c8434d6fd7615c695723832326b21ebc068069da9cbfdd439e156c9afea34e0972ca3268c83e1aeef6a47c6ca9e454faf36f973a762bfca35da986b7cf1ae4ebe8dbad144c59179cb9d9563e51e2a9ae81951bf58014c63a3cc465013693d750e252f54b5f19bb1a74a688e9bb80abcc5eeb419a4e497bf3b5a1159bd9c6c28610d711b00401d1b2c2c8d0c8617d0a2ab0c6d5ea1813ecfdb7d1ed76174c3c31806c7831145661c3dfb8a16de93f1f00d540e54cf386d6fe2208ac9d27e3dab631e93b38b8546ca7036ef9885aba3e3e48dcb1a102e9f72a9426284af0eccfac395f20912aafbfecf3c79fa85a56f82119382c20d85ce4d0e2018a4fc437e4c17672c983f2ee0cad5f6aac6ce78a88ff2b2136346047fa625a82039d5d53864f3150e263ac27b9a17927f0d24249493bbad64b2b087a1b89de45c2a900ee2ce087aecf7f0d4e965184bcb151b601b6221dbf634cb733b871ab21dd3c1ce7701c1826397548f005bf1ca698e2b19afac5898be719275764fb1a0ac7265b2c216767ad2532c22c6d90f32e5a162452ef795e3dbe96b62d1087eeae5963966aefad69a4eab9a8a7e6b769a593173123dd07710b5717449eea817e13b751d9362a043816344e7aa0dd81ba32d70c32b3c3e35859fcea16ec37bee191cf0dbc3825394eaede01e990cdf6b41be6a452fecfac5b4cd90df1c543a73deb808806d826d65b41c93ba9578f7c0a72c44e4f718869f5c23681863333d5b24c3fabf3cb02ad1e28c76ea1ace9ac0b01653bd4c75e3337c7f936b3284fcc630459fe46e4ca08479dde7a86a7b9d34b81399195d3dfb85ae4d4bd3f4b9fa85032a3fe784170710046e020349caf28f9ca88ff672408a9260e0a2ee3c5001f46bdb16379a1704320cbf4feaf9837092878d89740dea6fe727848c8aa6ad79c94335d2393ee77bb56a39251649c7be804915fdd2dc366ae2ee94f9a09082cb2c847a2a3be07793a96b0318b0ddcd0b8ef8610af729d95db6aed6955e951897f69f9a63af2abee519e5d4ed647166c3829781630e83920141a411c043d578d1944d6c85e613c3c050068959d2eb33b5e53b72612383cd3d62d7212ee1e7c59b842154b0f44577cac4aca6174382a97a991ef55e455d9197dbdf447847296d582922a829a2aebdd83335e049c6cdd20875f15bac941a07c2e031657facf2bfb6a71b147544e843394e985dd33130288aca54e95d5ceaba0e22c38c72eb4bc4e5b88f51e809f70f50be94cd16de20d8123fa9628fed36ad1c5b4ccd41c3b0dfb93363fd0ff1061548698af1f66b414fafd1e165e10aec65bae4dd0481693ba571db106dc405c39510947c4179f9f1be7603c436182cf710b5b83b08a250e7a0de9ecfd26c65bbf6d228bc99fb445de047a16ac2d1d6df2071063ba1a45d5824ea3aa99632cb6fb80ee23e1536171428e317b1605f1f62e992f420dc1d8660dfaced72b5c1f97764396d93bdffa605c1c428cdcb87422d458ebc724247101d1c0918bd7094bbdefcdfde692ecc4101e2ac3baa56af51dc3b9f355a27eff2579cab3aaab4eae262119c1dc4b2631a94b9ac418f8aa74bce2b09713eebca03a48a6fe566f5812aea34afe6526f5f030ff8ec0434160f159fbc96b26c7e36751850104043936080e06098592ad3dcdd927977756c8c9d1fa18b6e22bb03cb7821a0361bc9fc4b2b1e99470d80214c460282758fd97daeec062379ffa3fe1b02b5580499579e57a45b510eafcbbd0eff97149e94c3ceea8997c6da345a24b3b43d85461c028739ea5181ce52aef38f768d968f4862317796a0183d388456a831cf753a95f5406c0f281604e312138ab0b7c8d7557e37f999a8be42053b2895815ad59b56a696d2652753959dc529d11b3f84851cbba624df6abd01dd0714aadc69f07b4c216e0c40dc20e3a19b5130967cc346362ed53cbcab9a15cda2b5ab020e18e649d76bfe2d21ef2941565dda9d576af8c3a7df666aa3f97f3c834a8b8ea681e836677bf38b172e96494529301b17784dcd9842d5d3e97618a9c2177ebadb6c900fedb9d9e64abc99c7dc12bf65f0fab803d5596085f61af786a4b264335f80f3ee4abf2d828a52671d2e3ad0a4bb54743f1b00c8cc5c0ce75cb4f0fa17ed4aeb685cf2bb03f913fe531713b57625af4669d530ace1458e271e4a19f8ee52f6f7e579224c2a73f653c7a53f34ec05e91bb642cad5e3d5b9559d16003607fd1382e823d90dca428b2c7caa7b3fe26582586bfb82fbdb69fdfaf803f3167c90b447854fc0a4b4442b3937dce4cbbdba84fbebecdc2fc00ac57ab59a0f3320de597f4a98c3de117aa4a4dd990017563979f4333108d396510af7ae480957ca3f7a34b0d0b68d793f7751e50264aa6a9e098e521f86d18fdc51b2c8087342f20a43b1d4b7e1096969388d23e63a96ec9a8d6fcb4bcfcbc521ca7e5ae6d154559c1794b5bd4a36c48cb7cc4cd94a85335112a0bcc9c4e38993a81114db934e595fc2fa868d590c16763337d9c53fc227b7905e22cc02615108c3153cb0364e4f08075198d3badd99a554b520d14822d6b41edba161ad544a052955579a3babcabd249e9355347a9f825b6bfad2c0eeb3e0e72fee14f94a23c5176046c5d79a3d1ac8138348e3bd1200c65004b7d8bf029bfce50436d3e3ed587cae8915d1f8dc05ee01f2fe69ed926cf71a3a892bbb69406e2492cf49ed2c87a58ffd143797b558193fa03a9cc59367487ab45fdcf3617ea45c16716226056357abf1bfc616051e50f5cc30017c20c752aa24b0945dc9e543ced230d3d244cda05327e2686c5c84fb13c5371e0cb1acd1d9925912bf0e1ccb8bfaa5a25e220947b9c37e587a2e776d7630302fceaa7ae5d677be8370a0a899fc76626f9d1ef04d1928e7d14af4adbc80d6a18cb0f53d6babbfc9604ae2cfc8b5c95464e271b3d4f199ad1e920e853280c4cccfd3acb4dad3e9709e16a05b59a2d84053c12b5cd6c1d8e792546e1af8145f5e0776eeae832c603b818dadbc309077bee12dd00768dcbc55dac2fa159ec2661a9f90848594b3ebd1d81c28c62e3edef5e245493140b253f8498001e83eb2de81705a3368d61561ed791ddd0de4ac7592409334bfeea9d01c8842e3a5e6943006c15ec33ba7e583a69539873415d6f5bb54988653b0e0260efa3b0de845339dfec8f585d8f42fd7465f868ffc8a9642306800d4bc10bcf344ec6a8f0491d3a05a09bf4663cbbdf2d973132b314b800fba88a7af0e1ecb68c652a6e8d6ed39b6ac0c1d930480b7f44698caca9fb0ad218778ff7b4221e943467fabc4d4cadfe92de01e6596e78294eb3a8613454fa2446cfd6f158cbe61f60418669c073de8cba66ea8b178ee7bff96179d653cc9f14f711610331984f2fdc8386175ac453380d7826ffe16bbbeca457761463b5602c6bdd121324975f7afe657dd0acdf01b996f21da9659e2b39efbc52167e675896547c8da28495fff9a1dba997dbea43afae44f8d77e2469fd692533cd1c8fbf3f0db48567541e4c10f454544944e38a4440ab31ac17d834c49d027c0da8d88dd549faed825fd6eb23ea03ace3745019b0eb56df4b87211cf584e3917de7f7e755c2c3e475612fa84053b9e8d2e9a81fc9b5dba3e8e159c659e461ae572b50560741081b40897b54d90b25f678213b9b8d71338ac6fc9fcd34b4fccc350d40ac193a8c9cabb3f500c770c994dd9d5584bbcfabd2444021dd5fd1f81f8f167450bda733edfca48ada51706d8c031c42dee60d211c01121920a6f035dc1affd25f6f8f09a2bc68d845a6d63949baf14290aa41968a49789f46b15b33519294fc9a6eb31bffecb0fa88d0dba26abf2619c05bf67a8688832d81f48ff9b2216662905ae8e2d6a9ec55f6afb0eef17da465a1b6cb0bdbdbf69ff4caefd0748480e87ffb949232d776404dc4b9c5148140eb2febba8bf2c247785b973a9301c83de22f43603fd7c346c0748c94bb9e0a0b7dd8c24ffa58d0af43c98c49381e26fbc2a8ea03ecae4d2509488095e2f300f6c79b3cfc353221b33475397b6a31660780c1b483c340898e85e4ed9e564b6ef5e7fa68fa0dba61ec5a205a4e366aecbd3c2d74d088097f3d7f4852f73021f73674a917e017ae31c50520b7a492f4c9ce237871cb49c47cae30696ad2353ee4658e0a8ecadd6cdb1e2cf650b3af94af47f518f5a17f378e5a1aa26e16bac92bee17769817b4210601f6174733b9100f2fe6a81dc35d2d32168a1e6d1b0c76583f150c0324d48f25846c7ee2836f35245bbac05060694b54a75a4516750baab30e1196c1fc24b490293bb5dea5b5f8d9e264ea3117ca9ed058182b08627c47e06d004e1afc91de37b5a6e30670fb6548bd29f4b0193fdf1faa4495bcacce13eeb45a4e5368ed10610568985a4f995af195bab3c0693c0d09f6ff68fac68f84bb0499969258ffe58dbc48c1d297c8ac1800f383ed1d3e2392f40d8cbb47d259e0adc3adb7db1eec589f5dd0377dd2df9485a5fee7eb908723207ae6e5e63710c0d644ed0d896b81c31f11369eb145a98318c19eeff3309ac497856b7b0f8075b481931e4a0ce68201b19562fa25800dd7c38b75365870ba9492f5cad3b9defb1ea89ce47e360a0e161b37274d0b4246add79df9a86c37d362ce55070234aaa862eaa12b38bf7a95b341e138823533d7a4ee5f182e78785e208dc9b3a20aca7697bf5c2f40e5ba677cff74b52f0f61b835aa2048d980d21ee4d68d569dc357bbef4185a318a6ddf0036bfab59422a6f2843354f0f9b8ae445bc5d5d6f2b9368616db34ab68980bafd9224f8d59f744e1661c0dc38d4bec44b9989bee14478cf5c9b9d7bfd464dadc8e3045b66e5795fbd7747a7832df2509cada619d9b6842a62459203974e60d0bee460196f1d52e9bf9979c90a74ce38cc563d937f7b3fc14e801ae97fbac5ec04fdb0717fd3ad646854ebd12ef70d785879d8a11360375d63501a383dbe0246e5c764394ab8c2bebc69b17d3d9e015836bfc9da397c09de0aef6e14c9f9f0b202675288326693b8bae2c79d30de044c6f105358b9b5ff1d8ab6b6ab594fdc9bb47bad48e84b3e5beb1f27a80662481572f5ea1251ee14992d3681f624ad7db5afef1533d6f4eb68bdf7421f6642bf14469a67ef0993562eaeda9f037a8b52e560ead21c6680f1d448e92b7fc8c64bc6645e4e2e6695bc0a2e7c64a2a63955b6f1054e865ddb7f60207d7326038bbeb2c46e75b1e760d1482e1228bc062e3c414a8161f797029510c2dee6f3b8d2b29be496831db99531fcd56dd477ec65bef37a7677996018f347bc53e2ad349fbb0fd2d0e7227bdae2634d8ae07208e61f6320af60cf66ab60c2ab18f804dc8f7bd7489f7cb08a0c86e0a593b5656b6e65198368fe755975a63d5886b70efee99eed024c18e660d89f7b92b41fd8ef64dc00ac9933302b392cda43440b667ce070597b2de3dd92513f76738b7088cd721e611f4f075a64ebccd2967411e6a01d2f599762bf3dec91a332777c102eaa402fdc0888fa104b4f8c86cb86bc62f6ced99e0829f7990e8769eb831deb1743a6a4de0a5d7f18c0bf323d217bdc075a968b31a6cd2a422f3b29c74421f29795f69a837c83498f26f21d8d2ec81a2682b16968d542d28031cf0b363989f4c93fb491519004771435db2f12dc0766b818e3e3483f37d0e76a6d70f5a66340ffb51d192a4eee43d11a83c6765c08ac24382f11f30a9d5882184aedca255972e06fab111f416ea528b663765b7bc341f6539f0db99d3b00dd304ca4d6b03b60cef95779f00280b8ba14968694aed24a1f96a08dc29c1558dc580e1f70e1812dd9cd10533e92fab998f3c4059ba14568930baa27fe0a8164d1d1ea3306a5203da37a9549d59a2ba05dfe5bc322200334144b2d212c185a4a94457eaae785d9c9d2cfd42d951f7c39bf38a476ac2b1d67a2c27973875670adb602f0b496edb64d2ce472abf6bb327284e2cc38df79a1c324cd3ef7511065b7a32e0d7c1fb26912ae990622c1c649f7d4e136d781a70b9aceed86cc84b0e566c2f7cb5660d920cdb1a3127e82a3b11714de4fbe5b6bdcf6bf7a4a6a23c575eb62f41752b9cd7ba772f33fc14866991fc97a02238dbee0a4c4e968be9bc3cdd83c94ca582faeae11e47e1fa969fc1f976d19468f7d4b6ce80cee29db60492db79450d635e50761fc965ecbf6f2f7b94acef8809b688fa33f6778eb2084c7bb982f4b2d16313418f497f6a2581d7d5b08b61622fd40f4b807b52452308622182c1bc0494bcd141238941df7b30744206dd9efc233c386b2d47221b3b1cd95c7b970086070ffc1cb68bd5cdfd4517d9d5dc84bacae40ebdaec0dd88a4971ff8da9ce109871aef047ea57fe6e331fc388cf238d8bfc9348144b36f9ab76b222cdb794e8f2efa161aab86c62e56d329cdf3bd6534d5407583d48df77b28f6bd85269669e7c55ea997f8e69c0ae3594673c8ab8c9648c155264fcba66f23886358fae9d3ee78d23c180eeccb0572a23821de2eef54ba3ebac1899898abe00c4119309a3de94991581d3bf986a960cbbdd66d9f0fa1c49ba6e62c9c253ae78581fdacc622cc12f075c5897652ae61e7c6852c5c3a51831c566b48b0c12269d9e61b4fc413dd7f64a6c31fe3fcf15ef3e1a8d24f089ba7b4fc4e03be654cfdd55f122c4c878a9401babe21b74df20fb0cec7edc230f0388ef098ad43661475c57ff60acd5fa8d14d8e77070af42f3391213e5e57bc360107f6c7e7f7a86b7433508485f6d27b4ab898e812e68b24e720b83dfc22309e283a775bc9d939dc88c6aa2d16236967001a7f62824a8a2a7310a2992e548de5fab1f4b7dd621da281514f12b24259829622678e1a5b1abf8fe375ed062a6ad5bb45c18721f8bf22bcaa90635f58af738993a5ff7d423d6b6aba44d872b85995b867b043b4b179d1ef1448b8f6281ba37c98b910914cad3c9a2458c05c60cbfd1985c0203c2a75f7882c99c0ae14f98d043dacb45197f3c61a199cdc8baf3126563a68ebb3d677591b03ab01aad47a2830b70096ba78aa5e2305e245006c9552481ba4563e38852297f1c09431fb21a75f73cada63bf2ad25c5569eab9a0c6cfd586b9ece22ca4e251dbfe436bf82f027e01a684bc0f08cc6ef0bc5f2316be6363a64f692a3fc57fded6e83d862e19ea281ca0fd846347aca42112102424ace37a15d5a272a31de471398f6b452eaca7281a97ce9f3dba87dffc9090366e4b13948f2e121e9f9c54f0eaa6cac708657e6552fe9d3ef0fe9df829e9e16d8a61f372109817a1f85c7469977f3d628c9934dfced169ae60a9d2bf6abc0a4a294fb7588732b1891233b234f15f775392af225eeb9016c0104504d0b91e710cedf1926245d55f8b993ed6017af3143f42693dd60a367be44ea42854db4d53122f03565be08b638e83f7e5e5e7394c559cbbebf509061ac0a46851701407569e5fe23497acb650408704b40bee5f2728fa5de5f84fb23cd9f8f65946a3524b4ef0eb69c8a4639419761eb6bd6fd0a9f3aa9bcac577d5d24e4c74b2d99f7f77ffeda89750e7facee584884d24b4b23c8582f6ac80411e7817d3b74f3ddab64dd3e126297689c7ce9bcb23794760312be2be110200478b93fe1fabcd0471c2500c594a79afe3ef1df04c0b79762dd5409ca02866cf69866884c062cd823e95bc23966fa7a865cea4af8daf0b75d4a18e6ec60698cb2643d20c64a40ca6b543c4c2894a67362fbacb182abb8321ab9e63165d6df1e59986fb7d8d03e274a6a1e93d797ff2bfe53d6ef4692f5ccd71227dbef548b9f8227a98888a6ac1bbf49b63d386f48f34b1adb7d82ba4b8e6af5c10b412a716778cd616aa1982aa2f0d1186a0eb766f6496d18ed7df4df9040851331f819a29229db6433be7b70c82f1ecad2d415b8d713317a51b59eefcac402a3a928820cd4c38c96bf0f7309767891bb7992c07e2a7731c3b007927577ddaa181bab4374fa1add3e210a5f920a152e1f16a56c64a80deccbde085094ecc4f697173d11d45e096fa4967a365520b4a9b9a5760f4c0e279db5dc2a8ff80172e6cf1b0085642c8cfa24e4cb184b1c80379768257c452317bf6d9241f89ada0bb3c618e7607238de986772905aa0110ad127665f463b76cff668dfa98535f8200be439cca1e93f9e985a217208d048f117f0707342f3111c9deb30b87c384f6b0c2026e988a4e51918ab173740870136912bb230965a589a49323fefa671bc254642955ed9da04dd81e6683f5e9a9ef468f49779741ea432b97d1cd77b5cb2eb2dbec584393bc087398ef3962e6ddace9eab1b39c3fd0b90105185273a5f48039623081f3a15e2f0ab6c564843068ad593a3335ecd425589574c7d7a22736570c0690779c29331840bff1fbee20d8f70126628016e095c6b733c9fd77043037e7cea3412d8ce8834542de05b4975eaaabc620f1ca0e7642261baa955eff6999f6e2527594d29b47778f6f4ef5515f5d2baa2494a79d60f1d2844cb1ae30c6477fad236096941a7107559f05088c45f2c7a5e69688fb8550b065024955a531a06582937c194c985a24b0acb62b990b3e9c60e757699014404f884325fd29aea8dffd1f9a00e39226941bc7ef5f2b3186f6075c5ef5cffdd4deaa63dac4a812904fe1f73bff16719c9ccdb0d9195279d0c6d9e4ddd1ad7a52fa2f562340d8bd933ee5b6ba23f2507211038ce80fdc1c983a1d4eb4bf4b779d359f937111c9caed4d5d09fa9ac3a707658076705e8690e6171eb010747f1c3efe713d284c3184cf2145eb6d119594055e47e63d6abf3f1e69ef26d6cbab23be59b75cfa67314c127539b4570279f158a98c537275770defae690c85d5a7317ad17192281776465a7c1c66cd5945d74452bcad824e22fdcb96cba7850df3f67e191c969235ebe4a22344579c3aece904905e01e18a4684f5c0bdf642fc59d0fc177fe49d7f456ff48295d428e29b16083ea7853359183a74671d935e29f3e852db49450bc2cd8446be67e0a6000fab34b4e6c45e93872c9ff977e5d6d2515605a8dddebd833882c0f1ddef0caba25df58ecaa9384923166dea586223fba3872d18e54debf87205a95c52d5bbbab2ae67d2db9f54c4edb2986202fa6b82ffa90cf6ee364a9d9814addc77f0cfa5e81c659d9bbecccca65b46fc6452334b66793a438da3dfd65b242f082b2f9a556025ba3360214ffff6fe97ad4352dc15223ac0fdd6c2b49823a97f7d6a87ec4de0252566a5349ea91473cb80a0b9e00bff268b13786f620014b86af7b6c4295f4e5b92f9236f5177540e4193efad8de2e8ab67ab7543c9e0bc67207bb0624b35628377eb4a3b262b9e6d7c161481a934fd0fd960e43d69ef684f345354fb05d2635c8d4bbf756b6e1dcc10d389969e7298e355c590305e5898f102ab6f40a9eebfd1cf282d88c5e3f8ea42896bff355d2d1514cb7f01d5d27f46f3c021968a19349b209f90abe198add24fc37a08ea2b4b2a32838f25a125e1250017f5e3d216be56298fe2a0b8a7d5e78dfe21e2b218b96ccdcb095ee52b3d8b046343b8beea8713014430dfd5e6e020a5d2320cc7c19587434bd72b3791d27721bdd21bf709abafa1a0c0f67971aa5cc14b760bfc7c4a63da7bf576290f6edae8559d51818d3b6fbc65bdf14e542f34d7b38a43f912338092d83c6f8f977cf5ec6497de69544cf24628d0588eafb0490103a81681a1fd7167fc657cad3b6236edb7f484c287402c5eb70159ceb3775d8dd5a72f7f67016da5173918e8f0c79b5c88aa4fb0c5b6deb9a9f86be17e43cf263db6a9c8b9c487482c92fb873228908681cf15557809a5fb3241ef76a91c347f52416c91598f173d4baa30d5d5f9978d78ef6a11c5de997afc1254b4c575a8588fcdf24e9ea1a078f7e871f1518f4e39826b96722ba5a67707e28debb23fe85a35353a68a71429943fd03c4a24d14c03b59d9dba70b334b353c49adc62a1855a1ee4991b1398a062675489de916c2c4ec32d19e39fe0e57ef29ce7cb9ac05d53414055feb2e34483aa86f4ee7c1356f3148d2e65cfaaf6f37553ea6ebf334883636dbb09ddf109fa4210151a726438fe1e280b3b114a9a028b74e2789bfaa91045b6febd54aed05becf80b74509f2bec1f155fc7baede981d11e5f885a0433449fa5cc06179eed96217552b00aa5faa29757a9613c62dee9aa92377e3ba2826925bd535b822995cc47e64f7a8b7dd54d2ef612962938579c759c16b62cbf9e6965102130610fc694e8101b452ca05c207ddf06e7486f546d32ca067d88360c6ef67bcf766f191b622fd9651e03eeec8e833ce90b90eecc540a5d68979ef46a445937115b65400ee74d29ff8717c6a9567fad7414d847d0416386663d04dc6325e284257f88e7a3bfe173da8cf9d74a70b0be744fb176713441d3450eb7f973b7e5762326d0d1ea62a628f62409ef9f83901622f10c8aa31ed5e7ea64b1eaaadf5dd22558aaeb32e2931154acf98453a28ef9294d82f0dee193a45fd5c28876d7b708eb3b665ee39595b1a55ab0af4268e381e5bdb64983d42a50d4927c09366729b6296c7736dcb42bd5edb3764c064c12899d0d2b0b794b703a433ae9ad2852301460ef01805e8147d6447e045dfafe39011b3c2eb4a9ec34bf9ff35441eb6ecb47682df80a6c5d3b6bacb6a00662157ba61966edb6d6a8274f489ccb3b9143973866a5a5771c5c4459422d3eb22ff693a4586aeb273b36a8a5cd09fcc3d839a507a737aea33e975207b3a248b5ab26ddea0d7df6488ba925b47fb8933dff44bf0d22c9e72ef8f5c5e0883095e2a34b98e62f26b098f17f60e78c9b37112b7d989855a1583ff7bb64bbfff59441e3bf8903916cf09d3acc8f2fad7b08be365ad5a80f69aaf8f5a25d4d070269dd9504dce94d9c74fb0c1c672792ee6c6d088140d784524dc2d389ac83a95f1312cc0c3809c2601a549ab448c6f3987dae6724a92187fe8c7fd586a4a5c1b7ed72b84b3d0dcb6813fa96a556813a610c81473c42b987fc7ffaa0d297abcffee1600ab41bed627cb70009f16bd56c6792762463793c49546295dc5c3a6b1aeb471de106c37dd842994f2cc18833dcf08a3d31604b644845ec203d6460d1ce1c5cb2b8046bc05e977bd1602dc068e1fe70701eb5856ea096a7558c4ee24014876d70385bd9533b69aff79848b1d75427a07a90191546195312806197d81395d78891ceb05f98d5a7f6957e4450574a8ea2671b0ecb3a8e90bde1e5dd8a82f418abb3a0ce44e545d63e8cb486d064cea5d34957b34000d4b8577f57a606ffaab864a7685cdd59ace2298875a14249dd02ceb19c22b6aebc68cf1696bda8d98cea1c257e0636e7f06ffcb21e4f4d31c3f2ccaf63505f621aeb01638441140983ac2ee3ad111d99a5acad643c57555f3cf14597a5d6cbb148b76fe1c496653302f915404d95959140bdb98efa080923737a9837fba25d6bbe2d9c4cdb8e605a2c31458c24871db571b4e4365472239ec5cc6dce53c8279eb4ebfb3d9e439aeaca241fb967a5c5ea4eeceaa493ba41bf42c2488013a50f675de332ccb0e7974552db0b5c4cd3c5649565eda5a7be76de93ab60b4e8af0fd9ec2fe0b83176a48c55cee9cf0d47ad0c1a2dbddb02793d12435fd54c2e98df0ea69c8171f180195ce44fa5d1358d292eef143af30a486f8a55a2c89ad4b4f9a9cb9be55105838983b3806f4cf34267cf121d4fffaed1b464eaf66003f6e25e35735ff540ab429bd0a28f16d3614b7dc0bb77a9d4400620f4790f4f147fd705e1377c2ba1f4954424acad27605145692327f5d603fe6b682d7c2abf9fdd2ceda501dfdb92475d7aed40cd3cfd14ea9f845de2c90ec140352b47559013e2287bbf90eeb304f8004b4525b104407bd7330b1b11a02f2d0708114814c1ca2ce9ad89de3c794dc672df686ef608bdd70de958a226738dcdb9f1052baf4e8c7f3cc4dad025f73bdeff2c5c543a20e3e12617596a43e18e5560573bc38df1a942e7108fdf0dd944d5f55f1bc850b4caafb3264627fd9c4a44568ef3e11b450ee43432074924c7548a13ae36f963610ebda216165b9d6d0c20191aec7215566d8df983a7bb48572ea3d262b0e2211fa57f2bf35c39b614ad84debfafc316cb79040f9631a28e496dd8587acc733de037b370383d357ab12eb621421dc41d48b8236c93f3b5ca82e111556c797374aee1ef24cc479e45d16a1945d70e7dd3119b4bfef996f106a77034485278973f2de8613deaa56a78801a9629803c2d8fda0465119a76e36879cd04f09ea138519dfef1ea14776fef5ebe702b6e07e060a7bc432e6fb3f80264914d52c57bee000c5ef66de65877354e3fe5bdb5b90ba6a2e49f120d6d839b77a4f4e658104f5550485e2c176397c710237b579f28669d9738dc82417f3394abc3fcb56653b1aea5bc0129b65f62f1c525c6f073edf30daaeaaf2c294cce1826365a82dcdd90a112879a7f4e36cdd093e329e53f4c081d54a33a35e6f9062ccfda18fffae45c4251d7a80a4703f4e275740fc6a93986d707089224cf6db0a671da5a07b67549785a888e87a618393fc27a99d82226dbf1933ac2307a36d51ebcc3a576e9edc24df8131667bed1b03e6013a9e305d0bf25ec6beab8adc77bbf2306a05308872ccbf421244daa6b082e45906b8a30dd210c8b06c951ffe4e49b23c3f3cf09d9ac5df3486c4e7eac35cbf66a26b9c18ece39cf6396bb51da06c47281002bdb7d7b6287df9275204ff3639c1cbe07b506647bff3bbb220ef7290877330c4d358641a922a1b04f2daddf5ebc67397af25b5838203d272571a5433e62177623b6a8e93a85c2c9d67327d7712960a738ac01b6da41103d3a0e6af764841dd123e146eaa7d48a026bcdff7978632002e5fb199ed6127c178592fc4bdcc4e01e0148e2c1547167dee9176820e0ce44964061040514013a0967f60b3d0231a4f08e9540710d062ac75a347f6d7b0289e9fa7de4d3d98a5ba61e3b432419c77caee7bdca143433a112d4d4496965519bc675126570e1e88ce161cc073a1c1bbd2dd375f22138c1b7e4926cf23ffbda201778250b49782930458681ef08e415d8c490272339fb9cc730e41f119be6ef65322585ed911d9bf5e455f4f3b14fa47426e72aa738143d7df4317bc3347e4e9fa96942db52ea7d6afa0dd2ff3079f6c97fe2aa1f4fad6f3b1e39885b64fad8385f458641265852924ca3770764827203eb93fc8bf63e18f09969cf1b272dbb32d894a4cd5aa019b71cb35ab70f24f49b4f57499b9dccd39fe61053a918dd80c7ac6b5f033ff1b26d09df9cc341b7f41c522c4a2ef05dd8ddca4af7737be05c8722edf4539b8aa528e2fa18256ec66d75a82b628205a02b042b8307a79dc78afc433f7662d67797fa4987feeea18eed56d7134cc570dbce1d548913435d84be2097641f58f88283dc90379032c6f2b3100ed2a28a7c04f1e0691e4d9b4ada360ad679bda99a81172e1ec4b4245be381ea5452af697619d55af44e04c4644b81e1776b236628b8b845f590b628b653f1c022896a58db2c87c84c26ec1c12d1cfb6074c7e1b80c3af59763aa3c38632a2978ea157bdf56874974ccbc3a3f136237c425f193c6469bd544e7ff7099684eda715dc75f98f0477fb38c4673d556caa18c5af9033a445cea3500daabb586e8ee53a578967476a7e6abb03c77a99a3462da75bc9e31c923cf2f7f9dfdf4ca8f5126394a9625a0f7af0a06259a4a15dc61b17003c3ff6c8c5bec82fbfb6ec4a2b952a333a24d0b83c5a5d67d0e6c3f10ed115e640596afa6ff87ec26152f5c4d73e9f5a1ab1a71cc1247052754abaa67bca0d0f1ffa3a590c2aa854dd4ba3d5ccbb8426e520599dedcf29defb8439abb7629af8381a273bef918c7f0f05a45e0d7aa11893414d69b406b6da95c715b4bb7b43ad494ef946e6850ccd5deaa7502cd1d85a8b7c2bcf7e5fe330afa6f55ceff2db0fc586de530f9675ff3d4d3aa204c9fbc083b79a392e95d506fcdab883d26f18588f1721b43840c273bdd708de92628b55033b9881027608ea6183df73dc240e1dd1cf6f76d65a8c874402d104a2290911097bd2040ad71878f43ba5302adb951236fc6fa0caf36ea532f28a88604807016b511bf3d8d52343014a62116f93f87685f4e231f9ae32445e456f2974804b986310280e0dfcc197dc5c5b9c670c3d8ede8fa4460858b4ea4e9f00a1181df101aea83fb7206664fd85cce63ac20f4ac7ae3a927bf30a5efe9f0ee929bf964b57c00655577b20355584d477c0fdc66e624521443054c885a3025b682c781e98fe8747b1aabc3f846ac3a08c765fa4d35337e8c1d4977d9cd11a8ebd739fa2d34d8b060c80f59754d73e2ef24ff2b9199d334f275812d2eed0465803ab307098f4fdf226595f7b172da3849a8b8f7344d41f49f9c6092c0496e4df919e411e42071672eaafc52e5592fe4dc79c418085b5a8ee058e3aba2843279081139dffdf10e72835f321da519a1e16855405474d347bc0517286e2b16111bfda6c3f951b0d0a38d96685fe7fda3e7a5175550dd9c467ebe0ff350d1aea0382916ad164ffb12f5fb1e9f5d7bd96db9d2160d74bd7e3a7e72c0ee794df37cd7ca3c8d2346d0e5ece549e72cd38e6196ace1cce125abf315cb6ec8c969ff232a5c2ec773a87295c595b848b0ff3ee548e225d65c3516f2fdb5cdf2456d063fd0a00a442b1ef19a90f830981bc1701c25ac8f3000451de529bd3697eb0b1f59764860b24037e81df14486f65cc28a7371c1fb5f96de161c87f7708d3bbca518f1020896091fc4393ef19d7aa32be0d194de8ea93e92303e1e4a99d5e25d915a01a0de47dd8c66649ab6d41cce6c430e6886a7e5499873ba220241756d3e4c71716db4d1f118552712d7d5d795c3954314016b99f2ff88abd773d3c9c6aee6643224218cfcdb7214b5cb2f5303a22a4add4fcb5b6937cecf00183fa304d676e46605923070b0419f5b40108ccebbb3f0cd73b001dff38fe9112d6b7ea11563cfb0544e2e93293b9fac2c0594ccf483f471fe5a2cfed7fe7857ededbb4f9b5cd1030c0582f5a35c556508e0fd633aa6536f66e4be2082c36ca280b9652760f1b8a784ba180428918bbe9b55977e2f6fe682ec0d589d1403235b458ae1d99bbebb1d9dbe52e6318a9fdbe77dbeaa5ca0c86c693572ed42f5467ea25f05cb4bd74021264ad9098b9f5359dca54a4eaa2cd9f6d130640f17dc562b201e64da5232c70b6eb44660e174da7fd51aec3d23adcfb21fc3616177680a32b4ad406372582359e613d77e12cb776133da3c4a58c77313210ba8333db1cbacf7cfad7903e598c136ab23a9df2af058dfd33c12626bfa496d36ac698617aae042ee532968f411c3317e21767beed676a76016a6c7a6f23756cb31c038212af224f08356148b20f2013e9454ffefbf1d61a0d5557d7accfc4c16a6e250ab2197dda248d2ccab76fc2545a258b8ca5875e6f714a5e6d1a72cdbc49fb9a3016a7b737f00dd0b3ee443e025c871c129f146ff9791469a409293e6d73bb98a3b6adf5107c3dd66cde59b6bd0f12fcb0c64c7471eebe0555a3c771374ffefdb997d2f327dfe5cf02e2ef498474c6a98e53033312cae9428e949186735c60b16b3bc7fe24dcf8fefd01b0f3388c7533db7799fad30e3c36baed38a34eb3ede136a693f86e2d03b51559e5dcdfa6114da8d35a6e2f50ab025edd4b9ca1fc3a09b37e913971ea5fd182985deaa8912f0f974c37578a59c538e36e5bce85c1062e0e80f6758d86cb4cf33431388b6290e6cf1e68d09da118883254e4a01b0be3d5af99f1bf84764ef9d834e6c249ece448a8e86041983b26068026236902db7a3ab67c5ff9a485de35a9b0dd26304d3dd096b68c4227437f12f8a9c94750438c4669b5fc44b65be31a4eec01d2624c73130a6df68dbd993e24e248aea81b9d3077e188d3fbdbfea427df38e5505f6d7592e0829830a7d13a6d0cf59d3217cc82c0ff26175b1725e212c73c43b30deed86052d37642dbdd4860ce72c016a3f31e48dd600a46b5f024adcde59f8559cd6d4d3b631c7efca8745305efd0a5f13fd6bc2fd737adf4607a4de5b6f54715aa6619309cab909b262dfd27fb4e5768be1fda01bdd8ac7bf934103e3e9fc648f30aeddecbee4ce872cdb87523546e11d58d49049933eaccee6ac7289441a2d9485a4fbd56252bb1421c15950e9493bff432a5015d7f29ec3656ee2a0063c3a9fcff81c50fae0c8239162ac13092e0d77a5782b49e9de8de56560dac524e1acd02d3ec4bc273d048ce45232dfecd02d12d0ea3ec9764135dd55bbbdc221117a03f02bbd2ef8a3b24ca5fa1df6ae6b66cd0b007d55505911af5e0b4c7ff6e1b4a8a67248df0caa31e52ef1de6b734f2af008c3c5bd101c8506f798bd8354860fce1af23b9760e08ba259dad41f4ea03182781d8296da7b3b100d77e4068f7d4c23c3720b0dc70aa21df2ef3503ceda45a7375ca1c6c37bc4f2c35d9374c3955ff0219a6cb790a258a2d9640334444d24ae0ed5a7038fbc00a5d81e8d4b1ea6949a3579d546c6878e6590389ebf0a3d09b33a1343c33a0ae27c682d8734532adf416ee08f9c4714354c6e90240351ec2c2c23345310fc8a849a9533a15d4dc9b4553d812b05fe65af2d5a7759012366d44cecbfff78e34b8f890792c5b2fd99aa45954b641fcdef8f7beb7379ba9546789c41b62b139b116d86e6d875632260c38e201a80678dc510da6c2bcbc8faa4bf231dbf8b4e92eea1433cfba72670f2985745659cfb7c46df02967363e84d693baa34331cce529cf8c2e06c8d509a4266c25916dd2e80ca660d39da9ccb0aeb48bf9c6525054cae7f9a054239146bb938d5f4afb839d0f5826403f0e4d3ffa82410ddcfe4114f0b6b6f96daa22f16ccc46bb2ec0232b481b0381c36c571fd473a1497be936c7f409e6c244adeb9c0cd5f5e4ec58f2c804ec6b67b682b314a17e4b25e3daeb24687250c0fceb2ea5ca051b64c1050b68ac3e0b4be31cfe4f73489782a126dcf1657e431f89fb3f5820688d1e8bb20585315d7e32551ba4decb699b3e73e4d685d1c2fefcf9a5a0f7c6d86d75c85fb0e3a600df200045c0eba2f0f44ce161fcde93ca93d63687a76bcdfa6572cc2964acadafd217004acad3680472180bfabf325d94b7c01d1d6c8791240afb8f43b14a45894ccff4678531cff6f82d10757e1d586a7bcd833230b7ece66a55037bcbc206dd635c801b466db92d34c5e0c6e3f7bdf4a2a8a920510e84b748cd50855b0bcc8c33469d483f460d2beb24b500c7bb0159850439514809388584ea33eae016a5af5dd51ae0e591d2e74a967378445236dd878680c27b905160d018eb0fdfc80d38d91b73578628c70ec5ce2803824818628118a07086016115f5514f4b1efd472497a379e0d6c093bbe1e44abcbfc87c12806e657694884e4639cf65bcda7e9a225db25504749a0fc298d78f978d34bd1e9c41db512f48cf8ddc7589d56cafd5b844e018ffec16e38d599d69722737fbc238c162767e0faef47b6c44006480c5f6ab5a3d280b113f11d47867c801c4884585efde8020e6216bc52074a26d177bce90eb014236e1f13fc3dc0a9278240aeff9d3256e9cdec5bcea520f1edd05ade38f4bf6021e4e018fa5e507648a4eefc80723e9922ed623b921f429119e3bef8775bba52a53523c7256f5858dffc64df1aa00611c244e9438f93ecbdb32a82270f03e66e1a5ca4e9f253afdc72dc1d0cd960d224f1d7581a70d09032ad77fe82ada4d7406fc5ba8873d94f090fccd66f5f8bc1532cf80f5d66ce309ea92075fad2562d12920976463973f6a3e0d0214c9399a67bfcef59340e76cdd4064ea60f2b531fe3d86c3ede3937215373f7d90410e2f7e65a2bd0d5065a728c3d208de2233b516fed25c6db233e7c57afc31e5228414955e8fceb3bdc6c5c9679b708e86426d43a8f049c0fa7067c370b9e62ed65f4f526bc55e202a89807f99e8be9e65cfcfd979df91ba8b51c1701109f052bd56951bd39bca46240a165e589c0d6f9bb8b02407bc978be60dfa586792ef03eb4c7a9c9099bf59dc597ee14e186f4fb73b1f4794d7a0749275d3e67d2316c1b38ba8da1ff2bac5b97b02e2c291af52f87f13f33cd848abb1950fb89631816dc0230c3a2c545a27ca24d7f48769c10eeeaa7d22e16bba97a89da37abeb8d0f4d74bd4cc2a67aefbce2f8ed5e808efcf4678e202cb92f9d12426359af0765b1359905da67251606a5e105bfa47b9200ccec5ec41746464f2d71016c6173efe49d81b27a97f9269022428b9d56bd7ff985edadc6cbc411badf5bd63b733df3605320e81391e7448a4566adede3489cebe177f08a23c7e10eea0547d3bdceca48ebe0eb2540f47cf91412f0d1c8d74f05747e4a0d12e78453fc4edd06bf34703d97c7394ee5699b42593553649bb89ade3a8e44b8ea17f804fd66c9ba4b98430aa8e02af5363629aff70ba6470f82da3ca7b084696c76236919d47138fbdd4cde68e5fbb95a469a9814d43eeaddf2b83304ebde4fed03e1229b8a5eb3e57f6ca3e8839756b46d69032779f91fd2cd51a36a8d69679a1475292fc56c510eec79058ec94f44dfde6e407668ea54e8ba6b838e719ec484dd7f3423522a68157def14e421b50c86f472c512c10ee97fb05e783b41a8acce4e06e7422b4431e86972b9e51fe8625a1b32335d0791e1d0a79e98c60e8e2a4b79d150328185d4f72f098c6eb899187d8714592a9380a7035cac62d9f0250f828f77928bb4b7f3162dd902291da284248ce5c6c6ae1752a4a38479100451521b8b52ff48b780a2665b7d6d8e0fe1732a99dc12bccb7842c64cb015a2617c62cd7957b9bd1d1744d6a735ffe386f0a121b529f42c46c1de6ad289ea79a486858a00ae5e013cef62066808672c08dc702f7461403a9eee137e49e3caa54f991300368642fdf1cf5f9ab1d7b4a1eab080e7ba85e5502eb63dbf24c243c08c4be1403b90e5f4e817690795119bf533195a65b95b957a258bffd57489ac5f62b6ccfbf32a1bf080d9020b9904bf5216c5954102b64b4a395cf2d7981c34032f7595be962dad6e04de1cb17ebd751e503f98dd28f8548ad20cbaf7b777ede758d36c7f48ad9a671b9dccbd98e2d08333c42ef6549643d09d107e0f7282d6bbce84db7c6ab83e23030fee90e007cf0f759bce1782518a4f3f71d9357d15003baf64416c9105bab81ded55593b4aaba39208f7b022dbb8faf7eaf9ef30bec7bda5d61ee542f219e1b8534b3b6c444f48e560d9459600e3b25527a03ad9c83da1a5e3a03c888450a5f2f2a82e14f6e44cd1c7d52029594aa0941a0a29a95f89d821b252ed82c1ce362a343cec2f27c98c29c428e0e799281627f5435a589fe5bd53b1f5c1a7f9b58f34a37b251037f9a7a964f363556ce9ea34dbe01b2aa81eeec09b1bbcc0480fe7bfcc30578fc08c354797ebe0b6e2525b91d7ba61ed7eae426ebdac38b80186f821a5104f40bf0cacdb6855637debfbfa1341cac7de8a416b1867ce95b958124ca21a9c323f3e04a6a7c1b8c9ee3e687afb9b60d97785209fbb4f37e4d361986eea632d85629aaa273c34980df8f179c4b67d464286d24c5e7755b22697f4484d661658845842d580bab73cd00be6c57aea883ee61b36815e027e6c4ad882944800fd5ab2daa211ffec047da9d0bc98aade69b92d84ad180b596c83a91bc791ddac3901e3564a93cddb646bc02cd55b184e039dd6ea88df8f6221d639e4dab603f4e2d932344448028d5c3fbbc12678c5b5c35bb4079f1fa9d6b4a5e051c61016a516045718c6d12212d6d7ce6c123eefda50018aab8501bc010393e9ddc9b4f553abd55783cf68e8f5d3a3168c804c6aeb5a0f2fce1cdccb010955bce9597a51fc4eb4e706292366b7299c87928bea5ff75ac4b33e0ffff2d1f3d137fdbe361b92ed62d30d94f0c307998fae73319ba74148221c8a2ffa6cd326270e04d6404bd413fe5ce52e5ee59910926570157c1d2697ffe60b6575e112d40e671c303ed2ddbea7b43f5168554f51d10270a135a64a4cd22d3aead1c68fbd7ecf5e74fe6bc43c83de7692f85fe70b296baf1be7b14ddfe115d1ebaa778e95ea971042b50cdb89887b82dfa727095ee3a830a33071fe3da12fd425ff89a173f809a1b4274eb520a243f011897f5c90506663c1b6d8b099962e7c236742565175bc968c3303b3cd84a01f729d926c4591208f2ec6b51b702a8ee7726bc11bcd72e8791255fcf4782f903b38689aed50f4480dfffe32dac7b8fb5773595d0986cd31529f593931fa4875bb44b09e124da51a46c5538f541c3ac7df26cd470db2e95f70fcfef5659017d230953279184301d3f0e64bda862f5790794ea433bc581944ecbf7b8abfe30a9b0a678ce950934d8a2848f6ac1470dea3de8ea214f5557094052561d09b9da5003ef0c5b7342fea349849fbb13bf71dff2c558c2c00bfb1e3c59d60dfc9cbcb6099fd0d4bdf4deed16274daa26779ebe39c0a56864f69b3b118b150ac5a0fa587c773b3c26e0d6ed00c0cd53f54c569d0d776c7613d1262c4910a20d2cdf7a3ca338eba76b31738436bae137a05c9e1adcd834d1bb0c5478b24649f63e21bde3473c10b167bd5299575837bfcf0c9762eb02c8a544c80ab564dd72241b0abc68b5a98225022202816fa590b42ec0cfc92bd7b746fcdebd3fc7858fe129a63b52c5c6d77d6dcadafc3335ba98eb200faa625a94b8c38866108a988cda08165c2ef03c11388eedcc017353754e3718eef820b3d32fef6ab997e230b1d216e2821f5d459e84643c59a78e6adad942f59e899015b87de5c000e4af307b14a7e74aa44136a8e743ab5e844ccee49a0a619a341315a64bfcaf97647a8242290122d2304528d80056b073692147cb41e65d72b607daffa2ab77727f9c895ca5cabd3f041c0dba19f0d97375fe66a0ce1a1e8f81387003d9491f7af89adb19c4e36fe4df98694ca66234f237324b66c1c9de7f286e3a2fcec7e3e084232f1d285672acd9246c53ba7027083418aa35645e6cf1499d5f97c2f956f9bb6c238c9de08b2990609efbd4d8c15106db0e9af9df9ec97399f2bc0040730b1018046830e15f7eb22272808d2d5ab0cbd8f8c2fd04daa34f6e25e4bccb4c0d9f870fbe86da97cb1b4d5419db75fbe963c3cfd9f10f6c7f081bef4983b31f7e7dffe5b325e4166580a11fd39dd70a30c5ea68a1b041c7a6510858d4ef8047d0987e03008e41a6277f967d82d915b9416919bd6328ac074fc686a32f82e44c6c56883923e04c5ca56d617f7e313caa3ba92dcfe42f6d158e9bb21eb37b8696a5b01f7221bda738e65a378a04fa49c9d5d0028208c6bf08a57c6edff6a00f95509415dd63cb2d276aad7f47cf588a2feb7d748b545cd5bc9fb4f012fd67f32b443debcf7f8c27acf8a70fc94e39088ae5cce0c099580481d4560963255750138c3f52b75b69b5e2b863d57c5bff509e33681f80620791d0782a1bfade5f3a0cfa358d7df9bb2338445c3b5f85b05c66415a5712a02582a750ea291a2a9d9f95eac67bfdd6e14acf2862938dad9adef054cc07298ce9ed6b1e01d3f7e772b444fbaf27a66ca8621f977b1676ae72bd7d2853aaa4525ffd9fa34f037a5f80d545b4f4e1a27bb2cf87b8b7d48e9150f5fada6637285530b790cbb0b6783031c09cc9cff9822970e5e28a5eaac3666679020247e74b27ef88638841087d6d4b7cf1abb3f0f3ef16ce0131484903cc595fecce13354adc05fee662393eedbcdaa16adfa0cf67c3c20b54ef206e84b28e4eec9ac25a0fabb95b6f190dac8e650d149f0e68e3cc4367d582e33775ba12c22e08c292112e31db64ff8e13b735421c579a358baab2bf02ff0f4b50e745c7f7529343cf3bb25c914b7fe5531459a6a140b99138365b142a4bf58f6d15895ac88070fddc458a4fa58b4619cca708d22542dea81e13148f45e6447cf733e62524a59357d24914003782fc08535934579324c8abad252634693956a9a7e4456018c40a56f39271e0e4c2395e37a35958476226a88e75badfffc71a24ea6eead54741ccf8762fe66a5de2ac14ab60ded6e097924b40586c7b509f3522d7e7ad7853ac195964f3d08b9d7dca0e3e2b1c7bf45718b4656f90dda56ce0f2ac3dcaceac397fbe19a145d5dd53d80bac91dd52fb468cdb148ddf2fb163ac2bbbe77fc792d3b03bc376193bbda5240de65bc9a486adb2b31efb233925f059f679627733ded6f4283448d6a84d8694de061021f525ef36bd26b026f2d71db9aecd77c8e56be0984872c6cfbaa6bfc48dee75990dd79b4095703f4156cad950890f2e5098c41d1341e009136ca4c85a8b9e320fd77b07aa0147975c94da4626f7a44f9ace0210e3f07cc1243c45a681d11815ecd3a0ab25027b8159bb5cc1bb3ca5dcdac168b07e3a6abc030e14a3770c58f1b9aa5087fbe8de9c1da2c7c453a4006897ff72cbcfbc06de64bd1c53685b5b009fde0009cb21055f8c6e8bffb2c98c3a1dc99e34768ef3941886acd2ca1550b868ce5f4ec26823be32c21bed00b5cf01b01451cbeddb9e9b57bc905d1f4fa2d5ffc68d1fe70eb29e864834dbff47d2523e0346673ac90372440243a74ba9ad37961cf3344b8fd8ba44218eac2bc0e75ab39dd892397a1f6810d3dd4e9176dca0856a62434736268ec90afa746d81ceeab2baa4579be12323ca9035792d1e6a36619bb9b8209327d42f4ac966ede305ed1b1c73e8d81cea7cc71bec5d4a69baa2dfb785ccbacabe2b050c7c9b47d9aefa05f30c14551b1646adab823e7b507f7cd3533eb05cd26361adade3b0126a76a1ad6bf9084d799c7069ef4338f8e761f6267901931c8e91c723525917703f7f3fa616740e9b6605434c9eee035cf66c361830554ff221c0aca8a2152bf36551905310c5838494c8d2ac6b47fcd62ee06fbecf66afd37c3b5cf7b656569377b626606bd4394e7abb8cccceea9dbb82c1eb1eee73a3303bfc475fddfed127a1454087bece2e82a2cfd2046a08898cd84c6e3e3cd210293243eccfdd5e45c78d8066350c30bde38659593a2983b810cad00e0489651f210f1b5adf859e9c58b94a01d227d7b99cca983fb9e0397404f941da6349f0a769e8b0bd2f8ae158abe84710b8bbf42b0d77048b61af6f2c4fad4e28def17bbb10c7880596b61ba3fd315619f1046441edc03469dbda333db4e04ca85a83697cfd08602d23e136292c97734b533b2504f06413f442c2f131718bd2e4edbe896f513ca739bd55bf0f789fc0505e9a98a85c3321ad1424fd66684b28a8e5b26a9922d7f929add8a98429ef84375e828e0cf731a9d2df0a49993650b8739ef9fdd8b6ca08159b73e76da31e658fb7c56aad9e212f06427fe17c6bf746b850e09666db8582f83dc817768796d14cdb1ef545423527e2b40d2b01107c3651d58d3b91341a55a8db084b9d032ae1df5fff81bdde42b640edc580efe86bf45ca02397df827f409200d85a4a9151c83ea0f7797471b7adbcd2451e681c9504becd26d5f8daeb3dfcd1f43c26108279c3f547e38d284a23bb51f95299bc0e7df4eca9b878de37346f85555029f3b701ca55e93c574067489eff3f60b93fd4dc58671defe1d893a3ae8ed2385e8fb34746acb4071b999b7d264d39ec4860913cdd056be7face9173a1869bf94c47e396efcdc196d35d65bec25f8af7f356ddaff97038234076a8d7a5d18e07ae47ebbecfc9b04bad9a34de729ddc83c1c4fdb8d0eb214a72eedef6971aa18dafa5bd7e0ea9254c72267cacff766651460a6c2ec782547b53350fcdb09f883f7eff150cbe6306649d2b5183ba0d395265cb4b554640107f32754ad78a25a11aeaf6fbb0f2e9abf935168c0849902b10b363748d065db697259b0cc083fe7be94db685a3bbcfc25f32376e85e14effe1f86445adc1ac8b2ec4b30379ce93c45555c9d882e2efc9f0f7a301bacb7646f036bf47d2429a2f4ded472ec343540062f992e0b013a33c1c6ce437b256663e47cdbaefc8667a7076d8b461aa49bb3e86d1f9247111c13d0c0d5504b1231075535bf98e21f6c3b95a1c1b2ed7e187433c6c3460d723fc0ed8e6748bd0d75d2b7b8692ba87bc78ebec7648611d21b6702c3d456d9d4fa88f59fb6fce955100d1017e4806fdef4a1002ed604f48422bf5af4a74851086da8585b0fa94079cfab9e27b4ec120851a495ad7d8f26cabe821e6707abb0b589e44408fd28ede13221dc9c750248165d0c2af294543fb620e7a6ba77793fc708d6ed6c53ff7acf2891a43bc426e3f7850d4fa31cc6f9ef155c24d5fe319ded9351d29d21f16dd93a493652aac1b3d41ef4a645c13a676ea647e0a884ebc17d3129942c8f15905c74cfa6f11b0f995a4fa2c62ef22efb968a43af5fb63678881a37b0533d9c03765945634c260cbf34114969c9784b969fc664d2f69f0f31b83e9e0a6f414e3f688614eef6cde0186b59e580e8e9a08d203f568254845541d37c78e8f754117b03c0b52632cf5ae523d018dbf1ea15607b504e85fa7be1a2debbbda3fa9eeb7d771ff164cbecc78458eb296f653ac122631371746063caa7ae6ad212fc6189929b8dd2dbe80e68e0a6579d468c0512ece80f1d756aa1e3b94a4600003131b4e146b14599b899a99e3385739b6609e0912e8fe4b08950ffbf8cc767ed491a5363dca03853f38811cff5d6429e704641732f7eeb8eeafd50f3696bf8d96a8933eadbe7ff5f414e7a051e992c6d16c6294fae68c5b013dfa2605d003a57aba848e3c8efa280a0247bdb96fb65507b06d696233b86c391dcd1b974e369ebdc12bfcd817df40cbf6c72484230305909a6a7f965c8ce965bc622fd5899f17962e690e42d55d1611e59f1c2729ef3413feb46a93bbda17a2feafa50caf9bd7506a721694433f78c784352a01b74610379473e4cf1d60db7ba9afcc2b8fb4ca11be919169294ebbf7405908573ab61ebdc2259e4af7264157d1190a7bd695e22b7ba44284ff8b7546931b1e39af1262becb59a75bd9e944125eaf761febe66fb172e7b22ba9937730a7e9490b4ccc407197b254dd7551368c71ecc49941e7a1f8abf02b41dd57310466e2d60891761da9298fc695265cda369704102c5b632cbf647de1a96f35a88ccbb7d678b6f07c7f970431d4eeb1952f8f990303ccc22a9e52db09fd68d908f3e8277e6301b3d1e82122fe74c8cb02fcaf776b5d5aaee81a8d5ea8ce0436039a6c2eb06ad4113b8c04168167e8abee44783de30a75c3fb239cba298b91478635abbb27a8fbf42e48759d39209e5698042557cd91be15ef4b2b4e0bd1e01922f189687e4b13dc808f62e559183684c437d06f45a36ea51c06051c6b472edd7ae684c4fe36324040ce35dc2ec158fc30b881ea5079c61fdaf0e8edcedd83e00349911ee329d32dc63830ea2b05a89c1adb3e09c20a4e472495a908c2e68eb0aeaa8abb7733bfb5aa1f138242d5c44db2fafbfc5b9201f41542f6d5890f8822395db5bf7ac77622903fbee829755f826848619a41f5e3b76ca092741d4be5ed0cd783e1867f3446c9d77069cf8c8cb08043b3c37453bd5bbdd266b0b00addf20c663b82d8182b429c767a7bb74d01e8d494de953e4138204cbc9b260ac6fbcabffa2eecfa510ca6c5904af75e1668cbf71bc5a0fa57ce2e86edd12bd8d59bf1d3db19dca5fc2c0582bded8b7439ab04f6ffd32809dd522395c1a3fe4babac847d82cfb2af46b352b57d39fef15aaf7ffb7c57bfec287e4d52ede6e59a262a72c0ea15560ed3c6999506ceb9b5364e31109e2c79f970b5939ddccb8ecef7fc5825e855edd1d9fd1237b4809a9bc7b50ffd8bdbb4f4c08a03b5c03c4168b0106eb09a0cc09f8cdd0a879d18b827acd7d65feb5dcc9e6d4f92bdf693c8a199c6d3131aba65c10372c3bd5480db09a56700ce653019cc4d66cd9bb7bc9805d49df75894676fca91be483abeaef5f9b2c2da387d197b502ce05ff04cdd555d8b5c8c5b76b4da19d31fedfd79f3b3b5f31d201d1f47df7f4f9b71852a068a152fbd8fd5291eb86c4ee19ab9282450048ea6c5db7ecd8ab70e7dc48876eaf9bdffe6163d7f912479b1c78977fc532f9a880fe08da7a56b7d35f33ae9bba4ac331b9195075a4243ca1f019e0dc0e9807f855e08cedc48562924d334d47cf7ebf711047399188d505a1f5ae8bb20b876d483635ae76bfcf04c1be6a6f9b3b3ac9ace26435b36416be5a1993a4e1f9b44b73754565b7859c986ffaba138112fd4503e2398732cccc7f7ccf391fa92933ee425645dafa47dd21d400ec3b873e2d5a27223877eb76305df68bf17c5a955052f07479fb15f4d3e6f6c3289157c6e79a3abdacf260ef2016ecddaee96d00d80a61718658da9bcc6e8f107518b2f3fd05be54894470c77ad9925acbd030e3dba7cfb81121604703ddb0e83aee1a9b4c6b234f66b336eb6f53181154d9cde348142df30fce8c05df3e36d9bd6232f3ae96661d4ca1a9622c3064020ce31d8d399dd51018e93360bee5ea6b34f486a8b557825f99962f32b2cd366ad06de729031c2ff23861ca0fe5d4ce9cf04d19ff7faa6c20b5f5ee2396c1e77afb840614e16114709d83581cf41102374c75aeb35999a08debeb0c0398637193eebbb0031deeb9c74c572d03d688dc8bb4bebdbb83bfcbc8ac15779fbc6504eb5db5107dff2c551fd43f2dc0459b4101f52c7794cf3f2be2168d1a0a2ee7d9cbaeec8d0c2aed8bb30a480b90e8b905295768947316c7219f525ec69b08132cd7232b6041d77596c662ed29a6d69624062484a9cd527fc0ef0657b7857e1e4c2b4e988920e61c8dc9ddc3135fdd2227da0bf136b1a1ed4b9d6c2a312ea50b87234d3099a95df9ddebde00a0d9af52145e5bb0c5cb71384b86742b1b3851a1b96882830950b06c6d2bfafaaa3a088c8a2c847ab9ea9ef64e519120c125da4a753a4499f1f5a35422b661b1f4245a66481eb18177c03cec66c83eb8893c4b629a819b230f58837eb1f8c2b4352e9c08d95dd43c15505b058c1ab76f15fb632dc2d18381881d3582bd9f6887265fc734de83449364779e7374f02106aeeded157a0f02e939242be479d159d5c909cdc0d4a4b24a7d3fa1800ff29d5959ccab20ee2e09d06bfb4362eca3f745adbaa2bb8aec964ae900b7e500060342cafe9ed4d8fa3eb90daf9ebce962254b0c5909e32d94fed83fbbf5722108ea93d551405cac594385c163dfbcbfc637f4c868cfc131a67ad33d79971142060d1a34729626d601bdb92030363bf7d25fa9c60e517e934818468b702e2f3abff03cf7e1b730af5c4f5ea9c49c9433596535310135119ddda17b9cf2af6dec8a031d27fd71f805c72751369805f99a5afa3e2d63013974313cd6937488951c58fca51a8aa5572aba02471bece702d9320b3fa9295e4db9589e3d2ea4bd489f104efcbbdcdaba236d27575d4f83c18767e3248b0a981e03895609b574a5fca114613e7b0adc81e5c1b2975777a7bcee11045ec72299329ffa17e3bf9d4d7fe4551c50f59689b0c8c2b6a91d0c031857e21f73ddf269d91ff46405b0c9273e30933dad0239834a258ff72c432be6012113f473e1e40ea4427241f04af76c28adafe9e8655dc2946308c8a9b693fbe90a1d267d176d6167d0f0fee02715f2898d7cdfbef471b4e087597397d799378b503b5204d408f9f5f346456085356600c95ba18d1c0b7aa4d72ec823195aa1850d08e62a52508cebc8395b58b70118aa3a67a938a42658ce7f65dc31c73d09b9c0a30f956d1576c0c0ee08914122b31591b361c13652d7f50f06e076769de017e02e398466bb97244bf516b1fa50ce04af72e349cb8f46c31f08a178cd7db151553eb563077978e021db37a269968a89c88f757f5beb19a4e17c79b1174103c343522142edb1ad6b0ebe2b936b6f8cbff315a3164aadaac827f8b8a8781bc94f30b1d33cc39ec1c6b7900e26e94cc962bd43c0690985c3b07bf5f85efd91741c4bffe8c35afe7563283ccc2f6b97330e6e188b6873206884a6308ce3d6376c341b4068b5ead37a4169e26c82fd2de78be4ee377063778942f4be6ce839e90b6688a62ce1a9a2ffa4712f1fa71c9d6bd8ea643f6d4faec786d2a7127e1532e9e2cf5235b68a6be0041734046c74dad8d5711c9daef6d4b16102fd54fe66f4cd06bf8e02c06c3c94e7d095a3b9c312eaf7a0e55532d3cabcc9a3bb42f6a4b965b1fdd2360347c7332fe3f06d43f462a7e05bb6c5c3a6a8ea0c332ba7a7c4271e17bf46bcd0ca5c9341f4b54c1fde9df73cf647006fcb8ce3fa15b9a98f8b7a0fbee8e997fd36a415328a12a9469d36bdd3c562400b33ea50d26c7850465efa8adad502512a9b738f7ba96b00024fe715b2a921930be097e9cbf26defa570b2a2266655086be98160d350502eac11b7bc443dee08d40932f6b31b4f49e936e63af0c3bddae7280ef1515aec9726b6c4ed7b7adf5b6d3bad7350ff4def255612c5049ef8cf3e16ee95898dc32b406ac3a49373b434d22448276020dc324292568a6c65f846b4cd413f5ac9b1574a5ebed646ad45d57cda438fe7ab4674735dda5d702a3efacc170c63a8cfc15f1f99a1839388d48669949f131eb60db7f61bf6ee7c9a41bb5a09f9fc21c1edae240eec9478cbffc7cc287c5c480d673ba5d6835967bd7e3e865d44dfadf6b27d6b95faf079a4758960781ad7ace53ba538c74baa6b2722dd25bdf2348d7cefdd0ad11e173b19c900d4b8730553d22f51018562d4cc5b017973fdffd16ae57ceda152d7f3d8c9301a61377b9c34629babc7b5909fc21549b20ee9bc15aff68e90958d9cd3a914e99613e267cad72fab76cf5a1226bbcff591644c9ad38adc4b7abb1421f174643f463ef8e093c675e6ffe5c74e115b4f016e691e76dcb4fb457f6913c6cca8e4e541e9b45b538dce46b6d77a885f83fd899dd7f18ec307627e0b613eca2e24d46de7d2abd40def8535c3db3c87aa43eb1ed7b780b8b0ef78203df92cf3e7a0c7af86d52bc8974ee2b52da4d62a6b8f994080cc6a154dc1e287d5e6d7b0095d68d2243d9c583b820cccd1ffbe88d581384097d18764eeafef10da584287b1ba9c80776b0499fc335cb9fc08bc750c908c1710b1889fc24af5f033333b5d2dabd0b8ba862154a0c1a720241a8749a98bd7b179192bf3af2a39da4c697fe39bdd0c7cee30df2cc49e696f92d67ddcab83b724b5731ecc24385272ec7ae4de77e482f9485435e7d27326f13322a27b44a55fb67a36785df7a495ee018c26de8d97fcc536c865165a3879a8d8dd7536177d295e1d21d5d12c8b30616b5547ac2a51a4d587f18ec3a5a5479ec05b086ea1c5f39170551966cb4341a3015a6e7be10ceeba3e5d20ec2747a5f4e75d689d55bb21e877c203777581aeb769c93a839764002427b5d621040f1aa6e8217421bd89280fab4160273db3969640faba3906a6f54babad572c19833b34a6d93a5529b43ee22223d44c3586a0e62136c23114ea08a5941a0297ac61a6f9945172b4b6cb46d09338928b5bb7fe99d393c9a0dd363eb263e9fc76f895be9f977f270438a1993a7d6422e6f54ff3bddbf09d7c367a2346366aa9cdff41f05db7069fcc7a91a55a9ae562abf3de81d3438ea88534307e2c6f3956cc11be9929aea576ff9dcdb8bc3a85cbd886f7fd80f67ae87b3064f1e35ecab4945768edecf75bbb1fb174d918beedbcd312c434e9229b3c60e5faab8d812be006d5fa9e8416076918c75699f2bbb335c6f921500582386a92150cc90364d2eeafe4baf726d994f68e8d6c3ebf069a2d320a2b97e7c06dfa65e8ad3a7ad9e680abffb6b988ced62778d8aa8d7810eb2686e49afa52ce40dbb834f40084a5ee1580cda747efa6541b8fca29d7f8b39a2010b545c26be53264a9c9c430e3e3abd25db6698040ff5d073df39bffe5f976412b27ffaea9585822554ade76c69f5dfa72cfabdeeef6044c5bb94ec4c94b511dab9944e3b162753e88ed1412733d7f77cbcab74cc0bbf608e420aba38e966b8eb31564708c8793afb27256098e69b4ed3a913877b00d907f089704cb37134302765ca3fbc5c5a96d58b98cd772d2ae74fcfa9b449b4f3f434bd30f1988564428e4468e96f0aaf6c55870bcebd7347e4aaac31fff2ee6ed1126a9a38d8820f71e44699ae1ce2c5c478a962ebec8d9d93a3dc1589db6f6c11bd2f9f39d9693671c09a7eeb755950b752cc499252446938c75767c1a57132f3a2aca1bfc4ef48c034673eec4a1b611b2ca1dce32345e4cc25198bb2f6c72daeb13210cf4de5ecce8b32ff2881880109d5d45eb48b15347d3fc579a2bbee9167ee806051e09ce0655b2aa3f50fa13eff23cfae447460e67976f09a9367c5ba130c9296b577a15ac554bf2fa64b6626ef32ce3e569b63e29ff62824e7ffdbc53cc8e4312a98d4fafa025ca73e4069ae4ab443d5cdcf77986e352f91e549dfed421e5876dc007aa439c32513570d8081d634978872a50fb3eda5fc84989fcb445731745ce45e9d4c1b31e020a7eaa10d6613e5ae49787fb29b04599082f1cd7473e04dc8a1ec1bc15c64031816606d12c06e9dd5e17bcfff4948616d49f1fe1603e836e9f532fd3d5a85e8ed1914c508645f015f2959ac23a68e466d98fd63f94ea52813209fe31f82a64e4454f188c03bd69c5d3ca927fd776371d77bcfde167565d250915a861a5d8a1b4e8468905266459f30c47c86192075a7676bbbc5a7ce2cb1633527873ed04630942407b439b013236292a942319a474f73c517acd5cdae53a7b2201f736d41c0cd9f9838ba7975d7af7f7bff9f4bf7e8924321fcf6ae30782ac0560a9d1a613ce60519ff5c0770bc484739e6aaecb71f21dcdbb374293a8ce2864b49e8e5444cd31fb99a3b420c8a991ccf5ef1a5f26a3f3eeacfd1b9dd88fbe5579579ed0ed221d4a4335fc84d1e068da95c7e82281b6de0a377a2308c74568ad530f5836f3237643f98f4dfd76458be4c314906b7c141a3d04c0d03f99d9a24201b5f5127749a915799ad3fa11787d8cf21d8f99ee5b92bcf526817d5ce21642e251eed408f54c69ecab692f23740b863091c235480e94e5bd802858140ae58989a9f03ecde34b6bf9be1d3245b8b36aac36963c1603fa01a5012a7bb909a055aa3a3a59013d9b3cfff3057e5ab96c79bb1a37178285f049e12ffc214a98048e4f83e0d8be5aacb907df14776b06568e2321fcf0520756126d2e15fdf32bfca0ab6762cb3b9398f94a7a99c72658059e51439c6a6697b69fc751ba0361440e61b58ebf643fb44f1ebcdb2979887cc56147bcb0ca06088d15a1c0116b40baf2ee616158dda7014ba57c03276f981868bfa1fa4a284b14c6d34490f4a17cc881e22416e24c84f99a8ac8d8512efa8e6d45daf4a21594e168c620a9cb7aaea2756f0e3e9c810f1755213de7f71f183a0f9b5ad21f31bc8d809e7217f530ee88d652902e14315fa16aae4ab50078bf32b0ddf72c22883b36d61a805190349828d800463bf55d24a23ebcf50136d86d50e58d455a65e9e44923fe0114298a763960e826fb83700f20dbb0bb1840daeaa5263f6da6eff75359aa8d5acadae3dc1a167d2e21afecff225c4f44e33f1f7a0d02d1aa3612218e9fbbc6c841c454210b741f548df9cf06bca4ca6e977012c52b32a6889e27b74980dea488bc2642138798dcceb6711ad2f5d85d445b58e3781b76d20ec256c547909e994ab4bae2976bf07fe07f0c82d2bb710ef536121281c5db69324b5745a6d5b4670f7c21ac382adfeec5248340cd8bf49ec8b00caf3856ec05444c4927fcc64a9e496943a6ce2f3e6987cca873b04b882c6931d988cd1475df76b5f3447bb54d62f0089389f2e67171a0f0b9b5a05a256b77bab206e9e10eae4e9dd5a6a64c024745fa7d772044df5e73f8a7fc0878e97b2edd6fb75010f71aac5457060f1b3dad3438ccf4b0075c1b7ba2ac8226db3e0a79826436648866022bd3507060abfedab9c8acc892f4f490d5ac9c6ad61af084b3d091d402de48372786aae173edab414b595c4edd7642f60d8656acd454421b6beff590a62ac670f9d576a0ce554595266d217511f191ff37c891fa5f9057ea713cdb8e6b74c9c6d3e0df4f6569a444441c502bbccb03446b437374e627e472dfc1fcd8decc39525f35484efe322ca7f978d572056482bea10219eb46a2802939e34491c4fc2b85660ac45bbf481cf4b3d2f5515f60736154f1258c79797ab0c36ccae5f6ec9b2da293c213a24cc9044554aa047b7ce48c29a106554dca9d9f717e948436cc86baff4f59196297d7c40f1ab843160a60434330876c553638035bb787a0a9c122051e5b7da81ae51c71966e8d0801b3802952660222b01ba8b62fe611c05e999c7ceec9d3eb0a2fe4bf6c638aa5b64231f9b60fc1f042d9c5de90e94bccb5c51d412ad90213d908fbe8ea1795572c392bea4bab8d4e7b9fdd8135b6074b88547a68b3a88517081b102ab4f8de10686a431752e2a8f0f5a3cb77fbab41519992da3e95f191e7a71cea69d5053ff0b405505329f8515cf5cc7d4528ec7038d7051b590933f099c966a158479874200771b611c37a06362d9fe0ff0b1dac33544034b28cdea2d8fdbc2bab0bc99b14ef25b629bfff03533b289c4a5815658d978fb428db5695a7f640d9785b0d55ecd2d64cf95e8d33de3d8aa60ab1d5f9ebe9f8b649a48c48b0431a4ce07df4873f975b422f281a4c63ca6a026857f2e32346162566ab11fd40a6d22d33576b80fe45da1e95794247cbb952af27520dd2cd078f4b38f743be2d691414bf66aa711222a3850da2e642911e698d547f0f598eac86abe4514c53f9aad42766edfc80628990efb8c8580e2720d10d893a39ae14fdd0bbf36a0c0248fb020a66b2394bf1ac2d81ff333d67d9fa04303e17f3e2bcef2880e453f2fc1dafa60405b8d742634fb36465797970b4e2685a53f63cc65a2fe741493b5bae13d2e8ad08bbdb7bba89ade4bcce2f4427f56b767209c94b8739232eb16e663430ab2afa5bedcdb818517e8ef11d6acb9c43c353ff4446e05dc4dbd7f136eb756add12ed2031354c272285fa20808d903f8821ab12c5d650087620d365cf7067d9b168d4c998ea4d4a24c6d9f0397e68c1bb9f62428b1a0ec84ca809f4d9e43088f6ae55dcb175e9d68e6e59251da83f89864cdbd75ec0e3e79559911ee97bd3b999f953ea01972ebe9aec1b14bffa4e651027f31d498e1b9c7345210860121211cc5df30b335ebba0cdca4d6fd3eb839d44383fb430efe36f3c8812686d161cb770dcec1762e5b74f1fae24142722939db663e7a7d6ca3c1497af92207ba2523ab59579bb59053e91fce006c15edde6a11bed73837f7da6ea812d1b640ee073b938a5989805198db97728f830f5be7c6ac737f8e9a9d03a193c4d48667b1be647d6849d815cbe8ecdd6b823da526ca00cf71efd5bdf395d0e809b84e62b6c74bd714dd26dc1ef054a7cc36f33daf53a763b8a0a60811097d53b4dded2c58ad214d26359a257142f091332d4d00d43f0402390ae3404159b5cf51a3190f76333df68b3a121a11c0310e3239f063c81474aebcbe4c7d78d1e55db609c9cd628ec071e374e94e95feb4f0f9cf92220c7c810b1f8ed2cafb892481733b1366f3439e19c39b7266d8cbb37e783aea6306c0ed49242e78e279d836ebe64a910d39112e331a36ddb2b072c27f38f8c9dceb9a18e8f579d2d4aa7d2c0b6f533d36744ee09743f8060aba0233b184a528145e4564a5d640153cd754079230457a5316a832e7d38375885587cc8094e9fce4b19aab6aeb06ac70bc8f5cec1117970c2ec5884a9433d15601ae42216e153bc38ed335e0730baec687ede913f8a9b1b43765f4141fe6cc5d60be80a551d1a5901926a45b4e2a8c7cdb87b320ebb78c1e27bbf4c797c4a70d520d8a36fc2fbf23b57508c259796ff610b0889c87bb2fda48d012aa499e7c36bafbaa1f316d00fffb3053b04e679ab586c3098d79c1c284877fd6ed3daa3ed291b35ef4ae87ea3e87d9f7c095af72295f4c284a0e0f4d285bc51d8e6f37e2113f37efcc73b251785d70d166192ac3b9c59668fe8e87b782a0c24e2b53b5b2b68d08f66c6f456d16ac7459cd4349533c76063c423ef02e696a8de2bd001902bd995855deb58b0288413a21aa74dbbb12ba6a8fa22dead5ea7d47cf6849b290446b31441314b83c8d1b7ad2d03786b6f46b7bc92625b1cf3ed2bae045fcb036529857df0a309565b0865b29bb49df427fb06c8c4a94cbfaab739df283f7ce6a688a3e1287c90bfa90e8fc34b573f8287597d3c96ce71cb1c88a5bbdfee24d896994c0b8b4dd8c97b4e9763e96589419b36cdcb82ae6e7ad6577d8cadae0b3cfb0745a4bdbc3576e0ea77e3203316cbaa1bd6da9cac4daaa871453521c140e1b3d8b8891983db2d82631b2c10fdb3774091fad197db6a7957ba6def3f1bcc3767c83d81fcf4887e42f90ef66b8f8a9407d7fbe667344b2490e4634887e6d073e401a181d5fe5b569d2e6e4122efb3fcd1f16dbc4d7f948059eb94a5453ff2b2ac0b884aebf511ea18e5e502ce0e412ab934214e7fe3ba8aec5539afd55c740a2704bca5e60a15132ff95197462423e7cef3f0d1f8e80639c23e2f3cb4c2268ce671572bf07500cf1a8f2c41eb69faaf4ca4006f440df77b0e00994035af2df5ad6c2f7b16eae48a4ceb3d25de12547700d61b30d3b62201488099416fc63fef8f680cf414ec439af3dff7a6a63767d165196c4c402cc3ce125187f6135d2da9816fe9664a42b78c44076e8bc7874e5f24aac360fb928e0125313c77850d370fbe3348ba28a874dca5adfa897c6352ffeaee8c3cf3f11c31ffee986c569bf4beccacbdf4c4abfa4e7fa758da88e69448480149da298829ac48588b0a32953c9ac66004e76c4b54cbc86eaf600fb0e091faa21b5ddef53e4aa0f3791639a6153574e1acd1bb6535429f88307f20d1a71134a6af47e54807a61980d5f5928c81832dc0c5c7ee94b7135fd49903f8cb0f4509bc11be02e9fe932b47de7c5f244c658813a966fa369091246083433eca7098d30d477bc01e5b4212f2cb5f6be0bc6fef4891bd43a58b754d70da2b8682846a0ba92d5dc76c724c3876bf9cf91641a28b3457180cb69014446620dc29075094912d5160c312561e6d704c07ab68e6db5c8197c7bad2fbcd5ea4f0bab9fe3af971584721bb4e9fcf71d444108eeaa0d01390a6c6c28c91651f008a025bd2dbc19172b56addd051dc19b08d11beac15ff74458b95cab87f29388d5c18188eefec764291e8ed319d376a8f3225b36fc1e5d104ad810252485c33b6986b951348b726894b58807939f413e0992c0ea6f856361031da63325989af90a212c5decc4363825fefb092ae8d5eceeb35aa5b0993f7fc78e0fee93f911bfde50a069bba2653919bc268bcbbdd5a9a3ed6deb4d3b0349161e81718dd3d57bb0875d91c15a2d5ed2192162db6be497efe0283714a94213fede10aba90cf8fa614257e5794d8ee07978af96ce3cda8361a807ef8c9e46c0718adeb3c14e7a5c64eef1cdb1917a0e7279008a39044dd2d12aea2081b75cc46f3b082517284d9f3485c0734673a673b7281b3ac3de3a4f300bf765c23b176dc726eaa7cfe3034a744679edd89f87c35235f95a653a88e406adda975f019e3121a2eea445656313868b40e8475dfc44532e17cdaddc774ad8b776ddeca6000e4c6ca5be8e1e6311d81c6f79f3768e5f42d90253068fc72a3742ac5304d08101737f9dbb000018b675bc0a35535a07281e69e42f9ac7bb343405b31b95891fb1011795369a97b251da1c116270cfd3ed7d10563e65181b40793434ddcf0e3c446823728ecccdcc417df9974c41bea798079ba84150621ed346cacc31b6a37fade44220f00d9ae1ba3704dcf5dbaabb8658a740356966312dbd8a09f469c4238d518c8fd9f4becf77fc2164be704970f8ea03c1abc345d12b7aa577ae66ecaf6d1e09aae04466a769ea1b8530e33046d91c2d7cc22cdf37e56293f91a7e912f9ccdb6cad56632cd1dbf67320eaed1979313d6786b63807e8384b128daaf80d8b7ff3196df842f08614229f966a5a4d42cb548cba6e283a6a22ea1431c5089967d760aaa57283fec602748f43c04f8ed637cdb54d074468f28ba22c1f13d7daa4b4b09a589f9eeb3f8a80b7275a17a7d269f4f7af91770698913cf46567d39a99957a27bdb3004ef7a2e8c83b8afaf16d1fea902e61140992670bdfa64f006f446d2ff911f5586c4a955504860149a8f0f376092faee9ce7f97759fc9016df185a442f6dd8a270b6c05df7fa2c8e3ba6f8c5711f3a2c3b74d32af27a1093e461f5c81c6b460e2a30f4fe5dfc350a255ad721edba011bd7d3a0aca651e01f4870d345ffc9ba852581b0419d1416dbaa7a6a8ffa2b2b31f7413de8b6095dc7429994321793b2ac31cc1b593445e74dad0bc3eea08d92066d7f74f90727df173a16973771eb634e0e5d28a5166a0876f994b7017a4f1bfc0f2bf12b501e4ea94e47995f4d8217254c2bbed73b93db1e6434f639d87e578dc434fe00d117ab2a1fc261d3e81a942aaedcfb8c843388833c084bc38f127a1255779ed6f96314d6db4a0f12a5c6776a8574f686a524154bf3f2ed3bc5ca3f407f79bb7e6be3edebc0b50943b3c2c6c87b7d9dbbfae54a0e966f184704cfaf4091e7c0fa6a43297ff94a5c630616119dfde9071ed37ef102addf0ddcf50732265ac5e78c44ff52e5de4e4a403dd4c897e89dc7da7a6e96f21d2957413a56f01cfb14976691c416b2854c2219f3ebd22963f7f3b2dfaed2c19c0df3418a644d6039a1b40a0f183a6018cd4066bad0b14cf4735cc03e43ddd262d3805b75bf4e1c1b5cf1c6b2dffe6cf5a165bbebb2b2c6133c9558c4adc429c690ddf1e851e7f6a0e9f843bd5c627b2da95d69533b5b6bceda05e4ab3eab00a021033f1d4dbdb32bd6e12809b71aa30dc05fced0bdc173973307d3a3f2c804bd5c37f4e031cbc55dc6dc69b766c69417e7fb390e4ec2a93bed9fe8b4e42b1d6d8f3abf16bfb6ab20da6a3781a969cd97af9113407b733f0fa8380aedb5e7e0e63ce1163e587ebff05313d51ac8534affbeca4081b02f1d290abe222a6990743eec363fe0a9204366623e269a183494f28f584f893224efc051be8c02e630d72f9dec5688bdb29187fecb8fb17f2f7d44e29e64eb563e2e1be677f77ed8bd1f73fd29f0a2d607d0cc11b428c8942bc17247c1a307f424d8815586482f144ab32949145536f7808d972050c7d656e652fc8745ea1190891fd62d3e4c2e0605029ad70207f8b3ad0379ca153e78063115bf703cacfad5c8fd204c913dae220624d8408cb3e8f736696f8bbb28ed1cd884b0004616a679e9b031241b2002a4aa2b6c35038269999f77c4e6eb5a69dc1693ef60b5cc5cf5703f58faa62fa7c86238a3ae58db7942a6cfb8485a84d5e52a4dc231d02c5826e1b1b8ec4e4607bd1f7485f4da3148a44d763da901de4e30e1b3d3cd22809894b842d20a1ec85bacf47bdfa295ace78731fb20ad59429f10d4fb93447ecff6f1ff031f4bbde508378fcd0362fe536d69a111c8eb0001796e45b4b5231d333c365830bbd43b56f8d9d0c48fcaa95bcf4aa85bdfe10ecf53a3ebf0b0d2f5c779762e477f2fee97bed2f11a1d811b0d4c925e12913e3f5cacc0a5e9888d9492ccfb1aabd88dc57601d2c442bc03e653b79c4948181f8d90c07cec0f291dc50392d435d7e547abfeeddddad2af9a18cbee8ac6aa010305380216128af4a72d08b2a94ba10e23f29762e806216a51ca07908accfa76de2807a4caf187137c056c6e5b7f1a9db69a608ee7244c7692781f18dc21897256faa535b9a95bc70b065f8b0726070a695aedf7cba0196a2890c8578bcb12a392a4b1b8e703b27d4cc8e0ff905fd3f1d9bd6920500e26316d1ca94bf16177156e4ca055e01919ebcf5d2efe330f2c1348420e86546f744aec97b1557555803a26f4cfdc86b2d2524da3808dcee03e811f66d49246487e4522bc907674521d035830538c34def77bb0ae9eccf57c32efb1beb96ac64ee10a0adad2f1fb4ff8f578862f28d096a94ffb55b715f5ba94cf295fd382abc280fd144c7e572f99e9e2efbc1dd685370792380feff9b8143e496c4eed8879ca801957e15bbc17c77e59a56e97342dfe9eda434a39bf5fefb118978a3e6230efc5de7cc862480109f986c1597ba32d697ce27d8ca64b948499b298f6a80fee7293a94333f282373cc6c0edb0ce67b41371f5f83d0d1afd8850c8123409b4dcd69b866ba52ebe2aa9fbcef3fb3a1ed393ce563670620f3aa01d7d4072f640e6392b837e30722747f9e08719b9deebc5bcd4e8a4796d877f69e7e0c38643cd8431d9b41f335cd77935e87c3775ebcd13235e2126742a28ea1e65c43d4f7387b7522df71f2b3909673f9b83861eebf8bc5c129d06ce6e8494388ded346941d938096f9055cd96227b8e72eb2f79fcec31f284412104b55cdf38c70a085ebe2d542b94fc6ce498991752737cb15d39c934d03b0635924ca40b9be2443d655815084ea013c56984c20f6bfff08a61698e61209f2f4b213ab92d366a1454768563187a3913a71be4a8de576a0f150e077be75aad07767daac3168eb3aa34e3efc5243daa27423de159d12b32f157fc8e5853b3b995bbaa96ba17765f35e5d350dbee5605be942b43e9807619dfa755e132549423dc47afd046a7cc5596c358bdb18cc7622fab9161190bb32e5a6b99b29e2ba3331af2f943d5af0dbae521804f6fdb955e0e427001c27995ebc6979c6229e81c713da2c05f783e993ed87cb4ac8269935e5a171e4146b6df86f14b9c85f92c954fd03a0760f691d07a55fafb468b92b056c63eba1efb936fca6c634df63ffa224ace93fd027b82c34cf2c6c93c8eb8cbc6a58f734e753c54bfa2eebeb24d429fb29466cd60bcee13c48c8fdbc7517110ab18a2dc9a8b307051921bb5d8e0f30632a79ce159f4e457c55c27870f1ad79ed105126965ede81a190fae02e577fa85136e5beeda5ce55c1578d545c571526485a820d27c451957324b8023362737e6f327dd178df35a81d4779129439177453d4f691cca81b83d801bfea46f5d6a528b19efc4687db5692d9ab43476a180c4adab5f444fe45773567c8b9d4eb2ac978db766ee5157bf9115b8ef0067dfbb70eee662d95307125da5f59851ba6f9681ac0b9c4bfe8d9c02931bb51c4ebf922bab1f576aa4cf9bae5c6f3ab8019638e8acf027d44145a6bb3087166be8b02479da4d847fb3fa74ae2b12fd55edb460ecf29000545e7e9b3a581e7d07e0b056efa2a49b9161ce8a0607771f11a77a6d92062d8a6f3294564d972f930f1fc58a810cce9f0ba084c6d3c15c15423d0d53efbf63afb17d7b83482b95276a89e2d6a5c11054af9ead06c22f6922f4b55c4188ddef0313e35d713ed3c5ef440714589a59185643f58e59a6828499b66ce2a2db49192dbb7fac55af01b18821c766829f8218e0e241ef0873c88b0bbad970657d5b12e40e474d1e12cac65fdb01556914e05e0b98fc5aa786ec2e096875d8fe5f0f030f5991ab05f09cfa8891f2f8ec4a72070f643dd98d0cbbe911e6ecf71b78ae0010d1e20d0074f39a115aa1e20a83b13eb437d244f1129f60e193b05c5afc19089c56bb1c4d9075a2859045da5706bed34fdb80bdbcf4e0258cdd0cf7192708ec9cc736f34ba34c2d3b309e4c2c00151f126f4e5d2b443159a13d28faefd4dc6c4b198f797d19ca8117eee86e5dab6e2283d368b8009d8b9e1cacfa086ba14f1ad1bf6085f91204aa4099186129dbebd16336f873a75ea1add6de1bb3f995a39f27ec9537d7b8038f34acf00c41ac08238ced57aea1ed9a304809a50dceb9438fe9662dd8023cf0f235ffb56b6154d1da6a3f8c9a41770c1effb97eba623477836f13423ff0b4e66666c55584cf36dbaeeee17f8018c864ea0f5310712eff3d922b22c50e84b3a95f71e050d15aa89e1284fb157428427edaa3bc328b8f278223bf51b56a66e3f76c02d59894f57e49d5ba779f3388afbbd4722225af4e6acd0ebcc5ff5f34ff5c426ae45c430e79da490b8792ef23ab5bac94ad6fc3a8b7377fdaf8ce49aead070badf239b592386c958ff4e908ff3eec5b3d5888495ca387fd011ef7551eff2ddbaccb77c952d75031cb5f922345c0e9b93ab8aa9efe33570a7755343d91c0a2c99696d1ddf76b20d45bd08b6fbfac3021018d30295a5bff27af07153cfa07e5d543de80de06540549006f24a5739037ad5bf7303012a9f6935b153a0714206209b30d55b1b1f7c4f6c3173c7a377166e6d4c5aa0007b4802bb20733c68a17da1d567f0db5e6b39435090a64ae9dd562634c9bb02ec3e1e23513bbf32264c5103315a207657e4926eb680fc7fbd4fb9f46439e02a2f79394b87af2c30fcffa626462ee0bf3ac877ba7bf171a5c26e292267a1a948db172f17bb7ce29b450afbd047eaffc577eaf8029458b8ab203bb148cda781ca211134cb17e61eb414a2c638a1193a62dd0991b8022c019eb043782fc9b392bbc7999bd7cbc5c775f41f7ecb3e27393857c49780b66b2588c5b8538f474a63736f74281e39efe9b7826e5b89d970007ff397ed76c91020a277f4e99e071236bc6a35c87368ad71dc48d2178b4bee8498e06949389ca6577c6c418ffc99bcb68a239444d9e7854d31437fd4c860422839117e70fb29befdcc50f16a40d7798762a5eb8b01adcaf3ad2ee72b7713a482e7f72a4e637c6ad546f5e0be271effcbd506441093481a662de8d056f2131bd31f1fc0bcf78bd39772815b8080c74e5b99ed54208391da95749be78a28c10ef6d97678cd5f4020c93386689caec1e86259e89d67b085369d93514e6c03b443c5663302ed51e05e0b1aaae05ecfca5ff83dfe4687972faf5304c804df31153cc9029e813b532678ab396651eaea3cff130502fe58a595addc6ffff7d509e8b8231f52e8f5f45fd392d611ca51b41cd71477706f351d27ed5f2b8f961b1d253897f80fa797123b8ed68e527c4891c3e9d32d7c8d2d50c2de273a4a1c3715641cfbc4b30fb6345d6aa30020e70e7b3e9f5cf3e5bdedb9d054c5921b927e2874f077eb482bccbb1214e96db65c1565db76a73f8a9264c57a549443765af56e9c33f9fcfa85922119b9b78ba67962f3b61500a82e6b9b6106b29fc9ca7079309611bac70c0a1d682795b16278dcf01fa307afd1b022e7dccac8bb1841cfc0aa83e3b72f364a73bcec0cddb5ba289139753274f534e9958fc7f635c4893590c93b9fc8253d8064c1baa25a72169bd02f5439ba4ecaaf0f39b591d30431f18f43459cb53b8b69c1501a58b7d26ae50e5952041b136a1c67c9c04ce0fd7aa7f582c3ca0b983f27595891ce3d209d7116e05905cf4519ce347610f9d1679432b09954a1f05e2588bf9e7a89615d41501b3c5a8685d4273281b227a4a7af3dd827d12e07def2c4478bc5b1eb39cba0d06e30638c1b9369e08569b6a25c8f62a56231a48ab6a22b2b25013bb781d28fac4ae96cb283744840938e9f7d96fdca65bab648b6181c611a361150f63ee65c6716457ad96eb251b359d6cfe6b82c094f630c8112e6b9ffeb95441c9bc368bf60cb0415809d0f76aba5983a93b200d586bde85045c805c5194d8819df47cdc557945ded8bc97706cd4a08237ee247faf647ff3f3ba8df42bbcd7196df88f77abc4912b3ff7a6f8545474b9dbb428cf8c2f46a40adf0a43be5e3ee4f578a9762dabe257472c57a9cbcad734225e56c8ad552ed51cd2cb91f575c3dbe573a7bdff121ae29fe967884cff9dd2c5786dacd443e25beb505d675f7f466a6f6bd417e7c26cb9968ff96035faaed15470f4ca304ca043d432ccbcebb66e1ee6de8bbdd3fa6f7092196d715da228996d679aa91211992dd2057d3963003b8906970616fd6d36074903440d525a747b01e9205bac5d8956b21546671c33626e3265cc458170fb6a42f6de6564b6e620ca53ee7f360e1ae7a69aa5ca121d097110c04de9ffb9c36c44c1a7ba2b388112d2013814641d1bb6f9fa5b30a92ea0cb058b82e7489b99eb605289b3d3c388b31ccf13f36ce82d6557c59c938b2736f582b7b1b0ac3c851543878877af4fe02869c9b5b560ddbee2f6ac837e1700811cc3f29e851b03ea5af6849b3287c68778f4c2b799a4c5284f7e01b1477c7e881dab25535516c3b07c3d427db8dbaddf8c9075f1cf9dad07e059f01aba385d0e83669bea626cc49d97f5fcc65affb4bf2121aee951576e44217a1487775bf7b4c269a02c93dce7fd8366d7b0dc1657291286bbb2f048bb799073407d4964254b72eeed867a6e40d135286aef8b933d7ff13772dacf5e8d490905335ef6acbe762e250ffebfc3c9de2fba8a099ed941331495f7db00a256447bbe046d3f335dc52f543dce2cb4275dbbb69bc0e25f3d8020d6300a57c70a0d2a15d9ffc3cf22790cd7e109e37659e229818d1cd5bfefa5098681831f541d0305acbf6c3fca2287e07d6175848878c4011ff94462c03ef665bb68dcfb3b32f0dd8bc01a991ee448a43c55cb53438cb43de278159c42fa67d14819d59627742446940e71a68c7e20321248068b8e71c28a63844ef0ec56d1145f2c57fb5694adfd8e9ae8a691f594e217b170f93112b7e4e25b6cd966a10535b17595fe821646919a22d9c03b25ae0998701dd916de157d963fd9ffdd7065c7aded2fa23c51f50a9eb3e2f74ff0c5a6c555d1ddfcf93cb42687eaa4dc98f3ee9cb5b8eb9b1039a55bd157175abb21e8f14b473fa817f873a61d67e0d7a2c727387b29ca4d4a6984679d136c852268a22d5e7430800325b727a641a0aadd3006fec5c3eb08f883de614b2d89901500a08b569270022d10ff217de8e32cb26dbc34c3f93a6231a4c0fdbbb9050ac8a0c2519ee3f922e6365eaf4da94531c535a8a630bf0d54a78f8b307f2f8d4907fd71d02ffd99fdd7a403356b7390abe0c32fe0691bd8cedca8eb970767d55966ece5aed8a1d58dc04fdc26038f89887a3e99076e9a0e90bb548645c3aced6fd8839bba2801528531f1abe8327abbc3c11aed0a4d9ffeba64897533cdb4e7dd24bfaa2ab10b9132407914fe5d1e1a3c903e8c093c4f03177e86924c611cb32109dcd9ebb9a4bd261a6c85ac1f52cb05428902fea1aadf42b2c14a9bd344cc6b48be0edc97ef9fc963321ce6017ab3a7008f46a20ced58502596627c7c293cd57f78866a90acf87046cbbc8e63915d0f5070dbaecb3bb72a68127d1e8320534567c79676936105993114c209e0931f82a2c96b6915941ff69d94c7d9bf9cbdbb0add86e7b89c10b6a73043b848b895460eaea1e3730e74df8060916ad1dd57636d3b60c104ecabe34c3fe0ae2e34b4e63ac0e398e54bcef9106e79457415576021ccee76a171008d7b28c359539e2b3bb193bb0db77af44ea6b98250cc6b7919cb1cfaced6f819076dd0d69dcae046f373d74d4f5fb12144ab69e94bb3aef8a67dfd63dacea9b889bc127ee9b8e41867dab850f4e7c99cfed56971ed5311e128134309259d5a6d21e2cebc54b1843df1b87e9055a252167c8d38fdfbe86227c49bcbb1314045043133aabdffa6db3a8fd2fe9e72c9aa1edd1319793ff97558d2d095121d04648293cd493473e8d87e7f7b6a9b04dae4346227c33a435db7aa26ff916616565fdcf2207784d5054685ad4201fdf3c7691abdfbf7cfcf80715013283cd6116acb1c474f8ed866080113c7a4ed158671d6f51a001e80c1dc41589ae538a6e98e2f1bb3dd9432795ffee9c2b9b52668118b80ffbc7a890304b7ab34388b61a3aacbda1e6e5fc71f496449419689721ba7f6fdfb592543e92118c7c6a55ac687436294f8d2efc4e18281ab129f66f923c9c76683e22ff86cdfb9c558bc308a62af7804225e48a4bc0eeb49da061dd0046b59b977e8cc39adadb48def6c6ba736092c6013485f5057749368788f9948c4d153ed4bece4375a72a187794ef272b4804b4cc1c08d68e86e4cc7f8602ab4e41646ad9475ccf5ea7727ee4417ca4aca9a3658dcc6329c071d1c2e898837e494eb99cedca4d104d9f84b064a4a48d389739b7387a767e486fcaff450286443b34a11fb1e2408e9044adf47ea59b97d456f1613d9d768b0e225f1633aac8bb9b8a41cec6971050d21bbf1b1b5de6405405d7a0a8c840f6cf11ec7d0ae2af33f1b82c7da923212a0e9967f0a58f215e8e94832534a1823291052caa2dc13b08d9e2d4a42853e5ceff6565c583e770d1da3ff67d3fa0196e88bd5e212930c525628f37b6080b2d80197ba4e44f7f7943e1ad2377332f1b16e19266dce57330edb248bc51d2e7ddcb617c403a6d04238fb50894678c3d13085c79b8d4bb97419be0d751abfe8ee43460d9bff232be3b91338477e46d8a89c26e3cb962f01f167df517cecd838ce8554a124e9f910a02790aa261e296bd855405dfe71edf3f95e0d81031aba3977013dced30770e7591d96d707fa27010339bb083a625c8fc007ca2bd5123735865fc23ae50bb705aa10e236ce7ece92aa54359cb2b1285254cec7db0da0bd4ce7ec16fb1fd614c2fa92d29852edfa49419a0778e826bcca552b03eeaf0557bfc776cf5f913284545ea23b15fdbbb417149947db67cbc1bdddf743a6ec60e388317fcdb701aac379120d6abebc088ac42e7c54168ca9b241e172d26d6c2575707ab0e7ec2b879b0441e351e55e2356243136fb165b8f7ad677de0f1cc8019cd52b30c28b31353b11b06a9ef864a578acd150f19912ec64c744e1b7c6f45d026b0637f134d23794d128d930c7bae5066f23da9aea14b5a962975063556d4958d037ec258302921357f76faaa970963d924b1c4cffa0e2a3f8aa0a077ec918686ba0e73557b06e9c3a71ceb0b646ac8d3f738909ff296d7121a21aa65d7599d153cf00cc0a9d5b1b9d0b5c8f4a40b0408c3d7dfe7b078163b347d5fe1b8c5d8d4127997c49135bf5378231b596a12191c5ae7e06cb2e385053af54173261bc97e7e731ff88a83e53efbb5619a45a688790fef28b2105e42928c7bb530c38942f4f07e9d51c05f7e1921afad4c25899dc52d7ceec6b4705a74d436c06386e96e205ecf3510279177248b1bf597fc67cdd0f1b812923db932831656a3eb3ba6594b059743a465d74f835f52ae6d84fed80483f7c61f984f90ac1455684d722a9aa4ba3747948f97c6261b2cd239349ad2dc11a3666350d5100a9b905060213230f32cccb1fa2bcb8e3e6396a773d0856bd2bba440b5803146dee87cd0b19542effeeb9a1902db0aeaff83fea921cccefbf654d18b8f81c23b9e544669928a66028ca820875fca8b1482d27f0f7372ce9f3a1af70995033c6ec73270c23ea7570493716b74227094a1be2f005d2b8317ddccf7610422ec3fc5cede69c0ba6799951ae3a734fc26011918a459075e930c4f3a2b95a3f1a028d3b1641276a5336db1a4e5c763d7300d0f2e6a8efbf4a4ffc93cac941cb4b4ca56254f30f74b73539e4867ef427ecef8c606a21cc8441b4066a7f2a922e62d46a7ed5e12bbd247880071b8e93e970a87c336e214d327fccefbb648be0f4ffd64a0b40c9cd1754d904fe1b710ee6e121cd437dc6fe354e0f4ac0de784d63e0d60f4172aa67c9c026e593cad2ac2c83ef44e486dad1c2f666aab95dedd26910df3eb62aef8bf6c5c1a8b6bf6728a05a8b01f96a07e9fb74167ebcdac11c725f76c6cb4b6a36f3fabc9488d4b93a2181d707001632cf8d7a17eb3d070830a64f303628cf4fc68894a85980370d50ec0029c522464399ca44f854b02437ed3a3278c0fc8339dc603b7c40f9fb7558b39fa6fed63a964a0d1128df381d44232359f31f76005fbde932e33ad462f87acc8c1898d61fdf92636a0bb887a10b1b8fe6dc1b3b5ee8352c4d150b15b3e244ae7f9a3b9b76daa39a702e943b057a3c30f5d1103d80c58a05bce133cbd19d492c3323d2f1bb7964b16d09c17929847588855bdb6ccd7f4262b410c02e49dfd4b1afcc7e738a28397178450bec8df2a0082682ebfd4e32238a31bc4ab97d750dd8dae569146bc34e20d7cb8def8658289c7854900422bfd6eea5300d26009659bfd8e18b785c7d6d10708a9af953176a88ad4ca76f905afcc3e92368a49c23518b3f7ee7c6e09b6e37b7079851b18b10f5cc502d1c9af3a77b8e30974db96a395e897fba57c3148177de05a27a2f1e190d98e70ed66f2353d6f6c537f4e22fe242ac737942e8bc6c6e6cb15143a8eda74b9a06e3b67bdd33e119d44595bd58f262147a6794920b0f020d735526d56d0cbd859c7fbf8b9eaf777331099a695f2e15ffdc887f2b716c679e2e6f4329bf2d33630ec9ad6a4c5da5cf63c3067f76ada46b351fa17e6295b15ec06d7c4c1afac2bd12eee090f3143be0a22cb51b3f48da4426680aded2ec5f0d19ba9bea92481c98d3cd54323515ddf7a4b3753c3400197376346cb88acfc3be969ca5c9d0475ff33a8707a06c12c8648fea88256e647fc20ea238f5851a449daf7d5af7f5701f138ee57ecce5ea9c7eebe33d3e158d8351e50f0753d48682ccc3fa21f03e3bcbfa81aa1ee3c8d97b8566d37cc612e05fc93f6dff2dbe996a3b3c9e3b2bc68513f3fac331073b634764aa48c1b6a717d033d4ebc8f006b978589c2859f100e2c2728a5df243a0fd90815f38b6d428626baaae13c1d693e12f2921e668fc4596899599c43fbc7aba3cb533433414d8f71defaf00174dbc6944d7de7a3a1496d1e5fb5fbff14b97150f7f72768854a96fd3cbf51a165b05caefaac9fe347812a5393d713fe86f695cb0eec321868f7c84f86d07bf71ea360c6e18ff9c49c5ddd4cfc9790ff575ba750fe0f7586252fb27f810e762171ac280c3db4a7caeb8a921e118853b9d7d19a574fa6cec009ff58296923f31043573b4609f53b34ea1144b6d29b2972983c6047f197a18b602a8b7b8adb913ddd854ab146bf127b7eed7b9df6d2fe1dfbbe4d93b3b7a4768ca5745050ab8b953ffb64faca2e19cb3dd29906c4ea0b3d6e0bd915df683b622efdce63e59a3c26be155c080ce70b9a1306749119ad44a229284158570e4d2e91a17821dd855b35e8ff35845ce74ea14a022ed3694d65c040dc0fa6839e46d11ed04d7215283ebf84ba2bb74e484ffa8b8e334c21a18d637dffbcb927b573d25fc374f1753deae93ed776da619e3dd06bfabbfa39ed397a99cfce2373975a97e96678c6b0b37ea4e8031ae00e32a2eeccb83d7773ecaae63374abca3b90393297c39665a5c742c54317b757ebb54172364049fddc37cfcd4bb7366e3de6844d16ee6725f621313718adb00ea94b748aac1ef9bfe1318697e88622a2dd81a067b90f79d8d18d35f08aa5caf46102178badd24b10f845dfd50fccdeea7a45fdb3df6ac6a9fc54afc95e3cc4efc681d405c7452cb3c9324d51be2bb4528dc71e28427a6a9bea5ba5aa2a9f6b1c32045bc5bae3418addd1e6d276532e0d6b8ebd07a3acce65e21543fa9867dac9860352dc954fa5ffb849c57a9ca65191afb0e4d0c763bab004fcdf99f695a430097666fa3a09a118129cda16c39f9208e000c6a352f3340ec81453cbeae88518af28336603027f002d162f232b7742dd2cf744d592c55d46b7d2900014a2c9dc9d1387c8047bd513d9cf755eef73aa6f97044cd3594cd9beb596cdac7b9c352792ef80e00591667492a1d2e03a596cf1d280c8db53cd9d57eba03ed03de27a834da26ab2b79aa718536708187b46bb0a558a3d9fa8e971b90149892a61d432461ec63f9f9a29c1a49a15d9f8a522796044c5c18c781c81ccd8a29b4d706e7a8dd4b25668467d88ed05ebb0d14348866d3b802d8bd1f6dd39f52e6dedbc9848244747895ececed52f7ddd53ef94034ffbe50bb46842fdac6e3db2cd383495543721410b154733250bf46ece4baa9142f70b644ede42d05ee233a1a5a39065d648e96358b4fdbaf4e31a215ea8e0d4de53440c119f0899095f8cc77f7d642419e4bec38d936a95cee183e4a13d219d46242c10638bee759083cefd4d36ca4c27a3e0d75fde09cf108f93b64306dab77f2d61a683fc70a1a6018b085d86a86af5d56094a1744dc4c914927b42436c6403e1f314ffe0f40f6196b7db99ca7e01ba6f80d54277c2cc64515b9991ce310990c95bcdc412653178a0e0cfd59d902ca1b55df8f361d303f133aab7c078156decf65ce10ec319ff060638b321a4720b732c8ebaac12e6d37ab5bf891b5dac32f1bc967ed0c61314272eb9b0aef1d14c043365e1e036632bee35efd590f8b0a806649f529359c3ea6736bb400dc05f8780ec7b9faa4e166473c97cd942e1753a1117a645bc3115db3c5b136f92b5bb883065e84fcd8f0a2d61b8dd607aee44a3d8967af46403258fc5e91a6e77a3aee1df9af71b634b43bf86c94fea965e7efb8527a272f88f4062555bc4d9c3e837db9f6c73fb115c2b57ef81fd830597ce8b7227beb9c5e767b3ac697c86233e84ebedc7a2ecc6694915957e137cb0d29bd53a1b3558d2ae07d2b3362b6b39c404bf2209341d31d5764bfd5047f8fc9d57c39398367c142c295a43bc603aa6ef518b4074e395caa57eee2a02296b4f57017268de19cdcc3d633a1f79eaa57d77afda2bd743408f2ca508ca7fbe505dc116d428d1337aa39aa7d7423df8c232e27b1a36ce6437745a68dcaac0e839f200ddb8c904d0c3483af30c4f1113610e1500fe259a5934850630960f8046d41856df86c94dc866d8e1754e6f6ceae7f2cff658156fab1e89e6bce13d238fafed2aae7a66475639ab3fa9bbbcbfea6bac81fd0fe680980ab1afa0904d0655a45f8f84124433a1619f718ae168dafd083e2a1cd27183567610f4dbc6239efeaa018c2fda99cf91f754f141af9cff2f2e846b4c660d019003f31bb734a5881c715ebb1173075b9244534c842ed8322f00ac42dfc1b2bd5bc53627802a4bfa258c3c81bb4efb95b0b580cf9e28ee7c7e3fc8831c9fd00f305a9b4c08187b5ed946b8cbafead86168e3ea202d4da52637927e22e6ed9ee242d7ee08960b6e475122aa95fde024b4dd3fb4545b4b30368edff5436b5f3c2e00df26f0374616d8f1fad630a2bd8b92723af7296994b245fead50d923f4421759fea8ca82ff8be04ea2ef4592bf8095617efad0599a415a3a28afc826ea98bee7e6b51936e7d63541eb141d24c36b6de92327b49bf9d330fe2ad3fe829211ccf70da47357e10487c8be9d2146397177f3e313b61c2d48b901d0d3ef136a83f3562d6cf37750a6d4549dd1e35e9077c346c5e5aa2eab6edda9a3f4fe7b3490d139a74f14df912b4de6b6e380d4ba2989fcc525ca3889e2f09ca1e77504463ac86f7025defc48c0738545bcba35bbf2a399a4fdffa9adc495bd006e90ad4795f280188a5a2cd74cb5fdb591461f1f143d09c0d89b573f500e17d1e3a382d68cb11b5b9596aaea0d1bc3ee26a8aed11bd47dc65a62ecd8ecb7706441aa17a810a4577cb806bfa9d49713913ca07da5bda3a3d581c3f326e5bdf7e62851e252e89c657e56b67f2a581a88ac8c1cda477f99b73949247a3bf2e27c5284f50f68442a26d8784c50d586d7f2d69913d7cc90b565aebac3e6a1a049289408a9646c191ab41fc43efeb81309b02fc2982aeeef0f347d32b35d8b098c653f03229f8f81701ac75c402f407db07ec1e0c3198e1e0c16b518b4f9fa187e2c60a082627ab5f5e9f49828402b7552675b8ee37e8f5c6192574949172b6750100dec61c8461cac75622bd8212c0e86b89f04e6233611117811fb6d81b20b4714e662550f71a87e03b28ce25af0b09634f3eda7534301429933631447eb382770daa8407ee5e0f5321334aac53b90048c95561f66ccc65b9d857715de746c69096697c7136bd94946ecbaab404a540af2f06a91947e54d3608bc60c73366abfd7915d55fee219d52b1c4f9926e335aea655f72f4720804250f5a11137806892dfcba8c5fa05997bdcc0691c406571f64aab9cce9c4421cf87858a135d169ba9c582690dc0cf143ad347c7bc41e4debfead21d37ff5fdc8e0df78bb89617a045d4e2fa6e36a2ab956954cfafbea9f9c83f0a00947f9198be8d9968a22aedd9c0815203776513adde70603fa2c6b0bde8f67910fe5f09aea1b3958a02373118befd3076157d1ac834e83045b65eb1cc9115523b9e24220328f62ebc796463e1be436bb75b04f2de86aad87183ece8aa648592fcc5507dd553d5e049fbe3f571cd0c584c3331e9822424ade4c605ebeaa964a4cfa40e5ec6657138f7a09b44836b6db68634381e7b71358f3f1017c653b8a1cbf1e107f916e830a351e9469f80e1de784903f5c99db950486c4fe11cac7d5e699aea66936c3675b127f12acb8073df9cec085f923547bdf808ea49912b346072d4086457bfdf925841d768d9184a5ce995c644aba8887a10aef8dad32bc1decb654fc7adca89f150f91871cafe0bcfbb724e9eadd753249dad2b94cc1da69e3f60d997f86ba8f31beaa9fa546a8dc26e67f6b811669fcfe4336ca8ddc6abbea1c7d6ac03e3b6b2ad48fd9ddaf2376fddfe6f15f01e715d2dc00de67a15826e8abca47b98d6c2eab9a5ee743eff4409ff2e166c37fcf06b8878752ae676a0e7c079737204376cabc71943bf6c17d7dd121d669ab35cbca8de66b3bd6da9abf98591c164bac13df87428a43e77c2f3a43fe611ffe807515b1761ce6c09920e7c0c93ad3f32869014d01575c1b09d1eb5cd0d57037d87a284ad873a3ace4d8520f310c07ca0a8c538060af8649ce081c72c4765d350ac324cde693a32e1a970f516a6e2d3646fce3bd1ac95645e39b2ff28e5ad9dd5f875ef89d6c6ca4147dbee9623fefe5f74a9228aad07dd09aa3751a41c8fa28d6cf6317e6b04d41bb5f9758fb15acffcdf07c5795c408f667fc637f9404414357661de0f00eb0c6dfaf29239ede9277834fe98e64a7e15c8e6567e558679e6fd451307e656d2d4230dbd153eda83a1cd915f6b43a51c111071e3ae91f622407a7c35e1a0b05ea0461eb92bba05cf6e27fef224c4e727fae390e440d2c64efea81a5b51c4e77a122cbaddb2e1186db402faa76edf7a48c01a830133ea04279fac6d3c24b89bb433798c460cd512e6abb4fec569f1a1b59c74b3b3255f9164b0f1da592b98f14ae7fa7a31f9a41533e8fd9f63c4aeb25a9c60718768a45763b18c458c72b40ce864aea3d009b89592636c442cebb9dfdec33cf41ca1fe6c9e9ba3881111a2491e9bde8623436fb6a78d4aea713465f11f9c5e257db0b424744ca11022090a846dbdb254db85d205391f1770e47fa85a7b602ef0bcbf7384138e9dab102046373ebf68502c89fa1a9b40b28d76d7cd37dfd05c22ec8ca3c8523c79b986d22c634a7ceadd3a5959262c0abdf998286b543ed96f7ab915c3c78b05b9000273cac5b6d6344f9aa36bf7bb017b398d4c61c20be38f95645ae58a9c34fb60a9a9f0fb696465c0d6401085e3e11eb64f51cf7031b69342071f57c4c301765ec82a3f0232f69c320838c45ce58328aefd329d9364361bfde41b61808e69e3678cda5b7be436396cd3c45ea67eeef700e3eb4fcaa1c6cf13b17c951f3b1096f3031386ea64b9531ccffc4ef1ef7a19a2151b7abc6b42f6e051dd2d5f1663982fbfe64959ba857907278a9f38c6d7e401d883c5013f0757b19ff9a80289cc973d06be9b7430f58b7e8bad60ac4fb7b8361981a1d7f3196bb461a26f3cfae54b5145dc92d4a1455f90d0327e3bdef825909016fd9842ea30dc3e5144dbae76f95a16e858019b05fdba1d92d0d560d616ea8cc731e7439f7766f866ef03fe8faac496a8521943e639de47324402a8f9301f61178f1732c8b1259ef07de999a29cba3d82dbd6c7904c586aa1c7c3bd39f820b3672048cc9628a191f0654272b0a960d52da2934df563852bd21ee50b2998f416aae927513e8caca006373c5476118dd6f6913c624f99b54b42d89668cb094fbc4a5378f1a7be3e3c4f16d4a6957cae1a52b9b23e2103c13cb73f7eac363d9996b6129f9725dd35d2e394762ba6b384c025e89f4648d66b7dd34274c6c93e5421a584f8ea43967cda3dd68b3c3a5d9eba11e5f1e57eaef30ec5a8d4a984973498f4a1af7f3c7255c5851ec6aee676b62b1aee3958b975593250bc3786cb9863f8a5c6dfc5b69aee755882b8883e22434b8c1767824ba79f22c8e0f0ded910e66c15d0fdf7417f71855d9c1cd1a60a2eb0e2107beea968971f583244ac6b63fe2d8a0f495f6ff5d50516d8ab60f1e79e732de9fad49059919a65dbda98ac06ea231edb179d894946d6146ea363ccc86a256c44fb8b83e4d165e8ee05a90abd95717dace64d407903382270e315c3eca1aae9996074e16179e857b4019817c8a64fa3447eb48146f7292d1c7c0941324264b224d47e5a9dc1877c70ec5c15dcd28a907f76abda4277a5ef1a9b0986df8f9f1f4add83c5a078f4b7835eb204b4b8497154987de955f03d525228bf4b2f5d30f9c8d17ee98a4c6dcb9a43af49cdaec6f582f786b2fa3ea17aba0e352acd8a829d0000673d6f32b9140ad9f639a532dacff275d079a6b0f258952a22a6ddb75437d5f0b4104ea5e3f3bdaf0b4bfca3f00ed5b91f1cb0142a90af790a8bf62f866bdc06c11912a16f1b69d89012c007ea3aec372689230a986c5059863688d80c07e1b973c5fe216896ed950c5d9f9cad2832617209f91c4e599ed40150db94d27ba6518fdaba5942a14699d31f15e67ff22bab6eb8840cd183dbfff75488812f9f399d3fa9a4f0fd5dd2dbb0e53ec9cbd031d4bba470c5e90a8dd713a89d31f98fe221968b806efccd1b30ee8c9811e3cb1569583dba03a7ed96459123f4d3a1b73196f497dc68cda9bcb40f5af969209c1b65130062909cd9511ea678b9fe8b85cb0bd67ad5d08dd751e45e14aea006283bdcd2d4d9ac4f256f06d79a400da33f405bb9d6e954e813185c8c911fe47d354397fd9f7eb4853d946a32bbd158453783e7b62182be8cd9c72d1f2e4c9cad1c87df7d4e6cd8867604b80e0507373f261e035dcb39c53d673f472671229b57352d1d2fb13fd1e192faf47933e4c2816eb24a2e14b2ebd6c25dba6c9d2cb973fe670f57c92092da483da63c251d2fe12378794661974afa3744a69bec81f1028f4dc1067d30b56fbcfec6c3fb505717d70a711bf51b0795249b5547ae10acd4516c3e21f82eae67330e0373115b34c9cff5079a0578635493d55b1b44376d55c1dcc31909b83cd0a9ee65012f4de6ae0228b59a0e0c7c0cb319f7768205c8823653150d2d1d01565f6ca267356ad12c97f6496249e20a90b88d9d45bce42eab6cfb273d6aa4f4d916b482358179181af712e661e49d081986d74779c554a14089c39c015a9e658cad5dd579ec471c70c53b888adda6c2ab13146f086153fed84048fc8ba1b8afe71e31cb1a36ec07713b8fa85735dd98be32547bbbdfdbf7d34db662d26225285614238da4424f2f28f0399767e87433054bcb049f19fafd53507705281450808f14703f27fab03af0565d14b4b5047e77838fc703efb5ea433b3d4b28ec5167cb12cfb34d47445d051361d9fd1aea5786e6be2663591781d93cda13a6400478123de88c284a13d7d1846a5c9ef0e7baa8d971b318f03edc493211d59089a792033b73b986708b1be14a01cb6a8c9bc7d6bf2e63248545da810d6b7e880776b3c6e0dd8adda49f13dea6555dcaaab433e096b8e5bff76cc4f5196037ea15ac4b5143a92a5b4cf7ca7070a8b66f66f4937db873798f02170b4a7cecdeea85e4ce3f9f29a48dc6c301e4b2cd79cd7f93b035c4c137ce4ce467382ea220f261cde4561ea45179065a0a5cae762051f15f46767f5704a732f89001752e3a7d061739756e2ffe07a83193ebb08e15fc12a2b8358a5553c7e266f3ce5dac59c5985d77f08ad6605986017fd19ad9d01fe86dd0bc83f04796aa57b2449b71a9aac0a2bb74e13caa2d84f44878d3691756520e52217dc2f313c4102ffd8bcff0271bf1496bd7744c63a8db94e6c2fc9f2c24892a6eba8d4eb3ac0a16c498ca78cf4db4b780d6e2e8f31a66efe8bbc2653a64333903915ada5787504c6c984aea98854eeffca33b52d14bcfce2b01fe5f1123f6a0eea0cc60adeecb1cc2e7b319280f8f651e28aa8977541d9d4127f8d46c4e7c1979bd5dd7be40fb91df1cbc9d713f1b7eba42e5e6a0b32797abdc0eecc3c14470d5b86c037d62fc532b0eeefac7d96cbb76197b62dc3a8fc3b46e1521f9a82711c06ab229d974e66fdd17ca3a0f5d28ef75b3ce39f8fdd87c3dbe68d91b26c37bcdbaa35bbe95a48a74957b0c0fe4d13297b9dbf167e66bc36a298bd848b769f096641a25d4af4db6b80edf241caa75d44b76ad20643ece1a410a95c04b0d150287c89169f7d3aef21c4e8b96b8213157bde47383510391c6f3bb9a4bb5711a36c20cd87d3e55d2e3d25a8b52db7f151b3c08bdb876b16fab96be9f6dbf763ce6ab56e8f31a23fdaab64417f75f560deeab8b81db8dd46f933435e9df7ea1166c81fb4e01ae91158a188807d5d67625c926e2f1f0635d52355fbe731bb476b923a7dfd1a56c8fc94bb40636b4690ff2e1525337ed5bb189ea3f5b96a274f079e8958020b4aac3e4837d0127794bb877e4c35eedfca0a6080201dbb367af698b9600a4be2ecab3825ee504b874c07ad5609d6b32b49602007b85b2e55201ca755b48d556d07ec5acbceeed5f93882408620b234eae995034b43d26a3157bfea2faa88ec7b1ea43662d28b7425219b3beb6b22e1b5e27b556f9c95b9e8798d144f8c62ea43655f21f4b50166e2f75707bd20dd962c39c5ef22aa47b3d6e0a8455ec30acbd253fda940848d08ab6b5fbeac787a4c902ec03af5eb940fdd9aaf55a0bfad56010f9d743cbfe176ac036b2260efae66b1059a52fe9ab306f07d6361dd30e4ddcb3aac0ed2e18b1f41ba1547b7ccbf93fa8f6b7ce0bb937a9038261e62296c661016afba6e4111a55a3ae24b75cd692b1f56391312f4a40fec51d8202f8a875053d5e38188ed1ede55ea443466f6bb71e673f91306689035f8696423231f0c17c706344165e5c23c351bec0936e5aecaea7993be09738e1d81a1f1ad6fbb6480f3687a7ce002f7760faf49d45cd5bd086860596fe03f29fe2646861e531cc22576ab94c181dafab10128cf864a786c51d736f85763216acb38f4da2bd75e04c3b66a3932a35a53845fd494a337c702fd7a54e7beba592e8ac9a945802534804c1f4ef385f29e89cb3e0ed4a9c61510dd9db5ee27a14301f3cecaf3920952a61d3e9c03d9dce25ea57a515728fe1e8edf01ae852b073f4af443babe9a32eea19129f5e74286b85e188af023a46dfa7804fd3eeb02a7fa7c633c98d6caf0300394e5d9f78cd0972dc046c3f8c75f6df5c55cee261f4741f50e82468f40d1c47e7c8a469b4a830635073c1eb49638e73d847050b5fae60c4bb7ce0067d2438e7c07ead78a19372182a3331977d315ff6c196c10e3b9a360eac930a1064a0399f514fd41ac58f0e2365f3411593bd4293f139767469cf859a98c6403a39413b3056d97181e7944a84fd54286fe8da541d07b01174b62b27f70c2226f0e0e3c1b802246cb7e1dfc452560db2266c5c476c1cf4e94812d57a216d8dd7bffcb58419de73c9720e1110c8f631b24901a09f1a0f2135591a779ff33ed463ad6f64bbb06a5fec5fd47c5b0afc8efe9c148cda2fec089c23ba2a16a5a95a573cf803fad0317b43ab84c2f0d7eac33482a20ae2003383b0e2176f5727cccd2f25bda6457f4edf466db81eeaf2aec098afaa581601f27f8075b8c667c63c4362fb74cb702470bdf22f673283aedc52e9a80c97c048325838283d729a63619a3f94d2aab22b4ae92f7ed7b856441175ba3b75955a8424e493eb1bcfe8006dc498e0e9b08db8973d0fb8a546d0e83f0507bfa79b42a79c93e136b177ea093d3e6a0b62e00c8b2ea69ff8aba1590469117189a7ce5be5fc00b67e6fa1f6509903ab12fa0b9a15da8685503d1cb1bd3ccde250ca1d5aa17a9cb46ec86c1d8633434cec693bcf8a23bd8bbdf6db22827c3ed0d94ef55e63ae6507e748b258ea7198521c008bc6c87e981427ae6efe3e8f232bd443900c5c2ba6d0ae77c66b32db380cacc6d66fed34866e3ac4e3e9ffa8992ee6a573389ff067ae967722f5cf7ead3dd2f341314e648c287aa8796a9c6875b98b89e7d9b3db3713af6aef7371d56c27d039f00feaa0fa7e22e1369934b120abf5d0d371c21fd2afafc0575682c1cf8f2d037858e837443134338668a778656cb9100b600888c57718d163e63569867e3396235a56039714c5795c687439fd7c94c661166f8ed68d4e034822c9db1ed6417263c6d91d53080c8e2ac66200a98fc3c969f4622c9d168d60bf7fd1cc0001b85402c241c89bccedcafc082ab882881e8786562d1dc83dbbd16138412415a342c671a1e16c86596de92e49ea0f583b9578692f13f6b427c58f54731e4e5a2f5ae795a9a441b588a6bcb5b7a9825213cba7b12aed2918587ed68299bfdd1c6bb63da170a13c3e4b32f93c340721c6cfb48ec3be90a32d7739a1ba277daacf8e2a65d3dac1926d958377adbb13c875e6a0a87c969a0394809b5f6e68a0fdbb00d3c49f0b161ec107d77501ea1e2f699182911926549dc0c529d01a5d663369312a0f95e03ab15af42161ae49f7dbed657d8c6544fccb804a992d0e2ee5e355fb3d8d3d0105141134093463ad40e2a8ebb6fb834564d454611612283e1a8db51ec2f3c8041c6ab37493d7c492a39a3642e38d6092715e3dd59702ac2e5b4784d126a8422b370c75a31b147265b76b710f40d454604e079f1c912d83ce2ca870ca480d0d478e01f913a45640a99bd162db40bc74fbaf16e7b4d794a7646427bc2f5df9e6eda734082e279ddf819d2f6f1109348c934b742884f64e122a706be1515c15d5fb2941be6cd2e76388ccd0497a5fb76a1ae19e1235c1121cf3d40664a0cb3dc4d8c13d51d3fdf00414858478e0d11b21d39c5060b6128fc4c7022abbe7c46b8bc4e3b1129255b927d64d0b1ed6c736850939139c6747c0a46616c28e066376eebb1b05ad15c372e94c452faacfc0dbad014d2d28eccccb72ff84277dcbc4f66424bb99bc06bb839784b7d86497e36a6abd24e3e67f2db479080eca4c4f00fe5f6b94c7e4077eeebecb1dadd2049ac7dc18d4756cac33d37552c0302d0727de4ef7341e4d6ef94c967a539efa19f475ff3e649748faca580cb574c6b8d9824e478660e58fb858722b7e261aa70c5e5b1b6f9a4cfc1ace6658e2642bc40fb78ebe540d4be3e2d87ee5048a04566d3dd593594b2339ba7dbded67ed082339f8a56b0dd28bc0344cd87c70fd7ae2be0e52a8e2ef9827fffff0cb4cb90feebea4ccaa8b74c2fd8e65d6293dae7bbdc9f619655666f08d338c64a3e2f6d45ccaed922740a88474e2c6259cc5357c248871a298d49f89c856fbb2f6f8f768b91eb264c31085fcc2dd9bd58b5cf0858d44321dcd9b7e489576b309ddaec326023ef75d82f3703b3d4aed08b7caef6c32a64045e95626e98df1e2a80da82c08920f1c784653c23bf852df744333b1864a64495431c6e408566ae75a6c59a94393e88d98a61477abcce3f1a65eb68a5f11ad1b2f9a1b2e998e3ebe07922e8dc65af03a37053a12b30af0da4c63ec572d73820937a780e4fe6fb281ad768fdcf68ea8b9ed53acaab023956d6019653fd0c33f9710f132bf8afca1313b02823086a393ae2f7da499b6e3cd2129c3e332c6d1db76b38fd5fb7f2affc97f0b8da7a56038d453ce7345741069cce9c5506748ca3b1c784d50efc42b43587d5a4f3779fbfbb9940dd052d577a539355719815e180517757da27947cf1ebf3d6a0e579d1a4481e779ac91129ecfc06ffc3473dfb1ea079f89185fd7aa985aa1a99b85d539f829eb5cda65656666f882b11ccff308974f314463896b62dbce1cc57c0c68db77a91d7f777c508cbe97acfd947db224a709c5f096cba54a6df65677801dc81295418354a253ae1f38834ce8be934e5e0090cace66f5635a6c4a8e44cb8dbe461b3a3dae20815ae2d6b2d5147d9fcad4877646f14a669cab11bd3e77a2139db800c1b860f0123b6201c6619b72c70f7fbb8606cc6fa408f163aa67676c8afd30bad72e303f1646e5a6bad7d37dce6d361a308677a6b803e8da8461ac1383afb82e689841e9f24da3babf30fc9c7552186094a7b8e71b85cea5ec4ba7bacaadc404d83b691249718d293cbdf35ea21fd735bc5850fd72d90063f2cf7d10068aa761e322cae376f974580676f18ba1fd985de00e0826fb12d25e938e9284886e3201f5d1eb652ebdbf127ba7da5b195efb20bada17f73d43523c683380ef6405c2fd74968e806f6140ed105658740aeb95a13a8a81774e5dfadf0cc59e8d32db33af378d0f5db9574a74338a2ff9e89a973a1cb50cb839753b99d41b5652b1c3a5a03b0b262d726e06de013c81331ce8e7c0188827898e6f6b427ff321affafe89691e356d1638ae05d84b97ab89c04e12bb2909750256d334955b2014080a32fd7ca6d865ce924c1a3d5061be12e0c1feb964d5a4ee605d156a5bb700c11aab1b54391e5616826111278d026f24a1bfca201b8fa58d6237a36442e2a329fad39cd2aa14cd87fedf6665e531ee7c915a3ad08ec2923ce57b97dd8f0b056c1d37c4c265e951d92bc4c278a02ede8890074ba8ef8ec0d550f1d0e3a0e4fbe90633124ffbaf855b24ebee571afacaf41f39b3da2217abec7561fa389416e13540013d0d8e27db50ce4c30b197ae505220f8ed3da0cdae7a875311362d46c3b313e726741871b68ab14dc2dd83d52abc625c833536fd9302195ba2e83f7421f407ba59aa932dad7901b4f318e64aa30594f153beb854094a9d0a8d5d08e004a24559b2e464875fa8830a5330f2025a6a70791969efe3dd19a6714346e20b91b3a0179e8ebba4190bc1969a73278aaa07d76d777eae63c02f4efd2c91578901acca4d90b743e7a0f69164e8038c2f52d9123dd20526d24b8f6ee40a6e6279a56e7651765a0eaa0abf24565790d034bd7b5c675f666b29ee78b637b9a526c8d49483c4a3a552c8a41af6bac6f41a1d92c9c57154d26944f27e50bf21559e8f6da719c94692ac514ae929cffefa3a0d6e65af90ea07887bcd1060a1e6d8c3717830f39a4ebaa64fc1f9f655043a9e425e6b2f101cd5030fe14923a943de2f5eff94c715b5e915925fa9491287f4c06e5a1069f44e43bc66f4f03b2d801ac2ce26f504641ace80dc4278083afa327dbccd88b13fa629cc064deb59e7e0a09d380f260d6d742e0c0ea85fd79862f5be6f11b1342bc4fa8f9edde72c5722e6153e2af143e2fdd7381527a9004c4d58a226461d5065a541404fdb4816b45f37a327f4ef821ffcb9b0755b1b1220f79dbe0653354c3a39c1451ae8fa6ca261f6c5cc67f0bc8a5dcd11bf1b128f14d968c7f66c9b67c7a47d1254f1a98cc2a300611e1dd2ba4d90502190d2b153597017836d35b4cbf1a31594b14e8dd21982e5f4e469c3e073bf0392675ec13de056c660848de0900073d3f039a2417e0bc343c77058ca2a6446f4669c00170f2efccb11eb6fa8b1602a3b41ae59b6ff52b24f5e5e999547d4ccefc6bd1dd92b29499f594a6f1305de115f2c0d1673338d9868265a895df8956562e34015c25bfbca3902a2491f8a74bd8bd89f6b899f4a2d1f5a27c8818475a4aedefe6436dfcaac948ffda3ba17e2444d7d61003c698b6d54d6d742c5bd1c2bf8e6c9bc898a42c41138a1b0c77bd9107a5b0a8ff656164551ac8f7c558376c7493ee73ccadc327d72a8b9e088d153632be4417907a245a8f72957aa276bfb22663edda18da2b63e524582a9138d2aefdc2d3b5ba60a03a291ac80e5d010d678c10155a6baf7a107f6f1c39c24813d3d45d1340049fbf104cee94fc4a4e24735bd94cbefac15579eca12eb2e06d7dfef35055d9975e7e434e6e6511cc34237e2158e8f4a22c77d3b2ab8f1bb1d1a8ac04d01c35c73e87495b641e18110658073868c6bb12018b2986f7ba0590ffed87ad5072583a7a570d2cacd129bb073c29390f598057da5cda6827613592d8bfdc9b5c904ac3d2ba3a53620eeefac0858316dea39c64d50e65e1ea94c7100bf1a79979f228132ddd48df84a8907e3fd6d358155f5203537ebbf3ddf9e5be0481ae78da77dca62254047a99d918b06e5322113705eaa2e3a0630f48fd24345d98054703c3c7602f1051e88161650c5a34ef840897cbda06e65495d31f609cf60f9abfdb3f3ad37e6a9b718af587efb690c4468626896bc356e78103ba93f500fcf6ecfa5581d2bcdf5f9b9a0709b6d0afcc90372ee822b8571a894304c28614c95f66e68ecd770ac6a65984e98c4379944e5599bddea8859faa336d690d2a57785940aae6dbd3622071e39c5c6e97c4e61ec18a97c5a0f72bf60ef3cb85823b9340757e539d5c264fa6d6e30555156128256b3c9b9506f42e065934babe8cd771c9a367ad8e076066348d9318c2a6a194e5fff93e7792493de0babc7e6968e5e1da0acb271ce5e37cb6ba6dc1f6e4a5ffb75b9f7b83434012a946dd1dd802a78c1d78cb3e30b9cbd938a0aa254e6075e0d343fe8ad062f4d1f6b5c89f2b237d2633d9a98e1cd905a9fd8e877b635acf762736a66e4808900f68cf9842dbaa9fa91de7c93c54226bda651ed6ac29361e86b60c2b59af746d3153cb68532792d13476b9dba88327c3678e53039884ace99707ad675840c22f271bf3c6be59b3f081375c3bd7691010c49267fe80e8c2b32fcffb75ec8afe3a7310be0506e331ea33bafcbe31f329bc897dfe0bcfcc159b0b62c98070ee425a89de4c23f6f553c7655d505076eeb7a81081b46ddd16fd85efe4e3991d6a059e48fca37ceba2b42c7a567782c9aebf3832e8bc93cca8968ac9171a41a80f2842afa41499deebd1a597873c1a9f78c2a9dfe3ca5a8b363cab79df0758e6c3638baac7a7f060e1ca799937f79dfa9f83eeae3a6cda4dc002916050615f83e8c69e576ae79f9c746b362d50434571777b9b47a3e7d7c15f97af2ef2dfceefa1f708bcb7c8f96a797def3f4d3668efebd8478528fdfa85b3924f537e36563b5a438fb4388256f1c9c100bfb6957d20fdee22ac02faa747cd6405928139d3f47ba2873945c525298872e681f1bd299a0f4ff87f446cc33a562bac967ae00406a94a90a84fc76e6ac472e7af17b5eecf2d2078db72ea18aa546804d9810b0324c88a551cabe9bcc50ae690e05b1a1389cc211dd29358d5d1c18ea16f5d2a034ad094c0a85a40e4f2e76dc8e3afcfdecd5de79ccf02d9ca60663f965abbffcc7358f3a1bf4e2a5e49485cab1ece8420c75c5cc3e626914596bc8ef011bfb926cbdf9c4fba47456ccecb92d33d85977af66964cad9c24bc81fc362118328231901882bbbfe2e758f7d1dbd656747255efc0a07176854a6f1a0815ea8dd59233b525c313cc0c9392678f9fbf33a00e08b1bb470b2a9037bb57b90365e19bdce3b9330380472655aa902e77a11549f5918e9397f075c2fbca84f195d34e1dff3188cd8bf07f82a4a96080cd2d79b6978e5d003c58d2cbc52cc50461335d6e55c6e27289348a9fc47528e0c2968dbb7f9860ff8a88364aaae7d4b29757ba9b23062ee166d8183a1c68e60222ca48ced4c7f42e6dce1eb393fe8080fca4b558fa2c3289d4b31c394209b075bb25a644b52c7d94f6f9a8c45362ed68f6cbb1f2ce06f5024a384ce72c8b3a7b61fe25959ce5b4d656ec19e766d0eb6f9af1ccc3e2837bfb3103b790d76a38b11c33b8cc9560a5f205256465a3e8f2ba094418f67d1e29dbaf07e5f1fa3913b9e879997697ca9e9085c0999e7e8b70b83f72cec31d2484f4ce66e833dda7f53f3da9a16cd496ecfeb046caf02c39042f48f7ee0f4effbb6173e3236ae18c872146331351b76be0bebb0943f19e60b29c20cc5dbcc29647392072baf1b59efe9b802a694214f9f528e9efc265deb3af83cc903543065257e2f195f7ef9c61bc47b9d5c0b3ae1f4ac8d08f3e1c86e8f2ad59914c8bdb88c39b2a0d9e2a6d348a2776ca6b885c98cf2bb5589ac5590b434881b28e4f7b4d9080e043b8860affdd7cae2aed14f14596733fafe7c47b0e01e870a98f85fc0acc006494c58bb844e5d4ac74b68d3236d345ffe73535d20215f24d49eba61b43ed6c76ccc5f4ab3b6c7d022c072409f95c5ff50a207d08e355eaaa947b13e70740b1f1b6ec602aa3eb9ef04fad36c6acf13692a4150a84b47fd70db2b52a061ea9a2be386f9d0b99585dc00d7aa7ef89bbffa43eb9ee74bd3c7546826c73289ae0e567669ac153f08381cf8fb6b245f335489eeb7174df9de895ed8ba50fa8c048ffe89288ddd9e2cbba21328da7342eab9fea347a71d3af55da75ff20ae4be5a5fc3e64852a4d436e28a2ce2704e08b68461c70d33b189e1bbd82973d7086c70c71d09bd27a6a1aba1fb0d61057dcf87943a7e08e43eb9403aa60ba0c7748b655b197a39ebdadaa15f0eb814746cbc3ee64efe27025d401bd8327ac0c24b2312a07db2bf215258755a8ed9dfef47ce05718259dfdc317a8bfe809bfa98d93368c6fd432d11ea316d4ee4862be1910237b8eaa7039ce86867f9a85f3875cb3a92d52aa3636fab3606cfa8bcb2a3a06feaa5ba47d83872e7f3822e202c1fc8294e702a4f0c4897736e07b3e6bff0edad1a80e5302ac3c1835467f4b82dc2e19827f4f34a0edc48b1d419e4a5205e2010397b86931c9b92a1b913906c7a76f97dd4dd5ac3c0287138d2a6ab2c84ead9cf60295161c84d596c003df8a5e091f68d85b703e6388bc12540c0da07d0ec1deb92af2192ac1c68aabaec46a73fedf9f76ea470518a0cfe05d266e693ccca5891c38045b9d97fdbf1abdf57223ada9e08e48b835c4f448ff40456c06f9607703fc9ba1b6271319efe9b0ee04856df60b6780045ae9cb3be6606f09765230f23c23164c426fd708fabb4a3baf72f973fe83ebd97c5491b29672ae6b318b61e32a119a20d3e0c6b907704b71b6733ca6d64f0089f1b0b4adaa7a8ae85433f1703f3a5e348c0012e5aba4cf3a57c825b28dde7e3a4af46d2f8271e2ee01785316992a89102301491ae8ec782cd6d26d823cee3eb4aa8979a404340f44ea9570d7167fc7812b4d78995cf4e97d681aaac0b072c5fc057229e4615296ae817b3d7a2a058a3a50fdebd9503702755a2070c86e980f87f79d74af0db081e40a4757740ed278ed6b01bdc9a7f26613c0810d9cf7c1c1c230328edea1bd7bdb351b308aa4a12dfb7d3fdb4f89142c9369bc7d3b67f9a30914d452bf6724f35e676ba36c97c028f8e0366866021f872ff07acd30f5fe0bb1cd4385bb7f860d62aca7316dd4a71bbeaf4fac1b76cfc7774aa4a8808db221514883e9262d165475526fcf84ed026a3c0aa4c4f91a24eddc0b9698cc25b6e84358f5dad0ceff996255da1a0c6c45f98abdc3085c2f1865d805cc0f55dad484f09571f3f90a6b79bf8c8a9cb259bfb87bf304717f2b0adb9d5a872b9ce0bb8704511d06deb0a72b8404c1d0b8dc15ae9ebbc2175f1643a95ecaafdcec468790380d07fa5dc5ae9e0db778cb35c9d74686cf001568a4b084444b9f0ddc3303fa33f060e52b0882935a4bf4d9511869a200f55c90cebe25e07d294170ce72382db702a181d9c152452cdc991a762106a8e54305ca41069f7ab9d47ddf736d7e679baae10eb727da55f4d7805ec88497045807fe6d81125a045c49497b3f0d103d55a74e09959b458e1ac559b5b539f18ae160ee6449772c0cb6b7d70a8d93758783800cc6250a2c273dde59a3a1fa777b88fd0be3e92a406271f7eea58e8d2e7a0d9556ac813cc87c4bf7d2bfc8728e082f78cf30338a175dff4d522cf3a57d1f6bcaea89b4c17fbed3c0396a8e07ac725c1f3154443df27edf34c6900e373ab72a54705e31a458fd45154c030ad1feef2bb37665c76406b2ffc25c6254073f7a74ea079871fc2fecade21c8ea223e42eb6e9abf0c0758454f24d4282c1e54e37fb98980c5574cc450287b9781aeb0fbd37e7240839cae04777966689e92cb9e5c2fc47fdd933e4147a1d1b53330b5da51b2fbc6a7f84d990c520098e4353f238942eb76fbc7edc382667b275ed59e070642d1c486fa417ee077e05b89b60865a19a9147c399a69f87755a6bbb84d0199459ef1bbc49f1cfcc69831d984cea0a042b329178ffee95635426aa1175ed33b61f450ec8ca029113fb37f3ec59bff1172e6af0e492a8ac22d99a8b85742e6623f6d4d0e2f327c7ca5f38c676d92cd8e09ad21f5a03c7ef7f08ac4259b8fd96a651b72ad337d0edf399dcfbebf5696297353e7529f5d28765ada6fc1367f10495ac055dda9dae4dee969a66ceb7525d0dad109a14743ca24398b4c6c3952838304118c8e9f03f2d865fce7da4dae78869742a3e7823b5e75955298fd02c4921e5a1d6e14c76c94c616f055a8ab45712466e68904fe571cc392e66be268d59f43a63f8522e751a9606d4d94bd0cb89945ef0ceb749cbc1f6a4fad9003ed2b053c30996b5c5747fe51088609894aeb5b9a2b7211c75b85455e63fc6c1cbda91c91bf538120f592243790fc746653581d038bd573abca222592ff708fd557eedac1516420639f4bd365a2e2422fe35166a6126567337fead4c9fb02e984419f24aeae058589ecbdd04d099d1ea35d21748e47cbeb26ba3644b32cb2b0c1bd624f4207dab2271878ddf86f7d582d350343278bc9008ef7ad2cb331b33906d59f4e117b1aa55e159ac764e9f2e37542311a9721497e0ef5d7935530e7bc0746984d6e8dd35a1950b86ad4d0f802eb6d33ee32b912eee585563e9625fb33bfeb02498c9c14f55386473923655e6281d82bb5ee779e0b53575435d6f4190fb446cd3da9745bcba307a13d9334af94788534f3a998c6c516ef5e5b760a393b34171b31cbc3ebcf84b8d99d737bddb6a10225d57d41f2ff975a4c0ebcd464517ef9a28b4d96e6850ceb45919af74f1fd96e4c0cb6194b35088bcf39f5626dcac510c7cfc2e87ff1eb38926e02e246d686c563dfefc0e4a7ba3c40f765b005bbc11b08d76739bf70454cd8fb46e30bbe50482fb42b39982f80743680b9037b6981f40a151fb4cc67e6499715f934239b0ef1ea795b19e29b5814d7179db1b9c675fa39a49fecab796f1690a443b58f52aa86376f6ad1445b30b72219cc66fc152f7a211f8b2a179d5fc28a3fd0e0fa52eb9255d9a6a3bbb7912327f180b0f25c52a445ad8108de3b5d601e8fb8e462bb29fc141145a9ce137279f461435ee537f7f17d42da67212c4b9202e6f184f0b81f3d4cf965aa41b82cc3ac75575d717376ec1ef7b4a1f9cacf37c61e7d6096f567e448994a0ad3488cd66324719e09113fd7f50b6d780930cf572a1c60e1167616a7707fc5a4a7bda17be6b39d54be0ba90650a36486aa7ffbe091700fc35f7feb24c2c892578542a9ce575c05e923ad8c52289ae7595fb6cc82a5d02891c03c23eccc01279aace607b9c7f53b189f882d698a8846ba3ecd37d890232c182e1eb1dd9969ce674c88c850dd8ec7ba12568bdc5e697449e29bf12dd74907788947006f151327eebc935e36883506fa9c595c555cf3ba49d6b81ad179cac6a8d6ba5aec6c5e1f19b3d993443630af8f26f010277312a41a780e770609aded984c9aef3f29ef342f96219daaba709561e423a76aa5f6add5a6593872a0ea05f92bd0f5178c72124dc1e969b86be6701df86c5be5a2a77d12712f0a1985f7e3e4f6fa7be13dd0630f30a9e8c48a19c927a0f55b67635e3075306d4c29ce3d0a1ded314f314f30925a62952197490992ed9b079c45447da19948660f6771be24335f2c08170657f479874c879b5094e93bf7f2f76812202513e294987f86b8f1e8607a22b14332752fb97b9a0da4d116301084d245052c847dc01fe6352be96dbe00cf5624c81b0a16c667f38b6a448436cedfea8b4e9631011ff6fb5dedb5a1413b84855aeda5d0300f887a05daf481669e8d715d2a5620647d63df09058ea4d86d4230506811ee4e840f455e9edccb0394b644222722919742cdbf6102da6bb77002e8d6571b9d15e3c5cbb799663ea402a7dfe671b6650833bd1330d12e1b10173495d24d59c8e03f2042e624867162cb8706eda4920909e70c15fdbec6966cd1a1af447c5b70e01f8afd98629d8355f8c31f5ad94aef9df64fbb2972e666ffe7db01dfa059e6aa46e9b2f6de8021874d29bc00de5632b1bef0595c4177207ff84d958eeb2b52de0c01ac81f3a6bcfbe67d8c30e0efae0c1cf7b334fca704945ba4d0ca23ab741b47b9eb314bc35767fdd7ffc8d7a04238dc173f7410a6f5f9fcafbe91f5d85fc95cbb8d49042209b43d3d1c3f29860fbcfd33c133bd74495fa6ed07c08b4976cf41a7233dfb8570016e0c205e55fc938263144d18525aa488d0bac9998145136133a8fb53ddf43c67d6cf5efd15bf1212ff35454b4432020e874d6cea5a0804d741a8df24ba258f52edbb476b8c9b512eb109261dccbcf5aeee2fdf9da3dabc1eea636b776b944bcfcc6d98a9cd84f3eae5f7409d75d76ce40ae8de67b0de0b588e14bb36c3919fe6942a002c990291e95a0e5e2da33aaad03973ae7026b1328e4baa94fdbc8e121fce480f08cd8b624b2e767d8f3c4cc3a9065a626dc34757f9a095967f660127ef126e20b9f3eb1092dbb0ccd57ae6b2b40b1ce9f82ec31d222cc208d5410b36d4418c8165ec2d8a053260fc0af14b9a63572fb9d1295bc8320af3ac22b600cd1758192ba5ea19f13ea233beff909ac6a6316f1d2610b9b0472ce9e240493e264885fa9d986afb14f37c4025fe5f7254daa4ae3e0501e341ea091f2e187a76f060873e5b39377d3b90463d8bd33bfceb599f12b65b7045397d9475afcdbbbb4eeaa36ccdc1252ac93c2ee22226f3af06ab2618e134e3ddf5eaf2c47978c36837553322d267986b3f37678cc715b6964d49b1be4f83071741e1c897dd2c1d4d40a11d1d973cf8b0753bf424b81be09224273a84d5d7f46b4fc66a39ea51ee88b6cd484a93039467a230c339f7bdf116a2c2c4b82c5bb9ee07c0a5f674c82fc70fbb2f4936de545fc57b364a0aa1bca0a4b2cc6bb70207334f238b4ce079c22d766fc9e1b65178807a588f6301c7503a90bb67cd4c9cc4f1efc536a555318f26ecc12e7996f9c873f231fc6cd41e6d5403dfc9a077e6250f00d7e8be55c1e5f8143d101506715b38325117393c240f283fca68ffc125816b0427f8c38f4db8754b973322d19f866361ea8a1c1566b19ba32ce9cf39ce7c7006d2bbb6b44dca39c8093a4b8c93a4a0a3c701e00d9e3cfa2344e8cc8120cc3a7950c74423e021d5241e16138a2e3ffcabc23752700f23a62db2bb7eda6d9c48e54ea4f130fff3b1763f3b76bd79ece1503fbeca794330e653555b7e132b9ec09799270614cc37a393883d8be6b7a8a26e1e959e00daa153977e39ced5031c702be6112ed4fc9a9b4c5b9b8965855025902abcdaa5743614a0c5f9779a522a6bf8873b6a637c7e59c51b7e47db0ce5b35f8795302d408fd9f1fd6da4972de54e348cfde035af1e573cb02f8c4672d77a481052a660f206c5c855f1ef366ffeb6771270f2266d7d47a28adae32a24a260ffe668d25fbe020c02567775a008972d9bc6b5cf98875b1c05e4a8681397658f6f643a49f5e4a7be8ffe95e78d68942abcd0aa3ff4a10a15e2aa0ff4581ca764aa41cc4653d014539963e5f0a494d525fe200f22188ebd36b6231afac70e5162adeab81fe45a75ff3c5b6c19723f3e99abbba43c5106efe1320b5931cce95c724b9d0f398c1808d6b2285e33e4e43dab7a669394093fa348411794370ccd22aa300789e70cc400a443266643c3d85a00d6fedea6e90bb70bcbaafb170b6d32cbed94569f4284c4ee36cfb9447232c74313edde47f5cd5444493c4d0f195dc75d5cf800c4da1d14ecab3d052ceaccf938efdb3dabbfd5e269cf1314e9b9f4d35dfc9973e7d80a9d2a5c5b7b4b0dd7356e617c2fd106184b7676ff8c6a8156ece44be6f3934269b1ae12a92e55b447206309796bc6090118085bd26295e514394c4165ea5b098b9ddaa277c06b8dca60cd4e8a406de287df251c31df99087cc4d256fba06d73c035a929f28613b5f87dd585d85af0b3f7827db475e03a37e52424d7a267a5018afbbd564077fa961e5924216fa4929bb87dcd8a98c5ed956a54bf399d872b36a3246f02cef496de40d2c56d3baa71661bd0b4b2739a9606b286d5ec01de73d28d0bdf47cce93f8d24a4e4f98ed18bee81da0d5c94788a3402ed7deddb88e42107c0858dfd2f3ab8de14aaecd1d827e8f318738976a06bb81616e9fc714890a5034d984a93b688dbf5cf5f1f83db4a97a21e1a33365f94ce9cda9392c66370b049da26cce6860c8bc88b91ec4a5046cda2736627ccfcfc0b47d379e399451876b89e30289516db01cdf743f83acefa9dfd7a731d50bdca63237cd3c4bc79c25e261a5832a11dce5efedd200c279ec7191eb8626304acd0792acc3ac0fccdce0a45028c86d9c0354994c19293cb18022cf3bcdc69b596ee11c3a385ad69f42c6bbdb8fe7111bb3d329b516765e1421973a73ec57066ff8d18356ba7e67a18f522b5576d97390881c97455f1a7bd8c57cb5fa6ea307b6c87204316d8a1e391db6327db37793f4dc1842a55e0c82c1325468a7756fa8c519f17aeb43e983ffc5d15c74b5efd0ad13cb7a38617a1d4bdeb844d65d46d11cf62205c6be6d86b2b9b698608e72dd836e39b6add79e51b9e1d6987c2e7e2850e64c91284603a1d963b1cc37d1d04eac85f33804261f4d04ae82f2563035b01ab79fb4372850fecd29f62e74b6da650a8ab3b1e6582a215ab74cf2a8bfce749c0b7df69297979e09db5b62a0a78c2ad4f04f28b98682ebb520e65f995dcd03c405cd398609e1cbe27b6173193271e3f37cbd3a62af8f6021dfb158b9666fee54d90a780a11011d35296168eb10e368d5a4bde98eb735b8a3ab878a8603690db7b7dc87323cdbeed820da4efbcdcdd3e4466479c43c1381a9d8616208cf4ed8d7acdf145b2a4dc3994bbf20625b0ed62e0b852e89a7283f053b638fc74c5930696e37e8dc938546f7bd68ae490392fad5ef535391d1254d32362299994738392d295ef02017f67bae1e851629526faec4c18a355a266fa2dc1a3fca6707526283b4082468e6949eb45cabeac75ee9456f8a075131429c22fcec981d6136065e2d637ab98b8b29766aa6a36844cdd05eae0cb22dbcb3904866a7727ab36c3d52def0f0045b7a9ad69e7aefac201472ab1336613e57e965a6f5e7f24615985c05a30c766a2958bf87c8f24fad984f153d56a305add23ffa2995df2bce6adf0c7fa281cb6c0337f7d07c7707d04ddd265d4823d5bc0353555ced56f7f81412432ceb85c9aa39801db42dfe779197d219d8c8ac13a93077288bac1711e11dda286b0265d03e85927899244cb9407442c3e32ee7e040a0df00b6d5cd3272517b5a06d1d099aa13749b7f5fe5c080836f4c4364e831fc9b3c89235de0b903fd91671d85191fdfcb519c5392df12316ba1d40ea9c51a066d8c0c0ee5a5db98a92a2690213e1873fadba0db6f58aaa149c136b492a8bb688a1658b4eee41d587911e58e5f5efa494c254ac7e99d60c8c11544ff2ce95c249bcb732fe97ad029b3a354157042b4ae4b9dfd7832895c8e508cfc0a5c14460f3c096a697d47e31541d6d6d3b5b32eed7fda86f70c6acb3a134677802ce879b8205c4b7d05bc3f5fe273e263761923ad33363b932577c85cdd156b750dc310bdc784f4a512422a4f7185ea4c24d25da8e84e080511d35ae2f26378c692c5034de599f2f4c926cbfcea67f4aa6ad097351d55d0c4b745dc4917256c40ea4339fe49108ca602f6873cc88f93101c0172c2b3d40246ba037fff209c53c93a6a6d181cecd055c61fb78e33ecca41b6b472c12b596358228990319edd845c6b034d08718bc5e2d90742b909bf4a0a93cf2eb31e8f9188ffd43867239832c674fe01ffbaa108d7ad07b4217a19a805ee05705ea370e315eff1c4844c13ba1409e2aa1b4ebf64c40ded34e983f643e47e4d645652fc3a4e5bf5c37a5b4acf2995582509d06ef3da61d648f4fc5a156669ba57d0a270cc7276910a2e8f060c1d285bdbf889c2199eb698722c8c0908bf98973db65e604ffcf2fa5009ac5081e27c8e2bd0c7b29f23bbaf2a556e1db5e5d2772d0c85c2ce68920f836f50792a0884707c7798f03bc833904f90f8c1daa2730a0da0d0773b8d5c51996e95d29ddf0c391fe65442070da8c7fe76e4b094ffff28f9714973c498e2dbecbce385dcbc94d41ff1446392c926fb6e675ee1155eb6be70daa92a5c12467dbf131b76cd7103f04cd53276131bb82f63e205b17160437a897e8738877666edd2c4ac017bc21c7c526d34b6a99cf6a0065c9d506cb0be292069f6796c695a4d574d419bed4aaadbbd39166678f60a6d16dd2c36ae99d4cce1f7b2b5f99b6904d5d96ac82a229529f965c4fb18f5d7cd1917eb349b7b3d21e19f6abf7c4699b749001c26399dea67fa782dbfc0055b949c962c845fe9155cd5b6ae5b621f2b566d1337c327526155d19c4864cce0c880bea51f540c133905bb0739c2fcac39785ea62aa6e8d37d80ba8821673bfdfcaeb4c03fb82df0db98029df476c724bc08f834c9397374a8bff8d494a440b54fa1ecb72d6435b42e3d25dbfeeae673a5b658d52fdca6950b4606102116f817b1fae70f1d6b318bfcd7b023945d939be595b7de2ce105f3355bc3bd91fde9096e0ae84ef7e1e6dc291e37178057424965ffddabc161e37e7f6a9f12d8aa470cddc636bf640c4b3b1c1130c3090cc16abacc99105eba64d88b0c93905ae65ba5118a96ec6958a7dcbd2955e3d614029cfab9e2ed28d084194b17ac676817320e84cc355adcc448d6291301c56238b9e4a0435e15cd9e1dffcda9d56c33e7dac5f3164fc9eb00760f2b9f1bad232b4784a7f3a3c8a2e1b8d651e2bc0fffb103c44106b11d9f9fdabbf118562076671cb47ae3dcc0f0c75a4ce27b8f9811568c0dd63d849b564720fd8735e50275dda3d863c9e5c6d9ebbb8a8daae83a72b4a55b97e252c45cb18363a55c48fe165acb2e66b09d403eaf4f7e61e89327d0109f5b9ae793fc228816c803e2ce642a44b8e2f2f2da80dadac70b850ee07441144d00f7d228510c61f05484b0ae2f1a820fc621287641d5c024f3f200415b52c40115405422f8a459ccd7490892a2ce98796077bc43308e6a7ce14dbfd4e5353c4d73924d2b7d8b0dd3e91a2c49169b2ab379a8c35f48c8a0d7ee95be0dce25b6f536aef123a04da0c7a7081d259a96052801276ea6cca7723b5c8466fba393ef2f2c03bd24e4427f71af0dc7968654c21f47f24c52bf4c65d0ac5b698da680d3fb51e5e9e2741f257522c1f778523d394003dfdbfd2c5c930787f1b64116dd71f70da709cde80f5a500b6646aa23b301d34a5d0acffcf47fb16f5babc03d0cc81f3628578df04c1216de5e5a567b9c88e30a99ed91df08c9ffe19af9b7f44433b4969c2fa66f38d0e7d6fbbc2f09a303e8f59f44a77cc44b1fb03b582dd53c6ba65bbb9a1727488077c8c17fb832ca7bca884b21232c19f0fd7515ddd4db537175f8728dc145c64ea65764b9a7c11f2afba5a2c0903855997c38415bf9f7bbbec0248bf702d3c5314933869aff3a456b70ba6b3d7bfb4ab20bef03a775a33401157021f57f494c73a45669832a11337ccb3cd4684532e0a4b9d13b47f94d9707b180f3151092fc93915689b013c899b517b04ddb5d375b397c0e450e38b6272c8e2374047c8b693bfb775e729eaec2e6cbbd5b5f40ff072df7c8e56e78ca1c86bc82841de9d0233777e62253ef71e55266d73be0117704e43866aef643da24383c24626911da39d5d0225ffeccfa7df8e7658e3f238649b11ca57b6364b76782ade12b9735c84dd23acda0a10f23262d0d56cf9bb955fed27500845003e9779b7f1ae98d256a6f3d922e80795fc96f8fbbc82eb8f6d39598af6c3d601b08001962f7b8aa90ef13cdd65ce1d10418b189bd9e9fa1517805dbc82f3c5aae2f858f82fc59697125d5a2e2fb5bd800f2560871fdb5549d7a29263fc09612583e560f7411983187e79b6796125cf619da53429a36927d176812338605731a0ac05a26c3efce8e8c836601aa6905a4fb496cee757360a269ab196afb89a618a2e79d3c7d0f3887a0d8fa73dc23f25dd0b3e999d7f8126ff9fb97cc1f63d0c21cfc70d6c3763fdc88aa5e42c917177f19bb661fd306710f3e03ed1355e56630fab0adb9e37bcdb904e6e8453e6e42fa020584552c8269351b43e6594ba5552013f0e498bf6e36e3125e405fd4943fb28a418f491ce32a5d4a828e68a56732443a1d5a4005568e8e57d9768c77556cb3ba0a1c7f08dfc1e4b234baadeda518586f5fa8ccedfee89004bd0a4f8caeb6b1a3570b16bdbe9dfacb0faa4b0b6259333eb7c5e6d15f4ebdb0aef7d7a4a60141af580055754a1c4ebba562696f63f9e7f2563a9c81728a09127e0834281a400ae7dfc27a1eabb415a8a4c49084d57f317f4d0301e7ce84fbaa3e09b8e6334f20766f3c84bfc5b9e5b54ab7c435bc64f0be88af09129c13e7f0abeca4750a4d587e6962c411c6527715c30cfc562a8dd132d2f59d03e625598e5778c9844b5f4aaaf06d2fc21f39bc24ff4d01a77f7e030667a2dd7759825efebdca2dd0e4d557f2204395d1428c9d211820eac46703d7d384485f29c01fa730d28301c67e3d635223ed9577eb24571cf08d3c307add4250b8ab4661a90d9bb885eee58738addc66a5d61e3e1b055ab179a96b142c0206bd5da48d60702b9e7732cbaf79fdf97591aabb9376e412711c4871bf35edc6e1ef3184bd26ece64b6d61b4d1f62aacb3a3fb1bf77e634bfaaf4eb962ffe53b84702962131dcf040030aab509d1e4d26b4a29052b3fd9bed6a64bdfe7dfc7674aaa3d8d72874b82bf334ff999b4dc5aea23e81efd97dc63e0b27633a4b0c9b25d9cc44d3207473ab3d2bdefb671fa63a8e54b90f01fc0991b2348c658ea61be7ed95d17b3919fb8744ca6b0ea6e9998bd8ed77585849d2cfd0bb60191743210b9d87706305f4b290303835895ed943df3e5aaed1d2891f6f343aea55191d63c47d270e6511a34deba5515250323b1417ba4d6bfc2a4a7eac200e6de128209d22c8abe7cc640908e4317637e3354b99db72cc9a3eb80ce8e008f0432ba51a9a0ac0948a2264c429849759fff94087420702b93ad2041d4787262ecb91be1a5b4499adfbd7447ae8cadab0c8e8e4cb963861f181b6aa1ce488c06b8356d04a308ebd0b0224a4c3b7f2041d320e36f0cbd38f5c466ac1f39d1721bf10aa2ba2a8de799460776d38922795488682e1a7d6829da8536386220a7161bd3580e11c03d18e00169cced987bd266dc482cf65a68bcc2e1433938f2d339c662e85341205e0b155a53999a49efd2ba8f4e41d926369cad9bb4e3c9d8892f7ff5d683750a0e8a4835779a9a055d7df2bec6a3d56cbde43f872a146f9b14466ef6d4988b483f6dc4966d8dcf08aa63ab55121dfe3de996bd69022f9ad0e154d8ab30d984497e5a4133448316aa7c87a6f3670bf6e8d92093e06fb29b4a815090eaf118188a7e82b1de78711750fd1b92e7f746fa244822baf6d1e16e49d2e6d998c16fc4d5a69d187571f70a7ca2dfde0cedacd24c5482949ac99a241d682afcdf3ee919d5255b8715b982277e5d79d745e1c92aae40b8216412122ee12a522c8c1dc6c7283e4f4e3f5cf410265d4a0f53f9f50d58399bc526ea31936e4cdd44fb289292b8095fd2abbfa8164f26b25c104fa75d47ee5d878513ee78cc605e68d1a0a423e7ee48608f445dfada071df28800eef609c440636596bc49b85438b7c96afb1a306e2df5e925373cb3e9deb99609ec981fba523165078e6ea5a3f48e10deef0a3834a6ea77fe4e3831d3268953bfd836999f5054425aa6820569813798b0523de7e335431631c448eafafe6a267853476a513df8238daf86598d84aa595d0395ce43262a0246cb600d908c783dd03e79d0c933006c1787b4068fde9fc25f2b6fafa74a267df2f886af5bfaa054cc513ccdba5f9e779271ad50bff7728dde47b3db77385c7677a0c37c502f76f086ff2a18f26328fe6a249418020f8a02960c55a881c94f37f918d0f240539192393d1b9f33769440e66633bebc66d1fb03ed68666ee42b860f8e4e25be19f6ef18e3aca16fe37844adbf7eaa4c0f8242ee6776f156458f87016a18006dcf0517bb0392e9980e09727711ae6dbb82be9549d1d127e1cdf70ad95f9725b01ca6e66606bbe89a2b1509ddbcc620689519d1991146784295c5a29e16394ac80dea52b63ca698872e4be8e50cbfe2894fe9e31b8b9143ec49764ab3a445de630588843d2b8844baa30b763482e30bbe04931038753a1c88cad04c1d42b27c2d93e44a5aeb440ceac72ef4453affa047d9a8f0bf6e996ac29eacb12e5a7f4c0000a49f86ce873e6372cfe895c0c41fcedace5a8a57fb150df1231f64c3c3611b08f4e96576b22cc38fc0e25e118692467802926db194a43641952de6fee69e71e411804d9cee05e69c1b5e6af20288982ffe43349e4bf83494e1ad9e65fa778c8918a3b3b6df7c9055856518addc0609e111c09409428b6465c2c712a15ed1b820954ad6cc3ff1811bfdfe61aa44ea56f86a62c380e09b29bfa1ccc3f116e6a86cc64cae902f5c49325423d87e4656f2758b6c03340489fd9c83c8d23e8e9d6d20f807b371a49abd0f3a23ecde5e5a84c6ead290ffa1c87725aa9c8c4952ebec7ac3433733f11467779c41276f02beaaa8ca68cd419549e1cfbeea228fec652ea86c0daf85ace075dbcd7de24a53b9ad7f2f41e5c0656725986e7bcb01275996c701187369072de85583f4ad6fadcfb7071e5a15b38c06996fa29f864fab99e198097f9051c8e44983511e982905016b70ee5f2ef511a26787e9e06ebde083d062f65a2470e44ec0402282923115a4c1702a2faf93fb311425873881ccb0f38782c11e39eac0951b30948575aef0ef28de9dacb2c8721a219a3a774ae3c38f3cfad85762a7dee26e14783c9ff8a40d64663234dd68a79b03b4a919cb51a08513d6b14b084d979bdd7ad0dc3965ea05ffb880f346af960e3bbc13455a8a1e33726d72d2d6fbebef31df07634ab5c12180a31ae4ca3b74fb31ba923affdf033a0053ca871c90216f68d409dd9db3ff1e3c1b79e50f1d07d3748317ce74c7a9050c2280ea6f4f63ade698723d090c0dcab5cdd491e96bd32f5d527af5aa5a28a7285f6dcbb38753b980b342be3a223033f97289167e45b73fd28b1c078d4c1405975f8040e7d1bb643f82bf46e2b8454b9490eeff338d99b46dde58da5dd37c3baa1cfbbfe588d8e90ec90813c9358d1c03c3c8bac8aec44423d13b2ef6657084d8834eb30299ba38e7ee84c3e944a3a59f742112f4624f9e8dbbb1f4ed3373006d452e0ebfccfa5965ea04a5c8ae8d0e5eed5aa8d80917daf8262cc1f08e219490d948abefb827a08bf3ce9cb0f08abda92b8a4c03aa13297a1bdfa60057a2d2881346ce650b9401a352931221005940ccd5e6fd408d692e171e21576ea8a33d6cb147bbb96501a35a5c30e98f3bd2fe84e01b33f72523db961f5abeefe3a39c626aa4b7de48d28c5eaa7a012ada1ad64dc1c2d5adae8540176e8276df7b3b4bfaefd7bf6e7c3a91e8ce4925d5f68b0e85a811a41711304435caeddeaacbbff6e94b536dce7b23b1d768856fb4c47a2995d5e44e3f107e7b92b998045aec7174d6b2d1dc959630518c90bdfac4afb5f7ae34c7661d441fe2b4d776d5b9b8a04a6154508367ebcd93a35220d5d58606c95a5abe101e190b544c0b8d1d5b25437e832509f59b97ab1bd3c5357c61a5ed38ab288302d8e4f8f9aa7329b22617b4a8cf2b8b3f4c49412e5b1dd8f808eb1b1412216550fc1da95bbbf94196831697f84dfa09c78f0db6049afbde3217facab0128e511d99eef6e055e69edb810448c61c028e70e5de9d692c4c6de357039c9048f43a347b6203177d5607c997ab36ff9303d9dfb78fcd73463904cddce9f87871ee0ea6f4bcc85dbbd7970609711e47cb9b4159ad97129b45adb452b2f5ec0a304f0a98f6c307e9dadaeba467a9e940b271d7bd491b6058b48798df09c556a0722d3c8afaad6f41d69ebee560b944888fc951172415e82c9a3ab75f8e146970e043f98c1b986d06e4372c2c27d04ca8356401a361677d0576feb2388bf909a88c6a88e6fe71340bf966996206b6cabccd6958822bda5c69af15b88d4fce4627e8b379961be7dbda1907e03bbb560c632f8df58cf0ccac693ff873eb3c1bb983ec61050ba3a66ec5b202748cc9e1b63a41c9c8de4becde31de7c77926bdf16c12ac7c8772fc96b800e53092f6f240a73f9c1e389d91b49ea3828c8add494cfda9bbac732451be6346282fea4e45ed29dd364bd174628b030f129a68f08b437e50e84cefafb67a5ed7378d95172a5134d517d9862e96de3f5abc02a563cf0d12562895908b1b7f6f292acca15d7ca756f4f4b93df1ca4d36c7f775856c819334e6841123ff9b3b4bceca88888c5b4bb7c6b16a3822baead2aa60b9fa73a2cd398418234981e2395246e272bd652024f6a20491da4678d588d5d731153800b42721f9da7efca38330e2c3d47ce9f08d7afc3e4d1c0349341a7721836ed9ac02bd3f28142a07f72c9dd4893f21ab9c4e4db1241fd67f996dce92377389979b983d8aec5c0ddd912d9b71265cf9cc3f3ab9516713b1801a4d4336315ff507851cf47b1c27bc972cad206bf1b32bf471efebbb817f913dd94071939efd1ac9e25a033c968ada99930967c9f4b141bd9c1de5d6c9a98918d890eaa92cda05b12365cff6f15d09c6427e98cd80c97c43b1081995ce344e85972a9e3382bdd74b5199489a14dd2a419f4406fdd76faa25ce865086bd901cdf0b9588f567d39c8527ab6731e007cc39ab9429e7cd798fe25167349cca206a73937172e3e3b7a5f0a7cabf3788664569389db388d4e0c36f7e39aa86e4e771f22fee9a4b95bda81963d48ecbf81f5fe1393057b092f021ea8b3ef32bca4604954ffbf9295761779184d2c93ab172129994f5e2bb33762075f5cffbf01b272fab44e56a544f33f150f47084f8c189e8358daa1f257d572857c6aaebceb245cc58b04573afecb44d9552ed0f544beef452c986f5ad11610e8bb2d9e89731c509fce53b21ae1b88863c74a172d11330cffd56d63b0317f509ea748eabc0bbcbdbf620176afe4a7fe2b45e6d26ff4e83c20a862ea3e9db497310a515c5ad6d576b8ff3c5407fd8955952e50b62d14dd305a9a08d25c7799242c86840f6ae7fd75579b83d1d5ebf69900d82049567c203bbe0ac343f6e653c5c2e1f2172aa08dee7def3cee3033e32d921e2683f8087dc23b1a4a405c5e25d5c3decf97102421dde1397039fe52c647b6bd4197e21ca46511bf3b55065655d189619801db1f177dfaa4982abc91079ee7ba8fb6c311b784339d8c557ca2e811a826c84b9ca1b5a8895913176c9dc8d8cfe00b5e90414dd05c3ba340629361dfb6e5a4141783169959b8fe1b10c64c1e104f0d982301d89c7ec2c03b204cf59a96e37075a8ed79c4c4c85a2ebc1d797b21f001d15f3bf6052f34636beeb321f0b86202d8e3048cfceabced9e854bb4b440afaff33ebe7a655337c6e8c64d95ceb68763c7bafc3f59e828e211f5bae80c8aa08512b4f7416927a0812aede50729d79244271e2106b538dcebab00d22f071f6eb44f0746a3774b73daec0f02185598f8482b277becf988f4ec7fe18195fe674d81f5af4b10865a9259279caaccba78e905e84aac6fd8379399e94486b5f9183e27c1f82114f858eb4bcaf7706d3afcb42f0ef10718f47f3c4f5076fe50a132a51aa083ee651fd559f2f95ad82bf2efaa077aa7cabe6059d00029178725f14ff55724db2f06da19d578aecec536c9d1ed4ff53fdf1fdf098d804ba85074e311ec44359fa3f59486bde7657da64d7a5b1bd69aa8d67e7e63f19bc4315ceace1af7cdded9eb67a84efea859fbc2ee3f8eb2f5912b5ece60dea8d3c83def2537b31206fbd6162483179463a2f2b50a219b81b4ca6bb3c4437871f9b26877699034e2c5af788b59bd3790ee41e8f64fbd2360570316b19eb3aa92120bbd6ceff85f791db075369a02a5f7b574f6944678f8aa29d51e0fb8ab7ce359857b4bc34e0979ed99edbc9bfcc8249ee94733d207639c215b868f3399a05253df8d90102bf791e24468799e4669ebe47b02a32c07e6230ac080770b265c884e251d700e890878c2fcef63869c1e6efeea9330ddc545dfe3c5e15b2b01710467950dc1b51c90a69a8996d4e6ca2fd6b3b161efd08fe0402cba94dd21e8699ee5cb5a11ccafa57f4255bb1162ff2fbe8218e4350fbbae7189d00219b2f2dbf63f57e2db44ca7eaaeaacfc1a2f0675c4e3c8460ac4416ac3b31b3663e057eb676efc94a6fbabf3031bc019823f88598d29c24d1dd0a4d8c66de0401788dc290a030af02e579761d5669ad628d2f42106ec7df34947a8b9ec9c1559532941fd0929b09bee2064349474a0eae05cc75be1423b9afe74bb9d91a122be1c4611b45025ecccc3481fa12a4cc955c0c1c14e76309cbc397a7e90da057d4de6307d2a267d713d34021c7c91f8eee99382aafe9c7db58d5cfe1b4d0dc560a5a71a71c96eb94ec052bbf00762177273196dc646b2a3cf3bad56210c380122fd10ab0cde80fe86e39e5b4dcd8e8ecb888f7cdfb74b932d0a088679f01d78c8221ec31857ef842d5622e879940900c8cf0861d787b1dd2649509f7e0c5e8baa87e8b04be28aa41f620ad643bc40a5e1cf08399a8f5b2f927be16c04a7798db2acfc0824fff85512b0b06bc540c9e3211b4080b2e6cc9741172f47c89151ad4705c9b6e68500431e7bfe7d33d03bb55f44542fe47feefbb8d777c010094fa3a6f709bf9d3d4ce55190183b9010af811e092fb3451d4e455c26ee9c8f5d86455b642a9a952b5ca16bd3c7b7f5561505453497808ec1a70229a350ded7e0f06f2c8ae5d24fd54c547a4b5ef1d5298ac96a4031ddfdc16477728f687a7f23537eefffd38b85655f2691eee21e96af17d1f371cd39573eea07bb94f7a73214d1fd8a7a04902b1e03aa263ea8a65069da678c48550ef93cc3136d686eb45f90813c844154a89d28a30443a3d32f19307885a1472e25faf59ae2fbfa8eba0e567f942686041a7badb8e0d8ecf86fe4e63dc70e0968ed4f332c0b4c40b533bce308e47baab98a72ff427bd9db213315346dfd9e43f6127e312ca34a84329d321ce99a4ba28faf53677ea8278de2e4638ab3014bff55a67eb47691046fc19f1a86493433cbb92a87c76f74cfb8e3c991c197e1f3b2097956d9654dc72193bd10c3325641e7b82ad40be8273878cacfb4129ac275d1e11ab77954cfebcf7d92e2b875f579e6275bbb8fbdcdfc04004ab16c4c9871c6c78ab17a6fb95628980865386c4786f3e1125a949e3a823114587103013eab115d0707b29b21bcb7fc247807b6ea4cd601bcc744d1b63b4cc08cf00e3b6f4a59f6c0b81410c8cd41db444cf01c300b1ea758ad8152f1ed7f2ccfc4e3c3ae78ec8c451fbbb3125bf21544b6ca906734354a5acb8b7dfb08bbadb855b5701791a398771b7023c6b31a4be7f92dc113e772a7eb63da5a5549d8d2185c8741b523fef3cb654ebc824719968d8cedf8bd6953734dc55a47df97326652be18decdcba8a39d313a1fb830faf536a4e90aa86a3e6cd0f1854126f4e78bfafce7fc5c1dcfda898b0e29b7ba0836de40007f6ccfadbb506819f156b3d5eeeae8f221e51236986038a6c6322f1953d4526ede08cf3f9be5a94ae9641895a1c865aad4d3266a475b36c7907a67208c4f0145944f73d5e0d66e70eae20f5d21cd70f270aa4f6b78703bd985ca39c0d98e10d1a7ae3981416e4835ee193b525f3320f0546eab521c0d9f5a8b21681cb26f239e1b0d2eaa97a22d71b7fc8f9aff55a2abcfbdfb0fef1d9a366d0c72fba9706982073b72c07b57e013d18efe13b9d40f4f10247b2a2bbab7b521d7183aa5feacad5e240a7b370036b292c5158400eea66efa0f5ad81648af1daeaa5d54dcabc947573308e915ddfbeee4b65e5f5b789511cf0bf6e82ae70e9c1b71868123ba93d9504dfcddb7079647523a2f3341169fbd65c3a1fe7244c65f823aaa99269a5a36cd7c0a2d6f0a0b2fc618354522c5486febd04cbaaa40c02b258b577b8d6a4283ca462b00210014409f1fbad2a915c957363e7c58a949d3a0d2a84f46c57561cda2e792b06ca894589c29890b7436f9e8a08dfde71368bb251f5e48575e7a9952bbfa2bfc3d2ccfd12a2b03b7d5db888b622f01c0a158b1c4eec1f6c3820a94d9e32b97b0063892a09aafccd80c1857e349288e4b18cf03e835d3351d525e42828f51195bc776d278c431cce4eb6a56cb988a14a3a343f165ad42ba7ed74e5f982522ca3cd68d8751fd58e28a3b75f3c199bab471eed4aa849200c90596b3569329fccd489b70e59e674c6efdd59a7dc58b5f07946b2c9ac63f1c2f5d68f9d834e67f37001f28e57dfa6d36b3fd2a955b0859bef232004b11af40edff790bc9ef0200d8982e7fdee2d6de503a71b027c659a37a8c00a23f0484b87332d4ed3d17a16aaad484879f2186cfab29330fd753033433853f41e38e16e5a181ad597078d484b52890f4929e62e355f9f8f1c23771b0b9965daca7f132875ea41a05c4bfe76e442fe5e0e938c461065bc8be3c39f4b520f6d268c926fd6471343cfacfeec8acb4f4bdcd10da7b35a8f9b3f731951cc2e032e0783ae14e618e6772c872d290b02f7dbd7ff057da9e5006487b569bed8929b7070f927526f18710b07f50b8e1a5d3a6d043f2072924541d5b02aa2fcccfa8b7b63c322291516c622eb4024851fe82c236ab543d664b6162a2bf76dd18f5a57103ccac2bb7c3a330d82b1893d4713e7e48af3dd980d8634a0dcdcc295563143733e1684c87cd7b924a32050e46b42ce095bc193fb37d4cb5747b0ffd7bbe89f5bf47891ade818fe34a6a9526db806a839a17f4edbf0c4fdbe8d3aecd279077dc2ed80590b8c7a2044e0f4bb3f5757d6a2f990dd84b530751de8844c2cb185649d1f348d4026255a68eddf1668f136af7a4a74f0f39e6f66c15cfa873ca2df14170e44080f67d08abdaa36201f3066a45ca32684446b47e731b48b5de595851179dc28d517cb1234edf07627ef04211ddb9c7a264143096fcde989b26d6201e8b78e51a45bd0ed9db8506bf1c5d5bf755ec62d3ed5c866cbc2a864b5792ad61fccd968659cc6b0fc338fb29f761b7293c484aa507a779108a4b31fddf370662af528f700db659e79fb184e3af145e9721e01822442f52c27a3b96751354f0b287132266d2241f0dd5a3e70b5b1e92be9f94d4de3b43b12540de160e40596f8250e4ee8377b376cc1cc7e6108ce5e13c3a4cc3879be171bffb08b3342cb47a888060ff8e4a23cfc1771b70bf8a736417c387dfac1b52a97f516ffdf0b7461df33347874bc2a2839a90284270b57f35c1100eed455f6ff71f9e0b241f7550abebf9d58f7a1a969a7317a1e8eac9ec8b79bbf3104fc8f15d87fb797cf7b66957b202e16530c5be7ad1e74ff21015d3b298a2f11ce9409e755b6b99d21a9fe38a6eefe49b9d9c4ab1a0c3a94bcb3bd55bef9d74d8815f9502495bba19ad759d3715dc7a91536752234724a12c5b977d8920279eb0304f6b10388bc1f4a8cbf8cfdead581160083c546adf933506962ab2e651db2cb374e686bd777807181de2972d2c6d0214e219ca2967ee45ea52997a17ec42cf16109100aff8b057ec74e9f0e980159c36e021b46ac53738b727421c8fccc4a5fd12707d4d455c835f73bb2bfd631fb532119bf86d6ad901a6357e0c489d97e47549509eedb986c5b6f48abd4f78f42f202356e34d8932933ac80eec1be218e88cbb17c9090e8ba9302f0e5d21f49054088e4a75f3269f09d458345cc5ea3c37ade00150e8057c5b4ea93e119fe15c372b167d6bc815a4a7817465eb5972eeff0e5f7d00bdf44de1a97219feb228e1531680cb20c7fa7b333f604ce611f768e11375a7cf4fcaaec300e51548c450c3854560ce24f096c1dd40321369729e3345252ab00da295fecebeefa9d8144ac77c69de6f51f5e84dd07039c78dacfc174265aeb8e3158332c9205b8a476dc4cca2b25693c1afb3fcfa310d62ea928cfbe7f4be66283f65e38eed02ae794ceddb776f366c87ecf20d6ef47519e1a2438ccf3aead5cbfc57b7e279c04afbedfe343181f3e3bc07ebae23fb2c6a6aadf59300f8f4d0fba39d4d43955901762f76023fd9c07a7d6b503056fc0f97640fcc6e230b976090352e32d71fb9b297051dbba2708d78b970c8013dfaf2b05c56dc61a6c427c0aa1575092934b6c53814ab5e43bda05bd8f8a7da5e38bf6ac7ba61c5cdcd9207cb075ce90374e9216c3f029ba1fe47d6eeea9aeb5bb71602ab014fb37e4909101c5ab5f9511fbb6115fd4a048d61fbf18b6ab66a2182ae4430173c4eed1e2ef0407c94f9fab65b387c59e1bd17a4bca2adb4507b9fd28ea6bee9b74eb2fb6ca8640067657717a8f198389a00090ad54e6903cd295625126e7316d9cbb0b89a663f188a1b68ff7c6cb42ecbb3ede3382285b94599a9f611c616232da14fabff2e67715ae5050fc1a15cdc423c7d12b9463ec68ec3e0484ec047da10fa183c1dae43340b3411f4fdde0f789d303f6b483d46780c0ddf3e5c3283ba7a9ba4dc9ea47ef32d87c5f95ea6b64dc57ac509e7460f97d34270e61fcbd6d2e6a7b797c7660ef2a12df137acf8b88a75915c688be3618fda6162621d21b102a0bd67d7436ac390289b2a0f11ce0fdaad25d8b7c48ecd93a8e5c6c87f1133fba5776c56a952fa9dfbec92545091d3f680f118cba24c366f6dd060c37d1a47dbf15d13e8faa350c43e006102ad68d54f85cdbbf5ff0b45c0efbaf8b27c4c05c5b8324312cd0a13a4488bc31e23938686d827afe974380f0bbe1e0717c82f06ee72401eac5e1ec41c49cb478ed561c419401f8e30e694f29b370de0d63dc7183344b77ab72c84d4a0687e89715f4e0d5112672f40bda29e9b7e89c93dba469b7d09d88d658edbc039696cd27e79d2d748b8007adb45d7e89e932aab3186e3b34cbfd33e140d2bf665095ef50374f56c7607d82eea7ddbc869f84ff39eb5f3d55f86ea92c80066e098aacb4b0e23fe045fd976c371686c72ace665b44b4b787d48f9ce8da668cb3dda63f4058b21a64eabf7cde74fe078dcb9e0bc717a955a9b423b0d87e5e70f71c03b8a7ed035b58cca1d967261287f43284d942a80957f8e45e8478b385cabda0887f3a50e3082c416ca46b70394b6f0fba06082ef9468600a2a30bff38d4fde749332b3c9ab122da9856028c77f67bca67c07d7dece7ece679dab192fed999e79c7314372d357c272308759bc5c402d8d9d0a9e819af20dd38bb012725b7d8ada05e2a131d01005af7048a9d56b219b43919a5c8178bc3a594e7f31bd1f929c027964de052685525bc9c3d02fecaee6ef5d4bdcbfab0a9341c43596504a6d87cd38f1936b194081272a8ef4d6ebdeb8ce3d61e5a494440ede0dedc5f30a7c99f94583fbd34ea744894ff751b488c4e709ea31cc33ff06a57f03ed5b1b6c35b06b563fc50ffd03e6988c3ef53d7259989763d7c06bbf5b72ef64ef6e70bc5e4a1f4cb7f59a89b22e0cf33647719a24dd78635a1e3183d4cdb994fbc9841827db245ad69c56ba8b85bb1f6ff35b92e9be74098bae56476dbfcff77f06811a34ad3a3320305b375aff452792baa291678e4cac87883b88ddaab21c6e39c6528a05c103c265e17c3f731f7f24cddbbc131945899bc940afd10a9f3eeb2d4ba5ce688d1d502472e570d358101f2507411c5b826d35f65956b531dd5635bdfab3b9ca470905923611882985edb3be64ff940c5ce7917c9eaaf66d14ccca7d6963becf4ff6c19fcbfee0e154249f800822caabf9934a616b2b1dadff9e95fc397a8e76ba8fdd13c710b5503756d343837b13933a956dd2052802ecc7257aa564d897a45a9e3139d0a7b6a6c8133dad5c34a74c8207e8f4ade28b2c9912c55848c38ea4f78f16bd46be33faa86b874876995b87c86c3f3e6263fdbc4d77cf8c767f2ee504fed1ed973d02dd85a4d7dcefef5e9df4301c8492944e0c5cf6388d0f43082ae3b1744125d7bbc40113183574519f4bf300d43d98e3449ff1811e37fec2504821d72220f2bfb13be1f0946baa1bbd4bb90d0b24114b2894dac561fdb3a7a108778fa52288470e737aaae347b64d360ada73808872a530c3e7bb420b156d894011dde5aafecb883ca511c937515c52d85a378c9e2e612fdd9b8225b3fdffd81711b94274a7fc54679a5125529c8c3ecd36769da7d85ba271c8ddd2fb65fa3d3b2c40385b4a865323e925f26a5ec772b12d564683abf7d75d4c7f2e2b3c975a1e9458b5fbad0ea1d4db7e1eb5d78280db11ea364080c2799c297440c00f5b3855d7f64472ae839d5bb93abac1629853d2ea8d2404ca9bacd446cbc3544fff915b9351069b26cde394a327bc3b6496555c5820780a4df7d92545516c9d8f9009f9e093c3bdf3ebc1342295e20d029a30d10b0393060c28c6630ffac119c87daf378ceeec85f28c374102bd55f441fedbf0788b19d06631cf51c3f5acbb84939016eec92d1da978184819ecbcd682304c5b955da28f8b55c2d4c7d53022c0979ad6828d2c69cc4e80821a67de50ad5d037741e55ded0960828f303a150266ccfd137ddcdf038ea7c40e706275d337801f5e170fc949af9861866ee91ea895bb363328031ccb311f2aa9b1e1a69290a899d9528172d8071069729fbb0b6618c216d5c72eefa92bf8992f557a4f29735937e059204e1bd5350d53a30b0154abf1f18ed19b52c08bc7aae39a80bd72aa52ed748441bc7ec44d9b56feac73a36c49ba651a34d0cb89f714230decdd74659bd5dd4f76ab99dca229717e3c4cc7798ff43cbf9d6897542c070e3306dbfcf371252c0a19bbc1eca7d90c0dcd2aa50a2340a1b0c6a6bb9fb146798cdf4f7fd37303b59dab7b662bf53f827aee750c64c3a3bf6c038e5279b20c579b785fec67a41d7a36c597137b5d41474d37e2cbfb042d86aad446ce4604b89bf781482119dccf46b2d7bd392caf6be795fdc7a88e79f71598e1bbaa796e229fa45514a02665d0c16389a976b09fbec3a09a5998a25adbb41ecb5c82fd552e06ebe5e7102b3f3d311b19e23de86e2bf40fdce6fe8d32ad04e76616a4244810d6941e919a3fd6b153276c3be42790deaeae59e9040f47e9d166cdd7f7b5876d52726fa8a41ba8b216d16d0a84a9cf5178612fad6afcb047cf0f53a658c3dc6f8fed41277061a97fac9d6f0edd0d58ec14b447c3bb6cd22e6ec464f67ea7a881fb34925e9bf39ee5a8dfa42a79b8a8493638c43a7028ac57803674a6bfeff2b3eb2c81dedf9589dded55a9bbe5549c248c936ebc9ae5787ca2b17a6a27c90000b68639278091c9af7a47c5b778334b682563d0da01d43ad13adb9d88376815a53df294976de8d0c9455d0081aa17cde1e592308d65325d3ea77d995d3f47596b6c453bcbffcdf3e5da9b9c29895e60edf9040017c7480f0c158338a4f2a0a748f9aff18a1e08b3b99efd12cf66cd416b170a5faa0b02fc4819595607d9dc3824a33e791615081d3770f6fcf450c3556937db892834df0d282140a2c60ef5ae41b6906fac7131503a7bc2684f68c68d69ff580810b90af637980d00c096f7ead136aff80648dc62c66a32ddbff39da611dde8ac4d1761bd5d0df76f985652d405092f94f5548dbbe4edb9ec1a6235a0b627594f3f0c319dcddda0a5c33391e57e6ef4c488d899fbbcc4f7b6359f83d5dbc687f0db12472b1e36ff38d899f17442dee1a7d9fcaca51466822856265d52766624fa4274ddc7bcf1eccb492aeb11ab89d4bd03ab209e2b1ffc84c8ddb28200a3e7d7d466364b554cb39b23fe0671f60a5475e5528592c0adf0321e30e9cbfc7b311ad2740cbd25f0da45a0f9390cd27cea63d148c8d6e8acb44d35b4e65dbbebfb06e78d430163fd2adda0a346fb0397b5af3241464ee10f79bf309228f314fc8e3651b6f32983227565463dd52c5e6923f154262957e3cbcdbe4805052f1c53d0337b0c622af64e82b2bf84b22985f5486ba729e7f37e9403b86bee0601e174ae92c5e40976a3a9642ca0439681860e76b933381bd7cd4ccea67e20fc663a9c2177d748965030f7f69ab3b3f4c271bb63d41dbd3153a486c76f191bee0ef70d06637511a8bb73729c601657bd3ed1a081dc5ea188b14df61d0095470114bc06bc5fc47979cdd759fcee90678fd5f8c00f0fe625e082fcced115be25054c235c1d9279c21398328c79d996ead7efb60a9ed34e0aa4a228283ef629c85401c4f0e335c6b818433862901c0f82dc064f2f7309fe61fdf5ad7917ef61514018604b46d8cf498239a994556282e6e2c039f5a9bdffc4533dd9f2821add7b2c78cd21fee215beeac70976c8d6b8988553c7fd7f7d76d4ef00aeca3cce2f61a6d5a42f02235ab7320046d5ee93612290e7a8826f6a913f43e0dabd40e7206f4c2ad9827b973658971b75c55451c19dcde94b96fb4508148480c430cf6146b18adcb235d8e2dcbfb0d051a409151a9bf65e6479cf36054d0ca8754a6979cfce481e4e530d6a691c097284a7fd672edfa3dd8cc00170b41bd2371471b19cfa14c459006187774fe9badf272d8b6353c5b7daaa7efc66536297671dbebb10d22bdcc887c86ada7c5e789afb43e50a78b77e8a83ea9a6ff13718a242de60c481f6ca6af383b503dad7a0d79c005ff3a2afc469959bd62a1be9fd71b4bf8651f87c06f250c1eb0d93fab87a989ee6e1dca51f1fe7e9fbd1ad3383883e04b5c28be0ddf506d1af592666c72a5d1c87a1f1ed20d6b8bedbaa3d2000e32c6e30c48db7efa90f1c4cbb7cd49e1967fbc9a314f3a433e488b3982f8a91739e0f8f709391baf238c60a2ca74f49ce1ba4c042b0f0d7c44e05029b83416ad94130b5ce3814e8ba23bec1812ddaede54e1c0d39966b790da1c2c4207af681daf610d794db476e4aca64eadbae43ff4863ea6b289e569ee7ca167e706f8a54091a441d65ff53ac5c1f022e5936889bc42a11239eafcd1c438c1b4e7f8d1f982ecc3294e34139b7ec6af5de445f1252d0b7f88b09ff413cd76750c8be62bab5027257a090ea9e4616b04e881396c6cc1689eb19296905512234ebf1869564c74b9a0f0c9def43fbdd271b50c0552dde01331c4b63f1e73e1fe0b870f5e25b88b05a48b93d7efee2aeb1d57c8d2fce3d9a2e37d874c017de942178f3cc83d1d256f84ee040d413fb494ea3c7deb012464b5cdee0e808b3287d6aa6a6cb2f7841d1c3d69fb7d7e62862aabb0efe3bced56a2ea6ef70fb57695b35f00e666173d5868e798de80470306e9226ed3382f0bb62eeb3fea77fc7b3316c87f1c75cd2560caf2927f837f7e852a7156ca3244f12637cda5e900e1997021b5cc22115f085a8e7a60840d014b9d3f6e30d4aaf626b1d98e69df641a83b145cbe4a2d18217d6ba347f215028eddf3ce542442545eb6f8484906e5d5af655a09d4e3bd84a623989e209bb937da48a3d725f8b51900805c34f096b684536ca6afc298ae2bb1b2359984ac2c7c4b715571e98668e4a4f4b67d631cbe45299ef8573cc31b6952d386d37a46add16ad284ae262adca41346bea607671e89245844002659e1ccca2b2984ec2201ae1bc40d24f155439e7364000c4bc8d25029693660ed07c1d2ce12077bec3133e451a01f0d849ecf7ab986dbae5d4850736a0da21fd87c1481b57b1155fe8f3777120a3fbc1916ff1be17f88fc6e751eaab0001fe4b7a5cc13afa14810cda7d8d7215b328b75f7a9a6efcc53fc29303916d57b79e22b95f43d463ab44f5c7fcb084b77260eae485e52fe9574c781e68a979485ba76d74c50a7cb0b666ba505193812bf020a9c16a1f7a5c4386158634f23b0286fe98a4efaeccb16d622310045aae83ab1f571e8faf60bf33337e21d6110dba7eec243125656f6225b4230b476546ddc268c3dce1532010afe7046a52c646ccce817684e223ec719267b5dda91c95d987de6ed03f6ba36616b03270da67656ab7d27f8d3a45efdc06878f45c1413557c9652a97322db8fe8ca0cedfb90360cca9073da7afe146926ed86dcd50c0bc15c38ed5b8a147e74ebb555318e1b6bc8d8eb2299c82b0d6eafb4b8c690637f82f2805e212dde35a1bf77f226e63c75461bfa33e9f135ebedfc1355214bdb327a60f0db821e36b920232e8b02e90b3c86f7502910cdd71713107248407cd092b6b51cb8275a2b295fbce099534d9cedfdc59f7b6f1e360a47728f1cc6a24e58fff6e50974581bc6028489dab362b6f653ad859c6346fb3f21c5e825531de19b657e36869c72519b405ff7b9a56174a951b8f97abe1a924e0134dc5633cf6b76f4e741c17106660b167f1ade493085d42e4bf987856e464a7482b11bf8da50b209abbcce9a37b368990e62e7b116523831d893713ddef98febd899154862f0a98c5d4e25ff93ac5e5d58c61a903b6ef92da25a3e112a39e7ba389c219987abc83cd34c2f06071f174bdc074bce7cebe37c2f1d1f69bdcc07fc975ecedca218e94982ad3dd5eb199e84c5d5c5bed3371ed44525d52e794e6db5343d5654c2059529877368da02d19f0652f7256f4b70fdfb77500a983c62d3139a452656a4c3d28f7010e9fa9cbbe00dfa5cd06229b524003c196802809b823419058fe0fa7ada2dd577568a526ee035d459f61aa73767b9d1618b8ba90e56d7d9bb51cb898fcc3bec838a1508a4a21a50c21a6abcebc823b1f21b8d5fd065d5184f5b68d67c92e03728a5251ee36b2ef78b52b428088e89de8a9a50be520d392d152ff558b5e177ac77ee0e92cf6343f75d619afe8dc38b0984d821ad253b2f378439d5893b5340031d03bba3bea14459d3c75ec681e1685328fed945f8ac75af5ebe7e9533408eaafaa11ac8abdf2355c929173d1bf12f4e5409a796e1e8b01e75618f7d7efee06dba6296a2a3ecd14bdda7d07bcbedc5191e92eeed7b6028d340a39644e47c11fa4fe7ecb657842ee0151c5f5f56921b92817b9300119961a937d3d9bbd2869784d1b7a4e83a6e1db6d71e1df0a6256c72bd995541fc93e2651ba84031be93e21bfee76e5ea2ae8e73d43fd89808366eca6931ce8d4575b8a5fd9ada2b541e6701c6721e44d03140096eefe1453b0f1dbc58e87c1ef2862a92f5c79e9b33152d43cfe7af90357a00e6c292bd8bcc2a98a98ea1cb2505131ed4d9d4e967037f218ef61965fc8095a9791f2bd7dbb77a74cb98ddbcf731ff5593046cf41ebd63c889a53c695c06fb8f41e8e3f514cfe2a941fef741c544532a466e74164f17849f77a8837749aa9f2a2df49d3ae5c46333558dc15f60340d5bdf1dc514a4c1d2ee4955686c273acb098eb8a1bb34b652de4106f3da24f5e13557a794050e67af86ba51daf50b896a2f8a50b06e8e110e9b77bb6489f38607410c2c5aa13824521e1992a56288c7428647577f435ec2f6b9ffb56fc131fe320714a97c619b0af5243868952b88c7e8758f69e1ee482732cc28d93ad3e591e51acefda75f7c514ad1edff3e5caa9b170d91a8d350810271df7589dcbca15729e5b4e93b50f524beee237a98c6b5bb1f1eec6ec2640bd812638e3dca5a8739c0f2e9f885e88f9281656b78991ca9b1d9fc1b78eb6f07a68544ce9b6ed2b9ff19367107edd37db92ac07586dceb8ad3bc5ea8f00b8d6f9f5f3bfedc2280d80f6d8884bdba87b8bc6242a72b4b4f91f6aee9ba469671faf1fd270c1eb276da65251a4f82240ff2400d6a1687bab67698fa11e2f62085f368d679f34dbacba793f015f625da9f528b2336088b57a20271a02649faeececc7ddbcb91f6a6fec34acb20b880e35fdd7ea89a3cec6d4d4efde2ec73b18477317553593cc64ed4e5b06e3194e3525745b692deead759b4d7124f1203d249caeeb8e66f2fa2bc162458232339d4f9d2fdca184008afd97957b97a60454512e9be5dea37025d6d7fe728a834302192099eb1d106f991070c3b520d63dc0662b7dc92fc4a84cb905f28e5d133bf71129438a843acf2450c104bb67e77d62cad597962a5b6d94cc8705d655e7f85f2e51cb23f0556d65ba6a3c088de718c943fab577e3e7425069996f7b78d9bc53785f4746c8c8d85f43e60c5ca8cae7d641d2698bfd7b6415aa497f1cd968d4810f245008620dc9d026d333cf298a73f445b3f19ffeed9e65b2567fe1a6c74cc31ffeae93abf7dd82847c2f9fc60919a0d65f37e8a47359c2a3c8a976859cef36a4cfc97982c5980554f00064815fe56e327efcaca0496ed387334d76995a82eae95de1d74265b741f14bf90ca52d4953999658cef720b02e985b7f49927ec6fc1bc973dd3e8dbbcf22d28db86539dbc4c0a2034761a59ba4b13393894d4cc37f67e744fbaaccfe0c49c9907d94cbe271b58c5cf1fe686180536ec92af9314f014e86458f8a0980110f4ac4e2fc1b7d36a6efb44ecceb4cc42223cc52880311f0eb99a98e16a4308242605d1e9b99b98ff83d4642e9eba55daf132387100a2c5fcb09d3c49d887e7b15371c7e157ec6eff54900ea57baa8805fbeaa954f16b4b7e85c764ed68b560dd3e9ff1caf1a9c63bfe5efc55d182cae3f4fb32ecaab58b9a1128b3eeec9c9d2dec0af6a6b73ed6a5c96278952b2ae6eefb2d60be53d3e5a1bfbced94b4e6d17d48e18c98790258e42ca5266b1dc9560bac764ecc893002d0ab7e8a91f2458c67e57b5afe4c9be8e39664d0987709210cd446a2d47a191c639fb6496e023cb92cc75e245895c6cf958feee4a6b9c4b4b2d3edf45d0735be8e82177b8a3462527f67a454e94d0e07178c967c1a290a9995fbd1886117d9a3f890b2899337b7ed59365157bc39a5bff3db8dc15c49cbeb3e975373e5b09c86cbc79d89d2b75d77d957da644162c2594e1c7f249e779a76d8baf65d256da59ee48b4e6a285b72de2e122a9341fce3584a5e14a1d749d0e4c5f3c2520171d0fbbef9e2ff94804e5abb76eb9d3300c8fd25762cfa7a0997f08b5312c74b890150d2198aad025148453328f15ac89460d455ac5488392ccffea99030fbe3dd7e15400b16ab1cefd30290d10a6a16dd6954eef727566496191436a127fa1de211cafd719e758b0f9e75ca671790791ed1e62102f95ec615c101d3642ebd3211ae59ebcf4118aa753195aefcffa240b4bca24ca8c94c6940d03a93e2331cd9fc1a294e5ff986e30cb6748363feaac7ac72b62c97fd0dc8447293718fc5cc6e37198b612518a40521e71bf09316cfea32fabc84890f8d08124fe3fdceeaa3b987d27fc2204744b8166483bd36c640cf78f64a93ce720c1a5002699cb19304a653f8226ba7f896459a28db6d19ab759567289980fed22c4ac2e1095130660aed8666f15fe0e06f0f49f4718eb47e5b999570f286ef867387e73d399c58a622fcce620436f3e3c7f4d50ab4c059291a8fff9e04aa701d330f3eebfb33f10a02de8ded0d8084af8e48a45eb814591778dd5f1a4b7f33763673fd91d454f68bdb6fe346842cc71887e9282f86fcefc23a76adaffdde6ca67fe648cf2493a49658c773f11d1620f446864dfa3081c870cab73f6670238f077bbf2a1bb6c0011497a1146839b6962e88c22da7a1538f08825c2fbb81772e6cbee75c29f3a686ef22dd4bdeadba2facebb3ef8c02a82de613614735805c4c3e3be8ed31546040f96e51bf19fb0804509067a2666ef715f82c8988d04e15b7f72c4b4548c11c11130ccce725d36cd9666c732e64946299f93f2c762fc6cc3be988bd287a8caff500afad4ebe5548e605eda385ecd3467c84da712e914cc8a87635ecd1e67d73ba30a1a30b85ed4efd721af0cc4f646c8095d77419e4a2817eca6ac7e87798d9d798229373eb9c0cb1509feab8c96a469909d5daff2c5937dcdd57ca9bd6c01bc8e7ce33951b33061fec833418ce308e2199ec42ad3f9ce9f0416cde1205a4bd41c0c7b712e9d739dad4da8421869c4aa5895e65f40dae5fcaf7810efb1a244d927ec06b28817cad7e8e69b26e7de57995af88d3c02288ae8bd4c11e9301a46cfcc823bb689071aa993bdf30ff9b9eed22a7dcb15f21ab36eb543946653bc78da6b5008644229c42f1778578ab25ddac02af842716d488fc94fd6fc95ea9db2dfe8c310f49cc5eb48426a8f5f8f0a280b9e04e8171bc698a26de0e1fb9901373fb1f1862384a672b77d52a95759b27fe4b1c940ea6e2b4daa2389d83bf8bfbeb61fc0e3f41576f47dd5dfa06c7345b14e4c47af14bf48ce046fd7238015aa6271c1bf7abf8f735e4450d7ba4a57d80ab87c119b67f8bc60f7a031ec38442f31a977838694872134edb7e06f631af05ea369bea68e1ace79f9bbb010ecc576c4e4319bad95e2a1c1063a980241093b7e2615c95a82a8ebffc3ffe8612ced7fe7b805dcbc3fcd23fa5ce46e6d852a0c5c4e686720691bd7b7e004d1990f946be56d887bc3b58c1cb0812b6310c2a8b82b869585ac8b44eb3d14bca2fd7119abd54f537a63832ab7678cb91a983c0ff0f4a7ee018616bf6815ca9ec9384fddda1777e0b05898e4b733dd9c1ea1cf24d0e023755f35c87217371b407d1d1cc9c619b9c035ef2a18c5a6dcab0ec78d5cc0a5801335e8ff8a712659a320c53074f1b43570c4374dbbfe2bcfc825b6f8261c21041f81452962d5d47b6a66bb390a82604cec6778231a6d044e4fbdd84b66e4d88efca6692bf047fd8915ef367365bf4184777a96380a213b1d3c8b7aeb47e9e9574d4e29434f040664a9a369ab3b7f8a40e9f53b7892064a362e7c5b15ed82342a83d28c8a76ccad447617819a3ece16a9d311b5fd78764535a66d97a2b1014d28fbb26f87876f36a710f50484937dedb52180f4c2be95f06093d205ea1e59ba3e2c458943ee29736ed4e491f9c781c4930c808b47a246bd905fe8ca06a22b2267c4279aa3f3d5da9a2dfd8d7c4a98eadedfd0ad7e2e3f8ce645014f9d8ff8e8d0ca5f090e7aa86a55845de4f16cce4e38d42e852476f00e575794a63a2e3006a38faed80d649d3c3835b47f3112ea0c6a27c20bbda1dabd04490eed4a613b1fcf1364fededf16d79b7a29c8f067a338ffd17de1f47ca119e4a964915604aeb1c6c7b40b2f2f93d79949f90103a700ea0d097e7b38a98aa01bdbf7e6a113f7ec50d28b31ba106d64997c7e4504aa53afe115dcff8ea0a377ada49385c5a249344be29b57ed138e6400df7758b0a8641b448f5b898a8963c02914a782552eea41ba523068942d4cff835d2317f36f5818e5466dea8b6b66cc996b5ac872f6b0627817e0c67e6ceb7ad5af5a720be4ee8bf6d8e75675f103776a745e4e5cdaafe95fcf58c70bf7e0d5d028f465cdb2515263bb7dab4e33e4c178ffba54aa5f2be0626e97b86f0c9ab5ada16f7ba2edc28ea749c0c82f0918d77960cbf33ca033105a3e16d8b9c581b7dcbfef6c70c88e7ff92be6f2e4f6bbf5026cfaada0bebd10062af6ae7b7be4eca71682193ab020d114e468590aeec4113219b2b9eeaf063dd28ffbe94a523e0f51eaba85ac04047f7aef28589fc13842ab6cb1e20f20d185644927d49182c471330f801739e53b4bf99e52a16a7391680785964501910d643910bbe2904552c243d120cb82fc2bee8de8ea5f8dd1c86d7864890452609a2d51236353e367222c4b2febcf581e627e30c87ea6b1f606320cc9a0cacec377ddb69c54843bca06a4a801ad68944d5c35493664807c32ee61622badbb9297ad8309be15848d90bcbfb1dc9416820a966104fce5de0328e0a761b1e57622e53c3ae87c43919d0cfa8b92b4831990a8351102a81ecab46353fcd04aaad94d238d0074e826e4c162db278ea54f411abf1718ea2f0b1220d0eb8d2c19c0e7bae2f6cc3e026997bf54e35d010dcf6cd8357183bfc7c208f7fc98cca4f552eda0b74ac0f05c20a763f8297bc5b859adfbe785c2baec2d23f82909d1bef1e4d6d55e71eeef805550a3ec98450de4699b26ab5367b54b2cd07066fca4dc360cf15c4e23686c3efb09c6b67d7cfe61cae97e056bc0241ba9e8bae1d9226b88b49b6f8238f86e3cf60ad3e48b5a694c2895e10a89b780893f24c0c452de33dcb80226d7eebe9ab384a86af604c49dce8b08fa3b9657921aa0abdb95c31da32f9751885aa476a2f0d2521181c5d1c77998b9e8af3cadde371af170ba4b8e7665fcc82586cd8147d1524296211ff11a9a2f22a53005356a55c805b0e04c8dcf26849103116132e13d881240c7b0d4f045c6dae55ca076924edb08e0964147b137ccdfd055650ed591a9dc10ccfc72b715d370ce16d7301a32211716f617664e9d5024f878c05a7ae5b6bd587d733c26e8a7341e4b566886bfae20d250d488a228c816ebbe43776885e7a1e86c7c2c69cd4a6e6c8769534a637ef63ae0a2c74275a35d5ed14fd51fa4d9976d34b21dc6342cd1806c920501597c9f482329f653e00a81cbe115fd4dbca48adee1e0893e345c35f858768569abbb0fc9c8c20f9f6d6deaf3c333de7befe6f3636543c962e24ab73bc08144c3b893680dbdf4989098440b7a7f358418c96e76a657a7d9282bdd4236ce83e9f7d935ec7d67eda2e0d6a7ecd75399fae8005a77d4f791c35fc5bc4504c15dbd8f17d4a7545809b3171bfc48750c546ee5f5c3813f00ed88d901fb4f86d211ea4f61c8aef5975fecce5a4ba2c11c282e24f9a77ba1e3aa04378e1b462b83e577194f01fc7e68930123d0043720cd7982cf3240b9a9943780e30fa9ebf43171cb0ca128c19225b53746ebb53343c936ecc19ee085656c1c7aaca8a9606a28c66c23cdbda3fdef61018123b2a6718cb0f2973baaf0f1322922b2e7627c172a42faeb964c2cea3d89ec6e995172e670c211a56092915b4827db18b75b198e87bf86a1ec221facb03b654add7120f3a34d40376da22085e066cab7d3752be2cd72792cc7aca8c3ca903d21a5a2279c1822938c950817cbfd386d2814e37af9b5ff8a4eaeb697af44066ca168d9ec05cca524e9c85d4eeedd0d9c78a84883431c70d0619fe8c575a19fe4a5ff7b85032b914eb6b970ae5a817e19f82e19f2029217822e1a249456384d94e7a1a37d675efccbe16dae1e2217af961ee98725c76f4eeb5641a7d0bb9ee34bd47b0b8442b3751ff34bb3c78491e85e150e53281ebfa0572e0a5013956ded9ad4574ddf4b5bbf7066d181641566d241a1cdf782ea9e687ff0057595f37d7b5cf57490491cd6eabb0abeba90ff9e3f135a472889058413d9a9d5f73a58db636e88c5508350b8c974698405524ac090885351be0a9106a0aa8310afe1f08d9dcebe3659a670d88c6d176408aa1a608887052a52d3d55ac70298beffb1f2b747e1084b3d7bcd261a69e9a4a0376c2a8cc152b6baea3ba06a13800e7b2c9e70c25a5b18987b5a24b3ea8108cb69c1005d3e1f964f4389798a1962b9e14dca7ddcf65da88ac767b78464f935ddd13683d4f2b1bdfc0181e575fab70de59c023ac4ffda223dd2b3840dd3541c647f64069d88e09c6ef35c03b16bdc1d738a3908e1dea2da263051196c7cd3f7ffd558142e4c6f3f58ef96ff7fb0b04d664ff0a022d91c85e7ae06bd7e64fd911dabb6dbee1d7f9b34b50d2ba5c0c9626974017883e129e35ef0def67b303f32b3a1823f02ec72700e8f9a650e95d93678b6baa6fa87514653aa7f380e6a5c58fb5fa260ceedf8acf2a30fd4d92ee0729067b12ad439e13ea182394405e65a7b0ad3f8e98cd5c3f0683f9521f5a6d247e4f629de82d6a8fb750cbdbdb813a9a64d0572a6fe115a38746cf8d6a85b891cf44d728d576738933a8a0dfa93e95ad7a1aaed6e7d91a802c8c51671e9c076c2c8cca01dcefa0cb9d85c311ab37114cf5fb5b22cd1e872593f7d334ab0af7a0a115ba3707df9cd53c4057a69cfa0e8525126cd1e8777ed8bf98de3641cb71dff5c7675fce800b9621d84ae33b558036b31dfdd67d1852616b1789c880e18fc98df0f2cda95c3ec49441cbb186c06e5497dd590ab05105a31794de433c63969fb90467d135b6d5264e45e43477a3376a008d580782d4cefa38e5036919a8398105704dbbbbc86d48a61abb140f6bcad241ffd1b81f33188f68b0eaec5005e2c3e380eee535dff22075471753f5905deee3bb7336c1381b3197d921414b40a5874e385aa0eb0bd5b05df40d92cb4ac318e36ae0884b1a4a7157d28bb1ffbc0a4059cfc2ee056736e1121d8103a2cdd9f46c15b6ab63f5bb4e93ebc08e4eb8ca1927a955502ac2983a9a9c0d1a45edc592242311a38da171e246b4a645cfdc7a4c96faafc06596bac5986618bb4143a27fb102889ee73681c6a329dbd4bd9d5817c9a3a9139204a5415317be907ce7e86f7a34268fc5e9be798ac1ddbdac5cb8a847477c1461d2661bf96a8e5c9809bc0acb3b45971811a148a1271ed01059fdf59f0e6bc3cadf7a7e9c599248e10cb4752b1c25ea51a18e17b2387238f4cb012fbed5a8edc101ccea493f50577f6f64142a2c48fd16ff3983eb513f6a7077f21773f2a07d693387a417673e6d21ebc9f0703a96b7e4740d0c6064aa13707fb543f5abe054a73db16bfa169ddae923f68838c76ed5882fbcdd8664462dbf88c2e6f351a2e96ff3994b5b03cdc86ca8738fce356f1c46f2717d2dbde3104777abd0c34aeb32e68c30976d0e4d4fe70fd84156735ff6da42241efdd293953146eeddf0e2169e89e86ee284281d13062a0c6b83b639c4007d44c3da706c728234a2242178a5dd02e6a5af0f835e419aef05191d91ee1a8ca2a81504b7532254969915a85d2f0c42865c859af754ac53408a68e98ef7bca4d83e18fa30ddc996bacfdfa7e89f71653447f7c7067360d615e8b0dee45f2fbeb562d1e2a168bf2481e30b2b585c018bbd7adcb2cae8040a4f588a6a3b60977f17e6bb5811579fb164f81ffcab7cec077b7ca910885ca3b5b658bd66a73d32dc96ad2c72b2b77826db95e55df77331ea1a6f15c8f809be76547421b3fca7e77d141d7631709ffbf155f9da2bd716f07155d3fa5cc90fb1010c9e9d623671d87df420eb8fc4b088392b0d5deed39a04cd1b7a3936331ad15659118842b1027038d4eafd77b82203a13dd07b814bd899c3c3a2a3e38049422edcfa699a71284faab4ce0d7cc784b6b9ac78a7895cdf3fbd074d777d32b8ff13de19124a5877dbe8fa61b7a57b7ab29ccec8222ed4028f9eda83ab8623e863017e8a153048428f76e34667bd412492fef2b8685aabc7940bfc0f95d071988a5b9799eadca442f22c1e1e56393d8bceddd84b7d25627d37930ed6ba460e87f7ff5197832f3304e7659cb97c98e51beb711bd4c21ef0fa13e401940e04a66f88da4f0d57f0bf0f2e4115ad0eb54103a5b3ffd256bfcf1ae4309f16e25e351d3f5972ada60c579f34ce17b4ce0633aff404dbd042cee7e2bb0099ff6a66509c08d785f264d78eb0cf3ed64200b1a6757541b38000256a46641486b819d0902c906ab15094e7a5da1a1e0332c1f7dccbaf4a843d8281ec8f87eec8ce86586591d21d9915432bd4e19047ac57fe389df3fa299d56528e4fcc6bd0ae9331da93270a671a0a8b1745264000697e63627a201f68ccba975f0ada3d7ab841d655b8f8e085aeb63374913af7744c1eac8f323f4066fa266c926e1248f4489ff3bcb8cd6d2db047e2aba9fa254737ccc6b26fb2259c1e4094e704b0024a637a064faebe8223950e67241e1449d6d26652c071f17d4e54641f1d9eb394fc10722bca4b3868158c5a3de733d22ae6f29e0337832f473cb0fca79f5f8b6288a06fe81211ad331326cd6aac80ff387dc21920d68798309d8046d4dae85e3075a529e05c4bce8d973414ea9d7f6331bacf6fd13c9692cd2f0ac082366f384e7df9efc10dcb3d831d0cb40ca4f7db0ea23c6936782ae262a0d949606dacbbf19c8b1339a4458b9ef1a92f614d6bbad7184bb576a758dcbfc6e3a388cfba3c84bb956a908907baccb3294c76d460c99b2dd93805b69d9c2103321895ae39d96017746a291fea617b3983deb0636d0655e224dfa8a2740c9a9a8bd01a978350ad27c311b6b208dd187be48ab69248c43bec058661b27794bcb4664a63da3c9fdde1751c1366f37b6d434f37345d917968df463df44f5bd45d8f13fa312a6867ee29f62891723954144b576243d1dd9ffccf9c986a228d94af88ce257029a3cce07038e08d5c2550ce0ed7582d523d6b74994c3aae674029a54adc26950c2cbd2b7557e357cf7cd5db22e1d9ae18faf6a4970fdcbf03c4ee4e13a9999f1945cf079f7d9e363b95b28f819ab57b05e748584b7b6345e3c2c288fd8022e123d171579784018e45cab333beb1747c6218badccbd3fb0313a28ab79d170a8debe4e06d06333c96b6973869cb7df67f5f53a5dcd92d4d8d6c8413c64b745d1fc6bc8b6cd54b394cb79bb9a28cff020f0ac528f23c97a84d23c665af2f2115e55bd039b31f13dc2f9f04121eda3ff5dc0d710da106e0acca1b30fa33b2dc8097b80c19605b3c44752d7ad188c6eaa595019a1cc040eef20a9de0a74459da4800ab40f4eb507157325686e782c3f91711a03dd07ff426ade3c6fee4c6315be3a5c65c45b54a93c31d2ddb63d73a2d7b4b81e984d7e4af74cffda19a44a1a8a2082ed7cf7692033055c2c65b3b6dc87bb8cba5bc11d8a7e7ec1ce149756949bae5e75b6c4ac4b114b29991392bf35cc1e189eb6cdf1f3998b71f407eaafd47777dc4e6f59042f61cde7c990f33d81daf9f2004944b781c355511ad190c5a971f72df36bd98f1fa3e260743242a3f8a90cac0fb09da6a10db8446ebb2b5f6ac111697f639392db26d8c0899b281ae84ebc1e4d7ecd6325e745b3c7d7f8539c16e4813e771d4b62325c2aa47683ecea0141f333f7d75e12b42bc3e027187840ceb0a3b2b9054aaff68eb6207bc14754c6272590eff70d80c546c195056db69a49df43127aef180e47374336197e2334b8a5eaeb6cda6abfe18b6a655465758113a479c953def751a999a8a5622ba78585dcba20e037cd02e866ade33075a2e92687c8b4ab4e06ffbef4f839be9eb11edf23b92de8c0271a851981b86d5d7e57a957a61f488bfd1a851dddf29f3b34388cbfb0f3aae6316b00ee14e655d88dcdebc5f25c0d6fd5ffa887c998a7848e3d7de1a097e3c37a71fab8f3a8ab091a458b8de7467208366261dd49fbed06e6e7dd08f4ccf253d34aabeadd635d6bed62d5eedb3cf81fda121b429e5ccc24094f6e85d5795f62ca8c366fb5ad04b203a2244e490af995aaaad2402b0d1541a32e469ba3ecf24acc308b134ff9278f56f32e8734cf40f8a567cd906b1473274829dbffb1a48b5dc91202d297f37e89147934f2d0f940bc4b9755d70021a5fa1a4fa0dc1c3e6136c7d1d9c4f7d14286908d3ffba750a39d71464d0bc9448f071642009ca20ddf9b7402121f096cb291176e9e8d5f26fb69b887f8458ba909be2eade4756782b6133cc1713eac11d25f23aa6d4df269036ed0ebe52c36c59c1b1384f5cb1e9b3df153691d4792ddd223d13c5303420858b27811f768945df2d71ec828d95f1dd688deb716268c043f562554b817832607849bbdb084d1a16e685b75fc2383a6a078562f439623b5a2974145727669acdaae24bbff6de63ae0965b1340caae84d797cb7e5ef21fe794302fb2cba47125be374c08bf7c4fbbd8d780e6df06ac1e5be0ef86f9a8e7ca5334809175f3de6d2f6981a73dfe4e2009aeef2dea5f5f772bb08d754ab6a95886d755e59a951ad704589e73891982ce46c0346b597bfed4154967fa79cac33921bf4be12500f1f43061ecefe00680f102eadffb9a7154bae715a3ab506f07ba55560684cf0ff2c7cd7502791fa5cc3a9ad7568c0c1d78a2820f4829051a84a5277507ae3bcbbcb6458f37d63b719fcf8d954d4c9dea6cfab41805b077282bf43f6fc63270fc979107c37060231ceff21b04db97aba11a5630022c3e890f95a11160c0dee3238f8bcb3e1ffe071cfec047a695d0348b9e64f1b3ede469833b639611f0b0faee23c37ee8c607fc7b10fa2d693975fbbeb9fec21a17faa917bc23621791a19ec2dbde30979fc2c4060dc2bba3ce10b776b255e07082888ab390f536c9d1728ebacb970ed1c16f9bfaa9ec52205285d9aa1cf1330fe85ac06e9ae0b1e7a6dafa8c0326a036577244de24f23ad353517093e0f143077ee14cdd245bdb9720fd71cd9f5170e0ac1e5095ba38787532a68f93f8ebfedc7aaf6f2e8c0ce8e2527178ef9f3a18f876fd427fea564eaef2d45dfb5809a8fa8061eabbf2f01f4d6e6f3efb2d6f974db34fd65151cc1979a32ba80032292dd8061cab65067cb6b43b60cdea49940c0766889e0be3ab995f7b5c921752fd59e03b2f5f4d45dd693d4b67e6470c34ab98db497be1b026d6857cb61bdda71c4c8dea8be7101eefd7fef0ba515a34a2f66aa00ad9cf60c1f7b29c99dddda735b75f288e3af98d908bfde00c5ca4d5ebd718a3c85a9f77dd05aca146b7cf8f038b2fc5c75fe446ab91f321881844aeccd1fc29a219c716241deb6d45d2ba572b194f135bbac5f01b0c53396d0f085ad6d3cdb08284cdbcb2dfcb375d61db50597c4f748ff4339005b16bad99c1b809c32be85ac9b78c90daa7dc657eb334abcb8f2eda9e2c3c15639f39c58cf18850dbd1856b9fb566c57f32e39e9fa7b3c57c87ba68e0ece390282a48fcb86495f1ec8124f4334757be4e7b244d57b7a66be8e423f97195649eee10d6a562e8724c3b3036fde34b1eae49c83b6f659ffccf65e489e573d59d48abb7a494d26e7b66132a5c546fdf6a3b2bb33594dd1ea9f7a82c9d7e42841ded0b87b22a1be9075d3c415edb5b4789394eea3356a7492c52462050fda43272b88acf9927e84491b8539bda53e8ca4ea953bab0bc290fe04caf95aaaa1f75b71d989b4bc20968b12de9390d79cfe8da1aa7366c214f031c39a0a9444b2d1506f4dfc0458c43a99dd8f9d6a6598466dd6fc16cd16cc538ef22e265231367d3a3465bd96032e022dda6559d4f8b803b55474ee2ea9c9c902c8098b9663133a80c3fdca98e3ceed0ff4304e21e1730b23b39552e7746d00fafa6e391230b965222baafbb181876bb2643334485103fe5033b2ec6618b2073141ddb1b317e51b8dd717b9350b7fc299b9a1ed59df4be8d8730889bd2e4bef70b088782eb8c6762518a91e82c8e8f0c944ba7f4e0058755a7784b02ad16ca1359cd7ab1c7fabc92d6c53bcd416f42326514d0e9615b946cc31475c090922116b10e432108cc6692c44ec1863a2dc4760ac74d7f68181c5fe3d8a7f2e0dc2f0e24f7334cdacca74d1c3dc0b44c76b9aa0e9728dc2102792410900d75ea4be259e85d81bd771eb54b7cbdd800ad6fe1b262eaa1fadc5f7444b8df20234c20a5313c4b41d4cd49225557ff64edd73480e13fa87476193486b86ad8b3e4bad3ee7300a3a908dd8f24d6078f8c1627c5acecf2b7b18d6ab4c9f9b468883b6255b6285141ea1a4252beb23925eb34940c8d50e0536fc8b05ee349238189036917b8cc88f8dbaebac1e88625f82fb0e9321db11657a75c7e10dbb1bd49e119b4c3c54f55ac4e8c7398607f128fad5fb61a3035f9accdf3fb19fb1194d54e23ed9c1ee913a9e57333abf7fbdf9e423e2f0acdb4a5e210b7ed61a7648860062c443070cbc1dc641165898ec50f01702cc473bcc3b153b1ad7763704d037e22bf2d3d1ba2a811ef347ade1a6602d57877fbedb1499af58f85376ba5c53cb1cc4e71bd98b8f12011a2661687643b1591ea15c936f484f511d7789ccd38ed16bbc88b90cd502f7baa4a2ac962851cd5f66e9b2faa24ebb168f976fd8326bb59d4666970d4699b79433adbd24cb045b13b4e3c4c77dbe4b1262ef889e11842a22af3ba09685219f62b0781a76ae5662ca629bc7d1f18cae6e0530087d5a100c9d072754028e8b5bf7652cf302000bc085dbce6d9878436f1252569ee3ae6f3b583cae29a97f6749ba184bb054c6cfe47dd66679130c26214b50b3fb2826e71271e73f57ddacd54f6aeb821e85bb58a63d848c0dcba87ea12bf0b794820c17fa551532a77618f75beb472b830366cb35b9b005ddfd3e45f7e43b5f3f7974387ed967c6d5df86fa7477d0cfd64b4a9300c09cd0555c0a60850a7aaf7a7ca9541479f74b2fa1ae1df6c74928eb19317cd6b63d68c5778291d55120b69ffeb1f24fca7dd0f323165dde69452b0e4b70b430c8e3be33650f5c961489ec751084801c252c630b07044b26d57906361ecdd5eccb46b08a72437a8f99c2f123eb1559f892fa443630e3e9e78524a88f7aadc7128d623eecff60b928ce719e3253b962e7302ff79148fd2e2890a269b1e7ddd3fb973836533fcfeb48f215cc778ed2ccb7a239a44a6504ac68d4e2a4caee47fc91d33229987088b034528874347a1b0d2050b5af7a05a7283750c0f56cacab39ad40cc1309d8a2615d6fb5ab251c662c58c4924fe5eb76aeb1970ae164da1f290a3f09bbe289eed1880b163337e08939455c91fdebaca7c5fd4ab322c984fd834b01bd40500ab734b272c5ffc70b6d3f41ca2e5d312b4f2b5d04d40fc2c6af76f036fdf104203a02fc60b6fb845a04ab5f5f316fc2343104ad9378ac3e831339cf1e855ac85e0309dd1c297fbab50a0e6ce4430cf8f51a4ff1805c09462fb03f6edcdf16165154020edf1e0974afd5705be99ff6ef2b7ae85cd4743bef4be5ec458f64ce36c9178a4b6c0a892ab43575a2a7fad9c3fde0a59a7373910090b24e9c42b62d380217b18d171f4fce3d9d2e85dc9318f276674f6cd84f8321c07c0718ce28266592f2128761cabcdfa8375fe47490312a4aadc96c53a84101f330deb8a8c17544de9303176bc112d65b4e8572f1f1dca11045543b85ed732176d912e62020501cb3d5818e0ab83490243ccc561012ef02525186d05628c639d7561124d9dee0c5c1e4db5172000b1f2ee30806c51541d6d328368f83b1bff68d0adf668a44dbacfda35f6d8e23a6aaaf717b9b7af043197ae73e4c3a18ff52ec7d915bfc74dee8e1e0a3ae321c033908faa960c662024575355f6467e247d26606210b0b326d412eb10b3665852fae0fcdd1b2d0b87337c0b371be7a990c8eb015ae34a9e24ba278dd11689fd9659a855ce95e7f00be4cc0cb8d21e95bb65e48b7fda6053ca02757be665e088c1255ab7e4aaa6a63b9e84db6a43f3eb51733c72e2c95b6d8cab9883af768f12dc56eb3a6f4d199ed7959cff58c51ac823fa6b4203183d2db8439fad62eefeb8bab1b93fb59354ef720e2b57e82fad21f7d3dc77234f3c726cbaa98d6829db58c9d7367863a54340cf8f63ef9e0337ce8633f574060541f0f71e4b8e8e455ad8cd8bd6e97478c59196585f82276ff20d741d89d250669d4ac6465cebac48126c80220c24753a033323e22701f5c1ba743a60019cf8166adb06756abb5532965d2b10a9ccd68e7ce5a4aec6371cd6a028219bec122b9e2d790aea5b49c3dd20a763ae3f4c908d977e86ad787292255d0b389db1b27405625e6d9148621026ddd1b2ee7f40e19a6f371ec23a38d789ee0c0d4b7231bb4e5a84c0243fe7794e615af1d34a4d488f68ae42b5f7edd5eedf95097aa3a561d804aa95b4300161215aa84b4b31bbbeeb731da51a138ec8bace2f6f8a094d47f980546dcbd751b06a3834a3793fc14c85cc3df819f0092f5c80bcc5009c6004954c04f1c7c0320f94c9e193b1290967d822948a0ab96f5823bbe580df564bca3c0ffc0b0f3de73cf7ce4d44409c8d891cb9f86269d79e97045bdca3d4a3a9f1914ae643b64bdef459877bdc89a8a58e77602abe7d7d5d8218436619e7447c7b55c90d9d997209f52aef7b540d86412b9728beeba595f2d2b0f3a6bb8fd8cabfddb1101c51ca8a47a399cd1eddcef3df273f1751dedddc95a3f6ff20e9b9931c43fa3be8870d0c983bc8c4d2d1038497aca012e48b7c04ac3feac98d0740b4a6c726690c2c7deea28afbc8aa82298a34ff9419116ec0f10d0e2db8053f28193c6cedee234542aece2e679d343aef3d3e60bdddc5d8de8c52eea8255008761d0a619583e85451a7cf65a93684cd70f3b760f5060a2521d9c0c66e210e3abec7f61fc6f0b6bd7701eed9e15aed08f92481ec7ded472f030c42cd4da78a527b6e5a872e548166c4fcfb3f283c6cab01b9473fdbbe786a61846badb5bc09cb87e46904e835c6ac0d6589ae3dd54d59be1f6b3310734cbeee369797e70fbae99b0f37be2a9b888fa3f5f6de4d7c7c6fe7950a7cc31edb69d624ffac45f69810d664b43bd4e76b9b3e8b6868c1853f8c5b95859e0f4efe75cd7347239b31fe8a12eec5a9ba520fc3522350fc61054003a3f0bf9dd4344f7f9db50b7a71f458fe2bb80a8be9957efd3307323c5690f97af555c3bca375ce3398ef88e5b277357a2cd5c845180d609ab6b2e0056f747b96333307d62c4571db64bf24b5fb6d5ef9c54144d3c21844d67f65c3dfe0f241362d1d73a4b6ffed6fbc1abe77907bad01cb7e4497b12f77c574aa83907589470b137fa790e537f153a24ab587cf60a14db1c03ecd67106c660c846f2b1a33d9351cfde5724cda34f551898693fda518aa8f60cdfa713c14b76d0df2eb5cf64e7e9b03d52413b64cd6f9e8170e633f45e95974f035fc37a069f6727628ccc969c0581c7e48785db9b65b7c8e7552954db9d69be9ec85a5f7aeae0ea3825712379c5b48d279bf5d57d36d2476a5c2c933783a9563081dc5ec55f25997391283782d389c126fe467ba5191fef81115bb7311896dfe78f7691b6a6aa119749bce00f83616da63052849602cf1dc5f56d308feacd6690703a813a2593f29e58e301e79541b6a8a3e67dcf33be40a0a764aa8267cfe106e97eb2a731656af1ebf2dcf3e0aeca3ae9f793be2dbe9e6ba826405d44fdb22595f43e71c1a5555674f27f405f01df80916a36b3aa5ab790d8eaf85c30f634113df6dd524c3eb61bbcf6521b4cbab289f1b964be978860133f0d725afd6762dc7ec27501acfefe118101fd2eae7ff97db483cc9e601f19edd071be78df1711d8599a4ba40c8a4ccd4d03e630f83a12b0ce82f0e549d42149b44261564b669cb5ea176326ade8078772ab1217ab31a1ffcdfa48e90a649f1008309fb59453f697a869a81beb5ac9c17bc4bbcbc33729199fee3d4c766920b928c5058129280cf5800b6f368d495077a64deede6857be62ccfd9e7fa22365a9fe68f833189c185be4d45a1a6e1c9bad63e9ccda0dd4a91372cfc567087a0bf77fefd4032c81215f8f7909fdea95e09c53731c12f22e59e42e8dceedd511b24dc01c6d59c68a729662adea2fdcf86b6d8ec7977327def78f0fa244c570fed850ddac2ea1e4947334b52b90d3d3d944ab43807880e938737cda4df534c4519523976823c25d4b9fadf5bd3ba0b142e1ea4248123078933eba1798c942f13cb4b3f059967cb123364b98a2bc54d70aec775a13b4baf3502f993b1c09f3d514443213c930960c46b3fe336f7ffe8302f79df94fe2227c03f675f033443ee7d1a0d03287b4b1c9642796e4ab44229c52e5f6a4f3091bcc3314e6a7000950ceb2c61175d46a9de07e998bb4addec033ddf53e381760a313f4bb751bdce54ce141100c3169bb8e0f502ab8529c09ce7b2853fef9f81d0483d98a240879af76b06d0cc055495aafafcf2ec3419e12fed326463e96ce4c96addf62c0c4400148df07cda38e8728c76f46f3c437a98b7354ffd42b6bcc8bb7834034e9d287346a1f4c740463d14b5065f50f1199e9ff8a546b61574880dd6622089c17c3c6e7e6c7438d82eb72b6758061ac21349f9f7475d9d254e6995670ed77c9aee61626263d3c3422d0d12256769337cdcb9c0b862b4b636dd4961e0e90407416d796bfb9ca7e253ff624be8e324ef3217ebf5af0a6d4720fe48ae28cf8f6a3b745114ba158af3302160bed8463bf698b97c484742849f44193deeb1e9fe4f7d565d7a5c9e96551ceb02e102e06e31a1656f00527a733c859f95112eb1d7cd4b52d9e34636a642030ade059c5ea27e1806b2b725d637965c34d853028dd3b6ac0aced4c5e831f2ad94ec1d788b11961e47fef129abee84897d5a9c893ae2cba4a55e5272796642c0b65d65e9471358954e73c8ce99d79dc13ef5a84e4d3b5af3de2e4f5f6e42c58a59b57a1e2162d0afc298014d5abdd61852ffc5100ccd0c7114fdb4ed3d617b52178d26ab2fea6d9a1cd0ff5344b57b6dcbbd515e72cc8ff6d29238d3a1685c6f2b3ecfe125d152f6e971dca5552695ddafd082ba7b4c2bae68b5e1292e079ac88189c551f9c9066c703555c2985df891af297b7a6ba8b5b78b7cc1d4ac9c32af7b402f24c9c24dd9b0b8df3fd11402d0d0029d9f8cb9fd263a0c2e00dd0687e0467a8595d5d982d2cf758c78869f3dd4b8f1352fb3df28cef1b57d616ec30b751164f5b935d2c03ad72efd7f9ae8ecd1715f8674728e6c2d42c88307bdaffd48baf2fa9e30ffd260b0b6be9c3e3da2b8b0e204702922ddeb29f8cd3d21bd21978f47d4b1a2d8deea4277212b7d3face72dcc35c36ba9f967bfc09efb16d918a3f6389dcf344e528d4c354af2a56b35a99d6604edbb4bc51c8a0428bac20017f9146a323d9eacf3e8cc5fab47adb4d8ed10d82c2c04094bd3b5e4ba29a7bc5030838924e565472b776b618ae671defda5008563193922e0f6e0e809a84f8521f34e7469d2d42661674df971bea0990e89800482df1a6a8bc9fece47ffcdab43b7a5c224faf84c6f8876470b8624e47656238d5c5ae017f0f3ce256a68bb9ef40a842e8d9f32b7709c8cb22af27791caef2fddb694ff669226ea901b25c85ecf4925055d89bdfba7beefd954e7f6358ca3287b811b3147b298fab51bf8f6b3984c7a961cc04ab7a306403869900dcb7c640e52a2edd5571a6b75d3af86ee9e714b12c532b5ed965c748e4275b6ed1d222822e3be47ae15a6f4c29018818c4b4adf7af78482716ccb9860471f08f75726222f0d8a314d86669bff12f6ef3b35f9cf17022eaf21ebfda08439afe80623e2eb110bbc011790017ec2166fb6213375b47736423dc510b7978c69ea182bbede1a03c2e4d34e4d39d0aaa3546a067f0ba22b3639e7277d527e746eb3351df44ed85bb7d2ea35e8a51f6b2a38f0933d1236160bbee11a0cb8a3ef654960cf5c6d8ff25a74fcfd44e25c3dd898a8f096bddeccbbc308180fc0f60ea274d7348715fc6dbf296016026942236b59341ea464c3f7038386940b422701d4718453a55bdd4365a460c92cfe2d14cf54545106673e4f9f20c976be0b8182a48950b58d87d22ca15497fd57886dde8ecc81dcd2ac4a005e1e3824ce33e58061c8448d11093d19ff91a8a029a3bbee75d43413ffd7a8e341f0352988b4cbf66c909ec4a475b81c1173a138e69a47889ce4c2073e9b46f406c59646aa27599727b5dcdfec36d129ef5157d62961791e8f2a7e030c3af1471ec02a6037a2ecb1b1d42df3868963f6aa7fdabd44d4eb4541429230b546575963913ae769320760af57f28785951dd304e4c2de57cb6aeff53b5a040a91fbd43160fafd57bf7354d5cf9e471dde6bf74ae86a6ed411a9668b76a555e3f724ff095901c1b3424c04294ebb5553641fc02b9b66089cc6b7f7806ac6b0f483e1a61c640e06b4dccca18af228f1c2a88140ab32f8712b18cf5a89a794b06c6aa64e5cea34ccc8e34c50d01097b9935be5b22e35d61cb79802c3ad14e793095dfb9239ca1626856f1a8c3f60ed658a48e10de7be396b06ae30f29dc285b5c429e5f8dc82ce9b5ed9036e46b1856e075ac6f67e8d5e05cff0e087799f6fb27a8653e15e8b4e2a134b331c5a7ddb82f9f3796fc013227866469e4698edfe6fedb22f4e20b9f77eff5e01c87636e2a32248dcfaa9585708d33e1e2fc1b3c86ec4363cd989cf5ccfd6ea0bef1e7ba9fff4bf2cd0e0febad2345352b046fd6cf20662dbc738ebd95192383bb11dd66a08dfd84cde34e2591c24136116d136bf129fc1ef0fe7ef8fc3758cc77c7a6b5181de90d753807edd16aa17c0c379659b0f84d248b633ff9c800b9585eef6f3647b9d262dd19c415945145e1442789549f1791aea70c7f181a58a0a324a136ec82d19ecf2edd09a11b140bc0585cb8cb1c8501b59b0143b5526ec240b5fee9f69eeaa8341a80d2029a4e6a3f126b6c45f60ff2b04d2dc138b8d0cc9ce342d53b40873882c271249f95870c0baa29f338493239fe41f3b4e5abd006293d0339161e548dfb007fbcfaefe5f1f87cd4223696bc04e117807f11baf93ec389e9bcf939b3f97ee4868569b9aeafd452caf2e0fd232f98119c2fc9255a733c6f2de321d8f1bd7a4934f0925c0f88719b81653af28c2349d3bb185b6c67a71000a529034b1621435460f345bbbd106db4b15b79209a11bb809f334dcb57a903467eed93b3976a5dc900008c6bfb85884f4cec964a9d559bcd52959c55117e8330140bbc18557d9eff7ab101d3f892974aa682778af23c32012f5884fb256e9c1ed0aad403f67a87d5f40b154053d766d23770a367666fa64495030396c668cee6baa9d940eb7ac14ecbe28c45f9b33af5da39259fc0798b94eaf5fcf51aa87ad75fd7ee0d4c492822f209de74503e3134d731c5a04b70e7dfce7adbef69294aaf5b3ef1364468247f9b0e662af6a4111622860ce64d6f084351f4d0566b510cc86239bcbbc3c36a9cad4744ce5d0539ec95783ad842b1e58bdff39e0a05bb8d8c996551bf1be1f0667626d3dd1b1c1d95093b186b3f6be361e7b5885717a08373dba25ba84e3e9bcd4a895361023ec21e901072b7b31e47da510e3cf06cc231bd7a8f358faffdb2d373287110b8b8c5b3712f0358adfb75c5fd778eadf0037de2408dd1423005c9d015a6998ed93e1644d14381385918062be0a7e8158eee15648805fee6b640d8ee22c6b87cfce739e23545b259fdc74d8ee4ffce94645942f20b2f4b7f4352c52804005eb8c848ddc3ae4803f72d99ace6187d68c89b051135162f9793b01c49bbeff8d6273a40c639d35c3c3ef79e4929184c41f94a3993929d359e3ae13bec8a300b3335d0aa2fd6f679fa9744224a76a3b3ef16580b2c098a1195d67838644b8b706241224e2df93fd71882cffd13f13b62f637619346c5d6e60ce3e35f474a211e489d7a1606c1f76680368a334aad80435f4b653b9e589b5988d339048fdbb476324923949f9097e55dfa71297d8ea5bca2ed8d976b50ab9857419c0a3c1d48fcee3ca4e0a5b155fec46169bff97d02783e78a9065f46b26ab2e790782af58dd63c287efa676b40dc0b1cd3d87c0472c4678006bd676bc2da2b3020f06e256b04bdb7e4866ce9e443d34ddf251a3de7e18bbd0d54730aae21d38645e44082d0fd9c10c1a75d43faed0e1f481dd14ca13b267a873552876792a74a64a741b65c7ba3cec1866acf864932617cc793103809cece8154f856c6d4b0c4e40bc8cdbf705cec53d2731a3bc185a9537354cdfc576fb203ee2d8c21db07a6e14eebdcaaa672dbfa85f556adf0b0da02e0107c6bef808d028d914da42d0684a21360e9b4cea30a4dfae81718f453ee7592cfeb27a0a6d2d3f43c03857ea29c877dd94550514843a4ebaddf8c74eb171eabfb9a1764e1997cd11f8c6493e665a67c6094a371af711cedc7d6f0511aca555db03b2462a1cb1d8f1f69252ce20f9d47bcc78efc6c799ea6127eda7e00d13f540bd869f8dbf2ac9cfc292f69a817976af849940673d6164229cfc7cdb6fb46bcd745c11b29b98d4a46a059a947f48f5aef2c1148e8101f4f81b5497a8065cc96d870a203fb415782e4a791f80a0eeb370b0d9044141a9d3ee581eeeb0b01cbd575d7399524b76f8abc750d45470f0899a56d8bee4a5cb673a7c1404eb63158d1e76af0d8b57bee78da2c87d6a20b5d84fc4dccd672f774bc1e237712801f69c86a6fb61530b496a65907f4e7f7d443532140225e9aebca31b229cf4d7f251af109124f82a742d06d854d21fb74fea0a00c16617038101f93b223085dd69ecd851bf1c28dafdff9f74a7bd98109e78cdb1abdc4bcefa7631198c78f79bf4ae945d6c2d42fa7ded8593072b69a138080f64b0c67f5e4f292b34514d4627fc0eb82b7e657be28b034fc2575bf760cdab58d3d4c91c017e1d21be8b45fdb3b8083da1a36110350cb631860ea7d2a43864e8d6b8856c5be7a1102562b276401ef65bb38e98f4ef7f7001e84ac242d14e32750cb9e5bc5890a380c3048c44a1562b23439a36e4d151a8faf9ab27d223b674a380efb037dee7e35324c3f6069ce7ebe757713ee9a3465cc22ed52c1e6bed8e4ce5bfc9b978c4f7f270af5c48be4aa0f5655de49c8db6b8f4629e98db86e8db4decd6e968c2e817d1063530e7b424fda8b303b81b54ca35d58e9b43c795ec2a5dc0fbd9bb784d107c36d109df7f76a4f4f22c5b320817c4610c338a6edd0eeabb64b155b2f5a8500a18d1c65d7253703677b05a0b99ab82e4ce336c5a92ad3c59bbccc3f688202f1670d4fa63b16aeafc3dcfd0355821fc304ce059e1a957f78c9832c990750586134d2fa03e5a102b5556a731fc3b6415b54209533203ca684e05fb36210c9aef5af8d98bad3425764eac80fa4363d1aed522960efb349210cf5c408f8561ce2c72776be56e5bef63713f32a9261846d45bb3a0837e73b502a37ba56e8a956ed195ebf8e70da2bb8629eca343bb430d5841be5d4923ac01c7ec974eba6944a831468d50ec8f8108f3ff80103fe0822d2dd7d88804e0b0972fb3c15cc3978676b43e4c72706a33ed0b13d1a31cdade69fea71ada728c19e49ddc3c45cf702d28b77e613b2173ef943e2fcefee095c670238bf28bcfac579e01082534d45d74ad871a29f2bd2b3bdaf55e5cd3b77c1b38190dade0aadf776ce394f1ee7b6c8aaacdf05efaf35ddd704e6d294a46fed98bd9e695fb3d26f6f049db17e780e16c7f2def791c0542587356ec8da6af3713f5df20296a0a4ca0eff6a464c43ff3cfd6c98e651817cf70adeb6c7feb0a0983192132aabc87dfe9dc6b27232871daa71749ed1fd4e13af303897ebe24a57e3d16815097b4d7e36ea2f33dc697667e08a9bb0ea7efa77b585667bb70dbe4ea24dd9ff7ab0509196bac763105f6d5f9abd7b37b9b7cb6cbb1fdbf31aacc1f7cd147af0ca60d783fb0bcd059e1c4b581e347d0c5b07f17344a2f0746da517df2213f2c6a44c3f60adfa6e048af0ac3aa761fa752bd3856b292d5e0db5ab7ce2fd838864772ca57b630ab9e959cb9980e4879e94c1984e1b68709728ebf0c7b44448ba895a0fad6b3cc69551efcd986599ad8e9d233efa82275e965ffa874369d813bd270189037ae888eaa7c7e0b9cd0b127e0f07695263e9088d732830a70302d993aaf1fc3b15e9661753c4d2ce5821cf10faf0cf8a58ae4c6672ce5f311f25b8203189b703d25d3b36161d19e66c576cfb52434135d644b132fc350d64c9714ef78f70964f92d409f043ebfed3e93c4d9f3f6347062b19c94bb8a05bf34250b40e583df128f101e56be31f2346ff28004521415314475c894d813df86c917e56b860e229be100238afa4ba205f62b202ee0fd55ef0de94abdbff184ea557c7e62cb9131b20adcec64907c640ab07c09f8bbc1c9f2f90d1ee7916f37bbf946b07b51a8ed2c9eed79431ac0b9afbe0f782d0b0f69de46b22d41d6f9d87227f584bba051a5c6a93bf0b995ff99b4c86443dd42f45bc20cd05cc82d58217532380fe7e8531793a87a66758a09436ad4934cc1f5c375e7fc4983d99f69afce9fe5c3381521b55b776bb16e75db0005af994761176c77087cb4c3aef494008a894dd430c0a81223a63b2be2e4b3c95f3fde9681ab998512b349a21b335d7ac57644b02b404446729d650a5c6c69cd646f09018d27af38ee207bb18504cc03131fbec61b6e6f98a5f029c4e6f7b382a29d01447edb773dfe345f00f7040277069b8a2fba841de7a7a97f907096aad37f70b58c60e84ac308082f4a659b70482513a08d469341b7b8a2dc8d8814a234972392fb409c9043ec94e155dc45bb0302840b8b4a2c1e0cac02c4da8d09fe7e9806de7feaaaf424cb56d2f731accc6a57696f9536a02d06bd5bf1c9caf8bb10cf425959424ab2f4dd015f4c377907a415f79f72fd592919cd6e109e08aedc68fe2e6d21d39653368bf9eb2cea5b6c689a870fb94db27fae906b1eb95f03b815c8a6aeb13ea8188d9fabce89fdb3a887cb9207a58209b8578dbe7f648aa1280f8c655dc3af9bd8b266d658ddcb90b5a35539164b65dcedc7201b1e7e1c35b476ebbea06a9591c421bd6d1f7e30c44916d2e2196f04010f99e3cbe782947017d10e470c53d8aaa2069f763ef077c968a3786bc244ebeaef96f04bb1e974ec1542f3e1e8476d1f77459b5a751f371690e73d42f405025c0d6fb101c599433232f13809f8756d7e583dcfe31ac85c4a7b5982a7a200c6e7b4ac2862104e5e5f9029957b404608e8eb2757abf3d395f2f8754b4a17a42bca0e87101ceac8308f850cd1de9e0d56e997824305471c84083ae830691fd7510359d561650f3c785f4d97c7fe01bbd890bca9ff9658b2b97591fc02dea45a26585d9f74b5bcbf627c03810215d930327fd34c6d0807f8aafac2a5316f53ca78ca0fbf5df2bfe5c722ebeb6f19a7c165e161f5fad52494164f9cdab871af54b9dcfc0cd643802a222c65066ee28aa1dd16951d04a72e5beb38a0b76441f8b5ebcfb41dcff7250d8a591eeb5231c82dc13624dab8637e72f8ccc87a03c27cc5de799ff7654fc812fda29b18a21545a7cdf702e787c230ca79a3bafd4780f45fa9ce4f6ffd618a7b0e8d151f4df7a36b7f41a8d956ef2b2c39b56eca08425ca7527279287440d4dc70c93553de75d5df52628a774a6263559e61e627658232da27c7f1683baf6102ef0363cf540ccece18ba1f15bb3087fd2e819174cd5357d85d66f285d7148edf6a9e98a0cde887fa91f60c4a4640c2e25cbdd72452bf416c3be014ac244cfd278ec80a5cdf4c1666ec13fb4c9f87e0030b0a1e2785c4e8d37f2ae675565b0bef6c705a58fa0938d2b0950e9ab125498d2841f931704449539bb2324feac75d3056ce15c57fad5725b34435b21764546d169a88415085571bbaf4b834e6d8e955b13603f728fc88111e221eb5d43c858405a429bea3c492d71df495a718613b7f23885641c0cb3a61528e8372e4d95e97df031d21f1197ffee2419e71771667c467d885fc4d34c303688fb26789c673897d6eafec3cb40fd59f364f709c8060d50a6a729adf75df8a0ddebd31dbdaa8a741e5dd06effb5648351193c0409e878bc90a19c1eec798f9ad7112e05199c1e0c6dd673fd638631808f0d6c6e2988bca1f5e2f447082421fc9cb5308a3f90ae8fc42cb818a620036b8e153ed0fafe5dade2916d46875494d89ba8ceacf3787ea090f487682f40a304c1ee93c024f8fb8e4d55d6975f13d7ec3d5f621b009b8f26ae9f00fb640954e64419ebfa2d98df0a8617ec297c1b092054fd1428f7e38afadfa2e669a6f5039059bca949b5706ff9831051ccf6289bccdf867d66f9831e92c1c1d2a9cb5c73ca8ccb0d2453ab3dda44462a4a30d985c167c04ad8ccfca99afa53437e26838772b7443a494608870de4f217ab1e703e0bdd0c806affe999c69e2f4560a3de34daba29ed4744b161698c3d4ab9ba2df77e9541fe7d61ac62ab8a5d2b849e86388dd03e675e37545984e4a57c068fd29dedaf1aaa6fa46d66a9d3c9f21acb5a58a8bb8a09dd818242aa2b4a2c925dbf33f7961b6f50fd76782e4faac6c339cb380338d747c0ef0480e91454b9124bd55d0e261be527865ce511f48bf2d68ef5bf4b85846dc70fd30d87bd13b0cef060b473c22be1a06331e20a07ec5985d62fd721b51981f780a7d1b5c382a94d56fbc0e70b7f28e2f8ee1ce9fa9f93982e631a3786e849c0c99c3f2b1396fcb8ac1e729e1d2dd92c2da97960a50ecf0166ca7d25b2f079288cb6b55594ba5bc3245608e467459e9ab2cabef3970f9b69c8cf03b26485b4ca4de7eff51d7838c72ab3e6ebf27d84e89dac787fb9d7bab0398ce3a944bc1427426936c25c03df9f0bf796aa9b5cbe77c413c3c83e890a14a2857fd69d0a0b6763875560a6f755fa84b229d06b131f39371a79fca21efa124ae8b504a8b3426411d30b1119ec83c5c16badb7c3574203d1f87656eff93338d50fc8a1e73c7e155643a2da93d68c7fcf8c04969715b21bec4294c4bf40f06829c467576614eb8adca7aa1c08614ff14d89dfd61119683fe6333d740ab37b7e22b76ffdb6f33210e30e719877c2486af8f8207d312af2ec3a89ddb6baf7811ef135897b19c697c3dc0212481c12fcab36a55bf755de2403d35d170f3b43e317631e23d3e11923613cceeab9d9e0004f6e6a73f0ec5d09d57d350b41305da1c9fb8bb803b8d4d9f4e1d14628a55ed6cdf278e442b68c2b6a3a2f60b4d3ffc60c9addaa502423cdbd0cd3d97dd5099e35b381ca4039b51d12bf49bc2e029d0933704262e88535cef89c711cdd11ed16e5378b07600e524a4c7c571aec4b01964c70b35dafaa4846c3ff7e3bc8384483de55275e460aa6c00f8f1af7290e15ffbccfee32220abeaa59f67656ad9b0dc45d0ca837d0ac182c1cd64143552e2c10006dca6cca9a853f4e6df66d5143f122cdb61fb65714d3595e7449f1a1aafd1a107f9d982b01f4c38826631f74ede6a8e921c6850dd595df089ae072b4d46d6851f788558fc33914f80d090ba1264e5aaa327443b9730216f083f459a17a811d726e01db0309d339bf41e3a11d783bfcc337fe9996c542c5af9042141ff33fcfeb3647175d9bf356fde44d755ed894bdfb5ceedfa565be176b13e41cdb20bc444233dffd4a5f0ff9c6c1b801d43a44197a00bef82311d772e81e6179bf0b649d8e345ea95e84d9f6afc9dcddd17fd163ee68531ec1b1a2072601f00795de6073407cc80fa16d67b180e5a60edca7c202056fed4ea28c5f5a641abf58a4643a73be61c37134b1e6a284efada0023146ac4648e8cd23af53b13cffe439c699cb96ae8890bd192a5c00308b6d61fbb9b019a1e75658d5f0c4fe2640b6f3fcc8f9117b58c09765b893b210baeaabe2dab5763c953bb9bbfb024a56898f03f24675a10e08f6e98e9937e7bcd5cca17d876492a2c549b7d55334038e210217b424340096a68bdc8b7857d314ca30497ef2762ab6648a2d59246150b5d56879a70ce1fa72359d2757cd23dbefd4614282b4751d343fed8112d83198bcade45a1e1ec6855439cc83d75edb105a53233974ef9d7361d51713117e43aab87d6bbab0ae9e8a7bd6309003ce7e068f8d0fc0d42996abf3c4cd3d0cb25028ce79758a5597fc27170b7855f3503e01b63fb559f74686fbaf787ead38b6f6e252c87820989a4865e01bca89ca7df5475b3f7bba4f89d56e9e2a40c93f06ec0652e5d0d7695d74a891efc510b84aa4be7e3b763ecffea316c3877c22b1be54bf57d8f8b3b59aae6e4853623861c65f2e394222986761376d661c249bec0456bce50633bcc2460134c6975f5d547056810c67910da40279b5b22056f647f72450c49d215a4e721a25e2bcefd980df86feaa5f310cd786a309c81cd85564e45519a94c85154a582f09c13771fe47a6dd956ab816b44997bdf94cd477632dd6787eb473a73ac3b9320e9d6312ba242618d7defbc6ebb5416c630b0ef44fab58085625c1fb2f0b9296cee376c27819af1004db7f01649e842f0f8a0eeb59b5275324884f9609e90622c84c6f8bd50fc22e155f3b0c372828ee8a8f9e253691d3196e9d0efb5c64a55127ed0232eea6bcb3d380ec1e1e7e8f46d877dd03bad6d70c8ad2462f89f284a6e164135dc9b3b6decb8a8eed432bf36b5cf0af11e5014809431aa4e34af0ed44076c240f2ec909ce1be1fb84956369c8d0c61a1cfa3bf16973c272f848ab3e403b75b87ea0f5c183904745750e803f2c0f5cd4e2d2487241310dd3234314ad0209b047ddb5c512194b9ef654346839a5a61d96e0e3f3ccb41367736e9376e71ffcd4560dbed5fdb9f9347cadf7de0135339dc68fdf669b3c5bf677efc3c3e7e32c12baa452fcee511132febccbc33083319c930f83c4da422d8b451c04f2a90e4f63c50c6cdc2a2535af919ef118d6576cf1c9ad4c83fb22193cc7545571638671d8408900f79c75618ffb4a00ff097dc74569d0a2acd02f1e954fe4b2de77f8030c859f2db2befaebf6d714adfb8f863acf40766921a7e26841d32c48589d936d448da8d92b718ee3216bb072bcb986591d730605c79d61440e31652bf012d1341063e774d7ea65b96abf86063ba21429649c4f55cb4d6628d93382d836395b04f73b771b528c15817b64a688e45c62bf9b765d463e380b39048f0390f745526b41ff787826e800701ae828dd06492446ea9095bc1e52a7a1730c556c8211aaf27e58c37c058db8d4f3563c850ae6cd2d211314b5a114e234994cb426f46683573a37543aeeae052cc1b3a8e1e9acad5a14b0ef323e7768bebe9edee87b707f7b14ac3f9f9f6bde51cae5b5ef6b77a2d1608cf9956f399d66eb6921468b33e8b8d269f929aff1faca71e02a4978b02787e72c3da37659794b727d412cdb1093ed33415b38fcb8b3868aad10b5b36349c1c883fc4eaf71b2f5ba5c0337d105646e5c27ba2977e565bdd8f8fc188ccb7bc179ca5845cfe9203dfe29d34ad6385578d42df7b61b414c22c41399ae4ac6738c5db344549344389801ce341752d4519a1e32224b3e9a5b15748214734760b032975aca131289239d4a0c9a1df82cbb1f12f362166d31b8a68ce247dc5774a4269575ddbbbc23e96755ed12d298b90aefdf107de365d91fee3a9f09ef4f39ee98c06ae3b2ecc6d450a97dd816dc14d20cf8359fd56604eb2550170a1c846113902541db9f8e749401ef644c5c09c70ebb52a876037f7bcc823b48ce7541da79fe12aa38279d4a38b480b97465ec1ffcd4b2a2ead4a1ff0bde41a310319a07ef300c5f1390ff216ee5caa2d8aff223d79cb7d4c49b49d2092645c9e8ce484479b0b391f419a1d22bd8c5b85b2d021080414c1d3ac48f726f951e3bf80349ab313c8aad01aedef9555da912be0622d2082ef5bf35882870e463467a3ed9dfb4b8ab8161bac6cd3e61119e8963ec171f9d66806d9b8414ad03e1ce0f8506f2a627c65c6fda91d74b8f8fde6159ec0f5234370419b615f0c4ac061ecca57ed2ff88ad932d47914630a923d5c6c4803805c35699ccfee0a9109a26fa556cf32ec205ec51ede0c7dcc6cd42975d0257c0ab7a53e94ecad8e47984f5330012ead599c178179f1b774e7f378e9e020330b377e7383bcc41ad767e6ca7aae4e1e2ba9a3154b22cbf99e0e2790b54a24f74ca74c50702ec4843f0972a4acc54c1e0432e7e2232485bdcfdfd32995cb87a28b2eb8e22a7e4ba83e2266996b0919ca2b5ac29b0fc2e8d66dce11c2fb353bd60e02a93420c8c1dc9da25cb1caff90a631df6e2b78cb4e4c651429b17ea9952f5d699eab2c67e6c8ae85ebabd5a7096487cab4d4b6101ba3be5120dd8324ecc70d1c9aefabb63063f36c5862ca1f8cad1490fd0856585721618ce6a50dfeca968b3d0d7b411d52011b693993397aa1821934ef1a8103c62973828f3b8f88dca9f166b41ef416d29a43d3c6a248c94925b0bc77667194164f4a0910d31421922043613baf1e78347bbec1ff9da7ed2a8811ca21d06e225c477b9888c41ac0d8d31f5b9b0c44869454a4dc56d0d81ae2cb4c67e18f46cebddb0ffb54ba02f349e0ef5495c501485c64ddf1ebb6c68fe11391f752fd5d4539e91316decb8b75c5ab5ac592c0128237b56da5af57f0c9046fa16ed9a239605bc09781fccc353881c26c2d516ed223358fb063b7672aa32a825f752985f33b7cd19fed5c28906a938475ab764183d3ae24eda7cc63b6f0d7136a0ecf7c2790deb12058f6ca6520ac898f2e07dc1bf84c88b653f631ed3d0055609b17a01867e9f934a52aad36c3da3a6b934c94db0031a117b3eb49f0d77139631676d4d4558da08f7e45e37d33e132c34f89f9c860381960a2cf0828fb6ece4d517bad55b35eaa5dfd3598b312ad5adf27f950b9794dba8f01c2e211445d528e00ef81fafc07ef7cb22b1813446b7fbca3f866cc03ff1640d08fd49cc9c14f5b43fb56673af24eff0cbd2a4834100cd7eae4de39c8428fccb345a30e2b058260aca37729cd3457f975ca7f5f0acc9a5b88436b695951a6e81b57ed20867b391bb775df3abd93026c47647cc5e0ca5de20c2251cdd7103dc8b00d7adc297ac00a8034a2bb809e3e5e998a0a9cffd07c5e9ef8e0602f85b1608fdba4955bf4666fc30e7d6e5bcea594cf51cdda9dda4f3736cb240ac557a4eaeb8b34e1133989f53c1fbe7ea6f378828366af2bbc676f6f8130674571e8cb17c4b13c97e4121f545d9df96d07b84731aa2b60ccd7a61335ed4fd97c1402ba5885f434c2f44d3d80a56e3d17ab5678e84f9ff1b8bc8de78031351b6156f2082a7c7305320d319a7de5e0653b7dcaf1f80a8ef4b0818a68b763f22977228579a43a437aee4a5a8faee0ddc10f4376cef8702663374d86133f1e63f1bb5e8bc0c30f7dbd11161008f65aa805e92fce47cad52d9a899832c0abe60d35ff57e2219d4ae34da2728be6259b497e7a5f24c1f5e3216f745cdb6480b9138f7007264808b9187518055a1bc8266eeed34558ca65aac9e4976a6b26179a4cc47569a7504fcbbdb886643b49156d849e7968cbedff184e7f83b132275131fc919c45576fc50968289d18273d902db871e264e0abbd5398ded79ad475d944c8d954760599dc5b47a412f8036f8b1eb55e4864cf4d21586f4104b4e462741704168dbe7f9b4a5e1899542248f7b9f6efa6adc164ce41eead29d8b9ffa511c8d9b688dc38a50cd11a1d31ff3e566dc2e72c274b4d79c6de70837f9350578028cf6846f6015b8fd5d6a41c8ba2ba802bad8fb327c147d4310e687e764a22ae4de6101ac23e7519e507a8713951da7bdd70698d6f83081fa458b2ac5ff39a167f1ebe77adc899fe0792047307539cb927748212b92b5c78eb62e02ced6625ed292b6978dbf7c77a4a9c919f3c2b48432a87db54117890de8805907ee35d21af4fd4b9dd67ce9fcf9b30074357e556f81f2044860878a1822c38f615093ee76c03f08fba724dfd7407af77706ce85520b25d36381c0e8fbc6fb06f1109eadd816163e263faf02ecd143f2dc7eb7d215c2db72fb5879319665f70992d7c757c162858fcdfc5a6c021d0e3c520b5112279451352135a26e970ab44df69db2bd34d45a47d296dac07024dd455e379a04b2b21d3a594e244aa31d3389f53a0a423b2ff0d0f0c6533a3f083e404702918dbe260f883d8d294893e3c8abc4af3ad490d89ffacbb8759fe7344883165a561d264eebf8f1dc865ab076f3d6593913ac6f435a95da610266067dc76c962f2d029f5212ca8abaa18460e7dfe79f32297d72e180d624efae4cad4439b7533d63e58cb3b280a31a320357aca0ab10b9725e165a4201ef45658e810445b33c5ff0f5127ed266bc62a95e4b01c6bd70148f0878ef8b266dfe006a35a7a650ce3bf2cb10b7047fe749fbae01cdfa818beb14f26585a0af392bff76754cbec463bdf24f8361bf7ff1782d6406f53817b0c6caf5ed9bf0d1d182ccb05dad85c790624850e7669688b3f10778ce498eeed5ac935496850120ed2a1e361a9833ebade304d18b4b1f8fd0094af6706ff8e110a04c91067f43afdf27aead3c392e2668ec6180b4ca185d2f82d54c90c413852510c6c76c1675d0eda60f33df1c0ff6334bbf4d8e5d1b65f87bafcd2f5569ec450fde637fc49d7fc4c75939f43a23fc79cd62df90a297a577701fa0094f05aa1c2dbeca86230077b44f1ec6545938821c011643c947ffbdd544d829d17601fe33c8781f94a68d2567a993ec12237b1b84bb1512583d974a49912d06335eda7782e6b1155b68a72d77e8ac3fb0258b2d26a81412af429cd7603642dc5b6748a4f14354c2146754bffff9c961f6e77efea267dfb3d96782b5341d295816d13c6286b14e32bfbe24023c3d4416df6fd4f443b8b1acb60fb2f6e26e6c7ad0f1a41800d5850668b646e3f4b409b13a6e45bb514d231918ef1ef2b5847fcd46e6573b363b0bc304714e32687593d95b5f554259c23f9220b4a4097a425bbe5e1da650fbccf99c5e4948794fd74d9f19283659c68588834df90cbcc6840a2e96aaa845b4ed8a4027850fdfc533e8a6ae0f3d12be2d99a6b6ef3e22c6274671a213003c7e5893108eb4a2b2930cbc617e366f20ea1617f21b43c14792db85d47ec31232cebff00fe51aa89f4e1d98ea9243bf20b9711e04b7531e6ec653462845a0f47bbc931af8171efdcb3db43f5c74e9905fe430ad1f3ac65373add3f8568263836a5d056bee19e8a2514e989e3e392a0fc3115e43e4aece500b6e9c4c23ddb8bac2b76f1abcb15efd72577b0032173dd38db32a887a88e19867ec0c70247c3e396059459ebe2934490af65d4b178454e9109f9277e2bae86e078518bf4fe98e0521d0efadb9bdbb0e6717d7486897eb183d8f83e65cd9861843b8a590c265441d0c5a5923e4a05e8dc5c858a8b07bea3e4905f45e0437976e0b17194056072c380583cb911b255fa568bd9fa6f116ffb88dc83f225ec5594491395209a46123a6b7205128421a385c0581cca32752f5665b1050e0148c0f82f7ef5be629d04089bc52a85c813e9d55e0dda7d737ec5cd17787979fa834dd180f630c4396b826c3c19611af7000a49d14738df0e058a4e0350f7bef5cc0649e418848cd9cd82276b205919b1bc19a379a5621a5778a0bc604260dfb9648080b5a9005d4fb0b189c2710803ce2f099e091f312f37c379bddeb7d5a3485adba5a6f745361da05f78acf14e9fe54936171cb9b623854dca7e72de3fb7eef90145538aece51e02618dc331a0558ddbb36bb9f381e7db9935c30fe60074eef856e2338a9474dce892d1204b70254a5394545ba2df8a0cb83e7ac6b8da26414c60116385e099858c341cd69e6ba3d9b56151b7b66bebdbcf793e2d004bcfccd22ac7e00187d9fd83cd1a201ad1f81fb3f2e28fe0bb0b6bca53a6d0a75eea03f2ea3783b8e903cf858c47627f2399c52311ec5f77efb5a4cf4bf9d6a8ab4d36e93c60d1b9de2899d83842324b2a3a6ccfba933680e17ccf7df0f9457598278cdc524a8e2c7b59d8517c96e08163f544695f97d0da4d4e557f11e6df7255d3dc0c36c3963b0fc6e24b02a2c0995ec38cf14866c88288d2c29d1808702f877426895fab89868903c9d0a1e36184ff1218af874dffc7308c325a690fd6437650fec4a288761f2c834f5b4deedc2c7fc30ae564d20e08682968e0c0ba385176c2b065efb61d2bad99a4fad75f19205c02fff81ad165825e9c14989166eb95e44d8b9f12edaab5893cd0bcb30b57c10331d5df6dca975041582731de447a014b63863224b09d440fbfd01a4f5c6de79c041e9e8454c5209f20134fa1c78de6503a3d842a64c190c17c5d84a9a056cc0fd9f05fce2b9e9f3a3134a801cf6e0992ddf87630719b9686dd23224813df9a9dbc720f7ab52c64c3c7cc0d5bd503500b7e652e675374e0f9075e5d97fe52396906aaa64215b9d7b56ae945837dd2dd7a2086f9d9a4904c594649da73913ec35191f735eba39d34b4dfe1007e53250df0e09cd2b2151fec5e7129f934796b2d17afb1ae7de1a24dc62dec16200018a97dfde45163ec37cfb50fa856ab728c762a91c29907db6cd9aaeb4b9abace1eedee1ac1a6a02f69e1bd42b0f2cd427e653c34939059e67d64fe6d53fb2ce388a00c04a7fce9a13f7040851249c242980c53bd798028b08659b26edaee3d3513eead2a01fe51feadc0736e995ce526010a96c80e18df0245e691bed99ef1d1ced9c9299fb6ea1ac5deb4679112942af5a717c6c119f20e06ff4ffc4b75080a088396dd0b66ae15ccdd3a50ca2b5e9fb8e9e02d26f3bea3c7819a188b716c45d32491ebccb4a23973e0d21f997315510a9d8a0889498d600ca77ed811bebb9610cbd5d9e3732bb32ff9a20a8d22118b236817e544c8ab206e46ce3dcf57a2d74b678d2099777251788ee73ff970ed305f3c4c2b4e3f24dbc3edceb27d4858ef0d84feb06e82e47880853b3b6475fc90beb45671a68a657e6b473eaa56b59e1aae04b8f8dce28ddd7eb824fe453218b1477d3f2f13c94e1598ff6587d1aee1f8b41b0577697c1cd4d6a9633b88934d18a3b622f30e26dfae362bcb7380e67ddcdd53b34b20fe21cb85ba258b7f34c7451f9ade47a0aaf3ec6f8bf4adf4bc66b256caf75ffece3fdd3c6c40c45f6a9b7b7445837a491a067863875c8a2423a7ece87fff0989f3bfa56938f2a228b46f4c7d4617f1c0f64df9c0ed33d3412746529387d9d1024598b6b7996c75b0baddf473098fc613074511bfe28d8552b90d492d40553af1a3da04dcd2dbeaa9752c15e5cb3782a2cf180d3c1015ff464d8cfc4ef4c98d6937a0cb915f02bc216f60e19dea1aad6fadfede6ff0a991d6d5a6ee919bbf7016cfc4c6c47463042ee6b3ffe1feac3eafe497cd7a08555e45008edd640b8eb13b93bca8114e207d9540128471b0b31cff3f88dc0dafe39ef41ccf3809f9d180af6d203f82256ddb136db182007649f66148ad3e90b29a69932cba461be3cded25cebfb16228795ef6bcc4f504936ea9515a024dc0aabd9ff7bbe1defada7fd775b8583366c9b1f663bacc8eb232185f8c37cc1ee4c10c68c13cdb9a319addce970407df1c26daed2ca9d9ede780da622d6d45307674bbf9bcdc33d862c4b0c1275c2f187e54504b597f4d7dc9e01c148fbbb2f86b70a36dde1fa12893b23b1b790e5df1d5d35a4ebd73584d2cc669b05b62e447ec133eac8627a7f34e29b818387a8f7988ef8725d197f2b01549dbd16d53925d9cab8ac64175d82d42ca14c8d4ac2dff648a7803bd7c36d7abea7193c630961176bf375e19154ef84b01ad50ed58c87240133e3616c6ab050f7d5b037b0461cf917d67375c65bcf214659b1ccbbdee3d4e0fffa31552537bb8176c64863af5d40497849e91eb2680dd92ce3cd68b09ce349755dbe73eca1b815d95bca26207f64fca661433f009c3dec36a8753836fd86f71d1657c1b55f356afeccf7ea4a299e0d21084b120a77d55745cac1b47dc2c1a45e2444203544aa28ec0ec3ed6f7f7c778166dfbc08deb348840b255724251a0f395266778c016c665bf48e41c7707e0a15458deb4bcdd69d0fd989e6f434428697ea971fe6c7c0005fac7b1ef8d75802e6af656305c208f73ab5e9e08a07e1398848bc74ae03740ad69f37e4273165afc5a451b1213bcde46e0c0adcc538da993560f61fe6281af1343dfc2beede3a0a4b3c5074f62e2edc1d1967879c8052cd0bb2eda7d8c11aa7a4867ac4b833744f773c90cf0c9503793300f5ca52edd7f580a8318cdafc5b390108e906bb199dcef1d845b1288750d71e2380b606da0c7df7c59f0f0739dde9d46e5d75fb122ff8aa9cdc4dd84c826cb89942d7103160156f7968b0705a5abe3ad04c07464503877e3610e8403396ee55503620faef0e9e8ad13943df5e955cff332bbf901a16fb61b1f75e6d384c7d430b4fe968da6119733a443a56a964e3332758873cb3667665c7f2879e157524c59be555488d613be731d0474ee5ceb2b7154005b4b66c34e4a0a5bf53d7dc64c837731356682f62e4bfa4ab0e15afd404be6f06c4177f619ba3f37cee2a3d0e329771ddc4e6acbfab66ce6e1d4db8ce74c44a0bd780789d281d966ed60447e1fcf08ffdb0d48a2252746beb00b56528528c1c36fef34b2dde0db20cfe9907dbeab7f6fcbc5a8f1c9e0f530fe5d13bfe47192f22dce7195689d63b84b23ca039da7f08e323fd34304ae84e631d368b2fce286d98e37b27d5d5cd5f002db2fd83cb11f84810d7fb2df97375a689dd6c96e7d7c661e0f2b95024c906e0e45f377feb73ca6a1d31f29f152fbb82bcbfec812ccd6cfa40735cc2810aa47f6889277e3434658c7323b35834a2e79ad105b5d6e9b8d3173dfae90a86b47001eeaf94d30efe61add772909513f72a8cf41aaf6af16b1f57ef38db8e0dd7b4b9e4c33e36bc4d967ae8a4636eaf77330269b4604b81bf9e11c939460e76d4af944d99db1c9388fa0e5fa20c5d4c00037a21b5f7ad98c72b0134c9c49aff8dd5e950f88d98d21a28c8a5125510b38658c005020ee898b800ba01e79fd49093219afd52deddfc685b0a7ebb129d434708799ab525c584d03ca7aca8458ed105fc2fb8ece0261f3c227b97444977f72f2ad2ad4b6255394c62fbc5158974e20dace0fdce9716b1361bbb663175a1f5c4e749af9044e0afde012b0e911177ec534777704f522faddd5959002638f7e654aa56b4dd97562ad27a4963aab83014e1b7d40d3573ac12a9bda50dd1bc1b665ed9780657a5598af560d2a6c4598823bcf46da0189787367891bf0f5cb4772f6a75feaf3d48cc65b94d64a94222e1ee22ab208f44e92c96fa22267588d644566fb1d12fd13023486d627db1ba34be59ac4586e30af008f42597e47ac572fd513653f71c946d048ec8d9fa5c88886567a9d620743da472bb0196820681cd1c03abbcf4ca87e1a2248d9298a9ea806252732498a120204f71b203fc08492a6338bae003f49540949df304d9467d08b6efd117e75ff6c9ea64b35b95cf6eb7566086c80855b87dafe378a209835d3be8e7ccbc9796058d8aee7e235964bab414a0b1ac79dec318786083bf57c06a5f28f10371e8da627032da0764ba1bc6c4d0e6a827202e91bf113fb25209f410ff638e103fab8fdf480115f9d58bd7f7bdad05e72bb251945874b2a3f1a985e2c9cc314e9e7c12514b52f6ad11f2e2640d11f3753e0204402977c92b9b24ecab7a922a6ba8b47983da8a91d52d48c30d56865f2c4763ad0a1d77791687619762c4c4d80f5257db328ec156643ab0d56c24c6ec0e7074cbc85b286acd1e9405f202eda4f8bb40040ea067be6c6c133ea697bce570ec67d724472a1512a8f19ba250720534e71d163c34b1d6f77617fc2b46d76286c86a54d125c275e82a651ace6a3f0058668ed5028504f4dc32580570406a3ac445583f630a61646f3e925e8de3f498d29503939eea1689fff499580e5f40840b0610d2c1028f859eda251a8cae0f33c9fd46044bc80f52c70dbcd1891278179f02819c85ceed566ab494bca97ad554caa9bca84d56da0336c65c489bee4e4bdbcfff90ffd8137f9b9971310f03141e62e3539a43bfe65fcba0e895a2244ae9f0aa5ee48de734d4654ef62759d05b035aa45bcbccfab2dd280e3fea7fbb8fa1c278c9e7cc1cfb3fb4bc9b3088f0a3ffaacfed448fe6318c8df1a1397379fd398aa0fac13ef14f01870b97df023be562b5184400b20ec7bff3ff99040a07ba90a5ccd7b4d0e8f6918359736f9f6a4d1edde0840f366e91b5bc7ab7a4dac95359d9bce66a885007d5310f152c536758455222c5c2909b459c3e8b8ddfd1d56c439968bb4f104d496cb8f724134bdf50f5e5bebd182ee3c67db728e0b0122a0ec285a0ea64e132a0d48c6dd7579740ec31141f1b9fb6f358f15572ec22fb75ee8663de2bd743a6ad283b8ba5e92efb2e0be99666ddbf071416dbcefeefd186d81231603d674e668dd95d844784964758263c0d123afa090408a74eadb2b30ec9d304bf750e7c38ae7980374db9370fba0ba2c2aac204e84bf25ae8f097ef6c309b37ac48f60267795e2c9f3e4c53d674baf9ba893a543d18d24a23c908df8ae0eced7f18c7b7eb070aa9f99145d83725591e4675f2066a5c5b4508d731e84bf0a6669952c6bac07a2dcf615f4eb6d336a2c452b5bafa4256f6e4921f5070bb52f3cbbc6bce0f005ad9ccd0682ae4693e35cded153999078bbcd5db10e834e980d52de3c357893329cd0fa0d559dc366ede2e0d524b6e49032f9911266e3476902c1b2864537777b08d74692866541a0ba16c798b4c01cb9b7e21154a219eaf5880f184f4eebf1b8fd2a1f0eec4b36e48275b38821efde1282d242f28e8739234d0211a0b2e42346ff73292b9b07b8a2088e4868c2383c9815ceb89a4708aee7f02884c7068f795a0e40cbd652a1f6d76feb839cdd4667d7ae084c592ad71e0a4b345c8a6eb048fdb08f8fdb02bb0e86d9cf3919a3076f9d7c4b66638c1b5a602a3bc66ff259c9c677ec3fc11ecc654d6b4b9f02543df40d8e65a9d65aef850db2e3287ed671576a8784302c9d7fd38d99a3786a8e829fcc5ce79107242ba498fb47e86ed875edd2da51478f9901ccbebb9ad2198b7f0b95e79e0843251a98d5f35e31c63f65d031a3b4b46469e085d08a7f55f1eb78731544a0a6be33f9d24596c54622cff54050f5d54d92be44451252959ca4196a513ed8e6d9d8ea26ddc3c03b381b1c0382bd7907e57ea538ec700c7f0c27a3c63a4d87234d1eec314df3be621e4b4d18192ce6b6f9040209cddf90013f155b12002f3830802aefd04e86086fd12b08272ddb6fa236c0d97f5fc2e496529c9b0f22355df094a0af5c3b1ea87a4547d8c01ee35705cbc0508c0126a0d16ade5f24cc97a0cc66660a9f1d692f0bafb0e003fcc207c9a71010e1371fccf53251d63eecfe01432e61a48dc3def61735d629f1cd6f45226156577f651fe9c3ba059387dd33a781a3e2647082719ec328304fb133f090e1bce87d05ceabd62cb2b1c059ef8f2194d9ffee4f4c29a2d937b280d26d38adf363b23dd0970d640c0a2ee2ab2c668b1f2a7fe398a3d0e07c9fe53b2d8f191e0b7853d399428ac3887865bbaca72891066586c47e528b5fabb47ded1772b2c130da0e3d3099c3728ab2f5e2da3b19423bf3d0a9a9619876d4ad01e93dfbc23bcd2ad3e7e044493f93931daff2435dd490fff369d04a2417a57c6b9d2fde5da60e326ec88aae6b22b00e3c6e70abd6c026f219e3ac1a164c7a166f93d05c3accb3c97f3e4713ea4ab93ed08585b2c004dd9c53e6d809ed78a5178ad362d8b4df814f59e1942c4daa457b97e04cb080a901abc1fd55e35e6f74eec40b06ef51cf6846344ad6977ab67de8f79db5de15fa924b7d11f523a2caeaa1d60825c765317324814f3c970969343a59286e41f1d5b29815a68da76016ac0c98116db872d55009aa190fc52aca41839c786d69739c3b36cbe66e748dc8433f22ac34e69d1e6b9b0fd704cc82f8ae946a9e56be8ce483317f3d418351d0ea96aaeda91ce0c996722167924bfb8bd0f7231ba53cbca4ab85d247c0b07ab9d82cf41c810d71b884fa558cb05e170554f02adc1207fd0a89615638a7ed05a4b24deaf649ead70f623dfcc7ec2cc9b525a14f22b0a28d4d11169f36861c2aba3e6f414a9c313b7e9ed77ddf2fd415eda4b15ed846db72f4366216ce98c36a1cdeaecdfc2606c06f3bf3db7bb420bf79c77cd8fc696206c830bfa7c6a0a666546a34c913c01bdb628030f6812326fa067880aaa614d547cb7621f2995ae5b747674e1cd23646bf04489b7309eac5daf436742a3d28021b43bab60f1e2de0ade8dbcbbd05eac26dc3aada060b2a88d0f668e94e149ebec9921f2699e81383c78b1466c7e9f418c70f93fe49412b49ed1aab35764b41cdadb0f1ee55c75c481f9e2b4d304e438b12c220f6e8fc581b649eefa04255558078c4f8a7b2649f5dcfa05cb24a454e9ff2e115dfafe0edbdcc8ee3a1040907bdbdf1373c846d1c5a45192fa15abf66f224a93b5d2a5a4d30095cf4eba3e81e5be10efe9ad7b87a6ffdb22dafff8f84d4b60f4026ca0e1c94c03146b1b5fa43be1ddbe120df4cd5ed1bfa40c28e0d2a5943867bb19b9ed48a2e5d5fa16e718fc536efb0d38798708d4aa13d4b3bbaca6163b7ea94932e01112a1c38e4a15d8b92d57b1673ea0b72d489a557e082ffb246c86ced1c87df569380524d196dbc1c480479a1e0612a7b12692ff4295c7b99e48deecc4aa0ef7ec998d4916963a931eb0fb968bc0c6d4fc7be74de8e692bc92d71dbbc8d74ead2d1dade596f5b050590fc75386128c21269e83b6fd76bbf57231aaa0fc883286fd86ecaa07bc7401fc467f04f6d36006ec15634bcd4b62a8fad9636ab7b85234e6fad6ecb010b5a014179641875c147421339a483e35f2f08eec42fd6becfdb950aa3dba3cb0c81f7c889bafa912887d834139479c6edbf4b56af4c72447cff839de061c4a1429513f9fadcf7dc1717ad2fbe84acd997d4708f129414b2ab26568a99e4daf77252f8779fb4be94c57ff911078074a90ad44cef236fe4a53eb76309d6c1b639d9c20a41a3c80a9f27480d2344df56b6d3c8ee6780d8cffde1cc404e4fdf7fac4b1f0bce6fd2e4d54c956e0a64ae0efd865b4881424194327a31c6d38c20ee1e3880ef485ebc4a626f2ff24ec3b927cbc7f0a5f8f1c996bf5106c6b6396977154f54f1a870602197877bee6c56863d1549cdc4902cce180af9e8295424497793e8fc209e3a1f0a33432fade67ea2da3382d82453400a729422ad7c9ea3d3849c4afb7a696a39d60c8890ffb7844b53968adb04699bff8c6c0eb09171980c66a6fd75724f82fd7f87843d85d6eae4b1d9247f0fb49b42706ef31b0a932ff83885ea97d803007ff20b0d6f803e49f87da54f251bc0479be16ebfa0dfd227eb9bbbde3440f284f0d4266ce98c6782f7ea9b1319578a1a946cb30c16af4c1dc8af0f1725a808739faa2efcc41e2b636e0a601382fb697ebccdea0de8f6279aa93fb028c8d59ea599076f400f85237f85599935fd03a18aca99caf9f809a294b4528660076d3df4d9ca3f89d4a6f198558380c888a76fb0cc5e6fe99d227b03c40e20b6301e5266aecbcf9c5bdbe8cc3b973ff254fcea4dd8a6a12b97dcc01e9f6c91fd7418a1152ff838de8af128f1c3366e4362e38d502a16e33875928c492e4bde34a27011e4288f12c1291f927c7c278cfe8e922032e69c599bd3616d42111864e66b339ebc0d9db0f8826b5b3c8407a5a2a8230b102ce9e5f330726473d80d65bc59b58266ea7ea29bef7ee6b3950c16074980f3bc98fd7e85a5d81a8dcee60b2d645ee3e22b1e570535c6af552f36296571d9bad4c3100201516ac62a24ad77c84f34976406169125fa10a75f9e5f04804b321b87663f69a83c866cc65445fd7ede9e6e12075710756f10819adc50998ec55646a8627b08182a3c18b0a1335276e49e6d1028a245ca5cfeb78a1d950110bdc3c9ea1e9cd3fa367681a5b9a5c6d3afcb3cfd030e5ac5f582e82019d3102ace85547f0d628311997cd188cf48158242b4342c3ab97476ea92570b69226601bae70aa7a28f796d2741e26403e5ec0436a7cd3c2fb7473823fea73a451fe89db8d7b97b87fcb834b386801a3bdd7f7ffe2c30eaa88f84ecbcee5b0fd0ade5f758542c30cf82ea356d1392f2b83a09f462cebbe4d0ff358971700dc0a7219bb70f3b116710f9d3cd6ac336109fae6d960e59f4df770ab51744c706f407c42bffac9a24666af92dce1d4f125915047547b4c3c71365d7c45dd3103ccb98e5d00cbf2ec9e5969033fc9c774eefcd362b8001cf5899309147e6e89ed38f871904a5a97df66c53232439f019ece3c368b21fb3e6bf7deee66141ec7e6e482e37a404ee00cf4425e9498c5ad1d1030c718764aed84320a756d2960838a381b566138d3382456a066b3ed3005f9aeb785373dcd14b28085f870ae65aa32bf91045ebda0d2dcd75af2a62932035b06d7bdfbb357159ee570560fdabafe19955c8d45e492a81ca070319a0bf6c9737177fc0accb5a6237afaf65090843248a93f451f01ec23924cffde253ec1d231af342a34fde94d113bb1c3ad1bd0bee4a060c1fbb84c51b5493c69ed23fde98046d6512cb7ca5b56fbff86c83b734dbb2b2aad32d3de3308a821eb2ff76ac246078ff70902d5a636a3271b153e3c7081d4186bd5fdf02346e4a53573864cfd30c402b3b8d99b1226cdeffd0339b2a51eb1ad9a7427e88ef85ead2655fbef60155420add5b117d19d274ced1351f6ea6a7f61b257015bddc6864cd5a45667ea827164589536cac1363d2b5b3ae4523a6c508ab6b303c0da62e974af4443efd289403a3f8abaa8144960c19a4872aed583680ae5d4e7ff72fbe5887b4ea79904b0d120b288d5e35c0a45132f8032961e93f9c1259e2e7c092fb981ab0d3208081e26a174ecdcf994875c4815a5f67f25f5c6956a8c898c18af56c5ab775390b2484a2c978356e350fbb2cbe6b59892bf4ecbf9213bc22e7006248c4e20bc7c9f091ece926a38b18bbf369bc5bfa92f5fad8a435a1e287ba058fc1cb93752718ef0e3c30ed0a514abb4a6a7ed827a0088c6b397ff5a8cb8cc54067f20dd785aa3966aa2d65603eac68db76531fe6b7504275459d81e4cfbfd1214bdfbb0b34b1b8b85471cabd282c8ef445d3e1f5cb653a2e349b21f19a9676cb59e7aed2e2a1ac586204b6aeeb813887f07acdbefbfd094993fef09da866dd53f96d0b73490bda46bc9bf82e8ba9bfbdb95d929e4719e09247a8a4317ac9e5c5ca8e3e6ea871862611282d283d96af82d6f310ce5938726963e87bc89326c9a458b4638d98ad0d862d0ca3dd89d509b262a709d93a8ec3ca1679e70d84a235f34ad66a2fcf2c6333fad5a243bbab3dc3af6073d36219135def26c35d8e2b0c55f27ea2a2c7edeaeb88d63e6f5bdc2ad775ec0939cfcc06db65ca39b6f9f7310690963b1e286071721aee800f265e47f7dd2d16ab54a3cb93e099617fc750400995b9767d14c2d841a04643c4be8fd09489d5ddb074841cbff590c0740f4ea372ce4bf0a541a0f545dff30cab7688485bf8abd643721a38705bd82b36cddd5d458b7c44572e7e7cc8d87260ad125c4ff6eb214519b47a45411afb74e4061ab0921074befe73857ea3999e209596d5cb3f5b78c412a24ad5e91612dd3ed8973db5b5dbff00223a1e0c2119f25ab29efd8ea50225e4e62aeebdd9f7be07bde170a3ad652867330020f4916afe6d4b89c203644ef294af6ac9abf48836234b18b5703dc49cedca6ba1917f5842e855bf9e379dec585184a157728f77451426efd40370f9d3b5d00088adc3ad6cc90b64228494c382d2ce72507fcd748421ac9ab76c3786f6c6c3a3e21104125990fe045b71be2d9e2ae43254c64d57cbf4b9771df6ec3132d95caaa721fc9f93ab95601078531504c2e987ca6b1ffaa9407f90c6ddc8c76aa1c7558014b58e7af656e6cd9419dac955864050329ae16767e87353e23a8f461a6f04a14eb428c3346a680f79b8e7b32790a36476a8eadd69abe46940e5d6651f9617881e8c630787643b527b59df949a61359e2287bcaf3c28964a94f75124ce19336cf009025bc4d5978145f44e798093192c7836397926c42350d894388bb5067375902201b0cdd18e326f574f572fde1f8790e3ad78065790a79a7c1208fad7e4bf788274effbf1057720191c8f184b65f68cbe66d190ab9bb417a3f004ad7ea490a710b248252bb0de53dd686595f18c73b9afd479a573bbff4cc5c440d77639f9de780a1e9aa7e8d757b687b9e2bb96e81ad8f79a26ede341e9c94fc1fb40f67c70e143674750b7c4bb5e3bf14c532b65c58e021f5ebb584f8597f470732d13ccfe0e0917150cedf4274a7bc6d1f94d7c5251af0df2bc191a77b82975638b7463bca3f4652fd5fee81c17a203ed81bedca54cdf03c69c14f22a636fd33dda3268d3f0e785cf50e2e8d2764748ea5972d83942e25a7456d56e1aec50114d314e641d1c482fd4de8e3d769564b474e9892d41b7b81408f914a5aad9164ca2625714c44350547cf7f9880dc50e2a0b512b4a7b02f0d85b6a3058e90fe0ecfd3c0faf9d0ea12e240e8462b6ca371166c7a16e836ae3c8f1e12d88952686b1a4bf9ae6ffad1027a290c07cda4e171f9247b4152d2868a354c3f96ba3772d787f1b28dcecc57fdfcd751d6646cdc5eb75ff97d74412a160ee343021a9b1dc02d2abae03c502bcb4a1939ab4a0f16df02fbfeb95daafe04f02deb14a3147a10a9149c17aa159a006282948b64fc2056998abf7a6f990c7c374094d8e166e3a8b1e4f1a5e54a10c2bb3b8296d76b1f5b51ad34f1432781e72b20a0a6dee6bb27fc36b19cf5d7d28beb4f33e6e942a5d3127294f79572d2cd87456c59d4dfcbdc7e8291cebadd6289a23f533deabba4c41869a1c46469cf5fd4345619047580c699c4940f8081f98c1541c7e9728433743d0b411e160b89ecb0546340a7708149ca36a5986c7861194cd2fb87ae3781c98314e4a0f5ffb36a7db5a4fa8079dd6ac3fe6364deb691a73c3d4966f55601444aec366de6f1bb657f0b576729898eca5e40d11b0c5554bd3664bb8800dec471b1094f575f9a895dccdf01aa7b21e7fdcc5eb017919e3b4fd5c4cc9fb67bc16b9441f77f65740e742bb41f3e3ee718063786a4ae2000770742506c696fd13036364fbc671f1798af10f3f2410ba89fd5c368050ca19fcfefd2ade22b3577fed5861e3fde0b9c22ec0a6d641e294911e2de6d226ae36a5751dd599481b0ae340d1a01dfdc86389ffcd00d1fa6f3284c47b91c565619376217718b119fae8992ee49d5b625da374e46d9349414fce3960911a4477ac269f608d3f5905d384ec446096bc5843b412fa375393211a76fa42e56c15666449f9996a30ab560667cd11b572c664c371e3c8882d3f7d0f5a608364a6d976d966e5cb63df3eda6b1a3e58dd3a4c2ceeb5b77c8691a0c196e5fdb858cc749bf9d998d7698933a24dd324d6558c9362936b731fc671df7e99c01d097ad29eeff655094cdb3e5d4e2772544cdbee121bccef3f59266bae90560485762e181ece59585f5b7df126100b1f27904727bc463a7e555a3c294370af7fb3875de8874d6ba8729be6464855159d3233aa60e0c84118bb8790a84a171be2cad61e3c8a0077b2a1bcb830cba55cc6afea09e18412e72e4a60370d3f5e4cb65cd735cbb52832920b7e91c7a208b37dc3763a7eb50b352680230e2abca13840331749e856912be3b4458badd5558bc5166fffb824a40408c5ab6bc823decfaf93b0349f7785fadceeb1950b97e517acb58c2824184710d59a0df087f48d574ffcc5c41541dac549518d0dc9b8affaf8983b186ea6f7e7a31fb78becf53f05a970db816dc0316e74907b5faa59468664c424f963d1d9d06e2f86fe3911afc2f5dd832778d298c8f3c4696a9672ec47c8f9d74b3174ab3dd47cd7e23d1fcaea33b9f93e6bc7bb6c2d98995c9fa5ba030a8f1cd79f7e49234aac4a8c7c38ba22bbd29a432bfb6a55740e7101c854bb02392522d39a53058072af1349608973a1bbfa04f5ead91fbefc50668bdcb07b9bdefcb5f0de1062e5a34cc9b41ead22b93eab912805c75c9682b37e1a5b7893abea25856ea7cfa8d9dc39a1a37ae228181add602133f0703aa9b30e828e84dcead0ca649a0dfe821997408e5c50dab28891567841d9a3fd5e27e3d1812822d95d2232fb124f1ce011e57eefefb3080ffb17b524541357d7ce6135926bf3ebef600d75ee04fcac9f18182a2961a334cde5482cc87385ad4ad8c2367f3522af07226767f7c9b54da5a13e2ed896311c38f9390896bc52d3d34d48aec3003459dc89bc3e5bd93f20396fb3c475492c5359f46d78ddbc53d4533474660e7027ec8f88079cda4a40e98ac335f69862138b0280591ef668d4a02dba5f168eda74e29f250fe804ff0e0f0c1cc42f1bf7eb8ed71be1547edc4044dcf6d0193bc56a97285428feb45dbce7c991eaccee31a0c52665222dcc70123a65a54f0efee2fe698c750f5bd30c23e93aff1c8401c84e3d14008d0de3502058c5e3e46d69212b2e67a1872a383a34398ef8ee4c53ce181b8db89a56e11d3e327ba9f559a624d2a1c05026b4ad884e8012af6f436034b7b1920bc78a63ab0a86d3a1a69e762da2c81e659befa040c4b861a35cafc3ebf8945454e35a2bb4b6df7657a84964d0f19092d0dbb76e5d0b893406c52a833a2e9a76fb2ebb9b658d3a7d349dd0d2b2b62aabfa177bb35257b76f828fa6e9e62efd5978a20e02dd64883e5eba9577a680938bdfba7ecdde970f4b6204f6cf54fda6d24027d218cbd24ff63b14e5a12e979fde6b22b33ae8d3e64ddc9f4fc96d809f77190b17e01fa3da1c6ec2c5459a46195ac8c9f6d900615fe40cb342f712b4fa4f2c3f62db5e9a11181ef004de0ac714f083988acea10ac25b2048ce0de08cda96b7ea58a19961f6c9989b176d49248cb7bfa089a099d6d8a4326ef6a5535084bf75acf87c5b4c318175ea10725a7bcecf83baf32f8f88bb821b93c345bd5d845d839a3fb8f27ab91f65324c0916a07665377407d038ad7b43b225e72a0d925354a897a204993193915494548b2ece69bc02ab077c2549e6c0efec0c30795dffe8b86baa5d77ccc925e63408771414855c9fc0d483d9604a6336b8d977ece19c2b39806b591b08e979d25f4f97e6e968bff6ad7adb4b4685a5e58bf0d7b4be979ae15deb44775f101356ed603e5d960ba26186013ba6cfa0c39de500a91e335f132bd3a846baf158364a51e54cea36795a1ff1bb5cc32ba1ee7d1549f8b1c071ed7d7eaa02a549484e5063511c46356ea906cf9098ef4af0388224dcb55fb81673125564878a79d92efefbe780a80c2618185b59ac97cd65e634d3faefbb40bb6ed8b477f1bfa57897d8c998ecf13d103b2918244485dda6f9a0069ee10080e2168a179df7ce59f5d69b5098f1638a66008100d4b3aefcd4edb4da09e40b6e1e18d42cbd66e8c07aa455e1ad76a733cd31613da03e6b78042b7685c3822c27bac36043bb9dbf856df25d721c62139c3845e489f86be60cc95c28170e896ae7bdce1a43eef20d1b43b138c94a38b4ffd8979f5a7bf19105acc50008a8a426f3294e61b02d0714af0b7816128e536b1aee0dabd34a470a517564aceaba33642e25f4c3ff3673f927b5e5cd74501cf2b1cf4cec6b25b4252fc085258a214f7f8d55a48a094e5c92364c5d708df03095079d9f3cfa0c8be2cabe0a230425ce64b99af8181e9a9ba3d2c5d8452cb19e515255b7ba81d60e1b964f8c47046f093b28dc70e5a998ac8ed2200c65602fd809f7ec3e825456461aece43aa1b72c6f6cfae0acecc25d72c90f37bd9163c37dd3bdc0d82263fe0a22dcb09e5f95951092bc12e55d65722d69923ffc022539a7aeaffbb72c5cf52a511b7a17e9dd1d4d2daf2c50ce48d2f60c62fe443755cc2f0b6a929a7e4c5893d2c51a23398b25a85a4ffdd62148d1c1c5c4b27f0fed7723284a3f3fdd85db2666ece7eba5287da69e37a8306b9dfefa1b7ab24e22a769768005a567c2fdc5f59de7a6c79228636c91a1a543fdc5d1580ad0a7b042d4382c98e2eb220f869ab3ba65e883e504439580937cf48b1599e475b565767a6302fc4baa049be87d865fc75b5b3ee0d0841ee8e6c61c0f01ef758deee36619fde683bc9585ef3bf8ee2188e521c9b2ba1f1dafa07a092e7e7805188f66ff2b0e6ab28aa08db6a1326c23157e36434f533a61ce94b1b47e9f0b6aa6bb51ad208baf37ebf2c2631611f68d2404a59ae573515b7e6ab7fbc6d9e94b3df3a8b7ee80a84843c0a5b0d5a5816603a27e422aef35ea406c83084b55224e84c5e8a0433df05e849388b8518ab8fb7332e0413c77bd21b6fc847a8264e4709705f033cbedd42bc020dd124acd4b771dd65ae6d4640bf640fccc3c70921bc49997c04c9cdc95a4875a81bac133c43bb289691603f1f86e9e681bdac721d69d6feaaad36549e8ac2d0a58a92d2edb5787b734df6c59c26942981492a5745b6cd4577ceaff1f398937eaf9aa588f8652b9bc1e6296ad3e5127a025db16ec209c6f9511ab7259158210cc56944374c7daf637787f0cf709a65586301568c5b9d819d591e00b54a546d074a2557d503f27a05d3a713720fa72c6ca76799639185d752e19acc9fec87ff9af1721a8533fd7048107280bedd6cf6846df32b8cbffdea97ac6d28f05d7f26b691372e9f3dc15a0235c709e84c17475ad3303b1209d49887bc90cf78433f514f12aef3cfa0957bbb24cff5409e5680c5ee388bf1c8d522bf4d34015358360f16de7e470e7b0d5852ce6392afcbe8671d4c280e544c3fb6ddfef7e6e91901ccc9e4a3919f7f4608af080ee7bdcabe322deb99485cff43ac49abd7b7f6bf0fb87fd6dc1831f3c8c8e20ac528debf1465a8364b20fb06d633656b1716d1b0df3e0e981141a41dd0054cca8b7e7bead6316aa8523d395948276105ae8eb4391fddd0198f9175a1e53b4446a5a6a67da6454052f47b0d37b67f07b4bfa86e7c8ef92f8cb8a7f570f76b361add4a60bd03ffc8e92c4395cb0d4c4c7fb0f01ece20d30e311945589786f5e04dcec395907c73ccd36c6edb2c799a894594a27e301e647d0a30c5b2f1ff37620b848d4370d49613f7180563b3a7d406427cb9f38f3fde2a3cb499689c4d08aaa2e9bec9ca8be69f4bfa61855ede9863c8a071448dcc2ffb4f5bad26c580bb0ea63b3bd6d24a12b585150d8e458e4e3d03a25d4ea9325a040bce3bc5739ef0cb4e2069947ed29fd9c7d5d92f31edbc786c86b1862804f20d8f938c7804beecbaa0eae9fe38faa38bdf98cbbbc259524b63c5b0b43a5f68ae8eb17d7ee00facbb2edf564578642bf81786ef7a25ee7b0c4e60f81602bfac69ade7297c3bae45d0323d07bb80bd0deba5976b3b14b0dd92fa1a0573efdb6b028407816ed37715d405e0bbd38dc0f040ddbafc90434bcc56a2dfd633a1cacd7631d66e137b7d188cc79295aa31e0da0bb428afe81b80419469919d181fb8b237c8d81fcfca992a8a54e0a2ee4b640d60c614b290ea11f61fee1a46e1d53825b55d42d6c495534c6c41e6a8166e8f9471f788b954aefdfa51fdb78f96d78e79da5c7035c68d5aebde3f6fd7be2e0b7cb15e6498e09a59ab52a5c670f58cf472ce42c0638f1a05caa5150a80e0a401556b6dd7363ff6f72d54f83f151ecb68f2394bb56a3193abef7c2c43d6ee25da3c35595bb50f86347456454df944557f5ee180901af4f8bdb244b8d1ec25aa850ab7510e5de112fef008e52903bac5df7f53a4e96ff01c95e1f05d3b60ba934ec6642dba786825e4ee7238d2ff856ccf4e2a3a89017631ca2be6a30bf25b21fa713f53c8543c73e3a9ead005bb8cc2f873ce5298af447b64bd908f5e1eab39d3594a9befe681e4e6e375474ca7f0a3df564a01fa380262b0c2ad65952da49b3b67d999a3368e22cd659a3da8a624b115fd325c03c500b387000b8064a85374ee1a60b74cd687a5072f40359b3206a80f37ebecdaaae6f20e7b1d41fc9c9792b766132637433a06651ab295f6332009399d4c3f2c670c8f011f095cdb07a2fe384ec9c54893f13771d1085432f50c065bcd04108c3becf7f2d797a06ac069995e941d44ee0500393301a9f0327c1a80deadbfaa8bd6da1585a1d54ca12fa1a2a2998be8e1e649dfcd2b1c77dc35992b15e9e39dc4b5d094c0e9d4ff15b56a94f21fc1064a99e426cfebca12780891920bc0aee0469e83f408be9c4bdaef28b4616a4e59ac076b1b7ec6d62e3b5f8c02b75ea524b2e71bab238daf7973051581eed19aa3cfa6acc6844a95f0221e03414a87680027f1abb060e8a388321d6931f39afaf9ec21e01ccc87d855d7327c704e45a961d977dad25556031014e31a11a8df993421f3ca8809177db58b0b4417d4145bec1b52e8e6d266ceb00c4dfb7587ed1903ace4c8fc4583ed6fe9c477981174982ded66cdfb9a6d57e8a1fc0468c92c6fe4a5f5b5cc1763726a0ff4cf1770b43e75206eda963c1d05073ba4332aa066969765f99de8e5f2e129bc426d200bb97ce59ab511a8bbab43f07e8f867f6ae065b5cc4531a63ce528e878d555fabe6d4f4cc83338ea500f9a2bf22905f54c224a0dc1a922595a35db22b516bb9b1130bc71990002b13e9de15a8919fed6c7e26685b4936556c3fc4ac9b5a5dc36401300183867560045423a8b102035f891e51c8c7e8c858bd9259656af28b1e10c1fdcaabf4ee3ad887b5aa74ba95ab9e4df84ceba46dc5e4f74bdd9df68b38a718ae1f9c60c41456ad7dc8c69c75497c98a6c51ef694273ba0948cc39177e4af5d9cd9a0e2a441ce9dbd271394d733cce4e601af1aadfe0b420cdd1659cf809b3f055126228accb421fcd5d15ceed7572ad102a7feea1b8bc24b72e5edee7d8c13e1b92169918b7b469eeb71d059d055acc3041944f35ffdd5302df029935d424fd3ad619f72e83f93f914f5d1624e4b44b53f8c0e840046651ba50cc17e214be9b930a01b9a8b8d529967b59d7654d22300e2c66e9022587d5136a7b4f73101dc57841136a87fb3f1de70715a86f27fd40379fb4011ed934d735d3ec298c509b6ffff9bf1c00b4f5417906654eb15475c1ffe748729701c177e29b7ec6f082129422f08888e86eaaf740a65e6404e42cf5441d5561f07346a9aede8eeb84017c01d9601169e3f81511d0e54ad8b027d60aacdd8fade46a39a257810ea5361d68466940dbd7df3eacf17717077815bde889f093b979d89498b75dd8c8093441218f3868b66e8962555bd8fd1735d16c2afde9642a55fb4a614fa471ee7f867fa7898da044d960d93e137282e3015a34c40f1614c6d7e17366def590d51cf0c62df66ca7f1f416a99e273df15727fe3643532070d467f04e4b623ca604b2f31a0cefcfc12a146d4a03b3112fea12785f088d046adeb3b56c6f42c0b06e85ae339e1deba54984efd1999eee75cb983b625f48eb8daedb75e1ea19a24b0e7f8816428a95a3361bd092e09c9c7ce1bde07ac9ad9e021ebc982f3998ca9a1281264db6576855210e0aac4db33c1e98bb3bc274b56b7ad3d7792be13c997c0dd94cdf4ae425e4ef121f6b563c6f46af3045f69d9905305344a6ce4b13cb36974e7d8720c8a42a72e649030880df721b84656b96b80fc5687617930a4701b0ae91a328962df7cdf30042001f53c51488c19318041f3c20906d227a2ee6b0dc4aa6d7c6aee64ea7a73e70e41ea730a427b81666c906c0e34f432a85e22749fd536711feab16623db2e418104f7e7b47683ee478cebaa6c8d69a8425e1afbc0ca8b302c10f13adae791d38cfb10bb4ad4719dbca1f74af78e655af9e6651fb8e13a8e1ece449dfa4f284726fed857b8cbdb8241484bd3efd70ffada1c5fd9ba59ed1606477bd4ac1a896b1dc4de089e4868625d80b782a3e1496b486bfb9a2590a8ea03f4477aa3617a16770261fd46e405875a702be1e69662c85f7de5d9e95821157ab0542fa25dad8577946bb1e8ecf1c42302f523b73c7538580c2cb2fe39f4ad1616056127b6d9d763d5f4435387a4f58e557f05a7c2345d85d8d53d521c3fe1718cb0d50a365f14a7e7727276def70966f106041ddf3214523f08cfc167300dee6e487395c62adc5d03cf83265a910d6e8463fb118c18a1118cbec3c06a97dc499ee2eb910f5f607a391f6c7f312939915aa29df3f5ec718c007d4fde7ccae0fa23a82287e1f86d335a8b9273b42810156d0156bab04ff141273cb00a449f8e31c9fa717a22e90fe80a566a4fb1ccaab0e465c4f6475a481cab86a2b17a6726587370465d002b85b8dbce22a2c5935af0bf89e820f2d1870df65e38256a23ae47680bd71a3828e07f6fdd41037a7aa90b6c3cab78db50b5469a6d8c15c40db66c1e94af736907d7907848aa2124ecb34e2592562c6b692c466433b7a122492f9a8fc6e61183d729b136578183a8dc7318f1e407fc3634365778aa716e0da28dbfff34f4776fd492876904d7f43cae8b9240241cd1b453ee38cd46534a50d35226ff5bfe3d369f13e9a98478f1fdac98c24ce5301e5fec42224c38da6da3bc31e8cb27a961351c126b59b53bbf1160b81bb76144bf0dc9042a035dab7edd578eb42bf9245680dec09cc32c824c9d2901d353818cae3bcfd3936a138530413d39333762b038185dc74e6a7d337ad7af7dbdee25070149e8e6c245a11c88598a4a2285ccfcf067048e34974a822eb2cd59ce0f2ea22c4539afa886e4149b629cb5c70d04d427d6ef18f39b255ea34440b392b60bb52b4b98ad9b21258431bd5646e93daa546ccdabf92ea47ba16310d76eb63cefca859db849231bccf0238d8cbb759782053775823faf88f383eded5a872f9935fc83611e11d8ed32763c7c3bc129038b49806ea9b90332d3203839869eac3467ff069430a907a787157e5622e29daa98a0943033654f23769d9dd485b48ab1cf78b5b4327fadde20f71c1ec05c584d6986037899012ea56d3212fa15608392392291bbe4bfc5cfa041c8a1b52079569311ec69e0af7d430ee21f3b0f010169c770559b0f36756508a3d5b956146d2dfad76a1d91ec12d966e1051b4c3043c23adcb58c0644794ebefed27c3defb11a95e0c70036aab920c8a260271b4f2a2415b05887d921f5dd2028b4360891e7759bd47bb5c1ecc4b8c60fea02e15da04ba5a08dc480e305512a9d9509f180af8fc4bc6f4fe23aed54b64abe26ff8703fadc29896a50eddb23ff40e61c6fb3e54b802106d240e242717441399471953d4bf282317a2e35e70e3d769301d0aa4775b63b1f4ebcbf2e79fe63223af43e7514133ccbdec342a097077cb1a36ac5decf3b3b13eef990e85bac875dbe95aa87b661c89d67cd3a3022e8e9ae2bebc3d31ba1ea21d7e474032a26a7cb80743d0fb4ef90211c90a668e9579609e7d8f653be7023004430c5bb34e77b4900fbee62f5940d89186d0391814d4bad62e12c2bb536bf45fbebd8e382bcd0a1062bd0af036273740dd2c348c63125ab7e77d737f88ef50cf0a4ea932d8ccf657fea3c6794ba9683ccd941522ccb918f38c78447fc7d554438a983b3c97602501db12cea1642e7380afdc9da655d09f5b13099c08bee9d38e0d398f09317d4da1f1b9cb93ce1268d34d63a421a5be223b115b61ca1b8d0ed8b55afe2e3a73743ce9ebc6200a584b1c6f413b97213482b1992f344f3e9410fec43d1d949217507fac8550a42921d3589a0c535397830f7d4c9a037730c3f918afd59671138a4d50758269fbea1d5479af698e46eddf984449125132ecd1ee4e8d859195e784d03df6dd9f79ec503de52e3272e8acfade93ec9d756b3114f71b727a8be10ed5239b725ee0354ef29d39aacde9bca4e52c0d94a4cbd2bbdd133ad1af44d81cd3dbc58d3babf17b76180bea05894281ec9d6373d7635c2c1e9b2f6928007560295c079ccd81e732257dbd5b83b4455626b052361066cc21fcf170150567b38a0501510999e1140d501258a7af792b947a39b7351ceac847965b53f7ad35a7f2c0cf4b0e0111743e24a9abb9b93a5ebb17256b451b39c8ab7a8825d29182de35b517561dfb1f61eea2cbed82fc9ff2f2c9fb0e8c081fdfbb4293c062a5762380323057668eaf3915b0b6adcc85e2dccbc043ff9490056e90433fd748875f0b30a264bfdf52734fc283cd948ee6b0f14b9546874f2594ec6618132def3ea5577bc24ad63c02c7ce1097b60acb1a0c41ee5218f24a87c530976c9425ba534075afdf916f55bce6cb7df5d887a65f9e2be1705574d26cf117d6be500652f97211ffa63b19fb73bd009a5051e7f8042b6ebca23cc2105f66ee3c57463368208bdde4e03df090fd16aa0b49440f28a9a1deb5dd1cb53d96335033f9eb9dfecc6f821633bc2d5a4015abaf2be564349aa4f2bc89da0cf135184986bf173060a0623b51b5fa9b857f348eeb2c7c547693fad2945d23534b722388ea315880692316746054c18601c437abb436464af5dae01ffd5baa8550171f487d9f90c6f9a0d293b39d65c414c77d3b77dbee948e4872e61234ce1e89e270ce1361fbf64747e795f1050a5e459569e659b0d8fad71f6472298711ac5bd69b4384eb603634bf2e5971260913974bcb2249ae3fb174b51ce486693221e9a29ef13c50f843cdb1802eae344b3e97c9cac5ad8022be5a4053b63f35b9b2fa1a722e8991a7cae1cc338a28e2105d7f31fbfe1c3b04d94c31da360f51d707dce4311d79a6e2f1a114db3d31696cda5adc8402c72116112bc1c27749f20762e53ae092fd35d82f2c785eb9ecf1a492eebde5aee25bf5c4bc386561006cc766a79c326ff1edf90a0a5685e668d768d891be760936fc82152b913bb610082f0ae82562c63c4ad1497f5bcbde5e1866c3ddfe8d7690d223b6b97b069d09351cace359c5aa7131183a280431f885ff11b14b6c4fcd44579fdfa639d3c84a777e588efb5b596c09c32ec946434b40c6996d2da561c4c024b01c7dfec81f81bbc85720a18bab34aac14daab420e2428796689ff3b69bf7982cd887a5b789db1cb3d3becd190afa82acb0e94d05f7ef2f6f6ac73053f87ea6e6e5fc9e13f37ac7f75a42b398ff2c6ad3d14d18d13bd4eec9c355427d27f2ce5a3ec6b71b8570959da4d4592b8e75a9ca1269b3a90a1f379e8d3e2a0f24922dd5beb40b1e8b899d2ce93a80fece083cc536d62338a1fd82a6c0205b25a33dda83d44cd21a9bf1eb873f45cae2c4350d4dc72623c4e35fc0ad473c2f953a75c3f30155707394c12a4a84b4d962c85de61015dc38e28d57c9c8f5e8e273511228ffb4f495bef42570b182a41c6c00ce83ea893c91036fd40870ad22bbf362be92de67385279e181d171f6bb8a8f2d8adcec01074df694289efb84610b33bb1da896fb1365bf8aa96c4e4628c27bf45e365f3725a48017e53442af4f88fb3c6acfb43f9be94cd8985a10b128aef8b9eaf89bb700a64c0f22a456b27e608ff8738ae769f51bc23f8341829b368f8e0ee07dd27afeb61d2bd7ab75f9cc13a9a5de17c88c160cc65875cb8fbb7389f03b65ea874b72a9c2c997ddcd2176fc4e15f18619ab3b0fbf1a281cf934542541c4f9099881c93acf72cba6aa8ad8f519beea21fa4a6760c2dd31870501e0742026f31501a1094936eae966f3431974c057137c4ae49a6d02deb0c43877c11e6b5dd7cf6c73bd3c93da7bf75bc68bff5956e9ac2385a35aa2a453c98c9c1b3af9ecbdb96313f26164d1573b6f6db29508a86d80fae4b402b9d26b359f8e72f88b82353133c2ef877fa18418e6abbb02c79bcb3d8adf6a2c5857f70ffcc1da8c7655a36a394215136283dc10f4f894190c98888a9099201b8e2a47cc57e8d684c2b83b5bc123a1b8f52384783438fec0eb733450ee9143cc5fa4a4b3d14427f69f809f264ff97cc595bf86434afdf19335af624746197df775b54e5e52c9726489960bea0573ca4c5e42e3b4fb62376c76b2d23b1bfdf353a4eb32a03f1c0ed324f300f92c4485f519ff0f29028ed2c853095eb344458ee5103fe58f75e26843b655414c83e7ace9f7caf8426207610ee68ad7c68d193f543d8b6f586624c3df5d8a27498278749f5e63a9a8499fbb3c8d0759fbcc2596fe7977a1bd529d400df434d5bbc9500f1def5d278c7ea6b09b45f48e7534bfb71e11474e928d223d621a96b5544751d416148914f1d34def3bdb0decec249caf19f107060eaf46c381cd41afcc8cde1e04fbe3851ea6fc2e91defa9662f300c0f2d8617924078e99337c8c33af483c54169f6361b172ed3ad4d1514f1cd72f0d2f6da99861bed56ed7ce8cb6a4e56f36a8ce2e10872bf52b878ad3c802eace0b68d737aefd1fe92de37379ccd27aa3fa79a5a196f2b8c4d1fa5237806c76378fe6612a36419f725a1a2335531c6170d5d568a8786ef1de70cac1e4c8defcd562bda22a593b66cd96ee60137ea3b9877c3069f9ac4e08d2a808828290914b5d4758364a39dbe35dd5cd98f720a606941ee1919ccb2a57159a863176147143fd7e0f4685540612c1d69b794e29eefb25dbb2c2d70b951d11bcd4d7a19ec610d69748ff7b1f66f09c432664af412c1efe8fcd74b7a0df1c29ea57de85de3ae87e6a5ac48ee2d911858e42417a0252a861a0622ab61d1c2d7d2108bba166300bfd32aa1bfc971b64ac78a512b2ffefde9577b6e6ebbe467586c160e9736d7a54f3329ce11c30aef040dc020fb7da73ecaed3137fe2648edf57f1f996e42b08d3a112be05d97b38970197318c6bc815ba10789f70f2cf88b31a060e448073a9f833a1966490c0292781908297cb7ec5f41b855544a6d3901226c73646e287baf55b5ca6ca071e4b8f2da0c5dafbf675f0fee806de7135efe7f8967d567f617ab85b8f7dd2007d2887f8691a1a72112c93a4e62b4cdf0d11e7fc5108d4f7d9a51e063e7767944f56bc33c2ebde401a2b7dacf5a198d284f339634ddf42ad08c6ae57e52fd044625ca68af8856f12be4a257d005217c54a2dc8e94c6827a6fbea5708567f3d14828fa1cc615be4d3134140113ef12a616bcf83887e3af3637fab6b07d7168636ec8bbb6c6c94fcae5df2414f13c006fee12453d347a6ead94e9df78d9524b003ee820e36b082998b521ac211844cfccceddc8145079b57007682fd2726390ac94c89911d16cb30a81b04f1b89c585699a9df70333b5c0e0b8a732be907c0d0bfa13d801e6e4db71da8400bb0380f3f8fe2616f73f71fecee11cda440ddedb2c5b4e709de3ea33138b057cbd0117121824a5396838f037b40fca128d4b1c28c8b10f2bff888a3db1e6c6b9dc9cdc0f2c4a3caa9fab406ee9f1a2b4ff384c9e98f454b5c06b8f48432eb46fd0ee53bbb9711e69c2a4e394a730fe10f47a7749afd56c7f759a5e41fb54e8ba032c07c02e5d19c28b7413cacffdb3c1878b16c664f505dac13f4eb745fb590261363014fcd99db1da05485356b64969b7ec79997c5c45f3ef8234f8afb6f0c226946ea220b167b689c94a14fe9b06dc9cebe2527be1456aaf2a3978f32463a006e8218e0b5f3ff268c0be1a259380f6ca58244f3f7fba4d4bfe5d1ce1385da5960979d8dc09bab5ad055b6e683bb5231116f8b44a0b0ca6a9aec216ad56dbd74ac3cf47939561763d38d62df54b6a659c03cee35b7091caac461bb4f874851621cf0b3e75481adb9ce8768e79dd06bc1ec7ce5a0f60ec8e37616591371db8df2746a3564c0ae63f7ce3daf3fb71e0c549d8a1dcdfa09fd8ca979c59169a62b975c1339ceb601f6d449e3b3be059e3d65ade7d48472bf665d1e1177506680890f15de5d0d2e76d331f0d4762d1b368acb7e45b1472fbf2f4219433877c7e350218035fef415fe1166e655ef4152e4369e6f0cff347fe6d2726afcb1baa2c14dbaa9247037db21df9ba35efb73b70cbf98f64464813a59d4496a8e5146b16ace24967d52f03d2a383810d1b7c6a42f5a3e3d1bf9b8d1937a246477821db01057d30d980996c0827cbfe9f66fe68e7c191500a07d744984a293b508fb490ee5dc8d82ebf8b57bba1e2033dc14633cd4931a9fcaba012fab8c82f2ea0f4c96da012a188f2b5c7ea87cf6dabf4035a1294e9678eb9140364ec237c6e4488d8fa446f78a91c8cbb6ce57fffab57c591764e279bffffd7c3ad21a14a01a8ae91548c7e8edab819f243719496dc6e2aa27a343c58fc4303c7b5512968f5aabcb3b10aae310fddfaa0b437a4d9107e04805e98fd5dad0faa25193931c826b2fc3e10d8b616b7682012c348860f8244f0806511dd6c3991124b7d2f0effe4670ae3495eafb65664f5c1692988f27355718747d7e37d8579631193cc143e825f2d9818fa551a65a0c5eeb177ca30b39137330cd04b955c466343f2f068863959731c2158f4f5a3a94950fd0dd4e237c036156b1c362ef21bb8e4e846bdd2adfdf1996be495c107f8cf6c9cc1044d8a86882d5cbefa7634d359784f8922116cc07154ee98e6e6fc5bcc7dbd647976ae61329b0490c1721defbe5521351ac8b21eb701f5a88d6f999bb267bba197c169ec1477a2ea10d33ed171ff4202a8ff4f124527cdac9860a1c54020a71058476eafdb42f22e06759cbfb85a6510442d755b5c1724073ccde442b3fbfbf5d7b37d3d055e67b7ef39ec1b6f5edb3a137c18c5b9563410e5a2ab8fad85c35271efdd53fd31cc1b9f16029b04a16e21efd59316895e4ed045b6277035d05ad167900343bdb518211d7666e6b4638b6aaad60012f0d9bc39ac4254492db69d47d066983c21f5779539e6587767b282c2adaf8a66776cbd050b5bf54d8ea43bf1a61ee6f6aa35515b315f017dddd4f2d12d6957814c71b9d9379cc57a08a66e7b23b5abe308553a4de77576ccaf0b30c1e2b0c3dfa053bfb6194589afdafbe13261cbfd2b0759bbe352d9219b808324618d26302c4ff180ad34bc8e8d011aa2a657328effd25a9f50835d0389510f16cc1c8874942612cd6b9f5d122ddc66012afa1a176cad740d8bbfdc06587dc98e8a3a766573a286ae7ee117ceb7c5c43e581b94306301862d8de0797c779196867723313046703ba404c31c0f1b13a7979d43eb329d4d5f62ef736bfd233a93f7b384da0e02e4a5be0bf7b67fb71d042107bd1d742132a7ba8965c19f5c54010330fbcee80f6e793cf6203f354b01d3f5b1df15c09574a0ac0f5583ba0626581aed751b7992c58d837d73c66079a64c240325b1d26b15ee4825d8155dbce5e28cb9b65fba347b1b8d97e6a76043ea401dc50a36820152480d6b31eeb189ab2812ff5e814622d1ae4e90169ff71d4c23c04945da368c9230ae7f47f00bdb069288f9872d4c2dbd73e2937a6897cf27d15367298f3454f70e706633fbe74db5af507182076203c2c5c388e4c15db0af5b89e16bc323f73ab9ad327660e887d3069d7defeb1ca3db3dac75e224fa335250fa35392423e1e43e703c6a37f66e53220b9643d51b5a41ab601f1dd852f803d65266044dc95a082a2e0018369008c372b23f6a8a94515a26cae84733ad2d386eabb2e28ba0fba0bbf80f18190fa22c951230fde4f081ccf20afade030fadb5b4b90fbe33fba59668b6a4957427009cbc3090fa0f3fb2cc8b32ccbab91a8b57f3e0b9fc3528b2026d91d35d2079e8da719951d4adabf52c5d9bf16f9b2b9343a26b5783086dbcc2ce353c3e63f6eb16f03138d6f2721dcd5c685389a18707cbd6bd7bfdc2665dd0120488b36a0115cbfd1c70291b5d9e64f99055c1567a91c1065893065199d155bbc7d6a60fbbe1ce8891805cfa54347bdac47c66edef6cb2e392a939b2b43ae4554961dd9031405842b9311c1344568dfaa0452c9042b31507deb785638d88f5498bfb54b5c61f0a8620bdbe96911fcf42dcddc5984f1bb40f79fd41b4af6165b038ba37d9dfcbe769bb8eaaae491b27d6c7dfd197b3a4ad5d4531419e6e48f7894d37a63da883af20edbc9e62948b5c17123db2086bbaa9ed99172785b941f450b805cc45fe71445220969dfee00a962bb07d210e285cf183bc3976c456d1408e34a7286a88e85e984f3f7296bbb50cbc18d8ab3f51c8694db879e0d293f2f32716af57f20d6d1cf600dab8d612d0be10b89e51c45aa2aab1bce4da565baaf08aca0f03b8cd0ce4f0721d1c20dc6d87036f89c0ae8e1ea2e0316657b26b1a21f4b6927704f3fa0391fb394e58fee76f17c198829d439394e4d8f2a3954c2554907b02f0109123e786ee2a7cd08fe33dacfb20904e755419e9c12c2bccd22dabc722e24d48391625dddaae22c23efce8096cd5a048b3833cf853c0568d02ca9598d086b69a966b48d64e6bc6ab461334473548d6b036c0df9d3057fa80bcf55b2ea7e1132a01f6735409e55f448bfc5bb319fef4b16baf8be69493c34d545920bdae64d8c615bafa59df6365d23a85f0fa84735580f1a2bd8d5c18645f93d8804240acc7f701a0c71726074a0c44daa01bafe22f8b8803d15ab808ba3af7b4d991e83f3915a8aac5540e1a7578cf2c178c993a434f35ac7b218f73e6fd9c275b86d48becf1e6c4796c3fea9e36b2043238aff3e5b1ec27d910695c36541b26e7055fadc909d10ddf6ddb6dde434c90bbfef11a663a17d21f1217ec30e22d751e9c888d2310b67adfbeddd5a10ecd8360b6a91b17b597d93a1dca2fc681f13e3c80dd6112ac0ae754c3d47c832e1fe81d270f4505ccc892c705cd28ee1fca4aa0ededf792a531afc44b61c60fafb3a631e581674eaf028e336fcf95b3dd007f73df0d92ba0a4fc364b7ec7cbd64cda9f2973e1dbb4947da73fef5e0bdc19f30e32b6794477003639eac5d88135db8af74f0410114525b4f1d1ad31102785876e6cc4648f169a0dedaa9e098d45c89bcfb9052981b581bab5f8344c8f1c7bd234b7ce53a209edc5c4869393e61d2d9fd7a42f677beaba700d8940c6660431f09eba597ecdedd14da15d6241946bda53a67f686a6294076267826aab578be989704261f29edbad2b201c9e996381b9d38864ab2ef4e4c130de019e58205c5f2fd3fad204a6754aa18fc7b56fcad84103c4b55d093a2d000ed8e0674e25ed1334e0e6faa3e6ef2396dd1377cdd81745ec6e8b8b53b3ae642675aa7e525e49edfd8d8b99d48b918cb5fa1931a9956e8e2ff45fc0a4dc7a574564049ec28f2a58939b8942aeca6aca159b2824a04e99f1ea0c060c2622154c33230eab8d1dcc21c2f3d8135e03627e8f409f771bd59a4c9fff174d509d0250c1dc973b03115b9e7f00974365a9d6b420f493b9040993cd350e02002ef0d42a21da3f821c8d50cb03512186939283edcb2e381ba5008a810a509f55fe24cd4c97a285d677540ea625a891ad05822b44710de7c95d5e4569e0600929c4c3364232ddbc25f6261574de2cd45de8ad5d67101aecf1e3b40ea5db97ff195525f440ff132efb900a7664efea7cf263a5952120ab98f2521e20f1ea54d7d48040eacf9e397f6c28cec33db1d7357f7171ab7ab952ea9d7b9b112370906972bd1e4a7a54372ad3e2a1a0669d954cc4724e79ebf99d2defd67ad7699765b55adefd2fd6e5e10fcc54d0ec32b60d888b7df9b30cfd11884dcbb9788cbaebf57e2ba523b640aa942ab76a229fd7b1fd46dc64338ef4e10bbf1e32d22d61bd703628db9a21b9c14a7ea45e54074ddb19ac886ad6fed5beed45e35ac7e87d9c97b2f82b7e27ff2092b46d33ce508673036c217a788c941abeafd6abf67788e5e6972fef51817915fb1fe7a19d8079fb6a9538467b1d485857e297a91b343b0c76ac54380ccfcaa9f0acd51e43da3f9d31a17f37baf8eac06e12626517810628a195e8d934917677ed863cac96979fad80f8777a3036fc2d99615c56dd0dd290c80c412da650989037f0c398a7b2ec53576360469a6271a3d224936243ad6add460044c92e4b3364a031b9493128f3eee93db37208c7f0d58d798f4ce4d729b98f0c2b06592eb57a5f3deb3644e92718ad7c98148956f1485f030699ac87a067f0992df70185d616f8fcdfe7149bdaf9259fe4c18a153e603e4bb7bf0564a46d61212e31f9cd208c5a663428c3c65692cd6e10568af3b06c6bf7f9768dd6a9ace9de31a23471561fd3f66bc04316282f170dcdc8c50e4efb08dfd36ad3303707ee49da7a85684a6aa08173477fabfd3cecd25b0029290be85ed1b733c3c1c38ab91b774e579fc7c198edf4d454850fe3390716af277b89b02eded0ab6e6d9e5425de74b486f46e75299c4d7b5f49051c59410a1c3c9839198a88fb1e00a1cf000e7819a00c2f38a290a35bd4df17c8270a101473e91404190bc41585480ce9ab968ec9427ed2b07bebf1b767a366047614bdc52329b1a46cbfb3fd0bd71408edb0edc4ad65c714402811c4278deb65f56197d052c68fee0ae6a9e86a2c519801b8f2629514f85be370034669341f879fb15032f179a14d5f6199f6fd8bf9af82bed3056eccb449c6e168da0db732eb91fbb80363012e2ba68290379f6e0cdea70a2fc185dfd761176d445a8b2142e2f480315135f30e7c0f5ba49afb3f064297c955fe7b800eb16d552c3b4ff7f0e932277df33dbc2e9f452162308ede42726002217b0ac79afa5f10181e7fd24fba197cae179eae213d9893760f6e67530dbf9786d7b9bbc2b98ab38f87caf7ab98d4389e1198557dbdb657bbfe61b0ddb1f3a96ec506a21f6bfbdcbf9ee802eb27558bbb1f15e177f740544688ecc63f41cddc304fda8623c24caed199fd21c6f8b0832c25ddf55d67e4c7cfb8cd2d23d16a2f466766db8e4d91a46aa209a3bc3767c86dc8590ee123538e083f8e4bcc8f436601f9abf77ea4c77a0fcaeaab45a0cf7f138852dbac42cadf69cd30d746369c4bff9bd0671f67759af6373cc11fd3f5d2ecc5bab080c4f318ee897d3f22be707ceaa3e6e7790ec525d622a507edac9d75e2c2724ce36623193260abd7d77a7553c4d54d5386291b87acb745c818771a50bc312d0499cde9b2c6c2b85d73dd5781ff84166ee43eb81c6bb9684b6a6e3b315e04669e7b7d3beebaf9689145cd419078d73d2760f87d8d804d2a230be30cec60af8055043c24ea90628904bd6a9a7121b16940a5202b650136a2a1e47a81c3abfd533a9e8c16acd96978f01722e1a7b1e28897acfdb549ddf529f5bc47519287c1bb2a59b80c1832bf4a545ab2b43a41df99c4ab4bf1d1ca9f1a15796071b3f410ce06576196af340ca305b6fc4f601ea5965f5c2f45ff0b4b86edacb3554fd54d466f5e9b8b5518ad853cc3256f606cea0ed832e90864e9847b267f61f1adb6337d1816633b6ad8902b95c2732c0331080f0a63c39a2e7ba5ad379c0ff0bc25b08ce8604dbe2dd6b436f1a0429e10d6151a7f22bd02ae39b46b83b9f7db22c32d11240a66cd90d951ad59076b46cf256ddbb372b01b889b15146e9aeb59b4eb5a0a44fa909ae66ef919ccbea8b13c4293426ee5d7eb6fc627800ed6808fb3a310f13fcc373b4e6b10e4e58d276123c8734d70d304e8202253aad2c5531cf953af8098a6df8b54b084fe0a9c605d7734b207d021916bd55ec7fe41e1cb1c008ba02f76ad16bca9d208179e2afb0a013ddcb6ff1a40fa7a0e962c748d70631ec23430440fcabd8bcf3f8401e5a6a88f4c04fa95ee9bad52e66c75fec9a81caab9a8261c10172bec867a04c1ad1711d020b5f4c3b83ee84723c1bd5ee2797c025ece07e425a0efcc785847ea81058677c0b1c0b5bcc1d069030e3bb6bc36f2c4571506652843e21c9fe4fe8e84a0ba0278b859e77ebbaa36edac8527f9e1a83d9ab62b35213b6bbba08b51cb3eb61716d2330d020233d57cc0e8a556b8c1bbab67a7eac25b3428aacbf0d7679c3b303153e7fcbf9cc4439b1dbdcba03a68713ac8fbb28bcf5356c5b3fac354e2deff8e08108e7acb15eee57ed76151d571352587d9170dfde008a6942083a65ef4a830bfdbd4f5ce73f30b40b1584bd5f7bf3476877042006e3f05caab71690e17e9cec813d54c91b885b701edb6a1ce1af0744f52ed48e9c48c8ab3244ce601f044c1b0c3fd1a9992b83c006d02ff13dbbb39d1ed494602786a98421ebc99109c8c7f12890e935f0ad60c176334af4d9dbf966b6eebb377aecc0c41d2ab107caf58a4efe064f672488e650cf3323d1c4d7459fefacce9828a6d1698f1714b2d7fd1a4e3d0de14b517b63ad4adbe17dc1fca8e8688f85a79e5de14f41c2cf0fba2da162929c707cce691b98921c9e86e6dae11554460748f0eb2574f9b9bc5bdc3b975d33d6e1da8f2f1f55a2e2cac24be5fd8efa83cd6eb2bb42c5bc2bada69dde8fcd9532a7807630eacf9645c90884607ae68af3f26619cf41d514d2c400fdc462faad1c1c17a1c96c8ceb1f898bd8ff11e4bdba3fe54864434ef31bec6f1dbd88f24f4662ddd199bb4ea25f6b2a252b5a93f57f3943c50fd221c49a468a279d6d6703246ff1484ec3f11cb2d1b80dbc8d560640ff8e638908ec531a586e0f81dcca3830657f184fc31f85822c013796652b4037fccd28bc344a0b78d87eb4e443b32d693baa0b6b3d311804e2cafb83bfd097cf8717d17143477af42a680bb0559dc7dcbe1cd061479f0d146efe43174442ac7efb9b5393d1bd92420f7acea00dd4d54e13d0f1a1f457771e69ccdbfb3ce2e40c7d6b40e3b06f23bb07982963b980ec2419d769b5a76d8e495e7b19a34cfd5531c37cc852b79088c0353903ec1d3c9ef996b8ec408c57241ee0551e886913d641d09ac8f765609e9f31e22a25861c1324566e6a145796d11d68dbdc9111bbcbec16ecaaa52bf27591c2a4370cdcdf1785fdf3b73410935ce3ba985149a2c1b4f43751e8d4b494978f5187f011dbd89f8d9cdd5c42551c196b9478f94481cbe18c926676f08ff2e4027dff59cd05c45489dbea004dadaa11dbf2b2c682678d657c841d4bcf35cf695b88e706df592bde90b1ef817786cbb245a48160872f849c2d5b206ff38bcee106b07d6d43cf02882a7b1a57e2b2d17b927550add87295ea35ebf5b97ef1b3b2232b2a5d47cc1d936a8f6f7e6feac295df6f936c2c6355a10ff89adf3f3476de24823f7506a8e4c05bcfc3fe769e69a02bb9b2a59f5dad7c2bec34fd0be54383a40bda5ffc0d4ec23ce88df8f3236dea601ccb4aeed8aa11ad1cb73638581804061703f084a8c64f93fbd5c8356a120f7f1876d97e9d867775f95a57a7ddc0bb52be115444df295621e321c4f68d2df9b155a6ed16504fa8587a40773252194bbf04181af758a32615a7e9d10dc4bc8768cbfbfe42e0444be0f392f1715200f88eb1f3fac27fb866baabc01b7418f3d6995d4d1af7d7796890eff1bd61d7d03111cc4ef2c3389bb6a029ffb893ceea9e843ffc1a74ef29b3b431166cb17d55dfae6225843faf6836efc0c5f225f0e65d0bbfe6000a10b243d3780aafe7ec77fd7a4dd54ec7f12c1efe60af95deadbd618cecaca30e088622a870812db9c013eab0b737109353132c4f792fb7cf74183dcde45040447fdb76f40e7d408391e21a958603699a16e24f04989c6788031016499515f6035ab392b127e878e5cb5d54cf7efa821ea8ee0017a1a7bfa5e0725dc7aa4897923ecee31bbc72df9185e35962261cd2d5403f7c29261fc9c37820fee0922a633eb0436f633300b32a53ce2d9f2f24f4a412ab19d10d1e995421cf9691f856c9f260ee550280a4307946f5199d78cca339f6d774e836c586e8e54dafcc5c9d43170a742fc8f9c16bb6f73417c88a35d8657e0437677e37285406da1a38020c8300552378ba50cb83591a96a4bbe1c6382edf9026c20b9e405135a2b3c5b76dea2c3a61466dbda4fe805c61dedf8443e4610e164639f693297e177523217a09bf89884666f8cf19d7197b316c09eab58d9f71f8e783f2a8ccc983fefc0ab1bd88e02bdea75c5fa1dbd63e8145e69c9070d72670503de2d0141220e18141bfa48c742e9a1ea7126610a179a5273a7657640f2f3f40624395133c20a1a60ac39c8b2bb948990be29a51bd98cb27be3ce9a7e8b1833babac9f53b670d24e3a4af09cdfbfb3040f940c1dbe2615352a65cfbabfa1bb31dea1d726a6a35ec582529d1e4aeb027314948e8c224102227babd617d43abf045f57fb20167721ba3d343cee4c22cf12b423d9893fa68d679c9a7c289bc501580cf2e5a8146b26c2f92a06c8d3213504efaeb92865299c4c2bd47e0197e4cf099968992d99efff991490cede0cdc3a440870b0f61e975063ff637841c21ec51fe92bd5d22c6e08a84b009767b1de087e908cbde4b29665b98ec62cb7892500980538543d32c227de4aca34b6c98cc3b93d925ef1312f6d3183688bdfe61c76da4653ce01e01893cedd7f8438f1c0ef43fa5aac5fc2e58110c8c6e3fded14eedeba5521b18bc4a1f5de6b2a75ab96ab8f90169225773956f62d15dd24e37463536c9ce827c1badc499010924b7dacdd302c2d540d6ba47b612c74c0edd192df6d48477ea13a643b0be95b2368548dca803d7129e393c2f48e1f79fae05c25b5548cd1b57b468662475b1eb19e2540fbff145d0dcd68b7400069c51b7e7d6f2107005668918a6f656fc177bb0bd0b27d23187867376a31344ea0ae702f712cb4edab773ae5fff200d9ffc16d155596b383e562396eb1d7c67628651ae41781a08c57de53247306dfba58bbd1abfe2f57ef30d96510c6594735f3f8df0189ede16cf5445c004389a63d3cbfc07b9545a339beb256921e698f097ff9dd27bc6eeef3746fab490f2ef16f34028dff74c9eb52d8fce20c7c61b08fae2ef88bb2cb45713a9227c2374b0350f199349584be717ace375e2f72299fd184c6fef7201dc8a4d48db14e40f53e4720955ba62b137f9c93a2a00c8a2739e9054069a030181bccaa4de55638c402d32b101d3c937d03b829df4d8df8da4dcf3a86bc5eb759a03d697636a8d318d7591b3330d5a6bfd8260b38b5d75706fabb99acc5fae38293497b073d959fc6b2d0d2f4a7bd49a6be99a1724fd9f46873c178f56eb6c6baed39198846302dd6ee85460ad67da1428064448764c13bb10f36eecd9621adb0fd026dce490d72989fbe8f4c34862d56dae158a559e87f5c82a19cc7e40218c535a1fd250d0926bcd7f186b0c93e3c4dba68a041cc752fb0ac649ee47a3c50a51174489e13e3b5146068efec5d1667710975a4b43604f313407e5ffeac8236ba57d0c1c3c34d65975918382db6e8551e7bd9281e61a5b6eb688c3fc2970743275ef0101b22a29ebdcbf87b3c9aeca5ee1d268c8bcbc7922be8944284de7640ed7cdc46f284ac22cbae7055c31c61cdcdd95c50d66c6b4f22e52dcd8f7fece2076608c53f56669c3f68ec795fad6b6d8022eeef94e43dfe6047f1de5676401d7bf0a3c1ab03946c0e324af160a87c678792491b7dd8ad5a6afdc31ff0b0345cd504bfa398e9a3b454ea72dbc0fce60b53b91009c20e13d870cb3027dbff38085f81955f10ba69666e5bb8c4ea4623423e82963bbc8cd855a378ba94d1e145e01687792671aecdad711b2cf1da206d69298bafd000ff002968778d14616d9ca7699879bb7d29b235102f4b986660f4a7f03e7e14bde499d9a039033d1bc710653ddd123ba4059a3742d120233354e943514194d7a27fdb4220a042c99179da106325337a011387911bc4bedbb68a0a2967e5f9b0738f2afb7df69fa6ad8ab562991d2280959f2e4af8b7a20e6276ce39d0afb5393d154d44b668caaff0f5912acbc561b77dcda6362adc398145f90aaa35a15a2b73e61637d89fc4e48c1ac2bf7b76e18b926270d9dc53343cf21ec339013adf1ac062a793d56a8b9604803773607313a47293ccaba5e3a6140c5fc6419e2172ed0d1563b31b6a919b700a86bf8e42e1f494668799a5a02b4940375b9b42adb912facd0156c5c3c7ba2ca09548b86f20b859fbbf64a05bd78ddc3594c9a6c0c676d727cbb2ddbdb8eefd9f58aece7883083406fdba5fd75852eef36d6bf2e896dd9e7e13f8b1eb981c6c6da3721a79f4168de38d06df0c19386dd6f336e214b40b0e0f5ab343939047ffebbb0c7e4ed3ea5bd02e3eccc07ce20f45ae26bef4318c403f73b32b033fb3048db93068857bab0cdd096d9444d7670b0ee28c6ab2238a954405c914a282901697333ddef6c7cbe054b2169df1830056c8525bf6d9e0abfc3eefbdc9273be3630a19bcd7ef5878fd329c1379c3a5947e030d8998c8345c6fbb7ce06b7c778ea07244e3015a8895b06d5ef103e3882c381a8f23f7b10b73bcb82182e8bb1c414608a03f7944609727ab8e4cf901d88398faefeffb63f575a0417a1da4f3c336cbbe02781306576be24157dc45e5ca55d1b32069b42c2aeb303753d794be6d8eec212b1cb5d52467b635d22e5739d65d30be594b39e44d10c872316ad527faad2e4d7de7f4906a404421e951ccd629535228722c6626b9ab9c054947f2ba7b660055a3d41e0cc072e72fe67674c420aeaa34317333b782e5d8e0c5958b85c9aac524af9caf373fc9675e0ec6c76d09d2b04e53a128c6de953906e64aca1efa72265c13a0eecd235f5dbbc3fb495b1804f1012e684f0c348a8d11228ae68184ccadc530dbf5c888d6c94c2c7d92a653c617246893a041f4782defa128f09914b3f4e00b6722056bbc9d1ac3d2554ba938fbb1565dd2f29ca5a91f809456283553ea124a1e1142fc3390715b206241fcb42f4bd9e9016ab5d390a059741394aec34045e2dd9ee6b9933e950f5bfed7598557fbfce78edc397325a184906807fb149ed54df08dd10a272afdd054085e9c165f0d94be488e47684f1c8503dbc9ece30fd5dfbc06f862682a1f6a1a26bec1cad826f1bcdb88d360b72080dab1cb0931d811315833992eb3f390cb0689bb00cc412506160173b747d4f044e14852a1a795173100ce1b6acc86820860b4a0fa25e04b9e8a9d37771a5aeb16dec31a5b1c5d339d25fd77f30bf9fb0ef8b4525e2a8a832d5e30a9b66fe1d5dc24d8ea40a5079b2b179c825453abe2e9788fe10f3a9e2e36847cee5748901547b334888516e5524acd6fea3e36bb3a736a4c86c41ecd6655d623c99aa6a86f11da470d142b00e78687d434a2faf1bf9024eac275d0ca1411975f55890fae9473d2c2e47a6528ea8c422af8b3681b0acaba56c8f9fc75233e8591ada943bac69e5d390cb2344b6ecfac1dc3a03d27eccc2bdc422a8da999a3ea362af4812dd4d2286374f2f7c91265a3917a834837681a98e51b2d572f73e1cadb8a10d8a059e26625f5677fe67a0e906e5c66848729d4060be7c6138800ff835b970d3c65a624e5d71edd8fd572757aef0f2e95567c098ae7fbdc1dfbb7fc03cfe39394cf9a10da2365c671b6172f6880c94052390e61eeabbf3bbde8cb18140e92ff66d125319fa2e5ecfcbedd95e996053e17b4c7b86ba0296c4b10cf310ffb585335ec93e21a1f191aa23b8aa3fe4dc02c0ddee56e23db34228ca0e4e194a4e2f4868dce0f48acb3486183c1ae5a60bf7cecfedbb93b20db18b326a7cfb1f2d09ef02517cb813bd4cd6ff52c6cb0d71a415762576fb47be70075f3881f92ae285d4a69ae859c36600927c794268ef699e7a962a8a0d68619e4b5fc07b7e1a3f9e162010846d867d8784c837adadea11a7637eb2475db45e19c32ddb3520ad22510bdc7da6f39fcba6e39dfbfecfc6620a9a9c3456cab30c8189e67cf9780e60d473382fb02ba0969f704029cdb4c2e08b3f9f6bf75a635b3ee9b28eb26a2695a48f280f0b5cb79da53ddc882d6229f4b407f088fad957e6c488ae56d04a31133b235652b2a6cda08aac2e2e2c1c2cdb28ed4c224c6303d496d5428705b233aaed97fd299a08628a4ecd365389608ede7f58e7def0e7a14439739b93b8d881b9b3ec089e04316b2ad6afcf03677328a84bf80d0dd45bb92f22c5e6f775cb65e4304a7a21af31ba707c5f324b93a0f1efeb0278ad83336665d00fc344c7580a804070b137029a8c7d55b8f454d1b5e770fae32b62f83ff8b1994809ad48bfb9ab5c56a6e03ce2f2e9f630c38bd69cf5c3b1e521498d34ecded6fac082ae2784309d2ff7bd84a811f4e922dae33d7b594c895f316cf9812806f82ddba29496798677e434261af051c97af24b33defd8cc862a4f16acf2193f2ffce77a136948e6945674b1c389b97c6e6b8d865a116208859a7127c670d1fb287b30fe1fa6d5a654c8af570385ed2a3af270c2988baf8c3ba36ce8d153f810a56510faf3c3c7fc35be9aa6924fa4586e1b5572be4e9ce7e5ef2ab9725860b57c3c018a02e2e6398de447922fb97165d931c92004b173b340f54c44a627406be93ba8237e106f793bc0f917b9c2bf0018578beb4f229257ffd25c682ada83f75139ac5f4c81ab6500d7332d2aa2694da58f8f6931914ed5fba8abb63ff552d338d8e2590771c241b061c6b8f522bb12004563ccc0889a453cf3a40f11eee9e9341419665d30e9f86729c507196891a08d999d9670acf219d8f1953169d7c478c4c2957d62c2c53299c3c3ab319484bbed57770a7257ddd1b80f1e195717080f40bdbaaf7765823bb144ef248e4ec4a077789722d1cbc028f3e754a196466d3768bd3b3ccbbdb0017b07dd324779a81870b01f6c8638e58b153943eb7f3374252adc0097a1f6886b2157d24674e1aceebd7122612359a62c38c695a4e9a069e41f26a90e00224936ea6d5e2901fb7f8bd88119fb1429471c9b3b50f44d4ac8f4ea573a6052fba108ccfca84894428330e98a6ecac76c784c707d8249889732be417560c5970f10bf91ddb400d064171196438081b6e2e379a397882752fe21d5e1117ab83332b1e75929fab147cb95ab462a627af18f13fb631ecb1ce14e483d35328ccfcc4e86091726853ff1052fd8bccad89e1a5b57fecbb38ef520a3c69e47f64b4074191e8752d74cb4ecb1c53b2dd983d35e3601e75deb01fe283dcfb6279bb3b0c6359cdda7d771dd36af12ed586cf53cd50e2bf1a277cd03202cd671e0b47f8443e5e7f2f77d7f220865f3ad82629d455ec7a4ecfc4b6fdc5d84dddc86682d97c28323bdf2042123c94bfb3c1e38efcd21b12d23dfadbadae54559911f253cf6f2d2c6eb101bd652e380b344fc143b7fc49d361576ca2150be9dc13c6d6819bfdb12a0ba9c844d2241444231cb3d9ac64029accc5a98e46c746a82b23e0ecec45c776c3fcd34fcf5d841c76b78ce48009fb1d4ebf6fbf2848cdb3fa01c47de59edd1127aba2ffb1d36126849ab6f37938748dfe312412c9f8e4bff1708b633adfe6c5d8dd3fe70319c3075c75de7fa008de1f6e6600ef4b9f0eb4cea0cb1297c10910da18f3f38fecdbea1705be0e419f4fe55bfa34a84acca62718b4fdd78f49668f46bf314dbe8912f0a24840a6d5ee2922c8943db5cd1b1eda2b01fc873b2e60539354ed6426a16f68bcd65ce609f566bf0e47783558551aa4fac1803afa914aff81d826554b86388e691dcf39ef0fb7faecb915258ba5dc00630e769fb8b68962b4f0fcf707c345041dac444d24c9c51fbbb6361910f0495f9093f2bb8bc46cbfe94bfe63761f0c7c0b93bb1493ea711885466c0f48922878859e2699276d596735aba964bd46d60d2b10c71aeaa872d9a5fcad38ac6bbc7863ba76124b799b0783d27c4c66a37b6a72cd9d452b3e148466ee07137421f326302a0ebc78db79fb6da9c0cb1a6f7505bdbee35ffc14e3b99a07d0bb24881130ab17a23ce914015ddcd8081cd6ec91f5c81f3e204cc41f3f6562ec95e4fe3ab3d5615d958ad82745ea23c31ebc9b32e1a4d74169bc9087eec3ac41dfb85e48e0bb207d45e8b4b1e3a31872b203113c1860dca6cf650cc5480a9963fa8204e5c8306308d09d94b88ffd2f6c119dd66f7d2af7bb1413cef220e68a88ce02bb5d86a6ac49cf6a99d9c4384dad3faaa77a2a3fb204476d74ff3682e679977095087dba8c08c2f4e2e926f3643f923e66a0a1edd6e573aaea4d6702f1303108b3508e0d11e755665c81c551d67fd40c9a0bb9e21546e93bdb1e42ef03cf7e638c1329bd5e066d44d500de626742686b1316f201238eed1063f2d50eadfdca6445573b6f28002751256a996b5975ee46d55e33ac1ef8e0e6119de22c81e202ba753432afba1b0d4a3be8d25406f5ec0cdf08280b76aeb11350a6bba9c12a9a754d7d2eaaa0a26e071e4250cabd669e66885cb2b8ec4c0069b7aa4dbf1bbcaefc0ae9d16c6bc4f9d794a00c4e38253f64d54a69d993a3555e2137f8bdf8c41e6253c1231318d551529996277422ed48413727b6ab897a64aded1f9f3e542c5bf69e515b53b6492dd2c9fa2a21e916b5e599176fbbcf07b29466d898f5b42a9eb29ae6cc2576d2add7de9f71e2a6d4edf73fd095aec30e06b70461ec1617e38e1f75931c5c7fa5f23273a795745730fef62f5530ef4715f3525ee4e9f605fdffffdf05086021f6277b90313ddbdf0b6d3162c80846bcf931961b1503a2721ff86acce560b40056b38e56f3a2d4f66a2454bdd4a8a74d8438ff8e54de68cbe148fd96275b05a2f006f0e4bc3c77578a4be84e124aaf78fa1894de2b1a18947331de4f4b2449d2236cc198c7e4541affa4126d1024bffed2089ea84e68fe208a7c603926a37304052aff494adf8789a3c303ded6673fab81d5291a611976c2bd6a5512cd4d7ae6e893ea33538a96fedafb272b783f6a538433d82e49a5daba903a27a795da41d826a2e455064031516be73a007bc4f7ade3f13774efdf3eceac315d82a407fe446ea9b2b6b2beed256fc35c0b8c60a0fa932c8d3c5f9255613ba8cb338764acc949e7b1b7be6818749e04d9e0ce32b29a0ff43b45c2a43659c5276453d90a731c21dd6f777f9bc9f3f9b2a30e58b7af8d6ea8b19dbc3a5113360e6ea5d408c54e9a1d9e2fa6b740efee76498795a2ff61475ae33747079a67819fb7cb4cf623c2a9100016ba5073ae6893d9b91285480d06cfe2e4c64b1a784ec295da568db24af1bf8869dec70ce785a828a785b2cd3b0ed5a1b8352942cbf4ae1e08221a7a0e2f5281acd29617be78469e8263144ba514ac9c780eb4699327790e81654cac408d2eaf5b3c1f57b3217964193de4b345c5898420fbdd113cb86c3f2a0e679678195a3fd7ddad4b3785cb4ebd2d19aad6007513181a58f58771dd8e74dd693b02c4764cd915455c1fa9deccfb0f7f289bd53721a59e8cef7bf6558f23e58f797cde032b63da5b72176c68abff6f42ae036f5b5b02da18f1d8ef6a0bf819547924fa369658799e989df52914da0f415ac24c4478d3ebcbb1046532bfe79ecd28f77498ae9fda972d762265b3e176f6166fe910c81f8a5c3b5107ad5807cdf8fdc3126294293125666957d9490d38aaed6425c47e8ad85782899816040bf9663085e6386faa2b6bd598cce1012ebcf59574ed02e17686df65d216775b0b787c9338e5270818505beeadbc4291b0ac38ff38ec6e36d404ca175efc1a549f17c1163d90738174fe27b2535d69f3ee5eccd230df9fd15f65b29c5a2ea88e0e338a3db08371e5b596e760c69f1bdf9d76ab287bf22bbb63e752c39315fcaf1c8b711cdea28e2d9a2481d68c5b8d00edd26fa5367c44e51430dabb22cb22391a29804cf8e64e9067259a0389d84cf5a6b9386b71700421d2c993a18b443b6ca7197cb37ecd713e836498258ac288ecd28dbfd361e5883d293e1c1d00050c109a20836edfbbf1b09c0d35cbe94e2e33f9926a9859cd5a4645311df459ee6b16dd0fb3ad5fe8efd609b202f344ec1513fd40f1a9b33a056865f64263d74cea13cceb45547b54ed752d7f12d2786145305a4aeabf6b15bb7bca7ceea3e0b478ae2dd7a0cc6ecd8535c3d884da2dbce24bbcdd054fc4587583f69acfd4dfdd320b33ff77c68f662cfefd10d9343852be8215a971cbffefd35ead26ca9c7afe39ee1b974651cd4a23f55882956861a9e83247744af6d919255773cf6d988236e9754654882c8936af42c7d57d9f1e4ea54f83118e46cee6e79f0e0502ea88fb2d531dd4f04fc327896feb0621e42d5c8ca12daec003bad684afcd54c3c482d1273e15af36040252f7f6f94a54fd6120a67f26ea01dc1314073cd74962ff3e2a795408a22a9854d8dee312be00cf064f4d5fd52a0b19cb787ba0640adf4580c6311758c970d82cfa6c1606607e9fa449fd6c6d86a6b94abbac10787cd9e047841c9c4c59d15ac2138fa47371207d9d0502e7819b30ff8b579d80c203b6dc8f48740768a0d888c39cbf05a30be050e937a27349aebac94568e7f3406ec72c3c64d6d0972ed877e4f09268cfe25ff342ebc01ddca8cce14d13b1663bf6c5489a963ea78a8aeca1ba4e61b5d66996a4b5c58bc32021fe7bca001aad80904d117b81d30c4ad9a05a13ff500eb0d190db728890e025c5e63aa42ecd813990b42e348388ed246fa03584a8f7f432cc3128f24be7e3fe0bb95115bded01ed340132253c3542ce5b2f2faa035945070b58b3a480bf23bc9e956da5ab3167367057db5773a77f6513578104966e4dcf3895a53cf99b774deba4c37b53f927de682bd983789fe5dd066ad7a947e25642218f939774611d06ceb0a99591ecd6a9cc3446eca02c25822e73b9c99c24755b3999af60b4eaa365308400cb1b715103301aff51c7d41a90ccf1fb4906df471f8e35103141bd885852403616214acf093575b37b6ef125c4523168c43c8fc48406867eb7a63272e1e2e0a1d21f28da2a4aafd718bfcf87edf4a5371123d1091a98bb9be89c9c1e0b80c4a01d7c4a81c8cd82c97481ac52ffb8f8af9a7e4ede4622bc5da31c920fcf83448bd65e80e4150fb0bda38fe6cef2c0c6f3abd4a2a4438228b64fdecf4a149b3807213988b199001b59c2fb5b81d66bca59ba8ed587f21383fd3c202e18505ec2e9342d7c9450fe70d09e5e7097b4644cc2382cdf040d5c3982fb1b35c863964d5e744be5d34c2da81584905e098882fe1122dd95a8dbffc269d684cadae8f02fc9d3e87bc434f6da82c12d80d85330eba8f49e0e0e16b3ebb0014f991d9775e424a0460148582dac42cef278d3c35302dcc19ac460c7a2ce6058d907aec6a42a1cf005b0bfc6c3a00627e7ed84800c01df903ab7e25caa310c29685035964f7ae3ef187beb22afbccbde15f64ec5e8cd149247c7cdbac0e1f7be3012ccaf44f6ba6a72863ca3744edb65851905bc6ba1a49e957f2f99b912324cf493292f5832aad67a8457a2d70b70112fbebc4af16cadfc2c387273d011a32faacf566acb44e97b345cb3d97508a5dbfedb9db6426e706148ef88bb6e96946c6e559f1192fd34ebc6e8885f8b6d0f2449bf9032b765d4992c348a6513ac1a2335d073d6fa163a965b52f90db5c36016deb2cb1ff0e5139c7e491f8a99834a2aa0f8646c25d13f5c31eb79aa1313c9ae9808d99bac23f54706762ab04b42236314c04b32991d771671cdd121251a9d1f3b49a5049baad9004133dadcd086d547b3bd804cb7eec14d6b46e716ecb4e130e1e1167fc4c6f0571d569d80ca40cda38f5efaded312ec11525c6f889cc6d8fe7212012aa3e023d9cfbc8ec32d4ac4734db23e1c53527e73b0feb5b6feec2c6c68e75f6682e51622b2d992c089f6a9e1e0783baf86ba2647a8c68ca5ab581cf4d7552a28bf899f40efe389ca2f4384b7f1efe65b92454fec1aa8c0fadb1aeaaa4c286045a36bd74925421e57cfc331a9883bf199cb65a5477f0316fb7e2245d82442a8c41115c38df3a533574d4b6e6bd30375fbe8032fdfdf697d406503eb5319784504b3adea4e00c893be94771647ebdfcd682eecdc8d7cce6bfd99aa7bf0a97b13b1cacaf9dd562be12bf6192d6625e6a61b0e8a404b035b8a2adf05401cdd58332a427a81bc547785135f197fc04a4912dc779bb25e202e97558af94cdaf6eccbbae1ce0a0af2bce4866d9584acdff5297b7c0d4ef57caab80f04fb55ffbcd26fda332585f1336143a4b3733116e98ae48e9bee39b0138ccece216ca85177fbdc7e7e1fd749554e4ab27182877a1d041ecf03f7c5eb3e81197e167d3739706c4dff6d486ba7116a88373972d1f2003a2e62d796754b8ee937c5a477a438e078a996ae52b1a7dc3f7a5a5d6592c764cf688828c21e2df5ac34b7dec4987c80475cdcd78055f754baf1890ff848552c3a270b17b7474ed50b5831f73d9ea5d72f7fa6c178784750ecb9358c885e5ba9f7e41d08ac56be8da48dfb065ec80cf50c50c6a36a2c9de0dd8a78019beb9b58bd20b74edb9ec6da646b9862366d9350af240a087f99491f911657297411465058304edfac58406a3cc8c1a63d4e9b5098a3bfb9bb76bd0242a04b6f1ccc924b5433fa4a2b03a07301226c19a479bbff5feb5ea0121098b5b2159634bbd93e0c8eca2b352a919e967bfa61ff4541785eda70221f89dfdc2fff9fd63139c0a3767077fa029aca3cc8f7b1718000a060afa3b666c49afe7af206e5177a28b28420bffa006538491101d08d1de93045bf10c19adc621cffa431f05b564085e73b5ee2fd23dff3308e8570d1c120b419c13c4f1edd5a1034a489d33ff51aad51ade329500f39f9785c29fe6813e8eb4d571a4a77cd7ec8650a5bec5dfb2b13af145122f95165a1d48f55cb2a66a11aa6c1457f31d337bae02d236ee7d4c0b36537769e4da14417dbcfd0166f243652f4de24d197610cd0209cc81015702f2e5b75939463305132eefdeac448482cf416bf2cb8ad95b6665d47452dc16f104c68e647638f96a6f49e65fdd879eccb019e87eb2934f630f8de184db354c48d72f2de7e932a36d9bcce9a0682cf9eeb65f7709ce7e74c4ba190c7d78fc2d77beff90131e1f9991a61f64099ffa1e1057f3103955c398a696297f8d53bd6f42a0e18a60e42e4815e5d233a781e796aa6111964ce5001057cffe50b26df2b4de2a7a0b44492b977a3c978176e7136c9a7fa1a933816671755415a15e353e4da9d393c9560832016d013564758aa68253740f895de18e167f6c6c5cd9592950a732b0851cb4b3c73b19a009020e93202ada29cfa1937aa188b5186d33526ac667df53ca86b9cc0dd459ffe0a7bb8371badc65b04f930ae7772b26596824be9c9d368be891cbd10bf5f0f30425eeddad68d5ae5d2220ccf1bc2f36844bb93e2d96561ee9cd54f6684da01e0cbc10e750e6cebcbb1521555c17d685645140ada3a931b943825fb419938fae2e815e916828281455f6f594a9d12b0755700ea07f0c9fad12f7d8c60e27cf1e1b44f61cdccf334e3987bba85fbb9f6fa6ed31d0a9e87b502dc3336b8582d92fd40a66679c08736c1876c2eda9288aa24091ab79ff764f947626d991719fd3c364840c3cb50aaab57cad723c558189c692b29e98d2c0d14caad5c5c67d7cadc0be78ab9734176c99f8f8afa716cb0cd9e10a468862725f9d83877ec067819d39f4f91e7a8a5f3992aedb2c217f4f7164187ec190cdf0bf79fe4e2956aa791fb44d40b1ecef0ddffdb9e61895e36caa9d08bb463b63ded229c409df548beeff6ef3d3dba2908ebd1c081e4d1def1874f3f626ca02a69c03ca4b8f938d612f2d21629539e869f892d111a768a9bd9c0eab8715c50b557f96d8a01337cd37bb33bca961b9f319f70cf85f122bb323dc2b0ab492b3cde52b17112a18b219cf9e54e36aa2eae207973cdbc5557799c72eb777bf3e4d94dacddf38e4add473724201dccdc2e87987a20918dcf5a82330e9d708013a0b53272470c0b22174ed4b928e49efe86a6181ba03ffff54e5873d2977dc98b68ea5be713f11ecb4ed0f0d62e2ced195ae995eaf60197b77ca604537e187ebafb97ad38aa22e64d645acf9f7f876b6dcb6d1a26bac9f0fab338a80a922229524c9034ac923d8052b5b353d5e23ff5d0923789ccc23c36efc00741ee1c26beddf24c428ce0281453b38c5bb3f4658bdc6e6d26d9699737580ed6618a41a9e0fa1bcca1c8a77c595fa69b4658c3b200a6248664992cbd313439eeecd98aee9f7f6af4e6684e78855136d53912563a5b6615f09707baaf7e6df0638531007094ea3f530743236ec3779b6abb4171d8ea6c58cb321bd35f41118f3a061c0fd992eab071851cf049e18fbbce779327e33b5fb1429dc9fa63163a29b2413e30a0c1280e2a66ee67a9aa2fb7342c857a8508666f4e37a848679085617c394dd23b4c3437d05fc1fc7a5829f546be8c9c7e0236f84e6b549a8c0f89cfb6d778a5e3b100411321f892a3d6e2b14787647b47be54ac94b0aab4ae6014e9f99b531cdcc1ed6e52d36d9636ccea6c630126e533d016dd3b438c398b25f26ed8741c638e7c4735aebb67a95db40f625160d9adbce0265dd1e950842195b380bf4928ccee3963fffbb9b511af002181ea1eab0e84c02bf13f075ce4348573386aab19d03f8b6605fdca3992440dc8498b4f86c45eef67800f8ca4da2de631ed65ccad8f6f287f43b981621050fc2f51351a22f4af9cae0a9aa8904353a7d080813e87a113b7b294a782e4e3b52871c76f58141787e2e1e5de849ca30cda74161c75eead9885745d48be9baa74228b9671c9b394f4b3197fcdf7c57ae3a1b499004a41014f8592d09cbe222a95f7c1acc25c93037c32ad91c39f57cb1d0ee227b510bd5f2e673dc0781ab72365da648c2fec8fa63b9a9e469879e8544fe2227e84dfbd8789177fc085f228413ca7e34f39e4cc08b02b6216c95456163f80d49229e1569b55f944e3faf2a952f5586de423043f3005256d23ed5250d5620acc10f401cd3acf53746724cb812a3dd539c13c8bdfed753402f933825fe69306807cea84348b37c0fe616d936d8e71575189523759993b213c4b1f00b75c4086883262bccae041af079d5c5df95df35d92c4ea5584cc2366aad609b0c78197e2b7788335ec3eb7bb1b3c60a99fcb3141e9f9f51e6f0712fc6643d65085657b294613e46b0cfb97ec03aa1afdd61e1e412acf7a75f3e89fd8a2896a99db429c6a540346450f74694498186b5068cfb3f4872db18b5c3bd826191be92e751351591489c14bb9839dcc44e068d80186d32f32a1d44aa0633db09e7ee0a283e6b0938f4005bfbea6e0d7f05f865f8cb3f337870b81e6ddf2bd9179a415b05f0edb40ca315d6efa279a3492c05483594195c3d74dae8e308e5afd290cb09e30bab29398d89d854dae16789663014a7a7f286d86c0463d72eed363dd9c9b803011aae35f0c27b8ae1f67cc9eff7d99e52b2bbece20f10701100a50ce49ceeadc75d28fc87f1a23743aa6eac2990d3bcbbbf96ca6fef3a29bb4fc97406fac1bfe8a727459843371ef7c579dd17fe47d127248308b973c9a72b1dfd82248e0cef33e232536397960adef420eff1066e2c4ee9fb24332fbcb2e370b69bdc346cfbcff76991ccaa89e05771a3bf4a00de9f696b17e5b1765a70dedd6fd047cde4c984fdcc60cb1a7e2d0ad30f9bcf5688485c4ef765e45d1d1de35f8d95fed00dccb5ca046c907062649912b6343b71a971e515e3a456af74b9b330de65cb73d362d50498598170b23fe6622c53db2607bc392217b0fd72ae0ad4013781fd63a34e732d3d518340d3a1418c3289e996c59d01d92184073f7ca6f57905f36ea52e41db153d234082870a55450682984543906dbf0825c701e74e15672a563111c3aa732ab41bc7a416a4ba723832c61b296fca88af90120d8e496fef018bd707eec299b694dd2400638bce2598387655364c40c9a50400b34ee18d45b5b7395b860dae0fbd100a1d331cda6374cd2fed130bc034e4d270feba70c775efc0a67b5e6a891e1d3c003c25621f0c9eb810e0fffa666585b4557f441c0135c497697ac6d38055f6931357620d5d8ff660f81c05235f30b8ce1b703b8d116ca256ee84c8cebf961520f28a67d0d97ce9cad99c4a488ce39bb59341b9358f5450cc36e68e3cc42405b94dbfb3848142c43bf51d82a1c797e325fc12dcdd4aa6963291f3de7569a9028358cffbeabc8ab84cf97d7b482c04b5a965abc267543e2d4a83bb50576743f23234ac3fedef5680352a89626a0b3bd65aa79aac923dce57438585fe097afe992ad703d5d7eb3b6cb82a8eaa41e9ddbd298436cae282840dcbfc38baf9c27e71403bdfdc3f26ab537c7ca65f647ea8a6c889fc8ee7b1bdfec6623be9477df0d7ae246965727367021b5b81afbd455ae687be77dfd134805db63c87b513d1a4087e7a04774b8567a0595afd60eedc25f640775875fde720ed7927e6425fe82d20e9707ae0e1a513e4f1b300ecb0fef3ae633907464b721c96e69963cc9a50a04a56ff7cd6fea65c193416039201487baa237c1cbbbb86a04f1060c765bf5bf1f9d1fc05d55ae66e203e57b567ddee05a61da914131377d7a0862423129b776f9ba6cdf0148be0a93623dae3ff7fc96d596470ed6e22939feb2370c5169bea62e0d7a11eead1d3a4206773d1f9497b7d4ac66e8155914f1db3e5f29a8eee2cb12c3311d81ff785fd8155362e20c290881c9ad230e623689b91a0874618f323f3f99d1c1bac5e5fad4659901a8cc0d68df53f832ad5caf825945f706a508c0f9d339b2bbe23ab2291eac924eebb690c5c77060ae2e9426ba59b72ba1de2cc1705021ab1717fef2172aa02751c1dd8771d18c1c04cd98ff2791725d6cf22cf876913ebf4e98cf2d599e90599ca580725a8f882e80528002f6b1aaf08ebd578fd55c1971acd6a4d11e3dba7a0a18879161735e7116bd191dde68b5d33fda8c6812ded721e22a9cc56df11cd4b4a471bf6be87d70884853a0b957c3d1ce3d8a5be87e9d8d6fb1cadf813deb311c02b782d605cfed9d182044e8c8fc5684f543b0b1e7270335d9cd76544591029adbd85fd6741a38eef14172663370eca1f006d138f9ca7ab809ed5b0bf8609aa1a7a2abb1cb3465486c2da92649a9f15fbc4e3301310eaba1b883127fe9af109d34d696c9a00b7ba318121b62bc0affe27d4435f05c3f6822995586ed9f1a7b731f60ffb8e578966e653cca527db47203a8a90280ae94c9de11fa7931a88eb278f37badf8340ea5deb3ea692c5e027b8f06086ec71c2546205addef777cfd38095c38ce597165027114f60d596ccda036658cf5ad9d77522c930efd3f36886dadfc9523fa5534f689652a378538c57707eaa33081b7edde0d3f61394ad4fce9af4b9d724e09cb5eb81e583dad4bc4e6df8dd8526287a73ad6774f8038fe74021329319f7b48f2067d75985f821d9a10f017687d97e809474626fbc0f2725427efb50f3d3f33918afd227b7f169d6642ab46df7cd614904e4234811054f80ae5bc9df029347b9b9e7f74d35e7a15a4c68ec57f95a405c115c2eedbc6b671c77f4d38df653c389bc9d1fe87c9afc862c7bdb1afe19df03605248a11ccd2b2c8219a5ab81b9a2107fd495a7101aa6c2a815559c0c0d5eaa80e28192866ee5c627459cc04f3ace102dce7d980783c6e75191879696bb9f1a7d1890084825f1059c6e1a519f3a59f58788cd369909af280c3afda4a89091edc0fa20b6ac8122702976e288ddb6a80511e2946d598b643c39357c57992a8a20e9833b671ceca8e07061472757170ef12d967aca3a7cb71c2bd5ab758b80c4560436b9ffa652539c4f73d981151bb931cface9fe49b911a12c9b34560a913ee7b730b5b84baa6ba475853f828839d986ad0faa37fd897f37b24503049b76bd0eca41f89e99222f94617ce6ff3090ffc42561a385097bb27e5e52d62ac52b2df49c8f17d8e8f1bea23be466316b616dddf11b3a4dbff9dad85c21e01d36704decaedfcda9641a3792fc1387ad2e02cc0abc027d607990c4fd915d0eec5daffb5a518ff1c302c05c74f441f425273bdb26474a05d815cab127fba9babfd7aafbeec118526df018e5623c75db6a53a4d21c7fe9845a5f324b355affa3cde35603942df82c079a4587b3cdb26350ca4a4d5755550e489e2ffab82e3bd870d57cf84804a78b886491f28444bb7502fd5cff7d25964131124a6344197ab41b05f6d15232921e5789de4ee6d4a52f327a6bc1c2f7480f98f94b78306302ed493b37a62bdde55ff1bcf2baa8a236b25d8ae499389fb7980cc47591371ed983f945b8620f6fab3a52e49868d20b5a1d9a908faedbe9774a471d04197664d7076ef03e1278364ee41f526ac526a2447bbaac478dcaf867b33000123232b52ed591e7f2ac2bfb0dff6567bb1fa163fc875010e4e12c9a6d2352d42fd829ddd353ff9004eebb2d16802a09a7fc20e1263c74520892c236c95e2cfc46fcb6b6653344181d3d13daaf8eb1c3e9d726d5c775d6f5daf9d670882b38d0fa78c661cb5d37c5a13c92b637abc5c6c5ae9e00003e16160aa95275675789ebd4eab75c05678be86bdb5db365fa291de716d8b23a0bfb10eb597209947036b87e888edafe9c3b55d43f112aa887ceb6f2b24acca3c60bd0b3b6e9d7e335f201e8b1e916f0ebaf24b2893f57bfaebf44b7e942ce1dedd308710e050f97228b1a3c55956061025a109718f208a6691492a5fbddeda4717e799f3609701c620b572fb05ae9e89d19cc3c397821a00e518be2721c37dd5adb6c7e277c861d7de88cff1612b1a3bf18d1344d806901e8015cc0e145dafa05c009d7bda9780d6efa511f9fbe235e8f9939bec6ab676e7f240e610cf79761a87fed67876e131a2cbf9a5cdb0885e3a804c11829b542f359518026520cf7c2386a32f1db555b7b8440caea95fafa236de8c182c19586ae65e2fe47e16f3bd1eae9692f1c3d21e3038d3dfa5ba29c910fd3b0de5552ec14493ecc19c514d8317f1221b7573cba944b0808ac834cc933217c805d30c3dbb1e1fb251ae82c6e14ea557d1fe316030a6d90e027d1d784972047a9cef3b76c0ae248c919b2a5a2b39afbc57037673a747210a7c78c56716b4d57b9fa0aa1a54940e0cde2ddd98368224d7225a6fc1c151d05c2cbb33ecd72fd2c7325b5bf66b83201852e2acdbc701c13c6ad120962870487a3879d44c1339c5e09be78ed3f546a4a33b414911a3fc9ea9ca50db7871dc0c76776045332fa00d7041d5d90f90683ff424afce8537ff354a0981f8a7236514fffc08abc4850a8dfc3bbba9ae86b9d4ae99b0acb5d61c39a6887b5339d39b026d8c93319b1d5ce30f60a14053cebae37d60cc611843383ef329a04e8a37c213237ecacbd441513e7f941e173eb62a5777ccb2994fcfdfab226bf3b142f25b15bb8f3e18048994f1e6ae4fc9fa5a06b3f032d7fd318aaff0ae7b26e67f632d48929fa77fce1eb1a31f08f64d8f4ebaa18ee08a1367df54eae14a4caf2b57cb3389d0922dfd2949c47f4024302ecfc7eebb476fdeab3f7728910464bcd318e941c4a6ab7f2a96ee8871efc42193b630a7a98f14a93be41a69548b1ee9dde2a798043166992127317a7bde6352cabc3e5b343dd1550ef068cecb23b6ddb1d19ca70c0e88665b6d772f9f13b2e0e294cdb53ed8cf371182b54a5c828470c7deb56451412457278c1cefae93eb1c24861bbb54b397afeafed50c4c3c390e72d175681b7c1349c5beae585dc1ecb19b838fc1a769ce350cc7ac4bba86c5216c31bf573b0f346a86e18408f2c6f2fcbf2c6199d69d4f16bd9e2efccba91b497973fd0531f454a83bcf0e5a78722066883ee4946b79ff3dbeb27175e73d2a32fde3af2a8213fe61c7de829a8b0da5040f6bd9daf735e9b5e0cdcd7622336136df8d15f89bb0850ddd3c799d3dae5decb0d6f779759686c4252899fc0b164a5a9897908a37b42416c889c171ff3589859e04638d130b9f62d3d3c0f59538a709ec3f0f6f535dc75a1a9267ddb574d317cc056439f1c0c28b31f7a1f4b63142044a75107f6df30f781a5e70338a78a4f5f6f8407d5bf38b2dfd7c2963dcc249da7bd4fa5b47a61e629b68152b9fde56475ffa6d4a6a75959271d06dab2f050d7958e89eccaed337c91c1f467351c5aead72f9e7cc8b7ac3013db2f3be1c33ff7ebf7bf9f8918248505b25e9f523fce0f6c1daa274d74d8fe3ab5a8d62df5e9bdd8a9977fe4ab09e6c66b3c03d79e3ffc3cfaeae39bc4076954039a1a75cedec06b19c6aa058a3eef94dd14ab8730d53faa3f4d58d2810106e02bdf6b05fbb44b9a1e9bbf951b903800db2bced51238542deaed944f5db3c03391f881104aa267b7332bdc45f6543ea004d47dad9e426eb6edea1a070a90d52ea1bd02c9e87d8e08863a4ddb0f48bbce78b3f61ec52f34fefae8dda6fcf900d6dcd89d33c6ef969a87fa2cda57c740e15df094479317f5828759c2d0ce687a87548963d29ecc7ebdf56e0b052ce914806cb17f4f5f58747b6c980d30388bb09ff68e01079d0fdec22d2620b5dc639e6e65b188c8508cf872aabd4a6642d2fdd91aef3423b915e6cabf7c425bf316065f55f83bd6c107136b7e66dac8e336ca87113dd6291332867ed19fee6b627b3db9fde88e51c8f088f9ab66e5e9ecf999474bf9738e7474e01af9e47e53f43dfce83950ee40c538a2877f087e00573fa8bf26603c3e545bc1e06728f55c62c3c5a42d40869383cb5fc44955ee5ee479a64ae8253623109d1ad07616ee44e282fb5fc5d4b80359ca5004f6bc4da6b0a9927afee1fc02431091e26eeedd44216ecfab87113ca4f831a18773d929897a88baf069dfccee07cd8083209411ae62a4431f2644fbef57a968e2bfec9dd4bfd18e20970fce9cfb1d4723a2a176e65c4454c72214f686e86b2f71e799979ad23578d3f626e135f709f510ac6d649ab2c8c1aa850392d5a931a5bfe7963f9f7c4085e1b5d09cf3dd6ed7b6a009abd0c9f1e73a5a2c08f1d85c4ad1054f77e7d515a82b9169d04dc3f9ae847885a4133aee8c0f9849d02a0488177ef3732f265edf2385c9859033a8a8177d679a1ed0222d941046a9e2e202acb9754e42a358f3dbc90fe32a3c307a53885dc761012aff8d1934447c522bc8dbdc5afbd15165deae3bb5eee8e1054f9dfa1db8cc7024fca88c7e854d5a48c16ba36a796ad936dac21ab3b33269333d889202127f5e302b0b4a99d2794aca2b16dfff8390d0171a8e38c2db62be624216e784e2de40991665b62b4d5c7cee3ef212369ff10832379730e458473e05061790b49ddfeac7053cf923644b48c2de44e3446b98cf34fbb67d562526051a15c83727032075ecd9b16e6c13db03fbac694d95feba98e9445495c35c6710d7da093f289aeb04112aca61e63983dc88a2a42a741021ac035a8195a15a24ac46d0f5ad2bc529928e2ac188e9b478e9776ffc049527f36b1abdeff843813f15582d457f789685e044842cdcb5e92c1f66cc20ec0c387d4b207b45b11423bbb5e9d8aa886e32c9e3655b2d9b1ce79ecd3ee390090db2c46c0ff2d093a39613ff043db3731ba360d413e1221c64eb1d767c33be616cac2a4a2a1c3ce525ca66196a0a40ad47ea48dcbf160f70c3ad1537a91f50b425937e357ad3cde1e3c224839d8d3858afe79f20acca1687503595b68874f759da0ee870ce39465bbf96c5d9a8a52746e33bd0ead75996262748395c9593a664fa44f77f52ceab34cf22cf08200fac0b6799784986f6742bf01c3a5a0f3ed1d0ee3420131cd607265afff315cf27120c1e8a01b728083586592d67e9ad9533df5b8c23a4c8549d86cf70b28c768a89f0746809deddc8ae95f1076c565473a8cef6ea386cc101bb62233ae81bb075f20198cfbc2ffc1919f3f269c95ea13da6c88f60937948f66f38b2d2972f9128359ae4ed30486d3d373b2fac86e6ac81e07776b50079a03f35d01b87dd68e85c044f02ceaa6a7598d936fcf08f06e1d9a8eb5563c5d250e87d4a8e90b236429ab3649ad042f4e5c7c401554a411e1ab7eb31bf0c5b93694ad08364e8aa386d49439c4f816392fc53bc6b8c7f9a9030d6c906560a7f2136ec18e6a81d5b0aa9a4758d08641c9882dee7c072297ab1918e51779cac3eeea5802d38428587d23a4cada236e0e0881e14c4459731f5a62b865d55c6da041ffc6394d08561b83245a32f44dc2d80f45c3c8b195c6bb0aa9afabe8ad831d373247fcbc1a5888bff549b2fab4b34372a87a01872f9d17a6ec4f1e8733e0473019bca0189d2bd129a757f4193fa2ab82c60ed10fbe0ce5bd6371e2d0bc34fd4f5bae87a36b2a9a6618a8334c15d2ff2d72bd1cef03e6a1b1f9b20719c89cba1fe6516fc1745b13410891dc69d318374fd824662ec7eb22d2b898e8da5957688f355f5f8ac52d40e905efd961d0160859fe556f1e23c872f8f80a2121b8ed7980c1e62ebc6fd33532ad41151de8205455c2badd2d1e0d50e3351239896ad4616f191615375cb945ce002236e865656ec5e1b1cfbd3dd0f4c0391e0fa0ec403f9539850c4d07e74c7ca5979007aa6f3f32cc8715f434692540108d7ede3ce7043e9bb300d9bf327ac99f32a661a52a2e24781b865b5f40307564e9bf31c92d21c157c96a5254fb7b580ee5fa5867da40d3c72fda752265e9a3f399e9fbe21472f7815acf58b797b9d0938ec85437948a4257da469acd58f90d4a03941221f4005ed6d1253af22f361d0ab8fcd51b55474b180e4eb32dbad6de22b7eadb6e7e1b6319dec8d64e2425b881d2bc2229926b17978a41ae026a470c8fda80d34cb3570710a977b70f5a0bc8befce2245fd6bffdb940068aaf5ed55241bf305bc48274611ade0d75a5f3df44f34ac641c2d8cc460f0ca7dfcf3113ab3e4e7c162afbea89a95326f8717d562c2f23a48bc75f31a446c51ce9c70c48969e2ce3a8a5c57d15bae131da471f157e3716e85038b0160ecae63c44d3f4e49dda4e57e9acea098bcecb5cbbc3c91c33c83a75d836c4fe55c541925d7607c7d74604ba7413e1e4ce6b6828eb48c3d8c6dff6b5afa4301c95883340dcdfdc8abe706ac411d38dc885b13ce57cb424622caa792696bbd1a9485783e6251d02f46aa142cbe8d3da701d6c07e812b9d118dc95aa86ee11f0007409241bf4fd2c17ae2e8194dcdb604b7fbd8af6d99375b585e0824b0ca8e2cf5cefdb60f972da1eb75c95946f6c693d942210d6ee9a7c2c62a19d4c25b0c6969f07c3e93292afe72962310a9ffe34fcd64b229e42c80017b06e6cc0bab2a89fd640dd7afde599c092bec210f38e4353155040907280829d010e0908c474edf82f6bcfd75d0ad704eb580406266da8c815091ef4c6709f549581c8f9e3c8469f0456e75920564dd0d533bbfacfaf1502908e68140443e41bab369b7d20df3d7a03bd486d25126dfde980bdd9a1a703ae788738313712da4e0c7c6d8a23203947d89daad5359c0da08883ae495f86f7b7ec5917a1160cb36b3ced541b30cd34efd1da4b69272964c8f3eea38823b009ee8c4a8e4f43f9f56cc1b46bc88492b44d42ca05d8596f37bef51ff81f4d40faa86a4032d981dab3cbf145afbf8eba5ce51ffc014d5d4a285ba95999a7459a20957c7676331e7a454ee7223f4170809fb8fdfaed2ad7b823af9e87f0b91608516a0394ab348ef3d63989cf570abd5788e07054d03f0ea5a09d7ffa70840e54bf525ce40ce290bf556d70271ac5472ea1b83229bed5ce7380ca7bebd239df35972a5d8daedc6e7a4fafc705f172615963b6a9f0dce3424c9967ad0e242a060b7d3bdef86b5137b1ae997cbdec94e652bbab0a0f5ccbf0e77df9a6569a1faaa2f6745b24685ad45229cc895d7e44acd2bd5735df29b50f967b7e6af31ada4ac80ed776d149edf9799550be6a75b71214452557beea9f4104b420c268cffc69b5549f92ca7276e1dcec03ed1eaa950854df3ffdd5af4217cfdb8c9b9302a8e06a49b8e98010029947e1932694ed29a6605c55696c2cfa5f65b8e16113f80448462367e5e98e79f7913b0bbafa20a9696fb24fd62967862b81974f8f3a5812bfa5801a5d7ef4205090e51adbaa1159116134d3113d188b41ac0296669948956aef627d4d4da793185e8bd45a9f2491354a4aeee85617e58355127936375d7ee26c746d5ce6939c9cb8ce6c7cbceccc00db0564802a649abf4ec9027ca2a2ae318143a4f0656ddc545da660f326f903560418a5ae309a98097e48ae8147e21338e58dae68f66c9c670dfe05c7be5597a6f8498cdff092f1646fa177b744a8afe3c7b21b58fe2be5453d850f73863166aaceb746daad9ccbeadf21fef65b04f6daaa7d58ee8a80f99e900fd540d4646e76090d0ac02d6bd92643e18bd0fe753ae1e3ca6138a3cb778e9444af6b187d2de0553839f525c1fc883dc2c0db669424fc6c91dbb9d6e19b046a5bf187ec7f5b058778bf64d2fb46cdb6888ead54c4a177a8682d64f2c3042723205ac17a02812708727fbda471d7000353233ed4fff9fcf02a8ad87fced80e3c7293396cef61b976d1d3f1f650a120e866022267282c4e9d4a0dbf51848701647b54e1f04067a505f6f0dbf98973d134a4bc214a2262487d96d23224eac9c3dc3e84ea67f0f770f1b93cd563f155db0ef79bac93f6836c1ebc428b73ffb19cf2be640b24bfe3a11330e827988d511b1b2eeeeced35e5707a919289c6dffbda6f3415ea15dfd713a3538a8ff38a71ca2bc48db8e7cc45de95da03cc7f22bdb8b22f9935a27844d663a86f453a69435ded79a9111db12ff21d6cc80b7beb08873f6d002462c742a816b9652ea80fe5517ffdbda400b2e7cc9fe807cec9e318869325fa3a4cd349f7c98f3262fa717f7b6945af334971a770323689a6c1a3e3c680810158656c79ebfdd39e888f201e82c7a1aa8bbb3e54f18d0b0a912937d55b980bcd181ef8e0e21e509b237dbfc5332db28019df0282373ec804e63cc2f1d4a4917c0ec899ee10182fbf705df97a8a7041a6454de8af6224959376d5fc56c14f100720de76595c894129aad56bff134ce8d943ded6e0dad6cfefbb4ffe5162b8c61a9957ddaa40f2603e1d1cd97acc4a574b1e58f909b54c1eb06ea88c2eda9eaec3a934400ec74de2652d2d825282bebffbd19ff1951ffac8e4b62a0eddbf8cc2ad0249179d26e276ac5e1d35619df346dec1ae9794fb73de3b785126083fe15c757ff4daa7acf6553a2e40f66876a549a5bffed008da0ef69d9206a31186cf481eb6373b55e433c476226af3dee907318a7b9d9b7b2bd8bd32caae579e2100040359b31838998745afee1c939d25993f7665027e5d1eeec49827721a32137df85bb6cd0ce6e156396eb79931c7e5aed0f93af6c395025fefad9520ecade6a58879db640e5ff8a6fedd7694cee58729fc94ea2a2d7078d17a45b9b6e63239465367faaa173d988b5c5c36f6505eac6a15d91f4f31049a35737c73037e18a33259362aeb03fb32b91b4d7d0b31a1a5f3e32c60cb21da302595466530e6bdd9385ad81499a1edb2eab1d3d0b5eae298f494b06c31bc9c49057251be593716ba4f5ccf76dbee759dd6fb3e1aa55b2007c09391aaeafdcd21086466cb98a2b05b6826bcff35eb24b93020af1077a59a2ad1a4200eaf4302804d2ac868df0615c636b1003ed4af01ab1d18595a440373075788e719484699a0a1cdf5fa90ea9a99130178c2cf0dac725dfe28d15f085c57aa382801b77fbde07950d0969406c80f9e8550e7b17fb8063506d83cd4088aa3e32a227f4ed68a5eef5483d8345976f5abcb597ddd72c2619ba732a8c410f041a9351d9270aa507b6c041a39128bde2bcf192783b2b440c44af0a39335e187e34ea0952d677c46e7c1fc8987fbf5c3271681ce6fc49ea09fde1b426a843b87f3dc7624b12cad8a802df85a9bdb66c815dadba5b90298074251aab28b00c53588fd485718e3700dce3a1641b96f064d0a4b7188c3aaa8cfff2ed5d4a12d9eabdc7160dbaeca360431daaf3129993d1311ff7305cee594487847be4f0dd4fa2542e7e70d6b98b2413f18b6b44fc999bd075ebbb35a1f03c47eac31caa8d7d2aa3a936855dc334a5392d434f325db9b231d757574cea6720c92a76233f323d36f377e94abb9275fb52a51d83daf5d5325ccda0f8c3cb2c5715622e44afc7334070fba2b34e769315f1e02f74b3d07343da818abb8f3155c37ceeab7926ddf7fb837b55d7c2daa43c7126df78f62d6497c204a89a2d80d09d8781e885321145bebbd59afb5fb0acb23d897549abbf87b2e220066916aa116370ed6965d368d8dcba49e99dd3dcda7740a6226f2ee81c641a9d7912f0dc020e6b9dfd46936f2d17945205fab46b4fb9233b548b2ec86363aa68178e5c9dca74d2e8def2ce5445243ea1770f10d8ed67c76e9d091da291b351fe68dc1ba6ec4e757cadcdb910deccbea687058e69b548def94a030dd974f108dddf6e71bf88e1992caedc66e72206474b1c9c4d71d747bd8611ca871da59266e4993697fedc2307f6dff819d1ba7994e10abdbb5e131d39a771514d1026e0dd2076643cade9e451f992d3b6fae926d14727f4b9b50fd99908b641e903377546400a32699cda2f6620ee782246953cbe03f0c589b8087dd398162be92c151392fef741c1a36f4d907e8df3579279355721606cc40bd83462f476e7cbd89df1f98ca539f1efdc0c9055f81879f580074e85814cfd908828238dabe3d618e0bf64e74323c523b2504e0a9a9b513cde1a5cb84d6d2bfa8c70c849a4ad92bdf6b0beaa6759504ce7a4c453d5f9dff7e3441f81b5656b4f0f28e3d135dce8bd08f83a8f2e2399cd1e7c1b2a758fe37478c692733d12ec6e6ff6e2af9d466a07bba3aacf45a4970122846e90d872feb378a79747f86155c6a324adc55472664ae6ffece3e0d15e1f7bbf820b70cbb18bf6c7cd8b3bb93222ddaa0bb8b42d2129aedf364e24621c9672a2e6a86737f73703be510f3791e3af6f0fe44a1c0d490b5a2bcbecac2fe7163e0eb1dacc4c027bb4c10040a9b6300a131dd1a47b11cf47ffaa6c3812a5c0ff3163cf8830df3a2ee9c591f5d2358b29316eb0d89004ff207eebcd1ff85de80ad49493719065274c1b80ba8a617fd84279af4ba1b7c9b39d1eccddbda96bd44012040bdace20de6e004b9788c3e36e500b10b649721aad78221a7f71d429664e127d780e6ba666997084605d7437531bb329547cec54c118f4266b0a3ca09c8d592668e92e49f97784c2b407fe8735c8277c7c2f0544608cef1f9dc663a07b77beba760f1633e85b0de0067da933eadfc8d9273a3637508004858da203337dbb79a09b37c413365101be0a68f37938c22feadf0ecc84c9397440be2a9b8a2841a628dcf7f08195f7296bfca4976c787fed540224c3752dd0f4d9a65e68af4ca35cc5ddc7ca09889e99c4eea5edbc067a34ad218435b33dcfa4a911cb69cecc9a07732977d90a1c334c03faa7496a4f28a0a72c246469bdfc78651f544242af7eb692b67edb680a178957fb6d35396baf0ec661b4fdf74e6db6eac89db75a6b5b967b3dcff0ffc0364a5208cade62cbcc0d9923ed539d1c9554f5f8d7cc213232f513ed19eb69c324017e64061359ab5f5e62db48ce41420bbf458cb4f487266efdde717d2dc5b1b9cde78abd3655ce9dd881b2d1fcb99ece39f44eb13618c29e1f37e4c9b702fb0ba1c1b234ca6b7bd3c7f2e5cfb6536081f4601e544e3bf73004fe3c1229b4210ac81abdf7c4af4e891602eaba7ad9ae82b6b115982532ec4a19b511807a14df398f7caaad6efe3a9a4d0a37d5f059d506dffa21c4a8bcc41606bda1145a5414df8a208211a9d69e65fb8f31d419098ca00730267fafe841b023fc29196cedf9b89312efa6ec211a6d190d49c000a2b0b7ba9b06a82c6d900cfed023d3f752f9d00cc0e95f43c94858b70634be72b1c3266e76bcf224ea74d2682508509df1c9d6ba294e09b8113f6afc26856e7f8e99f63acb269495e38d88d4c85c72228529ce4be37a848f84fb390b132702082bb4c3fab11eac551b6224fc30830e112494e6199b33e1d748d9726f5a58e1c712120e344ccbda345cfb9693678bf1f43931422857ff07e50a0111adeb0d4fe134e88590103b35090dd5153114ec5f7a08a84a1856f9e1d309eac0ec744cfe8a0ee581ed7c80c2d286356be223c6a2f21b831ad99cb0a431c0c159ef0635c0f60222cfe9bf003fbfa84581cc9cb6da4602e355fd545539495fcb7fbe4ce8f8cb041c67c8cd162f6bb487003b3e59261c6a6a6355019596fad12b76350122819f43afbcf7047d67c0dea74b2a628c9c115fe2a7e37586f19e6289ed0960edff095952d2cc7049b23cc3af4927eb7b66de87f0d84e1f1e70e5e28423abef35c409d4e33777d770f744540cb31ca8a855f91058fea6e814e2462b5998d7be159c94a3d6b75349862ad4411a0d05955d67292a9395ef921c64ab10cf3f0eaf49534cd3e9f36cf61e1494b3d3533db0712841173e0cb4a883731c7b7a9ed110eecd5f35da0c0f04abe153697e9a525bfee1c2165c6d04a6af22d1d72ff6b8d57e0e209d08cf705576887e1b51b7f2a578f847de30212d2d81fb13f1db0b3a38c481d55f27f9ed5ee4ba753a92f74cc47a471c4788b5645112be2df96a60169d9bc53ece5a1f0ffe9de6c9595d0be0e74a47804e36f209937f1de496715eb239f02388e0f3ce6bebd1a557d5945f0f8d02287123f73daba76febef3ba60ee47b97af0251262d67e3a9757c163da2850f1beded39c87403820d67535e55c95eb70026f4a58cafad271ab230f01a7cc3c97039dcbc5f38143c8f7b4579d7f452b2009c57bd6e10632418642252df053d101cfcc6e1ea5fb0cc60082feb2ad54ca46ab408d4b3e5540a928c70bc9af3fb7c094a8303e3c55053a5a05e82b18f4847dd6f67340d68fc1f9d99185e631c340fa4b43c966d148fcaeaa6d0b6cc4685b4cb443891a59b8ce3cc10efcc4d5137f0973f2a35961db19143f21758e56b7d94fbc6a2282e910cd9bdb687c45e166f462e938bb47e26df6f12b9017b1ace8aae67b91ac6b6a424413558cb22f37e608cc9b0614cfcb2593674a0092319e4d67b7fba0278a57d50417646a3fac3df136d669fa934ce96356b7b45204f2ae1ab4781b3fede7ddc502e2bffa880f8c2cd019d74e501b50514f2e09f6a3014864cb5336cb57377f6cd7c42d654ff6e4222adda710f84c84640afd8678d249a447d1a5d95aa874319f8388f5611e02c0772378136ad32f71c0b77485eb24cf3297cef1b16b1d6b1178eafd0eacd0e12cc15de09a2bda6610be40d5e8b8ab1eac83bb902bb9449a3b191acf29b3bf4e68c2c7d169707d7821335f92490ed29cc8bfb73e7d3a5e4e7af0c5eaf68e68274ee5b3cebe7885864567ef8fdb5474f12d4f46b6634c5457e61ab54428edf7913905a5db9aa3b4bd7c6eaf3ce8699fdccdd12be5c92eb5e960ecae743a859b12a2d7950f136635d7e31e5b39d8590722bd0348c371f57d0593cafc7ee072ab15c072030c19f4d3f827d65d3e9250ed014be6931e4421126e6756107751ca250a68b931532a3d0c3b54ade7ca5ff7b071f8cb5fa4a3af04ae53b9f42c3a10d19e6a70960d56833d9cc508397aaf49bcd8b2ca6ef51739ff0318b43bc479c649f2e8fb74aabe6bb404834ff29208126db870a8eb8bcb7e3d3ae5cfad177ceccc42cc0c9c4bea6f966057017d925ca5758a7bff9d6fd65bbb3abce58b612ac76fd46fb21fd3a98ed5e5330a8a9d361433cea06183dd494508eb70064451d55f1b2534cad924b910e716fd80896d465227e61e636bb5e7f07929faef3bb83d43ae33ef085bc6328453ce65c521494402cfd8095ee424916dceaab468b4fb470247e365b382b962049b1a3f4f2acc05a686083acdf88a51f5769bca3f85e4ecd374b686fd4e6057ba13d6a86f7ac75b98b1dc53fef0f5c4d4ab3ef9945b06faef9dbca2bf8c5e4ec1ecddde219c370ea4ebc8bbd68c3af706406072f49bdacbc3d185586f70a87b4a107ac43f8ab94ef463a66b12ebf3ce86bc98e2fe246a6b429ce68bd8ade70897cfd69c9fb37f362bf6dd4b8ac5fea89c668a9669bc6bdede973472d5ccd88b131664b47806bb1d84dc9d4b0a6023bf77575a950993ba28fdb5a182196cb344b5082545d855d655b542140f16c90784efaaa0c4f23b3a8f034aa47be34c5f527666ac0ad3eb18353882c22304203f52d4cb3c0413c04f75b3446cc1ed2da8aaabb5ad3fe09186882bdd27c9111c1fc7bf6971068adf633e0db0956a873c163c99a7858aa55242ce372a862d023f4ab115ed67004a796c4fc491039e64d75b4f46dd0d5041baf9426d5ba4302692409f0488c49d248479b02adabc999a51ae0db6b157d9231bb5b4e6f65ef9e2e9969e3b42142b39d3baea1dbb09855247ff18fafd11d0851a95a7ce8f37eeca644b36a2e717157e25ad38c32310837f9457258850f645462a0f316239163ed800ae232958ea6e82f95b9c1a8dda6b68bd3f8d7daa83cd13348f8b145e8060360e0241afe8519c48387ab10e51296f6ae641551483f9a339771ae9ddb62c0cc13522782bc8c09eba285b4404935ac526cf8a8823af4460edd50dfb74031b974589352baf2f3157e9c06739d183c5c071c804befdcc2e833ba24c453f0a63371bfed0c7fb329887255e3935341db839826aaa787cfa51fff49d4f1d543f30d6b7daa6c7190f9fe83d9c0f507037fda91a74ddf6f55895c6024c2083fee433dde2e996b96a1b05dbb6f94356a715147961ba35d47166112e60073ec10ac7396e01d8183b180733ad826dc4fb6ce92a315492748733be91aedcab1a5ac242e2021c3d9661a3465ba4575428b8d072c6b5fd8e9d33d517fcc697f133636a7d0c33042f741dd163925dcf766a688204f7791afc73171fc997bc39d1da1362d4e8f013fd957e7cf8a64bbdf68d92e7952aa4642d5baf76e8dcf89266e8fa960c57fafa049b12b25dd5b0ac689bf89c604cbf359f8119d113d9d6587669289b420bbd0a8274ea127518f2aec302f227bd2b10b16db93453c9c07c44b1faa851ff598cb84679e0fcdf99be19434195118a91e48b1575a7f497ff5edfa66368f03e73aee6a7832ab0427dcb55ef2808e058f137dde034b7579058bd173d60354996d60b66e92c98520cb82e82b7c4464aaa9adf4506dc4b6afcac7568435748cf9fb641da7240013c1f46384fef05ea11012d4f61361bf9fa18e9febdb0516626124d59491d5addd488c9f3ba916a97e4ae0cbf1c37dbc686028e326015dd999fdb433567d7809555aa857b6b7cf87d3bd16bf57202b1600ebb018a9a5d612eadd47d916ec43c661a745313215594ec87f84efc4f640ca33b93ce8fb9aa60d4869496f919baf1eef0052ef8cca1f821754698404839724ac764dab56b03b2501849f14fe4e9c65c0a1ad84e4b7d54aa4bc11a79dad503b24dba3d4728b9dcd0bdbd3920dd6223e92e2ff9cbee7ba8b3450554624bc881f3eb8b0a360d21aab172764ab352cb5bff210d54017e0c82bc658c2e46b2d01de353f2bbe96748cbf2bc49f1336c84107fbe647b8da50f63f12113c677522472535e4910a06d7ff8ecb9512e829d3bf1d2a10c56a5ad7d22e8ea468203d15ddae8a039940cd211e4eb39504ca38846ee27273f3754d254eb0a8b6d466f213f74a6ed829ec109e7e1e9b93ee5f5ec0555cb9ab3c66063fc37dc02eec5b5e42422d88db11d0215519f2d7311367242e71503623f003e5738b119c91d4b4ed12f4ec84eb41a9add679ece41fc6c55db225900e759fffd678bba57bc8064030a0aab8df6a06c7fc225cef0e1f0156a08f637ecf4463a521084226fe5fca70a36c5174fd1557da6d60b8cf6529fb4aa201a1246b78121922a2e5ce87879ef97cacf26e7b65175e155f156f0f39560d319419db2ecf6827f5fb6d03caa964d5d9d99dfaea17ff0e26b646ce22149c82b213dd0194e2d0c08d8a363d74abe125042b425f40ae6ef5901a76055e428da60e4bdb026082eab2426cd01620793a4c939bf30b20d810a9affe4a0dad80bc80a4b7ec5293788d37485f591dc0b967f786073fa94ef898dba18ebba38637f5c2ed9faffb9a5542aebdf19c5d96f79b0d03ef2a026162262832c7722e246a660efaa0d539070314b4b3c91f730de3088a245ee7dd2f35664a2568065949635dc1e4c1448c4dda47fce864f8f47e73ee9bdedb413f04057742cdaab0f31ae7b62c049cb677790e4e5161de3a257fb6282191880ded812b87ea91a81abfa8c6f4c2eaa78ddb3b1e5e7ed2c0acf5dd058f6afb3c3eacd729f1400bbed8cd6fb9a93188fe2486c19db203398c49d2a6469413f8c2158a48d3dc4eaa9d50858ea52313b08d72939156e262603809f20da288ece8f96e4efd6f9d16d4dbcf6a8597f36d50f9301699600c34b8c8309fbdc8e3472ebb6d979e0a13bb0be910d5fa066cbfb6be7313bea1840c83f6a945fa216dedbe1ab2f7cf1beb8f3052a5e28465e5d32fbbb9f676e2f004a6630495a60af1938345677896ef8ec26ec2196044eb91a31faa380d6a1a58b297116e1bc5cf8aa8668a6a7fe39a56e131d89e135b85d15824d604079c26fbe496e2a3e537bf13c0126e7e20e0cdb474b43ac1b9ed3143c19b32bbdcfcb068d9db5002e748f44653183eb52cf86896268e4ac36fe4d7ca6d157ac5f17e6aa2e229ae66f1632545c7f7d88847a4b0455cdf2a4f9820e75cf47ec4b4aae99e68b5e0b6408f27d5c15d3940701e3bbd689df0e84ac732d05381281545cc12357033b46e0a0f5c1a34c40d708f2d091c40fb347d760bc25476a5e74a53bf34b303f3114550f714a9e46b5797ce1ffa450a04ebf0d2c36bae999c3de9bc06f2bbbfe05ef2fb83e716314bde0bc20b5f3cd30a94941120847c13aafd5bf829f3baa4624cb96245ae1d027002b6837df4be0914c5abf091bf5831592dc347e57c9cd8ce60a4f8ff797987725deac5b9a3ebfd810d2b278674ca9291400e8325c0ae117de61091a36fac0fc4817acfcc789bd0dab05055e4eacf495abd8ef179eef1aad7f6d98bb2815c731527ec06f8b057b063539be9cd730a19544055cb282f58cec387e374744a748b24c1268625a5acf518a8a7fb174daa79d31d2cfc490807070738c305986bfd09fa51875c3441747a0fbda89e1bfeba1f5de51c1d26cbda0b8a4a22d083cb0ace458706bbf3ec54b7444dda7decba8e14116eda46db4fca65ec5326879f7fdf3a9ff8a397490fbd988e75594286d1d1fca6629ef247e51727b9d31a4c6346990f153eb0316444f436b47c97d3aa33990f51e63db2e470d3e065d1fea624d33bc3355548341d660cf3f75c81fe9f06b5b325eb353ae181e275bd2fd6a3035dc49fe7acb4539903185367e051ed7ccfde48a5a6e9ec24983af3ec52f53ef8782b48a3f62fdcbc6f76acbd6aa8bc3d6484196db1f2001582a09fad76621ff8df9bd5f35e662cda97d412ab0742ea326d9de87b0dfb4d3b971597ceca56677b248f6d948b25f9c1f96c3e76788f8a572e5d73ed5946e414e75204c1ca893ab08aff1a73e03f24210942d342f8a970cb43d0707e6568560a6996ae516f5f79abeb6042e943aedc811d43bf5d046fff16bd99a52fce9cecedbd8bedee202a278059b993d72d9c11f17afb04245d8c46c2bea9aaf98f132e7d792e41e94a7b99d78b9514be886d53ec02921a8a49ca5f0303db6af03a8d9331359a63b25c17ddc5faa88b4fbfc6ee639df4849a85e76f5a0ac32899d5ea7e227f22df77015d9de3c700f0414749ba412f836a4d5d6d832cc3bee35d9fcaf6e336bf3a3d875491b41170f78b2def495bdadce39b58328b6ec29afe81b07b2d77329a4945af7803739da1cc18fe7e43f18d5b4995aadddfcbff0f0a24ae8e626ce145335440c5f7d9e0966c807d9c32b939bd97746ecc3d9e9346b948ac7f6d4fe2bb2b1227dda1e97ea074dba4aacb3143eedd475c849bec230a147c4ea2c58265f5e89607e8481caeba3c331e5734abcae8f30cdf86b3a3b76c05d45e1ecf775c911504b9c6163e6f4a0e376691070b3c524e294a1794c461b22402bdfe813f0fbc60f854598cc40f585517e45182f94c8217a07106448d578a894aa60d7051717bcafb70e6fb3b597af0818e8cd5059752473891bcea7ce577857be66c9164d6709a756e0023ccd1c58364ee6dfa8680056f477cd09428622e733505f3bcc1d2fbaedd3382f31eaf78141d4d5b879d61e66c8cbad0c51475122635f54b5923ae0325d1827831ca1564d192e7eaa96c305e1eae420f18b61373ae0fc89b0565b48ba638f4b835c433187bfed4438d13bbc3aba04843ac1e9d4e6d322da60d67ba88150c9fce621091a0cee8e36b5ed4fd81f6db31ba1b8711da2078b91b3b51ec0b75774cff78d130f9b5eb2be01e16ebbe2cc4569db6f0af8e338184c82c5c3df31792a355d1c0b4bbbed100ad87c022fe5b21cd4359b26a23404509c56a4d40699ce448bf8eeb41890f96b544f54b4a0486bf012216690f02e11dbf577cb4720ae080b1b260b7931a10ca22d3959465e8f87f9a4c6a0e33b4d9b81596b2bb2e8586f595da6ca7dde30c9ecf02d670c608236987f30d130ea23c4060a1ee870e046e7de957b49ab9fe00c51aceef8632581330b96f755a32079e0e97eb22e396588b91fea19142efdb53a88bed8e0b988eb96dbbfcc72cd04dcfbce9c6018b50339576f322961a8906b096410730c0e50f6395a4007391ba12d2a5b163b0dce940b28d288d113334cc2de2c2c615fde7fb37fe5e2d001cf05106dbee2a81143ef82dd8b4d30b936dbc635a74bb410bad77e71ea9e8f2a5260fda8b9caa2a3643b56aac0c567c0e420f23f6d214a5ba84bfd9eebc1c90bc841f46398bf74c2282f8f4f5851f5bffdcc6f81edbad354f646d653001cacec3e1abad675f47a32fae6da14f4853c7961a65a8cbdc0d0eee6632bad33fb45810ce4c39917a35053e62987e21769b60ce6e53198a7ba1b29651cf5086a5cd880961e67d2bd133786ca10feb1f08eacc6874d1d114adfcc6bac3cd652e75a51b664201a5807813d963d819effecffe79f7afb4d4ee060d5e45356be016f077dc6a67e0dc93e55261c8c9c48fe78629afa1e9b2a40c57362b6cc54720280aee77276f922867cf85effd986d7c81bea4821411e70c6791286df4d8ed3e33b41d0b7d2f09a7c7e011fff53e27e5e2f31121e0e4407da071999f3d5d1fab6fecc083b5d0d7e206501b77b83d9925a5375be252415664881026cd05efe931375182f93085ad619cbf3378c07a17c6c2eb6d5c4b169643ba0ba27eae13df694676ec12378bf5e4ff141829f708cac70a72d0ef5279699d97817432d233a3af81d653f1b8d743293e7f877b1cb7857957425160220a84a5cdd0147b35c0a0f0e9c4baddf5f4bfff596e1dd36383b9a3652b4e328fd602c57b52776c995b50445a1d48dcdba8b85a9b83707875e2fdb067db57d303c4f838331c7ad8cda8d6f904f14cd3403bbbaea825f1a79229bfc5713d7bb215aa0e9cba5944aced51b6f78160332409642cb4b700852b7cc94ec9838de5eff71fac4013f7c48c30139734400426f783acf68c086cb3f1710ed4ac2063d19fd736ad879098decb292aebaafdd6e6fdde3884b4dc483bb0a0450788cc722d2d5a1e6f3180997b213b697f774165423f7b47cbbc25f33f68d8d955c2be07516d6cc00131d40873406b54f868c70e3e7646aa00bb42732335850a049a10fdb13675177e89c9e57467c49f8241c1fe706039192fc862573bee60ef2b06d38326facbf9c21e388ae8453a1884efb8dc258e5209fca6b2306d86e85d7150b43a7d5536905189d968d7bd0bb42452f65d0f5736807af7c68000c01e7b067054286ed6482aec60dd8e8f7340ae568b0b90899ec194dfa4dcb042360573ac78f440d950f7f507f78ffb162f2826aa1e81f1981c12428f776aa57c2292e8dad09fe559db035fdc4128080c740df04c25c1210e6d68695cdf567784b36eb3fc44c656973105feac496f19c707bb43dafaaa543353aeaeb78dd17d94d9e002e85c083d7fff79f3638b655587c7a259efb9c6c9a5058cfd2988ed7b238d4ec12ef0ac941403d11a027ad8aba6e8cad3b8c7bc318aa59e6cb6cf23fcf331b5163ca26a32b90c6b21588665d7ac4f89139fd6479c4afbe1992b888b93e97c090ef290f013a92c3e94d2beef049e4418aa790fa4ff23d7ea34d61c487a1f68152642fc899447d09a1adc9c928e96936715f99b3af6bee6c035dc45b2105aca38b9fc10da5ff5bbaea372408a7193c8b0b2dfbe7b09df374c4881572ced4fca412eecc7a46484624a06ca6d0f3db3ee4d3f65c69ada63fe307e4743d0ee01627cc22d3b053af88e9adc9f72a6fc604f2e85351f2d09c78ba9c7313344d47ddb4361107eb459cf51263309ee5a38733526054efeed3ac6c6683937a5d37b845ac813b185431791e06354b70c2d87d764a9fb5201dc40fe177edde8908a169bdd43054b61fdb021fd45dc50ab9a1744e82d255c552d4c310980d5af1489232932f494a9ee06f68d61f22266fe74a567f26fb8e709cc54dae8f0670aa2a5d6e0a2fd95bb17259084e8450871a0ce465b97b109d3e1c4284827ab5791c16263b41c48694b5144f729db347852182b7d57567590692559ec99aa248a90d76ce89fbbedfc17ca56c3cf07e2598633f1e306ed982f3adb7e2cd62832f6e6dcbfdc061e53b429056bd171f42c0cc608fbd06e36541ba047976f3d39ae81a8ada672828f42fa984007b9f2c4f8ab4e5a7dfb542c886a0ff832a4b3757b43f2306076b0a465a28dbedf2f0ae5e579237f32d541ce82ab83a50ea0f2319f7d8125e9362befc2ad65a82ecfd6feab1b8e4e26a80e94e7f29643235f38ab1723acc8a5cf09d445e9b7bfc4303781d11e882d5747563fe9582b813dc077aaac380ecfb7fc24707954d510de274f4ecc8e92a8bf11dcde5aec4d44b26384f1a6fc2cc672ffac1adb31e2872cd862ddbf2c157fa05212a2a9a5d73ebefb35d8c575c25a8125faeeea454937a73b16594e78f9df80a28707769239136d52de27ba5250d6fd65b6674ece6c0570b6e6dcd2641c08d4dc4d0dfbdb2adebf67bc9f4f5358d51c8a2b9db873e152b614da237c6391e9b0f2b38de06761a5870a5c440e394814e049e75b52d402b6fa099c67b100a82c7024a4d65772f0ea4a5f7a7381ea960cddc271855a09c75955ae9dee1f5be47088ef2a8b315ce30823419dab74e7b1cf98d2c96ac4a65c5ad0c173d7a92679e09b6abf1fc52cbc2e56df0152a72fd1f204fe6144c2903c25173614254e7586923475fc50c9c6ba594dbc3b49e198d6590c64062bc593b33d2dafe9cfb9385fafd771b0d6fe44c3ad1b3a8dc965c9c932116556f0ff7cc143cd9942f0ae6ea4c5a54859955f61a4fbcb2ba937671bec8eebc75eb3e80648c2555c964ba7c1f895f62600cf17c5d86ae32bd0aacd9b564214274d319b5c8650d03948258ef74a470dfb2fd1fd970f7fa74f48d79471b1c14cd192117b1f34f5a669f277290e01e6551cecf5b13cb17ad6e3d9d395fe5862df131a97c694ed28555cf8bb65259dc38bfd4cca6d2d8f86d899092a09bc3d9a6959ed2c9e7198e6881ee98d453fb6337a9e0aebefdecd32a60df7fd366398794abc5cc6c5df390b18c669ba27621f10047cedc084c927109376fa16ce606d818c6d8fbdb03d6b841666ba79ee9ef59e0e1593a40cbf6c0cbf8855e30154d25400813f79b653346aba072587841fa056fc8b2498dded2f92956d081572f4853385e9ec1e610b6508446fb52e2b8b7da46d622dc00f52ce1d095fa2cbfcea419a1f5afbf249564b72dd21863aa4178c1f74ccea9c641d1ee446b7c6190d187838880b0175870647ce9f7d5939e6b3deb3b77ddee727a37b3b09580384495b8ddd365a614feba9e207a4a9881cda3077c06d25d7a9134c26ed6480b27d3761ea511f9e45faf01049df9567015544ad6ed5011a20278718506718968de2d6155a68b5215f8c174373948c66ff72ba63c0e9a60599edd064605d60deb30b214718238284ce2f3946a811c1af953b2c26be6e4cafd550af57eed05f876642127a871adb10861960b7708948e8aea4cbb76885429543b67363cae1f80887a71d4d58b74dc8b3d542179d796a9d458cd99de6fe893f1663dbbdbbea933a19a642be9e7789a448de01d6d689cd88ab3705d11e01326f99c5d1906cc0202c33ecec2e91a031254efd1b374f91ed04e21d3ac3e72522d1d9c01d9ac55393c8f1262053674fcab54b00e49a9e5c243df78f8d45b40e1fae73e59c751afabafff68076680d6d643501ffaea9836db8549598dab1076daa62b24dc37786076609f26b838c70cb76fe22d478fd7791b4d323eea42224ca1c1539b3ae03d602b13730d616f6a564e7853df6ecf41b314579b4272fbf68b82807f692d8b9e1ac24a86dc34cf6623e6fe2e5367f5552c5b19cef3e403594c24faaf6f68c09120601d3ac7392cb8cb3f17fea404c0c5886901739bd01c03d19465f146c20a4ca508b578cd58c48412d2c947a1fee4e6c0488a7c8e565357d1adf92e9d6398ba4b7114833b002ff35beef8be57fa6126bc10b8b66129e633e26a95915de711dd23f1594a29fef636bca7d36f3e4601239067ec10082c8973499b29019a2b528d635e3e7db169d5cdd2edb1c8d2485bc8eda137c80c5c0de84ab270c169a5f5c52be82a975b9d34b261d4f2702d886ace83469d296250087fde60199188604047cc0ecec58292c6b31c0396caff611682c68cfde77c0fc19ac9ccde9e038830662a3a31bbbd444e189da14f265dcc13757721de10b66f3000ba4dc927b219f11d93f7755ce22d077e13c9ac01185b48842ba1a0a3f44a1dc4f5aae4a81b357bb571bb4320986442894c5e308b7c046b505afecd98f87b614b8329631497ae11fb16be644ed5eb880f4ebf5893985d360904fab77d5f64c96b191e6d36451480070bced6797c3c12cfae5bc67096c28ca5ff98b181d7b266de492b2c61276f63ea8a5ac2e3a1000c7b59fbbc28c35c8ba32efb14273eeb4dff3088571b38ce157418ba5bd63d4ace6fdbcbd9a2d8d59bd96e69c654cf817ef1ad9eabf5fd5b9150de84f04e5f605109a93647e580f5445d8258375c99e3108fa47c32e24e83578163df591e2d7759098c253eb64620bc764b347f6b6b0eacf3ead10e2c709d2e034cf1e67513ad902cd7b0ba3746361da473368435d8c410094d2c67f92b6e40df388d913062b64f5ec41ff5b18170b4969940343c1503d3a7284a5938b6c94b5f4c8e78f86b52c134426a28cc20e20a1212a81129af13146c76e63c1b5ec8a201fad188b76cb5172e8b322d13cf2872b78ffab17932ecc53f639ba3667e3191e20f16614656dc3fc56af503d26454dcef299ad6d95b7f3e975d1cf4e633a28c74c65ce3fbf61a57186665cd86a427df248913b47e4e0d7aeacd4dee416e9ff0713b6a3c9ce998a3c0773f82c1fa4504f1401e26ab0e002e6c6513c3fbb18ca85d4ca0582e113e496d5b824f56cd1d00a86f55c0c59f1d0dd72799c54fc9dfcb994f42c2c6a720842136f8a683afb937dce832d6c509b5f8337ac38f79882db7f5d432134bf886ba0651ebeab31e940e32ff475bddf35d7c49c47ca60c9e3db4a8fef7eae873459f62c5e80b536d1580f6d88bf2fda1b9ddf3dfeef92d1ed12089777a50667e3bb8ede51638b293d5e64a5cf50c9f253d1eab516f7ed28b85cb4bfa5f59e901926eec08affa2303191d0b80784faa10a48247bf1f17ea34edafd39e2540d17f98f077c8c2e589b95525660d844be72a8194d09ab8908d68ee3def0501702e4540df9e3b5730ebaa1095bf9aa41774651580fe202de8396b9a568bc1f33735791610325fda5d7108ce134433f8e4df1f2425395a07913799dad61064c8ea258f610d1977c2b849006e4d66f8f692a19c4a6296b73fe5f8832c65fd46c14933da27578617fa82e5b9a3f25565003b3de6d1d4494b2e1a43455caf207ee7c0f3e91112b268791c90ec56bc3a988b28d4dffb0e19c332d33d18a933da96547500cc88260c5b22458876059ac24f7297804669161fcde2034abb4d8e5a7dee380b071819af932eb4f77b6a2d3fae3c7bdc3ea732c1c08172b8f75aadddd535965ecec90a659c407336daaac5ebfa0a848d87a215585372e1d2f561981c0b43c2e0fa2832216033c31344c1a714426c846b1f3045b96f3b124c57da028b29af03b96f2a2f35e8c7ece3751b6c9f74d7267613e9bc389ba1447b541b271bb5b708482f457f7a36c3f924ea417bb3714a8d70353de18e1b6af96094eba7f2a81dbf356da19f3d4c2d53b5ddea895bc82e949c6d19e41f5d7257ace598e8bfb23b55c85c8240e65a963181a3e04eb3aa768ac6d6e1bc60bfdf3a72cf630eb7a6cf1418dec98b3cbf48411376913176730b2bc90f1752956aa0efc32da1cd850d5a81de5da8fdf3d2855e5980e47041e99edc0fdba57a8150cd536683f15db8e549b568d58fd483ab7acef40e8cd60a1a1b5733bec2f8dfbab91ccdad9629dc370e9fdfddf775a07ef34eb76c7e55bcd9be4c9f0ae619637b26d87cb011f66bdf01cda377535880f40b77a3a53ce39f6bc159f69f6404666e99d6cdd19a78d48fd6d10e3770b6a39280258c36859c9f5951908bee4202e6143761c59ba9961fb894f2599d151e8d8dd0726f7ed8a66c51fb71ddf87c2a89231528721ef2398b4eddec8b66d9bbf3d9b31a81899c89c476c7291af4599190714335efd476786c1647dcf9481bb244323b7baf5753d957135c038717e18b9e99209016fc571f51e37c2d28a8b8ad7f23b5fc5d44a8a4d26cd10e130203c5e3f1bc848a748d6748391c40b17915abd51e33957a6255616e337f2f56a25c8a7866e5a1b6cd2fb04890be062d422952319817ae1eb9d559233a9590f894173351c858f0c01b4f021272b0d9d7235bf048019e276841a19e56b6099f25762ba1ce75d4169ce1745cc5b196c7d9549bcf751c17da961d849631b644a9de4ac031a9861c5b20e8d0d9638dc97f2e056aea52b6caa86c5b65aba6311931f013befda75b1582ff15933c82d9a161def6ed948ee5a8676f4dafeb5e90d660db561094a10697572f90bcc9ab790a9734b30321259daa3c1c18277e0634022fca9823d6e5f2a5a7afef2ff9f07fcad146693af8fff34442959ba2601efa7664d8ce9f034e2562994f660f91f52d1e6ae65d6dce09b6004f0ee18f99833e68eacf4e598cac9b26670b1127dbbe7921ac9176cd4981a7d958739d786f18e750d63a389b310f3e2569b981a42393adffb49b420cd59d9772207d537d7636928729703263856dc06480dfad6cc80df8a46760d12fdfe13a4a446fd0dd931d38b2ca4cc16c48923c7624a0cfff2d7346eff3ab56c701ba6e6bbf5795774a3a9d44f6b3be8a5b4028472aaaba725e4b8d86e9b7c07391c6f160cdd7feb6551ae1ea226f25310a9812446647d271423d9f635ed06fd7c3868330cebef3b0016fa0532554a6a08b3c0cb4709c0c2d4e7ec8b2d3c4721a6d30c365a8ac5cb6f435e3703e7c1e79e8b1559a8fdec148af11a851f82b64aa9838a57cb8b5f03579f7137c663b9726c724aa4809d5170cb615941bb934639b7f59bc9a7140c768d6a7b7d42feb132583b6568762a17f317d893f81d0646d08e43e1df56b83e7578cd22504dd0fcf05f67f0900bbf95c7df96fa191d96aab3b5e635af4f64d53f9b846269ef30fb6a59eedfff60d76b61e927c793516d5f3ac832a07771a40efd8e6129d04f2fe2a752c32c12bad1ec6104c7cb07ffb1c5a002729f54cc908de6e6ea7afdabec2ce7d5c5774d44e40521f65f7694ca91a7558d78e2b7183c65b3536d9fc95bf434b62ec92ad0f54772799b8b167201e499ac3876b88b793003e8b0b256d8ea5d453bc729fe9fe3d4b863addc78975b5581bc4dac142c39d6153fb69ce16e759a093375ce85246f54a10dc6f5a86a0256916751d0a9d9dd6bc1a353918ba162c3fae3545fff1c26bc375368628ca181e6c0103c976949daf61bfd99eace79e428a6e84222f6695f853bcf07c2041c93aad0431c2900efe97d47b10a1b36ecc95937c688937f9e9d6896e54838d4dc00dd14fa3d5ed4a99617edecb69addb6091ced7b75c829b6c59cc457ed31618c1e7ad7272a314ecc7816fd670417879734d2a5c7d72fcecec9146d1d4adf04e10f448baaa1fd983ee77fd4a7cf12981891a924df4093cbcd1d79562d10ef358dd86b251870ba49bfaf67c7ce640746f30ca916787bb1a5fc558e267e47ca46ff80b2bb5023e3970f1ec88ed8efa8d1bf48ca9015bc00f27872e341e049daeb5cb741d181c067736254186902660f8910451cd6f9f8120d37fed144292341ded89fde22b9b859c9752df4f97782b6a38f8309a26a0b1d5d83b955844920bb4975947eeebf5d9201bf3b4f55faf31fb117a9a44291af99916d8bc7db16a9d16b0bbaee5bdf4efbab4a89f3b68279af56e03856e57cba1d952045bba3513981f8fbafc7ac3132e98d481beaea535e4ca6fdfc6d5ca627c78febeff599fa3156c8e6be0798570e6f50a9a3e2d6c9d5d8c13689f1ed4634c1dad889d16d3f06152922a0f098763f0189f0adba97ae34111efe0c2c996ea004c32eceffc7b7c81f871c5a7a10293067317af708bba8010f87a3b61c9746e8f048cf35b934b79b52682e5ee27b5175c1def946d10c28549fe3e731745b96edd1323649e5eceb4081528279698eddaca79a88871bd4c7941054526e6ee37d552ebce9d4fd4b21b48b65a6663563209c7e91bdba9edb68d2ec113ffb622ae3d02a24a868c11f29e33d2c1b21c338235f6fe3f11feb6da3f2e77b7f875c96b65e4a1d98124d8a230960a8dd9c40bba5d2a7735a2ad2d9380b2798d364ec72a550233fb63ec9dd6a5b5b2fadc0526b6cd961d54a408ea86dcd2ca503019b1fb320ad10f394bc504e3e03f7c23e41a4aa24fb79235dac03c9b9b9b261bac07092d126ea268b4a0f1f4ec7bfb0c46e55b364949a875381d10d6ef95306db09f1b004e1600e8cd7531c3b52c738237ddd2f7eeefe59da679284c6f460eabe9823dea84d74c642ccdf76a08ed17c432f2fb3344201466201d66fd34cf72a1a39340d969c711ba3669e0bf8fc4001f4c4ba80691036c8a4a5611b008b6215bfa92c77f4817bcd51e935f6244571f1d6dd7f9a5e9299e9ed03f0e19d711f245167fc32c59a8bee3980ab254a579909ac68db87d3f2ab4c591a7a20c5162b22ad8e83f35c35ed0ba624002c54f1cc155c6b7d91e9ced6ee2737e51c0da3013c6469d357d9701124f330ae954be75613f3004dd72ccdd3546b569dcedee4d28e52f3cdf175963938ca3351c53dc52094a771772ef46493d06c08f036fbe5957cfa61bbc555ba63d61b2c3f006679094e17f70aa4adc45b73fc4d151b18e81ec17555fff01bf8ac9823d1d64549fdd3b70a1c1baa09b3d57a2492b0f94d21add8a7b0dbea1eb1011b84a28523b0d6a6ac2e3a944c546a2c5af4858f4cc5a4faaea28da51ecba2d28e36bf4d3405bfafaf7e87cd58be5fa1547d276837017a53af1358d98ef6463255fac2a41987bf5360a87168a8003cb0a08b09cdcd5d845b2d2cc5d8e3665a03486cde38d851d9f0f64348f16444e99355e393f2dab06ae2b1b8ca2710874b0854f9900d04300a721304f2b86f8ed6c4e4798c6d9bec629b9446b314216c9c61a978d21f1626867ea19b0730752895250236ea21f9f8bccf9e5c23430ea8314ea616926b802caf79c03c040cbaead2762c0bbf19f84fc204a3ca475e5137381b0fc5a6bd5457c97b3cc95a73ae1cb26b8431bd5c025b868592b6b597b5adfd464f6b14c0cdf745d381eacbf12ca7d3c4a7e4f63dbfd5674697eb1a2a02bf756e86bea6a38140323c0636c408237de4fa96b82c179e228d6af51bf40d8bc60b999406288d5f1a45d26c38bb410eff5072b99e124c32c690eef9351796aa35375e069029c35ce007f56771d1a0848b20f7d5b75ff1038c67a7f5466568d82782e3bb0905e8d12fde2cde7f1abfd63d44516b9c961c2eb8993eeb20443568bc60baf30894cdf330691206a5b291c9cf0bcae119f155180df692b457a2a59fbe1d927a73c2b518d2763b8c6bd9b0494c39811959e1dc216923fa313a5e4705f7d91d93c46edeabef008e9a0deb34702d887b3fea9b12715d30e27a7a3dcf910eac47ced3fa3434ce624490304e6166652c4053bf3efe915dd00bf10da0bb60d9086daa1df4cc946ac2382ba620c54bfbbc8b84fe2a2f4960af983883b8d338af473d05be1e064cf34336cd8db3860408f4730a696af356e54fd854ef24660397f5c07bb324d16adaf6e09a055bbc9c7979d07cfe4da166da0c547b002075518e4db268a06cd15cca25719f0be26b8b1ce8e048be7e8c9d738a4862be9753c097c50b4d3fb97f24fe8f3b6d0c5538bc516d574c05aa17b53e250459e2faa184326b23bd8d6aab7ff30486e671b7a707e2c745fdd2a5006c38c612e1e871318b110e268d6542d019d809b08f9293a308a50909e21889c4de9f60ece99ad884135729eebd284577111885e97de034fe7a57de3bc30f1b17a4cd1f80f648ecd8a9b11e4f0be8b2177a4bfe2cd6d87f07e6e47ff25646d41efab32ccfbd1114783893aca512aad00927bf831233843e758260db33f4256fa9b0afa5c24308b8e096b1b480713fa5c77b59de6a9f61f1dec20ca8de65071d351621fc1842982ca220673588dd45cf4e1a96dd8fac622d74f25091ca6355f2a55b7b50b63eef2bba6f46f3946b9a8b32a94589e03183a8246727b75fb08d04768ee87aa40c690637078d3b73d6c0df465006e2c61fef6630bd5abb2a7941127d1ac7916ab408f8016c02f180224acb04a7fb703fbe140590ec0356edff15f1d30ebb4babd8e85fbd3bfd1c89c47ee1b0ac3304576a9563ac37c504a052bc8506f670d22a0bf33c6071ff7ebef419d5f21fcaaa2fbd21c2204b4c8cfe6780eff31ffba59d515f133f5a504f6fc72c725a292e225dd7dbaa193defacb72f97910649d315d97abab06efbc8cf27a1ba69ec338068345f5bc5e7f692f983fc074c49282245d5f1871bc6413a84c6eaa8ae2e1118097b663bd91e7e6d5d1442586de6dc0d7fe569dafa3b88c3883528d58e502baddd6170e6804ff755b7cfb46a4e21bdbb8c869bbee325d011beeff6170f6987938985c7e2592a9c2e5370d247b315a445d9d454830cd55820f01745a69e36a1a2a80bf210695f72f863112532a92d64fdd36df7eefbba0411d413329f13b71641961f74ddd531117ba32228bfdbb2a46b4c257ed22fe9c1b9474bc24691be995eebb12c5028b4398a043b3bc66acdffa297fba059462104e80591ae1177276022dd3bc51a53f6fc80664bd1ea021c47b41d561abaae93ee3cfb67053efc8e23958939123ff191bc2651f3855eb01fffcd8ef6c97122b58b335ed57e28567d9bb4bf23a221ce90d4b73bbf52d73a3a27c65f61edfe02cd266d3c1e9069171c37e1874a3c0d181f402c5414515e89f82189ff627893d98889fb7b12b830f6d69905150c937059e227c63df7ccbc0d845e45f5147f32aef3e59e89388b24ef21b9ffc76a6bf406da33cb2e6e51046f9947779d0de9773fd0fac1a51a0417261c4a842edecf93d33779ff68042513e2f444cc1c5fe7954d6b49d0792b507b4c36b4e1ee96f549de34009eb7be88bf6cf1061b9e24c648349d9d199788e22480c4859b640f7ea673b5759478699eb97937162ed9d1cbe2e529a02ca8d646bf7a5d9b818445a3e9cc99c95445b7380e4684944a236d663d54a79cb9d24a29989e023c50d0f5023fc5e87fa5fd2371dce07627ac5d6f9563dbe3b1ba6a31b36971ea2ba824fdeb7def5552ed06a1300549bdffb0cf7a84051e63d729cd10e1bfd1a8ce61e4252301aa0d1b158be0fac83e54686d3aa22258d93e436bcb504096e97e1424c0ed5d02e574a03d2e097740bcba4f0a748f26ea7dbe23d8a5c2465488acca2f6415f38ca474870fd516c2bc7e2cd7ab2c4404c3735c016ad8f1b50b0e15f04bb7d09cff8b9ca9eea2824626f49e1ed7010dab24a1d863bef88a49fbe4b1a3a4ddeb97e658436480b7fa4d109dd13e7ba18e38b47e4f83646c0c52b389f4e27edf3a4e9efe7ad52a6a1d213053d77837e5df6bd4ee1fcf755d2e227a89b94dd43a45fb6a5b423e246ae1724270153e151268bc78a0cb12a4e10fc86a83fd270d7f78fbd9638e190caaf99f0e878ca6f50034d27f7921f5a381e72a9311191437a0578a65493e0b5e8fa60fbad7f919913e5103bcc83ae5e69bedd331495941266b45768f83b051f4ab73971ed771208e8d3bdf78cc501ced1a5bfb60ef08bf53f0edc3745f600a2df23b5170e24e9d241fc33551ad871616d67ab0d6f0f8c72ba1c665355730df6286f9841227564116f4e9d989a692cf77d1a358a34b9f3c256240082583a9b0e4e2328adf72b94e15f1d2f4e95e8dc8821e5cf345963dc20dc9501d47f1ff46707b028b661244a4a6af0138797c9f8f6c4bba9ea924443467fbe61955b50968521ec463fbc6f8ab33b6365dd7bf3be590ea97522f5c504c1a2f896d75a5183b9da892630319d7ea6801eb3e451c40c2aae52361423e331b87bed89a56161b3b645164e16bfaa1568bcc9f5eac0eec865aae6475509a04e80e51db14e72522f611527d2d6bb5314726118699fcb53bfc59577b1daf91c8e71e9ed4dc4b8d9d829e114f4b97771465170418ad8bd45f9ac968cf241ed2427e9c464a2820bcd06b7fcea53294d098ce418138e5051c7592313ab975d2c377dbf7e28702b0dc74cafd7aff606caa2a79fde1d62aca7306a04abdec9dc2b1cca1216c05f3781ed9762d0d6a346d2b9b50f10a3c9f99b888af25bd4d92518f54ed0688230a55a93dd1a2c2db52403d0c993dbcbe92ce8e1f3d6e1b9348ff2393fd58a496dfc48a8deb575e4042121435d37324e2d0ac8e1beafa8289fa46b33f15d1a844a7b437f1d3e7eb15cd4ec916c7964a38b79c1a4e11c65cfd68b1f87856e1e8263f55369f9456bee4090d7a4a3da62a3d63d8b999e2d56346a4ef52bd6543cf4cfd4eb241a5a580fab38d951a511a29bc29072e1a7350128c8dc8de7a4da3ce114772707e6c21224fcc92551cdaf4e4c93c3e80d9d43c2c9f7ec07c89395af473d12e9734ebfc7e9f311783289289dc802e2f5c42e35308fea7495463642ea2ec4aec339cf7bf57c3e136958a783790ef7f85144c99f8be77113ec6f0689648459d25563f01f0763b62131e688aca9a0d3926c360426967849693b538107243683ca2dd2951821697a534df6d9bc9fbb8e83582f502128fffd0574317d70e798396cac87a6dc001fb8d8b59fcd75b8caad23c90213f8c27f5517f8f1dc3f678349c9d7db95b2edd0ea41174a3edd25d314980caec790d7c16eaff8925529f6ace8d9a8f63a3db93b1be972ec930552eb0828890d9d4464a92a9caad823cc235ec1d91e3957ef65a0b0dac4bbd118b53d109ee2ee49558cf63441f7b8dfbc64c5c7ae4eb90116100a96b6a458da21b36c2894ddd705ce77b9b2f0d019e9a7e73e279b7942f4b7b5b95227703591ab220c985e5c733b99a3eb53a75e3ee935132d0f63962c9a48c5234ec048b4c3b12448f2bd353ec2fa31cbb57cf03ef0ac742ed43cad90af884493c8bb944b362c7dca0ef7a74a0015173c2041bc505f4cb62e5aa43f0737c27bc9eb597bf523148d1ba28c1b222ba43291a6885b58035b62850511f48d236c595567a0be940139f009a6da5709aa1fdd8d0681bfd7bba4666b6f5b0c6612f9c87fefc64cd21d6672529738bee6f80c30ce427b102ba78a280bbe183b96a36c66ed22ab10dee7316be18afa1d7b6bb87fa5afd8bf4ab9e2218595478c567097db400b83e060f6c706ec4f096551e2b9b28a0df8e396b216930f91bc1a08653beca128e5f4367b9337aacb67aa61a741453c8382b8ac6b4a81585612c537f9baea162da6de282fb3f452a128088e89d0865820adca8d872ddca17cb3dfb2aae452432e8f0d0ed7e20f5315cd36090c53eb72adf2128ef314afeef7be4b3c5391cdc6dc7804d2eae183da21d089bc49f3ecdc3f5ef71ce93f7db24a798047ff200ea246ecad4729e420a2742e2e5eb29df6bd48d137ee7fd0cd31d9afbc29a9dbff368770441c7f77adeda76f224d5a27e081c404e115763c323a51eba5f2464d8decdf2ccd082c96090a39c9fa374ed1f37751b5937df2914b5dbfe49ab14a8b93720a4aa1d08dc45def163ea7754079f76f14f93309285e9922616f597dabef8d637a1cf6bc9363015c9f75158344009f321586151ed616965a1767c7a005331f7c248f1ed23e65ecf0953868bbc0dccab3395f480b3d01632310663e590ecb8a3ddd19b07d5b2b4f8f3d2b13cfda9640821ee58f2b0d6004b170612dd9e31fcc2d234f8c45e7f60beee534a7557ac92c254d705c3df9a642b60e689da4f6c7fe94285e98fa98dfaf349a7deb8e5d15edb0cd451f676537e461bd95b3b61ce55e43824f487d5a3ba4f1980a6366f4356385fb624ad89929eb3a8fb3a3b18a1a6761ac44732da0fd41853f890459cb3793462ee230b0600752bfd2df1f7af88d5aeeae81682e68a4c1d7d1e306a9fcfc84d9d3de8db0d339a14bdf973cd052b3e28c8ed28cfa3abc6b66eb18c440f531e12b65ca4b05fd4cc2aa6c74b088be6588f949b4521a716ae52f267e3317da436d797201621ee548262b5edaf121c4699608a562732f91284bba69dfa52a0230095219ab50626d7c350a29eb93342447feeb81a1f003f808fc8563ca91cc80ec52d3c6028f959dde0d47cfeef8efbe93c1edfeafb470840568dfaf22e0f514e8cc8f106a734212bdaf79594e438ac266147ac3293ca4660a2b3a747184eae9e76c218135718715597aba9efb0ff43842bda8a83e0e7d494ed83241c6f99a94eac7306e64f0ba8c62e3bdecb91569b060b48276839095a99d725a902351e006e3afaa67874218af761d5a25a5f0da5c4c9508b709852b4553cf7d705ef01d47b78470307b4cb91d2caa005223615f7f742ef66eaadeba8d8eebb4c51ec2305b49d77a3f26566efc4b5efa177538aa78213511bbcea6ccbf0443e9044100111c8fed3d5e83143eedf0f7aaec40c332aa12aae5fa7552f5a7df0161312a1b3097dec803b00e69928e0f16da596f297554de905616756e4bb60f199009cb0f0a6f31f0942a415fefc098e198c921e62404536b00e72ca273acc81c1fa313848a3e093cf3b9a68b091310623fab385635327cef0329636471460dc2c51afbfe6ae7cae0ec98a0d1a5b8b6fc5d712d9ac075057d58d1be9c75a289c7f991d987f59c7c940e6597ce9b3b559c2695f8358a7cfb56937e61722c642f6606a410c216bf621ad5c64f2fbbe82e523f26b980f3f4c369c8c04445ad329c8240b331816641f3c9dbd56654ae8af6aca256e952ddca1363d002340b162d061700b6f65b1fc414a9a681dcadce735657c38325cfd43c4f240b1b365af84ab8aed921ee38b59e026879f458f8c532705195a5f729e3da13e0bd78e4db2c217c15f6777d6cfbd0e9c4c1637cbdae12db46b49cc2a3d169aac63e63eaf605a2523f72bcddf93364ae65a4da3029370dedfc737e8449b4ace70fd573aaacaf98947b46f64062ed32849b92c01b57ba4015378e4980f04030d48a25bd8ff6f6d6650aedf02ff5670adfa080ff3318b56dc42924bb1c601162093f024ca44139552816e495775077d82764bb68bcb3c5c930d923c7a13ff705e239b390149d73770e51740405d4d390991862fdf2853a85faad2a0d3c2e028973306fc3364f0abaeaea3a26133a09d1f40f698652d5ba6990288bae08f64860daa6bc1ce2f6f809227a16cffb5c4b73c3b7f21f1fd8f1f8059b667a12bc635436d0e96a6a124ad1576274667022c344dadb421c43cf854eb12751cc0a46b69e9a412b4a1bfa380b33f59f5bab21ecfd462584bebfc459309fa66e8dd5aadaed26a76722ec93994a93a7e54b74f9fca6783ba1c89f01a1e903192f845e04e2df3eb373aaf9170b5cdef5294b22c8242ba8429a5e0c0bdd325c01ca0e38c363f2f86868a4ddc9617e3e735edf6b59c7534b1933d6e83edad33f2881553e88b90e978d621fd5004afe2d9e11b0babf8f00b2b1cab8a262c036c2900b54b9da77780b29e3f5701cdd4f13e600ef02099a30f8c7f3d3f41b8d50f7c0ecbf22b81f3352a1a048b3d093b5405b9f1da35be3d6254ff8c458e8e39b15a3ef98d574d855d213c59065a655d4748399ecdb612110d0ae85aeb1a68ca55e8ed54fec0985dc8b2b42beadab1b51da2855aa76d70aaf4599c5cf3033bd02f0017c04763e71e4e302e7a3091768203edf4b937335e3050ef4f25333c96aee0c555d1ee07c15229d059fb4b671176cbbaf16a6474d21add2fffe6fd6bd21adb2cb26b05bd61523a43e717b86d51cc8828956beb2da4b854fb001f858a6cc03bafd19ea1788f47def48b0c2e590369895d665830ff335267d98e121e9a26a6b683068de9fd4f6b55b2bd43633a26a691d27939c75ed3515561ebcea5a8af79271d5af725f370d838ad8b29d69d5c836e5f4f3a329afa3148b128c5b5f6f723fba365a0502c8c48c6d8e497cf1875613a4f739a050b5db70593b4ac7942062a6d840731ffde5ceacda5c1cdb783d0044a421a18199070800ab4d4dda4207a417c4fc9c008ace563a5f03ccf87e893ab41f0f558ec308bdd9c80e2c014f0932d7f98723e7a2a2427f1d255ca8a8e0d205ed5daad5785e118af9a2082d0c4a10060a8fe271ec3ab9e350b1607beddf4ac4dd8e245e2e0883bdd98ed499581cfea12696821a3f96866d96a030cfd9f4b2f145c22f52abd2e3eb4f0f64399cb374df2b450ec6b8e52a585466de603e837ae34325faa22719f4f07a76250ca8d3c4dbf258a42f82eca49cb437b411372e2506994a82723ca6f2d211b29989ae855214d1a2b1b3d0bae68995bc1e9e011f759f3c90575ce78e9db011a3e7c2e686dd759df961416ace3781de6fe724ce3009be7d57af4bd5b00aec190f55916747148012e4c0e967c0c953d69e7dd59de2369a829f511ca94546264ca925ddceb46b8af9388902d00cea8be9542a9542ea6bf1205909730f5604b34aa30017cde59683d8934ba5623ca212664042189bb756dc35ab9a167fec9998a1db7cdd175a57e88f30aa905fca35cacceda7ad29f080e3c849097b04b951a18eac01dd0c5a60b35089155553fd5d780cd657c3edd33715c89b0e4238be96770695ac792fd364d6887d876e0f6350843ccf1a2eff7f14c8e6c0e5ec342d8580f98804ed27133ea5098417ab1ea165cf0ce1b96370af6eb7731e49a50dd238c073e1010927363f8c9057f10adffc2c482442990987664891456d2040164be1c3a25dc21180e28b88526be871d0dc50b53288c61dcacea2c2845d5d8b330bf546bf7377c321b9d841b60e6c2753f7245cce7a0572b507fe966c8c75aea264ae430fe5d6011e0f48fc6b0ab0bdbbe1f1ae5966580e101b649f795b2eb9603bd6d94e0c0ec7c4c21fb66bff373f43f4a79c6c9d00051ff5b9c95cf15464089adc9afa8ec036195b8d0227628fb2034b78f18ba2481ea522794cfba0e31eb75e7a1c11656174bca14059ab9492b1cf650ad4ae0ff0fbcb8e34d31603b28e8a5d23d0374e55977721b304af93d0b60a0cb2bc667bc9fc7eb6574f06d7d96c86e809829ef41ed286ab460e48ce742f5d4fed77deae147487ae640930b23601a425447f4f9138ab37acde2368e583093680f506706769cc37043b001d7996b73757bb6cce0b534e91df996fbb4ad4d47af266954a9b41ace3e0ae25196e4e0225f8e6e1ba3e626dc6c7dc91882d03c8c01d9da8124b27375f1c3a73088faf155920b047e8fab08cb181960534f25c667d4d8cef204ddf245f7a232773874af18c1c4cc504fa7968aa6f18879a52896d3d45e9360cf0958f5bdfc93631adc71b855b118c815aa46dd9488c54a10640f26b3eb99492df6e4738962b79295424b41755b62a5ee779b87e7c6883490af675084afee522d1e71b4a9ae4973d62c01cd4250072c7b7db94b167cbde7b61fd7f725daa0b01655fbdc42a68d789091548a64c8601a99cb800849f7cb3c7defdcf6c1365bbc042027d4e7a80c4ce16250a7ec6ad24a1245fd4cb34e2abcffd92f2c28d95ceb6d11787191cc8850b674b2845e9dc46d87c9d18514c0a1d5586101b44ab96eb2fd2d957e83f89dd4b1f43bc01508dc4877ffbfe18a373dd8953b76831301b5ff01f317c07eb693126b19ae3f25524400022c0bf3a14c77db1361b7624563ced88a30d9959b3f6e9e417bce0ef57212b0c70f7ea1f1e4b268397c091847ef540e56d1d91837bbcd029bf9fa300f3dfaef3c6e9d89f9f2bce45de53e5f8abd15ef83e24ade475f1b72d02cb473e67f14113309cb8cd59102792e8ca62f50f689e2541542b4ff642eb1825615e051cca65999a7fe85c8ceb88a5d7ad60f7cc110de41651aa2155fb2493f774dd632ad55b984684bd3a87143359a63fdb2a158942c25c4f8d238291b9603c6eb8b560f4a09f5ad8252ed0b9035c471561058175bbe66ee559eeee254fe9d2f98d1d0df350a46b32c7077190a83369b79a84c05fa1fbdbf9fe650f85a93182b01fb6036dd5aa91be306f7ab77fd21e8e9b6e86054876b51bbb738719c570174b83bd786c8dfaf23b3deafbd265bac6916e47c7bfb27c3b8496b353efd8218dc75e397793e0bbdc83d1ab053dc9e87232d67c5e273e7ee4e7987c8d613e5ff2ab301e699f37180d4a6e103921366aa19da2d8fcedfc81fe6e564b770178e416e73a0ef9eda5082295c36a1c66873af01df326b74f127b8d93c1319ddbdfa016b95f9a2f162ee6bfc785394a6452176046d93442017f91f176be6a10bc61d4cfccc3783075c4297877e891327a33c4fe8b9cf7864309ade1b18b2177610debc5d3df7f58f00eee477122c628c8860518eeb91101afba52f9b419e150c921d4f8541bd494346d127bde52a35870d3744572c3d1e42f035ab1a30963614085b92f9acf9197a79c65423cf2310222fae7c09092248ed014d4b1a98aaaf61402e7333234e623fc112da42a62047bce9056b8b8cef4a3d0a83b099d6411e42a3b07e998c0fefb9e9f51b55bfc26e9bab44cac71be49006a88be238433f8c5f906790ce387cdf0473b0790f4be88debaba0e6b21427b3c6c3ad5a846840755b880585e551f12d2bd47c40c0c9ecd327c4c402463c18c0d06641f187ba0f33a776f4573b68b5105427bcfac988c395ddab775133dbed5550fdef2f9a2a09de17e8741cffea3470a61e80592057f81ccdc0fbb3b23fa4000a457030c0a3c6a6fd81cc0c8ff12293b7f46b57534339f1bfcf9355e45c6fd5aaf53ff460556522ef40e9a6a2bcd8d4f347ccf9047541f7c7c05f7372d7adc9fc7434bb3a3c7f76eae1c5cd04e8ea7e91dbd2885444912ad27eae5ad4f2763543ed5f0a70102eb4b17a9088c85dc530d7637917e295f565aba84066c90dae008d8ac4dd8a2026ab34f41ad112ce16ecab29564637b73be5737dddcca7e1534e728106d53fd58a8b7540ef94d8aad4acc5a03357d39a3ae546db83af8574fa4525890b61109d5fd9a13fb057e397f94a235fdcf4bf9bbc7ff6fb7b1026b0f1d7298aef07f4c19de43f801303ebd0a252897d0246ff63587a8734d4839f798b519ee3788a3cfd32f1f33003d928b59b349d2d4f55efcfd0c640f94e7632e771ee4d16621008116cf808df378505599f7f505b4786ee8f3d39b67bc98732b2743545044ec997f2984130ed775bbdec3349eabcaf6ee10cb23de26c5611a469fff8e2ede6d86e7d0ee48cb05049905ca459618ffd3708b7d0f07ed6b24a4bcdd6620fa09b9fdce376e2b3d762f6fbe859d74aa5f3252b40008ef187be5e60191b27c24cbc46677edfb9bc1f1780e5036e09eff54eeebd929a64cc750e063953c241ccb9146a0a407dc64ea7da189e586ff78bf5ea3bb5fd11b9d6335e9ad9fd30965a835370ef96837d3a60d29e986e3281698da273ebd72f3e925c4b7173c769f27704aad76c49fed82d9cb6b7be458a74c0c6e6a6a690599e7330d0505568f3300c744d9f3cde7a32bff2f8b96f84a7a897f3907c39acdb59a2f52659cac0e63f1fe5d8bb30b3f9731c4137bfd9fc4bd825f63a71ac3a858bfe782f776418b4d302fd2abb11653999d912e6f9ae4d01f0de20c9e61bb0e8379d2c07f5ca68fc85e6ac94bd08bb92addd2b6f688bf743144af5267d0963f42e6dafdc255f906fd058a8968309a62080070ba52390143c6c4594e285f3f504fcf63b27cc45717eb975f799f652f926e0d1b78c0316e66d7788e34bb41e6b593764c91e4a6ee76fba52dd4bdcd4d0680924556b1e9f8a15f381794e0cf409062d04aa903211facb314cb1e99a9f9e5e6008d399d219fe17f787f0348f62f5c46cc39291c6e48be6855e0bd9f723a62a94932636aa8f8a154762ac5990c0fcea853ab5c3efd6245f0824cae663fda102fd0a94241298d022b324ea9941fc1048719feeb6c58a0341212b1c1bb21bb571901f4b522744d7a1b658f2e9d9602010ffbfa76f7e74a920dd36586a8a29b64362ab859c997e95299c10b7aad7f89175a628eabfd3ac09e00930e12cea8dd65c97fb2f73db97c1084ec3e457ca9ab1157ba62e8c31610e8fd924c568236e36ee078e65cbd54d85f8c184687ff0ff480e4e990f2ad191a7c73b58f7ffadd04c94705930946b54ea0e903ca8db69d34d0545a1c48acde35c2f8b2b6b6b5ca4a48ac3813c81facda034e2a5393eac79b3fa59f6999bf9d9881f88c576d980c94164ffaa287141136afaa78adcc423c2d4063a39462afe82ce52485124899b7bdbef67cf74e694c4002a11d2176b8b1f330162d8657844e64a0525e5d8baad97567fca63f3d6da5589a942422c1071e04d73d959f1784da83145d10a6125bf6eae54786966e0c31c75da69ff86fdac4a7c50bbf9c8f764e73a17608de57dee0c1901bbef0dbe56a23020d3ce535271c0ea519dd0cc75cc1d6e4e073d12b377c01b580cc231a18c1bcc9ad870f640d74656bf0ebf80407516941a89a055e2c832c93284bde54b6d9ca6a57a9dc8070214498d6b1e620f23bc1fab5a49fa9798fd8d08cef946507f4b26528c24e200f510c8e5b80e4e3d7376e901c4b3491b7869b844446eb333f124a26bd4e48d9cf0bf928e3f211f3b088f2d9acb5b2e908c7b9f8ecd6644b5d1e822c2b5bd050543775d9089cc17165e81359cb7955b659da21e754cb25243fb7b299e57db8ed80695bd6c7dfe0c490ab34ef39a08639834c23c4422d09dce6c77de129ae659619f5dc97073fe6a1a466f7cdd3fed808d02ef15bb1995a6312d4a20b8d88660dcca6170c84076787852cb7b4a5ec8cb9a892d7d7a2dc9bbc2343f350d95a89bea277ca238d70b2a3e09ae749661e54949b1d78c7218f48c61fd3810666414fc8c3e7d8d1c7337f05b8f08369287328ca0b34e6ecce3dff67613dea74ffe7d781d2b50864115fb3ecb85cab36836a0526d9a601cd26cfc457950c8d2db20c1029655b41bcfd8f483ab82a09520e3b3387e24db4585de6347a8d2100f6b0285baf1f5ea576449cc7000f5c3e340e9d154c413efcd334d00b19e14424c53434e3fd57d79eb4dce93010942dd7b3c02c2b3847ba57d59e1fa7e96b38504d7e751caeda14f88b98c5e87442077afdb646718f8907274bd6bfa10ebb60ca4cc16f9f65823c851789f0e1e98da6213a4bf97d67df796811aa2d014d5027aba86df44c93a88efc74a11d5c95753577daa9d4b23f8383e565f93aaf2b13e0144c90e3e68f755352d760a97722abaac74a8cef26446326cd7e601b65201e043de835fae3d18adf54a1f7d110d2a21948d3a582691bb4f0adcfd563a8e6ce4f0498cf88c0b8beb4d9d7ef4524137f7812392b16cdc1f77f1bbb1746e39095618d301e2e02e1c0abe94f0d0af44a6af13611530bf4a3a0154943cd55892b21ae3b46c632ae595d1e9d9e1d7fc1b02362985bdcbb8f657cabd0524606a50708dc75129ca2cb9066875a14a79c697f02add852660a8b8c6d7775d6937dd6de7fe98c26021d9ec803a7b429131f09ece1fbb43c92b78b9eddc5161e609e6aaaf940cad6352d1229c3dbb5a607a5c75bc841dafa339174519937862c5a4d26d4726f3eff320a5f17bd1a0d2d62d64f8529a9c6bb7fd0e7b07ef6d9d115c89884db18145c1177573a2939b4b96e9430ba68b504e2dbbefa761f75b6bc3da0c264cb45577a64dcaa74eebba4029402a913e30d6748ec74d473695fb4f8db8a24aff11761f1dd88fb469d111e867e25b3787c8fc70f99b8401b375063f3bd17b9aa89ff04ab774c59c9180736c2dd946763c2bd7f855f0e85d16de4608dde2ba3d7c52741c756088c18c0a7fa847d388d886a7e77d4ffa930fbfa95931b56a27e11ed15a8b3ecc461fde64af88418d8d542402723c74cd11333202f4b8816f595da9cc72e0677b0cef2e2dad4ddd7529470a67f8cebd07d5925ca0a58ba1bae4f4a36fcf83a174abeb7ff7bbf7dc783cd18c0b5d925dbd61b739a436f363136e610f4159a511d1d8c5fbe9af89193398127bab5df4a58296ed759d68f42072018af1f84af8586617782879891f373a1fcf7112943a934fb746d3b773702e92cc04284be2329b69eefb072810113fb094a8746e2111fb0ea363917f1ca721ac89db9a373f3fe993f7856b7e2be2fd4a5f2e000303556b4c02f0239834d07b577398fbb39ca57def7d7347d6a7466980d8b490d46d8017f64ad99594c0d12d471037fd66aad1011a0da1b8953b42e0e313b0dae80b7d9265246b57b012eeeb85c2c06f522db242eeb06c2d58b0d44a9490579a352e24d55731f8ef3a80d5b1cfb1239d237ce5ea39f00ae3b5f295dc7b3595a79a23f4a744a63fcf34167dacb2d2bd7edd7fc6246e85d1ef0671bb73b45882001707c22f2064a8eb6750bbc8a2db4c64df21adaff71bdd04361af04bc4db592c9d9af681a64f47a1adbacc40dfe77eee8c419cd1421292ff7a8e97a0eeb5f9caed3674cd80e6756ce4a3b8385dac226015a98314d47db20045184ea9dbbfdd679e6affa3606ef774c77003bb682df3e81a3f34843eab23ba90d4bdbcae6714709dc25ec9669d9a5cbb18f3f3f502663d17f6885c4c8e3979cee3f083b9125808399870b428f15ff43691043f1d99e3769baac2c3f99578bd14f16d7e0fcf44ff8ab2805a91c8a6aeca4c77aa1cc4e20b4436eada9b88f2cbeb5983b5d99364653bd4aecc36415d75dfbeb2109358bfffd8d6c235390ce147109c7dbc45cf251ff2a9f68a616a194a70dad36e5f013a7fd4f74f0b9cf52bf68a4f0f657200bdffea7d2a31e5ec6caab991802eb68e8a7e8705b95aa7fd962bb071a3ddedf698d6a9dccaab880882ef495337044483bf56dd9408cad13bf6b8c284fc1a0e149de9818c5285aa6c1072c6287057fa0403664853686a557addb7ddd53450818f0350d46dc94b688238f69f6bd9515b7f4b5d4962a7faf8c890de4dfc0f58d4aa955dcd3a0dbe1d2d0e72dc0d81c027081c3bdcbe833989232b300090e9da884543c67e2ff9ec3264f19e14dc71e06a061247a9faf40707005610f0be010f0cb3f9d7673f19e4e0b7e2117b05c9b44f814da9248d91a4f2cd3f4870701ecc2bd3375c06fd8f4d4d86f26db12abc726e11f27f246dd98b96158e13aa0f407451a81f2784fd7643e713e638861ff0ff6065ba9cb24b2613c7218257f095f90591261bf22b3ef844d1467fb2c96a32307d3ae948147f51d879aa2597af22c663f8d29b89c492aa3cffea7d4687490d6b0b365d53b36d66d4e1fbf7554b36ad21c1a3ad764b5b5478de18482d46f6d9ad1cdfe24ee412d6c1f8bb18979331ae7593c9fa1d5df427565a70910702a869d341f386a6bd7c90e6cb048fafde028613efbd55443dcc4c6c4c59f1827e84f63f115223cd8b9681c722059fc30b7dacffc947a7ab73ef01ba0c03f990bfbbec155b3320b5e42c10562ad73fc892071eb919b6ff36a4eb04ca760bdf6de612483b5ee6794ac59aecb049bd5abfd16595b3e0ca609a54daa13a90159939270c728da9c1f6fbb8746072f93be3ab1c978e115f5a1c5e6f69b5ed572a8d190f3b4310ef343a2b6a1d1729da84a9fac5a18594dc26e7bd9863ae7eff2d79ddc93fa6fa68dbdddc19b7ad543af6fd281323a81377f56be0e0d2e2b6c0c1e70b53bdbf1f0b7f573eec63dd7d315b01df0cae1e222bf9e5fec66c877a138df437c2b5f7afd843a5774b355b9c5bebbdb7aa07347dfda34447e5db5c343eb7ed12636dcf6e0ddab9970ccd4be0217c7d6f903df2763e0e272a9310fffb31eee7fb040b4dba13bf12a975c33cea08e8021e385f1d2d5de72ddc48c01ce443dfb62b5b7a28d1bbe17da294822d311472c1a581f203a4fb64fa53e36700c4b39b94a071c1599c175788ccceb6a97c0f1cfc5953bdb4e3cc1bc39fbf4eae4e43de5d4b9eaa6644e3ee169c70cb97948a9a0c7b8aa963cd025460c0ad5e77b87dbf1bf366f4a7cea915c429f5030db77c9722665410421ac3bbb322585f3b00aab1406e56ffc4c0fd5286eff4c946dcac21622dfe6efd84d82ebbdea77a877e18fd0a4ec99cefcf9d6dc58d7f2e757618ca62402986a76cc80e72dc3b192554a64d134659a6936121b39a9fad14c1db9fa2055d9e4ecbc38f8a711a79906a2556601de40822a2176201c84370ea800e41f7c2e7fad0b3fa5d366f4d3e9df19eabdc9c98d7676f20656942b42fde9b63811ba33410f9d91e322eb7c7c3acffe58530b6f5d926615ecc7476058279bde1470d9763791f2ee18ca0346f15880008c3e5e424fb7870b9a4db97f77b5fec7e41e796321666279ca67081478c0789825b9eef47c532847fb97471f8f07c671386fe3e841217fea0181dfa2f6d25786c9783fc502f20a72929aaadeba4a83e2f3ce9477486c7a4bb29655e6a699a7adf0ac0f50f998a9913338ffb699737f99818df70a5d08b333481c9d5fad9fa8264b94c7173e57a3febd73723d692ffdf53cb9e3f8742da2fb83d782600eb0d2ccaa4bb9eed471c4d2659e533a5952b0d571ae40a77d62aab589bd000a5d97f30a6121c583e67feb06c2b4988243c2bc35f286eb524088c79a8d1fb38fd181271e6b0a575ab891f9b7b4937b20da9da248ef1794f5f4dcc349fa03c0acc8354df285086fcc094cdfdcf93e79bcb36daa93ae9039ef45d83d1728a85647308e417e5af575ffcbc5f297720cf92bf1b65361a603ea473f41cd52adb999d9bb9e11a2bb0f8d589f4e689b40e2c1d3c2e0d358cf5175bb3c86a93fed2ef11e26b3e8e9633e07623b86856bbab7a68e31823bfe421e2a879cb159154c599ef305025e541cefcdc818ca5f98fd971565f2c5d6c672f60b37d3bc11e6386cc8453715235e0a69c01ac1f9201fc356419a0f68c5161ce589e77e84f0201cd6154a48d2b9a716fcc6518fc2b5e664cac39fe457c0ea236c160fd7165c9cf2bb70f12d15a4608767863e08aaf8d03808058671180b37997e8573d0bfbd00c01415fe5edea2f3d80571571311e8891c54b4f79636a966428348b5649867bac5da9ebf4bd7b9c29e0e28dccc4db1ca6ec5723e23ea0ed4eb16ccff76911c0271b480002fdde80ffaaeef06f7207729d29cac16bd87770b183edebf8b81d9cbff6b74e6672ea1889defde4bd13f822d39f94e6bbe097a0274a9dbdbc3cc7da17dcf71025396a3b4a3034adbd237d918e19d2d487fe2300f3de6eff40d039f0e09cf6e343282d7d3486a7e85a8a4aa20bdd16c3743a7aa2e43d22f5453e2a8f4afdedabf6700544ef2c050b0fe9eb8c248526411f432d78f3df41332fbfd587ea8e649fa1e0162c3451c1f87bb0c8b7277180d529049e89e4b0be9b58a348744e4dc584b17de44ed9c73e40646728bc14f23e48067affbaf7744b46ffdc7f98739a1a450eb10c52aa39e10b3c9b5f6f3af55c762783afa7e4e44c39acc8adf4b6a3e725be160471a3612e571140fc038f6d416a6bd9b11abf940a9fb6e6df5c92a7d396329687ba6a44ca91edd84e676ba73f9f5633e2f0d0b147c0ee3847bf572092ed61bc922593782e240fcc39c27f2a5d9df11bb13ba881fceaae30600dce6411580217d1bad6bd79b8ad46701c3ecd95b8ab416f1503fbd5b36eca31645940eae1d229d61a26a1d869f1fa18b01802b67b20d9180084d033fe6056906f167faaf5f4b2f3ff876e22a2ba0514c50d4ac2b64b19985c4387f47d34bf5a2bd44bf2a6f10d34169f7a347dd6ec8e7799a1a9001833356da71d3ee0c9116e07d288eb62aa6f622729d3f41e5966b87cbaf6eca5c50ed3af871467c3bfdb421c17550d6708fe0d38649568cbdc940e4115cab67997ffc5c389aaa116801ef37746837c160fe355ef77ef166a1fb14623bfe3b8a0efaec2b63027c2befca79ca6ad9bf81c271f1d827400c226cd1a726b201c010bf6c734c21d0b01d0a0a386c982dce5c7dc99a22dd852aa3427b02b589fdb29496c96564ba1a8604bb40b02f183ecc72aaf8f59b0241a0fd7b993a3b0abf7f3f67aaa89d37b75733e6396174b04256cef6f59e8be57f8245b371e22786ff6a63e86f9cce1ee93aa485f8947f298e374f44f6841a9333450ae4c34b765585adeeaf573b6814af7bc9460ce7ecf820cd964c221228ea2f493f1fbc9c382bd506e1021db3fc6f611993bf81be1f2cf28cfd1c56245fc201fd4726100cb89eb91d40605f875c4d5828400fb2a17eea8b3aec1fa5332db384eeb2437a037ad2434544733a2fc88394ee6be165eba151f12a8448896c8fd8f48b7871bed1f739bddd7e06bdca3a865e41e625dcbc4a5011d79db4e4e182f7f9204f753b1f24966e05b9754b340e02a07a8f8ec26288bf641a949b8fc7e8b9b7c23e1a4a2b3bd91797332d0efb8f0cd0c98954f0e6a38731447c12bc24e6cbbf09a36627afa49a263db8fcbd0dea0733d1feb2e533ad5c12facfe91787d86ff16f565479ec985e5638664056641e3769ea89b4c07054c47061d2263b04f611c89877a3dbbab2a2bab2f626bb8db4b57a709b49b101e867665f7e0ccb17d22be8a461c054a8230c58df018a399efe6f6d7f599273114dc15200bf5245cc5e2d3030a32f8a547b004115d3ed3b89714a965057a82e39f8703f6c24b1c42a61ed0d5e6e292642490cb6d84a5626f5df87ac3536fb95bc3b4e9e1dd0183afdbcc151727ca48d4e34ec80f0147358195382f88e727b80094819fdf007fdf3ecff667a919ec52d44ba26f8c9698ea8b35ea2b3259441713c35882b7ffbf8bee812a1a18a18175c1154a5633d921beb29ed7d69e8afa2679dba3cd53a5b4815b1ea6f6aa5869f68d80ce33fc5c984407ce36243614c87036d594d0469ab2e44e0489c82fbdeaf991b085aaa5df0bd5d65f1e5a85e0003fe32d79b6b7ef22e767fc38b3f1b0f524bf30bad187679872e4b7decd81ac1f5c9969be85c1144cb58f097de9432c1273ad3ff54f0c390c34093728fe8e90a47680549505bc1defaab8abb6ea37a142c16845318df1bd65156552759f1cc34d9109c3f49c1c2164d019172e37bebf29419ec1b6496432af3fcee7688699ad5027f3c048409482e48fbd110140f6c012e8780013013043de4b1a871963a1aaaddbc98b749f667b5f6d079329f0aedb7aa6975f51948d1c27b81fa8be752520a4c9b35d97573a9f31babcf1ef34e2003c2333561cabd45fcca82602b156b33ced5de5e394f53e2e56f1d76f669beffed4230d946b5cc3b900bafed4f2924f44e75c1aa9b5fe38e28ef54094bb79faa6c9890f64284937629b009f2a8162c9f54b5acb1c18c11b7d648aaf1b5b5d9be909bf170b5449d9331331e80dd589cf1d431cbd60464a8fbcf90cd9a77867a5d581a5ffdbb2fbd55155db6aec4d2842f74eb5c6cbb5c639473c9109799fd89f924130f84a2d50f3a40b23933486b6ec852e70ccd51883020a9cd054c34dff88eb07e171cceeb2a8252cd40e50cda3ab11dbac8704b620aa3ec7b9aa64afe63b6d48cfd87eb9eef0edb60456496a0da093563f4e46bdee53f08df799482c0a31365eb7ac47ed5adbf39336728b725f00dd379f4841250f1bd4a96422729d1fe66e15234dadef6c5106049cabd4f9c2438135fddb2e5e1747f1537a03a2bea67945c64695999637c7bb407f689886aee66843660005ff708554af91850b4452d13bb2724f663c9bc03fff095de495822f79b9dfcb4fd11a38b675993de52a1150bcdd9a02c75e82c7548d9f9268f15b835a8764a82e3430bb7d75dca50de5ae4342fe600ebf2c525f64d3a6621c7b729979f7839fa761465f7da757cde08d198cf9d4c5cb4e58af0cae67bc7cda26b31adee7cff684d8710f6ffaba17ee4050fa14e2820c25f0087c33fb2f779a86630d9a3d836febccabf98e87c34d7f677bef3f1b05e41ddc7afde2588b909d890a61a5bb05012988a404a52ffdd14792095fe12b88555570f3dc65afe6ae55d62f8e4894ae6f9e64270243608eb87eae86d9806c08844ec2cd4715a8abdbb82c596088f15b442491e4ced428f3e111664dc91da168cffbb35da83229f54ceff0ef2bde9b61682ebdedce44ff6aa6fa4bdc2a5f443c537aea2a99a668a58541ef93cefeb65715e91eda03a0b00e0dfa73f2fb7fc9255b33c384fb03290631d0515eea957585a5dc6a3681619634c7abaed4bc318768df9454a1c895f516c676e88e6199267e6274616f102db1d95f21f2da52dab880c2ea7841f59f745b8b813a37232126c1934aadcaa8c9ba4ddc75d463394b9e6c811533cf9bcb8d63e409faa57167acbe7f59e99ede9f99e5e7130388db6403ccea0662dc528d5ce384b0426b483c45d30d3af35608f7442a3e221b461bc84f62a4bf9a3d5f5a669f700f0151449f04a2f68855f037246a507656634934033c26e66f166962f82542d88b56a9889592bb536e56062ad74a8f3d2e9b68dae038c193b0aa876d2311208df27216be38f4a963a0a6d2729be92c6f1e486dc87428bcc8b53965c57f0038a7ba37b2dc6054213cf6ace5f7330da67aa1672585a5272531026fa35c4a839706ea3b7f02de9d1f202c248f42cc3b4b300b2ffe0a1354278ad713a0ae3e54fa7081101a048401ab0242e6341f8e9d40dc99dc65b8125d6ce0f285f5cace33dfb0388cd7f99aa0aa82d2547d40017dd5ffac12ea1c7e76297c4b49fa814e8733a349c56bb8d6af0aed4f5a30d9b660045639e0daddf21162152ae0a5302cca3b0d44239935e39ab0e6f7c57290c73243ad0251d6492b6721d98f4591d03e5ca15c4186f6bd737d5074aa328840fafdb0d08514d66382b1e24f99fab2e62f45d844455852401a6c383a7a3f4f328527ebc0f88717d35893b6707c22e97355384611dc3299d8e2863f5124e9b147a24d0c29c59f99f7c780be17eaf19319322aad9d7a98817d3b3d2f8c8b813d1eecf5e33ac0aef19e7cedb3746c323f926bc757248047e3cfe2b46ac6f71ac9307236da647003189cd0044ca427ab4d3f4803a644fab93a74ca55aaaea59ee809780f92011d3a2e0d29f4176a922f3f12e5ae904e5d5779a4d7f8e7df8644355c79435a65f9c7f50590d31cedada40291b7bf315e28d405936f2ea570fb03538023806c0dbf7360793600d949088165534724d1a088a1c8e0ea07bc34a7d4254d12d1c548b62cd8101e52077e260236dd7718b378a142d956b49b088a43a68019b165af79de2d8a66b7f2e2ea8e90929bc3fa923a07126be981593898978e6659cea60852137ace585e0f80bb90c89b0e33ec3cdfacc4422522b6cf874d8db84a5201932c9f3170d7bb740c7cfa3772063b03859d98d20e1d42e182c81f3465b4750c503d90c062782f99e8636d80a8f62d55302d03754bc679d84c576bbb3e70cd5d99ec18f4757c658b90d974c37b665fb4579b168b203de102a2b06a24b7527d691c121aa414edcbcbfe964379e116dda01e7f1172b9730c1f6220eaefa8cb97647759f65c5a1de8d3450d7bae4ed14de6c6ba03b2db0eb3948a115fcffd04186c4de3f51ec26066a0085a5f454a9f40b35debba0c0dc0f37e83a0ef156c4c7adb9de8b8ed8fdd92562528dec375998639760924b175440263805435509ee82e55bc205c61b356b4cf890ce48ada1659c1f5ad22bc817f3c70c358a4c877e870c49a83781f74d12e942c17c35d0c6980f82b19aa90269eba38020aceed19cd3c19ec438cb09eca5d60e395ee56f9c22892c6f72a95f6eb6776483a69ee2b068231f068ca5c35671958176fb0b8fbb47ca99cb866cb7143e80eaf0d052a5dba970b529391a73eebe18e666bc47a04dc7730d4aa39bb5bef10e15d4db50b0a6c4258b26370a0801e50f8bb8e9515a868379d509d3a3bfb79d5ef56deab7a41b87f183a705a9f1398909c4b6ed30890003d1310e924836c1aa1eb856e7db469b9e202a2a08e7cb5d0f19a4389c0967b88856d0aef9f88bf7e968a46a3ad688e71163f82e46583f3a49fbff7203d7538bf6bf41e5b0b68f841730c182cb812f6b54c301d25d4a12a920bfde4efbaa995f5df3970a39a93173017af180a947f1b8f3e243335a115b24a982ae8c1b5ce214e40c16c82f5dfaad401cc6c43a47133ba8cc4275e29ac870bcdfdd897e7f75f32c6d2174a058db94f581c8fc23738c36eba9a277455c866c30043454fd83cf51952047a1c85561a53b63ffac3e88661f4f371fa4237e36ffb0a3f2ed3c6a874ee430b34ee36c5a79d83a6f987654191c6a477a2b20ccce58a6f0e3778a9638f9bef30702cd2617bef0c4126fffb89346e61cd1c621e2e6d42aac4aea5567996bae8be4df96117d4d921df1ed6783187111c4805985c3c9d3013b29f8992ef8f1d5b528fc0a4fda38b74a510a4dcba009064ff4fc4ae375c68905551fd6f1545569e14290e92fc2059bf696bf8980e4736fb122643af7a7e4844ce42037761d37f1d678f4af185511d6daf0ecd8cb670ca730cd1d2c6c6da96ac433386f2b1cd1f50782f943f74655a5aac372edb709db9a35dc6f6549f560491f3ec89cd6e6fb5201db808f6fd97aa3bb2ddd42e788e864b38df747bfb2f6f24e0d681ae39074cc4bd89beb97f5af1db9ef84c4d28f59a226c1557cdea17ac1a7ad345456d926f20091cab733436e3722095c87e3c200dfd8e3640c52e00ffacc1970c00bbb516833bc7a5eef69e524e222ecbd5a18641927b23b078b38c20e94582754c71ee7c91fdcd611691ed15499e98ea4a3d2bb2aae7c87c1430b77a7e56f5df266a897b7bbfd696615be9abdc375288b5a427a04435c74c7a0014848e310a83632b0b91036c294dc9993ac2a9763b2304d84e228bab9457e98de0c882f5ef941a35bd7cfca06f55f68d6544c46aa59e9838d30806bebfb9a6dc96fed93053de6cbfeed4be784a806de69fa5b1d23c78f5868d7f21eb9249fbcf9640668e07fa47175cffb1665bc6b68845ec3d70dd9c1f73cda9de1646b8c43f6c44d0fdc1db17564468ccf2c599d02b3bfc16edc67138704dc4ad67b2579675465e938e38d97291be53d8989280f4c0a50ad68914d7a566893c8c11db39425f697e2212b065b558596d84053256c787655e91b2ea20fed75e203723c5ff001732fe126eb14a7f52375bed9b93b6dd35752d5d176fd7c3c01c4341a74722d10728b4c46e55f33b3f17d1953b7cd49cad23ff068b8d7329e81b7a57001a449af9285b9818f3d6fc39be1e5ee07624397f0f9be17bd6cdcfa8675de98f37ad7b47856842518deaac1629e5c15082d8c56aa00fd46a20cd5fad82982d659dcd510237f4f521a28a5a81ac4ac893262c0ffe9f8d4bba23655c0bc7090594bb95c1f0d64399adb0fab43d0b262e77c24cf6bb66b1cbc02eadb1291fb51749a771f23a4944d0096fd44229ac8d68c5873991a58a7eee583d87f9a050b8a55acbb28786e210a8c244189090e3aa7717972662f3e8d94686d71aa7b34b9608aa8bb2d0b67a233b5cfbe8df07c6d11ee5f763365e0cdd2347ecffa55988d2f10030ef860a3c71da6181b40559e9f7a1b3a2c2e5227fa0f81cf43bdb3b10058c572512040d587101adaf49f84c7cdc0ae4bc0ef886774eeef0e671e8902d4e69315abdbab8e3ecb6fb3c9c87651834c7b445cfd0bf9ff21743bf9462bec55690bc37764be2326a5130a1d0bf988da66dba837280105d492c9f76f164891533f5ede2245afc4dbbb93802f28bd77d064e1b1cb89decf00b529f74409c55ae77f18c8d6f89493678ddb4cb7ee2d7d9bc48a4c78ba87c87e746ed0dc4344ff9518081ab1171340ba0a5cb59c2650ee5a04f00c7ab6f567974595ea3f1e01c85453d4274af0fcd4df476d6ea2c31e1e68fb611642eab0da03d810d9b3ec1ee991135a3f0d1b41506ea5eeae6a62b4906ba382664d47e6bb35b6d69fb13d97456375949608b62ca2cd2a09cd2683d51b97ce8fa110ab0b41a9a6276996a223d2f0d1ece00200bc3e7710a3ef81d60ba7ffe9abd4d39bff2cd5d6a4047e5be9b11a0850694d4aa1751e48a1a26e97ae91ce6bf37a10356d76a6756746115f9b34b1a37423487405ca1a75189b1c702dd976472927dcd9d85c744d6491e1673ff806e936a803ec2d042838c357ee2d0bfc9069c27d1a890ad42c55da7a1a9c539b505a4475d9f206c3fecf05a270266d317c722d1667e86ea3989ad6471b263c083962e926d91309016e2fed9e917ada4a25a94b3801bf6bfeb10c25060491e50b8993126f79af556775aa17eec232c198dd0198849fbe0535fbd0b63844a9ff785655bcb5ff9d20c8721d0a322438e60c40ccdc2ffb5100ca2d02c16d338d6fc36b134abc394799578a9039d9dab63cd62ff3e093b00fbc79fa218ef4ff5a2af91eac2bef619e53b2c050f4ce841a33694b4b51bb97d6633f11f18bba5e16d29f4b999be89f6d2d03bf774497a5022dfbd49cea22c6d6a8c6ee295250fd6b5252cbe04b878fd96fc23e5546e27681dd1e5273a4c20ab3c72181d1e2bfc9c1339c6659aec6f5f017d20ed40b91963e5d4c4fde8287f255384977bafccc29307cf17f0ab9dd47739814a777e0a55d7e97adb3219af11de970c5c2fa2f5deb81cbab9a31710ffe8cf47de4c43dc4763abc8ab7494f59e268c7b7a5c492d6856494560cd6f9e829a80ae53a3b423c154ca3051f40e3f5687dc4241084b9a897d282dd6ab6703b027cc8bb37f2c6fb4886a4c054f3c3e1e07b3df2405f8811a168e50020824d051e6e09f635d1ae7845024a8f7b8c66449924d8cb6b88657022d4c18063f10f93e75f820868cb6cd2295b9b7b2f0522f13d3633405b9f0364baa693aa433fa2f8d69f202b1d7158332b09af25acc5ef67fbc05b2f34c198aec0373c695864b5d94ead232bc626f1380da4a4132b5def7ace79124648fb55dda9cd4509adcd18965f75c05c79c43b04a1f8669312021e61685d6c5274ca6e928692ce064310574c07c1046638a82c264f2c0db285483ce7f669727f9e84dd878490fd1c72c1a0acec4d152223d4db95c580411415014117e0b933793c1f4bbc7fe876014a577610555298725516b7e5f65d49b20ac4cc0bf3189b3e904a57a9abbbeddcbd2ca8a49941ef2262cca6c43fe2752fe4ff1ac23a4543ffaa9e252f0fe2055f044078c6c0cc0617afdb985dab1fa68b9f2ecde8ac1d03e33381d75b42360cd0d19b3a9c3fced1ba067da40189cb91a4e85c7d005b8018d27f8ced84222bf0fcbc247152b79691c777f315d9d096fd3050dba08bb019b24c73fc0045b850b953a60c66f8e7ed578932275e62b6a37835793a6a7717dbc8ebfeefb5d3fb28d3934c02840262bfb8b9fbd6149a11fde0d8b01e703c549389052d54278abebd199b589e9784f7520bda6e872f4877e0b350449a7ccdc4b078c104f3722b412712c2ef8639237749fc150d5903f95664e78dcfa1cc0ec82da92037d3fce7ebd83c0cca8542a2588c3683c6ff29b844d449d54fad73d34090da33268d9784890c205b6b159c756f17c6514608023e6d387eb3c1c80e7c7367dc4fdd8a41ca78c185a12b842a55d56ad85d33d6844cdfc86d7dac3ea8ca78f38cc6d643c8d3df59785bec9ac6966f399d4a5ee27ed514ad4eec64cb200eedd76bbe1048374f8532a6de4611f750c2c95576c8335f730fbec73f7909a0c0c01bf3407756c95b7413d7ae6efdb520ab26c560d6e9ad236cfe99a1d5325b793ba6a326fae4dd6c101d8b67a56133276e3b0dfcbb229a35cb1fb32c2a0305fd96a68e1272531435cb8e2ad4ed2be2b6772925075ce682cd1010e39b6430c032241a4f0cf7445ef70926566b225b235b0e2cb86fdf1f553baecb33c4a80e99d9a09f1493f5160a6cf0cecede2017f875fecf6ce81fdecd8cccc76a10db8d370e52f5404831c253f07c99777f779cf395114ebfb2fb32b87e012f12e93e4c3cc296054b1028e75f07c9a05a2aee68af5160e5b6f459fa18ef733875efa07f9d70228db36326c032ce603fce364baba7689d89f7e09225815047cf767c9b44a04dccf209b6570f25f37f5c280a08f58f852c3c6a74ee31f05f410f12330855f7ad7bcd5cf35c8a074d2af5a5004ecea1f21c021fc1725368e9d0685acc64172f56595647edd06d3e05abeaa429346849d8f24f69e0b7eb9269b22cb1017d47c9a7d3d91dbe7a9dcff50f9824ea7ed572bb372e340094bf79ee4ca4648a27165fd06772ef981374de5f5f32ecf85c90e01e6322499643847e6b164d2179338c229db2b3533ed4dd54876fbc21baba3418d5ef9b3735bbfb46f960dae6cceac842757ba1bd23d78f721a7e9475ad15fd21907db680fb8c5ad484267051725d69fe6bb0a9975bfc4302165ee0474cebb475e6925f7ba779d23b71ac7a1840c9e97ace60359202b0555590c42f2a3485955005bf8ca2e1ed3aadad618de198bd8d2f690996b55ed53beccc15820a26968e204d75a8885b13979d6b7d9c0986e26cf050481eacea8ee886b78a8643bc3d1994873a33d9646c2cee7089c747ef59f3a633c537f012f9ab0fa894174b89b88a5a056f20f2c5c283e3cb87c4d098f0e8f717c9b17af762cffc3c717ee612aa5640afb80a2035ef9d866101e1545f6fd50106a8d6930c0fe17fc472873be5dce2d290785827db26c6928e284caf918e4a2057e050239df4d29a8e2e1853e31dd4f263defea007ef7cb578cc8766c683a72e52be8c82e5f5d787ff680266004ac05be146157c418fbac1d8c32f7ba73939bf3b574db94aec68489ca9fcbcb4db69351181a701fe7793c6daec56c2e75fa6415de421cf4d33084065b4dafaa0e180e8439217fc0825cc19c12e0d9999d018c65af653dd7d2e58a222c02a49b19f299ba914c5e0675052ce11fcf86a194ebeed47cfbcd7448890dda9cb38a5d77158ec1ed876d0929db96baf0a37860135fb6072d7e90dfcdb3c834a652a8c30ad163356f88991028b8bda0710738d6bd18746de750b271506d7f941dd5a63b84f5bc279bd6c0389aeccde6919d1c7d413e4fbfa510c6dcdd1904e98cde721cd32ef4cb0c3b8aeb0852509e5b2486aa003ea3cd25ee71319633b82b70728a12e02547cc6a61de35ab2fa88f4db4311b0ed93b6742525589e5c18df8dee7678e8126a180fa7db87ea46f4c6127b10d30e3c16c76118841233bd4e9c5f336b91f41f53d0e332715654ff88f82f8137cf0c0ca873b8baf136cde9a7a636d0805798f5b978eda7439c3d420f997725d222ff277e0bd5820214ff06bc17e4962b588063e9f0ba025810c342d35d19ed257bd3b7a26d9675be40b8cd110f814d0309c7a02b3d4dd6b1e3fef1c0cfc932ea6d5576135e8204f10ff6e1cd1e0798e0dab39a64ff7c6ff1ef866ef2c327c94321e62edb56024deb34cbd3183c0dbede1bea430022cf35aafd4bd78a6b2c4da85fb60aaadb7d95f6092d696a6ced6ef2739307e66dd5e69f586fc8ce0d5cb150ea8f42c893bd785485a808653eb3095288f1b649e823daf03e72866a6f15cceb4091c712b338e770d7d4192171b011dd76f257c65f7a25211c88b3d7104aaf7cf9072e35ee04c96bda57d2482771360d985226597dfffe369963ab92ff46e2a7d94e1372452e933b118a4d8882b748875429886cb58d4bff452f7cfde1954476ec81488bd26cf8a4f5856061bbd6b04d0e05de15cb53c69a5a050eac4d2ba2d004d19d1b6c92f9c6f1b8c2c8cb474231b1ac72ddfe0bdef2749912d18e23b6701477d74b60869441b9b48db8f6e1d99e108d056d5062d4a20636e1944814f8910e64b39878dd4b722eedbe7c86e2896222150ff82911d48df22727c23c5e8240a2ef9d70b780db3db23a6142cd9f95d2a1dbe6d2fafc7e24f5d9fe2b5d02c007a1cec685521439ff1ccbc159ac9c087ed476a2a9818f18c437cd7a7d5b8d522c1c8fa3ea2c48bade2727d75f416ae10575ef49e1e9f37aed8820c383ebd6bfb77d6001844746f5d7e0cce81f6cd81e6d88cf3ea2ee7800fac4d711e694a08a9b386ac8277c64ba7ba2767f59ce7a9e6b990b3dc77801d84c67b082239e86f2075a79dd0e5023562dadbe005295038d89e8a04d2d1320a74603dbc2f5741e8df6c25c1feb7ffe160cc97b12cb2e6deb0dd90309b67fb09a5b99aa11a0f40f237287384193dc1f9ae683ea4e1457140a7863582cb0bbe5a39fdf433c312628db0f9d621dc75c0c049f8356f90ab6e3039d8e6389b77719cc7a9d7f91125041fe89cff221789939eec5a34b5440b7bf60391b8fb44a632b2198512155c540329d4df4ade3fda8aa42fec32b8c7cca416bdfb4d0e449ce2e14f5058024f74846985809eef2fe5fd65c12dfdf13c533f005d1d0dd18eebc391a32e3dd06236e4318ccfb8d814e7d4931ad0c155a03cdbe0aa586528799ff3a46032dd5ddae8c74e343f1854616b661f13e4aa47e3660ae3ccca0d24bab1c4cb5e13979aca4aef2d9729c87af42f91b030d135109cd896cd0841a613030e275f7da9dd6bc5bf663e003e054143d9ced62843c15b423a1db04882ddf48a5e2066c1848a5af87e886cffd903b592cf8113314a0b4af8463d1268c6ef644c43fb178506a79a486472476accc8a3db496584e7f11dc717c4fc3bde17e727cefea3beb0874d1b6b5b200facd78030077dd0f29492c25aaf1057dc7b42049db7eb3db77ae88f0eebe6f7b98d80ac417fb8bb2c1e375f9d40e438d54ef99d202f76e1dd6b66243d39af1200ddb3023856c4deac3922008a41125258b461748624da474935fc164daea9183b4ef6530ffbd2e1312967ad449044e1a93b0bb3fa5eed48398bd63cf635f31b066d554df6d279e75c2c1209d1cdb140439664fbd183028fcfcfbd451268a0a87f5901a8c73212c8426ea60af15ed4ed88539bb6a458a9ecd8a0191ee72b12d56975d9234192fae7c15e5969ae018a372855d774cfbc7649db9fd12c040077c2430127056d79d8ac28b300011cc0af5964ea7d7d9a9aa0b1ca64191bfee42425fc0c131c9c1475410a421af48fcc156d6288efb2392a56208ca2798ec57442e06946bc122af29705e6821382f8fd0f60392b9793e683447ad593c89e2b5bc804346c9824dfb549a13ae2b0b9e01c863a050bf89e0b8b82b32535522a62b85df18ad1623638b5344297ad7d0333b6490253f339ee6564f5a9e2464dbb1c8b9d22c44d67d42bca3a490f2e2b79730d3723b7072cb59f59372f449fe5068a31c01a30d4b94d16f3b910c414ec3ec77b4a57ecafad84af85a12b6ab36bc69842a94fee034dfe18d216b2cf06cd10dfca8f5921e3c90d826a90bd4cef4a0fbec886dbfbd1dd3d46cb8e9f954b92bb21da66086c6ee43f3b7952e0fd57ee1b7f513d449b3b3634bd8a5f693da6d603477fa01217e007309bb927144249e9ce8a12a81642b2a3cd5ff20dcdd7d9bcfdca73adbde379d7326662cee324c1b464710345b0eb4324b50307f74afad0809cae35369f9a31546e240731dab3691d31daf729ed02c75dcd042dc38274a45eea04292dbd77e9919176fb92f66e090e7449cece6694c739f7981bfd2d9fef2310bf011b6861604b5933f6bc6a51a019422f8a2dbea433f62cc83d0e69e0af3588ee091e2ac6a9311677229cf3e89f73309bca5959ef7d110e5b047bc1c39ce1fff9b66f2ec06145c8fb1afb0beedd18168c0d9f2dcb8f2f262c24dfffd477aed34a8060c138f11e1791dfd6728cc6163b9860726deead1f24e8c8f826b5591687efc85186f6cd05e9887afb158bd72e0b3e841dc90b82700da2cd9d6c62198fd418f9b17f77ad6de0b1d7dff7ccb9d555e41b53df3e4ae0bbea936dad5ce370b3a8cd16539e608f3ce89c594d8a1c3c53f6261a7711eaa77acafdab87adc83e5e9a4dbba181da9e57564944663d8534575cafdcbd1aaafeee549ba366d4096088fdf9781e5bc718f980beb1e8871366e0778f66f9656bc1bccd2437b2942cf65a5a31fa4c0b50db345d841c0f1f003c7b5a1796b510783553dfa44f3b735cf3bdb0f060aeb62b9a1d78b442b7efc861dffd66b35c7c77380df3f554796d82fbb76c64e15da084bc0fb8b666723a82d88c27e7b7a22bb423fc6f7690f8e6a7762e5e9d27b53ac8d63dbe5edc34c293365839a3965123d6accc504f9447546fd41b7deb07ad01bfa1b3dc2c62f36b761472839fe57d91c353acb71240bf67673d1125bbd45fb305e480f9e7499290e6a7f092486176b7fe45e16a5e9beba80111c1d3833d50bd76e5ba92d8c115dc5e5e03cd6b2c2a8bb72b29c61dd36c37fd69ade27445e9d0d496fa8076414e95286e582dfb5a7914d05b619f2908ae448c341553353388c4acebe269c9b91d84d9579d42ee7adb1ba8ffba3c76385ff3cc4e128f94eaf2d0a03992d000a26bbede191f86f939ec8502a73760edc35b40c6db62aa20e443859e0a8ebea9faf027ac50195c5f1a6d4dea5e953c602acae4a9f3b484b87978dc4e343fddffccc08f79866e6b49d4e0b0639a83cb1549851cc73bdfdce15f57217953b7b6eb749aa3a7fb571cebb766937a9ec05deaca47a5e9937d34790ffabba52ed926e82e00338f2ad174e8ec93599d1f65a09805ba9e0e4a9ac7638ad4c86c5782009da8d852f544d4313221e2f1b3c0fa6e97d3a78fc337015d93c9654cad38a3aa064bd5058487cdaebfdb2edeb4e9fc4665d45d2fc7462d111d34101b8929a49db9d6ac386bb8f20fdd2e6d93de65c523548754264d404ea31d6cd1b71e1c84abdbd0ccccdc6cfe43e5d33c1113a561f91291c3d274237444177f7f958726a3087be954457bd95c1dd3da2ab15ec17d199b9c4b4fa9411a4987f5cf4ed6ab81a4c8c700b99b7050f81a2d01106973da60f04bcb240efb28243dc294afa7772bcee08bc0f4acb00d085a0c12f8282f211f2b13bfa74e26bc103e513aedf56518203bebfb4adc84ec5953c8a73cef64731ccdd8c40cc8c893775da34158ed8676600967979b52f7f8431436c5d12f24c2b6e65ef933fa4bee80caf92bb449ceced36c817aee2b01ba4df9001622c04b3fefa71b234cf25047ae736b078cd5e904475c768e90f59694c287cc2408b3c45a96141fc9b301832f872c264db6738053dadd291605afff8ff2c0bca75ea842327bd308afbe6c50f6a97c1f625bcf533fd94d67a5e6e94907478fa53e998af06a51813efb51c2f3b71bdcee9a7d47364c2de203bded88698faa63d9da452963460c0594d34051dfc972a9fa245f70aa398610211c5e41d49ade8983f4f43dbc64d942b0567068d4f44b1280c88cbcfa0c1f5882cda7f85151e47b90a049100615e6b4c109ebd4e605c55a69d76459d339831fbb30999a894deda3f2a95e91af3753193fde5ad0ca821322408fc54bc75c7425373fdcdf973a71e60f3dd5707e6680429264f3ee6abea8c87300a7eac4e15cb9bc8bce5d0903c55ac27195ad2ed2f67799912e8db490681773c4ca91872679baa20aa2c41def94d7b3dfeee8015df648186ff64dcaed67bd6f3562eaba4bb89c4e54ee093fa428aff8824ee226867355356d818fed3d6b42258d584d6f8840c70fa621a123a7667a4a808dc741392b7168f88f30e96def1862ff245f4a5271d5d7230b97b6716832cca5480641279166cbc57ada1307e57a9d7fd663ad522a583d288a9bf34fec941b6ab74cca8e3e0c4b6ea85d4452b1391a8583f22632bbad3350206558e2255e161a0f1fb59e20a77dd677579226a5789633328ceb7d3cb5c2a427199db31aa692432f8b356d7fe366da696b761da975cb3b0fcc5f71c7851d02700eba5554b8a30e5ed904f8fc2865c9048b8baea565987f795a32e3c6f7c490a67b06714b759ade6857f68fbcb7615f2ae3a168fad63ad586838b40255d409786e02b97cb7e467dabccb9975b812e48185432db7e6cbe13b96aca4ba59923398918b1ec14f327a917046ce043a9632c6574f67386b0be3196df70ec8c970be1029115befbadaf67610416acb2c98b5fce634d201081badd7faa67f6a1aa0273395432abd3ee6c55abbe081eb027add128173e52b548c521260362f5a1e1909370647d8d2a9c5cfe6fbe7fe11d7830203d111375ddaf951c33703c26f2ab0aca85c382af5d5bdcc47a32447a27c4a23b9fc18f09546782c76a86401685da4e26ade788ffb4865d01662b03133a0cbd8605d9e686d935b3e1ff4c9438948f981f96d9dce7d337742237ba297395cdfe3fbdfdf1d54124e9687e56ae471171027ab165502a95098baf2f3f0227decf840009dd94b490b4317078e68d5f20d314fc63b105fe1f9e82e259b8690b69db89c15ef33aea984f4338af1e116555756baba7870c7c3ea15166d8b125c3eaabe0405b3864ad3763ef5638f2ab8ca6aa24507bf3b7fd9d39de1425b2901406aabc20e36a908c27150785eff6495c4bfeccc4df6e334d527c3097f3df88d7d7da963f19b0bd8916e366a9bbcf5d72ed3579ee578639fd1e6fa4d508419ad45c5fe85face4efe63e8e092be8796000d69a8a428e7af46eed8849866d0fb7aad4b7ca5638c924c493a3548578b6600582538fa849e94aa090df89f4262ce277ceae91b1524ae55c85c46bc29bed47ad19cfc65d3c0bd1e08a91e98df6300d4d7f583ba3e7e6f21e422fe376843329ace22739e776d32b0066b8cd0a6870ffc85741f6501d60afb8cbd4e4e2cdf2decc2ed9212a77e8a04fb5af2c17f15543454d1ef2a96cde8b4b63b5847768afa9145926dcede6747c86a0cda5f4d0f5410c119cf207037c1a4f7483bb837f99916b9e0298f3fcc5016ae4ed233ea952ede160f9f7336d7001b589ebf58233724a1aae717e43ea9d5fbfca554dbce6da271b55d0c72160ad26a85d81efc9fa0d66c5534cd00e4eae3694aa2b1bac50d419cc7629251f733ec86a477948005461e13fbe1a5b5ccaa232b3a4697e96182d890efaac9479c596d23e2ea8e20e5b23afca8036f5109b107c2278554aa129426f9912618b262d213585b4fa6b9fc46e6fb33af45e918418a55855201c4cadb71af207c109a6b64dee94cf69f4d61f8557b870eacd36102812d88ea742d43412cbda92601f96da4a99b117ce209d154d930ef2ac53f9c4036a8f323ac4f3af1df85aadedea0bb090839629a71be25d0dbaaad0acb7a48f143685fb761097c0b735eea0a5b94b9361448965e42e30fabdc082707192ecfece5489cd234659e96497f70598a59ae1ae904d1c7078612f2f3efba2417b7ae4daea6c5baee46544fd88afbe409006ddee257898ca6e5b6405963a12178d3fdfb378dd4faec97fef1c492ff66e928e667b0896e30e81414a1ea808b34b2172aec486d4c951c5b695ff7440e48ba67c9d0e7929d02157d137490d0dc942496751b584497f2f116cd77e9294474f6a7792fac6d5ccdb7ab388af2461cad107deb7c98e92cfb66a4c8c5097c61089664a36fcad60b66d3aa2fe8ec5a17de08ebf37f686eeeca7aa14366d0b6d1e55c77320d11364e3cfafe0c7d5b9017d9d9059d074df616cee0026580cfc5855733022b6c3cb76fc899c2b7ca11112a14f5ec4fa7e3dadca73cb5f9e336e5a66478a014682e369c5239596a0f2f4597863d30ab4d0c1e5df811f21aba8830fe484dba29369c4c0e9c0a2a1eef885218e1fec537cbef62dd4c73fa43d7d6ec798d822b554f86fcb4c3efecf5d92cb81e6a5311dbcbb7f7283ccd280edf315c486ff99cca9deca0ef1d43be2c44295747db35d216ee51734346ae07ed22aec3a0d4e9c27a1550949d39a1ab87d03f75c375680171e5954794b1961543c01b2eab93eb9fc8eaee34cab1c3b826d553b258d70adaba32f324cdb11a4e7de2399b7c074d0c2b17ea81198974b4fa8ec2e28be2f3047d3fc0de42810a49feefca1c97c4078fb26eff512dd9d3ce61b6ac54819c4f7f4ff09614ba6c1d378efe1868cf62b3942ce4076fda3e8803b1eeb9f98c60c24db4df4d74277f4f2ad27acc299d1b2213b2a65bc7380aa4595d690e246c13f4b66809916a3f7a27dd7b1e168e3972fbfd1885732d7a2a99fe868bab58dcbd491a6931f9290a4d24e42bbb2c784c7a15ff5fa45f9b9ce21c8c7daeceda2192b947a4d19c98d0ea63e09acb521bb787be9e97cc3a4afabc6516fd2f88fd356ac6e9a8d727c8544d385c1bc7796f628f59098299a7000c6f235ae246e9f8eb23ea022fba8aaf0235094ddb4a045cb07bdc745f41eab78975d470a3680d59cd753e210eb37d9d168c7dbd83bc283b3c3141a92d8413430b64624fa51ca6eb49aedd0496d5be1808ad25acd6928a054b3167c8424b1b2c4ab9b77fd91ff8ee0da3705a006dc76cdcf9741dbdc65c47083dc5ff9348b6e6784f241964f60d286ca556163fc23165f200752c76beb2453d711be5078a762ea191f5451d9adc1b1c0ab44036922e66d2b5d99de78b7174318dd39c0da4060c4227d2266ecc50c4307c0857bbf3c7270c5473b3e454e316427614660dabab02ffda6b3b7ac8d68298104f0bea2734f8b66c2cc9934e71814d875ea7cec5d1ce68529bbf3a7a11925da1d5f731b0bba3abe1a2e7188b3e200bf9ee084bc140044013f3ac277382662259059bad601d00ac2c36aa26648383bbcd3e11178a88aff9674eb061b4ce0a226b2c3bed6104d9b0d360c9fddb836d5670a2c4ddc56f7f65c16d6aee5aaffb371c01695d265fec56f5b04ff21578efe2ed0bb77032f09bb8256870fc28dfb2824dcbb2f8c913a122094a502237baa703d66ae465bf624e79e0b4b0e01a9644266d70b1db212ed9cfbc2bc289677f7957b48682eeb90f651c41e85e187bb003c96c68d871725ea40918ddf79b9154552904ab5a8e49f8a58eb16e0206901961e30b7d7b953a2fcc3cd129c587a67d2233b42f008797f79af0826f002967fd259128a04ced6ea064d3cbe79d369065b81a246cbdbf12232e1f4863e04219aeb681143411169425a6c90f3fd6a170522e5d98ee96c10b9a1d39a16cc3d52a3e4247fd4ed9d09c7332347d12f65fbb9340b3d00086248b15b49b04f8ef3436072534c61ac1af0dd00b11b0f07bdb63cf9246d5dd77e4bd79ae3ff9ccb0e15ebc596a88f213198c123709a22b713849c31292162018582c746713bdf743323cf4c78fc0c6bbcb29a5b284a9fefc9d69781cd7a47f308c8883115bd8e04b7038bb0857327764f1f75821086515d725fa5ec08671da97d010ba9f436cd6e725287a3844410f32bb1a952905ba4a51ecbc3cc3d6d97bddd01784f4ac13b6bdd919fa7277244449f94f00bef7f3efcd1ba834d759b155eae074aa0c856ca7faf0091a90a147ad34fbf6ee179014423bfef316939292763210ddf982f1f426c5fcce466d9ba8992f6c7f129c0ef2d0dd5698e659eb0d2aa573ed37bb3a1d5b5ce9863ec0a20103ab121e7b2ac9a173b04bfa145ecae6b2df99ce058901b9b2b2c510dc3f277f27f8a84e7f63df8d0481d0752423be872aa058e1ede09a3e3c89fca9fd9215a31862a25faa7dbcc9843e0a8738c7bafc211ce9c78161ef5205eed25875b8165a0858bcd50023b8bec337f0ce79f9230d61293836a7929b83500e0d47e0ebf9f3cf1e18874b1233c045c924593440816bc2c6e5fcfffc858487148972fbbfb8041da47792e11559fcfd09535bfe33fb6f937a3007decd442d3ca277ed1662deb56c967392f6ac64a51666d23353c0175ece7e0cc77bfef3c19559436ace5266ac5959cd64e050b66bdc235c0697bedae57aa08d50fcb868741dca376d1675b5139b9708bfde277190e911cf41a1410594129093b3dfadde350d18220faaa2b28f6f9f00893366437685b736260b0b53649015a95f5e5399224e3275f70e432e3fcb381e69d78784f52b2a201488baf419c1d220e4509d83906110c9a2c4f2cedb25cc442b9d41da1d9fbbe402549b0e7f9e4f2af8a1f292461ec7b7d1e09eca331d9a2b42c542471ab14473130df696b5d71ae05ebbbfc78d5d3cc38b3777a767d0790bc6c19515c8fc194aa1992d1f1e3886de171785bf66b18ed746105c03f735790fd317c92f4776df3c5d0751c7fd40eee6cb169b77e150e4a7cd14d640991086b1397bec9b962f7191201c60c6f7b7ca84b9b4c5f8731e6557d93daf5320ba4f7576c57a7454ad7fe5a2b482230c670c698c2d87c0d41dec00c35795f46151e30d6f1005313f11df20b3fefefb024dde2d6dcaa6ddf9450c8da3f0cd570a4aa1bb03a7b1e8586dfe2b9eb44db5b3e930b77a2548491fd27c29d8b7a7d8a6539236526f80dd9231a91cb6b31ece5acf578a9e0289d13ce149868b5c731d50d77fe1e69261b6eb1035a76918433a203c924c736389129b420a604eb436188e3b9e911a348b7262d23a24ed27811a0d6a8df3748669de317f7eaccaaf640da321d7e69ab836ce64acee9a638c9e047510eccb053bad2701689eca97f4cc41ceac92454bdd177facbc6a6b8e306678e11217a5b3c2405259708833788e07bd5b9eb9e8d5d7163dbce1f779e74a27522700b8e56b381c9ea824c135ed73ab514bfb9bb1b20d026c652d5f11e3943166b073ba76a3036305c94d8a5ce81a6052fea54209950e57c04c3064753eabc056c7a8de644e2139671f04ae179ef4adbfafd2967f2ce34076667cc1080591f74eaa176d965e20cd5e5679cbeb418838bc425b542d6f6c5ecbe445a24fb38aff8f5d4bfa44f4e4cc24bbb71dc2811056617272b7850cedcfa1603ebb01cd7aa0487f18100c1210ac5376b1429163bfe9255185f08f1e59a95203e7497a84b2bf1d7dcd45760c22b9a95def51dbecffddfc028973ff97fa2094ef73f09beb61c4bd1569d6f1c2d5b68176a828b99a2b889018b41f1239b692ed162b369999bf4096ae0ae2930bb9ec274f722271286e7fdd50efca9787b8f87400ca03731ffe5b3585432cc90dc5fd2740058d74871a6aa1d8a5b10e3380713885cda3b21696ac4557ade2c4d926ba9e6dbaef653b47567fc637ca266479bbcfbe54cf7f31f83173b82febbab18e1dea475b7343e0955e01bdb801628c1b801e71268b9a26a4edbdeaed6f6915223d25b14b6ac5f0aca1d080cfa9c0a7056040bec483b1ddf8672c54babe6497f24d8824daef59dd4e93361ab4dfe39fbc20513cfdca92aa99bf9a09cc96c5c394998c44a68c5680da0260477d8699dd8f85b305d292a6504273d96c495215a953e7426d93d164bf6237435ea57226c2ae9e473a2415466d144bbcc3eeaab240a7c57711ce953867e659525ef562e9b8ca3ed0ee3cf37a31fe377d4ed5b521f64e8ac0db50dc9d008a751de5b994ceeaec50dbe3311b13a9272752c57fb3de644d5ceef288e8d46d9b4128188104563e151d50d6bfd8c00fcf55f2aa6d4ea0790febc8ea4f7b5e0ccb2b6116eb971e5297d42dce78d235acdf7df90705c2ab4c62c36785638ab3350d8538b67da9a8a70b5ad4df823bb5cfa7648f09f91e9f756ded81cf3620629e43b6c66c44a74db3fb3b7c20983f87edc65da6468f3a0b52d982fc2115f6f66a1ab75371c7fb0845adc048d9dfc636c30496e108ef50ba35128e97652d872533bff0912d79b2f8910b9d01f98d8bf0db6b77e6b4066c34e7280aa86f45678384b5c824265170954856b3ffeb7b18ea67dae3d9e6708fb043e2b80a660f4fe8d44dc0b36e369dbab8c2967c61c865b3bc5673118a417fb0ec9493699298ea76227d146da3319083dd44c091ce04d8d1e644f5f0d332abb32b3a7d8446ff93e5c27ae6fdad9bb52230f86fdfbbd59824a33b98e0d252b2160ba24c4b322c9ff77778d697b57d4c263ac1648b7e0a7b11b017f238026de147eea4dfc796f3bc90e2a15a6d0a8b0326986e223c5136faf5fb6bce0cfc40594603952765dd9ffc6cec778ce5568ca36a4dfa95614e438e359f2c81c6427932b008039fabbc3c754c955ab4e877ac7a570708c3c052498e57eb42ef511c956590878ac2421adac9b282bc6ec0e1e622730a594348d53f3b98e3457384f1cf5c755f46fdb72141268c7ee2c1454c42759fe02e455897088b8067420aa8cc824f3f2edaa56ae658ce72da0a0d2ea54471d4e28a5c7756598cb5e8d61f0d5d65b03a237bf3649435501aabfa2752da2663e789d1e23a42b71799b8fb4952fd1475620140f24b278ad98e7e95b1bf471204d84818a91dffb29fcffe68c271b5bf2da0eb51575364031ab7d5029f7d48b73b95d104047b19bc3d715af287b871fe6246d1098dc5cca3e5a6539d843c00d46025b470725ad8c675b67efb4280864c923448025da8a375e7aa65ec49119135a901d4469829d936e5d1d7e279ffeee24a583374719456f34ea04ee9a28d7f9a86a5e8a61901147e0e8cb599adea844315d3ba938b224bc20600bed8969a636187978ad604a342df6801d2284ac551b427942d8330d54f6cfc7a3620aa290d5509fdb4a44aa32e06df5580f80d24b5712ba3f5393fe07653e7ed31192536d2b967b80bb5409f70c1904edba0433029935731ca174f0a3bb14fc93506c4fd38dcbae875cc5304673a565381bcb9103c782fc47928534b34ac13f88a78666d4bdf5ba03ac3c631cffa3b40fcf17c945d143f69ae64d2aa5f8f96d0f92b3a6daf33de78423651d3c8efcefb116e2b1432278406b97b19556872e55c429a6cb7b44f6b7252082b72f0c349361c63e22da99666b284906011f92e5e60930debd5c92b8b4e8cf79047b152d010e22f90b3b9dc7a6b241b5490100e66917ae9cf4c0a6daf06dafe00ed5d6288ef86772f487fbe657e730dafc913e8e3fbc26a7b66f23b2baae5b00646427e010246e996724e46414d5ba82ea47cb1eb0a43ff43cd75b225468819d3833cfd9cc61ef9d641fb252b1b80011368cf3f8db139de3599447b4f0c268c2840660fbc08bf898d56bac240fc9672eeebab656891d8203b57d88dbc0fa9a42b7d791086efae63102879ba47a1872f077c149a89bee4fa0e05ce17d77116b2d32f27682f3eefdaf228158e674a29a36bb08e6c82e53a96d728d844637ae2beeb1cade65719e35e35a8d999156a7ef86794aa6a9197530e95313a0c5bd6555159749265f59debd31ef331f2fc619808628226642cdce2ac3da22ccc68b42732db34a2fbd59df417d5cfe5acc02cbaed266297e2d67779e742f8be63caf8eb6acdd5452e240ef9fcd637c4869863ee9ba7fbabf72536189ae13115274208ff1961e9cc0a908306f6335fa84435c8697c46c08e7fe599ce9e6185a63c6057aa274ae2490ac6f83ebaa02e462f0161721de450585e567e643b0065149c45de75759437c6813d7149f601024792912117c9f6031a61ed2808d74552267bbc2c1201cb803ed7ba90a902a56b3f7d2f2ad87829b76bb264d501c01259771bf4e02cb4259038bedcaa7634dbbd175f7a686ad33299f38f7299556ed020abc819b329838c548c3f41391f6e9e65e5186f4c94fa8200e1599d630c550c0520a0d1b636f3dc3220cf5c89ddb59544fd4dab33fcb74a6b09a1593b19a1e518679c340ae9865aea2028ae319b6770fd754739bbfefd41f746d94f32546a2e7683ae0e6f5ecd63f019ba7dc0cf32f78afacb11e93eb62d48ad5b901d3e84a8e2d4e90ebff5947e70efeef1bc6cc8e7083bc028a48ee6ae4240eab6f23dde385768a4d4db3467d14341599d16867b688cb089a3c9fbb15f76b58e8b8654da3d9c93fc5d6d153ae98738e13c4577a260945180b9af8c63bab9bd626ef41dd6d4d947a4343e7e886c8c3b732d7926e471ecbe2a9f7bf16446f9605c448ca71112a82c5b142ae6c6131f9f2253be7705b725e7d921456cf22f85474a8c63aa56da00ac804b0beca9060c1eeceea01b31be26536ca5964fc262852f9d7ddc9467fcd1fdee2fc805b922693f54b91fff134a682799e9473ebea0a55f49c27043ad6231d2fd58c89008e346607450d356ff0d038b326119c9d05defd6cc28907b1d1570976248b24b354b546ca4035318538987e4547fbe30eb2ab1a51c1092d9bbe94171bdc0d4fecbf3fa2eb5598eb3afcfcf83fe5591eef5162641de3c9ea7c0b4937dbdaeee9e51757e524163594fd3962c16044d036d5ea6002cd81f11be0fccef965494c843377b9ab010d05c9ba651331105cf3ce6dcc91b11d2d7c16c8d471e30d52820c5b0ae2f980ac4b686a58c9920a1249b15717d7600336a9f26a87d0e1ce1f674c5cde46869043fb9777c894d1a5113359c8c4c963654a6fd31b2d9d4fb57ac94f63f656f92f8dd47c587dd0c0a97fb50e4c73194ef3a7c3b505ff47526bc1a3bc645dfafc53ac4a8196ae902d0baa5f0ba210f4c616a24314f4b1202418cd50fd66928676a5ef1bfc51d57c286074165c914e79687bf16f12b4bc278da14dbfc21ec31c313746bbf1934a8a10b40532acdc3196b30cda6bc7404f2ed85e5b462754d2eb5195266cdc97e9413f46a9fc119f289e7264b98f34452055d31662b3b94e0970fd97d50bbc7bb40566a7a568ead5a41c8ac3301364a24c6bf4b2eddf78d044e6df11d1fb6634db82e678f5c05ed237483ffd83f23c3637bac6b93643e75148f62cf1eef0e28d86bc43536dad5568b74f8aca57f7f6597969869b641f80a7d0ff7f23b4b72df173d5da977e17c959aef3c238dad6b1994282c25c7cfd821a4aae07275f05afaf0e7636a31f8ff527c8ad7978cdfc3915b8a01183e28a7e095daea4502802d1f568f272db1b99dd3a75bb79231d513cf24dbdcc8ff966b5573ad06702b2a806b5d2858776919efd2c3e8578bae25c4a07fd4e49941e6dc1aae479e22e28490506bd9c5a702bf7de662951182824caa2e3000a607e8c67c3fde97f7ee5aad9e69f0f0a89837ff3e659f03006ca7d766d9ace0c13b25c666d63f083bf69e1fd92de5f13adae522137fbf5dfd27e47d9ea7d7e2717c66d6004626e7a59e315eb5c333b3b9e123cf23634d98128570d86cd78ec5ab05ababf52e92253e41b229e5f80f6d5f47312b8661d8a1c218e35bcbf13bd3154d661f256eeccc9eb000e61ad47f2a3e20d29511a81c05df948c71116ac4815316e92234d7248e1a6ca835b98b2c9b94455df06b16f053f8d4203e0fbb3721b7b886b98f7b005fdba1ac3a27d8e94d362e50efcc9822596d84f679faeb9c46bccc7bfef37efedcd81993f12163a5b809db7852c81315cd7941635a15af8b8ed95ba4ba446583e487b4b3e2a80f772adf072e0df7de9bb5e2ed78373ee433244d89bc2fe185b821b123060859b5019de8be18047694447b9dd7a2695d34029b0a390c64ac4464d86517e689aa9268fcbe4ce9a4cc334623713111e221562d6cc0b6bd1a1e60cfb318a5600a148bf6fcd2ea75405d5a63f25b2ffa1a36a08ee09a2fd3305b01a6dbefd1548b2cc8eb15fa02141ba994b51fa6b4d260f61556d5f9d839d3039791726a996e2db7f4849aa07e89092476acc16627805cf12a73f1d2589be993a0f25d3daedd1df039e142a8d750aff7df3587612e8a28749aaf32d17ea9a90cf57362f5477589e50ee27cbb9ccce2638b4724bbdcb399194f90b630b68eea50ab036d7abc6c1a3a4b0fb821cd13af10125760ed446bc29188484b13f853430fa7334e67995bcd7cfb506ae5c0f0e4720cd70606f1a9415e3805e82b7d8b1a22cba3a5e3138734699f58e70e9ff214bcb728343665db45354dd8a5d658af225022d0bc28ca8efd459254aa4e2539cd9e08a726fc5228f0279dc0a026909efee4a8aff2c4a1652d5730b0b00f10eb10653f6390ffc01afedbfa7b5fff44a84c3315ac8823ffbb6cc998c9a5a21dfb25790e3f442c94e90a310c60df245cf4e55356bce8bd765f7c0b8f8c94c1722d267d1458b9c3835d5e7adf6b8ff8875f9afe037511f5c5d7e67c56fe83bfa80db9eb03c62305014f5c1bd770dd826fc7e9902c5c68c6ada7ee91c64e6c9b78610350abf142a711fddb593234337184ca90bd0765383c430cc51069b93284efc2d6f764c78fd8058a682ae9992aa19f7092fc1074a74ca9c67214f28d08729728cebaa792c0eee837efbfce4a0a2f43b1c36c866808ce2e12bc0132837e6d55d3dc19ce136231769baa47c6f4bfa139523d0d7209a1a3904d0138b13ef5d60bd6d83472eac9e7594ef787f54af00bdde0c8e5261f267f7acbdeac57ee65a4d3fbb19e80fa2dec3954172a34411f2d1a35dab1b97c5a633d0b33122d37689ed36a7cdb2d56e99c3fa7e5676e3dd211196985b393a147274f3b8e284154ce24c6f167b5948bdd662e792db32799a02b996c50aaef46ae05305dddf24b412fd61fd4463da8f72855dacad0113d7fd3d22cc835d24a87f1cc5604786637ebd311a8d31345cc2cf84aa5c67a61b8f3e5b025edfde8d29fb872a590db114a9560bbe1096dcf19baccb46308cabd04b7793fc964adf032ba9084b7273381ef17bed84356bfd96fc60637a2be6ceee0b1dfd4462901ba9e8fa2c1bd202efcb4e5ba8e4e04716805c95673700659cd5a6e2ae01ca7db3b23d9cdcff5913600a1d7a0d89b7687ee744ca94667b0d928f950affa5cd33a87bb97c06f4ec02dc461b37567bf5a82eeb5c41082dd0682e035dafe4a2cef49cd06b3eb9d9e32df2c925a0dc532f1ab3b6095d51755cd036e71cbe0606b7615567fcf383594e570b70378b94468c5bcea278852a3876663111f765296243655a166ed770febd0fd1420bf6483a63064919260e94e0109c844857e14d4b7260f83658c40c98709cf37c5aadffa6784cfe467ef7ee6e3fdd76693e32aad6e921469451f0435061260a1b796b8141145688e17f0881c2608bfb85c499fcdd7cf7e1db1c4b7b93ecb9dc90e4bc4af853a9f3adcfe21687749822030b28db17a0f6813d7760df2ef5d710fd6c43ba71c58e0d00a7cd625f25c83746bb2decd4d23fbdb7192ef710cd79cfc162cd8f075a082f41591b58ebc368d0a0f65f856f7e2fe755c7514a56f6875b0925257b06d114ba087e86a439dcbda5503178ed0dffa04d7015d05f979f2dba2c217525bfe42db788774bcfcee9ed021cdaecf2a168328ffdf32d0bad1213116620972766019ac0880ebd6262dff1d5a10361d9b30cbc1397ddf0ce463c398fd32dcfa439ceed3bf49015c730fcecf3e6c0746a36e51bf8257f2bb0c7d29124aded2bcab9ed13b76951ec30f0d1fc95eb3d1f43e06224ea4159f7d21bbe08165546ea26c70c7f73e0307924973f3905b5f232310641fd4a8ef07b6090374bdeb70feef1400c3f46be1adbba5ea9cfdb044abbc19cea628e02bb145b5adf9ded723a4d6bdbfcce3eff66aec887d585fb6bd48e02111a0eb562140150d0662914b6f556073179651a7ce0e177114f62f3070739d7876d1e5af80dbd979205b1e66bf864a6bffc816bee7aeb1ee9b123b81877a66dc475360f0b87f75ae134f85fda3246f3b2d65ae089a80b3a40b91a27d87a5f579ebdc92453a221256031b1341c722c48db8a919f2d7bc6eb0230ef7b5e86d59e8512891761043831b0a6465a6549a0f16301568c0d9af72911b5c6a508703a88fb3e223ad93203ff52e5b0deaefc17a9a16c67156e8ad16a8f4b118e17d26722ce1092203a1c2544b99f3d26e1e4959862b0a8e75617f5d6960304dded18539ebf70e5cad502b25bd7e4717cbbda401e586b67401665e27b144512bd76069f58a068f3956eee38e5a61c15ab5320b19212b96d4fe2481b98151e514d702f9581bcbbbaa18a16466ab6ab00b8b837607e3044e74047b23e58443ad05cb5e2a87b77272d8f3e0c8be22a75f322a76c3a481c878148a4d3f090025ef68dc6ae5c6ec31f1f18e9ac322464c56418b6a56d27051da5a3751dcfcfd633ceef37c2785c11252e3def4fd4879a4b870abeb901f3ffcd6b3ee83cad51f7b5e16b4dcfa84090ca16c721fb91f74399cbf400feed8bf35908f1f239171098212357755b9ac97c7d29cc4af52574d7045424b1fe3b0674b959f4ad4aecf969243d4b53e48fedcbd1034a5a769316cdfeb01333faa30cf83761041b61c27845ca7b35b1ab01f916bd62df88cf90f13faf8638da968abbc1412769df91928b47002906433cf042a30b46a6674fcac5172766edd7f45665e4e05100ef06a60b5c6936f41622fa6dff50f7cb0c52c9df95f0485a93954004ee448b3b69b62d8c711bd72a858990e3aeef9229797cbb1732f0c3c3bedbef2073b02f889a46fb8e09bc1499572136bfd070a624dbfc24e770554f376db16998cc4dae15a4a92dd41497bcb8c3e9ac749ae39f354d9416059707faedef898671fe78ac6e566aa1a7e6799d53d7f936dbeff844747dbdf3edda166420005c93e5beac13a773d1835e0449f4b04df6b93d7e37507265f1e8ba533302b9cc2bf20e095bc38574072e36f4bcc1068e9d413b28fe254268a93e4328385d305eac8451e20e877643a961935c2f699821614466e8b3d32dd844b753fa7d06c0446541747855ef86c2f4a5fd25f9ad469acf8fe2b9274d5c437dd8db92ad084bd67f00f9e3a1914ac164781cf43041663df5b541dc2f9e7c96b1857768f8ce25f5eb938871282abcb7c91783df635ee1eb03c5b277bb95a7d214917f377eb6497a54f5291fb2f4a25988912416a47e0a7a22899e106d1e9ef93be2a61a0b28ff2faef0cd7d9b8b0e470d9e3c69f3e1e8da3a610ac897949c1e3ea9c0d5e1de4ad2e803d70d93654eb037acc408b64038277fd479591264b9a777bbbf742bb9c11a17405b684b9c6aa173051de5b2411acc8c2862d1aceeef1b14d665d9fd3c531e1a49cf340e009448fba9f961ed2c75028cfbb47f39f9a90a7af71f627ba6b016845dd1dc85368c7e091429aff010edbd12130c4e5be2698b7e82de5068fdfc30354778e999575037a62fa2fafc0551206fe2273253d1764379bbb5f61a80bcd84fedec1e7a47dd3aa1af836748419e0426c855f49cccfa1c3eac321cc883acd2cda9b3d20822032dcb38c6065f7411bee491d8ff5a29c4eac23d43a6df086777f73c4c31754777a25903b63fbb32b4aa79c1d611cdf3626102b43b7a8ae534729a2345ef4bb48b007fcb96f50c67a84e4b2348f8fdba9c0ca8ab53fd9ed0c51fcad7219362bd0fe6996e63478df04456210b23b36584b0a5daa2578bdf3211d28d3e514a70a192cb566664b8b2f640b8fdaa9bbc763bc20304c9e445e9263de5bd445b33f6294783e5658db6a0bcaee85c95051eef56259c8af4289cff024629d45ac33b2c865edebc8b97a0ebeaadbff3e0bce953240a0b64b9cc9bce85fd498e59759362bce37528b68c34bdc31308d95f647ab47eb521e8d9a39e1e6f9f2198d9ffd4434b93711cb9d01a1cf70e2bbda37da3b3749824503c3bad289d7408aaef61f45fcb1b89c950962c2c44a8d82267f2fbab6fd4317db4d8d3e7aa51341ee4d038373d7eaf3073946540f7cca1d852522c039af440cf9edab7ddfd267211b9d6884c85946c41f0ef3df14ac6c66d45aeb9ea7e70213c89708eb7dfe6d0cd5862becd97e292ff9fe4fadfa6974d20d8acd3500a3cba614c46d6f09b77154e32990f592440bca3b7bc082a019ba86ff11a16fc8f718805702ff9a0e6750a4859e203572ffca1ea583ef55a70f0e93e62ac49e8a5a62e775201d00f1c40bb0a70984464caf9836b054c0dcbb246556b59b6d30191f0bf140c87cb659d236272db3a73323d0012aa7c776446d3d45bc871e02f0ff04175ff5adc2f7ae888afe47b7742f71d733eab4c365a816b3ad8e32f2fafae23da5c3e7e57434039c69aa0d43fcee22657e3e46e018f104bf3f400343241f266c635e71068946de2df7966d0f5c9cb58f2c6b23793b88ae42bfceb671f204094a71aadc42f5226eb489c87cfd77ad460b504c808c61d10972aba4c84e1b7e951f09490e0d3b6b66d5307b624f2236a697656e529d63fe3b66c17c2405c6251ce885242b2f76a307772ee78fadbb4334f343fd6e6a00b775324f2ab44439172736d0cfb48ec3f8ddff0e4ec1822026f73e6b1697e513018fa367e7e88db70ec0e689c0e492f31db084327e9ccac63864eed11159def61ad7cca323c170c86898fbd155b26868e7b083911a3252d643ba521c0d72a8277e1f46e4a5e63c60a587e9580b671a5e9fdde0a184f9f672778e4539557398dabff7b6a19228de7fd20af1158d52c467a79ea5e7655e3e79931bb35cc39aef7efef940b536c678d5b6c7c850fca1d460c3443d6abd3245a4401ab4fd838f77b5c72d6a1c4e6f59cb3a80d007728dec4ee94b8e8d44712630f66751b9acd03824b5d0222cd9feb4fcd936959af18347b81f3a520f8fcb11d1de69ba5da682d8c26d699809ebd5a1e15c89b64246fd6988724c2ac64bd586a53c2b46a0dca35591eaeff172b0d254a1b137b4925f5c85ec9225213938b2d052382b96948a16077043ecd2ac5115da825fbd9d8964a305580af0a05d17741df2329a9682695da17f402204def66bda00fa714b6166f92e187a28e2ac363dda15efce9fe3ddd2643d5e805e9f36d4ff9897fce7968dba49e95ff6bf8cd46a19c4a72802a6750c489f9650ebfd22e78f81c4935c1e8f3ed8d7e4a59836b1aebc0b284872f5725140f36d338975a25b0d782d0ac36d460dddf401d122fae9db4f8db29d00e6a0e04a234a3d9d02b51888169c584feb68a3b79b6709a75005f4df5a421fad82c68f89354e3064b9bdff1ce578a28187186132f78bb3efbd2d5d0741376ac23e4f17cde25cf0cd20879b53c718b47a87c6e0a11d30e38cce5b07fe39512739eae3258904eada36205e3bc055cf1736e08ccc461654b923d82d78f5e29aa5031dbbeec229a8d13deb7c4f67ebfde449552081aadcdf94445ce403de2f6fc5ecb537462b7f6bb004f175cb88d308610447ca99119db8270a5a382bf68530c594c8a54680ba7aace6ac349d8555b8c32710bb5632e7fc0fff3f0d7b2f4cfd27a7a0f3bdd00c7f8677b7e7244aae4988aca5faf79f00f8e122e4394a625c6e95e40406baa401fe4b030767ec1d56730c0d1e0b68e2e3f6e331f6ac53a5874fcce4419deb6871a269c7f0e83ca74ed4810936c188f6c4d93db99711c4eb63a56cf0b82ff9e6c1b3fde7eb00f5c2c3baf9b7091d20a7872b69524b76b9a90abded729385cf82d2093a8f719158f266a340b95c08c8a25f77fb67d9b818400b08cc1508092ca950bd7f524d4e79e7f5dc3e9fb0d352f25eb3150fcd646d3be5dd9afdec09495b9a5e597e05c600eeb92bfd978048c38c5af9f69531c2eefc00c618a458b807049fd78cd57d3c4f0d348d54e346a0098e59fa971cd118d64667029fbacf5ccb149b56eac253dafa5c02575689145777052600f39de0b68ff24cc5fc2dc573cb638409ddd35caf40fbfc4ecc601bce2dceb18068e0d32aa1a5f9184d9928555b84eccd1cddb8a61d342f241bb01a7b97efbbf8bfd4eb0f8ef9f5d16ade1c29a33daf843ce9c218824da29db61bfe5ab35687eee46555f436340ae9235fc93d7af6cc788733078454960d0e92b93809457d79b13983460367fef07869a2b6cd6017ad581bd47946ae73d2601b6a0f6d1a5f426fc08175ebcaa263fe36ef66df6e3d2d98b4c60aaeb96a7683a21d4b629275ee8911ea228c0e0834a9e414232f480930346abea09935da44fe354e70da97fc8b83516fc175c6fcdc7ea6491ce8ad6dacd69aacd8a7500cd605a04a5558961ab64416b56af8de47bfa7898aaf26734c2f6ddc4b27726d3adc2a22687246eabb4ca7197a146c76e06c0df5fb50d08c882b01d337535eca6b189e4cff7ed47cdb5ff4d2350838f0c5ba49b5e893af53c67fcb23106b6e2c1a93f24f6c3f492db483ceb337357c2748436a240c950330052611d0a3b62fc2f9f4e195134c3c31526b9384a321e5bdff7815c68ddcfe0f8d15e48b7456ac2149b89909dcd6dbdd34d003ddfdc241761485ae7a49351074f8e3adb45db46525b3f0e79bd55c62d50304f85dc55915b4c166abf2d6823281c75c8a2d3aa9ad43c7fe024d03eda2c74eb4ac72ce5beb70f3e6aeb92ddc3b2d261cbd72afdd7b031a100727c259b1f80c39ad06f64a8aa91813bf40857702752958dafe930176ab553cf762eaf7f6a87a72a923ecf648ff80b54da9f070a44341a0fca54949d4a4b4f76356116982523d7a60567383a5474824a8c073b7cfb24ce7142c2954ed5eb7bb76639bd23253b9db44ff718112f096487c2e411738121e2bb848bbd28dbd8ae44edf801e4124d56204a74590e9005df69199f5b465c023a00083e3ccafee92b2ca6f333b3a8bba25330461083104b237f17d5f8dd1954d19c80b3054b132753ac77207ae80908864e44f302e110dab8240f27c1e2c751b43b9a6746d21d22d7846f2c949139a091c7391819e6219bf2eb66b95b008a45d5a58642786e52a00cfbcb5ba4bcbf2427c705305cc71949a534ba83c3de00a78f9b17dbb4b90f734f3cc6529f6c5b7b3b04cf47b9a2745a9102cb6b126894be9d9902459df92302deaa30008da95812ab6d395e13ec0d6c4fbadf255871ba658bc34c44355c3a0ad891a4ab3fdf2282976055c38e910e30640479aaa133adfe6c92409acb4cebdd94e4f0878b6d46b02732d3a89813dfd61e49715e82b7e61539820b8fdb182ed109859bba6fc7f286351e39d7e62de90fc42c78220e9a08eab56ca39a93accd666e538178b834109d6f3822cbc28e7974dcf5b122885b745c9a5efdde63fe30200df52304279de86aa6b186b2af49643d04dfb85c119c5ec8317ac497069a71231f2ec924a052b782a10e1b7dc878a1a814624acb998e6c2c8c15731ffd67b3a02130ef20e0869e28b07b0f8196c68878b02e8f175bdfe8cd9c907dc6d955e3ea75c8956f44dcc178c2c840551792159c381f1d8b56dc76f8735f1cf40ece8b12aec0d08091e753fdf8273a86a33879f5723c3e0842a45360aa323b71a41df6e7c4f5ac30366e35613d83045f3febd02fedc7d0788026ca05fceea268ff8f58d7f7d88633ec3cee108a7bdaa50e79e8731e1ac5a28222e5551d25dafbcd1a09f61c1a48221054b8d851ad22a58483fa2c03073421df95c146a712461ee3b7ed96bde5a4d3bbe10c352891437adad876e80553ece0fc59f76c2c66cb97bf27a2cefb14dd936d5ada283ec20edd822afcdd6e807d99df629936c53b819bffdd101a96fb2dc77b494cb8551dd94f482bdeb227b93f152d5682517334b48b474cd95f08e3981a07469bcb107c331cb6824a39abbd401395a526295d5e824e2af52d26f467c692cf1954162fc417a199cbef51148b0b7c0cd3f730c9c51ff621d8b4fafd0787c13184e974d974e62f7a479118e302576408a1c48979332f4aa71e76d86cb6d9591629c01c859f115746b036ad603099ecc24a410ab1a15a752b0dd9984f40e0f62d362ef49a736d8486136d29d8c47b392640be0527bfa729ff7fec1f6c4d847572dc283315b0709710e9fa20b32b963019beb77465548e70eeadbfe0bef3a5476245770e703be4a7dbed8dc2d9210c612475620f9ab7dfed2c9122e4094e6b7082e7327000e565b8ca5c91791c2ad87b49e5ce4d084b085799dc721d401f12ce1aa17b7ae43be058715c724967c3a72ca278e680ce310e205760c381625387be9c3690fe9628a608d371791331cf06603f90ba0649f4f1251f09df345466b3baf7df951b0288b2b6f4f4e8536fc056e0650d8e78ecd19d2f3944c5574e34deb408be0b3c39f72754a65b413ba93a0345a4d29144319df72b24e11cd1824b1979ffdb6bdcbb357a6d2d17e02f1a7d36221ae79d0a9a6e0fffa518a3b7433ec773fa6f9dd5aeeb6c57c9fc15c491df80a92cbff955c475581702eafa92036830c26cfbc6e14f78b3064676d2d5ef8e4f3fd3aabaf7fb9eb120aaddece753c32ec4fb4e5d2ef378734a793810315d38beb5d659a32fc5d64654a61e180bc9f9aa2643a5185ab072d2ed7191720bf5f2dfcfd7fc45f644c2e93aa40fd7f4b65b53e7f9cabb7176f3cec6341a7284568b4c493d2a6d83c6db01427a6d9d139038fe51a72cc7061e0a3b4c5422da979cd25eacf6ebba7acde8995183f4ff3fc04c15dd138d5a643728829f404d684362d6db88cf73e2aa6142dbe4e97446baf401469fc0afb6fc0aabe8afed02f924e3c530d2597093af5095a1908f228a98d7580e0c5220f0beaf455f97af84e694086b2bac6aa2cda6dd0baa3aa3f74aa97cd412a6d6aa6bd9dc8e5acf80ba9aa56cc9de8e35ca2875ef0088b821ac0f51fe4fa3980e9f0705c17b5b3458c97f11705e556b9ee2aa95a9b7338bfe73d6ae5e7958866d72b2ce58b4331bff3076228ea413366115af2eec6c113efb3e958a190f302194c2f87660ab03809e3efd0867c493bf55fed899c643697a20d14aa4271251006173f682273ecf645958f1ffca1baa9e1df6a5f725a15090dee389ae620c5489f2e2822ab5e0aacd9bca2e6acdfd95786fbfb96bbdfc5b2f83c0a9f513e2199a3acafd6590a5d01d8c2c35f3f8c98920279491145872778607c87f73515882588fdb6cc0d09210e3244bea9a6e06ea2f9e7cc3499724d2dbde6fadc56df99447506880c5fab8ab10e053181acec517eb73113d7ceac0a7fc0d22fd9d6ecad0a952e55ccc3c182b1bd83de58bc89f9efbe763dc83a470b480f5f30e6f1643c165496285519a85190dea84033a5068f7ae22a17b9a09de2592f1d058f3585d5a87795e0d983c93fde65fc8e23cd4221c5778c54c6ec56316fa1b59a8538aaad0d36d0d6549c88622c2277bcc119d2f21b53889cc532626ff34e48b772f2461ac1816c9506a35832150b5180a6ba3c3bf0334b1b1ce22450252782b98b3f93a2c7744168a8ab16f013130acba5dc6a110739bc827ab7ced35749ef5586041940af03edb0bcc3770e1d2fdbaea93a5acf295975cef96255623546c50f7fae9753358a7fa36d78e42f0873bd3a4233b41f05e75bf488b037ff6aaf382c9211d7245b6d32c278380444937f736a82ffbc189130e3a17fcc96b17f014d4c2c1deff7acdd349eb8dd0b9bc45f799307ad1ac95db6c1d43a5286e6479b510b88ce8db73a9e52b58c712cdfd20917d84276f7b4a0fc587c4f8512546ecd7dafced5ee084ba31d457f1aa1de5d699b64ec1ac19602e327d8914d962e407937e0db827b121c14b54fe59f484bd7ef868e7f5a2e7b77738d6582c24c1039ec9bdd945f4e8e094ff241790c8cae77fd7630d5daf11b835c769812dfa9c837504b1e353b19498132ef3e37b1489537e96f228ceeb70d1ec7788fb5a9b072895da14adb99b6e716335b68b27b5b35b063b970c08e790863edd35d0a518a072e97efebed3b833d70e7e62a187d7074c650e2d3af2050830ae2d53774270f4ea85d7eda1648ba2cd156c205c9d3da54eb2819d197ac6276c5fa9e8893b252f302e5d5f289a7cc990116bc6a3d55b1d6b55cd767f23ffa2be4c927c82c5c3d501ebd06be3eeec4edf5b3bea96e7e977cfc083043471a3b91d46f8b424f23f73797586beef74cd9d706a65b5b0bc700e855631e707d397efe8ef7f0717d270b00cdd91a8a135e1bbd59b829ad751a0e1baa58df465212d79d55e9eebd2aadd3ac11f15840eab7e5d6689c92a2a1d214f377e8084bfbaed6737f5ad68562ec7e3423a4b6e6a677ef3b2d71ffb89bd14e867dd7869f618b6fa7b7da6fc3a0344bf8e724613530ea57dcedaddc78abb3b061fb07eafc0395ebf1369b9ee0f64652fd83028a17d82113b65ea901b85481b8705b34df363c78ea869d44739a65940e8c21e3456b90d15a4505558dd6680a96d9c34595a1930e15dc8c328fd66362e1bb3c37ef655471493c0bd4f984e2c38aba4348e0868ee06fc1959e639edb88a37326041e2ae2c3b9e4b5aeeafadbd5d6e9bc37e9456e0acbd07932c988e7d3acc76ce4e5d4661110867944c40d9e422016d5874395a628450db2663020a7729d0e46fd09cb600c3c233c3e987c066bc52cbaed1a9f0484915ee15f85ce87356159fff52dd218cace51175ce178b6520f016c03c251526626872d343bdcbc05696d0568799d87afcf90614b2b15f0339b3eaa17d73b6026f243cb24aac87bc969ec6a3f30bee42bdf4795a8ec3e2578a528a599d6b83124b5d8b4f04c2d0d6fd8155c9ee4c2a461dd2cf3ff2a9b228ed25909a74ad3b6b47b0e6ae6c4e91e59a52480c63b2abe2ac848be4ab33a34f1c272eae8013a9ab2677bfb051bb0f4758435202bcdc533a78eafd4954b6214a48c4511cb3cbb495fbd6520fbebda612c6340c5da4ce0021a09ea320e9517a40f10036ff404e8b267a85e799dc43412b8c38b2cf11ba1b66bcea2571aca9e19ce89e9e317fa106f027c06907e1eb392d7e76cec85d9be13a633f0bc887bb68faa372ffe263aa724a55b6eae150aefa6ee166ca3dc87b81d468245b5a31a371d3b9f64300ea7961ba7a9213ba81700454f35e662f14b7ff47c329fae60eb91b4a475030f17211b470da2603a472e7c1158c0216824870a40cc8ec9e58f329730100762cc31caa879309c14ebc58c0e7a1a44156ae714096de8bbe9e2016517a7e9d84131577f9e2efe43a206c6d7996b214cbe71556d2183d7a2c2f72d754871c87e73426d15b145da03fe9ba3a1f5f3503a4a0446bc723ce9372bfb529928e16304009ea2f0e5e705b48b69f010b2c94180c6b88aa03c0b22837db06016a801d607a2f4d29cccb9a10a8032b750bf7ed5693882aa99a143c0025e145cce97bc19166da5aa8a1a0a70c5e27e611d7eba916692dc334ce27cbeef55c380c5fe83450ed9049736982f413dc40603f53d82ef417c79e7125aae6a0cfccebd4b562dfd53d2583d63b3663ba4c1594e69f6ff11a65cc9beebb9056e03d775d81a0800741b7e61b94b61ea8881cb6e36c4d252a7932424c553ea420aba05e35f25dc4df3075800e193662e7a5fc228e21e5b977a65e1e42b3c0d5b3c397154ac2d7a66301baeaf39ff0300855da106daab88181b1e40559e94ca49ee5ed132ac77ae1e2a460cf8ea740bc80c1175a25c3985177d52ffd9b16034c5c0c97305fde9986160230289b1b126fd9c67a990f42e6e3a4a20b85501231bc1034a0b27096007e12dc4b8aac6b60da9031026d43a28afec4bc50651e0e9d6ddea054fa13c1d0a2e0eea964fd973ad90d6c3fe26fabe0a900c739779ab649bbf4e39b462f9be3e1cf7a7728143e3ae9bf8f355a79fe7cd23acd2397e93648fd465a83640c9fb0f7778be53e45a73d180c942cea11c5f8c4a88a1593354b6e7f7a8230a6e9bf64cb1e40c04ee57f5fbd6f57693f35e09cddde0c4e5eef54b4cbcf07fb69d7b17484a305ccdae843db9051f49ca8bdacfd374156d19da0b2921fcbf588480d8ec3af6acf6e06d6cea061282abcaca1404034879b22f514268c67eabdc5aba99889bfd1eadbf2e00029dfcda052ccecc0d54c5426f4c418829cc3c7861df2a61cf18dac1575087597ffda74bc325f1faf93aa29ed53857ca7c2335ef703b4d1d2a42e1bdf898f68ec2019e8b961d2d916272d882f43363df27f76487a953b28090b77b15f622e202243f42b2bd3a983049bb88e05ed1bd4d99181f4efd80b206b31c409ab728e58fc0f86a80dbfbb1121d466b841d7d7e247014fd6e39bbd93ca076b3f96df427d9816ae5c08d3077f9bd3b8f4a85e0d0fbf1140d464b1afa873e50babacd6c80ab1d0f6579b8bfda7ba628023153b51309c61c15a51e4aaeae1fd287a527ddf7144f8bfb490e8c85d88537c73dbf7fd5b8cc1cf883643ff115ce89493a9fa7adde4a29b42352f129dadbd849d6c683687b6600d570f3cea8088bdbeb8d2c4aaf31b2ebfd1e87b62d414a892e0436ee65f892f26433222054a2d7867976ab29eb777bcbaf08c93fba500a5b75994de2c5b9c3cfb4530e6032d57cd84bc206e142596e96f1043fbccf466e1e1159db98762a510d6ee49a535364682177235def387bfe056205348389777447b364366bb132a3ebbe97c8d0acc146898e358960700372189e41a2f54cd25a27f03f598753f04cb4f4886fb6ed79cb3457b0f9cd5037851f23838deda7d33b9444ca23a2c4a8f8f65f13b23fd21ef6c75eee988579e99ce2189db50e4d6c17f2060d91d5e5946c638355269d0c8a7b0fce28e2a08e82c3cda9fe28dbc272a138171bc7f5c630e030037037f3a9ba763721683bcc499d6766976c6baa1b6322fcf2fc1c5dabb06ea94435b4c152b3d3cf1282998b3d083c5e9dc411a8bb47f3b936707730be1e9dadb0f731cb28137fb24f1f30dd88d7ead50d24c4629d85a337a2b2f3a844975cb6e02d0b932c84065a7d042719c0e737fab6991d8f64795d4c53ac525b9992245be76abec74b7f066d190d60ade5e2b53c697eb74956e059b54f508659eece09eaa6b597bf7fd66372a23a39406250c09305adbc1ee8d0b56d3475c8dcd430e9b6eb81428734d4b30f774f362228af686f0384dd4dd5e59fd67564869f9df152d73fc091107d612cfbf3c627d0a415130aa14d8e3267a8576d45765c7456574c31d15298e6dbd73269937996cd5ced98c9520068623b95dee35ce8fba8080997ae14d6641510f03b1b4c53f24e7cc45c449c2a507d9cff51046adc2c54ce18a44e18c34f1bf4d00adad9e7ad1b21b8469a6d8a21db0759e7100ae79e6b474a8fb9d57a3bb0c63b6c2da8b733b3efe7cbc881c5cd25fe333375b6ae0d4def08adbfeb01f1dcf8a11d419e05271d417e9242eeb045e202621a5dea62e1de737652e5a33d89fa0b192428d91ef81b0190815932b0061cf3a5e11fd347dc54c4ba20fc8519898a726ca1e313617b3fd99e21dffc9ca66368bc1e0148e4819dcd540bb7a87a1a56d455bb4e5e68770697376169f310b0fad45af0ac375fe87a0cde5495774e6f4f2f90ef432ded8ba186c703948c7583ee5a79eed3bf1929b688612846f5fce384a71ef5f22089643af084089c56bf6e9fa78005fbf865fffbbb7c2145170b249418f483159615cbc1ff1ef3e491d138be06fc9d28ffcab47531f11b990a3e30c53c67e92c81a980831c1514a7ba8861baaea908e9bc1ddcdb79e57e77e2977062531405589100b3cd6406da2ab05c70d773828e4a7870942543b728814a732aa201ea395eea13ef54e6b2c7e4e9ae332599b9e23ecac2a33e9b834c3e15b3cbf0f2b18d306c42aab4bf0e1fcaa10c8ec685bd3dc440abfb6125bbeacb54dffca2ba9e4e0e1f40bc068cd23664cd24298c8accc02c1aca20105bd1b8e0c36c27bd47f14779fd9908761e0d8ed7ba4adfcab4b544a033ea39c490884688d8b14312e5e1bb0d675f53daad5054254e4f8d28f1de24c725f968a5bf878ddee56b5d196625db6ab1465addf3be228a5b161fb463dc6177fa10e82a933570124b72d43ca233eae090bb00cc585d3010232fac84e88298c286ebf2f0539bb8d895bbdab3b892c6c76cb827a9d6196138bbab967390ea5dcaa726bf9611b23c4e0e1cb348232872ac84a8401f474f0dbbc9c2e9ba50add1aa52ae6561d98796fe825ccc4a5e3f000e0acd451be1d539db650feaa11910e7015a57e199911bc3688f5bee6fb728da6844793cd10d8b769f9035f714e61fc2c0f5f3de7530f26014177bd88d548d40d39775ef877d9978e4d34c999c7167323cce5f352ec9ecdedc83cfaaa1537f027ad9fccfef5f6708698352b605c058cdb214a5c131b6867c01093516e9933c01df6873e9ec62fcfd8277a7a8458725a3df28e174122c2d2163a7fd6ed1417bc4baca436d25cf9601144e224a657d050c3f62adbd3b4ce221ed27abc8ae6cb115b619f67c3a551ef1ec2756fba9eaa077029da976d32c2cddd55978e6f922e00768b67a15ba694118f2c0d842a5b2d61cbdd99844d52a9fad69be20a7a2be3e482ab8f65cce2b4ec5d2da91bcde36b741c901ecc1e6a077393423c7790979b6d17413bea8c62d070b1bf541cb9b31ece6c3edf9db412184d58d1f1c1108f74c7572424d9000dddab12a6c9c25a260c0816f1f699310df90cfe95f51991b7e4276a468e11997a30be436c1b80855f5d53fbd1c6d6b6c7e1944a4f03f976729e35aea329536687a8187e8b3737b1d86c0cca36faf485e0349628e4452df1bc58d64ba6347bfc7e927f3855a7ca580b6e4a7085afc3ead408cb8a044f1f405728dca19fe072f6e794b2938dc7ad79b5f0a1fafbab4a7609448e536164bd8f95ff1d09fb9e39f4822e8dbf63ffe288ac9d44f1988b0f3a6f035e50195be2be8e2f334154d8e9feb74d04894194959cf8f231f444175b5539304af77948ede30a3eabe58c20588f971762c17e43adb395c1d4936267fed4fe8c1e871a8bb4822f613e8b1702fd05b1d2f7a1664773a48d83a64cff479df2490b5f5f4821f537a9c35a5c2f8180f063607714a533188287afb0288bae5234a780b8721de31a48beb1cab5f5891cf0215fba5ad7ad402ebabb0376ceeda80f199254b75c31f079d9b4067fe7401d087d7904a313c1308d6f683764379408103dd6c6d0d6b781a632ceec749ab42d1d22db8701834ec814e040be4f5573e64672df2b638870f14030b34006c98b49bf1cdf1cd6abfbcb8857905ce32d0da902ca92ccb7e0a8a1598945fed0be7d8c2a367ba299c95e88bf509c70bf663bba1460ee986edecd0512560d3a41e0c619ea841ac903461c33ca6fa8ef8615b54426486a64dac8d3a3f809dd2a2c3ee93f7d5e947acc106f3a7a892d5ee30e7ddab02d5313ccaf89823f6eb2219088172e2612e9bd3530c7c180b063665fb81f8d4d91a1e0330c3e8cdce61fc9a0981227cbf3d910a6f63d9b3963a517124ec272fc51aa12c1c267076688d91a6c010536fd81aa7736fd9b46fd2997fb56637219d21de618edf0b8cbe3b03814dc2828b4a8e08625530ea2a824bb126814c052b608db09a5a0660ce063e2bfd5fe8da394ff73ecee08b85e53deccf8338980f8eb5f961d74563f88462ebf05c2c703d46f98caf5028fd387f3afee1fee51f1d9dbf738a74c416203d7594667c1211b3c6a3b150b20f1ec3a790ce521b8fdd0cbac7985220b0470e4ff4381978319388a4014864e337bcdccb55cc9de4c4d215f2fa35f8c88dd673ee7d72f70e385e771b93269d30e3cd3a0ae86db492d1fd58c4433e8c3a6e5880268ccef63dc21a43035738bf2946b1f1a29d52b7159a931c6026015ed1165c12ae37b6e0cbaf91f67ef2818825f3bc4d294982e35f2e4f97f529c1d1b85c64a964bebafcf90a0bb8cce8726a811860df4462bbdbdaf4293edbea236c8fd4d1bbe6a7f55aa82776fa3ec5412ecc1a1915668c6a6edb657abf8425573bfd13e91d3a8a05744dbb1f63c991a0d0cd30f0b70f59f492b9716fe9654bcd8bec2cc3283234a4e5cd59fa30d51bd79173d2cef231bc85c4de719281d5012330cc62db5352488d58ac0212220df75939b1d8f70d9b46edef7317f8b4745784c385d07a55ab79ba6f512166b13ce099107f75ce1ad4f5d0574533b12754b9cada1eb2d71f92466d0cd5c68088b0bcf60d29f4e2b9b295aafc56e20f1b86e9011cc8697cb89aa6cbdda16f21c9688108115aca0dcc8552987b94577a6eac5c43e2ef8fa7460d44ee813257c81a7a7790cd4298f99b68cbbc66321e038c250a3fb69e535f328205ae4f6b6c65b2fe52288e45c7187321e79b70b7e09e230af560ec13ac3d4fabbbe59eb4b5341e68c42ef0d642be80bafbda4507a05de8b563ac42f56fda2e757a4e48cd394b3fee17ce9190e35aa314da36f6601269e02b9af88705f9cd9fbf8297a15d333b46786778aa00ffe2371118691ef84c82596d49201535a2f87ae03db62873dd2daede8b8e6a22832835d8485137e6b8d7d126c4c57a408ee77d690d3c1261c9965f48c13126fb441d4089d9c4402ec96b57d73972ee85fe00f511e69de3fa337da1eb56feb44d6c2f5e66dc0c28026dda73a894a86b5501a397b73cbff8bc3a8b9b72c96cde6313dd2fe2d481a9ed97367ec01ee12dc94ab1e0be98207eee9660b801e6df22ede7fba02140f4b8d73ee43b93220909af58d1a6f56a904646a564203df222a3e58c83d3f3a6ce1621d5840e7ad642e9c3fb458879ab0c932819742327464b817de0384d2f011de015ab605fe2af17101d39f5ef3dd5a3ba9fd2103d35883a32d228967229e88296b8a02a0c69d7a637706fa3f66be2fe1fe4c72c10f4d6512ee23680d6073c1d6cd7a2e02c49603897e6a3ea3386f54f909b6be9b9964b98cc51c3c09a5217adfcb0f2431dcef68e41a5c5b4beb1a1927817cde60d1bd173fcc829e4280ade6daba73cffe77dba619c2844dc65fa0771415a125b6683fe15b1d3d8d4b6a2ff8d8444f7026d4db0a4708b2b0a1345745172dc4ecb2852a9d283d3ae804c9f6346f706f58132f2899b45fa416d13c55024516f638072854756ca788b0641fc3673a4d8332306ce9b275fc34c9cacac7edd4e6f6f51b67acbd4f83a3ae9714604ee6be0f0334d1a8c5254bbbc5181c3b1d8bdc19fe8d9d0aac18f481bf5a4f9a25495463ceb79003634e9bff218329c91e8e217f4a1c4fea266857a8cd07261fd03d7d5f0b99ac7489900b273b8dab4edb25184d2a4a9b0231203561258c752f104b3c77030dd824687387b6d62a74c1e96bd0918fd35179ec6ba65cfdca8f88c18c8976603231e1e71683a00faaa9c2d51aca1b07ba76049c34469418a3c9963f3ec9ba0890da0d92165b0cac72cb5a30d568b401c8a1f71db5de220f822798f2876ad667856afac7953384933a03e804e09d4b92b030ca5bf912432c2b924500ec7bbc5441eafd5fa37263fafae6021ba44fdc7bbe0e0e6efd11cc5637a3a2beef67c0ba462ec403c655df268fdd4cdd7eb988126ab63f14565d468adcb6ec302f626ae64887eef9793d8bf15f4334d50e5549d475f342369265ca1c6f9e1c346820483da795d1ba979ca2b1a7bf6bb0dda4e51c7374ea7394c441a1985dba8202be258e749b6ca61f35ab3666db1a855ee2f84efb0758b31ebdf0ea45168863ff322a7e67a6aa3ee0c8f0aea602602330b231c2e52d36532bd392cf504b3479f7dd50a9b8850c36684a6bc43c5ac5c7ad0fe1c9b402ac746e4ae408c7a92cdc864196ee37f432a645f8c4755bf31586338dd86bcd336e5c8379ca1261554108c3b2ec13898637aa2b1642c2fecbb8049cd505a833f2ce936c06c0f3ff8036d5be145993b044e3513c1074147c1f77af01ef2eae47f468348dffee8707096869935561ff1d3fda567e4bbb074aa1f3386cb6734167efb845d3c35cc795f0c3c514df5b397a1e9ba9a27738eac5f8f1171cb9093d04c8f2f67622219d656d951edb4462c93f855a66992a0bf2dcf8b1118d46ad2757ee9c8de63bd72b18891c48f76b9f4c36d104bb0b99a5ea8dcc72aa4a82c9af38ad3abe2fa86b298156873d8bd5bad6b54d30a807014780a69e0ed603130cbd01e80f0a5a4ddbef93fb8f2cecee018dafe2c9c631a759aaf2c207c65fd6c04804c8d6124e2ef36921ae01a9f555c347db4a64942286e2ca39da19d4cd6d02aa9bd6946f21fb515a1a25dd1c076b7078fa3c06945221a90830c0f29c7bce9bb517418016e8cca1a00f3fc550a6b31a182ea342e7c2c8b07c4a8317d50297b8bb7337ebfa7cc40d54c55b8cea2e94e34bc658ed0c941a5ae935fdab201779fc4a94524222d4ed46e0175f80fdfcd66d240623ac8864e7133c96e0dac73121096feef2f64d0f87097178718c98910d4d9a1cba554da49690f4112c5d9196849421103e7f3efd63ba65f5d9bc30fd74a5269871fa2fc7f0ce8a5b6fe62f2e9d8a5615e500ba8ff9ac598ea06592421b06781d0b9da373e5fd9eab030396cd4f478486a669f7a734cd8566aa90a93fa6eed41ba61471be99fe22b1b55467ea6f58e5ac2f3193186446459635ac0fd858a09d24fb1dd50f471a0191618e5a6e770b8ca98063d7b8a9ac0555686c5edd1ac1004d21358e0ee5a2740e14e6ea46e6fb0e63a17f2279ca32a113155113d481a68e4d55c2e280e4679ed34bc92606ec2e9125fb314412df4ecba82a5f32778e40eb1c4fd6a76b8a4e4cbfa531248f18a671c3b456ac203c62c34d42dfeaf637782a02c2f2240470d96fa805272e807cc7a6e16436d2fd41ae8e07b078e961363564b6006d5be6fe003b28b4c8fa6d3d72f0339bf5e89b5719cd52467f35bb942eae317b904e05ee47f0e1127fa79d70e930c291d689676a6b00dbb853bcc8ec7b40e41c4c15c4b8d0a0411bd2ae096b870c2f6bc70e509be0b9b64ce4f341bd515de0dbb982d3de816f64da23de76143bbc91a9c712ac2fefd7ce782521e33a25c152a60252f79bff1d6add1a749bfec03f4124c6976d67e71a6c0b6f4c7fba3315501a2ea864a493df9c78259656159def9d0a00f8dd5b4282855d5004f76e1e7dd8ef4f7de1a8ace4a1bc4feca8a174ea6e495626edb6fc712a49fc6ff3443c4c290a1120d63b5e925d3bd8661eab23e65ee84cb9a52827e93898c449c9536c471a91769e91a29f831b272f853d7ffd1024531375c8b9502bca73616f81566d6bc0a4a3a8a8de2957c97dd878dfc17de7be6461ab60f1218028f0a871c876ee939aae57a753e3eb6c355b91caab3210266ea9d9914ff4c546a6b6bd40684043c28e1a8786a06d2ce673c0def9574ab8b726963ace3a9bb2807ec5cb4786ef476cfa6fe7638d4aa1017c0f65a09870b7930f7ec0fa55fa543ae2cc253ccb192cabc71175f4ecb3dd702d69e0fa4c9d00ccf09c28e35afbc550847bc6bd910e0a3b5ccf9c8480a35cbec866563224d12b23052f1a7ffe9eb17c759c9a7657fc401d58b8f94b08d69a4e351546b1cda88753e004f735687e261cac4a7f5218db6c0fd0dbe3f96f9dd5116f6bbccdb5ef7b62a22aaf753e6250c1e0fbbf564c62cd7c0d9d62098a076cebd0522d44c1369f08b1163ddb03ee5255be5fb6b31b1f72140a8364372b582d1e49c792d2d6f3c8f92c9a2b3b81d27a72259ab7b46f59eedc652571964661ffa27a91b63ae11d8c1063153bfddb82b4018ce0b3ccb21299fa3d87a00fb0cd606dd18d2f71eb780e5bee895d3fb683df5fe0966cb13469a75231ab9b11d900ec376fa5273a0d9197fa4e9cfb0785cee44bbabbabd301fe5516a6ba1d7d32cab3a859d1cd8fd49e3b21da4359432f358b17f1928416dc5a239590954c8eb398396caffe4472179febd93f003763912ae034bebeef9f35d52666b8ddd703d5f656c8cd59c755a96bfee0edcf906e7d7a4589182288a3b671d1074aa30383f647945ac73b9268fed79d44419fb19afa58a689a6e12cbed163a6b812c338e48b06efed887074f4d9030a3cbf2de4844820f8a3867d3c00f8871be4c9566887639c012fe9b6174befcc557a32235bc854ff0f57845d6c405f1d1e3e1aae5e1ed3cd9901acd1385d84866462bc1d4c31b5a27c5fcbb5a416c6c82d78f4cbe0f175bedcab686c0f93faf1c7f3c125144404833558e2bd6ec9670a4b62166134ae3ebfe74d1720c22576d25caed568d6661648819bd5c14935f0f4ad78744ce8831fbbea3d39d403aeabbc4481cca7457cbf875b7d2133f7aa7c806fd8883e3988554a428d8df040d8984b32e9b5622980d0a4dd488c04320d9dedc289b636fe6b56b4ef2abf52bf445c929211a08ba3bd4e0fda381dd16633dc7f892d6a3abdcc6b1a82cffa46e3464a5e44ffc9276e5af8b192bab13a07d62418d5b8c1170d5c91f75060d529e32246bcef67740bf30dcba57b5ce28fb94e906f0cfec0692be49e02f34df1e997934c9a137a51c8e4cf6c92621d12138bbc9a6a3a01d06cee745607b29c523e0a085b57c53f47d64977b52dc9cf28bd6250fc5202ef138314a8133e0791a02eb9a5664e4b789a31f6bd02fbe900321cc8126775a0460328fdecfdfd3d757de0228927339b750784f78771f0028bb5d69a3845c7cfe462f36de8dc297852f5b78c59aaf773537025b0c949ef218f4a5764c38886560b72324f7124696657ba391d7aae1f0585b10cee437a80afe12cd395180aac6fd021557b5854f928006b052ffb4fec18948bb7e76d2e78d676007b9c9bcb502585b40c39722f83316ab8717f26c339fc8be0797f38c77f34751c71c3a601ebfe468a5aaea1bd33a0ebb2ce574ad356a3b945842b89e736f5a4cab23be90b82600fd21fdf9f86069771fdb47cd118f4e60e6362ba743f263d9f89e61684828b900f3dbbb9623987ffef9cd7a447288c8d4432d25135b9e6b5e73b3f83c9d00104bfe6f1982717ce1c3f2fe50650fe3e9d3c7e431944fdfe78de62353f4d6dc2c77aeebbf9e0f64ca13b7ac9c2e1823afad1d3887541f045fadea095ea3790ce6972df755c4ab80e670d34b36d2dbed95f1fc7c99c4de8ef3abcd66a2c44337998c2b6d4837efe6d91faf65e2790317cf50c0b27672b7634129cb9e67aeda37665c1543feb96ba97dc3266b3ca611f61864aa806d2805ef926c8815a6bba072879ec549a5300187d5f5762964c0258ee85143349209486dec62562b1f3eafe5e5d65fdbb52f2e452a79f5a4ea9c21bd1d038f57047b26efdd324c717784d1cc2878fad672fae7ea5a22ac611fc2afad9a7a911f6a71ee81eab106bb2bedd470ea805d4a50d59cac084ceb10db1bde2a93e0b2e162287755bfefe7474312097f15d444778664118ba053ff045a55fdfe504cd2ec5f8aec595916102dfca7aa2bca8b9de2f2f5c242dbae36f47ff0f542aba57414c2884dad953962df28e6e7f7ff30c0e3e06cf385b8d501bdfc2bdce24cab2fc195f4423013bada4141560324a7d40b9f859f7ce6ea646fbed8d1129f3855e1d7102a71e91105315de33556c7139c54057ccfebb06eabff0d3ec2c34ad857e6195ba34be8b4105f7ac91fb7b2528e2f0da0142c97de3bcb84d72e72a13f6d25380a8fa2721021e8b687b88af559b1f4d85e72524bb10e376d3fbb8ed75db386ee9a5068d4f281268c5fc9cc40f685ec80839d1d5776dbf712faafd63c37ad4f85c0d77b604eea818f80c09e46f438c1d715f1b390361c0a1a10616bd4593808752808ab42a7c77eb249f598aa380e0e86adeab3ade30884eb746212d430f0959b8c9a6604356e384ee874599818dab6efbff9a05127866de749793317347c5d0f967523e3dbb09603758072833b28fe311a72eef7e20f941acbf3b16a6c2b2ececb702d6bbdd3e9bbaefc79d0ac50b44fc19bf9e0b0005b26cf69dd960c91ae47884e84629370753413d5c10c4de9c725afe07c0fe5cb9a3cc3c3d490fe4cd3f14b7b33d532e7153c9068f04ac2b66366c324ea58477b9eed79c65a07b8ff793d02c862cf1a51bc7464dc30d38979f3583f33b1e336e8a634349340212e048924d1bd87d4978c5bfa864c12cd206798e1850ec176d1cd0a274f369a6c7f45418215f03233ea728aefb61bd6b386917b7f388387779357840522632362eb7dfd1e4e4c11da426dc5a889815696a206f36a17fd1372e44cda313976a351036b2e7574a6dba369f2e6954fc342dc6e52ad57489ca522d6dec268ef23c2d151e66bd537e392a17c085a17c0eb7f067cbd71082bc9935594e3274990f1d73bfd65383b697025a485ed5ac8fd684a3a6772204cf0aacb31b2f662756a8418dc6032ec81ef00492ec39f7d5fa1b44685ed9209e600510a02d64e00907f8e4a0c8a085b02a393a5490985e3c546964e9a6287b0ea47130616f636dcab99c26eeda8e099ab719f1fcf8493d77de48838a5e74673f1d4b664316ba3235f6871b6cd543236f12d79bf8094819ac61477612ef025e1bb3bbe76296e6a49ddff1fd123ac163b777a75ffa76ceb5d0ac08449dff341a2a52d07e3e39ffcbde10e47e107c904305d5b4bd0bff17f08037842c40a24b2dcfb971cd0a5cd564091041df39903b54802637d2e7ca09700e7128066509b77e0d23e9f12c294f4d6988bf39809f4ea7e1d91ea2acc2ccfa4427a78a63498e84e62915d37eeb5bd530b5ee7f652a5245b118ae936fabd1f037324284a027f2f16caf289c6d2460799f71dcccfca28fa396cc39c06894f42a53974dbb35a7577f6e3644ca0f134c2d985d6d8c9ee615bf59075fd4482b7c03f88ddac298081b6f7b600b9032a2c577f94ec3fdd39f2f7378493a7586bae736d9aed23ef14ec7064babb91cfd3060c02e0cc078b2a5b12bf02a5a5d23b47c283148371d720007fb5d6b9865bc3d10f5cf3b847a2e6b6378d3ed7707a927502f0fae95fbf2e5af6944500c2f23b8a726dd6304c5f43754a3357b0ff99fc54a74b6203f65f881adc06b32d10aa3c97508029e46f49de98b4724ee6be69db87c76ac1a90d891bacb8c30d45b6900b0bd2fa2d33d26e7fb8494000248433e4620dc864c60822753551da08b45e1824452211b48434092bec3e52da4c3eb6b1ff1cc44e8e6aee3c10bfcef5fc3a55552a5fca3d800f73c31508ef6e54144b17a583bc3202ec157ac732bb2fb1e89e53ba14f926ad73d207526f7587672e707d2645314658fb6f345717e0961889df615edc4a33a37c044b287ff512dba9ef2dece636e08ed68f7abf2cb961b91ad8a3b09bd9021e38bf93685a00eeb31cf36c5b7f0281d5a93dab2c20dab89a41804b82b3f460d718704817063c7be8bf0d0bc265514e9e725541f1b0e66f8b8c87bd244cad0ce869bef3c02edec0713a1cd4a5d8965f25d05e5559d6a700a5190c7ee1efab4ab46e0dfc40f44c4d5c9af3c8eafd79b74661d88a4d9e4badc34fb0db72aa57f31675d6ae365f6bf7a70b1acc2aefbbf14770b397fb5ede40e25e2d59b260332cadef65da93d9977973886f51b84286db60a7e7a1c5b717b1774205aa75f0499f7dbd680436cc959b41ba2fe9be0c96bd6aa9402486274b6114ee85b1eda5b909aabf8dcfd2785338d634699d21cb042f92425258722a7ed63fef5c3f65ac7dc005e213d032b1073e5ebd23d2d04b41f8e0afd0122ce823dc8f561a07c757a56e59dc358409679e75e71a409f99bbb8e5a59537347ec4b2ff978edf3c7e03e96d8dc88def629ba7c596f846b5dc1cf6a7f7420815ffbda6e5159a3bd01214fb6cbf4a92bfa2d262d314afdf236b3af532eae93c5a1f95b9561dac76de27d01a0993336ed26cb889c61b0aa7ac13e9b0e655f537b0e2016d158eb941a87c8a25e1f8123bd64d9e876d6857d413c02c11b7269d0265743098c346718b9562db0d32b61782d2215b9268219312fd9580547687188a1d71a10894d4bb26df889b34b4b9f55d3d60f3a4e8d8210a54aa1901705debd388b6d10d40ac81727c26ca625dac195e8a863ee6032a27619a186b2c3db1041be5cb9c086258dd0a51113528b1883f6d5892693d0ef63b561b080c044c0c36cc0fcda602efd41c484b31ccbeccc7b9a1a5bfcb7d563e0b536aaf00f992272c071c2c1fb751f77ac13324507dec14125403338cc7618bbbcc44dbd4cbca0bbba8c312f36afe6a38e7b1ca9a22a36a25d71cc0f32a4d5ac3b072ff9fba94ff52057f3520f2c26037778f124e7207413887e1357d5bf7c1f1dc23fa944149a6502d1ba69543e3578cb25b5d5a4fdbd7ccc09019a3d98e778338d411142b5b5d217221aeedee72640e5553421b5ba1d08b39ebbc2fb80aaf676c923340ed251b5b414a59115769108a48fd42b05ff7c90f1c2c6e1f379a818f0604f51b034a31e106ce8ec834983af2a0cd6033f36416287c168fdb9116cf65120224111cdc141b11df0cdb6468ee22279bad2863213b5b0b6baaf3c1d9712b1977c4bfe685e5caca8be0672e313f66dce6edced4f97bb25a53aa41ef81cfc99864e24108d13e494cd93ae4b01a14ca286ff63d3e538febf234a54facd8be5eadde0868f1401b8f2c2d171359c8d74eb71ae71b4b800181ade08124e771b51d2147bf5c3cf418c482fcd6357773fa539e7fff238d7c8fc7578b0ab52e9388bf5d540a7647c6ddcbc2371aa7cf1b2a466ea572982e3b84fed07ae2c3b25a66a387f326d6f47bc80e0300318c9ac52348e8ac0d7b3c05345cc2447c1c98319964286c453a5bc9c190706d1df47862b425bce8ef58f85ae5086f5cb4bba49b6bd93c6a55a54c9960dab5f1f67fcf236cceb5a4464b2caf64b302fe169e3092f7649a5e1246d731a5cc6664e0312a4d81c88c5dce96be1b5c9c22d75eb9937bd9b8830ee11084c76777f84ff6ff4021c72520890944706ea0df1653382931f60a18c8da12884513a3956d882c1f16920662f173ea93398631b0665caa55806abd2a228ac6cf9c74dfc51919fcf178df83530536ef84c89c65fad8abd0689220aed0dc5d8eb7e32a4a8a360ed42f78c0c23dc5cceecd526fe08cf6ee273bfd4e304fa7051d0377e4f3c5d3a3e7f110bb4996cbb8794dc0aee6709f8a7190e3cfb47011dc84976d3acb801c5dc280cee633be4f84f3dceab23f7c4be1a684ae0cd039bef5cd8666bb0dc68aafd7c46742df4141daf184a5ffc173d23804619594e0a160789d3b982e0799366dfd186512861e2f3d46e9b24d66c64543a739e4b7aadbc32e737edb12b8102ce57db28802109b15ef6e8dbc53f0a97b752fc0db186753b0cc36e0969f2997be58eb7603f20a8880dff4daec6d8637969ad07192708852e3b97e4b4b9be6ea9ca05cfb571250f26c8a6dc29d73db3aa59dc891f07fe4c448c250b72d837c84d6f2f6c34532f4f688f41d36fb7096c682c13d54607ac8571ded49a833400e40dc0dd8a092aa8967a9294fc124a1bf23c6a227c8231c7444ce719f42180f2f920ea9708fd68adeff203f360fe2eff3000f7f57354dbd329c2040506af556f866387e90cbf5d46817c37c6b509539d189d7d3d63daadab7aa015eea15b82944814751eeb052cdbc524bb9495132416054f744bec1a995b7bfc4fa695418d6aefd4a389725ebb30c6d9b6419997be22b519a98f051c2f77403d1991668d23f5df3841771247da2634045399f2bcfab3b4d7151e30ea16bf0c50f8368af21fb16277de72bf0635702f1dcf3c3918ab33609820652c50b6dc9c2a2e06e62bcae42ce0f6f82551538e45e5394aa30b81a1c768e976281b0e94c651a8c7923d40ccf12216d72526df1105187e8d4b31cf7db03c6bc8252144f639fbc8d37d038df895d89d618f5c8e15257a3d822f68a1e5ee52e6e376d8741316450493f9dd2fb42f627e834bef34b0b1fbabf676bfe4430467527a0f811c34602282f6f22a44e638fdc8866a0c7b7ca7313c75af69ae73c39aa492e6891d7c333adf7cad522fee72513d1b6837ba0b225d529310d932a8d73ad1ce599836d28a0b2b06f6ddf46318c1a316bb04327c692139d8aa5944d2cc7f834cbcce403ddeac3b87e14829d5ff397dcb39fe6df5491f61cbc33fdca82991ae4aa88625e912fa83cde137298bb95b63045a73ae1e5e940fd36517f87b07373cc7ac70663b8259b1d25600367a2203dbfe008a96fd7198e5bdcfb539bd2506aa27d29f34624f08e8495200a48571feb2a2e638d92300692be40b85769cde99c1f4198d6fe3cc54275bd9ace51b528f655d7e1bd8c89d18ed3a72e0db36ac9396d2c795c1342502f02c8eecea49b62f236537dbd7f01cd01f51a2b21e24af383cabd1efaac4d0112f4e89531b0242d2da47386fbae3d43f6d60c6a1ec02da045befed71ef2e57dac2e2db5bb3a7025ef42058750fb2b24344be751ae7f8fadc9e0f720d8f7240b56e0ce2b4e3872ef02935019b8904b18b187d645c9c44a4942aee2910e070dcb63d57625f769d4aa52249c9870c92b3d770f101561411a87b31a3f436ca2fe59a6bd0081881d4d817eed18dbcfd9a140939822663e1240b9f7ef70d854e922cf2d43a0c973fed7517853ce2017b1ce9c2cd7fb87f73d81f2ded4894c25d8d862afb60f7eb043381e3807d00705f3a6e945e25213a638f86d1d3f60b81dd13cef3ba508028a40a7c0f54c93db886dac57efff473131654313e7ca80a5f8086d726bdd2724d9b7fc541e16cad1b132f45e6ecdef9a909e4117c35bacf9403c4a6434ab5b3b4d5196a3a2e75477f538535b483298c6ee8e44d43e528faa23b6d5d27f724ba46079a48dcd42d511b291fa0a9ffb9279c227b9cf48e6eb216d407c5d0bcfb7e49df23200f972bf208162dca9dcf0f01c4337d8be9d4de972622cacd38b215b1d6b9c7c16029b510852d5c86de8cc84cac74e50068a0ecd5d5d2eb6357be782bca937df6557f041f29715e5c9bd80dbc456f1a365fc51b316a4d8401255f0477f55b8e534959d97a3bd557ede29e1131413a72d80e79804dd288320383e71ef0129437e3a94ef56172ef6561b2f136c552738cc610eb5837fc8b4744f20cad6867413beca51a4c1c9d9a0a92c5e0c0073db901aec45733870b781e990bdb93ad364066f90377ce1fb805e2dceb350f140513736d592b4bd54b99fd24123982c90f19737251cd5f5e07f4c4e56b054d377368a459068e842df04a144515a4da1b159cd88b502cf93bb89c0d74ce6dad7626f1841e8237afbf6d29edbe3b1c9ea153b54ade9d9dcb41b4e010783d760310defc58b3496f4a0be33f95864cd5754480d601cbab8122ba1e1359e7d6b1a69ea2a5236a76f8224d20684ffe25779c40a292da68d505816eb1961af0cf22d65ee7a4db636eb46b010aafc974c82c5818c4ab87fbb5205d7f296367a23826cc62db831571beeb228e5d94d03345c1b20ca60cf39c8a4f06c6a1659d8f0bc290677187ac4026d3007a31efbd30c6358467747fd8f88ccd6e288faf22b100bed925f0c1455c6b1ca46370dd5d00cbeb39ecf4978668acc328d7db37efd5e9dcccb01ebf767fd05638bd637e0905aa7e202d6863fbcbef1e7e8e6c9b0fd005d778fdb95d43cd08a6f1e25beca22645af9ded3e4a1c67589215d85c3df9b64b31d8448094ba90324ad8d3cc21ca488587f1aed794d96aee06c153f27abcfc75a67fcee07756ad7561efb13c65705ae2b4b96bbdcd3d9eb4fc361d81b78a4f8244e3b2f66832f4a43372fbb5385250dbbb2fb30422752ddce54ff1a6d8a146a88bc410886294543d6550d80b9e4b38a8dde812da1af1e1854456f512f963775403e7859c3775ecc3ba023189bc66831113b3f241864307f28846bf451bb67baceead8aa8601492a88311b188fb11b2778046832eb498e9acb76d38afe4f3a9806d974fa7cc1d47540ec451518b71043e46f1225b09e0816d6b80935bab3bb98bb39c45d85cc568cad74988628d0dc67183b09afafeb59106b54af96bf9c3882c74eaa92e26fb458cf4f92c0b64f3ea6b06130fdda4a8e453fb7ff9f36626d2d8563ffcb368f77f4b363af67c741c7b49baeb95733284c34709f5eeab6643ddf13bfbe961ad144681266a177e90882b996b42b5ee042cc481f5aaceb5697a642b67d010b1ab12068f9ad669be6421e6458b29dce8359ec07e48d069383ed032a3aa7073fbb18acff8f095f657199e95958030be40d3e92a6aba4ad25c0235be29f9d025a0e41105ad77ba75ae255037e5aa1829bf09055b161f43dccfb0ef5ab65eb3bb18523ae398b11f91543db29bc4d6e9191d03b6506081279d119865c15cd3e1dabc1eaf77a829006e4617764d072f877584cbaf5e321b7b0e7daaecc5d51bfcc0c1770627410adee8ee20108cf0abb60cbc246b4f3362fc6a6693c609dee3a432e65e759b6ba7fd29a30a16b8598d63ed143438369c86b284e5b44145b5a56b883de2dbf1fd921de6ce592478353df56c6a0f4165bf5de1bf00229027ebd5f3b3f6b8e592beab3d45696381c08a8ce912d69df14b6e4c94128fb20eecd56f6f3515a2b4822f2d0243a6323685dda8027b13009bd0cba1da1472e42cf1f62c6e9699f9411484de2d4f1a138eddc9daf4a4e8fead441272b0ab8e48571d120ca92a3fc1f27128de8d5738afd9a8a443462a1605b1e5b588e880c0cc9d19e759916e0d0fa6cb5fd279846388d9a5e113bdc6f99ca696b01ad9103941d8b3e2f0bc1fa90014942b8d399d0dd0534bf2c3c485aae93712f30be016e76790b2d3c2581b3a1c3f32546f143030256fb91ece1d6915809c51ddefe809fc596afbd19412d44ee3805d2ac44e7b5f7972b5cd16305bebe0ad40a24b0b7f6940d8165d59652cc72acad1576af96d896e7dac5d883a93a1407994dac96cce25179afc0ad66abe91c84cb090bb6a120a0a091cd12cc3369635b9a422aa0812472f3584fb2e1a0aa56704a123c983312c93c81c761095a7e7cb561012cc5a02792b6d3d1f1b798aab39c60579455f6c970365f7e9649408b375e43bb44ec19fde07fcc931be55113d056ff072d8f24e790756c4befffc43746ab58db816b293e526b06f09ca1ca8b115358d93c48c8b6d5481153fa95da4ca5aa6d814bea08f8b1077700c12dbddf4578d413a4d77e23f05324d277758ec2bdeb6d7db5ec9089e9f2b6718f1236ec2e02e0e1e5c49d02f505d032ca87fc20ffd7ba02f31c4c8dd40243af034adbb3ca23fc4d7159dcb40fb539eae04f7973ba4d88e373884155a770e5e7996f1ad7e0a6ad9a2b7b36c9cb7983a56ace0367d319ae34620db8e58a685129ee43e0e3fefa7bef658298be79fc4d1bdefe76913fbe4379354c10af772353cb08a87663e71765b0e6791cfafeae96ff0baf5b1c3c407136baf0589eef60e0d7503fdaaba96892b45a1f574395ebf1333c9b40d1fcd6fa7f611bf2fe085fa179b9042e962342f1c36bd543a6b89e9481b80b6e6815f2e0f6c1be9acaae3f7d57ef3e11271d7ffe4d450691f14b5dd614ffbd3627f5e5c279633ea8c1b1e91c40d9e9be7d71b0d632f5281d672162cd0eb85343f19926e1bb138f540632564e4f37b8fd565364ce876d1aacfbc6ac5c20408aa655700d06d22867c5030cac67da53cc1a8d0126c529eec9c6dd0d9086299179bd92c088f74b66ea2e7ab7f6faa1a5225b32846fa9a5af95999265eefc2e5d9dba289d5fd2e8d2bec699462cfb6e45c7f55abbb394ed460be6ebfcd8a0e6992d52aaf70056314b45045a42de992129d2bcf5efac8dda575c28adc7063c497374a39771e0ed39df0a0a8f250ef76e0c228a7ff387505b6520b22498b74bf08969780830279b35cab2a4dcbd88569c37bbe245bb357a12a8c157aeb2c05c7f8398a52babd8210678efba46fb8e3eb83b736139874fbf9171a7cecf4878367b398dd2a759be59a08390fc3c8f1b9a27b4557d93fd5a6b75db33c0094244b88853a12506c8531c0b522ce3dad8b70f8d8e2638f659a18cd2a9c0a2277c3e6f124378de9e445bbac882cdfc072c1e5eff537b09f0c4627ac10fb8353c97632e7f1c751e8c2498a2b0d317778b1611303597a136c76c1d2f4c4b4d62f6992227d0c967532a4e904ec0b8a8e6901c766318b3c4f7598ab1f9414ea6256e01d6d2808736a4abef4ec862948d2312270d22d431d5f5bde419df8cd830324635201d985ceefd8b1f635fe6b1efe90acbc84eda7a6f83e1b7c1bceae8820de12fc4d1ab4010d98dc5b9c3b17371fa3ff9f9dca7487e85a0bb3b09d5a2b3cedb8517e5d01d90a3e90f9e9f9d1acc7f20c12dc214a7cdd72dbdcc9d6c1de368039efa67be16d1f3e9e63116c1de288a16e59baa1369be4323540015175b9eaf9dbf270c97b5d974ac91096dc3da7c4a79d671f84864635ec811295c558ab20a00509cbe716a3d00a24e501afca437a2b30450902127880af5477c4916beaea9fabc98388853ec242b2edc96afed2fb1979b33bbedbc34247788f5157f1e77bab1078475493bf7c841ac016e6e1cedfc6c4c6a0f8f127611c15a21cd2f887d6963174d9f2267ed400e39179b94a15237cf86b43ee1dca66b7cf48b396c3207364c2e033292f24f3c8c289e45be16f3b8dad7cc4b15ce57f4d926d94b49c13cb1391235d69fc5b2bbee4fd629d8f099556aa18f72278bdaea53f4dd976b47e621a37bd1069fa961629dce8bacd6baab8204387f346ea54ade24e4cf972693493b3728dd54dff0f4c7baf20e0ee2cf13545a38ff854f0d5160a00df408d74cd275d31f79175142d8a5698f44b54f67d6e74edd15f941caf1327097e6909433b8f4becd6982eefad877c2e2cc5dad50fda59adaf5b5e3d563383063b78f79456f73261a0d3383098d5fb29424b4664e3ea00c7db4f44140c2c3ba538e75a8e53a4356b010a749e037d63d1d318fb7ce4fb0d2d90344636ec33cb3320296e8dcfd58d9224099667dc5d71b2c7489bee533b78961dc21380c387ba1b54184e7a917db6cb3135bf6f588b5a7bf05c7711f870f94efefbebf9950dbbc59efca083694914b8afef34afb25c20c88ec62cbb2040cb2043d9ebb27f91fdd216be95da060a5d5837998f2a7f089f64708fba2586d65f5784a60042721b9bdb385d987ac6830c9a19857690bad33c0f2c45a2038856646570f1a955090ecf3cfb408cd5aafe729e34389340f696789c31c9c1db8d8812a986b59edb8390d7bffc0305873ae4ab1f1b08c09285113bdd8329406d2231f66ac2fbb79399cc1d9fde65589376e8ec44fdcfcf24a62a7e35239ed95de1bc5810b0148d195a3e5c0544867fb412c27170628e7f6baa704ed3e3cc2237174a7b5a9d0f67776008bdd67ce779cf43616db3bf3b1fb1c582a05e63f8f4801f3deb9f1aa1ab3e1b0894b9a32b8666d9333727679452f5076d44aad672c7bcd4eb736dd6670abdebf2a25521e4870b13c5bc1e150410676855f77e4d1ac25315d367abb6fec50a00d0336c3e73f689adc6d655385f94677dc0916cded0b1c20a3c3414016a6255d7fc3db70639582600c2ccaadaa26f0c88c2efe67624a0a544ab90937235046b3fd03ea199339fc28986cc8dfc48335accaa39c1ce78f8563e13666c97090db16691e3930dd0291c0b54d6646260f8525dd24b9db7f8463856f5db381240017b2c30b530d80c3701e62c4ae1492bf3fae5909a3f26ec4f477566320e4ac4829848f48ea9d01289c4fed4388b457f22d0d2a41031f5bb3a3d44c983e284db8c5e704345310b9865b0a9ae2a730e95da7646ae797a43b5a98a34db30962d696d6186d8843bd3724cbd7c8949c0156fc8407861392552f22820b658e622c62526d614a8ca11e6bc6e98fc83a03afab90253791ccc8ab076305df040390c32742342ca37bf1478afb365f7f455c7ef1f45e320404b8ef71deeaa801c498a8797193c4475e3190669e4a6df98cc53b641c0d8efbb3ad907c4a57da9fd3b69f2a3c6bb36cdbd120f4e22a001d630c010f1333019574c662d8a7183b0b108c7df9be21ae462452dd49d94f12adb560b4c71ae7e182b655f13403c013900e717ee4fdaa3bf6da07eb935e348cfa052ff60c3668431756d6488be434c00b3c75a6eeb6290642d802b04719bc6bb959c1f3feec3a84684f0af79d209e34f97e04121dcdc0bfb492facaa5b1dee0aea54c93b7ef3f982051dfa0345326f6ed6aeee34221b2c74cd9e4168246edcd54267a27a5087f50f8450d80404fa468d72053c159a19a8bb6a3aeedaf333648ee82fbf79f091f0539dc594c89761d307bb2114cf07b10389299a9d104ab5231540302f2349ea3f069e3c1faf887c23618611f681ee888fe82fb8d420bfa854159839743814d3f5b8a8a4a2ec13ffcf0fcd2eed61344b95f76a8c6ce91818c6a79e7ffbfbe4ec2eed7f1662ba50876e09513d23a3f3311045f76f39e646b00fb05cf544cb223bf5dd3c3df380a9051adf1b859cbd62d9aa900e3866578ef84c2a984e26d628122379626a3ac74261df75a934fbe0c8393dc9eefdea228f0dcbe89878b9c76b7acfc109e4d59a985c739684f07d9d25c5698ebee5e47fbc6e4fea2bee7cf55f2b2cbf3e059a0466e62f6f66a497e0b07ab37871022f7b91487a4b911847a0f11c73acfdeceb12343ea30298a6cb4924190b0a11ca8b506df13f5580f5474aeb7a30696f23f0de2ed9ae460c969a3759dd7ab900d9d64831e739454c21b416da94724ddea316c4117217dc4308784e91f78cf5b2bc1804c43863304431fa2bdf558c38049e97fcdd71d0c75263576673f9d47b36c346c9a0857f7103151f191ead7a8b88cb0f7206635ba3ab66e4aa1e86a9ac6aa37eb75095296931e83e2a8f2c443ff560b519548f843f4e0350871e3a65b3b853fc4d8b4a7b72be8f55f9205f9e58792b93a05adae750d8a38a6ce9e60e6b57b51b5d0100011f8cc60c354fa639c878248d5b06b751bd44cabda968a6024a4ec0d3864a203ae9a08c5e264f95516f4eb9b10324279f04e473ce0d94257458862c91f5bfc068333bf149d1189ddfffc2b2190efd4c5c5396e53665b009639d20827721d4f254346aad71378e1088721f3dc794be0d71b8b133c53ade163c90fd46a870b1a57837ae79e09152333583876495eccecfbd4c07299523066e533df032830e12cb12d78c33bc4256b1f0ac563608ac0e23e8cb6e493483d9bd7d8bb0d223101b10c2cc31f7f6f835a244134a054042593ffc01d6936857a5c4a0862b94aa75ada3e2286267990091719759aac9843c03431dc178ecb8a29701bde36a436ecc9fa4121acfcbd9ab8028d7b2471424cc873c0b685eac13276ecd9c776f1ff2e7d5ff39a8325cb94e7864302de61b8cb456040977879673cf9ef85f0f2cdb1381c909f4c2833c824703e3377861175f613d40d889a672e2162025a4fa92be80bafbd7c6e59c0cf97e3a37135ebb64657b93c50fd9ef90385e98052818e2bd96a1c95a5d495ed831cbbb8cde58201bf42479f48f7603b5aa56dbcdeb0b304a25b81e220a6a519d6755996cd489fa87ace5b7f073b08f824d82a43a738fb2b86eb046977edfe1c055b233504c56cd96fda2e40980b5400584df9f794af86c8c19a738cfee0c9846832f7f524f8a107c5ae829b6a7e46ce786239725d6175fe37907b8e76396d66df977ae8d1efdb26080e6985bf4630a907709f0a921c16619acef27d074aebb985c5457e3a5e1f5b8c0d10b687a2bcf5c1722fe0671f955bbc97ccfd31c0b5625ab1bdae5ea6d8f6b46df0fe15caec4cf14b8c030129fb965c429605fb6fbe1953594e050f3e12856da1c4949e7b7a70183a6b812787d05be306c8a088ade7bf3315ff00aef2d8cfaa4b5633392c7ee4066ecb92e1c8a17c72f807999718a8b8b52c0ca5d55c58c773e0cd660d6cc4c7cf404ac35cdc679c2187e2ac25f2a660b1ce634f8e85bb75c075534a934eb2b16522e42f38ced45caf4d22993a0c4fd70dc9d9a294eb20b86fbe99b650efe69df2057347c465da5baaf61c958a70a44e42b4d679c36bb8b68aae7e1a12c5417ce75fb809413f92ec9511b2dfa374be635e4f5d6df5806e4f4764e10c7a96850f916fbd75a64ed25a6c25989b2f079bddbe4c62dcdd17d8404933ba26a8560bbf7944ae3c95eab378c59bf3c658e8bb2781851d8a5b9a48982a82ab1200b13dba0b3b6b2b1a163b33ec49a817a374b04bc15770391fb37afe6b89e1b641a3665355c0f8123facaaa6c4aac43e5bdc60c808aafc0fe0eb6c174417d5b04cc212449f3b70bec2ec06bed8d581f8db55f5cff90253c0c1762706d26cd05fe48e72d52b836fe82e347a5514dd36d30e98acd47106a30df379df18dd6aea91740009587d47a215a5354709a53bf5e63b7bdc8d13538e4e61850ca2084f071e560f74a7343fcd20f7c4959abdd1f3d7727c4c1e38855ed5ac7e627fa30705cc5580902b8fff55a3f17d174d0da7abf85c89ad7f96c376d5fe7ed50874162297841ca885c62f4eccc5507812512cbee9da7e6a27c14eecae234f2aac77e6f9b6a1b2bea7013edbaf1adcd615bc5d923a4f1f66e7a1f35bc97aed343f1ade358171cbb8e0e5d261dcd2265e117a176391bca41a4041a52c7408238aac8d6f15da57648b5b8c18d8fd63974fb176771dd0e838eedb4f484f2e8e22349832279398c6b228addc837763b24411fcaaaf7cb47c2788730ebbb6fac3c941d0b0f1f6ba6b14bf268620bf7cc76de8314f66d8ab3088e7795c5fb15ecb83d06e7955b6bfd861d1d3651b1503b5c55b01157413ccd718527f2eecee98133e43edcedd8f449ebf0aafb1483ddd222750ef78817782ebb083d9eb6bbd97f528f9dcf89bd1ac4955ff3460473fae4ffb95c2fd5a4c5d7d49f1a44d34f48561a417a39548e38ad213cc52141fb68c70b81a11247bd1ea44d4ae26001967c2868e79f848abb4622738b2116af67a1a6b05af37ab6cd6898feecd1697a7f7dfa1f8da60a65c8c407dbff72c9a1fe54d3f3271d100f3587e4d0388ee25f04e325e643164c1e22460295a26983df85797386e1dfbc7de7107b29b4e7f88603e062fb4757cd3365af34d7e2c5b42d6d59d6111e78a7695901ce0a0e7deab926669331998b7ce34db09055b9a2c1d1c993491d9e50842059014388e7aaf25c6fa30c40e67295a13a95055a391d85f82f21d0f51799c4f1c0e7fa3d14e4fe54130684c363131125181fa90569fcf3a8e518ebbb55e0d87e0c95be648156dc3c7c4bacc9bb1cfbdbeb67990639677d7bc5655629b511f23b11e903097f6c60d544c179f97f3b60ad99e127364cfd2a48a69cd775044e509cf062c680c964840aafd604ac8145f1cd867d796f468ed525badf31c068d20703e4da872f5f40486574b21655a9a7d023e406c11de59aea3a56943c7b7b5cd67b391778eb6fa5037db4a8218ded83ab321711d5b4595203efdb1a15f98d5827ee9ce2483ded087d4d5339ab0a67ac36c8ae774cc48b695dd2df103e9b0a2bbf5e026e284f088defd392a9114749fbb818a5b551913afa97a00f1cfb3e5829f491251c2cb14ec70efd7d9d5677681a97ce202a3cd908c9619862b52f621ce2a40f76b772eb51c17308b14bd26d1809af8f873368a5d3ebbd3281571bca844d4d81139b1584dd43cd765363c5a04a1fa66a5d9f2172af7786efd09596e7a8dda4ed294351b5e162a4324cf8b84e76d1d65d49502eac443821fcb1ab4541df1ccc2c7e3e39e1cbf827e4c0ba7474f3ddfa762077692aad8d153e5ca5b2bb7f7e0e737b1f0d5684cbc8ec5d619e82be880e108febe26fe86dae24d9bd282664ccceda9983a5b04e0bf3a88d5872962e7d3585cec6c49326a77725fe781d6a3ee3643e1b17583267c401bfdae099755387d09cffcffa2b19842f3775c0ee107c5e93a39c98d2e3b9b27f3ec757b908f390f3f211a6abf7a2f986b94a670355167457392d646251f2781562576a8f7dea2b6a1636a0abac0c13a18ac28e5b1a3eeea597771f765f164a44a84c2db46f0fd19ab9c82fdf24285a858e36ab561a19fffd991143b9865e85184defdcd511cbbbc9b963d77acdcf79a0deae199c1e4c770e03f091e8db69942a0a2d973e1dc96b5aba703f1a1d9b77505e715d0208e0a29c462d6c7188872196f68b39001dc9743c9747fa688895fb14124509ad518124a0fb983cee7825257ab9af4ff0b750ff5db468c4227c8da72a16d9a64c16c8e2e0eaed47d70563280dc80e8a14ad98798521c367fbac79d8dfe83a2acb7f6c0f68f79f0633e2781d255223f9f5eaa536b8e4e931813286bf6ba645f4b5a5970175f70b7672170c16d16c8946eeb6bb895ece1e17c33876f52c99f3bdb8895bafc0193e479d07e65307917ecbbfd97507fa7802e3cd5721dd7bfeff669d1f71713582e59ccbf140faa093c38ae9c0a130ea7eb7607ed25ab664eead8a9c73cd20dff9515820ca3cc88eedc078f7cdaf3c62525b8eafc9b6afa07462ff921653dd9840e0e4d8954946352e9c3053b64c9428c448a226f2169da1377aacdf496368ccf4dd86fa2730649c55e2f6f75efb9ff0d855b61c17359c03b85070373e85fbb62a01ce52f5d3f5ab3b2a635a5ff0e1f41e7a3137efaf260db02a363afaf77b8506bfd5dd3f34aeab8b80bbcdd935019b29e5d9c0522687321835a194294895e94e10bb5731630d9b06b0ca9cd2e37db51e7682998f6d1ec97ae64d3a55a3b3c584b6845d6e65ee181a33ec4989a8edb693ede7ca911cb7e786cc833a6bd347f3c52d854ebace27bdf769283d726b511d9d36e82c048e762a649d085bdbdc63639544ceab394149133d6f7206b988c865032aba536ed0dc1b1b792a0ea2baebcf3a55cab41036a9d5a36ee98eefe3ad646a661da569e8860d272538b429f11afe3a82d56c13584124b79502062c00c2e0fe48f37b5ff1c1debc556817d22a66257c1c4883b7ab246fc1ff34badf960788a967ef1d31c3825f38b2626baa21795887076b6b68fd81df99d53661965055c49e15e60086de3685069b41f7efe7d9765d71f30d0eb0c011894bcbcca5d009821e669873cc19b67a7d2bff8b3a3afe6f0230c565c6c5944e4e22a601579dc4d753c618521d98ae162f25dd1edfdeffea5a4236372fd6ba9aa6015b95218f75a3bf7764d2a39859e19d885ef0296b3af2f89d55b5edade4fbb8da785848cb8715f8e203e29b8d84af35941547a9ee0ea4f37f3e7d99331d5c6e10bbc0470d068855ad1b8bfe9951e7aa04b53b480a70a56a5b055a78554a8af50ca11ccd6cdec5f5fc2709c538d81d4b381579886936c9be4fd0266a8ad1f178255ea11018d5d2256f75f33f793200d3bbb28909af97143b59895a48c75cd56f550b67f5f270d91880ff639f24933b7bba96eb1236013e95547dca06f341966fe5b6fdb7cb6662d893c256dc3a7658af2c53e538e4a2e3804104a8fda44c5ba7a98d6eaf949082d78711701773c5950668a75cad1c7f8a48a0110125b780eeb531d6bec3589f79aba435c8ccfdaf197d7b6a42207e829fefe5ea81bdd0ec90e4014131ba4cece2a70c6cafa3f0204f22d71dd101a827a6c7fb397043c43d5f7e5d574cef7462052e8e5f8e6109bc5ff521fcbda7707426afb54655bcc594198f808b3fa07d90bdce970971c61717d0abc0738b8d6d55561cd56899e9d052dbb99c150623f9b3bd5245c2c06e4535c05cb49af06db8a740d1f855ea808722aaaf6f27aac88565145411caae14a46b3b111dc5de44b4cd94141cea59136364a35528cd8cdb4f291a3b655dc12b5ed5b4f392b8fde17c57e5d65903a74e73499e36e0b0bc1e797ff1c959b0f0fd75986184764328925c1c661dc3f3a84785b2fd38e3307adca857ee306fb266b93b4df515a8318041e509b38d35f94fe10fedb095c4f04c1e5bdc77c3288ef7c5c29cd27c0cc28a8aa4d4db3464bdb5aae37c82b848ab948f673742fb0a174c06ff58f345a7a16094eae70f9ea424824b4bed784775edc78d7a6a659c600a2b0c8f812d926e9d4b2ab5aa149adc345d8980916cdb240c081a19d2a012db0bed1ebf5d9d93386358160a0e96033580c4f5671faea10a9383602c34cb9f9691d28dbf5c5c012c3bdddf06c466cc009f72d936dde0c0fdc13d4fc1f29cb27b06052c4ea4d8a7d17940a74a473621bf3f7254c9dd5b97e22acdc96b3b6ef7f2c3877d62111919a85dea1c4492a78b690121499bb6fffb8fdd90a3888dbe51946c4457f988e34283e58b21f961d0e493aa0a4b1a8a955ba322ef8d906f0709d159a0b054bb04e461cce30721ef3753fbc98eeb95f0754134424ee5cae3bae9cf90c2bf494be723c414a372ce9e66968c0b1d9f9468eac6d3719361561ca8abe0e84f85a6a821570fa331e3e28ad296fa0a3830f2d7aeaa23d78b11da8af46c2d64c603e69c8b4ddce052e5cdb99f0f3e26b53acfcea57330b4a611aa4b4eb56f09e937e7414a9a58b80cbb7919c66d774f0a2ba4ccd75f7019fc18d1d913f3dcf29fb5292ced694361cf5381ba6595b79921772f7243539e9a12d5e5a08eb51b078ee26a23c5961fe79772bd14764177a0f39a69dcde7d08d7463abe3d45f217d9f57b3dd61d773b66104433244c973c0f8883ad5bd9b532898adcf7b1df1a52b6ac2771a1de93545275cc4e427af90064bf3335d8a9514c711dab812cdd26af741ce0a5c6474a6e7a4d8f438bff8be8cf84ec110f8ac3cd2769e378cd1250f28ced318be1d08ac7dad346b8b61c0ab4c06868a244201139a9604ba37a5f3f2cb58a72013d48cf3aa5c25eb6a623620da979958e4bb3e32df4aa8106322773e0899ebda0a0355bbb41fbcc98cef2f38632886bc927e65cc80e88f4e258c2cdea5015ccbd35e0dbe38dd1c0693f2f2d740175e4abd77884afb8861a27db010f6021c5084361d14c284e544f60bfa2bc5b32bc3cfe0d51c12a256c2c5fd0414691e4fcd2db80ec1885e57c4ef97cd30b5ec5ae0c0beca130fcd89bc9f25e8216360a1fb7fe7b5125febf8710eaa6152934e6f83104e66f8829aa029acc0f00fc6b101551f567cdaa31fc4b33b04a03d4433b3d5fe6cf64b7f2d0d4d338e2b065c0fa3dae14314f2c5df6bfd8e7a0b4e21c1a4d505c4768c5edbc3e5645af4c245a02f4a13f6ab51271201e910c4266b39b9d46df218dfcb2b87aa92d662e32b561e54f766268abf77b915ed6baea9d365b5dfd368568f86f5ed8f729c92705980bfb72ce751b22331674ad988f40d9d24b2345f8bbb053d1f436d2122a41404a9e05c237a837493d58c1ebebaf3ab47b93d0f906165349ec15107fcd4910bf87cd50240734c22730c08545327452fcdf11fa781cc602f8cf97fab938561195c2a52fc373769f0065874b8bcedd55407d5ce853f257251ebd3b82355a72d3c16ac5d863dec93e78e1d0c439fd2f1166fdd4f2f97d0a383f154965762b90c8cedd7bdf05a336047cd650fad5aeea7a0374b584372471ce9ae2208539a5101bf599a71cdf683b6c91d4c6d17c38a8adb64b945e957599112b3055833ebb74976b57f46984a42a55d09085ee3028ebe8bb0fa2153905f92ef87f005eeab2a177e2d77e3ef093c7f8c06a31d7190889bd4a811bb86ebeb9e7d1dc5a36fcdd3a4051ebfcd904351c60ad0f846939401535fce93e00d6d84e1ed6d836171d9774f5b720f1452738d226daf0fcfbed57f2ba166f634f9943915bfeb41c7b56ba0128b32c4cec2e6a9fb40aabd84d3cce8b347902b1c22cd6482045176285517154cfdfea126639f6f14eee2518f0166fbbad8dfeb90bbccf569177b57bca288185ec3dc26ea728b87748b55a25b307aadf4ec6ad5c8dbbbad4abb54aeca118733a0bebb4747a9baae84bef658fc7180093252d561bf6c8043adf8368d3e700d67b4c11cecd63a4a450b04eecb947bd186cbbd742bf33b30628115852c7ef81113e36bbf586478216e8418ec9ab5963676225966dd46d9139d152355889c7ee3964ed58ae0d268e3d6e90051a2da35fdef90bac86cb263c80e83bf3190dd6cc4e7c32389a01ab3cf85049751b9e4a99c6923f1e1b3c1566d4016883a879f27141866b5108a672ba5e0117e7ed33a27dfdcc420bae0cb95abc1c2464b1ad1e7644005f2413e34e3209524eead03d78f44c72f8327e5b89095fe332a0e6361a3216ad58a7a324cc13987d7e934693777b54078ff2caf2d39d99d9af89a16367ab282adbbe3d88e13b9a58c9eca5932e1a10af1b114577dcadc3efffc48c8b6ba7583624783ef048d9bb1ad4b0dd8c356c067313fdaba326ab7cf9faddeccf56ecded31009f6008975171f0216746d7f60168393d28aed23982baf002a923f7c4e10d5336bc6558017ed77b5c86b14f86518d7875b99c51e5c2667ffc3b23b5b68a116b4436b5e58d42340f198d559769da13b01b5b38dcfe8771672e3b27d7f9055c916da0a5be89743c6d76787f9d9ce8c07e8bff7946a08a422805abbde91b5df509710df6353d55c698acd62f26222d0a3aaa4dd77a8de43e1c0bc00816dd16bc295d544cf3ee04a47b61bb6e002e35b4aa4818c3b76ff143ebfc06c1c3dccce6eb4ae27dfd6c4da87f36c147e3b6e3b7923235874e0d510aeb2669e40d32830f881ab6045b79ed10adca0afac1e057c00eb69460f6cf6c463243d5747bbb7314ff4c38b4b619050a0cf7a761eb7ffbeb3e943654cd238a7432c56e0c0d128a3b5994cdd7f117035eaf354b22e641ca6f1d28a0a273a19a25083b18d4129f170f66c83e3082c9d5c9af5ae32612aef1ca5653e3473ed40747d36ecb4a97719ff14707d85353822f8863c3d25dde571664c54f9e9aeba316e343f3fdcd5e5a08367e0ae0bcf0799abe9bd4205a5efa4c53963f680228409ceb69d811932ef58c76f27f52a1b86317b02c5d85685012c2c0d49193df1d4dd8a5edb4918a55602a703b547d5ee1b30ee728f10a058b9b81a6a5e80f569066f2b5af48bd297c06da6bf16f7f464734445efc4d05c24f84e2564d78315158382d7223427f95a7fefeb0ab87df5ca644308b763634aa07181b9cac803634d861c561a92c28686711dc568546aaf564a0ab1c8392a04def65ae5c696ab076f73a5cccb2893c240230036120bc006e8827c97a0d9850c2a2b4c76babd9a3d8559afafc1583ef07d6e4fed3975df28441a9f742169af5350719cdc00c7a1fed3dfa156a1bf064940a01aab3a0fae2a0aaa13274660b1adc73e57f8b73bbfc205cae8743247314c1ac09b096388a92e558c7c84fc36185306f04aecda41f18ba4c6fe3a7ad3096957ed23363ceb7a8670be3279b1ffd44c1b90550fdbf29ed9c2d15abc46422a9b1ae4b9e1a6dfb8d68d50e53e146973dbd33b0dd18ec678924488cc05d3f14bf7896d5d91767c7f60cdf6cd0cd8e24aee19531af807e09a0464884611255c7a1ada2ccb9240ea47e2733ef9d601859f46fd8d2a151f8f2cfa8de39173ec2389d1ba9000e939c34c98a87f76257716684ae5a4d2e14892fa9eccfccababe4e0c45245c473be2efb315b64c7a891c2d0ff579950b9b093cd440c7519ff95899d5a4f7b61d4be18f1bab43de286b8027b3e5108c8214e2d218245499b4017be190b637bb782156610d5f8d17ea12a6c1512dca89fbb63facce32b91a62a3e82d56719a0f1e2d043825dd22bfb8fb4a0ea9bd3a02a8b35ef62c805fbcd49fa852c631990970d834baf797dd5e21c2e85cb0e929333caef0ed30e22e26704b61c271d78ea1c523d2f756978156b07ee48179394754e546f03d2f12bdc7afa6e56116f8590d81548483eb29f1b79436a7a0cdb05cb779d7d7d0701901abd25c3efe4e73bff0b936a447e1c352007f8ba0e97a1aa0782b4b404c5cd93470f31a18fb5d6107b30bc258cdc803c01dde905d2afd9112d2ed69065b249078afc16e48d6de19f99a8e840b4068489e2a3a2738151f8a98b709c79d259cb2fc1c0ed0c2d2a53be07433d6cb99898c485109f32a4a2502d84e38fe5c20babd4a3a740f7d29e5e7976b6210b77e360a7f5866f84b64afa0c1549b0613b85fa53cc36d86c805dc8a25df0daa8358d3c1078f315fd9984567a6838178b13aa08b8dd66534b09df9957b0b340b9e96e0eede9507175eec8a5be49089b902f9845bed399cbbbb6d4775f2e795e195d2cbc81d4ec71114486162482231722148d21ff4cd010faebf97bf8c28b42e2af9ce5ba9f7dcb4f9f555755478dbda399e1a7c14bdedce8fabfaa9b0b20ff8dd3c590720a8875166ea5d45d93af956255bb08fb190d17b33415a6a2ffda8399e299b409cd4385eabfcb2ad1ae143e66cc34c56d86f1b07cd9c750412c85303fb5c2174252b6d8287529f90d8bedff04c3a151c4ad892ca37e13f502b9b8b6461c34b6a343c1ecfea9b43c02aef5400cc1487bd4c6cb96a989976e8cd2ef46f1e011fcd85070435328f98bb2fab9bc2abc90c0b5a2970ce2e4dbc07ddb98d821e4002fa2adc558b34e475eb222d72950c8c22d7e2e86fdb4d292e2f9b2950ffb0ae830a64fb66c60441878459693b32da3f5333a6a17114c73e6df39b6c8b37238ab52baecac84ef47c58d2c436c88ed6af907e62cb8241945bb34481ee286c492f197cd17794f048c7a447380cc6a74234cdab9d4e8584e09c19e3d68c478c86c99370c89d21bd8746f7c3cfef952009885c614a37f90fb0788d25ed82a34be320f5e8a1f8becd361298561e4d1646bc9bc42064d107eef4a71c97883462f65749b1a190b4f479f49d6e233dfb5614765b3afb013c4b8b3b23a9bc7975ed4e2849c95aa5acd7fe33f93a326fb79ef517bde81bab7fbb7febff6c313b0ea12fe2a1de2c72c03add94bdaa37283ea6cea3f820c7fbd58e1e2c35dd3e5f9d98736067d08e03b9ca2275001b7605e2380d31c129f88f37f45bc0fdeec705ce94f1499866c1a26df56e78c7d2995ef3777ad602dad04ccd30c839e281f1471b5cc57d89c0c868ef3bb40e2a7b6e1988b1348818b64c851bcf5e8444cb08861654c549ae045698e8687df09dadad8ff2ef5c10e5b7ae40a51d46ba75130486f5fdc4a71629d76367ca15d48da0965b2fbe1563c8d9dd80637980fc69b14d2e442e007dd5fb4db1fcc8d8f4d88689e2dde682996004ba46fc5400fc4384f354702ae42ad25b0fd7116225e9e47e4de2d178f54b082b8134be5594a401614816b2c7fa836ec7ca772963bcec0703ddb9765c1616064de2741a7e2747bfcf9af3f92c0048944fc0b28b29a29717f8f1ebe64cd93363e6e9e86aaed66898f52d9d3871c7fac55036cca6b0f6df3bb4bd6490a03f9a7e79be56156b61ea60f852d705a67aa8ee513ddbc742345d31a13164dfdcf172b026d9ba317eb1e37e4a9778faf17e1ad63814115fa4bb5af92c3d8714e3b18556ac7e133d9c120d98f2d33729adbcdce2d5d493c5e6a78b95501beddd6315cd0a8aa931147220c95e3ef7a7bcb8e328aa01a8344493f9c88ed7185f7bb4195be77018d21cdc439a34bd4e5da64b566eb996fbe89dbe62a913ebe3fd9667f41f69c0301bacd963081c69abb0219e4acac4710f60886614727d87c4eb47b9c8039db5614e3eeffa1154a646fdb8b8538afab05e89ad6b549e8349706050de0f8e1103d5b91224b2520ac964dba2edb15d021a63482b67d99619c5e0d4037d58af81858d0552ab9fe9588f038a35520cb9b4c7f7b451bbbc80d9198a376a68b5950afa25b1248c992eb7127b00b794bf36424066ed065cb1ce39afb2a70d6c72c0d1d861d149bbf0e417ac2e344c030f34872fdcb4af55f4fd8a0b0d077d46437416d9d4188c16fda87c8578d456f644c7fba6c4ee87c8bc4ea7f1a219395a9e7c9525bf05ef68ddf643332f0da246163511d0fb9d344b7b2869038cfe5ef1c66265674f30a7e7c04411405639979820823727d706481094e0407d42337bb0e06d6b39c700c76b0731269ce1f521386fbb1fa8e1dd9464170c01c7b81387798d36f7b453d18b134cc8f07b49721b79bf5e887f0bb4ef67d2059bd429476501d5586b93b0de500a12eaa5e48772e117c8f1e90133c2bf6bf5f0c062f36160573c2dd01baea54eccb6fa0a4144e5b9b437e45b883a5cf128b2943e35e4fdb54317450849a4db051f910de990bfc74e7dd8782052ad530575367accfe60cce0202b622f70f606d27ba2ddc1b38961881157976c6b3bc20eb95a654bf574d8dd073e477a07b915a5217bcaf9535123294a9dd96c6e87fbcd61fef8e5d02b669a649ee80cd6875b3e02fd0f2288322d3181f98c9185b76885bd1f3bb5026bef4b2bdc6b4886ab94d6e9afae58bbf1cc6ad4fb64a425e9bd2a34d60b1454d20a6930461018a1caf077f56075c00bdecaa24f8bb9441713fcb515c878828394da1537f4604287fce17c3c87822d0c521f4755f3060ea0df86607ff0ccaa99b18f41c9cb49ac61f78689d36506f1265c8c6a12c5597521bd9aa3b727c6ff3ff9014b01a9ac0e721b027344a080ca7dc1107533b4c63a369af1029da15998da9bf0bd9c6ea190cdfbf3a3563ae18bfe50674efd99eca62a3a85b84e55014a65068a6044a87d90c2cfa8c0cffa85bce656e4fcb7debb759774bf59ccc30bdf1b0667066c9ab62dc12950f7f93f2f5d6d23dd00ceeb224bc8c2680f0ccc58dce62abb97c506d574de3de8354fced07421aea040cc72be61ae3e4ab42e4265a29ed87a4d0c34848988cee607d94fc291fd2f3b53aef46b23baa3752dbac8b0f02bc7e196978343a49ef66a1d71b89e32a71b5a245ae10bb8241ca09d38484db8592231b6556163a073658d59edf09e98f8365159b93eeb9ff95935f983f35ff02a0a60f75ff6f61072adcbb81fc6d0c906b3095c66f3fbbb64360a8b2a13eca71dcecc3c58aa5c388a4e4cdfe13ab4b66bafdccd21b3b2636e62728760b459bad1ffb3230cc85e094520442f29b8b112a665a6d27b7373b53b35a000e1eb1c7734f67d9c3711a351cdc94f4b5bab3409630d561ae66b286f60fead50d081839adef7e54baf75101ba64f2c7a58f1293a5dcf176db2d9b26a818f2f2d033157a42a84e385ecf440ccb29e271873111552a555bc098a64cc3f495beefd9db2b31478ba6bf60f0f4f71c7df4aa2d0093519f5d0a6e624583b0a6acb29ffec2f61c28d1e697b766d512f4aa07717f5dbddbf26fd14ac921758a220b3d0a79fad94d3da06a10a62c8b3cd17de3c0cc9eb883fdf8a562694eb3f4570de8dbc41880c188e1ecd5bc0d1c58ef9040d0c1a4f36a3299fe06dde26c0d2a6256a5030abcd0a02a74ea4245291e4d1de5c5b739b1672b1a1ca9bd29cfdb83f224fb3ed61e2a12cfeea79e080f0301782edb8f265b7561198b0db3b7f8053b9e48b44d64b890c9953353a5b59cd8b81c6c6ce6e85c806d8843412814e2eea4c577a52fe4d2874c87d6876e71b62f2076d8f6fee2490e8e80b07b434a928df23686e8654367b3f5f874e6e1d893efff139ef7311ed7442e0f5ce2cf062dd70a6bed69083bf2e51ce9748fae7c922be3daea34873d500918bde43a51879b338c6df7942a79ab83e97b7fad67a2a045f4fb5072eff356a9f138b29a6edf8b4ef40c69f56426dae10aa503e99d2a9516ca90022a01937b1ebadac6e21f29630b9ad1310ef1782a8d7e64b57cc1269e55d733c47269088744e33f2aa8712558f1942257ee82dfad8bee9e47d43c8454aee6046adb134547b1e02073d512d83a5d0db4de0278e67c85709081f90cfcff6a93f859ff01e81b33e5071852efb790e9521a892ecec88e33653daf1a62ee8a2bd6cedab0a2ad484f9d80c4dfe981f13d13f73e4ba4861ca520bbecd14b2484880de7e81605c1366b2ee4b902b65ad463501ea151840428cb40ed8b76cc93a3f89e0215bb34bd6f0379a930db00424ab10793ccda3d4acd1ba9798c74be4e49da0cdb5440f75dfb13035b4d965cad57827e95c40e8454c470c7682ada969337987bdaf3c0312948ff2551bf5e739290e9551c3d72f134b56ae064511ca94c231ead695fc0356df855a98093c21179f288b5644bb3aaa1b7011b5186d996e9151dcab3e48b3aa8d924b13698b335798d3d90a3037b7d1ea9046566ecbfe6fc1dcf1712260aba2e19c7ed46806fe2a55065ea6c4c5fe89c95aec39075567ccd32ac67d382eb015be47d2dfb5d09e1cc2445a2d3766a92d1c28875fe4d339a4cedf91c8d53e21b3f4f7b758da054e202e42d923f709ff5beba8c08bbf75f5fc83b6dd39457c7db80c2980895707e72c30ba6c7a82f8b36146191a7e3da51b232c54f4083225847a1c6074e921bf01ead1a3ee0092a27fb8afdc519a96680e4d14ae6a1ad8b9a03bd263c650560823c8b1e7cd3064bf97d2e0b825f9d1973b0e7ae9dd7c4f34d0a8e2d401e9073d16b9e994ce0e75fc1bb4d978c11f12f236fdc58517a1ff47b8fb1abecf065cacb4034f52ab70deea99ddbef70647f789239d7df48bcc2df606ca38e787c121f0ca81b35c36db9b8428ab0cd1cef8dcb0502a9ba9a18cd93e6bd9fdae8f6f1117dd2413539ef59122f68d5e08ab136c547e4f234c40cb8547f4a6444957707047e147b7f625c61f46d375bcbd9d4a729f81cc682756e14a8873375bb5b7e27c8eb55a7c8b58183162dbb07bd4dad687754c2fcc545970bfc73423281e4211c947cc8da509c5102c36bf3646e84f42e34eec129120a415be19af885ecbbdcb4eb1b8fc9e113a30d512ce4fa5cc2a4fe9f1240a8d86d2326bde2705f3974a0b5c635999a1b30c08a154f381945efd91cae21c9ec058c56e131bb28a314d03496954d66c5b7fd849c6584151ae2dd22ee327633ce54bc4c6b5d71a09fd3bd8d6b63d23309054f2f6bf71385f3620416dae7cb8b1ec314746ba485679f4c26086275c206d67f7b574ec65df530911170a1a324871659fd680d825d0de56edbffcf0bba72462582d0dac4847942a141275e68cb81b39e9803d4f0aa990816b403f127b1e08e0a090a0faefa31202a3d1395cdd68d3abafc8c409b6a45f459ce2a4a747a6b7cf89c7f146947eddd73411cfbd00d1b301c30e870f67a082afc49ac3953dd77ae4f382478a8220f585685e014043ac225e591c33e2688a9ae3670365c3a1bafb9fd68cdc230cbdf8208d09bcfb281b22da1a4a5f191ab14011bb0f47c7f1afd65eab92b779b316988edfe61956ca52b6ef419adef600f8e7f6342f8c0c1963c1d8dc6d9386adaf7060cc162ec48b0bbcfe85b82e1537353ecb4fe3fb220e1c824a6ad1547685360b94ea44121f062dd2b47c54ffb9a955eaa116aa3b6f9136406c0af8198a2bcb546178fa4195efee042e387d9ede2e993df68910e109b4785fa273a7fed32b45249f17c598c234a38d4424a5aade4ef2675172bb8393a946eb8cb9560c3c7a6bfb50fac8ad8c4bf7a3318e2204516d27b42cd681ef0f59e4af2ae55790973bf1cefef9e2c3cc20ee0f64eab9f7bc4be61054e0e48098dc96deb87b8eafc2ef4f640d35585b20664f1ff12cf29014cc7b705d02bf273737d910519847fbb733b9128b143dbc797d12d4283133a82b3cb7f933909375c58affac24ae93f0d99e55b480163126e14d5c1e1f12af02a080dd12d387f34ef053a07e9ecd299ec372c94ed9fba3fab511a1f7a1e5ec442e26e6b22a72f06c498c6c0abaea6413c75dc0ef50a3e3f805d9ff89ba01d37ca268e76542d6dae361c87dc690a5e0248049fe1921dad2b54f366a9eab794c8d76eadcd6439eb92dafcbfc094baa40e400ba5825ea13142cceeee9a01e41a8b0435335e58ba614147ec4600adbb225fb1b4ca5c2707358ed1f0f22bb9d0130d3ce5099e675a4c536a07ee9714d4e04a01b1350c80cf1fd4e9280c28239dec476cecdd1715a1237a0fb6db40b3bc68c35b8a096a0630af28d800925d704fd7e9b70df3fe1f3b90dd770fe99a520f585ec902a624a5751376f0ce105335523c4321ae81ed236a34a18021d1b12b7b5170063ed81e114e75a58359fb6e8c20d01ea7bcfaef07deb54a659d6e8d29552ba0f504ca161593c339e2422e378a7007f8786a7b439cce61ceedfda6978e1b4cda06b590ea97bcade4aac3a5ff513c11d4c5e4f1eb1920912384bc3f8cc8ef9ce3eda04a6afb833237e531d7430ad906c059fda482f1f26549bd83fdb90cbda61742411064e46b23e9092d869947a6ec08b6082b9797a50c9b4d1f768991beafe3c49de1a02438f98d4d313aeaca6061a2eef735a9176a0f1ac09ca8e54335474a99032a5ec72f0893e8c2a569b38a7657bd504a035316bce028e5305d579e3a8f524fb9cd49a96e2325b160ff69ad9f9fc36b3dda7489c230f868eb0bae8779b3840ac59ab4d692edd445e3cd5b6a6ef509e2ef3b04c2b473cbbc0629c86e337cf3054a20664284f828a82fc0d3f5fba1c71f6e9c0126275f7134c5c1436fb5b0beb490839017a579b5a10d7a21364c28598d028ab7df65bfb3f672ea33664d655676a94e40f63fe92c1d0ea4f547d3941a0d041137035bd07be3af38251c34fdd3f4315aef93548361ecc429110a3955929e5e1d4b983b431dc4f00ce9311dbdb22a15e9dbd27b128373c58147694de0c4e32a37e9be97bdcfbf1fc107524fecd7875492341c8ab8dd8daca74eff13541a697eb25798d13abb0b757fbb1678e4982393019cce4d0a1b65d1f453352bf11fa9883e761e79f7a53db682c0e21955c1e187182cc5d3ab976685f01e72dea9314fbbd4f1024c194ae0193894d5594235988adca5d0ee7c87977ae30fbfb159d7f6500f0434b58b294071461b6917c3152a1b99e41d4d67158b2308f003894ac99d41456427dff20c832552fb8a14137e08f871b8a2830f155a1fb2ea2b3cbc31b35ba25fef3f9bd76fbdad01549e16ef5f5d4b5553e4691b9af5097827dc4bdbbc9053b8c203cf62ee3e86b981dff4cbccaed9bde07b986e6225747998dd511d1e3f49a4338beff2159d30ab419e6c5be21f97818a421df1bab90ffee60d4f2897ef6600eddc94583f11f022c23cbb702d61bfd2f9db3c21c89a615a9a49f88fbae63809ba0896b4dacc63b505486476e6bebeac05f874078d0dd596f8cf0d0d1053a301ff1301a8900b4710a2d4572140dc9d89e5789e5b7eee1f905f3e1513a8e05c231e94e860179ae737ea2d70b9a31d75716da7a23abb8ea4811a661a30521cfac35053f6438ae2445c5f01305042ec197aa7b59b58ba5c66875c2e2ceba5ac0848b713c09adcf83fde0ef0cd9f58d050f4d0378824526ed1e06d8a0f7e359d54701f1253438016a93bd30a27560423bca5b03b540c366a1259e9377202eddbaecc749e14e40614f4b65e18901fa4d26c4bc933658455031c3c018053e8f872c2be7a650697c291ab40cd0aad94ca5a9a9ae45c86dc12b9741bae7bddd67283baeab6c9b6a023c1bd2d639034202e23703b4d2714a08efb10a6c4ccdcb390665076f466ae1a217551eea9f12b2731c97e58ecd94b202e936424d91fc7389b14ee0aa412dbb7a7a787f48d33351d360344a6a9848c6fc25735222b956dec9325766347259accdd08552924b0df3d557169121bf6a5d5ee66fbfba6ad11c6f48e3c610fe2254270db6c56f9c2e896a8d337827bb3b6c269c718171415c38eb7a1d246fe174dd62c218eae72d71d3ed7c9ed5533391dfa08072762f2b55d8b130f60060f64ebde290d445c92476099ade4c9f9900dc97aa1777af8d8cd7306eca71a68605ef288a9dde555eaee6397f41618536189a1cbaa829099f39051d1d657a9b6fc03dd03d02923cad450aa698406623bb7ee9854eb43229774a3778ff169b26a2e74658b42efb4e3a04d85d9fc8621d9acdef4001d09ed79b321cc2c138f5ea38d1edd99a5ce3c25bc4dadd03d3576f43114cf6261ff8fee69f620bd2cd2f098c7d4dd5e8213e32de4d9f3caa8f006edee7113b38970892ed2e9ece601d93c7d68822240b527c0158f1911fc2630e170233a4d72d927829a4b781acf4a81219ed74248dbc14475414a442e458ea8a4650c65844a482993bb21f5db50587d9875698e47f97a833d4dbbf2d610eafb434b2b7b5c3895ad237a5bd2baa1d095414bc0405615fecf4f076773ed7654d68d154b36117bfae84f8ced35fde5f3ce097fd615cb3be3e6e2035028ec44f3fad4554823815ed0849866a0a42466814b295cb33dea422d48bf070a9bb08d26d12d9982972fa3da3152a26fe864c0e38e092457c4e1183396c360ef8928c06444d1836094f0ba2d21edf7ad9c69cab429c110939c3645beaef60771314847b0fa0e24d29820beef9d9c306171f02df6f40cf171c9f7895d0551984b986682f14d40973e6d173327b476c552689b4b815574835e3b7d1ce2bcb080530c9ebc5d7635c8d560be2d61da901a55c957f25c233642717fe0c322596ac6022cd2e0c4e24d68d787274f3d048c224daffd6a090edce75254f4d55a3512219475576d9202183f183ac156e58a3b025eb7954fb3fcfe347d4027cd84d84df24ef63f61809c7291812af7c31bb09d1e3b1f9db63b8f923399b68a1a672cb88dd0f7df586f559d4abbbaafcb25a04112b4ec69fa27fd5b4dd5f8588b94d833c410e5e45523c6a0e3a5ff9ad9e6a88e5d856f468b1666da7dd72a8c47b476a74c0415946d1d93fce3f0c802f0af754a75bf6c2f8334f5a9f8aad569f4d9e69b955377bb39e0c2403df48d75a0fac24c487dc05176a8c58af67f3b7f5c460e456b8fc05cdb211c0f9c11c02b0849812120fa423e79f0967ecc13016a217c2352619838f2043063e7e4a416a0592218d7f1458624515b99a87da615a1e63d974735f796038b062024dd28bac1918bbd92acafe88db9f49fb56e2290a873a9d3b64229025f0aa3bef26af8e3193ac29340262f5c824b3b3022d5e8571d0fea0bfc613831df1158f7498984be96f5d9d1e33acd9a839625f29890fff9f1e20a0792035e30c20ba04d3479ee8f592c748b881dceef59a9c12c7ae232a869f14396e7e78d33cd914e65ef3d08d6ba35319c7c3e582468afe7eaf55f1672e6a082ff14239f59c1809a79b9b67dcfb285041062e1a9beedc59d6d33cf4718bfa3bec724a12af36553ff62fba63d930b084a6c219bef386f136bf002354cb0aab2793c1c432ed187db02635fb3669fb3c445c1e5c297f87cc5fb8f65ccdb24da6ecc668fec68609553f89d8ff58e3142ac248d2f44b6a3afb8677e4fdd68c3238722f168a84da0a37e1c70f5dbe5268e27b9cbddf9a2116a3fb7ce7737b19295b87c1a39edd06cd87ed0479f8808afef03b5370d257b3f1d961f4420b78ae8de143086ec725dacb2adf3e8efad9a30cd6cdb18b601f8947704477757796aaf2a2f0118713b387294a249caf476252463c43d35f900c53a451fd1bac6ac2996b98d8ad932a4eb13671f1ce83396b34d389ecd9766c7d182ea231b19af2ee7ecbd2c14342f11dc3102a39c73b30877d240b72d4b5f5643a8e4d6b9f82e6ad0c4d83cd0a71f389a43891f89d730daab5e6bdb342135359f140d175ce6542fa11a1eb63e7fd668297f807ea405fa5a8b579e5a067879b0cdce111ac6d0b53ecaeb73c135e3c50f48d1da7ba536ef9a7b86f7f2a5f92faf5300f03d58efe90b69631acec74afd2bba2d0cfa4a69504441462e55b70d66fa9383a12b733bdd319d81c99f8e5f8804d7f4f8725a6c3e900146d1dac65c9675549e9ffae48ca714f51c32f0d6da2290c1db8d3de58bad0006773c64b26848c7a8e84b1a64ca243671f97e0335b7d01ac776409777b9cd1e07066938bf7426df212b574aa9197d5b98f117b45d978fb62722eeeba972a675cdc8177512e7dcf98eb8cff0fee21c64fd3c2c76f3172fa410d547e13ea87e21fd429b3ae48935df24e8d2ab788e9b700fc8b075ac5d006c20a2701aeffdf3c82a0d9fca8026600c6286673e0fac8000e3e8c7ce7dc813b2033915b219d9b48bef987fa168cdade5399d1c88a1ea06c8921d98585b33d1478be748c08506f688c09e27e9b04ad34be031a51e1258202528b78e5ee28d98b36088404397c655004f5551dc4d95501fc11cb7a7154dcc884459388c9a4799a46df8680a6f6a280aa9b07ba0e58e017f2d656a78ba0aa750644af69c89f05dcfc7694d8feb8e9beb0d32f844088ded703387bf421c74fc75fbd9b6b120df7b81016e99df03ff60f456d73bd9ecc54019b653b56f6bcee9761269d8c6aa3bd5d3e387b71ea30dee346bab115a06155add1af2f6c10ea36d8d78d3147f0d34810f8166d242cd9370805a6181af13f929a26c341697a49da0d567258c730fa387fb4e689711f4828be9b1b56fbb89064991fa8d4a444180ab76d6f18df06128d9b1af0454400feb30b4f60026b94d8c8e4138af6b15449215f3b5852b663771cb3ec88987b0033b29b49c0b6a98f0f6f3bd0a4d87309dce79fe17f76548cd5e2642d7f2d9a3921443b65eca08911cc0f47a6bd57fef75f3dfc926372488c3503b0049cf0ab8e628d1e8f3c1bf035753016c695ee9c94c4bf91b197fddebc1131c7c7d0bca6dc7c24c21a9223cb7260c07f8f2143f585fb8a3063086226fabeeab18059496fac3d63fd08bc1758f542829c9ac0b1676c8bc5d51475163ed4640e3d4a73ca77960f38ae205c4b0337f620a378d856fa62a5695a630700259a551cc714ddf767a26f5826143ef8d7b882ba8971e2c0905de5385cad72529a75a223e38cc2d36ba5c15cc0cc9e17de1c48771a638e5f9f51c0f857f249e3beac65960366456976317066de829261dc6a9aade06991c55c9042dc2733d3db89fba282b4f7a3fe75e125e976ad8fe5b72cae1220e34d67bac41c6d5d5fff4b7c979846882bb7e9af52956159223b0f46fa618293dec5ecd69830d1c0263918d699a5b65f144d9e7da4dfeab8582ad0e19b7dd2595157888564410f4d6d3317a5552619bd600ad269a86d34b9659834db972f0afe1df7d975502dccecc142c5e36f5c127b4ff42611a2a2aedb2b056451671a2532f8c61f313e1a22185107756cd317a1d3919b339460b7ddf289bfa5f8fc40a4e7f4b089c91d5fa7c578cbf9cc3304b72fd71987f5543a48ba730b29e2c371ed7de56d0b28420d91423febb7f1b451a1cf16ece13135b1fe60890cd072547b00f1871f52e6c58abab20248486b7eb1e3106f44a04f9b03a52b25bab416bbb68de950e0207e8e7ea7ec84965de72ae3450d0cde688f0dd27e9e9c25b4f845c95663f022703eef4a2c0575bf6294b1a2bba86dea013473bc93d21495320b76f8f97c81e7b044de5072b739507dfe405455af6141b66b1354433aecead0046c48f1f92f0b9bdfdc860727c35660622e82f9e6a9387d4fc5c3f7cfbd1c486899160ce15084b2fb1cae66353fbec9f46d1b24774deb7afbe3ce755838d26069a3a3d4335433a1bc1a3e3abcc13e22630d83748db17d08ed965c311168b5745a6ee58f6cf34499ddff1b84a228b3d0bc4a53990fa3ae1c5cd633c92ffea481c7b21f53331750314a54a61520a4602e3094b22cdcb35c97f95a670724a8bcbf7e2d203042222a35a27fa64966f2eecf9834b52917a009a4d0d0919be1548c46e538bc16db6415e792137530fe9fdf5d742dc1f0cebece90ea872e7d43fac5da68444e638841568af7c82e145571053ac1ecde808fd7433596f591b2cf3d91f84565c2fc504da1a320c94d355762bd5d523ee5397f593e399b2ac21e281cf0259e87f392f5441fd06563b16d7fa4d20ecc272d45d88f417829458703149be98fd63dbd1ab7c089dbe25d2a9da0cbe6223dc629f7b86dc0bca383bb5247cc4dc15fba3a5e02609d14bdd0304d1bd82363c930fe2f9f30bb322f6951839e7ef82fdc299a99e2125dd5a8d990b4a351ce5b4d093b23fa0ac51145080d9ec6c0c359cd60e8e64d492bdfe5f4b4b92b8dca851eb9054bf49a4d27a043cf9ca8ef1817bec36b797f05519dea7b2307bdde280286a61282c78193a1ec6a48ec7eebf1d2bd3d528eff63306622e1877ca7698442b394e6dc8f9c90ae5ff863e1e6663b2448ee4ba405f1a2abf4eb66fbaa2e05e33830d7852c0a83eb274449b2641419df76c0d37ce2369cf6637e1148b1cf0dc876bedaec796e77ee072b4f0daea7774eb650e111c53d821029f9f7759b7e5cbf38aabb7cbc8bcf890fedbd8c0f31fad7a94583990a91ab14862ae75099f4f147238ee22fb763c0bb82527cbce8074455569f2772f3107465b5c6fcd0f2e4abdcde210b28fd06b7c6865631f9cc349f054f676a16af7f71163c8356c3b564458a8c7309c849289018306e76ba427b542167e733ae61ece21b0bed7d22b411c1ea4cec82e4ff5d91b048577e8a3255ff65f4af83d82976915c0a257b71dd9c054160fadab86502c869f6cfcf06a43fc26a07532a557ca639d2ee9e8611316cf9228c056b73913da83073ef7cc19043edf144ddb3cf3654953e618afd18e00c5192c6e4ceae36ba3a50e5edbf47b3746781379061bacfd846cdda448d1515de39f317d7bfaf7a1db9c3a7e929fe0d9ee83b6a4f187c15fdb368e4bd51d2003cdfc7955e46a60d63b97d60d56d3bfa3298a8cf5ebf36e48c7b7820b74665e333f53e69a739bd1e1cda916e66244223cb0559c68faaa46c3ac0bb0ab30c488f01b21c2f56044a8f622655d8cf7fbcb2bbfd9295d77209694ce78c0b2574a14f16dc487c6fb12a73b9cc2271cd189c18caa6948cbaea91146b39223e17559df12d09f7783621777e8a1ca47a7256c9fec46297146fdd93e20135eb97109c45c92e4b918ae635da60bc23c147ea22162f917494503edd1201e0c6c7eade2cb850bb499a0369525f7afd5df3e4be6f59d1d8273aabbaa80deb962524da54f83b83f3b9258b4d63c50a5b7757013983bb66061643b1f9bb59e0f111721f07fee00fa70d3002d3cc12e93b01179738395429a0364c77be0f009186e294cc659935a97d49d87f75672dc90269a32db8c21e7a38c518c038e89e0e54038fa59f46ab51140502cc02dccc0eb4f90604da3a1b62f02184cdf0c763001d76864eb6e8754e1d3920d62e9b5f987650dee7a8ff20738433533035b65467dfa8a6bc035482c5be52835ad72834c074448c08593322c5d89b031167ea38523536e368a96faed9f6ea0fb5f1f399899229b20c45e7127b8314619c4d8db7dab9936827328dc84d38c85da9bce431b8060da74e1ff32b6dd2a4fa706df1f5ed24389bcdba53782dbbc78245e4d68f13091505fb536c46802e51843c8e7489379de533fd3b9a401d12e0de9fb0fa2d8c1101d28782d3b44dc39943a44e76a4ae2ede4bc468c04fab6c504ecaff2b40847b49ec7e70aac011aec98a8b50781c761c9c2c1aae0578c1e550afe7cd04d6ceed38e9579790eac99408afe2cb6a97f157ce60107f0901a1cde363e31dc8f3be49fc242ce9f5148108bf459109b9357482f90631b81c6fdc59a3316a62a9f850f4cf552bbd6b63fd3abe10bd2e3c9c1e9c2e7d77bb5138e06041c3d29a17d96d8af048f0d66f5cd66885ae83e586d8e3d582f5dded552cb5053bde88b2ea84024fd7cc252940b19ce0c652fdddac3320f79494735b4bd2d92777a7d578e2cb22011c07f249cf23aac76f29b57e91b94c0d8bdb0c251ac0ab4484289ed47d7de11a7ce56a41988d068f289a3145e901647f5de2b0b0a4da358e1e1b9aac0009f12f2f28e2d5a271cbc59def0ca6002167d3dc85fe437541e519e4c7ca25309c91aefac4da4ca4da16ecd09f08093b9244e2395dc38cb185e1784deb254165b662224c44cfaf6b83694ab0f3cf32d826109aaa8c453466f31c995653638f2a65dbe7d8061f5568c32eddc978050f537100cecdd397814f407a88052fcca18bbd52b702f150a3e8fc1557481e1672a788019571ee5c35504d4fabad7fd5607abcc52d2d75a79257948f493cef6151545baf79e4d3432f69b623e34ae84f9d1df7a0297315a4278aed25dc9a126ae786f8ed103553056b057ab4c02b359bcf60936d5f6ebc6319f59016dd7af6b84f8d45826c9b1e2bad7306f214a2ca69cf7d9a8bdb8147ef80a684907a7e27f7e60329bc5c4d0d466251dc2ecb9b7d19925bcfe3e30588499331df1773310b07a1385952e291ebc234e0323c91deb667d96149d8275bb1eb5a20156be6192036728f4eb92a1e0e2ace74e4f89deb2ca8283280de734b5dc9768d7f5be3695878365a5cc14f82f1342c608b42664b05295552a6518435b2b49c69afe5e9542d63e7e6bcc10d47d2d1918a954931efc500c1439589deceff743a145a885b1109c289a2b1b23a3aef84fcbcdf7c1d1125fb4721e13f95767b9cca3e51480a8cae53f332dd0201110cc07101d3e994c096bc6cc1e421f8a038d85e9fe54411c1b00c3e764abe56f603d1f20cebfd29f18d1a46a710ba01259956fd456f463f881b8db09c00dec3858220b1670decefee7919acb8978fdad99b07070b0e38dd83b9262d98ae52238f22f093d794391deb4515a3092fcc7753971f5777f657fc75aef9adb211ed988613471956b639eeb3dcb773ae9bfea2ed02c2184b31030907d7fb2787209c2ae4289591daba1162802fe180e74c5d69d6d4ca599d370d6bb73037a4dad55f9228c3b77f20a1e7dd3d22ec2d20edbaee4881fa2cc201b26acfe679221f3c30f105f19127cb2af5a03c28e3d16f5e44f17905c19c8c1f69b5491838fa03d90c25c6b57443a5b2a319e8850588c16e70f844f57bf70186fa23a482d7146c22e2aaa31692e75fb45f2078617334f199874e4a4a814ceb3619b6af12f928b20850a8eebf772212cca6a0866c9f90689fb1967aa84d5de7aa230936b335f6b1cccc9193c6a311cee1a0831194d7f6e2c3b6844c37ecc3a7c14786cc90a88f66f9ffb5b20e1ef51aaced6eb94cb0234e97fe4bc14759b68a1d45a77d96ffe1b5fdd5fb3c4ebd3c35fa0c843254c2795f6b4a46daadc03623474e202643128363acea6da84d1c5d953050ce58ed55921c3adea95a77a6b8f19373900cf8c01ed8f863797e982cc516dde6e144ef01a5b16699c56584bd109fe1ada90d581d997ce652f88dc11bae32c5bb15ebd9d317d83ab61672601ac51137e15a7f684a1c9942e0f0aebef8f4b8520c339c8df37f3a4df5aea75b621e9caef8c3f4661abd2b756bfae50c0b16fd6a1bde1bfbf452fbb8751c951bd41d1c9fd4f7fe6eb2f72ed83495515442b457ebba1d7f4718502ac91a273e7f99e59711fb806f069afdff36d4bfd2738286d282e22bc4189b22087f280580a5a8f504cf7e53f336da5563149b1f4b0fa9722d2cadb634dc87b5f73cce2bd6296fa7b26a4d7f0273622520ea1e0f047a4853119190b6e2dbf99c7655a2bcea83f56f42481b98005fe39dab3640bf0ed2b4c375463dc0171ace41c401cb4c9d002fbf14e8b6d3b6816ef48c788ed8bb0cbf4c9d765a582eecb21b5e43b813fb6c0c0d4fa4271ad993f55b57aabc1ad902c33f0f59a09e28d4b4593a7690cf684e2f7819e426bda3d1e26b7e1f06c923651da2c07af4a495241f0fa313d4e2012df02621bf82f12bfa8e776d2782e3a809268a6a2e47b97e690c4de44a810fa56b7bb9797c618ac4ff23980dbe501d5645d6f20ac118b6b05b37bcafe046508c48e85a848e864b644c710a673a3546e25d577c2051dcbbd0deb2e3ec8b3e2acd34c93a82c76e7f7c89aa2b4ba66ea6d588a27f1945f08ebcf2c27dc8e9013ecbcb8b84d682421cf77c353521b10bbea543bd064754c986845804b708682e7e6a74960c99de4472209876cf7ad18dd09870f81a88c6bfc7fffebb26a3dd3f5e8653143ee9ffb8845053bbe6bc87219fa6667b625ea0ae279490e0922b65d40d16d93c11a66aba1ccfeb5c7320f90488642e3cb90e82284ba523349169a73fbf746ffc9d47703c6b85e7229176450627def146704cc5a5fd5d88d44e1cdc63d4862e6885c945e3d238e93ce9bde1ecf53ca9f40c142eb73301610d3d8f7c2a4834b603afea43fa160ad9e07b678a25b3d5df73ea170356c2ebe8bf9d6501e14c29a425b05e88a1e88167f77a2d9456d4f674cfb966c90f9677ce8a8476ed0a24fdce04567e3810509434d043b4f732ba15b75a1b2d6af42c06dc5790a49acdaf57f3ab2a8b9a3b602b0cad2df5debf7589301653275002637fed31af02e336299877a912df5878a375ca58cb1a858e33d097bda918d909c5469d8f339258289a18872aaef670e4329a98966dd62cade325ddbfa1a4f98e17d05f461f10e52316a7441833ae3ca77e28fa370f457d166f3b6ba399fe9057742a8929d3692fa339ca44cfc6be54758e0671556cc2d40903fda933ae71b5bcb6a85d00f6ce1f8407ef88ca618dc5b85f0671acc77c7b9dabb13dc07ade2abee3d5dfeb3633705e5cbebb9e4bf4095d3e95b42dfd37b9e702c7923cd25699f4797fd4a8c18b850a86af869efb4752bcac6f2c785b4fd667989e8ed6a849208ee84136708cebecf9c49645249f5c301482be11f6611dd9d1998fbf9e9515c65801ce2d21680719d85f979a19a2d09c5d33cbe87e463501c9112d7898fb11b716199a588ed5edac649a2252c305cc4e3adc59aa13cbe38bc058b125c43b33a0a2fcf341d0e78c40271f7f5296d3267317c6a9b76b80ee4b777e79254792844061bfc1c26bd24eaed595097dca11b2fde4f5506e48f4bc075a4b50dc511da3191a86f982ac24906c62fb1857036fb1efed91e712431c4ad6315c8c56bef7c05602ce519dc826ab8f99fe3e6448874dc16d58f6157a32f3cce91508b9827065e1fb07705a12f145169aa08c8347895301acb2b169c926be68c89376669969575ba53b0d08a786afe634e67b6c299d461867888401c12a8f21193e8126003b1d372193815f93bc495e3280ce31c92229d437df3df3deaf73d8aedc091aa79e8e00d2ded4a92d83171808ea83ee6db9e0eef6449dba0bd973411f9e1d27923cc253c3c4a9df5a608f818ebade920c507c93b103cef011f6b6a0702178c543a2896e6bc12ff0cea84c402ddefe6bdfc7a8bdcadec8d32eb81210179b92790efa473b231cc3b1f3c1300da808cd4abb62a07696460df472232861a61af0c10c5ced5fc9722c4e533e4053087cea93b5a7fd3dd31853cb02c40691fe98b707890dfee407abd75a54bbabee4391dfdb254019ee26228d837d4ad5c840c706fe336ee2fcb7178fdd38b750d7d7d2526db6247493028745ce337baeb9d0a2aa08e529086a56afdbbb4c12c9a3041dcced5250562ab2b125dcf82f61fe65aaa8181ba5c4edf792890575fbd83e47b029f814eba1a293503916b30d2ff988f9417c3d99dde14bc1002a60626d5493a7f1a0803d97c9ce165a4a150c85e1e2265f0b9acaf12f85e08b9163d1adad600cd20ca3e358017d504bdfafb1b7bf2ae0aef0689964c1f1a6d579f80c3e29ef81f118165c0886df3d8af2eb7c85baf58db16ba4fdfd8156caa04e2c8eeb70e6ba6fe22436a5f6a963eca539ee9271ed676b30c6a32135e0448c709fd5df52b218cdeb88c673c836ebefdc412f9f6353d066d79d712b142b514152714650fdaee005a6b7a4b8a3900f68b5703f4a7bc7f5975f90185072c64f4ff4cde621be2be91c8ae714537a746c5cfc2f70e20fa9befa315e682a564585b66095b0712fe84eeb23d3c51651019a22c4b7f70f54a84e2f320247a1fbc26a43b43647b41f53ef39a7defa1c5304cf9dc059a18886f6754691d7fa55b5d9ce4598026871c01802e93560171d60530ca3fc067f01806c02f4f43786e8e06eb018f1b55ffbc91c0f2da97bbb30a782bdd5df9207b8340bfb38ce7dadaf63286ac12f1f5dff0b674a7a177549790c4973d4c71023d88a5dc3ba4ce36c890d77107a896104fc29c66f40e4ac3572ce24fbeb86371b1fb2f5ba203208b131c6ac51a2c812376957981e7a460a4068ae914b0ee51a8531a84e842aa96bdc221bbe9e1d565f7d3a5b2a26763f4dfc49bb0af12129585feb0b005c1ff7c687e38563b4db272673763d7b1282986cee285a0345a578b76ce23f6a112df096c5cbac9472042c149a1d4388396dea740ac68f2b6303bea1d9af0734ac5e5cbcf3326489acb10daa2767f30bc704283653f6863cc0bc12cbe0ebf05db94e741d5202ebbcf259a54327aba289898cd862dcab0246d1f98ce47b0ca75c212c57cc8d37de2982c11a2f271cb4c72d37fe67d9e512a0f534e1c72c7da14107afe0df84b648dc35b221bc236a464a17d74a9a8e5459504d0007e82807cc001ad77cb844190aeacfa7a16f6aaffb39477e55573d084839467a68ccc1d9fac692b6d79bc36f71f7e6f966c9117cf22f0461c46f05db9077ddc08979b716cc548c4b3cbce16346f975d4c2a274c14ba05e7b6ef11796eebfe275abe42acd959c8590a842bd8d7b84cb0286b75a158db79dd6c9076e671ac24ab6c114bd4903cec36afb5687ecab041ccc40557d5bf2ae6e4511303dcf7ae1a753a476e464a08becb5c4cfbc960dfeb45f233d22f8aa90d347c75f5fe29fccb0093ef8032457f39a8083cde2353ca3f09e426062df57b41b352fea0f4073bfa0cc559bfa4c667a368942ab74368591b1ae7be63c3a52c8f50be9422d2571e0155faf51b1512707126a4dba5238134c0a588553a47a43f8a8f1c7ab88a07a430de850e36e81f0c40f9f96e544d40ac950a9a83b6712372904c47e10cc35ee9fea63b90f738fc7bedb3dc80b3687f0b79748acabd38b3bc40b4a4d60ffc1b8b34b16d10514a7cf60f2fe5b49141d275dc1e968e7f0fff5e6025276ebbde0aa51629697ad28b30218bd55731b814d16e2bdf2e5640a5d4745e5721c135dec05738ec928852eb6609cf99a0ed416e4fe82cd4fc281cc7d229256183b6982080a289e7ac05fc7d4622b8f4a50b39a3084c0f55178051fd68edd5b50fad19be321a96061dc59b3e3b966c44e4af1af40128873a6c6d9341473b7458d473537f340e133c2b44b2ed3ace6bf99091f6b0fd81fbf8f837027cf881989916191597aa44f96ce30fbf35a2cbbb322159525b95b36704eedd4cad09e6c4f237b1cefc75e712d39a387e1198ab8e9901c90689600e85df6e7e16ac22a2bf54d27631707ace3906351767e23f5367676efb7819cccf09a6d967f3db201a3ba2b51e4791177a2ad088b08fa591a91688cdd0dec22b33587e46cbe4feb9bb5aee8a6d47730ea9a5619ca810c8237e9079b0e0761bb1fc51c9b21f37268f838cb77ebf6be136dfe1a6032c30d072be858dd861e5d376f7d013dcb6d0f7fff4b21dd660eb686b8ae259e7aa2bb1d0d5a0fabf6e0d13252f75d0b7b5f250b7c55559b8a46cb012986ec95c0bbbb8ec9d06e5e71e99cc4f15e15ffe4ba490e7e2377a0d02dffb6f9cda7761329b37d2e9c03d46b6aa8f4711c1e80c98f63e01173ba08affe91a6785dfdb155f800b94fdb0ee55dab5316b3ae4dc137c613fcd7aa346ce59bed8a03ec389e0774583783b3fa6e77efba678aef4baa15bd59bbe7305d134c2ace2571ea6cd00e30af3e5eee430232f0ab0a26d51056f0801eaf26a11c9dc42136cbd10f19945c60e40a3b85c2bbcb51bd45767cdd31db292d916879a1129d99e31b30bdff084cc2d6418cc5de3a08db1794381cc75baa4b192f8c60e9e58faab11fdaf0bc434521d4b85419ff483b7f855e791b21b306393912238ec84594de6f84ddfb022bc48383bea5ed5aba0d12d496515c90efb7cfb55b02556b00e653db5a7edd5fb761288dafb8fee5bad3e661cbf631a7ea59321d364363a7963b591b04e11ba7d2dc4ffaa6424a69411ca9fc9cbf89a82ce70b5158df64337d6620812a101a11be877a9a98a7f534e54adef7b357988fd3cf0e8914850a16a45124ac9a1007442f0990fa586ba699b45a1049d5d9b10d1faf060ebabcdc63df71a28843f740c543507cc3e073a3fdfe04fed0f11d241cedba51d851db947248e34f99f8f8217a4e05793b98884d60a3639ffb91bf811a2d96df11591dba7c4418b76c114f23832073b022a0a68d01d46240d80afdacda53f9195bd8d1ade36e51b219522a31e6ea3e38f3cb5ed428ede7db6bb00b29c3e5f02a3950bfd17d3d4d38befa2e2b96ef37262f698a555156a38f4da51735604d389664e19086cccc79091ba4df436cdaf3fd2a043cec62a75661b1f98a871b535907374789d614697991934d9100631e49d3e2dd9f4308950690cda56b0f6e0baa2fb04823ad79b2f6905d4949a5fa8c693ab749d08cd9715c0e641153b46f2b846084d28af79158b3047dde94b6dbf9a1c2e1ac1660a19ce8f5e96452f55bbf676946d103d790af66252d1ada182349d6abbb76cab773a7591b95493f78b2d9102bce39905fd88a77dd914b3851f004c76431789528594cb036a4148a9f15bddf3ee414b33df93fde16a01eeee7a6366fc6b49f47027beae8d293234ee36359ad39f4126ac14e9e9afb8d7f7f76289b04f5353661119aa24fcb6ed05eb7a5e1119d48a55aac60671565f2731068be6597a1f122b15b10b0e39627c4b257956378e96dab2411e533ba542715b8aec85ab18a0418cb601fa8c55c4180b2b7fab40652e5275574a25a7e01a9a4371f67a486021ad1946228b11216d4ec9992a253c6444972d2e5e9e4420453fac0bd260722b6e5575b23d127a3f670e2bd167487f651fc03154fa225023d4d668671d249e497431ce1640ccecb531c81b5af0594254ae7de8b67e7c7c94bd7a1f93898fb8348c419fdfcc6056eb97c7cac5202dce354f6f0523dcd2bac6d7588d755cd311ebab2afc907f065d238727982175e52ecee36494d5077b9849e42ae1aaeccb12f7030589ed07a5974e1c87c92ecddab54483c8a1e242a6df5587ad97846396314ccc5dedf92287f3b5f3a0f27da6c058c58f3fbe5200d8c43f39147f25b5a243296f8d5ead2753d0017880b1dbac65aa6044eb2ce4d0e8886e4e4ac35ff4a1c00b02035908aaf4c836b49d5da87618ed069f5cb997c4d551dd39f8685c649e69700060deb77d75a70aef6ffcc09980556d422edda0750e9b7cc426f35f13b889bf04cad21bb6517abbe5d42a6fe1f402d4ce75fdc1abdc0f6a90691d1e7500557ac220550f61a6e563a5c8855abfa088448988c1cb6bd8430c1e11b66b4208ea40739c1ad72e6584159729b9ba83dad8fb36f13681f8e80e70ae980f32ed46c06ff8c6d330a42164066a40b2cade3daa2ae5bb480576f0e989f498cb4a94f696598842d5c938a15e26eceb1ec80836fb251b4b24f23c324986a18e4ebbe4be9653d7b772d7c6a1602650f1e770de319aa4207361b1da3e769d6b5d6922209b321b147f9a85040f2c184986d2afc89b50e323d6450e99b8cd496dcddbb993c43e62624370c0b68b5401be0d9de8b28cdd83e41accf760b7ac7ace99d57baa76bfd971ca059395ad8b275fdf3fc6d79db4ada55474b99698671a947ab6f8c8a65f94b42920ac4b6179b239dae26dd67a9664e455a945d382db7499100aedba8621a9cbfc32752dfe7cba6a56153d85c833033be51478c1d17b69d0452a163251766b358980617572607a2e403d0a2bb5ce8623a5351ee06194a0db740546afe119d649348ec26faa57c065f99a43d61728727da5b9558276b20dec2333da469370b1c1dcca5dc042c70cd6389c22bfe5ba67094501a7b860da562daee177b35c111cfe202890fbfdf27b9d2b166d0cd6fccce7660f13380907af691ecd57f6845c69dc0491d3b6e4597c1b7d79adc96dfec233853ed3368c4d2d220a4803e97fb18fc0f956547434aa07b1087fd536066de7500a3675cd8376e18c657198da41915f033fd25959a6332f3964f9ab25432421077093c2f16f21cf5f52acdca946a09396425bae263b2fe4f975635bb5b67d4b9d948aafb7c991da0289eaba0225694c49bff35a5e9a5ba0d476c54d0f298876a75d4ba48a64a6654734463e654c4e0bb0b45fa0fdf83fcec7b3cae3c5a00bfcb3eab6a9350c85d1af78b8fbdbd9c309ebb6af9f7d60f968c8c8a498463fec803a4bd39b5d143eda65d4114ead291661ddec1f54e0a9d9b8c45bf44244e175b4c206f4d3e7d33d0e6a3057b460795848cc665c29be5689d9a8ee7bda33a2c1dae1bf60427127ea30e4e47b920f82007eb9394f47b5b4dad4c63ff7f3e214e990b6ea2ea5acc842bddec2adec3eff97354aaebe6f1d0e4ca6534b33782ad39c6027bc15ac3abc300ec0bb73d97c6e43c50642c051ee1d3cee861d9a158c8151fdb358ae71a619c460bb6efc7bcdab1fc63f2cd822fefe1aa2e652c214d6684d506006f965bb13dcc8a3aa483c29303b25740e230e94f2b2f8638f31c3d9d233e7482d55a126a21219ef04f90c7c22028774b746242725d20addce846b3b7bca3bec6d325a6efdfb2e1aa05f96cf2bc101fff6e9c0e93c7bbb2db5fabe98990a3ddb5f2228f0d21e4a7b62a7978606fa1c0b339974522ad88d3146ba73111a33ebad80acbf5c72e422acdce70fddd95b2bfd9e00e7d62f38aef55702cdbc0a338c3f041611f810b76e9d29270b99fd864fb1ee5ac17e4f2520c463bc7031633fdfce97f6d05a9eb0a5b893b1721acb236df3f790d6727536bcf273addf5d87d350242c7fa30ffcf7bdef73f9f1f475084badee7d53c3e0a867fda3d49235ff5331d2a472697e59a4e799024aa8699d747b4884f99d2d1914a38c1f8e899919304e399d557264a067d702146a67a510d5c09b18347b9887405496f3015716960e37d42a8ee5c50774b4a7736ab7ab92fbe229021588883b83f6e4752676c61bf7e6f5393d3e48462589f4f7fc82861785db0e0ec9def609bc006430f4ba6bd85c0fd08cd8ccda8433a3d16f58f70965222cf30f76a6a8d3ae90348bb7e84cce37e8d04fdb67c8f976298dc513e55895a181c5dce8636678b591833af7a5ec967a63bf431475b72a3019612c56a7d1ef91054383dea4c1d511a093908fcc1bfb984e524cb237b97a00aa52e46e0968a9f912807f7eddec60f3c98f63215b92ab7e081d0a75991cf6dfa7b051f3710b6fa78a9a383ba273c201a246d45dcb089653691e15777ebe5c27e128dc462104f023e0132b3cb03d0d7d1be5e0564bbdfacae726c7d0ed49b52d50386a758d820045e62a6c6bc5eecb718e775952051a500add24799ce931c0265bfe07d2d6f96dd22e318e5e2b6f0295c4728c8365fd62dfb92aae764c0f630b716e123f104dbac8babc15ee51cf32b815ee536e3fb1bcb9639117c046fb99a564a3fe1f0514ab3750547a2f2fc569dbbc6cc442fa4d4541937c4f7b63f01602a5cb31e011bcb916cc746d452170f9727629c99c9a10f45af8cc27ea979fc0e697ea230aa30e67c7e251eed215fe539cbf09183a4762f1a7d5e113f779fa356fd1ecad472e80896762a9bf385adc3929a62e7d68cdf34259141e16646ffde25b1124d87eedd722b2a3c88ae3112401ce5a7a91123911d1b1c018509b13887c4df5e0d6423ef681b0816ba043ddc7316690953b2a8e58363eb8e034402c6aa255c805e80b688c3121338373c238075b7e2b446d1c18f1c116976cf6ff21de341dacf4fe33100fd68c996ec4ab2e27a21e6d7cd30c5fd833fdc16132796ae5eb58d76478b9f28ab510a13e10c6d32a0da55fbce3bc691fa0cc0b9488c8d2d5bbb942370d3c50f771ec718b0c1b0e4bf796f51fb6ee7d6e9abdd59e72307f9de50cc41b3646e6913597ac9b85408927867b32d7b190657d3b9ec9f1daa9695cc2b10ccc6315cab6cbf9d7b17548479e3f163f6ce0492b43fb22a797e1f107e59f079391f35fec3f1b504b055d950f3deca28c803b3b7b979b622be06ec6b069791c9cd8ce401f9da958e55ba3eab3b6eeb94ac1b99078ef85d228a57de4293d6e04fa4ee9b58397af176722c62e48208a066b8e8b40cf9df4eef941ef6152995413fc2afb87079067dc8eb125257e148d76790b6741cffb5a8cc38a75435a9e4d7659ae3267e6a0b17a34f13831569fda6878572e08501f441af6ba9346e9e0ea2b68ec6f81d2d004995d3e2e62d664670a030de263927104e3c3752eb1a6b740ef551767b4c4f43ecad11c10ea5f2100df8242698b8688f944b933e605c617c0ac7853e83c9b5ba2e81fbbf6f100e356d9a32443a8dfb7832b8e29f4d5a101aeeb5f9d10b77f5f2d87535a1c23fb8bba4c6ca5aeef637dcf195d970b08ec9d98d41d63a4bf013d7ff9db8b4cceddceb4d3e947f57dbc56970bc3a41a06ed8e922a20010e9c854968817e648a79e3e1490bed23966db3cad5bb8a9dccd31415c7da11c79ac23b47c016ffefa316fc14845a4d97ce268ef19bbba8628357bc385c344b7675da3db6b006c68f02e979b107f99552b4dfaf01093d96cf01dfbb5f328e2cda859bb8d40f34a5a2ec0195a6623432313f023b084f40ac23927cc31a5844602d060b68d56906a37af70911be5f3769fc99691f8866bcd382eca383d7838a39040a92fb4cc8a0ce853e97b2a3f175de1170e4e55e3f63aba79e27f49663fec3f4a8e5cd3cc0b8de464c4f1abb4dfbdd757a2146fc93c58b205f4b2cecbb2cbd73624a688df14a9280307909097f3624ad3b43735d6be9e2bdfc3c53e981ca2f649d2ea34874cb5a3a77ada0395b642ff5b973114cb8063378d6b9383286e6fd2e6061ed2407e50316e11a877c85e34fcbca457ed1d86e64418754b5d644e74756815ef74b310cf362fec8211a89084aef38941097af0a750951d563b024f152c7f627593c6c9a9de92c88735ce2544888afaf68b1043d1b47abc170a96fa3be10163db8770d90bc74e859ef76a40533462c44de7a080bb303569898b8c8c384ab500aba33a62d4c3d96db23a926d99e7b40baa038b96eadaa8353ba43b3f936850ee22f16375443889057c9e6ca5293c6c734a90315c4a2849a11cfe2c7b227eddbfae756a92cb190eec4d55434be85892dc806373ea4a83d78fd3962ee5f55c3766a6ab0e024aac6c842e25c1588afddb7b1ff06f30a7b04a2e1936ef62d3919649d826d7186eda7a16f6da1610695ca1bf856f29e899ac3ab24e90e32c92c29254471fa2ac5125947f684b14b9402a1100ef867136d4c6844538ebb9aca79de23129f9819c41b3615e1135cbcf4db16a7eae306c7a62b8eb5a946cfe50f94749b99effed724a5fcacf9cec94b81b261940be381799acb43ea22331b925e79d3ea2f5fc737d7e9423fce5e53955de65135209bfdee6cbcb348e37aa7abf932c11ebd74d1d617167ded02f2bdbd37d2ffd1e933ef1976e0d075fba19c0b7c0dc678657705470a207f2ae9d770d7cd14d128da57f3a5282584a99280b2356b541373b45c9174228a22f9eead46ae7cde1cfd0ade8cee85f88a2cba3862bf2a643cfa8b066b1eefab3b802016307c37f5f6f3ea5679b88e12f071c99580eec3da2e6892b03a0bca3ccb654820ae58ef53398dfe9317099b806ad346239e311d358239deab404b79d040d0af6fbc6b84cd9c3ffd94ed46c68d889c7bc43e1766af19ccfa685ebce7779c20fb613cebb98eb576c85783dfa0aa2de20a17554c190606256bcd92b926816c9f5df4da918c67c8e254b3d0f6679c87fdb64eeabeac22438e960f04b7e0f4ffcba63ca548cfc1cfa89525ea2442470431a4a6dbcded988745e8e8371bb339ae07c4035f62760744771d803187dde426e8b01774246f514c3832fbbdfd5b46a48bf4e39025a2cab890899de59f5b52d5479cfd117b381d68d15a1fe751b34f81cd057d1f401cfe409cb7cb81ae0eb9611faf26af2242353b355d89ea48d0a6e2b77a036fd9038d38907af5c3db5859fe5db3e4eb6b288e7ed06a369ec5d7a0a5b92b3903bdd8770d7b30cf64ae073b1a19c90076a973522d059a381ca6250a24c306bc92c3379433c54295666e1811752be6a6ad715b736aa751bef409f4a7d6579644f95f53e80582d12f85f74c04a5addf3acdcf388316c6494113e94ee3558a3793219e641cfc45d08e7f3f082ae109ad821e865ba0bf18c8f2cb758c58715aebee0b12d05a7d17ecb659c497164739d1dd264fb4d07e8a8181a1d809ac195ee09606621c5f89ee6b4024752a678e36a4eb01af5e8e3c33b5790062a136ff5c9c6abe147bfd093e1ab223730937f47e4fb1a31d2551cd97b1aafcaf4c398d032f211138fe208f4bb9771f39f4678ed8262fe7e84db4f6296d8474b3828544a9dcec7e5636dbcad26ce0b9bdd238f87cc50f16a1985136be051efcbbfe21a9b990507b0177458d2da3f9182b433b3879c9f2ca79f0a0b2f4e21bace313a7ea70cfad1566aaadb6908c05db3c185b9480a34e9eeb566365016d3fa31ed4226a04440dcfbaaec3942203e44fa652ea902566f1d1dc66fa4b5bc7c2744939856d18f262fc5d5a9ee8509eaaadf51c75b14fb0dbabd8a82bf454e1b0eaf008415ecfd2cc53ad68aa6fb81e691750d011caf1cf03986c860d3e1eaa89f8c75af778405cb53b8ddeb3456340f2ca69dc3707827891b0b2e7d7921b4d74a4cc23296967856497c15620bc579c959250a6c0a94588c90e7a074a6c624d637abc435e1e2f902c79045b7ea9f7907d96cc2d34d930af3b15c724ff2d4281b21ad29a35c33d71552c51824c67ad96e4a22bfe5f5600049eb77d01d0b8dada48342f7825f3b6d38ec8dde363d3069edc11407e69519cef1ac625ec42fbcf832b3fca84ce13d4e9a8b6ea4b0aaefc26a703c413616b49b85663fc4b68742ffa963c6d486fc5e77abce4913e6b674706cca194b924c42ab39dac2839730a208b6be95e0bb71468414f2fa66ca93cfe22452b37ebe3f1b312889364326e78e9c414651e1bbf99b9d9d20df110394d6275563c82cf6306696e59fd8e1d05a15a249b7fce6f9650a8d092d51e3d01daf6bb695f88d72374696a9a76cd4d5cd5688841807103f52aa51f5459a8b604bb101faea6678e3e7b5235ca64ac30ef08c52fe1e2bf2af700ae66cef8999f97834f0de8f699e45d2e7179e99fd10db22c29d0d8555f880916975344c347f5911503ff390461df68b58da51a3b4924d644f21f90a555ba03c95cf774a7571d7f5f4adb31d95ce7e09d8c95e19dcf355db8de4ee597d969deadca0550d756d304c2c2a250017ec47970d02ada9e1a9f4fbfc6b16861b618ce663ba263d627903727f22c2975a273b93c0ef480e277ff0b8f7313336e871361be64f4db69225c132b483a1fb7fd2fe19ee0e02e5390d233201897edcb4f828b86eef3bf02cdbb0b611b7ee7e1824cfdd9a79c9fbc0866678242f99de636b72afa232af15ea700794233edb89901b2ece87076da2fab2bb3c12c8b4691c1deafb2013e694198d055ac13256fc4e334a84c029a75f02281c4744716b337ba9a8921513e92d4f3f2c72274e1e511f6498c51b91fa7913b2b317684795d118b14ffc77947d719b0a6eed5f5eb077d7b4e6e0d987d9db20dabba4312d6c3e5b3869e694d41470ed19e9e1bc78e38c78bd987abb59e02b752a5ccf97a6b9d46a4af86242a92444deb5bc111f8311682fe2922c96671164e9c1d7abc29e75609c6ab7778982dba2cb1cdccf139d21806a0c68f83f4cac3623b8b4825dfacfe1ad6eacabd971cff2139a2579d9f03a1b21523847104dcc05ba8836b4eded1f1e1df835583e6ff369ffb648793f5e184f260f383cf6ea4af83093287a477daeda3cebe53acdec9fdc2e5cc4b17317667841c722b1f7bf65b77f2123ef80d655f8ed7854ecc98adb1b942629b7e016afd8291c268bfac40f352998763865849e6766d41a3e8816783f6cff564c118fe8c27072d41af05ffa46b0b5327d0ab897707640f2d47d281517c843c1000656f24e9e11166dbe86f2a5497bbb41e16b1bb48ea5dd8a9e1dbe75ffb718e68599382b09a5aabb8a1b1d1da7331a2b8cefdb6c1ae18dd6f61b3131b2620d3d454bd9c4ebcd183ea54b89298ee340b9e3526dac9542b1f3f1b137153bb09b2a5b70bd0055c569a6c2ddea73ef40501b34a0db916c72aa2cb44ad5fef1221f93981d6db40ea0bb18ea130719c5b2da0839a45952b69e46e54a6b9460701cb5ca0f60ab45cb9c9c097eceb972fd2815707dbd27b75415b5fea7ea9e139a37c3f540c2df094e0b50c2ba7d9482b3694428d85dbc4c6fe380d7a6e2953fb18ec979d4a2337a5a1e67f5a927721e36d7221ecfe0f7ddd14ed3e18ff77ead4111ff9fd365cf7f18081921b0209c70b340b40a14743c98da90f67d94a131e33abc56f7617117d5bfd87343138eaa0e64a8e26bc932c0f1dc08ef047655057518927a7144cfe09502dd71caac43fca670e51e5f92d59bc4bad0348dbb6d43c7cce78fac36dfdeaf8ea7bb45daa59f90af77b3ced7cf108105f5643f25bb87381a7efef45623bba7c349f1775cba81437ee61ad99374ec92d5fde3d1ed9404bdb4c3cc24bfc530b85a18b8201466b4b84884a8c029ba85a2dbf031e6286fa85e9f2fe8d9207086878110610ad90290d718ab46f6583afbdc3af3b0a0298ffa5d74774986ecf0600ff8ae9da7d5e5db690f0f12e642277aa7ce220c9c112f1d5baa4b0adf32b5fb78cf7344d977cb951c10f8f689e4a48e03bc5ef03a6fe932a8436639dfd4fa7f17ada4b93ca172c08bdf7fba0a09d9f05cc0146f0da5d2aa9aec098aaac88eabcf9c97581e1a54d6916c700d72ec2a2afeb51eba293c9c648571387c6e4af80f0525e8e559c4637a4ff9a6efa2264f9cefb6397632ad421a38a546f83ee67011ab93e83b56efda80419a012e4a06e831c7527febc7bb458406ed850a7d0960a631b5d0ca32b66f7514f1be9e53dd3a45907f3caa51983077539b44c3262002e3df46877767ff07a292dc8299ff16dd46d024b4b92cee90a95a949a083526e652fbffcc33d9fb8297f4374c70f08c7c76f4533db27806f0f017b7c1ee9cfbaae6222a6dacc611b20274c502eb145f26272b17308f61f2f00137555764f3852e5cef2427650c8a0d6fd9d72ed0fb6261b0933db144960b0f401a0dbb672d71fc6f875efcbda0ede4b71a13b151cc5a8f0407bb191af20bd0c49ea371774ecb099057d7c634b184eb51d61887e7ba0ecd25ae77972ea48e3dd6358bac453b4c9ffd101f6888af8d6ea62ddce6dd7391fc50c48cf7b85799e554d97088a103880bc98495c64182f0e7591d8c438448c727eeae1bf9f36e13419ba2e792327ad65b2bab2e11add4f9a797561cd05008979f9e15f41e5d6cec460f21c10a5080b119e3e11e5d5d5b54cec310dcd117eed9b4871f356a52a11b9f1f8b1559e1080dd596215e51af1bda3d6aef19567439d6dce4d7880b6402ba57e49283e8daa10b7239f035844e50b4f005a051a7bda3331a8d4be5c2f6bf33778571783e4f00d2c922ab5a1fed774b93c1e9fdb451aab6934fdc6cfb6adc7371279ab890a2294472e8630d7fc3f5729c28e7d40d017a6c0987617afcfaa3804d97b5ca2d659f941066fc47c75e59166eaf5479e64b5b78f610410b10d9633db0db8cdae7b7aff4fc6911f8447973ef0bc539af78f3e91a8b822a78863a76068ac65c7ecca381e70edaaf8749af11c456fa725b6784bd64b5db088c94e2b9097ff0ec9610d22c69775a55740e2fdfeaa37b5b2d8bc01b5f88b01f2880214954bbfba22563fada0ff64bf25dfd86151fceaf8b77a6959ae0d6afcf1abbdaac122e053a2daa8934007010da0e8bb7c430efbec064617a1421663b9933649c355e8d1613681dd5602ace06b0708432b199a48c846157801860544d3363dfd9c7147923d1f2ee4eb871aa8f37e152224d7426d0e36237f4271560ca5ced16b5df0a22de2191f015bf7eff59dcc6ae7d2a7c6c636c787f99a9af38a651cd30ec38265888fc5f611a97fc02b3cfb91c008f9e224c2ecc086ae73e34d055bb849da151d6e41bad6f23ebc3d63aa3d75af744b442361dcd541fde0be8247a6e7b538412592022c6206ecfd898853844df9d87ddddbba94b1516a7b92eeab6984d3dbe22d4197dcb506b41fcc9768c62b63cd928fc3de927a84e30c4db1f2a77984e761a8c051c1bc78a6c5ee209f09557429cc2fec8d894a261fe979aa40f4d8e4212437f38b6034fec360114d1247a6f85e71dd7dc8e5c7cac147a7406f4294b75248cf9bab02d9820af19d956160af83cdcc78fe5bb5e480c2e64d34cde580e083cb76e574c48939f7957c5bbf225437f6d522d91f079536755e31f523bc758c7882057788a1cd61b5df88bd781a284ba1610c7a5e826c6a81b692c6c057f900d20c04b04aac10fb7a7a565b2debfed1275c2484cc3d9f6745a1e7a354173d321b6fc1d1d3c31fbcf3a750c71a47219fc352cf9062adc69ead89959a0f74c53b3b2c01fc48cea88b2d3e1033e0789d939fa425583bdc03c3aae4e0eb36dbbbf26aff98b5ae0ac94cad65e70f4f5074881b2d0c49cb79feb7de46f1aec2742e90ce8775deb90f3ff5e9e6adc0bd7bf95f1281bfb6aef64b037d4fe2eaefd9b58b51599a5bba786f4dc708fa01043d528c36224d6ca737df4c3c7ba3817bb101561afe71b91f04721b0c31e762c32c3e0545fc562139befd649ab3fccbb5ade1226e5615c457eed61ce3a92b71f981289c70141fbd0e697d801f0e82c44dda9d3c67e8da991263e052d1e0ad22e1ad098f4262c87f530e3e7ec3c49bb8e118b71a618385157fd4f29427b1a468d446865468b5f0b031ac29eb5c71087a2c4181e9a54ccb0882b515d3148ee7a97bcecbde1c308a762d053886e5e7ac7bc568174abc81cbc2eeb2320650e678c157c7c595a3a9e2e46b0723c33e352bef3f43560c96e34c4de1f485f4e731c6b72624c8f5ba73f00be6900f1ac4a187baffc7b44c2544f354012e51cbdb06c68aa6a870fa77a67e4ea0745af535c03b679c79ab2e7afd0e22ab588ef8287cd2edef5d573472e2e551a4e5fd6d4f399143ca912ab5330f383fad7968be50de3ad477193db3b45946f0b14002bfcd7e9526a251a2dc2eeb363967a2e4706e3da8bb4803bbed887b72f3346693a0bf62e6918a516e64ec4f7e3c0b6b4c8902635636b3d796bbff8370046906e91c7aad2287c448a90cb2bc8ca379aee836129eba6162ab84bff23aa4a8d13dda7e710d96a608a56638efac9830c4ca35fb11ec0c2ce9b3e80ab5423a6105d571fb2c94a598bb71e90cacf30b655efbf72164e04ee6540fcc3e0ce498d67ce82b37758bda6dab736e83689dd2a28313d518d9ecac5a287866f7e95c02d1be2c487181c15aea70091a83c50106fa6b0c5ef9d490e45da479211be8d2f24b1357cc5d5381f76c93c44ea27df9c7b6131a177ae2f7435d26c94c25238d5939c892dfda83e2c711c550582365c07d6ade4fe5a142e4e91d89231df369be0c19e8bf39cc426245bfff9be9e519b02c31896f14c5756b3f21dc850e663f646ec9cf11585e6d8d54eff776ebf480ec149a00ca7455b418fc731c01dd27f67c7194b2618342e10e977637255d7eabb30676dc2382f48dfa7adb1b65ff76178dbbfae965d9c8cf7ca268bc3b74774af96ed8571c0626a36cdcd28aef04335436474c67e6846f6f51292ce4d05469b9c0a8a6b88f606fe5b3fc08527ff54d26828765a790d69dce3cc4d7127eb9c771d9851bc01ca5ba06d3b8b6d0020eebe816be8564f7f9e5fa4768dd3b470b3792c7352af0a8b766ec60fc80889b686947ab4496669da21f9537d2393695ff6dd17ee2af6a1253c90fe326e072d1c0669e4a89e2236794bc8a583de40dd9eebb551e68cae6a71daa4470c745e91ec69a237d11e5be3746bc1a014d175acea2617722f3b5d7beab821ebc6f096c4f0788609b29d04c8b3a12754f80fe1aa596510361f2617928b9e589b40b520f72cd9280f7bf138dce6588a0b6a73c498954f347079136973bc8cd757215f62fc2b1b5a799fa0a1744d42e03b26e79ce6a00cd806263d160be6f763abbe6e3b9c896c204233aaa1bd978bc0e22555cb4a309e58f5c41548cc35dcd8a3ada074d53683fe4bcc1307e5bf4ffb9f318cd8357658162615d811f5b8851233d9c6d14cbf2a10f2939a0befc88307c33d39b3c39a6f8714f7a30d8741e23b6e8459a45891e943c572f5a2cc7efc53c9a0e603f5b6c18f84feb11bd906c54d7f15cbc31ab88c6ec943bad7597bd1b50b83f46cb82ebd63a462f22107da57f4c9c097ba5f556e7856c151ba5ddec06bda8b7b41325f62ff349509997b347862adf975371f7b9ad3a2586439f49a5850cc0c12651312915facdef95b9dec9b0e56e6e48cbd261531a21f2aeaf9f5adc3b4dee5796f0fee10f419e3c008fe90645dcd0aef03d53a520e8eda8426d13751d90b8d26d59a5917b6601d0ad4eb5df0af94cde0b07c9570a72e860a88a88e9b416ec925fe2184dcaf63fc612f98e8353c6e653dc8ae729f54fed89e69cdfaf94708e188626445aee7285844abc53bec1bf6805e64cde155ad022c37f2e126599b13193b5cf90175a0f9b1accb052834fedd99906d9fe0d393ebafec4a180446676d0678a7378329d2b1d2df1f0d893c4d15c9522bbc540508b85d8aafc6a6676b13b2f72f3997879185ae4df11bce3bec8da68caeaa253df18f610dcf810d8f8c834a8607992564ae625a936a38894cc65283af488e8046705953b8294e45c101d07509a42387ed60d5148348dd89f3435db4151186ba9e16a0a51cf08c3d19491f10d285ef7c68b2a160fc405b135453332c9835a8c57e66baee0dc4f261ba688a8c4b9f15086d3a45adf21fb853031b86ab0c5ae8074b883d216717c046a8b7f89ca7ba0e93e7a7d6a630f34bd0b276c850e6e887d05975c75c45739ff8e5f4f75c548ddfbc998d04477262057fe809c5da846a5eae558af024bf95e7b309ca81f0d958e278af3cc3eef5d88723e9c9968d93aa6415a10b9ee4816fca7709277f4851e0a5879c176e83838c599e5b7a75c33be6270ff8d73a43616aef4165c62c577a3996299ae8073591e6a7bf638075785316f8ce9e59f059803c350f0403aca805922504f21382f6e869c76271b09b2a68121e4878bd6c6cb30d40e3f322a86e8a2effc07ef20723de6b76ee65fa0c03e87b4b177974660360a33735ab486abe6b6777d4f11896d1713bb675215e4995cfa156c75a6aa63d31c966df1a59f67a4f65f4fd477171f82d72cc033a71f8c0453d61949a36e568b4849f6cc1af6eec58d1e88867051ffe18dabaa271183893ff5bcc3fd4dca60c1e3502579a8ee41da5a957317fbecfd587d7c9a3eaf5f8bd8900b53cd5c69debcd11b6a962c81a6f041b6eb7e84a9578e9c93e61cf7a45ca15a9c86cc83478d01369abba2440143885a1a504c28df49c88d5712d3e096eaf68e9d6f242800c85d89af17394ddad7e8d1b0f16dcec9c2c6ec9967abf1deac91e4a14e6e857bc9bdb724df03304db8a2d123c29b4c0e332dea903d1d37734453c7b411c1e73b14e26526adf484003f3e5dac0ab88353b047404790c79e0f4ff91af388c74db96cb03653c7f2af1c4f1b807294b5f43d6f635db19108bbe9c8d6ffcb3ffc1d5f3c80da79e6f0198d29e5ee780e39da4b7c65f9d4f55826c7693a9b8ffc5db8e592794b4ba7d75ec203c941bf26b7b840c792c6a384d5d6c2a2180c232894ee0f05292ead9251e97ed43afd3e1d008c40c6ebb39962c5d437c04a049257d4c78ae910a8e6c2ee349a315761083ea61e6b94b17ae15d7e5cef6705b0bb8e0d2d5f6ae7f78771af34f25d3de4220984a1bf7356ca4c1ae71580eabe1ea56c5863bd3885965934344f8967be6a7e4f31f440fddb1638e647a792d918bf4dbfc80ae5a780a16b2e114d5be9f3bc3962abadc0695e2e959b58e0501bcdf4c2d6d7acbecea02cfdadefbdc97cc1999982966dba55c657ec933163cff8986be180d960a3d2089b5ce17d1b05aa2ec2a5d060b7b1ff2b0115e7af102e4ffe8198ba94224c1f0052f40775bb4faa61cfc336e5ad587f06504d396f279dd82b6c71421a4896e83a51dd9112dbcd327f2550e7f9293c9702bf230618f5064ae4613eda822d5f83c8a418241aca583655507c5255bc2ec833cf2dae47300e55b2a925dd3659ebcd8968d5c9b9ee332801947cd5cbb7fa5434b7fbde4be8a39e39b1efae90a4bd6b46263635c3f9921fe3fe00536fc77fb3e6adeb12705b2b651841e4398afffe49b8152b1e190d5bd21fc8cccaf720429c8bb0ad4607ea293a09f872e0b8c4e32a9876d564fbddf809d8394fc01f367f573d44964ea3d31dc9d8a6d5c82d3eeeadea7e40d2e0f7daf2c6046824c213ce170f705d30aecccfb9eaf1bc3fc62430b6830d00eb716abe8dcacc3f86ca149b3f39fef4a9bdd32fa196f3fcb97bf87efea9f03fd47c8a6e528b60796d5bd7fcfde1db2bf34eb8e8601958e52276f622fac5dc8c9aa9d2bb7743cca5e3823f4cffe6aaf61f42245e2f42f01b70da35127dfb1891b8fe6497d26ee92b1d4985a5d2a1a4b0c9f7f90dce78c6296ca07c1fb412505eef8593782edaff6e74200c3abef7f560044af00594ab447a41c3b00a2e3374e33c45084a81e5826df0d5a9145fad7a22ee59d2ce262d60054237efd3b73bd6b4c54360925b768eb0a86b7425be687b68b3852dd4e8170f38e4d6f8e3a416e8068d3d316b4ecf5df7c8aa6bf038d7c2d5874d272d2a57cbed3c13a4328fc8c7094ec08343bd7cff13e8c6192868188e73960fcbf5e12798ac39044197a1147bc76c331c91b278fc0d0532f9ad968d93a0eb66db0ccaf6b39b6bb605614c106c27a6d64c8835bc574989f0aad67cac5441f7dab6f9068f78268e12d2992e5ecfdc80235fbfeec98871aa57dd0d0ec6dc27d901a2c9d79c3a4d7390e1ad3a357e950052e5f1ac4fe2d2711587f363d66c1b1cba66a413d056e308fbbdf616f2bdb85f458de3905be499d5247ba7ec8ee1b64f65788ad589c1c08a70a366938713fc2bba4a47cb6cf4c5b62445fc583956711c98387e7023841e7db44be9ba8a2f7a48798b2b1515a64cde22801369d1d0f5884f1fb34291f9b59ee2393b4bfce708b912a023e1b2faef0b5458c6f4ca00ead05851f75f385cb359c7e37a294dffc70556985c3425c3610607ee9fad6363b6e80c791353f44916cba872012c3f3e38ba8ec05d630f356bcf175c938d376410b51fdec2dac2f2d480161a4050f623b4d91d4a1af8e666f7b593d1d2044a4b62b6c2934ed7990d61e40b7b9f9ef4f9f2a18cb09dcb4b2dfb64348ee5a68f66f52701141a40db8bee050f12ef7707b43b59d83e35257f7da267714347025a77d9939d6bcba0703b7ebd0fbc6079d5b28ad4ca639739131b870ee9b81f56c4d444b812cf8aff38aa35cabe11ba11077ce9d6cde25cf33fb0ad0d8efeba2c50c292f6b4932fa1e242339b655afcd806af5543e5bdcade64f333553f3ca529707dd03a50b65097c6b27c03bf46414ff9c64a2768aed1fce01ae8490209eb992310e15253f7299a4d184ab9bc1f926ce2fdf75396702a6fe730e3a993ce11da6e33c8bc0927202725a8ffae11d82d5bbb775076f7f3772695fb4bfe2908f7787e46c74d8869107f3870a246bbac711a6f44ebb1cdb896fc3969381ddc8c55b8221b920fc3726f7b0945f86a30a73b68e8f550313870d5a6c96a732ad7e6c0c478983df05492650a1855866ee76fb97430f3b807c8cbba247c27b55754f9e8f618738af5f0ca2a8a41b52a652409b420707d9d2765a0f8a6855a1249f0c66869ddb5ff288e9f4eefa05f627372acd71114ebb8d8ab4c92bef1238b8fb3ea61f0bf88fb792fd4428cb25afdc2f591ed7213ed5a6593e4abe27b7e251ccd8bb9eb5c3adcf035bb04d443b8c32a0f7e2767da5631c4b18f2d1a9f045a5ead7ff6443452669e4bff43af8afa76c964f168eec571158a79c11fb1fcba63868db43bddf6b4d1dcc4d969426a1f866d76e477749282c78489ea51b0cc68aeb884c62b43cbec4cb51a342cf5e1d72f4f8b163ed0d4eb04de7eec05a31265aa65debae1db863dd0de7a87fa4dd417bf2e783792c7fdec53e966b761c21fccc84ef775c99e42325848f1d7540e33b6f7e291b5a2aa53c016ae57ff27ab02224ceb295688a81ddca2c7f51184572f7dbc2f38441122fab32fe37511b3df5e0607232a267e4074b47509415f46ae2d9288bb867b2ffe88cfc1e71f7f6fb3d093b35797baa5d27568a6e73031de295abb8f988a33b2e31541522e1e689e82967e83ed7f084e86761d0266e6dace5c37933f2318552d30cfdaab6a6b43c90c56a3d07fa32a83fc57aa5cb4e5b1f155c8e8f5cf06b7c8a09857f7fec0d7b66f21b4a1071abea76fd453dcf7f9c780fea672f7ac277c334638a28f06ad5372e5fb32058ede7b3a212fe24ff0e0fea99bebc2d713582a8301e7a9615b3fd43f70c408ef8c187e74b5fbe97066ffa80544b0fd773007f3c82a9c7c56c1a6a775c8d7e57a776bd02202a7f104c20c600a552099119535a7114558f3599d05f5de8f978b12e92da0734a44b9f191fe2a9355e0926efd7289dfece94fdd90650ba2d9cb4afd5703e578e23a553ddbd3a166c827b7438fc8a9596d71de7cf0ad3626f88a5a4bf96a6957e0c3fcd0b1057210f3f1f1f201726669003bffc75a6b8f292e699914d9e35c9131f010754ca17c64cd62cb08863ac6955af12ff8bd11553c8753279589d35a0da1786fbfd09aa2231b12ec604caf593382f399d584337ff185faa769692adccce28139b8d1d986f13471e10ce9de4d94349f9b159fde1393124e6957e99b9e9115c7b65de49297ac71ef9f4c620e92be72638b7cfd3d2e72927889da5a28d94bf8569f137f2be3b353863e7e30e4b3eb68bd8f645cfc11963d31d25c510afe0921d0642399be349634fb460b2d5907d870c34406013b3fad5e94262fdb6ceda036f4c93e0c5ce71ff594997f07ba5510c0e2970b5fb147abdebda85ce146957c718085c26df04195ad4e49735517bcbc166280ca7c02d8dc7ec015bcbefbcbf2ead3a2e58824a097c13a2f47a0b87a4e42ac9e698d48cb14bcfcbc3af91421b63cdaefd9b167935e8bce1ac8b1682d244d639accf0f6950f43008b96bfedfdfe87f1fe0a16de977ad5d87a826d74a2128f5e35e44c6e22cacb634c4b12d3bfe4768d35d4dba77d4210ff9606805d0aaff7d137acaaaa659e75e7124a077060c18cdc109c42cf991bd84f0fa44f534d4fd561295fb6d6a0e5e2c9c072cbe7d1ef42479d404d3aec57c0d7e98ee7245244932e2dcaf46329c3e3568b8b018769dec0a365b6ba3b967874314568a4150a174b3a9ccf39de3e78876659ffe3c760067ab5b2984ba00b54088b41a927cf5e6264b2c4d5a7c09782e3d34fcb0f6747ada5f74b1cf3ab7ebca386771512c7180f1393477f5db9525bb133ecedfa7795e47ef0218e288d1132a6c4855ed5083577d46e687e2a408ec0134a1a82c7f88033e34096443c83019d332b808b919b87d78a4de4a8886a8b1e23b3b219ee5cfe7414ac5d7c8f906afe354dad9f35870bd01a49e5a3fc2acd9e9b7c16ddc7f01e2937df7c0faaee21bbbd13b2be3fbdeeace7a672a20e5a8af9e29aefca4542468debdf1879bfc48ff08b646face11e18da6c86e9720c463eacb3516b8f51db259b1f1a3038abcad5372847d27f5c123a2a2a9fd2bfbf59e7697fec3adef37206dc3f2a386c2be35364b25bcccdb77519b73d80f22e7a62d9548a6e57215219aa36b69a304ef6dc1217b2a1befad1038ed264881846bea479446d57d04a91e5a00b850644abba831ccbd746cbbf181307832efcdb9c195bfd641cef5c68f560b4800e558e1b42e04a0ccfb3c8d48c5d88a3d0bc4b33e07849bc12365822d6c8f66a8de6896de5431cf65ae69e0ae92a716e6fa518af7b1d5c1f19cb6b351caa922e4baa4515e59adc6f23c6875fdf277c6fd7d47b87ab13523c74aac17dce6c95f4e7665224be1a7144f1dd92368655337cfca5790f572b004cb1c611ef921db503de419fdf08da0f924474e8e4e1faaf7822070315bc4234ac4d4a314be0d4c0b4da1da012ed3545dcfe6b3150bf9a5b5fd299bda4caeb2f45acd0c462b913b793e181c9fae2df083a0536b9312e4922b3e0f21de0d2c76de3d51a2a7427b2d4bc5700d836282c05405af1bf4e8d3b36c0729d670505ef3a05fe7f4e804ece87c0952d222280ed99a936401a5d466139a678d728954591a87cd1757efb3d9f0c3404b758d6280b7ba730344e0a2011513b66abe23ee7a3314fa8ce07b57a4628643d4bebfadc726b262f3a758ae32c00921667c1a3936afd64ae4b682ced50b669366c2235da2bbd37290fbce4f4113a3d5dbf06f34ba87277dc03475fcbb7ab0e202e4f136f03f19fd39e13031e6201c40bc92d54caecbd0b47dc0f768151a663d26a290763dc425013bee7d778b030e19852e8d1b92933dec676410a00495c3d8acc439136dd56f658385cf52630b9791fd967be4969354ee1435c57ff60bdcdb2bef83ff73a5fb148b959bb87d657d703ad75b51f2fc51dc2c98f44fee15073179fe1f6feb95f64102a1a4ebc7309f2bcfed6a88bffbfcb58a6df92a6d64b70669d6402f9de12425a87a0892070a8386248d502c78ef7e3efa6d0419b3c409949a99ed099f6e6b6ba6cf16016aac2ff6bc4f28b31fe16f8822e2068f977f34be05168f11dbdd953f6286f5ac8936ca01722ec838a8d7a5894f71fa5e4fd5b2ae6efa1f05aab36de9331dcdd3f44b7d7629c0f30f0855ff117b867657dabb87b7e9f90244cc9ca18bdbfa55190f8521779dbad35e409206832ce861adf75057bfacd619a717ac698db50381dd16f69aa357fe7a4bf3ae8519417a51eabe160295fece0d46a3078821c980179410abd06013266051c3d6818712768873186e3cf8f1a712fb1013dde8d7a303584247bd601ade2337a1357d1b6608b3f35a42bd60f15499e235c08ba44861960b15e1644619ad1ca861d2873aceb7e9c6def842b108511b2eb6a63575467cec88e6f1dac95543cfc34328830da455ea15a9be74cea05bd0543ab2befede72fd15a415bdcdb66bb5b63d8932093aa4bcd9b5fa98b976f26f87d8a928f57d5e45d4652b776024c9aba3903796f0258e5b9982f028a5049e62e1236dedd48336d440f9143ed9801205f45a8c211d8771295d622ede1bf175cd768330f3ac649ed5b79ae0da3e55df10b1e51a3deca29fac52e9a1ccf596f92dfe2178e328b884f4f688b932b00ffe04597b1d2cc904114dd041176bd4788ed0312869eb40c5c5423c5333a74a6b51936a6b06028dcf661081e29df225d6f3a78b248c4beddb0d9b65d5bca60076cba09d872754e9be105e8ec3711a7bdfdc0df1e1719bff0f184826ab6b5168c5564df65add45d84321a9dcadc49fa82832eaec1799066e202cae5a6bdf75b8c532937249a049ffec0a613005544f9e97b97ae4861fbb2f482bff747670f29f761d69634647db05f04f705a8c02151fda8b88186ca1ff54ab46dc620bbcbbd27609c499e87c9a8a73559bf3ad0ad725e30ae30aeb164ea27313e8478cdaa4a6d2b526e65ba6116d1836c06228b91278343e1319f32bcea3b3fbea846e9f7cdc18fb7611e51a427428f98e2b51a338b784a3567b0ddc7b91816653602bc4171bad55e2362a85886a45461f9f778528414efaf1872452e43a8118817e57c80f20f95e4ffc2ba3694b9c13e71fe95c242329abc395a79780561cb9bcd44b78e52bab021a4cf5be673859d113010ba320c0a1bb38b3c87b4ae42905254ebf2bcf21e6d26dfd58edc84110c9e01f6711be655cccb02459a16ad6e5dddc996f486bafafb6a9b82c587ba50b118dedb3e4aa385a17ab7f4aabcd47b6a63566c10c736708471f830b41a10f3a8deac859cab553dd5dfb5ae39c5f1b2eea552d38c270fe45ab05d047239f0fbcf2916fe29c6f13ab30e5b0ad42a9e08fccc73b9c59c00c46c49d0c190c24730f6912f06737af049b627e8ca830944d4a639f1f0a1c919c150028819197aa990585f58a07781781af1b24004ca230ee59b68d42bb4fceee989981afe780bac1147a7e2ddd97f15982d3ebc52b991b1a23dfdf13520cf2d00e817b9ecd572ea92715de10588b66b89a8729dfd25e8c02d21581291805233732dd281311f28d5756ea07f51755f7151fcb634462ec74d4252488f713f5a846b9e1fe020e2fee30f035e106d68b27ffe629a97ca2ec9e2d310c067218abaafe80ba12c979c86c247075ac66000341be6a3b8f1643c645b66e28a52df421871e19f3cf052395f8c003d9fabff0e14637b187319aa436196ff0fbd8d640af437beb4f7db3dadf0d469c0d6a17f0dc735f3cda436929328610eb78d866febd60ea009f6e9dbf068efd39462818b3aaa04e4b65a198d32e11fb6810533d06e6e10b721dbcbe9f4c3ebd9ec40c2e830b7b3242c13f3df7abfb4aa300bbdd49e1955d03e387af0f6192f1b59047ccb178e3b60c141e45e02562180a0fdaa0c40a659a37f9e93b8a010be8e9e379204e35c758b1030d6afd473f17f1959b3b48b2b6a03686f1918fc41e5c34830648e58bc3834444f108410d0b466e1269684d4d7975c695c474d5326dd4febe773892d82fbf3ba98d29ef455edad03bd965cef5999f3e8a20b1c00ccc883bedc320b4d6bb4a120ed50d925a8b4e18d25c1f45184c9906b27185aec686467584d09a451fe7b3c813de8c13ebe99a4dfd2c447d5aa2616ca658d992aeddee8649159e1c729866ba173f4e36350f7c1d46eaad42137a46f6a9ede92a79e192d3ab4c126fc392c12a126df333b9a3f26662ff7c997b25cec1d9666c8ec476b8c4859626ba46a54af113e38f8b91d450554f9b7cecfa8831c182a5aec18b4d37376521bb3c9b476b0c4dced9ca7b2346f71ed522942a7c7856dfce609e487d75237cee9536a79e1f9c63898478ced706d6639df486d2cb8fde4bdb5ce7321431de42e8a2f88afe8207543463300848020c33def950ac1862acb7c5dc0984c7504d4291753c9e6bfca5b6f40900f1292002f5da3a55554479111ba4d6e668ae30231205e07cb0c3b2d67a6acaa646dcff097acf6876fac50c77b0145337d2497b139c1cf8b217d1392712999e50948a7851d1b6d2a9f78b702d26f84a1dfdadcc7c05c59080b244dea84c086042eec1e3d6d73ef21a06b2efab6b894fc22b34264b41e8b650088d556ec41a7c2562841d2ee5a5b4a2d28cf8228a66e762950eda2734ca2ffa01c76c4afcbadc12f47f0a9204c9ad2cfef3a8ee897b04dfe2a181352982f010fd72742d9178e0185f52f31bdd0fe3ec482ec3bb23d33a86a2e75278c5c9685a1df4ac551393132384441b5c008ab1469f0d68a174cb2d6b0ae5e1da1aa1f914b7afe767aa4c97f536d666148dc93a1a4e6c443cd1d2730130d3a243612fbbd13ced52900f518246a6aafee57a4103804845406e51a38919057f93912bcb44e7131b72a1f9a4223bcea932109041d20288251b0a9073f6a59976c4ab8bb61a516788a4dabd8a56b7fdcbb4bf22a7ac923cb4371dbd03b956d64994e3b51d66200183bbfd922c932621eb5a751ab87438dd52b8a087cf56622802835185f603cc763db0ae81a4fa360a433b931d2a434c469cd677c589494c0a4795c1f50337dac1930eac6352b244ef90cdae08907d5b6516ed2c6abbc0005451a293c77604ec275b77d0a38e9426f1f005dd18f56db8f6f624a22ff5f73e02ce912a19faed91fb9a164851e5e1ed6187ec42771b5fc78b1e434f25fec736a22f50dc78d13cde5cd343a416f53f4dce79009a5a0f5bf14e2dea992861ef91065f024dea5cf88c092e2d2d17d3b6d0f0b88d7e3c97256d01c33cb25a364246c6bf78a28dee02cb52988d8725d2aeabe56a4fb4b507e3a45bcad597f15f000b0216a1e32e30c7eccf157e19ba79ef9f985dbb5ac970ece3016015d6504adca1660eeafd2b3fe38d8b2aff5ae2f52fb53a02e2f58ef25bd44d1c12e57712fd801d72612d24c270be26f8f9af6ec0e530a87772689182c68e67254a255b669d6dff321a1e9d2fe5af2f199ce428bc1b40b5c44343c93e5a09484a509342f601c54901d6b887988b27f7839500782f6ea2fc872c8ce23297a7abc237d26931b12c4e2dbb7433addfef2579ae1e57a7564d7cd25b1bdc3ed67f63a110390adba692714fda7eb29514e1cdfe1c040acd654e7b5123b1b5064f6e746f483931e4517db6301ba255706639c944cff806053fdc2430efde8dc990e1abf9109031b87618c833e8d44e4627b7d0f6617781281b5bdc977f069b97898265599fcb9188d2b47634669c605de2f06b4a8450d3320e98cd051e88e556f3d1bd1521637d2de4aed4a49ee82064577d80538271eb8ad9fb30283131a8bc9a7310d9de5d298deaae65501a16f93aae065d275ec39df11f5cb29fed991f82872557bf203c4142545e4283b5fd711bc6a073209076c0abc5af1c1b8acbf96638a0f780a704f59717c1ff34c047bf4084d232fc4011efe769fb270801c05e619f00043a5e2cbad79b12dfddaf135b65105439a46b16b26f0827943cff6b07e903e80cec368955f0191d8255bfbc809ed1e18202e11f6eb8f75bdf8dce749e2a2018b26e7d5aaf1d07ce4803393d759daca3b5cdd2474cebcdd9ee8f159caaf69f16fed29df9c785f22f689780b0072a5857762453baca17e33b605bc597ab8538216bf1125f87b8b40bf8b4347893317ec77a07c25639f11813ca2609fe122489037ac8d6b481888539afe932c8db58045377f0f11b1606ea47404318423a3116718d5250cbd16f3f2757252f36f2d6ac6a9c99f65248dc53a89d6076c3d49b98f5929ba45ea79183cb93b7c5798885375b30b772afe17147591230559a0484788e3738931cdcfee5dd7014f61cc6cfafc6d746fcc375a05827af1a942ade996668a96bd45c72ebadac097dacebc9a481c0cf92d1bf74f03efa5917617a1dbc9e4a7cdd21c2aa7f06b804e1fbec5e1b278d3fcbb08e18b89524214ffaa879cdf283391144dfc7cf5a843443c7751ff5cf8e033dbba438a83c8499e3c15e41dad8ff9531df7a9ff1a91a24106d75a3beb97d19c8f53249e4177f4293e1e7a5c226af2b3d56acd9f51c42f522ce98affde2110323a2803995704ca4a7e94b9131b07501c3d13e659083c889e1cd9aacb83d8724ddb50fd16a8cac490a79c807cb177ab9c83cec5162e84593e4b1b610a143b6275f2d07ff85762d633afafefc2ad64268bd9872118e82bf4824e23668d6ad43e3d9f15f17dc21a568c6a31c6b7f563bf3a836ac1c79c9581d4de8e6a42e3d0d01144e4651ea1d288ed746ed6ac8528964995dfea99658a13be478916bab31af44270c256e90e95fd3434fa7dbdeaa0766f72e0fae269f232dcd7265fdbb71ffb4e17f1a596d664989bb2f110df58b0fb184296474d462ce3c6a036f294671e89e17a6a00a2d758d566e41b8d396a0a7c20e9a99c09eb2e20b6413eb74076e4c27811436e1c005891eb408a93916169e9093c3293df2152b4dfbc6599029c278c4336b90bad800f58d44a6c4f7ed2ef17b672260899812568f30d6f6bce096c23a27b643cc0b251b0df7b481dbb727280320e470dfd483bbfa79ff17bc01782a2146d5aff246bb6564d143124d5bfff6cad27934c3a906f8eb14ffc405341b053600d2e59fbbcc175cc9702c4a597a955bdaa88a063c35b44ad80ce2b925f767f82259e4822e9718130f090b89c7695e3c74d8f923e86c974e845f6e32f8ecb0e2afb30a7d9f381b50311c38f15bee4d658932e98950c18b2dd9c43e15bb447cf26ffcae9e3efd6d458419ee25727aafaaa1f0115abcf464518e3ba287ce38012b4078e8df8d296f7b4b882a38903080ed5184d9bfd42184042d9c0bc6506f176e7ec272fa321974fe6eeb9f85c0c8f7d30fd1c6a2388dbfa50d222fcb77447acb1a8c6120f548595b714374c8851d29c044e75bcae4d4aee00dcff54e0afc81ad34a9d3fd9f2c769c94ca5b0513a9fd79da685999eaca624369df301bb37e0e151bfe27a3fa74a93dd1f844bc269dcb444f2af4447127e6082efa5378287727e720985451cef21431142a535195b08ae3c9c01ae31f71f7766ff3d123b1356ec7b771c4d8f32422846d5d3151e8cf81892f54c6632d0d7d8549da7f14b2d1264eace448d8bb8a96f074096902d0e8c19a8a2eda293d59c6258c4b10f08f7912b07704f440329a82b87bb7638bc51ee61d3198e9a73911aafc8b2005e3ad83989d773564e3c93976df3426d4b3ada5b1a1bfcc50f3084eef86915f096181ecb31e9def5ae8a6da78de280a809a572b42bb722d62c6e51e22c8d57a0df8fc61e3d53d112f64219e48937c919e2561b5ad6925ead45f810ab35afd60ed89fc9487dc0469e95c543c7337efcd0546c70a18385c62aaf41d24b1a5b3d6d38bae13d7cfb3a2527eda91e3aaba0dfc8dc3d4b6f0dde3d9a8653b6b2225acc1b2ab48c26dea7e20d0f2053da7d517b1b7ec471804f4740ac53e2c378e63bcd866af2b97f58548b3c74c90ce8b28d808311cdf78752cc9c604ac21eb2a0a02ea7727310b1bcc10461b9d7dcb7c51a47be4d46c84abd24bbf117559a565d8230dfeed2a3e343ff74546e8505410c58def2c11a1293575dded059160c84de068bfc8461b871f34475a6a9348f255cc5b24d52169961572862f893e2ff991be4e8942bfad727f257ab7498051a9701179fbb12d5d925b0d1f9a71daa9ea6955526edb9a86762ea4ad502ee45e35462d035c3556f482cd327804831c59ebea21ae592055254f74e5deef57fb7246f09e86b3433f77ce4ff4bb71f6f6df9e65136f738a794f191ee3ac70e5f3d45615fc2307ca7470700a0dbd70526ee3b001ad23bb88fd50e6d543b86a3e68ad051deaba8071b05d0c2e6b810098eb4e9ce0c189ba110909cb1bc7b1e32d9c9e7bbcaea7d20d0c3dfdabc9c6a09aa532adc53f3e583b2cad7920f4d0af7d6c5c47e586897305695ddf5958f0ab818d00d1ae4b90c4e2f765e80f894c8ece4bbedb7def9f5fd9f2a6091dce2bd3630bb3acb7a531ba2fb86bb635e6e6b1f9bd39ddf7ce607cb6d59287d12da853367c5340a94ad232744accc8ae4c2e4f2cb2682025d916b68361f3fccb19800999c2dbc1002e2fc183708e252513b150c4b0d4b32dd9b46b96c6bf84495f32fabe2e583082cd71ae9f78077aa674b61ffbe141aba7896a511a4019e60eb57607d204bb3a0cfdbd4578bc96b8fbc9602c6f8257d88cba70d6dacf9aa8aa6c8b499cf7ce86f876d7b7d279672e74f3cfe7a1b336949c4a96b6c3451b0db97b1b11137610c850d338940ceac94854efe6ea257d95a2345ec4e59c33367b8f5663c459e85f9f9be6787e92a874590a7545ccc5ada582f7df1e68c891ab8632cf9b01ae20fbcea7082213223efb78f6dee387c5321f25dc28055487807bebc0e661d23828438be0b1aa6e9ba38c110cfbdf5830d3994a506abad1432bd1e1311f4d5db2e460254b45cc73ccfa28ff745be3fdebe1807f582ad1b3752ee77ac1c3cadb42fbd42fe50e9af4684d22f99a9c3dee3fcf88ffc96ffc216c3db79c1a5263fba04c07f2868b05819fbfd4a7d69c034f84d439965ba7fc76ac7172c7f2bf6ef5340e92f5148783ed890d81c4ece74035d38a5318e8680c6c421284874a0b91d1f9e3e26530dd82bb46aa09811b37a55aa38929f3dd4fffd77581ad0147abf2878a5da36a21bf6d3f6299a8ef063ab67294f577bb71a64186bbf4d590b4fe88807f6152952fa799624d1c241d05f43c2ebcbe1c66770ae2e427b0f3e8e4c23f3b426a931b2993fac78bd0be8ddf5ace5a1aba8470958edd9661a0319a1e1e25342c99a9d90fe846c0a1383d12eb0f2c8381c0ffef6fd91a6ee9a8f716ba6b56ce19a69b98b36364aec295a26c8cd40aa19f60e60f52b49dd6f16c01bfe04d375a71a428a3d5d72294e8fde06ef5b056c25f0a74970739d67516e2d7cba319ceae19b1212848087da6d413fce62cb970fb4e896dd22fe8e66def9d41e9a9fb10291aeb38631891fc65018af561aa7a9fd7bd87f8161a33310492a4ca3660f4bc41b324be325b87abc7236400d1708f09efc77f25904e1544afc92b1b79cd177baa9d0e9b677c4848684088cfc8d515836f7835c45d6b604a0edaf8401c0c2fd04cd3e0579807b8ba3da29cbd10ed8806d35845dd2be3f9b415a6cc4be468540e8c81cd658b1213e3e882b3d69e33b4d5872b0a7523799fefb1a88c44180b63c47a0926432f451bc403b573def23de09ca66a94a690fce65e502b3033a7a261ca8efb1037b45d7d1747abfef7a636b45f461c829f654adde356a1e804169852a3a61c0ee5c1bd49abffb607b49a9f31306b47baf5d832a1273695305617e3a08fc918fec0e8c1d5bd92f3171336631412e6fc9d107e7e8467bd33499f1704a448976553af57cea1d43579304e98af19fd76edc18cf0013fff569b79d1ddafa31bebbebbc81f120c51433ba63bacedb48fac4867144d2489cf84ff687a5cd20d64bbfcc9ede491ab642a7c15b4f0f08213320f9ef034c42f53b086688402e9a59cb859144dd294a70f4a7f0572bd4902963e155f3acda36ae6e2daea75367712a839b1b5a46fe69f2153c319f73b92ecc0737a1880f650a4e2547a88d6fe9426226e2e1bdabf84df016b448dd260f98235064cb3eeeba24f410994a0f3eb63b1d13e33a9f84cae16f92aad6825a2d485e11983f3905c00cb443ea1a7059a754f7609b8d519489983e33d5e83367566c0eab73d08f81c01366ce12d3eca885ce35cce873953b9d9fa90bdaeb627884392887d3368f8e2d0370f3020589230655b605a0ce5583e6d8919ff7959d6d3b8100f97d7ddb12eb2acc72b36f31775ab3fc1ba7fb739b5480e653a94477a12a70494e0825bc88405dbc89cfe5b3bf2975d073a4217618884138e2972db6876c404294c549e6ff2bf1417d26d0789887579bf5c8613b4cff01a82f1f43bcb17c0e4309129adc8739f81d04145621fe7cd0b7c1e34eca16bedc5f6602d25b5f80a3b820c341f14932c63a6a48cfd709c541abebde3ac42421ea347ac1efbdc266c3c0b153b6c8c6544923efba6decc458db53221167657cbff218faff32d5c7b9a8fdd62448414c715afa2fee1919930d06a8bd71f43b409ac9451d070aa3041e34a39e95477e58ace66b1a0030e03a1aca0f53ff56f7a1ea6c1aaa93df8cca9d9af8e871a14b82f07ce32c61257710c9bdee7da85fbb6b852face7c2dc1a03ee63f5eb94d862ead171c1168e08b6f51229c32c39b656575e4d4b473752b1964b2ae263d23f2269114daaf34806472189d9df48ae793c7535dc5d592ec63c7a3ac2109685219a4b96e72d055b7a80e35f5048f16aec183694d2871653ea955184e4e78f76aff65a7c69ae1e1523e2a8851bdf1e2f50e4c5992b6808eeec1f4b6f926fdfd634eddbf5e8f2b8364d4fdec184c457e8d6627ae5f657ed24d84ed41c9c0141cb7cf98f8ccf8b5ec82d839a568049104e1aeb46c71fe3e747590bce7c1af31e6a7330edf98c304bf51fde64b9f44a009573ac7feeb89549eb82a2d5bebb821fab1165bc860396de469302b4294ec188af5b367b4e326aaba7ec63c60d9011183fbf242bce2bc6cf88a89e8d341aee7fbda14df359dcadbea80d061dad8b005cd345a7ce9bb56943e6c2f0493fd748b0d167328b29d058a72b3f74ef5089d13cb70669b75369888031a0cba889c0eda874d65edadd3db56cd3e15b27a04e786af0d84c8c044c8708a7bd9d569dba95f0f03d888eff9ba9fe179700bf00ee8b6cd1f8277b71de8c54115fc4508e29d15dd4cd961144884ffd551364eb558faa381568084cf4da6a4e91754fcf59cb4e89ffdc93a2c0dafd870aaa0c1657b43593eea53082cfbe209de269b28b87f9385840bf49136e1ea8246add2a43b0290f7f49d4f42b267951cd1ce77438de9576d1075214df5b9ca83d39fd6433b8a050ef26903f5de8777704e98cb1bb08393a51a80febf4bee2edd92aaa72063038c0b40f1babaa48d10ddf05b3ec62fed1cdfb3929ec39bf0faf42e9e7d23b0b74d00658bcb3f88aaff53a264d859373f87afa7439946a321999c4ac3d4ed11271fb67a576e6104e7a300ce02e01bc01e259fdc164d7ab91de4e1150c9f1718463233dc7999ed516738f3543c4f93b71f0159f8a650e2f5608235de8531cf8cae1808f80697a672a6c356ff56b847dbd8f744617bb9bc0ad4c2a5b6a277934529ca38894f8009547d7339efd49bf7add706e1e16ff40457d9cd70b00c0d03bc55e1c40b772cca1c3ec659c3fc32ee7b80a300f90e7c37ce2c8b2bd55d883ce168334fecdd2a34c32b371e63f45400f7f848bfac493c3e5cb9d931ea05f95583f261b2036ea26f97548f167aa8eebbedd4a529524ccff2b9565835bdcd46a3ab91b72f49686144d63c8449c225797c8b07a1693594376c28535b19a2c5752b56d8c3970d4b70a49073113981b2499eb47b1714c1ec8a52f8e3deae5883c00c6e5115697e8c5175eaf36ba682a507983ef532341eb4464b42b76398a9bfac3faab215b6b183288c78c92222fc0edaf88500a9bf088f18b2f87a17d433911f77f5627966429fb3ccd27be745f20cd290b99792f58b5a4a5e492334f9fd7d50387971671a25548fe5771b90347ea0e8a6f9cd345ed2fe7ae9a5d2ff6fb6880c1d6987c9f895614f0fd67536a3c18f3bb8ccb761f8d81b222361e04ad6856b2a1c3744fb0a788beda489e44455bb9ab8f2025a7c92335bb981722b773e6c43ed76241d915edd4d10210d2ce9d4b37f1f218611e79041e4cb1a5f22524f3dd15a50b6cfa977e9cbbed1f0a5305d1f97c44b11d7e3e502c32dd42dfbfec7f5353ec1610102e6d020c8fe413c6a1f6e8a9ab73764c6c454576349684d63a0432e54859d5d76ddddfaa9f9663d68b90b4119c8ed84f6a14d59233b01a123fcf987ab4c2f71bdf9506830e0042c4a8cbf76c4ad88edcb9a871bba7630496ca87b34165ef7457ceb4592068fdf4193e3a3b702fcdd3ca805a651af577488939fbb80a185bc3983e05cd59658dcd20bfdaa6d4753418b0eff219a4b0228f7e5b748f5fa02988d39fe8b15c2569c0ab02284f4b322dc297a2a5134016b477c0f3c16f57b2096e08f987120eaaf3fb253973d2d835e1e7dae5ab049821438ce845f69781756c44f39f502cef053817922a57c263b1b2f17e4bb8980f0ffaa7259d74150baada983c3ce53afc1a71c544287ae081c58cacfa84dc8a24d3c9991326618afb31d69bbffd78fc5759b7ba2bb90a8add40b799af6f7418f6b22befca4ad07d2ebf561a203140295ac3507ddeb06bdc6f519387e1e8ef286b394dc81b7e1316113bc91a630eed9aca3e24ba359efe79c9548261ff9076ba1d96cddbbac592f2ab78cc2a31980ad76e3a63b1c2691b24cc9ec16aead352a1dfc7b85888ff052642882b90565984fa7f99ed98032032a22a9c07b640c356e1dcb7c68db2872f54c1b52f300f54f433273991ac795a27778c9ca6072d30b7f384c5c7bfbbceb286804cc558a0bce6bb0a07d52c6df9adbbf82addfd54324b980a551504a2907fe8ab4e5416cf9ce574f3c9ce7aa35ebaa0ddb6fc10819f4b66c2703cbe7197db8d12c214bf4d2f086346b240a95568702870a6f5826bbc796f12dc70392f28a824ff3f8029c07051fc4d4c0f1b95c1b726d422dcb286c5c6a2ce2c66a3a49af1cfcd1d8574b1b547b15ad586bdc2246e8a8965713ff3372b1c31b097b4e94eb81a590d0607dd39bfd86fe8424de18374ef2de2059112c5b43592630eaf239c304c6aa703478ede3caac7968e15b5a4d53013ebfbc3ff88ac8f8ce0a51dccc97bfd6cc17c03ff1e5b32ccbffd841bba7fad79e1dd3f962b3f67d67efc2d09c7350c862aa23473cc9c81a9fe0ab6d61cc1aaae9b634bada5db880296897823403268a2d9b4d12f026a64256dd809006ea439858829ab5b4bf9d3c82b71a7c30af43d8c2e413b2c72f4e0be4179ceb674c5509449c69baf494cfb9c97054ab88ecb04d1b407cfc1dc12eb666e59c3716c601e4ad2d99cda8f433fc01c0ce4c2175d0f2e9b35cfa783075ce7a234efcda809b3931feca5cff1d64cb76def31d260fdbadf341e45db5ac24068ec36c8ab25f311240e8ce51715ecb6bd06a358ca509ce474b513e904d124d915fbb08485c6faa8ccddd63903b8355a699ad94ddca875bbac5a50e7f4740aeb9d0e235c6ab628924fce7699f8e4e4df1d8e7a565f0972fb9b5dff0454990e81e8110f84810ec15ac52feb64d5adcdfcd7b4bb724c22ca52305b2f4296511ee76d67c8e4184893f5de6a0ede40ae42175d11db18f45aceff71ef676fc4179f52f7e45d0a05f8e6fb8837a2949be2fd66fa95456013b9a7fa85f14cce581119a2b40764ce21d3879b773009c0beae3a94bc0ec46db4c75cfad810e0b730ef9c3c0169adfd19b4319629455547a6634e5a9074e5f2153c65b4bbccc1bc3c2bb7e948395388c6df48f130821ca3e82f57abaed233007a43e6b211ec9887a92736acddbbdd8dcfa32d70d3354ef8ba0b23374ad7de11e2d0267537833f21e5ab261270861e968de3b11d7225bd9118ce6edbdc8181b40853143c832203e93b2c1e337ccefcc2ebe2215d77f84ae85c0a9ae2cbb0862e03c5bd75d8860167a12671ec747c4318115fabcc9db895611759c8c9bd9d9f3dd09fb05bd3943a63443e77b4caa08a424aa285d30eabb1f2c0282974ef8a7107efd231eb14cfcb42b88167be25a9e9fee5f3ad16ebe84d3d9217e409c6f19956bfa389c693982949a95e93c3086c3d7ef06a5c5d146723799f6e60c22f9411ac6f82beef338b770c304a808050493cec39ff14cbbf11e6cf615cfce7f9d22a8cadb90973e8dff09d9f75ffdd396037588e4ff9bf989d836901083406fd0021942847ea6419bfd4faaa60700f4913b05549d8be344ac714ceead20ad8e557ca0439ad16296ef079601694296752be6d1ccd2c014f8addbe2cef294e9397d9c63ed072d9b277fe12627b8afdf52da934295ed7d73e01dfd388a3a7cb271a9fd2852600b3f9dc081cb0b1e754d91ea1d11cfc381b264799f2988bb1fc7ab68cbee7b13e81b83c241be2d8a8535e95e94e9d86ba64f12f46ed608ffe2f6e25e1d548fc8a335dc15f3da32932cdc735e066d0ba129a52d06581d763e81a97a798f9a6bcb32188b1dd2c3b30ffef2b16721aa9869aa40b3f803a37f95b9a4bb9254f1938a7dc651d0c3fd20ee64fae6f04c4635190aa9d5888b6a11fdf03fbbf5749cbad985cb9a6bfd80d581386681b0a4a20aa7b1cff2a8c0cbb4f19e8314e24bfd069ca937f79bd9d46bdbdee1112bf325c3dcc566b0c65bc51e3021e7ec321fbe9f7d13194b68e5daf820069990cb0c93c8872718f21f64eda5c269ebb89fcf91a495b1d853d7cb1e3aa9f554be28a11431d17831913d1d25524bbda8a0d6fbd13d5df63398d95e3a7aa4832bcb7ede58fd9a1a0a3105f53735176d9164e3a9508d154b9cc0dd84dcbaa20b6edc0c97e9a4ac5f440971e11951ad7727418b5c6ce7394051c57af7313300a038c1048c14497c68a78fcbf05ee99ee3e6a1f03ce7b66b4fc2925ab6497417e6b7be3f342420d941664c98da69e1c0bd0e3e570827fb756e71da88a038f36fdeac0a3c888eebd6c8067cf775de80fa383a81665c5012ae9b053a23667b28e059156af80d31f41c149ccaa03baa987ae2f869edb70264612fff09c3fd5d2b0342f183b8d04b0452eb217255ad04a18ab796b52c02caa649cce809d3f9fa19f477ca40cc566f4868e86fa21ef5b696c046b4bc020a4ae8a089421ea12eda3b8968feb7ab8b50030287e4ec7d8dd7bc3ac03d29970d67baec3f2f021ddf789fbad309c5d8816c447e771ae713a165708061ab9ef260991d18a744a39a0c838b4ef5194f45989dd1ac0e49f8a43c523f5825435e32839e78944acfd1b47dc2bcc372770e6b96a3250470477294ed40358e47bcd109e9662bf0d9920d56a90ed2c9a1039fb477bcf7e6bcedd8d02ec93ec9b9ab4785b3e09c95e7db1e87615e0c356ecf3ebc54c1b3f9d5d5b531541890399f5fb60cd2bba9ca897987f4f4ef6009377cc788bef0f37b3cab40bbbc557106ad25336b84cb77a9fe1b8ff4893e76514fd37241f2345f128028e23395eec971814c1554222d11e1040e607f93035cb86ea06870fc3ae60fd21d0e89c4d2cf4ddd400d502c8ae5b7135546566c95e5522d343f350ac544c09ee79145ad3a48e9e84c1f5f73861625e6f708c1e77f8a66c876298ab20956f0845f8b759e864417102b66b40dc36157a9ab7fae779d807ddfeb89fd88bc5e6a866920a32648ce81a99bca1109f37ddf7bffe0d90bb1b6ceb950069b3b6609da037c136e1168a3066334a99fa7583cd491dc95c485c8c1d050271a5900449ca2ed8bb2f1b3c8cbe73eb081de2b649059b4f5233d93c0d473ca2dab9bb722d2faf7412e8db7aebc35b87a4b9eabeb82e564999bd6472653d909b3f3bcdff0428522c88e05a5d44adbe22d0cadc911e7a5c04da35a870bfb6c76dd9befefad0a5722dc63aa03d07106c160ce34d8a42d0580546754e697fc58eb4c6950d774d94bf078ff57da55bbc3f37f6aa58b47f6c428a5f5e33507381c3c4ef4fb845f77e7e0c8ffe6084387dff1c05e6b60d8d1c938a1e8fb5f70285da46b4dd076ecd7df40c7367c412d926215bd743d61cdce1101f8d5137765422cc6482930653331a3296d37ba419090c4e5081147571b0e522612b9e5c4eea3d1360c1495f0c68507b044ca96c8bdc8ec2051dc5215fc59c093fc4c656877d0d758ff4e700927469a427bb86502c8e5a41debe26b76f39f9ef28f8ce69118edf6fb207ab8bf6b45227058d0b349a4a65ca57a64600be99935b5382d793a0427dd5f446c111e71a05da977550c720b806cfc5f1cd4fdd9ca48f7c5640f599b9c17b49094b4b25a4751ec1c04353b72f6d5f8ab7a363da14b0b0caeab30ccd3afe1e12b46008eeb47938767672a40fcc9b6a42f7ca8d401be74da85e977f30fdcb132d26f39cdfe68f7d2667e78b90a0984d77a1196b84330dde38568c9fdb6e8cde0f2d8ab7740f6fb4228eeb31b747a44c4e5ed2ab0fc429ebf018364019e9b5ecd8a1c1d5504abf8799a5a72c66859ab6acfa1651e757993c744a943b4714bd917cd81e33bbbe86de69c7983aad29f2d0bfcc7c1233ec8133c33d47653740f25ce157d77fd3eba0ce9148d01dff12a1c491574d3274ca7c7b1cebe7d2129a0d95ee5af62fba4f03da6ca18bd22f79bc6aa697380d93a8d7205cf827e12e1a7381a913a222077a41888a4fe7dd859f46d5b57cf4f1d3fddff1659bdb8081f2f73d6f5d1fd0cc7f719324bcec02b0b9d492dd8c8d113aec466ee8668cdc02ffc9883c3af779abb7eebdd7ad1be4957e4181a8dff408e0a8a80c7f0ce45fd475f25cb873f1458a3376c11690063eaec019ebc4acd60273b9b42277e082debc65e21043b990f8197b5a66a00fb53ec80fb4122117638ab56d9338d2f3671310f4727fb57ce4bdf0a9b88827305d0ad6f3647a5152164ebd103df7ffb6d0063c941d8e31061d50a6ee0d37b1236701039494b857e26d7314cbcae03e3c51c07c1b8723804e451d1d74ef1412ca9d580018ddfd83ef123718252b007d4e184e0a7733a814f7ff07c6dcb660bc289522acb24cffbd33041c145b2bc17a0723344d8a1042dd862f746d69493ecb6f0f88218865e4c1f21af7787bbd3a85ed0cf604d197986872a23cf21e5242cd24c82ab9f0d4badeae36bcf9c862b46f64b87f6d2e5f635e7e8a7a1095e89e5b23f6c54fd728dc11687c6c945806a691df9f818216fcfe4be9ffa6a96c81b8855c33d7c857c913aab4c86394b8c145fa54e987db0a26ee12726642c880411410dc384d09289a1f735ddfcfb2961d6f3f795478145ab757fa2b0527a79a95ae826672ffcbe99151855aa2e0b62ba0d499f75986ca4bab96daa669c391cac378fe61ac267a6dfbb088ebcd9b92d4e01b93c321ee3848e055885d57c484d5ca9df6a06aeeebf387e344305dc1a72e933bd36f6bc2fc617cdbfd3ea3397c3feeb62c2ee06eb035cf1d88d4c5c3b0195ceb1d93f3dd74f7b59fa85a1a2dd16390a610bda9b4221ae832b55ff90cef902365c6d65d4618cee3b6f306ef7b1e9ed67fe02e2dd9e9c093666ac7803407d5cbde60bcee9baf4e009b4a0cedab140e0d9d75fab4188a4ce1bb94a3f322035331464207aea08e0eb48495ce26adfdc5aaedc46e51ef2018b014836ce95344e8d5a0127261987d5c85682e52488ddc88411ca7d71242f340c4abcdb0b4b53d88782d1da59568bca4dab6d2adf3a8b6fa216de011e807cabe8acf093efec445b471f32a50e435e79aa19b6a3c6f9cb2d29d9f69252b8b2367f2343d152c217c767ec2be7f320717899b07209a862db7c4203b71e35de4f0f374dc25d3a637e92ec29bc87bb49c2a64ba0e19baf805aa5577ce18b9754eff17ce3e1bcad598c94af616163ac1e1d207399acee56f07d3f2f344b3c7b4a6940577753d9a187e151dc42bcde5fd9f9e611ba83b66dd61769891c66e8a89c7d466a082d03b6f88521b064d1c3ec14d3c55edc8ee0c5ac81575e24b4af57fee66345d71071de373cc4b4b2b92e3c8c770a55a4b3a7176118c2b3b1b81a55327ceeb38737ca76073b8154af37f30f235570293246261e7b484443aafbd6da56ef63faaa13a3c9818a408cd3a971a8c29822637ddcafeee1cc85316c90d849b6c080e9d15ac02b2bb0f226cb4885e55df23d57a2150c72a7fbfe8201042ae209043d724fc3a997ec57f8cbd4fdf3fb9c9c21322af65bc4b044e9e3aa3557d045551f01e9df48a022634002bcec5cb0d736076d48a625e711af7791e6e9ae28a3bbca123301feaa4c64e337982289e5ea254ce67f9dce9cc2d35c56adc09cfd617b1533aeb0364d0f50f7cd15c7a08fc7d89bb8c070b5a9c39f3c6decbce1fe891c7c7c7d36955c941a0f0f8611397e9054d7355ae9502cb3203fb4e27c43a4203c825fe06aa5f8e6e4e6bf1456a9bcea1195aabbea4f820f662958b860b8824a53d1b79107e42106bfa948c3cbe43dbf328f2c3d740fcec447e8c0ed3205200ab84544f16db4dcf2950e2afeb49788e1ef6342ecc73912c35d68e718da4c9e1647c07394696ffdd1e52411af9a1b3bbe61768e54f47ae1f108ebe4aca8e063119f2b91ec62e6da436551c7f1818028dd53b9b82cda627ccea886323576f2530063d83dc428efdab2fe13fe156d0a9160f7cb6c53df6fdbddb07ffe8fac5ad478b9ebea092d89d475a4a8b4efc63564869f2af740ea6a6f7aa7d1595825eb871a60955fd91adbe1f84af6cc367a62c7417871eddfd2b295f8eb47d4f7841b57ffcd40db5c1d0c0208cb98ea21f29fc450f09cb0bd02b8b6d5a1a8f90346453833ea5ee8a83a139c5fdc50e3e5ced6caa013dd794cd2067049bb7ece4a8c53470800d7ece1fce7de1ca563a66342eec7a2ded8e0f6943af0dcbdb4f2261f3f1de6d9f5f4527213d4c728da10fb0d2bfbe6828d588db8928ef4696a0c0c986276fda08d033438b37116a0a5c6fe62562ea1f49ea0af4ca79a46c8c32fc006ac43f5f5ed048ea40be95c8fb590190771022c52ce01945b8dcfb123902178f0a1bfba5dd081f228e40968df57c6d8f107874a6d6a1a0aaed202e1da5c18e8f77a19bc1f3390750f624536862962667969a4f64f1faf7a4851cb4205c9e62c7c8c458136fd820686067eb71e6c57f34d5eaff062e15c2dd4a26e7e3772e65cde1d810a4f95b2187bcf4edd856bf393c732fe6a2044a62010e402d88e86863aa3e9cfc6013bf1f11a94a22d668ee6a7a531814c8e87c3462b67250e28a0cacf1e9c7544bcef588109d3fca701ecf701b93420ee7491a4101ebf4daf87b81e6a405ecab4fa1bfa06be409e35adad397dd519995d588ef9de61804e96271524a7534f173df4a11b03b75ef18ce4a9ad7034dd42af8c65f0e155f9972746d2914af5178e39c358d67e5eda19ee6434e9c4f56867dd5f45cc6370aa344322efd43ca48764bda9a961a8ed2f46b26703a1918b48099aaf80fb153efb775351c7390c5d758d5291f15c4f48d8f6f958d6a8b72ff763e7dcb5115be1a7f35abf0cacef23db69373c2059ccfa9f649e893328cbeb4e2df89b4397e4c0160eaaf17998ee5e62c15f9f514749daa6790fe3ec48f671be6a8183c4b72c6586d25e35e75969e49082a511d18bec54630966cd85557c3b6b55100c8beaa9a78d21494a81db4362493829660b2d629be6e9ae675d1dbf0cfdc74a2c2d53c83151c64c9d0423030131ca6d48e0a6bc4b771abf57e0cbf48de9d75bf367adc9f5a8620a414ca47b990b026fedb20f7be00882163f3ba7f328bd278143f51d64631a27031cf0bed46dfcdb8da0755310ff48b378b4448b6e03334bf1b34b51dc0c0f7977cf66458fe29bf0f89707b6b3a92d600ee0893814d480ab57a61d91e5eebb636ac184c02a3db5ef41fbb3aeb083a09357f4abd41c17faf59409bd3d920ddd2cd0fbc193973ff8c418cf40f36fca722da399e673d89278801fe482b40f55b3d1ef3b43ae4685333364c7811eae102bc24a804c0d3e54c9f87fc51caadcec390010cdc45f8d6e2dbd88caf0e864fd4cda2108a1c3d9ded878d69263cd139ae58c1fbaab6d05d1beb9f2e1501b74ee21ca1391c97f8ee2b8677defd9023978bc6ddf891843ab9148932c5a8e2a257b38fcb7741a1aaea3f2b5a477d67b4eeb6baabd181efdaf44bd71b1dc84fab1bbf7a3137bb9768e5b31a9b6e17ac9ced9d96a614c37a61c126ba5b98701bd0ff881e03c309e40ce1bd9142733ec803a4faa734d04e6dea38004420f9ef760223531b32563837b0399335d5d2af2746582491d914ad30c65f4354f469f781f27df4b5eca7e1fe058a89f206b4c622a8f1f90a24bc0d6129de4f2fca80e63aa63c283023cf26871a5cc62999cce805a5209cd47c4a58b964e5d790d64e0e0240cfa7d969af74d7665c7a51ca07450f62672434743a4e128d62446e0252e18cbabf1ddc4fb86104afef36004cb16ca0237e4cd096fcf2415098bd44e2b1e727d0454e3bdc04bb31f4da0ef7478c259e0da274bdf6d29b7b99cd2936f650e17d6947f8798b23004bd743d049099a4219a292c83ad7964f65bc2715763df0adbe631cae8f7f660ad859732a53066fb1cb8a6a106caf927f75782e80eb3074b1f1bfe18e5bda7ee366a6ca30a57c1c7237b4b3d1e2392dc410277528f507071735aca2524692a12410f9cc5578c6cc33d993d3880cf635bea890c46f560f0b942910005edba084ed1cef5fdcdd926cf588965257e6c0a1de54ab5a751cd5c44197b9454dfea2663134920d19c4b8dfdc5591c5a0d41a59627e565071ade247eb6cc21062d2f0624a75a4fc35b240fb76f1c3202f3775ff20296ab9d2db447f3182217011e1b006aa3e083be2ab0a6dce97960de08c54bc9234a5bbe99cbbdf08d0e4819aa891343509589287714560265ea27d8234829719177737c9ecf6a472716ee32f8291ab2097d503edf47aad3b2b0c01fe1ff0e300363e525924c3a6c87f7a0ab22a697bfdc23fbc3fffd4914393b5f899a5047d5e41deece4de699a421cbc50f65d028f2f173c2db4e7e2d9bb00f17012c06481974b77c7cb37e482f35147b8ca9307a84d2af22d575ce16175bfd474d482dd0d05ac0327a14cc4692384554c7f553f70ac4ae29c1d6c054ed779703d0b1014760f7ef8d056b29061e3d465245d80543b33d20925e71b03eb1802f70383cdfd949af131535a053f2173098bbf0406000884488e6bf79355904b7469401bc71eb9976f84d929ad3b2dff0fc0d2113f1a00263ead03800cf90bd318a0c39846f5c4f6fdca49ee2fffec67d55e403b225df90af72d626113e24e241079c244b4e43c81cad0deeaae668ff1af2790faeb7e80a943b6b8e348e79f9b7111ced26b67b294d025c5b68d1142417741be8bd99b4a7c5b006ce97bf00079833c80df305b5edc4025919a2e5c9994ce9fb618a8a73fa1f31d2ec85859f387ccc0ab389ea8ccd78e3f51656f1ebc9f277bdc68fe140dd2956cad1ffc6d74403761db69daa6c3dbfaefd646d673d52d8d0d12fcd61a3350aee60253deaf82ab5ee80381b67dad17f4a30f7f6f9cbb25cb6ad8975de5aa97ff0a56554afa6bc0ece1ab8c3d90d917f7ee70a746dd282cde04792b3e065cfbce3e3bb248420358ef2bd462529c6c1580e8574556b60b2e601e85a31939aafdce5806291ce909f77d5a6b23c20419eca88a9602efdab0edd6d8f7f4703d5dc1e8838ee224b2a310d2c16cc1ad03564735da4ef1a46761dced27960c3ed6e75b031825d2f60acebc636524631b0914caacbf62c0a3103ccfee5b1d59899b14ced92f50fa465b7a1ee703b576bd1ec8ec7017096d43388262cd41b051d419c6a05ae9c6b795ffc5fac2ac57c268e6eb00d9e698e672773ac003043a844bf79fe3f20efe110a1c0475fb5ca43c62cc89508fa50e71011620b26e99f24270504913a2af1ab12d2984b83ec03d45dfd12cb6b3fbe2b050ddcef2169a3d3e4f55fe0cf9cead10f5efd226aadb716a5ae2a6b0f7e0ece8646298d8baa8990d9139724a6ecb4f36596f422a43469286e5a716ef74960b9b88f715895d847bff22d3f306358be61e84b2e78582f8db38858558e51db230d7d4b3685de1fe0322e649148dde7f48a10ec4851adb2ecfa6227831a544beb52fa09fdf2d9f0a6e53a354301e583b1c2dc52aaa1456fc07287f599ebe1d8681be01515ac1b158ce5506dec7328ffd998baa869cbe03d042a890ff83a13173df1f9b39895b085de0270a2261682dda46b1a910a26fd6cefb0ab100429b02ea09e532967d978e2f01c272491aff5ffde0d99e8003801d79b27caddfcdfb9fad39cddd41af3f965ed9ac05072739201f5b30d097e592c3b9bbd7e0dd95e93e0839feadfce34b944c32c9049f50d187e1146bdf0ed6c0227a4a292d5ae1a9ce6cc755607f3b5700ad3108a1f4ea47937a9363e153821c3efebbdf094d28bff1279eda079f31d4e8cf24965681486dd11569308f7e14010f5e159df8bd55627ba943851819961360d3115071300c836d717ead28637f51b719ff20ccbc98d92d26e7fdec2033cff89404383f920e88e0615cdc96a1ad8d88d134f909155baa22ad0b2d76a49f9cb4984c469b3aa00972ede23f85c32af4593932203bb71abc1e77060b9590d1a3158131a80659b8a5e46c8bd5cb42e17f196e122c8386d7d037aa1dcc1f6ca4b125f658df8fd606a10d23ffa3dd2002678fffa06f38aa71597c3861751a1132b9f0da191cf67fdb020d8b1048791a00a714228dafd4de4ea0a9455c7e50b6fac3d0b4329c31f2a6d02161ac97417e21c79b06773cd190782651a396cc456f9f52e4ea38414e98b25f9d4737aac439882e5df3ed2283b8b3ccb35bf901100f1e743c41b4a4ce465bbb0900d66c5aaf786c4c2f4f37bc3695d3fe2f3e909c57c46e42e7e11923f54756276cd6e00c3522c4c9c78052fda54791aae21dc345a4fc778a8a8bd0d325e895d56e1ec2a546a69dedac1bdf23e2ce6a74631eae009fcf2e9318743a0a1b22782a7f8b98cee5b39fd24f786f7cfe0338f0b782fcea10ce0feb603b989123dc03a125f4c933d1367fd66d5133077f06d6b6bb5b9011b272bef6f274ebe33e791e63aa16ba7cd2c2df66cc1a61c48d01d747bd07dc270a292b45c4bae6b18367af74747808268f1a150f85c2fd2207f0a49bb2eee067338da635e04fd9a621f26943833e74e25bddac31baf60e552d5a501e95f16a52e09f3f6afafccfdcf75809f2ab14d3044c0e350c5a394e70d25a13364327fb2ae32eff4dcf9e96d0a7e16be95673739ddbd88956c25808fcf49f2608b863637c4b1f97c89d91ffa427432799acfecead08ec3c8472337eebb303943c9078bb238bb2bcf596901b16b211241a5991ea9216fb6b677458c3aad08c646f45b84f0dbbe5e5c99ebf6260ea4b2595f512d7131b4ed616a8bf727f848da28594d459fbbab2d3dccbe4ad3a8f82ce329d89b0dc0ce02c581ee31f350d5a9b7be9b6a532bed5f113e9bb80fb9ec599c48dce5d8b361df1192e7c581dce7aabb9e6c12f69127ed94c7a6afe13bee59ef0bbbb02c78b1df5457d60fdb3f932ad519f841389b7f03ca01bc301b9c41ccd55a1336d6c0cdf3358eba5156b755ebfbf1629788c7de6a166c506c10bf191b7158a190a0691d3787a076b6bc1a56a0c8042a39de737dacd2e82ca1405254d4438e5c97bf392daf1314e6c0e71e99357ad1ab71ce938b85247bdad76a51d363909be953c6d91228b70b3a306c58efcee58668648216d830a7bcb68319b8e8c03c95164d6f349f9351fab4e8fb335e082b0773d6938e46b071509f25d453976eb02d0a0459f36e967a2e8aff6ccc81c31f078e8efd6283da95a9c02d6f34da2ec0d7059042e83c9715bc357e55062315bb861adbc1e464ca6274eda429cbbfdc66888f85939570d1ca31b938289fd950b1dd1a8e468923d4f750fb6e6d308aa14a8841a1dd2be80451e5f637109cf798d042fba512f925c23e5de8df445d532c4f138ba534a8692184116879473bff11423fcb70d8b24e2c767707f39ee1add93cb36bc4e5fe14e6791d63d7b679ce5e2e9b4de928bab9d1a2e864b45831f0010d267fbbb913f5a8e8a03a7b5cb34d715efb0a4762a3f939cbbf1cd2c9dcfe18b4f9d1acda478ac2848d2ea89d5a36e290ec9528d84b822e9395d00705e02b1131902699cb57c4fc6b307a32adbaa6d478c5c51cb439f61e990ea59c0fa585670084dea12b770f435c183ef7344054801ac3652e00de1e030d4623c38f11538bc11b123a0a33c9600b158e553308fa6ddfc7fd0368e6ced07b0fe53d214a3404fd87d64c019d8ba5fafd041688f291eadc0c36d8d3f10a8ffaaf8c5f50cd4c424d59d215d2bcb6fdc67ced21627212d3e73d978bc0c53f53800a317990d251ab94e17ac9b72cb5fe02ff6a3dccfd8c78b34939f80641e0944352b0b2563db00bcf629476eabb825088e1be1c0e528aa38c1be64a3781edeb2f5f8b2f5a8064fc9c00b1d2a0b56ce05e74c5ef24512914e0eacf1007a5ad7a2837acab4d8b045333fc8ed7360d661cf9af86ede262659f295010d5d2fbff8897bd2d29964bd6247eeef601a48329cf526ad30c139c57155fe5aa7e1413639244d6bddc4f74ac86ecce7242847900d0983d39f9fa67d1530cac9c92d340bee213a662eb01870e19d519d67220ec0b1b43346ba6db808a067c1c378eff9533f8ac8e84d3a90ea816cf5c61dc334bda0c756da6357cead0990c3239d1091609863de327d17f83a6764a743671408b52ed68891e3174f9d4b01846eab224b1118bd8525f535f22c690c7770f07b4b189cc49dc313a987cb0b2cb78905592ac00aa8638b3f5975e6da937edf7b2c1cc4b6e8635a533dd7d13f2024fb13dcd20e3b2b2994c4b54437b847ac8db76812dd6924af395b10f2bed3c3b5af7f8a613c9f996d0c2eeeb6a5667c98fca3cc2f778ebcf736f2d05509db3bd596810fa2b16aceca9a00b1cff73d723c7dd4538aae4566e254ecf09a806302b6d8171cbeab360521f5245488550f124073a1bfcdd8c4064608d4e9567fd237b5a9e973edb3bcb017172d63d5ffb7500a0d357a1ea82de7df9597d95da9c2b9c750fd48c1d8c95653427e158439bfa8dc1124d351155a1352ad77bd2c070fa2625a0774b15fe8a489a93d01b812c919aafb8043d4f8854469371b2a063d54be9669abada5bdbd3c41a71b02fdfe68018fbf7ca26c18dda4832bc4690650648ec65a5b7080174fdd52d17b499de68bb272041b397222c52ebe1f0261ec9dca38db9f4563248b98b5d4dab1d9ed6b22bcbffa15fdca906c3ba2456ebc68b7a2e3423fa1db1e69d447cab009a3b84fcf282b5d8efcdd720f5c25ba814e2f80a367e11d7476500244b06b5e470c09561678fbf5c870f7767d12181bd0e6328ca57aac34438bb2a2c14f8ca93f77da22111cf5a701c5dec6766685c3268b6c2191a4063dcfcd87c4ab918aa06b3b5cb0f8eee3798a5348b3b583c8ed8d5a6ba6e28c6d314281223632f3fa1ab5fb7514b8d46f70f31cbebb4a733354207f94f25aa45e111670df36bc6ed20e990f38918cff8bfea75a83bd8e26c701b4a48e354dc2dbde5904243378f9c7635186396e239f8054f1d52aaed8a0035d7b5b05e3c2f772e5f7c57d2c1b563be98603a47d976723f91c6895b4bfa5d94a625867b042be9b6caf98dbed8d2d0b95bb919a0753a8e4dcdce17c608e5465e45f033660370cf804f8c739fcfa03c29081fc8f8192472dd8034abc079f042c85e8d4cba0493c69aaaceb96f1feb1af848654993839bcd7a347ef9b71888de76c20b182c6d603629f33224dabe7503ce8f1c9325f45438915ca19f60717acb36e5b7888f76fcc27b76f0d8c10242a92d943401844fcfc39596ee016b4eaf1d9e917398a3ad63aad7d4add83e95f39e8e3f409f0bd9cf483313779c76a27247591f233fea6b8d40bc25be4ae6d94b59a37c934be5bec9112c98ed55f24783018e5ca67fa23607c782ee0680258a1b1587f04fdfed811fe4f1f146adfcb1947a20afdba78e019161d02f6db2d45379c9135fd623651b99c0541b219de38164cdeebf2f33feb2c70580f2e4d70b7db09b483a5e585b3febe1bcbb7161fc8f9b26a615956e12189f14268b1808c0559267eacb109d0be16135d345286b8e27f3f992cc58d516fddd1b0e5ba0c29a47dc6dd3ae96db4efcbafe376011224c915aa33fa9b8637b36a5b9ea8b8604435062cdb3d521fef42152981d60809cf30b9e74682b0a60474a2f674931b6712728aea21f27df1cfc19cd77818bf379da2b35d9e62f7dccba1ccc59eb16bdbf4d4d0c40a040eb37f761ec6863a0ca82364295ad67b68fa53ab25af4866516385bbe775273bcf624d22f185291de6408318606d046407a05d9eed637515624ecc63f353baf25be641e4ee3ca6fde242b7d516313fed92195b778de17980cf0ca712a68f824590af3acdfeda8965ae32a61d7ac61d13ad9ddcb7c4a73a3ff88ec11ea4162086e2545f371d4e0fec639e5955254d28f3870bcef144c67c2151867fdb55880ec529126dc06e4d4f93ea26f61d9324c3d250043e5c9dcd3d2338506b02dd5f4fd7f3b91e3d8c7fdf18135e3a870bdca0e3d4b8ad832aae1fc259f6ecfb6697c6b605013d77a5186083b31d588e72ca28e316ee87697fc4ce528ee2eed57db3199777d6795be49cd9065edeae2eee5df684a90422036cc234cb299e5a6e1ff8c07cea7611aef115a12f52aaeb4c88c9f664ba68896a6e301a1197d4a4b4871e9cb6a715926750f0ec420af89381725307ec102ceaca6be6acc6016acec7f49ed8e159abad46cbfecd7a436b2a9017005de37bc2168a60f8019ce0b2cc9f6fd851fa637fadb8456213c2b03696b32ff496dbfa74890d693a1fcaabc71c151fc936ed65285f46317e9b901fefcf5d0b61dda982f4f88a1f00339e005e170a85b2370609b2670285b8b5659f8614758efa1c02f49ae7e913af9f681ac61f73086237fafb1749862e8c4b8b690b08caf3b105ed4e6b040b5c1fa1bb44c3700f3b8b891e28a047a797f53fec89a9354a6414a9387ca7c1d38eaf2061a329435b0f4b6ce43861832992e7c220bb5feb95f9e6202b9bc4943b343944ee506ca97b7db103e16616ad95569007d16ec9ccd1c0ba0bf94de6880e09b3e06e8918ee630ac24b2845d6bd94a6ac31a3b8273f7e2484d2742d8fededa629842c624628b13758f81a3564b350abb05d645e8d3d4811e12d0a4e32674a3ccb92f60aaf4b1e00336a1cbf5eaf88c04ac55df98c9414fb474c4e1f491e1c693a39a4dada5f6a8ce7bb2ce53af709002fd116d76acdc7e36c03d8a1c1364b2eac591d93bfb62aaa97f80de4186abdc4a54ab1a8f012cb91af947021991dd017d9d07d3aade7abf9e11bc3bc2320e930248fb67df266019a32b23b3ec36e15d55d61f20088cd54d3daa77bd83210f9fe59d9fbec13101c4a0137196701b513c5e969f0a5072f3170b449ab9a8beb64076cae2567fd7ad5ad6d1cbf408a1f30dbac2a6af441308e29163b7db8777b4d952ef28ca73910eaf49a12a54cd1d9827f56d81183fc612db40130251cd4e5bd208dd9370561e7796d00cd214838b7acc3d58e887bb6e9f8e8df3b2f8d82ced06dca4942efc2008490af49e55599e1d762f11e204397aeb723d75389a0ba35e0c64d09c5428ed08e457f1009d9b75291b880b26c84c95a0285437384d90f40eeb718ddd6979abda47273ab2ce13823c935be0aeadefd6c6ff87561e32e9e0b5dd9e4193d01428d41f04c0554cb5cfe2089016b05fb68e882f29d33ab3e9c125d64d940b3b701d63b7601aa309bde5b34b1c2efe949bf497e101ae967bd7ed8180f191de89387bbf7a442d87c9cdd16a76b2fefa54c21ec3346e8157ef3eb427e5242fcb1d7de496f685e81f01264e3e9a2f3faf86c0e734a1a8b3655fccc940fd13123678cf8fa3a4593407488d37f2215e9ad2b42a4a735fcdd07138276ef10878dbe894b519dc7db6844c48bcfc73c9949d859ff37b7ba7b6f1ad3bf0ecc6657f054e541b99037f396a42e0a246d8cbe5c3f44778f5682355669f594815e60747efaf0b4cae0af09b77b347b381945440d0fccce01cf67d1ca4aa6aae8568b851b6e61387aeb1efe784d35d88a7262483b2efd18392aabc18038791532a1e8967a2ca8ecbd2672808e283cf2b52cd16940b4a82415fc5704e9ff7b56ca906547a5c63f5ccc0cadd2c7c1e8443d3c22d4d72fff4371724e6b8c31b6edfb246abaaca3683a68ffa7e174bf04b62ed2438258572b50f0e3eb45bff2016e3fd2adda24073804b9cda839105ad068379501b7f5dd38accb537e1dcbb8037ada1d097ed69ca27d922a5b895ffdf4d058ec2bf9ff3efb68ebb877f0806436691537aca94c7c98841a2664b4c9ab6ddfde75a305e02dc13cef9d3c66679a626325f901059863f031cc2bdf02728438dece813719bac908ef641326e9438f860bebc7aba9ff3e30eba8e84dd49244d4f18691e900381ba146033506a4444366274bcc11540839f2330056cef522ec5ef6f579547e86f984c40c88aa36c01fc0035ec84a6f75681d49e0d15f58677eb4ec3b8373c00be0467b998e285fbba296213d79552ee41112a9c98ddf4f540e5c1cf5db3e53e05fd634d14a98d1eb7c2ea7686e7f4a2c92dd36053c4ac2cd7443520fda4738ead08f13d4e9c8705c772a720812d826efa24cb95e4f31295e15a9db3ec280f74981c3bc985132d3b1ffc45398c1b39e60b81ae211cdba97831933a4ed5e769b9b97275e7a74dcd382baedb85c9a22a510adb0c28c9a68b26ee67b998d7b2dd836b22cca91a09ad7c01f0d3e1e4c503c145b5ae81b44d5ddb91add056bd638d0852db8f01ffb5e4aa8afdcb9e445e70269dba0e735728561d9aaa91279d52ec735bc7f9af09380a41f821e7e09e204e635f7ecea3ae73ed885c4f242ec8b67058ca571e04dce5e64f1fe05807d7e942e6b808fed78c08769fc862c8dc95d66adc1a990a88f69e014860d6c18cda5fa4d37a97a09ebeadef95266406448be10a8c86828773d7e42bb9036db19bd5209be416b43b4203d7e35d0b1f2dfe519e66af79b32170c767f99febbb9ec188b0d41bd047c57828b3e76c3d3f00aca4b4f69b2b0274115d48717654385d9a2ea39e4cf2a41c9bdaf5c73cae641abcfbab503f2c64b71ce35cde5c96aae4fb0cf6270b93e4d20f9ec7e31bc6dd4de8244eea31faec3fa0287d081525a9e567322411a29e3cb39d2b073c1ef772bea7599c37f32d4cfb836ee807a77734d8ef1003ecb26b60cc125f13cec0c368b35fa02be26a0413321b342d8dad2879d87a448b8e9eaefe5aae3efe56d76a78315d73bbd3607e40a87df913863be28d0d6e38717aa8114547d1a4b0cefb9745b023de6a023f42668a606f20d457be99cbd84661d88c0819e4329301b13727285b109367a501dd736acc03bacff9e9451551454f36f262bb474972f1c56b68c454aa959e0501849adaec1fa0e62497767d58455683afcdaea592a7795527853697d25abdde68bf5f1925384f8295e82f6ac9258edde83310f09ae7102d8dd8c1f60fdbed29f432e898c570bfbcf1a8bdd7282a68474153630e4658b44896123e629b8a139989a26318ab5542b4eae12a73165dae3e5ab8761eb8de7648424f63910bede8f3a4a8ee5f9b87a3973d766a268d103be50ce8da4163afe52606fa56856f067fd768f9a802dd8ca94b595ed289d0977e0792b12800c43b7bd7f7693abf8491eec7a489253a6f91d7bff87960de392deda4cdd686e0896fbd3e42fbb651cc06548ca8ad4fc80a3382d8939777caaf399ad2bb3e0ea46918f70a1b6034363862fbf1a56d233667d7eaa88930ba1daf42177ddda9bc43a3f387acbca54f5208a87284602a51c471353c35da39a27259348a0165bab18a08e8debb925bcea235f7fd7df9cbc11fb45982964b220eef8424076dafd4a6e44828ea53d7ec35783c193acad1876c03248e9581bb1d303e46479d28a77f2bb51d27ea115d5e4eabe7d7b666d42c97ff54375f6afa33fdbdf29dab9d033ba69a684979dbd9f05633a0f849c2343bfdc1056b1624c8fc127ecadd222805db14540d7990cb49e33db1c0037570669bc8c32ef5177378ffb8b38120779ef310e9317ca178c0f4328f007385631eb0796a3bd98cd73075faca753984f00bd57f4e73bbd7914686f4972d20aed56b4c3eae132d675f1e798ba01000076f56439c82799f29ac1b482b7f03e7336652c04f4b2065bc2ade7c63aa061cc060dde42addba3e545f2fee5811f220e79b75ff1bd6f85ffbc22a0e831d7a10682b4791ea109ad90737ff049fc5f36c2315a0e0a1ae956c2f0ba57329dcb5bbc8806259548840168b11a1bf6aa8a7fa04bc006bd692c81f57ef67946ec6cd39cd9d0e33ff164d5a47c4b1eb4169f6dfcc218b6886c31aaa50533df851e0928303bab618bf289867127f2232cebbb8bbfceeb1862e8d5917e4c5abd72bbe1862eadc0804921678cca345ed8ae5219b775a58d3bbe30fcd82dd6d77ae1a7871e8c8c6a34b9481819443c51bee74fdc737f858904b88befe57a167266f749effac5fff611cb65efc2f8223457b905a8b88ef85f77e498767f305faf2211fa28ec2daff7125a263f295457110480df6a896ad8d142e7d977f28623d4539729c9e3e65593d01e357984d635d4c8f0231e5d22c26e4e7fc0fa32ac0005c3ae116585975d685311c974bc5b11f215b312e6a987ad13f9d0f8941e3fb6f7700cb4c98faa33d7986fa4a0579305771fdff8604292935ca8c06ea0c773726672bd9af4cc67667f730530736b5388e837062f242f33b5b710dc385f6749d90d34c8da5ff972b1c1ce0ecb248e81f9718569bc027ac1b2d271f80203a5e28657f00ee11f23470598d86f3c544c329eb09a551f91d1a6c4c468867ac9dd478c9b8fa3bcef4005ee807fbe6e1cbe6870bc6e4ce9262333d4120d470f9f8dc6acd7d3542c2d2940ff2394a2a75cf97711ec1b7bb8327117a3caf21324cd9745d17b3672694cef6eded28f3eb95546c812503b9ed811e4e4799769bfece6bd5c024aa94d4d19f8a1b299ca3138254efd1d2f37fc7e26dd84cfdb4e43af425c1c095ee27c95cd1f1d3d940fc8b5518ccc91cfd4a1c1f86009fb95bdae54d01dfc1ef42fe6590a1b1d84e6e933567bfd101825cdb6560c3e464680f90b3027a271e8043dc5ec54583184dd0d54bfb033469cf604d7c83a5a7eea690bb5902c0c862b164fee6c8db19cd4365c49390fd5585bb690e78ce58c7f372b14d9f95c64baec0a8d933902c0ff1af2e6ad27c57483e11712dd877977c13963169424c7be714cbe4736049048aa981130d9943e37e3864eb5468d628758d49836a661c709e9782e7abba048d3e553d4d35ee5632c1ae9e06e8907d454702b2012ecb10174ac4458c4fbf55a3ee658feb93b46023276c5ceecaa7f38b8ac0e97a5b4a7b0001d01be695fbfa89a0b1a6174676f62683bc750a683726c62f1f077bba061da1b5aafbfdf7c7043197f07b6a7320137efce7dab951e7a2252599f6bbf0204820fc92254d9d3f5d1f06810749a1f16aedab0b78e787d3ec97945ea44d9828846a9f16227b44a45884f9a7f3d0d9d61ddcd03509457e08c3b7778c398ee29125c0c99c0ff1a502d91e2a62c098e5db6ba2287c4546db02f42b1adfe9b4df842fd3e92f6813740875a3cd79d2d11a79c0ee04d0c6f613c233e31a64c528204bb3748a6cf883570edd7514230a586080763e66114bb6f1a85cd70e3a2fcc091293fd31b4f37a9c369950f421ae9632cb7ae8a3c62b7689495d3aaec771eaf81180fd5e4c41359a03a8ae3a1356b54c9c5dacfc19a21108d2eb3ad1cef6a922df7ad96fed8e9e6a1fb2e9846609f4192c92b609ca381392a4d68eb072099548e72a849cc778cbbc5cdd232cf493f663a73f045b6869e15e1e00ee24c1bac548c090059ba84559de92fa31aebcbb904c6626946a0ad8f3d98983a515a85ae7062eb79fdbe4dd14679c435dc742ca50bd13434859e01eb51452e25dd6067eb4ddae0774c2f07a4ddcb619f39f236477f642ebe5105cfdffdef4ed4c3ff11632b776a05d9f59e4aef1686a95e9485efcff01ad4e654aacdc105a29c56752ae35f85175029de888cf955f6ba1a4a44f1e0fc08e3996eed626026c356ae6a6d4895c1ee5ac284b03b8128663c14a431579e1203a3e902304e91ca59ffa446ca7cda82993cdf15253fcbbf88f83a0554191dec576f6c55b63a1232888004802a697fc0555672fcee2fec6b8fdbd330d87984d6823c56eab94e60573073893d4fe7c2e5d3cd1aebb1dbbc982ada7d1601eb78db6a9ff2c3bd0c346dfdf88596688a7a54f32688ae06c7ef1e210d0185f58e4a88cc91d429896a0ae2d40463c99bda9d699959ff39048b365b83bedf42f7c1ec68e12b5367051136ac35033fc70ce5d5b5ecfdc066d987525fa777b99bf363f44555982804fb1353cb8b0815ccdad9411db1ad629c53d74b0db661db46d0b3deeb16163eabb907288623593a2df3a754f33339d1eacd5c5489810ea902022f20000bfdda3c724628be36aa7ae720794ab80209f044fcac056c21c3b0512f0de97e857f3890836936158537e59dae4bb646915de21ae91c3b93ddcdb52ada8ef1747de15a84f98d353425a789a3d048c0e79b41dadfd936e7b517c2661aafbaa7b0aa2e83d3c0d96cc37b28333bd30df9fecc3b19fe1adbfffc03fc23df989b3f8628b975ffc237b511fa8ecfd0ab86d304ffae716545cbaeee92e758a07ddd5e9eec6f8bffc7d3959c26028871cdfcfd0cbc1d6c45d7413e10071753cb5e0b3b83038c512300be29cced99e5346d518554d8d051ce716621c55b890ea426de0e1bc94739cc136285e0579ca2712fb479d8eec0fd0e387704366384620b884516ce7e867840588363ac10ed56525e3a110f197544e01f6e10eddc70373f5f78c2a983836d0ff2465a3242d7795bf770697606d9af237b185136761634504e599b38be962e3455b5496bb01ab9e5a1069b7d1c69ff4c7e181325cf3fcc4652cf832db37a21c48e4b0ec0c6018222df455c1cafbcfeee1c820f3b5f0e601092253b6f82aaa9da934d1b7f272d3c990b89be610f3342dfd92706b17b1b50c8cc40438557620d76623acbf11b8f02761f124aa84fdab83b5337194805aad3560d61dab97b9d0ef41f3208339e2e4118fb85ee10e0db888b9940ea69140e43e9000249b040caa2fb97f538c57bfdafcd6a847acabff1a31bcff33a09ee7f8ea21bccae99e1dcc83c019d4161d932c15ad57ee0fcc3dbd22aebf2f88ad5fddef7e91d141a19eb621ed5e5a2e93dd84d7588b4a5c1d32ce527287e7371f1df165bf0bfcf938b755c56913d699125c85b8cbfe7178f73e3dc0a4bd94dac962345ee4ad14680faf3da74230289160634d83127fa034f70d7a90482e17e724d5a4a83defdb8d871dbaca6ed3250d71c2140802518ac9ba2d405691a1538379a74d6ef6289da699ab063f6c666a4a5ed04bab68de392a3e611bcdaad221ad0587ea9eb3290935d1450d39e945ea119c893620ca99379c021bd20440215e054cf17ec600ea909e8ec81ad1408649806ebcd1f2e8639d3426851bbb599da0b9b5d2582d2c4912dc762f027df74a08baa6c794cf45cd21031292cdc8d00ed58ae38673d451b5b7ae31769a962e6d947b5a8a06e3c462bb563a7742808b85d77a3fe41baf11f70088030e3b77321baa74fceff8743d77a21ce02470f68ac44c978aaa902ce787e75156b00921c459a268c273bb762723e6e3016537987900b78f26d130ee6247106cd822ab30ec9bd59a7d38633f5385ad933ab3c49d898096cf8be9873dafd78078a661ef6354038b00185c05b18f4ed77967d7880045ee238f05cd8bd6db7163a098c21c7bd15881daf3afb767494207a429ec8750bedd61f6c388aae0241749c075189f7c0a2a3a966e3d5d0211084c4d7ba5c2ae2913e1c6af95100965d695ee6c699dfd109efde60b795279354b2044570d70166733cd2ee16d9363b4d5b2be6ccff2aae41291b0c2c5718472a3740fde2fe54339ad9f7c89d150c14e7c0383e926315408e794a96e18159b974f1c7474cf23a76f5b6161674258cf883633d5e8a073e018497fc6f84209adc1faaf80f6ef57de18e0f09f455428f4e5c2e74e0794277db3f6a5d7746248d596f3580fd667c22d8ef8e5a2024ed5e26e2485a0e5b85f7a2b5c143374fb44b8946f281b047d651f636d0f70f4f4acea46a0da4233c9de9216897fb78243e61cbcfef5fd1aa1e0cc89a41cd9a7b42bbc48d2102f5ca1459def374b9faf6bdfb57908fad20819ac647ce19f70c75518878aa6210c0b0c827806c261c6b1157b6fe9a6a87633f7095b21f659e7fa78f90379e76add8d3804dfdf03a8a5fe2deba90ed788b078aaa9bed3fb779e1e06e9f042d1d6bd55b3f41807e6e8c241e3004751fc598869be0a8da67b777b817437902e1dc4c0def080ff460cb292dc8672a4b3eb39d1d44daf2ed376b5b2c3e06437a4db836aa2ef2e7fe7f5f811cbff9419eda075ef39437a254b4ee05b7988cab89127b1b63126a1fef106cd43f4f09f603716475fe7663b21facffc165212bb4eaed09ab0116db172405070eb7ce04d1a65b8416634b51c772f118bbeedf199ae2c8c8f7b96a75fe038e43af8db9e6dfbd3d9c3e78c75a7e8de76bd38ccaa52228b33b6e494231434ebb6573573b40fff1c1a01e0cb8bd1c8f9c222b24c6875df6436f9a9cc97fde507784c6847b234fd797a120d48d61490f70b98828b6c8b54432003654c59eb6138869897a016b67e005d55d42074b5bb5b663640b5e9c72995f4508e513ec4932a385e53235ab6060d291c714dc1bcd10296f5c63658bdcaa3a9cd0676fbc1122becee95b0e2401de9eb3a72b9f8e361aa5d6c651c5c2db49124c7f8bc5f5d18015c1a45d21003cca57d898c995264673216065ed60cd467d3ad10dffe1eb3014c6d145eb4f53b507ebef470f3e63b882521f212da7e97637b4ad325971fa1fd0458744d2bdfb58eb54859dff00b6a431decad720bd4cd3be14059a3c8404341d29d3be45d105f363654db57fd0f883e01283702e64dc02ab8517f2cc6f0afe92c003d95654e5a71a2d9e8fe0a52bf1fa05957d41315675818d998d185ca3fd4c3ed12dde67f85de7515d170acbfc9416e2bc923f9a94e30510166ccd30b37444af5e146d4289eb7ac6f9f71966814f65ac59f35c4385ee617adb2f225c737282695232fca4729c7ff476a7d72c14fa79872da0a2d927daefdfefc94e76fb55c0c516315b4eecbd3fa4dc56bab7abaee9c9a4b4320e71e3f9e2d258d85fc633064bada221352680e23dee046c54dfd15ee0dd26f5a6d8ac8db0c7042cf3634ba8abd80ce15932cbb61f58bb280f00e567ba4a03a993b0594f5102f44fa54f33d086957e51ec3298ee68156f038a2d821518f1007e0cd3323d9ba25a5c6dd1dec2d365c7cfae9809646dd6bf3f4779ba9ff49a0d787ddbae7e38008da7363c67ca2ab697da7238506dcae6914563e621441ceddc7d0749a05e7caab31529442300bb5e3d53bd7e9920cc89249387b5d5c4ae4cd91a79121850dd56f8056cd7be1ac84401793a9f2b5b86d95a3eb31340187544a640f9fd0066d99579995da96e0516668a1db2b084136e80b520863b911207ae07c298604dd9042481cf6073c0ff93ad2598a546db33e2248abd2bf110068036d7391742f1a5833c50dbf3544a2d18d3c8bdf03d402ae93aa470e45804de5dfc788e6e056b0a54adc44b02132ff8b439fd3d0849650a6a41474776e334343d67593e0f377fc23322ed682c58204747ef08b18325377e5009f7633f937f81818acc36ebf3c4b039fef313fe73af47f2e29851220ac9b4890984f7608eb210a2280187b8d53393cd618b7ef9cecc5e480dad61923b86ccb1de7bba2414fde157b9284852df757027b3363a7b9f132870fbbf86f622addfd5f6f56d2bd564e5d2484d29d16d1ee464232225b51f677cf469d9b7dd390dcf7a7efa908d541d114333b96d4e6921cb4ba1459c97a2e622814c93aad256d828fb2c06cfec2745088552b5b25859b42c140b9e72526077a020b1d81cd6a1d5fbafe04d11fc55bdef1a221f7306fbe235e7ee669f40f3437d16c798a4a807e63e9b06e8caccc7002e49f1eb4b0595fa57a1a0ae48a803e267e43fd0e51037439c36fafd489e0f6d37d3bb4f023369fd1dc15041465204170903c98c89c1ddba7a0ed3014d5b2de95c973d8ac1b1a0fe4d66495e57d5905238bb47bb5ffb14bd7560e2ad5822f5192b38e546dbb4d211d4343a9cb53096dc92da0e2d375b4b724c37efd3eb505572c37f95420d94dc10e69bf9f06c6b8d5ccef3790be0002832da86558e442c988553b11506ab78c3646ba0759f9b5b9272af4d92801ba465c13ac225362c83c533fe7b7960f6152e6f15ff7d0c11db5a46faa2eb4b78457279d76ecb084ca02da0281adb3ab732d0290ad36e31a8710962a69fcc24a3a7da33907d18f5fa9fb70a7a93f7e9763bd5f6e42898766d7cd7bc1f8f10a1b5e7d477ddd368de07e94497e2b498e8a17a026b2e3243effbed8c0a17d12178c5b5a184c336d5e458a2f046986cf7c5f80c5630b2bc2e41596ebb9a53438feb5107cf1318207e57e37a1dfa1c1e32cfc09bd6c4a0a63b282ce01ac37c14a6f5914cac1a1b91245c916a72aacd1f65316aa1c3cad27daaedc0a8e903a6e71e2563cab52b36d7a18e57cae7023aa7a111c88fa0931cff655c012d2cc785b2f0ef76c2800013e73c130f2ac363fc06bf1238c37e906fcb7f2157afd06f149c03cd91955dadd0dd63642add37d3477317f7d4757a616710145519580f6b55c6a110b09248af7c22dd44c6b1ea01744e5ca9237f9a336df74f938410810ba98a9f78c8e2bcdb563d6a2fff5335fe0c0ab1687bb361f82e2c4cbd7aa6c18725d79f146c6543ed75076a574219ff1c555f480378f75991b71215b36ac8010094ae2cdd41cae00444d20cc9caf4537f402b19d654df4e938fdb0c321779bed32a43acb89e9b9b7b786593dd3e92d7e8ef53d233e3331189e19473530b4d2671433e998d8e9a101279d26efea674e6fc0b1407e1f2589e8b21dba4e0988c1b3528ff0b3a2d9b73d572e0a93580b23a988d47c4bb6e53bef052df77027607ed72728892bfab6e467d2c0cedd21ba0dfbd433424a7af8f9a5019d3163030adf1c7911a92c17be50ab486a1aadcd2cbfa38f6bc840eadcb3cefaa8499993ea387bca14152ad65eb993efb4ecb712a4ba41cbc11b4df59c089139f78470ed9eea4ee6d57d2818905cce5380c93fca4e00c360f0803c08ce015c9ed00fc8be94b3367aea30419e9d78accbe01ce0e31d3cd7f088d851113dbf6ca7c8b812c45f8ca5d05375b59f44fb698fce532e7e0c8d1bb97438efd2521ed976fcd114be97ea8ff3edd7b9c53237c4e5d6c20f782d162d186e8a99fed8d57ca6e28d5245459296b1c90091a46434de7d4185683ec9b19544347eb2ee90e205c750a63ca017dffae52420e9f1469f44cbd0be63fb577621fe91f4c799c699bf3e1c24067e79be14ddce353d28b493266978dc2a25a1eba2ee573b2254c12bcc255354d3cb4528cd4181a0eb9795f9a973859dd3eb35f684024ad1f44b0d2911cff6beed8ea06724e6e968a5003965c09de40b06f776670bc85326070ca36f4a6f789bd532f629ecdefa9d1d409c39280f1e14e47847fad1deedbfcaeb5db59cc59a091d22400ab63fda20373c9514d9977c59df87dc70e74142a2b779802bbe8e3c7f6feb5f237229c1609ad63afdaaa45a7b493925c3c08f904c518f3e3761cd660ff060c1eda555e3cd0cace56a59dd2c205e0307f9858353b78680b84b07ef63e1fb93fa3e9ed51c0e0992f267efa1672a4210839ccf75d30abd9359ac48776362cbc8833c4632c35864778202448fe5e5bd447bbbd8b7f4802e2fb19395c3cf72dd850918d6235d7c5e4d8f60d828ae06e63a87972d31686b1e7eddb3b013f8e2bcf6f61d9a48bc72f797601dec820930f1bd4e4c4e91b10d340f02ff13e0b290c35ebada152266d64bf6abda7824c129382f7624daac37657042f230cabbd5ab20fa1f6b7d58831530d0bf0638d53440f91c4c24c891dae96b5e7b18cb02932d1a6928c5c4ac7c9605d7d25160c009aaee23351c853513ccc51763fb91731a951321a5e3bfe9491b9b9c6ad2c31a34f19a354df58bac6cf8c59805004ce6487a82497220f91a73ce706d4fff5792d4bbef76def6a2e50be6c19ec159bf0b40dd1c53e07280c02d920fe0bc902bfe43608f9dd03f2fc045ede78efb16e7ad08c3d889d8bb0a876abdbd5c7c1b076be6db4ba1afb18e4e40cc927f11ae524d24de68a3e098e5c70a9eaa48b0f6b79f93afcc0d6d78dd4ef5696d3186ba4b73c9bd584adaef07f8becf9fbb2996a3493e1f6fb4b9b206fb5b566dd7ea9311b15586cd2392950ed5d6bd079ce4b54ce9b6d4543d56541d09fa74fdde00f8ba8aec122e716887beb1861242e71bdef534683e073b89a54a5b84336c912d9959f56ad659a7106c766956851f9446b7e60a0364b794dcb20ca37e946118972d88bdd40092f786e11f3b93cac748c7f16654ce3c95b2e081719f33ce2f3f7fba2c776565c8d1f0defbbcd7476414ffd1761810abf9a259318e4f9707b719a054a344cac5b3edab664c4579b11b4f7a82f78acce8893ac0d2fd86585c6d8346298e5ccb83edf4f625eb4d15478a1671b9ff69fccf9717cf527103f35b0879720581f398b557c92f9fdc7f7cc91a1656e682358fa544124f21f58887e1e00e968612a31afaecc209a21053f03812e6f9a2352de609241b52fdacdcf6b24fc77ff2a5388cfdfdfe49bcfd98fb7c7f4ec73fb667f9fcfe2824147e4bdee8c9b55f135373e0b83bcbc9487e0e36330d8f7105bc8accf0e2f9fa9c2d11196420eb550c8f4ff0c434b7a32e3cdb5f346ab730ba22693cb58a21975327520cc0671243b161d6eb86e5f31dbd61f933383b4b9ba8e577e6c0799acb5efab885713991bf8db35e830361a313da8200296c415ae3ffef30eb65eebe277794210c697adc9e9162ac81172bda2d1b7eb73a9ffb6d09ca53c3eac52cdbb93f219e151c93be0c154174e8aa593b83dab3b9a35e0e5e216fa11c9fdbbb8f6dc5e02e5c1d59fcc0bad4543b3f0dff0977b24c8c557d41bbeac73726005f67037b26aaa786ce5cdc5d67867031b16043644a3152325352d0a7cbc25f8ea6c3b1edb05abce5d45a76fa91c0584ba3974d69159e0878b5c77d4daf56db24a1a0765c657206e639a46bd70ef8f6dbdc679cfab9128e965a6fa4faa6b66b36dad5112a232864df162bc7f8ca5daecb1e9651fbf53620c501a8ca899592feae0b9bdad24e0c8864200aaef749bb19fb700a49c67331105f324f04c549bea7db6b0ce992feb014142ecd33ab50eeb81a144b860c801750d636431c65f56d81e6391b982e7ef19747778a23dcdcba379ff10c4f7e9eb61cd178f05f586eaa5b93e296eef1e2af4ad7e83c071e0acaeeefc00da584dfe194c16607f672ed961a257e87b25a53e9d1fddd7afd4ba340f5c0c6deaf19bc5c93b880441f4d6d10aec8b118ba64edbe0fab1b29c54bdfbcdbb466b4c09ec060a24c1483cd877cc88a06dd6e55541330c073560fa64c4b0f38588d8349db33294277d0649fc048e0452ba30e1e36744ebf1f89956e5c48e066b71f44415d5d7eb3ab3f2c0c81de14ee8f19b5af261453d22fcf1f435c1089008b6afeedaa80b5d66004cd0b5cd5a6c91057e07851bf3146d6280c0ca3d7ae904e15442c18efb615be8806ad066875d7297b0dd616c9366baa526d6e26dbb7215de62a2eee693846d22fbe836ce70f278832566cafba3ed13e40f8cc43a0218dd1690f5d5085a59ef12cf4324ae0eb24369ddae12d1658745cdeee9b32bd82ac7455ef4663f2959e97cb97e43fd9893bfd1f98a345e9eb5511039da5deeab1ee69cfd95dbfc88a401a9c3200cc4c362f91935ee83310a1629ae2a5e56c19fbe5b64c8f569201c580c036d33bc05cda94f8af5630b3bd458925e61867dc7bfc3c6cb99ddf52deb15e4fc1f8d2b58b50c4af536d1ebec56346b70337d12b28623f22b38172e22c8e53c373e85ef561a22db2729917ed279471a191758d3f22edb0337d8fcff7b34468065c0043a12801b2e072687c1ba549cb4284d6e5b5242cba58e5548438068e12dd8e0a2ee3d7056c30c6725ef89bdfca3eaeeffcfd4f144e85b59b388cab302a8ad95bd8c9a5615a97d7b4165b2046441a4cede6fa401c5686a50e5d273c6889759ff2317338a66aee8e632e1558dadfe65a4f3e5fdc7acd909d0303d424251a8a2b15ea1845932c3387b9ee67b93e9b93ea7c154d8cf0aecbd963a1a305fc1d5eedb5cecbb2a031445e0580dbb520464861dd1f6a1a4cfbfe3d3272516bb787e564001a78e45ea59be62f39d95ffc4cdd879140f4c77101c72b6636701006bfb3823838bac9f5b893834810d67e9d521363a07d0e8e7a8055d4a4b0f16c4e2e08bb11e4c5c88ea0f0fc872162bed4705ebe52808e27bf66a5d8f1c1ae6b4471df14566ecdba3bbd0e48be0917f750e19c369b387b1578b1cf4808f1a717c37ad8f347a90e502b19f63e784344401911d3ee65ea3a4707d936e2662479bb1d0f44c05ee086af2799c4ce89323b9a99cb438207e55b6a73a0b562ef2b5c42b040f8ffccec1138f5033af0f83420b4e8d1e73f38671d908fa9341216fcbd4769863c21529b5e3a8d6c23ab5a763dfbb00f927d3ef6624a0c8e14261e1db9efb1cce64967393fcca8ee3904f8703b3a9d79e2b22cb30834b35c50557fafd244e03172a524e2f76d15e7c08a5bac39b3212e9fb9d1cace352c8bae614ae87c0a8f9b718adbca7108615091171d2c383db28dade705a403c6b72a35e453c2e8b9920761840b2a0bf804fa8287f41a44ac171eeb49024049e57889806865ee584106ecb5b1220c5af53f2709b40e7a85d411711f9403e4efaab4c20247b433a1051ec964ef32574801c85d8447df0160ea676cbcbf970df5e32c4e6cad9104345963eee38915e5119e48307cd92933d63d776ac1b2e6706c12989d093f4cd9ce6e9bd8e5f368d715b0f558ab2dca9113983e1eec148b9af845fba576e00ebf8f4c74a2562b0c5c92c4bd7ae8525bda8bd3404a9bd26980cf413a68694d453919ccf413c46ff1e4802c9c1d61587f3e9846a739280f3b9b0b937159628e1969d2a8d025c5fca12ed2a65702157d8fc1a41d2fdb1c63157811993c9bdf9da76889a3dd2498b56c21cda3e3587a392345ec179bbb1d083e438a416b165ae41c286134382636b60e83016f1a0ff96fcb5c7eed33ffb375b9e7da53ff27a403b10ef6200faeadef92772ca7486b263939f0d42be8765bb098c928e504d8fdf448f4f1e4ed40f1e01a8437df0484dd2051ae90f7cb33f7176b7f5151c2c8a3dc2077e3aa500b2035f1c3ab3370879109718ff078d238000a08c7a7997bb5b8bb69fc720b3ab6c34ead4c9f0ad2118212f90edf33c0de6a105ea519509669c10d1670eb4af11fa62b6cf8ba484344263193fb7f50aaf84499f735652a84152a72feac982b4f0d2498a426a22a6d1aa2c0994f97709ce8829852376d0404f838c4539b26971bb1a9a753a5a646cacc55b6150aba59167f914cb58e964bac9bb6f5d2916cbba5dde6bdf9e0a00e4ad3747833e5be8fdf392e4622d0ee0209cea228b89183d4ed5c4af48ef998aeef3de8b186e4cfbfdb9ec9e997398863b5d6c14d3e235bea971298cc78c9be5cec78bd4121dc43ee9b4d4f7a8d7ca7930632234a2cbf6a87e2bb86a7f957c870aac344eafbff5060fe30cae51bf85f118e0e11984f1f02c59e782ab84a648adfd84c25e971e00e11b80c68d45346c6138b3500b98a09b2b65ab62c49956bde96b9ba069556a2b2c35c2da369f43c730e7157e8ad49a34a844a253dcdc5231074f7a0bcbb790e04155757948a8a68907932b6c3d36c3b1d3f65d2a2559d7942966e72b95553254580ddf6c15262f8b1f869d5dfcedbae72bb28be79f54170de893ed0d94245ca5c815c61c130798a5c042a6f99a4dc6356df7168a7e4fe87695f363e7e81b87b899ac11b4c2545a0caa2fcf771c7db658690eadd1d906003082a3d823e5d2eafe935c7a8dd7920ab7d90707d654c0521ca32cb05f40a1cbf93aaffc92aced94d32c124dffbc7c8810b38abc5f080e17a9854ea6aabd75807ecf049eef152a68fafaf6b24f125aeca8d0db3a9002f8ea187ffd51d1f29d91bceba2cc41372849bf95c243c9449895f890af441a10b7a734f1d93d0fa6a91ccf56e0707f0dcf9b52d5cd9c3bacdfcb11454bdec786f2af0953de0b1aac12fc4a474f372eb18d6067a83a27b01e58acd19551254c5bd78de5c97b0f9b46fbc6d97342159fb5da6fd475e97840ad1f3285c404d53e0c64a7bc4cf8dff42a62bbf7244ee4f943177b0acc2bc295f84d82b6832eec890156afdb7e0e108579101e554e807a0d0205f78736f803ccc13085ebe9335c6d34d88a232b7864444907b099a1c01d0e386a09ce46b2db25de45c644c9a2f9a870603bc6606dbbbfa8fe765865255c2b0fddd655e29379248004aaa5ed2508879103bbbf91cbc5383515d544b0cc54cf0edc397d39dbffaf49e20dbb6dd86f4c12d8e83c9a19b5f8fd8d7cb34998c0218486568a4870bf470809659db975800f813e415b7427dcc116ae1214842bc1d91bd8b1f051949c89d4b95577e00753f789032ab464e07582dc50fc716a6193bc6c13fd090ead5ddcd862f4d3a1e57e08cc8e402a7899f39ef8bc1fc5c8c317335fff10da0332cfb9b171575de504d1eca2c81bb960e5c00a676a30cc58c1b6c5a65975ed0b2d77ab1f5d6c9a8f669356a000ab2ef1a3c6b04ddf3a035599dd95e6fd3d0e8ee6bcc8dbbe4a0ac9d7eac78a91a3d54515656f261768206cab4caaf5224bd03380f1a3d86b73384d7534dd2471b792f5edd1e9cc87f2ea859c36796c52d1f89e64350b9c178dd5b5ec2df414dc71e9baeb0a096d9491d33871506aa03a9f779f43926b3a482755795e40bb60f38e91a0e6404ded20115337047b72d52f4bcc24d0ab71899873da605a4d018bd2ffe50a288c9feafb243c0020dc86326b62ee8a78d376b680d1d023a099e70ccd10f02381dbf2efaeae6589ac35c15fdc6795e99a002839e1baa79d87e2e79a4146a2a8b44cec868c291d542b2956e420d7690b8966a0eb2b522ca924c8a5b008e1c99d526cf40adcf577fd179d21bd7ddb6af2a3de676c47f59dc54c0949a2394792385510468daccc37f96a832f66cce70552d1f3e174a0396ba8938ae7a55c7439842b513b3cacb856f14869dab98f7f01b6995ac48ef34083470e47ae324e9d981c8e966c15f6dcc60639e1d9d5bea0d4d7b531cf40b88c5a92de7f8e1b9ee0e80f818ef0cb7ea6238f8ba06510d1ec2b9f105dd6bf1d891909b3cfd7c4c6f4d6e8569b00622700331f970a484751ed51da7857158761f525adcf045ea3701cc161f458858092e6df93183f7f4dc68739d9385ca8092d80994cf33801816c1e562c4e21821b378d3d2553d969f0576e3ac65262c68b68b52aa256028dc848333d9abfb3320c352566273a80d2e9e8c238c9942f496f5650d4c63e7b978da20728109a831602e9a4ddccad01e786b841a4bc052993bcac7e08dcfbf8eb7a31a419f48cd1386dc453782b99939de0c02deb8bb293a0916c8457e13b36952255e7e82e99e36a1ec8920da9aa0f5530ef6b2838e5eb76e73891af0a0cbd96a371880fdcfc8570b101e6d8614796c4469709dfb3805648534fb0e50f3d717994e2ab8e9a97fc9d1c2df55f7a36123348852ff9f7d3c44b7489b557134bd76fa10fa26d0fce7854e6ba937a7676eeacb43f49ed220ac46dc6375cc2c41476a28a3186379e88d1d7b7001ab859c447aff3fd7f94783dbae7ce3ae51809bce6d934f9b1bd7d71161e5564ff338cc04727b7ea162f056e97436de2bbefe8d3c0c9302f2905e026b08566be474af272a59d62c55609866ef68c0ba88ca55fe43587a4c5b56e16e1541fb1feaf9549a4350a62859a0455b5c3e740e621f616196e4d1fe529ff10fdd18018cf219a5de432d2d50978a292316e4b013fce4cda69a7fa2f49a2f4ac0b577bf18ae6d9a2f06c48a42eec7c7ae17427e8a460a064e7f480ff8e52a81314339dae0c5d47a787f5ba0a44ae9b251f9a599c54d4fb4496898749526452029ce856a26f2a96dda73d5caad7776e9a75f50c42c0ca8b3b3fd859c74bb637a528f0e97372c91b9a298444324fdc468935c9a4ad7d4c177b91d76c9e439762ac17a627a41225abbe900eccf648966fe522916ac82fd905762744ff063d16bed15e771efe52739453c047ecb0675faf41f1da22a3a10488e563c005e8b3402c63a092bcfe56345e672318c46e5d20320b93e3f36a46bae61cd6926d92f9491e983283261150126e2874c28a6f91561df313aff0d19c72f2dacb8d9e2142e646b6c80a2720e9f2f9132db6ad48ab67644a97091bf07c313cbe8c51d9d6e300693b6e988ec92f373f5c924e1fedd0b4d0f8a9d9b595060308913ebcfe33e72202193e725dd4973f7f9bbd02d88221b0609a884212684ab7377f9859ad1d0a842e291c893eb9dd5b325ad448cf9023b239528152a9bb6f3c622ac5c4ce79af67571adbe0b5c6b56be3978a5316d330bcdbaa7772ed67058566f6803c628d1fcf8c2d35c6fb465f9e2a075b73be6ffe79cf638ab901773c885bd102c99f550d78b31d693a418850341a09cb3ec8469e2a37013a0e8fc1d9a25a3bb48189e30f44340e23cb172f9e28dfc4c8a5a63371a6503f2671068411a3008ea7f32ad1e49a07a6a281bc77068198013500d13758d651534be91ee9c4595aa1eb22797b5392d7cf9d41947f2de9a4c24114b410da4645d960a5de576874ea4d953a2faf698a785b61bbdd32983a866a1338b6ed50ac334a091169659e9266bf18f93ef461a1442f9d9894647815717f9ac07014a26d240a21e87ff547d926ae1e94420e0a5ba780704b1cdf1e22ed01c52bf4f8292a1d86175c2febe729b68b3a29502ef440ab9a077489550a0538d62a532250f11e096ae119c70af30c1eb86147adc9d335465da917567a278c8b3a9c0f843e90736f86dcc981595588f7b50ec9489707e008819f24dcffa5526cb10a75f0dd9a1b6709d1b470f8100f522b302334ed71da293057bd899328d13d84b885dda455ae13b8ad0b91a32919b5b626659598ac90146aba032118f4dd43c6c45f754f40c8dacc9ee68a73546cf1142777060e42c867660ddbf514116206d4947c11d0625d5ee09950e988e026435e94a40d7c6919175ca182a157130a5de68178dab8af11159d0cc753db71cb948220acad120f732125c8413655175fca9ec0f597dfd8b16e7fda0a7d186f29000b8574d419e7274c945e25a65e91d5a1bc8ce98c9c8d005f71d183e789248af71bd188b3f73daba8936f1fa64ba7566f2deb39a1dcd66b155d389d98d9202d42d8d6ef2ee4d998991b20410c087b6f24077b06c7c7ccbd604c0e77058709d5c74adbe285aac342668f4899636f5722af9f8abe6ec1522f6ac7b7d8a89294b273d4f7139f76024abb69fe5c1571aeef9bd161acb4510f6f4353eabedfff197bcb33af600f1ef784df7eb38dbbe248c5a98598239099caaf0c09638e45122bb51be656ef7a9b996fd30a00aaa23f809f46e864612d60cd5a420c7c9ae0c16c16625eeafc63060adc8471585f25679a93e0d64516de66837b14c4c543cc4c9721ea9aa39c12979d36ca4850feea53cf6af2c05a2eb7d8e6d8a5fa303bba8942d66ded52df148f3227de0ee58d12b834b8a98556276d98f49386248198cf60b633ca9857a99cd04fbec81a24f9b2cf7031e1d7b77ce10a82263b798f887ca618769e8da6349528172d32fdab2bf8dd0c9dd5d761ea8982b8e85b137eac86ca698cca6ff000bba5879526915eac24edeba64fd3372ee870085b71912ce2f449e6af9206c01ed00d163980a031c7d35665904af1ddc0ee3c4e34d80cab416e1c3f25a0b3e0ae37b93fe5c78748363dbf81c7c053ccf54e8248c52b90f2ba02de5f20a4e43f13f005ba41a3800a7b5458c07167e2319295dfa491467559d0a2265b32478d2136407501af154d97da13a5c22cc5d32f465d6fb19966b650786782079913d578d9a426e0f0eb7dac809f5c28d2897e42887ea4338d3270c680a103ca349e219543ce32c41f50f62058e661df26dfddfc1c7b30ad41f44cad0457be8e066e9d2ae876b3fbdeedcae0c0aec6013b39428d6318131e192808ce7e16c4e5b78d65c102f4818402deedbd3a56e68f002972f8615603b6db7b82cfc192f7d1d22995ebd0431a530beeb56dbd8b787af4a4c58ee864723f0d4152e03b30a36a9dffc9db8195fb90533ce69d8b4f6d019a71e3245e2262e41936a66055cc5b549aca64b0101feaed389d7386abb04a4d5b4447080dfa0b9b45a39810f9b4ea040b96a706960d09aa97657095842cf313c253de80dae93a030308a87a5dece235efc0c1e440848113d5469d6619b198d58a34a0833c88798f0efda1810fe5e3883aeccc5f74d80c10ed6d0428ee92fd59bb83c017bc8d462f500578c4529682326526ad9336aeb00bb3d14c1b3c2e2062bc5c05245d95d13da49d807d6338639182d8a44677d29b7029f363766be3ffea6526841f8a06d3908d5ad2c93a9e991b2bcaf613b81dfc28e5c661b5a2ff4b05caf8a0fcf9a7857910126d25a5c4ae72a62e8effbcdcc02a19565bd16450545ed085a25f71876909e29f6ddaf514f37f4e943391e9e1ee4e859da141e7490ab4122f8f77c59cf3d63fd39444d3eebde31c0a3fde7bcef4e94117c6eda07848120d30cc442323cc6ba187b21cca09000bbbd108bf8a1b27bdbfd9b362dc583c96477e1796c38e74f222760102b0d5d68c9be01bc681d6ce195072aba9c7ec03b9976b285bff952700f4ef4c89ac1a62e19109096defcd0203805f2bba732eea7e8a1d7014b270e6b2b2e76decf0fb9a7e39c0521c59808bb18a7ce5b7d7aa7fedc94a355e9438d63ad360d0d4760c93004da41b3292a9026265555df5d045071aef7e58472a130972fb51575b3cd1dda83506a18ca5fba56148472cdc8a854bb5a528b88c631765c506e0301e991e8ad1a604ce49efc75555194c34cc8345d8841bfb0dae612cc250f34803114eb2c549c43c81df8ab2b6283fac9c1425785379c003f42848b86ad03c36015ea4e09f9896b128d5330e99be7497585bd2aaa5b3afd2f4b4f2619bf9e19c543490a1efd8f28d45c0f7feb1f2e376409e4d1f7f3f1e7db38bdf4a9b8aaa4ebbad9b034d8d3746a4683c09ae5757aab855279144331c0a5fcf9d556fac08c94e1023e19fb23239800d4ed7a98d3ef588aa4645d913883e797cbbdf7a6c7074ce8e65f170dde7d722241984698893748d412348ca921f00d10858ac456181e2717cbcbf658145823d0206b4f1223c3a9b84eeefe7bcfc50404ce9d8428b0564c10b0fcfc17afbfa573b61411391547934672389c482e66d674b85213e6912b1effb0c4b63542fbcc21e806b3b5854c496ef0886011467eed508de114901962b4c9cbf816ce349b5763583c1d4f72c46ebe6a8148d8fb3524d2a9dcea6b04e487c16def3a0926f77af14c6cda6f28552ada141953c5a665f2061785fc7fdfc51d09a35833c8f5fb46effaa06d8e9097d6043cf501eca88e9d7fcbd12bf76b09bf248c10c91e562c0de21863cc15c37fd2da15917ebb39ce30c968b387b108ce784c6aba81710ef9b5cb3f921c57a0bb475ef847f07913fe0cac0c357b0b6f89d94e2c82f704bd2005b34f4897859332ec7da4aef9a1a1c81c89fde35cb397adab243ee2c9104d9019ff6736495ed4c377cfb5c8e3573c49c3a9f0ea7fc80f111c765846c74ee846bcaca539fcdb2e72348fc03579782fd7b803324a1f7d74931096d6b1f0a87a97ca23d333681ae4488895b01998689ec933ed9e7d6e4d8889d2d8a94c2dcc8fbaded18beb940324b43aa7b034c4764563ac0828a89c21380624c2b4c64adc0b18a7579f28b82e9e7f1890358679abe6ae17148b56462dd302372644f6feb4a64202b69decbe799f5ef2e6c8ed56e995012a6037e8899f7d0ac6c37a0056101ec389f142d347781b2af55b51a6a8d8eed9114bb737a92b9488f5dc0436bce3c3b6734bf1ffa3d7fe349cb2d1804971d48651d6bd4fec0cbdb96a30f0aa427bfb598ebdd58351b64e0644f97dc8ccb458ef9dce263efecd13bbb7cb47408f16e3903cdade30c9f34cf23c93be3a030fe42b33e6e182a11c1cf89fcb4feab903aa8d7a3aff9e087e9378196877198edec3efa3dab9604ecb6a235d4976f6759d48224b427a058087d2d37529ed79ef739a3882f1d7e5c847b07940ab0d6a2ebd2fbeb59ed22069373870f85576800ed90b5b0670c8b3044c0dbbe4d4805e3499a6250159715493f5fd9c455007b2244b86dd6b2676677739e8628907bc342df954c23900da3d989d32d19fcdfc1432858a597398436ac394788a960d8e27a8a95701750efd1865440d1b88212885c0ab8992ba88dd2409a2865278d1126f6e4dfcaf27c44e3cd68b6bc4c6c1b7121a90719e3dc9e7e8ae935efa219164b75bd722ef2d64d77aa59e1bcf4e4abf8152d39d102da30951b92f24deefcbddb61d091b1172b8d2c4fc10c2aee306ca0f4d60947b823da36a47b3255aa660fd70ee14d1a8a5b772dc73b3568a1d1e7b64789a2d9bfa5ee6ee8916a553cbeb4bc8e66f6243f83d8f4968cbe3eb24934e7e8c5b2ec7aecfd1c0b1504393e7f059a7e937443cab4c74124d863031c7759b91cb74cf81acded6b7ad4677914c8704c03209fff3f0199f65c5d1d8640db2cb450a3e70b257da42a03092c8c05cf01fa818bda1675ca733dfa4f79c05099bca0e96062533727bc9cea0b4f906d3183d8be1a300a24d615044e43e369f830c2ba1ed65515bf488517dd1b92d029c2ae878d06d6d32b68e85fe9b911f7fb004adb7f76ff7635f7c022d8d8a6134fa549c8298251ec79fdeed55eab986f807702b0fdbbdaf97dfb0249a94c1ab5e2b59d21c49a5afacdd4e1e48fdd880dea190d2ec56375cef9e704fa02aa27e5a6f51c39895d16eacbdbb450509a2a293ebd220c79c0bf1b885185f53cd7178e78e0456ef784ffae2d260c8e078855ac3508fe1c7d5a206d6ee6cb1ea5b753f3f5a06d69d96ef231a5448b724ce90736cc8fdc45fbb958e2d9d4f57ae7f94ecc3c93f7167421cf2f6e684c76d10116c01ea6c12272856d303bb1a3a001f1ee9062e5e92bcdb813ba401da68441e4a677041a6b40f232ce9098d22e7edabf531bce810798bd6d71cd3abe45b91e9c97624d035cf52b0502abb3e6534cb81940dea522c37a36b1e0a455892ebb680b66be122f26f3a6e403df8b7475eff8add96f92eb2d4afc00eed4109d5c61099a4807ab27d55b066e1d9627ffff5d61d54a05a427f507ad142c7e7f9bcc4006aa30160576a03fe0ff312b1cb4ccbc7023e826073346efaba5ff24623c8b9110b2a6454c9dadbf1961570376a493b00ea586055fcc00ed262b8fe830681d502fc287e35689078fde9e16c5c3a93a596fdfcc904169fbfd36d6ec022dbc659746d77d873db922aad663ceee7259b07b8912f5f2ba2c0773f7755014894d139066122e5f703a5392bb26399715ee91768aaf6360b43fe4b610ce0d87214ce873c743e1a14f96abac25d87fbe3f4e385a9e31d39fec3d4c5b16ab22240951d1c8f758200eacd0a9c9fa774c2c44686f5d564627ffd28b95231df57cb1ac13bfae488a03e94aaf91381cc3cbcd141adfd54e22fbebf99f28987f8f999a02105ec5c3c71a2428141284f61fa125410887691568ae951a284df3b33be2fa0c08996b4a6e424eeb3433e585c679df9c698146f74c289c54dc447ad09630d560e5a5946dc12121819ea9d7375f98845da73b9f6b721537d4fb84714073b056072af07c00273a1236e6db4abfacf853a449a5ed65b9a7c471bc79b2eb6202cbeef8305e0f0568895304a2fea193ac1ccb70ad7aeb66b012e90ece94e565f1fd26809bc54d25746bc2db6cd1cfe90700240d4a8432000328949610d4625476f3fa143ca5bfab2346a57e37fb8e3ad3df10a878d9565d0dc475fd761dbfca95e274c6e65dbceffb34d17f49ff654854fbe50127c6ff11b0c072e88543158383e0af63d9dcbadaf7e0be0fa9111c6550e2cc5f97ae85f15d6ff67bca530b767cce8a802345536aae7def181c24f1f54e2186f6c3fa9fee0984a68bf352b66bea7e4f48c173c98552b58d2e57e274593ce828330914349718d2cb7cac37f452c45c5f1d2cb084b2c4faaf99e336af03ddae6dd6ea12c5924f5789302c7e3fd89a0b77e5fc3867ed158292e45e79efcee2162a94cd1576c3704ee2fb862c0b063ef2aa461cb599af37cc9e5c0ba04071b9c8f91de01203f1845af79dd7cc79ab0a514da1db36b1add07421af068d9a487dfb848a32a6d6431d592bec544d31276d83ae6f6877cb5adcbdd32681e510a9049a5e821611f93ed868a9379e3d2c3fc1f95e101e1ccd9139783cb728b843ee1f60a421f83da608f5d8e2466fe38f228a747a1d847e5874fa79145555c049319e1d1ddbd833f58de7af9ffbe3e0f3f639e617b150404b8e42a78ab84fa3a10f84363bb44c556b0f609d96f047e950287939aa651a24907713ea1a574afaa4fc908fe318a957f3827a5d09c2f3716e5674d2d4d0c094bc9b1abea9707a9adbcbb53c613207f45c083db2f4e29c83dd6cb8ca11c07373a4788299949ea3b4e73d3cc9893b83f963c48cdd45dd9926d32161b9cb4ac1db7b10d64891259af174b67eced1e68e9ffcd80492d0335b23626c12e261d368d9cb8c9ed558ef98778fd639b75dbfcc3018da6dfa187559117b8f1d2e70f451e5aa2bcfa3621a3cb8bf7bf70ad9f281d6457fef418e39a7c0413ff55b5e4c83a7f0c1a0892bbadcb0ee7b0e8be8e0d7c758e0a752785acd926b73a12e74c0ffa04ca14a78e7aeba5a402dff8d5ead9ae56582c392db287f72b463428dcbef9a657f217eaebf54bbd2e93b0592534f2b44a741ed683bb51a506041e97711d9fce1b794cffa03bce0bb435bc2b5c466243310da1cf02bfc667813a25bfc79803fa8a60ede61b63eb3649da73ed064393665368e7bd937873c37967d4c5af3a16e2001286cea4129b668d9f5540bba6eb723a73227171dd5285ff6bcbc61157bbf2b588e04d28026ae5f53739ec623843553053be8c9e375834eea0669efa33cdd36a12950a56069e8f1f57d3cc62c367e94fdef384ebc9fa57ea8417e66e9941a58a5710910019e4418056dcb8b84b5f0f7e6ac97b1756809c948d0a696b5efc127347bde1b3bb762da41e6893237d64f56edf3c8cff8e4989b475ff1c3ec837cf9aa71f3d387f1a313c0d24280c30e6c232cc1df2425f512fd4c0c917a0d7d39be5144d08f03efdf436105d533cb32de694446c29e76126f8a7022a672d3a6334df8bb1f8180f71a4d54cca3c1fee1980e6727d3597f8d50870efd1f0d5f6d97667ee9c894831d81f8a8d81e435b9dfc3b576095d7f536707c7f58db97dc50850caf3d13b530891ec7fc702fb121ad78e744d04e05360f25891d3499cc338982728769264008486748d923b08bcae12a368da96cf8dec912c2eb778a16c52eaf38c005d44b80727beb8c930f4523a713024fd85622f0c1cd5855a1580b0beb06d8cfd6ec733aff045a87d73368731d997eff963d4f11f783c38e514c816a569a879f76f998032c5ba33e16dac94bab1eae5eae5c2e911f82469f7ed46b004542196c21cc16271d385df066946e7027431ec354acbdcb052452bdf54012e3332d8b65bbd75b0354076ce388b570f72538c5da0ee3e04755b7c236a134bb93e8d3d0e47203d9d30ebb9b5ed7ac5846f284fcae02158069474d2247c2700522f52c0e44eeaf8151edd79ed38be0a4a88f77710254c9ecfc28d2eec42dc4147e95beeab09f941629001cf9470f36240c81e877d1210581e805f87145d3d0d108e14a9a03b89d519e51ca1aab66761d2e547fe5db03286b68090da114fcddc51db5a5986d4496b77e3fa99cd8c9827f90054180607a414899d588280da374537d45fdcb344a01304a59625ad3a9fac02adc360aabd920f5fc48a30b3f400410efcf02939cf21baf2c3b14bf285422db2638e3c1710c2b96060ab04b5420e04c5e45154921d16d1241851c4555c8d3f0471799da7f24ac2752151bba62ef7a1b7e0f80692f9cb349d0edd595f9832f1bcf88514aee4bf43eab6778ac0342522b66f1ec7e72a6b48805d422a1e87bb9ebb731574ed63d0bdb6b8e5c2f57809f8cc143a5d46e6e4d714a27fa4ec4531c3af646ffae662752e56105585a6849462b59359deb306cbe7346a2cb3e87496696527f732e3d4b6b2e6a5616cca001d12cda7e23e9fb82c983c461bb5b7c7e375bd1240d6c15e0348cdf0212bb7e9eada408ca326b34debd946512f5f826feb800e5854f1ba142a937f38dfdd1698abbd4d703e0c61e107dca0b660a824556d4420c3422c72eb5c754df2af331156e567d84819c0cb7b907a80b07e65c8bde2e47c7fbb879785d777a156768ffa9506bb7ee97c2127b1e9ff69cae3831f3fd1065b1e2607dc77d7bf8f6f1ccdf8fb5bce17a5a508f62df90baaa67cff1a9f6a5b8c01700043eb9a635123576ca670f2a22ca66fcb20e1801a859e5815eb708d73a8a90eea11f0e2f55f155e29499e4a5c95d2787906eb95c1df656e9a8e5ebdcd28bce8216cff52e5430554679e2170eac937594de9fcfec87c4fa07ea12480ee1aaa78a4ad7a343ef8f986771a48ad6c14612835d745b6f43905bcd871696efbac7b4791d36d3494c2699bf1e760981f6da18c7a885d34bd19faaecb4b34a0c19ac891bf32508d750835b75ca921a8f66c2b03da73434beb3ae052e38cd23488d4e63779bcec1dbe98a4363541f89889eec2b47800b2c676789d383b6354608ae094cc0b35dba07016bbf1aea0fa3a33b743b8722886d146f17bc87761ec4c41ccef35798f08b7da6c699a6f20bc6174de0f27939a624613b2623037663ffe408388a87a08981606bedf901290cd7c392fd4551f67e9105c542b32c226350c1e213990c6d1b16d364dab83ee2b56de6488375daaa7e2f8eae5f68597bdcb0242004a8f11e62bafbcf2a1df4dabeaf24f48363c18700d5a7af4c297559eb1ab109762de18479fd32336143790fa3ef62c1e39524ebfc53e899bf2319c4d7f51521d68647a14f755475f83ce8e2a1b87e061ef02a0aab4de66d45f2f7b2464ea2a0dab6ec2ed5f349428dd966cbbe2f310e5193add1a88710b82d09bcca2242a8cd42291ba36df3f393e428e2e93ccde779ec17f8ff4d6b8c437efc6470b469fa0555ad6e40acb8e220e17045206e650396ea6321070cc7b59e11fb3af731a0d0cafe68f0248d8647a2775eed8d3be11281dfe7c6a27798c3a74d635e5ab31510e46331162a6ee906e8a59bb97c16fcc85e54ac1d32b6a8cc9b6546b37094cab8866243cc0376db89522a11dbe7ee08f0b3077c3580bdc569acd2ed17d0d53c2e6fe335b363e078525cb4b04f402e33c25cb376d33855046c7a78067d7597751f1f9914e7f3d2aa8fe786cbd44ffaf796bdf0ea6af89ad38b4c4a79a6e1ec6e49434a900c26cc13e17016498068aee30cb0dbf2891d6768fc9cc83d210932dbfce93cfab5e821e484769316836bbc0b05f9b99e1a17723e51ab73b06ecaf011d0f1c72153fed0cff8047f55934061f10e03f81621ff79703898ccd57ebbc867869363149bd58f890d0505230d9eb21857e4545e9df2300a1483fab4eefdabf4d844101362041764424732a29e58425341e8d16465713aa7ac5c05728697daa6bbcb41c835c6daebce33e47decb35184adb68704b7b67e16cc5f901ac8ea41a70094762145db727253f2c84b05b12c3b4e96afd04f455ab99b4c149360a49b41f8fd7305b99182dda10565ecbc59bb3342fbb0974fc1b3377240d2ed001d814fd32da69fd0beacf62156aa57abcfc415ff1d79a4fe7e385bafed298061af6e693e42d0afeb5fb1fe420c85241334be965aea5ccab5a7f04d97b3934e980b639d868ae53b599b926730dc4dc86add5eb8e92a9e5afb9abb45fd5911e8b929dfd4c8a1366385f2a2740cff19654092630e0b27380a48b505e6087d819799c0b607bfc7726a92b939913d5492489e589ab98322e706ad8dac8b1ea9c1b05d5677e4f22c50144d2ef53849c18d91444e417c63e95c188827a5e4a2d26fb349f6315a90eae57c9fd3caf152a61f38e1b231e5581f65cfc926661555f61aa17b6b18fad13369c597a4719878a20a41eef25393a6365944171bddba901c3bcec06dd06bf3619b2a181f9506d2be14581774ee8d8819e4ac3bfb77bfad94424a24660172d4fcbdd8cff9665eb9db2fc59f5288c2fe44b03b1eef6dcf68d851bb6a7c41b9fcd4d227f769857bceb0729e6ff7b03e47c1c9927b73bd1f2ce333966802d6589f72be6a9954f11d44358d85f78008d460cb193177fe13a04e2e250225566eb5a9e281f16f75d13d32c3528bb997c18e380d9f81e36a1532e1d57824a8dff4f03b2f2f971dff36cc9088dd77efab4d170de90724ee3839f52d9c65079d2a8427a652b4ef54a037e9cb65a8c3427bcf8508b637851de2e5c30eb0d98e455e5d10f4b8a35bfc22c4bf3730ee9349f485b88bc1b574605d4d8848836bef706fda007050b6db984207785e89ab9450f250fd4805ebedf7cdefb9c2e9c93edf626decb0743d9dd5ecbf3df87d6bd654718cc580d01c6405f6b4ca137b27f7ba9d0d72908cf85b23838e68f85bec6a424041fdb3a3c0175fc596e356b9de28e0c9114dad821bb51f148b2ea2a1b70798240ebf79810ecbf817b584c349fb0b00faf883c318d339f481694db282add9823f5c8a871496dbc9543d1bff9759dc7f25edc1ac1739dcf3f29a8adaa08a794bb8b4da827a14cf501c45b3d4d84c6d7a216ade8fc22a81cde7077aeb8f33e747fcae440ce09318b66ddd145f9b5ca0d427c76366aa47b763171b96e0dee2e74dac26373244f0cf4adad0941986ab74937b206c3e5ac5f2feb72fd55cc66d07f5a8241913af131130a2db1c93ccd40f251b0957be22b6dbe89878406c28847f443ef2027f7c64e9e7d9de21e7fb903c12cb039285e9ef1e6cf4dd5a2489228820c2b403660ea2d7cf4e65958f562dc8315e60abb3279f9e568942561bedacfe5a5d7c216d25087ef56075cc10a738a2a988b438be39eae7df5cfcb8c4117d2b41cea25e78e0d23022f3fe9e7e91392ae34940bb759dad10371f96cb410c0e834c2a3a9d3b4cd1c39191f4dac68559683dd088bf3d0e9655471b398b85a8b166559fc25fe5f75f20a2abaf335da8f94b943f20347abc6724abf1dfa3c5498b7ad50aa197329917e9dc7f1061fd5deebdefa0f2ec1587b7f49a92dd8a04b1fbee2005a58b88fd167062dbd2d27d7ef39de34aaf7f70c622a9abf195304b927a65a5ff64c37438dbc0e216113d4f0d4f16c49280236b75919e870b5f0afb38939a8c3e6192bbfc765c9624cd810cf8592a50fef517d6e98aa7cddfd674741c7db1eae02ce28141a23a3cd7de5fb1ba95e2bb4aa50d6f4affa2a6e016c976262e59326f075ebcbff1d577c8af56c8cdbabb50ee846a3b98917f2333d07042c0063a7b97bcdd7a9ff8915649341e00688595a54e5ec3592b797dde4fa02a59c24749cda280ede89f85440e4f739ab36291536886152756a9314320998ab04179560ca4d7cf808cc66add1f71a10fe3c98747f81be3b3f34fa5c4c5445b01b451b65cd4c714b9064d9ae9474534d164754dc956503fa1756cbaab2a58dd4cea9334804f12bb320abab242e96a0c596d72696cc270f9ebd9548c16b97c39ffa6d5125fb0dcf3ec9b9aa184c1265ae6d12c50f25ad31d7c0ad14de57f47e31252b11f476acf8082e77f40ec8c00e1b2780f9955c594178d6acaaba4a0c29d2b79c5b12d28f1ebb443d52b9eb4665f0667ad6aa81022f89373a2968fc888e10e8d210f255717fb1b7eae219baebceba391df103cbdc6aeb6c986a39664aa9a111219ace5ac4825668329a2a8b1bd39d495e346bfc188a6d903b41ba84f6ea18dd01a482ba2be708d844cb3f24f51db6457c40be4fbf3f120042d54b9a343208b2893dda74cd86884268b8fb109fbd189cb5de1e09bba5e51a94e50b70cd597df79b5bbe0c9e0e6fbc02a8ad78e2eb64725508756f45229307ac1abceadaa8d1ed2afa99d9260674798bfde3be4f0527b955033b531e24d70248687d83f9d078cf41f1b9ecf294e91955a7545fad803d2fbaa40e9588691e6f4e563e7b8ce4743202b2c43e7ac21197574592094b71e2a6062ac60e3a803732f272631c588abafbfd311c0b003fe81002971922c46e1a0f26e7026a9396550a528e8e84aa4a7111944530209a168979d57c931f979a5cb28f3b32f9456d771d0347962439697f8d2b462a70d99d146b0fc09170caa7666ea0615f7ffa96114810522471fa68fb445ad503141b6a58dec352eaff5e80537c307f3a2b1e61a5dd465806c859f2b2b0010fa5ca4332462bbc6d87e858853812d18ab3f95f286c1faa2594b3daa467289b01962b08bba6c3d71b016f84151f0af43f091b4ebd8da17e8f788176526c7f82288ab666c6502a43143b21dd444c92a444112297e663a54b601fbb01bcdc1e725741c6891447be11d6ee68648ab76d71e6be2a9a13307c4dbc6df9651f02d9a49a9cf1f703ed1c4781f3c3b7c69b9a3b8bc4cfb02ca855a247119a1c7d6a628a42d8545a6b7ca00eb51d5aad70a69f1bcf39044062d4a784df638b62a6f5ab71bf7200b60fdb95909bd61df1941ae4a1e5c56a881808d848157e3dc497f5801314c7528cf52cde543731e1b70c1e6ef97c3cd9f775eeae94cf3c60f1c466c96cb4c011b8e98b0639a20d1603fb2b96852f8275bf0731fc59e7838ecaf0f8a9ce0f3aa01881a3868b15f636370a59dfdfcd7f58534f029403ac2b69c1fcd6bc6a7292db8d763d419c4a0902069ddbf310428bbf9ae25aa57ca2473818b25bbb5c2b24f608d98a0a547c01e5d45b4ae8e6b48665aaa3e23e430e0fe2eceec810ff1dc1efb626ddba41748b5afaf22c58d3aefb8e026094262ff6ed5cc83a0e5b8190062caa292b8e3f37821fa5c25cd192e0ef02bb21ea8b2800bcf0a2e55250f5d45499482809e39eb757c03288dd5b92b46d1d458043625e55ac9422489725fd3557722dff4e6e4e0992736c476b31e65409ee45559d6407ff03a51400736c122b544d374eac65c879f62db1e14fdfeb4aa452c1955798929e66ec5cc244c6123f750afab2098b1ed5bbc1758a71134d1a739465f0512d9dbc081b4ffb22c73196807f6bf0a46abeb9e7ad440dcdb80fdc3a6f501c71250adc4afbec3b82f9dd3b31c09da19f26f794b40d48780097431c620a770a97aec7ddf953849bc242c182b403a1f13b018d1e7c0bb6253494f48a71cebac9a9ad9300f669a1f2510af0f7be4124463e88e0882b62bf29af577ad3f75ef725a2b8a9501d61e19eabb1f6902dce6ec2ae53bced0400fe587c5e515076c8ab4ff51a7b3ce85406e7b69993962bf6854e79142b4fd6172c58e2102f86e281f3a38529f6e16dbf0a88aa24ed2f701f5e66aad6ecfe784ed4bf2a95aca830c076c3f7819cb0101cf0c9ba28949c14aa83ec1a1bf2a159772c8ac7949dcb2d1e9981a6b8bafde83357bdb33beac9612ce874bc2cf24051512d136107c2cdbe3de6105e7a196d37df60d1b74eaefe2afe511379fe0ce945eed77ede9fe1a899b21d39aef95087d2504ed698f562ad7dce615e5f83d1ec04c600b256db8deb25cd8d65a385f7351c746073576e8d502e62374b98aadbef7eeea2d299f11f543d84cf89e153bd75ab1589b89dc9fc64a973126edcfb683c99d490351aeb2d731473c8915e23e1851723fcf3ab426e940cc07000998434fb247776b42b28311fa8ae8d28f8fd9d685dfe06ac6fdea5eb156dcf66c411d2f6ced29f3dc1ef67baa4ed8e7de044760a45b2f2a0c76ca47c13215051d4dd7089b7fd6d8f2ecbef8d31603d39af873cf8966acd527481de1c24d589c6b0b55dc7c4b3f6f7f1bba4c5f7efe2fcc165591467c30124e2ffff2393af77824de3e36f68dfcca8a3f93b5bbfa739f753ff06b467fe036f95e813548e4c5625717c8ad06dd8cae840acc10c76929789a94bd05754c1636947a1233fb0b3ea93557227c47ef18982d98660742636e24f4aef42a87e781efac8bea74dae51a96996607f43825448ba674b44c01d77ff5987a7d704990e3080615836b4ed76f53a629ef5ba7266629895964ee2e71012845b50586391069d24c119f18132e1df60fc323209fd0410b6bfcc57378761df1f14c68e651ede2a588ed0464f85939c5368b84d606586f7f7578686785f2a385eb4c489cf5cfc835563f9e03189410c309284faa15f532d104c735a983153516cc2a2f36e75d251adb9a1b3116ef51a6a6dc91bb766086f2cba15a36cd3812c41b0995abbe67eec60c7b7cb4a4286c4fae2d38c6f0e0310e99bfc4ee517f76f77693ea02023e3cb323cefb2120d133fa7be0be95458d2e3e3b878af47aa963d9e7d2a77399d482d4e8655704eaaa24ff7a5bc43b7460057690b264fa0f7bb2e4c7b258fda7c5f67c2f9ac399880347b067663d6985f9d74b8d3d5eb39d5cd471421504d9d6f97a8e5dff691a1b13182e5ff7f3db6d839e20c1668163d205f4f2706a016b0b6a89de8eb53b5a240d1be6f8da88865d67c25f51166d633caa4983f6197f08ee8b63e1cbc045e37e87aa69da4b9aa2e1563f804199101b683eebc324318fa9cb793aeeae7c509fdee1cf593f33bcf0cd48264e3015c04157d55f98b8de2e44b817502521bdead23a59e28407d7de11ce4c9c251b365468bf045159d1b10b093e588be671ef3f88086852495fce78161d48f6d1821424b5f1375b153eb83562dd7fcb10fcdc6fdb1ee65ede0d1931a5dec893b21a11373f89a74715d86a4308aed7a2e643afaf8d4ce68b145914deadb2e537543e7b86dd3adf0d04ff555c6736403889e3d87ec834e95958bfeaca2ab39c0ba2dbd81d4c82481ac7040d6189770109be341885ed8515ac8584d815063efebbee5cb296fefbabba2aa76813f1b4c08a6b83c868ef1d15ff8310a6ffe151d254acde4ea6c92f703c651575b192bbbed213a8a41ef28d19cd811f2feb885ad820b74392d173a3a8898f2b5d19b6b0c179f5f324baf5c983a957f3ce6e7e65441486f2edf2f94ae27d75693410ca4b992fb7aa0ff1810f76a3bec9cfdbadce7b8bda9bd8ef9b022ad475e52df1cbf5a7657c34a1f95ef79829ce7434433bb58bf21dce12094c6c8530c7f8194dc620434dbd8af67700949d77b6f988f756c9ed62bd3f0c8beb8c732383869be6c0c9b6149cbd860c717bd79e7b42dfbcbff1cfb86a9c11780b256feb7f5d7120795981a282a25aef7c6206456acd1284d6e95f8067395b11c4428cb5f73c62793a46202aa486c09b704c1372ac4fe7c64a51ddb629983cde2998a47f14935e7bbe3de1f66dd897a00ae96f31b5751de8d4336f88cb581bbe5669f1d93be3f7e40f30dd69d39eaa90b0679f8e95c7990efdd9dc87401949a40772d0716dabf3f3d341be809feccecc0d886969bdc1fa4e7e618fe7496af21d9e162e3d74ea2339bf2e6ef03b7baa39e0bb7c580362f275674e713809bc66169ea67c3c7c39d4ee51de6ce8354b86e15beb26305f652ad0f463946759d9e18ab0c8a8ee98c827ccdb42feaf09ff27a0dd21c8d5a9e138eb1b0073b95ee22516dc0232901e4a8b4636898b38e7257cd1671f7d355acaf5ca079d201410c30ea8819fdbd0455182f23983d0df0ee42d9c892b67e6eef0c726a8fdd18e32e4f610358659038886407af2a479554f4d6f5787b7502daac62d48555595eefec6e4d5df30d81539c9694a94298da3bef72494ff9c6e5c6ee9780043fc6de5f1b53fbd1a0701ee8c5b4325622188b06fb40cde7a9aab2848151dc82a629662a07283d19d9704da9a4aee59e9999bbf7f2545cec697d229b5caad0026fd97507c4d749e911dfef3d32633af5688a0f63f769dddafd2c9227d37dec6b16716bd1496634c7c002cc339f27e83731aba992459bb7815656b6755bcef00d2c49cdbb75f8a46d20e7171b69a23c760f8bc49842793a8303d6eb1c9c4b8e1039536e3032d489b31407d1bfd2d95df48ce8667ad04c4315f8337772724eb94588f4ccc1d1f13a048f6fb4718cb3520d6c3401cc29a72b67dfe590e77e87c47ec1e32ff218b8acc08b8d31b34ee723b7a6fd1ceabb90556b55f0aca44db6fa28ae51b41904662de594cd5536e7bfd21cc77455872d41f7e9aba8ad1ef9e5e71d58287be38bda779d4831678a49bcc1d23e650bc010eabd5831565dd8db9bd4acf1ac96b731ecfbf9127a653ed224d9797e2fcfa7b0565651717ce87973063f0aeaf23412b7fcc9cce91d473f73c867923d8793cee36ad9ca49e5ff182afbf58c013ae1cedc35ab13e34fcc5459d879a369c82670ccb492cd4fb13d527f7c26db47b2e766a9417b1b33b266cf4c2cee98dc1c3aef210aa5308d48168e154ca684aa8f518fc3201e4f3fddc55e40b73142206fd1702fd8bfac3c59d60d90b21d9c4ea88bedf2340e2866d9b5f8a73f0e155f8e2b899b8997bf23499ca15fd9d8019122a5e508a9f6c0040c3fcb10909ee4bbb0b6d15d82100ad61924da973572daa9fea30ba3ab54c3941ccbd76506ae96921fa47512c6977705b0459d1662893e72e29a4bc4f778a800d989aeb13d7415aea1f2817cc1649decae5fdb0d97c5f537e34a69b749e299d0e56fe405ff78d5954c7ad9b48c46cec28f66b415c2dff37e8818904ee9ed00aef6bb6ab8bb2b57a5940bd08b40a6ad6d1fc9595beecec5f2df34e5221095c644b7c90444265ca4acaec27b6e8c7b0c54be13ab09df9b863e0dc0faf097986bab65f15d248ff8337b32715658816b60993f12be748a7e7922d7ebc23e200a1af6d6d9b8d9665b3e6fb4300fdcbd2c044e0e5aae19dfa1b69427699468b1d251b528f0bacc96c6bf847cfa4d8a1b35bce30a305ff17cf6fa46bc45b4017fc4107a2cee7d05baee4079b391788e7f4a7dfe7bf4a751622fe223a7d0e7f786a2ff73c4931ef90a36be4ebea029246ff64368424caeeb876491e16a28225807b49a08cbe404d8974440c1b76acc897e909b12cc72cdeee294c6c5ec54a6bd2b8f6b89353138c07c663395dfc1576db05b3551f04206c5e7008d83150c50a9500e716203f154055228253fd56288f6fd8aef1b93aabe794be408629e0c423d6ef71fd5d383b36519ad4a79f07be0eae46a740c911c762ab6fcc1906f466e5b360457ba76cc0510fe7d1f034894b1ada697961fec392c90973fc37ee9ef1c7bdd7dc7654f9e2f44ab748d94ee060d71a937fc280c6af64762328da638277b8738ee1b67263d98b3fd9b15d72450c9ea4bd421a87facdfc4ebfedb7f3422e914e542a96efab6f5de4159af277c340a0f1904f1750e4902beb68e54f7839ca78a8dad235beca38d2e4e237d8eb5642dfbc50883c74258234c0d695deb67848ae6faab7e42d762a8728e313a93f188dbdea6667a84bd9cedf8e4436acdd9be4eff8e7f8439391864cd88b7b65030ea8893ec08cd81f9a7446a8f4e9378ea50e906799e5284905d6ee16eb44c623dc4cc5165fd62af460368f6924f7bb68fc71b26e2fa5c747c03c02656e3a96e50fc9570a92e9bc04c33d26afe814eceda9819a424dfa288c41f2a3069a4134b11d38e172695b327e1a383ba777041328c34db587facb243d9537a6ccee96b082673cc7808a1b1ba7c0d703cf8c82075827fd9ec3eea9516159e40648b782d8768a73570a44c98627c170acb06f09c492a2cf6ddd01fb51e0cff1d3d53a7266a6dcfa191ee116ca58e42430c2bfc6c01458491ece04b75f283ed55711936628aad6842cb092f9e97ff1e1202f164e18edccdb67e7114bb7cb062686451d160a05b58f78044c424ed1497b89f33e57ae8a543416acba9539f2c913032004e6a3d07e259990d7a4c8a6aaa4f38dcd900e4b4087ab58309f34839fe9192c530ffa388e59e37a6c8b89fea7e4816ad5867c3e090f39c2a42551b7ed80e56dc049ec5591892b3a03cdbde83174ecb7d7d0b207ea403c88de796e3b2c874a8ecedbc7a907d660c5832b901dd8cda52ebd6489c7e8e3187a98f7e0aaa269fb15f299c8d5b2a8195290be94747ded27723c08fc109090c4329c248126e6c4df7ab59e075ecdd55929a151dbcc51dd1154991e524c8b7fb40701d5f12c74edac6cd9085c5feecb728679b787b0c67a22fd5aa8ebf087405fb96839c2695e2abf8067d66f0bb565875aab3ca81808d127b91e78b7cea54e16ed8c37b449d3e3169265eeafe62471beb351266e0fc9c898701d1265b0dba3cc142e502a092062dba740917a15829901757a39614904c18a9be06fc7ae792dead0d1444820355990b36914ec24ce3a618bc09e1e6a94493d7f544f1fc87855aac30b7aa227412d331f351c0a821eb618ac142b5d1555e0aa4f5df0853b276658be75c29fa8d2a0ab0f6ae66b707ce0743f0528921c123aebc5e9dd5b8ac329f63d47192b21b2c3c0219e0e4b494e39a05a16b9269a9721e61b76dd5d119e5e28b002e06c05b35b7368b8df8380c150c166174715c4973e050618f8e9aebc9b789b8412e17f635fe0d64a57e6d5151d8a21eb33cdf04910f9c03c3e2a461cd3367b6ad6598cad6786675092c72b4e289de02d8123e242240c693c1fcef576bc0b9683c7f9f2496c9c6f8c105655e50214aea3ca4f7d879ee6b249ad66fa6d417747bfadccb80da6713aed59f99a08724a98ecd21e9dcd224b4b369307da305168c2a65cc085b808dea9a451789efd3bd5d4650198a1e24e9130df55c7c316c273d328ff47a8a3be475b0e1100478dfbd90d6aa9efc6ce21fa6638c03377c8cb09d8188dd55372e89f9686a9617636f0270f464aacdebaf550646b2bac7ef575618116a0da74a46a636fd2fc1e9db6dc2771a100bdb128d4d0df2cb30ae476234ccf5c3bdfc5ebe5bd5f2e6ba0dd0dc68bccfa5fd192939e1e2054872423b5302c21f8d3f0c16378c8f0de86c6c7c3abbd03835bff367293954f8498164aba05f8ab2ba56fd3b0ffc6fcb0917a358286fe0366ee3834e6479b1aebc43dcfa40cff9901164401b7faef9f321e9dc6e06e6b60344d7ae91740c47bfbccfb56c3e98882559f101647645e20b6ea579426d2cfb93aa4ea2a7b62e60806080751d10d3b2256dadb57b5d8e0cf059a8b2e56470a9f9a4b456c0ccc8e0dad56c3d3ad2a03aeb5df3b9aec3a69b22dd7b0339a158f3bddefb5a2dbeec8019a06348ffda53dc9dcfa1ec382bbb639950ed130f731628f0c68b62e059f563a2b336fab3d40994c3f305a9777b0caaf7cbe82dbcfad2e01867ce8c8d31796c8fbd9ea59569f4b83a3cab00ed8b4611610e824cef09a7350a098bfd625c680daffe03189cb1e12f16db65a170c5b9f646473a34eb623cc32be6abd8d3449f345863b34dfe21e67321b1b390348791da598636b7657c12c9124a7bd26db876fa1d2311c6afb592c268f50eb8fd9a2334a60d591dce07cc231ca1f6266c4d53804fb2b72457f5be624e71fca349362ee5f7fd4d5d72171e17eb4dadc60591ce7164d46304b74315441f985071a875be6647b9a970ae90dde5bc7dac30cc76bc1c1dff830cce9825225633a7a73b2eb3e1dfc2ecb6bc47b6760cda25c878e74c6d83220933c2b9fa248e0b8507ac8053c018f898467b8bbab826679dfbd1c66fd7141f645383825fc29ba9599a9d592deefe4333b81058ce57c98f3e2dd05272db793e8c66e069bcde4989001722babfd8b31064bc7928c90883972e3bdd0bd0209cc2a007fbcdb86d73034ba8c9ac1ea2f4004b7111c3d1654e1300969039cd47dd98d9c9906ff1602a788e98e12ca6258b1ed2f2ed03fd7faff9c5bf500c5101d446af354635110f0600a4580a5dc7f99f4f2614db706f9b535b575ec1e143cdb2edad4543cb8eff5f07876fd028627ec1e3825679a5c65630a9c77f5fefc814d1bb990fb5307845b204a3a33c0c3643841ee9ef14f7503ad3fcd3156cbdf7aa80242eecbf70ee6fccaf44ebca8f03f65d3ea5673edfb221752822be08fa8e00e2958ae323da21b8a3e972476ad605c0c4941888a49c1347d97987f327dfe1d4f2321cafce6a85ddbdff57d3a542e38cd6f17d50f99c1509bd6a9eb4073ec3eaa489f782a2008f2ab9bea61f012054a468b9774d34e860ce2b8b154c294573149b86fb02202fb1ee806ab7c823e6c6419fe896702c573b95c59e53258a555c0027c89c3e60d6895b53e63be28718a84eb9724ea0991b7be89d0068819509ab85a87214db4e10ada4c372b95674089c4fd2a92fddfb44877b7dcba75d49638fe0132a2949cb0e137d44dc907be8fe3ac81e0287ac03b67dfef858e89c77d0957f6b617a837b12165291eaacbb57ae82ff89ba3ab42f3639ad7e303de574228d8e2d72569cbe94423d3df0bce6ed781cf93a3e6537d7991455a3731cbe7b6697ca6f0b8144356d177956d2ed65ca26f3bed85973d72d344d5e474855deb569abd0691ad7e958b46ca3cece874802b2250a0dd79be8f7c2db12ccff2cb26f2026aacf12c2860bebf40d28a65e5799a7bf22962fd186b6fad42c77a6cc91a4b2fc1c95608c7ffe294c182a0236c86fd3245f7c8f31d0f183ab6c503175f99781816c5983fa99d42c93494896f5316ce330ef5182823dd9559231d2b8946aaef10a68e60a14b34c2d87f4e0530ca1b2999bd69a10e4fdfc99cbe13c0c7571276d6bf2e05e9b56c483a38437edde425848dd98831b74e139ac2d9320e56c4b98335529510b19a21de1f92bc345e96ec9c35a8cbcdd75d17afefb987a4166b408f88ea899237237f7f2890c055ccf04c225435db2b360c072426f03db1bfe34cde494b473b6b65c752201b4aa9bf0920f13927fa49a09984aa77b36425c227637a20948cec4b2ccc8ae277bb61dac45ea0a5bf59dc16dec4f2f1ca7942f7f6e89195ece3d7bbfaaa12fc3debbd62fc2889d32831c0fa0eefef9b5b28064c22e2b5d7d10f6dcbda700db1a8efe27745ddbfceb8d159973b771104cd20e2e3496e9f56fab3e1d7dba5dc332ac3d6695b4281098eb72a3c72b13cad341c805a8a6a3a1e7825a0ec38cdefa8a399e9535a06e79805ef2d33512d2b0f6282668df75cb1eb6e5ca6528b69749dbff503dad56a0bf56ebc8b672a93375c01d698eb9e2a6e14dd0c4b1331f7661ea815dd218e46d67887683d661291d62f9199de022ed8b2357b8e51671722eb46940a5cbe11f4c2ce7d4a0d29877e0dee84faac1df865f1235885e882bdef834467f5ff191ee0d391475ae1316070fa71bd7e36a3f757afbb6494d32e970792e9bec2898e9e18dfbce0045cd66e07b47f6ca30adef42f2fcdaa7a5343d34910b6e7deb5e52f9a2975a99cd07e1902bde7eda9e1b28cb65b9d6d1ad928f456017c1f01980f0a16ac5365c29061df5aadc50f1baf2206f1c9e9dc6ff36d302edb293fd2fb1355a76afeed619a51206ab5a29084370fda1a657b25382ddfe99fbe0cc78c29500b2c411db6064c78c248ffdb3dc5a8616312af084b5db586506608bdf96ec20fd9e6b203f1254534f73e1da6845231d38d2218fb54213c6584bbbc38faef807e8b0cb285d5150266b036d54a3ea66bdfd3b6a7cf3a04e8aee09b02f388fb8a4680e27fc1a140266c438e199ccda93b7e40057f6dccce82db873cd75416c2cbeb19bbf0396fbd645e601e8188b25d004ad55ea86426752789956b85d67e05d149af79a1d65ad120a388ca9540d4738dece61af5226d144d39683d4470ada7e1aa7a1575b970d2525da40a7c42210ec213c4ba7a7ea2f5e1539fd9e3c41109df009193ccd373dba318ab73c46451fcb2668fd0ff205b97c650c9752228aa4f8d800957a320dd9a1a04530056e140484bcc05bdb524f7f158408c2ac0347a7da7f5ca61c804dfea0eee723cc4999f354e6869632b9805138c3553c976284f06c01fb6b16f622790af990f3abf0fe9dedd1624a75c3d67d102af11c40162c9b7f1801472ec593a65635dba6268557961996264c77766f40ed5a88453b324bd98a95cdc0322b56963e1936e82a5a0ebbf9349a5bc561cd46a76998500f0281289022db0c77c2ee8a190f508fd99a5a2f5d0d52069f3e451107354b58bf7715be604dd40074b2544a60698de730f89338e4f245eb442c43c0909bb0e3e92d64bcd81ec6274a3baf80d97ad950f29563d8805073159ac6f0d7b876582a4efb372e75cfea2e41fd505bd4fd4098897f5bdba079fbc3345ab331d0cfde66286b6e42bbd1240f3a107f1a92b845b84cc177525ddfae18764739e7bdcaf8760b26ccfa3d0d8e35302b4f242384d486ffbd6b22d421781f93cf7ff4d87329c75cda164ec4c9d3efce0293da0ce7501aaee09f5b1b367884b9ff8c2234226c8df21f03fb04b2a2c540433f428fbfd72ba14af9494cf42d2fa5e34b32194f60b0eb2e6dbd1d69204f39675d2ed5909376971ea0d28fb61ad338b382ff01d1c9825cfcee76dbc31e585cc4c82f277b040816704abcf714bdf4a7a0a717cd2a6c5db59a0cfb1ecc6578489b256de58bcc7b5a5aaa786eb4bbd061650eab79b0143f09e04baa65dc44a88154d63329a9ea9e2fcba170172c2aa2f44a7340156cafabb46428f1c80dd1ae76731cd1c2831a8dde86ef96df3988daca970cddcb56020c51c28d96f9c806c76e5ac2784534edc4910db36a6151404ad2f93e32cf202a5a7f57cd5da9dce35c6288467bedc904b8386940738e53893fbda4f2471faa8cf28c63d3ebc5d25848806855a64d55544fe1d2e652eb82d31b01e80f8b13703f5b28e6d49c1caf680a934bf24a1f9a03eee874bd90dcd675bb753fe7cac55c849e6273a5586085dcbe810256d6276963d6a457c105296119b119d486a2e3539a1786d44b4738dbe2004d2c894aafbebc2ba0fca286c59643342fd0a6cac632bb3468d4dfc1f16ad4712fa98207374dffc8cbfa81fff82276550a1a766a4b1b4f760605d76cb447f9c2ff282e16c8b03ada645f0346b43b026e46ebeb178d5b8f60f469e614a335672d1a2b41a24d610a3f48defc5575253085da416d99fa9cc49da162e2b89dc603a5f9bade65b0e2b8c17b605b359641e5d4d85917f06431eba83eff07b232d25af762fd3664e46abb05c1589949936f4da15cbd14e63ae532ec4ddbda01164de906224274b450ce53fa5069ed3bd3639e95d6b752a70859db04bdeb85c80a84471c19fedec26998d4612db2e050e0e0bc0a81396e155f4d6d59bd68f51a17f9f0fdf4c22ecad1ac98c53556bca1dd95a4139f6e020dbce53d027d2b83512c8f9cec2ed8872809a94c8f69e8d39c8e81f8413b272871c6f841a719912376a22231ca035bd4911272558039edcad34f0beade1528850ed5f73cab5b5ac51bd9aadea0a446eeceef513ae64e4129d0c3f506b5e54df66a6725cbcdd5aa0462a5f1965440c926873c15a9e3fcb763c214a2cdaf46f2664d8ee0e90392aa140d2037b85fd06d77ed4a883f7014fb893b21ff42d873021c5e489e1f3cdb488a40eaa2aa4f0821d4035a96aa3cd1a2d6f9e7b20b9fa7d8f077fd7b95d0924f8d15b905e6950d034334a9c73a64e91fb211ccdf01fa520b1f467e444474bd1324345a6deda65b11b89e1c98e2747e02fe49b4defc9cf3a9cc7246f1bd35bed3f1e2399c88a2cc381b08aef46e9524dd06604ac25d14e2f06a3d2601410489d6a2d0fbd4fbd4bedbba8526bd8daa4299182d9f048254f8b2651a136420db4fad89c340900623b92475f037fd2f8c64d8753913e12b0e55d7ea3c8e67414bd0cf5ffdd5357e81cafb345093a0fd6e672e223c2278f1a09417da2a19c900986679f8e1a1a685aaddfee955815236567ddea2843cb3d91a9782f9abfb2aafa61721b7b4435b6a53f36c0716977bf4cae035cdf6f413e3cee2681a54d390435d7d71a2c0d3faa83298a0b2106ff5b0a0ea45c929907858d2d0afab582868ae71c99e71d29db2566867988188fd03c0982c120befee7cd08e5199ae84ed3be01272ab57b6e273bbfd0f2d10f8cf77c8d1ecdf0b99cf9659bcc4bd4bbf8c1a551975059ac7bd174c13ea58c3440297c68759342f2a591d1d0f25d4badba84b17ab573797c1b015997ba3251ca0ed42e069c326fe93c5ca83e749dda412e9e160cf0df134edf93ea7054d73a952db39765bab4a4122a239f75945d54e0ddfc3387c36ec9afb631ae461fa8c0936893443b9ab4fe9165afc06480fe5e334cc4b8dc3f3da04d2c97d318d8a0a15632d1f8efc1f83bc5c704f124292db2cb19cd596c339705e4dbbfd283e119210448bfcabb078025168f3ee74be256d807b18577a59990de0d634069cb82fef2b1cc9b7a325fc3c9857719cf8ab6cb7dc7f1fd37c1bb09e9c87fbdb4d30d242e82c5924c3498710c9f52c9d2a70ca90145593c7de7a3e108783ab76d52a80a0d6e63a32311b79c3d4df5d989f743cbb7f48c6dc8aed3ca693733d5187fe3f08bc73e2c6cc2affd5326ea667a632e9eccf42828b42c391cd295d7f8db35d6f73660038473dbddf36204e45f731289742fb708c176cd8f6c7a0084fd92901be9d90ff6f76010cfc358c0f6755ca945c8800ea0193e6a252fffa5d09c606fa8ce349b0bf5495b03cd17af9b2aa813dc966b94d9a8f465a987964fe6ca092c35111d04b1744992216154eeb596cf88811582e75d8533673d3be4396149a40ebed64d272297aee141b4dae37e0b04c90a618f031f54f67970fa995e94a68bc273c369b5038d7ab4aa1a6051cb284d5e892993e40f287554346901a45209b98d096c08bf155e503ed7fbbc26163487d4e2b7b4f7a372522fc149e088d7436724872bd360538fa6b1a88931fe2f866619fec1a770481a7cf538757c0e921924eb1bb8ed36930f781ec9d9a8a548bbde91e5bf4ecfbbe150edf1aafbe715785817873277901dac224da90ed6200f26cdd47465318b1981d9ebf1d50aeae24508b1ae999351dd8859b3cf63c1af600f16f66d5284d4bb92d8ee46e2200bab291712882ec3d9054a023456842ca3e5a02f94b4f5e463e2de934744a31ebdc3d9e3e28202eef5d3204cdbc7911af17b2fadad6ac609cd4177f6753d0192bd645afd2c5badcea6402fb61b635b5c46f8b9945f8cf0bfbe1c77e832c77b8fc00443d75e40240cb1156269d29d12891cd57da682e1b3210efe674554f8fad4414bd75759effe703389e82bd8065b3cab1092043607a05dddcd09704d6fa1881d17518f5974a11b90882ca4d0fb703f7cb5113e1c1be97398472b4d54ca8f724daa4ff1953f66b8b4a41f6c00873dc89b0e92b67a27f8f8af4dd44084f5c24ec6421d5ac8fe9ec4f582d60fa7ecc341ce400c5308a0a3d8a5922f7cf48491b4f8c1064e673a6ca49dd5d8bb0a4b45d6b2df1d6ae5550ca7e87ad178428cc8e5ae6cb59ca34c17d44f8f45fe838140f95f2d688cb3ea53d096a24cf713331087d39d08b94b12921ef53fe4bcdd357caedce1cc590a2de9283d2c08343a26d6ad1bd6842be76309d7f6bf8b55246cca148f150e8243c8fe9b28059dbce9b15c6819e1cf61b02b3e98ea5abb5f5fe4e8f6a69197cd1b9b302170af011fad8ed831ad4396c97158164fdf43bddff86e3d7b17e0a50e1fa47d4ab53fd90ac1a4b3b402ea06cc0864f09a580bd90f7d2c900a55f37e9f01b668f1451e154398bb1fd0a8371503996964136836a4c6293f0a385fe14653a8950bce922c55a74d6b2f5a15fbc171e1d826a896a0738c49ae9f0b0da25d77d3bcf0cce9072b39f954eee2cc4bee55507c05a33b64f0ce15ce4ff674c52c80e0dc7d6279a92410f3bef1ac42b0870d022780842b09caba9c80afb16d16f20c25f233335dabe29a1a85a3982b52c536084c0edae184fe5bfed15b5434cf11195e8d2eaf9cc5158b5415473c995f45c5c0656aec1bdfcfc2304b3b78f7c66b310fc49588fc608b48407574050e9fc5b4eea2b224d276ecffacc6ce66b50c3d166bad24163cdd4f9e84e5ff5f87215f0a937d01f7ff6e2ebc795d2d11e76d87b3b2bcf97f44c816e836703f50924078b17b17600103b9079952ca598367a1968f3b8c1fe81d41f977792abfa992458a483b42646efd22e1b82264f2a8bcce9208d20dc70b811c7422d0d187cd72afc55eab8aa47a9eb005b65bf8d5350f1824d41be3d32de903b94e61fd47fa8523ec271aaa3671993cb566b5bfbaf49bca019c6f7fe9561240d1074eb5cbc13fa53934aacdfb0012a10f6a4afa7ceab346dbe4a8a4aa5a8725c856e396daf116862f8ab388a6f0b69cb9ebcfc6b8b309e4340ff3221d0c9ec7049649abf44756304ab8eceb9bf058d6a2d9767d37a1df728721d181e223520fc97aa8f208eb26a6f2f017a993917342f2ccdd83dbdb5430a18cc7a6d73e7e03fe1f7f18c9302799c6b7ec21578b0dd263f5be041b24495a4da35551add7cb29d361da7d79aed2d2cf58d65e4ee1a6cdcb2447b0de6f9eb72ac04492068c6b25dcb5464824817dd00d2115c058aef960a245e9b40dbeccde0c36d5b0330305e1aef0105ad4a9a7f05a0a08a13fcfe6342edc825bcbf59570308cdf11abe2e8344dce9f51c019b7e4438500cc04c4bc3c88155efe805affb480b43be79a0976ba24cc69e414cb7a919cb313c9476cc75691738f3ad5073ddc1945949cbe64479c6d73853c38bae012b9ac4262b30a4dd50b088bbd7c111d05dcea6d447bc72e4629341bf2422042db7522020a309b457f66e849813b75aab28ad6517c9d4f2d028f10d54aba05e86210f01fca1b605dfd7d8ff1c6aa97b5842ccd5d9d6b9b41523f3e807b41fbd7b7cefc5bfb384d8ed2afdc348bf3f33e5f3f344cb33a548551282a8b9764bfd28c89f6e86541a0bf311d4157e84514071249fe426fc4c580ba5855a0cc8585dddc3fd279cad3a38cd0117e643b360845829269937c52a56a3ac6de6158cfb697a6d27db77400b7ed585c69d62462bcff55f712d8375797927252a7c2889bbe9194a7b84cb15a4ce68f076cf3b60f40f3173952c74230c11317b953d5774733050b86d66e8fc568ef3f5604064b8bbe41801ed328c7546e0136825395bde8dd9193bfbf0f6b505e0ad3b24e774e414177db7b44736392cb8f8a82a81725fe2eae1026b5e00c44a94a8cc7e985472da6f64be01bd7666ef3e2e17dfbaaa78c80fe53a64e15e9a8a90ae388275abc2867200177d94f1289134f53e7a178f330bb4c7301b2554f64105a204743e695ffffdaed1b84bed321b42df322c9f3aacd140297b5f2f7ffeeac2d4c4e6ebf9f1a27a58b335f51ffebe9d74c0e98569852f02b90b13c90dd6bd17ea480a92e91fe6b55779ced1649838b5bf810c75855c7e43e5e61ce25945f1d302119270275e8ed4425efb9c26380f7e9a3009f466a2741e0ebd14f3ea709dae2120713e7a2bf69765eb33412a9108dc11a31429efc3300ec6e9147ad6e06a5cb61a8910e9cac58c43c638678e509785a220a16463d9ca5b3a13d208a67e6e307d9df8e20bb6f083307c2f40ad4fdd576d0c6188b17e229c10c384275b0183e05062b9e1d5b5d537fc65d52894a04bfa96521b1c9bf8dc7a06a4e8b466b2bb9bf63cb88bb02dfd1b3183c1112063fced7c4a81cc04c93d3ecbc97f8b6b8af21f015bf689eff9d38c8cb7ddba7bfcbb8b6389afde515cd970d78722446b01b4a4e4faf1f942ffff55a45ee7f41f4166f1ffd6da07277b02a59578c96c16e4eddf5e84df6427f74f9d7c154e8076b1e52b374522d90bb71f588989796a5f83dedaeef5e30a2fa6124f25ea659b7fb94beae8c3fbaf62cf146533a8aaed1dfa1d9242932ebb2c0ef8f75f2e6fa712e077b7b43a3fc7fbe251d230e588ebae618f740c8560c340967fab3d46ed28edb95dc65821ff7de0a7ebd85d6fea152acb3dfd3f8efd0667edf2a3bc05fbaecd6b229c3c174cb29dbf9e434530d4c9ba77445b31a99279788317fc392535723dc68899daeb962f2c5dcf373e114ca24c0ba50b44d765714be2fac8c9cb7dee2191d36626cd8abab78864e52e3ca4d1365d9836c7afb1c71e06de956e9bae8e617c36b93fb51d13c89cc1d7f2528b1d76da3fe7f32d07a126cf3816c5ce3e1022ff5a9810fb4b6caf541efc8e9872458a84ae061479280b9200c38a9c2921084cca7a7fdef763537bf003475f86c6276954775c857fd63111c375616f824fb224b4bf545daa74eb6b4ce4012cba8efc982dc65b6a435ebbbe0f3ee9c382227ef7a6e5b85993ffdbefb127b5b65912ac78de637dcb04db3433a7742de1c415d0871d661d08c6221512cb1d933e1cfeefd5f7dc3c1646d78eb5978bc149811b5e30c05d5845493acc333bd85d054335fa76a0e0389a188b75f4007d6bada9a6eb75143503276b23cb3ee0e3f33114c9ef8f9a964428cb0ab2074873162f2eee5429f966a698ecb9c60847dbcbb65e2a0f5c790df8d798a95cfa50e92336ae62ac14b1b2e7ea25236ed82fa9facbe0b65e416c4a628a344659f8995544e578fcd9cba69b302f3f53240dc53194141d2880b9b54d521e30cb83c40884a3e092a755bf24fb5ddb5c87490e5a821135f34a7850f440f0d2f45abf3e9c29682c3d9ee6c8787db7e6199ec2a1019992a20e78dc4871e948a89534865d6d4bd94793de35b2b0ca6119968f0e026510d0942b5fb3310386f581ae5c0dae2cdcd2f40e343f322fdf6b3886dc1d390e6edd94f19365e8c44cfd015a18873e82f401a1bddff9dbf6b8e7f866fe8ba3bf19cacf238a73f3ec57d911237af62cbb092c5aa5dfee118b89d2e782a0e008223364c861413c2002121a3c73c3c5df745e6ff150d285355416afea212ec2c092794a8613f183f3a86e498ece867634a572e646f386059e2ac8667c66ca1299d0b7486d1f1313e4f4da9680197b965d0da3ffdacb1284965ce1671b0592be04e0dc02b2d599dd6a78d1687bcf20669aebf4231794f4158d2a1f1d213b07c4dae519303f00beba52ffac2de8a3574da53e98ed6ea6a06a643472ddb892b24cc95e17b2a2ac0d498f18b0f2ed98cdb1854b321cc6799c0f0d553e81b0bd82cf6f58a6a6d0333db1717e0ba7b2aa15b906b5da839ece9b9ab078d1f52580e7c6d7545ec588644925487622f79a43443cf1eeb4609c996a8435d7c0d74797bf2a3cb753476718bb493ca423508a9ea425e5b575ab5b4b478b9f7d8c221b14782ab1e3328371edc8af633167ea8ba44fb1bbb4dd7b396edccd210ab396814565fef9c9e6f7d0e96aceaac6b959efdff9ce0508e85df4b535ec9aa526168ace93ee96be33b0e93945d523a3bf1c3182d4902aabfb4c1b3592e76a13a2d01f994732344eec5ba12a89f3d2f7f33ef2011b88d8ff02f5119fdac2341219dd9c9529ba20e12255d2c398a55e41df323595b9a3b19ffefb7373f2f6a71c11a02af9d767725720e7081c23f69d5c3c060db4ed3ddfe861b7d49f0d6f3cc9a0260563dbcba8736068815c8d31891a90d2a0b2067183dcabd986bb092246ec7bd974462ee64a1c08a9163c01d645c9e35801df61c52a0d59e2e529196285eaef0cbbe9c0e5331c9d5a28df983007382fa938c102a0bd768744797205625a1d0c256b1dfb07c498a0dface33f78947fd17132d44e982588d3ca733f31afad0520e2108c6a2be40abf6d75addae2f0566c931bd15a2267e80f3cc9d6c050e0bc624957ad50242f3a0f532c36647c6203c647ade30d657d0fd73fc36f5f52f4720184c4fddc5b2a7fa7bed1713589dccc200c6bced8a37c3a2b70e4f2bc54c771c711dd0b4601b765d3220f77c3a847dfaecb400555ce7ff3a5b099aa6291a1eec3c0cd0caa8ee6d1780a5b56ccd95d169e399a676020b907376e47e33ea76f99d5924441fb0bca124df31a73617ab5bb5e8418dde7178efe9630320d2f9ce348bf0a9809792acdbd24ae5a8ea9d6d0f8142f5be32ed3af05b3a7a1ec02062e11e9e63c073a5185f16df2d7d9d87b9715fc475344238aeafa6864b2b08a04443ee32bd3bb878fd15fa790790671909fc82239105263fa3ff3359ec72ebb1273af809ffa665a2993a172f142b811ef748834b8f9595b7787c9ebdbdcedfe26b17be5f271e07b63503839bea5802f22fa7f3f657a6d25c273ca0ce3f23ae42250737ab1458a8cf0ed8c18bd441b4697ab6829ab99c37637691c34f3af3d661afb5cea404c9d3da778015c2a8678478010767fc82b4ff56e36b1dcabb5448b605fedb588c934e2a37a2eed31629f3215ed837afc300e83509e0046c65823b5c1fde9739575f011dae6d315bdb82936f22c44fe000581c26eb4fe8ff778223f6f65fa26cd964a06c7b6b51a6e8e6278502ecfc02bf4d40bd723bf715b7dadb60096f0fd07cd9e276d170d46f219c711e6a3bd5fbca6850cd1f21ab55154f7391df276fd74c083529c6d0338a3a220499f493f8068b58fd19c1bcc1c58ddbc24bdd03ca3f645189459004f6941351ff2d630cf5b3f56b32ec3cee16cf55e6bffbd888c49f18bebe8d155d921abc1f3e17f62c6d79ec5b50b7bfc311bdbd32e07227d995d5f325e58668d41b58151a674c23e577a90e395e806eb9c55c1e42611fa0ede55726415608e396514be65ea8fc29152c437f1046bbaeaa984b477f0eb250ea9ddc7e91ed15a75262a78e8f0b09781bb6c5db2420b525094003b5233184df683745d2a37352f30438e44c9b2f920d411ec317cd3196b41ebbd7c9d18c4527ca734ca5770b1d2ae230b8752ff8420ea556efe5122110880be75f4fcb354d4d6888a6334e116173f3c95e3e1881ad9d16434af199e0e45789f6e22a6ba53dfb0b11433598496215e7c4dfef8aa28aff0e572014257803c5bedeaa3eb69e2a17bb041929060f5107ab30ce258becea132d3d06f61a7c9b3f49d00ee39b8851aaa3cc24b5f212fed7db245bc1eb6c97ff8ad15bb3506a7a2b10082502dbc8fc7e019fe5d669a9eeda28635e9e8d04398e38a59d90b28fcb02f0648617c6de69cbc74cb52ad230d4b773af7765a2b6b990d8afeabb5c8aed6d08f62ca83d10df2b9f1e3e0c09cecf8a272024a27d2fc02ffc19bc0da617fb4e14c321051e2cc349aeff092a73238722f8131916918ff271d1b9eb99991168f86db0a449fc32e5c7e81bfab0d3aa022a812f6fdf6f336d17d925697df3a8f9e332ca2f731085b2e174d49aba071afc19fd27a9967705b561663c2bd238f6804048d6c31e23c1a2e25af08f345bee63989f7fc9a2e046d443039ce41dae931918b07b71d3b4c20fda25c7811476b88eb12e7e3553638773b401458d844947aa7a2dff2f7978cdb2af92a94cdf8232c84442f4950c1dc413293af7a7bb6e82fff08f719a5283af1f67628ac2b8fbac7c325790838c73402cd7676dc7dfc008e4cf1fcd0ddd6505c9b9610462c8d0fade8d7acf0545681e8482cb03ef166f4f52c5d5ed1251eb199c7c7be7bdfda72032397c077c9c59d4b63a207d17a2c67cc0069459af310e4e8d5bb1c95e6d86130a46e4f48bbcc3d691922d63ae730c581da5cd088c2c1ad1d1931aff6f8cf9d9ee49453e80530507751af30586edd8bad67faa32dc545235fcfef92e7bd4daaf1fdd6141350a446b1910334086845d03ab5af54d5ae12f9fadcebd9f84dd4aa87b09f0fad092b112b970014e50e7b43300f92c8e88b64acbd37f0e841510ea4b3b69a09146f1f5648ecf7a25a5c949a5a68f954c9eb40fea530465569a108d40d64a63a98678e13c3903e2e676730deb82e06985649795b946087250813831d60ff0046fb3d1a066160e4a360b420555108552bd24d22c1a14b9e44302c2492b44afac225c9a2fd0bce2b9e8105d91fd1bbd7c85e213b6fc6fd73fb9d1e8a9eafa231a7ffc28f6cfbe4537432fe4bb6d5afaa8aadcf02b0fce4216b01f633777f87e05148351ba0ff970175070f50c3f1157534604bd040c84028625725f8fd06c62d2c11a35933ac55ec0d40b5b49694c1b6b8992ecb52ffe4cf2f15b581fe4a05f3a9a61a548673a08d7365a3ff349d6792f92a1f23fb8f951c18b116ad98d415b4254c7efb9b57cbb9b9da870b75d10e0c01484b6102e0c6750ec3dfa1a38de06cc6be8eea6f84352b9b44959b56e12f00c44997778201ecdb3acc081e8c4d8010a774d853e53d636124047977c21c5ecfee4c324fa3f239d39dfe2b59cbe4509d2bcdf8ded6aacc86bed15c7b4835db5434149bdffd0aa47f3e2719a54b72d460a160644fe8443d21d27756a62fcf2d1b90aaee0d7fba9542bbbe77db52e58fad605c9f178b33b64613ac88a0d9f41d5cdee5923661236e806eefcd911e793f11878090bf9218dbfd76c25ea86cf8111ebd8c8688213cad616c424f9d3bbfe404d5e8ba14867512da1ce9fa85137b9e18cd22e93b3692af8a6ef93473b64a10e8abae9824a32847e65e2eb9684a03b518d3504bdf491ee5f7534221ae3a1fcdadfdd01dfbbb2fc4c63433d3a673e775b3f7f9127245d023804cf533bf3274c76e3004d5c0a15ccd6744c1af6a54c1360137fa4b2ce112482db5536769488597a29449e6af867b02268c6fb442153c9ddad3554e06ba0a71c70002d6a64ae120ad5d85ca6f6ee7bf0ff541ad8bccddf3d53a06afb2db63c637f62572e59e388a8a64995801b88e94b3c76aba33b609a5070e893c03b65fa6be2b2c69fd2fc1af8cb13dd0a939ef8cd5504c16abd858a6ebb491e581a31db55207431420f4d4a3331758ecde1178f27494462b06ce764d80c915498ead2d78530499287d546ea96cabfd8cc0b6f10a3e4f407271f4af55fc0c398bb86ede8256f1a848da3260a1482fb0bb083635a519e0b152ff8e497405a8366f3e9c2ab693d144a0be6a00eb7d9b973b2c39833de2d0891c7f68cf76c9c71004d45ea3c97e3184290350ae95fd6ef7b82881336bd9a3d01b571e9687e4aada668322aac578534f91f2611cd7b9df5f3a75ff711ae795798bdab097412c9f04cc35d6653074a27b41663cb083ce7ac309bddee0b48f3176e9312462ea2184a6da076d0586532a65c1e168f11a108ea8cf27878e94e89dce3aa312beb82de40c17c15481aae22d3fe5390c2b701ec4657644b8dc11f8fa876ef8841543df3165c8ef180ad983b93483ed53db6f02c7612b42a9eea627a1f0ee6195c0f4c36b4e5250def19157ffacefd4cb1d9fdcf7aa1efd5f133136677d88aa38708758434bfade663db19ceb99bc41ef08d9029eae72ea424c3c5b82ba4c08a35e7d514e832e67cc40c9937bb77223178b61ca107cc58c237d67eed6c980a26e463beac734be599633b9223c5d07f68fc15d5f946cde2c97a5749e6a70abfc0a9e7b11b15609d1fa4cff2c3d2b18ffb16e9c2a56bf2787aa645c8c30b6707366f3692d15cb66ec56c6252bec1a7c56b8fbff348b0621a8ae5d71290cbcc1fded9d770ad0a312a4f8439f1729aa8f9f3c810ef82f11e54ed65fb5b29e30759d82148363123c760127f05677d7222c86d10bfef97daf82af36bb44dd509c33221c4fd110c50999f44fb1591a85c531ad8810744c47a1e9c30bbeb60b816d3d15ead6e6f554080e9a5e3f0d09fd50686f667269aa881b04198e4cd569f033060bda79cf528eaf151267a7baee1f6cd95b89b615b27373735f0e92a84764107dd11631ec9f389d1fbcc8fb1130d313ed803c7ad0480baf37d15db34e12d226de22a594ce36a5897f55e2af978d48fe5a27cba9d6624090559d738c09f71ae7b15e4d9817a23d784b33de816d99dc67d07b4f685aef3eace3c5e8891a6d0f597e4a0c9f1999a274993111e3a0b2457350059b51cb0358c27c51f530e5a65f5af002ea563d48e5ce136722ed21c54406de8603a2335c1c4ba4d1da3e91cb76fdedbd961093631d4b3f6c0789fed30ffbe64a4d45a01dd1fb34741109f2268af226b8d2d72addac1662b982b473ef1ddf8096410e5b000dd1ce03bf973b5fb03043ad76c0be38876ee638af292e991f1b8232eadc7657a3c0a54cfd0d175ca3e95ace5641a6e4ebef0d151d758998db7ff5f63079c9e427ebd3f1662b8b0b70480fb88a985276734ee22370c880a607fd333ae76a6642759eccd14f9fc79218efdc45c2d371fca27da7022f13e649924e98f81b51006260ebfdc19a87138d6867034bd9ac50aa9ab84137c4b7705294ffa9ece1c16b77a02000930e77cf6c88b926333b53ae2aa739038a3d5cb841042be7b1df37d9f87838aeef46963a9652743bd3fae2d44d0357c839615a47f430970370e0c8e27d57ea563417f258bb07494b8e9754f2ca30bbf6e2a9ba5b8abcc8e34cc250a5baeea822a0e30b9e036aefd296e4dfa8d99810dc32c5ca8a1a7c6c48741379d96955594349e14ed1a2de751d62da972456fd7b25387427e89fcf82d74712a78cddec10312714853de5ba87cee395b4dabc3740cf4c0fa8b03cff38d2b46830ea2d959b975bd9f5bfaab320a717a7b47d8866efd69e7e77a1e80bb0524fbbbe75564141ac9406ed3d87cf00df733f9b4b9d2e83e111bba8afdf5f2f7fb5c7bc5813403bad8c1a5c5e569b0b392d66518ce74f4809eff1fdc1ed813e42c7345c12394f0b36fbea127a09241c82b4267c40bf2bb71a7a64b42003483bb6081708f91dda23513a9aba3a9bf774d091f51a65071b3361982fb6b8bdb2647f02ec780ed31cad37f0496a512d4503ae0f24816f5ecc4d46435e06fe6246d7bfed63832a90abdec5c2288a3aba0a600bd63982e7a233c50100fe399396b2b7b8b3fffa26513c811491a367c5e8d2971f47f0b7e1f329ee4aee2dfaae62f48f6fbef38f78efba824e62bfcadbff5f7a384707900ac426618015d65080fb76aa4172d5eed8ac16949bac140bc8dc1f86727bcbd4dc18057729f27f5ff1f4c48d6fa720e7636e096228dd23f5ebc5a064074c68949f866128cc30ff1ae9c8cdaaff59b1c733fa95af63ce05d836acaea4152dd1f435c69770af2fa0930110d3e5ebc2c3f9a7a632001da2afe098fb65919a17b28eb7765cc4d6793f3c3e4baabf289821434c315e58c5527e482d6055647b4583f9653d67e354c530ae5af60747913bf51c2d0a00b7d1e5f0786d77335149fe539d533c76cad5decc4ef0c6ab58a72dc8bf10519c0fb6fe44f2e04e4f2c7f053c2cd75d3c75e988a478119b6a6a33137501f6f637f79894d3c8fcc204bce9531477f2375c1e6dde905af25c186918031bdea9261e32f753905b362a8f7ef32d71a103b02b59a3c2a48d9b5f90b8a90caae2ac1a074daf7469d86b1c9465bf0f1bf5f3c7e6cf0ff2dc65b29451feaee04dc74fcac3cb502d80ded64e33dfc30d7dfd8ed9076cd5eb9b114b43bae59344a83378c32cd0d3f338752c373b184f9feedbdc4f380a1e54a5d47afa1a37985f5d3fea44a392f9431564258cbebaf1c442ad0f7d9a6b5a51986ca2a00cf805b2589bee53d1961bb818606d4e2e5cd350e045d252ab1d1eb4afe8a3c938d6602b0401a3425a1028f6ba527030d4391c6c486788d6135ac7a74dc7849a0d6f1f212e77c69462ee877b604bae465b595f6b995435fa0b651abd3f4fc052c0171750bc516cc59414fdd4922f618bc12e449ca203211db85a003980b278b230b7e2200476cc1e725e95a96f8d60315a67917cc6e9a078862e9d905d98e6e01d189a7030032aff267a6ae625a6526c0fef64610e937836b6ce042b810b9af4bde48a97511e73da1b71cab3edd95ff6b723ff606e262bab3371eff555d2cd610806ad0eb2128a22a9b44b8f01ccfbffe03b982e09f58a74d7a3f0e3bf1cafcedbe77b88b07b76c065200b27a9dbab1b49e20a2da9ae017d73b267a28775e737769d0fd4e621a851337acf90d80fc17efac43cd3b788a001ac88bef4a53cdaeeeae0ba996296bf56e29848f9c94332f53659b8cdf632ea41030e61f28dbbb0a49b2cfc8b5507f06477942785d32daa9c628bb7e33a5a83d5ede97e3841452b2b49b663f942a63b8ba8d95a3ebc0c71678b7ec409081a702af039504da62f2813b6fd26273a2066281de1ac59c551dc4c7ddcc5a3c71930d0fbe72b5592114e69e3c16396a46344778cbb06c80c93ff062b4b0c57215129e7e573fef959324d72cc49319a4a25ef56a8d1237201c4eeacf3b526960f83f87b627a1b3d17f0f923b2ba8be48c4e6fdd7a7edbb9f43203da8dc8e02e20a9a701b728a55fff7ae3211a7bde96a1c2a146a0fee3e313293473a8312211f5261f72435d1c5be333769747e2d418d6859fabe21e1eb89c87061b5a33b42506e4b1921a673815909a1a002cbd58809612f457b52edffd7073d4479595a0bc1c314008603cac8c9e44c016fa164b264eeb88f594e4f2a00e2eac976d769480392a8b47570bc5a35834e04fdceb435f25c0d81114e9b2369bf34022dca39522d3d12c886f56e3eb344ec9b9ac4a993a99eb8e506fe9d3a50e5296a4f977094cfe794fec4abac9b4e02611acc7d0981752ef1a80c9b816f0c6376bfccce265296516755174b62ad575ce86dc956af4efd88506c04d51151ee2db54570d5cb44e49237226f768347b4ae359e1121b114aea3e41762217f19622944ec335c911f291ba71f8dd47ff533ea9725511254872e65f1326761bdff4efdffa6dadbcf00baa34ef6db9cbb4a534d90af653112616b75e2a9910a6f43d93cdd6d77ff05d35a3b7132c514dc32f730359b28a69e0c2d6216cfe2ec286b6c6cfd7bc9579cd072bb0cc251abafa2bc66680eff8305fea501a0210c86350d1b8149ed5fd07c15434fc6bd9697bb1d2ad528f26c4fb80f5d53788497e5f1a399bc9ccc24735f15236c91662b695b8c9ea7e23bb429d65327757d2a2b1d3ea83fdd836647c9bb8a9b553ed7c88f66ae9755665c39aca3de8573ef0d173c3643ff05d31c5caf42a1ef9f6cda6dcc158e3d3534830138bd3a123717a62850f095ba14b6f69280b9b6904c07ca5ff8b384c0a2424dbbd0e3906dda1f0b31405d46de95d279a2c127034833fddca54fff67133641a05c4463507b079fab900a37bdf0e1c59153efd8af275a5660925a8129efb18237138e1305d8d99eefad467b7ad507bfcfd2786b2b5aadc4486ceda018560d7cfb14cdcd03ddb823038f0e5eaf44ace651b53763ab33068b879a3264ac322a02482ed86f37b6f29ec8124b86bdb97192c1cf636b9d1846e19ae3e24dd3919c08770fb293bc27baeb53c8ca2083496c0383c6bee5bb13d9b0ba3e6b7fb33bab009d22139541e565fb5b491168cb1f9b98964b7521ae77ccbef18d9b7ca341978f9193ff6b3bf50f46369362dafd767ea628a425da124aaa270381adb01d00d957e68723e4744ff1a0cc4ec34ae249f423a53fd3dc29c17fe48f4760aa98e02377cc89aee5e0ebfe7c2d09d95e7d3ed53818f85df2d7d3406b1495e07f58c34cbe090a61bf5ad9b95381b13350a90ca157f3aaacc3d00fc92cd5395a26f612337bd69093ef7871a25dbbee76cc3289367baf13c522bad5a37143b8eb3d4117bacd9db2fcd752b9751d3310d4f9094be9c79e155b8a51fe0d3a8cebaf83b45e12231794bcbee7820297aceb3563e145862c0178be65a35c44a041516e6c4c18fabe754e0416fb510995edc4f4f2973a3b55e24b3ad707ff578c58bce68590c82129989ce33b450f98c8fda151a9d06ccac3f32c9c655886c54f5dff75a36616049f02ac8d53599b16a7ce6567c031f10b3501f6d64cce183488898407596ceb2d9df0bf5713a08e57d03b4134aaf0fd88691a14108a78f383770e4e3dde268644465331a459c8166e8c908b219f68d7af6334b44424a8dc41483ad891fe082ee53a31d4128ff6ae843cef51e14d977f38f87186eaeed5a7e6d9a3a79196b05e5ded2cf140115a27fb806f17307c49e090825d58c92eb977a56efe192a48e528a45c544d40c386fcf5a7c910526d9a6a64476fa8de2d00099edad7d705c7d5aa8551adf64a074a649178feb7014d14895e87493ce95ac00ae09dce1391a61d54f0ea57b553311bde7f2bec355a74b4f855789c586507e33c66bf39e94641fb86758bdcf2c9421982bc96a840370b0326274d246ce33eb602870846ca949667b79264de6295d486fe586d02858754eb6de2bc670344c2fe420be04582fbb96e420548fdf6d1ac3f0e0c926f2027db1f89fd56dff8b3cd0d3b2766a2320f4b54e53369a7722773dbc7c88413679594b01a44e22351e8d4f9666578c4ab42928b731b97fd6b8ffff6206040a7d17731fde98ab4882d8caab6964598cc42618c78f2b3942a3ad5ab32bca16adcce924c50f0de4c9a0cd168dca90f4abea2b168947f6d2e5bcb1de393fb036cedda5a0c4100f7469be50d8beeb24e97253be12aa5f8dcc37c129d1e465c5fc71923c8cb1ffa6de3ae9209ab10d92b3593d1036f6c7a384ea62c557ed91d47c6356485929ef717456a00fffa4c3b291b482094200ad1b5e1d171ebe94af683e3c467c56f88c28fa6992f2e0c3eeef644cc531054d92df90ffdf95c64ff6b2b4140d37f878331d56ca66b487186aeb36927f3a0abf0ccbd4e6ada0d4fcae9d867bed4a729e33c141e6d4d4d0abe7c3d99b0006f0c86c227e20c47335aff204e9b7c26f10934394b91d019de04b9d44f7d7382cdbb38ff1048527e528d71a5568d66b1f1261bf0067d05246fb1811fea65adee54d60fc20ebc73041a4eb4ae5d02fd502ae612b732ff48d0c792405b3196bba48b8479a5902b48c8b429583b6a01c66838fa4c80e3f5f4b26e8be1b3f9860a16172f182bf7b4e854c2c9ccc762d0154ea476804ba70c790e06d4608a7840029434c4ce1cec017e5274a2a42767e46c211f4fda6bf7e4ceb9b830cfeb960e0dbdc2e8d41478818738addf9102337ee33c0085e893e75afac952c965ea3e128fb5d7fea29d41e6f8276383c8bf7e521589ae7ca9ad9f1331ae61ccb0ea218ac4ba1906fa32e1478fa007873dd920224936870bdaeaa533d657d57f56e9cb3f986cde41d0ef0720f736dae3b411b37fa063487b207f5f69009800888ce479782544e518ff57f0ffd044d1321cff187a099e184424e245a4577d8f59f69c2c99725caca54dd1057cbaf3fbf83e5a6f07ab8a704d5e10d3a08e32b57138b5b21a3f1918a7a90760f6d1f4bb2f01733b37aae89abcbf00c3ea9c4b91e17f338f76e54b711d4fe34404f185ca2424f4565e6443a0c876362ad51117160c86b1434273a0c34bce05b1ef19e265db22abba8f3d6aec188ba350682795e675dfda7720573fdc85664babdb235f668e7cb7606a3eeb5fda3fbe27845e4205ba9c874bc3482fc45b9b86279ae7b5d12ef429f29a1b16714d8bf012d1132ce5da48198542f13a7874184b16453cfe5d4b82fdc9df715dd939d7dcd3202f6f559d8fc21e078be135e983d14902930fd7d83b584db115251a63de01ddf2233b07b39f17f63fabba91d43c51e4fc83141af0efeb2aa64dbc6e48d3747cc0b723c9b3fea27d57dd4e9e8b6956b9accb586869d9beb31813a01f48f6b4703ed8b67c35d8b5bd920b30229587e393786b108ae451f8e0cdba40d9cae772299329788df036131cdc8b3d4a3495c0dc9191016d15937840409f09565e8a082f7b19e560d594260d1066eac94fe9af6ff1dbcbb69b13dad88d140a61ad10fbed8edca609420e644392a60b09e4f631c86535b40b4ee572f6e7b8f117e56f3791854e275cace289da0ae78c538d64a49ac79366adccfee66e683f723fdf521761b9de8409f340a01f4d285481ed7d960eaee2433daf7aab92d695f855557de9d5fc09ccb54a929667d987c1d2f67a1a0eddf6d749c2bb22507d578621c2c17cec17e761d2c4da05696b965bb338f027670504c162841549955fd46db1de64d2ae8132f5d0ec083d906085ed116232986888b32f09b10c4a0739a03e547cb29a27acfd50eae25210034835177a17a8ab5ffbf3588c0c9b452d865aa3673f157709485ae88645f3cbfab8008b11678b635e400699daaa76fb21e84fb1b7a87dbf05c330808bc1d27a0cd19233ab50ea134bfc9a6779fcf6157e78131e7018cb0059e4e0ebd1f51a5f8ab1fd665e8081cb61105d91c2b7a6b6727047db6f76ad57c59b425383d09548b13365a658ad347cfed6adc16e74ca52ce9d70b43b930b715d212a554035b5dadeb590745774d1b3a1ecd89cb0caceb76ea8d5a6fbab193c0ae9ba0751ec233ae7ed6a613345cc0f03064ef790dcff28b2a977a6360dfe2e5e4a2ac65ba39f8b75178d9f7c2e0029efaaed1633d3ce3df9683ce41e08c32f71d196bcd4549b31b3ee7b08ca8de9e741ad76c4aa54a319ff77edda18307618f91e11480a1e2d9b0197d9e1fd08985046aef4ce8cd39ea7b519cfa04bd5289824272ed8f39285c9abe225a7bfe4f31c4baa9ebb3b0f76acebe8c0680ba686c3ab14bcdfff465c101032b4a1dd759623ffb627d70be4076f76c2f33ec32fc0dc2922790035acc440e0c4ca3997dccac872689b56d30bc06dead20cc3ae1d35e642a5ed20a2389682308197f45b07e01fb5fe4d0adcac51e2480f43744c80d52c592d7f44ecdf8ab4f8bb1cdc4481d556e8213809590a7ee2358c62bfe97d3ebf06c0e40989cf44e90182b21a861fa43d2034968b9e7364bebc4b8097cc1d19a7439faad169ec9060224f12f0133fffd6705a1ceb67e5133f3f07c80fc5062e8c857873c71c3b57908a3b6ff6426b3ae83ac8e51e8ffdd8face9b5da6e1c9c6421ff9987a6ebd0772503015172cb4ae6c9a67a15500d77a59e12d0b189c35f92b1381757c359a6430a9e3c418eb306944cd64d2017882e3db125bf4053925608912fe4351d278749a3e762a9d9831e6ffdcd499141a24ea297e9e904a890d7c673e7ff2af4c7f90c9364680563bd9b38e3b8f7c3720a4ae974e6c6bd3a923ceca95e70f79ca6356c6f792b250dff75e8a0eb40089ba86259084f443d81ba5f1d99203bda336fcf7cdf48b13a4a0fbb7e97a7fb7c1f4ccad6b69d8bdd7bbdc36aa54f32b3edb57f7a69f6fe2031cc39379a0c2ec68d4ec695c1a85fede95e4e53e5358ac64eff3ffd50c3beb9cf1d47664aa4b82c381ce04a7326f1dd4e7f727f991f561d0323e0f0e5003562c4f01a6b0df5f52087f0e4e314cdd7d5853a6ed2adfe47c18db232f8115a46d7b127c150db1b5aae98715f3bea0f889d0500a77385d07b7908f0677f804de899e633c7eeb074ae20470d4c8dc3504451ad9df1e280cb7510ecb37c7b49f01c9e9511c2e9a599801549ad10ae24177269cab2fc661f1a22441986da00a3778fae5eced1a4c0f2788562b955ff7ce79cdce5d320ffa8132c9de298343ace920f35780ac615fccfef6de817f6f83990dd984485151a9ce183292b902ec842fb9102f8f148ea7eba0aaf2c9f145e9c371b6673dd76141a07d439a9a0d64186e8e0b8baf6a7465bb68125a4ad96d8914466c91241609557b09f5f96e53456322279413fd1b85578f86ddfc13659d6dc1016e6186d9243c9fb28ba86351b477385dd013eceae794942af589f92c7647d179c42eeebc458631721146dd33fcfe1b493d451c1fdbc960d5209d5889cec643d3b841b9c8acdaee2622870526b1b722449d2e18c4318ad917b6b2b3354865e25cfde9900ce5bdeafb81a5db5e2d6660b6d46e78d74d5319d34f4a8f6a3933a8d627175690312d2844f508c445ca1cd4c524a8398091b783103d19b068d29a0c38c221ae7e85cbdea7bbb1448420d5744c32829ef851261b7856d996c6b338200de22fbd9b2afc4b793974cbd8075219200c9f074995c4fd405c4a30be5a356937c6392b4e098e431d367d5598568245c6b39a53bb9c9b83ab713d4870946c0a89b414e8d6561c91d19c5be6ab3dc0b494a47eee52e86f0a1d708158548da4b1043e2640f3fd2c02984e199db0c9ccb952a111ed6e27c06e6132189314a4d9316491886f16b716059e3c94cbe195f3f6f62a6a5a9e0c487882be5eb48605e98200ceb015f0638604d757f211aac86aee265a2f4debc51a98859f11c56be10556aeacd59c651eafc8ee368e12e5890c3255192736e6944596d60fa5e11fffabbc3ac80dfb1655342c598b1539149b32be1bcb48e521e0a9039b37186794d355e4f9dd5ae0ccf5197fc911f5fa340d796a61b6d35dcb860719d3d141f88d07db0819d1012217cb7d6b54dd7952196ed2f7b8858243a0c5bf45fd3a4f495117354b31a24079aa57a9b305a6e34f583a3963c433429412940ab76ab34fde26d7d1fdbcbafe45ad6c76a18767c612636efa4496269816d3d1ac137b4c2b22651fccb6ae7848d6df7267d3e5136638b2a6b5c2d286b4190cae6a94b02329b34af637981b81c29175a32f33244e6606417c5e9828078d66ca12b85c0b84cf99ec07d1fbe06e50737e88376127c35d6c8ad2c8ea469823b1b03a0158fdfa2dd69755d64799b559a81e7dac5a5eab9c61cf3c7420028fdb73f4da03385331f85a97b2f00e89e56b68c5fc726474b9cb6d7e6231335c43c6d1dabe589747d52c33b12925d72cb59fada6521d162a490bc60a6a5ca3f8345fe59936848153820c90ddd8025387f736e59130a8f420b016fd5c14afedfa799d36ce897eb1c1d3ff5984052b1193b122128f23c30826fedf4a9360ba447cd36cd5ce49a513c020831b73467eeb5701742131aa9b39e8f9c1f44cc3f87fd4393c9f3316b430dcc83c10b1500202a37c3c825e940f270ad998065e6fcf6c5c7c001124999d78c912b5d389414ce52be7727d675c00f2634f4c67744654ab58448985cc64ff9e2fea5fa520c75382caf9b686b75464c8e88102995cb46f16e628a22695add97b1b3b0f74d711adf2103df6cd3c9499d950f93d3e25f83a18ba4e25609fd1daca7c646dbfd4352778b19515c8ebfbc69ddb18418d6c30747fc33b3a38d6b5ec5f0c9906fa07495f6564dd477d416b44dd0014f62e664b31683f8685b5f87abee4f180fccd20b67d3369657e2b2afe333ce2ceb4de511a0ceb933559d1f63df9a31cb91d86347b044ac6d4ef05f0784437de5bcba42e844bc188a6da0958dbd10aba4c06596904484487ac53015030115135a359b7664ea990bfe492990eb992c7889dbd12f3b0d94c45677cb34abaa966a452c7c1055b9e76305afa26c0e5315ccf40e33dee0a4a19b9735d5d5e5387d5fb531437a32f44cc904deb5ba63e15526630ccf3a005386d5d987a49ecaef3f17b00461342f5637ea3431b5e8eeb6824f6e226b2404ea57d403707962465ba1b1c8e326203b4a2badb65782e94d84bf5f5497dba53e0b326853a25dbfd0df903b4450faac5b5b28a622cb7fa69a94bde88544510e85399e7942392fb39804cf9529c39f145f7dc77d2fa508cc84940aaf0642f2477b9f9d991861b3a7042e3ec66418eb6a179385d32ab4a665928f16de18fa1a54559fc1b85ceef14e56e6c7ed03276923a805c03d9a23687f46680850452394b69cf36b081f98fb6483159018080f911be5ccadb7fe2db0cf3480ae2f3de574bfc77c94d809f2e05a8a4b04f495108be9cb6ac5f81426550f20c10d0e169486153373991dbeaa5fce37d283e2c74df439b988af2bf5a830800f1f602c48b15d18ad8cc0c3ebb60090845ad176ac0bc2b1b9064bfcf32f418827f0a6d425fca5eb6f68b6f5b8c71930361f6fc1bfab43511aa55b05d0ae5b5358dffcc00464194a499d2359f7591f1a2a929a007533c1126cb7ecc9e2f9c38a084feddc52ddeb2411b29261a3829f515e2becf650553a7b8fe77904a4d9ea6aa4490330cac6b11d85e690f33abcb7618a98d12f29674a2f86ca864680116d8dad45a479797cc2cc1515b2cd90fff1744d6f8fecfb9b070d0814d66255cb7d913e0dd2152d90b8302f80e3f6d88eff93373bba566e23d4be2ca7dad4d0849af5feb8754d110859897016304ef7d7fefcb38774796e3a1c1012b976ee1f3035b6991d411cdf881d9f8c8eb95a7eb09bb2993e25530c4512ae449d6d8b6fedacf6afa32f62eb227dc57bc32a648672665b64ed85c935108ae4c2feec25a7e8881160dfe2296c0f347259d7e5b285136f02ebc8bf7bbacbf4e1f56035f16e4f91214e1d117a838314513133402f9729f8360185e0f2e57917b383ade19bf191888e1da0612b74a59b6ef62bd25645c72e1343a9a7680837ae50a881a8fc8a84daa199b257d0be8ebff2a08ab3a42143ed7a62688b0b94fd7389229a694053e2d0fec5b04e78a27570605a67f82a0d6acf4c840c3f6c5e08c7b9a5039804d439c3e7103212259b6e6b9cb527e9a4cf3c4d97e19ef7f347f26fe52f4984e3a487bd686a4705183d2ad9fcca9d6961dcfbf2e21321acce0b4e3b018f2b7f8b1dbce63d47f8a99082df9adf16ee35eea97745ca481ae4e6b593f55bc7d091dff5bf52e72884ad8768e0cf309bd1314468b84222c175c0608a700b089d3dcef6c2a5fea98c8bee378f1f2bba000334d3610a159fa63b84ab8da9c509b563f8d47edc5bf5d9a4af4f81e9c371477619d082b74cb7c1406828fb3dd2148ac5aeb64cb9ce6e2bf6afc323d24023bcc0b2d771ff32192866a0d616a493d1332e8d0cb21a1d07cea78a011063d06f27fb2ec45ea559cbbbaf34aa7d33fa4bc43f45d2d0c4d2bb21551ac8fb08a1c723e4ca129745578be47d8c459d649fd7d87676f9d5a5f74cc3585dbe8ccf8879c0deafb66226f60a823a485b0d919b6fc1a9d106c189f5a84673ed3a50e339568973627ee52e1ca62c8d4ebedd87140467fadf1dc76ad4a2b3816b200d6ac36313dc5d29826af6f0ea923962ab1f8b1328019a3e70c8a6d29f5ca3e5caf047590d007d2ed6521c87c555d8e35988e8a4e04b748a11b3b25b25de8b24ff7fd04f5f334f9e5adc10465f8b6e89356a27bfe0e690cccfd293ea647e9a4d3308fbfe367799fec540bf824ba4f3b0d2791263d555c81234eb206dacc8b6fa52f0c595674db2a999411f64a3609e528167306879418299c952f90c5899e032888dd62b70f4a29b556349ddb804efd1a5fb99757c26bb4755b0455c790794a641f3b8596cb76487b13b869569eea9f8069b32e6e5808466d6f9127b6111df66cb0cf35faf136b5a83d06b451953cf4adead5e6ca777d0523e73057d29b834385e26d7d1c465ffe292dc038a0fe1c92bcc03fb4c17277d7baab89d6dad7648c1549d94894c0fb9e7efcdc18fa8610821c65be61421959c7cc4df88793d3b6e277a59002d8e3eb2287d6f0478b85338248fe241d858c9b9c25bc7cb964070e99d4910f122283270ccbd55d21e0f431eaffb4d365be546c3f9d0ecccbf74c0f5e649edbdac5971b8077a4d47a04d20b989cd8a67a5734ca7a09455b2513f965e80e37512cfa4f5a94607de7e7603f5155847ac6e5701b42f9ac4164de12f0ca1fe5d82b6900fba64de20aa9cffcab9d922f86e73b1a957aae78a013194384829a010656369e09eca0d560b7f4bfd886417bfaa2efbfda74c8e7992c48393922d2f3fc11471c01d816f14b50734eb1a0cfd5f1c75810a1f058d5c75ce3b01750891204b767f02567629e3faffbcd802fe8880773e6914a25aa7bc24f0ca909c28b5bf5ca250bf539cb9c7ad59bad38de4b6a3055815da90e009308c279c7ff144dfc66b66f10f0883977de5e896308ee73a43c4f62596e971062d829540ff98366bb62a2bc0c8c38b36ed312925ee3bdbd366273b794f39d44d825a3f49939ce96f49c993b9c6495836bc9814d65643b7630551e18a144257f6937c64990aceb1a3ce4aa33d5b04ad3d67b362bf489ebc007c44512138092f0a575acdd4b5e18874112c40f411d91c9bf6f907ad5d2ae6def1a98b4efb118a80dcd3d5eb4c4034bae849b79937fa467169878146320f7a3a56040c55f52bff80211f18cfc2e1b0c004fe4883ba806d1c9bff70dcaa787a15372016c6e3cb880a35b7dbe84b231cb00ce44898d5d548c2da6874109fc13690a4e3f7ba55d6e28a3fdd9aab3223aed9c2baaab407c69abe9d87dc632c22803d8a781e125db672050ab1ba977939fcc236878372d74222f88d1e9061023aadbfd7094541c759d6249a7c17989fdf3712deaf6c71b2b3c107a106b37fbc6d604ee2941c7c294077660ce641ea83f8d9d5a4e60681a2d1e150e99f29041350140855cb6ed106888678b9d055425b3884e87b39b27b35eef94b3e05900a443f56f21cb3174cc940de7cbf327f3a9f47a1a11f9903a2e3e7ed0cda151d663ee5df5e04080cb0ae51b5c02b75b0642744fcf1505cc345366949d96850c6e6de2953d775733f16ab0146744c64a04ccfb0435a9dc8d3f9f057559c45638673ee1dcced3785e81d49d79fe1c70f07f8e4713c9d77a028cc63e50d52bbe7ae86f2c9632c3275995e27d50ac59831e1a05ee87cf81ca5a8b8d02575aa4e803b1043ec412182c3bf000491bde73c28ec8c35183b740faf31aca7282fd10d1e5292a408b260a79041dc86c5ded0bcbf7326fa15a51f91d64b1380bd8840084b0a53bf0ee7ee6d940ed09a91../../binary_heap/IntoIter.t.html../../binary_heap/Iter.t.html../../binary_heap/IntoIter.t.html../../binary_heap/Iter.t.html../map/Range.t.html../btree/map/BTreeMap.t.html../btree/map/Entry.t.html../binary_heap/IntoIter.t.html../binary_heap/Iter.t.html../btree/map/IterMut.t.html../btree/map/Keys.t.html../btree/map/OccupiedEntry.t.html../btree/map/Range.t.html../btree/map/RangeMut.t.html../btree/map/VacantEntry.t.html../btree/map/Values.t.html../btree/map/ValuesMut.t.html../btree/set/BTreeSet.t.html../btree/set/Difference.t.html../btree/set/Intersection.t.html../binary_heap/IntoIter.t.html../binary_heap/Iter.t.html../btree/map/Range.t.html../btree/set/SymmetricDifference.t.html../btree/set/Union.t.html../binary_heap/IntoIter.t.html../binary_heap/Iter.t.html../btree/map/IterMut.t.html../binary_heap/Drain.t.html../binary_heap/IntoIter.t.html../binary_heap/Iter.t.html../btree/map/IterMut.t.html../../binary_heap/Drain.t.htmlDebug.m.htmlformat.m.html../collections/binary_heap/Iter.t.html../collections/btree/map/IterMut.t.html../slice/RSplit.t.html../slice/RSplitN.t.html../slice/Split.t.html../slice/SplitN.t.html../collections/binary_heap/Drain.t.html../rc/Weak.t.htmlmacro.vec!.html../collections/binary_heap/Drain.t.html../collections/linked_list/DrainFilter.t.html../collections/binary_heap/IntoIter.t.htmlFontAwesome.ttf../src/theme/2018-edition.css../../2018-edition/FontAwesome/css/font-awesome.css../../2018-edition/FontAwesome/fonts/FontAwesome.ttf../../2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../2018-edition/FontAwesome/fonts/FontAwesome.ttf../../2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2README.html2018-edition/ayu-highlight.css2018-edition/book.js2018-edition/clipboard.min.js../2018-edition/css/chrome.css../2018-edition/css/general.css../2018-edition/css/print.css../2018-edition/css/variables.css2018-edition/elasticlunr.min.js2018-edition/favicon.png2018-edition/ferris.css2018-edition/ferris.js../../../2018-edition/FontAwesome/css/font-awesome.css../../../2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../2018-edition/ayu-highlight.css../2018-edition/book.js../2018-edition/clipboard.min.js../../2018-edition/css/chrome.css../../2018-edition/css/general.css../../2018-edition/css/print.css../../2018-edition/css/variables.css../2018-edition/elasticlunr.min.js../2018-edition/favicon.png../2018-edition/highlight.css../2018-edition/highlight.js../2018-edition/mark.min.js../2018-edition/searcher.js../src/theme/first-edition.css../../2018-edition/theme/index.hbs../2018-edition/tomorrow-night.css2018-edition/highlight.css2018-edition/highlight.js../../2018-edition/img/ferris/does_not_compile.svg../../2018-edition/img/ferris/not_desired_behavior.svg../../2018-edition/img/ferris/panics.svg../../2018-edition/img/ferris/unsafe.svg../2018-edition/img/trpl04-01.svg../2018-edition/img/trpl04-02.svg../2018-edition/img/trpl04-03.svg../2018-edition/img/trpl04-04.svg../2018-edition/img/trpl04-05.svg../2018-edition/img/trpl04-06.svg../2018-edition/img/trpl15-01.svg../2018-edition/img/trpl15-02.svg../2018-edition/img/trpl15-03.svg../2018-edition/img/trpl15-04.svg../2018-edition/img/trpl20-01.png2018-edition/mark.min.js2018-edition/searcher.js../../../2018-edition/FontAwesome/css/font-awesome.css../../../2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../2018-edition/ayu-highlight.css../2018-edition/book.js../2018-edition/clipboard.min.js../../2018-edition/css/chrome.css../../2018-edition/css/general.css../../2018-edition/css/print.css../../2018-edition/css/variables.css../2018-edition/elasticlunr.min.js../2018-edition/favicon.png../2018-edition/highlight.css../2018-edition/highlight.js../../2018-edition/img/trpl04-01.svg../../2018-edition/img/trpl04-02.svg../../2018-edition/img/trpl04-03.svg../../2018-edition/img/trpl04-04.svg../../2018-edition/img/trpl04-05.svg../../2018-edition/img/trpl04-06.svg../../2018-edition/img/trpl14-01.png../../2018-edition/img/trpl14-02.png../../2018-edition/img/trpl14-03.png../../2018-edition/img/trpl14-04.png../../2018-edition/img/trpl15-01.svg../../2018-edition/img/trpl15-02.svg../../2018-edition/img/trpl15-03.svg../../2018-edition/img/trpl15-04.svg../../2018-edition/img/trpl20-01.png../2018-edition/mark.min.js../2018-edition/searcher.js../../2018-edition/theme/index.hbs../2018-edition/tomorrow-night.css../2018-edition/src/theme/2018-edition.css2018-edition/tomorrow-night.css../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../alloc/fmt/Debug.m.html../../alloc/alloc/AllocErr.t.html../../alloc/alloc/AllocRef.t.html../../alloc/alloc/CannotReallocInPlace.t.html../../alloc/alloc/GlobalAlloc.t.html../../alloc/alloc/Layout.t.html../../alloc/alloc/LayoutErr.t.html../aarch64/APSR.t.html../aarch64/SY.t.html../aarch64/__breakpoint.v.html../aarch64/__dmb.v.html../aarch64/__dsb.v.html../aarch64/__isb.v.html../aarch64/__nop.v.html../aarch64/__rsr.v.html../aarch64/__rsrp.v.html../aarch64/__wsr.v.html../aarch64/__wsrp.v.html../aarch64/_rev_u16.v.html../aarch64/_rev_u32.v.html../aarch64/float32x2_t.t.html../aarch64/float32x4_t.t.html../aarch64/int16x4_t.t.html../aarch64/int16x8_t.t.html../aarch64/int32x2_t.t.html../aarch64/int32x4_t.t.html../aarch64/int64x1_t.t.html../aarch64/int64x2_t.t.html../aarch64/int8x16_t.t.html../aarch64/int8x8_t.t.html../aarch64/int8x8x2_t.t.html../aarch64/int8x8x3_t.t.html../aarch64/int8x8x4_t.t.html../aarch64/poly16x4_t.t.html../aarch64/poly16x8_t.t.html../aarch64/poly8x16_t.t.html../aarch64/poly8x8_t.t.html../aarch64/poly8x8x2_t.t.html../aarch64/poly8x8x3_t.t.html../aarch64/poly8x8x4_t.t.html../aarch64/uint16x4_t.t.html../aarch64/uint16x8_t.t.html../aarch64/uint32x2_t.t.html../aarch64/uint32x4_t.t.html../aarch64/uint64x1_t.t.html../aarch64/uint64x2_t.t.html../aarch64/uint8x16_t.t.html../aarch64/uint8x8_t.t.html../aarch64/uint8x8x2_t.t.html../aarch64/uint8x8x3_t.t.html../aarch64/uint8x8x4_t.t.html../aarch64/vadd_f32.v.html../aarch64/vadd_s16.v.html../aarch64/vadd_s32.v.html../aarch64/vadd_s8.v.html../aarch64/vadd_u16.v.html../aarch64/vadd_u32.v.html../aarch64/vadd_u8.v.html../aarch64/vaddl_s16.v.html../aarch64/vaddl_s32.v.html../aarch64/vaddl_s8.v.html../aarch64/vaddl_u16.v.html../aarch64/vaddl_u32.v.html../aarch64/vaddl_u8.v.html../aarch64/vaddq_f32.v.html../aarch64/vaddq_s16.v.html../aarch64/vaddq_s32.v.html../aarch64/vaddq_s64.v.html../aarch64/vaddq_s8.v.html../aarch64/vaddq_u16.v.html../aarch64/vaddq_u32.v.html../aarch64/vaddq_u64.v.html../aarch64/vaddq_u8.v.html../aarch64/vand_s16.v.html../aarch64/vand_s32.v.html../aarch64/vand_s64.v.html../aarch64/vand_s8.v.html../aarch64/vand_u16.v.html../aarch64/vand_u32.v.html../aarch64/vand_u64.v.html../aarch64/vand_u8.v.html../aarch64/vandq_s16.v.html../aarch64/vandq_s32.v.html../aarch64/vandq_s64.v.html../aarch64/vandq_s8.v.html../aarch64/vandq_u16.v.html../aarch64/vandq_u32.v.html../aarch64/vandq_u64.v.html../aarch64/vandq_u8.v.html../aarch64/vceq_f32.v.html../aarch64/vceq_s16.v.html../aarch64/vceq_s32.v.html../aarch64/vceq_s8.v.html../aarch64/vceq_u16.v.html../aarch64/vceq_u32.v.html../aarch64/vceq_u8.v.html../aarch64/vceqq_f32.v.html../aarch64/vceqq_s16.v.html../aarch64/vceqq_s32.v.html../aarch64/vceqq_s8.v.html../aarch64/vceqq_u16.v.html../aarch64/vceqq_u32.v.html../aarch64/vceqq_u8.v.html../aarch64/vcge_f32.v.html../aarch64/vcge_s16.v.html../aarch64/vcge_s32.v.html../aarch64/vcge_s8.v.html../aarch64/vcge_u16.v.html../aarch64/vcge_u32.v.html../aarch64/vcge_u8.v.html../aarch64/vcgeq_f32.v.html../aarch64/vcgeq_s16.v.html../aarch64/vcgeq_s32.v.html../aarch64/vcgeq_s8.v.html../aarch64/vcgeq_u16.v.html../aarch64/vcgeq_u32.v.html../aarch64/vcgeq_u8.v.html../aarch64/vcgt_f32.v.html../aarch64/vcgt_s16.v.html../aarch64/vcgt_s32.v.html../aarch64/vcgt_s8.v.html../aarch64/vcgt_u16.v.html../aarch64/vcgt_u32.v.html../aarch64/vcgt_u8.v.html../aarch64/vcgtq_f32.v.html../aarch64/vcgtq_s16.v.html../aarch64/vcgtq_s32.v.html../aarch64/vcgtq_s8.v.html../aarch64/vcgtq_u16.v.html../aarch64/vcgtq_u32.v.html../aarch64/vcgtq_u8.v.html../aarch64/vcle_f32.v.html../aarch64/vcle_s16.v.html../aarch64/vcle_s32.v.html../aarch64/vcle_s8.v.html../aarch64/vcle_u16.v.html../aarch64/vcle_u32.v.html../aarch64/vcle_u8.v.html../aarch64/vcleq_f32.v.html../aarch64/vcleq_s16.v.html../aarch64/vcleq_s32.v.html../aarch64/vcleq_s8.v.html../aarch64/vcleq_u16.v.html../aarch64/vcleq_u32.v.html../aarch64/vcleq_u8.v.html../aarch64/vclt_f32.v.html../aarch64/vclt_s16.v.html../aarch64/vclt_s32.v.html../aarch64/vclt_s8.v.html../aarch64/vclt_u16.v.html../aarch64/vclt_u32.v.html../aarch64/vclt_u8.v.html../aarch64/vcltq_f32.v.html../aarch64/vcltq_s16.v.html../aarch64/vcltq_s32.v.html../aarch64/vcltq_s8.v.html../aarch64/vcltq_u16.v.html../aarch64/vcltq_u32.v.html../aarch64/vcltq_u8.v.html../aarch64/vdupq_n_s8.v.html../aarch64/vdupq_n_u8.v.html../aarch64/veor_s16.v.html../aarch64/veor_s32.v.html../aarch64/veor_s64.v.html../aarch64/veor_s8.v.html../aarch64/veor_u16.v.html../aarch64/veor_u32.v.html../aarch64/veor_u64.v.html../aarch64/veor_u8.v.html../aarch64/veorq_s16.v.html../aarch64/veorq_s32.v.html../aarch64/veorq_s64.v.html../aarch64/veorq_s8.v.html../aarch64/veorq_u16.v.html../aarch64/veorq_u32.v.html../aarch64/veorq_u64.v.html../aarch64/veorq_u8.v.html../aarch64/vextq_s8.v.html../aarch64/vextq_u8.v.html../aarch64/vget_lane_u64.v.html../aarch64/vget_lane_u8.v.html../aarch64/vgetq_lane_u16.v.html../aarch64/vgetq_lane_u32.v.html../aarch64/vgetq_lane_u64.v.html../aarch64/vhadd_s16.v.html../aarch64/vhadd_s32.v.html../aarch64/vhadd_s8.v.html../aarch64/vhadd_u16.v.html../aarch64/vhadd_u32.v.html../aarch64/vhadd_u8.v.html../aarch64/vhaddq_s16.v.html../aarch64/vhaddq_s32.v.html../aarch64/vhaddq_s8.v.html../aarch64/vhaddq_u16.v.html../aarch64/vhaddq_u32.v.html../aarch64/vhaddq_u8.v.html../aarch64/vhsub_s16.v.html../aarch64/vhsub_s32.v.html../aarch64/vhsub_s8.v.html../aarch64/vhsub_u16.v.html../aarch64/vhsub_u32.v.html../aarch64/vhsub_u8.v.html../aarch64/vhsubq_s16.v.html../aarch64/vhsubq_s32.v.html../aarch64/vhsubq_s8.v.html../aarch64/vhsubq_u16.v.html../aarch64/vhsubq_u32.v.html../aarch64/vhsubq_u8.v.html../aarch64/vld1q_s8.v.html../aarch64/vld1q_u8.v.html../aarch64/vmovl_s16.v.html../aarch64/vmovl_s32.v.html../aarch64/vmovl_s8.v.html../aarch64/vmovl_u16.v.html../aarch64/vmovl_u32.v.html../aarch64/vmovl_u8.v.html../aarch64/vmovn_s16.v.html../aarch64/vmovn_s32.v.html../aarch64/vmovn_s64.v.html../aarch64/vmovn_u16.v.html../aarch64/vmovn_u32.v.html../aarch64/vmovn_u64.v.html../aarch64/vmovq_n_u8.v.html../aarch64/vmul_f32.v.html../aarch64/vmul_s16.v.html../aarch64/vmul_s32.v.html../aarch64/vmul_s8.v.html../aarch64/vmul_u16.v.html../aarch64/vmul_u32.v.html../aarch64/vmul_u8.v.html../aarch64/vmulq_f32.v.html../aarch64/vmulq_s16.v.html../aarch64/vmulq_s32.v.html../aarch64/vmulq_s8.v.html../aarch64/vmulq_u16.v.html../aarch64/vmulq_u32.v.html../aarch64/vmulq_u8.v.html../aarch64/vmvn_p8.v.html../aarch64/vmvn_s16.v.html../aarch64/vmvn_s32.v.html../aarch64/vmvn_s8.v.html../aarch64/vmvn_u16.v.html../aarch64/vmvn_u32.v.html../aarch64/vmvn_u8.v.html../aarch64/vmvnq_p8.v.html../aarch64/vmvnq_s16.v.html../aarch64/vmvnq_s32.v.html../aarch64/vmvnq_s8.v.html../aarch64/vmvnq_u16.v.html../aarch64/vmvnq_u32.v.html../aarch64/vmvnq_u8.v.html../aarch64/vorr_s16.v.html../aarch64/vorr_s32.v.html../aarch64/vorr_s64.v.html../aarch64/vorr_s8.v.html../aarch64/vorr_u16.v.html../aarch64/vorr_u32.v.html../aarch64/vorr_u64.v.html../aarch64/vorr_u8.v.html../aarch64/vorrq_s16.v.html../aarch64/vorrq_s32.v.html../aarch64/vorrq_s64.v.html../aarch64/vorrq_s8.v.html../aarch64/vorrq_u16.v.html../aarch64/vorrq_u32.v.html../aarch64/vorrq_u64.v.html../aarch64/vorrq_u8.v.html../aarch64/vpmax_f32.v.html../aarch64/vpmax_s16.v.html../aarch64/vpmax_s32.v.html../aarch64/vpmax_s8.v.html../aarch64/vpmax_u16.v.html../aarch64/vpmax_u32.v.html../aarch64/vpmax_u8.v.html../aarch64/vpmin_f32.v.html../aarch64/vpmin_s16.v.html../aarch64/vpmin_s32.v.html../aarch64/vpmin_s8.v.html../aarch64/vpmin_u16.v.html../aarch64/vpmin_u32.v.html../aarch64/vpmin_u8.v.html../aarch64/vqadd_s16.v.html../aarch64/vqadd_s32.v.html../aarch64/vqadd_s8.v.html../aarch64/vqadd_u16.v.html../aarch64/vqadd_u32.v.html../aarch64/vqadd_u8.v.html../aarch64/vqaddq_s16.v.html../aarch64/vqaddq_s32.v.html../aarch64/vqaddq_s8.v.html../aarch64/vqaddq_u16.v.html../aarch64/vqaddq_u32.v.html../aarch64/vqaddq_u8.v.html../aarch64/vqmovn_u64.v.html../aarch64/vqsub_s16.v.html../aarch64/vqsub_s32.v.html../aarch64/vqsub_s8.v.html../aarch64/vqsub_u16.v.html../aarch64/vqsub_u32.v.html../aarch64/vqsub_u8.v.html../aarch64/vqsubq_s16.v.html../aarch64/vqsubq_s32.v.html../aarch64/vqsubq_s8.v.html../aarch64/vqsubq_u16.v.html../aarch64/vqsubq_u32.v.html../aarch64/vqsubq_u8.v.html../aarch64/vreinterpret_u64_u32.v.html../aarch64/vreinterpretq_s8_u8.v.html../aarch64/vreinterpretq_u16_u8.v.html../aarch64/vreinterpretq_u32_u8.v.html../aarch64/vreinterpretq_u64_u8.v.html../aarch64/vreinterpretq_u8_s8.v.html../aarch64/vrhadd_s16.v.html../aarch64/vrhadd_s32.v.html../aarch64/vrhadd_s8.v.html../aarch64/vrhadd_u16.v.html../aarch64/vrhadd_u32.v.html../aarch64/vrhadd_u8.v.html../aarch64/vrhaddq_s16.v.html../aarch64/vrhaddq_s32.v.html../aarch64/vrhaddq_s8.v.html../aarch64/vrhaddq_u16.v.html../aarch64/vrhaddq_u32.v.html../aarch64/vrhaddq_u8.v.html../aarch64/vrsqrte_f32.v.html../aarch64/vshlq_n_u8.v.html../aarch64/vshrq_n_u8.v.html../aarch64/vsub_f32.v.html../aarch64/vsub_s16.v.html../aarch64/vsub_s32.v.html../aarch64/vsub_s64.v.html../aarch64/vsub_s8.v.html../aarch64/vsub_u16.v.html../aarch64/vsub_u32.v.html../aarch64/vsub_u64.v.html../aarch64/vsub_u8.v.html../aarch64/vsubq_f32.v.html../aarch64/vsubq_s16.v.html../aarch64/vsubq_s32.v.html../aarch64/vsubq_s64.v.html../aarch64/vsubq_s8.v.html../aarch64/vsubq_u16.v.html../aarch64/vsubq_u32.v.html../aarch64/vsubq_u64.v.html../aarch64/vsubq_u8.v.html../mips/__msa_add_a_b.v.html../mips/__msa_add_a_d.v.html../mips/__msa_add_a_h.v.html../mips/__msa_add_a_w.v.html../mips/__msa_adds_a_b.v.html../mips/__msa_adds_a_d.v.html../mips/__msa_adds_a_h.v.html../mips/__msa_adds_a_w.v.html../mips/__msa_adds_s_b.v.html../mips/__msa_adds_s_d.v.html../mips/__msa_adds_s_h.v.html../mips/__msa_adds_s_w.v.html../mips/__msa_adds_u_b.v.html../mips/__msa_adds_u_d.v.html../mips/__msa_adds_u_h.v.html../mips/__msa_adds_u_w.v.html../mips/__msa_addv_b.v.html../mips/__msa_addv_d.v.html../mips/__msa_addv_h.v.html../mips/__msa_addv_w.v.html../mips/__msa_addvi_b.v.html../mips/__msa_addvi_d.v.html../mips/__msa_addvi_h.v.html../mips/__msa_addvi_w.v.html../mips/__msa_and_v.v.html../mips/__msa_andi_b.v.html../mips/__msa_asub_s_b.v.html../mips/__msa_asub_s_d.v.html../mips/__msa_asub_s_h.v.html../mips/__msa_asub_s_w.v.html../mips/__msa_asub_u_b.v.html../mips/__msa_asub_u_d.v.html../mips/__msa_asub_u_h.v.html../mips/__msa_asub_u_w.v.html../mips/__msa_ave_s_b.v.html../mips/__msa_ave_s_d.v.html../mips/__msa_ave_s_h.v.html../mips/__msa_ave_s_w.v.html../mips/__msa_ave_u_b.v.html../mips/__msa_ave_u_d.v.html../mips/__msa_ave_u_h.v.html../mips/__msa_ave_u_w.v.html../mips/__msa_aver_s_b.v.html../mips/__msa_aver_s_d.v.html../mips/__msa_aver_s_h.v.html../mips/__msa_aver_s_w.v.html../mips/__msa_aver_u_b.v.html../mips/__msa_aver_u_d.v.html../mips/__msa_aver_u_h.v.html../mips/__msa_aver_u_w.v.html../mips/__msa_bclr_b.v.html../mips/__msa_bclr_d.v.html../mips/__msa_bclr_h.v.html../mips/__msa_bclr_w.v.html../mips/__msa_bclri_b.v.html../mips/__msa_bclri_d.v.html../mips/__msa_bclri_h.v.html../mips/__msa_bclri_w.v.html../mips/__msa_binsl_b.v.html../mips/__msa_binsl_d.v.html../mips/__msa_binsl_h.v.html../mips/__msa_binsl_w.v.html../mips/__msa_binsli_b.v.html../mips/__msa_binsli_d.v.html../mips/__msa_binsli_h.v.html../mips/__msa_binsli_w.v.html../mips/__msa_binsr_b.v.html../mips/__msa_binsr_d.v.html../mips/__msa_binsr_h.v.html../mips/__msa_binsr_w.v.html../mips/__msa_binsri_b.v.html../mips/__msa_binsri_d.v.html../mips/__msa_binsri_h.v.html../mips/__msa_binsri_w.v.html../mips/__msa_bmnz_v.v.html../mips/__msa_bmnzi_b.v.html../mips/__msa_bmz_v.v.html../mips/__msa_bmzi_b.v.html../mips/__msa_bneg_b.v.html../mips/__msa_bneg_d.v.html../mips/__msa_bneg_h.v.html../mips/__msa_bneg_w.v.html../mips/__msa_bnegi_b.v.html../mips/__msa_bnegi_d.v.html../mips/__msa_bnegi_h.v.html../mips/__msa_bnegi_w.v.html../mips/__msa_bnz_b.v.html../mips/__msa_bnz_d.v.html../mips/__msa_bnz_h.v.html../mips/__msa_bnz_v.v.html../mips/__msa_bnz_w.v.html../mips/__msa_bsel_v.v.html../mips/__msa_bseli_b.v.html../mips/__msa_bset_b.v.html../mips/__msa_bset_d.v.html../mips/__msa_bset_h.v.html../mips/__msa_bset_w.v.html../mips/__msa_bseti_b.v.html../mips/__msa_bseti_d.v.html../mips/__msa_bseti_h.v.html../mips/__msa_bseti_w.v.html../mips/__msa_bz_b.v.html../mips/__msa_bz_d.v.html../mips/__msa_bz_h.v.html../mips/__msa_bz_v.v.html../mips/__msa_bz_w.v.html../mips/__msa_ceq_b.v.html../mips/__msa_ceq_d.v.html../mips/__msa_ceq_h.v.html../mips/__msa_ceq_w.v.html../mips/__msa_ceqi_b.v.html../mips/__msa_ceqi_d.v.html../mips/__msa_ceqi_h.v.html../mips/__msa_ceqi_w.v.html../mips/__msa_cfcmsa.v.html../mips/__msa_cle_s_b.v.html../mips/__msa_cle_s_d.v.html../mips/__msa_cle_s_h.v.html../mips/__msa_cle_s_w.v.html../mips/__msa_cle_u_b.v.html../mips/__msa_cle_u_d.v.html../mips/__msa_cle_u_h.v.html../mips/__msa_cle_u_w.v.html../mips/__msa_clei_s_b.v.html../mips/__msa_clei_s_d.v.html../mips/__msa_clei_s_h.v.html../mips/__msa_clei_s_w.v.html../mips/__msa_clei_u_b.v.html../mips/__msa_clei_u_d.v.html../mips/__msa_clei_u_h.v.html../mips/__msa_clei_u_w.v.html../mips/__msa_clt_s_b.v.html../mips/__msa_clt_s_d.v.html../mips/__msa_clt_s_h.v.html../mips/__msa_clt_s_w.v.html../mips/__msa_clt_u_b.v.html../mips/__msa_clt_u_d.v.html../mips/__msa_clt_u_h.v.html../mips/__msa_clt_u_w.v.html../mips/__msa_clti_s_b.v.html../mips/__msa_clti_s_d.v.html../mips/__msa_clti_s_h.v.html../mips/__msa_clti_s_w.v.html../mips/__msa_clti_u_b.v.html../mips/__msa_clti_u_d.v.html../mips/__msa_clti_u_h.v.html../mips/__msa_clti_u_w.v.html../mips/__msa_copy_s_b.v.html../mips/__msa_copy_s_d.v.html../mips/__msa_copy_s_h.v.html../mips/__msa_copy_s_w.v.html../mips/__msa_copy_u_b.v.html../mips/__msa_copy_u_d.v.html../mips/__msa_copy_u_h.v.html../mips/__msa_copy_u_w.v.html../mips/__msa_ctcmsa.v.html../mips/__msa_div_s_b.v.html../mips/__msa_div_s_d.v.html../mips/__msa_div_s_h.v.html../mips/__msa_div_s_w.v.html../mips/__msa_div_u_b.v.html../mips/__msa_div_u_d.v.html../mips/__msa_div_u_h.v.html../mips/__msa_div_u_w.v.html../mips/__msa_dotp_s_d.v.html../mips/__msa_dotp_s_h.v.html../mips/__msa_dotp_s_w.v.html../mips/__msa_dotp_u_d.v.html../mips/__msa_dotp_u_h.v.html../mips/__msa_dotp_u_w.v.html../mips/__msa_dpadd_s_d.v.html../mips/__msa_dpadd_s_h.v.html../mips/__msa_dpadd_s_w.v.html../mips/__msa_dpadd_u_d.v.html../mips/__msa_dpadd_u_h.v.html../mips/__msa_dpadd_u_w.v.html../mips/__msa_dpsub_s_d.v.html../mips/__msa_dpsub_s_h.v.html../mips/__msa_dpsub_s_w.v.html../mips/__msa_dpsub_u_d.v.html../mips/__msa_dpsub_u_h.v.html../mips/__msa_dpsub_u_w.v.html../mips/__msa_fadd_d.v.html../mips/__msa_fadd_w.v.html../mips/__msa_fcaf_d.v.html../mips/__msa_fcaf_w.v.html../mips/__msa_fceq_d.v.html../mips/__msa_fceq_w.v.html../mips/__msa_fclass_d.v.html../mips/__msa_fclass_w.v.html../mips/__msa_fcle_d.v.html../mips/__msa_fcle_w.v.html../mips/__msa_fclt_d.v.html../mips/__msa_fclt_w.v.html../mips/__msa_fcne_d.v.html../mips/__msa_fcne_w.v.html../mips/__msa_fcor_d.v.html../mips/__msa_fcor_w.v.html../mips/__msa_fcueq_d.v.html../mips/__msa_fcueq_w.v.html../mips/__msa_fcule_d.v.html../mips/__msa_fcule_w.v.html../mips/__msa_fcult_d.v.html../mips/__msa_fcult_w.v.html../mips/__msa_fcun_d.v.html../mips/__msa_fcun_w.v.html../mips/__msa_fcune_d.v.html../mips/__msa_fcune_w.v.html../mips/__msa_fdiv_d.v.html../mips/__msa_fdiv_w.v.html../mips/__msa_fexdo_w.v.html../mips/__msa_fexp2_d.v.html../mips/__msa_fexp2_w.v.html../mips/__msa_fexupl_d.v.html../mips/__msa_fexupr_d.v.html../mips/__msa_ffint_s_d.v.html../mips/__msa_ffint_s_w.v.html../mips/__msa_ffint_u_d.v.html../mips/__msa_ffint_u_w.v.html../mips/__msa_ffql_d.v.html../mips/__msa_ffql_w.v.html../mips/__msa_ffqr_d.v.html../mips/__msa_ffqr_w.v.html../mips/__msa_fill_b.v.html../mips/__msa_fill_d.v.html../mips/__msa_fill_h.v.html../mips/__msa_fill_w.v.html../mips/__msa_flog2_d.v.html../mips/__msa_flog2_w.v.html../mips/__msa_fmadd_d.v.html../mips/__msa_fmadd_w.v.html../mips/__msa_fmax_a_d.v.html../mips/__msa_fmax_a_w.v.html../mips/__msa_fmax_d.v.html../mips/__msa_fmax_w.v.html../mips/__msa_fmin_a_d.v.html../mips/__msa_fmin_a_w.v.html../mips/__msa_fmin_d.v.html../mips/__msa_fmin_w.v.html../mips/__msa_fmsub_d.v.html../mips/__msa_fmsub_w.v.html../mips/__msa_fmul_d.v.html../mips/__msa_fmul_w.v.html../mips/__msa_frcp_d.v.html../mips/__msa_frcp_w.v.html../mips/__msa_frint_d.v.html../mips/__msa_frint_w.v.html../mips/__msa_frsqrt_d.v.html../mips/__msa_frsqrt_w.v.html../mips/__msa_fsaf_d.v.html../mips/__msa_fsaf_w.v.html../mips/__msa_fseq_d.v.html../mips/__msa_fseq_w.v.html../mips/__msa_fsle_d.v.html../mips/__msa_fsle_w.v.html../mips/__msa_fslt_d.v.html../mips/__msa_fslt_w.v.html../mips/__msa_fsne_d.v.html../mips/__msa_fsne_w.v.html../mips/__msa_fsor_d.v.html../mips/__msa_fsor_w.v.html../mips/__msa_fsqrt_d.v.html../mips/__msa_fsqrt_w.v.html../mips/__msa_fsub_d.v.html../mips/__msa_fsub_w.v.html../mips/__msa_fsueq_d.v.html../mips/__msa_fsueq_w.v.html../mips/__msa_fsule_d.v.html../mips/__msa_fsule_w.v.html../mips/__msa_fsult_d.v.html../mips/__msa_fsult_w.v.html../mips/__msa_fsun_d.v.html../mips/__msa_fsun_w.v.html../mips/__msa_fsune_d.v.html../mips/__msa_fsune_w.v.html../mips/__msa_ftint_s_d.v.html../mips/__msa_ftint_s_w.v.html../mips/__msa_ftint_u_d.v.html../mips/__msa_ftint_u_w.v.html../mips/__msa_ftq_h.v.html../mips/__msa_ftq_w.v.html../mips/__msa_ftrunc_s_d.v.html../mips/__msa_ftrunc_s_w.v.html../mips/__msa_ftrunc_u_d.v.html../mips/__msa_ftrunc_u_w.v.html../mips/__msa_hadd_s_d.v.html../mips/__msa_hadd_s_h.v.html../mips/__msa_hadd_s_w.v.html../mips/__msa_hadd_u_d.v.html../mips/__msa_hadd_u_h.v.html../mips/__msa_hadd_u_w.v.html../mips/__msa_hsub_s_d.v.html../mips/__msa_hsub_s_h.v.html../mips/__msa_hsub_s_w.v.html../mips/__msa_hsub_u_d.v.html../mips/__msa_hsub_u_h.v.html../mips/__msa_hsub_u_w.v.html../mips/__msa_ilvev_b.v.html../mips/__msa_ilvev_d.v.html../mips/__msa_ilvev_h.v.html../mips/__msa_ilvev_w.v.html../mips/__msa_ilvl_b.v.html../mips/__msa_ilvl_d.v.html../mips/__msa_ilvl_h.v.html../mips/__msa_ilvl_w.v.html../mips/__msa_ilvod_b.v.html../mips/__msa_ilvod_d.v.html../mips/__msa_ilvod_h.v.html../mips/__msa_ilvod_w.v.html../mips/__msa_ilvr_b.v.html../mips/__msa_ilvr_d.v.html../mips/__msa_ilvr_h.v.html../mips/__msa_ilvr_w.v.html../mips/__msa_insert_b.v.html../mips/__msa_insert_d.v.html../mips/__msa_insert_h.v.html../mips/__msa_insert_w.v.html../mips/__msa_insve_b.v.html../mips/__msa_insve_d.v.html../mips/__msa_insve_h.v.html../mips/__msa_insve_w.v.html../mips/__msa_ld_b.v.html../mips/__msa_ld_d.v.html../mips/__msa_ld_h.v.html../mips/__msa_ld_w.v.html../mips/__msa_ldi_b.v.html../mips/__msa_ldi_d.v.html../mips/__msa_ldi_h.v.html../mips/__msa_ldi_w.v.html../mips/__msa_madd_q_h.v.html../mips/__msa_madd_q_w.v.html../mips/__msa_maddr_q_h.v.html../mips/__msa_maddr_q_w.v.html../mips/__msa_maddv_b.v.html../mips/__msa_maddv_d.v.html../mips/__msa_maddv_h.v.html../mips/__msa_maddv_w.v.html../mips/__msa_max_a_b.v.html../mips/__msa_max_a_d.v.html../mips/__msa_max_a_h.v.html../mips/__msa_max_a_w.v.html../mips/__msa_max_s_b.v.html../mips/__msa_max_s_d.v.html../mips/__msa_max_s_h.v.html../mips/__msa_max_s_w.v.html../mips/__msa_max_u_b.v.html../mips/__msa_max_u_d.v.html../mips/__msa_max_u_h.v.html../mips/__msa_max_u_w.v.html../mips/__msa_maxi_s_b.v.html../mips/__msa_maxi_s_d.v.html../mips/__msa_maxi_s_h.v.html../mips/__msa_maxi_s_w.v.html../mips/__msa_maxi_u_b.v.html../mips/__msa_maxi_u_d.v.html../mips/__msa_maxi_u_h.v.html../mips/__msa_maxi_u_w.v.html../mips/__msa_min_a_b.v.html../mips/__msa_min_a_d.v.html../mips/__msa_min_a_h.v.html../mips/__msa_min_a_w.v.html../mips/__msa_min_s_b.v.html../mips/__msa_min_s_d.v.html../mips/__msa_min_s_h.v.html../mips/__msa_min_s_w.v.html../mips/__msa_min_u_b.v.html../mips/__msa_min_u_d.v.html../mips/__msa_min_u_h.v.html../mips/__msa_min_u_w.v.html../mips/__msa_mini_s_b.v.html../mips/__msa_mini_s_d.v.html../mips/__msa_mini_s_h.v.html../mips/__msa_mini_s_w.v.html../mips/__msa_mini_u_b.v.html../mips/__msa_mini_u_d.v.html../mips/__msa_mini_u_h.v.html../mips/__msa_mini_u_w.v.html../mips/__msa_mod_s_b.v.html../mips/__msa_mod_s_d.v.html../mips/__msa_mod_s_h.v.html../mips/__msa_mod_s_w.v.html../mips/__msa_mod_u_b.v.html../mips/__msa_mod_u_d.v.html../mips/__msa_mod_u_h.v.html../mips/__msa_mod_u_w.v.html../mips/__msa_move_v.v.html../mips/__msa_msub_q_h.v.html../mips/__msa_msub_q_w.v.html../mips/__msa_msubr_q_h.v.html../mips/__msa_msubr_q_w.v.html../mips/__msa_msubv_b.v.html../mips/__msa_msubv_d.v.html../mips/__msa_msubv_h.v.html../mips/__msa_msubv_w.v.html../mips/__msa_mul_q_h.v.html../mips/__msa_mul_q_w.v.html../mips/__msa_mulr_q_h.v.html../mips/__msa_mulr_q_w.v.html../mips/__msa_mulv_b.v.html../mips/__msa_mulv_d.v.html../mips/__msa_mulv_h.v.html../mips/__msa_mulv_w.v.html../mips/__msa_nloc_b.v.html../mips/__msa_nloc_d.v.html../mips/__msa_nloc_h.v.html../mips/__msa_nloc_w.v.html../mips/__msa_nlzc_b.v.html../mips/__msa_nlzc_d.v.html../mips/__msa_nlzc_h.v.html../mips/__msa_nlzc_w.v.html../mips/__msa_nor_v.v.html../mips/__msa_nori_b.v.html../mips/__msa_or_v.v.html../mips/__msa_ori_b.v.html../mips/__msa_pckev_b.v.html../mips/__msa_pckev_d.v.html../mips/__msa_pckev_h.v.html../mips/__msa_pckev_w.v.html../mips/__msa_pckod_b.v.html../mips/__msa_pckod_d.v.html../mips/__msa_pckod_h.v.html../mips/__msa_pckod_w.v.html../mips/__msa_pcnt_b.v.html../mips/__msa_pcnt_d.v.html../mips/__msa_pcnt_h.v.html../mips/__msa_pcnt_w.v.html../mips/__msa_sat_s_b.v.html../mips/__msa_sat_s_d.v.html../mips/__msa_sat_s_h.v.html../mips/__msa_sat_s_w.v.html../mips/__msa_sat_u_b.v.html../mips/__msa_sat_u_d.v.html../mips/__msa_sat_u_h.v.html../mips/__msa_sat_u_w.v.html../mips/__msa_shf_b.v.html../mips/__msa_shf_h.v.html../mips/__msa_shf_w.v.html../mips/__msa_sld_b.v.html../mips/__msa_sld_d.v.html../mips/__msa_sld_h.v.html../mips/__msa_sld_w.v.html../mips/__msa_sldi_b.v.html../mips/__msa_sldi_d.v.html../mips/__msa_sldi_h.v.html../mips/__msa_sldi_w.v.html../mips/__msa_sll_b.v.html../mips/__msa_sll_d.v.html../mips/__msa_sll_h.v.html../mips/__msa_sll_w.v.html../mips/__msa_slli_b.v.html../mips/__msa_slli_d.v.html../mips/__msa_slli_h.v.html../mips/__msa_slli_w.v.html../mips/__msa_splat_b.v.html../mips/__msa_splat_d.v.html../mips/__msa_splat_h.v.html../mips/__msa_splat_w.v.html../mips/__msa_splati_b.v.html../mips/__msa_splati_d.v.html../mips/__msa_splati_h.v.html../mips/__msa_splati_w.v.html../mips/__msa_sra_b.v.html../mips/__msa_sra_d.v.html../mips/__msa_sra_h.v.html../mips/__msa_sra_w.v.html../mips/__msa_srai_b.v.html../mips/__msa_srai_d.v.html../mips/__msa_srai_h.v.html../mips/__msa_srai_w.v.html../mips/__msa_srar_b.v.html../mips/__msa_srar_d.v.html../mips/__msa_srar_h.v.html../mips/__msa_srar_w.v.html../mips/__msa_srari_b.v.html../mips/__msa_srari_d.v.html../mips/__msa_srari_h.v.html../mips/__msa_srari_w.v.html../mips/__msa_srl_b.v.html../mips/__msa_srl_d.v.html../mips/__msa_srl_h.v.html../mips/__msa_srl_w.v.html../mips/__msa_srli_b.v.html../mips/__msa_srli_d.v.html../mips/__msa_srli_h.v.html../mips/__msa_srli_w.v.html../mips/__msa_srlr_b.v.html../mips/__msa_srlr_d.v.html../mips/__msa_srlr_h.v.html../mips/__msa_srlr_w.v.html../mips/__msa_srlri_b.v.html../mips/__msa_srlri_d.v.html../mips/__msa_srlri_h.v.html../mips/__msa_srlri_w.v.html../mips/__msa_st_b.v.html../mips/__msa_st_d.v.html../mips/__msa_st_h.v.html../mips/__msa_st_w.v.html../mips/__msa_subs_s_b.v.html../mips/__msa_subs_s_d.v.html../mips/__msa_subs_s_h.v.html../mips/__msa_subs_s_w.v.html../mips/__msa_subs_u_b.v.html../mips/__msa_subs_u_d.v.html../mips/__msa_subs_u_h.v.html../mips/__msa_subs_u_w.v.html../mips/__msa_subsus_u_b.v.html../mips/__msa_subsus_u_d.v.html../mips/__msa_subsus_u_h.v.html../mips/__msa_subsus_u_w.v.html../mips/__msa_subsuu_s_b.v.html../mips/__msa_subsuu_s_d.v.html../mips/__msa_subsuu_s_h.v.html../mips/__msa_subsuu_s_w.v.html../mips/__msa_subv_b.v.html../mips/__msa_subv_d.v.html../mips/__msa_subv_h.v.html../mips/__msa_subv_w.v.html../mips/__msa_subvi_b.v.html../mips/__msa_subvi_d.v.html../mips/__msa_subvi_h.v.html../mips/__msa_subvi_w.v.html../mips/__msa_vshf_b.v.html../mips/__msa_vshf_d.v.html../mips/__msa_vshf_h.v.html../mips/__msa_vshf_w.v.html../mips/__msa_xor_v.v.html../mips/__msa_xori_b.v.html../mips/break_.v.html../mips/sidebar-items.js../mips/v16i8.t.html../mips/v16u8.t.html../mips/v2f64.t.html../mips/v2i64.t.html../mips/v2u64.t.html../mips/v4f32.t.html../mips/v4i32.t.html../mips/v4u32.t.html../mips/v8i16.t.html../mips/v8u16.t.html../nvptx/trap.v.html../powerpc/sidebar-items.js../nvptx/trap.v.html../powerpc/vec_xxpermdi.v.html../powerpc/vector_bool_long.t.html../powerpc/vector_double.t.html../powerpc/vector_signed_long.t.html../powerpc/vector_unsigned_long.t.html../x86/CpuidResult.t.html../x86/_CMP_EQ_OQ.v.html../x86/_CMP_EQ_OS.v.html../x86/_CMP_EQ_UQ.v.html../x86/_CMP_EQ_US.v.html../x86/_CMP_FALSE_OQ.v.html../x86/_CMP_FALSE_OS.v.html../x86/_CMP_GE_OQ.v.html../x86/_CMP_GE_OS.v.html../x86/_CMP_GT_OQ.v.html../x86/_CMP_GT_OS.v.html../x86/_CMP_LE_OQ.v.html../x86/_CMP_LE_OS.v.html../x86/_CMP_LT_OQ.v.html../x86/_CMP_LT_OS.v.html../x86/_CMP_NEQ_OQ.v.html../x86/_CMP_NEQ_OS.v.html../x86/_CMP_NEQ_UQ.v.html../x86/_CMP_NEQ_US.v.html../x86/_CMP_NGE_UQ.v.html../x86/_CMP_NGE_US.v.html../x86/_CMP_NGT_UQ.v.html../x86/_CMP_NGT_US.v.html../x86/_CMP_NLE_UQ.v.html../x86/_CMP_NLE_US.v.html../x86/_CMP_NLT_UQ.v.html../x86/_CMP_NLT_US.v.html../x86/_CMP_ORD_Q.v.html../x86/_CMP_ORD_S.v.html../x86/_CMP_TRUE_UQ.v.html../x86/_CMP_TRUE_US.v.html../x86/_CMP_UNORD_Q.v.html../x86/_CMP_UNORD_S.v.html../x86/_MM_EXCEPT_DENORM.v.html../x86/_MM_EXCEPT_DIV_ZERO.v.html../x86/_MM_EXCEPT_INEXACT.v.html../x86/_MM_EXCEPT_INVALID.v.html../x86/_MM_EXCEPT_MASK.v.html../x86/_MM_EXCEPT_OVERFLOW.v.html../x86/_MM_EXCEPT_UNDERFLOW.v.html../x86/_MM_FLUSH_ZERO_MASK.v.html../x86/_MM_FLUSH_ZERO_OFF.v.html../x86/_MM_FLUSH_ZERO_ON.v.html../x86/_MM_FROUND_CEIL.v.html../x86/_MM_FROUND_CUR_DIRECTION.v.html../x86/_MM_FROUND_FLOOR.v.html../x86/_MM_FROUND_NEARBYINT.v.html../x86/_MM_FROUND_NINT.v.html../x86/_MM_FROUND_NO_EXC.v.html../x86/_MM_FROUND_RAISE_EXC.v.html../x86/_MM_FROUND_RINT.v.html../x86/_MM_FROUND_TO_NEAREST_INT.v.html../x86/_MM_FROUND_TO_NEG_INF.v.html../x86/_MM_FROUND_TO_POS_INF.v.html../x86/_MM_FROUND_TO_ZERO.v.html../x86/_MM_FROUND_TRUNC.v.html../x86/_MM_GET_EXCEPTION_MASK.v.html../x86/_MM_GET_EXCEPTION_STATE.v.html../x86/_MM_GET_FLUSH_ZERO_MODE.v.html../x86/_MM_GET_ROUNDING_MODE.v.html../x86/_MM_HINT_NTA.v.html../x86/_MM_HINT_T0.v.html../x86/_MM_HINT_T1.v.html../x86/_MM_HINT_T2.v.html../x86/_MM_MASK_DENORM.v.html../x86/_MM_MASK_DIV_ZERO.v.html../x86/_MM_MASK_INEXACT.v.html../x86/_MM_MASK_INVALID.v.html../x86/_MM_MASK_MASK.v.html../x86/_MM_MASK_OVERFLOW.v.html../x86/_MM_MASK_UNDERFLOW.v.html../x86/_MM_ROUND_DOWN.v.html../x86/_MM_ROUND_MASK.v.html../x86/_MM_ROUND_NEAREST.v.html../x86/_MM_ROUND_TOWARD_ZERO.v.html../x86/_MM_ROUND_UP.v.html../x86/_MM_SET_EXCEPTION_MASK.v.html../x86/_MM_SET_EXCEPTION_STATE.v.html../x86/_MM_SET_FLUSH_ZERO_MODE.v.html../x86/_MM_SET_ROUNDING_MODE.v.html../x86/_MM_SHUFFLE.v.html../x86/_MM_TRANSPOSE4_PS.v.html../x86/_SIDD_BIT_MASK.v.html../x86/_SIDD_CMP_EQUAL_ANY.v.html../x86/_SIDD_CMP_EQUAL_EACH.v.html../x86/_SIDD_CMP_EQUAL_ORDERED.v.html../x86/_SIDD_CMP_RANGES.v.html../x86/_SIDD_LEAST_SIGNIFICANT.v.html../x86/_SIDD_MASKED_NEGATIVE_POLARITY.v.html../x86/_SIDD_MASKED_POSITIVE_POLARITY.v.html../x86/_SIDD_MOST_SIGNIFICANT.v.html../x86/_SIDD_NEGATIVE_POLARITY.v.html../x86/_SIDD_POSITIVE_POLARITY.v.html../x86/_SIDD_SBYTE_OPS.v.html../x86/_SIDD_SWORD_OPS.v.html../x86/_SIDD_UBYTE_OPS.v.html../x86/_SIDD_UNIT_MASK.v.html../x86/_SIDD_UWORD_OPS.v.html../x86/_XABORT_CAPACITY.v.html../x86/_XABORT_CONFLICT.v.html../x86/_XABORT_DEBUG.v.html../x86/_XABORT_EXPLICIT.v.html../x86/_XABORT_NESTED.v.html../x86/_XABORT_RETRY.v.html../x86/_XBEGIN_STARTED.v.html../x86/_XCR_XFEATURE_ENABLED_MASK.v.html../x86/__cpuid.v.html../x86/__cpuid_count.v.html../x86/__get_cpuid_max.v.html../x86/__m128.t.html../x86/__m128d.t.html../x86/__m128i.t.html../x86/__m256.t.html../x86/__m256d.t.html../x86/__m256i.t.html../x86/__m512.t.html../x86/__m512d.t.html../x86/__m512i.t.html../x86/__m64.t.html../x86/__mmask16.t.html../x86/__rdtscp.v.html../x86/_addcarry_u32.v.html../x86/_addcarryx_u32.v.html../x86/_andn_u32.v.html../x86/_bextr2_u32.v.html../x86/_bextr_u32.v.html../x86/_bittest.v.html../x86/_bittestandcomplement.v.html../x86/_bittestandreset.v.html../x86/_bittestandset.v.html../x86/_blcfill_u32.v.html../x86/_blcfill_u64.v.html../x86/_blci_u32.v.html../x86/_blci_u64.v.html../x86/_blcic_u32.v.html../x86/_blcic_u64.v.html../x86/_blcmsk_u32.v.html../x86/_blcmsk_u64.v.html../x86/_blcs_u32.v.html../x86/_blcs_u64.v.html../x86/_blsfill_u32.v.html../x86/_blsfill_u64.v.html../x86/_blsi_u32.v.html../x86/_blsic_u32.v.html../x86/_blsic_u64.v.html../x86/_blsmsk_u32.v.html../x86/_blsr_u32.v.html../x86/_bswap.v.html../x86/_bzhi_u32.v.html../x86/_fxrstor.v.html../x86/_fxsave.v.html../x86/_lzcnt_u32.v.html../x86/_m_empty.v.html../x86/_m_maskmovq.v.html../x86/_m_paddb.v.html../x86/_m_paddd.v.html../x86/_m_paddsb.v.html../x86/_m_paddsw.v.html../x86/_m_paddusb.v.html../x86/_m_paddusw.v.html../x86/_m_paddw.v.html../x86/_m_pavgb.v.html../x86/_m_pavgw.v.html../x86/_m_pextrw.v.html../x86/_m_pinsrw.v.html../x86/_m_pmaxsw.v.html../x86/_m_pmaxub.v.html../x86/_m_pminsw.v.html../x86/_m_pminub.v.html../x86/_m_pmovmskb.v.html../x86/_m_pmulhuw.v.html../x86/_m_psadbw.v.html../x86/_m_pshufw.v.html../x86/_m_psubb.v.html../x86/_m_psubd.v.html../x86/_m_psubsb.v.html../x86/_m_psubsw.v.html../x86/_m_psubusb.v.html../x86/_m_psubusw.v.html../x86/_m_psubw.v.html../x86/_mm256_abs_epi16.v.html../x86/_mm256_abs_epi32.v.html../x86/_mm256_abs_epi8.v.html../x86/_mm256_add_epi16.v.html../x86/_mm256_add_epi32.v.html../x86/_mm256_add_epi64.v.html../x86/_mm256_add_epi8.v.html../x86/_mm256_add_pd.v.html../x86/_mm256_add_ps.v.html../x86/_mm256_adds_epi16.v.html../x86/_mm256_adds_epi8.v.html../x86/_mm256_adds_epu16.v.html../x86/_mm256_adds_epu8.v.html../x86/_mm256_addsub_pd.v.html../x86/_mm256_addsub_ps.v.html../x86/_mm256_alignr_epi8.v.html../x86/_mm256_and_pd.v.html../x86/_mm256_and_ps.v.html../x86/_mm256_and_si256.v.html../x86/_mm256_andnot_pd.v.html../x86/_mm256_andnot_ps.v.html../x86/_mm256_andnot_si256.v.html../x86/_mm256_avg_epu16.v.html../x86/_mm256_avg_epu8.v.html../x86/_mm256_blend_epi16.v.html../x86/_mm256_blend_epi32.v.html../x86/_mm256_blend_pd.v.html../x86/_mm256_blend_ps.v.html../x86/_mm256_blendv_epi8.v.html../x86/_mm256_blendv_pd.v.html../x86/_mm256_blendv_ps.v.html../x86/_mm256_broadcast_pd.v.html../x86/_mm256_broadcast_ps.v.html../x86/_mm256_broadcast_sd.v.html../x86/_mm256_broadcast_ss.v.html../x86/_mm256_broadcastb_epi8.v.html../x86/_mm256_broadcastd_epi32.v.html../x86/_mm256_broadcastq_epi64.v.html../x86/_mm256_broadcastsd_pd.v.html../x86/_mm256_broadcastsi128_si256.v.html../x86/_mm256_broadcastss_ps.v.html../x86/_mm256_broadcastw_epi16.v.html../x86/_mm256_bslli_epi128.v.html../x86/_mm256_bsrli_epi128.v.html../x86/_mm256_castpd128_pd256.v.html../x86/_mm256_castpd256_pd128.v.html../x86/_mm256_castpd_ps.v.html../x86/_mm256_castpd_si256.v.html../x86/_mm256_castps128_ps256.v.html../x86/_mm256_castps256_ps128.v.html../x86/_mm256_castps_pd.v.html../x86/_mm256_castps_si256.v.html../x86/_mm256_castsi128_si256.v.html../x86/_mm256_castsi256_pd.v.html../x86/_mm256_castsi256_ps.v.html../x86/_mm256_castsi256_si128.v.html../x86/_mm256_ceil_pd.v.html../x86/_mm256_ceil_ps.v.html../x86/_mm256_cmp_pd.v.html../x86/_mm256_cmp_ps.v.html../x86/_mm256_cmpeq_epi16.v.html../x86/_mm256_cmpeq_epi32.v.html../x86/_mm256_cmpeq_epi64.v.html../x86/_mm256_cmpeq_epi8.v.html../x86/_mm256_cmpgt_epi16.v.html../x86/_mm256_cmpgt_epi32.v.html../x86/_mm256_cmpgt_epi64.v.html../x86/_mm256_cmpgt_epi8.v.html../x86/_mm256_cvtepi16_epi32.v.html../x86/_mm256_cvtepi16_epi64.v.html../x86/_mm256_cvtepi32_epi64.v.html../x86/_mm256_cvtepi32_pd.v.html../x86/_mm256_cvtepi32_ps.v.html../x86/_mm256_cvtepi8_epi16.v.html../x86/_mm256_cvtepi8_epi32.v.html../x86/_mm256_cvtepi8_epi64.v.html../x86/_mm256_cvtepu16_epi32.v.html../x86/_mm256_cvtepu16_epi64.v.html../x86/_mm256_cvtepu32_epi64.v.html../x86/_mm256_cvtepu8_epi16.v.html../x86/_mm256_cvtepu8_epi32.v.html../x86/_mm256_cvtepu8_epi64.v.html../x86/_mm256_cvtpd_epi32.v.html../x86/_mm256_cvtpd_ps.v.html../x86/_mm256_cvtph_ps.v.html../x86/_mm256_cvtps_epi32.v.html../x86/_mm256_cvtps_pd.v.html../x86/_mm256_cvtps_ph.v.html../x86/_mm256_cvtsd_f64.v.html../x86/_mm256_cvtsi256_si32.v.html../x86/_mm256_cvtss_f32.v.html../x86/_mm256_cvttpd_epi32.v.html../x86/_mm256_cvttps_epi32.v.html../x86/_mm256_div_pd.v.html../x86/_mm256_div_ps.v.html../x86/_mm256_dp_ps.v.html../x86/_mm256_extract_epi16.v.html../x86/_mm256_extract_epi32.v.html../x86/_mm256_extract_epi8.v.html../x86/_mm256_extractf128_pd.v.html../x86/_mm256_extractf128_ps.v.html../x86/_mm256_extractf128_si256.v.html../x86/_mm256_extracti128_si256.v.html../x86/_mm256_floor_pd.v.html../x86/_mm256_floor_ps.v.html../x86/_mm256_fmadd_pd.v.html../x86/_mm256_fmadd_ps.v.html../x86/_mm256_fmaddsub_pd.v.html../x86/_mm256_fmaddsub_ps.v.html../x86/_mm256_fmsub_pd.v.html../x86/_mm256_fmsub_ps.v.html../x86/_mm256_fmsubadd_pd.v.html../x86/_mm256_fmsubadd_ps.v.html../x86/_mm256_fnmadd_pd.v.html../x86/_mm256_fnmadd_ps.v.html../x86/_mm256_fnmsub_pd.v.html../x86/_mm256_fnmsub_ps.v.html../x86/_mm256_hadd_epi16.v.html../x86/_mm256_hadd_epi32.v.html../x86/_mm256_hadd_pd.v.html../x86/_mm256_hadd_ps.v.html../x86/_mm256_hadds_epi16.v.html../x86/_mm256_hsub_epi16.v.html../x86/_mm256_hsub_epi32.v.html../x86/_mm256_hsub_pd.v.html../x86/_mm256_hsub_ps.v.html../x86/_mm256_hsubs_epi16.v.html../x86/_mm256_i32gather_epi32.v.html../x86/_mm256_i32gather_epi64.v.html../x86/_mm256_i32gather_pd.v.html../x86/_mm256_i32gather_ps.v.html../x86/_mm256_i64gather_epi32.v.html../x86/_mm256_i64gather_epi64.v.html../x86/_mm256_i64gather_pd.v.html../x86/_mm256_i64gather_ps.v.html../x86/_mm256_insert_epi16.v.html../x86/_mm256_insert_epi32.v.html../x86/_mm256_insert_epi8.v.html../x86/_mm256_insertf128_pd.v.html../x86/_mm256_insertf128_ps.v.html../x86/_mm256_insertf128_si256.v.html../x86/_mm256_inserti128_si256.v.html../x86/_mm256_lddqu_si256.v.html../x86/_mm256_load_pd.v.html../x86/_mm256_load_ps.v.html../x86/_mm256_load_si256.v.html../x86/_mm256_loadu2_m128.v.html../x86/_mm256_loadu2_m128d.v.html../x86/_mm256_loadu2_m128i.v.html../x86/_mm256_loadu_pd.v.html../x86/_mm256_loadu_ps.v.html../x86/_mm256_loadu_si256.v.html../x86/_mm256_madd52hi_epu64.v.html../x86/_mm256_madd52lo_epu64.v.html../x86/_mm256_madd_epi16.v.html../x86/_mm256_maddubs_epi16.v.html../x86/_mm256_mask_i32gather_epi32.v.html../x86/_mm256_mask_i32gather_epi64.v.html../x86/_mm256_mask_i32gather_pd.v.html../x86/_mm256_mask_i32gather_ps.v.html../x86/_mm256_mask_i64gather_epi32.v.html../x86/_mm256_mask_i64gather_epi64.v.html../x86/_mm256_mask_i64gather_pd.v.html../x86/_mm256_mask_i64gather_ps.v.html../x86/_mm256_maskload_epi32.v.html../x86/_mm256_maskload_epi64.v.html../x86/_mm256_maskload_pd.v.html../x86/_mm256_maskload_ps.v.html../x86/_mm256_maskstore_epi32.v.html../x86/_mm256_maskstore_epi64.v.html../x86/_mm256_maskstore_pd.v.html../x86/_mm256_maskstore_ps.v.html../x86/_mm256_max_epi16.v.html../x86/_mm256_max_epi32.v.html../x86/_mm256_max_epi8.v.html../x86/_mm256_max_epu16.v.html../x86/_mm256_max_epu32.v.html../x86/_mm256_max_epu8.v.html../x86/_mm256_max_pd.v.html../x86/_mm256_max_ps.v.html../x86/_mm256_min_epi16.v.html../x86/_mm256_min_epi32.v.html../x86/_mm256_min_epi8.v.html../x86/_mm256_min_epu16.v.html../x86/_mm256_min_epu32.v.html../x86/_mm256_min_epu8.v.html../x86/_mm256_min_pd.v.html../x86/_mm256_min_ps.v.html../x86/_mm256_movedup_pd.v.html../x86/_mm256_movehdup_ps.v.html../x86/_mm256_moveldup_ps.v.html../x86/_mm256_movemask_epi8.v.html../x86/_mm256_movemask_pd.v.html../x86/_mm256_movemask_ps.v.html../x86/_mm256_mpsadbw_epu8.v.html../x86/_mm256_mul_epi32.v.html../x86/_mm256_mul_epu32.v.html../x86/_mm256_mul_pd.v.html../x86/_mm256_mul_ps.v.html../x86/_mm256_mulhi_epi16.v.html../x86/_mm256_mulhi_epu16.v.html../x86/_mm256_mulhrs_epi16.v.html../x86/_mm256_mullo_epi16.v.html../x86/_mm256_mullo_epi32.v.html../x86/_mm256_or_pd.v.html../x86/_mm256_or_ps.v.html../x86/_mm256_or_si256.v.html../x86/_mm256_packs_epi16.v.html../x86/_mm256_packs_epi32.v.html../x86/_mm256_packus_epi16.v.html../x86/_mm256_packus_epi32.v.html../x86/_mm256_permute2f128_pd.v.html../x86/_mm256_permute2f128_ps.v.html../x86/_mm256_permute2f128_si256.v.html../x86/_mm256_permute2x128_si256.v.html../x86/_mm256_permute4x64_epi64.v.html../x86/_mm256_permute4x64_pd.v.html../x86/_mm256_permute_pd.v.html../x86/_mm256_permute_ps.v.html../x86/_mm256_permutevar8x32_epi32.v.html../x86/_mm256_permutevar8x32_ps.v.html../x86/_mm256_permutevar_pd.v.html../x86/_mm256_permutevar_ps.v.html../x86/_mm256_rcp_ps.v.html../x86/_mm256_round_pd.v.html../x86/_mm256_round_ps.v.html../x86/_mm256_rsqrt_ps.v.html../x86/_mm256_sad_epu8.v.html../x86/_mm256_set1_epi16.v.html../x86/_mm256_set1_epi32.v.html../x86/_mm256_set1_epi64x.v.html../x86/_mm256_set1_epi8.v.html../x86/_mm256_set1_pd.v.html../x86/_mm256_set1_ps.v.html../x86/_mm256_set_epi16.v.html../x86/_mm256_set_epi32.v.html../x86/_mm256_set_epi64x.v.html../x86/_mm256_set_epi8.v.html../x86/_mm256_set_m128.v.html../x86/_mm256_set_m128d.v.html../x86/_mm256_set_m128i.v.html../x86/_mm256_set_pd.v.html../x86/_mm256_set_ps.v.html../x86/_mm256_setr_epi16.v.html../x86/_mm256_setr_epi32.v.html../x86/_mm256_setr_epi64x.v.html../x86/_mm256_setr_epi8.v.html../x86/_mm256_setr_m128.v.html../x86/_mm256_setr_m128d.v.html../x86/_mm256_setr_m128i.v.html../x86/_mm256_setr_pd.v.html../x86/_mm256_setr_ps.v.html../x86/_mm256_setzero_pd.v.html../x86/_mm256_setzero_ps.v.html../x86/_mm256_setzero_si256.v.html../x86/_mm256_shuffle_epi32.v.html../x86/_mm256_shuffle_epi8.v.html../x86/_mm256_shuffle_pd.v.html../x86/_mm256_shuffle_ps.v.html../x86/_mm256_shufflehi_epi16.v.html../x86/_mm256_shufflelo_epi16.v.html../x86/_mm256_sign_epi16.v.html../x86/_mm256_sign_epi32.v.html../x86/_mm256_sign_epi8.v.html../x86/_mm256_sll_epi16.v.html../x86/_mm256_sll_epi32.v.html../x86/_mm256_sll_epi64.v.html../x86/_mm256_slli_epi16.v.html../x86/_mm256_slli_epi32.v.html../x86/_mm256_slli_epi64.v.html../x86/_mm256_slli_si256.v.html../x86/_mm256_sllv_epi32.v.html../x86/_mm256_sllv_epi64.v.html../x86/_mm256_sqrt_pd.v.html../x86/_mm256_sqrt_ps.v.html../x86/_mm256_sra_epi16.v.html../x86/_mm256_sra_epi32.v.html../x86/_mm256_srai_epi16.v.html../x86/_mm256_srai_epi32.v.html../x86/_mm256_srav_epi32.v.html../x86/_mm256_srl_epi16.v.html../x86/_mm256_srl_epi32.v.html../x86/_mm256_srl_epi64.v.html../x86/_mm256_srli_epi16.v.html../x86/_mm256_srli_epi32.v.html../x86/_mm256_srli_epi64.v.html../x86/_mm256_srli_si256.v.html../x86/_mm256_srlv_epi32.v.html../x86/_mm256_srlv_epi64.v.html../x86/_mm256_store_pd.v.html../x86/_mm256_store_ps.v.html../x86/_mm256_store_si256.v.html../x86/_mm256_storeu2_m128.v.html../x86/_mm256_storeu2_m128d.v.html../x86/_mm256_storeu2_m128i.v.html../x86/_mm256_storeu_pd.v.html../x86/_mm256_storeu_ps.v.html../x86/_mm256_storeu_si256.v.html../x86/_mm256_stream_pd.v.html../x86/_mm256_stream_ps.v.html../x86/_mm256_stream_si256.v.html../x86/_mm256_sub_epi16.v.html../x86/_mm256_sub_epi32.v.html../x86/_mm256_sub_epi64.v.html../x86/_mm256_sub_epi8.v.html../x86/_mm256_sub_pd.v.html../x86/_mm256_sub_ps.v.html../x86/_mm256_subs_epi16.v.html../x86/_mm256_subs_epi8.v.html../x86/_mm256_subs_epu16.v.html../x86/_mm256_subs_epu8.v.html../x86/_mm256_testc_pd.v.html../x86/_mm256_testc_ps.v.html../x86/_mm256_testc_si256.v.html../x86/_mm256_testnzc_pd.v.html../x86/_mm256_testnzc_ps.v.html../x86/_mm256_testnzc_si256.v.html../x86/_mm256_testz_pd.v.html../x86/_mm256_testz_ps.v.html../x86/_mm256_testz_si256.v.html../x86/_mm256_undefined_pd.v.html../x86/_mm256_undefined_ps.v.html../x86/_mm256_undefined_si256.v.html../x86/_mm256_unpackhi_epi16.v.html../x86/_mm256_unpackhi_epi32.v.html../x86/_mm256_unpackhi_epi64.v.html../x86/_mm256_unpackhi_epi8.v.html../x86/_mm256_unpackhi_pd.v.html../x86/_mm256_unpackhi_ps.v.html../x86/_mm256_unpacklo_epi16.v.html../x86/_mm256_unpacklo_epi32.v.html../x86/_mm256_unpacklo_epi64.v.html../x86/_mm256_unpacklo_epi8.v.html../x86/_mm256_unpacklo_pd.v.html../x86/_mm256_unpacklo_ps.v.html../x86/_mm256_xor_pd.v.html../x86/_mm256_xor_ps.v.html../x86/_mm256_xor_si256.v.html../x86/_mm256_zeroall.v.html../x86/_mm256_zeroupper.v.html../x86/_mm256_zextpd128_pd256.v.html../x86/_mm256_zextps128_ps256.v.html../x86/_mm256_zextsi128_si256.v.html../x86/_mm512_abs_epi32.v.html../x86/_mm512_madd52hi_epu64.v.html../x86/_mm512_madd52lo_epu64.v.html../x86/_mm512_mask_abs_epi32.v.html../x86/_mm512_maskz_abs_epi32.v.html../x86/_mm512_set1_epi64.v.html../x86/_mm512_setr_epi32.v.html../x86/_mm512_setzero_si512.v.html../x86/_mm_abs_epi16.v.html../x86/_mm_abs_epi32.v.html../x86/_mm_abs_epi8.v.html../x86/_mm_abs_pi16.v.html../x86/_mm_abs_pi32.v.html../x86/_mm_abs_pi8.v.html../x86/_mm_add_epi16.v.html../x86/_mm_add_epi32.v.html../x86/_mm_add_epi64.v.html../x86/_mm_add_epi8.v.html../x86/_mm_add_pd.v.html../x86/_mm_add_pi16.v.html../x86/_mm_add_pi32.v.html../x86/_mm_add_pi8.v.html../x86/_mm_add_ps.v.html../x86/_mm_add_sd.v.html../x86/_mm_add_si64.v.html../x86/_mm_add_ss.v.html../x86/_mm_adds_epi16.v.html../x86/_mm_adds_epi8.v.html../x86/_mm_adds_epu16.v.html../x86/_mm_adds_epu8.v.html../x86/_mm_adds_pi16.v.html../x86/_mm_adds_pi8.v.html../x86/_mm_adds_pu16.v.html../x86/_mm_adds_pu8.v.html../x86/_mm_addsub_pd.v.html../x86/_mm_addsub_ps.v.html../x86/_mm_aesdec_si128.v.html../x86/_mm_aesdeclast_si128.v.html../x86/_mm_aesenc_si128.v.html../x86/_mm_aesenclast_si128.v.html../x86/_mm_aesimc_si128.v.html../x86/_mm_aeskeygenassist_si128.v.html../x86/_mm_alignr_epi8.v.html../x86/_mm_alignr_pi8.v.html../x86/_mm_and_pd.v.html../x86/_mm_and_ps.v.html../x86/_mm_and_si128.v.html../x86/_mm_andnot_pd.v.html../x86/_mm_andnot_ps.v.html../x86/_mm_andnot_si128.v.html../x86/_mm_avg_epu16.v.html../x86/_mm_avg_epu8.v.html../x86/_mm_avg_pu16.v.html../x86/_mm_avg_pu8.v.html../x86/_mm_blend_epi16.v.html../x86/_mm_blend_epi32.v.html../x86/_mm_blend_pd.v.html../x86/_mm_blend_ps.v.html../x86/_mm_blendv_epi8.v.html../x86/_mm_blendv_pd.v.html../x86/_mm_blendv_ps.v.html../x86/_mm_broadcast_ss.v.html../x86/_mm_broadcastb_epi8.v.html../x86/_mm_broadcastd_epi32.v.html../x86/_mm_broadcastq_epi64.v.html../x86/_mm_broadcastsd_pd.v.html../x86/_mm_broadcastss_ps.v.html../x86/_mm_broadcastw_epi16.v.html../x86/_mm_bslli_si128.v.html../x86/_mm_bsrli_si128.v.html../x86/_mm_castpd_ps.v.html../x86/_mm_castpd_si128.v.html../x86/_mm_castps_pd.v.html../x86/_mm_castps_si128.v.html../x86/_mm_castsi128_pd.v.html../x86/_mm_castsi128_ps.v.html../x86/_mm_ceil_pd.v.html../x86/_mm_ceil_ps.v.html../x86/_mm_ceil_sd.v.html../x86/_mm_ceil_ss.v.html../x86/_mm_clflush.v.html../x86/_mm_clmulepi64_si128.v.html../x86/_mm_cmp_pd.v.html../x86/_mm_cmp_ps.v.html../x86/_mm_cmp_sd.v.html../x86/_mm_cmp_ss.v.html../x86/_mm_cmpeq_epi16.v.html../x86/_mm_cmpeq_epi32.v.html../x86/_mm_cmpeq_epi64.v.html../x86/_mm_cmpeq_epi8.v.html../x86/_mm_cmpeq_pd.v.html../x86/_mm_cmpeq_ps.v.html../x86/_mm_cmpeq_sd.v.html../x86/_mm_cmpeq_ss.v.html../x86/_mm_cmpestra.v.html../x86/_mm_cmpestrc.v.html../x86/_mm_cmpestri.v.html../x86/_mm_cmpestrm.v.html../x86/_mm_cmpestro.v.html../x86/_mm_cmpestrs.v.html../x86/_mm_cmpestrz.v.html../x86/_mm_cmpge_pd.v.html../x86/_mm_cmpge_ps.v.html../x86/_mm_cmpge_sd.v.html../x86/_mm_cmpge_ss.v.html../x86/_mm_cmpgt_epi16.v.html../x86/_mm_cmpgt_epi32.v.html../x86/_mm_cmpgt_epi64.v.html../x86/_mm_cmpgt_epi8.v.html../x86/_mm_cmpgt_pd.v.html../x86/_mm_cmpgt_pi16.v.html../x86/_mm_cmpgt_pi32.v.html../x86/_mm_cmpgt_pi8.v.html../x86/_mm_cmpgt_ps.v.html../x86/_mm_cmpgt_sd.v.html../x86/_mm_cmpgt_ss.v.html../x86/_mm_cmpistra.v.html../x86/_mm_cmpistrc.v.html../x86/_mm_cmpistri.v.html../x86/_mm_cmpistrm.v.html../x86/_mm_cmpistro.v.html../x86/_mm_cmpistrs.v.html../x86/_mm_cmpistrz.v.html../x86/_mm_cmple_pd.v.html../x86/_mm_cmple_ps.v.html../x86/_mm_cmple_sd.v.html../x86/_mm_cmple_ss.v.html../x86/_mm_cmplt_epi16.v.html../x86/_mm_cmplt_epi32.v.html../x86/_mm_cmplt_epi8.v.html../x86/_mm_cmplt_pd.v.html../x86/_mm_cmplt_ps.v.html../x86/_mm_cmplt_sd.v.html../x86/_mm_cmplt_ss.v.html../x86/_mm_cmpneq_pd.v.html../x86/_mm_cmpneq_ps.v.html../x86/_mm_cmpneq_sd.v.html../x86/_mm_cmpneq_ss.v.html../x86/_mm_cmpnge_pd.v.html../x86/_mm_cmpnge_ps.v.html../x86/_mm_cmpnge_sd.v.html../x86/_mm_cmpnge_ss.v.html../x86/_mm_cmpngt_pd.v.html../x86/_mm_cmpngt_ps.v.html../x86/_mm_cmpngt_sd.v.html../x86/_mm_cmpngt_ss.v.html../x86/_mm_cmpnle_pd.v.html../x86/_mm_cmpnle_ps.v.html../x86/_mm_cmpnle_sd.v.html../x86/_mm_cmpnle_ss.v.html../x86/_mm_cmpnlt_pd.v.html../x86/_mm_cmpnlt_ps.v.html../x86/_mm_cmpnlt_sd.v.html../x86/_mm_cmpnlt_ss.v.html../x86/_mm_cmpord_pd.v.html../x86/_mm_cmpord_ps.v.html../x86/_mm_cmpord_sd.v.html../x86/_mm_cmpord_ss.v.html../x86/_mm_cmpunord_pd.v.html../x86/_mm_cmpunord_ps.v.html../x86/_mm_cmpunord_sd.v.html../x86/_mm_cmpunord_ss.v.html../x86/_mm_comieq_sd.v.html../x86/_mm_comieq_ss.v.html../x86/_mm_comige_sd.v.html../x86/_mm_comige_ss.v.html../x86/_mm_comigt_sd.v.html../x86/_mm_comigt_ss.v.html../x86/_mm_comile_sd.v.html../x86/_mm_comile_ss.v.html../x86/_mm_comilt_sd.v.html../x86/_mm_comilt_ss.v.html../x86/_mm_comineq_sd.v.html../x86/_mm_comineq_ss.v.html../x86/_mm_crc32_u16.v.html../x86/_mm_crc32_u32.v.html../x86/_mm_crc32_u8.v.html../x86/_mm_cvt_pi2ps.v.html../x86/_mm_cvt_ps2pi.v.html../x86/_mm_cvt_si2ss.v.html../x86/_mm_cvt_ss2si.v.html../x86/_mm_cvtepi16_epi32.v.html../x86/_mm_cvtepi16_epi64.v.html../x86/_mm_cvtepi32_epi64.v.html../x86/_mm_cvtepi32_pd.v.html../x86/_mm_cvtepi32_ps.v.html../x86/_mm_cvtepi8_epi16.v.html../x86/_mm_cvtepi8_epi32.v.html../x86/_mm_cvtepi8_epi64.v.html../x86/_mm_cvtepu16_epi32.v.html../x86/_mm_cvtepu16_epi64.v.html../x86/_mm_cvtepu32_epi64.v.html../x86/_mm_cvtepu8_epi16.v.html../x86/_mm_cvtepu8_epi32.v.html../x86/_mm_cvtepu8_epi64.v.html../x86/_mm_cvtpd_epi32.v.html../x86/_mm_cvtpd_pi32.v.html../x86/_mm_cvtpd_ps.v.html../x86/_mm_cvtph_ps.v.html../x86/_mm_cvtpi16_ps.v.html../x86/_mm_cvtpi32_pd.v.html../x86/_mm_cvtpi32_ps.v.html../x86/_mm_cvtpi32x2_ps.v.html../x86/_mm_cvtpi8_ps.v.html../x86/_mm_cvtps_epi32.v.html../x86/_mm_cvtps_pd.v.html../x86/_mm_cvtps_ph.v.html../x86/_mm_cvtps_pi16.v.html../x86/_mm_cvtps_pi32.v.html../x86/_mm_cvtps_pi8.v.html../x86/_mm_cvtpu16_ps.v.html../x86/_mm_cvtpu8_ps.v.html../x86/_mm_cvtsd_f64.v.html../x86/_mm_cvtsd_si32.v.html../x86/_mm_cvtsd_ss.v.html../x86/_mm_cvtsi128_si32.v.html../x86/_mm_cvtsi32_sd.v.html../x86/_mm_cvtsi32_si128.v.html../x86/_mm_cvtsi32_si64.v.html../x86/_mm_cvtsi32_ss.v.html../x86/_mm_cvtsi64_si32.v.html../x86/_mm_cvtss_f32.v.html../x86/_mm_cvtss_sd.v.html../x86/_mm_cvtss_si32.v.html../x86/_mm_cvtt_ps2pi.v.html../x86/_mm_cvtt_ss2si.v.html../x86/_mm_cvttpd_epi32.v.html../x86/_mm_cvttpd_pi32.v.html../x86/_mm_cvttps_epi32.v.html../x86/_mm_cvttps_pi32.v.html../x86/_mm_cvttsd_si32.v.html../x86/_mm_cvttss_si32.v.html../x86/_mm_div_pd.v.html../x86/_mm_div_ps.v.html../x86/_mm_div_sd.v.html../x86/_mm_div_ss.v.html../x86/_mm_dp_pd.v.html../x86/_mm_dp_ps.v.html../x86/_mm_empty.v.html../x86/_mm_extract_epi16.v.html../x86/_mm_extract_epi32.v.html../x86/_mm_extract_epi8.v.html../x86/_mm_extract_pi16.v.html../x86/_mm_extract_ps.v.html../x86/_mm_extract_si64.v.html../x86/_mm_floor_pd.v.html../x86/_mm_floor_ps.v.html../x86/_mm_floor_sd.v.html../x86/_mm_floor_ss.v.html../x86/_mm_fmadd_pd.v.html../x86/_mm_fmadd_ps.v.html../x86/_mm_fmadd_sd.v.html../x86/_mm_fmadd_ss.v.html../x86/_mm_fmaddsub_pd.v.html../x86/_mm_fmaddsub_ps.v.html../x86/_mm_fmsub_pd.v.html../x86/_mm_fmsub_ps.v.html../x86/_mm_fmsub_sd.v.html../x86/_mm_fmsub_ss.v.html../x86/_mm_fmsubadd_pd.v.html../x86/_mm_fmsubadd_ps.v.html../x86/_mm_fnmadd_pd.v.html../x86/_mm_fnmadd_ps.v.html../x86/_mm_fnmadd_sd.v.html../x86/_mm_fnmadd_ss.v.html../x86/_mm_fnmsub_pd.v.html../x86/_mm_fnmsub_ps.v.html../x86/_mm_fnmsub_sd.v.html../x86/_mm_fnmsub_ss.v.html../x86/_mm_getcsr.v.html../x86/_mm_hadd_epi16.v.html../x86/_mm_hadd_epi32.v.html../x86/_mm_hadd_pd.v.html../x86/_mm_hadd_pi16.v.html../x86/_mm_hadd_pi32.v.html../x86/_mm_hadd_ps.v.html../x86/_mm_hadds_epi16.v.html../x86/_mm_hadds_pi16.v.html../x86/_mm_hsub_epi16.v.html../x86/_mm_hsub_epi32.v.html../x86/_mm_hsub_pd.v.html../x86/_mm_hsub_pi16.v.html../x86/_mm_hsub_pi32.v.html../x86/_mm_hsub_ps.v.html../x86/_mm_hsubs_epi16.v.html../x86/_mm_hsubs_pi16.v.html../x86/_mm_i32gather_epi32.v.html../x86/_mm_i32gather_epi64.v.html../x86/_mm_i32gather_pd.v.html../x86/_mm_i32gather_ps.v.html../x86/_mm_i64gather_epi32.v.html../x86/_mm_i64gather_epi64.v.html../x86/_mm_i64gather_pd.v.html../x86/_mm_i64gather_ps.v.html../x86/_mm_insert_epi16.v.html../x86/_mm_insert_epi32.v.html../x86/_mm_insert_epi8.v.html../x86/_mm_insert_pi16.v.html../x86/_mm_insert_ps.v.html../x86/_mm_insert_si64.v.html../x86/_mm_lddqu_si128.v.html../x86/_mm_lfence.v.html../x86/_mm_load1_pd.v.html../x86/_mm_load1_ps.v.html../x86/_mm_load_pd.v.html../x86/_mm_load_pd1.v.html../x86/_mm_load_ps.v.html../x86/_mm_load_ps1.v.html../x86/_mm_load_sd.v.html../x86/_mm_load_si128.v.html../x86/_mm_load_ss.v.html../x86/_mm_loaddup_pd.v.html../x86/_mm_loadh_pd.v.html../x86/_mm_loadh_pi.v.html../x86/_mm_loadl_epi64.v.html../x86/_mm_loadl_pd.v.html../x86/_mm_loadl_pi.v.html../x86/_mm_loadr_pd.v.html../x86/_mm_loadr_ps.v.html../x86/_mm_loadu_pd.v.html../x86/_mm_loadu_ps.v.html../x86/_mm_loadu_si128.v.html../x86/_mm_madd52hi_epu64.v.html../x86/_mm_madd52lo_epu64.v.html../x86/_mm_madd_epi16.v.html../x86/_mm_maddubs_epi16.v.html../x86/_mm_maddubs_pi16.v.html../x86/_mm_mask_i32gather_epi32.v.html../x86/_mm_mask_i32gather_epi64.v.html../x86/_mm_mask_i32gather_pd.v.html../x86/_mm_mask_i32gather_ps.v.html../x86/_mm_mask_i64gather_epi32.v.html../x86/_mm_mask_i64gather_epi64.v.html../x86/_mm_mask_i64gather_pd.v.html../x86/_mm_mask_i64gather_ps.v.html../x86/_mm_maskload_epi32.v.html../x86/_mm_maskload_epi64.v.html../x86/_mm_maskload_pd.v.html../x86/_mm_maskload_ps.v.html../x86/_mm_maskmove_si64.v.html../x86/_mm_maskmoveu_si128.v.html../x86/_mm_maskstore_epi32.v.html../x86/_mm_maskstore_epi64.v.html../x86/_mm_maskstore_pd.v.html../x86/_mm_maskstore_ps.v.html../x86/_mm_max_epi16.v.html../x86/_mm_max_epi32.v.html../x86/_mm_max_epi8.v.html../x86/_mm_max_epu16.v.html../x86/_mm_max_epu32.v.html../x86/_mm_max_epu8.v.html../x86/_mm_max_pd.v.html../x86/_mm_max_pi16.v.html../x86/_mm_max_ps.v.html../x86/_mm_max_pu8.v.html../x86/_mm_max_sd.v.html../x86/_mm_max_ss.v.html../x86/_mm_mfence.v.html../x86/_mm_min_epi16.v.html../x86/_mm_min_epi32.v.html../x86/_mm_min_epi8.v.html../x86/_mm_min_epu16.v.html../x86/_mm_min_epu32.v.html../x86/_mm_min_epu8.v.html../x86/_mm_min_pd.v.html../x86/_mm_min_pi16.v.html../x86/_mm_min_ps.v.html../x86/_mm_min_pu8.v.html../x86/_mm_min_sd.v.html../x86/_mm_min_ss.v.html../x86/_mm_minpos_epu16.v.html../x86/_mm_move_epi64.v.html../x86/_mm_move_sd.v.html../x86/_mm_move_ss.v.html../x86/_mm_movedup_pd.v.html../x86/_mm_movehdup_ps.v.html../x86/_mm_movehl_ps.v.html../x86/_mm_moveldup_ps.v.html../x86/_mm_movelh_ps.v.html../x86/_mm_movemask_epi8.v.html../x86/_mm_movemask_pd.v.html../x86/_mm_movemask_pi8.v.html../x86/_mm_movemask_ps.v.html../x86/_mm_movepi64_pi64.v.html../x86/_mm_movpi64_epi64.v.html../x86/_mm_mpsadbw_epu8.v.html../x86/_mm_mul_epi32.v.html../x86/_mm_mul_epu32.v.html../x86/_mm_mul_pd.v.html../x86/_mm_mul_ps.v.html../x86/_mm_mul_sd.v.html../x86/_mm_mul_ss.v.html../x86/_mm_mul_su32.v.html../x86/_mm_mulhi_epi16.v.html../x86/_mm_mulhi_epu16.v.html../x86/_mm_mulhi_pu16.v.html../x86/_mm_mulhrs_epi16.v.html../x86/_mm_mulhrs_pi16.v.html../x86/_mm_mullo_epi16.v.html../x86/_mm_mullo_epi32.v.html../x86/_mm_mullo_pi16.v.html../x86/_mm_or_pd.v.html../x86/_mm_or_ps.v.html../x86/_mm_or_si128.v.html../x86/_mm_packs_epi16.v.html../x86/_mm_packs_epi32.v.html../x86/_mm_packs_pi16.v.html../x86/_mm_packs_pi32.v.html../x86/_mm_packus_epi16.v.html../x86/_mm_packus_epi32.v.html../x86/_mm_pause.v.html../x86/_mm_permute_pd.v.html../x86/_mm_permute_ps.v.html../x86/_mm_permutevar_pd.v.html../x86/_mm_permutevar_ps.v.html../x86/_mm_prefetch.v.html../x86/_mm_rcp_ps.v.html../x86/_mm_rcp_ss.v.html../x86/_mm_round_pd.v.html../x86/_mm_round_ps.v.html../x86/_mm_round_sd.v.html../x86/_mm_round_ss.v.html../x86/_mm_rsqrt_ps.v.html../x86/_mm_rsqrt_ss.v.html../x86/_mm_sad_epu8.v.html../x86/_mm_sad_pu8.v.html../x86/_mm_set1_epi16.v.html../x86/_mm_set1_epi32.v.html../x86/_mm_set1_epi64.v.html../x86/_mm_set1_epi64x.v.html../x86/_mm_set1_epi8.v.html../x86/_mm_set1_pd.v.html../x86/_mm_set1_pi16.v.html../x86/_mm_set1_pi32.v.html../x86/_mm_set1_pi8.v.html../x86/_mm_set1_ps.v.html../x86/_mm_set_epi16.v.html../x86/_mm_set_epi32.v.html../x86/_mm_set_epi64.v.html../x86/_mm_set_epi64x.v.html../x86/_mm_set_epi8.v.html../x86/_mm_set_pd.v.html../x86/_mm_set_pd1.v.html../x86/_mm_set_pi16.v.html../x86/_mm_set_pi32.v.html../x86/_mm_set_pi8.v.html../x86/_mm_set_ps.v.html../x86/_mm_set_ps1.v.html../x86/_mm_set_sd.v.html../x86/_mm_set_ss.v.html../x86/_mm_setcsr.v.html../x86/_mm_setr_epi16.v.html../x86/_mm_setr_epi32.v.html../x86/_mm_setr_epi64.v.html../x86/_mm_setr_epi8.v.html../x86/_mm_setr_pd.v.html../x86/_mm_setr_pi16.v.html../x86/_mm_setr_pi32.v.html../x86/_mm_setr_pi8.v.html../x86/_mm_setr_ps.v.html../x86/_mm_setzero_pd.v.html../x86/_mm_setzero_ps.v.html../x86/_mm_setzero_si128.v.html../x86/_mm_setzero_si64.v.html../x86/_mm_sfence.v.html../x86/_mm_sha1msg1_epu32.v.html../x86/_mm_sha1msg2_epu32.v.html../x86/_mm_sha1nexte_epu32.v.html../x86/_mm_sha1rnds4_epu32.v.html../x86/_mm_sha256msg1_epu32.v.html../x86/_mm_sha256msg2_epu32.v.html../x86/_mm_sha256rnds2_epu32.v.html../x86/_mm_shuffle_epi32.v.html../x86/_mm_shuffle_epi8.v.html../x86/_mm_shuffle_pd.v.html../x86/_mm_shuffle_pi16.v.html../x86/_mm_shuffle_pi8.v.html../x86/_mm_shuffle_ps.v.html../x86/_mm_shufflehi_epi16.v.html../x86/_mm_shufflelo_epi16.v.html../x86/_mm_sign_epi16.v.html../x86/_mm_sign_epi32.v.html../x86/_mm_sign_epi8.v.html../x86/_mm_sign_pi16.v.html../x86/_mm_sign_pi32.v.html../x86/_mm_sign_pi8.v.html../x86/_mm_sll_epi16.v.html../x86/_mm_sll_epi32.v.html../x86/_mm_sll_epi64.v.html../x86/_mm_slli_epi16.v.html../x86/_mm_slli_epi32.v.html../x86/_mm_slli_epi64.v.html../x86/_mm_slli_si128.v.html../x86/_mm_sllv_epi32.v.html../x86/_mm_sllv_epi64.v.html../x86/_mm_sqrt_pd.v.html../x86/_mm_sqrt_ps.v.html../x86/_mm_sqrt_sd.v.html../x86/_mm_sqrt_ss.v.html../x86/_mm_sra_epi16.v.html../x86/_mm_sra_epi32.v.html../x86/_mm_srai_epi16.v.html../x86/_mm_srai_epi32.v.html../x86/_mm_srav_epi32.v.html../x86/_mm_srl_epi16.v.html../x86/_mm_srl_epi32.v.html../x86/_mm_srl_epi64.v.html../x86/_mm_srli_epi16.v.html../x86/_mm_srli_epi32.v.html../x86/_mm_srli_epi64.v.html../x86/_mm_srli_si128.v.html../x86/_mm_srlv_epi32.v.html../x86/_mm_srlv_epi64.v.html../x86/_mm_store1_pd.v.html../x86/_mm_store1_ps.v.html../x86/_mm_store_pd.v.html../x86/_mm_store_pd1.v.html../x86/_mm_store_ps.v.html../x86/_mm_store_ps1.v.html../x86/_mm_store_sd.v.html../x86/_mm_store_si128.v.html../x86/_mm_store_ss.v.html../x86/_mm_storeh_pd.v.html../x86/_mm_storeh_pi.v.html../x86/_mm_storel_epi64.v.html../x86/_mm_storel_pd.v.html../x86/_mm_storel_pi.v.html../x86/_mm_storer_pd.v.html../x86/_mm_storer_ps.v.html../x86/_mm_storeu_pd.v.html../x86/_mm_storeu_ps.v.html../x86/_mm_storeu_si128.v.html../x86/_mm_stream_pd.v.html../x86/_mm_stream_pi.v.html../x86/_mm_stream_ps.v.html../x86/_mm_stream_sd.v.html../x86/_mm_stream_si128.v.html../x86/_mm_stream_si32.v.html../x86/_mm_stream_ss.v.html../x86/_mm_sub_epi16.v.html../x86/_mm_sub_epi32.v.html../x86/_mm_sub_epi64.v.html../x86/_mm_sub_epi8.v.html../x86/_mm_sub_pd.v.html../x86/_mm_sub_pi16.v.html../x86/_mm_sub_pi32.v.html../x86/_mm_sub_pi8.v.html../x86/_mm_sub_ps.v.html../x86/_mm_sub_sd.v.html../x86/_mm_sub_si64.v.html../x86/_mm_sub_ss.v.html../x86/_mm_subs_epi16.v.html../x86/_mm_subs_epi8.v.html../x86/_mm_subs_epu16.v.html../x86/_mm_subs_epu8.v.html../x86/_mm_subs_pi16.v.html../x86/_mm_subs_pi8.v.html../x86/_mm_subs_pu16.v.html../x86/_mm_subs_pu8.v.html../x86/_mm_test_all_ones.v.html../x86/_mm_test_all_zeros.v.html../x86/_mm_test_mix_ones_zeros.v.html../x86/_mm_testc_pd.v.html../x86/_mm_testc_ps.v.html../x86/_mm_testc_si128.v.html../x86/_mm_testnzc_pd.v.html../x86/_mm_testnzc_ps.v.html../x86/_mm_testnzc_si128.v.html../x86/_mm_testz_pd.v.html../x86/_mm_testz_ps.v.html../x86/_mm_testz_si128.v.html../x86/_mm_tzcnt_32.v.html../x86/_mm_ucomieq_sd.v.html../x86/_mm_ucomieq_ss.v.html../x86/_mm_ucomige_sd.v.html../x86/_mm_ucomige_ss.v.html../x86/_mm_ucomigt_sd.v.html../x86/_mm_ucomigt_ss.v.html../x86/_mm_ucomile_sd.v.html../x86/_mm_ucomile_ss.v.html../x86/_mm_ucomilt_sd.v.html../x86/_mm_ucomilt_ss.v.html../x86/_mm_ucomineq_sd.v.html../x86/_mm_ucomineq_ss.v.html../x86/_mm_undefined_pd.v.html../x86/_mm_undefined_ps.v.html../x86/_mm_undefined_si128.v.html../x86/_mm_unpackhi_epi16.v.html../x86/_mm_unpackhi_epi32.v.html../x86/_mm_unpackhi_epi64.v.html../x86/_mm_unpackhi_epi8.v.html../x86/_mm_unpackhi_pd.v.html../x86/_mm_unpackhi_pi16.v.html../x86/_mm_unpackhi_pi32.v.html../x86/_mm_unpackhi_pi8.v.html../x86/_mm_unpackhi_ps.v.html../x86/_mm_unpacklo_epi16.v.html../x86/_mm_unpacklo_epi32.v.html../x86/_mm_unpacklo_epi64.v.html../x86/_mm_unpacklo_epi8.v.html../x86/_mm_unpacklo_pd.v.html../x86/_mm_unpacklo_pi16.v.html../x86/_mm_unpacklo_pi32.v.html../x86/_mm_unpacklo_pi8.v.html../x86/_mm_unpacklo_ps.v.html../x86/_mm_xor_pd.v.html../x86/_mm_xor_ps.v.html../x86/_mm_xor_si128.v.html../x86/_mulx_u32.v.html../x86/_pdep_u32.v.html../x86/_pext_u32.v.html../x86/_popcnt32.v.html../x86/_rdrand16_step.v.html../x86/_rdrand32_step.v.html../x86/_rdseed16_step.v.html../x86/_rdseed32_step.v.html../x86/_rdtsc.v.html../x86/_subborrow_u32.v.html../x86/_t1mskc_u32.v.html../x86/_t1mskc_u64.v.html../x86/_tzcnt_u32.v.html../x86/_tzmsk_u32.v.html../x86/_tzmsk_u64.v.html../x86/_xabort.v.html../x86/_xabort_code.v.html../x86/_xbegin.v.html../x86/_xend.v.html../x86/_xgetbv.v.html../x86/_xrstor.v.html../x86/_xrstors.v.html../x86/_xsave.v.html../x86/_xsavec.v.html../x86/_xsaveopt.v.html../x86/_xsaves.v.html../x86/_xsetbv.v.html../x86/_xtest.v.html../x86/has_cpuid.v.html../x86/ud2.v.html../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../alloc/str/EscapeDefault.t.html../../alloc/borrow/Borrow.t.html../../alloc/borrow/BorrowMut.t.html../../alloc/str/EscapeDebug.t.html../../alloc/str/EscapeDefault.t.html../../alloc/str/EscapeUnicode.t.html../CharTryFromError.t.html../ParseCharError.t.html../DecodeUtf16.t.html../DecodeUtf16Error.t.htmldecode/decode_utf16.v.htmlconvert/from_digit.v.htmlconvert/from_u32.v.htmlconvert/from_u32_unchecked.v.html../FloatToInt.t.html../../arch/aarch64/brk.v.html../../../arch/aarch64/__crc32cd.v.html../../../arch/aarch64/__crc32d.v.html../../../arch/aarch64/vaesdq_u8.v.html../../../arch/aarch64/vaeseq_u8.v.html../../../arch/aarch64/vaesimcq_u8.v.html../../../arch/aarch64/vaesmcq_u8.v.html../../../arch/aarch64/vsha1cq_u32.v.html../../../arch/aarch64/vsha1h_u32.v.html../../../arch/aarch64/vsha1mq_u32.v.html../../../arch/aarch64/vsha1pq_u32.v.html../../../arch/aarch64/vsha1su0q_u32.v.html../../../arch/aarch64/vsha1su1q_u32.v.html../../../arch/aarch64/vsha256h2q_u32.v.html../../../arch/aarch64/vsha256hq_u32.v.html../../../arch/aarch64/vsha256su0q_u32.v.html../../../arch/aarch64/vsha256su1q_u32.v.html../../../arch/aarch64/float64x1_t.t.html../../../arch/aarch64/float64x2_t.t.html../../../../arch/aarch64/vceq_f64.v.html../../../../arch/aarch64/vceq_p64.v.html../../../../arch/aarch64/vceq_s64.v.html../../../../arch/aarch64/vceq_u64.v.html../../../../arch/aarch64/vceqq_f64.v.html../../../../arch/aarch64/vceqq_p64.v.html../../../../arch/aarch64/vceqq_s64.v.html../../../../arch/aarch64/vceqq_u64.v.html../../../../arch/aarch64/vcge_f64.v.html../../../../arch/aarch64/vcge_s64.v.html../../../../arch/aarch64/vcge_u64.v.html../../../../arch/aarch64/vcgeq_f64.v.html../../../../arch/aarch64/vcgeq_s64.v.html../../../../arch/aarch64/vcgeq_u64.v.html../../../../arch/aarch64/vcgt_f64.v.html../../../../arch/aarch64/vcgt_s64.v.html../../../../arch/aarch64/vcgt_u64.v.html../../../../arch/aarch64/vcgtq_f64.v.html../../../../arch/aarch64/vcgtq_s64.v.html../../../../arch/aarch64/vcgtq_u64.v.html../../../../arch/aarch64/vcle_f64.v.html../../../../arch/aarch64/vcle_s64.v.html../../../../arch/aarch64/vcle_u64.v.html../../../../arch/aarch64/vcleq_f64.v.html../../../../arch/aarch64/vcleq_s64.v.html../../../../arch/aarch64/vcleq_u64.v.html../../../../arch/aarch64/vclt_f64.v.html../../../../arch/aarch64/vclt_s64.v.html../../../../arch/aarch64/vclt_u64.v.html../../../../arch/aarch64/vcltq_f64.v.html../../../../arch/aarch64/vcltq_s64.v.html../../../../arch/aarch64/vcltq_u64.v.html../../../../arch/aarch64/vmul_f64.v.html../../../../arch/aarch64/vmulq_f64.v.html../../../../arch/aarch64/vsub_f64.v.html../../../../arch/aarch64/vsubq_f64.v.html../../../arch/aarch64/int8x16x2_t.t.html../../../arch/aarch64/int8x16x3_t.t.html../../../arch/aarch64/int8x16x4_t.t.html../../../arch/aarch64/poly128_t.t.html../../../arch/aarch64/poly64_t.t.html../../../arch/aarch64/poly64x1_t.t.html../../../arch/aarch64/poly64x2_t.t.html../../../arch/aarch64/poly8x16x2_t.t.html../../../arch/aarch64/poly8x16x3_t.t.html../../../arch/aarch64/poly8x16x4_t.t.html../../../arch/aarch64/uint8x16x2_t.t.html../../../arch/aarch64/uint8x16x3_t.t.html../../../arch/aarch64/uint8x16x4_t.t.html../../../arch/aarch64/vadd_f64.v.html../../../arch/aarch64/vaddd_s64.v.html../../../arch/aarch64/vaddd_u64.v.html../../../arch/aarch64/vaddq_f64.v.html../../../arch/aarch64/vcombine_f32.v.html../../../arch/aarch64/vcombine_f64.v.html../../../arch/aarch64/vcombine_p16.v.html../../../arch/aarch64/vcombine_p64.v.html../../../arch/aarch64/vcombine_p8.v.html../../../arch/aarch64/vcombine_s16.v.html../../../arch/aarch64/vcombine_s32.v.html../../../arch/aarch64/vcombine_s64.v.html../../../arch/aarch64/vcombine_s8.v.html../../../arch/aarch64/vcombine_u16.v.html../../../arch/aarch64/vcombine_u32.v.html../../../arch/aarch64/vcombine_u64.v.html../../../arch/aarch64/vcombine_u8.v.html../../../arch/aarch64/vmaxv_f32.v.html../../../arch/aarch64/vmaxv_s16.v.html../../../arch/aarch64/vmaxv_s32.v.html../../../arch/aarch64/vmaxv_s8.v.html../../../arch/aarch64/vmaxv_u16.v.html../../../arch/aarch64/vmaxv_u32.v.html../../../arch/aarch64/vmaxv_u8.v.html../../../arch/aarch64/vmaxvq_f32.v.html../../../arch/aarch64/vmaxvq_f64.v.html../../../arch/aarch64/vmaxvq_s16.v.html../../../arch/aarch64/vmaxvq_s32.v.html../../../arch/aarch64/vmaxvq_s8.v.html../../../arch/aarch64/vmaxvq_u16.v.html../../../arch/aarch64/vmaxvq_u32.v.html../../../arch/aarch64/vmaxvq_u8.v.html../../../arch/aarch64/vminv_f32.v.html../../../arch/aarch64/vminv_s16.v.html../../../arch/aarch64/vminv_s32.v.html../../../arch/aarch64/vminv_s8.v.html../../../arch/aarch64/vminv_u16.v.html../../../arch/aarch64/vminv_u32.v.html../../../arch/aarch64/vminv_u8.v.html../../../arch/aarch64/vminvq_f32.v.html../../../arch/aarch64/vminvq_f64.v.html../../../arch/aarch64/vminvq_s16.v.html../../../arch/aarch64/vminvq_s32.v.html../../../arch/aarch64/vminvq_s8.v.html../../../arch/aarch64/vminvq_u16.v.html../../../arch/aarch64/vminvq_u32.v.html../../../arch/aarch64/vminvq_u8.v.html../../../arch/aarch64/vmull_p64.v.html../../../arch/aarch64/vpaddq_u8.v.html../../../arch/aarch64/vpmaxq_f32.v.html../../../arch/aarch64/vpmaxq_f64.v.html../../../arch/aarch64/vpmaxq_s16.v.html../../../arch/aarch64/vpmaxq_s32.v.html../../../arch/aarch64/vpmaxq_s8.v.html../../../arch/aarch64/vpmaxq_u16.v.html../../../arch/aarch64/vpmaxq_u32.v.html../../../arch/aarch64/vpmaxq_u8.v.html../../../arch/aarch64/vpminq_f32.v.html../../../arch/aarch64/vpminq_f64.v.html../../../arch/aarch64/vpminq_s16.v.html../../../arch/aarch64/vpminq_s32.v.html../../../arch/aarch64/vpminq_s8.v.html../../../arch/aarch64/vpminq_u16.v.html../../../arch/aarch64/vpminq_u32.v.html../../../arch/aarch64/vpminq_u8.v.html../../../arch/aarch64/_cls_u32.v.html../../../arch/aarch64/_cls_u64.v.html../../../arch/aarch64/_clz_u64.v.html../../../arch/aarch64/_rbit_u64.v.html../../../arch/aarch64/_rev_u64.v.html../../../arch/aarch64/__dmb.v.html../../../arch/aarch64/__dsb.v.html../../../arch/aarch64/__isb.v.html../../../../arch/aarch64/SY.t.html../../../arch/aarch64/__nop.v.html../../../arch/aarch64/__rsr.v.html../../../arch/aarch64/__rsrp.v.html../../../arch/aarch64/__wsr.v.html../../../arch/aarch64/__wsrp.v.html../../../../arch/aarch64/APSR.t.html../../../arch/aarch64/__breakpoint.v.html../../../arch/aarch64/float32x2_t.t.html../../../arch/aarch64/float32x4_t.t.html../../../../arch/aarch64/vand_s16.v.html../../../../arch/aarch64/vand_s32.v.html../../../../arch/aarch64/vand_s64.v.html../../../../arch/aarch64/vand_s8.v.html../../../../arch/aarch64/vand_u16.v.html../../../../arch/aarch64/vand_u32.v.html../../../../arch/aarch64/vand_u64.v.html../../../../arch/aarch64/vand_u8.v.html../../../../arch/aarch64/vandq_s16.v.html../../../../arch/aarch64/vandq_s32.v.html../../../../arch/aarch64/vandq_s64.v.html../../../../arch/aarch64/vandq_s8.v.html../../../../arch/aarch64/vandq_u16.v.html../../../../arch/aarch64/vandq_u32.v.html../../../../arch/aarch64/vandq_u64.v.html../../../../arch/aarch64/vandq_u8.v.html../../../../arch/aarch64/vceq_f32.v.html../../../../arch/aarch64/vceq_s16.v.html../../../../arch/aarch64/vceq_s32.v.html../../../../arch/aarch64/vceq_s8.v.html../../../../arch/aarch64/vceq_u16.v.html../../../../arch/aarch64/vceq_u32.v.html../../../../arch/aarch64/vceq_u8.v.html../../../../arch/aarch64/vceqq_f32.v.html../../../../arch/aarch64/vceqq_s16.v.html../../../../arch/aarch64/vceqq_s32.v.html../../../../arch/aarch64/vceqq_s8.v.html../../../../arch/aarch64/vceqq_u16.v.html../../../../arch/aarch64/vceqq_u32.v.html../../../../arch/aarch64/vceqq_u8.v.html../../../../arch/aarch64/vcge_f32.v.html../../../../arch/aarch64/vcge_s16.v.html../../../../arch/aarch64/vcge_s32.v.html../../../../arch/aarch64/vcge_s8.v.html../../../../arch/aarch64/vcge_u16.v.html../../../../arch/aarch64/vcge_u32.v.html../../../../arch/aarch64/vcge_u8.v.html../../../../arch/aarch64/vcgeq_f32.v.html../../../../arch/aarch64/vcgeq_s16.v.html../../../../arch/aarch64/vcgeq_s32.v.html../../../../arch/aarch64/vcgeq_s8.v.html../../../../arch/aarch64/vcgeq_u16.v.html../../../../arch/aarch64/vcgeq_u32.v.html../../../../arch/aarch64/vcgeq_u8.v.html../../../../arch/aarch64/vcgt_f32.v.html../../../../arch/aarch64/vcgt_s16.v.html../../../../arch/aarch64/vcgt_s32.v.html../../../../arch/aarch64/vcgt_s8.v.html../../../../arch/aarch64/vcgt_u16.v.html../../../../arch/aarch64/vcgt_u32.v.html../../../../arch/aarch64/vcgt_u8.v.html../../../../arch/aarch64/vcgtq_f32.v.html../../../../arch/aarch64/vcgtq_s16.v.html../../../../arch/aarch64/vcgtq_s32.v.html../../../../arch/aarch64/vcgtq_s8.v.html../../../../arch/aarch64/vcgtq_u16.v.html../../../../arch/aarch64/vcgtq_u32.v.html../../../../arch/aarch64/vcgtq_u8.v.html../../../../arch/aarch64/vcle_f32.v.html../../../../arch/aarch64/vcle_s16.v.html../../../../arch/aarch64/vcle_s32.v.html../../../../arch/aarch64/vcle_s8.v.html../../../../arch/aarch64/vcle_u16.v.html../../../../arch/aarch64/vcle_u32.v.html../../../../arch/aarch64/vcle_u8.v.html../../../../arch/aarch64/vcleq_f32.v.html../../../../arch/aarch64/vcleq_s16.v.html../../../../arch/aarch64/vcleq_s32.v.html../../../../arch/aarch64/vcleq_s8.v.html../../../../arch/aarch64/vcleq_u16.v.html../../../../arch/aarch64/vcleq_u32.v.html../../../../arch/aarch64/vcleq_u8.v.html../../../../arch/aarch64/vclt_f32.v.html../../../../arch/aarch64/vclt_s16.v.html../../../../arch/aarch64/vclt_s32.v.html../../../../arch/aarch64/vclt_s8.v.html../../../../arch/aarch64/vclt_u16.v.html../../../../arch/aarch64/vclt_u32.v.html../../../../arch/aarch64/vclt_u8.v.html../../../../arch/aarch64/vcltq_f32.v.html../../../../arch/aarch64/vcltq_s16.v.html../../../../arch/aarch64/vcltq_s32.v.html../../../../arch/aarch64/vcltq_s8.v.html../../../../arch/aarch64/vcltq_u16.v.html../../../../arch/aarch64/vcltq_u32.v.html../../../../arch/aarch64/vcltq_u8.v.html../../../../arch/aarch64/veor_s16.v.html../../../../arch/aarch64/veor_s32.v.html../../../../arch/aarch64/veor_s64.v.html../../../../arch/aarch64/veor_s8.v.html../../../../arch/aarch64/veor_u16.v.html../../../../arch/aarch64/veor_u32.v.html../../../../arch/aarch64/veor_u64.v.html../../../../arch/aarch64/veor_u8.v.html../../../../arch/aarch64/veorq_s16.v.html../../../../arch/aarch64/veorq_s32.v.html../../../../arch/aarch64/veorq_s64.v.html../../../../arch/aarch64/veorq_s8.v.html../../../../arch/aarch64/veorq_u16.v.html../../../../arch/aarch64/veorq_u32.v.html../../../../arch/aarch64/veorq_u64.v.html../../../../arch/aarch64/veorq_u8.v.html../../../../arch/aarch64/vhadd_s16.v.html../../../../arch/aarch64/vhadd_s32.v.html../../../../arch/aarch64/vhadd_s8.v.html../../../../arch/aarch64/vhadd_u16.v.html../../../../arch/aarch64/vhadd_u32.v.html../../../../arch/aarch64/vhadd_u8.v.html../../../../arch/aarch64/vhaddq_s16.v.html../../../../arch/aarch64/vhaddq_s32.v.html../../../../arch/aarch64/vhaddq_s8.v.html../../../../arch/aarch64/vhaddq_u16.v.html../../../../arch/aarch64/vhaddq_u32.v.html../../../../arch/aarch64/vhaddq_u8.v.html../../../../arch/aarch64/vhsub_s16.v.html../../../../arch/aarch64/vhsub_s32.v.html../../../../arch/aarch64/vhsub_s8.v.html../../../../arch/aarch64/vhsub_u16.v.html../../../../arch/aarch64/vhsub_u32.v.html../../../../arch/aarch64/vhsub_u8.v.html../../../../arch/aarch64/vhsubq_s16.v.html../../../../arch/aarch64/vhsubq_s32.v.html../../../../arch/aarch64/vhsubq_s8.v.html../../../../arch/aarch64/vhsubq_u16.v.html../../../../arch/aarch64/vhsubq_u32.v.html../../../../arch/aarch64/vhsubq_u8.v.html../../../../arch/aarch64/vmul_f32.v.html../../../../arch/aarch64/vmul_s16.v.html../../../../arch/aarch64/vmul_s32.v.html../../../../arch/aarch64/vmul_s8.v.html../../../../arch/aarch64/vmul_u16.v.html../../../../arch/aarch64/vmul_u32.v.html../../../../arch/aarch64/vmul_u8.v.html../../../../arch/aarch64/vmulq_f32.v.html../../../../arch/aarch64/vmulq_s16.v.html../../../../arch/aarch64/vmulq_s32.v.html../../../../arch/aarch64/vmulq_s8.v.html../../../../arch/aarch64/vmulq_u16.v.html../../../../arch/aarch64/vmulq_u32.v.html../../../../arch/aarch64/vmulq_u8.v.html../../../../arch/aarch64/vorr_s16.v.html../../../../arch/aarch64/vorr_s32.v.html../../../../arch/aarch64/vorr_s64.v.html../../../../arch/aarch64/vorr_s8.v.html../../../../arch/aarch64/vorr_u16.v.html../../../../arch/aarch64/vorr_u32.v.html../../../../arch/aarch64/vorr_u64.v.html../../../../arch/aarch64/vorr_u8.v.html../../../../arch/aarch64/vorrq_s16.v.html../../../../arch/aarch64/vorrq_s32.v.html../../../../arch/aarch64/vorrq_s64.v.html../../../../arch/aarch64/vorrq_s8.v.html../../../../arch/aarch64/vorrq_u16.v.html../../../../arch/aarch64/vorrq_u32.v.html../../../../arch/aarch64/vorrq_u64.v.html../../../../arch/aarch64/vorrq_u8.v.html../../../../arch/aarch64/vqadd_s16.v.html../../../../arch/aarch64/vqadd_s32.v.html../../../../arch/aarch64/vqadd_s8.v.html../../../../arch/aarch64/vqadd_u16.v.html../../../../arch/aarch64/vqadd_u32.v.html../../../../arch/aarch64/vqadd_u8.v.html../../../../arch/aarch64/vqaddq_s16.v.html../../../../arch/aarch64/vqaddq_s32.v.html../../../../arch/aarch64/vqaddq_s8.v.html../../../../arch/aarch64/vqaddq_u16.v.html../../../../arch/aarch64/vqaddq_u32.v.html../../../../arch/aarch64/vqaddq_u8.v.html../../../../arch/aarch64/vqsub_s16.v.html../../../../arch/aarch64/vqsub_s32.v.html../../../../arch/aarch64/vqsub_s8.v.html../../../../arch/aarch64/vqsub_u16.v.html../../../../arch/aarch64/vqsub_u32.v.html../../../../arch/aarch64/vqsub_u8.v.html../../../../arch/aarch64/vqsubq_s16.v.html../../../../arch/aarch64/vqsubq_s32.v.html../../../../arch/aarch64/vqsubq_s8.v.html../../../../arch/aarch64/vqsubq_u16.v.html../../../../arch/aarch64/vqsubq_u32.v.html../../../../arch/aarch64/vqsubq_u8.v.html../../../../arch/aarch64/vrhadd_s16.v.html../../../../arch/aarch64/vrhadd_s32.v.html../../../../arch/aarch64/vrhadd_s8.v.html../../../../arch/aarch64/vrhadd_u16.v.html../../../../arch/aarch64/vrhadd_u32.v.html../../../../arch/aarch64/vrhadd_u8.v.html../../../../arch/aarch64/vrhaddq_s16.v.html../../../../arch/aarch64/vrhaddq_s32.v.html../../../../arch/aarch64/vrhaddq_s8.v.html../../../../arch/aarch64/vrhaddq_u16.v.html../../../../arch/aarch64/vrhaddq_u32.v.html../../../../arch/aarch64/vrhaddq_u8.v.html../../../../arch/aarch64/vsub_f32.v.html../../../../arch/aarch64/vsub_s16.v.html../../../../arch/aarch64/vsub_s32.v.html../../../../arch/aarch64/vsub_s64.v.html../../../../arch/aarch64/vsub_s8.v.html../../../../arch/aarch64/vsub_u16.v.html../../../../arch/aarch64/vsub_u32.v.html../../../../arch/aarch64/vsub_u64.v.html../../../../arch/aarch64/vsub_u8.v.html../../../../arch/aarch64/vsubq_f32.v.html../../../../arch/aarch64/vsubq_s16.v.html../../../../arch/aarch64/vsubq_s32.v.html../../../../arch/aarch64/vsubq_s64.v.html../../../../arch/aarch64/vsubq_s8.v.html../../../../arch/aarch64/vsubq_u16.v.html../../../../arch/aarch64/vsubq_u32.v.html../../../../arch/aarch64/vsubq_u64.v.html../../../../arch/aarch64/vsubq_u8.v.html../../../arch/aarch64/int16x4_t.t.html../../../arch/aarch64/int16x8_t.t.html../../../arch/aarch64/int32x2_t.t.html../../../arch/aarch64/int32x4_t.t.html../../../arch/aarch64/int64x1_t.t.html../../../arch/aarch64/int64x2_t.t.html../../../arch/aarch64/int8x16_t.t.html../../../arch/aarch64/int8x8_t.t.html../../../arch/aarch64/int8x8x2_t.t.html../../../arch/aarch64/int8x8x3_t.t.html../../../arch/aarch64/int8x8x4_t.t.html../../../arch/aarch64/poly16x4_t.t.html../../../arch/aarch64/poly16x8_t.t.html../../../arch/aarch64/poly8x16_t.t.html../../../arch/aarch64/poly8x8_t.t.html../../../arch/aarch64/poly8x8x2_t.t.html../../../arch/aarch64/poly8x8x3_t.t.html../../../arch/aarch64/poly8x8x4_t.t.html../../../arch/aarch64/uint16x4_t.t.html../../../arch/aarch64/uint16x8_t.t.html../../../arch/aarch64/uint32x2_t.t.html../../../arch/aarch64/uint32x4_t.t.html../../../arch/aarch64/uint64x1_t.t.html../../../arch/aarch64/uint64x2_t.t.html../../../arch/aarch64/uint8x16_t.t.html../../../arch/aarch64/uint8x8_t.t.html../../../arch/aarch64/uint8x8x2_t.t.html../../../arch/aarch64/uint8x8x3_t.t.html../../../arch/aarch64/uint8x8x4_t.t.html../../../arch/aarch64/vadd_f32.v.html../../../arch/aarch64/vadd_s16.v.html../../../arch/aarch64/vadd_s32.v.html../../../arch/aarch64/vadd_s8.v.html../../../arch/aarch64/vadd_u16.v.html../../../arch/aarch64/vadd_u32.v.html../../../arch/aarch64/vadd_u8.v.html../../../arch/aarch64/vaddl_s16.v.html../../../arch/aarch64/vaddl_s32.v.html../../../arch/aarch64/vaddl_s8.v.html../../../arch/aarch64/vaddl_u16.v.html../../../arch/aarch64/vaddl_u32.v.html../../../arch/aarch64/vaddl_u8.v.html../../../arch/aarch64/vaddq_f32.v.html../../../arch/aarch64/vaddq_s16.v.html../../../arch/aarch64/vaddq_s32.v.html../../../arch/aarch64/vaddq_s64.v.html../../../arch/aarch64/vaddq_s8.v.html../../../arch/aarch64/vaddq_u16.v.html../../../arch/aarch64/vaddq_u32.v.html../../../arch/aarch64/vaddq_u64.v.html../../../arch/aarch64/vaddq_u8.v.html../../../arch/aarch64/vdupq_n_s8.v.html../../../arch/aarch64/vdupq_n_u8.v.html../../../arch/aarch64/vextq_s8.v.html../../../arch/aarch64/vextq_u8.v.html../../../arch/aarch64/vget_lane_u64.v.html../../../arch/aarch64/vget_lane_u8.v.html../../../arch/aarch64/vgetq_lane_u16.v.html../../../arch/aarch64/vgetq_lane_u32.v.html../../../arch/aarch64/vgetq_lane_u64.v.html../../../arch/aarch64/vld1q_s8.v.html../../../arch/aarch64/vld1q_u8.v.html../../../arch/aarch64/vmovl_s16.v.html../../../arch/aarch64/vmovl_s32.v.html../../../arch/aarch64/vmovl_s8.v.html../../../arch/aarch64/vmovl_u16.v.html../../../arch/aarch64/vmovl_u32.v.html../../../arch/aarch64/vmovl_u8.v.html../../../arch/aarch64/vmovn_s16.v.html../../../arch/aarch64/vmovn_s32.v.html../../../arch/aarch64/vmovn_s64.v.html../../../arch/aarch64/vmovn_u16.v.html../../../arch/aarch64/vmovn_u32.v.html../../../arch/aarch64/vmovn_u64.v.html../../../arch/aarch64/vmovq_n_u8.v.html../../../arch/aarch64/vmvn_p8.v.html../../../arch/aarch64/vmvn_s16.v.html../../../arch/aarch64/vmvn_s32.v.html../../../arch/aarch64/vmvn_s8.v.html../../../arch/aarch64/vmvn_u16.v.html../../../arch/aarch64/vmvn_u32.v.html../../../arch/aarch64/vmvn_u8.v.html../../../arch/aarch64/vmvnq_p8.v.html../../../arch/aarch64/vmvnq_s16.v.html../../../arch/aarch64/vmvnq_s32.v.html../../../arch/aarch64/vmvnq_s8.v.html../../../arch/aarch64/vmvnq_u16.v.html../../../arch/aarch64/vmvnq_u32.v.html../../../arch/aarch64/vmvnq_u8.v.html../../../arch/aarch64/vpmax_f32.v.html../../../arch/aarch64/vpmax_s16.v.html../../../arch/aarch64/vpmax_s32.v.html../../../arch/aarch64/vpmax_s8.v.html../../../arch/aarch64/vpmax_u16.v.html../../../arch/aarch64/vpmax_u32.v.html../../../arch/aarch64/vpmax_u8.v.html../../../arch/aarch64/vpmin_f32.v.html../../../arch/aarch64/vpmin_s16.v.html../../../arch/aarch64/vpmin_s32.v.html../../../arch/aarch64/vpmin_s8.v.html../../../arch/aarch64/vpmin_u16.v.html../../../arch/aarch64/vpmin_u32.v.html../../../arch/aarch64/vpmin_u8.v.html../../../arch/aarch64/vqmovn_u64.v.html../../../arch/aarch64/vreinterpret_u64_u32.v.html../../../arch/aarch64/vreinterpretq_s8_u8.v.html../../../arch/aarch64/vreinterpretq_u16_u8.v.html../../../arch/aarch64/vreinterpretq_u32_u8.v.html../../../arch/aarch64/vreinterpretq_u64_u8.v.html../../../arch/aarch64/vreinterpretq_u8_s8.v.html../../../arch/aarch64/vrsqrte_f32.v.html../../../arch/aarch64/vshlq_n_u8.v.html../../../arch/aarch64/vshrq_n_u8.v.html../../../arch/aarch64/_rev_u16.v.html../../../arch/aarch64/_rev_u32.v.html../../arch/mips/break_.v.html../../../arch/mips/__msa_add_a_b.v.html../../../arch/mips/__msa_add_a_d.v.html../../../arch/mips/__msa_add_a_h.v.html../../../arch/mips/__msa_add_a_w.v.html../../../arch/mips/__msa_adds_a_b.v.html../../../arch/mips/__msa_adds_a_d.v.html../../../arch/mips/__msa_adds_a_h.v.html../../../arch/mips/__msa_adds_a_w.v.html../../../arch/mips/__msa_adds_s_b.v.html../../../arch/mips/__msa_adds_s_d.v.html../../../arch/mips/__msa_adds_s_h.v.html../../../arch/mips/__msa_adds_s_w.v.html../../../arch/mips/__msa_adds_u_b.v.html../../../arch/mips/__msa_adds_u_d.v.html../../../arch/mips/__msa_adds_u_h.v.html../../../arch/mips/__msa_adds_u_w.v.html../../../arch/mips/__msa_addv_b.v.html../../../arch/mips/__msa_addv_d.v.html../../../arch/mips/__msa_addv_h.v.html../../../arch/mips/__msa_addv_w.v.html../../../arch/mips/__msa_addvi_b.v.html../../../arch/mips/__msa_addvi_d.v.html../../../arch/mips/__msa_addvi_h.v.html../../../arch/mips/__msa_addvi_w.v.html../../../arch/mips/__msa_and_v.v.html../../../arch/mips/__msa_andi_b.v.html../../../arch/mips/__msa_asub_s_b.v.html../../../arch/mips/__msa_asub_s_d.v.html../../../arch/mips/__msa_asub_s_h.v.html../../../arch/mips/__msa_asub_s_w.v.html../../../arch/mips/__msa_asub_u_b.v.html../../../arch/mips/__msa_asub_u_d.v.html../../../arch/mips/__msa_asub_u_h.v.html../../../arch/mips/__msa_asub_u_w.v.html../../../arch/mips/__msa_ave_s_b.v.html../../../arch/mips/__msa_ave_s_d.v.html../../../arch/mips/__msa_ave_s_h.v.html../../../arch/mips/__msa_ave_s_w.v.html../../../arch/mips/__msa_ave_u_b.v.html../../../arch/mips/__msa_ave_u_d.v.html../../../arch/mips/__msa_ave_u_h.v.html../../../arch/mips/__msa_ave_u_w.v.html../../../arch/mips/__msa_aver_s_b.v.html../../../arch/mips/__msa_aver_s_d.v.html../../../arch/mips/__msa_aver_s_h.v.html../../../arch/mips/__msa_aver_s_w.v.html../../../arch/mips/__msa_aver_u_b.v.html../../../arch/mips/__msa_aver_u_d.v.html../../../arch/mips/__msa_aver_u_h.v.html../../../arch/mips/__msa_aver_u_w.v.html../../../arch/mips/__msa_bclr_b.v.html../../../arch/mips/__msa_bclr_d.v.html../../../arch/mips/__msa_bclr_h.v.html../../../arch/mips/__msa_bclr_w.v.html../../../arch/mips/__msa_bclri_b.v.html../../../arch/mips/__msa_bclri_d.v.html../../../arch/mips/__msa_bclri_h.v.html../../../arch/mips/__msa_bclri_w.v.html../../../arch/mips/__msa_binsl_b.v.html../../../arch/mips/__msa_binsl_d.v.html../../../arch/mips/__msa_binsl_h.v.html../../../arch/mips/__msa_binsl_w.v.html../../../arch/mips/__msa_binsli_b.v.html../../../arch/mips/__msa_binsli_d.v.html../../../arch/mips/__msa_binsli_h.v.html../../../arch/mips/__msa_binsli_w.v.html../../../arch/mips/__msa_binsr_b.v.html../../../arch/mips/__msa_binsr_d.v.html../../../arch/mips/__msa_binsr_h.v.html../../../arch/mips/__msa_binsr_w.v.html../../../arch/mips/__msa_binsri_b.v.html../../../arch/mips/__msa_binsri_d.v.html../../../arch/mips/__msa_binsri_h.v.html../../../arch/mips/__msa_binsri_w.v.html../../../arch/mips/__msa_bmnz_v.v.html../../../arch/mips/__msa_bmnzi_b.v.html../../../arch/mips/__msa_bmz_v.v.html../../../arch/mips/__msa_bmzi_b.v.html../../../arch/mips/__msa_bneg_b.v.html../../../arch/mips/__msa_bneg_d.v.html../../../arch/mips/__msa_bneg_h.v.html../../../arch/mips/__msa_bneg_w.v.html../../../arch/mips/__msa_bnegi_b.v.html../../../arch/mips/__msa_bnegi_d.v.html../../../arch/mips/__msa_bnegi_h.v.html../../../arch/mips/__msa_bnegi_w.v.html../../../arch/mips/__msa_bnz_b.v.html../../../arch/mips/__msa_bnz_d.v.html../../../arch/mips/__msa_bnz_h.v.html../../../arch/mips/__msa_bnz_v.v.html../../../arch/mips/__msa_bnz_w.v.html../../../arch/mips/__msa_bsel_v.v.html../../../arch/mips/__msa_bseli_b.v.html../../../arch/mips/__msa_bset_b.v.html../../../arch/mips/__msa_bset_d.v.html../../../arch/mips/__msa_bset_h.v.html../../../arch/mips/__msa_bset_w.v.html../../../arch/mips/__msa_bseti_b.v.html../../../arch/mips/__msa_bseti_d.v.html../../../arch/mips/__msa_bseti_h.v.html../../../arch/mips/__msa_bseti_w.v.html../../../arch/mips/__msa_bz_b.v.html../../../arch/mips/__msa_bz_d.v.html../../../arch/mips/__msa_bz_h.v.html../../../arch/mips/__msa_bz_v.v.html../../../arch/mips/__msa_bz_w.v.html../../../arch/mips/__msa_ceq_b.v.html../../../arch/mips/__msa_ceq_d.v.html../../../arch/mips/__msa_ceq_h.v.html../../../arch/mips/__msa_ceq_w.v.html../../../arch/mips/__msa_ceqi_b.v.html../../../arch/mips/__msa_ceqi_d.v.html../../../arch/mips/__msa_ceqi_h.v.html../../../arch/mips/__msa_ceqi_w.v.html../../../arch/mips/__msa_cfcmsa.v.html../../../arch/mips/__msa_cle_s_b.v.html../../../arch/mips/__msa_cle_s_d.v.html../../../arch/mips/__msa_cle_s_h.v.html../../../arch/mips/__msa_cle_s_w.v.html../../../arch/mips/__msa_cle_u_b.v.html../../../arch/mips/__msa_cle_u_d.v.html../../../arch/mips/__msa_cle_u_h.v.html../../../arch/mips/__msa_cle_u_w.v.html../../../arch/mips/__msa_clei_s_b.v.html../../../arch/mips/__msa_clei_s_d.v.html../../../arch/mips/__msa_clei_s_h.v.html../../../arch/mips/__msa_clei_s_w.v.html../../../arch/mips/__msa_clei_u_b.v.html../../../arch/mips/__msa_clei_u_d.v.html../../../arch/mips/__msa_clei_u_h.v.html../../../arch/mips/__msa_clei_u_w.v.html../../../arch/mips/__msa_clt_s_b.v.html../../../arch/mips/__msa_clt_s_d.v.html../../../arch/mips/__msa_clt_s_h.v.html../../../arch/mips/__msa_clt_s_w.v.html../../../arch/mips/__msa_clt_u_b.v.html../../../arch/mips/__msa_clt_u_d.v.html../../../arch/mips/__msa_clt_u_h.v.html../../../arch/mips/__msa_clt_u_w.v.html../../../arch/mips/__msa_clti_s_b.v.html../../../arch/mips/__msa_clti_s_d.v.html../../../arch/mips/__msa_clti_s_h.v.html../../../arch/mips/__msa_clti_s_w.v.html../../../arch/mips/__msa_clti_u_b.v.html../../../arch/mips/__msa_clti_u_d.v.html../../../arch/mips/__msa_clti_u_h.v.html../../../arch/mips/__msa_clti_u_w.v.html../../../arch/mips/__msa_copy_s_b.v.html../../../arch/mips/__msa_copy_s_d.v.html../../../arch/mips/__msa_copy_s_h.v.html../../../arch/mips/__msa_copy_s_w.v.html../../../arch/mips/__msa_copy_u_b.v.html../../../arch/mips/__msa_copy_u_d.v.html../../../arch/mips/__msa_copy_u_h.v.html../../../arch/mips/__msa_copy_u_w.v.html../../../arch/mips/__msa_ctcmsa.v.html../../../arch/mips/__msa_div_s_b.v.html../../../arch/mips/__msa_div_s_d.v.html../../../arch/mips/__msa_div_s_h.v.html../../../arch/mips/__msa_div_s_w.v.html../../../arch/mips/__msa_div_u_b.v.html../../../arch/mips/__msa_div_u_d.v.html../../../arch/mips/__msa_div_u_h.v.html../../../arch/mips/__msa_div_u_w.v.html../../../arch/mips/__msa_dotp_s_d.v.html../../../arch/mips/__msa_dotp_s_h.v.html../../../arch/mips/__msa_dotp_s_w.v.html../../../arch/mips/__msa_dotp_u_d.v.html../../../arch/mips/__msa_dotp_u_h.v.html../../../arch/mips/__msa_dotp_u_w.v.html../../../arch/mips/__msa_dpadd_s_d.v.html../../../arch/mips/__msa_dpadd_s_h.v.html../../../arch/mips/__msa_dpadd_s_w.v.html../../../arch/mips/__msa_dpadd_u_d.v.html../../../arch/mips/__msa_dpadd_u_h.v.html../../../arch/mips/__msa_dpadd_u_w.v.html../../../arch/mips/__msa_dpsub_s_d.v.html../../../arch/mips/__msa_dpsub_s_h.v.html../../../arch/mips/__msa_dpsub_s_w.v.html../../../arch/mips/__msa_dpsub_u_d.v.html../../../arch/mips/__msa_dpsub_u_h.v.html../../../arch/mips/__msa_dpsub_u_w.v.html../../../arch/mips/__msa_fadd_d.v.html../../../arch/mips/__msa_fadd_w.v.html../../../arch/mips/__msa_fcaf_d.v.html../../../arch/mips/__msa_fcaf_w.v.html../../../arch/mips/__msa_fceq_d.v.html../../../arch/mips/__msa_fceq_w.v.html../../../arch/mips/__msa_fclass_d.v.html../../../arch/mips/__msa_fclass_w.v.html../../../arch/mips/__msa_fcle_d.v.html../../../arch/mips/__msa_fcle_w.v.html../../../arch/mips/__msa_fclt_d.v.html../../../arch/mips/__msa_fclt_w.v.html../../../arch/mips/__msa_fcne_d.v.html../../../arch/mips/__msa_fcne_w.v.html../../../arch/mips/__msa_fcor_d.v.html../../../arch/mips/__msa_fcor_w.v.html../../../arch/mips/__msa_fcueq_d.v.html../../../arch/mips/__msa_fcueq_w.v.html../../../arch/mips/__msa_fcule_d.v.html../../../arch/mips/__msa_fcule_w.v.html../../../arch/mips/__msa_fcult_d.v.html../../../arch/mips/__msa_fcult_w.v.html../../../arch/mips/__msa_fcun_d.v.html../../../arch/mips/__msa_fcun_w.v.html../../../arch/mips/__msa_fcune_d.v.html../../../arch/mips/__msa_fcune_w.v.html../../../arch/mips/__msa_fdiv_d.v.html../../../arch/mips/__msa_fdiv_w.v.html../../../arch/mips/__msa_fexdo_w.v.html../../../arch/mips/__msa_fexp2_d.v.html../../../arch/mips/__msa_fexp2_w.v.html../../../arch/mips/__msa_fexupl_d.v.html../../../arch/mips/__msa_fexupr_d.v.html../../../arch/mips/__msa_ffint_s_d.v.html../../../arch/mips/__msa_ffint_s_w.v.html../../../arch/mips/__msa_ffint_u_d.v.html../../../arch/mips/__msa_ffint_u_w.v.html../../../arch/mips/__msa_ffql_d.v.html../../../arch/mips/__msa_ffql_w.v.html../../../arch/mips/__msa_ffqr_d.v.html../../../arch/mips/__msa_ffqr_w.v.html../../../arch/mips/__msa_fill_b.v.html../../../arch/mips/__msa_fill_d.v.html../../../arch/mips/__msa_fill_h.v.html../../../arch/mips/__msa_fill_w.v.html../../../arch/mips/__msa_flog2_d.v.html../../../arch/mips/__msa_flog2_w.v.html../../../arch/mips/__msa_fmadd_d.v.html../../../arch/mips/__msa_fmadd_w.v.html../../../arch/mips/__msa_fmax_a_d.v.html../../../arch/mips/__msa_fmax_a_w.v.html../../../arch/mips/__msa_fmax_d.v.html../../../arch/mips/__msa_fmax_w.v.html../../../arch/mips/__msa_fmin_a_d.v.html../../../arch/mips/__msa_fmin_a_w.v.html../../../arch/mips/__msa_fmin_d.v.html../../../arch/mips/__msa_fmin_w.v.html../../../arch/mips/__msa_fmsub_d.v.html../../../arch/mips/__msa_fmsub_w.v.html../../../arch/mips/__msa_fmul_d.v.html../../../arch/mips/__msa_fmul_w.v.html../../../arch/mips/__msa_frcp_d.v.html../../../arch/mips/__msa_frcp_w.v.html../../../arch/mips/__msa_frint_d.v.html../../../arch/mips/__msa_frint_w.v.html../../../arch/mips/__msa_frsqrt_d.v.html../../../arch/mips/__msa_frsqrt_w.v.html../../../arch/mips/__msa_fsaf_d.v.html../../../arch/mips/__msa_fsaf_w.v.html../../../arch/mips/__msa_fseq_d.v.html../../../arch/mips/__msa_fseq_w.v.html../../../arch/mips/__msa_fsle_d.v.html../../../arch/mips/__msa_fsle_w.v.html../../../arch/mips/__msa_fslt_d.v.html../../../arch/mips/__msa_fslt_w.v.html../../../arch/mips/__msa_fsne_d.v.html../../../arch/mips/__msa_fsne_w.v.html../../../arch/mips/__msa_fsor_d.v.html../../../arch/mips/__msa_fsor_w.v.html../../../arch/mips/__msa_fsqrt_d.v.html../../../arch/mips/__msa_fsqrt_w.v.html../../../arch/mips/__msa_fsub_d.v.html../../../arch/mips/__msa_fsub_w.v.html../../../arch/mips/__msa_fsueq_d.v.html../../../arch/mips/__msa_fsueq_w.v.html../../../arch/mips/__msa_fsule_d.v.html../../../arch/mips/__msa_fsule_w.v.html../../../arch/mips/__msa_fsult_d.v.html../../../arch/mips/__msa_fsult_w.v.html../../../arch/mips/__msa_fsun_d.v.html../../../arch/mips/__msa_fsun_w.v.html../../../arch/mips/__msa_fsune_d.v.html../../../arch/mips/__msa_fsune_w.v.html../../../arch/mips/__msa_ftint_s_d.v.html../../../arch/mips/__msa_ftint_s_w.v.html../../../arch/mips/__msa_ftint_u_d.v.html../../../arch/mips/__msa_ftint_u_w.v.html../../../arch/mips/__msa_ftq_h.v.html../../../arch/mips/__msa_ftq_w.v.html../../../arch/mips/__msa_ftrunc_s_d.v.html../../../arch/mips/__msa_ftrunc_s_w.v.html../../../arch/mips/__msa_ftrunc_u_d.v.html../../../arch/mips/__msa_ftrunc_u_w.v.html../../../arch/mips/__msa_hadd_s_d.v.html../../../arch/mips/__msa_hadd_s_h.v.html../../../arch/mips/__msa_hadd_s_w.v.html../../../arch/mips/__msa_hadd_u_d.v.html../../../arch/mips/__msa_hadd_u_h.v.html../../../arch/mips/__msa_hadd_u_w.v.html../../../arch/mips/__msa_hsub_s_d.v.html../../../arch/mips/__msa_hsub_s_h.v.html../../../arch/mips/__msa_hsub_s_w.v.html../../../arch/mips/__msa_hsub_u_d.v.html../../../arch/mips/__msa_hsub_u_h.v.html../../../arch/mips/__msa_hsub_u_w.v.html../../../arch/mips/__msa_ilvev_b.v.html../../../arch/mips/__msa_ilvev_d.v.html../../../arch/mips/__msa_ilvev_h.v.html../../../arch/mips/__msa_ilvev_w.v.html../../../arch/mips/__msa_ilvl_b.v.html../../../arch/mips/__msa_ilvl_d.v.html../../../arch/mips/__msa_ilvl_h.v.html../../../arch/mips/__msa_ilvl_w.v.html../../../arch/mips/__msa_ilvod_b.v.html../../../arch/mips/__msa_ilvod_d.v.html../../../arch/mips/__msa_ilvod_h.v.html../../../arch/mips/__msa_ilvod_w.v.html../../../arch/mips/__msa_ilvr_b.v.html../../../arch/mips/__msa_ilvr_d.v.html../../../arch/mips/__msa_ilvr_h.v.html../../../arch/mips/__msa_ilvr_w.v.html../../../arch/mips/__msa_insert_b.v.html../../../arch/mips/__msa_insert_d.v.html../../../arch/mips/__msa_insert_h.v.html../../../arch/mips/__msa_insert_w.v.html../../../arch/mips/__msa_insve_b.v.html../../../arch/mips/__msa_insve_d.v.html../../../arch/mips/__msa_insve_h.v.html../../../arch/mips/__msa_insve_w.v.html../../../arch/mips/__msa_ld_b.v.html../../../arch/mips/__msa_ld_d.v.html../../../arch/mips/__msa_ld_h.v.html../../../arch/mips/__msa_ld_w.v.html../../../arch/mips/__msa_ldi_b.v.html../../../arch/mips/__msa_ldi_d.v.html../../../arch/mips/__msa_ldi_h.v.html../../../arch/mips/__msa_ldi_w.v.html../../../arch/mips/__msa_madd_q_h.v.html../../../arch/mips/__msa_madd_q_w.v.html../../../arch/mips/__msa_maddr_q_h.v.html../../../arch/mips/__msa_maddr_q_w.v.html../../../arch/mips/__msa_maddv_b.v.html../../../arch/mips/__msa_maddv_d.v.html../../../arch/mips/__msa_maddv_h.v.html../../../arch/mips/__msa_maddv_w.v.html../../../arch/mips/__msa_max_a_b.v.html../../../arch/mips/__msa_max_a_d.v.html../../../arch/mips/__msa_max_a_h.v.html../../../arch/mips/__msa_max_a_w.v.html../../../arch/mips/__msa_max_s_b.v.html../../../arch/mips/__msa_max_s_d.v.html../../../arch/mips/__msa_max_s_h.v.html../../../arch/mips/__msa_max_s_w.v.html../../../arch/mips/__msa_max_u_b.v.html../../../arch/mips/__msa_max_u_d.v.html../../../arch/mips/__msa_max_u_h.v.html../../../arch/mips/__msa_max_u_w.v.html../../../arch/mips/__msa_maxi_s_b.v.html../../../arch/mips/__msa_maxi_s_d.v.html../../../arch/mips/__msa_maxi_s_h.v.html../../../arch/mips/__msa_maxi_s_w.v.html../../../arch/mips/__msa_maxi_u_b.v.html../../../arch/mips/__msa_maxi_u_d.v.html../../../arch/mips/__msa_maxi_u_h.v.html../../../arch/mips/__msa_maxi_u_w.v.html../../../arch/mips/__msa_min_a_b.v.html../../../arch/mips/__msa_min_a_d.v.html../../../arch/mips/__msa_min_a_h.v.html../../../arch/mips/__msa_min_a_w.v.html../../../arch/mips/__msa_min_s_b.v.html../../../arch/mips/__msa_min_s_d.v.html../../../arch/mips/__msa_min_s_h.v.html../../../arch/mips/__msa_min_s_w.v.html../../../arch/mips/__msa_min_u_b.v.html../../../arch/mips/__msa_min_u_d.v.html../../../arch/mips/__msa_min_u_h.v.html../../../arch/mips/__msa_min_u_w.v.html../../../arch/mips/__msa_mini_s_b.v.html../../../arch/mips/__msa_mini_s_d.v.html../../../arch/mips/__msa_mini_s_h.v.html../../../arch/mips/__msa_mini_s_w.v.html../../../arch/mips/__msa_mini_u_b.v.html../../../arch/mips/__msa_mini_u_d.v.html../../../arch/mips/__msa_mini_u_h.v.html../../../arch/mips/__msa_mini_u_w.v.html../../../arch/mips/__msa_mod_s_b.v.html../../../arch/mips/__msa_mod_s_d.v.html../../../arch/mips/__msa_mod_s_h.v.html../../../arch/mips/__msa_mod_s_w.v.html../../../arch/mips/__msa_mod_u_b.v.html../../../arch/mips/__msa_mod_u_d.v.html../../../arch/mips/__msa_mod_u_h.v.html../../../arch/mips/__msa_mod_u_w.v.html../../../arch/mips/__msa_move_v.v.html../../../arch/mips/__msa_msub_q_h.v.html../../../arch/mips/__msa_msub_q_w.v.html../../../arch/mips/__msa_msubr_q_h.v.html../../../arch/mips/__msa_msubr_q_w.v.html../../../arch/mips/__msa_msubv_b.v.html../../../arch/mips/__msa_msubv_d.v.html../../../arch/mips/__msa_msubv_h.v.html../../../arch/mips/__msa_msubv_w.v.html../../../arch/mips/__msa_mul_q_h.v.html../../../arch/mips/__msa_mul_q_w.v.html../../../arch/mips/__msa_mulr_q_h.v.html../../../arch/mips/__msa_mulr_q_w.v.html../../../arch/mips/__msa_mulv_b.v.html../../../arch/mips/__msa_mulv_d.v.html../../../arch/mips/__msa_mulv_h.v.html../../../arch/mips/__msa_mulv_w.v.html../../../arch/mips/__msa_nloc_b.v.html../../../arch/mips/__msa_nloc_d.v.html../../../arch/mips/__msa_nloc_h.v.html../../../arch/mips/__msa_nloc_w.v.html../../../arch/mips/__msa_nlzc_b.v.html../../../arch/mips/__msa_nlzc_d.v.html../../../arch/mips/__msa_nlzc_h.v.html../../../arch/mips/__msa_nlzc_w.v.html../../../arch/mips/__msa_nor_v.v.html../../../arch/mips/__msa_nori_b.v.html../../../arch/mips/__msa_or_v.v.html../../../arch/mips/__msa_ori_b.v.html../../../arch/mips/__msa_pckev_b.v.html../../../arch/mips/__msa_pckev_d.v.html../../../arch/mips/__msa_pckev_h.v.html../../../arch/mips/__msa_pckev_w.v.html../../../arch/mips/__msa_pckod_b.v.html../../../arch/mips/__msa_pckod_d.v.html../../../arch/mips/__msa_pckod_h.v.html../../../arch/mips/__msa_pckod_w.v.html../../../arch/mips/__msa_pcnt_b.v.html../../../arch/mips/__msa_pcnt_d.v.html../../../arch/mips/__msa_pcnt_h.v.html../../../arch/mips/__msa_pcnt_w.v.html../../../arch/mips/__msa_sat_s_b.v.html../../../arch/mips/__msa_sat_s_d.v.html../../../arch/mips/__msa_sat_s_h.v.html../../../arch/mips/__msa_sat_s_w.v.html../../../arch/mips/__msa_sat_u_b.v.html../../../arch/mips/__msa_sat_u_d.v.html../../../arch/mips/__msa_sat_u_h.v.html../../../arch/mips/__msa_sat_u_w.v.html../../../arch/mips/__msa_shf_b.v.html../../../arch/mips/__msa_shf_h.v.html../../../arch/mips/__msa_shf_w.v.html../../../arch/mips/__msa_sld_b.v.html../../../arch/mips/__msa_sld_d.v.html../../../arch/mips/__msa_sld_h.v.html../../../arch/mips/__msa_sld_w.v.html../../../arch/mips/__msa_sldi_b.v.html../../../arch/mips/__msa_sldi_d.v.html../../../arch/mips/__msa_sldi_h.v.html../../../arch/mips/__msa_sldi_w.v.html../../../arch/mips/__msa_sll_b.v.html../../../arch/mips/__msa_sll_d.v.html../../../arch/mips/__msa_sll_h.v.html../../../arch/mips/__msa_sll_w.v.html../../../arch/mips/__msa_slli_b.v.html../../../arch/mips/__msa_slli_d.v.html../../../arch/mips/__msa_slli_h.v.html../../../arch/mips/__msa_slli_w.v.html../../../arch/mips/__msa_splat_b.v.html../../../arch/mips/__msa_splat_d.v.html../../../arch/mips/__msa_splat_h.v.html../../../arch/mips/__msa_splat_w.v.html../../../arch/mips/__msa_splati_b.v.html../../../arch/mips/__msa_splati_d.v.html../../../arch/mips/__msa_splati_h.v.html../../../arch/mips/__msa_splati_w.v.html../../../arch/mips/__msa_sra_b.v.html../../../arch/mips/__msa_sra_d.v.html../../../arch/mips/__msa_sra_h.v.html../../../arch/mips/__msa_sra_w.v.html../../../arch/mips/__msa_srai_b.v.html../../../arch/mips/__msa_srai_d.v.html../../../arch/mips/__msa_srai_h.v.html../../../arch/mips/__msa_srai_w.v.html../../../arch/mips/__msa_srar_b.v.html../../../arch/mips/__msa_srar_d.v.html../../../arch/mips/__msa_srar_h.v.html../../../arch/mips/__msa_srar_w.v.html../../../arch/mips/__msa_srari_b.v.html../../../arch/mips/__msa_srari_d.v.html../../../arch/mips/__msa_srari_h.v.html../../../arch/mips/__msa_srari_w.v.html../../../arch/mips/__msa_srl_b.v.html../../../arch/mips/__msa_srl_d.v.html../../../arch/mips/__msa_srl_h.v.html../../../arch/mips/__msa_srl_w.v.html../../../arch/mips/__msa_srli_b.v.html../../../arch/mips/__msa_srli_d.v.html../../../arch/mips/__msa_srli_h.v.html../../../arch/mips/__msa_srli_w.v.html../../../arch/mips/__msa_srlr_b.v.html../../../arch/mips/__msa_srlr_d.v.html../../../arch/mips/__msa_srlr_h.v.html../../../arch/mips/__msa_srlr_w.v.html../../../arch/mips/__msa_srlri_b.v.html../../../arch/mips/__msa_srlri_d.v.html../../../arch/mips/__msa_srlri_h.v.html../../../arch/mips/__msa_srlri_w.v.html../../../arch/mips/__msa_st_b.v.html../../../arch/mips/__msa_st_d.v.html../../../arch/mips/__msa_st_h.v.html../../../arch/mips/__msa_st_w.v.html../../../arch/mips/__msa_subs_s_b.v.html../../../arch/mips/__msa_subs_s_d.v.html../../../arch/mips/__msa_subs_s_h.v.html../../../arch/mips/__msa_subs_s_w.v.html../../../arch/mips/__msa_subs_u_b.v.html../../../arch/mips/__msa_subs_u_d.v.html../../../arch/mips/__msa_subs_u_h.v.html../../../arch/mips/__msa_subs_u_w.v.html../../../arch/mips/__msa_subsus_u_b.v.html../../../arch/mips/__msa_subsus_u_d.v.html../../../arch/mips/__msa_subsus_u_h.v.html../../../arch/mips/__msa_subsus_u_w.v.html../../../arch/mips/__msa_subsuu_s_b.v.html../../../arch/mips/__msa_subsuu_s_d.v.html../../../arch/mips/__msa_subsuu_s_h.v.html../../../arch/mips/__msa_subsuu_s_w.v.html../../../arch/mips/__msa_subv_b.v.html../../../arch/mips/__msa_subv_d.v.html../../../arch/mips/__msa_subv_h.v.html../../../arch/mips/__msa_subv_w.v.html../../../arch/mips/__msa_subvi_b.v.html../../../arch/mips/__msa_subvi_d.v.html../../../arch/mips/__msa_subvi_h.v.html../../../arch/mips/__msa_subvi_w.v.html../../../arch/mips/__msa_vshf_b.v.html../../../arch/mips/__msa_vshf_d.v.html../../../arch/mips/__msa_vshf_h.v.html../../../arch/mips/__msa_vshf_w.v.html../../../arch/mips/__msa_xor_v.v.html../../../arch/mips/__msa_xori_b.v.html../../../arch/mips/v16i8.t.html../../../arch/mips/v16u8.t.html../../../arch/mips/v2f64.t.html../../../arch/mips/v2i64.t.html../../../arch/mips/v2u64.t.html../../../arch/mips/v4f32.t.html../../../arch/mips/v4i32.t.html../../../arch/mips/v4u32.t.html../../../arch/mips/v8i16.t.html../../../arch/mips/v8u16.t.html../../arch/nvptx/__assert_fail.v.html../../arch/nvptx/_block_dim_x.v.html../../arch/nvptx/_block_dim_y.v.html../../arch/nvptx/_block_dim_z.v.html../../arch/nvptx/_block_idx_x.v.html../../arch/nvptx/_block_idx_y.v.html../../arch/nvptx/_block_idx_z.v.html../../arch/nvptx/_grid_dim_x.v.html../../arch/nvptx/_grid_dim_y.v.html../../arch/nvptx/_grid_dim_z.v.html../../arch/nvptx/_syncthreads.v.html../../arch/nvptx/_thread_idx_x.v.html../../arch/nvptx/_thread_idx_y.v.html../../arch/nvptx/_thread_idx_z.v.html../../arch/nvptx/free.v.html../../arch/nvptx/malloc.v.html../../arch/nvptx/trap.v.html../../arch/nvptx/vprintf.v.html../../arch/nvptx/trap.v.html../../../arch/powerpc/vec_xxpermdi.v.html../../../arch/powerpc/vector_bool_long.t.html../../../arch/powerpc/vector_double.t.html../../../arch/powerpc/vector_signed_long.t.html../../../arch/powerpc/vector_unsigned_long.t.html../../../arch/wasm32/atomic_notify.v.html../../../arch/wasm32/i32_atomic_wait.v.html../../../arch/wasm32/i64_atomic_wait.v.html../../../arch/wasm32/memory_grow.v.html../../../arch/wasm32/memory_size.v.html../../../arch/wasm32/f32x4_abs.v.html../../../arch/wasm32/f32x4_add.v.html../../../arch/wasm32/f32x4_convert_i32x4_s.v.html../../../arch/wasm32/f32x4_convert_i32x4_u.v.html../../../arch/wasm32/f32x4_div.v.html../../../arch/wasm32/f32x4_eq.v.html../../../arch/wasm32/f32x4_extract_lane.v.html../../../arch/wasm32/f32x4_ge.v.html../../../arch/wasm32/f32x4_gt.v.html../../../arch/wasm32/f32x4_le.v.html../../../arch/wasm32/f32x4_lt.v.html../../../arch/wasm32/f32x4_max.v.html../../../arch/wasm32/f32x4_min.v.html../../../arch/wasm32/f32x4_mul.v.html../../../arch/wasm32/f32x4_ne.v.html../../../arch/wasm32/f32x4_neg.v.html../../../arch/wasm32/f32x4_replace_lane.v.html../../../arch/wasm32/f32x4_splat.v.html../../../arch/wasm32/f32x4_sqrt.v.html../../../arch/wasm32/f32x4_sub.v.html../../../arch/wasm32/f64x2_abs.v.html../../../arch/wasm32/f64x2_add.v.html../../../arch/wasm32/f64x2_convert_s_i64x2.v.html../../../arch/wasm32/f64x2_convert_u_i64x2.v.html../../../arch/wasm32/f64x2_div.v.html../../../arch/wasm32/f64x2_eq.v.html../../../arch/wasm32/f64x2_extract_lane.v.html../../../arch/wasm32/f64x2_ge.v.html../../../arch/wasm32/f64x2_gt.v.html../../../arch/wasm32/f64x2_le.v.html../../../arch/wasm32/f64x2_lt.v.html../../../arch/wasm32/f64x2_max.v.html../../../arch/wasm32/f64x2_min.v.html../../../arch/wasm32/f64x2_mul.v.html../../../arch/wasm32/f64x2_ne.v.html../../../arch/wasm32/f64x2_neg.v.html../../../arch/wasm32/f64x2_replace_lane.v.html../../../arch/wasm32/f64x2_splat.v.html../../../arch/wasm32/f64x2_sqrt.v.html../../../arch/wasm32/f64x2_sub.v.html../../../arch/wasm32/i16x8_add.v.html../../../arch/wasm32/i16x8_add_saturate_s.v.html../../../arch/wasm32/i16x8_add_saturate_u.v.html../../../arch/wasm32/i16x8_all_true.v.html../../../arch/wasm32/i16x8_any_true.v.html../../../arch/wasm32/i16x8_eq.v.html../../../arch/wasm32/i16x8_extract_lane.v.html../../../arch/wasm32/i16x8_ge_s.v.html../../../arch/wasm32/i16x8_ge_u.v.html../../../arch/wasm32/i16x8_gt_s.v.html../../../arch/wasm32/i16x8_gt_u.v.html../../../arch/wasm32/i16x8_le_s.v.html../../../arch/wasm32/i16x8_le_u.v.html../../../arch/wasm32/i16x8_lt_s.v.html../../../arch/wasm32/i16x8_lt_u.v.html../../../arch/wasm32/i16x8_mul.v.html../../../arch/wasm32/i16x8_ne.v.html../../../arch/wasm32/i16x8_neg.v.html../../../arch/wasm32/i16x8_replace_lane.v.html../../../arch/wasm32/i16x8_shl.v.html../../../arch/wasm32/i16x8_shr_s.v.html../../../arch/wasm32/i16x8_shr_u.v.html../../../arch/wasm32/i16x8_splat.v.html../../../arch/wasm32/i16x8_sub.v.html../../../arch/wasm32/i16x8_sub_saturate_s.v.html../../../arch/wasm32/i16x8_sub_saturate_u.v.html../../../arch/wasm32/i32x4_add.v.html../../../arch/wasm32/i32x4_all_true.v.html../../../arch/wasm32/i32x4_any_true.v.html../../../arch/wasm32/i32x4_eq.v.html../../../arch/wasm32/i32x4_extract_lane.v.html../../../arch/wasm32/i32x4_ge_s.v.html../../../arch/wasm32/i32x4_ge_u.v.html../../../arch/wasm32/i32x4_gt_s.v.html../../../arch/wasm32/i32x4_gt_u.v.html../../../arch/wasm32/i32x4_le_s.v.html../../../arch/wasm32/i32x4_le_u.v.html../../../arch/wasm32/i32x4_lt_s.v.html../../../arch/wasm32/i32x4_lt_u.v.html../../../arch/wasm32/i32x4_mul.v.html../../../arch/wasm32/i32x4_ne.v.html../../../arch/wasm32/i32x4_neg.v.html../../../arch/wasm32/i32x4_replace_lane.v.html../../../arch/wasm32/i32x4_shl.v.html../../../arch/wasm32/i32x4_shr_s.v.html../../../arch/wasm32/i32x4_shr_u.v.html../../../arch/wasm32/i32x4_splat.v.html../../../arch/wasm32/i32x4_sub.v.html../../../arch/wasm32/i32x4_trunc_s_f32x4_sat.v.html../../../arch/wasm32/i32x4_trunc_u_f32x4_sat.v.html../../../arch/wasm32/i64x2_add.v.html../../../arch/wasm32/i64x2_all_true.v.html../../../arch/wasm32/i64x2_any_true.v.html../../../arch/wasm32/i64x2_extract_lane.v.html../../../arch/wasm32/i64x2_neg.v.html../../../arch/wasm32/i64x2_replace_lane.v.html../../../arch/wasm32/i64x2_shl.v.html../../../arch/wasm32/i64x2_shr_s.v.html../../../arch/wasm32/i64x2_shr_u.v.html../../../arch/wasm32/i64x2_splat.v.html../../../arch/wasm32/i64x2_sub.v.html../../../arch/wasm32/i64x2_trunc_s_f64x2_sat.v.html../../../arch/wasm32/i64x2_trunc_u_f64x2_sat.v.html../../../arch/wasm32/i8x16_add.v.html../../../arch/wasm32/i8x16_add_saturate_s.v.html../../../arch/wasm32/i8x16_add_saturate_u.v.html../../../arch/wasm32/i8x16_all_true.v.html../../../arch/wasm32/i8x16_any_true.v.html../../../arch/wasm32/i8x16_eq.v.html../../../arch/wasm32/i8x16_extract_lane.v.html../../../arch/wasm32/i8x16_ge_s.v.html../../../arch/wasm32/i8x16_ge_u.v.html../../../arch/wasm32/i8x16_gt_s.v.html../../../arch/wasm32/i8x16_gt_u.v.html../../../arch/wasm32/i8x16_le_s.v.html../../../arch/wasm32/i8x16_le_u.v.html../../../arch/wasm32/i8x16_lt_s.v.html../../../arch/wasm32/i8x16_lt_u.v.html../../../arch/wasm32/i8x16_mul.v.html../../../arch/wasm32/i8x16_ne.v.html../../../arch/wasm32/i8x16_neg.v.html../../../arch/wasm32/i8x16_replace_lane.v.html../../../arch/wasm32/i8x16_shl.v.html../../../arch/wasm32/i8x16_shr_s.v.html../../../arch/wasm32/i8x16_shr_u.v.html../../../arch/wasm32/i8x16_splat.v.html../../../arch/wasm32/i8x16_sub.v.html../../../arch/wasm32/i8x16_sub_saturate_s.v.html../../../arch/wasm32/i8x16_sub_saturate_u.v.html../../../arch/wasm32/v128.t.html../../../arch/wasm32/v128_and.v.html../../../arch/wasm32/v128_bitselect.v.html../../../arch/wasm32/v128_const.v.html../../../arch/wasm32/v128_load.v.html../../../arch/wasm32/v128_not.v.html../../../arch/wasm32/v128_or.v.html../../../arch/wasm32/v128_store.v.html../../../arch/wasm32/v128_xor.v.html../../arch/wasm32/unreachable.v.html../../arch/x86/__m128.t.html../../arch/x86/__m128d.t.html../../arch/x86/__m128i.t.html../../arch/x86/__m256.t.html../../arch/x86/__m256d.t.html../../arch/x86/__m256i.t.html../../arch/x86/__m512.t.html../../arch/x86/__m512d.t.html../../arch/x86/__m512i.t.html../../arch/x86/__m64.t.html../../arch/x86/__mmask16.t.html../../../arch/x86/_lzcnt_u32.v.html../../../arch/x86/_popcnt32.v.html../../../arch/x86/_addcarry_u32.v.html../../../arch/x86/_addcarryx_u32.v.html../../../arch/x86/_subborrow_u32.v.html../../../arch/x86/_mm_aesdec_si128.v.html../../../arch/x86/_mm_aesdeclast_si128.v.html../../../arch/x86/_mm_aesenc_si128.v.html../../../arch/x86/_mm_aesenclast_si128.v.html../../../arch/x86/_mm_aesimc_si128.v.html../../../arch/x86/_mm_aeskeygenassist_si128.v.html../../../arch/x86/_CMP_EQ_OQ.v.html../../../arch/x86/_CMP_EQ_OS.v.html../../../arch/x86/_CMP_EQ_UQ.v.html../../../arch/x86/_CMP_EQ_US.v.html../../../arch/x86/_CMP_FALSE_OQ.v.html../../../arch/x86/_CMP_FALSE_OS.v.html../../../arch/x86/_CMP_GE_OQ.v.html../../../arch/x86/_CMP_GE_OS.v.html../../../arch/x86/_CMP_GT_OQ.v.html../../../arch/x86/_CMP_GT_OS.v.html../../../arch/x86/_CMP_LE_OQ.v.html../../../arch/x86/_CMP_LE_OS.v.html../../../arch/x86/_CMP_LT_OQ.v.html../../../arch/x86/_CMP_LT_OS.v.html../../../arch/x86/_CMP_NEQ_OQ.v.html../../../arch/x86/_CMP_NEQ_OS.v.html../../../arch/x86/_CMP_NEQ_UQ.v.html../../../arch/x86/_CMP_NEQ_US.v.html../../../arch/x86/_CMP_NGE_UQ.v.html../../../arch/x86/_CMP_NGE_US.v.html../../../arch/x86/_CMP_NGT_UQ.v.html../../../arch/x86/_CMP_NGT_US.v.html../../../arch/x86/_CMP_NLE_UQ.v.html../../../arch/x86/_CMP_NLE_US.v.html../../../arch/x86/_CMP_NLT_UQ.v.html../../../arch/x86/_CMP_NLT_US.v.html../../../arch/x86/_CMP_ORD_Q.v.html../../../arch/x86/_CMP_ORD_S.v.html../../../arch/x86/_CMP_TRUE_UQ.v.html../../../arch/x86/_CMP_TRUE_US.v.html../../../arch/x86/_CMP_UNORD_Q.v.html../../../arch/x86/_CMP_UNORD_S.v.html../../../arch/x86/_mm256_add_pd.v.html../../../arch/x86/_mm256_add_ps.v.html../../../arch/x86/_mm256_addsub_pd.v.html../../../arch/x86/_mm256_addsub_ps.v.html../../../arch/x86/_mm256_and_pd.v.html../../../arch/x86/_mm256_and_ps.v.html../../../arch/x86/_mm256_andnot_pd.v.html../../../arch/x86/_mm256_andnot_ps.v.html../../../arch/x86/_mm256_blend_pd.v.html../../../arch/x86/_mm256_blend_ps.v.html../../../arch/x86/_mm256_blendv_pd.v.html../../../arch/x86/_mm256_blendv_ps.v.html../../../arch/x86/_mm256_broadcast_pd.v.html../../../arch/x86/_mm256_broadcast_ps.v.html../../../arch/x86/_mm256_broadcast_sd.v.html../../../arch/x86/_mm256_broadcast_ss.v.html../../../arch/x86/_mm256_castpd128_pd256.v.html../../../arch/x86/_mm256_castpd256_pd128.v.html../../../arch/x86/_mm256_castpd_ps.v.html../../../arch/x86/_mm256_castpd_si256.v.html../../../arch/x86/_mm256_castps128_ps256.v.html../../../arch/x86/_mm256_castps256_ps128.v.html../../../arch/x86/_mm256_castps_pd.v.html../../../arch/x86/_mm256_castps_si256.v.html../../../arch/x86/_mm256_castsi128_si256.v.html../../../arch/x86/_mm256_castsi256_pd.v.html../../../arch/x86/_mm256_castsi256_ps.v.html../../../arch/x86/_mm256_castsi256_si128.v.html../../../arch/x86/_mm256_ceil_pd.v.html../../../arch/x86/_mm256_ceil_ps.v.html../../../arch/x86/_mm256_cmp_pd.v.html../../../arch/x86/_mm256_cmp_ps.v.html../../../arch/x86/_mm256_cvtepi32_pd.v.html../../../arch/x86/_mm256_cvtepi32_ps.v.html../../../arch/x86/_mm256_cvtpd_epi32.v.html../../../arch/x86/_mm256_cvtpd_ps.v.html../../../arch/x86/_mm256_cvtps_epi32.v.html../../../arch/x86/_mm256_cvtps_pd.v.html../../../arch/x86/_mm256_cvtss_f32.v.html../../../arch/x86/_mm256_cvttpd_epi32.v.html../../../arch/x86/_mm256_cvttps_epi32.v.html../../../arch/x86/_mm256_div_pd.v.html../../../arch/x86/_mm256_div_ps.v.html../../../arch/x86/_mm256_dp_ps.v.html../../../arch/x86/_mm256_extractf128_pd.v.html../../../arch/x86/_mm256_extractf128_ps.v.html../../../arch/x86/_mm256_extractf128_si256.v.html../../../arch/x86/_mm256_floor_pd.v.html../../../arch/x86/_mm256_floor_ps.v.html../../../arch/x86/_mm256_hadd_pd.v.html../../../arch/x86/_mm256_hadd_ps.v.html../../../arch/x86/_mm256_hsub_pd.v.html../../../arch/x86/_mm256_hsub_ps.v.html../../../arch/x86/_mm256_insert_epi16.v.html../../../arch/x86/_mm256_insert_epi32.v.html../../../arch/x86/_mm256_insert_epi8.v.html../../../arch/x86/_mm256_insertf128_pd.v.html../../../arch/x86/_mm256_insertf128_ps.v.html../../../arch/x86/_mm256_insertf128_si256.v.html../../../arch/x86/_mm256_lddqu_si256.v.html../../../arch/x86/_mm256_load_pd.v.html../../../arch/x86/_mm256_load_ps.v.html../../../arch/x86/_mm256_load_si256.v.html../../../arch/x86/_mm256_loadu2_m128.v.html../../../arch/x86/_mm256_loadu2_m128d.v.html../../../arch/x86/_mm256_loadu2_m128i.v.html../../../arch/x86/_mm256_loadu_pd.v.html../../../arch/x86/_mm256_loadu_ps.v.html../../../arch/x86/_mm256_loadu_si256.v.html../../../arch/x86/_mm256_maskload_pd.v.html../../../arch/x86/_mm256_maskload_ps.v.html../../../arch/x86/_mm256_maskstore_pd.v.html../../../arch/x86/_mm256_maskstore_ps.v.html../../../arch/x86/_mm256_max_pd.v.html../../../arch/x86/_mm256_max_ps.v.html../../../arch/x86/_mm256_min_pd.v.html../../../arch/x86/_mm256_min_ps.v.html../../../arch/x86/_mm256_movedup_pd.v.html../../../arch/x86/_mm256_movehdup_ps.v.html../../../arch/x86/_mm256_moveldup_ps.v.html../../../arch/x86/_mm256_movemask_pd.v.html../../../arch/x86/_mm256_movemask_ps.v.html../../../arch/x86/_mm256_mul_pd.v.html../../../arch/x86/_mm256_mul_ps.v.html../../../arch/x86/_mm256_or_pd.v.html../../../arch/x86/_mm256_or_ps.v.html../../../arch/x86/_mm256_permute2f128_pd.v.html../../../arch/x86/_mm256_permute2f128_ps.v.html../../../arch/x86/_mm256_permute2f128_si256.v.html../../../arch/x86/_mm256_permute_pd.v.html../../../arch/x86/_mm256_permute_ps.v.html../../../arch/x86/_mm256_permutevar_pd.v.html../../../arch/x86/_mm256_permutevar_ps.v.html../../../arch/x86/_mm256_rcp_ps.v.html../../../arch/x86/_mm256_round_pd.v.html../../../arch/x86/_mm256_round_ps.v.html../../../arch/x86/_mm256_rsqrt_ps.v.html../../../arch/x86/_mm256_set1_epi16.v.html../../../arch/x86/_mm256_set1_epi32.v.html../../../arch/x86/_mm256_set1_epi64x.v.html../../../arch/x86/_mm256_set1_epi8.v.html../../../arch/x86/_mm256_set1_pd.v.html../../../arch/x86/_mm256_set1_ps.v.html../../../arch/x86/_mm256_set_epi16.v.html../../../arch/x86/_mm256_set_epi32.v.html../../../arch/x86/_mm256_set_epi64x.v.html../../../arch/x86/_mm256_set_epi8.v.html../../../arch/x86/_mm256_set_m128.v.html../../../arch/x86/_mm256_set_m128d.v.html../../../arch/x86/_mm256_set_m128i.v.html../../../arch/x86/_mm256_set_pd.v.html../../../arch/x86/_mm256_set_ps.v.html../../../arch/x86/_mm256_setr_epi16.v.html../../../arch/x86/_mm256_setr_epi32.v.html../../../arch/x86/_mm256_setr_epi64x.v.html../../../arch/x86/_mm256_setr_epi8.v.html../../../arch/x86/_mm256_setr_m128.v.html../../../arch/x86/_mm256_setr_m128d.v.html../../../arch/x86/_mm256_setr_m128i.v.html../../../arch/x86/_mm256_setr_pd.v.html../../../arch/x86/_mm256_setr_ps.v.html../../../arch/x86/_mm256_setzero_pd.v.html../../../arch/x86/_mm256_setzero_ps.v.html../../../arch/x86/_mm256_setzero_si256.v.html../../../arch/x86/_mm256_shuffle_pd.v.html../../../arch/x86/_mm256_shuffle_ps.v.html../../../arch/x86/_mm256_sqrt_pd.v.html../../../arch/x86/_mm256_sqrt_ps.v.html../../../arch/x86/_mm256_store_pd.v.html../../../arch/x86/_mm256_store_ps.v.html../../../arch/x86/_mm256_store_si256.v.html../../../arch/x86/_mm256_storeu2_m128.v.html../../../arch/x86/_mm256_storeu2_m128d.v.html../../../arch/x86/_mm256_storeu2_m128i.v.html../../../arch/x86/_mm256_storeu_pd.v.html../../../arch/x86/_mm256_storeu_ps.v.html../../../arch/x86/_mm256_storeu_si256.v.html../../../arch/x86/_mm256_stream_pd.v.html../../../arch/x86/_mm256_stream_ps.v.html../../../arch/x86/_mm256_stream_si256.v.html../../../arch/x86/_mm256_sub_pd.v.html../../../arch/x86/_mm256_sub_ps.v.html../../../arch/x86/_mm256_testc_pd.v.html../../../arch/x86/_mm256_testc_ps.v.html../../../arch/x86/_mm256_testc_si256.v.html../../../arch/x86/_mm256_testnzc_pd.v.html../../../arch/x86/_mm256_testnzc_ps.v.html../../../arch/x86/_mm256_testnzc_si256.v.html../../../arch/x86/_mm256_testz_pd.v.html../../../arch/x86/_mm256_testz_ps.v.html../../../arch/x86/_mm256_testz_si256.v.html../../../arch/x86/_mm256_undefined_pd.v.html../../../arch/x86/_mm256_undefined_ps.v.html../../../arch/x86/_mm256_undefined_si256.v.html../../../arch/x86/_mm256_unpackhi_pd.v.html../../../arch/x86/_mm256_unpackhi_ps.v.html../../../arch/x86/_mm256_unpacklo_pd.v.html../../../arch/x86/_mm256_unpacklo_ps.v.html../../../arch/x86/_mm256_xor_pd.v.html../../../arch/x86/_mm256_xor_ps.v.html../../../arch/x86/_mm256_zeroall.v.html../../../arch/x86/_mm256_zeroupper.v.html../../../arch/x86/_mm256_zextpd128_pd256.v.html../../../arch/x86/_mm256_zextps128_ps256.v.html../../../arch/x86/_mm256_zextsi128_si256.v.html../../../arch/x86/_mm_broadcast_ss.v.html../../../arch/x86/_mm_cmp_pd.v.html../../../arch/x86/_mm_cmp_ps.v.html../../../arch/x86/_mm_cmp_sd.v.html../../../arch/x86/_mm_cmp_ss.v.html../../../arch/x86/_mm_maskload_pd.v.html../../../arch/x86/_mm_maskload_ps.v.html../../../arch/x86/_mm_maskstore_pd.v.html../../../arch/x86/_mm_maskstore_ps.v.html../../../arch/x86/_mm_permute_pd.v.html../../../arch/x86/_mm_permute_ps.v.html../../../arch/x86/_mm_permutevar_pd.v.html../../../arch/x86/_mm_permutevar_ps.v.html../../../arch/x86/_mm_testc_pd.v.html../../../arch/x86/_mm_testc_ps.v.html../../../arch/x86/_mm_testnzc_pd.v.html../../../arch/x86/_mm_testnzc_ps.v.html../../../arch/x86/_mm_testz_pd.v.html../../../arch/x86/_mm_testz_ps.v.html../../../arch/x86/_mm256_abs_epi16.v.html../../../arch/x86/_mm256_abs_epi32.v.html../../../arch/x86/_mm256_abs_epi8.v.html../../../arch/x86/_mm256_add_epi16.v.html../../../arch/x86/_mm256_add_epi32.v.html../../../arch/x86/_mm256_add_epi64.v.html../../../arch/x86/_mm256_add_epi8.v.html../../../arch/x86/_mm256_adds_epi16.v.html../../../arch/x86/_mm256_adds_epi8.v.html../../../arch/x86/_mm256_adds_epu16.v.html../../../arch/x86/_mm256_adds_epu8.v.html../../../arch/x86/_mm256_alignr_epi8.v.html../../../arch/x86/_mm256_and_si256.v.html../../../arch/x86/_mm256_andnot_si256.v.html../../../arch/x86/_mm256_avg_epu16.v.html../../../arch/x86/_mm256_avg_epu8.v.html../../../arch/x86/_mm256_blend_epi16.v.html../../../arch/x86/_mm256_blend_epi32.v.html../../../arch/x86/_mm256_blendv_epi8.v.html../../../arch/x86/_mm256_broadcastb_epi8.v.html../../../arch/x86/_mm256_broadcastd_epi32.v.html../../../arch/x86/_mm256_broadcastq_epi64.v.html../../../arch/x86/_mm256_broadcastsd_pd.v.html../../../arch/x86/_mm256_broadcastsi128_si256.v.html../../../arch/x86/_mm256_broadcastss_ps.v.html../../../arch/x86/_mm256_broadcastw_epi16.v.html../../../arch/x86/_mm256_bslli_epi128.v.html../../../arch/x86/_mm256_bsrli_epi128.v.html../../../arch/x86/_mm256_cmpeq_epi16.v.html../../../arch/x86/_mm256_cmpeq_epi32.v.html../../../arch/x86/_mm256_cmpeq_epi64.v.html../../../arch/x86/_mm256_cmpeq_epi8.v.html../../../arch/x86/_mm256_cmpgt_epi16.v.html../../../arch/x86/_mm256_cmpgt_epi32.v.html../../../arch/x86/_mm256_cmpgt_epi64.v.html../../../arch/x86/_mm256_cmpgt_epi8.v.html../../../arch/x86/_mm256_cvtepi16_epi32.v.html../../../arch/x86/_mm256_cvtepi16_epi64.v.html../../../arch/x86/_mm256_cvtepi32_epi64.v.html../../../arch/x86/_mm256_cvtepi8_epi16.v.html../../../arch/x86/_mm256_cvtepi8_epi32.v.html../../../arch/x86/_mm256_cvtepi8_epi64.v.html../../../arch/x86/_mm256_cvtepu16_epi32.v.html../../../arch/x86/_mm256_cvtepu16_epi64.v.html../../../arch/x86/_mm256_cvtepu32_epi64.v.html../../../arch/x86/_mm256_cvtepu8_epi16.v.html../../../arch/x86/_mm256_cvtepu8_epi32.v.html../../../arch/x86/_mm256_cvtepu8_epi64.v.html../../../arch/x86/_mm256_cvtsd_f64.v.html../../../arch/x86/_mm256_cvtsi256_si32.v.html../../../arch/x86/_mm256_extract_epi16.v.html../../../arch/x86/_mm256_extract_epi32.v.html../../../arch/x86/_mm256_extract_epi8.v.html../../../arch/x86/_mm256_extracti128_si256.v.html../../../arch/x86/_mm256_hadd_epi16.v.html../../../arch/x86/_mm256_hadd_epi32.v.html../../../arch/x86/_mm256_hadds_epi16.v.html../../../arch/x86/_mm256_hsub_epi16.v.html../../../arch/x86/_mm256_hsub_epi32.v.html../../../arch/x86/_mm256_hsubs_epi16.v.html../../../arch/x86/_mm256_i32gather_epi32.v.html../../../arch/x86/_mm256_i32gather_epi64.v.html../../../arch/x86/_mm256_i32gather_pd.v.html../../../arch/x86/_mm256_i32gather_ps.v.html../../../arch/x86/_mm256_i64gather_epi32.v.html../../../arch/x86/_mm256_i64gather_epi64.v.html../../../arch/x86/_mm256_i64gather_pd.v.html../../../arch/x86/_mm256_i64gather_ps.v.html../../../arch/x86/_mm256_inserti128_si256.v.html../../../arch/x86/_mm256_madd_epi16.v.html../../../arch/x86/_mm256_maddubs_epi16.v.html../../../arch/x86/_mm256_mask_i32gather_epi32.v.html../../../arch/x86/_mm256_mask_i32gather_epi64.v.html../../../arch/x86/_mm256_mask_i32gather_pd.v.html../../../arch/x86/_mm256_mask_i32gather_ps.v.html../../../arch/x86/_mm256_mask_i64gather_epi32.v.html../../../arch/x86/_mm256_mask_i64gather_epi64.v.html../../../arch/x86/_mm256_mask_i64gather_pd.v.html../../../arch/x86/_mm256_mask_i64gather_ps.v.html../../../arch/x86/_mm256_maskload_epi32.v.html../../../arch/x86/_mm256_maskload_epi64.v.html../../../arch/x86/_mm256_maskstore_epi32.v.html../../../arch/x86/_mm256_maskstore_epi64.v.html../../../arch/x86/_mm256_max_epi16.v.html../../../arch/x86/_mm256_max_epi32.v.html../../../arch/x86/_mm256_max_epi8.v.html../../../arch/x86/_mm256_max_epu16.v.html../../../arch/x86/_mm256_max_epu32.v.html../../../arch/x86/_mm256_max_epu8.v.html../../../arch/x86/_mm256_min_epi16.v.html../../../arch/x86/_mm256_min_epi32.v.html../../../arch/x86/_mm256_min_epi8.v.html../../../arch/x86/_mm256_min_epu16.v.html../../../arch/x86/_mm256_min_epu32.v.html../../../arch/x86/_mm256_min_epu8.v.html../../../arch/x86/_mm256_movemask_epi8.v.html../../../arch/x86/_mm256_mpsadbw_epu8.v.html../../../arch/x86/_mm256_mul_epi32.v.html../../../arch/x86/_mm256_mul_epu32.v.html../../../arch/x86/_mm256_mulhi_epi16.v.html../../../arch/x86/_mm256_mulhi_epu16.v.html../../../arch/x86/_mm256_mulhrs_epi16.v.html../../../arch/x86/_mm256_mullo_epi16.v.html../../../arch/x86/_mm256_mullo_epi32.v.html../../../arch/x86/_mm256_or_si256.v.html../../../arch/x86/_mm256_packs_epi16.v.html../../../arch/x86/_mm256_packs_epi32.v.html../../../arch/x86/_mm256_packus_epi16.v.html../../../arch/x86/_mm256_packus_epi32.v.html../../../arch/x86/_mm256_permute2x128_si256.v.html../../../arch/x86/_mm256_permute4x64_epi64.v.html../../../arch/x86/_mm256_permute4x64_pd.v.html../../../arch/x86/_mm256_permutevar8x32_epi32.v.html../../../arch/x86/_mm256_permutevar8x32_ps.v.html../../../arch/x86/_mm256_sad_epu8.v.html../../../arch/x86/_mm256_shuffle_epi32.v.html../../../arch/x86/_mm256_shuffle_epi8.v.html../../../arch/x86/_mm256_shufflehi_epi16.v.html../../../arch/x86/_mm256_shufflelo_epi16.v.html../../../arch/x86/_mm256_sign_epi16.v.html../../../arch/x86/_mm256_sign_epi32.v.html../../../arch/x86/_mm256_sign_epi8.v.html../../../arch/x86/_mm256_sll_epi16.v.html../../../arch/x86/_mm256_sll_epi32.v.html../../../arch/x86/_mm256_sll_epi64.v.html../../../arch/x86/_mm256_slli_epi16.v.html../../../arch/x86/_mm256_slli_epi32.v.html../../../arch/x86/_mm256_slli_epi64.v.html../../../arch/x86/_mm256_slli_si256.v.html../../../arch/x86/_mm256_sllv_epi32.v.html../../../arch/x86/_mm256_sllv_epi64.v.html../../../arch/x86/_mm256_sra_epi16.v.html../../../arch/x86/_mm256_sra_epi32.v.html../../../arch/x86/_mm256_srai_epi16.v.html../../../arch/x86/_mm256_srai_epi32.v.html../../../arch/x86/_mm256_srav_epi32.v.html../../../arch/x86/_mm256_srl_epi16.v.html../../../arch/x86/_mm256_srl_epi32.v.html../../../arch/x86/_mm256_srl_epi64.v.html../../../arch/x86/_mm256_srli_epi16.v.html../../../arch/x86/_mm256_srli_epi32.v.html../../../arch/x86/_mm256_srli_epi64.v.html../../../arch/x86/_mm256_srli_si256.v.html../../../arch/x86/_mm256_srlv_epi32.v.html../../../arch/x86/_mm256_srlv_epi64.v.html../../../arch/x86/_mm256_sub_epi16.v.html../../../arch/x86/_mm256_sub_epi32.v.html../../../arch/x86/_mm256_sub_epi64.v.html../../../arch/x86/_mm256_sub_epi8.v.html../../../arch/x86/_mm256_subs_epi16.v.html../../../arch/x86/_mm256_subs_epi8.v.html../../../arch/x86/_mm256_subs_epu16.v.html../../../arch/x86/_mm256_subs_epu8.v.html../../../arch/x86/_mm256_unpackhi_epi16.v.html../../../arch/x86/_mm256_unpackhi_epi32.v.html../../../arch/x86/_mm256_unpackhi_epi64.v.html../../../arch/x86/_mm256_unpackhi_epi8.v.html../../../arch/x86/_mm256_unpacklo_epi16.v.html../../../arch/x86/_mm256_unpacklo_epi32.v.html../../../arch/x86/_mm256_unpacklo_epi64.v.html../../../arch/x86/_mm256_unpacklo_epi8.v.html../../../arch/x86/_mm256_xor_si256.v.html../../../arch/x86/_mm_blend_epi32.v.html../../../arch/x86/_mm_broadcastb_epi8.v.html../../../arch/x86/_mm_broadcastd_epi32.v.html../../../arch/x86/_mm_broadcastq_epi64.v.html../../../arch/x86/_mm_broadcastsd_pd.v.html../../../arch/x86/_mm_broadcastss_ps.v.html../../../arch/x86/_mm_broadcastw_epi16.v.html../../../arch/x86/_mm_i32gather_epi32.v.html../../../arch/x86/_mm_i32gather_epi64.v.html../../../arch/x86/_mm_i32gather_pd.v.html../../../arch/x86/_mm_i32gather_ps.v.html../../../arch/x86/_mm_i64gather_epi32.v.html../../../arch/x86/_mm_i64gather_epi64.v.html../../../arch/x86/_mm_i64gather_pd.v.html../../../arch/x86/_mm_i64gather_ps.v.html../../../arch/x86/_mm_mask_i32gather_epi32.v.html../../../arch/x86/_mm_mask_i32gather_epi64.v.html../../../arch/x86/_mm_mask_i32gather_pd.v.html../../../arch/x86/_mm_mask_i32gather_ps.v.html../../../arch/x86/_mm_mask_i64gather_epi32.v.html../../../arch/x86/_mm_mask_i64gather_epi64.v.html../../../arch/x86/_mm_mask_i64gather_pd.v.html../../../arch/x86/_mm_mask_i64gather_ps.v.html../../../arch/x86/_mm_maskload_epi32.v.html../../../arch/x86/_mm_maskload_epi64.v.html../../../arch/x86/_mm_maskstore_epi32.v.html../../../arch/x86/_mm_maskstore_epi64.v.html../../../arch/x86/_mm_sllv_epi32.v.html../../../arch/x86/_mm_sllv_epi64.v.html../../../arch/x86/_mm_srav_epi32.v.html../../../arch/x86/_mm_srlv_epi32.v.html../../../arch/x86/_mm_srlv_epi64.v.html../../../arch/x86/_mm512_abs_epi32.v.html../../../arch/x86/_mm512_mask_abs_epi32.v.html../../../arch/x86/_mm512_maskz_abs_epi32.v.html../../../arch/x86/_mm512_set1_epi64.v.html../../../arch/x86/_mm512_setr_epi32.v.html../../../arch/x86/_mm512_setzero_si512.v.html../../../arch/x86/_mm256_madd52hi_epu64.v.html../../../arch/x86/_mm256_madd52lo_epu64.v.html../../../arch/x86/_mm512_madd52hi_epu64.v.html../../../arch/x86/_mm512_madd52lo_epu64.v.html../../../arch/x86/_mm_madd52hi_epu64.v.html../../../arch/x86/_mm_madd52lo_epu64.v.html../../../arch/x86/_andn_u32.v.html../../../arch/x86/_bextr2_u32.v.html../../../arch/x86/_bextr_u32.v.html../../../arch/x86/_blsi_u32.v.html../../../arch/x86/_blsmsk_u32.v.html../../../arch/x86/_blsr_u32.v.html../../../arch/x86/_mm_tzcnt_32.v.html../../../arch/x86/_tzcnt_u32.v.html../../../arch/x86/_bzhi_u32.v.html../../../arch/x86/_mulx_u32.v.html../../../arch/x86/_pdep_u32.v.html../../../arch/x86/_pext_u32.v.html../../../arch/x86/_bswap.v.html../../../arch/x86/_bittest.v.html../../../arch/x86/_bittestandcomplement.v.html../../../arch/x86/_bittestandreset.v.html../../../arch/x86/_bittestandset.v.html../../../arch/x86/CpuidResult.t.html../../../arch/x86/__cpuid.v.html../../../arch/x86/__cpuid_count.v.html../../../arch/x86/__get_cpuid_max.v.html../../../arch/x86/has_cpuid.v.html../../../arch/x86/_mm256_cvtph_ps.v.html../../../arch/x86/_mm256_cvtps_ph.v.html../../../arch/x86/_mm_cvtph_ps.v.html../../../arch/x86/_mm_cvtps_ph.v.html../../../arch/x86/_mm256_fmadd_pd.v.html../../../arch/x86/_mm256_fmadd_ps.v.html../../../arch/x86/_mm256_fmaddsub_pd.v.html../../../arch/x86/_mm256_fmaddsub_ps.v.html../../../arch/x86/_mm256_fmsub_pd.v.html../../../arch/x86/_mm256_fmsub_ps.v.html../../../arch/x86/_mm256_fmsubadd_pd.v.html../../../arch/x86/_mm256_fmsubadd_ps.v.html../../../arch/x86/_mm256_fnmadd_pd.v.html../../../arch/x86/_mm256_fnmadd_ps.v.html../../../arch/x86/_mm256_fnmsub_pd.v.html../../../arch/x86/_mm256_fnmsub_ps.v.html../../../arch/x86/_mm_fmadd_pd.v.html../../../arch/x86/_mm_fmadd_ps.v.html../../../arch/x86/_mm_fmadd_sd.v.html../../../arch/x86/_mm_fmadd_ss.v.html../../../arch/x86/_mm_fmaddsub_pd.v.html../../../arch/x86/_mm_fmaddsub_ps.v.html../../../arch/x86/_mm_fmsub_pd.v.html../../../arch/x86/_mm_fmsub_ps.v.html../../../arch/x86/_mm_fmsub_sd.v.html../../../arch/x86/_mm_fmsub_ss.v.html../../../arch/x86/_mm_fmsubadd_pd.v.html../../../arch/x86/_mm_fmsubadd_ps.v.html../../../arch/x86/_mm_fnmadd_pd.v.html../../../arch/x86/_mm_fnmadd_ps.v.html../../../arch/x86/_mm_fnmadd_sd.v.html../../../arch/x86/_mm_fnmadd_ss.v.html../../../arch/x86/_mm_fnmsub_pd.v.html../../../arch/x86/_mm_fnmsub_ps.v.html../../../arch/x86/_mm_fnmsub_sd.v.html../../../arch/x86/_mm_fnmsub_ss.v.html../../../arch/x86/_fxrstor.v.html../../../arch/x86/_fxsave.v.html../../../arch/x86/_m_empty.v.html../../../arch/x86/_m_paddb.v.html../../../arch/x86/_m_paddd.v.html../../../arch/x86/_m_paddsb.v.html../../../arch/x86/_m_paddsw.v.html../../../arch/x86/_m_paddusb.v.html../../../arch/x86/_m_paddusw.v.html../../../arch/x86/_m_paddw.v.html../../../arch/x86/_m_psubb.v.html../../../arch/x86/_m_psubd.v.html../../../arch/x86/_m_psubsb.v.html../../../arch/x86/_m_psubsw.v.html../../../arch/x86/_m_psubusb.v.html../../../arch/x86/_m_psubusw.v.html../../../arch/x86/_m_psubw.v.html../../../arch/x86/_mm_add_pi16.v.html../../../arch/x86/_mm_add_pi32.v.html../../../arch/x86/_mm_add_pi8.v.html../../../arch/x86/_mm_adds_pi16.v.html../../../arch/x86/_mm_adds_pi8.v.html../../../arch/x86/_mm_adds_pu16.v.html../../../arch/x86/_mm_adds_pu8.v.html../../../arch/x86/_mm_cmpgt_pi16.v.html../../../arch/x86/_mm_cmpgt_pi32.v.html../../../arch/x86/_mm_cmpgt_pi8.v.html../../../arch/x86/_mm_cvtsi32_si64.v.html../../../arch/x86/_mm_cvtsi64_si32.v.html../../../arch/x86/_mm_empty.v.html../../../arch/x86/_mm_packs_pi16.v.html../../../arch/x86/_mm_packs_pi32.v.html../../../arch/x86/_mm_set1_pi16.v.html../../../arch/x86/_mm_set1_pi32.v.html../../../arch/x86/_mm_set1_pi8.v.html../../../arch/x86/_mm_set_pi16.v.html../../../arch/x86/_mm_set_pi32.v.html../../../arch/x86/_mm_set_pi8.v.html../../../arch/x86/_mm_setr_pi16.v.html../../../arch/x86/_mm_setr_pi32.v.html../../../arch/x86/_mm_setr_pi8.v.html../../../arch/x86/_mm_setzero_si64.v.html../../../arch/x86/_mm_sub_pi16.v.html../../../arch/x86/_mm_sub_pi32.v.html../../../arch/x86/_mm_sub_pi8.v.html../../../arch/x86/_mm_subs_pi16.v.html../../../arch/x86/_mm_subs_pi8.v.html../../../arch/x86/_mm_subs_pu16.v.html../../../arch/x86/_mm_subs_pu8.v.html../../../arch/x86/_mm_unpackhi_pi16.v.html../../../arch/x86/_mm_unpackhi_pi32.v.html../../../arch/x86/_mm_unpackhi_pi8.v.html../../../arch/x86/_mm_unpacklo_pi16.v.html../../../arch/x86/_mm_unpacklo_pi32.v.html../../../arch/x86/_mm_unpacklo_pi8.v.html../../../arch/x86/_mm_clmulepi64_si128.v.html../../../arch/x86/_rdrand16_step.v.html../../../arch/x86/_rdrand32_step.v.html../../../arch/x86/_rdseed16_step.v.html../../../arch/x86/_rdseed32_step.v.html../../../arch/x86/__rdtscp.v.html../../../arch/x86/_rdtsc.v.html../../../arch/x86/_XABORT_CAPACITY.v.html../../../arch/x86/_XABORT_CONFLICT.v.html../../../arch/x86/_XABORT_DEBUG.v.html../../../arch/x86/_XABORT_EXPLICIT.v.html../../../arch/x86/_XABORT_NESTED.v.html../../../arch/x86/_XABORT_RETRY.v.html../../../arch/x86/_XBEGIN_STARTED.v.html../../../arch/x86/_xabort.v.html../../../arch/x86/_xabort_code.v.html../../../arch/x86/_xbegin.v.html../../../arch/x86/_xend.v.html../../../arch/x86/_xtest.v.html../../../arch/x86/_mm_sha1msg1_epu32.v.html../../../arch/x86/_mm_sha1msg2_epu32.v.html../../../arch/x86/_mm_sha1nexte_epu32.v.html../../../arch/x86/_mm_sha1rnds4_epu32.v.html../../../arch/x86/_mm_sha256msg1_epu32.v.html../../../arch/x86/_mm_sha256msg2_epu32.v.html../../../arch/x86/_mm_sha256rnds2_epu32.v.html../../../arch/x86/_MM_EXCEPT_DENORM.v.html../../../arch/x86/_MM_EXCEPT_DIV_ZERO.v.html../../../arch/x86/_MM_EXCEPT_INEXACT.v.html../../../arch/x86/_MM_EXCEPT_INVALID.v.html../../../arch/x86/_MM_EXCEPT_MASK.v.html../../../arch/x86/_MM_EXCEPT_OVERFLOW.v.html../../../arch/x86/_MM_EXCEPT_UNDERFLOW.v.html../../../arch/x86/_MM_FLUSH_ZERO_MASK.v.html../../../arch/x86/_MM_FLUSH_ZERO_OFF.v.html../../../arch/x86/_MM_FLUSH_ZERO_ON.v.html../../../arch/x86/_MM_GET_EXCEPTION_MASK.v.html../../../arch/x86/_MM_GET_EXCEPTION_STATE.v.html../../../arch/x86/_MM_GET_FLUSH_ZERO_MODE.v.html../../../arch/x86/_MM_GET_ROUNDING_MODE.v.html../../../arch/x86/_MM_HINT_NTA.v.html../../../arch/x86/_MM_HINT_T0.v.html../../../arch/x86/_MM_HINT_T1.v.html../../../arch/x86/_MM_HINT_T2.v.html../../../arch/x86/_MM_MASK_DENORM.v.html../../../arch/x86/_MM_MASK_DIV_ZERO.v.html../../../arch/x86/_MM_MASK_INEXACT.v.html../../../arch/x86/_MM_MASK_INVALID.v.html../../../arch/x86/_MM_MASK_MASK.v.html../../../arch/x86/_MM_MASK_OVERFLOW.v.html../../../arch/x86/_MM_MASK_UNDERFLOW.v.html../../../arch/x86/_MM_ROUND_DOWN.v.html../../../arch/x86/_MM_ROUND_MASK.v.html../../../arch/x86/_MM_ROUND_NEAREST.v.html../../../arch/x86/_MM_ROUND_TOWARD_ZERO.v.html../../../arch/x86/_MM_ROUND_UP.v.html../../../arch/x86/_MM_SET_EXCEPTION_MASK.v.html../../../arch/x86/_MM_SET_EXCEPTION_STATE.v.html../../../arch/x86/_MM_SET_FLUSH_ZERO_MODE.v.html../../../arch/x86/_MM_SET_ROUNDING_MODE.v.html../../../arch/x86/_MM_SHUFFLE.v.html../../../arch/x86/_MM_TRANSPOSE4_PS.v.html../../../arch/x86/_m_maskmovq.v.html../../../arch/x86/_m_pavgb.v.html../../../arch/x86/_m_pavgw.v.html../../../arch/x86/_m_pextrw.v.html../../../arch/x86/_m_pinsrw.v.html../../../arch/x86/_m_pmaxsw.v.html../../../arch/x86/_m_pmaxub.v.html../../../arch/x86/_m_pminsw.v.html../../../arch/x86/_m_pminub.v.html../../../arch/x86/_m_pmovmskb.v.html../../../arch/x86/_m_pmulhuw.v.html../../../arch/x86/_m_psadbw.v.html../../../arch/x86/_m_pshufw.v.html../../../arch/x86/_mm_add_ps.v.html../../../arch/x86/_mm_add_ss.v.html../../../arch/x86/_mm_and_ps.v.html../../../arch/x86/_mm_andnot_ps.v.html../../../arch/x86/_mm_avg_pu16.v.html../../../arch/x86/_mm_avg_pu8.v.html../../../arch/x86/_mm_cmpeq_ps.v.html../../../arch/x86/_mm_cmpeq_ss.v.html../../../arch/x86/_mm_cmpge_ps.v.html../../../arch/x86/_mm_cmpge_ss.v.html../../../arch/x86/_mm_cmpgt_ps.v.html../../../arch/x86/_mm_cmpgt_ss.v.html../../../arch/x86/_mm_cmple_ps.v.html../../../arch/x86/_mm_cmple_ss.v.html../../../arch/x86/_mm_cmplt_ps.v.html../../../arch/x86/_mm_cmplt_ss.v.html../../../arch/x86/_mm_cmpneq_ps.v.html../../../arch/x86/_mm_cmpneq_ss.v.html../../../arch/x86/_mm_cmpnge_ps.v.html../../../arch/x86/_mm_cmpnge_ss.v.html../../../arch/x86/_mm_cmpngt_ps.v.html../../../arch/x86/_mm_cmpngt_ss.v.html../../../arch/x86/_mm_cmpnle_ps.v.html../../../arch/x86/_mm_cmpnle_ss.v.html../../../arch/x86/_mm_cmpnlt_ps.v.html../../../arch/x86/_mm_cmpnlt_ss.v.html../../../arch/x86/_mm_cmpord_ps.v.html../../../arch/x86/_mm_cmpord_ss.v.html../../../arch/x86/_mm_cmpunord_ps.v.html../../../arch/x86/_mm_cmpunord_ss.v.html../../../arch/x86/_mm_comieq_ss.v.html../../../arch/x86/_mm_comige_ss.v.html../../../arch/x86/_mm_comigt_ss.v.html../../../arch/x86/_mm_comile_ss.v.html../../../arch/x86/_mm_comilt_ss.v.html../../../arch/x86/_mm_comineq_ss.v.html../../../arch/x86/_mm_cvt_pi2ps.v.html../../../arch/x86/_mm_cvt_ps2pi.v.html../../../arch/x86/_mm_cvt_si2ss.v.html../../../arch/x86/_mm_cvt_ss2si.v.html../../../arch/x86/_mm_cvtpi16_ps.v.html../../../arch/x86/_mm_cvtpi32_ps.v.html../../../arch/x86/_mm_cvtpi32x2_ps.v.html../../../arch/x86/_mm_cvtpi8_ps.v.html../../../arch/x86/_mm_cvtps_pi16.v.html../../../arch/x86/_mm_cvtps_pi32.v.html../../../arch/x86/_mm_cvtps_pi8.v.html../../../arch/x86/_mm_cvtpu16_ps.v.html../../../arch/x86/_mm_cvtpu8_ps.v.html../../../arch/x86/_mm_cvtsi32_ss.v.html../../../arch/x86/_mm_cvtss_f32.v.html../../../arch/x86/_mm_cvtss_si32.v.html../../../arch/x86/_mm_cvtt_ps2pi.v.html../../../arch/x86/_mm_cvtt_ss2si.v.html../../../arch/x86/_mm_cvttps_pi32.v.html../../../arch/x86/_mm_cvttss_si32.v.html../../../arch/x86/_mm_div_ps.v.html../../../arch/x86/_mm_div_ss.v.html../../../arch/x86/_mm_extract_pi16.v.html../../../arch/x86/_mm_getcsr.v.html../../../arch/x86/_mm_insert_pi16.v.html../../../arch/x86/_mm_load1_ps.v.html../../../arch/x86/_mm_load_ps.v.html../../../arch/x86/_mm_load_ps1.v.html../../../arch/x86/_mm_load_ss.v.html../../../arch/x86/_mm_loadh_pi.v.html../../../arch/x86/_mm_loadl_pi.v.html../../../arch/x86/_mm_loadr_ps.v.html../../../arch/x86/_mm_loadu_ps.v.html../../../arch/x86/_mm_maskmove_si64.v.html../../../arch/x86/_mm_max_pi16.v.html../../../arch/x86/_mm_max_ps.v.html../../../arch/x86/_mm_max_pu8.v.html../../../arch/x86/_mm_max_ss.v.html../../../arch/x86/_mm_min_pi16.v.html../../../arch/x86/_mm_min_ps.v.html../../../arch/x86/_mm_min_pu8.v.html../../../arch/x86/_mm_min_ss.v.html../../../arch/x86/_mm_move_ss.v.html../../../arch/x86/_mm_movehl_ps.v.html../../../arch/x86/_mm_movelh_ps.v.html../../../arch/x86/_mm_movemask_pi8.v.html../../../arch/x86/_mm_movemask_ps.v.html../../../arch/x86/_mm_mul_ps.v.html../../../arch/x86/_mm_mul_ss.v.html../../../arch/x86/_mm_mulhi_pu16.v.html../../../arch/x86/_mm_mullo_pi16.v.html../../../arch/x86/_mm_or_ps.v.html../../../arch/x86/_mm_prefetch.v.html../../../arch/x86/_mm_rcp_ps.v.html../../../arch/x86/_mm_rcp_ss.v.html../../../arch/x86/_mm_rsqrt_ps.v.html../../../arch/x86/_mm_rsqrt_ss.v.html../../../arch/x86/_mm_sad_pu8.v.html../../../arch/x86/_mm_set1_ps.v.html../../../arch/x86/_mm_set_ps.v.html../../../arch/x86/_mm_set_ps1.v.html../../../arch/x86/_mm_set_ss.v.html../../../arch/x86/_mm_setcsr.v.html../../../arch/x86/_mm_setr_ps.v.html../../../arch/x86/_mm_setzero_ps.v.html../../../arch/x86/_mm_sfence.v.html../../../arch/x86/_mm_shuffle_pi16.v.html../../../arch/x86/_mm_shuffle_ps.v.html../../../arch/x86/_mm_sqrt_ps.v.html../../../arch/x86/_mm_sqrt_ss.v.html../../../arch/x86/_mm_store1_ps.v.html../../../arch/x86/_mm_store_ps.v.html../../../arch/x86/_mm_store_ps1.v.html../../../arch/x86/_mm_store_ss.v.html../../../arch/x86/_mm_storeh_pi.v.html../../../arch/x86/_mm_storel_pi.v.html../../../arch/x86/_mm_storer_ps.v.html../../../arch/x86/_mm_storeu_ps.v.html../../../arch/x86/_mm_stream_pi.v.html../../../arch/x86/_mm_stream_ps.v.html../../../arch/x86/_mm_sub_ps.v.html../../../arch/x86/_mm_sub_ss.v.html../../../arch/x86/_mm_ucomieq_ss.v.html../../../arch/x86/_mm_ucomige_ss.v.html../../../arch/x86/_mm_ucomigt_ss.v.html../../../arch/x86/_mm_ucomile_ss.v.html../../../arch/x86/_mm_ucomilt_ss.v.html../../../arch/x86/_mm_ucomineq_ss.v.html../../../arch/x86/_mm_undefined_ps.v.html../../../arch/x86/_mm_unpackhi_ps.v.html../../../arch/x86/_mm_unpacklo_ps.v.html../../../arch/x86/_mm_xor_ps.v.html../../../arch/x86/_mm_add_epi16.v.html../../../arch/x86/_mm_add_epi32.v.html../../../arch/x86/_mm_add_epi64.v.html../../../arch/x86/_mm_add_epi8.v.html../../../arch/x86/_mm_add_pd.v.html../../../arch/x86/_mm_add_sd.v.html../../../arch/x86/_mm_add_si64.v.html../../../arch/x86/_mm_adds_epi16.v.html../../../arch/x86/_mm_adds_epi8.v.html../../../arch/x86/_mm_adds_epu16.v.html../../../arch/x86/_mm_adds_epu8.v.html../../../arch/x86/_mm_and_pd.v.html../../../arch/x86/_mm_and_si128.v.html../../../arch/x86/_mm_andnot_pd.v.html../../../arch/x86/_mm_andnot_si128.v.html../../../arch/x86/_mm_avg_epu16.v.html../../../arch/x86/_mm_avg_epu8.v.html../../../arch/x86/_mm_bslli_si128.v.html../../../arch/x86/_mm_bsrli_si128.v.html../../../arch/x86/_mm_castpd_ps.v.html../../../arch/x86/_mm_castpd_si128.v.html../../../arch/x86/_mm_castps_pd.v.html../../../arch/x86/_mm_castps_si128.v.html../../../arch/x86/_mm_castsi128_pd.v.html../../../arch/x86/_mm_castsi128_ps.v.html../../../arch/x86/_mm_clflush.v.html../../../arch/x86/_mm_cmpeq_epi16.v.html../../../arch/x86/_mm_cmpeq_epi32.v.html../../../arch/x86/_mm_cmpeq_epi8.v.html../../../arch/x86/_mm_cmpeq_pd.v.html../../../arch/x86/_mm_cmpeq_sd.v.html../../../arch/x86/_mm_cmpge_pd.v.html../../../arch/x86/_mm_cmpge_sd.v.html../../../arch/x86/_mm_cmpgt_epi16.v.html../../../arch/x86/_mm_cmpgt_epi32.v.html../../../arch/x86/_mm_cmpgt_epi8.v.html../../../arch/x86/_mm_cmpgt_pd.v.html../../../arch/x86/_mm_cmpgt_sd.v.html../../../arch/x86/_mm_cmple_pd.v.html../../../arch/x86/_mm_cmple_sd.v.html../../../arch/x86/_mm_cmplt_epi16.v.html../../../arch/x86/_mm_cmplt_epi32.v.html../../../arch/x86/_mm_cmplt_epi8.v.html../../../arch/x86/_mm_cmplt_pd.v.html../../../arch/x86/_mm_cmplt_sd.v.html../../../arch/x86/_mm_cmpneq_pd.v.html../../../arch/x86/_mm_cmpneq_sd.v.html../../../arch/x86/_mm_cmpnge_pd.v.html../../../arch/x86/_mm_cmpnge_sd.v.html../../../arch/x86/_mm_cmpngt_pd.v.html../../../arch/x86/_mm_cmpngt_sd.v.html../../../arch/x86/_mm_cmpnle_pd.v.html../../../arch/x86/_mm_cmpnle_sd.v.html../../../arch/x86/_mm_cmpnlt_pd.v.html../../../arch/x86/_mm_cmpnlt_sd.v.html../../../arch/x86/_mm_cmpord_pd.v.html../../../arch/x86/_mm_cmpord_sd.v.html../../../arch/x86/_mm_cmpunord_pd.v.html../../../arch/x86/_mm_cmpunord_sd.v.html../../../arch/x86/_mm_comieq_sd.v.html../../../arch/x86/_mm_comige_sd.v.html../../../arch/x86/_mm_comigt_sd.v.html../../../arch/x86/_mm_comile_sd.v.html../../../arch/x86/_mm_comilt_sd.v.html../../../arch/x86/_mm_comineq_sd.v.html../../../arch/x86/_mm_cvtepi32_pd.v.html../../../arch/x86/_mm_cvtepi32_ps.v.html../../../arch/x86/_mm_cvtpd_epi32.v.html../../../arch/x86/_mm_cvtpd_pi32.v.html../../../arch/x86/_mm_cvtpd_ps.v.html../../../arch/x86/_mm_cvtpi32_pd.v.html../../../arch/x86/_mm_cvtps_epi32.v.html../../../arch/x86/_mm_cvtps_pd.v.html../../../arch/x86/_mm_cvtsd_f64.v.html../../../arch/x86/_mm_cvtsd_si32.v.html../../../arch/x86/_mm_cvtsd_ss.v.html../../../arch/x86/_mm_cvtsi128_si32.v.html../../../arch/x86/_mm_cvtsi32_sd.v.html../../../arch/x86/_mm_cvtsi32_si128.v.html../../../arch/x86/_mm_cvtss_sd.v.html../../../arch/x86/_mm_cvttpd_epi32.v.html../../../arch/x86/_mm_cvttpd_pi32.v.html../../../arch/x86/_mm_cvttps_epi32.v.html../../../arch/x86/_mm_cvttsd_si32.v.html../../../arch/x86/_mm_div_pd.v.html../../../arch/x86/_mm_div_sd.v.html../../../arch/x86/_mm_extract_epi16.v.html../../../arch/x86/_mm_insert_epi16.v.html../../../arch/x86/_mm_lfence.v.html../../../arch/x86/_mm_load1_pd.v.html../../../arch/x86/_mm_load_pd.v.html../../../arch/x86/_mm_load_pd1.v.html../../../arch/x86/_mm_load_sd.v.html../../../arch/x86/_mm_load_si128.v.html../../../arch/x86/_mm_loadh_pd.v.html../../../arch/x86/_mm_loadl_epi64.v.html../../../arch/x86/_mm_loadl_pd.v.html../../../arch/x86/_mm_loadr_pd.v.html../../../arch/x86/_mm_loadu_pd.v.html../../../arch/x86/_mm_loadu_si128.v.html../../../arch/x86/_mm_madd_epi16.v.html../../../arch/x86/_mm_maskmoveu_si128.v.html../../../arch/x86/_mm_max_epi16.v.html../../../arch/x86/_mm_max_epu8.v.html../../../arch/x86/_mm_max_pd.v.html../../../arch/x86/_mm_max_sd.v.html../../../arch/x86/_mm_mfence.v.html../../../arch/x86/_mm_min_epi16.v.html../../../arch/x86/_mm_min_epu8.v.html../../../arch/x86/_mm_min_pd.v.html../../../arch/x86/_mm_min_sd.v.html../../../arch/x86/_mm_move_epi64.v.html../../../arch/x86/_mm_move_sd.v.html../../../arch/x86/_mm_movemask_epi8.v.html../../../arch/x86/_mm_movemask_pd.v.html../../../arch/x86/_mm_movepi64_pi64.v.html../../../arch/x86/_mm_movpi64_epi64.v.html../../../arch/x86/_mm_mul_epu32.v.html../../../arch/x86/_mm_mul_pd.v.html../../../arch/x86/_mm_mul_sd.v.html../../../arch/x86/_mm_mul_su32.v.html../../../arch/x86/_mm_mulhi_epi16.v.html../../../arch/x86/_mm_mulhi_epu16.v.html../../../arch/x86/_mm_mullo_epi16.v.html../../../arch/x86/_mm_or_pd.v.html../../../arch/x86/_mm_or_si128.v.html../../../arch/x86/_mm_packs_epi16.v.html../../../arch/x86/_mm_packs_epi32.v.html../../../arch/x86/_mm_packus_epi16.v.html../../../arch/x86/_mm_pause.v.html../../../arch/x86/_mm_sad_epu8.v.html../../../arch/x86/_mm_set1_epi16.v.html../../../arch/x86/_mm_set1_epi32.v.html../../../arch/x86/_mm_set1_epi64.v.html../../../arch/x86/_mm_set1_epi64x.v.html../../../arch/x86/_mm_set1_epi8.v.html../../../arch/x86/_mm_set1_pd.v.html../../../arch/x86/_mm_set_epi16.v.html../../../arch/x86/_mm_set_epi32.v.html../../../arch/x86/_mm_set_epi64.v.html../../../arch/x86/_mm_set_epi64x.v.html../../../arch/x86/_mm_set_epi8.v.html../../../arch/x86/_mm_set_pd.v.html../../../arch/x86/_mm_set_pd1.v.html../../../arch/x86/_mm_set_sd.v.html../../../arch/x86/_mm_setr_epi16.v.html../../../arch/x86/_mm_setr_epi32.v.html../../../arch/x86/_mm_setr_epi64.v.html../../../arch/x86/_mm_setr_epi8.v.html../../../arch/x86/_mm_setr_pd.v.html../../../arch/x86/_mm_setzero_pd.v.html../../../arch/x86/_mm_setzero_si128.v.html../../../arch/x86/_mm_shuffle_epi32.v.html../../../arch/x86/_mm_shuffle_pd.v.html../../../arch/x86/_mm_shufflehi_epi16.v.html../../../arch/x86/_mm_shufflelo_epi16.v.html../../../arch/x86/_mm_sll_epi16.v.html../../../arch/x86/_mm_sll_epi32.v.html../../../arch/x86/_mm_sll_epi64.v.html../../../arch/x86/_mm_slli_epi16.v.html../../../arch/x86/_mm_slli_epi32.v.html../../../arch/x86/_mm_slli_epi64.v.html../../../arch/x86/_mm_slli_si128.v.html../../../arch/x86/_mm_sqrt_pd.v.html../../../arch/x86/_mm_sqrt_sd.v.html../../../arch/x86/_mm_sra_epi16.v.html../../../arch/x86/_mm_sra_epi32.v.html../../../arch/x86/_mm_srai_epi16.v.html../../../arch/x86/_mm_srai_epi32.v.html../../../arch/x86/_mm_srl_epi16.v.html../../../arch/x86/_mm_srl_epi32.v.html../../../arch/x86/_mm_srl_epi64.v.html../../../arch/x86/_mm_srli_epi16.v.html../../../arch/x86/_mm_srli_epi32.v.html../../../arch/x86/_mm_srli_epi64.v.html../../../arch/x86/_mm_srli_si128.v.html../../../arch/x86/_mm_store1_pd.v.html../../../arch/x86/_mm_store_pd.v.html../../../arch/x86/_mm_store_pd1.v.html../../../arch/x86/_mm_store_sd.v.html../../../arch/x86/_mm_store_si128.v.html../../../arch/x86/_mm_storeh_pd.v.html../../../arch/x86/_mm_storel_epi64.v.html../../../arch/x86/_mm_storel_pd.v.html../../../arch/x86/_mm_storer_pd.v.html../../../arch/x86/_mm_storeu_pd.v.html../../../arch/x86/_mm_storeu_si128.v.html../../../arch/x86/_mm_stream_pd.v.html../../../arch/x86/_mm_stream_si128.v.html../../../arch/x86/_mm_stream_si32.v.html../../../arch/x86/_mm_sub_epi16.v.html../../../arch/x86/_mm_sub_epi32.v.html../../../arch/x86/_mm_sub_epi64.v.html../../../arch/x86/_mm_sub_epi8.v.html../../../arch/x86/_mm_sub_pd.v.html../../../arch/x86/_mm_sub_sd.v.html../../../arch/x86/_mm_sub_si64.v.html../../../arch/x86/_mm_subs_epi16.v.html../../../arch/x86/_mm_subs_epi8.v.html../../../arch/x86/_mm_subs_epu16.v.html../../../arch/x86/_mm_subs_epu8.v.html../../../arch/x86/_mm_ucomieq_sd.v.html../../../arch/x86/_mm_ucomige_sd.v.html../../../arch/x86/_mm_ucomigt_sd.v.html../../../arch/x86/_mm_ucomile_sd.v.html../../../arch/x86/_mm_ucomilt_sd.v.html../../../arch/x86/_mm_ucomineq_sd.v.html../../../arch/x86/_mm_undefined_pd.v.html../../../arch/x86/_mm_undefined_si128.v.html../../../arch/x86/_mm_unpackhi_epi16.v.html../../../arch/x86/_mm_unpackhi_epi32.v.html../../../arch/x86/_mm_unpackhi_epi64.v.html../../../arch/x86/_mm_unpackhi_epi8.v.html../../../arch/x86/_mm_unpackhi_pd.v.html../../../arch/x86/_mm_unpacklo_epi16.v.html../../../arch/x86/_mm_unpacklo_epi32.v.html../../../arch/x86/_mm_unpacklo_epi64.v.html../../../arch/x86/_mm_unpacklo_epi8.v.html../../../arch/x86/_mm_unpacklo_pd.v.html../../../arch/x86/_mm_xor_pd.v.html../../../arch/x86/_mm_xor_si128.v.html../../../arch/x86/_mm_addsub_pd.v.html../../../arch/x86/_mm_addsub_ps.v.html../../../arch/x86/_mm_hadd_pd.v.html../../../arch/x86/_mm_hadd_ps.v.html../../../arch/x86/_mm_hsub_pd.v.html../../../arch/x86/_mm_hsub_ps.v.html../../../arch/x86/_mm_lddqu_si128.v.html../../../arch/x86/_mm_loaddup_pd.v.html../../../arch/x86/_mm_movedup_pd.v.html../../../arch/x86/_mm_movehdup_ps.v.html../../../arch/x86/_mm_moveldup_ps.v.html../../../arch/x86/_MM_FROUND_CEIL.v.html../../../arch/x86/_MM_FROUND_CUR_DIRECTION.v.html../../../arch/x86/_MM_FROUND_FLOOR.v.html../../../arch/x86/_MM_FROUND_NEARBYINT.v.html../../../arch/x86/_MM_FROUND_NINT.v.html../../../arch/x86/_MM_FROUND_NO_EXC.v.html../../../arch/x86/_MM_FROUND_RAISE_EXC.v.html../../../arch/x86/_MM_FROUND_RINT.v.html../../../arch/x86/_MM_FROUND_TO_NEAREST_INT.v.html../../../arch/x86/_MM_FROUND_TO_NEG_INF.v.html../../../arch/x86/_MM_FROUND_TO_POS_INF.v.html../../../arch/x86/_MM_FROUND_TO_ZERO.v.html../../../arch/x86/_MM_FROUND_TRUNC.v.html../../../arch/x86/_mm_blend_epi16.v.html../../../arch/x86/_mm_blend_pd.v.html../../../arch/x86/_mm_blend_ps.v.html../../../arch/x86/_mm_blendv_epi8.v.html../../../arch/x86/_mm_blendv_pd.v.html../../../arch/x86/_mm_blendv_ps.v.html../../../arch/x86/_mm_ceil_pd.v.html../../../arch/x86/_mm_ceil_ps.v.html../../../arch/x86/_mm_ceil_sd.v.html../../../arch/x86/_mm_ceil_ss.v.html../../../arch/x86/_mm_cmpeq_epi64.v.html../../../arch/x86/_mm_cvtepi16_epi32.v.html../../../arch/x86/_mm_cvtepi16_epi64.v.html../../../arch/x86/_mm_cvtepi32_epi64.v.html../../../arch/x86/_mm_cvtepi8_epi16.v.html../../../arch/x86/_mm_cvtepi8_epi32.v.html../../../arch/x86/_mm_cvtepi8_epi64.v.html../../../arch/x86/_mm_cvtepu16_epi32.v.html../../../arch/x86/_mm_cvtepu16_epi64.v.html../../../arch/x86/_mm_cvtepu32_epi64.v.html../../../arch/x86/_mm_cvtepu8_epi16.v.html../../../arch/x86/_mm_cvtepu8_epi32.v.html../../../arch/x86/_mm_cvtepu8_epi64.v.html../../../arch/x86/_mm_dp_pd.v.html../../../arch/x86/_mm_dp_ps.v.html../../../arch/x86/_mm_extract_epi32.v.html../../../arch/x86/_mm_extract_epi8.v.html../../../arch/x86/_mm_extract_ps.v.html../../../arch/x86/_mm_floor_pd.v.html../../../arch/x86/_mm_floor_ps.v.html../../../arch/x86/_mm_floor_sd.v.html../../../arch/x86/_mm_floor_ss.v.html../../../arch/x86/_mm_insert_epi32.v.html../../../arch/x86/_mm_insert_epi8.v.html../../../arch/x86/_mm_insert_ps.v.html../../../arch/x86/_mm_max_epi32.v.html../../../arch/x86/_mm_max_epi8.v.html../../../arch/x86/_mm_max_epu16.v.html../../../arch/x86/_mm_max_epu32.v.html../../../arch/x86/_mm_min_epi32.v.html../../../arch/x86/_mm_min_epi8.v.html../../../arch/x86/_mm_min_epu16.v.html../../../arch/x86/_mm_min_epu32.v.html../../../arch/x86/_mm_minpos_epu16.v.html../../../arch/x86/_mm_mpsadbw_epu8.v.html../../../arch/x86/_mm_mul_epi32.v.html../../../arch/x86/_mm_mullo_epi32.v.html../../../arch/x86/_mm_packus_epi32.v.html../../../arch/x86/_mm_round_pd.v.html../../../arch/x86/_mm_round_ps.v.html../../../arch/x86/_mm_round_sd.v.html../../../arch/x86/_mm_round_ss.v.html../../../arch/x86/_mm_test_all_ones.v.html../../../arch/x86/_mm_test_all_zeros.v.html../../../arch/x86/_mm_test_mix_ones_zeros.v.html../../../arch/x86/_mm_testc_si128.v.html../../../arch/x86/_mm_testnzc_si128.v.html../../../arch/x86/_mm_testz_si128.v.html../../../arch/x86/_SIDD_BIT_MASK.v.html../../../arch/x86/_SIDD_CMP_EQUAL_ANY.v.html../../../arch/x86/_SIDD_CMP_EQUAL_EACH.v.html../../../arch/x86/_SIDD_CMP_EQUAL_ORDERED.v.html../../../arch/x86/_SIDD_CMP_RANGES.v.html../../../arch/x86/_SIDD_LEAST_SIGNIFICANT.v.html../../../arch/x86/_SIDD_MASKED_NEGATIVE_POLARITY.v.html../../../arch/x86/_SIDD_MASKED_POSITIVE_POLARITY.v.html../../../arch/x86/_SIDD_MOST_SIGNIFICANT.v.html../../../arch/x86/_SIDD_NEGATIVE_POLARITY.v.html../../../arch/x86/_SIDD_POSITIVE_POLARITY.v.html../../../arch/x86/_SIDD_SBYTE_OPS.v.html../../../arch/x86/_SIDD_SWORD_OPS.v.html../../../arch/x86/_SIDD_UBYTE_OPS.v.html../../../arch/x86/_SIDD_UNIT_MASK.v.html../../../arch/x86/_SIDD_UWORD_OPS.v.html../../../arch/x86/_mm_cmpestra.v.html../../../arch/x86/_mm_cmpestrc.v.html../../../arch/x86/_mm_cmpestri.v.html../../../arch/x86/_mm_cmpestrm.v.html../../../arch/x86/_mm_cmpestro.v.html../../../arch/x86/_mm_cmpestrs.v.html../../../arch/x86/_mm_cmpestrz.v.html../../../arch/x86/_mm_cmpgt_epi64.v.html../../../arch/x86/_mm_cmpistra.v.html../../../arch/x86/_mm_cmpistrc.v.html../../../arch/x86/_mm_cmpistri.v.html../../../arch/x86/_mm_cmpistrm.v.html../../../arch/x86/_mm_cmpistro.v.html../../../arch/x86/_mm_cmpistrs.v.html../../../arch/x86/_mm_cmpistrz.v.html../../../arch/x86/_mm_crc32_u16.v.html../../../arch/x86/_mm_crc32_u32.v.html../../../arch/x86/_mm_crc32_u8.v.html../../../arch/x86/_mm_extract_si64.v.html../../../arch/x86/_mm_insert_si64.v.html../../../arch/x86/_mm_stream_sd.v.html../../../arch/x86/_mm_stream_ss.v.html../../../arch/x86/_mm_abs_epi16.v.html../../../arch/x86/_mm_abs_epi32.v.html../../../arch/x86/_mm_abs_epi8.v.html../../../arch/x86/_mm_abs_pi16.v.html../../../arch/x86/_mm_abs_pi32.v.html../../../arch/x86/_mm_abs_pi8.v.html../../../arch/x86/_mm_alignr_epi8.v.html../../../arch/x86/_mm_alignr_pi8.v.html../../../arch/x86/_mm_hadd_epi16.v.html../../../arch/x86/_mm_hadd_epi32.v.html../../../arch/x86/_mm_hadd_pi16.v.html../../../arch/x86/_mm_hadd_pi32.v.html../../../arch/x86/_mm_hadds_epi16.v.html../../../arch/x86/_mm_hadds_pi16.v.html../../../arch/x86/_mm_hsub_epi16.v.html../../../arch/x86/_mm_hsub_epi32.v.html../../../arch/x86/_mm_hsub_pi16.v.html../../../arch/x86/_mm_hsub_pi32.v.html../../../arch/x86/_mm_hsubs_epi16.v.html../../../arch/x86/_mm_hsubs_pi16.v.html../../../arch/x86/_mm_maddubs_epi16.v.html../../../arch/x86/_mm_maddubs_pi16.v.html../../../arch/x86/_mm_mulhrs_epi16.v.html../../../arch/x86/_mm_mulhrs_pi16.v.html../../../arch/x86/_mm_shuffle_epi8.v.html../../../arch/x86/_mm_shuffle_pi8.v.html../../../arch/x86/_mm_sign_epi16.v.html../../../arch/x86/_mm_sign_epi32.v.html../../../arch/x86/_mm_sign_epi8.v.html../../../arch/x86/_mm_sign_pi16.v.html../../../arch/x86/_mm_sign_pi32.v.html../../../arch/x86/_mm_sign_pi8.v.html../../../arch/x86/_blcfill_u32.v.html../../../arch/x86/_blcfill_u64.v.html../../../arch/x86/_blci_u32.v.html../../../arch/x86/_blci_u64.v.html../../../arch/x86/_blcic_u32.v.html../../../arch/x86/_blcic_u64.v.html../../../arch/x86/_blcmsk_u32.v.html../../../arch/x86/_blcmsk_u64.v.html../../../arch/x86/_blcs_u32.v.html../../../arch/x86/_blcs_u64.v.html../../../arch/x86/_blsfill_u32.v.html../../../arch/x86/_blsfill_u64.v.html../../../arch/x86/_blsic_u32.v.html../../../arch/x86/_blsic_u64.v.html../../../arch/x86/_t1mskc_u32.v.html../../../arch/x86/_t1mskc_u64.v.html../../../arch/x86/_tzmsk_u32.v.html../../../arch/x86/_tzmsk_u64.v.html../../arch/x86/ud2.v.html../../../arch/x86/_XCR_XFEATURE_ENABLED_MASK.v.html../../../arch/x86/_xgetbv.v.html../../../arch/x86/_xrstor.v.html../../../arch/x86/_xrstors.v.html../../../arch/x86/_xsave.v.html../../../arch/x86/_xsavec.v.html../../../arch/x86/_xsaveopt.v.html../../../arch/x86/_xsaves.v.html../../../arch/x86/_xsetbv.v.html../../../arch/x86_64/_lzcnt_u64.v.html../../../arch/x86_64/_popcnt64.v.html../../../arch/x86_64/_addcarry_u64.v.html../../../arch/x86_64/_addcarryx_u64.v.html../../../arch/x86_64/_subborrow_u64.v.html../../../arch/x86_64/_mm256_insert_epi64.v.html../../../arch/x86_64/_mm256_extract_epi64.v.html../../../arch/x86_64/_andn_u64.v.html../../../arch/x86_64/_bextr2_u64.v.html../../../arch/x86_64/_bextr_u64.v.html../../../arch/x86_64/_blsi_u64.v.html../../../arch/x86_64/_blsmsk_u64.v.html../../../arch/x86_64/_blsr_u64.v.html../../../arch/x86_64/_mm_tzcnt_64.v.html../../../arch/x86_64/_tzcnt_u64.v.html../../../arch/x86_64/_bzhi_u64.v.html../../../arch/x86_64/_mulx_u64.v.html../../../arch/x86_64/_pdep_u64.v.html../../../arch/x86_64/_pext_u64.v.html../../../arch/x86_64/_bswap64.v.html../../../arch/x86_64/_bittest64.v.html../../../arch/x86_64/_bittestandcomplement64.v.html../../../arch/x86_64/_bittestandreset64.v.html../../../arch/x86_64/_bittestandset64.v.html../../../arch/x86_64/cmpxchg16b.v.html../../../arch/x86_64/_fxrstor64.v.html../../../arch/x86_64/_fxsave64.v.html../../../arch/x86_64/_rdrand64_step.v.html../../../arch/x86_64/_rdseed64_step.v.html../../../arch/x86_64/_mm_cvtsi64_ss.v.html../../../arch/x86_64/_mm_cvtss_si64.v.html../../../arch/x86_64/_mm_cvttss_si64.v.html../../../arch/x86_64/_mm_cvtsd_si64.v.html../../../arch/x86_64/_mm_cvtsd_si64x.v.html../../../arch/x86_64/_mm_cvtsi128_si64.v.html../../../arch/x86_64/_mm_cvtsi128_si64x.v.html../../../arch/x86_64/_mm_cvtsi64_sd.v.html../../../arch/x86_64/_mm_cvtsi64_si128.v.html../../../arch/x86_64/_mm_cvtsi64x_sd.v.html../../../arch/x86_64/_mm_cvtsi64x_si128.v.html../../../arch/x86_64/_mm_cvttsd_si64.v.html../../../arch/x86_64/_mm_cvttsd_si64x.v.html../../../arch/x86_64/_mm_stream_si64.v.html../../../arch/x86_64/_mm_extract_epi64.v.html../../../arch/x86_64/_mm_insert_epi64.v.html../../../arch/x86_64/_mm_crc32_u64.v.html../../../arch/x86_64/_xrstor64.v.html../../../arch/x86_64/_xrstors64.v.html../../../arch/x86_64/_xsave64.v.html../../../arch/x86_64/_xsavec64.v.html../../../arch/x86_64/_xsaveopt64.v.html../../../arch/x86_64/_xsaves64.v.html../char/MAX.v.html../f32/DIGITS.v.html../f32/EPSILON.v.html../f32/INFINITY.v.html../f32/MANTISSA_DIGITS.v.html../char/MAX.v.html../f32/MAX_10_EXP.v.html../f32/MAX_EXP.v.html../f32/MIN.v.html../f32/MIN_10_EXP.v.html../f32/MIN_EXP.v.html../f32/MIN_POSITIVE.v.html../f32/NAN.v.html../f32/NEG_INFINITY.v.html../f32/RADIX.v.html../../f32/consts/E.v.html../../f32/consts/FRAC_1_PI.v.html../../f32/consts/FRAC_1_SQRT_2.v.html../../f32/consts/FRAC_2_PI.v.html../../f32/consts/FRAC_2_SQRT_PI.v.html../../f32/consts/FRAC_PI_2.v.html../../f32/consts/FRAC_PI_3.v.html../../f32/consts/FRAC_PI_4.v.html../../f32/consts/FRAC_PI_6.v.html../../f32/consts/FRAC_PI_8.v.html../../f32/consts/LN_10.v.html../../f32/consts/LN_2.v.html../../f32/consts/LOG10_2.v.html../../f32/consts/LOG10_E.v.html../../f32/consts/LOG2_10.v.html../../f32/consts/LOG2_E.v.html../../f32/consts/PI.v.html../../f32/consts/SQRT_2.v.html../../f32/consts/TAU.v.html../../f32/consts/sidebar-items.js../../alloc/fmt/Alignment.t.html../../alloc/fmt/Arguments.t.html../../alloc/fmt/Binary.t.html../../alloc/fmt/Debug.m.html../../alloc/fmt/Debug.t.html../../alloc/fmt/DebugList.t.html../../alloc/fmt/DebugMap.t.html../../alloc/fmt/DebugSet.t.html../../alloc/fmt/DebugStruct.t.html../../alloc/fmt/DebugTuple.t.html../../alloc/fmt/Display.t.html../../alloc/fmt/Error.t.html../../alloc/fmt/Formatter.t.html../../alloc/fmt/LowerExp.t.html../../alloc/fmt/LowerHex.t.html../../alloc/fmt/Octal.t.html../../alloc/fmt/Pointer.t.html../../alloc/fmt/Result.t.html../../alloc/fmt/UpperExp.t.html../../alloc/fmt/UpperHex.t.html../../alloc/fmt/Write.t.html../../../alloc/fmt/DebugList.t.html../../../alloc/fmt/DebugMap.t.html../../../alloc/fmt/DebugSet.t.html../../../alloc/fmt/DebugStruct.t.html../../../alloc/fmt/DebugTuple.t.html../../alloc/fmt/Debug.m.html../../alloc/fmt/write.v.html../Future.t.html../Hash.m.html../Hash.m.html../SipHasher.t.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../any/type_name.v.html../arch/wasm32/unreachable.v.html../char/MAX.v.html../f32/MIN.v.html../Cloned.t.html../Copied.t.html../Cycle.t.html../Enumerate.t.html../Filter.t.html../FilterMap.t.html../Fuse.t.html../Inspect.t.html../Map.t.html../MapWhile.t.html../Peekable.t.html../Rev.t.html../Scan.t.html../Skip.t.html../SkipWhile.t.html../StepBy.t.html../Take.t.html../TakeWhile.t.html../../Chain.t.html../../FlatMap.t.html../../Flatten.t.html../../Zip.t.html../Step.t.html../Empty.t.html../FromFn.t.html../Once.t.html../OnceWith.t.html../Repeat.t.html../RepeatWith.t.html../Successors.t.html../empty.v.html../from_fn.v.html../once.v.html../once_with.v.html../repeat.v.html../repeat_with.v.htmlsources/successors.v.html../../Product.t.html../../Sum.t.html../../Extend.t.html../../FromIterator.t.html../../IntoIterator.t.html../../DoubleEndedIterator.t.html../../ExactSizeIterator.t.html../../Iterator.t.html../../FusedIterator.t.html../../TrustedLen.t.htmlClone.m.htmlCopy.m.html../alloc/fmt/Debug.m.htmlDefault.m.htmlEq.m.htmlHash.m.htmlOrd.m.htmlPartialEq.m.htmlPartialOrd.m.htmlRustcDecodable.m.htmlRustcEncodable.m.htmlasm.m.htmlassert.m.htmlassert_eq.m.htmlassert_ne.m.htmlbench.m.htmlcfg.m.htmlcolumn.m.htmlcompile_error.m.htmlconcat.m.htmlconcat_idents.m.htmldebug_assert.m.htmldebug_assert_eq.m.htmldebug_assert_ne.m.htmlenv.m.htmlfile.m.htmlformat_args.m.htmlformat_args_nl.m.htmlglobal_allocator.m.htmlglobal_asm.m.htmlinclude.m.htmlinclude_bytes.m.htmlinclude_str.m.htmlline.m.htmllog_syntax.m.htmlmacro.matches!.html../intrinsics/forget.v.html../ManuallyDrop.t.html../MaybeUninit.t.html../intrinsics/min_align_of.v.html../intrinsics/min_align_of_val.v.html../intrinsics/needs_drop.v.html../intrinsics/size_of.v.html../intrinsics/size_of_val.v.html../intrinsics/transmute.v.htmlmacro.module_path!.html../ParseFloatError.t.html../../alloc/collections/btree/map/Range.t.html../Add.t.html../AddAssign.t.html../Div.t.html../DivAssign.t.html../Mul.t.html../MulAssign.t.html../Neg.t.html../Rem.t.html../RemAssign.t.html../Sub.t.html../SubAssign.t.html../BitAnd.t.html../BitAndAssign.t.html../BitOr.t.html../BitOrAssign.t.html../BitXor.t.html../BitXorAssign.t.html../Not.t.html../Shl.t.html../ShlAssign.t.html../Shr.t.html../ShrAssign.t.html../Deref.t.html../DerefMut.t.html../Drop.t.html../Fn.t.html../FnMut.t.html../FnOnce.t.html../Generator.t.html../GeneratorState.t.html../Index.t.html../IndexMut.t.html../Bound.t.html../../../alloc/collections/btree/map/Range.t.html../RangeBounds.t.html../RangeFrom.t.html../RangeFull.t.html../RangeInclusive.t.html../RangeTo.t.html../RangeToInclusive.t.html../Try.t.html../CoerceUnsized.t.html../DispatchFromDyn.t.html../../alloc/collections/binary_heap/IntoIter.t.html../../alloc/collections/binary_heap/Iter.t.html../../alloc/collections/btree/map/IterMut.t.htmlmacro.option_env!.htmlmacro.panic!.html../../../alloc/prelude/v1/sidebar-items.js../../alloc/prelude/v1/sidebar-items.js../NonNull.t.html../mem/replace.v.html../mem/swap.v.html../../alloc/fmt/write.v.html../../alloc/collections/binary_heap/IntoIter.t.html../../alloc/collections/binary_heap/Iter.t.html../../alloc/collections/btree/map/IterMut.t.html../../alloc/slice/Chunks.t.html../../alloc/slice/ChunksExact.t.html../../alloc/slice/ChunksExactMut.t.html../../alloc/slice/ChunksMut.t.html../../alloc/collections/binary_heap/Iter.t.html../../alloc/collections/btree/map/IterMut.t.html../../alloc/slice/RChunks.t.html../../alloc/slice/RChunksExact.t.html../../alloc/slice/RChunksExactMut.t.html../../alloc/slice/RChunksMut.t.html../../alloc/slice/RSplit.t.html../../alloc/slice/RSplitMut.t.html../../alloc/slice/RSplitN.t.html../../alloc/slice/RSplitNMut.t.html../../alloc/slice/SliceIndex.t.html../../alloc/slice/Split.t.html../../alloc/slice/SplitMut.t.html../../alloc/slice/SplitN.t.html../../alloc/slice/SplitNMut.t.html../../alloc/slice/Windows.t.html../../alloc/slice/from_mut.v.html../../alloc/slice/from_raw_parts.v.html../../alloc/slice/from_raw_parts_mut.v.html../../alloc/slice/from_ref.v.html../../alloc/str/Bytes.t.html../../alloc/str/CharIndices.t.html../../alloc/str/Chars.t.html../../alloc/str/EncodeUtf16.t.html../../alloc/str/EscapeDebug.t.html../../alloc/str/EscapeDefault.t.html../../alloc/str/EscapeUnicode.t.html../../alloc/str/FromStr.t.html../../alloc/str/Lines.t.html../../alloc/str/LinesAny.t.html../../alloc/str/MatchIndices.t.html../../alloc/str/Matches.t.html../../alloc/str/ParseBoolError.t.html../../alloc/str/RMatchIndices.t.html../../alloc/str/RMatches.t.html../../alloc/slice/RSplit.t.html../../alloc/slice/RSplitN.t.html../../alloc/str/RSplitTerminator.t.html../../alloc/slice/Split.t.html../../alloc/str/SplitAsciiWhitespace.t.html../slice/SplitInclusive.t.html../../alloc/slice/SplitN.t.html../../alloc/str/SplitTerminator.t.html../../alloc/str/SplitWhitespace.t.html../../alloc/str/Utf8Error.t.html../../alloc/str/from_utf8.v.html../../alloc/str/from_utf8_mut.v.html../../alloc/str/from_utf8_unchecked.v.html../../alloc/str/from_utf8_unchecked_mut.v.html../../../alloc/str/pattern/CharPredicateSearcher.t.html../../../alloc/str/pattern/CharSearcher.t.html../../../alloc/str/pattern/CharSliceSearcher.t.html../../../alloc/str/pattern/DoubleEndedSearcher.t.html../../../alloc/str/pattern/Pattern.t.html../../../alloc/str/pattern/ReverseSearcher.t.html../../../alloc/str/pattern/SearchStep.t.html../../../alloc/str/pattern/Searcher.t.html../../../alloc/str/pattern/StrSearcher.t.html../../../alloc/str/pattern/sidebar-items.jsmacro.stringify!.html../../cmp/Ordering.t.html../Poll.t.html../Context.t.html../RawWaker.t.html../RawWakerVTable.t.html../Waker.t.htmlmacro.test!.htmlmacro.test_case!.htmlmacro.todo!.htmlmacro.trace_macros!.htmlmacro.try!.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../char/MAX.v.html../f32/MIN.v.html../Case_Ignorable.v.html../Cased.v.html../alphabetic/lookup.v.html../alphabetic/lookup.v.html../alphabetic/lookup.v.html../../conversions/to_lower.v.html../../conversions/to_upper.v.html../alphabetic/lookup.v.html../alphabetic/lookup.v.html../alphabetic/lookup.v.html../alphabetic/lookup.v.html../alphabetic/lookup.v.html../../char/UnicodeVersion.t.htmlmacro.unimplemented!.htmlmacro.unreachable!.html../char/MAX.v.html../f32/MIN.v.htmlmacro.write!.htmlmacro.writeln!.html../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../borrow/trait.ToOwned.js../../borrow/trait.ToOwned.js../../borrow/trait.ToOwned.js../../borrow/trait.ToOwned.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../../any/trait.Any.js../../any/trait.Any.js../../any/trait.Any.js../../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../../../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../any/trait.Any.js../../any/trait.Any.js../../any/trait.Any.js../../any/trait.Any.js../../any/trait.Any.js../any/trait.Any.js../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../Diagnostic.t.html../Level.t.html../MultiSpan.t.htmlmacro.quote!.html../quote.v.htmlquote/quote_span.v.html../../alloc/collections/binary_heap/IntoIter.t.html../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.css../../alloc/alloc/AllocErr.t.html../../alloc/alloc/AllocRef.t.html../../alloc/alloc/CannotReallocInPlace.t.html../../alloc/alloc/Global.t.html../../alloc/alloc/GlobalAlloc.t.html../../alloc/alloc/Layout.t.html../../alloc/alloc/LayoutErr.t.html../../alloc/alloc/alloc.v.html../../alloc/alloc/alloc_zeroed.v.html../../alloc/alloc/dealloc.v.html../../alloc/alloc/handle_alloc_error.v.html../../alloc/alloc/realloc.v.html../../core/any/Any.t.html../../core/any/TypeId.t.html../../core/any/sidebar-items.js../../core/any/type_name.v.html../../core/any/type_name_of_val.v.html../../core/array/FixedSizeArray.t.html../../alloc/collections/binary_heap/IntoIter.t.html../../core/array/LengthAtMost32.t.html../../core/array/TryFromSliceError.t.html../../core/array/sidebar-items.js../../alloc/str/EscapeDefault.t.html../../core/ascii/escape_default.v.html../core/asm.m.html../core/assert.m.html../core/assert_eq.m.html../core/assert_ne.m.html../../alloc/borrow/Borrow.t.html../../alloc/borrow/BorrowMut.t.html../../alloc/borrow/Cow.t.html../../alloc/borrow/ToOwned.t.html../../alloc/borrow/sidebar-items.js../../alloc/boxed/Box.t.html../../alloc/boxed/sidebar-items.js../../core/cell/BorrowError.t.html../../core/cell/BorrowMutError.t.html../../core/cell/Cell.t.html../../core/cell/Ref.t.html../../core/cell/RefCell.t.html../../core/cell/RefMut.t.html../../core/cell/UnsafeCell.t.html../../core/cell/sidebar-items.js../core/cfg.m.html../../core/char/CharTryFromError.t.html../../core/char/DecodeUtf16.t.html../../core/char/DecodeUtf16Error.t.html../../alloc/str/EscapeDebug.t.html../../alloc/str/EscapeDefault.t.html../../alloc/str/EscapeUnicode.t.html../../core/char/MAX.v.html../../core/char/ParseCharError.t.html../../core/char/REPLACEMENT_CHARACTER.v.html../../core/char/ToLowercase.t.html../../core/char/ToUppercase.t.html../../core/unicode/UNICODE_VERSION.v.html../../core/char/UnicodeVersion.t.html../../core/char/decode/decode_utf16.v.html../../core/char/convert/from_digit.v.html../../core/char/convert/from_u32.v.html../../core/char/convert/from_u32_unchecked.v.html../../core/Clone.m.html../../core/clone/Clone.t.html../../core/Clone.m.html../../core/Eq.m.html../../core/cmp/Eq.t.html../../core/Ord.m.html../../core/cmp/Ord.t.html../../core/cmp/Ordering.t.html../../core/PartialEq.m.html../../core/cmp/PartialEq.t.html../../core/PartialOrd.m.html../../core/cmp/PartialOrd.t.html../../core/cmp/Reverse.t.html../../core/Eq.m.html../../core/Ord.m.html../../core/PartialEq.m.html../../core/PartialOrd.m.html../../core/cmp/max.v.html../../core/cmp/max_by.v.html../../core/cmp/max_by_key.v.html../../core/cmp/min.v.html../../core/cmp/min_by.v.html../../core/cmp/min_by_key.v.html../../alloc/collections/btree/map/BTreeMap.t.html../../alloc/collections/btree/set/BTreeSet.t.html../../alloc/collections/binary_heap/BinaryHeap.t.html../../alloc/collections/linked_list/LinkedList.t.html../../alloc/collections/TryReserveError.t.html../../alloc/collections/vec_deque/VecDeque.t.html../../../alloc/collections/binary_heap/BinaryHeap.t.html../../../alloc/collections/binary_heap/Drain.t.html../../../alloc/collections/binary_heap/DrainSorted.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/IntoIterSorted.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/binary_heap/PeekMut.t.html../../../alloc/collections/binary_heap/sidebar-items.js../../../alloc/collections/btree/map/BTreeMap.t.html../../../alloc/collections/btree/map/Entry.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/btree/map/IterMut.t.html../../../alloc/collections/btree/map/Keys.t.html../../../alloc/collections/btree/map/OccupiedEntry.t.html../../../alloc/collections/btree/map/Range.t.html../../../alloc/collections/btree/map/RangeMut.t.html../../../alloc/collections/btree/map/VacantEntry.t.html../../../alloc/collections/btree/map/Values.t.html../../../alloc/collections/btree/map/ValuesMut.t.html../../../alloc/collections/btree_map/sidebar-items.js../../../alloc/collections/btree/set/BTreeSet.t.html../../../alloc/collections/btree/set/Difference.t.html../../../alloc/collections/btree/set/Intersection.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/btree/map/Range.t.html../../../alloc/collections/btree/set/SymmetricDifference.t.html../../../alloc/collections/btree/set/Union.t.html../../../alloc/collections/btree_set/sidebar-items.js../../../../alloc/collections/binary_heap/Drain.t.html../../../../alloc/collections/btree/map/Entry.t.html../../HashMap.t.html../../../../alloc/collections/binary_heap/IntoIter.t.html../../../../alloc/collections/binary_heap/Iter.t.html../../../../alloc/collections/btree/map/IterMut.t.html../../../../alloc/collections/btree/map/Keys.t.html../../../../alloc/collections/btree/map/OccupiedEntry.t.html../../../../alloc/collections/btree/map/VacantEntry.t.html../../../../alloc/collections/btree/map/Values.t.html../../../../alloc/collections/btree/map/ValuesMut.t.html../../../../alloc/collections/btree/set/Difference.t.html../../../../alloc/collections/binary_heap/Drain.t.html../../HashSet.t.html../../../../alloc/collections/btree/set/Intersection.t.html../../../../alloc/collections/binary_heap/IntoIter.t.html../../../../alloc/collections/binary_heap/Iter.t.html../../../../alloc/collections/btree/set/SymmetricDifference.t.html../../../../alloc/collections/btree/set/Union.t.html../hash/map/DefaultHasher.t.html../../../alloc/collections/binary_heap/Drain.t.html../../../alloc/collections/btree/map/Entry.t.html../HashMap.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/btree/map/IterMut.t.html../../../alloc/collections/btree/map/Keys.t.html../../../alloc/collections/btree/map/OccupiedEntry.t.html../hash/map/RandomState.t.html../hash/map/RawEntryBuilder.t.html../hash/map/RawEntryBuilderMut.t.html../hash/map/RawEntryMut.t.html../hash/map/RawOccupiedEntryMut.t.html../hash/map/RawVacantEntryMut.t.html../../../alloc/collections/btree/map/VacantEntry.t.html../../../alloc/collections/btree/map/Values.t.html../../../alloc/collections/btree/map/ValuesMut.t.html../../../alloc/collections/btree/set/Difference.t.html../../../alloc/collections/binary_heap/Drain.t.html../HashSet.t.html../../../alloc/collections/btree/set/Intersection.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/btree/set/SymmetricDifference.t.html../../../alloc/collections/btree/set/Union.t.html../../../alloc/collections/linked_list/Cursor.t.html../../../alloc/collections/linked_list/CursorMut.t.html../../../alloc/collections/linked_list/DrainFilter.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/btree/map/IterMut.t.html../../../alloc/collections/linked_list/LinkedList.t.html../../../alloc/collections/linked_list/sidebar-items.js../../../alloc/collections/binary_heap/Drain.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../../../alloc/collections/btree/map/IterMut.t.html../../../alloc/collections/vec_deque/VecDeque.t.html../../../alloc/collections/vec_deque/sidebar-items.js../core/column.m.html../core/compile_error.m.html../core/concat.m.html../core/concat_idents.m.html../../core/convert/AsMut.t.html../../core/convert/AsRef.t.html../../core/convert/FloatToInt.t.html../../core/convert/From.t.html../../core/convert/Infallible.t.html../../core/convert/Into.t.html../../core/convert/TryFrom.t.html../../core/convert/TryInto.t.html../../core/convert/identity.v.html../../core/convert/sidebar-items.js../core/debug_assert.m.html../core/debug_assert_eq.m.html../core/debug_assert_ne.m.html../../core/Default.m.html../../core/default/Default.t.html../../core/Default.m.html../core/env.m.html../../core/iter/Chain.t.html../../core/f32/DIGITS.v.html../../core/f32/EPSILON.v.html../../core/f32/INFINITY.v.html../../core/f32/MANTISSA_DIGITS.v.html../../core/char/MAX.v.html../../core/f32/MAX_10_EXP.v.html../../core/f32/MAX_EXP.v.html../../core/f32/MIN.v.html../../core/f32/MIN_10_EXP.v.html../../core/f32/MIN_EXP.v.html../../core/f32/MIN_POSITIVE.v.html../../core/f32/NAN.v.html../../core/f32/NEG_INFINITY.v.html../../core/f32/RADIX.v.html../../../core/f32/consts/E.v.html../../../core/f32/consts/FRAC_1_PI.v.html../../../core/f32/consts/FRAC_1_SQRT_2.v.html../../../core/f32/consts/FRAC_2_PI.v.html../../../core/f32/consts/FRAC_2_SQRT_PI.v.html../../../core/f32/consts/FRAC_PI_2.v.html../../../core/f32/consts/FRAC_PI_3.v.html../../../core/f32/consts/FRAC_PI_4.v.html../../../core/f32/consts/FRAC_PI_6.v.html../../../core/f32/consts/FRAC_PI_8.v.html../../../core/f32/consts/LN_10.v.html../../../core/f32/consts/LN_2.v.html../../../core/f32/consts/LOG10_2.v.html../../../core/f32/consts/LOG10_E.v.html../../../core/f32/consts/LOG2_10.v.html../../../core/f32/consts/LOG2_E.v.html../../../core/f32/consts/PI.v.html../../../core/f32/consts/SQRT_2.v.html../../../core/f32/consts/TAU.v.html../../../core/f32/consts/sidebar-items.js../../core/f32/sidebar-items.js../../core/f32/DIGITS.v.html../../core/f32/EPSILON.v.html../../core/f32/INFINITY.v.html../../core/f32/MANTISSA_DIGITS.v.html../../core/char/MAX.v.html../../core/f32/MAX_10_EXP.v.html../../core/f32/MAX_EXP.v.html../../core/f32/MIN.v.html../../core/f32/MIN_10_EXP.v.html../../core/f32/MIN_EXP.v.html../../core/f32/MIN_POSITIVE.v.html../../core/f32/NAN.v.html../../core/f32/NEG_INFINITY.v.html../../core/f32/RADIX.v.html../../../core/f32/consts/E.v.html../../../core/f32/consts/FRAC_1_PI.v.html../../../core/f32/consts/FRAC_1_SQRT_2.v.html../../../core/f32/consts/FRAC_2_PI.v.html../../../core/f32/consts/FRAC_2_SQRT_PI.v.html../../../core/f32/consts/FRAC_PI_2.v.html../../../core/f32/consts/FRAC_PI_3.v.html../../../core/f32/consts/FRAC_PI_4.v.html../../../core/f32/consts/FRAC_PI_6.v.html../../../core/f32/consts/FRAC_PI_8.v.html../../../core/f32/consts/LN_10.v.html../../../core/f32/consts/LN_2.v.html../../../core/f32/consts/LOG10_2.v.html../../../core/f32/consts/LOG10_E.v.html../../../core/f32/consts/LOG2_10.v.html../../../core/f32/consts/LOG2_E.v.html../../../core/f32/consts/PI.v.html../../../core/f32/consts/SQRT_2.v.html../../../core/f32/consts/TAU.v.html../../../core/f32/consts/sidebar-items.js../../core/f64/sidebar-items.js../../core/ffi/VaList.t.html../../core/ffi/VaListImpl.t.html../CStr.t.html../CString.t.html../FromBytesWithNulError.t.html../IntoStringError.t.html../NulError.t.html../../core/ffi/c_void.t.html../OsStr.t.html../OsString.t.html../core/file.m.html../../alloc/fmt/Alignment.t.html../../alloc/fmt/Arguments.t.html../../alloc/fmt/Binary.t.html../../alloc/fmt/Debug.m.html../../alloc/fmt/Debug.t.html../../alloc/fmt/DebugList.t.html../../alloc/fmt/DebugMap.t.html../../alloc/fmt/DebugSet.t.html../../alloc/fmt/DebugStruct.t.html../../alloc/fmt/DebugTuple.t.html../../alloc/fmt/Display.t.html../../alloc/fmt/Error.t.html../../alloc/fmt/Formatter.t.html../../alloc/fmt/LowerExp.t.html../../alloc/fmt/LowerHex.t.html../../alloc/fmt/Octal.t.html../../alloc/fmt/Pointer.t.html../../alloc/fmt/Result.t.html../../alloc/fmt/UpperExp.t.html../../alloc/fmt/UpperHex.t.html../../alloc/fmt/Write.t.html../../alloc/fmt/format.v.html../../alloc/fmt/Debug.m.html../../alloc/fmt/sidebar-items.js../../alloc/fmt/write.v.html../alloc/format.m.html../core/format_args.m.html../core/format_args_nl.m.html../../core/intrinsics/copy.v.html../../core/ptr/read.v.html../../alloc/fmt/write.v.html../../core/future/Future.t.html../../core/future/sidebar-items.js../core/global_asm.m.html../../core/hash/BuildHasher.t.html../../core/hash/BuildHasherDefault.t.html../../core/Hash.m.html../../core/hash/Hash.t.html../../core/hash/Hasher.t.html../../core/hash/SipHasher.t.html../../core/Hash.m.html../../core/hash/sidebar-items.js../../core/hint/black_box.v.html../../core/hint/sidebar-items.js../../core/hint/spin_loop.v.html../../core/hint/unreachable_unchecked.v.html../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/i128/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/i16/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/i32/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/i64/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/i8/sidebar-items.js../core/include.m.html../core/include_bytes.m.html../core/include_str.m.html../../core/intrinsics/abort.v.html../../core/intrinsics/add_with_overflow.v.html../../core/intrinsics/arith_offset.v.html../../core/intrinsics/assume.v.html../../core/intrinsics/atomic_and.v.html../../core/intrinsics/atomic_and_acq.v.html../../core/intrinsics/atomic_and_acqrel.v.html../../core/intrinsics/atomic_and_rel.v.html../../core/intrinsics/atomic_and_relaxed.v.html../../core/intrinsics/atomic_cxchg.v.html../../core/intrinsics/atomic_cxchg_acq.v.html../../core/intrinsics/atomic_cxchg_acq_failrelaxed.v.html../../core/intrinsics/atomic_cxchg_acqrel.v.html../../core/intrinsics/atomic_cxchg_acqrel_failrelaxed.v.html../../core/intrinsics/atomic_cxchg_failacq.v.html../../core/intrinsics/atomic_cxchg_failrelaxed.v.html../../core/intrinsics/atomic_cxchg_rel.v.html../../core/intrinsics/atomic_cxchg_relaxed.v.html../../core/intrinsics/atomic_cxchgweak.v.html../../core/intrinsics/atomic_cxchgweak_acq.v.html../../core/intrinsics/atomic_cxchgweak_acq_failrelaxed.v.html../../core/intrinsics/atomic_cxchgweak_acqrel.v.html../../core/intrinsics/atomic_cxchgweak_acqrel_failrelaxed.v.html../../core/intrinsics/atomic_cxchgweak_failacq.v.html../../core/intrinsics/atomic_cxchgweak_failrelaxed.v.html../../core/intrinsics/atomic_cxchgweak_rel.v.html../../core/intrinsics/atomic_cxchgweak_relaxed.v.html../../core/intrinsics/atomic_fence.v.html../../core/intrinsics/atomic_fence_acq.v.html../../core/intrinsics/atomic_fence_acqrel.v.html../../core/intrinsics/atomic_fence_rel.v.html../../core/intrinsics/atomic_load.v.html../../core/intrinsics/atomic_load_acq.v.html../../core/intrinsics/atomic_load_relaxed.v.html../../core/intrinsics/atomic_load_unordered.v.html../../core/intrinsics/atomic_max.v.html../../core/intrinsics/atomic_max_acq.v.html../../core/intrinsics/atomic_max_acqrel.v.html../../core/intrinsics/atomic_max_rel.v.html../../core/intrinsics/atomic_max_relaxed.v.html../../core/intrinsics/atomic_min.v.html../../core/intrinsics/atomic_min_acq.v.html../../core/intrinsics/atomic_min_acqrel.v.html../../core/intrinsics/atomic_min_rel.v.html../../core/intrinsics/atomic_min_relaxed.v.html../../core/intrinsics/atomic_nand.v.html../../core/intrinsics/atomic_nand_acq.v.html../../core/intrinsics/atomic_nand_acqrel.v.html../../core/intrinsics/atomic_nand_rel.v.html../../core/intrinsics/atomic_nand_relaxed.v.html../../core/intrinsics/atomic_or.v.html../../core/intrinsics/atomic_or_acq.v.html../../core/intrinsics/atomic_or_acqrel.v.html../../core/intrinsics/atomic_or_rel.v.html../../core/intrinsics/atomic_or_relaxed.v.html../../core/intrinsics/atomic_singlethreadfence.v.html../../core/intrinsics/atomic_singlethreadfence_acq.v.html../../core/intrinsics/atomic_singlethreadfence_acqrel.v.html../../core/intrinsics/atomic_singlethreadfence_rel.v.html../../core/intrinsics/atomic_store.v.html../../core/intrinsics/atomic_store_rel.v.html../../core/intrinsics/atomic_store_relaxed.v.html../../core/intrinsics/atomic_store_unordered.v.html../../core/intrinsics/atomic_umax.v.html../../core/intrinsics/atomic_umax_acq.v.html../../core/intrinsics/atomic_umax_acqrel.v.html../../core/intrinsics/atomic_umax_rel.v.html../../core/intrinsics/atomic_umax_relaxed.v.html../../core/intrinsics/atomic_umin.v.html../../core/intrinsics/atomic_umin_acq.v.html../../core/intrinsics/atomic_umin_acqrel.v.html../../core/intrinsics/atomic_umin_rel.v.html../../core/intrinsics/atomic_umin_relaxed.v.html../../core/intrinsics/atomic_xadd.v.html../../core/intrinsics/atomic_xadd_acq.v.html../../core/intrinsics/atomic_xadd_acqrel.v.html../../core/intrinsics/atomic_xadd_rel.v.html../../core/intrinsics/atomic_xadd_relaxed.v.html../../core/intrinsics/atomic_xchg.v.html../../core/intrinsics/atomic_xchg_acq.v.html../../core/intrinsics/atomic_xchg_acqrel.v.html../../core/intrinsics/atomic_xchg_rel.v.html../../core/intrinsics/atomic_xchg_relaxed.v.html../../core/intrinsics/atomic_xor.v.html../../core/intrinsics/atomic_xor_acq.v.html../../core/intrinsics/atomic_xor_acqrel.v.html../../core/intrinsics/atomic_xor_rel.v.html../../core/intrinsics/atomic_xor_relaxed.v.html../../core/intrinsics/atomic_xsub.v.html../../core/intrinsics/atomic_xsub_acq.v.html../../core/intrinsics/atomic_xsub_acqrel.v.html../../core/intrinsics/atomic_xsub_rel.v.html../../core/intrinsics/atomic_xsub_relaxed.v.html../../core/intrinsics/bitreverse.v.html../../core/intrinsics/breakpoint.v.html../../core/intrinsics/bswap.v.html../../core/intrinsics/caller_location.v.html../../core/intrinsics/ceilf32.v.html../../core/intrinsics/ceilf64.v.html../../core/intrinsics/copy.v.html../../core/intrinsics/copy_nonoverlapping.v.html../../core/intrinsics/copysignf32.v.html../../core/intrinsics/copysignf64.v.html../../core/intrinsics/cosf32.v.html../../core/intrinsics/cosf64.v.html../../core/intrinsics/ctlz.v.html../../core/intrinsics/ctlz_nonzero.v.html../../core/intrinsics/ctpop.v.html../../core/intrinsics/cttz.v.html../../core/intrinsics/cttz_nonzero.v.html../../core/intrinsics/discriminant_value.v.html../../core/ptr/drop_in_place.v.html../../core/intrinsics/exact_div.v.html../../core/intrinsics/exp2f32.v.html../../core/intrinsics/exp2f64.v.html../../core/intrinsics/expf32.v.html../../core/intrinsics/expf64.v.html../../core/intrinsics/fabsf32.v.html../../core/intrinsics/fabsf64.v.html../../core/intrinsics/fadd_fast.v.html../../core/intrinsics/fdiv_fast.v.html../../core/intrinsics/float_to_int_approx_unchecked.v.html../../core/intrinsics/floorf32.v.html../../core/intrinsics/floorf64.v.html../../core/intrinsics/fmaf32.v.html../../core/intrinsics/fmaf64.v.html../../core/intrinsics/fmul_fast.v.html../../core/intrinsics/forget.v.html../../core/intrinsics/frem_fast.v.html../../core/intrinsics/fsub_fast.v.html../../core/intrinsics/init.v.html../../core/intrinsics/likely.v.html../../core/intrinsics/log10f32.v.html../../core/intrinsics/log10f64.v.html../../core/intrinsics/log2f32.v.html../../core/intrinsics/log2f64.v.html../../core/intrinsics/logf32.v.html../../core/intrinsics/logf64.v.html../../core/intrinsics/maxnumf32.v.html../../core/intrinsics/maxnumf64.v.html../../core/intrinsics/min_align_of.v.html../../core/intrinsics/min_align_of_val.v.html../../core/intrinsics/minnumf32.v.html../../core/intrinsics/minnumf64.v.html../../core/intrinsics/miri_start_panic.v.html../../core/intrinsics/move_val_init.v.html../../core/intrinsics/mul_with_overflow.v.html../../core/intrinsics/nearbyintf32.v.html../../core/intrinsics/nearbyintf64.v.html../../core/intrinsics/needs_drop.v.html../../core/intrinsics/nontemporal_store.v.html../../core/intrinsics/offset.v.html../../core/intrinsics/panic_if_uninhabited.v.html../../core/intrinsics/powf32.v.html../../core/intrinsics/powf64.v.html../../core/intrinsics/powif32.v.html../../core/intrinsics/powif64.v.html../../core/intrinsics/pref_align_of.v.html../../core/intrinsics/prefetch_read_data.v.html../../core/intrinsics/prefetch_read_instruction.v.html../../core/intrinsics/prefetch_write_data.v.html../../core/intrinsics/prefetch_write_instruction.v.html../../core/intrinsics/ptr_offset_from.v.html../../core/intrinsics/rintf32.v.html../../core/intrinsics/rintf64.v.html../../core/intrinsics/rotate_left.v.html../../core/intrinsics/rotate_right.v.html../../core/intrinsics/roundf32.v.html../../core/intrinsics/roundf64.v.html../../core/intrinsics/rustc_peek.v.html../../core/intrinsics/saturating_add.v.html../../core/intrinsics/saturating_sub.v.html../../core/intrinsics/sinf32.v.html../../core/intrinsics/sinf64.v.html../../core/intrinsics/size_of.v.html../../core/intrinsics/size_of_val.v.html../../core/intrinsics/sqrtf32.v.html../../core/intrinsics/sqrtf64.v.html../../core/intrinsics/sub_with_overflow.v.html../../core/intrinsics/transmute.v.html../../core/intrinsics/truncf32.v.html../../core/intrinsics/truncf64.v.html../../core/intrinsics/try.v.html../../core/intrinsics/type_id.v.html../../core/any/type_name.v.html../../core/intrinsics/unaligned_volatile_load.v.html../../core/intrinsics/unaligned_volatile_store.v.html../../core/intrinsics/unchecked_add.v.html../../core/intrinsics/unchecked_div.v.html../../core/intrinsics/unchecked_mul.v.html../../core/intrinsics/unchecked_rem.v.html../../core/intrinsics/unchecked_shl.v.html../../core/intrinsics/unchecked_shr.v.html../../core/intrinsics/unchecked_sub.v.html../../core/intrinsics/uninit.v.html../../core/intrinsics/unlikely.v.html../../core/arch/wasm32/unreachable.v.html../../core/intrinsics/volatile_copy_memory.v.html../../core/intrinsics/volatile_copy_nonoverlapping_memory.v.html../../core/intrinsics/volatile_load.v.html../../core/intrinsics/volatile_set_memory.v.html../../core/intrinsics/volatile_store.v.html../../core/intrinsics/wrapping_add.v.html../../core/intrinsics/wrapping_mul.v.html../../core/intrinsics/wrapping_sub.v.html../../core/intrinsics/write_bytes.v.html../../alloc/str/Bytes.t.html../../core/iter/Chain.t.html../../alloc/collections/linked_list/Cursor.t.html../../core/iter/Empty.t.html../../alloc/fmt/Error.t.html../../alloc/str/Lines.t.html../../core/iter/Repeat.t.html../../alloc/fmt/Result.t.html../../alloc/slice/Split.t.html../../core/iter/Take.t.html../../alloc/fmt/Write.t.html../BufReader.t.html../BufWriter.t.html../IntoInnerError.t.html../LineWriter.t.html../../core/intrinsics/copy.v.html../../../alloc/collections/linked_list/Cursor.t.html../../core/iter/empty.v.html../../../alloc/fmt/Error.t.html../ErrorKind.t.html../../../alloc/fmt/Result.t.html../../../alloc/prelude/v1/sidebar-items.js../../core/iter/repeat.v.html../Stderr.t.html../StderrLock.t.html../Stdin.t.html../StdinLock.t.html../Stdout.t.html../StdoutLock.t.html../stderr.v.html../stdin.v.htmlstdio/stdout.v.html../../../core/iter/Empty.t.html../../../core/iter/Repeat.t.html../Sink.t.html../../../core/intrinsics/copy.v.html../../../core/iter/empty.v.html../../../core/iter/repeat.v.html../sink.v.html../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/isize/sidebar-items.js../../core/iter/Chain.t.html../../core/iter/Cloned.t.html../../core/iter/Copied.t.html../../core/iter/Cycle.t.html../../core/iter/DoubleEndedIterator.t.html../../core/iter/Empty.t.html../../core/iter/Enumerate.t.html../../core/iter/ExactSizeIterator.t.html../../core/iter/Extend.t.html../../core/iter/Filter.t.html../../core/iter/FilterMap.t.html../../core/iter/FlatMap.t.html../../core/iter/Flatten.t.html../../core/iter/FromFn.t.html../../core/iter/FromIterator.t.html../../core/iter/Fuse.t.html../../core/iter/FusedIterator.t.html../../core/iter/Inspect.t.html../../core/iter/IntoIterator.t.html../../core/iter/Iterator.t.html../../core/iter/Map.t.html../../core/iter/MapWhile.t.html../../core/iter/Once.t.html../../core/iter/OnceWith.t.html../../core/iter/Peekable.t.html../../core/iter/Product.t.html../../core/iter/Repeat.t.html../../core/iter/RepeatWith.t.html../../core/iter/Rev.t.html../../core/iter/Scan.t.html../../core/iter/Skip.t.html../../core/iter/SkipWhile.t.html../../core/iter/Step.t.html../../core/iter/StepBy.t.html../../core/iter/Successors.t.html../../core/iter/Sum.t.html../../core/iter/Take.t.html../../core/iter/TakeWhile.t.html../../core/iter/TrustedLen.t.html../../core/iter/Zip.t.html../../core/iter/empty.v.html../../core/iter/from_fn.v.html../../core/iter/once.v.html../../core/iter/once_with.v.html../../core/iter/repeat.v.html../../core/iter/repeat_with.v.html../../core/iter/sidebar-items.js../../core/iter/sources/successors.v.html../core/line.m.html../core/log_syntax.m.html../core/asm.m.html../core/assert.m.html../core/assert_eq.m.html../core/assert_ne.m.html../core/cfg.m.html../core/column.m.html../core/compile_error.m.html../core/concat.m.html../core/concat_idents.m.htmldbg.m.html../core/debug_assert.m.html../core/debug_assert_eq.m.html../core/debug_assert_ne.m.html../core/env.m.htmleprint.m.htmleprintln.m.html../core/file.m.html../alloc/format.m.html../core/format_args.m.html../core/format_args_nl.m.html../core/global_asm.m.html../core/include.m.html../core/include_bytes.m.html../core/include_str.m.htmlis_aarch64_feature_detected.m.htmlis_arm_feature_detected.m.htmlis_mips64_feature_detected.m.htmlis_mips_feature_detected.m.htmlis_powerpc64_feature_detected.m.htmlis_powerpc_feature_detected.m.htmlis_x86_feature_detected.m.html../core/line.m.html../core/log_syntax.m.html../core/macro.matches!.html../core/macro.module_path!.html../core/macro.option_env!.html../core/macro.panic!.html../core/macro.stringify!.html../core/macro.todo!.html../core/macro.trace_macros!.html../core/macro.try!.html../core/macro.unimplemented!.html../core/macro.unreachable!.html../alloc/macro.vec!.html../core/macro.write!.html../core/macro.writeln!.html../../core/Copy.m.html../../core/marker/Copy.t.html../../core/marker/PhantomData.t.html../../core/marker/PhantomPinned.t.html../../core/marker/Send.t.html../../core/marker/Sized.t.html../../core/marker/StructuralEq.t.html../../core/marker/StructuralPartialEq.t.html../../core/marker/Sync.t.html../../core/marker/Unpin.t.html../../core/marker/Unsize.t.html../../core/Copy.m.html../core/macro.matches!.html../../core/mem/Discriminant.t.html../../core/mem/ManuallyDrop.t.html../../core/mem/MaybeUninit.t.html../../core/mem/align_of.v.html../../core/mem/align_of_val.v.html../../core/mem/discriminant.v.html../../core/mem/drop.v.html../../core/intrinsics/forget.v.html../../core/mem/forget_unsized.v.html../../core/intrinsics/min_align_of.v.html../../core/intrinsics/min_align_of_val.v.html../../core/intrinsics/needs_drop.v.html../../core/mem/replace.v.html../../core/mem/sidebar-items.js../../core/intrinsics/size_of.v.html../../core/intrinsics/size_of_val.v.html../../core/mem/swap.v.html../../core/mem/take.v.html../../core/intrinsics/transmute.v.html../../core/mem/transmute_copy.v.html../../core/mem/uninitialized.v.html../../core/mem/zeroed.v.html../core/macro.module_path!.html../SocketAddr.t.html../SocketAddrV4.t.html../SocketAddrV6.t.html../ToSocketAddrs.t.html../IpAddr.t.html../Ipv4Addr.t.html../Ipv6Addr.t.html../Ipv6MulticastScope.t.html../AddrParseError.t.html../Incoming.t.html../TcpListener.t.html../TcpStream.t.html../UdpSocket.t.html../../core/num/FpCategory.t.html../../core/num/IntErrorKind.t.html../../core/num/NonZeroI128.t.html../../core/num/NonZeroI16.t.html../../core/num/NonZeroI32.t.html../../core/num/NonZeroI64.t.html../../core/num/NonZeroI8.t.html../../core/num/NonZeroIsize.t.html../../core/num/NonZeroU128.t.html../../core/num/NonZeroU16.t.html../../core/num/NonZeroU32.t.html../../core/num/NonZeroU64.t.html../../core/num/NonZeroU8.t.html../../core/num/NonZeroUsize.t.html../../core/num/ParseFloatError.t.html../../core/num/ParseIntError.t.html../../core/num/TryFromIntError.t.html../../core/num/Wrapping.t.html../../core/num/sidebar-items.js../../core/ops/Add.t.html../../core/ops/AddAssign.t.html../../core/ops/BitAnd.t.html../../core/ops/BitAndAssign.t.html../../core/ops/BitOr.t.html../../core/ops/BitOrAssign.t.html../../core/ops/BitXor.t.html../../core/ops/BitXorAssign.t.html../../core/ops/Bound.t.html../../core/ops/CoerceUnsized.t.html../../core/ops/Deref.t.html../../core/ops/DerefMut.t.html../../core/ops/DispatchFromDyn.t.html../../core/ops/Div.t.html../../core/ops/DivAssign.t.html../../core/ops/Drop.t.html../../core/ops/Fn.t.html../../core/ops/FnMut.t.html../../core/ops/FnOnce.t.html../../core/ops/Generator.t.html../../core/ops/GeneratorState.t.html../../core/ops/Index.t.html../../core/ops/IndexMut.t.html../../core/ops/Mul.t.html../../core/ops/MulAssign.t.html../../core/ops/Neg.t.html../../core/ops/Not.t.html../../alloc/collections/btree/map/Range.t.html../../core/ops/RangeBounds.t.html../../core/ops/RangeFrom.t.html../../core/ops/RangeFull.t.html../../core/ops/RangeInclusive.t.html../../core/ops/RangeTo.t.html../../core/ops/RangeToInclusive.t.html../../core/ops/Rem.t.html../../core/ops/RemAssign.t.html../../core/ops/Shl.t.html../../core/ops/ShlAssign.t.html../../core/ops/Shr.t.html../../core/ops/ShrAssign.t.html../../core/ops/Sub.t.html../../core/ops/SubAssign.t.html../../core/ops/Try.t.html../../core/ops/sidebar-items.js../../alloc/collections/binary_heap/IntoIter.t.html../../alloc/collections/binary_heap/Iter.t.html../../alloc/collections/btree/map/IterMut.t.html../../core/option/NoneError.t.html../../core/option/Option.t.html../../core/option/sidebar-items.js../core/macro.option_env!.htmlarch/blkcnt_t.t.htmlarch/blksize_t.t.htmlarch/ino_t.t.htmlarch/nlink_t.t.htmlarch/off_t.t.htmlarch/stat.t.htmlarch/stat.v.htmlarch/time_t.t.html../../linux/fs/MetadataExt.t.html../../../net/Incoming.t.html../../../../alloc/prelude/v1/sidebar-items.js../../linux/raw/arch/blkcnt_t.t.html../../linux/raw/arch/blksize_t.t.html../../linux/raw/dev_t.t.html../../linux/raw/arch/ino_t.t.html../../linux/raw/mode_t.t.html../../linux/raw/arch/nlink_t.t.html../../linux/raw/arch/off_t.t.html../../linux/raw/pthread_t.t.html../../linux/raw/arch/time_t.t.html../../unix/ffi/OsStrExt.t.html../../unix/ffi/OsStringExt.t.html../../unix/fs/FileExt.t.html../../unix/fs/FileTypeExt.t.html../../linux/fs/MetadataExt.t.html../../unix/fs/OpenOptionsExt.t.html../../../../alloc/prelude/v1/sidebar-items.js../../unix/process/CommandExt.t.html../../unix/process/ExitStatusExt.t.html../../../../alloc/prelude/v1/sidebar-items.js../core/macro.panic!.html../../core/panic/Location.t.html../../core/panic/PanicInfo.t.html../panic/set_hook.v.html../panic/take_hook.v.html../../alloc/collections/binary_heap/Iter.t.html../../core/pin/Pin.t.html../../core/pin/sidebar-items.js../../../alloc/prelude/v1/sidebar-items.js../../alloc/prelude/v1/sidebar-items.jsmacro.print!.htmlmacro.println!.html../../core/intrinsics/abort.v.html../../core/ptr/NonNull.t.html../../core/intrinsics/copy.v.html../../core/intrinsics/copy_nonoverlapping.v.html../../core/ptr/drop_in_place.v.html../../core/ptr/eq.v.html../../core/ptr/hash.v.html../../core/ptr/null.v.html../../core/ptr/null_mut.v.html../../core/ptr/read.v.html../../core/ptr/read_unaligned.v.html../../core/ptr/read_volatile.v.html../../core/mem/replace.v.html../../core/ptr/slice_from_raw_parts.v.html../../core/ptr/slice_from_raw_parts_mut.v.html../../core/mem/swap.v.html../../core/ptr/swap_nonoverlapping.v.html../../alloc/fmt/write.v.html../../core/intrinsics/write_bytes.v.html../../core/ptr/write_unaligned.v.html../../core/ptr/write_volatile.v.html../../core/raw/TraitObject.t.html../../core/raw/sidebar-items.js../../alloc/rc/Rc.t.html../../alloc/rc/Weak.t.html../../alloc/rc/sidebar-items.js../../alloc/collections/binary_heap/IntoIter.t.html../../alloc/collections/binary_heap/Iter.t.html../../alloc/collections/btree/map/IterMut.t.html../../core/result/Result.t.html../../core/result/sidebar-items.js../../alloc/slice/Chunks.t.html../../alloc/slice/ChunksExact.t.html../../alloc/slice/ChunksExactMut.t.html../../alloc/slice/ChunksMut.t.html../../alloc/slice/Concat.t.html../../alloc/collections/binary_heap/Iter.t.html../../alloc/collections/btree/map/IterMut.t.html../../alloc/slice/Join.t.html../../alloc/slice/RChunks.t.html../../alloc/slice/RChunksExact.t.html../../alloc/slice/RChunksExactMut.t.html../../alloc/slice/RChunksMut.t.html../../alloc/slice/RSplit.t.html../../alloc/slice/RSplitMut.t.html../../alloc/slice/RSplitN.t.html../../alloc/slice/RSplitNMut.t.html../../alloc/slice/SliceIndex.t.html../../alloc/slice/Split.t.html../../alloc/slice/SplitMut.t.html../../alloc/slice/SplitN.t.html../../alloc/slice/SplitNMut.t.html../../alloc/slice/Windows.t.html../../alloc/slice/from_mut.v.html../../alloc/slice/from_raw_parts.v.html../../alloc/slice/from_raw_parts_mut.v.html../../alloc/slice/from_ref.v.html../../alloc/slice/sidebar-items.js../../alloc/str/Bytes.t.html../../alloc/str/CharIndices.t.html../../alloc/str/Chars.t.html../../alloc/str/EncodeUtf16.t.html../../alloc/str/EscapeDebug.t.html../../alloc/str/EscapeDefault.t.html../../alloc/str/EscapeUnicode.t.html../../alloc/str/FromStr.t.html../../alloc/str/Lines.t.html../../alloc/str/LinesAny.t.html../../alloc/str/MatchIndices.t.html../../alloc/str/Matches.t.html../../alloc/str/ParseBoolError.t.html../../alloc/str/RMatchIndices.t.html../../alloc/str/RMatches.t.html../../alloc/slice/RSplit.t.html../../alloc/slice/RSplitN.t.html../../alloc/str/RSplitTerminator.t.html../../alloc/slice/Split.t.html../../alloc/str/SplitAsciiWhitespace.t.html../../alloc/slice/SplitN.t.html../../alloc/str/SplitTerminator.t.html../../alloc/str/SplitWhitespace.t.html../../alloc/str/Utf8Error.t.html../../alloc/str/from_boxed_utf8_unchecked.v.html../../alloc/str/from_utf8.v.html../../alloc/str/from_utf8_mut.v.html../../alloc/str/from_utf8_unchecked.v.html../../alloc/str/from_utf8_unchecked_mut.v.html../../../alloc/str/pattern/CharPredicateSearcher.t.html../../../alloc/str/pattern/CharSearcher.t.html../../../alloc/str/pattern/CharSliceSearcher.t.html../../../alloc/str/pattern/DoubleEndedSearcher.t.html../../../alloc/str/pattern/Pattern.t.html../../../alloc/str/pattern/ReverseSearcher.t.html../../../alloc/str/pattern/SearchStep.t.html../../../alloc/str/pattern/Searcher.t.html../../../alloc/str/pattern/StrSearcher.t.html../../../alloc/str/pattern/sidebar-items.js../../alloc/str/sidebar-items.js../../alloc/collections/binary_heap/Drain.t.html../../alloc/string/FromUtf16Error.t.html../../alloc/string/FromUtf8Error.t.html../../alloc/string/ParseError.t.html../../alloc/string/String.t.html../../alloc/string/ToString.t.html../../alloc/string/sidebar-items.js../core/macro.stringify!.html../../alloc/sync/Arc.t.html../../core/iter/Once.t.html../../alloc/rc/Weak.t.html../../../core/sync/atomic/ATOMIC_BOOL_INIT.v.html../../../core/sync/atomic/ATOMIC_I16_INIT.v.html../../../core/sync/atomic/ATOMIC_I32_INIT.v.html../../../core/sync/atomic/ATOMIC_I64_INIT.v.html../../../core/sync/atomic/ATOMIC_I8_INIT.v.html../../../core/sync/atomic/ATOMIC_ISIZE_INIT.v.html../../../core/sync/atomic/ATOMIC_U16_INIT.v.html../../../core/sync/atomic/ATOMIC_U32_INIT.v.html../../../core/sync/atomic/ATOMIC_U64_INIT.v.html../../../core/sync/atomic/ATOMIC_U8_INIT.v.html../../../core/sync/atomic/ATOMIC_USIZE_INIT.v.html../../../core/sync/atomic/AtomicBool.t.html../../../core/sync/atomic/AtomicI16.t.html../../../core/sync/atomic/AtomicI32.t.html../../../core/sync/atomic/AtomicI64.t.html../../../core/sync/atomic/AtomicI8.t.html../../../core/sync/atomic/AtomicIsize.t.html../../../core/sync/atomic/AtomicPtr.t.html../../../core/sync/atomic/AtomicU16.t.html../../../core/sync/atomic/AtomicU32.t.html../../../core/sync/atomic/AtomicU64.t.html../../../core/sync/atomic/AtomicU8.t.html../../../core/sync/atomic/AtomicUsize.t.html../../../core/cmp/Ordering.t.html../../../core/sync/atomic/compiler_fence.v.html../../../core/sync/atomic/fence.v.html../../../core/sync/atomic/sidebar-items.js../../../core/sync/atomic/spin_loop_hint.v.html../Barrier.t.html../BarrierWaitResult.t.html../Condvar.t.html../WaitTimeoutResult.t.html../../../alloc/collections/binary_heap/IntoIter.t.html../../../alloc/collections/binary_heap/Iter.t.html../Mutex.t.html../MutexGuard.t.html../ONCE_INIT.v.html../../../core/iter/Once.t.html../OnceState.t.html../RwLock.t.html../RwLockReadGuard.t.html../RwLockWriteGuard.t.html../../../../os/unix/fs/DirBuilderExt.t.html../../../../os/unix/fs/DirEntryExt.t.html../../../../os/unix/fs/FileExt.t.html../../../../os/unix/fs/FileTypeExt.t.html../../../../os/linux/fs/MetadataExt.t.html../../../../os/unix/fs/OpenOptionsExt.t.html../../../../os/unix/fs/PermissionsExt.t.html../../../../os/unix/fs/symlink.v.html../../../../os/unix/io/AsRawFd.t.html../../../../os/unix/io/FromRawFd.t.html../../../../os/unix/io/IntoRawFd.t.html../../../../os/unix/io/RawFd.t.html../../../../net/Incoming.t.html../../../../os/unix/net/SocketAddr.t.html../../../../os/unix/net/UnixDatagram.t.html../../../../os/unix/net/UnixListener.t.html../../../../os/unix/net/UnixStream.t.html../../../../os/unix/process/CommandExt.t.html../../../../os/unix/process/ExitStatusExt.t.html../../../../os/unix/process/parent_id.v.html../../../../os/linux/raw/arch/blkcnt_t.t.html../../../../os/linux/raw/arch/blksize_t.t.html../../../../os/unix/raw/gid_t.t.html../../../../os/linux/raw/arch/ino_t.t.html../../../../os/linux/raw/arch/nlink_t.t.html../../../../os/linux/raw/arch/off_t.t.html../../../../os/unix/raw/pid_t.t.html../../../../os/linux/raw/arch/time_t.t.html../../../../os/linux/raw/arch/type.blkcnt_t.html../../../../os/linux/raw/arch/type.blksize_t.html../../../../os/linux/raw/arch/type.ino_t.html../../../../os/linux/raw/arch/type.nlink_t.html../../../../os/linux/raw/arch/type.off_t.html../../../../os/linux/raw/arch/type.time_t.html../../../../os/unix/raw/uid_t.t.html../../../../os/unix/thread/JoinHandleExt.t.html../../../../os/unix/thread/RawPthread.t.html../../../os/unix/ffi/OsStrExt.t.html../../../os/unix/ffi/OsStringExt.t.html../../../os/unix/fs/FileExt.t.html../../../os/unix/fs/FileTypeExt.t.html../../../os/linux/fs/MetadataExt.t.html../../../os/unix/fs/OpenOptionsExt.t.html../../../os/windows/fs/symlink_dir.v.html../../../os/windows/fs/symlink_file.v.html../../../os/windows/io/AsRawHandle.t.html../../../os/windows/io/AsRawSocket.t.html../../../os/windows/io/FromRawHandle.t.html../../../os/windows/io/FromRawSocket.t.html../../../os/windows/io/IntoRawHandle.t.html../../../os/windows/io/IntoRawSocket.t.html../../../os/windows/io/RawHandle.t.html../../../os/windows/io/RawSocket.t.html../../../os/unix/process/CommandExt.t.html../../../os/unix/process/ExitStatusExt.t.html../../../os/windows/raw/HANDLE.t.html../../../os/windows/raw/SOCKET.t.html../../os/unix/ffi/OsStrExt.t.html../../os/unix/ffi/OsStringExt.t.html../../sync/LockResult.t.html../../sync/PoisonError.t.html../../sync/TryLockError.t.html../../sync/TryLockResult.t.html../../os/windows/ffi/EncodeWide.t.html../../core/task/Context.t.html../../core/task/Poll.t.html../../core/task/RawWaker.t.html../../core/task/RawWakerVTable.t.html../../core/task/Waker.t.html../../core/task/sidebar-items.js../../alloc/fmt/Result.t.html../AccessError.t.html../LocalKey.t.htmlmacro.thread_local!.html../../core/time/Duration.t.html../core/macro.todo!.html../core/macro.trace_macros!.html../core/macro.try!.html../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/u128/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/u16/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/u32/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/u64/sidebar-items.js../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/u8/sidebar-items.js../core/macro.unimplemented!.html../core/macro.unreachable!.html../../core/char/MAX.v.html../../core/f32/MIN.v.html../../core/usize/sidebar-items.js../alloc/macro.vec!.html../../alloc/collections/binary_heap/Drain.t.html../../alloc/collections/linked_list/DrainFilter.t.html../../alloc/collections/binary_heap/IntoIter.t.html../../alloc/vec/Splice.t.html../../alloc/vec/Vec.t.html../../alloc/vec/sidebar-items.js../core/macro.write!.html../core/macro.writeln!.html../../core/hint/black_box.v.html../core/hint/black_box.v.html../TestOpts.t.html../ColorConfig.t.html../Options.t.html../OutputFormat.t.html../RunIgnored.t.html../ShouldPanic.t.htmlconsole/run_tests_console.v.html../helpers/metrics/Metric.t.html../helpers/metrics/MetricMap.t.html../Options.t.html../RunIgnored.t.html../options/RunStrategy.t.html../ShouldPanic.t.html../TestDesc.t.html../TestDescAndFn.t.html../TestName.t.html../TestOpts.t.html../TestType.t.html../cli/parse_opts.v.html../test/TestResult.t.html../test/TestExecTime.t.html../test/TestTimeOptions.t.html../NamePadding.t.html../TDynBenchFn.t.html../TestDesc.t.html../TestDescAndFn.t.html../TestFn.t.html../TestName.t.html../TestType.t.html../../../book/2018-edition/FontAwesome/css/font-awesome.css../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.eot../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.svg../../../book/2018-edition/FontAwesome/fonts/FontAwesome.ttf../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff../../../book/2018-edition/FontAwesome/fonts/fontawesome-webfont.woff2../book/2018-edition/ayu-highlight.css../book/2018-edition/book.js../book/2018-edition/clipboard.min.js../../book/2018-edition/css/chrome.css../../book/2018-edition/css/general.css../../book/2018-edition/css/print.css../../book/2018-edition/css/variables.css../book/2018-edition/elasticlunr.min.js../book/2018-edition/favicon.png../book/2018-edition/highlight.css../book/2018-edition/highlight.js../book/2018-edition/mark.min.js../book/2018-edition/searcher.js../book/2018-edition/tomorrow-night.cssrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrust-1.43.1-15.1.src.rpmrust-docrust-doc(s390-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rust3.0.4-14.6.0-14.0-15.2-11.43.14.14.1`^@^2^^l@^k@^0^0^x^!^@^ ^ ]@]@]X]@]@]@]@]w@]fl]$]#0@]G@\t@\.@\ޢ@\O\,@\\@\@\@\}@\zp@\y\w@\v{\v{\v{\r@\r@\q5\G\@n@\0@\ @[[[v[%@[@[@[ݍ[ݍ[;@[l,[Z@ZZZSZ@Zg#Ze@Ze@ZN@Z[@Z@YYB@YYLYX@Y@@YKYYA%@Y9<@YYY.Y.XEXg@XXƉXXBXXe@Xe@X|@X|@X]X]XVz@XVz@XVz@XS@X@W$WίW.@W@WPWW|WrfWq@WL+@WVxVvV3[V"8@UU5@U@UUUKSUJ@U@U@dmueller@suse.commartin.sirringhaus@suse.commartin.sirringhaus@suse.comschwab@suse.demartin.sirringhaus@suse.comschwab@suse.dealarrosa@suse.comalarrosa@suse.comfederico@suse.comdimstar@opensuse.orgfederico@suse.comluke@ljones.devopensuse-packaging@opensuse.orgngompa13@gmail.comaplanas@suse.comaplanas@suse.comaplanas@suse.comrhafer@suse.comluke@ljones.devluke@ljones.devfederico@suse.comluke@ljones.devjones_ld@protonmail.comjones_ld@protonmail.comschwab@suse.dejones_ld@protonmail.comaaronpuchert@alice-dsl.netfederico@suse.commliska@suse.czjones_ld@protonmail.comfederico@suse.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comfederico@suse.comjones_ld@protonmail.comjones_ld@protonmail.comfederico@suse.comjengelh@inai.dejones_ld@protonmail.comjones_ld@protonmail.comfederico@suse.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comngompa13@gmail.comjengelh@inai.dejones_ld@protonmail.comjones_ld@protonmail.comjones_ld@protonmail.comqkzhu@suse.commschnitzer@suse.commmanu84@outlook.deluc14n0@linuxmail.orgmmanu84@outlook.demmanu84@outlook.demmanu84@outlook.decoolo@suse.comtchvatal@suse.commmanu84@outlook.dejones_ld@protonmail.comjones_ld@protonmail.commmanu84@outlook.dejones_ld@protonmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comopensuse@dstoecker.deluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comdimstar@opensuse.orgbg@suse.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.comluke.nukem.jones@gmail.commatwey.kornilov@gmail.comkgronlund@suse.comkgronlund@suse.commvyskocil@opensuse.orgjengelh@inai.dekgronlund@suse.commvyskocil@opensuse.orgkgronlund@suse.comkgronlund@suse.comkgronlund@suse.commvyskocil@opensuse.orgmvyskocil@opensuse.orgkgronlund@suse.comi@xuzhao.netmvyskocil@opensuse.orgmvyskocil@opensuse.orgmvyskocil@opensuse.orgmvyskocil@opensuse.orgmvyskocil@opensuse.orgkgronlund@suse.comopensuse-packaging@opensuse.orgmatwey.kornilov@gmail.comopensuse-packaging@opensuse.orgkgronlund@suse.com- build 32bit arches llvm without debuginfo to avoid oom during build (bsc#1181571)- Add patch Fix-big-endian-miscompile-of-bitcast-zex.patch to fix miscompilations with rustc 1.43 that lead to LTO failures (bsc#1173202)- Update to version 1.43.1 - Updated openssl-src to 1.1.1g for CVE-2020-1967. - Fixed the stabilization of AVX-512 features. - Fixed `cargo package --list` not working with unpublished dependencies.- Update rustfmt_version- Update to version 1.43.0 + Language - Fixed using binary operations with `&{number}` (e.g. `&1.0`) not having the type inferred correctly. - Attributes such as `#[cfg()]` can now be used on `if` expressions. - Syntax only changes: * Allow `type Foo: Ord` syntactically. * Fuse associated and extern items up to defaultness. * Syntactically allow `self` in all `fn` contexts. * Merge `fn` syntax + cleanup item parsing. * `item` macro fragments can be interpolated into `trait`s, `impl`s, and `extern` blocks. For example, you may now write: ```rust macro_rules! mac_trait { ($i:item) => { trait T { $i } } } mac_trait! { fn foo() {} } ``` * These are still rejected *semantically*, so you will likely receive an error but these changes can be seen and parsed by macros and conditional compilation. + Compiler - You can now pass multiple lint flags to rustc to override the previous flags. For example; `rustc -D unused -A unused-variables` denies everything in the `unused` lint group except `unused-variables` which is explicitly allowed. However, passing `rustc -A unused-variables -D unused` denies everything in the `unused` lint group **including** `unused-variables` since the allow flag is specified before the deny flag (and therefore overridden). - rustc will now prefer your system MinGW libraries over its bundled libraries if they are available on `windows-gnu`. - rustc now buffers errors/warnings printed in JSON. + Libraries - `Arc<[T; N]>`, `Box<[T; N]>`, and `Rc<[T; N]>`, now implement `TryFrom>`,`TryFrom>`, and `TryFrom>` respectively. * *Note** These conversions are only available when `N` is `0..=32`. - You can now use associated constants on floats and integers directly, rather than having to import the module. e.g. You can now write `u32::MAX` or `f32::NAN` with no imports. - `u8::is_ascii` is now `const`. - `String` now implements `AsMut`. - Added the `primitive` module to `std` and `core`. This module reexports Rust's primitive types. This is mainly useful in macros where you want avoid these types being shadowed. - Relaxed some of the trait bounds on `HashMap` and `HashSet`. - `string::FromUtf8Error` now implements `Clone + Eq`. + Stabilized APIs - `Once::is_completed` - `f32::LOG10_2` - `f32::LOG2_10` - `f64::LOG10_2` - `f64::LOG2_10` - `iter::once_with` + Cargo - You can now set config `[profile]`s in your `.cargo/config`, or through your environment. - Cargo will now set `CARGO_BIN_EXE_` pointing to a binary's executable path when running integration tests or benchmarks. `` is the name of your binary as-is e.g. If you wanted the executable path for a binary named `my-program`you would use `env!("CARGO_BIN_EXE_my-program")`. + Misc - Certain checks in the `const_err` lint were deemed unrelated to const evaluation, and have been moved to the `unconditional_panic` and `arithmetic_overflow` lints. + Compatibility Notes - Having trailing syntax in the `assert!` macro is now a hard error. This has been a warning since 1.36.0. - Fixed `Self` not having the correctly inferred type. This incorrectly led to some instances being accepted, and now correctly emits a hard error.- Avoid duplication of environment settings- Update to version 1.42.0: + Language - You can now use the slice pattern syntax with subslices. - You can now use #[repr(transparent)] on univariant enums. Meaning that you can create an enum that has the exact layout and ABI of the type it contains. - There are some syntax-only changes: * default is syntactically allowed before items in trait definitions. * Items in impls (i.e. consts, types, and fns) may syntactically leave out their bodies in favor of ;. * Bounds on associated types in impls are now syntactically allowed (e.g. type Foo: Ord;). * ... (the C-variadic type) may occur syntactically directly as the type of any function parameter. These are still rejected semantically, so you will likely receive an error but these changes can be seen and parsed by procedural macros and conditional compilation. + Compiler - Added tier 2 support for armv7a-none-eabi. - Added tier 2 support for riscv64gc-unknown-linux-gnu. - Option::{expect,unwrap} and Result::{expect, expect_err, unwrap, unwrap_err} now produce panic messages pointing to the location where they were called, rather than core's internals. Refer to Rust's platform support page for more information on Rust's tiered platform support. + Libraries - iter::Empty now implements Send and Sync for any T. - Pin::{map_unchecked, map_unchecked_mut} no longer require the return type to implement Sized. - io::Cursor now derives PartialEq and Eq. - Layout::new is now const. - Added Standard Library support for riscv64gc-unknown-linux-gnu. + Stabilized APIs - CondVar::wait_while - CondVar::wait_timeout_while - DebugMap::key - DebugMap::value - ManuallyDrop::take - matches! - ptr::slice_from_raw_parts_mut - ptr::slice_from_raw_parts + Cargo - You no longer need to include extern crate proc_macro; to be able to use proc_macro; in the 2018 edition. + Compatibility Notes - Error::description has been deprecated, and its use will now produce a warning. It's recommended to use Display/to_string instead.- Rebased patches: + ignore-Wstring-conversion.patch (offset / fuzz)- Update to version 1.41.1: - Always check types of static items - Always check lifetime bounds of `Copy` impls - Fix miscompilation in callers of `Layout::repeat` - Update to version 1.41.0: + Language - You can now pass type parameters to foreign items when implementing traits. E.g. You can now write `impl From for Vec {}`. - You can now arbitrarily nest receiver types in the `self` position. E.g. you can now write `fn foo(self: Box>) {}`. Previously only `Self`, `&Self`, `&mut Self`, `Arc`, `Rc`, and `Box` were allowed. - You can now use any valid identifier in a `format_args` macro. Previously identifiers starting with an underscore were not allowed. - Visibility modifiers (e.g. `pub`) are now syntactically allowed on trait items and enum variants. These are still rejected semantically, but can be seen and parsed by procedural macros and conditional compilation. + Compiler - Rustc will now warn if you have unused loop `'label`s. - Removed support for the `i686-unknown-dragonfly` target. - Added tier 3 support\* for the `riscv64gc-unknown-linux-gnu` target. - You can now pass an arguments file passing the `@path` syntax to rustc. Note that the format differs somewhat from what is found in other tooling; please see the documentation for more information. - You can now provide `--extern` flag without a path, indicating that it is available from the search path or specified with an `-L` flag. Refer to Rust's [platform support page][forge-platform-support] for more information on Rust's tiered platform support. + Libraries - The `core::panic` module is now stable. It was already stable through `std`. - `NonZero*` numerics now implement `From` if it's a smaller integer width. E.g. `NonZeroU16` now implements `From`. - `MaybeUninit` now implements `fmt::Debug`. + Stabilized APIs - `Result::map_or` - `Result::map_or_else` - `std::rc::Weak::weak_count` - `std::rc::Weak::strong_count` - `std::sync::Weak::weak_count` - `std::sync::Weak::strong_count` + Cargo - Cargo will now document all the private items for binary crates by default. - `cargo-install` will now reinstall the package if it detects that it is out of date. - Cargo.lock now uses a more git friendly format that should help to reduce merge conflicts. - You can now override specific dependencies's build settings. E.g. `[profile.dev.package.image] opt-level = 2` sets the `image` crate's optimisation level to `2` for debug builds. You can also use `[profile..build-override]` to override build scripts and their dependencies. + Misc - You can now specify `edition` in documentation code blocks to compile the block for that edition. E.g. `edition2018` tells rustdoc that the code sample should be compiled the 2018 edition of Rust. - You can now provide custom themes to rustdoc with `--theme`, and check the current theme with `--check-theme`. - You can use `#[cfg(doc)]` to compile an item when building documentation. + Compatibility Notes - As previously announced 1.41.0 will be the last tier 1 release for 32-bit Apple targets. This means that the source code is still available to build, but the targets are no longer being tested and release binaries for those platforms will no longer be distributed by the Rust project. Please refer to the linked blog post for more information.- Adjust constraints: Request 20GB HDD for all archs. Simplify the file by removing the overrides for various disk sizes. All archs are curretnly at roughly 17GB storage in use.- Bump version of libssh2 for SLE15; we now need a version with libssh2_userauth_publickey_frommemory(), which appeared in libssh2 1.6.0. - Use the bundled libssh2 prior to SLE15. SLE12 has 1.4.3, which is too old for the ssh crate now.- Update to version 1.40.0 + Language - You can now use tuple `struct`s and tuple `enum` variant's constructors in `const` contexts. e.g. pub struct Point(i32, i32); const ORIGIN: Point = { let constructor = Point; constructor(0, 0) }; - You can now mark `struct`s, `enum`s, and `enum` variants with the `#[non_exhaustive]` attribute to indicate that there may be variants or fields added in the future. For example this requires adding a wild-card branch (`_ => {}`) to any match statements on a non-exhaustive `enum`. - You can now use function-like procedural macros in `extern` blocks and in type positions. e.g. `type Generated = macro!();` - Function-like and attribute procedural macros can now emit `macro_rules!` items, so you can now have your macros generate macros. - The `meta` pattern matcher in `macro_rules!` now correctly matches the modern attribute syntax. For example `(#[$m:meta])` now matches `#[attr]`, `#[attr{tokens}]`, `#[attr[tokens]]`, and `#[attr(tokens)]`. + Compiler - Added tier 3 support\* for the `thumbv7neon-unknown-linux-musleabihf` target. - Added tier 3 support for the `aarch64-unknown-none-softfloat` target. - Added tier 3 support for the `mips64-unknown-linux-muslabi64`, and `mips64el-unknown-linux-muslabi64` targets. + Libraries - The `is_power_of_two` method on unsigned numeric types is now a `const` function. + Stabilized APIs - BTreeMap::get_key_value - HashMap::get_key_value - Option::as_deref_mut - Option::as_deref - Option::flatten - UdpSocket::peer_addr - f32::to_be_bytes - f32::to_le_bytes - f32::to_ne_bytes - f64::to_be_bytes - f64::to_le_bytes - f64::to_ne_bytes - f32::from_be_bytes - f32::from_le_bytes - f32::from_ne_bytes - f64::from_be_bytes - f64::from_le_bytes - f64::from_ne_bytes - mem::take - slice::repeat - todo! + Cargo - Cargo will now always display warnings, rather than only on fresh builds. - Feature flags (except `--all-features`) passed to a virtual workspace will now produce an error. Previously these flags were ignored. - You can now publish `dev-dependencies` without including a `version`. + Misc - You can now specify the `#[cfg(doctest)]` attribute to include an item only when running documentation tests with `rustdoc`. + Compatibility Notes - As previously announced, any previous NLL warnings in the 2015 edition are now hard errors. - The `include!` macro will now warn if it failed to include the entire file. The `include!` macro unintentionally only includes the first _expression_ in a file, and this can be unintuitive. This will become either a hard error in a future release, or the behavior may be fixed to include all expressions as expected. - Using `#[inline]` on function prototypes and consts now emits a warning under `unused_attribute` lint. Using `#[inline]` anywhere else inside traits or `extern` blocks now correctly emits a hard error.- Rebased patches: + hopefully-fix-rustdoc-build.patch dropped (merged upstream)- Rename README to README.suse-maint and add it as a source to stop factory-auto from declining submissions automatically- Re-format the spec file - Add a README to explain the update process - Add _service file for download the assets and re-base the patches- Add hopefully-fix-rustdoc-build.patch to fix rustdoc compilation- Update to version 1.39.0 + Language - You can now create async functions and blocks with async fn, async move {}, and async {} respectively, and you can now call .await on async expressions. - You can now use certain attributes on function, closure, and function pointer parameters. - You can now take shared references to bind-by-move patterns in the if guards of match arms. + Compiler - Added tier 3 support for the i686-unknown-uefi target. - Added tier 3 support for the sparc64-unknown-openbsd target. - rustc will now trim code snippets in diagnostics to fit in your terminal. - You can now pass --show-output argument to test binaries to print the output of successful tests. + For more details: https://github.com/rust-lang/rust/blob/stable/RELEASES.md#version-1390-2019-11-07 - Drop patches already merged in upstream: + rust-61206-assume-tarball-llvm-is-fresh.patch + add-option-to-allow-warnings.patch- Switch to bundled version of libgit2 for now. libgit2-sys seems to expect using the bundled variant, which just seems to point to a snapshot of the master branch and doesn't match any released libgit2 (bsc#1154817). See: https://github.com/rust-lang/rust/issues/63476 and https://github.com/rust-lang/git2-rs/issues/458 for details.- Add patch add-option-to-allow-warnings.patch to add a config option which allows warnings and so enables v1.38 to bootstrap itself.- Update to version 1.38.0 + Language - The `#[global_allocator]` attribute can now be used in submodules. - The `#[deprecated]` attribute can now be used on macros. + Compiler - Added pipelined compilation support to `rustc`. This will improve compilation times in some cases. + Libraries - `ascii::EscapeDefault` now implements `Clone` and `Display`. - Derive macros for prelude traits (e.g. `Clone`, `Debug`, `Hash`) are now available at the same path as the trait. (e.g. The `Clone` derive macro is available at `std::clone::Clone`). This also makes all built-in macros available in `std`/`core` root. e.g. `std::include_bytes!`. - `str::Chars` now implements `Debug`. - `slice::{concat, connect, join}` now accepts `&[T]` in addition to `&T`. - `*const T` and `*mut T` now implement `marker::Unpin`. - `Arc<[T]>` and `Rc<[T]>` now implement `FromIterator`. - Added euclidean remainder and division operations (`div_euclid`, `rem_euclid`) to all numeric primitives. Additionally `checked`, `overflowing`, and `wrapping` versions are available for all integer primitives. - `thread::AccessError` now implements `Clone`, `Copy`, `Eq`, `Error`, and `PartialEq`. - `iter::{StepBy, Peekable, Take}` now implement `DoubleEndedIterator`. + Stabilized APIs - `<*const T>::cast` - `<*mut T>::cast` - `Duration::as_secs_f32` - `Duration::as_secs_f64` - `Duration::div_f32` - `Duration::div_f64` - `Duration::from_secs_f32` - `Duration::from_secs_f64` - `Duration::mul_f32` - `Duration::mul_f64` - `any::type_name` + Cargo - Added pipelined compilation support to `cargo`. - You can now pass the `--features` option multiple times to enable multiple features. + Misc - `rustc` will now warn about some incorrect uses of `mem::{uninitialized, zeroed}` that are known to cause undefined behaviour.- Use gcc7 on all of SLE12, since the embedded LLVM wants at least gcc 5.1. - Add rust-61206-assume-tarball-llvm-is-fresh.patch - Upstream fix to make LLVM not be rebuilt during the installation phase.- Update to version 1.37.0 + Language - #[must_use] will now warn if the type is contained in a tuple, Box, or an array and unused. - You can now use the `cfg` and `cfg_attr` attributes on generic parameters. - You can now use enum variants through type alias. e.g. You can write the following: ``` type MyOption = Option; fn increment_or_zero(x: MyOption) -> u8 { match x { MyOption::Some(y) => y + 1, MyOption::None => 0, } } ``` - You can now use `_` as an identifier for consts. e.g. You can write `const _: u32 = 5;`. - You can now use `#[repr(align(X)]` on enums. - The `?` Kleene macro operator is now available in the 2015 edition. + Compiler - You can now enable Profile-Guided Optimization with the `-C profile-generate` and `-C profile-use` flags. For more information on how to use profile guided optimization, please refer to the rustc book. - The `rust-lldb` wrapper script should now work again. + Libraries - `mem::MaybeUninit` is now ABI-compatible with `T`. + Stabilized APIs - BufReader::buffer - BufWriter::buffer - Cell::from_mut - Cell<[T]>::as_slice_of_cells - Cell::as_slice_of_cells - DoubleEndedIterator::nth_back - Option::xor - Wrapping::reverse_bits - i128::reverse_bits - i16::reverse_bits - i32::reverse_bits - i64::reverse_bits - i8::reverse_bits - isize::reverse_bits - slice::copy_within - u128::reverse_bits - u16::reverse_bits - u32::reverse_bits - u64::reverse_bits - u8::reverse_bits - usize::reverse_bits + Cargo - Cargo.lock files are now included by default when publishing executable crates with executables. - You can now specify `default-run="foo"` in `[package]` to specify the default executable to use for `cargo run`. - cargo-vendor is now provided as a sub-command of cargo + Compatibility Notes - Using `...` for inclusive range patterns will now warn by default. Please transition your code to using the `..=` syntax for inclusive ranges instead. - Using a trait object without the `dyn` will now warn by default. Please transition your code to use `dyn Trait` for trait objects instead.- Remove fix-llvm8-build.patch, fixed upstream- Update to version 1.36.0 + Language - Non-Lexical Lifetimes are now enabled on the 2015 edition - The order of traits in trait objects no longer affects the semantics of that object. e.g. `dyn Send + fmt::Debug` is now equivalent to `dyn fmt::Debug + Send`, where this was previously not the case. + Libraries - `HashMap`'s implementation has been replaced with `hashbrown::HashMap` implementation - `TryFromSliceError` now implements `From` - `mem::needs_drop` is now available as a const fn - `alloc::Layout::from_size_align_unchecked` is now available as a const fn - `String` now implements `BorrowMut` - `io::Cursor` now implements `Default` - Both `NonNull::{dangling, cast}` are now const fns - The `alloc` crate is now stable. `alloc` allows you to use a subset of `std` (e.g. `Vec`, `Box`, `Arc`) in `#![no_std]` environments if the environment has access to heap memory allocation. - String` now implements `From<&String>` - You can now pass multiple arguments to the `dbg!` macro. `dbg!` will return a tuple of each argument when there is multiple arguments. - `Result::{is_err, is_ok}` are now `#[must_use]` and will produce a warning if not used. + Stabilized APIs - VecDeque::rotate_left - VecDeque::rotate_right - Iterator::copied - io::IoSlice - io::IoSliceMut - Read::read_vectored - Write::write_vectored - str::as_mut_ptr - mem::MaybeUninit - pointer::align_offset - future::Future - task::Context - task::RawWaker - task::RawWakerVTable - task::Waker - task::Poll + Cargo - Cargo will now produce an error if you attempt to use the name of a required dependency as a feature - You can now pass the `--offline` flag to run cargo without accessing the network + Clippy - New lints: `find_map`, `filter_map_next` - New lint: `path_buf_push_overwrite` - Move `path_buf_push_overwrite` to the nursery - Split `redundant_closure` into `redundant_closure` and `redundant_closure_for_method_calls` - Allow allowing of `toplevel_ref_arg` lint - Fix false negative in `or_fun_call` pertaining to nested constructors - Fixed false positive in `or_fn_call` pertaining to enum variant constructors - Fix false positive in `useless_let_if_seq` pertaining to interior mutability - Fix false positive in `redundant_closure` pertaining to non-function types - Fix false positive in `let_and_return` pertaining to attributes on `let`s - Fix false positive in `module_name_repetitions` lint pertaining to attributes - Fix false positive on `assertions_on_constants` pertaining to `debug_assert!` - Improve suggestion in `map_clone` to suggest `.copied()` where applicable - Improve suggestion for `search_is_some` - Improve suggestion applicability for `naive_bytecount` - Improve suggestion applicability for `while_let_loop` - Improve diagnostics for `too_many_arguments` - Improve diagnostics for `cast_lossless` - Deal with macro checks in desugarings better - Add macro check for `unnecessary_cast` - Remove `approx_constant`'s documentation's "Known problems" section - Fix ICE in `suspicious_else_formatting` - Fix ICE in `decimal_literal_representation` + Compatibility Notes - With the stabilisation of `mem::MaybeUninit`, `mem::uninitialized` use is no longer recommended, and will be deprecated in 1.38.0.- Add support for ppc- Update to version 1.35.0 + Language - `FnOnce`, `FnMut`, and the `Fn` traits are now implemented for `Box`, `Box`, and `Box` respectively. - You can now coerce closures into unsafe function pointers. e.g. unsafe fn call_unsafe(func: unsafe fn()) { func() } pub fn main() { unsafe { call_unsafe(|| {}); } } + Compiler - Added the `armv6-unknown-freebsd-gnueabihf` and `armv7-unknown-freebsd-gnueabihf` targets. - Added the `wasm32-unknown-wasi` target. + Libraries - `Thread` will now show its ID in `Debug` output. - `StdinLock`, `StdoutLock`, and `StderrLock` now implement `AsRawFd`. - `alloc::System` now implements `Default`. - Expanded `Debug` output (`{:#?}`) for structs now has a trailing comma on the last field. - `char::{ToLowercase, ToUppercase}` now implement `ExactSizeIterator`. - All `NonZero` numeric types now implement `FromStr`. - Removed the `Read` trait bounds on the `BufReader::{get_ref, get_mut, into_inner}` methods. - You can now call the `dbg!` macro without any parameters to print the file and line where it is called. - In place ASCII case conversions are now up to 4× faster. e.g. `str::make_ascii_lowercase` - `hash_map::{OccupiedEntry, VacantEntry}` now implement `Sync` and `Send`. + Stabilized APIs - `f32::copysign` - `f64::copysign` - `RefCell::replace_with` - `RefCell::map_split` - `ptr::hash` - `Range::contains` - `RangeFrom::contains` - `RangeTo::contains` - `RangeInclusive::contains` - `RangeToInclusive::contains` - `Option::copied` + Cargo - You can now set `cargo:rustc-cdylib-link-arg` at build time to pass custom linker arguments when building a `cdylib`. Its usage is highly platform specific. - version 1.34.2 + Destabilize the `Error::type_id` function due to a security vulnerability (CVE-2019-12083) - version 1.34.1 + Fix false positives for the `redundant_closure` Clippy lint + Fix false positives for the `missing_const_for_fn` Clippy lint + Fix Clippy panic when checking some macros- Add fix-llvm8-build.patch: Fix linker errors with llvm8 by limiting internalization in ThinLTO.- Fix regexp for .rlib files in rust-rpmlintrc.- Disable LTO (boo#1133283).- Update to version 1.34.0 + Language - You can now use `#[deprecated = "reason"]` as a shorthand for `#[deprecated(note = "reason")]`. This was previously allowed by mistake but had no effect. - You can now accept token streams in `#[attr()]`,`#[attr[]]`, and `#[attr{}]` procedural macros. - You can now write `extern crate self as foo;` to import your crate's root into the extern prelude. + Compiler - You can now target `riscv64imac-unknown-none-elf` and `riscv64gc-unknown-none-elf`. - You can now enable linker plugin LTO optimisations with `-C linker-plugin-lto`. This allows rustc to compile your Rust code into LLVM bitcode allowing LLVM to perform LTO optimisations across C/C++ FFI boundaries. - You can now target `powerpc64-unknown-freebsd`. + Libraries - The trait bounds have been removed on some of `HashMap`'s and `HashSet`'s basic methods. Most notably you no longer require the `Hash` trait to create an iterator. - The `Ord` trait bounds have been removed on some of `BinaryHeap`'s basic methods. Most notably you no longer require the `Ord` trait to create an iterator. - The methods `overflowing_neg` and `wrapping_neg` are now `const` functions for all numeric types. - Indexing a `str` is now generic over all types that implement `SliceIndex`. - `str::trim`, `str::trim_matches`, `str::trim_{start, end}`, and `str::trim_{start, end}_matches` are now `#[must_use]` and will produce a warning if their returning type is unused. - The methods `checked_pow`, `saturating_pow`, `wrapping_pow`, and `overflowing_pow` are now available for all numeric types. These are equivalvent to methods such as `wrapping_add` for the `pow` operation. + Stabilized APIs - std & core + Any::type_id + Error::type_id + atomic::AtomicI16 + atomic::AtomicI32 + atomic::AtomicI64 + atomic::AtomicI8 + atomic::AtomicU16 + atomic::AtomicU32 + atomic::AtomicU64 + atomic::AtomicU8 + convert::Infallible + convert::TryFrom + convert::TryInto + iter::from_fn + iter::successors + num::NonZeroI128 + num::NonZeroI16 + num::NonZeroI32 + num::NonZeroI64 + num::NonZeroI8 + num::NonZeroIsize + slice::sort_by_cached_key + str::escape_debug + str::escape_default + str::escape_unicode + str::split_ascii_whitespace - std + Instant::checked_add + Instant::checked_sub + SystemTime::checked_add + SystemTime::checked_sub + Cargo - You can now use alternative registries to crates.io. + Misc - You can now use the `?` operator in your documentation tests without manually adding `fn main() -> Result<(), _> {}`. + Compatibility Notes - `Command::before_exec` is now deprecated in favor of the unsafe method `Command::pre_exec`. - Use of `ATOMIC_{BOOL, ISIZE, USIZE}_INIT` is now deprecated. As you can now use `const` functions in `static` variables. - Remove depreciated-trim_left_matches.patch. - Rustfmt version bumped to 1.0.3 + Change description not provided. - rls version now in sync with rustc. - Misc fixes to rust.spec- Use the system's LLVM in SLE15-SP1. That distribution has LLVM7, and we need to use it there, instead of any other version. - Prevent auto-provides from being created for things under rustlibdir, so the RPM does not inadvertently have a Provides for a bundled LLVM and the Rust library files. - Sync changes files between SLE and openSUSE, for ease of maintenance.- Explicitly build only a subset of tools- Remove miri complete instead of excluding. This is experimental and so should not be included. - BuildRequires ccache in attempt to reduce compile times. - Remove more extraneous directories from src that will never be used. - Extra patterns in rpmlintrc to catch more false positives: + Rust has no stable API, ignore SONAME warnings + Tool versions don't update in step with rust, ignore warnings- Separate the bootstrap version from the minimum required system version for package builds.- add depreciated-trim_left_matches.patch: replaces depreciated function call in src/tools/tidy with trim_start_matches to fix error when bootstrapping with system 1.33.0- Update to version 1.33.0 + Language - You can now use the `cfg(target_vendor)` attribute. E.g. `#[cfg(target_vendor="linux")] fn main() { println!("Hello Linux!"); }` - Integer patterns such as in a match expression can now be exhaustive. E.g. You can have match statement on a `u8` that covers `0..=255` and you would no longer be required to have a `_ => unreachable!()` case. - You can now have multiple patterns in `if let` and `while let` expressions. You can do this with the same syntax as a `match` expression. E.g. ``` enum Creature { Crab(String), Lobster(String), Person(String), } fn main() { let state = Creature::Crab("Ferris"); if let Creature::Crab(name) | Creature::Person(name) = state { println!("This creature's name is: {}", name); } } ``` - You can now have irrefutable `if let` and `while let` patterns. Using this feature will by default produce a warning as this behaviour can be unintuitive. E.g. `if let _ = 5 {}` - You can now use `let` bindings, assignments, expression statements, and irrefutable pattern destructuring in const functions. - You can now call unsafe const functions. E.g. ``` const unsafe fn foo() -> i32 { 5 } const fn bar() -> i32 { unsafe { foo() } } ``` - You can now specify multiple attributes in a `cfg_attr` attribute. E.g. `#[cfg_attr(all(), must_use, optimize)]` - You can now specify a specific alignment with the `#[repr(packed)]` attribute. E.g. `#[repr(packed(2))] struct Foo(i16, i32);` is a struct with an alignment of 2 bytes and a size of 6 bytes. - You can now import an item from a module as an `_`. This allows you to import a trait's impls, and not have the name in the namespace. E.g. ``` use std::io::Read as _; // Allowed as there is only one `Read` in the module. pub trait Read {} ``` - extern` functions will now abort by default when panicking. This was previously undefined behaviour. + Compiler - You can now set a linker flavor for `rustc` with the `-Clinker-flavor` command line argument. - The mininum required LLVM version has been bumped to 6.0. - Added support for the PowerPC64 architecture on FreeBSD. - The `x86_64-fortanix-unknown-sgx` target support has been upgraded to tier 2 support. Visit the [platform support][platform-support] page for information on Rust's platform support. - Added support for the `thumbv7neon-linux-androideabi` and `thumbv7neon-unknown-linux-gnueabihf` targets. - Added support for the `x86_64-unknown-uefi` target. + Libraries - The methods `overflowing_{add, sub, mul, shl, shr}` are now `const` functions for all numeric types. - The methods `rotate_left`, `rotate_right`, and `wrapping_{add, sub, mul, shl, shr}` are now `const` functions for all numeric types. - The methods `is_positive` and `is_negative` are now `const` functions for all signed numeric types. - The `get` method for all `NonZero` types is now `const`. - The methods `count_ones`, `count_zeros`, `leading_zeros`, `trailing_zeros`, `swap_bytes`, `from_be`, `from_le`, `to_be`, `to_le` are now `const` for all numeric types. - Ipv4Addr::new` is now a `const` function + Stabilized APIs - unix::FileExt::read_exact_at - unix::FileExt::write_all_at - Option::transpose - Result::transpose - convert::identity - pin::Pin - marker::Unpin - marker::PhantomPinned - Vec::resize_with - VecDeque::resize_with - Duration::as_millis - Duration::as_micros - Duration::as_nanos + Cargo - Cargo should now rebuild a crate if a file was modified during the initial build.][cargo/6484] + Compatibility Notes - The methods `str::{trim_left, trim_right, trim_left_matches, trim_right_matches}` are now deprecated in the standard library, and their usage will now produce a warning. Please use the `str::{trim_start, trim_end, trim_start_matches, trim_end_matches}` methods instead.- Bump minimum LLVM to 7.0 - Add conditions to build SLE versions with bundled libgit2 and libssh2- Use cmake3, not cmake, in SLE-12 SP2 and earlier. The stock cmake package there was 2.x, and building llvm requires cmake 3.5.- Use same version bootstrap as package source - Fixes to build with correct LLVM for SLE and Leap releases- Move export vars directly to where used. - Change codegen units to 2 for Arm and x86 builds in attempt to reduce memory use by LLVM.- Put each exported environment variable in a separate line so the specfile will work on SLE SP0/SP1/SP2.- Avoid bash-specific syntax in "test" call.- Fix bootstrap conditionals - Fix bundled_llvm conditionals - Don't build stage0 if compiler used to build package is the same version as package- Ensure install environment is the same as build environment to prevent building everything twice (second time without correct flags).- Remove CVE-2018-1000622-prevent-rustdoc-loads-uncontrolled-plugins-path.patch, since rustdoc plugins are fixed since version 1.27.1 (bsc#1100691, CVE-2018-1000622).- Update to version 1.32.0 - Language + 2018 edition - You can now use the `?` operator in macro definitions. The `?` operator allows you to specify zero or one repetitions similar to the `*` and `+` operators. - Module paths with no leading keyword like `super`, `self`, or `crate`, will now always resolve to the item (`enum`, `struct`, etc.) available in the module if present, before resolving to a external crate or an item the prelude. E.g. enum Color { Red, Green, Blue } use Color::*; + All editions - You can now match against `PhantomData` types. - You can now match against literals in macros with the `literal` specifier. This will match against a literal of any type. E.g. `1`, `'A'`, `"Hello World"` - Self can now be used as a constructor and pattern for unit and tuple structs. E.g. struct Point(i32, i32); impl Point { pub fn new(x: i32, y: i32) -> Self { Self(x, y) } pub fn is_origin(&self) -> bool { match self { Self(0, 0) => true, _ => false, } } } - Self can also now be used in type definitions. E.g. enum List where Self: PartialOrd // can write `Self` instead of `List` { Nil, Cons(T, Box) // likewise here } - You can now mark traits with `#[must_use]`. This provides a warning if a `impl Trait` or `dyn Trait` is returned and unused in the program. - Compiler + The default allocator has changed from jemalloc to the default allocator on your system. The compiler itself on Linux & macOS will still use jemalloc, but programs compiled with it will use the system allocator. + Added the `aarch64-pc-windows-msvc` target. - Libraries + `PathBuf` now implements `FromStr`. - `Box<[T]>` now implements `FromIterator`. - The `dbg!` macro has been stabilized. This macro enables you to easily debug expressions in your rust program. E.g. let a = 2; let b = dbg!(a * 2) + 1; // ^-- prints: [src/main.rs:4] a * 2 = 4 assert_eq!(b, 5); + The following APIs are now `const` functions and can be used in a `const` context. - `Cell::as_ptr` - `UnsafeCell::get` - `char::is_ascii` - `iter::empty` - `ManuallyDrop::new` - `ManuallyDrop::into_inner` - `RangeInclusive::start` - `RangeInclusive::end` - `NonNull::as_ptr` - `slice::as_ptr` - `str::as_ptr` - `Duration::as_secs` - `Duration::subsec_millis` - `Duration::subsec_micros` - `Duration::subsec_nanos` - `CStr::as_ptr` - `Ipv4Addr::is_unspecified` - `Ipv6Addr::new` - `Ipv6Addr::octets` - Stabilized APIs + `i8::to_be_bytes` + `i8::to_le_bytes` + `i8::to_ne_bytes` + `i8::from_be_bytes` + `i8::from_le_bytes` + `i8::from_ne_bytes` + `i16::to_be_bytes` + `i16::to_le_bytes` + `i16::to_ne_bytes` + `i16::from_be_bytes` + `i16::from_le_bytes` + `i16::from_ne_bytes` + `i32::to_be_bytes` + `i32::to_le_bytes` + `i32::to_ne_bytes` + `i32::from_be_bytes` + `i32::from_le_bytes` + `i32::from_ne_bytes` + `i64::to_be_bytes` + `i64::to_le_bytes` + `i64::to_ne_bytes` + `i64::from_be_bytes` + `i64::from_le_bytes` + `i64::from_ne_bytes` + `i128::to_be_bytes` + `i128::to_le_bytes` + `i128::to_ne_bytes` + `i128::from_be_bytes` + `i128::from_le_bytes` + `i128::from_ne_bytes` + `isize::to_be_bytes` + `isize::to_le_bytes` + `isize::to_ne_bytes` + `isize::from_be_bytes` + `isize::from_le_bytes` + `isize::from_ne_bytes` + `u8::to_be_bytes` + `u8::to_le_bytes` + `u8::to_ne_bytes` + `u8::from_be_bytes` + `u8::from_le_bytes` + `u8::from_ne_bytes` + `u16::to_be_bytes` + `u16::to_le_bytes` + `u16::to_ne_bytes` + `u16::from_be_bytes` + `u16::from_le_bytes` + `u16::from_ne_bytes` + `u32::to_be_bytes` + `u32::to_le_bytes` + `u32::to_ne_bytes` + `u32::from_be_bytes` + `u32::from_le_bytes` + `u32::from_ne_bytes` + `u64::to_be_bytes` + `u64::to_le_bytes` + `u64::to_ne_bytes` + `u64::from_be_bytes` + `u64::from_le_bytes` + `u64::from_ne_bytes` + `u128::to_be_bytes` + `u128::to_le_bytes` + `u128::to_ne_bytes` + `u128::from_be_bytes` + `u128::from_le_bytes` + `u128::from_ne_bytes` + `usize::to_be_bytes` + `usize::to_le_bytes` + `usize::to_ne_bytes` + `usize::from_be_bytes` + `usize::from_le_bytes` + `usize::from_ne_bytes` - Cargo + You can now run `cargo c` as an alias for `cargo check`.][cargo/6218] + Usernames are now allowed in alt registry URLs.][cargo/6242] - Misc + `libproc_macro` has been added to the `rust-src` distribution. - Compatibility Notes + The argument types for AVX's `_mm256_stream_si256`, `_mm256_stream_pd`, `_mm256_stream_ps` have been changed from `*const` to `*mut` as the previous implementation was unsound.- Update to version 1.31.1 + Fix Rust failing to build on `powerpc-unknown-netbsd` + Fix broken go-to-definition in RLS + Fix infinite loop on hover in RLS- Update to version 1.31.0 + Language - This version marks the release of the 2018 edition of Rust. - New lifetime elision rules now allow for eliding lifetimes in functions and impl headers. E.g. `impl<'a> Reader for BufReader<'a> {}` can now be `impl Reader for BufReader<'_> {}`. Lifetimes are still required to be defined in structs. - You can now define and use `const` functions. These are currently a strict minimal subset of the const fn RFC. Refer to the [language reference][const-reference] for what exactly is available. - You can now use tool lints, which allow you to scope lints from external tools using attributes. E.g. `#[allow(clippy::filter_map)]`. - `#[no_mangle]` and `#[export_name]` attributes can now be located anywhere in a crate, not just in exported functions. - You can now use parentheses in pattern matches. + Compiler - Updated musl to 1.1.20 + Libraries - You can now convert `num::NonZero*` types to their raw equivalvents using the `From` trait. E.g. `u8` now implements `From`. - You can now convert a `&Option` into `Option<&T>` and `&mut Option` into `Option<&mut T>` using the `From` trait. - You can now multiply (`*`) a `time::Duration` by a `u32`. + Stabilized APIs - `slice::align_to` - `slice::align_to_mut` - `slice::chunks_exact` - `slice::chunks_exact_mut` - `slice::rchunks` - `slice::rchunks_mut` - `slice::rchunks_exact` - `slice::rchunks_exact_mut` - `Option::replace` + Cargo - Cargo will now download crates in parallel using HTTP/2. - You can now rename packages in your Cargo.toml We have a guide on how to use the `package` key in your dependencies.- Add additional Requires to rls: + Requires rust-src + Requires rust-analysis - Add additional Requires to rustfmt: + Requires cargo - Fix rust-src requiring /usr/bin/bash; a script was incorrectly edited at build time.- Set the bootstrap flag in the spec file temporarily so that rings will build rust without intervention. Must be reverted once all releases are successful.- Add Provides/Obsoletes/Conflicts to rust-std-static and cargo- Strengthen the dependency on rust-std-static to Requires to fix crate package builds in OBS - Use standard form rich dependencies for SUSE Linux 15 and newer- Fix second-person language and spellos.- Add ignore-Wstring-conversion.patch: we require patching of src/librustc_llvm/build.rs to ignore a flag that llvm-config --cxxflags outputs which GCC doesn't recognise. - Default to building using the distro LLVM where the version is >= 5.0, instead of the Rust bundled LLVM which requires compilation. This should decrease build times. SLE LLVM is too old.- Fixing various rpmlint warnings and errors: + ExclusiveArch instead of BuildArch for i686 + Remove conflicts with same package name + Remove a few hidden files during prep, does not touch '.clang-format' + Remove old patch macro in comment + Fix lint warning about bash and zsh completition files + Fix various script shebang warnings (incorrect or missing) + Adjust rpmlintrc to mask some 'invalid' warnings - Move Rust and its tools in to their own category under: + Development/Languages/Rust- Jump from version 1.26.2 to 1.30.0 due to a build issue with using 1.26.x to compile 1.27.x. This package release requires %{rust_bootstrap} to be set. - Enable extra rust tools to be built (cargo, rls, rustfmt, analysis) + cargo is now packaged with the same version number as the rust release, this may break any packages that relied on a cargo version number. - Remove ccache and ninja from BuildRequires. - Switch build configuration to use configure script, remove config.toml. - Include all bootstraps in source rpm to make bootstrapping easier to manage within OBS. - Remove unused patch: update-config-guess.patch Update to version 1.30.0 (2018-10-25) + Language - Procedural macros are now available.- These kinds of macros allow for more powerful code generation. There is a new chapter available in the Rust Programming Language book that goes further in depth. - You can now use keywords as identifiers using the raw identifiers syntax (`r#`),- e.g. `let r#for = true;` - Using anonymous parameters in traits is now deprecated with a warning and will be a hard error in the 2018 edition.- - You can now use `crate` in paths.- This allows you to refer to the crate root in the path, e.g. `use crate::foo;` refers to `foo` in `src/lib.rs`. - Using a external crate no longer requires being prefixed with `::`.- Previously, using a external crate in a module without a use statement required `let json = ::serde_json::from_str(foo);` but can now be written as `let json = serde_json::from_str(foo);`. - You can now apply the `#[used]` attribute to static items to prevent the compiler from optimising them away, even if they appear to be unused,- e.g. `#[used] static FOO: u32 = 1;` - You can now import and reexport macros from other crates with the `use` syntax.- Macros exported with `#[macro_export]` are now placed into the root module of the crate. If your macro relies on calling other local macros, it is recommended to export with the `#[macro_export(local_inner_macros)]` attribute so users won't have to import those macros. - You can now catch visibility keywords (e.g. `pub`, `pub(crate)`) in macros using the `vis` specifier.- - Non-macro attributes now allow all forms of literals, not just strings.- Previously, you would write `#[attr("true")]`, and you can now write `#[attr(true)]`. - You can now specify a function to handle a panic in the Rust runtime with the `#[panic_handler]` attribute.- + Compiler - Added the `riscv32imc-unknown-none-elf` target.- - Added the `aarch64-unknown-netbsd` target- + Libraries - `ManuallyDrop` now allows the inner type to be unsized.- + Stabilized APIs - `Ipv4Addr::BROADCAST` - `Ipv4Addr::LOCALHOST` - `Ipv4Addr::UNSPECIFIED` - `Ipv6Addr::LOCALHOST` - `Ipv6Addr::UNSPECIFIED` - `Iterator::find_map` - The following methods are replacement methods for `trim_left`, `trim_right`, `trim_left_matches`, and `trim_right_matches`, which will be deprecated in 1.33.0: + `str::trim_end_matches` + `str::trim_end` + `str::trim_start_matches` + `str::trim_start` + Cargo - `cargo run` doesn't require specifying a package in workspaces.][cargo/5877] - `cargo doc` now supports `--message-format=json`.][cargo/5878] This is equivalent to calling `rustdoc --error-format=json`. - Cargo will now provide a progress bar for builds.][cargo/5995] + Misc - `rustdoc` allows you to specify what edition to treat your code as with the `--edition` option.- - `rustdoc` now has the `--color` (specify whether to output color) and `--error-format` (specify error format, e.g. `json`) options.- - We now distribute a `rust-gdbgui` script that invokes `gdbgui` with Rust debug symbols.- - Attributes from Rust tools such as `rustfmt` or `clippy` are now available,- e.g. `#[rustfmt::skip]` will skip formatting the next item. - Update to version 1.29.2 (2018-10-11) + Workaround for an aliasing-related LLVM bug, which caused miscompilation. + The `rls-preview` component on the windows-gnu targets has been restored. - Update to version 1.29.1 (2018-09-25) + Security Notes - The standard library's `str::repeat` function contained an out of bounds write caused by an integer overflow. This has been fixed by deterministically panicking when an overflow happens. - Update to version 1.29.0 (2018-09-13) + Compiler - Bumped minimum LLVM version to 5.0. - Added `powerpc64le-unknown-linux-musl` target. - Added `aarch64-unknown-hermit` and `x86_64-unknown-hermit` targets. + Libraries - `Once::call_once` no longer requires `Once` to be `'static`. - `BuildHasherDefault` now implements `PartialEq` and `Eq`. - `Box`, `Box`, and `Box` now implement `Clone`. - Implemented `PartialEq<&str>` for `OsString` and `PartialEq` for `&str`. - `Cell` now allows `T` to be unsized. - `SocketAddr` is now stable on Redox. + Stabilized APIs - `Arc::downcast` - `Iterator::flatten` - `Rc::downcast` + Cargo - Cargo can silently fix some bad lockfiles.][cargo/5831] You can use `--locked` to disable this behavior. - `cargo-install` will now allow you to cross compile an install using `--target`.][cargo/5614] - Added the `cargo-fix` subcommand to automatically move project code from 2015 edition to 2018.][cargo/5723] - `cargo doc` can now optionally document private types using the `--document-private-items` flag.][cargo/5543] + Misc - `rustdoc` now has the `--cap-lints` option which demotes all lints above the specified level to that level. For example `--cap-lints warn` will demote `deny` and `forbid` lints to `warn`. - `rustc` and `rustdoc` will now have the exit code of `1` if compilation fails and `101` if there is a panic. - A preview of clippy has been made available through rustup. You can install the preview with `rustup component add clippy-preview`. + Compatibility Notes - `str::{slice_unchecked, slice_unchecked_mut}` are now deprecated. Use `str::get_unchecked(begin..end)` instead. - `std::env::home_dir` is now deprecated for its unintuitive behavior. Consider using the `home_dir` function from https://crates.io/crates/dirs instead. - `rustc` will no longer silently ignore invalid data in target spec. - `cfg` attributes and `--cfg` command line flags are now more strictly validated. - Update to version 1.28.0 + Language - The `#[repr(transparent)]` attribute is now stable.- This attribute allows a Rust newtype wrapper (`struct NewType(T);`) to be represented as the inner type across Foreign Function Interface (FFI) boundaries. - The keywords `pure`, `sizeof`, `alignof`, and `offsetof` have been unreserved and can now be used as identifiers.- - The `GlobalAlloc` trait and `#[global_allocator]` attribute are now stable.- This will allow users to specify a global allocator for their program. - Unit test functions marked with the `#[test]` attribute can now return `Result<(), E: Debug>` in addition to `()`.- - The `lifetime` specifier for `macro_rules!` is now stable.- This allows macros to easily target lifetimes. + Compiler - The `s` and `z` optimisation levels are now stable.- These optimisations prioritise making smaller binary sizes. `z` is the same as `s` with the exception that it does not vectorise loops, which typically results in an even smaller binary. - The short error format is now stable.- Specified with `--error-format=short` this option will provide a more compressed output of rust error messages. - Added a lint warning when you have duplicated `macro_export`s.- - Reduced the number of allocations in the macro parser.- This can improve compile times of macro heavy crates on average by 5%. + Libraries - Implemented `Default` for `&mut str`.- - Implemented `From` for all integer and unsigned number types.- - Implemented `Extend` for `()`.- - The `Debug` implementation of `time::Duration` should now be more easily human readable.- Previously a `Duration` of one second would printed as `Duration { secs: 1, nanos: 0 }` and will now be printed as `1s`. - Implemented `From<&String>` for `Cow`, `From<&Vec>` for `Cow<[T]>`, `From>` for `CString`, `From, From, From<&CString>` for `Cow`, `From, From, From<&OsString>` for `Cow`, `From<&PathBuf>` for `Cow`, and `From>` for `PathBuf`.- - Implemented `Shl` and `Shr` for `Wrapping` and `Wrapping`.- - `DirEntry::metadata` now uses `fstatat` instead of `lstat` when possible.- This can provide up to a 40% speed increase. - Improved error messages when using `format!`.- + Stabilized APIs - `Iterator::step_by` - `Path::ancestors` - `SystemTime::UNIX_EPOCH` - `alloc::GlobalAlloc` - `alloc::Layout` - `alloc::LayoutErr` - `alloc::System` - `alloc::alloc` - `alloc::alloc_zeroed` - `alloc::dealloc` - `alloc::realloc` - `alloc::handle_alloc_error` - `btree_map::Entry::or_default` - `fmt::Alignment` - `hash_map::Entry::or_default` - `iter::repeat_with` - `num::NonZeroUsize` - `num::NonZeroU128` - `num::NonZeroU16` - `num::NonZeroU32` - `num::NonZeroU64` - `num::NonZeroU8` - `ops::RangeBounds` - `slice::SliceIndex` - `slice::from_mut` - `slice::from_ref` - `{Any + Send + Sync}::downcast_mut` - `{Any + Send + Sync}::downcast_ref` - `{Any + Send + Sync}::is` + Cargo - Cargo will now no longer allow you to publish crates with build scripts that modify the `src` directory.][cargo/5584] The `src` directory in a crate should be considered to be immutable. + Misc - The `suggestion_applicability` field in `rustc`'s json output is now stable.- This will allow dev tools to check whether a code suggestion would apply to them. + Compatibility Notes - Rust will consider trait objects with duplicated constraints to be the same type as without the duplicated constraint.- For example the below code will now fail to compile. ```rust trait Trait {} impl Trait + Send { fn test(&self) { println!("one"); } //~ ERROR duplicate definitions with name `test` } impl Trait + Send + Send { fn test(&self) { println!("two"); } } - Update to version 1.27.2: + Compatibility Notes - The borrow checker was fixed to avoid an additional potential unsoundness when using match ergonomics - Update to version 1.27.1: + Security Notes - rustdoc would execute plugins in the /tmp/rustdoc/plugins directory when running, which enabled executing code as some other user on a given machine. This release fixes that vulnerability; you can read more about this on the blog. The associated CVE is [CVE-2018-1000622]. Thank you to Red Hat for responsibily disclosing this vulnerability to us. + Compatibility Notes - The borrow checker was fixed to avoid an additional potential unsoundness when using match ergonomics - Update to version 1.27.0: + Language - Removed 'proc' from the reserved keywords list. This allows `proc` to be used as an identifier. - The dyn syntax is now available. This syntax is equivalent to the bare `Trait` syntax, and should make it clearer when being used in tandem with `impl Trait` because it is equivalent to the following syntax: `&Trait == &dyn Trait`, `&mut Trait == &mut dyn Trait`, and `Box == Box`. - Attributes on generic parameters such as types and lifetimes are now stable. e.g. `fn foo<#[lifetime_attr] 'a, #[type_attr] T: 'a>() {}` - The `#[must_use]` attribute can now also be used on functions as well as types. It provides a lint that by default warns users when the value returned by a function has not been used. + Compiler - Added the `armvte-unknown-linux-musleabi` target. + Libraries - SIMD (Single Instruction Multiple Data) on x/x_ is now stable. This includes arch::x & arch::x_ modules which contain SIMD intrinsics, a new macro called `is_x_feature_detected!`, the `#[target_feature(enable="")]` attribute, and adding `target_feature = ""` to the `cfg` attribute. - A lot of methods for `[u]`, `f`, and `f` previously only available in std are now available in core. - The generic `Rhs` type parameter on `ops::{Shl, ShlAssign, Shr}` now defaults to `Self`. - std::str::replace` now has the `#[must_use]` attribute to clarify that the operation isn't done in place. - Clone::clone`, `Iterator::collect`, and `ToOwned::to_owned` now have the `#[must_use]` attribute] to warn about unused potentially expensive allocations. + Stabilized APIs - DoubleEndedIterator::rfind - DoubleEndedIterator::rfold - DoubleEndedIterator::try_rfold - Duration::from_micros - Duration::from_nanos - Duration::subsec_micros - Duration::subsec_millis - HashMap::remove_entry - Iterator::try_fold - Iterator::try_for_each - NonNull::cast - Option::filter - String::replace_range - Take::set_limit - hint::unreachable_unchecked - os::unix::process::parent_id - ptr::swap_nonoverlapping - slice::rsplit_mut - slice::rsplit - slice::swap_with_slice + Cargo - `cargo-metadata` now includes `authors`, `categories`, `keywords`, `readme`, and `repository` fields. - `cargo-metadata` now includes a package's `metadata` table. - Added the `--target-dir` optional argument. This allows you to specify a different directory than `target` for placing compilation artifacts. - Cargo will be adding automatic target inference for binaries, benchmarks, examples, and tests in the Rust 2018 edition. If your project specifies specific targets, e.g. using `[[bin]]`, and have other binaries in locations where cargo would infer a binary, Cargo will produce a warning. You can disable this feature ahead of time by setting any of the following to false: `autobins`, `autobenches`, `autoexamples`, `autotests`. - Cargo will now cache compiler information. This can be disabled by setting `CARGO_CACHE_RUSTC_INFO=0` in your environment. + Compatibility Notes - Calling a `CharExt` or `StrExt` method directly on core will no longer work. e.g. `::core::prelude::v1::StrExt::is_empty("")` will not compile, `"".is_empty()` will still compile. - `Debug` output on `atomic::{AtomicBool, AtomicIsize, AtomicPtr, AtomicUsize}` will only print the inner type. E.g. `print!("{:?}", AtomicBool::new(true))` will print `true`, not `AtomicBool(true)`. - The maximum number for `repr(align(N))` is now 2²⁹. Previously you could enter higher numbers but they were not supported by LLVM. Up to 512MB alignment should cover all use cases. - The `.description()` method on the `std::error::Error` trait has been soft-deprecated. It is no longer required to implement it. + Misc - Added “The Rustc book” into the official documentation.- Add CVE-2018-1000622-prevent-rustdoc-loads-uncontrolled-plugins-path.patch: + This patch consists of requiring `--plugin-path` to be passed whenever `--plugin` is passed + rustdoc plugins will be removed entirely on 1.28.0, we should drop this patch after 1.28.0(bsc#1100691, CVE-2018-1000622).- Ship rust-std on SLE-15 (bsc#1096945) No new changes came with this update of rust.- Update to version 1.26.2: + Compatibility Notes - The borrow checker was fixed to avoid unsoundness when using match ergonomics - Update to version 1.26.1: + Tools - RLS now works on Windows - Rustfmt stopped badly formatting text in some cases + Compatibility Notes - `fn main() -> impl Trait` no longer works for non-Termination trait This reverts an accidental stabilization - `NaN > NaN` no longer returns true in const-fn contexts - Prohibit using turbofish for `impl Trait` in method arguments- Update to version 1.26.0: + Language: - Closures now implement `Copy` and/or `Clone` if all captured variables implement either or both traits. - The inclusive range syntax is now stable. - Stablise `'_`. The underscore lifetime can be used anywhere where a lifetime can be elided. - `impl Trait` is now stable allowing you to have abstract types in returns or in function parameters. - Pattern matching will now automatically apply dereferences. - 128-bit integers in the form of `u128` and `i128` are now stable. - `main` can now return `Result<(), E: Debug>` in addition to `()`. - A lot of operations are now available in a const context. - Fixed entry slice patterns are now stable. e.g. + Compiler: - LLD is now used as the default linker for `wasm32-unknown-\ unknown`. - Fixed exponential projection complexity on nested types. This can provide up to a ~12% reduction in compile times for certain crates. - Added the `--remap-path-prefix` option to rustc. Allowing you to remap path prefixes outputted by the compiler. + Libraries: - Implemented `From for usize & From<{u8, i16}> for isize`. - Added hexadecimal formatting for integers with fmt::Debug. - Implemented `Default, Hash` for `cmp::Reverse`. - Optimized `str::repeat` being 8x faster in large cases. - `ascii::escape_default` is now available in libcore. - Trailing commas are now supported in std and core macros. - Implemented `Copy, Clone` for `cmp::Reverse`. - Implemented `Clone` for `char::{ToLowercase, ToUppercase}`. + Stabilized APIs: *const T::add, * const T::copy_to_nonoverlapping, *const T::copy_to, * const T::read_unaligned, *const T::read_volatile, * const T::read, *const T::sub, *const T::wrapping_add, * const T::wrapping_sub, *mut T::add, *mut T::copy_to, * mut T::copy_to_nonoverlapping, *mut T::read_unaligned, * mut T::read_volatile, *mut T::read, mut T::replace, * mut T::sub, *mut T::swap, *mut T::wrapping_add, * mut T::wrapping_sub, *mut T::write_bytes, * mut T::write_unaligned, *mut T::write_volatile, * mut T::write, Box::leak, FromUtf8Error::as_bytes, LocalKey::try_with, Option::cloned, iter::FusedIterator, btree_map::Entry::and_modify, s::read_to_string, fs::read, fs::write, hash_map::Entry::and_modify, String::retain, ops::RangeInclusive, ops::RangeToInclusive, process::id, slice::rotate_left, slice::rotate_right. + Compatibility Notes: - Aliasing a `Fn` trait as `dyn` no longer works. - The result of dereferences are no longer promoted to `'static`. - Deprecate `AsciiExt` trait in favor of inherent methods. - `".e0"` will now no longer parse as `0.0` and will instead cause an error. - Removed hoedown from rustdoc. - Bounds on higher-kinded lifetimes a hard error. - Update cargo_version to 0.26.0.- Patch disabled * update-config-guess.patch - Update to 1.25.0 - Language changes: + Stabilised `#[repr(align(x))]`.[47006] [RFC 1358] + You can now use nested groups of imports.[47948] e.g. `use std::{fs::File, io::Read, path::{Path, PathBuf}};` + You can now have `|` at the start of a match arm.[47947] e.g. - Compiler changes: + Upgraded to LLVM 6.[47828] + Added `-C lto=val` option.[47521] + Added `i586-unknown-linux-musl` target[47282] - Library changes: + Impl Send for `process::Command` on Unix.[47760] + Impl PartialEq and Eq for `ParseCharError`.[47790] + `UnsafeCell::into_inner` is now safe.[47204] + Implement libstd for CloudABI.[47268] + `Float::{from_bits, to_bits}` is now available in libcore.[46931] + Implement `AsRef` for Component[46985] + Implemented `Write` for `Cursor<&mut Vec>`[46830] + Moved `Duration` to libcore.[46666] - Stabilized APIs + `Location::column` + `ptr::NonNull` - Misc + Rust by example is now shipped with new releases[46196] - Compatibility Notes: + Deprecated `net::lookup_host`.[47510] + `rustdoc` has switched to pulldown as the default markdown renderer.[47398] + The borrow checker was sometimes incorrectly permitting overlapping borrows around indexing operations (see [#47349][47349]). This has been fixed (which also enabled some correct code that used to cause errors (e.g. [#33903][33903] and [#46095][46095]). + Removed deprecated unstable attribute `#[simd]`.[47251]- Update to 1.24.1 + Do not abort when unwinding through FFI + Make the error index generator work again - Update Cargo to v0.25.0- Update to 1.24.0 - Language changes: + External `sysv64` ffi is now available. eg. `extern "sysv64" fn foo () {}` - Compiler changes: + rustc now uses 16 codegen units by default for release builds. For the fastest builds, utilize `codegen-units=1`. - Libraries: + `str::find::` now uses memchr. This should lead to a 10x improvement in performance in the majority of cases. + `time::{SystemTime, Instant}` now implement `Hash`. + impl `From` for `AtomicBool` + impl `From<{CString, &CStr}>` for `{Arc, Rc}` + impl `From<{OsString, &OsStr}>` for `{Arc, Rc}` + impl `From<{PathBuf, &Path}>` for `{Arc, Rc}` + float::from_bits now just uses transmute. This provides some optimisations from LLVM. + Copied `AsciiExt` methods onto `char` + Remove `T: Sized` requirement on `ptr::is_null()` + impl `From` for `{TryRecvError, RecvTimeoutError}` + Optimised `f32::{min, max}` to generate more efficient x86 assembly + `[u8]::contains` now uses memchr which provides a 3x speed improvement - Compatibility Notes: + Floating point types `Debug` impl now always prints a decimal point. + `Ipv6Addr` now rejects superfluous `::`'s in IPv6 addresses This is in accordance with IETF RFC 4291 §2.2. + Unwinding will no longer go past FFI boundaries, and will instead abort. + `Formatter::flags` method is now deprecated. The `sign_plus`, `sign_minus`, `alternate`, and `sign_aware_zero_pad` should be used instead. + Leading zeros in tuple struct members is now an error + `column!()` macro is one-based instead of zero-based + `fmt::Arguments` can no longer be shared across threads + Access to `#[repr(packed)]` struct fields is now unsafe + Cargo sets a different working directory for the compiler- add update-config-guess.patch to update config.* from GNU to support riscv64 without rpm patching it - as the patch also updates the checksums while rpm does not- Format with spec-cleaner - Use python3 to run the install/build script as python2 is being phased out - State exclusivearch for all of ix86 and then specify we build as i686 which is bit more obvious- Update Cargo to v0.24.0- Add "Requires: %{name} to derived packages to fix derived packages not being updated with rust (boo#1075883)- Update to 1.23.0 - Language changes: + Arbitrary `auto` traits are now permitted in trait objects.[45772] + rustc now uses subtyping on the left hand side of binary operations.[45435] Which should fix some confusing errors in some operations. - Compiler changes: + Enabled `TrapUnreachable` in LLVM which should mitigate the impact of undefined behaviour.[45920] + rustc now suggests renaming import if names clash.[45660] + Display errors/warnings correctly when there are zero-width or wide characters.[45711] + rustc now avoids unnecessary copies of arguments that are simple bindings[45380] This should improve memory usage on average by 5-10%. + Updated musl used to build musl rustc to 1.1.17[45393] - Library changes: + Allow a trailing comma in `assert_eq/ne` macro[45887] + Implement Hash for raw pointers to unsized types[45483] + impl `From<*mut T>` for `AtomicPtr`[45610] + impl `From` for `AtomicUsize/AtomicIsize`.[45610] + Removed the `T: Sync` requirement for `RwLock: Send`[45267] + Removed `T: Sized` requirement for `{<*const T>, <*mut T>}::as_ref` an `<*mut T>::as_mut`[44932] + Optimized `Thread::{park, unpark}` implementation[45524] + Improved `SliceExt::binary_search` performance.[45333] + impl `FromIterator<()>` for `()`[45379] + Copied `AsciiExt` trait methods to primitive types.[44042] Use of `AsciiExt` is now deprecated. - Misc changes: + Releases now ship with the Cargo book documentation.[45692] + rustdoc now prints rendering warnings on every run.[45324] + Release tarballs now come with rustfmt[45903] - Compatibility Notes: + Changes have been made to type equality to make it more correct, in rare cases this could break some code.[45853] [Tracking issue for further information[45852] + `char::escape_debug` now uses Unicode 10 over 9.[45571] + Upgraded Android SDK to 27, and NDK to r15c.[45580] This drops support for Android 9, the minimum supported version is Android 14. + Bumped the minimum LLVM to 3.9[45326]- Update to v1.22.1 - Update Cargo to fix an issue with macOS 10.13 "High Sierra"- Update to v1.22.0 - Language changes: + `non_snake_case` lint now allows extern no-mangle functions + Now accepts underscores in unicode escapes + `T op= &T` now works for numeric types. eg. `let mut x = 2; x += &8;` + types that impl `Drop` are now allowed in `const` and `static` types - Compiler changes: + rustc now defaults to having 16 codegen units at debug on supported platforms + rustc will no longer inline in codegen units when compiling for debug This should decrease compile times for debug builds. + strict memory alignment now enabled on ARMv6 + Remove support for the PNaCl target `le32-unknown-nacl` - Librarie changes + Allow atomic operations up to 32 bits on `armv5te_unknown_linux_gnueabi` + `Box` now impls `From>` + `std::mem::Discriminant` is now guaranteed to be `Send + Sync` + `fs::copy` now returns the length of the main stream on NTFS. + Properly detect overflow in `Instant += Duration`. + impl `Hasher` for `{&mut Hasher, Box}` + impl `fmt::Debug` for `SplitWhitespace`.][44303] + `Option` now impls `Try`. This allows for using `?` with `Option` types. - Misc + `libbacktrace` is now available on Apple platforms. + Stabilised the `compile_fail` attribute for code fences in doc-comments. This now lets you specify that a given code example will fail to compile. - Compatibility Notes + The minimum Android version that rustc can build for has been bumped to `4.0` from `2.3` + Allowing `T op= &T` for numeric types has broken some type inference cases - Remove rust-1.21.0-44203-exclude-compiler-rt-test.patch - Remove rust-1.21.0-44066-ppc64-struct-abi.patch - Remove rust-1.21.0-44440-s390x-global-align.patch- Large cleanup of both the spec and config.toml to correct many build issues for the new version- Add rust-1.21.0-44203-exclude-compiler-rt-test.patch - Add rust-1.21.0-44066-ppc64-struct-abi.patch - Add rust-1.21.0-44440-s390x-global-align.patch - Remove add-soname.patch- Update to 1.21.0 - Language changes: + You can now use static references for literals. + Relaxed path syntax. Optional `::` before `<` is now allowed in all contexts. - Compiler changes: + Upgraded jemalloc to 4.5.0[43911] + Enabled unwinding panics on Redox[43917] + Now runs LLVM in parallel during translation phase.[43506] - Librarie changes: + Generate builtin impls for `Clone` for all arrays and tuples that are `T: Clone`[43690] +`Stdin`, `Stdout`, and `Stderr` now implement `AsRawFd`.[43459] + `Rc` and `Arc` now implement `From<&[T]> where T: Clone`, `From`, `From`, `From> where T: ?Sized`, and `From>`.[42565] - Stabilized APIs +`std::mem::discriminant` - Update add-soname.patch to apply cleanly- Force enable rust bootstrap so that missing architectures build- set minimum cmake version- Update to version 1.20.0 - Remove x86 from build targets - Language + [Associated constants are now stabilised.][42809] + [A lot of macro bugs are now fixed.][42913] - Compiler + [Struct fields are now properly coerced to the expected field type.][42807] + [Enabled wasm LLVM backend][42571] WASM can now be built with the `wasm32-experimental-emscripten` target. + [Changed some of the error messages to be more helpful.][42033] + [Add support for RELRO(RELocation Read-Only) for platforms that support it.][43170] + [rustc now reports the total number of errors on compilation failure][43015] previously this was only the number of errors in the pass that failed. + [Expansion in rustc has been sped up 29x.][42533] + [added `msp430-none-elf` target.][43099] + [rustc will now suggest one-argument enum variant to fix type mismatch when applicable][43178] + [Fixes backtraces on Redox][43228] + [rustc now identifies different versions of same crate when absolute paths of different types match in an error message.][42826] - Libraries + [Relaxed Debug constraints on `{HashMap,BTreeMap}::{Keys,Values}`.][42854] + [Impl `PartialEq`, `Eq`, `PartialOrd`, `Ord`, `Debug`, `Hash` for unsized tuples.][43011] + [Impl `fmt::{Display, Debug}` for `Ref`, `RefMut`, `MutexGuard`, `RwLockReadGuard`, `RwLockWriteGuard`][42822] + [Impl `Clone` for `DefaultHasher`.][42799] + [Impl `Sync` for `SyncSender`.][42397] + [Impl `FromStr` for `char`][42271] + [Fixed how `{f32, f64}::{is_sign_negative, is_sign_positive}` handles NaN.][42431] + [allow messages in the `unimplemented!()` macro.][42155] ie. `unimplemented!("Waiting for 1.21 to be stable")` + [`pub(restricted)` is now supported in the `thread_local!` macro.][43185] + [Upgrade to Unicode 10.0.0][42999] + [Reimplemented `{f32, f64}::{min, max}` in Rust instead of using CMath.][42430] + [Skip the main thread's manual stack guard on Linux][43072] + [Iterator::nth for `ops::{Range, RangeFrom}` is now done in O(1) time][43077] + [`#[repr(align(N))]` attribute max number is now 2^31 + 1.][43097] This was previously 2^15. + [`{OsStr, Path}::Display` now avoids allocations where possible][42613] - Compatibility Notes + [Functions with `'static` in their return types will now not be as usable as if they were using lifetime parameters instead.][42417] + [The reimplementation of `{f32, f64}::is_sign_{negative, positive}` now takes the sign of NaN into account where previously didn't.][42430]- adjust build process and add package for Rust source - clean-up of useless provides - add rpmlintrc- Update to version 1.19 - Language updates: + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506] For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`. + [Macro recursion limit increased to 1024 from 64.][41676] + [Added lint for detecting unused macros.][41907] + [`loop` can now return a value with `break`.][42016] [RFC 1624] For example: `let x = loop { break 7; };` + [C compatible `union`s are now available.][42068] [RFC 1444] They can only contain `Copy` types and cannot have a `Drop` implementation. Example: `union Foo { bar: u8, baz: usize }` + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558] Example: `let foo: fn(u8) -> u8 = |v: u8| { v };` - Compiler updates: + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370] + [Change `arm-linux-androideabi` to correspond to the `armeabi` official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI you should use `--target armv7-linux-androideabi`. + [Fixed ICE when removing a source file between compilation sessions.][41873] + [Minor optimisation of string operations.][42037] + [Compiler error message is now `aborting due to previous error(s)` instead of `aborting due to N previous errors`][42150] This was previously inaccurate and would only count certain kinds of errors. + [The compiler now supports Visual Studio 2017][42225] + [The compiler is now built against LLVM 4.0.1 by default][42948] + [Added a lot][42264] of [new error codes][42302] + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows libraries with C Run-time Libraries(CRT) to be statically linked. + [Fixed various ARM codegen bugs][42740] - Librarie updates: + [`String` now implements `FromIterator>` and `Extend>`][41449] + [`Vec` now implements `From<&mut [T]>`][41530] + [`Box<[u8]>` now implements `From>`][41258] + [`SplitWhitespace` now implements `Clone`][41659] + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now 1.5x faster][41764] + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!` macros, but for printing to stderr. - Stabilized APIs + [`OsString::shrink_to_fit`] + [`cmp::Reverse`] + [`Command::envs`] + [`thread::ThreadId`] - Misc + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the Windows Debugger. + [Rust will now release XZ compressed packages][rust-installer/57] + [rustup will now prefer to download rust packages with XZ compression][rustup/1100] over GZip packages. + [Added the ability to escape `#` in rust documentation][41785] By adding additional `#`'s ie. `##` is now `#` - Temporarily disable generation of compiler docs due to build issue- Change i586 build to produce i686 target instead of i586 so that x86 Firefox can be built with Rust.- Update to 1.18.0 -Language updates: + [Stabilize pub(restricted)][40556] `pub` can now accept amodule path to make the item visible to just that module tree. Also accepts the keyword `crate` to make something public to the whole crate but not users of the library. Example: `pub(crate) mod utils;`. [RFC 1422]. + [Stabilize `#![windows_subsystem]` attribute][40870] conservative exposure of the `/SUBSYSTEM` linker flag on Windows platforms. [RFC 1665]. + [Refactor of trait object type parsing][40043] Now `ty` in macros can accept types like `Write + Send`, trailing `+` are now supported in trait objects, and better error reporting for trait objects starting with `?Sized`. + [0e+10 is now a valid floating point literal][40589] + [Now warns if you bind a lifetime parameter to 'static][40734] + [Tuples, Enum variant fields, and structs with no `repr` attribute or with `#[repr(Rust)]` are reordered to minimize padding and produce a smaller representation in some cases.][40377] -Compiler updates + [rustc can now emit mir with `--emit mir`][39891] + [Improved LLVM IR for trivial functions][40367] + [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723] + [rustc compilation is now 15%-20% faster][41469] Thanks to optimisation opportunities found through profiling + [Improved backtrace formatting when panicking][38165] - Library updates: + [Specialized `Vec::from_iter` being passed `vec::IntoIter`][40731] if the iterator hasn't been advanced the original `Vec` is reassembled with no actual iteration or reallocation. + [Simplified HashMap Bucket interface][40561] provides performance improvements for iterating and cloning. + [Specialize Vec::from_elem to use calloc][40409] + [Fixed Race condition in fs::create_dir_all][39799] + [No longer caching stdio on Windows][40516] + [Optimized insertion sort in slice][40807] insertion sort in some cases 2.50%~ faster and in one case now 12.50% faster. + [Optimized `AtomicBool::fetch_nand`][41143] - Stabilized APIs: + [`Child::try_wait`] + [`HashMap::retain`] + [`HashSet::retain`] + [`PeekMut::pop`] + [`TcpStream::peek`] + [`UdpSocket::peek`] - Misc: + [rustdoc can now use pulldown-cmark with the `--enable-commonmark` flag][40338] + [Added rust-winbg script for better debugging on Windows][39983] + [Rust now uses the official cross compiler for NetBSD][40612] + [rustdoc now accepts `#` at the start of files][40828] + [Fixed jemalloc support for musl][41168] - Compatibility Notes: + [Changes to how the `0` flag works in format!][40241] Padding zeroes are now always placed after the sign if it exists and before the digits. With the `#` flag the zeroes are placed after the prefix and before the digits. + [Due to the struct field optimisation][40377], using `transmute` on structs that have no `repr` attribute or `#[repr(Rust)]` will no longer work. This has always been undefined behavior, but is now more likely to break in practice. + [The refactor of trait object type parsing][40043] fixed a bug where `+` was receiving the wrong priority parsing things like `&for<'a> Tr<'a> + Send` as `&(for<'a> Tr<'a> + Send)` instead of `(&for<'a> Tr<'a>) + Send` + [Overlapping inherent `impl`s are now a hard error][40728] + [`PartialOrd` and `Ord` must agree on the ordering.][41270] + [`rustc main.rs -o out --emit=asm,llvm-ir`][41085] Now will output `out.asm` and `out.ll` instead of only one of the filetypes. + [ calling a function that returns `Self` will no longer work][41805] when the size of `Self` cannot be statically determined. + [rustc now builds with a "pthreads" flavour of MinGW for Windows GNU][40805] this has caused a few regressions namely: + Changed the link order of local static/dynamic libraries (respecting the order on given rather than having the compiler reorder). + Changed how MinGW is linked, native code linked to dynamic libraries may require manually linking to the gcc support library (for the native code itself)- Adjustment of rust version dependency to prevent inability to build in the adi rings.- Add the cargo binaries for each arch, used for building rust only these are not shipped, and don't factor in to the final product.- Revert restriction of x86 arch to i586 for the interim.- Update to 1.17.0 - Language updates * [The compiler's `dead_code` lint now accounts for type aliases][38051]. * [Uninhabitable enums (those without any variants) no longer permit wildcard match patterns][38069] * [Clean up semantics of `self` in an import list][38313] * [`Self` may appear in `impl` headers][38920] * [`Self` may appear in struct expressions][39282] - Compiler updates * [`rustc` now supports `--emit=metadata`, which causes rustc to emit a `.rmeta` file containing only crate metadata][38571]. This can be used by tools like the Rust Language Service to perform metadata-only builds. * [Levenshtein based typo suggestions now work in most places, while previously they worked only for fields and sometimes for local variables][38927]. Together with the overhaul of "no resolution"/"unexpected resolution" errors (#[38154]) they result in large and systematic improvement in resolution diagnostics. * [Fix `transmute::` where `T` requires a bigger alignment than `U`][38670] * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798] * [`rustc` no longer attempts to provide "consider using an explicit lifetime" suggestions][37057]. They were inaccurate. - Stabilized APIs * [`VecDeque::truncate`] * [`VecDeque::resize`] * [`String::insert_str`] * [`Duration::checked_add`] * [`Duration::checked_sub`] * [`Duration::checked_div`] * [`Duration::checked_mul`] * [`str::replacen`] * [`str::repeat`] * [`SocketAddr::is_ipv4`] * [`SocketAddr::is_ipv6`] * [`IpAddr::is_ipv4`] * [`IpAddr::is_ipv6`] * [`Vec::dedup_by`] * [`Vec::dedup_by_key`] * [`Result::unwrap_or_default`] * [`<*const T>::wrapping_offset`] * [`<*mut T>::wrapping_offset`] * `CommandExt::creation_flags` * [`File::set_permissions`] * [`String::split_off`] - Updates to libraries * [`[T]::binary_search` and `[T]::binary_search_by_key` now take their argument by `Borrow` parameter][37761] * [All public types in std implement `Debug`][38006] * [`IpAddr` implements `From` and `From`][38327] * [`Ipv6Addr` implements `From<[u16; 8]>`][38131] * [Ctrl-Z returns from `Stdin.read()` when reading from the console on Windows][38274] * [std: Fix partial writes in `LineWriter`][38062] * [std: Clamp max read/write sizes on Unix][38062] * [Use more specific panic message for `&str` slicing errors][38066] * [`TcpListener::set_only_v6` is deprecated][38304]. This functionality cannot be achieved in std currently. * [`writeln!`, like `println!`, now accepts a form with no string or formatting arguments, to just print a newline][38469] * [Implement `iter::Sum` and `iter::Product` for `Result`][38580] * [Reduce the size of static data in `std_unicode::tables`][38781] * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`, `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement `Display`][38909] * [`Duration` implements `Sum`][38712] * [`String` implements `ToSocketAddrs`][39048] - Misc * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies the path to the Rust implementation][38589] * [The `armv7-linux-androideabi` target no longer enables NEON extensions, per Google's ABI guide][38413] * [The stock standard library can be compiled for Redox OS][38401] * [Rust has initial SPARC support][38726]. Tier 3. No builds available. * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No builds available. * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379] - Compatibility Notes * [Uninhabitable enums (those without any variants) no longer permit wildcard match patterns][38069] * In this release, references to uninhabited types can not be pattern-matched. This was accidentally allowed in 1.15. * [The compiler's `dead_code` lint now accounts for type aliases][38051]. * [Ctrl-Z returns from `Stdin.read()` when reading from the console on Windows][38274] * [Clean up semantics of `self` in an import list][38313] - Restrict x86 builds to i686 only. - Revert restriction on previous rust versions used for building- Change x86 build target from i586 to i686- Switch .spec to use rust-build compilation system - Update config.toml to reflect rust-build changes - Strict versioning for compilation so rustc always use previous stable compiler- Update to 1.16.0 - Language updates * Lifetimes in statics and consts default to `'static`. [RFC 1623] * [The compiler's `dead_code` lint now accounts for type aliases][38051]. * [Uninhabitable enums (those without any variants) no longer permit wildcard match patterns][38069] * [Clean up semantics of `self` in an import list][38313] * [`Self` may appear in `impl` headers][38920] * [`Self` may appear in struct expressions][39282] - Compiler updates * [`rustc` now supports `--emit=metadata`, which causes rustc to emit a `.rmeta` file containing only crate metadata][38571]. This can be used by tools like the Rust Language Service to perform metadata-only builds. * [Levenshtein based typo suggestions now work in most places, while previously they worked only for fields and sometimes for local variables][38927]. Together with the overhaul of "no resolution"/"unexpected resolution" errors (#[38154]) they result in large and systematic improvement in resolution diagnostics. * [Fix `transmute::` where `T` requires a bigger alignment than `U`][38670] * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798] * [`rustc` no longer attempts to provide "consider using an explicit lifetime" suggestions][37057]. They were inaccurate. - Stabilized APIs * [`VecDeque::truncate`] * [`VecDeque::resize`] * [`String::insert_str`] * [`Duration::checked_add`] * [`Duration::checked_sub`] * [`Duration::checked_div`] * [`Duration::checked_mul`] * [`str::replacen`] * [`str::repeat`] * [`SocketAddr::is_ipv4`] * [`SocketAddr::is_ipv6`] * [`IpAddr::is_ipv4`] * [`IpAddr::is_ipv6`] * [`Vec::dedup_by`] * [`Vec::dedup_by_key`] * [`Result::unwrap_or_default`] * [`<*const T>::wrapping_offset`] * [`<*mut T>::wrapping_offset`] * `CommandExt::creation_flags` * [`File::set_permissions`] * [`String::split_off`] - Library updates * [`[T]::binary_search` and `[T]::binary_search_by_key` now take their argument by `Borrow` parameter][37761] * [All public types in std implement `Debug`][38006] * [`IpAddr` implements `From` and `From`][38327] * [`Ipv6Addr` implements `From<[u16; 8]>`][38131] * [Ctrl-Z returns from `Stdin.read()` when reading from the console on Windows][38274] * [std: Fix partial writes in `LineWriter`][38062] * [std: Clamp max read/write sizes on Unix][38062] * [Use more specific panic message for `&str` slicing errors][38066] * [`TcpListener::set_only_v6` is deprecated][38304]. This functionality cannot be achieved in std currently. * [`writeln!`, like `println!`, now accepts a form with no string or formatting arguments, to just print a newline][38469] * [Implement `iter::Sum` and `iter::Product` for `Result`][38580] * [Reduce the size of static data in `std_unicode::tables`][38781] * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`, `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement `Display`][38909] * [`Duration` implements `Sum`][38712] * [`String` implements `ToSocketAddrs`][39048] - Misc fixes * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies the path to the Rust implementation][38589] * [The `armv7-linux-androideabi` target no longer enables NEON extensions, per Google's ABI guide][38413] * [The stock standard library can be compiled for Redox OS][38401] * [Rust has initial SPARC support][38726]. Tier 3. No builds available. * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No builds available. * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379] - Compatibility notes * [Uninhabitable enums (those without any variants) no longer permit wildcard match patterns][38069] * In this release, references to uninhabited types can not be pattern-matched. This was accidentally allowed in 1.15. * [The compiler's `dead_code` lint now accounts for type aliases][38051]. * [Ctrl-Z returns from `Stdin.read()` when reading from the console on Windows][38274] * [Clean up semantics of `self` in an import list][38313]- Remove duplicate license files from _docdir: rpm 4.13 no longer implicitly packages those files and we catch them using %license,- remove bootstrap for s390x as binaries are available in openSUSE:Factory:zSystems- Fixes to build for archs armv7, aarch64, ppc64, s390x- Update to 1.15.1 - Fix IntoIter::as_mut_slice's signature- Correct rust-triples use in spec.- Update to 1.15.0 - Language updates * Basic procedural macros allowing custom `#[derive]`, aka "macros 1.1", are stable. This allows popular code-generating crates like Serde and Diesel to work ergonomically. [RFC 1681]. * [Tuple structs may be empty. Unary and empty tuple structs may be instantiated with curly braces][36868]. Part of [RFC 1506]. * [A number of minor changes to name resolution have been activated][37127]. They add up to more consistent semantics, allowing for future evolution of Rust macros. Specified in [RFC 1560], see its section on ["changes"] for details of what is different. The breaking changes here have been transitioned through the [`legacy_imports`] lint since 1.14, with no known regressions. * [In `macro_rules`, `path` fragments can now be parsed as type parameter bounds][38279] * [`?Sized` can be used in `where` clauses][37791] * [There is now a limit on the size of monomorphized types and it can be modified with the `#![type_size_limit]` crate attribute, similarly to the `#![recursion_limit]` attribute][37789] - Compiler changes * [On Windows, the compiler will apply dllimport attributes when linking to extern functions][37973]. Additional attributes and flags can control which library kind is linked and its name. [RFC 1717]. * [Rust-ABI symbols are no longer exported from cdylibs][38117] * [The `--test` flag works with procedural macro crates][38107] * [Fix `extern "aapcs" fn` ABI][37814] * [The `-C no-stack-check` flag is deprecated][37636]. It does nothing. * [The `format!` expander recognizes incorrect `printf` and shell-style formatting directives and suggests the correct format][37613]. * [Only report one error for all unused imports in an import list][37456] - Compiler performance * [Avoid unnecessary `mk_ty` calls in `Ty::super_fold_with`][37705] * [Avoid more unnecessary `mk_ty` calls in `Ty::super_fold_with`][37979] * [Don't clone in `UnificationTable::probe`][37848] * [Remove `scope_auxiliary` to cut RSS by 10%][37764] * [Use small vectors in type walker][37760] * [Macro expansion performance was improved][37701] * [Change `HirVec>` to `HirVec` in `hir::Expr`][37642] * [Replace FNV with a faster hash function][37229] - For full change list, please see https://raw.githubusercontent.com/rust-lang/rust/master/RELEASES.md- Adjust build so that aarch and ARM architectures use bootstrap for initial build- Fix provides/conflicts/obsoletes- Remove patch 0001-Fix-armv7-autodetection.patch + appears to have been fixed upstream. - Building armv7hl arch with bootstrap binary since previously packaged versions haven't successfully built in the past- Update to version 1.14.0 + Announcement: https://blog.rust-lang.org/2016/12/22/Rust-1.14.html + Details: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1140-2016-12-22 - Release highlights: + support for RFC 1492. This small addition lets you use `..` in more places, for example when destructuring a struct or tuple + println!(), with no arguments, prints newline + Wrapping impls standard binary and unary operators on references, as well as the Sum and Product iterators, making references to these types easier to use + Implement From> for String and From> for Vec. These implementations make sense, but were not yet added. + Expand .zip() specialization to .map() and .cloned() for improved performance. + Implement RefUnwindSafe for atomic types, as these types are “unwind safe,” though that wasn’t obvious at first. + Specialize Vec::extend to Vec::extend_from_slice for performance gains. + Don’t reuse HashMap random seeds. This helps to mitigate one type of DDoS attack. + The internal memory layout of HashMap is more cache-friendly, for significant improvements in some operations + Impl Add<{str, Cow}> for Cow. We already support Add for other string types, so not having it on Cow is inconsistent.- Update to 1.13.0- Add conflicts to help avoid situations where previous versions or rustc-bootstrap may be installed- Update to 1.12.1 - Remove patches: + 0003-Disable-embedding-timestamp-information.patch - fixed by upstream + 0002-Add-armv6l-autodetection.patch - no-longer viable- Revert from v1.13 to v1.11 in preparation for alternative packaging.- Add 0001-Fix-armv7-autodetection.patch - Add 0002-Add-armv6l-autodetection.patch * fix armv6 and armv7 builds- Update to 1.11 + Add support for cdylib crate types - Remove merged patches: * 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch * 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch - Set DT_SONAME when building dylibs * Add add-soname.patch- Move to package named rust- Update to 1.10 + -C panic=abort flag for rustc or equivalent in Cargo.toml + new crate type cdylib, embeded library for other languages + In addition, a number of performance improvements landed in the compiler, and so did a number of usability improvements across the documentation, rustdoc itself, and various error messages. + This is the first release, which is guaranteed to be built by previous stable release of rustc - Packaging: + drop bootstrap mode and use rustc 1.9 + move documentation to versioned directory- Use smp_mflags for parallel building. Avoid sh invocation for simple ldconfig calls. Drop archaic %clean section. Drop filler words from summary.- Rename source package to rustc-1_9 to conform to naming standards.- Rename source package to rustc-190 to avoid unecessary rebuilds of rustc packages on upgrade- Move stage0 binaries into separate package - Disable embedding timestamp information - Add 0003-Disable-embedding-timestamp-information.patch- Rename package to rustc-stable - Add rpmlintrc - Make bootstrapping conditional- Fix misleading indentation errors on GCC 6.0 - Remove snap2.sh - Add 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch - Add 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch- Update to version 1.9.0 + Stabilization of std::panic + Deprecation warnings, #[deprecated] attribute + Compile time improvements + Rolling out use of specialization + Library stabilizations About 80 library functions and methods are now stable in 1. + http://blog.rust-lang.org/2016/05/26/Rust-1.9.html- Update to version 1.8.0: + Various “operator equals” operators, such as += and -=, are now overloadable via various traits. + Empty struct declaration can contain cutly braces + New (non default) cargo based build system for rustc + About 20 library functions and methods are now stable in 1.8- Update to version 1.7.0: + Many stabilized APIs + Improved library performance + BTreeSet and its iterators, Iter, IntoIter, and Range are covariant over their contained type. + LinkedList and its iterators, Iter and IntoIter are covariant over their contained type. + str::replace now accepts a Pattern, like other string searching methods. + Any is implemented for unsized types. + Hash is implemented for Duration. + Soundness fixes, may break code. See RFC 1214 for more information. + Several bugs in the compiler's visibility calculations were fixed. + Parsing "." as a float results in an error instead of 0. + Borrows of closure parameters may not outlive the closure.- Update to version 1.6.0: + Stabilization of libcore and other library functions + Crates.io disallows wildcards- Update to version 1.4.0: + Several changes have been made to fix type soundness and improve the behavior of associated types. See RFC 1214. Although we have mostly introduced these changes as warnings this release, to become errors next release, there are still some scenarios that will see immediate breakage. + The str::lines and BufRead::lines iterators treat \r\n as line breaks in addition to \n. + Loans of 'static lifetime extend to the end of a function. + str::parse no longer introduces avoidable rounding error when parsing floating point numbers. Together with earlier changes to float formatting/output, "round trips" like f.to_string().parse() now preserve the value of f exactly. Additionally, leading plus signs are now accepted.- Split the gdb support to rust-gdb subpackage- Update to version 1.3.0: + API stabilization, including the new Duration API and enhancements to Error and Hash/Hasher. + The substring matcher now uses a more efficient algorithm. + There were improvements to zero filling that speed up Vec::resize and Read::read_to_end. + The implementation of Read::read_to_end has been specialized for stdin and File, resulting in additional speedups. + The PartialEq implementation on slices is now much faster. - Packaging: renamed source package to rustc to match upstream- Update to version 1.2.0: + An across-the-board improvement to real-world compiler performance. Representative crates include hyper (compiles 1.16x faster), html5ever (1.62x faster), regex (1.32x faster) and rust-encoding (1.35x faster). You can explore some of this performance data at Nick Cameron’s preliminary tracking site, using dates 2015-05-15 to 2015-06-25. + Parallel codegen is now working, and produces a 33% speedup when bootstrapping on a 4 core machine. Parallel codegen is particularly useful for debug builds, since it prevents some optimizations; but it can also be used with optimizations as an effective -O1 flag. It can be activated by passing -C codegen-units=N to rustc, where N is the desired number of threads.- Update to version 1.1.0: + The std::fs module has been expanded to expand the set of functionality exposed: * DirEntry now supports optimizations like file_type and metadata which don't incur a syscall on some platforms. * A symlink_metadata function has been added. * The fs::Metadata structure now lowers to its OS counterpart, providing access to all underlying information. + The compiler now contains extended explanations of many errors. When an error with an explanation occurs the compiler suggests using the --explain flag to read the explanation. Error explanations are also available online. + Thanks to multiple improvements to type checking, as well as other work, the time to bootstrap the compiler decreased by 32%. - drop tar_scm service and use source urls- Update to version 1.0.0: + lint: deny transmuting from immutable to mutable, since it's undefined behavior + std: update select internals to not use mutable transmuting + std: Remove index notation on slice iterators + std: Destabilize io::BufStream + Make RwLock::try_write try to obtain a write lock + std: Remove addition on vectors for now + thread: right now you can't actually set those printers + Fix #24872, XSS in docs not found page. + Update AUTHORS.txt and RELEASES.md for 1.0 + std: Mark `mem::forget` as a safe function + core: impl AsRef<[u8]> for str + collections: impl AsRef<[u8]> for String + collections: change bounds of SliceConcatExt implementations to use Borrow instead of AsRef + Fix invalid references due to the automated string substitution + dropck: must assume `Box` has a destructor of interest.- Rename binary package to rust - Add build for i586 - Only run fdupes on SUSE builds - Changed version format - Update to version 1.0.0~beta4+git.1430848988.f873dc5: + Introduce a `FreeRegionMap` data structure. (#22779) + Fix #20616 + std: Fix inheriting standard handles on windows + Fix #24895. + Fix zero-normalization of the pos of a `MultiByteChar`. + lint for mixing `#[repr(C)]` with an impl of `Drop`. + Bump prerelease version to .4 + Add downcasting to std::error::Error- Format spec file- Update to version 1.0.0beta3+git.1429985089.5241bf9: + Update Windows caveats + Utilize if..let for get_mut doc-comment examples + Indicate keywords are code-like in Fuse::reset_fuse doc comment + doc: improve/fix 'let' FAQ + Fix broken links in the docs + Indicate None is code-like in doc comments + Fixed typo in hash_map::Entry documentation + Remove an unused import on windows- Version 1.0.0-beta3.s390lpd 1624023425  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  !!!!!!!!!! ! ! ! ! !!!!!!!!!!!!!!!!!!! !!!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""" " " " " """"""""""""""""""" "!"""#"$"%"&"'"(")"*"+","-"."/"0"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""########## # # # # ################### #!#"###$#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~#################################################################################################################################$$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ $!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&& & & & & &&&&&&&&&&&&&&&&&&& &!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''' ' ' ' ' ''''''''''''''''''' '!'"'#'$'%'&'''(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'{'|'}'~'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(((((((((( ( ( ( ( ((((((((((((((((((( (!("(#($(%(&('((()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))) ) ) ) ) ))))))))))))))))))) )!)")#)$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z){)|)})~)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))********** * * * * ******************* *!*"*#*$*%*&*'*(*)***+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*{*|*}*~*********************************************************************************************************************************++++++++++ + + + + +++++++++++++++++++ +!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+{+|+}+~+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++,,,,,,,,,, , , , , ,,,,,,,,,,,,,,,,,,, ,!,",#,$,%,&,',(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------- - - - - ------------------- -!-"-#-$-%-&-'-(-)-*-+-,---.-/-0-1-2-3-4-5-6-7-8-9-:-;-<-=->-?-@-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z-[-\-]-^-_-`-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z-{-|-}-~---------------------------------------------------------------------------------------------------------------------------------.......... . . . . ................... .!.".#.$.%.&.'.(.).*.+.,.-.../.0.1.2.3.4.5.6.7.8.9.:.;.<.=.>.?.@.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.{.|.}.~.................................................................................................................................////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0000000000 0 0 0 0 0000000000000000000 0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111112222222222 2 2 2 2 2222222222222222222 2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333 3 3 3 3 3333333333333333333 3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334444444444 4 4 4 4 4444444444444444444 4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464748494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445555555555 5 5 5 5 5555555555555555555 5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~5555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555556666666666 6 6 6 6 6666666666666666666 6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666667777777777 7 7 7 7 7777777777777777777 7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z7[7\7]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}7~7777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777778888888888 8 8 8 8 8888888888888888888 8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889999999999 9 9 9 9 9999999999999999999 9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:::::::::: : : : : ::::::::::::::::::: :!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:2:3:4:5:6:7:8:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;; ;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;<;=;>;?;@;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;{;|;};~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<< < < < < <<<<<<<<<<<<<<<<<<< =?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~=================================================================================================================================>>>>>>>>>> > > > > >>>>>>>>>>>>>>>>>>> >!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?????????? ? ? ? ? ??????????????????? ?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;?<?=?>???@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????@@@@@@@@@@ @ @ @ @ @@@@@@@@@@@@@@@@@@@ @!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AAAAAAAAAA A A A A AAAAAAAAAAAAAAAAAAA A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBB B B B B BBBBBBBBBBBBBBBBBBB B!B"B#B$B%B&B'B(B)B*B+B,B-B.B/B0B1B2B3B4B5B6B7B8B9B:B;B<B=B>B?B@BABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCC C C C C CCCCCCCCCCCCCCCCCCC C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C8C9C:C;C<C=C>C?C@CACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC[C\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEE E E E E EEEEEEEEEEEEEEEEEEE E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFF F F F F FFFFFFFFFFFFFFFFFFF F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;F<F=F>F?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGG G G G G GGGGGGGGGGGGGGGGGGG G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHH H H H H HHHHHHHHHHHHHHHHHHH H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIII I I I I IIIIIIIIIIIIIIIIIII I!I"I#I$I%I&I'I(I)I*I+I,I-I.I/I0I1I2I3I4I5I6I7I8I9I:I;I<I=I>I?I@IAIBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI[I\I]I^I_I`IaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI{I|I}I~IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJ J J J J JJJJJJJJJJJJJJJJJJJ J!J"J#J$J%J&J'J(J)J*J+J,J-J.J/J0J1J2J3J4J5J6J7J8J9J:J;J<J=J>J?J@JAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ[J\J]J^J_J`JaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJ{J|J}J~JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKK K K K K KKKKKKKKKKKKKKKKKKK K!K"K#K$K%K&K'K(K)K*K+K,K-K.K/K0K1K2K3K4K5K6K7K8K9K:K;K<K=K>K?K@KAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK[K\K]K^K_K`KaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzK{K|K}K~KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLL L L L L LLLLLLLLLLLLLLLLLLL L!L"L#L$L%L&L'L(L)L*L+L,L-L.L/L0L1L2L3L4L5L6L7L8L9L:L;L<L=L>L?L@LALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL[L\L]L^L_L`LaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzL{L|L}L~LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMM M M M M MMMMMMMMMMMMMMMMMMM M!M"M#M$M%M&M'M(M)M*M+M,M-M.M/M0M1M2M3M4M5M6M7M8M9M:M;M<M=M>M?M@MAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM[M\M]M^M_M`MaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzM{M|M}M~MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNN N N N N NNNNNNNNNNNNNNNNNNN N!N"N#N$N%N&N'N(N)N*N+N,N-N.N/N0N1N2N3N4N5N6N7N8N9N:N;N<N=N>N?N@NANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN[N\N]N^N_N`NaNbNcNdNeNfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzN{N|N}N~NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOO O O O O OOOOOOOOOOOOOOOOOOO O!O"O#O$O%O&O'O(O)O*O+O,O-O.O/O0O1O2O3O4O5O6O7O8O9O:O;O<O=O>O?O@OAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO[O\O]O^O_O`OaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzO{O|O}O~OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPP P P P P PPPPPPPPPPPPPPPPPPP P!P"P#P$P%P&P'P(P)P*P+P,P-P.P/P0P1P2P3P4P5P6P7P8P9P:P;P<P=P>P?P@PAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP[P\P]P^P_P`PaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzP{P|P}P~PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQ Q Q Q Q QQQQQQQQQQQQQQQQQQQ Q!Q"Q#Q$Q%Q&Q'Q(Q)Q*Q+Q,Q-Q.Q/Q0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q:Q;Q<Q=Q>Q?Q@QAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQRQSQTQUQVQWQXQYQZQ[Q\Q]Q^Q_Q`QaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQtQuQvQwQxQyQzQ{Q|Q}Q~QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRR R R R R RRRRRRRRRRRRRRRRRRR R!R"R#R$R%R&R'R(R)R*R+R,R-R.R/R0R1R2R3R4R5R6R7R8R9R:R;R<R=R>R?R@RARBRCRDRERFRGRHRIRJRKRLRMRNRORPRQRRRSRTRURVRWRXRYRZR[R\R]R^R_R`RaRbRcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRuRvRwRxRyRzR{R|R}R~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSS S S S S SSSSSSSSSSSSSSSSSSS S!S"S#S$S%S&S'S(S)S*S+S,S-S.S/S0S1S2S3S4S5S6S7S8S9S:S;S<S=S>S?S@SASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS[S\S]S^S_S`SaSbScSdSeSfSgShSiSjSkSlSmSnSoSpSqSrSsStSuSvSwSxSySzS{S|S}S~SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTT T T T T TTTTTTTTTTTTTTTTTTT T!T"T#T$T%T&T'T(T)T*T+T,T-T.T/T0T1T2T3T4T5T6T7T8T9T:T;T<T=T>T?T@TATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT[T\T]T^T_T`TaTbTcTdTeTfTgThTiTjTkTlTmTnToTpTqTrTsTtTuTvTwTxTyTzT{T|T}T~TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUU U U U U UUUUUUUUUUUUUUUUUUU U!U"U#U$U%U&U'U(U)U*U+U,U-U.U/U0U1U2U3U4U5U6U7U8U9U:U;U<U=U>U?U@UAUBUCUDUEUFUGUHUIUJUKULUMUNUOUPUQURUSUTUUUVUWUXUYUZU[U\U]U^U_U`UaUbUcUdUeUfUgUhUiUjUkUlUmUnUoUpUqUrUsUtUuUvUwUxUyUzU{U|U}U~UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVV V V V V VVVVVVVVVVVVVVVVVVV V!V"V#V$V%V&V'V(V)V*V+V,V-V.V/V0V1V2V3V4V5V6V7V8V9V:V;V<V=V>V?V@VAVBVCVDVEVFVGVHVIVJVKVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV[V\V]V^V_V`VaVbVcVdVeVfVgVhViVjVkVlVmVnVoVpVqVrVsVtVuVvVwVxVyVzV{V|V}V~VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWW W W W W WWWWWWWWWWWWWWWWWWW W!W"W#W$W%W&W'W(W)W*W+W,W-W.W/W0W1W2W3W4W5W6W7W8W9W:W;W<W=W>W?W@WAWBWCWDWEWFWGWHWIWJWKWLWMWNWOWPWQWRWSWTWUWVWWWXWYWZW[W\W]W^W_W`WaWbWcWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyWzW{W|W}W~WWWWWWWWWWW1.43.1-15.11.43.1-15.1    !""""!!!!!!!!!!!!!!!#$%%&'&(((((())))*+,+------****************....****************************************/0*******111**********2333322222222222222245657777774444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444488884444449999999999999994444444:4;<=>=??????<@@<<<<AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA<BBBB<<<<CCC<DDDDDDDDDDD<<<EEEE<<<<FFFFFFFFFFFFFFFFFF<<<<GGGGGGGGGGGGGHHHHHHHHHHHHHHGIIIIIIIIIIGJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLJJMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMJNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOJPPPPPPPPPPPPPPJQQQQQQQQQQQQQQJJRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRJSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSJTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGUUUUUUVVUUUUUGWWWWWWGGGGGGXXXXXXGYYYYYYYYYYYYYYYYGGZZZZZZZZZZZZZZZ[[[[[[[[[[Z\\\\\\ZZZZZZZZZZZZZZZZZZZZG]]]]G^^^^^^^^^^^^^^^^^^^^^^^^^^GGGGG_____________``________Gabbccccbddddddddddddddddddddddddddddbbeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeebggggggggggahiiiijjiiihkkhlllllmmllllanonpnnqnrnsntnunvnwnxayzzy{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{y}}}}a~~~aaaaaGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG             GGGGG     !!!!!""""#####$$$$$$$%%%%%%%&&&''''(((((()*+*,,,,,,)-)......)))/))0)1)2222))))))333)4444555544))6666)7)))))888888888)99999))::;<=<>>><??????????<@@@<ABBBBA<C;DEDFFDGGDHDIIIIDJJJJJJJDKDLLLLLLLLLLDMNMDOOODPPPPPPPPPPPPQRRRQSQTQUQVVDWWWWWWWDXYYYXZZZX[[[X\X]]]X^X__XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX``DaDbccccb;d;effegehheiejjjekellllemmmmmmmeneoeppppppppppeqerrressssettttttttttteuuuuuuevewwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwexyzx{||{}}}}}}}{~~~{{xeeeee;                !!""""#########"""$$%%%%%%&&&&&&&&%%%%%%%%%%%%'''%%%%%%%%$((()))))))********************++,-./0111111203333344443555555333333666777777777777777777777777777777776888888888866999999999966::::::::6666666;;;;;;66<<<<<<<<<<6====66>>>>>>>>>>>>>>>>666????????????????????????????????????6@@@@@@@6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6BBBBBBBBBCCCCCCCCCCCCCCCCBDDDDDDDDDDDDDDDDDDDDDDDDDDBEEEEEEEEEEEEEEEEEEBBFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGFHHHHHHHHHHHHHHHHBIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIBJJJJJJJJJJJJJJJJJJBBKKKKKKKKKKKKKKKKBBBBBBBBBLLLLLLLLLLLL6666666MMMMMMMMMMMMMMMMMMMM666666NNNNNNN66666OOOOOOOOOOPPPPPPPPPPPPPPPPPPOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO666QQQQQQ666RRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSRR66TTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUTT66VVVVVVVVVVWWWWWWWWWWVVVVXXXXVVVVVVVVVV66YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY6666666ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ6[[[[66\\\\\\\\\\\\\\\6]]]]]]]]66^^^^^^66______66``````66aaaaaa66bbbbbb66666666cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc6dddddddddddddddddddddddddddddddeeeeeeeeddffddddggggggdddddddddhhddddddiiiiiiiiiiiiiiiiiiddddddddddddddddddddddddddddddjjjjjjjjjjjjjj666666666kkkkkk6llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666mmmmmmmmmmmmmmmmmmmmmmmmm666nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn66666oooooooooooooooppppppppooooooqqqqqqqqorrooooooooooossssssoott66uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu6vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv6wwwwwwwwwwww66xxyzzzzyy{||||||||||||||||{{{{{{{{{{{{{{{{{{{{{{{{yx}}}}}}}}}}}}}}}}}}}}}}}}}}}}xx~~~~~~~~~~x6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666rusthtmlCOPYRIGHT.txtFiraSans-LICENSE.txtFiraSans-Medium.woffFiraSans-Regular.woffLICENSE-APACHE.txtLICENSE-MIT.txtSourceCodePro-LICENSE.txtSourceCodePro-Regular.woffSourceCodePro-Semibold.woffSourceSerifPro-Bold.ttf.woffSourceSerifPro-It.ttf.woffSourceSerifPro-LICENSE.mdSourceSerifPro-Regular.ttf.woffaliases1.43.1.jsallocall.htmlallocAllocErr.t.htmlAllocRef.t.htmlCannotReallocInPlace.t.htmlGlobal.t.htmlGlobalAlloc.t.htmlLayout.t.htmlLayoutErr.t.htmlalloc.v.htmlalloc_zeroed.v.htmldealloc.v.htmlfn.alloc.htmlfn.alloc_zeroed.htmlfn.dealloc.htmlfn.handle_alloc_error.htmlfn.realloc.htmlhandle_alloc_error.v.htmlindex.htmlrealloc.v.htmlsidebar-items.jsstruct.AllocErr.htmlstruct.CannotReallocInPlace.htmlstruct.Global.htmlstruct.Layout.htmlstruct.LayoutErr.htmltrait.AllocRef.htmltrait.GlobalAlloc.htmlborrowBorrow.t.htmlBorrowMut.t.htmlCow.t.htmlToOwned.t.htmlenum.Cow.htmlindex.htmlsidebar-items.jstrait.Borrow.htmltrait.BorrowMut.htmltrait.ToOwned.htmlboxedBox.t.htmlindex.htmlsidebar-items.jsstruct.Box.htmlcollectionsTryReserveError.t.htmlbinary_heapBinaryHeap.t.htmlDrain.t.htmlDrainSorted.t.htmlIntoIter.t.htmlIntoIterSorted.t.htmlIter.t.htmlPeekMut.t.htmlindex.htmlsidebar-items.jsstruct.BinaryHeap.htmlstruct.Drain.htmlstruct.DrainSorted.htmlstruct.IntoIter.htmlstruct.IntoIterSorted.htmlstruct.Iter.htmlstruct.PeekMut.htmlbtreemapBTreeMap.t.htmlEntry.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlKeys.t.htmlOccupiedEntry.t.htmlRange.t.htmlRangeMut.t.htmlVacantEntry.t.htmlValues.t.htmlValuesMut.t.htmlenum.Entry.htmlstruct.BTreeMap.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.Keys.htmlstruct.OccupiedEntry.htmlstruct.Range.htmlstruct.RangeMut.htmlstruct.VacantEntry.htmlstruct.Values.htmlstruct.ValuesMut.htmlsetBTreeSet.t.htmlDifference.t.htmlIntersection.t.htmlIntoIter.t.htmlIter.t.htmlRange.t.htmlSymmetricDifference.t.htmlUnion.t.htmlstruct.BTreeSet.htmlstruct.Difference.htmlstruct.Intersection.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.Range.htmlstruct.SymmetricDifference.htmlstruct.Union.htmlbtree_mapBTreeMap.t.htmlEntry.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlKeys.t.htmlOccupiedEntry.t.htmlRange.t.htmlRangeMut.t.htmlVacantEntry.t.htmlValues.t.htmlValuesMut.t.htmlenum.Entry.htmlindex.htmlsidebar-items.jsstruct.BTreeMap.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.Keys.htmlstruct.OccupiedEntry.htmlstruct.Range.htmlstruct.RangeMut.htmlstruct.VacantEntry.htmlstruct.Values.htmlstruct.ValuesMut.htmlbtree_setBTreeSet.t.htmlDifference.t.htmlIntersection.t.htmlIntoIter.t.htmlIter.t.htmlRange.t.htmlSymmetricDifference.t.htmlUnion.t.htmlindex.htmlsidebar-items.jsstruct.BTreeSet.htmlstruct.Difference.htmlstruct.Intersection.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.Range.htmlstruct.SymmetricDifference.htmlstruct.Union.htmlenum.TryReserveError.htmlindex.htmllinked_listCursor.t.htmlCursorMut.t.htmlDrainFilter.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlLinkedList.t.htmlindex.htmlsidebar-items.jsstruct.Cursor.htmlstruct.CursorMut.htmlstruct.DrainFilter.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.LinkedList.htmlsidebar-items.jsvec_dequeDrain.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlVecDeque.t.htmldrainDrain.t.htmlstruct.Drain.htmlindex.htmlsidebar-items.jsstruct.Drain.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.VecDeque.htmlfmtAlignment.t.htmlArguments.t.htmlBinary.t.htmlDebug.m.htmlDebug.t.htmlDebugList.t.htmlDebugMap.t.htmlDebugSet.t.htmlDebugStruct.t.htmlDebugTuple.t.htmlDisplay.t.htmlError.t.htmlFormatter.t.htmlLowerExp.t.htmlLowerHex.t.htmlOctal.t.htmlPointer.t.htmlResult.t.htmlUpperExp.t.htmlUpperHex.t.htmlWrite.t.htmlenum.Alignment.htmlfn.format.htmlfn.write.htmlformat.v.htmlindex.htmlmacro.Debug!.htmlmacro.Debug.htmlsidebar-items.jsstruct.Arguments.htmlstruct.DebugList.htmlstruct.DebugMap.htmlstruct.DebugSet.htmlstruct.DebugStruct.htmlstruct.DebugTuple.htmlstruct.Error.htmlstruct.Formatter.htmltrait.Binary.htmltrait.Debug.htmltrait.Display.htmltrait.LowerExp.htmltrait.LowerHex.htmltrait.Octal.htmltrait.Pointer.htmltrait.UpperExp.htmltrait.UpperHex.htmltrait.Write.htmltype.Result.htmlwrite.v.htmlformat.m.htmlindex.htmlmacro.format!.htmlmacro.format.htmlmacro.vec!.htmlmacro.vec.htmlpreludeindex.htmlsidebar-items.jsv1index.htmlsidebar-items.jsrcRc.t.htmlWeak.t.htmlindex.htmlsidebar-items.jsstruct.Rc.htmlstruct.Weak.htmlsidebar-items.jssliceChunks.t.htmlChunksExact.t.htmlChunksExactMut.t.htmlChunksMut.t.htmlConcat.t.htmlIter.t.htmlIterMut.t.htmlJoin.t.htmlRChunks.t.htmlRChunksExact.t.htmlRChunksExactMut.t.htmlRChunksMut.t.htmlRSplit.t.htmlRSplitMut.t.htmlRSplitN.t.htmlRSplitNMut.t.htmlSliceIndex.t.htmlSplit.t.htmlSplitMut.t.htmlSplitN.t.htmlSplitNMut.t.htmlWindows.t.htmlfn.from_mut.htmlfn.from_raw_parts.htmlfn.from_raw_parts_mut.htmlfn.from_ref.htmlfrom_mut.v.htmlfrom_raw_parts.v.htmlfrom_raw_parts_mut.v.htmlfrom_ref.v.htmlindex.htmlsidebar-items.jsstruct.Chunks.htmlstruct.ChunksExact.htmlstruct.ChunksExactMut.htmlstruct.ChunksMut.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.RChunks.htmlstruct.RChunksExact.htmlstruct.RChunksExactMut.htmlstruct.RChunksMut.htmlstruct.RSplit.htmlstruct.RSplitMut.htmlstruct.RSplitN.htmlstruct.RSplitNMut.htmlstruct.Split.htmlstruct.SplitMut.htmlstruct.SplitN.htmlstruct.SplitNMut.htmlstruct.Windows.htmltrait.Concat.htmltrait.Join.htmltrait.SliceIndex.htmlstrBytes.t.htmlCharIndices.t.htmlChars.t.htmlEncodeUtf16.t.htmlEscapeDebug.t.htmlEscapeDefault.t.htmlEscapeUnicode.t.htmlFromStr.t.htmlLines.t.htmlLinesAny.t.htmlMatchIndices.t.htmlMatches.t.htmlParseBoolError.t.htmlRMatchIndices.t.htmlRMatches.t.htmlRSplit.t.htmlRSplitN.t.htmlRSplitTerminator.t.htmlSplit.t.htmlSplitAsciiWhitespace.t.htmlSplitN.t.htmlSplitTerminator.t.htmlSplitWhitespace.t.htmlUtf8Error.t.htmlfn.from_boxed_utf8_unchecked.htmlfn.from_utf8.htmlfn.from_utf8_mut.htmlfn.from_utf8_unchecked.htmlfn.from_utf8_unchecked_mut.htmlfrom_boxed_utf8_unchecked.v.htmlfrom_utf8.v.htmlfrom_utf8_mut.v.htmlfrom_utf8_unchecked.v.htmlfrom_utf8_unchecked_mut.v.htmlindex.htmlpatternCharPredicateSearcher.t.htmlCharSearcher.t.htmlCharSliceSearcher.t.htmlDoubleEndedSearcher.t.htmlPattern.t.htmlReverseSearcher.t.htmlSearchStep.t.htmlSearcher.t.htmlStrSearcher.t.htmlenum.SearchStep.htmlindex.htmlsidebar-items.jsstruct.CharPredicateSearcher.htmlstruct.CharSearcher.htmlstruct.CharSliceSearcher.htmlstruct.StrSearcher.htmltrait.DoubleEndedSearcher.htmltrait.Pattern.htmltrait.ReverseSearcher.htmltrait.Searcher.htmlsidebar-items.jsstruct.Bytes.htmlstruct.CharIndices.htmlstruct.Chars.htmlstruct.EncodeUtf16.htmlstruct.EscapeDebug.htmlstruct.EscapeDefault.htmlstruct.EscapeUnicode.htmlstruct.Lines.htmlstruct.LinesAny.htmlstruct.MatchIndices.htmlstruct.Matches.htmlstruct.ParseBoolError.htmlstruct.RMatchIndices.htmlstruct.RMatches.htmlstruct.RSplit.htmlstruct.RSplitN.htmlstruct.RSplitTerminator.htmlstruct.Split.htmlstruct.SplitAsciiWhitespace.htmlstruct.SplitN.htmlstruct.SplitTerminator.htmlstruct.SplitWhitespace.htmlstruct.Utf8Error.htmltrait.FromStr.htmlstringDrain.t.htmlFromUtf16Error.t.htmlFromUtf8Error.t.htmlParseError.t.htmlString.t.htmlToString.t.htmlindex.htmlsidebar-items.jsstruct.Drain.htmlstruct.FromUtf16Error.htmlstruct.FromUtf8Error.htmlstruct.String.htmltrait.ToString.htmltype.ParseError.htmlsyncArc.t.htmlWeak.t.htmlindex.htmlsidebar-items.jsstruct.Arc.htmlstruct.Weak.htmlvecvec.m.htmlDrain.t.htmlDrainFilter.t.htmlIntoIter.t.htmlSplice.t.htmlVec.t.htmlindex.htmlsidebar-items.jsstruct.Drain.htmlstruct.DrainFilter.htmlstruct.IntoIter.htmlstruct.Splice.htmlstruct.Vec.htmlbook2018-editionFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2appendix-00.htmlappendix-01-keywords.htmlappendix-02-operators.htmlappendix-03-derivable-traits.htmlappendix-04-useful-development-tools.htmlappendix-05-editions.htmlappendix-06-translation.htmlappendix-07-nightly-rust.htmlayu-highlight.cssbook.jsch00-00-introduction.htmlch01-00-getting-started.htmlch01-01-installation.htmlch01-02-hello-world.htmlch01-03-hello-cargo.htmlch02-00-guessing-game-tutorial.htmlch03-00-common-programming-concepts.htmlch03-01-variables-and-mutability.htmlch03-02-data-types.htmlch03-03-how-functions-work.htmlch03-04-comments.htmlch03-05-control-flow.htmlch04-00-understanding-ownership.htmlch04-01-what-is-ownership.htmlch04-02-references-and-borrowing.htmlch04-03-slices.htmlch05-00-structs.htmlch05-01-defining-structs.htmlch05-02-example-structs.htmlch05-03-method-syntax.htmlch06-00-enums.htmlch06-01-defining-an-enum.htmlch06-02-match.htmlch06-03-if-let.htmlch07-00-packages-crates-and-modules.htmlch07-01-packages-and-crates-for-making-libraries-and-executables.htmlch07-02-modules-and-use-to-control-scope-and-privacy.htmlch08-00-common-collections.htmlch08-01-vectors.htmlch08-02-strings.htmlch08-03-hash-maps.htmlch09-00-error-handling.htmlch09-01-unrecoverable-errors-with-panic.htmlch09-02-recoverable-errors-with-result.htmlch09-03-to-panic-or-not-to-panic.htmlch10-00-generics.htmlch10-01-syntax.htmlch10-02-traits.htmlch10-03-lifetime-syntax.htmlch11-00-testing.htmlch11-01-writing-tests.htmlch11-02-running-tests.htmlch11-03-test-organization.htmlch12-00-an-io-project.htmlch12-01-accepting-command-line-arguments.htmlch12-02-reading-a-file.htmlch12-03-improving-error-handling-and-modularity.htmlch12-04-testing-the-librarys-functionality.htmlch12-05-working-with-environment-variables.htmlch12-06-writing-to-stderr-instead-of-stdout.htmlch13-00-functional-features.htmlch13-01-closures.htmlch13-02-iterators.htmlch13-03-improving-our-io-project.htmlch13-04-performance.htmlch14-00-more-about-cargo.htmlch14-01-release-profiles.htmlch14-02-publishing-to-crates-io.htmlch14-03-cargo-workspaces.htmlch14-04-installing-binaries.htmlch14-05-extending-cargo.htmlch15-00-smart-pointers.htmlch15-01-box.htmlch15-02-deref.htmlch15-03-drop.htmlch15-04-rc.htmlch15-05-interior-mutability.htmlch15-06-reference-cycles.htmlch16-00-concurrency.htmlch16-01-threads.htmlch16-02-message-passing.htmlch16-03-shared-state.htmlch16-04-extensible-concurrency-sync-and-send.htmlch17-00-oop.htmlch17-01-what-is-oo.htmlch17-02-trait-objects.htmlch17-03-oo-design-patterns.htmlch18-00-patterns.htmlch18-01-all-the-places-for-patterns.htmlch18-02-refutability.htmlch18-03-pattern-syntax.htmlch19-00-advanced-features.htmlch19-01-unsafe-rust.htmlch19-02-advanced-lifetimes.htmlch19-03-advanced-traits.htmlch19-04-advanced-types.htmlch19-05-advanced-functions-and-closures.htmlch19-06-macros.htmlch20-00-final-project-a-web-server.htmlch20-01-single-threaded.htmlch20-02-multithreaded.htmlch20-03-graceful-shutdown-and-cleanup.htmlclipboard.min.jscsschrome.cssgeneral.cssprint.cssvariables.csselasticlunr.min.jsfavicon.pngferris.cssferris.jsforeword.htmlhighlight.csshighlight.jsimgferrisdoes_not_compile.svgnot_desired_behavior.svgpanics.svgunsafe.svgtrpl04-01.svgtrpl04-02.svgtrpl04-03.svgtrpl04-04.svgtrpl04-05.svgtrpl04-06.svgtrpl14-01.pngtrpl14-02.pngtrpl14-03.pngtrpl14-04.pngtrpl15-01.svgtrpl15-02.svgtrpl15-03.svgtrpl15-04.svgtrpl20-01.pngindex.htmlmark.min.jsprint.htmlsearcher.jssearchindex.jssearchindex.jsonsrctheme2018-edition.csstheme2018-edition.cssindex.hbstomorrow-night.cssFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2README.htmlSUMMARY.htmlappendix-00.htmlappendix-01-keywords.htmlappendix-02-operators.htmlappendix-03-derivable-traits.htmlappendix-04-useful-development-tools.htmlappendix-05-editions.htmlappendix-06-translation.htmlappendix-07-nightly-rust.htmlassociated-types.htmlattributes.htmlayu-highlight.cssbibliography.htmlbook.jsborrow-and-asref.htmlcasting-between-types.htmlch00-00-introduction.htmlch01-00-getting-started.htmlch01-01-installation.htmlch01-02-hello-world.htmlch01-03-hello-cargo.htmlch02-00-guessing-game-tutorial.htmlch03-00-common-programming-concepts.htmlch03-01-variables-and-mutability.htmlch03-02-data-types.htmlch03-03-how-functions-work.htmlch03-04-comments.htmlch03-05-control-flow.htmlch04-00-understanding-ownership.htmlch04-01-what-is-ownership.htmlch04-02-references-and-borrowing.htmlch04-03-slices.htmlch05-00-structs.htmlch05-01-defining-structs.htmlch05-02-example-structs.htmlch05-03-method-syntax.htmlch06-00-enums.htmlch06-01-defining-an-enum.htmlch06-02-match.htmlch06-03-if-let.htmlch07-00-managing-growing-projects-with-packages-crates-and-modules.htmlch07-01-packages-and-crates.htmlch07-02-defining-modules-to-control-scope-and-privacy.htmlch07-03-paths-for-referring-to-an-item-in-the-module-tree.htmlch07-04-bringing-paths-into-scope-with-the-use-keyword.htmlch07-05-separating-modules-into-different-files.htmlch08-00-common-collections.htmlch08-01-vectors.htmlch08-02-strings.htmlch08-03-hash-maps.htmlch09-00-error-handling.htmlch09-01-unrecoverable-errors-with-panic.htmlch09-02-recoverable-errors-with-result.htmlch09-03-to-panic-or-not-to-panic.htmlch10-00-generics.htmlch10-01-syntax.htmlch10-02-traits.htmlch10-03-lifetime-syntax.htmlch11-00-testing.htmlch11-01-writing-tests.htmlch11-02-running-tests.htmlch11-03-test-organization.htmlch12-00-an-io-project.htmlch12-01-accepting-command-line-arguments.htmlch12-02-reading-a-file.htmlch12-03-improving-error-handling-and-modularity.htmlch12-04-testing-the-librarys-functionality.htmlch12-05-working-with-environment-variables.htmlch12-06-writing-to-stderr-instead-of-stdout.htmlch13-00-functional-features.htmlch13-01-closures.htmlch13-02-iterators.htmlch13-03-improving-our-io-project.htmlch13-04-performance.htmlch14-00-more-about-cargo.htmlch14-01-release-profiles.htmlch14-02-publishing-to-crates-io.htmlch14-03-cargo-workspaces.htmlch14-04-installing-binaries.htmlch14-05-extending-cargo.htmlch15-00-smart-pointers.htmlch15-01-box.htmlch15-02-deref.htmlch15-03-drop.htmlch15-04-rc.htmlch15-05-interior-mutability.htmlch15-06-reference-cycles.htmlch16-00-concurrency.htmlch16-01-threads.htmlch16-02-message-passing.htmlch16-03-shared-state.htmlch16-04-extensible-concurrency-sync-and-send.htmlch17-00-oop.htmlch17-01-what-is-oo.htmlch17-02-trait-objects.htmlch17-03-oo-design-patterns.htmlch18-00-patterns.htmlch18-01-all-the-places-for-patterns.htmlch18-02-refutability.htmlch18-03-pattern-syntax.htmlch19-00-advanced-features.htmlch19-01-unsafe-rust.htmlch19-03-advanced-traits.htmlch19-04-advanced-types.htmlch19-05-advanced-functions-and-closures.htmlch19-06-macros.htmlch20-00-final-project-a-web-server.htmlch20-01-single-threaded.htmlch20-02-multithreaded.htmlch20-03-graceful-shutdown-and-cleanup.htmlchoosing-your-guarantees.htmlclipboard.min.jsclosures.htmlcomments.htmlcompiler-plugins.htmlconcurrency.htmlconditional-compilation.htmlconst-and-static.htmlcrates-and-modules.htmlcsschrome.cssgeneral.cssprint.cssvariables.cssderef-coercions.htmldocumentation.htmldrop.htmleffective-rust.htmlelasticlunr.min.jsenums.htmlerror-handling.htmlfavicon.pngferris.cssferris.jsffi.htmlfirst-editionFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2associated-types.htmlattributes.htmlayu-highlight.cssbibliography.htmlbook.jsborrow-and-asref.htmlcasting-between-types.htmlchoosing-your-guarantees.htmlclipboard.min.jsclosures.htmlcomments.htmlconcurrency.htmlconditional-compilation.htmlconst-and-static.htmlcrates-and-modules.htmlcsschrome.cssgeneral.cssprint.cssvariables.cssderef-coercions.htmldocumentation.htmldrop.htmleffective-rust.htmlelasticlunr.min.jsenums.htmlerror-handling.htmlfavicon.pngffi.htmlfunctions.htmlgenerics.htmlgetting-started.htmlglossary.htmlguessing-game.htmlhighlight.csshighlight.jsif-let.htmlif.htmlindex.htmliterators.htmllifetimes.htmlloops.htmlmacros.htmlmark.min.jsmatch.htmlmethod-syntax.htmlmutability.htmloperators-and-overloading.htmlownership.htmlpatterns.htmlprimitive-types.htmlprint.htmlprocedural-macros.htmlraw-pointers.htmlreferences-and-borrowing.htmlrelease-channels.htmlsearcher.jssearchindex.jssearchindex.jsonsrcthemefirst-edition.cssstrings.htmlstructs.htmlsyntax-and-semantics.htmlsyntax-index.htmltesting.htmlthe-stack-and-the-heap.htmlthemefirst-edition.cssheader.hbsindex.hbstomorrow-night.csstrait-objects.htmltraits.htmltype-aliases.htmlufcs.htmlunsafe.htmlunsized-types.htmlusing-rust-without-the-standard-library.htmlvariable-bindings.htmlvectors.htmlforeword.htmlfunctions.htmlgenerics.htmlgetting-started.htmlglossary.htmlguessing-game.htmlhighlight.csshighlight.jsif-let.htmlif.htmlimgferrisdoes_not_compile.svgnot_desired_behavior.svgpanics.svgunsafe.svgtrpl04-01.svgtrpl04-02.svgtrpl04-03.svgtrpl04-04.svgtrpl04-05.svgtrpl04-06.svgtrpl14-01.pngtrpl14-02.pngtrpl14-03.pngtrpl14-04.pngtrpl15-01.svgtrpl15-02.svgtrpl15-03.svgtrpl15-04.svgtrpl20-01.pngindex.htmliterators.htmllifetimes.htmlloops.htmlmacros.htmlmark.min.jsmatch.htmlmethod-syntax.htmlmutability.htmloperators-and-overloading.htmlownership.htmlpatterns.htmlprimitive-types.htmlprint.htmlprocedural-macros.htmlraw-pointers.htmlreferences-and-borrowing.htmlrelease-channels.htmlsearcher.jssearchindex.jssearchindex.jsonsecond-editionFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2appendix-00.htmlappendix-01-keywords.htmlappendix-02-operators.htmlappendix-03-derivable-traits.htmlappendix-04-macros.htmlappendix-05-translation.htmlappendix-06-newest-features.htmlappendix-07-nightly-rust.htmlayu-highlight.cssbook.jsch00-00-introduction.htmlch01-00-getting-started.htmlch01-01-installation.htmlch01-02-hello-world.htmlch01-03-hello-cargo.htmlch02-00-guessing-game-tutorial.htmlch03-00-common-programming-concepts.htmlch03-01-variables-and-mutability.htmlch03-02-data-types.htmlch03-03-how-functions-work.htmlch03-04-comments.htmlch03-05-control-flow.htmlch04-00-understanding-ownership.htmlch04-01-what-is-ownership.htmlch04-02-references-and-borrowing.htmlch04-03-slices.htmlch05-00-structs.htmlch05-01-defining-structs.htmlch05-02-example-structs.htmlch05-03-method-syntax.htmlch06-00-enums.htmlch06-01-defining-an-enum.htmlch06-02-match.htmlch06-03-if-let.htmlch07-00-modules.htmlch07-01-mod-and-the-filesystem.htmlch07-02-controlling-visibility-with-pub.htmlch07-03-importing-names-with-use.htmlch08-00-common-collections.htmlch08-01-vectors.htmlch08-02-strings.htmlch08-03-hash-maps.htmlch09-00-error-handling.htmlch09-01-unrecoverable-errors-with-panic.htmlch09-02-recoverable-errors-with-result.htmlch09-03-to-panic-or-not-to-panic.htmlch10-00-generics.htmlch10-01-syntax.htmlch10-02-traits.htmlch10-03-lifetime-syntax.htmlch11-00-testing.htmlch11-01-writing-tests.htmlch11-02-running-tests.htmlch11-03-test-organization.htmlch12-00-an-io-project.htmlch12-01-accepting-command-line-arguments.htmlch12-02-reading-a-file.htmlch12-03-improving-error-handling-and-modularity.htmlch12-04-testing-the-librarys-functionality.htmlch12-05-working-with-environment-variables.htmlch12-06-writing-to-stderr-instead-of-stdout.htmlch13-00-functional-features.htmlch13-01-closures.htmlch13-02-iterators.htmlch13-03-improving-our-io-project.htmlch13-04-performance.htmlch14-00-more-about-cargo.htmlch14-01-release-profiles.htmlch14-02-publishing-to-crates-io.htmlch14-03-cargo-workspaces.htmlch14-04-installing-binaries.htmlch14-05-extending-cargo.htmlch15-00-smart-pointers.htmlch15-01-box.htmlch15-02-deref.htmlch15-03-drop.htmlch15-04-rc.htmlch15-05-interior-mutability.htmlch15-06-reference-cycles.htmlch16-00-concurrency.htmlch16-01-threads.htmlch16-02-message-passing.htmlch16-03-shared-state.htmlch16-04-extensible-concurrency-sync-and-send.htmlch17-00-oop.htmlch17-01-what-is-oo.htmlch17-02-trait-objects.htmlch17-03-oo-design-patterns.htmlch18-00-patterns.htmlch18-01-all-the-places-for-patterns.htmlch18-02-refutability.htmlch18-03-pattern-syntax.htmlch19-00-advanced-features.htmlch19-01-unsafe-rust.htmlch19-02-advanced-lifetimes.htmlch19-03-advanced-traits.htmlch19-04-advanced-types.htmlch19-05-advanced-functions-and-closures.htmlch20-00-final-project-a-web-server.htmlch20-01-single-threaded.htmlch20-02-multithreaded.htmlch20-03-graceful-shutdown-and-cleanup.htmlclipboard.min.jscsschrome.cssgeneral.cssprint.cssvariables.csselasticlunr.min.jsfavicon.pngforeword.htmlhighlight.csshighlight.jsimgtrpl04-01.svgtrpl04-02.svgtrpl04-03.svgtrpl04-04.svgtrpl04-05.svgtrpl04-06.svgtrpl14-01.pngtrpl14-02.pngtrpl14-03.pngtrpl14-04.pngtrpl15-01.svgtrpl15-02.svgtrpl15-03.svgtrpl15-04.svgtrpl20-01.pngindex.htmlmark.min.jsprint.htmlsearcher.jssearchindex.jssearchindex.jsonthemeindex.hbstomorrow-night.cssstrings.htmlstructs.htmlsyntax-and-semantics.htmlsyntax-index.htmltesting.htmlthe-stack-and-the-heap.htmltheme2018-edition.csstitle-page.htmltomorrow-night.csstrait-objects.htmltraits.htmltype-aliases.htmlufcs.htmlunsafe.htmlunsized-types.htmlusing-rust-without-the-standard-library.htmlvariable-bindings.htmlvectors.htmlbrush1.43.1.svgcargoFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2appendixgit-authentication.htmlglossary.htmlayu-highlight.cssbook.jsclipboard.min.jscommandsbuild-commands.htmlcargo-bench.htmlcargo-build.htmlcargo-check.htmlcargo-clean.htmlcargo-doc.htmlcargo-fetch.htmlcargo-fix.htmlcargo-generate-lockfile.htmlcargo-help.htmlcargo-init.htmlcargo-install.htmlcargo-locate-project.htmlcargo-login.htmlcargo-metadata.htmlcargo-new.htmlcargo-owner.htmlcargo-package.htmlcargo-pkgid.htmlcargo-publish.htmlcargo-run.htmlcargo-rustc.htmlcargo-rustdoc.htmlcargo-search.htmlcargo-test.htmlcargo-uninstall.htmlcargo-update.htmlcargo-vendor.htmlcargo-verify-project.htmlcargo-version.htmlcargo-yank.htmlcargo.htmlcommand-common.htmlgeneral-commands.htmlindex.htmlmanifest-commands.htmlpackage-commands.htmlpublishing-commands.htmlcsschrome.cssgeneral.cssprint.cssvariables.csselasticlunr.min.jsfaq.htmlfavicon.pnggetting-startedfirst-steps.htmlindex.htmlinstallation.htmlguidebuild-cache.htmlcargo-home.htmlcargo-toml-vs-cargo-lock.htmlcontinuous-integration.htmlcreating-a-new-project.htmldependencies.htmlindex.htmlproject-layout.htmltests.htmlwhy-cargo-exists.htmlworking-on-an-existing-project.htmlhighlight.csshighlight.jsimagesCargo-Logo-Small.pngauth-level-acl.pngorg-level-acl.pngprofile-selection.svgindex.htmlmark.min.jsprint.htmlreferencebuild-script-examples.htmlbuild-scripts.htmlcargo-targets.htmlconfig.htmlenvironment-variables.htmlexternal-tools.htmlfeatures.htmlindex.htmlmanifest.htmloverriding-dependencies.htmlpkgid-spec.htmlprofiles.htmlpublishing.htmlregistries.htmlsource-replacement.htmlspecifying-dependencies.htmlunstable.htmlworkspaces.htmlsearcher.jssearchindex.jssearchindex.jsontomorrow-night.csscomplement-design-faq.htmlcomplement-lang-faq.htmlcomplement-project-faq.htmlcoreClone.m.htmlCopy.m.htmlDebug.m.htmlDefault.m.htmlEq.m.htmlHash.m.htmlOrd.m.htmlPartialEq.m.htmlPartialOrd.m.htmlRustcDecodable.m.htmlRustcEncodable.m.htmlall.htmlallocAllocErr.t.htmlAllocRef.t.htmlCannotReallocInPlace.t.htmlGlobalAlloc.t.htmlLayout.t.htmlLayoutErr.t.htmlindex.htmlsidebar-items.jsstruct.AllocErr.htmlstruct.CannotReallocInPlace.htmlstruct.Layout.htmlstruct.LayoutErr.htmltrait.AllocRef.htmltrait.GlobalAlloc.htmlanyAny.t.htmlTypeId.t.htmlfn.type_name.htmlfn.type_name_of_val.htmlindex.htmlsidebar-items.jsstruct.TypeId.htmltrait.Any.htmltype_name.v.htmltype_name_of_val.v.htmlarchaarch64APSR.t.htmlSY.t.html__breakpoint.v.html__crc32cd.v.html__crc32d.v.html__dmb.v.html__dsb.v.html__isb.v.html__nop.v.html__rsr.v.html__rsrp.v.html__wsr.v.html__wsrp.v.html_cls_u32.v.html_cls_u64.v.html_clz_u64.v.html_rbit_u64.v.html_rev_u16.v.html_rev_u32.v.html_rev_u64.v.htmlbrk.v.htmlfloat32x2_t.t.htmlfloat32x4_t.t.htmlfloat64x1_t.t.htmlfloat64x2_t.t.htmlfn.__breakpoint.htmlfn.__crc32cd.htmlfn.__crc32d.htmlfn.__dmb.htmlfn.__dsb.htmlfn.__isb.htmlfn.__nop.htmlfn.__rsr.htmlfn.__rsrp.htmlfn.__wsr.htmlfn.__wsrp.htmlfn._cls_u32.htmlfn._cls_u64.htmlfn._clz_u64.htmlfn._rbit_u64.htmlfn._rev_u16.htmlfn._rev_u32.htmlfn._rev_u64.htmlfn.brk.htmlfn.vadd_f32.htmlfn.vadd_f64.htmlfn.vadd_s16.htmlfn.vadd_s32.htmlfn.vadd_s8.htmlfn.vadd_u16.htmlfn.vadd_u32.htmlfn.vadd_u8.htmlfn.vaddd_s64.htmlfn.vaddd_u64.htmlfn.vaddl_s16.htmlfn.vaddl_s32.htmlfn.vaddl_s8.htmlfn.vaddl_u16.htmlfn.vaddl_u32.htmlfn.vaddl_u8.htmlfn.vaddq_f32.htmlfn.vaddq_f64.htmlfn.vaddq_s16.htmlfn.vaddq_s32.htmlfn.vaddq_s64.htmlfn.vaddq_s8.htmlfn.vaddq_u16.htmlfn.vaddq_u32.htmlfn.vaddq_u64.htmlfn.vaddq_u8.htmlfn.vaesdq_u8.htmlfn.vaeseq_u8.htmlfn.vaesimcq_u8.htmlfn.vaesmcq_u8.htmlfn.vand_s16.htmlfn.vand_s32.htmlfn.vand_s64.htmlfn.vand_s8.htmlfn.vand_u16.htmlfn.vand_u32.htmlfn.vand_u64.htmlfn.vand_u8.htmlfn.vandq_s16.htmlfn.vandq_s32.htmlfn.vandq_s64.htmlfn.vandq_s8.htmlfn.vandq_u16.htmlfn.vandq_u32.htmlfn.vandq_u64.htmlfn.vandq_u8.htmlfn.vceq_f32.htmlfn.vceq_f64.htmlfn.vceq_p64.htmlfn.vceq_s16.htmlfn.vceq_s32.htmlfn.vceq_s64.htmlfn.vceq_s8.htmlfn.vceq_u16.htmlfn.vceq_u32.htmlfn.vceq_u64.htmlfn.vceq_u8.htmlfn.vceqq_f32.htmlfn.vceqq_f64.htmlfn.vceqq_p64.htmlfn.vceqq_s16.htmlfn.vceqq_s32.htmlfn.vceqq_s64.htmlfn.vceqq_s8.htmlfn.vceqq_u16.htmlfn.vceqq_u32.htmlfn.vceqq_u64.htmlfn.vceqq_u8.htmlfn.vcge_f32.htmlfn.vcge_f64.htmlfn.vcge_s16.htmlfn.vcge_s32.htmlfn.vcge_s64.htmlfn.vcge_s8.htmlfn.vcge_u16.htmlfn.vcge_u32.htmlfn.vcge_u64.htmlfn.vcge_u8.htmlfn.vcgeq_f32.htmlfn.vcgeq_f64.htmlfn.vcgeq_s16.htmlfn.vcgeq_s32.htmlfn.vcgeq_s64.htmlfn.vcgeq_s8.htmlfn.vcgeq_u16.htmlfn.vcgeq_u32.htmlfn.vcgeq_u64.htmlfn.vcgeq_u8.htmlfn.vcgt_f32.htmlfn.vcgt_f64.htmlfn.vcgt_s16.htmlfn.vcgt_s32.htmlfn.vcgt_s64.htmlfn.vcgt_s8.htmlfn.vcgt_u16.htmlfn.vcgt_u32.htmlfn.vcgt_u64.htmlfn.vcgt_u8.htmlfn.vcgtq_f32.htmlfn.vcgtq_f64.htmlfn.vcgtq_s16.htmlfn.vcgtq_s32.htmlfn.vcgtq_s64.htmlfn.vcgtq_s8.htmlfn.vcgtq_u16.htmlfn.vcgtq_u32.htmlfn.vcgtq_u64.htmlfn.vcgtq_u8.htmlfn.vcle_f32.htmlfn.vcle_f64.htmlfn.vcle_s16.htmlfn.vcle_s32.htmlfn.vcle_s64.htmlfn.vcle_s8.htmlfn.vcle_u16.htmlfn.vcle_u32.htmlfn.vcle_u64.htmlfn.vcle_u8.htmlfn.vcleq_f32.htmlfn.vcleq_f64.htmlfn.vcleq_s16.htmlfn.vcleq_s32.htmlfn.vcleq_s64.htmlfn.vcleq_s8.htmlfn.vcleq_u16.htmlfn.vcleq_u32.htmlfn.vcleq_u64.htmlfn.vcleq_u8.htmlfn.vclt_f32.htmlfn.vclt_f64.htmlfn.vclt_s16.htmlfn.vclt_s32.htmlfn.vclt_s64.htmlfn.vclt_s8.htmlfn.vclt_u16.htmlfn.vclt_u32.htmlfn.vclt_u64.htmlfn.vclt_u8.htmlfn.vcltq_f32.htmlfn.vcltq_f64.htmlfn.vcltq_s16.htmlfn.vcltq_s32.htmlfn.vcltq_s64.htmlfn.vcltq_s8.htmlfn.vcltq_u16.htmlfn.vcltq_u32.htmlfn.vcltq_u64.htmlfn.vcltq_u8.htmlfn.vcombine_f32.htmlfn.vcombine_f64.htmlfn.vcombine_p16.htmlfn.vcombine_p64.htmlfn.vcombine_p8.htmlfn.vcombine_s16.htmlfn.vcombine_s32.htmlfn.vcombine_s64.htmlfn.vcombine_s8.htmlfn.vcombine_u16.htmlfn.vcombine_u32.htmlfn.vcombine_u64.htmlfn.vcombine_u8.htmlfn.vdupq_n_s8.htmlfn.vdupq_n_u8.htmlfn.veor_s16.htmlfn.veor_s32.htmlfn.veor_s64.htmlfn.veor_s8.htmlfn.veor_u16.htmlfn.veor_u32.htmlfn.veor_u64.htmlfn.veor_u8.htmlfn.veorq_s16.htmlfn.veorq_s32.htmlfn.veorq_s64.htmlfn.veorq_s8.htmlfn.veorq_u16.htmlfn.veorq_u32.htmlfn.veorq_u64.htmlfn.veorq_u8.htmlfn.vextq_s8.htmlfn.vextq_u8.htmlfn.vget_lane_u64.htmlfn.vget_lane_u8.htmlfn.vgetq_lane_u16.htmlfn.vgetq_lane_u32.htmlfn.vgetq_lane_u64.htmlfn.vhadd_s16.htmlfn.vhadd_s32.htmlfn.vhadd_s8.htmlfn.vhadd_u16.htmlfn.vhadd_u32.htmlfn.vhadd_u8.htmlfn.vhaddq_s16.htmlfn.vhaddq_s32.htmlfn.vhaddq_s8.htmlfn.vhaddq_u16.htmlfn.vhaddq_u32.htmlfn.vhaddq_u8.htmlfn.vhsub_s16.htmlfn.vhsub_s32.htmlfn.vhsub_s8.htmlfn.vhsub_u16.htmlfn.vhsub_u32.htmlfn.vhsub_u8.htmlfn.vhsubq_s16.htmlfn.vhsubq_s32.htmlfn.vhsubq_s8.htmlfn.vhsubq_u16.htmlfn.vhsubq_u32.htmlfn.vhsubq_u8.htmlfn.vld1q_s8.htmlfn.vld1q_u8.htmlfn.vmaxv_f32.htmlfn.vmaxv_s16.htmlfn.vmaxv_s32.htmlfn.vmaxv_s8.htmlfn.vmaxv_u16.htmlfn.vmaxv_u32.htmlfn.vmaxv_u8.htmlfn.vmaxvq_f32.htmlfn.vmaxvq_f64.htmlfn.vmaxvq_s16.htmlfn.vmaxvq_s32.htmlfn.vmaxvq_s8.htmlfn.vmaxvq_u16.htmlfn.vmaxvq_u32.htmlfn.vmaxvq_u8.htmlfn.vminv_f32.htmlfn.vminv_s16.htmlfn.vminv_s32.htmlfn.vminv_s8.htmlfn.vminv_u16.htmlfn.vminv_u32.htmlfn.vminv_u8.htmlfn.vminvq_f32.htmlfn.vminvq_f64.htmlfn.vminvq_s16.htmlfn.vminvq_s32.htmlfn.vminvq_s8.htmlfn.vminvq_u16.htmlfn.vminvq_u32.htmlfn.vminvq_u8.htmlfn.vmovl_s16.htmlfn.vmovl_s32.htmlfn.vmovl_s8.htmlfn.vmovl_u16.htmlfn.vmovl_u32.htmlfn.vmovl_u8.htmlfn.vmovn_s16.htmlfn.vmovn_s32.htmlfn.vmovn_s64.htmlfn.vmovn_u16.htmlfn.vmovn_u32.htmlfn.vmovn_u64.htmlfn.vmovq_n_u8.htmlfn.vmul_f32.htmlfn.vmul_f64.htmlfn.vmul_s16.htmlfn.vmul_s32.htmlfn.vmul_s8.htmlfn.vmul_u16.htmlfn.vmul_u32.htmlfn.vmul_u8.htmlfn.vmull_p64.htmlfn.vmulq_f32.htmlfn.vmulq_f64.htmlfn.vmulq_s16.htmlfn.vmulq_s32.htmlfn.vmulq_s8.htmlfn.vmulq_u16.htmlfn.vmulq_u32.htmlfn.vmulq_u8.htmlfn.vmvn_p8.htmlfn.vmvn_s16.htmlfn.vmvn_s32.htmlfn.vmvn_s8.htmlfn.vmvn_u16.htmlfn.vmvn_u32.htmlfn.vmvn_u8.htmlfn.vmvnq_p8.htmlfn.vmvnq_s16.htmlfn.vmvnq_s32.htmlfn.vmvnq_s8.htmlfn.vmvnq_u16.htmlfn.vmvnq_u32.htmlfn.vmvnq_u8.htmlfn.vorr_s16.htmlfn.vorr_s32.htmlfn.vorr_s64.htmlfn.vorr_s8.htmlfn.vorr_u16.htmlfn.vorr_u32.htmlfn.vorr_u64.htmlfn.vorr_u8.htmlfn.vorrq_s16.htmlfn.vorrq_s32.htmlfn.vorrq_s64.htmlfn.vorrq_s8.htmlfn.vorrq_u16.htmlfn.vorrq_u32.htmlfn.vorrq_u64.htmlfn.vorrq_u8.htmlfn.vpaddq_u8.htmlfn.vpmax_f32.htmlfn.vpmax_s16.htmlfn.vpmax_s32.htmlfn.vpmax_s8.htmlfn.vpmax_u16.htmlfn.vpmax_u32.htmlfn.vpmax_u8.htmlfn.vpmaxq_f32.htmlfn.vpmaxq_f64.htmlfn.vpmaxq_s16.htmlfn.vpmaxq_s32.htmlfn.vpmaxq_s8.htmlfn.vpmaxq_u16.htmlfn.vpmaxq_u32.htmlfn.vpmaxq_u8.htmlfn.vpmin_f32.htmlfn.vpmin_s16.htmlfn.vpmin_s32.htmlfn.vpmin_s8.htmlfn.vpmin_u16.htmlfn.vpmin_u32.htmlfn.vpmin_u8.htmlfn.vpminq_f32.htmlfn.vpminq_f64.htmlfn.vpminq_s16.htmlfn.vpminq_s32.htmlfn.vpminq_s8.htmlfn.vpminq_u16.htmlfn.vpminq_u32.htmlfn.vpminq_u8.htmlfn.vqadd_s16.htmlfn.vqadd_s32.htmlfn.vqadd_s8.htmlfn.vqadd_u16.htmlfn.vqadd_u32.htmlfn.vqadd_u8.htmlfn.vqaddq_s16.htmlfn.vqaddq_s32.htmlfn.vqaddq_s8.htmlfn.vqaddq_u16.htmlfn.vqaddq_u32.htmlfn.vqaddq_u8.htmlfn.vqmovn_u64.htmlfn.vqsub_s16.htmlfn.vqsub_s32.htmlfn.vqsub_s8.htmlfn.vqsub_u16.htmlfn.vqsub_u32.htmlfn.vqsub_u8.htmlfn.vqsubq_s16.htmlfn.vqsubq_s32.htmlfn.vqsubq_s8.htmlfn.vqsubq_u16.htmlfn.vqsubq_u32.htmlfn.vqsubq_u8.htmlfn.vreinterpret_u64_u32.htmlfn.vreinterpretq_s8_u8.htmlfn.vreinterpretq_u16_u8.htmlfn.vreinterpretq_u32_u8.htmlfn.vreinterpretq_u64_u8.htmlfn.vreinterpretq_u8_s8.htmlfn.vrhadd_s16.htmlfn.vrhadd_s32.htmlfn.vrhadd_s8.htmlfn.vrhadd_u16.htmlfn.vrhadd_u32.htmlfn.vrhadd_u8.htmlfn.vrhaddq_s16.htmlfn.vrhaddq_s32.htmlfn.vrhaddq_s8.htmlfn.vrhaddq_u16.htmlfn.vrhaddq_u32.htmlfn.vrhaddq_u8.htmlfn.vrsqrte_f32.htmlfn.vsha1cq_u32.htmlfn.vsha1h_u32.htmlfn.vsha1mq_u32.htmlfn.vsha1pq_u32.htmlfn.vsha1su0q_u32.htmlfn.vsha1su1q_u32.htmlfn.vsha256h2q_u32.htmlfn.vsha256hq_u32.htmlfn.vsha256su0q_u32.htmlfn.vsha256su1q_u32.htmlfn.vshlq_n_u8.htmlfn.vshrq_n_u8.htmlfn.vsub_f32.htmlfn.vsub_f64.htmlfn.vsub_s16.htmlfn.vsub_s32.htmlfn.vsub_s64.htmlfn.vsub_s8.htmlfn.vsub_u16.htmlfn.vsub_u32.htmlfn.vsub_u64.htmlfn.vsub_u8.htmlfn.vsubq_f32.htmlfn.vsubq_f64.htmlfn.vsubq_s16.htmlfn.vsubq_s32.htmlfn.vsubq_s64.htmlfn.vsubq_s8.htmlfn.vsubq_u16.htmlfn.vsubq_u32.htmlfn.vsubq_u64.htmlfn.vsubq_u8.htmlindex.htmlint16x4_t.t.htmlint16x8_t.t.htmlint32x2_t.t.htmlint32x4_t.t.htmlint64x1_t.t.htmlint64x2_t.t.htmlint8x16_t.t.htmlint8x16x2_t.t.htmlint8x16x3_t.t.htmlint8x16x4_t.t.htmlint8x8_t.t.htmlint8x8x2_t.t.htmlint8x8x3_t.t.htmlint8x8x4_t.t.htmlpoly128_t.t.htmlpoly16x4_t.t.htmlpoly16x8_t.t.htmlpoly64_t.t.htmlpoly64x1_t.t.htmlpoly64x2_t.t.htmlpoly8x16_t.t.htmlpoly8x16x2_t.t.htmlpoly8x16x3_t.t.htmlpoly8x16x4_t.t.htmlpoly8x8_t.t.htmlpoly8x8x2_t.t.htmlpoly8x8x3_t.t.htmlpoly8x8x4_t.t.htmlsidebar-items.jsstruct.APSR.htmlstruct.SY.htmlstruct.float32x2_t.htmlstruct.float32x4_t.htmlstruct.float64x1_t.htmlstruct.float64x2_t.htmlstruct.int16x4_t.htmlstruct.int16x8_t.htmlstruct.int32x2_t.htmlstruct.int32x4_t.htmlstruct.int64x1_t.htmlstruct.int64x2_t.htmlstruct.int8x16_t.htmlstruct.int8x16x2_t.htmlstruct.int8x16x3_t.htmlstruct.int8x16x4_t.htmlstruct.int8x8_t.htmlstruct.int8x8x2_t.htmlstruct.int8x8x3_t.htmlstruct.int8x8x4_t.htmlstruct.poly128_t.htmlstruct.poly16x4_t.htmlstruct.poly16x8_t.htmlstruct.poly64_t.htmlstruct.poly64x1_t.htmlstruct.poly64x2_t.htmlstruct.poly8x16_t.htmlstruct.poly8x16x2_t.htmlstruct.poly8x16x3_t.htmlstruct.poly8x16x4_t.htmlstruct.poly8x8_t.htmlstruct.poly8x8x2_t.htmlstruct.poly8x8x3_t.htmlstruct.poly8x8x4_t.htmlstruct.uint16x4_t.htmlstruct.uint16x8_t.htmlstruct.uint32x2_t.htmlstruct.uint32x4_t.htmlstruct.uint64x1_t.htmlstruct.uint64x2_t.htmlstruct.uint8x16_t.htmlstruct.uint8x16x2_t.htmlstruct.uint8x16x3_t.htmlstruct.uint8x16x4_t.htmlstruct.uint8x8_t.htmlstruct.uint8x8x2_t.htmlstruct.uint8x8x3_t.htmlstruct.uint8x8x4_t.htmluint16x4_t.t.htmluint16x8_t.t.htmluint32x2_t.t.htmluint32x4_t.t.htmluint64x1_t.t.htmluint64x2_t.t.htmluint8x16_t.t.htmluint8x16x2_t.t.htmluint8x16x3_t.t.htmluint8x16x4_t.t.htmluint8x8_t.t.htmluint8x8x2_t.t.htmluint8x8x3_t.t.htmluint8x8x4_t.t.htmlvadd_f32.v.htmlvadd_f64.v.htmlvadd_s16.v.htmlvadd_s32.v.htmlvadd_s8.v.htmlvadd_u16.v.htmlvadd_u32.v.htmlvadd_u8.v.htmlvaddd_s64.v.htmlvaddd_u64.v.htmlvaddl_s16.v.htmlvaddl_s32.v.htmlvaddl_s8.v.htmlvaddl_u16.v.htmlvaddl_u32.v.htmlvaddl_u8.v.htmlvaddq_f32.v.htmlvaddq_f64.v.htmlvaddq_s16.v.htmlvaddq_s32.v.htmlvaddq_s64.v.htmlvaddq_s8.v.htmlvaddq_u16.v.htmlvaddq_u32.v.htmlvaddq_u64.v.htmlvaddq_u8.v.htmlvaesdq_u8.v.htmlvaeseq_u8.v.htmlvaesimcq_u8.v.htmlvaesmcq_u8.v.htmlvand_s16.v.htmlvand_s32.v.htmlvand_s64.v.htmlvand_s8.v.htmlvand_u16.v.htmlvand_u32.v.htmlvand_u64.v.htmlvand_u8.v.htmlvandq_s16.v.htmlvandq_s32.v.htmlvandq_s64.v.htmlvandq_s8.v.htmlvandq_u16.v.htmlvandq_u32.v.htmlvandq_u64.v.htmlvandq_u8.v.htmlvceq_f32.v.htmlvceq_f64.v.htmlvceq_p64.v.htmlvceq_s16.v.htmlvceq_s32.v.htmlvceq_s64.v.htmlvceq_s8.v.htmlvceq_u16.v.htmlvceq_u32.v.htmlvceq_u64.v.htmlvceq_u8.v.htmlvceqq_f32.v.htmlvceqq_f64.v.htmlvceqq_p64.v.htmlvceqq_s16.v.htmlvceqq_s32.v.htmlvceqq_s64.v.htmlvceqq_s8.v.htmlvceqq_u16.v.htmlvceqq_u32.v.htmlvceqq_u64.v.htmlvceqq_u8.v.htmlvcge_f32.v.htmlvcge_f64.v.htmlvcge_s16.v.htmlvcge_s32.v.htmlvcge_s64.v.htmlvcge_s8.v.htmlvcge_u16.v.htmlvcge_u32.v.htmlvcge_u64.v.htmlvcge_u8.v.htmlvcgeq_f32.v.htmlvcgeq_f64.v.htmlvcgeq_s16.v.htmlvcgeq_s32.v.htmlvcgeq_s64.v.htmlvcgeq_s8.v.htmlvcgeq_u16.v.htmlvcgeq_u32.v.htmlvcgeq_u64.v.htmlvcgeq_u8.v.htmlvcgt_f32.v.htmlvcgt_f64.v.htmlvcgt_s16.v.htmlvcgt_s32.v.htmlvcgt_s64.v.htmlvcgt_s8.v.htmlvcgt_u16.v.htmlvcgt_u32.v.htmlvcgt_u64.v.htmlvcgt_u8.v.htmlvcgtq_f32.v.htmlvcgtq_f64.v.htmlvcgtq_s16.v.htmlvcgtq_s32.v.htmlvcgtq_s64.v.htmlvcgtq_s8.v.htmlvcgtq_u16.v.htmlvcgtq_u32.v.htmlvcgtq_u64.v.htmlvcgtq_u8.v.htmlvcle_f32.v.htmlvcle_f64.v.htmlvcle_s16.v.htmlvcle_s32.v.htmlvcle_s64.v.htmlvcle_s8.v.htmlvcle_u16.v.htmlvcle_u32.v.htmlvcle_u64.v.htmlvcle_u8.v.htmlvcleq_f32.v.htmlvcleq_f64.v.htmlvcleq_s16.v.htmlvcleq_s32.v.htmlvcleq_s64.v.htmlvcleq_s8.v.htmlvcleq_u16.v.htmlvcleq_u32.v.htmlvcleq_u64.v.htmlvcleq_u8.v.htmlvclt_f32.v.htmlvclt_f64.v.htmlvclt_s16.v.htmlvclt_s32.v.htmlvclt_s64.v.htmlvclt_s8.v.htmlvclt_u16.v.htmlvclt_u32.v.htmlvclt_u64.v.htmlvclt_u8.v.htmlvcltq_f32.v.htmlvcltq_f64.v.htmlvcltq_s16.v.htmlvcltq_s32.v.htmlvcltq_s64.v.htmlvcltq_s8.v.htmlvcltq_u16.v.htmlvcltq_u32.v.htmlvcltq_u64.v.htmlvcltq_u8.v.htmlvcombine_f32.v.htmlvcombine_f64.v.htmlvcombine_p16.v.htmlvcombine_p64.v.htmlvcombine_p8.v.htmlvcombine_s16.v.htmlvcombine_s32.v.htmlvcombine_s64.v.htmlvcombine_s8.v.htmlvcombine_u16.v.htmlvcombine_u32.v.htmlvcombine_u64.v.htmlvcombine_u8.v.htmlvdupq_n_s8.v.htmlvdupq_n_u8.v.htmlveor_s16.v.htmlveor_s32.v.htmlveor_s64.v.htmlveor_s8.v.htmlveor_u16.v.htmlveor_u32.v.htmlveor_u64.v.htmlveor_u8.v.htmlveorq_s16.v.htmlveorq_s32.v.htmlveorq_s64.v.htmlveorq_s8.v.htmlveorq_u16.v.htmlveorq_u32.v.htmlveorq_u64.v.htmlveorq_u8.v.htmlvextq_s8.v.htmlvextq_u8.v.htmlvget_lane_u64.v.htmlvget_lane_u8.v.htmlvgetq_lane_u16.v.htmlvgetq_lane_u32.v.htmlvgetq_lane_u64.v.htmlvhadd_s16.v.htmlvhadd_s32.v.htmlvhadd_s8.v.htmlvhadd_u16.v.htmlvhadd_u32.v.htmlvhadd_u8.v.htmlvhaddq_s16.v.htmlvhaddq_s32.v.htmlvhaddq_s8.v.htmlvhaddq_u16.v.htmlvhaddq_u32.v.htmlvhaddq_u8.v.htmlvhsub_s16.v.htmlvhsub_s32.v.htmlvhsub_s8.v.htmlvhsub_u16.v.htmlvhsub_u32.v.htmlvhsub_u8.v.htmlvhsubq_s16.v.htmlvhsubq_s32.v.htmlvhsubq_s8.v.htmlvhsubq_u16.v.htmlvhsubq_u32.v.htmlvhsubq_u8.v.htmlvld1q_s8.v.htmlvld1q_u8.v.htmlvmaxv_f32.v.htmlvmaxv_s16.v.htmlvmaxv_s32.v.htmlvmaxv_s8.v.htmlvmaxv_u16.v.htmlvmaxv_u32.v.htmlvmaxv_u8.v.htmlvmaxvq_f32.v.htmlvmaxvq_f64.v.htmlvmaxvq_s16.v.htmlvmaxvq_s32.v.htmlvmaxvq_s8.v.htmlvmaxvq_u16.v.htmlvmaxvq_u32.v.htmlvmaxvq_u8.v.htmlvminv_f32.v.htmlvminv_s16.v.htmlvminv_s32.v.htmlvminv_s8.v.htmlvminv_u16.v.htmlvminv_u32.v.htmlvminv_u8.v.htmlvminvq_f32.v.htmlvminvq_f64.v.htmlvminvq_s16.v.htmlvminvq_s32.v.htmlvminvq_s8.v.htmlvminvq_u16.v.htmlvminvq_u32.v.htmlvminvq_u8.v.htmlvmovl_s16.v.htmlvmovl_s32.v.htmlvmovl_s8.v.htmlvmovl_u16.v.htmlvmovl_u32.v.htmlvmovl_u8.v.htmlvmovn_s16.v.htmlvmovn_s32.v.htmlvmovn_s64.v.htmlvmovn_u16.v.htmlvmovn_u32.v.htmlvmovn_u64.v.htmlvmovq_n_u8.v.htmlvmul_f32.v.htmlvmul_f64.v.htmlvmul_s16.v.htmlvmul_s32.v.htmlvmul_s8.v.htmlvmul_u16.v.htmlvmul_u32.v.htmlvmul_u8.v.htmlvmull_p64.v.htmlvmulq_f32.v.htmlvmulq_f64.v.htmlvmulq_s16.v.htmlvmulq_s32.v.htmlvmulq_s8.v.htmlvmulq_u16.v.htmlvmulq_u32.v.htmlvmulq_u8.v.htmlvmvn_p8.v.htmlvmvn_s16.v.htmlvmvn_s32.v.htmlvmvn_s8.v.htmlvmvn_u16.v.htmlvmvn_u32.v.htmlvmvn_u8.v.htmlvmvnq_p8.v.htmlvmvnq_s16.v.htmlvmvnq_s32.v.htmlvmvnq_s8.v.htmlvmvnq_u16.v.htmlvmvnq_u32.v.htmlvmvnq_u8.v.htmlvorr_s16.v.htmlvorr_s32.v.htmlvorr_s64.v.htmlvorr_s8.v.htmlvorr_u16.v.htmlvorr_u32.v.htmlvorr_u64.v.htmlvorr_u8.v.htmlvorrq_s16.v.htmlvorrq_s32.v.htmlvorrq_s64.v.htmlvorrq_s8.v.htmlvorrq_u16.v.htmlvorrq_u32.v.htmlvorrq_u64.v.htmlvorrq_u8.v.htmlvpaddq_u8.v.htmlvpmax_f32.v.htmlvpmax_s16.v.htmlvpmax_s32.v.htmlvpmax_s8.v.htmlvpmax_u16.v.htmlvpmax_u32.v.htmlvpmax_u8.v.htmlvpmaxq_f32.v.htmlvpmaxq_f64.v.htmlvpmaxq_s16.v.htmlvpmaxq_s32.v.htmlvpmaxq_s8.v.htmlvpmaxq_u16.v.htmlvpmaxq_u32.v.htmlvpmaxq_u8.v.htmlvpmin_f32.v.htmlvpmin_s16.v.htmlvpmin_s32.v.htmlvpmin_s8.v.htmlvpmin_u16.v.htmlvpmin_u32.v.htmlvpmin_u8.v.htmlvpminq_f32.v.htmlvpminq_f64.v.htmlvpminq_s16.v.htmlvpminq_s32.v.htmlvpminq_s8.v.htmlvpminq_u16.v.htmlvpminq_u32.v.htmlvpminq_u8.v.htmlvqadd_s16.v.htmlvqadd_s32.v.htmlvqadd_s8.v.htmlvqadd_u16.v.htmlvqadd_u32.v.htmlvqadd_u8.v.htmlvqaddq_s16.v.htmlvqaddq_s32.v.htmlvqaddq_s8.v.htmlvqaddq_u16.v.htmlvqaddq_u32.v.htmlvqaddq_u8.v.htmlvqmovn_u64.v.htmlvqsub_s16.v.htmlvqsub_s32.v.htmlvqsub_s8.v.htmlvqsub_u16.v.htmlvqsub_u32.v.htmlvqsub_u8.v.htmlvqsubq_s16.v.htmlvqsubq_s32.v.htmlvqsubq_s8.v.htmlvqsubq_u16.v.htmlvqsubq_u32.v.htmlvqsubq_u8.v.htmlvreinterpret_u64_u32.v.htmlvreinterpretq_s8_u8.v.htmlvreinterpretq_u16_u8.v.htmlvreinterpretq_u32_u8.v.htmlvreinterpretq_u64_u8.v.htmlvreinterpretq_u8_s8.v.htmlvrhadd_s16.v.htmlvrhadd_s32.v.htmlvrhadd_s8.v.htmlvrhadd_u16.v.htmlvrhadd_u32.v.htmlvrhadd_u8.v.htmlvrhaddq_s16.v.htmlvrhaddq_s32.v.htmlvrhaddq_s8.v.htmlvrhaddq_u16.v.htmlvrhaddq_u32.v.htmlvrhaddq_u8.v.htmlvrsqrte_f32.v.htmlvsha1cq_u32.v.htmlvsha1h_u32.v.htmlvsha1mq_u32.v.htmlvsha1pq_u32.v.htmlvsha1su0q_u32.v.htmlvsha1su1q_u32.v.htmlvsha256h2q_u32.v.htmlvsha256hq_u32.v.htmlvsha256su0q_u32.v.htmlvsha256su1q_u32.v.htmlvshlq_n_u8.v.htmlvshrq_n_u8.v.htmlvsub_f32.v.htmlvsub_f64.v.htmlvsub_s16.v.htmlvsub_s32.v.htmlvsub_s64.v.htmlvsub_s8.v.htmlvsub_u16.v.htmlvsub_u32.v.htmlvsub_u64.v.htmlvsub_u8.v.htmlvsubq_f32.v.htmlvsubq_f64.v.htmlvsubq_s16.v.htmlvsubq_s32.v.htmlvsubq_s64.v.htmlvsubq_s8.v.htmlvsubq_u16.v.htmlvsubq_u32.v.htmlvsubq_u64.v.htmlvsubq_u8.v.htmlarmAPSR.t.htmlSY.t.html__breakpoint.v.html__dmb.v.html__dsb.v.html__isb.v.html__nop.v.html__rsr.v.html__rsrp.v.html__wsr.v.html__wsrp.v.html_rev_u16.v.html_rev_u32.v.htmlfloat32x2_t.t.htmlfloat32x4_t.t.htmlfn.__breakpoint.htmlfn.__dmb.htmlfn.__dsb.htmlfn.__isb.htmlfn.__nop.htmlfn.__rsr.htmlfn.__rsrp.htmlfn.__wsr.htmlfn.__wsrp.htmlfn._rev_u16.htmlfn._rev_u32.htmlfn.vadd_f32.htmlfn.vadd_s16.htmlfn.vadd_s32.htmlfn.vadd_s8.htmlfn.vadd_u16.htmlfn.vadd_u32.htmlfn.vadd_u8.htmlfn.vaddl_s16.htmlfn.vaddl_s32.htmlfn.vaddl_s8.htmlfn.vaddl_u16.htmlfn.vaddl_u32.htmlfn.vaddl_u8.htmlfn.vaddq_f32.htmlfn.vaddq_s16.htmlfn.vaddq_s32.htmlfn.vaddq_s64.htmlfn.vaddq_s8.htmlfn.vaddq_u16.htmlfn.vaddq_u32.htmlfn.vaddq_u64.htmlfn.vaddq_u8.htmlfn.vand_s16.htmlfn.vand_s32.htmlfn.vand_s64.htmlfn.vand_s8.htmlfn.vand_u16.htmlfn.vand_u32.htmlfn.vand_u64.htmlfn.vand_u8.htmlfn.vandq_s16.htmlfn.vandq_s32.htmlfn.vandq_s64.htmlfn.vandq_s8.htmlfn.vandq_u16.htmlfn.vandq_u32.htmlfn.vandq_u64.htmlfn.vandq_u8.htmlfn.vceq_f32.htmlfn.vceq_s16.htmlfn.vceq_s32.htmlfn.vceq_s8.htmlfn.vceq_u16.htmlfn.vceq_u32.htmlfn.vceq_u8.htmlfn.vceqq_f32.htmlfn.vceqq_s16.htmlfn.vceqq_s32.htmlfn.vceqq_s8.htmlfn.vceqq_u16.htmlfn.vceqq_u32.htmlfn.vceqq_u8.htmlfn.vcge_f32.htmlfn.vcge_s16.htmlfn.vcge_s32.htmlfn.vcge_s8.htmlfn.vcge_u16.htmlfn.vcge_u32.htmlfn.vcge_u8.htmlfn.vcgeq_f32.htmlfn.vcgeq_s16.htmlfn.vcgeq_s32.htmlfn.vcgeq_s8.htmlfn.vcgeq_u16.htmlfn.vcgeq_u32.htmlfn.vcgeq_u8.htmlfn.vcgt_f32.htmlfn.vcgt_s16.htmlfn.vcgt_s32.htmlfn.vcgt_s8.htmlfn.vcgt_u16.htmlfn.vcgt_u32.htmlfn.vcgt_u8.htmlfn.vcgtq_f32.htmlfn.vcgtq_s16.htmlfn.vcgtq_s32.htmlfn.vcgtq_s8.htmlfn.vcgtq_u16.htmlfn.vcgtq_u32.htmlfn.vcgtq_u8.htmlfn.vcle_f32.htmlfn.vcle_s16.htmlfn.vcle_s32.htmlfn.vcle_s8.htmlfn.vcle_u16.htmlfn.vcle_u32.htmlfn.vcle_u8.htmlfn.vcleq_f32.htmlfn.vcleq_s16.htmlfn.vcleq_s32.htmlfn.vcleq_s8.htmlfn.vcleq_u16.htmlfn.vcleq_u32.htmlfn.vcleq_u8.htmlfn.vclt_f32.htmlfn.vclt_s16.htmlfn.vclt_s32.htmlfn.vclt_s8.htmlfn.vclt_u16.htmlfn.vclt_u32.htmlfn.vclt_u8.htmlfn.vcltq_f32.htmlfn.vcltq_s16.htmlfn.vcltq_s32.htmlfn.vcltq_s8.htmlfn.vcltq_u16.htmlfn.vcltq_u32.htmlfn.vcltq_u8.htmlfn.vdupq_n_s8.htmlfn.vdupq_n_u8.htmlfn.veor_s16.htmlfn.veor_s32.htmlfn.veor_s64.htmlfn.veor_s8.htmlfn.veor_u16.htmlfn.veor_u32.htmlfn.veor_u64.htmlfn.veor_u8.htmlfn.veorq_s16.htmlfn.veorq_s32.htmlfn.veorq_s64.htmlfn.veorq_s8.htmlfn.veorq_u16.htmlfn.veorq_u32.htmlfn.veorq_u64.htmlfn.veorq_u8.htmlfn.vextq_s8.htmlfn.vextq_u8.htmlfn.vget_lane_u64.htmlfn.vget_lane_u8.htmlfn.vgetq_lane_u16.htmlfn.vgetq_lane_u32.htmlfn.vgetq_lane_u64.htmlfn.vhadd_s16.htmlfn.vhadd_s32.htmlfn.vhadd_s8.htmlfn.vhadd_u16.htmlfn.vhadd_u32.htmlfn.vhadd_u8.htmlfn.vhaddq_s16.htmlfn.vhaddq_s32.htmlfn.vhaddq_s8.htmlfn.vhaddq_u16.htmlfn.vhaddq_u32.htmlfn.vhaddq_u8.htmlfn.vhsub_s16.htmlfn.vhsub_s32.htmlfn.vhsub_s8.htmlfn.vhsub_u16.htmlfn.vhsub_u32.htmlfn.vhsub_u8.htmlfn.vhsubq_s16.htmlfn.vhsubq_s32.htmlfn.vhsubq_s8.htmlfn.vhsubq_u16.htmlfn.vhsubq_u32.htmlfn.vhsubq_u8.htmlfn.vld1q_s8.htmlfn.vld1q_u8.htmlfn.vmovl_s16.htmlfn.vmovl_s32.htmlfn.vmovl_s8.htmlfn.vmovl_u16.htmlfn.vmovl_u32.htmlfn.vmovl_u8.htmlfn.vmovn_s16.htmlfn.vmovn_s32.htmlfn.vmovn_s64.htmlfn.vmovn_u16.htmlfn.vmovn_u32.htmlfn.vmovn_u64.htmlfn.vmovq_n_u8.htmlfn.vmul_f32.htmlfn.vmul_s16.htmlfn.vmul_s32.htmlfn.vmul_s8.htmlfn.vmul_u16.htmlfn.vmul_u32.htmlfn.vmul_u8.htmlfn.vmulq_f32.htmlfn.vmulq_s16.htmlfn.vmulq_s32.htmlfn.vmulq_s8.htmlfn.vmulq_u16.htmlfn.vmulq_u32.htmlfn.vmulq_u8.htmlfn.vmvn_p8.htmlfn.vmvn_s16.htmlfn.vmvn_s32.htmlfn.vmvn_s8.htmlfn.vmvn_u16.htmlfn.vmvn_u32.htmlfn.vmvn_u8.htmlfn.vmvnq_p8.htmlfn.vmvnq_s16.htmlfn.vmvnq_s32.htmlfn.vmvnq_s8.htmlfn.vmvnq_u16.htmlfn.vmvnq_u32.htmlfn.vmvnq_u8.htmlfn.vorr_s16.htmlfn.vorr_s32.htmlfn.vorr_s64.htmlfn.vorr_s8.htmlfn.vorr_u16.htmlfn.vorr_u32.htmlfn.vorr_u64.htmlfn.vorr_u8.htmlfn.vorrq_s16.htmlfn.vorrq_s32.htmlfn.vorrq_s64.htmlfn.vorrq_s8.htmlfn.vorrq_u16.htmlfn.vorrq_u32.htmlfn.vorrq_u64.htmlfn.vorrq_u8.htmlfn.vpmax_f32.htmlfn.vpmax_s16.htmlfn.vpmax_s32.htmlfn.vpmax_s8.htmlfn.vpmax_u16.htmlfn.vpmax_u32.htmlfn.vpmax_u8.htmlfn.vpmin_f32.htmlfn.vpmin_s16.htmlfn.vpmin_s32.htmlfn.vpmin_s8.htmlfn.vpmin_u16.htmlfn.vpmin_u32.htmlfn.vpmin_u8.htmlfn.vqadd_s16.htmlfn.vqadd_s32.htmlfn.vqadd_s8.htmlfn.vqadd_u16.htmlfn.vqadd_u32.htmlfn.vqadd_u8.htmlfn.vqaddq_s16.htmlfn.vqaddq_s32.htmlfn.vqaddq_s8.htmlfn.vqaddq_u16.htmlfn.vqaddq_u32.htmlfn.vqaddq_u8.htmlfn.vqmovn_u64.htmlfn.vqsub_s16.htmlfn.vqsub_s32.htmlfn.vqsub_s8.htmlfn.vqsub_u16.htmlfn.vqsub_u32.htmlfn.vqsub_u8.htmlfn.vqsubq_s16.htmlfn.vqsubq_s32.htmlfn.vqsubq_s8.htmlfn.vqsubq_u16.htmlfn.vqsubq_u32.htmlfn.vqsubq_u8.htmlfn.vreinterpret_u64_u32.htmlfn.vreinterpretq_s8_u8.htmlfn.vreinterpretq_u16_u8.htmlfn.vreinterpretq_u32_u8.htmlfn.vreinterpretq_u64_u8.htmlfn.vreinterpretq_u8_s8.htmlfn.vrhadd_s16.htmlfn.vrhadd_s32.htmlfn.vrhadd_s8.htmlfn.vrhadd_u16.htmlfn.vrhadd_u32.htmlfn.vrhadd_u8.htmlfn.vrhaddq_s16.htmlfn.vrhaddq_s32.htmlfn.vrhaddq_s8.htmlfn.vrhaddq_u16.htmlfn.vrhaddq_u32.htmlfn.vrhaddq_u8.htmlfn.vrsqrte_f32.htmlfn.vshlq_n_u8.htmlfn.vshrq_n_u8.htmlfn.vsub_f32.htmlfn.vsub_s16.htmlfn.vsub_s32.htmlfn.vsub_s64.htmlfn.vsub_s8.htmlfn.vsub_u16.htmlfn.vsub_u32.htmlfn.vsub_u64.htmlfn.vsub_u8.htmlfn.vsubq_f32.htmlfn.vsubq_s16.htmlfn.vsubq_s32.htmlfn.vsubq_s64.htmlfn.vsubq_s8.htmlfn.vsubq_u16.htmlfn.vsubq_u32.htmlfn.vsubq_u64.htmlfn.vsubq_u8.htmlindex.htmlint16x4_t.t.htmlint16x8_t.t.htmlint32x2_t.t.htmlint32x4_t.t.htmlint64x1_t.t.htmlint64x2_t.t.htmlint8x16_t.t.htmlint8x8_t.t.htmlint8x8x2_t.t.htmlint8x8x3_t.t.htmlint8x8x4_t.t.htmlpoly16x4_t.t.htmlpoly16x8_t.t.htmlpoly8x16_t.t.htmlpoly8x8_t.t.htmlpoly8x8x2_t.t.htmlpoly8x8x3_t.t.htmlpoly8x8x4_t.t.htmlsidebar-items.jsstruct.APSR.htmlstruct.SY.htmlstruct.float32x2_t.htmlstruct.float32x4_t.htmlstruct.int16x4_t.htmlstruct.int16x8_t.htmlstruct.int32x2_t.htmlstruct.int32x4_t.htmlstruct.int64x1_t.htmlstruct.int64x2_t.htmlstruct.int8x16_t.htmlstruct.int8x8_t.htmlstruct.int8x8x2_t.htmlstruct.int8x8x3_t.htmlstruct.int8x8x4_t.htmlstruct.poly16x4_t.htmlstruct.poly16x8_t.htmlstruct.poly8x16_t.htmlstruct.poly8x8_t.htmlstruct.poly8x8x2_t.htmlstruct.poly8x8x3_t.htmlstruct.poly8x8x4_t.htmlstruct.uint16x4_t.htmlstruct.uint16x8_t.htmlstruct.uint32x2_t.htmlstruct.uint32x4_t.htmlstruct.uint64x1_t.htmlstruct.uint64x2_t.htmlstruct.uint8x16_t.htmlstruct.uint8x8_t.htmlstruct.uint8x8x2_t.htmlstruct.uint8x8x3_t.htmlstruct.uint8x8x4_t.htmluint16x4_t.t.htmluint16x8_t.t.htmluint32x2_t.t.htmluint32x4_t.t.htmluint64x1_t.t.htmluint64x2_t.t.htmluint8x16_t.t.htmluint8x8_t.t.htmluint8x8x2_t.t.htmluint8x8x3_t.t.htmluint8x8x4_t.t.htmlvadd_f32.v.htmlvadd_s16.v.htmlvadd_s32.v.htmlvadd_s8.v.htmlvadd_u16.v.htmlvadd_u32.v.htmlvadd_u8.v.htmlvaddl_s16.v.htmlvaddl_s32.v.htmlvaddl_s8.v.htmlvaddl_u16.v.htmlvaddl_u32.v.htmlvaddl_u8.v.htmlvaddq_f32.v.htmlvaddq_s16.v.htmlvaddq_s32.v.htmlvaddq_s64.v.htmlvaddq_s8.v.htmlvaddq_u16.v.htmlvaddq_u32.v.htmlvaddq_u64.v.htmlvaddq_u8.v.htmlvand_s16.v.htmlvand_s32.v.htmlvand_s64.v.htmlvand_s8.v.htmlvand_u16.v.htmlvand_u32.v.htmlvand_u64.v.htmlvand_u8.v.htmlvandq_s16.v.htmlvandq_s32.v.htmlvandq_s64.v.htmlvandq_s8.v.htmlvandq_u16.v.htmlvandq_u32.v.htmlvandq_u64.v.htmlvandq_u8.v.htmlvceq_f32.v.htmlvceq_s16.v.htmlvceq_s32.v.htmlvceq_s8.v.htmlvceq_u16.v.htmlvceq_u32.v.htmlvceq_u8.v.htmlvceqq_f32.v.htmlvceqq_s16.v.htmlvceqq_s32.v.htmlvceqq_s8.v.htmlvceqq_u16.v.htmlvceqq_u32.v.htmlvceqq_u8.v.htmlvcge_f32.v.htmlvcge_s16.v.htmlvcge_s32.v.htmlvcge_s8.v.htmlvcge_u16.v.htmlvcge_u32.v.htmlvcge_u8.v.htmlvcgeq_f32.v.htmlvcgeq_s16.v.htmlvcgeq_s32.v.htmlvcgeq_s8.v.htmlvcgeq_u16.v.htmlvcgeq_u32.v.htmlvcgeq_u8.v.htmlvcgt_f32.v.htmlvcgt_s16.v.htmlvcgt_s32.v.htmlvcgt_s8.v.htmlvcgt_u16.v.htmlvcgt_u32.v.htmlvcgt_u8.v.htmlvcgtq_f32.v.htmlvcgtq_s16.v.htmlvcgtq_s32.v.htmlvcgtq_s8.v.htmlvcgtq_u16.v.htmlvcgtq_u32.v.htmlvcgtq_u8.v.htmlvcle_f32.v.htmlvcle_s16.v.htmlvcle_s32.v.htmlvcle_s8.v.htmlvcle_u16.v.htmlvcle_u32.v.htmlvcle_u8.v.htmlvcleq_f32.v.htmlvcleq_s16.v.htmlvcleq_s32.v.htmlvcleq_s8.v.htmlvcleq_u16.v.htmlvcleq_u32.v.htmlvcleq_u8.v.htmlvclt_f32.v.htmlvclt_s16.v.htmlvclt_s32.v.htmlvclt_s8.v.htmlvclt_u16.v.htmlvclt_u32.v.htmlvclt_u8.v.htmlvcltq_f32.v.htmlvcltq_s16.v.htmlvcltq_s32.v.htmlvcltq_s8.v.htmlvcltq_u16.v.htmlvcltq_u32.v.htmlvcltq_u8.v.htmlvdupq_n_s8.v.htmlvdupq_n_u8.v.htmlveor_s16.v.htmlveor_s32.v.htmlveor_s64.v.htmlveor_s8.v.htmlveor_u16.v.htmlveor_u32.v.htmlveor_u64.v.htmlveor_u8.v.htmlveorq_s16.v.htmlveorq_s32.v.htmlveorq_s64.v.htmlveorq_s8.v.htmlveorq_u16.v.htmlveorq_u32.v.htmlveorq_u64.v.htmlveorq_u8.v.htmlvextq_s8.v.htmlvextq_u8.v.htmlvget_lane_u64.v.htmlvget_lane_u8.v.htmlvgetq_lane_u16.v.htmlvgetq_lane_u32.v.htmlvgetq_lane_u64.v.htmlvhadd_s16.v.htmlvhadd_s32.v.htmlvhadd_s8.v.htmlvhadd_u16.v.htmlvhadd_u32.v.htmlvhadd_u8.v.htmlvhaddq_s16.v.htmlvhaddq_s32.v.htmlvhaddq_s8.v.htmlvhaddq_u16.v.htmlvhaddq_u32.v.htmlvhaddq_u8.v.htmlvhsub_s16.v.htmlvhsub_s32.v.htmlvhsub_s8.v.htmlvhsub_u16.v.htmlvhsub_u32.v.htmlvhsub_u8.v.htmlvhsubq_s16.v.htmlvhsubq_s32.v.htmlvhsubq_s8.v.htmlvhsubq_u16.v.htmlvhsubq_u32.v.htmlvhsubq_u8.v.htmlvld1q_s8.v.htmlvld1q_u8.v.htmlvmovl_s16.v.htmlvmovl_s32.v.htmlvmovl_s8.v.htmlvmovl_u16.v.htmlvmovl_u32.v.htmlvmovl_u8.v.htmlvmovn_s16.v.htmlvmovn_s32.v.htmlvmovn_s64.v.htmlvmovn_u16.v.htmlvmovn_u32.v.htmlvmovn_u64.v.htmlvmovq_n_u8.v.htmlvmul_f32.v.htmlvmul_s16.v.htmlvmul_s32.v.htmlvmul_s8.v.htmlvmul_u16.v.htmlvmul_u32.v.htmlvmul_u8.v.htmlvmulq_f32.v.htmlvmulq_s16.v.htmlvmulq_s32.v.htmlvmulq_s8.v.htmlvmulq_u16.v.htmlvmulq_u32.v.htmlvmulq_u8.v.htmlvmvn_p8.v.htmlvmvn_s16.v.htmlvmvn_s32.v.htmlvmvn_s8.v.htmlvmvn_u16.v.htmlvmvn_u32.v.htmlvmvn_u8.v.htmlvmvnq_p8.v.htmlvmvnq_s16.v.htmlvmvnq_s32.v.htmlvmvnq_s8.v.htmlvmvnq_u16.v.htmlvmvnq_u32.v.htmlvmvnq_u8.v.htmlvorr_s16.v.htmlvorr_s32.v.htmlvorr_s64.v.htmlvorr_s8.v.htmlvorr_u16.v.htmlvorr_u32.v.htmlvorr_u64.v.htmlvorr_u8.v.htmlvorrq_s16.v.htmlvorrq_s32.v.htmlvorrq_s64.v.htmlvorrq_s8.v.htmlvorrq_u16.v.htmlvorrq_u32.v.htmlvorrq_u64.v.htmlvorrq_u8.v.htmlvpmax_f32.v.htmlvpmax_s16.v.htmlvpmax_s32.v.htmlvpmax_s8.v.htmlvpmax_u16.v.htmlvpmax_u32.v.htmlvpmax_u8.v.htmlvpmin_f32.v.htmlvpmin_s16.v.htmlvpmin_s32.v.htmlvpmin_s8.v.htmlvpmin_u16.v.htmlvpmin_u32.v.htmlvpmin_u8.v.htmlvqadd_s16.v.htmlvqadd_s32.v.htmlvqadd_s8.v.htmlvqadd_u16.v.htmlvqadd_u32.v.htmlvqadd_u8.v.htmlvqaddq_s16.v.htmlvqaddq_s32.v.htmlvqaddq_s8.v.htmlvqaddq_u16.v.htmlvqaddq_u32.v.htmlvqaddq_u8.v.htmlvqmovn_u64.v.htmlvqsub_s16.v.htmlvqsub_s32.v.htmlvqsub_s8.v.htmlvqsub_u16.v.htmlvqsub_u32.v.htmlvqsub_u8.v.htmlvqsubq_s16.v.htmlvqsubq_s32.v.htmlvqsubq_s8.v.htmlvqsubq_u16.v.htmlvqsubq_u32.v.htmlvqsubq_u8.v.htmlvreinterpret_u64_u32.v.htmlvreinterpretq_s8_u8.v.htmlvreinterpretq_u16_u8.v.htmlvreinterpretq_u32_u8.v.htmlvreinterpretq_u64_u8.v.htmlvreinterpretq_u8_s8.v.htmlvrhadd_s16.v.htmlvrhadd_s32.v.htmlvrhadd_s8.v.htmlvrhadd_u16.v.htmlvrhadd_u32.v.htmlvrhadd_u8.v.htmlvrhaddq_s16.v.htmlvrhaddq_s32.v.htmlvrhaddq_s8.v.htmlvrhaddq_u16.v.htmlvrhaddq_u32.v.htmlvrhaddq_u8.v.htmlvrsqrte_f32.v.htmlvshlq_n_u8.v.htmlvshrq_n_u8.v.htmlvsub_f32.v.htmlvsub_s16.v.htmlvsub_s32.v.htmlvsub_s64.v.htmlvsub_s8.v.htmlvsub_u16.v.htmlvsub_u32.v.htmlvsub_u64.v.htmlvsub_u8.v.htmlvsubq_f32.v.htmlvsubq_s16.v.htmlvsubq_s32.v.htmlvsubq_s64.v.htmlvsubq_s8.v.htmlvsubq_u16.v.htmlvsubq_u32.v.htmlvsubq_u64.v.htmlvsubq_u8.v.htmlindex.htmlmips__msa_add_a_b.v.html__msa_add_a_d.v.html__msa_add_a_h.v.html__msa_add_a_w.v.html__msa_adds_a_b.v.html__msa_adds_a_d.v.html__msa_adds_a_h.v.html__msa_adds_a_w.v.html__msa_adds_s_b.v.html__msa_adds_s_d.v.html__msa_adds_s_h.v.html__msa_adds_s_w.v.html__msa_adds_u_b.v.html__msa_adds_u_d.v.html__msa_adds_u_h.v.html__msa_adds_u_w.v.html__msa_addv_b.v.html__msa_addv_d.v.html__msa_addv_h.v.html__msa_addv_w.v.html__msa_addvi_b.v.html__msa_addvi_d.v.html__msa_addvi_h.v.html__msa_addvi_w.v.html__msa_and_v.v.html__msa_andi_b.v.html__msa_asub_s_b.v.html__msa_asub_s_d.v.html__msa_asub_s_h.v.html__msa_asub_s_w.v.html__msa_asub_u_b.v.html__msa_asub_u_d.v.html__msa_asub_u_h.v.html__msa_asub_u_w.v.html__msa_ave_s_b.v.html__msa_ave_s_d.v.html__msa_ave_s_h.v.html__msa_ave_s_w.v.html__msa_ave_u_b.v.html__msa_ave_u_d.v.html__msa_ave_u_h.v.html__msa_ave_u_w.v.html__msa_aver_s_b.v.html__msa_aver_s_d.v.html__msa_aver_s_h.v.html__msa_aver_s_w.v.html__msa_aver_u_b.v.html__msa_aver_u_d.v.html__msa_aver_u_h.v.html__msa_aver_u_w.v.html__msa_bclr_b.v.html__msa_bclr_d.v.html__msa_bclr_h.v.html__msa_bclr_w.v.html__msa_bclri_b.v.html__msa_bclri_d.v.html__msa_bclri_h.v.html__msa_bclri_w.v.html__msa_binsl_b.v.html__msa_binsl_d.v.html__msa_binsl_h.v.html__msa_binsl_w.v.html__msa_binsli_b.v.html__msa_binsli_d.v.html__msa_binsli_h.v.html__msa_binsli_w.v.html__msa_binsr_b.v.html__msa_binsr_d.v.html__msa_binsr_h.v.html__msa_binsr_w.v.html__msa_binsri_b.v.html__msa_binsri_d.v.html__msa_binsri_h.v.html__msa_binsri_w.v.html__msa_bmnz_v.v.html__msa_bmnzi_b.v.html__msa_bmz_v.v.html__msa_bmzi_b.v.html__msa_bneg_b.v.html__msa_bneg_d.v.html__msa_bneg_h.v.html__msa_bneg_w.v.html__msa_bnegi_b.v.html__msa_bnegi_d.v.html__msa_bnegi_h.v.html__msa_bnegi_w.v.html__msa_bnz_b.v.html__msa_bnz_d.v.html__msa_bnz_h.v.html__msa_bnz_v.v.html__msa_bnz_w.v.html__msa_bsel_v.v.html__msa_bseli_b.v.html__msa_bset_b.v.html__msa_bset_d.v.html__msa_bset_h.v.html__msa_bset_w.v.html__msa_bseti_b.v.html__msa_bseti_d.v.html__msa_bseti_h.v.html__msa_bseti_w.v.html__msa_bz_b.v.html__msa_bz_d.v.html__msa_bz_h.v.html__msa_bz_v.v.html__msa_bz_w.v.html__msa_ceq_b.v.html__msa_ceq_d.v.html__msa_ceq_h.v.html__msa_ceq_w.v.html__msa_ceqi_b.v.html__msa_ceqi_d.v.html__msa_ceqi_h.v.html__msa_ceqi_w.v.html__msa_cfcmsa.v.html__msa_cle_s_b.v.html__msa_cle_s_d.v.html__msa_cle_s_h.v.html__msa_cle_s_w.v.html__msa_cle_u_b.v.html__msa_cle_u_d.v.html__msa_cle_u_h.v.html__msa_cle_u_w.v.html__msa_clei_s_b.v.html__msa_clei_s_d.v.html__msa_clei_s_h.v.html__msa_clei_s_w.v.html__msa_clei_u_b.v.html__msa_clei_u_d.v.html__msa_clei_u_h.v.html__msa_clei_u_w.v.html__msa_clt_s_b.v.html__msa_clt_s_d.v.html__msa_clt_s_h.v.html__msa_clt_s_w.v.html__msa_clt_u_b.v.html__msa_clt_u_d.v.html__msa_clt_u_h.v.html__msa_clt_u_w.v.html__msa_clti_s_b.v.html__msa_clti_s_d.v.html__msa_clti_s_h.v.html__msa_clti_s_w.v.html__msa_clti_u_b.v.html__msa_clti_u_d.v.html__msa_clti_u_h.v.html__msa_clti_u_w.v.html__msa_copy_s_b.v.html__msa_copy_s_d.v.html__msa_copy_s_h.v.html__msa_copy_s_w.v.html__msa_copy_u_b.v.html__msa_copy_u_d.v.html__msa_copy_u_h.v.html__msa_copy_u_w.v.html__msa_ctcmsa.v.html__msa_div_s_b.v.html__msa_div_s_d.v.html__msa_div_s_h.v.html__msa_div_s_w.v.html__msa_div_u_b.v.html__msa_div_u_d.v.html__msa_div_u_h.v.html__msa_div_u_w.v.html__msa_dotp_s_d.v.html__msa_dotp_s_h.v.html__msa_dotp_s_w.v.html__msa_dotp_u_d.v.html__msa_dotp_u_h.v.html__msa_dotp_u_w.v.html__msa_dpadd_s_d.v.html__msa_dpadd_s_h.v.html__msa_dpadd_s_w.v.html__msa_dpadd_u_d.v.html__msa_dpadd_u_h.v.html__msa_dpadd_u_w.v.html__msa_dpsub_s_d.v.html__msa_dpsub_s_h.v.html__msa_dpsub_s_w.v.html__msa_dpsub_u_d.v.html__msa_dpsub_u_h.v.html__msa_dpsub_u_w.v.html__msa_fadd_d.v.html__msa_fadd_w.v.html__msa_fcaf_d.v.html__msa_fcaf_w.v.html__msa_fceq_d.v.html__msa_fceq_w.v.html__msa_fclass_d.v.html__msa_fclass_w.v.html__msa_fcle_d.v.html__msa_fcle_w.v.html__msa_fclt_d.v.html__msa_fclt_w.v.html__msa_fcne_d.v.html__msa_fcne_w.v.html__msa_fcor_d.v.html__msa_fcor_w.v.html__msa_fcueq_d.v.html__msa_fcueq_w.v.html__msa_fcule_d.v.html__msa_fcule_w.v.html__msa_fcult_d.v.html__msa_fcult_w.v.html__msa_fcun_d.v.html__msa_fcun_w.v.html__msa_fcune_d.v.html__msa_fcune_w.v.html__msa_fdiv_d.v.html__msa_fdiv_w.v.html__msa_fexdo_w.v.html__msa_fexp2_d.v.html__msa_fexp2_w.v.html__msa_fexupl_d.v.html__msa_fexupr_d.v.html__msa_ffint_s_d.v.html__msa_ffint_s_w.v.html__msa_ffint_u_d.v.html__msa_ffint_u_w.v.html__msa_ffql_d.v.html__msa_ffql_w.v.html__msa_ffqr_d.v.html__msa_ffqr_w.v.html__msa_fill_b.v.html__msa_fill_d.v.html__msa_fill_h.v.html__msa_fill_w.v.html__msa_flog2_d.v.html__msa_flog2_w.v.html__msa_fmadd_d.v.html__msa_fmadd_w.v.html__msa_fmax_a_d.v.html__msa_fmax_a_w.v.html__msa_fmax_d.v.html__msa_fmax_w.v.html__msa_fmin_a_d.v.html__msa_fmin_a_w.v.html__msa_fmin_d.v.html__msa_fmin_w.v.html__msa_fmsub_d.v.html__msa_fmsub_w.v.html__msa_fmul_d.v.html__msa_fmul_w.v.html__msa_frcp_d.v.html__msa_frcp_w.v.html__msa_frint_d.v.html__msa_frint_w.v.html__msa_frsqrt_d.v.html__msa_frsqrt_w.v.html__msa_fsaf_d.v.html__msa_fsaf_w.v.html__msa_fseq_d.v.html__msa_fseq_w.v.html__msa_fsle_d.v.html__msa_fsle_w.v.html__msa_fslt_d.v.html__msa_fslt_w.v.html__msa_fsne_d.v.html__msa_fsne_w.v.html__msa_fsor_d.v.html__msa_fsor_w.v.html__msa_fsqrt_d.v.html__msa_fsqrt_w.v.html__msa_fsub_d.v.html__msa_fsub_w.v.html__msa_fsueq_d.v.html__msa_fsueq_w.v.html__msa_fsule_d.v.html__msa_fsule_w.v.html__msa_fsult_d.v.html__msa_fsult_w.v.html__msa_fsun_d.v.html__msa_fsun_w.v.html__msa_fsune_d.v.html__msa_fsune_w.v.html__msa_ftint_s_d.v.html__msa_ftint_s_w.v.html__msa_ftint_u_d.v.html__msa_ftint_u_w.v.html__msa_ftq_h.v.html__msa_ftq_w.v.html__msa_ftrunc_s_d.v.html__msa_ftrunc_s_w.v.html__msa_ftrunc_u_d.v.html__msa_ftrunc_u_w.v.html__msa_hadd_s_d.v.html__msa_hadd_s_h.v.html__msa_hadd_s_w.v.html__msa_hadd_u_d.v.html__msa_hadd_u_h.v.html__msa_hadd_u_w.v.html__msa_hsub_s_d.v.html__msa_hsub_s_h.v.html__msa_hsub_s_w.v.html__msa_hsub_u_d.v.html__msa_hsub_u_h.v.html__msa_hsub_u_w.v.html__msa_ilvev_b.v.html__msa_ilvev_d.v.html__msa_ilvev_h.v.html__msa_ilvev_w.v.html__msa_ilvl_b.v.html__msa_ilvl_d.v.html__msa_ilvl_h.v.html__msa_ilvl_w.v.html__msa_ilvod_b.v.html__msa_ilvod_d.v.html__msa_ilvod_h.v.html__msa_ilvod_w.v.html__msa_ilvr_b.v.html__msa_ilvr_d.v.html__msa_ilvr_h.v.html__msa_ilvr_w.v.html__msa_insert_b.v.html__msa_insert_d.v.html__msa_insert_h.v.html__msa_insert_w.v.html__msa_insve_b.v.html__msa_insve_d.v.html__msa_insve_h.v.html__msa_insve_w.v.html__msa_ld_b.v.html__msa_ld_d.v.html__msa_ld_h.v.html__msa_ld_w.v.html__msa_ldi_b.v.html__msa_ldi_d.v.html__msa_ldi_h.v.html__msa_ldi_w.v.html__msa_madd_q_h.v.html__msa_madd_q_w.v.html__msa_maddr_q_h.v.html__msa_maddr_q_w.v.html__msa_maddv_b.v.html__msa_maddv_d.v.html__msa_maddv_h.v.html__msa_maddv_w.v.html__msa_max_a_b.v.html__msa_max_a_d.v.html__msa_max_a_h.v.html__msa_max_a_w.v.html__msa_max_s_b.v.html__msa_max_s_d.v.html__msa_max_s_h.v.html__msa_max_s_w.v.html__msa_max_u_b.v.html__msa_max_u_d.v.html__msa_max_u_h.v.html__msa_max_u_w.v.html__msa_maxi_s_b.v.html__msa_maxi_s_d.v.html__msa_maxi_s_h.v.html__msa_maxi_s_w.v.html__msa_maxi_u_b.v.html__msa_maxi_u_d.v.html__msa_maxi_u_h.v.html__msa_maxi_u_w.v.html__msa_min_a_b.v.html__msa_min_a_d.v.html__msa_min_a_h.v.html__msa_min_a_w.v.html__msa_min_s_b.v.html__msa_min_s_d.v.html__msa_min_s_h.v.html__msa_min_s_w.v.html__msa_min_u_b.v.html__msa_min_u_d.v.html__msa_min_u_h.v.html__msa_min_u_w.v.html__msa_mini_s_b.v.html__msa_mini_s_d.v.html__msa_mini_s_h.v.html__msa_mini_s_w.v.html__msa_mini_u_b.v.html__msa_mini_u_d.v.html__msa_mini_u_h.v.html__msa_mini_u_w.v.html__msa_mod_s_b.v.html__msa_mod_s_d.v.html__msa_mod_s_h.v.html__msa_mod_s_w.v.html__msa_mod_u_b.v.html__msa_mod_u_d.v.html__msa_mod_u_h.v.html__msa_mod_u_w.v.html__msa_move_v.v.html__msa_msub_q_h.v.html__msa_msub_q_w.v.html__msa_msubr_q_h.v.html__msa_msubr_q_w.v.html__msa_msubv_b.v.html__msa_msubv_d.v.html__msa_msubv_h.v.html__msa_msubv_w.v.html__msa_mul_q_h.v.html__msa_mul_q_w.v.html__msa_mulr_q_h.v.html__msa_mulr_q_w.v.html__msa_mulv_b.v.html__msa_mulv_d.v.html__msa_mulv_h.v.html__msa_mulv_w.v.html__msa_nloc_b.v.html__msa_nloc_d.v.html__msa_nloc_h.v.html__msa_nloc_w.v.html__msa_nlzc_b.v.html__msa_nlzc_d.v.html__msa_nlzc_h.v.html__msa_nlzc_w.v.html__msa_nor_v.v.html__msa_nori_b.v.html__msa_or_v.v.html__msa_ori_b.v.html__msa_pckev_b.v.html__msa_pckev_d.v.html__msa_pckev_h.v.html__msa_pckev_w.v.html__msa_pckod_b.v.html__msa_pckod_d.v.html__msa_pckod_h.v.html__msa_pckod_w.v.html__msa_pcnt_b.v.html__msa_pcnt_d.v.html__msa_pcnt_h.v.html__msa_pcnt_w.v.html__msa_sat_s_b.v.html__msa_sat_s_d.v.html__msa_sat_s_h.v.html__msa_sat_s_w.v.html__msa_sat_u_b.v.html__msa_sat_u_d.v.html__msa_sat_u_h.v.html__msa_sat_u_w.v.html__msa_shf_b.v.html__msa_shf_h.v.html__msa_shf_w.v.html__msa_sld_b.v.html__msa_sld_d.v.html__msa_sld_h.v.html__msa_sld_w.v.html__msa_sldi_b.v.html__msa_sldi_d.v.html__msa_sldi_h.v.html__msa_sldi_w.v.html__msa_sll_b.v.html__msa_sll_d.v.html__msa_sll_h.v.html__msa_sll_w.v.html__msa_slli_b.v.html__msa_slli_d.v.html__msa_slli_h.v.html__msa_slli_w.v.html__msa_splat_b.v.html__msa_splat_d.v.html__msa_splat_h.v.html__msa_splat_w.v.html__msa_splati_b.v.html__msa_splati_d.v.html__msa_splati_h.v.html__msa_splati_w.v.html__msa_sra_b.v.html__msa_sra_d.v.html__msa_sra_h.v.html__msa_sra_w.v.html__msa_srai_b.v.html__msa_srai_d.v.html__msa_srai_h.v.html__msa_srai_w.v.html__msa_srar_b.v.html__msa_srar_d.v.html__msa_srar_h.v.html__msa_srar_w.v.html__msa_srari_b.v.html__msa_srari_d.v.html__msa_srari_h.v.html__msa_srari_w.v.html__msa_srl_b.v.html__msa_srl_d.v.html__msa_srl_h.v.html__msa_srl_w.v.html__msa_srli_b.v.html__msa_srli_d.v.html__msa_srli_h.v.html__msa_srli_w.v.html__msa_srlr_b.v.html__msa_srlr_d.v.html__msa_srlr_h.v.html__msa_srlr_w.v.html__msa_srlri_b.v.html__msa_srlri_d.v.html__msa_srlri_h.v.html__msa_srlri_w.v.html__msa_st_b.v.html__msa_st_d.v.html__msa_st_h.v.html__msa_st_w.v.html__msa_subs_s_b.v.html__msa_subs_s_d.v.html__msa_subs_s_h.v.html__msa_subs_s_w.v.html__msa_subs_u_b.v.html__msa_subs_u_d.v.html__msa_subs_u_h.v.html__msa_subs_u_w.v.html__msa_subsus_u_b.v.html__msa_subsus_u_d.v.html__msa_subsus_u_h.v.html__msa_subsus_u_w.v.html__msa_subsuu_s_b.v.html__msa_subsuu_s_d.v.html__msa_subsuu_s_h.v.html__msa_subsuu_s_w.v.html__msa_subv_b.v.html__msa_subv_d.v.html__msa_subv_h.v.html__msa_subv_w.v.html__msa_subvi_b.v.html__msa_subvi_d.v.html__msa_subvi_h.v.html__msa_subvi_w.v.html__msa_vshf_b.v.html__msa_vshf_d.v.html__msa_vshf_h.v.html__msa_vshf_w.v.html__msa_xor_v.v.html__msa_xori_b.v.htmlbreak_.v.htmlfn.__msa_add_a_b.htmlfn.__msa_add_a_d.htmlfn.__msa_add_a_h.htmlfn.__msa_add_a_w.htmlfn.__msa_adds_a_b.htmlfn.__msa_adds_a_d.htmlfn.__msa_adds_a_h.htmlfn.__msa_adds_a_w.htmlfn.__msa_adds_s_b.htmlfn.__msa_adds_s_d.htmlfn.__msa_adds_s_h.htmlfn.__msa_adds_s_w.htmlfn.__msa_adds_u_b.htmlfn.__msa_adds_u_d.htmlfn.__msa_adds_u_h.htmlfn.__msa_adds_u_w.htmlfn.__msa_addv_b.htmlfn.__msa_addv_d.htmlfn.__msa_addv_h.htmlfn.__msa_addv_w.htmlfn.__msa_addvi_b.htmlfn.__msa_addvi_d.htmlfn.__msa_addvi_h.htmlfn.__msa_addvi_w.htmlfn.__msa_and_v.htmlfn.__msa_andi_b.htmlfn.__msa_asub_s_b.htmlfn.__msa_asub_s_d.htmlfn.__msa_asub_s_h.htmlfn.__msa_asub_s_w.htmlfn.__msa_asub_u_b.htmlfn.__msa_asub_u_d.htmlfn.__msa_asub_u_h.htmlfn.__msa_asub_u_w.htmlfn.__msa_ave_s_b.htmlfn.__msa_ave_s_d.htmlfn.__msa_ave_s_h.htmlfn.__msa_ave_s_w.htmlfn.__msa_ave_u_b.htmlfn.__msa_ave_u_d.htmlfn.__msa_ave_u_h.htmlfn.__msa_ave_u_w.htmlfn.__msa_aver_s_b.htmlfn.__msa_aver_s_d.htmlfn.__msa_aver_s_h.htmlfn.__msa_aver_s_w.htmlfn.__msa_aver_u_b.htmlfn.__msa_aver_u_d.htmlfn.__msa_aver_u_h.htmlfn.__msa_aver_u_w.htmlfn.__msa_bclr_b.htmlfn.__msa_bclr_d.htmlfn.__msa_bclr_h.htmlfn.__msa_bclr_w.htmlfn.__msa_bclri_b.htmlfn.__msa_bclri_d.htmlfn.__msa_bclri_h.htmlfn.__msa_bclri_w.htmlfn.__msa_binsl_b.htmlfn.__msa_binsl_d.htmlfn.__msa_binsl_h.htmlfn.__msa_binsl_w.htmlfn.__msa_binsli_b.htmlfn.__msa_binsli_d.htmlfn.__msa_binsli_h.htmlfn.__msa_binsli_w.htmlfn.__msa_binsr_b.htmlfn.__msa_binsr_d.htmlfn.__msa_binsr_h.htmlfn.__msa_binsr_w.htmlfn.__msa_binsri_b.htmlfn.__msa_binsri_d.htmlfn.__msa_binsri_h.htmlfn.__msa_binsri_w.htmlfn.__msa_bmnz_v.htmlfn.__msa_bmnzi_b.htmlfn.__msa_bmz_v.htmlfn.__msa_bmzi_b.htmlfn.__msa_bneg_b.htmlfn.__msa_bneg_d.htmlfn.__msa_bneg_h.htmlfn.__msa_bneg_w.htmlfn.__msa_bnegi_b.htmlfn.__msa_bnegi_d.htmlfn.__msa_bnegi_h.htmlfn.__msa_bnegi_w.htmlfn.__msa_bnz_b.htmlfn.__msa_bnz_d.htmlfn.__msa_bnz_h.htmlfn.__msa_bnz_v.htmlfn.__msa_bnz_w.htmlfn.__msa_bsel_v.htmlfn.__msa_bseli_b.htmlfn.__msa_bset_b.htmlfn.__msa_bset_d.htmlfn.__msa_bset_h.htmlfn.__msa_bset_w.htmlfn.__msa_bseti_b.htmlfn.__msa_bseti_d.htmlfn.__msa_bseti_h.htmlfn.__msa_bseti_w.htmlfn.__msa_bz_b.htmlfn.__msa_bz_d.htmlfn.__msa_bz_h.htmlfn.__msa_bz_v.htmlfn.__msa_bz_w.htmlfn.__msa_ceq_b.htmlfn.__msa_ceq_d.htmlfn.__msa_ceq_h.htmlfn.__msa_ceq_w.htmlfn.__msa_ceqi_b.htmlfn.__msa_ceqi_d.htmlfn.__msa_ceqi_h.htmlfn.__msa_ceqi_w.htmlfn.__msa_cfcmsa.htmlfn.__msa_cle_s_b.htmlfn.__msa_cle_s_d.htmlfn.__msa_cle_s_h.htmlfn.__msa_cle_s_w.htmlfn.__msa_cle_u_b.htmlfn.__msa_cle_u_d.htmlfn.__msa_cle_u_h.htmlfn.__msa_cle_u_w.htmlfn.__msa_clei_s_b.htmlfn.__msa_clei_s_d.htmlfn.__msa_clei_s_h.htmlfn.__msa_clei_s_w.htmlfn.__msa_clei_u_b.htmlfn.__msa_clei_u_d.htmlfn.__msa_clei_u_h.htmlfn.__msa_clei_u_w.htmlfn.__msa_clt_s_b.htmlfn.__msa_clt_s_d.htmlfn.__msa_clt_s_h.htmlfn.__msa_clt_s_w.htmlfn.__msa_clt_u_b.htmlfn.__msa_clt_u_d.htmlfn.__msa_clt_u_h.htmlfn.__msa_clt_u_w.htmlfn.__msa_clti_s_b.htmlfn.__msa_clti_s_d.htmlfn.__msa_clti_s_h.htmlfn.__msa_clti_s_w.htmlfn.__msa_clti_u_b.htmlfn.__msa_clti_u_d.htmlfn.__msa_clti_u_h.htmlfn.__msa_clti_u_w.htmlfn.__msa_copy_s_b.htmlfn.__msa_copy_s_d.htmlfn.__msa_copy_s_h.htmlfn.__msa_copy_s_w.htmlfn.__msa_copy_u_b.htmlfn.__msa_copy_u_d.htmlfn.__msa_copy_u_h.htmlfn.__msa_copy_u_w.htmlfn.__msa_ctcmsa.htmlfn.__msa_div_s_b.htmlfn.__msa_div_s_d.htmlfn.__msa_div_s_h.htmlfn.__msa_div_s_w.htmlfn.__msa_div_u_b.htmlfn.__msa_div_u_d.htmlfn.__msa_div_u_h.htmlfn.__msa_div_u_w.htmlfn.__msa_dotp_s_d.htmlfn.__msa_dotp_s_h.htmlfn.__msa_dotp_s_w.htmlfn.__msa_dotp_u_d.htmlfn.__msa_dotp_u_h.htmlfn.__msa_dotp_u_w.htmlfn.__msa_dpadd_s_d.htmlfn.__msa_dpadd_s_h.htmlfn.__msa_dpadd_s_w.htmlfn.__msa_dpadd_u_d.htmlfn.__msa_dpadd_u_h.htmlfn.__msa_dpadd_u_w.htmlfn.__msa_dpsub_s_d.htmlfn.__msa_dpsub_s_h.htmlfn.__msa_dpsub_s_w.htmlfn.__msa_dpsub_u_d.htmlfn.__msa_dpsub_u_h.htmlfn.__msa_dpsub_u_w.htmlfn.__msa_fadd_d.htmlfn.__msa_fadd_w.htmlfn.__msa_fcaf_d.htmlfn.__msa_fcaf_w.htmlfn.__msa_fceq_d.htmlfn.__msa_fceq_w.htmlfn.__msa_fclass_d.htmlfn.__msa_fclass_w.htmlfn.__msa_fcle_d.htmlfn.__msa_fcle_w.htmlfn.__msa_fclt_d.htmlfn.__msa_fclt_w.htmlfn.__msa_fcne_d.htmlfn.__msa_fcne_w.htmlfn.__msa_fcor_d.htmlfn.__msa_fcor_w.htmlfn.__msa_fcueq_d.htmlfn.__msa_fcueq_w.htmlfn.__msa_fcule_d.htmlfn.__msa_fcule_w.htmlfn.__msa_fcult_d.htmlfn.__msa_fcult_w.htmlfn.__msa_fcun_d.htmlfn.__msa_fcun_w.htmlfn.__msa_fcune_d.htmlfn.__msa_fcune_w.htmlfn.__msa_fdiv_d.htmlfn.__msa_fdiv_w.htmlfn.__msa_fexdo_w.htmlfn.__msa_fexp2_d.htmlfn.__msa_fexp2_w.htmlfn.__msa_fexupl_d.htmlfn.__msa_fexupr_d.htmlfn.__msa_ffint_s_d.htmlfn.__msa_ffint_s_w.htmlfn.__msa_ffint_u_d.htmlfn.__msa_ffint_u_w.htmlfn.__msa_ffql_d.htmlfn.__msa_ffql_w.htmlfn.__msa_ffqr_d.htmlfn.__msa_ffqr_w.htmlfn.__msa_fill_b.htmlfn.__msa_fill_d.htmlfn.__msa_fill_h.htmlfn.__msa_fill_w.htmlfn.__msa_flog2_d.htmlfn.__msa_flog2_w.htmlfn.__msa_fmadd_d.htmlfn.__msa_fmadd_w.htmlfn.__msa_fmax_a_d.htmlfn.__msa_fmax_a_w.htmlfn.__msa_fmax_d.htmlfn.__msa_fmax_w.htmlfn.__msa_fmin_a_d.htmlfn.__msa_fmin_a_w.htmlfn.__msa_fmin_d.htmlfn.__msa_fmin_w.htmlfn.__msa_fmsub_d.htmlfn.__msa_fmsub_w.htmlfn.__msa_fmul_d.htmlfn.__msa_fmul_w.htmlfn.__msa_frcp_d.htmlfn.__msa_frcp_w.htmlfn.__msa_frint_d.htmlfn.__msa_frint_w.htmlfn.__msa_frsqrt_d.htmlfn.__msa_frsqrt_w.htmlfn.__msa_fsaf_d.htmlfn.__msa_fsaf_w.htmlfn.__msa_fseq_d.htmlfn.__msa_fseq_w.htmlfn.__msa_fsle_d.htmlfn.__msa_fsle_w.htmlfn.__msa_fslt_d.htmlfn.__msa_fslt_w.htmlfn.__msa_fsne_d.htmlfn.__msa_fsne_w.htmlfn.__msa_fsor_d.htmlfn.__msa_fsor_w.htmlfn.__msa_fsqrt_d.htmlfn.__msa_fsqrt_w.htmlfn.__msa_fsub_d.htmlfn.__msa_fsub_w.htmlfn.__msa_fsueq_d.htmlfn.__msa_fsueq_w.htmlfn.__msa_fsule_d.htmlfn.__msa_fsule_w.htmlfn.__msa_fsult_d.htmlfn.__msa_fsult_w.htmlfn.__msa_fsun_d.htmlfn.__msa_fsun_w.htmlfn.__msa_fsune_d.htmlfn.__msa_fsune_w.htmlfn.__msa_ftint_s_d.htmlfn.__msa_ftint_s_w.htmlfn.__msa_ftint_u_d.htmlfn.__msa_ftint_u_w.htmlfn.__msa_ftq_h.htmlfn.__msa_ftq_w.htmlfn.__msa_ftrunc_s_d.htmlfn.__msa_ftrunc_s_w.htmlfn.__msa_ftrunc_u_d.htmlfn.__msa_ftrunc_u_w.htmlfn.__msa_hadd_s_d.htmlfn.__msa_hadd_s_h.htmlfn.__msa_hadd_s_w.htmlfn.__msa_hadd_u_d.htmlfn.__msa_hadd_u_h.htmlfn.__msa_hadd_u_w.htmlfn.__msa_hsub_s_d.htmlfn.__msa_hsub_s_h.htmlfn.__msa_hsub_s_w.htmlfn.__msa_hsub_u_d.htmlfn.__msa_hsub_u_h.htmlfn.__msa_hsub_u_w.htmlfn.__msa_ilvev_b.htmlfn.__msa_ilvev_d.htmlfn.__msa_ilvev_h.htmlfn.__msa_ilvev_w.htmlfn.__msa_ilvl_b.htmlfn.__msa_ilvl_d.htmlfn.__msa_ilvl_h.htmlfn.__msa_ilvl_w.htmlfn.__msa_ilvod_b.htmlfn.__msa_ilvod_d.htmlfn.__msa_ilvod_h.htmlfn.__msa_ilvod_w.htmlfn.__msa_ilvr_b.htmlfn.__msa_ilvr_d.htmlfn.__msa_ilvr_h.htmlfn.__msa_ilvr_w.htmlfn.__msa_insert_b.htmlfn.__msa_insert_d.htmlfn.__msa_insert_h.htmlfn.__msa_insert_w.htmlfn.__msa_insve_b.htmlfn.__msa_insve_d.htmlfn.__msa_insve_h.htmlfn.__msa_insve_w.htmlfn.__msa_ld_b.htmlfn.__msa_ld_d.htmlfn.__msa_ld_h.htmlfn.__msa_ld_w.htmlfn.__msa_ldi_b.htmlfn.__msa_ldi_d.htmlfn.__msa_ldi_h.htmlfn.__msa_ldi_w.htmlfn.__msa_madd_q_h.htmlfn.__msa_madd_q_w.htmlfn.__msa_maddr_q_h.htmlfn.__msa_maddr_q_w.htmlfn.__msa_maddv_b.htmlfn.__msa_maddv_d.htmlfn.__msa_maddv_h.htmlfn.__msa_maddv_w.htmlfn.__msa_max_a_b.htmlfn.__msa_max_a_d.htmlfn.__msa_max_a_h.htmlfn.__msa_max_a_w.htmlfn.__msa_max_s_b.htmlfn.__msa_max_s_d.htmlfn.__msa_max_s_h.htmlfn.__msa_max_s_w.htmlfn.__msa_max_u_b.htmlfn.__msa_max_u_d.htmlfn.__msa_max_u_h.htmlfn.__msa_max_u_w.htmlfn.__msa_maxi_s_b.htmlfn.__msa_maxi_s_d.htmlfn.__msa_maxi_s_h.htmlfn.__msa_maxi_s_w.htmlfn.__msa_maxi_u_b.htmlfn.__msa_maxi_u_d.htmlfn.__msa_maxi_u_h.htmlfn.__msa_maxi_u_w.htmlfn.__msa_min_a_b.htmlfn.__msa_min_a_d.htmlfn.__msa_min_a_h.htmlfn.__msa_min_a_w.htmlfn.__msa_min_s_b.htmlfn.__msa_min_s_d.htmlfn.__msa_min_s_h.htmlfn.__msa_min_s_w.htmlfn.__msa_min_u_b.htmlfn.__msa_min_u_d.htmlfn.__msa_min_u_h.htmlfn.__msa_min_u_w.htmlfn.__msa_mini_s_b.htmlfn.__msa_mini_s_d.htmlfn.__msa_mini_s_h.htmlfn.__msa_mini_s_w.htmlfn.__msa_mini_u_b.htmlfn.__msa_mini_u_d.htmlfn.__msa_mini_u_h.htmlfn.__msa_mini_u_w.htmlfn.__msa_mod_s_b.htmlfn.__msa_mod_s_d.htmlfn.__msa_mod_s_h.htmlfn.__msa_mod_s_w.htmlfn.__msa_mod_u_b.htmlfn.__msa_mod_u_d.htmlfn.__msa_mod_u_h.htmlfn.__msa_mod_u_w.htmlfn.__msa_move_v.htmlfn.__msa_msub_q_h.htmlfn.__msa_msub_q_w.htmlfn.__msa_msubr_q_h.htmlfn.__msa_msubr_q_w.htmlfn.__msa_msubv_b.htmlfn.__msa_msubv_d.htmlfn.__msa_msubv_h.htmlfn.__msa_msubv_w.htmlfn.__msa_mul_q_h.htmlfn.__msa_mul_q_w.htmlfn.__msa_mulr_q_h.htmlfn.__msa_mulr_q_w.htmlfn.__msa_mulv_b.htmlfn.__msa_mulv_d.htmlfn.__msa_mulv_h.htmlfn.__msa_mulv_w.htmlfn.__msa_nloc_b.htmlfn.__msa_nloc_d.htmlfn.__msa_nloc_h.htmlfn.__msa_nloc_w.htmlfn.__msa_nlzc_b.htmlfn.__msa_nlzc_d.htmlfn.__msa_nlzc_h.htmlfn.__msa_nlzc_w.htmlfn.__msa_nor_v.htmlfn.__msa_nori_b.htmlfn.__msa_or_v.htmlfn.__msa_ori_b.htmlfn.__msa_pckev_b.htmlfn.__msa_pckev_d.htmlfn.__msa_pckev_h.htmlfn.__msa_pckev_w.htmlfn.__msa_pckod_b.htmlfn.__msa_pckod_d.htmlfn.__msa_pckod_h.htmlfn.__msa_pckod_w.htmlfn.__msa_pcnt_b.htmlfn.__msa_pcnt_d.htmlfn.__msa_pcnt_h.htmlfn.__msa_pcnt_w.htmlfn.__msa_sat_s_b.htmlfn.__msa_sat_s_d.htmlfn.__msa_sat_s_h.htmlfn.__msa_sat_s_w.htmlfn.__msa_sat_u_b.htmlfn.__msa_sat_u_d.htmlfn.__msa_sat_u_h.htmlfn.__msa_sat_u_w.htmlfn.__msa_shf_b.htmlfn.__msa_shf_h.htmlfn.__msa_shf_w.htmlfn.__msa_sld_b.htmlfn.__msa_sld_d.htmlfn.__msa_sld_h.htmlfn.__msa_sld_w.htmlfn.__msa_sldi_b.htmlfn.__msa_sldi_d.htmlfn.__msa_sldi_h.htmlfn.__msa_sldi_w.htmlfn.__msa_sll_b.htmlfn.__msa_sll_d.htmlfn.__msa_sll_h.htmlfn.__msa_sll_w.htmlfn.__msa_slli_b.htmlfn.__msa_slli_d.htmlfn.__msa_slli_h.htmlfn.__msa_slli_w.htmlfn.__msa_splat_b.htmlfn.__msa_splat_d.htmlfn.__msa_splat_h.htmlfn.__msa_splat_w.htmlfn.__msa_splati_b.htmlfn.__msa_splati_d.htmlfn.__msa_splati_h.htmlfn.__msa_splati_w.htmlfn.__msa_sra_b.htmlfn.__msa_sra_d.htmlfn.__msa_sra_h.htmlfn.__msa_sra_w.htmlfn.__msa_srai_b.htmlfn.__msa_srai_d.htmlfn.__msa_srai_h.htmlfn.__msa_srai_w.htmlfn.__msa_srar_b.htmlfn.__msa_srar_d.htmlfn.__msa_srar_h.htmlfn.__msa_srar_w.htmlfn.__msa_srari_b.htmlfn.__msa_srari_d.htmlfn.__msa_srari_h.htmlfn.__msa_srari_w.htmlfn.__msa_srl_b.htmlfn.__msa_srl_d.htmlfn.__msa_srl_h.htmlfn.__msa_srl_w.htmlfn.__msa_srli_b.htmlfn.__msa_srli_d.htmlfn.__msa_srli_h.htmlfn.__msa_srli_w.htmlfn.__msa_srlr_b.htmlfn.__msa_srlr_d.htmlfn.__msa_srlr_h.htmlfn.__msa_srlr_w.htmlfn.__msa_srlri_b.htmlfn.__msa_srlri_d.htmlfn.__msa_srlri_h.htmlfn.__msa_srlri_w.htmlfn.__msa_st_b.htmlfn.__msa_st_d.htmlfn.__msa_st_h.htmlfn.__msa_st_w.htmlfn.__msa_subs_s_b.htmlfn.__msa_subs_s_d.htmlfn.__msa_subs_s_h.htmlfn.__msa_subs_s_w.htmlfn.__msa_subs_u_b.htmlfn.__msa_subs_u_d.htmlfn.__msa_subs_u_h.htmlfn.__msa_subs_u_w.htmlfn.__msa_subsus_u_b.htmlfn.__msa_subsus_u_d.htmlfn.__msa_subsus_u_h.htmlfn.__msa_subsus_u_w.htmlfn.__msa_subsuu_s_b.htmlfn.__msa_subsuu_s_d.htmlfn.__msa_subsuu_s_h.htmlfn.__msa_subsuu_s_w.htmlfn.__msa_subv_b.htmlfn.__msa_subv_d.htmlfn.__msa_subv_h.htmlfn.__msa_subv_w.htmlfn.__msa_subvi_b.htmlfn.__msa_subvi_d.htmlfn.__msa_subvi_h.htmlfn.__msa_subvi_w.htmlfn.__msa_vshf_b.htmlfn.__msa_vshf_d.htmlfn.__msa_vshf_h.htmlfn.__msa_vshf_w.htmlfn.__msa_xor_v.htmlfn.__msa_xori_b.htmlfn.break_.htmlindex.htmlsidebar-items.jsstruct.v16i8.htmlstruct.v16u8.htmlstruct.v2f64.htmlstruct.v2i64.htmlstruct.v2u64.htmlstruct.v4f32.htmlstruct.v4i32.htmlstruct.v4u32.htmlstruct.v8i16.htmlstruct.v8u16.htmlv16i8.t.htmlv16u8.t.htmlv2f64.t.htmlv2i64.t.htmlv2u64.t.htmlv4f32.t.htmlv4i32.t.htmlv4u32.t.htmlv8i16.t.htmlv8u16.t.htmlmips64__msa_add_a_b.v.html__msa_add_a_d.v.html__msa_add_a_h.v.html__msa_add_a_w.v.html__msa_adds_a_b.v.html__msa_adds_a_d.v.html__msa_adds_a_h.v.html__msa_adds_a_w.v.html__msa_adds_s_b.v.html__msa_adds_s_d.v.html__msa_adds_s_h.v.html__msa_adds_s_w.v.html__msa_adds_u_b.v.html__msa_adds_u_d.v.html__msa_adds_u_h.v.html__msa_adds_u_w.v.html__msa_addv_b.v.html__msa_addv_d.v.html__msa_addv_h.v.html__msa_addv_w.v.html__msa_addvi_b.v.html__msa_addvi_d.v.html__msa_addvi_h.v.html__msa_addvi_w.v.html__msa_and_v.v.html__msa_andi_b.v.html__msa_asub_s_b.v.html__msa_asub_s_d.v.html__msa_asub_s_h.v.html__msa_asub_s_w.v.html__msa_asub_u_b.v.html__msa_asub_u_d.v.html__msa_asub_u_h.v.html__msa_asub_u_w.v.html__msa_ave_s_b.v.html__msa_ave_s_d.v.html__msa_ave_s_h.v.html__msa_ave_s_w.v.html__msa_ave_u_b.v.html__msa_ave_u_d.v.html__msa_ave_u_h.v.html__msa_ave_u_w.v.html__msa_aver_s_b.v.html__msa_aver_s_d.v.html__msa_aver_s_h.v.html__msa_aver_s_w.v.html__msa_aver_u_b.v.html__msa_aver_u_d.v.html__msa_aver_u_h.v.html__msa_aver_u_w.v.html__msa_bclr_b.v.html__msa_bclr_d.v.html__msa_bclr_h.v.html__msa_bclr_w.v.html__msa_bclri_b.v.html__msa_bclri_d.v.html__msa_bclri_h.v.html__msa_bclri_w.v.html__msa_binsl_b.v.html__msa_binsl_d.v.html__msa_binsl_h.v.html__msa_binsl_w.v.html__msa_binsli_b.v.html__msa_binsli_d.v.html__msa_binsli_h.v.html__msa_binsli_w.v.html__msa_binsr_b.v.html__msa_binsr_d.v.html__msa_binsr_h.v.html__msa_binsr_w.v.html__msa_binsri_b.v.html__msa_binsri_d.v.html__msa_binsri_h.v.html__msa_binsri_w.v.html__msa_bmnz_v.v.html__msa_bmnzi_b.v.html__msa_bmz_v.v.html__msa_bmzi_b.v.html__msa_bneg_b.v.html__msa_bneg_d.v.html__msa_bneg_h.v.html__msa_bneg_w.v.html__msa_bnegi_b.v.html__msa_bnegi_d.v.html__msa_bnegi_h.v.html__msa_bnegi_w.v.html__msa_bnz_b.v.html__msa_bnz_d.v.html__msa_bnz_h.v.html__msa_bnz_v.v.html__msa_bnz_w.v.html__msa_bsel_v.v.html__msa_bseli_b.v.html__msa_bset_b.v.html__msa_bset_d.v.html__msa_bset_h.v.html__msa_bset_w.v.html__msa_bseti_b.v.html__msa_bseti_d.v.html__msa_bseti_h.v.html__msa_bseti_w.v.html__msa_bz_b.v.html__msa_bz_d.v.html__msa_bz_h.v.html__msa_bz_v.v.html__msa_bz_w.v.html__msa_ceq_b.v.html__msa_ceq_d.v.html__msa_ceq_h.v.html__msa_ceq_w.v.html__msa_ceqi_b.v.html__msa_ceqi_d.v.html__msa_ceqi_h.v.html__msa_ceqi_w.v.html__msa_cfcmsa.v.html__msa_cle_s_b.v.html__msa_cle_s_d.v.html__msa_cle_s_h.v.html__msa_cle_s_w.v.html__msa_cle_u_b.v.html__msa_cle_u_d.v.html__msa_cle_u_h.v.html__msa_cle_u_w.v.html__msa_clei_s_b.v.html__msa_clei_s_d.v.html__msa_clei_s_h.v.html__msa_clei_s_w.v.html__msa_clei_u_b.v.html__msa_clei_u_d.v.html__msa_clei_u_h.v.html__msa_clei_u_w.v.html__msa_clt_s_b.v.html__msa_clt_s_d.v.html__msa_clt_s_h.v.html__msa_clt_s_w.v.html__msa_clt_u_b.v.html__msa_clt_u_d.v.html__msa_clt_u_h.v.html__msa_clt_u_w.v.html__msa_clti_s_b.v.html__msa_clti_s_d.v.html__msa_clti_s_h.v.html__msa_clti_s_w.v.html__msa_clti_u_b.v.html__msa_clti_u_d.v.html__msa_clti_u_h.v.html__msa_clti_u_w.v.html__msa_copy_s_b.v.html__msa_copy_s_d.v.html__msa_copy_s_h.v.html__msa_copy_s_w.v.html__msa_copy_u_b.v.html__msa_copy_u_d.v.html__msa_copy_u_h.v.html__msa_copy_u_w.v.html__msa_ctcmsa.v.html__msa_div_s_b.v.html__msa_div_s_d.v.html__msa_div_s_h.v.html__msa_div_s_w.v.html__msa_div_u_b.v.html__msa_div_u_d.v.html__msa_div_u_h.v.html__msa_div_u_w.v.html__msa_dotp_s_d.v.html__msa_dotp_s_h.v.html__msa_dotp_s_w.v.html__msa_dotp_u_d.v.html__msa_dotp_u_h.v.html__msa_dotp_u_w.v.html__msa_dpadd_s_d.v.html__msa_dpadd_s_h.v.html__msa_dpadd_s_w.v.html__msa_dpadd_u_d.v.html__msa_dpadd_u_h.v.html__msa_dpadd_u_w.v.html__msa_dpsub_s_d.v.html__msa_dpsub_s_h.v.html__msa_dpsub_s_w.v.html__msa_dpsub_u_d.v.html__msa_dpsub_u_h.v.html__msa_dpsub_u_w.v.html__msa_fadd_d.v.html__msa_fadd_w.v.html__msa_fcaf_d.v.html__msa_fcaf_w.v.html__msa_fceq_d.v.html__msa_fceq_w.v.html__msa_fclass_d.v.html__msa_fclass_w.v.html__msa_fcle_d.v.html__msa_fcle_w.v.html__msa_fclt_d.v.html__msa_fclt_w.v.html__msa_fcne_d.v.html__msa_fcne_w.v.html__msa_fcor_d.v.html__msa_fcor_w.v.html__msa_fcueq_d.v.html__msa_fcueq_w.v.html__msa_fcule_d.v.html__msa_fcule_w.v.html__msa_fcult_d.v.html__msa_fcult_w.v.html__msa_fcun_d.v.html__msa_fcun_w.v.html__msa_fcune_d.v.html__msa_fcune_w.v.html__msa_fdiv_d.v.html__msa_fdiv_w.v.html__msa_fexdo_w.v.html__msa_fexp2_d.v.html__msa_fexp2_w.v.html__msa_fexupl_d.v.html__msa_fexupr_d.v.html__msa_ffint_s_d.v.html__msa_ffint_s_w.v.html__msa_ffint_u_d.v.html__msa_ffint_u_w.v.html__msa_ffql_d.v.html__msa_ffql_w.v.html__msa_ffqr_d.v.html__msa_ffqr_w.v.html__msa_fill_b.v.html__msa_fill_d.v.html__msa_fill_h.v.html__msa_fill_w.v.html__msa_flog2_d.v.html__msa_flog2_w.v.html__msa_fmadd_d.v.html__msa_fmadd_w.v.html__msa_fmax_a_d.v.html__msa_fmax_a_w.v.html__msa_fmax_d.v.html__msa_fmax_w.v.html__msa_fmin_a_d.v.html__msa_fmin_a_w.v.html__msa_fmin_d.v.html__msa_fmin_w.v.html__msa_fmsub_d.v.html__msa_fmsub_w.v.html__msa_fmul_d.v.html__msa_fmul_w.v.html__msa_frcp_d.v.html__msa_frcp_w.v.html__msa_frint_d.v.html__msa_frint_w.v.html__msa_frsqrt_d.v.html__msa_frsqrt_w.v.html__msa_fsaf_d.v.html__msa_fsaf_w.v.html__msa_fseq_d.v.html__msa_fseq_w.v.html__msa_fsle_d.v.html__msa_fsle_w.v.html__msa_fslt_d.v.html__msa_fslt_w.v.html__msa_fsne_d.v.html__msa_fsne_w.v.html__msa_fsor_d.v.html__msa_fsor_w.v.html__msa_fsqrt_d.v.html__msa_fsqrt_w.v.html__msa_fsub_d.v.html__msa_fsub_w.v.html__msa_fsueq_d.v.html__msa_fsueq_w.v.html__msa_fsule_d.v.html__msa_fsule_w.v.html__msa_fsult_d.v.html__msa_fsult_w.v.html__msa_fsun_d.v.html__msa_fsun_w.v.html__msa_fsune_d.v.html__msa_fsune_w.v.html__msa_ftint_s_d.v.html__msa_ftint_s_w.v.html__msa_ftint_u_d.v.html__msa_ftint_u_w.v.html__msa_ftq_h.v.html__msa_ftq_w.v.html__msa_ftrunc_s_d.v.html__msa_ftrunc_s_w.v.html__msa_ftrunc_u_d.v.html__msa_ftrunc_u_w.v.html__msa_hadd_s_d.v.html__msa_hadd_s_h.v.html__msa_hadd_s_w.v.html__msa_hadd_u_d.v.html__msa_hadd_u_h.v.html__msa_hadd_u_w.v.html__msa_hsub_s_d.v.html__msa_hsub_s_h.v.html__msa_hsub_s_w.v.html__msa_hsub_u_d.v.html__msa_hsub_u_h.v.html__msa_hsub_u_w.v.html__msa_ilvev_b.v.html__msa_ilvev_d.v.html__msa_ilvev_h.v.html__msa_ilvev_w.v.html__msa_ilvl_b.v.html__msa_ilvl_d.v.html__msa_ilvl_h.v.html__msa_ilvl_w.v.html__msa_ilvod_b.v.html__msa_ilvod_d.v.html__msa_ilvod_h.v.html__msa_ilvod_w.v.html__msa_ilvr_b.v.html__msa_ilvr_d.v.html__msa_ilvr_h.v.html__msa_ilvr_w.v.html__msa_insert_b.v.html__msa_insert_d.v.html__msa_insert_h.v.html__msa_insert_w.v.html__msa_insve_b.v.html__msa_insve_d.v.html__msa_insve_h.v.html__msa_insve_w.v.html__msa_ld_b.v.html__msa_ld_d.v.html__msa_ld_h.v.html__msa_ld_w.v.html__msa_ldi_b.v.html__msa_ldi_d.v.html__msa_ldi_h.v.html__msa_ldi_w.v.html__msa_madd_q_h.v.html__msa_madd_q_w.v.html__msa_maddr_q_h.v.html__msa_maddr_q_w.v.html__msa_maddv_b.v.html__msa_maddv_d.v.html__msa_maddv_h.v.html__msa_maddv_w.v.html__msa_max_a_b.v.html__msa_max_a_d.v.html__msa_max_a_h.v.html__msa_max_a_w.v.html__msa_max_s_b.v.html__msa_max_s_d.v.html__msa_max_s_h.v.html__msa_max_s_w.v.html__msa_max_u_b.v.html__msa_max_u_d.v.html__msa_max_u_h.v.html__msa_max_u_w.v.html__msa_maxi_s_b.v.html__msa_maxi_s_d.v.html__msa_maxi_s_h.v.html__msa_maxi_s_w.v.html__msa_maxi_u_b.v.html__msa_maxi_u_d.v.html__msa_maxi_u_h.v.html__msa_maxi_u_w.v.html__msa_min_a_b.v.html__msa_min_a_d.v.html__msa_min_a_h.v.html__msa_min_a_w.v.html__msa_min_s_b.v.html__msa_min_s_d.v.html__msa_min_s_h.v.html__msa_min_s_w.v.html__msa_min_u_b.v.html__msa_min_u_d.v.html__msa_min_u_h.v.html__msa_min_u_w.v.html__msa_mini_s_b.v.html__msa_mini_s_d.v.html__msa_mini_s_h.v.html__msa_mini_s_w.v.html__msa_mini_u_b.v.html__msa_mini_u_d.v.html__msa_mini_u_h.v.html__msa_mini_u_w.v.html__msa_mod_s_b.v.html__msa_mod_s_d.v.html__msa_mod_s_h.v.html__msa_mod_s_w.v.html__msa_mod_u_b.v.html__msa_mod_u_d.v.html__msa_mod_u_h.v.html__msa_mod_u_w.v.html__msa_move_v.v.html__msa_msub_q_h.v.html__msa_msub_q_w.v.html__msa_msubr_q_h.v.html__msa_msubr_q_w.v.html__msa_msubv_b.v.html__msa_msubv_d.v.html__msa_msubv_h.v.html__msa_msubv_w.v.html__msa_mul_q_h.v.html__msa_mul_q_w.v.html__msa_mulr_q_h.v.html__msa_mulr_q_w.v.html__msa_mulv_b.v.html__msa_mulv_d.v.html__msa_mulv_h.v.html__msa_mulv_w.v.html__msa_nloc_b.v.html__msa_nloc_d.v.html__msa_nloc_h.v.html__msa_nloc_w.v.html__msa_nlzc_b.v.html__msa_nlzc_d.v.html__msa_nlzc_h.v.html__msa_nlzc_w.v.html__msa_nor_v.v.html__msa_nori_b.v.html__msa_or_v.v.html__msa_ori_b.v.html__msa_pckev_b.v.html__msa_pckev_d.v.html__msa_pckev_h.v.html__msa_pckev_w.v.html__msa_pckod_b.v.html__msa_pckod_d.v.html__msa_pckod_h.v.html__msa_pckod_w.v.html__msa_pcnt_b.v.html__msa_pcnt_d.v.html__msa_pcnt_h.v.html__msa_pcnt_w.v.html__msa_sat_s_b.v.html__msa_sat_s_d.v.html__msa_sat_s_h.v.html__msa_sat_s_w.v.html__msa_sat_u_b.v.html__msa_sat_u_d.v.html__msa_sat_u_h.v.html__msa_sat_u_w.v.html__msa_shf_b.v.html__msa_shf_h.v.html__msa_shf_w.v.html__msa_sld_b.v.html__msa_sld_d.v.html__msa_sld_h.v.html__msa_sld_w.v.html__msa_sldi_b.v.html__msa_sldi_d.v.html__msa_sldi_h.v.html__msa_sldi_w.v.html__msa_sll_b.v.html__msa_sll_d.v.html__msa_sll_h.v.html__msa_sll_w.v.html__msa_slli_b.v.html__msa_slli_d.v.html__msa_slli_h.v.html__msa_slli_w.v.html__msa_splat_b.v.html__msa_splat_d.v.html__msa_splat_h.v.html__msa_splat_w.v.html__msa_splati_b.v.html__msa_splati_d.v.html__msa_splati_h.v.html__msa_splati_w.v.html__msa_sra_b.v.html__msa_sra_d.v.html__msa_sra_h.v.html__msa_sra_w.v.html__msa_srai_b.v.html__msa_srai_d.v.html__msa_srai_h.v.html__msa_srai_w.v.html__msa_srar_b.v.html__msa_srar_d.v.html__msa_srar_h.v.html__msa_srar_w.v.html__msa_srari_b.v.html__msa_srari_d.v.html__msa_srari_h.v.html__msa_srari_w.v.html__msa_srl_b.v.html__msa_srl_d.v.html__msa_srl_h.v.html__msa_srl_w.v.html__msa_srli_b.v.html__msa_srli_d.v.html__msa_srli_h.v.html__msa_srli_w.v.html__msa_srlr_b.v.html__msa_srlr_d.v.html__msa_srlr_h.v.html__msa_srlr_w.v.html__msa_srlri_b.v.html__msa_srlri_d.v.html__msa_srlri_h.v.html__msa_srlri_w.v.html__msa_st_b.v.html__msa_st_d.v.html__msa_st_h.v.html__msa_st_w.v.html__msa_subs_s_b.v.html__msa_subs_s_d.v.html__msa_subs_s_h.v.html__msa_subs_s_w.v.html__msa_subs_u_b.v.html__msa_subs_u_d.v.html__msa_subs_u_h.v.html__msa_subs_u_w.v.html__msa_subsus_u_b.v.html__msa_subsus_u_d.v.html__msa_subsus_u_h.v.html__msa_subsus_u_w.v.html__msa_subsuu_s_b.v.html__msa_subsuu_s_d.v.html__msa_subsuu_s_h.v.html__msa_subsuu_s_w.v.html__msa_subv_b.v.html__msa_subv_d.v.html__msa_subv_h.v.html__msa_subv_w.v.html__msa_subvi_b.v.html__msa_subvi_d.v.html__msa_subvi_h.v.html__msa_subvi_w.v.html__msa_vshf_b.v.html__msa_vshf_d.v.html__msa_vshf_h.v.html__msa_vshf_w.v.html__msa_xor_v.v.html__msa_xori_b.v.htmlbreak_.v.htmlfn.__msa_add_a_b.htmlfn.__msa_add_a_d.htmlfn.__msa_add_a_h.htmlfn.__msa_add_a_w.htmlfn.__msa_adds_a_b.htmlfn.__msa_adds_a_d.htmlfn.__msa_adds_a_h.htmlfn.__msa_adds_a_w.htmlfn.__msa_adds_s_b.htmlfn.__msa_adds_s_d.htmlfn.__msa_adds_s_h.htmlfn.__msa_adds_s_w.htmlfn.__msa_adds_u_b.htmlfn.__msa_adds_u_d.htmlfn.__msa_adds_u_h.htmlfn.__msa_adds_u_w.htmlfn.__msa_addv_b.htmlfn.__msa_addv_d.htmlfn.__msa_addv_h.htmlfn.__msa_addv_w.htmlfn.__msa_addvi_b.htmlfn.__msa_addvi_d.htmlfn.__msa_addvi_h.htmlfn.__msa_addvi_w.htmlfn.__msa_and_v.htmlfn.__msa_andi_b.htmlfn.__msa_asub_s_b.htmlfn.__msa_asub_s_d.htmlfn.__msa_asub_s_h.htmlfn.__msa_asub_s_w.htmlfn.__msa_asub_u_b.htmlfn.__msa_asub_u_d.htmlfn.__msa_asub_u_h.htmlfn.__msa_asub_u_w.htmlfn.__msa_ave_s_b.htmlfn.__msa_ave_s_d.htmlfn.__msa_ave_s_h.htmlfn.__msa_ave_s_w.htmlfn.__msa_ave_u_b.htmlfn.__msa_ave_u_d.htmlfn.__msa_ave_u_h.htmlfn.__msa_ave_u_w.htmlfn.__msa_aver_s_b.htmlfn.__msa_aver_s_d.htmlfn.__msa_aver_s_h.htmlfn.__msa_aver_s_w.htmlfn.__msa_aver_u_b.htmlfn.__msa_aver_u_d.htmlfn.__msa_aver_u_h.htmlfn.__msa_aver_u_w.htmlfn.__msa_bclr_b.htmlfn.__msa_bclr_d.htmlfn.__msa_bclr_h.htmlfn.__msa_bclr_w.htmlfn.__msa_bclri_b.htmlfn.__msa_bclri_d.htmlfn.__msa_bclri_h.htmlfn.__msa_bclri_w.htmlfn.__msa_binsl_b.htmlfn.__msa_binsl_d.htmlfn.__msa_binsl_h.htmlfn.__msa_binsl_w.htmlfn.__msa_binsli_b.htmlfn.__msa_binsli_d.htmlfn.__msa_binsli_h.htmlfn.__msa_binsli_w.htmlfn.__msa_binsr_b.htmlfn.__msa_binsr_d.htmlfn.__msa_binsr_h.htmlfn.__msa_binsr_w.htmlfn.__msa_binsri_b.htmlfn.__msa_binsri_d.htmlfn.__msa_binsri_h.htmlfn.__msa_binsri_w.htmlfn.__msa_bmnz_v.htmlfn.__msa_bmnzi_b.htmlfn.__msa_bmz_v.htmlfn.__msa_bmzi_b.htmlfn.__msa_bneg_b.htmlfn.__msa_bneg_d.htmlfn.__msa_bneg_h.htmlfn.__msa_bneg_w.htmlfn.__msa_bnegi_b.htmlfn.__msa_bnegi_d.htmlfn.__msa_bnegi_h.htmlfn.__msa_bnegi_w.htmlfn.__msa_bnz_b.htmlfn.__msa_bnz_d.htmlfn.__msa_bnz_h.htmlfn.__msa_bnz_v.htmlfn.__msa_bnz_w.htmlfn.__msa_bsel_v.htmlfn.__msa_bseli_b.htmlfn.__msa_bset_b.htmlfn.__msa_bset_d.htmlfn.__msa_bset_h.htmlfn.__msa_bset_w.htmlfn.__msa_bseti_b.htmlfn.__msa_bseti_d.htmlfn.__msa_bseti_h.htmlfn.__msa_bseti_w.htmlfn.__msa_bz_b.htmlfn.__msa_bz_d.htmlfn.__msa_bz_h.htmlfn.__msa_bz_v.htmlfn.__msa_bz_w.htmlfn.__msa_ceq_b.htmlfn.__msa_ceq_d.htmlfn.__msa_ceq_h.htmlfn.__msa_ceq_w.htmlfn.__msa_ceqi_b.htmlfn.__msa_ceqi_d.htmlfn.__msa_ceqi_h.htmlfn.__msa_ceqi_w.htmlfn.__msa_cfcmsa.htmlfn.__msa_cle_s_b.htmlfn.__msa_cle_s_d.htmlfn.__msa_cle_s_h.htmlfn.__msa_cle_s_w.htmlfn.__msa_cle_u_b.htmlfn.__msa_cle_u_d.htmlfn.__msa_cle_u_h.htmlfn.__msa_cle_u_w.htmlfn.__msa_clei_s_b.htmlfn.__msa_clei_s_d.htmlfn.__msa_clei_s_h.htmlfn.__msa_clei_s_w.htmlfn.__msa_clei_u_b.htmlfn.__msa_clei_u_d.htmlfn.__msa_clei_u_h.htmlfn.__msa_clei_u_w.htmlfn.__msa_clt_s_b.htmlfn.__msa_clt_s_d.htmlfn.__msa_clt_s_h.htmlfn.__msa_clt_s_w.htmlfn.__msa_clt_u_b.htmlfn.__msa_clt_u_d.htmlfn.__msa_clt_u_h.htmlfn.__msa_clt_u_w.htmlfn.__msa_clti_s_b.htmlfn.__msa_clti_s_d.htmlfn.__msa_clti_s_h.htmlfn.__msa_clti_s_w.htmlfn.__msa_clti_u_b.htmlfn.__msa_clti_u_d.htmlfn.__msa_clti_u_h.htmlfn.__msa_clti_u_w.htmlfn.__msa_copy_s_b.htmlfn.__msa_copy_s_d.htmlfn.__msa_copy_s_h.htmlfn.__msa_copy_s_w.htmlfn.__msa_copy_u_b.htmlfn.__msa_copy_u_d.htmlfn.__msa_copy_u_h.htmlfn.__msa_copy_u_w.htmlfn.__msa_ctcmsa.htmlfn.__msa_div_s_b.htmlfn.__msa_div_s_d.htmlfn.__msa_div_s_h.htmlfn.__msa_div_s_w.htmlfn.__msa_div_u_b.htmlfn.__msa_div_u_d.htmlfn.__msa_div_u_h.htmlfn.__msa_div_u_w.htmlfn.__msa_dotp_s_d.htmlfn.__msa_dotp_s_h.htmlfn.__msa_dotp_s_w.htmlfn.__msa_dotp_u_d.htmlfn.__msa_dotp_u_h.htmlfn.__msa_dotp_u_w.htmlfn.__msa_dpadd_s_d.htmlfn.__msa_dpadd_s_h.htmlfn.__msa_dpadd_s_w.htmlfn.__msa_dpadd_u_d.htmlfn.__msa_dpadd_u_h.htmlfn.__msa_dpadd_u_w.htmlfn.__msa_dpsub_s_d.htmlfn.__msa_dpsub_s_h.htmlfn.__msa_dpsub_s_w.htmlfn.__msa_dpsub_u_d.htmlfn.__msa_dpsub_u_h.htmlfn.__msa_dpsub_u_w.htmlfn.__msa_fadd_d.htmlfn.__msa_fadd_w.htmlfn.__msa_fcaf_d.htmlfn.__msa_fcaf_w.htmlfn.__msa_fceq_d.htmlfn.__msa_fceq_w.htmlfn.__msa_fclass_d.htmlfn.__msa_fclass_w.htmlfn.__msa_fcle_d.htmlfn.__msa_fcle_w.htmlfn.__msa_fclt_d.htmlfn.__msa_fclt_w.htmlfn.__msa_fcne_d.htmlfn.__msa_fcne_w.htmlfn.__msa_fcor_d.htmlfn.__msa_fcor_w.htmlfn.__msa_fcueq_d.htmlfn.__msa_fcueq_w.htmlfn.__msa_fcule_d.htmlfn.__msa_fcule_w.htmlfn.__msa_fcult_d.htmlfn.__msa_fcult_w.htmlfn.__msa_fcun_d.htmlfn.__msa_fcun_w.htmlfn.__msa_fcune_d.htmlfn.__msa_fcune_w.htmlfn.__msa_fdiv_d.htmlfn.__msa_fdiv_w.htmlfn.__msa_fexdo_w.htmlfn.__msa_fexp2_d.htmlfn.__msa_fexp2_w.htmlfn.__msa_fexupl_d.htmlfn.__msa_fexupr_d.htmlfn.__msa_ffint_s_d.htmlfn.__msa_ffint_s_w.htmlfn.__msa_ffint_u_d.htmlfn.__msa_ffint_u_w.htmlfn.__msa_ffql_d.htmlfn.__msa_ffql_w.htmlfn.__msa_ffqr_d.htmlfn.__msa_ffqr_w.htmlfn.__msa_fill_b.htmlfn.__msa_fill_d.htmlfn.__msa_fill_h.htmlfn.__msa_fill_w.htmlfn.__msa_flog2_d.htmlfn.__msa_flog2_w.htmlfn.__msa_fmadd_d.htmlfn.__msa_fmadd_w.htmlfn.__msa_fmax_a_d.htmlfn.__msa_fmax_a_w.htmlfn.__msa_fmax_d.htmlfn.__msa_fmax_w.htmlfn.__msa_fmin_a_d.htmlfn.__msa_fmin_a_w.htmlfn.__msa_fmin_d.htmlfn.__msa_fmin_w.htmlfn.__msa_fmsub_d.htmlfn.__msa_fmsub_w.htmlfn.__msa_fmul_d.htmlfn.__msa_fmul_w.htmlfn.__msa_frcp_d.htmlfn.__msa_frcp_w.htmlfn.__msa_frint_d.htmlfn.__msa_frint_w.htmlfn.__msa_frsqrt_d.htmlfn.__msa_frsqrt_w.htmlfn.__msa_fsaf_d.htmlfn.__msa_fsaf_w.htmlfn.__msa_fseq_d.htmlfn.__msa_fseq_w.htmlfn.__msa_fsle_d.htmlfn.__msa_fsle_w.htmlfn.__msa_fslt_d.htmlfn.__msa_fslt_w.htmlfn.__msa_fsne_d.htmlfn.__msa_fsne_w.htmlfn.__msa_fsor_d.htmlfn.__msa_fsor_w.htmlfn.__msa_fsqrt_d.htmlfn.__msa_fsqrt_w.htmlfn.__msa_fsub_d.htmlfn.__msa_fsub_w.htmlfn.__msa_fsueq_d.htmlfn.__msa_fsueq_w.htmlfn.__msa_fsule_d.htmlfn.__msa_fsule_w.htmlfn.__msa_fsult_d.htmlfn.__msa_fsult_w.htmlfn.__msa_fsun_d.htmlfn.__msa_fsun_w.htmlfn.__msa_fsune_d.htmlfn.__msa_fsune_w.htmlfn.__msa_ftint_s_d.htmlfn.__msa_ftint_s_w.htmlfn.__msa_ftint_u_d.htmlfn.__msa_ftint_u_w.htmlfn.__msa_ftq_h.htmlfn.__msa_ftq_w.htmlfn.__msa_ftrunc_s_d.htmlfn.__msa_ftrunc_s_w.htmlfn.__msa_ftrunc_u_d.htmlfn.__msa_ftrunc_u_w.htmlfn.__msa_hadd_s_d.htmlfn.__msa_hadd_s_h.htmlfn.__msa_hadd_s_w.htmlfn.__msa_hadd_u_d.htmlfn.__msa_hadd_u_h.htmlfn.__msa_hadd_u_w.htmlfn.__msa_hsub_s_d.htmlfn.__msa_hsub_s_h.htmlfn.__msa_hsub_s_w.htmlfn.__msa_hsub_u_d.htmlfn.__msa_hsub_u_h.htmlfn.__msa_hsub_u_w.htmlfn.__msa_ilvev_b.htmlfn.__msa_ilvev_d.htmlfn.__msa_ilvev_h.htmlfn.__msa_ilvev_w.htmlfn.__msa_ilvl_b.htmlfn.__msa_ilvl_d.htmlfn.__msa_ilvl_h.htmlfn.__msa_ilvl_w.htmlfn.__msa_ilvod_b.htmlfn.__msa_ilvod_d.htmlfn.__msa_ilvod_h.htmlfn.__msa_ilvod_w.htmlfn.__msa_ilvr_b.htmlfn.__msa_ilvr_d.htmlfn.__msa_ilvr_h.htmlfn.__msa_ilvr_w.htmlfn.__msa_insert_b.htmlfn.__msa_insert_d.htmlfn.__msa_insert_h.htmlfn.__msa_insert_w.htmlfn.__msa_insve_b.htmlfn.__msa_insve_d.htmlfn.__msa_insve_h.htmlfn.__msa_insve_w.htmlfn.__msa_ld_b.htmlfn.__msa_ld_d.htmlfn.__msa_ld_h.htmlfn.__msa_ld_w.htmlfn.__msa_ldi_b.htmlfn.__msa_ldi_d.htmlfn.__msa_ldi_h.htmlfn.__msa_ldi_w.htmlfn.__msa_madd_q_h.htmlfn.__msa_madd_q_w.htmlfn.__msa_maddr_q_h.htmlfn.__msa_maddr_q_w.htmlfn.__msa_maddv_b.htmlfn.__msa_maddv_d.htmlfn.__msa_maddv_h.htmlfn.__msa_maddv_w.htmlfn.__msa_max_a_b.htmlfn.__msa_max_a_d.htmlfn.__msa_max_a_h.htmlfn.__msa_max_a_w.htmlfn.__msa_max_s_b.htmlfn.__msa_max_s_d.htmlfn.__msa_max_s_h.htmlfn.__msa_max_s_w.htmlfn.__msa_max_u_b.htmlfn.__msa_max_u_d.htmlfn.__msa_max_u_h.htmlfn.__msa_max_u_w.htmlfn.__msa_maxi_s_b.htmlfn.__msa_maxi_s_d.htmlfn.__msa_maxi_s_h.htmlfn.__msa_maxi_s_w.htmlfn.__msa_maxi_u_b.htmlfn.__msa_maxi_u_d.htmlfn.__msa_maxi_u_h.htmlfn.__msa_maxi_u_w.htmlfn.__msa_min_a_b.htmlfn.__msa_min_a_d.htmlfn.__msa_min_a_h.htmlfn.__msa_min_a_w.htmlfn.__msa_min_s_b.htmlfn.__msa_min_s_d.htmlfn.__msa_min_s_h.htmlfn.__msa_min_s_w.htmlfn.__msa_min_u_b.htmlfn.__msa_min_u_d.htmlfn.__msa_min_u_h.htmlfn.__msa_min_u_w.htmlfn.__msa_mini_s_b.htmlfn.__msa_mini_s_d.htmlfn.__msa_mini_s_h.htmlfn.__msa_mini_s_w.htmlfn.__msa_mini_u_b.htmlfn.__msa_mini_u_d.htmlfn.__msa_mini_u_h.htmlfn.__msa_mini_u_w.htmlfn.__msa_mod_s_b.htmlfn.__msa_mod_s_d.htmlfn.__msa_mod_s_h.htmlfn.__msa_mod_s_w.htmlfn.__msa_mod_u_b.htmlfn.__msa_mod_u_d.htmlfn.__msa_mod_u_h.htmlfn.__msa_mod_u_w.htmlfn.__msa_move_v.htmlfn.__msa_msub_q_h.htmlfn.__msa_msub_q_w.htmlfn.__msa_msubr_q_h.htmlfn.__msa_msubr_q_w.htmlfn.__msa_msubv_b.htmlfn.__msa_msubv_d.htmlfn.__msa_msubv_h.htmlfn.__msa_msubv_w.htmlfn.__msa_mul_q_h.htmlfn.__msa_mul_q_w.htmlfn.__msa_mulr_q_h.htmlfn.__msa_mulr_q_w.htmlfn.__msa_mulv_b.htmlfn.__msa_mulv_d.htmlfn.__msa_mulv_h.htmlfn.__msa_mulv_w.htmlfn.__msa_nloc_b.htmlfn.__msa_nloc_d.htmlfn.__msa_nloc_h.htmlfn.__msa_nloc_w.htmlfn.__msa_nlzc_b.htmlfn.__msa_nlzc_d.htmlfn.__msa_nlzc_h.htmlfn.__msa_nlzc_w.htmlfn.__msa_nor_v.htmlfn.__msa_nori_b.htmlfn.__msa_or_v.htmlfn.__msa_ori_b.htmlfn.__msa_pckev_b.htmlfn.__msa_pckev_d.htmlfn.__msa_pckev_h.htmlfn.__msa_pckev_w.htmlfn.__msa_pckod_b.htmlfn.__msa_pckod_d.htmlfn.__msa_pckod_h.htmlfn.__msa_pckod_w.htmlfn.__msa_pcnt_b.htmlfn.__msa_pcnt_d.htmlfn.__msa_pcnt_h.htmlfn.__msa_pcnt_w.htmlfn.__msa_sat_s_b.htmlfn.__msa_sat_s_d.htmlfn.__msa_sat_s_h.htmlfn.__msa_sat_s_w.htmlfn.__msa_sat_u_b.htmlfn.__msa_sat_u_d.htmlfn.__msa_sat_u_h.htmlfn.__msa_sat_u_w.htmlfn.__msa_shf_b.htmlfn.__msa_shf_h.htmlfn.__msa_shf_w.htmlfn.__msa_sld_b.htmlfn.__msa_sld_d.htmlfn.__msa_sld_h.htmlfn.__msa_sld_w.htmlfn.__msa_sldi_b.htmlfn.__msa_sldi_d.htmlfn.__msa_sldi_h.htmlfn.__msa_sldi_w.htmlfn.__msa_sll_b.htmlfn.__msa_sll_d.htmlfn.__msa_sll_h.htmlfn.__msa_sll_w.htmlfn.__msa_slli_b.htmlfn.__msa_slli_d.htmlfn.__msa_slli_h.htmlfn.__msa_slli_w.htmlfn.__msa_splat_b.htmlfn.__msa_splat_d.htmlfn.__msa_splat_h.htmlfn.__msa_splat_w.htmlfn.__msa_splati_b.htmlfn.__msa_splati_d.htmlfn.__msa_splati_h.htmlfn.__msa_splati_w.htmlfn.__msa_sra_b.htmlfn.__msa_sra_d.htmlfn.__msa_sra_h.htmlfn.__msa_sra_w.htmlfn.__msa_srai_b.htmlfn.__msa_srai_d.htmlfn.__msa_srai_h.htmlfn.__msa_srai_w.htmlfn.__msa_srar_b.htmlfn.__msa_srar_d.htmlfn.__msa_srar_h.htmlfn.__msa_srar_w.htmlfn.__msa_srari_b.htmlfn.__msa_srari_d.htmlfn.__msa_srari_h.htmlfn.__msa_srari_w.htmlfn.__msa_srl_b.htmlfn.__msa_srl_d.htmlfn.__msa_srl_h.htmlfn.__msa_srl_w.htmlfn.__msa_srli_b.htmlfn.__msa_srli_d.htmlfn.__msa_srli_h.htmlfn.__msa_srli_w.htmlfn.__msa_srlr_b.htmlfn.__msa_srlr_d.htmlfn.__msa_srlr_h.htmlfn.__msa_srlr_w.htmlfn.__msa_srlri_b.htmlfn.__msa_srlri_d.htmlfn.__msa_srlri_h.htmlfn.__msa_srlri_w.htmlfn.__msa_st_b.htmlfn.__msa_st_d.htmlfn.__msa_st_h.htmlfn.__msa_st_w.htmlfn.__msa_subs_s_b.htmlfn.__msa_subs_s_d.htmlfn.__msa_subs_s_h.htmlfn.__msa_subs_s_w.htmlfn.__msa_subs_u_b.htmlfn.__msa_subs_u_d.htmlfn.__msa_subs_u_h.htmlfn.__msa_subs_u_w.htmlfn.__msa_subsus_u_b.htmlfn.__msa_subsus_u_d.htmlfn.__msa_subsus_u_h.htmlfn.__msa_subsus_u_w.htmlfn.__msa_subsuu_s_b.htmlfn.__msa_subsuu_s_d.htmlfn.__msa_subsuu_s_h.htmlfn.__msa_subsuu_s_w.htmlfn.__msa_subv_b.htmlfn.__msa_subv_d.htmlfn.__msa_subv_h.htmlfn.__msa_subv_w.htmlfn.__msa_subvi_b.htmlfn.__msa_subvi_d.htmlfn.__msa_subvi_h.htmlfn.__msa_subvi_w.htmlfn.__msa_vshf_b.htmlfn.__msa_vshf_d.htmlfn.__msa_vshf_h.htmlfn.__msa_vshf_w.htmlfn.__msa_xor_v.htmlfn.__msa_xori_b.htmlfn.break_.htmlindex.htmlsidebar-items.jsstruct.v16i8.htmlstruct.v16u8.htmlstruct.v2f64.htmlstruct.v2i64.htmlstruct.v2u64.htmlstruct.v4f32.htmlstruct.v4i32.htmlstruct.v4u32.htmlstruct.v8i16.htmlstruct.v8u16.htmlv16i8.t.htmlv16u8.t.htmlv2f64.t.htmlv2i64.t.htmlv2u64.t.htmlv4f32.t.htmlv4i32.t.htmlv4u32.t.htmlv8i16.t.htmlv8u16.t.htmlnvptx__assert_fail.v.html_block_dim_x.v.html_block_dim_y.v.html_block_dim_z.v.html_block_idx_x.v.html_block_idx_y.v.html_block_idx_z.v.html_grid_dim_x.v.html_grid_dim_y.v.html_grid_dim_z.v.html_syncthreads.v.html_thread_idx_x.v.html_thread_idx_y.v.html_thread_idx_z.v.htmlfn.__assert_fail.htmlfn._block_dim_x.htmlfn._block_dim_y.htmlfn._block_dim_z.htmlfn._block_idx_x.htmlfn._block_idx_y.htmlfn._block_idx_z.htmlfn._grid_dim_x.htmlfn._grid_dim_y.htmlfn._grid_dim_z.htmlfn._syncthreads.htmlfn._thread_idx_x.htmlfn._thread_idx_y.htmlfn._thread_idx_z.htmlfn.free.htmlfn.malloc.htmlfn.trap.htmlfn.vprintf.htmlfree.v.htmlindex.htmlmalloc.v.htmlsidebar-items.jstrap.v.htmlvprintf.v.htmlpowerpcfn.trap.htmlfn.vec_xxpermdi.htmlindex.htmlsidebar-items.jsstruct.vector_bool_long.htmlstruct.vector_double.htmlstruct.vector_signed_long.htmlstruct.vector_unsigned_long.htmltrap.v.htmlvec_xxpermdi.v.htmlvector_bool_long.t.htmlvector_double.t.htmlvector_signed_long.t.htmlvector_unsigned_long.t.htmlpowerpc64fn.trap.htmlfn.vec_xxpermdi.htmlindex.htmlsidebar-items.jsstruct.vector_bool_long.htmlstruct.vector_double.htmlstruct.vector_signed_long.htmlstruct.vector_unsigned_long.htmltrap.v.htmlvec_xxpermdi.v.htmlvector_bool_long.t.htmlvector_double.t.htmlvector_signed_long.t.htmlvector_unsigned_long.t.htmlsidebar-items.jswasm32atomic_notify.v.htmlf32x4_abs.v.htmlf32x4_add.v.htmlf32x4_convert_i32x4_s.v.htmlf32x4_convert_i32x4_u.v.htmlf32x4_div.v.htmlf32x4_eq.v.htmlf32x4_extract_lane.v.htmlf32x4_ge.v.htmlf32x4_gt.v.htmlf32x4_le.v.htmlf32x4_lt.v.htmlf32x4_max.v.htmlf32x4_min.v.htmlf32x4_mul.v.htmlf32x4_ne.v.htmlf32x4_neg.v.htmlf32x4_replace_lane.v.htmlf32x4_splat.v.htmlf32x4_sqrt.v.htmlf32x4_sub.v.htmlf64x2_abs.v.htmlf64x2_add.v.htmlf64x2_convert_s_i64x2.v.htmlf64x2_convert_u_i64x2.v.htmlf64x2_div.v.htmlf64x2_eq.v.htmlf64x2_extract_lane.v.htmlf64x2_ge.v.htmlf64x2_gt.v.htmlf64x2_le.v.htmlf64x2_lt.v.htmlf64x2_max.v.htmlf64x2_min.v.htmlf64x2_mul.v.htmlf64x2_ne.v.htmlf64x2_neg.v.htmlf64x2_replace_lane.v.htmlf64x2_splat.v.htmlf64x2_sqrt.v.htmlf64x2_sub.v.htmlfn.atomic_notify.htmlfn.f32x4_abs.htmlfn.f32x4_add.htmlfn.f32x4_convert_i32x4_s.htmlfn.f32x4_convert_i32x4_u.htmlfn.f32x4_div.htmlfn.f32x4_eq.htmlfn.f32x4_extract_lane.htmlfn.f32x4_ge.htmlfn.f32x4_gt.htmlfn.f32x4_le.htmlfn.f32x4_lt.htmlfn.f32x4_max.htmlfn.f32x4_min.htmlfn.f32x4_mul.htmlfn.f32x4_ne.htmlfn.f32x4_neg.htmlfn.f32x4_replace_lane.htmlfn.f32x4_splat.htmlfn.f32x4_sqrt.htmlfn.f32x4_sub.htmlfn.f64x2_abs.htmlfn.f64x2_add.htmlfn.f64x2_convert_s_i64x2.htmlfn.f64x2_convert_u_i64x2.htmlfn.f64x2_div.htmlfn.f64x2_eq.htmlfn.f64x2_extract_lane.htmlfn.f64x2_ge.htmlfn.f64x2_gt.htmlfn.f64x2_le.htmlfn.f64x2_lt.htmlfn.f64x2_max.htmlfn.f64x2_min.htmlfn.f64x2_mul.htmlfn.f64x2_ne.htmlfn.f64x2_neg.htmlfn.f64x2_replace_lane.htmlfn.f64x2_splat.htmlfn.f64x2_sqrt.htmlfn.f64x2_sub.htmlfn.i16x8_add.htmlfn.i16x8_add_saturate_s.htmlfn.i16x8_add_saturate_u.htmlfn.i16x8_all_true.htmlfn.i16x8_any_true.htmlfn.i16x8_eq.htmlfn.i16x8_extract_lane.htmlfn.i16x8_ge_s.htmlfn.i16x8_ge_u.htmlfn.i16x8_gt_s.htmlfn.i16x8_gt_u.htmlfn.i16x8_le_s.htmlfn.i16x8_le_u.htmlfn.i16x8_lt_s.htmlfn.i16x8_lt_u.htmlfn.i16x8_mul.htmlfn.i16x8_ne.htmlfn.i16x8_neg.htmlfn.i16x8_replace_lane.htmlfn.i16x8_shl.htmlfn.i16x8_shr_s.htmlfn.i16x8_shr_u.htmlfn.i16x8_splat.htmlfn.i16x8_sub.htmlfn.i16x8_sub_saturate_s.htmlfn.i16x8_sub_saturate_u.htmlfn.i32_atomic_wait.htmlfn.i32x4_add.htmlfn.i32x4_all_true.htmlfn.i32x4_any_true.htmlfn.i32x4_eq.htmlfn.i32x4_extract_lane.htmlfn.i32x4_ge_s.htmlfn.i32x4_ge_u.htmlfn.i32x4_gt_s.htmlfn.i32x4_gt_u.htmlfn.i32x4_le_s.htmlfn.i32x4_le_u.htmlfn.i32x4_lt_s.htmlfn.i32x4_lt_u.htmlfn.i32x4_mul.htmlfn.i32x4_ne.htmlfn.i32x4_neg.htmlfn.i32x4_replace_lane.htmlfn.i32x4_shl.htmlfn.i32x4_shr_s.htmlfn.i32x4_shr_u.htmlfn.i32x4_splat.htmlfn.i32x4_sub.htmlfn.i32x4_trunc_s_f32x4_sat.htmlfn.i32x4_trunc_u_f32x4_sat.htmlfn.i64_atomic_wait.htmlfn.i64x2_add.htmlfn.i64x2_all_true.htmlfn.i64x2_any_true.htmlfn.i64x2_extract_lane.htmlfn.i64x2_neg.htmlfn.i64x2_replace_lane.htmlfn.i64x2_shl.htmlfn.i64x2_shr_s.htmlfn.i64x2_shr_u.htmlfn.i64x2_splat.htmlfn.i64x2_sub.htmlfn.i64x2_trunc_s_f64x2_sat.htmlfn.i64x2_trunc_u_f64x2_sat.htmlfn.i8x16_add.htmlfn.i8x16_add_saturate_s.htmlfn.i8x16_add_saturate_u.htmlfn.i8x16_all_true.htmlfn.i8x16_any_true.htmlfn.i8x16_eq.htmlfn.i8x16_extract_lane.htmlfn.i8x16_ge_s.htmlfn.i8x16_ge_u.htmlfn.i8x16_gt_s.htmlfn.i8x16_gt_u.htmlfn.i8x16_le_s.htmlfn.i8x16_le_u.htmlfn.i8x16_lt_s.htmlfn.i8x16_lt_u.htmlfn.i8x16_mul.htmlfn.i8x16_ne.htmlfn.i8x16_neg.htmlfn.i8x16_replace_lane.htmlfn.i8x16_shl.htmlfn.i8x16_shr_s.htmlfn.i8x16_shr_u.htmlfn.i8x16_splat.htmlfn.i8x16_sub.htmlfn.i8x16_sub_saturate_s.htmlfn.i8x16_sub_saturate_u.htmlfn.memory_grow.htmlfn.memory_size.htmlfn.unreachable.htmlfn.v128_and.htmlfn.v128_bitselect.htmlfn.v128_const.htmlfn.v128_load.htmlfn.v128_not.htmlfn.v128_or.htmlfn.v128_store.htmlfn.v128_xor.htmli16x8_add.v.htmli16x8_add_saturate_s.v.htmli16x8_add_saturate_u.v.htmli16x8_all_true.v.htmli16x8_any_true.v.htmli16x8_eq.v.htmli16x8_extract_lane.v.htmli16x8_ge_s.v.htmli16x8_ge_u.v.htmli16x8_gt_s.v.htmli16x8_gt_u.v.htmli16x8_le_s.v.htmli16x8_le_u.v.htmli16x8_lt_s.v.htmli16x8_lt_u.v.htmli16x8_mul.v.htmli16x8_ne.v.htmli16x8_neg.v.htmli16x8_replace_lane.v.htmli16x8_shl.v.htmli16x8_shr_s.v.htmli16x8_shr_u.v.htmli16x8_splat.v.htmli16x8_sub.v.htmli16x8_sub_saturate_s.v.htmli16x8_sub_saturate_u.v.htmli32_atomic_wait.v.htmli32x4_add.v.htmli32x4_all_true.v.htmli32x4_any_true.v.htmli32x4_eq.v.htmli32x4_extract_lane.v.htmli32x4_ge_s.v.htmli32x4_ge_u.v.htmli32x4_gt_s.v.htmli32x4_gt_u.v.htmli32x4_le_s.v.htmli32x4_le_u.v.htmli32x4_lt_s.v.htmli32x4_lt_u.v.htmli32x4_mul.v.htmli32x4_ne.v.htmli32x4_neg.v.htmli32x4_replace_lane.v.htmli32x4_shl.v.htmli32x4_shr_s.v.htmli32x4_shr_u.v.htmli32x4_splat.v.htmli32x4_sub.v.htmli32x4_trunc_s_f32x4_sat.v.htmli32x4_trunc_u_f32x4_sat.v.htmli64_atomic_wait.v.htmli64x2_add.v.htmli64x2_all_true.v.htmli64x2_any_true.v.htmli64x2_extract_lane.v.htmli64x2_neg.v.htmli64x2_replace_lane.v.htmli64x2_shl.v.htmli64x2_shr_s.v.htmli64x2_shr_u.v.htmli64x2_splat.v.htmli64x2_sub.v.htmli64x2_trunc_s_f64x2_sat.v.htmli64x2_trunc_u_f64x2_sat.v.htmli8x16_add.v.htmli8x16_add_saturate_s.v.htmli8x16_add_saturate_u.v.htmli8x16_all_true.v.htmli8x16_any_true.v.htmli8x16_eq.v.htmli8x16_extract_lane.v.htmli8x16_ge_s.v.htmli8x16_ge_u.v.htmli8x16_gt_s.v.htmli8x16_gt_u.v.htmli8x16_le_s.v.htmli8x16_le_u.v.htmli8x16_lt_s.v.htmli8x16_lt_u.v.htmli8x16_mul.v.htmli8x16_ne.v.htmli8x16_neg.v.htmli8x16_replace_lane.v.htmli8x16_shl.v.htmli8x16_shr_s.v.htmli8x16_shr_u.v.htmli8x16_splat.v.htmli8x16_sub.v.htmli8x16_sub_saturate_s.v.htmli8x16_sub_saturate_u.v.htmlindex.htmlmemory_grow.v.htmlmemory_size.v.htmlsidebar-items.jsstruct.v128.htmlunreachable.v.htmlv128.t.htmlv128_and.v.htmlv128_bitselect.v.htmlv128_const.v.htmlv128_load.v.htmlv128_not.v.htmlv128_or.v.htmlv128_store.v.htmlv128_xor.v.htmlx86CpuidResult.t.html_CMP_EQ_OQ.v.html_CMP_EQ_OS.v.html_CMP_EQ_UQ.v.html_CMP_EQ_US.v.html_CMP_FALSE_OQ.v.html_CMP_FALSE_OS.v.html_CMP_GE_OQ.v.html_CMP_GE_OS.v.html_CMP_GT_OQ.v.html_CMP_GT_OS.v.html_CMP_LE_OQ.v.html_CMP_LE_OS.v.html_CMP_LT_OQ.v.html_CMP_LT_OS.v.html_CMP_NEQ_OQ.v.html_CMP_NEQ_OS.v.html_CMP_NEQ_UQ.v.html_CMP_NEQ_US.v.html_CMP_NGE_UQ.v.html_CMP_NGE_US.v.html_CMP_NGT_UQ.v.html_CMP_NGT_US.v.html_CMP_NLE_UQ.v.html_CMP_NLE_US.v.html_CMP_NLT_UQ.v.html_CMP_NLT_US.v.html_CMP_ORD_Q.v.html_CMP_ORD_S.v.html_CMP_TRUE_UQ.v.html_CMP_TRUE_US.v.html_CMP_UNORD_Q.v.html_CMP_UNORD_S.v.html_MM_EXCEPT_DENORM.v.html_MM_EXCEPT_DIV_ZERO.v.html_MM_EXCEPT_INEXACT.v.html_MM_EXCEPT_INVALID.v.html_MM_EXCEPT_MASK.v.html_MM_EXCEPT_OVERFLOW.v.html_MM_EXCEPT_UNDERFLOW.v.html_MM_FLUSH_ZERO_MASK.v.html_MM_FLUSH_ZERO_OFF.v.html_MM_FLUSH_ZERO_ON.v.html_MM_FROUND_CEIL.v.html_MM_FROUND_CUR_DIRECTION.v.html_MM_FROUND_FLOOR.v.html_MM_FROUND_NEARBYINT.v.html_MM_FROUND_NINT.v.html_MM_FROUND_NO_EXC.v.html_MM_FROUND_RAISE_EXC.v.html_MM_FROUND_RINT.v.html_MM_FROUND_TO_NEAREST_INT.v.html_MM_FROUND_TO_NEG_INF.v.html_MM_FROUND_TO_POS_INF.v.html_MM_FROUND_TO_ZERO.v.html_MM_FROUND_TRUNC.v.html_MM_GET_EXCEPTION_MASK.v.html_MM_GET_EXCEPTION_STATE.v.html_MM_GET_FLUSH_ZERO_MODE.v.html_MM_GET_ROUNDING_MODE.v.html_MM_HINT_NTA.v.html_MM_HINT_T0.v.html_MM_HINT_T1.v.html_MM_HINT_T2.v.html_MM_MASK_DENORM.v.html_MM_MASK_DIV_ZERO.v.html_MM_MASK_INEXACT.v.html_MM_MASK_INVALID.v.html_MM_MASK_MASK.v.html_MM_MASK_OVERFLOW.v.html_MM_MASK_UNDERFLOW.v.html_MM_ROUND_DOWN.v.html_MM_ROUND_MASK.v.html_MM_ROUND_NEAREST.v.html_MM_ROUND_TOWARD_ZERO.v.html_MM_ROUND_UP.v.html_MM_SET_EXCEPTION_MASK.v.html_MM_SET_EXCEPTION_STATE.v.html_MM_SET_FLUSH_ZERO_MODE.v.html_MM_SET_ROUNDING_MODE.v.html_MM_SHUFFLE.v.html_MM_TRANSPOSE4_PS.v.html_SIDD_BIT_MASK.v.html_SIDD_CMP_EQUAL_ANY.v.html_SIDD_CMP_EQUAL_EACH.v.html_SIDD_CMP_EQUAL_ORDERED.v.html_SIDD_CMP_RANGES.v.html_SIDD_LEAST_SIGNIFICANT.v.html_SIDD_MASKED_NEGATIVE_POLARITY.v.html_SIDD_MASKED_POSITIVE_POLARITY.v.html_SIDD_MOST_SIGNIFICANT.v.html_SIDD_NEGATIVE_POLARITY.v.html_SIDD_POSITIVE_POLARITY.v.html_SIDD_SBYTE_OPS.v.html_SIDD_SWORD_OPS.v.html_SIDD_UBYTE_OPS.v.html_SIDD_UNIT_MASK.v.html_SIDD_UWORD_OPS.v.html_XABORT_CAPACITY.v.html_XABORT_CONFLICT.v.html_XABORT_DEBUG.v.html_XABORT_EXPLICIT.v.html_XABORT_NESTED.v.html_XABORT_RETRY.v.html_XBEGIN_STARTED.v.html_XCR_XFEATURE_ENABLED_MASK.v.html__cpuid.v.html__cpuid_count.v.html__get_cpuid_max.v.html__m128.t.html__m128d.t.html__m128i.t.html__m256.t.html__m256d.t.html__m256i.t.html__m512.t.html__m512d.t.html__m512i.t.html__m64.t.html__mmask16.t.html__rdtscp.v.html_addcarry_u32.v.html_addcarryx_u32.v.html_andn_u32.v.html_bextr2_u32.v.html_bextr_u32.v.html_bittest.v.html_bittestandcomplement.v.html_bittestandreset.v.html_bittestandset.v.html_blcfill_u32.v.html_blcfill_u64.v.html_blci_u32.v.html_blci_u64.v.html_blcic_u32.v.html_blcic_u64.v.html_blcmsk_u32.v.html_blcmsk_u64.v.html_blcs_u32.v.html_blcs_u64.v.html_blsfill_u32.v.html_blsfill_u64.v.html_blsi_u32.v.html_blsic_u32.v.html_blsic_u64.v.html_blsmsk_u32.v.html_blsr_u32.v.html_bswap.v.html_bzhi_u32.v.html_fxrstor.v.html_fxsave.v.html_lzcnt_u32.v.html_m_empty.v.html_m_maskmovq.v.html_m_paddb.v.html_m_paddd.v.html_m_paddsb.v.html_m_paddsw.v.html_m_paddusb.v.html_m_paddusw.v.html_m_paddw.v.html_m_pavgb.v.html_m_pavgw.v.html_m_pextrw.v.html_m_pinsrw.v.html_m_pmaxsw.v.html_m_pmaxub.v.html_m_pminsw.v.html_m_pminub.v.html_m_pmovmskb.v.html_m_pmulhuw.v.html_m_psadbw.v.html_m_pshufw.v.html_m_psubb.v.html_m_psubd.v.html_m_psubsb.v.html_m_psubsw.v.html_m_psubusb.v.html_m_psubusw.v.html_m_psubw.v.html_mm256_abs_epi16.v.html_mm256_abs_epi32.v.html_mm256_abs_epi8.v.html_mm256_add_epi16.v.html_mm256_add_epi32.v.html_mm256_add_epi64.v.html_mm256_add_epi8.v.html_mm256_add_pd.v.html_mm256_add_ps.v.html_mm256_adds_epi16.v.html_mm256_adds_epi8.v.html_mm256_adds_epu16.v.html_mm256_adds_epu8.v.html_mm256_addsub_pd.v.html_mm256_addsub_ps.v.html_mm256_alignr_epi8.v.html_mm256_and_pd.v.html_mm256_and_ps.v.html_mm256_and_si256.v.html_mm256_andnot_pd.v.html_mm256_andnot_ps.v.html_mm256_andnot_si256.v.html_mm256_avg_epu16.v.html_mm256_avg_epu8.v.html_mm256_blend_epi16.v.html_mm256_blend_epi32.v.html_mm256_blend_pd.v.html_mm256_blend_ps.v.html_mm256_blendv_epi8.v.html_mm256_blendv_pd.v.html_mm256_blendv_ps.v.html_mm256_broadcast_pd.v.html_mm256_broadcast_ps.v.html_mm256_broadcast_sd.v.html_mm256_broadcast_ss.v.html_mm256_broadcastb_epi8.v.html_mm256_broadcastd_epi32.v.html_mm256_broadcastq_epi64.v.html_mm256_broadcastsd_pd.v.html_mm256_broadcastsi128_si256.v.html_mm256_broadcastss_ps.v.html_mm256_broadcastw_epi16.v.html_mm256_bslli_epi128.v.html_mm256_bsrli_epi128.v.html_mm256_castpd128_pd256.v.html_mm256_castpd256_pd128.v.html_mm256_castpd_ps.v.html_mm256_castpd_si256.v.html_mm256_castps128_ps256.v.html_mm256_castps256_ps128.v.html_mm256_castps_pd.v.html_mm256_castps_si256.v.html_mm256_castsi128_si256.v.html_mm256_castsi256_pd.v.html_mm256_castsi256_ps.v.html_mm256_castsi256_si128.v.html_mm256_ceil_pd.v.html_mm256_ceil_ps.v.html_mm256_cmp_pd.v.html_mm256_cmp_ps.v.html_mm256_cmpeq_epi16.v.html_mm256_cmpeq_epi32.v.html_mm256_cmpeq_epi64.v.html_mm256_cmpeq_epi8.v.html_mm256_cmpgt_epi16.v.html_mm256_cmpgt_epi32.v.html_mm256_cmpgt_epi64.v.html_mm256_cmpgt_epi8.v.html_mm256_cvtepi16_epi32.v.html_mm256_cvtepi16_epi64.v.html_mm256_cvtepi32_epi64.v.html_mm256_cvtepi32_pd.v.html_mm256_cvtepi32_ps.v.html_mm256_cvtepi8_epi16.v.html_mm256_cvtepi8_epi32.v.html_mm256_cvtepi8_epi64.v.html_mm256_cvtepu16_epi32.v.html_mm256_cvtepu16_epi64.v.html_mm256_cvtepu32_epi64.v.html_mm256_cvtepu8_epi16.v.html_mm256_cvtepu8_epi32.v.html_mm256_cvtepu8_epi64.v.html_mm256_cvtpd_epi32.v.html_mm256_cvtpd_ps.v.html_mm256_cvtph_ps.v.html_mm256_cvtps_epi32.v.html_mm256_cvtps_pd.v.html_mm256_cvtps_ph.v.html_mm256_cvtsd_f64.v.html_mm256_cvtsi256_si32.v.html_mm256_cvtss_f32.v.html_mm256_cvttpd_epi32.v.html_mm256_cvttps_epi32.v.html_mm256_div_pd.v.html_mm256_div_ps.v.html_mm256_dp_ps.v.html_mm256_extract_epi16.v.html_mm256_extract_epi32.v.html_mm256_extract_epi8.v.html_mm256_extractf128_pd.v.html_mm256_extractf128_ps.v.html_mm256_extractf128_si256.v.html_mm256_extracti128_si256.v.html_mm256_floor_pd.v.html_mm256_floor_ps.v.html_mm256_fmadd_pd.v.html_mm256_fmadd_ps.v.html_mm256_fmaddsub_pd.v.html_mm256_fmaddsub_ps.v.html_mm256_fmsub_pd.v.html_mm256_fmsub_ps.v.html_mm256_fmsubadd_pd.v.html_mm256_fmsubadd_ps.v.html_mm256_fnmadd_pd.v.html_mm256_fnmadd_ps.v.html_mm256_fnmsub_pd.v.html_mm256_fnmsub_ps.v.html_mm256_hadd_epi16.v.html_mm256_hadd_epi32.v.html_mm256_hadd_pd.v.html_mm256_hadd_ps.v.html_mm256_hadds_epi16.v.html_mm256_hsub_epi16.v.html_mm256_hsub_epi32.v.html_mm256_hsub_pd.v.html_mm256_hsub_ps.v.html_mm256_hsubs_epi16.v.html_mm256_i32gather_epi32.v.html_mm256_i32gather_epi64.v.html_mm256_i32gather_pd.v.html_mm256_i32gather_ps.v.html_mm256_i64gather_epi32.v.html_mm256_i64gather_epi64.v.html_mm256_i64gather_pd.v.html_mm256_i64gather_ps.v.html_mm256_insert_epi16.v.html_mm256_insert_epi32.v.html_mm256_insert_epi8.v.html_mm256_insertf128_pd.v.html_mm256_insertf128_ps.v.html_mm256_insertf128_si256.v.html_mm256_inserti128_si256.v.html_mm256_lddqu_si256.v.html_mm256_load_pd.v.html_mm256_load_ps.v.html_mm256_load_si256.v.html_mm256_loadu2_m128.v.html_mm256_loadu2_m128d.v.html_mm256_loadu2_m128i.v.html_mm256_loadu_pd.v.html_mm256_loadu_ps.v.html_mm256_loadu_si256.v.html_mm256_madd52hi_epu64.v.html_mm256_madd52lo_epu64.v.html_mm256_madd_epi16.v.html_mm256_maddubs_epi16.v.html_mm256_mask_i32gather_epi32.v.html_mm256_mask_i32gather_epi64.v.html_mm256_mask_i32gather_pd.v.html_mm256_mask_i32gather_ps.v.html_mm256_mask_i64gather_epi32.v.html_mm256_mask_i64gather_epi64.v.html_mm256_mask_i64gather_pd.v.html_mm256_mask_i64gather_ps.v.html_mm256_maskload_epi32.v.html_mm256_maskload_epi64.v.html_mm256_maskload_pd.v.html_mm256_maskload_ps.v.html_mm256_maskstore_epi32.v.html_mm256_maskstore_epi64.v.html_mm256_maskstore_pd.v.html_mm256_maskstore_ps.v.html_mm256_max_epi16.v.html_mm256_max_epi32.v.html_mm256_max_epi8.v.html_mm256_max_epu16.v.html_mm256_max_epu32.v.html_mm256_max_epu8.v.html_mm256_max_pd.v.html_mm256_max_ps.v.html_mm256_min_epi16.v.html_mm256_min_epi32.v.html_mm256_min_epi8.v.html_mm256_min_epu16.v.html_mm256_min_epu32.v.html_mm256_min_epu8.v.html_mm256_min_pd.v.html_mm256_min_ps.v.html_mm256_movedup_pd.v.html_mm256_movehdup_ps.v.html_mm256_moveldup_ps.v.html_mm256_movemask_epi8.v.html_mm256_movemask_pd.v.html_mm256_movemask_ps.v.html_mm256_mpsadbw_epu8.v.html_mm256_mul_epi32.v.html_mm256_mul_epu32.v.html_mm256_mul_pd.v.html_mm256_mul_ps.v.html_mm256_mulhi_epi16.v.html_mm256_mulhi_epu16.v.html_mm256_mulhrs_epi16.v.html_mm256_mullo_epi16.v.html_mm256_mullo_epi32.v.html_mm256_or_pd.v.html_mm256_or_ps.v.html_mm256_or_si256.v.html_mm256_packs_epi16.v.html_mm256_packs_epi32.v.html_mm256_packus_epi16.v.html_mm256_packus_epi32.v.html_mm256_permute2f128_pd.v.html_mm256_permute2f128_ps.v.html_mm256_permute2f128_si256.v.html_mm256_permute2x128_si256.v.html_mm256_permute4x64_epi64.v.html_mm256_permute4x64_pd.v.html_mm256_permute_pd.v.html_mm256_permute_ps.v.html_mm256_permutevar8x32_epi32.v.html_mm256_permutevar8x32_ps.v.html_mm256_permutevar_pd.v.html_mm256_permutevar_ps.v.html_mm256_rcp_ps.v.html_mm256_round_pd.v.html_mm256_round_ps.v.html_mm256_rsqrt_ps.v.html_mm256_sad_epu8.v.html_mm256_set1_epi16.v.html_mm256_set1_epi32.v.html_mm256_set1_epi64x.v.html_mm256_set1_epi8.v.html_mm256_set1_pd.v.html_mm256_set1_ps.v.html_mm256_set_epi16.v.html_mm256_set_epi32.v.html_mm256_set_epi64x.v.html_mm256_set_epi8.v.html_mm256_set_m128.v.html_mm256_set_m128d.v.html_mm256_set_m128i.v.html_mm256_set_pd.v.html_mm256_set_ps.v.html_mm256_setr_epi16.v.html_mm256_setr_epi32.v.html_mm256_setr_epi64x.v.html_mm256_setr_epi8.v.html_mm256_setr_m128.v.html_mm256_setr_m128d.v.html_mm256_setr_m128i.v.html_mm256_setr_pd.v.html_mm256_setr_ps.v.html_mm256_setzero_pd.v.html_mm256_setzero_ps.v.html_mm256_setzero_si256.v.html_mm256_shuffle_epi32.v.html_mm256_shuffle_epi8.v.html_mm256_shuffle_pd.v.html_mm256_shuffle_ps.v.html_mm256_shufflehi_epi16.v.html_mm256_shufflelo_epi16.v.html_mm256_sign_epi16.v.html_mm256_sign_epi32.v.html_mm256_sign_epi8.v.html_mm256_sll_epi16.v.html_mm256_sll_epi32.v.html_mm256_sll_epi64.v.html_mm256_slli_epi16.v.html_mm256_slli_epi32.v.html_mm256_slli_epi64.v.html_mm256_slli_si256.v.html_mm256_sllv_epi32.v.html_mm256_sllv_epi64.v.html_mm256_sqrt_pd.v.html_mm256_sqrt_ps.v.html_mm256_sra_epi16.v.html_mm256_sra_epi32.v.html_mm256_srai_epi16.v.html_mm256_srai_epi32.v.html_mm256_srav_epi32.v.html_mm256_srl_epi16.v.html_mm256_srl_epi32.v.html_mm256_srl_epi64.v.html_mm256_srli_epi16.v.html_mm256_srli_epi32.v.html_mm256_srli_epi64.v.html_mm256_srli_si256.v.html_mm256_srlv_epi32.v.html_mm256_srlv_epi64.v.html_mm256_store_pd.v.html_mm256_store_ps.v.html_mm256_store_si256.v.html_mm256_storeu2_m128.v.html_mm256_storeu2_m128d.v.html_mm256_storeu2_m128i.v.html_mm256_storeu_pd.v.html_mm256_storeu_ps.v.html_mm256_storeu_si256.v.html_mm256_stream_pd.v.html_mm256_stream_ps.v.html_mm256_stream_si256.v.html_mm256_sub_epi16.v.html_mm256_sub_epi32.v.html_mm256_sub_epi64.v.html_mm256_sub_epi8.v.html_mm256_sub_pd.v.html_mm256_sub_ps.v.html_mm256_subs_epi16.v.html_mm256_subs_epi8.v.html_mm256_subs_epu16.v.html_mm256_subs_epu8.v.html_mm256_testc_pd.v.html_mm256_testc_ps.v.html_mm256_testc_si256.v.html_mm256_testnzc_pd.v.html_mm256_testnzc_ps.v.html_mm256_testnzc_si256.v.html_mm256_testz_pd.v.html_mm256_testz_ps.v.html_mm256_testz_si256.v.html_mm256_undefined_pd.v.html_mm256_undefined_ps.v.html_mm256_undefined_si256.v.html_mm256_unpackhi_epi16.v.html_mm256_unpackhi_epi32.v.html_mm256_unpackhi_epi64.v.html_mm256_unpackhi_epi8.v.html_mm256_unpackhi_pd.v.html_mm256_unpackhi_ps.v.html_mm256_unpacklo_epi16.v.html_mm256_unpacklo_epi32.v.html_mm256_unpacklo_epi64.v.html_mm256_unpacklo_epi8.v.html_mm256_unpacklo_pd.v.html_mm256_unpacklo_ps.v.html_mm256_xor_pd.v.html_mm256_xor_ps.v.html_mm256_xor_si256.v.html_mm256_zeroall.v.html_mm256_zeroupper.v.html_mm256_zextpd128_pd256.v.html_mm256_zextps128_ps256.v.html_mm256_zextsi128_si256.v.html_mm512_abs_epi32.v.html_mm512_madd52hi_epu64.v.html_mm512_madd52lo_epu64.v.html_mm512_mask_abs_epi32.v.html_mm512_maskz_abs_epi32.v.html_mm512_set1_epi64.v.html_mm512_setr_epi32.v.html_mm512_setzero_si512.v.html_mm_abs_epi16.v.html_mm_abs_epi32.v.html_mm_abs_epi8.v.html_mm_abs_pi16.v.html_mm_abs_pi32.v.html_mm_abs_pi8.v.html_mm_add_epi16.v.html_mm_add_epi32.v.html_mm_add_epi64.v.html_mm_add_epi8.v.html_mm_add_pd.v.html_mm_add_pi16.v.html_mm_add_pi32.v.html_mm_add_pi8.v.html_mm_add_ps.v.html_mm_add_sd.v.html_mm_add_si64.v.html_mm_add_ss.v.html_mm_adds_epi16.v.html_mm_adds_epi8.v.html_mm_adds_epu16.v.html_mm_adds_epu8.v.html_mm_adds_pi16.v.html_mm_adds_pi8.v.html_mm_adds_pu16.v.html_mm_adds_pu8.v.html_mm_addsub_pd.v.html_mm_addsub_ps.v.html_mm_aesdec_si128.v.html_mm_aesdeclast_si128.v.html_mm_aesenc_si128.v.html_mm_aesenclast_si128.v.html_mm_aesimc_si128.v.html_mm_aeskeygenassist_si128.v.html_mm_alignr_epi8.v.html_mm_alignr_pi8.v.html_mm_and_pd.v.html_mm_and_ps.v.html_mm_and_si128.v.html_mm_andnot_pd.v.html_mm_andnot_ps.v.html_mm_andnot_si128.v.html_mm_avg_epu16.v.html_mm_avg_epu8.v.html_mm_avg_pu16.v.html_mm_avg_pu8.v.html_mm_blend_epi16.v.html_mm_blend_epi32.v.html_mm_blend_pd.v.html_mm_blend_ps.v.html_mm_blendv_epi8.v.html_mm_blendv_pd.v.html_mm_blendv_ps.v.html_mm_broadcast_ss.v.html_mm_broadcastb_epi8.v.html_mm_broadcastd_epi32.v.html_mm_broadcastq_epi64.v.html_mm_broadcastsd_pd.v.html_mm_broadcastss_ps.v.html_mm_broadcastw_epi16.v.html_mm_bslli_si128.v.html_mm_bsrli_si128.v.html_mm_castpd_ps.v.html_mm_castpd_si128.v.html_mm_castps_pd.v.html_mm_castps_si128.v.html_mm_castsi128_pd.v.html_mm_castsi128_ps.v.html_mm_ceil_pd.v.html_mm_ceil_ps.v.html_mm_ceil_sd.v.html_mm_ceil_ss.v.html_mm_clflush.v.html_mm_clmulepi64_si128.v.html_mm_cmp_pd.v.html_mm_cmp_ps.v.html_mm_cmp_sd.v.html_mm_cmp_ss.v.html_mm_cmpeq_epi16.v.html_mm_cmpeq_epi32.v.html_mm_cmpeq_epi64.v.html_mm_cmpeq_epi8.v.html_mm_cmpeq_pd.v.html_mm_cmpeq_ps.v.html_mm_cmpeq_sd.v.html_mm_cmpeq_ss.v.html_mm_cmpestra.v.html_mm_cmpestrc.v.html_mm_cmpestri.v.html_mm_cmpestrm.v.html_mm_cmpestro.v.html_mm_cmpestrs.v.html_mm_cmpestrz.v.html_mm_cmpge_pd.v.html_mm_cmpge_ps.v.html_mm_cmpge_sd.v.html_mm_cmpge_ss.v.html_mm_cmpgt_epi16.v.html_mm_cmpgt_epi32.v.html_mm_cmpgt_epi64.v.html_mm_cmpgt_epi8.v.html_mm_cmpgt_pd.v.html_mm_cmpgt_pi16.v.html_mm_cmpgt_pi32.v.html_mm_cmpgt_pi8.v.html_mm_cmpgt_ps.v.html_mm_cmpgt_sd.v.html_mm_cmpgt_ss.v.html_mm_cmpistra.v.html_mm_cmpistrc.v.html_mm_cmpistri.v.html_mm_cmpistrm.v.html_mm_cmpistro.v.html_mm_cmpistrs.v.html_mm_cmpistrz.v.html_mm_cmple_pd.v.html_mm_cmple_ps.v.html_mm_cmple_sd.v.html_mm_cmple_ss.v.html_mm_cmplt_epi16.v.html_mm_cmplt_epi32.v.html_mm_cmplt_epi8.v.html_mm_cmplt_pd.v.html_mm_cmplt_ps.v.html_mm_cmplt_sd.v.html_mm_cmplt_ss.v.html_mm_cmpneq_pd.v.html_mm_cmpneq_ps.v.html_mm_cmpneq_sd.v.html_mm_cmpneq_ss.v.html_mm_cmpnge_pd.v.html_mm_cmpnge_ps.v.html_mm_cmpnge_sd.v.html_mm_cmpnge_ss.v.html_mm_cmpngt_pd.v.html_mm_cmpngt_ps.v.html_mm_cmpngt_sd.v.html_mm_cmpngt_ss.v.html_mm_cmpnle_pd.v.html_mm_cmpnle_ps.v.html_mm_cmpnle_sd.v.html_mm_cmpnle_ss.v.html_mm_cmpnlt_pd.v.html_mm_cmpnlt_ps.v.html_mm_cmpnlt_sd.v.html_mm_cmpnlt_ss.v.html_mm_cmpord_pd.v.html_mm_cmpord_ps.v.html_mm_cmpord_sd.v.html_mm_cmpord_ss.v.html_mm_cmpunord_pd.v.html_mm_cmpunord_ps.v.html_mm_cmpunord_sd.v.html_mm_cmpunord_ss.v.html_mm_comieq_sd.v.html_mm_comieq_ss.v.html_mm_comige_sd.v.html_mm_comige_ss.v.html_mm_comigt_sd.v.html_mm_comigt_ss.v.html_mm_comile_sd.v.html_mm_comile_ss.v.html_mm_comilt_sd.v.html_mm_comilt_ss.v.html_mm_comineq_sd.v.html_mm_comineq_ss.v.html_mm_crc32_u16.v.html_mm_crc32_u32.v.html_mm_crc32_u8.v.html_mm_cvt_pi2ps.v.html_mm_cvt_ps2pi.v.html_mm_cvt_si2ss.v.html_mm_cvt_ss2si.v.html_mm_cvtepi16_epi32.v.html_mm_cvtepi16_epi64.v.html_mm_cvtepi32_epi64.v.html_mm_cvtepi32_pd.v.html_mm_cvtepi32_ps.v.html_mm_cvtepi8_epi16.v.html_mm_cvtepi8_epi32.v.html_mm_cvtepi8_epi64.v.html_mm_cvtepu16_epi32.v.html_mm_cvtepu16_epi64.v.html_mm_cvtepu32_epi64.v.html_mm_cvtepu8_epi16.v.html_mm_cvtepu8_epi32.v.html_mm_cvtepu8_epi64.v.html_mm_cvtpd_epi32.v.html_mm_cvtpd_pi32.v.html_mm_cvtpd_ps.v.html_mm_cvtph_ps.v.html_mm_cvtpi16_ps.v.html_mm_cvtpi32_pd.v.html_mm_cvtpi32_ps.v.html_mm_cvtpi32x2_ps.v.html_mm_cvtpi8_ps.v.html_mm_cvtps_epi32.v.html_mm_cvtps_pd.v.html_mm_cvtps_ph.v.html_mm_cvtps_pi16.v.html_mm_cvtps_pi32.v.html_mm_cvtps_pi8.v.html_mm_cvtpu16_ps.v.html_mm_cvtpu8_ps.v.html_mm_cvtsd_f64.v.html_mm_cvtsd_si32.v.html_mm_cvtsd_ss.v.html_mm_cvtsi128_si32.v.html_mm_cvtsi32_sd.v.html_mm_cvtsi32_si128.v.html_mm_cvtsi32_si64.v.html_mm_cvtsi32_ss.v.html_mm_cvtsi64_si32.v.html_mm_cvtss_f32.v.html_mm_cvtss_sd.v.html_mm_cvtss_si32.v.html_mm_cvtt_ps2pi.v.html_mm_cvtt_ss2si.v.html_mm_cvttpd_epi32.v.html_mm_cvttpd_pi32.v.html_mm_cvttps_epi32.v.html_mm_cvttps_pi32.v.html_mm_cvttsd_si32.v.html_mm_cvttss_si32.v.html_mm_div_pd.v.html_mm_div_ps.v.html_mm_div_sd.v.html_mm_div_ss.v.html_mm_dp_pd.v.html_mm_dp_ps.v.html_mm_empty.v.html_mm_extract_epi16.v.html_mm_extract_epi32.v.html_mm_extract_epi8.v.html_mm_extract_pi16.v.html_mm_extract_ps.v.html_mm_extract_si64.v.html_mm_floor_pd.v.html_mm_floor_ps.v.html_mm_floor_sd.v.html_mm_floor_ss.v.html_mm_fmadd_pd.v.html_mm_fmadd_ps.v.html_mm_fmadd_sd.v.html_mm_fmadd_ss.v.html_mm_fmaddsub_pd.v.html_mm_fmaddsub_ps.v.html_mm_fmsub_pd.v.html_mm_fmsub_ps.v.html_mm_fmsub_sd.v.html_mm_fmsub_ss.v.html_mm_fmsubadd_pd.v.html_mm_fmsubadd_ps.v.html_mm_fnmadd_pd.v.html_mm_fnmadd_ps.v.html_mm_fnmadd_sd.v.html_mm_fnmadd_ss.v.html_mm_fnmsub_pd.v.html_mm_fnmsub_ps.v.html_mm_fnmsub_sd.v.html_mm_fnmsub_ss.v.html_mm_getcsr.v.html_mm_hadd_epi16.v.html_mm_hadd_epi32.v.html_mm_hadd_pd.v.html_mm_hadd_pi16.v.html_mm_hadd_pi32.v.html_mm_hadd_ps.v.html_mm_hadds_epi16.v.html_mm_hadds_pi16.v.html_mm_hsub_epi16.v.html_mm_hsub_epi32.v.html_mm_hsub_pd.v.html_mm_hsub_pi16.v.html_mm_hsub_pi32.v.html_mm_hsub_ps.v.html_mm_hsubs_epi16.v.html_mm_hsubs_pi16.v.html_mm_i32gather_epi32.v.html_mm_i32gather_epi64.v.html_mm_i32gather_pd.v.html_mm_i32gather_ps.v.html_mm_i64gather_epi32.v.html_mm_i64gather_epi64.v.html_mm_i64gather_pd.v.html_mm_i64gather_ps.v.html_mm_insert_epi16.v.html_mm_insert_epi32.v.html_mm_insert_epi8.v.html_mm_insert_pi16.v.html_mm_insert_ps.v.html_mm_insert_si64.v.html_mm_lddqu_si128.v.html_mm_lfence.v.html_mm_load1_pd.v.html_mm_load1_ps.v.html_mm_load_pd.v.html_mm_load_pd1.v.html_mm_load_ps.v.html_mm_load_ps1.v.html_mm_load_sd.v.html_mm_load_si128.v.html_mm_load_ss.v.html_mm_loaddup_pd.v.html_mm_loadh_pd.v.html_mm_loadh_pi.v.html_mm_loadl_epi64.v.html_mm_loadl_pd.v.html_mm_loadl_pi.v.html_mm_loadr_pd.v.html_mm_loadr_ps.v.html_mm_loadu_pd.v.html_mm_loadu_ps.v.html_mm_loadu_si128.v.html_mm_madd52hi_epu64.v.html_mm_madd52lo_epu64.v.html_mm_madd_epi16.v.html_mm_maddubs_epi16.v.html_mm_maddubs_pi16.v.html_mm_mask_i32gather_epi32.v.html_mm_mask_i32gather_epi64.v.html_mm_mask_i32gather_pd.v.html_mm_mask_i32gather_ps.v.html_mm_mask_i64gather_epi32.v.html_mm_mask_i64gather_epi64.v.html_mm_mask_i64gather_pd.v.html_mm_mask_i64gather_ps.v.html_mm_maskload_epi32.v.html_mm_maskload_epi64.v.html_mm_maskload_pd.v.html_mm_maskload_ps.v.html_mm_maskmove_si64.v.html_mm_maskmoveu_si128.v.html_mm_maskstore_epi32.v.html_mm_maskstore_epi64.v.html_mm_maskstore_pd.v.html_mm_maskstore_ps.v.html_mm_max_epi16.v.html_mm_max_epi32.v.html_mm_max_epi8.v.html_mm_max_epu16.v.html_mm_max_epu32.v.html_mm_max_epu8.v.html_mm_max_pd.v.html_mm_max_pi16.v.html_mm_max_ps.v.html_mm_max_pu8.v.html_mm_max_sd.v.html_mm_max_ss.v.html_mm_mfence.v.html_mm_min_epi16.v.html_mm_min_epi32.v.html_mm_min_epi8.v.html_mm_min_epu16.v.html_mm_min_epu32.v.html_mm_min_epu8.v.html_mm_min_pd.v.html_mm_min_pi16.v.html_mm_min_ps.v.html_mm_min_pu8.v.html_mm_min_sd.v.html_mm_min_ss.v.html_mm_minpos_epu16.v.html_mm_move_epi64.v.html_mm_move_sd.v.html_mm_move_ss.v.html_mm_movedup_pd.v.html_mm_movehdup_ps.v.html_mm_movehl_ps.v.html_mm_moveldup_ps.v.html_mm_movelh_ps.v.html_mm_movemask_epi8.v.html_mm_movemask_pd.v.html_mm_movemask_pi8.v.html_mm_movemask_ps.v.html_mm_movepi64_pi64.v.html_mm_movpi64_epi64.v.html_mm_mpsadbw_epu8.v.html_mm_mul_epi32.v.html_mm_mul_epu32.v.html_mm_mul_pd.v.html_mm_mul_ps.v.html_mm_mul_sd.v.html_mm_mul_ss.v.html_mm_mul_su32.v.html_mm_mulhi_epi16.v.html_mm_mulhi_epu16.v.html_mm_mulhi_pu16.v.html_mm_mulhrs_epi16.v.html_mm_mulhrs_pi16.v.html_mm_mullo_epi16.v.html_mm_mullo_epi32.v.html_mm_mullo_pi16.v.html_mm_or_pd.v.html_mm_or_ps.v.html_mm_or_si128.v.html_mm_packs_epi16.v.html_mm_packs_epi32.v.html_mm_packs_pi16.v.html_mm_packs_pi32.v.html_mm_packus_epi16.v.html_mm_packus_epi32.v.html_mm_pause.v.html_mm_permute_pd.v.html_mm_permute_ps.v.html_mm_permutevar_pd.v.html_mm_permutevar_ps.v.html_mm_prefetch.v.html_mm_rcp_ps.v.html_mm_rcp_ss.v.html_mm_round_pd.v.html_mm_round_ps.v.html_mm_round_sd.v.html_mm_round_ss.v.html_mm_rsqrt_ps.v.html_mm_rsqrt_ss.v.html_mm_sad_epu8.v.html_mm_sad_pu8.v.html_mm_set1_epi16.v.html_mm_set1_epi32.v.html_mm_set1_epi64.v.html_mm_set1_epi64x.v.html_mm_set1_epi8.v.html_mm_set1_pd.v.html_mm_set1_pi16.v.html_mm_set1_pi32.v.html_mm_set1_pi8.v.html_mm_set1_ps.v.html_mm_set_epi16.v.html_mm_set_epi32.v.html_mm_set_epi64.v.html_mm_set_epi64x.v.html_mm_set_epi8.v.html_mm_set_pd.v.html_mm_set_pd1.v.html_mm_set_pi16.v.html_mm_set_pi32.v.html_mm_set_pi8.v.html_mm_set_ps.v.html_mm_set_ps1.v.html_mm_set_sd.v.html_mm_set_ss.v.html_mm_setcsr.v.html_mm_setr_epi16.v.html_mm_setr_epi32.v.html_mm_setr_epi64.v.html_mm_setr_epi8.v.html_mm_setr_pd.v.html_mm_setr_pi16.v.html_mm_setr_pi32.v.html_mm_setr_pi8.v.html_mm_setr_ps.v.html_mm_setzero_pd.v.html_mm_setzero_ps.v.html_mm_setzero_si128.v.html_mm_setzero_si64.v.html_mm_sfence.v.html_mm_sha1msg1_epu32.v.html_mm_sha1msg2_epu32.v.html_mm_sha1nexte_epu32.v.html_mm_sha1rnds4_epu32.v.html_mm_sha256msg1_epu32.v.html_mm_sha256msg2_epu32.v.html_mm_sha256rnds2_epu32.v.html_mm_shuffle_epi32.v.html_mm_shuffle_epi8.v.html_mm_shuffle_pd.v.html_mm_shuffle_pi16.v.html_mm_shuffle_pi8.v.html_mm_shuffle_ps.v.html_mm_shufflehi_epi16.v.html_mm_shufflelo_epi16.v.html_mm_sign_epi16.v.html_mm_sign_epi32.v.html_mm_sign_epi8.v.html_mm_sign_pi16.v.html_mm_sign_pi32.v.html_mm_sign_pi8.v.html_mm_sll_epi16.v.html_mm_sll_epi32.v.html_mm_sll_epi64.v.html_mm_slli_epi16.v.html_mm_slli_epi32.v.html_mm_slli_epi64.v.html_mm_slli_si128.v.html_mm_sllv_epi32.v.html_mm_sllv_epi64.v.html_mm_sqrt_pd.v.html_mm_sqrt_ps.v.html_mm_sqrt_sd.v.html_mm_sqrt_ss.v.html_mm_sra_epi16.v.html_mm_sra_epi32.v.html_mm_srai_epi16.v.html_mm_srai_epi32.v.html_mm_srav_epi32.v.html_mm_srl_epi16.v.html_mm_srl_epi32.v.html_mm_srl_epi64.v.html_mm_srli_epi16.v.html_mm_srli_epi32.v.html_mm_srli_epi64.v.html_mm_srli_si128.v.html_mm_srlv_epi32.v.html_mm_srlv_epi64.v.html_mm_store1_pd.v.html_mm_store1_ps.v.html_mm_store_pd.v.html_mm_store_pd1.v.html_mm_store_ps.v.html_mm_store_ps1.v.html_mm_store_sd.v.html_mm_store_si128.v.html_mm_store_ss.v.html_mm_storeh_pd.v.html_mm_storeh_pi.v.html_mm_storel_epi64.v.html_mm_storel_pd.v.html_mm_storel_pi.v.html_mm_storer_pd.v.html_mm_storer_ps.v.html_mm_storeu_pd.v.html_mm_storeu_ps.v.html_mm_storeu_si128.v.html_mm_stream_pd.v.html_mm_stream_pi.v.html_mm_stream_ps.v.html_mm_stream_sd.v.html_mm_stream_si128.v.html_mm_stream_si32.v.html_mm_stream_ss.v.html_mm_sub_epi16.v.html_mm_sub_epi32.v.html_mm_sub_epi64.v.html_mm_sub_epi8.v.html_mm_sub_pd.v.html_mm_sub_pi16.v.html_mm_sub_pi32.v.html_mm_sub_pi8.v.html_mm_sub_ps.v.html_mm_sub_sd.v.html_mm_sub_si64.v.html_mm_sub_ss.v.html_mm_subs_epi16.v.html_mm_subs_epi8.v.html_mm_subs_epu16.v.html_mm_subs_epu8.v.html_mm_subs_pi16.v.html_mm_subs_pi8.v.html_mm_subs_pu16.v.html_mm_subs_pu8.v.html_mm_test_all_ones.v.html_mm_test_all_zeros.v.html_mm_test_mix_ones_zeros.v.html_mm_testc_pd.v.html_mm_testc_ps.v.html_mm_testc_si128.v.html_mm_testnzc_pd.v.html_mm_testnzc_ps.v.html_mm_testnzc_si128.v.html_mm_testz_pd.v.html_mm_testz_ps.v.html_mm_testz_si128.v.html_mm_tzcnt_32.v.html_mm_ucomieq_sd.v.html_mm_ucomieq_ss.v.html_mm_ucomige_sd.v.html_mm_ucomige_ss.v.html_mm_ucomigt_sd.v.html_mm_ucomigt_ss.v.html_mm_ucomile_sd.v.html_mm_ucomile_ss.v.html_mm_ucomilt_sd.v.html_mm_ucomilt_ss.v.html_mm_ucomineq_sd.v.html_mm_ucomineq_ss.v.html_mm_undefined_pd.v.html_mm_undefined_ps.v.html_mm_undefined_si128.v.html_mm_unpackhi_epi16.v.html_mm_unpackhi_epi32.v.html_mm_unpackhi_epi64.v.html_mm_unpackhi_epi8.v.html_mm_unpackhi_pd.v.html_mm_unpackhi_pi16.v.html_mm_unpackhi_pi32.v.html_mm_unpackhi_pi8.v.html_mm_unpackhi_ps.v.html_mm_unpacklo_epi16.v.html_mm_unpacklo_epi32.v.html_mm_unpacklo_epi64.v.html_mm_unpacklo_epi8.v.html_mm_unpacklo_pd.v.html_mm_unpacklo_pi16.v.html_mm_unpacklo_pi32.v.html_mm_unpacklo_pi8.v.html_mm_unpacklo_ps.v.html_mm_xor_pd.v.html_mm_xor_ps.v.html_mm_xor_si128.v.html_mulx_u32.v.html_pdep_u32.v.html_pext_u32.v.html_popcnt32.v.html_rdrand16_step.v.html_rdrand32_step.v.html_rdseed16_step.v.html_rdseed32_step.v.html_rdtsc.v.html_subborrow_u32.v.html_t1mskc_u32.v.html_t1mskc_u64.v.html_tzcnt_u32.v.html_tzmsk_u32.v.html_tzmsk_u64.v.html_xabort.v.html_xabort_code.v.html_xbegin.v.html_xend.v.html_xgetbv.v.html_xrstor.v.html_xrstors.v.html_xsave.v.html_xsavec.v.html_xsaveopt.v.html_xsaves.v.html_xsetbv.v.html_xtest.v.htmlconstant._CMP_EQ_OQ.htmlconstant._CMP_EQ_OS.htmlconstant._CMP_EQ_UQ.htmlconstant._CMP_EQ_US.htmlconstant._CMP_FALSE_OQ.htmlconstant._CMP_FALSE_OS.htmlconstant._CMP_GE_OQ.htmlconstant._CMP_GE_OS.htmlconstant._CMP_GT_OQ.htmlconstant._CMP_GT_OS.htmlconstant._CMP_LE_OQ.htmlconstant._CMP_LE_OS.htmlconstant._CMP_LT_OQ.htmlconstant._CMP_LT_OS.htmlconstant._CMP_NEQ_OQ.htmlconstant._CMP_NEQ_OS.htmlconstant._CMP_NEQ_UQ.htmlconstant._CMP_NEQ_US.htmlconstant._CMP_NGE_UQ.htmlconstant._CMP_NGE_US.htmlconstant._CMP_NGT_UQ.htmlconstant._CMP_NGT_US.htmlconstant._CMP_NLE_UQ.htmlconstant._CMP_NLE_US.htmlconstant._CMP_NLT_UQ.htmlconstant._CMP_NLT_US.htmlconstant._CMP_ORD_Q.htmlconstant._CMP_ORD_S.htmlconstant._CMP_TRUE_UQ.htmlconstant._CMP_TRUE_US.htmlconstant._CMP_UNORD_Q.htmlconstant._CMP_UNORD_S.htmlconstant._MM_EXCEPT_DENORM.htmlconstant._MM_EXCEPT_DIV_ZERO.htmlconstant._MM_EXCEPT_INEXACT.htmlconstant._MM_EXCEPT_INVALID.htmlconstant._MM_EXCEPT_MASK.htmlconstant._MM_EXCEPT_OVERFLOW.htmlconstant._MM_EXCEPT_UNDERFLOW.htmlconstant._MM_FLUSH_ZERO_MASK.htmlconstant._MM_FLUSH_ZERO_OFF.htmlconstant._MM_FLUSH_ZERO_ON.htmlconstant._MM_FROUND_CEIL.htmlconstant._MM_FROUND_CUR_DIRECTION.htmlconstant._MM_FROUND_FLOOR.htmlconstant._MM_FROUND_NEARBYINT.htmlconstant._MM_FROUND_NINT.htmlconstant._MM_FROUND_NO_EXC.htmlconstant._MM_FROUND_RAISE_EXC.htmlconstant._MM_FROUND_RINT.htmlconstant._MM_FROUND_TO_NEAREST_INT.htmlconstant._MM_FROUND_TO_NEG_INF.htmlconstant._MM_FROUND_TO_POS_INF.htmlconstant._MM_FROUND_TO_ZERO.htmlconstant._MM_FROUND_TRUNC.htmlconstant._MM_HINT_NTA.htmlconstant._MM_HINT_T0.htmlconstant._MM_HINT_T1.htmlconstant._MM_HINT_T2.htmlconstant._MM_MASK_DENORM.htmlconstant._MM_MASK_DIV_ZERO.htmlconstant._MM_MASK_INEXACT.htmlconstant._MM_MASK_INVALID.htmlconstant._MM_MASK_MASK.htmlconstant._MM_MASK_OVERFLOW.htmlconstant._MM_MASK_UNDERFLOW.htmlconstant._MM_ROUND_DOWN.htmlconstant._MM_ROUND_MASK.htmlconstant._MM_ROUND_NEAREST.htmlconstant._MM_ROUND_TOWARD_ZERO.htmlconstant._MM_ROUND_UP.htmlconstant._SIDD_BIT_MASK.htmlconstant._SIDD_CMP_EQUAL_ANY.htmlconstant._SIDD_CMP_EQUAL_EACH.htmlconstant._SIDD_CMP_EQUAL_ORDERED.htmlconstant._SIDD_CMP_RANGES.htmlconstant._SIDD_LEAST_SIGNIFICANT.htmlconstant._SIDD_MASKED_NEGATIVE_POLARITY.htmlconstant._SIDD_MASKED_POSITIVE_POLARITY.htmlconstant._SIDD_MOST_SIGNIFICANT.htmlconstant._SIDD_NEGATIVE_POLARITY.htmlconstant._SIDD_POSITIVE_POLARITY.htmlconstant._SIDD_SBYTE_OPS.htmlconstant._SIDD_SWORD_OPS.htmlconstant._SIDD_UBYTE_OPS.htmlconstant._SIDD_UNIT_MASK.htmlconstant._SIDD_UWORD_OPS.htmlconstant._XABORT_CAPACITY.htmlconstant._XABORT_CONFLICT.htmlconstant._XABORT_DEBUG.htmlconstant._XABORT_EXPLICIT.htmlconstant._XABORT_NESTED.htmlconstant._XABORT_RETRY.htmlconstant._XBEGIN_STARTED.htmlconstant._XCR_XFEATURE_ENABLED_MASK.htmlfn._MM_GET_EXCEPTION_MASK.htmlfn._MM_GET_EXCEPTION_STATE.htmlfn._MM_GET_FLUSH_ZERO_MODE.htmlfn._MM_GET_ROUNDING_MODE.htmlfn._MM_SET_EXCEPTION_MASK.htmlfn._MM_SET_EXCEPTION_STATE.htmlfn._MM_SET_FLUSH_ZERO_MODE.htmlfn._MM_SET_ROUNDING_MODE.htmlfn._MM_SHUFFLE.htmlfn._MM_TRANSPOSE4_PS.htmlfn.__cpuid.htmlfn.__cpuid_count.htmlfn.__get_cpuid_max.htmlfn.__rdtscp.htmlfn._addcarry_u32.htmlfn._addcarryx_u32.htmlfn._andn_u32.htmlfn._bextr2_u32.htmlfn._bextr_u32.htmlfn._bittest.htmlfn._bittestandcomplement.htmlfn._bittestandreset.htmlfn._bittestandset.htmlfn._blcfill_u32.htmlfn._blcfill_u64.htmlfn._blci_u32.htmlfn._blci_u64.htmlfn._blcic_u32.htmlfn._blcic_u64.htmlfn._blcmsk_u32.htmlfn._blcmsk_u64.htmlfn._blcs_u32.htmlfn._blcs_u64.htmlfn._blsfill_u32.htmlfn._blsfill_u64.htmlfn._blsi_u32.htmlfn._blsic_u32.htmlfn._blsic_u64.htmlfn._blsmsk_u32.htmlfn._blsr_u32.htmlfn._bswap.htmlfn._bzhi_u32.htmlfn._fxrstor.htmlfn._fxsave.htmlfn._lzcnt_u32.htmlfn._m_empty.htmlfn._m_maskmovq.htmlfn._m_paddb.htmlfn._m_paddd.htmlfn._m_paddsb.htmlfn._m_paddsw.htmlfn._m_paddusb.htmlfn._m_paddusw.htmlfn._m_paddw.htmlfn._m_pavgb.htmlfn._m_pavgw.htmlfn._m_pextrw.htmlfn._m_pinsrw.htmlfn._m_pmaxsw.htmlfn._m_pmaxub.htmlfn._m_pminsw.htmlfn._m_pminub.htmlfn._m_pmovmskb.htmlfn._m_pmulhuw.htmlfn._m_psadbw.htmlfn._m_pshufw.htmlfn._m_psubb.htmlfn._m_psubd.htmlfn._m_psubsb.htmlfn._m_psubsw.htmlfn._m_psubusb.htmlfn._m_psubusw.htmlfn._m_psubw.htmlfn._mm256_abs_epi16.htmlfn._mm256_abs_epi32.htmlfn._mm256_abs_epi8.htmlfn._mm256_add_epi16.htmlfn._mm256_add_epi32.htmlfn._mm256_add_epi64.htmlfn._mm256_add_epi8.htmlfn._mm256_add_pd.htmlfn._mm256_add_ps.htmlfn._mm256_adds_epi16.htmlfn._mm256_adds_epi8.htmlfn._mm256_adds_epu16.htmlfn._mm256_adds_epu8.htmlfn._mm256_addsub_pd.htmlfn._mm256_addsub_ps.htmlfn._mm256_alignr_epi8.htmlfn._mm256_and_pd.htmlfn._mm256_and_ps.htmlfn._mm256_and_si256.htmlfn._mm256_andnot_pd.htmlfn._mm256_andnot_ps.htmlfn._mm256_andnot_si256.htmlfn._mm256_avg_epu16.htmlfn._mm256_avg_epu8.htmlfn._mm256_blend_epi16.htmlfn._mm256_blend_epi32.htmlfn._mm256_blend_pd.htmlfn._mm256_blend_ps.htmlfn._mm256_blendv_epi8.htmlfn._mm256_blendv_pd.htmlfn._mm256_blendv_ps.htmlfn._mm256_broadcast_pd.htmlfn._mm256_broadcast_ps.htmlfn._mm256_broadcast_sd.htmlfn._mm256_broadcast_ss.htmlfn._mm256_broadcastb_epi8.htmlfn._mm256_broadcastd_epi32.htmlfn._mm256_broadcastq_epi64.htmlfn._mm256_broadcastsd_pd.htmlfn._mm256_broadcastsi128_si256.htmlfn._mm256_broadcastss_ps.htmlfn._mm256_broadcastw_epi16.htmlfn._mm256_bslli_epi128.htmlfn._mm256_bsrli_epi128.htmlfn._mm256_castpd128_pd256.htmlfn._mm256_castpd256_pd128.htmlfn._mm256_castpd_ps.htmlfn._mm256_castpd_si256.htmlfn._mm256_castps128_ps256.htmlfn._mm256_castps256_ps128.htmlfn._mm256_castps_pd.htmlfn._mm256_castps_si256.htmlfn._mm256_castsi128_si256.htmlfn._mm256_castsi256_pd.htmlfn._mm256_castsi256_ps.htmlfn._mm256_castsi256_si128.htmlfn._mm256_ceil_pd.htmlfn._mm256_ceil_ps.htmlfn._mm256_cmp_pd.htmlfn._mm256_cmp_ps.htmlfn._mm256_cmpeq_epi16.htmlfn._mm256_cmpeq_epi32.htmlfn._mm256_cmpeq_epi64.htmlfn._mm256_cmpeq_epi8.htmlfn._mm256_cmpgt_epi16.htmlfn._mm256_cmpgt_epi32.htmlfn._mm256_cmpgt_epi64.htmlfn._mm256_cmpgt_epi8.htmlfn._mm256_cvtepi16_epi32.htmlfn._mm256_cvtepi16_epi64.htmlfn._mm256_cvtepi32_epi64.htmlfn._mm256_cvtepi32_pd.htmlfn._mm256_cvtepi32_ps.htmlfn._mm256_cvtepi8_epi16.htmlfn._mm256_cvtepi8_epi32.htmlfn._mm256_cvtepi8_epi64.htmlfn._mm256_cvtepu16_epi32.htmlfn._mm256_cvtepu16_epi64.htmlfn._mm256_cvtepu32_epi64.htmlfn._mm256_cvtepu8_epi16.htmlfn._mm256_cvtepu8_epi32.htmlfn._mm256_cvtepu8_epi64.htmlfn._mm256_cvtpd_epi32.htmlfn._mm256_cvtpd_ps.htmlfn._mm256_cvtph_ps.htmlfn._mm256_cvtps_epi32.htmlfn._mm256_cvtps_pd.htmlfn._mm256_cvtps_ph.htmlfn._mm256_cvtsd_f64.htmlfn._mm256_cvtsi256_si32.htmlfn._mm256_cvtss_f32.htmlfn._mm256_cvttpd_epi32.htmlfn._mm256_cvttps_epi32.htmlfn._mm256_div_pd.htmlfn._mm256_div_ps.htmlfn._mm256_dp_ps.htmlfn._mm256_extract_epi16.htmlfn._mm256_extract_epi32.htmlfn._mm256_extract_epi8.htmlfn._mm256_extractf128_pd.htmlfn._mm256_extractf128_ps.htmlfn._mm256_extractf128_si256.htmlfn._mm256_extracti128_si256.htmlfn._mm256_floor_pd.htmlfn._mm256_floor_ps.htmlfn._mm256_fmadd_pd.htmlfn._mm256_fmadd_ps.htmlfn._mm256_fmaddsub_pd.htmlfn._mm256_fmaddsub_ps.htmlfn._mm256_fmsub_pd.htmlfn._mm256_fmsub_ps.htmlfn._mm256_fmsubadd_pd.htmlfn._mm256_fmsubadd_ps.htmlfn._mm256_fnmadd_pd.htmlfn._mm256_fnmadd_ps.htmlfn._mm256_fnmsub_pd.htmlfn._mm256_fnmsub_ps.htmlfn._mm256_hadd_epi16.htmlfn._mm256_hadd_epi32.htmlfn._mm256_hadd_pd.htmlfn._mm256_hadd_ps.htmlfn._mm256_hadds_epi16.htmlfn._mm256_hsub_epi16.htmlfn._mm256_hsub_epi32.htmlfn._mm256_hsub_pd.htmlfn._mm256_hsub_ps.htmlfn._mm256_hsubs_epi16.htmlfn._mm256_i32gather_epi32.htmlfn._mm256_i32gather_epi64.htmlfn._mm256_i32gather_pd.htmlfn._mm256_i32gather_ps.htmlfn._mm256_i64gather_epi32.htmlfn._mm256_i64gather_epi64.htmlfn._mm256_i64gather_pd.htmlfn._mm256_i64gather_ps.htmlfn._mm256_insert_epi16.htmlfn._mm256_insert_epi32.htmlfn._mm256_insert_epi8.htmlfn._mm256_insertf128_pd.htmlfn._mm256_insertf128_ps.htmlfn._mm256_insertf128_si256.htmlfn._mm256_inserti128_si256.htmlfn._mm256_lddqu_si256.htmlfn._mm256_load_pd.htmlfn._mm256_load_ps.htmlfn._mm256_load_si256.htmlfn._mm256_loadu2_m128.htmlfn._mm256_loadu2_m128d.htmlfn._mm256_loadu2_m128i.htmlfn._mm256_loadu_pd.htmlfn._mm256_loadu_ps.htmlfn._mm256_loadu_si256.htmlfn._mm256_madd52hi_epu64.htmlfn._mm256_madd52lo_epu64.htmlfn._mm256_madd_epi16.htmlfn._mm256_maddubs_epi16.htmlfn._mm256_mask_i32gather_epi32.htmlfn._mm256_mask_i32gather_epi64.htmlfn._mm256_mask_i32gather_pd.htmlfn._mm256_mask_i32gather_ps.htmlfn._mm256_mask_i64gather_epi32.htmlfn._mm256_mask_i64gather_epi64.htmlfn._mm256_mask_i64gather_pd.htmlfn._mm256_mask_i64gather_ps.htmlfn._mm256_maskload_epi32.htmlfn._mm256_maskload_epi64.htmlfn._mm256_maskload_pd.htmlfn._mm256_maskload_ps.htmlfn._mm256_maskstore_epi32.htmlfn._mm256_maskstore_epi64.htmlfn._mm256_maskstore_pd.htmlfn._mm256_maskstore_ps.htmlfn._mm256_max_epi16.htmlfn._mm256_max_epi32.htmlfn._mm256_max_epi8.htmlfn._mm256_max_epu16.htmlfn._mm256_max_epu32.htmlfn._mm256_max_epu8.htmlfn._mm256_max_pd.htmlfn._mm256_max_ps.htmlfn._mm256_min_epi16.htmlfn._mm256_min_epi32.htmlfn._mm256_min_epi8.htmlfn._mm256_min_epu16.htmlfn._mm256_min_epu32.htmlfn._mm256_min_epu8.htmlfn._mm256_min_pd.htmlfn._mm256_min_ps.htmlfn._mm256_movedup_pd.htmlfn._mm256_movehdup_ps.htmlfn._mm256_moveldup_ps.htmlfn._mm256_movemask_epi8.htmlfn._mm256_movemask_pd.htmlfn._mm256_movemask_ps.htmlfn._mm256_mpsadbw_epu8.htmlfn._mm256_mul_epi32.htmlfn._mm256_mul_epu32.htmlfn._mm256_mul_pd.htmlfn._mm256_mul_ps.htmlfn._mm256_mulhi_epi16.htmlfn._mm256_mulhi_epu16.htmlfn._mm256_mulhrs_epi16.htmlfn._mm256_mullo_epi16.htmlfn._mm256_mullo_epi32.htmlfn._mm256_or_pd.htmlfn._mm256_or_ps.htmlfn._mm256_or_si256.htmlfn._mm256_packs_epi16.htmlfn._mm256_packs_epi32.htmlfn._mm256_packus_epi16.htmlfn._mm256_packus_epi32.htmlfn._mm256_permute2f128_pd.htmlfn._mm256_permute2f128_ps.htmlfn._mm256_permute2f128_si256.htmlfn._mm256_permute2x128_si256.htmlfn._mm256_permute4x64_epi64.htmlfn._mm256_permute4x64_pd.htmlfn._mm256_permute_pd.htmlfn._mm256_permute_ps.htmlfn._mm256_permutevar8x32_epi32.htmlfn._mm256_permutevar8x32_ps.htmlfn._mm256_permutevar_pd.htmlfn._mm256_permutevar_ps.htmlfn._mm256_rcp_ps.htmlfn._mm256_round_pd.htmlfn._mm256_round_ps.htmlfn._mm256_rsqrt_ps.htmlfn._mm256_sad_epu8.htmlfn._mm256_set1_epi16.htmlfn._mm256_set1_epi32.htmlfn._mm256_set1_epi64x.htmlfn._mm256_set1_epi8.htmlfn._mm256_set1_pd.htmlfn._mm256_set1_ps.htmlfn._mm256_set_epi16.htmlfn._mm256_set_epi32.htmlfn._mm256_set_epi64x.htmlfn._mm256_set_epi8.htmlfn._mm256_set_m128.htmlfn._mm256_set_m128d.htmlfn._mm256_set_m128i.htmlfn._mm256_set_pd.htmlfn._mm256_set_ps.htmlfn._mm256_setr_epi16.htmlfn._mm256_setr_epi32.htmlfn._mm256_setr_epi64x.htmlfn._mm256_setr_epi8.htmlfn._mm256_setr_m128.htmlfn._mm256_setr_m128d.htmlfn._mm256_setr_m128i.htmlfn._mm256_setr_pd.htmlfn._mm256_setr_ps.htmlfn._mm256_setzero_pd.htmlfn._mm256_setzero_ps.htmlfn._mm256_setzero_si256.htmlfn._mm256_shuffle_epi32.htmlfn._mm256_shuffle_epi8.htmlfn._mm256_shuffle_pd.htmlfn._mm256_shuffle_ps.htmlfn._mm256_shufflehi_epi16.htmlfn._mm256_shufflelo_epi16.htmlfn._mm256_sign_epi16.htmlfn._mm256_sign_epi32.htmlfn._mm256_sign_epi8.htmlfn._mm256_sll_epi16.htmlfn._mm256_sll_epi32.htmlfn._mm256_sll_epi64.htmlfn._mm256_slli_epi16.htmlfn._mm256_slli_epi32.htmlfn._mm256_slli_epi64.htmlfn._mm256_slli_si256.htmlfn._mm256_sllv_epi32.htmlfn._mm256_sllv_epi64.htmlfn._mm256_sqrt_pd.htmlfn._mm256_sqrt_ps.htmlfn._mm256_sra_epi16.htmlfn._mm256_sra_epi32.htmlfn._mm256_srai_epi16.htmlfn._mm256_srai_epi32.htmlfn._mm256_srav_epi32.htmlfn._mm256_srl_epi16.htmlfn._mm256_srl_epi32.htmlfn._mm256_srl_epi64.htmlfn._mm256_srli_epi16.htmlfn._mm256_srli_epi32.htmlfn._mm256_srli_epi64.htmlfn._mm256_srli_si256.htmlfn._mm256_srlv_epi32.htmlfn._mm256_srlv_epi64.htmlfn._mm256_store_pd.htmlfn._mm256_store_ps.htmlfn._mm256_store_si256.htmlfn._mm256_storeu2_m128.htmlfn._mm256_storeu2_m128d.htmlfn._mm256_storeu2_m128i.htmlfn._mm256_storeu_pd.htmlfn._mm256_storeu_ps.htmlfn._mm256_storeu_si256.htmlfn._mm256_stream_pd.htmlfn._mm256_stream_ps.htmlfn._mm256_stream_si256.htmlfn._mm256_sub_epi16.htmlfn._mm256_sub_epi32.htmlfn._mm256_sub_epi64.htmlfn._mm256_sub_epi8.htmlfn._mm256_sub_pd.htmlfn._mm256_sub_ps.htmlfn._mm256_subs_epi16.htmlfn._mm256_subs_epi8.htmlfn._mm256_subs_epu16.htmlfn._mm256_subs_epu8.htmlfn._mm256_testc_pd.htmlfn._mm256_testc_ps.htmlfn._mm256_testc_si256.htmlfn._mm256_testnzc_pd.htmlfn._mm256_testnzc_ps.htmlfn._mm256_testnzc_si256.htmlfn._mm256_testz_pd.htmlfn._mm256_testz_ps.htmlfn._mm256_testz_si256.htmlfn._mm256_undefined_pd.htmlfn._mm256_undefined_ps.htmlfn._mm256_undefined_si256.htmlfn._mm256_unpackhi_epi16.htmlfn._mm256_unpackhi_epi32.htmlfn._mm256_unpackhi_epi64.htmlfn._mm256_unpackhi_epi8.htmlfn._mm256_unpackhi_pd.htmlfn._mm256_unpackhi_ps.htmlfn._mm256_unpacklo_epi16.htmlfn._mm256_unpacklo_epi32.htmlfn._mm256_unpacklo_epi64.htmlfn._mm256_unpacklo_epi8.htmlfn._mm256_unpacklo_pd.htmlfn._mm256_unpacklo_ps.htmlfn._mm256_xor_pd.htmlfn._mm256_xor_ps.htmlfn._mm256_xor_si256.htmlfn._mm256_zeroall.htmlfn._mm256_zeroupper.htmlfn._mm256_zextpd128_pd256.htmlfn._mm256_zextps128_ps256.htmlfn._mm256_zextsi128_si256.htmlfn._mm512_abs_epi32.htmlfn._mm512_madd52hi_epu64.htmlfn._mm512_madd52lo_epu64.htmlfn._mm512_mask_abs_epi32.htmlfn._mm512_maskz_abs_epi32.htmlfn._mm512_set1_epi64.htmlfn._mm512_setr_epi32.htmlfn._mm512_setzero_si512.htmlfn._mm_abs_epi16.htmlfn._mm_abs_epi32.htmlfn._mm_abs_epi8.htmlfn._mm_abs_pi16.htmlfn._mm_abs_pi32.htmlfn._mm_abs_pi8.htmlfn._mm_add_epi16.htmlfn._mm_add_epi32.htmlfn._mm_add_epi64.htmlfn._mm_add_epi8.htmlfn._mm_add_pd.htmlfn._mm_add_pi16.htmlfn._mm_add_pi32.htmlfn._mm_add_pi8.htmlfn._mm_add_ps.htmlfn._mm_add_sd.htmlfn._mm_add_si64.htmlfn._mm_add_ss.htmlfn._mm_adds_epi16.htmlfn._mm_adds_epi8.htmlfn._mm_adds_epu16.htmlfn._mm_adds_epu8.htmlfn._mm_adds_pi16.htmlfn._mm_adds_pi8.htmlfn._mm_adds_pu16.htmlfn._mm_adds_pu8.htmlfn._mm_addsub_pd.htmlfn._mm_addsub_ps.htmlfn._mm_aesdec_si128.htmlfn._mm_aesdeclast_si128.htmlfn._mm_aesenc_si128.htmlfn._mm_aesenclast_si128.htmlfn._mm_aesimc_si128.htmlfn._mm_aeskeygenassist_si128.htmlfn._mm_alignr_epi8.htmlfn._mm_alignr_pi8.htmlfn._mm_and_pd.htmlfn._mm_and_ps.htmlfn._mm_and_si128.htmlfn._mm_andnot_pd.htmlfn._mm_andnot_ps.htmlfn._mm_andnot_si128.htmlfn._mm_avg_epu16.htmlfn._mm_avg_epu8.htmlfn._mm_avg_pu16.htmlfn._mm_avg_pu8.htmlfn._mm_blend_epi16.htmlfn._mm_blend_epi32.htmlfn._mm_blend_pd.htmlfn._mm_blend_ps.htmlfn._mm_blendv_epi8.htmlfn._mm_blendv_pd.htmlfn._mm_blendv_ps.htmlfn._mm_broadcast_ss.htmlfn._mm_broadcastb_epi8.htmlfn._mm_broadcastd_epi32.htmlfn._mm_broadcastq_epi64.htmlfn._mm_broadcastsd_pd.htmlfn._mm_broadcastss_ps.htmlfn._mm_broadcastw_epi16.htmlfn._mm_bslli_si128.htmlfn._mm_bsrli_si128.htmlfn._mm_castpd_ps.htmlfn._mm_castpd_si128.htmlfn._mm_castps_pd.htmlfn._mm_castps_si128.htmlfn._mm_castsi128_pd.htmlfn._mm_castsi128_ps.htmlfn._mm_ceil_pd.htmlfn._mm_ceil_ps.htmlfn._mm_ceil_sd.htmlfn._mm_ceil_ss.htmlfn._mm_clflush.htmlfn._mm_clmulepi64_si128.htmlfn._mm_cmp_pd.htmlfn._mm_cmp_ps.htmlfn._mm_cmp_sd.htmlfn._mm_cmp_ss.htmlfn._mm_cmpeq_epi16.htmlfn._mm_cmpeq_epi32.htmlfn._mm_cmpeq_epi64.htmlfn._mm_cmpeq_epi8.htmlfn._mm_cmpeq_pd.htmlfn._mm_cmpeq_ps.htmlfn._mm_cmpeq_sd.htmlfn._mm_cmpeq_ss.htmlfn._mm_cmpestra.htmlfn._mm_cmpestrc.htmlfn._mm_cmpestri.htmlfn._mm_cmpestrm.htmlfn._mm_cmpestro.htmlfn._mm_cmpestrs.htmlfn._mm_cmpestrz.htmlfn._mm_cmpge_pd.htmlfn._mm_cmpge_ps.htmlfn._mm_cmpge_sd.htmlfn._mm_cmpge_ss.htmlfn._mm_cmpgt_epi16.htmlfn._mm_cmpgt_epi32.htmlfn._mm_cmpgt_epi64.htmlfn._mm_cmpgt_epi8.htmlfn._mm_cmpgt_pd.htmlfn._mm_cmpgt_pi16.htmlfn._mm_cmpgt_pi32.htmlfn._mm_cmpgt_pi8.htmlfn._mm_cmpgt_ps.htmlfn._mm_cmpgt_sd.htmlfn._mm_cmpgt_ss.htmlfn._mm_cmpistra.htmlfn._mm_cmpistrc.htmlfn._mm_cmpistri.htmlfn._mm_cmpistrm.htmlfn._mm_cmpistro.htmlfn._mm_cmpistrs.htmlfn._mm_cmpistrz.htmlfn._mm_cmple_pd.htmlfn._mm_cmple_ps.htmlfn._mm_cmple_sd.htmlfn._mm_cmple_ss.htmlfn._mm_cmplt_epi16.htmlfn._mm_cmplt_epi32.htmlfn._mm_cmplt_epi8.htmlfn._mm_cmplt_pd.htmlfn._mm_cmplt_ps.htmlfn._mm_cmplt_sd.htmlfn._mm_cmplt_ss.htmlfn._mm_cmpneq_pd.htmlfn._mm_cmpneq_ps.htmlfn._mm_cmpneq_sd.htmlfn._mm_cmpneq_ss.htmlfn._mm_cmpnge_pd.htmlfn._mm_cmpnge_ps.htmlfn._mm_cmpnge_sd.htmlfn._mm_cmpnge_ss.htmlfn._mm_cmpngt_pd.htmlfn._mm_cmpngt_ps.htmlfn._mm_cmpngt_sd.htmlfn._mm_cmpngt_ss.htmlfn._mm_cmpnle_pd.htmlfn._mm_cmpnle_ps.htmlfn._mm_cmpnle_sd.htmlfn._mm_cmpnle_ss.htmlfn._mm_cmpnlt_pd.htmlfn._mm_cmpnlt_ps.htmlfn._mm_cmpnlt_sd.htmlfn._mm_cmpnlt_ss.htmlfn._mm_cmpord_pd.htmlfn._mm_cmpord_ps.htmlfn._mm_cmpord_sd.htmlfn._mm_cmpord_ss.htmlfn._mm_cmpunord_pd.htmlfn._mm_cmpunord_ps.htmlfn._mm_cmpunord_sd.htmlfn._mm_cmpunord_ss.htmlfn._mm_comieq_sd.htmlfn._mm_comieq_ss.htmlfn._mm_comige_sd.htmlfn._mm_comige_ss.htmlfn._mm_comigt_sd.htmlfn._mm_comigt_ss.htmlfn._mm_comile_sd.htmlfn._mm_comile_ss.htmlfn._mm_comilt_sd.htmlfn._mm_comilt_ss.htmlfn._mm_comineq_sd.htmlfn._mm_comineq_ss.htmlfn._mm_crc32_u16.htmlfn._mm_crc32_u32.htmlfn._mm_crc32_u8.htmlfn._mm_cvt_pi2ps.htmlfn._mm_cvt_ps2pi.htmlfn._mm_cvt_si2ss.htmlfn._mm_cvt_ss2si.htmlfn._mm_cvtepi16_epi32.htmlfn._mm_cvtepi16_epi64.htmlfn._mm_cvtepi32_epi64.htmlfn._mm_cvtepi32_pd.htmlfn._mm_cvtepi32_ps.htmlfn._mm_cvtepi8_epi16.htmlfn._mm_cvtepi8_epi32.htmlfn._mm_cvtepi8_epi64.htmlfn._mm_cvtepu16_epi32.htmlfn._mm_cvtepu16_epi64.htmlfn._mm_cvtepu32_epi64.htmlfn._mm_cvtepu8_epi16.htmlfn._mm_cvtepu8_epi32.htmlfn._mm_cvtepu8_epi64.htmlfn._mm_cvtpd_epi32.htmlfn._mm_cvtpd_pi32.htmlfn._mm_cvtpd_ps.htmlfn._mm_cvtph_ps.htmlfn._mm_cvtpi16_ps.htmlfn._mm_cvtpi32_pd.htmlfn._mm_cvtpi32_ps.htmlfn._mm_cvtpi32x2_ps.htmlfn._mm_cvtpi8_ps.htmlfn._mm_cvtps_epi32.htmlfn._mm_cvtps_pd.htmlfn._mm_cvtps_ph.htmlfn._mm_cvtps_pi16.htmlfn._mm_cvtps_pi32.htmlfn._mm_cvtps_pi8.htmlfn._mm_cvtpu16_ps.htmlfn._mm_cvtpu8_ps.htmlfn._mm_cvtsd_f64.htmlfn._mm_cvtsd_si32.htmlfn._mm_cvtsd_ss.htmlfn._mm_cvtsi128_si32.htmlfn._mm_cvtsi32_sd.htmlfn._mm_cvtsi32_si128.htmlfn._mm_cvtsi32_si64.htmlfn._mm_cvtsi32_ss.htmlfn._mm_cvtsi64_si32.htmlfn._mm_cvtss_f32.htmlfn._mm_cvtss_sd.htmlfn._mm_cvtss_si32.htmlfn._mm_cvtt_ps2pi.htmlfn._mm_cvtt_ss2si.htmlfn._mm_cvttpd_epi32.htmlfn._mm_cvttpd_pi32.htmlfn._mm_cvttps_epi32.htmlfn._mm_cvttps_pi32.htmlfn._mm_cvttsd_si32.htmlfn._mm_cvttss_si32.htmlfn._mm_div_pd.htmlfn._mm_div_ps.htmlfn._mm_div_sd.htmlfn._mm_div_ss.htmlfn._mm_dp_pd.htmlfn._mm_dp_ps.htmlfn._mm_empty.htmlfn._mm_extract_epi16.htmlfn._mm_extract_epi32.htmlfn._mm_extract_epi8.htmlfn._mm_extract_pi16.htmlfn._mm_extract_ps.htmlfn._mm_extract_si64.htmlfn._mm_floor_pd.htmlfn._mm_floor_ps.htmlfn._mm_floor_sd.htmlfn._mm_floor_ss.htmlfn._mm_fmadd_pd.htmlfn._mm_fmadd_ps.htmlfn._mm_fmadd_sd.htmlfn._mm_fmadd_ss.htmlfn._mm_fmaddsub_pd.htmlfn._mm_fmaddsub_ps.htmlfn._mm_fmsub_pd.htmlfn._mm_fmsub_ps.htmlfn._mm_fmsub_sd.htmlfn._mm_fmsub_ss.htmlfn._mm_fmsubadd_pd.htmlfn._mm_fmsubadd_ps.htmlfn._mm_fnmadd_pd.htmlfn._mm_fnmadd_ps.htmlfn._mm_fnmadd_sd.htmlfn._mm_fnmadd_ss.htmlfn._mm_fnmsub_pd.htmlfn._mm_fnmsub_ps.htmlfn._mm_fnmsub_sd.htmlfn._mm_fnmsub_ss.htmlfn._mm_getcsr.htmlfn._mm_hadd_epi16.htmlfn._mm_hadd_epi32.htmlfn._mm_hadd_pd.htmlfn._mm_hadd_pi16.htmlfn._mm_hadd_pi32.htmlfn._mm_hadd_ps.htmlfn._mm_hadds_epi16.htmlfn._mm_hadds_pi16.htmlfn._mm_hsub_epi16.htmlfn._mm_hsub_epi32.htmlfn._mm_hsub_pd.htmlfn._mm_hsub_pi16.htmlfn._mm_hsub_pi32.htmlfn._mm_hsub_ps.htmlfn._mm_hsubs_epi16.htmlfn._mm_hsubs_pi16.htmlfn._mm_i32gather_epi32.htmlfn._mm_i32gather_epi64.htmlfn._mm_i32gather_pd.htmlfn._mm_i32gather_ps.htmlfn._mm_i64gather_epi32.htmlfn._mm_i64gather_epi64.htmlfn._mm_i64gather_pd.htmlfn._mm_i64gather_ps.htmlfn._mm_insert_epi16.htmlfn._mm_insert_epi32.htmlfn._mm_insert_epi8.htmlfn._mm_insert_pi16.htmlfn._mm_insert_ps.htmlfn._mm_insert_si64.htmlfn._mm_lddqu_si128.htmlfn._mm_lfence.htmlfn._mm_load1_pd.htmlfn._mm_load1_ps.htmlfn._mm_load_pd.htmlfn._mm_load_pd1.htmlfn._mm_load_ps.htmlfn._mm_load_ps1.htmlfn._mm_load_sd.htmlfn._mm_load_si128.htmlfn._mm_load_ss.htmlfn._mm_loaddup_pd.htmlfn._mm_loadh_pd.htmlfn._mm_loadh_pi.htmlfn._mm_loadl_epi64.htmlfn._mm_loadl_pd.htmlfn._mm_loadl_pi.htmlfn._mm_loadr_pd.htmlfn._mm_loadr_ps.htmlfn._mm_loadu_pd.htmlfn._mm_loadu_ps.htmlfn._mm_loadu_si128.htmlfn._mm_madd52hi_epu64.htmlfn._mm_madd52lo_epu64.htmlfn._mm_madd_epi16.htmlfn._mm_maddubs_epi16.htmlfn._mm_maddubs_pi16.htmlfn._mm_mask_i32gather_epi32.htmlfn._mm_mask_i32gather_epi64.htmlfn._mm_mask_i32gather_pd.htmlfn._mm_mask_i32gather_ps.htmlfn._mm_mask_i64gather_epi32.htmlfn._mm_mask_i64gather_epi64.htmlfn._mm_mask_i64gather_pd.htmlfn._mm_mask_i64gather_ps.htmlfn._mm_maskload_epi32.htmlfn._mm_maskload_epi64.htmlfn._mm_maskload_pd.htmlfn._mm_maskload_ps.htmlfn._mm_maskmove_si64.htmlfn._mm_maskmoveu_si128.htmlfn._mm_maskstore_epi32.htmlfn._mm_maskstore_epi64.htmlfn._mm_maskstore_pd.htmlfn._mm_maskstore_ps.htmlfn._mm_max_epi16.htmlfn._mm_max_epi32.htmlfn._mm_max_epi8.htmlfn._mm_max_epu16.htmlfn._mm_max_epu32.htmlfn._mm_max_epu8.htmlfn._mm_max_pd.htmlfn._mm_max_pi16.htmlfn._mm_max_ps.htmlfn._mm_max_pu8.htmlfn._mm_max_sd.htmlfn._mm_max_ss.htmlfn._mm_mfence.htmlfn._mm_min_epi16.htmlfn._mm_min_epi32.htmlfn._mm_min_epi8.htmlfn._mm_min_epu16.htmlfn._mm_min_epu32.htmlfn._mm_min_epu8.htmlfn._mm_min_pd.htmlfn._mm_min_pi16.htmlfn._mm_min_ps.htmlfn._mm_min_pu8.htmlfn._mm_min_sd.htmlfn._mm_min_ss.htmlfn._mm_minpos_epu16.htmlfn._mm_move_epi64.htmlfn._mm_move_sd.htmlfn._mm_move_ss.htmlfn._mm_movedup_pd.htmlfn._mm_movehdup_ps.htmlfn._mm_movehl_ps.htmlfn._mm_moveldup_ps.htmlfn._mm_movelh_ps.htmlfn._mm_movemask_epi8.htmlfn._mm_movemask_pd.htmlfn._mm_movemask_pi8.htmlfn._mm_movemask_ps.htmlfn._mm_movepi64_pi64.htmlfn._mm_movpi64_epi64.htmlfn._mm_mpsadbw_epu8.htmlfn._mm_mul_epi32.htmlfn._mm_mul_epu32.htmlfn._mm_mul_pd.htmlfn._mm_mul_ps.htmlfn._mm_mul_sd.htmlfn._mm_mul_ss.htmlfn._mm_mul_su32.htmlfn._mm_mulhi_epi16.htmlfn._mm_mulhi_epu16.htmlfn._mm_mulhi_pu16.htmlfn._mm_mulhrs_epi16.htmlfn._mm_mulhrs_pi16.htmlfn._mm_mullo_epi16.htmlfn._mm_mullo_epi32.htmlfn._mm_mullo_pi16.htmlfn._mm_or_pd.htmlfn._mm_or_ps.htmlfn._mm_or_si128.htmlfn._mm_packs_epi16.htmlfn._mm_packs_epi32.htmlfn._mm_packs_pi16.htmlfn._mm_packs_pi32.htmlfn._mm_packus_epi16.htmlfn._mm_packus_epi32.htmlfn._mm_pause.htmlfn._mm_permute_pd.htmlfn._mm_permute_ps.htmlfn._mm_permutevar_pd.htmlfn._mm_permutevar_ps.htmlfn._mm_prefetch.htmlfn._mm_rcp_ps.htmlfn._mm_rcp_ss.htmlfn._mm_round_pd.htmlfn._mm_round_ps.htmlfn._mm_round_sd.htmlfn._mm_round_ss.htmlfn._mm_rsqrt_ps.htmlfn._mm_rsqrt_ss.htmlfn._mm_sad_epu8.htmlfn._mm_sad_pu8.htmlfn._mm_set1_epi16.htmlfn._mm_set1_epi32.htmlfn._mm_set1_epi64.htmlfn._mm_set1_epi64x.htmlfn._mm_set1_epi8.htmlfn._mm_set1_pd.htmlfn._mm_set1_pi16.htmlfn._mm_set1_pi32.htmlfn._mm_set1_pi8.htmlfn._mm_set1_ps.htmlfn._mm_set_epi16.htmlfn._mm_set_epi32.htmlfn._mm_set_epi64.htmlfn._mm_set_epi64x.htmlfn._mm_set_epi8.htmlfn._mm_set_pd.htmlfn._mm_set_pd1.htmlfn._mm_set_pi16.htmlfn._mm_set_pi32.htmlfn._mm_set_pi8.htmlfn._mm_set_ps.htmlfn._mm_set_ps1.htmlfn._mm_set_sd.htmlfn._mm_set_ss.htmlfn._mm_setcsr.htmlfn._mm_setr_epi16.htmlfn._mm_setr_epi32.htmlfn._mm_setr_epi64.htmlfn._mm_setr_epi8.htmlfn._mm_setr_pd.htmlfn._mm_setr_pi16.htmlfn._mm_setr_pi32.htmlfn._mm_setr_pi8.htmlfn._mm_setr_ps.htmlfn._mm_setzero_pd.htmlfn._mm_setzero_ps.htmlfn._mm_setzero_si128.htmlfn._mm_setzero_si64.htmlfn._mm_sfence.htmlfn._mm_sha1msg1_epu32.htmlfn._mm_sha1msg2_epu32.htmlfn._mm_sha1nexte_epu32.htmlfn._mm_sha1rnds4_epu32.htmlfn._mm_sha256msg1_epu32.htmlfn._mm_sha256msg2_epu32.htmlfn._mm_sha256rnds2_epu32.htmlfn._mm_shuffle_epi32.htmlfn._mm_shuffle_epi8.htmlfn._mm_shuffle_pd.htmlfn._mm_shuffle_pi16.htmlfn._mm_shuffle_pi8.htmlfn._mm_shuffle_ps.htmlfn._mm_shufflehi_epi16.htmlfn._mm_shufflelo_epi16.htmlfn._mm_sign_epi16.htmlfn._mm_sign_epi32.htmlfn._mm_sign_epi8.htmlfn._mm_sign_pi16.htmlfn._mm_sign_pi32.htmlfn._mm_sign_pi8.htmlfn._mm_sll_epi16.htmlfn._mm_sll_epi32.htmlfn._mm_sll_epi64.htmlfn._mm_slli_epi16.htmlfn._mm_slli_epi32.htmlfn._mm_slli_epi64.htmlfn._mm_slli_si128.htmlfn._mm_sllv_epi32.htmlfn._mm_sllv_epi64.htmlfn._mm_sqrt_pd.htmlfn._mm_sqrt_ps.htmlfn._mm_sqrt_sd.htmlfn._mm_sqrt_ss.htmlfn._mm_sra_epi16.htmlfn._mm_sra_epi32.htmlfn._mm_srai_epi16.htmlfn._mm_srai_epi32.htmlfn._mm_srav_epi32.htmlfn._mm_srl_epi16.htmlfn._mm_srl_epi32.htmlfn._mm_srl_epi64.htmlfn._mm_srli_epi16.htmlfn._mm_srli_epi32.htmlfn._mm_srli_epi64.htmlfn._mm_srli_si128.htmlfn._mm_srlv_epi32.htmlfn._mm_srlv_epi64.htmlfn._mm_store1_pd.htmlfn._mm_store1_ps.htmlfn._mm_store_pd.htmlfn._mm_store_pd1.htmlfn._mm_store_ps.htmlfn._mm_store_ps1.htmlfn._mm_store_sd.htmlfn._mm_store_si128.htmlfn._mm_store_ss.htmlfn._mm_storeh_pd.htmlfn._mm_storeh_pi.htmlfn._mm_storel_epi64.htmlfn._mm_storel_pd.htmlfn._mm_storel_pi.htmlfn._mm_storer_pd.htmlfn._mm_storer_ps.htmlfn._mm_storeu_pd.htmlfn._mm_storeu_ps.htmlfn._mm_storeu_si128.htmlfn._mm_stream_pd.htmlfn._mm_stream_pi.htmlfn._mm_stream_ps.htmlfn._mm_stream_sd.htmlfn._mm_stream_si128.htmlfn._mm_stream_si32.htmlfn._mm_stream_ss.htmlfn._mm_sub_epi16.htmlfn._mm_sub_epi32.htmlfn._mm_sub_epi64.htmlfn._mm_sub_epi8.htmlfn._mm_sub_pd.htmlfn._mm_sub_pi16.htmlfn._mm_sub_pi32.htmlfn._mm_sub_pi8.htmlfn._mm_sub_ps.htmlfn._mm_sub_sd.htmlfn._mm_sub_si64.htmlfn._mm_sub_ss.htmlfn._mm_subs_epi16.htmlfn._mm_subs_epi8.htmlfn._mm_subs_epu16.htmlfn._mm_subs_epu8.htmlfn._mm_subs_pi16.htmlfn._mm_subs_pi8.htmlfn._mm_subs_pu16.htmlfn._mm_subs_pu8.htmlfn._mm_test_all_ones.htmlfn._mm_test_all_zeros.htmlfn._mm_test_mix_ones_zeros.htmlfn._mm_testc_pd.htmlfn._mm_testc_ps.htmlfn._mm_testc_si128.htmlfn._mm_testnzc_pd.htmlfn._mm_testnzc_ps.htmlfn._mm_testnzc_si128.htmlfn._mm_testz_pd.htmlfn._mm_testz_ps.htmlfn._mm_testz_si128.htmlfn._mm_tzcnt_32.htmlfn._mm_ucomieq_sd.htmlfn._mm_ucomieq_ss.htmlfn._mm_ucomige_sd.htmlfn._mm_ucomige_ss.htmlfn._mm_ucomigt_sd.htmlfn._mm_ucomigt_ss.htmlfn._mm_ucomile_sd.htmlfn._mm_ucomile_ss.htmlfn._mm_ucomilt_sd.htmlfn._mm_ucomilt_ss.htmlfn._mm_ucomineq_sd.htmlfn._mm_ucomineq_ss.htmlfn._mm_undefined_pd.htmlfn._mm_undefined_ps.htmlfn._mm_undefined_si128.htmlfn._mm_unpackhi_epi16.htmlfn._mm_unpackhi_epi32.htmlfn._mm_unpackhi_epi64.htmlfn._mm_unpackhi_epi8.htmlfn._mm_unpackhi_pd.htmlfn._mm_unpackhi_pi16.htmlfn._mm_unpackhi_pi32.htmlfn._mm_unpackhi_pi8.htmlfn._mm_unpackhi_ps.htmlfn._mm_unpacklo_epi16.htmlfn._mm_unpacklo_epi32.htmlfn._mm_unpacklo_epi64.htmlfn._mm_unpacklo_epi8.htmlfn._mm_unpacklo_pd.htmlfn._mm_unpacklo_pi16.htmlfn._mm_unpacklo_pi32.htmlfn._mm_unpacklo_pi8.htmlfn._mm_unpacklo_ps.htmlfn._mm_xor_pd.htmlfn._mm_xor_ps.htmlfn._mm_xor_si128.htmlfn._mulx_u32.htmlfn._pdep_u32.htmlfn._pext_u32.htmlfn._popcnt32.htmlfn._rdrand16_step.htmlfn._rdrand32_step.htmlfn._rdseed16_step.htmlfn._rdseed32_step.htmlfn._rdtsc.htmlfn._subborrow_u32.htmlfn._t1mskc_u32.htmlfn._t1mskc_u64.htmlfn._tzcnt_u32.htmlfn._tzmsk_u32.htmlfn._tzmsk_u64.htmlfn._xabort.htmlfn._xabort_code.htmlfn._xbegin.htmlfn._xend.htmlfn._xgetbv.htmlfn._xrstor.htmlfn._xrstors.htmlfn._xsave.htmlfn._xsavec.htmlfn._xsaveopt.htmlfn._xsaves.htmlfn._xsetbv.htmlfn._xtest.htmlfn.has_cpuid.htmlfn.ud2.htmlhas_cpuid.v.htmlindex.htmlsidebar-items.jsstruct.CpuidResult.htmlstruct.__m128.htmlstruct.__m128d.htmlstruct.__m128i.htmlstruct.__m256.htmlstruct.__m256d.htmlstruct.__m256i.htmlstruct.__m512.htmlstruct.__m512d.htmlstruct.__m512i.htmlstruct.__m64.htmltype.__mmask16.htmlud2.v.htmlx86_64CpuidResult.t.html_CMP_EQ_OQ.v.html_CMP_EQ_OS.v.html_CMP_EQ_UQ.v.html_CMP_EQ_US.v.html_CMP_FALSE_OQ.v.html_CMP_FALSE_OS.v.html_CMP_GE_OQ.v.html_CMP_GE_OS.v.html_CMP_GT_OQ.v.html_CMP_GT_OS.v.html_CMP_LE_OQ.v.html_CMP_LE_OS.v.html_CMP_LT_OQ.v.html_CMP_LT_OS.v.html_CMP_NEQ_OQ.v.html_CMP_NEQ_OS.v.html_CMP_NEQ_UQ.v.html_CMP_NEQ_US.v.html_CMP_NGE_UQ.v.html_CMP_NGE_US.v.html_CMP_NGT_UQ.v.html_CMP_NGT_US.v.html_CMP_NLE_UQ.v.html_CMP_NLE_US.v.html_CMP_NLT_UQ.v.html_CMP_NLT_US.v.html_CMP_ORD_Q.v.html_CMP_ORD_S.v.html_CMP_TRUE_UQ.v.html_CMP_TRUE_US.v.html_CMP_UNORD_Q.v.html_CMP_UNORD_S.v.html_MM_EXCEPT_DENORM.v.html_MM_EXCEPT_DIV_ZERO.v.html_MM_EXCEPT_INEXACT.v.html_MM_EXCEPT_INVALID.v.html_MM_EXCEPT_MASK.v.html_MM_EXCEPT_OVERFLOW.v.html_MM_EXCEPT_UNDERFLOW.v.html_MM_FLUSH_ZERO_MASK.v.html_MM_FLUSH_ZERO_OFF.v.html_MM_FLUSH_ZERO_ON.v.html_MM_FROUND_CEIL.v.html_MM_FROUND_CUR_DIRECTION.v.html_MM_FROUND_FLOOR.v.html_MM_FROUND_NEARBYINT.v.html_MM_FROUND_NINT.v.html_MM_FROUND_NO_EXC.v.html_MM_FROUND_RAISE_EXC.v.html_MM_FROUND_RINT.v.html_MM_FROUND_TO_NEAREST_INT.v.html_MM_FROUND_TO_NEG_INF.v.html_MM_FROUND_TO_POS_INF.v.html_MM_FROUND_TO_ZERO.v.html_MM_FROUND_TRUNC.v.html_MM_GET_EXCEPTION_MASK.v.html_MM_GET_EXCEPTION_STATE.v.html_MM_GET_FLUSH_ZERO_MODE.v.html_MM_GET_ROUNDING_MODE.v.html_MM_HINT_NTA.v.html_MM_HINT_T0.v.html_MM_HINT_T1.v.html_MM_HINT_T2.v.html_MM_MASK_DENORM.v.html_MM_MASK_DIV_ZERO.v.html_MM_MASK_INEXACT.v.html_MM_MASK_INVALID.v.html_MM_MASK_MASK.v.html_MM_MASK_OVERFLOW.v.html_MM_MASK_UNDERFLOW.v.html_MM_ROUND_DOWN.v.html_MM_ROUND_MASK.v.html_MM_ROUND_NEAREST.v.html_MM_ROUND_TOWARD_ZERO.v.html_MM_ROUND_UP.v.html_MM_SET_EXCEPTION_MASK.v.html_MM_SET_EXCEPTION_STATE.v.html_MM_SET_FLUSH_ZERO_MODE.v.html_MM_SET_ROUNDING_MODE.v.html_MM_SHUFFLE.v.html_MM_TRANSPOSE4_PS.v.html_SIDD_BIT_MASK.v.html_SIDD_CMP_EQUAL_ANY.v.html_SIDD_CMP_EQUAL_EACH.v.html_SIDD_CMP_EQUAL_ORDERED.v.html_SIDD_CMP_RANGES.v.html_SIDD_LEAST_SIGNIFICANT.v.html_SIDD_MASKED_NEGATIVE_POLARITY.v.html_SIDD_MASKED_POSITIVE_POLARITY.v.html_SIDD_MOST_SIGNIFICANT.v.html_SIDD_NEGATIVE_POLARITY.v.html_SIDD_POSITIVE_POLARITY.v.html_SIDD_SBYTE_OPS.v.html_SIDD_SWORD_OPS.v.html_SIDD_UBYTE_OPS.v.html_SIDD_UNIT_MASK.v.html_SIDD_UWORD_OPS.v.html_XABORT_CAPACITY.v.html_XABORT_CONFLICT.v.html_XABORT_DEBUG.v.html_XABORT_EXPLICIT.v.html_XABORT_NESTED.v.html_XABORT_RETRY.v.html_XBEGIN_STARTED.v.html_XCR_XFEATURE_ENABLED_MASK.v.html__cpuid.v.html__cpuid_count.v.html__get_cpuid_max.v.html__m128.t.html__m128d.t.html__m128i.t.html__m256.t.html__m256d.t.html__m256i.t.html__m512.t.html__m512d.t.html__m512i.t.html__m64.t.html__mmask16.t.html__rdtscp.v.html_addcarry_u32.v.html_addcarry_u64.v.html_addcarryx_u32.v.html_addcarryx_u64.v.html_andn_u32.v.html_andn_u64.v.html_bextr2_u32.v.html_bextr2_u64.v.html_bextr_u32.v.html_bextr_u64.v.html_bittest.v.html_bittest64.v.html_bittestandcomplement.v.html_bittestandcomplement64.v.html_bittestandreset.v.html_bittestandreset64.v.html_bittestandset.v.html_bittestandset64.v.html_blcfill_u32.v.html_blcfill_u64.v.html_blci_u32.v.html_blci_u64.v.html_blcic_u32.v.html_blcic_u64.v.html_blcmsk_u32.v.html_blcmsk_u64.v.html_blcs_u32.v.html_blcs_u64.v.html_blsfill_u32.v.html_blsfill_u64.v.html_blsi_u32.v.html_blsi_u64.v.html_blsic_u32.v.html_blsic_u64.v.html_blsmsk_u32.v.html_blsmsk_u64.v.html_blsr_u32.v.html_blsr_u64.v.html_bswap.v.html_bswap64.v.html_bzhi_u32.v.html_bzhi_u64.v.html_fxrstor.v.html_fxrstor64.v.html_fxsave.v.html_fxsave64.v.html_lzcnt_u32.v.html_lzcnt_u64.v.html_m_empty.v.html_m_maskmovq.v.html_m_paddb.v.html_m_paddd.v.html_m_paddsb.v.html_m_paddsw.v.html_m_paddusb.v.html_m_paddusw.v.html_m_paddw.v.html_m_pavgb.v.html_m_pavgw.v.html_m_pextrw.v.html_m_pinsrw.v.html_m_pmaxsw.v.html_m_pmaxub.v.html_m_pminsw.v.html_m_pminub.v.html_m_pmovmskb.v.html_m_pmulhuw.v.html_m_psadbw.v.html_m_pshufw.v.html_m_psubb.v.html_m_psubd.v.html_m_psubsb.v.html_m_psubsw.v.html_m_psubusb.v.html_m_psubusw.v.html_m_psubw.v.html_mm256_abs_epi16.v.html_mm256_abs_epi32.v.html_mm256_abs_epi8.v.html_mm256_add_epi16.v.html_mm256_add_epi32.v.html_mm256_add_epi64.v.html_mm256_add_epi8.v.html_mm256_add_pd.v.html_mm256_add_ps.v.html_mm256_adds_epi16.v.html_mm256_adds_epi8.v.html_mm256_adds_epu16.v.html_mm256_adds_epu8.v.html_mm256_addsub_pd.v.html_mm256_addsub_ps.v.html_mm256_alignr_epi8.v.html_mm256_and_pd.v.html_mm256_and_ps.v.html_mm256_and_si256.v.html_mm256_andnot_pd.v.html_mm256_andnot_ps.v.html_mm256_andnot_si256.v.html_mm256_avg_epu16.v.html_mm256_avg_epu8.v.html_mm256_blend_epi16.v.html_mm256_blend_epi32.v.html_mm256_blend_pd.v.html_mm256_blend_ps.v.html_mm256_blendv_epi8.v.html_mm256_blendv_pd.v.html_mm256_blendv_ps.v.html_mm256_broadcast_pd.v.html_mm256_broadcast_ps.v.html_mm256_broadcast_sd.v.html_mm256_broadcast_ss.v.html_mm256_broadcastb_epi8.v.html_mm256_broadcastd_epi32.v.html_mm256_broadcastq_epi64.v.html_mm256_broadcastsd_pd.v.html_mm256_broadcastsi128_si256.v.html_mm256_broadcastss_ps.v.html_mm256_broadcastw_epi16.v.html_mm256_bslli_epi128.v.html_mm256_bsrli_epi128.v.html_mm256_castpd128_pd256.v.html_mm256_castpd256_pd128.v.html_mm256_castpd_ps.v.html_mm256_castpd_si256.v.html_mm256_castps128_ps256.v.html_mm256_castps256_ps128.v.html_mm256_castps_pd.v.html_mm256_castps_si256.v.html_mm256_castsi128_si256.v.html_mm256_castsi256_pd.v.html_mm256_castsi256_ps.v.html_mm256_castsi256_si128.v.html_mm256_ceil_pd.v.html_mm256_ceil_ps.v.html_mm256_cmp_pd.v.html_mm256_cmp_ps.v.html_mm256_cmpeq_epi16.v.html_mm256_cmpeq_epi32.v.html_mm256_cmpeq_epi64.v.html_mm256_cmpeq_epi8.v.html_mm256_cmpgt_epi16.v.html_mm256_cmpgt_epi32.v.html_mm256_cmpgt_epi64.v.html_mm256_cmpgt_epi8.v.html_mm256_cvtepi16_epi32.v.html_mm256_cvtepi16_epi64.v.html_mm256_cvtepi32_epi64.v.html_mm256_cvtepi32_pd.v.html_mm256_cvtepi32_ps.v.html_mm256_cvtepi8_epi16.v.html_mm256_cvtepi8_epi32.v.html_mm256_cvtepi8_epi64.v.html_mm256_cvtepu16_epi32.v.html_mm256_cvtepu16_epi64.v.html_mm256_cvtepu32_epi64.v.html_mm256_cvtepu8_epi16.v.html_mm256_cvtepu8_epi32.v.html_mm256_cvtepu8_epi64.v.html_mm256_cvtpd_epi32.v.html_mm256_cvtpd_ps.v.html_mm256_cvtph_ps.v.html_mm256_cvtps_epi32.v.html_mm256_cvtps_pd.v.html_mm256_cvtps_ph.v.html_mm256_cvtsd_f64.v.html_mm256_cvtsi256_si32.v.html_mm256_cvtss_f32.v.html_mm256_cvttpd_epi32.v.html_mm256_cvttps_epi32.v.html_mm256_div_pd.v.html_mm256_div_ps.v.html_mm256_dp_ps.v.html_mm256_extract_epi16.v.html_mm256_extract_epi32.v.html_mm256_extract_epi64.v.html_mm256_extract_epi8.v.html_mm256_extractf128_pd.v.html_mm256_extractf128_ps.v.html_mm256_extractf128_si256.v.html_mm256_extracti128_si256.v.html_mm256_floor_pd.v.html_mm256_floor_ps.v.html_mm256_fmadd_pd.v.html_mm256_fmadd_ps.v.html_mm256_fmaddsub_pd.v.html_mm256_fmaddsub_ps.v.html_mm256_fmsub_pd.v.html_mm256_fmsub_ps.v.html_mm256_fmsubadd_pd.v.html_mm256_fmsubadd_ps.v.html_mm256_fnmadd_pd.v.html_mm256_fnmadd_ps.v.html_mm256_fnmsub_pd.v.html_mm256_fnmsub_ps.v.html_mm256_hadd_epi16.v.html_mm256_hadd_epi32.v.html_mm256_hadd_pd.v.html_mm256_hadd_ps.v.html_mm256_hadds_epi16.v.html_mm256_hsub_epi16.v.html_mm256_hsub_epi32.v.html_mm256_hsub_pd.v.html_mm256_hsub_ps.v.html_mm256_hsubs_epi16.v.html_mm256_i32gather_epi32.v.html_mm256_i32gather_epi64.v.html_mm256_i32gather_pd.v.html_mm256_i32gather_ps.v.html_mm256_i64gather_epi32.v.html_mm256_i64gather_epi64.v.html_mm256_i64gather_pd.v.html_mm256_i64gather_ps.v.html_mm256_insert_epi16.v.html_mm256_insert_epi32.v.html_mm256_insert_epi64.v.html_mm256_insert_epi8.v.html_mm256_insertf128_pd.v.html_mm256_insertf128_ps.v.html_mm256_insertf128_si256.v.html_mm256_inserti128_si256.v.html_mm256_lddqu_si256.v.html_mm256_load_pd.v.html_mm256_load_ps.v.html_mm256_load_si256.v.html_mm256_loadu2_m128.v.html_mm256_loadu2_m128d.v.html_mm256_loadu2_m128i.v.html_mm256_loadu_pd.v.html_mm256_loadu_ps.v.html_mm256_loadu_si256.v.html_mm256_madd52hi_epu64.v.html_mm256_madd52lo_epu64.v.html_mm256_madd_epi16.v.html_mm256_maddubs_epi16.v.html_mm256_mask_i32gather_epi32.v.html_mm256_mask_i32gather_epi64.v.html_mm256_mask_i32gather_pd.v.html_mm256_mask_i32gather_ps.v.html_mm256_mask_i64gather_epi32.v.html_mm256_mask_i64gather_epi64.v.html_mm256_mask_i64gather_pd.v.html_mm256_mask_i64gather_ps.v.html_mm256_maskload_epi32.v.html_mm256_maskload_epi64.v.html_mm256_maskload_pd.v.html_mm256_maskload_ps.v.html_mm256_maskstore_epi32.v.html_mm256_maskstore_epi64.v.html_mm256_maskstore_pd.v.html_mm256_maskstore_ps.v.html_mm256_max_epi16.v.html_mm256_max_epi32.v.html_mm256_max_epi8.v.html_mm256_max_epu16.v.html_mm256_max_epu32.v.html_mm256_max_epu8.v.html_mm256_max_pd.v.html_mm256_max_ps.v.html_mm256_min_epi16.v.html_mm256_min_epi32.v.html_mm256_min_epi8.v.html_mm256_min_epu16.v.html_mm256_min_epu32.v.html_mm256_min_epu8.v.html_mm256_min_pd.v.html_mm256_min_ps.v.html_mm256_movedup_pd.v.html_mm256_movehdup_ps.v.html_mm256_moveldup_ps.v.html_mm256_movemask_epi8.v.html_mm256_movemask_pd.v.html_mm256_movemask_ps.v.html_mm256_mpsadbw_epu8.v.html_mm256_mul_epi32.v.html_mm256_mul_epu32.v.html_mm256_mul_pd.v.html_mm256_mul_ps.v.html_mm256_mulhi_epi16.v.html_mm256_mulhi_epu16.v.html_mm256_mulhrs_epi16.v.html_mm256_mullo_epi16.v.html_mm256_mullo_epi32.v.html_mm256_or_pd.v.html_mm256_or_ps.v.html_mm256_or_si256.v.html_mm256_packs_epi16.v.html_mm256_packs_epi32.v.html_mm256_packus_epi16.v.html_mm256_packus_epi32.v.html_mm256_permute2f128_pd.v.html_mm256_permute2f128_ps.v.html_mm256_permute2f128_si256.v.html_mm256_permute2x128_si256.v.html_mm256_permute4x64_epi64.v.html_mm256_permute4x64_pd.v.html_mm256_permute_pd.v.html_mm256_permute_ps.v.html_mm256_permutevar8x32_epi32.v.html_mm256_permutevar8x32_ps.v.html_mm256_permutevar_pd.v.html_mm256_permutevar_ps.v.html_mm256_rcp_ps.v.html_mm256_round_pd.v.html_mm256_round_ps.v.html_mm256_rsqrt_ps.v.html_mm256_sad_epu8.v.html_mm256_set1_epi16.v.html_mm256_set1_epi32.v.html_mm256_set1_epi64x.v.html_mm256_set1_epi8.v.html_mm256_set1_pd.v.html_mm256_set1_ps.v.html_mm256_set_epi16.v.html_mm256_set_epi32.v.html_mm256_set_epi64x.v.html_mm256_set_epi8.v.html_mm256_set_m128.v.html_mm256_set_m128d.v.html_mm256_set_m128i.v.html_mm256_set_pd.v.html_mm256_set_ps.v.html_mm256_setr_epi16.v.html_mm256_setr_epi32.v.html_mm256_setr_epi64x.v.html_mm256_setr_epi8.v.html_mm256_setr_m128.v.html_mm256_setr_m128d.v.html_mm256_setr_m128i.v.html_mm256_setr_pd.v.html_mm256_setr_ps.v.html_mm256_setzero_pd.v.html_mm256_setzero_ps.v.html_mm256_setzero_si256.v.html_mm256_shuffle_epi32.v.html_mm256_shuffle_epi8.v.html_mm256_shuffle_pd.v.html_mm256_shuffle_ps.v.html_mm256_shufflehi_epi16.v.html_mm256_shufflelo_epi16.v.html_mm256_sign_epi16.v.html_mm256_sign_epi32.v.html_mm256_sign_epi8.v.html_mm256_sll_epi16.v.html_mm256_sll_epi32.v.html_mm256_sll_epi64.v.html_mm256_slli_epi16.v.html_mm256_slli_epi32.v.html_mm256_slli_epi64.v.html_mm256_slli_si256.v.html_mm256_sllv_epi32.v.html_mm256_sllv_epi64.v.html_mm256_sqrt_pd.v.html_mm256_sqrt_ps.v.html_mm256_sra_epi16.v.html_mm256_sra_epi32.v.html_mm256_srai_epi16.v.html_mm256_srai_epi32.v.html_mm256_srav_epi32.v.html_mm256_srl_epi16.v.html_mm256_srl_epi32.v.html_mm256_srl_epi64.v.html_mm256_srli_epi16.v.html_mm256_srli_epi32.v.html_mm256_srli_epi64.v.html_mm256_srli_si256.v.html_mm256_srlv_epi32.v.html_mm256_srlv_epi64.v.html_mm256_store_pd.v.html_mm256_store_ps.v.html_mm256_store_si256.v.html_mm256_storeu2_m128.v.html_mm256_storeu2_m128d.v.html_mm256_storeu2_m128i.v.html_mm256_storeu_pd.v.html_mm256_storeu_ps.v.html_mm256_storeu_si256.v.html_mm256_stream_pd.v.html_mm256_stream_ps.v.html_mm256_stream_si256.v.html_mm256_sub_epi16.v.html_mm256_sub_epi32.v.html_mm256_sub_epi64.v.html_mm256_sub_epi8.v.html_mm256_sub_pd.v.html_mm256_sub_ps.v.html_mm256_subs_epi16.v.html_mm256_subs_epi8.v.html_mm256_subs_epu16.v.html_mm256_subs_epu8.v.html_mm256_testc_pd.v.html_mm256_testc_ps.v.html_mm256_testc_si256.v.html_mm256_testnzc_pd.v.html_mm256_testnzc_ps.v.html_mm256_testnzc_si256.v.html_mm256_testz_pd.v.html_mm256_testz_ps.v.html_mm256_testz_si256.v.html_mm256_undefined_pd.v.html_mm256_undefined_ps.v.html_mm256_undefined_si256.v.html_mm256_unpackhi_epi16.v.html_mm256_unpackhi_epi32.v.html_mm256_unpackhi_epi64.v.html_mm256_unpackhi_epi8.v.html_mm256_unpackhi_pd.v.html_mm256_unpackhi_ps.v.html_mm256_unpacklo_epi16.v.html_mm256_unpacklo_epi32.v.html_mm256_unpacklo_epi64.v.html_mm256_unpacklo_epi8.v.html_mm256_unpacklo_pd.v.html_mm256_unpacklo_ps.v.html_mm256_xor_pd.v.html_mm256_xor_ps.v.html_mm256_xor_si256.v.html_mm256_zeroall.v.html_mm256_zeroupper.v.html_mm256_zextpd128_pd256.v.html_mm256_zextps128_ps256.v.html_mm256_zextsi128_si256.v.html_mm512_abs_epi32.v.html_mm512_madd52hi_epu64.v.html_mm512_madd52lo_epu64.v.html_mm512_mask_abs_epi32.v.html_mm512_maskz_abs_epi32.v.html_mm512_set1_epi64.v.html_mm512_setr_epi32.v.html_mm512_setzero_si512.v.html_mm_abs_epi16.v.html_mm_abs_epi32.v.html_mm_abs_epi8.v.html_mm_abs_pi16.v.html_mm_abs_pi32.v.html_mm_abs_pi8.v.html_mm_add_epi16.v.html_mm_add_epi32.v.html_mm_add_epi64.v.html_mm_add_epi8.v.html_mm_add_pd.v.html_mm_add_pi16.v.html_mm_add_pi32.v.html_mm_add_pi8.v.html_mm_add_ps.v.html_mm_add_sd.v.html_mm_add_si64.v.html_mm_add_ss.v.html_mm_adds_epi16.v.html_mm_adds_epi8.v.html_mm_adds_epu16.v.html_mm_adds_epu8.v.html_mm_adds_pi16.v.html_mm_adds_pi8.v.html_mm_adds_pu16.v.html_mm_adds_pu8.v.html_mm_addsub_pd.v.html_mm_addsub_ps.v.html_mm_aesdec_si128.v.html_mm_aesdeclast_si128.v.html_mm_aesenc_si128.v.html_mm_aesenclast_si128.v.html_mm_aesimc_si128.v.html_mm_aeskeygenassist_si128.v.html_mm_alignr_epi8.v.html_mm_alignr_pi8.v.html_mm_and_pd.v.html_mm_and_ps.v.html_mm_and_si128.v.html_mm_andnot_pd.v.html_mm_andnot_ps.v.html_mm_andnot_si128.v.html_mm_avg_epu16.v.html_mm_avg_epu8.v.html_mm_avg_pu16.v.html_mm_avg_pu8.v.html_mm_blend_epi16.v.html_mm_blend_epi32.v.html_mm_blend_pd.v.html_mm_blend_ps.v.html_mm_blendv_epi8.v.html_mm_blendv_pd.v.html_mm_blendv_ps.v.html_mm_broadcast_ss.v.html_mm_broadcastb_epi8.v.html_mm_broadcastd_epi32.v.html_mm_broadcastq_epi64.v.html_mm_broadcastsd_pd.v.html_mm_broadcastss_ps.v.html_mm_broadcastw_epi16.v.html_mm_bslli_si128.v.html_mm_bsrli_si128.v.html_mm_castpd_ps.v.html_mm_castpd_si128.v.html_mm_castps_pd.v.html_mm_castps_si128.v.html_mm_castsi128_pd.v.html_mm_castsi128_ps.v.html_mm_ceil_pd.v.html_mm_ceil_ps.v.html_mm_ceil_sd.v.html_mm_ceil_ss.v.html_mm_clflush.v.html_mm_clmulepi64_si128.v.html_mm_cmp_pd.v.html_mm_cmp_ps.v.html_mm_cmp_sd.v.html_mm_cmp_ss.v.html_mm_cmpeq_epi16.v.html_mm_cmpeq_epi32.v.html_mm_cmpeq_epi64.v.html_mm_cmpeq_epi8.v.html_mm_cmpeq_pd.v.html_mm_cmpeq_ps.v.html_mm_cmpeq_sd.v.html_mm_cmpeq_ss.v.html_mm_cmpestra.v.html_mm_cmpestrc.v.html_mm_cmpestri.v.html_mm_cmpestrm.v.html_mm_cmpestro.v.html_mm_cmpestrs.v.html_mm_cmpestrz.v.html_mm_cmpge_pd.v.html_mm_cmpge_ps.v.html_mm_cmpge_sd.v.html_mm_cmpge_ss.v.html_mm_cmpgt_epi16.v.html_mm_cmpgt_epi32.v.html_mm_cmpgt_epi64.v.html_mm_cmpgt_epi8.v.html_mm_cmpgt_pd.v.html_mm_cmpgt_pi16.v.html_mm_cmpgt_pi32.v.html_mm_cmpgt_pi8.v.html_mm_cmpgt_ps.v.html_mm_cmpgt_sd.v.html_mm_cmpgt_ss.v.html_mm_cmpistra.v.html_mm_cmpistrc.v.html_mm_cmpistri.v.html_mm_cmpistrm.v.html_mm_cmpistro.v.html_mm_cmpistrs.v.html_mm_cmpistrz.v.html_mm_cmple_pd.v.html_mm_cmple_ps.v.html_mm_cmple_sd.v.html_mm_cmple_ss.v.html_mm_cmplt_epi16.v.html_mm_cmplt_epi32.v.html_mm_cmplt_epi8.v.html_mm_cmplt_pd.v.html_mm_cmplt_ps.v.html_mm_cmplt_sd.v.html_mm_cmplt_ss.v.html_mm_cmpneq_pd.v.html_mm_cmpneq_ps.v.html_mm_cmpneq_sd.v.html_mm_cmpneq_ss.v.html_mm_cmpnge_pd.v.html_mm_cmpnge_ps.v.html_mm_cmpnge_sd.v.html_mm_cmpnge_ss.v.html_mm_cmpngt_pd.v.html_mm_cmpngt_ps.v.html_mm_cmpngt_sd.v.html_mm_cmpngt_ss.v.html_mm_cmpnle_pd.v.html_mm_cmpnle_ps.v.html_mm_cmpnle_sd.v.html_mm_cmpnle_ss.v.html_mm_cmpnlt_pd.v.html_mm_cmpnlt_ps.v.html_mm_cmpnlt_sd.v.html_mm_cmpnlt_ss.v.html_mm_cmpord_pd.v.html_mm_cmpord_ps.v.html_mm_cmpord_sd.v.html_mm_cmpord_ss.v.html_mm_cmpunord_pd.v.html_mm_cmpunord_ps.v.html_mm_cmpunord_sd.v.html_mm_cmpunord_ss.v.html_mm_comieq_sd.v.html_mm_comieq_ss.v.html_mm_comige_sd.v.html_mm_comige_ss.v.html_mm_comigt_sd.v.html_mm_comigt_ss.v.html_mm_comile_sd.v.html_mm_comile_ss.v.html_mm_comilt_sd.v.html_mm_comilt_ss.v.html_mm_comineq_sd.v.html_mm_comineq_ss.v.html_mm_crc32_u16.v.html_mm_crc32_u32.v.html_mm_crc32_u64.v.html_mm_crc32_u8.v.html_mm_cvt_pi2ps.v.html_mm_cvt_ps2pi.v.html_mm_cvt_si2ss.v.html_mm_cvt_ss2si.v.html_mm_cvtepi16_epi32.v.html_mm_cvtepi16_epi64.v.html_mm_cvtepi32_epi64.v.html_mm_cvtepi32_pd.v.html_mm_cvtepi32_ps.v.html_mm_cvtepi8_epi16.v.html_mm_cvtepi8_epi32.v.html_mm_cvtepi8_epi64.v.html_mm_cvtepu16_epi32.v.html_mm_cvtepu16_epi64.v.html_mm_cvtepu32_epi64.v.html_mm_cvtepu8_epi16.v.html_mm_cvtepu8_epi32.v.html_mm_cvtepu8_epi64.v.html_mm_cvtpd_epi32.v.html_mm_cvtpd_pi32.v.html_mm_cvtpd_ps.v.html_mm_cvtph_ps.v.html_mm_cvtpi16_ps.v.html_mm_cvtpi32_pd.v.html_mm_cvtpi32_ps.v.html_mm_cvtpi32x2_ps.v.html_mm_cvtpi8_ps.v.html_mm_cvtps_epi32.v.html_mm_cvtps_pd.v.html_mm_cvtps_ph.v.html_mm_cvtps_pi16.v.html_mm_cvtps_pi32.v.html_mm_cvtps_pi8.v.html_mm_cvtpu16_ps.v.html_mm_cvtpu8_ps.v.html_mm_cvtsd_f64.v.html_mm_cvtsd_si32.v.html_mm_cvtsd_si64.v.html_mm_cvtsd_si64x.v.html_mm_cvtsd_ss.v.html_mm_cvtsi128_si32.v.html_mm_cvtsi128_si64.v.html_mm_cvtsi128_si64x.v.html_mm_cvtsi32_sd.v.html_mm_cvtsi32_si128.v.html_mm_cvtsi32_si64.v.html_mm_cvtsi32_ss.v.html_mm_cvtsi64_sd.v.html_mm_cvtsi64_si128.v.html_mm_cvtsi64_si32.v.html_mm_cvtsi64_ss.v.html_mm_cvtsi64x_sd.v.html_mm_cvtsi64x_si128.v.html_mm_cvtss_f32.v.html_mm_cvtss_sd.v.html_mm_cvtss_si32.v.html_mm_cvtss_si64.v.html_mm_cvtt_ps2pi.v.html_mm_cvtt_ss2si.v.html_mm_cvttpd_epi32.v.html_mm_cvttpd_pi32.v.html_mm_cvttps_epi32.v.html_mm_cvttps_pi32.v.html_mm_cvttsd_si32.v.html_mm_cvttsd_si64.v.html_mm_cvttsd_si64x.v.html_mm_cvttss_si32.v.html_mm_cvttss_si64.v.html_mm_div_pd.v.html_mm_div_ps.v.html_mm_div_sd.v.html_mm_div_ss.v.html_mm_dp_pd.v.html_mm_dp_ps.v.html_mm_empty.v.html_mm_extract_epi16.v.html_mm_extract_epi32.v.html_mm_extract_epi64.v.html_mm_extract_epi8.v.html_mm_extract_pi16.v.html_mm_extract_ps.v.html_mm_extract_si64.v.html_mm_floor_pd.v.html_mm_floor_ps.v.html_mm_floor_sd.v.html_mm_floor_ss.v.html_mm_fmadd_pd.v.html_mm_fmadd_ps.v.html_mm_fmadd_sd.v.html_mm_fmadd_ss.v.html_mm_fmaddsub_pd.v.html_mm_fmaddsub_ps.v.html_mm_fmsub_pd.v.html_mm_fmsub_ps.v.html_mm_fmsub_sd.v.html_mm_fmsub_ss.v.html_mm_fmsubadd_pd.v.html_mm_fmsubadd_ps.v.html_mm_fnmadd_pd.v.html_mm_fnmadd_ps.v.html_mm_fnmadd_sd.v.html_mm_fnmadd_ss.v.html_mm_fnmsub_pd.v.html_mm_fnmsub_ps.v.html_mm_fnmsub_sd.v.html_mm_fnmsub_ss.v.html_mm_getcsr.v.html_mm_hadd_epi16.v.html_mm_hadd_epi32.v.html_mm_hadd_pd.v.html_mm_hadd_pi16.v.html_mm_hadd_pi32.v.html_mm_hadd_ps.v.html_mm_hadds_epi16.v.html_mm_hadds_pi16.v.html_mm_hsub_epi16.v.html_mm_hsub_epi32.v.html_mm_hsub_pd.v.html_mm_hsub_pi16.v.html_mm_hsub_pi32.v.html_mm_hsub_ps.v.html_mm_hsubs_epi16.v.html_mm_hsubs_pi16.v.html_mm_i32gather_epi32.v.html_mm_i32gather_epi64.v.html_mm_i32gather_pd.v.html_mm_i32gather_ps.v.html_mm_i64gather_epi32.v.html_mm_i64gather_epi64.v.html_mm_i64gather_pd.v.html_mm_i64gather_ps.v.html_mm_insert_epi16.v.html_mm_insert_epi32.v.html_mm_insert_epi64.v.html_mm_insert_epi8.v.html_mm_insert_pi16.v.html_mm_insert_ps.v.html_mm_insert_si64.v.html_mm_lddqu_si128.v.html_mm_lfence.v.html_mm_load1_pd.v.html_mm_load1_ps.v.html_mm_load_pd.v.html_mm_load_pd1.v.html_mm_load_ps.v.html_mm_load_ps1.v.html_mm_load_sd.v.html_mm_load_si128.v.html_mm_load_ss.v.html_mm_loaddup_pd.v.html_mm_loadh_pd.v.html_mm_loadh_pi.v.html_mm_loadl_epi64.v.html_mm_loadl_pd.v.html_mm_loadl_pi.v.html_mm_loadr_pd.v.html_mm_loadr_ps.v.html_mm_loadu_pd.v.html_mm_loadu_ps.v.html_mm_loadu_si128.v.html_mm_madd52hi_epu64.v.html_mm_madd52lo_epu64.v.html_mm_madd_epi16.v.html_mm_maddubs_epi16.v.html_mm_maddubs_pi16.v.html_mm_mask_i32gather_epi32.v.html_mm_mask_i32gather_epi64.v.html_mm_mask_i32gather_pd.v.html_mm_mask_i32gather_ps.v.html_mm_mask_i64gather_epi32.v.html_mm_mask_i64gather_epi64.v.html_mm_mask_i64gather_pd.v.html_mm_mask_i64gather_ps.v.html_mm_maskload_epi32.v.html_mm_maskload_epi64.v.html_mm_maskload_pd.v.html_mm_maskload_ps.v.html_mm_maskmove_si64.v.html_mm_maskmoveu_si128.v.html_mm_maskstore_epi32.v.html_mm_maskstore_epi64.v.html_mm_maskstore_pd.v.html_mm_maskstore_ps.v.html_mm_max_epi16.v.html_mm_max_epi32.v.html_mm_max_epi8.v.html_mm_max_epu16.v.html_mm_max_epu32.v.html_mm_max_epu8.v.html_mm_max_pd.v.html_mm_max_pi16.v.html_mm_max_ps.v.html_mm_max_pu8.v.html_mm_max_sd.v.html_mm_max_ss.v.html_mm_mfence.v.html_mm_min_epi16.v.html_mm_min_epi32.v.html_mm_min_epi8.v.html_mm_min_epu16.v.html_mm_min_epu32.v.html_mm_min_epu8.v.html_mm_min_pd.v.html_mm_min_pi16.v.html_mm_min_ps.v.html_mm_min_pu8.v.html_mm_min_sd.v.html_mm_min_ss.v.html_mm_minpos_epu16.v.html_mm_move_epi64.v.html_mm_move_sd.v.html_mm_move_ss.v.html_mm_movedup_pd.v.html_mm_movehdup_ps.v.html_mm_movehl_ps.v.html_mm_moveldup_ps.v.html_mm_movelh_ps.v.html_mm_movemask_epi8.v.html_mm_movemask_pd.v.html_mm_movemask_pi8.v.html_mm_movemask_ps.v.html_mm_movepi64_pi64.v.html_mm_movpi64_epi64.v.html_mm_mpsadbw_epu8.v.html_mm_mul_epi32.v.html_mm_mul_epu32.v.html_mm_mul_pd.v.html_mm_mul_ps.v.html_mm_mul_sd.v.html_mm_mul_ss.v.html_mm_mul_su32.v.html_mm_mulhi_epi16.v.html_mm_mulhi_epu16.v.html_mm_mulhi_pu16.v.html_mm_mulhrs_epi16.v.html_mm_mulhrs_pi16.v.html_mm_mullo_epi16.v.html_mm_mullo_epi32.v.html_mm_mullo_pi16.v.html_mm_or_pd.v.html_mm_or_ps.v.html_mm_or_si128.v.html_mm_packs_epi16.v.html_mm_packs_epi32.v.html_mm_packs_pi16.v.html_mm_packs_pi32.v.html_mm_packus_epi16.v.html_mm_packus_epi32.v.html_mm_pause.v.html_mm_permute_pd.v.html_mm_permute_ps.v.html_mm_permutevar_pd.v.html_mm_permutevar_ps.v.html_mm_prefetch.v.html_mm_rcp_ps.v.html_mm_rcp_ss.v.html_mm_round_pd.v.html_mm_round_ps.v.html_mm_round_sd.v.html_mm_round_ss.v.html_mm_rsqrt_ps.v.html_mm_rsqrt_ss.v.html_mm_sad_epu8.v.html_mm_sad_pu8.v.html_mm_set1_epi16.v.html_mm_set1_epi32.v.html_mm_set1_epi64.v.html_mm_set1_epi64x.v.html_mm_set1_epi8.v.html_mm_set1_pd.v.html_mm_set1_pi16.v.html_mm_set1_pi32.v.html_mm_set1_pi8.v.html_mm_set1_ps.v.html_mm_set_epi16.v.html_mm_set_epi32.v.html_mm_set_epi64.v.html_mm_set_epi64x.v.html_mm_set_epi8.v.html_mm_set_pd.v.html_mm_set_pd1.v.html_mm_set_pi16.v.html_mm_set_pi32.v.html_mm_set_pi8.v.html_mm_set_ps.v.html_mm_set_ps1.v.html_mm_set_sd.v.html_mm_set_ss.v.html_mm_setcsr.v.html_mm_setr_epi16.v.html_mm_setr_epi32.v.html_mm_setr_epi64.v.html_mm_setr_epi8.v.html_mm_setr_pd.v.html_mm_setr_pi16.v.html_mm_setr_pi32.v.html_mm_setr_pi8.v.html_mm_setr_ps.v.html_mm_setzero_pd.v.html_mm_setzero_ps.v.html_mm_setzero_si128.v.html_mm_setzero_si64.v.html_mm_sfence.v.html_mm_sha1msg1_epu32.v.html_mm_sha1msg2_epu32.v.html_mm_sha1nexte_epu32.v.html_mm_sha1rnds4_epu32.v.html_mm_sha256msg1_epu32.v.html_mm_sha256msg2_epu32.v.html_mm_sha256rnds2_epu32.v.html_mm_shuffle_epi32.v.html_mm_shuffle_epi8.v.html_mm_shuffle_pd.v.html_mm_shuffle_pi16.v.html_mm_shuffle_pi8.v.html_mm_shuffle_ps.v.html_mm_shufflehi_epi16.v.html_mm_shufflelo_epi16.v.html_mm_sign_epi16.v.html_mm_sign_epi32.v.html_mm_sign_epi8.v.html_mm_sign_pi16.v.html_mm_sign_pi32.v.html_mm_sign_pi8.v.html_mm_sll_epi16.v.html_mm_sll_epi32.v.html_mm_sll_epi64.v.html_mm_slli_epi16.v.html_mm_slli_epi32.v.html_mm_slli_epi64.v.html_mm_slli_si128.v.html_mm_sllv_epi32.v.html_mm_sllv_epi64.v.html_mm_sqrt_pd.v.html_mm_sqrt_ps.v.html_mm_sqrt_sd.v.html_mm_sqrt_ss.v.html_mm_sra_epi16.v.html_mm_sra_epi32.v.html_mm_srai_epi16.v.html_mm_srai_epi32.v.html_mm_srav_epi32.v.html_mm_srl_epi16.v.html_mm_srl_epi32.v.html_mm_srl_epi64.v.html_mm_srli_epi16.v.html_mm_srli_epi32.v.html_mm_srli_epi64.v.html_mm_srli_si128.v.html_mm_srlv_epi32.v.html_mm_srlv_epi64.v.html_mm_store1_pd.v.html_mm_store1_ps.v.html_mm_store_pd.v.html_mm_store_pd1.v.html_mm_store_ps.v.html_mm_store_ps1.v.html_mm_store_sd.v.html_mm_store_si128.v.html_mm_store_ss.v.html_mm_storeh_pd.v.html_mm_storeh_pi.v.html_mm_storel_epi64.v.html_mm_storel_pd.v.html_mm_storel_pi.v.html_mm_storer_pd.v.html_mm_storer_ps.v.html_mm_storeu_pd.v.html_mm_storeu_ps.v.html_mm_storeu_si128.v.html_mm_stream_pd.v.html_mm_stream_pi.v.html_mm_stream_ps.v.html_mm_stream_sd.v.html_mm_stream_si128.v.html_mm_stream_si32.v.html_mm_stream_si64.v.html_mm_stream_ss.v.html_mm_sub_epi16.v.html_mm_sub_epi32.v.html_mm_sub_epi64.v.html_mm_sub_epi8.v.html_mm_sub_pd.v.html_mm_sub_pi16.v.html_mm_sub_pi32.v.html_mm_sub_pi8.v.html_mm_sub_ps.v.html_mm_sub_sd.v.html_mm_sub_si64.v.html_mm_sub_ss.v.html_mm_subs_epi16.v.html_mm_subs_epi8.v.html_mm_subs_epu16.v.html_mm_subs_epu8.v.html_mm_subs_pi16.v.html_mm_subs_pi8.v.html_mm_subs_pu16.v.html_mm_subs_pu8.v.html_mm_test_all_ones.v.html_mm_test_all_zeros.v.html_mm_test_mix_ones_zeros.v.html_mm_testc_pd.v.html_mm_testc_ps.v.html_mm_testc_si128.v.html_mm_testnzc_pd.v.html_mm_testnzc_ps.v.html_mm_testnzc_si128.v.html_mm_testz_pd.v.html_mm_testz_ps.v.html_mm_testz_si128.v.html_mm_tzcnt_32.v.html_mm_tzcnt_64.v.html_mm_ucomieq_sd.v.html_mm_ucomieq_ss.v.html_mm_ucomige_sd.v.html_mm_ucomige_ss.v.html_mm_ucomigt_sd.v.html_mm_ucomigt_ss.v.html_mm_ucomile_sd.v.html_mm_ucomile_ss.v.html_mm_ucomilt_sd.v.html_mm_ucomilt_ss.v.html_mm_ucomineq_sd.v.html_mm_ucomineq_ss.v.html_mm_undefined_pd.v.html_mm_undefined_ps.v.html_mm_undefined_si128.v.html_mm_unpackhi_epi16.v.html_mm_unpackhi_epi32.v.html_mm_unpackhi_epi64.v.html_mm_unpackhi_epi8.v.html_mm_unpackhi_pd.v.html_mm_unpackhi_pi16.v.html_mm_unpackhi_pi32.v.html_mm_unpackhi_pi8.v.html_mm_unpackhi_ps.v.html_mm_unpacklo_epi16.v.html_mm_unpacklo_epi32.v.html_mm_unpacklo_epi64.v.html_mm_unpacklo_epi8.v.html_mm_unpacklo_pd.v.html_mm_unpacklo_pi16.v.html_mm_unpacklo_pi32.v.html_mm_unpacklo_pi8.v.html_mm_unpacklo_ps.v.html_mm_xor_pd.v.html_mm_xor_ps.v.html_mm_xor_si128.v.html_mulx_u32.v.html_mulx_u64.v.html_pdep_u32.v.html_pdep_u64.v.html_pext_u32.v.html_pext_u64.v.html_popcnt32.v.html_popcnt64.v.html_rdrand16_step.v.html_rdrand32_step.v.html_rdrand64_step.v.html_rdseed16_step.v.html_rdseed32_step.v.html_rdseed64_step.v.html_rdtsc.v.html_subborrow_u32.v.html_subborrow_u64.v.html_t1mskc_u32.v.html_t1mskc_u64.v.html_tzcnt_u32.v.html_tzcnt_u64.v.html_tzmsk_u32.v.html_tzmsk_u64.v.html_xabort.v.html_xabort_code.v.html_xbegin.v.html_xend.v.html_xgetbv.v.html_xrstor.v.html_xrstor64.v.html_xrstors.v.html_xrstors64.v.html_xsave.v.html_xsave64.v.html_xsavec.v.html_xsavec64.v.html_xsaveopt.v.html_xsaveopt64.v.html_xsaves.v.html_xsaves64.v.html_xsetbv.v.html_xtest.v.htmlcmpxchg16b.v.htmlconstant._CMP_EQ_OQ.htmlconstant._CMP_EQ_OS.htmlconstant._CMP_EQ_UQ.htmlconstant._CMP_EQ_US.htmlconstant._CMP_FALSE_OQ.htmlconstant._CMP_FALSE_OS.htmlconstant._CMP_GE_OQ.htmlconstant._CMP_GE_OS.htmlconstant._CMP_GT_OQ.htmlconstant._CMP_GT_OS.htmlconstant._CMP_LE_OQ.htmlconstant._CMP_LE_OS.htmlconstant._CMP_LT_OQ.htmlconstant._CMP_LT_OS.htmlconstant._CMP_NEQ_OQ.htmlconstant._CMP_NEQ_OS.htmlconstant._CMP_NEQ_UQ.htmlconstant._CMP_NEQ_US.htmlconstant._CMP_NGE_UQ.htmlconstant._CMP_NGE_US.htmlconstant._CMP_NGT_UQ.htmlconstant._CMP_NGT_US.htmlconstant._CMP_NLE_UQ.htmlconstant._CMP_NLE_US.htmlconstant._CMP_NLT_UQ.htmlconstant._CMP_NLT_US.htmlconstant._CMP_ORD_Q.htmlconstant._CMP_ORD_S.htmlconstant._CMP_TRUE_UQ.htmlconstant._CMP_TRUE_US.htmlconstant._CMP_UNORD_Q.htmlconstant._CMP_UNORD_S.htmlconstant._MM_EXCEPT_DENORM.htmlconstant._MM_EXCEPT_DIV_ZERO.htmlconstant._MM_EXCEPT_INEXACT.htmlconstant._MM_EXCEPT_INVALID.htmlconstant._MM_EXCEPT_MASK.htmlconstant._MM_EXCEPT_OVERFLOW.htmlconstant._MM_EXCEPT_UNDERFLOW.htmlconstant._MM_FLUSH_ZERO_MASK.htmlconstant._MM_FLUSH_ZERO_OFF.htmlconstant._MM_FLUSH_ZERO_ON.htmlconstant._MM_FROUND_CEIL.htmlconstant._MM_FROUND_CUR_DIRECTION.htmlconstant._MM_FROUND_FLOOR.htmlconstant._MM_FROUND_NEARBYINT.htmlconstant._MM_FROUND_NINT.htmlconstant._MM_FROUND_NO_EXC.htmlconstant._MM_FROUND_RAISE_EXC.htmlconstant._MM_FROUND_RINT.htmlconstant._MM_FROUND_TO_NEAREST_INT.htmlconstant._MM_FROUND_TO_NEG_INF.htmlconstant._MM_FROUND_TO_POS_INF.htmlconstant._MM_FROUND_TO_ZERO.htmlconstant._MM_FROUND_TRUNC.htmlconstant._MM_HINT_NTA.htmlconstant._MM_HINT_T0.htmlconstant._MM_HINT_T1.htmlconstant._MM_HINT_T2.htmlconstant._MM_MASK_DENORM.htmlconstant._MM_MASK_DIV_ZERO.htmlconstant._MM_MASK_INEXACT.htmlconstant._MM_MASK_INVALID.htmlconstant._MM_MASK_MASK.htmlconstant._MM_MASK_OVERFLOW.htmlconstant._MM_MASK_UNDERFLOW.htmlconstant._MM_ROUND_DOWN.htmlconstant._MM_ROUND_MASK.htmlconstant._MM_ROUND_NEAREST.htmlconstant._MM_ROUND_TOWARD_ZERO.htmlconstant._MM_ROUND_UP.htmlconstant._SIDD_BIT_MASK.htmlconstant._SIDD_CMP_EQUAL_ANY.htmlconstant._SIDD_CMP_EQUAL_EACH.htmlconstant._SIDD_CMP_EQUAL_ORDERED.htmlconstant._SIDD_CMP_RANGES.htmlconstant._SIDD_LEAST_SIGNIFICANT.htmlconstant._SIDD_MASKED_NEGATIVE_POLARITY.htmlconstant._SIDD_MASKED_POSITIVE_POLARITY.htmlconstant._SIDD_MOST_SIGNIFICANT.htmlconstant._SIDD_NEGATIVE_POLARITY.htmlconstant._SIDD_POSITIVE_POLARITY.htmlconstant._SIDD_SBYTE_OPS.htmlconstant._SIDD_SWORD_OPS.htmlconstant._SIDD_UBYTE_OPS.htmlconstant._SIDD_UNIT_MASK.htmlconstant._SIDD_UWORD_OPS.htmlconstant._XABORT_CAPACITY.htmlconstant._XABORT_CONFLICT.htmlconstant._XABORT_DEBUG.htmlconstant._XABORT_EXPLICIT.htmlconstant._XABORT_NESTED.htmlconstant._XABORT_RETRY.htmlconstant._XBEGIN_STARTED.htmlconstant._XCR_XFEATURE_ENABLED_MASK.htmlfn._MM_GET_EXCEPTION_MASK.htmlfn._MM_GET_EXCEPTION_STATE.htmlfn._MM_GET_FLUSH_ZERO_MODE.htmlfn._MM_GET_ROUNDING_MODE.htmlfn._MM_SET_EXCEPTION_MASK.htmlfn._MM_SET_EXCEPTION_STATE.htmlfn._MM_SET_FLUSH_ZERO_MODE.htmlfn._MM_SET_ROUNDING_MODE.htmlfn._MM_SHUFFLE.htmlfn._MM_TRANSPOSE4_PS.htmlfn.__cpuid.htmlfn.__cpuid_count.htmlfn.__get_cpuid_max.htmlfn.__rdtscp.htmlfn._addcarry_u32.htmlfn._addcarry_u64.htmlfn._addcarryx_u32.htmlfn._addcarryx_u64.htmlfn._andn_u32.htmlfn._andn_u64.htmlfn._bextr2_u32.htmlfn._bextr2_u64.htmlfn._bextr_u32.htmlfn._bextr_u64.htmlfn._bittest.htmlfn._bittest64.htmlfn._bittestandcomplement.htmlfn._bittestandcomplement64.htmlfn._bittestandreset.htmlfn._bittestandreset64.htmlfn._bittestandset.htmlfn._bittestandset64.htmlfn._blcfill_u32.htmlfn._blcfill_u64.htmlfn._blci_u32.htmlfn._blci_u64.htmlfn._blcic_u32.htmlfn._blcic_u64.htmlfn._blcmsk_u32.htmlfn._blcmsk_u64.htmlfn._blcs_u32.htmlfn._blcs_u64.htmlfn._blsfill_u32.htmlfn._blsfill_u64.htmlfn._blsi_u32.htmlfn._blsi_u64.htmlfn._blsic_u32.htmlfn._blsic_u64.htmlfn._blsmsk_u32.htmlfn._blsmsk_u64.htmlfn._blsr_u32.htmlfn._blsr_u64.htmlfn._bswap.htmlfn._bswap64.htmlfn._bzhi_u32.htmlfn._bzhi_u64.htmlfn._fxrstor.htmlfn._fxrstor64.htmlfn._fxsave.htmlfn._fxsave64.htmlfn._lzcnt_u32.htmlfn._lzcnt_u64.htmlfn._m_empty.htmlfn._m_maskmovq.htmlfn._m_paddb.htmlfn._m_paddd.htmlfn._m_paddsb.htmlfn._m_paddsw.htmlfn._m_paddusb.htmlfn._m_paddusw.htmlfn._m_paddw.htmlfn._m_pavgb.htmlfn._m_pavgw.htmlfn._m_pextrw.htmlfn._m_pinsrw.htmlfn._m_pmaxsw.htmlfn._m_pmaxub.htmlfn._m_pminsw.htmlfn._m_pminub.htmlfn._m_pmovmskb.htmlfn._m_pmulhuw.htmlfn._m_psadbw.htmlfn._m_pshufw.htmlfn._m_psubb.htmlfn._m_psubd.htmlfn._m_psubsb.htmlfn._m_psubsw.htmlfn._m_psubusb.htmlfn._m_psubusw.htmlfn._m_psubw.htmlfn._mm256_abs_epi16.htmlfn._mm256_abs_epi32.htmlfn._mm256_abs_epi8.htmlfn._mm256_add_epi16.htmlfn._mm256_add_epi32.htmlfn._mm256_add_epi64.htmlfn._mm256_add_epi8.htmlfn._mm256_add_pd.htmlfn._mm256_add_ps.htmlfn._mm256_adds_epi16.htmlfn._mm256_adds_epi8.htmlfn._mm256_adds_epu16.htmlfn._mm256_adds_epu8.htmlfn._mm256_addsub_pd.htmlfn._mm256_addsub_ps.htmlfn._mm256_alignr_epi8.htmlfn._mm256_and_pd.htmlfn._mm256_and_ps.htmlfn._mm256_and_si256.htmlfn._mm256_andnot_pd.htmlfn._mm256_andnot_ps.htmlfn._mm256_andnot_si256.htmlfn._mm256_avg_epu16.htmlfn._mm256_avg_epu8.htmlfn._mm256_blend_epi16.htmlfn._mm256_blend_epi32.htmlfn._mm256_blend_pd.htmlfn._mm256_blend_ps.htmlfn._mm256_blendv_epi8.htmlfn._mm256_blendv_pd.htmlfn._mm256_blendv_ps.htmlfn._mm256_broadcast_pd.htmlfn._mm256_broadcast_ps.htmlfn._mm256_broadcast_sd.htmlfn._mm256_broadcast_ss.htmlfn._mm256_broadcastb_epi8.htmlfn._mm256_broadcastd_epi32.htmlfn._mm256_broadcastq_epi64.htmlfn._mm256_broadcastsd_pd.htmlfn._mm256_broadcastsi128_si256.htmlfn._mm256_broadcastss_ps.htmlfn._mm256_broadcastw_epi16.htmlfn._mm256_bslli_epi128.htmlfn._mm256_bsrli_epi128.htmlfn._mm256_castpd128_pd256.htmlfn._mm256_castpd256_pd128.htmlfn._mm256_castpd_ps.htmlfn._mm256_castpd_si256.htmlfn._mm256_castps128_ps256.htmlfn._mm256_castps256_ps128.htmlfn._mm256_castps_pd.htmlfn._mm256_castps_si256.htmlfn._mm256_castsi128_si256.htmlfn._mm256_castsi256_pd.htmlfn._mm256_castsi256_ps.htmlfn._mm256_castsi256_si128.htmlfn._mm256_ceil_pd.htmlfn._mm256_ceil_ps.htmlfn._mm256_cmp_pd.htmlfn._mm256_cmp_ps.htmlfn._mm256_cmpeq_epi16.htmlfn._mm256_cmpeq_epi32.htmlfn._mm256_cmpeq_epi64.htmlfn._mm256_cmpeq_epi8.htmlfn._mm256_cmpgt_epi16.htmlfn._mm256_cmpgt_epi32.htmlfn._mm256_cmpgt_epi64.htmlfn._mm256_cmpgt_epi8.htmlfn._mm256_cvtepi16_epi32.htmlfn._mm256_cvtepi16_epi64.htmlfn._mm256_cvtepi32_epi64.htmlfn._mm256_cvtepi32_pd.htmlfn._mm256_cvtepi32_ps.htmlfn._mm256_cvtepi8_epi16.htmlfn._mm256_cvtepi8_epi32.htmlfn._mm256_cvtepi8_epi64.htmlfn._mm256_cvtepu16_epi32.htmlfn._mm256_cvtepu16_epi64.htmlfn._mm256_cvtepu32_epi64.htmlfn._mm256_cvtepu8_epi16.htmlfn._mm256_cvtepu8_epi32.htmlfn._mm256_cvtepu8_epi64.htmlfn._mm256_cvtpd_epi32.htmlfn._mm256_cvtpd_ps.htmlfn._mm256_cvtph_ps.htmlfn._mm256_cvtps_epi32.htmlfn._mm256_cvtps_pd.htmlfn._mm256_cvtps_ph.htmlfn._mm256_cvtsd_f64.htmlfn._mm256_cvtsi256_si32.htmlfn._mm256_cvtss_f32.htmlfn._mm256_cvttpd_epi32.htmlfn._mm256_cvttps_epi32.htmlfn._mm256_div_pd.htmlfn._mm256_div_ps.htmlfn._mm256_dp_ps.htmlfn._mm256_extract_epi16.htmlfn._mm256_extract_epi32.htmlfn._mm256_extract_epi64.htmlfn._mm256_extract_epi8.htmlfn._mm256_extractf128_pd.htmlfn._mm256_extractf128_ps.htmlfn._mm256_extractf128_si256.htmlfn._mm256_extracti128_si256.htmlfn._mm256_floor_pd.htmlfn._mm256_floor_ps.htmlfn._mm256_fmadd_pd.htmlfn._mm256_fmadd_ps.htmlfn._mm256_fmaddsub_pd.htmlfn._mm256_fmaddsub_ps.htmlfn._mm256_fmsub_pd.htmlfn._mm256_fmsub_ps.htmlfn._mm256_fmsubadd_pd.htmlfn._mm256_fmsubadd_ps.htmlfn._mm256_fnmadd_pd.htmlfn._mm256_fnmadd_ps.htmlfn._mm256_fnmsub_pd.htmlfn._mm256_fnmsub_ps.htmlfn._mm256_hadd_epi16.htmlfn._mm256_hadd_epi32.htmlfn._mm256_hadd_pd.htmlfn._mm256_hadd_ps.htmlfn._mm256_hadds_epi16.htmlfn._mm256_hsub_epi16.htmlfn._mm256_hsub_epi32.htmlfn._mm256_hsub_pd.htmlfn._mm256_hsub_ps.htmlfn._mm256_hsubs_epi16.htmlfn._mm256_i32gather_epi32.htmlfn._mm256_i32gather_epi64.htmlfn._mm256_i32gather_pd.htmlfn._mm256_i32gather_ps.htmlfn._mm256_i64gather_epi32.htmlfn._mm256_i64gather_epi64.htmlfn._mm256_i64gather_pd.htmlfn._mm256_i64gather_ps.htmlfn._mm256_insert_epi16.htmlfn._mm256_insert_epi32.htmlfn._mm256_insert_epi64.htmlfn._mm256_insert_epi8.htmlfn._mm256_insertf128_pd.htmlfn._mm256_insertf128_ps.htmlfn._mm256_insertf128_si256.htmlfn._mm256_inserti128_si256.htmlfn._mm256_lddqu_si256.htmlfn._mm256_load_pd.htmlfn._mm256_load_ps.htmlfn._mm256_load_si256.htmlfn._mm256_loadu2_m128.htmlfn._mm256_loadu2_m128d.htmlfn._mm256_loadu2_m128i.htmlfn._mm256_loadu_pd.htmlfn._mm256_loadu_ps.htmlfn._mm256_loadu_si256.htmlfn._mm256_madd52hi_epu64.htmlfn._mm256_madd52lo_epu64.htmlfn._mm256_madd_epi16.htmlfn._mm256_maddubs_epi16.htmlfn._mm256_mask_i32gather_epi32.htmlfn._mm256_mask_i32gather_epi64.htmlfn._mm256_mask_i32gather_pd.htmlfn._mm256_mask_i32gather_ps.htmlfn._mm256_mask_i64gather_epi32.htmlfn._mm256_mask_i64gather_epi64.htmlfn._mm256_mask_i64gather_pd.htmlfn._mm256_mask_i64gather_ps.htmlfn._mm256_maskload_epi32.htmlfn._mm256_maskload_epi64.htmlfn._mm256_maskload_pd.htmlfn._mm256_maskload_ps.htmlfn._mm256_maskstore_epi32.htmlfn._mm256_maskstore_epi64.htmlfn._mm256_maskstore_pd.htmlfn._mm256_maskstore_ps.htmlfn._mm256_max_epi16.htmlfn._mm256_max_epi32.htmlfn._mm256_max_epi8.htmlfn._mm256_max_epu16.htmlfn._mm256_max_epu32.htmlfn._mm256_max_epu8.htmlfn._mm256_max_pd.htmlfn._mm256_max_ps.htmlfn._mm256_min_epi16.htmlfn._mm256_min_epi32.htmlfn._mm256_min_epi8.htmlfn._mm256_min_epu16.htmlfn._mm256_min_epu32.htmlfn._mm256_min_epu8.htmlfn._mm256_min_pd.htmlfn._mm256_min_ps.htmlfn._mm256_movedup_pd.htmlfn._mm256_movehdup_ps.htmlfn._mm256_moveldup_ps.htmlfn._mm256_movemask_epi8.htmlfn._mm256_movemask_pd.htmlfn._mm256_movemask_ps.htmlfn._mm256_mpsadbw_epu8.htmlfn._mm256_mul_epi32.htmlfn._mm256_mul_epu32.htmlfn._mm256_mul_pd.htmlfn._mm256_mul_ps.htmlfn._mm256_mulhi_epi16.htmlfn._mm256_mulhi_epu16.htmlfn._mm256_mulhrs_epi16.htmlfn._mm256_mullo_epi16.htmlfn._mm256_mullo_epi32.htmlfn._mm256_or_pd.htmlfn._mm256_or_ps.htmlfn._mm256_or_si256.htmlfn._mm256_packs_epi16.htmlfn._mm256_packs_epi32.htmlfn._mm256_packus_epi16.htmlfn._mm256_packus_epi32.htmlfn._mm256_permute2f128_pd.htmlfn._mm256_permute2f128_ps.htmlfn._mm256_permute2f128_si256.htmlfn._mm256_permute2x128_si256.htmlfn._mm256_permute4x64_epi64.htmlfn._mm256_permute4x64_pd.htmlfn._mm256_permute_pd.htmlfn._mm256_permute_ps.htmlfn._mm256_permutevar8x32_epi32.htmlfn._mm256_permutevar8x32_ps.htmlfn._mm256_permutevar_pd.htmlfn._mm256_permutevar_ps.htmlfn._mm256_rcp_ps.htmlfn._mm256_round_pd.htmlfn._mm256_round_ps.htmlfn._mm256_rsqrt_ps.htmlfn._mm256_sad_epu8.htmlfn._mm256_set1_epi16.htmlfn._mm256_set1_epi32.htmlfn._mm256_set1_epi64x.htmlfn._mm256_set1_epi8.htmlfn._mm256_set1_pd.htmlfn._mm256_set1_ps.htmlfn._mm256_set_epi16.htmlfn._mm256_set_epi32.htmlfn._mm256_set_epi64x.htmlfn._mm256_set_epi8.htmlfn._mm256_set_m128.htmlfn._mm256_set_m128d.htmlfn._mm256_set_m128i.htmlfn._mm256_set_pd.htmlfn._mm256_set_ps.htmlfn._mm256_setr_epi16.htmlfn._mm256_setr_epi32.htmlfn._mm256_setr_epi64x.htmlfn._mm256_setr_epi8.htmlfn._mm256_setr_m128.htmlfn._mm256_setr_m128d.htmlfn._mm256_setr_m128i.htmlfn._mm256_setr_pd.htmlfn._mm256_setr_ps.htmlfn._mm256_setzero_pd.htmlfn._mm256_setzero_ps.htmlfn._mm256_setzero_si256.htmlfn._mm256_shuffle_epi32.htmlfn._mm256_shuffle_epi8.htmlfn._mm256_shuffle_pd.htmlfn._mm256_shuffle_ps.htmlfn._mm256_shufflehi_epi16.htmlfn._mm256_shufflelo_epi16.htmlfn._mm256_sign_epi16.htmlfn._mm256_sign_epi32.htmlfn._mm256_sign_epi8.htmlfn._mm256_sll_epi16.htmlfn._mm256_sll_epi32.htmlfn._mm256_sll_epi64.htmlfn._mm256_slli_epi16.htmlfn._mm256_slli_epi32.htmlfn._mm256_slli_epi64.htmlfn._mm256_slli_si256.htmlfn._mm256_sllv_epi32.htmlfn._mm256_sllv_epi64.htmlfn._mm256_sqrt_pd.htmlfn._mm256_sqrt_ps.htmlfn._mm256_sra_epi16.htmlfn._mm256_sra_epi32.htmlfn._mm256_srai_epi16.htmlfn._mm256_srai_epi32.htmlfn._mm256_srav_epi32.htmlfn._mm256_srl_epi16.htmlfn._mm256_srl_epi32.htmlfn._mm256_srl_epi64.htmlfn._mm256_srli_epi16.htmlfn._mm256_srli_epi32.htmlfn._mm256_srli_epi64.htmlfn._mm256_srli_si256.htmlfn._mm256_srlv_epi32.htmlfn._mm256_srlv_epi64.htmlfn._mm256_store_pd.htmlfn._mm256_store_ps.htmlfn._mm256_store_si256.htmlfn._mm256_storeu2_m128.htmlfn._mm256_storeu2_m128d.htmlfn._mm256_storeu2_m128i.htmlfn._mm256_storeu_pd.htmlfn._mm256_storeu_ps.htmlfn._mm256_storeu_si256.htmlfn._mm256_stream_pd.htmlfn._mm256_stream_ps.htmlfn._mm256_stream_si256.htmlfn._mm256_sub_epi16.htmlfn._mm256_sub_epi32.htmlfn._mm256_sub_epi64.htmlfn._mm256_sub_epi8.htmlfn._mm256_sub_pd.htmlfn._mm256_sub_ps.htmlfn._mm256_subs_epi16.htmlfn._mm256_subs_epi8.htmlfn._mm256_subs_epu16.htmlfn._mm256_subs_epu8.htmlfn._mm256_testc_pd.htmlfn._mm256_testc_ps.htmlfn._mm256_testc_si256.htmlfn._mm256_testnzc_pd.htmlfn._mm256_testnzc_ps.htmlfn._mm256_testnzc_si256.htmlfn._mm256_testz_pd.htmlfn._mm256_testz_ps.htmlfn._mm256_testz_si256.htmlfn._mm256_undefined_pd.htmlfn._mm256_undefined_ps.htmlfn._mm256_undefined_si256.htmlfn._mm256_unpackhi_epi16.htmlfn._mm256_unpackhi_epi32.htmlfn._mm256_unpackhi_epi64.htmlfn._mm256_unpackhi_epi8.htmlfn._mm256_unpackhi_pd.htmlfn._mm256_unpackhi_ps.htmlfn._mm256_unpacklo_epi16.htmlfn._mm256_unpacklo_epi32.htmlfn._mm256_unpacklo_epi64.htmlfn._mm256_unpacklo_epi8.htmlfn._mm256_unpacklo_pd.htmlfn._mm256_unpacklo_ps.htmlfn._mm256_xor_pd.htmlfn._mm256_xor_ps.htmlfn._mm256_xor_si256.htmlfn._mm256_zeroall.htmlfn._mm256_zeroupper.htmlfn._mm256_zextpd128_pd256.htmlfn._mm256_zextps128_ps256.htmlfn._mm256_zextsi128_si256.htmlfn._mm512_abs_epi32.htmlfn._mm512_madd52hi_epu64.htmlfn._mm512_madd52lo_epu64.htmlfn._mm512_mask_abs_epi32.htmlfn._mm512_maskz_abs_epi32.htmlfn._mm512_set1_epi64.htmlfn._mm512_setr_epi32.htmlfn._mm512_setzero_si512.htmlfn._mm_abs_epi16.htmlfn._mm_abs_epi32.htmlfn._mm_abs_epi8.htmlfn._mm_abs_pi16.htmlfn._mm_abs_pi32.htmlfn._mm_abs_pi8.htmlfn._mm_add_epi16.htmlfn._mm_add_epi32.htmlfn._mm_add_epi64.htmlfn._mm_add_epi8.htmlfn._mm_add_pd.htmlfn._mm_add_pi16.htmlfn._mm_add_pi32.htmlfn._mm_add_pi8.htmlfn._mm_add_ps.htmlfn._mm_add_sd.htmlfn._mm_add_si64.htmlfn._mm_add_ss.htmlfn._mm_adds_epi16.htmlfn._mm_adds_epi8.htmlfn._mm_adds_epu16.htmlfn._mm_adds_epu8.htmlfn._mm_adds_pi16.htmlfn._mm_adds_pi8.htmlfn._mm_adds_pu16.htmlfn._mm_adds_pu8.htmlfn._mm_addsub_pd.htmlfn._mm_addsub_ps.htmlfn._mm_aesdec_si128.htmlfn._mm_aesdeclast_si128.htmlfn._mm_aesenc_si128.htmlfn._mm_aesenclast_si128.htmlfn._mm_aesimc_si128.htmlfn._mm_aeskeygenassist_si128.htmlfn._mm_alignr_epi8.htmlfn._mm_alignr_pi8.htmlfn._mm_and_pd.htmlfn._mm_and_ps.htmlfn._mm_and_si128.htmlfn._mm_andnot_pd.htmlfn._mm_andnot_ps.htmlfn._mm_andnot_si128.htmlfn._mm_avg_epu16.htmlfn._mm_avg_epu8.htmlfn._mm_avg_pu16.htmlfn._mm_avg_pu8.htmlfn._mm_blend_epi16.htmlfn._mm_blend_epi32.htmlfn._mm_blend_pd.htmlfn._mm_blend_ps.htmlfn._mm_blendv_epi8.htmlfn._mm_blendv_pd.htmlfn._mm_blendv_ps.htmlfn._mm_broadcast_ss.htmlfn._mm_broadcastb_epi8.htmlfn._mm_broadcastd_epi32.htmlfn._mm_broadcastq_epi64.htmlfn._mm_broadcastsd_pd.htmlfn._mm_broadcastss_ps.htmlfn._mm_broadcastw_epi16.htmlfn._mm_bslli_si128.htmlfn._mm_bsrli_si128.htmlfn._mm_castpd_ps.htmlfn._mm_castpd_si128.htmlfn._mm_castps_pd.htmlfn._mm_castps_si128.htmlfn._mm_castsi128_pd.htmlfn._mm_castsi128_ps.htmlfn._mm_ceil_pd.htmlfn._mm_ceil_ps.htmlfn._mm_ceil_sd.htmlfn._mm_ceil_ss.htmlfn._mm_clflush.htmlfn._mm_clmulepi64_si128.htmlfn._mm_cmp_pd.htmlfn._mm_cmp_ps.htmlfn._mm_cmp_sd.htmlfn._mm_cmp_ss.htmlfn._mm_cmpeq_epi16.htmlfn._mm_cmpeq_epi32.htmlfn._mm_cmpeq_epi64.htmlfn._mm_cmpeq_epi8.htmlfn._mm_cmpeq_pd.htmlfn._mm_cmpeq_ps.htmlfn._mm_cmpeq_sd.htmlfn._mm_cmpeq_ss.htmlfn._mm_cmpestra.htmlfn._mm_cmpestrc.htmlfn._mm_cmpestri.htmlfn._mm_cmpestrm.htmlfn._mm_cmpestro.htmlfn._mm_cmpestrs.htmlfn._mm_cmpestrz.htmlfn._mm_cmpge_pd.htmlfn._mm_cmpge_ps.htmlfn._mm_cmpge_sd.htmlfn._mm_cmpge_ss.htmlfn._mm_cmpgt_epi16.htmlfn._mm_cmpgt_epi32.htmlfn._mm_cmpgt_epi64.htmlfn._mm_cmpgt_epi8.htmlfn._mm_cmpgt_pd.htmlfn._mm_cmpgt_pi16.htmlfn._mm_cmpgt_pi32.htmlfn._mm_cmpgt_pi8.htmlfn._mm_cmpgt_ps.htmlfn._mm_cmpgt_sd.htmlfn._mm_cmpgt_ss.htmlfn._mm_cmpistra.htmlfn._mm_cmpistrc.htmlfn._mm_cmpistri.htmlfn._mm_cmpistrm.htmlfn._mm_cmpistro.htmlfn._mm_cmpistrs.htmlfn._mm_cmpistrz.htmlfn._mm_cmple_pd.htmlfn._mm_cmple_ps.htmlfn._mm_cmple_sd.htmlfn._mm_cmple_ss.htmlfn._mm_cmplt_epi16.htmlfn._mm_cmplt_epi32.htmlfn._mm_cmplt_epi8.htmlfn._mm_cmplt_pd.htmlfn._mm_cmplt_ps.htmlfn._mm_cmplt_sd.htmlfn._mm_cmplt_ss.htmlfn._mm_cmpneq_pd.htmlfn._mm_cmpneq_ps.htmlfn._mm_cmpneq_sd.htmlfn._mm_cmpneq_ss.htmlfn._mm_cmpnge_pd.htmlfn._mm_cmpnge_ps.htmlfn._mm_cmpnge_sd.htmlfn._mm_cmpnge_ss.htmlfn._mm_cmpngt_pd.htmlfn._mm_cmpngt_ps.htmlfn._mm_cmpngt_sd.htmlfn._mm_cmpngt_ss.htmlfn._mm_cmpnle_pd.htmlfn._mm_cmpnle_ps.htmlfn._mm_cmpnle_sd.htmlfn._mm_cmpnle_ss.htmlfn._mm_cmpnlt_pd.htmlfn._mm_cmpnlt_ps.htmlfn._mm_cmpnlt_sd.htmlfn._mm_cmpnlt_ss.htmlfn._mm_cmpord_pd.htmlfn._mm_cmpord_ps.htmlfn._mm_cmpord_sd.htmlfn._mm_cmpord_ss.htmlfn._mm_cmpunord_pd.htmlfn._mm_cmpunord_ps.htmlfn._mm_cmpunord_sd.htmlfn._mm_cmpunord_ss.htmlfn._mm_comieq_sd.htmlfn._mm_comieq_ss.htmlfn._mm_comige_sd.htmlfn._mm_comige_ss.htmlfn._mm_comigt_sd.htmlfn._mm_comigt_ss.htmlfn._mm_comile_sd.htmlfn._mm_comile_ss.htmlfn._mm_comilt_sd.htmlfn._mm_comilt_ss.htmlfn._mm_comineq_sd.htmlfn._mm_comineq_ss.htmlfn._mm_crc32_u16.htmlfn._mm_crc32_u32.htmlfn._mm_crc32_u64.htmlfn._mm_crc32_u8.htmlfn._mm_cvt_pi2ps.htmlfn._mm_cvt_ps2pi.htmlfn._mm_cvt_si2ss.htmlfn._mm_cvt_ss2si.htmlfn._mm_cvtepi16_epi32.htmlfn._mm_cvtepi16_epi64.htmlfn._mm_cvtepi32_epi64.htmlfn._mm_cvtepi32_pd.htmlfn._mm_cvtepi32_ps.htmlfn._mm_cvtepi8_epi16.htmlfn._mm_cvtepi8_epi32.htmlfn._mm_cvtepi8_epi64.htmlfn._mm_cvtepu16_epi32.htmlfn._mm_cvtepu16_epi64.htmlfn._mm_cvtepu32_epi64.htmlfn._mm_cvtepu8_epi16.htmlfn._mm_cvtepu8_epi32.htmlfn._mm_cvtepu8_epi64.htmlfn._mm_cvtpd_epi32.htmlfn._mm_cvtpd_pi32.htmlfn._mm_cvtpd_ps.htmlfn._mm_cvtph_ps.htmlfn._mm_cvtpi16_ps.htmlfn._mm_cvtpi32_pd.htmlfn._mm_cvtpi32_ps.htmlfn._mm_cvtpi32x2_ps.htmlfn._mm_cvtpi8_ps.htmlfn._mm_cvtps_epi32.htmlfn._mm_cvtps_pd.htmlfn._mm_cvtps_ph.htmlfn._mm_cvtps_pi16.htmlfn._mm_cvtps_pi32.htmlfn._mm_cvtps_pi8.htmlfn._mm_cvtpu16_ps.htmlfn._mm_cvtpu8_ps.htmlfn._mm_cvtsd_f64.htmlfn._mm_cvtsd_si32.htmlfn._mm_cvtsd_si64.htmlfn._mm_cvtsd_si64x.htmlfn._mm_cvtsd_ss.htmlfn._mm_cvtsi128_si32.htmlfn._mm_cvtsi128_si64.htmlfn._mm_cvtsi128_si64x.htmlfn._mm_cvtsi32_sd.htmlfn._mm_cvtsi32_si128.htmlfn._mm_cvtsi32_si64.htmlfn._mm_cvtsi32_ss.htmlfn._mm_cvtsi64_sd.htmlfn._mm_cvtsi64_si128.htmlfn._mm_cvtsi64_si32.htmlfn._mm_cvtsi64_ss.htmlfn._mm_cvtsi64x_sd.htmlfn._mm_cvtsi64x_si128.htmlfn._mm_cvtss_f32.htmlfn._mm_cvtss_sd.htmlfn._mm_cvtss_si32.htmlfn._mm_cvtss_si64.htmlfn._mm_cvtt_ps2pi.htmlfn._mm_cvtt_ss2si.htmlfn._mm_cvttpd_epi32.htmlfn._mm_cvttpd_pi32.htmlfn._mm_cvttps_epi32.htmlfn._mm_cvttps_pi32.htmlfn._mm_cvttsd_si32.htmlfn._mm_cvttsd_si64.htmlfn._mm_cvttsd_si64x.htmlfn._mm_cvttss_si32.htmlfn._mm_cvttss_si64.htmlfn._mm_div_pd.htmlfn._mm_div_ps.htmlfn._mm_div_sd.htmlfn._mm_div_ss.htmlfn._mm_dp_pd.htmlfn._mm_dp_ps.htmlfn._mm_empty.htmlfn._mm_extract_epi16.htmlfn._mm_extract_epi32.htmlfn._mm_extract_epi64.htmlfn._mm_extract_epi8.htmlfn._mm_extract_pi16.htmlfn._mm_extract_ps.htmlfn._mm_extract_si64.htmlfn._mm_floor_pd.htmlfn._mm_floor_ps.htmlfn._mm_floor_sd.htmlfn._mm_floor_ss.htmlfn._mm_fmadd_pd.htmlfn._mm_fmadd_ps.htmlfn._mm_fmadd_sd.htmlfn._mm_fmadd_ss.htmlfn._mm_fmaddsub_pd.htmlfn._mm_fmaddsub_ps.htmlfn._mm_fmsub_pd.htmlfn._mm_fmsub_ps.htmlfn._mm_fmsub_sd.htmlfn._mm_fmsub_ss.htmlfn._mm_fmsubadd_pd.htmlfn._mm_fmsubadd_ps.htmlfn._mm_fnmadd_pd.htmlfn._mm_fnmadd_ps.htmlfn._mm_fnmadd_sd.htmlfn._mm_fnmadd_ss.htmlfn._mm_fnmsub_pd.htmlfn._mm_fnmsub_ps.htmlfn._mm_fnmsub_sd.htmlfn._mm_fnmsub_ss.htmlfn._mm_getcsr.htmlfn._mm_hadd_epi16.htmlfn._mm_hadd_epi32.htmlfn._mm_hadd_pd.htmlfn._mm_hadd_pi16.htmlfn._mm_hadd_pi32.htmlfn._mm_hadd_ps.htmlfn._mm_hadds_epi16.htmlfn._mm_hadds_pi16.htmlfn._mm_hsub_epi16.htmlfn._mm_hsub_epi32.htmlfn._mm_hsub_pd.htmlfn._mm_hsub_pi16.htmlfn._mm_hsub_pi32.htmlfn._mm_hsub_ps.htmlfn._mm_hsubs_epi16.htmlfn._mm_hsubs_pi16.htmlfn._mm_i32gather_epi32.htmlfn._mm_i32gather_epi64.htmlfn._mm_i32gather_pd.htmlfn._mm_i32gather_ps.htmlfn._mm_i64gather_epi32.htmlfn._mm_i64gather_epi64.htmlfn._mm_i64gather_pd.htmlfn._mm_i64gather_ps.htmlfn._mm_insert_epi16.htmlfn._mm_insert_epi32.htmlfn._mm_insert_epi64.htmlfn._mm_insert_epi8.htmlfn._mm_insert_pi16.htmlfn._mm_insert_ps.htmlfn._mm_insert_si64.htmlfn._mm_lddqu_si128.htmlfn._mm_lfence.htmlfn._mm_load1_pd.htmlfn._mm_load1_ps.htmlfn._mm_load_pd.htmlfn._mm_load_pd1.htmlfn._mm_load_ps.htmlfn._mm_load_ps1.htmlfn._mm_load_sd.htmlfn._mm_load_si128.htmlfn._mm_load_ss.htmlfn._mm_loaddup_pd.htmlfn._mm_loadh_pd.htmlfn._mm_loadh_pi.htmlfn._mm_loadl_epi64.htmlfn._mm_loadl_pd.htmlfn._mm_loadl_pi.htmlfn._mm_loadr_pd.htmlfn._mm_loadr_ps.htmlfn._mm_loadu_pd.htmlfn._mm_loadu_ps.htmlfn._mm_loadu_si128.htmlfn._mm_madd52hi_epu64.htmlfn._mm_madd52lo_epu64.htmlfn._mm_madd_epi16.htmlfn._mm_maddubs_epi16.htmlfn._mm_maddubs_pi16.htmlfn._mm_mask_i32gather_epi32.htmlfn._mm_mask_i32gather_epi64.htmlfn._mm_mask_i32gather_pd.htmlfn._mm_mask_i32gather_ps.htmlfn._mm_mask_i64gather_epi32.htmlfn._mm_mask_i64gather_epi64.htmlfn._mm_mask_i64gather_pd.htmlfn._mm_mask_i64gather_ps.htmlfn._mm_maskload_epi32.htmlfn._mm_maskload_epi64.htmlfn._mm_maskload_pd.htmlfn._mm_maskload_ps.htmlfn._mm_maskmove_si64.htmlfn._mm_maskmoveu_si128.htmlfn._mm_maskstore_epi32.htmlfn._mm_maskstore_epi64.htmlfn._mm_maskstore_pd.htmlfn._mm_maskstore_ps.htmlfn._mm_max_epi16.htmlfn._mm_max_epi32.htmlfn._mm_max_epi8.htmlfn._mm_max_epu16.htmlfn._mm_max_epu32.htmlfn._mm_max_epu8.htmlfn._mm_max_pd.htmlfn._mm_max_pi16.htmlfn._mm_max_ps.htmlfn._mm_max_pu8.htmlfn._mm_max_sd.htmlfn._mm_max_ss.htmlfn._mm_mfence.htmlfn._mm_min_epi16.htmlfn._mm_min_epi32.htmlfn._mm_min_epi8.htmlfn._mm_min_epu16.htmlfn._mm_min_epu32.htmlfn._mm_min_epu8.htmlfn._mm_min_pd.htmlfn._mm_min_pi16.htmlfn._mm_min_ps.htmlfn._mm_min_pu8.htmlfn._mm_min_sd.htmlfn._mm_min_ss.htmlfn._mm_minpos_epu16.htmlfn._mm_move_epi64.htmlfn._mm_move_sd.htmlfn._mm_move_ss.htmlfn._mm_movedup_pd.htmlfn._mm_movehdup_ps.htmlfn._mm_movehl_ps.htmlfn._mm_moveldup_ps.htmlfn._mm_movelh_ps.htmlfn._mm_movemask_epi8.htmlfn._mm_movemask_pd.htmlfn._mm_movemask_pi8.htmlfn._mm_movemask_ps.htmlfn._mm_movepi64_pi64.htmlfn._mm_movpi64_epi64.htmlfn._mm_mpsadbw_epu8.htmlfn._mm_mul_epi32.htmlfn._mm_mul_epu32.htmlfn._mm_mul_pd.htmlfn._mm_mul_ps.htmlfn._mm_mul_sd.htmlfn._mm_mul_ss.htmlfn._mm_mul_su32.htmlfn._mm_mulhi_epi16.htmlfn._mm_mulhi_epu16.htmlfn._mm_mulhi_pu16.htmlfn._mm_mulhrs_epi16.htmlfn._mm_mulhrs_pi16.htmlfn._mm_mullo_epi16.htmlfn._mm_mullo_epi32.htmlfn._mm_mullo_pi16.htmlfn._mm_or_pd.htmlfn._mm_or_ps.htmlfn._mm_or_si128.htmlfn._mm_packs_epi16.htmlfn._mm_packs_epi32.htmlfn._mm_packs_pi16.htmlfn._mm_packs_pi32.htmlfn._mm_packus_epi16.htmlfn._mm_packus_epi32.htmlfn._mm_pause.htmlfn._mm_permute_pd.htmlfn._mm_permute_ps.htmlfn._mm_permutevar_pd.htmlfn._mm_permutevar_ps.htmlfn._mm_prefetch.htmlfn._mm_rcp_ps.htmlfn._mm_rcp_ss.htmlfn._mm_round_pd.htmlfn._mm_round_ps.htmlfn._mm_round_sd.htmlfn._mm_round_ss.htmlfn._mm_rsqrt_ps.htmlfn._mm_rsqrt_ss.htmlfn._mm_sad_epu8.htmlfn._mm_sad_pu8.htmlfn._mm_set1_epi16.htmlfn._mm_set1_epi32.htmlfn._mm_set1_epi64.htmlfn._mm_set1_epi64x.htmlfn._mm_set1_epi8.htmlfn._mm_set1_pd.htmlfn._mm_set1_pi16.htmlfn._mm_set1_pi32.htmlfn._mm_set1_pi8.htmlfn._mm_set1_ps.htmlfn._mm_set_epi16.htmlfn._mm_set_epi32.htmlfn._mm_set_epi64.htmlfn._mm_set_epi64x.htmlfn._mm_set_epi8.htmlfn._mm_set_pd.htmlfn._mm_set_pd1.htmlfn._mm_set_pi16.htmlfn._mm_set_pi32.htmlfn._mm_set_pi8.htmlfn._mm_set_ps.htmlfn._mm_set_ps1.htmlfn._mm_set_sd.htmlfn._mm_set_ss.htmlfn._mm_setcsr.htmlfn._mm_setr_epi16.htmlfn._mm_setr_epi32.htmlfn._mm_setr_epi64.htmlfn._mm_setr_epi8.htmlfn._mm_setr_pd.htmlfn._mm_setr_pi16.htmlfn._mm_setr_pi32.htmlfn._mm_setr_pi8.htmlfn._mm_setr_ps.htmlfn._mm_setzero_pd.htmlfn._mm_setzero_ps.htmlfn._mm_setzero_si128.htmlfn._mm_setzero_si64.htmlfn._mm_sfence.htmlfn._mm_sha1msg1_epu32.htmlfn._mm_sha1msg2_epu32.htmlfn._mm_sha1nexte_epu32.htmlfn._mm_sha1rnds4_epu32.htmlfn._mm_sha256msg1_epu32.htmlfn._mm_sha256msg2_epu32.htmlfn._mm_sha256rnds2_epu32.htmlfn._mm_shuffle_epi32.htmlfn._mm_shuffle_epi8.htmlfn._mm_shuffle_pd.htmlfn._mm_shuffle_pi16.htmlfn._mm_shuffle_pi8.htmlfn._mm_shuffle_ps.htmlfn._mm_shufflehi_epi16.htmlfn._mm_shufflelo_epi16.htmlfn._mm_sign_epi16.htmlfn._mm_sign_epi32.htmlfn._mm_sign_epi8.htmlfn._mm_sign_pi16.htmlfn._mm_sign_pi32.htmlfn._mm_sign_pi8.htmlfn._mm_sll_epi16.htmlfn._mm_sll_epi32.htmlfn._mm_sll_epi64.htmlfn._mm_slli_epi16.htmlfn._mm_slli_epi32.htmlfn._mm_slli_epi64.htmlfn._mm_slli_si128.htmlfn._mm_sllv_epi32.htmlfn._mm_sllv_epi64.htmlfn._mm_sqrt_pd.htmlfn._mm_sqrt_ps.htmlfn._mm_sqrt_sd.htmlfn._mm_sqrt_ss.htmlfn._mm_sra_epi16.htmlfn._mm_sra_epi32.htmlfn._mm_srai_epi16.htmlfn._mm_srai_epi32.htmlfn._mm_srav_epi32.htmlfn._mm_srl_epi16.htmlfn._mm_srl_epi32.htmlfn._mm_srl_epi64.htmlfn._mm_srli_epi16.htmlfn._mm_srli_epi32.htmlfn._mm_srli_epi64.htmlfn._mm_srli_si128.htmlfn._mm_srlv_epi32.htmlfn._mm_srlv_epi64.htmlfn._mm_store1_pd.htmlfn._mm_store1_ps.htmlfn._mm_store_pd.htmlfn._mm_store_pd1.htmlfn._mm_store_ps.htmlfn._mm_store_ps1.htmlfn._mm_store_sd.htmlfn._mm_store_si128.htmlfn._mm_store_ss.htmlfn._mm_storeh_pd.htmlfn._mm_storeh_pi.htmlfn._mm_storel_epi64.htmlfn._mm_storel_pd.htmlfn._mm_storel_pi.htmlfn._mm_storer_pd.htmlfn._mm_storer_ps.htmlfn._mm_storeu_pd.htmlfn._mm_storeu_ps.htmlfn._mm_storeu_si128.htmlfn._mm_stream_pd.htmlfn._mm_stream_pi.htmlfn._mm_stream_ps.htmlfn._mm_stream_sd.htmlfn._mm_stream_si128.htmlfn._mm_stream_si32.htmlfn._mm_stream_si64.htmlfn._mm_stream_ss.htmlfn._mm_sub_epi16.htmlfn._mm_sub_epi32.htmlfn._mm_sub_epi64.htmlfn._mm_sub_epi8.htmlfn._mm_sub_pd.htmlfn._mm_sub_pi16.htmlfn._mm_sub_pi32.htmlfn._mm_sub_pi8.htmlfn._mm_sub_ps.htmlfn._mm_sub_sd.htmlfn._mm_sub_si64.htmlfn._mm_sub_ss.htmlfn._mm_subs_epi16.htmlfn._mm_subs_epi8.htmlfn._mm_subs_epu16.htmlfn._mm_subs_epu8.htmlfn._mm_subs_pi16.htmlfn._mm_subs_pi8.htmlfn._mm_subs_pu16.htmlfn._mm_subs_pu8.htmlfn._mm_test_all_ones.htmlfn._mm_test_all_zeros.htmlfn._mm_test_mix_ones_zeros.htmlfn._mm_testc_pd.htmlfn._mm_testc_ps.htmlfn._mm_testc_si128.htmlfn._mm_testnzc_pd.htmlfn._mm_testnzc_ps.htmlfn._mm_testnzc_si128.htmlfn._mm_testz_pd.htmlfn._mm_testz_ps.htmlfn._mm_testz_si128.htmlfn._mm_tzcnt_32.htmlfn._mm_tzcnt_64.htmlfn._mm_ucomieq_sd.htmlfn._mm_ucomieq_ss.htmlfn._mm_ucomige_sd.htmlfn._mm_ucomige_ss.htmlfn._mm_ucomigt_sd.htmlfn._mm_ucomigt_ss.htmlfn._mm_ucomile_sd.htmlfn._mm_ucomile_ss.htmlfn._mm_ucomilt_sd.htmlfn._mm_ucomilt_ss.htmlfn._mm_ucomineq_sd.htmlfn._mm_ucomineq_ss.htmlfn._mm_undefined_pd.htmlfn._mm_undefined_ps.htmlfn._mm_undefined_si128.htmlfn._mm_unpackhi_epi16.htmlfn._mm_unpackhi_epi32.htmlfn._mm_unpackhi_epi64.htmlfn._mm_unpackhi_epi8.htmlfn._mm_unpackhi_pd.htmlfn._mm_unpackhi_pi16.htmlfn._mm_unpackhi_pi32.htmlfn._mm_unpackhi_pi8.htmlfn._mm_unpackhi_ps.htmlfn._mm_unpacklo_epi16.htmlfn._mm_unpacklo_epi32.htmlfn._mm_unpacklo_epi64.htmlfn._mm_unpacklo_epi8.htmlfn._mm_unpacklo_pd.htmlfn._mm_unpacklo_pi16.htmlfn._mm_unpacklo_pi32.htmlfn._mm_unpacklo_pi8.htmlfn._mm_unpacklo_ps.htmlfn._mm_xor_pd.htmlfn._mm_xor_ps.htmlfn._mm_xor_si128.htmlfn._mulx_u32.htmlfn._mulx_u64.htmlfn._pdep_u32.htmlfn._pdep_u64.htmlfn._pext_u32.htmlfn._pext_u64.htmlfn._popcnt32.htmlfn._popcnt64.htmlfn._rdrand16_step.htmlfn._rdrand32_step.htmlfn._rdrand64_step.htmlfn._rdseed16_step.htmlfn._rdseed32_step.htmlfn._rdseed64_step.htmlfn._rdtsc.htmlfn._subborrow_u32.htmlfn._subborrow_u64.htmlfn._t1mskc_u32.htmlfn._t1mskc_u64.htmlfn._tzcnt_u32.htmlfn._tzcnt_u64.htmlfn._tzmsk_u32.htmlfn._tzmsk_u64.htmlfn._xabort.htmlfn._xabort_code.htmlfn._xbegin.htmlfn._xend.htmlfn._xgetbv.htmlfn._xrstor.htmlfn._xrstor64.htmlfn._xrstors.htmlfn._xrstors64.htmlfn._xsave.htmlfn._xsave64.htmlfn._xsavec.htmlfn._xsavec64.htmlfn._xsaveopt.htmlfn._xsaveopt64.htmlfn._xsaves.htmlfn._xsaves64.htmlfn._xsetbv.htmlfn._xtest.htmlfn.cmpxchg16b.htmlfn.has_cpuid.htmlfn.ud2.htmlhas_cpuid.v.htmlindex.htmlsidebar-items.jsstruct.CpuidResult.htmlstruct.__m128.htmlstruct.__m128d.htmlstruct.__m128i.htmlstruct.__m256.htmlstruct.__m256d.htmlstruct.__m256i.htmlstruct.__m512.htmlstruct.__m512d.htmlstruct.__m512i.htmlstruct.__m64.htmltype.__mmask16.htmlud2.v.htmlarrayFixedSizeArray.t.htmlIntoIter.t.htmlLengthAtMost32.t.htmlTryFromSliceError.t.htmlindex.htmliterIntoIter.t.htmlstruct.IntoIter.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.TryFromSliceError.htmltrait.FixedSizeArray.htmltrait.LengthAtMost32.htmlasciiEscapeDefault.t.htmlescape_default.v.htmlfn.escape_default.htmlindex.htmlsidebar-items.jsstruct.EscapeDefault.htmlasm.m.htmlassert.m.htmlassert_eq.m.htmlassert_ne.m.htmlbench.m.htmlborrowBorrow.t.htmlBorrowMut.t.htmlindex.htmlsidebar-items.jstrait.Borrow.htmltrait.BorrowMut.htmlcellBorrowError.t.htmlBorrowMutError.t.htmlCell.t.htmlRef.t.htmlRefCell.t.htmlRefMut.t.htmlUnsafeCell.t.htmlindex.htmlsidebar-items.jsstruct.BorrowError.htmlstruct.BorrowMutError.htmlstruct.Cell.htmlstruct.Ref.htmlstruct.RefCell.htmlstruct.RefMut.htmlstruct.UnsafeCell.htmlcfg.m.htmlcharCharTryFromError.t.htmlDecodeUtf16.t.htmlDecodeUtf16Error.t.htmlEscapeDebug.t.htmlEscapeDefault.t.htmlEscapeUnicode.t.htmlMAX.v.htmlParseCharError.t.htmlREPLACEMENT_CHARACTER.v.htmlToLowercase.t.htmlToUppercase.t.htmlUnicodeVersion.t.htmlconstant.MAX.htmlconstant.REPLACEMENT_CHARACTER.htmlconvertCharTryFromError.t.htmlParseCharError.t.htmlfn.from_digit.htmlfn.from_u32.htmlfn.from_u32_unchecked.htmlfrom_digit.v.htmlfrom_u32.v.htmlfrom_u32_unchecked.v.htmlstruct.CharTryFromError.htmlstruct.ParseCharError.htmldecodeDecodeUtf16.t.htmlDecodeUtf16Error.t.htmldecode_utf16.v.htmlfn.decode_utf16.htmlstruct.DecodeUtf16.htmlstruct.DecodeUtf16Error.htmldecode_utf16.v.htmlfn.decode_utf16.htmlfn.from_digit.htmlfn.from_u32.htmlfn.from_u32_unchecked.htmlfrom_digit.v.htmlfrom_u32.v.htmlfrom_u32_unchecked.v.htmlindex.htmlsidebar-items.jsstruct.CharTryFromError.htmlstruct.DecodeUtf16.htmlstruct.DecodeUtf16Error.htmlstruct.EscapeDebug.htmlstruct.EscapeDefault.htmlstruct.EscapeUnicode.htmlstruct.ParseCharError.htmlstruct.ToLowercase.htmlstruct.ToUppercase.htmlstruct.UnicodeVersion.htmlcloneClone.t.htmlindex.htmlsidebar-items.jstrait.Clone.htmlcmpEq.t.htmlOrd.t.htmlOrdering.t.htmlPartialEq.t.htmlPartialOrd.t.htmlReverse.t.htmlenum.Ordering.htmlfn.max.htmlfn.max_by.htmlfn.max_by_key.htmlfn.min.htmlfn.min_by.htmlfn.min_by_key.htmlindex.htmlmax.v.htmlmax_by.v.htmlmax_by_key.v.htmlmin.v.htmlmin_by.v.htmlmin_by_key.v.htmlsidebar-items.jsstruct.Reverse.htmltrait.Eq.htmltrait.Ord.htmltrait.PartialEq.htmltrait.PartialOrd.htmlcolumn.m.htmlcompile_error.m.htmlconcat.m.htmlconcat_idents.m.htmlconvertAsMut.t.htmlAsRef.t.htmlFloatToInt.t.htmlFrom.t.htmlInfallible.t.htmlInto.t.htmlTryFrom.t.htmlTryInto.t.htmlenum.Infallible.htmlfn.identity.htmlidentity.v.htmlindex.htmlnumFloatToInt.t.htmltrait.FloatToInt.htmlsidebar-items.jstrait.AsMut.htmltrait.AsRef.htmltrait.FloatToInt.htmltrait.From.htmltrait.Into.htmltrait.TryFrom.htmltrait.TryInto.htmlcore_archaarch64brk.v.htmlcrc__crc32cd.v.html__crc32d.v.htmlfn.__crc32cd.htmlfn.__crc32d.htmlcryptofn.vaesdq_u8.htmlfn.vaeseq_u8.htmlfn.vaesimcq_u8.htmlfn.vaesmcq_u8.htmlfn.vsha1cq_u32.htmlfn.vsha1h_u32.htmlfn.vsha1mq_u32.htmlfn.vsha1pq_u32.htmlfn.vsha1su0q_u32.htmlfn.vsha1su1q_u32.htmlfn.vsha256h2q_u32.htmlfn.vsha256hq_u32.htmlfn.vsha256su0q_u32.htmlfn.vsha256su1q_u32.htmlvaesdq_u8.v.htmlvaeseq_u8.v.htmlvaesimcq_u8.v.htmlvaesmcq_u8.v.htmlvsha1cq_u32.v.htmlvsha1h_u32.v.htmlvsha1mq_u32.v.htmlvsha1pq_u32.v.htmlvsha1su0q_u32.v.htmlvsha1su1q_u32.v.htmlvsha256h2q_u32.v.htmlvsha256hq_u32.v.htmlvsha256su0q_u32.v.htmlvsha256su1q_u32.v.htmlfn.brk.htmlneonfloat64x1_t.t.htmlfloat64x2_t.t.htmlfn.vadd_f64.htmlfn.vaddd_s64.htmlfn.vaddd_u64.htmlfn.vaddq_f64.htmlfn.vcombine_f32.htmlfn.vcombine_f64.htmlfn.vcombine_p16.htmlfn.vcombine_p64.htmlfn.vcombine_p8.htmlfn.vcombine_s16.htmlfn.vcombine_s32.htmlfn.vcombine_s64.htmlfn.vcombine_s8.htmlfn.vcombine_u16.htmlfn.vcombine_u32.htmlfn.vcombine_u64.htmlfn.vcombine_u8.htmlfn.vmaxv_f32.htmlfn.vmaxv_s16.htmlfn.vmaxv_s32.htmlfn.vmaxv_s8.htmlfn.vmaxv_u16.htmlfn.vmaxv_u32.htmlfn.vmaxv_u8.htmlfn.vmaxvq_f32.htmlfn.vmaxvq_f64.htmlfn.vmaxvq_s16.htmlfn.vmaxvq_s32.htmlfn.vmaxvq_s8.htmlfn.vmaxvq_u16.htmlfn.vmaxvq_u32.htmlfn.vmaxvq_u8.htmlfn.vminv_f32.htmlfn.vminv_s16.htmlfn.vminv_s32.htmlfn.vminv_s8.htmlfn.vminv_u16.htmlfn.vminv_u32.htmlfn.vminv_u8.htmlfn.vminvq_f32.htmlfn.vminvq_f64.htmlfn.vminvq_s16.htmlfn.vminvq_s32.htmlfn.vminvq_s8.htmlfn.vminvq_u16.htmlfn.vminvq_u32.htmlfn.vminvq_u8.htmlfn.vmull_p64.htmlfn.vpaddq_u8.htmlfn.vpmaxq_f32.htmlfn.vpmaxq_f64.htmlfn.vpmaxq_s16.htmlfn.vpmaxq_s32.htmlfn.vpmaxq_s8.htmlfn.vpmaxq_u16.htmlfn.vpmaxq_u32.htmlfn.vpmaxq_u8.htmlfn.vpminq_f32.htmlfn.vpminq_f64.htmlfn.vpminq_s16.htmlfn.vpminq_s32.htmlfn.vpminq_s8.htmlfn.vpminq_u16.htmlfn.vpminq_u32.htmlfn.vpminq_u8.htmlgeneratedfn.vceq_f64.htmlfn.vceq_p64.htmlfn.vceq_s64.htmlfn.vceq_u64.htmlfn.vceqq_f64.htmlfn.vceqq_p64.htmlfn.vceqq_s64.htmlfn.vceqq_u64.htmlfn.vcge_f64.htmlfn.vcge_s64.htmlfn.vcge_u64.htmlfn.vcgeq_f64.htmlfn.vcgeq_s64.htmlfn.vcgeq_u64.htmlfn.vcgt_f64.htmlfn.vcgt_s64.htmlfn.vcgt_u64.htmlfn.vcgtq_f64.htmlfn.vcgtq_s64.htmlfn.vcgtq_u64.htmlfn.vcle_f64.htmlfn.vcle_s64.htmlfn.vcle_u64.htmlfn.vcleq_f64.htmlfn.vcleq_s64.htmlfn.vcleq_u64.htmlfn.vclt_f64.htmlfn.vclt_s64.htmlfn.vclt_u64.htmlfn.vcltq_f64.htmlfn.vcltq_s64.htmlfn.vcltq_u64.htmlfn.vmul_f64.htmlfn.vmulq_f64.htmlfn.vsub_f64.htmlfn.vsubq_f64.htmlvceq_f64.v.htmlvceq_p64.v.htmlvceq_s64.v.htmlvceq_u64.v.htmlvceqq_f64.v.htmlvceqq_p64.v.htmlvceqq_s64.v.htmlvceqq_u64.v.htmlvcge_f64.v.htmlvcge_s64.v.htmlvcge_u64.v.htmlvcgeq_f64.v.htmlvcgeq_s64.v.htmlvcgeq_u64.v.htmlvcgt_f64.v.htmlvcgt_s64.v.htmlvcgt_u64.v.htmlvcgtq_f64.v.htmlvcgtq_s64.v.htmlvcgtq_u64.v.htmlvcle_f64.v.htmlvcle_s64.v.htmlvcle_u64.v.htmlvcleq_f64.v.htmlvcleq_s64.v.htmlvcleq_u64.v.htmlvclt_f64.v.htmlvclt_s64.v.htmlvclt_u64.v.htmlvcltq_f64.v.htmlvcltq_s64.v.htmlvcltq_u64.v.htmlvmul_f64.v.htmlvmulq_f64.v.htmlvsub_f64.v.htmlvsubq_f64.v.htmlint8x16x2_t.t.htmlint8x16x3_t.t.htmlint8x16x4_t.t.htmlpoly128_t.t.htmlpoly64_t.t.htmlpoly64x1_t.t.htmlpoly64x2_t.t.htmlpoly8x16x2_t.t.htmlpoly8x16x3_t.t.htmlpoly8x16x4_t.t.htmlstruct.float64x1_t.htmlstruct.float64x2_t.htmlstruct.int8x16x2_t.htmlstruct.int8x16x3_t.htmlstruct.int8x16x4_t.htmlstruct.poly128_t.htmlstruct.poly64_t.htmlstruct.poly64x1_t.htmlstruct.poly64x2_t.htmlstruct.poly8x16x2_t.htmlstruct.poly8x16x3_t.htmlstruct.poly8x16x4_t.htmlstruct.uint8x16x2_t.htmlstruct.uint8x16x3_t.htmlstruct.uint8x16x4_t.htmluint8x16x2_t.t.htmluint8x16x3_t.t.htmluint8x16x4_t.t.htmlvadd_f64.v.htmlvaddd_s64.v.htmlvaddd_u64.v.htmlvaddq_f64.v.htmlvcombine_f32.v.htmlvcombine_f64.v.htmlvcombine_p16.v.htmlvcombine_p64.v.htmlvcombine_p8.v.htmlvcombine_s16.v.htmlvcombine_s32.v.htmlvcombine_s64.v.htmlvcombine_s8.v.htmlvcombine_u16.v.htmlvcombine_u32.v.htmlvcombine_u64.v.htmlvcombine_u8.v.htmlvmaxv_f32.v.htmlvmaxv_s16.v.htmlvmaxv_s32.v.htmlvmaxv_s8.v.htmlvmaxv_u16.v.htmlvmaxv_u32.v.htmlvmaxv_u8.v.htmlvmaxvq_f32.v.htmlvmaxvq_f64.v.htmlvmaxvq_s16.v.htmlvmaxvq_s32.v.htmlvmaxvq_s8.v.htmlvmaxvq_u16.v.htmlvmaxvq_u32.v.htmlvmaxvq_u8.v.htmlvminv_f32.v.htmlvminv_s16.v.htmlvminv_s32.v.htmlvminv_s8.v.htmlvminv_u16.v.htmlvminv_u32.v.htmlvminv_u8.v.htmlvminvq_f32.v.htmlvminvq_f64.v.htmlvminvq_s16.v.htmlvminvq_s32.v.htmlvminvq_s8.v.htmlvminvq_u16.v.htmlvminvq_u32.v.htmlvminvq_u8.v.htmlvmull_p64.v.htmlvpaddq_u8.v.htmlvpmaxq_f32.v.htmlvpmaxq_f64.v.htmlvpmaxq_s16.v.htmlvpmaxq_s32.v.htmlvpmaxq_s8.v.htmlvpmaxq_u16.v.htmlvpmaxq_u32.v.htmlvpmaxq_u8.v.htmlvpminq_f32.v.htmlvpminq_f64.v.htmlvpminq_s16.v.htmlvpminq_s32.v.htmlvpminq_s8.v.htmlvpminq_u16.v.htmlvpminq_u32.v.htmlvpminq_u8.v.htmlv8_cls_u32.v.html_cls_u64.v.html_clz_u64.v.html_rbit_u64.v.html_rev_u64.v.htmlfn._cls_u32.htmlfn._cls_u64.htmlfn._clz_u64.htmlfn._rbit_u64.htmlfn._rev_u64.htmlaclebarrier__dmb.v.html__dsb.v.html__isb.v.htmlcp15SY.t.htmlstruct.SY.htmlfn.__dmb.htmlfn.__dsb.htmlfn.__isb.htmlhints__nop.v.htmlfn.__nop.htmlregisters__rsr.v.html__rsrp.v.html__wsr.v.html__wsrp.v.htmlaarch32APSR.t.htmlstruct.APSR.htmlfn.__rsr.htmlfn.__rsrp.htmlfn.__wsr.htmlfn.__wsrp.htmlarchaarch64index.htmlarmindex.htmlindex.htmlmipsindex.htmlmips64index.htmlnvptxindex.htmlpowerpcindex.htmlpowerpc64index.htmlwasm32index.htmlx86index.htmlx86_64index.htmlarmarmclang__breakpoint.v.htmlfn.__breakpoint.htmlneonfloat32x2_t.t.htmlfloat32x4_t.t.htmlfn.vadd_f32.htmlfn.vadd_s16.htmlfn.vadd_s32.htmlfn.vadd_s8.htmlfn.vadd_u16.htmlfn.vadd_u32.htmlfn.vadd_u8.htmlfn.vaddl_s16.htmlfn.vaddl_s32.htmlfn.vaddl_s8.htmlfn.vaddl_u16.htmlfn.vaddl_u32.htmlfn.vaddl_u8.htmlfn.vaddq_f32.htmlfn.vaddq_s16.htmlfn.vaddq_s32.htmlfn.vaddq_s64.htmlfn.vaddq_s8.htmlfn.vaddq_u16.htmlfn.vaddq_u32.htmlfn.vaddq_u64.htmlfn.vaddq_u8.htmlfn.vdupq_n_s8.htmlfn.vdupq_n_u8.htmlfn.vextq_s8.htmlfn.vextq_u8.htmlfn.vget_lane_u64.htmlfn.vget_lane_u8.htmlfn.vgetq_lane_u16.htmlfn.vgetq_lane_u32.htmlfn.vgetq_lane_u64.htmlfn.vld1q_s8.htmlfn.vld1q_u8.htmlfn.vmovl_s16.htmlfn.vmovl_s32.htmlfn.vmovl_s8.htmlfn.vmovl_u16.htmlfn.vmovl_u32.htmlfn.vmovl_u8.htmlfn.vmovn_s16.htmlfn.vmovn_s32.htmlfn.vmovn_s64.htmlfn.vmovn_u16.htmlfn.vmovn_u32.htmlfn.vmovn_u64.htmlfn.vmovq_n_u8.htmlfn.vmvn_p8.htmlfn.vmvn_s16.htmlfn.vmvn_s32.htmlfn.vmvn_s8.htmlfn.vmvn_u16.htmlfn.vmvn_u32.htmlfn.vmvn_u8.htmlfn.vmvnq_p8.htmlfn.vmvnq_s16.htmlfn.vmvnq_s32.htmlfn.vmvnq_s8.htmlfn.vmvnq_u16.htmlfn.vmvnq_u32.htmlfn.vmvnq_u8.htmlfn.vpmax_f32.htmlfn.vpmax_s16.htmlfn.vpmax_s32.htmlfn.vpmax_s8.htmlfn.vpmax_u16.htmlfn.vpmax_u32.htmlfn.vpmax_u8.htmlfn.vpmin_f32.htmlfn.vpmin_s16.htmlfn.vpmin_s32.htmlfn.vpmin_s8.htmlfn.vpmin_u16.htmlfn.vpmin_u32.htmlfn.vpmin_u8.htmlfn.vqmovn_u64.htmlfn.vreinterpret_u64_u32.htmlfn.vreinterpretq_s8_u8.htmlfn.vreinterpretq_u16_u8.htmlfn.vreinterpretq_u32_u8.htmlfn.vreinterpretq_u64_u8.htmlfn.vreinterpretq_u8_s8.htmlfn.vrsqrte_f32.htmlfn.vshlq_n_u8.htmlfn.vshrq_n_u8.htmlgeneratedfn.vand_s16.htmlfn.vand_s32.htmlfn.vand_s64.htmlfn.vand_s8.htmlfn.vand_u16.htmlfn.vand_u32.htmlfn.vand_u64.htmlfn.vand_u8.htmlfn.vandq_s16.htmlfn.vandq_s32.htmlfn.vandq_s64.htmlfn.vandq_s8.htmlfn.vandq_u16.htmlfn.vandq_u32.htmlfn.vandq_u64.htmlfn.vandq_u8.htmlfn.vceq_f32.htmlfn.vceq_s16.htmlfn.vceq_s32.htmlfn.vceq_s8.htmlfn.vceq_u16.htmlfn.vceq_u32.htmlfn.vceq_u8.htmlfn.vceqq_f32.htmlfn.vceqq_s16.htmlfn.vceqq_s32.htmlfn.vceqq_s8.htmlfn.vceqq_u16.htmlfn.vceqq_u32.htmlfn.vceqq_u8.htmlfn.vcge_f32.htmlfn.vcge_s16.htmlfn.vcge_s32.htmlfn.vcge_s8.htmlfn.vcge_u16.htmlfn.vcge_u32.htmlfn.vcge_u8.htmlfn.vcgeq_f32.htmlfn.vcgeq_s16.htmlfn.vcgeq_s32.htmlfn.vcgeq_s8.htmlfn.vcgeq_u16.htmlfn.vcgeq_u32.htmlfn.vcgeq_u8.htmlfn.vcgt_f32.htmlfn.vcgt_s16.htmlfn.vcgt_s32.htmlfn.vcgt_s8.htmlfn.vcgt_u16.htmlfn.vcgt_u32.htmlfn.vcgt_u8.htmlfn.vcgtq_f32.htmlfn.vcgtq_s16.htmlfn.vcgtq_s32.htmlfn.vcgtq_s8.htmlfn.vcgtq_u16.htmlfn.vcgtq_u32.htmlfn.vcgtq_u8.htmlfn.vcle_f32.htmlfn.vcle_s16.htmlfn.vcle_s32.htmlfn.vcle_s8.htmlfn.vcle_u16.htmlfn.vcle_u32.htmlfn.vcle_u8.htmlfn.vcleq_f32.htmlfn.vcleq_s16.htmlfn.vcleq_s32.htmlfn.vcleq_s8.htmlfn.vcleq_u16.htmlfn.vcleq_u32.htmlfn.vcleq_u8.htmlfn.vclt_f32.htmlfn.vclt_s16.htmlfn.vclt_s32.htmlfn.vclt_s8.htmlfn.vclt_u16.htmlfn.vclt_u32.htmlfn.vclt_u8.htmlfn.vcltq_f32.htmlfn.vcltq_s16.htmlfn.vcltq_s32.htmlfn.vcltq_s8.htmlfn.vcltq_u16.htmlfn.vcltq_u32.htmlfn.vcltq_u8.htmlfn.veor_s16.htmlfn.veor_s32.htmlfn.veor_s64.htmlfn.veor_s8.htmlfn.veor_u16.htmlfn.veor_u32.htmlfn.veor_u64.htmlfn.veor_u8.htmlfn.veorq_s16.htmlfn.veorq_s32.htmlfn.veorq_s64.htmlfn.veorq_s8.htmlfn.veorq_u16.htmlfn.veorq_u32.htmlfn.veorq_u64.htmlfn.veorq_u8.htmlfn.vhadd_s16.htmlfn.vhadd_s32.htmlfn.vhadd_s8.htmlfn.vhadd_u16.htmlfn.vhadd_u32.htmlfn.vhadd_u8.htmlfn.vhaddq_s16.htmlfn.vhaddq_s32.htmlfn.vhaddq_s8.htmlfn.vhaddq_u16.htmlfn.vhaddq_u32.htmlfn.vhaddq_u8.htmlfn.vhsub_s16.htmlfn.vhsub_s32.htmlfn.vhsub_s8.htmlfn.vhsub_u16.htmlfn.vhsub_u32.htmlfn.vhsub_u8.htmlfn.vhsubq_s16.htmlfn.vhsubq_s32.htmlfn.vhsubq_s8.htmlfn.vhsubq_u16.htmlfn.vhsubq_u32.htmlfn.vhsubq_u8.htmlfn.vmul_f32.htmlfn.vmul_s16.htmlfn.vmul_s32.htmlfn.vmul_s8.htmlfn.vmul_u16.htmlfn.vmul_u32.htmlfn.vmul_u8.htmlfn.vmulq_f32.htmlfn.vmulq_s16.htmlfn.vmulq_s32.htmlfn.vmulq_s8.htmlfn.vmulq_u16.htmlfn.vmulq_u32.htmlfn.vmulq_u8.htmlfn.vorr_s16.htmlfn.vorr_s32.htmlfn.vorr_s64.htmlfn.vorr_s8.htmlfn.vorr_u16.htmlfn.vorr_u32.htmlfn.vorr_u64.htmlfn.vorr_u8.htmlfn.vorrq_s16.htmlfn.vorrq_s32.htmlfn.vorrq_s64.htmlfn.vorrq_s8.htmlfn.vorrq_u16.htmlfn.vorrq_u32.htmlfn.vorrq_u64.htmlfn.vorrq_u8.htmlfn.vqadd_s16.htmlfn.vqadd_s32.htmlfn.vqadd_s8.htmlfn.vqadd_u16.htmlfn.vqadd_u32.htmlfn.vqadd_u8.htmlfn.vqaddq_s16.htmlfn.vqaddq_s32.htmlfn.vqaddq_s8.htmlfn.vqaddq_u16.htmlfn.vqaddq_u32.htmlfn.vqaddq_u8.htmlfn.vqsub_s16.htmlfn.vqsub_s32.htmlfn.vqsub_s8.htmlfn.vqsub_u16.htmlfn.vqsub_u32.htmlfn.vqsub_u8.htmlfn.vqsubq_s16.htmlfn.vqsubq_s32.htmlfn.vqsubq_s8.htmlfn.vqsubq_u16.htmlfn.vqsubq_u32.htmlfn.vqsubq_u8.htmlfn.vrhadd_s16.htmlfn.vrhadd_s32.htmlfn.vrhadd_s8.htmlfn.vrhadd_u16.htmlfn.vrhadd_u32.htmlfn.vrhadd_u8.htmlfn.vrhaddq_s16.htmlfn.vrhaddq_s32.htmlfn.vrhaddq_s8.htmlfn.vrhaddq_u16.htmlfn.vrhaddq_u32.htmlfn.vrhaddq_u8.htmlfn.vsub_f32.htmlfn.vsub_s16.htmlfn.vsub_s32.htmlfn.vsub_s64.htmlfn.vsub_s8.htmlfn.vsub_u16.htmlfn.vsub_u32.htmlfn.vsub_u64.htmlfn.vsub_u8.htmlfn.vsubq_f32.htmlfn.vsubq_s16.htmlfn.vsubq_s32.htmlfn.vsubq_s64.htmlfn.vsubq_s8.htmlfn.vsubq_u16.htmlfn.vsubq_u32.htmlfn.vsubq_u64.htmlfn.vsubq_u8.htmlvand_s16.v.htmlvand_s32.v.htmlvand_s64.v.htmlvand_s8.v.htmlvand_u16.v.htmlvand_u32.v.htmlvand_u64.v.htmlvand_u8.v.htmlvandq_s16.v.htmlvandq_s32.v.htmlvandq_s64.v.htmlvandq_s8.v.htmlvandq_u16.v.htmlvandq_u32.v.htmlvandq_u64.v.htmlvandq_u8.v.htmlvceq_f32.v.htmlvceq_s16.v.htmlvceq_s32.v.htmlvceq_s8.v.htmlvceq_u16.v.htmlvceq_u32.v.htmlvceq_u8.v.htmlvceqq_f32.v.htmlvceqq_s16.v.htmlvceqq_s32.v.htmlvceqq_s8.v.htmlvceqq_u16.v.htmlvceqq_u32.v.htmlvceqq_u8.v.htmlvcge_f32.v.htmlvcge_s16.v.htmlvcge_s32.v.htmlvcge_s8.v.htmlvcge_u16.v.htmlvcge_u32.v.htmlvcge_u8.v.htmlvcgeq_f32.v.htmlvcgeq_s16.v.htmlvcgeq_s32.v.htmlvcgeq_s8.v.htmlvcgeq_u16.v.htmlvcgeq_u32.v.htmlvcgeq_u8.v.htmlvcgt_f32.v.htmlvcgt_s16.v.htmlvcgt_s32.v.htmlvcgt_s8.v.htmlvcgt_u16.v.htmlvcgt_u32.v.htmlvcgt_u8.v.htmlvcgtq_f32.v.htmlvcgtq_s16.v.htmlvcgtq_s32.v.htmlvcgtq_s8.v.htmlvcgtq_u16.v.htmlvcgtq_u32.v.htmlvcgtq_u8.v.htmlvcle_f32.v.htmlvcle_s16.v.htmlvcle_s32.v.htmlvcle_s8.v.htmlvcle_u16.v.htmlvcle_u32.v.htmlvcle_u8.v.htmlvcleq_f32.v.htmlvcleq_s16.v.htmlvcleq_s32.v.htmlvcleq_s8.v.htmlvcleq_u16.v.htmlvcleq_u32.v.htmlvcleq_u8.v.htmlvclt_f32.v.htmlvclt_s16.v.htmlvclt_s32.v.htmlvclt_s8.v.htmlvclt_u16.v.htmlvclt_u32.v.htmlvclt_u8.v.htmlvcltq_f32.v.htmlvcltq_s16.v.htmlvcltq_s32.v.htmlvcltq_s8.v.htmlvcltq_u16.v.htmlvcltq_u32.v.htmlvcltq_u8.v.htmlveor_s16.v.htmlveor_s32.v.htmlveor_s64.v.htmlveor_s8.v.htmlveor_u16.v.htmlveor_u32.v.htmlveor_u64.v.htmlveor_u8.v.htmlveorq_s16.v.htmlveorq_s32.v.htmlveorq_s64.v.htmlveorq_s8.v.htmlveorq_u16.v.htmlveorq_u32.v.htmlveorq_u64.v.htmlveorq_u8.v.htmlvhadd_s16.v.htmlvhadd_s32.v.htmlvhadd_s8.v.htmlvhadd_u16.v.htmlvhadd_u32.v.htmlvhadd_u8.v.htmlvhaddq_s16.v.htmlvhaddq_s32.v.htmlvhaddq_s8.v.htmlvhaddq_u16.v.htmlvhaddq_u32.v.htmlvhaddq_u8.v.htmlvhsub_s16.v.htmlvhsub_s32.v.htmlvhsub_s8.v.htmlvhsub_u16.v.htmlvhsub_u32.v.htmlvhsub_u8.v.htmlvhsubq_s16.v.htmlvhsubq_s32.v.htmlvhsubq_s8.v.htmlvhsubq_u16.v.htmlvhsubq_u32.v.htmlvhsubq_u8.v.htmlvmul_f32.v.htmlvmul_s16.v.htmlvmul_s32.v.htmlvmul_s8.v.htmlvmul_u16.v.htmlvmul_u32.v.htmlvmul_u8.v.htmlvmulq_f32.v.htmlvmulq_s16.v.htmlvmulq_s32.v.htmlvmulq_s8.v.htmlvmulq_u16.v.htmlvmulq_u32.v.htmlvmulq_u8.v.htmlvorr_s16.v.htmlvorr_s32.v.htmlvorr_s64.v.htmlvorr_s8.v.htmlvorr_u16.v.htmlvorr_u32.v.htmlvorr_u64.v.htmlvorr_u8.v.htmlvorrq_s16.v.htmlvorrq_s32.v.htmlvorrq_s64.v.htmlvorrq_s8.v.htmlvorrq_u16.v.htmlvorrq_u32.v.htmlvorrq_u64.v.htmlvorrq_u8.v.htmlvqadd_s16.v.htmlvqadd_s32.v.htmlvqadd_s8.v.htmlvqadd_u16.v.htmlvqadd_u32.v.htmlvqadd_u8.v.htmlvqaddq_s16.v.htmlvqaddq_s32.v.htmlvqaddq_s8.v.htmlvqaddq_u16.v.htmlvqaddq_u32.v.htmlvqaddq_u8.v.htmlvqsub_s16.v.htmlvqsub_s32.v.htmlvqsub_s8.v.htmlvqsub_u16.v.htmlvqsub_u32.v.htmlvqsub_u8.v.htmlvqsubq_s16.v.htmlvqsubq_s32.v.htmlvqsubq_s8.v.htmlvqsubq_u16.v.htmlvqsubq_u32.v.htmlvqsubq_u8.v.htmlvrhadd_s16.v.htmlvrhadd_s32.v.htmlvrhadd_s8.v.htmlvrhadd_u16.v.htmlvrhadd_u32.v.htmlvrhadd_u8.v.htmlvrhaddq_s16.v.htmlvrhaddq_s32.v.htmlvrhaddq_s8.v.htmlvrhaddq_u16.v.htmlvrhaddq_u32.v.htmlvrhaddq_u8.v.htmlvsub_f32.v.htmlvsub_s16.v.htmlvsub_s32.v.htmlvsub_s64.v.htmlvsub_s8.v.htmlvsub_u16.v.htmlvsub_u32.v.htmlvsub_u64.v.htmlvsub_u8.v.htmlvsubq_f32.v.htmlvsubq_s16.v.htmlvsubq_s32.v.htmlvsubq_s64.v.htmlvsubq_s8.v.htmlvsubq_u16.v.htmlvsubq_u32.v.htmlvsubq_u64.v.htmlvsubq_u8.v.htmlint16x4_t.t.htmlint16x8_t.t.htmlint32x2_t.t.htmlint32x4_t.t.htmlint64x1_t.t.htmlint64x2_t.t.htmlint8x16_t.t.htmlint8x8_t.t.htmlint8x8x2_t.t.htmlint8x8x3_t.t.htmlint8x8x4_t.t.htmlpoly16x4_t.t.htmlpoly16x8_t.t.htmlpoly8x16_t.t.htmlpoly8x8_t.t.htmlpoly8x8x2_t.t.htmlpoly8x8x3_t.t.htmlpoly8x8x4_t.t.htmlstruct.float32x2_t.htmlstruct.float32x4_t.htmlstruct.int16x4_t.htmlstruct.int16x8_t.htmlstruct.int32x2_t.htmlstruct.int32x4_t.htmlstruct.int64x1_t.htmlstruct.int64x2_t.htmlstruct.int8x16_t.htmlstruct.int8x8_t.htmlstruct.int8x8x2_t.htmlstruct.int8x8x3_t.htmlstruct.int8x8x4_t.htmlstruct.poly16x4_t.htmlstruct.poly16x8_t.htmlstruct.poly8x16_t.htmlstruct.poly8x8_t.htmlstruct.poly8x8x2_t.htmlstruct.poly8x8x3_t.htmlstruct.poly8x8x4_t.htmlstruct.uint16x4_t.htmlstruct.uint16x8_t.htmlstruct.uint32x2_t.htmlstruct.uint32x4_t.htmlstruct.uint64x1_t.htmlstruct.uint64x2_t.htmlstruct.uint8x16_t.htmlstruct.uint8x8_t.htmlstruct.uint8x8x2_t.htmlstruct.uint8x8x3_t.htmlstruct.uint8x8x4_t.htmluint16x4_t.t.htmluint16x8_t.t.htmluint32x2_t.t.htmluint32x4_t.t.htmluint64x1_t.t.htmluint64x2_t.t.htmluint8x16_t.t.htmluint8x8_t.t.htmluint8x8x2_t.t.htmluint8x8x3_t.t.htmluint8x8x4_t.t.htmlvadd_f32.v.htmlvadd_s16.v.htmlvadd_s32.v.htmlvadd_s8.v.htmlvadd_u16.v.htmlvadd_u32.v.htmlvadd_u8.v.htmlvaddl_s16.v.htmlvaddl_s32.v.htmlvaddl_s8.v.htmlvaddl_u16.v.htmlvaddl_u32.v.htmlvaddl_u8.v.htmlvaddq_f32.v.htmlvaddq_s16.v.htmlvaddq_s32.v.htmlvaddq_s64.v.htmlvaddq_s8.v.htmlvaddq_u16.v.htmlvaddq_u32.v.htmlvaddq_u64.v.htmlvaddq_u8.v.htmlvdupq_n_s8.v.htmlvdupq_n_u8.v.htmlvextq_s8.v.htmlvextq_u8.v.htmlvget_lane_u64.v.htmlvget_lane_u8.v.htmlvgetq_lane_u16.v.htmlvgetq_lane_u32.v.htmlvgetq_lane_u64.v.htmlvld1q_s8.v.htmlvld1q_u8.v.htmlvmovl_s16.v.htmlvmovl_s32.v.htmlvmovl_s8.v.htmlvmovl_u16.v.htmlvmovl_u32.v.htmlvmovl_u8.v.htmlvmovn_s16.v.htmlvmovn_s32.v.htmlvmovn_s64.v.htmlvmovn_u16.v.htmlvmovn_u32.v.htmlvmovn_u64.v.htmlvmovq_n_u8.v.htmlvmvn_p8.v.htmlvmvn_s16.v.htmlvmvn_s32.v.htmlvmvn_s8.v.htmlvmvn_u16.v.htmlvmvn_u32.v.htmlvmvn_u8.v.htmlvmvnq_p8.v.htmlvmvnq_s16.v.htmlvmvnq_s32.v.htmlvmvnq_s8.v.htmlvmvnq_u16.v.htmlvmvnq_u32.v.htmlvmvnq_u8.v.htmlvpmax_f32.v.htmlvpmax_s16.v.htmlvpmax_s32.v.htmlvpmax_s8.v.htmlvpmax_u16.v.htmlvpmax_u32.v.htmlvpmax_u8.v.htmlvpmin_f32.v.htmlvpmin_s16.v.htmlvpmin_s32.v.htmlvpmin_s8.v.htmlvpmin_u16.v.htmlvpmin_u32.v.htmlvpmin_u8.v.htmlvqmovn_u64.v.htmlvreinterpret_u64_u32.v.htmlvreinterpretq_s8_u8.v.htmlvreinterpretq_u16_u8.v.htmlvreinterpretq_u32_u8.v.htmlvreinterpretq_u64_u8.v.htmlvreinterpretq_u8_s8.v.htmlvrsqrte_f32.v.htmlvshlq_n_u8.v.htmlvshrq_n_u8.v.htmlv6_rev_u16.v.html_rev_u32.v.htmlfn._rev_u16.htmlfn._rev_u32.htmlmipsbreak_.v.htmlfn.break_.htmlmsa__msa_add_a_b.v.html__msa_add_a_d.v.html__msa_add_a_h.v.html__msa_add_a_w.v.html__msa_adds_a_b.v.html__msa_adds_a_d.v.html__msa_adds_a_h.v.html__msa_adds_a_w.v.html__msa_adds_s_b.v.html__msa_adds_s_d.v.html__msa_adds_s_h.v.html__msa_adds_s_w.v.html__msa_adds_u_b.v.html__msa_adds_u_d.v.html__msa_adds_u_h.v.html__msa_adds_u_w.v.html__msa_addv_b.v.html__msa_addv_d.v.html__msa_addv_h.v.html__msa_addv_w.v.html__msa_addvi_b.v.html__msa_addvi_d.v.html__msa_addvi_h.v.html__msa_addvi_w.v.html__msa_and_v.v.html__msa_andi_b.v.html__msa_asub_s_b.v.html__msa_asub_s_d.v.html__msa_asub_s_h.v.html__msa_asub_s_w.v.html__msa_asub_u_b.v.html__msa_asub_u_d.v.html__msa_asub_u_h.v.html__msa_asub_u_w.v.html__msa_ave_s_b.v.html__msa_ave_s_d.v.html__msa_ave_s_h.v.html__msa_ave_s_w.v.html__msa_ave_u_b.v.html__msa_ave_u_d.v.html__msa_ave_u_h.v.html__msa_ave_u_w.v.html__msa_aver_s_b.v.html__msa_aver_s_d.v.html__msa_aver_s_h.v.html__msa_aver_s_w.v.html__msa_aver_u_b.v.html__msa_aver_u_d.v.html__msa_aver_u_h.v.html__msa_aver_u_w.v.html__msa_bclr_b.v.html__msa_bclr_d.v.html__msa_bclr_h.v.html__msa_bclr_w.v.html__msa_bclri_b.v.html__msa_bclri_d.v.html__msa_bclri_h.v.html__msa_bclri_w.v.html__msa_binsl_b.v.html__msa_binsl_d.v.html__msa_binsl_h.v.html__msa_binsl_w.v.html__msa_binsli_b.v.html__msa_binsli_d.v.html__msa_binsli_h.v.html__msa_binsli_w.v.html__msa_binsr_b.v.html__msa_binsr_d.v.html__msa_binsr_h.v.html__msa_binsr_w.v.html__msa_binsri_b.v.html__msa_binsri_d.v.html__msa_binsri_h.v.html__msa_binsri_w.v.html__msa_bmnz_v.v.html__msa_bmnzi_b.v.html__msa_bmz_v.v.html__msa_bmzi_b.v.html__msa_bneg_b.v.html__msa_bneg_d.v.html__msa_bneg_h.v.html__msa_bneg_w.v.html__msa_bnegi_b.v.html__msa_bnegi_d.v.html__msa_bnegi_h.v.html__msa_bnegi_w.v.html__msa_bnz_b.v.html__msa_bnz_d.v.html__msa_bnz_h.v.html__msa_bnz_v.v.html__msa_bnz_w.v.html__msa_bsel_v.v.html__msa_bseli_b.v.html__msa_bset_b.v.html__msa_bset_d.v.html__msa_bset_h.v.html__msa_bset_w.v.html__msa_bseti_b.v.html__msa_bseti_d.v.html__msa_bseti_h.v.html__msa_bseti_w.v.html__msa_bz_b.v.html__msa_bz_d.v.html__msa_bz_h.v.html__msa_bz_v.v.html__msa_bz_w.v.html__msa_ceq_b.v.html__msa_ceq_d.v.html__msa_ceq_h.v.html__msa_ceq_w.v.html__msa_ceqi_b.v.html__msa_ceqi_d.v.html__msa_ceqi_h.v.html__msa_ceqi_w.v.html__msa_cfcmsa.v.html__msa_cle_s_b.v.html__msa_cle_s_d.v.html__msa_cle_s_h.v.html__msa_cle_s_w.v.html__msa_cle_u_b.v.html__msa_cle_u_d.v.html__msa_cle_u_h.v.html__msa_cle_u_w.v.html__msa_clei_s_b.v.html__msa_clei_s_d.v.html__msa_clei_s_h.v.html__msa_clei_s_w.v.html__msa_clei_u_b.v.html__msa_clei_u_d.v.html__msa_clei_u_h.v.html__msa_clei_u_w.v.html__msa_clt_s_b.v.html__msa_clt_s_d.v.html__msa_clt_s_h.v.html__msa_clt_s_w.v.html__msa_clt_u_b.v.html__msa_clt_u_d.v.html__msa_clt_u_h.v.html__msa_clt_u_w.v.html__msa_clti_s_b.v.html__msa_clti_s_d.v.html__msa_clti_s_h.v.html__msa_clti_s_w.v.html__msa_clti_u_b.v.html__msa_clti_u_d.v.html__msa_clti_u_h.v.html__msa_clti_u_w.v.html__msa_copy_s_b.v.html__msa_copy_s_d.v.html__msa_copy_s_h.v.html__msa_copy_s_w.v.html__msa_copy_u_b.v.html__msa_copy_u_d.v.html__msa_copy_u_h.v.html__msa_copy_u_w.v.html__msa_ctcmsa.v.html__msa_div_s_b.v.html__msa_div_s_d.v.html__msa_div_s_h.v.html__msa_div_s_w.v.html__msa_div_u_b.v.html__msa_div_u_d.v.html__msa_div_u_h.v.html__msa_div_u_w.v.html__msa_dotp_s_d.v.html__msa_dotp_s_h.v.html__msa_dotp_s_w.v.html__msa_dotp_u_d.v.html__msa_dotp_u_h.v.html__msa_dotp_u_w.v.html__msa_dpadd_s_d.v.html__msa_dpadd_s_h.v.html__msa_dpadd_s_w.v.html__msa_dpadd_u_d.v.html__msa_dpadd_u_h.v.html__msa_dpadd_u_w.v.html__msa_dpsub_s_d.v.html__msa_dpsub_s_h.v.html__msa_dpsub_s_w.v.html__msa_dpsub_u_d.v.html__msa_dpsub_u_h.v.html__msa_dpsub_u_w.v.html__msa_fadd_d.v.html__msa_fadd_w.v.html__msa_fcaf_d.v.html__msa_fcaf_w.v.html__msa_fceq_d.v.html__msa_fceq_w.v.html__msa_fclass_d.v.html__msa_fclass_w.v.html__msa_fcle_d.v.html__msa_fcle_w.v.html__msa_fclt_d.v.html__msa_fclt_w.v.html__msa_fcne_d.v.html__msa_fcne_w.v.html__msa_fcor_d.v.html__msa_fcor_w.v.html__msa_fcueq_d.v.html__msa_fcueq_w.v.html__msa_fcule_d.v.html__msa_fcule_w.v.html__msa_fcult_d.v.html__msa_fcult_w.v.html__msa_fcun_d.v.html__msa_fcun_w.v.html__msa_fcune_d.v.html__msa_fcune_w.v.html__msa_fdiv_d.v.html__msa_fdiv_w.v.html__msa_fexdo_w.v.html__msa_fexp2_d.v.html__msa_fexp2_w.v.html__msa_fexupl_d.v.html__msa_fexupr_d.v.html__msa_ffint_s_d.v.html__msa_ffint_s_w.v.html__msa_ffint_u_d.v.html__msa_ffint_u_w.v.html__msa_ffql_d.v.html__msa_ffql_w.v.html__msa_ffqr_d.v.html__msa_ffqr_w.v.html__msa_fill_b.v.html__msa_fill_d.v.html__msa_fill_h.v.html__msa_fill_w.v.html__msa_flog2_d.v.html__msa_flog2_w.v.html__msa_fmadd_d.v.html__msa_fmadd_w.v.html__msa_fmax_a_d.v.html__msa_fmax_a_w.v.html__msa_fmax_d.v.html__msa_fmax_w.v.html__msa_fmin_a_d.v.html__msa_fmin_a_w.v.html__msa_fmin_d.v.html__msa_fmin_w.v.html__msa_fmsub_d.v.html__msa_fmsub_w.v.html__msa_fmul_d.v.html__msa_fmul_w.v.html__msa_frcp_d.v.html__msa_frcp_w.v.html__msa_frint_d.v.html__msa_frint_w.v.html__msa_frsqrt_d.v.html__msa_frsqrt_w.v.html__msa_fsaf_d.v.html__msa_fsaf_w.v.html__msa_fseq_d.v.html__msa_fseq_w.v.html__msa_fsle_d.v.html__msa_fsle_w.v.html__msa_fslt_d.v.html__msa_fslt_w.v.html__msa_fsne_d.v.html__msa_fsne_w.v.html__msa_fsor_d.v.html__msa_fsor_w.v.html__msa_fsqrt_d.v.html__msa_fsqrt_w.v.html__msa_fsub_d.v.html__msa_fsub_w.v.html__msa_fsueq_d.v.html__msa_fsueq_w.v.html__msa_fsule_d.v.html__msa_fsule_w.v.html__msa_fsult_d.v.html__msa_fsult_w.v.html__msa_fsun_d.v.html__msa_fsun_w.v.html__msa_fsune_d.v.html__msa_fsune_w.v.html__msa_ftint_s_d.v.html__msa_ftint_s_w.v.html__msa_ftint_u_d.v.html__msa_ftint_u_w.v.html__msa_ftq_h.v.html__msa_ftq_w.v.html__msa_ftrunc_s_d.v.html__msa_ftrunc_s_w.v.html__msa_ftrunc_u_d.v.html__msa_ftrunc_u_w.v.html__msa_hadd_s_d.v.html__msa_hadd_s_h.v.html__msa_hadd_s_w.v.html__msa_hadd_u_d.v.html__msa_hadd_u_h.v.html__msa_hadd_u_w.v.html__msa_hsub_s_d.v.html__msa_hsub_s_h.v.html__msa_hsub_s_w.v.html__msa_hsub_u_d.v.html__msa_hsub_u_h.v.html__msa_hsub_u_w.v.html__msa_ilvev_b.v.html__msa_ilvev_d.v.html__msa_ilvev_h.v.html__msa_ilvev_w.v.html__msa_ilvl_b.v.html__msa_ilvl_d.v.html__msa_ilvl_h.v.html__msa_ilvl_w.v.html__msa_ilvod_b.v.html__msa_ilvod_d.v.html__msa_ilvod_h.v.html__msa_ilvod_w.v.html__msa_ilvr_b.v.html__msa_ilvr_d.v.html__msa_ilvr_h.v.html__msa_ilvr_w.v.html__msa_insert_b.v.html__msa_insert_d.v.html__msa_insert_h.v.html__msa_insert_w.v.html__msa_insve_b.v.html__msa_insve_d.v.html__msa_insve_h.v.html__msa_insve_w.v.html__msa_ld_b.v.html__msa_ld_d.v.html__msa_ld_h.v.html__msa_ld_w.v.html__msa_ldi_b.v.html__msa_ldi_d.v.html__msa_ldi_h.v.html__msa_ldi_w.v.html__msa_madd_q_h.v.html__msa_madd_q_w.v.html__msa_maddr_q_h.v.html__msa_maddr_q_w.v.html__msa_maddv_b.v.html__msa_maddv_d.v.html__msa_maddv_h.v.html__msa_maddv_w.v.html__msa_max_a_b.v.html__msa_max_a_d.v.html__msa_max_a_h.v.html__msa_max_a_w.v.html__msa_max_s_b.v.html__msa_max_s_d.v.html__msa_max_s_h.v.html__msa_max_s_w.v.html__msa_max_u_b.v.html__msa_max_u_d.v.html__msa_max_u_h.v.html__msa_max_u_w.v.html__msa_maxi_s_b.v.html__msa_maxi_s_d.v.html__msa_maxi_s_h.v.html__msa_maxi_s_w.v.html__msa_maxi_u_b.v.html__msa_maxi_u_d.v.html__msa_maxi_u_h.v.html__msa_maxi_u_w.v.html__msa_min_a_b.v.html__msa_min_a_d.v.html__msa_min_a_h.v.html__msa_min_a_w.v.html__msa_min_s_b.v.html__msa_min_s_d.v.html__msa_min_s_h.v.html__msa_min_s_w.v.html__msa_min_u_b.v.html__msa_min_u_d.v.html__msa_min_u_h.v.html__msa_min_u_w.v.html__msa_mini_s_b.v.html__msa_mini_s_d.v.html__msa_mini_s_h.v.html__msa_mini_s_w.v.html__msa_mini_u_b.v.html__msa_mini_u_d.v.html__msa_mini_u_h.v.html__msa_mini_u_w.v.html__msa_mod_s_b.v.html__msa_mod_s_d.v.html__msa_mod_s_h.v.html__msa_mod_s_w.v.html__msa_mod_u_b.v.html__msa_mod_u_d.v.html__msa_mod_u_h.v.html__msa_mod_u_w.v.html__msa_move_v.v.html__msa_msub_q_h.v.html__msa_msub_q_w.v.html__msa_msubr_q_h.v.html__msa_msubr_q_w.v.html__msa_msubv_b.v.html__msa_msubv_d.v.html__msa_msubv_h.v.html__msa_msubv_w.v.html__msa_mul_q_h.v.html__msa_mul_q_w.v.html__msa_mulr_q_h.v.html__msa_mulr_q_w.v.html__msa_mulv_b.v.html__msa_mulv_d.v.html__msa_mulv_h.v.html__msa_mulv_w.v.html__msa_nloc_b.v.html__msa_nloc_d.v.html__msa_nloc_h.v.html__msa_nloc_w.v.html__msa_nlzc_b.v.html__msa_nlzc_d.v.html__msa_nlzc_h.v.html__msa_nlzc_w.v.html__msa_nor_v.v.html__msa_nori_b.v.html__msa_or_v.v.html__msa_ori_b.v.html__msa_pckev_b.v.html__msa_pckev_d.v.html__msa_pckev_h.v.html__msa_pckev_w.v.html__msa_pckod_b.v.html__msa_pckod_d.v.html__msa_pckod_h.v.html__msa_pckod_w.v.html__msa_pcnt_b.v.html__msa_pcnt_d.v.html__msa_pcnt_h.v.html__msa_pcnt_w.v.html__msa_sat_s_b.v.html__msa_sat_s_d.v.html__msa_sat_s_h.v.html__msa_sat_s_w.v.html__msa_sat_u_b.v.html__msa_sat_u_d.v.html__msa_sat_u_h.v.html__msa_sat_u_w.v.html__msa_shf_b.v.html__msa_shf_h.v.html__msa_shf_w.v.html__msa_sld_b.v.html__msa_sld_d.v.html__msa_sld_h.v.html__msa_sld_w.v.html__msa_sldi_b.v.html__msa_sldi_d.v.html__msa_sldi_h.v.html__msa_sldi_w.v.html__msa_sll_b.v.html__msa_sll_d.v.html__msa_sll_h.v.html__msa_sll_w.v.html__msa_slli_b.v.html__msa_slli_d.v.html__msa_slli_h.v.html__msa_slli_w.v.html__msa_splat_b.v.html__msa_splat_d.v.html__msa_splat_h.v.html__msa_splat_w.v.html__msa_splati_b.v.html__msa_splati_d.v.html__msa_splati_h.v.html__msa_splati_w.v.html__msa_sra_b.v.html__msa_sra_d.v.html__msa_sra_h.v.html__msa_sra_w.v.html__msa_srai_b.v.html__msa_srai_d.v.html__msa_srai_h.v.html__msa_srai_w.v.html__msa_srar_b.v.html__msa_srar_d.v.html__msa_srar_h.v.html__msa_srar_w.v.html__msa_srari_b.v.html__msa_srari_d.v.html__msa_srari_h.v.html__msa_srari_w.v.html__msa_srl_b.v.html__msa_srl_d.v.html__msa_srl_h.v.html__msa_srl_w.v.html__msa_srli_b.v.html__msa_srli_d.v.html__msa_srli_h.v.html__msa_srli_w.v.html__msa_srlr_b.v.html__msa_srlr_d.v.html__msa_srlr_h.v.html__msa_srlr_w.v.html__msa_srlri_b.v.html__msa_srlri_d.v.html__msa_srlri_h.v.html__msa_srlri_w.v.html__msa_st_b.v.html__msa_st_d.v.html__msa_st_h.v.html__msa_st_w.v.html__msa_subs_s_b.v.html__msa_subs_s_d.v.html__msa_subs_s_h.v.html__msa_subs_s_w.v.html__msa_subs_u_b.v.html__msa_subs_u_d.v.html__msa_subs_u_h.v.html__msa_subs_u_w.v.html__msa_subsus_u_b.v.html__msa_subsus_u_d.v.html__msa_subsus_u_h.v.html__msa_subsus_u_w.v.html__msa_subsuu_s_b.v.html__msa_subsuu_s_d.v.html__msa_subsuu_s_h.v.html__msa_subsuu_s_w.v.html__msa_subv_b.v.html__msa_subv_d.v.html__msa_subv_h.v.html__msa_subv_w.v.html__msa_subvi_b.v.html__msa_subvi_d.v.html__msa_subvi_h.v.html__msa_subvi_w.v.html__msa_vshf_b.v.html__msa_vshf_d.v.html__msa_vshf_h.v.html__msa_vshf_w.v.html__msa_xor_v.v.html__msa_xori_b.v.htmlfn.__msa_add_a_b.htmlfn.__msa_add_a_d.htmlfn.__msa_add_a_h.htmlfn.__msa_add_a_w.htmlfn.__msa_adds_a_b.htmlfn.__msa_adds_a_d.htmlfn.__msa_adds_a_h.htmlfn.__msa_adds_a_w.htmlfn.__msa_adds_s_b.htmlfn.__msa_adds_s_d.htmlfn.__msa_adds_s_h.htmlfn.__msa_adds_s_w.htmlfn.__msa_adds_u_b.htmlfn.__msa_adds_u_d.htmlfn.__msa_adds_u_h.htmlfn.__msa_adds_u_w.htmlfn.__msa_addv_b.htmlfn.__msa_addv_d.htmlfn.__msa_addv_h.htmlfn.__msa_addv_w.htmlfn.__msa_addvi_b.htmlfn.__msa_addvi_d.htmlfn.__msa_addvi_h.htmlfn.__msa_addvi_w.htmlfn.__msa_and_v.htmlfn.__msa_andi_b.htmlfn.__msa_asub_s_b.htmlfn.__msa_asub_s_d.htmlfn.__msa_asub_s_h.htmlfn.__msa_asub_s_w.htmlfn.__msa_asub_u_b.htmlfn.__msa_asub_u_d.htmlfn.__msa_asub_u_h.htmlfn.__msa_asub_u_w.htmlfn.__msa_ave_s_b.htmlfn.__msa_ave_s_d.htmlfn.__msa_ave_s_h.htmlfn.__msa_ave_s_w.htmlfn.__msa_ave_u_b.htmlfn.__msa_ave_u_d.htmlfn.__msa_ave_u_h.htmlfn.__msa_ave_u_w.htmlfn.__msa_aver_s_b.htmlfn.__msa_aver_s_d.htmlfn.__msa_aver_s_h.htmlfn.__msa_aver_s_w.htmlfn.__msa_aver_u_b.htmlfn.__msa_aver_u_d.htmlfn.__msa_aver_u_h.htmlfn.__msa_aver_u_w.htmlfn.__msa_bclr_b.htmlfn.__msa_bclr_d.htmlfn.__msa_bclr_h.htmlfn.__msa_bclr_w.htmlfn.__msa_bclri_b.htmlfn.__msa_bclri_d.htmlfn.__msa_bclri_h.htmlfn.__msa_bclri_w.htmlfn.__msa_binsl_b.htmlfn.__msa_binsl_d.htmlfn.__msa_binsl_h.htmlfn.__msa_binsl_w.htmlfn.__msa_binsli_b.htmlfn.__msa_binsli_d.htmlfn.__msa_binsli_h.htmlfn.__msa_binsli_w.htmlfn.__msa_binsr_b.htmlfn.__msa_binsr_d.htmlfn.__msa_binsr_h.htmlfn.__msa_binsr_w.htmlfn.__msa_binsri_b.htmlfn.__msa_binsri_d.htmlfn.__msa_binsri_h.htmlfn.__msa_binsri_w.htmlfn.__msa_bmnz_v.htmlfn.__msa_bmnzi_b.htmlfn.__msa_bmz_v.htmlfn.__msa_bmzi_b.htmlfn.__msa_bneg_b.htmlfn.__msa_bneg_d.htmlfn.__msa_bneg_h.htmlfn.__msa_bneg_w.htmlfn.__msa_bnegi_b.htmlfn.__msa_bnegi_d.htmlfn.__msa_bnegi_h.htmlfn.__msa_bnegi_w.htmlfn.__msa_bnz_b.htmlfn.__msa_bnz_d.htmlfn.__msa_bnz_h.htmlfn.__msa_bnz_v.htmlfn.__msa_bnz_w.htmlfn.__msa_bsel_v.htmlfn.__msa_bseli_b.htmlfn.__msa_bset_b.htmlfn.__msa_bset_d.htmlfn.__msa_bset_h.htmlfn.__msa_bset_w.htmlfn.__msa_bseti_b.htmlfn.__msa_bseti_d.htmlfn.__msa_bseti_h.htmlfn.__msa_bseti_w.htmlfn.__msa_bz_b.htmlfn.__msa_bz_d.htmlfn.__msa_bz_h.htmlfn.__msa_bz_v.htmlfn.__msa_bz_w.htmlfn.__msa_ceq_b.htmlfn.__msa_ceq_d.htmlfn.__msa_ceq_h.htmlfn.__msa_ceq_w.htmlfn.__msa_ceqi_b.htmlfn.__msa_ceqi_d.htmlfn.__msa_ceqi_h.htmlfn.__msa_ceqi_w.htmlfn.__msa_cfcmsa.htmlfn.__msa_cle_s_b.htmlfn.__msa_cle_s_d.htmlfn.__msa_cle_s_h.htmlfn.__msa_cle_s_w.htmlfn.__msa_cle_u_b.htmlfn.__msa_cle_u_d.htmlfn.__msa_cle_u_h.htmlfn.__msa_cle_u_w.htmlfn.__msa_clei_s_b.htmlfn.__msa_clei_s_d.htmlfn.__msa_clei_s_h.htmlfn.__msa_clei_s_w.htmlfn.__msa_clei_u_b.htmlfn.__msa_clei_u_d.htmlfn.__msa_clei_u_h.htmlfn.__msa_clei_u_w.htmlfn.__msa_clt_s_b.htmlfn.__msa_clt_s_d.htmlfn.__msa_clt_s_h.htmlfn.__msa_clt_s_w.htmlfn.__msa_clt_u_b.htmlfn.__msa_clt_u_d.htmlfn.__msa_clt_u_h.htmlfn.__msa_clt_u_w.htmlfn.__msa_clti_s_b.htmlfn.__msa_clti_s_d.htmlfn.__msa_clti_s_h.htmlfn.__msa_clti_s_w.htmlfn.__msa_clti_u_b.htmlfn.__msa_clti_u_d.htmlfn.__msa_clti_u_h.htmlfn.__msa_clti_u_w.htmlfn.__msa_copy_s_b.htmlfn.__msa_copy_s_d.htmlfn.__msa_copy_s_h.htmlfn.__msa_copy_s_w.htmlfn.__msa_copy_u_b.htmlfn.__msa_copy_u_d.htmlfn.__msa_copy_u_h.htmlfn.__msa_copy_u_w.htmlfn.__msa_ctcmsa.htmlfn.__msa_div_s_b.htmlfn.__msa_div_s_d.htmlfn.__msa_div_s_h.htmlfn.__msa_div_s_w.htmlfn.__msa_div_u_b.htmlfn.__msa_div_u_d.htmlfn.__msa_div_u_h.htmlfn.__msa_div_u_w.htmlfn.__msa_dotp_s_d.htmlfn.__msa_dotp_s_h.htmlfn.__msa_dotp_s_w.htmlfn.__msa_dotp_u_d.htmlfn.__msa_dotp_u_h.htmlfn.__msa_dotp_u_w.htmlfn.__msa_dpadd_s_d.htmlfn.__msa_dpadd_s_h.htmlfn.__msa_dpadd_s_w.htmlfn.__msa_dpadd_u_d.htmlfn.__msa_dpadd_u_h.htmlfn.__msa_dpadd_u_w.htmlfn.__msa_dpsub_s_d.htmlfn.__msa_dpsub_s_h.htmlfn.__msa_dpsub_s_w.htmlfn.__msa_dpsub_u_d.htmlfn.__msa_dpsub_u_h.htmlfn.__msa_dpsub_u_w.htmlfn.__msa_fadd_d.htmlfn.__msa_fadd_w.htmlfn.__msa_fcaf_d.htmlfn.__msa_fcaf_w.htmlfn.__msa_fceq_d.htmlfn.__msa_fceq_w.htmlfn.__msa_fclass_d.htmlfn.__msa_fclass_w.htmlfn.__msa_fcle_d.htmlfn.__msa_fcle_w.htmlfn.__msa_fclt_d.htmlfn.__msa_fclt_w.htmlfn.__msa_fcne_d.htmlfn.__msa_fcne_w.htmlfn.__msa_fcor_d.htmlfn.__msa_fcor_w.htmlfn.__msa_fcueq_d.htmlfn.__msa_fcueq_w.htmlfn.__msa_fcule_d.htmlfn.__msa_fcule_w.htmlfn.__msa_fcult_d.htmlfn.__msa_fcult_w.htmlfn.__msa_fcun_d.htmlfn.__msa_fcun_w.htmlfn.__msa_fcune_d.htmlfn.__msa_fcune_w.htmlfn.__msa_fdiv_d.htmlfn.__msa_fdiv_w.htmlfn.__msa_fexdo_w.htmlfn.__msa_fexp2_d.htmlfn.__msa_fexp2_w.htmlfn.__msa_fexupl_d.htmlfn.__msa_fexupr_d.htmlfn.__msa_ffint_s_d.htmlfn.__msa_ffint_s_w.htmlfn.__msa_ffint_u_d.htmlfn.__msa_ffint_u_w.htmlfn.__msa_ffql_d.htmlfn.__msa_ffql_w.htmlfn.__msa_ffqr_d.htmlfn.__msa_ffqr_w.htmlfn.__msa_fill_b.htmlfn.__msa_fill_d.htmlfn.__msa_fill_h.htmlfn.__msa_fill_w.htmlfn.__msa_flog2_d.htmlfn.__msa_flog2_w.htmlfn.__msa_fmadd_d.htmlfn.__msa_fmadd_w.htmlfn.__msa_fmax_a_d.htmlfn.__msa_fmax_a_w.htmlfn.__msa_fmax_d.htmlfn.__msa_fmax_w.htmlfn.__msa_fmin_a_d.htmlfn.__msa_fmin_a_w.htmlfn.__msa_fmin_d.htmlfn.__msa_fmin_w.htmlfn.__msa_fmsub_d.htmlfn.__msa_fmsub_w.htmlfn.__msa_fmul_d.htmlfn.__msa_fmul_w.htmlfn.__msa_frcp_d.htmlfn.__msa_frcp_w.htmlfn.__msa_frint_d.htmlfn.__msa_frint_w.htmlfn.__msa_frsqrt_d.htmlfn.__msa_frsqrt_w.htmlfn.__msa_fsaf_d.htmlfn.__msa_fsaf_w.htmlfn.__msa_fseq_d.htmlfn.__msa_fseq_w.htmlfn.__msa_fsle_d.htmlfn.__msa_fsle_w.htmlfn.__msa_fslt_d.htmlfn.__msa_fslt_w.htmlfn.__msa_fsne_d.htmlfn.__msa_fsne_w.htmlfn.__msa_fsor_d.htmlfn.__msa_fsor_w.htmlfn.__msa_fsqrt_d.htmlfn.__msa_fsqrt_w.htmlfn.__msa_fsub_d.htmlfn.__msa_fsub_w.htmlfn.__msa_fsueq_d.htmlfn.__msa_fsueq_w.htmlfn.__msa_fsule_d.htmlfn.__msa_fsule_w.htmlfn.__msa_fsult_d.htmlfn.__msa_fsult_w.htmlfn.__msa_fsun_d.htmlfn.__msa_fsun_w.htmlfn.__msa_fsune_d.htmlfn.__msa_fsune_w.htmlfn.__msa_ftint_s_d.htmlfn.__msa_ftint_s_w.htmlfn.__msa_ftint_u_d.htmlfn.__msa_ftint_u_w.htmlfn.__msa_ftq_h.htmlfn.__msa_ftq_w.htmlfn.__msa_ftrunc_s_d.htmlfn.__msa_ftrunc_s_w.htmlfn.__msa_ftrunc_u_d.htmlfn.__msa_ftrunc_u_w.htmlfn.__msa_hadd_s_d.htmlfn.__msa_hadd_s_h.htmlfn.__msa_hadd_s_w.htmlfn.__msa_hadd_u_d.htmlfn.__msa_hadd_u_h.htmlfn.__msa_hadd_u_w.htmlfn.__msa_hsub_s_d.htmlfn.__msa_hsub_s_h.htmlfn.__msa_hsub_s_w.htmlfn.__msa_hsub_u_d.htmlfn.__msa_hsub_u_h.htmlfn.__msa_hsub_u_w.htmlfn.__msa_ilvev_b.htmlfn.__msa_ilvev_d.htmlfn.__msa_ilvev_h.htmlfn.__msa_ilvev_w.htmlfn.__msa_ilvl_b.htmlfn.__msa_ilvl_d.htmlfn.__msa_ilvl_h.htmlfn.__msa_ilvl_w.htmlfn.__msa_ilvod_b.htmlfn.__msa_ilvod_d.htmlfn.__msa_ilvod_h.htmlfn.__msa_ilvod_w.htmlfn.__msa_ilvr_b.htmlfn.__msa_ilvr_d.htmlfn.__msa_ilvr_h.htmlfn.__msa_ilvr_w.htmlfn.__msa_insert_b.htmlfn.__msa_insert_d.htmlfn.__msa_insert_h.htmlfn.__msa_insert_w.htmlfn.__msa_insve_b.htmlfn.__msa_insve_d.htmlfn.__msa_insve_h.htmlfn.__msa_insve_w.htmlfn.__msa_ld_b.htmlfn.__msa_ld_d.htmlfn.__msa_ld_h.htmlfn.__msa_ld_w.htmlfn.__msa_ldi_b.htmlfn.__msa_ldi_d.htmlfn.__msa_ldi_h.htmlfn.__msa_ldi_w.htmlfn.__msa_madd_q_h.htmlfn.__msa_madd_q_w.htmlfn.__msa_maddr_q_h.htmlfn.__msa_maddr_q_w.htmlfn.__msa_maddv_b.htmlfn.__msa_maddv_d.htmlfn.__msa_maddv_h.htmlfn.__msa_maddv_w.htmlfn.__msa_max_a_b.htmlfn.__msa_max_a_d.htmlfn.__msa_max_a_h.htmlfn.__msa_max_a_w.htmlfn.__msa_max_s_b.htmlfn.__msa_max_s_d.htmlfn.__msa_max_s_h.htmlfn.__msa_max_s_w.htmlfn.__msa_max_u_b.htmlfn.__msa_max_u_d.htmlfn.__msa_max_u_h.htmlfn.__msa_max_u_w.htmlfn.__msa_maxi_s_b.htmlfn.__msa_maxi_s_d.htmlfn.__msa_maxi_s_h.htmlfn.__msa_maxi_s_w.htmlfn.__msa_maxi_u_b.htmlfn.__msa_maxi_u_d.htmlfn.__msa_maxi_u_h.htmlfn.__msa_maxi_u_w.htmlfn.__msa_min_a_b.htmlfn.__msa_min_a_d.htmlfn.__msa_min_a_h.htmlfn.__msa_min_a_w.htmlfn.__msa_min_s_b.htmlfn.__msa_min_s_d.htmlfn.__msa_min_s_h.htmlfn.__msa_min_s_w.htmlfn.__msa_min_u_b.htmlfn.__msa_min_u_d.htmlfn.__msa_min_u_h.htmlfn.__msa_min_u_w.htmlfn.__msa_mini_s_b.htmlfn.__msa_mini_s_d.htmlfn.__msa_mini_s_h.htmlfn.__msa_mini_s_w.htmlfn.__msa_mini_u_b.htmlfn.__msa_mini_u_d.htmlfn.__msa_mini_u_h.htmlfn.__msa_mini_u_w.htmlfn.__msa_mod_s_b.htmlfn.__msa_mod_s_d.htmlfn.__msa_mod_s_h.htmlfn.__msa_mod_s_w.htmlfn.__msa_mod_u_b.htmlfn.__msa_mod_u_d.htmlfn.__msa_mod_u_h.htmlfn.__msa_mod_u_w.htmlfn.__msa_move_v.htmlfn.__msa_msub_q_h.htmlfn.__msa_msub_q_w.htmlfn.__msa_msubr_q_h.htmlfn.__msa_msubr_q_w.htmlfn.__msa_msubv_b.htmlfn.__msa_msubv_d.htmlfn.__msa_msubv_h.htmlfn.__msa_msubv_w.htmlfn.__msa_mul_q_h.htmlfn.__msa_mul_q_w.htmlfn.__msa_mulr_q_h.htmlfn.__msa_mulr_q_w.htmlfn.__msa_mulv_b.htmlfn.__msa_mulv_d.htmlfn.__msa_mulv_h.htmlfn.__msa_mulv_w.htmlfn.__msa_nloc_b.htmlfn.__msa_nloc_d.htmlfn.__msa_nloc_h.htmlfn.__msa_nloc_w.htmlfn.__msa_nlzc_b.htmlfn.__msa_nlzc_d.htmlfn.__msa_nlzc_h.htmlfn.__msa_nlzc_w.htmlfn.__msa_nor_v.htmlfn.__msa_nori_b.htmlfn.__msa_or_v.htmlfn.__msa_ori_b.htmlfn.__msa_pckev_b.htmlfn.__msa_pckev_d.htmlfn.__msa_pckev_h.htmlfn.__msa_pckev_w.htmlfn.__msa_pckod_b.htmlfn.__msa_pckod_d.htmlfn.__msa_pckod_h.htmlfn.__msa_pckod_w.htmlfn.__msa_pcnt_b.htmlfn.__msa_pcnt_d.htmlfn.__msa_pcnt_h.htmlfn.__msa_pcnt_w.htmlfn.__msa_sat_s_b.htmlfn.__msa_sat_s_d.htmlfn.__msa_sat_s_h.htmlfn.__msa_sat_s_w.htmlfn.__msa_sat_u_b.htmlfn.__msa_sat_u_d.htmlfn.__msa_sat_u_h.htmlfn.__msa_sat_u_w.htmlfn.__msa_shf_b.htmlfn.__msa_shf_h.htmlfn.__msa_shf_w.htmlfn.__msa_sld_b.htmlfn.__msa_sld_d.htmlfn.__msa_sld_h.htmlfn.__msa_sld_w.htmlfn.__msa_sldi_b.htmlfn.__msa_sldi_d.htmlfn.__msa_sldi_h.htmlfn.__msa_sldi_w.htmlfn.__msa_sll_b.htmlfn.__msa_sll_d.htmlfn.__msa_sll_h.htmlfn.__msa_sll_w.htmlfn.__msa_slli_b.htmlfn.__msa_slli_d.htmlfn.__msa_slli_h.htmlfn.__msa_slli_w.htmlfn.__msa_splat_b.htmlfn.__msa_splat_d.htmlfn.__msa_splat_h.htmlfn.__msa_splat_w.htmlfn.__msa_splati_b.htmlfn.__msa_splati_d.htmlfn.__msa_splati_h.htmlfn.__msa_splati_w.htmlfn.__msa_sra_b.htmlfn.__msa_sra_d.htmlfn.__msa_sra_h.htmlfn.__msa_sra_w.htmlfn.__msa_srai_b.htmlfn.__msa_srai_d.htmlfn.__msa_srai_h.htmlfn.__msa_srai_w.htmlfn.__msa_srar_b.htmlfn.__msa_srar_d.htmlfn.__msa_srar_h.htmlfn.__msa_srar_w.htmlfn.__msa_srari_b.htmlfn.__msa_srari_d.htmlfn.__msa_srari_h.htmlfn.__msa_srari_w.htmlfn.__msa_srl_b.htmlfn.__msa_srl_d.htmlfn.__msa_srl_h.htmlfn.__msa_srl_w.htmlfn.__msa_srli_b.htmlfn.__msa_srli_d.htmlfn.__msa_srli_h.htmlfn.__msa_srli_w.htmlfn.__msa_srlr_b.htmlfn.__msa_srlr_d.htmlfn.__msa_srlr_h.htmlfn.__msa_srlr_w.htmlfn.__msa_srlri_b.htmlfn.__msa_srlri_d.htmlfn.__msa_srlri_h.htmlfn.__msa_srlri_w.htmlfn.__msa_st_b.htmlfn.__msa_st_d.htmlfn.__msa_st_h.htmlfn.__msa_st_w.htmlfn.__msa_subs_s_b.htmlfn.__msa_subs_s_d.htmlfn.__msa_subs_s_h.htmlfn.__msa_subs_s_w.htmlfn.__msa_subs_u_b.htmlfn.__msa_subs_u_d.htmlfn.__msa_subs_u_h.htmlfn.__msa_subs_u_w.htmlfn.__msa_subsus_u_b.htmlfn.__msa_subsus_u_d.htmlfn.__msa_subsus_u_h.htmlfn.__msa_subsus_u_w.htmlfn.__msa_subsuu_s_b.htmlfn.__msa_subsuu_s_d.htmlfn.__msa_subsuu_s_h.htmlfn.__msa_subsuu_s_w.htmlfn.__msa_subv_b.htmlfn.__msa_subv_d.htmlfn.__msa_subv_h.htmlfn.__msa_subv_w.htmlfn.__msa_subvi_b.htmlfn.__msa_subvi_d.htmlfn.__msa_subvi_h.htmlfn.__msa_subvi_w.htmlfn.__msa_vshf_b.htmlfn.__msa_vshf_d.htmlfn.__msa_vshf_h.htmlfn.__msa_vshf_w.htmlfn.__msa_xor_v.htmlfn.__msa_xori_b.htmlstruct.v16i8.htmlstruct.v16u8.htmlstruct.v2f64.htmlstruct.v2i64.htmlstruct.v2u64.htmlstruct.v4f32.htmlstruct.v4i32.htmlstruct.v4u32.htmlstruct.v8i16.htmlstruct.v8u16.htmlv16i8.t.htmlv16u8.t.htmlv2f64.t.htmlv2i64.t.htmlv2u64.t.htmlv4f32.t.htmlv4i32.t.htmlv4u32.t.htmlv8i16.t.htmlv8u16.t.htmlnvptx__assert_fail.v.html_block_dim_x.v.html_block_dim_y.v.html_block_dim_z.v.html_block_idx_x.v.html_block_idx_y.v.html_block_idx_z.v.html_grid_dim_x.v.html_grid_dim_y.v.html_grid_dim_z.v.html_syncthreads.v.html_thread_idx_x.v.html_thread_idx_y.v.html_thread_idx_z.v.htmlfn.__assert_fail.htmlfn._block_dim_x.htmlfn._block_dim_y.htmlfn._block_dim_z.htmlfn._block_idx_x.htmlfn._block_idx_y.htmlfn._block_idx_z.htmlfn._grid_dim_x.htmlfn._grid_dim_y.htmlfn._grid_dim_z.htmlfn._syncthreads.htmlfn._thread_idx_x.htmlfn._thread_idx_y.htmlfn._thread_idx_z.htmlfn.free.htmlfn.malloc.htmlfn.trap.htmlfn.vprintf.htmlfree.v.htmlmalloc.v.htmltrap.v.htmlvprintf.v.htmlpowerpcfn.trap.htmltrap.v.htmlvsxfn.vec_xxpermdi.htmlstruct.vector_bool_long.htmlstruct.vector_double.htmlstruct.vector_signed_long.htmlstruct.vector_unsigned_long.htmlvec_xxpermdi.v.htmlvector_bool_long.t.htmlvector_double.t.htmlvector_signed_long.t.htmlvector_unsigned_long.t.htmlwasm32atomicatomic_notify.v.htmlfn.atomic_notify.htmlfn.i32_atomic_wait.htmlfn.i64_atomic_wait.htmli32_atomic_wait.v.htmli64_atomic_wait.v.htmlfn.unreachable.htmlmemoryfn.memory_grow.htmlfn.memory_size.htmlmemory_grow.v.htmlmemory_size.v.htmlsimd128f32x4_abs.v.htmlf32x4_add.v.htmlf32x4_convert_i32x4_s.v.htmlf32x4_convert_i32x4_u.v.htmlf32x4_div.v.htmlf32x4_eq.v.htmlf32x4_extract_lane.v.htmlf32x4_ge.v.htmlf32x4_gt.v.htmlf32x4_le.v.htmlf32x4_lt.v.htmlf32x4_max.v.htmlf32x4_min.v.htmlf32x4_mul.v.htmlf32x4_ne.v.htmlf32x4_neg.v.htmlf32x4_replace_lane.v.htmlf32x4_splat.v.htmlf32x4_sqrt.v.htmlf32x4_sub.v.htmlf64x2_abs.v.htmlf64x2_add.v.htmlf64x2_convert_s_i64x2.v.htmlf64x2_convert_u_i64x2.v.htmlf64x2_div.v.htmlf64x2_eq.v.htmlf64x2_extract_lane.v.htmlf64x2_ge.v.htmlf64x2_gt.v.htmlf64x2_le.v.htmlf64x2_lt.v.htmlf64x2_max.v.htmlf64x2_min.v.htmlf64x2_mul.v.htmlf64x2_ne.v.htmlf64x2_neg.v.htmlf64x2_replace_lane.v.htmlf64x2_splat.v.htmlf64x2_sqrt.v.htmlf64x2_sub.v.htmlfn.f32x4_abs.htmlfn.f32x4_add.htmlfn.f32x4_convert_i32x4_s.htmlfn.f32x4_convert_i32x4_u.htmlfn.f32x4_div.htmlfn.f32x4_eq.htmlfn.f32x4_extract_lane.htmlfn.f32x4_ge.htmlfn.f32x4_gt.htmlfn.f32x4_le.htmlfn.f32x4_lt.htmlfn.f32x4_max.htmlfn.f32x4_min.htmlfn.f32x4_mul.htmlfn.f32x4_ne.htmlfn.f32x4_neg.htmlfn.f32x4_replace_lane.htmlfn.f32x4_splat.htmlfn.f32x4_sqrt.htmlfn.f32x4_sub.htmlfn.f64x2_abs.htmlfn.f64x2_add.htmlfn.f64x2_convert_s_i64x2.htmlfn.f64x2_convert_u_i64x2.htmlfn.f64x2_div.htmlfn.f64x2_eq.htmlfn.f64x2_extract_lane.htmlfn.f64x2_ge.htmlfn.f64x2_gt.htmlfn.f64x2_le.htmlfn.f64x2_lt.htmlfn.f64x2_max.htmlfn.f64x2_min.htmlfn.f64x2_mul.htmlfn.f64x2_ne.htmlfn.f64x2_neg.htmlfn.f64x2_replace_lane.htmlfn.f64x2_splat.htmlfn.f64x2_sqrt.htmlfn.f64x2_sub.htmlfn.i16x8_add.htmlfn.i16x8_add_saturate_s.htmlfn.i16x8_add_saturate_u.htmlfn.i16x8_all_true.htmlfn.i16x8_any_true.htmlfn.i16x8_eq.htmlfn.i16x8_extract_lane.htmlfn.i16x8_ge_s.htmlfn.i16x8_ge_u.htmlfn.i16x8_gt_s.htmlfn.i16x8_gt_u.htmlfn.i16x8_le_s.htmlfn.i16x8_le_u.htmlfn.i16x8_lt_s.htmlfn.i16x8_lt_u.htmlfn.i16x8_mul.htmlfn.i16x8_ne.htmlfn.i16x8_neg.htmlfn.i16x8_replace_lane.htmlfn.i16x8_shl.htmlfn.i16x8_shr_s.htmlfn.i16x8_shr_u.htmlfn.i16x8_splat.htmlfn.i16x8_sub.htmlfn.i16x8_sub_saturate_s.htmlfn.i16x8_sub_saturate_u.htmlfn.i32x4_add.htmlfn.i32x4_all_true.htmlfn.i32x4_any_true.htmlfn.i32x4_eq.htmlfn.i32x4_extract_lane.htmlfn.i32x4_ge_s.htmlfn.i32x4_ge_u.htmlfn.i32x4_gt_s.htmlfn.i32x4_gt_u.htmlfn.i32x4_le_s.htmlfn.i32x4_le_u.htmlfn.i32x4_lt_s.htmlfn.i32x4_lt_u.htmlfn.i32x4_mul.htmlfn.i32x4_ne.htmlfn.i32x4_neg.htmlfn.i32x4_replace_lane.htmlfn.i32x4_shl.htmlfn.i32x4_shr_s.htmlfn.i32x4_shr_u.htmlfn.i32x4_splat.htmlfn.i32x4_sub.htmlfn.i32x4_trunc_s_f32x4_sat.htmlfn.i32x4_trunc_u_f32x4_sat.htmlfn.i64x2_add.htmlfn.i64x2_all_true.htmlfn.i64x2_any_true.htmlfn.i64x2_extract_lane.htmlfn.i64x2_neg.htmlfn.i64x2_replace_lane.htmlfn.i64x2_shl.htmlfn.i64x2_shr_s.htmlfn.i64x2_shr_u.htmlfn.i64x2_splat.htmlfn.i64x2_sub.htmlfn.i64x2_trunc_s_f64x2_sat.htmlfn.i64x2_trunc_u_f64x2_sat.htmlfn.i8x16_add.htmlfn.i8x16_add_saturate_s.htmlfn.i8x16_add_saturate_u.htmlfn.i8x16_all_true.htmlfn.i8x16_any_true.htmlfn.i8x16_eq.htmlfn.i8x16_extract_lane.htmlfn.i8x16_ge_s.htmlfn.i8x16_ge_u.htmlfn.i8x16_gt_s.htmlfn.i8x16_gt_u.htmlfn.i8x16_le_s.htmlfn.i8x16_le_u.htmlfn.i8x16_lt_s.htmlfn.i8x16_lt_u.htmlfn.i8x16_mul.htmlfn.i8x16_ne.htmlfn.i8x16_neg.htmlfn.i8x16_replace_lane.htmlfn.i8x16_shl.htmlfn.i8x16_shr_s.htmlfn.i8x16_shr_u.htmlfn.i8x16_splat.htmlfn.i8x16_sub.htmlfn.i8x16_sub_saturate_s.htmlfn.i8x16_sub_saturate_u.htmlfn.v128_and.htmlfn.v128_bitselect.htmlfn.v128_const.htmlfn.v128_load.htmlfn.v128_not.htmlfn.v128_or.htmlfn.v128_store.htmlfn.v128_xor.htmli16x8_add.v.htmli16x8_add_saturate_s.v.htmli16x8_add_saturate_u.v.htmli16x8_all_true.v.htmli16x8_any_true.v.htmli16x8_eq.v.htmli16x8_extract_lane.v.htmli16x8_ge_s.v.htmli16x8_ge_u.v.htmli16x8_gt_s.v.htmli16x8_gt_u.v.htmli16x8_le_s.v.htmli16x8_le_u.v.htmli16x8_lt_s.v.htmli16x8_lt_u.v.htmli16x8_mul.v.htmli16x8_ne.v.htmli16x8_neg.v.htmli16x8_replace_lane.v.htmli16x8_shl.v.htmli16x8_shr_s.v.htmli16x8_shr_u.v.htmli16x8_splat.v.htmli16x8_sub.v.htmli16x8_sub_saturate_s.v.htmli16x8_sub_saturate_u.v.htmli32x4_add.v.htmli32x4_all_true.v.htmli32x4_any_true.v.htmli32x4_eq.v.htmli32x4_extract_lane.v.htmli32x4_ge_s.v.htmli32x4_ge_u.v.htmli32x4_gt_s.v.htmli32x4_gt_u.v.htmli32x4_le_s.v.htmli32x4_le_u.v.htmli32x4_lt_s.v.htmli32x4_lt_u.v.htmli32x4_mul.v.htmli32x4_ne.v.htmli32x4_neg.v.htmli32x4_replace_lane.v.htmli32x4_shl.v.htmli32x4_shr_s.v.htmli32x4_shr_u.v.htmli32x4_splat.v.htmli32x4_sub.v.htmli32x4_trunc_s_f32x4_sat.v.htmli32x4_trunc_u_f32x4_sat.v.htmli64x2_add.v.htmli64x2_all_true.v.htmli64x2_any_true.v.htmli64x2_extract_lane.v.htmli64x2_neg.v.htmli64x2_replace_lane.v.htmli64x2_shl.v.htmli64x2_shr_s.v.htmli64x2_shr_u.v.htmli64x2_splat.v.htmli64x2_sub.v.htmli64x2_trunc_s_f64x2_sat.v.htmli64x2_trunc_u_f64x2_sat.v.htmli8x16_add.v.htmli8x16_add_saturate_s.v.htmli8x16_add_saturate_u.v.htmli8x16_all_true.v.htmli8x16_any_true.v.htmli8x16_eq.v.htmli8x16_extract_lane.v.htmli8x16_ge_s.v.htmli8x16_ge_u.v.htmli8x16_gt_s.v.htmli8x16_gt_u.v.htmli8x16_le_s.v.htmli8x16_le_u.v.htmli8x16_lt_s.v.htmli8x16_lt_u.v.htmli8x16_mul.v.htmli8x16_ne.v.htmli8x16_neg.v.htmli8x16_replace_lane.v.htmli8x16_shl.v.htmli8x16_shr_s.v.htmli8x16_shr_u.v.htmli8x16_splat.v.htmli8x16_sub.v.htmli8x16_sub_saturate_s.v.htmli8x16_sub_saturate_u.v.htmlstruct.v128.htmlv128.t.htmlv128_and.v.htmlv128_bitselect.v.htmlv128_const.v.htmlv128_load.v.htmlv128_not.v.htmlv128_or.v.htmlv128_store.v.htmlv128_xor.v.htmlunreachable.v.htmlx86__m128.t.html__m128d.t.html__m128i.t.html__m256.t.html__m256d.t.html__m256i.t.html__m512.t.html__m512d.t.html__m512i.t.html__m64.t.html__mmask16.t.htmlabm_lzcnt_u32.v.html_popcnt32.v.htmlfn._lzcnt_u32.htmlfn._popcnt32.htmladx_addcarry_u32.v.html_addcarryx_u32.v.html_subborrow_u32.v.htmlfn._addcarry_u32.htmlfn._addcarryx_u32.htmlfn._subborrow_u32.htmlaes_mm_aesdec_si128.v.html_mm_aesdeclast_si128.v.html_mm_aesenc_si128.v.html_mm_aesenclast_si128.v.html_mm_aesimc_si128.v.html_mm_aeskeygenassist_si128.v.htmlfn._mm_aesdec_si128.htmlfn._mm_aesdeclast_si128.htmlfn._mm_aesenc_si128.htmlfn._mm_aesenclast_si128.htmlfn._mm_aesimc_si128.htmlfn._mm_aeskeygenassist_si128.htmlavx_CMP_EQ_OQ.v.html_CMP_EQ_OS.v.html_CMP_EQ_UQ.v.html_CMP_EQ_US.v.html_CMP_FALSE_OQ.v.html_CMP_FALSE_OS.v.html_CMP_GE_OQ.v.html_CMP_GE_OS.v.html_CMP_GT_OQ.v.html_CMP_GT_OS.v.html_CMP_LE_OQ.v.html_CMP_LE_OS.v.html_CMP_LT_OQ.v.html_CMP_LT_OS.v.html_CMP_NEQ_OQ.v.html_CMP_NEQ_OS.v.html_CMP_NEQ_UQ.v.html_CMP_NEQ_US.v.html_CMP_NGE_UQ.v.html_CMP_NGE_US.v.html_CMP_NGT_UQ.v.html_CMP_NGT_US.v.html_CMP_NLE_UQ.v.html_CMP_NLE_US.v.html_CMP_NLT_UQ.v.html_CMP_NLT_US.v.html_CMP_ORD_Q.v.html_CMP_ORD_S.v.html_CMP_TRUE_UQ.v.html_CMP_TRUE_US.v.html_CMP_UNORD_Q.v.html_CMP_UNORD_S.v.html_mm256_add_pd.v.html_mm256_add_ps.v.html_mm256_addsub_pd.v.html_mm256_addsub_ps.v.html_mm256_and_pd.v.html_mm256_and_ps.v.html_mm256_andnot_pd.v.html_mm256_andnot_ps.v.html_mm256_blend_pd.v.html_mm256_blend_ps.v.html_mm256_blendv_pd.v.html_mm256_blendv_ps.v.html_mm256_broadcast_pd.v.html_mm256_broadcast_ps.v.html_mm256_broadcast_sd.v.html_mm256_broadcast_ss.v.html_mm256_castpd128_pd256.v.html_mm256_castpd256_pd128.v.html_mm256_castpd_ps.v.html_mm256_castpd_si256.v.html_mm256_castps128_ps256.v.html_mm256_castps256_ps128.v.html_mm256_castps_pd.v.html_mm256_castps_si256.v.html_mm256_castsi128_si256.v.html_mm256_castsi256_pd.v.html_mm256_castsi256_ps.v.html_mm256_castsi256_si128.v.html_mm256_ceil_pd.v.html_mm256_ceil_ps.v.html_mm256_cmp_pd.v.html_mm256_cmp_ps.v.html_mm256_cvtepi32_pd.v.html_mm256_cvtepi32_ps.v.html_mm256_cvtpd_epi32.v.html_mm256_cvtpd_ps.v.html_mm256_cvtps_epi32.v.html_mm256_cvtps_pd.v.html_mm256_cvtss_f32.v.html_mm256_cvttpd_epi32.v.html_mm256_cvttps_epi32.v.html_mm256_div_pd.v.html_mm256_div_ps.v.html_mm256_dp_ps.v.html_mm256_extractf128_pd.v.html_mm256_extractf128_ps.v.html_mm256_extractf128_si256.v.html_mm256_floor_pd.v.html_mm256_floor_ps.v.html_mm256_hadd_pd.v.html_mm256_hadd_ps.v.html_mm256_hsub_pd.v.html_mm256_hsub_ps.v.html_mm256_insert_epi16.v.html_mm256_insert_epi32.v.html_mm256_insert_epi8.v.html_mm256_insertf128_pd.v.html_mm256_insertf128_ps.v.html_mm256_insertf128_si256.v.html_mm256_lddqu_si256.v.html_mm256_load_pd.v.html_mm256_load_ps.v.html_mm256_load_si256.v.html_mm256_loadu2_m128.v.html_mm256_loadu2_m128d.v.html_mm256_loadu2_m128i.v.html_mm256_loadu_pd.v.html_mm256_loadu_ps.v.html_mm256_loadu_si256.v.html_mm256_maskload_pd.v.html_mm256_maskload_ps.v.html_mm256_maskstore_pd.v.html_mm256_maskstore_ps.v.html_mm256_max_pd.v.html_mm256_max_ps.v.html_mm256_min_pd.v.html_mm256_min_ps.v.html_mm256_movedup_pd.v.html_mm256_movehdup_ps.v.html_mm256_moveldup_ps.v.html_mm256_movemask_pd.v.html_mm256_movemask_ps.v.html_mm256_mul_pd.v.html_mm256_mul_ps.v.html_mm256_or_pd.v.html_mm256_or_ps.v.html_mm256_permute2f128_pd.v.html_mm256_permute2f128_ps.v.html_mm256_permute2f128_si256.v.html_mm256_permute_pd.v.html_mm256_permute_ps.v.html_mm256_permutevar_pd.v.html_mm256_permutevar_ps.v.html_mm256_rcp_ps.v.html_mm256_round_pd.v.html_mm256_round_ps.v.html_mm256_rsqrt_ps.v.html_mm256_set1_epi16.v.html_mm256_set1_epi32.v.html_mm256_set1_epi64x.v.html_mm256_set1_epi8.v.html_mm256_set1_pd.v.html_mm256_set1_ps.v.html_mm256_set_epi16.v.html_mm256_set_epi32.v.html_mm256_set_epi64x.v.html_mm256_set_epi8.v.html_mm256_set_m128.v.html_mm256_set_m128d.v.html_mm256_set_m128i.v.html_mm256_set_pd.v.html_mm256_set_ps.v.html_mm256_setr_epi16.v.html_mm256_setr_epi32.v.html_mm256_setr_epi64x.v.html_mm256_setr_epi8.v.html_mm256_setr_m128.v.html_mm256_setr_m128d.v.html_mm256_setr_m128i.v.html_mm256_setr_pd.v.html_mm256_setr_ps.v.html_mm256_setzero_pd.v.html_mm256_setzero_ps.v.html_mm256_setzero_si256.v.html_mm256_shuffle_pd.v.html_mm256_shuffle_ps.v.html_mm256_sqrt_pd.v.html_mm256_sqrt_ps.v.html_mm256_store_pd.v.html_mm256_store_ps.v.html_mm256_store_si256.v.html_mm256_storeu2_m128.v.html_mm256_storeu2_m128d.v.html_mm256_storeu2_m128i.v.html_mm256_storeu_pd.v.html_mm256_storeu_ps.v.html_mm256_storeu_si256.v.html_mm256_stream_pd.v.html_mm256_stream_ps.v.html_mm256_stream_si256.v.html_mm256_sub_pd.v.html_mm256_sub_ps.v.html_mm256_testc_pd.v.html_mm256_testc_ps.v.html_mm256_testc_si256.v.html_mm256_testnzc_pd.v.html_mm256_testnzc_ps.v.html_mm256_testnzc_si256.v.html_mm256_testz_pd.v.html_mm256_testz_ps.v.html_mm256_testz_si256.v.html_mm256_undefined_pd.v.html_mm256_undefined_ps.v.html_mm256_undefined_si256.v.html_mm256_unpackhi_pd.v.html_mm256_unpackhi_ps.v.html_mm256_unpacklo_pd.v.html_mm256_unpacklo_ps.v.html_mm256_xor_pd.v.html_mm256_xor_ps.v.html_mm256_zeroall.v.html_mm256_zeroupper.v.html_mm256_zextpd128_pd256.v.html_mm256_zextps128_ps256.v.html_mm256_zextsi128_si256.v.html_mm_broadcast_ss.v.html_mm_cmp_pd.v.html_mm_cmp_ps.v.html_mm_cmp_sd.v.html_mm_cmp_ss.v.html_mm_maskload_pd.v.html_mm_maskload_ps.v.html_mm_maskstore_pd.v.html_mm_maskstore_ps.v.html_mm_permute_pd.v.html_mm_permute_ps.v.html_mm_permutevar_pd.v.html_mm_permutevar_ps.v.html_mm_testc_pd.v.html_mm_testc_ps.v.html_mm_testnzc_pd.v.html_mm_testnzc_ps.v.html_mm_testz_pd.v.html_mm_testz_ps.v.htmlconstant._CMP_EQ_OQ.htmlconstant._CMP_EQ_OS.htmlconstant._CMP_EQ_UQ.htmlconstant._CMP_EQ_US.htmlconstant._CMP_FALSE_OQ.htmlconstant._CMP_FALSE_OS.htmlconstant._CMP_GE_OQ.htmlconstant._CMP_GE_OS.htmlconstant._CMP_GT_OQ.htmlconstant._CMP_GT_OS.htmlconstant._CMP_LE_OQ.htmlconstant._CMP_LE_OS.htmlconstant._CMP_LT_OQ.htmlconstant._CMP_LT_OS.htmlconstant._CMP_NEQ_OQ.htmlconstant._CMP_NEQ_OS.htmlconstant._CMP_NEQ_UQ.htmlconstant._CMP_NEQ_US.htmlconstant._CMP_NGE_UQ.htmlconstant._CMP_NGE_US.htmlconstant._CMP_NGT_UQ.htmlconstant._CMP_NGT_US.htmlconstant._CMP_NLE_UQ.htmlconstant._CMP_NLE_US.htmlconstant._CMP_NLT_UQ.htmlconstant._CMP_NLT_US.htmlconstant._CMP_ORD_Q.htmlconstant._CMP_ORD_S.htmlconstant._CMP_TRUE_UQ.htmlconstant._CMP_TRUE_US.htmlconstant._CMP_UNORD_Q.htmlconstant._CMP_UNORD_S.htmlfn._mm256_add_pd.htmlfn._mm256_add_ps.htmlfn._mm256_addsub_pd.htmlfn._mm256_addsub_ps.htmlfn._mm256_and_pd.htmlfn._mm256_and_ps.htmlfn._mm256_andnot_pd.htmlfn._mm256_andnot_ps.htmlfn._mm256_blend_pd.htmlfn._mm256_blend_ps.htmlfn._mm256_blendv_pd.htmlfn._mm256_blendv_ps.htmlfn._mm256_broadcast_pd.htmlfn._mm256_broadcast_ps.htmlfn._mm256_broadcast_sd.htmlfn._mm256_broadcast_ss.htmlfn._mm256_castpd128_pd256.htmlfn._mm256_castpd256_pd128.htmlfn._mm256_castpd_ps.htmlfn._mm256_castpd_si256.htmlfn._mm256_castps128_ps256.htmlfn._mm256_castps256_ps128.htmlfn._mm256_castps_pd.htmlfn._mm256_castps_si256.htmlfn._mm256_castsi128_si256.htmlfn._mm256_castsi256_pd.htmlfn._mm256_castsi256_ps.htmlfn._mm256_castsi256_si128.htmlfn._mm256_ceil_pd.htmlfn._mm256_ceil_ps.htmlfn._mm256_cmp_pd.htmlfn._mm256_cmp_ps.htmlfn._mm256_cvtepi32_pd.htmlfn._mm256_cvtepi32_ps.htmlfn._mm256_cvtpd_epi32.htmlfn._mm256_cvtpd_ps.htmlfn._mm256_cvtps_epi32.htmlfn._mm256_cvtps_pd.htmlfn._mm256_cvtss_f32.htmlfn._mm256_cvttpd_epi32.htmlfn._mm256_cvttps_epi32.htmlfn._mm256_div_pd.htmlfn._mm256_div_ps.htmlfn._mm256_dp_ps.htmlfn._mm256_extractf128_pd.htmlfn._mm256_extractf128_ps.htmlfn._mm256_extractf128_si256.htmlfn._mm256_floor_pd.htmlfn._mm256_floor_ps.htmlfn._mm256_hadd_pd.htmlfn._mm256_hadd_ps.htmlfn._mm256_hsub_pd.htmlfn._mm256_hsub_ps.htmlfn._mm256_insert_epi16.htmlfn._mm256_insert_epi32.htmlfn._mm256_insert_epi8.htmlfn._mm256_insertf128_pd.htmlfn._mm256_insertf128_ps.htmlfn._mm256_insertf128_si256.htmlfn._mm256_lddqu_si256.htmlfn._mm256_load_pd.htmlfn._mm256_load_ps.htmlfn._mm256_load_si256.htmlfn._mm256_loadu2_m128.htmlfn._mm256_loadu2_m128d.htmlfn._mm256_loadu2_m128i.htmlfn._mm256_loadu_pd.htmlfn._mm256_loadu_ps.htmlfn._mm256_loadu_si256.htmlfn._mm256_maskload_pd.htmlfn._mm256_maskload_ps.htmlfn._mm256_maskstore_pd.htmlfn._mm256_maskstore_ps.htmlfn._mm256_max_pd.htmlfn._mm256_max_ps.htmlfn._mm256_min_pd.htmlfn._mm256_min_ps.htmlfn._mm256_movedup_pd.htmlfn._mm256_movehdup_ps.htmlfn._mm256_moveldup_ps.htmlfn._mm256_movemask_pd.htmlfn._mm256_movemask_ps.htmlfn._mm256_mul_pd.htmlfn._mm256_mul_ps.htmlfn._mm256_or_pd.htmlfn._mm256_or_ps.htmlfn._mm256_permute2f128_pd.htmlfn._mm256_permute2f128_ps.htmlfn._mm256_permute2f128_si256.htmlfn._mm256_permute_pd.htmlfn._mm256_permute_ps.htmlfn._mm256_permutevar_pd.htmlfn._mm256_permutevar_ps.htmlfn._mm256_rcp_ps.htmlfn._mm256_round_pd.htmlfn._mm256_round_ps.htmlfn._mm256_rsqrt_ps.htmlfn._mm256_set1_epi16.htmlfn._mm256_set1_epi32.htmlfn._mm256_set1_epi64x.htmlfn._mm256_set1_epi8.htmlfn._mm256_set1_pd.htmlfn._mm256_set1_ps.htmlfn._mm256_set_epi16.htmlfn._mm256_set_epi32.htmlfn._mm256_set_epi64x.htmlfn._mm256_set_epi8.htmlfn._mm256_set_m128.htmlfn._mm256_set_m128d.htmlfn._mm256_set_m128i.htmlfn._mm256_set_pd.htmlfn._mm256_set_ps.htmlfn._mm256_setr_epi16.htmlfn._mm256_setr_epi32.htmlfn._mm256_setr_epi64x.htmlfn._mm256_setr_epi8.htmlfn._mm256_setr_m128.htmlfn._mm256_setr_m128d.htmlfn._mm256_setr_m128i.htmlfn._mm256_setr_pd.htmlfn._mm256_setr_ps.htmlfn._mm256_setzero_pd.htmlfn._mm256_setzero_ps.htmlfn._mm256_setzero_si256.htmlfn._mm256_shuffle_pd.htmlfn._mm256_shuffle_ps.htmlfn._mm256_sqrt_pd.htmlfn._mm256_sqrt_ps.htmlfn._mm256_store_pd.htmlfn._mm256_store_ps.htmlfn._mm256_store_si256.htmlfn._mm256_storeu2_m128.htmlfn._mm256_storeu2_m128d.htmlfn._mm256_storeu2_m128i.htmlfn._mm256_storeu_pd.htmlfn._mm256_storeu_ps.htmlfn._mm256_storeu_si256.htmlfn._mm256_stream_pd.htmlfn._mm256_stream_ps.htmlfn._mm256_stream_si256.htmlfn._mm256_sub_pd.htmlfn._mm256_sub_ps.htmlfn._mm256_testc_pd.htmlfn._mm256_testc_ps.htmlfn._mm256_testc_si256.htmlfn._mm256_testnzc_pd.htmlfn._mm256_testnzc_ps.htmlfn._mm256_testnzc_si256.htmlfn._mm256_testz_pd.htmlfn._mm256_testz_ps.htmlfn._mm256_testz_si256.htmlfn._mm256_undefined_pd.htmlfn._mm256_undefined_ps.htmlfn._mm256_undefined_si256.htmlfn._mm256_unpackhi_pd.htmlfn._mm256_unpackhi_ps.htmlfn._mm256_unpacklo_pd.htmlfn._mm256_unpacklo_ps.htmlfn._mm256_xor_pd.htmlfn._mm256_xor_ps.htmlfn._mm256_zeroall.htmlfn._mm256_zeroupper.htmlfn._mm256_zextpd128_pd256.htmlfn._mm256_zextps128_ps256.htmlfn._mm256_zextsi128_si256.htmlfn._mm_broadcast_ss.htmlfn._mm_cmp_pd.htmlfn._mm_cmp_ps.htmlfn._mm_cmp_sd.htmlfn._mm_cmp_ss.htmlfn._mm_maskload_pd.htmlfn._mm_maskload_ps.htmlfn._mm_maskstore_pd.htmlfn._mm_maskstore_ps.htmlfn._mm_permute_pd.htmlfn._mm_permute_ps.htmlfn._mm_permutevar_pd.htmlfn._mm_permutevar_ps.htmlfn._mm_testc_pd.htmlfn._mm_testc_ps.htmlfn._mm_testnzc_pd.htmlfn._mm_testnzc_ps.htmlfn._mm_testz_pd.htmlfn._mm_testz_ps.htmlavx2_mm256_abs_epi16.v.html_mm256_abs_epi32.v.html_mm256_abs_epi8.v.html_mm256_add_epi16.v.html_mm256_add_epi32.v.html_mm256_add_epi64.v.html_mm256_add_epi8.v.html_mm256_adds_epi16.v.html_mm256_adds_epi8.v.html_mm256_adds_epu16.v.html_mm256_adds_epu8.v.html_mm256_alignr_epi8.v.html_mm256_and_si256.v.html_mm256_andnot_si256.v.html_mm256_avg_epu16.v.html_mm256_avg_epu8.v.html_mm256_blend_epi16.v.html_mm256_blend_epi32.v.html_mm256_blendv_epi8.v.html_mm256_broadcastb_epi8.v.html_mm256_broadcastd_epi32.v.html_mm256_broadcastq_epi64.v.html_mm256_broadcastsd_pd.v.html_mm256_broadcastsi128_si256.v.html_mm256_broadcastss_ps.v.html_mm256_broadcastw_epi16.v.html_mm256_bslli_epi128.v.html_mm256_bsrli_epi128.v.html_mm256_cmpeq_epi16.v.html_mm256_cmpeq_epi32.v.html_mm256_cmpeq_epi64.v.html_mm256_cmpeq_epi8.v.html_mm256_cmpgt_epi16.v.html_mm256_cmpgt_epi32.v.html_mm256_cmpgt_epi64.v.html_mm256_cmpgt_epi8.v.html_mm256_cvtepi16_epi32.v.html_mm256_cvtepi16_epi64.v.html_mm256_cvtepi32_epi64.v.html_mm256_cvtepi8_epi16.v.html_mm256_cvtepi8_epi32.v.html_mm256_cvtepi8_epi64.v.html_mm256_cvtepu16_epi32.v.html_mm256_cvtepu16_epi64.v.html_mm256_cvtepu32_epi64.v.html_mm256_cvtepu8_epi16.v.html_mm256_cvtepu8_epi32.v.html_mm256_cvtepu8_epi64.v.html_mm256_cvtsd_f64.v.html_mm256_cvtsi256_si32.v.html_mm256_extract_epi16.v.html_mm256_extract_epi32.v.html_mm256_extract_epi8.v.html_mm256_extracti128_si256.v.html_mm256_hadd_epi16.v.html_mm256_hadd_epi32.v.html_mm256_hadds_epi16.v.html_mm256_hsub_epi16.v.html_mm256_hsub_epi32.v.html_mm256_hsubs_epi16.v.html_mm256_i32gather_epi32.v.html_mm256_i32gather_epi64.v.html_mm256_i32gather_pd.v.html_mm256_i32gather_ps.v.html_mm256_i64gather_epi32.v.html_mm256_i64gather_epi64.v.html_mm256_i64gather_pd.v.html_mm256_i64gather_ps.v.html_mm256_inserti128_si256.v.html_mm256_madd_epi16.v.html_mm256_maddubs_epi16.v.html_mm256_mask_i32gather_epi32.v.html_mm256_mask_i32gather_epi64.v.html_mm256_mask_i32gather_pd.v.html_mm256_mask_i32gather_ps.v.html_mm256_mask_i64gather_epi32.v.html_mm256_mask_i64gather_epi64.v.html_mm256_mask_i64gather_pd.v.html_mm256_mask_i64gather_ps.v.html_mm256_maskload_epi32.v.html_mm256_maskload_epi64.v.html_mm256_maskstore_epi32.v.html_mm256_maskstore_epi64.v.html_mm256_max_epi16.v.html_mm256_max_epi32.v.html_mm256_max_epi8.v.html_mm256_max_epu16.v.html_mm256_max_epu32.v.html_mm256_max_epu8.v.html_mm256_min_epi16.v.html_mm256_min_epi32.v.html_mm256_min_epi8.v.html_mm256_min_epu16.v.html_mm256_min_epu32.v.html_mm256_min_epu8.v.html_mm256_movemask_epi8.v.html_mm256_mpsadbw_epu8.v.html_mm256_mul_epi32.v.html_mm256_mul_epu32.v.html_mm256_mulhi_epi16.v.html_mm256_mulhi_epu16.v.html_mm256_mulhrs_epi16.v.html_mm256_mullo_epi16.v.html_mm256_mullo_epi32.v.html_mm256_or_si256.v.html_mm256_packs_epi16.v.html_mm256_packs_epi32.v.html_mm256_packus_epi16.v.html_mm256_packus_epi32.v.html_mm256_permute2x128_si256.v.html_mm256_permute4x64_epi64.v.html_mm256_permute4x64_pd.v.html_mm256_permutevar8x32_epi32.v.html_mm256_permutevar8x32_ps.v.html_mm256_sad_epu8.v.html_mm256_shuffle_epi32.v.html_mm256_shuffle_epi8.v.html_mm256_shufflehi_epi16.v.html_mm256_shufflelo_epi16.v.html_mm256_sign_epi16.v.html_mm256_sign_epi32.v.html_mm256_sign_epi8.v.html_mm256_sll_epi16.v.html_mm256_sll_epi32.v.html_mm256_sll_epi64.v.html_mm256_slli_epi16.v.html_mm256_slli_epi32.v.html_mm256_slli_epi64.v.html_mm256_slli_si256.v.html_mm256_sllv_epi32.v.html_mm256_sllv_epi64.v.html_mm256_sra_epi16.v.html_mm256_sra_epi32.v.html_mm256_srai_epi16.v.html_mm256_srai_epi32.v.html_mm256_srav_epi32.v.html_mm256_srl_epi16.v.html_mm256_srl_epi32.v.html_mm256_srl_epi64.v.html_mm256_srli_epi16.v.html_mm256_srli_epi32.v.html_mm256_srli_epi64.v.html_mm256_srli_si256.v.html_mm256_srlv_epi32.v.html_mm256_srlv_epi64.v.html_mm256_sub_epi16.v.html_mm256_sub_epi32.v.html_mm256_sub_epi64.v.html_mm256_sub_epi8.v.html_mm256_subs_epi16.v.html_mm256_subs_epi8.v.html_mm256_subs_epu16.v.html_mm256_subs_epu8.v.html_mm256_unpackhi_epi16.v.html_mm256_unpackhi_epi32.v.html_mm256_unpackhi_epi64.v.html_mm256_unpackhi_epi8.v.html_mm256_unpacklo_epi16.v.html_mm256_unpacklo_epi32.v.html_mm256_unpacklo_epi64.v.html_mm256_unpacklo_epi8.v.html_mm256_xor_si256.v.html_mm_blend_epi32.v.html_mm_broadcastb_epi8.v.html_mm_broadcastd_epi32.v.html_mm_broadcastq_epi64.v.html_mm_broadcastsd_pd.v.html_mm_broadcastss_ps.v.html_mm_broadcastw_epi16.v.html_mm_i32gather_epi32.v.html_mm_i32gather_epi64.v.html_mm_i32gather_pd.v.html_mm_i32gather_ps.v.html_mm_i64gather_epi32.v.html_mm_i64gather_epi64.v.html_mm_i64gather_pd.v.html_mm_i64gather_ps.v.html_mm_mask_i32gather_epi32.v.html_mm_mask_i32gather_epi64.v.html_mm_mask_i32gather_pd.v.html_mm_mask_i32gather_ps.v.html_mm_mask_i64gather_epi32.v.html_mm_mask_i64gather_epi64.v.html_mm_mask_i64gather_pd.v.html_mm_mask_i64gather_ps.v.html_mm_maskload_epi32.v.html_mm_maskload_epi64.v.html_mm_maskstore_epi32.v.html_mm_maskstore_epi64.v.html_mm_sllv_epi32.v.html_mm_sllv_epi64.v.html_mm_srav_epi32.v.html_mm_srlv_epi32.v.html_mm_srlv_epi64.v.htmlfn._mm256_abs_epi16.htmlfn._mm256_abs_epi32.htmlfn._mm256_abs_epi8.htmlfn._mm256_add_epi16.htmlfn._mm256_add_epi32.htmlfn._mm256_add_epi64.htmlfn._mm256_add_epi8.htmlfn._mm256_adds_epi16.htmlfn._mm256_adds_epi8.htmlfn._mm256_adds_epu16.htmlfn._mm256_adds_epu8.htmlfn._mm256_alignr_epi8.htmlfn._mm256_and_si256.htmlfn._mm256_andnot_si256.htmlfn._mm256_avg_epu16.htmlfn._mm256_avg_epu8.htmlfn._mm256_blend_epi16.htmlfn._mm256_blend_epi32.htmlfn._mm256_blendv_epi8.htmlfn._mm256_broadcastb_epi8.htmlfn._mm256_broadcastd_epi32.htmlfn._mm256_broadcastq_epi64.htmlfn._mm256_broadcastsd_pd.htmlfn._mm256_broadcastsi128_si256.htmlfn._mm256_broadcastss_ps.htmlfn._mm256_broadcastw_epi16.htmlfn._mm256_bslli_epi128.htmlfn._mm256_bsrli_epi128.htmlfn._mm256_cmpeq_epi16.htmlfn._mm256_cmpeq_epi32.htmlfn._mm256_cmpeq_epi64.htmlfn._mm256_cmpeq_epi8.htmlfn._mm256_cmpgt_epi16.htmlfn._mm256_cmpgt_epi32.htmlfn._mm256_cmpgt_epi64.htmlfn._mm256_cmpgt_epi8.htmlfn._mm256_cvtepi16_epi32.htmlfn._mm256_cvtepi16_epi64.htmlfn._mm256_cvtepi32_epi64.htmlfn._mm256_cvtepi8_epi16.htmlfn._mm256_cvtepi8_epi32.htmlfn._mm256_cvtepi8_epi64.htmlfn._mm256_cvtepu16_epi32.htmlfn._mm256_cvtepu16_epi64.htmlfn._mm256_cvtepu32_epi64.htmlfn._mm256_cvtepu8_epi16.htmlfn._mm256_cvtepu8_epi32.htmlfn._mm256_cvtepu8_epi64.htmlfn._mm256_cvtsd_f64.htmlfn._mm256_cvtsi256_si32.htmlfn._mm256_extract_epi16.htmlfn._mm256_extract_epi32.htmlfn._mm256_extract_epi8.htmlfn._mm256_extracti128_si256.htmlfn._mm256_hadd_epi16.htmlfn._mm256_hadd_epi32.htmlfn._mm256_hadds_epi16.htmlfn._mm256_hsub_epi16.htmlfn._mm256_hsub_epi32.htmlfn._mm256_hsubs_epi16.htmlfn._mm256_i32gather_epi32.htmlfn._mm256_i32gather_epi64.htmlfn._mm256_i32gather_pd.htmlfn._mm256_i32gather_ps.htmlfn._mm256_i64gather_epi32.htmlfn._mm256_i64gather_epi64.htmlfn._mm256_i64gather_pd.htmlfn._mm256_i64gather_ps.htmlfn._mm256_inserti128_si256.htmlfn._mm256_madd_epi16.htmlfn._mm256_maddubs_epi16.htmlfn._mm256_mask_i32gather_epi32.htmlfn._mm256_mask_i32gather_epi64.htmlfn._mm256_mask_i32gather_pd.htmlfn._mm256_mask_i32gather_ps.htmlfn._mm256_mask_i64gather_epi32.htmlfn._mm256_mask_i64gather_epi64.htmlfn._mm256_mask_i64gather_pd.htmlfn._mm256_mask_i64gather_ps.htmlfn._mm256_maskload_epi32.htmlfn._mm256_maskload_epi64.htmlfn._mm256_maskstore_epi32.htmlfn._mm256_maskstore_epi64.htmlfn._mm256_max_epi16.htmlfn._mm256_max_epi32.htmlfn._mm256_max_epi8.htmlfn._mm256_max_epu16.htmlfn._mm256_max_epu32.htmlfn._mm256_max_epu8.htmlfn._mm256_min_epi16.htmlfn._mm256_min_epi32.htmlfn._mm256_min_epi8.htmlfn._mm256_min_epu16.htmlfn._mm256_min_epu32.htmlfn._mm256_min_epu8.htmlfn._mm256_movemask_epi8.htmlfn._mm256_mpsadbw_epu8.htmlfn._mm256_mul_epi32.htmlfn._mm256_mul_epu32.htmlfn._mm256_mulhi_epi16.htmlfn._mm256_mulhi_epu16.htmlfn._mm256_mulhrs_epi16.htmlfn._mm256_mullo_epi16.htmlfn._mm256_mullo_epi32.htmlfn._mm256_or_si256.htmlfn._mm256_packs_epi16.htmlfn._mm256_packs_epi32.htmlfn._mm256_packus_epi16.htmlfn._mm256_packus_epi32.htmlfn._mm256_permute2x128_si256.htmlfn._mm256_permute4x64_epi64.htmlfn._mm256_permute4x64_pd.htmlfn._mm256_permutevar8x32_epi32.htmlfn._mm256_permutevar8x32_ps.htmlfn._mm256_sad_epu8.htmlfn._mm256_shuffle_epi32.htmlfn._mm256_shuffle_epi8.htmlfn._mm256_shufflehi_epi16.htmlfn._mm256_shufflelo_epi16.htmlfn._mm256_sign_epi16.htmlfn._mm256_sign_epi32.htmlfn._mm256_sign_epi8.htmlfn._mm256_sll_epi16.htmlfn._mm256_sll_epi32.htmlfn._mm256_sll_epi64.htmlfn._mm256_slli_epi16.htmlfn._mm256_slli_epi32.htmlfn._mm256_slli_epi64.htmlfn._mm256_slli_si256.htmlfn._mm256_sllv_epi32.htmlfn._mm256_sllv_epi64.htmlfn._mm256_sra_epi16.htmlfn._mm256_sra_epi32.htmlfn._mm256_srai_epi16.htmlfn._mm256_srai_epi32.htmlfn._mm256_srav_epi32.htmlfn._mm256_srl_epi16.htmlfn._mm256_srl_epi32.htmlfn._mm256_srl_epi64.htmlfn._mm256_srli_epi16.htmlfn._mm256_srli_epi32.htmlfn._mm256_srli_epi64.htmlfn._mm256_srli_si256.htmlfn._mm256_srlv_epi32.htmlfn._mm256_srlv_epi64.htmlfn._mm256_sub_epi16.htmlfn._mm256_sub_epi32.htmlfn._mm256_sub_epi64.htmlfn._mm256_sub_epi8.htmlfn._mm256_subs_epi16.htmlfn._mm256_subs_epi8.htmlfn._mm256_subs_epu16.htmlfn._mm256_subs_epu8.htmlfn._mm256_unpackhi_epi16.htmlfn._mm256_unpackhi_epi32.htmlfn._mm256_unpackhi_epi64.htmlfn._mm256_unpackhi_epi8.htmlfn._mm256_unpacklo_epi16.htmlfn._mm256_unpacklo_epi32.htmlfn._mm256_unpacklo_epi64.htmlfn._mm256_unpacklo_epi8.htmlfn._mm256_xor_si256.htmlfn._mm_blend_epi32.htmlfn._mm_broadcastb_epi8.htmlfn._mm_broadcastd_epi32.htmlfn._mm_broadcastq_epi64.htmlfn._mm_broadcastsd_pd.htmlfn._mm_broadcastss_ps.htmlfn._mm_broadcastw_epi16.htmlfn._mm_i32gather_epi32.htmlfn._mm_i32gather_epi64.htmlfn._mm_i32gather_pd.htmlfn._mm_i32gather_ps.htmlfn._mm_i64gather_epi32.htmlfn._mm_i64gather_epi64.htmlfn._mm_i64gather_pd.htmlfn._mm_i64gather_ps.htmlfn._mm_mask_i32gather_epi32.htmlfn._mm_mask_i32gather_epi64.htmlfn._mm_mask_i32gather_pd.htmlfn._mm_mask_i32gather_ps.htmlfn._mm_mask_i64gather_epi32.htmlfn._mm_mask_i64gather_epi64.htmlfn._mm_mask_i64gather_pd.htmlfn._mm_mask_i64gather_ps.htmlfn._mm_maskload_epi32.htmlfn._mm_maskload_epi64.htmlfn._mm_maskstore_epi32.htmlfn._mm_maskstore_epi64.htmlfn._mm_sllv_epi32.htmlfn._mm_sllv_epi64.htmlfn._mm_srav_epi32.htmlfn._mm_srlv_epi32.htmlfn._mm_srlv_epi64.htmlavx512f_mm512_abs_epi32.v.html_mm512_mask_abs_epi32.v.html_mm512_maskz_abs_epi32.v.html_mm512_set1_epi64.v.html_mm512_setr_epi32.v.html_mm512_setzero_si512.v.htmlfn._mm512_abs_epi32.htmlfn._mm512_mask_abs_epi32.htmlfn._mm512_maskz_abs_epi32.htmlfn._mm512_set1_epi64.htmlfn._mm512_setr_epi32.htmlfn._mm512_setzero_si512.htmlavx512ifma_mm256_madd52hi_epu64.v.html_mm256_madd52lo_epu64.v.html_mm512_madd52hi_epu64.v.html_mm512_madd52lo_epu64.v.html_mm_madd52hi_epu64.v.html_mm_madd52lo_epu64.v.htmlfn._mm256_madd52hi_epu64.htmlfn._mm256_madd52lo_epu64.htmlfn._mm512_madd52hi_epu64.htmlfn._mm512_madd52lo_epu64.htmlfn._mm_madd52hi_epu64.htmlfn._mm_madd52lo_epu64.htmlbmi1_andn_u32.v.html_bextr2_u32.v.html_bextr_u32.v.html_blsi_u32.v.html_blsmsk_u32.v.html_blsr_u32.v.html_mm_tzcnt_32.v.html_tzcnt_u32.v.htmlfn._andn_u32.htmlfn._bextr2_u32.htmlfn._bextr_u32.htmlfn._blsi_u32.htmlfn._blsmsk_u32.htmlfn._blsr_u32.htmlfn._mm_tzcnt_32.htmlfn._tzcnt_u32.htmlbmi2_bzhi_u32.v.html_mulx_u32.v.html_pdep_u32.v.html_pext_u32.v.htmlfn._bzhi_u32.htmlfn._mulx_u32.htmlfn._pdep_u32.htmlfn._pext_u32.htmlbswap_bswap.v.htmlfn._bswap.htmlbt_bittest.v.html_bittestandcomplement.v.html_bittestandreset.v.html_bittestandset.v.htmlfn._bittest.htmlfn._bittestandcomplement.htmlfn._bittestandreset.htmlfn._bittestandset.htmlcpuidCpuidResult.t.html__cpuid.v.html__cpuid_count.v.html__get_cpuid_max.v.htmlfn.__cpuid.htmlfn.__cpuid_count.htmlfn.__get_cpuid_max.htmlfn.has_cpuid.htmlhas_cpuid.v.htmlstruct.CpuidResult.htmlf16c_mm256_cvtph_ps.v.html_mm256_cvtps_ph.v.html_mm_cvtph_ps.v.html_mm_cvtps_ph.v.htmlfn._mm256_cvtph_ps.htmlfn._mm256_cvtps_ph.htmlfn._mm_cvtph_ps.htmlfn._mm_cvtps_ph.htmlfma_mm256_fmadd_pd.v.html_mm256_fmadd_ps.v.html_mm256_fmaddsub_pd.v.html_mm256_fmaddsub_ps.v.html_mm256_fmsub_pd.v.html_mm256_fmsub_ps.v.html_mm256_fmsubadd_pd.v.html_mm256_fmsubadd_ps.v.html_mm256_fnmadd_pd.v.html_mm256_fnmadd_ps.v.html_mm256_fnmsub_pd.v.html_mm256_fnmsub_ps.v.html_mm_fmadd_pd.v.html_mm_fmadd_ps.v.html_mm_fmadd_sd.v.html_mm_fmadd_ss.v.html_mm_fmaddsub_pd.v.html_mm_fmaddsub_ps.v.html_mm_fmsub_pd.v.html_mm_fmsub_ps.v.html_mm_fmsub_sd.v.html_mm_fmsub_ss.v.html_mm_fmsubadd_pd.v.html_mm_fmsubadd_ps.v.html_mm_fnmadd_pd.v.html_mm_fnmadd_ps.v.html_mm_fnmadd_sd.v.html_mm_fnmadd_ss.v.html_mm_fnmsub_pd.v.html_mm_fnmsub_ps.v.html_mm_fnmsub_sd.v.html_mm_fnmsub_ss.v.htmlfn._mm256_fmadd_pd.htmlfn._mm256_fmadd_ps.htmlfn._mm256_fmaddsub_pd.htmlfn._mm256_fmaddsub_ps.htmlfn._mm256_fmsub_pd.htmlfn._mm256_fmsub_ps.htmlfn._mm256_fmsubadd_pd.htmlfn._mm256_fmsubadd_ps.htmlfn._mm256_fnmadd_pd.htmlfn._mm256_fnmadd_ps.htmlfn._mm256_fnmsub_pd.htmlfn._mm256_fnmsub_ps.htmlfn._mm_fmadd_pd.htmlfn._mm_fmadd_ps.htmlfn._mm_fmadd_sd.htmlfn._mm_fmadd_ss.htmlfn._mm_fmaddsub_pd.htmlfn._mm_fmaddsub_ps.htmlfn._mm_fmsub_pd.htmlfn._mm_fmsub_ps.htmlfn._mm_fmsub_sd.htmlfn._mm_fmsub_ss.htmlfn._mm_fmsubadd_pd.htmlfn._mm_fmsubadd_ps.htmlfn._mm_fnmadd_pd.htmlfn._mm_fnmadd_ps.htmlfn._mm_fnmadd_sd.htmlfn._mm_fnmadd_ss.htmlfn._mm_fnmsub_pd.htmlfn._mm_fnmsub_ps.htmlfn._mm_fnmsub_sd.htmlfn._mm_fnmsub_ss.htmlfn.ud2.htmlfxsr_fxrstor.v.html_fxsave.v.htmlfn._fxrstor.htmlfn._fxsave.htmlmmx_m_empty.v.html_m_paddb.v.html_m_paddd.v.html_m_paddsb.v.html_m_paddsw.v.html_m_paddusb.v.html_m_paddusw.v.html_m_paddw.v.html_m_psubb.v.html_m_psubd.v.html_m_psubsb.v.html_m_psubsw.v.html_m_psubusb.v.html_m_psubusw.v.html_m_psubw.v.html_mm_add_pi16.v.html_mm_add_pi32.v.html_mm_add_pi8.v.html_mm_adds_pi16.v.html_mm_adds_pi8.v.html_mm_adds_pu16.v.html_mm_adds_pu8.v.html_mm_cmpgt_pi16.v.html_mm_cmpgt_pi32.v.html_mm_cmpgt_pi8.v.html_mm_cvtsi32_si64.v.html_mm_cvtsi64_si32.v.html_mm_empty.v.html_mm_packs_pi16.v.html_mm_packs_pi32.v.html_mm_set1_pi16.v.html_mm_set1_pi32.v.html_mm_set1_pi8.v.html_mm_set_pi16.v.html_mm_set_pi32.v.html_mm_set_pi8.v.html_mm_setr_pi16.v.html_mm_setr_pi32.v.html_mm_setr_pi8.v.html_mm_setzero_si64.v.html_mm_sub_pi16.v.html_mm_sub_pi32.v.html_mm_sub_pi8.v.html_mm_subs_pi16.v.html_mm_subs_pi8.v.html_mm_subs_pu16.v.html_mm_subs_pu8.v.html_mm_unpackhi_pi16.v.html_mm_unpackhi_pi32.v.html_mm_unpackhi_pi8.v.html_mm_unpacklo_pi16.v.html_mm_unpacklo_pi32.v.html_mm_unpacklo_pi8.v.htmlfn._m_empty.htmlfn._m_paddb.htmlfn._m_paddd.htmlfn._m_paddsb.htmlfn._m_paddsw.htmlfn._m_paddusb.htmlfn._m_paddusw.htmlfn._m_paddw.htmlfn._m_psubb.htmlfn._m_psubd.htmlfn._m_psubsb.htmlfn._m_psubsw.htmlfn._m_psubusb.htmlfn._m_psubusw.htmlfn._m_psubw.htmlfn._mm_add_pi16.htmlfn._mm_add_pi32.htmlfn._mm_add_pi8.htmlfn._mm_adds_pi16.htmlfn._mm_adds_pi8.htmlfn._mm_adds_pu16.htmlfn._mm_adds_pu8.htmlfn._mm_cmpgt_pi16.htmlfn._mm_cmpgt_pi32.htmlfn._mm_cmpgt_pi8.htmlfn._mm_cvtsi32_si64.htmlfn._mm_cvtsi64_si32.htmlfn._mm_empty.htmlfn._mm_packs_pi16.htmlfn._mm_packs_pi32.htmlfn._mm_set1_pi16.htmlfn._mm_set1_pi32.htmlfn._mm_set1_pi8.htmlfn._mm_set_pi16.htmlfn._mm_set_pi32.htmlfn._mm_set_pi8.htmlfn._mm_setr_pi16.htmlfn._mm_setr_pi32.htmlfn._mm_setr_pi8.htmlfn._mm_setzero_si64.htmlfn._mm_sub_pi16.htmlfn._mm_sub_pi32.htmlfn._mm_sub_pi8.htmlfn._mm_subs_pi16.htmlfn._mm_subs_pi8.htmlfn._mm_subs_pu16.htmlfn._mm_subs_pu8.htmlfn._mm_unpackhi_pi16.htmlfn._mm_unpackhi_pi32.htmlfn._mm_unpackhi_pi8.htmlfn._mm_unpacklo_pi16.htmlfn._mm_unpacklo_pi32.htmlfn._mm_unpacklo_pi8.htmlpclmulqdq_mm_clmulepi64_si128.v.htmlfn._mm_clmulepi64_si128.htmlrdrand_rdrand16_step.v.html_rdrand32_step.v.html_rdseed16_step.v.html_rdseed32_step.v.htmlfn._rdrand16_step.htmlfn._rdrand32_step.htmlfn._rdseed16_step.htmlfn._rdseed32_step.htmlrdtsc__rdtscp.v.html_rdtsc.v.htmlfn.__rdtscp.htmlfn._rdtsc.htmlrtm_XABORT_CAPACITY.v.html_XABORT_CONFLICT.v.html_XABORT_DEBUG.v.html_XABORT_EXPLICIT.v.html_XABORT_NESTED.v.html_XABORT_RETRY.v.html_XBEGIN_STARTED.v.html_xabort.v.html_xabort_code.v.html_xbegin.v.html_xend.v.html_xtest.v.htmlconstant._XABORT_CAPACITY.htmlconstant._XABORT_CONFLICT.htmlconstant._XABORT_DEBUG.htmlconstant._XABORT_EXPLICIT.htmlconstant._XABORT_NESTED.htmlconstant._XABORT_RETRY.htmlconstant._XBEGIN_STARTED.htmlfn._xabort.htmlfn._xabort_code.htmlfn._xbegin.htmlfn._xend.htmlfn._xtest.htmlsha_mm_sha1msg1_epu32.v.html_mm_sha1msg2_epu32.v.html_mm_sha1nexte_epu32.v.html_mm_sha1rnds4_epu32.v.html_mm_sha256msg1_epu32.v.html_mm_sha256msg2_epu32.v.html_mm_sha256rnds2_epu32.v.htmlfn._mm_sha1msg1_epu32.htmlfn._mm_sha1msg2_epu32.htmlfn._mm_sha1nexte_epu32.htmlfn._mm_sha1rnds4_epu32.htmlfn._mm_sha256msg1_epu32.htmlfn._mm_sha256msg2_epu32.htmlfn._mm_sha256rnds2_epu32.htmlsse_MM_EXCEPT_DENORM.v.html_MM_EXCEPT_DIV_ZERO.v.html_MM_EXCEPT_INEXACT.v.html_MM_EXCEPT_INVALID.v.html_MM_EXCEPT_MASK.v.html_MM_EXCEPT_OVERFLOW.v.html_MM_EXCEPT_UNDERFLOW.v.html_MM_FLUSH_ZERO_MASK.v.html_MM_FLUSH_ZERO_OFF.v.html_MM_FLUSH_ZERO_ON.v.html_MM_GET_EXCEPTION_MASK.v.html_MM_GET_EXCEPTION_STATE.v.html_MM_GET_FLUSH_ZERO_MODE.v.html_MM_GET_ROUNDING_MODE.v.html_MM_HINT_NTA.v.html_MM_HINT_T0.v.html_MM_HINT_T1.v.html_MM_HINT_T2.v.html_MM_MASK_DENORM.v.html_MM_MASK_DIV_ZERO.v.html_MM_MASK_INEXACT.v.html_MM_MASK_INVALID.v.html_MM_MASK_MASK.v.html_MM_MASK_OVERFLOW.v.html_MM_MASK_UNDERFLOW.v.html_MM_ROUND_DOWN.v.html_MM_ROUND_MASK.v.html_MM_ROUND_NEAREST.v.html_MM_ROUND_TOWARD_ZERO.v.html_MM_ROUND_UP.v.html_MM_SET_EXCEPTION_MASK.v.html_MM_SET_EXCEPTION_STATE.v.html_MM_SET_FLUSH_ZERO_MODE.v.html_MM_SET_ROUNDING_MODE.v.html_MM_SHUFFLE.v.html_MM_TRANSPOSE4_PS.v.html_m_maskmovq.v.html_m_pavgb.v.html_m_pavgw.v.html_m_pextrw.v.html_m_pinsrw.v.html_m_pmaxsw.v.html_m_pmaxub.v.html_m_pminsw.v.html_m_pminub.v.html_m_pmovmskb.v.html_m_pmulhuw.v.html_m_psadbw.v.html_m_pshufw.v.html_mm_add_ps.v.html_mm_add_ss.v.html_mm_and_ps.v.html_mm_andnot_ps.v.html_mm_avg_pu16.v.html_mm_avg_pu8.v.html_mm_cmpeq_ps.v.html_mm_cmpeq_ss.v.html_mm_cmpge_ps.v.html_mm_cmpge_ss.v.html_mm_cmpgt_ps.v.html_mm_cmpgt_ss.v.html_mm_cmple_ps.v.html_mm_cmple_ss.v.html_mm_cmplt_ps.v.html_mm_cmplt_ss.v.html_mm_cmpneq_ps.v.html_mm_cmpneq_ss.v.html_mm_cmpnge_ps.v.html_mm_cmpnge_ss.v.html_mm_cmpngt_ps.v.html_mm_cmpngt_ss.v.html_mm_cmpnle_ps.v.html_mm_cmpnle_ss.v.html_mm_cmpnlt_ps.v.html_mm_cmpnlt_ss.v.html_mm_cmpord_ps.v.html_mm_cmpord_ss.v.html_mm_cmpunord_ps.v.html_mm_cmpunord_ss.v.html_mm_comieq_ss.v.html_mm_comige_ss.v.html_mm_comigt_ss.v.html_mm_comile_ss.v.html_mm_comilt_ss.v.html_mm_comineq_ss.v.html_mm_cvt_pi2ps.v.html_mm_cvt_ps2pi.v.html_mm_cvt_si2ss.v.html_mm_cvt_ss2si.v.html_mm_cvtpi16_ps.v.html_mm_cvtpi32_ps.v.html_mm_cvtpi32x2_ps.v.html_mm_cvtpi8_ps.v.html_mm_cvtps_pi16.v.html_mm_cvtps_pi32.v.html_mm_cvtps_pi8.v.html_mm_cvtpu16_ps.v.html_mm_cvtpu8_ps.v.html_mm_cvtsi32_ss.v.html_mm_cvtss_f32.v.html_mm_cvtss_si32.v.html_mm_cvtt_ps2pi.v.html_mm_cvtt_ss2si.v.html_mm_cvttps_pi32.v.html_mm_cvttss_si32.v.html_mm_div_ps.v.html_mm_div_ss.v.html_mm_extract_pi16.v.html_mm_getcsr.v.html_mm_insert_pi16.v.html_mm_load1_ps.v.html_mm_load_ps.v.html_mm_load_ps1.v.html_mm_load_ss.v.html_mm_loadh_pi.v.html_mm_loadl_pi.v.html_mm_loadr_ps.v.html_mm_loadu_ps.v.html_mm_maskmove_si64.v.html_mm_max_pi16.v.html_mm_max_ps.v.html_mm_max_pu8.v.html_mm_max_ss.v.html_mm_min_pi16.v.html_mm_min_ps.v.html_mm_min_pu8.v.html_mm_min_ss.v.html_mm_move_ss.v.html_mm_movehl_ps.v.html_mm_movelh_ps.v.html_mm_movemask_pi8.v.html_mm_movemask_ps.v.html_mm_mul_ps.v.html_mm_mul_ss.v.html_mm_mulhi_pu16.v.html_mm_mullo_pi16.v.html_mm_or_ps.v.html_mm_prefetch.v.html_mm_rcp_ps.v.html_mm_rcp_ss.v.html_mm_rsqrt_ps.v.html_mm_rsqrt_ss.v.html_mm_sad_pu8.v.html_mm_set1_ps.v.html_mm_set_ps.v.html_mm_set_ps1.v.html_mm_set_ss.v.html_mm_setcsr.v.html_mm_setr_ps.v.html_mm_setzero_ps.v.html_mm_sfence.v.html_mm_shuffle_pi16.v.html_mm_shuffle_ps.v.html_mm_sqrt_ps.v.html_mm_sqrt_ss.v.html_mm_store1_ps.v.html_mm_store_ps.v.html_mm_store_ps1.v.html_mm_store_ss.v.html_mm_storeh_pi.v.html_mm_storel_pi.v.html_mm_storer_ps.v.html_mm_storeu_ps.v.html_mm_stream_pi.v.html_mm_stream_ps.v.html_mm_sub_ps.v.html_mm_sub_ss.v.html_mm_ucomieq_ss.v.html_mm_ucomige_ss.v.html_mm_ucomigt_ss.v.html_mm_ucomile_ss.v.html_mm_ucomilt_ss.v.html_mm_ucomineq_ss.v.html_mm_undefined_ps.v.html_mm_unpackhi_ps.v.html_mm_unpacklo_ps.v.html_mm_xor_ps.v.htmlconstant._MM_EXCEPT_DENORM.htmlconstant._MM_EXCEPT_DIV_ZERO.htmlconstant._MM_EXCEPT_INEXACT.htmlconstant._MM_EXCEPT_INVALID.htmlconstant._MM_EXCEPT_MASK.htmlconstant._MM_EXCEPT_OVERFLOW.htmlconstant._MM_EXCEPT_UNDERFLOW.htmlconstant._MM_FLUSH_ZERO_MASK.htmlconstant._MM_FLUSH_ZERO_OFF.htmlconstant._MM_FLUSH_ZERO_ON.htmlconstant._MM_HINT_NTA.htmlconstant._MM_HINT_T0.htmlconstant._MM_HINT_T1.htmlconstant._MM_HINT_T2.htmlconstant._MM_MASK_DENORM.htmlconstant._MM_MASK_DIV_ZERO.htmlconstant._MM_MASK_INEXACT.htmlconstant._MM_MASK_INVALID.htmlconstant._MM_MASK_MASK.htmlconstant._MM_MASK_OVERFLOW.htmlconstant._MM_MASK_UNDERFLOW.htmlconstant._MM_ROUND_DOWN.htmlconstant._MM_ROUND_MASK.htmlconstant._MM_ROUND_NEAREST.htmlconstant._MM_ROUND_TOWARD_ZERO.htmlconstant._MM_ROUND_UP.htmlfn._MM_GET_EXCEPTION_MASK.htmlfn._MM_GET_EXCEPTION_STATE.htmlfn._MM_GET_FLUSH_ZERO_MODE.htmlfn._MM_GET_ROUNDING_MODE.htmlfn._MM_SET_EXCEPTION_MASK.htmlfn._MM_SET_EXCEPTION_STATE.htmlfn._MM_SET_FLUSH_ZERO_MODE.htmlfn._MM_SET_ROUNDING_MODE.htmlfn._MM_SHUFFLE.htmlfn._MM_TRANSPOSE4_PS.htmlfn._m_maskmovq.htmlfn._m_pavgb.htmlfn._m_pavgw.htmlfn._m_pextrw.htmlfn._m_pinsrw.htmlfn._m_pmaxsw.htmlfn._m_pmaxub.htmlfn._m_pminsw.htmlfn._m_pminub.htmlfn._m_pmovmskb.htmlfn._m_pmulhuw.htmlfn._m_psadbw.htmlfn._m_pshufw.htmlfn._mm_add_ps.htmlfn._mm_add_ss.htmlfn._mm_and_ps.htmlfn._mm_andnot_ps.htmlfn._mm_avg_pu16.htmlfn._mm_avg_pu8.htmlfn._mm_cmpeq_ps.htmlfn._mm_cmpeq_ss.htmlfn._mm_cmpge_ps.htmlfn._mm_cmpge_ss.htmlfn._mm_cmpgt_ps.htmlfn._mm_cmpgt_ss.htmlfn._mm_cmple_ps.htmlfn._mm_cmple_ss.htmlfn._mm_cmplt_ps.htmlfn._mm_cmplt_ss.htmlfn._mm_cmpneq_ps.htmlfn._mm_cmpneq_ss.htmlfn._mm_cmpnge_ps.htmlfn._mm_cmpnge_ss.htmlfn._mm_cmpngt_ps.htmlfn._mm_cmpngt_ss.htmlfn._mm_cmpnle_ps.htmlfn._mm_cmpnle_ss.htmlfn._mm_cmpnlt_ps.htmlfn._mm_cmpnlt_ss.htmlfn._mm_cmpord_ps.htmlfn._mm_cmpord_ss.htmlfn._mm_cmpunord_ps.htmlfn._mm_cmpunord_ss.htmlfn._mm_comieq_ss.htmlfn._mm_comige_ss.htmlfn._mm_comigt_ss.htmlfn._mm_comile_ss.htmlfn._mm_comilt_ss.htmlfn._mm_comineq_ss.htmlfn._mm_cvt_pi2ps.htmlfn._mm_cvt_ps2pi.htmlfn._mm_cvt_si2ss.htmlfn._mm_cvt_ss2si.htmlfn._mm_cvtpi16_ps.htmlfn._mm_cvtpi32_ps.htmlfn._mm_cvtpi32x2_ps.htmlfn._mm_cvtpi8_ps.htmlfn._mm_cvtps_pi16.htmlfn._mm_cvtps_pi32.htmlfn._mm_cvtps_pi8.htmlfn._mm_cvtpu16_ps.htmlfn._mm_cvtpu8_ps.htmlfn._mm_cvtsi32_ss.htmlfn._mm_cvtss_f32.htmlfn._mm_cvtss_si32.htmlfn._mm_cvtt_ps2pi.htmlfn._mm_cvtt_ss2si.htmlfn._mm_cvttps_pi32.htmlfn._mm_cvttss_si32.htmlfn._mm_div_ps.htmlfn._mm_div_ss.htmlfn._mm_extract_pi16.htmlfn._mm_getcsr.htmlfn._mm_insert_pi16.htmlfn._mm_load1_ps.htmlfn._mm_load_ps.htmlfn._mm_load_ps1.htmlfn._mm_load_ss.htmlfn._mm_loadh_pi.htmlfn._mm_loadl_pi.htmlfn._mm_loadr_ps.htmlfn._mm_loadu_ps.htmlfn._mm_maskmove_si64.htmlfn._mm_max_pi16.htmlfn._mm_max_ps.htmlfn._mm_max_pu8.htmlfn._mm_max_ss.htmlfn._mm_min_pi16.htmlfn._mm_min_ps.htmlfn._mm_min_pu8.htmlfn._mm_min_ss.htmlfn._mm_move_ss.htmlfn._mm_movehl_ps.htmlfn._mm_movelh_ps.htmlfn._mm_movemask_pi8.htmlfn._mm_movemask_ps.htmlfn._mm_mul_ps.htmlfn._mm_mul_ss.htmlfn._mm_mulhi_pu16.htmlfn._mm_mullo_pi16.htmlfn._mm_or_ps.htmlfn._mm_prefetch.htmlfn._mm_rcp_ps.htmlfn._mm_rcp_ss.htmlfn._mm_rsqrt_ps.htmlfn._mm_rsqrt_ss.htmlfn._mm_sad_pu8.htmlfn._mm_set1_ps.htmlfn._mm_set_ps.htmlfn._mm_set_ps1.htmlfn._mm_set_ss.htmlfn._mm_setcsr.htmlfn._mm_setr_ps.htmlfn._mm_setzero_ps.htmlfn._mm_sfence.htmlfn._mm_shuffle_pi16.htmlfn._mm_shuffle_ps.htmlfn._mm_sqrt_ps.htmlfn._mm_sqrt_ss.htmlfn._mm_store1_ps.htmlfn._mm_store_ps.htmlfn._mm_store_ps1.htmlfn._mm_store_ss.htmlfn._mm_storeh_pi.htmlfn._mm_storel_pi.htmlfn._mm_storer_ps.htmlfn._mm_storeu_ps.htmlfn._mm_stream_pi.htmlfn._mm_stream_ps.htmlfn._mm_sub_ps.htmlfn._mm_sub_ss.htmlfn._mm_ucomieq_ss.htmlfn._mm_ucomige_ss.htmlfn._mm_ucomigt_ss.htmlfn._mm_ucomile_ss.htmlfn._mm_ucomilt_ss.htmlfn._mm_ucomineq_ss.htmlfn._mm_undefined_ps.htmlfn._mm_unpackhi_ps.htmlfn._mm_unpacklo_ps.htmlfn._mm_xor_ps.htmlsse2_mm_add_epi16.v.html_mm_add_epi32.v.html_mm_add_epi64.v.html_mm_add_epi8.v.html_mm_add_pd.v.html_mm_add_sd.v.html_mm_add_si64.v.html_mm_adds_epi16.v.html_mm_adds_epi8.v.html_mm_adds_epu16.v.html_mm_adds_epu8.v.html_mm_and_pd.v.html_mm_and_si128.v.html_mm_andnot_pd.v.html_mm_andnot_si128.v.html_mm_avg_epu16.v.html_mm_avg_epu8.v.html_mm_bslli_si128.v.html_mm_bsrli_si128.v.html_mm_castpd_ps.v.html_mm_castpd_si128.v.html_mm_castps_pd.v.html_mm_castps_si128.v.html_mm_castsi128_pd.v.html_mm_castsi128_ps.v.html_mm_clflush.v.html_mm_cmpeq_epi16.v.html_mm_cmpeq_epi32.v.html_mm_cmpeq_epi8.v.html_mm_cmpeq_pd.v.html_mm_cmpeq_sd.v.html_mm_cmpge_pd.v.html_mm_cmpge_sd.v.html_mm_cmpgt_epi16.v.html_mm_cmpgt_epi32.v.html_mm_cmpgt_epi8.v.html_mm_cmpgt_pd.v.html_mm_cmpgt_sd.v.html_mm_cmple_pd.v.html_mm_cmple_sd.v.html_mm_cmplt_epi16.v.html_mm_cmplt_epi32.v.html_mm_cmplt_epi8.v.html_mm_cmplt_pd.v.html_mm_cmplt_sd.v.html_mm_cmpneq_pd.v.html_mm_cmpneq_sd.v.html_mm_cmpnge_pd.v.html_mm_cmpnge_sd.v.html_mm_cmpngt_pd.v.html_mm_cmpngt_sd.v.html_mm_cmpnle_pd.v.html_mm_cmpnle_sd.v.html_mm_cmpnlt_pd.v.html_mm_cmpnlt_sd.v.html_mm_cmpord_pd.v.html_mm_cmpord_sd.v.html_mm_cmpunord_pd.v.html_mm_cmpunord_sd.v.html_mm_comieq_sd.v.html_mm_comige_sd.v.html_mm_comigt_sd.v.html_mm_comile_sd.v.html_mm_comilt_sd.v.html_mm_comineq_sd.v.html_mm_cvtepi32_pd.v.html_mm_cvtepi32_ps.v.html_mm_cvtpd_epi32.v.html_mm_cvtpd_pi32.v.html_mm_cvtpd_ps.v.html_mm_cvtpi32_pd.v.html_mm_cvtps_epi32.v.html_mm_cvtps_pd.v.html_mm_cvtsd_f64.v.html_mm_cvtsd_si32.v.html_mm_cvtsd_ss.v.html_mm_cvtsi128_si32.v.html_mm_cvtsi32_sd.v.html_mm_cvtsi32_si128.v.html_mm_cvtss_sd.v.html_mm_cvttpd_epi32.v.html_mm_cvttpd_pi32.v.html_mm_cvttps_epi32.v.html_mm_cvttsd_si32.v.html_mm_div_pd.v.html_mm_div_sd.v.html_mm_extract_epi16.v.html_mm_insert_epi16.v.html_mm_lfence.v.html_mm_load1_pd.v.html_mm_load_pd.v.html_mm_load_pd1.v.html_mm_load_sd.v.html_mm_load_si128.v.html_mm_loadh_pd.v.html_mm_loadl_epi64.v.html_mm_loadl_pd.v.html_mm_loadr_pd.v.html_mm_loadu_pd.v.html_mm_loadu_si128.v.html_mm_madd_epi16.v.html_mm_maskmoveu_si128.v.html_mm_max_epi16.v.html_mm_max_epu8.v.html_mm_max_pd.v.html_mm_max_sd.v.html_mm_mfence.v.html_mm_min_epi16.v.html_mm_min_epu8.v.html_mm_min_pd.v.html_mm_min_sd.v.html_mm_move_epi64.v.html_mm_move_sd.v.html_mm_movemask_epi8.v.html_mm_movemask_pd.v.html_mm_movepi64_pi64.v.html_mm_movpi64_epi64.v.html_mm_mul_epu32.v.html_mm_mul_pd.v.html_mm_mul_sd.v.html_mm_mul_su32.v.html_mm_mulhi_epi16.v.html_mm_mulhi_epu16.v.html_mm_mullo_epi16.v.html_mm_or_pd.v.html_mm_or_si128.v.html_mm_packs_epi16.v.html_mm_packs_epi32.v.html_mm_packus_epi16.v.html_mm_pause.v.html_mm_sad_epu8.v.html_mm_set1_epi16.v.html_mm_set1_epi32.v.html_mm_set1_epi64.v.html_mm_set1_epi64x.v.html_mm_set1_epi8.v.html_mm_set1_pd.v.html_mm_set_epi16.v.html_mm_set_epi32.v.html_mm_set_epi64.v.html_mm_set_epi64x.v.html_mm_set_epi8.v.html_mm_set_pd.v.html_mm_set_pd1.v.html_mm_set_sd.v.html_mm_setr_epi16.v.html_mm_setr_epi32.v.html_mm_setr_epi64.v.html_mm_setr_epi8.v.html_mm_setr_pd.v.html_mm_setzero_pd.v.html_mm_setzero_si128.v.html_mm_shuffle_epi32.v.html_mm_shuffle_pd.v.html_mm_shufflehi_epi16.v.html_mm_shufflelo_epi16.v.html_mm_sll_epi16.v.html_mm_sll_epi32.v.html_mm_sll_epi64.v.html_mm_slli_epi16.v.html_mm_slli_epi32.v.html_mm_slli_epi64.v.html_mm_slli_si128.v.html_mm_sqrt_pd.v.html_mm_sqrt_sd.v.html_mm_sra_epi16.v.html_mm_sra_epi32.v.html_mm_srai_epi16.v.html_mm_srai_epi32.v.html_mm_srl_epi16.v.html_mm_srl_epi32.v.html_mm_srl_epi64.v.html_mm_srli_epi16.v.html_mm_srli_epi32.v.html_mm_srli_epi64.v.html_mm_srli_si128.v.html_mm_store1_pd.v.html_mm_store_pd.v.html_mm_store_pd1.v.html_mm_store_sd.v.html_mm_store_si128.v.html_mm_storeh_pd.v.html_mm_storel_epi64.v.html_mm_storel_pd.v.html_mm_storer_pd.v.html_mm_storeu_pd.v.html_mm_storeu_si128.v.html_mm_stream_pd.v.html_mm_stream_si128.v.html_mm_stream_si32.v.html_mm_sub_epi16.v.html_mm_sub_epi32.v.html_mm_sub_epi64.v.html_mm_sub_epi8.v.html_mm_sub_pd.v.html_mm_sub_sd.v.html_mm_sub_si64.v.html_mm_subs_epi16.v.html_mm_subs_epi8.v.html_mm_subs_epu16.v.html_mm_subs_epu8.v.html_mm_ucomieq_sd.v.html_mm_ucomige_sd.v.html_mm_ucomigt_sd.v.html_mm_ucomile_sd.v.html_mm_ucomilt_sd.v.html_mm_ucomineq_sd.v.html_mm_undefined_pd.v.html_mm_undefined_si128.v.html_mm_unpackhi_epi16.v.html_mm_unpackhi_epi32.v.html_mm_unpackhi_epi64.v.html_mm_unpackhi_epi8.v.html_mm_unpackhi_pd.v.html_mm_unpacklo_epi16.v.html_mm_unpacklo_epi32.v.html_mm_unpacklo_epi64.v.html_mm_unpacklo_epi8.v.html_mm_unpacklo_pd.v.html_mm_xor_pd.v.html_mm_xor_si128.v.htmlfn._mm_add_epi16.htmlfn._mm_add_epi32.htmlfn._mm_add_epi64.htmlfn._mm_add_epi8.htmlfn._mm_add_pd.htmlfn._mm_add_sd.htmlfn._mm_add_si64.htmlfn._mm_adds_epi16.htmlfn._mm_adds_epi8.htmlfn._mm_adds_epu16.htmlfn._mm_adds_epu8.htmlfn._mm_and_pd.htmlfn._mm_and_si128.htmlfn._mm_andnot_pd.htmlfn._mm_andnot_si128.htmlfn._mm_avg_epu16.htmlfn._mm_avg_epu8.htmlfn._mm_bslli_si128.htmlfn._mm_bsrli_si128.htmlfn._mm_castpd_ps.htmlfn._mm_castpd_si128.htmlfn._mm_castps_pd.htmlfn._mm_castps_si128.htmlfn._mm_castsi128_pd.htmlfn._mm_castsi128_ps.htmlfn._mm_clflush.htmlfn._mm_cmpeq_epi16.htmlfn._mm_cmpeq_epi32.htmlfn._mm_cmpeq_epi8.htmlfn._mm_cmpeq_pd.htmlfn._mm_cmpeq_sd.htmlfn._mm_cmpge_pd.htmlfn._mm_cmpge_sd.htmlfn._mm_cmpgt_epi16.htmlfn._mm_cmpgt_epi32.htmlfn._mm_cmpgt_epi8.htmlfn._mm_cmpgt_pd.htmlfn._mm_cmpgt_sd.htmlfn._mm_cmple_pd.htmlfn._mm_cmple_sd.htmlfn._mm_cmplt_epi16.htmlfn._mm_cmplt_epi32.htmlfn._mm_cmplt_epi8.htmlfn._mm_cmplt_pd.htmlfn._mm_cmplt_sd.htmlfn._mm_cmpneq_pd.htmlfn._mm_cmpneq_sd.htmlfn._mm_cmpnge_pd.htmlfn._mm_cmpnge_sd.htmlfn._mm_cmpngt_pd.htmlfn._mm_cmpngt_sd.htmlfn._mm_cmpnle_pd.htmlfn._mm_cmpnle_sd.htmlfn._mm_cmpnlt_pd.htmlfn._mm_cmpnlt_sd.htmlfn._mm_cmpord_pd.htmlfn._mm_cmpord_sd.htmlfn._mm_cmpunord_pd.htmlfn._mm_cmpunord_sd.htmlfn._mm_comieq_sd.htmlfn._mm_comige_sd.htmlfn._mm_comigt_sd.htmlfn._mm_comile_sd.htmlfn._mm_comilt_sd.htmlfn._mm_comineq_sd.htmlfn._mm_cvtepi32_pd.htmlfn._mm_cvtepi32_ps.htmlfn._mm_cvtpd_epi32.htmlfn._mm_cvtpd_pi32.htmlfn._mm_cvtpd_ps.htmlfn._mm_cvtpi32_pd.htmlfn._mm_cvtps_epi32.htmlfn._mm_cvtps_pd.htmlfn._mm_cvtsd_f64.htmlfn._mm_cvtsd_si32.htmlfn._mm_cvtsd_ss.htmlfn._mm_cvtsi128_si32.htmlfn._mm_cvtsi32_sd.htmlfn._mm_cvtsi32_si128.htmlfn._mm_cvtss_sd.htmlfn._mm_cvttpd_epi32.htmlfn._mm_cvttpd_pi32.htmlfn._mm_cvttps_epi32.htmlfn._mm_cvttsd_si32.htmlfn._mm_div_pd.htmlfn._mm_div_sd.htmlfn._mm_extract_epi16.htmlfn._mm_insert_epi16.htmlfn._mm_lfence.htmlfn._mm_load1_pd.htmlfn._mm_load_pd.htmlfn._mm_load_pd1.htmlfn._mm_load_sd.htmlfn._mm_load_si128.htmlfn._mm_loadh_pd.htmlfn._mm_loadl_epi64.htmlfn._mm_loadl_pd.htmlfn._mm_loadr_pd.htmlfn._mm_loadu_pd.htmlfn._mm_loadu_si128.htmlfn._mm_madd_epi16.htmlfn._mm_maskmoveu_si128.htmlfn._mm_max_epi16.htmlfn._mm_max_epu8.htmlfn._mm_max_pd.htmlfn._mm_max_sd.htmlfn._mm_mfence.htmlfn._mm_min_epi16.htmlfn._mm_min_epu8.htmlfn._mm_min_pd.htmlfn._mm_min_sd.htmlfn._mm_move_epi64.htmlfn._mm_move_sd.htmlfn._mm_movemask_epi8.htmlfn._mm_movemask_pd.htmlfn._mm_movepi64_pi64.htmlfn._mm_movpi64_epi64.htmlfn._mm_mul_epu32.htmlfn._mm_mul_pd.htmlfn._mm_mul_sd.htmlfn._mm_mul_su32.htmlfn._mm_mulhi_epi16.htmlfn._mm_mulhi_epu16.htmlfn._mm_mullo_epi16.htmlfn._mm_or_pd.htmlfn._mm_or_si128.htmlfn._mm_packs_epi16.htmlfn._mm_packs_epi32.htmlfn._mm_packus_epi16.htmlfn._mm_pause.htmlfn._mm_sad_epu8.htmlfn._mm_set1_epi16.htmlfn._mm_set1_epi32.htmlfn._mm_set1_epi64.htmlfn._mm_set1_epi64x.htmlfn._mm_set1_epi8.htmlfn._mm_set1_pd.htmlfn._mm_set_epi16.htmlfn._mm_set_epi32.htmlfn._mm_set_epi64.htmlfn._mm_set_epi64x.htmlfn._mm_set_epi8.htmlfn._mm_set_pd.htmlfn._mm_set_pd1.htmlfn._mm_set_sd.htmlfn._mm_setr_epi16.htmlfn._mm_setr_epi32.htmlfn._mm_setr_epi64.htmlfn._mm_setr_epi8.htmlfn._mm_setr_pd.htmlfn._mm_setzero_pd.htmlfn._mm_setzero_si128.htmlfn._mm_shuffle_epi32.htmlfn._mm_shuffle_pd.htmlfn._mm_shufflehi_epi16.htmlfn._mm_shufflelo_epi16.htmlfn._mm_sll_epi16.htmlfn._mm_sll_epi32.htmlfn._mm_sll_epi64.htmlfn._mm_slli_epi16.htmlfn._mm_slli_epi32.htmlfn._mm_slli_epi64.htmlfn._mm_slli_si128.htmlfn._mm_sqrt_pd.htmlfn._mm_sqrt_sd.htmlfn._mm_sra_epi16.htmlfn._mm_sra_epi32.htmlfn._mm_srai_epi16.htmlfn._mm_srai_epi32.htmlfn._mm_srl_epi16.htmlfn._mm_srl_epi32.htmlfn._mm_srl_epi64.htmlfn._mm_srli_epi16.htmlfn._mm_srli_epi32.htmlfn._mm_srli_epi64.htmlfn._mm_srli_si128.htmlfn._mm_store1_pd.htmlfn._mm_store_pd.htmlfn._mm_store_pd1.htmlfn._mm_store_sd.htmlfn._mm_store_si128.htmlfn._mm_storeh_pd.htmlfn._mm_storel_epi64.htmlfn._mm_storel_pd.htmlfn._mm_storer_pd.htmlfn._mm_storeu_pd.htmlfn._mm_storeu_si128.htmlfn._mm_stream_pd.htmlfn._mm_stream_si128.htmlfn._mm_stream_si32.htmlfn._mm_sub_epi16.htmlfn._mm_sub_epi32.htmlfn._mm_sub_epi64.htmlfn._mm_sub_epi8.htmlfn._mm_sub_pd.htmlfn._mm_sub_sd.htmlfn._mm_sub_si64.htmlfn._mm_subs_epi16.htmlfn._mm_subs_epi8.htmlfn._mm_subs_epu16.htmlfn._mm_subs_epu8.htmlfn._mm_ucomieq_sd.htmlfn._mm_ucomige_sd.htmlfn._mm_ucomigt_sd.htmlfn._mm_ucomile_sd.htmlfn._mm_ucomilt_sd.htmlfn._mm_ucomineq_sd.htmlfn._mm_undefined_pd.htmlfn._mm_undefined_si128.htmlfn._mm_unpackhi_epi16.htmlfn._mm_unpackhi_epi32.htmlfn._mm_unpackhi_epi64.htmlfn._mm_unpackhi_epi8.htmlfn._mm_unpackhi_pd.htmlfn._mm_unpacklo_epi16.htmlfn._mm_unpacklo_epi32.htmlfn._mm_unpacklo_epi64.htmlfn._mm_unpacklo_epi8.htmlfn._mm_unpacklo_pd.htmlfn._mm_xor_pd.htmlfn._mm_xor_si128.htmlsse3_mm_addsub_pd.v.html_mm_addsub_ps.v.html_mm_hadd_pd.v.html_mm_hadd_ps.v.html_mm_hsub_pd.v.html_mm_hsub_ps.v.html_mm_lddqu_si128.v.html_mm_loaddup_pd.v.html_mm_movedup_pd.v.html_mm_movehdup_ps.v.html_mm_moveldup_ps.v.htmlfn._mm_addsub_pd.htmlfn._mm_addsub_ps.htmlfn._mm_hadd_pd.htmlfn._mm_hadd_ps.htmlfn._mm_hsub_pd.htmlfn._mm_hsub_ps.htmlfn._mm_lddqu_si128.htmlfn._mm_loaddup_pd.htmlfn._mm_movedup_pd.htmlfn._mm_movehdup_ps.htmlfn._mm_moveldup_ps.htmlsse41_MM_FROUND_CEIL.v.html_MM_FROUND_CUR_DIRECTION.v.html_MM_FROUND_FLOOR.v.html_MM_FROUND_NEARBYINT.v.html_MM_FROUND_NINT.v.html_MM_FROUND_NO_EXC.v.html_MM_FROUND_RAISE_EXC.v.html_MM_FROUND_RINT.v.html_MM_FROUND_TO_NEAREST_INT.v.html_MM_FROUND_TO_NEG_INF.v.html_MM_FROUND_TO_POS_INF.v.html_MM_FROUND_TO_ZERO.v.html_MM_FROUND_TRUNC.v.html_mm_blend_epi16.v.html_mm_blend_pd.v.html_mm_blend_ps.v.html_mm_blendv_epi8.v.html_mm_blendv_pd.v.html_mm_blendv_ps.v.html_mm_ceil_pd.v.html_mm_ceil_ps.v.html_mm_ceil_sd.v.html_mm_ceil_ss.v.html_mm_cmpeq_epi64.v.html_mm_cvtepi16_epi32.v.html_mm_cvtepi16_epi64.v.html_mm_cvtepi32_epi64.v.html_mm_cvtepi8_epi16.v.html_mm_cvtepi8_epi32.v.html_mm_cvtepi8_epi64.v.html_mm_cvtepu16_epi32.v.html_mm_cvtepu16_epi64.v.html_mm_cvtepu32_epi64.v.html_mm_cvtepu8_epi16.v.html_mm_cvtepu8_epi32.v.html_mm_cvtepu8_epi64.v.html_mm_dp_pd.v.html_mm_dp_ps.v.html_mm_extract_epi32.v.html_mm_extract_epi8.v.html_mm_extract_ps.v.html_mm_floor_pd.v.html_mm_floor_ps.v.html_mm_floor_sd.v.html_mm_floor_ss.v.html_mm_insert_epi32.v.html_mm_insert_epi8.v.html_mm_insert_ps.v.html_mm_max_epi32.v.html_mm_max_epi8.v.html_mm_max_epu16.v.html_mm_max_epu32.v.html_mm_min_epi32.v.html_mm_min_epi8.v.html_mm_min_epu16.v.html_mm_min_epu32.v.html_mm_minpos_epu16.v.html_mm_mpsadbw_epu8.v.html_mm_mul_epi32.v.html_mm_mullo_epi32.v.html_mm_packus_epi32.v.html_mm_round_pd.v.html_mm_round_ps.v.html_mm_round_sd.v.html_mm_round_ss.v.html_mm_test_all_ones.v.html_mm_test_all_zeros.v.html_mm_test_mix_ones_zeros.v.html_mm_testc_si128.v.html_mm_testnzc_si128.v.html_mm_testz_si128.v.htmlconstant._MM_FROUND_CEIL.htmlconstant._MM_FROUND_CUR_DIRECTION.htmlconstant._MM_FROUND_FLOOR.htmlconstant._MM_FROUND_NEARBYINT.htmlconstant._MM_FROUND_NINT.htmlconstant._MM_FROUND_NO_EXC.htmlconstant._MM_FROUND_RAISE_EXC.htmlconstant._MM_FROUND_RINT.htmlconstant._MM_FROUND_TO_NEAREST_INT.htmlconstant._MM_FROUND_TO_NEG_INF.htmlconstant._MM_FROUND_TO_POS_INF.htmlconstant._MM_FROUND_TO_ZERO.htmlconstant._MM_FROUND_TRUNC.htmlfn._mm_blend_epi16.htmlfn._mm_blend_pd.htmlfn._mm_blend_ps.htmlfn._mm_blendv_epi8.htmlfn._mm_blendv_pd.htmlfn._mm_blendv_ps.htmlfn._mm_ceil_pd.htmlfn._mm_ceil_ps.htmlfn._mm_ceil_sd.htmlfn._mm_ceil_ss.htmlfn._mm_cmpeq_epi64.htmlfn._mm_cvtepi16_epi32.htmlfn._mm_cvtepi16_epi64.htmlfn._mm_cvtepi32_epi64.htmlfn._mm_cvtepi8_epi16.htmlfn._mm_cvtepi8_epi32.htmlfn._mm_cvtepi8_epi64.htmlfn._mm_cvtepu16_epi32.htmlfn._mm_cvtepu16_epi64.htmlfn._mm_cvtepu32_epi64.htmlfn._mm_cvtepu8_epi16.htmlfn._mm_cvtepu8_epi32.htmlfn._mm_cvtepu8_epi64.htmlfn._mm_dp_pd.htmlfn._mm_dp_ps.htmlfn._mm_extract_epi32.htmlfn._mm_extract_epi8.htmlfn._mm_extract_ps.htmlfn._mm_floor_pd.htmlfn._mm_floor_ps.htmlfn._mm_floor_sd.htmlfn._mm_floor_ss.htmlfn._mm_insert_epi32.htmlfn._mm_insert_epi8.htmlfn._mm_insert_ps.htmlfn._mm_max_epi32.htmlfn._mm_max_epi8.htmlfn._mm_max_epu16.htmlfn._mm_max_epu32.htmlfn._mm_min_epi32.htmlfn._mm_min_epi8.htmlfn._mm_min_epu16.htmlfn._mm_min_epu32.htmlfn._mm_minpos_epu16.htmlfn._mm_mpsadbw_epu8.htmlfn._mm_mul_epi32.htmlfn._mm_mullo_epi32.htmlfn._mm_packus_epi32.htmlfn._mm_round_pd.htmlfn._mm_round_ps.htmlfn._mm_round_sd.htmlfn._mm_round_ss.htmlfn._mm_test_all_ones.htmlfn._mm_test_all_zeros.htmlfn._mm_test_mix_ones_zeros.htmlfn._mm_testc_si128.htmlfn._mm_testnzc_si128.htmlfn._mm_testz_si128.htmlsse42_SIDD_BIT_MASK.v.html_SIDD_CMP_EQUAL_ANY.v.html_SIDD_CMP_EQUAL_EACH.v.html_SIDD_CMP_EQUAL_ORDERED.v.html_SIDD_CMP_RANGES.v.html_SIDD_LEAST_SIGNIFICANT.v.html_SIDD_MASKED_NEGATIVE_POLARITY.v.html_SIDD_MASKED_POSITIVE_POLARITY.v.html_SIDD_MOST_SIGNIFICANT.v.html_SIDD_NEGATIVE_POLARITY.v.html_SIDD_POSITIVE_POLARITY.v.html_SIDD_SBYTE_OPS.v.html_SIDD_SWORD_OPS.v.html_SIDD_UBYTE_OPS.v.html_SIDD_UNIT_MASK.v.html_SIDD_UWORD_OPS.v.html_mm_cmpestra.v.html_mm_cmpestrc.v.html_mm_cmpestri.v.html_mm_cmpestrm.v.html_mm_cmpestro.v.html_mm_cmpestrs.v.html_mm_cmpestrz.v.html_mm_cmpgt_epi64.v.html_mm_cmpistra.v.html_mm_cmpistrc.v.html_mm_cmpistri.v.html_mm_cmpistrm.v.html_mm_cmpistro.v.html_mm_cmpistrs.v.html_mm_cmpistrz.v.html_mm_crc32_u16.v.html_mm_crc32_u32.v.html_mm_crc32_u8.v.htmlconstant._SIDD_BIT_MASK.htmlconstant._SIDD_CMP_EQUAL_ANY.htmlconstant._SIDD_CMP_EQUAL_EACH.htmlconstant._SIDD_CMP_EQUAL_ORDERED.htmlconstant._SIDD_CMP_RANGES.htmlconstant._SIDD_LEAST_SIGNIFICANT.htmlconstant._SIDD_MASKED_NEGATIVE_POLARITY.htmlconstant._SIDD_MASKED_POSITIVE_POLARITY.htmlconstant._SIDD_MOST_SIGNIFICANT.htmlconstant._SIDD_NEGATIVE_POLARITY.htmlconstant._SIDD_POSITIVE_POLARITY.htmlconstant._SIDD_SBYTE_OPS.htmlconstant._SIDD_SWORD_OPS.htmlconstant._SIDD_UBYTE_OPS.htmlconstant._SIDD_UNIT_MASK.htmlconstant._SIDD_UWORD_OPS.htmlfn._mm_cmpestra.htmlfn._mm_cmpestrc.htmlfn._mm_cmpestri.htmlfn._mm_cmpestrm.htmlfn._mm_cmpestro.htmlfn._mm_cmpestrs.htmlfn._mm_cmpestrz.htmlfn._mm_cmpgt_epi64.htmlfn._mm_cmpistra.htmlfn._mm_cmpistrc.htmlfn._mm_cmpistri.htmlfn._mm_cmpistrm.htmlfn._mm_cmpistro.htmlfn._mm_cmpistrs.htmlfn._mm_cmpistrz.htmlfn._mm_crc32_u16.htmlfn._mm_crc32_u32.htmlfn._mm_crc32_u8.htmlsse4a_mm_extract_si64.v.html_mm_insert_si64.v.html_mm_stream_sd.v.html_mm_stream_ss.v.htmlfn._mm_extract_si64.htmlfn._mm_insert_si64.htmlfn._mm_stream_sd.htmlfn._mm_stream_ss.htmlssse3_mm_abs_epi16.v.html_mm_abs_epi32.v.html_mm_abs_epi8.v.html_mm_abs_pi16.v.html_mm_abs_pi32.v.html_mm_abs_pi8.v.html_mm_alignr_epi8.v.html_mm_alignr_pi8.v.html_mm_hadd_epi16.v.html_mm_hadd_epi32.v.html_mm_hadd_pi16.v.html_mm_hadd_pi32.v.html_mm_hadds_epi16.v.html_mm_hadds_pi16.v.html_mm_hsub_epi16.v.html_mm_hsub_epi32.v.html_mm_hsub_pi16.v.html_mm_hsub_pi32.v.html_mm_hsubs_epi16.v.html_mm_hsubs_pi16.v.html_mm_maddubs_epi16.v.html_mm_maddubs_pi16.v.html_mm_mulhrs_epi16.v.html_mm_mulhrs_pi16.v.html_mm_shuffle_epi8.v.html_mm_shuffle_pi8.v.html_mm_sign_epi16.v.html_mm_sign_epi32.v.html_mm_sign_epi8.v.html_mm_sign_pi16.v.html_mm_sign_pi32.v.html_mm_sign_pi8.v.htmlfn._mm_abs_epi16.htmlfn._mm_abs_epi32.htmlfn._mm_abs_epi8.htmlfn._mm_abs_pi16.htmlfn._mm_abs_pi32.htmlfn._mm_abs_pi8.htmlfn._mm_alignr_epi8.htmlfn._mm_alignr_pi8.htmlfn._mm_hadd_epi16.htmlfn._mm_hadd_epi32.htmlfn._mm_hadd_pi16.htmlfn._mm_hadd_pi32.htmlfn._mm_hadds_epi16.htmlfn._mm_hadds_pi16.htmlfn._mm_hsub_epi16.htmlfn._mm_hsub_epi32.htmlfn._mm_hsub_pi16.htmlfn._mm_hsub_pi32.htmlfn._mm_hsubs_epi16.htmlfn._mm_hsubs_pi16.htmlfn._mm_maddubs_epi16.htmlfn._mm_maddubs_pi16.htmlfn._mm_mulhrs_epi16.htmlfn._mm_mulhrs_pi16.htmlfn._mm_shuffle_epi8.htmlfn._mm_shuffle_pi8.htmlfn._mm_sign_epi16.htmlfn._mm_sign_epi32.htmlfn._mm_sign_epi8.htmlfn._mm_sign_pi16.htmlfn._mm_sign_pi32.htmlfn._mm_sign_pi8.htmlstruct.__m128.htmlstruct.__m128d.htmlstruct.__m128i.htmlstruct.__m256.htmlstruct.__m256d.htmlstruct.__m256i.htmlstruct.__m512.htmlstruct.__m512d.htmlstruct.__m512i.htmlstruct.__m64.htmltbm_blcfill_u32.v.html_blcfill_u64.v.html_blci_u32.v.html_blci_u64.v.html_blcic_u32.v.html_blcic_u64.v.html_blcmsk_u32.v.html_blcmsk_u64.v.html_blcs_u32.v.html_blcs_u64.v.html_blsfill_u32.v.html_blsfill_u64.v.html_blsic_u32.v.html_blsic_u64.v.html_t1mskc_u32.v.html_t1mskc_u64.v.html_tzmsk_u32.v.html_tzmsk_u64.v.htmlfn._blcfill_u32.htmlfn._blcfill_u64.htmlfn._blci_u32.htmlfn._blci_u64.htmlfn._blcic_u32.htmlfn._blcic_u64.htmlfn._blcmsk_u32.htmlfn._blcmsk_u64.htmlfn._blcs_u32.htmlfn._blcs_u64.htmlfn._blsfill_u32.htmlfn._blsfill_u64.htmlfn._blsic_u32.htmlfn._blsic_u64.htmlfn._t1mskc_u32.htmlfn._t1mskc_u64.htmlfn._tzmsk_u32.htmlfn._tzmsk_u64.htmltype.__mmask16.htmlud2.v.htmlxsave_XCR_XFEATURE_ENABLED_MASK.v.html_xgetbv.v.html_xrstor.v.html_xrstors.v.html_xsave.v.html_xsavec.v.html_xsaveopt.v.html_xsaves.v.html_xsetbv.v.htmlconstant._XCR_XFEATURE_ENABLED_MASK.htmlfn._xgetbv.htmlfn._xrstor.htmlfn._xrstors.htmlfn._xsave.htmlfn._xsavec.htmlfn._xsaveopt.htmlfn._xsaves.htmlfn._xsetbv.htmlx86_64abm_lzcnt_u64.v.html_popcnt64.v.htmlfn._lzcnt_u64.htmlfn._popcnt64.htmladx_addcarry_u64.v.html_addcarryx_u64.v.html_subborrow_u64.v.htmlfn._addcarry_u64.htmlfn._addcarryx_u64.htmlfn._subborrow_u64.htmlavx_mm256_insert_epi64.v.htmlfn._mm256_insert_epi64.htmlavx2_mm256_extract_epi64.v.htmlfn._mm256_extract_epi64.htmlbmi_andn_u64.v.html_bextr2_u64.v.html_bextr_u64.v.html_blsi_u64.v.html_blsmsk_u64.v.html_blsr_u64.v.html_mm_tzcnt_64.v.html_tzcnt_u64.v.htmlfn._andn_u64.htmlfn._bextr2_u64.htmlfn._bextr_u64.htmlfn._blsi_u64.htmlfn._blsmsk_u64.htmlfn._blsr_u64.htmlfn._mm_tzcnt_64.htmlfn._tzcnt_u64.htmlbmi2_bzhi_u64.v.html_mulx_u64.v.html_pdep_u64.v.html_pext_u64.v.htmlfn._bzhi_u64.htmlfn._mulx_u64.htmlfn._pdep_u64.htmlfn._pext_u64.htmlbswap_bswap64.v.htmlfn._bswap64.htmlbt_bittest64.v.html_bittestandcomplement64.v.html_bittestandreset64.v.html_bittestandset64.v.htmlfn._bittest64.htmlfn._bittestandcomplement64.htmlfn._bittestandreset64.htmlfn._bittestandset64.htmlcmpxchg16bcmpxchg16b.v.htmlfn.cmpxchg16b.htmlfxsr_fxrstor64.v.html_fxsave64.v.htmlfn._fxrstor64.htmlfn._fxsave64.htmlrdrand_rdrand64_step.v.html_rdseed64_step.v.htmlfn._rdrand64_step.htmlfn._rdseed64_step.htmlsse_mm_cvtsi64_ss.v.html_mm_cvtss_si64.v.html_mm_cvttss_si64.v.htmlfn._mm_cvtsi64_ss.htmlfn._mm_cvtss_si64.htmlfn._mm_cvttss_si64.htmlsse2_mm_cvtsd_si64.v.html_mm_cvtsd_si64x.v.html_mm_cvtsi128_si64.v.html_mm_cvtsi128_si64x.v.html_mm_cvtsi64_sd.v.html_mm_cvtsi64_si128.v.html_mm_cvtsi64x_sd.v.html_mm_cvtsi64x_si128.v.html_mm_cvttsd_si64.v.html_mm_cvttsd_si64x.v.html_mm_stream_si64.v.htmlfn._mm_cvtsd_si64.htmlfn._mm_cvtsd_si64x.htmlfn._mm_cvtsi128_si64.htmlfn._mm_cvtsi128_si64x.htmlfn._mm_cvtsi64_sd.htmlfn._mm_cvtsi64_si128.htmlfn._mm_cvtsi64x_sd.htmlfn._mm_cvtsi64x_si128.htmlfn._mm_cvttsd_si64.htmlfn._mm_cvttsd_si64x.htmlfn._mm_stream_si64.htmlsse41_mm_extract_epi64.v.html_mm_insert_epi64.v.htmlfn._mm_extract_epi64.htmlfn._mm_insert_epi64.htmlsse42_mm_crc32_u64.v.htmlfn._mm_crc32_u64.htmlxsave_xrstor64.v.html_xrstors64.v.html_xsave64.v.html_xsavec64.v.html_xsaveopt64.v.html_xsaves64.v.htmlfn._xrstor64.htmlfn._xrstors64.htmlfn._xsave64.htmlfn._xsavec64.htmlfn._xsaveopt64.htmlfn._xsaves64.htmldebug_assert.m.htmldebug_assert_eq.m.htmldebug_assert_ne.m.htmldefaultDefault.t.htmlindex.htmlsidebar-items.jstrait.Default.htmlenv.m.htmlf32DIGITS.v.htmlEPSILON.v.htmlINFINITY.v.htmlMANTISSA_DIGITS.v.htmlMAX.v.htmlMAX_10_EXP.v.htmlMAX_EXP.v.htmlMIN.v.htmlMIN_10_EXP.v.htmlMIN_EXP.v.htmlMIN_POSITIVE.v.htmlNAN.v.htmlNEG_INFINITY.v.htmlRADIX.v.htmlconstant.DIGITS.htmlconstant.EPSILON.htmlconstant.INFINITY.htmlconstant.MANTISSA_DIGITS.htmlconstant.MAX.htmlconstant.MAX_10_EXP.htmlconstant.MAX_EXP.htmlconstant.MIN.htmlconstant.MIN_10_EXP.htmlconstant.MIN_EXP.htmlconstant.MIN_POSITIVE.htmlconstant.NAN.htmlconstant.NEG_INFINITY.htmlconstant.RADIX.htmlconstsE.v.htmlFRAC_1_PI.v.htmlFRAC_1_SQRT_2.v.htmlFRAC_2_PI.v.htmlFRAC_2_SQRT_PI.v.htmlFRAC_PI_2.v.htmlFRAC_PI_3.v.htmlFRAC_PI_4.v.htmlFRAC_PI_6.v.htmlFRAC_PI_8.v.htmlLN_10.v.htmlLN_2.v.htmlLOG10_2.v.htmlLOG10_E.v.htmlLOG2_10.v.htmlLOG2_E.v.htmlPI.v.htmlSQRT_2.v.htmlTAU.v.htmlconstant.E.htmlconstant.FRAC_1_PI.htmlconstant.FRAC_1_SQRT_2.htmlconstant.FRAC_2_PI.htmlconstant.FRAC_2_SQRT_PI.htmlconstant.FRAC_PI_2.htmlconstant.FRAC_PI_3.htmlconstant.FRAC_PI_4.htmlconstant.FRAC_PI_6.htmlconstant.FRAC_PI_8.htmlconstant.LN_10.htmlconstant.LN_2.htmlconstant.LOG10_2.htmlconstant.LOG10_E.htmlconstant.LOG2_10.htmlconstant.LOG2_E.htmlconstant.PI.htmlconstant.SQRT_2.htmlconstant.TAU.htmlindex.htmlsidebar-items.jsindex.htmlsidebar-items.jsf64DIGITS.v.htmlEPSILON.v.htmlINFINITY.v.htmlMANTISSA_DIGITS.v.htmlMAX.v.htmlMAX_10_EXP.v.htmlMAX_EXP.v.htmlMIN.v.htmlMIN_10_EXP.v.htmlMIN_EXP.v.htmlMIN_POSITIVE.v.htmlNAN.v.htmlNEG_INFINITY.v.htmlRADIX.v.htmlconstant.DIGITS.htmlconstant.EPSILON.htmlconstant.INFINITY.htmlconstant.MANTISSA_DIGITS.htmlconstant.MAX.htmlconstant.MAX_10_EXP.htmlconstant.MAX_EXP.htmlconstant.MIN.htmlconstant.MIN_10_EXP.htmlconstant.MIN_EXP.htmlconstant.MIN_POSITIVE.htmlconstant.NAN.htmlconstant.NEG_INFINITY.htmlconstant.RADIX.htmlconstsE.v.htmlFRAC_1_PI.v.htmlFRAC_1_SQRT_2.v.htmlFRAC_2_PI.v.htmlFRAC_2_SQRT_PI.v.htmlFRAC_PI_2.v.htmlFRAC_PI_3.v.htmlFRAC_PI_4.v.htmlFRAC_PI_6.v.htmlFRAC_PI_8.v.htmlLN_10.v.htmlLN_2.v.htmlLOG10_2.v.htmlLOG10_E.v.htmlLOG2_10.v.htmlLOG2_E.v.htmlPI.v.htmlSQRT_2.v.htmlTAU.v.htmlconstant.E.htmlconstant.FRAC_1_PI.htmlconstant.FRAC_1_SQRT_2.htmlconstant.FRAC_2_PI.htmlconstant.FRAC_2_SQRT_PI.htmlconstant.FRAC_PI_2.htmlconstant.FRAC_PI_3.htmlconstant.FRAC_PI_4.htmlconstant.FRAC_PI_6.htmlconstant.FRAC_PI_8.htmlconstant.LN_10.htmlconstant.LN_2.htmlconstant.LOG10_2.htmlconstant.LOG10_E.htmlconstant.LOG2_10.htmlconstant.LOG2_E.htmlconstant.PI.htmlconstant.SQRT_2.htmlconstant.TAU.htmlindex.htmlsidebar-items.jsindex.htmlsidebar-items.jsffiVaList.t.htmlVaListImpl.t.htmlc_void.t.htmlenum.c_void.htmlindex.htmlsidebar-items.jsstruct.VaList.htmlstruct.VaListImpl.htmlfile.m.htmlfmtAlignment.t.htmlArguments.t.htmlBinary.t.htmlDebug.m.htmlDebug.t.htmlDebugList.t.htmlDebugMap.t.htmlDebugSet.t.htmlDebugStruct.t.htmlDebugTuple.t.htmlDisplay.t.htmlError.t.htmlFormatter.t.htmlLowerExp.t.htmlLowerHex.t.htmlOctal.t.htmlPointer.t.htmlResult.t.htmlUpperExp.t.htmlUpperHex.t.htmlWrite.t.htmlbuildersDebugList.t.htmlDebugMap.t.htmlDebugSet.t.htmlDebugStruct.t.htmlDebugTuple.t.htmlstruct.DebugList.htmlstruct.DebugMap.htmlstruct.DebugSet.htmlstruct.DebugStruct.htmlstruct.DebugTuple.htmlenum.Alignment.htmlfn.write.htmlindex.htmlmacro.Debug!.htmlmacro.Debug.htmlsidebar-items.jsstruct.Arguments.htmlstruct.DebugList.htmlstruct.DebugMap.htmlstruct.DebugSet.htmlstruct.DebugStruct.htmlstruct.DebugTuple.htmlstruct.Error.htmlstruct.Formatter.htmltrait.Binary.htmltrait.Debug.htmltrait.Display.htmltrait.LowerExp.htmltrait.LowerHex.htmltrait.Octal.htmltrait.Pointer.htmltrait.UpperExp.htmltrait.UpperHex.htmltrait.Write.htmltype.Result.htmlwrite.v.htmlformat_args.m.htmlformat_args_nl.m.htmlfutureFuture.t.htmlfutureFuture.t.htmltrait.Future.htmlindex.htmlsidebar-items.jstrait.Future.htmlglobal_allocator.m.htmlglobal_asm.m.htmlhashBuildHasher.t.htmlBuildHasherDefault.t.htmlHash.m.htmlHash.t.htmlHasher.t.htmlSipHasher.t.htmlindex.htmlmacro.Hash!.htmlmacro.Hash.htmlsidebar-items.jssipSipHasher.t.htmlstruct.SipHasher.htmlstruct.BuildHasherDefault.htmlstruct.SipHasher.htmltrait.BuildHasher.htmltrait.Hash.htmltrait.Hasher.htmlhintblack_box.v.htmlfn.black_box.htmlfn.spin_loop.htmlfn.unreachable_unchecked.htmlindex.htmlsidebar-items.jsspin_loop.v.htmlunreachable_unchecked.v.htmli128MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi16MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi32MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi64MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi8MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsinclude.m.htmlinclude_bytes.m.htmlinclude_str.m.htmlindex.htmlintrinsicsabort.v.htmladd_with_overflow.v.htmlarith_offset.v.htmlassume.v.htmlatomic_and.v.htmlatomic_and_acq.v.htmlatomic_and_acqrel.v.htmlatomic_and_rel.v.htmlatomic_and_relaxed.v.htmlatomic_cxchg.v.htmlatomic_cxchg_acq.v.htmlatomic_cxchg_acq_failrelaxed.v.htmlatomic_cxchg_acqrel.v.htmlatomic_cxchg_acqrel_failrelaxed.v.htmlatomic_cxchg_failacq.v.htmlatomic_cxchg_failrelaxed.v.htmlatomic_cxchg_rel.v.htmlatomic_cxchg_relaxed.v.htmlatomic_cxchgweak.v.htmlatomic_cxchgweak_acq.v.htmlatomic_cxchgweak_acq_failrelaxed.v.htmlatomic_cxchgweak_acqrel.v.htmlatomic_cxchgweak_acqrel_failrelaxed.v.htmlatomic_cxchgweak_failacq.v.htmlatomic_cxchgweak_failrelaxed.v.htmlatomic_cxchgweak_rel.v.htmlatomic_cxchgweak_relaxed.v.htmlatomic_fence.v.htmlatomic_fence_acq.v.htmlatomic_fence_acqrel.v.htmlatomic_fence_rel.v.htmlatomic_load.v.htmlatomic_load_acq.v.htmlatomic_load_relaxed.v.htmlatomic_load_unordered.v.htmlatomic_max.v.htmlatomic_max_acq.v.htmlatomic_max_acqrel.v.htmlatomic_max_rel.v.htmlatomic_max_relaxed.v.htmlatomic_min.v.htmlatomic_min_acq.v.htmlatomic_min_acqrel.v.htmlatomic_min_rel.v.htmlatomic_min_relaxed.v.htmlatomic_nand.v.htmlatomic_nand_acq.v.htmlatomic_nand_acqrel.v.htmlatomic_nand_rel.v.htmlatomic_nand_relaxed.v.htmlatomic_or.v.htmlatomic_or_acq.v.htmlatomic_or_acqrel.v.htmlatomic_or_rel.v.htmlatomic_or_relaxed.v.htmlatomic_singlethreadfence.v.htmlatomic_singlethreadfence_acq.v.htmlatomic_singlethreadfence_acqrel.v.htmlatomic_singlethreadfence_rel.v.htmlatomic_store.v.htmlatomic_store_rel.v.htmlatomic_store_relaxed.v.htmlatomic_store_unordered.v.htmlatomic_umax.v.htmlatomic_umax_acq.v.htmlatomic_umax_acqrel.v.htmlatomic_umax_rel.v.htmlatomic_umax_relaxed.v.htmlatomic_umin.v.htmlatomic_umin_acq.v.htmlatomic_umin_acqrel.v.htmlatomic_umin_rel.v.htmlatomic_umin_relaxed.v.htmlatomic_xadd.v.htmlatomic_xadd_acq.v.htmlatomic_xadd_acqrel.v.htmlatomic_xadd_rel.v.htmlatomic_xadd_relaxed.v.htmlatomic_xchg.v.htmlatomic_xchg_acq.v.htmlatomic_xchg_acqrel.v.htmlatomic_xchg_rel.v.htmlatomic_xchg_relaxed.v.htmlatomic_xor.v.htmlatomic_xor_acq.v.htmlatomic_xor_acqrel.v.htmlatomic_xor_rel.v.htmlatomic_xor_relaxed.v.htmlatomic_xsub.v.htmlatomic_xsub_acq.v.htmlatomic_xsub_acqrel.v.htmlatomic_xsub_rel.v.htmlatomic_xsub_relaxed.v.htmlbitreverse.v.htmlbreakpoint.v.htmlbswap.v.htmlcaller_location.v.htmlceilf32.v.htmlceilf64.v.htmlcopy.v.htmlcopy_nonoverlapping.v.htmlcopysignf32.v.htmlcopysignf64.v.htmlcosf32.v.htmlcosf64.v.htmlctlz.v.htmlctlz_nonzero.v.htmlctpop.v.htmlcttz.v.htmlcttz_nonzero.v.htmldiscriminant_value.v.htmlexact_div.v.htmlexp2f32.v.htmlexp2f64.v.htmlexpf32.v.htmlexpf64.v.htmlfabsf32.v.htmlfabsf64.v.htmlfadd_fast.v.htmlfdiv_fast.v.htmlfloat_to_int_approx_unchecked.v.htmlfloorf32.v.htmlfloorf64.v.htmlfmaf32.v.htmlfmaf64.v.htmlfmul_fast.v.htmlfn.abort.htmlfn.add_with_overflow.htmlfn.arith_offset.htmlfn.assume.htmlfn.atomic_and.htmlfn.atomic_and_acq.htmlfn.atomic_and_acqrel.htmlfn.atomic_and_rel.htmlfn.atomic_and_relaxed.htmlfn.atomic_cxchg.htmlfn.atomic_cxchg_acq.htmlfn.atomic_cxchg_acq_failrelaxed.htmlfn.atomic_cxchg_acqrel.htmlfn.atomic_cxchg_acqrel_failrelaxed.htmlfn.atomic_cxchg_failacq.htmlfn.atomic_cxchg_failrelaxed.htmlfn.atomic_cxchg_rel.htmlfn.atomic_cxchg_relaxed.htmlfn.atomic_cxchgweak.htmlfn.atomic_cxchgweak_acq.htmlfn.atomic_cxchgweak_acq_failrelaxed.htmlfn.atomic_cxchgweak_acqrel.htmlfn.atomic_cxchgweak_acqrel_failrelaxed.htmlfn.atomic_cxchgweak_failacq.htmlfn.atomic_cxchgweak_failrelaxed.htmlfn.atomic_cxchgweak_rel.htmlfn.atomic_cxchgweak_relaxed.htmlfn.atomic_fence.htmlfn.atomic_fence_acq.htmlfn.atomic_fence_acqrel.htmlfn.atomic_fence_rel.htmlfn.atomic_load.htmlfn.atomic_load_acq.htmlfn.atomic_load_relaxed.htmlfn.atomic_load_unordered.htmlfn.atomic_max.htmlfn.atomic_max_acq.htmlfn.atomic_max_acqrel.htmlfn.atomic_max_rel.htmlfn.atomic_max_relaxed.htmlfn.atomic_min.htmlfn.atomic_min_acq.htmlfn.atomic_min_acqrel.htmlfn.atomic_min_rel.htmlfn.atomic_min_relaxed.htmlfn.atomic_nand.htmlfn.atomic_nand_acq.htmlfn.atomic_nand_acqrel.htmlfn.atomic_nand_rel.htmlfn.atomic_nand_relaxed.htmlfn.atomic_or.htmlfn.atomic_or_acq.htmlfn.atomic_or_acqrel.htmlfn.atomic_or_rel.htmlfn.atomic_or_relaxed.htmlfn.atomic_singlethreadfence.htmlfn.atomic_singlethreadfence_acq.htmlfn.atomic_singlethreadfence_acqrel.htmlfn.atomic_singlethreadfence_rel.htmlfn.atomic_store.htmlfn.atomic_store_rel.htmlfn.atomic_store_relaxed.htmlfn.atomic_store_unordered.htmlfn.atomic_umax.htmlfn.atomic_umax_acq.htmlfn.atomic_umax_acqrel.htmlfn.atomic_umax_rel.htmlfn.atomic_umax_relaxed.htmlfn.atomic_umin.htmlfn.atomic_umin_acq.htmlfn.atomic_umin_acqrel.htmlfn.atomic_umin_rel.htmlfn.atomic_umin_relaxed.htmlfn.atomic_xadd.htmlfn.atomic_xadd_acq.htmlfn.atomic_xadd_acqrel.htmlfn.atomic_xadd_rel.htmlfn.atomic_xadd_relaxed.htmlfn.atomic_xchg.htmlfn.atomic_xchg_acq.htmlfn.atomic_xchg_acqrel.htmlfn.atomic_xchg_rel.htmlfn.atomic_xchg_relaxed.htmlfn.atomic_xor.htmlfn.atomic_xor_acq.htmlfn.atomic_xor_acqrel.htmlfn.atomic_xor_rel.htmlfn.atomic_xor_relaxed.htmlfn.atomic_xsub.htmlfn.atomic_xsub_acq.htmlfn.atomic_xsub_acqrel.htmlfn.atomic_xsub_rel.htmlfn.atomic_xsub_relaxed.htmlfn.bitreverse.htmlfn.breakpoint.htmlfn.bswap.htmlfn.caller_location.htmlfn.ceilf32.htmlfn.ceilf64.htmlfn.copy.htmlfn.copy_nonoverlapping.htmlfn.copysignf32.htmlfn.copysignf64.htmlfn.cosf32.htmlfn.cosf64.htmlfn.ctlz.htmlfn.ctlz_nonzero.htmlfn.ctpop.htmlfn.cttz.htmlfn.cttz_nonzero.htmlfn.discriminant_value.htmlfn.exact_div.htmlfn.exp2f32.htmlfn.exp2f64.htmlfn.expf32.htmlfn.expf64.htmlfn.fabsf32.htmlfn.fabsf64.htmlfn.fadd_fast.htmlfn.fdiv_fast.htmlfn.float_to_int_approx_unchecked.htmlfn.floorf32.htmlfn.floorf64.htmlfn.fmaf32.htmlfn.fmaf64.htmlfn.fmul_fast.htmlfn.forget.htmlfn.frem_fast.htmlfn.fsub_fast.htmlfn.init.htmlfn.likely.htmlfn.log10f32.htmlfn.log10f64.htmlfn.log2f32.htmlfn.log2f64.htmlfn.logf32.htmlfn.logf64.htmlfn.maxnumf32.htmlfn.maxnumf64.htmlfn.min_align_of.htmlfn.min_align_of_val.htmlfn.minnumf32.htmlfn.minnumf64.htmlfn.miri_start_panic.htmlfn.move_val_init.htmlfn.mul_with_overflow.htmlfn.nearbyintf32.htmlfn.nearbyintf64.htmlfn.needs_drop.htmlfn.nontemporal_store.htmlfn.offset.htmlfn.panic_if_uninhabited.htmlfn.powf32.htmlfn.powf64.htmlfn.powif32.htmlfn.powif64.htmlfn.pref_align_of.htmlfn.prefetch_read_data.htmlfn.prefetch_read_instruction.htmlfn.prefetch_write_data.htmlfn.prefetch_write_instruction.htmlfn.ptr_offset_from.htmlfn.rintf32.htmlfn.rintf64.htmlfn.rotate_left.htmlfn.rotate_right.htmlfn.roundf32.htmlfn.roundf64.htmlfn.rustc_peek.htmlfn.saturating_add.htmlfn.saturating_sub.htmlfn.sinf32.htmlfn.sinf64.htmlfn.size_of.htmlfn.size_of_val.htmlfn.sqrtf32.htmlfn.sqrtf64.htmlfn.sub_with_overflow.htmlfn.transmute.htmlfn.truncf32.htmlfn.truncf64.htmlfn.try.htmlfn.type_id.htmlfn.type_name.htmlfn.unaligned_volatile_load.htmlfn.unaligned_volatile_store.htmlfn.unchecked_add.htmlfn.unchecked_div.htmlfn.unchecked_mul.htmlfn.unchecked_rem.htmlfn.unchecked_shl.htmlfn.unchecked_shr.htmlfn.unchecked_sub.htmlfn.uninit.htmlfn.unlikely.htmlfn.unreachable.htmlfn.volatile_copy_memory.htmlfn.volatile_copy_nonoverlapping_memory.htmlfn.volatile_load.htmlfn.volatile_set_memory.htmlfn.volatile_store.htmlfn.wrapping_add.htmlfn.wrapping_mul.htmlfn.wrapping_sub.htmlfn.write_bytes.htmlforget.v.htmlfrem_fast.v.htmlfsub_fast.v.htmlindex.htmlinit.v.htmllikely.v.htmllog10f32.v.htmllog10f64.v.htmllog2f32.v.htmllog2f64.v.htmllogf32.v.htmllogf64.v.htmlmaxnumf32.v.htmlmaxnumf64.v.htmlmin_align_of.v.htmlmin_align_of_val.v.htmlminnumf32.v.htmlminnumf64.v.htmlmiri_start_panic.v.htmlmove_val_init.v.htmlmul_with_overflow.v.htmlnearbyintf32.v.htmlnearbyintf64.v.htmlneeds_drop.v.htmlnontemporal_store.v.htmloffset.v.htmlpanic_if_uninhabited.v.htmlpowf32.v.htmlpowf64.v.htmlpowif32.v.htmlpowif64.v.htmlpref_align_of.v.htmlprefetch_read_data.v.htmlprefetch_read_instruction.v.htmlprefetch_write_data.v.htmlprefetch_write_instruction.v.htmlptr_offset_from.v.htmlrintf32.v.htmlrintf64.v.htmlrotate_left.v.htmlrotate_right.v.htmlroundf32.v.htmlroundf64.v.htmlrustc_peek.v.htmlsaturating_add.v.htmlsaturating_sub.v.htmlsidebar-items.jssinf32.v.htmlsinf64.v.htmlsize_of.v.htmlsize_of_val.v.htmlsqrtf32.v.htmlsqrtf64.v.htmlsub_with_overflow.v.htmltransmute.v.htmltruncf32.v.htmltruncf64.v.htmltry.v.htmltype_id.v.htmltype_name.v.htmlunaligned_volatile_load.v.htmlunaligned_volatile_store.v.htmlunchecked_add.v.htmlunchecked_div.v.htmlunchecked_mul.v.htmlunchecked_rem.v.htmlunchecked_shl.v.htmlunchecked_shr.v.htmlunchecked_sub.v.htmluninit.v.htmlunlikely.v.htmlunreachable.v.htmlvolatile_copy_memory.v.htmlvolatile_copy_nonoverlapping_memory.v.htmlvolatile_load.v.htmlvolatile_set_memory.v.htmlvolatile_store.v.htmlwrapping_add.v.htmlwrapping_mul.v.htmlwrapping_sub.v.htmlwrite_bytes.v.htmlisizeMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsiterChain.t.htmlCloned.t.htmlCopied.t.htmlCycle.t.htmlDoubleEndedIterator.t.htmlEmpty.t.htmlEnumerate.t.htmlExactSizeIterator.t.htmlExtend.t.htmlFilter.t.htmlFilterMap.t.htmlFlatMap.t.htmlFlatten.t.htmlFromFn.t.htmlFromIterator.t.htmlFuse.t.htmlFusedIterator.t.htmlInspect.t.htmlIntoIterator.t.htmlIterator.t.htmlMap.t.htmlMapWhile.t.htmlOnce.t.htmlOnceWith.t.htmlPeekable.t.htmlProduct.t.htmlRepeat.t.htmlRepeatWith.t.htmlRev.t.htmlScan.t.htmlSkip.t.htmlSkipWhile.t.htmlStep.t.htmlStepBy.t.htmlSuccessors.t.htmlSum.t.htmlTake.t.htmlTakeWhile.t.htmlTrustedLen.t.htmlZip.t.htmladaptersCloned.t.htmlCopied.t.htmlCycle.t.htmlEnumerate.t.htmlFilter.t.htmlFilterMap.t.htmlFuse.t.htmlInspect.t.htmlMap.t.htmlMapWhile.t.htmlPeekable.t.htmlRev.t.htmlScan.t.htmlSkip.t.htmlSkipWhile.t.htmlStepBy.t.htmlTake.t.htmlTakeWhile.t.htmlchainChain.t.htmlstruct.Chain.htmlflattenFlatMap.t.htmlFlatten.t.htmlstruct.FlatMap.htmlstruct.Flatten.htmlstruct.Cloned.htmlstruct.Copied.htmlstruct.Cycle.htmlstruct.Enumerate.htmlstruct.Filter.htmlstruct.FilterMap.htmlstruct.Fuse.htmlstruct.Inspect.htmlstruct.Map.htmlstruct.MapWhile.htmlstruct.Peekable.htmlstruct.Rev.htmlstruct.Scan.htmlstruct.Skip.htmlstruct.SkipWhile.htmlstruct.StepBy.htmlstruct.Take.htmlstruct.TakeWhile.htmlzipZip.t.htmlstruct.Zip.htmlempty.v.htmlfn.empty.htmlfn.from_fn.htmlfn.once.htmlfn.once_with.htmlfn.repeat.htmlfn.repeat_with.htmlfn.successors.htmlfrom_fn.v.htmlindex.htmlonce.v.htmlonce_with.v.htmlrangeStep.t.htmltrait.Step.htmlrepeat.v.htmlrepeat_with.v.htmlsidebar-items.jssourcesEmpty.t.htmlFromFn.t.htmlOnce.t.htmlOnceWith.t.htmlRepeat.t.htmlRepeatWith.t.htmlSuccessors.t.htmlempty.v.htmlfn.empty.htmlfn.from_fn.htmlfn.once.htmlfn.once_with.htmlfn.repeat.htmlfn.repeat_with.htmlfn.successors.htmlfrom_fn.v.htmlonce.v.htmlonce_with.v.htmlrepeat.v.htmlrepeat_with.v.htmlstruct.Empty.htmlstruct.FromFn.htmlstruct.Once.htmlstruct.OnceWith.htmlstruct.Repeat.htmlstruct.RepeatWith.htmlstruct.Successors.htmlsuccessors.v.htmlstruct.Chain.htmlstruct.Cloned.htmlstruct.Copied.htmlstruct.Cycle.htmlstruct.Empty.htmlstruct.Enumerate.htmlstruct.Filter.htmlstruct.FilterMap.htmlstruct.FlatMap.htmlstruct.Flatten.htmlstruct.FromFn.htmlstruct.Fuse.htmlstruct.Inspect.htmlstruct.Map.htmlstruct.MapWhile.htmlstruct.Once.htmlstruct.OnceWith.htmlstruct.Peekable.htmlstruct.Repeat.htmlstruct.RepeatWith.htmlstruct.Rev.htmlstruct.Scan.htmlstruct.Skip.htmlstruct.SkipWhile.htmlstruct.StepBy.htmlstruct.Successors.htmlstruct.Take.htmlstruct.TakeWhile.htmlstruct.Zip.htmlsuccessors.v.htmltrait.DoubleEndedIterator.htmltrait.ExactSizeIterator.htmltrait.Extend.htmltrait.FromIterator.htmltrait.FusedIterator.htmltrait.IntoIterator.htmltrait.Iterator.htmltrait.Product.htmltrait.Step.htmltrait.Sum.htmltrait.TrustedLen.htmltraitsaccumProduct.t.htmlSum.t.htmltrait.Product.htmltrait.Sum.htmlcollectExtend.t.htmlFromIterator.t.htmlIntoIterator.t.htmltrait.Extend.htmltrait.FromIterator.htmltrait.IntoIterator.htmldouble_endedDoubleEndedIterator.t.htmltrait.DoubleEndedIterator.htmlexact_sizeExactSizeIterator.t.htmltrait.ExactSizeIterator.htmliteratorIterator.t.htmltrait.Iterator.htmlmarkerFusedIterator.t.htmlTrustedLen.t.htmltrait.FusedIterator.htmltrait.TrustedLen.htmlline.m.htmllog_syntax.m.htmlmacro.Clone!.htmlmacro.Clone.htmlmacro.Copy!.htmlmacro.Copy.htmlmacro.Debug!.htmlmacro.Debug.htmlmacro.Default!.htmlmacro.Default.htmlmacro.Eq!.htmlmacro.Eq.htmlmacro.Hash!.htmlmacro.Hash.htmlmacro.Ord!.htmlmacro.Ord.htmlmacro.PartialEq!.htmlmacro.PartialEq.htmlmacro.PartialOrd!.htmlmacro.PartialOrd.htmlmacro.RustcDecodable!.htmlmacro.RustcDecodable.htmlmacro.RustcEncodable!.htmlmacro.RustcEncodable.htmlmacro.asm!.htmlmacro.asm.htmlmacro.assert!.htmlmacro.assert.htmlmacro.assert_eq!.htmlmacro.assert_eq.htmlmacro.assert_ne!.htmlmacro.assert_ne.htmlmacro.bench!.htmlmacro.bench.htmlmacro.cfg!.htmlmacro.cfg.htmlmacro.column!.htmlmacro.column.htmlmacro.compile_error!.htmlmacro.compile_error.htmlmacro.concat!.htmlmacro.concat.htmlmacro.concat_idents!.htmlmacro.concat_idents.htmlmacro.debug_assert!.htmlmacro.debug_assert.htmlmacro.debug_assert_eq!.htmlmacro.debug_assert_eq.htmlmacro.debug_assert_ne!.htmlmacro.debug_assert_ne.htmlmacro.env!.htmlmacro.env.htmlmacro.file!.htmlmacro.file.htmlmacro.format_args!.htmlmacro.format_args.htmlmacro.format_args_nl!.htmlmacro.format_args_nl.htmlmacro.global_allocator!.htmlmacro.global_allocator.htmlmacro.global_asm!.htmlmacro.global_asm.htmlmacro.include!.htmlmacro.include.htmlmacro.include_bytes!.htmlmacro.include_bytes.htmlmacro.include_str!.htmlmacro.include_str.htmlmacro.line!.htmlmacro.line.htmlmacro.log_syntax!.htmlmacro.log_syntax.htmlmacro.matches!.htmlmacro.matches.htmlmacro.module_path!.htmlmacro.module_path.htmlmacro.option_env!.htmlmacro.option_env.htmlmacro.panic!.htmlmacro.panic.htmlmacro.stringify!.htmlmacro.stringify.htmlmacro.test!.htmlmacro.test.htmlmacro.test_case!.htmlmacro.test_case.htmlmacro.todo!.htmlmacro.todo.htmlmacro.trace_macros!.htmlmacro.trace_macros.htmlmacro.try!.htmlmacro.try.htmlmacro.unimplemented!.htmlmacro.unimplemented.htmlmacro.unreachable!.htmlmacro.unreachable.htmlmacro.write!.htmlmacro.write.htmlmacro.writeln!.htmlmacro.writeln.htmlmarkerCopy.t.htmlPhantomData.t.htmlPhantomPinned.t.htmlSend.t.htmlSized.t.htmlStructuralEq.t.htmlStructuralPartialEq.t.htmlSync.t.htmlUnpin.t.htmlUnsize.t.htmlindex.htmlsidebar-items.jsstruct.PhantomData.htmlstruct.PhantomPinned.htmltrait.Copy.htmltrait.Send.htmltrait.Sized.htmltrait.StructuralEq.htmltrait.StructuralPartialEq.htmltrait.Sync.htmltrait.Unpin.htmltrait.Unsize.htmlmatches.m.htmlmemDiscriminant.t.htmlManuallyDrop.t.htmlMaybeUninit.t.htmlalign_of.v.htmlalign_of_val.v.htmldiscriminant.v.htmldrop.v.htmlfn.align_of.htmlfn.align_of_val.htmlfn.discriminant.htmlfn.drop.htmlfn.forget.htmlfn.forget_unsized.htmlfn.min_align_of.htmlfn.min_align_of_val.htmlfn.needs_drop.htmlfn.replace.htmlfn.size_of.htmlfn.size_of_val.htmlfn.swap.htmlfn.take.htmlfn.transmute.htmlfn.transmute_copy.htmlfn.uninitialized.htmlfn.zeroed.htmlforget.v.htmlforget_unsized.v.htmlindex.htmlmanually_dropManuallyDrop.t.htmlstruct.ManuallyDrop.htmlmaybe_uninitMaybeUninit.t.htmlunion.MaybeUninit.htmlmin_align_of.v.htmlmin_align_of_val.v.htmlneeds_drop.v.htmlreplace.v.htmlsidebar-items.jssize_of.v.htmlsize_of_val.v.htmlstruct.Discriminant.htmlstruct.ManuallyDrop.htmlswap.v.htmltake.v.htmltransmute.v.htmltransmute_copy.v.htmluninitialized.v.htmlunion.MaybeUninit.htmlzeroed.v.htmlmodule_path.m.htmlnumFpCategory.t.htmlIntErrorKind.t.htmlNonZeroI128.t.htmlNonZeroI16.t.htmlNonZeroI32.t.htmlNonZeroI64.t.htmlNonZeroI8.t.htmlNonZeroIsize.t.htmlNonZeroU128.t.htmlNonZeroU16.t.htmlNonZeroU32.t.htmlNonZeroU64.t.htmlNonZeroU8.t.htmlNonZeroUsize.t.htmlParseFloatError.t.htmlParseIntError.t.htmlTryFromIntError.t.htmlWrapping.t.htmldec2fltParseFloatError.t.htmlstruct.ParseFloatError.htmlenum.FpCategory.htmlenum.IntErrorKind.htmlindex.htmlsidebar-items.jsstruct.NonZeroI128.htmlstruct.NonZeroI16.htmlstruct.NonZeroI32.htmlstruct.NonZeroI64.htmlstruct.NonZeroI8.htmlstruct.NonZeroIsize.htmlstruct.NonZeroU128.htmlstruct.NonZeroU16.htmlstruct.NonZeroU32.htmlstruct.NonZeroU64.htmlstruct.NonZeroU8.htmlstruct.NonZeroUsize.htmlstruct.ParseFloatError.htmlstruct.ParseIntError.htmlstruct.TryFromIntError.htmlstruct.Wrapping.htmlopsAdd.t.htmlAddAssign.t.htmlBitAnd.t.htmlBitAndAssign.t.htmlBitOr.t.htmlBitOrAssign.t.htmlBitXor.t.htmlBitXorAssign.t.htmlBound.t.htmlCoerceUnsized.t.htmlDeref.t.htmlDerefMut.t.htmlDispatchFromDyn.t.htmlDiv.t.htmlDivAssign.t.htmlDrop.t.htmlFn.t.htmlFnMut.t.htmlFnOnce.t.htmlGenerator.t.htmlGeneratorState.t.htmlIndex.t.htmlIndexMut.t.htmlMul.t.htmlMulAssign.t.htmlNeg.t.htmlNot.t.htmlRange.t.htmlRangeBounds.t.htmlRangeFrom.t.htmlRangeFull.t.htmlRangeInclusive.t.htmlRangeTo.t.htmlRangeToInclusive.t.htmlRem.t.htmlRemAssign.t.htmlShl.t.htmlShlAssign.t.htmlShr.t.htmlShrAssign.t.htmlSub.t.htmlSubAssign.t.htmlTry.t.htmlarithAdd.t.htmlAddAssign.t.htmlDiv.t.htmlDivAssign.t.htmlMul.t.htmlMulAssign.t.htmlNeg.t.htmlRem.t.htmlRemAssign.t.htmlSub.t.htmlSubAssign.t.htmltrait.Add.htmltrait.AddAssign.htmltrait.Div.htmltrait.DivAssign.htmltrait.Mul.htmltrait.MulAssign.htmltrait.Neg.htmltrait.Rem.htmltrait.RemAssign.htmltrait.Sub.htmltrait.SubAssign.htmlbitBitAnd.t.htmlBitAndAssign.t.htmlBitOr.t.htmlBitOrAssign.t.htmlBitXor.t.htmlBitXorAssign.t.htmlNot.t.htmlShl.t.htmlShlAssign.t.htmlShr.t.htmlShrAssign.t.htmltrait.BitAnd.htmltrait.BitAndAssign.htmltrait.BitOr.htmltrait.BitOrAssign.htmltrait.BitXor.htmltrait.BitXorAssign.htmltrait.Not.htmltrait.Shl.htmltrait.ShlAssign.htmltrait.Shr.htmltrait.ShrAssign.htmlderefDeref.t.htmlDerefMut.t.htmltrait.Deref.htmltrait.DerefMut.htmldropDrop.t.htmltrait.Drop.htmlenum.Bound.htmlenum.GeneratorState.htmlfunctionFn.t.htmlFnMut.t.htmlFnOnce.t.htmltrait.Fn.htmltrait.FnMut.htmltrait.FnOnce.htmlgeneratorGenerator.t.htmlGeneratorState.t.htmlenum.GeneratorState.htmltrait.Generator.htmlindexindex.htmlIndex.t.htmlIndexMut.t.htmltrait.Index.htmltrait.IndexMut.htmlrangeBound.t.htmlRange.t.htmlRangeBounds.t.htmlRangeFrom.t.htmlRangeFull.t.htmlRangeInclusive.t.htmlRangeTo.t.htmlRangeToInclusive.t.htmlenum.Bound.htmlstruct.Range.htmlstruct.RangeFrom.htmlstruct.RangeFull.htmlstruct.RangeInclusive.htmlstruct.RangeTo.htmlstruct.RangeToInclusive.htmltrait.RangeBounds.htmlsidebar-items.jsstruct.Range.htmlstruct.RangeFrom.htmlstruct.RangeFull.htmlstruct.RangeInclusive.htmlstruct.RangeTo.htmlstruct.RangeToInclusive.htmltrait.Add.htmltrait.AddAssign.htmltrait.BitAnd.htmltrait.BitAndAssign.htmltrait.BitOr.htmltrait.BitOrAssign.htmltrait.BitXor.htmltrait.BitXorAssign.htmltrait.CoerceUnsized.htmltrait.Deref.htmltrait.DerefMut.htmltrait.DispatchFromDyn.htmltrait.Div.htmltrait.DivAssign.htmltrait.Drop.htmltrait.Fn.htmltrait.FnMut.htmltrait.FnOnce.htmltrait.Generator.htmltrait.Index.htmltrait.IndexMut.htmltrait.Mul.htmltrait.MulAssign.htmltrait.Neg.htmltrait.Not.htmltrait.RangeBounds.htmltrait.Rem.htmltrait.RemAssign.htmltrait.Shl.htmltrait.ShlAssign.htmltrait.Shr.htmltrait.ShrAssign.htmltrait.Sub.htmltrait.SubAssign.htmltrait.Try.htmltryTry.t.htmltrait.Try.htmlunsizeCoerceUnsized.t.htmlDispatchFromDyn.t.htmltrait.CoerceUnsized.htmltrait.DispatchFromDyn.htmloptionIntoIter.t.htmlIter.t.htmlIterMut.t.htmlNoneError.t.htmlOption.t.htmlenum.Option.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.NoneError.htmloption_env.m.htmlpanicpanic.m.htmlLocation.t.htmlPanicInfo.t.htmlindex.htmlsidebar-items.jsstruct.Location.htmlstruct.PanicInfo.htmlpanickingfn.panic.htmlfn.panic_fmt.htmlindex.htmlpanic.v.htmlpanic_fmt.v.htmlsidebar-items.jspinPin.t.htmlindex.htmlsidebar-items.jsstruct.Pin.htmlpreludeindex.htmlsidebar-items.jsv1index.htmlsidebar-items.jsprimitiveindex.htmlsidebar-items.jsptrNonNull.t.htmldrop_in_place.v.htmleq.v.htmlfn.drop_in_place.htmlfn.eq.htmlfn.hash.htmlfn.null.htmlfn.null_mut.htmlfn.read.htmlfn.read_unaligned.htmlfn.read_volatile.htmlfn.replace.htmlfn.slice_from_raw_parts.htmlfn.slice_from_raw_parts_mut.htmlfn.swap.htmlfn.swap_nonoverlapping.htmlfn.write.htmlfn.write_unaligned.htmlfn.write_volatile.htmlhash.v.htmlindex.htmlnon_nullNonNull.t.htmlstruct.NonNull.htmlnull.v.htmlnull_mut.v.htmlread.v.htmlread_unaligned.v.htmlread_volatile.v.htmlreplace.v.htmlsidebar-items.jsslice_from_raw_parts.v.htmlslice_from_raw_parts_mut.v.htmlstruct.NonNull.htmlswap.v.htmlswap_nonoverlapping.v.htmlwrite.v.htmlwrite_unaligned.v.htmlwrite_volatile.v.htmlrawTraitObject.t.htmlindex.htmlsidebar-items.jsstruct.TraitObject.htmlresultIntoIter.t.htmlIter.t.htmlIterMut.t.htmlResult.t.htmlenum.Result.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlsidebar-items.jssliceChunks.t.htmlChunksExact.t.htmlChunksExactMut.t.htmlChunksMut.t.htmlIter.t.htmlIterMut.t.htmlRChunks.t.htmlRChunksExact.t.htmlRChunksExactMut.t.htmlRChunksMut.t.htmlRSplit.t.htmlRSplitMut.t.htmlRSplitN.t.htmlRSplitNMut.t.htmlSliceIndex.t.htmlSplit.t.htmlSplitInclusive.t.htmlSplitInclusiveMut.t.htmlSplitMut.t.htmlSplitN.t.htmlSplitNMut.t.htmlWindows.t.htmlfn.from_mut.htmlfn.from_raw_parts.htmlfn.from_raw_parts_mut.htmlfn.from_ref.htmlfrom_mut.v.htmlfrom_raw_parts.v.htmlfrom_raw_parts_mut.v.htmlfrom_ref.v.htmlindex.htmlmemchrfn.memchr.htmlfn.memrchr.htmlindex.htmlmemchr.v.htmlmemrchr.v.htmlsidebar-items.jssidebar-items.jsstruct.Chunks.htmlstruct.ChunksExact.htmlstruct.ChunksExactMut.htmlstruct.ChunksMut.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.RChunks.htmlstruct.RChunksExact.htmlstruct.RChunksExactMut.htmlstruct.RChunksMut.htmlstruct.RSplit.htmlstruct.RSplitMut.htmlstruct.RSplitN.htmlstruct.RSplitNMut.htmlstruct.Split.htmlstruct.SplitInclusive.htmlstruct.SplitInclusiveMut.htmlstruct.SplitMut.htmlstruct.SplitN.htmlstruct.SplitNMut.htmlstruct.Windows.htmltrait.SliceIndex.htmlstrBytes.t.htmlCharIndices.t.htmlChars.t.htmlEncodeUtf16.t.htmlEscapeDebug.t.htmlEscapeDefault.t.htmlEscapeUnicode.t.htmlFromStr.t.htmlLines.t.htmlLinesAny.t.htmlMatchIndices.t.htmlMatches.t.htmlParseBoolError.t.htmlRMatchIndices.t.htmlRMatches.t.htmlRSplit.t.htmlRSplitN.t.htmlRSplitTerminator.t.htmlSplit.t.htmlSplitAsciiWhitespace.t.htmlSplitInclusive.t.htmlSplitN.t.htmlSplitTerminator.t.htmlSplitWhitespace.t.htmlUtf8Error.t.htmlfn.from_utf8.htmlfn.from_utf8_mut.htmlfn.from_utf8_unchecked.htmlfn.from_utf8_unchecked_mut.htmlfn.next_code_point.htmlfn.utf8_char_width.htmlfrom_utf8.v.htmlfrom_utf8_mut.v.htmlfrom_utf8_unchecked.v.htmlfrom_utf8_unchecked_mut.v.htmlindex.htmllossyUtf8Lossy.t.htmlUtf8LossyChunk.t.htmlUtf8LossyChunksIter.t.htmlindex.htmlsidebar-items.jsstruct.Utf8Lossy.htmlstruct.Utf8LossyChunk.htmlstruct.Utf8LossyChunksIter.htmlnext_code_point.v.htmlpatternCharPredicateSearcher.t.htmlCharSearcher.t.htmlCharSliceSearcher.t.htmlDoubleEndedSearcher.t.htmlPattern.t.htmlReverseSearcher.t.htmlSearchStep.t.htmlSearcher.t.htmlStrSearcher.t.htmlenum.SearchStep.htmlindex.htmlsidebar-items.jsstruct.CharPredicateSearcher.htmlstruct.CharSearcher.htmlstruct.CharSliceSearcher.htmlstruct.StrSearcher.htmltrait.DoubleEndedSearcher.htmltrait.Pattern.htmltrait.ReverseSearcher.htmltrait.Searcher.htmlsidebar-items.jsstruct.Bytes.htmlstruct.CharIndices.htmlstruct.Chars.htmlstruct.EncodeUtf16.htmlstruct.EscapeDebug.htmlstruct.EscapeDefault.htmlstruct.EscapeUnicode.htmlstruct.Lines.htmlstruct.LinesAny.htmlstruct.MatchIndices.htmlstruct.Matches.htmlstruct.ParseBoolError.htmlstruct.RMatchIndices.htmlstruct.RMatches.htmlstruct.RSplit.htmlstruct.RSplitN.htmlstruct.RSplitTerminator.htmlstruct.Split.htmlstruct.SplitAsciiWhitespace.htmlstruct.SplitInclusive.htmlstruct.SplitN.htmlstruct.SplitTerminator.htmlstruct.SplitWhitespace.htmlstruct.Utf8Error.htmltrait.FromStr.htmlutf8_char_width.v.htmlstringify.m.htmlsyncatomicATOMIC_BOOL_INIT.v.htmlATOMIC_I16_INIT.v.htmlATOMIC_I32_INIT.v.htmlATOMIC_I64_INIT.v.htmlATOMIC_I8_INIT.v.htmlATOMIC_ISIZE_INIT.v.htmlATOMIC_U16_INIT.v.htmlATOMIC_U32_INIT.v.htmlATOMIC_U64_INIT.v.htmlATOMIC_U8_INIT.v.htmlATOMIC_USIZE_INIT.v.htmlAtomicBool.t.htmlAtomicI16.t.htmlAtomicI32.t.htmlAtomicI64.t.htmlAtomicI8.t.htmlAtomicIsize.t.htmlAtomicPtr.t.htmlAtomicU16.t.htmlAtomicU32.t.htmlAtomicU64.t.htmlAtomicU8.t.htmlAtomicUsize.t.htmlOrdering.t.htmlcompiler_fence.v.htmlconstant.ATOMIC_BOOL_INIT.htmlconstant.ATOMIC_I16_INIT.htmlconstant.ATOMIC_I32_INIT.htmlconstant.ATOMIC_I64_INIT.htmlconstant.ATOMIC_I8_INIT.htmlconstant.ATOMIC_ISIZE_INIT.htmlconstant.ATOMIC_U16_INIT.htmlconstant.ATOMIC_U32_INIT.htmlconstant.ATOMIC_U64_INIT.htmlconstant.ATOMIC_U8_INIT.htmlconstant.ATOMIC_USIZE_INIT.htmlenum.Ordering.htmlfence.v.htmlfn.compiler_fence.htmlfn.fence.htmlfn.spin_loop_hint.htmlindex.htmlsidebar-items.jsspin_loop_hint.v.htmlstruct.AtomicBool.htmlstruct.AtomicI16.htmlstruct.AtomicI32.htmlstruct.AtomicI64.htmlstruct.AtomicI8.htmlstruct.AtomicIsize.htmlstruct.AtomicPtr.htmlstruct.AtomicU16.htmlstruct.AtomicU32.htmlstruct.AtomicU64.htmlstruct.AtomicU8.htmlstruct.AtomicUsize.htmlindex.htmlsidebar-items.jstaskContext.t.htmlPoll.t.htmlRawWaker.t.htmlRawWakerVTable.t.htmlWaker.t.htmlenum.Poll.htmlindex.htmlpollPoll.t.htmlenum.Poll.htmlsidebar-items.jsstruct.Context.htmlstruct.RawWaker.htmlstruct.RawWakerVTable.htmlstruct.Waker.htmlwakeContext.t.htmlRawWaker.t.htmlRawWakerVTable.t.htmlWaker.t.htmlstruct.Context.htmlstruct.RawWaker.htmlstruct.RawWakerVTable.htmlstruct.Waker.htmltest.m.htmltest_case.m.htmltimeDuration.t.htmlindex.htmlsidebar-items.jsstruct.Duration.htmltodo.m.htmltrace_macros.m.htmltry.m.htmlu128MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu16MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu32MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu64MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu8MAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsunicodeAlphabetic.v.htmlCase_Ignorable.v.htmlCased.v.htmlCc.v.htmlGrapheme_Extend.v.htmlLowercase.v.htmlN.v.htmlUNICODE_VERSION.v.htmlUppercase.v.htmlWhite_Space.v.htmlconstant.UNICODE_VERSION.htmlconversionsfn.to_lower.htmlfn.to_upper.htmlindex.htmlsidebar-items.jsto_lower.v.htmlto_upper.v.htmlderived_propertyCase_Ignorable.v.htmlCased.v.htmlfn.Case_Ignorable.htmlfn.Cased.htmlindex.htmlsidebar-items.jsfn.Alphabetic.htmlfn.Case_Ignorable.htmlfn.Cased.htmlfn.Cc.htmlfn.Grapheme_Extend.htmlfn.Lowercase.htmlfn.N.htmlfn.Uppercase.htmlfn.White_Space.htmlindex.htmlsidebar-items.jsunicode_dataalphabeticfn.lookup.htmllookup.v.htmlcase_ignorablefn.lookup.htmllookup.v.htmlcasedfn.lookup.htmllookup.v.htmlccfn.lookup.htmllookup.v.htmlconversionsfn.to_lower.htmlfn.to_upper.htmlindex.htmlto_lower.v.htmlto_upper.v.htmlgrapheme_extendfn.lookup.htmllookup.v.htmllowercasefn.lookup.htmllookup.v.htmlnfn.lookup.htmllookup.v.htmluppercasefn.lookup.htmllookup.v.htmlwhite_spacefn.lookup.htmllookup.v.htmlversionUnicodeVersion.t.htmlstruct.UnicodeVersion.htmlunimplemented.m.htmlunreachable.m.htmlusizeMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jswrite.m.htmlwriteln.m.htmldark1.43.1.cssdown-arrow1.43.1.svgedition-guideFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2ayu-highlight.cssbook.jsclipboard.min.jscsschrome.cssgeneral.cssprint.cssvariables.csseditionscreating-a-new-project.htmlindex.htmltransitioning-an-existing-project-to-a-new-edition.htmlelasticlunr.min.jsfavicon.pnghighlight.csshighlight.jsindex.htmlintroduction.htmlmark.min.jsprint.htmlrust-2015index.htmlrust-2018cargo-and-crates-iocargo-can-use-a-local-registry-replacement.htmlcargo-check-for-faster-checking.htmlcargo-install-for-easy-installation-of-tools.htmlcargo-new-defaults-to-a-binary-project.htmlcargo-rustc-for-passing-arbitrary-flags-to-rustc.htmlcargo-workspaces-for-multi-package-projects.htmlcrates-io-disallows-wildcard-dependencies.htmlindex.htmlmulti-file-examples.htmlreplacing-dependencies-with-patch.htmlcontrol-flowasync-await-for-easier-concurrency.htmlindex.htmlloops-can-break-with-a-value.htmldata-types128-bit-integers.htmlchoosing-alignment-with-the-repr-attribute.htmlfield-init-shorthand.htmlinclusive-ranges.htmlindex.htmloperator-equals-are-now-implementable.htmlunion-for-an-unsafe-form-of-enum.htmldocumentationindex.htmlnew-editions-of-the-book.htmlstd-os-has-documentation-for-all-platforms.htmlthe-rust-bookshelf.htmlthe-rustonomicon.htmledition-changes.htmlerror-handling-and-panicsaborting-on-panic.htmlcontrolling-panics-with-std-panic.htmlindex.htmlquestion-mark-in-main-and-tests.htmlthe-question-mark-operator-for-easier-error-handling.htmlindex.htmlmacrosat-most-once.htmlcustom-derive.htmlindex.htmlmacro-changes.htmlmodule-systemindex.htmlmore-visibility-modifiers.htmlnested-imports-with-use.htmlpath-clarity.htmlraw-identifiers.htmlownership-and-lifetimesdefault-match-bindings.htmlindex.htmlinference-in-structs.htmllifetime-elision-in-impl.htmlnon-lexical-lifetimes.htmlsimpler-lifetimes-in-static-and-const.htmlthe-anonymous-lifetime.htmlplatform-and-target-supportcdylib-crates-for-c-interoperability.htmlglobal-allocators.htmlindex.htmllibcore-for-low-level-rust.htmlmsvc-toolchain-support.htmlmusl-support-for-fully-static-binaries.htmlwebassembly-support.htmlrustdocdocumentation-tests-can-now-compile-fail.htmlindex.htmlrustdoc-uses-commonmark.htmlrustup-for-managing-rust-versions.htmlsimd-for-faster-computing.htmlslice-patterns.htmlthe-compileran-attribute-for-deprecation.htmlimproved-error-messages.htmlincremental-compilation-for-faster-compiles.htmlindex.htmltrait-systemassociated-constants.htmldyn-trait-for-trait-objects.htmlimpl-trait-for-returning-complex-types-with-ease.htmlindex.htmlmore-container-types-support-trait-objects.htmlno-anon-params.htmlsearcher.jssearchindex.jssearchindex.jsontomorrow-night.cssembedded-bookFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2appendixglossary.htmlassetsembedded-hal.svgf3.jpgnrf52-memory-map.pngnrf52-spi-frequency-register.pngrust_layers.svgverify.jpegayu-highlight.cssbook.jsc-tipsindex.htmlclipboard.min.jscollectionsindex.htmlconcurrencyindex.htmlcsschrome.cssgeneral.cssprint.cssvariables.csselasticlunr.min.jsfavicon.pnghighlight.csshighlight.jsindex.htmlinteroperabilityc-with-rust.htmlindex.htmlrust-with-c.htmlintrohardware.htmlindex.htmlinstallinstall.htmllinux.htmlmacos.htmlverify.htmlwindows.htmlno-std.htmltooling.htmlmark.min.jsperipheralsa-first-attempt.htmlborrowck.htmlindex.htmlsingletons.htmlportabilityindex.htmlprint.htmlsearcher.jssearchindex.jssearchindex.jsonstartexceptions.htmlhardware.htmlindex.htmlinterrupts.htmlio.htmlpanicking.htmlqemu.htmlregisters.htmlsemihosting.htmlstatic-guaranteesdesign-contracts.htmlindex.htmlstate-machines.htmltypestate-programming.htmlzero-cost-abstractions.htmltomorrow-night.cssunsortedindex.htmlspeed-vs-size.htmlerror-index.htmlfavicon1.43.1.icogrammar.htmlguide-crates.htmlguide-error-handling.htmlguide-ffi.htmlguide-macros.htmlguide-ownership.htmlguide-plugins.htmlguide-pointers.htmlguide-strings.htmlguide-tasks.htmlguide-testing.htmlguide-unsafe.htmlguide.htmlimplementorsallocalloctrait.AllocRef.jsborrowtrait.Borrow.jstrait.BorrowMut.jstrait.ToOwned.jsfmttrait.Binary.jstrait.Debug.jstrait.Display.jstrait.LowerExp.jstrait.LowerHex.jstrait.Octal.jstrait.Pointer.jstrait.UpperExp.jstrait.UpperHex.jstrait.Write.jsslicetrait.Concat.jstrait.Join.jstrait.SliceIndex.jsstrpatterntrait.DoubleEndedSearcher.jstrait.Pattern.jstrait.ReverseSearcher.jstrait.Searcher.jstrait.FromStr.jsstringtrait.ToString.jscoreanytrait.Any.jsarraytrait.FixedSizeArray.jstrait.LengthAtMost32.jsborrowtrait.Borrow.jstrait.BorrowMut.jsclonetrait.Clone.jscmptrait.Eq.jstrait.Ord.jstrait.PartialEq.jstrait.PartialOrd.jsconverttrait.AsMut.jstrait.AsRef.jstrait.FloatToInt.jstrait.From.jstrait.Into.jstrait.TryFrom.jstrait.TryInto.jsdefaulttrait.Default.jsfmttrait.Binary.jstrait.Debug.jstrait.Display.jstrait.LowerExp.jstrait.LowerHex.jstrait.Octal.jstrait.Pointer.jstrait.UpperExp.jstrait.UpperHex.jstrait.Write.jsfuturefuturetrait.Future.jstrait.Future.jshashtrait.BuildHasher.jstrait.Hash.jstrait.Hasher.jsitertrait.DoubleEndedIterator.jstrait.ExactSizeIterator.jstrait.Extend.jstrait.FromIterator.jstrait.FusedIterator.jstrait.IntoIterator.jstrait.Iterator.jstrait.Product.jstrait.Step.jstrait.Sum.jstrait.TrustedLen.jstraitscollecttrait.Extend.jstrait.FromIterator.jstrait.IntoIterator.jsdouble_endedtrait.DoubleEndedIterator.jsexact_sizetrait.ExactSizeIterator.jsiteratortrait.Iterator.jsmarkertrait.FusedIterator.jstrait.TrustedLen.jsmarkertrait.Copy.jstrait.Freeze.jstrait.Send.jstrait.StructuralEq.jstrait.StructuralPartialEq.jstrait.Sync.jstrait.Unpin.jsopsarithtrait.Add.jstrait.AddAssign.jstrait.Sub.jsbittrait.BitAnd.jstrait.BitOr.jstrait.BitXor.jsdereftrait.Deref.jstrait.DerefMut.jstrait.Receiver.jsdroptrait.Drop.jsfunctiontrait.Fn.jstrait.FnMut.jstrait.FnOnce.jsgeneratortrait.Generator.jsindextrait.Index.jstrait.IndexMut.jstrait.Add.jstrait.AddAssign.jstrait.BitAnd.jstrait.BitAndAssign.jstrait.BitOr.jstrait.BitOrAssign.jstrait.BitXor.jstrait.BitXorAssign.jstrait.CoerceUnsized.jstrait.Deref.jstrait.DerefMut.jstrait.DispatchFromDyn.jstrait.Div.jstrait.DivAssign.jstrait.Drop.jstrait.Fn.jstrait.FnMut.jstrait.FnOnce.jstrait.Generator.jstrait.Index.jstrait.IndexMut.jstrait.Mul.jstrait.MulAssign.jstrait.Neg.jstrait.Not.jstrait.RangeBounds.jstrait.Rem.jstrait.RemAssign.jstrait.Shl.jstrait.ShlAssign.jstrait.Shr.jstrait.ShrAssign.jstrait.Sub.jstrait.SubAssign.jstrait.Try.jsunsizetrait.CoerceUnsized.jstrait.DispatchFromDyn.jsslicetrait.SliceIndex.jsstrpatterntrait.DoubleEndedSearcher.jstrait.Pattern.jstrait.ReverseSearcher.jstrait.Searcher.jstrait.FromStr.jsproc_macrotrait.MultiSpan.jsstdalloctrait.AllocRef.jstrait.GlobalAlloc.jsanytrait.Any.jsarraytrait.FixedSizeArray.jstrait.LengthAtMost32.jsasciitrait.AsciiExt.jsborrowtrait.Borrow.jstrait.BorrowMut.jstrait.ToOwned.jsclonetrait.Clone.jscmptrait.Eq.jstrait.Ord.jstrait.PartialEq.jstrait.PartialOrd.jsconverttrait.AsMut.jstrait.AsRef.jstrait.FloatToInt.jstrait.From.jstrait.Into.jstrait.TryFrom.jstrait.TryInto.jsdefaulttrait.Default.jserrortrait.Error.jsfmttrait.Binary.jstrait.Debug.jstrait.Display.jstrait.LowerExp.jstrait.LowerHex.jstrait.Octal.jstrait.Pointer.jstrait.UpperExp.jstrait.UpperHex.jstrait.Write.jsfuturetrait.Future.jshashtrait.BuildHasher.jstrait.Hash.jstrait.Hasher.jsiotrait.BufRead.jstrait.Read.jstrait.Seek.jstrait.Write.jsitertrait.DoubleEndedIterator.jstrait.ExactSizeIterator.jstrait.Extend.jstrait.FromIterator.jstrait.FusedIterator.jstrait.IntoIterator.jstrait.Iterator.jstrait.Product.jstrait.Step.jstrait.Sum.jstrait.TrustedLen.jsmarkertrait.Copy.jstrait.Send.jstrait.StructuralEq.jstrait.StructuralPartialEq.jstrait.Sync.jstrait.Unpin.jsnettrait.ToSocketAddrs.jsopstrait.Add.jstrait.AddAssign.jstrait.BitAnd.jstrait.BitAndAssign.jstrait.BitOr.jstrait.BitOrAssign.jstrait.BitXor.jstrait.BitXorAssign.jstrait.CoerceUnsized.jstrait.Deref.jstrait.DerefMut.jstrait.DispatchFromDyn.jstrait.Div.jstrait.DivAssign.jstrait.Drop.jstrait.Fn.jstrait.FnMut.jstrait.FnOnce.jstrait.Generator.jstrait.Index.jstrait.IndexMut.jstrait.Mul.jstrait.MulAssign.jstrait.Neg.jstrait.Not.jstrait.RangeBounds.jstrait.Rem.jstrait.RemAssign.jstrait.Shl.jstrait.ShlAssign.jstrait.Shr.jstrait.ShrAssign.jstrait.Sub.jstrait.SubAssign.jstrait.Try.jsoslinuxfstrait.MetadataExt.jsunixffitrait.OsStrExt.jstrait.OsStringExt.jsfstrait.DirBuilderExt.jstrait.DirEntryExt.jstrait.FileExt.jstrait.FileTypeExt.jstrait.MetadataExt.jstrait.OpenOptionsExt.jstrait.PermissionsExt.jsiotrait.AsRawFd.jstrait.FromRawFd.jstrait.IntoRawFd.jsprocesstrait.CommandExt.jstrait.ExitStatusExt.jsthreadtrait.JoinHandleExt.jswindowsffitrait.OsStrExt.jstrait.OsStringExt.jsfstrait.FileExt.jstrait.FileTypeExt.jstrait.MetadataExt.jstrait.OpenOptionsExt.jsiotrait.AsRawHandle.jstrait.AsRawSocket.jstrait.FromRawHandle.jstrait.FromRawSocket.jstrait.IntoRawHandle.jstrait.IntoRawSocket.jsprocesstrait.CommandExt.jstrait.ExitStatusExt.jspanictrait.RefUnwindSafe.jstrait.UnwindSafe.jsprocesstrait.Termination.jsslicetrait.Concat.jstrait.Join.jstrait.SliceIndex.jsstrpatterntrait.DoubleEndedSearcher.jstrait.Pattern.jstrait.ReverseSearcher.jstrait.Searcher.jstrait.FromStr.jsstringtrait.ToString.jsteststatstrait.Stats.jsindex.htmlintro.htmllight1.43.1.cssmain1.43.1.jsnomiconFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2aliasing.htmlarc-and-mutex.htmlatomics.htmlayu-highlight.cssbeneath-std.htmlbook.jsborrow-splitting.htmlcasts.htmlchecked-uninit.htmlclipboard.min.jscoercions.htmlconcurrency.htmlconstructors.htmlconversions.htmlcsschrome.cssgeneral.cssprint.cssvariables.cssdata.htmldestructors.htmldot-operator.htmldrop-flags.htmldropck.htmlelasticlunr.min.jsexception-safety.htmlexotic-sizes.htmlfavicon.pngffi.htmlhighlight.csshighlight.jshrtb.htmlimgsafeandunsafe.svgindex.htmlleaking.htmllifetime-elision.htmllifetime-mismatch.htmllifetimes.htmlmark.min.jsmeet-safe-and-unsafe.htmlobrm.htmlother-reprs.htmlownership.htmlpanic-handler.htmlphantom-data.htmlpoisoning.htmlprint.htmlraces.htmlreferences.htmlrepr-rust.htmlsafe-unsafe-meaning.htmlsearcher.jssearchindex.jssearchindex.jsonsend-and-sync.htmlsubtyping.htmltomorrow-night.csstransmutes.htmlunbounded-lifetimes.htmlunchecked-uninit.htmluninitialized.htmlunwinding.htmlvec-alloc.htmlvec-dealloc.htmlvec-deref.htmlvec-drain.htmlvec-final.htmlvec-insert-remove.htmlvec-into-iter.htmlvec-layout.htmlvec-push-pop.htmlvec-raw.htmlvec-zsts.htmlvec.htmlwhat-unsafe-does.htmlworking-with-unsafe.htmlnormalize1.43.1.cssnoscript1.43.1.cssnot_found.htmlproc_macroDelimiter.t.htmlDiagnostic.t.htmlGroup.t.htmlIdent.t.htmlLevel.t.htmlLexError.t.htmlLineColumn.t.htmlLiteral.t.htmlMultiSpan.t.htmlPunct.t.htmlSourceFile.t.htmlSpacing.t.htmlSpan.t.htmlTokenStream.t.htmlTokenTree.t.htmlall.htmldiagnosticDiagnostic.t.htmlLevel.t.htmlMultiSpan.t.htmlenum.Level.htmlstruct.Diagnostic.htmltrait.MultiSpan.htmlenum.Delimiter.htmlenum.Level.htmlenum.Spacing.htmlenum.TokenTree.htmlfn.quote.htmlfn.quote_span.htmlindex.htmlmacro.quote!.htmlmacro.quote.htmlquotequote.m.htmlquote.v.htmlfn.quote.htmlfn.quote_span.htmlquote.v.htmlquote_span.v.htmlquote_span.v.htmlsidebar-items.jsstruct.Diagnostic.htmlstruct.Group.htmlstruct.Ident.htmlstruct.LexError.htmlstruct.LineColumn.htmlstruct.Literal.htmlstruct.Punct.htmlstruct.SourceFile.htmlstruct.Span.htmlstruct.TokenStream.htmltoken_streamIntoIter.t.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmltrait.MultiSpan.htmlreferencereference.htmlFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2abi.htmlappendices.htmlattributesattributes-redirect.htmlattributes.htmlcodegen.htmlderive.htmldiagnostics.htmllimits.htmltesting.htmltype_system.htmlayu-highlight.cssbehavior-considered-undefined.htmlbehavior-not-considered-unsafe.htmlbook.jsclipboard.min.jscomments.htmlconditional-compilation.htmlconst_eval.htmlcrates-and-source-files.htmlcsschrome.cssgeneral.cssprint.cssvariables.cssdestructors.htmldynamically-sized-types.htmlelasticlunr.min.jsexpressionsexpressions.htmlarray-expr.htmlawait-expr.htmlblock-expr.htmlcall-expr.htmlclosure-expr.htmlenum-variant-expr.htmlfield-expr.htmlgrouped-expr.htmlif-expr.htmlliteral-expr.htmlloop-expr.htmlmatch-expr.htmlmethod-call-expr.htmloperator-expr.htmlpath-expr.htmlrange-expr.htmlreturn-expr.htmlstruct-expr.htmltuple-expr.htmlfavicon.pngglossary.htmlhighlight.csshighlight.jsidentifiers.htmlindex.htmlinfluences.htmlinput-format.htmlinterior-mutability.htmlintroduction.htmlitemsitems.htmlassociated-items.htmlconstant-items.htmlenumerations.htmlextern-crates.htmlexternal-blocks.htmlfunctions.htmlgenerics.htmlimplementations.htmlmodules.htmlstatic-items.htmlstructs.htmltraits.htmltype-aliases.htmlunions.htmluse-declarations.htmlkeywords.htmllexical-structure.htmllifetime-elision.htmllinkage.htmlmacro-ambiguity.htmlmacros-by-example.htmlmacros.htmlmark.min.jsmemory-allocation-and-lifetime.htmlmemory-model.htmlmemory-ownership.htmlnotation.htmlpaths.htmlpatterns.htmlprint.htmlprocedural-macros.htmlruntime.htmlsearcher.jssearchindex.jssearchindex.jsonspecial-types-and-traits.htmlstatements-and-expressions.htmlstatements.htmlsubtyping.htmlthemereference.csstokens.htmltomorrow-night.csstrait-bounds.htmltype-coercions.htmltype-layout.htmltype-system.htmltypestypes-redirect.htmltypes.htmlarray.htmlboolean.htmlclosure.htmlenum.htmlfunction-item.htmlfunction-pointer.htmlimpl-trait.htmlinferred.htmlnever.htmlnumeric.htmlparameters.htmlpointer.htmlslice.htmlstruct.htmltextual.htmltrait-object.htmltuple.htmlunion.htmlunsafe-blocks.htmlunsafe-functions.htmlunsafety.htmlvariables.htmlvisibility-and-privacy.htmlwhitespace.htmlrobots.txtrust-by-exampleFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2ace.jsattributeattribute.htmlcfgcfg.htmlcustom.htmlcrate.htmlunused.htmlayu-highlight.cssbook.jscargocargo.htmlbuild_scripts.htmlconventions.htmldeps.htmltest.htmlclipboard.min.jscompatibilitycompatibility.htmlraw_identifiers.htmlconversionconversion.htmlfrom_into.htmlstring.htmltry_from_try_into.htmlcratescrates.htmllib.htmllink.htmlcsschrome.cssgeneral.cssprint.cssvariables.csscustom_typescustom_types.htmlconstants.htmlenumenum.htmlc_like.htmlenum_use.htmltestcase_linked_list.htmlstructs.htmleditor.jselasticlunr.min.jserrorerror.htmliter_result.htmlmultiple_error_typesmultiple_error_types.htmlboxing_errors.htmldefine_error_type.htmloption_result.htmlreenter_question_mark.htmlwrap_error.htmloption_unwrapoption_unwrap.htmland_then.htmlmap.htmlquestion_mark.htmlpanic.htmlresultresult.htmlearly_returns.htmlenter_question_mark.htmlresult_alias.htmlresult_map.htmlexpression.htmlfavicon.pngflow_controlflow_control.htmlfor.htmlif_else.htmlif_let.htmllooploop.htmlnested.htmlreturn.htmlmatchmatch.htmlbinding.htmldestructuringdestructuring.htmldestructure_enum.htmldestructure_pointers.htmldestructure_structures.htmldestructure_tuple.htmlguard.htmlwhile.htmlwhile_let.htmlfnfn.htmlclosuresclosures.htmlanonymity.htmlcapture.htmlclosure_examplesclosure_examples.htmliter_any.htmliter_find.htmlinput_functions.htmlinput_parameters.htmloutput_parameters.htmldiverging.htmlhof.htmlmethods.htmlgenericsgenerics.htmlassoc_itemsassoc_items.htmlthe_problem.htmltypes.htmlboundsbounds.htmltestcase_empty.htmlgen_fn.htmlgen_trait.htmlimpl.htmlmulti_bounds.htmlnew_types.htmlphantomphantom.htmltestcase_units.htmlwhere.htmlhellohello.htmlcomment.htmlprintprint.htmlfmt.htmlprint_debug.htmlprint_displayprint_display.htmltestcase_list.htmlhighlight.csshighlight.jsindex.htmlmacrosmacros.htmldesignators.htmldry.htmldsl.htmloverload.htmlrepeat.htmlsyntax.htmlvariadics.htmlmark.min.jsmetameta.htmldoc.htmlmodmod.htmlsplit.htmlstruct_visibility.htmlsuper.htmluse.htmlvisibility.htmlmode-rust.jsprimitivesprimitives.htmlarray.htmlliterals.htmltuples.htmlprint.htmlscopescope.htmlborrowborrow.htmlalias.htmlfreeze.htmlmut.htmlref.htmllifetimelifetime.htmlelision.htmlexplicit.htmlfn.htmllifetime_bounds.htmllifetime_coercion.htmlmethods.htmlstatic_lifetime.htmlstruct.htmltrait.htmlmovemove.htmlmut.htmlraii.htmlsearcher.jssearchindex.jssearchindex.jsonstdstd.htmlbox.htmlhashhash.htmlalt_key_types.htmlhashset.htmloption.htmlpanic.htmlrc.htmlresultresult.htmlquestion_mark.htmlstr.htmlvec.htmlstd_miscstd_misc.htmlargarg.htmlmatching.htmlchannels.htmlffi.htmlfilefile.htmlcreate.htmlopen.htmlread_lines.htmlfs.htmlpath.htmlprocessprocess.htmlpipe.htmlwait.htmlthreadsthreads.htmltestcase_mapreduce.htmltestingtesting.htmldev_dependencies.htmldoc_testing.htmlintegration_testing.htmlunit_testing.htmltheme-dawn.jstheme-tomorrow_night.jstomorrow-night.csstraittrait.htmlclone.htmlderive.htmldisambiguating.htmldrop.htmldyn.htmlimpl_trait.htmliter.htmlops.htmlsupertraits.htmltypestypes.htmlalias.htmlcast.htmlinference.htmlliterals.htmlunsafe.htmlvariable_bindingsvariable_bindings.htmldeclare.htmlmut.htmlscope.htmlrust-logo1.43.1.pngrust.cssrust.htmlrustcrustc-ux-guidelines.htmlFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2ayu-highlight.cssbook.jsclipboard.min.jscodegen-optionsindex.htmlcommand-line-arguments.htmlcontributing.htmlcsschrome.cssgeneral.cssprint.cssvariables.csselasticlunr.min.jsfavicon.pnghighlight.csshighlight.jsindex.htmljson.htmllinker-plugin-lto.htmllintsgroups.htmlindex.htmllevels.htmllistingallowed-by-default.htmldeny-by-default.htmlindex.htmlwarn-by-default.htmlmark.min.jsprint.htmlprofile-guided-optimization.htmlsearcher.jssearchindex.jssearchindex.jsontargetsbuilt-in.htmlcustom.htmlindex.htmlknown-issues.htmltomorrow-night.csswhat-is-rustc.htmlrustdocrustdoc.htmlFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2advanced-features.htmlayu-highlight.cssbook.jsclipboard.min.jscommand-line-arguments.htmlcsschrome.cssgeneral.cssprint.cssvariables.cssdocumentation-tests.htmlelasticlunr.min.jsfavicon.pnghighlight.csshighlight.jshow-to-write-documentation.htmlindex.htmllints.htmlmark.min.jspasses.htmlprint.htmlsearcher.jssearchindex.jssearchindex.jsonthe-doc-attribute.htmltomorrow-night.cssunstable-features.htmlwhat-is-rustdoc.htmlrustdoc1.43.1.csssearch-index1.43.1.jssettings.htmlsettings1.43.1.csssettings1.43.1.jssource-files1.43.1.jssource-script1.43.1.jssrcallocalloc.rs.htmlborrow.rs.htmlboxed.rs.htmlcollectionsbinary_heap.rs.htmlbtreemap.rs.htmlmod.rs.htmlnavigate.rs.htmlnode.rs.htmlsearch.rs.htmlset.rs.htmllinked_list.rs.htmlmod.rs.htmlvec_dequevec_deque.rs.htmldrain.rs.htmlfmt.rs.htmllib.rs.htmlmacros.rs.htmlpreludemod.rs.htmlv1.rs.htmlraw_vec.rs.htmlrc.rs.htmlslice.rs.htmlstr.rs.htmlstring.rs.htmlsync.rs.htmlvec.rs.htmlcorealloc.rs.htmlany.rs.htmlarrayiter.rs.htmlmod.rs.htmlascii.rs.htmlbool.rs.htmlborrow.rs.htmlcell.rs.htmlcharconvert.rs.htmldecode.rs.htmlmethods.rs.htmlmod.rs.htmlclone.rs.htmlcmp.rs.htmlconvertmod.rs.htmlnum.rs.htmldefault.rs.htmlffi.rs.htmlfmtbuilders.rs.htmlfloat.rs.htmlmod.rs.htmlnum.rs.htmlrtv1.rs.htmlfuturefuture.rs.htmlmod.rs.htmlhashmod.rs.htmlsip.rs.htmlhint.rs.htmlinternal_macros.rs.htmlintrinsics.rs.htmliteradapterschain.rs.htmlflatten.rs.htmlmod.rs.htmlzip.rs.htmlmod.rs.htmlrange.rs.htmlsources.rs.htmltraitsaccum.rs.htmlcollect.rs.htmldouble_ended.rs.htmlexact_size.rs.htmliterator.rs.htmlmarker.rs.htmlmod.rs.htmllib.rs.htmlmacrosmod.rs.htmlmarker.rs.htmlmemmanually_drop.rs.htmlmaybe_uninit.rs.htmlmod.rs.htmlnumbignum.rs.htmldec2fltalgorithm.rs.htmlmod.rs.htmlnum.rs.htmlparse.rs.htmlrawfp.rs.htmltable.rs.htmldiy_float.rs.htmlf32.rs.htmlf64.rs.htmlflt2decdecoder.rs.htmlestimator.rs.htmlmod.rs.htmlstrategydragon.rs.htmlgrisu.rs.htmli128.rs.htmli16.rs.htmli32.rs.htmli64.rs.htmli8.rs.htmlint_macros.rs.htmlisize.rs.htmlmod.rs.htmlu128.rs.htmlu16.rs.htmlu32.rs.htmlu64.rs.htmlu8.rs.htmlusize.rs.htmlwrapping.rs.htmlopsarith.rs.htmlbit.rs.htmlderef.rs.htmldrop.rs.htmlfunction.rs.htmlgenerator.rs.htmlindex.rs.htmlmod.rs.htmlrange.rs.htmltry.rs.htmlunsize.rs.htmloption.rs.htmlpanic.rs.htmlpanicking.rs.htmlpin.rs.htmlpreludemod.rs.htmlv1.rs.htmlprimitive.rs.htmlptrconst_ptr.rs.htmlmod.rs.htmlmut_ptr.rs.htmlnon_null.rs.htmlunique.rs.htmlraw.rs.htmlresult.rs.htmlslicememchr.rs.htmlmod.rs.htmlrotate.rs.htmlsort.rs.htmlstrlossy.rs.htmlmod.rs.htmlpattern.rs.htmlsyncatomic.rs.htmlmod.rs.htmltaskmod.rs.htmlpoll.rs.htmlwake.rs.htmltime.rs.htmltuple.rs.htmlunicodemod.rs.htmlprintable.rs.htmlunicode_data.rs.htmlversion.rs.htmlunit.rs.htmlupstdarchcratescore_archsrcaarch64crc.rs.htmlcrypto.rs.htmlmod.rs.htmlneongenerated.rs.htmlmod.rs.htmlv8.rs.htmlaclebarriercp15.rs.htmlmod.rs.htmlex.rs.htmlhints.rs.htmlmod.rs.htmlregistersaarch32.rs.htmlmod.rs.htmlarmarmclang.rs.htmlmod.rs.htmlneongenerated.rs.htmlmod.rs.htmlv6.rs.htmlmacros.rs.htmlmipsmod.rs.htmlmsamsa.rs.htmlmacros.rs.htmlmod.rs.htmlnvptxmod.rs.htmlpowerpcmod.rs.htmlvsx.rs.htmlpowerpc64mod.rs.htmlsimd.rs.htmlsimd_llvm.rs.htmlwasm32atomic.rs.htmlmemory.rs.htmlmod.rs.htmlsimd128.rs.htmlx86abm.rs.htmladx.rs.htmlaes.rs.htmlavx.rs.htmlavx2.rs.htmlavx512f.rs.htmlavx512ifma.rs.htmlbmi1.rs.htmlbmi2.rs.htmlbswap.rs.htmlbt.rs.htmlcpuid.rs.htmleflags.rs.htmlf16c.rs.htmlfma.rs.htmlfxsr.rs.htmlmacros.rs.htmlmmx.rs.htmlmod.rs.htmlpclmulqdq.rs.htmlrdrand.rs.htmlrdtsc.rs.htmlrtm.rs.htmlsha.rs.htmlsse.rs.htmlsse2.rs.htmlsse3.rs.htmlsse41.rs.htmlsse42.rs.htmlsse4a.rs.htmlssse3.rs.htmltbm.rs.htmlxsave.rs.htmlx86_64abm.rs.htmladx.rs.htmlavx.rs.htmlavx2.rs.htmlbmi.rs.htmlbmi2.rs.htmlbswap.rs.htmlbt.rs.htmlcmpxchg16b.rs.htmlfxsr.rs.htmlmod.rs.htmlrdrand.rs.htmlsse.rs.htmlsse2.rs.htmlsse41.rs.htmlsse42.rs.htmlxsave.rs.htmlproc_macrobridgebuffer.rs.htmlclient.rs.htmlclosure.rs.htmlhandle.rs.htmlmod.rs.htmlrpc.rs.htmlscoped_cell.rs.htmlserver.rs.htmldiagnostic.rs.htmllib.rs.htmlquote.rs.htmlstdalloc.rs.htmlascii.rs.htmlbacktrace.rs.htmlcollectionshashmap.rs.htmlmod.rs.htmlset.rs.htmlmod.rs.htmlenv.rs.htmlerror.rs.htmlf32.rs.htmlf64.rs.htmlffic_str.rs.htmlmod.rs.htmlos_str.rs.htmlfs.rs.htmlfuture.rs.htmliobuffered.rs.htmlcursor.rs.htmlerror.rs.htmlimpls.rs.htmllazy.rs.htmlmod.rs.htmlprelude.rs.htmlstdio.rs.htmlutil.rs.htmlkeyword_docs.rs.htmllib.rs.htmlmacros.rs.htmlmemchr.rs.htmlnetaddr.rs.htmlip.rs.htmlmod.rs.htmlparser.rs.htmltcp.rs.htmludp.rs.htmlnum.rs.htmloslinuxfs.rs.htmlmod.rs.htmlraw.rs.htmlmod.rs.htmlrawmod.rs.htmlpanic.rs.htmlpanicking.rs.htmlpath.rs.htmlpreludemod.rs.htmlv1.rs.htmlprimitive_docs.rs.htmlprocess.rs.htmlrt.rs.htmlsyncbarrier.rs.htmlcondvar.rs.htmlmod.rs.htmlmpscblocking.rs.htmlcache_aligned.rs.htmlmod.rs.htmlmpsc_queue.rs.htmloneshot.rs.htmlshared.rs.htmlspsc_queue.rs.htmlstream.rs.htmlsync.rs.htmlmutex.rs.htmlonce.rs.htmlrwlock.rs.htmlsysmod.rs.htmlunixalloc.rs.htmlargs.rs.htmlcmath.rs.htmlcondvar.rs.htmlenv.rs.htmlextffi.rs.htmlfs.rs.htmlio.rs.htmlmod.rs.htmlnet.rs.htmlprocess.rs.htmlraw.rs.htmlthread.rs.htmlfast_thread_local.rs.htmlfd.rs.htmlfs.rs.htmlio.rs.htmlmemchr.rs.htmlmod.rs.htmlmutex.rs.htmlnet.rs.htmlos.rs.htmlpath.rs.htmlpipe.rs.htmlprocessmod.rs.htmlprocess_common.rs.htmlprocess_unix.rs.htmlrand.rs.htmlrwlock.rs.htmlstack_overflow.rs.htmlstdio.rs.htmlthread.rs.htmlthread_local.rs.htmltime.rs.htmlweak.rs.htmlwindowsc.rs.htmlcompat.rs.htmlextffi.rs.htmlfs.rs.htmlio.rs.htmlmod.rs.htmlprocess.rs.htmlraw.rs.htmlthread.rs.htmlsys_commonalloc.rs.htmlat_exit_imp.rs.htmlbacktrace.rs.htmlbytestring.rs.htmlcondvar.rs.htmlfs.rs.htmlio.rs.htmlmod.rs.htmlmutex.rs.htmlnet.rs.htmlos_str_bytes.rs.htmlpoison.rs.htmlprocess.rs.htmlremutex.rs.htmlrwlock.rs.htmlthread.rs.htmlthread_info.rs.htmlthread_local.rs.htmlutil.rs.htmlwtf8.rs.htmlthreadlocal.rs.htmlmod.rs.htmltime.rs.htmlupstdarchcratesstd_detectsrcdetectbit.rs.htmlcache.rs.htmlerror_macros.rs.htmlmacros.rs.htmlmod.rs.htmlosother.rs.htmlmod.rs.htmltestbench.rs.htmlcli.rs.htmlconsole.rs.htmlevent.rs.htmlformattersjson.rs.htmlmod.rs.htmlpretty.rs.htmlterse.rs.htmlhelpersconcurrency.rs.htmlexit_code.rs.htmlisatty.rs.htmlmetrics.rs.htmlmod.rs.htmlsink.rs.htmllib.rs.htmloptions.rs.htmlstats.rs.htmltest_result.rs.htmltime.rs.htmltypes.rs.htmlstdSelf.k.htmlall.htmlallocAllocErr.t.htmlAllocRef.t.htmlCannotReallocInPlace.t.htmlGlobal.t.htmlGlobalAlloc.t.htmlLayout.t.htmlLayoutErr.t.htmlSystem.t.htmlalloc.v.htmlalloc_zeroed.v.htmldealloc.v.htmlfn.alloc.htmlfn.alloc_zeroed.htmlfn.dealloc.htmlfn.handle_alloc_error.htmlfn.realloc.htmlfn.set_alloc_error_hook.htmlfn.take_alloc_error_hook.htmlhandle_alloc_error.v.htmlindex.htmlrealloc.v.htmlset_alloc_error_hook.v.htmlsidebar-items.jsstruct.AllocErr.htmlstruct.CannotReallocInPlace.htmlstruct.Global.htmlstruct.Layout.htmlstruct.LayoutErr.htmlstruct.System.htmltake_alloc_error_hook.v.htmltrait.AllocRef.htmltrait.GlobalAlloc.htmlanyAny.t.htmlTypeId.t.htmlfn.type_name.htmlfn.type_name_of_val.htmlindex.htmlsidebar-items.jsstruct.TypeId.htmltrait.Any.htmltype_name.v.htmltype_name_of_val.v.htmlarrayarray.t.htmlFixedSizeArray.t.htmlIntoIter.t.htmlLengthAtMost32.t.htmlTryFromSliceError.t.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.TryFromSliceError.htmltrait.FixedSizeArray.htmltrait.LengthAtMost32.htmlas.k.htmlasciiAsciiExt.t.htmlEscapeDefault.t.htmlescape_default.v.htmlfn.escape_default.htmlindex.htmlsidebar-items.jsstruct.EscapeDefault.htmltrait.AsciiExt.htmlasm.m.htmlassert.m.htmlassert_eq.m.htmlassert_ne.m.htmlasync.k.htmlawait.k.htmlbacktraceBacktrace.t.htmlBacktraceStatus.t.htmlenum.BacktraceStatus.htmlindex.htmlsidebar-items.jsstruct.Backtrace.htmlbool.t.htmlborrowBorrow.t.htmlBorrowMut.t.htmlCow.t.htmlToOwned.t.htmlenum.Cow.htmlindex.htmlsidebar-items.jstrait.Borrow.htmltrait.BorrowMut.htmltrait.ToOwned.htmlboxedBox.t.htmlindex.htmlsidebar-items.jsstruct.Box.htmlbreak.k.htmlcellBorrowError.t.htmlBorrowMutError.t.htmlCell.t.htmlRef.t.htmlRefCell.t.htmlRefMut.t.htmlUnsafeCell.t.htmlindex.htmlsidebar-items.jsstruct.BorrowError.htmlstruct.BorrowMutError.htmlstruct.Cell.htmlstruct.Ref.htmlstruct.RefCell.htmlstruct.RefMut.htmlstruct.UnsafeCell.htmlcfg.m.htmlcharchar.t.htmlCharTryFromError.t.htmlDecodeUtf16.t.htmlDecodeUtf16Error.t.htmlEscapeDebug.t.htmlEscapeDefault.t.htmlEscapeUnicode.t.htmlMAX.v.htmlParseCharError.t.htmlREPLACEMENT_CHARACTER.v.htmlToLowercase.t.htmlToUppercase.t.htmlUNICODE_VERSION.v.htmlUnicodeVersion.t.htmlconstant.MAX.htmlconstant.REPLACEMENT_CHARACTER.htmlconstant.UNICODE_VERSION.htmldecode_utf16.v.htmlfn.decode_utf16.htmlfn.from_digit.htmlfn.from_u32.htmlfn.from_u32_unchecked.htmlfrom_digit.v.htmlfrom_u32.v.htmlfrom_u32_unchecked.v.htmlindex.htmlsidebar-items.jsstruct.CharTryFromError.htmlstruct.DecodeUtf16.htmlstruct.DecodeUtf16Error.htmlstruct.EscapeDebug.htmlstruct.EscapeDefault.htmlstruct.EscapeUnicode.htmlstruct.ParseCharError.htmlstruct.ToLowercase.htmlstruct.ToUppercase.htmlstruct.UnicodeVersion.htmlcloneClone.m.htmlClone.t.htmlindex.htmlmacro.Clone!.htmlmacro.Clone.htmlsidebar-items.jstrait.Clone.htmlcmpEq.m.htmlEq.t.htmlOrd.m.htmlOrd.t.htmlOrdering.t.htmlPartialEq.m.htmlPartialEq.t.htmlPartialOrd.m.htmlPartialOrd.t.htmlReverse.t.htmlenum.Ordering.htmlfn.max.htmlfn.max_by.htmlfn.max_by_key.htmlfn.min.htmlfn.min_by.htmlfn.min_by_key.htmlindex.htmlmacro.Eq!.htmlmacro.Eq.htmlmacro.Ord!.htmlmacro.Ord.htmlmacro.PartialEq!.htmlmacro.PartialEq.htmlmacro.PartialOrd!.htmlmacro.PartialOrd.htmlmax.v.htmlmax_by.v.htmlmax_by_key.v.htmlmin.v.htmlmin_by.v.htmlmin_by_key.v.htmlsidebar-items.jsstruct.Reverse.htmltrait.Eq.htmltrait.Ord.htmltrait.PartialEq.htmltrait.PartialOrd.htmlcollectionsBTreeMap.t.htmlBTreeSet.t.htmlBinaryHeap.t.htmlHashMap.t.htmlHashSet.t.htmlLinkedList.t.htmlTryReserveError.t.htmlVecDeque.t.htmlbinary_heapBinaryHeap.t.htmlDrain.t.htmlDrainSorted.t.htmlIntoIter.t.htmlIntoIterSorted.t.htmlIter.t.htmlPeekMut.t.htmlindex.htmlsidebar-items.jsstruct.BinaryHeap.htmlstruct.Drain.htmlstruct.DrainSorted.htmlstruct.IntoIter.htmlstruct.IntoIterSorted.htmlstruct.Iter.htmlstruct.PeekMut.htmlbtree_mapBTreeMap.t.htmlEntry.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlKeys.t.htmlOccupiedEntry.t.htmlRange.t.htmlRangeMut.t.htmlVacantEntry.t.htmlValues.t.htmlValuesMut.t.htmlenum.Entry.htmlindex.htmlsidebar-items.jsstruct.BTreeMap.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.Keys.htmlstruct.OccupiedEntry.htmlstruct.Range.htmlstruct.RangeMut.htmlstruct.VacantEntry.htmlstruct.Values.htmlstruct.ValuesMut.htmlbtree_setBTreeSet.t.htmlDifference.t.htmlIntersection.t.htmlIntoIter.t.htmlIter.t.htmlRange.t.htmlSymmetricDifference.t.htmlUnion.t.htmlindex.htmlsidebar-items.jsstruct.BTreeSet.htmlstruct.Difference.htmlstruct.Intersection.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.Range.htmlstruct.SymmetricDifference.htmlstruct.Union.htmlenum.TryReserveError.htmlhashmapDefaultHasher.t.htmlDrain.t.htmlEntry.t.htmlHashMap.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlKeys.t.htmlOccupiedEntry.t.htmlRandomState.t.htmlRawEntryBuilder.t.htmlRawEntryBuilderMut.t.htmlRawEntryMut.t.htmlRawOccupiedEntryMut.t.htmlRawVacantEntryMut.t.htmlVacantEntry.t.htmlValues.t.htmlValuesMut.t.htmlenum.Entry.htmlenum.RawEntryMut.htmlstruct.DefaultHasher.htmlstruct.Drain.htmlstruct.HashMap.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.Keys.htmlstruct.OccupiedEntry.htmlstruct.RandomState.htmlstruct.RawEntryBuilder.htmlstruct.RawEntryBuilderMut.htmlstruct.RawOccupiedEntryMut.htmlstruct.RawVacantEntryMut.htmlstruct.VacantEntry.htmlstruct.Values.htmlstruct.ValuesMut.htmlsetDifference.t.htmlDrain.t.htmlHashSet.t.htmlIntersection.t.htmlIntoIter.t.htmlIter.t.htmlSymmetricDifference.t.htmlUnion.t.htmlstruct.Difference.htmlstruct.Drain.htmlstruct.HashSet.htmlstruct.Intersection.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.SymmetricDifference.htmlstruct.Union.htmlhash_mapDefaultHasher.t.htmlDrain.t.htmlEntry.t.htmlHashMap.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlKeys.t.htmlOccupiedEntry.t.htmlRandomState.t.htmlRawEntryBuilder.t.htmlRawEntryBuilderMut.t.htmlRawEntryMut.t.htmlRawOccupiedEntryMut.t.htmlRawVacantEntryMut.t.htmlVacantEntry.t.htmlValues.t.htmlValuesMut.t.htmlenum.Entry.htmlenum.RawEntryMut.htmlindex.htmlsidebar-items.jsstruct.DefaultHasher.htmlstruct.Drain.htmlstruct.HashMap.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.Keys.htmlstruct.OccupiedEntry.htmlstruct.RandomState.htmlstruct.RawEntryBuilder.htmlstruct.RawEntryBuilderMut.htmlstruct.RawOccupiedEntryMut.htmlstruct.RawVacantEntryMut.htmlstruct.VacantEntry.htmlstruct.Values.htmlstruct.ValuesMut.htmlhash_setDifference.t.htmlDrain.t.htmlHashSet.t.htmlIntersection.t.htmlIntoIter.t.htmlIter.t.htmlSymmetricDifference.t.htmlUnion.t.htmlindex.htmlsidebar-items.jsstruct.Difference.htmlstruct.Drain.htmlstruct.HashSet.htmlstruct.Intersection.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.SymmetricDifference.htmlstruct.Union.htmlindex.htmllinked_listCursor.t.htmlCursorMut.t.htmlDrainFilter.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlLinkedList.t.htmlindex.htmlsidebar-items.jsstruct.Cursor.htmlstruct.CursorMut.htmlstruct.DrainFilter.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.LinkedList.htmlsidebar-items.jsstruct.BTreeMap.htmlstruct.BTreeSet.htmlstruct.BinaryHeap.htmlstruct.HashMap.htmlstruct.HashSet.htmlstruct.LinkedList.htmlstruct.VecDeque.htmlvec_dequeDrain.t.htmlIntoIter.t.htmlIter.t.htmlIterMut.t.htmlVecDeque.t.htmlindex.htmlsidebar-items.jsstruct.Drain.htmlstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.VecDeque.htmlcolumn.m.htmlcompile_error.m.htmlconcat.m.htmlconcat_idents.m.htmlconst.k.htmlcontinue.k.htmlconvertAsMut.t.htmlAsRef.t.htmlFloatToInt.t.htmlFrom.t.htmlInfallible.t.htmlInto.t.htmlTryFrom.t.htmlTryInto.t.htmlenum.Infallible.htmlfn.identity.htmlidentity.v.htmlindex.htmlsidebar-items.jstrait.AsMut.htmltrait.AsRef.htmltrait.FloatToInt.htmltrait.From.htmltrait.Into.htmltrait.TryFrom.htmltrait.TryInto.htmlcrate.k.htmldbg.m.htmldebug_assert.m.htmldebug_assert_eq.m.htmldebug_assert_ne.m.htmldefaultDefault.m.htmlDefault.t.htmlindex.htmlmacro.Default!.htmlmacro.Default.htmlsidebar-items.jstrait.Default.htmldyn.k.htmlelse.k.htmlenum.k.htmlenvenv.m.htmlArgs.t.htmlArgsOs.t.htmlJoinPathsError.t.htmlSplitPaths.t.htmlVarError.t.htmlVars.t.htmlVarsOs.t.htmlargs.v.htmlargs_os.v.htmlconstsARCH.v.htmlDLL_EXTENSION.v.htmlDLL_PREFIX.v.htmlDLL_SUFFIX.v.htmlEXE_EXTENSION.v.htmlEXE_SUFFIX.v.htmlFAMILY.v.htmlOS.v.htmlconstant.ARCH.htmlconstant.DLL_EXTENSION.htmlconstant.DLL_PREFIX.htmlconstant.DLL_SUFFIX.htmlconstant.EXE_EXTENSION.htmlconstant.EXE_SUFFIX.htmlconstant.FAMILY.htmlconstant.OS.htmlindex.htmlsidebar-items.jscurrent_dir.v.htmlcurrent_exe.v.htmlenum.VarError.htmlfn.args.htmlfn.args_os.htmlfn.current_dir.htmlfn.current_exe.htmlfn.home_dir.htmlfn.join_paths.htmlfn.remove_var.htmlfn.set_current_dir.htmlfn.set_var.htmlfn.split_paths.htmlfn.temp_dir.htmlfn.var.htmlfn.var_os.htmlfn.vars.htmlfn.vars_os.htmlhome_dir.v.htmlindex.htmljoin_paths.v.htmlremove_var.v.htmlset_current_dir.v.htmlset_var.v.htmlsidebar-items.jssplit_paths.v.htmlstruct.Args.htmlstruct.ArgsOs.htmlstruct.JoinPathsError.htmlstruct.SplitPaths.htmlstruct.Vars.htmlstruct.VarsOs.htmltemp_dir.v.htmlvar.v.htmlvar_os.v.htmlvars.v.htmlvars_os.v.htmleprint.m.htmleprintln.m.htmlerrorChain.t.htmlError.t.htmlindex.htmlsidebar-items.jsstruct.Chain.htmltrait.Error.htmlextern.k.htmlf32f32.t.htmlDIGITS.v.htmlEPSILON.v.htmlINFINITY.v.htmlMANTISSA_DIGITS.v.htmlMAX.v.htmlMAX_10_EXP.v.htmlMAX_EXP.v.htmlMIN.v.htmlMIN_10_EXP.v.htmlMIN_EXP.v.htmlMIN_POSITIVE.v.htmlNAN.v.htmlNEG_INFINITY.v.htmlRADIX.v.htmlconstant.DIGITS.htmlconstant.EPSILON.htmlconstant.INFINITY.htmlconstant.MANTISSA_DIGITS.htmlconstant.MAX.htmlconstant.MAX_10_EXP.htmlconstant.MAX_EXP.htmlconstant.MIN.htmlconstant.MIN_10_EXP.htmlconstant.MIN_EXP.htmlconstant.MIN_POSITIVE.htmlconstant.NAN.htmlconstant.NEG_INFINITY.htmlconstant.RADIX.htmlconstsE.v.htmlFRAC_1_PI.v.htmlFRAC_1_SQRT_2.v.htmlFRAC_2_PI.v.htmlFRAC_2_SQRT_PI.v.htmlFRAC_PI_2.v.htmlFRAC_PI_3.v.htmlFRAC_PI_4.v.htmlFRAC_PI_6.v.htmlFRAC_PI_8.v.htmlLN_10.v.htmlLN_2.v.htmlLOG10_2.v.htmlLOG10_E.v.htmlLOG2_10.v.htmlLOG2_E.v.htmlPI.v.htmlSQRT_2.v.htmlTAU.v.htmlconstant.E.htmlconstant.FRAC_1_PI.htmlconstant.FRAC_1_SQRT_2.htmlconstant.FRAC_2_PI.htmlconstant.FRAC_2_SQRT_PI.htmlconstant.FRAC_PI_2.htmlconstant.FRAC_PI_3.htmlconstant.FRAC_PI_4.htmlconstant.FRAC_PI_6.htmlconstant.FRAC_PI_8.htmlconstant.LN_10.htmlconstant.LN_2.htmlconstant.LOG10_2.htmlconstant.LOG10_E.htmlconstant.LOG2_10.htmlconstant.LOG2_E.htmlconstant.PI.htmlconstant.SQRT_2.htmlconstant.TAU.htmlindex.htmlsidebar-items.jsindex.htmlsidebar-items.jsf64f64.t.htmlDIGITS.v.htmlEPSILON.v.htmlINFINITY.v.htmlMANTISSA_DIGITS.v.htmlMAX.v.htmlMAX_10_EXP.v.htmlMAX_EXP.v.htmlMIN.v.htmlMIN_10_EXP.v.htmlMIN_EXP.v.htmlMIN_POSITIVE.v.htmlNAN.v.htmlNEG_INFINITY.v.htmlRADIX.v.htmlconstant.DIGITS.htmlconstant.EPSILON.htmlconstant.INFINITY.htmlconstant.MANTISSA_DIGITS.htmlconstant.MAX.htmlconstant.MAX_10_EXP.htmlconstant.MAX_EXP.htmlconstant.MIN.htmlconstant.MIN_10_EXP.htmlconstant.MIN_EXP.htmlconstant.MIN_POSITIVE.htmlconstant.NAN.htmlconstant.NEG_INFINITY.htmlconstant.RADIX.htmlconstsE.v.htmlFRAC_1_PI.v.htmlFRAC_1_SQRT_2.v.htmlFRAC_2_PI.v.htmlFRAC_2_SQRT_PI.v.htmlFRAC_PI_2.v.htmlFRAC_PI_3.v.htmlFRAC_PI_4.v.htmlFRAC_PI_6.v.htmlFRAC_PI_8.v.htmlLN_10.v.htmlLN_2.v.htmlLOG10_2.v.htmlLOG10_E.v.htmlLOG2_10.v.htmlLOG2_E.v.htmlPI.v.htmlSQRT_2.v.htmlTAU.v.htmlconstant.E.htmlconstant.FRAC_1_PI.htmlconstant.FRAC_1_SQRT_2.htmlconstant.FRAC_2_PI.htmlconstant.FRAC_2_SQRT_PI.htmlconstant.FRAC_PI_2.htmlconstant.FRAC_PI_3.htmlconstant.FRAC_PI_4.htmlconstant.FRAC_PI_6.htmlconstant.FRAC_PI_8.htmlconstant.LN_10.htmlconstant.LN_2.htmlconstant.LOG10_2.htmlconstant.LOG10_E.htmlconstant.LOG2_10.htmlconstant.LOG2_E.htmlconstant.PI.htmlconstant.SQRT_2.htmlconstant.TAU.htmlindex.htmlsidebar-items.jsindex.htmlsidebar-items.jsfalse.k.htmlffiCStr.t.htmlCString.t.htmlFromBytesWithNulError.t.htmlIntoStringError.t.htmlNulError.t.htmlOsStr.t.htmlOsString.t.htmlVaList.t.htmlVaListImpl.t.htmlc_strCStr.t.htmlCString.t.htmlFromBytesWithNulError.t.htmlIntoStringError.t.htmlNulError.t.htmlstruct.CStr.htmlstruct.CString.htmlstruct.FromBytesWithNulError.htmlstruct.IntoStringError.htmlstruct.NulError.htmlc_void.t.htmlenum.c_void.htmlindex.htmlos_strOsStr.t.htmlOsString.t.htmlstruct.OsStr.htmlstruct.OsString.htmlsidebar-items.jsstruct.CStr.htmlstruct.CString.htmlstruct.FromBytesWithNulError.htmlstruct.IntoStringError.htmlstruct.NulError.htmlstruct.OsStr.htmlstruct.OsString.htmlstruct.VaList.htmlstruct.VaListImpl.htmlfile.m.htmlfmtAlignment.t.htmlArguments.t.htmlBinary.t.htmlDebug.m.htmlDebug.t.htmlDebugList.t.htmlDebugMap.t.htmlDebugSet.t.htmlDebugStruct.t.htmlDebugTuple.t.htmlDisplay.t.htmlError.t.htmlFormatter.t.htmlLowerExp.t.htmlLowerHex.t.htmlOctal.t.htmlPointer.t.htmlResult.t.htmlUpperExp.t.htmlUpperHex.t.htmlWrite.t.htmlenum.Alignment.htmlfn.format.htmlfn.write.htmlformat.v.htmlindex.htmlmacro.Debug!.htmlmacro.Debug.htmlsidebar-items.jsstruct.Arguments.htmlstruct.DebugList.htmlstruct.DebugMap.htmlstruct.DebugSet.htmlstruct.DebugStruct.htmlstruct.DebugTuple.htmlstruct.Error.htmlstruct.Formatter.htmltrait.Binary.htmltrait.Debug.htmltrait.Display.htmltrait.LowerExp.htmltrait.LowerHex.htmltrait.Octal.htmltrait.Pointer.htmltrait.UpperExp.htmltrait.UpperHex.htmltrait.Write.htmltype.Result.htmlwrite.v.htmlfn.k.htmlfn.t.htmlfor.k.htmlformat.m.htmlformat_args.m.htmlformat_args_nl.m.htmlfsDirBuilder.t.htmlDirEntry.t.htmlFile.t.htmlFileType.t.htmlMetadata.t.htmlOpenOptions.t.htmlPermissions.t.htmlReadDir.t.htmlcanonicalize.v.htmlcopy.v.htmlcreate_dir.v.htmlcreate_dir_all.v.htmlfn.canonicalize.htmlfn.copy.htmlfn.create_dir.htmlfn.create_dir_all.htmlfn.hard_link.htmlfn.metadata.htmlfn.read.htmlfn.read_dir.htmlfn.read_link.htmlfn.read_to_string.htmlfn.remove_dir.htmlfn.remove_dir_all.htmlfn.remove_file.htmlfn.rename.htmlfn.set_permissions.htmlfn.soft_link.htmlfn.symlink_metadata.htmlfn.write.htmlhard_link.v.htmlindex.htmlmetadata.v.htmlread.v.htmlread_dir.v.htmlread_link.v.htmlread_to_string.v.htmlremove_dir.v.htmlremove_dir_all.v.htmlremove_file.v.htmlrename.v.htmlset_permissions.v.htmlsidebar-items.jssoft_link.v.htmlstruct.DirBuilder.htmlstruct.DirEntry.htmlstruct.File.htmlstruct.FileType.htmlstruct.Metadata.htmlstruct.OpenOptions.htmlstruct.Permissions.htmlstruct.ReadDir.htmlsymlink_metadata.v.htmlwrite.v.htmlfutureFuture.t.htmlindex.htmlsidebar-items.jstrait.Future.htmlglobal_asm.m.htmlhashBuildHasher.t.htmlBuildHasherDefault.t.htmlHash.m.htmlHash.t.htmlHasher.t.htmlSipHasher.t.htmlindex.htmlmacro.Hash!.htmlmacro.Hash.htmlsidebar-items.jsstruct.BuildHasherDefault.htmlstruct.SipHasher.htmltrait.BuildHasher.htmltrait.Hash.htmltrait.Hasher.htmlhintblack_box.v.htmlfn.black_box.htmlfn.spin_loop.htmlfn.unreachable_unchecked.htmlindex.htmlsidebar-items.jsspin_loop.v.htmlunreachable_unchecked.v.htmli128i128.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi16i16.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi32i32.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi64i64.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsi8i8.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsif.k.htmlimpl.k.htmlin.k.htmlinclude.m.htmlinclude_bytes.m.htmlinclude_str.m.htmlindex.htmlintrinsicsabort.v.htmladd_with_overflow.v.htmlarith_offset.v.htmlassume.v.htmlatomic_and.v.htmlatomic_and_acq.v.htmlatomic_and_acqrel.v.htmlatomic_and_rel.v.htmlatomic_and_relaxed.v.htmlatomic_cxchg.v.htmlatomic_cxchg_acq.v.htmlatomic_cxchg_acq_failrelaxed.v.htmlatomic_cxchg_acqrel.v.htmlatomic_cxchg_acqrel_failrelaxed.v.htmlatomic_cxchg_failacq.v.htmlatomic_cxchg_failrelaxed.v.htmlatomic_cxchg_rel.v.htmlatomic_cxchg_relaxed.v.htmlatomic_cxchgweak.v.htmlatomic_cxchgweak_acq.v.htmlatomic_cxchgweak_acq_failrelaxed.v.htmlatomic_cxchgweak_acqrel.v.htmlatomic_cxchgweak_acqrel_failrelaxed.v.htmlatomic_cxchgweak_failacq.v.htmlatomic_cxchgweak_failrelaxed.v.htmlatomic_cxchgweak_rel.v.htmlatomic_cxchgweak_relaxed.v.htmlatomic_fence.v.htmlatomic_fence_acq.v.htmlatomic_fence_acqrel.v.htmlatomic_fence_rel.v.htmlatomic_load.v.htmlatomic_load_acq.v.htmlatomic_load_relaxed.v.htmlatomic_load_unordered.v.htmlatomic_max.v.htmlatomic_max_acq.v.htmlatomic_max_acqrel.v.htmlatomic_max_rel.v.htmlatomic_max_relaxed.v.htmlatomic_min.v.htmlatomic_min_acq.v.htmlatomic_min_acqrel.v.htmlatomic_min_rel.v.htmlatomic_min_relaxed.v.htmlatomic_nand.v.htmlatomic_nand_acq.v.htmlatomic_nand_acqrel.v.htmlatomic_nand_rel.v.htmlatomic_nand_relaxed.v.htmlatomic_or.v.htmlatomic_or_acq.v.htmlatomic_or_acqrel.v.htmlatomic_or_rel.v.htmlatomic_or_relaxed.v.htmlatomic_singlethreadfence.v.htmlatomic_singlethreadfence_acq.v.htmlatomic_singlethreadfence_acqrel.v.htmlatomic_singlethreadfence_rel.v.htmlatomic_store.v.htmlatomic_store_rel.v.htmlatomic_store_relaxed.v.htmlatomic_store_unordered.v.htmlatomic_umax.v.htmlatomic_umax_acq.v.htmlatomic_umax_acqrel.v.htmlatomic_umax_rel.v.htmlatomic_umax_relaxed.v.htmlatomic_umin.v.htmlatomic_umin_acq.v.htmlatomic_umin_acqrel.v.htmlatomic_umin_rel.v.htmlatomic_umin_relaxed.v.htmlatomic_xadd.v.htmlatomic_xadd_acq.v.htmlatomic_xadd_acqrel.v.htmlatomic_xadd_rel.v.htmlatomic_xadd_relaxed.v.htmlatomic_xchg.v.htmlatomic_xchg_acq.v.htmlatomic_xchg_acqrel.v.htmlatomic_xchg_rel.v.htmlatomic_xchg_relaxed.v.htmlatomic_xor.v.htmlatomic_xor_acq.v.htmlatomic_xor_acqrel.v.htmlatomic_xor_rel.v.htmlatomic_xor_relaxed.v.htmlatomic_xsub.v.htmlatomic_xsub_acq.v.htmlatomic_xsub_acqrel.v.htmlatomic_xsub_rel.v.htmlatomic_xsub_relaxed.v.htmlbitreverse.v.htmlbreakpoint.v.htmlbswap.v.htmlcaller_location.v.htmlceilf32.v.htmlceilf64.v.htmlcopy.v.htmlcopy_nonoverlapping.v.htmlcopysignf32.v.htmlcopysignf64.v.htmlcosf32.v.htmlcosf64.v.htmlctlz.v.htmlctlz_nonzero.v.htmlctpop.v.htmlcttz.v.htmlcttz_nonzero.v.htmldiscriminant_value.v.htmldrop_in_place.v.htmlexact_div.v.htmlexp2f32.v.htmlexp2f64.v.htmlexpf32.v.htmlexpf64.v.htmlfabsf32.v.htmlfabsf64.v.htmlfadd_fast.v.htmlfdiv_fast.v.htmlfloat_to_int_approx_unchecked.v.htmlfloorf32.v.htmlfloorf64.v.htmlfmaf32.v.htmlfmaf64.v.htmlfmul_fast.v.htmlfn.abort.htmlfn.add_with_overflow.htmlfn.arith_offset.htmlfn.assume.htmlfn.atomic_and.htmlfn.atomic_and_acq.htmlfn.atomic_and_acqrel.htmlfn.atomic_and_rel.htmlfn.atomic_and_relaxed.htmlfn.atomic_cxchg.htmlfn.atomic_cxchg_acq.htmlfn.atomic_cxchg_acq_failrelaxed.htmlfn.atomic_cxchg_acqrel.htmlfn.atomic_cxchg_acqrel_failrelaxed.htmlfn.atomic_cxchg_failacq.htmlfn.atomic_cxchg_failrelaxed.htmlfn.atomic_cxchg_rel.htmlfn.atomic_cxchg_relaxed.htmlfn.atomic_cxchgweak.htmlfn.atomic_cxchgweak_acq.htmlfn.atomic_cxchgweak_acq_failrelaxed.htmlfn.atomic_cxchgweak_acqrel.htmlfn.atomic_cxchgweak_acqrel_failrelaxed.htmlfn.atomic_cxchgweak_failacq.htmlfn.atomic_cxchgweak_failrelaxed.htmlfn.atomic_cxchgweak_rel.htmlfn.atomic_cxchgweak_relaxed.htmlfn.atomic_fence.htmlfn.atomic_fence_acq.htmlfn.atomic_fence_acqrel.htmlfn.atomic_fence_rel.htmlfn.atomic_load.htmlfn.atomic_load_acq.htmlfn.atomic_load_relaxed.htmlfn.atomic_load_unordered.htmlfn.atomic_max.htmlfn.atomic_max_acq.htmlfn.atomic_max_acqrel.htmlfn.atomic_max_rel.htmlfn.atomic_max_relaxed.htmlfn.atomic_min.htmlfn.atomic_min_acq.htmlfn.atomic_min_acqrel.htmlfn.atomic_min_rel.htmlfn.atomic_min_relaxed.htmlfn.atomic_nand.htmlfn.atomic_nand_acq.htmlfn.atomic_nand_acqrel.htmlfn.atomic_nand_rel.htmlfn.atomic_nand_relaxed.htmlfn.atomic_or.htmlfn.atomic_or_acq.htmlfn.atomic_or_acqrel.htmlfn.atomic_or_rel.htmlfn.atomic_or_relaxed.htmlfn.atomic_singlethreadfence.htmlfn.atomic_singlethreadfence_acq.htmlfn.atomic_singlethreadfence_acqrel.htmlfn.atomic_singlethreadfence_rel.htmlfn.atomic_store.htmlfn.atomic_store_rel.htmlfn.atomic_store_relaxed.htmlfn.atomic_store_unordered.htmlfn.atomic_umax.htmlfn.atomic_umax_acq.htmlfn.atomic_umax_acqrel.htmlfn.atomic_umax_rel.htmlfn.atomic_umax_relaxed.htmlfn.atomic_umin.htmlfn.atomic_umin_acq.htmlfn.atomic_umin_acqrel.htmlfn.atomic_umin_rel.htmlfn.atomic_umin_relaxed.htmlfn.atomic_xadd.htmlfn.atomic_xadd_acq.htmlfn.atomic_xadd_acqrel.htmlfn.atomic_xadd_rel.htmlfn.atomic_xadd_relaxed.htmlfn.atomic_xchg.htmlfn.atomic_xchg_acq.htmlfn.atomic_xchg_acqrel.htmlfn.atomic_xchg_rel.htmlfn.atomic_xchg_relaxed.htmlfn.atomic_xor.htmlfn.atomic_xor_acq.htmlfn.atomic_xor_acqrel.htmlfn.atomic_xor_rel.htmlfn.atomic_xor_relaxed.htmlfn.atomic_xsub.htmlfn.atomic_xsub_acq.htmlfn.atomic_xsub_acqrel.htmlfn.atomic_xsub_rel.htmlfn.atomic_xsub_relaxed.htmlfn.bitreverse.htmlfn.breakpoint.htmlfn.bswap.htmlfn.caller_location.htmlfn.ceilf32.htmlfn.ceilf64.htmlfn.copy.htmlfn.copy_nonoverlapping.htmlfn.copysignf32.htmlfn.copysignf64.htmlfn.cosf32.htmlfn.cosf64.htmlfn.ctlz.htmlfn.ctlz_nonzero.htmlfn.ctpop.htmlfn.cttz.htmlfn.cttz_nonzero.htmlfn.discriminant_value.htmlfn.drop_in_place.htmlfn.exact_div.htmlfn.exp2f32.htmlfn.exp2f64.htmlfn.expf32.htmlfn.expf64.htmlfn.fabsf32.htmlfn.fabsf64.htmlfn.fadd_fast.htmlfn.fdiv_fast.htmlfn.float_to_int_approx_unchecked.htmlfn.floorf32.htmlfn.floorf64.htmlfn.fmaf32.htmlfn.fmaf64.htmlfn.fmul_fast.htmlfn.forget.htmlfn.frem_fast.htmlfn.fsub_fast.htmlfn.init.htmlfn.likely.htmlfn.log10f32.htmlfn.log10f64.htmlfn.log2f32.htmlfn.log2f64.htmlfn.logf32.htmlfn.logf64.htmlfn.maxnumf32.htmlfn.maxnumf64.htmlfn.min_align_of.htmlfn.min_align_of_val.htmlfn.minnumf32.htmlfn.minnumf64.htmlfn.miri_start_panic.htmlfn.move_val_init.htmlfn.mul_with_overflow.htmlfn.nearbyintf32.htmlfn.nearbyintf64.htmlfn.needs_drop.htmlfn.nontemporal_store.htmlfn.offset.htmlfn.panic_if_uninhabited.htmlfn.powf32.htmlfn.powf64.htmlfn.powif32.htmlfn.powif64.htmlfn.pref_align_of.htmlfn.prefetch_read_data.htmlfn.prefetch_read_instruction.htmlfn.prefetch_write_data.htmlfn.prefetch_write_instruction.htmlfn.ptr_offset_from.htmlfn.rintf32.htmlfn.rintf64.htmlfn.rotate_left.htmlfn.rotate_right.htmlfn.roundf32.htmlfn.roundf64.htmlfn.rustc_peek.htmlfn.saturating_add.htmlfn.saturating_sub.htmlfn.sinf32.htmlfn.sinf64.htmlfn.size_of.htmlfn.size_of_val.htmlfn.sqrtf32.htmlfn.sqrtf64.htmlfn.sub_with_overflow.htmlfn.transmute.htmlfn.truncf32.htmlfn.truncf64.htmlfn.try.htmlfn.type_id.htmlfn.type_name.htmlfn.unaligned_volatile_load.htmlfn.unaligned_volatile_store.htmlfn.unchecked_add.htmlfn.unchecked_div.htmlfn.unchecked_mul.htmlfn.unchecked_rem.htmlfn.unchecked_shl.htmlfn.unchecked_shr.htmlfn.unchecked_sub.htmlfn.uninit.htmlfn.unlikely.htmlfn.unreachable.htmlfn.volatile_copy_memory.htmlfn.volatile_copy_nonoverlapping_memory.htmlfn.volatile_load.htmlfn.volatile_set_memory.htmlfn.volatile_store.htmlfn.wrapping_add.htmlfn.wrapping_mul.htmlfn.wrapping_sub.htmlfn.write_bytes.htmlforget.v.htmlfrem_fast.v.htmlfsub_fast.v.htmlindex.htmlinit.v.htmllikely.v.htmllog10f32.v.htmllog10f64.v.htmllog2f32.v.htmllog2f64.v.htmllogf32.v.htmllogf64.v.htmlmaxnumf32.v.htmlmaxnumf64.v.htmlmin_align_of.v.htmlmin_align_of_val.v.htmlminnumf32.v.htmlminnumf64.v.htmlmiri_start_panic.v.htmlmove_val_init.v.htmlmul_with_overflow.v.htmlnearbyintf32.v.htmlnearbyintf64.v.htmlneeds_drop.v.htmlnontemporal_store.v.htmloffset.v.htmlpanic_if_uninhabited.v.htmlpowf32.v.htmlpowf64.v.htmlpowif32.v.htmlpowif64.v.htmlpref_align_of.v.htmlprefetch_read_data.v.htmlprefetch_read_instruction.v.htmlprefetch_write_data.v.htmlprefetch_write_instruction.v.htmlptr_offset_from.v.htmlrintf32.v.htmlrintf64.v.htmlrotate_left.v.htmlrotate_right.v.htmlroundf32.v.htmlroundf64.v.htmlrustc_peek.v.htmlsaturating_add.v.htmlsaturating_sub.v.htmlsidebar-items.jssinf32.v.htmlsinf64.v.htmlsize_of.v.htmlsize_of_val.v.htmlsqrtf32.v.htmlsqrtf64.v.htmlsub_with_overflow.v.htmltransmute.v.htmltruncf32.v.htmltruncf64.v.htmltry.v.htmltype_id.v.htmltype_name.v.htmlunaligned_volatile_load.v.htmlunaligned_volatile_store.v.htmlunchecked_add.v.htmlunchecked_div.v.htmlunchecked_mul.v.htmlunchecked_rem.v.htmlunchecked_shl.v.htmlunchecked_shr.v.htmlunchecked_sub.v.htmluninit.v.htmlunlikely.v.htmlunreachable.v.htmlvolatile_copy_memory.v.htmlvolatile_copy_nonoverlapping_memory.v.htmlvolatile_load.v.htmlvolatile_set_memory.v.htmlvolatile_store.v.htmlwrapping_add.v.htmlwrapping_mul.v.htmlwrapping_sub.v.htmlwrite_bytes.v.htmlioBufRead.t.htmlBufReader.t.htmlBufWriter.t.htmlBytes.t.htmlChain.t.htmlCursor.t.htmlEmpty.t.htmlError.t.htmlErrorKind.t.htmlInitializer.t.htmlIntoInnerError.t.htmlIoSlice.t.htmlIoSliceMut.t.htmlLineWriter.t.htmlLines.t.htmlRead.t.htmlRepeat.t.htmlResult.t.htmlSeek.t.htmlSeekFrom.t.htmlSink.t.htmlSplit.t.htmlStderr.t.htmlStderrLock.t.htmlStdin.t.htmlStdinLock.t.htmlStdout.t.htmlStdoutLock.t.htmlTake.t.htmlWrite.t.htmlbufferedBufReader.t.htmlBufWriter.t.htmlIntoInnerError.t.htmlLineWriter.t.htmlstruct.BufReader.htmlstruct.BufWriter.htmlstruct.IntoInnerError.htmlstruct.LineWriter.htmlcopy.v.htmlcursorCursor.t.htmlstruct.Cursor.htmlempty.v.htmlenum.ErrorKind.htmlenum.SeekFrom.htmlerrorError.t.htmlErrorKind.t.htmlResult.t.htmlenum.ErrorKind.htmlstruct.Error.htmltype.Result.htmlfn.copy.htmlfn.empty.htmlfn.repeat.htmlfn.sink.htmlfn.stderr.htmlfn.stdin.htmlfn.stdout.htmlindex.htmlpreludeindex.htmlsidebar-items.jsrepeat.v.htmlsidebar-items.jssink.v.htmlstderr.v.htmlstdin.v.htmlstdioStderr.t.htmlStderrLock.t.htmlStdin.t.htmlStdinLock.t.htmlStdout.t.htmlStdoutLock.t.htmlfn.stderr.htmlfn.stdin.htmlfn.stdout.htmlstderr.v.htmlstdin.v.htmlstdout.v.htmlstruct.Stderr.htmlstruct.StderrLock.htmlstruct.Stdin.htmlstruct.StdinLock.htmlstruct.Stdout.htmlstruct.StdoutLock.htmlstdout.v.htmlstruct.BufReader.htmlstruct.BufWriter.htmlstruct.Bytes.htmlstruct.Chain.htmlstruct.Cursor.htmlstruct.Empty.htmlstruct.Error.htmlstruct.Initializer.htmlstruct.IntoInnerError.htmlstruct.IoSlice.htmlstruct.IoSliceMut.htmlstruct.LineWriter.htmlstruct.Lines.htmlstruct.Repeat.htmlstruct.Sink.htmlstruct.Split.htmlstruct.Stderr.htmlstruct.StderrLock.htmlstruct.Stdin.htmlstruct.StdinLock.htmlstruct.Stdout.htmlstruct.StdoutLock.htmlstruct.Take.htmltrait.BufRead.htmltrait.Read.htmltrait.Seek.htmltrait.Write.htmltype.Result.htmlutilEmpty.t.htmlRepeat.t.htmlSink.t.htmlcopy.v.htmlempty.v.htmlfn.copy.htmlfn.empty.htmlfn.repeat.htmlfn.sink.htmlrepeat.v.htmlsink.v.htmlstruct.Empty.htmlstruct.Repeat.htmlstruct.Sink.htmlis_aarch64_feature_detected.m.htmlis_arm_feature_detected.m.htmlis_mips64_feature_detected.m.htmlis_mips_feature_detected.m.htmlis_powerpc64_feature_detected.m.htmlis_powerpc_feature_detected.m.htmlis_x86_feature_detected.m.htmlisizeisize.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsiterChain.t.htmlCloned.t.htmlCopied.t.htmlCycle.t.htmlDoubleEndedIterator.t.htmlEmpty.t.htmlEnumerate.t.htmlExactSizeIterator.t.htmlExtend.t.htmlFilter.t.htmlFilterMap.t.htmlFlatMap.t.htmlFlatten.t.htmlFromFn.t.htmlFromIterator.t.htmlFuse.t.htmlFusedIterator.t.htmlInspect.t.htmlIntoIterator.t.htmlIterator.t.htmlMap.t.htmlMapWhile.t.htmlOnce.t.htmlOnceWith.t.htmlPeekable.t.htmlProduct.t.htmlRepeat.t.htmlRepeatWith.t.htmlRev.t.htmlScan.t.htmlSkip.t.htmlSkipWhile.t.htmlStep.t.htmlStepBy.t.htmlSuccessors.t.htmlSum.t.htmlTake.t.htmlTakeWhile.t.htmlTrustedLen.t.htmlZip.t.htmlempty.v.htmlfn.empty.htmlfn.from_fn.htmlfn.once.htmlfn.once_with.htmlfn.repeat.htmlfn.repeat_with.htmlfn.successors.htmlfrom_fn.v.htmlindex.htmlonce.v.htmlonce_with.v.htmlrepeat.v.htmlrepeat_with.v.htmlsidebar-items.jsstruct.Chain.htmlstruct.Cloned.htmlstruct.Copied.htmlstruct.Cycle.htmlstruct.Empty.htmlstruct.Enumerate.htmlstruct.Filter.htmlstruct.FilterMap.htmlstruct.FlatMap.htmlstruct.Flatten.htmlstruct.FromFn.htmlstruct.Fuse.htmlstruct.Inspect.htmlstruct.Map.htmlstruct.MapWhile.htmlstruct.Once.htmlstruct.OnceWith.htmlstruct.Peekable.htmlstruct.Repeat.htmlstruct.RepeatWith.htmlstruct.Rev.htmlstruct.Scan.htmlstruct.Skip.htmlstruct.SkipWhile.htmlstruct.StepBy.htmlstruct.Successors.htmlstruct.Take.htmlstruct.TakeWhile.htmlstruct.Zip.htmlsuccessors.v.htmltrait.DoubleEndedIterator.htmltrait.ExactSizeIterator.htmltrait.Extend.htmltrait.FromIterator.htmltrait.FusedIterator.htmltrait.IntoIterator.htmltrait.Iterator.htmltrait.Product.htmltrait.Step.htmltrait.Sum.htmltrait.TrustedLen.htmlkeyword.Self.htmlkeyword.as.htmlkeyword.async.htmlkeyword.await.htmlkeyword.break.htmlkeyword.const.htmlkeyword.continue.htmlkeyword.crate.htmlkeyword.dyn.htmlkeyword.else.htmlkeyword.enum.htmlkeyword.extern.htmlkeyword.false.htmlkeyword.fn.htmlkeyword.for.htmlkeyword.if.htmlkeyword.impl.htmlkeyword.in.htmlkeyword.let.htmlkeyword.loop.htmlkeyword.match.htmlkeyword.mod.htmlkeyword.move.htmlkeyword.mut.htmlkeyword.pub.htmlkeyword.ref.htmlkeyword.return.htmlkeyword.self.htmlkeyword.static.htmlkeyword.struct.htmlkeyword.super.htmlkeyword.trait.htmlkeyword.true.htmlkeyword.type.htmlkeyword.union.htmlkeyword.unsafe.htmlkeyword.use.htmlkeyword.where.htmlkeyword.while.htmllet.k.htmlline.m.htmllog_syntax.m.htmlloop.k.htmlmacro.asm!.htmlmacro.asm.htmlmacro.assert!.htmlmacro.assert.htmlmacro.assert_eq!.htmlmacro.assert_eq.htmlmacro.assert_ne!.htmlmacro.assert_ne.htmlmacro.cfg!.htmlmacro.cfg.htmlmacro.column!.htmlmacro.column.htmlmacro.compile_error!.htmlmacro.compile_error.htmlmacro.concat!.htmlmacro.concat.htmlmacro.concat_idents!.htmlmacro.concat_idents.htmlmacro.dbg!.htmlmacro.dbg.htmlmacro.debug_assert!.htmlmacro.debug_assert.htmlmacro.debug_assert_eq!.htmlmacro.debug_assert_eq.htmlmacro.debug_assert_ne!.htmlmacro.debug_assert_ne.htmlmacro.env!.htmlmacro.env.htmlmacro.eprint!.htmlmacro.eprint.htmlmacro.eprintln!.htmlmacro.eprintln.htmlmacro.file!.htmlmacro.file.htmlmacro.format!.htmlmacro.format.htmlmacro.format_args!.htmlmacro.format_args.htmlmacro.format_args_nl!.htmlmacro.format_args_nl.htmlmacro.global_asm!.htmlmacro.global_asm.htmlmacro.include!.htmlmacro.include.htmlmacro.include_bytes!.htmlmacro.include_bytes.htmlmacro.include_str!.htmlmacro.include_str.htmlmacro.is_aarch64_feature_detected!.htmlmacro.is_aarch64_feature_detected.htmlmacro.is_arm_feature_detected!.htmlmacro.is_arm_feature_detected.htmlmacro.is_mips64_feature_detected!.htmlmacro.is_mips64_feature_detected.htmlmacro.is_mips_feature_detected!.htmlmacro.is_mips_feature_detected.htmlmacro.is_powerpc64_feature_detected!.htmlmacro.is_powerpc64_feature_detected.htmlmacro.is_powerpc_feature_detected!.htmlmacro.is_powerpc_feature_detected.htmlmacro.is_x86_feature_detected!.htmlmacro.is_x86_feature_detected.htmlmacro.line!.htmlmacro.line.htmlmacro.log_syntax!.htmlmacro.log_syntax.htmlmacro.matches!.htmlmacro.matches.htmlmacro.module_path!.htmlmacro.module_path.htmlmacro.option_env!.htmlmacro.option_env.htmlmacro.panic!.htmlmacro.panic.htmlmacro.print!.htmlmacro.print.htmlmacro.println!.htmlmacro.println.htmlmacro.stringify!.htmlmacro.stringify.htmlmacro.thread_local!.htmlmacro.thread_local.htmlmacro.todo!.htmlmacro.todo.htmlmacro.trace_macros!.htmlmacro.trace_macros.htmlmacro.try!.htmlmacro.try.htmlmacro.unimplemented!.htmlmacro.unimplemented.htmlmacro.unreachable!.htmlmacro.unreachable.htmlmacro.vec!.htmlmacro.vec.htmlmacro.write!.htmlmacro.write.htmlmacro.writeln!.htmlmacro.writeln.htmlmarkerCopy.m.htmlCopy.t.htmlPhantomData.t.htmlPhantomPinned.t.htmlSend.t.htmlSized.t.htmlStructuralEq.t.htmlStructuralPartialEq.t.htmlSync.t.htmlUnpin.t.htmlUnsize.t.htmlindex.htmlmacro.Copy!.htmlmacro.Copy.htmlsidebar-items.jsstruct.PhantomData.htmlstruct.PhantomPinned.htmltrait.Copy.htmltrait.Send.htmltrait.Sized.htmltrait.StructuralEq.htmltrait.StructuralPartialEq.htmltrait.Sync.htmltrait.Unpin.htmltrait.Unsize.htmlmatch.k.htmlmatches.m.htmlmemDiscriminant.t.htmlManuallyDrop.t.htmlMaybeUninit.t.htmlalign_of.v.htmlalign_of_val.v.htmldiscriminant.v.htmldrop.v.htmlfn.align_of.htmlfn.align_of_val.htmlfn.discriminant.htmlfn.drop.htmlfn.forget.htmlfn.forget_unsized.htmlfn.min_align_of.htmlfn.min_align_of_val.htmlfn.needs_drop.htmlfn.replace.htmlfn.size_of.htmlfn.size_of_val.htmlfn.swap.htmlfn.take.htmlfn.transmute.htmlfn.transmute_copy.htmlfn.uninitialized.htmlfn.zeroed.htmlforget.v.htmlforget_unsized.v.htmlindex.htmlmin_align_of.v.htmlmin_align_of_val.v.htmlneeds_drop.v.htmlreplace.v.htmlsidebar-items.jssize_of.v.htmlsize_of_val.v.htmlstruct.Discriminant.htmlstruct.ManuallyDrop.htmlswap.v.htmltake.v.htmltransmute.v.htmltransmute_copy.v.htmluninitialized.v.htmlunion.MaybeUninit.htmlzeroed.v.htmlmod.k.htmlmodule_path.m.htmlmove.k.htmlmut.k.htmlnetAddrParseError.t.htmlIncoming.t.htmlIpAddr.t.htmlIpv4Addr.t.htmlIpv6Addr.t.htmlIpv6MulticastScope.t.htmlShutdown.t.htmlSocketAddr.t.htmlSocketAddrV4.t.htmlSocketAddrV6.t.htmlTcpListener.t.htmlTcpStream.t.htmlToSocketAddrs.t.htmlUdpSocket.t.htmladdrSocketAddr.t.htmlSocketAddrV4.t.htmlSocketAddrV6.t.htmlToSocketAddrs.t.htmlenum.SocketAddr.htmlstruct.SocketAddrV4.htmlstruct.SocketAddrV6.htmltrait.ToSocketAddrs.htmlenum.IpAddr.htmlenum.Ipv6MulticastScope.htmlenum.Shutdown.htmlenum.SocketAddr.htmlindex.htmlipIpAddr.t.htmlIpv4Addr.t.htmlIpv6Addr.t.htmlIpv6MulticastScope.t.htmlenum.IpAddr.htmlenum.Ipv6MulticastScope.htmlstruct.Ipv4Addr.htmlstruct.Ipv6Addr.htmlparserAddrParseError.t.htmlstruct.AddrParseError.htmlsidebar-items.jsstruct.AddrParseError.htmlstruct.Incoming.htmlstruct.Ipv4Addr.htmlstruct.Ipv6Addr.htmlstruct.SocketAddrV4.htmlstruct.SocketAddrV6.htmlstruct.TcpListener.htmlstruct.TcpStream.htmlstruct.UdpSocket.htmltcpIncoming.t.htmlTcpListener.t.htmlTcpStream.t.htmlstruct.Incoming.htmlstruct.TcpListener.htmlstruct.TcpStream.htmltrait.ToSocketAddrs.htmludpUdpSocket.t.htmlstruct.UdpSocket.htmlnever.t.htmlnumFpCategory.t.htmlIntErrorKind.t.htmlNonZeroI128.t.htmlNonZeroI16.t.htmlNonZeroI32.t.htmlNonZeroI64.t.htmlNonZeroI8.t.htmlNonZeroIsize.t.htmlNonZeroU128.t.htmlNonZeroU16.t.htmlNonZeroU32.t.htmlNonZeroU64.t.htmlNonZeroU8.t.htmlNonZeroUsize.t.htmlParseFloatError.t.htmlParseIntError.t.htmlTryFromIntError.t.htmlWrapping.t.htmlenum.FpCategory.htmlenum.IntErrorKind.htmlindex.htmlsidebar-items.jsstruct.NonZeroI128.htmlstruct.NonZeroI16.htmlstruct.NonZeroI32.htmlstruct.NonZeroI64.htmlstruct.NonZeroI8.htmlstruct.NonZeroIsize.htmlstruct.NonZeroU128.htmlstruct.NonZeroU16.htmlstruct.NonZeroU32.htmlstruct.NonZeroU64.htmlstruct.NonZeroU8.htmlstruct.NonZeroUsize.htmlstruct.ParseFloatError.htmlstruct.ParseIntError.htmlstruct.TryFromIntError.htmlstruct.Wrapping.htmlopsAdd.t.htmlAddAssign.t.htmlBitAnd.t.htmlBitAndAssign.t.htmlBitOr.t.htmlBitOrAssign.t.htmlBitXor.t.htmlBitXorAssign.t.htmlBound.t.htmlCoerceUnsized.t.htmlDeref.t.htmlDerefMut.t.htmlDispatchFromDyn.t.htmlDiv.t.htmlDivAssign.t.htmlDrop.t.htmlFn.t.htmlFnMut.t.htmlFnOnce.t.htmlGenerator.t.htmlGeneratorState.t.htmlIndex.t.htmlIndexMut.t.htmlMul.t.htmlMulAssign.t.htmlNeg.t.htmlNot.t.htmlRange.t.htmlRangeBounds.t.htmlRangeFrom.t.htmlRangeFull.t.htmlRangeInclusive.t.htmlRangeTo.t.htmlRangeToInclusive.t.htmlRem.t.htmlRemAssign.t.htmlShl.t.htmlShlAssign.t.htmlShr.t.htmlShrAssign.t.htmlSub.t.htmlSubAssign.t.htmlTry.t.htmlenum.Bound.htmlenum.GeneratorState.htmlindex.htmlsidebar-items.jsstruct.Range.htmlstruct.RangeFrom.htmlstruct.RangeFull.htmlstruct.RangeInclusive.htmlstruct.RangeTo.htmlstruct.RangeToInclusive.htmltrait.Add.htmltrait.AddAssign.htmltrait.BitAnd.htmltrait.BitAndAssign.htmltrait.BitOr.htmltrait.BitOrAssign.htmltrait.BitXor.htmltrait.BitXorAssign.htmltrait.CoerceUnsized.htmltrait.Deref.htmltrait.DerefMut.htmltrait.DispatchFromDyn.htmltrait.Div.htmltrait.DivAssign.htmltrait.Drop.htmltrait.Fn.htmltrait.FnMut.htmltrait.FnOnce.htmltrait.Generator.htmltrait.Index.htmltrait.IndexMut.htmltrait.Mul.htmltrait.MulAssign.htmltrait.Neg.htmltrait.Not.htmltrait.RangeBounds.htmltrait.Rem.htmltrait.RemAssign.htmltrait.Shl.htmltrait.ShlAssign.htmltrait.Shr.htmltrait.ShrAssign.htmltrait.Sub.htmltrait.SubAssign.htmltrait.Try.htmloptionIntoIter.t.htmlIter.t.htmlIterMut.t.htmlNoneError.t.htmlOption.t.htmlenum.Option.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.NoneError.htmloption_env.m.htmlosindex.htmllinuxfsMetadataExt.t.htmlindex.htmlsidebar-items.jstrait.MetadataExt.htmlindex.htmlrawarchblkcnt_t.t.htmlblksize_t.t.htmlfn.stat.htmlino_t.t.htmlnlink_t.t.htmloff_t.t.htmlstat.t.htmlstat.v.htmlstruct.stat.htmltime_t.t.htmltype.blkcnt_t.htmltype.blksize_t.htmltype.ino_t.htmltype.nlink_t.htmltype.off_t.htmltype.time_t.htmlblkcnt_t.t.htmlblksize_t.t.htmldev_t.t.htmlfn.stat.htmlindex.htmlino_t.t.htmlmode_t.t.htmlnlink_t.t.htmloff_t.t.htmlpthread_t.t.htmlsidebar-items.jsstat.t.htmlstat.v.htmlstruct.stat.htmltime_t.t.htmltype.blkcnt_t.htmltype.blksize_t.htmltype.dev_t.htmltype.ino_t.htmltype.mode_t.htmltype.nlink_t.htmltype.off_t.htmltype.pthread_t.htmltype.time_t.htmlsidebar-items.jsrawc_char.t.htmlc_double.t.htmlc_float.t.htmlc_int.t.htmlc_long.t.htmlc_longlong.t.htmlc_schar.t.htmlc_short.t.htmlc_uchar.t.htmlc_uint.t.htmlc_ulong.t.htmlc_ulonglong.t.htmlc_ushort.t.htmlindex.htmlsidebar-items.jstype.c_char.htmltype.c_double.htmltype.c_float.htmltype.c_int.htmltype.c_long.htmltype.c_longlong.htmltype.c_schar.htmltype.c_short.htmltype.c_uchar.htmltype.c_uint.htmltype.c_ulong.htmltype.c_ulonglong.htmltype.c_ushort.htmlsidebar-items.jsunixffiOsStrExt.t.htmlOsStringExt.t.htmlindex.htmlsidebar-items.jstrait.OsStrExt.htmltrait.OsStringExt.htmlfsDirBuilderExt.t.htmlDirEntryExt.t.htmlFileExt.t.htmlFileTypeExt.t.htmlMetadataExt.t.htmlOpenOptionsExt.t.htmlPermissionsExt.t.htmlfn.symlink.htmlindex.htmlsidebar-items.jssymlink.v.htmltrait.DirBuilderExt.htmltrait.DirEntryExt.htmltrait.FileExt.htmltrait.FileTypeExt.htmltrait.MetadataExt.htmltrait.OpenOptionsExt.htmltrait.PermissionsExt.htmlindex.htmlioAsRawFd.t.htmlFromRawFd.t.htmlIntoRawFd.t.htmlRawFd.t.htmlindex.htmlsidebar-items.jstrait.AsRawFd.htmltrait.FromRawFd.htmltrait.IntoRawFd.htmltype.RawFd.htmlnetIncoming.t.htmlSocketAddr.t.htmlUnixDatagram.t.htmlUnixListener.t.htmlUnixStream.t.htmlindex.htmlsidebar-items.jsstruct.Incoming.htmlstruct.SocketAddr.htmlstruct.UnixDatagram.htmlstruct.UnixListener.htmlstruct.UnixStream.htmlpreludeindex.htmlsidebar-items.jsprocessCommandExt.t.htmlExitStatusExt.t.htmlfn.parent_id.htmlindex.htmlparent_id.v.htmlsidebar-items.jstrait.CommandExt.htmltrait.ExitStatusExt.htmlrawblkcnt_t.t.htmlblksize_t.t.htmldev_t.t.htmlgid_t.t.htmlindex.htmlino_t.t.htmlmode_t.t.htmlnlink_t.t.htmloff_t.t.htmlpid_t.t.htmlpthread_t.t.htmlsidebar-items.jstime_t.t.htmltype.blkcnt_t.htmltype.blksize_t.htmltype.dev_t.htmltype.gid_t.htmltype.ino_t.htmltype.mode_t.htmltype.nlink_t.htmltype.off_t.htmltype.pid_t.htmltype.pthread_t.htmltype.time_t.htmltype.uid_t.htmluid_t.t.htmlsidebar-items.jsthreadJoinHandleExt.t.htmlRawPthread.t.htmlindex.htmlsidebar-items.jstrait.JoinHandleExt.htmltype.RawPthread.htmlwindowsffiEncodeWide.t.htmlOsStrExt.t.htmlOsStringExt.t.htmlindex.htmlsidebar-items.jsstruct.EncodeWide.htmltrait.OsStrExt.htmltrait.OsStringExt.htmlfsFileExt.t.htmlFileTypeExt.t.htmlMetadataExt.t.htmlOpenOptionsExt.t.htmlfn.symlink_dir.htmlfn.symlink_file.htmlindex.htmlsidebar-items.jssymlink_dir.v.htmlsymlink_file.v.htmltrait.FileExt.htmltrait.FileTypeExt.htmltrait.MetadataExt.htmltrait.OpenOptionsExt.htmlindex.htmlioAsRawHandle.t.htmlAsRawSocket.t.htmlFromRawHandle.t.htmlFromRawSocket.t.htmlIntoRawHandle.t.htmlIntoRawSocket.t.htmlRawHandle.t.htmlRawSocket.t.htmlindex.htmlsidebar-items.jstrait.AsRawHandle.htmltrait.AsRawSocket.htmltrait.FromRawHandle.htmltrait.FromRawSocket.htmltrait.IntoRawHandle.htmltrait.IntoRawSocket.htmltype.RawHandle.htmltype.RawSocket.htmlpreludeindex.htmlsidebar-items.jsprocessCommandExt.t.htmlExitStatusExt.t.htmlindex.htmlsidebar-items.jstrait.CommandExt.htmltrait.ExitStatusExt.htmlrawHANDLE.t.htmlSOCKET.t.htmlindex.htmlsidebar-items.jstype.HANDLE.htmltype.SOCKET.htmlsidebar-items.jsthreadindex.htmlsidebar-items.jspanicpanic.m.htmlAssertUnwindSafe.t.htmlLocation.t.htmlPanicInfo.t.htmlRefUnwindSafe.t.htmlUnwindSafe.t.htmlcatch_unwind.v.htmlfn.catch_unwind.htmlfn.resume_unwind.htmlfn.set_hook.htmlfn.take_hook.htmlindex.htmlresume_unwind.v.htmlset_hook.v.htmlsidebar-items.jsstruct.AssertUnwindSafe.htmlstruct.Location.htmlstruct.PanicInfo.htmltake_hook.v.htmltrait.RefUnwindSafe.htmltrait.UnwindSafe.htmlpanickingfn.set_hook.htmlfn.take_hook.htmlset_hook.v.htmltake_hook.v.htmlpathAncestors.t.htmlComponent.t.htmlComponents.t.htmlDisplay.t.htmlIter.t.htmlMAIN_SEPARATOR.v.htmlPath.t.htmlPathBuf.t.htmlPrefix.t.htmlPrefixComponent.t.htmlStripPrefixError.t.htmlconstant.MAIN_SEPARATOR.htmlenum.Component.htmlenum.Prefix.htmlfn.is_separator.htmlindex.htmlis_separator.v.htmlsidebar-items.jsstruct.Ancestors.htmlstruct.Components.htmlstruct.Display.htmlstruct.Iter.htmlstruct.Path.htmlstruct.PathBuf.htmlstruct.PrefixComponent.htmlstruct.StripPrefixError.htmlpinPin.t.htmlindex.htmlsidebar-items.jsstruct.Pin.htmlpointer.t.htmlpreludeindex.htmlsidebar-items.jsv1index.htmlsidebar-items.jsprim_arrayindex.htmlprim_boolindex.htmlprim_charindex.htmlprim_f32index.htmlprim_f64index.htmlprim_fnindex.htmlprim_i128index.htmlprim_i16index.htmlprim_i32index.htmlprim_i64index.htmlprim_i8index.htmlprim_isizeindex.htmlprim_neverindex.htmlprim_pointerindex.htmlprim_refindex.htmlprim_sliceindex.htmlprim_strindex.htmlprim_tupleindex.htmlprim_u128index.htmlprim_u16index.htmlprim_u32index.htmlprim_u64index.htmlprim_u8index.htmlprim_unitindex.htmlprim_usizeindex.htmlprimitiveprimitive.array.htmlprimitive.bool.htmlprimitive.char.htmlprimitive.f32.htmlprimitive.f64.htmlprimitive.fn.htmlprimitive.i128.htmlprimitive.i16.htmlprimitive.i32.htmlprimitive.i64.htmlprimitive.i8.htmlprimitive.isize.htmlprimitive.never.htmlprimitive.pointer.htmlprimitive.reference.htmlprimitive.slice.htmlprimitive.str.htmlprimitive.tuple.htmlprimitive.u128.htmlprimitive.u16.htmlprimitive.u32.htmlprimitive.u64.htmlprimitive.u8.htmlprimitive.unit.htmlprimitive.usize.htmlindex.htmlsidebar-items.jsprint.m.htmlprintln.m.htmlprocessChild.t.htmlChildStderr.t.htmlChildStdin.t.htmlChildStdout.t.htmlCommand.t.htmlExitCode.t.htmlExitStatus.t.htmlOutput.t.htmlStdio.t.htmlTermination.t.htmlabort.v.htmlexit.v.htmlfn.abort.htmlfn.exit.htmlfn.id.htmlid.v.htmlindex.htmlsidebar-items.jsstruct.Child.htmlstruct.ChildStderr.htmlstruct.ChildStdin.htmlstruct.ChildStdout.htmlstruct.Command.htmlstruct.ExitCode.htmlstruct.ExitStatus.htmlstruct.Output.htmlstruct.Stdio.htmltrait.Termination.htmlptrNonNull.t.htmlcopy.v.htmlcopy_nonoverlapping.v.htmldrop_in_place.v.htmleq.v.htmlfn.copy.htmlfn.copy_nonoverlapping.htmlfn.drop_in_place.htmlfn.eq.htmlfn.hash.htmlfn.null.htmlfn.null_mut.htmlfn.read.htmlfn.read_unaligned.htmlfn.read_volatile.htmlfn.replace.htmlfn.slice_from_raw_parts.htmlfn.slice_from_raw_parts_mut.htmlfn.swap.htmlfn.swap_nonoverlapping.htmlfn.write.htmlfn.write_bytes.htmlfn.write_unaligned.htmlfn.write_volatile.htmlhash.v.htmlindex.htmlnull.v.htmlnull_mut.v.htmlread.v.htmlread_unaligned.v.htmlread_volatile.v.htmlreplace.v.htmlsidebar-items.jsslice_from_raw_parts.v.htmlslice_from_raw_parts_mut.v.htmlstruct.NonNull.htmlswap.v.htmlswap_nonoverlapping.v.htmlwrite.v.htmlwrite_bytes.v.htmlwrite_unaligned.v.htmlwrite_volatile.v.htmlpub.k.htmlrawTraitObject.t.htmlindex.htmlsidebar-items.jsstruct.TraitObject.htmlrcRc.t.htmlWeak.t.htmlindex.htmlsidebar-items.jsstruct.Rc.htmlstruct.Weak.htmlref.k.htmlreference.t.htmlresultIntoIter.t.htmlIter.t.htmlIterMut.t.htmlResult.t.htmlenum.Result.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.Iter.htmlstruct.IterMut.htmlreturn.k.htmlself.k.htmlsidebar-items.jssliceslice.t.htmlChunks.t.htmlChunksExact.t.htmlChunksExactMut.t.htmlChunksMut.t.htmlConcat.t.htmlIter.t.htmlIterMut.t.htmlJoin.t.htmlRChunks.t.htmlRChunksExact.t.htmlRChunksExactMut.t.htmlRChunksMut.t.htmlRSplit.t.htmlRSplitMut.t.htmlRSplitN.t.htmlRSplitNMut.t.htmlSliceIndex.t.htmlSplit.t.htmlSplitMut.t.htmlSplitN.t.htmlSplitNMut.t.htmlWindows.t.htmlfn.from_mut.htmlfn.from_raw_parts.htmlfn.from_raw_parts_mut.htmlfn.from_ref.htmlfrom_mut.v.htmlfrom_raw_parts.v.htmlfrom_raw_parts_mut.v.htmlfrom_ref.v.htmlindex.htmlsidebar-items.jsstruct.Chunks.htmlstruct.ChunksExact.htmlstruct.ChunksExactMut.htmlstruct.ChunksMut.htmlstruct.Iter.htmlstruct.IterMut.htmlstruct.RChunks.htmlstruct.RChunksExact.htmlstruct.RChunksExactMut.htmlstruct.RChunksMut.htmlstruct.RSplit.htmlstruct.RSplitMut.htmlstruct.RSplitN.htmlstruct.RSplitNMut.htmlstruct.Split.htmlstruct.SplitMut.htmlstruct.SplitN.htmlstruct.SplitNMut.htmlstruct.Windows.htmltrait.Concat.htmltrait.Join.htmltrait.SliceIndex.htmlstatic.k.htmlstrstr.t.htmlBytes.t.htmlCharIndices.t.htmlChars.t.htmlEncodeUtf16.t.htmlEscapeDebug.t.htmlEscapeDefault.t.htmlEscapeUnicode.t.htmlFromStr.t.htmlLines.t.htmlLinesAny.t.htmlMatchIndices.t.htmlMatches.t.htmlParseBoolError.t.htmlRMatchIndices.t.htmlRMatches.t.htmlRSplit.t.htmlRSplitN.t.htmlRSplitTerminator.t.htmlSplit.t.htmlSplitAsciiWhitespace.t.htmlSplitN.t.htmlSplitTerminator.t.htmlSplitWhitespace.t.htmlUtf8Error.t.htmlfn.from_boxed_utf8_unchecked.htmlfn.from_utf8.htmlfn.from_utf8_mut.htmlfn.from_utf8_unchecked.htmlfn.from_utf8_unchecked_mut.htmlfrom_boxed_utf8_unchecked.v.htmlfrom_utf8.v.htmlfrom_utf8_mut.v.htmlfrom_utf8_unchecked.v.htmlfrom_utf8_unchecked_mut.v.htmlindex.htmlpatternCharPredicateSearcher.t.htmlCharSearcher.t.htmlCharSliceSearcher.t.htmlDoubleEndedSearcher.t.htmlPattern.t.htmlReverseSearcher.t.htmlSearchStep.t.htmlSearcher.t.htmlStrSearcher.t.htmlenum.SearchStep.htmlindex.htmlsidebar-items.jsstruct.CharPredicateSearcher.htmlstruct.CharSearcher.htmlstruct.CharSliceSearcher.htmlstruct.StrSearcher.htmltrait.DoubleEndedSearcher.htmltrait.Pattern.htmltrait.ReverseSearcher.htmltrait.Searcher.htmlsidebar-items.jsstruct.Bytes.htmlstruct.CharIndices.htmlstruct.Chars.htmlstruct.EncodeUtf16.htmlstruct.EscapeDebug.htmlstruct.EscapeDefault.htmlstruct.EscapeUnicode.htmlstruct.Lines.htmlstruct.LinesAny.htmlstruct.MatchIndices.htmlstruct.Matches.htmlstruct.ParseBoolError.htmlstruct.RMatchIndices.htmlstruct.RMatches.htmlstruct.RSplit.htmlstruct.RSplitN.htmlstruct.RSplitTerminator.htmlstruct.Split.htmlstruct.SplitAsciiWhitespace.htmlstruct.SplitN.htmlstruct.SplitTerminator.htmlstruct.SplitWhitespace.htmlstruct.Utf8Error.htmltrait.FromStr.htmlstringDrain.t.htmlFromUtf16Error.t.htmlFromUtf8Error.t.htmlParseError.t.htmlString.t.htmlToString.t.htmlindex.htmlsidebar-items.jsstruct.Drain.htmlstruct.FromUtf16Error.htmlstruct.FromUtf8Error.htmlstruct.String.htmltrait.ToString.htmltype.ParseError.htmlstringify.m.htmlstruct.k.htmlsuper.k.htmlsyncArc.t.htmlBarrier.t.htmlBarrierWaitResult.t.htmlCondvar.t.htmlLockResult.t.htmlMutex.t.htmlMutexGuard.t.htmlONCE_INIT.v.htmlOnce.t.htmlOnceState.t.htmlPoisonError.t.htmlRwLock.t.htmlRwLockReadGuard.t.htmlRwLockWriteGuard.t.htmlTryLockError.t.htmlTryLockResult.t.htmlWaitTimeoutResult.t.htmlWeak.t.htmlatomicATOMIC_BOOL_INIT.v.htmlATOMIC_I16_INIT.v.htmlATOMIC_I32_INIT.v.htmlATOMIC_I64_INIT.v.htmlATOMIC_I8_INIT.v.htmlATOMIC_ISIZE_INIT.v.htmlATOMIC_U16_INIT.v.htmlATOMIC_U32_INIT.v.htmlATOMIC_U64_INIT.v.htmlATOMIC_U8_INIT.v.htmlATOMIC_USIZE_INIT.v.htmlAtomicBool.t.htmlAtomicI16.t.htmlAtomicI32.t.htmlAtomicI64.t.htmlAtomicI8.t.htmlAtomicIsize.t.htmlAtomicPtr.t.htmlAtomicU16.t.htmlAtomicU32.t.htmlAtomicU64.t.htmlAtomicU8.t.htmlAtomicUsize.t.htmlOrdering.t.htmlcompiler_fence.v.htmlconstant.ATOMIC_BOOL_INIT.htmlconstant.ATOMIC_I16_INIT.htmlconstant.ATOMIC_I32_INIT.htmlconstant.ATOMIC_I64_INIT.htmlconstant.ATOMIC_I8_INIT.htmlconstant.ATOMIC_ISIZE_INIT.htmlconstant.ATOMIC_U16_INIT.htmlconstant.ATOMIC_U32_INIT.htmlconstant.ATOMIC_U64_INIT.htmlconstant.ATOMIC_U8_INIT.htmlconstant.ATOMIC_USIZE_INIT.htmlenum.Ordering.htmlfence.v.htmlfn.compiler_fence.htmlfn.fence.htmlfn.spin_loop_hint.htmlindex.htmlsidebar-items.jsspin_loop_hint.v.htmlstruct.AtomicBool.htmlstruct.AtomicI16.htmlstruct.AtomicI32.htmlstruct.AtomicI64.htmlstruct.AtomicI8.htmlstruct.AtomicIsize.htmlstruct.AtomicPtr.htmlstruct.AtomicU16.htmlstruct.AtomicU32.htmlstruct.AtomicU64.htmlstruct.AtomicU8.htmlstruct.AtomicUsize.htmlbarrierBarrier.t.htmlBarrierWaitResult.t.htmlstruct.Barrier.htmlstruct.BarrierWaitResult.htmlcondvarCondvar.t.htmlWaitTimeoutResult.t.htmlstruct.Condvar.htmlstruct.WaitTimeoutResult.htmlconstant.ONCE_INIT.htmlenum.TryLockError.htmlindex.htmlmpscIntoIter.t.htmlIter.t.htmlReceiver.t.htmlRecvError.t.htmlRecvTimeoutError.t.htmlSendError.t.htmlSender.t.htmlSyncSender.t.htmlTryIter.t.htmlTryRecvError.t.htmlTrySendError.t.htmlchannel.v.htmlenum.RecvTimeoutError.htmlenum.TryRecvError.htmlenum.TrySendError.htmlfn.channel.htmlfn.sync_channel.htmlindex.htmlsidebar-items.jsstruct.IntoIter.htmlstruct.Iter.htmlstruct.Receiver.htmlstruct.RecvError.htmlstruct.SendError.htmlstruct.Sender.htmlstruct.SyncSender.htmlstruct.TryIter.htmlsync_channel.v.htmlmutexMutex.t.htmlMutexGuard.t.htmlstruct.Mutex.htmlstruct.MutexGuard.htmlonceONCE_INIT.v.htmlOnce.t.htmlOnceState.t.htmlconstant.ONCE_INIT.htmlstruct.Once.htmlstruct.OnceState.htmlrwlockRwLock.t.htmlRwLockReadGuard.t.htmlRwLockWriteGuard.t.htmlstruct.RwLock.htmlstruct.RwLockReadGuard.htmlstruct.RwLockWriteGuard.htmlsidebar-items.jsstruct.Arc.htmlstruct.Barrier.htmlstruct.BarrierWaitResult.htmlstruct.Condvar.htmlstruct.Mutex.htmlstruct.MutexGuard.htmlstruct.Once.htmlstruct.OnceState.htmlstruct.PoisonError.htmlstruct.RwLock.htmlstruct.RwLockReadGuard.htmlstruct.RwLockWriteGuard.htmlstruct.WaitTimeoutResult.htmlstruct.Weak.htmltype.LockResult.htmltype.TryLockResult.htmlsysunixextffiindex.htmlfsDirBuilderExt.t.htmlDirEntryExt.t.htmlFileExt.t.htmlFileTypeExt.t.htmlMetadataExt.t.htmlOpenOptionsExt.t.htmlPermissionsExt.t.htmlfn.symlink.htmlindex.htmlsymlink.v.htmltrait.DirBuilderExt.htmltrait.DirEntryExt.htmltrait.FileExt.htmltrait.FileTypeExt.htmltrait.MetadataExt.htmltrait.OpenOptionsExt.htmltrait.PermissionsExt.htmlindex.htmlioAsRawFd.t.htmlFromRawFd.t.htmlIntoRawFd.t.htmlRawFd.t.htmlindex.htmltrait.AsRawFd.htmltrait.FromRawFd.htmltrait.IntoRawFd.htmltype.RawFd.htmlnetIncoming.t.htmlSocketAddr.t.htmlUnixDatagram.t.htmlUnixListener.t.htmlUnixStream.t.htmlindex.htmlstruct.Incoming.htmlstruct.SocketAddr.htmlstruct.UnixDatagram.htmlstruct.UnixListener.htmlstruct.UnixStream.htmlpreludeindex.htmlprocessCommandExt.t.htmlExitStatusExt.t.htmlfn.parent_id.htmlindex.htmlparent_id.v.htmltrait.CommandExt.htmltrait.ExitStatusExt.htmlrawblkcnt_t.t.htmlblksize_t.t.htmlgid_t.t.htmlindex.htmlino_t.t.htmlnlink_t.t.htmloff_t.t.htmlpid_t.t.htmltime_t.t.htmltype.blkcnt_t.htmltype.blksize_t.htmltype.gid_t.htmltype.ino_t.htmltype.nlink_t.htmltype.off_t.htmltype.pid_t.htmltype.time_t.htmltype.uid_t.htmluid_t.t.htmlthreadJoinHandleExt.t.htmlRawPthread.t.htmlindex.htmltrait.JoinHandleExt.htmltype.RawPthread.htmlwindows_extffiOsStrExt.t.htmlOsStringExt.t.htmlindex.htmltrait.OsStrExt.htmltrait.OsStringExt.htmlfsFileExt.t.htmlFileTypeExt.t.htmlMetadataExt.t.htmlOpenOptionsExt.t.htmlfn.symlink_dir.htmlfn.symlink_file.htmlindex.htmlsymlink_dir.v.htmlsymlink_file.v.htmltrait.FileExt.htmltrait.FileTypeExt.htmltrait.MetadataExt.htmltrait.OpenOptionsExt.htmlindex.htmlioAsRawHandle.t.htmlAsRawSocket.t.htmlFromRawHandle.t.htmlFromRawSocket.t.htmlIntoRawHandle.t.htmlIntoRawSocket.t.htmlRawHandle.t.htmlRawSocket.t.htmlindex.htmltrait.AsRawHandle.htmltrait.AsRawSocket.htmltrait.FromRawHandle.htmltrait.FromRawSocket.htmltrait.IntoRawHandle.htmltrait.IntoRawSocket.htmltype.RawHandle.htmltype.RawSocket.htmlpreludeindex.htmlprocessCommandExt.t.htmlExitStatusExt.t.htmlindex.htmltrait.CommandExt.htmltrait.ExitStatusExt.htmlrawHANDLE.t.htmlSOCKET.t.htmlindex.htmltype.HANDLE.htmltype.SOCKET.htmlthreadindex.htmlsys_commonos_str_bytesOsStrExt.t.htmlOsStringExt.t.htmltrait.OsStrExt.htmltrait.OsStringExt.htmlpoisonLockResult.t.htmlPoisonError.t.htmlTryLockError.t.htmlTryLockResult.t.htmlenum.TryLockError.htmlstruct.PoisonError.htmltype.LockResult.htmltype.TryLockResult.htmlwtf8EncodeWide.t.htmlstruct.EncodeWide.htmltaskContext.t.htmlPoll.t.htmlRawWaker.t.htmlRawWakerVTable.t.htmlWaker.t.htmlenum.Poll.htmlindex.htmlsidebar-items.jsstruct.Context.htmlstruct.RawWaker.htmlstruct.RawWakerVTable.htmlstruct.Waker.htmlthreadAccessError.t.htmlBuilder.t.htmlJoinHandle.t.htmlLocalKey.t.htmlResult.t.htmlThread.t.htmlThreadId.t.htmlcurrent.v.htmlfn.current.htmlfn.panicking.htmlfn.park.htmlfn.park_timeout.htmlfn.park_timeout_ms.htmlfn.sleep.htmlfn.sleep_ms.htmlfn.spawn.htmlfn.yield_now.htmlindex.htmllocalAccessError.t.htmlLocalKey.t.htmlstruct.AccessError.htmlstruct.LocalKey.htmlpanicking.v.htmlpark.v.htmlpark_timeout.v.htmlpark_timeout_ms.v.htmlsidebar-items.jssleep.v.htmlsleep_ms.v.htmlspawn.v.htmlstruct.AccessError.htmlstruct.Builder.htmlstruct.JoinHandle.htmlstruct.LocalKey.htmlstruct.Thread.htmlstruct.ThreadId.htmltype.Result.htmlyield_now.v.htmlthread_local.m.htmltimeDuration.t.htmlInstant.t.htmlSystemTime.t.htmlSystemTimeError.t.htmlUNIX_EPOCH.v.htmlconstant.UNIX_EPOCH.htmlindex.htmlsidebar-items.jsstruct.Duration.htmlstruct.Instant.htmlstruct.SystemTime.htmlstruct.SystemTimeError.htmltodo.m.htmltrace_macros.m.htmltrait.k.htmltrue.k.htmltry.m.htmltuple.t.htmltype.k.htmlu128u128.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu16u16.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu32u32.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu64u64.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsu8u8.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsunimplemented.m.htmlunion.k.htmlunit.t.htmlunreachable.m.htmlunsafe.k.htmluse.k.htmlusizeusize.t.htmlMAX.v.htmlMIN.v.htmlconstant.MAX.htmlconstant.MIN.htmlindex.htmlsidebar-items.jsvecvec.m.htmlDrain.t.htmlDrainFilter.t.htmlIntoIter.t.htmlSplice.t.htmlVec.t.htmlindex.htmlsidebar-items.jsstruct.Drain.htmlstruct.DrainFilter.htmlstruct.IntoIter.htmlstruct.Splice.htmlstruct.Vec.htmlwhere.k.htmlwhile.k.htmlwrite.m.htmlwriteln.m.htmlstorage1.43.1.jstestColorConfig.t.htmlNamePadding.t.htmlOptions.t.htmlOutputFormat.t.htmlRunIgnored.t.htmlShouldPanic.t.htmlTDynBenchFn.t.htmlTestDesc.t.htmlTestDescAndFn.t.htmlTestFn.t.htmlTestName.t.htmlTestOpts.t.htmlTestType.t.htmlall.htmlassert_test_result.v.htmlbenchBenchSamples.t.htmlBencher.t.htmlbenchmark.v.htmlblack_box.v.htmlfmt_bench_samples.v.htmlfn.benchmark.htmlfn.black_box.htmlfn.fmt_bench_samples.htmlfn.iter.htmlfn.run_once.htmlindex.htmliter.v.htmlrun_once.v.htmlsidebar-items.jsstruct.BenchSamples.htmlstruct.Bencher.htmlblack_box.v.htmlcliTestOpts.t.htmlfn.parse_opts.htmlparse_opts.v.htmlstruct.TestOpts.htmlconsolefn.run_tests_console.htmlrun_tests_console.v.htmlconvert_benchmarks_to_tests.v.htmlenum.ColorConfig.htmlenum.NamePadding.htmlenum.OutputFormat.htmlenum.RunIgnored.htmlenum.ShouldPanic.htmlenum.TestFn.htmlenum.TestName.htmlenum.TestType.htmlfilter_tests.v.htmlfn.assert_test_result.htmlfn.black_box.htmlfn.convert_benchmarks_to_tests.htmlfn.filter_tests.htmlfn.run_test.htmlfn.run_tests.htmlfn.run_tests_console.htmlfn.test_main.htmlfn.test_main_static.htmlfn.test_main_static_abort.htmlhelpersmetricsMetric.t.htmlMetricMap.t.htmlstruct.Metric.htmlstruct.MetricMap.htmlindex.htmloptionsColorConfig.t.htmlOptions.t.htmlOutputFormat.t.htmlRunIgnored.t.htmlRunStrategy.t.htmlShouldPanic.t.htmlenum.ColorConfig.htmlenum.OutputFormat.htmlenum.RunIgnored.htmlenum.RunStrategy.htmlenum.ShouldPanic.htmlstruct.Options.htmlrun_test.v.htmlrun_tests.v.htmlrun_tests_console.v.htmlsidebar-items.jsstatsStats.t.htmlSummary.t.htmlfn.winsorize.htmlindex.htmlsidebar-items.jsstruct.Summary.htmltrait.Stats.htmlwinsorize.v.htmlstruct.Options.htmlstruct.TestDesc.htmlstruct.TestDescAndFn.htmlstruct.TestOpts.htmltestMetric.t.htmlMetricMap.t.htmlOptions.t.htmlRunIgnored.t.htmlRunStrategy.t.htmlShouldPanic.t.htmlTestDesc.t.htmlTestDescAndFn.t.htmlTestExecTime.t.htmlTestName.t.htmlTestOpts.t.htmlTestResult.t.htmlTestTimeOptions.t.htmlTestType.t.htmlenum.RunIgnored.htmlenum.RunStrategy.htmlenum.ShouldPanic.htmlenum.TestName.htmlenum.TestResult.htmlenum.TestType.htmlfn.parse_opts.htmlindex.htmlparse_opts.v.htmlsidebar-items.jsstruct.Metric.htmlstruct.MetricMap.htmlstruct.Options.htmlstruct.TestDesc.htmlstruct.TestDescAndFn.htmlstruct.TestExecTime.htmlstruct.TestOpts.htmlstruct.TestTimeOptions.htmltest_main.v.htmltest_main_static.v.htmltest_main_static_abort.v.htmltest_resultTestResult.t.htmlenum.TestResult.htmltimeTestExecTime.t.htmlTestTimeOptions.t.htmlstruct.TestExecTime.htmlstruct.TestTimeOptions.htmltrait.TDynBenchFn.htmltypesNamePadding.t.htmlTDynBenchFn.t.htmlTestDesc.t.htmlTestDescAndFn.t.htmlTestFn.t.htmlTestName.t.htmlTestType.t.htmlenum.NamePadding.htmlenum.TestFn.htmlenum.TestName.htmlenum.TestType.htmlstruct.TestDesc.htmlstruct.TestDescAndFn.htmltrait.TDynBenchFn.htmltheme1.43.1.jstutorial.htmlunstable-bookFontAwesomecssfont-awesome.cssfontsFontAwesome.ttffontawesome-webfont.eotfontawesome-webfont.svgfontawesome-webfont.ttffontawesome-webfont.wofffontawesome-webfont.woff2ayu-highlight.cssbook.jsclipboard.min.jscompiler-flagscompiler-flags.htmlcontrol-flow-guard.htmlemit-stack-sizes.htmlprofile.htmlreport-time.htmlsanitizer.htmlself-profile-events.htmlself-profile.htmlcsschrome.cssgeneral.cssprint.cssvariables.csselasticlunr.min.jsfavicon.pnghighlight.csshighlight.jsindex.htmllanguage-featureslanguage-features.htmlaarch64-target-feature.htmlabi-amdgpu-kernel.htmlabi-efiapi.htmlabi-msp430-interrupt.htmlabi-ptx.htmlabi-thiscall.htmlabi-unadjusted.htmlabi-vectorcall.htmlabi-x86-interrupt.htmladx-target-feature.htmlalloc-error-handler.htmlallocator-internals.htmlallow-fail.htmlallow-internal-unsafe.htmlallow-internal-unstable.htmlarbitrary-enum-discriminant.htmlarbitrary-self-types.htmlarm-target-feature.htmlassociated-type-bounds.htmlassociated-type-defaults.htmlasync-closure.htmlavx512-target-feature.htmlbindings-after-at.htmlbox-patterns.htmlbox-syntax.htmlc-variadic.htmlcfg-sanitize.htmlcfg-target-has-atomic.htmlcfg-target-thread-local.htmlcmpxchg16b-target-feature.htmlcompiler-builtins.htmlconst-compare-raw-pointers.htmlconst-eval-limit.htmlconst-extern-fn.htmlconst-fn-union.htmlconst-fn.htmlconst-generics.htmlconst-if-match.htmlconst-in-array-repeat-expressions.htmlconst-loop.htmlconst-mut-refs.htmlconst-panic.htmlconst-raw-ptr-deref.htmlconst-raw-ptr-to-usize-cast.htmlconst-trait-bound-opt-out.htmlconst-trait-impl.htmlcrate-visibility-modifier.htmlcustom-inner-attributes.htmlcustom-test-frameworks.htmldecl-macro.htmldefault-type-parameter-fallback.htmldoc-alias.htmldoc-cfg.htmldoc-keyword.htmldoc-masked.htmldropck-eyepatch.htmlexclusive-range-pattern.htmlexhaustive-patterns.htmlextern-types.htmlexternal-doc.htmlf16c-target-feature.htmlffi-returns-twice.htmlfundamental.htmlgenerators.htmlgeneric-associated-types.htmlhalf-open-range-patterns.htmlhexagon-target-feature.htmlimpl-trait-in-bindings.htmlin-band-lifetimes.htmlinfer-static-outlives-requirements.htmlintrinsics.htmllabel-break-value.htmllang-items.htmllet-chains.htmllink-args.htmllink-cfg.htmllink-llvm-intrinsics.htmllinkage.htmllint-reasons.htmlmain.htmlmarker-trait-attr.htmlmember-constraints.htmlmips-target-feature.htmlmmx-target-feature.htmlmovbe-target-feature.htmlmove-ref-pattern.htmlnaked-functions.htmlneeds-panic-runtime.htmlnever-type-fallback.htmlnever-type.htmlnll.htmlno-core.htmlno-niche.htmlno-sanitize.htmlnon-ascii-idents.htmlobject-safe-for-dispatch.htmlomit-gdb-pretty-printer-section.htmloptimize-attribute.htmloptin-builtin-traits.htmlor-patterns.htmlpanic-runtime.htmlplatform-intrinsics.htmlplugin-registrar.htmlplugin.htmlpowerpc-target-feature.htmlprecise-pointer-size-matching.htmlprelude-import.htmlproc-macro-hygiene.htmlprofiler-runtime.htmlraw-dylib.htmlraw-ref-op.htmlregister-attr.htmlregister-tool.htmlrepr-simd.htmlrepr128.htmlrtm-target-feature.htmlrustc-attrs.htmlrustc-private.htmlsimd-ffi.htmlspecialization.htmlsse4a-target-feature.htmlstaged-api.htmlstart.htmlstatic-nobundle.htmlstmt-expr-attributes.htmlstructural-match.htmltbm-target-feature.htmltest-2018-feature.htmlthread-local.htmltrack-caller.htmltrait-alias.htmltransparent-unions.htmltrivial-bounds.htmltry-blocks.htmltype-alias-impl-trait.htmltype-ascription.htmlunboxed-closures.htmlunsized-locals.htmlunsized-tuple-coercion.htmluntagged-unions.htmlunwind-attributes.htmlwasm-target-feature.htmllibrary-featureslibrary-features.htmlalloc-error-hook.htmlalloc-internals.htmlalloc-layout-extra.htmlalloc-prelude.htmlallocator-api.htmlarray-error-internals.htmlarray-value-iter.htmlasm.htmlatomic-min-max.htmlatomic-mut-ptr.htmlbacktrace.htmlbinary-heap-drain-sorted.htmlbinary-heap-into-iter-sorted.htmlbool-to-option.htmlbound-cloned.htmlbox-into-pin.htmlbox-into-raw-non-null.htmlbtreemap-remove-entry.htmlbuffered-io-capacity.htmlbufreader-seek-relative.htmlc-void-variant.htmlcell-leak.htmlcell-update.htmlchar-error-internals.htmlclamp.htmlcmp-min-max-by.htmlcoerce-unsized.htmlconcat-idents.htmlconst-alloc-layout.htmlconst-ascii-ctype-on-intrinsics.htmlconst-caller-location.htmlconst-checked-int-methods.htmlconst-cstr-unchecked.htmlconst-cttz.htmlconst-euclidean-int-methods.htmlconst-forget.htmlconst-generic-impls-guard.htmlconst-int-conversion.htmlconst-int-pow.htmlconst-int-sign.htmlconst-int-unchecked-arith.htmlconst-nonzero-int-methods.htmlconst-overflowing-int-methods.htmlconst-pref-align-of.htmlconst-ptr-offset-from.htmlconst-result.htmlconst-saturating-int-methods.htmlconst-slice-from-raw-parts.htmlconst-transmute.htmlconst-type-id.htmlconst-type-name.htmlconst-wrapping-int-methods.htmlconstctlz.htmlcontainer-error-extra.htmlconvert-float-to-int.htmlcore-intrinsics.htmlcore-panic.htmlcore-private-bignum.htmlcore-private-diy-float.htmlcow-is-borrowed.htmldeadline-api.htmldebug-non-exhaustive.htmldec2flt.htmlderive-clone-copy.htmlderive-eq.htmldispatch-from-dyn.htmldiv-duration.htmldrain-filter.htmlduration-constants.htmlentry-insert.htmlerror-iter.htmlerror-type-id.htmlexact-size-is-empty.htmlfd-read.htmlfd.htmlfixed-size-array.htmlfloat-approx-unchecked-to.htmlflt2dec.htmlfmt-internals.htmlfn-traits.htmlfoo.htmlforget-unsized.htmlformat-args-nl.htmlgen-future.htmlgenerator-trait.htmlget-mut-unchecked.htmlglobal-asm.htmlhash-raw-entry.htmlhash-set-entry.htmlhashmap-internals.htmlinner-deref.htmlint-error-internals.htmlint-error-matching.htmlinteger-atomics.htmlinternal-uninit-const.htmlio-slice-advance.htmlip.htmlis-sorted.htmliter-is-partitioned.htmliter-map-while.htmliter-order-by.htmliter-partition-in-place.htmlleading-trailing-ones.htmlliballoc-internals.htmllibstd-io-internals.htmllibstd-sys-internals.htmllibstd-thread-internals.htmllinked-list-cursors.htmllinked-list-extras.htmllinked-list-prepend.htmllinked-list-remove.htmllog-syntax.htmlmap-entry-replace.htmlmap-first-last.htmlmaybe-uninit-extra.htmlmaybe-uninit-ref.htmlmaybe-uninit-slice-assume-init.htmlmaybe-uninit-slice.htmlmaybe-uninit-uninit-array.htmlnew-uninit.htmlno-more-cas.htmlonce-poison.htmloption-expect-none.htmloption-result-contains.htmloption-unwrap-none.htmlpanic-abort.htmlpanic-info-message.htmlpanic-internals.htmlpanic-unwind.htmlpath-buf-capacity.htmlpattern.htmlpoll-map.htmlprint-internals.htmlproc-macro-def-site.htmlproc-macro-diagnostic.htmlproc-macro-internals.htmlproc-macro-mixed-site.htmlproc-macro-quote.htmlproc-macro-raw-ident.htmlproc-macro-span.htmlprocess-exitcode-placeholder.htmlprocess-internals.htmlprocess-set-argv0.htmlprofiler-runtime-lib.htmlptr-internals.htmlptr-offset-from.htmlptr-wrapping-offset-from.htmlrange-is-empty.htmlraw-vec-internals.htmlraw.htmlrc-into-raw-non-null.htmlread-initializer.htmlreceiver-trait.htmlrenamed-spin-loop.htmlresult-cloned.htmlresult-contains-err.htmlresult-copied.htmlrt.htmlsaturating-neg.htmlseek-convenience.htmlset-stdio.htmlsgx-platform.htmlshrink-to.htmlslice-concat-ext.htmlslice-concat-trait.htmlslice-index-methods.htmlslice-internals.htmlslice-iter-mut-as-slice.htmlslice-partition-at-index.htmlslice-partition-dedup.htmlslice-ptr-range.htmlsort-internals.htmlsplit-inclusive.htmlstd-internals.htmlstdsimd.htmlstep-trait.htmlstr-internals.htmlstr-strip.htmltau-constant.htmltermination-trait-lib.htmltest.htmlthread-id-value.htmlthread-local-internals.htmlthread-spawn-unchecked.htmltidy-test-never-used-anywhere-else.htmltoowned-clone-into.htmltrace-macros.htmltrusted-len.htmltry-find.htmltry-reserve.htmltry-trait.htmltype-name-of-val.htmlunicode-internals.htmlunicode-version.htmlunsafe-cell-raw-get.htmlunsize.htmlunwrap-infallible.htmlupdate-panic-count.htmlvec-drain-as-slice.htmlvec-into-raw-parts.htmlvec-leak.htmlvec-remove-item.htmlvec-resize-default.htmlwasi-ext.htmlweak-into-raw.htmlwindows-by-handle.htmlwindows-c.htmlwindows-file-type-ext.htmlwindows-handle.htmlwindows-net.htmlwindows-stdio.htmlwith-options.htmlwrapping-int-impl.htmlwrapping-next-power-of-two.htmlmark.min.jsprint.htmlsearcher.jssearchindex.jssearchindex.jsonthe-unstable-book.htmltomorrow-night.cssversion_info.htmlwheel1.43.1.svg/usr/share/doc/packages//usr/share/doc/packages/rust//usr/share/doc/packages/rust/html//usr/share/doc/packages/rust/html/alloc//usr/share/doc/packages/rust/html/alloc/alloc//usr/share/doc/packages/rust/html/alloc/borrow//usr/share/doc/packages/rust/html/alloc/boxed//usr/share/doc/packages/rust/html/alloc/collections//usr/share/doc/packages/rust/html/alloc/collections/binary_heap//usr/share/doc/packages/rust/html/alloc/collections/btree//usr/share/doc/packages/rust/html/alloc/collections/btree/map//usr/share/doc/packages/rust/html/alloc/collections/btree/set//usr/share/doc/packages/rust/html/alloc/collections/btree_map//usr/share/doc/packages/rust/html/alloc/collections/btree_set//usr/share/doc/packages/rust/html/alloc/collections/linked_list//usr/share/doc/packages/rust/html/alloc/collections/vec_deque//usr/share/doc/packages/rust/html/alloc/collections/vec_deque/drain//usr/share/doc/packages/rust/html/alloc/fmt//usr/share/doc/packages/rust/html/alloc/prelude//usr/share/doc/packages/rust/html/alloc/prelude/v1//usr/share/doc/packages/rust/html/alloc/rc//usr/share/doc/packages/rust/html/alloc/slice//usr/share/doc/packages/rust/html/alloc/str//usr/share/doc/packages/rust/html/alloc/str/pattern//usr/share/doc/packages/rust/html/alloc/string//usr/share/doc/packages/rust/html/alloc/sync//usr/share/doc/packages/rust/html/alloc/vec//usr/share/doc/packages/rust/html/book//usr/share/doc/packages/rust/html/book/2018-edition//usr/share/doc/packages/rust/html/book/2018-edition/FontAwesome//usr/share/doc/packages/rust/html/book/2018-edition/FontAwesome/css//usr/share/doc/packages/rust/html/book/2018-edition/FontAwesome/fonts//usr/share/doc/packages/rust/html/book/2018-edition/css//usr/share/doc/packages/rust/html/book/2018-edition/img//usr/share/doc/packages/rust/html/book/2018-edition/img/ferris//usr/share/doc/packages/rust/html/book/2018-edition/src//usr/share/doc/packages/rust/html/book/2018-edition/src/theme//usr/share/doc/packages/rust/html/book/2018-edition/theme//usr/share/doc/packages/rust/html/book/FontAwesome//usr/share/doc/packages/rust/html/book/FontAwesome/css//usr/share/doc/packages/rust/html/book/FontAwesome/fonts//usr/share/doc/packages/rust/html/book/css//usr/share/doc/packages/rust/html/book/first-edition//usr/share/doc/packages/rust/html/book/first-edition/FontAwesome//usr/share/doc/packages/rust/html/book/first-edition/FontAwesome/css//usr/share/doc/packages/rust/html/book/first-edition/FontAwesome/fonts//usr/share/doc/packages/rust/html/book/first-edition/css//usr/share/doc/packages/rust/html/book/first-edition/src//usr/share/doc/packages/rust/html/book/first-edition/src/theme//usr/share/doc/packages/rust/html/book/first-edition/theme//usr/share/doc/packages/rust/html/book/img//usr/share/doc/packages/rust/html/book/img/ferris//usr/share/doc/packages/rust/html/book/second-edition//usr/share/doc/packages/rust/html/book/second-edition/FontAwesome//usr/share/doc/packages/rust/html/book/second-edition/FontAwesome/css//usr/share/doc/packages/rust/html/book/second-edition/FontAwesome/fonts//usr/share/doc/packages/rust/html/book/second-edition/css//usr/share/doc/packages/rust/html/book/second-edition/img//usr/share/doc/packages/rust/html/book/second-edition/theme//usr/share/doc/packages/rust/html/book/theme//usr/share/doc/packages/rust/html/cargo//usr/share/doc/packages/rust/html/cargo/FontAwesome//usr/share/doc/packages/rust/html/cargo/FontAwesome/css//usr/share/doc/packages/rust/html/cargo/FontAwesome/fonts//usr/share/doc/packages/rust/html/cargo/appendix//usr/share/doc/packages/rust/html/cargo/commands//usr/share/doc/packages/rust/html/cargo/css//usr/share/doc/packages/rust/html/cargo/getting-started//usr/share/doc/packages/rust/html/cargo/guide//usr/share/doc/packages/rust/html/cargo/images//usr/share/doc/packages/rust/html/cargo/reference//usr/share/doc/packages/rust/html/core//usr/share/doc/packages/rust/html/core/alloc//usr/share/doc/packages/rust/html/core/any//usr/share/doc/packages/rust/html/core/arch//usr/share/doc/packages/rust/html/core/arch/aarch64//usr/share/doc/packages/rust/html/core/arch/arm//usr/share/doc/packages/rust/html/core/arch/mips//usr/share/doc/packages/rust/html/core/arch/mips64//usr/share/doc/packages/rust/html/core/arch/nvptx//usr/share/doc/packages/rust/html/core/arch/powerpc//usr/share/doc/packages/rust/html/core/arch/powerpc64//usr/share/doc/packages/rust/html/core/arch/wasm32//usr/share/doc/packages/rust/html/core/arch/x86//usr/share/doc/packages/rust/html/core/arch/x86_64//usr/share/doc/packages/rust/html/core/array//usr/share/doc/packages/rust/html/core/array/iter//usr/share/doc/packages/rust/html/core/ascii//usr/share/doc/packages/rust/html/core/borrow//usr/share/doc/packages/rust/html/core/cell//usr/share/doc/packages/rust/html/core/char//usr/share/doc/packages/rust/html/core/char/convert//usr/share/doc/packages/rust/html/core/char/decode//usr/share/doc/packages/rust/html/core/clone//usr/share/doc/packages/rust/html/core/cmp//usr/share/doc/packages/rust/html/core/convert//usr/share/doc/packages/rust/html/core/convert/num//usr/share/doc/packages/rust/html/core/core_arch//usr/share/doc/packages/rust/html/core/core_arch/aarch64//usr/share/doc/packages/rust/html/core/core_arch/aarch64/crc//usr/share/doc/packages/rust/html/core/core_arch/aarch64/crypto//usr/share/doc/packages/rust/html/core/core_arch/aarch64/neon//usr/share/doc/packages/rust/html/core/core_arch/aarch64/neon/generated//usr/share/doc/packages/rust/html/core/core_arch/aarch64/v8//usr/share/doc/packages/rust/html/core/core_arch/acle//usr/share/doc/packages/rust/html/core/core_arch/acle/barrier//usr/share/doc/packages/rust/html/core/core_arch/acle/barrier/cp15//usr/share/doc/packages/rust/html/core/core_arch/acle/hints//usr/share/doc/packages/rust/html/core/core_arch/acle/registers//usr/share/doc/packages/rust/html/core/core_arch/acle/registers/aarch32//usr/share/doc/packages/rust/html/core/core_arch/arch//usr/share/doc/packages/rust/html/core/core_arch/arch/aarch64//usr/share/doc/packages/rust/html/core/core_arch/arch/arm//usr/share/doc/packages/rust/html/core/core_arch/arch/mips//usr/share/doc/packages/rust/html/core/core_arch/arch/mips64//usr/share/doc/packages/rust/html/core/core_arch/arch/nvptx//usr/share/doc/packages/rust/html/core/core_arch/arch/powerpc//usr/share/doc/packages/rust/html/core/core_arch/arch/powerpc64//usr/share/doc/packages/rust/html/core/core_arch/arch/wasm32//usr/share/doc/packages/rust/html/core/core_arch/arch/x86//usr/share/doc/packages/rust/html/core/core_arch/arch/x86_64//usr/share/doc/packages/rust/html/core/core_arch/arm//usr/share/doc/packages/rust/html/core/core_arch/arm/armclang//usr/share/doc/packages/rust/html/core/core_arch/arm/neon//usr/share/doc/packages/rust/html/core/core_arch/arm/neon/generated//usr/share/doc/packages/rust/html/core/core_arch/arm/v6//usr/share/doc/packages/rust/html/core/core_arch/mips//usr/share/doc/packages/rust/html/core/core_arch/mips/msa//usr/share/doc/packages/rust/html/core/core_arch/nvptx//usr/share/doc/packages/rust/html/core/core_arch/powerpc//usr/share/doc/packages/rust/html/core/core_arch/powerpc/vsx//usr/share/doc/packages/rust/html/core/core_arch/wasm32//usr/share/doc/packages/rust/html/core/core_arch/wasm32/atomic//usr/share/doc/packages/rust/html/core/core_arch/wasm32/memory//usr/share/doc/packages/rust/html/core/core_arch/wasm32/simd128//usr/share/doc/packages/rust/html/core/core_arch/x86//usr/share/doc/packages/rust/html/core/core_arch/x86/abm//usr/share/doc/packages/rust/html/core/core_arch/x86/adx//usr/share/doc/packages/rust/html/core/core_arch/x86/aes//usr/share/doc/packages/rust/html/core/core_arch/x86/avx//usr/share/doc/packages/rust/html/core/core_arch/x86/avx2//usr/share/doc/packages/rust/html/core/core_arch/x86/avx512f//usr/share/doc/packages/rust/html/core/core_arch/x86/avx512ifma//usr/share/doc/packages/rust/html/core/core_arch/x86/bmi1//usr/share/doc/packages/rust/html/core/core_arch/x86/bmi2//usr/share/doc/packages/rust/html/core/core_arch/x86/bswap//usr/share/doc/packages/rust/html/core/core_arch/x86/bt//usr/share/doc/packages/rust/html/core/core_arch/x86/cpuid//usr/share/doc/packages/rust/html/core/core_arch/x86/f16c//usr/share/doc/packages/rust/html/core/core_arch/x86/fma//usr/share/doc/packages/rust/html/core/core_arch/x86/fxsr//usr/share/doc/packages/rust/html/core/core_arch/x86/mmx//usr/share/doc/packages/rust/html/core/core_arch/x86/pclmulqdq//usr/share/doc/packages/rust/html/core/core_arch/x86/rdrand//usr/share/doc/packages/rust/html/core/core_arch/x86/rdtsc//usr/share/doc/packages/rust/html/core/core_arch/x86/rtm//usr/share/doc/packages/rust/html/core/core_arch/x86/sha//usr/share/doc/packages/rust/html/core/core_arch/x86/sse//usr/share/doc/packages/rust/html/core/core_arch/x86/sse2//usr/share/doc/packages/rust/html/core/core_arch/x86/sse3//usr/share/doc/packages/rust/html/core/core_arch/x86/sse41//usr/share/doc/packages/rust/html/core/core_arch/x86/sse42//usr/share/doc/packages/rust/html/core/core_arch/x86/sse4a//usr/share/doc/packages/rust/html/core/core_arch/x86/ssse3//usr/share/doc/packages/rust/html/core/core_arch/x86/tbm//usr/share/doc/packages/rust/html/core/core_arch/x86/xsave//usr/share/doc/packages/rust/html/core/core_arch/x86_64//usr/share/doc/packages/rust/html/core/core_arch/x86_64/abm//usr/share/doc/packages/rust/html/core/core_arch/x86_64/adx//usr/share/doc/packages/rust/html/core/core_arch/x86_64/avx//usr/share/doc/packages/rust/html/core/core_arch/x86_64/avx2//usr/share/doc/packages/rust/html/core/core_arch/x86_64/bmi//usr/share/doc/packages/rust/html/core/core_arch/x86_64/bmi2//usr/share/doc/packages/rust/html/core/core_arch/x86_64/bswap//usr/share/doc/packages/rust/html/core/core_arch/x86_64/bt//usr/share/doc/packages/rust/html/core/core_arch/x86_64/cmpxchg16b//usr/share/doc/packages/rust/html/core/core_arch/x86_64/fxsr//usr/share/doc/packages/rust/html/core/core_arch/x86_64/rdrand//usr/share/doc/packages/rust/html/core/core_arch/x86_64/sse//usr/share/doc/packages/rust/html/core/core_arch/x86_64/sse2//usr/share/doc/packages/rust/html/core/core_arch/x86_64/sse41//usr/share/doc/packages/rust/html/core/core_arch/x86_64/sse42//usr/share/doc/packages/rust/html/core/core_arch/x86_64/xsave//usr/share/doc/packages/rust/html/core/default//usr/share/doc/packages/rust/html/core/f32//usr/share/doc/packages/rust/html/core/f32/consts//usr/share/doc/packages/rust/html/core/f64//usr/share/doc/packages/rust/html/core/f64/consts//usr/share/doc/packages/rust/html/core/ffi//usr/share/doc/packages/rust/html/core/fmt//usr/share/doc/packages/rust/html/core/fmt/builders//usr/share/doc/packages/rust/html/core/future//usr/share/doc/packages/rust/html/core/future/future//usr/share/doc/packages/rust/html/core/hash//usr/share/doc/packages/rust/html/core/hash/sip//usr/share/doc/packages/rust/html/core/hint//usr/share/doc/packages/rust/html/core/i128//usr/share/doc/packages/rust/html/core/i16//usr/share/doc/packages/rust/html/core/i32//usr/share/doc/packages/rust/html/core/i64//usr/share/doc/packages/rust/html/core/i8//usr/share/doc/packages/rust/html/core/intrinsics//usr/share/doc/packages/rust/html/core/isize//usr/share/doc/packages/rust/html/core/iter//usr/share/doc/packages/rust/html/core/iter/adapters//usr/share/doc/packages/rust/html/core/iter/adapters/chain//usr/share/doc/packages/rust/html/core/iter/adapters/flatten//usr/share/doc/packages/rust/html/core/iter/adapters/zip//usr/share/doc/packages/rust/html/core/iter/range//usr/share/doc/packages/rust/html/core/iter/sources//usr/share/doc/packages/rust/html/core/iter/traits//usr/share/doc/packages/rust/html/core/iter/traits/accum//usr/share/doc/packages/rust/html/core/iter/traits/collect//usr/share/doc/packages/rust/html/core/iter/traits/double_ended//usr/share/doc/packages/rust/html/core/iter/traits/exact_size//usr/share/doc/packages/rust/html/core/iter/traits/iterator//usr/share/doc/packages/rust/html/core/iter/traits/marker//usr/share/doc/packages/rust/html/core/marker//usr/share/doc/packages/rust/html/core/mem//usr/share/doc/packages/rust/html/core/mem/manually_drop//usr/share/doc/packages/rust/html/core/mem/maybe_uninit//usr/share/doc/packages/rust/html/core/num//usr/share/doc/packages/rust/html/core/num/dec2flt//usr/share/doc/packages/rust/html/core/ops//usr/share/doc/packages/rust/html/core/ops/arith//usr/share/doc/packages/rust/html/core/ops/bit//usr/share/doc/packages/rust/html/core/ops/deref//usr/share/doc/packages/rust/html/core/ops/drop//usr/share/doc/packages/rust/html/core/ops/function//usr/share/doc/packages/rust/html/core/ops/generator//usr/share/doc/packages/rust/html/core/ops/index//usr/share/doc/packages/rust/html/core/ops/range//usr/share/doc/packages/rust/html/core/ops/try//usr/share/doc/packages/rust/html/core/ops/unsize//usr/share/doc/packages/rust/html/core/option//usr/share/doc/packages/rust/html/core/panic//usr/share/doc/packages/rust/html/core/panicking//usr/share/doc/packages/rust/html/core/pin//usr/share/doc/packages/rust/html/core/prelude//usr/share/doc/packages/rust/html/core/prelude/v1//usr/share/doc/packages/rust/html/core/primitive//usr/share/doc/packages/rust/html/core/ptr//usr/share/doc/packages/rust/html/core/ptr/non_null//usr/share/doc/packages/rust/html/core/raw//usr/share/doc/packages/rust/html/core/result//usr/share/doc/packages/rust/html/core/slice//usr/share/doc/packages/rust/html/core/slice/memchr//usr/share/doc/packages/rust/html/core/str//usr/share/doc/packages/rust/html/core/str/lossy//usr/share/doc/packages/rust/html/core/str/pattern//usr/share/doc/packages/rust/html/core/sync//usr/share/doc/packages/rust/html/core/sync/atomic//usr/share/doc/packages/rust/html/core/task//usr/share/doc/packages/rust/html/core/task/poll//usr/share/doc/packages/rust/html/core/task/wake//usr/share/doc/packages/rust/html/core/time//usr/share/doc/packages/rust/html/core/u128//usr/share/doc/packages/rust/html/core/u16//usr/share/doc/packages/rust/html/core/u32//usr/share/doc/packages/rust/html/core/u64//usr/share/doc/packages/rust/html/core/u8//usr/share/doc/packages/rust/html/core/unicode//usr/share/doc/packages/rust/html/core/unicode/conversions//usr/share/doc/packages/rust/html/core/unicode/derived_property//usr/share/doc/packages/rust/html/core/unicode/unicode_data//usr/share/doc/packages/rust/html/core/unicode/unicode_data/alphabetic//usr/share/doc/packages/rust/html/core/unicode/unicode_data/case_ignorable//usr/share/doc/packages/rust/html/core/unicode/unicode_data/cased//usr/share/doc/packages/rust/html/core/unicode/unicode_data/cc//usr/share/doc/packages/rust/html/core/unicode/unicode_data/conversions//usr/share/doc/packages/rust/html/core/unicode/unicode_data/grapheme_extend//usr/share/doc/packages/rust/html/core/unicode/unicode_data/lowercase//usr/share/doc/packages/rust/html/core/unicode/unicode_data/n//usr/share/doc/packages/rust/html/core/unicode/unicode_data/uppercase//usr/share/doc/packages/rust/html/core/unicode/unicode_data/white_space//usr/share/doc/packages/rust/html/core/unicode/version//usr/share/doc/packages/rust/html/core/usize//usr/share/doc/packages/rust/html/edition-guide//usr/share/doc/packages/rust/html/edition-guide/FontAwesome//usr/share/doc/packages/rust/html/edition-guide/FontAwesome/css//usr/share/doc/packages/rust/html/edition-guide/FontAwesome/fonts//usr/share/doc/packages/rust/html/edition-guide/css//usr/share/doc/packages/rust/html/edition-guide/editions//usr/share/doc/packages/rust/html/edition-guide/rust-2015//usr/share/doc/packages/rust/html/edition-guide/rust-2018//usr/share/doc/packages/rust/html/edition-guide/rust-2018/cargo-and-crates-io//usr/share/doc/packages/rust/html/edition-guide/rust-2018/control-flow//usr/share/doc/packages/rust/html/edition-guide/rust-2018/data-types//usr/share/doc/packages/rust/html/edition-guide/rust-2018/documentation//usr/share/doc/packages/rust/html/edition-guide/rust-2018/error-handling-and-panics//usr/share/doc/packages/rust/html/edition-guide/rust-2018/macros//usr/share/doc/packages/rust/html/edition-guide/rust-2018/module-system//usr/share/doc/packages/rust/html/edition-guide/rust-2018/ownership-and-lifetimes//usr/share/doc/packages/rust/html/edition-guide/rust-2018/platform-and-target-support//usr/share/doc/packages/rust/html/edition-guide/rust-2018/rustdoc//usr/share/doc/packages/rust/html/edition-guide/rust-2018/the-compiler//usr/share/doc/packages/rust/html/edition-guide/rust-2018/trait-system//usr/share/doc/packages/rust/html/embedded-book//usr/share/doc/packages/rust/html/embedded-book/FontAwesome//usr/share/doc/packages/rust/html/embedded-book/FontAwesome/css//usr/share/doc/packages/rust/html/embedded-book/FontAwesome/fonts//usr/share/doc/packages/rust/html/embedded-book/appendix//usr/share/doc/packages/rust/html/embedded-book/assets//usr/share/doc/packages/rust/html/embedded-book/c-tips//usr/share/doc/packages/rust/html/embedded-book/collections//usr/share/doc/packages/rust/html/embedded-book/concurrency//usr/share/doc/packages/rust/html/embedded-book/css//usr/share/doc/packages/rust/html/embedded-book/interoperability//usr/share/doc/packages/rust/html/embedded-book/intro//usr/share/doc/packages/rust/html/embedded-book/intro/install//usr/share/doc/packages/rust/html/embedded-book/peripherals//usr/share/doc/packages/rust/html/embedded-book/portability//usr/share/doc/packages/rust/html/embedded-book/start//usr/share/doc/packages/rust/html/embedded-book/static-guarantees//usr/share/doc/packages/rust/html/embedded-book/unsorted//usr/share/doc/packages/rust/html/implementors//usr/share/doc/packages/rust/html/implementors/alloc//usr/share/doc/packages/rust/html/implementors/alloc/alloc//usr/share/doc/packages/rust/html/implementors/alloc/borrow//usr/share/doc/packages/rust/html/implementors/alloc/fmt//usr/share/doc/packages/rust/html/implementors/alloc/slice//usr/share/doc/packages/rust/html/implementors/alloc/str//usr/share/doc/packages/rust/html/implementors/alloc/str/pattern//usr/share/doc/packages/rust/html/implementors/alloc/string//usr/share/doc/packages/rust/html/implementors/core//usr/share/doc/packages/rust/html/implementors/core/any//usr/share/doc/packages/rust/html/implementors/core/array//usr/share/doc/packages/rust/html/implementors/core/borrow//usr/share/doc/packages/rust/html/implementors/core/clone//usr/share/doc/packages/rust/html/implementors/core/cmp//usr/share/doc/packages/rust/html/implementors/core/convert//usr/share/doc/packages/rust/html/implementors/core/default//usr/share/doc/packages/rust/html/implementors/core/fmt//usr/share/doc/packages/rust/html/implementors/core/future//usr/share/doc/packages/rust/html/implementors/core/future/future//usr/share/doc/packages/rust/html/implementors/core/hash//usr/share/doc/packages/rust/html/implementors/core/iter//usr/share/doc/packages/rust/html/implementors/core/iter/traits//usr/share/doc/packages/rust/html/implementors/core/iter/traits/collect//usr/share/doc/packages/rust/html/implementors/core/iter/traits/double_ended//usr/share/doc/packages/rust/html/implementors/core/iter/traits/exact_size//usr/share/doc/packages/rust/html/implementors/core/iter/traits/iterator//usr/share/doc/packages/rust/html/implementors/core/iter/traits/marker//usr/share/doc/packages/rust/html/implementors/core/marker//usr/share/doc/packages/rust/html/implementors/core/ops//usr/share/doc/packages/rust/html/implementors/core/ops/arith//usr/share/doc/packages/rust/html/implementors/core/ops/bit//usr/share/doc/packages/rust/html/implementors/core/ops/deref//usr/share/doc/packages/rust/html/implementors/core/ops/drop//usr/share/doc/packages/rust/html/implementors/core/ops/function//usr/share/doc/packages/rust/html/implementors/core/ops/generator//usr/share/doc/packages/rust/html/implementors/core/ops/index//usr/share/doc/packages/rust/html/implementors/core/ops/unsize//usr/share/doc/packages/rust/html/implementors/core/slice//usr/share/doc/packages/rust/html/implementors/core/str//usr/share/doc/packages/rust/html/implementors/core/str/pattern//usr/share/doc/packages/rust/html/implementors/proc_macro//usr/share/doc/packages/rust/html/implementors/std//usr/share/doc/packages/rust/html/implementors/std/alloc//usr/share/doc/packages/rust/html/implementors/std/any//usr/share/doc/packages/rust/html/implementors/std/array//usr/share/doc/packages/rust/html/implementors/std/ascii//usr/share/doc/packages/rust/html/implementors/std/borrow//usr/share/doc/packages/rust/html/implementors/std/clone//usr/share/doc/packages/rust/html/implementors/std/cmp//usr/share/doc/packages/rust/html/implementors/std/convert//usr/share/doc/packages/rust/html/implementors/std/default//usr/share/doc/packages/rust/html/implementors/std/error//usr/share/doc/packages/rust/html/implementors/std/fmt//usr/share/doc/packages/rust/html/implementors/std/future//usr/share/doc/packages/rust/html/implementors/std/hash//usr/share/doc/packages/rust/html/implementors/std/io//usr/share/doc/packages/rust/html/implementors/std/iter//usr/share/doc/packages/rust/html/implementors/std/marker//usr/share/doc/packages/rust/html/implementors/std/net//usr/share/doc/packages/rust/html/implementors/std/ops//usr/share/doc/packages/rust/html/implementors/std/os//usr/share/doc/packages/rust/html/implementors/std/os/linux//usr/share/doc/packages/rust/html/implementors/std/os/linux/fs//usr/share/doc/packages/rust/html/implementors/std/os/unix//usr/share/doc/packages/rust/html/implementors/std/os/unix/ffi//usr/share/doc/packages/rust/html/implementors/std/os/unix/fs//usr/share/doc/packages/rust/html/implementors/std/os/unix/io//usr/share/doc/packages/rust/html/implementors/std/os/unix/process//usr/share/doc/packages/rust/html/implementors/std/os/unix/thread//usr/share/doc/packages/rust/html/implementors/std/os/windows//usr/share/doc/packages/rust/html/implementors/std/os/windows/ffi//usr/share/doc/packages/rust/html/implementors/std/os/windows/fs//usr/share/doc/packages/rust/html/implementors/std/os/windows/io//usr/share/doc/packages/rust/html/implementors/std/os/windows/process//usr/share/doc/packages/rust/html/implementors/std/panic//usr/share/doc/packages/rust/html/implementors/std/process//usr/share/doc/packages/rust/html/implementors/std/slice//usr/share/doc/packages/rust/html/implementors/std/str//usr/share/doc/packages/rust/html/implementors/std/str/pattern//usr/share/doc/packages/rust/html/implementors/std/string//usr/share/doc/packages/rust/html/implementors/test//usr/share/doc/packages/rust/html/implementors/test/stats//usr/share/doc/packages/rust/html/nomicon//usr/share/doc/packages/rust/html/nomicon/FontAwesome//usr/share/doc/packages/rust/html/nomicon/FontAwesome/css//usr/share/doc/packages/rust/html/nomicon/FontAwesome/fonts//usr/share/doc/packages/rust/html/nomicon/css//usr/share/doc/packages/rust/html/nomicon/img//usr/share/doc/packages/rust/html/proc_macro//usr/share/doc/packages/rust/html/proc_macro/diagnostic//usr/share/doc/packages/rust/html/proc_macro/quote//usr/share/doc/packages/rust/html/proc_macro/token_stream//usr/share/doc/packages/rust/html/reference//usr/share/doc/packages/rust/html/reference/FontAwesome//usr/share/doc/packages/rust/html/reference/FontAwesome/css//usr/share/doc/packages/rust/html/reference/FontAwesome/fonts//usr/share/doc/packages/rust/html/reference/attributes//usr/share/doc/packages/rust/html/reference/css//usr/share/doc/packages/rust/html/reference/expressions//usr/share/doc/packages/rust/html/reference/items//usr/share/doc/packages/rust/html/reference/theme//usr/share/doc/packages/rust/html/reference/types//usr/share/doc/packages/rust/html/rust-by-example//usr/share/doc/packages/rust/html/rust-by-example/FontAwesome//usr/share/doc/packages/rust/html/rust-by-example/FontAwesome/css//usr/share/doc/packages/rust/html/rust-by-example/FontAwesome/fonts//usr/share/doc/packages/rust/html/rust-by-example/attribute//usr/share/doc/packages/rust/html/rust-by-example/attribute/cfg//usr/share/doc/packages/rust/html/rust-by-example/cargo//usr/share/doc/packages/rust/html/rust-by-example/compatibility//usr/share/doc/packages/rust/html/rust-by-example/conversion//usr/share/doc/packages/rust/html/rust-by-example/crates//usr/share/doc/packages/rust/html/rust-by-example/css//usr/share/doc/packages/rust/html/rust-by-example/custom_types//usr/share/doc/packages/rust/html/rust-by-example/custom_types/enum//usr/share/doc/packages/rust/html/rust-by-example/error//usr/share/doc/packages/rust/html/rust-by-example/error/multiple_error_types//usr/share/doc/packages/rust/html/rust-by-example/error/option_unwrap//usr/share/doc/packages/rust/html/rust-by-example/error/result//usr/share/doc/packages/rust/html/rust-by-example/flow_control//usr/share/doc/packages/rust/html/rust-by-example/flow_control/loop//usr/share/doc/packages/rust/html/rust-by-example/flow_control/match//usr/share/doc/packages/rust/html/rust-by-example/flow_control/match/destructuring//usr/share/doc/packages/rust/html/rust-by-example/fn//usr/share/doc/packages/rust/html/rust-by-example/fn/closures//usr/share/doc/packages/rust/html/rust-by-example/fn/closures/closure_examples//usr/share/doc/packages/rust/html/rust-by-example/generics//usr/share/doc/packages/rust/html/rust-by-example/generics/assoc_items//usr/share/doc/packages/rust/html/rust-by-example/generics/bounds//usr/share/doc/packages/rust/html/rust-by-example/generics/phantom//usr/share/doc/packages/rust/html/rust-by-example/hello//usr/share/doc/packages/rust/html/rust-by-example/hello/print//usr/share/doc/packages/rust/html/rust-by-example/hello/print/print_display//usr/share/doc/packages/rust/html/rust-by-example/macros//usr/share/doc/packages/rust/html/rust-by-example/meta//usr/share/doc/packages/rust/html/rust-by-example/mod//usr/share/doc/packages/rust/html/rust-by-example/primitives//usr/share/doc/packages/rust/html/rust-by-example/scope//usr/share/doc/packages/rust/html/rust-by-example/scope/borrow//usr/share/doc/packages/rust/html/rust-by-example/scope/lifetime//usr/share/doc/packages/rust/html/rust-by-example/scope/move//usr/share/doc/packages/rust/html/rust-by-example/std//usr/share/doc/packages/rust/html/rust-by-example/std/hash//usr/share/doc/packages/rust/html/rust-by-example/std/result//usr/share/doc/packages/rust/html/rust-by-example/std_misc//usr/share/doc/packages/rust/html/rust-by-example/std_misc/arg//usr/share/doc/packages/rust/html/rust-by-example/std_misc/file//usr/share/doc/packages/rust/html/rust-by-example/std_misc/process//usr/share/doc/packages/rust/html/rust-by-example/std_misc/threads//usr/share/doc/packages/rust/html/rust-by-example/testing//usr/share/doc/packages/rust/html/rust-by-example/trait//usr/share/doc/packages/rust/html/rust-by-example/types//usr/share/doc/packages/rust/html/rust-by-example/variable_bindings//usr/share/doc/packages/rust/html/rustc//usr/share/doc/packages/rust/html/rustc/FontAwesome//usr/share/doc/packages/rust/html/rustc/FontAwesome/css//usr/share/doc/packages/rust/html/rustc/FontAwesome/fonts//usr/share/doc/packages/rust/html/rustc/codegen-options//usr/share/doc/packages/rust/html/rustc/css//usr/share/doc/packages/rust/html/rustc/lints//usr/share/doc/packages/rust/html/rustc/lints/listing//usr/share/doc/packages/rust/html/rustc/targets//usr/share/doc/packages/rust/html/rustdoc//usr/share/doc/packages/rust/html/rustdoc/FontAwesome//usr/share/doc/packages/rust/html/rustdoc/FontAwesome/css//usr/share/doc/packages/rust/html/rustdoc/FontAwesome/fonts//usr/share/doc/packages/rust/html/rustdoc/css//usr/share/doc/packages/rust/html/src//usr/share/doc/packages/rust/html/src/alloc//usr/share/doc/packages/rust/html/src/alloc/collections//usr/share/doc/packages/rust/html/src/alloc/collections/btree//usr/share/doc/packages/rust/html/src/alloc/collections/vec_deque//usr/share/doc/packages/rust/html/src/alloc/prelude//usr/share/doc/packages/rust/html/src/core//usr/share/doc/packages/rust/html/src/core/array//usr/share/doc/packages/rust/html/src/core/char//usr/share/doc/packages/rust/html/src/core/convert//usr/share/doc/packages/rust/html/src/core/fmt//usr/share/doc/packages/rust/html/src/core/fmt/rt//usr/share/doc/packages/rust/html/src/core/future//usr/share/doc/packages/rust/html/src/core/hash//usr/share/doc/packages/rust/html/src/core/iter//usr/share/doc/packages/rust/html/src/core/iter/adapters//usr/share/doc/packages/rust/html/src/core/iter/traits//usr/share/doc/packages/rust/html/src/core/macros//usr/share/doc/packages/rust/html/src/core/mem//usr/share/doc/packages/rust/html/src/core/num//usr/share/doc/packages/rust/html/src/core/num/dec2flt//usr/share/doc/packages/rust/html/src/core/num/flt2dec//usr/share/doc/packages/rust/html/src/core/num/flt2dec/strategy//usr/share/doc/packages/rust/html/src/core/ops//usr/share/doc/packages/rust/html/src/core/prelude//usr/share/doc/packages/rust/html/src/core/ptr//usr/share/doc/packages/rust/html/src/core/slice//usr/share/doc/packages/rust/html/src/core/str//usr/share/doc/packages/rust/html/src/core/sync//usr/share/doc/packages/rust/html/src/core/task//usr/share/doc/packages/rust/html/src/core/unicode//usr/share/doc/packages/rust/html/src/core/up//usr/share/doc/packages/rust/html/src/core/up/stdarch//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/aarch64//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/aarch64/neon//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/acle//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/acle/barrier//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/acle/registers//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/arm//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/arm/neon//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/mips//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/mips/msa//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/nvptx//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/powerpc//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/powerpc64//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/wasm32//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/x86//usr/share/doc/packages/rust/html/src/core/up/stdarch/crates/core_arch/src/x86_64//usr/share/doc/packages/rust/html/src/proc_macro//usr/share/doc/packages/rust/html/src/proc_macro/bridge//usr/share/doc/packages/rust/html/src/std//usr/share/doc/packages/rust/html/src/std/collections//usr/share/doc/packages/rust/html/src/std/collections/hash//usr/share/doc/packages/rust/html/src/std/ffi//usr/share/doc/packages/rust/html/src/std/io//usr/share/doc/packages/rust/html/src/std/net//usr/share/doc/packages/rust/html/src/std/os//usr/share/doc/packages/rust/html/src/std/os/linux//usr/share/doc/packages/rust/html/src/std/os/raw//usr/share/doc/packages/rust/html/src/std/prelude//usr/share/doc/packages/rust/html/src/std/sync//usr/share/doc/packages/rust/html/src/std/sync/mpsc//usr/share/doc/packages/rust/html/src/std/sys//usr/share/doc/packages/rust/html/src/std/sys/unix//usr/share/doc/packages/rust/html/src/std/sys/unix/ext//usr/share/doc/packages/rust/html/src/std/sys/unix/process//usr/share/doc/packages/rust/html/src/std/sys/windows//usr/share/doc/packages/rust/html/src/std/sys/windows/ext//usr/share/doc/packages/rust/html/src/std/sys_common//usr/share/doc/packages/rust/html/src/std/thread//usr/share/doc/packages/rust/html/src/std/up//usr/share/doc/packages/rust/html/src/std/up/stdarch//usr/share/doc/packages/rust/html/src/std/up/stdarch/crates//usr/share/doc/packages/rust/html/src/std/up/stdarch/crates/std_detect//usr/share/doc/packages/rust/html/src/std/up/stdarch/crates/std_detect/src//usr/share/doc/packages/rust/html/src/std/up/stdarch/crates/std_detect/src/detect//usr/share/doc/packages/rust/html/src/std/up/stdarch/crates/std_detect/src/detect/os//usr/share/doc/packages/rust/html/src/test//usr/share/doc/packages/rust/html/src/test/formatters//usr/share/doc/packages/rust/html/src/test/helpers//usr/share/doc/packages/rust/html/std//usr/share/doc/packages/rust/html/std/alloc//usr/share/doc/packages/rust/html/std/any//usr/share/doc/packages/rust/html/std/array//usr/share/doc/packages/rust/html/std/ascii//usr/share/doc/packages/rust/html/std/backtrace//usr/share/doc/packages/rust/html/std/borrow//usr/share/doc/packages/rust/html/std/boxed//usr/share/doc/packages/rust/html/std/cell//usr/share/doc/packages/rust/html/std/char//usr/share/doc/packages/rust/html/std/clone//usr/share/doc/packages/rust/html/std/cmp//usr/share/doc/packages/rust/html/std/collections//usr/share/doc/packages/rust/html/std/collections/binary_heap//usr/share/doc/packages/rust/html/std/collections/btree_map//usr/share/doc/packages/rust/html/std/collections/btree_set//usr/share/doc/packages/rust/html/std/collections/hash//usr/share/doc/packages/rust/html/std/collections/hash/map//usr/share/doc/packages/rust/html/std/collections/hash/set//usr/share/doc/packages/rust/html/std/collections/hash_map//usr/share/doc/packages/rust/html/std/collections/hash_set//usr/share/doc/packages/rust/html/std/collections/linked_list//usr/share/doc/packages/rust/html/std/collections/vec_deque//usr/share/doc/packages/rust/html/std/convert//usr/share/doc/packages/rust/html/std/default//usr/share/doc/packages/rust/html/std/env//usr/share/doc/packages/rust/html/std/env/consts//usr/share/doc/packages/rust/html/std/error//usr/share/doc/packages/rust/html/std/f32//usr/share/doc/packages/rust/html/std/f32/consts//usr/share/doc/packages/rust/html/std/f64//usr/share/doc/packages/rust/html/std/f64/consts//usr/share/doc/packages/rust/html/std/ffi//usr/share/doc/packages/rust/html/std/ffi/c_str//usr/share/doc/packages/rust/html/std/ffi/os_str//usr/share/doc/packages/rust/html/std/fmt//usr/share/doc/packages/rust/html/std/fs//usr/share/doc/packages/rust/html/std/future//usr/share/doc/packages/rust/html/std/hash//usr/share/doc/packages/rust/html/std/hint//usr/share/doc/packages/rust/html/std/i128//usr/share/doc/packages/rust/html/std/i16//usr/share/doc/packages/rust/html/std/i32//usr/share/doc/packages/rust/html/std/i64//usr/share/doc/packages/rust/html/std/i8//usr/share/doc/packages/rust/html/std/intrinsics//usr/share/doc/packages/rust/html/std/io//usr/share/doc/packages/rust/html/std/io/buffered//usr/share/doc/packages/rust/html/std/io/cursor//usr/share/doc/packages/rust/html/std/io/error//usr/share/doc/packages/rust/html/std/io/prelude//usr/share/doc/packages/rust/html/std/io/stdio//usr/share/doc/packages/rust/html/std/io/util//usr/share/doc/packages/rust/html/std/isize//usr/share/doc/packages/rust/html/std/iter//usr/share/doc/packages/rust/html/std/marker//usr/share/doc/packages/rust/html/std/mem//usr/share/doc/packages/rust/html/std/net//usr/share/doc/packages/rust/html/std/net/addr//usr/share/doc/packages/rust/html/std/net/ip//usr/share/doc/packages/rust/html/std/net/parser//usr/share/doc/packages/rust/html/std/net/tcp//usr/share/doc/packages/rust/html/std/net/udp//usr/share/doc/packages/rust/html/std/num//usr/share/doc/packages/rust/html/std/ops//usr/share/doc/packages/rust/html/std/option//usr/share/doc/packages/rust/html/std/os//usr/share/doc/packages/rust/html/std/os/linux//usr/share/doc/packages/rust/html/std/os/linux/fs//usr/share/doc/packages/rust/html/std/os/linux/raw//usr/share/doc/packages/rust/html/std/os/linux/raw/arch//usr/share/doc/packages/rust/html/std/os/raw//usr/share/doc/packages/rust/html/std/os/unix//usr/share/doc/packages/rust/html/std/os/unix/ffi//usr/share/doc/packages/rust/html/std/os/unix/fs//usr/share/doc/packages/rust/html/std/os/unix/io//usr/share/doc/packages/rust/html/std/os/unix/net//usr/share/doc/packages/rust/html/std/os/unix/prelude//usr/share/doc/packages/rust/html/std/os/unix/process//usr/share/doc/packages/rust/html/std/os/unix/raw//usr/share/doc/packages/rust/html/std/os/unix/thread//usr/share/doc/packages/rust/html/std/os/windows//usr/share/doc/packages/rust/html/std/os/windows/ffi//usr/share/doc/packages/rust/html/std/os/windows/fs//usr/share/doc/packages/rust/html/std/os/windows/io//usr/share/doc/packages/rust/html/std/os/windows/prelude//usr/share/doc/packages/rust/html/std/os/windows/process//usr/share/doc/packages/rust/html/std/os/windows/raw//usr/share/doc/packages/rust/html/std/os/windows/thread//usr/share/doc/packages/rust/html/std/panic//usr/share/doc/packages/rust/html/std/panicking//usr/share/doc/packages/rust/html/std/path//usr/share/doc/packages/rust/html/std/pin//usr/share/doc/packages/rust/html/std/prelude//usr/share/doc/packages/rust/html/std/prelude/v1//usr/share/doc/packages/rust/html/std/prim_array//usr/share/doc/packages/rust/html/std/prim_bool//usr/share/doc/packages/rust/html/std/prim_char//usr/share/doc/packages/rust/html/std/prim_f32//usr/share/doc/packages/rust/html/std/prim_f64//usr/share/doc/packages/rust/html/std/prim_fn//usr/share/doc/packages/rust/html/std/prim_i128//usr/share/doc/packages/rust/html/std/prim_i16//usr/share/doc/packages/rust/html/std/prim_i32//usr/share/doc/packages/rust/html/std/prim_i64//usr/share/doc/packages/rust/html/std/prim_i8//usr/share/doc/packages/rust/html/std/prim_isize//usr/share/doc/packages/rust/html/std/prim_never//usr/share/doc/packages/rust/html/std/prim_pointer//usr/share/doc/packages/rust/html/std/prim_ref//usr/share/doc/packages/rust/html/std/prim_slice//usr/share/doc/packages/rust/html/std/prim_str//usr/share/doc/packages/rust/html/std/prim_tuple//usr/share/doc/packages/rust/html/std/prim_u128//usr/share/doc/packages/rust/html/std/prim_u16//usr/share/doc/packages/rust/html/std/prim_u32//usr/share/doc/packages/rust/html/std/prim_u64//usr/share/doc/packages/rust/html/std/prim_u8//usr/share/doc/packages/rust/html/std/prim_unit//usr/share/doc/packages/rust/html/std/prim_usize//usr/share/doc/packages/rust/html/std/primitive//usr/share/doc/packages/rust/html/std/process//usr/share/doc/packages/rust/html/std/ptr//usr/share/doc/packages/rust/html/std/raw//usr/share/doc/packages/rust/html/std/rc//usr/share/doc/packages/rust/html/std/result//usr/share/doc/packages/rust/html/std/slice//usr/share/doc/packages/rust/html/std/str//usr/share/doc/packages/rust/html/std/str/pattern//usr/share/doc/packages/rust/html/std/string//usr/share/doc/packages/rust/html/std/sync//usr/share/doc/packages/rust/html/std/sync/atomic//usr/share/doc/packages/rust/html/std/sync/barrier//usr/share/doc/packages/rust/html/std/sync/condvar//usr/share/doc/packages/rust/html/std/sync/mpsc//usr/share/doc/packages/rust/html/std/sync/mutex//usr/share/doc/packages/rust/html/std/sync/once//usr/share/doc/packages/rust/html/std/sync/rwlock//usr/share/doc/packages/rust/html/std/sys//usr/share/doc/packages/rust/html/std/sys/unix//usr/share/doc/packages/rust/html/std/sys/unix/ext//usr/share/doc/packages/rust/html/std/sys/unix/ext/ffi//usr/share/doc/packages/rust/html/std/sys/unix/ext/fs//usr/share/doc/packages/rust/html/std/sys/unix/ext/io//usr/share/doc/packages/rust/html/std/sys/unix/ext/net//usr/share/doc/packages/rust/html/std/sys/unix/ext/prelude//usr/share/doc/packages/rust/html/std/sys/unix/ext/process//usr/share/doc/packages/rust/html/std/sys/unix/ext/raw//usr/share/doc/packages/rust/html/std/sys/unix/ext/thread//usr/share/doc/packages/rust/html/std/sys/windows_ext//usr/share/doc/packages/rust/html/std/sys/windows_ext/ffi//usr/share/doc/packages/rust/html/std/sys/windows_ext/fs//usr/share/doc/packages/rust/html/std/sys/windows_ext/io//usr/share/doc/packages/rust/html/std/sys/windows_ext/prelude//usr/share/doc/packages/rust/html/std/sys/windows_ext/process//usr/share/doc/packages/rust/html/std/sys/windows_ext/raw//usr/share/doc/packages/rust/html/std/sys/windows_ext/thread//usr/share/doc/packages/rust/html/std/sys_common//usr/share/doc/packages/rust/html/std/sys_common/os_str_bytes//usr/share/doc/packages/rust/html/std/sys_common/poison//usr/share/doc/packages/rust/html/std/sys_common/wtf8//usr/share/doc/packages/rust/html/std/task//usr/share/doc/packages/rust/html/std/thread//usr/share/doc/packages/rust/html/std/thread/local//usr/share/doc/packages/rust/html/std/time//usr/share/doc/packages/rust/html/std/u128//usr/share/doc/packages/rust/html/std/u16//usr/share/doc/packages/rust/html/std/u32//usr/share/doc/packages/rust/html/std/u64//usr/share/doc/packages/rust/html/std/u8//usr/share/doc/packages/rust/html/std/usize//usr/share/doc/packages/rust/html/std/vec//usr/share/doc/packages/rust/html/test//usr/share/doc/packages/rust/html/test/bench//usr/share/doc/packages/rust/html/test/cli//usr/share/doc/packages/rust/html/test/console//usr/share/doc/packages/rust/html/test/helpers//usr/share/doc/packages/rust/html/test/helpers/metrics//usr/share/doc/packages/rust/html/test/options//usr/share/doc/packages/rust/html/test/stats//usr/share/doc/packages/rust/html/test/test//usr/share/doc/packages/rust/html/test/test_result//usr/share/doc/packages/rust/html/test/time//usr/share/doc/packages/rust/html/test/types//usr/share/doc/packages/rust/html/unstable-book//usr/share/doc/packages/rust/html/unstable-book/FontAwesome//usr/share/doc/packages/rust/html/unstable-book/FontAwesome/css//usr/share/doc/packages/rust/html/unstable-book/FontAwesome/fonts//usr/share/doc/packages/rust/html/unstable-book/compiler-flags//usr/share/doc/packages/rust/html/unstable-book/css//usr/share/doc/packages/rust/html/unstable-book/language-features//usr/share/doc/packages/rust/html/unstable-book/library-features/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:20132/SUSE_SLE-15-SP1_Update/5ff250bee21d2d97aa6e006f4d89ec41-rust.SUSE_SLE-15-SP1_Updatedrpmxz5s390x-suse-linux                                                 !                             "#$                                          %          &                                                                       '(                                                        )  *                                                                                                 ++ ++ +++++++++                            ,-./0        1                                                        2                                                                                                                       3      4   3                                                                                          +      ++                                                                                            + +++   ++++ +                 directoryASCII textWeb Open Font Format, TrueType, length 186824, version 0.0Web Open Font Format, TrueType, length 183268, version 0.0Web Open Font Format, TrueType, length 55472, version 0.0Web Open Font Format, TrueType, length 55360, version 0.0Web Open Font Format, TrueType, length 93248, version 2.10Web Open Font Format, TrueType, length 36200, version 1.10Web Open Font Format, TrueType, length 88596, version 2.10UTF-8 Unicode text, with very long linesHTML document, UTF-8 Unicode text, with very long linesHTML document, ASCII textUTF-8 Unicode text, with very long lines, with no line terminatorsASCII text, with no line terminatorsASCII text, with very long lines, with no line terminatorsASCII text, with very long linesTrueType Font data, 13 tables, 1st "FFTM", 24 names, MacintoshEmbedded OpenType (EOT), FontAwesome familySVG Scalable Vector Graphics imagesymbolic link to FontAwesome.ttfWeb Open Font Format, TrueType, length 98024, version 4.7Web Open Font Format (Version 2), TrueType, length 77160, version 4.459UTF-8 Unicode textPNG image data, 196 x 196, 8-bit/color RGBA, non-interlacedPNG image data, 1578 x 911, 8-bit/color RGBA, non-interlacedPNG image data, 2473 x 1096, 8-bit/color RGBA, non-interlacedPNG image data, 1616 x 790, 8-bit/color RGBA, non-interlacedPNG image data, 1584 x 1111, 8-bit/color RGBA, non-interlacedPNG image data, 372 x 320, 8-bit/color RGB, non-interlacedHTML document, ASCII text, with very long linesHTML document, UTF-8 Unicode textPNG image data, 1264 x 579, 8-bit/color RGBA, non-interlacedPNG image data, 1625 x 838, 8-bit/color RGBA, non-interlacedPNG image data, 306 x 275, 8-bit/color RGBA, non-interlacedPNG image data, 1628 x 962, 8-bit/color RGB, non-interlacedPNG image data, 2026 x 834, 8-bit/color RGB, non-interlacedsymbolic link to ../x86/_m_empty.v.htmlsymbolic link to ../x86/_mm_empty.v.htmlsymbolic link to ../../../arch/x86/_m_empty.v.htmlsymbolic link to ../../../arch/x86/_mm_empty.v.htmlsymbolic link to ../empty.v.htmlsymbolic link to sources/successors.v.htmlHTML document, UTF-8 Unicode text, with very long lines, with no line terminatorsSVG XML documentJPEG image data, progressive, precision 8, 720x477, frames 3PNG image data, 1629 x 927, 8-bit/color RGB, non-interlacedPNG image data, 1602 x 682, 8-bit/color RGB, non-interlacedJPEG image data, JFIF standard 1.01, resolution (DPI), density 300x300, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=5, xresolution=74, yresolution=82, resolutionunit=2, software=GIMP 2.10.6, datetime=2018:09:14 18:20:57], progressive, precision 8, 720x540, frames 3MS Windows icon resource - 4 icons, 196x196 withPNG image data, 196 x 196, 8-bit/color RGBA, non-interlaced, 32 bits/pixel, 48x48, 32 bits/pixelPNG image data, 128 x 128, 8-bit gray+alpha, non-interlacedsymbolic link to ../../core/iter/empty.v.htmlsymbolic link to ../../../core/iter/empty.v.htmlScϼ@mɻ~utf-853d265770ede1a3ddd7064200870615d3e7ed2fea06efce4b9372ef295620c7f?P7zXZ !t/]"k%]ׂeLO^r7!/z< QsJh_PWg&ϡ{`뿍/-NF\hQ}=h >4Xg}hYi,mov;i0|vUn`!Qvlo'KMϓeކ-捆;1؂LXq"AxQN y\9Qo~u"6 Rp+%t&N#A:yFRٸ9ms ,(gdSX1Y©bTdBY먈ECq{ iy ;EtD͎^#ƗcPimExR)Bw<U7_fnkMa#a֒3$OzŠtq*rs|A"!ƣ$%'B$tq򎏵481pVnڙ AjjkRFKO*6@ H 4{ͪlq|/ $b⣁kҴ!u\!4zʼeT$0cx69XWJ6k+Ӈў2fCLCX&[Ojˮ5#&n`zzv޳ U|D]Kf 5vmh@zώLz&'p}5!dc>xP/9t28t45A(ldfk.VvȪԷ'q*\N 6Iqî nMuu6xsplkBY&2!=:vtU^-tF_s->4,:4arӓ%ۀ-G}`K1m:.CCHGպ)M.n,7,Bkv f5Z|j[R*Q^ǩW̤۰lҋh8qv:Q2ezYYƯ1܏͝[{ĝ7H[;0Si%hEѦb,>LSmD&1 lC?TJ<8-tQ皧QiV +|arvg֛o;/ ŚlĐL:-Ruyw֩j-_UO;`w9^N3+-8 3DrnB@+5$ݰYp\0CD{|@^TV"K?x Cd,lN8>R\*!{1D_,pa,(Q5dU8vQot -ԃKScWM3 SAn-Xq^wAY`dWۊ^t^8Z"+mQL8ɸqmX2ob>_avǶ.Jʧ+閔NjKD#uXmvG{EM3UAZ`0Z M !nk(rh` kZ._a hT0[ :'#o^q{ʛ;A~)>}Dn3(Vs#<|3Z^gTJ{>w9q` b-J2T덶?nb{/66^@;yf7uV?A!R2J. P{ OGpu_v~HChffiP$Zt:|q4ux(޻-͚40./ ߆jÇ<( Yol$`{\$PS)Xl8g3M+ݠ0&Nc  4Z>Ϯ*aKɏ u=PPŝ7HFnj"Bf=,IS-+r1DVf1 t^{N`b`)6g?&C0-]^_gC] Eꈙ\k+noVJ EՍ]69nn)L7b'}"y⢆ݿKue"yxGS`&+n#F,Os4Yz(*%WH+,rd[0 m`{"F 62D1[b 0Wc3fx' !+=ȧv |5WoJ0{·{N:w{ *'B#~?I.ɕ!YstS|WHnڄ-(V7cuZʅ5[%P"ָCkvoJS\;r6gSn"Iٚ/u >ڄ}?lsر~QC6a~T-A}LiJ%KCfAIf"W$կDab=I=WjX}|{:UH}'a{ B֜o备=엽0J'w=îۮFiQ]*9Yɠߤ]q8(LPBuᢹ~'hvtd5~xP!]Eɇǽc^@o܅za<8=_6j/wνLϷFٛ YqcNꊈyaX_^ 8щE)\ ~$Hɑ.հ0LSgK[Z2Pu!>Aw5B1$b{Ֆ&~W iC\ LԦǢp)hgPF=,+}õ fg1 `va#e"/v6CwJmD(Yw6H\Q6,<'q+꽐>)N͚|X<wK*NxV\ݱ/m(b׃qohoX+ })M}/`+ԢU w n??u]2FпZϐՅ@~Gx:,_pg-ض;m1MVqEX<<䥬u92"kZfߓߥaLkpG0?<ݕ=Y NFkqx"{8J;6st4/&J =I#&|9k9g5R lIŞf$_ʇjпN',xP>9۫37 Y86W+ FCI:}wMG$&JR]!-N&l'8\V v>ر^1/ zG6rUQySgw6`tp{OK9k K?DEy#l3,[?T~7'xmrNҞx8]\Ja4.F6Wݥ4>uŠ._*sK[Ş\klO˭GIlðkD.ƈ`y&Z8#ªݿmՅ vª3U'7F\l8P:EcMVKώ@TSѮM5s)s3)96"ɐ*8a,}^;T^Ve }Sk;iDÔi6/u +Z_Y5(W̾ظ /Eg}sݝ+ZW P!"lpR}WgP'UQ+Dµ ToTPRLƧ?JHCAJm_y Xx,UH/c&2f uqq򽀀X@-=#i vjf%ErP5L fF p7T>x*4 e+g{~#9'gYdl7Bywv0p4jP;_$eZ*(vj +w&;qIV]~x.":\FP0Ӱ6/j;̜,M4QiKo 5Ýn8+UAz, ّƭ 016#!+pMLKA&"|u%)%*@s~b^3IJīh|UHSRWѼdxf$ɚ66G(X.BcPƂɠfOn7%Q% iLeŘXǀ%%͟Àl3ɡ~Ռ,{F3{(;KM^F,@LRPeKi򮒼F:jYE[3gc#lJwJJIgnvm2$Ѩ6Rr5,ФlM#k) #2 )@w-ٻ-UܸaYcCYU=RBpK6rǜKnJSl|c-SNCh ʠ7j5^_#nH4l* 򟧄妥w7\*;{㕅¸8 ,闐Z1ʼnBzӹ~L 2Xr`cjM5r4%nLk#^4EQހJpjo"{:ȓ! ے/I4tOqD|>R?-LDl+Ň˂sbAG?pNܳUJقx'J߬Kdo?,kM;-;5AIOjӎe'OTXӊm̪0 m_JK)9XMq5e@Evѿ BK?\dwk9!G8 ࿀gsۛ glCkȶYBD~/S^8j<)RS1zYdR*@P/Ǜ )1\X7-8j:ht7F9^.tLG"sa+V(VW䕮RaL7Cq9i9^ ƃ{$u[DCtv4X6m^%p://XB|4٘#9T)su"Pj鸘zTQ"Sġ~X(M)K]6"_k[4#0XK"eW*$(PݿFJ ,^4=vJ !D;pOom(7E g$8M~&{X wf|Ud]Nb2WD:9 +ZN4u&قxع0PUɉrt Œ=Eʅe@礳rA;c0a9Рm.YLlH&oc5+(lCReŏ瑁;dz(~1`8!&s].95 oj!6 -> G3"9Ĕ0Q]^*w51'Gg..=hckq,24\Wo$-c@SUY"c1I M{6{C텐" #?5 *o_ :ˊ1b _&$Xjq!ʢVƒMeg|MDn\&OSSӀHX\)F%926cGT{w6vuUD*fq4\9i'~{0k]Z/)u~tW)'@G_S95MAOY%6+?DjƦRuvuυeW&^܃da 9J(ziq&i\nlAawS&XT:vpWCw&b~rrjOyh@ 筋%u-cRPL9+0YvOW3o.nR;H0({g݊wOA p-ѠQ W8JpRht3蘔4TMtv(fu~O"fNWhg͋lw`QO86X1K5gqS8 H%\pDPi C֘,YaH.LqnsQh&!{T" ȻQlڵ+v.XX~]~<.kOF5:ʵ|_4pVi\ B~!1SM{<p| e'ZSn5D!E7gġw6@PM# vc:'{Ihwk[1ո~% _pEUdr 'Ew 19Ϭ/ͥno{J VpwU䍜k@wCy;@| }7B6ھ`kD}+"\?ZGU1%k[n(.x])}QiHYi+c+hk_܄K܄dƴ"ϳ y_c+]FD|05HXj &I= Zp ]9"A-!i }@Ӷ߻s\}=9ӕ|h^=#>@@AğG4lly;rX-οXs:Z^gDxͳo5Ka~BFz2("KMw7k\T9 -$Dnd  ,ɖK l0il/ߤßUn~}cb01{ɑ5n!A126=ͼ$[M4C:(Y݀! KX84-辰m g$3[m0&E+vwO $(/zxI\qO k PRLnlD۳bHd+I)-b`ʒ! Uhg$xN 4Gd_w0Y!F),7t,,+*xD-ae]#4ܲ$qs+VOJK yc>/ெM(Lh,kՀ )fxiI9P]0%96jujWT[RS}#'$=z@rWQCy^K،M6ڦ1.sL,jW5W:c}:O) JlF*q:$X-&N7'^o ,HU>v9M$[7j(ndDM(eR(0rcU#-Ԩc= 'ϕvqbVlp# {?8 yN H] ]*:ĉikTP(5NkʲR_,UiX[wi4ӠA湶p9ϝ h<= UyTFTd]H n $9J8dXu)gƩ3(!} rݨȢc&X+rPߘ3s ra]S1 H+ZsߔaPix:0S`$qOjNϨ<(5#U6~k&Qw}RI.d oi {4K2<](J4Ɂ4{Vaz L{P\]]-QWTJ6|")oaq[(87)Om8P!3?ϱm /^`d0z&iZ!`#Hs`}-hꊍlYUH z|tɊR/(JȄcH3%`2c7#Yty6O`+TB*sx'<3V[kNGj"*'=iٝo'D[]c]]f%T˴dɄ"{\4w66;bņRpCGS&$,-̿jSLOk*@ sXS݄gz0gL^C[Q<56y0kU@ȇġ=_EBp>*k U"O7w;U43q#v5X?ԼǮ=sc3 5{;ƉJ/Nx<'qF-_f%l/nE # 0o3[|;Usz}05UJuSꤗ0B!~ St:VUt%I(厄GcT gV:#'.&\BKuA> xRx4hsGL0|)jVLE ņFHp)%/~ll±I5vy>/^kW4î!#b"TMД*NqGlB?HWWznwjz$bKHN<1}렶aGURZBػ#r7Ӫ] O 8~4V4պʗE6Z/q(z)'2|;d/Gi%,.zz)%l|#`mb 8 e_PgDZ;YS /tpI)oX攴WvAxЋGGxO@GZ zt:\7;l9#C5. BsbKr@(%[Bkp6hYs[iu_=a[6iskjv=ES (ip=_E mC~ IkeC4_v҂kOAv!"y_YT{{SOa¾:SY7%Zy3U^I 7}J"ce5,tװ=;^[DTe4[ + mL:z:*E8Jft--7ߚܷR$%l =!_Hqvx+JOڥ#2AfxPd]{d"[8$Q:r^l x7Zm[幊X^ Hz$l~<#ϡ )b_v\onE-=IJ65#c rz˿q6pZb:1/1KV^9@)Y}ϰzlln!}KP* %fkyL;2֠­^V>ξ/enHj .[!_.lPW0xRtZ)ő8 8T.ޘYrag6TLg_nϐv&u>E;Y9rC{LЅ,/8̇u/y$8zgҴ;h6vBVeu}un@=Edz/7'L]vFy }ACX?D_Jİ߷o\+RGGUM d84v zll/dF^iR:oOeWL5 OS׏;oìgbBP 0aݹfy@@EB`FuD#J3o>$;OKm2Ӷ4hMo .W+5M< /$d! OfFsC|>d6\%>^۲nsC +^>/TN;% ky)#f cJ␝U[y :0fUc2 "\gV{X}V ]P%f\@Ҹ@}xRGQJf!H>}ْeMl0%2m4P=AQk3y2+Gvj~IYC'TG`&Z3"Mk o74AxGEC-LϴkS X.$|iK, A‚eZبY|DTͣ'w >ljЃMTiyl|ۧ^hi,mG_JDŠIq"4?BWo]9.\bRM`V 2w=;E;Џ]?+ג>FWjf+Wɷ4`{1˥ sK MHs;9ϵU H'ЩVZ^^^k ۉp)Nt51\694]/Gw抈 ႘y=ذ PqûI0sFPy7i-K^IaXH q&r G P 4 ,'xPЖue5bl.{RS ?psU$iLGvsk,̸al(=],nlms=mU0jx!t@kXs8%Bwկ#5.xsR;yF)v q$~ce7&00CS=H>]'P55&1@Z*/-ĺMMrrߴ*)TI״`svĞ@jvգI4XʱEtcs?!UԮ?wA _(@@lP.z{kR,s7'ۇj(X[5Lp3-bmKxt]hKWyf w,sJ~V*hV^3- v#5c純w ;^U^YMtY)W *Bl!gO+T%AٹvTNQ/nlZ؃>OCi,/B.)5k.pɕd!d${]OD)r[Q@si TC(n29ol_~|[M-SCp\XQ8]^BPv1\&DdUcpU ROTmpSlIl7_oP֟+4f*P݃v:ʾ݊ Rn󤐠W'_қyAE1 CBLH,+<<^EX'f?rnTHPmlzHXkqA<5UIZ˜pOqE^M = _ Cz<_6 ?w1~F,.{X8I/'/SH!u?yvKq|p $+2:d'+ "q4_buS#_0YU\6|Mq{*[fpEro9Ŷ"Hٶ,#)=,7HSLD@ srQDi}5Sb*"{{Ϥ\I@ Dp?an?lǙPO@₵1B`J˯a]a5Mc~ΥIGd7H-yk/7O'8$CNĦrGrIT ehֺ3/ݚkfIBN-[3!oFVbϚ{Cv,m}d 1n3@@p i]q^nF+Y}.\6 tPS,ϰ4:-No/*csUդڴb>hZސ@v{=Y&ȍUWz E/7^DVe@XKq.HcK1鏑6܆[ZH3O65D"OQI"dkH8B\&W0tui<;XͶ'[HYk ܚZt? KHR++e^C`Ԇ?E*`@:kaj|.'8rFcP9 ~/ 摗ίۡ~A[UNcB!N5vE'L-0សn*t8 géՑ>@u$mW58VCbf2'!.4<mY3{xay]gƠt | A9 77(dt%oպ߈J - Ƨ1|SfRte(mG6n~K]ۇ!@yugRZ ࡜p9Ϣf(ӔA~X@*z<C2@ Jz:T&ʵs|{qg pKk4B}\>ﭵgoڢXQok`GYV/P(`E/ʪقm)Y#6:ۦ{-t JXHJWܱ *$s]tGLڢ"h: 43$Q],0y(%hnD8Gm{͢ Oӛwb*pVtjJl*\ﵗz"&,_$_-YnaD䗄_\sO S ž$a"C"SrJ$]yPu %3xP0;)p>38DkY :-̢P簃q'V>*Z2~m~7,4zݘY觡8FΜlv <7A@L^_i" 58s\;A^ecrv6]Rn@O^_L CX @oiD:Ox3ӫ? K#2e|؅%b~U}yޡ X* ~}%نVݿG¹4u ujm$a%w8S8d#o$ikACE74`$λ`AqJ̼{θ2 )-l9HѡvI \94g8dX| -hKKNj#^-C9*õ~\qi(lTA)`a9p>RhS-&j#??8+Hkhzȁ$ۙ=qXO+RRK}0^|*!* }ya aK*;FoW1F,KOЉʯ*^/1Uh@AkqsQ<7eiCv,GߺumJ-6#U, |3RMQ+%{T傧zQY5=LLi/ͷFFE;*.(pK_Wv$3v@4r]GNű9nnS$eq.Y0Ԛl>{^qp̭VU=#"I((Xjىj0WvX2h2x׵^ͻãW@aIa[5_N*FW6$O^+1Ml* u=;zzMGh]Ӫ:tGWa,LzO3x7Y?yY\ OEXD}{.mb2t@)8UNҤQ"킰 `yi»g=l{pl^SiywBj][j*(/YZ/ n0R# ,e {$hiY_W|j@nG56ma~:i%5Mƹ?XvЙ>lNY]J`u-;Z- #v7 P&],`e=hZ&JK2=3iɼTS9;q6G%h^Q;K oiN!I/J|˅wSh?Ӽۀc?Ya-&Ru'i~*s,^v;rv3QL@9|ʨW #WV`.͋^`R. ^ڙ"t}nj|T;9XꐠXVAN^E/_wBF̰B@TT 7_8}?U=0g%A|ġIӲ[IrHscQo0oDq|*CWN7sFbl, (t/IӠ+(ԅX8KAŨnhV3Mӂ ݀Gε~D)mC ;4ؓrēMX*nN '*wτZnj D=3h*rn;uknw}}V& 0kDI'7:> c1V0~is3`8zgob&U* 6&7tRyP:5f-AEh>& p%_' e#`hWx@6_~n0!nii=NII ːe-Ml4Xc^[r9i)qX $^ CSc_+Yzʥ^vetHd5#A4' oRbXo=fI~j9+=NP! ,nT={T]]N[}m6 $ *N$]g͆†jPQd`^n0[ dF{drW); A0:yv=[]7O^u5qa;-ՓHסH<={'/ȸ?Bw/d=_/pvut8b𓗒,cu_z-rwFH{UѹEH1MgpɤaU%+ ЅFŊ&9z }ORߢ6;.TWݡ~'O9qBB.Hq~ʙ#5fs!Db ݩLA@nAL-J~zJi7@Wak4KkG#f0zD_u6g_?m֟lx1t`*@[B6w[0KIy'iD& g5H7_%h_8+:w% 1tmzqW}#!oxOD6痳|-cġ}YfĘ]+t-f]f}R^5':8C棷%0Rg<=e ޟ mL$qtDo LDb7y2t1'/?LLvKA%-'g'1;nĩv.3튙,SJ2/ Ĕh?Jbb WXxj/A(rgݧ]WӰaV*x¬"h*2hLW"SfUجlߚMH30MϊÝ)-AH%WɧI?iZ(?|*P-'e'ne}\y{VhȴIU|:er|" s:rE3Nc{y3IO:' Dž^+f\*˯~(q]t[71G~ۑMta/(bpё@ /ĮaW2a'_d%uثغF[ A`E_"^UT}uu}h&Y|/>};C{\LO&}ITJa;fm)_d|cB.u#4+D0c*gZ " d}Om8mSxr. #C9GAML}]tfKp^F8\2R|ǀv<@2^~_3OO߆.ys'*N(Ҹ<&opw~^ć$+fy0(GR20gM _ӡA\i='U3Ә=RV n䅼Y>ӜWxR̝!E蒪$& [ j fmV]1*{H ))̾a#hJ(Ȭiv{ےt1.nF-ԽҸ%JJ-e4˭@HfsՑK6vle:Z;qp2`J (独bmNCl8?h+6;Be%+kog'cVF#%s*1|Od9?/1}+l a8J\~bBvネBx+|uX`NTr$Iʂa[PL<5bliŔ&O܇M怷oЋ_$TW`Cl INo_3ۭ-d7[@r; _ufN'[8~ ̟Q1ew]㋡m[s@Ϡ!~nv:$,<_`s0T4OAǂk@["f'ƝD*c\SIMe_JcBrwfb0"րET'=17e}$딓pyUOR?|}UI#^|~6vAX4oWg>.q13|tKu2DMMu.q>pu|󙩥c}IEo; .bG-tm8٦"gd[%0LΆUB~LFK"?fQ7 v2$t0:lWHp>$kRQeAȳORHgVazxw%ר@%A}K rTQD9/XiNk觀b_s x,C\բ4s)o Cӗ-"O-˙sե, ʕߌ&(wU@nfcM0Pǣ]rm0YLw*QEv=Ka+.]1٥Ag[8Y |mb %ͿE2&Ejv%ʊDBAs΂[1id= Ś[aӍ/*YHUFwWiT2Po=S]B jkҔRrs0w7=]5 yܚnTT4IhhP9vK 7#xcQ/gaJ)e? \GD|5LoVϤ3ŝ4?lTbgWsퟯdt訇M/WӢS} %;+ dh"0L'(ij_" ҼgTEKXU"Jygn,{a}Zܭif)_h?DX& lXqomKgmǦ-<ʆ#:H 2A?Unu%*ɞUuʷ8l_٬Y(ٟ9Ǚ+b/+rv)oj4[o]#.b$Х˫[M?[.U泥i<'ZġH,R( ;"f唑+ ;*n lWx4,y>i߿boEjQ>&xGA(Q~ZQ!.稤zn`jRU|2Z |rZ?w#pwPD$yw99'tyD YFOlicD5gu\5 s=˜jtmQTq?H^8ey[ k+}_RS=Z-nJU~=L)Gni:|?̈f!"yaw2y_z,1OSɈ%C]y?3m jؤxe2cWje(5{Q 5ŧjpΞ8}=3WpgEֶF\BTWҬ][kD=۬6+bQ& ĝQ'q~s>DP^&ٚqU%Y\EE"up 'Cai)HIvՙjJ 1+5d{e`~Dtb]E9P9$dYTвDy;k[U:-_΋ǰh& <+MK:sw,|K^ }dX jV!e?A[KHN qQ5K@펢͎ߦߪ"\RGҎ?}:jܾECI$ P+ LFGzwIֵ |.JXlbO&toIY4(+?xsgSq*/)#)D[RI(۴"5O7Oػ}1iPuWͺOQ o6;)9ɥ.5#q g nV_Q2Z/: =Bwk!K멛P?ɧ_yU@:p(- jp5$݌jګ C,l3>jDy@88kN-_ֳSmHgõeJZ)ږB"Ct3`Kd  xS?BY)JD K舥qu Zd2EA}-{hU]+xNqѦxrK7| F0kyMWjX}vW&] M^f+^{0kU):ѫưԹYkcP}G*~bn߈Xj[Unso"6*N(Km5:"=DzBF˘8numsSqr  Sb yG0Udt-K -AU{HQ2P@!vcrC`4L,4'7}Č1sQ~ & ]`;VrؚW`,L`boQI1i ߝ upX#3N 1QEO8;3glځ/6U;|l}úx[~)G 4M)7ow ZD؃7}? D1YDlhS{RSEe yV j2/ӥxE DՂ-뵯+E)NxIY@HkZ L!%Λ:`S0K8,5ĵRxMĔA oMο"S%"sb9BWn ;'wRN pȾN]|&1 Fj1ѱ=$q~u$iE`ehY2Anb?KT &F;O!Fq F'<,p< mHܥ#0hn[a+(HݻhM_IYokxuWS{}NFj{4@G&S W3=+뀹F9I ìF7~p;'H:jDBC\dddzwؼ/}jg;2'D,_[uߎ\&|-Eڎ~Nyy@5\rc8E%\{f~kݖqb*J;L%Iq=y1Տ+T|S|rf)T(szۂi. 5waHL+V8by*M1(AԨeR>( Xy7#;vU6h#HmNlr[oޒ)M#r v+A =O4)O#/8֪Βq%~ "jCweOï;.S~\UIqd5t8 ~),C kCYa GuXz"3ְ+, fyTlk03\'VPC}׳n[ yU*j87Ķ nț P՚޲ ½"Ukin!@0Í =Y î~6YcƗaJB#i(ɗ=#=Qy/z鄞 jVC"?y]?Z-]՚[efސ )OUlFe%`|pJ,xD;J'等t3K,YdOc?5C٬ueF4:錤I+Ʊ5$.xlVD@_?k֋uF& ,Hũk5ҡӶ|-A\g5dci+c!%o3YP&HGlǑK5,nNޚy CteL6dĻɽ8QǐiI+h\gRc߹ K* Ϸ@'89Wf-q4e>Ƞ U&ٞm+I>$%,<7{x{C% wwL&И}dZ5J  Hыё2/{r3iM`qb&ffYJ(YЫb(lFwQrXeRb'fept9wĭ<:= a>ME~Rm:@#Mey$I!+ a ᪁hpK g!Cu pN$`)2d4iD=kvN{67pM9+ux=r 1!i7 < +acV깗 6⯻|s[`k={u)]ƶT ͐5xvM.51 K&?t6Őj4sPiRxVs7aqG)ClH'힃XHi09* T 3Aܧu+M[ɪvyD QJ?XT!Qo^9T' &YWCx;sn T1M}jovx~x;#)*`[blq{Ybҁ}_F"CW6b4QϸQP Y$l-It\[x)fҷɴQ0jw5}3s$ wg8( 3rJQxuՀ9M,l>Ϣ@LDLY=V(6Q}ѺC,jsϲ ^ O{4ٕ#6ǖ;%Տ[Wl{KSgChChSArY`x\u,?8KTێ0'&' !HhZ@E hj~ [K1Qk.3% jdZTζ, VtVahBZ{[E*U- "{<7=XDo; ๕yy J Ƒ݂ZEf)[7g߯&QgaL` Rj܆ b Q~Sׄ\xdy9"*?Nq²FkίfmqJYxVX&UNTƴQ^=CjDK1N`64N-F Odvb9"SArq*ebՄ_OYԠ.ԍQuhCKp`Qaݑ4ZZ*߃<]:EĦiSF Epr~"}Q&uXsʼI#挓b:z"WJshWKh+ym8gBGW/eq(&lEsq_5h1=21: >|)SWL``7h; em4HI̿Y[0pEnQԟ4̈́L2sDŽX/N'Ϧd<s ̺4'~cjY=iDz`kV9 H:^/v355(_G<ALA+[ nQI>D@ZvQ; zx' az"X1([|wAPd?3},[q!2´\wavmQZ?ܠ+,#nqmCpZR=~gwdьe[AVK-t}VDI1Q̤vj{ RƓߙՌ%O3^MN=HSw}9-pHEai]r'PJ61WJ=NE p {՟zHi cҢh A8X:]U8T 8C Pf[߭bWFT6h- iqY6q6}jchݟ;Ǐ5mBf^\L_:Vr?WajաUZ2#u FuOfCB gHB9~O77lqUvhc[^NqOB47| ^A` ٓL Jw kr׉œG\*XDl ~çQyaE {e4Sb31e{[`d4o# [?'ȟ(&Pm/,>.uzw{ 4FHAg}Cv]Unuyiѿ? cUWD !G"?KŻ*Î9R"aۭL\$V <$L^Fo^q HٶQZi3gR=lz\R񡺆}՚agԥظG_L"3? E/upBˉi9ВxjͿ@BŹշap]u $-Jxb\WyAiFd·]$LPOTC>H=|bPJY! q}y!3nkh €MEP~3YX!abH _En6,J˕=9-@Dխy* 1dvbwYQ} eD}W8mp:zݘb擏>FN05kxw_EQb;ZGuIrQ鈥Znj>""3+|"hws0ޮ˿+)ZbroThc,cZRO}줷\i3)ـ !vƠҬa$8r%Tܶ^==F0}d]kˇ<,*&:ibC}ZKߎ 6{pmD]<|^lsM \&HZ=eIsG9Κ2-32X7pWy+co&BD3N(2(lX)6{CcOuKW3ukΤN A2 D꿬.㴼94w|nZcZ?*'M= Fa (Yy=~y];sJ$A S C # n=0}Vw|UaqPL ,tR vuB+TշItsB)bil=Һxj!ThoCټHtGk.@@>I3Z_|Nϛ(4W K%\<15EyWtuKFP^|G)6J0oO8c4FZg ^B0I[#?瀲ĝ %ۂD~},| `c bqpĵp*<  ]%䀒ҭ[Yo*[{&wf/v&oz?XhDmT-0lKKv]HY_Ez0x8X ȶi) !fa.7~Qo큳sËG?C\CS!nM (k`/Ds̡RCftI MdK`R6.՜EOb7,0/HW~ o#2x–*_@,gp H)T2SkXp04Fv ;/cR龫Ue0|J|9&y@FHseGqh|5,Ef 6fjFn;vtU^ |VpZ.bf֐9x-EIׇXj1[$Y޿hS3I76=͇|f S[ wuDUɣ&%M8Ua! 3w $aB  ]{YeCU(ݕl6$ UF: a>QrN"_oվg :Մk^\C=+[/|Le9}?E}X}U@$`lbU_oZl vt39:*ɺ)E<1g1 D90eG2S;:dNShwbs &h&V[l>BIAU lPa*|b8v|$$y_&몽;$Xzt-?1$NF$PL#7G!0yeE>i]p6.:o_vm՝zrmraJsH 7NVEtRO3ɶGZ6&XW0[O"Y-v2|ضnr  խ*ZcJ ׌Xnem#S0Uߍb >tꗮx#,r8nP无2ƕdյ gn)yaLdMa$"nNS{퍁u8L MoQ=uGD1c3Qq>+Y r[K9zOQ3} ЗL*]4UCrUK^ʆrMn; hU9q<矄ݧOɺ*OQJ٩53BQ=[6YO0oGC4a,612T" @PXkuw?. 5t_&Y!Ν7I a&IُIX:* NzhN2Δ\{Bph&F)2Y3hM M?c4au O7yQpW:F}P)D*1Z|?e[P$6٦ł5a5l4x@"ʛrK_,LD ;ûwpGO[Vwc-Y/Ly\k a&Wm[&`p@FsDguMV'AKL;WyT^LέZ"͘[#6n16^s3BC>&Vrȸ#T8ӻ>g`RIK HG&GM# TJd(C&`-Om'ROrM39:@_{L͒< cPCBn-^uvf)5:e+n 5,@HVF J"38E 6aILtָI|2:Q- aЛxu?b㳯|C{s˃26 ~BQswv#5LcDȍWu/M,s47A.7ܫ;BrA:Y,6SWc ~:sjwW 2>m/-(Y4 ?ܧg~}[jⓐ &LsF5VI7 732rIZ'rՒ -"}Wj皨P6F9TvNүt흨:*mYKPd, Ont?ٯ֗&9),GԜ\Rj+ь;oq6<Ӈ$INژfNP?(w0_C$LhSa=ٝey̓17Oؐ7endV#zC8X/a漒7z=I_Eꑪ;/&| `c+n:@cΑD!8If(E`{"D4 h¼ޙC{RYf@Y#$BJB~ <CY]KHAԽIґEt0@"hfecv*w:3"Jݓ(iSG3QP½Q,K)ΖN.ljϘ'礽1b{,Irۋ u-#-^ǀ>{9ucaPl3%0p$o>U>'ΒFUSX gtVO}ElȋwYē]wC,#To;8~>9y<~}&)đ🲅e~*8 ~b6 ]w&L^71tCbf[9sqGMvxH6y7ZX fe_hN (j~u‘Fos,SOo2<ŊTCP5aEZ Q)'W+b=!7$`!|}u ' /n!~aYQ#Գ$%H[ ( fXo(G(w v7xWLD\W h*7mjAi4ԁ(wBֻ7.8e)`g2rkVxQ ˫ǖ΂rQ`_!]X/)Ç J2ї-(E_M#f{8Ud@9_\12eHXJo ww!hG0c ~HnTض94j ׆ԆDBGk$ҙ]9w'[.f)sb gi|]^R3ݚD P7+2iA2l)b%S(QvsHIQŚ ޿9e=-V%6̦xmsotbait@>$Za!H=t^T_zLGe|] A[Z!NZH-{6&@?ZǁnHT۳TjNG~ѩVSop,_X^JYd}sPHr5rekGL!i4w%jnUr Ol(iU~s .Fq[jJ̸mJEO$}qمpb88'ҹu"W@6^F/ec˫HUۛU\u0#e R:[ kt+#imBV~#fFݗ9TxP*-2v+l+Y2gy'a<+J *s 4!6zϏ"5ј,xUz<8qt+׭(~_{Q)@|hybj!xlNȨa%Nn8}"KM/ '  ᾨdi󱥌`ΔxђWv+ ŵ]:>HHgʩO޾CD<V{\'}4%[Gxsj?p'[Jw> 3:tYZ27/ZtZs$fU(ލ8Ua$tU ,صD{[vm҅uܘx1-;nP7牔}5"/欘񫼎=Yܥ^zU2<$U1ˇ2|d[>Yo7'31O00F Mbfω\K1ﰦ-6=e e1E~Z(__K%~ liS*# M=&64J'b#edkϏ,E8"G=>~)T^&Ѐ`.%cf.H1:##gD"AS0̲i9+aV|7xvJg2( iRTBCEm]OCKVFHC:Вna#d,ZmdؼHWEKݴRa6){fK<"3Y{_6x.rI<ؾ%v :&^2A3Id;xv3D;Y:{TCtM:J|մbƶZ:~jy%v`Vj`兓HO%Kgy\Y*;jb"&*s*(Jр@3⛬B_Ŭ$x}% Npy>LOȾ&w[ig܂@I,j" Uw?SJk [U4kxջp󂾙R!$mtw~_iĔ(! !8ޮZ!bNQvC}h3n3c28,WT*t]wyg_yF[~_]$e$C0(=BLx"pA?H*}:=ؿsn:SUk,YdVePy}k@ҋEՆI^,(4Ko4CwY^֥p:j`lr}(,H=zD)r묖"K^5|" ftU2 O1F>Qn1 ̐ȍJ3la9H(Y bNP.t.!S@,L#IZ!`,7XZ+jraiAGFG)Fn(D}t#X2d`\?x:Y0Sg%|iM 0e&}a6Ԕrjd&AD&@s0H|j8M]ѯ' 1UmEnjrHɴ6HWFae2ZRz]{0\@#Pzp D3Oò3 ̶z׺s{yJn3jwDwH=#N<~'Y>Ӷ;} _b@ՄJ_XCne'X2t#mfNSƉ/2_[T˯/ BY=nJ |\8!$Xay$ (JKgǀgdclAH_%>lTZj0p\|aL)c}B> iL6dzDBoLNM&  UX,ʱlcïtH֡tUHgM{2jp D{.<]_c=H/Q\{8+՞`w@ P>ѾEߧcc*_\Xa6?YlIv0 ?ͱ} .pUwrvbX7۶߱pDR}%q~ (h#t`@Ğr]ISw˅LRMA(< 4ܰ. {DJ@776R9WjX(T)48BM {O4 'wM1\ [Vp0V|ڼ/>:`kkcm PlY@ko: =uŌ5у!=<1ޭ|: IA2@v@ˡ(vz\@',rQSFjOvk/H ɶ5`M.F:~='$"a;.ɺʓw`G:uK AP()CЂN^WXOo}҂)~9(BMl,xI&b1piOgLy3m#iko@u gYa|Kf!7EƘ.jEZ E!|8)f"QgQJb7UQE+$)3)Wa@jAEJWquZܳM93Ɨ޻L]$o4{ܪ>KIYG_:N+[^T}lN|:%Mu׶`m7}l/\6ikDKfs[HOфxszbh|- ˽׌];-6|v%Ezǥ`UVZKR)©>o Gؤq gpt[;)폍߹كL ",%a+"d:TDIkas8%NW $ܤ,d׆cV;|GX.ڤOGaȷ("ϕ- 9;5=%\hw0GƐc7W*#IRm'ȊX*ƝS!&.9HOL@15{|~txӑ:ЗVAol==C2i5y~4vXeD8""_@ k\bks}U~Q pc-JwgSzXз.7)e.]~9cvz\cp!_PC2L,7%r{1==TuÍ {=1]}~ E/鯤RDxJzuT)BѭK΍#' /SNfoWxFjy%7K.=B7_}p+2?W4hjދ'#$.Ժ F9."@N7M7{飿7(Ȗ%N<)^ڵ׍i$_ءӂ3s,k3.OȘa \ Y/KWu>sOi8))JiAFkJ`r/k !~߼^M-@X0ns2yJ CRL80O >ḛ_ ږ%齚05~#hgi,ED_=TnE YB;L?˅3ڸ3,rnl?7K@80@a'x,!ǧ1KvWr[|iq7 F|WF(A8\^`t aT}rY>> 85*vd.&DP؃U2T>1.Qx;}M`1nרە.3’44,vm"qlyrUUy{%< .fD=pIhlCt\72EX4APRߟz i!Bo,Q ԎB)X9TPY MD] ~KwqdKkD1ob[2:]R4.Wa? =_^DV[7`[Aq,}t]C%hh/@H=տ0dm9HЧ|!yaR`*;!-G#{yb!ٶ]-\ta[ .h *L錜Φrhn2'*郏rW7 `NqvyDNW`ɳNK%xI .}n[>_(,QXJT@jTYL/x~D}H$cVS/ . tWao?%agm:(ZXЇi0X?T uA;[%&&Js%҃1S*XLX!Xgr`p%/q2Ŝ́~fc#ƣ@y¸]Ӏ0ls,"p?,Y|SlU] q&ΑG6HQT6W=m,^ؓfs,-Gd49̑&>?еӌ{.gh I1Ly_z2<p%՛uIOq4=_~+)n^Qo7d Q*J[j,/1[lMmRm"#GԈH\<bAp},@ފ$Cco=n VxTdZKuFc>UoŸ!gMImC'}( _DzÃ$mfRn zI݋!̊4@?YuW3 ‚1,^Ī?fJs%FB<0Jk< G>n; ;b jԃ1 .մ*RnHEZyFׄg7to7Ov 0<3 ʫ4ȞQ&v7H>f=?zKQHZ4yk /}[&n0Ps;׳[LxwTt\ %!_G9_Gj9/IӥЬ&CQQ(uw5qѢ{ D4z#l_mK,0$v,kLn,+(Hiom=WvuU@fx53]E[(P6FA$WVwrne"u:*tw}r 1zdOe<*v0w[0:\g<* 0 %giyjVlB ]ZdF8(Dgzη,1y6F8*<6O;.P?DZ~?̝CFb€/"!cv_3i%+oƿh~'B(/h*NJ/ZJ5b6jm^UY+bAAu "AQ#ى>lEyςP!_@c kTمiNXI\?QM(NIGo(V/w(.d}U%bU?4E'zU9tR3s=;r/yD W±E05])e庌\4@B,lN7}mÔ]}R#MTAΜM֣1wLoZND$:+Z~5 hXVLyamdߗabo >BMpeb d}з߫7֭%NyoGr^:#n ?)`;LtLd$;57kf!q pvnaG 78N5%J>EH".(6iQ?Oe`壪k3e޺&w)-C}@.ē|^pE1r=8R'[>J'W͏M?y~i.)ǽpxlO'U@`ܲ|'U|^J.QdO]PucN:LguY'R28/ s[A/$G\.rh#i'dyQ)Yi }zsp٫JRDvbN= Z2k=u,Q"L˧aeU*Kj쟰ז_B^s-7ֵE)I=uVS}Ļ=WdE)آM:ёxΝ٣>4y?| ֬vOUF౮g6Mg뫣!nتiV@]\Բ#jp$z6"R*qPĮB%ZvBNl;xeaaд#ٞ8#-cZ4%$Uc~QrPIb2tpiŸFمhN264tHTÑPh`KPod"+Yvva[M.:m|0K~9n>q>_p7ƾ:Ll` uTdžv&}т4h+,GÓF AQ# a hj\,5MN/NPP3]:HLHpaB¶/>-"lztGɰiPI]Dn*G({}$2'D}sM}#Tʳ|y: 5|ffb4>İ<VB;gjUk53_aFe5d/`ບ(٩q'},:VQ oLa'0΂H LK) ՒSV`0טx66EB_W! o{K. iQ`3BaSVJ Fb]VNqtPN%rYݎ"#g%EȞJg:sy/ۆS)Sx)3<@or2LB'kOA-'r[gD8('Qצs 84LB9q0 DI ?Gh\gz˹qH .ح+ԠyR:kDʤWgK[ */cBAH2ϵu{1xe9j0`LK?Blt/a<"]o(ˋRC6[.NЂw5Q^,.-!R+]1ֵٞdY^9OWSm,~ֱ=xz1RJEpSc2E`ETM ϤW7ITAԤ&%eq݃ZtCN}q%DSd:g|Asq+W/y!@VȳdMirx*C ?͌CgvjFرѮe+Rr-~c8Z [diE0"|3a>.F$7$YN:=O*\_Cx(Gfq-Zkk* G@cˇ> ȖL2wp&r+ ~E"Yl𝁝F =Vx/2o;fO9E{ŒrPDGN b''0|߶u*d ۦW*qtfMV*dVaӬr>Kk?[%M08h+ PN''mhޡy4uV(nhZ hU'qm?7 %B(|%)zF"'*,Q?r 2$CsM2z`>HDzsћڢ f1 ]OԉNTYL=eh| */:Oͩ=K#5ϭ 40'ùM*R&އ1՛mW8;.&oGb%\Ԝkf+{Kuh܃5 mknObj%fq&B} MvV#Q1*+z(𥖞BR<,>^RwSÝDB?5cYm}jOv#+ߋоQ\S'

iKR) / '/dRBS=W!2ŖA.P y?멍݇ MqXbD%#&⟸WNuճrwMU71qXx3iYl(>f &}M ,(+\bOZ> ;IH~tda8/%I_ ~-$}t|s{j&baغT퓃&x#wV'r5dA\r% ա(Kߴcȵ(&FHIõHBp@-U~1Qօ륷'?vר N[c{񶲥Q vZ}lc +P!0EJ'㌮ʊBFM01 Ӓ3 ԋD$`ө6qC WEb hFMƤ!K iHHYZja&f,@Pz-ѐ&RBK|#Nl̥|;$^lQ8 -Y +.,״T]%͕ͮFb[Vxӏ Dn3,U#9quyJn%mlq&\ Pi4#vd _7I!ʋף}= ]VBbѯӚ@]`Ph&q53i&C~ͮulm+[ǑcsI`XN/xy .$EjINLJbOes?@]ey gH4Kǎq^HY)dƭpcrXvkvUM\vŃLܗL$5Nb~m9-s޸UrC)}=d7 e\~E6kp0}"Fqx/Cstf-Į? nJQx}IE&/Cn#Ry?ر,P=vsd(P.B爐1(Jcf4"&r}n\FJLϤ_$Zu-[SɢaŬ HNl21_XQlKWt\L%0@ w92Xl\jg>< !XܱTȆ69FsSEXA3&Fx#_F\Uj^ ;$-O~ }My}J5n {?@<+[c4FhLWMeӥ# CKL_98Y'iGdZbY8OR&AW60e}?"tv{H '7KylQPXvۑXz Lm1tPqPsEZ%F|(b6lh@*!M"ujZk YOiY~*=z.ᒎyiR9y|1)db 9;pș}R>G[ )#7т1]>HVN7 惜.| ӀGg@N18+.|aoPVBns$Aj[?6v7'zhK !t olLZG]Z GMJD:ӑ5DS΂)V&a[О׆Sy8&~vG\&"_ |*NQV_URߞ_eJX"E ̙U]Ptt]BB~E1n5# X48/UMv%$l->mg/ߛƒNL_"T$/T2IS։%mfٳRPrwe/HC|Lb&Kr <U'pXW\4drmTH.~akv:pzOgN]Kdz>W5"](BQ:H1|TmC.Ҫ>ll[a4d+8QCt u;'E9s\n5ͱ' ;`|g=]vc>{ /': # zV#/",y,hnI7̭1ލ~jܦ?ێiBCBeR#߬-W5 Ըޛ~55v]"dOyUX2[ e}ٴX ̀o|u.C%hXY"cJsXMv-yȜ|vf!1)ޱ~i\њX@$4Ҙ>8Y콦(5P߇mҗ b&9LPBry#vЋ΄Ơ90qB1lbCř,㗉%X8.Ù**.ցWRX#d$D |GIA r $Ṣ(,,Tq|R}..Q!h`/s2Fkֹ^ {` (,sE% bYCLjy,}km8=_ܖms!zdpu3 3%e-=O<+eRc@<y4ǣbѐlO.C(@#ۃ1gMi+;Y2f*šnP vM "G.{DQL"Y_,Q?3!sm` |RMZܖ,x}eMԝ4m^0Z|/F pɦCoŸ'}1|ù M6cT煣E5O3[`QC5Etp6TyŠ!}pk:nXB5|#gYYw Bf[)1\+|] PėCy,a:Npu mzޕYbBӦOt(PV%ꪤ 0GHnYjY# λV0%zO@> xt-nǴiw>5EmaQ$9zjwe)P{VA?R‹b^s>:@^5!1U qq y-&,Rшf~ͶOU49#ݳ~oӚrbZXfE,D^W+@ψ'MQvᰅQ;9(ƽG-Ҙ*ux 7^dTڟޛ0nLo%L鰖h\Ti PwL.O_꺷[[ܥ;]pD(|`.k'fwp'7U7Sҝ|hh82W͇={j$bҾ۩y._h#)oXPoq^XWrA% [Y K=yV+ziqH#>Ck F[ srݞ\ nGZDύMξ뿯$WVnPQaܳ긳c4=uٌK#㖦 O\!8ϕs'2-XiB]4\#9Ux~]3?M?.w2R->mayX { b(E,+T1ZqJK{:S@bn?l sl}9c 5/זm4XS(-w$Ja5ҤēptGY-O" 0$#Rqmg/tXyHoC>gv=F5c! I2L8jW09\^/tH~,fk:/|_>;2:7N1^ᲃY"} wFw*O>*nSM@=O`]7{I:H'ʸzoۘ2k~|\-sQ~"{:sܖ*|ۙF0 3oz2 ՚ug\Re `+5É6tO-=fSn'Uھs2T]5BA*zEL!ˉ8:Q2E>©Nn$ھ}ig.i+]~Kq;ePHu[T)lTnA/Si2GXTaX\Ng&\\Pt98/ﵯ|WXwELa4H #EF5NgD5y668K$ 1_ ;b%P&Yi 3y;PW M\܀jnat;r8G 1ܨCA/Ȉ|f6Te :{NN1,'X> lhwc]V';%.Z H,Q$ ov?c5,:7(Q{zpS~ r{svtQl@FScN<\nvcK Ёi \Ѥ>LpibBxg9*aEYʝ%gĆ簱Xdld t Tr3+7_D#8wޘ-֪̗#N;6ϛoV |]qi6nM#GDUod vsx5ǒYW*Y_{lm'ob$2@'+bھ[ZC+ )&|?3qz{ Dj eߛW3Ǽ)6@yt^cM4 S/Há'r͡5|M:$2 ܫ5Ng)A7 `j/\5@*R7_ T90O3WV [4I.s%ˆz_Rw JeJ3|lHƱèhnY8aSTP]{ƕ⛚ ^z&8Uh{l3&\ʾW\D.]ejD #r$מrb["4@歞D>(qCb=Hi5DžPtM1ԏ. x*F|Ncq׍y\N˩WS) P(jdkt'u²=2{R4R(KH4qtVY`3,Wv鍌.vg}TK2b$/E0+[8=F͚H9WʴK=_X2#H=XRb_y!= 8wo u 01Ւj5#dFV&*Qt'UD-x`ߑc,) (Lz]PsH7 D̿pEb=I)"uu=\I1JY>d<y{[Ӟ*Ȋ} =91fKѠ6&a,{c"Vz jr3IVWC ,0k=옵޲%(4h8J.$MH虹+RFU$ͩzx\ ݙN ͶDb_Fӏ[R$`) Dތ}ݴ66k~sOĵ7sEo ?M^0JOWz0ZL4iY=N+KySx0U"'.V0wWB~AA&So܃+r692+,5C}BeėBP]o7H*$y%^ع%^kXn,qV8גbAլl7`*=#%O` M6WΧҧ!Q y M pJ ɛVqJUR% ~j(T+ 3W`TB:}]Ԧ{jE:YyhƲg#8v[5g5'r@?)AnWV!bAӰJCRS??LC!6[I]"aihE}za 63€ xuEXuMsILݫϩ kɯv#€LzUoL)%@$T7OI3 "Gz[bȾ HjK"^}04W⾒9rFgu0QXv57]ϧ'qj 4+|arHؚ#h2H{}z|%ڗuKJE: Sul>ʙPP}5GwR-Jlt ↆGxJ|)m?IvTύs5VТNr F`qiqæyRhLKEV5)L%fLGѫiGH\s ɺA[Q ǹ#A#?@ ˸쫅3Bk:N(g08vo@~^2kj,ːō

X9֔(S5.ˁ] YF;燙@s3HkLexx6cq7r oB `q=!?hre;*˶_VѠOQ&IԮY ]`h?Q"9‹1 ۻRt6T\lq)"vSmɫdGQkpz̏Q3,Ӳ[޻S*^ʚlJJ:=%U#Z*]_wgL|ݿq ZbQ=l`es UeW?"\~" zw.>eǛg:=H:= @p>んPg̯-O<=IԹW(=p!g\v\yqZ]SP;m5W*f bV8eBOZwoJ.n gȃ{pXmJ4 {Itvެ2PP>bS ?fE7vX.,S_KV*'?^pbޯ*vFS$pj@D ӂ`% ~f΋PE$ kAV;g6 S%>HR.r%bҪv£$KkF؞LJnn HX"g}Az oH]M sZhFH% ('.Z S.C +\01割x!D5p:Gu9lʪ) }fs:Zk aIdq!??Zd08"e1*2`rޫgQ[I~V(]ݠl3|i6b󀖢]c'cwcJSmUJk?ebą29?Y)Vă 09#R^HY|S"7]*Y$'ɠJ*~3u~% U'U*]}L+.9ٮM,R-.Y'1 gb`xmu7╱X,XĜqLBJjqRTd~oD!W`^bV@ycWẾG;j;7H*xw~Y5u\(KtO{lE&rr)D7ut st_#$ɦz?N Bu)\=:bnp:ej³7MpClrR{T(>؈(Nq6 Eh itYBYKK~آc\DZN9Z1p= C$|xDVԆCDLΔV-;6O,V 6GL`גwRsD>OǗ@[RY`%f;bE#i XZg>b Plc /^ ZǑpZR"Qp;<[̸TŴ;SN/.v W34#N&8jZt6Q. >'7sK&elY!GѲuu5Z;T57pc8`#wz(yaHyRxes.o+ٓ4f]K8=p %廾/W+>3gSs=uQȂ8TСOѫb_8o )Y0?oV N (GIohv4^bj_eV`5%~q}ḥ# [%dl~bCNiؽb;j/jBsN4'0A̼9r[_b^q,mVY'%;Ȥpy\I$ R?w+p~'^^WΖĭ rhܚOUUJ;h\p󩌋v)* ʹAF 2)ztK|"W>`gh mѾusWTOdGOɲ=RGFTwk?Ĥ1,ȱK9_#w۪%Y;l֨p`31LU661驏xwUl 9^^ ZvW`s-pL KE1,ZQ-fQO}Zhy&'\j NjSIS"'k;+'b!nr&opnEqTd`åpHumݐO.$V{E<-gF z,L׹Y Q6dT`ˑfѸnp&kxi5}.0B:u+Ky0˧[ؼ; ַ]@l}&W+@~|{$ BO3TdrhS_0oj8M]Ž_O4=6t6/ز^ "E,xptQSK|ἬqG@X* )ȕ:\i5udbm"l' |?Aoa,7դ[m*ck}+:(L]\9~ cH "}c;@"A3SG%M ,@J9ed?QI-Sh<\B*i^/MK-k.9Q΍fkE_&<f1D*Z$R71RNf^nvݍhBkFcCReUGj :+K||a"~ [BÜκsG5I a ja6S4!ަ~Z0aggRrɾL %ASlS}Wq')fCBE-QH }l4XTޕ{5+z_ [X8e`蹨pST6ny=( 0^10tƂTVv<ø̉S+Ɏԫ7^A!iAg v2VDcYҳvRUr+ФqK1yH<`dwqsb[Ԣ2lD&brX$oK6m TEQ{7'`"Zf 0WDտcœ-OEBv}oď*)jl.z}qr-eT6423#wIy+>yx347Nj듦*̬i8n:ء%so/7h ]I Y~ׯ?ms۰3;ѡ񆕌4gjV]I 3ZZ@U0ToT1}dx9&hHN.}'²+ԼdXua󊌚ǞMd&WqsF5 5v&D`XجFb\^=wSG*NzeJBEDɆt#}e8 =6ofbLNWwژTDB0 <.Uz^'iy8 DJݩ|Z1U|,*m'W\ JT86˱,_ V1lHSUfRΌ58xbFՠ5eZNȼf]Zx4jǰgBKe*tBT|3\$' <f>7Mќ>l 4$d|5]VՌH7Ҏwd[RhJEq3=X \q2~;>oz; e&VA&AP Uq7Z ^*bFSE3(vs#3Z)^7"è S{#R5:fBM+hN#C>OIb1Ad䣠` !VuuLjQ@_ͻнV8+48vJ|`T^N$:dm{TKNqJ |gN1؞v8][h?Rt0 Dvm 급! Lԃ{-m\ ;aA+^8;rdaQ^84V9i Ġ ~e>|;mՑ[_X@cRFN;%kO'^ro" l-r|e*3`3O=쌂SK-zAhɩ"'lLx?רѷ0֌Veʹe}#}uLf:}7JdX`r&oB^;by#)JiE`A°^ {DܤІ./xU{颞n+z|5LC]_ $d]`QgyetR~l5h=kwVuؠ3!DB0#hY M#3FͥwenqtnT!VqƎl8(5 n%id 7ڷ1V>]'S2 IaZ}FKE#8JF?T?#CF~4g:QYpI9U o#lTAЍ IV t x;%Bjsn'#CE}T?i;h/S6 ]oS˒p"Uw^<[@! B[ƖpMF2hMcL_!4l *=Nd8M _zr < uqqu1Q#&`UK{l]Q&,C-廯ټY鉨-.]00"p_h[FFc'A<((ndͲosh<0UYÊA/2[UA#;8E; sN2u*Mm{֒Ƚo9K7q7Pua4BvǷNט.RA(maWQe/(K4˻a :*C@x[ .b?"+i`ASn_T|۷.bf[+wQ DJȪfEqŚ WMY; @2Xrd͂HIܺ¨AX]as#[B}68R8k 5*H6$^Yi7OïuYMu6 6&qGy/GI9ea\( IKMIc$# kPo O_7dJ6I7@$P@Tk fpʷXCW8J8(^}^q'OA&Zd5&AܞiI1\ _*CdSIik8zǪ"8BZ]@]-UT6m%E'nl Wjb5Ysi> wL֙BLς[Ʉ7݋.(&\Ġ gzzǐbPR~ι#}jhLsʡ'.5 BMJAT\ﰚtZOH$Re?M;Ϣ6Oģ[P]6k1qN/B%*//U${c&ρ흺VJ(NYF*DxyUwڴҖgyH(!T5j8/pKf߃zx/_nRHdDGQIfK>uo8{|FdYL}!#'DQAGPνfc-Lܫ))hD3l6p,^:@Mu^~ cB_ߡTݩ-uw1jN~Z@z"XH_m 3hds=)5Bŀ%69U}؎w6KsΕ¢6yqjmHj;[x` y8_-eVwOkB9uSpq HuMc)Nܤns-ʯ=@Gm?MO\$'@T7}*RB.9۩nИ&\#X_ Ք{Sn~w87av`hMEE12Ns<^dQ_vjJMSFӳ8TZ_EPې* +<ޅ4ީHUyBN_&PKcZ!x,/x$gsk0/7kW;W$TU})mʫv5'F e'!F$Ѱ#JETh)ENeXu$0! DJ٧"6r+0yv ?,ʿwe 5+{ km0m` 4+̙/M`͘?y.O lܸA)yU3SdDHȗ4ۉEz\ԻQ `"@&c)KvC'Mg] 6{"}/WͤdΤ> XBRDڎ$o:kKKO&C䇯nCN#+!b?:V7*>IF kpT=}Ǣ%/<=FPR`RgH4䇖SX 7'|dQ3=mMo'=%snd\Dո]J)5JVgjY_6"23ٌy~'駮5)>`tq,lsSTo;фx#Cyf;ZX֛b܎wftG 7 6&ư0-mi{M+" G:ҡ3irfX=ݹd0hN z=sŤ:ǿ!.jFqwboC3&B]5Vd1ɪ2FE -wca%U|ք,r0u¿{O9*ʰPz, > hr *_Xe7\g:~>CT.EZÕs;=u];#b@"wNE(WjBZovG PB*2j~,{'Vho*kqi! u@z,_X=g>c& əK8L׭^8Dsod*~W{+ y}7; Bw5*fG vci\H᠆%b^7/t  U>Pg]PW3g0oY~OlrV0NJʌ(#6{&Ł[IVb@ j8 +$cM8n/~pB}}԰˰VPg*tnAqTw|Tig\nzjWJ^psˋmD%y9kza}~@1FWX}!< 1K(Pe{8X^XL.伅 ᅠs,SggY?Y8K=b&'<77w mLrgho\f<]N+ IcYte@It_1B+K0tIݸpR$!nD7nuzt%m)zoO( cD(yZ̡h]qmw_HIxxw2{q[i%hiWQ+łTdO@f#hQ286JuS(UFDF慃ec ̀4N+/MsR4ں" b_6P4y V`*MS$[ KՔg؁C1Imf{.~j[*uN/̘||dg/82WUw`86.5v6vV',ROd9- P#2{ rf~"*>\$F`vj)QqUhyUIaF@,dVdm^'d^J]t <9^:' r0 ȬwPQay UkBΡl5%K6Eʚ*h$NY5H1I˘0r;ܠzJ _d FTRvG0,#Q*Zsk^&IP#ܙPEPB'C ~z2 ap_*wl9bt>0t5g=/}k 0X+M}H>٤^Af= "eApȂ B>'rq.VvNP?]X$ZpCUR`~GTbA}fm .h*@Zpkp/A9x@hf.ÁloKδJ,D^~kG^!"]Rc؈Ѱ[QswSKw8'hYtDyE/fms!D$mS$5_v9gN= ˣv5`0 9jG6-[y`N^c.$-5m?e J 1^[ Gyg8M9 ?x#:{٠,Bm;H1g_Owlt"7JgODd) 8io0eY9 ̛K ڗ9chͯזw!E]#e-4 ܒTWΗ}y\vIw|oMc'eu|_,FUg|5S,M#`Ü᝔bxaq 3F_yt0keŐ#1|X*WMy `ϫy%n&֦Tya~:Y;N_ T;(Ep_i'D[F5%q޻IrNqX HUDži wtrBEţdrO=u\'t^W( 7iP/G7? '`H!&p-DD_{BE L U0O+~Ϫ* $8%qb1 eQ,NjWY3TuM)‡ލ 5~@OۛI'4s0.;ȳ6;fF #1n~cْ!^f@{4'- R׿ߝ؎\B~;6 C5)swu}zpo€֍ $JD& b-Z`ZSY–#b'4CNj Zyݬ[d僫)a$К#ލD'- f2a/0Oc9Qqe5hKwd6̡ rz-ZVJ)bY+, -p<~e^)2(m\_Z)p4V)ii{W?ˮ⊰ZnU>_&`wz{wh4! qK? nmE: D KbV,BR \NW C k@kT5yzT~'\QoD'ύt\<).n'/c[ӧu\WfӰu.8[#_Xh7bc#SMSWlxtKGJvHy1tec/2=HqiuP%fQ9e}),P\eHtBJYo)L7ȆR=KT} %Q[A3!Ո;e$nB~j$-"q]f:0$ߏέ[6o7TsYFzۼn֖y*XtJӓNG4;a/T԰\P4Fx,Hn>EpdH). ``ҢYQKt4Ak ՙjS.zp'pݡˮ 1Tt^@BTd;.lX|˓X5(E~_A 2GflX\qt?i@ ݵ7\AGVftmmX$Z$_3(Y YFİ%v#>imP/,ۃ0\"◈6e{=i/nL٭/$k6R޼+RKOcE3j[4n;gq$S]P^P w~A *1o]]5/˶F"'8֞+P.AY4Cf@XDa. n'p_l[v" ę[??g̺YS@EG֏|cB{D(g3i,js/n\D&m;Ҹl&2` "5$֥wMp[ xALú)x^/XrM_4#$to}/{X%%O99T2zA-%mO 璨ejW!8{/25R]z hxk/y~ ,ܯ1Ct0&.9U62;EUB6C<^WFv&cd >0^TMሌ3Ψ99J 8C^`I3& e٠'9m!LX'ds+E% d1u_H3_7>1@YиCfXϖ,2Tf{m ͝ S@+/X8M+;:8=(i͟woG{ި s0`+2alC h#|P[%?a")&Kw#@ۋ/\r}Q~x`Snz DJ,Yl`j ݐ<|FlR7g>Ѥ1NTKGKW/7m1gekHmb DeYƀǙ{Q:{#ʄ",L7 燁Y; |b,ڪj_bİiA6k}U̧ϐ#L``d`*'kr[.,,`08;l?xY̍BQ 6h0Dv]E}ՃY@;]z 3 ?Ń;VH:ݔhNԎO?MF:o䒈PD'Viq TNEQtl@6 &RȰ:ݛvPRr=ix'+ȼ0H6cЙ5̤X.4Rtf+I̟1@WeMQO&z EցWPȇ&7 ifba>-)_֪BF YuKax>(sՙ7]d=dr^eF%BR]Оِd(YAA䱓gh]r2ٟS[ WVy9;eȋ rUSeBqksYE՝HXu,i&?0n|+BEh%l`C+$uG\|JVMrbmo\:7eaTn*Ѯ B [ӁcTLv| LC%v4ߞ[cja D=^M՝>SfE?#)qO1)-ʹ\/]Vm0"ᰐ!֬Հlm&:!iI@ZQY󶢕s H&.]9@1W*ײ[ă?qM1U/bGcB$q=~/{Z;BN)Pjs W}J}3I~[!\OMmq IO!cW_mҐd__wrhR…V|h i ]=urw̮[$XEmX^EI/"-zqp$Ky&Uܘ_>y:YyV9 PY] JUW:?͸hqS+vd[xzB\vE#5R8{ 5[TyFB7?|F*/FÖ>ZŐ)"LzU[7vm2'/*kCKm#r_#"I1}"b5g%m?cQ7 %̇ᲫJ=͟4ϲJ'LPHg8ȑ6_QnઞC EPyզݔ[B$ƒo$Y{HH}1h SJ%!K@z b2khv!|ufcd>6sj"vlC}}-L `M|<{oC@f͹?֋aHp'`)'#6rN+8;Qݰd2t,Ia&8>0e\@j.n jsxzMc6twsSr̬( }JJf-/fG pE((6I˃[D S.&t YZ