ghc-strict-0.5-1.oe24090>    f! ;G|`u` N'ޞˍ_F"D6D2ZAƫ;Tfq{R1dV]+pGxe1)sPDLv3t9k.>p#hC[P&|ab7f64e681367d2bd88292b637be068ffa71a15a25fdf34eadcac394e1ba093b2b1eea4b52a90df0833024706f8932ae35995bacupI)|9?ՙ>73U?3Ed   :  5`fp|     W  \ h w    ( # ( 8 9 : 1F SG pH |I R X Y \ ] ^ d e f    & h l Cghc-strict0.51.oe2409Strict data types and String IOThis package provides strict versions of some standard Haskell data types (pairs, Maybe and Either). It also contains strict IO operations. It is common knowledge that lazy datastructures can lead to space-leaks. This problem is particularly prominent, when using lazy datastructures to store the state of a long-running application in memory. One common solution to this problem is to use 'seq' and its variants in every piece of code that updates your state. However a much easier solution is to use fully strict types to store such state values. By "fully strict types" we mean types for whose values it holds that, if they are in weak-head normal form, then they are also in normal form. Intuitively, this means that values of fully strict types cannot contain unevaluated thunks. To define a fully strict datatype, one typically uses the following recipe. 1. Make all fields of every constructor strict; i.e., add a bang to all fields. 2. Use only strict types for the fields of the constructors. The second requirement is problematic as it rules out the use of the standard Haskell 'Maybe', 'Either', and pair types. This library solves this problem by providing strict variants of these types and their corresponding standard support functions and type-class instances. Note that this library does currently not provide fully strict lists. They can be added if they are really required. However, in many cases one probably wants to use unboxed or strict boxed vectors from the 'vector' library () instead of strict lists. Moreover, instead of 'String's one probably wants to use strict 'Text' values from the 'text' library (). This library comes with batteries included; i.e., mirror functions and instances of the lazy versions in 'base'. It also includes instances for type-classes from the 'deepseq', 'binary', and 'hashable' packages.f!dc-64g.compass-ciRBSD-3-Clausehttp://openeuler.orgUnspecifiedstrict.cabalstrict-0.5.tar.gzhttps://hackage.haskell.org/package/strictlinuxx86_641f!>f!>f!>0d1cd343a36479ed94b87f06c86714e39ccdc1f71868f6437dfbad3f705584583f4f0995dec2d520d0e321542f71412dac023658fdab603db04364d75269a0fdbd57d7b3655951dfaa7d1e1374d7352dfe83f82a9c98309bf3a6587ef8cbd87d rootrootrootrootrootrootghc-strictghc-strict-develghc-strict-helpghc-strict-prof  ghc-Cabal-develghc-assoc-develghc-assoc-profghc-base-develghc-base-profghc-binary-develghc-binary-profghc-bytestring-develghc-bytestring-profghc-deepseq-develghc-deepseq-profghc-hashable-develghc-hashable-profghc-rpm-macrosghc-text-develghc-text-profghc-these-develghc-these-profghc-transformers-develghc-transformers-profrpmlib(CompressedFileNames)rpmlib(FileDigests)3.0.4-14.6.0-1i386i486i586i686pentium3pentium4athlongeode4.18.2d@Lin Runze 0.5-1- Initial packaging (Version 0.5)dc-64g.compass-ci 17266855750.5-1.oe24090.5-1.oe24090.5-1.oe24090.5-1.oe2409ghc-strict.specstrict-0.5.tar.gzstrict.cabalcpiogzip9utf-8a76c076e131d88d4b3b96d18ee3ba2cd17f1f7c9884b203feff4e2e17d615df363d5059f5e16c8352a839d0edb5e3263756c8d89b9c832103b8a0087a784544d Name: ghc-strict Version: 0.5 Release: 1 Summary: Strict data types and String IO License: BSD-3-Clause URL: https://hackage.haskell.org/package/strict Source0: https://hackage.haskell.org/package/strict-0.5/strict-0.5.tar.gz Source1: https://hackage.haskell.org/package/strict-0.5/revision/1.cabal#/strict.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-assoc-devel BuildRequires: ghc-assoc-prof BuildRequires: ghc-base-devel BuildRequires: ghc-base-prof BuildRequires: ghc-binary-devel BuildRequires: ghc-binary-prof BuildRequires: ghc-bytestring-devel BuildRequires: ghc-bytestring-prof BuildRequires: ghc-deepseq-devel BuildRequires: ghc-deepseq-prof BuildRequires: ghc-hashable-devel BuildRequires: ghc-hashable-prof BuildRequires: ghc-rpm-macros BuildRequires: ghc-text-devel BuildRequires: ghc-text-prof BuildRequires: ghc-these-devel BuildRequires: ghc-these-prof BuildRequires: ghc-transformers-devel BuildRequires: ghc-transformers-prof ExcludeArch: i386 i486 i586 i686 pentium3 pentium4 athlon geode %description This package provides strict versions of some standard Haskell data types (pairs, Maybe and Either). It also contains strict IO operations. It is common knowledge that lazy datastructures can lead to space-leaks. This problem is particularly prominent, when using lazy datastructures to store the state of a long-running application in memory. One common solution to this problem is to use 'seq' and its variants in every piece of code that updates your state. However a much easier solution is to use fully strict types to store such state values. By "fully strict types" we mean types for whose values it holds that, if they are in weak-head normal form, then they are also in normal form. Intuitively, this means that values of fully strict types cannot contain unevaluated thunks. To define a fully strict datatype, one typically uses the following recipe. 1. Make all fields of every constructor strict; i.e., add a bang to all fields. 2. Use only strict types for the fields of the constructors. The second requirement is problematic as it rules out the use of the standard Haskell 'Maybe', 'Either', and pair types. This library solves this problem by providing strict variants of these types and their corresponding standard support functions and type-class instances. Note that this library does currently not provide fully strict lists. They can be added if they are really required. However, in many cases one probably wants to use unboxed or strict boxed vectors from the 'vector' library () instead of strict lists. Moreover, instead of 'String's one probably wants to use strict 'Text' values from the 'text' library (). This library comes with batteries included; i.e., mirror functions and instances of the lazy versions in 'base'. It also includes instances for type-classes from the 'deepseq', 'binary', and 'hashable' packages. %package devel Summary: Haskell strict library development files Requires: ghc-strict = 0.5-1.oe2409 Requires: ghc-compiler = 9.6.3 Requires(post): ghc-compiler = 9.6.3 Requires(postun): ghc-compiler = 9.6.3 %description devel This package provides the Haskell strict library development files. %package -n ghc-strict-help Summary: Haskell strict library documentation BuildArch: noarch %description -n ghc-strict-help This package provides the Haskell strict library documentation. %package -n ghc-strict-prof Summary: Haskell strict profiling library Requires: ghc-strict-devel = 0.5-1.oe2409 Supplements: (ghc-strict-devel and ghc-prof) %description -n ghc-strict-prof This package provides the Haskell strict profiling library. %prep cd '/home/lkp/rpmbuild/BUILD' rm -rf 'strict-0.5' /usr/lib/rpm/rpmuncompress -x '/home/lkp/rpmbuild/SOURCES/strict-0.5.tar.gz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'strict-0.5' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . cp -p /home/lkp/rpmbuild/SOURCES/strict.cabal strict.cabal for f in $(ls | grep -i -e '^\(ANNOUNCE\|AUTHORS\|CHANGELOG\|CHANGES\|CONTRIBUTORS\|README\|TODO\)'); do if [ -f $f -a -x $f ]; then chmod a-x $f; fi done # -Wunused-label is extremely noisy CFLAGS="${CFLAGS:--O2 -g -grecord-gcc-switches -pipe -fstack-protector-strong -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/generic-hardened-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection }" export CFLAGS export LDFLAGS="${LDFLAGS:--Wl,-z,relro -Wl,--as-needed }" if ! [ -f Setup.hs -o -f Setup.lhs ]; then cp /usr/share/ghc-rpm-macros/Setup.hs . fi if [ -d "/usr/lib64/ghc-9.6.3/lib" ]; then subsubdir=/lib fi [ -x Setup ] || ghc --make -package Cabal -no-user-package-db -dynamic Setup LANG=C.utf8 ./Setup --version [ -x Setup ] || ghc --make -package Cabal -no-user-package-db -dynamic Setup LANG=C.utf8 ./Setup configure --prefix=/usr --libdir=/usr/lib64 --docdir=/usr/share/licenses/ghc-strict --libsubdir='$compiler'${subsubdir}/'$pkgid' --datasubdir='$pkgid' --libexecsubdir='$pkgid' --ghc --dynlibdir=/usr/lib64/ghc-9.6.3${subsubdir} --global --ghc-options="${CFLAGS:+$(echo ' '$CFLAGS | sed -e 's/ / -optc/g')} ${LDFLAGS:+$(echo ' '$LDFLAGS | sed -e 's/ / -optl/g')} -fhide-source-paths" -v $cabal_configure_extra_options -p --enable-shared --htmldir=/usr/share/doc/ghc-9.6.3/html/libraries/strict-0.5 --global [ -x Setup ] || ghc --make -package Cabal -no-user-package-db -dynamic Setup LANG=C.utf8 ./Setup build -j${RPM_BUILD_NCPUS} -v if [ -n dist/build/libHSstrict-0.5*.so ]; then [ -x Setup ] || ghc --make -package Cabal -no-user-package-db -dynamic Setup LANG=C.utf8 ./Setup haddock --html --hyperlink-source --hoogle fi %install [ -x Setup ] || ghc --make -package Cabal -no-user-package-db -dynamic Setup LANG=C.utf8 ./Setup copy --destdir=/home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64 -v [ -x Setup ] || ghc --make -package Cabal -no-user-package-db -dynamic Setup LANG=C.utf8 ./Setup register --gen-pkg-config if [ -d "/usr/lib64/ghc-9.6.3/lib" ]; then subsubdir=/lib fi if [ -d strict-0.5.conf ]; then for i in $(ls "strict-0.5.conf/"); do sub=$(echo $i | sed -e "s/^[0-9]\+-//") install -D --mode=0644 strict-0.5.conf/${i} /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/${sub}.conf done else install -D --mode=0644 strict-0.5.conf /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/strict-0.5.conf fi if [ -d "/usr/lib64/ghc-9.6.3/lib" ]; then subsubdir=/lib fi if [ -z "$(ls /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/strict-0.5*.conf)" ]; then echo "/home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/strict-0.5*.conf not found" exit 1 fi rm -f ghc-strict.files ghc-strict-help.files touch ghc-strict.files ghc-strict-help.files for i in /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/libHSstrict-0.5-*ghc9.6.3.so; do if [ -x "$i" ]; then echo $i >> ghc-strict.files echo "%dir /usr/lib64/ghc-9.6.3/lib" >> ghc-strict.files else echo $i: not found exit 1 fi done pkgdir="/usr/lib64/ghc-9.6.3${subsubdir}/strict-0.5" if [ -d "/home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64${pkgdir}" ]; then find /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64${pkgdir} -type d -fprintf ghc-strict-devel.files '%%dir %p\n' -o \( -name '*.p_hi' -o -name 'libHS*_p.a' \) -fprint ghc-strict-prof.files -o -fprint ghc-strict-devel.files echo "%dir /usr/lib64/ghc-9.6.3/lib" >> ghc-strict-devel.files echo "%dir /usr/lib64/ghc-9.6.3/lib" >> ghc-strict-prof.files else rm -f ghc-strict-devel.files ghc-strict-prof.files touch ghc-strict-devel.files ghc-strict-prof.files fi ls /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/strict-0.5*.conf >> ghc-strict-devel.files haddock_dir=/usr/share/doc/ghc-9.6.3/html/libraries/strict-0.5 if [ -d /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64$haddock_dir ]; then echo $haddock_dir >> ghc-strict-help.files fi for i in ghc-strict.files ghc-strict-devel.files ghc-strict-help.files ghc-strict-prof.files; do if [ -f "$i" ]; then sed -i -e "s!/home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64!!g" $i fi done echo "running ghc_delete_rpaths:" if ! type chrpath > /dev/null; then exit 1; fi for i in $(find /home/lkp/rpmbuild/BUILDROOT/ghc-strict-0.5-1.oe2409.x86_64 -type f -executable -exec sh -c "file {} | grep -q 'dynamically linked'" \; -print); do if [ -x "$i" ]; then rpath=$(chrpath $i | sed -e "s@^$i: R.*PATH=@@") case "$rpath" in *$PWD/*) chrpath -r "/usr/lib64/ghc-9.6.3/lib:/usr/lib64/ghc-9.6.3/lib/x86_64-linux-ghc-9.6.3" $i ;; *) ;; esac else echo "%ghc_delete_rpath: no $i executable" exit 1 fi done %post devel /usr/bin/ghc-pkg-9.6.3 recache --no-user-package-db || : %postun devel /usr/bin/ghc-pkg-9.6.3 recache --no-user-package-db || : %files -f ghc-strict.files %license LICENSE %files devel -f ghc-strict-devel.files %doc CHANGELOG.md %files -n ghc-strict-help -f ghc-strict-help.files %license LICENSE %files -n ghc-strict-prof -f ghc-strict-prof.files %changelog * Tue Aug 22 2023 Lin Runze 0.5-1 - Initial packaging (Version 0.5) ?|y<8IBɾo%kl &cY{Nd+D*=oﱔ{?<99v9 BXw' ABwfv`um&<@ᢾ"@z9cNi!!{&h8ANiwN (&,@=1-<6_lOB"6Nܝ]P=3awJ"~`P6Fv8Ykd8CkXff/$00翡$X#N?AQbFa~a_v AblQhG"Abn6q.OY pAa4 5=0VBx 0`- a@`]:H@ۣP`-sCM\[ #͗c7p$`OH,ο.v X "Q!Caj uQ";~P(~o@(7 4ဗ`+lP.v <.CP`sk@ 8_AQAa?EkGؑ o0` @Gm`4#Co5{4h? p<7?{').sD@bˎx;h7շ`wc @6(4NNpEl@j, kD s)A&(H,kl`wB`~P(`P ۱=Cz*NȀ x+ k':#(7O[]`;g pp ?P"h/Oґ{s9#}H؝}WQxwР+``04?,,G8 i  ~f?LG!`Od;ni ~ #~:Y;݁:1PN;>m tLV_E.Pw-:;HϷ}h'+oqC+x-+T?_pwGwʀgb<vF:< SŒߙA;K2b'=:5+yYk;;IaN . T0X~x9E}m=Eeo A\x#6vka`p=3Y =lo nB҃5B{+)h*kj :Bm{?q;r=r .{8|t|+`QaQ1&pHXY^䬘 g ?X x~P~$o~?/?M{?b|7TƷj^Fݤ?NBNr]WLeO%'JZzVsıw돢Rd!OdFFF+KPd5c/llx+N> پq՚٤=1p[XU؃ͨUȴӛ$ݖ-I=5G#\wYop9JFp]DU-ćk.O{.0%Vp$CIPsuząk}U7OvZć*ĆyS낫ST:IL /koQFh^è] ePv+XԿwϩ !^ȑqΚǔuӈ cX#xSbBtbĝ$/ \?C &cLqY1NA=%6͖HEWEbJ+X AHgƠӝ8+oV߈3?V]Mѝpc,m޾ښ.'Բ)$Ӳm9L a(<JU8uܫOK)e $5M%t .Oή s *VLoE2禛_'/ؾ Pbz꘰vsǰͧ`/YjN.r66η| `DQ[BU(9"珻)݀e/5ۗ]5G4sG_N$ՇɄvdˏa&:Cd,4^ ~ѭȗζÚ׍@S茊*&w ,ʡKdtw ' qA>2!?i\=:u@dtDd-C].NɄq3j&6کf772m;TfΏ9:pd^3`Ng1h/ܸZqؽȐΕFnC:! 7%e=; [܉Ȯ7 ?yM}E%usEҫ4yus㋳ÎYº/\ciyhH{ _/!ךxeRv>Hׯ%Micj-q|ߒL` -.C oRVIG ~9<)PZBLb?.:W  E.JQٍy7pnY) >nvRQ_ڈH {Lm|n6=Lfu`j?c%-yZb^Lc)^a~ց|_^P - O~|>O=`uR+eq ?u_WZZ0JX^:P%%hݧ+A<&4نTl?1ۮiʹ({*ŇWh mpOd@3OaeݪQTT&}@9dmT/Z}Ḱݲ`[^)0[{JբDBBm3aáQ^PAzPn9CYɤ10hWvNx[Liz0ItGa;Jh W*®}DlMtFO~͵ DW}WWm>a&˨$=H;=:`*^*y>`XWRl[nusįuF!GngsS63޽C^4?^4JzJ9k]oʃ%1]K.k]~Bt]/VU4;Q?%S\}"'yR$?s'pSt]'Y&ƘU~A$YY|e"WNˤkrz.Fȇ'+k(S-E/lq;%[J_ _i3P f̧zWIph5OiT+*F[?_sHa4`NS&oUZue֔$6p`SVI=>oo!&yGvzJg⮊hX)!X?{Ń=֡FX([>P ;8ir,BHNl,1]1 Iv7uGʇYjg?p]l"8iTL3SU|7/H )*ʖ^T#~XI)6++Vtӧ,QTQZ]Tm|NxD3Zn`A}oxKX/(5>^Xr#[f>C:ҢwyuP `?Svzav~k rtMZVn*^JNJЄ:zFgal͔N_yLy+':so9?|+zt9Pn *\+62$?3 Wh<_.mފA-3~vv\E#B䋜ЎDRlsdyqCRZRoyꠉvw4#%C+$[ ]YҎ$RyG9F#xdqaqs#qS^x|Ts葇 Z1KFԍ {TJl8jFi: M(§C٦v?xlRaUhlWPtf}M=|P(WАQ'Q=#m2G&޼6LRb)%$pU*kKgk$0ٸVx1 g.$d2`im\Զ}ZEئBϦ${ ddfw3lrh*=縨JS̟&&6j^iӹ64RW3{~M4"i7견29 4/ \ H@nbC+۳R+pA׫㑱iwE1Y:AQf_;k!b&@@N%i#3fzܢ>y}-p*ډaGZ 3 bƣ.D )Upؖ|L3(_18*VbZMmwn]rKoKA;ND erEv'F 25O-_X&(oY1Z˖d\ӝ$sn&ZOrݯ͒5Wew:ͭ\, ^9sg^/ #ΧZqȸMg5n rV<%HPA',+Jjr:h*yE0XPJ}9'%EEL< {z#Zcs9'9j2Pb!q*1  5o3Y}K5QDc~1^j '|"^pa5[[_ )>Lp& 'm'^Eg;NgenT:ts=f\^כq"ۜ5Է4@%j&ђ !J5R42-VR[T?%#HRCSiLq:/kݜ$+ZLNivМTO@q8gê{;#hNO=r3ϛ^_<`P&xDӟWw=v_ .N *x0;IK| s]q֏wIz$J\5%HMA1(&7}5MS*JGډt [c Ǥ)~sQ kF x}a>.J<Ð[UA3T›Fj։F\rxR|*@bT'-S$̠ ҇G |A U~_\Ta`w4}|0拔{Uԝ7tӑ e BmuHQtWwtJe@DG/C=WY_U7z_mړN7ϧbB(6u?4xؑɹإI CVU Ox+V}2{vG.q lB@ Ҧޥn].Ύں`920mv [ y13e#w!Ϗ}uBby fJ3INW"qz{6͑Yl~e(VC"h2 jFMi/JYADDw6܂R(W<[_N!ܠ;e9<i[#udnP薠&ŏg{ϵ륧rht},eu6E2}I^4٪{Fe-Bҙ7+G|KSoEUVNg+@/-snY b{_ynu8D"m. 7OD8Nqr-6#>.Q4a Q݄\5;TFAX}]e9amPc/䅇>9<|_kbrd!(+0zmv|LY#"ݓOBVO9¶XN4]!81$c'7,' g|_R[<%璟W2 с +QĄ ćRZ2 ;ܮy3#\Y8ã@m/c.x$EdrB ~vNd'!o Dp`0fmFwHHS;r49w)K]y/]^z_%Pnr*y|1o&s}:u=3#/zFy9Ȣ&|cbU6G.=e(ʘ>)m7*Tb/``lZބHכTj5UO>_BU=N;VO֤ 7j=iگ0H[㜼@r+# h:fI|LV)Vj]X6ݐ`xM],qL֭G+"'Z( F8`Re-KN} udj _6hL-mϑw8WNCЀ!кgfZWgn~.1P{8?wVcPۀ A.Yz>F9{6-!Fj&uAvěIZ xCڱdm=[Bġm [ۛ5늣_,IFV9S-gɵ~K& j~ a%J4_.p9-FmC}4ERfY'7,:!4y x}iIKpB󸫪&λ~ݼitbJ{-sD=5ŰZɁκ5a܈ec9"!AJ8!օd3M2{Fr ~pYj))~rYwtG/&w)\8W/It!+IA9\bNM&8vH>mO_6+.u pvY˚㛙$pnt5jb9dooNC+{/i] ew&G~굀FȜ¦؁b_RgRTIy`/Q/ SXaW@yOo#v.rжqb95rQN̰^ھ1Bז_<ƜzmЋg't0zL*V^ǼG\ww :> OqW[5e :Rq()C+ᄦG‘_gqs} \P Yjzt+tj5T:"2L5Cվ|0N;/51zX{֊XDžw]h4jGI3a]Pz3-sD[/_KetUECKGUt}ya0Zr9AVTNn+ܗu(1Nh}i_e,找n|q{ض#k3H5e62d/9҉/sgDMcnRh܈Y9 .ǖ=BBUzUs?no4 (bi|lv:ىEpmwf^w!O7Ǻ]^7L}MvCㅭHG# <˸j2GT@+p[+Qu>=V73$.pS?I|!B\zAM JO,f!ɸ |gՋI?C%F𤩣&Ch |TtkIOKh~s3a0j#u@39kθ<TET9FU Mݲ\]4 sV?V.-j7 9SxzBWT;g_DQ,/CX9ۚ}mmtUsA3&B^,?2"UeSl#|.NMjg%I/C2 '\o`0Fmʋ p'uFAu ݁xwŗLle -';weR'u,M˥=oI[(J?,汑JH;KE*ZKcpÒz>sȷ/ymacoFuSgkIeaZ_8fbpTw$$yJ=ׯ035άyD4O^9= vFS+.ڼ ! ]Tbj\s^/ӿ*V%<њ:nl2ѤQ ,pg4Լʇgh6 E[x'gx{q[XB'cǩٚA{hɍf]= k>]Qʁ^z%x͘m'[c:$OgDnjK?\iz/o (tOVnk%ݶMXƸ46;w~dc- /<:tT+ĨS'h\OH$z;ĩT_S4Eߴ¡p=yiD9Ijv '.e=h"PNƟ#{f`?#]}B+aF<3nP^d!es,uk5FέbHFB[n^1ԓ*=ڐhzBG 4V(% R]?;D~r o ]𥲢d3 OoyJCDnZ4}vPp.~H%:t%T55۪MךD'|MM1To:. oߊcRzUWf8ݢi<>na?fvJ! =p:CW'.D -2&~u`evMOmRt8S+E$nj[EJr._eS7Ej<*v #UT%M5}i5j w}`k{dB{I&alnkÏMк/*K*Ro~ۅ+:R+D%i .|贗d ιTNѶ``QuCpRn%oxh#󅼒qBpKR#1t}gt4K/AهiXGie n77M`]=jQXa7vua.l5MpdUZˋ6z+7 <s`t1!q5V35H#d>V!yϘ4?ʼC-<6Eg8fN= 4fOBiΚ|itQ )7vKր cPCc|nARExsPwLԗ㧣h+AIxx[^j;T["|DQs68~tܷG58e GI}0yHS~7dۗxbj#5R翜qo#F1key#q0g.˗)f5ORI'hZܝ ɇ"&J*F^bIl6 bX2Y 4j(Xam͓u|#jD&.9+/qkP_T<*oS]r嫨bC ѥ㭘ވ>bjgzjz>b}wJa6AS8|4hU\l!5ݚ<-KCR_-!|T/!e:ĕ"Im\ᱻ%ݗxhVwe\[ސdTGR")%6/aĮ& |cָإK0sX#ބP}C!o9m m | 9I}Pˮse4=(gn|{?^DLE콓oYx? -x~7reTK,Y V`g{GZ%\Ҙ!~;עgr\|D΂?MuS;ħb\G̍a}U"O+$Lh} VLSmյ}8 9˚׭,o{u{RhkKb,on n 9@enMsmGnG-T8qM 0Vwx˰ٙfZ^~hFoGǥ51OO%b[,L9˩5zS6"C\7ې׳_$Q} -&ݰcg*HҸ^Shm*SR ÜvnD~be8c0=1=J&J+ 84F|eMh-u__TVw1ɴ5D8(bYF]DA\2wʺ/VUcK[oʓ*.kY%S̒^$|2 2E}bv8S=d'޽Rd=G˰zcԪ5mK&i9$(̿w`Zunn1]{5$b`Щ 뒰=FX\XKR=Ч\-6\ \cZ3l"2tEw 3U yI%zMw3a‰pA!Ԕ)+ K d^a:FDkB΅fSJ_52pJǣEGh <ժ)&Z }>B^M.݈1V]w4np-:6c|҅6/ 'iDBLD]=sCTs8#b~g4@عrǏ$*^CW(l%X&y(;hd fޱԌ i)QWآuSgń4 ' w^^$i⠄CαNjco?R=Fڻ}CaRk +Dwxs> }_ϩ\)E+sz+zoLL+o iܪ@5ډD_ؿ"1;/1u**Q宱*QCr'ك cGR 8UpHgX;լ yaC^A+%pA!fGSSr [DںV Cw>p̾{(8<7+zMU804S7"C0w2UOaN0w2v/gCv&6Bz;儁7}8A,~w`a _A-:oi]%Z?hOWw~c`zCw7we__w(w/o?hC`+_O=lB`e}MoTk7~)1`Oxj;ՅG /0YO[ВǷwcwпj%p '=Op(>9BK@TGffJ> dw ДcvD"R`%5 z`?#i#`v`US8 XvGp-78$ȟ1@Iġx$TXway'W$vvr E;ngS2 /XTXG?m#"qp R 8zhf4ϴОS5e?k[9Y 66[F0Chf m?^wA~/XUExy I X>()(DIā~@T *y`$ȃJDE@_ 8Vm܎ p@=f_SPR@o F;}P H>r%Oe;BHo#w8ŝ ]  ]d>ϖn`x=색ŤbMD~&*xؾ  xz`bsݛ)n13{sڮPݳl!@f[>0Hp0GspܝD$%[a)@q! +#1k >Ђ{g+rb^|P .DFp]3پp