ghc-ghc-devel-8.10.7-150500.3.2.5<>,tdO4p9|^h' /#+2|+Ӵx5?{Ӌl%y4*gkuW^7M,;s!bNGׅ.L禊ό?;OqH>F9v"~;CE;U%z Y x¹AWWHg_/ɥp^D窈Iu`AF":У2;kD;tswP-ǎ4.@XH5Ek(?' .b*~2q.G>B?d $ J 6<B|  0 ?x ^X M UthL!(8h90h:h>MT@M\FMdGMxHlXI8XY\(]^ b%c&^d&e&f&l&u&vE wG0xfyzDTX^Cghc-ghc-devel8.10.7150500.3.2.5Haskell ghc library development filesThis package provides the Haskell ghc library development files.dO4s390zp39/PSUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Languages/Otherhttps://www.haskell.org/ghc/linuxs390x/usr/bin/ghc-pkg-8.10.7 recache --no-user-package-db || :/usr/bin/ghc-pkg-8.10.7 recache --no-user-package-db || :^y^v^xQPPqnl WTTEEE6s6p6p555999222@@@ mjG%%%y?? ? zzzyvx"O"L"M"1"."-sss M J KaaaģĠĢlllX=X:X9000(((_\^LIKFwFtFvQQQHHHImIjIlA@@*** | y |`]g,,,),*GMGJGL4~4{4|OrOoOozzzC9C6C7BBB'C'@';eeea^^ [[[hhh{m{j{j'''.+,`]Ywtr"|"y"x S P OZWW.+&#  nnnBBB<9:SSS@@@+k+h+hYYYbbbzzz|||@@|@X#X W@@@TQS<<<SySvSp1116u6r6rB?=rrr>P>M>M.K.H.I> >>"""̋̈̉EmEjEl6%6"6#URS9;9899666 aaa۵۲۲KHHQNOspp+b+_+`}zy    0 - .QQQ+K+H$ @h@e@bIII&&&:::tq < < <  @=9TuTrTrFFFJ7J4J6qno#  jjj"" "    ###+ ++%_%\%\xuu66~6~444* **$##'=, , , =1=.=0###JJJ:::000>>>*U*R*U͛͘͜gEgBgD$$$8k8h8i/,,0 0 0 ~~~;;;FCC-z-w-yIFCmmmfcbyDyAyA[[[#4#1#1HHH5G5D5F666+((eee888EEE 5 2 3)&'r:r7r9,)*,,,!!!ooo9%9"9#SSSDuDrDs>">> lll---mzmwmy```[[[wbw_wqNMMrop666,,,PPPFFFc`[mmmr$r!r!# !XXXkk k [u[r[t>a>^>a'''5558(8%8,^^^FF~FDDD+++222%%%6R6O6PKHI\\\%%%&&&&l&i&ka+a(a wLwIwG222^*^'^(KHHc`bn}nzn{SSS?<=owotov${$x$t888JBJ?JB555,,,''' $C$@$@4)4&4(A@A=A="""0X0U0U\6\3\2nnnOhOeO\HEBfffdVdSd'C'@'@)))BBB@(@%@&! !MMHE111;;;c`^kkk~~~=:;`T`Q`V999eYeVeV###=:>*'(___'''NNNxuvhhhIFCmmmFF F f2f/f-#  {9{6{5daavvv_r_o_pXXXFCZܸܵܲllgbspm|| | 635sxsus{RjRgRj$!!(/(,(*ROT]Z[g#g gifeccc111y/y,y-D(D%D&x\xYxZ...a^iA2A/A1da^tt~t,#, ,4446!66777wwwa^_~~~{~|???<<<gde]]]333JCJ@J>!!!TTTBRBOBPTQRvj#Ohru$Tly v24&y%" XNs r)      |040&pu,*AGVo ,8)6x D Bk$Vl-K A*V>pF2RN awϩa3N6r`0e()0b5<<&>6?XTP%Ǔҫ #q g 3|GP=h??G3HV>g-  `G % M_K^o&X,67{xK' #9jAg(eac%.g%zs,Q- R4W !x1I`!"}?G ?<`n/20 $hmY=X) $ 7 r !: FC|W8[*0+Qi w /u m" i$S F(4|?ZW UF T1 z 94 C O^J!EBbR_ x|} @gwu7 3t$i[v/n8Pp$# R qTCie :<q+&_ͶxwMKM]"M`x  '   =.I*JD!>5'F6(6^)YM. tL X \c 772 ki,?A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤dNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNXdNdNdNdNdNXdNXdNWdNWdNXdNXdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNWdNWdNXdNWdNWdNXdNWdNWdNWdNXdNWdNWdNWdNWdNXdNXdNWdNWdNWdNXdNWdNXdNWdNXdNWdNWdNWdNWdNWdNXdNXdNWdNWdNWdNXdNWdNWdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNXdNWdNWdNWdNWdNXdNWdNXdNXdNXdNWdNWdNWdNXdNXdNWdNWdNWdNWdNWdNWdNWdNXdNWdNXdNWdNWdNWdNXdNWdNWdNXdNWdNXdNWdNWdNXdNWdNWdNWdNXdNWdNWdNWdNWdNXdNWdNXdNWdNWdNWdNWdNWdNWdNWdNXdNWdNWdNXdNXdNWdNXdNWdNXdNWdNWdNWdNXdNWdNWdNWdNWdNWdNWdNWdNXdNWdNXdNWdNWdNWdNWdNWdNWdNWdNXdNWdNWdNWdNXdNWdNWdNXdNXdNWdNXdNWdNXdNWdNXdNXdNWdNXdNXdNWdNXdNWdNXdNWdNWdNXdNWdNWdNWdNXdNWdNWdNXdNWdNXdNXdNXdNWdNWdNWdNXdNWdNXdNXdNWdNXdNXdNWdNWdNWdNXdNXdNXdNXdNXdNXdNWdNXdNWdNXdNWdNXdNXdNWdNWdNWdNWdNWdNXdNWdNWdNXdNWdNWdNXdNWdNXdNWdNWdNWdNXdNWdNWdNWdNXdNXdNXdNXdNWdNWdNWdNWdNWdNXdNWdNWdNXdNWdNWdNXdNWdNWdNWdNWdNWdNWdNWdNWdNXdNXdNWdNXdNXdNWdNWdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNWdNXdNXdNWdNWdNWdNXdNWdNXdNXdNWdNWdNXdNWdNWdNXdNXdNXdNXdNWdNXdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNWdNXdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNXdNWdNWdNWdNWdNWdNWdNWdNWdNWdNWdNXdNWdNXdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNXdNWdNWdNXdNXdNXdNWdNWdNWdNXdNXdNXdNWdNWdNWdNXdNWdNWdNWdNWdNWdNWdNWdNXdNXdNWdNXdNWdNWdNWdNXdNWdNWdNWdNWdNWdNWdNXdNWdNWdNWdNWdNXdNWdNWdNWdNWdNXdNWdNXdNXdNWdNWdNWdNXdNWdNWdNXdNWdNXdNXdNWdNWdNWdNXdNXdNWdNWdNWdNWdNXdNXdNWdNWdNWdNWdNWdNXdNXdNWdNWdNWdNWdNWdNXdNWdNXdNWdNWdNWdNWdNWdNWdNWdNXdNXdNWdNXdNWdNXdNXdNWdNWdNWdNXdNXdNWdNWdNXdNXdNWdNWdNXdNXdNXdNWdNWdNXdNXdNXdNWdNXdNWdNWdNWdNXdNWdNWdNWdNXdNWdNWdNWdNXdNWdNXdNWdNWdNXdNWdNWdNWdNWdNWdNXdNWdNXdNXdNWdNXdNWdNWdNXdNWdNWdNXb735a7f010be1af4d7f295727f8d05ff6430a808186f873f81d1a22f65f616607176fd3991e9bf97be2d8aceca921103b8eda006c449668bd79bb0e49cc5788812e03ae06f47b891da23e2656cdca2dcdcf3b0d009e4f6a90d0c61d6141c0e0106535244c230b701d2e0abc6bee1357c2b24c23ad48902a905ab9069d9da11e7620c41975b91d851f011a0dd700e905088d6c443cdeb275f1236c10bf8202d54899c4591f8341658f24c6cd916578c8fca11cc6a170a91fa3fca234b3029ff070fc11a3009704a1d140d80a1394a6338933cab9c7d40ddda9f9f2ec531e75d8130782c0e60c89843c0a9b055a2fb5d5c5a656bbcedcf15117d5f1bc5c97760604bdefc363fb7afebf8604d05e894d3208b911ffbe7999002f12e864aaaf3e78e1931fbb5aef80a1ef680b58294a21dd93a901e8f66ce507ed2432c88d624715db94fbc388ec457c0b21f9cdd4955e87cebe7986db6889dd15b384dc64253093dab6faddc7d0dd48899a93f0bab06f5cc7397a1d9a1133071c982aeb0b3181b478cbb9b44087996d464f007c184f8e0736999d60c2e110d62bdbb470321768733f38ef560308b687af5f2d28172938ddb14562e7a6c7f0436cd81f6c13c2b5e64d4b734ffb71babfd2462657638af85094de89a0672fe516441bef6f8fe65ed2861bcdba2516195020c79408c878da36603b2635d7d603b82a6c666bb7ed512d84f5120c0bb73b37f010dbe740dcd1f4feb0322fdcdb5492fd403d4263835f07c7514922febe6bacbbe9858b159a8f2d232b836fa5e7ed21c03ee93093500a464039590429d36c9095904d01f2ab8fa3f51417ba2fd675a4123693cabe34b9017edc561ac8fd17cfdf9f290a03d6db1ffa013400d5718201914ee53e7325efcc1d34e471b576bc815607f432f381f880ccadfb4021ed02afa60d81b9dce1a478125a4406274a8e68dbdc0531bf76e30d3689f274051cfa48c0df93ecd6de21884bf57cb8bc1de29ae939c0668f9a656007ce6552a437ec6b0f939db996f111df4c9b8b3a97ed19159ea0939b5f1ac76a7134a87939c0bc3e44f04f36bb18db427a7601fc9a32398aeffb6b18800755e3d9dfa81518cde360e5b6fe899a128727b497b5b5c6d54795791bc0f961b39e2b98f9e1a211cd16d2b05327f0d9cb9c0bed5b84ba684ab2a1301e246ee82d1f11307c986635f2cd351d065d4161a47baf273eb5787e24aa1a90c8510920fa37bbe5a3405e20460b4dc3049a2e60c040a363a6dc16d8561b19db3476210c690d3cb433c4ffa394fd5d20d2fcb484ad5d86f2d45377ff7fca3fdfbc2cb466c3b6f5f2ddd9a2c9805478d1508eadde3f836ad372a095f7284c0b4356034f902097fcfc00819f6c854a422402ed6e964ec3522cdab7bd79f9fd04225e43f36945f967f91501bd0d8cf646a970255f6ca517641999f43607f5a53a61475d33ab2be6fe6067b84ac8e74230fc68170ab0428f4263b990708df25740d1f5ab93b10bf621ba2a4ee8a6630153a34ac28accb87478ee609203e53223daccccfa2eb32c968691b79648a96c33f363c9c202b05420642b37738f70b0f7c10206e1b6166e62e04ab052d449cc9719d9596f0d349ff5fb6488f6b2539eb1bdd41b3719040cbccb80cc98d7089159f6c8097ce3082acc147a1df00ec2daebb7f095a23b1ed8e56398fedc5611f1b0535826b4253a5651fc6e5ece8adc078d9ded5f72c78b373e01b585406150cb930e0b338796af945364e15308e8111802bc2992964a669f937aa53d6e4fda2b7d6fff9e977886cb618bcb2b88fd44d2038253688775c7b5cab24dfd76a6e68a132aa47a4bdf5f9eb1a255d4f69e9df7cffd95ac4508afd4b956f0487aef321553184c4fe948acbeef9363dda1c6c28fe341a387b52041cf7e78a104dfe2c4ddfc63e70be534e9887c1b55497649f2e0332626eeb79a8f4bf9495733d700892a45a6405ca4de5ebea16de6c9af00d50752579e60d3728619ee4b060b8e787dcb1a248768a92a132af0133ab595449c9d9eca13cbfd299e87c5a9df897c5615580c2025fb39ef299d53e50173d69b91e11dde0fd88c38d3801cf4a193c525f6a808c1530f73291ad0037776827e62a2cf0a8fa55d72a9a32ad3dbeca9889fba498ecec17c31d845819360d3181828969d67528b407215a0649f4c95085b43068ae636f968309b6d292c5e9cdcb1c0d5a7ec8636240e2927b069671a749f6c9d70a92d3e187d14042b81c455114b3c0aeff757fc76f6567f851e2e4e77c5441c90a2dbbfb56b3deb38e5225531cab6624aec52e3a70b3cacf35dcd700021ac75db0ecb7bb6d4504879fbd00d52175f85b9e9ec199f301cee7c77f49a0147f48817c3d44eef2c76b2f8f976ea63983b988f9ec5e83cecb1ed20935c8eb4e26ae5a43f5df53308c58df514833861ba4b37d9868f28a5106d7dcf80a9bca8f9e0e22810a2864a02ce892602fd357b0fc9ef70fe9421ff418b6275012ed733a1ae0edc7b8321f0e9fa09163b79e014cf58a816efa98cfb56af5b7e6e73e269c544f6d893eafd8335a38c844d2ee35b609e2c7014b525d3ad479091b571c170e01d9c0978127bdc59297b89f5ec995ec22c825e8727a5b77bb1577b9dfe7a1c66770da7aaecaa0a1e63fb17e5e58474908ff0cd61b8556a92806b8bf60017d3cd7865deae6709812178e511823a417a0092670a745eace1558f1cdd1edbfa243d32adc036326f34e3b60bab90210986cd07620716b352501efaaf9c81fcdc26e1cfa0185e56e35595d3ce2f4a308e107e1a02d076ed47950ad30a2ef1480925ac71fe7c5597cc7aec2f06f1d3d36bf3e6dd996656d293f05fa076983e06a1a5f11efb2e6743d8091fef6d60238348505e8f9e9f40c1ca2f8a10607e7bf3a2cbd9322c1c2dc26e11c240e4b5f3055f03d15b8e7974c9ecfc2be5eec93da8aa93be925c8fecc33a5f3341b9115bb4ee93e1bf37286427ae9ab4d0a545115d6fb0fa80846799092926c7f3c1eb566995b83c98e3dd17be88de4e6da0819860857fbbc282bdc4aed96b59f2c1bbc0a096b69547be82a1a3968555646223d2eaf9600d1fbeb5802a0c6cc0154153cda457ad15e00dabb61e87d9c8ef5a7b0757a20ba9023d31c3a260db64355bfa85c83e089edc40fca2fc1c564b3d43d8354ccaaffa16305c181c6fc1819280e0f93bb58e0af9d4e9d20ec05f864c5e2c1febae47621ac61c55789f3d22a75f9c2d2edad59e7f67f9c5def552e06b02a9d4e6a1c7bb70abe894ca42fb47ac7c6a10b7be367f98ffea3c74fe3271555ac4ffdf21078004d3e00f102075e194c793b75e653948f13e7aead9eb4d8f83bb962abc5f17a2e9682dee0461d526be10eae946de2aac2e9269e8ebba8cb2a149a3e023850b924f52de4921bc33d2c33c866515c7001286108267484295b66123422ae89fe666c363d46d1afcb7a487d7f87375738015149fa62e81f0c5f4852b403c499e464470d93492d6b8842d90fc15b2a6e611ffce972631a2135bdb58ccd6c679033084005652f3efc18c731f620c70bbd3bb02bf5b421481d8c6cbec4b8f574e157660ff58480675bae676ea46b75d49f05aaad46dd67270a16df09bf2561e5619f199c3058a6c11876d2f7ba10f896a352ae439f0f0eeb4c24274e5fc770cac765c559628c3c12bf8bb029844fe2d057624510dbe5b5c4472d2688d925c4e67e4495e27961a116c1e699c0f98fa99154ff0fb820f885ebadcf8088a04efa62aee1e0b05e949bd4b7fb6a314ccb2e693eee6b9d2b2598cbbfe9cb119a785d7e46ef2940750c338661f1a7f37f66b322be06f0024ba1b8ed09df755059388312b5115d99ffea0767dc9cfd89bdcf74c22e4f9cf34fe853da1bff5438d9e7cab8d751cb767f7959110cc655a1972e0bb257cb05ae3e22c3fb721d168cbced6a26b8b2fb78ecbee8d3a87984d6c3a147a884294a296240252f8f9c4cf6a3cb5c2c133ef5ff6566338cf3121b674d8531d32691b712ddd5e4e397e75997f22d6a345a52479d87c56bf3dc311e0f64accd887c0cc21157588a705fd9070158984f68359d6f9de8bda93603bf0549841a14e7bdaeccddda3843c2b6bd0ea991574ff5cc03f15f5bc1f4dd43e3d48ce6f876b384669b1be34ad4075eed7597464cd0adf1b85aea69475ad6c305dec35966c59f571bea7c8ff838cc1b10434b4af47e41ecba4cd6b6db2b8143b90df55cd22a1fb0fe86d329db0848870312349e6b8fba5bcd38e892a90dfbf1ed859fe4311f2c1316867ec84c982deaff78d40086c2f06eb45e49a6a5047b4309dd403ddd3e39f30facb527585d5353431f054cefcceff90c006f67ccdd65afe371489af617f1180e1555a1e27b5b2c31602a56b5782357ea77a5c1b71aec36b107628c9c8382db31484766240d3f7f546ad25cd64fd9242ac93638cde547ebb864f0c6f2319ce897ef85bab8a9163f5dd00181efc2e8125e6f05c150800b05d23167ced9039acee5bdea1172ca95720183c20bb32f85fb98096dc1fc49bcc758d36600a9f8cdd2cdf4ec053f2e6ae3298dc95e0a856232db38b00d749cbec16a26992aa0a06bfdc12e39b0fd379b23622742a52e765701e36cd7e0972d1a36d007ae27cb52758cc543af0230ab3cf7425e3e304fc306026264ae44a089f268a6703d54337609cbb44d570e94e627c253faf76baaa5d2d3a68f2e4157f897e76cd87658a2c2a943b4535425ad5732f415580415dd6d32f742e9f72ad62bd90390b53faf84823f8ff513735de0dc9f9added0c5d36472f485d3adb21a63715350065dff68ee4e99698dbfa5f573044c526751cfb28fd28aa1d8dd33f652b9d3d4a59b20dd92ab668df7f607fef56171a72f09574ea9fc2bbe0977520d822b42ea8e6b0b7a4ad08a649a9aeff38baefcf3e66b0b66bdf28088fc80f7cd7dd295a0297115c31ecdb46988e6318ffd1ee1b47795fb91622fd4d369364aaf96815ccc6eea93fd4249eea151887f334d6d03c69d24173c7fa75e4812d4051fb1d6e7be6e6a9ac6958aeadb182903624ca8c92370a6f072979cf3660ecd5dffc2a951530fb882d93a5b3c2e2bacf635e0ee78a9fa764fe3ed522f431a305b031fe84b7e86fe2aa1af440774f5ae041a554adbe288b13707fe43882d942f329309916dc610e07e624ea09fc8e62f444168323377db4e1424c8ea616239732706ffc0c2d853cb10ab7510512b8ed3595c8f2d6d0fbcfbf8d8d937c811311055f1d01b9917b4cbbdd1d4fcd32d18a97bc05f255d71618911c235cd4680cfc3d99a44fb3789c4a742c2094873b038a22728d4cdc8271952de266acc9066c88fde5e413b74f3021d9fcdda563d28cb6ceb4865236d33355eec81b6aa8abc2f2a5e7c4f624790133d485ff2da6ac16b708b1243ea870f7eccca23d5bbe83322dd71ea31612c5af81954111f1e66cd516b8b567867b7004ee6c77e4d7cd2752bef771f1f65b516ab40fb8c7c5de5df0dbb7f0b5337a14f63e74d0d910a2ae54e08f89976bcfe3e5e80fce1dda3a6398cd87ded74ef26fd55344c5f324829af122c528c82021497b2e67a0a46810593610385077fab3c6ec40f7dbae1d68726a6e3d249e27d5b142bf267e9b501cd10a241bba1c17d6e029561bfee99b88ce422e2d13882a5fb3acdf49aa88bfceaa00f45c9114e2112a34406afad31e8a6678d8cf30f82a958e624429a81214716c5fe3075985d356e23aef2a4320be4b392e718cb3585d3e25a0c8a607dad1e2007d89898fb670f4b13f74bb59e15afa4aa87cdd58a4891c9e0e13ca6af7b198538aa584011cf253967e1554b618fbefffcfb284bdd0c04c29a246e58ffb025eb3a775ec5a917542ffbcb1221be3ea0ed23a03885dd36d744f0b80677dd91a882a9bd04f47236e3122105c57b020d6d2dac9706decb0180905bb42c292440ca474f49c1073e22c155322c98b8c17cfbd2909299e5a09769c8b5f4afc35da6a897d2ff790ae75765282432507bfd572cf6713779a0ebda830123a272a577a6aba510b95b9494ad9ac051a72e1aa94da8b51edcaafef59df517cd71f867b4708ae115084a37280a3964ed2911a6c1054931459281f523d6752bb772cd46e945c229577c9ed5f3487d990839a5582e3d46029cce65400c4c8fc403afcab888d6b98aa22daf4eeda4cd87883b4c4120ca31b298d10dda22c5b89cc065d8f7681e222f739a0a640e34bf8eba2618bf3536816859d39906ca436b7e222a55619c6ea9cde1d8621028e580c7c0f98966c02f27c68da7fe6bdc7fc1ced7383af8aae63cd1725c6fa3e9f8b5fca4e39d3762856daee10ceb990190d6375b2ffc93e7fcadae31e9bb491c9674c269233d3a5dfd6ed12c7f6d0f2cf95059801bc3dcda650bc9d1f4bbc9e4dfb86483d3dc3da1523177c629607516716831fa8c1f6668dd0f1e32c9469540169ac96b83074d968e03c35f7888968172b3d1867b205c9c379342d5c422b45fe4854a3446e29c9d832d54722bc6b2797f37d363f37143292122320f7c3ba25dd929fd3892e8fddb4def12c76e60af42ebf36ceb7e986a56657ee34cd2625772b7a383b376c9baceeac766119aa4fb7cfebca9753e96d992c2615e8896baf67ef0b28d8f1f9847950fdee989c29c9f8ab23d4d254b06d4729dbf096c17a8701215f06296e7f500ee6ef8cf737253bddb05cee207e3ee96766f945e147735d9d0e7526de9394e80a4c421d434a7e40671f052fee43d32b382ddd05734fd7a301f8ff414c4cf16729b9888702d25719a837c2df68ebfe1a533cb1dc4f39a785ba23a05fc707de13d734faf8e95e1c2191acd2e3b62494f51ce4fee24a4c5864da82b0365d16bf1fc8821d8ce289b72898a411ca127dd32f27c13e264349a40289fd8a50c4e5c076eb8e224aa21d7119b22a07a5c3a3925fbbede6ffbd7e5163996ee84deb91dd75112f7ca4660acb78d7b7abf221373eacece63905e4d818eb2ccd12808156f975a3bda94a6730a7d3d66bcc5515d50775d204286c800460a785f0f27c480db363ed0e5dbfbf4d912daa814a297ad95a64f57f17a1f7854478c0e6ffea5c2de24ab5318e94b31dbcab9c107e1275c90087cc943fe55d08cb6c7ed18b0d03e8b727431339d802587b7af80845609267ba5d748db7407e3ad009f3806e8f48c169d503f24ff2dcb86f937b74c1e4067ef7a2a887e45832583f87d1267521198fc0068aaa2e83dcebb0adb0ac6514182c35a09587fab2fb41ae51f6f934d495d39867e6134d97016027b287e1427d440908e0202c15a347803a1e99c5e5e88e2daf48abc6cc9433b949a1025f7dbd057441e9d8585d57ce571216a97ea53da59dca49702524e74400f1ba7e224bca4995c9f41c3cee8e0e6d5171a88a8d028bf7ba9630529c98d4eda9d9852a3f578c8a74b3bf9703b6e6fd0166d10c7d790937cb9df5e7b6b9b2608210f945a9b2f05cc35f478cbc8a2aa0e8e0137624fe2af00080507c1d80599744fa8ad29820bd121718e38e84bc1aff4e2d111a62631e838298a0cab573c6c5bad64708a6afe895040d917c1ac102d412acf99201cd14e44d95d62f643da73d9ccc4683b847414ce2bd45ab2f746fff54a66f08a45a3a5e081161e72c1e3cc14f172d4ad79a86dd9b0bf585ac07ebe95b8fe3abc782fbfd3c37d075be9e58255f55443c1b4c94f3547528eaac9b501e5ca028c3db1b55ad4974ddd8dec15f963db863b0a09c2d419940f568b6e21aa3de4445c41a8c07532d8e2753f5036398ccec6330ec78a065e6d8b58bbbb424b0b1b286a1b70728170ba27c96173dadb4cccbd4f3d60a76b4519b4a2ea4c5031aaad13274c060fb348e3a3347d238e8d510df20bb1a6b1a258a52a72943e73bc13abd888045e3b5225748134e8362a058d5a9accd5b72d2f3f2a7be8ef5f8b3697a877d85aa2afc046436a469d63c24ca8a17f4079ed6f903c942f1e3486ef58ad4a31c65fdf326fb9285c2c009f6cac11d9a66173d7007a1a98c76f781a6304b0b3006d247db3269d5c2d231653dbe1e88641df1aa0fa68724d2ee55ec22d56ae108ba5f28d06f9f3d859e7becc421307c6aaa08d5ddb5546e43576b2c22334b8a0870fd9ec3e1c7e1abf53adb6e3ff462c65eea3c54beae430dbb8d5b14317f47d34744b370229adb0f5bce8a58f5cd5710471c500968c7296be9186640b49cb15905661db60c888b9cf7045878878286177b9f9dfbd4b718e85971f341bd6e091636c19d8a02a808c1054c23bc30e33366385eccd78587d53dec9b827ef7e771530092d17eedbe3d5b2bcb350f4de8bab5aeb87d9ab315ad31ffd95d625d81d2c6563c8fde95086e9c1913a8b700e61f0bca68de0c101e092dce4c2aa61d07f1a1dd1ef75c9d923151eba6c880658d7ad88476b7e730c3f65c88cf05fe65486b51478ea7ab566bede2e7744513b2240fcd96a837630bd1a94a2d9980a0e6760f967712db60cc7d59f271ecd2a41757aeca855d55855d56693f49417d375360dafa6252b5bd19d9571bb9a71270ffff685940b39ed7fddc1b3bdbbc081ce20aa30deab4f249b020634ce9002aaab17e958b9103ede96944ed374b13bd0d2889ecebf25b3dc5e641ed65fad64dfe2dad909685b89245e466ebe9aa2f1ef1c471bdd53a09b221b94aacee70a8f940d6aa48ae47da396d1490efa77d20db8c441b3ec9e42dd6558f3138dd97fe86bdb7e43d9a5388346d5fc02c25f1f0905e4f93108399c5ca48c7b288e5ccaef2a874c3e9ec3af26c1dc11bf033923db4dba7898fea9ef7aea1a378f0b72d631c6e0721645d467a490a1faceb3cc2a3042bc12f4d8da3d0f1b7bfa0ab37b8e34526d77b06b38818899c47e814e560288ea6aa38e22abba27a7e33e9a6d5ac3eeeb4f92df253cd6b388f4e1ed1c200dc3001e8142e43bc007b1f03ccdb2505ec585c430767dc4aaa3777cfba40a032c6830bc5ef231343605cfc528af64528c95489fa06c72359e989c97a372f83231400a5459c235b73677fd15991d593cda28117421f15b3ca4c6ae666db293b2e727ec0e2f1d424895cda1ea445f6b22c1972fa84dfa7f293143adf8a08f2c970447595c290dfe272817b059904b0e8f93ca187da17e7f11f361cc92de8df41c79fd89d368345e1d4e08b561197258d85927028f1c5ef2c2e64a29e774082aee7410fa035cb2811635b9310443a5da092f619d94b5de461bfaeb9f0c89ce02d6bb6faf795a2d604be39128eca8baa4cbdf1e68e021ce0f7969e2a31252ce7631acf35013dc9060f7f86c54549b39713d2e4020b35248a789752fa2d65d547aacade7d5fa6743bf25f7717c6b40506c069fa1e6d1ccc45c638b37199fef2247efdaed9a906b3a54448b4d3b83d33746e887c4b8a0abdcb77e34749f4bdfbaad7b5ee1ceafde93c0c8772e015b71e6772591b56dec0c8db2a8c11a3f29151f91f67b70b4ce22218ea7e861db50253006186a0bfb4f7354fac7f25c19dcdf3bd942ecce5f9b91e3c77faad7f0a7cc567a168b6d1e204d7949fd4de79488b01915a01a15f349203eb198bc18c8f18c60b3d610228500cde92fbdbe688d23e85105f2716fb0ce1058ad8ca1261c8c7d64c17a1df83731109b3eedbe2fea8b3e66f79d5cb480ca0e8eaef3d3b8d47301e9841c28cdb3ae84500377332ec792bc7b981e5a99272ef4c4a8200d64d13b4c8a1fafda5a68773af0867b6044b57ea763f78675aa6bb51d9a63c522ec766dd0a0cdaa9b732bf261e3411a0fbfc4ccfb7444bfceb13d64ad787bd367b2e89e36f4c82b1bc96936f8f4cf0e6385e49a6acedbf51dad4ed1deebb4f739bb328a587411a5a5363c9b4f73c34a889488059fd076ae59d38a206d759509d1106503d926017538937b23de03315345bffd501f49d0ffb121e40ffc733dd16c7f0ab8b653d24eba572dcdf99c4188ee0d42df466be2feadeeca54d437384128dbb30b3fe330b34663c14620aef4a83bfbb54dc12ee0875af082ab9e1af6d731539f4eb6140c67bff67baa6bbd7e949b16954dd9611e9f42608f8da87e254d5925481b9d019a73af3556030a477c4a4446159bb359a2786bc379b8deed9498fd970ae43ae6cbc2ad4eefb61ba1530ae3bc60d1a50e4db1b47ac983e7f408e21024030136ed6909ef77e1c17178811b27864d17c70c027004495350404ee041af933081aad692c449fc9ff6a2a712b3460c6cec6c94994d97bd95fe9edc676d28eeecc8493eca8d3ba331faad9381e5b678c6994343199e9382887cd15ee00da238e0bcd85fb72898ae60f41057fa7c8f4a4e892c043999fff22401c41afa4905c0f6e9103bb5f908016ff21ba144e8c4f956564301e917e6a4de5cc0d3e0ed361cfc899b60f42fd23919fb854bbf45612756ddb1add6d52a71ef2a3a32744fc520726706a44fe0d862519e841233211444321f1191fc3e2de3f8feff9912a14ca5edd08bb342425aa3a93dbcbd60720670e36e43798d3ebf565ca6210a6180454d6bad61749d420fb916d84b34171122bb6898ea69704c206f86ce7ee8c4b14d8ffa76b3e3852f2b47a91666ccbb89f829f0f6c14dc5a180ae2bf5e1fec92b47b16cf305fd6f5341d9089c7c42224c56fb6cb351fef1a6ce41903515bd3c3e7fc4fe68e38d7c75b26c52b7f8ab9aea0bfac65da54a637d57415e6d169178fb7a52af9325e23e6f424b8ced27e5b1783e8bd1c7d01543dfd05f84888bfad1d0aebb6bf6a9f0a210cf2a73fa7e9836d2d4622f7c8be382e05fd27224597cc87c9876f43b9b316baf1b4b4d443a0d61755c10fb60fa862c8141b1dae9fedb3ec5e2c23f93305fc5ed3eb04a1caccdd960ced8d40e40d26dcc235b4361683105173a39a08e514a0408821b5a74c559754d622a3da946469670ce9a95f32744af55b3c20450fb42d6e26f8803e49a724ff5f94640d4c42dc81608d3ebf9906b9b5155f36c91972859b46a721149260976bb3ad436cd7864f603487b8890769ebf30f7924e6545c8998a3348b1076d115d5b7de1e1a8a3a3e6969118690e6e4138809c78095fda2b9abe7a4d8959a33794aab796816dcfde18c601c9b6de700d638b45144090f7f541e3d82eb876cf137a6cd9c2607c03a7a8ee5a3387698951316543c0f417d3a11f49c18940f4efb2bb795fa515d0e1d9d3d777c0460a89d624855405a83b2154ef6ddfaec2882ea528869a06cf70989efcabcb610a90a259c8533fb0ec21146903057a99026fcdcbfeda193b0230aac0a8dff72e8aeb12ea61a5825c4a42a8a0b591734fd956e0d2fa9469b5be308732de5a12c01e1942ad288d218659e26cb24dc0517212f7b0cc4eb3afebe161d3b6ab59097a5829877428d49f4b1d4068a9ab042a45a24e8abc76decc06e43bf311de2d86fe7906d79b0b59df723c4c03bc04fa7f50838055f305249c12e8125abe24f189696667d8c7f47a08f262e7852b96590c25d89a9a565f64accdf69a713ce2017b59af994ed4e496f8f10394b62e7c0ba7ee826eb9b6f1d55f904e9c00de7fb40f7e398382815374b9f3e8eee02eecb88c6b730ccb9df6776f60c424628427e5b22dc77f8cdd47520fc48227d56e0d329c440567bbd795541901ed3d629bbdfa3264d2d501f2b63c0c5d472298010530ffd03411ea20bba759c7585b29f2e0552905b6bea2cb8d63043e85e520c6ee730c4838dcf366ced18c07ad6ed1096c72095eab823622e30f0af98b793772f29a33a323842d0f40c0e7cb332e5447942a1a52426146e8baef6f00b2be8e1ca2a7872c56fd08cf6366d0cbe15c0d3999fb154fea9e6ecd59765531434e28291048641ebf0336aa858e7204d9040281c0393cf186e74da0704c5273fe2633ee5a71e457af800dc6ad9ca8292bb23c93fefa2fd2598cc49d2cd3f5daa409782fe4f960372915d161b2a4696212e5281dc6ff444943b4a2ebde46799273427132a5d208026e3534d333b210bda2eec1300ab17492fede5d5be8aa0c5212ed64ab9841c3639a6f008bfb7d6a969dac32d611a3fe90796a3e4323218546676cb556c46bc499367a6799aac546112c0032db697d6543b29392186af73f1a7cb0037e5db2ce5a8f0ca4b9dd448f8bdb1ffd8a29dcd51cf9c78570dda1d2a3bcfbd00361919a637314f97b7fc36edbec00d5e184bcebc272f0cd4673deae63ea6d055998e3854b25494eaa8837ecb76912b90135a0b00c355285c3f5f7b5e097feecb25f18c8cca2383ba87b875cb6f0666b8be4938f19c847aa2fe5f61490c1cc5c01447e4bad36422df31a9066bedac77df48606737ff49d2e5dbba6281aace77ea41b7427ea73efcab07dfd24bc1a2040d151c492ba17bfe196a8dc79ebb50be43ea0750fae802ada4782b032cd5bb575b1f9886d04d8a6d60f083785965d2e86aa738411b79afcf41cae7c1e4eb2096239a3370519ef84cdc02145abd1f80aaabdb97f3a6d6c7cecfe5d34afe426bfb7e6f2fce578dbc8190a6032958e49d698ca20b07b5162d8e959946c1c86dc6ffe60589c31d2a43e8b744bddec1e5aee196cdbdd4e0d551068c9985abc1cbd2b7c88f94763e1c9565324bf83451a303e981b9dafed34355586d569db871fafbe13f9a0232c517895b9d0b65c4a6f64df5387e3bdf0179dfc841362361a8ee5e72315fa0a2e92f16b6f570a2990544e133f763c6c5cbf2004510e1c1cdeb742a6e7eb48730dd0f3440d18bf131f20dade19fe6bb60fe238fa2003af34d2927435cc5572a77e252c93a2abaa724d2c789a1277b67c3bbcd1d71b55a3e2a30f30347a03af09a627650987431d6c001a1d74aa4d4246333fb55ce210949c93fe971c61a73e37f3ac874cce2fd94885a4448074f51ac9928230640f7d83fc992d84040a187bbdc0aa50a15707722f98545697cf955b4a8fcffbfa7537240d70c5ec6ea65815a7439dbd4f31999b97b9b3f8cae70926232ed6e82ec769545d87db9caa3ac06f4350a957a9b0602dc87583a6a11bd5bba62eac2c08dfd043cb4d4b91830f91d9e929f92ce13a5aa877ce04d975cb51fbeebf09b0d1b3180c7656f2979c319e180e32fcc1844303e5a1d71238b03de2f91de192888adb91afd16e63fb9addc43d00cdfae7db99417370da21986b36a23a89f66ba80a98937cd5590c6c0cb5da98a825e705b6b986579dcc7126a2454f2e925e94cbda9f488d3cd1865196ed8c592505f68d2e408058c4a3e32df28372b1ab4ea63954358687fcc141c4d751b9d91c0981b42575ae87fa13a5826f3b6c2c97d9a4d1f0403661aa403f3e502f5ea5c62ba2eaca88b06d8d5e53cf1d94816cfd69c3acf32b7a5963d9367821e57702e221d6d3401fabc4369bdee7145ad532c00c005abf519aaf3f50fe8ea8f5f76136932107cc38abdeb401b00cc648561ead4213b2dfb1c3910b794b54c2f49578817e89cc6f457eda252196dbc7a88f2ed43cc748c1e949a674767d76cad9a03d9b178b1c951e991868073b4798df0c164ebe355cf21b3b9193e44252d7f8ef1a1c4da039742961b08c48a3fb5e465b648c456bd8f2878389aefcbda28c17d88407054ff671d4b6962c28a80ea0018dddfb25731c498d8234e9de33f2522aa3eddba4a12caba79579856a7cc6eeea924505fec55b303154fc64f2962b77dd47114d5172b471af5077cc5bcc07abda24bc88dc096ea7088cf1f80c03b7fd4f8a8ec0e31c2bc8697fc78056102b0946fadcfa5dc48e6536fbb30c750fdc9b9486f80ee685179478c7fb29e6ca32dc10e437231e7eee5a282359e8d3cd4ca29648036ba15eb2246e6fd1fd75db24659d4989259ace9a5f8b68be72f609d417810e5026947c29ee747db994b97432d6dcc8ace619b7ca90cfa65e25b3759d587998e81a1d27a7ed24e7b4ab4c405078e342d16e59aa5e622164b5fa09f0693e3ce5a20dc04c4d9963d4ce9cc800252fd442bf6f20928a821ccac90d0d1f42bd9159678501c9fca4e1cfa60299545a5548b17d593e5248f24dafcd3f9d3d5ea3d6163a26657a682916aad9ea51d9889eb0d45ecdf62e7b24802e13d2d3a2642d6e9bc919778e16656bc44a6ae5c7d15a2f8db8233652f61ea84416831190b351d8c57248b81249fbcf1c1fff5cfc5586e40006cc0387f9fa564fe87dc2b298e357571728379b1c79100b45f8b73fc11bc9884987400f5745c51946c2fa804b5ebc568d6a0c8bf7210e882d5f8aa7e4267eed8f9c59038142407800fa7af8d1e46c7fcaaf8af8ba57e868a45d7f6caf9b2851940e4950f6f4c4cf7521a83b0277d73e81734c0068c09857fb459bbd9725e9fe5c4092284e5926a14cc5a3061674a70c0d40963421462e731ef12b24943a19f4e284e753e2989c96428776974f476277894743869d8d716632428085080533ac83a21ae14f4a112eab68a9d9b2872484895155cc3d4be8ca4f480d7ede98ebf37f148f600549c3315db0de3b947079010418368ac7de80e0fcfdad11d23fdeff531011a87153196dc5bb9f710c47755d97e6bb193c118118a6353d00692f7c9bbf577270fcc4fcfd0e9e9a735f9a8a1b95f79095dab5303fe89f0548369911d0cb1a495dfab92d5bfc7fcdfafde0ff4e99f42ebf6c8e776c24ca58c7ee029efda90cad343a1583ba59332fe247a00973d0bc9bd49cdfbf675bd06d5b13cf04dc814ededc39565a4d779c8a997dbcd43afc1b169269f06ffe1e214a3c51f70027ba2557df8f2999f5f7caf482071005b6218bf80478d21e21689a3da5685b2774c1a40062506da5fbc513b231c08a406d5f7e18be5b6b1a685fa16ba6b24b5a84939317bfc928eadb4289b5288633f682a68aa5050051a7d67b97be82212bd80e8c09226169403c2ec3dd688b64c964d3b14cbb478b20c735866c214bd91b4e628c190e47e940a699d6ef844c2d8e54d9b4bbcf3b46debc318a78db9c1036105a72e2b2360d9dbe66bdd1cc620631b8ed4c2c07b305830923209b203c59720f50b95f1f48e771e2a52680248f387357bcee7ce8e2492bd707f3c69f861006e788dcbde96b5135bbffac3d32831b9a50311fb7c071343431e624da99bec61586e7cda7674dca93e6e43e6004744d5b6e82a6a9ccd0c7bd398cca9aa9df7bf8712cfa9b112b6b4081e80ab019f7344c42f73255f319795966f622195002453299b4bdf523c0a7fd40d0cf9a987500e77bcbf50dc5b72894c8dec9c6c1f502b7bd1ee5bbba7f335b2f3c3b8170dba203da50e8b48d35ff723e169272ebad67fec8abc9c74235403e2ecf655f2a1a7432c2270e2b92ba47630e796baf629feb4f889995539982563d5bfa99d0a33948a5808e6819bf654f5f5a64f829cd05f0ea7914b266afa9588c808d7ef335b6ea7707143416f71be31096614d8df4beee627b6892e5a6ac2aaf9c9be568f422d92b1ef879a8965f6a964ae3bc186af17cbffc3fb91fc01d34de178e8a04cd22ce73bb7f14677a28251e6fa861aba907bdfa65d750e6b71ffdd524f14bbd549e4d3caa1c80410aa3ff8358d9b0c23d7db0d7affab22e81d4e3a445c8ecec91b3fd7298806abdc32323fc5f668fef87e498f7a38fe54b5fc15dd3f6b2a592240fcfd159c9820169c1e2375d8b4c57717ab780e079f84538e7c33372e6517056fc00a4587caee8309dec4489bbf8f0a4e954578995acd3cd903aadc1c19f7e6126c2f18ee94863bfbe6fb2c651052b3bc59f8d78cb201c970a8942c0796eb2d63b0f29c04cdc3e78f31628d0fcc1ebc16644505ba22bc5c063d98a4338d0ee5376afa0df075f622ff9cf8644eb03e28fb323b1e25cb9ead62e1103195a223858b7d1ab69fd2630ad326ab86e5ac8ab5e37395fd91cf8d3c574e5f1348dd252972a9478c4add13ba37aefd114775761bbaa78c6e30ef073529f860298f51d4b07bde3fc5b2adbe4ec57265cdecef1d710202b8cb0bcca17c45f8e55b3d3ae7f113d17ddf176af23db5366139ed1fb12155bd400e806462f008caa65bd456cf7cc57104baa002c82b12f624545916a3ef6c6ca885e1258f296c69ff484167cac0ab6065a27669d7c390b31ac8b58700c02cb81f102e70a4147b530d0b173777ca231793d06a09635ca0840e80b31da9eb50a45515e7638d622e394a087e64714897e7e3077e21afe2e4c44eb66424f268c60b92655a11592982df8894869d34fd2ff96283c51ac2630a44e065062d400257f3c6815002fdc94c10065f03dd99ce33f41783d7226c284b5565eec322ea1af0a061f64795a5d2d2fb3667d19b5a6752e643456b1d7bd5d6afdc84b3d8c3001d6bd3dfbdcec6b4ca27c9979056ff33797dff80f13a53563cd0930a5bd6f9a2c626a7f3ba3bced283d88e09f8a0500b5f5f1b9448d2bcaed5e4e9b10d22a2577a75406beeeee485da744d4d8a5486344bdadbb17ed83a370f234722d956c9b66df0f28e0c4f04e0f1ae65866bb2f0eee9698bfedbe941fbc3da9ed7847c70db3d7f20a2a22d9245e3871b17c3ed75b70132c8ebbcf25fa96fd42410aec9ca0ec1563fcc9fbcf831c82edad867e08eb00fc0491c99e45bfd8849077e68af67403986bbb5f781fd7955ebe4e314f861833b4605f950ad2dbf12f0825d0e8f435bd6481f43dde355664e1c016c4f0ae3f4585c8ea8f99d60b220de63c1faa15b60ea153981789fc1e0e7ac154ee5bbb314f11439527a5039f64b60d28003be5e4cd0fa15c73b54d2bed2c0c35c7ab525e42c89c5f3d2d52c9a1738dcffe228f87b4fd543b3a6c94868cc470564d506846b3d5821728c317be91faa66e7312d5e4a7845ac3aaa9db7387eda1bbbeb377d7013263571acace31468efd32c41617308c9f0529c55a954cf8bf551111bcdeb0ce3bde883aad50438c84a948f07f2cb79a32670534bec117a8ff8cd8fb558b9cdfe29657905f318108896cf0851ffe398aa0ab033b9d4ef53cb1724d1581aebe29d88e4740dfd74d4ed555717426c4bc2a72e3bbb1b5aba83ec2d1d2a1a256c502f00d3ffda0b8986f6e3a3500ba7c008c2bdf6831112dda5bb96f26167278b5ea0c5def5e9e0c9c57b61082a71ce016b2fcf324c4baad6369a912c6e82f8cc08716aa3271fc5663672c0c2fa1e99c860c42414c3e16f8fb05ba96aeb1fe4b2e3b52b771d8dfe317a5ac4a92d00c357dbc8e70f4796a4d7afd13eb0ee781587d8674bbcc8c00e0ab26881edeb5f7d09c4f912c3b70baa77e4071b652f8b09308f19a3e7c1380d796bd924460a6c207bc947c1536cb07f9901f0944b3589c9f8bc44fc19b5fe006c0d2288bd77e57f14b80f21a40981ccbd869cf03560a6f71ddaaaf7b1975d05434e65bfe72fc3ca61629bf8985f73ad91fbcfab84a15275df64c3b70c16c007d2677987d426839a53cba5c4c1dd8b98e5f3752a938604e28b346f99294f655f1fb3e36de90cd35bcf8b5c1dcd3cbdb0a87e4899b0c99fb3599cf336e1bcc9fb5d1426d0c70918c83228093e72d6bfb6c9d65a640a6b8158fa9082972db7ab74eea2a58d09e864e5588b915facb55653faddfd04b1c2ad69e6486446f69bf6a09c790593eab0f97c7ca1ec4f71dc2019d0fce85fe4e6617a9c60fd2fedf9dbc4510cdc23f0b9ef31f0926df6e16b2668317976780e4dd2c8090d3b1845f4a47f60164a9026fe1d2f58aaa049400dc12bd84d70ee36b8ffcfce9dd3b40860f19d79db2c5c4af600350f59991b4f79ce04217ac031b170f7a202d8bf8f2a98c7bc6339c6de58d55b8d52200da855f033664f5e5c4db659930bb71ac5b6e52b45cd3a53b544321d32818aa1bb0404116dfc42f57a5f487c200496180bd92b29b60e0c6646c18403e673c15e572356296be7ed1c447748e70f60c1a29008b6ebf2e80151117f567092c9cda2e05d4a5ac1286363cecd5595c161958bb6d2eabbc73d9955e1305248d8fa228e1d4368c29d7a33b2fdab991be546ac2c3e0d7e69148155ad6dbb2616495d8bedc7a46930ad94eac40a75d1ea5e12e810c56638044e5b0cfefee43e415b44f4f5d6ac453747531d0bdf515ae38a1f20830eadad293ef1944a5413b26680ac6cc54308ce4595759de5c737b92f9a56834bcb948f3caf4745adb0e1ec9dd28863d34d3c6dcd3c4077295ddbbb8f390e96773441235eb3595e8ef87cee7f715d6e19f9d946091a23ac97b02d47ed0469aef422fb7a45784bc2cc8a962dadbdba64c978b651d8020b4febb5e48e58b6ac3747b6c3f957e5620f5e17f6655f2b1b90a68039a0ce51351fed5a08c98da3fcdc821f787e12e438c1bf693f071eb20a87b20d1cb46eee52179b846b4110ee312fd0405d08e8a0f9b60990f8a809cf1c50d744b98bab4f18ec6772d5f71931b95f3fc4404b35c7b32a7bdf6abf7eece11028b360bbb9db8590afa7f0900c343e53933595e4c08603bfbbbfd9d90d9408ecdfb7820c42e4d5581a618f0b898837b11044f4ecc76bc8c15e95f02996038c25bd7281a9509e629c135074958d5cb6ca040e59335b73dc85429d9e240f340df681279c64e4bc9fd3578e20c6f4d09b272d4838e1198041f2b2c05c7093b9a5650df011c409ae01500e9ae74f69143e00fb17f0502370370bf79c8e47e556da136bebfcbe8879ba4924eeeea9890f4418cfc09c9eed38bd695cb46d05031af7cb189451e13f874aabb9e96a5c93f26810c75f4978af81ae904dec63ae99a7bf38ac9106e7ce9be288a0e3accbca3df7684991c6dbbc5f6e03978232fa56bae9296c0b4b194c1b62e94c1e33d26de014daaca039e8c642827deb311fac6c5a34e2a8cdb100b141cc2d9442f27192e84271a182b1c606cc5beeb9756a5d7bffaa7ed671a3c670750e1c01d99970206dd776b9db6f0348badbbee32089e3de54b9c570b572b7762931d0fd71c51994dd28d55b72771c807fc3c0ca0f501cd888009057a901eb0ea333018def368c1ad05a32a0f1a6e3a843aa63f6617b9eb4a866c7924b996fac7c320a00b3c2918543b1bd5b7de444c9e685334f8517c40386f1cad89e26d58c666904bc8de08cbb7cefbb259255cbc8121225dddf8b08090ab2cfea2217d60685a6cc1bf3c5d1fe98d8f09a47b8c147cf75551c049284a741a944b9a71ce19aa0f212d4eef2c56ea7574f8d2f2d2c88aef74e9be88552316deb5df2fa7453fc9eaa695e09634ac1d63bf93be15bd129dafa0cbf54dc5dc6ffc3fde9ce7e1225e9dbbad6224f1289a3373d925730b1b4eed914dd4127be99729b539f9e6c888b4d48b0e8e0276fb9482225264920da6b23c976da8c50a6528f4aab902a266c20adc22aaa684bcfde4a0e1c19d6cfad3e90bd16f58fde84dfae2c3a16a4eaf5d6fb950213a18561190dc8e19b0fb39e06da4b5ccc378ce9094b81c7bcc39e6682a728b9f827d73a3206055fb9b2ed0e9565339dfa188fe899e0c2714953c4ca610645792b807238b06c1bec5f3322e35a13a72354d863014ee99e8dc055524552f6b93c1d5127684a245aff8000b78b988b2649601fefa29be6dea45989aefb7dfa24848fa69fb4196e3276caffbf3d8a2f8e733cfae8efc845ae93d4d3784a688ac756af0c5ec94c242df9bf7ceecf42aa1a58c43c3ed562e1ca10242621002e7d67399dfc5b9749ab120e2ff9014e89f42a989ab30863578e42ea9188b8ff4cb63c1e56361f93d04925db944692bdf3db773f644ad627f9ebc30cc353de13d5eda71c9e3ef036103e8145a1c5f0a9251522fcd5d02e131e069b34ed45d680f1ae2327ddc0d2915a90418b7abe6d1e2326a8f2b3b3ad66c2e3401ca774e7b04d0c16017926bdfeac970863b8021e535cd1c227305ad362e15711079c2f4bfa8692e5bece1b29e87eda060ddc51e3ca7602484845315b2fb77ed39d0cd577259d8fcc929613db60a0fe5177801a8d3b3c31d7e9f79ede0c75af09c7d07e3a3b651cfe46fd3bcb91fe8ad1c0285f4991ac2a51ad2c260b928a42783aa8625262584457518fcadb9ac70c0ca66885593369dea6ccb489cc812693664421f8b8b02c35e475732a4eca5070075873cfe21f40cac5d65f7263f27835c934757bd04a259a5041fb77bd2639105e994caf968dcb64c752575d0897e74a5857c1fdd4ba17122f59685c822716c841b5090a468cb117706fa7d0cc08631f0de2a8327c336fea9c0415fbd9883888b0cefd06ac14dac742c20f7eaf837ddad9a9d24271d8188b78596718e1aabfe3f067b6ec54809a78527724ae17fa1b227878232a4a607356fb2f3053c3cc61069378df7e5b49a624b317d699039f3d2a479904dd047c92a55ad192fdad718ab334b15127758275dacb71e22a5779ec60265161be9b6d2717351952cafa547917684d03c2d157bcb10e2b4d48652062993b20b185ef31d5c9beb87d121bbf7f5a1c1ba45b979b2a4878046687ff6a3a913339ecc02686dd9ef3685671ec78a00243103cc613a515c4d5b8241debc54106a420690b8fcfd7bfcf77ef6dae20a9e194df5afdae3ca0d67416e4e9a1273a77658947f6b2a0f02cfeae99cd3809ba30e052a1b461b0b97e36c894580271d1b1143ae3662f97a5aae4a3e96c13d23ff88d07785b8f0ad8968fcdbc881562a379fe3857741e8ce2fc0d6f7376c3cacd34d462e928ea4ec050d12d0f740f11485aaf41e1f6b51474c1ff701ff5bf0ddf54caa8d5eba9c598c765792c0b53c8ab394d016ec5a83243887b58ed32f789fb6113d9d44b6249970cc86701696edb00ecaeb9d789ebe46d1e318cde06003357978fe39e704d24c75e185d7e06642727be7f6b59caa03d49fbfc373a8260c7e2e45f53f5d678ea4d489a3d598ba99e63a0ebe51df9cc1478bc698fd6c15b33f10cefd4a163f8c22f4eaa5bbcd99c1386b6317c9e806a6f84903d3aa2a9f806957a4ce0bdf7947960df13409b4b7bfb0a2fea88695a89ab33edbd6f6f92173fa6b6e4a653c6f23a3a5a8e1adb1395cc2b750d669fa0bc82410c47a9ce5cbf0bacb00ce3c760a3c0a76515b0def9792bc94b4adda21c535a228a5263ea1ec71f43ca8f7bb8714dc7b51ad9c3504eb114504f3b05cf0bf547c422239892cb67d5ffa9e2ef567052c4bdedbc1a837f1489863e53978342e2add54f012be74221b823a9a9ecd9f39c6992a42f6419ef7ee990c8f4583eb12f06957e8834cb431560dd371176ccabba88f6331d1e68745ec38244b63e29e31de64dd5f64e7b36bb80b7ea04815d3cda66e760e19881d5da415eda17d9e961bf0db60bfe623ae208ab611d092f3b17e49b60f197a1b26aa0cc8deec54391e46f67fae8456c5a24304b254fb321fd0bb0d48d10c45d3a4c2e3b1b4f43cccd311c4d83fee3009efca02c04945800ec5d9f038746f5543a7068d717d01e8bfd74e10f5104252b4a0df9530ab59c974cc183ec02eb7d7031a3ba7349ebc8e8312e07fab552bcb0a8df4408f7da02ebbd8e0401251d3ba3a6f254e7a99987cf40b30fb53d98bebf14817190236cbb8a23bb184654ec324cf8b7c5d437c86b078e9ac00fd5f0ca3a348d9b867a46397b39a474d7c928aad9d9e50f24e722698747a0957ad661452c72e068a329d2cc8e82ae4ff730fedba8813dee1e0e68be21e9c02dbde24146e2646f8a108facf6db84304afd0b96f930848af12c4ce042fbfe6f62890b9c1df220ebcf7597708e154150abf7bcad96efefc596523423b63a87b675f85add3a33fc21a6ac703475eec380c8d1de5b60f0327672abf719bcea7eafbb21c44e8f769a75e22f9b550c748b01d4aee2adc9fc98247b9bf54e0ddb9980d5569e41ec45d39e2bd1ac9eb3e0a722154a55bc8f8414241a95f0e4b86eb6f58227bdce9ed1681ac68047e85a2985991c2872c6946e36db15d0dc13f1015a5afddef42522aa606f76e20e0b08625ac0a9787ee5477ac002adeaac4ce82f4cd0f151e068e57b7257c27eef6bd43e8daa7194135e9fdeba14c784220bf36303eaf96deb9baeb0aac83fa8f9e72d478b87de935a276f5e02fc74ba29f78a0ffea1815d2e5758dda3614a8a1acf1df56c17c29219bf46bc233ae00b03746d7d077dadf74fa6e1381753c1b0bba6e63af9cfd4a01eea413e23a6666005f616681919e682bc8bd77bb23788008a7a022da47e1795b79410bdfc9020bbf1f250f640da1dd7fb05a27885b9c3409322f20aba07378f3595ad58ef5f036fea182364799b868bde0419dd33c61b034d8c41d380ca974b6b39041dfade23c78613a269ac54c456ee8646801d77912079e218fdc56517cbf6db1af7c5dd6c96282514806f95baca92f7b638e26e1b868a19279c823aebfd571fe171d287ab218b758b0d86689bb8ca8cb9ed1d99b9afc0b16499a6974dc13ac999fbeae0f24eb5bfaa0127058f2a5f0c269e1738673e708835923b8aacefe9d720bd8114651e69258c8e98c8a7ba54d055b6d5973e8059231a7326e3db699a7d2783a4c84c1e882d1e83f2dd101c0216411262c3903de1f61230809d164a046477a765397e0bccce67aa081019fb1bcd77926967388feb6f4577a14f559ae779d3754fcb306bdd8d88249d48925585f1c17a23cd98c0f953dc99920136fe1904bc9bcb6a3fc2dc1661d22fefb61dbbfa4b9d30fb6ef274616ffea6e47b9602ed2319eddcd4bd4a3105b62fe6cd222c17e5360c449b956e9a2011d169c0605e67fd9646f94dfe799f45faa5dde45dd3e9a194994f36439c3a8d15ae2a86ed435e7a93417c54b47d81cd3754ba19568fb9fa0e873a6e3f06aa5ae6c020c32ab032d101770086c29030b986f58479b9b034d1e90d4885e318c873faaacc286de7ed01e8640fe06fb3d73f228f7c8f911f347afdfd5ec4591374818ef10c3f039f0476fe393d418742badf57abd874e6aefeae6486b8464e65228245dd1380e8e7aab2ad6d1fba443e340c1ddd12c7c13451e900311194274ef65807cf62b6fbf50f3273fefabc640b8c030e443729ff13b48d070a24937bc7ce0530f07b57bf99f0eb540c98177bc34d9fdf9503e9c100cad1180187aba14c6897b5beb8c3bfbcaba1ef492cda00929795e299270682796781e7e66bbcbef8aadf95e5e4b7ff0045c2ec97f538e652fef8aff2c077c0a5d672d6323439a420621d93fbd27b933a398563ee5167a987463cdc41c323795dae040421eb60cfd715b79607167f2aa7fbdebb5a3bf7371a99d48525b03227ab88e7576c149ed1aaa7c5f85a409730b37e958369e2f522c955760234d9e4e89dc716e81fd81799e362cb9968fbaf40f8c7d4d0cc5623e368a3a81af6c7a039ea10a024c4cf86427b51aaccdea0c592eb2358699e272e1e16e2588e6d433e911c066967a9b9b2220c38f9bbbdeef8f9e8d1378453db087ac8606fc18ad166ff09a30193e11735cd14321f209ac7368664bc6823c30e42251ab926bfa3ed264fe7d2442e64349b61cb239d5ce7d1b6941f4cd2dc2359253655983a17e1587f7ace245c31edd4aa288f986f551ca44f5dfcc408387ced906de875d232d126ae42c9a6d53be40efc3155f9257589d0b8e2b8d457e769f8efaee41599128c7a669b10a63ee870686281f1f4befc270d37fec5f7e3927e659acf94abb92c74db3a332559b121acfee9cae0bb078b362ce8a81305769d2bcf8a004c795368613db16b9afd853059e966fe0f51f6e3e4a128f0da6ce96b3f575464606f1ca0764591ab3d613aeb6785659d60756cd22253b2c2bb66d4bddf05cea10f1efbf6d33e73296dc7c56a69931a9b60a78d4a8c62abf9549b9a532b42e61f18ffc5014b7f5a53039c8cea11134521628d32663bb280b20c9afbc0f6d3c933a10e82cb2e94d12a45b20ac1fd85590fb2206951192b725df23121e29ea859e96f3a1f01ebb7fcb5ef941630f1068a2267a1350fc50591bb0ec8c58031562ed6a9531eb5a54c670f4debf3bd85d299a9e7525879c7c3fd0c636e57b31a57d2cbf827b25c7bb9d78a77641079ad27698cb9e78331437cf7e12dca518737f76b0d7dc7d24a8ff47dac6ad63e10e38a8542e88caf3ef73827e1201e18798ce472743d5c7a214c99ae416a8e46d7cb7ceec9ecee8a4ee738586e2409f81013e13104de714999de38a4ea288da416993a5a9268d0f65dca73fdcdbde770a73d94561e26ebe8c890b0fe2e0b6136ce06f9478086abbf3d86f28f2e6774d7f5c421495a20356395ef4ec003cb76989235aa6b7f15013a81063e80282c00264e42788feca41deb705a7cd290c72f7efc1f56cfec65c4dda2ebfea336fca994df47ab914b52454020f34b10f5e5f9b87a1e7d2ff640f61e79e7b341f88ecfbffb0073b1796e9187e523b0a720bd9aada6eefee895d157003894118b10382593cadf159e882aeb08eacbf5cdc9bb8a8ad7eebefa0c4ec733fa81dc70bb9551a7ca5c26e812773909bd0356c58cb27ff765c577bb81b8d4581221c3784544d4591a18ca4af4be86a4d57cc740a53255bf1aa992253f74aa49f2d31145786000749132d27c23069354af4972b0e934971033b0867ae7efd0511ea9c7b764fe12ffcc8dedd055a398a45cb8e567b193b3f3b3b5731c0811d92d860784007be992330c930479fddb78b0d44ea0e3210a08d3b42f57bd1cc3bb60e564f034b506eac2f9d73b8e30335b2d5a23c333d4c7c485eaec8e9d22d704d07355b5fb93bfa9f22598efc835851cf26c07fa71ffbfa435cfacb6752e3943e877126cb4e752fe33e6aadfdd91f066b08d74d233efbd76e345dd4bebc9cb6afaf2833f260ef598abe53260c5e656d931c1eefd9b8f946e9d4257f35056b395d4f7ab6cf6efd36c4b3dd64a19e61b3b33f34c2b34557206f24b9fc6a96c9e0ec86aef1bbf32cb7a778881c06781930ea2945a3d0a4f9b719bf723bb0d48b14f321d1c009a0fb5b446c0c58003bd6fdeb3d86d2905114399e839a07ff075c9a6ab79d4b1e96409247594b763b94d8362f608e717fe4b5d4365a173a056985ebd3549521d4c4e29885b3e01b7681847c0045a2a43fbd2eab9d8bfa05b3770defa1a3019fc20aef9c00bacb3e73d51ef03c7c5817ebde32c2ee5713eec0f51f68caea9694b632d702b8b9326a6c001ff057dce67c9a0917996694e2d941d56e005eec6cb6fedac5b777250d01f7acc32358b652452d5e5385d08dcb2d2f6d5ba83ac430962e3c819eb10faac2c4a3b3f33d640fe4bd8e515784f3805df9516e6464580e64ad521b648cfe7ecc294fc985d9866d52432d222ac75b10b28b9684f86e8bedae09ea31ea5a6664dfef7fbf505db7944cdc340008e4dda7326820ec1b1ba58e385a5b0031b48abe3fe2466b2239388272ac5a41de167f5409a219387ffe57a4de91a1f7ad5e24cf48c3339fa2222185ceaca668ee36c7f3039fe146b02e98c3299b2f112063424450e94f5ede1a938ed9d51718d385870b06b4b9184a8f99a7f1c1c408b390eb328af7dacdb3d888a6eb444f503f62f2afabd37ec567c08a4b8a0b22808e55214475c26843044a136e21dbfd1a64103873b5274bea4df4d4ae77931b814d47efdc6b716f0043d986b5423de2aa4ec771c8277c1d6b53c279a3b59ad5a7b709913ab8a749cf4f3ee8e4132abbf7d5aaa4c4ccd9ef383d78adc4d5e30a4902f33fcd7f278d89c6acb7a1bc7c6a42c508f0960a2e888bfd7e1bcb11866afacc5edd905e3fd5c22ce7b7c61a2d438051c7d6fad698fbb87f58572b6ea89d188c404cebc78f1f9ac9884b2c6d1bf672374aca564572e0b667d38e5896b65b1a2bcec07a25570ad6f6bbf3b3faa0d7ba3c7f2d2c68a8f4a16b9eff4e4597e9b3b5dad589aef8ffe3195c1c3e063414f07e2cfd626935f1b862d352bd581a118ab25394a2d42a61a7ec13df0af49a2e8bc110d312457f3f72b353757f2f5d353cca6f1fd1b04ce0b5779980aa52de05f267004f2a32b825227b92cecc63888777d6166838252bb3db0d108dc80033ba759a0288ef8153a6ba679f4038f6479c2bf71fbda0bfe123c2a32bb90e13aa2db7e93303a018239543d150a375ffcaa50567bb8e485433e61ed683bfe7f9503968ce204c1deb9c4753da16511b34bf18a2f33a2b7ec8a145e0d23eedb56a2a8fa2a700d944af0520c4ab500d228ea713db2dab736a0d74060abd515be559c1a11acb9fc470a1fdaddac3c7ff9749611daa210dcc3eeed7c4099012ec0460503df27b3ae2e1674b0e17db02e5e598f3f4c29d864a0d28e8feccdcaabe464db79f96193861300a61a4a3e8db782d51409229b0a92eedac282de84a8f2589e3b92c9f91dae55b74672b51c36f28992d59a180cda4c0e1041a70315f0ec2bfa9943f5e417e23973f62f1477af2576728af8e2a6b18903e6300fab920ac27377f30004cf77e6a4df1d97f277a501aad86c795b1c8dbba24fe345d48d6ba402ca20ebc6da13f9c763a3fdf0f3152e039c83b7b9c1369c46db16c339b20208e19c05a7a4c29a331804aeedc7edf95f354a8547dba7548c4cc0878938d66efb9e5190a8587689b78502230bcb5ce2014d46269fbbeea5cfa4ecfa558da4bfca3ee9c9a16f413e1dd3e99333cbf9e06020d15d5a5046c663db8719af7ec86f36212bc4acd6deaa5c7ffe34af2a1b5107795c702768213a49b0c3e6bb849d60643860be89ad2d9984334d045b95a166e086ac78cf1b38cc6c92000146a21129ed008d946a3b2923174b1fb589b3498fb415b3d4e46d6f0dcffadfb712b94f3d896bc29c1a894ddc8d607585ce3f9f5196035af388b6982140775753545a090222bed35fd32bd5a3808ace264f92ffefa6044034793df57c59dff962cbaba0ec93467e39ebbac4d704ee8b28dcb4ba60e0083869aa680273616460665373d0a2d1e551e96094b2fccafb6df7d0e757cd9125f16efdb529ee6d165db2ab885f0283a4958e551a8e129f86b57cd1ed8f008a717727eb2097ac6289446e373b32ef849c4f250aa91c24480990a0e6e6b49ea475bee1ac1136091aae91d29e4b5a3326b7c18e7ec2bfed3ed6974a29e7d5b5ea9eab4878113f0d1f2c9c81ecea04b10f327dfce57b241114417ce11ebf10d6c73ed46bbce36dd681b3eff0b07f895b25603f5a7ce890fb62a736080a2f6479a2ec6360ae1e818def37091a3426f7ccc6265ffc28cd45fc4830d194431ef2df8730e804fa8717d6d2e763d83a7ffefed49eb57b5d0b622974c22daac9523bc97dafe4df7e03f3b235b76b4e3ec5007a352955eea365f0ef9941a66bdd8fcfa0ffc848d292eac3ae44e419e11eec8a72a878db5cc519e2cc3ff24394ab831eb38260f40fcb44225b84ef3d7cefc91a1137e4921bdafe2525aec3ea22e54a7145a7c9995de32896ffb148e8aebff483ddb0bb3e61ab5587631b62de034badd6ab06aa839e456384fd86910dcd2177d3dc3df42e7f2e8e1548ed8f842b7ffadf9475e044581af493828cb2dc2d90e7bd1ed09771ffb25efa377247a849d2150adff7ef0e07a251914b53c12488293d7059ecdfb84ded47e30f00cdf8050af3f04d27ef39830bcacd26be1708da6f99abb3f2060e2a23157a8fdc7d707a082f40678c9a56ac2eec68b9ab1ef508506588e52049f5df8f7cb7926a4b681fe8541c182a1c6560ae9b977870608565336e938907a40713b3330413200ecd1a7dee1c6f422e39c03134e2465f516ab8db34f45521370e98c15c73768f95acf4a6691dc9fb07832de348614ef3f5fff36f58e16873724346908056f4b3012e85d4321653097d1402107d4aa5e4f0daa38b10b5dcd8fc321bdca204f59352c7344d04e00df0de48055de55d8ddf903e26409a12cb610c599066bfd7b3e76eae230912bff56f98322d84def22d2a7ac5525a257d3489d1243ae31c5a9b2377674c8519fd73967431da380b21db947e4ed64e7a6c5ff2e63ac95198f9b7bde88b52f269bc17024ab0590d0dd5e09f921424658df3c8f1cc53776bd1770ef5333069940cee2160ffc31563a453053e82ca648de3e026ccc0968b1bbe851d7096c2cf74ebf39e4563c1b8d50fc3647dfb5da4528e2dec770800519e2704e5e9726c9ffa79ee8221e13c8c557d0e340aeffc424a3553293150bf397b00a4fd281bf6903e33206ee11679681c3ee865c5bd1570a44a293bf105260c8dd3b7d439207f1e0ec463a63c23d6fa84b2bd3f0e366c3a658a00233e297affe43f02a850f07e63a4ed1ced03cd06eaf410d7bbe24e1753c7ff42c31821ee650c27795183e355c9652a55cf642a0c9bd62b7f00cb4587b2275c5a762e84fe6fd033a6307e96af9dda1e644510b38fff5882b787e09259c8180580472ae919b4de415f5571cf35b65e71f70a60df6bf8c8ebba32085670e523f13bdacd6328e7373d68f25e777c39155c14b2db227ec8a289234e65aff7dcc90eba76a7f2c41fe6419823e367f8e44713ad63b733e127a876006ed374849b7bcc48827b4085947e3edf6a96f969dc4ad4faa5fda5ceab75cdd39a31684d6d5ebaa48ecadfffba0347cd228fa0e0a622bb701a072acd993291220c70db946dd09559a2122dfac5a87cd0a33326b1373bf829177c5cae667b7c1d5beabbf965b15baaa5399416112c16a112a8dc4dc94c965693c39f11dc872e7ddd40c14849a768fbb269138f1475f10e16cc1ccc8cbcf4465bca29a63f4e77ba69dd32c61f52df098790e61a38215ae542027505316d706f7d3ce9dbc8e7baa77bc5239e1c3c5778376a7ef3ae82210e8465793e871e2eff9892fb4f4728107ab43ff753d3ac923d75729ebc1d19ea1a25c8418b0b62b0f6dcc47d8e84aac5a6407491405c43e7bf129af8a1cadc0cd70e139a39823417ffc1e0366aa743dc61ed32c7611d66427d2674910d2d234df465d97accd2838dcb0faaa0edbbc265820ce9ce30b8d832a2b53e6d440a57273d8875da63de713e2ae151db012fd0a0feab45cc4b17fc450f07f0b2fe39a5a3ab5c60eb5b2a23f29c188f55f0190002d3b8fa60f9d4bc33cd31648bea0d10caa98ce5f9fb9ef3c8b5b1113cac150510047c74cec183b00a3dde253d6b3c0fd2d35b5d4b035c64e17a013ad2db607b5d9c0e1b7f37373ba1acf45789e8c5f435b8aed59e8c45b2f20a92247734e853ab30de3c8d1702c83f7541b09177f967cacf0af5f6153352c1cc192194f5951e533c9a4a0c7ca9f1a23c8a488ea85c31291ca514f3ea64dc46769d5479ab206e307ed27c96d4321b20d266a9120fe208de79d938fd837a90d628a0990118051b2aa01cefccc3102fb673d56e1a9820017c036e40929c11ca5cb651edd569718fcf7267e378da4a8ba696db740266900cb281dbd3576db67a939b5740b1696539993f90af4ad1c9824c3b8b0d435d05da5d5f8e18099fa2a8e08099c8cf26965adde459a78f557b0d003ab11134429a2d9b7d38f421f58a26d5f04a6d32f21348fb39d047331328cb4c5b36fb206fc97172d38fbcce18d193f925ddfa025cbf6624388a4bb414ddcac6786e30391bec4602703dbf4944d11d5c3bf208f0febff381a4023bb0494ac12bbe7b9f5f68fc33016d8ee2b89ec591238e4abb0d475f2aa957aabab8543fb7f544e6c38dfdbb31338d5fea64e8ecd39b3db8899ab3bdd42e2873a3e9ccafd8b98193380b4014b401143fae1cc48a1c0eafcf78bf3bbf6fa410025dc12e697904070f72dda6757e9bd07805a9c10b00f441150a133e479fdab141733a7764de0365c29093b74613f53eae01e8c7c12131f440172235800b8bb3862be917a88de6703a044a035501574f0c113f4c6c482c9bc4d70459bb15c6b808dcad92ab1d22c454cc4cafbb4e892418cad97f4256ce5eb11b43215b07f2beb249d9c0546f0cdcca3c40de80f111d699b8a930c2fa0b09f8142eb7e3235ab3db8a45bf380d4eaec7ea171628e5812bbde1049cd74316fe6897ca90567e7baff4415e941fcd839a5414b73db570ca0b42f08bf45ee0b5f9040a3f1ca379111bde4890302468f4687398a43229f0452a88a64d20e01a7898a34adf8fb72ead4b0ee289fd60b38a38cf94adcf98c0cb6f27344b9f415110369135ffc5fe3ed5ef8e73d534fce997187cd646e5e52155bb6a03964a3a94a43a534d684e3fd7499d2c607e1471ed77cd68339579c2ef3b01e23a82d64185def358767a383b91e51ed93d6d5ba9441fa5ca6dea48cf9fbd27f8d751d53e301a9d2e032015264f4ef93fc832182c9cea806df1bd61a0b284a336da1734d63d2fa228e03f11ed0ce7361c31a45cf7926f1c09347ce2449cf457c5bda242a9f751790d40df5c02b7bdaa662033c0104409aceb094bc3de5a15f7a4d1aeaec81de3e5b9e146d4744b7b451aeef9daf4320eed8a89e7e6324dc1e1c1444c04d100413971c621ce8d604c12b76ee21d22146f99cdd1c24feb1c9710164e6411657939c944fffb4afb602cd5471cfe82a311581b230544a6e8bdb4ae7da6d3d5daaa031475b6a9bf17a6a04955b113cf2915f396058485415efbb0e8246c768808dbc4c36488d4ab1a3c33640871f96c0d5dba6ce882db1c1bd2017e444982311544e3e3a851d6f32a7d6db0e319673fa0691de7239283e259f5f5ecfbac02c199826a7a1ca7b8e99bd86615dd6502d9349f48963429bfc6baf11f7deab790cb1279d53e8482b9623dc114a7b92d3719b19d93391c97195af99c6da6e716f35fde60331e8af78aca8b5582000844d659c4f91b58161abc0da0b2cc116441d039823e180cfcccfea3525931fae686c525386a9c12accc381d705a519fb904da15b40e6609abaedf57caf355cf0ede29706b055aaf7513a51d53e04bdda4d91ace3812b81a6b141222e42e0407a39196bb63b900b387a7ff61bd7038a5e1ed638bb6c4eab78c5c65cf84652aae10a52a388e7ec9d37297d38ee98e541d22cb3e8415ef1791e50a92fbc50c2ffc4655046b6c7f7ef595101f445ad1599db4b24233fcd3a5a0bf7b522c67281fb8d4b85b949a969c1bedbe16869d83a70c548fb8a3e4851ee70539fb94ce808e795d47ea791f823606bfa849e7ce19ab0c7f785d28260650594c03b2cf4d44c01619ec24509c9f55dc6d7772b815359b5f1f5ccdc6f7d82e7112a57c7191985a3007d3f895fda1c2f741caf9ef98efce276739b203fe18eca9effabd080dbde5ef7f3b125ed9621ccca88965115c9a60b3ffc81353f7dd2361bc1b7019339fa6b50227a757ee8961ad430373fa038a6fd6f5e73208a41e92c5c398a5e320068ef79ef6caec3c1773810b3c0be0de4dc333a8268267cbe5c85b1788e2d382001909ef21b809796a4fb4a1b9f660e30f5ebc9dfa784e80d088e871c012f27d044ce6ad8b12ec35c055b0cd05866300267acbfffefee3f59455cd1825de53bf89fd647ff7026b7935110386da44108f3afc7e09f7f6871834e4cb88c8a8d74157ebfb46e6cc853e8380879b86d11b0694643c87bd3ee1746c661ea6ce815aebde1b8e051b3ce1c1c97dee10004845651add4d4511480b08352349711a8c3b2f6de60366e504ad5db123db156ceccd7d713c2286d1cedb63e37fd3d12464ab46ad557160f1ccac80f8d2ccc5ddf485c310006c567423b45b8fbb21c40fd2a95da7f103141189521d3ba6980066769670686bb71580f7174845d97726d95ef1dfe79ad7599262a9a47e23bfc224d3d2d9e70ab2f76aa30ca8cdb6585d6a874a4dc37efdb82ee89d4bc4a0dad8adbdcbca3ae53360eece8c0f097552df36a9c18a17530cc43b9455b3057edd680054d8df44134030073d59eaec80bcece1f505ad9f6d63764ad6b53209c10dc976577daae52cb20bd22b07c7bc936d37c56176758be2f0182ee4682980ae5a5cd6bd48df45e15016b0cd56f8826941f54a7f3dd002bf299c784babcb40ab21669b6d5372771f9322a2c03142d63721a7e1e648dec6bb77aed3fcc7c6479e90f41e3b9492b9e0c30a08c7809014d7d88caa464f1d52577a88b64608b3e97c3b4d2504a93a407e3c531ac7d2b3aec2939f738f6d3d0bebea610c43244a18639a18f4102ea58bb8d384023f2a2bef0556942dfec2586aacc933fba7a179ff9fa082ec85d510ed766df2b037aa1c0795e49b1c8b2d3963bab3cb9420c040135734ede537d4c2de5f7a2db82d97468fe1efaba1db0185a0e002f6e0925920b56ba8bf6c38cef41fdf8754fdb8a8fe9f3cd5268c2849154cd83b6d567b15ec7e2784f9a191b445f14ed5474607dcdc2a76ffb252bb012ae17c6488f503a5d13e71c9481105848cf5795b34caa33ca9583fea9fb61d6544bae9cb6cd8014587eeaabde47333ef208e168f69121451938454e284387686b5b0e03e04b92e4d98f91884e7b072f8eeccdec41791253131f4426c7a36b5f12071189572281799102cf3f839bf93bb2e8481a8d46f1c81253f9551dd86e27ec316aa6007441f2c01541cf470be686500bf9391b51dabffba899b3988054291214bf999d4d580fc564480803db99c61df91d303e5e475a2ebdd14e60de49d92b34ed9307b35438226bfb16e331d818b46343e41235d7ee47e0faf7768c0a41c43aba2dce257772b87fd221b437910d6d9df22b74e8f4bf7c87be6c7c18d3d217090d7c5058f16de7fbe5021a51bfc2898346a335b5d35e4cb2aca5099834f952913267ffea174922a7b5544a8268fa51387118da6f13b931963dd6640662e2541abd0f2b1cb47cac9f1cc9ae953084e05f0235f8a48b7d9b49de05242bfc99db40bbd2b24b4d2b9ab6b343600471a0b48a76b9b452404b0bf302af68b9e87cc4aa28651ce068c507b7e2007eb819006047d56920604493fa93f4f4d0fc9168fca2751db829127243f20402d6d879418425cc5d2553157c5e75db8ae38dde0566b4a8d12e6142d5f9baf956dbc5d104ea4da74e8cd23fc412fd5843f4aa428391f88e11787171b64c6cf05eeedae85d5ad3414ebbe353326b8ecd1dc9fc3136f3bb88d6c85abaaa714381bfaf348c90bc3579587e86e7e7da0c21e04ea7ba79ddfd8d599a25446f0e99141d83b15c271e75897d556777f35af8ef67d7af96b9b485f38a8b0ca09bdd75204316bc739d2312aaffdddf320f079a0b1529c1fd5e431b9e0e7a5dfe82c2468f5419dc3059038ca4aad9b625c69f1e95c4637c1e832e2171c68c03d95051ccbaee8237dbed16b2d5eb41339975a9cdf9cb4323b609f4f4977554c811e1143ce9478b7d1d643a64a9e810d99a152051daffd72eb53c8efe3030212a3ade273510e3402a1ba620eae4bb63a22f3b8aadcd81089e92c33588cf6aeb88653dad77ea7c8b03b63460d892207310a2475895f7fafe02ce1767a1015f627cb78745f6e6fb7193218b58d7d85e720a9f8623a05ba8c3cc3d9df0ea2b680c0736c545f33cb85499d3cc69d05475d4651425c6b7c072b490d2bf4e3acf0aab054af491615f751db81fc113d9d2f1070032a77ab22bc1ca44f2054c92950c82c0ced867023114eef0a608c76c8663783d5ed584469d0fa02605f6f22939fa7aa21a8377b04c65eb11a890f388931593a1078f0c7e089d8d5f68030faaaa37f8b1984a7236c78e00712703c4cb7fb06b4150d1105a58d3a6d60a8cdb4d9996a156ebe7bd9012bc2a8dac2db921041eadef84e5da72f70a12ff12705d3262172380f49de2df16f67f705df68623ae364a077f4d47d30f2c16e332fbf9784e619377204130bd7abd72196594813ec799325efae2a18a07fa6b8ec5eae0c2f5e062e2dbad20323e1234c6095f56a01c0b0ae2372f3f8a88ee7ea39e1f2cf16c117c9f2db093188f7ee6c9fda8d9cd217522e97ce4f599a7ff3b9ce17bb30f26ec84047e78abca21366e8a482c1a3cfdcc10d8fe1c2474944a10d2e7df314387ce9c3b7c008cb93dbd323ef26907d6ccca9cf45ef2d1f49a34a299e3839e0e93d39b11e1d2c7b9cbb105049419aedeb7da74c830cfb1fe07cd2773d8301becf7be2579ca6368613443316d828e384c9dbb7e95f5ff3dcbeb0c9dc0778c1b7eb196750d4090e0d886b734319f9c1d44b7460b63b11c0ae147202756b1ac7f865676187aaaa0b2a46b24e391935366cc4aeac0a06aedad0df17ecefa409081fad8476c0948ae9e58aefbb20dacefd2aa82438b039609e86faa51f679fe1456f1a499fd9acadef5cb5d6093c579550f0d5836246af0f6bf5aeb9bd873ea8c5e8fa73d44e14dafbbe6d3db8387341d1e0f4b3cf5c380543b97b9bbe7b368dde48454364336a93def4f7cad41ac95b3a0f48033ba21b202d75e2a6d19f4c84180df8de734312b83500c378c546f107d471fc6ac8fb56a6464becff36faffee5f550e18fa6a27948353588bcfeb8418d1b79744566acede3d607d35aa2143e379ee6f357ff6354c43df991a40fee634f70be9bb2cae32510dd7b14e38165d0a1d4b1b92916548e22df1e2fc430c04a1f7cf865b6e9ed6337d1fda05dbdcfc5eeb01a59fe362b03f3f5791d5b008a5062c29e711c7bdeec43b5782b0aa5358f9be25cd798600bfc58c0aeda1220759364a446ee0313c90a6983cbaa98afed1e48d28b8c03d61c231c6e5575e0457e01e7e825e5c8eaba3050a25b014b1ad64273510d94899bf3e8a071770964478597c5d39945ab01beb9a621b6ff3ea2702f5f4ed8c9e2d2bdf7a4daca5004cfdf7caec2853b06464ac51b9b2f959657334ea3d9c0f6b9dfbacf65bb5ea12665e659caffe3af714122f61d348fd7076032583bf6ee412369d2dde78d8e2491c8e3d1ca001ade1556fbe580c72894f50822e231d9219839f1d1a164ee50ff5dcfa2a741584f802a0076d4f25700d0ad710d0107a5b7c6393573064919134607653dfa77663d23f1d96a874581ae0519a08372414e9bdf3b95a203043cefbb081d111ed9852e4abb74241dcdc991837cbfc41776417403c75ed6c927f568c7acd25edceb9569cbf62bbce18e525c126e1e6415e54d7bcb16bbcd5f2fc7ab6436d22040c8a1ea543e9d2637dc142e242f181152efddc2ba4aaac693b8af03565950ed9d006a7173080c621d14a588352509bfd900f6db56d47f1994c96a5569070a9cc85d430c562e3d60638b539538fbcbe7d9babff5b23ed20481add44fac54b62705462419af7528ff780089420ff1e98c55f3293b1940001328b891b97f189be288b6a97e25e2b6b2d5a6c4ad08a0dd2b6631049bf6d9f41767f5c6db0aea178d633e7a8b0a2528ae7fec929c341b924668e8449484a82568d3b65771108a8bb454e790880bcfb500f7761e818998321d958c1fe6b7c8818a128fb13135a800ea1e9d55bc5d0ebbbc7cba7121fabb3f4db5fc3aadd71bae0ce5d6f525ece043614337a573ff8533c9871dc641a22e03c8937fec1ff32057afee719a0463364cae7cb4f6085b9dcbe1110234590d3ff9b11e7a188cfae350a69464dfd1dfff20bf8c51dc26e0dbd340184bb2b7c61e514c5d8be7972e5e72961a77769a461ca20ec06345911330ff3c8d4fc0797a3491621c07b8df7ec86c6ae3ca30b5c8168eaa9de1c56e66a6161894012d33e0ef0ee841aa1b142b2e97fc6b2e3075528bcfd37f2a01c92a10afd5ecc34fca0e3896b76660f0d93053a18a56a502f2d358229d61a0bc14622e460ce36cf609a57b56fc5c0274dc8be43b934f2621473e96f08d8e8dcd02953c07a59d6396b0928155cfffb85161268e7a697527707f1283f0ec6f3a780730f43ce3c5ed5857e5ab39c89b562c4b9b9063583b7b556512180b92a68bbc3f0c670b44579372a27ee7c0fb72fde7ad7c42dc279b94058556b2aec848dd0e82ecf9e5d18c9005e8dc6934a812089e6c26572dca6152e24a402beeab726cdee905ed655ca078cbe02a029d0bb06c4873ae250bb8e41dba1f374c5667c2c33bea3212bebf3068cee562cae8143be1d337ef71ccc933f80e176631898cb1158a9228929647f1699c2f36b5dd888e0ec2616f55fbcd42567c4129b21efe64376b981654508c76c1fdd833a46f3e1f187389b3b985c2dc755be3605801f2943d21c4535bc2e55934c826543a166282b68dfee65694995059c75fb3b62eeb33e32235664da3eb2881ca6e8ea5af5be8c101e2bd7080a750fa2aba97d8754c47e454c3c8dea593f84664f2ddfe2710626f7f19ba63a100fad8fbfc6d870e0f9e9ac11c3df3e5e6a5af0c60c999b0af40e5052a03e8c5205c04319b52293dd74b3b632f1cff5dc2c964d6ab8e0bb6099363d4c28c3cc3ba79c110cf40b1afcf56d10001380216ac3bbdcaebb44f1c8abaeb7ea9fdb0dc555c06153f9514365b9716b155446df186c64cd2783e88698bb78b7fc9a9d6e0adb330d2c251c29b0c41422af809848c094565284ad44dfc8c46b8b4ef21ed22ec45f78dc952b2f02aee74614bee6ded5407f09671837ccedf8ee5f87d35a2e3b648b4d487b49b91c0475230c1ce9009b61be7f20fed3feb35a9b1e74065d11b12d5253d6ecbe93873f5005bedabf1c038562bc15c368ac8a237c65a84651650fb2fcba1549ec9ff142c33fb64545b8a37feae880082a06476d90baf400776bb5759c333c0d31b5af26fe43601636007e7f1896137c6a14351a47d5d285ed61f5c28907f0b63dc3676e0f208dae4fa383fafc78a0d864a5b6c15649ba5357b0edb5a861f34a46cb22da42a28860d3ac4284e31752f37659c05499fc6712c83416fbe942b298eb3a5cee2e1b5899a8dc263495238ce36a8a6d75c3489109b98682f37cc32aee66f978868905a6de5872dcb8b3ed33844762f41bfd821514bfc0a0315d077f05516f3813c3e19bf404fa86bfdeef4f1dc02aaf552ec5d5f397f0b56c85ceaf2865d7402da9fcf796107d41395b07c747003ae590d412120995790ec247b812847e008078617dbb021153a002842b096f6924d8cbb1fec4a5e0f5383f8888ad1b456f4c56221dbec9f582e87f9cc8f9a12667df7a9fa875c363d42358dfcb52d1e5d7ce019f3ff91bc6fd42007ee7f4896d9722a1a8ffb14da358c68117be06df1f4010878272d93689c846961bd5b685a167e1425e9d86605cc273a9597e4d2cee0f528e2578c2aa48ad2ee9d2e50ecd20e9da6949bb52aea27625efa2eebc24e90c5233c2c509a5f888d7d85239f31d6fae0de763562235decc139b5604cf87e7dcb84a14ecf3fb4190988d9be4a4009a972cb8eb0d224eb4d74e2521d993c5a122dd0b5a08648f15ec954fda8e856e9b399cefb0116884089f8170a907de8ec0e595226d626ea2800570cbbf36b3ecb51ca7d0b754f0c462684c43542a65f7008c1b0af13e8770c5ca6997d518aa281df5b569487082ecf74a56de368413b2b28c73b25b992771920e4671b3381a40055d70603315ea31da631d558ced22cc919314835d925f9074bf3a8013898f934808b6731deccec40ba1625a2fbbc8cb344a8c3eabd01f042edb8f4fb0b13e90b747a4488fa4aa42f63aaa8c828bb806a51b604bdca9ae0c509ec7c436bbac9afc632443ed1bcb431813113d6717ebad081c8fbf7f6cfe423c7c7537c4c3259ed46f952588ed2dbc02c520d72cf6d28aabc3e5e8bbb027b39a23b7c09cdea79cad7bdd564c95e08ee2c1730bd0b83e5439257c0c1043f9d336ff4e72e112ec963f0a0e0e739694e066ec44361108ca2e20899e24bdceb966ba6276107f070cebf8dd0acde655e2b2f991ca1a48bc21ba5d0731885405aff7ad0c81105c53652f4403f51df9224770e925ec2d7d8a6434f9a15c364e4f92a97e5af6f6427efc93475224ba36326c668860c4e73134d8acfa0c9f410e923d978f214a0c730d1eae1b1d804132f6aa74b7ecf4cda6af51279a9234db108cf84cd32af5e58692595ace97675bde51fcbe7de37a1791f67c4398e6110fb8c941a16a7fb05ba861177c18c41478ec1a9193252de8c8f87cafb2f7d538b43775fa079f8e298c26fdf8adea762b8ead76d6782a41a9d39fdcf79d3d6f7464d1c0b316e481862efb2fd93c201ddd75b4f2d4364ff1d0dbd255b6078857e426326fb5b26cc3bba69b6815f162c4cc81ea4fab2ec9c111195ea2ee65c0c2a82ec887caf0bfcfcd2153514ea43466c07e25e0a5e11b5bc800b13d08abeef84cbe49f6be758e475e32403b98d2981b765572d2846b86b3b44c9fb5fdb4923fe053b532292c652f22bec9c54dc17ba170add764fe9bf326f6a6ce361ed223d2aed255bbe77ff008d9e19f8f57ea6270a2f2dc26e76599e2c31a35991894bc1e5a2229c804ea471a766bbae743eddad901a6faece5254946077984e35f282bf91288af6a6057dbebef3f57c98febfd8786fc2904e0a0dd7589d81e04c21ab7b6d365a443191311199cdcd0a461d0632aaf5843196c3ae800c94fe043bd0319a8b36df6e3b04a70ef8dd2f3010ecade5f9e7d96ade49259ed4db91e4805b74b63134a10a66fa0191869556e4df62370485f56098c34430b8e06e778730accbe0020659c0d458460f35659ffcf9397b18f6d0524b565e224b317d4513c56f984541de4bf8fab4b6051a565ae9266411b574639eff5fe5ffe229cd438f3a21a740fe3a18d1a0ac92e2cf142c8ee1f0c005f59d31075d2322ecf6c9d42d4b3db544994209687781f790737a22fd5b4f14d59bbd7c9ba5d1a0d0ce7c6f9e7590212ffbc253b4794f0241274a04b654d27767c903d461825ecbfc32d96d346452f1baa6950827095646c37eb6f3527f845421f3b9a5cbb8ce79961935341bea7220a7308a015128da0c8ec2e30348dc81216eddfca728e56708e678df9497891956d3d15af5c829827f89dc3279123ef0a7294e59b1cbbaf2bf3cac010487e5d9ed12ddce46cc885ffd94f2fb08eb2608b67ddc8057bab389d7665cffaa9c0141a395f2a2da4dfca71781843d56e84c4667f9f9a81bf6a4369323d58c6dfd687a86091293384de9c5f6516a8cc07bf3b708db3938e5727af405472b29bebc0b90b4bf139fea265ca6dbcd3bd446eb2cbe4230d752785c748299ee34b9300802c8155aaa846f6e4805ec6c5ef30b59f184279f60b01ef36d98a5299bbcb4d286879f09cd349de7181b0c7f5b6bedb4b71ac471e3b402755302ec85545830c2b176709105128faafca4b5c5d00dc11b7ab800741ebb57c707e93239bce48039072aadb3227fb632cafb16fd60f733ebdcda74f822c2816ddcbdc40368ee239d527af036b28e08467dd6494a31f18621bee278768e499678ae46514903e6344e74272edcd9119e5212aa561c67cdbb5c8baa91ccc9723b0dabf36eddec9ba3cf2531bd250d860ad9b67cd0d4d4259e297d544eb132ea92f64119cd15398cb191300ed93ca29438e96bd0d2eb0cdb41c7834d71427672fcf577ec1db15ab5cd8b41472dfa8ea2a4f6ba284ed59baad763d9fa406beb3105ef15c6d6c2b819bd3cee7962273b2614859614a5ce3a3811c93074e4ed6133e36e10897471020c7caae5f23d709ee054e2ef5e00fb873b5f523b4d3ed9058529566ff07a989022e7f06c4b6925d7867b338b77d832c01cc87cffa477bc8c747a4950fd91b15648bde8a9dc6e77deec9288621134e5ca26e02b088a10dd4d06bec2cadd86f382de3055d29196fb81b4a37878b3089094b38fa590700988cb407ed7041c077837f3517f24a275dd87f8a19cfbbbe20169d0a5428fcf5efe60a086ed8d9573d1ddc6927db09b63bf4b038c5b74b5fb6a5ebf7c2e11e7d3d3f59acbe255a49df78066b71c6d2ed4a0aefa093b557791f232f2abe20d76b07b23ee154baef7338a729ee05e3067b2b840c2334ef6e6cb2acd5735b46ef6940dde3e11fe2f112aea109e62e4be4e4d6e723274e818cbb1b04eeab634da8e6afcbd68e8fdfdd890fc7bf744ed41891b6876eb621ab7826837042eff66f7be8d83e668af51da0740c94953f3ba3668daa2210d45b255435cd3b879dfbc2b3726bb5c1e640280d3c1e9f99538ca6a4b26483a5f92dd5e31d861449581f72472732ac168772a14804ebff412ffb58094625ec04c45782f202bd028d0b0359f194da0c4f6772b1d56d4d6bd654c89e9bd411a90e3a10ec372602daaca13d0cbe4851ae357682be4eba8c75ad9675f4b2b3f2c304a6b5081a53d55b7cc41e3fe0a426d325551b7fc0c65f136faa8e04518eddcf40b37a9ebf4d154b32b8c4bf0d457026ff19231ab2c7551c455b0e909baddff8a7a84d9c86d7e69be685b4d8fc2ea101a002e66ddf7d5bde7fb0f40abc47c47cd96d5886455f6a037f0643490eea3968265db940e8874ed3a972d92ad26c3326f04ae125cf8e064aa47c8c974de3f837e4b569cd1d84161d9af2a24335b2306b1b65d62bf44e491a2bc87e8a8ba1f2cc221b6a6407d7b788f6924bd8b3fe898de7065738bbbf69b7ed962fdd2ddaf7a1e12ea63430a60fe18b0760be428257820ad17c64f4a98273527adc80fa85279e05d065c360ab657078e060dd9eada956ce7e3424e2904f55a3882e9fb28e6d90058fd94b299ac682e37185ad2d379d267ad8e0c706ce6277b448477c6dd3ec476ca67a025f4f27a9405c47dc8a668efaa27bd39ff9a21cc2bf94ba092a2ff3002c05ad6894aa15d1a8edae6e597f4eaaede1033a6d170efa8c5ccf5a2dde3152d5c95d5c952921b32f1b2dcca5c14327fc92dc3227ea22203189ca09ebe586d4e635a95a18c60380b36c5d9393cc87c153c7ab15407c43f7274585dc6106dc182151c6085426cc959ba70908ce080e1b869d332044b80299851f16fbd704fdae903adf549973f772ed8252d365b6a23175defac38fe41c44399935f84837e60ec64c15c702f57a9d3a87c09d246ccc3d78bc591745136c18dd3b65821110594e3f973048149c62a1aef2503860302630ceadbc4c55caaae495e66b15ba77f35e18ab24a375d825f16582c2b4ce635d83b9b62880eb82006d40268abe3e69786710a6eeff714039a32fe426038605d20ecdbf29c1743f882f98e13b5f059094e47530b58d1f002ab05778c1e638e5d4d1cbbac29a0622012336576b8b859ba333d12d0cd051ad1e6fd59b63d73f2be7c47623ec3194237e8318954a56482e4d50386ec38c9082dd502234112c23d1c2ad31c0c0b8f25bf6a0eac68cab5030ad0021e6cd80294c49054da9c8506bdc919f35a1b2323e9167339cbd1a8808b65817d1fe7672c8f2259af139dc50febab5bad239401454ebfc41b9ae415d8d303903723400aa01d4466cb8a3b5f111d64f948adcd518e749440dc4a6ae11c9df1f148b06913cdf540f8d422b882eae95a64206bc05fc492daa9627439ead14b3411cfb8354cfa6640ccbf57a5e526f9162cc1cb9765817a8a9cb88563a422cf42b4f41ca3a815769f8cad7172ac7cc4ebf3f2b26e1ff43dc8ab063c00a75d1075c14cc6ba98f2bfb219953db5f0d4bbc640ae6d9cc57be7a58ca3ec8e82debf268d451173e215bf1130fe41e16767e74f4c5753cc9288af52bd912de3b7a5d0ba20d4a598bf63f351bb373f726ee5a4078b1865b3ac27f09c0c07a1f59cfeb71d25205e13b7aa785539c92b588355f1a82b5d18503f25d8c74b3f3807a65b9d03b37ee3887cd5281514d642958a555095e1cc0d2a9374776b04030de499e0eafcba1563140b98f8efc2a2c9c741a2c75c6c1aff17a7bba389553cac37ca5132ec20070be97c53f15fe923e7754f76a06090e730600b1c34a9d16d5ae6a72f3113fb1eb80a22a62e76719bf288e296286c6aadf899d0f96a53e6a3fa75ebeb1bbd89c95ac6273a6e66a826fcf6be62ae866f30498f31542165454d9169466177220207029e742665bf05f65964a7857aeec9ca73e748b736e6f2eb62cc85543975f1d0766403cbacd88780f12a286619cea717aba91a562facb5c1247fd15f24eba9415fb03eb10a924af55e8b3440a853f5fef9324ce25fc9d17300d78a02fb31e7027c15423e5a916b6ebdbe4e71202d9ee2072ccf1c91b77133c20e62f6f776da2a6fa653bb878f7ee7682af70e589a9b3d026177e8b3c777ebbbcd54be34e7b9f39cbb1ce6a3ce7087b7ed62549bf9edf47db4f1f8358591542442b6bb3d2eb4b99d9b26e3527b4dae6d5836e451e5183afdf220878ef0dcd8aadfed004158343fe6dbcb2d0c5754b2bac09dd5637dccd251b40eae5a248162f7e9ec84d4d21dee07e1be2336ba918428294a3fceb58c013ff83e6470669c6fa909a9d8683b8ee34c71575c8fbe1a965b6cced14d01b65556816b7d806b8d7794d316c665ffc2c578796bff98e3948837b0264fd1b6dd4e64a815789e71928d5e3d9b7ad46cc3a0d03ac2a9d8ed37e03cc59d411e6bcb253031db217275c3e7bb8aa3791c27826116be9b8aa773477e84c94acb2a95726cacf89c21dc64ed205016c0e85ec211fe22e6e75c67957b327dd95b3addd155f5051af4bca945acb1397cc44a2b1b3f94de80e093684ae8c620fb6a70d0c5fd3b0f082402774741c0f193de29f8dd0429782b2246a8b7ad33fd2618fdc0ca45e56869fb47a7a52fd327a4d246dbbcf0c1d0d690de24e858cce3a73ad6d0b712a80113fac638fdd99a4c259308bf6548f34cb9684813b6900d5dc87e0be6b084ba3419ce47f9a1efb07aaea0ef10cde4c30e4f0a207cb1a6f4d4253acf490716b40a031b2d8318dd99d4f3380c50f02f029d9897d98ba23a6414a83d0eae8d90d23aeb3b261efb860d1e5d5bf6290725f06ab0b4b7cdc804c9d6fa3bd1a5b865d8162336553645bfa217980b3518d21ff7bcf0e4b1f6cde7b2b93af04f03e3cd077611063ec17ed29a07fb083fb43e4cd4cad0f601e7ee158adb137aacd1ce506160f22a72789d98f9e33ccab23960f3a492576bb941c884d4d5e38ae99b483f73bf3a728f37b928e15b5afeb841728eb5262d3348e18732e90c1f7f0e39f6a443d90621362236521dcdd55e63b1655e305318b4010a2b0b1dd13984fd1230c9d3edd86458ac966d5d9359a3333d26c37ebf4dcd62e35c0c155324ecb4c2459a7a2e2fcd9ea8891398629981e9a79edabcdd095c317ef7f5f3f593e990986be08f4a7e369ad89ed480bbcafcd403101b81b78f799b1f6feeae8f80f01fa1657831eefdea776530e21ba7be6edff208ee964b927ae52a5b4c5787505db3651c15de4e398c3238c147e7e679794830bf7a033fae5634565f9ac19b730606ed72928f59c200e9f9f2420af6da42d2ef2f912d5e1bef8eeb48d1448659e98bbcc4402311cb157f1c44f852f7a0f80ec5f1652c695fdb4bd3face86080d77329b0cdb635fa54b23609ece4fdcd7e8a81067ab0e419f063763b7b05dedb7e94c218dfef18afea91f8e154a55b74a9786d1e54cf7e98cbc074b4a3588a7aeac70be70bfd5bb1469a2ccb752d53edce2a43406e517b7b0030a8b591d4d9807573aac6ace6097ec8ea52b2efcddb0d4aeee744af6eb58bb78c5cee24abbafcb92d7c7ccb7ff6a08cf5e5c0d249ab9f8bb6ca69010987d0ac3846edca0d455f99bb8bb81649247a1a91bef9f966448ba8a74a9916200d1c1c6f34eaa312ca71c61e03da638950c084ab44fb9ca5c9973404e81e23a4bd4b9c7c0d317bded5f21dd1f2c37a5baae2cb343c5f335dec05d247246990a288747de814f84396e8bb7f136205f052f703dd71da428999f72e8d63c1366a23134c6415a9d5f4c5cd3c7ddf42184e534189d9f210e421c3482b6556b886913e0ecadc304ec7c56a5570c64e0abb5b34d817ebf2d64884987cb57e08864345b2dd91d64773b7c52b3a2809efbfe59459f6e3cefbb7e30de7da7649925b7ceb1a87d3b30d132f45e643b1117ffc63fe07df0add02197020e2a2946ba3642f8111dddaa526f781fa3ea5abb292743d72f6463b99ee6f05d3e3f39c386ce0fc5bae0e1463d6f5176abb2bbd62bd602abc885aecf744a2793f03b300132316792c5717e5e6664afa3336c33b02d2bad47234a21cbf4507e864664c5065e65f7c90088cbad512cd2ea80f7930c33d4d3ba8caff2da4928c66bd3f203a331dfb63e91237594cfcf61a71913c49dd0af91050c5fd8e3367eb942043478a4e39498f6fe6cc0b4c608891038fc6fe7c46536508722a696ffedd9aedd6d42096071f5ac23df3a65a0275b9daec043047c66960a07dad0bfff9e67127ccac456ab7ee14c20c5df005f43825e26b7e4e0e674c8a866103c951a044a11be8297f2431b43e1c3fa5af3c21cfd1e4e7818b8cb78e5ed8b5fbdd0baf613e82db2d0f49fe42e69da5b8d62c5617a0627c7f0231a7cecb3a7371a53a379566b105575b62c9522dc83ceba4faba9903e5b95d7155807abc1bbfc935822d20eab70e22c4a35b111f6b71e58010c06ed1ddec688cb4c1ffaf6498b4cfc980167101799b6bcab9ea796d01547d448bbe67c5e978660153df6968907b1c162b6eb535d3f743b808b8b87d913d86b444103500c249dcee7503376f9c03373de435ea7288f7165b36cda2f79cd0c813db8ad2000b537095f2376dce431b9a55545194dfe469e6d882a9c093c7e919fe7c3d9b8dd4b7c92920ab2149f3116a5944f3f91d8584da464746cdbefbc79e9540bfea3baeea592a02de09593df15bbe957d5de31b4cd84fbde25ec928c789f9efd3d7dc10d55c1aa977c3801c87ea77bb1a410cde86b066e41a01806aa6f21af518d09034ae3a50602ea2743c2666666422e790e2bea73c01cb59c76e87dbb46fad8b75d46824b84911f888eab35a7ce5a51482ce56cfcc99e6b94fb74eebd8c9a6d975e8075c1945e49194d4248e54e14c94e5079ba798948e1fb036297216f1bbe68c453d064459864c04f00f1cbd6753e738e8221acc96578bdfd5e3e260cdac4b1187321a6448fc4c3475391d792aa205c99067522110f160fbc76dd7e9719033b0756af2e07a33cd94f984903dc09e8f3e90cadb387bc7e0fc38576803cd635366dc3b998b35aca1d84dde032092499018e4bf21b6f459c34e0b77d4c1ec1cf602c9fddf3647ef6dfdfddd112a1707fbdffedafc0a72bb4995dfb4ff44b7a380e498563dd723da20e0979b64ba1f298bbffd6d9c5fb32f6dd2a418c04c31b81098189c680369e891e13a67335dde7f4d6b596aed63201c523d24f5131f7fe20181d2734c7faff14b77a9e86af46131084edd554b0c3854e1aafa6c2fe6bded6f6338c9ff3af62cfede4c4956fd62ecc67e4fa1ac1234187381d1e1251ecc51980facfa2c9d5289e45234d3e2d8cb35858d178e15431893293cae0abff39aa4427c08057892ac3514b879343b76be9f6190f4c14b024bfd578fa8a45b28692f9fa86ae98eca7e5146b4a7e3f03563622d27a9c2521888229977364a42ac1a3cc09e452d0724400d830caf684a837d1f11e5192e67a3a080ec451ab717fdae073b9ba13384215e2abfc1fb7d90eafd9f18f8a9a1d99694d302672ce85e5c224c9a4903940d9d7889163493404c19867d6ca9a4c88dead63c4ff686bd62dbdf3a3a453a452834831bec3d78dca52f47507269e6159dd2ced69d50da21dad7341fb44a7f2613fb7226930bf2bd8dcd66da3510c198f0f939bfc826ab7d770adb7eb3df49254f03f46ee42e9876e2129aa09054027888c65e1d9178dd0f746cedd50905359659c4d94d4c4308b9dd18b398ca81ff19804d595722a2ed890c63c61ec1373b76121afed0bfa1f427d24f914289a7d384c1bca64b448311205787b67b4e5bbcdc148d5f62871ecaebe03176b13527b5dd7d2588c2dfd345ed48337e2dba85b4a85d124c3b54e07a7732e25d7fd7fd7cd8c7599e44b19e013e6607f3cdf4e05b9ab14e96a24cc819e7756e11c7abd5ab087bf3ae27b1204bda0ef60229d26c9b8677db74b7a930cb40bd82cd4d937fe364225e65d8f4de9e7a4b54b0b3c5452e3c6d7611bd7ec625fee436d85615f87967e0d2dc32ffbb564740f8dcffa2324f67685f4e23b37f277c96575c7500d8a352c7c0047ae51f0f46489a060a43c9ab9d7e708e6554059b326773dc13451dfa8961779f4df6580e17745c91d042c9c3bd77527b4f18a59921a25156095ce88f6eeeddec58e6a8783aefb38c4e75ef3614851c1c3c9108b75d1ea318333a63e8e45bec3e6411ae14e396f4b8cb3da32c6e58df71a7436e733b915f14b4ffcf2820c0c11265eca86bbc50598bee8e134527b543edf44b8483d6481fbe4347e355e6f2ed30c77b5956fcda07d6e9a5f8de6412534f0aced9706720d1898662ba0c3d92266880e9a7dcbdc1d55c8a10d96a0218cfa1084c650d28fd4a55591022dbf399e5233f0fde30ecae888e61eff31fc876136c4dfbb52e0e7b6ab3df2f97697f6ae736a7395a0ba58db3de6abdfb5c92a27f248fa63f773f05f0174632d21ca5ea44a35a1a70e1d6455c01a38798808d9ed55a45df7c3bea1cf5f7c90496cc5a5d54bffcf54f2c2ca2fe47c1af3e777f0f3951a8863b2e88c5ab39b90c1cb2663753661aa17ef9e4eea20da8ca9ad7b6b9d70b1dedf6b8704d4fe198a7581b76334d8ae831e2d1fc39249e2b42a514aeaaaf5384b7a4e21d22b1a4d70da40e4bc9e7ea3673db8301aee2cf7db81a4979227872a8eabec3e7a313f87a909b04758c43a40f32833e832256d9f80156fe4f98c9cf43e966da95d855bfebcce893df89f7f83a79cb9d0a6d8a6eb891671c7e54856de7bbbe46a1a5c673af9f3fbda4168fd217cd93bd945a58b2e720dc35b18b0eed743ea16dcd3ea5a66d0e629b2b260c97b8139ebe93dec1a56edbe26cf15f6ce0a60e01685344dc99c31448d702017707aaf8d43861cbca6699de2933eb384e82975f5c56bed976e7e178b43e3cbc953f8a80b8b4314725fe5b224fc811e54d18f191def93456f294459c10906f767adfac12837671e87ab13374227e3fa2fe11e3e8678bc5c8555e5edbebaa7032ec5eb58ed41478ea465a7ad919abcfa7380d9e6d7ab5520b620ebacf99c7cf015d99cded0154c9a0adc0dd474fde67c1ffded9314dcb84a04ee5bf32760019200394bebed9893380515b7098def3721f6257f2585535cc5740c297ae1c375a397d5271f591995924f04579009985f1fd7ac7d5e6cc2c62b689be8e2d2f634499ff562913e11828f2f0374114bfbac86eb413cb24341133b5a42c2ec43168db241ea7bd612acb39457b1c2ff94d7270cec66b93481396874b5db51c5ae83a09b9684199604397a4071293d44a8622e748cad2d6b9f09d475ef547287a45c689fc4baa3112fbe7c0a7b6edbc47f64c403f55f6788b1e5d73680a4a234840a19b882fa5cb1deef13d779289b0b24251b5c6373856d7e8da43c6fa7e16bb1dfd6113ed65fbf61ef618ba89038642b5f63ab06eb30aa8a7c1e7a2e6a28b6fa500dc1db25dbc118342a3823ce1fdc8ba4e9877f1ea9b684562f5c106b55497d6b354a92997b5af3e0e48c8f16407f44b21d14f31334ab763d980a173b6da07081e118fe1fed55a9f793f0e04622db64421f2567a17579d3122b965c2f239830ec1a484cd6714ba00cd84facd8422354e741ed39a1afdaa8e023bffde222926e1c5d67f3bf4cc443ec03cebcb7ea55572841979b7b7e213b4c7520a6b667bca78c1027a9d6a19f734da72ffe29eeac40ba2afa8071b138492e82e54d178451641538bf9bb70933fb9e0129ccc6ca421dae3ebcb77b408e2f0decff5765d7fd1713552618296e79ddd7c6c2b8180c9c86f083bb7a4aeada58ddef4d721763c5ab40cd5cf2f3a1fa676bf0b6f50a6688ca27dfbf1bb4f846e015ac05e9b2bba7fa670ae04716d34a0229c342f715fbd8538b9579a23d0cbba6a99b9980e3e220fede3585065da768f566733598a0565a0d6cb2d1bcafab9956a734d1b910c708477e0dea7f5c06b093d5f4e3ff3befdfd5c10f6afa0dbf0b846298df222d1315d488cc958c2eb12c5cac66fa1596482e86f5e1763edc8d53ac569da95585b548d2aaedccb61adf927a1ee9aa2d5b722892aecc1967da5814c30a651a0d35badb5c74609f0f2589faeb194cbe02082b07478c4f8a875547488aa9626efb531c42eb53d1e0823d56f5fbbbf60ec309d55b1440082fb91d0aa04ab00a901a3298409c06e196cc9fd2dbfd3a4f3e8deb1722be54e3676a4411e6a635e4847fa7b200e88987ae26bd92f27a2aabe86752f3748b2c71226a7e54ba6b751a70b40b750347c2af28118c608dd7366be9185fb7e9e765bf737c5f6c20c5d378b8bdf70c19a07084ba5d792a894ec3ff97d450f04e999074dce8d4907b20055fe1d16369d3641d73a81266c91a22e8ee28a362a7591a44be2856a8f3302b076ec8158205eb7eaf0f37b4583f40c02aaec1120d14af1d5b1967fee2b1a2a78ca7b355c9a4cb1866d685efff0b91dfabf534f9d85fcd4dc9128fc39d0a6a8b47697e8e03ec8807ae56661a00c9d402c38cfcafb419180a35dbcfd1fe7e8b10786c74c63a7dd0fe664ca44bb4fea76ca0845f0839c0c3583243dd7ef495459904159190e95495df4f3ef05df2f01ea6743d6b210680f9766465727469c923b856cb885d6329e8930ed18d56f18a8c3708fb0cad91251123457f5af6623f443fdf2051ce6215987777d280311bf80e22d5669d4ab96f99d2442afd4c3c9d0edd8035b9453020c78948e43d338f757e0208ad1e8352afd04cc2a8980837a6b30b2344f6b30e190dc38d9ebe8758a37aeb0a22f17c2b651ad2a9ee9ef87f5a9e57ee715344be8b845c1f31d4e027b68e77b09241f5677b88515f4845709e6ae61596c543c7f8008107752e28304da5db24b2e8dfe1435027e89cf9adcfab44a907aa4f0fb6404b38ff3a31dae30af1b1eaf3e5e1cfbd5588af0da41776feed022ed29262b4b128bf7f4e04d25a47459fd331dc1c167562583e9adea1b5bbc0cc41b3c44f31037b6f9357044fbc882b7cf25048716b3af91b2c51145083c78bc2c6cac463a0479cedd96728a161003aa4ceb982128d74481111b0b1d75e5a5e5ee73910ccb0070a8e2a94386310ec3d1211e7db71382577c527971ec682d189911e2d4cc84fdc44ebf781956fc52eff82d6374c65ee5e2d7081ee57171ec61ab82536cd03e17cd7849b3590b6940f42d2785d07083d14f1166c77fc40c556d906005a2e04618b2f5423ece1c63c731ea925f8242c2cc4a3ee21504eee8037b01096fa4b6834597878591d4a999994b6290b126eb7c530ed6ed404b4af415284cd039deb63c1d340b3b742fa9d7bf6742e77ff73a21cedc00121dbb2a00e80f201bdb21ca6dcd29587e7deab4697dd14d42dad04c77b9b70e9b9762da372152caeab77e0a8f60c0c09823180739975a85a698911b774da1132dfac431c7a42eb69f5ecdf81f38c0b0143a55169fffe8d1572a826f0f4e1f6e8565e68aaf17854d16d35c28dfc35a8bf20eea25573da6413b1517344e0390737aabc9f5e2aae5db44b1b91b17b593e731ddf15f10596190f5ae29464dbac2ec65f1a866e134921281f590be4acc70d358409d0ce4119cf33b4553bcb10f44f67476e07769d845ee7ae6bbbbef26a922a944a7bdbe1a1918d5f4ea77e2f7f7aeaffdda18eb79fe2aedd34f9d090f3253cd28c14e59c56d84605dd1b82c71dfa91bb705a0bbb4fd44e05e2291649ea0c7400c9db7542637abb660b0e58f125a93e8ddf356bbea200f3afa8f1ec3c42fe0ebdfcc30aa2d5fe5e25ff433222d72bcbfaee849e6129140575b74a13a72a6d98793d03f110af889c7a79a1d399760b0a05d762c05add6e969ea1caa9dc034f764351f05f9d8577e3533f4aa39cc8d061a1c4d340fa8b84536ee6f9d02ff2704d4cc26b7c340c5ab07c1a3cb0ea578f0b8365e6941c02249d53744818de7101eabca9409017d05d1af96e2ed1d51c6be8083fdc4c00b543cd85aef492ffbdf74bb2b433d752366c6cdaa4e51d27aea093b12d44b27ffde7d5063dc676e8ffd593f9799800382f46618dde70d95d074e14725b62c94edc17592d57e4a5992f2ad9eb60d5512004a9e8eaafed375c15c0e16165acf27f05c1a2dc971de0900decc00b7e2620ece49af0df5e01656994e62a0c2dec8e5641dec24365ddff76ace9043d4a402584262c49871042cb1c54bcccec2373f53108061ecc328fceb003832c7eae5af5cde57362225e7479c5da8cfe52379a455db055bec42cd6ea4662c5211bc76429ba6dde9b5324cc397f56ef31a34044ae8ecedbc8ba53e8bda4041a0fb6cb82a7c1217ab25198e494dc33d1930e8770b8aa259f604be56ea5087787fa3407094635170f27a9a2ccf93f02221097e7326ed41bfaf14bcf8d8bdc489451263b966ec4f4ab458318e8a4137bc02b32ed15d1442b522de55cbb5f9469f8f6e0df843e2cbc69048ea532fcd001bbe446c27d8290aba65f812ff07eeec4b38378f7d37ca0e9b1ac4ea367b740e955c29479f1528f878e83b2d9e55c32bdecb5b7085f1b00e6c86c6fa55a0a780e15695ad0ace6b45c373b331331d762bf6dfa6cf7c4784f42829f2df29431e017a09ea92684cf2760c742b0a4c05f22cfa8d243b35bf17fbba2c62faa984765bc476192d1ef762ed6e591786e9270751785d5dee84964d8833a72d9dc2441039f918a72d8b7b9dd1627f62613c3287a54733fcb5b614debde84763ab354d27f450aac8c67e1a19b3684df5645aff03a2568747e6be1b80cc727d7a1530755bd9de359f57d0d71e99e7857069ca3626ee0e992f01d2295c3708f6fa32167d46dd40f101c335105332194818f09eb8ca80babeb5ae19a8e627d23c02a6236706527d4cb3d0faed5d83d3de55dac4eff51fd13042b4948b9e3f53d98c2288b4f46c10e2d8aff75b4adfd99523a8c48f58ba6a2308b11aedc9837dbd9fd66413078c9430d8b884c5b89c7c89a4d5d4c4c95e32f8b8671c1604b6f5f4ed2acbb6316a10bfcc23acd484aab5b583ef19992c0f37cf6c923e2934ca1a380a0860ccf0ecb35e60499bcde89ce3c1fe4cada3fb5c45a98aa08618109a96b5dbc7942958d5d434faf92d74415981004f2e29cb1d44eb900b49ed82877ea0a3efb31b47338042f4e71947bae8e18706b42c12ecb1b145e5929237124ed16fa169b6b5f4cb3e34c9b17142a84bee848650a3ad97b17196788875422061a84c224a401df120336064478526adc477481b0db24cc89ad2b18cf243d2537b6095edf6a6b57c14182559c957cf1049be5d2474170b59034accb7e474f7271e99b64288b0907ea5f04a136677e3b1504cea42bbf7b825af4777dd0118850105815d5d271b32dde50a707f130d2445d259cc712e91aab28cc83837f781a1491bb82ad3f3656ee4478c8d3924a4d55e19c66cbc9e2ccc7ac2b45c055e7fcad45480ca2de2d3020f9016d6fcd6ea6c6c98d21b05d3d92292ebea5dde96f3a333fdcd0fe6d4575f268c5762b4725e22e0f6c59a75257e5b43c5642ecb1fbb152ccf4a6fb72b2ab454c785e81b731c0f2a2ec0bf0db71cbca90a69dd1a036d158e4750e6e21de9ec012dc2f5ac398cd1110aa714ed9cb4afe25db4bc1feac5ccd326696b7791ffaf68ec40dd21816decd230a26c7f74286a869899e1f01fca4910ea91d847ccba99873a733de37339666a3062200522c14dfdaf6618bd11b03d6983ceca2bf642732987ef21e91a73f432a8d42a0c5af196cbd4d75fc9ab3fa361730dd38ca970f1b5dcb9841c767373d50f004edd3f88022934d8e8016cf47af33bbda5730e5cb1c54e14432fad74834ae0007991f210cd8c45f3336cdc15b0374107fd036229fe14bf66c583d51239f7b21def5ff01d30d1f3fc463fe84642a9e831f81cc273235930a75c5f9eb457c79d451e346f1c3e850ca74888a006a48b1148ee55a6e1393dad815979ba9dfc1a9dd12167d37cd6d467203bd159fde6658b39923a6e4a9c3b66ab8b10633bd9ed247aa858a2deb0306d5c66c869055dc024f68df726b48d273a5004206351b6e96d9610aea65e5324da5ff729971827c0b911cf48cb3fa3599410b6e642c3c2d22c525d8ebdd1ff9b836a7dc9e98c907f3e080c65f74f2b9f5d00127b209db4e624c22b864cde33e134f52e85976230b685fb8565478e53a8bbf7cf0d637853ef7100c6a98fa50052abe00d807347c59a7c8070363175ee02a0d5dcf3ec719c676d007fc426e83a9fcc5858cd01995477b82039570d259ae3c08d7c4e8a1131778f1399954d0ab50e696b29f93bac960201e86f6a35acc45b0507231f5f2f6e6b957974c5736355a9dfd826776b95ca8ad02a77242f6a96d5a0dec4fcf0ac6e68fe82857c0f1a51b4601471ceb8dc966cbd019bd7a8797ff8a507df362e0eebf3d29d050a8c84a41ee629dbf05b32e10fd1dd4a94f94ae635b7488718e33de4272e53e8ee8c31be0b45a4f4182f0b0ab3b50045e3587a6001fa92c63b02732ef311ae9986dcf6eb01a73f804ec58317b4119ec36192d0578f7bfadde72aa2fa4c68f233eff938474a3e65c9a4cf8fbf6467cde24cadd735325ec18d5747fc178d96786b55f5f616e8e995e3865ab622f1a39e0516b7152199ff0bcfd10ea60ba09a8e1b10731bffbc9ff6a9b283554d4abd41f271945a6d981b7c687a21f81acecd1a4c00c0a11125930c49fac9615e29242d77a8c05cfb4db9d6731b60a173bb95582e57bd8d1bb09d6d83ba037554a153bfb60cd7106c23b0886dd10006b411aa2b5ca2132217923b0e1a192aa3069618e07e88f2870ed1d46266ec9e2ae5628ee5989fc193453b5dc6e3c2996892b534a911882010c786037c7b33ac605d9073be5de2333a432a43f7bb6f2bc891f93c6f68456efb5daf67e5df3354f9df490ddc8e35c6b9d078d97cd554a8a3b5377f80b630f85c2e6f52d0fdc08ee0847413f847b4ed8c9b6c975c7dc323253b9042f669ae587f85a608c7dfa69d6a9a5affab0061845149a26229fc323b2b97022b72e82c4f43ec9906c24e2e6112544d8b2e4a8c0f3586ba44294c3344922fac5255cc6a8eb4ee77a650071c2494fff0fb5a847d80dcb61c665a46927c788fa1ade3dfb3f3d9022c3ad368f7c9b4cac2d7c4c572209e326d5dee9e76490e30c4c9d1bcbf1870b59cc7bd35b2b5cef15524b79e6488fcd05cb75307c3dcea6b2a4a59740d19b842ae5b3c2eb7aa708870baaa55fedb652a3bf29536ac6e8f6a7eaf55a39d6baa2c7d0980395b16c726798f605146a84ff236a569b43e583be12d05eca17155290a4d54936d5afec23f86aba9107216abe38d1e470a9b14fe43c6848ef39c70cf02b73db8ed6989b306f443cf66396bd4aa82d8e1a3a0f99bdcf6f674d82cd93e56151d7073fe59e72be5dc4abf48c589102fa70ab22cf3fb9ab49b25bb2070daa1eb56052e66903fd47d4f82824157a965bad07852eefefbfcd89ff6f65c82096454e59c728479c248bd517a424b2ba08014f777cd87885b3d6b23bcd9c0ed43fe091d11cfa325081b6b18b65de9d38c68c711b883db76e15a220b6372468b1245d1b3a2f6b14d88fafe32a0bb7e06360db322e41a662d5cb8ed452536f2a9c703f9cb15188db1c8d8282e541f0804900f3839d8a509dacf9a9535cf1cc86071d2a1658da13dc2b95790d033728fad591e68f6591376ec2171fef96f42979260b1b4d581d8fde6fbd18c1b5fc79ab6f7fd867ff81e5a83c97dbc444669ceb1df89db123ecaa8ad79baf6d11a905624467d8791cdc7d44b7e15271f1d9db46f5b67d264c3e703f49770d481f602f6d32ebc4cb5b180aa2961420871ac5488c7a56db0413672116ca6b8fb6c037772e819801a7c0fa8cc3fa21e2f17e8e26c8d3a7f1ba14d082ab66c86d5042b95b3fc708de6f16ea639c1d5ace6ce96dbca83e6dc2ce5a4df8708139e076ecd91bf7e47fc42ff3f9d471b483e1836588f1b07c32c93749f5adf89d49c6a39a110481eb40d0724f99be0b2850f3e58dc81250f46c1c4d7facc99c36978f7cbd69e4eeff9eba0ef3cc9f3a0ab5cc722252d02f0d2bdb72ea67ae1422e4cfacc350282a9cd6b90b6d4f00b551179d07d4a97e5e0f7fdf49e4262e73695b4c9915ada8e11ddff3c09efae041f0b034b6c1f1a6d2dad1b9f00966b27d66c6dc797b7aae85413ec9bcddc02ec47f9429d2747b378771e9b07928bac8a35946c194a24f9a6e1f8e5776a52f6c96b87a7cf933b749aad7dfa74852be736babb54f22163372bfda2fddb565840bc85e2aefd8131b90c81de7db12fadacfe203205458636b6e574b41e0aa8db4b26e05c95c8a478661bd4eae6bbe6530cbe4b97b99eb5afcda36f75536f5923dd8054a81378ef7559547e135de5e32928294d9562d508ff2fc79ca53d31c6a6d7464f68c8f7fe8b4be54e3ed7f341bc6a9de6fb0f760ae324ce5706c2b4bc30c1cf4155c86e4248b5f02ee9b9ed8589ac31ecd472c3a46e98db7661c0074a66066056f7e732d15092589cbdd360190fb0227f884ca471c14ba5fdf3e500b1d2959aeae4b9bf637cf1eabeb919cec46c37348fb8a04c939ee0ed7a73b57a245807b0d2fcb61df7cb535653ff079fb65acc94a8415f79fa4a82f0a79e5b6befa2d05defbedc13b76bceb3c16f65f5208ae21e2ca0b1504d129f1082332d4c8a96ac19d0599d2de519f1272ccc4c3768909790c7f1d1efbf689a8f607934217586cc78c583bd03872f3a8005e9634da93d212a9bc39c2920c0dc233069dee84f6672ce9053f64782313cd9dda7b1c8f4280768cbed53eb5f099dc91aa746fe9a4cc4a8aece29841a4f0db9334ec3b70d81aad9ca797d18172be43bcc6e99cbd04290024d5da52bdf1becb792165516eca9b986d87a7fafb13bbd390beedf2c98b06c68ceb83d9852b96bf6e5ce8fb2fd361efb43f2eff2b264cc36d162cb990460b8e4281f0e1182e439993372b3d204e5e0a61225078908f8a91f3214c7e6535457d18b75f98e984f776f77b08f66e599a72030d47e2cafba2518d6867884d57c2249e5c69c3c12b8759ed2f67b82142a04e3a53759638b10400ec487e87ceb6e9f90c5f144bcca17e2b0fd6a089df6cec1366ef65bbb15983b1746c21c2c3246bf359e35149416575122998e7761142739e45f270af706ebb2c58e1699c4f6d3c3273991c317c7966a6be9659a890d5c222a10402a034110e5b0e4b369a7b73ca5cfe1e7cf1e6f6b025eca169728c3bd5e318321bd79023e00e1af5a825e90bc9d2dadbab8abbd4e8b8de9433f79d01b61af522b7c7dffc2dc40d0c9c2add76676f84ed0148f5860b0b7805106235da91eac4e780badc359b7cc3e915dcd931f0e5f930e2901d391509001f8807aa39cf52be816fa11e724fee8b3c39c3a4542fbb357cb6712e77201cfecc99c5f39273231d256a2beedc3316f865a6ab24d1e60f688a9fc32507af79931a8d35251ef8b382c722c9da5d9e403f3006d46c0814c11cd5b5f988c99f42e7fc59ab48f08dad59ccb697a4ae33a07f7fcf9b06db137434d12fa0b01a1691381520a4abb3e1618d45ba5ebed0164776b2ccbc0110a594ae30093bdfb081ace9bd1dd0424bae502515479c5004885ef252844b57818c047736114cc2cb2d78b123a03b266ceef4d4b430495d4da5b5f16dc26cf4325d69c932f663c1db14af5af8ba8367b3c4f88155e2e43b59545f28ba4039c32b774c36f2cdabec86a9889ae0721d12c5755d5fadd9ca7c1758346d377002477b006068c729469bd0f282167a369c514d1cb8f4f8698febb7955186cd1c4b35f711265dbaf019cefbee58848b65d32c2f9cdb47db64d283abc9d58a47fbd24468e1f7b139edd889babe202e4815148ab669a57077ab924745abe0177e735d36f1cbdbca8016a110087738a9d213ec9c324d2218895b299330edff551c7261b4f3fcff61a44efa5e00d06ec990b588aa96bef8f9e027eca92c1f5ca501d3a3b76ea7dd35e66df12cf3b08d00a6334460dc561bade28c4b333c2ec43ed02c81c5971a4d0ffc3d3ec177a7566dfb08fae10a97957d09f8bb4d27cd0ab1f6be1637a1f8163b6adedd09463009ff5988ae7d587e4b99c0dd5a0697973564ab18cecc2be5cb5d042410a7d45646c4fd90a738357d7200824babe439fd74e3f71b2b95f0550190ee80ba9aacd05e8c7700b90f4b3b5322050641aad795c2c4659587974f0dbb23aefc0a25679ef33c7012af53df8afe654f576b43cdbbd31c736c0e707fac75b23ee43fc0dca724e2063d85e6f87db911e08077f2d5867aba1349ee7d9f2150bf6172996d838b79a1323fb1360e3d8cb97794ccd3d6e8bc75acc94b221b5c7b4bcf3d5827f47531f9f6d3ee50f026f4e72b4a6c591731844266a8af40f5db9e4ee044eb32c7628ed1027cea0625f7784beb851e76070d308095f26c27697bcc9237a6fecad32900d0e866303319cc5aaa680d51a9774f5410702f5d19f30a739d0ced55d46d8dd5c3ffaa6d01daf867b3a8c17a512ac5bdb15f8c930c3da28c4900f6b4b121a2b6c273654342bec55b6ccf3188387fe1e6c253d2c9e67810a60f70169581fc4d7ab74498b7ada532ca41ad92065c98298fca5492aacc2358f62c762cc1853ee5a2f9a65c67c6705a1d84cb0994140d1cccd4f45c73f1eb89358f367d394ee3521d0188d8bc5908dc087b47b7177223e1c1f6c155c021c655f2bb2caf1eaf2fb06a4b387f83162690ac48b4543bf89545f75b4b932c0bff17cc3c38cf00adf6973fb0e2e31d6c6de92f172a8e01afc9b39adf88dfd28031f4e11a1ee47c18a1d1c6e29504257e126a9d138a6f30f663b43b60b56d89c4c31b660bef1ea0e53cea3f5fad3ae9026cb6ab798cad02c01ea285b1f6c62eb46ca23fe7298744fa5e9b3988cde48a5f4a443062f9593b5caee0fbdfd2c4e5ccfeb30c2a475acf6e68dba83d7008f3da0454a08f1648b6d005eabfed87b93babcf5b6f0e538101c0d1fdfbbf736811eff68d75906c8b64a922b51ef62e724c16eeaac98428ca1370f687b6c3ce41de0cd1412407c5347f89ec7f9f96b1aa8cdc5564f2670ab0c34afcf87dd5fd0342e4852334f1b7554d4e8f7eadcbc46259f364970747671bd815ad2b239689374be16bd9119910591302d66a4f8b7ea9e60843092605b3fd7cb36c20e670897de981a36d4f2780c819df8f93f9b63b1db13d011634b008be49ea2664713dd8180c84967f633eb731ef96f45f5bcf339b3ddee5ea666e7bc356329ab162765f81c728672a6396a40a6f2fcc49f61550da10a69905d717cf89bc1605f9a41e1068cf755793d5ec9eeae81e559514b5a58b645ac7bfcecd236f79fde8b1f7646577c307e78e3bffb0eb98f62264503573f8e6c7759de0a87287cde77ca0fc2856bf61d4227cc939e5444c4338284557348142c6b1875300a28cab2ca3745f80d1ed8c187470e36c0ac550f9d305b257e7abb1df7b8e67d5ca0522ccdd6e9b4ca35f06ec1f3abb6c391863d66bea410e127862180998c9b2620eb3f317fc5366757acb9751e8dc080ccf977f9226e29233ce842968d8d8bd463ff6d52e4bd3e1357558620f2634627b973b5eae5401ca25cd3758841e65590883c76d72fe1a452608bf43cf2b168248425c4cfaf69f75898f81e13ae82deb0f71bc6a6be7647145a6caf05bb11ff57892d6b844c301cde3a83bf1e6677b3c1aa340bcdeff49f1e1cd8eb6cd5d0c72ab6fdadb618eb321ceff1a533930291f7236b60c7a18c875db06ff4bbf8f91882c0ec7ff987e52cfa6eb1fbd6280905c44384ed1f87c7b0eb61e7286d4ed5e4cbb551b8122f988af88ee1067116aad48878e17516c892851b5a4eebf5874f1e38ff531efa0cd876c4017adc7692a4384ff106367480cc0aad14fbf44e1c89826bd98dee8731935ecae1e21e1b42e2b246bd212464173abd516a9f123ac6fa8917ebc502daf457e6f4bbfc02936908b62419df6aa60cf6e9bf69f8d342397e58e49b31310b566ecdfbec6086c5fdf4f71107b86614b57fc0627caf63fee9b9b0c5243da7d2d5834fba6812199504121972ee962d90d978cda758c0b83f4ebe61a5e36b2b18d55d07ed92391d18599c9b787257d4e25962f0cd7c749e9aaf628ed0ef8f6d1dc0c8751d6a5629a798396660a35b1c2a0a8989b2c3f930b54d71d1020814f14f7cc7dc25bdd5371ca76ec3930275aa2c5845cddadc40fbcc6bb062052c63e2bae1eb596943da63fef09785b25cea3d61a1b6f7f268b8b9d5af03def6b09c12c0fb16378818b601ee3bc43fc6d6fae285f5b982fd8ef49fdff120680225b1e4b9a294c5e7828ddba71845994f27d5cfcd48cb039ee7b2d793cb237bc0dd4c045be7942a20a1a288f5340ccc5fdb7d03eb0821fd9dd3b84edf81ee6181f974ccb244df5c1d4dec88e7a3c9dddfd73ef6f3e59cb964be23718a0543d8cf84da76dca9062091fda479e541d3e28c663caf272016cde30e3beee50d10f88247bcc05217366ae1abcc4913a0f70c7091bc91f12e58c957c298eff40ae398ddc79a472896b97b7cd717e9da2d86e98077caacdd5d220100e0dd36c004aa7934ca534bccc4f5fcb0d7089f2dbafaa5f7bf59f7198b258ee1f93d5175d82e87133191e6db6c62d461ee0e03d280b28ba847abe370bd5cee5553f65c9232bb54af3a1e60504d45f16e27183619d31c459e35b994c0b8874c857533fbe06e481e54260f92d3cfd19c8f2354dc41f921e2740af177ea5bf9f8402040858c5022c488f21b52827c0adf7a60a884ec79e24ce98f4cd596276160f7787a8fb334b8521ec0c39d7f22e67d46121b4f23b263bf515e3a5f4fdeb632d05e248f9df59098942ac784433d33e4c03b8ef76e768f41ee83cf55e954d982e5eda9465bdfa10409a2205027280733dca845c28ab894162a1fefdb777a169dd5de8766ee8fe78c8d3979dcbadbb6e52cdd914196385a609a64016b21ba4ec1c17977bf23def1d8413ae9fdada24e04a4e139099eab7c064433d246aa05d31694a5a5d553d06f13c107780f8907e14c6cf6a3bff23c1b81d8ed2dcda431a5012ceb7b297edd3379ad93c289571331a3a40192468a24415f361a54d5581db1a3f68bc41a7c995137c3b9a3fd65398aef8ba4ad8d42b4150263244e77dda4fb714690920406b4a62d1de2d0780c2ab5d33a66c141d698fa9a9a0627242e24fe05054ce801523fb912053f44d6cc67c957b824ca563ac97ac7f9badfdc41db80e46cbc417ce4822ea6daf19ae5e38bf4772b4a95793114114fa16cea99c7a309376aeb425c85f2852818ccdac7950248cebca1541860be8385e33bc9fb949bb9af264c4166380e235bf6348a89e85185dc2ae73f8f8b5b6c14c6a2a602898c447efcb5e2492ecb207b275dd310985d890d2929a1aa101ac7874f2d0c788cf98249ec4e41bee4735fa012262344ab133c64124032dc2d6ad4c0f60eb0db2599ac9decb0b4edcbc4fcf99fe483a7b68ffce8a4628642e7837f9cc9a7fafb3bdb6b58dabac2880a4b09cf83e862dbed0febdb4fbc6006a57b544683e95f99153da10e200ca9bde238e8015d09d0a0870ef7c5e0745bba96693bf38ef16f00f54b4982a4e12d1c691b18862084c0fb4b248d6280c6dc0be1dd0dc43771e6002b4152a24e1104852e71f1e3410bf1ecedc5ea5f3b40eb21f455e45352e899a79e2857919e3488f215db647f0442975b3ebf9053dff4abba1b9d1ff69661669d7fe9c442697464406a2af6165c1dba5f0e38b3f0d3a15f31e3a50dd61d35a26f6e47c1354a85325adccaf813cb727c2955e423a3c7aff42901e6609f6320977bf1e0922592ab8a7950593c446ec73fba687c83c6e6269ff3cb300f638198c9ef6c485f3f00182d81c2e95a95e286805f5c9dd1915b26ff7467d98519dda5f72e0c94eef67db22da4dcc44ce60ccf2bf68ec8c1437a55ffdfb0e3908e5ced946a3604ad9e50b658a5b760ce0f45e4841ac5c270680bd2273b897c622e9dc44e0bedfdd3e57c12e3cf85b4f2e632d46a6bf1bad35446089cd41333c2ef5d3376e8cbff84dfc5a95b8691d237b3924a7541a7ece3679f2582840a7f71955711ed4a02531f390765aa1aeb5fcc0a0a5377c0a57e0c54d481ad7cf6de707b2ac7808a05d6edaf6b868a31a58220a166168314a731bc81867fe51451a663253d82cd2881fd9ed099b6ee3e88e1e4f81442e3b5c472a263281036a54cc5681c050f9760f5c2a7702c30d57dc7774bf04035c9ef441fecd5b8fbe243f620190d22e95733afe1112c1fb71d64608d0b2aa547bf44691040e412d2e7e24a4b92408e7267abea63ca31c63cdaa18b6156f29092989be842eb8f56ec6d6067286215d9c552dace32a9fb1fa05e6ad342fd7777ceb302255c40b391c6580cab6b1470e1ffd2a316ebd776c495568d17d1e44e3eef7fc37ad9dfff65b2e516b19c86f84f777716592574a8a73c0aab7085f97300af6612b2dcdd8932b9be3d6149698f6a2aff3d1b85d96d29c5b3b8c6f3545d71b078a9a2f53cc235758335f7d73506ca4135cc95a074b224f7cbb1c51f7eb90a9ef902e17efdf819b42ac9f413a775a43783585b1c4f1b7040988b21d56823afb2015c5c222dc238abd8cff08e84cd00e1e79b134ea50fa06b1bed4c66f5a81c6ba9b676a7d3ec9a90371f23244890f50c7615d7a2f1dd589e2f598dfc53e36a4f1220186d5a7a280c8976ffb9a669190fe9442881a61290d759f31aa84595324b8b1c6812d378afd1093f3b0cefb3e23f497a835e762e9a599267f70bee90036226a3f9d4f0105cdeea145002269a962b468555ae6eb06fc9cd98fd1a7fcb2b1d45f8ab0f3d949fc7dfa2dc2b1afe56f26e5a4fd0e0ca9f085718475ec66e3745e6ca99dd282de00ca4ce966c7d7834422c39848111ff600c2aaae54a1a57e75312482ce1e9467897d6e22639be290c134847f2af22d3d4af80da7f4c1a0a271202dac6a9fd4f524390ca151332a0f87c07fef1ecfb59b690f2040d38e747994c0c794ca1d7d4312796ddaf2fadc225e7b28be334063eaf2af772a7914ce2939670c766cd62ca694b8c81edb31c1be43ca5dcf3991899f4101cb786439b26ec4f0d2d85c686b110153aeff8880e65b54847d88cb34ac69bc404b0dfb1426df7dd737762823844286effb3ede4ebfe1bc5ef596b2e616563b8a54b2d8b30ad3a8861ef2b9c048771e16b94b325273eb45defadfe61572cc50a87b7f06429f1c782fd125c544a21952758c34bb2c6c2763474a610a85e2ec7ec42cd1d1b831ac755b6ecdf1cc3f4c2b770dd28fad891360e37936f7e652898e081fac6bd64ac9ea27cd3664e1cb30f20f185ee3d830ddbdf328aea00e465fd9cf251c5bd33f7d9841434341b7f2a2e0e2542383e783f0c8af30b6c8a8da18357b36591f4ea62465b134f3e546fbb9cd53208f44e3d9d733b8bb83610bd2d443cd9e0ce40ece488c1611c0c3b38662b994614737a141372ed3b9ef8648543e1be3fbe6388f8c2ef454197ec97791fb8a9e35c370fd90075c3a0e6ec89840c5be1f274fab0a03205a4d63108e297ae1fab79c4728ea4c08a2a366b1091a574b6718dff257d10d6f974effa53a5f3606100567f96bdb0b61e9acbcd41da6379e1a0ba7fc2c6c2b009b196fa5701d110b41780d23d5510fcb59746a5da7e9011b0181aa838a53e54ffa1001809f29fd19fb52269aa5a09f48cd170dcbb821ca2623458f30096b041973087aca7c3eddffb7ea6ac7b9203789c8201c589eb57d4af09d68fa163afcc6165a1d55e786e5a6eace05b9fd5dfd9087dfa159967441851fce0a531824451a13169f8c582ba64d2928fb001aa31cab2b57d2c0e7f5dd20a27456c4052bed7cd88528edf1478f38e2f611b3a8e79b7266f1add94df5be81a47be5ef8601b425b983453f0cd2993cefb5a4786795160271aead5bd8b892941326e5b892cac7a7725efaf140fdb1fb824a769540737cd95a4be046ffdf8c78a840f82526be5f30b8088ee462b1e751dc96a658e87f97dcb83c5844356463c88452dd36be293ab1c027a1151927db33f7aed23ec9e31ad09c401f13d3d6e288e896caa7c2c1fc1fb241255c3090ebdbb8c6800f5f9d0dd34875d0b481ff5fe53e0633f1c1362241ff8ef39c9688d814598eb06d5729c4af852e98ba15ad5f8002eb73e584e8e63a1d7ce02326685e4169d5f1214316db0cf0c66e15f9a55c4527d14d385225e82dd5eae8ae30d09a18e54cccf63549d4553df5a745992c753f7f2e43e59ee51ffc0279b9738dd46ae8c94e09c1e6b0fb7a00334ede56ca7d6a6d06b23f8e17e373d7f499ecee75d634b86428e4e92c804ba80b39c60d871a8a0f4fb230d49bd4d927cefaef6b895be2b803dd06584179172b8b83c9d09399b3a8d938ca8ef494604bab1bb549ec44be1d8c24b9cacceb68d0b58e2abed459473dd695474904ca7ff22a814b085427220459a0f6c44fab8774fdd44b871fd86721eaa141a8175325b3049559a4fcf2edc31c1f8acef6b39ab0a78e483360b6d5fa513d34c5af98bc918232d78276c12a78d8ae077564cbd659c1365882446aad2705fd2634166f83225f56324eb709c7d5b796df6171a3ededfbda3547880b4329d70acb5de83ceb948949eaefa61548046f4f5dcede2ec1ef17db42a02115e3672bd994fae19ed26b50c998fe53612d40d763f2014df1bca460880f7d12a45349de73a6ebdfe622e6cbf2ff7e7f8b0de96b0acba26915cedbc853cdb2e33feb8bf33fc9ee1c62a1b1f6d69fd8a658d01a4bfe522ab5cc1dcb8efaf5459457bd3b3336315d10c975c27eb4c9b690a6953721dda4ffdb368e862009a96c9bfe7fbcfbdf72aab22b562457aa03ea070d9a7aafde989e82e080af38a79a55e11c43e3b1ced9236c688987906926255730ee8ed5d7ddedef14236af34fdf2b09a19f7aaa42b6765d4bba10070fa5965107c59ecb0c34c89ae2d36e230b94d8580084967262d6115d6b09cd5126a6cb948ded40211738511ce7b558af93a22c2b26994c29902599bdc787f6526b324fa237bdc06b840c838af6e17ef421742948bb7f691cfa435d675806e96f1b6383ff3793ed614af4066e3bae433a8470bae26ccb2ea636b51825221055260c0855ac024654780ceb1a44bd2b513cf191b6d78af3bd552212ce3936da32496c372d9e0e26d044d5b9bd4837ffb10fc2d0c3ceec32fd4aa9394bf722eb8aa4da9b2bc190c51e25d7ba3172a52276fdfb20a367e520adee1f699e6788977c038b497934cb6afbc16c63a27640b48d17849d189b1c5bade732e9028cf2f15fd2075c8b7ab0c65b8ee3782ebadaab2872606e383b24d59e0949b6a7885112455c576127821008fb1602d510718f811ab46ec5cf3c82ea63a721396d81233717f15253b16bc0f47f3d67dd69de63438fda5110fd44d97bbd1aa684a71c2537a55480c60e6c279fcd941fbafc923cebd4fb0f5a4bf08953d2b13fcb8abdc3d2369cb521a88b6046b083a8c68f2af5bf57377f26e542c14b6a8ef5e7d8b76abc57e4618b05fd092466621841f4de621562a5780f548e220a5ed208854ee0977e083b9e4adb28639935317b368a11fdf18571303bac782536062c1bd8c0e7d39d25064908001f3a5c293850ba3c984221a240ead46e47151fe753d5136e8a620d6557bce43f82cd1b31199595180b4abe9f9468594238ae0023552da497c61fb91df84bd4d04c15aeb8b2eb885a794d61c2721f4ee08c218baa920b30d5d648430667c654ced069ff3ef60f85dbc23e857e9b99d99ddb0ae822b23d2ce441c74dd58949ddafafb4f69555bb1cd1a72173f809d67e6ff86c7ffad9293a0ee606020545286991f4bc7f5e161a30a1aa95b52139b8af528c2d5591a53fe836ce5ad1ee634ba79a6bbeea16851428046398390c5991d40dd6b80b4de4c44a182478860a5e626f8947971fc2eb82aeb81e6598dae8f8453c95d9952369a28f82419f78efbcfa8ff7d9525e8db57d00196911b3be99c2df91515c2fb05ccb4ce9078cb564d03287d9388c784c57b44742402b58075de1006bfa96f3f9a02eddc77517689064b025a2b79444bb5104312960a8fef94fe79052bc37bf1861b8dc6e3ecd9318407f1e83ef0608185abc13951250b0b515d4789075725009cf9ff4574fd2d0d804704cd03e54433d417dd28095e448d5df6457a7709c0a7fbe327070b55257044fe444058b5f9790fb38162916947f4cf2fcdc62c8d5aeac10e1a99b25375d43b649896040e7a72cf0c7d8219af22a507504eaaa708ecdc2d00abee75a2034061615d5ab85a6d9f30e76e4d1aedbed24360c1ee55f84a2f61fe55ab0ef2b89b343c9e0aaffccc520ce91c2cb6cfad458f2aa3641ed057d3f63948a005dd1b42d757682a8dc374b3a69f520c14b63d1ce826afa07fcd5eff371fe0a2123fbb07c617b4f9d3e6baab0bcccba1ae959cbe5618c3f0d8858163804fbe4bcb24a4b602d33b9ba991aa02ca332bf31ccdcd6c328e4186eadb84ad8ec18249c61da520276440bb7327db537820152e4e7e2cb4b8701453f9245adf0201b5efbcdee8fb97d60e2efb2fc5fc45efd5e74ea0c8c80824e0e2e4a9299e68435c346223b0c031cba9aceb4635673bf16511498a0904d080afdddcf7c8b79d8e372289dd7e32eaf9d76c08993e81683e100800957fb37b63b5cf4ea6b960ef5aca40a4361266686ead119dcd0c1bd52eb295552cf7893c3b888e61e380884cf437f2315433f87040338ae6958ccaf053e9c2eb98e83855bd277c23d75c8839476882e44d3fdc722247d9e04cbc5087609fa1d2fdf95fbd5a84587a7130aff750f4002c5a40216fbf29b6ef147df86c339232ccf92b76496c18997e0e3c188c00d1c3676e728791b8319ff00208e10afcc29a9d1a0f4edfd40e48150b7e7100d8dfe2e352a52ac822fa8459cc096343228739f76dfc2dc882aa1a8e3ff3601ff61aa9055fe281ffd1529cd4fc8715c1b4732f8046885534d8fc1426b083e5c7e708365c8beaa44717e9ebb770d05a245615ac569a719d00d2c4ac8b8ad0a752ea6c0319fcda7916ab38716c39d30ef5709c9bfa99c2ab33b0e5df87dc24d3c3612d9d1d92760e2dd1e0813fc0b74847f754e5a17175356f46295c712e95a9810d4afacc6b2056b5939f1fcc6a851edb5a3106329634cd95d3ad3ab1029a0b7e3ed562ae08279c2d35ffd13a5781db2f31e3cc764bb194bd85cb4be2ac943f9d48e658f1edf34b103487c55ef550555e4422ed137c6cbbb242b10f812a8cae02385ee95db3db5183563751d43e3ace069364cd1dd82fa49049b2bf546cd68e2176fd77f36fdff18b39677998807c35e2da20824cf74e494553d3e36e4f8b6c1863eca193c96c5c4bcc74442bb5b7aaac8a3cc0177aff8eb173957743e767ad8ee8b0f7b364265aa0f8774a925137d4ac35cea6091f18338743c3605820d6488f31a0e39b1b4968e297b60cf7d2d76d6f5d779787835622bab065d27f9704056cc89c166e336310bd31db863b44f4679eff0b552ce40d492aa148986899a1d1cc3d99b3d52ef5d9ebd0cbd77589caf4cd30bb0d21c258f673da8ac5aa675ba5dc562ee77f60e5a05cc1fcafc402add13ccf0f8ee66c8c6865946300fa84693f97d757b54a25345f555cba02afd6b9fa3eabbb677d97edec6c89c212b78e6508ef01938d93b3ee09e3cf77e328398ab7ec7da1ca6e3a6662f504aa9723764af1184b22fbd59ed5e71318e7e64acba33caf1c51fd0c871ba7a99d3bc264bc546464af4d1f75d59215950b8ffd1798014fa95e4ae2b1f6fbbbb3807974a29c758731f7846ed312828f35f9df508cd404cfe303c3650083aafadc738d91f9a7afddcb20a7534ceb2e989007040f012d60f884628ca0f52a4c48f5c659b92428b4c29bec86417317ab56cf6c6ddfe800c4e5cfa79c417310e18033776c48c926084a95b31e8561dd6162465cb6fb3276f0aa90f03bc97f78c79c14b8b7d219be063a46431914e512578c4db157d7285f5be2ba036b192c0641b5c5c1a76d9dfb62045fdfa016e460e825080021bfdcb0ea4a025ed64c1a74955360b81bd80463f0ed9d3ed894daef7f3b48a3ac0d3cd01709628b5b9c56e746d51cf21d5123953d20c7772b85822ec5d37ecffe874ad5e22934ffa78a6823adbedf16f026f53b2b946f0e41203d4f150055bc78e7f5168f794d6a4847b8ee34bebe0754e7a7c0bbe428972bd237a6683f799b50c74f6676643a6948bf430bdfec7f27cd53a656b9ee98d32b189ffeea92351871ffcc40a91c2b2442511dfda57ac2c78b254672c860aaa983b768a73e2946c01a06a868f75744578ec0caa46f64e7c09e33a6b1f6756ec92fd3af244322e4fa953161dd23ef9c574bc11cd1478809ba8f3ac4e786782affcf2f36d9624c18480775d6e71d3ff9d32f61a566597ac7f7f1872ef410fc7a87dde662224b91aae766517c0e02b4e00dcb281341bb31b0aee478569744b533f3b2ba1dcd1fe04d844245b8ecbd8b575b4482f10c73d82337786d6711dc6719bdf8a7c43a137b712ac961c3acde69f816c06904011df469246570ca6167005fe66443f4855f8425c6d1a6c575f83a80e563bf26e6d6b9ba49f22276aa8f3cf236b0bac6af9584b940a63195502b9f2f012481857588481d146a7a3803acf9e9d402ffbd6e9266cd0040e93fee976144270d572633807a9d82ccd43f69b02b502346018656f8f026bca30f39f063e6cf90538652e14e8640093114f52d22e2a5a925aa7d220f3885be1ab467a1c66efeb124cc55729afa2277bd2fce02a08e03c8d8c6e2dbc7f3262f1aba350252640b4e10b25a6a14bfffe56c0424e8851277ff41378cbc0a86f9de1544868e309e5557ab4878a342305a1d76e29d775daf26efaf7a5ffefab3776e32147b67deb51eae732ab3ad47de93cf606d054be7e8b96104ce42ba80347af611025be3d216f2041ff211c06d992b13febb2e5371923ce4ee565a67721ec8447e5b1740f04bdcb895a9eb14647016ec2b5383c05a979cc75d0c8942dde0e6f671453e69a58c182ccc687801ffa6a99d1ba409c1230b7e5ce1d8ff88bf2524a167e680b5d11dde34a51cdf123f2c5fbf7f2a2f0f26a354975aa8e9c5a08eedea788bd9a389ac9bd2949cd0201f8133156ca82ab5912047b7ced208e2ee8ee799540635dad0609198c956b2051b9923f86cbef3e9632f0a45feb25f98b34a24833a0209790e83562eb5461f80a1e7791299c46262ed4b7a5cc6d19c5532c810d5298ea0cf6798d284ca4dc6607ce321eb71fc113a019c391c71ef2fd75ef5e263c7913f61376b41f4f0f1e37b2f8202ca8c10a3ce2f0a901554acf70d4049754161d28c105f6ffd741a14e7da431f8148f54d1fa480b8868970a053c7b161cb081f8ddc718cb053bf5dc7bd39919e4cb078b0ed87277ed9eb32c85e21cbc6f85b9f5f5097512397f1ac9af5c0f994f8e1da493eca24c9db75bbb823378456910a4502f9c6d019de6c662673632a0ec4d35bbd1932cf2d467d9851d5e7c596fe397d4fe395770f1a3a4eb0413f53c5ee229b6499c9b349350a0b2d88b9d841b1450a6233a21c06731331a672c8a8d0e3a1f6537171e006e4f1a06f9c8b8325cdd5eccf006ddfb9814164aee01eb1477b6b4f9880cef774306d574201e35f1e08d39a37a2df6d8d3050e272cf62589b878df7c2d313dd548f574340873388ffbba449822cd1cdeea6de54ba78e537def54f9d0f6b88a0b4cb6ced91eebf5654ab7ecb2f8b1f76a12b2067fb3909e8548f6c47354f098a01ddd37d4fac255d174a6b22e9cd6ebe5c5f6d41d604e8dfb78211c1b07de0bbd340afa7d4a9fbb625c7e5625ef038a7fb2c44e4434174f888954b36b0186066e6805a859c90d3e2747bb549cd859a1246d92cc60721bd108ff944254b4c1cf20f2a0aa54425f9720a23233082d0bea50333c185ebdbfe5568b93325adc0df720c3782d5b94e3e329503e81a6f9da0636952c9ed62011bd79a35f10b00cfd313bb98a17fecceebbb2afc89addc6e3f1bdfee7285109d2e2ffca298d7e8cb73ff17ea1fc98ace790e126861bb57d8d98102789044c5fa7fa8901e40e14753e4f50ea04dae4c6900bb283727e70e36a545d7969df438e411fd511f799d3041cddff8b72f41aaccbcbf1ab9b05e6135f251c14b36d985b3d1d676cae23b609bbf0f6afedd3e706236261b5717465c4daab660bc998906854059f2b85422d0f1ec385348a2d31cdc20486149154db1e3db0530a55e544e4fe8a4de132767f4812d5f16f76e5646239dc7a8539e4f5e4f58df7ffb9feb8e5f259e2881ab4afa28590ba95cf27ede792feffff421539e40d4ca00cd4a71b98db250c43aaac9c1b469c098bfaa21bf47264ddbf6eeb3d749daaa7bb816fbdb985a2cf61ed9267249558ae2d9a7fe9ff3aea3c804a5537e7d07e5b924771bfcd51bfff1b45408ac425f88a522be79a61229773032afe771762f11265c99928e93c8defff4cb167bb1057b0a53f6377ce8cd7ede7d5b1732196c716b274da58c0d572c50e6af9ea36cf47ffd99d106d55f7e6900877f3347d92ab82a429fceff96f065fbf746ca7e02303d6697ae21387fa7066102dba30d33cb9f6ab6c66b48fb933c180a629bc1004933a73878ecffc630178533ccf40988035c6e41cab12ae4ccafbb344b9a63e42e44e64555c1bd24c8f3b93afc2009db065839a2bbd85202641f47ad5a9b509467fe046d65a9e1a4a50a268dbe948b3accf51418c62c9dba3d90d8c9e15b97d06ba1dbae6333f06d040311eb61b4f9401951816c06a80f00d406410f5627137ee780e59101b9a17af6a1f233c5e213f438316881d4b53b2ee67b0b77fa318183be1a1b6806fe81979c2e4a4254bb56d71a7c0cc8b9474f1cf840964eae004bba8cffbf544ba390f98e88d192e2ba78b62ae78199c92fdc26f1fdda6c8949aa7f3432841e8e6407f30c8996ef63ba96a488a4d07b303d06e4ac322a3a2931353d367e6f3ba12da0b3c28f36bc2d9bb5ec896b4cd29edccd5dd6413c8c9cfa7c39505c29594744fef093712d2ced576b354ed3299ad012352de191bf0ba8bfb3f09a46406265f516a091a5ce5ecf707b493d7549b4eda5d6249a60559fe4a8b097acd2d5e8ab576e1e8868f933ec91b4c9aa18a5d0e88af187c7ac20219803d4dd0bb04123d528d26aa260074fde8ab4c07da0c3a4034b1a18cd68429a0e2dc5fae30ba47afd9766a764b1020de0b09db5101faf3a653459b6266d94622de2288629c2a31c5130a23483c71d58edcdb966d53307c4297cbc6fd7d0986289a512a79a7b9192ae2b1820d50e7142e7038d16353a3c129b971b087e7e5fd706faf7fb609120d5b8a0d5c90bb0bbb3474bcef28e1c9f6c23a4cb374287f8a881e4b09a1c9c0f837f22b236ccae08ea31c13fcc202cfe66c8fdfd6aacdcde33767f7e7135cb29d34fd1ec3b82385ec39464c5e7fdb1bf4ca26abe31a11f2825b5a27b5335f03b536e785008c9373541ae66650ee055f80c988673b818611bbeba13b81c6ce2b3ec2a6a160574d6277ba1f2aa6686c78b2aca08918a75a7b8c9e62c154aa25fb4914ed35091f699ead5f21d12d84321ab24464f2136ecb91dcd5507fd16e5652824c5f04ef6f43ebb1265a1968bcdea625c0e3ffc5eabcd2b455aa5910a52b83db942d64125027096303a846420a67985ff0cf2830861267495fae6eec4ef99436c77b2564758c26bdcd4d00a0c5d46f9910f5a187b51efac85cac988cec9da8be2534b5c8aaee7077125d21e62f1423a1f17993ab22aa49c0ec110c8f7a153dee8341c3226d05ded1af53706ad7e46ffc6bad763ba6d7fef3f0329b91d9c35d58cd90bce928e1aa5abce9acdd060a9ac11fad2f74e97024dd58f9c251ab3b6060ba5a8ec1d802c1d72fbe9a3f3399e6b7e7a6b1d34e0459a1ab8dfe921563cd6dbc2dbd40bbd51c89ef972772ab7f0147acc57dcfd42f82d58c40875333e135dd919732ebafd869c2aae1bbeec4c746bd7bcb523de4c9261f8476a227526f07f57b6d206304f513cb2455243c828c308c30d4e596635b08d8f4bdcc439966b01b2ac4242b6354167f6f50131879b39027a368f921fb1c0d31664d57349ca3f28bdd22d2e4cc770713159b7493e7bffe98d7df71e573986575ee61307deae75a1ebf79f78208a937bb7c972f5f2dc514d2c4d5e3dc1c17dd653703ea7a0b94c29c16c5268c62e0ec273dbc94c60fa0a44b3b5cc45d8d15100fb1ddbcf5edd15d56d157ddc5522bd2dd9cf1da26695aeec246e5ff4e62b84a821a268bfc6288285b153330b4e0ea4db121d28e2f45e9cd70541961994dc489bd2ae94d91fb631342bd56f4e1fd38c34ab6468d74c1159c756d03e9b13b797043ea8efed66c13a17edfc9173a251b4f7e7e29bae6fd58f375130dd6b13fecb21f81545f8d3e3311e2099a2a9cba7ade3d04d064d222928de1ff81d3e64a874e9ef9c738c5dea542af87050b00219d6c0ef577456ee8ae9ca8fa2ce74c665adc1a559947d06b7642b64687048d34ccb9dfcf2d3aac8493d51c79a4f822ce86986808612626c048c5fe0f2e04c679af8449f20c79b75516410a9e84816a67fd4c2e2485742ab2e2696f070ad6468b011654bd17e549bd2e11e2ab5b8df68fce0c40f1c8f9fc0290b6b9b4c00b34b7fc72dcc1938d5af755b0bb096796726172e75b5a92637bc34b25056638ad3ec38015f34001a379708cf6413b39271136203ac6a9a644d145b74554f0e8d94eed4fa1145fdc9f76e439d3227c4aca3f2aaf3f60df45b3f2e6773e6a0ab31535d8f4c38bcc03768158b1722a120b04f99c2d83fbe86bc58c3486ea52cf46e0e92838dfc01fbc59203bf336ff8bfb64aa394db10e83ab108b28c8f7ff3efb8b70231dab311cb2993cab3d8722c08bb6dd02d50d3470649033f2be102524206b99eadc5097684d7435b1f28f7eecd1d7afc591f122dac9805ad9d4a440940d17e90ffaf21a3aabca3eac33cd91a705cc9ed46da143613d6fd175b952e29f7a9997bdf834849e646938bb8fd516a7466e0268bdbad5e17df12aeb2c3b7e03ecf9c12b56d6495d4a0c37568829ceb4aa7193659c0d412dd4fe244f7be6c09c911835db918af2194a05a2db4f65f517ddc096409b055e982aba94851c52b1db7bee9e291bea8e36d199fadd1723bbe342e832020a8923f8e14659520e86912a631b0cb70d29dcd40967c35400a10f8366ae95f69a8374b6faee31392494044857a496a3a4d38d2ecc08f1e731d827a56faf18c74d42d6ab48de21db6cc1be5ba6cca959eb4cd678b047ca5c6b0c199d74c636311eb11e0602ca8c44952e2ae7b0d63f9c25e26a89b2eda663c368d702b44a4b503715fbea353536aa7bbac013444e138937f37d13798ccd2bfaa5b0810cde2f9ff103eba1c8dd30ebfc95cdd4c6a9ac39676592a354c8a20a52b6fd2229102c16c1bd658298c1e81f20fa6b9c322c7912d7ebed593fb73b4f4d8bf52cc4b51a02a4f903ba135632b628bd769307cc50f41d53ce98dcc21f199b377df343a11bec74c64ddd080e96b7c4c6c73adc04505b2452c2f7171a7078919926413048fce8011d62a6d25e0c056c9c93eb47b1f284c75adaf0f3fa44a3b73fffd25bdfaffa4ac7b29f7176ab802e8a8b24706a5fc4b11db1f08ea4c9a5d35949b60a0a523c5b69542dd6776eeea7a6809a7796c40c98e87e88a3936d24768210c749ab8102dbd9200c0e1d7e3adf7390d9a000c81b8c5d8945f0a704668430b2fc9a6e4355f5614801cffa2357a27ba8bd89d23376f7cc3cbee52b2776e95b7bbc57b8946ab9db0f5ee0205c8c952c39070fd938bc2f4eb55e92cfb66e23888243c28e80bdfbb89b5dfc43cd6343f974cb5a085b825da5b63e98342e93d03939884dc8fbc1e2f50675e2d54b7c569352909db5060e2339d31f370b25e308467d0a70fde96c072a80702933060501480050fb747ef6ed3222faa36a0369b15ba9ef36ee1e8129527631960e900053d364b685deb12aee551a104628b4f3edb34977ab2a9cccadcc204b51606e4505df8f5f500da91e275dca8cd8f72da1c7207c4b72ba25a62e53cee96052cca8cd9ad86df41ea7534793222566497d457790fbcae4426f213ae3fca785d05e1135bd7c73a5d8ccc4cafe6849ee0372d9a92d158ed5d827ba444ada78a328177e3b7b63aa8213338dbf8fbd33d5415d8d9770ed8b17304cfc8a3a06b45473aec4100920e529fdb0c22107848192eeb191ae6a147930e66f387f9fef192b9b7aed734f51aee72d534216e5246ad02c4e5f0b24090b63cc8ff3750a83f6d568032eb7f73ed1288819063902870562d4f4b02dc005190d59ecc3654f15e6c2a569e2abc6f8fc9f399340b769249b61932a3c89ddc531e49a3a533311ff8a43607ad44748567daf456f8d19c299c70f0653587674fb2c5b82e75cf8fe3e2687a87a66a03f3356e935438413542fe5c1302805d0f1410e73d91dc4ed429e503b010c96e0a4587fdd489b19491d7715faf3cfe1baeda6d782b27e4c14a2c3f6c73d0aeba962f90db6687a0bd5db174e264702d66c219e616f13e0bc92d6df7c67d9cf3533cfecd8c82b1e6e02901016c465e82594cf61dff4f0339dd0c7c1ab297d659033ebf92d5daa1b6f0dcc54e4f6f83ae22549e0bb05e84370c8ade500f6311a626d16714b93ea3c569b781fc77654eeff748a333997563fb260eef77a06cb4c04cd37654996fcb4a0053d81d0ea7a3f3294396e6b08ee78e3773beaf9b462158a2ac9846c1f7c0a81bc2c29b7b0b36d17075f77d8e114202909b879ecd16810520eed245baf45c8597cc2f59f413e7b2226ac61673178c8462bd61456a2d122ed0221e568e0c836d297c3658a595f1f7081f370f6eb5e23acee4fff3c5d5087976d8a0d2629c2369b2232aca5b558bec8f69a3a21a6b4735557eaa0227cc7fd7ec28525d4f5d1f63f914c7813de54812a2f92c9ca6d902f0bef34d158eeaf3a2c150064d69014d2e4353dd1819d68cf36c42968631d6def487051016e182b78d601ed8538226583f7a5e1ebce22cc621554b628560a3ac3c2a79e5c40a70aa1e7f5c612f68c66bd9ed04e47921c513c1fe43dce0ab3c860a1a4cb601e4ceca85f6f0008d1d07700036801f9cca050089d17c6282e71c69601ec634fc4a48a1180fe57fbc189828b3b18300b4fce808d89ffe228cff6df567fa1ccd2b0b2e5adcebd712d76eda41584575d2651bc8693c290e6c9d2d6e105992f3dd27cc6f16a9eb3846d5e7f5caa58f63aaa058fd00eca8cbb034d0549878f26ef7431beafb8de5dca00a881be1c5dc167e75dde5b0fb97bea249a30bc819e08632fc93b29f11db6984b62d8c29b25cba940351ba3e21ad98cd977ac1b6f3c24852795e0b82fb90d54d56777594b89db452397e8163b833a6050d0c930f2b2420e955ea8c399055ae2f3da7cd2b1422ebed853c20eba88ef714c1724c3e9fc893a84e3d684ae1089104baf313fc4ce1cb388808ca82e4a2385e220ad86c2b3531497a8da8a139bd169383bc01fd8a746e7b2e9e18668d30e934f66555eeaad099410c69464ffc0b48c6ed211ea8408bbca4bddde952ba6d89a3fa89b877c46cb04367498a36d9564f14cca9fd3c469e8326b3350a9920d3c3e040472e7b2309115a64151fe79ab35caaef22abdabc3ec7f783469366b2bfb43a556964253a7870d0df75ad769e89487f93493d668c22e2d90de6e590953f724dba6797efe2daf7ec01dc6d9e7ce65e5acefc1bc61a5f3fe27fcdece8fec9b5a86b7747837ee071942784fd9369831ffb6d97921928b88e47ede9987c399375e73b8062ff5d4a6efeb81515c2462e09ffcc1fc7122424e03607e7ad335b5307c20a75782d8a15f90a94a8030b79eb236169ec4d190952075c929beaffe94442285459eec90aad3dd49712951f3c090d4c3f859b54db8e4b5d98738c920400248dbcff87a1aac0e5b00e0f1ed2c5f666fd5f1ff773315ce02bd7dcebf8e49594e01b7c23f676e49ac31f89ef14808ca16e188039b1d7e74bee515bcffb8a356c327e938bbaeda14e607b1abac94dcf755159a155d7df78f7a0f2007b6143039cac4698ea131f10565427d3d9f0fc7391e6a20ec3738ac9e5b95954a6403b8ef3f0b668afddfeba171134bd09d021e6822c1adf90db2b5ba58deb8b943c92d3e1504c3f0fdf79b3383417817ebcac44919dca8f5bd0c2b787f405213306045fac0fc9cde62a2dde75c0129084cd012501e67d69ddea49d1d4c415eab9a7def65ce51b1d94e1e7535eaad76b64beec16bd46a47e936945e53df812f60c85d58d80538c35fd8dbb150dc009d820d7f530948a6ca22e774c2b9e1c0c81e6488f9784902d64361d13e5fa6a76d64d7b507c41750375a3c494c1c5c185ba5336ff257ce6196c99e032c8eaec1003dc316456988c0088963461bc74ca2cf036027515e904774272e1d03886877d6838a62ac347755f4371703bec6eb40842588479897d69756ce38039022f7b89c9cd3222e00646e23fc1a5b2fa267005b8dddad27e028dce8eeb0d24b1929809ed48e4c417e7d1fc7dd8e513016c7822c88fa6f206c818ff9ce7692e2e5d5239e80218992e5f771f95798be31bf43792928782b0bd8239c49045ddb3ddd5ad2a6c077ba3c2c620651fc021e958dff42002661d7d82c4efb93f415f565a079dd0a78c95df94363b6a5af4148e185de5a84e9f54596d3a29a84de60a78a1377e2ba1306b3ec120fbc2419f49eadca5fcbf754d1be8e931fc576eaf819b8f1bc48280c151cd4a6d113928a3f626bcb9a5a7ae93bdf4713d1cc5edab503ea7b92d57dec1cd6daf362459069375d77a1e74d029e4f7d36ce5beb47f427ef3f571240996aa7764d166d9773a8f89748140596e6d7fbbb3633f0354a640919ceb7aa3a4e471566a709e2c362912462bd343a6c457b3a1020f6a734b61b2c61c00d8acb3118520e557eaf34f34723231c0e21dc5ae0b368816f30ea9c3fac5467c65a6847f2d015ca199c12e58becbe171988e32d90539fbd4712ef36660f4923ef5a5bc0c2c550382ed4643bdf420bc98371e33fd3006ce416984a89310959e0a18e9bd87b64f669563d36e96aaa2519238472760a8ac9db44e0e80e5caeb84c2cef557fa9eb226291ef338678b165cf5f74afcbafebf1db0774995c68b4f8dfab811f52dff7748450afec1032d699f13add62155eaa6abf5f6a1e4965d613cd94c39a55fb4f4203d83d817e5e69cfd9d95112e84a44c580ca0de51e37fbcc85a5843f8cce2a8eeca987e4944ea074aeee2fee1568e2220bc8b836264b7cbd9cd11024ae4a3f26ae2cdb7a24538c807cf1132dab3834b2d76e9b8431452206e9f2b6086bc3a8ba08d025b184c2d33cef75c464e687e1f2665c600fa2709ddc24c28787cc490cf9f6d8d9ff9bd4f7a5c33a75b65a164b7ec9f348acd228a0fffc7ff359cf84d5538b6a2d6b2a2539bad5bff917e13e9f25eed9eef7d1c0bcc1ffab44aac519ae6192296d9e18cb52ce0081ce02616583d0107e6ac26498afad40301a799304889d56dae5c811fe6739035869c5ee02dadeac842550cb91c2a7139d9c7c5895f745802d204d057f110977a3b3ac10ebecca1aa00104b4892b9159debb0ef37f6fe0b6314c4c80208fa21e0b8ab07b2508f1cd9bff91d3e483d61bab48b6d399a7ffea8bf57b6d569ea67d4c1d20be54b99fe39f401200560418e35a34ca40d4f99c666309511db1c45858a8dce614109e43a9248ca5671b4d123d072a1d526a2299151192ac23e8659aa8d46a20b509687a3969ba95b721aa38808cfb84fac13a709d469d93f9b9ffcbed1c178d081bfecbe011e00399266470bf5cdc5dda0c0e22a2e264376439d39cbe0b7ca1c4b308952e1d45489478b708fa7ced6b81f0109a589fdb495c44f5e7e7410b0ae28e30df01b7de4856dbb4d16aa21e60d2d6022e7cefe62f5395b23e0e030ed2a2e263b80ef145ad09abe7b2c191af7b4c4db756a59aae52dbdbb30a565f13c90ea597d69bb0637b16704f0a6836288fc14769facb0dff2b681be1d7fd7cca6654faac7104f2c481cf86e06a3576edad3d84d20b4a2912cd9dd646d388712aa47a69a8ce95408be4c8a8ebf570706316bcdd63ddad7b295323b44bfc9d5d2175f26dc3acbcc498d1a6e9cac04718083a55e2c5986f37beef439e0d4db6dea5964bea34268bc255bf32f979d696ce8c938d0fa71a65a0462027bab4a87ed7617a4cb79f6f70344191c33c4144e6ad9ab7924911d39b7c848d6ffc77268022e23bdf758ddd494440b57090ef02db5fe4dedf22ebbb038e850c3ef3ee10421d5c4a3b227ecd3fbc36b199930a19a52e13fdb82738fe66ac79df63d182c99d5e164cbde966c52b425e1257c7b6b8d62e75b22e31e3496f844a4dd8e30e7a9bd725d408b220622e5ce39b3d35af2b7fcea06ea5f3a94912e494ee7eece0e761e0fe3481009a9daf504dd1ac65ed523d66ce5353262fc6f03b7a4a0c3b8aeb6017e534b2354d2b6b44a1f378057a82ba0ef5b30f7b4929ca039778947d85d7cd6ef127a44e7256380b5b44d3198e95103b8fd92efe62f829e2e38201f4cfd1b1ff66dabe10a51816d62e90c544c564252b2246f90d601d76346d9f9cb6a68075111e1bd1362d2ee8eb262cd9090ec61f88230075c78aff208ba0964609844754b38629e3b7165aef7eb7a63d30c6f704c9aaa61eaae97c1e1224242c88c2fd8e702a3dc934cfe0602964b140aee9971f9a196eb33e4208b41de9c3c45eff2b8f8e15531f0ab845c003c6798beb0a850525fa52425f1125af60e9266bb204abc40b487a589046e947ff28e30380adbbb0838ca9d1bc45019d8453790692a99cb9914820ee9f48ddbc4916569e98ec6c6a9085e5815d9b0bf95d46dd1816900c54cd572de3435ba8880b9ba82b78b7a4d93e69143412a23bf711daafcaaa34b29516482fdf2ffe52b5acd5a04e637bc2be2a124df322e90c0a1b9994ac82af1e29b5d8be6613356c1a6c978f98998f11a690e9cf18e70cc01827332a29ffe748ed89cbe13eab11997b1228aefd180a2497adb5cbc21f35dfa5111f5af8e74f23bffc16e75008c853705a1465c5c44cee2af98088fb7ae5e347033a2bd258360182e2ca176048d6051065090b8c5f5d3f908f7fdb8ff2525198cf53e940eea0a7c8d5506ff74e87b64e2ee0ce18d0ecb8419128919969fb00580f06d755ad45967cd90c604897afc47b2d167685c23cb8d193f59cc89e5aa71143818385a1141d8b67bf5b221ae2774eeea0fbb136587f00e0426dd10cea9f69a642f983e8d3b07764d2b993ee1741975b0c4125170a0076a31c3166f4a5a85e91bd08033f501d033a2b886b95725d2c8002bd0c9e7552cf5e5c0b45758c5b25ce0eb655a0928d6e45958ba2248373e2ebddae21cea21c049c55d85aa9409bad801fbec13f9ff9059f1d74928149b72bed8789e82e5a89a40470af80e7798c36ff6b1578d44bc0da8696a89da09282c901b8b28eb7ac422759f167ee04159aaee44de34a578bf80fdcabb4506d92ef937612b77d85d2fa8840bc07097826ee3504dad225eb3577250e14138fc54aeade8b954c9a0dc76ef17845da48c75ecc420be3136020f9cae0d3518bc43cb55b035e39607c9180cee774a305457a005cdbf4c86e6409128a3fe04d908329159f0c86c6b37b0811147da59929bbcd327468ad278dc6bb99e69dab0f4ea66087cb9498d5e0e766a56024c997197485ce3540271ac7514416a74352ff0eb3b10c80135e93b9b780418a74327d8a7c02a7c4f1aa03e6841e76cdedf92026b238cb78c946a3b9295c3b1a09b7a6e46179bc4200571274ebd722efbd9f2c17dfb6203afc7c9a68f887481a72cdcec07d4b71d0a932afea881fc01bb88cc685e526661acd27c221522b7bb7c2ef9e0b5ca5efdaf81a8a7100fb4752ede8305478a844e4829c892f1d9063e46c8219a56f6568c5c2fa727e6a4e93a9bb8ff486895187242af4c88a22bbcd7364b07806056fa66d5ea1bd0c95cd6640d494d6f036af16610cfb45366b55b6ceeaf8101d28e42f3f4ceb4dcf0e9181f39fd5fcb4d775e409343c8eb03aa353f36e1b2375ff84ef90aa333555b5ab8165866101806b1bb98d7eeb4ed51ab02a7b9591278f663283959a5a631621a20fceff1a4b6cee68d9aa5fe71c66c140b04f70b51abe84999150585261fa328a7e810920813030489eccf13140692192cef6a4bf2fd3631a33a977d077a59cfbc4fb2fed229f4cdec773d8cba07b3a44de76117ee33d1100f9463176e31257080bc14c059efb182bb4ccefad9b383efaa34206d6cfe07f4a34cceeb12ead02603a00d4cc2bf7dc66d2003cce6b4345cd6539bc3974df0ff57a96e4f191a9864e248c38c245797289a1f67ab0518a5a978df7ab76416a33545949a5b9a363c573b9d402260f56d52223cd5aa9e4ea9112571d00da138cc951a7b6622f19ce0b90b3d72b02b66a36a45a835f60f69afef7d57ac2bc179b1f81ad8b3344cc655781a183782828306c1b9b2b9ab036f608d5203e894039145cda0ce8f67617fcec8b1375ab9325e3f0c95e82b175262c7118a85ce61b72f3e53446a2084b2080f516bdee777f7d1e924194f9413176752412b7f07b645e65586ffafe31f8a5785da0597a518d09c85ece272f9d4fe8d6af35f25cd8f3620e15ae141e9223a90c1996a69a346f0a41351ddf17f2ff20a3ac4179aeaa47e3cf8569e0853bff8ab3d66802bef36e08ad85c0c27437920f7d4177be6c689e45a222fea880d6b2b7e6334630481d803b8165bb123030de27bf017201f2c7eb1ce1de5191f58f8eb04e910b0f73d8d993355a8a677abd606bc606713adcdf559316768e781c244669e21f4de8b1fa3be5352bb8fad957af8288e0f9e344854ddee4302a0871a27c176f9a112bd78449b0b6024cb481f7fc6474439149cf3ce92974cdcec3c00778951aab14314a3541ad937b3a4d546cfa3b9e43e9a6d0913114a943645e4b295ec8c15ca07502b1bb3dd89beb6f2703e323e404d3c520bc87917adac65480500313a5ac0185b1729db8bcbb03b825d716d52d9304a429c7ea23c2b8e866b34b68ecfd9ef79a0a6361c6b2ef96ea34e51f134c62b708621b6bcb94bddca00a01669e723de171084c839bd47760d37c0a8cf74a0af780981139eb327d56243917eb578e1951521f2656cc9a5559769de7b11f4b3483e8ded965ce63907f1828490f6384c1b0cc5c5c93efe14c4c75fc4030b602777b1c7b7a6c1d39574d5a0e16aeffc3123b4d73fb792f002f1d37f98eb1172372f5c93ca98c26ac1a15540b323538e399c5b7c0c40596a4a6c122ff270b24788df99e1ddf202f84e434cf81b85e3ed8d46f5556445022c15f1ef458eaf7f11dac834cabbe3dd7e7e142cc419b983db39dfdf78ed1cf2a9d37ed0504efae6775d6a3f01bdda7bed95e69e56747646f63517d9455112ea4906871f245b1fadc9b84fa8afd4ccc68a0f33e99ebe8938aae5d33668b6c7be6df8d5007b33e18f803462203520393ff763cd2612d2ff48b66851869be6b9dfc406b3f7927301e19b0c4ee7fbfc0587e4a7629ba9628b9c3a50dfc48c504ccb0167217880e84c7c45d623feb7567b481c635f9747bbbe443e802d33e5af2f3c4c4dfd8e417950902a888b81bc09b26231eb38207c5ddf5ddef51d0501f446ccb2ee1c5ea2d4d47a306c245e4c6840d0ac67fc9d004eae5d26f2be1d643db3bcdb83d5a0ed2f768a5e13e8f84478fca83ee90e124a31e3dff6d1d5158223d966c451e4fc7691111821e0a61467cb2d9a91209b2b5639f18a70c37a2d7d3f785984ab897abc058f9bea1d3db484ad3688cb6dc1499b4dd806956988089c5752234a586768b64f48c7a6756a912e2425ede9b3ea29173ff170c78149266255d8819c58d4991a159d63607221337ed1602b50cb870275fd48c4ec2339323b0e901c06474345d1db9109cbf2a6ad96cd24b1549e50fa1fe7b0175cdcc1ccbc24c83977ed938f460d26deabe055abc06a6f48c19d354bdf5a2774b7c9d9ac7f08e3c19e954e8961f6ec6cef8c096c32625d02b4cba2f715cb78b3ae39ce48351e62174b938f77820738036c0ab6dbe7ca79832d7690ca92de1bf88b8903407823b2f908817b31071a017e56f5d9213dc65d50a7f15ab8254ee899229c53cb950e440861e7d2c5122374eb64e401d8f678aed424e50fb68981a81b03ce0332f483b06fcd23f64f064758fea16571e882488adc92e9b7c4a3678d077bcefd2c593ff0d815e7ea22abe75b6d6496efcafab1cdc244da97d40b99c45b3a1b786b43903647b09305740f202958f4573e004c1ffaba1aeaf405804a3b2f99f322a26c4bc8bf82b76cab07b3e15639059c02e1e9dddc7518d6dcb229de983d31251a067b2d3bea8954c447e34790b3ec4e8f48ba83a93943945dc2776c193d264d45cd22d325943b683a3f468fb5fd2c037c9603e664151d161714416147882dddabc6ffd14e3d045577320a6609b30bf50aa5bb3bea964bfb31203cc00f06b364c07926c4183eda26709f0f0e85beed3beb12d99bc582533478913c6d616d51f5c43252803ecdef3389ff760fda87a8411b9cea8e2b5b0415aff7cb807d6aae108e79400c0b455c30a8fb2b4353ccc1f47f3364d354fdb84cc0c4567b89f6edee8850fa120d464c9dc407c6789c499618787d901a2ffcebe2d3a64536835d62bd62e3fa7c829da1b9bd7c1b58f4a7d7b2e573fccd99bf221441e0ecae343a5b2ba41cb85ec26dae0a368e7c80ba909298b9446108de29cf2241860af27bc1c8bb1615e1340fdb9c09d9fe5e3a4c64dbcd4645fe8c28334c37f7fed22ed438af244ba6e0f67f5c08457bde5596eb4535f7aeabcd911a2343d8d94057f23f3ff60e1ec9e6282cc79f14e41f7ebc5ff25218542da5364da6b49c8b8671b490b2d7e7f7e93606841a453f57ae6a9987a010ded23550560bac3c676c8c9ed42d05c7e53b1db839eba596ee28e30f440cf4d35e4210ae69ba1313dc131788dbaf395b4e0cf1d604d0c559a75a6096d982b68b378cf3b3aeb949b11e490bc8fdc29aa3b1ec0295068ace5d57dbbeba3aa2396aae4afe8f533e234a8d10005bcc9e72782516373a2a2949159b47efd8f7ffae9a9ee9917495becaa0001cd4b0b3727c8ada637ad35f9547b25c8cc7a578edc3c89f00d35ecfa3e417ac9c7096fe3c6cafdbae747d1c321b689953bd2b1e5310c560ef208f18408347acc828b376475645e36e9866c8b32ebf9680db9e1fa2580bd23da59b7e6fbfd65dedb20edba1815f58497f0e876321e3445f100eb2bb8954322d330a890dcb11750f59675757de30d2a557956827f3d4a5ff23cf15eb38722f45864fd2930f2f9e815fb8dc8aa207497d0c61e21be8982bd9e2a8a767774017dffea88d49224b338ad3b4cf0d6811cb601129399533897c8dc6ed9bcc7e4002af41ceadb755d895b41e18cedd872776ee6ac993c0a2c8c30c3beb6824308dc941cfcc2eb0d095eb1c3bf9d4ae527e28d0408b4d9de02d60ce577a478d73bd4b5ec1f178f26ccb8b8f20f51258b7d9b7dac76e055322db7d7088ef87c6cd86a13c08ee1a6a3fc9b835aa91589ddd93dddb6ea8248cc9f9073e9da694dd8b2d92288cde43c1811805846dc88d8e1ddafe1028c060e67e2511bfdc2d30270c87cfc0b39b6c9b35a9600da77ec0e416d0c58c15b814c2bc0ae6f4485177bc503e465705cb720f77e2b075a349267289d1bd6305e5f1d2888241aa093889b1cdff65abf9df62128e72d6a5cb79be1e5e87d20eaba876b162878e107a0fd02a02d945e409b19fc798f3cd79677ed01215d681d34ed19065ca2ce360e9c23b89849e3c01c2b2ef834a887e5b5db680856df5bcd7be581d672bcba7026276fbeafbd217d1f10c490b528c79f0ff5a69cbe18c61c56d0aff9a7c8ed417458ea833e6e8ba8ec854ae31fc24bc1d5556802113b13a0f5bf498ceb1b1d42d8daba5a06e5e7c9158d26cc8f72070dde81c08f5f77e204993551191d3a18742ce166a0761f12ab2f22de3c3b0bf8b39edcd1913ef7862a9ea0592602b360fd516d6ca0b4bea2ca19b66a20f84902bfdbffe18c3bfa8bc582868f82f526d5ce490279d95e6503ed945742d735d05785bb6c24b9165e41a2e13b4d9e90f4d3ca6eb80775506c1f7a62a9a68ce13f441e2e9affb7fe95f171eec1948387b01b06e41ce31482d9e0fe61515809755e02f6a803cee51d95ea685abbaf70c14f8bc16731b4dacbfd0c6057bfb2583880c70f82c207bf5da1aad72cb3bb86c737ec223d8f51d2a67a77e192bc50ea32dc9a07b0c725c9c925d60bccabbdc413d70266b0565130f2b868fad144fc7038cf16d81246c4e4f07a5fa620c274b49b63b79bf8f79ff8a917e06eedfab81bd1d2808ab0820125e67e5e15e7e8bca85e7284c2ff454f5987e1c199d461579a8b493f140040f0a29f6d1af04e80aebd20d6971a309a9162b511ff176ffb00a0bec065eb96d47b87ab0cb0d9e04a8bec2ed1b3f888f1c0a01ff2e1c72cd699097b15030466371c8e9b05c249724394d10397e1ca3035091add1c360af0837cd2312fc9dc6a7faed6800332d7034d2b2aef3f380f511fa1eec9940b5996ca61222849672fea776cd5861cae1697c16daafaaa8ad0a6caaf4b82dbaa79e999c6f066bf47820af2fb89007cbe5ada98fa85f6c30a642749e0b88353636c4bef2faf3e1e9c00c536c070b4ab36e58e28ea9285d2f9ac668489b1acc651748f20a38e5f33bc22484459749d5f4a1fdb8f980c64a2a4f4af7025a35157b320113cce61715c4032135b13397af716fe866ac8ebf37e8ca6a99322a7b393f76eab943025f381b8e7226da9f7635106f970558139ec955bc878a8823035127cb051c53636235439df001c6c08b4e86630b77da6e6d575450bc51960d6df6841cf3c4562e846a87ea3974a1ec3c1a6578a92e3c8ecc48a1d3163dd0917d71bfc5d79176b799a89f45727f7ea438b2b7fa5ef152896b8000c817898aedb6403fc7a28ca763f331fcb2eae2e7893c3297d5f0fdc49d688caec2c72689588c8b168403e627657d7196c6fcc7d95bf1001b7d7777af02cc433822079ffd495ca6e8fa736a04c7a24e64dd3a5c67b39fade255b8530a0bad18c4eb8ad57d6319cee10684748db575c08d15ed7197343f44c66c09eb1f7ad82d5f1409186d428bb72da2b17d08513fe047fb435f19d36734a225532bf36563915f0f1083298325cc46f35d6abc9ff13f0fcecb5e63c2ab5ad0c6736c790318ea00a2c1a5bbd636efaa6086646c78d6aa4774f7145a7433d87fb69fee6d384cd58333b2cc1663bde9eaa10345685c40a1e46ef1541dc088a27da2e631509f5d43e29b82d774e29fb533c6d0e72dd5622cdba9a97fe17ac2facebe59b24a9799c778fe653adabbf0a26aa2e2838ce5df161b6e8d7f569317e7837e59270034a0ee64a111793f599629985b5a8ef15d1f017c84a6ea38033b68403c1e1ad0daf1653863bd36ce1f42de35d4b496a9e47115ade0fab266bafbc5083c7edf4f0315ce206127635675e68041f59122b2bd9d5186fcceaa373b448158cb9bc323429d812b53351af6b63bcdae6c03fed7f40f1b0ac4d93c336aa839f0e6510cc1fb6ac4388d0cd639de7df9b19e136d17b18c9005c3852e3d0a4e7c265a43c03227e54d1be0c3afc2c5630f0eb0f7707b91bb8b3f46afa3298d5c1f7f85f2d6e10fb600ddb9e9f458eb0d9b46de509a02e71fc473566d366decc8105759339c113d18c6898b8328593345b730fe338f77cc10263edc8d3f80718b64e72fa026f202c1871ae180954fa73e1873257cc3c064abb12e444766acd4d5838cc8abf99abdba6d50d5a63c39a8f171beee553e3e80da5a57c4f52df522b4141af351e872db2c31ecacbc1494212e238d2a7cf84c72ae739be3f7b3c6ff1f939d016222afa6932e8c8857316e76e1c927fb385a11da6150314baa9c67bec206002ec897ad3d501903aea1810a4ec70b320737f59439249ffb9f2b9527400b958195e2c6dc1b8172962748a4393888eaf8ee8ea8727fe01883e733a6951230d37cc2d4a2a749207d517b1d44708ba1e1c4e193468168de2004c3061bc4dca23a56340438a42c33d1eff0f603d365b6409930aab2cdee046d0544280be78d5e58df5d12f9c7b3ce69b342d105db255cd0d0b05820af9503611904a550d08bd1f03fd549ea90d8127982f9252309805e5297b7fa66e53ede83e32fb09f72d45ff8dcc6eba819df096e34f93d0cf0f1bd5579d61e26c2dd49ec8a93b7f106db39c48fe17789e210cfeb6dcc592ae7af2e28be6c8a5983d41b8005820f25d7e573698cd36459fa7d48559e4d70675ac474e9b6d7517b8d11bceceac284e499128177b80d1499aaf1f120506245e3d0bf0d8eda03b164be54445bd58bbcf791f323a9b8dbf15f517488b98b68dcff9e45de4e7d89aa2c012e78f154054da4cb7b56c7c5c1fbb502374f7be05b98983e3122ac9079a32f5c36d5af57e857dd0f0d28d7f0425c5791e860fbdd8314841ca68ccfe853999d84aad4510d0f8b7bb577c904e58b79ef1a2f7b93965e8c02f2b19c85e3aeb008d6b5bdcad54618de13da6147198335b361e831e7a3ed872c0159339233a89d60b62f9ba76f71d21b0e9aa5e9a3e03f63111086ca4ba11de8997cb3c0c372f43a7e2b79b3c128154d3e1c81c8600f621d6163139b022442a306b730be98ca677369835be0954d4c5ad2ce024be56140dc2f79db1e5194ad6e61c70c0e42e8aac411df003ee35864efc7889330bfeb3cf4ff92e8d5150d7a45b8ae139d3cbef7159766638625bac2163c8db52f6b7277f944ded4126e83f349c4a19cbef87f2f2203ee5f5f708f40fc1e499f0001ab8a50512e7ed221a7ae6f588a921e95a359052c4e4de09246459a798b12eed26bd8cf0daaece54cefcda47bf331b013f1e644d867799173cd1dd66a2c974d21f47c6ab31d99212df46d7a46e0c87b1f5e16391fbc7de267ea9e25b543295fc2f69f63b0723864ff51037498fecb429314f8046d935820fae07fa8f45c4cd98c7c9398098494ead7a062b3104c017a618aa303721705b6e7ff0bf5f31b81337a25db100c8f97959a1f05b28706ef234d86b01573be0d89eb3815163672405dc22a68e38c5b56142f4c5bba00c4930369663452047dddee03cdf77a83e73bb4c8801c504cd69f652178e704274dd8d6170d2ae7c993a8c746cd03de77ac9b126d8b73f74f2e18e12e1b7353818a4207f7690bfb9457dfd90c8725b13493270e7aa23540ecf763a60986a60335bcd2843754d37c8171359b7ca3685b52a232def44cfcf288b12302f2508b75a81366c67a4bd64c31cd99c950b0e93c57daac6c46d9ea84376a25a02a216ed92dda6eb7f9b684af99ad5a60821351ec7c7a20c399875f506728bd517dee1920abc49688153ea2f3c82795a8b48958ec7ea9fbff2c02c533ceb46f0d5460b6d472cda4191c1215120cb861c025d881fc36733d3df457e85e96d2ac407585c3d31ac88297017e1c87d93fcdcda183825d4891759a82303d6d2dc7cbc98af5a13c80ff02cf235bfdc0cb3087379303f2f9c8f9e0eee0291d5be11bba9540946b9edd699a8a4f4af08cebd4d9af5999a1a600a6229ff06854c5d097e98b2b130973cf3d633c60b6f0fbd99a5f51c880c4a7324d85dfc0cdcc5cc8b4608430d18db2b49a4f92c180976bce6d94bfccaaf8e51c447ba65f9c140305ea4478b3ac9647beebca9b46931385250df91c7a78585be119d29019baab8d05a5aad95338acdcde72f32f928e8ad81a74e3b7ef32e28214fa64c6f21f97973af6e3a15040c8bdd71ee5a98783bdcbd97e85c8d45e75ef683e296dee91bf6425e5e54a8cec3c90898ae25fc958c6f74c431f0ea0f6eafa2fd17b0c7ecb96ec8ef48bedb2df0451b09f3ae5ba6730c88522cec116b778bd962ff76a826da63383e0d42ca0ea5575b2c0200b3d46d5949489741eaf12070ef153413b37b0ad01d066ce33768bbe92f97b5a390cdf819aaa21b89a9e80a3d39b57f4e668bf809a2bdb66c75d9ac04e492dc8bbc4c3f985e8be1f56260876dc70f11e817b1e7dc1e513da6fa648aed627aeeafab08e470373ed832f359dae92888e11c3da10abd80f2fa793ebd392d1ea263b2cd5192c0a1b4b473d4adb0b17b327ae132527b4527fa2c66c192a3b6a64832c887be196f8152252566771dcfe7a07c3ef16c38f3488d3e863ba94930355186a30e7a8303f3fcdf00d5964b69abf93a5fa74cd0ad02e2232ceb5d0218baad6dbc51515497b24718c998727e51c7cb3fa8b27dfbacddffb9db8158e96a7951d61242f1d610bce350f63d2c06c5877288353e59887f8a240eb91ec7794aecba75fae9acbbc91cddeaaa16294db8b8c0763161426e561ee986056cf9a3a63febe79bd3a71c7a61c31645fa8f3ca78f74699c97573ed238f7a986c28c58049071e096442493b0796362d5acab085903f435fe001bd7b03004de5d2900afd232572061a226778294af484a4ae84ea833789de6dbe96f5c262d9bca0c83c477dde8e2600d3875c60b747df15c2f2b9affbc2a37c5ee2bc3e1527a30558989164f09a082db972b78407a1a6a3291e06a64694a90fd0b8e07e69add2426cde8f7805ff3f1a8720979b1a17fa27f29605568bffeb0fb7e69d04a039cbc4d19b405ba637d5082af12bb419cd056be2e41cd2a4b087c529340cc9736e8e54d251a577bf2ce6071a89c9f5bfbff59a5227be9877f701129a294cf2d35f44f950e09dff82a0565f6a9d2c90a7ddf777de04e0268d4abe43df0ca78e201a9b914c19074065d486b7a253584df29ffebd648a0180afee7d088e5faafa4b13da9ae3063e0ec1b7740505e17044dbe76e79c1b0f070e17831a4d6a7e70030723a0608de1fa975b1d5ec1f5379ed6a6e91cfe2bad4546459e58cf78978f30aa7fb470cbaecacf54552533b971d845a66a7c50854c3959d4a475a1efb0f71e1b1284b91a8e89c80ad3e659388dae1a87b1451a5854138a8d2c0b101a4713eb8ae29ad742db41cf690ea0c095fd475e064bb2892cc5b688635d3ae2287f45a5f6e6186693e5d0c800db915ca5a5778139bf6ad691d8c82a9adb73b631f62da30c85a1964c841a97168cecba2021e62d6f5eb4cdd896e123f7c933118a5fbb5d7fa1d0fa0a887acf1c8b6eb779c4ca50ca097e13dffa9ff770de18dd44b64e927e16ef1037b433b366e8bee62d80aa8f2be442acb766dabe0fd15abf36b2ef52f683eabe3c3dbd4d54165aa66087a511c99eb6697f13c7190f26ace555d387f298c74c94dcb41b9edb59ff4ed3f7d9b12ba181e0b799ca0dad4a09b29abde7b5321a59106f97a5fa2036df669abd44649645c02f3c526ade8f362483049fad2943045bf926006d69343a4d4e3f614406d1fb2e5300e6c4677bb1e20190c3a45095fdc4c5d729b91addbfcf0bbebfe56e2737e51d893f1f2fac246cf566307081dcabb33d64abf38a0e3b7522951d10955cf27eedb9f73e0c6b8dd5e3705903b6e6397259b055f37decdd35fce919fe2313fca4e007de882b41bde40a70c4bab5d0cc6aa266aab3602a1464891ddef4cd93d31b12b29ee6c8d1fd60e8872b53cfd9fde963096ecc79ef93b0192df183b5ef31385f662e1a63023de7cb34958222d48176809954172f6ee0e0a01e73e4c8beaf9670e46642f658cb97b27e4501e4af0afa2512caeecb7b2d0279cfce6c266ca3608f6989bfb505b32a44222b21afea81af11b68fe43ed44cb898de54e7b08522b3904013b1244f1766bfc513a943ef97ac05e87f3ff4040272e69da99c26187cecaa1f4ab45bb961f81afe77b46216386091027bb40a3bf548639d6087a2d43638b7ea99a601a0c89feac4f371bb7177bcc7e3a9066442b7654cce5fcd9a4ca4fce4bd406b8c261d710716d90a15a1687236e4ad243153359c7548405d20048da862b545bc3b3eac3a7f73badac8ab5f0f2ee4a911c15d1080c4cdf6997c223e09b340f5f1bb970c930b458f768a0bbbe787cb87f181820a3d122b3548d676b3e5a52cbfef06d7424ec065c1f34c230407f9f5dc002c27a9666bec439affe6fee2f5cb8b562a5241145e89e2d327a36292b125bca2e0589c2009265rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootghc-8.10.7-150500.3.2.5.src.rpmghc-devel(ghc-8.10.7)ghc-ghc-develghc-ghc-devel(s390-64)@@@@@@@@@@@@@@@@@@@@    /bin/sh/bin/shghc-compilerghc-compilerghc-compilerghc-devel(array-0.5.4.0)ghc-devel(base-4.14.3.0)ghc-devel(binary-0.8.8.0)ghc-devel(bytestring-0.10.12.0)ghc-devel(containers-0.6.5.1)ghc-devel(deepseq-1.4.4.0)ghc-devel(directory-1.3.6.0)ghc-devel(filepath-1.4.2.1)ghc-devel(ghc-boot-8.10.7)ghc-devel(ghc-boot-th-8.10.7)ghc-devel(ghc-heap-8.10.7)ghc-devel(ghci-8.10.7)ghc-devel(hpc-0.6.1.0)ghc-devel(integer-gmp-1.0.3.0)ghc-devel(process-1.6.13.2)ghc-devel(template-haskell-2.16.0.0)ghc-devel(terminfo-0.4.1.4)ghc-devel(time-1.9.3)ghc-devel(transformers-0.5.6.2)ghc-devel(unix-2.7.2.2)ghc-ghc(s390-64)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)8.10.78.10.78.10.7-150500.3.2.58.10.7-150500.3.2.53.0.4-14.6.0-14.0-15.2-14.14.3bbk@b'E@a2@`@`OL@`"y@_<_H@_@_xg_/@^Ӝ@^@^W@^J@^:@^)^&^ P@^ P@^ 8@^ ^@^C]]\@\\@\@\\ @[[@[@[[@[][][[[O+[8@[&M@[5@[ Z@Z@Z@Z3@Z7Z5 Z+@YeYY@Y@Y*Y XXM@XXS@XWW_@W@W;W7@WV޾V`Vl@V1V_V@V$@VwVetV]VVf@V@V@UUȒ@U@UhTUg@Ug@Ud`@U]U]U-@U+Ut@T@T Tи@Tи@T@T*@TZ@dmueller@suse.commliska@suse.czdmueller@suse.commimi.vx@gmail.commimi.vx@gmail.comdmueller@suse.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.compsimons@suse.commimi.vx@gmail.comschwab@suse.deschwab@suse.deptrommler@icloud.comguillaume.gardet@opensuse.orgptrommler@icloud.commimi.vx@gmail.comptrommler@icloud.comptrommler@icloud.commimi.vx@gmail.commimi.vx@gmail.comptrommler@icloud.comschwab@suse.demimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.comguillaume.gardet@opensuse.orgguillaume.gardet@opensuse.orgptrommler@icloud.comptrommler@icloud.comptrommler@icloud.comptrommler@icloud.commmanu84@outlook.depsimons@suse.comptrommler@icloud.comptrommler@icloud.comptrommler@icloud.comptrommler@icloud.comguillaume.gardet@opensuse.orgptrommler@icloud.commimi.vx@gmail.commimi.vx@gmail.comptrommler@icloud.commimi.vx@gmail.comptrommler@icloud.comptrommler@icloud.comptrommler@icloud.comptrommler@icloud.comptrommler@icloud.commimi.vx@gmail.commeissner@suse.competer.trommler@ohm-hochschule.demimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.demimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.demimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.demimi.vx@gmail.commimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.demimi.vx@gmail.commimi.vx@gmail.competer.trommler@ohm-hochschule.demimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.competer.trommler@ohm-hochschule.deschwab@suse.desbahling@suse.commimi.vx@gmail.commimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.dero@suse.demimi.vx@gmail.comro@suse.dero@suse.demimi.vx@gmail.commimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.demimi.vx@gmail.commimi.vx@gmail.commimi.vx@gmail.competer.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.depeter.trommler@ohm-hochschule.de- add ghc.keyring to have source validation enabled - limit to use llvm12 for Factory as newer versions are not supported- Remove dependency on binutils-gold as the package will be removed in the future. Gold linker is unmaintained by the upstream project.- add ghc-armv7-VFPv3D16--NEON.patch to use vfpv3-d16 on armv7hl- update to 8.10.7 - drop 4134.patch and refresh ghc-pie.patch * portabilit yfixes * Export some RTS symbols required for static builds of GHC * Fix LLVM version checking logic so it no longer complains about supported LLVM versions. * Fix some RTS crashes on Darwin due to mixing up the closure sizes of the aarch64 and x86-64 backends. * Fix a crash on the non-moving GC due to incorrect logic for calculating the header size for array write barries * Fix a bug in base leading to a high likelihood of space leaks when using lazy bytestrings * Fix some timer races in the RTS possibly manifesting in #18033 and #20132 * Fix a number of bugs affecting the RTS m32 allocator * Fix a bug where code may be unloaded prematurely when using the parallel garbage collector * Fix a bug where the linker may during shutdown unload code before libraries’ atexit handlers have a chance to run * Improve code layout by distiguishing conditional and unconditional branches * Add hs-boot file support for -ddump-minimal-imports * Ensure hs-boot files are built before source files in GHCs -M mode * Fix a long standing GHC API bug affecting clients like HLS where async exceptions used to cancel threads during typechecking would be caught by the Template Haskell evaluator and reported as compile errors * Improve error messages when looking up packages fails * Fix a number of quirks in GC accounting * Fix a code generation bug which could result in entry of unlifted objects in some programs using unboxed sums * Ensure that POSIX signals are not delivered to the ticker thread when using the pthread itimer implementation. * Fix a specialiser bug which could result in the construction of recursive dictionaries in some programs * Bump containers to 0.6.4.1 * Do not treat -Winferred-safe-imports warnings as errors. * Fix a bug where typechecker plugins could be run with an inconsistent typechecker environment * Fix a simplifier bug which lead to an exponential blow up and excessive memory usage in certain cases- add 4134.patch to fix build with Sphinx4- always build against llvm9, also on SLE15 (suse_version == 1500) otherwise the resulting build is not working (llvm is 7.x there) (bsc#1181571)- update to 8.10.4 * Fix a crash caused by inappropriate garbage of heap-allocated data reachable from foreign exports- update to 8.10.3 * More robust support for architectures with weak memory ordering guarantees (e.g. modern ARM hardware). * GHC can now split dynamic objects to accomodate macOS' RPATH size limitation when building large projects (#14444) * Several correctness bugs in the new low-latency garbage collector * Many, many other bug-fixes))- disable %{ix86} build- force multiversion for subpackages- add --enable-unregistered to configure phase on unregistered architectures- update to 8.10.2 * Fixes a code generation bug resulting in incorrect code generation for foreign calls with complex arguments * Fixes a bug causing object merging to fail when the lld linker is in use * Introduces a workaround for a Linux kernel bug in the implementation of the timerfd mechanism * Fixes a few specialiser regressions as well introduces a variety of miscellaneous specialiser improvements * Fixes a potential loss of sharing due to left operator sections * Fix bootstrapping of GHC with the LLVM backend on x86-64 * few important correctness fixes for the low-latency garbage collector.- cleanup specfile from Leap 42 and older remrants - drop fix-unregisterised-v8.4-8.6.patch - drop fix-build-using-unregisterized-v8.4.patch- Update ghc to version 8.10.1. Important changes are: * The UnliftedNewtypes extension, allowing newtypes to be wrap types of kind other than Type. * The StandaloneKindSignatures extension, allowing explicit signatures on type constructors. * A new, low-latency garbage collector for the oldest generation. Please refer to the compiler documentation for all details: https://downloads.haskell.org/~ghc/8.10.1/docs/html/users_guide/8.10.1-notes.html- update to 8.8.3 * a compiler panic due to over-zealous eta reduction * the ability to bootstrap with earlier 8.8 releases has been restored * the directory submodule has been updated * the process submodule has been updated- Increase memory limit for qemu user-space builds- Fix typo in last change- use ghc-bootstrap-helpers on all archs - lower build env requirements on riscv64 * make sure we can build on smaller systems * adjust parallelism so we don't hog big workers for almost a week * many thanks to Stefan Bruens for pointing out the issue and helping with the solution- Update _constraints for aarch64- drop 0001-Fix-check-whether-GCC-supports-__atomic_-builtins.patch * fixed upstream - drop D5212.patch * fixed upstream - drop fix-build-using-unregisterized-v8.4.patch * bootstrap compiler is 8.6.5 now - refresh fix-unregisterised-v8.4-8.6.patch - clean up spec file- update to 8.8.2 * A bug (Issue #17088) in the compacting garbage collector resulting in segmentation faults under specific circumstances. Note that this may affect user programs even if they did not explicitly request the compacting GC (using the -c RTS flag) since GHC may fallback to compacting collection during times of high memory pressure. * A code generator bug (Issue #17334) resulting in GHC panics has been fixed. * A typechecker bug (Issue #17112) resulting in GHC panicking on some programs has been fixed. * A bug (Issue #16707) in the implementation of software transactional memory potentially resulting in hanging transactions has been fixed. * A bug in the implementation of compact normal forms resulting in segmentation faults in some uses (Issue #17044) has been fixed.- add fix-unregisterised-v8.4-8.6.patch * fix build on s390x and riscv64- refresh buildpath-abi-stability.patch - refresh ghc-8.0.2-Cabal-dynlibdir.patch - refresh ghc-pie.patch - enable riscv64- use prebuilt alex and happy on Tumbleweed to avoid buildcycle - Don't require llvm in ghc-compiler for other architectures than arm- update to 8.8.1 -new stable release - refresh Disable-unboxed-arrays.patch - drop allow-riscv-and-riscv64-CPU.patch - merged in upstream- add fix-build-using-unregisterized-v8.4.patch * fixes unregisterised builds when bootstrap compiler is GHC 8.4 * fixes build on s390x- Enable build on riscv64 - Add memory constraints for riscv64, restrict to 2 jobs - allow-riscv-and-riscv64-CPU.patch: recognize riscv64 as architecture - Apply Disable-unboxed-arrays.patch also on s390x- update to 8.6.5 * A build system issue where use of GCC with -flto broke configure was fixed- really bump llvm5 to llvm6 requires for ghc-compiler- bump llvm req to llvm6- update to 8.6.4 * A bug wherein changes in default method definitions would fail to trigger recompilation has been fixed * A bug wherein plugins would fail to lookup names not in scope in the module being compiled has been fixed * A bug where some programs involving StaticData would be rejected with either a typechecking error or internal compiler error has been fixed * A bug where compilation on Windows can fail with linker errors referring to __chkstk_ms has been fixed- use python3-Sphinx instead deprecated python-sphinx [boo#1119686]- update to 8.6.3 * A code generation bug resulting in segmentations faults in some programs * bug leading to programs with deep stacks crashing when run with retainer profiling enabled * A bug resulting in potential heap corruption during stable name allocation * Plugins are now loaded during GHCi sessions- dont require memory-constraints on older distros - dropped reproducible-tmp-names.patch- update to 8.6.2 * Several compiler panics observed in GHC 8.6.1 have been fixed * An integer overflow, resulting in some encodeFloat uses returning incorrect results, has been fixed * A long-standing bug in the LLVM code generator, resulting in incorrect floating point evaluation, has been fixed. * A long-standing bug exposed in GHC 8.6.1, has been fixed. This issue resulted in undefined runtime behavior with some uses of the dataToTag# primop. Note that this issue, while less likely to manifest, has existed in some form in all GHC releases prior to this release and may result in silent, incorrect evaluation.- Make use of memory-constraints to avoid OOM errors- Remove forced 'make -j2' for aarch64 and %arm- add Disable-unboxed-arrays.patch * apply on ppc64 only * fixes ppc64 build - add D5212.patch * fix GHCi on big endian platforms- cleanup * remove unused conditional in configure command- update to 8.6.1 - add 0001-Fix-check-whether-GCC-supports-__atomic_-builtins.patch * fix __atomic_builtin detection * upstream commit ce3897ff - drop add_armv6l_and_armv7l_target.patch * fixed upstream - drop fix-ppc64le-recognition.patch * fixed upstream - drop fix-build-using-unregisterized-v8.2.patch * bootstrap with 8.4.3 works w/o this patch - refresh ghc-pie.patch - refresh ghc-8.0.2-Cabal-dyndir.patch - refresh buildpath-abi-stability.patch- Add fix-build-using-unregisterized-v8.2.patch * Fix build on s390x- Fix armv6 build by adding armv6l to llvm-targets: * change add_armv7l_target.patch to add_armv6l_and_armv7l_target.patch- Cosmetic: replace tabs with blanks, strip trailing white space, and update copyright headers with spec-cleaner.- Fix dependencies on arm and s390x- add fix-ppc64le-recognition.patch * recognize powerpc64le as PPC64 in cabal files- update to 8.4.3 * code generation for UnboxedSum fixed * compatibility withe newer binutils (as) * Cabal issue with abi-depends fixed- Fix build for older openSUSE - Don't do selfbootstrapping * Cuts down build time roughly in half- Fix armv7 build by adding armv7l to llvm-targets: * add_armv7l_target.patch- update to 8.4.2 - drop 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch * fixed upstream - drop 0001-PPC-Implement-Atomic-operations.patch * fixed upstream - drop 0001-Use-__atomic-intrinsics-for-atomicread-write.patch * fixed upstream - drop D4089.patch * fixed upstream- fix BuildRequires for llvm- use %license macro as used by new ghc-rpm-macros- refresh ghc-pie.patch so it applies cleanly- reintroduce ghc-pie.patch (pure upstreams don't work)- update to 8.2.2 - Several important correctness issues fixing potential runtime crashes - A correctness issue leading to undefined behavior in some programs making use of STMa fixed - A runtime system bug which may have manifested as a segmentation fault under low-memory conditions fixed - ghc-pkg now works correctly ihn environments with misconfigured NFS mounts - GHC can now produce position-independent executables - Significantly improved type errors - refresh reproducible-tmp-names.patch - drop ghc-pie.patch fixed upstream- update to 8.2.1 - improved compiler performance - reliable DWARF debugging information on x86_64 and i386 - aarch64: registerised through LLVM backend (experimental) - optimized build for platforms with LLVM backend (arm, aarch64) - improved performance on NUMA systems - interface file determinism - various language improvements - update _constraints * ppc64le builds need less memory since 8.2.1 - drop support for ppc and s390 - drop ghc-no-madv-free.patch fixed upstream - drop 0001-StgCmmPrim-Add-missing-write-barrier.patch - refresh buildpath-abi-stability.patch - refresh ghc-8.0.2-Cabal-dynlibdir.patch - refresh ghc-pie.patch - refresh reproducible-tmp-names.patch - refresh 0001-PPC-Implement-Atomic-operations.patch - refresh D4089.patch- add D4089.patch * fix GHCi issue on ppc64 * see Haskell Trac #11262- add 0001-Use-__atomic-intrinsics-for-atomicread-write.patch * add missing memory barriers on atomic read/write ops * fixes upstream ticket #14244 - adjust comment for patch 32 * the situation with upstream #12537 is improved but not solved. Patch 32, however, is correct. There are even more memory barriers missing elsewhere in the compiler.- add 0001-PPC-Implement-Atomic-operations.patch * fixes parallel programs on all PowerPC platforms * uptream ticket #12537 - refresh buildpath-abi-stability.patch- make compatible with new upstream macros - added patches for more stable abi: * buildpath-abi-stability.patch * reproducible-tmp-names.patch- enable for global PIE support: - the compiler is built without PIE support due to the bootstrap libraries being non-PIE using BuildIgnore: gcc-PIE - the compiler itself builds -fPIC objects all the time, which should make all ghc compiled binaries be PIE. - ghc-pie.patch: enable default -fPIC on Linux/x86_64- comment for patch 100 - refresh ghc-no-madv-free.patch with upstream patch * upstream fix for Haskell Trac #12865 * Haskell Trac #12495 is a duplicate- update to 8.0.2 - drop patches merged by upstream: * D2495.patch - refreshed patches: * 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch * 0001-StgCmmPrim-Add-missing-write-barrier.patch * ghc-no-madv-free.patch - added ghc-8.0.2-Cabal-dynlibdir.patch by Jens Petersen simplifing haskell packaging + Interface files produced by GHC should now be deterministic ( boo#998972 ) + A bug has been fixed that caused standalone derived Ix instances to fail for GADTs with exactly one constructor + Compatibility fixes recent Linux distributions.- drop D2844.patch * the patch causes more issues with parallel builds - fixes boo#1020909- add D2844.patch * fix issues with parallel builds- make compatible with new ghc-rpm-macros- update to 8.0.1 - drop patches fixed upstream: * drop atomic-cast.patch * drop cabal-show-detail-direct.patch * drop 0001-link-command-line-libs-to-temp-so.patch * drop 0001-implement-native-code-generator-for-ppc64.patch * drop ghc.git-b29f20.patch * drop u_terminfo_0402.patch * drop u_Cabal_update.patch * drop u_haskeline_update.patch * drop 0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch * drop D2214.patch * drop D2225.patch - refresh 0001-StgCmmPrim-Add-missing-write-barrier.patch - refresh 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch - add ghc-no-madv-free.patch to fix "unable to decommit memory: Invalid argument" errors GHC reports due to a misdetected MADV_FREE capability. The configure script sees the symbol define by glibc, but unfortunately this doesn't mean that the running kernel actually supports the feature, too. The upstream ticket https://ghc.haskell.org/trac/ghc/ticket/12495 has more details. Thanks to @psimons - GHC produces debug information on x86 and x86_64 - aarch64 has LLVM backend (requires llvm-3.7) - native code generator for powerpc64[le] (openSUSE contribution!) - disable html doc on SLE, we don't have python-sphinx * Thanks @mimi_vx- add D2495.patch * missing memory barrier on PowerPC, ARM - add 0001-StgCmmPrim-Add-missing-write-barrier.patch * another issing memory barrier on PowerPC, ARM - add 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch * fix bug in code generator * fixes build of ghc-zeromq4-haskell on powerpc64[le]- fix boo#994268- add D2225.patch * backport of upstream patch accepted for ghc 8.0.1 * fix SMP primitives on all powerpc archs- add D2214.patch * backport of upstream patch slated for ghc 8.0.2 * fix issue in code PowerPC code generator (32 bit and 64 bit) - add 0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch * backport of upstream fix slated for ghc 8.0.2 * fix bytestring library on big-endian archs * fix wrong results in ghc-pureMD5 and others on big-endian- update haskeline to 0.7.2.3 - refresh u_haskeline_update.patch * Fix hsc2hs-related warning on ghc-8 * Fix the behavior of ctrl-W in the emacs bindings * Point to github instead of trac- update Cabal to 1.22.8.0 - refresh u_Cabal_update.patch * Distribution.Simple.Setup: remove job cap * Check all object file suffixes for recompilation * Move source files under 'src/'.- limit parallel jobs to two on aarch64 * aarch64 runs out of memory with too many parallel compiles- add missing C library dependency to terminfo devel package- update haskeline to 0.7.2.2 - add u_haskeline_update.patch * canonicalize AMP instances to make the code more future proof * Generalize constraints for InputT instances * Bump upper bounds on base and transformers * Make Haskeline `-Wtabs` clean- update Cabal to 1.22.7.0 - refresh u_Cabal_update.patch * Backport #3012 to the 1.22 branch * Add foldl' import * The Cabal part for fully gcc-like response files- update tarball to 7.10.3b * some documentation files were missing in the original 7.10.3 tarball - add 0001-link-command-line-libs-to-temp-so.patch * fix panic in GHCi when linking against C library specified as command line argument (-l) * currently under upstream review * fix Haskell trac #10458- update Cabal to 1.22.6.0 - add u_Cabal_update.patch -- update of Cabal * Relax upper bound to allow upcoming binary-0.8- update terminfo to 0.4.0.2 - drop remove-cur_term-usage.patch - merged by upstream - add u_terminfo_0402.patch -- update of terminfo- update Cabal to 1.22.5.0 * Don't recompile C sources unless needed * Support Haddock response files. * Add frameworks when linking a dynamic library.- use upstream variant of remove-cur_term-usage.patch- update to 7.10.3 - add cabal-show-detail-direct.patch -- Fix testsuites with large output. Debian patch. Thanks Joachim for suggesting it in Haskell #10870! - add ghc.git-b29f20.patch * fixes upstream #7830 * fix ghc 7.10.2 failing to bootstrap ghc head on ppc and perhaps ppc64 with some optimizations enabled * backport of my patch for upcoming ghc 8.0.1- atomic-cast.patch: fix signature of atomic bultins - ghc-7.8-arm-use-ld-gold.patch: remove obsolete patch- Remove ncurses6.patch - it's not so easy ;) - Add remove-cur_term-usage.patch to remove the need to access the cur_term global which isn't available in the openSUSE ncurses6 build.- Add choice for libffi in openSUSE:Leap:42.1- remove llvm from requires - add ncurses6.patch to fix build with ncurses6, all thanks goes to Tomas Cech sleep_walker@opensuse.org- update to 7.10.2 * type checker fixes * fixes for Aarch64 support * fix deadlock in runtime system when scheduling garbage collection - 7.10.1 highlights * implement Applicative Monad Proposal * implement Burning Bridges Proposal * support for partial type signatures * reimplement integer-gmp * support plugins in type checker (experimental!) - drop llvm-powerpc64-datalayout.patch * this patch was incomplete all along and now we have our native code generator - drop ghc-cabal-unversion-docdir.patch * ghc-rpm-macros is following ghc's doc layout so no need to patch - drop D349.patch * fixed upstream - drop integer-gmp.patch * we do not support SLE11 anymore - drop ghc-7.8.2-cgen-constify.patch * fixed upstream - drop D560.patch * fixed upstream - drop ghc-glibc-2.20_BSD_SOURCE.patch * fixed upstream - drop ghc-arm64.patch * fixed upstream - drop ghc-config.mk.in-Enable-SMP-and-GHCi-support-for-Aarch64.patch * fixed upstream - refresh 0001-implement-native-code-generator-for-ppc64.patch - disable ghc-7.8-arm-use-ld-gold.patch * not sure we need this, must be rebased if we do- add ghc-config.mk.in-Enable-SMP-and-GHCi-support-for-Aarch64.patch * enable SMP and GHCi on Aarch64 - add ghc-7.8-arm-use-ld-gold.patch * Aarch64 needs gold linker- refresh ghc-arm64.patch - unconditionally apply ghc-arm64.patch- add backport of powerpc64le native code generator to 0001-implement-native-code-generator-for-ppc64.patch - refresh D349.patch- on s390/s390x use "make -j2" to stabilize abi hashes (see also redhat bug 1212374)- disable llvm on arm64- re-diffed ghc-arm64.patch- add ghc-arm64.patch for aarch64 - add aarch64, s390, s390x to ExclusiveArch- remove unneeded conditions- chnage constraints to 12G for disk and 4G for ram- add ghc-glibc-2.20_BSD_SOURCE.patch * fixes build on unregisterised architectures (openSUSE: ppc64le)- drop ghc-cabal-unversion-docdir.patch * ghc-rpm-macros follows upstream ghc again+ add ghc-glibc-2.20_BSD_SOURCE.patch from fedora - updated to 7.8.4 + removed D177.patch (in upstream) + removed D173.patch (in upstream) + removed ghc.git-e18525f.patch (in upstream) + refresh 0001-implement-native-code-generator-for-ppc64.patch * A critical bug in the LLVM backend which would cause the compiler to generate incorrect code has been fixed (issue #9439). * Several bugs in the code generator have been fixed for unregisterised platforms, such as 64bit PowerPC (issue #8819 and #8849). * A bug that could cause GHC's constructor specialization pass (enabled by default at -O2, or via -fspec-constr) to loop forever and consume large amounts of memory has been fixed (issue #8960). * A bug that would cause GHC to fail when attempting to determine GCC's version information in non-english locales has been fixed (issue #8825). * A minor bug that allowed GHC to seemingly import (but not use) private data constructors has been fixed (issue #9006). * A bug in the register allocator which would cause GHC to crash during compilation has been fixed (issue #9303). * A bug that caused the compiler to panic on some input C-- code has been fixed (issue #9329). * A few various minor deadlocks in the runtime system when using forkProcess have been fixed. * A bug which made blocked STM transactions non-interruptible has been fixed (issue #9379). * A bug in the compiler which broke pattern synonym imports across modules in Haddock has been fixed (issue #9417). * A minor bug in the code generator in which the popCnt16# did not zero-extend its result has been fixed (issue #9435). * A bug which caused the compiler to panic on pattern synonyms inside a class declaration has been fixed (issue #9705). * A bug in the typechecker revolving around un-saturated type family applications has been fixed (issue #9433). * Several bugs have been fixed causing problems with building GHC on ARM (issues #8951, #9620, #9336, and #9552). * A bug in the typechecker that could cause an infinite loop when using superclasses in a cycle has been fixed (issue #9415). * A bug causing corruption in signal handling with the single-threaded runtime system has been fixed (issue #9817). * A bug that could cause compiled programs to crash due to use of overlapping type families has been fixed (issue #9371). * A bug in the inliner that caused certain expressions within unboxed tuples to not be properly evaluated has been fixed (issue #9390). * A bug that caused the compiler to not always properly detect LLVM tools (particularly on Windows) has been fixed (issue #7143). * A bug that prevented GHC from deriving Generic1 instances for data families has been fixed (#9563). * A bug that caused type inference to infer the incorrect type in the presence of certain type families and constraints has been fixed (issue #9316).- add constraints file- remove dblatex dependency- add patch 0001-implement-native-code-generator-for-ppc64.patch * native code generation improved compilation speed * fewer errors in testsuite than with C back end- add patch D560.patch * fixes dynamic linking on ppc * see https://phabricator.haskell.org/D560 * this is a back port of the upstream patch- add patch D349.patch * fix a crash with dynamic linking in GHCi when accessing the process environment * our patch has been submitted upstream * see https://phabricator.haskell.org/D349/bin/sh/bin/shs390zp39 1687572276  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~8.10.7-150500.3.2.58.10.7-150500.3.2.5  Annotations.dyn_hiAnnotations.hiAnnotations.p_hiApiAnnotation.dyn_hiApiAnnotation.hiApiAnnotation.p_hiAr.dyn_hiAr.hiAr.p_hiAsmCodeGen.dyn_hiAsmCodeGen.hiAsmCodeGen.p_hiAsmUtils.dyn_hiAsmUtils.hiAsmUtils.p_hiAvail.dyn_hiAvail.hiAvail.p_hiBag.dyn_hiBag.hiBag.p_hiBasicTypes.dyn_hiBasicTypes.hiBasicTypes.p_hiBinFingerprint.dyn_hiBinFingerprint.hiBinFingerprint.p_hiBinIface.dyn_hiBinIface.hiBinIface.p_hiBinary.dyn_hiBinary.hiBinary.p_hiBitmap.dyn_hiBitmap.hiBitmap.p_hiBkpSyn.dyn_hiBkpSyn.hiBkpSyn.p_hiBlockId.dyn_hiBlockId.hiBlockId.p_hiBlockLayout.dyn_hiBlockLayout.hiBlockLayout.p_hiBooleanFormula.dyn_hiBooleanFormula.hiBooleanFormula.p_hiBufWrite.dyn_hiBufWrite.hiBufWrite.p_hiBuildTyCl.dyn_hiBuildTyCl.hiBuildTyCl.p_hiByteCodeAsm.dyn_hiByteCodeAsm.hiByteCodeAsm.p_hiByteCodeGen.dyn_hiByteCodeGen.hiByteCodeGen.p_hiByteCodeInstr.dyn_hiByteCodeInstr.hiByteCodeInstr.p_hiByteCodeItbls.dyn_hiByteCodeItbls.hiByteCodeItbls.p_hiByteCodeLink.dyn_hiByteCodeLink.hiByteCodeLink.p_hiByteCodeTypes.dyn_hiByteCodeTypes.hiByteCodeTypes.p_hiCFG.dyn_hiCFG.hiCFG.p_hiCLabel.dyn_hiCLabel.hiCLabel.p_hiCPrim.dyn_hiCPrim.hiCPrim.p_hiCSE.dyn_hiCSE.hiCSE.p_hiCallArity.dyn_hiCallArity.hiCallArity.p_hiClass.dyn_hiClass.hiClass.p_hiCliOption.dyn_hiCliOption.hiCliOption.p_hiClsInst.dyn_hiClsInst.hiClsInst.p_hiCmdLineParser.dyn_hiCmdLineParser.hiCmdLineParser.p_hiCmm.dyn_hiCmm.hiCmm.p_hiCmmBuildInfoTables.dyn_hiCmmBuildInfoTables.hiCmmBuildInfoTables.p_hiCmmCallConv.dyn_hiCmmCallConv.hiCmmCallConv.p_hiCmmCommonBlockElim.dyn_hiCmmCommonBlockElim.hiCmmCommonBlockElim.p_hiCmmContFlowOpt.dyn_hiCmmContFlowOpt.hiCmmContFlowOpt.p_hiCmmExpr.dyn_hiCmmExpr.hiCmmExpr.p_hiCmmImplementSwitchPlans.dyn_hiCmmImplementSwitchPlans.hiCmmImplementSwitchPlans.p_hiCmmInfo.dyn_hiCmmInfo.hiCmmInfo.p_hiCmmLayoutStack.dyn_hiCmmLayoutStack.hiCmmLayoutStack.p_hiCmmLex.dyn_hiCmmLex.hiCmmLex.p_hiCmmLint.dyn_hiCmmLint.hiCmmLint.p_hiCmmLive.dyn_hiCmmLive.hiCmmLive.p_hiCmmMachOp.dyn_hiCmmMachOp.hiCmmMachOp.p_hiCmmMonad.dyn_hiCmmMonad.hiCmmMonad.p_hiCmmNode.dyn_hiCmmNode.hiCmmNode.p_hiCmmOpt.dyn_hiCmmOpt.hiCmmOpt.p_hiCmmParse.dyn_hiCmmParse.hiCmmParse.p_hiCmmPipeline.dyn_hiCmmPipeline.hiCmmPipeline.p_hiCmmProcPoint.dyn_hiCmmProcPoint.hiCmmProcPoint.p_hiCmmSink.dyn_hiCmmSink.hiCmmSink.p_hiCmmSwitch.dyn_hiCmmSwitch.hiCmmSwitch.p_hiCmmType.dyn_hiCmmType.hiCmmType.p_hiCmmUtils.dyn_hiCmmUtils.hiCmmUtils.p_hiCoAxiom.dyn_hiCoAxiom.hiCoAxiom.p_hiCodeOutput.dyn_hiCodeOutput.hiCodeOutput.p_hiCoercion.dyn_hiCoercion.hiCoercion.p_hiConLike.dyn_hiConLike.hiConLike.p_hiConfig.dyn_hiConfig.hiConfig.p_hiConstants.dyn_hiConstants.hiConstants.p_hiConstraint.dyn_hiConstraint.hiConstraint.p_hiCoreArity.dyn_hiCoreArity.hiCoreArity.p_hiCoreFVs.dyn_hiCoreFVs.hiCoreFVs.p_hiCoreLint.dyn_hiCoreLint.hiCoreLint.p_hiCoreMap.dyn_hiCoreMap.hiCoreMap.p_hiCoreMonad.dyn_hiCoreMonad.hiCoreMonad.p_hiCoreOpt.dyn_hiCoreOpt.hiCoreOpt.p_hiCorePrep.dyn_hiCorePrep.hiCorePrep.p_hiCoreSeq.dyn_hiCoreSeq.hiCoreSeq.p_hiCoreStats.dyn_hiCoreStats.hiCoreStats.p_hiCoreSubst.dyn_hiCoreSubst.hiCoreSubst.p_hiCoreSyn.dyn_hiCoreSyn.hiCoreSyn.p_hiCoreTidy.dyn_hiCoreTidy.hiCoreTidy.p_hiCoreToStg.dyn_hiCoreToStg.hiCoreToStg.p_hiCoreUnfold.dyn_hiCoreUnfold.hiCoreUnfold.p_hiCoreUtils.dyn_hiCoreUtils.hiCoreUtils.p_hiCostCentre.dyn_hiCostCentre.hiCostCentre.p_hiCostCentreState.dyn_hiCostCentreState.hiCostCentreState.p_hiCoverage.dyn_hiCoverage.hiCoverage.p_hiCtype.dyn_hiCtype.hiCtype.p_hiDataCon.dyn_hiDataCon.hiDataCon.p_hiDebug.dyn_hiDebug.hiDebug.p_hiDebugger.dyn_hiDebugger.hiDebugger.p_hiDemand.dyn_hiDemand.hiDemand.p_hiDesugar.dyn_hiDesugar.hiDesugar.p_hiDigraph.dyn_hiDigraph.hiDigraph.p_hiDmdAnal.dyn_hiDmdAnal.hiDmdAnal.p_hiDominators.dyn_hiDominators.hiDominators.p_hiDriverBkp.dyn_hiDriverBkp.hiDriverBkp.p_hiDriverMkDepend.dyn_hiDriverMkDepend.hiDriverMkDepend.p_hiDriverPhases.dyn_hiDriverPhases.hiDriverPhases.p_hiDriverPipeline.dyn_hiDriverPipeline.hiDriverPipeline.p_hiDsArrows.dyn_hiDsArrows.hiDsArrows.p_hiDsBinds.dyn_hiDsBinds.hiDsBinds.p_hiDsCCall.dyn_hiDsCCall.hiDsCCall.p_hiDsExpr.dyn_hiDsExpr.hiDsExpr.p_hiDsForeign.dyn_hiDsForeign.hiDsForeign.p_hiDsGRHSs.dyn_hiDsGRHSs.hiDsGRHSs.p_hiDsListComp.dyn_hiDsListComp.hiDsListComp.p_hiDsMeta.dyn_hiDsMeta.hiDsMeta.p_hiDsMonad.dyn_hiDsMonad.hiDsMonad.p_hiDsUsage.dyn_hiDsUsage.hiDsUsage.p_hiDsUtils.dyn_hiDsUtils.hiDsUtils.p_hiDwarfDwarf.dyn_hiDwarf.hiDwarf.p_hiConstants.dyn_hiConstants.hiConstants.p_hiTypes.dyn_hiTypes.hiTypes.p_hiDynFlags.dyn_hiDynFlags.hiDynFlags.p_hiDynamicLoading.dyn_hiDynamicLoading.hiDynamicLoading.p_hiElf.dyn_hiElf.hiElf.p_hiEncoding.dyn_hiEncoding.hiEncoding.p_hiEnumSet.dyn_hiEnumSet.hiEnumSet.p_hiErrUtils.dyn_hiErrUtils.hiErrUtils.p_hiException.dyn_hiException.hiException.p_hiExitify.dyn_hiExitify.hiExitify.p_hiExtractDocs.dyn_hiExtractDocs.hiExtractDocs.p_hiFV.dyn_hiFV.hiFV.p_hiFamInst.dyn_hiFamInst.hiFamInst.p_hiFamInstEnv.dyn_hiFamInstEnv.hiFamInstEnv.p_hiFastFunctions.dyn_hiFastFunctions.hiFastFunctions.p_hiFastMutInt.dyn_hiFastMutInt.hiFastMutInt.p_hiFastString.dyn_hiFastString.hiFastString.p_hiFastStringEnv.dyn_hiFastStringEnv.hiFastStringEnv.p_hiFieldLabel.dyn_hiFieldLabel.hiFieldLabel.p_hiFileCleanup.dyn_hiFileCleanup.hiFileCleanup.p_hiFileSettings.dyn_hiFileSettings.hiFileSettings.p_hiFinder.dyn_hiFinder.hiFinder.p_hiFingerprint.dyn_hiFingerprint.hiFingerprint.p_hiFiniteMap.dyn_hiFiniteMap.hiFiniteMap.p_hiFlagChecker.dyn_hiFlagChecker.hiFlagChecker.p_hiFloatIn.dyn_hiFloatIn.hiFloatIn.p_hiFloatOut.dyn_hiFloatOut.hiFloatOut.p_hiForeignCall.dyn_hiForeignCall.hiForeignCall.p_hiFormat.dyn_hiFormat.hiFormat.p_hiFunDeps.dyn_hiFunDeps.hiFunDeps.p_hiGHCGHC.dyn_hiGHC.hiGHC.p_hiHsHs.dyn_hiHs.hiHs.p_hiBinds.dyn_hiBinds.hiBinds.p_hiDecls.dyn_hiDecls.hiDecls.p_hiDoc.dyn_hiDoc.hiDoc.p_hiDump.dyn_hiDump.hiDump.p_hiExpr.dyn_hiExpr.hiExpr.p_hiExtension.dyn_hiExtension.hiExtension.p_hiImpExp.dyn_hiImpExp.hiImpExp.p_hiInstances.dyn_hiInstances.hiInstances.p_hiLit.dyn_hiLit.hiLit.p_hiPat.dyn_hiPat.hiPat.p_hiPlaceHolder.dyn_hiPlaceHolder.hiPlaceHolder.p_hiTypes.dyn_hiTypes.hiTypes.p_hiUtils.dyn_hiUtils.hiUtils.p_hiHsToCorePmCheckPmCheck.dyn_hiPmCheck.hiPmCheck.p_hiOracle.dyn_hiOracle.hiOracle.p_hiPpr.dyn_hiPpr.hiPpr.p_hiTypes.dyn_hiTypes.hiTypes.p_hiPlatformAArch64.dyn_hiAArch64.hiAArch64.p_hiARM.dyn_hiARM.hiARM.p_hiNoRegs.dyn_hiNoRegs.hiNoRegs.p_hiPPC.dyn_hiPPC.hiPPC.p_hiRegs.dyn_hiRegs.hiRegs.p_hiS390X.dyn_hiS390X.hiS390X.p_hiSPARC.dyn_hiSPARC.hiSPARC.p_hiX86.dyn_hiX86.hiX86.p_hiX86_64.dyn_hiX86_64.hiX86_64.p_hiStgToCmmStgToCmm.dyn_hiStgToCmm.hiStgToCmm.p_hiArgRep.dyn_hiArgRep.hiArgRep.p_hiBind.dyn_hiBind.hiBind.p_hiCgUtils.dyn_hiCgUtils.hiCgUtils.p_hiClosure.dyn_hiClosure.hiClosure.p_hiDataCon.dyn_hiDataCon.hiDataCon.p_hiEnv.dyn_hiEnv.hiEnv.p_hiExpr.dyn_hiExpr.hiExpr.p_hiExtCode.dyn_hiExtCode.hiExtCode.p_hiForeign.dyn_hiForeign.hiForeign.p_hiHeap.dyn_hiHeap.hiHeap.p_hiHpc.dyn_hiHpc.hiHpc.p_hiLayout.dyn_hiLayout.hiLayout.p_hiMonad.dyn_hiMonad.hiMonad.p_hiPrim.dyn_hiPrim.hiPrim.p_hiProf.dyn_hiProf.hiProf.p_hiTicky.dyn_hiTicky.hiTicky.p_hiUtils.dyn_hiUtils.hiUtils.p_hiThToHs.dyn_hiThToHs.hiThToHs.p_hiGHCi.dyn_hiGHCi.hiGHCi.p_hiGhcMake.dyn_hiGhcMake.hiGhcMake.p_hiGhcMonad.dyn_hiGhcMonad.hiGhcMonad.p_hiGhcNameVersion.dyn_hiGhcNameVersion.hiGhcNameVersion.p_hiGhcPlugins.dyn_hiGhcPlugins.hiGhcPlugins.p_hiGhcPrelude.dyn_hiGhcPrelude.hiGhcPrelude.p_hiGraphBase.dyn_hiGraphBase.hiGraphBase.p_hiGraphColor.dyn_hiGraphColor.hiGraphColor.p_hiGraphOps.dyn_hiGraphOps.hiGraphOps.p_hiGraphPpr.dyn_hiGraphPpr.hiGraphPpr.p_hiHaddockUtils.dyn_hiHaddockUtils.hiHaddockUtils.p_hiHeaderInfo.dyn_hiHeaderInfo.hiHeaderInfo.p_hiHieAst.dyn_hiHieAst.hiHieAst.p_hiHieBin.dyn_hiHieBin.hiHieBin.p_hiHieDebug.dyn_hiHieDebug.hiHieDebug.p_hiHieTypes.dyn_hiHieTypes.hiHieTypes.p_hiHieUtils.dyn_hiHieUtils.hiHieUtils.p_hiHooks.dyn_hiHooks.hiHooks.p_hiHooplBlock.dyn_hiBlock.hiBlock.p_hiCollections.dyn_hiCollections.hiCollections.p_hiDataflow.dyn_hiDataflow.hiDataflow.p_hiGraph.dyn_hiGraph.hiGraph.p_hiLabel.dyn_hiLabel.hiLabel.p_hiHscMain.dyn_hiHscMain.hiHscMain.p_hiHscStats.dyn_hiHscStats.hiHscStats.p_hiHscTypes.dyn_hiHscTypes.hiHscTypes.p_hiIOEnv.dyn_hiIOEnv.hiIOEnv.p_hiId.dyn_hiId.hiId.p_hiIdInfo.dyn_hiIdInfo.hiIdInfo.p_hiIfaceEnv.dyn_hiIfaceEnv.hiIfaceEnv.p_hiIfaceSyn.dyn_hiIfaceSyn.hiIfaceSyn.p_hiIfaceType.dyn_hiIfaceType.hiIfaceType.p_hiInst.dyn_hiInst.hiInst.p_hiInstEnv.dyn_hiInstEnv.hiInstEnv.p_hiInstruction.dyn_hiInstruction.hiInstruction.p_hiInteractiveEval.dyn_hiInteractiveEval.hiInteractiveEval.p_hiInteractiveEvalTypes.dyn_hiInteractiveEvalTypes.hiInteractiveEvalTypes.p_hiJson.dyn_hiJson.hiJson.p_hiKnownUniques.dyn_hiKnownUniques.hiKnownUniques.p_hiLexeme.dyn_hiLexeme.hiLexeme.p_hiLexer.dyn_hiLexer.hiLexer.p_hiLiberateCase.dyn_hiLiberateCase.hiLiberateCase.p_hiLinker.dyn_hiLinker.hiLinker.p_hiLinkerTypes.dyn_hiLinkerTypes.hiLinkerTypes.p_hiListSetOps.dyn_hiListSetOps.hiListSetOps.p_hiLiteral.dyn_hiLiteral.hiLiteral.p_hiLlvmLlvm.dyn_hiLlvm.hiLlvm.p_hiAbsSyn.dyn_hiAbsSyn.hiAbsSyn.p_hiMetaData.dyn_hiMetaData.hiMetaData.p_hiPpLlvm.dyn_hiPpLlvm.hiPpLlvm.p_hiTypes.dyn_hiTypes.hiTypes.p_hiLlvmCodeGenLlvmCodeGen.dyn_hiLlvmCodeGen.hiLlvmCodeGen.p_hiBase.dyn_hiBase.hiBase.p_hiCodeGen.dyn_hiCodeGen.hiCodeGen.p_hiData.dyn_hiData.hiData.p_hiPpr.dyn_hiPpr.hiPpr.p_hiRegs.dyn_hiRegs.hiRegs.p_hiLlvmMangler.dyn_hiLlvmMangler.hiLlvmMangler.p_hiLoadIface.dyn_hiLoadIface.hiLoadIface.p_hiMatch.dyn_hiMatch.hiMatch.p_hiMatchCon.dyn_hiMatchCon.hiMatchCon.p_hiMatchLit.dyn_hiMatchLit.hiMatchLit.p_hiMaybes.dyn_hiMaybes.hiMaybes.p_hiMkCore.dyn_hiMkCore.hiMkCore.p_hiMkGraph.dyn_hiMkGraph.hiMkGraph.p_hiMkId.dyn_hiMkId.hiMkId.p_hiMkIface.dyn_hiMkIface.hiMkIface.p_hiModule.dyn_hiModule.hiModule.p_hiMonadUtils.dyn_hiMonadUtils.hiMonadUtils.p_hiNCGMonad.dyn_hiNCGMonad.hiNCGMonad.p_hiName.dyn_hiName.hiName.p_hiNameCache.dyn_hiNameCache.hiNameCache.p_hiNameEnv.dyn_hiNameEnv.hiNameEnv.p_hiNameSet.dyn_hiNameSet.hiNameSet.p_hiNameShape.dyn_hiNameShape.hiNameShape.p_hiOccName.dyn_hiOccName.hiOccName.p_hiOccurAnal.dyn_hiOccurAnal.hiOccurAnal.p_hiOptCoercion.dyn_hiOptCoercion.hiOptCoercion.p_hiOrdList.dyn_hiOrdList.hiOrdList.p_hiOutputable.dyn_hiOutputable.hiOutputable.p_hiPIC.dyn_hiPIC.hiPIC.p_hiPPCCodeGen.dyn_hiCodeGen.hiCodeGen.p_hiCond.dyn_hiCond.hiCond.p_hiInstr.dyn_hiInstr.hiInstr.p_hiPpr.dyn_hiPpr.hiPpr.p_hiRegInfo.dyn_hiRegInfo.hiRegInfo.p_hiRegs.dyn_hiRegs.hiRegs.p_hiPackageConfig.dyn_hiPackageConfig.hiPackageConfig.p_hiPackages.dyn_hiPackages.hiPackages.p_hiPair.dyn_hiPair.hiPair.p_hiPanic.dyn_hiPanic.hiPanic.p_hiParser.dyn_hiParser.hiParser.p_hiPatSyn.dyn_hiPatSyn.hiPatSyn.p_hiPipelineMonad.dyn_hiPipelineMonad.hiPipelineMonad.p_hiPlainPanic.dyn_hiPlainPanic.hiPlainPanic.p_hiPlatformConstants.dyn_hiPlatformConstants.hiPlatformConstants.p_hiPlugins.dyn_hiPlugins.hiPlugins.p_hiPprBase.dyn_hiPprBase.hiPprBase.p_hiPprC.dyn_hiPprC.hiPprC.p_hiPprCmm.dyn_hiPprCmm.hiPprCmm.p_hiPprCmmDecl.dyn_hiPprCmmDecl.hiPprCmmDecl.p_hiPprCmmExpr.dyn_hiPprCmmExpr.hiPprCmmExpr.p_hiPprColour.dyn_hiPprColour.hiPprColour.p_hiPprCore.dyn_hiPprCore.hiPprCore.p_hiPprTyThing.dyn_hiPprTyThing.hiPprTyThing.p_hiPredicate.dyn_hiPredicate.hiPredicate.p_hiPrelInfo.dyn_hiPrelInfo.hiPrelInfo.p_hiPrelNames.dyn_hiPrelNames.hiPrelNames.p_hiPrelRules.dyn_hiPrelRules.hiPrelRules.p_hiPretty.dyn_hiPretty.hiPretty.p_hiPrimOp.dyn_hiPrimOp.hiPrimOp.p_hiProfInit.dyn_hiProfInit.hiProfInit.p_hiRdrHsSyn.dyn_hiRdrHsSyn.hiRdrHsSyn.p_hiRdrName.dyn_hiRdrName.hiRdrName.p_hiReg.dyn_hiReg.hiReg.p_hiRegAllocGraphArchBase.dyn_hiArchBase.hiArchBase.p_hiArchX86.dyn_hiArchX86.hiArchX86.p_hiCoalesce.dyn_hiCoalesce.hiCoalesce.p_hiMain.dyn_hiMain.hiMain.p_hiSpill.dyn_hiSpill.hiSpill.p_hiSpillClean.dyn_hiSpillClean.hiSpillClean.p_hiSpillCost.dyn_hiSpillCost.hiSpillCost.p_hiStats.dyn_hiStats.hiStats.p_hiTrivColorable.dyn_hiTrivColorable.hiTrivColorable.p_hiLinearBase.dyn_hiBase.hiBase.p_hiFreeRegs.dyn_hiFreeRegs.hiFreeRegs.p_hiJoinToTargets.dyn_hiJoinToTargets.hiJoinToTargets.p_hiMain.dyn_hiMain.hiMain.p_hiPPCFreeRegs.dyn_hiFreeRegs.hiFreeRegs.p_hiSPARCFreeRegs.dyn_hiFreeRegs.hiFreeRegs.p_hiStackMap.dyn_hiStackMap.hiStackMap.p_hiState.dyn_hiState.hiState.p_hiStats.dyn_hiStats.hiStats.p_hiX86FreeRegs.dyn_hiFreeRegs.hiFreeRegs.p_hiX86_64FreeRegs.dyn_hiFreeRegs.hiFreeRegs.p_hiLiveness.dyn_hiLiveness.hiLiveness.p_hiRegClass.dyn_hiRegClass.hiRegClass.p_hiRepType.dyn_hiRepType.hiRepType.p_hiRnBinds.dyn_hiRnBinds.hiRnBinds.p_hiRnEnv.dyn_hiRnEnv.hiRnEnv.p_hiRnExpr.dyn_hiRnExpr.hiRnExpr.p_hiRnFixity.dyn_hiRnFixity.hiRnFixity.p_hiRnHsDoc.dyn_hiRnHsDoc.hiRnHsDoc.p_hiRnModIface.dyn_hiRnModIface.hiRnModIface.p_hiRnNames.dyn_hiRnNames.hiRnNames.p_hiRnPat.dyn_hiRnPat.hiRnPat.p_hiRnSource.dyn_hiRnSource.hiRnSource.p_hiRnSplice.dyn_hiRnSplice.hiRnSplice.p_hiRnTypes.dyn_hiRnTypes.hiRnTypes.p_hiRnUnbound.dyn_hiRnUnbound.hiRnUnbound.p_hiRnUtils.dyn_hiRnUtils.hiRnUtils.p_hiRtClosureInspect.dyn_hiRtClosureInspect.hiRtClosureInspect.p_hiRules.dyn_hiRules.hiRules.p_hiSAT.dyn_hiSAT.hiSAT.p_hiSMRep.dyn_hiSMRep.hiSMRep.p_hiSPARCAddrMode.dyn_hiAddrMode.hiAddrMode.p_hiBase.dyn_hiBase.hiBase.p_hiCodeGenCodeGen.dyn_hiCodeGen.hiCodeGen.p_hiAmode.dyn_hiAmode.hiAmode.p_hiBase.dyn_hiBase.hiBase.p_hiCondCode.dyn_hiCondCode.hiCondCode.p_hiExpand.dyn_hiExpand.hiExpand.p_hiGen32.dyn_hiGen32.hiGen32.p_hiGen64.dyn_hiGen64.hiGen64.p_hiSanity.dyn_hiSanity.hiSanity.p_hiCond.dyn_hiCond.hiCond.p_hiImm.dyn_hiImm.hiImm.p_hiInstr.dyn_hiInstr.hiInstr.p_hiPpr.dyn_hiPpr.hiPpr.p_hiRegs.dyn_hiRegs.hiRegs.p_hiShortcutJump.dyn_hiShortcutJump.hiShortcutJump.p_hiStack.dyn_hiStack.hiStack.p_hiSetLevels.dyn_hiSetLevels.hiSetLevels.p_hiSettings.dyn_hiSettings.hiSettings.p_hiSimplCore.dyn_hiSimplCore.hiSimplCore.p_hiSimplEnv.dyn_hiSimplEnv.hiSimplEnv.p_hiSimplMonad.dyn_hiSimplMonad.hiSimplMonad.p_hiSimplStg.dyn_hiSimplStg.hiSimplStg.p_hiSimplUtils.dyn_hiSimplUtils.hiSimplUtils.p_hiSimplify.dyn_hiSimplify.hiSimplify.p_hiSpecConstr.dyn_hiSpecConstr.hiSpecConstr.p_hiSpecialise.dyn_hiSpecialise.hiSpecialise.p_hiSrcLoc.dyn_hiSrcLoc.hiSrcLoc.p_hiState.dyn_hiState.hiState.p_hiStaticPtrTable.dyn_hiStaticPtrTable.hiStaticPtrTable.p_hiStgCse.dyn_hiStgCse.hiStgCse.p_hiStgFVs.dyn_hiStgFVs.hiStgFVs.p_hiStgLiftLamsStgLiftLams.dyn_hiStgLiftLams.hiStgLiftLams.p_hiAnalysis.dyn_hiAnalysis.hiAnalysis.p_hiLiftM.dyn_hiLiftM.hiLiftM.p_hiTransformation.dyn_hiTransformation.hiTransformation.p_hiStgLint.dyn_hiStgLint.hiStgLint.p_hiStgStats.dyn_hiStgStats.hiStgStats.p_hiStgSubst.dyn_hiStgSubst.hiStgSubst.p_hiStgSyn.dyn_hiStgSyn.hiStgSyn.p_hiStream.dyn_hiStream.hiStream.p_hiStringBuffer.dyn_hiStringBuffer.hiStringBuffer.p_hiSysToolsSysTools.dyn_hiSysTools.hiSysTools.p_hiBaseDir.dyn_hiBaseDir.hiBaseDir.p_hiExtraObj.dyn_hiExtraObj.hiExtraObj.p_hiInfo.dyn_hiInfo.hiInfo.p_hiProcess.dyn_hiProcess.hiProcess.p_hiSettings.dyn_hiSettings.hiSettings.p_hiTasks.dyn_hiTasks.hiTasks.p_hiTerminal.dyn_hiTerminal.hiTerminal.p_hiTHNames.dyn_hiTHNames.hiTHNames.p_hiTargetReg.dyn_hiTargetReg.hiTargetReg.p_hiTcAnnotations.dyn_hiTcAnnotations.hiTcAnnotations.p_hiTcArrows.dyn_hiTcArrows.hiTcArrows.p_hiTcBackpack.dyn_hiTcBackpack.hiTcBackpack.p_hiTcBinds.dyn_hiTcBinds.hiTcBinds.p_hiTcCanonical.dyn_hiTcCanonical.hiTcCanonical.p_hiTcClassDcl.dyn_hiTcClassDcl.hiTcClassDcl.p_hiTcDefaults.dyn_hiTcDefaults.hiTcDefaults.p_hiTcDeriv.dyn_hiTcDeriv.hiTcDeriv.p_hiTcDerivInfer.dyn_hiTcDerivInfer.hiTcDerivInfer.p_hiTcDerivUtils.dyn_hiTcDerivUtils.hiTcDerivUtils.p_hiTcEnv.dyn_hiTcEnv.hiTcEnv.p_hiTcErrors.dyn_hiTcErrors.hiTcErrors.p_hiTcEvTerm.dyn_hiTcEvTerm.hiTcEvTerm.p_hiTcEvidence.dyn_hiTcEvidence.hiTcEvidence.p_hiTcExpr.dyn_hiTcExpr.hiTcExpr.p_hiTcFlatten.dyn_hiTcFlatten.hiTcFlatten.p_hiTcForeign.dyn_hiTcForeign.hiTcForeign.p_hiTcGenDeriv.dyn_hiTcGenDeriv.hiTcGenDeriv.p_hiTcGenFunctor.dyn_hiTcGenFunctor.hiTcGenFunctor.p_hiTcGenGenerics.dyn_hiTcGenGenerics.hiTcGenGenerics.p_hiTcHoleErrors.dyn_hiTcHoleErrors.hiTcHoleErrors.p_hiTcHoleFitTypes.dyn_hiTcHoleFitTypes.hiTcHoleFitTypes.p_hiTcHsSyn.dyn_hiTcHsSyn.hiTcHsSyn.p_hiTcHsType.dyn_hiTcHsType.hiTcHsType.p_hiTcIface.dyn_hiTcIface.hiTcIface.p_hiTcInstDcls.dyn_hiTcInstDcls.hiTcInstDcls.p_hiTcInteract.dyn_hiTcInteract.hiTcInteract.p_hiTcMType.dyn_hiTcMType.hiTcMType.p_hiTcMatches.dyn_hiTcMatches.hiTcMatches.p_hiTcOrigin.dyn_hiTcOrigin.hiTcOrigin.p_hiTcPat.dyn_hiTcPat.hiTcPat.p_hiTcPatSyn.dyn_hiTcPatSyn.hiTcPatSyn.p_hiTcPluginM.dyn_hiTcPluginM.hiTcPluginM.p_hiTcRnDriver.dyn_hiTcRnDriver.hiTcRnDriver.p_hiTcRnExports.dyn_hiTcRnExports.hiTcRnExports.p_hiTcRnMonad.dyn_hiTcRnMonad.hiTcRnMonad.p_hiTcRnTypes.dyn_hiTcRnTypes.hiTcRnTypes.p_hiTcRules.dyn_hiTcRules.hiTcRules.p_hiTcSMonad.dyn_hiTcSMonad.hiTcSMonad.p_hiTcSigs.dyn_hiTcSigs.hiTcSigs.p_hiTcSimplify.dyn_hiTcSimplify.hiTcSimplify.p_hiTcSplice.dyn_hiTcSplice.hiTcSplice.p_hiTcTyClsDecls.dyn_hiTcTyClsDecls.hiTcTyClsDecls.p_hiTcTyDecls.dyn_hiTcTyDecls.hiTcTyDecls.p_hiTcType.dyn_hiTcType.hiTcType.p_hiTcTypeNats.dyn_hiTcTypeNats.hiTcTypeNats.p_hiTcTypeable.dyn_hiTcTypeable.hiTcTypeable.p_hiTcUnify.dyn_hiTcUnify.hiTcUnify.p_hiTcValidity.dyn_hiTcValidity.hiTcValidity.p_hiTidyPgm.dyn_hiTidyPgm.hiTidyPgm.p_hiToIface.dyn_hiToIface.hiToIface.p_hiToolSettings.dyn_hiToolSettings.hiToolSettings.p_hiTrieMap.dyn_hiTrieMap.hiTrieMap.p_hiTyCoFVs.dyn_hiTyCoFVs.hiTyCoFVs.p_hiTyCoPpr.dyn_hiTyCoPpr.hiTyCoPpr.p_hiTyCoRep.dyn_hiTyCoRep.hiTyCoRep.p_hiTyCoSubst.dyn_hiTyCoSubst.hiTyCoSubst.p_hiTyCoTidy.dyn_hiTyCoTidy.hiTyCoTidy.p_hiTyCon.dyn_hiTyCon.hiTyCon.p_hiType.dyn_hiType.hiType.p_hiTysPrim.dyn_hiTysPrim.hiTysPrim.p_hiTysWiredIn.dyn_hiTysWiredIn.hiTysWiredIn.p_hiUnVarGraph.dyn_hiUnVarGraph.hiUnVarGraph.p_hiUnariseStg.dyn_hiUnariseStg.hiUnariseStg.p_hiUnify.dyn_hiUnify.hiUnify.p_hiUniqDFM.dyn_hiUniqDFM.hiUniqDFM.p_hiUniqDSet.dyn_hiUniqDSet.hiUniqDSet.p_hiUniqFM.dyn_hiUniqFM.hiUniqFM.p_hiUniqMap.dyn_hiUniqMap.hiUniqMap.p_hiUniqSet.dyn_hiUniqSet.hiUniqSet.p_hiUniqSupply.dyn_hiUniqSupply.hiUniqSupply.p_hiUnique.dyn_hiUnique.hiUnique.p_hiUtil.dyn_hiUtil.hiUtil.p_hiVar.dyn_hiVar.hiVar.p_hiVarEnv.dyn_hiVarEnv.hiVarEnv.p_hiVarSet.dyn_hiVarSet.hiVarSet.p_hiWorkWrap.dyn_hiWorkWrap.hiWorkWrap.p_hiWwLib.dyn_hiWwLib.hiWwLib.p_hiX86CodeGen.dyn_hiCodeGen.hiCodeGen.p_hiCond.dyn_hiCond.hiCond.p_hiInstr.dyn_hiInstr.hiInstr.p_hiPpr.dyn_hiPpr.hiPpr.p_hiRegInfo.dyn_hiRegInfo.hiRegInfo.p_hiRegs.dyn_hiRegs.hiRegs.p_hiincludeHsVersions.hlibHSghc-8.10.7.alibHSghc-8.10.7_p.aghc-8.10.7.confghc-8.10.7Annotations.htmlApiAnnotation.htmlAr.htmlAsmCodeGen.htmlAsmUtils.htmlAvail.htmlBag.htmlBasicTypes.htmlBinFingerprint.htmlBinIface.htmlBinary.htmlBitmap.htmlBkpSyn.htmlBlockId.htmlBlockLayout.htmlBooleanFormula.htmlBufWrite.htmlBuildTyCl.htmlByteCodeAsm.htmlByteCodeGen.htmlByteCodeInstr.htmlByteCodeItbls.htmlByteCodeLink.htmlByteCodeTypes.htmlCFG.htmlCLabel.htmlCPrim.htmlCSE.htmlCallArity.htmlClass.htmlCliOption.htmlClsInst.htmlCmdLineParser.htmlCmm.htmlCmmBuildInfoTables.htmlCmmCallConv.htmlCmmCommonBlockElim.htmlCmmContFlowOpt.htmlCmmExpr.htmlCmmImplementSwitchPlans.htmlCmmInfo.htmlCmmLayoutStack.htmlCmmLex.htmlCmmLint.htmlCmmLive.htmlCmmMachOp.htmlCmmMonad.htmlCmmNode.htmlCmmOpt.htmlCmmParse.htmlCmmPipeline.htmlCmmProcPoint.htmlCmmSink.htmlCmmSwitch.htmlCmmType.htmlCmmUtils.htmlCoAxiom.htmlCodeOutput.htmlCoercion.htmlConLike.htmlConfig.htmlConstants.htmlConstraint.htmlCoreArity.htmlCoreFVs.htmlCoreLint.htmlCoreMap.htmlCoreMonad.htmlCoreOpt.htmlCorePrep.htmlCoreSeq.htmlCoreStats.htmlCoreSubst.htmlCoreSyn.htmlCoreTidy.htmlCoreToStg.htmlCoreUnfold.htmlCoreUtils.htmlCostCentre.htmlCostCentreState.htmlCoverage.htmlCtype.htmlDataCon.htmlDebug.htmlDebugger.htmlDemand.htmlDesugar.htmlDigraph.htmlDmdAnal.htmlDominators.htmlDriverBkp.htmlDriverMkDepend.htmlDriverPhases.htmlDriverPipeline.htmlDsArrows.htmlDsBinds.htmlDsCCall.htmlDsExpr.htmlDsForeign.htmlDsGRHSs.htmlDsListComp.htmlDsMeta.htmlDsMonad.htmlDsUsage.htmlDsUtils.htmlDwarf-Constants.htmlDwarf-Types.htmlDwarf.htmlDynFlags.htmlDynamicLoading.htmlElf.htmlEncoding.htmlEnumSet.htmlErrUtils.htmlException.htmlExitify.htmlExtractDocs.htmlFV.htmlFamInst.htmlFamInstEnv.htmlFastFunctions.htmlFastMutInt.htmlFastString.htmlFastStringEnv.htmlFieldLabel.htmlFileCleanup.htmlFileSettings.htmlFinder.htmlFingerprint.htmlFiniteMap.htmlFlagChecker.htmlFloatIn.htmlFloatOut.htmlForeignCall.htmlFormat.htmlFunDeps.htmlGHC-Hs-Binds.htmlGHC-Hs-Decls.htmlGHC-Hs-Doc.htmlGHC-Hs-Dump.htmlGHC-Hs-Expr.htmlGHC-Hs-Extension.htmlGHC-Hs-ImpExp.htmlGHC-Hs-Instances.htmlGHC-Hs-Lit.htmlGHC-Hs-Pat.htmlGHC-Hs-PlaceHolder.htmlGHC-Hs-Types.htmlGHC-Hs-Utils.htmlGHC-Hs.htmlGHC-HsToCore-PmCheck-Oracle.htmlGHC-HsToCore-PmCheck-Ppr.htmlGHC-HsToCore-PmCheck-Types.htmlGHC-HsToCore-PmCheck.htmlGHC-Platform-AArch64.htmlGHC-Platform-ARM.htmlGHC-Platform-NoRegs.htmlGHC-Platform-PPC.htmlGHC-Platform-Regs.htmlGHC-Platform-S390X.htmlGHC-Platform-SPARC.htmlGHC-Platform-X86.htmlGHC-Platform-X86_64.htmlGHC-StgToCmm-ArgRep.htmlGHC-StgToCmm-Bind.htmlGHC-StgToCmm-CgUtils.htmlGHC-StgToCmm-Closure.htmlGHC-StgToCmm-DataCon.htmlGHC-StgToCmm-Env.htmlGHC-StgToCmm-Expr.htmlGHC-StgToCmm-ExtCode.htmlGHC-StgToCmm-Foreign.htmlGHC-StgToCmm-Heap.htmlGHC-StgToCmm-Hpc.htmlGHC-StgToCmm-Layout.htmlGHC-StgToCmm-Monad.htmlGHC-StgToCmm-Prim.htmlGHC-StgToCmm-Prof.htmlGHC-StgToCmm-Ticky.htmlGHC-StgToCmm-Utils.htmlGHC-StgToCmm.htmlGHC-ThToHs.htmlGHC.htmlGHCi.htmlGhcMake.htmlGhcMonad.htmlGhcNameVersion.htmlGhcPlugins.htmlGhcPrelude.htmlGraphBase.htmlGraphColor.htmlGraphOps.htmlGraphPpr.htmlHaddockUtils.htmlHeaderInfo.htmlHieAst.htmlHieBin.htmlHieDebug.htmlHieTypes.htmlHieUtils.htmlHooks.htmlHoopl-Block.htmlHoopl-Collections.htmlHoopl-Dataflow.htmlHoopl-Graph.htmlHoopl-Label.htmlHscMain.htmlHscStats.htmlHscTypes.htmlIOEnv.htmlId.htmlIdInfo.htmlIfaceEnv.htmlIfaceSyn.htmlIfaceType.htmlInst.htmlInstEnv.htmlInstruction.htmlInteractiveEval.htmlInteractiveEvalTypes.htmlJson.htmlKnownUniques.htmlLexeme.htmlLexer.htmlLiberateCase.htmlLinker.htmlLinkerTypes.htmlListSetOps.htmlLiteral.htmlLlvm-AbsSyn.htmlLlvm-MetaData.htmlLlvm-PpLlvm.htmlLlvm-Types.htmlLlvm.htmlLlvmCodeGen-Base.htmlLlvmCodeGen-CodeGen.htmlLlvmCodeGen-Data.htmlLlvmCodeGen-Ppr.htmlLlvmCodeGen-Regs.htmlLlvmCodeGen.htmlLlvmMangler.htmlLoadIface.htmlMatch.htmlMatchCon.htmlMatchLit.htmlMaybes.htmlMkCore.htmlMkGraph.htmlMkId.htmlMkIface.htmlModule.htmlMonadUtils.htmlNCGMonad.htmlName.htmlNameCache.htmlNameEnv.htmlNameSet.htmlNameShape.htmlOccName.htmlOccurAnal.htmlOptCoercion.htmlOrdList.htmlOutputable.htmlPIC.htmlPPC-CodeGen.htmlPPC-Cond.htmlPPC-Instr.htmlPPC-Ppr.htmlPPC-RegInfo.htmlPPC-Regs.htmlPackageConfig.htmlPackages.htmlPair.htmlPanic.htmlParser.htmlPatSyn.htmlPipelineMonad.htmlPlainPanic.htmlPlatformConstants.htmlPlugins.htmlPprBase.htmlPprC.htmlPprCmm.htmlPprCmmDecl.htmlPprCmmExpr.htmlPprColour.htmlPprCore.htmlPprTyThing.htmlPredicate.htmlPrelInfo.htmlPrelNames.htmlPrelRules.htmlPretty.htmlPrimOp.htmlProfInit.htmlRdrHsSyn.htmlRdrName.htmlReg.htmlRegAlloc-Graph-ArchBase.htmlRegAlloc-Graph-ArchX86.htmlRegAlloc-Graph-Coalesce.htmlRegAlloc-Graph-Main.htmlRegAlloc-Graph-Spill.htmlRegAlloc-Graph-SpillClean.htmlRegAlloc-Graph-SpillCost.htmlRegAlloc-Graph-Stats.htmlRegAlloc-Graph-TrivColorable.htmlRegAlloc-Linear-Base.htmlRegAlloc-Linear-FreeRegs.htmlRegAlloc-Linear-JoinToTargets.htmlRegAlloc-Linear-Main.htmlRegAlloc-Linear-PPC-FreeRegs.htmlRegAlloc-Linear-SPARC-FreeRegs.htmlRegAlloc-Linear-StackMap.htmlRegAlloc-Linear-State.htmlRegAlloc-Linear-Stats.htmlRegAlloc-Linear-X86-FreeRegs.htmlRegAlloc-Linear-X86_64-FreeRegs.htmlRegAlloc-Liveness.htmlRegClass.htmlRepType.htmlRnBinds.htmlRnEnv.htmlRnExpr.htmlRnFixity.htmlRnHsDoc.htmlRnModIface.htmlRnNames.htmlRnPat.htmlRnSource.htmlRnSplice.htmlRnTypes.htmlRnUnbound.htmlRnUtils.htmlRtClosureInspect.htmlRules.htmlSAT.htmlSMRep.htmlSPARC-AddrMode.htmlSPARC-Base.htmlSPARC-CodeGen-Amode.htmlSPARC-CodeGen-Base.htmlSPARC-CodeGen-CondCode.htmlSPARC-CodeGen-Expand.htmlSPARC-CodeGen-Gen32.htmlSPARC-CodeGen-Gen64.htmlSPARC-CodeGen-Sanity.htmlSPARC-CodeGen.htmlSPARC-Cond.htmlSPARC-Imm.htmlSPARC-Instr.htmlSPARC-Ppr.htmlSPARC-Regs.htmlSPARC-ShortcutJump.htmlSPARC-Stack.htmlSetLevels.htmlSettings.htmlSimplCore.htmlSimplEnv.htmlSimplMonad.htmlSimplStg.htmlSimplUtils.htmlSimplify.htmlSpecConstr.htmlSpecialise.htmlSrcLoc.htmlState.htmlStaticPtrTable.htmlStgCse.htmlStgFVs.htmlStgLiftLams-Analysis.htmlStgLiftLams-LiftM.htmlStgLiftLams-Transformation.htmlStgLiftLams.htmlStgLint.htmlStgStats.htmlStgSubst.htmlStgSyn.htmlStream.htmlStringBuffer.htmlSysTools-BaseDir.htmlSysTools-ExtraObj.htmlSysTools-Info.htmlSysTools-Process.htmlSysTools-Settings.htmlSysTools-Tasks.htmlSysTools-Terminal.htmlSysTools.htmlTHNames.htmlTargetReg.htmlTcAnnotations.htmlTcArrows.htmlTcBackpack.htmlTcBinds.htmlTcCanonical.htmlTcClassDcl.htmlTcDefaults.htmlTcDeriv.htmlTcDerivInfer.htmlTcDerivUtils.htmlTcEnv.htmlTcErrors.htmlTcEvTerm.htmlTcEvidence.htmlTcExpr.htmlTcFlatten.htmlTcForeign.htmlTcGenDeriv.htmlTcGenFunctor.htmlTcGenGenerics.htmlTcHoleErrors.htmlTcHoleFitTypes.htmlTcHsSyn.htmlTcHsType.htmlTcIface.htmlTcInstDcls.htmlTcInteract.htmlTcMType.htmlTcMatches.htmlTcOrigin.htmlTcPat.htmlTcPatSyn.htmlTcPluginM.htmlTcRnDriver.htmlTcRnExports.htmlTcRnMonad.htmlTcRnTypes.htmlTcRules.htmlTcSMonad.htmlTcSigs.htmlTcSimplify.htmlTcSplice.htmlTcTyClsDecls.htmlTcTyDecls.htmlTcType.htmlTcTypeNats.htmlTcTypeable.htmlTcUnify.htmlTcValidity.htmlTidyPgm.htmlToIface.htmlToolSettings.htmlTrieMap.htmlTyCoFVs.htmlTyCoPpr.htmlTyCoRep.htmlTyCoSubst.htmlTyCoTidy.htmlTyCon.htmlType.htmlTysPrim.htmlTysWiredIn.htmlUnVarGraph.htmlUnariseStg.htmlUnify.htmlUniqDFM.htmlUniqDSet.htmlUniqFM.htmlUniqMap.htmlUniqSet.htmlUniqSupply.htmlUnique.htmlUtil.htmlVar.htmlVarEnv.htmlVarSet.htmlWorkWrap.htmlWwLib.htmlX86-CodeGen.htmlX86-Cond.htmlX86-Instr.htmlX86-Ppr.htmlX86-RegInfo.htmlX86-Regs.htmldoc-index-124.htmldoc-index-33.htmldoc-index-36.htmldoc-index-38.htmldoc-index-42.htmldoc-index-43.htmldoc-index-45.htmldoc-index-46.htmldoc-index-47.htmldoc-index-60.htmldoc-index-61.htmldoc-index-62.htmldoc-index-94.htmldoc-index-A.htmldoc-index-All.htmldoc-index-B.htmldoc-index-C.htmldoc-index-D.htmldoc-index-E.htmldoc-index-F.htmldoc-index-G.htmldoc-index-H.htmldoc-index-I.htmldoc-index-J.htmldoc-index-K.htmldoc-index-L.htmldoc-index-M.htmldoc-index-N.htmldoc-index-O.htmldoc-index-P.htmldoc-index-Q.htmldoc-index-R.htmldoc-index-S.htmldoc-index-T.htmldoc-index-U.htmldoc-index-V.htmldoc-index-W.htmldoc-index-X.htmldoc-index-Y.htmldoc-index-Z.htmldoc-index.htmldoc-index.jsonghc.haddockghc.txthaddock-bundle.min.jsindex.htmllinuwial.cssmeta.jsonquick-jump.cssquick-jump.min.jssynopsis.png/usr/lib64/ghc-8.10.7/ghc-8.10.7//usr/lib64/ghc-8.10.7/ghc-8.10.7/Dwarf//usr/lib64/ghc-8.10.7/ghc-8.10.7/GHC//usr/lib64/ghc-8.10.7/ghc-8.10.7/GHC/Hs//usr/lib64/ghc-8.10.7/ghc-8.10.7/GHC/HsToCore//usr/lib64/ghc-8.10.7/ghc-8.10.7/GHC/HsToCore/PmCheck//usr/lib64/ghc-8.10.7/ghc-8.10.7/GHC/Platform//usr/lib64/ghc-8.10.7/ghc-8.10.7/GHC/StgToCmm//usr/lib64/ghc-8.10.7/ghc-8.10.7/Hoopl//usr/lib64/ghc-8.10.7/ghc-8.10.7/Llvm//usr/lib64/ghc-8.10.7/ghc-8.10.7/LlvmCodeGen//usr/lib64/ghc-8.10.7/ghc-8.10.7/PPC//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc/Graph//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc/Linear//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc/Linear/PPC//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc/Linear/SPARC//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc/Linear/X86//usr/lib64/ghc-8.10.7/ghc-8.10.7/RegAlloc/Linear/X86_64//usr/lib64/ghc-8.10.7/ghc-8.10.7/SPARC//usr/lib64/ghc-8.10.7/ghc-8.10.7/SPARC/CodeGen//usr/lib64/ghc-8.10.7/ghc-8.10.7/StgLiftLams//usr/lib64/ghc-8.10.7/ghc-8.10.7/SysTools//usr/lib64/ghc-8.10.7/ghc-8.10.7/X86//usr/lib64/ghc-8.10.7/ghc-8.10.7/include//usr/lib64/ghc-8.10.7/package.conf.d//usr/share/doc/ghc-8.10.7/html/libraries//usr/share/doc/ghc-8.10.7/html/libraries/ghc-8.10.7/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:29433/SUSE_SLE-15-SP5_Update/e1f5fca9735dfc7fd9c5836ec7b2940a-ghc.SUSE_SLE-15-SP5_Updatedrpmxz5s390x-suse-linux  directoryC source, ASCII textcurrent ar archiveASCII textHTML document, ASCII text, with very long linesHTML document, ASCII text, with very long lines, with no line terminatorsUTF-8 Unicode text, with very long linesUTF-8 Unicode textASCII text, with no line terminatorsPNG image data, 128 x 104, 8-bit/color RGBA, non-interlacedPRRRRR R R R R RRRRRRRRRRRtGF@FGlǹutf-88cc57264b95c2e079f49ec25c753ba12e11d3c92cf502417196acad944777ae3?7zXZ !t/;(5]"k%qZߍi -}Pzw" ~硩ëd-P]r [ATI0)PL{zTXf>70 /[)W+q>yJ blTu&T[އBZg''tnp1GI8hii ݺ T`;.kSD_Ŋ>+QܼAB:yVUrEԫ&wɝ& }I?MSecnn"┣J"[uAn]SpbDo34 Ccɱ}7AudBI9H:Rpzǚl"ڄ粧-ɞ5B# UNjmDzaL;P|9fuyೄ_D y &v4B`YpCbo$ )dwS,X927t*q;\M9j,Iq"g{YmAzI!Q"3> %p%ڣ qGwhfuߺ2eUc+! v2e txKg0Tqw%׹W݁VVv8_BHF"YL7z% 2`̲rD5TR²bnpN! ͿOq}pY%tĚ/n@ '0eػC@C=5ufalTJSVBGvǚoXM,|ӨJѨ1 ܕvK7c,vhPKagA+fDM -Dj(OԬY {ruFo8ڣX(3޽sYy58d ,k1/D ^ϊ!K*lX@ kPkI%ÆN+3(}X>@,~CKe,爵X1 :" `ⱳ7$yuSZ:|r>e3QYdUGuu{xsx=`ŘF@\il0A<A/ L ())SdhڡDFEPlNpq=>|n \6*+1A \Ɉ.2ي.O߅ﴟ0?Ub AG=8:cNqynr5%)$o!mgslʪn @ DhQ"WA*r*cSd'jxU\_ŻrGxc <[ei8y^FYF-9tw?/_D~``ʯB}0jlN/.}J.4)* Z%ڳ0y--\KI|0Z$6Em bo܇MrJBre-U7@auDe*h6Kĸ12]_uU;4|@zbzͽVVIꡦt'fAx~G?B .+"74c R{lT̻@!pA`nV (a^!߆3b +2U%XF^GH9 Z9ҫ_3B:%N?szH,}COz&KtHDaj".Ю[2W 0ߥ= + m^[4DI$Ua!X+5kd R^?9u+׈j{YXŗ,+}Vߺm!pN%k.)k!g=vwFK5!Bfw&>k "%$ ¹ł=IgUZ.eE3(yd/58>@ 'IWJFTW*Y xKWh()aKK *D&~TWrC##?uB!zFD6E+H}b myELpH|n"T!M7y MrN.݌mo>P˫M([rY2yv$سkކHckm[qPg%eRa dGnX/ʔCͭH-O!7A̻| y{0.!nX:y7{dmZ~wVx$/eBdѠԞK$KE7}0@ZgֺݎnR 0W42{kk 8Y%Uz<.a%Dۿ@Պ|V kef--#e' TgWbO]VQ 1.-;[8-AդjHUz6;욭Y$/-_߁Y`Vˡq@b~Dc -yج&K@H<=;w,|M8S}3`0Y!26OwHf94rHJ0՞~t6ѺvL؋0q¬- Ϡ/Vu~^ݛ K2äŕGsk]uHyZjYM>=j$Mz-Bs}R~~,!f`Q;0D t2EH 6Nٛ:Zcӵ- 蠎`*ۚޔ.~@ ;= H~+u۪^d0q5u"q:V&Fdվt>L4v>C+/`>[}=U: CߦV9fVvdg3"&\!*  U$}H6W4B1L(ǔ?2!$O1O0h!'10 G[\(zm݆{Z5\{z TЍ`x4az檺)Ud@̘dǍ'^=k MM"ˮ+ZXaI)s7TǸ>_mWzی((PXz֕6h}; 9sn31ķJdi4sGz[09yY=bpa+k̞q,w:F>v"IRhƥT2לAcq )N:,gF\<(hHn3K)޷0mbIVvShf {uz-S1[ $W:,2%~qS9SSa8#bBs|>U *#sɦlӹ?+jy>ql>J41`nI_[.XNUU\  2g"k>aGD8ߓcͧ.9'Ι}n(W܊}7m;<FȪp#;"Ψk){Q8+ǹր_Fi.|]:$*>}Mr&s}{%oEXA 9]a;2Oק\w^d TFWZ[0k>ݣ`l>q|gx9r^&g!@CH6B9AgYۚ YdLRqFϭb5=~Qw_D/wUUaV^䌯I@嵖ˮz}[7W[ }XŤC*G{w1 sˍvfX"\֙أO͞h^6 2bVQ9 `"~<DɊ-\^}AP=;/n{?ZpY)MzI3wP+e Ϭ+iq<#Si,*pZz1SS@m><9JUm<|5wҒpdVLpUԷ}l){|6B$oױ W̚{\kt'o l O_p^s/Hߤ'Hڜb=ZXt;MSV: r߹C˘ӶzNgo+}Ɩ@ਏz >)Ue1ԧ]#&W/.䎥F3y&-Ch;N ջmXѻZ0#j3Ffyjg#Ӆw$]Ɨ-:{`CtmY?\M-ZIT`/T>Q8GᨶcGKjqo8^{Q韸ًTˋrjZ3xF8h'tx:?4X,JO^8iҧmM!whȄwϸ{#?r VV|zi!XSu>hb ko1IiNqKHΧw3",^bckq0L\+S'*([[7[bW fkcO5hPG=kvc74[fO'[l Mj+ױ؟ QL eG2?ozLDX"5s|\q63A*!ZCo}Y8Sׁ0:6x :Ŵ[7~Kᘩ*n􊪩XB1]Z!1ؓ]Mq,)m-Ay\rY 5yF~j LOd(&9}܅N3Y#U?=23-4W;RWkl&ԘMipzce\!5J!k d3g)>eJ~I9|B7+- RAH :RoZ\N^x_ hjOA9Ƥ"Ýa^PgAP\]v6޹$jaw.+_w?zʋŶ7eY3ed3?|?2VѢ. *#fԄxk":DƂD@dw/+VKK=ѵ6(E쯿 9tT |wwV\3F;`;XHw֒VÁHI #@?-ؠ 4mH2"gtiJ NJOϊFfM_o<E:ŸtKWs lE3Î ze*LۥbeMur;W SRk-s{MΦ]G0sI[`:?PlONT ]|u]vXRjhPYMbƚ| |L4q9ovT&8 qނJh辉]ba㪬-)4YD6'PkQOoKw4W>D[/GvKp讉??ty< R?O4XlV/Ȋ3^q9|sd<3(^5BYe@5y#O0m~ Y͆$"6(NIKMZ̏x ՞*}%eD("J3%d/dۊ}y7V4Q=ޯTNۼ]PğGe")!Y$r{61'c>3X7!/t"^i ~'D-rA@Y6xݣƫ &uܼXtyOd Sܕ$Ug7/rڸ\W:sMEz&))h==Ɗh??2Go?H\mWKsGMk^C xfl<|Rf>8`b3Ƽ-5dx<#0iS BX/ +/-h$5?HVBM*,  t -m.v[!2@MڠyTgx97Ty|bP?OwQ/6r^y3@i>4f$N :_e R"9W҈ŀ-S;súarQԞu9'V9U}4w i'?I>%1uȟ5H)b8-O]B 8'yS!"vXA@lX$ o#w@[Zj RyEM'z^\:N!Δj)D;GK;IBWSw = ;AMT_t %i=qʁ7.甥v|+V6$m^-o0G`0-ͬlX*nruD87"" T>Xs Pm2$҃8n&zO@jEDƚ%~ʤc~WnTk4Ɉ~Ҍ=֘$WJH+2H39"z;ꪗncj\†* }c L*ecXDCymQP{&ы^*?,NX?a_̺ͨ>9΍a[X(|^I/OMo%~$Ψ Qüz;Q;j+$>7Z͞۴qj6#T.W)s L׌fd$b WYYe܏y(vBs:wfqQ{ZVvJ=F-L(/D3և/s-Y7^lEmXLlx%qR ]6?/bϱBtWۥ,\Ѩx#` [@fITjaH{: 4GVTVwjtdl}*b8 W-^0fSs-˕S<Oy3F@A[4о8Nt̊lCTC4ɥ'.+7 8k/FPT.|6VnF *z$cm2?U,֫`(e:d_H{]XJ=]` DW ĵR}84=W%)QRR>6 (HA'/g'<= "ϋ4^δ|>P:Dfuj*e @;AW6WuB4& lA3\ (3i 1Ǩ#Q"ڹ# \D| 1( -) _2ɦf{`؋b8%sU톅0r,cLf/_ĩ#+|3䄷jMS,3h#_5. h^J#sa N~Yܗ՛fy|T ng+ҴD3HZZJ@!p?\{dp7$|FL0h? EFQER8^@Q [BiIr!{6B5&+ L`C5vpxH"Ok[& \l*fU 'a^0{!$oKiֵe^J{$jF:sԥCy9qf4sWӟ M4Eo1?LTN1U_dg+\/vhzr}kIc^ۿNKJ{]] [ql9'ܐ!F2I/ke #!n1מ=WzJW" z(0`TdE$NV6욳5ϖ)n+ѕP*Z$,Zxa̼0,iƴhڰoxȩR.lXw٪AUU UlTa`x :{֏}}}XLqm=eL_ ιW|5S>Ga4NN^'~0sա6 wF'TG+w`SV.ʥ;P9v)OA`H=Rx8?b#/E9Ա#A԰IFBڷ3䀛Ozo‘':lgQ!{m8ZPYc?k Y-,6Щ?5aU%L>OGYӢ8~76Fހ@"m-}~'G[IWx[igƴ*usܚSݱs@U "vG EdM%s%O>z2eo0j)1Ei1dP1U~{m<&?( gpL2J?w3zrUj}Ao>ۆbsEbIX%+nJ?w)j%kwSr?a{ʦs 9Vw 3\%Ӕ#A&D,CP.n: (ޘ\lh*@Kz#VxF2v? k~8)kz[jo 6bW{kތ\57M$n5',7 w~7py:[/jQڪHVHA(;fK$Qf/uIq\\`ClS;lW^l1(vyQ( ŬL'f&½Cz^iIw*{1@sJOO^zSUp9=:T(`ȑR޶aJ[U7\Zq;!`pCڲQDt(r|^MDqҖX\ Ե@sګ|qxy ٭]8s j(ePw9Qܶ YZ