í«îÛbinutils-2.43-150100.7.52.1Žè<�>,èêì_‰g[åép¯ž9Û|‚Þ‹Ó®P©G7Ç´JJÉ«àÕwgÌ4×йŒ|KpÂ1˜½.5Ó~êQFé˜c¶~säEöÔe?sÖ²í·—/¦ójò›ý`3=k6¥äPŽ™™Ö#oMìÄ÷$UÇý¬mÃ<ôç’¶–{³i!7ÉÉi€$Ü;—Õî\»íóÇYgªÞöcETŽ[‹bt+ÿ}ÿ/
Ú6
D§$ü³5W»Ð·À‹9Ûª‰„ákê¦+ò^Npú_x¶<ìšµCc¦%<žrt–í š‹3n–kT«€ýÌ‹ÁµÔ
\š€‹P—J† rÒÕ£©Lº¬(µÏ}ù–N\âá"’ßѬàÞií}!›>ÿÿÿÀŽèC߸?ߨdèéêì í +îÜïàñìòðó ö*÷Mø cü~ý¥þ«²V
L|,<�| =4|
N,|p|”X|
`|¿P|é¼|(L|6<�70787>67(>Œ8>”®9AL®:L?®>h\?hd@hlFh{Gh|HŠ€|I¬p|XµÀYµà\¶|]×ü|^`&bd›ceDdeÇeeÌfeÏleÑueä|v‡Ôw˜\|xºL|yÜ<�ÃzßH“ßXÆß\äßbåߤCbinutils2.43150100.7.52.1GNU BinutilsC compiler utilities: ar, as, gprof, ld, nm, objcopy, objdump, ranlib,
size, strings, and strip. These utilities are needed whenever you want
to compile a program or kernel.g[åéh01-ch4d©]SUSE Linux Enterprise 15SUSE LLC GFDL-1.3-only AND GPL-3.0-or-laterhttps://www.suse.com/Development/Tools/Buildinghttps://www.gnu.org/software/binutils/linuxx86_64/sbin/ldconfig
"/usr/sbin/update-alternatives" --install \
"/usr/bin/ld" ld "/usr/bin/ld.bfd" 2
ALL_ARGS=(--info-dir=/usr/share/info /usr/share/info/as.info.gz)
if test -x /sbin/install-info ; then
/sbin/install-info "${ALL_ARGS[@]}" || :
fi ;
ALL_ARGS=(--info-dir=/usr/share/info /usr/share/info/bfd.info.gz)
if test -x /sbin/install-info ; then
/sbin/install-info "${ALL_ARGS[@]}" || :
fi ;
ALL_ARGS=(--info-dir=/usr/share/info /usr/share/info/binutils.info.gz)
if test -x /sbin/install-info ; then
/sbin/install-info "${ALL_ARGS[@]}" || :
fi ;
ALL_ARGS=(--info-dir=/usr/share/info /usr/share/info/gprof.info.gz)
if test -x /sbin/install-info ; then
/sbin/install-info "${ALL_ARGS[@]}" || :
fi ;
ALL_ARGS=(--info-dir=/usr/share/info /usr/share/info/ld.info.gz)
if test -x /sbin/install-info ; then
/sbin/install-info "${ALL_ARGS[@]}" || :
fi ;
test -n "$FIRST_ARG" || FIRST_ARG=$1
if test -x /sbin/install-info ; then
if [ "$FIRST_ARG" = 0 ]; then
/sbin/install-info --quiet --delete --info-dir=/usr/share/info /usr/share/info/as.info.gz || :
fi ;
fi ;
test -n "$FIRST_ARG" || FIRST_ARG=$1
if test -x /sbin/install-info ; then
if [ "$FIRST_ARG" = 0 ]; then
/sbin/install-info --quiet --delete --info-dir=/usr/share/info /usr/share/info/bfd.info.gz || :
fi ;
fi ;
test -n "$FIRST_ARG" || FIRST_ARG=$1
if test -x /sbin/install-info ; then
if [ "$FIRST_ARG" = 0 ]; then
/sbin/install-info --quiet --delete --info-dir=/usr/share/info /usr/share/info/binutils.info.gz || :
fi ;
fi ;
test -n "$FIRST_ARG" || FIRST_ARG=$1
if test -x /sbin/install-info ; then
if [ "$FIRST_ARG" = 0 ]; then
/sbin/install-info --quiet --delete --info-dir=/usr/share/info /usr/share/info/gprof.info.gz || :
fi ;
fi ;
test -n "$FIRST_ARG" || FIRST_ARG=$1
if test -x /sbin/install-info ; then
if [ "$FIRST_ARG" = 0 ]; then
/sbin/install-info --quiet --delete --info-dir=/usr/share/info /usr/share/info/ld.info.gz || :
fi ;
fi ;
if [ "$1" = 0 ]; then
"/usr/sbin/update-alternatives" --remove ld "/usr/bin/ld.bfd";
fi;}`üðF(zÐ'/ðŒ!3`ËЀÎÈ\HýÎ{ÐŒ¸ÎÐ(@"ð"!Ä"Ü"í"w!n"†"—## !f"~"#å#ö"Ðn!/ &!>!O"G"X !6!G†!¼"Ô"å"ö"•!Ê"â"ó"}!t"Œ"#•#¦!l"„"•#ë#ü"Öt!5 ,!D!U"M"^ $!<�!MŒ!Â"Ú"ë"ó"’!Ç"ß"ð"z!q"‰"š#’#£!i""’#è#ù"Óq!2 )!A!R"J"[ !!9!J‰!¿"×"è"í"Œ!Á"Ù"ê"t!k"ƒ"”#Œ#!c"{"Œ#â#ó"Ík!, #!;!L"D"U !3!Dƒ!¹"Ñ"â#z"Ó"N#f#w"ô!ë##$$!â"ú#$o$€#ZN!¢ ™!±!Â"º"Ë !¨!¹f"E#]#n#€"Ù"T#l#}"ú!ñ# #$$#!è##$u$†#`T!¨ Ÿ!·!È"À"Ñ –!®!¿l"K#c#t#}"Ö"Q#i#z"÷!î##$$ !å"ý#$r$ƒ#]Q!¥ œ!´!Å"½"Î “!«!¼i"H#`#q#w"Ð"K#c#t"ñ!è##$ $!ß"÷#$l$}#WK!Ÿ –!®!¿"·"È !¥!¶c"B#Z#k{QizQ²Ä)Ù)x'Ë(ã(ô)'%(=(N*(*9'5(M(^*Î*ß)¹J'È%Ý&õ'(à(ñ%í''b'Û(ó)&Ò&,$Ä%Ü%í%ð$%%.''$%-%>'Ç'Ø&²'$ž"³#Ë#Ü%¶%Ç"Ã#Û#ì?$Ô%ì%ý''%Ÿ&·&È&Ë$à%ø& 'ã'ô$ð&&(¢(³'{%y#Ž$¦$·&‘&¢#ž$¶$Ç“%¯&Ç&Ø)Ö)u'È(à(ñ)
'"(:(K*%*6'2(J([*Ë*Ü)¶G'Å%Ú&ò'(Ý(î%ê''_'Ø(ð)&Ï&)$Á%Ù%ê%í$%%+''$%*%;'Ä'Õ&¯$$›"°#È#Ù%³%Ä"À#Ø#é<�$Ñ%é%ú'ª'%œ&´&Å&È$Ý%õ&'à'ñ$í&&(Ÿ(°'Šx%v#‹$£$´&Ž&Ÿ#›$³$Ä%¬&Ä&Õ#"ú##"úäc#"ÿ#
#"ÿäc# ####åd#!### #äc#"###!#åd#!### #åd#"ÿ#
#"ÿäc#!### #äc#"###!#åd#"###!#äc!e!E!S!d!EÈG#$#####æe$L$,$:$K$,æe(F(&(4(E(&‹#}#]#k#|#]‹$L$,$:$K$,æe(F(&(4(E(&‹#$#####æe#$#####æe#$#####æe"!Û!G"_"p!ý æ!þ"##& ö""#v#‡"aá ƒl „ •!›!¬| ” ¥ù!W"o"€"Æ"œ!Œ"\"m#s#„"¦u!œ"l"}%½$ø$[%s%„%7#ø%%!&O&`#Ñ$é$ú&²&Ã%ã#½"~#–#§$Õ$æ"W#o#€û$4%L%]&ä&!%p&ˆ&™&`%&'&8'x'‰$ê&&'Ù'ê&ÄÃ#ü"«#Ã#Ô%%%"†#ž#¯Û%K&c&t&ä&!%p&ˆ&™&`%&'&8'x'‰$ê&&'Ù'ê&ÄÃ#ü"«#Ã#Ô%%%"†#ž#¯Û%K&c&t&ä&!%p&ˆ&™&`%&'&8'x'‰$ê&&'Ù'ê&ÄÃ#ü"«#Ã#Ô%%%"†#ž#¯Û%K&c&t-»-+,#,4,Û*N+f+w-ó.*^+v+‡.°.Á-›}+O(Â)Ú)ë,g,x(Ò)ê)û•+,3,D-,i*_+w+ˆ,-) *¸*É-E-V)°*È*Ù..,ï
*¡(),)=+¹+Ê($)<�)M%*o+‡+˜&%Ü$‘%U%f&´&Å%óàø$¡%e%v4¥4n4“4¤4…†ž(Ý(7'G(_(p(S&à'ø( )k)|&ð(()Ò)ã(½í&$›%³%Ä'&'7$«%Ã%Ô'W(o(€(›'õ'((.(&ž'¶'Ç))):&®'Æ'×))¡({Ë%ñ$~%–%§' '$Ž%¦%·ã'(-(>'×'1&A'Y'j'M%Ú&ò'(e(v%ê''(Ì(Ý'·í%#•$$¾& &1#¥$½$Î&Q'i'z&í&*%y&‘&¢&i%&0&A''’$ó&&'â'ó&ÍÌ$"´#Ì#Ý%%."#§#¸ä%T&l&}&í&*%y&‘&¢&i%&0&A''’$ó&&'â'ó&ÍÌ$"´#Ì#Ý%%."#§#¸ä%T&l&}&í&*%y&‘&¢&i%&0&A''’$ó&&'â'ó&ÍÌ$"´#Ì#Ý%%."#§#¸ä%T&l&}-¾-+,&,7,Þ*Q+i+z-ö.*a+y+Š.³.Ä-ž€+R(Å)Ý)î,j,{(Õ)í)þ˜+,6,G-,l*b+z+‹,0)£*»*Ì-H-Y)³*Ë*Ü..,ò*¤()/)@+¼+Í(')?)P(*r+Š+›(Ç(!'1(I(Z(=&Ê'â'ó)U)f&Ú'ò()¼)Í(§ç%ø$…%%®''!$•%%¾ÿ'A(Y(j(…'ß&ï(('û&ˆ' '±))$&˜'°'Á)z)‹(eÅ%Û$h%€%‘&ó'$x%%¡Ý&ÿ((('Ë'%&5'M'^'A%Î&æ&÷(Y(j%Þ&ö'(À(Ñ'«ç$ü#‰$¡$²&&%#™$±$Âÿ&E']'n*F*'¨(t(…*ï+*&³Ë'¸(„(• îäÔåö ©ºË ± ¹ÊÛ Ü í ΊpyŠ›’‰š«¢äõ +›+E(ý**&*Ù(L)d)u+ñ,(\)t)…,,¡+{ä)
&'§'¸*"*3&Ÿ'·'Èü)
*%*6"ø"R!Ì"ä##"õ!í"b!Y"q"’"£"‚!z#z#›#¬#‹"ƒ!i""’#í$$#þ"Ø"ö¶ ·® Æ ç ø ×Ï!Ï!ð"!à ؾ Ö çÎ!Ü"ô#"•!ï!["s"„" ø""!#'#8!" "1#Š#›"uä •~ – §!!¾Ž ¦ ·ü!k"ƒ"”&%l$%¨%¹%†$'%?%P&ž&¯$7%O%`''%ò3#Ü"}#•#¦$ô%"#¥#¶K$ %¸%É#n#3$$"#N†ž&æ&!%r&Š&›&b%&)&:'z'‹$ê&&'Û'ì&ÆÃ#þ"#Å#Ö%%'"†#ž#¯Û%K&c&t&æ&!%r&Š&›&b%&)&:'z'‹$ê&&'Û'ì&ÆÃ#þ"#Å#Ö%%'"†#ž#¯Û%K&c&t&æ&!%r&Š&›&b%&)&:'z'‹$ê&&'Û'ì&ÆÃ#þ"#Å#Ö%%'"†#ž#¯Û%K&c&t,Û,5*++C+T+÷)j*‚*“-- )z*’*£-Ð-á,»
*k'Þ(ö)+ƒ+”'î))%*;+S+d&%O$’%ª%»%ˆ$)%A%R& &±$%%+' '%ô#Þ"#—#¨$ö%"X#p#4$k%ƒ%”(¯( &Ý'õ((%&v'Ž'Ÿ)=)N&Þ'ö()¤)µ(4&{$Ì%ä%õ'“'¤%4&L&]L'E(](n&ï&*%{&“&¤&k%&2&C'ƒ'”$ó&&'ä'õ&ÏÌ$"¶#Î#ß%%0"#§#¸ä%T&l&}&ï&*%{&“&¤&k%&2&C'ƒ'”$ó&&'ä'õ&ÏÌ$"¶#Î#ß%%0"#§#¸ä%T&l&}&ï&*%{&“&¤&k%&2&C'ƒ'”$ó&&'ä'õ&ÏÌ$"¶#Î#ß%%0"#§#¸ä%T&l&},Þ,8*.+F+W+ú)m*…*–--#)}*•*¦-Ó-ä,¾*n'á(ù)
+†+—'ñ) )(*>+V+g(c'½&‘'©'º'Ù&*'B'S(ñ)&’'ª'»)X)i(C.&/$€%˜%©'G'X$è&&F&ù(("#A"|"e#}#Ž"¹"##)#Ñ#â!Ù"ñ#$6$G#!â!? †!ž!¯"W"h _!w!ˆú">#V#g"5!p!Y"q"‚! ô"""Å"Ö Í!å!ö#*#;"Ä 3z ’ £!K!\S k |Ü!2"J"["ù"S!Í"å"ö"a!X"p"#y#Š!h"€"‘#î#ÿ"Ù¶ ¶ Å Ö!Î!ß½ Õ æÎ!Ý"õ#%¹$ô$W%o%€%3#ô%%&K&\#Í$å$ö&®&¿%™ã#¹"z#’#£$Ñ$â"S#k#|û$0%H%Y'(&Ç%‚&š&«((.'Ñ$ú#w$$ &&##‡$Ÿ$°é%’&ª&»&F%}$Ä%Ü%í%»$\%t%…&Ó&ä$l%„%•';'L&&)$"²#Ê#Û%)%:"Â#Ú#ëA$Ô%ì%ý)’)„)r)€)‘)r0ô*x*j*X*f*w*XÉÌ"‘!ë!W"o"€" ð""##0!"")#†#—"qÝ v Ž Ÿ!¥!¶† ž ¯õ!g""ööŠœ!Ë!«!¹!Ê!«uˆ&%p$x%%¡%$%-%>&¨&¹$%%=%N''%öU#æ"k#ƒ#”$þ%"{#“#¤m$ˆ% %±%ê%D$h%€%‘%d$%%.&|&$%-%>&ß&ð%Êó#º"[#s#„$Ò$ã"k#ƒ#”$x%%¡Id[Ô˜Y€ž×§=›ãµ¢Ü"ÔR¿†¦óèEK%…p'3=^€X+ˆ(D¸*ZʱÛ*©Ø›Îî+‰!b›å{š8Áµ+{’Jz¿<\ .Š,¥¼BÞê)èûxATm+Ì3–Vaƒ) Ú%viñ*âÃgJk‘Uüú]*bÔT÷€8+ØCfÜw¼ cþÆ,۾♴7Ì'3@t×HËü´ø33Îx^|ñ¸Æ)ÛÜIÓgÙûrã†*üÑ›?¯ÉYñÑ54Q.¶r~5;1󕃊EókìÔ^P^W:ÕZ x‘h
¾Á»E~;`>'$ök…ý€íííííííí¡ÿíííííííííAííAí¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤íí¡ÿíAí¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¡ÿ¡ÿ¡ÿ¡ÿ¡ÿ¡ÿ¡ÿg[å×g[ä‘g[ä‘g[ä‘g[ä‘g[ä’g[ä‘g[ä‰g[ä‘g[äŽg[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‘g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[ä‹g[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[äŒg[ä’g[ä’g[äg[ä’g[ä‘g[ä‘g[ä‘g[ä‘g[ä‰g[äŽg[ä‰g[äŠg[äŠg[äŒg[äŒg[äg[äˆg[äŠg[äŠg[äˆg[äg[äˆg[äŠg[äŠg[äŽg[äŠg[äŠg[äŽg[äŠg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äŠg[äŠg[äŽg[äg[äˆg[äŠg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äˆg[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŠg[äŽg[äg[äˆg[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äˆg[äg[äˆg[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŠg[äŽg[äg[äˆg[äŠg[äŠg[äŽg[äg[äˆg[ä‰g[äŠg[äŽg[äˆg[äŠg[ä‰g[ä‰g[ä‰g[ä‰g[ä‰g[äŠg[äg[ä‰g[ä‰g[ä‰g[ä‰g[ä‰g[ä‰g[ä‰g[ä‰g[äŽg[äŽg[äŽg[äŽg[äŽg[äŽg[äŽ7d87470f61e8facbfaf73b6067fc910c83b36357a0d205e0181426552b4bb24e48b9193a43e06af651496df874ad26afb96afb053be139389f745faf3f50486e878a39d5cad6381cc70daf2b425866af541985e2bfd6868e1f2f5f33898b72b2b8229fa51bd0e5c548c7faa8997f5dbb9381f68ab55f4f4682b1c39e9a8d3b55526df451b55ac779d1549d12b8a92218eeef4cdc8750a40f967d0c08c87ae4a514f2988b4cfe837e2931ec6bc4cfd8e78b62d5a9ce38e21f8f9de4a19f34bc530659204f0e52e4f8a87a149b5fae8f7431e1ad790227fecf1595828ca51b1a65dd3f9b0aa59bd22bb20d9ac82dc23b31798a13923cdd12afb90b20b61292c01ea7062071d987abfedcae9263523dbade3614491eafe6ee89e082a2c20cd97bf74edabb35757779581252205e0b7f94efa97fe91bf0d8219ffbfbd1747642ffd9b34b8ee6ec3840fd9f01bb3ca0015f0354aacfa8bd4b557d048aae3dfd922d3b217049e3354ae8812e4b053ff38cdc4c7eef9f4b681b410dee374dd1b2fcf0853c158748886d86e08f95df2a12c3546771997d292d92ef2a318c305c891a7c3f4b13a7372c0c1b55b7be0cb50b342177d34806399338652371f28b92cbd815af867b20628668aa18b5e547327dc357f2aba0a647f49bd83b5a53fbdd22b958c90352a40cde2746dbeca7e74c142fd7f580dcf7b91ba19166bbd81cbebbdbf0f9fd9d5b5f85427967dac366cb837ed95ce8cd8c8d605a7ee69e59688067f349c9a208ca0bb6a49173f3a34da0b1936dab21aafb26bdd42247a08472971d017a6199ca1b7ce2bf132894950c76f44f4b3c09fb64b1c3da3f0888cf69e984545e7299ffa314be497522ef1f8aaf95cc90baa82997ff48f30ca365c597313facb9c142c3c4377319a58319e08c7429a4315ea28d78b39577aa49268d322eed3b1908d9ef566f6a5237ebb008134e64603090686f8b38836472b278cef5a51698fb9efaa6bb9b1b256990aea9e331546e921bd20d4d5d1866d8c720b1897d8a314a26029f76713710397a9d62d2a918c6f7bda30078dd968f9baeb2789be39cce6392494edf81af76deac3ecd7db63e691e5d4bb336209aa22f0d8f15a4b9e3ba73365cb91a575d3523a4874848a9e9ac9c27efe47da8872ccfe1363690e4f1251010c6afe42aef0c32057794e43d055d8f7e91465849a0561c82cc11498650a1dffed466ee86867bdde2cfc7c8128ac0b89dd51d33d18227bc7ec2dc57833599514b2f204f90b87447a6dad643cdf3ce98036754ddf696c9b78aca73d21ade23f6cb5769e5aa2298f71e23218fe785920d59e8bb254d9d94df0112b411d56fac51bed141004c8796ca251ffe67862c8736deb75cc416694c3a5cc34c1dde6ef435cc0faf800717c9cae7856cf75ced28799cff843346abc3c4db94da1187fb34dd685437e9767eefe0db671dd78772755d85e7cae78a6ee35f3c4629e8bf63045e494300d2c9c488a0499f7556def14ab5b58a42917a647326a3b7f52c23b3f55230d257e7e1f7bdef3a6eb48cff50e941041c9811bca25f2ef2ae12ca7379fd850d720e22fc2cd33a50696cb4d2e4caa9f920cea4c2d1efefd6b81fd68483133a7643345422139002c7a9a6708e9bad60f38dbd2e85200b71a3e6605a682c6fcd1a156c2e19082110637d6becee07d44025cd1e4475627744adcf6461e7f45f8cfb6057fbff94fa07b300af89b3e36a0677dc8c455c2f4273699fc531d465b08dd0e10566282348ec59590d2f6af3b23b06f116e5a9cd4dbe1f154e46b080f434c2be49da0352de321c4e8ca35c040bc34dc7ffb913b643ea455c60bcdd231b5246976247876ba64d86ed29e514dd569a6d9e0ad8c6cfe130df5aab6d659a7bb021cfa253357ada2c8795d1c5db220f043d89278431edb6253290e3e47dcb18f1b866457679f07b2b37a828b110887f71062078b70a669e08fba2674efe8d1c230c5573a7456f4aa9c62dc4b808bd9cbc901221f3dad22ea09489625d9a4a8ff56449e14842a2c07bb7fe004b0b89ea2885738b72bb387659eb5eb849b6fee4254d8cdb66b9695885dfe977f33bea8c9d5f6ce292a832e9a3b9310edf82883f1d9c8549a25a60667f66379f13ce037c4fc3aa5d4b85bf25b38e12257b58205c4d9b26b97c088b33ccfc085036d5dc670c2b23851c3bae31d0bb70d2ce8bcf7b11312d47c504a92ae0aabc997d3584cb2b9169cd894eecb9af986ff4e76c6aa7d4f5dc5106018f4a81859ec37b780f3b4524e0ad00c12c6328f0b76084ead7de52abe4309f5023505a69b85e4c592026a3fb60418722d524e5888864453484b5e27be31656e32512255e8def7638593fe50e9f370508b38c0660bbdc241ae42175e1b3dbb920fc38aa1cd8c3d8ce739920a0276cffbabb092b86c0f18a892e27b9528f058161839e36028bb5ccf8d95d0b0afd1020e711adf5f537f60ace2a8721d45721a22a41a1ea9bf4df78a7dfe16cb9b4074272d0f313ad55bb0ec46795cde4ef85bc46b869629919ac3e09cec29d6e64edc0e77abc4de4abcdae7e6fac3a09f37538305100910854973afed129480292c9def719df974a5ce9b23e06fcf0206deba334d0d51c4df0c1ba550be2c7dcd1b75b8372ad5680133cfe6e7ae5c44e79288199facc49e3c0156c7a978e3500106f44d976cb2537aa7a930811e950a40b800881d03a16afffd5abaddfd9f71321662958695f1a2de8c1fff9e927cbd083b87c630f4af927c8061b91058318cf785ff4ff507b0f523fcf54e62a92ab3768090fc11a463e34cfead9ecd3686e592a1d7cd7c3df1dab4bccae333d4e5712f90cdb4864fb1d44270dc673c679569607821aac19426ec9606bb58dc6e15433a054c881af4e107115ec59682b05958547fe8f840f71bac7d82f62bb0bde6884221fb11cef43e831e86be2c9e9da140ff380227df9b1dc192c2fc9d6c2f2ecdfe42ffcd90f387ddd5260b84ae5dbf5fa4832a8fc8aeeab96854c4b328cae66122186cf75230b19b375732d84b736b3a7faf0feb3d48693997fdde447d7ad868656a1fd993d530d22b293252c775d172323eaab0a1dac4134164db57a51c04a6a7f6e6633b3095f002dd0565dc07a757e3757f5c46293482234d42a3b228a396e240cfcf1d737f6e92e9b76dbd57e7d4bb1d6b635868c4843c071c77be940ea3afba8909e0b6dc48ce157475f767a59bb340d36346469188bf1ee9acda59c2613b61fb60d5a5e9369e8a060141fa63e8b6b6e31c8ca90852ae203327642a754f7a5d21dde3f37ae73532abedb231fe8f93c0cb17fbf2f5b7253065a2de0ee0fbf58ad69d0a350de4295901f5f1d361b710932b5c713fe5e6cd82798d650b65a129993a9b0ef65669850d1c485e0fc867accc3bebfd2aa3d61c01159a4d488024c4d31c46687ae750a2f8249151c611a9558dafd6ae93c2f914d6b1be607490df7fed7506faed3b48068a10c9e1bb4db5bd42ad6fbefc958cf1e5e2b28905c3335e18f2d7b889e0459f65b7d1b0cf9fd5ca99afb66464f4a3d0e14c9f0f82a4963c5ae22ec732dfbb725c95669a158e9b67d7c730977aea4d471d4a6f398253f46675048f84a78d2b53a963128e993391afa79632f05fa4206537f7ccffa745722dea5d83899bb43f7bd789d35003a210982ecef1ffe593a98b5b3f5f263526ad5c6b7762add32822957f390a5a3176986364012d4e8084cff299ac6c681d07370ec133cea9a2a724355fabe63fc16d477586dbee5583fd529887d8d75568a9e55c64a7bee057133df16092a31e77a15ca576c85dd3bdad8af20d56830397f20d136b5dee063093cfc7f137b70ed686a99aee9ea4eb77958e8b6d70ba2939808fbb0d7a76684d84902624ba77059069497e2049f0590475461126b2524aad387eb7b22850de6317787c079aff7435abd86132f7d6472705fee09d6ae447da879f3fe8363e0c9e8ff269d752033a1ddc490beed093907e401d7234fd5e4292da5000cff4fcb69e9c56adef28da1e7bd23b64d53dff73419483d4464999ec02ed77aba44cf251d8dd33ce11f37c97c512840dcf7a0b2a0ef0089111baa5a1a265bcaf1872b8d10ee1e40770219bebd269adb4edfc7563bcc2bb6bb9e88d26396d79edd5f62e7081271dd16bed3d2547dca12bfb1481d85ed9a1aaed710be4d85bdf6654fb03411bb481da45079f6b92a2b3daf4b5a43b894c9631ced6b11bf111515b514972f40cefb37ff056199e13d5eb5216782f627a920d0fcbccc01804e6beb0f566f82559a86926d84d0c1d5d5d438a3a50a36fde5b13265cf8b805484913f0e9d04858cc4f20655ef0a2695debe096151264303acbfbae480d026923e85075acb589ea71125e8b464418e26d2eb536270fb22795eb7b90edca6dd434a3ec519a59a6a6993f44543f3f02850f3802355090423552097b02b34bd981dfe985ca65faed7f29bd0e978a693222677f9ae38dbc0dfbe873a78524c7885705f53555aeb1e9a75ac7a0857b82ea2029562dd28d9c45f29ae83f2bac9d5c7da94191946c75465e2231d44cc0a7f8bdbdfd3a900fdc6febd7d303ec547b2173f025e169e38833f2c34bd4a93596e1d3c7545026fccbb2b5afaab73d0f7cf589e1c8d05ba439a58d1528268e08e0997b8c24b86279b7cbaf2300bdf5da34d19e65526556f1368c10110761c8d1166ef761f41212aa307884232c2ab8868d1ee8feba6225b693d049ca983b08de5e8512a73dc12de815cd829f54cef5e00134454b0c95c4cfb9f58e44a98f7393958c389fd3ab0643b724b30da7454783d106a732717425cc45f74fbb63c9f76e06ed1e4991b3e78acfeea2aca16b2cb83fdc5d740a14cc87690e1c94e064d70570711af26f08853c09a6bad927b8d7dd5659e5b190ab2c35f74d23ba35bd30ea92ef328fb47b652c425e9f6383010218cc2ead001115fa13582a03f3454000e7c07e996aff577da0e150c3a041e6949ca9011a52e8d7cd2b7cdca053211aca459e032b8bcc1784b89bb505ff9a75f247f0e478cc1cba6f96352ac59966103fb0100c04f9d4ecb5d90d06ef05b0497b827ea8549b0992491a157aa7b936c1ca1b01b6fd1777de12a673ad8ab7c1fed9f0c2a98b1e09d9a03a70a6d8d6148725407d84602816c01cbab133013580019c893a40e230fd8d6acffe5dc0ee19a8968e7e4946366b980e9fda602a31f02f34a55faab7184d4b8c520c93fedc7dd1a030e72fc9457aa70043166e0627a70851a6e130a3e7945b4732fc56bd4ca542d494252819a46bd663f17f66bde582a7a0884e054091d01df05cb9fed75a80d9664748f2451155a9980f687d8605c7864b93d4398d275378b462c92cc1cdcb508450772086e94e1e1df2577946001974338790318608265fd66b716a24c86fced25133e02f97e4280e7750a669c263391a844d5fce3c1357095ead2fcab3f20d3f99442c8c108556dd742a735e34105c328f80a04deef529b11f57b88dd99325ed0df4aab30bf370fdaecfd4195518285a80f97f046108878b03e87ac3f28c298b2837f82d78868140c08e04d5ec2c3f8e0ea53dfc311321750fdd5e2ea488a3be741eaf817f44ccd717928234f5ede99a8bb558b780b421ae972f6db97386dcfdb0efc01ad41c28f5dd940c05af075ad8a25cc8b6db01024bcba3997444e4916408c2a6ca34edc8f9f7182007e6a046de489efd087869e3863bca7d71cfad986d90f502847841b0aa17ede32114d87175a97a7413ddee32294b89e4a1f0caa5e791d6630337c66cc9b197f2e152d71e6944d46136f2123b3c21ea48bbdcd78e558542d1a631845cdce7a2da7e6cca999865a01a28df3d7bb7f0e31e15e8db8aa87d0d8ac361e1e154a96b583c7eccbdfc0499767c0dd59bd7b7a99661b7fb5e8be5caf05d44e1d8dfd10c76db15b31167409746f46fa2ea87d9eae9e91bab69e40ed2b7227ce50909ae68027c2f13bee58b2e64ebacf29ad3a48cd81ff0688b5ea6933d4e9ff3620cb124fccfc4bafad22be78bc6a7d6ec120bab9fcebf75398062ed05d81f45dded319f83a4a57e63bf0509cc29fe8bad62e2ff938a8afc0296c27d765e7298a544b90874b10985a0339b1ee3860022f9e61b06600baea16589480d6f881b62bc7c4f89b6ba1dcc0b36e81e779392c88d5a6fdbe9a3e6825b757584f64f943d55da08d6fa2bfed500a93ae281e52ab5eaaa4c98fed8f1ac6dfc8423eb5d847b4620e207e1e0c38796b6019cb8be51ceac7f44c684cc60b1a415f6ca870fe39cc24f97aa3f4fd5289046fed30f9dbbc50dec088a2c8d20220a5a8603c489972f80166ff35e5eebb140f4b97af1dc6be670d9943cb920a16970de08147f12bd0041ee04f7ed7c7b20d3318bc5d1061a9f91825b2e7a75ae65ed9bcfd47195958665cdb18fcf46e5f88a12d02fb2fbc2e492066e0ba8433370553f07447fe7aaeb3096ab080a72792eef667ebdb2f270caef64cd637643b5112e9786e307c18efdb08303f193b643528f091dd10b552163eff3f6491ca6c9e84f0a151fed7d30215dbcabf5e82e0c9eac102079e70ff6c7bd1d2ccdd013c06a2e48710aad3038bd26cab71c65228a2dae2468587dd72670b93144d2ee6cee57a8458e99a64328501caf99b9d1aca86cb287096a2f6a4379450810601426f6a544dd14a0e7d0327d17ef80b92146f22931ed0535e5bf766625a6afcfe7d7801b90074a5b8c4a358a6b76273dc9e3fe5b75e23aee051c80d242736b23f02fb53f4f7a21ea35f2ed9b5a52bb6c30fc3c94f946e5984364b96c28bcd941c63b008213f514ef4a6d02a0c3fe31afafb2b98c87a3aa0642c2a2d6a60ec86cc24dd830adb2297e69dd7c1afb530abed07ca46f9d90f8789fcfb8688deb1a5b7b1e55c755e5401a45fd2e5c98cc94a8bb9f6931e670bc515cc412211904eced59169f113b7f80e521973347bf387af8f8f56685418132e38ddb2cc2bc16ec3c2e14c5407c4a65088016bca2f9219270995401ca7921c7655c7c7b3ef795065be2586169e8857040be2d2cd273463fbdd6d19cc629e5223c02484eac9721755b677a6e67826fff0dfd923522b7c9cca2581f515aea1fa9d70d9510768dcf95ef26226786beb98e70878b2112e6503c1e6ce2b3a4469665da5bed20e791a8d9e67f801085e6691a3a3f5ad483fdcfb0004e96bdd2f7d83737e1aad408c407bd82305ef0036ffe6c00251e7ae9ff1d8d5d0e7ab2abd03e0214212240271789ad1c863e8894b55f1891e4fb81c12ec1ae89f97f470e7dcf0d85d028615cefece4e90dbc1ed1519242795ac266d39985ea7483e2aa2c9dd06d72247c56707411358ec8d675387295adac7c187324cd643d6028e8a3f33b2e1a24c12ade09921e23401f66cf0e4e61535a04b7fdca3104bc587fd70abbaabfac5dce4281c1d6f34538bab94d34b77a7602a0031f486d69f1d0ca424d8f64842937f1cff463fd51209778b216ffc9559935331274993bd99f9c13fcfe7bf2cba9ce76404a1b23b8994b5d48e7d726265c353ed90433dfadfa95033ff71b9d4c1a3503c816c767330f2db41c8e235210b582bda633150c679c4b124d6b2aa685af3892770d76aba59bbaf9bb8e1b98e606b67048756945c59c38ca3f2687539f171c63e34dc91c840554e834a83a29dbd4409a3cab95cf9a72706c136ae12798caee4cd80dbf5d834978002191c14e3e622d5cb92c4a6f47a930c4e7d3cc3c0719ff9daf28b67a3c22b44941f6ee8ed799d269db1cd0733a7d944e15c6ce8b4800497b4e426fa696174a368fcf358b2d3dd776f7a4c61f3318b974c7152301964a929783a46606952ac397978e371f852741b5ab80630c7d56484ed870d5720490acd72f7cd0eb26f01f2669481320267f3ee1618afbf70d11d52f38d291215de6b0ae4cf2e2639176134e79ad8de711ca51ef5d1cd7df12245391c9cd79dfd47a64ed3e4b4c02378d0071a5922dd5193d91465e369f3453b025d2f3d806d3502a61be428b65818eb21dd0f96607513d64c23d317f959bebd303ba289f2967687ca347893b56f8edf5bcc1cca1d53bca2fa62a08da7c3924553a6d6d8942a335484a9180dbfc0831aa8e3427f407118808dcfddd460211707f0c4219e71f18edb07234ed464be63b225884a74bdadc4f26fab7cc73c2d6962817b98599518c3d381e571345185ac38ed63f166bdad87387ea9b8c393ac061c906d7af12e13052ef6c742b6a2ff60c08dd11ab9b9d9618f807bf955fc632dfe9314fe58bb7aa0f1404280d283bb3e7a13bc8795e66de0995f1a35689531c92a10f1fcaf04042371fc3068b2a69c21737985ae897ecd08d13c9111d634b6846734356deeb10a97e5dd8d03e43c8c275bd4fc7a874a898e07041e7f3fc46f1130ed6c7a69129188d8d2659c4da5409fbf3dadf6510a635d9bf01808624fbd74f272e6500ef4dc6cc1e3f6481929fa66513ada4956fe6bf3fe060f1981b273cf70d454cf852fa6e07345c717f1774dd3103c14040113af57cea0eace62f06d6e30ff61b0ff93e3d06936f120bd7cee0ad39606f4576982ce461baaea497d4d638d158c0061159b33bd2e7641ba99d8068bb221b7a984f40baa09c785d07cb4fcadce056cc82fd266b96e3ef35857281623522352ee9c9afdb0ebf8ffc291574616bb450397c7b531428bcd14b8d153c20da4d817fa9fd7c6ab144fc9e158e42223041af4e53d427b0bcd15cd3f0156cca7ab014d843e4c6b4c19c658f8b71ba5f624ca4cb46ce5492275f22d8194a9831c80f17e59db37b4658c5ab00fec7e54a1d01e8884a723be826bb5d6f70f4c1641f7f6f065f1af4b067e8814b6d6eda177dc9faabac40350fe774d4741986ceddff406b8fcfb8cadcd8858a9120a644e017924d7a37974df2e954631df396c8c301dfe83110cf20f1162e46d59057ae73d0494cbcab2d39d88d5dfa5cff71c6c8e26c96dee2dd3629348a212ac850bc2abf0b71959e356ebaa7949237476a88959258be3cf24fdd535f280fb1e60d294c26f0d9d3dd70b6e8f811f066a8fcc1462071e72cb8d33bc7b0608c2677085689b814ab88270cb4ed50d58ac64f148ed38698e7d81de52e851c6c4ef233826e68c7097f19b6a86b038374fa52af77045bd99c4b9086be182738a04c15f4437d18936c573fa708af32a99582053975449e83077773e21686b985128e2dbeb972dabd5a610a54abe5675fcbecc5515d25dc3356bd2fefe5263147c54142258e17d76a251189c2f0f9e3642996ee12b49812431fc62f8ce6de0666351bc93ab3a354d47a3c3364b798755cb591dc175970a961d37add80017dd3a19eb0f08dd470c73496b33fc14d7b0bdbdaeba4cede4da70fcdf6f07eb80934ff361c0eb5088b3958b4f30f92c47b56cb6dde99e19c045c4e3dc64995b1fe46f266c480ea177c8c391f7a12c10a2c98cee1770cfa68ad65bdecf9ae0ff061a032a9e028cd93615b6c04ca899ee4672245111f498bb7496f181dfd6de51e78a5260e54141ae285e6aecfcaca618ae36ed7eeda4f9efd39000aba31703facbc0c76bc78b656f53f6d0e10fa0217e7a69c69dd2b7c600cde59265d9af92844f229ac755ed4e079bfe2c8d972d8891201fe419dbef81ac61c6c1dd64cf0c1500fcdb048b0695e6c5eca8c9fc63aee997c036928ae1752ef28e0bc2ad2ff1d7111c78f7bcdcc703f194e5a091a13f4dc1c283dcc789f1aa5526485a9d740db842baf4b4bfbec7e5ed80fa45a1d899e1c4113ac8961f2e511e45a907cc786bacac56d85e704a41abaeeb2334e4ac72da81e2ec3769f27daa78329191eadc7f834a41f210b3e4b97868f472bceb5f666f8baa95e40850f2502802ec4921f5c8704b623ca04400da86c5871af0c73d2123a419e333c4a7f25389f97a3f68f5d342dfbfec19f02fc9cf78d1d1fca47ea6267895167f259465d7165939ab3dcabb272bef378ef27fab28c46522e5c6d93810fddc1cd3dfd1e7d74decd35a4e37d70b0cc7ca967c1abd71522d0e07020a4158267ee79d3766f84deb098e11ff9bc2a5c941be87d67f45ca28a8b74fa19802e8d27a3cbca30b9ed0addff168a1d1e7d4ddea06710df0ade0f98cb637be92d45b0b604cf5846d51b972db1a139634fdecb1c6ca03cf93234e99a975523560d9f406cd102bb577a03bf48df4912cb2a61ae1cf01143cc9a82919ba72515008740f19737caa21561f9374e90129e415693bd73df3790b3a12d045284bf428052fb656fd86044bbf08a028b34c48d71c16cac7ce890dc3f3c663a4d5ae4aff0ac8e5b6004c7edcbf19a3d37e3d53a07a99308ebfee2b74acd3fe6e86b8a95aa9880c8269413b7a1654d23557019b97e195fe6f36d9e7f58aa38516ba57f9694ffb4a817eac4b22d0e0f54854e5e22ce957621b27b272c595723c9a546c60f6a34d3183918c21bded221698c50b6e125097925d2aa7ef27ed314e42b9955d146071b9af0e36043b55b3a8760262fec02aa26d2318882f7a83c978d89054e18fd8feed96f8190876f62b2dcfdc3a2ea33a06c6ce157ea399a275d1534fd52ebc9388edb59da1355d4d2d071f02edbd28be2289b0627598fc2b7f881d154c47d0e088e645a0a462a0c7052e0575334710f0b086a564786550055394cc7c5bfbdb5d75e60e4744342deb19ac1633efd11bcbcc7c238a0d0104662a3a0693a3fca8006bdd746433abf3d65427680a65c384e66bc8cf8c7f950a1dbab8d1fe4b086cd6e5ca159e92df379c00f90e0d5facac5c5f4c53a1f69b65ca214b710f56083586153ab6376eaec5c4b9f13e1d1e1337f004db09adeceef868cfdd2ceab0cc98714b49102ef69558656eadb80a2f3865b841467292dcfaa48f2072ad9669db563b3fc1cc922aa36385ba9cd7e950b712776763515877afe054e1307f7d8e09796f7296692ec6d3d4fb879ab333e09cc787b8f3443accfb43e23f046e90942db0aeb0048d6888f7c2606887a2117d01fa5c16b94ebc4bf77787ff6ac854612ee1026bcb24db6f1b845d47535e88fcd45997b0bd6c8cfaf80fcceb6cf475f14a9a7bd6f4e0927257c8b8e4d8365cf837b26b39bbdfc6cf5c4739d79e523d84f1dd4a59f17887ee23fdab559b78ac64d06e76f1fabb5bfba66141161afe4105d02e2873037da9625bc1b63e1c67f5a7114fdfbc81cacd507602bac828cbf50a57d7e99f2de0815a6f0055452baf9fb9322f7a95ac3ad4dc99aa0ad600b75a318f27717e5d76fba2996358b7b12aaaf4b93ba457415098e16ad131a3f7a4e60733b48f4870cd12f2349f2cd01b0f2dc603f5bd4cb18a4b6ddfed4e0821fcf60ac304600881dfe1c0e2471a40896fa7ba28517d13e8f4c7a0e0f6bcbea25f1902a8f7b85215a11c8b058a4a0c197f3d7b863cbfe96f76eab642de52043ab797149741e599d2e3f9b2132658058fcda795ca4f23ef9039028e7c8459eb9a4b6939da0116b102fcdbbe937343aa2f19e7e1c019b8f93ea98bfa07ee5b3470957a6cd03f1cd3f7230a893911d648eaf3ee2826c58d210abb597ce721618676273989b9cadb618ecd59c2a5c4b1f853085967971b8b6b7769b2954ed6dbffbf8bc68d53016c8d3cf666dd762ccafca9577c22679d2056ac5f42c9c24c6fa66a593635736837d72985b58675a058d975c23dda4627f5ad9ccb7a259392a5cbadbcfa1d9d4554ec875c0954caed8e4b681c6784bd3b8005619a6f06b839741d78c939aa8766ae5c7d5dc8ec4135847d92ee3bd5140eb92fcf456e919bfb9c599272240b5367064ec81527886ffc19a7f1df4f33f0853b9e339f54041cfcb35d0b9a0fd2f145eebad923bab24a99905fb00a40dc7034c75d8822193d5a1d47e9bf703062715a4224fda70d984f2c1297f3902dc4768ba42484549ae112a938fe9a41dca850452c88deae39cae29ccf2d9cd60a5658f6ad9d605a83e1c165d017aea982b06a5a169b946b9e6b3b30d83b6ef3307df217bbd28f5f2202bc59b1860ebfccc345c79003b88e62b5379ec194c9eb645b4586b45fa4e66a42b2539769a724706098279fe6b3a038d2b710c65a82732650688f2f8238a0aab342765ae8db62b2d8720671d845484468ddb6576d7e4bbde42cdb3b4c6b2e476e5feff7968776ea60c4f1461be77b14cab40bfdcd58b843af4d4a64f4401556a69e73388c63728c1815100a5912c7b06b581781e3eb43c57b5807dad6e8a9037e135a3ba8d849d64d0967db19c2bf48996a2025c73310af0eafe7ef35b87cedefb8e8ebf9412734fd230f9931ceb7db4fee01bfc2553a8eb51b2b0f050312eac6bfbcd64211e90e518c752ddb618c8fd2fd9d987fcff668216bdb4c4cfe3dbcf88e43f0b7ed446ad48e9668f4cfb4583526440382e2e200e03dfc14791c237fb509712fc5ca15fce3785068f9dba064139e0d8239ec000876139fdc8a25e55dabe9166514d7d3867d4217c715a03dc9b14cd9c10df15ecf72b9025afaff96d52df76e7b0ff92941340fdae598975ea9c81ee7a45def49ca0b4ae8e2360a9a7d3d9dff9058cfb1104e29dcd2119a87529d9c9ccbc6e4f0a7bc2d119c20b0bd597e903c440dd3c12f473fc344a276a235c1eb12031e882d5795d39fa0bed4e524c43a925ccf5907ca512a1bb3c5610a08493a1c52a7abae0df737f4814014c2dad409eadfd61a608f7dfbe22d50220a367176587547b6a8ead957a5b5fc1e0537faa7e7dbc9d74a081f3799b8cbc79b7d58fd36f7eb4b6732aff508424d59b50cd219e969c3b18c2a94eb3ba0043e7f1e2a80c22376a8483da2a62e8e44e9fbb2004f9036f4e01896d661af8e53849e19e15c86c281ff89873ed813d731abed73afa62a9aaeb13edb87520cbc9c47b8a72bdc1adf45489410099c7c23357e15b2b6c4c044b2bdceaf9d229f51b485fbb3c1196fd6fa072b5d844a73e9befa4c4fc42ccaa70a13f82b1b957ed285ad53afa3830c1a3b4c709b8ff2b51a41c6c1e0d0d91ecc0e7b2dbd3805ae303f6aeaaf54d0bd8b6dd218313bf0efa3ec7bc681bea0c37343491c80fbc5600e3afeb57eaf67c219832b04e438987b76a5159823878a363ebd32e5455b3b55c6271c2259fe43c07ca58d961a8f9f20571a0b2d320763729f54c29c9a6adc3b3730b9f5b57a1d4bdb7c805288bee365880098303c5bcfdddbafd549860c8e1804eea8b0f265cab5434a494fea8dac202a12eb6f6943600fa8f442111fff3dbf028ddb423d6f6e9041851a1e82245b7180ed134eb7bd2eab8f205867d4e1aef00b0f7e3cd76f679159e5b4825d69d7cb3a5366e1a04ff6c9bf436887faf9a0c0d7521dd465e1550d5840b4e74de8c29e818d0f2d1ad52d9615e591ce85f9df7c48583f26f375b952add9146f68ed7963d92d9dfeeec5f97fab3063c42867f997bcc5fe8b7e6a005536ce71f904058767f21d3070e548070b1b98e9c3e0c8919774a6ace188bcc4f01ae6eadc63fa0aa7cfbcdb223a22eaf9cf2c1280223546a39d40b4ed362c7592dcbcc8115724272c5196a847451f0b932b4564d109d95ba272905df07c8911f56bafdb051aa51fafe3089941a64ac8ce2f36a21d22ce6c2e274d7e50f4bd9ef40e9db73a956a411db64ff59838856666ed7ba06b0104fb6e6d07846d4fe9ee8759b58e6647edc119b81bcea0e5cd780ba96355191985005d0bd0f024ce6bc2fe794b913e4fd614cd34920d1dc2e80722fc8c0f54a7df2c67d2247912c7a9c27547a7d4317fb0902f09295984d459f2cd809651abf492cf3d217df89fa0a651d0e222e89c072f87dcce52cf875903ed78a0f09896054b21ebd378ff34aaf1b5072598bb3037993ac9222681f1d69b6f429a56f2125243a653347a26364a77bb33452c1e087a024edc58764180b41ca5511f3890f853d64e104cd2efec428052f8ed6d0965419a463bbd1d4c37029f2bb12c28612db1d06106f5182906a89a67d31c58f368464a474bcb931b03be67ed239b11ea1871793ade5ef51b2fa3895fa9fcfe16dd94d842fdbad23675b6aeb71c98ab743c1b23ae7766995a877e349b13e887dd90a73ae11f141df3f8c869fbe51e0cd39bd1a8cfe2c4ebb8276e5820cbabe00c945ebf68182e984c5769b6976858fb560834597a887553e9d9ae273c4ff15d35e1ebc570a6a06e25f05c122d6ed2ad378716124aab3b7ed00d4eaa7bb86ee8d88a178ab0e5e67888416df522b16c7efcd20be7db8c7ac2c035da255fda66a01e9de14a16a9274942783f561b19f8b7a5454055a20bd427059fe5dd25e0a9559c49e0f2613a8e8319d1cd73af7e84f5510a904c77e0bbb6ad58d3566b3abda9b95a845ea21f2b2403636ad5673d26a2ca167173f47d240b3a81175ff277b98141fa0e7104cda89e0e9ef618c1e8500f178133809a3a650ab2bc626a1e5415b840dc4ce8345483417c1ba81601d8022f6f3e93b0d413a5ce7b2db33116ea37a5e127f850cfb70a10a3af7ae61c78d1f10c37bf47c404c8aa205f8ae54af1788611ea50575873173788cdc11cfb75904325c9fc0222a394d2c31a196806ce7711cddb4658e123d14e96e8c5074e965012f47dffb5e31bcb700feb288fb462106891c94f646f33b06dd9fefa1a43cb7186b6fbc57bdac25d530718e382423ea1a58d9c2964daca3fb26e90312b909f5aea047fa6ec17f5cb366f7eb6ecca4e63f9b737cfbbc90b7ff852959206952c420c6a161e16a1014f18b667cde89945eec8fa16a721e3503d8a64391271cb0f5c7997d49100947e41b7353db42856c87928c1fe26a2dfa2aac2eeeb4897eed83013a673ca273363e9eda99216b5fc055340c154c08bca60336c4b0321ed78ffb38e6fab884ce7aede59f3f30734e26d065723c6210f474de892059ef1e519637b5fedf5955ccc3a7ec602e0afa4549d23622ec07c6dc27366b19775ed666cc8bd8f766b607e5169e117fd76f4e1e1c161e0ad290273813ddb67c69a94400066aeac454ec273a811376dc6b1660bfc613ef7388d06521ebb6d370c732ebd90ebe1cfa937379d53ca0083ed90acfa78d97ec6c0774c2d54233cdf986a1d2252b1e67c0a5f0bbd2724d7d435b04060b904ea55e63f920930492b625bb806ac27f64876eca3b969aee715d13a699dce95f1687defdd2981b7db39be8f770d46e4c8570b3b3ad64c4bf229bbc2e576d2e57c13494a401ba98c753170a912e3e8d1f25e4fcf3414b4f86bcaf65b29ff8e275dac77b5e3f0a2e816331bfeec50eb1203145b7caa4a4d4196671a60219d3c8cb2d9dafe9b215cd1c51b21b6beaba75dcca218f9eddd62ae48935b7e71175dba259b97c5193677726254db0600b7e58ae5b110fad1fcc909cedc2fa513ab29421da10fe2c1a82586a291f09f3c5ed38914fdd43b795f939bed908d64fd0ee2e595c990ba0384aff59c5e60bb66b6a139df1e0c045bf1d1562f257e25038ac4a45cdca0201c8fedddc945a187de0fd0d239bff37bbc850b660def0c8b3a3dd08725c3fa986730fcd90b79af10d104d4a2ba78e2b53bc7664d309bb7b1dcf30dc42b0a02186fd66361f72a073565aa58700d80693ec80f87ff9e20079c77f31c10f2e8b25a4453b64a5d7c2bbdf306971b18b72f974b23cfd19ce6752f550b00827566558b440303b4fbdcc0e81df8c065c7ad2cb6400b049062872c853d6ed81379ef3cccb5f9f25bc34770231c19bd15de407ef8c69718d93ef75fc668aabb7008da797fbc1172460820ca033c65cd92b43f482ff39b3d5b180561a78bbe4ca8ea0933069014430b3631254649a63d236c16f42fb3595b92179878de35abc3e007a537e66d921fd2099404f29fe992fd5cd45c34bf6bc37e679f43fe97e7cc0eb488e2bcb86b2975af56b4a4357a138980d5726e589cd0cadc2e8ce02656ffb4b76f4289a4f59088f0cfd9c18b74f034ff65e4ae15b8f5b36172a744cf63bafed6df5e98e3993374dc5b858e388143de79eb560d737c68871dff11eeee7c20edd6869982d9875b3fef7048ab1548e65805444df39b5585d9d310c4534e350779aa9b0c7155c614eb60a23897fc0bef8559c49f0bbcd4458bb61b52b2e4503c8c717885f489c152cabea54394ccd1622491311a05abf6fbd68afac2fca2b314adf995145d211cfbfbb48e3a2d2115945f08c7da5d7a6ba85e1884cc08c8442f403537df9aa6704e1e4ce7c794ea06ac8160a2b788e7af5aa47e92638cd3d568367845246ca07a46d862de736733ad04c8e90cad9d443236f8c6f5e666be5eca8a4868defbc2af53c070c8fa1d0c4887c7456acb7e75dea2328fc5e5fe30c5fa5a5cd1bea79f10f73f407ae7ccf08c47231248860b3e2f6f1eca45ae20514c3a4d2a0781dd0bbae172c5d289937efee784a97c04bde249a82c07dba1a7eab3cb930c202fe1446104a0ba6b0f4263e98530ede9734ca6ba6af69f1f2d6138778f2bce5af7a420d99927e6cca8bbe2240ae9897842661cc34f1d2bc7cc93933107cff14e5d4f27a5233496e63b1fcbb02860e6c74d78d27fb8a63d3f9f8fa8b74d0ccf5f560e01ec6ac7512cbfd848c367d405f2b65517fa45ac3bf61e0905087dd771402339c1e93e37a1fb2c7846244ac24e72a77e1a5706cc07ad5d36b97b4f8426b9a1caf2ff2c3ceb75f20037490d842a3e7882f836805d4fc71fcd63a39bd733478af1221bb92d92997a854689fdbd224a87f55611670e5ce46f216b205a4dc873a9a067b30af0ef4f836ddf3a8212e99a66b39915ce9e59bece0a310ea37a7610adfb1be4ba45e3e8a19b37dbc24a6f43a563080f4505a3a347f5fa2390a7468841b84c34aef7f9b80ee944d07c38f4a1ebe5628a2310f693f826c3a6dbb148fb6abae2ac0827b2acdf5b518b06c56a7f01ede5a647b2f45b6ebdb9ba7db4360a7f0b03529099516bc9926f58269ba0f2d223ad8f3819541aac005ec30c066060064195e9674508d0b36428a8cecb3ff6e22b8c90c94fc3ec8e2f210094c5a36e662eef6b63d3eee3d8602338fb3f509b7fdddcee915201ac38f05a2ca16b97c1f64b4b3857e3d7a30c0437477bbbc0187a98ed696c720bda51080b696ef855d0dc536df5e5115848ed5e0b1e958b6b21b92efaf3e826e07deba5f90392849836dbebe4d5d32be68c3ca2e3b81280b530c863015dbb53c0229e3af3403b36e541dd09fe0b9a60fbf5646f9efcd1d8fcaec1e35b97c583dfc70e1862fe0d09ccc93232baa6c6d252c4b6bfd01b660ad1770ab89502a798c63ee17136f834c500307070a3b08e30e1020a5b57ffd6f765bd676f0a71b613eb03e05cd40a473edcbbd7a9cb5b583f6f1217e20cc1ed31bba7ddead1cfcfc8496d75afdbdd85927fdc2e24ac3bead9d3c816c587c8814d65548d5561fb837aa4ca1e0e977e8412236e0a01ed1fcde95554ab75c28e040bd1582519366e9e8adda1c915c0a3ba793f0c2565fa08375c40e6876fd189034d84e2fdc5dc2f0fa4048020e54f5ba283f8abe3ef883b46901419ce723d9b5f098a0e30f92043ed10a75e1ac603eb6945666ec466107f6cce54bcb5c327ce090ceb43b68cc56105ee64d1ace4d51f7851cf12adbfbc431b8367a37e43efd4a82d0eaed1339a33ce7e73b09e0a07ec7fd375821d46224d8a6ab7f8d90e0e31427489d67876133d75bdb38fb3a3bf38dfc69e86eb6d7f3068ad52d3fe39c11989396e71ba6e3afe06bef50681fb045f42121688c1d42c9ebe29b6bc046d35aff701a3432b7b1f513c551e3a06f1dc856a87c3e77c2112f9928e4e3cb4a44cdc283801eb36497a0289452c6bd41cea5c9a7865d146a533b167cda0d5a7b86b822af4dec597c580b8ec10d4f469dba6a3fd07d6acf403535204db8ab57c34267a3bc80416e618767f4c1430ad404f9f82a48a33b2bdfa206fb9b90146fe3d321130e4f2dbb67feab3a9143c325b69c08c2200413ec71346d883ccf8d65254efc9115d920cb953807b7dd48f97327694e9102b5b0c2d5e6f3ff14d28eaebee55131aa5306936ca9c510f6aada2f8bf93efcbc1fcb7dc96ca3d0c207e56783e567308b0d0b9dda36fd9e2c19edb86b04385b5112571ff64541fe5583f155430c3453e95aa2f08f378e8be6f70728fc12cf244f4fac583d6155e0f39a9ea74e598796897992933dacf9be09ed4fc9244b6b3a8d47ca8ebae2e58220dbee7597e371aad3e5d06acac9a36191f3c9b6a2ff8bdd338d4a75574c1bd6b72924e1fa0afb675f22001a3df719aadd98a49eaa277131591a6c587816d25bac9df4092acb08e192736d4f6753a0d3f01b343d039a5d5488e284101e5afded9d567def9ce4a00d9782555173293eca2f5ec55f6712241b484356aa3d31040ed39784bee88e9b38019d9e8209beb5bd76c84ad530fb1453cea64852493c55c21d0c69785b070ae11189b464d2e192994a34985630fef1c87270ed74dc85156c9af09f537af49eafc1773f5a386eba4ec9d585f6ef97019b4586196a0beaf6547b2bb300b9a57d5aa42894c58bdf8b8116242d504d935fc833c7f7ebe0761f2586cc78d747cefd1da4ebe89a5eb62a8d3d465533a474adae7b7e1daab3ddd500bdef529682f2b40a045fd9b82f155befad3c67ec35db94c92a076d54be7a1a7906d549569e75041522711dcc3f0a8085d595b03802f8b7f27667e20852d917af56e42706a792b169a7966eeabb0eff44b450c106fa9bd24fe071e5f8b3d17612ff139ee9cc3e6524a28b39d98afbb61806d7c3fbcb2bbe6deb57b75b6163bc5158ebf8741eb42aa60c646202a49fe2ca5ca3606e786a9de393a0fb90341d05565f048a8b968ea30ca64914c16c580592a4e4a4a36d4707a86e7c9a2dc5138663b4bb49be35fd05f1ea07511151aa7068822cc9006a3d732db1bcc73c33fad18ad2aa975861099f248e718e14fda3ad692d3f3bba8685539f6470a3ae77de0873f6389f5762bcbe0b84eccfd77a7257abe267f9cc6393ee03877d7f1f5afc05e0bb62dc221f3f3a540e56bafa6123958734c0c4759b4382970c3d9fa091f809cb719c0f0bfab9814dd79dd11020ed9c450c85591dd82e6086b643dd72835db64381ac79176554d98303a36e80bed02f843f60002b5b1ccacc99ec27969ea7387173cebe48c03151a5c234793fcb8dd4a68392cca7d665abdbaff708438a92ff4ab92a495e7537fc346e82fc78305be21b92505d95933f9d1f615920c9f5d9c139d2d043c9baa9ed0f08e18b15d378d87f38e2414e74370e2712a64b1a43542a719640a02fa840f71c98d2d073914c025e48abd0cb5911d7c3440430ad577cee49530868ccb3c784a214a0f7c3f830169859aee9bb22124c0e6d32516af4f6e029e7f41fa462a39975382a174447ad40f50b11308a478fa1df8c083e730a4738dc5fb78970221b70cddf03a4bfe6c0d7308b5bcc8b84a2a3c964fa530d6d9ab8a7237862c2cbc1e1b03937ded339d99d185c92c7bcce26031e6e90d910b10e1bac204f26aff5f78b46ec91e91f9d565fce380c4f37b2ac1205d192fb190fad8b2b7aec07e034b33f2783ac27ef372cf9be41b8d1cd3f18b607533693755cd62cf85fb16e7ba436a54f76ba39f67bf877fd6d9afa16f64de1b7008dae9290ca82ec099a7e217a27e0867a355bbcb8ab0403177e32b0fc17d7d60373365c0a72e6cf7cd542e1a86013767e4762573fb5652f699e2f050a0d4cf92a4804c9e2f34d5953c1044581b944014a1492cb9114248dd1cc2a9bc86d272a66bc7541c2fe5cfd11941a82ceffe6861d2b145b8a879e92a462aa96132bd769583085efd6b3b9270fefc62a7698a6636808b90da30d0669d03e67ecf5832cf24178e722b50c2fda6b1753fd22968642ce2a0755c104ea264a41f541d403031ecd6f0d9c4fc1cd20d573be59776a4ea164ce1a7b5a31f4583955c2d49501054cde9d495f2f36b3e5968b78d80cedc030847c36fab82e9290f0152f8ad1b53fd4a0a0a882e6d1076e34cb5daf19d41a9a07e78c61cbe70f71d7d9b39a4f6f27a301be90757333c242b8a69e9a1d51f06ab9981a7e36bfa01554cb91cea0de58ad4a8ef91d1f7f07c2055bf60f9caaf9858a8a12aba47382cb73d8a5b5fcf68d6d9bd8c971ac00f24f78f74513c97ec0554b1bea53b20d443c0123c91ba47ba1ac32148fa60d6ef5b5cddd33db03b9ac5baeebb42383bfc681c87a9be40009b59c3d4da5feac17131613e2036aeea730786d20b6ba8111de1f75c577cdd06d84b8aaa10ade0401211ba3413ba99843205591ff97b2042fdff23cc33cec0a0e3e54a9134e61593c8c3d0d4736734b66c1f0b878a218d2e7d7fb6dbdab3db9f5c8080016823f4e8c0ccd118f9e11c693214b1a1350c3b9fa5e0b185d0db0a2da3909722fffb61e84cfafa2a26d6d17fda9152d3d5c1a1eeb1ac3254a5cf628d11fa5412f30d566dc05ca4d126b01a28af69d841884ca5e71bafa11b00d99a7111799d04e336186e87585296ddc8c5816fab796d13a0f3680b5fbeb96b8738bdb1b4e05e3bd7961891f8928595b3e571712d418b3486cbf25e0fc8cff2d5dce553b8b07a4a5a80fc1aaf9604a839bff548905a508da8189b892c375b09eab73b4c023b6d12e5894d9f7190bf85ba0f077f90a6a27e89f70a4fdd70f186f21dd7d2d7ba3ded60f9468b7a695b55dc47d1e0ac594ae08983c51d0f0be85b6f756f2b38fb9fad4582edb1aa31a2a65ee03e91944f1bf3d2afeed87d8365a5405283626d9bd0b0eede8b483aca4de026f50792fac7035e770e0866819bffc010a335a55acbb93dc304efa880f55479536f4f0b1959065c8efb98ec53390d7541527f6fb9de5233f3f487de964e7a1f4a40fb5489c742bfa8c2a4ddb0481a9616c1f0ae0d0346b12af818857455afde7a563ac86f444580a9ffea93f3f666d675cf6dd2ccac4204d15498c5b0cdd6bb6b23033fdfdfa100aefb15ffb7bec9abcbe432debf940efac1123468b49763817ac93ab3682ca9f3988a5a9f858bc71b0a9cea3cdcabe4e5463f8a8952f337142939988353ca581368ab4f6d2dd77f07d604d433dfca9bcf4c8eacea6e7eee0a385fa8ca03016b7a4ef8901b56e2e9a7ad3d046fd4d0b165f2801c1ef17d638a40580cfb0a87caff0d862215c3386878b0c67ca1503984e881a9f99eb9a2f60caf159c54139c49e59c4df794d91388df93615d1f35a5f8f05619012a398b0699aec4b12fb50c15c0bc0966ea85e3ecd5fa2691b6c32b008c0e16707a9359043d5df08503fdf302d7a2ff4db00394c990830e2e06266733aa4b572b271353472aba01da6661b44e68fe1b0ff3e4ddb407ea1662486e2114509887cc7b98e59e6b4071162f537838ecf20b77cfcf4d59d85af7dd2deff341d6baa1d8ab7686724a4d842c42e34d50ea3721e34f2e30ca53c84b41cdfe4276b48a526e283ff0d45134f2e7ac73b298fcd4c39a044b7ed8314ce96fd3563ed4c6e781fcf987baf142e2770ff561f7b8ddf86f57e32caaa0b68d2a2536c6aed13c7437d1afce53039e5a68f4e7b3798055b4726c6098fb8fa146b00b97e762c43dca81c06e711db25562fb3984fe50b19fd475488108f674ffa9b69234c3cc85fcce18a1a96dd5b5975d4d96b30082e7e16a21676f1d80ff76dfb61e9f2a924b17aee4025ff3da31d6f62cbf1cba31be683aac49a74d026fc656e384b3dac1744d4082452a5a8ff5af5debb77893c0a2e001712ce7a3499a220ef1939dec41743be042724eb88a563835c7b4c480743e0849b4fc28e65fb218f6276a8a9ff291a04db7e433fcec622c527456361137269426472eb405128c0c787c577bddb0bca6f8e8a30a1c5157722e9fc9ab1c39cedfd7ced9a81d03b10e3b368f5e33d08ee8918c71fea592ddfe1cebd4041f982150f770a4cc237a2266f294ee2d95e96d0c40059be94ad2d123640e2fdb1db6b7701385e8db2c6e4b5787034162e6474707b18052c9bb4058ed7a4c05244d8c0006db1b69f0f878c4602b9b2aa1270f9a8ca130680c8002aaf893708bb75a83293b9fdda70fbea2119e8aa3cecb8553abbdd9abbede468f3e9cf1e3bb5b07f26dc24b29060c9ee11eb30334f81a4866e5168161d5725eca6d35b37a4f63573b6ccd4b30f612e329e75e295a14244b25866ed8ccaa22d7dcde5295c651655f283a917b242750fbdea7d8187a927aa1392d7c2014bf53da69f9664c35315d058463e8ae09a2b67cacf08c92769935bd7b3eaf90267a9bf7abee39be67c594bf990890178f7955f1ecab1126c2248893e03371329cecd8bf3c063d495a68fb73e2271c47be054e4225c98606202df8be44cf51efeed8eea2ec4d7a2247c902f5bf0779caa66a07684bf414dafe61cdd728079eacd3558f496b9c34b4c61459a6956d9d82a80db62cf8f732f8bec04db69d7e9e85b0dd2bab6861997e96238f96084ebd8e7e8f6f22fe87aeacd296bbd4475be32437b71bf7e73168cdf425757198478d83530ecc1bec7527cf0a2cc8170e8c9ddb24be2aeea65a5526dbc599b64ff2216c10af8d1d75a83023f5ca7fdfbfbd835dc077b5422c8708b699c26fd415277ff803c804f24dd58a632d343753b0989666b0180122eb08e7f89c931bf257de1af70904e30cda8b4cb0395c6d2f23ff40ea72f666d09b9c79d50db16afaaed64391b4c7cbf298bf337dabf28427ffb8fc7d65e718796a83028f88df3aa8fd83acc94980eb5ca003a4b2611d1a7cf14e21590eed3b2aab556fb5f0f784013ccf5a74825e2414e41cf58617434d9d34f0c9e3f8ccf5df68fc5d80ee0aa92cc2e2199e04b68179b189bdc19bf10e11041b18ee6bacb2585a4bcff8a88981aadefc4952122b91a4d9f925342fd17ee78292bd2942cf6e5595c018c7d4142ea8aca675a6264612fd8f943f9e37a81ee57f03b027328725e7088a341c56273fa257985040e9580b180591cd9d54b0245006de882574cccce469aa54c3f01d28aac688d4015b9fdcd3e371b963e9877c14107081c0e604fb131752766ca979c35b5d3135401a17a038761d3f3a28c517f591933fa4c3a418adacd11acc756dff582932accf74fa1d3e6ebb67a4e128c3c38928cb9ba10f48da0dc33e6794553f9821331d3495083cc85559019c489a12493ea50a932a74a77b12318e526653ed3824e517649e3b12add4ab6efbe593997e0badd681aed378428bc77d14d85d329a7a380d591829e37aebc767e4eb4b9a82dc4c830046ff934dcaf488a793a73a311ba9a42c608078f070acb333aaf21ec5be3a261f75bd7c95a18252d65850d7893757a985850ef414e5e70153b372d3fee2c7152a32d13b2e6cf0422bd033ef98ebdad68ffafef4e95af322fe0da7bbc25935205d8d86498bead1cd43d6e2cc57ee935eca6a33d07b3a757dd3f3430a80e76b302e132b8b2f5bc7803b1d0b3dae7c9c9653737d51f679e1837a85c6b3cf467de8e9edd661377b2fc339dfe5b0f9fca7ba8986ccbbe6ec4583714818d9f1d40d87c6f6189057f4664ae773c5b958d54d69f924916afe85cabedc94e1fb1d8495acf6488e175cd752f13cc00e45ee906768a4c83b7649e73c58e3e47bf25ff30c76270cc742ab532272d88348ffd36acd01126a69d96e8ec1b5a1d538ba0f2d1276b7290a72e28368ab55d28a382e7241dd55485086c7872a6caacd9a131301332e039f715c614ff61af6a7620cd08c92f06897522f53730c42d3707a5ec14f3aff5a5bc1df45b10880212d79bce03d53b7aa392d33e177c43a93f647ab2319a05705a564e28d843ecd7a0de8296b8b465576ad2189950aa508c8fa775c20a5dd22b4f09ff458d839792a381a11d9228b3d783fb33482d6368ffec7b57139619a961c1829cf62ea1123ec5ec80075f9333a77539fc67e93bce1e202ee68b4f9efc0f604c7cf96a530d4f70c9928a2f7333bb2e3588ed8632d26ac6ba6b33e9eeb960f34194d3db284a53f133fb9560ce2a06f9f3432d5a861a0bc8c53397113eabb21e15be16fc681967ab3dc9148bdc8d370a6d2198d09deb8c80190d2220dfda19bea49a59af9a687ed96841f9a2157631a29b3b61c81dc121e358fab44b0ce340bf52041a2790c28e9fb22e04c23218d4a423a6d601945f4cf14b6b1bbf074bb8f2bb202f684276665d3a52cf66936ceeacd3dad187b2d4365a279f2c17fbbe973b32c96f52555a9147bf5d26b10f05a117c73ebd2fe6e8a25f74f35cf970a621cde62e89c8054dc658316bc11c38c4feef33d057a79220ee6af7d89ed1041907b63469c281c343d657aebe1f9e514f5df067c956180e4b81f40b637f43600f623b90b15810fb9e827380f36e9c5708271f1e7a55c09b60c25920a857c00ec9a2871982e3a1fb25f28acfe41842f6d9f66f1a3b220c4a28472fa14ac1b2511d41aeac4a7364a84aa3a63f8a1b724a7796e92d4cc8a0ae61ff37678187bd857164fb5f77763aabadb5c42dfc8d78cf4ed0f43fa02ba097af1ef402ba9920f4e9c3e5eb70cf70b6451c88d8951893682246d99b19705e693e2ecc4ffc9c13a8439f64d1b3add03105acd75436b24a5f66ae12260f6b895bd24cf7419f955e9f9cd58ec9cda40d76527af1151714de252df77a59197d2a02c80956d226c03a48ea981ffc7670bb6f524f2caef88fc95cdbfc2aefea255aae3745f366994c14946f77ab46dc58337ec993c8d04dfcbdc5fb852622d38cb196d85488318e7a20beaa068ddfe99190443617e1258f764b14d1956605027e783d8a4d3ba14edd097dd27cd54ada420a854eeb16127ab7f4197cf8d47f1421b04f5e1dddcfaa48c421b5d29638f6d692c80ce0dece53b2851edc679b8b61db478f506126693ad2dc55fa16b5422c26e065cf3dc8b9fa555edf8909fe2ded8693d3c333c03c5a65b7eaeaa9f7d86c18dd0bc76882d46c267db2cc008fd0407242efb2e9e28d234258d684dd1b9ed174d5041c58b43296ee67fa0356922c1a4a037c3b455272d653543c6314125f8cbf145c4d91ab8432c5dad4dd9e0b6c96a17035b5845400b471f1fcc501556b731e7562365d62e1fd446045501ae848c8c2069f9ab19a119912f24f83d405163f9374decefb845473e2e9bd6d6a35ae9d87c736b945cf4844bfc8e6d3726ecdb06acabef01bc93f12d37816b827427ac2bf31ab2456d28509c6e21d3cf69f7b44d87ef80d6d78cbd27e25edfc4e7cf3954c298c8be0a02800d85888af87717d7138e60c4002fbe5da755a733001a9bc0e7954ed68d1b2639a7af7c2039c52ec0cb2421298d257f6b3ac28663aa197acf146c1804ff01b2f4e260cc49f1ebc3afbc3d0f66ed33aa6f3e7956f21af25df6969cdc526a1e613a07f4f8e7660fa8d261e3914b110f7eee344e937756595259627f5b7cef2d2a9017d7a8eb5af97a5ec7456fb70ce9fc2d0b5212a86b232c0ba8919ee1c1077afe3c8ce5a41e6ea63b26165aec59c01c1652df4e1a82c84fa586571189c0ca8ff268c10a3df95eaa8db7e5af0baba3a8b68c5fa755351c47ac4df3f6ec024c133550a64fd5cacfa99538ba5d506c16f63815848a11e15e200cb0e3055e81e0046d27282868bd129f36bad8c510584755bd97699b0e2b76b66cb452b1a9635aa6148e071d1d957d7b2caac8b0b23b03f47d63711a165bee6e58cb39976d945b7a33c6f0f9feaa6841b3e2adba69b4c0085b8082b6ecf97859125b2972eebb7bb11311d6cae831d26b33068247f37e0a3fb0c137fa72155fd489eb3ceed5afd176a4af87dd9e9d1f5cff1780d45e478df549bd4e2fb9a5c5b5e41ab970df1cae179d1c251b86225fea853c7613d2cc20cb1db8ecd74959a96f033aa252534e45b672720d8bc48ff7b9756915dcefb53cee3ead9bda63f357ef50583a267e5a19804de0d38c2f9558389c434ca5aa33a349f74651fae6c8ab8eb79f8da729c6be52175ba2f24d4fc90e74edbe073d951c0826710041c1e0cd3c27408b8b0f1a5ee34c920b80d354a6a8eb43825b383824bc209c13acb6bb7f53f2061b6cddd99d456fe8c1d919939a446a7bb309970f4e0863e9650a2f303bc28ae9e4d4c1fed5d31de06b7babcb64425db5bce8301ac5245936e482a65722d06737e5f5f7824dc0a3db9a7823638185a53ced5cd7fbd4c360ca11541722eacf4ea71e7bc76bcdfb203ff81fcb672ba0b55c4e972ad6c85245323a10a931b693184262ae74312a61fbb2d0edecf9b6fa4c59367a873f834aa4430dc9bd95656de40b4a1e67749bd296a3b811417bda6c0bb4a2855ef45bb03a498e0a1b99d3606267d9485e2d68fc4651ff07312fe3cb6f12113abf407b1dd508801077cb1e7be3b8ac23fddc37f806c1e19a10abfae3605ddfc6f46b5e87d972176b120e2316d37474a762df3a5f54590b7f1eae578a71621cbac11b23807f460244a72cf76e1a537a4cd3faae9a71f68bc57540d945a1458b25e0c0dfceba65eb79a052652bf8ee95a96259df93c06853fe9982000d75f5b248d8c6216287d852b7df64bc0a5b4d6cbd5ca9a4a65067f0f00786a91e19091ccac968b01d74a66f7d16a6a68895bf294106adb730f5c5c6b3e06498fa5d103127d8a2678291433375a5d18a6569dd4dac33392ea4d4a5325ab4fb862f4e314b4bdb7e28b39cef30d0bb42ce91f759a12ab8f31f54a5965197f9242f5fe6a4b8632bb371fa6ae698d5d5a9ba2fd1584cebc49cbe095b74e6119dff1afeffceaa5be89a05b8f2f112487a8f5d9b62be63ef359bb7f167c24d6dc1804b78184e97177b650d0dcd1dfcbd2e124034a37360a28c0ef4e58244b4aeff4c3951cb94472f3889a1d8d379c0f4e7b1aa625880bad5999daf6692ed3e3c090d32b776cfffd0dfb005e6febba0663b169cec8d289f113f7020109916fb55ae2c3c2ef146bc25e227ac9ea377654be6f0fe042c0d8f45e1df51cbe8f4d55e5ef8dbc9081d5102ee0e273c9f765781b49ecf4e65374dd29c638652ebd5a12c284a4e4fd6a117955322ca96ca879bddf7fa6c7c873d3c9a6e37d503499803e9be3d598737eaf0f4f7528e154907652e99c3279dbf8c51bce3269797eab7bdbe9892b605c20e03f3f603a70d6b63ffc37a718c306b39825f5d403bac563c3d81089c6ed0d942acb13b948451717cb71de8ed555e7f35c2bced49a3443423f6af7e6f5f1724c305d99256351ff817a3b0f6a712da35d875710b81b8812666609f0df5e292739a2148a79cf5f790e7e9c4b093fcbc8ea94ef4a08a1d66ecadd6159d369475d7d4678728b7c4169dbb7ccecbbfad1ddcd292775c79bf5d088d9307a4dab440318a6ae297366e5f87f28835344534fde5a0cd33466f93ae835db68524a8c7272846cd464f9632a4700a36db411bd2e6f17d2e1276c12680a59c72156ef87f956f6bb0e7c9e9b990f5278ae0c64dab755acad2f037d92364f0e80ca757eced623f4b4177ca2450bc1da811481071500de52baec240c001dfe86aedf9d59dc6f0b918bf05f4c5626037000e9c6c77869c43c0a1770f4903bbb705db7b514d6ca72cc8cb4b149a999bc143c0006ad6366740ac0388e8f714fb151891f6962695499cce535b479df1f06fd1e211b2988f733b85ab042d3f490bab81b62fbdeb1f486b0bb4d202242b2bf921e2fd15d3693b0bf61c5adf322be966553bea2457a4fe23c8cfe174787965f93a24635e7f80e5557e47997dc8348b7482cc8df1a2c05ff3069505df4fcbb9481108faab30149ac0b914e15b740ea152f9caadba2c44165f197ee4e0540fbe8ae53df3ebe3e5954daed06aab2352414265f3c84cbb22d851cb6e46822dae157cdf26f56411949b0c855313766554313bdeeb18fd5ad12a319608f646fc7243910759e7348b8d9ca46097623b683e9c89b224ef67d2c20f903b288f7bc911ea74cfd0f4a518257212cf8392fb714cbfc85f9b8aafdcf7a15b0fc416d7020b9b6cd37eb9767bb54cfcecf67f08b9275b8060ffaba82e4da0eb23d563e0a9cba8972fdb149dcd91bda258cadcfee560fd91bcfa10f88976f0b3139fd558f37cba0f2d523df302ae4c270f39b296db10e127657d28fd1a2d2b68d3ebc45f54789a42c2d32504b1fe4e56381a6e9b588cb8945cd12195494491fc6524f1de7ee7afde3fa82f853409477d3cd26f87b6d071e08655f2a85ccaa8627c343ca4095488a27f213b0ba188c765576e413c4dc21ab979bb6260754f80d1b480e455a12159dbeefd3f850510a4776557dd7ab500f26f0001b7ab12ca9b682f474eebbf5a9cec81100330470433d97feef5abec341f3dd63804438032a924923b0f038878f1b0e88e48766167088051b182ad48a2be2803acd177b27594fbf432dfdbf873e643a07c50fbb6a97d5ffaad687fe7ec4dc787f428f115035daaca1d6b2c3368df75ca994bd25601a6e0e0be3b7f00384ca99f6807d514358728dd305041fccd7ef7e600180835bf7a596aec40bbfaebff229cb35ae6a361dc3f4548c3e588619d609932cbbdaaf01cc5e2fc487d8e5901596abe03b2c968f653c1296ef5df26b5ea72e8a39f05e11caeb859c2ed4e7dcd2121da9e44b57c8996c7a6b355bba8aefd9066460761c97118eeaad6b18e9f6cb77dbf918d7730ff8571895d3a51da69a2a09ff2809ada39f8de90556522fa035593fb3fb881ba8e2c9bb0b7a49babc384f6852b60fc2e8ebb930132f9526b30c2a6d9f29df734817d7b0123035bdf9ce1f8e943a84b103ca0b4823874ed5077609ca0e28b4aa88c49d902a91918c0302fbeb51ff2ffa2209d1772ad7e81aa98f2359d94099d3dbfee53635e74838e058b35148ddcb55f85a357c5a83a51f1959b6441c4d59ce613ba5b54baa138d08a70f8d3999e159766151899f076d00030b88b280ab27ae19f820ade1f12e8dced75f635a36c62738bba52bb533e436360a9a8b1135d42e01fba0f644fa72afac6ab2c045acbc7e546b24532ec8dadc6e00bab6dc8391149e35e4f667485a15bb33a1e2c1f6b711be114f5e547a5cf2a37eb8dbbc677cd3cf376d05191057872c62c5971a60d76557de5b82323786e0afb6c5b50274c6710aca5f1e7ac970052fc3487417a84106a2ac8e9da085a0c3aa11182f471e4c5f881c6a487328a354afd8cf6decf4c1fa0f4b8450e847b6b7cbb55728a5ef885c652cd9a00aa2f338ce84480b32a032dc20f2d3c2009c764b429b0fc582c439d75e379f7ed5e4fadc393c8d2f98282987fdca5bec45a8558016e99d9eff76244663db81b5b0d1464b1d1b3885a77ba1ecbe0d7f3f63a5e52d0953f30c0c0c3bf59575aba3928681e4f7d7779766edc2d2674e7ffaff8dafa602c93f76036a2687c7369a11e0977310153a8711acadb42a6ecaa514dd03ce6fa7ca9425721a6fc19afc969e9412671f3d6e637386182c66ab2facd001ff7c0da2a945e7fb2c3cf2ed3cbae5bc34514e084e22fc8735d4cc953100de006b8808719b5f1a4c566568258db601888cd86a464d63d4c259d2b3aaa9e331d5b3e8cf73330f9f55bd144725c26070913e03bd44f9202a26425ae3aa3dd17ab6b97f75be921bba1e5a1d6074baac1681609a0d58f146bc2d2b20b8dcc567c8846a3eed3efc54ebdddae058ebdd62ecc6366c8b26b2bd9cbd03f7a329f7bcd45eb46fb52ec1c23ba5bedd1ec1f5f224c4ad3172cd70a2f0da5f3175a08350fe2203f86c28fa6091431d1f95cd3fb8ca148d256398b0c0846422e170fee29f4c6610b14ccca0a102bfd7d5c16e563a39f8514c6c427211b0983b8b9fcf887bb23f185ed439fb04530a9b7dda104b58b109763bb4bfbe285fabe3faee92e917985e2ee13e1834ccc5c5f414b819e88aae0169a5983f6c5144e11ee34a205cf82c24b7689cfe89a72097094a7112636a067f116b312dca7516ecc52c6d5d13511a911d324b3c5b86205cf38ee1925aa581ee32858e9100c55347ebff0886fa3712fd502dc9b9d0b311cf9b5a5e2317cff419020c91ad471ae745bc919b3c8e59582c56bfa3c29d9931026aeb5846882cbff73eed5e790036699ccd6f78c2980b8dbdd4881924b3bbbe5949051d6c973da408be325a41c4c1f2801821d26e4d0d0a324a8b4a51c475c3e2c92099a62bdbdd8d51e7d452065102f59ebe82b86f0de2d7968ec4a91538553ec99f6153a33ea96930ce56ad3212564767b14b67764762e2f200b0c3784b8cfab308d30cb99ae578a108fca307fd2e7f415eb028db1343f8c6d4cf497b8accb39cd01d49f24adf60a2c6618189535d69edb4c8979b63ce618f590e3038a91197a2fc07db332845902546541d42ba9a4cf33b23cd11138329d68283de6c7fa9757abf0be587ed93538eb11e0a7fd91f7b69733d8e6f64d75eeb20a5dd850e9a85e289f16bbd50da9b2640d0e36a66b958bc592d5c65d2dac47df7b41abdb7523e2f68d5019f8d0373d56617d468a370fe23be5cccc652338aea3fb249b315363ff4320eed0f91abfee918ba3272b5f99f6c8f80c5d7f30ddb23c654bd0ef7e35adb97054e89dd6d0891da2813f1032eb919b88f1ec1a4329b44552fc15808054aa6f63d70dc52d01c3126f7e91dd3426f520e7cb9c10d11346dfc2e163ad9ed3e9db1e3936612c48aa57153ed2849483614bd994ac09ed1474446944a1c9644a4bf6d7ec29ad197c154ce7339232e7e384399dcb711f0fbe88eabc408edd6062593bcb299a493cadca06f0fd5977616987441d85e02750956f12e47d9997d87e27dc7353d00664257895379b9bb4f326b64467f682f2d28acf5b005b7c142809890fdd1233650225287e8db5f6b155cde7fb6433260f42333b9c3a9e0ad31ed406c7d453bd437b9ffeb69a494cbf42d98063774743f46ea0713cf8697370048661a4c0240d88f0ca29cf9024255a0903f5c854d40fc2949b44373f16999fb11361706c4ee977604b33f34b1bf53072afb66679737bbaa0f9f6b63fe0dcb4e035b1902f8645112b2d666962d208457b21653e511253e9e45570a383690f18841a46d28ede67ac53cc1bc805271c3f64d2ffab5ad74f50fc98030c2bd0c754092f31b263d021999c33961603380bf671c180cc5c55638cdd0798bd71b986f1dd820274652d4e44adf121e328fd115f5b3b5c4241e024cf931e16f61b752d07f37d583dfe350c0b7991a6ef15a1f2419d4314817c1703a930bdead393142096945e8388d9b4ce199efd7ab8a39c8b4e768d57f310258e798810e6ecfe88a6cc2247be34060e1090754631dedc1bcf0421142d1573dacb0f4c0cac3faf3db7bb9e4ea0cb13e6110beca8f24d23b46fd24511a8af537ce1e9f0008bfa2e7736a32f270365c23e41cc194e1d50a33b557ba0bf544340359df956dd8611173822004236110bde4e23cc8f29a2b4fe3816c89563d0d5c8383bef891ee767312f70cd11efe8e3f1a4e864fee1b367ec8341891bfc4c49fdc06118c7e9e880ed9bced810dbe568a3c7071a3c22a53be99fc42ddb34df3ead130d3ee6dfd5a5092ff363b5e4fa58baad007a4dd57ffccb8ed3f888908f9c4872d390cea162ae348e6eeda47990efbcc31f35571ffcdecc4a5c3572e03bfa9505abf9c5f4475b8497e342059d01784b118787472e3d314a9fd00019f2f56aed2ddda5ce260bfbadb410cdcb71dd418ec57b34f13c39c76dfd8217765697465b3573cc13cfede33dd8baf02f2290a08d547c57fa407e8ed80d11fa1b3c88f468ce8f544301c0f4c1b089f19d5250675f43e93743f474a4d93aa4aa16c15eec0438c6cd911928beeb024ee2d20dd85ae25080b010f655753e7f0800c5369564ed1af7d2266cfddb8c8ecb53b31e54d4909a7bc40f593d56617d468a370fe23be5cccc652338aea3fb249b315363ff4320eed0f91abfee918ba3272b5f99f6c8f80c5d7f30ddb23c654bd0ef7e35adb97054e89dd6d0891da2813f1032eb919b88f1ec1a4329b44552fc15808054aa6f63d70dc52d01c3126f7e91dd3426f520e7cb9c10d11346dfc2e163ad9ed3e9db1e3936612c48aa57153ed2849483614bd994ac09ed1474446944a1c9644a4bf6d7ec29ad197c154ce7339232e7e384399dcb711f0fbe88eabc408edd6062593bcb299a493cadca06f0fd5977616987441d85e02750956f12e47d9997d87e27dc7353d00664257895379b9bb4f326b64467f682f2d28acf5b005b7c142809890fdd1233650225287e8db5f6b155cde7fb6433260f42333b9c3a9e0ad31ed406c7d453bd437b9ffeb69a494cbf42d98063774743f46ea0713cf8697370048661a4c0240d88f0ca29cf9024255a0903f5c854d40fc2949b44373f16999fb11361706c4ee977604b33f34b1bf53072afb66679737bbaa0f9f6b63fe0dcb4e035b1902f8645112b2d666962d208457b21653e511253e9e45570a383690f18841a46d28ede67ac53cc1bc805271c3f64d2ffab5ad74f50fc98030c2bd0c754092f31b263d021999c33961603380bf671c180cc5c55638cdd0798bd71b986f1dd820274652d4e44adf121e328fd115f5b3b5c4241e024cf931e16f61b752d07f37d583dfe350c0b7991a6ef15a1f2419d4314817c1703a930bdead393142096945e8388d9b4ce199efd7ab8a39c8b4e768d57f310258e798810e6ecfe88a6cc2247be34060e1090754631dedc1bcf0421142d1573dacb0f4c0cac3faf3db7bb9e4ea0cb13e6110beca8f24d23b46fd24511a8af537ce1e9f0008bfa2e7736a32f270365c23e41cc194e1d50a33b557ba0bf544340359df956dd8611173822004236110bde4e23cc8f29a2b4fe3816c89563d0d5c8383bef891ee767312f70cd11efe8e3f1a4e864fee1b367ec8341891bfc4c49fdc06118c7e9e880ed9bced810dbe568a3c7071a3c22a53be99fc42ddb34df3ead130d3ee6dfd5a5092ff363b5e4fa58baad007a4dd57ffccb8ed3f888908f9c4872d390cea162ae348e6eeda47990efbcc31f35571ffcdecc4a5c3572e03bfa9505abf9c5f4475b8497e342059d01784b118787472e3d314a9fd00019f2f56aed2ddda5ce260bfbadb410cdcb71dd418ec57b34f13c39c76dfd8217765697465b3573cc13cfede33dd8baf02f2290a08d547c57fa407e8ed80d11fa1b3c88f468ce8f544301c0f4c1b089f19d5250675f43e93743f474a4d93aa4aa16c15eec0438c6cd911928beeb024ee2d20dd85ae25080b010f655753e7f0800c5369564ed1af7d2266cfddb8c8ecb53b31e54d4909a7bc40f593d56617d468a370fe23be5cccc652338aea3fb249b315363ff4320eed0f91abfee918ba3272b5f99f6c8f80c5d7f30ddb23c654bd0ef7e35adb97054e89dd6d0891da2813f1032eb919b88f1ec1a4329b44552fc15808054aa6f63d70dc52d01c3126f7e91dd3426f520e7cb9c10d11346dfc2e163ad9ed3e9db1e3936612c48aa57153ed2849483614bd994ac09ed1474446944a1c9644a4bf6d7ec29ad197c154ce7339232e7e384399dcb711f0fbe88eabc408edd6062593bcb299a493cadca06f0fd5977616987441d85e02750956f12e47d9997d87e27dc7353d00664257895379b9bb4f326b64467f682f2d28acf5b005b7c142809890fdd1233650225287e8db5f6b155cde7fb6433260f42333b9c3a9e0ad31ed406c7d453bd437b9ffeb69a494cbf42d98063774743f46ea0713cf8697370048661a4c0240d88f0ca29cf9024255a0903f5c854d40fc2949b44373f16999fb11361706c4ee977604b33f34b1bf53072afb66679737bbaa0f9f6b63fe0dcb4e035b1902f8645112b2d666962d208457b21653e511253e9e45570a383690f18841a46d28ede67ac53cc1bc805271c3f64d2ffab5ad74f50fc98030c2bd0c754092f31b263d021999c33961603380bf671c180cc5c55638cdd0798bd71b986f1dd820274652d4e44adf121e328fd115f5b3b5c4241e024cf931e16f61b752d07f37d583dfe350c0b7991a6ef15a1f2419d4314817c1703a930bdead393142096945e8388d9b4ce199efd7ab8a39c8b4e768d57f310258e798810e6ecfe88a6cc2247be34060e1090754631dedc1bcf0421142d1573dacb0f4c0cac3faf3db7bb9e4ea0cb13e6110beca8f24d23b46fd24511a8af537ce1e9f0008bfa2e7736a32f270365c23e41cc194e1d50a33b557ba0bf544340359df956dd8611173822004236110bde4e23cc8f29a2b4fe3816c89563d0d5c8383bef891ee767312f70cd11efe8e3f1a4e864fee1b367ec8341891bfc4c49fdc06118c7e9e880ed9bced810dbe568a3c7071a3c22a53be99fc42ddb34df3ead130d3ee6dfd5a5092ff363b5e4fa58baad007a4dd57ffccb8ed3f888908f9c4872d390cea162ae348e6eeda47990efbcc31f35571ffcdecc4a5c3572e03bfa9505abf9c5f4475b8497e342059d01784b118787472e3d314a9fd00019f2f56aed2ddda5ce260bfbadb410cdcb71dd418ec57b34f13c39c76dfd8217765697465b3573cc13cfede33dd8baf02f2290a08d547c57fa407e8ed80d11fa1b3c88f468ce8f544301c0f4c1b089f19d5250675f43e93743f474a4d93aa4aa16c15eec0438c6cd911928beeb024ee2d20dd85ae25080b010f655753e7f0800c5369564ed1af7d2266cfddb8c8ecb53b31e54d4909a7bc40f59a4aae6bc487ff2ab31c2630e1e1f1fd68963fc0e0e05f4b2d04018829efeced79deeb0cc611ec4feeffa9b72206d9a92dc3e96b383eb3fb8e49364419c11d386e2c7773c5e69259e6b490adc672dc3093e8ff3105c64071c8ec02b86c775c35dbc13e3f76d904585227989cec96184acf6695923eb2a10759064bbf3a36ca86fa35910e1b40422070b5f85ba383d315fea7d2e9e973ae862ade2cdb80455ea3a7595c9585c8a8e0e4606c515abbb36975b67e92bf7280c87486015ae1f618fd4a6692a038401c6e0d98655be9482928db2306f597e1f24dc5bd3045c9553802791795e2c1fbc204ee566f2cac4db731339bc12bc035a40418fbdb6d6fb9b95321d48d629acdafb4df4d24fcd5f4bb63061575943d989e4444536efd1f07014e0c33eb9a17d6cdca92ffb051b5e1adb315d83d95b173da7e0918796dd53445c1b238a3746b7317ef3da1999e9ab5d135c1dab75e88b26af2815800283bbb4657fb7261da866cc3f50e7d9b01543d73ff9ffdf48bf2e922f606db5c1452d47464c38f9a5204efa8b2bf33e670631a047f71e48a70f016bc50c576112420fc00ee448d9866aa416adb59cd3c36f079732cef53054f9cd0eee8eb7044b3f76a31cbdaefc683266dd66309ca660ce8ef3b0afc095029e2f24dba365803f81e980ffb2351e496f8c0001e6c7a912749c3c96f60d8062d57b14a6d007813be63ba890496cf1e63c8880bdb7698c1ca49f3f6576d796f6b6b0f743c818264c1e6aa087b709ca422a9093663452784a3dc54ff5e57b7243624015eea33ae3e417781e153ff5d75120a06d3a72cca4762b9e2ddb12a1676bcb347e784d796f7546c24e3bd2aea26ad6cb45efebab03ac9f2d03f905a0392a29b95d8501dbd34602e465b85c4b4167e328c82db47c75310d3403f3075503f1a4c4d084357e39e4d06ca3eccaa8478238df804041e3514659abac5cc5c4b3c6e49c44fb712bbba07fd1f3f1b657c2b339b8ea11fd4aa1f298e9b46f78774d6a6e6420e3473d4d7e36a688f30308238f39118f9ce66a52994d78e9080467a9f8d917f87ac2eaaebf0303de79c157a5d06283d560de67cc033015738a4a52600f24a4b17374a774066891bdc41783058e29a59f9bd8ad4d47df8086e818efe28da5a262c5a38518dcd7c39c2982e560d0e5b57fceb88b82cc5f52745350b93080640577e111cb8753299d69b889271b05167b2b8515d934c743e35255a548f02e22974c863d7b458ee613d0f1241c58d61e9f38f0d4294d92a5e1ace7122ce67ac88fd31fd7f55f91d8e341f0210713451bade239035594fa31a5147c6876a00f62ecbbeb03b89554797ba07de47dd8847c39b4bed260a53d548d79b302319e2a43a71a6cfaa802f4f3f54e6632ee3831d657930a92e8988760061b25f3c059fa692729a8c9fc6caf63a6df0154e6e20d55816713f282cadbfa305ab320fd6fa7ce27c7095501cb620acb0ddddd603f888be8d104652f80744ec4101d752d4ef9896633e0c6cae59c3375195eb8e29cb729d6cd758e405c21fd05670986e94f9aff1b6f53df51f961ff8454e10c8c8ced137106012d40b59489756b4c9d896a87d4f077a5a8c8eae0f375d2f45b0d551b39cb5abf04d538d25a9c618999b739e2d6f86f824761379f5298e0a11af85ef9525b3e8d6b4ff24b51d19cb2131b0eed0ce3c4c41d4c9c74e37eb52e5f683c35e5010dc518b2f0413222f849f6a12c85d205fd2081a0fe14a3b4a2b1f2ee9f4f275a2bf27114a37b69ffa89c53575fba983a50b57d58b87aa00025fb662567e2d8c7672ee6c65ca69ee1459be90607c8f7dd86463dd8794f6400335c628c2f5cfbed7d20209422a3bb4132195a7684a599222a37c80f9ebc7b665c4b5accd47f9a3e04f8d859241f0b3cd9a9ef6e6f289d4eb18e6372c595280bf6c4706ff9a9cae616a5eb0e24efb10ce2c9f31789692c9aef636105bc6228b1ae8c50cac5e632dd34c2db20a5d7469be9384f55e2bae089ce51130c86e4ef90f201571d1ffc4d16e4a741e5f6c39b5f9fa91edf561ea04515dbc8ace4b9af1a3dbec5255a47f213aa1b40f75c749de5d77b77076a47911e656169cd034c5eae5435c13eb2bb7cdd2ecc8f81d23d7ca9858ccc92c73ddde77553e048574c807699373d67c18a364f13c7b0f32a43f4ccbd9e266305bd78e8a9284224c7b83d484c9dc7de19c3f4f92a99cf1df9380763e786212875ad69fb9456261a7e20d4209da9f802513b82f6a6b7247a5f8fcc1b2b0653a05e32d8ac2a941f7f64a7427f67a8e02ddc05a1babd561e83a4e2a98787ca749c84d8f56f17de90cfbd7d553c28cbd2b6f39be6037235dd6a08ef92be59f33a50144ddc38e02c02d3d54e5050a02487d35a612977d03484c7d9afb833ae02bd2cc9e65c37bfecd14a021a1b401981a0b593e92aaed046a10bda6e7623d926400ca3ebcd998943b9eeeea9f1870342de5cba80140aa7c1ea7924456d7d0792b14620e0998daec0bfdb9892b63f77f7083c7c7dadb7ff7cf01712a58fdce6369834b6f3550a5893423be90236b2e97f4032f709f208d149aa3e1cbfeb28909ffb6673f563ab0c7e3a18c77bd31287000c1f269db9f423cfdc5d4f2b423e8faceb50b7d4115b5d06de0cb320c0d20d95d188d7482d498ced22a5238872387bf9a3c72084dd24bd0240d4f97718ca2cbaacafd627f036f668055293f7fe986906532b6cce44b35e1627ceff34d592e59c1b6a503d0be6da4bb7d871a3db2012516857de00705ec43972e9036b7c3981822c095bb439a9c2f4d87c86730a6e040db4000ea4ef1eb016625732cb87c658f683e0d69e4d263e24e54a21fd5e5b1855a8da2356398f7d06b55d30b187281a455421ea7cfd09e9fb812e6d6dbb45ccffa13a74a70b205385e5de678334fbe5797d4258ed1934fa6b52bd0fe7b7784fca240e3d77edc8f850d39b7fb9cfd201c888ad0d9d566bdff68a77a30e783391ad7e6bc5ccf6add75e3ad9c76fbae25212f1c0ce9e69601a9b0ad44d2895411b15cc8ed2e8a806da3ee6ea71ced3851355259d1253aeb7659472250dd31f09ce9cf797789290739edd124ee3ff9773302ca79d904279e8046f5f95608408a9e643dc2ca20b8fd6ff04af7f4d3f8fd15b83c5486cd92fd5c462eb2d244201c31968cb5c5c822738aed3d748ce4d020025abe00bf5ba4e1ea33b32f4470f29337d9218582982611f30ab3ff2b26010d79d82b95c065399fcf6c6dbaa7f061b59f45f2b098385ee84d213487c3db452bf9bbc53f4ea6719deb35120fd6992030038de7f991d66842f231f74a3f5f13c66952ec67df895a356a169d97e912d4c95675bfcaf4b86b63f27fd2861ef1042547c59568627660d415c08dbd8ccd87a07f7ffe3df99cdef6e0343443671eff9ee833bd1b768a478d165a896b5d5317b384a3a62ff373c6a39a75388ce80eb03c0d1f14987177b5ab540b740e6f138e9d64fb74327d6a89aeb2faa84a8f6f335edc6c4d907581344e8939f4cc9b53b5b80e50b5d7c3c5c434498ccad97946e142fa382d02b3a6c160ba96572897210c81ee98e767caf5cb37bbdd0cee0aab95d9b68184cb27930da122cf92654dc46dce7b673eb98fe5968f2e31e4fba72914674816b82dba323104327a0419b34882c82492adee59ef4fceb9ee1c2b00523b4be86ea41968795d530db91124580dd99402697f60cbc8337f6592c30ab442d4aa8832cf4e547be941a5b15f1329cbf19b11ca4e26df82c0cc5733db0a4aad77a174dd8f0fc0be6392b69b513e9a50e366f534298dddbfda0abf9a10ca1ce1b6e946f7538281836f6ff907333c5ae1f9eb254976b60dc7472b6271fe0f5057c28a011d82010e6f391c10cd34b5b025b113d7e2a6c6f3c299f668e5370672ff81abb01dc60d5982d7b26731f9d5b29e0f25f1faab6fb3de1bb19cef634815b3d887645d82e30d46a72b9cdd24950501522c640a39c87e62d339811147ad3a0d771adce8932058c8dc9bced2a067ca22cbe870c247960bc15714a449fa332a84074b85f8e4a465b5c42f33156e8cb3941ccfc6b62d469fb76a31a1bcb331f454edbef6703feadc9964b8b031d48cf11c67e4fe3804ecbc7d06332875c128e190699d3df8df4ed3f14f339933c32e930d7e1c4e7155ac933a78dbe02a149398a3f9895215d5c280fd3cc4a1bc4b3bb61436fd533e22d0650138bb202b856b18d6d7de681e09a294eedf9d11e0eb1167eaf1b84d9af45cc2a612e38939d04051c5b8baadd0a213ea17a0cb9339f031ea1ad0fbaecc763d297951c0a156c5cab72dd5be6bc9076cdbb510ba61025593715189121dac3ace535c015f7c9a0dec1d6603b8910f3c6fdfb4e3a115d5f175e19b8426bbd3fccd4e8198b32f9d1276c9bd1b9554c52956ca1a01a18a882a208a514b2643e91b4725295dd6946ba8437747ba3f128c5357fe8669b91acec1d5f37329513c7540da127b802e99e23ca45197f4250d382c6d7b4175ee9d2549322c34cc34d0343026c47389bdb04e0f6986e70d1b8cb37e54304add8bc7984c1f7e8354e96edc59221dc587221106d713c596772ef2689c75b77d69b2aa0fcbfabc05312e5a820da66d925d673c96963d717d20e860c2ae89f77b2e0bb6a76c80095456b39a31b3a5468be3d09eb8b1baa7a5de033a5883761b2804c913b36acc9bd872829ef7683cc91db6a9396be4a7cc718e3c68d3d63d8439f8041e5bd0a2927f7a8e017fce0c3c10ad69adf4495286889baada73f4c0ff3974fe8bf56891da75cce20408e9a2554d201073aa5e8605577f86c6c024bd986e8085a06c0dd7d4dc577c09edfbed8548407d0d4781150c17c15f48e82a9e9bc9e217d5d38323d7c880a00de212cb804d0fb8f52feba7d02365770d2fd62a8bd9d63bcdefb1e425561b0d8e877e7a41c12ad2af2df8039499b3d631c7a85a26d2b1e8baa23a024bb63467e334e86c884f98c9983beeceb872bd788d4401b50ede9d041d6a62301ec28db924f4427116a7dfaf9c330ef67912d3dacfc04ab79f16ccbb52fd13fa73dddfcafd7f8d5b2ec26b703a41c9053359962bcc4f227049813bc904a9840d0d70a08211620d5fafc54112a161831e0137f524aa8e2459ed737e9a0ac2eea54e3abaea3ce330f82699b1380bff05c554187712e8a8382546d56a77398e3b7afe96a9d1bfc2ae88eeef853816a806c9d76bd234205f0b366aab90ed9bb3f12278d5b1193b8d7cca0e5f0462f0629bffaafcddd396c1ada119289dd1c88736a4d90ce8735d094d2c2d16b2ca76ba8a9218a32776b2c761d63fb156d05a6d1494134785f85c38206a287e31356a2d80ac963989d7738d317960d10273c88538fb67fe7b4a662fe23b677b1c44dc388d675075551496e00d345eb1bf426ace1d443401d5839db125d82780349ea1a0226ce3742a26e6f89eab47c7a0c5d6277976a37ca31000e94998be125393f49be646a6eecf9dabd17e3f290e63ac0d4f1efa5f2afcbe5a0f4e4fa21f53d7de42f7768c927abaff9813ed577d217c1fba04fcbe4a67615f52f23881ad78e97808f6584ca4667d0fbe550db80da1733de6e1e307ed67df2afc9987959af04ec1b04e9b859025b1dec7f7170e027df2d1977e02afd3cff86a8d39a3e065e6d718acd462eabf9040da2054796aa5ab9f0b442c0ee4b4f50f57cc48bb41b5bae0fc7077e6dfedbc6bf546dd59171512f0c78ba3262a484bfacb28b79bc0d394d916bcac6ed95a657621e7ea59984083e357d421a7abf8e37f1af87cc55430148b71ad3618a78c3a2475a0436a29cbb4dd67248e977a71ed1d1dc4e56bea35ddf8d78d32f63339334b0f6768af38198e1edf797bd8d24898decc7454f92291386977faf3f2292baee956792b32f74c8794fb95bc6561bb23c5fe1196def525c60d52b621c3a7520e551349a8c3e53ee8da03a2c9e5e19fa96aef3dc587e7a65fa0d5a34e24a13b31ae990afc31f3d25b0569431552e676d4201b79adc5855d0a51fd9fa0abf0c31b3e3b88ce4dcf174102be932cb0d5c25914d81e001cd8d4a92103b237afd89915c029fc31f10fd8ae85aab91872c6a71cc51953b33f945a99801a266684d562bdd5e1f08820e178c6b7b7c82aedb30c52d6915540c1d509b803c1fdb189ed130ea5ddd53d1f0e5a3e2c3a6845de822609a838fd01b70e781b9477156021caef224ca33791b0898aec5d1fc93c5f7031b0c9b3aae684b8f68d072b2c97a623670e04eda94134137ae567113c13809fba808591d7b78dea42f05aff0ab027c8fc7e780257b9d4627a9f42f523c3bf7472bb4e9386b5f48ec4e4c1615929b254f800fdf3b88ecd5944a9e3299eccb0d0fe1699b5fc0d8c0834a5fe4469acef8c6fd9fa728bf0d3b06c6bc58fe482fc4ee9cdd290496e5696b8cab9be91799cf066313db18cf5a5081628bb543ad12ce60a5f7b297fcc0cd915709e2968fbec9fac8c4acc35c9308776970ffb81641bb83f8a1583ee753d8b921c73ffc71126fd68aa6a4e73101494f650278713745df7352fc125553123dba58b094173f49eac07d78a924c4cb120459ec012fade7e38b02cd1c61071cc2c4e8462a3875711792aebf350b85a99c226c48abe91ad7828c829b361b3eee8df42aca5653677b16d05cb2004ee808c0d29378292162850a74e1600d4e32798e253addc62619896c15e4ee5f0e60d0bd45c635b61fac4e410642ec7007122848067ac21c936c0da0ad6b9a5913c8c7dc016fc7e5c068c9653134c8e18319b0a42d4409024e6bf08fe7b2af5a67f5da697455150fd4231729ee9989afc2a78cd92a518665153fc55f4df4526cf6cbe77219eadce6dabf313981c13e4066d311363be5a7456c36d188374a5086b2d03c1dd3cd90c2e8a45d18d5b31dd3cf4112f10c33ff18c7a34628b2ffe0e7a95e9e9f7dbe0c426f804eab7fe52eebe854f300a46756b884f6088e229546ac33b52785a3f2c2d457a2d2432e68a22701ed46639169b39940f3d15734eddeecdd3b15870d93ca7f1c1ea578adee0a1d1a78999406ef112f440a278e2f07fe4486bd4fe32909e13f33c9d648e6458d219489d3c08ebd5806a77b12c2c194c29061d5cd2704c03adef21c4aa3ba3cdd2881dddf164a1d657828d4de6f3fbc64f65c490b94b6971896d2b590777d2af65820ac04da55881571a338c01b68c983d26ef886540a34183105737b4dad57b75e37bd1dece2fc4f5f89bbd08c0302b46a40d0f97fe8669b91acec1d5f37329513c7540da127b802e99e23ca45197f4250d382c6760d4dab6bec9584258a2c4f112dd99349b833befb8189d34b29974f831d8f7baeb3d8c29acb088179bb37670469202c78cad4ae34218732569a8e0f82818561e499d70f7e09adb07af4ba5d94ad2476bfb6cc66a3a797faccd5e14ac0eb83e57da7b4a212899c9d8f0c773276cd48e683672b9119344db2e0a5dd3dc84aeaf28c104294515cd6ee55139bdac792711c09bd6a6b66cf24bf601adbc3a548ea2e4c93fa1823412c6fea371ad15864fd51d361ef49a590c5a981b64e9d2af5ae28a1634ecb81765c02c4df10f5f85b6042e215fec0f74dc8b414f714351ef6b4843175c6fc3b8bef53275ee6a9b68fe03131e9bb50a5d85d2f797ca6a38acae19b92f3f861240d5d339dac70f95ad3babeb22fc11b35b207926fa58e7a1a1d2a52a8bd9d63bcdefb1e425561b0d8e877e7a41c12ad2af2df8039499b3d631c7a85eb9e2c228f18d47443cce488b79afbe1efbcfddb1e23ede6218720f22285d6110a50c6f077dbb946bc00615249d8e644172e19c950a745d9cf2c58c37bbb173d38914538e616c3a111242c60e5326a9d5975086273b97946c9c10207b6ffd6778509b2583417bce9e7e51ba84f73535532c6bc8ba8c4ae120162b3dfa2ad7f7f701e117088162b70ce44124981aca81ba5a34c872201e698bd6659d0d45581ee6689aef495c8bb19eb0cf7fc1168e982ecd5b1d0678c5a78baef60b5f32c4b7ad65638d9e456dd5ff32645a7ee9652a8411cf399e68a05f822edcf6fce7b95ff75ddbff09b39dd5eee0f18dceea8e65bc22fbe78d3ea5ba4aa8a5b82a2677e232fe011a4306aa2ff0a75e428de3d0251bd229295248bfe360e31d0da6a55f65a638fa5054c9f68cb9c9f251b215d31017e7ffcf64daee351f1903074381b3c90c443ad62621c92b4599a9c8624ad0fec52f7a589e22ed6d541dfa39cabb67092857e0e07129ca5767f09915b3686a1e3e4a793104e4a2c0a2da073d3f2deb4ec98badfa93c5dca9eb337a6dc32e43ff063e90f2d3d881b26d61d40e1ceb8fdb289bc586e10d2c83788b32eab8e9df693f79a78ed6a00e137b65b84e8b84e269e9bda19c967c3736787a66a1be0884cde763f003af17b0c08445bffb382f924e5afd31b9c6302caded31bbb6db30af5fabf1f224120235cd485787a32db05bb2c37c291454fe569a2edd5d54b948bd8b0b46aa17ce7fdd420623aa89f7af0d19541d52a11a4e380fec71eacc912d166bcb6698ff13a37cd136e6ab35135195e2d81796c491fd47a3cfcf8a7059f90be44c99b402918af6093aadbc976c08e08e6c40b8ffca2d4e47080f6c41fd75518c2eea07d3cd0296cf324cb409fa7facc19260d34e7710d517979ff7ea247b2f0f62d3473cc89e762a2968bff0b0bc326a5a9712a19ee2e268d1bb1b8014dee9070db849b0f123c3500c4adf7f5b65fbb30d63eb5b3fcbb1f7f382108c7fc153db906a56e4336a5187f4818f827d614668fc6c206e5edb1e52b97a6c26e7b782f03cf5a6b04785fa32fd706d21a93879d8c996087bd47e8e4430dd275c5e9bd85c4f9b4e5218f06ec55fb88d8a34ebb4e41ed4d9842698eb655a3fc9b40bf9e775c37156a21e06edebfe5d68cd7e061e4d0ffc9557dc26612e52b453651c468e51159f5a7f9a0bda6654d291ac053caa07d76699bf94c48a0e8a45e906bec22898ad4a74fccac070dc67a49a0ce796c6221399ea7fc9e6e4c5460fbe5579e7c500e9970a97f6a47395981ddb5f98d289ae259369e1e32d15360e7425afc74286498e16b174bd9910d0953d39d77fca39a6ac3ba4889f112619d34d709c8f1fa5a001f7685f63a7a68552142e37a499d3dfa8c1e9fc7ac2d62887c27a0c8873e4dae3d832e5cae9231b469289993f356a4908eb850ab84b8f13b0994245a6620420722b7d9b74ca5c21f93df0f2b6a551b52efbedca3883ee2d1b07b9f947976fda66e2ff8d8b6b33d82afab286cb8688cbe8509b2583417bce9e7e51ba84f73535532c6bc8ba8c4ae120162b3dfa2ad7f7f701e117088162b70ce44124981aca81ba5a34c872201e698bd6659d0d45581ee6689aef495c8bb19eb0cf7fc1168e982ecd5b1d0678c5a78baef60b5f32c4b7ad65638d9e456dd5ff32645a7ee9652a8411cf399e68a05f822edcf6fce7b95ff75ddbff09b39dd5eee0f18dceea8e65bc22fbe78d3ea5ba4aa8a5b82a2677e232fe011a4306aa2ff0a75e428de3d0251bd229295248bfe360e31d0da6a55f65a638fa5054c9f68cb9c9f251b215d31017e7ffcf64daee351f1903074381b3c90c443ad62621c92b4599a9c8624ad0fec52f7a589e22ed6d541dfa39cabb67092857e0e07129ca5767f09915b3686a1e3e4a793104e4a2c0a2da073d3f2deb4ec98badfa93c5dca9eb337a6dc32e43ff063e90f2d3d881b26d61d40e1ceb8fdb289bc586e10d2c83788b32eab8e9df693f79a78ed6a00e137b65b84e8b84e269e9bda19c967c3736787a66a1be0884cde763f003af17b0c08445bffb382f924e5afd31b9c6302caded31bbb6db30af5fabf1f224120235cd485787a32db05bb2c37c291454fe569a2edd5d54b948bd8b0b46aa17ce7fdd420623aa89f7af0d19541d52a11a4e380fec71eacc912d166bcb6698ff13a37cd136e6ab35135195e2d81796c491fd47a3cfcf8a7059f90be44c99b402918af6093aadbc976c08e08e6c40b8ffca2d4e47080f6c41fd75518c2eea07d3cd0296cf324cb409fa7facc19260d34e7710d517979ff7ea247b2f0f62d3473cc89e762a2968bff0b0bc326a5a9712a19ee2e268d1bb1b8014dee9070db849b0f123c3500c4adf7f5b65fbb30d63eb5b3fcbb1f7f382108c7fc153db906a56e4336a5187f4818f827d614668fc6c206e5edb1e52b97a6c26e7b782f03cf5a6b04785fa32fd706d21a93879d8c996087bd47e8e4430dd275c5e9bd85c4f9b4e5218f06ec55fb88d8a34ebb4e41ed4d9842698eb655a3fc9b40bf9e775c37156a21e06edebfe5d68cd7e061e4d0ffc9557dc26612e52b453651c468e51159f5a7f9a0bda6654d291ac053caa07d76699bf94c48a0e8a45e906bec22898ad4a74fccac070dc67a49a0ce796c6221399ea7fc9e6e4c5460fbe5579e7c500e9970a97f6a47395981ddb5f98d289ae259369e1e32d15360e7425afc74286498e16b174bd9910d0953d39d77fca39a6ac3ba4889f112619d34d709c8f1fa5a001f7685f63a7a68552142e37a499d3dfa8c1e9fc7ac2d62887c27a0c8873e4dae3d832e5cae9231b469289993f356a4908eb850ab84b8f13b0994245a6620420722b7d9b74ca5c21f93df0f2b6a551b52efbedca3883ee2d1b07b9f947976fda66e2ff8d8b6b33d82afab286cb8688cbe8509b2583417bce9e7e51ba84f73535532c6bc8ba8c4ae120162b3dfa2ad7f7f701e117088162b70ce44124981aca81ba5a34c872201e698bd6659d0d45581ee6689aef495c8bb19eb0cf7fc1168e982ecd5b1d0678c5a78baef60b5f32c4b7ad65638d9e456dd5ff32645a7ee9652a8411cf399e68a05f822edcf6fce7b95ff75ddbff09b39dd5eee0f18dceea8e65bc22fbe78d3ea5ba4aa8a5b82a2677e232fe011a4306aa2ff0a75e428de3d0251bd229295248bfe360e31d0da6a55f65a638fa5054c9f68cb9c9f251b215d31017e7ffcf64daee351f1903074381b3c90c443ad62621c92b4599a9c8624ad0fec52f7a589e22ed6d541dfa39cabb67092857e0e07129ca5767f09915b3686a1e3e4a793104e4a2c0a2da073d3f2deb4ec98badfa93c5dca9eb337a6dc32e43ff063e90f2d3d881b26d61d40e1ceb8fdb289bc586e10d2c83788b32eab8e9df693f79a78ed6a00e137b65b84e8b84e269e9bda19c967c3736787a66a1be0884cde763f003af17b0c08445bffb382f924e5afd31b9c6302caded31bbb6db30af5fabf1f224120235cd485787a32db05bb2c37c291454fe569a2edd5d54b948bd8b0b46aa17ce7fdd420623aa89f7af0d19541d52a11a4e380fec71eacc912d166bcb6698ff13a37cd136e6ab35135195e2d81796c491fd47a3cfcf8a7059f90be44c99b402918af6093aadbc976c08e08e6c40b8ffca2d4e47080f6c41fd75518c2eea07d3cd0296cf324cb409fa7facc19260d34e7710d517979ff7ea247b2f0f62d3473cc89e762a2968bff0b0bc326a5a9712a19ee2e268d1bb1b8014dee9070db849b0f123c3500c4adf7f5b65fbb30d63eb5b3fcbb1f7f382108c7fc153db906a56e4336a5187f4818f827d614668fc6c206e5edb1e52b97a6c26e7b782f03cf5a6b04785fa32fd706d21a93879d8c996087bd47e8e4430dd275c5e9bd85c4f9b4e5218f06ec55fb88d8a34ebb4e41ed4d9842698eb655a3fc9b40bf9e775c37156a21e06edebfe5d68cd7e061e4d0ffc9557dc26612e52b453651c468e51159f5a7f9a0bda6654d291ac053caa07d76699bf94c48a0e8a45e906bec22898ad4a74fccac070dc67a49a0ce796c6221399ea7fc9e6e4c5460fbe5579e7c500e9970a97f6a47395981ddb5f98d289ae259369e1e32d15360e7425afc74286498e16b174bd9910d0953d39d77fca39a6ac3ba4889f112619d34d709c8f1fa5a001f7685f63a7a68552142e37a499d3dfa8c1e9fc7ac2d62887c27a0c8873e4dae3d832e5cae9231b469289993f356a4908eb850ab84b8f13b0994245a6620420722b7d9b74ca5c21f93df0f2b6a551b52efbedca3883ee2d1b07b9f947976fda66e2ff8d8b6b33d82afab286cb8688cbe0e45ab37383bb9f61f0999e7090c5afdf1f45cb29de891c6bc445602626a9c8a732350168f20bc7a7898353de7d0e010a6155aef682dac245414a4c574de5f1b46dcdbc14d506e2fc12d966386c40cc3df00a9a727a38718ee868126a7488ac3213dad0db56ce4db6d2d6872fc13c2ec8e49d5122dd482fc0a6175ec0124937dce39dd8f80b588dbaf3afb45d37ba3062a88e5ee06d2e72615081bd230981f1a5c1e2bd80ceb1be1c36c05f15649efa6bbdf52f8df533438b2a5ee9eb1d4c35d0fa8d3b3958d839f77b5d5f5de095ed4ecaab7310d9315fd8e98541921af8bdf491fdb0ef61608f4569dcbca9cd7efabb2add91bde9176fd445eb3061af75107b4d7a9e004dfc2667977fe5f952ffe0abf48d2b5f8ecf2270861e400fb0804d94b43c662022923a9f9625ced7cb92216bfdba3c441eaeb42c4ac23b8523e35935befaada241dbc3414ea09445a3455fde08df9b310ac510417afe147e90b0ae024b7fd46484a4065b3f2d6d7a404e0edfa88d8004d4476fbeea1e075b82a2b513738a91660b4c6591cb14cd5d9c586172e9496abdb39bca78a6e346b8ea46fd07fb321e6485e76e97ad8b0e6d615b76e2ff52c5e2cf4e5bd34d7de48ed901fc379121485232b393346728ff65269e9448231f2ef2b7d0fa99fe4242499c96a9cce914d369cc920af6f3f588d934ff3272f0c6d42a1dd1ec3733a87a59a338f091a42b93f539bbeebb480e9227c1b2cfad3794128a658a2e3ea80dd2d2f579fe66956919b1befd78de8063156fdde87a7c70a61b80156382d69e169070b943d5252c7bfb63ce174bae4e55817590618a515cb81f1fea020fba60c7b093a13aa0d069d6f85942a26d85d35ba66a979c3222181b908b6faff6f0532c3d2bba67b6f54b026a8c4c7fab93e102a92fb9203fa651915f299e5d0095cbb3c359b9b6f0b02da02b421a72dd056f7b877d92951ef59634ba40fcfa1d9eb8cffa1c76f320c9edc019b9cd0bc03d5d0034876557a31660b467f079c43902414bd52d6bda36f77389f582fa5f120ff21d2b1b9fdb7e9c60afffc5bb2472836e3aa655c437956b78a7049572e39cc2687ba263b296b85e5eb1353ae1e69557d539cda2d3352242c080101349e5522b376197b0f558596510dcb421004687095044df184919e8e08fbe7f6ba622b7c342ec85b5f92bd870483a418e6d51303fdc13f559253aaeb325a745a36b811b7f8df7062db059d56da33a12dcb5745a4a18501154394e49c6b4e474d55b522792c6abd5762cb4b8e8bf078f867786b8039ce3cc330e59b3b72a6bd490f6fa20dbcd8a2a894b987046eba354357958dbe3ddaf8bf6ea169dc69e79dfce7eea1c6be4b1640df519146000c0901b0e070330fa122c5fcb656896edd5d9033829f8558b7dedbbf9ebb8bd9804eff966c2159495865a425eabe63f7e5ba378e952236804f548cf142fadd8de9916eb9edf468fdef2092f1000f7ed1bdb17087c6679b93d5c68f87a106f9df21fb1de53d70b760e62ccd2f4f512d758fa99e7273cf589fcadda23c80c95055a7373bf158f02f3027510929a496af33bceceec9f827f410c287e8c2c453d728efa6a8f41c706413748092e4a79f5847e2f9e9f3effd563d2fac49ac7634d0d307208ea627a5c751d4983177fb067e2db2b27a550cf230b89eda7901299fac219e4ec1e74db99653ee9105215ff3b3f55309a27786b1bbbfc92fd114f7bd6177d065db53494e09d786e07fddbd36e48d7e56f831d32d3ba28151c0a05c11b0302f4bb1731f67d7e584d510ee697c75205939a64456c663189352cf1adc0d2df710842d4f7ebfc8fc50c5e42159a1e9c9ff8df002d9d361a07d2ab6a977ed8af3b86a8cba9552ba333ddf7f27de83e3591a18466c91dd8b0033395b716c42cd8c029bc9513976d23efec657bd545294c606fc393cc5e8cb7ee12f7a1d3f49a73d29032d97720867065e1b2fb2735035f81e73a899995e861e3ceb1e99c69652a193e9fa5405fd55cb8f8a487b7741aac14f78905bc69c1f84528fa64e7d7e352e2c05da95a2b87cd2ab24ec60a80d5ed050e5e66f048d73eaa3b879725914181db2d8d50dae6228812920110d859dbc047926e8615460ccf3cf075931ff259734044da5ffac8df40d8ba680eb4ca17753afd80440ae6e8a88fad3eab1f9f53254d2184543f9896fcd0de34cefff176e4c4d73ac8c94882d0b0b94263e63cc6aec7259186bfb114661efdf6222ccfb91d382b0d87953fb809f44de7c72437e298c2edf8dc507956529da84b5c76d3c2a8ff18fc84f6ed0e9204f3e02ccdfef1558e7e2202e4e88977193540b57a7ecb12b2e400e1ad698a4808b883419aa1a7b533c3d2a1a8ef9c6009c379d45ccb0caaff2cdfdc81e4ff0e27741333560f2e5ab279762f5bf410ef2c119c70ed71179d890fa8d6500eb04b2b42ea6baafd99a722e2a8a26c9ff58d37ce92a1de494355deddb31b7a4774453eb995048f63e6d30fb302c1ff002ce068c1f9037de8af448f975ff8702be25f7e6be268737ee66dbc2c8fe010241699ef0549225d1b266021cf74a6280f538399329b2d8ac395a90e3700854dc2cf3e10a15e8e63e8229812f3b298e2c15bd4a8e7a894f28594346e770abe50a39208c4b1f791216655d01fb18f86bf90ed392abd050e2938eeca589e54bcdc4834e496c76c0ef394692d56942ad7761f35ef93e193e3d04a9d401bd5a8d14445eb6a71b1f8df757f29aaf29390e3c724629032cab5384563e33527d2d659762297f4071b8017a08d89d85a797f28d37bb4855e94737452be40e0a89013ad5f9e07b46697be49f95e31952d545e5678187b004e72a5625e2b6698a7e339e8b50223ba63afe40a15f90c987df39a6301ca6f75794152849b187f25088f6578501af27a138edd41f9feaa611e7566bd898b7a40009aacf9392105ee2bd82bc2f35a7580d8e5a47f35d5a091e21a29a82a4fbd2b466f53135ff10fc93f980ec4fd2141ae34c235350f1fe07e60d7f7c17f7f384b0aeeec4b8ebe7a9bac820249428283faafbdc79b6656fefe172b2a3e2729dc6edd0cb519fdb2badf27757d54a5debec2b6839fbf483c0cea235f8175fb3e48f8aabcc0bab7fcd04b2b6fe150523a3a09fc33401d797493b85446db36dc599edadfb6bdb8207a19835b99acc82f600f2660a790aa9d9d0f5fc92522a49756163b24b0348fb16036eb24fdb508d82509561598c2291cf4cd93f18bedc6f28743b6d923d0ca87a6bc0904d67f07add2d3e7099631064b55d15b4929a4c284e501cebd725398bf632c88f8f5b6e88e7cd2aaa17fdc140d94775b41711f7de57d0cf6ae9427a45fb92cc0ecc043126d223ec176f214c5e21336cf1766d19a8bbaf6c30ddda853b7e6638efd9b70416c577360b3df5c814bcc1987d0392971024704c655397ac5df0f5215b035885b76e9210886fdb1832d403053447ac1162b2f3961f9bd49289089eec116a668b4b2d964d15fd7cef39f5c0724b00960f528a3baa3afbed4ed576ba94ae8df4cd22aceaf8fee510154e5ea9b97808838e6486a9a1724d5250571045e0e83298f4991b9552dc45f6cbf791502384e836443e9dca12036a6f3b27c0c64e4636258ca8e195c7a478627675678dca7d0badd566fe77f7171da88a5f7b72b9a8e9ff35905b7537fdb3812bf83861c77d98af855d18ed08e868488f0601d1c5779a530ba69b99c6d0a0dbb590a6f153760ff7d02a6edaa268dd3edb4edd7cbc6176b968213d409004e716160397196994e6bfd30f0c8204c8a5543cb6fef1f881cbd35bf4abf4b31cb2a90c7ccf37bd97ebdc845c7b6173bd045a1f9123514d7692898dcc1e8b8ecf5deda6d2771a9eb145fdce1399c49fbb53eab284d45bd983600369a17bbddf547a39a12d94ab366f1e1feefe8abd06a2407644940edebed2147a5a4addeea9ab6aa1413325d1da23b7892fc7d185a31b627895c4bc882a0ecbf5070c6b5d1ae550e84471a8f9796fbe5394dda5c060d063bdcc7513eb0e27dd05ac93a6ac41a20ae9cb3cb2845ed5eb7c90fc1d71fd9cb87e25f3db95cf39ac60896ded82636e5126632cb1e80f88bdce6276a38da057c6757ea7969bd0e9d99a38e4b752ea6457c810cc7feb735c96d48ff7f9faa48437d989e6cb3a65847d36117260bb279d7337c0f4077753af1c082c60c22ceef45339121353a68519b96acfcbfa333a6a7c68bc5992a4c3a10814ce8dc21b1920639f124a8f672cbf34fc849aa207873f3f6b48b6ed1271f4cb5919b8b625c345bdee9640862245f28b0a04f4250cf5b3356a2b3f501b991e6ad360d212f33920ad63946f2e020eed078455dc04d4331d446a106e064255184a5d0ff32a39bef05267ed49d5cfe8edd4d31c9a870a2cc0ba6ba8b7b9568a8b411fe086769330874b1fafc264afa011d1c6a5bbe3daeb34b8637b9c844a8d060edbeee2578d35a1b158d9cbb84d8c58d399b58593ecffb5196f9a737bff82ec316dec096f5ffdceff1f6cc5ddb0b759a827395124fcbd7aee0c240873bba2200fdcaa4b5c500285a7a733cbaa29a57293c8df8a5544940f41975a1b171bd81e1f2ec82347076ee0f5f2a6296ab4e4cfe8ac7f8605aa3506674791006f93753454971a81c26876a9c494db8425d85abc31426f289c64356aa95d363d88a2e022185807550b46bcaa771548f8c13f4ff5bfa11f23c84aae530d73436987de9da86f067239ff24ebbec5c00537b94876511338f70f7eae0afe21f0a25fae48d61bfdc67f3c2c992545b4ecd8342444a0ca06522b936101440125f01bbbb9b14691f8cd3c4f7368733c692ca0d2fa2e7cc36c016ece0617c26b2dfc614aa6bbf7da962168912f0070323f5c1c946dd505fdcc988d153a977ffee989eb205271f0c4d6b80d2b808c5c637ebf0bd7764e0e0f809b35127e53bdde3d6745ceae81e6ec2f63f76651e8f61a12228389d486f02c0d42293f1d09c4047ae0e42a72c573c47c235666edbf571257f39be353963559ad2b7da31074827d4acf01daec5bc3c5523f99d3d90df061913054b24f1ea2cdc1b7ecbe9f2d6f491e31bad34794ff7c646c81c90fdb328907d964d7130cef23779afc58d5f5de3e4ac637481322f141cfd09698a80e340e5850a6278fdd8ee75d5221956bb6d075e1432ef62339c525569cab78438a3bff90f26a3c025ecb4cc087276237772b6e8960511b0c2ef78acfbfd63fd8671f61a6bda52984ebdb7b1aad04a0c6633fed602820ec14b876a23730ef868a0b8e13561528dad5c61b668b757e914fd731ba90dc8814d1a54e984d91ad0b82d11edae4498b6783cb6dd3048d1d64de9139d0d782a635f049214cd8501152e342aedf62cf2ed9298595a2c42a9b73288701c7b40c2ede3edd64ff0a0b45f8e5339386c5a4429e32f33818c792210841daf7928222def6f002182e5fbebb5bdba04017db1c946ceec8bacbd7079d60b695b4878241ec6093e089326b7d338919d96830bfb05403e629fe4b3846959ce3a7f7f370a1da673636e7fa0a54224b06f3858d3aad39188a3995837047fa90269cbf888282b46c6f8223c21e4062685c831f85a2578ba406cc76b4f7716eaeca026c9effe32f4a9790f879eca57ded29546f8b186fff1be4faeaf581fcfb899257005dc4e15552d609bf095629af7101b791787305e3b006ee6e39605692a2d62ae7e7bd7606dcd39ec6f3bec0ababa11e93b117114812212a0f301f4d594ace88e6a5668f4be959091337ab5a5cb16a1661ef3ece2753086e585f93e4c98056c3df2e75c63ccb2697d7f05787c29007f9596df915071221165d57075fa250f78c8996c44931df0bbcb76fb730a0d8dce1bdb4adf296a8e9a01342f65c0b20e8dd5e9b16a665ccafbb7841196df6e498acdf4ff90ff96cee1b99ae7b19f676ae4847821cdedba17c1c6f5a5c78088afd0835b543c39c23c2e9d181265a631805d8cae5909ad31fd1d4b16ae3956955929e1dbbb417817874fca349f00334d28a66ccbc81df499021e3b3574f60b983ab35a321f20406b7dba818296652e00a4d047c19b95c59e69f7eeae90933182e52f236bb109ac9f28651ccb63d5645bfe042d39bacfa7b6a36bb1fed661bd52f81e879068d60c5a7ff2690793d34bb340035ae2919ced6dce5970c9c7184465e17e0d0ee16420a462aa903be0a8e24e2086bde1c8521ed2a1c02d3d6096ee2470ecb812af06e73daa258e63f85825c24b0b29c77373a176bbf9a930b45ef821f7ff3b195543608ed198adff6729a2e400d63a9fc6a42a1db6cf4eca68f5be443058db7aaecbc3c89af84278f3152fe882f0172eadc010efa60a1017808838e6486a9a1724d5250571045e0e83298f4991b9552dc45f6cbf79150239a937c04507d306bf281279f6ea7a50204286aae07f3ebf0b3fa83f0c2665559287f99897bfd21eabff204bb7d498446e87fb9932399ae4e062b9fcea3a617c7e875210537ef67afd4f9c5777b4d5eb40d23ea6ed0e81fd8ffe0c38eeb4be337c51cf1463e10587694aff83482c74478d6a3aee5e3c9fb9d79bacab63bd4dd51762ee47ea508dec429673a21d1cb34a12c7cdb37f372ef1254027a4bccc7886fe85403955bad1138298fda43330003620db78d8fb9dd4c918c074f3bf0dc8b75693d89491c08f7a0e65ee8b06c787b3e3895bb35b1f9f81d3173e2df186213f9056fc91b43e2d82c4d3f3f371999f9658c7248e00aab419a177b119093899afdfc0323b4a71f4ab295d6dea3b8c0b4f3fbe382d3fbb9779d3ab60aa73da37d1f6fbe5394dda5c060d063bdcc7513eb0e27dd05ac93a6ac41a20ae9cb3cb2845e95e106d51f82fcef55a0e03ffd47b847e2354ac9868080c6a071d890b76ed0af770ec48b16fd709294c9dffc593f44e2a5bd1dc7bb2110ba2146ba3ac330653d2b5f1fea96c4de09922bdbe75bf22b8795a3f2453ff2e287979c0d3a95cbe8e74ded58ab0fd3dda9d1716dac0d61ff5b817214c698c08b57b3722497399268ebc8aa77fc81661462a34a582c47776e5577d4bf9c091de501ccbc4d5992ad231f7323f161471e765a3f453e2b30841c2e4ddedfdc80162c8d6efa3ca62cbb56b6e93306f3a2805df14e86f06618d6a085b2d4ef4c3d23e4405b62349f510d6188020c052cb7c838abd3da71f5fa00297f7eb63b0900a4b7018e454a37356235b6d86d02a46d236ab6c0039f2eb24b75c7884497ee1420d07fdf0f1269cfcfbfb4111cc15ada61a00fe0d1ae5d9a95c1f0b56f5e3bed1be90715b9bc7323017bf14c1ecf4c67cc5cf28639ab54ebeaf920ddd2420363ca48cefc6590e401e4b69e012d571f07fef4ad28cf3560408b134cdb02c5277541f4b89f7d349c37aa3483caef9d3704eaf5ee233fb4d8d7534b6a673476dec757e4e44a08b3411cefe1ab7b9ec50a2d9c6686a8299f149f661df6ba053e596f4f1dbc1731c66bd2347cdd68e3a22b02b4b51a2facf6f10f2bf4e01992a1281819ba2cb7f2712030a621497df488f81b0de7c556a50d255aed742451e629bc2299b399683866020b328089c809f8b710cd9dd10c29cb94ce703493d55c773837b456d3c035cad5e8a839f32a34f717c7d7290856cd82fc379fe63169f23ee8fef319e2ab198d2b989b6b9f16237488da83c8795d7e0db8a0749165dfd9e2f461e5f25d30cececbb9bee081e9c48322548e5f2a4c691bd8fe102d4fe76ba4786565da0d133dab7932e362c29ef8fcd4d38d3c17f54e43fc12dc82152f80798a10c0c209bd9bf9798cc23d51e775a3b885a2d2b7fa96f40e20380cbb6d07f07aefcb7e660a67f6b5e9b25f7e927438c8672f5cd1a6a1c5fe508d45bcf7272ff54ade656649c6dc2810d78621c91a6b6233ec03fd6b981af96f494f68ea25b7492c7b08eaed068f7143f049e52ef17bf460739baf3f40d067f3151b2267bfe0bed2d7d959e7c7a7c89814a53b197e2913863ccbc7a3c1b09d44dbf836acbc41ff4a9067297b9e6e91a8e961788bf17cb73d8a4301382503428259b4e16e43654c3dc99a4ae4ee4b7992b8da565480a13ba6de60ba2be45079fe2421a72fcd6e61427f1a96bf4e284a686ac4f80bff08ec49b933c99567ed2af36603bd4f5cacbaf933bab8440e12d087705bc05786a711c22461c1c50e6aa4de40c6f72cd46344ba6e8f4518a299c070562bd85fb9c380e9c0dc2efd907c135182eddd60b9f57f48b77271e97f6a142dc65c272d0602416abe05715e6b287ad81e37509adae73f8c62e8984b1ef8034e2967a2cb2f731dca9125c4db76ee29bdcbea0e49786badd567b91191303a9074ec02c4e1e1240271ccb67ecfbbc79cabf261e8bb9f1c79cdd70b75d2eb4c9aeea87a0ddb62068d5b9ddb275ee8a465ef95a7ed45782719941ef0bfa72b663481df59cfdc99a9e071fb471bce71f0bc49bd96a256f3d362decf4160e060be059ce91ca353f138d2f0aff81c89e520ae28adacc7b555204d38f1537fc91aea7701ae12d25e3c9fbbf126cbc891c48b32ee87af2abd4c6f142bab39fa3cec5fd90d7bb3667782064d4c364396f976071b640e5e53de0cb20a9d203f83399011ad37592c01b9fc86bc4a08be032a288c19054938b6acc86c3e523ab5aaf197a5bbc980f507f4057b2e9fe3e1ab9b58e07b4f54631e15ced21dd13026dd90a7584526e3635bd47914124c9d1f40604db14e644bee9fa9a37e166c2035af6098cad65b026b7e6d64955d4bb5a6d1e73d4a07f5709cf004e51f5c1aa83a885a96aaeea681cf3114b281f0867d069fb429523b95745a0371d2528fb5a8de5b969d97e2336794aaa20d172226830fc642664f5847f338cd1c86147785427436aa097ff5e1ab5ccecd206be7eee7fbd5f1a270ef60c1e1548e118f42f8da279135f67fb6f683c39c7b6992e9f34a8f3b8718fe4b2257ed26eb514ea61b08b4e81af28afe5d803d3fa288caf909bae4d38012b61bbfc9865fed0a96393bf506f0cb02800e57b3f529d7f0dcf0580cdf84fe602f32e0c28873394ebbc5559cdae1365c823ee4864c17bebecc7c5279219c2247035ef1e6ad544b9e44f642f4541d90a8aa4f6fc7ffce69abb7bd4342134c73d1c770ffb684ff2815f8fa5245a137f5e098402ee942682f5462ec463bc733449f1d45a73cccfdc0d2897ab643681968519862fc1ab5e2d16666c39a35f164f9b9b610879b61269016450a1af233f0c8ba37684db4e79374b5c93104f4c786a374813b297aef1673730ac2b4760ff53cee0225518c2ff5e764fa5118992fd9c1dbe23577580079cc7aa1c72a218d8798ea07ad48db5e319b22aa62d928bf479cc8658093f176555af010f080aa54ec7c725fd6742aa29555630db07fd46aa9e7a80e9d9b01e228cb749b77113c65aed2d1b6d273348c84a8b349876d8e6bedb6e65e4963fc1f6170e0d91aa002c6bb9bb8b7d4d72fcfde8925903e6897966f8355196740cca62455776d34dc807996c273f2743a59c302a08204c8aed0379ef7c9eae22f28134cd6bc6589ec9b290c2918769e23e037e9183ae0ed4402f6ef1ddf23da7039959236cb05663ff0859d80c13b9f8947e72db3e7ef30ceec2eb06be8d8671d9a933cbb56e5cc2568852159e545a90d4a02710b7f52182fbea2ffcda7cca6c214c4deae028b2141ed50b62fb420e38aa19c611a3ebe6aec6497627f8b52c00b8adf0805974df800d4dffc55a3fabbd9d1dc16fc761670b64d63b669c0989cc0b0670309251a425167870e0f11355f1bce8bfe60d15e2fa831ac1d332d2565ea100113324be12fdc02adb85cd7cceeab5175b6f668315cc1bce2642e459055bad127352d62a9f91156a86b7b03954a362f6bd3afbe34f0534103e652ccea9820a8889aedcf625fe260c574abad4dc38bc60712f5c78f54da16d0f7033b522669f8c23441b7427b7b99a6539cd92e95e67747eaddc716d3cab8c1fc9434a79465ab5e22ff72617abb47c62b6c29fb62803beea628894a5570efe95003fcefb0c457c2e421510ac3e61b616fef0de77715f1ca07997ca70e9e384ff0c15732fe9c11faebf38d473fb967ba59371e60dd5d0fb526cbfe85467f20955d57522356a5bedc3df4cb55427552c76a56970c37c9d9c1fb781e6e96c8a236dc90123a28e1c9d88ce36b4e36c8dc5f67f18a6d20e1741a31f4f1ee7af795142961e50b85ce9a8579ee208fae8bb7a115663989a7a0fabb2434a50fd64f8aebcf406d9637142671fce1d559659a0393c7d2a13f1bd1fdd5772404fdbd557cb0b8e35b0df3a0c7cc2444b112e92ff904376c5162103d95ec6c5c0468d24d5b5612a28c20127dabbd8affa2bafad1b5a7a12eb1888e83f7c4c9b6504657fc885bbd5c7843094d3cde103c3c58a5a591e961ea648f52eadbdd067105510de15e6a84097873ed1dd67090270c771f9738d3d8e4658f35b811085b15b8fc52934b1d37bf74eac466c16c0d52b365659dc48e673e120269b25ec57e8de896bd3825fb0ef3d2453bb1e9bbb89f131fa196e81aaaa126b3ff29a2cdb14e0b356f549fa951f6bdd29b16b39236e42b7abc2904b37d6f7a399638cc1b0fe2d7191c039d61584ab46dc40a54c10ba8d461de092d84df8a344d0c2009cd7c1a13abb966226e41c66b4c49ada8b1fdca5cb69a8cff96bcace652d8c8ae662067547dbb697044b96809070acf9ffdf2afb2dade5875e33a8afa5129ede3a415e593b04c5ac0e080272e3bd93409134b1e29c757d07c02bd4b00f9850a26002a38d77415b12180aecc669d25c17f01e3a4bc0c0bb8e1bec05dd631b0894683eccaba26646110a0c85b224cf49aad1a113e814b06c63bfd320e883f567bed7c6fb647bd2f290e5464d20d2f61171226970fed2272743966fe384039bdf80cbf58ec1745f2928aac13962856b2ec22b03947d82ad101f8d6549a1d1ee7ddf79eb977156ef4e33ae50bacf77a2ccbda6f7fc3eedc598e743f0947fdcb1691dacdb539b090355273598bb52691f3cbb666dc173e921aced6a6e632cd6f1d2434c966df43b14ec1e1b43070176517481f6fa74dfd83c1958f990d63805cd364192f8ca8221716f693f6550bf4f85ee927d761e97d72d27c4d84aa2c6ee9451e6067b75f7a60b74694b7dd561ad1411b3fb63309728f73f276474487dca8f69a95abc3b3f14feab026b473e24b4abb6c761745db5d42408af609b4994097e948239e3a516a7c5409b288bffd8923d7a772df341ed795c6e0a0f9d8c50cae1ca5d8f54aa5924699b8955289074cfec0977e738c9bc36962ac029676538d3c74025e2337154e44de07d2f243143d4a2574107ad62b40df20358558bb00e30e54d859b96eb038974ea412b0dd14fab6a799dac277ed61ee28023c070839ac97d11740ba17621e3bd3adc4246c65bef981ace3495ea8357ba8ba23b2d67ac4d6a011b82aee3ce5cf5a143ee4e121d26977803b074c7e77e27891b72a85ad9f5221ac641959a2f6424a9982c44c450f935ca813716cdcff7d455c816f887a55e9a3e9ddfd2365ff5eb72c62c206d28d0a37b691fc855fc5d7f80f719a4cc8251e8b2660245774bbede4f8f47a1bd91d4b13e79254d25659ece9ec9bd8925cd87ea84271c33db44c993e3ac9eae1604dae77ce9df61b49b3a68082af81c91f6e84001c7fa1776ff0d7c57af14c35e523231ff5ec529deb415121256e0bff8007375ddf34888439f84f6e727f9fc187c8c7d35e3cdbce277980682f2d672261e690503533abe035185490bf0f5a430311074f0fd3814bcb7606905a70b712a2c01eebf452074260de4ae5d39f8313e9a101b8d4970f9bfdcacac91eaf3cccb3b506ee9149d345c8dd300871f64ee1a6ee541d1a7a117c7bb4337b838aeca72cd2cb5948b99e0bbaf9d44014e1ff2fc2118f0ff5574c8776bb802d9d5ef69cbd6f8eac5b2b026ef59af4837a63c9caa1d0bfafcc64beaa65e310712b0e056f0da6ee0455a3d8ba9ff77fabcb22081a4cb5cae0da9c39a64f36b06aca43d0fba25a7b0f8f91fe2937fae3da4882632685e284528b7cc8a69d391dd3ec8a3d92f82f32a991aa3ea84c9a1fef7c67dda36b2fa23a134b2589cb0b9e44f7396a6fec1f2f1bd5d1622da101c11d3084691e13b44267459e45853290aba419d8255191c26cbaacf70afdb6c4b43dc62632bf737c6f5d75e0f937b2a3c1dd5d1bde8096db61ef4ed52ef535a50df9304434e393043e9b22c593bda93988dd1a59955c996b1a6edaeb0603c3eef6e5e658431d7ad8ffc42d212b502b19e05125196ffd09ed7b1eb8cf9f3861893255971123033ba5efe76edb1368e002aab965ac299a6ae1696a04b87cd0fbb61857440325926d79b6986c8d1eae8c46d76f5febd2ed12ce07de832cee39fd49ace2d1ab1cce049e28900e5d0de6f3a926e11c20b706fd4cbba4c392ccd9c006e8b95108e05616fbf56138aa86210c1c5fe01f1aec27834459106875ae2c128ee352188610c1f67d40fb97488698d933927ef9ef557b1e18db8914e5f9ac8154505f5a98b6efd9cbfa843cf9c46a6e7089be6c58560c944307cdd3b528e64c074d88b1e259f058f1a276a5181d4ff1dbec1f1ddfe95c00b29c849cdcdbfe7c28e0eef93e3a00c85401a87ab1a1922722b828d3fbaf79699bb149665b6261e0e96ceea0c8176118520f53a1e71f2373ee5088e989dab97cbf68c8db3c890c096d77c0ea5928a3cc1d9dbcad617cf2e3d24de0f92898b3dc4e92a85cedce7b185db8b79d72608f0f388999984895ec52505f264ee2f01e8c97195654a98ca7dd42922d34c0a603ab48dd726c9cbf93331af0c826d808325d66bc11ecd590717c7b1beb904e7042273513f2e2a388cb4fc79a0b082a9cb1346549c60b45419360b13b0a80f4f33f4f8e9d46ea79cc2ded618e940121ee8ce85de6f8f3c417625e318bcc593c5e4f268c7b6693371de1d8385f5941d39adabba25f24a15cd54f7388ece3f87a1f517f2bcce418ac351be5647d187170021dae85a544b0c53932f287cb0429cb71a97e34e0a8da243da9db04f7cb42da5d7fff60a4bfd26ce0fce3861942443fd7358817534f0fb162b5054cce01f6c85871c5f4e1a99c7c39b884a80b7b784a37d6309b197af291b88a63a0c77b8033f6807e7bfb731e11cd7be14d6997c345348a4ce28f381f01967e2b7da53bc33cf1c4a3d1c0d2d9eb654459e012ca0a35c3cca93543078755e5ace714ae3bd77ee6e8ece63d868894d3a04bdf09ba888640139e3bb20eb66d891755d00527c9fe02b391d9bbe84b5dd7d8606a4988268b89b2a7f4245494e9a9fb424736ea1926a6e89fd90a7313b33d709877d9dfb1bc47b9c2e49c761ac9ad072042e859a480c15a9c21cc1cbcfb452d9726e5c715e1a03b79e0d7e1f52c52b27f86b3ab761662e698fb3913f0bcbc3806139bff9de2757e6825a3ffb99008920b8666fb832f172abf65841ad496a8d310f3f154438b1248741f6189581c09600efe1a422f7e5530f1665ef4ea9ab493593fd2e63e33fc82408490089319dbaeb4baa6ee6d85d7cf559d1718d385f746992a1562f6914e953ce45702660721e634ebe0efad4c034b5f83b77f70c7e59b5d3a9a7c44c6138491b39dd3e24742fee297891c7e3ca0836afe496050dacf226242641eb9afc2790c9efb87a094647ee27d2aef5fcba8cfde376a50bf1ffa88fe2945ef868f8b6dee6dd30dfb08e848a057851bb8a5ba603be4bc48a7c2e92237f01b816d73542d3b399a0b844c545a233f60693a34ad31968a3395734e11d48bacc001edf28c1220e85c8b8f844b20f3a3313d7d16dc03fce5567e051fc3ee07bb833e70fb43e184cd0761c965b509e7611e853e56cfa47b4143828adb8ceacf4f85c1a386f8730358394d4e43e3d7e180ce3af271ceb28707acc9a2bf1588a3e465ddab63284861ce744ffd5453cbff7dfe9a96efd21e1d6571e4ebe0f9bc00bb4b2bd7edabaa0a8c3ce57aa960d529da705cf0e08e8463ca4b16a4b94a35e5b1da92540aa441c866275243591ad3b86d191e29333f2f18f1b7f6e8499d508abb1b0c2da1bc0aec7d1d03e751c9249e5de8861d5217a033688e17f939ccf6d8ee7e79acd9d84293311fcb993f61b7ed11bde961f91b619ad1fbddc794df83e6b81d93981689f7adf1a227916f0400160ef531833501a77cf432c4f03effea16c02271a3d3fae935e5a9dcc1428ac46cdcb411e0b5836e76d783e4399788d0b7485994556654d0b781052ccbe856289900575c88b4dfaf192bfae9f1faa7adce740f32ca346c63e74a95367327731d3ba1ea9ee8d01b190078296b45b93147c79952d1d173d0d35548f64e1ebf5fac56e3f677df2786b978f71c3d9e952f0a443e503663dbf318aeebad259305c46f3541c20bb70abd6620fea7572b77735c62ecacff6579d68fb98a396d785d88e66fb1b55b8ec02f8b1af33eb2761bba09926c1d2260087afef425762bcf5fef162a5c5caed4dd53e2a3fe85a82c2cc8d6f09137afcd9c8e95b52d2ed375b4c8cd84f8231767176b6298c83c06f609e7fa2c258b16a88ee3c758546db6e9c757321efacf06bb32b69643ebb4744c6ea87908c765f2439673b3dcea1cec0820060e5e9435c43f06b51a1c26f43d64d6ba578a5591be142eb1dcd803631f9865bc13b83a867965757cfbbb18606ff1b6c3eb74a7c71b37e6426957b4af3b08dc138b2f3a6ad7e4112a34da746b0d195a9c41c1de2ffe9198d560618c97ff088582b4cbe50c92b6b20a1f75caa4ea08356cda9760423d0e8310c5f0c69dda9ce020df49865e8bf638537d55e22ebdeae2a190ce9c13097a4415d60308615965e441be997c016320fa3dbaa430f77152e3ff1e14318cbf1fb002dd78773cd3ced28f8abc2acc32db59f277aea21475d72f349f3e781af7173bdce90781c6612e9d05f0cc46846aa6cf9b045f2407b3bb6c63534df63ff3cb315af3e6442a6f98e3f5665862534a3e09c2a915ebc6bb5e72b0f5d869c0134460ddc28520e5c07194473476d24080551c2899da8588382f7fd11368154faf2c010fd9318a3a0b6c69c250b443e88f222c906224a981603266abdce11703de1eae37ad7abb2f7411926a877b219e5a909d1fe537a20e147c9234b4ffbd6111b2ea73b9e364ce4fa3f3b3671974c54db72b4d94d1d2b1c3a532fdadf165db51ab69e30c8b3666a68ed0b4252f6539374b0a750d72de3aef84fef201e06f106fa3c3810eec80db510ae81a97e38bb3e86c765461431f4105d5abfe33f6ad3b497340dfd08556604a82991619a074bec4f034868b01acddf58e653e2f2a4464edbf587d46598ef01b9887109c0365616a6ce3c24d77f3eeaf8b37cbe0651866bdbf07ed32e785a6bb9cfed7766c1ad8b553db7ea230ac5cd38c130473f12a73e5bb493505cc19bdb0f14a71deb95fb33ed8be64c6a6a02c4c2d9c0d06cd279710185e52d7b3e0f45296862fbd5d335911f536e81f43ad412510dc5a4eebbef2c73da6470bffb065ce63b93e912cbebaa5136661f22622cea72554a2b7c6cd7aa90e435ea74f7762a881b2b1e80c15f695be5475c28ce5d4852321d0d2015014d7c2f75b4e9e87db53d2e96b916d5bdb039659a3db7ede0612c38478d8f64a949182be2cb06e5cf357f7a7d7299eeb60e860add4f0c506d5b01d60fb2c58aac94e46a3d7adc36021505ac9e347664200af8063db23350c4419579ee0cba8fe26289d38eb6c94993a56da6523f374b9d65f06741ffcee151efab4f812835376ac511b9aa8cbb0340dc4418c2110408cde01dc791da6521c9b59deb0368c853924b3d60a1b309f778c6e5416c7d14a7ab18916ccd3ae158444072a69880acb21546de30eb0162deba46f18e3a62c745c980d76cf7e8be9417891c2d9c5c3ab633a195f705999c6bc0c4e11d8980c452d46ea7b6c0ee97e38260b886350fcebce47a1d6551c42ca7dba96e8c442e3550b878836d2f0070c908a36aae123c37e5f1f6beab44de9c7ee16cf60a103e7b953a1288af1e403678f60c463f5d5b3699ab5ab9900f7f28226fd5249d8e189402af1487fd98a46f514e0a5687f36f2d8616381140248178cc3d1ee83172114babd0a6344fb35043d9c0cc5b3e0ee6991ec21e945830f0001cf5c03df7e8e449d0627bd730e10f3c3b715604467308fa62a3dbdac17ecfb95187f412c747299e334be265f48e9378980e0c11c15816cee388c4bd0bdf3e727db62e61d6e4967443bdeec043fa4e7532bea741c9d022ff9bebc72d444503dfdc609259f0f28e1cdc615e8c3653530ed26fba6517ec4d4dba5de99fa33b803908d9837d5e74ccebc594f25c09fc9cd672b3056bc200d0554e6b470e48953feffbcc4416874af786909e7efe336bdac5f80efd95bcaf8210e28702e44638a1bde249cfba5c3b981dce1dbea5816d28b32f64bd823dd1e665f8525f88a2e80be8107be648dbf3cf0e2ebba0abc2c306f0006177c503932198da2ea1edc41dbedc3b0ecc40caab5aed79af1476da84482f79f4a8cdb633613896869063bb2e74860c2eeb66ec0e15fc9390178a87abbefcc570d09fdc95d4f556ec04941049fed04394622386f7fea8c33412fa133587fc92bd30f1f28cc26745836a4ae125c6833a411aa0f18eea5b52ad54d175a074bc77b8cd563105f1f39127fce1356b98871f18c9ca9c3e8eb15ed9f9b353e93fc54d3357b7afe69e0833095fb9b54b3d65db53552b506e7e7ebc3a68a181a617182693d6714153a779abd2f75a0bd9a1aeee4e69f649d8bb2ce8b73e9e310b3102bbd39dc9022063cdde34c67ad4ec2a7b46fc837bf008f45a136e76c4ef64fd1a6c8edce90c07e1983971c6a61cdb63ff0173ba99c45fb63ff5c9dffbe2e482bd10397c32b8918ec741aae444758dfa9eb597538bb65af13355492559bebf1539605ee43d6045fc21c81c865e043804bf145624c1b1f35a2752655fbab6b4a14a61786aab12cd144a03d4e10d12e6982dbb3a84b69a0d45ab3112c1a703601dd43ed59f52966100a6367c2e9e3c855fbd48dba1c0b77234afee8177a38339f8ed11f86e179486c8658aac94e46a3d7adc36021505ac9e347664200af8063db23350c4419579ee0cba8fe26289d38eb6c94993a56da6523f374b9d65f06741ffcee151efab4f812835376ac511b9aa8cbb0340dc4418c2110408cde01dc791da6521c9b59deb0368c853924b3d60a1b309f778c6e5416c7d14a7ab18916ccd3ae158444072a69880acb21546de30eb0162deba46f18e3a62c745c980d76cf7e8be9417891c2d9c5c3ab633a195f705999c6bc0c4e11d8980c452d46ea7b6c0ee97e38260b886350fcebce47a1d6551c42ca7dba96e8c442e3550b878836d2f0070c908a36aae123c37e5f1f6beab44de9c7ee16cf60a103e7b953a1288af1e403678f60c463f5d5b3699ab5ab9900f7f28226fd5249d8e189402af1487fd98a46f514e0a5687f36f2d8616381140248178cc3d1ee83172114babd0a6344fb35043d9c0cc5b3e0ee6991ec21e945830f0001cf5c03df7e8e449d0627bd730e10f3c3b715604467308fa62a3dbdac17ecfb95187f412c747299e334be265f48e9378980e0c11c15816cee388c4bd0bdf3e727db62e61d6e4967443bdeec043fa4e7532bea741c9d022ff9bebc72d444503dfdc609259f0f28e1cdc615e8c3653530ed26fba6517ec4d4dba5de99fa33b803908d9837d5e74ccebc594f25c09fc9cd672b3056bc200d0554e6b470e48953feffbcc4416874af786909e7efe336bdac5f80efd95bcaf8210e28702e44638a1bde249cfba5c3b981dce1dbea5816d28b32f64bd823dd1e665f8525f88a2e80be8107be648dbf3cf0e2ebba0abc2c306f0006177c503932198da2ea1edc41dbedc3b0ecc40caab5aed79af1476da84482f79f4a8cdb633613896869063bb2e74860c2eeb66ec0e15fc9390178a87abbefcc570d09fdc95d4f556ec04941049fed04394622386f7fea8c33412fa133587fc92bd30f1f28cc26745836a4ae125c6833a411aa0f18eea5b52ad54d175a074bc77b8cd563105f1f39127fce1356b98871f18c9ca9c3e8eb15ed9f9b353e93fc54d3357b7afe69e0833095fb9b54b3d65db53552b506e7e7ebc3a68a181a617182693d6714153a779abd2f75a0bd9a1aeee4e69f649d8bb2ce8b73e9e310b3102bbd39dc9022063cdde34c67ad4ec2a7b46fc837bf008f45a136e76c4ef64fd1a6c8edce90c07e1983971c6a61cdb63ff0173ba99c45fb63ff5c9dffbe2e482bd10397c32b8918ec741aae444758dfa9eb597538bb65af13355492559bebf1539605ee43d6045fc21c81c865e043804bf145624c1b1f35a2752655fbab6b4a14a61786aab12cd144a03d4e10d12e6982dbb3a84b69a0d45ab3112c1a703601dd43ed59f52966100a6367c2e9e3c855fbd48dba1c0b77234afee8177a38339f8ed11f86e179486c8658aac94e46a3d7adc36021505ac9e347664200af8063db23350c4419579ee0cba8fe26289d38eb6c94993a56da6523f374b9d65f06741ffcee151efab4f812835376ac511b9aa8cbb0340dc4418c2110408cde01dc791da6521c9b59deb0368c853924b3d60a1b309f778c6e5416c7d14a7ab18916ccd3ae158444072a69880acb21546de30eb0162deba46f18e3a62c745c980d76cf7e8be9417891c2d9c5c3ab633a195f705999c6bc0c4e11d8980c452d46ea7b6c0ee97e38260b886350fcebce47a1d6551c42ca7dba96e8c442e3550b878836d2f0070c908a36aae123c37e5f1f6beab44de9c7ee16cf60a103e7b953a1288af1e403678f60c463f5d5b3699ab5ab9900f7f28226fd5249d8e189402af1487fd98a46f514e0a5687f36f2d8616381140248178cc3d1ee83172114babd0a6344fb35043d9c0cc5b3e0ee6991ec21e945830f0001cf5c03df7e8e449d0627bd730e10f3c3b715604467308fa62a3dbdac17ecfb95187f412c747299e334be265f48e9378980e0c11c15816cee388c4bd0bdf3e727db62e61d6e4967443bdeec043fa4e7532bea741c9d022ff9bebc72d444503dfdc609259f0f28e1cdc615e8c3653530ed26fba6517ec4d4dba5de99fa33b803908d9837d5e74ccebc594f25c09fc9cd672b3056bc200d0554e6b470e48953feffbcc4416874af786909e7efe336bdac5f80efd95bcaf8210e28702e44638a1bde249cfba5c3b981dce1dbea5816d28b32f64bd823dd1e665f8525f88a2e80be8107be648dbf3cf0e2ebba0abc2c306f0006177c503932198da2ea1edc41dbedc3b0ecc40caab5aed79af1476da84482f79f4a8cdb633613896869063bb2e74860c2eeb66ec0e15fc9390178a87abbefcc570d09fdc95d4f556ec04941049fed04394622386f7fea8c33412fa133587fc92bd30f1f28cc26745836a4ae125c6833a411aa0f18eea5b52ad54d175a074bc77b8cd563105f1f39127fce1356b98871f18c9ca9c3e8eb15ed9f9b353e93fc54d3357b7afe69e0833095fb9b54b3d65db53552b506e7e7ebc3a68a181a617182693d6714153a779abd2f75a0bd9a1aeee4e69f649d8bb2ce8b73e9e310b3102bbd39dc9022063cdde34c67ad4ec2a7b46fc837bf008f45a136e76c4ef64fd1a6c8edce90c07e1983971c6a61cdb63ff0173ba99c45fb63ff5c9dffbe2e482bd10397c32b8918ec741aae444758dfa9eb597538bb65af13355492559bebf1539605ee43d6045fc21c81c865e043804bf145624c1b1f35a2752655fbab6b4a14a61786aab12cd144a03d4e10d12e6982dbb3a84b69a0d45ab3112c1a703601dd43ed59f52966100a6367c2e9e3c855fbd48dba1c0b77234afee8177a38339f8ed11f86e179486c86d1ded04373fe51ddf7f4ce17ea7f60539f51cb9275c04378a5194d92c41658b04ec11c42366684ffd42d4ead8147778c6095cd47f60b83e3a839b35073d253989212e54678e130bbf097196ac1eafb4b23191f89007328528bd1aba1307d1ef210c035ebf55dd235be5888785912cf3b8da7aeec531694be2a813822e843a42be2ac85ce8d8002a20850a2bd1a40475fc1309c5bd78db9daf6424f61d06295822d71b246fc86f9638e06bac6fadc156b76d6637b4070cf5819236f347df3da102aab2e1ec14c80f565a7db758711c5b7b17bd41ed6157f3c9724c784685a3db1b5400c90635ac0c555771fd2eb09b7f81bf8127af3a01631421f19e61aa7a0a1e50300c341de13db5a23d659042e82b3cb36b46a194caa0ecd90ca0f242e903568803eaa29299c90abc6815ac4c0e6e957a08e15bbc09767c94fb080bf6cacce83b00051328f56ac37f80595e5c3e8ab17270d8db3ac0331ade76894e3075eca7190120822a71bc48e80914d1ed29c29ca0cc50b2a7ea2954836576610d97ccea463617c51136f1b4c448f98ca2966b7edfa3190867fb126c6da0410bce027ec979c8ecd1c1a10e3deba2eab9ae21b58df152ee55f524c9772a62ba0a8c402a84a3302c13dcf85856507907ab0982f7726f00eaa0d66cc2004499e8e81e8085cc7f4c5a63dd3879bacdc97540f27780078dc3f5c4bc31562927b646ab40b875113b9fea167e0a943dc1d4c9691648f79bae66a1e896eeb24dacdddd9d0c0905e614ce2f31951ead5b0c2ed22beeca652ef1bd77dfd40820301364503ba5843f4c6de50c361fa1532e65b4c48c1c998250e40be75272115f6e5ab5e83d54d5836829091fbd0c29a51906bc4bd4e08beea4c227d73c910a2d559b7f753b63140239cf353bc0b845c73f3ff017f0abbc997e09e42061387cdf0c59e5ba07de5a8be77fa94cfce7568510bfd535142966fe1345328b4632a279edb80b5d8dbe976858fab59477cc92d011b626d83ba8efe61f4afc5717017a81305025205fb51c9bc326950d7d533069031f3950a8c52aeebec406168e95a35fdb5c01f460858f166026e345475c18f752de9952f83626835a77ba732cf073fd4bcb571e496bf1af2c46016bed95d91dacce0a3432b9078616bc57bec7ee063802a7600025595049632651e06be0e912a3bcff0dac1da75a50f74269bcb18ef424aa7dd9747ad75e894ecc34f72c39ac1e1c721575506a7315d0a2f84cf45c72671a87a0cf63829b6cde0c5759273f037570c915c0752fd4e949c49bc9f5e1f4824842770af446d7ddeb6258e601817507f3f17c2d515e682a5fcf3cc2fab2c09946ab6da6c1a6cf9ffda16258fa1b4c9af3d1a779156b205cf61ccd3fd4fde73e8089c25318eef12e8afee7d33e6ca4ff38b168e5054f2a1ecb8b21337b2e4e82a74ac257f2533f102a420bb8e5d5d6cd2c570be8faaf77b831f566da3aedcc08989a746c71769b8b871f6771068985e7fb30a17790ffa0185fbb83b0eaf95114b9a9b5469a2440d3f7c40b8041f16fda582e1925840d39a21f2287f2c2b0ae47b8fc1009fda6025bc26bdc523f2b31cfd3c8a6c18a97ab1c69b7cf74f40048df6cb547bdcf679b8ba7a101b07634c975064430c5eb15d0a4a5a2bc9e978018e2107d815bd80f8c2a94a61c95922c7dd1fcdcb24b6fa9e0fdc0a7d011aaffce8fe15242caa1f035cdfe334b2dfa8e7adfe315270f4f61d8b52636b888ad46c3a171eb5a3ffd684b684b65c62aa0a5f36016f025536b7b87d8e4627d87ebc4850e1824f7b5559566c14859ec080d536e0bb8bbadc3b39e2f981bddbd5b3ea2b30884fe791c15e36f76bfdf07cd708dc13e5b2c00d655dfdd519b1b47d8941d84b0b5676f769b3df1ca230b75efa455cba4fc998c0eb515d21466aa6062100319fbeb30e0a7b2ac7e12cb59511b8870e3e676e6cfde7ab005eb611f105e6930c158d58bb1243194bad23bb09e5842cc8460ddb57737b4c320690fc4c076540e6a1901c6bfdd49cebde205078ea42cfffc43786ebc61b6324d0123316831ef08ff40e68bd58706d175b877a8b39a4a57edef44b8009a76c9761952562db8d6361b320e74333d887f9a9728ac0d9998d6b424c4ce702412486c7fe3dc9d3afa01c9604feba18fadc8b018255576730fdea189eabd2bc961cc385fa1122dbeeb0b00fedfb63d9cf953581c201d6f0d9a8da92aad0aa136c62e5e7c3c682902583a00ce6fa17cef3fe5781cb012e48c2d21356c0c7f386803d2c01bd6c1ab10390a918493dec2cf8d3f1a4b1059ef589c9215df141da953a2ce6c502ad1c41f6ad1612bb5c553f71a08d9852dc9bcac5d2ca8a0fad5e08a5f028f265340edc2a02aa3e1ffd29bc6e01eadbf024611bd0ab2ef3fdb42980b2ab0f594cc96701ec02655804d94c74155516b7c0fbdd6d0d4fac4091fdae82f05e1414fa80f281f383177f358ce16dc3bcba654c2924fe978725749f537aaa678405f27058b4a2ba9a4103c3d609ff5f79da493b8b5f5f4660c1965990921e03c61042822d93a415e583a9a0f22ed9f67a76d65c611d4539f00d5a490b2c2db035a42c7ccc3e7940603869195198699f1729e4bfd010af875c251bd6d67e6ece13c7648940f7a766ce820a45d48056b9fc867597d512b8c27179cad7cafdda6fed0f624ae9efb8a1f711c5a361354ffcfca7cc781a1edf85785c1e7ace39bba1543292f20f0369035182dc2255bcff5d3d2fee5538b94aa4b4e6b8ce258c38cce5c2ee4923f597f0e91f9f1861a6992328593adb68046e385bb3366ce5bcdf02222ec4b77d3b8573fb72170ec87ed7378d34607ba1e03041c3cbaf2cc745bdb3f40330fc610a8c8d6e0a66f31b2d41cca35c38df1a4bd3efe19be85feb2c0e6366a5418cbf043342602d09431ae3f1a4a55f3371c76eabf777a80107a20e2a2b0d24166fc8365570cea9fbc06e849affadded71fd8e693fcdf7e43657425089819e64a3ce6ed64d050e5245baf3066871d37058ee3d86d64fe70f804e91720e2985db5b02af58ee7b386778fd0e66f9cf99026382f152a54ba2a47386d0fa452cb188e252d2ae8339ff5a79ae1c954d224f3765971bd671e5395783791635c2ea6c17bce388496ce7e1e9f022a51133dc9f3d6a83386880d232e752353c942e4bea544d451b2958cf88ef092f23bf825b934994def1b2a78cc12c246eab70decd4a9eafaaf7af180141b5d41fd1bdfba8511145cbc490eb340eb39eb5fe0ffb9c8a4ea436f8247bd8d0cb8599563507731b5c3d2ed993228a215f7927eb518944220a23d134f3506ed7dc39db002fe5f6b0428992e4d93a28b897d432462e8400e7419a716e7aa077523aacd851f52b664b5fae0a1e6ceab6758482a8b44904a0bf260b72cf3babbedfeb7fe0d1607fe7de2045b2283101aa0d51e91cf4de69411fb562ebe46fac740dd835d5e8d5460a26cb4d34307da64e91454bd6d73da1a9ed070c1e4b1d3999277195a9713e8f9659292b585ba4d144b27089260fea97cdbc6330114fb0b5c32d658cd6d53f866171aff833e5c23e0948d201d03707c0e9712b87ac6495aaf32aef002f627ca55d245dc58e965ee675cee9ec81c324cda3c512e097035b947b3f05365e16a33bf46c9d83d73422a19549e09952d1d8e7d17c6fe4ac04a830bf2d2b3e81daa78ad8c847017874f31bc714f8cd00dffa1918ff7bcaa533494f043934fa71f20857ee0f8ca2fbf4054b04bee94b94800cb819eeb5f44cfb8e291c5b108c8c39640df6b785bb866551e869995685122fb7ccfb93ff1bf78e6cf3658da503bf3c363a554368b6ab3388c3ede52ce79eb71d489f9556c1a5051390629430fa84118446841f8f29a4d5aa5cd1afcbbf5b924ce17292c0e943baee331ef1b98fb69179bbbeee9632ce8ed6f20447ed0557106eb5b8f8acefefd1a673d67f968e24ea719fe02cb9dbed2365e989750fb53ef9a4eced4aac0213f3782ce4e2009e2efdb97aefb3ae9b6c9991ed7549f5d8c7885b210f53d0f55e4bf9968145284b379fe657d63430f29cc7c1d7c250d1b14d27c4294c1a83168ac92204e0312fffd63bedac94c1f748a47d118b4a043bd13b476a49b193a5e5766bf2d1e5c45930c65c4dcdc56c046a21d781433c055a172c85f1da7dacb800374556b828ab5f295cb9ce165ab6a3ffbd5022d78de349a69589d51883a6026e2c98c0d0a101bdc120db91e33d3947f48afe438398e4d401c0762140a5a2dc3dea8bc4496976d39e97bcf2aa12bdf9cdecd16435a396df3ab9da9561d27fb871e56b5849a9e88ecb4178e7660951f70918ef00e17e952caf1513b4ba56b7e2529742960cb8b8332ad49e8899f3f92aabcf54c20dc82eeba0a97e59ce624a10c03f0f6169621518023bf6cd65026fefffe7d15be43a30374002b1ec6b5dc425df9b65f8f0b504cf1f65e1ac32c6ff14976165b05fc5a4a270087515275e5b903ba527ad686190c22d7653c23664876bef54820bafc0200dbb4065a206a249183ea4cb38e584f25f29aa3f6f24ff62b405f381845142338ffc938e65935855ea9c42e92eb3276264dc30ca353c80ab35b291e5c98f6a9b4e682a03d839aeae451e60feca9e260a29f08e915ca7b4f0863178fd3c3f03ffc5082c9d3d0c1ba2a8d53e04a17625f62592b827e6f31fff6bf5e96f71f9de9bc430e0acb389ac18d24a93cee86fa8b0593c6618d35fea145942e04f3f1e87cad25645e9d0d84fdf0e047625b9d9210c44ee2af951fee0f468c3e10e4ffffdb38ee3cb71be03fbd0fbb30c74498ffade33b56566887e3c52e0dbc000f08be481e87fb28c6f1f45609ed7eb93d88e555df897b87e172a5f13ea159d947f0c66b78fe5efb0782d6dafee8a024695b1af992413483571eb88ef15c3714130add7a261e70653d811ff4a183cc306c127e7e277cc9f27691acb5c2cc6d81baeb29385ec0e0456404ac33f26410d322a9e0032cdadba8d9e1dfb1964c3e547d88cd9242eb3d852339e1a1a71eddf111d40d4edef4a3ec327431788c53e7cd9cbe39811322aa2c4bcb72a31622d8ff9de63e080e2e3bb204a1c1a1625c14cdf0aad75c3071208a752659c891ba2f117521c3d22bd568e8745074b88a0d0d580dcac7eb0ba9a64dcf9c9c95bcd26c47e30816962d7ae43fe31e68bf1a3606325bd48c1f8712a24007b8f42dde6bcdc5bfe90dfec88c0c1ae6762d23a052364b069e0b1833b0c0c77e3fdcbb04539bfc80449119cdad058843cf5da94460f2ab73b067bda5291076b7d54abaa72334dc1df705d8435d2d307b0f09562234a88ba5c255f94a74f82e4bad7877b706a154612b3d1dd2a2bc97eb1c422eb09d5d4ed68e460f817ea2b80874732856654d7f1429c1f29b0f28c8450455be4fc651eb85a6bd977af2f9afbc82dd49d2c3f9471352816788056a42194758bc57396230da723cb5e25cc8c2af365ea306e522e46376c4a9809a99a6a71a1124e427642814f0e92153b0f8c2e91f7bf6ee8565ff2feeb9de32741688b05b7e87038211006e95b807b187ada82d0f627335739739cd33f67f890abcb5633ab8a88004fbd5022d78de349a69589d51883a6026e2c98c0d0a101bdc120db91e33d3947f48afe438398e4d401c0762140a5a2dc3dea8bc4496976d39e97bcf2aa12bdf9cdecd16435a396df3ab9da9561d27fb871e56b5849a9e88ecb4178e7660951f70918ef00e17e952caf1513b4ba56b7e2529742960cb8b8332ad49e8899f3f92aabcf54c20dc82eeba0a97e59ce624a10c03f0f6169621518023bf6cd65026fefffe7d15be43a30374002b1ec6b5dc425df9b65f8f0b504cf1f65e1ac32c6ff14976165b05fc5a4a270087515275e5b903ba527ad686190c22d7653c23664876bef54820bafc0200dbb4065a206a249183ea4cb38e584f25f29aa3f6f24ff62b405f381845142338ffc938e65935855ea9c42e92eb3276264dc30ca353c80ab35b291e5c98f6a9b4e682a03d839aeae451e60feca9e260a29f08e915ca7b4f0863178fd3c3f03ffc5082c9d3d0c1ba2a8d53e04a17625f62592b827e6f31fff6bf5e96f71f9de9bc430e0acb389ac18d24a93cee86fa8b0593c6618d35fea145942e04f3f1e87cad25645e9d0d84fdf0e047625b9d9210c44ee2af951fee0f468c3e10e4ffffdb38ee3cb71be03fbd0fbb30c74498ffade33b56566887e3c52e0dbc000f08be481e87fb28c6f1f45609ed7eb93d88e555df897b87e172a5f13ea159d947f0c66b78fe5efb0782d6dafee8a024695b1af992413483571eb88ef15c3714130add7a261e70653d811ff4a183cc306c127e7e277cc9f27691acb5c2cc6d81baeb29385ec0e0456404ac33f26410d322a9e0032cdadba8d9e1dfb1964c3e547d88cd9242eb3d852339e1a1a71eddf111d40d4edef4a3ec327431788c53e7cd9cbe39811322aa2c4bcb72a31622d8ff9de63e080e2e3bb204a1c1a1625c14cdf0aad75c3071208a752659c891ba2f117521c3d22bd568e8745074b88a0d0d580dcac7eb0ba9a64dcf9c9c95bcd26c47e30816962d7ae43fe31e68bf1a3606325bd48c1f8712a24007b8f42dde6bcdc5bfe90dfec88c0c1ae6762d23a052364b069e0b1833b0c0c77e3fdcbb04539bfc80449119cdad058843cf5da94460f2ab73b067bda5291076b7d54abaa72334dc1df705d8435d2d307b0f09562234a88ba5c255f94a74f82e4bad7877b706a154612b3d1dd2a2bc97eb1c422eb09d5d4ed68e460f817ea2b80874732856654d7f1429c1f29b0f28c8450455be4fc651eb85a6bd977af2f9afbc82dd49d2c3f9471352816788056a42194758bc57396230da723cb5e25cc8c2af365ea306e522e46376c4a9809a99a6a71a1124e427642814f0e92153b0f8c2e91f7bf6ee8565ff2feeb9de32741688b05b7e87038211006e95b807b187ada82d0f627335739739cd33f67f890abcb5633ab8a88004fbd5022d78de349a69589d51883a6026e2c98c0d0a101bdc120db91e33d3947f48afe438398e4d401c0762140a5a2dc3dea8bc4496976d39e97bcf2aa12bdf9cdecd16435a396df3ab9da9561d27fb871e56b5849a9e88ecb4178e7660951f70918ef00e17e952caf1513b4ba56b7e2529742960cb8b8332ad49e8899f3f92aabcf54c20dc82eeba0a97e59ce624a10c03f0f6169621518023bf6cd65026fefffe7d15be43a30374002b1ec6b5dc425df9b65f8f0b504cf1f65e1ac32c6ff14976165b05fc5a4a270087515275e5b903ba527ad686190c22d7653c23664876bef54820bafc0200dbb4065a206a249183ea4cb38e584f25f29aa3f6f24ff62b405f381845142338ffc938e65935855ea9c42e92eb3276264dc30ca353c80ab35b291e5c98f6a9b4e682a03d839aeae451e60feca9e260a29f08e915ca7b4f0863178fd3c3f03ffc5082c9d3d0c1ba2a8d53e04a17625f62592b827e6f31fff6bf5e96f71f9de9bc430e0acb389ac18d24a93cee86fa8b0593c6618d35fea145942e04f3f1e87cad25645e9d0d84fdf0e047625b9d9210c44ee2af951fee0f468c3e10e4ffffdb38ee3cb71be03fbd0fbb30c74498ffade33b56566887e3c52e0dbc000f08be481e87fb28c6f1f45609ed7eb93d88e555df897b87e172a5f13ea159d947f0c66b78fe5efb0782d6dafee8a024695b1af992413483571eb88ef15c3714130add7a261e70653d811ff4a183cc306c127e7e277cc9f27691acb5c2cc6d81baeb29385ec0e0456404ac33f26410d322a9e0032cdadba8d9e1dfb1964c3e547d88cd9242eb3d852339e1a1a71eddf111d40d4edef4a3ec327431788c53e7cd9cbe39811322aa2c4bcb72a31622d8ff9de63e080e2e3bb204a1c1a1625c14cdf0aad75c3071208a752659c891ba2f117521c3d22bd568e8745074b88a0d0d580dcac7eb0ba9a64dcf9c9c95bcd26c47e30816962d7ae43fe31e68bf1a3606325bd48c1f8712a24007b8f42dde6bcdc5bfe90dfec88c0c1ae6762d23a052364b069e0b1833b0c0c77e3fdcbb04539bfc80449119cdad058843cf5da94460f2ab73b067bda5291076b7d54abaa72334dc1df705d8435d2d307b0f09562234a88ba5c255f94a74f82e4bad7877b706a154612b3d1dd2a2bc97eb1c422eb09d5d4ed68e460f817ea2b80874732856654d7f1429c1f29b0f28c8450455be4fc651eb85a6bd977af2f9afbc82dd49d2c3f9471352816788056a42194758bc57396230da723cb5e25cc8c2af365ea306e522e46376c4a9809a99a6a71a1124e427642814f0e92153b0f8c2e91f7bf6ee8565ff2feeb9de32741688b05b7e87038211006e95b807b187ada82d0f627335739739cd33f67f890abcb5633ab8a88004f826c9503576b26e0dca820fd11046d7f1586be279924ee33ed0097fdd08075a98ad2e2f8ee1447efcea61ff9758cfd4ce7b9e8c753777eb582a4af5ae64431e27eac6f1b4b85904b7f200e20f23469e795ff54daa9948294b10e4d7d43ae7b285b310deba812fe56834a0630adef45d18299fad72db265c9311ff3a243a9cbea08683dc42c1d8deb0964f4214e6d0fb1c8e7c8e39abeb81cb39d7ec0af86ba0f1b23940ce87584e14f2816789444fb8c12b82c53bd7ba6494146cdd0cd08baafb22c15eda751a35fa71cab8e5ac473891bc0a1467a7422f6eee5c0303c9ab8c296e57b02e8d2d6f8052150d5b74c3ae084f9469bc285b1cb357840b7bad5a62f29a2837a1dc6c82252d0daa960615ff248026b395a13b90f0d3d8ae8e6a253e56f6781eb706399b79de04b3d41986ab5f065d9abb9515ae15fdf2ff6c6ad86f371cb7285ec9c8a70ab60ae59fd0887fd96f7365029c0e1d134bae6f59190fc5e02408417cb253df4905f9c0b973c678891d6c34253dd30a0e6741cb97e3946485f3fd56793e7ebd4a2e286364a5e7c24617c64e2e87350bef5c35ea97a07f0303402284ec3255846e126241b5efc293a20e0c386fe29c8b852fd136fbca78fb3953c9045af0f4a956fe72996f1dbc28fae2b1da9c991f58993973849701987cf2e6448c728c00f0e4e3aa17cd09be77e4c9887bbd618e781e0c6a0a658c9184f80a904b1651a88f4d1c0e9b1d7d7cb127b3bb122f668d274b3c28b67b09e033fad749bdfc1ea18111b44f42bc002372eb331c00bed3006f6785846b15f87b7f99460a9bcf4aeefcd8e2a3895c013872657756e8dd1c0a3eddc06993e358ad2b684249096737bc2b326becbcbf1daad130befa2a68fc7c9b85b85ebe26ca2d20b86ed3970824ca54143ad55ff01ba8c5d21b27bf52bbcef043a32ff223ba0f867f52b8d82b82c47c9936d61efbecf95e223548e10b133876a58996bedf75ae102244462e15f44e21650f74973320f9f72357a4f39fad8f7f3fb3050b652ac5831a3bde5dd0782affa9237bf17482befede93f61622e75ff1fe0422e7a9bf0bd9c33bb7644dfacff4ab9e45854e6f083bc46c8893dc3bb57f3b88383438a339c8fb02a1f38e2b5104e0ee25d23428f12c45f4cb8a81ac8c6ec95aa3e63848e79c27f5fa2c42018b33466a80802b8d346e657b7bafe4675262c6009c6609b2a52615033569d9d01d6badb84f7cd98c25d739a471922fe66e80fa99e70997317897ed601b9f161252b28e580ef060abfc6898c85b6054b6ca776dfda5dd032ed7ee4b7d484ae148484f5d7a2284ecec80e613c569896bbe0fb78d48c67c81c54ac9d6b0ece982ac30c00462f8524274df793e0c338a045aab4ea303a25515f033841dfeb9f9f2acad820651ef0f14df3e61f30b95cde16f47f69208368d73252255e75345b69f9f9bc9bef38901983c14016a2583ba566360daee3c1cdde6b9cf104f744780dfacba8769aaf6532823e888f33edb02b53f8555a0db5163684fc3176409c926734d1428a8eee492dbe2b122f964edf771defd590ce537a9e7b573e30d7aafa312646bfb47248c834435487bed8355e144ad50c491168074c8523c96c81f70f0c70ccca0ea73b4f9a28c106d7b3debfa5fe491d8f96675975982510038ac466de63f80f8ca0eb7570b7f04be6c60231ac38d5b73f4b6c3f022a316b4a8afa24d49c3e020cdf855b40f3a7f44126cb019999319c9eee410c48a172856086a2ca647009a85ed6f1cb3fe4cb81b964e880e5081c5f3ca4fa2dc490a23603bcbebd8b464a7973e7d1dcfab5889209374a61ca14a0f4f68da920f6ad3ef3f5d5764e3b251ed821cee023945d5e672423cedb31d881b05d39776b0a36eafa9e40435e62a34e7953b952e50e6b3773dec2b0eb5f2aca43552d01fa7e7c5cd9d12444ec2d0d4657a6e1d08c0950e157647fcf9fefa659513c98a970df35e38ae42072ff4774f3f48cabb33abd5ffd0e53f3cb2639e2edc04b6165963ba95ad3df39d1c7ad7368ad957d66e0c53ae6b060588af959d26d7b91270d501282896f0211064fe26ed24c643af95276a301f62ab2320e0093eaa7601ec6bf7df29d8c5f9c3eb7ab52acca26536a118c44fae265eca62d247c1d5dcf81633fb2be90f11e64a7744e8f921ca0b6c78d7fbdba1f62651f195876ffce28ffc95dee7023a0a49f32f2030d1e8a4f25b73513477e88bcf623cb4b29fa167c41507ab5819237e3a96100ad81b50388b267ac607718043a2629a6614492558936f538143dcb235d27485559566a450713defe994c7676c51b1f5a9662e9276b5a85360ab40442d9844f94b7525368198bd7c975755deb9890784e2193c96a121cb0dce83235c86450518f1ea69112b4b7419e95a12eaf0528efb3faabe551f49acffe29dc38281dd9d2eecd83fb546fdacfdc04fa9a55688b27e15dc1a7d95b110e6dfc00b1a353444be9501bb1e458d6395376092f1327ed10ce1c4b93311f22d36d2bc56a3963bb9e369d8b2b3314b14b2fda7e00a6e9f502eeead45395e7731ff3f75e9d02b1e5329ec52f4c445f22f23223561eb4e4b3a441de84598007e46c1a8369169edbd492964acf8e8227768c909d085ac0d3cf120537e2ab24eb7e51291e71a4c1c70bb0b8c0c18acf34f07b350b8a2fc6713b000d2921770e87b069165ad09381e3fabbe8b11f8b76d8e666a7b6040961da9ccc5acef0971f0318e9ca5e3b1bd3faf4ccf4b4d87881319b0dd2048c495d3921e825e6609fafc97654977a6c97197ff14554ab9fc84b2e7c4a384c89d0e4e3ccb238f007cf2d16553f7a48a8b627cd31beaf8e107e2e41a8455257027adca9125eb7584eaf88c5b3c42b86e4e2867931f15a73ab316f6ab91ec00ee3981f90186bae14c165417f9054d456aff951175f7805af703e902d25ad712ab5fbdf331c01790b5879dd7f36a87bc956107bf5708df6a05bc546a3ee48cf5af9949e7f73bb364c81878373da53537760b1817ed0d44816d14d2038f363aaed8ec854f2fe43019978a7ff1b12a15141a813ed3e3a7201bcbc8df1792caadc345e558bb45c8a56697471bbf739c4100d86db434bbcec38261c2518988ca9cefa47fcf9f71d05d22a30e889d1f9f55120c87f772a2772eb4cf7e7a784554eeb608c63c3d6acbccf857740359884ac824e11faff96d1689894d2ce58fa0761a13c36a6f3b2f4218cd9462e23f196e1278a84fd7041b3c843a28055449655193c435b7aefa62abcf61a8d551dc968be50bbdb1bca8dc3b261738bbc1daf02dc8aef3cde9c4dbff8f85692b12e7da3f4e01917820060bff6fdfc521ea49f1dbeeea42bdeda0e4d241738c25fd88c423fb7c1ff53b9af0b3996ec8169cc2a74f69052a84255244f7dcc5eec73d9a278a5a77f17de85b314ab08a0b37fb25db69036a9d609d30102326bf382c77c0970f535211406b6bc31be2cd9efee213217a89d6e350edefd2bad50b675f4a2ca78e8f166725fbda7a4cdca4628572c009684b3900c2001c4e60fc4b571383ba76e7e7825f6baa7c8ca35914b6d5a4c67565dbb0fe1420f3d65e4b8e20f62b95eba2ef74f47d0e8792256e8ce981f3eb8fd727b63f86897c716e770e2b2e2125479c3d48a5be1f81f58ee7ccc72225931c913a3f7275812f4b339a08fc5151496e5e19795f2c30c35e98e57c2edbd3720e1ad03f86afd8baff2ea481a9ebf1dba9cf030d9ae67a1ecba54d391a3ce8b398a2012e30cb01409e7b1ba7903e8f765d0c03ed487b4e294cd29b51e0d0c5f12e57ad666d12103b0fe8b08e14fc10b265d93a482a3d4e867d3973cdbc6b26a25abf747c2e58dafe34b2f65cb1ae4fb83309dd65566e70929941384a3ef48c6a90b304268bbcfd12de96c41ef3b492fc18938191f2880a226a85bad5a7c4ad1a868232ae2be8a13197e07bb7954e25900bf2e2c2d022edd9fe3686bcd527066acf72d7c93c172a12f178189687ecacd9359b163c61e0894caa9fbc85deddd7113ba9e64460ad1b9ba8a3874ce42ef97d852f323c8dbea6c387ee3772bbaaf89d92bdfedc60d1d93a9c36123acd3346c0b5bb4da44d87892d4ac115939fe5c5871acddf484bfc59bb8bb86574061952bba5b18c69a575a1078e4603be578e1ccd97ad86c26093c28dc295bd0e5a4da0e8512491060616b9e49e0ecb6de5f358d5062db79cdc731f37b203e22b23be73eb02725847f13f52b3fb3218107aec7b0477bb5bb2d981f68e4210e1ab12bd8e3614ba6cd9dbf97d784304e3f5138e82161352f76702c762073cdaef0a0407567725288658c1a5301481c1c49fe4efa08c6187be772284c6b7f3f3ab78d68e96351cf5e263698464cee4dd14a092b3a349acd13075976526949a3a1ebc2c5e8b9f776ce2b6bf9f406c0c09a8c2a0e9761ec7ab4e48164b699b8c5bdee89f5d014eef28dd3a1b9f6c57438949061f2da4c83b434da9303a83d48a1a59fe161e786ffc3294e44e7e55b36ddc984b553fcdbc8833198e1632e6447b8cc632fe5b9c02285928e4009c0257a9310ff97b84e63cf7e756757c2906e82e9f30ed24673a461ba726e31b71f6188b9a5fce5112dd4e59d41e9a97f15a9d979658b378c55aa7483e68d2131285c27d41bb3469c7b55d2dd5bccfac464960ee3e6e2430141822b201687dcf2ce3369c5834e07dab6059fc5c2ede581264445d69182c7b16398900c023e1c37eb673eda387b5ff236bf98a7fe92f6f11aa4158c6ecf385d1bfe39618ad588cef2286f1ea5ff0b6c9e59992590870ad156724391b11e841ac2fb748bb00b081bfcfa2b76371b71726a46dcc769ddd8d33d9f5efd922d5cda65a5ed5880b4f4b47f85d4c0c99763d14412a941150a9316d75748d1904ef2fcd3e61bf59145092ada185e00b8ac8a011493674bd4ea51a16c89375e0cfd1482973b7bec85e56d4442334403aa8bfab03178509020f360285310fbe4552271303547dd38faa778c21d28cac773075da99c8868cfdc65e78630d5b5812225163a00233b67b6596c5af8879335e27def3bca7fa52d664e22142dc49ea88005bf74b503b0ce60d5adebc001ed7ed45a092a7958d3f071e06e8e30ce7ac840eb158e960d50664e4cf829ea16fe638ddd92d959f7c60cdcd6fec128da398d0a82387758581a85f3f4011b6c20fbfe82dce0658d40d10e57c7dbe599f532a42c6d3a9c4407ee4bbae68e51f183975d212fdd29a44291b4e815278e1fbbbc4f204cbec3d4e9ff6b56735a45b7152152ac1180010a97560a99967fe6aa58c36ab2e6c4e6093689f1b46cbe9ad769025360d07971877a50d64a7d552c6d4a58d8fae30f32dc8da4506eeddf15c276d11b01fd96b0447e6cd28d318af91a49521843c526e5e70658e29f9b77067aa24aa951f3f8b26d358beee1a09dbe977b9ea110433852d1da4f29a1a8d1ea65af183e85322d1c2e85d6dd615e2ce838b238b9ebc4630f755f97ddab336d627d06809f0dec88557228aba888ec89e5e289e0df9f17166d0d662163274138ada27e9bbd312c1ead123cd1c8d71cc24a9bf1a8de2687a651f73359236da2a643274294dcf7d17739784aa36f2b50aa92eeae448a752c1faaa9245ea1971284df6d42dfa2d14d9f73c77f53aa26331c6776e0ac849f1673ae67b0cf0170a0e19f30792b2c8c8567f92ee93342073af9514ed5465eb4295ddd61c3423eb5420134462208756e331714e61ce8e3ddab2f63575470e4e5920a281b5dbcfad7600965b663534a8884681caf1c4ebf893a06adb4ffe98e76a9556c8b6284ce2ca6643d2318351ef6ed04e25963ce460637c2306108738558447d9d303f5a240ae56fe043314344760e76b80181084e36867403d4a21dbd88fb49ace8187b131926ee5d39b993c0975f818219bfebfe650e493f4950e7a9f5e577e300932961376350527c939e0c7f917eddafca0d84189676b655d1048da1ccc1a1f2a822aeed9401c1a8a0e0e5da242ca05668049530077df95055442b07ebe1ecbe4b5d7c3e806269706751bc4492112f9a6dc5d1b3b6a100d5af0305f500ef42aee40685dcb6800bb0d3a9c11c0fc974abbcca07aa9db0dfc8609c5ef5c9c23ff7847f7fbc39f7a34837162824aec1bddee5598180bb3b3a9bd440d2dddb65c4fc053785f0c82c5115d1f5fae4d7dbe2ff75f33e49887ba081c4f63b4fa2e20a3979fe51f19b3fd44d491eec515b3f24f0dda35aa590478b540a7f94281873b248db413c8699f56c231d90bac219fcb2a1a15e681f6b42b645fef8a92742918deab0f057247a3dd5948facb446cf597f0a6f38e90817e98c380e507c4a186716c4c07efda96aa07426e008c2bf477cbb8922da394153301a2adc5b51fe06a9c112d3fe9a5b9160ac9a2931cbc0ceecbbba36a59124b36853851513e422989b5a97f779f8b8161cff7f06b74a48b0bcd1eead24c16b9c6d616930955b60a06283f14bd94fb490df9d2e5010842d89723b00a8cebf2113ba3f62f833f81e6ddafbbf32b25fa4ad1da1491d1914d6b83b2b29d8325cc59b6bbaf1fc034657ec0b69d6a30ff96d27688bf91488255ecf9bef997fe01116f435b689bfb8f38f3bd907e352586aa818f64b2f8192dec6311e67340cf52ff6a955598bcf813f6b4ed954a7cad6941adc6c86f3bb1153bcc364afaf7b7c9e2b192a22adf3f3646a74dbe44cdf2229ea4e47e17c84ce67ae48ff0fee2fa21a744030fca1f53d7b58cee59f6d19534666e6bc2668d43a048cc26917fbef7d4f65655aefee5714b34453887a51bbf4d5da960cc076cc88984d7518833a48867dd6cfa27e3c91ed8c1c32c98869c60398a905a0526ea7627d84ff18925bcd4941bb62aeaba4b9688e33481a3a974b7fa008c529002bb3059e0f42004d6339e907f6e15151241b320cee5a46c8a019541dfd1430f24e1b4431ab62cd84ec0da9fb4fdc037d6ebc340daf3e811e69f8ba01934e6f27ae0bbb703b37180f3fda0a1bb239c9e49ba3736f97684083afdda579fcca70608d7a30a45578111146d9c8484c04a5562c940fb8c06e44f09219c0ef0032fd38d0632effff80200f2242f939234f24ba597bc74843edbd24c307de8dd39bbb95f1cf87890f4cf6c41332099bf1296d18edf825596fb88faaf23a723062d9dca15773028c5e280ce4741803c4d255537a0882ec8b070e9e7c44f4551f9c5f67f211f63840886eafd4bec4e08f5b669a80f74ad7a90bfe4d77f6c5658bb182de38e2bc138633a15ef7571214bef5ca0674f782431e36fa551dc212a328af139232ea502f72e0c64cb514f2727bbd87dcf660a7b7434fa5b562c10aacbce27a6623940e6d95329bf5a6112023f8e699c63a29aedbb8ec4d8cd22d10c4271946224086bce05984323f284c900d85ae032b93058e209904ddbaa62fe7434be5eda92dba20e33b5dfa811ce71905fffa4eafe745924572352f092919e76ed99f7fee6aa2d6012bb5f210ad9691f6302372af745fb395d3f7ddd0ac54a6b21032ec2be82f155f78b7be043488eef933943b94248edebc4c6fca972f56f7106bbf30010713ddec74c0fe7372e8b587b7a86a4a29f3277b219e8edb9e923de04eae248a71182ecdb63cc53d98ce14cb61b0251b62d1ca01f64b20309caa4dd023990d9b79fb016ca6ecaa7d5d27b387fe645b3185afd186c97b43de47ba2db462d0f2f2adfb389f69e3099de94a04b289bead55f5a2fcd30e37176e539234c2260656bcc22b3feba9391ef1ad66e3caae91c963b93c9244aa3d8b9487bc81ea6292427e5be030d29b50638e21ffbf449271cc0c5588550748e14da052903bb0c654f573cae1c50f6ac12ece6dff0c08ed3d60c956e8af8c9b5856e26ea44f242e9c6764d9f22e1c77c3e813753b78e13a287ae39250797db4597efa8b204c9efecd861b737e5076394da63bb886abcccef3f9d0674845b88c6ba01645cfbfbb6abeb81567f3f652c14235e7131ed80fbe8e9ce52b7bec685462b3679394c153b670f7af691f75df8f7a935ef4a9a73fb4c11483238be09000e480be5874b6cf561a12da390ce215eaf352d108da6e6844b97a6880c5cbd63a281e20fd94565a5ae854989e7416c18a58ed422b4cda7ec7cbe88e21228c8943dabe2c1369134e94d019e2481daf4c8c73ebb2a80b3929024a9a7cdb8cf4c341b48eff157a721ee28662581f30abeb891d34e542e448db4da702de16ade566c271d1992a2b853aa41e094a89e4cd4eea0ab3e6c233fa50b9de322ea19b7751f0d1e0bc5a50e5983637ae122449b1002c38ceaac27d223956cc06ec4d9c96a8bf3ae77c3b9ac8dd029caf2eea1876f502a4e53241ae4fa5134952d13ccb3b4e3d62ef0ae612d2add0d5b7d8dc19c5c1cb44628448f6e9f12ab8020c4bee5b4b6d1188c60d0035e0917cf71647ea79aa53565bbbf91052472216f7b662a92ee89808dd15f219f6491708801756b12ab51a113c8e393256c4cb06a1434f8d1674757b0d123081dd66c68e13843b8a0c9741cf9218482bed5e4e1e0140452420581f7bcb044c59b128eaf144947a609606214842f07dd6909f7522cff6c6f7b96a67c79522b0f44447eb2502c47b3a16d93fdfa98e6f87ff851cc988523c622bfff090925ba5014d5f4d7699c1337f70e1522400ce281105d7af145e0029a30bd2ea74bc204c63a9849e0ed6ee3e9b5b5416e6f7f806378af3ec55d53c4a5824aec58bdb72d2662f1bb452f44fa59bce1bb327dd75187aec9f6270c5cbfb305c08fd5132b3f91d14ededc4e1c29fabf97cd4988b13d2d7f32c252132c24ebe5b44a4dc8b1c9f46453c6590886b25a0788439f475e4bb4592ee2c2a7e3547edb8bd9706cef014296f9a7b669f4e8061668d1255a3747cd429f755d1cf77504d7267413ec04a8cfb2d9300d4fda982e225721596f13b5a38a0c78693f44575d7b06fec381bde6a6106f5e96aa2ca35797febf68dcec1a52c1d6a7efce85c55df48179798bd4c320570b3f9a8190602381ad4fd026997949fbab77db0d7ada8b5ac28cd7c9a5e4ef905f84de800ad8d2d05a8f73f0b36b6d179a66a3b0a0f27518c573c4fe0d7d245a94e94af19f2f093cfc547d72e7dfacf2b936dbaee5ea18bdc51eea3b09ea1247bc0ac5e0a115d8ed19186f27df6d6983d105b49e71bbb2d7daaafb89501b159f30cff1f63e7f4234018600277646266aaf9f0f9117d678582bdbe3cba7064dd4efd46164721af13f0f42c4ebad33af4995c5bbd44f4b683943b9fd2c7b9111d90dbabded17ccf5ccbb5f3acb5fb91f0de79d8b38624e0a5ed215154e6c572b86cdcc089243e38f3af7f807e61d9c447f115f686aeed0a07098e72e77259fa82154d378e431b92792bdf048f4ce46d2cef1b4a76b500610ce7bbc1fd550fe37387b1055c2a5f2e5a999c1bf6f0dedfe4491a876b9aebc9dde8bbd95d0129b0f9d1a12151e404426e2e586bde38d5ea73f7ca6469891c7858d3ef6214cc4b79538042e745166212a5942f2bca040207988fafa764d839b5a053ec74556f59ec840610a438790f58a4448b0a3da09e30d39eaaf52ca4d3b6bc7c09404a2fa99e2876d264f4f4621d449ce12de6ea40f2d8d07d2315493699e22bc10dec484007ab49279f9030ca4b48077e0c34223493cd53f1ec3efdd281e893f63869c50678a7cd6f9e8eecd4140c6c6a5145b1fa870b53722ab1592e633d795c458ea3e2c50af5dbfade9d00786af0be2c160270f6138b63d8ab62df78220dae9b05b8b6775dfa8ca63bb705be78b59d022f0c9148dd9285c7504b5cf53bc4b03d189180bacd00363b2fa3aee1ebdd6c2b70d5f2b7ec8eac6e888f9703e66422d5d4e8fb2528df6b35452303333afb5a9defee496f4b45ac72fa77f26fbb5f13498c5ac55d53fce59f87fc50ec41c7b56c5608aeafe763370cc4a4b6311ff36885685e2e20d4ea09d6a1360873e89a836ea042044dc9c68303426fe0af70ad3ab924ddc60cb28f2fc028728c9f2b09080e81add86800228609f47268ad2a5c0d5c12054217d0897d29b939d81a2d57544b6ba3e72b27357d801bf07ec3d3138ba4a1592bcd50634e13bc6ba34d1988132af60dacc3503c11c287648068b97211f89dfc4823342d7ab95df45e72386246419c90d1331b2e86ff7cb950b93c6cc93f9669933e598e826612b5678837cf10f7c15b4176486ae63111f9ce29a36d9ec8bd5261f7c494f5e13ef53412adf980f3ad4ff217cfa658b59edbb22975fac27837d480350765cab00d2f1af97d34fea1d4242f9795432034922524c2caf2cc7891fc794773f7ccb22252724ae4082b3a5134ecae12cdf849cabc42eab29eb67ed660b544d665976e21938d62577bfb4bf59cb09b35d28c50162da7727be46e32fc613e4fb1bf6ece47c437cd554ab1b5911f02d2f787d589c421f40319e2ee4ecb2c3c53a3af3cc76e4773d2ad22d9c7814a6d0b15305ce2aaa4cfeed8af2882da2925dd9a48c09f72eb58f9fc79dfb8f4fc3e373ace80417b4c5b20ec64c41cc844b958cb31416242edad5acd8655f83b092e734e0f12e2a04853092b2b8b41a444e99bfca4ef90cae1639a737bf5e1d60bce83677df1eaadcc1b986dd62aa03e12f651bb0d7a75e99ad1814e20fdc49bf69f008c6cad1ef1a3b44cde64285b2e3a57403300bd58f1a32906d0be80efb62a03d495361298f7d08b34937526704c2fabafa2ce8fb65e2f3af822efe2e57529603fa17be2f2e390337c5f119254e05b3c04017f94524f14bd764c7428527e92bd4cf88019c03092875154ed78369bbfca2a7060a09e991da460fd2b1d96c704c23652b5674665bf452a83209fc6624e3ad99390e15b1afb87c0a474ea6e3e8bf90db88c252a9ac2a372664a6bee9f4b90a0c2964225570e6f703cab2dac900f130ed5560a0a52ff31d39b7fc98392156673389f83dd98dbe8172e5321c0002f88dd1131bc625fe2ab3e92a6ac048459ccbb0403324fd49f073ef844348a3c9bd66f5db596e5e13482a4cbc8ddd01aadbd1cf520bf5d2828f76a06b0577a3d53cb0811d26ce4d273a4f76b13484622fe65b3a9ad88d5270ede6f039b49cc04632606baedc752e30f5157afb6dab52679c784338be57eb9f87d7896806ef55c8e0350e2b5ead72493210597d151131476d93be48cc3a55be2a914add7a3e72a3b7e749a4332841f3338b34dc84ddd48905b390b39e92aff1ff315a5a73b9bfea93c635d72261e0447cebcd007ed84e87f77cd24d414fb9016e26690e223471d7b1c835a3552ce430b9f7d5605a44d8098289fc68634da3523b94d2b3a598c84133aa5c1f905e854720924cf5fcf5caba961a57f75002aa60ec6bed2f2aa5871291283cb851ec16d49c4302d2c9cb7608ccd2a59a92e34474dfd188f7a72c07309aaa22f32f84308247709cc0e7d3b070118d259b383664c9c30c01ec670a056c039e9241c8864867190d5b47b6d4d3b03ac8565b1e45ee43eef10d125644952e44bc4de9fe6b7414370fadbf0a7c9a239b17447e9bd06051ae95db0df4ccffe5171f89a1f62a33f86055fa9ab0055b73466912512e2aa9ce598c3d0148f94f35d5f7bded0999161d7649902263450603546ce667e11cc2f6b7221f7bcdf653c1970f17fb05d9b82d938eaeb3a47302a0481da9b3c77061e67f143aac682a532acc47b75a26fcd954c82e9010558d6c0e85cde6d24fa6d4ef697862e233e647eff7eac3f1c8be7709ea6e8f3bfed9957d57c11f8efc66652595dd66c44cf9b974384b9d3ec2b4959d83e6e9a8380a238417b4b282dbf95a5a2a5034f4ad82d5cd50c11ba258389502868d84d9a41ad8535167ee6737cec2cc8eb08480fcdd95411e44c9589e805f8b431c2f00c992dc3f2b6763aba625742ce6ec4a4491bc2d05bf794f482465b1cfbda2c9373319015155294fc8fa601d1ab3a593e11e5ef8f89a27c055d11469ac69cf6ce16cbeb0f4ff847237fe57d7f819031f8c4ddb31d3833b91739abedac8ea8d9f57676a88ca63b8b4183b2921826adc727318ae3d86b6028519b023e0a751e7e27281772912b8b7e132341dd4bb258a265496fb766a4b13370f1349c6e26038380c5ce5a202b986f689f9db7f64da5309ef14128b1142e7e040a41a4e568350f6fb45be8d5f4cfa9fe381818405589bfee9f52bed9249d66a340607af57127e267b7f8f6d1ab4ca0173e0104c948319ec850196eb6612bccc70f78afd52e791aed3e20dda46b1791e734deb4cf4d116f7caeedb7463a638bf968384f31eac5fd787a7ac6741a17141d4edc8f2d03c72071a11518dd99aaf79aab2eed7484e5399f0d281b2643d806d3db1a9a3aaf0e701a3d2115c558e111a52889ad0c0ae8cedb850ee1b0004bb571f9d3e4bfc5b8cde07b749960c3796cf85e38af14b5ddf51b1bbd7c49d6d678ccc6e75b27c09b7b8908571f4037503656f5a31bde7fb534882847a1e88d2e581b3f2590a6ac538e396806265755ae70d538533f32d6b3d643df608132c225c93aafcd09b8cfba252484e8803e7b363125929d7006abf7b02e720c1cdab0d45d5c7fee993c50dff807e78825d35e520198cd66589026aecfc069cb605174d20d58e07170bc33e869d8dcd0aaef05df6aadf80e5d932a3481ce29850360c724411c6ea6ce30fb75d7cca35a2c08f287a65cc73f342cc60cce7342ba99875e2c58b370b4e0ebea76ee7d90b8599371e4f61d621574a5d9e6b8dcae97f7835f756266d1771533fca9ad30d7f6860c43f227dfd6754fd233c0d1554b4cc236e3547b1070cca873e31ceb2c87d8bd4a212a2ca660f38afc70614336c8f16458afe3b74aa7c7d75a49bdc71574b6a74008c1dea2b55d503106d249f94dfc5f1688e90b4759056c42e78aa42bec2806b87291f1020d926d98574cdb0477d282aa35180d017e18b2698361f2aece381b136c2d8b3174337fd4d6f9e5e0f55d61a3be334879ab7a2824c1afd3bf1bda29debdd8dab00a0e7de6cef4647650de54fc02ed37021f4daf8b16277fc64199aa9344cc3de6b546700c5a58e3b63daaca132b8b527b6c8885a4d053bad702aa545a54364b258c7dd17300b5ba0d99f912ee610c1b8fc0ef9bc8dc735aff2141a25b754b689f478dfb8f28fdde0715555600c32d5fb4872971fda7795a6c855e1c1ee59b863070074b2bb3f291999bd4fd7d515a2e53e929b24d42add7becaddbdd0c650321acbb15afd4f36d5e3ba5ebe077ea3c396baf44f85b683ac04bb887fe51f612e480344aa463fa63a46ed8ad553c10cd54d87757cb6082a696dfde08e6299abb4841c3794f1a3f129502257f35803918b8232e9df3bb65d3f3e5a74072fb46a41eea48cde8520b63c1a8baa21b0f41de9ba63609204d16c2f36a87e4c07e4cea555db7cbc384805ec56453b7e133887b991f3b72365f2ddcc1467108cc39094e924f4042521e0630c7bfca0cdbf7cd789b74ae01fc5715898c65c5c199eb9134324aabd6824af29a978e6ec77f812418915b211e7d4e647643204e0bd96efd9551ce32b7b375c6ea0bbb4023a4f68f61bcc45a092d174a42bcb4e8f45c48b4e4c695b29260ae459bfb00ffcbeeca7231b69bb1ca0418c0f90baa43eac264079e191ddc1b51815d8896c48f4a276ecdb1d3fbc518595c0b98f57ab709bddf3cb2305430295167e25f459acb85d38025ff8370357aae2b9efe9bc8a909a6459b345b1fc778d36fca3a011fcfcbfb4e36b86ac9f021724aa848bada21d7d3fbec9d7f11069fdea616c009fe40ee7a74be3040dbba3ea31df5252b308fe53b804620e6a1313665ffd3a64353e69250b2dcc7929338194bf6a3642f536ad69516c07435b122245ac348027a089f733ef9b896ce3ee95b5a9da1cb7a11009c93d8c7a6bd6af372fb222e51a98d7df8258214469f8985f15d4740778751b8db9175c3c651b330c3f042744133db916f5d0cffdd4222cd86d157b1fe47578a93ad821d6cd59d0ed81961130e2dab794327464487f5b6557e27e3b3825e69a123777bbc863e1de9c5d9470f96e8e029d9cd0be9372112adfdbd63fddd7795677b211ffedf04bcb7f6330bb71f6b5f7a661678891e6a877cfb4f740296f91aad358fe1963c672a46696fd0b94deac9705becbf78a172b87c09cebe92ff66459f4a08375d85114ca38d751fe66e1ebb2c4a99e5756db19ccca554ca3d12f3f6614bd7ab791aabfd701dc66bb3dc26347ff08c68a69aec3fde919e762a24210549f4c2be58b8e4467dce0e0788a610f6d6bcf44cb7c078d2920fbc4c582992df9a3018485e61f2f59c74822793e4c29e80707b6b777d40f9d3f3dafdc2f9ac2e6d8057bc16d26806ab41707569a02282a376539b28ac8b9823262048c2dc56288fc83a541502397d639f46ca0bff4127fafd372ebbe9ccf9fc37a8accefcb86d29a916d6edf136a93c7dd36b5a5cfc096200c15397c5286134441874d69ff5f2f9b67ceae30bc3c5109f2e69438f52d03bedb7072d3720bf470216d6a36b670f6fc09106e99f62a114fcb56a4855c9f1837b2fa257711758634025034d2f16469f0aee3be2a4d794c4e5ecab3ebf0f252ae8fb650df004a1145edcdd4429091afb91d95c29a8b4d2310b1fbb747d6640fd92360048fed6b1b1c95fc1aa3461535ca962443a2191ab59b795a03d936adccd376524c5d85af1ccd01523d3af601662a971584017a297b3b098588a4b6ffc386643db359004eb77eebe4d3163c9b1ec7469d14d1858cbf52b126cb51601f3a5fffb3205821d17e42c827852d68439b6d14e3bf087616c72ddb37bdc85c74443f900cde1522b499736d4b6a702e389f21a9fac8e2a0c77eb14106a04f4ad86ed9704f9ac1e052888cd75c5acc756e75e668d4ebc5efdb77736f2b7a17af02bc0fb11de926e7f859767ebb91ca2aa7a6c0d0c11b150e37afc0a671699124c093c00463cb8216caeff13b11c6c8f0e3fa96b296e59d22e2968cc31f9260f33001912842b4119d62f32420680f542dfb9623f43a8534e209615309b39781b0f2b652e4d46bcf13978e31a1d552f4f57dc5dc8a4eaf64008d09022c1e2033fd6999b24455e10fcaf379d43989ab79285618e3c1fcc20cbbd94f325e30ae4504667ec85ce52268d57f3c8ef6018b0861c5134590b6fcc5f8a0aac951e049cb8b87ab3390fca65ef1343ed701213bfba7ac07e6133b4be875fc07e2357dafa1a0e4e38797df19064ab436ab8efc9a12dc5ee1e8cc0d20409c98ebf5fc0f782c10aae12b551b7dac250b7c47f5b4fb0c8aac57a72837f3fdb7d137b1eaee1ffc43b113b65c398a58a06895ac0da8065ee2d11b17ef2918d30daffae21e2d48ebae78546935ff6dffba9c0348035a14d3d31597b8299b9852a1ab9ccb97b8589c8bc47ee00d0ceb0fb0337112823a4585cc7bcc90ac9f780df1553ef833d996dd5d273326d4354c7b2f284c4e46e66f1317fba0dd3f4469db2f80ddf7ee5116834ad70163a95d8adf3c9c1a4ff786751d5694800a8d75b264d917d27e4e2f5bbf722d6062c0ea138c154f4a82e51363a7f47f6fd695f4f378e4d740825733a6732b0949c38d5371bcb9d09c69cfe91a1f580bb80ebeacbb02f045ff30825cffcec0c938d67c3c88e008a9ab544dbaa6908866ce4107fd18a564ec961f6b7579d7dcf18b9b1bc2ed0afe2e6c9b43c9df5b88b8ac0eccf7e72c057b7941c36a1f63e0c8f06a12fb7fa7bdd9596cf1b499cab83a754d8135f03373a533d9c7f29f7c43dae0b36c675bc24538a853ca4ca11a38676fcb43aacebc3e8a49654885c20e05b65b16e69d6a980c01731dda20ca408e851b92c6f2f928cd12b372e550e10cb0c2997cf99eb1569594e34f9bc36c7fba6ce349f94091397b0d50f66f3e7f4481b9305c73747bbf277299ea1e0d9f35677f8f47975a62e89620c5bd6c7a9ef23e8ee5fff00785fa09ac43d344be16312c1b8858b1dad55880026fd6ffe3e54f59b7d3e25ccdbb2f1eab65f0659e7ce7a6da03a2dea96b5c70da72e063b8b4bcde0947362b58741627b4968a91b28a7747a34dac262208c4a2ae0039df54e1e6159fe864d92a91996a2ee6b46b30f92fbd32e7cee87edf8b295cbfde6ac4e7bc79865b759be80d02414029c3c437576e058676119deb2a19110f55376f8926a56c45788baa5ed3bdce746224dcb4c324ca57396af0fa25141a0ab1faa820e667f6a789fbdf5b9b4e3ff505bbc7da612a98b6fcb814a32ada68e535c4ce8798eca70ef48e89c8f5e8ddc9773a6389b56d094de0c7455430c051cd5a06f86122dbe40d5b69dac70e54fa4023e84a8ea4ce4f166778df643cb9f3e70e92d6efcf0d6403aeb777c119dc0f6e5bb0b55ff31c4fa58a07e88bfeae2667203152970ff2cbfa36621bbcd0b5a9edda31dac98f14b3aa332e9a3d789ae5e94e8aeb96e07fe1cd74c5708925ea6b01b03a56da485cc629dc1fb1a730e08276cdd9df79599b45310aa617444d27806d0da197a0ee6a10aeee475a29334d7a171dba6978950adae9e31c92a13f785535cd558cff938ddeb42eff07a1e0f1b1009b4b13f707c5d1b3a1d88de7524f73112493101b8c7959cec57b102c3d606429afa4bc6d4f8199c79092525c2d2829c91036d83b3612e3503e1043a48b699fbe11c0b5810c3ba806f165d55a73e7b60e7c2bb33ec69c046014649b5d38c1d346476b0b35d35d948abdd408a5ca4c828a6034633814b64287201b976252167c7984465ffbbce7949e5347dc59d97e3e0be601a7345d2d1c637184f92af878fa80a0407018f052df2b33bf604387d5050b6eada485fff40d9586c38c809881817f63ced33a5f67b0541f7166abb770e59bf8d6448ae1749b06928f4b7e44adc590283d3888e05e9a6884ba061214b45e605059c795774fbc05f2ee95a2b97c0f89cc164740d958fa8d5d040717bd0d228cfecbc199a07cbc5686dad862b9dda0a251311c69e2ac6f857517c2ee1237b96831d29534b0077f513a737ff03f0d0b5f6d05d699c658cc1258c29943fb74fd9b054fe6f0d0de76320fc39dab91fae0f7096957e4fd3409f8def72fd9e20f9d204e4a1cff55d6bda0c192c47047db5ed55507f91eea943349877d4bab49a5d2270f1d28daa3bc06a017590e5e8a3a3fc1e186f79dbc556392a85f1c870a9b64b65ca248f587a48a8baa35541cd34c18dd03d1ffe4594784c886e31a0de442ade4d22ee3b1aa891ec5f23a689d051e960c9a2740e3b624f65659608697c932158019f10b7c7fa62cbb4de9559b94badf300d3fa1738577e4a5e1f908b215acecbdfd297d54e7caf03e3b4fb4499c72ea505d8f1ad9cf08653ee1a43e49a013a9b38c06b79ce94447c9fbfb9131be6ce11052ac414a3b6df79e1392d5ee8607c53028f9363e9b1082055215d52567f7982198c83e05a758a5e1f63d4086cd01c0a213825f9215914335f8fcebd15b32e71de142cd5a374e6d0ae136fa967f1825734b4584fc87ded2eff841fff95358f66f3442363b8e9a868ae88582d26565e30e86a4b388e02ce627b9459851fd34f69f2e9f0a39b973596ae712660d3ba53a8c275fff81c127c637dec73f67de402934fd5805045c3d2f1c9128cc6a9fbf369b46bb3cdfe7bea9ab4f63ff8815e3346bca2c00eb595fd715b0473a779eaf29aa76780f15341007c702d5b578e215613fb1b090216abb2641d25393ab699c7ad93c17d1365671a3eb681938f8d12b17bdcdd8d20807a3922c1c912893e0c97a8d9641d70d37ec1ccc8609b06fed33c85c0a7071dd7ba23bbfafd5d2e8447ec909803295d81ec66318505e686c4483e1461b15d8414479fdc783f7487493f52431fba1d4baf1a8df15710b90db4822d65fa97b6766168b3dcf40fc0eafb2972c76f624b020a64e0b12daab36f8cb7a9a3782ece3c361c6a2540fe94b02e79451bac9c54c89a7aad61a941c8d44f8eb0d4ccf03b3ac1888b122732c4578a066f5b03eccf230ead877184dd9a506e5da81edf8fce91f2eff27a6c4fb289eabda6565a7468542828889dd722c6ce1d23f37443d61ea5ed944e5a031f671e9b58583f58dca65bae47d61c4dc4bd12ccd4251771f591ade5d4db85836286de2da477eae518a7e6998d638c6111c862c4107ffdb5139f7488ad67fbaac2a7ccb03284ca6b9a02d70ad4a0556ff3191cabf9af03877ad77824cfe1840404a9b1dba3fb3bdcdda5db15d93ed3497d50cc926e29d6b670249f3880eb4ef339566f2d69252d796cbce9d4330057745f8c525a4a42dfbf3636505d58c38a01eaa648dad59a1801154577580b36779b6a4d9280aca002c2b107411e1a16006de82b69cd9b6b3d8d2afd162c331a117d6d51218d754dcbdf617991df648ea68555dfa2a328a83eebe77bf546a06b35493dc04b16a698a1cf0c1fa40b13e655ef10795f4f8cd24eb761e83e36e9dcd06d78e34b93ded078726819fd4bda5061222c32ccd0c728cdbb866728e00f550650288674fb1d6b0afbe15c7ce575b94319efd3c7541b5943304d9b8f4d21f88fde3ed670f3c24b07775678e26cb44d065ae1d8e1ecf05f8e40302364c5b3ac5620cd20c239e59ea16f01de843648564187ddcd0416e5ba1bec9840f021f4ea4bc2b72704d70ff6ba4b72d059931cf9e57c4044384a5d6bf8d998d0359c10938267e324a9d035f85feacbe85fb0824e5615394c46ae27615dbed6b4f19ddf3f3044b33f20141c0e1c3534f275f5505bcd685298f6483eb6436b44d13e117ec0b79a808b8d15effcd040afd40e7743ddfa1f4707959ed3e0b3ef0d1ecccf55b66a1d463d785aac987c5adab6619467b3a02636ce35cd88ce30007d0e3cca7cf432e26ea93d454110a5eb0e9d82f5c066554411022684b4b6c1a12a50f81c4425774b05935b5eeeaac8149481f03dfbc002979af915958ae2cbeaeb4188039fe5dcda917efbfc329e79574e3942cdb90e04daa1337150d35453ee591649925c51d65d561fc0b9ed6e8d41334d56fe5fab0c3af2fbf0811fbe615cad8851d5d585694ad9f8e1497efede32c00240600e580b836fff5acb8b584e507f244a9d5bc985e6e4e3fbbbb77ee542b2687b4269aaa0d6ee390cece9ed3236783576770cbb7eae97168261e85be9c83482bc55adabe2a0677e417aea8ae1191c77b3454780d0ebd4f11ef1335499c78cf72e93a30f6586bac6ceec7cf8a687b1dad07338e40d6764fcad35ee6ed28458f5f0b140560b7072ad1447695f3e69a8dd15c93c4d453ca10e588524a23cbce890a574365811b58c447b8602e63117b0c98a247e4da7464a16a9c4c3195a0faa66e111b3a8252249f9d13b3a812602f77784cd9e07ea0c2d6e172fe83f856de2a20f2322cd17af98a1f71de003418fb89fe4270483a1f89b4605e4bbf946066a5051c1c79dfe30b9e697eb8bb0c7394992f801e278200258ab86c918a4a68af9d424bf81e65b2be86994cb7252bd3bd7486193255bddb699d67a9d5927bdfcae061215185b014f027ffb503c6f9e51fdcb2e9268a87140384389cd0d45e8e5d9bb22050291b2d0619f6531dd5dae09f8d527d5603242cfdf03237ac47b5e0eb0c84cd58145f09896c6ffda1641c90285311a5bba2b72efa3e1545982d5443b85a21b7b95b684e68ce856876407d5936be37ed792cc99df8477d4085d260669925972ec76162ecf3eee19a0f3928a486afa7291d46ce363dfeabbac0ef3d9005271f51501782d2de9be8291366169324eaa05f8541db9366c3c81d3363e455a39c47d50205aa7eedd0f884439d767bfbbd92e058a9f0db68ab47d9fd9941f27ce0f5dcfa95e9a53620d33fefc50df34c4abda4cd8dbb4f9ddfd4239c12da63ed18874e6bcb11ed74b146503d4bed844f4a3a20f4455acfef98a3d5e097e90dae40f0b2c68a39ceb0a0f4ae1c09d5a66bc28bf9c4fa234ffd97fd636881cc65a23b78d527f1728130931ba606e2c7e47fe8ae68f05ba488d1ca42d9283e5fa727696fc0561b78863451add77e36544c7a3d58e83018782e1636e1690d836bdd625b6cd30ee4b0f0ebb7d3cf6a2b5110a5e223b7d894a2898412b5fc104ffd0cbfa20d297b0c64b905803142f5c7c084e00ad2093779543bfbd9fa1c553ebccc78e63c77283bc8a0db0fe617a4da4fa43238b2f3f427e45aac6d7359edddd604b51918b8078f81994d273f34d073a01ae8e9ae8c32cbb20c60fa43b95ddc93136f78480b3cccddb7888e0cf006046deb776e287c3b22eff10abdd2eefba92b38d9efe89f914f1238707d2e9dad55059c9666ea0fdc20b4ac3a8b044e916dd58804015560ce81865492a3a607c99e59c47d60a1c817618f07d64b2271526232b9b363fc6527f5f9be75d6beba5cc016994ea88383d46646ca04990312f543a40afdf21c152d3226ca2d68d3c4aefd2465fde954f351587a140aa412ead02a85cc85ef6fe0481472d09f84ba83c14db08251f2da43392e2ee0948a513a345deca376356b137300bf85ad2f0d2714bc3f8accbabe4e1662990169c65729f64ee3e7d06b1fe129f3e40daab66c5c1eee29ebb529e7989b51b56e7a3df0ac9aeea181e09d5128ea6df9c7e863b9b363af332268320b2117a957623ecfe4fa79228c9a8d21c25110d22a6be05473ddec034c6bceb639d836b92699933f927e12cfa3ce791a4f21bca278f3d780caded134353f372ab3a12eba0625ac4993d8c00e5c4ac396e68e6f94bc894fe20279d2f4b029d62d544a4bde47e2d19b0fe0f90e326bc12f3842844e0cb1a8045eb2dc61bca006e2696b771b609c7f3ddfb8ca5a6cc6889b9d36e76166d7540be98310c28c2e23c9a96fc75859ee1dfb543705550b2ce91b629f002aa2bb236a13c0e0d2791eaa4df37308e4f2aecbbf3cc505d677ce777be45996f6b31e0ba015d2564cfb71f5abe1887e7b75a672981707c139eac8c57efe8e1a80fee9365715c3b88d1382cde23aa07182e61398210c8ae0eb37f2f22c0ee4ff3813b3209565480c37034cba9ef9d92414596dd30285fd1e328af2bbe45272e3f365cce407024b1b1e23b0925b2155106cdf48054b35edae8597a44c28a057b0d2f14271587179859924de7da1f52e0e611b6b3111b7d395e548730cb996e07f7944f90c5199e20153c2f67d3eb10f00c16c94e23ce9151ad0105aa3933c258c061e0180b8b27a8daaeba4202bc4219bce7dd68c6bce959c0f087f09f4b4092175ba16bdf1434a9b3bbc7831af413c1856e122f2b6805651c086961bebb88e6cc2a825be32c6d3b2b7bfb3e808595b9c5d2069e7f1b2b11159382058109bdfad367bef6ce9d91b412beffc0734ad74db0f170cc1c1d694cc412e015b9cc78e2beafc8183cd46481820334b0187f589c7d98fd33e6183e01745c98c71cdb873e248b9153c983737ffa09b2888517d7fb944838a9edb2a1856882c0fa50f1c14584de0185f39e8a7658dc7921176c9298e7bf66b7eb978386a342cf0fa38e66b429c7945a4b09eefc6c2f4834111f36d8600cd8de217baea6e1ee24a14e753d7b5dbcff596e11e33b0492867c3ed73c00b6bb4d033cc47aa8db20168fb71ec7111bbe4189110fab5ed1eb2dbf1148fb16882ac70edf8d397e3549b61efd88920560614dfb122b29e9d8cf7d077c934055ca342eec0c4f580a8a818e6231f7f70f9864e28ed3253d196088658573e45b6078225db5b1f4b656c9505c853567872e94a3133215b295461113797fc41132423ff3e6edc2f34095b3514955eb4b584984a7998c1c366a5028bdff19b33c1210fe0871ea4f62f3dd698720f70a101ef145ebaeaa97b299065d2b981a63e9f3dc984d6d67f00f3b2ba6c15f2eb6b6a6303b873a6ef1ce76b56cfe184334e0b1e94f34b2787506a66f7271c6f0f2e4d6c8ee587c8d071ff9564f7377f0ff9fbb6c4e5171308ecef6220db29528fe8e8b68ddbf9b3e6ea02b2ff59792090b2890c3ca870ee763364c697ca61398dc8c882627b23706221dab14d4dc951146011d1e46d7908e3cabe23b69a14cbe3fc73aa4b7e72f03c8348dcd2fabe533ef0c3aab0cde897b675b006bf96ef3cf51d024b62a510823b91557fac2a8f8d9ea9cec8de6b6220753af1e980734e1052a30ee84e41ee3c9f0fdc2034ead39380e2f59a19d43936b192d75ecec0c19d810bf8a99d1e0bd33c0f90fe255ded78063956e95a25c9353b45ca5a66181b474011b6fcba75e278234e1296bae79e950a0ec8ef74955495ced4732339d77eeecf7c44bcb9b30e3b8a947789c74ed66416c31b664b528d317b3d1004c425bebaec927cd26284eda49ab00eeeaa9666b6e4dd950555a84efca578e20233b25af5079f4b05cf32f7400e76d607a9c7211eb7d8716a2fe0b0a3d70047ded5830f2dbb7722e8db190dd53a986d72022f875a02d28da1bbd6bf914e6/etc/alternatives/ldlibsframe.so.1.0.0../../bin/ar../../bin/as../../bin/ld../../bin/nm../../bin/ranlib../../bin/strip../../lib64/ldscripts@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootbinutils-2.43-150100.7.52.1.src.rpmÿÿÿØÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿbinutilsbinutils(x86-64)libbfd-2.43.1.20241209-150100.7.52.so()(64bit)libdep.so()(64bit)libopcodes-2.43.1.20241209-150100.7.52.so()(64bit)libsframe.so.1()(64bit)libsframe.so.1(LIBSFRAME_0.0)(64bit)libsframe.so.1(LIBSFRAME_1.0)(64bit) @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
/bin/sh/bin/sh/bin/sh/sbin/ldconfiginfold-linux-x86-64.so.2()(64bit)ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)libbfd-2.43.1.20241209-150100.7.52.so()(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.11)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.6)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)libctf-nobfd.so.0()(64bit)libctf-nobfd.so.0(LIBCTF_1.0)(64bit)libctf-nobfd.so.0(LIBCTF_1.1)(64bit)libctf.so.0()(64bit)libctf.so.0(LIBCTF_1.0)(64bit)libctf.so.0(LIBCTF_1.1)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2.5)(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)libopcodes-2.43.1.20241209-150100.7.52.so()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libpthread.so.0(GLIBC_2.3.2)(64bit)libsframe.so.1()(64bit)libsframe.so.1(LIBSFRAME_1.0)(64bit)libstdc++.so.6()(64bit)libstdc++.so.6(CXXABI_1.3)(64bit)libstdc++.so.6(CXXABI_1.3.5)(64bit)libstdc++.so.6(CXXABI_1.3.8)(64bit)libstdc++.so.6(CXXABI_1.3.9)(64bit)libstdc++.so.6(GLIBCXX_3.4)(64bit)libstdc++.so.6(GLIBCXX_3.4.11)(64bit)libstdc++.so.6(GLIBCXX_3.4.15)(64bit)libstdc++.so.6(GLIBCXX_3.4.18)(64bit)libstdc++.so.6(GLIBCXX_3.4.20)(64bit)libstdc++.so.6(GLIBCXX_3.4.21)(64bit)libz.so.1()(64bit)libz.so.1(ZLIB_1.2.0)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)update-alternatives3.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1gVÛÀg=Ï@g;,@fà4ÀfÏ@f²@fjß@f2.Àe×7@eÕåÀeÀÍÀe¸äÀeLÉÀev@eõÀdܺ@d¯ç@duå@d6@dœ@dÀdxÀc÷U@cô²@c×±@cÓ¼ÀcÓ¼ÀcÏÈ@cÅ<@c”tÀcWÏÀcWÏÀcMCÀcIO@cµÀbóÀbðúÀbîWÀb§&ÀbŽ@bŽ@by@bu
ÀbrjÀbrjÀbrjÀboÇÀbf@bT@bT@b8hÀb)è@b!ÿ@b
Àbs@bs@b!ÀbÐ@b¡@aý@aò‰@aŽW@a…Àa‚yÀa(@aÖÀa`2Àa;HÀa8¥Àa /À`ù]À`ù]À`•+À`]ÌÀ`?z@`<×@`áÀ`@`>À`
a@_Ê$À_»¤@_„E@_h•À_`¬À_7Î@_-B@_Í@^{GÀ^YÀ^V]À^KÑÀ^KÑÀ^5h@^rÀ]Õ*À]Ò‡À]®ï@]¥´À]”‘@]v>À]ja@]5¥@\õÀ\Æç@\¾þ@\¤ @\kïÀ\YzÀ\X)@\I¨À\ @[ý1À[…9@[`O@[LˆÀ[)ÀZö×@ZÃlÀZ³šÀZ°÷ÀZ¡%ÀZž‚ÀZ“öÀZk@ZeÒ@Z_:ÀYÒ*@YÎ5ÀYÌä@Y¦¨ÀYœ@YŒJÀYÀYx„@Yx„@XäÜ@XÞDÀXÜó@XËÏÀX¿ò@X½O@X° @X™¶ÀX˜e@XVz@X>¿@X<@Wó™ÀW½Œ@W|òÀVëíÀVà@VÔ2ÀV¯HÀV¨±@V–<@VCÀV
@U®4@U£¨@UŸ³ÀUžb@U›¿@Ux&ÀUYÔ@UYÔ@UW1@TåÐ@T¿”ÀT·«ÀT³·@T|X@TSyÀmatz@suse.comjslaby@suse.czadrian.glaubitz@suse.commartin.liska@hey.commatz@suse.commatz@suse.comschwab@suse.debwiedemann@suse.comdimstar@opensuse.orgschwab@suse.dematz@suse.commatz@suse.commatz@suse.comschwab@suse.dematz@suse.commatz@suse.commatz@suse.comschwab@suse.demliska@suse.czmliska@suse.czrguenther@suse.commatz@suse.commliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czrguenther@suse.commliska@suse.czdmueller@suse.commatz@suse.comschwab@suse.dematz@suse.comdmueller@suse.commatz@suse.commliska@suse.czmliska@suse.czmliska@suse.czmatz@suse.commliska@suse.czmliska@suse.czschwab@suse.dematz@suse.commliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czmatz@suse.commatz@suse.commatz@suse.commeissner@suse.comwbauer@tmo.atmliska@suse.czmatz@suse.commliska@suse.czmliska@suse.czmatz@suse.commliska@suse.czmliska@suse.czmatwey.kornilov@gmail.comdmueller@suse.commliska@suse.czmatz@suse.commliska@suse.czmatz@suse.commliska@suse.czmatz@suse.comStefan Schubert schubi@suse.dematz@suse.commliska@suse.czmliska@suse.czmliska@suse.czschwab@suse.demliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czmliska@suse.czmatz@suse.commatz@suse.comstefan.bruens@rwth-aachen.demliska@suse.czmatz@suse.commliska@suse.czmatz@suse.commliska@suse.czmliska@suse.czmliska@suse.czrguenther@suse.commliska@suse.czmliska@suse.czmliska@suse.czschwab@suse.dematz@suse.commatz@suse.commliska@suse.czmatz@suse.commatz@suse.commatz@suse.comdmueller@suse.commliska@suse.czmatz@suse.commliska@suse.czmliska@suse.czschwab@suse.demliska@suse.czmliska@suse.czmliska@suse.czmatz@suse.commatz@suse.commliska@suse.czmatz@suse.comrguenther@suse.comrguenther@suse.comschwab@suse.deafaerber@suse.dematz@suse.comschwab@suse.derguenther@suse.comschwab@suse.dematz@suse.comschwab@suse.dedimstar@opensuse.orgschwab@suse.deafaerber@suse.dematz@suse.commliska@suse.czrguenther@suse.commatz@suse.commatz@suse.commatz@suse.commatz@suse.comrguenther@suse.comrguenther@suse.comafaerber@suse.derguenther@suse.comrguenther@suse.commatz@suse.comrguenther@suse.comschwab@linux-m68k.orgrguenther@suse.comrguenther@suse.comafaerber@suse.dejengelh@inai.deidonmez@suse.comrguenther@suse.comstefan.bruens@rwth-aachen.derguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comschwab@suse.deschwab@suse.deschwab@suse.dematz@suse.deafaerber@suse.deschwab@linux-m68k.orgmatz@suse.deafaerber@suse.dedmueller@suse.commatz@suse.demeissner@suse.comhrvoje.senjan@gmail.comschwab@suse.deschwab@suse.derguenther@suse.comdimstar@opensuse.orgmatz@suse.deafaerber@suse.de- Update to current 2.43.1 branch [PED-10254, PED-10306]:
* s390 - Add arch15 instructions
* various fixes from upstream: PR32153, PR32171, PR32189,
PR32196, PR32191, PR32109, PR32372, PR32387
- Adjusted binutils-2.43-branch.diff.gz.
- Disable zstd-by-default again (needs adjustments in at least
golang,llvm15,llvm17 first)
- Add binutils-fix-branch.diff.
- Check non-changing of flex/bison inputs only after applying
branch and fix-branch diffs.- drop ld-relro.diff (relro is the default for some time)
and it warns on avr spuriously (bsc#1233520)- Add loongarch64 as new target- Enable zstd compression algorithm (instead of zlib)
for debug info sections by default.- Update to current 2.43.1 branch [PED-10474]:
* PR32109 - fuzzing problem
* PR32083 - LTO vs overridden common symbols
* PR32067 - crash with LTO-plugin and --oformat=binary
* PR31956 - LTO vs wrapper symbols
* riscv - add Zimop and Zcmop extensions
- Adjusted binutils-2.43-branch.diff.gz.- Update to version 2.43:
* new .base64 pseudo-op, allowing base64 encoded data as strings
* Intel APX: add support for CFCMOV, CCMP, CTEST, zero-upper, NF
(APX_F now fully supported)
* x86 Intel syntax now warns about more mnemonic suffixes
* macros and .irp/.irpc/.rept bodies can use \+ to get at number
of times the macro/body was executed
* aarch64: support 'armv9.5-a' for -march, add support for LUT
and LUT2
* s390: base register operand in D(X,B) and D(L,B) can now be
omitted (ala 'D(X,)'); warn when register type doesn't match
operand type (use option
'warn-regtype-mismatch=[strict|relaxed|no]' to adjust)
* riscv: support various extensions: Zacas, Zcmp, Zfbfmin,
Zvfbfmin, Zvfbfwma, Smcsrind/Sscsrind, XCvMem, XCvBi, XCvElw,
XSfCease, all at version 1.0;
remove support for assembly of privileged spec 1.9.1 (linking
support remains)
* arm: remove support for some old co-processors: Maverick and FPA
* mips: '--trap' now causes either trap or breakpoint instructions
to be emitted as per current ISA, instead of always using trap
insn and failing when current ISA was incompatible with that
* LoongArch: accept .option pseudo-op for fine-grained control
of assembly code options; add support for DT_RELR
* readelf: now displays RELR relocations in full detail;
add -j/--display-section to show just those section(s) content
according to their type
* objdump/readelf now dump also .eh_frame_hdr (when present) when
dumping .eh_frame
* gprofng: add event types for AMD Zen3/Zen4 and Intel Ice Lake
processors; add minimal support for riscv
* linker:
- put .got and .got.plt into relro segment
- add -z isa-level-report=[none|all|needed|used] to the x86 ELF
linker to report needed and used x86-64 ISA levels
- add --rosegment option which changes the -z separate-code
option so that only one read-only segment is created (instead
of two)
- add --section-ordering-file option to add extra
mapping of input sections to output sections
- add -plugin-save-temps to store plugin intermediate files
permanently
- Removed binutils-2.42.tar.bz2, binutils-2.42-branch.diff.gz.
- Added binutils-2.43.tar.bz2, binutils-2.43-branch.diff.gz.
- Removed upstream patch riscv-no-relax.patch.
- Rebased ld-relro.diff and binutils-revert-rela.diff.- binutils-pr22868.diff: Remove obsolete patch
- Undefine _FORTIFY_SOURCE when running checks- Allow to disable profiling- Use %patch -P N instead of deprecated %patchN.- riscv-no-relax.patch: RISC-V: Don't generate branch/jump relocation if
symbol is local when no-relax- Add binutils-disable-code-arch-error.diff to demote an
error about swapped .arch/.code directives to a warning.
It happens in the wild.- Update to version 2.42:
* Add support for many aarch64 extensions: SVE2.1, SME2.1, B16B16,
RASv2, LSE128, GCS, CHK, SPECRES2, LRCPC3, THE, ITE, D128, XS and
flags to enable them: '+fcma', '+jscvt', '+frintts', '+flagm2',
'+rcpc2' and '+wfxt'
* Add experimantal support for GAS to synthesize call-frame-info for
some hand-written asm (--scfi=experimental) on x86-64.
* Add support for more x86-64 extensions: APX: 32 GPRs, NDD, PUSH2/POP2,
PUSHP/POPP; USER_MSR, AVX10.1, PBNDKB, SM4, SM3, SHA512, AVX-VNNI-INT16.
* Add support for more RISC-V extensions: T-Head v2.3.0, CORE-V v1.0,
SiFive VCIX v1.0.
* BPF assembler: ';' separates statements now, and does not introduce
line comments anymore (use '#' or '//' for this).
* x86-64 ld: Add '-z mark-plt/-z nomark-plt' to mark PLT entries with
dynamic tags.
* risc-v ld: Add '--[no-]check-uleb128'.
* New linker script directive: REVERSE, to be combined with SORT_BY_NAME
or SORT_BY_INIT_PRIORITY, reverses the generated order.
* New linker options --warn-execstack-objects (warn only about execstack
when input object files request it), and --error-execstack plus
- -error-rxw-segments to convert the existing warnings into errors.
* objdump: Add -Z/--decompress to be used with -s/--full-contents to
decompress section contents before displaying.
* readelf: Add --extra-sym-info to be used with --symbols (currently
prints section name of references section index).
* objcopy: Add --set-section-flags for x86_64 to include
SHF_X86_64_LARGE.
* s390 disassembly: add target-specific disasm option 'insndesc',
as in "objdump -M insndesc" to display an instruction description
as comment along with the disassembly.
- Add binutils-2.42-branch.diff.gz.
- Rebased s390-biarch.diff.
- Adjusted binutils-revert-hlasm-insns.diff,
binutils-revert-plt32-in-branches.diff and binutils-revert-rela.diff
for upstream changes.
- Removed binutils-2.41-branch.diff.gz, binutils-2.41.tar.bz2,
binutils-2.41-branch.diff.gz.
- Removed binutils-use-less-memory.diff, binutils-old-makeinfo.diff
and riscv-relro.patch (all upstreamed).
- Removed add-ulp-section.diff, we use a different mechanism
for live patching since a long time.- Add binutils-use-less-memory.diff to be a little nicer to 32bit
userspace and huge links. [bsc#1216908]- riscv-relro.patch: RISC-V: Protect .got with relro- Add libzstd-devel to Requires of binutils-devel. (bsc#1215341)- Update to version 2.41 [PED-5778]:
* The MIPS port now supports the Sony Interactive Entertainment Allegrex
processor, used with the PlayStation Portable, which implements the MIPS
II ISA along with a single-precision FPU and a few implementation-specific
integer instructions.
* Objdump's --private option can now be used on PE format files to display the
fields in the file header and section headers.
* New versioned release of libsframe: libsframe.so.1. This release introduces
versioned symbols with version node name LIBSFRAME_1.0. This release also
updates the ABI in an incompatible way: this includes removal of
sframe_get_funcdesc_with_addr API, change in the behavior of
sframe_fre_get_ra_offset and sframe_fre_get_fp_offset APIs.
* SFrame Version 2 is now the default (and only) format version supported by
gas, ld, readelf and objdump.
* Add command-line option, --strip-section-headers, to objcopy and strip to
remove ELF section header from ELF file.
* The RISC-V port now supports the following new standard extensions:
- Zicond (conditional zero instructions)
- Zfa (additional floating-point instructions)
- Zvbb, Zvbc, Zvkg, Zvkned, Zvknh[ab], Zvksed, Zvksh, Zvkn, Zvknc, Zvkng,
Zvks, Zvksc, Zvkg, Zvkt (vector crypto instructions)
* The RISC-V port now supports the following vendor-defined extensions:
- XVentanaCondOps
* Add support for Intel FRED, LKGS and AMX-COMPLEX instructions.
* A new .insn directive is recognized by x86 gas.
* Add SME2 support to the AArch64 port.
* The linker now accepts a command line option of --remap-inputs
= to relace any input file that matches with
. In addition the option --remap-inputs-file= can be used to
specify a file containing any number of these remapping directives.
* The linker command line option --print-map-locals can be used to include
local symbols in a linker map. (ELF targets only).
* For most ELF based targets, if the --enable-linker-version option is used
then the version of the linker will be inserted as a string into the .comment
section.
* The linker script syntax has a new command for output sections: ASCIZ "string"
This will insert a zero-terminated string at the current location.
* Add command-line option, -z nosectionheader, to omit ELF section
header.
- Removed obsolete patches: binutils-2.40-branch.diff.gz,
riscv-dynamic-tls-reloc-pie.patch, riscv-pr22263-1.patch,
extensa-gcc-4_3-fix.diff .
- Add binutils-2.41-branch.diff.gz .
- Add binutils-old-makeinfo.diff for SLE-12 and older.
- Rebased aarch64-common-pagesize.patch and binutils-revert-rela.diff .
- Contains fixes for these non-CVEs (not security bugs per upstreams
SECURITY.md):
* bsc#1209642 aka CVE-2023-1579 aka PR29988
* bsc#1210297 aka CVE-2023-1972 aka PR30285
* bsc#1210733 aka CVE-2023-2222 aka PR29936
* bsc#1213458 aka CVE-2021-32256 aka PR105039 (gcc)
* bsc#1214565 aka CVE-2020-19726 aka PR26240
* bsc#1214567 aka CVE-2022-35206 aka PR29290
* bsc#1214579 aka CVE-2022-35205 aka PR29289
* bsc#1214580 aka CVE-2022-44840 aka PR29732
* bsc#1214604 aka CVE-2022-45703 aka PR29799
* bsc#1214611 aka CVE-2022-48065 aka PR29925
* bsc#1214619 aka CVE-2022-48064 aka PR29922
* bsc#1214620 aka CVE-2022-48063 aka PR29924
* bsc#1214623 aka CVE-2022-47696 aka PR29677
* bsc#1214624 aka CVE-2022-47695 aka PR29846
* bsc#1214625 aka CVE-2022-47673 aka PR29876- Add binutils-disable-dt-relr.sh for an compatibility problem
caused by binutils-revert-rela.diff in SLE codestreams.
Needed for update of glibc as that would otherwise pick up
the broken relative relocs support. [bsc#1213282, PED-1435]
- This only existed only for a very short while in SLE-15, as the main
variant in devel:gcc subsumed this in binutils-revert-rela.diff.
Hence:
- Remove binutils-disable-dt-relr.sh as subsumed.- riscv-dynamic-tls-reloc-pie.patch: Backport for PR ld/22263 and PR
ld/25694
- riscv-pr22263-1.patch: Backport for PR ld/22263- Rebase branch patch (includes fix for PR30281).- Document fixed CVEs:
* bnc#1208037 aka CVE-2023-25588 aka PR29677
* bnc#1208038 aka CVE-2023-25587 aka PR29846
* bnc#1208040 aka CVE-2023-25585 aka PR29892
* bnc#1208409 aka CVE-2023-0687 aka PR29444- Enable bpf-none cross target and add bpf-none to the multitarget
set of supported targets.- Disable packed-relative-relocs for old codestreams. They generate
buggy relocations when binutils-revert-rela.diff is active.
[bsc#1206556]- Disable ZSTD debug section compress by default.- Enable zstd compression algorithm (instead of zlib)
for debug info sections by default.- Pack libgprofng only for supported platforms.- Remove upstreamed patch binutils-maxpagesize.diff.- Rebase binutils-2.40-branch.diff.gz as it includes fix for PR30043.
- Move libgprofng-related libraries to the proper locations (packages).
- Add --without=bootstrap for skipping of bootstrap (faster testing
of the package).- Remove broken arm32-avoid-copyreloc.patch to fix [gcc#108515]- Update to version 2.40:
* Objdump has a new command line option --show-all-symbols which will make it
display all symbols that match a given address when disassembling. (Normally
only the first symbol that matches an address is shown).
* Add --enable-colored-disassembly configure time option to enable colored
disassembly output by default, if the output device is a terminal. Note,
this configure option is disabled by default.
* DCO signed contributions are now accepted.
* objcopy --decompress-debug-sections now supports zstd compressed debug
sections. The new option --compress-debug-sections=zstd compresses debug
sections with zstd.
* addr2line and objdump --dwarf now support zstd compressed debug sections.
* The dlltool program now accepts --deterministic-libraries and
- -non-deterministic-libraries as command line options to control whether or
not it generates deterministic output libraries. If neither of these options
are used the default is whatever was set when the binutils were configured.
* readelf and objdump now have a newly added option --sframe which dumps the
SFrame section.
* Add support for Intel RAO-INT instructions.
* Add support for Intel AVX-NE-CONVERT instructions.
* Add support for Intel MSRLIST instructions.
* Add support for Intel WRMSRNS instructions.
* Add support for Intel CMPccXADD instructions.
* Add support for Intel AVX-VNNI-INT8 instructions.
* Add support for Intel AVX-IFMA instructions.
* Add support for Intel PREFETCHI instructions.
* Add support for Intel AMX-FP16 instructions.
* gas now supports --compress-debug-sections=zstd to compress
debug sections with zstd.
* Add --enable-default-compressed-debug-sections-algorithm={zlib,zstd}
that selects the default compression algorithm
for --enable-compressed-debug-sections.
* Add support for various T-Head extensions (XTheadBa, XTheadBb, XTheadBs,
XTheadCmo, XTheadCondMov, XTheadFMemIdx, XTheadFmv, XTheadInt, XTheadMemIdx,
XTheadMemPair, XTheadMac, and XTheadSync) from version 2.0 of the T-Head
ISA manual, which are implemented in the Allwinner D1.
* Add support for the RISC-V Zawrs extension, version 1.0-rc4.
* Add support for Cortex-X1C for Arm.
* New command line option --gsframe to generate SFrame unwind information
on x86_64 and aarch64 targets.
* The linker has a new command line option to suppress the generation of any
warning or error messages. This can be useful when there is a need to create
a known non-working binary. The option is -w or --no-warnings.
* ld now supports zstd compressed debug sections. The new option
- -compress-debug-sections=zstd compresses debug sections with zstd.
* Add --enable-default-compressed-debug-sections-algorithm={zlib,zstd}
that selects the default compression algorithm
for --enable-compressed-debug-sections.
* Remove support for -z bndplt (MPX prefix instructions).
- Rebased patches: add-ulp-section.diff, ld-relro.diff, binutils-revert-plt32-in-branches.diff,
cross-avr-size.patch.
- Removed patch: binutils-pr29482.diff.
- New patch: extensa-gcc-4_3-fix.diff.
- Includes fixes for these CVEs:
* bnc#1206080 aka CVE-2022-4285 aka PR29699
- Enable by default: --enable-colored-disassembly.- fix build on x86_64_vX platforms- Add binutils-maxpagesize.diff for a problem on old code
streams, where we would generate too large binaries.- s390-pic-dso.diff: use %pB instead of %B- SLE toolchain update of binutils. Update to 2.39 from 2.37,
which means obsoleting and hence removing these patches:
binutils-add-efi-aarch64-1.diff, binutils-add-efi-aarch64-2.diff,
binutils-add-efi-aarch64-3.diff, binutils-fix-keepdebug.diff,
binutils-add-z16-name.diff.
Implements [jsc#SLE-25046, jsc#PED-2029, jsc#PED-2035, jsc#PED-2033,
jsc#PED-2030, jsc#PED-2038, jsc#PED-2032, jsc#PED-2034, jsc#PED-2031,
jsc#SLE-25047]
- This fixes these CVEs relative to 2.37:
[bsc#1188374, bsc#1185597] aka (GCC) PR99935 aka CVE-2021-3648
[bsc#1193929] aka PR28694 aka CVE-2021-45078
[bsc#1194783] aka (GCC) PR98886 aka CVE-2021-46195
[bsc#1197592] aka (GCC) PR105039 aka CVE-2022-27943
[bsc#1202966] aka PR29289 aka CVE-2022-38126
[bsc#1202967] aka PR29290 aka CVE-2022-38127
[bsc#1202969] aka CVE-2021-3826- add arm32-avoid-copyreloc.patch for PR16177 (bsc#1200962)- Add binutils-pr29482.diff for PR29482, aka CVE-2022-38533
[bsc#1202816]- Rebase binutils-2.39-branch.diff.gz that contains fix for PR29451.- Add binutils-2.39-branch.diff.gz.
- Explicitly enable --enable-warn-execstack=yes and --enable-warn-rwx-segments=yes.
- Add gprofng subpackage.- Update to binutils 2.39:
* The ELF linker will now generate a warning message if the stack is made
executable. Similarly it will warn if the output binary contains a
segment with all three of the read, write and execute permission
bits set. These warnings are intended to help developers identify
programs which might be vulnerable to attack via these executable
memory regions.
The warnings are enabled by default but can be disabled via a command
line option. It is also possible to build a linker with the warnings
disabled, should that be necessary.
* The ELF linker now supports a --package-metadata option that allows
embedding a JSON payload in accordance to the Package Metadata
specification.
* In linker scripts it is now possible to use TYPE= in an output
section description to set the section type value.
* The objdump program now supports coloured/colored syntax
highlighting of its disassembler output for some architectures.
(Currently: AVR, RiscV, s390, x86, x86_64).
* The nm program now supports a --no-weak/-W option to make it ignore
weak symbols.
* The readelf and objdump programs now support a -wE option to prevent
them from attempting to access debuginfod servers when following
links.
* The objcopy program's --weaken, --weaken-symbol, and
- -weaken-symbols options now works with unique symbols as well.
- Rebase binutils-compat-old-behaviour.diff, binutils-revert-hlasm-insns.diff,
binutils-revert-plt32-in-branches.diff and remove binutils-2.38-branch.diff.gz.
- For now use --disable-gprofng.
- Includes fixes for these CVEs:
bnc#1142579 aka CVE-2019-1010204 aka PR23765(Fake entry from SLE for tracking purposes:)
- For building shim 15.6~rc1 (and later versions) aarch64 image, objcopy
needs to support efi-app-aarch64 target. (bsc#1198458)
Adds binutils-add-efi-aarch64-1.diff,
binutils-add-efi-aarch64-2.diff, binutils-add-efi-aarch64-3.diff .- Use https for variosu links.- Update binutils-2.38-branch.diff.gz (to 93054037f1e304e)
in order to include PR29087.- Enable multitarget build on riscv64
- On SLE15 and later, use make -Oline to synchronize configure output by
lines(Fake entry from SLE for tracking purposes:)
- Add binutils-fix-keepdebug.diff for fix bsc#1191908, a problem
in crash not accepting some of our .ko.debug files.- Renumber Sources.- Fix ExcludeArch for ppc.- Make multibuild utilize only the main binutils.spec file.
- Remove not needed README.First-for.SUSE.packagers, pre_checkin.sh.- Start using _multibuild for cross binutils.- Add binutils-revert-rela.diff to revert back to old behaviour
of not ignoring the in-section content of to be relocated
fields on x86-64, even though that's a RELA architecture.
Compatibility with buggy object files generated by old tools.
[bsc#1198422]
(forward port from SLE)- Update binutils-2.38-branch.diff.gz (to c210342d7f5) to include
recognition of 'z16' name for 'arch14' on s390. [bsc#1198237](Fake entry from SLE for tracking purposes:)
- Add binutils-add-z16-name.diff so that the now official name
z16 for arch14 is recognized. [bsc#1198237]- Add usage of a SUSE_ZNOW environment variable which allows switching
on "-z now" by default using "export SUSE_ZNOW=1", similar to
the SUSE_ASNEEDED variable. Adds binutils-znow.patch.- Update binutils-skip-rpaths.patch: add back fix for boo#1191473,
which got lost in the update to 2.38.- Update binutils-2.38-branch.diff.gz in order to include PR28879.- From Stefan Brüns :
* Install symlinks for all target specific tools on
arm-eabi-none [bsc#1185712]- Do not re-generate ld/ldlex.c, ld/ldgram.c, ld/ldgram.h and verify
that corresponding flex/bison files are not modified by a patch.- Use verbose mode for make for cross compilers.- Make it build on SLE-11 again.- Use verbose mode for make.- Update to binutils 2.38:
* elfedit: Add --output-abiversion option to update ABIVERSION.
* Add support for the LoongArch instruction set.
* Tools which display symbols or strings (readelf, strings, nm, objdump)
have a new command line option which controls how unicode characters are
handled. By default they are treated as normal for the tool. Using
- -unicode=locale will display them according to the current locale.
Using --unicode=hex will display them as hex byte values, whilst
- -unicode=escape will display them as escape sequences. In addition
using --unicode=highlight will display them as unicode escape sequences
highlighted in red (if supported by the output device).
* readelf -r dumps RELR relative relocations now.
* Support for efi-app-aarch64, efi-rtdrv-aarch64 and efi-bsdrv-aarch64 has been
added to objcopy in order to enable UEFI development using binutils.
* ar: Add --thin for creating thin archives. -T is a deprecated alias without
diagnostics. In many ar implementations -T has a different meaning, as
specified by X/Open System Interface.
* Add support for AArch64 system registers that were missing in previous
releases.
* Add support for the LoongArch instruction set.
* Add a command-line option, -muse-unaligned-vector-move, for x86 target
to encode aligned vector move as unaligned vector move.
* Add support for Cortex-R52+ for Arm.
* Add support for Cortex-A510, Cortex-A710, Cortex-X2 for AArch64.
* Add support for Cortex-A710 for Arm.
* Add support for Scalable Matrix Extension (SME) for AArch64.
* The --multibyte-handling=[allow|warn|warn-sym-only] option tells the
assembler what to when it encoutners multibyte characters in the input. The
default is to allow them. Setting the option to "warn" will generate a
warning message whenever any multibyte character is encountered. Using the
option to "warn-sym-only" will make the assembler generate a warning whenever a
symbol is defined containing multibyte characters. (References to undefined
symbols will not generate warnings).
* Outputs of .ds.x directive and .tfloat directive with hex input from
x86 assembler have been reduced from 12 bytes to 10 bytes to match the
output of .tfloat directive.
* Add support for 'armv8.8-a', 'armv9-a', 'armv9.1-a', 'armv9.2-a' and
'armv9.3-a' for -march in AArch64 GAS.
* Add support for 'armv8.7-a', 'armv8.8-a', 'armv9-a', 'armv9.1-a',
'armv9.2-a' and 'armv9.3-a' for -march in Arm GAS.
* Add support for Intel AVX512_FP16 instructions.
* Add -z pack-relative-relocs/-z no pack-relative-relocs to x86 ELF
linker to pack relative relocations in the DT_RELR section.
* Add support for the LoongArch architecture.
* Add -z indirect-extern-access/-z noindirect-extern-access to x86 ELF
linker to control canonical function pointers and copy relocation.
* Add --max-cache-size=SIZE to set the the maximum cache size to SIZE
bytes.
- Add binutils-2.38-branch.diff.gz.
- Removed deletion of man pages as they should be properly packages
in tarball.
- Rebased patches: aarch64-common-pagesize.patch, add-ulp-section.diff,
binutils-bfd_h.patch, binutils-revert-nm-symversion.diff,
binutils-revert-plt32-in-branches.diff, binutils-skip-rpaths.patch
and binutils-compat-old-behaviour.diff.- Enable PRU architecture for AM335x CPU (Beagle Bone Black board)- use fdupes on datadir
- remove RPM_BUILD_ROOT usage and other cleanups- Rebase binutils-2.37-branch.diff: fixes PR28494.- Add binutils-revert-hlasm-insns.diff for compatibility on old
code stream that expect 'brcl 0,label' to not be disassembled
as 'jgnop label' on s390x. [bsc#1192267]- Rebase binutils-2.37-branch.diff: fixes PR28523 aka boo#1188941.- Fix empty man-pages from broken release tarball [PR28144].- Update binutils-skip-rpaths.patch with contained a memory corruption
(boo#1191473).- Configure with --disable-x86-used-note on old code streams.
- Disable libalternatives temporarily for build cycle reasons.
- make TARGET-bfd=headers again, we patch bfd-in.h
- This state submitted to SLE12 and SLE15 code streams for annual
toolchain update. [jsc#PM-2767, jsc#SLE-21561, jsc#SLE-19618]
- Bump binutils-2.37-branch.diff to 66d5c7003, to include fixes for
PR28422, PR28192, PR28391. Also adds some s390x arch14
instructions [jsc#SLE-18637].- Using libalternatives instead of update-alternatives.- Adjust for testsuite fails on older products that configure
binutils in different ways, adds binutils-compat-old-behaviour.diff
and adjusts binutils-revert-nm-symversion.diff and
binutils-revert-plt32-in-branches.diff.- Bump binutils-2.37-branch.diff: fixes PR28138.- Use LTO & PGO build.- Update to binutils 2.37:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
- -gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
- -sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
- Includes fixes for these CVEs:
bnc#1181452 aka CVE-2021-20197 aka PR26945
bnc#1183511 aka CVE-2021-20284 aka PR26931
bnc#1184519 aka CVE-2021-20294 aka PR26929
bnc#1184620 aka CVE-2021-3487 aka PR26946
bnc#1184794 aka CVE-2020-35448 aka PR26574
- Also fixes:
bsc#1183909 - slow performance of stripping some binaries
- Rebased patches: binutils-build-as-needed.diff, binutils-fix-abierrormsg.diff,
binutils-fix-invalid-op-errata.diff, binutils-fix-relax.diff,
binutils-revert-nm-symversion.diff, binutils-revert-plt32-in-branches.diff
- Removed patches (are in upstream): ppc-ensure-undef-dynamic-weak-undefined.patch and
ppc-use-local-plt.patch.
- Add binutils-2.37-branch.diff.gz.- ppc-ensure-undef-dynamic-weak-undefined.patch: PPC: ensure_undef_dynamic
on weak undef only in plt
- ppc-use-local-plt.patch: PowerPC use_local_plt (prerequisite for above
patch)- Update 2.36 branch diff which fixes PR27587.- Do not run make TARGET-bfd=headers separately.- Bump 2.36 branch diff (includes fix for PR27441 aka bsc#1182252).- Bump 2.36 branch diff.- Update 2.36 branch diff which should fix PR27311 completely.
It fixes also PR27284.
- Remove temporary fix 0001-PR27311-ld.bfd-symbol-from-plugin-undefined-referenc.patch.- Add temporary upstream fix for PR27311
0001-PR27311-ld.bfd-symbol-from-plugin-undefined-referenc.patch.- Update to binutils 2.36:
New features in the Assembler:
General:
* When setting the link order attribute of ELF sections, it is now
possible to use a numeric section index instead of symbol name.
* Added a .nop directive to generate a single no-op instruction in
a target neutral manner. This instruction does have an effect on
DWARF line number generation, if that is active.
* Removed --reduce-memory-overheads and --hash-size as gas now
uses hash tables that can be expand and shrink automatically.
X86/x86_64:
* Add support for AVX VNNI, HRESET, UINTR, TDX, AMX and Key
Locker instructions.
* Support non-absolute segment values for lcall and ljmp.
* Add {disp16} pseudo prefix to x86 assembler.
* Configure with --enable-x86-used-note by default for Linux/x86.
ARM/AArch64:
* Add support for Cortex-A78, Cortex-A78AE and Cortex-X1,
Cortex-R82, Neoverse V1, and Neoverse N2 cores.
* Add support for ETMv4 (Embedded Trace Macrocell), ETE (Embedded
Trace Extension), TRBE (Trace Buffer Extension), CSRE (Call
Stack Recorder Extension) and BRBE (Branch Record Buffer
Extension) system registers.
* Add support for Armv8-R and Armv8.7-A ISA extensions.
* Add support for DSB memory nXS barrier, WFET and WFIT
instruction for Armv8.7.
* Add support for +csre feature for -march. Add CSR PDEC
instruction for CSRE feature in AArch64.
* Add support for +flagm feature for -march in Armv8.4 AArch64.
* Add support for +ls64 feature for -march in Armv8.7
AArch64. Add atomic 64-byte load/store instructions for this
feature.
* Add support for +pauth (Pointer Authentication) feature for
- march in AArch64.
New features in the Linker:
* Add --error-handling-script= command line option to allow
a helper script to be invoked when an undefined symbol or a
missing library is encountered. This option can be suppressed
via the configure time switch: --enable-error-handling-script=no.
* Add -z x86-64-{baseline|v[234]} to the x86 ELF linker to mark
x86-64-{baseline|v[234]} ISA level as needed.
* Add -z unique-symbol to avoid duplicated local symbol names.
* The creation of PE format DLLs now defaults to using a more
secure set of DLL characteristics.
* The linker now deduplicates the types in .ctf sections. The new
command-line option --ctf-share-types describes how to do this:
its default value, share-unconflicted, produces the most compact
output.
* The linker now omits the "variable section" from .ctf sections
by default, saving space. This is almost certainly what you
want unless you are working on a project that has its own
analogue of symbol tables that are not reflected in the ELF
symtabs.
New features in other binary tools:
* The ar tool's previously unused l modifier is now used for
specifying dependencies of a static library. The arguments of
this option (or --record-libdeps long form option) will be
stored verbatim in the __.LIBDEP member of the archive, which
the linker may read at link time.
* Readelf can now display the contents of LTO symbol table
sections when asked to do so via the --lto-syms command line
option.
* Readelf now accepts the -C command line option to enable the
demangling of symbol names. In addition the --demangle=