ghc-splitmix-0.1.0.5-1.oe24090>    f ;G|`u` @ WKw+WS;Jk eg*ܽ8%(GDs)^/^6cbamf 1Gs,]#%{*": 9N^,Qg?1M&7 ,f%=yo@'Os'_,Lrı=fSQjS[8d\^iFA)nQKˊ!u&m$#uFa67bee1660301b81231831621cb77a4503c18103d46e67cb86c63170748d1721d3521506d1490bbbc044f9ea64a0ac65ae548ea1SZ Y2;'w>7*?*xd  5|    $ ( 0  <#(89$:nFGHIRXY\8]@^jdkepfux| Cghc-splitmix0.1.0.51.oe2409Fast Splittable PRNGPure Haskell implementation of SplitMix described in Guy L. Steele, Jr., Doug Lea, and Christine H. Flood. 2014. Fast splittable pseudorandom number generators. In Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications (OOPSLA '14). ACM, New York, NY, USA, 453-472. DOI: The paper describes a new algorithm /SplitMix/ for /splittable/ pseudorandom number generator that is quite fast: 9 64 bit arithmetic/logical operations per 64 bits generated. /SplitMix/ is tested with two standard statistical test suites (DieHarder and TestU01, this implementation only using the former) and it appears to be adequate for "everyday" use, such as Monte Carlo algorithms and randomized data structures where speed is important. In particular, it __should not be used for cryptographic or security applications__, because generated sequences of pseudorandom values are too predictable (the mixing functions are easily inverted, and two successive outputs suffice to reconstruct the internal state).f|dc-64g.compass-cigBSD-3-Clausehttp://openeuler.orgUnspecifiedsplitmix-0.1.0.5.tar.gzhttps://hackage.haskell.org/package/splitmixlinuxx86_64iWf0f0cb67749b5c49e9434e17d53bfb243237706976a0f08995dab1977752927869969df07a9611ef45f1b1258a0b412f4d02c920248f69d2e2ce8ccda328f7e13002 rootrootrootrootghc-splitmixghc-splitmix-develghc-splitmix-helpghc-splitmix-prof  ghc-Cabal-develghc-base-develghc-base-profghc-deepseq-develghc-deepseq-profghc-rpm-macrosrpmlib(CompressedFileNames)rpmlib(FileDigests)3.0.4-14.6.0-1i386i486i586i686pentium3pentium4athlongeode4.18.2e_>d@Lin Runze 0.1.0.5-1Lin Runze 0.1.0.4-1- Bump version to 0.1.0.5- Initial packaging (Version 0.1.0.4)dc-64g.compass-ci 17266850520.1.0.5-1.oe24090.1.0.5-1.oe24090.1.0.5-1.oe24090.1.0.5-1.oe2409ghc-splitmix.specsplitmix-0.1.0.5.tar.gzcpiogzip9utf-80e2573f991d80c77367ee8864b0ebecd6807c0ff0c27fface9dfd1139dd9700d41cc0d80242c179a7b0c2da4d73eadbe07e3af54ec0c9754ee772ba5fb3ae590 Name: ghc-splitmix Version: 0.1.0.5 Release: 1 Summary: Fast Splittable PRNG License: BSD-3-Clause URL: https://hackage.haskell.org/package/splitmix Source0: https://hackage.haskell.org/package/splitmix-0.1.0.5/splitmix-0.1.0.5.tar.gz BuildRequires: ghc-Cabal-devel BuildRequires: ghc-base-devel BuildRequires: ghc-base-prof BuildRequires: ghc-deepseq-devel BuildRequires: ghc-deepseq-prof BuildRequires: ghc-rpm-macros ExcludeArch: i386 i486 i586 i686 pentium3 pentium4 athlon geode %description Pure Haskell implementation of SplitMix described in Guy L. Steele, Jr., Doug Lea, and Christine H. Flood. 2014. Fast splittable pseudorandom number generators. In Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications (OOPSLA '14). ACM, New York, NY, USA, 453-472. DOI: The paper describes a new algorithm /SplitMix/ for /splittable/ pseudorandom number generator that is quite fast: 9 64 bit arithmetic/logical operations per 64 bits generated. /SplitMix/ is tested with two standard statistical test suites (DieHarder and TestU01, this implementation only using the former) and it appears to be adequate for "everyday" use, such as Monte Carlo algorithms and randomized data structures where speed is important. In particular, it __should not be used for cryptographic or security applications__, because generated sequences of pseudorandom values are too predictable (the mixing functions are easily inverted, and two successive outputs suffice to reconstruct the internal state). %package devel Summary: Haskell splitmix library development files Requires: ghc-splitmix = 0.1.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 splitmix library development files. %package -n ghc-splitmix-help Summary: Haskell splitmix library documentation BuildArch: noarch %description -n ghc-splitmix-help This package provides the Haskell splitmix library documentation. %package -n ghc-splitmix-prof Summary: Haskell splitmix profiling library Requires: ghc-splitmix-devel = 0.1.0.5-1.oe2409 Supplements: (ghc-splitmix-devel and ghc-prof) %description -n ghc-splitmix-prof This package provides the Haskell splitmix profiling library. %prep cd '/home/lkp/rpmbuild/BUILD' rm -rf 'splitmix-0.1.0.5' /usr/lib/rpm/rpmuncompress -x '/home/lkp/rpmbuild/SOURCES/splitmix-0.1.0.5.tar.gz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'splitmix-0.1.0.5' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . 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-splitmix --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/splitmix-0.1.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/libHSsplitmix-0.1.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-splitmix-0.1.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 splitmix-0.1.0.5.conf ]; then for i in $(ls "splitmix-0.1.0.5.conf/"); do sub=$(echo $i | sed -e "s/^[0-9]\+-//") install -D --mode=0644 splitmix-0.1.0.5.conf/${i} /home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/${sub}.conf done else install -D --mode=0644 splitmix-0.1.0.5.conf /home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/splitmix-0.1.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-splitmix-0.1.0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/splitmix-0.1.0.5*.conf)" ]; then echo "/home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/splitmix-0.1.0.5*.conf not found" exit 1 fi rm -f ghc-splitmix.files ghc-splitmix-help.files touch ghc-splitmix.files ghc-splitmix-help.files for i in /home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/libHSsplitmix-0.1.0.5-*ghc9.6.3.so; do if [ -x "$i" ]; then echo $i >> ghc-splitmix.files echo "%dir /usr/lib64/ghc-9.6.3/lib" >> ghc-splitmix.files else echo $i: not found exit 1 fi done pkgdir="/usr/lib64/ghc-9.6.3${subsubdir}/splitmix-0.1.0.5" if [ -d "/home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64${pkgdir}" ]; then find /home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64${pkgdir} -type d -fprintf ghc-splitmix-devel.files '%%dir %p\n' -o \( -name '*.p_hi' -o -name 'libHS*_p.a' \) -fprint ghc-splitmix-prof.files -o -fprint ghc-splitmix-devel.files echo "%dir /usr/lib64/ghc-9.6.3/lib" >> ghc-splitmix-devel.files echo "%dir /usr/lib64/ghc-9.6.3/lib" >> ghc-splitmix-prof.files else rm -f ghc-splitmix-devel.files ghc-splitmix-prof.files touch ghc-splitmix-devel.files ghc-splitmix-prof.files fi ls /home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64/usr/lib64/ghc-9.6.3${subsubdir}/package.conf.d/splitmix-0.1.0.5*.conf >> ghc-splitmix-devel.files haddock_dir=/usr/share/doc/ghc-9.6.3/html/libraries/splitmix-0.1.0.5 if [ -d /home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.0.5-1.oe2409.x86_64$haddock_dir ]; then echo $haddock_dir >> ghc-splitmix-help.files fi for i in ghc-splitmix.files ghc-splitmix-devel.files ghc-splitmix-help.files ghc-splitmix-prof.files; do if [ -f "$i" ]; then sed -i -e "s!/home/lkp/rpmbuild/BUILDROOT/ghc-splitmix-0.1.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-splitmix-0.1.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 %check %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-splitmix.files %license LICENSE %files devel -f ghc-splitmix-devel.files %doc Changelog.md README.md %files -n ghc-splitmix-help -f ghc-splitmix-help.files %license LICENSE %files -n ghc-splitmix-prof -f ghc-splitmix-prof.files %changelog * Thu Nov 23 2023 Lin Runze 0.1.0.5-1 - Bump version to 0.1.0.5 * Tue Aug 22 2023 Lin Runze 0.1.0.4-1 - Initial packaging (Version 0.1.0.4) ?zX6twHH3C3Aw*H( %" )={|\\ó׾Zk?7ק0?xAf<| p.?שּׁ9Nv`=؍2Gas4lL ͸iqA xs0x"@޸ f&`5 jHQ?AWwpsprs j@@?ྀ!x^:فj *`s_=y!!kCAښ*u` 9AE@+5j tXq9~W__8! naos€N+'p&I"mq i'{{9+fn@̭q vDl:-<~'sG{' y `g~K"`i@5 @1[ { ̚`C?"A`h0[[8,!ȕ@bh 2S/GOq!_  %..j;N*(NTmwV~1Y pw ' Le';@nPH0"@т{?c?E+Hp{3eB* Prhܪd\[`֠_XYUd3r-;rh+` Adf6ȵűB΍= C*@+8r2NHaAq5^xY8ob\zyE_Ȱ8x9rJn5_ r) Oj 9L?X:B\d Wp6$E@  ,D30 ͹n; @6 3H[#I:0'@ voQo[f90HitilaGzDW9عikd /]ݺB.8@@ ⁰_VGȅq?BvG  7UdVd; A2 psrU@H)! U/'!0aH2tBQ[LL֎p; # |2;nud 6 @ApĄ'HSgZ(.@;bq ab Y Ŷ,!_7M`#GN=ni,nYo^~5 $ Qߙ_K?_) v`;/) ,C YA~Wm  NP_Z d&v#m~4s8ka shǒy U D/ݰՁݯ ݭ!V oW_D^HM}ۅGcY'_A@N @8 n#w;"RH"k} s[6ߎ\W sMs^ v%YyM?g/urF.+N{ |Qu_likFt|0n8)4ytlc j,t^)Ekj k8A.]$oun;q]Ƌ 7t"JN5y;PX]oYd\`\`غu4q(bh p툞ȝL+p@ p@sQ:eli;~[Z~`jHITYOJw2m\j7im{=C"KLW󅬉#[@^2KCXEr[&ʼ)ď .;q#bnڢR1qp eC"ٛp,)D݊FRH1xI[$+O\;°I*wVM3El{*?Mǟ;Jmde|Fmܖn`|I2D?rjNÀd4M?^?&my>{@ִJJ + ^H@wwhb3kkb/I@2wwp5Q3#GkI4DxsJQ|>Jݢ&ܻωVQ/.޷lΘ~ICxL@]h@|vٟx|lܸ\S+CK<fa2#*Ô he:1OKcyZ2;@YL;hR0DжJCDq$=OHu\c=0^5T6#ŗĕV]T}7#FEjȏEUޟw@ :Xd$}"$q8o !ɩ ̡4zUeDʠ\x Jivteֹμ1ܢoMl,̊͟ ).mO˴"f  4Fw6Vᵣ\|V ޡipdx6]6D?W#7嚹>uh` yVl_;2>W"ڻ1t0w~/n~wwώZClⓋϼ0Lie=_/"O'&+I_Q5x6WJ|QPZZ\ U5xR~db C+&lh-fS/S˲ha҉v-"3 qLii"s{uzq;iZ;C(Q>mngs">PXF5f!Ó1GKnga_\/y>2׼F O0% X|PMuֻZ^>Z\l:/lrKMQЄvL.3j8s8xe3qط B>M\6W5A=S| BCrk /VUڣ5$Eecݎ!@Φ(+\% sz5r2Ѵ# 8Xiصڮ5!ZAC= .88}Lr)y)tamR2ZUQ$`Rz&t}P0Gn( S4r!}RRj05J>_ńiMtC+|6/\݈l2Lג*Zpeߓ/7*ՄPb: )&\5/q$/.f.E3?qqD  c,P'ݾniM6al _Mq X&JBExr{&2s!R`;zp($XnR&]3M}3!mB!=픧"Mh[F?>ಋ &~ c91b t+*5%lFY")n]:;T{Mb9׷:okhwb0 ^bݱ [,צJKSGTJ?5=qkp< "Ѯ'V  zPt/ ip/[/ۂ@Ĥ#'P+;_^_@ !FTR*]s*wAw0,GQ4LY $CU:`|XOO?d;Em~7O- 71f[/訏-{8l95oۭ",5Y~}QRLt_ y]:fȰiDTR$.jKٓ?51 1>GYRz eDc7`C*^*K뇡:tT| cv$]AuI)_;I5(F>`N ^GN'jzrctzYӳnEDz'DjR!]I3hM)畾/ru/{N)'msňTP78%5D~"fGE*)CӸ]C뎛= kDϴΦV;[[Ȅ'sߑRt.^g4_WSR+c5))ܴ-lDbj#/L3V01~-{},&~){ d,<5OF jG\s=j<9eR٫߻p>yes9. \?N! H D:J&Ш]+Qgc}PDjKeR,. WN)N9NTdX7﵋|QLQD܉X2\MA71r&qJ#J;% Q|:XLjTV j**^$Jo=0w ogc8deӻͨy:ߏcDdL$CA6$L _8iYg~Yq[ec/Й,_zN벞9H3O'0|0V`]:rOuUe)jO 3@V];~{IU7,|qUQds,bZ$(PH'oP{xLoɻƪݍu. r3V:YxߣoA=# ?V"ΌYT򗊓?ҼeRyp}5FtEZ 8X}j|[/C`M)2f"/>|MuuFgϑT~3[ 67yfU2GʾˠofX!"\Gy0mY="J-O,3p!&h:2]`j7bPY"1Ff?zz}on/0ӖղOW}ϡJ#o?6?zY_ݩ g3Эs.(R@,_'Ɋ?=M3RnB`2ɔ)%B6億Bny. ;+&;EK?9E O" nL~G>d&rO;ǣ!]m~"JK F8;$qstZeǛni|v^i4;]B=c夊-%f)~#8ʪ ͙q -̼\Xj{GsA5Bza‰Gq_LCg2æ74sJXt@RGσ0WU"<"\8ۅx%§(J.ʇUՉV/&NLNDy9mD'?*̞bh(LyDq5]\bOMӰR> ։u`:r.JԵ3w#=T񁉇 $~3a;;tTU+_ʠͲQgmܒjD)x;1Kgh MLQU#7KVH̋ɤ0xy16ӽհgLng5?vQfw^6iRw-ND,1S/_BF8[' ֊&޳}JTE+Ȅ=3RR嵂Y[b:ڑeNBݟ.7(?p+Ð0JMRxn~PIUeODEQƂy8@]̣_Cod++:qc=$M)aY3I>jƲO,;6̾+`%R=n{Qf ;{>if^Ѣ (/of+4y&jźX>Ku9QȡהV*"o}!`chݷ ,q;?Wp0GF4L|qԨV$e{-]w؍ca]1bE.%Yۢ} ]Rޮ(ʞ֗]+"lɼ=h0[jeVͽ7IIx|$ry-C+bVvǓMG+¡.ԛSdxWJ4KfmsK𺢙Q5U]?J8E/E+-h&Qsbw^(𝟸x'S_YJm29ߙj ;T ƅa$ұ ]\^6†{+V+5+?z+s3''zH䛛>{.ކ]el3HZ8ĕ9gCfzяmE rL {TQd{9!t2Z?YTzksss;Vsi]ܕ@]5gwXWWy`Z~:_?g;aI@D1% Ba^&S9zu*KK"Vu#9* O4@F=qnddǶ!랑#S'.h'{G rݧ4mR|N󝜊̬N) }߳n\4;-@] }NnqK N )@89Iӌ9quEK;h: E,8aWfInI{tĵ)j&{eU.oY(̟?Bb@E8(l#@!f#B5sleJ`H"@ě}oʀ8 4"fyT5ԦB6(S7n&N&YF}NY8|M_<J֭Np0E`ru}϶@46XS㼪ʚP%=Ӱ-޹"BFI&OܾBe?^i4{C?:(M&Xoy0x.IVC 3x[ ;/xt{#;Gv ts *'*A'Vzβ&Q䄎lb:2LnE#w%޷s (g!ҪOb֧ĤA&HϺt a;DjiFLHnY @#-xG4'Š-#Qi[ŗ﯄1w% Կ,{`n^RܒӚf7A0'95?2lHx3$=# }ҷ2fw ^RVYt#S^W|7 GQ]bA@#pƻ7旸, \"H8Ö|N3(^Z ĥaƯ6R;j9iw ƋG.9%lt/N᣶-b4lb 掶 -6b{~+5rv5li^E bӰSIyX8~ ~ ^\cWTakheV1Wi/>y,`'+''Fz'|+V֥5qhSRhjwV4qc~ %[|Jq}?d,±`IVf}< WE4se2߁6{ߏd\er-\2GfKکƷj9VLmPJNYmM9xwK7>ϣD$%#X9YfM<˫~$r:sk=f+8N+8PXz UkCkTOLXt<*Xirx:`xA9M$yɼKI+Ϊ3:\mɏp,^QSdw\@HS-T3pו\?ͥ'$7eI~q{z)`,`? clvq5_6wJP[BG1 w rwsQrg{wKd0w+0r}\_ż|R@G3ީ. =VS)ˆ&-<սٿn:54"VYWnc`֛~lwC6V%g+G ^}%|L\=KA^H[\WU8`^DlUBѧg7hugՔ?Z]Mo`K¶l&3&%ma8[ǖR X?H=Z|>H+ I9ufvPhP*X{DwbVuoluؖSH9[~ ERl<ؐGTgyi$PcUPNhMQf`1DAt”ddzMt>UO6Si}JMx~4+wh0SA\) DI |R=N+flmh$h%9qNVNN+NwqW"t*F0Ҧg}Bda 23̓, :XeӇxS8@g>Pv'xoR-"#v'pՂH: B"e@ƃ[ #5eD惣<";Mw$zGesxj\fR3Y '̳q|IA9hXysg?nLLAm87WՋLm\hn;M;5}?#kםAW|K9ܤ%\jz '4֔i VMz#iUK dg`CLT0 o-e3̭R"(E#!iR};ޓ $C=~ۡvvƷ QgNdwZ9D5<1+ߘS ޾77;[M4θf׍sN5::׸q|] XbY^r#weOZj);ָׂL:5<&1JfK} !4u)6/)sOZ+o?CO3${~$I!/$&pKD+BiHp7ޡŷACO߻.Js g'X1ǘ:G["g"nCC"C%џd]-zvLщS/L9 L7V}c~n&l.Jup(aVVZq 4s퉈R|nm=5S_ȥZ*bsACMi8L\k}w6[ujc3FIGބ\b#GC'mt|6|;LQ\͒Ͽ iF)WhD}y˚ڈ/>_}'JI~㴴f^SܥkSyf0z AFC`.8hRnn>.;kBCgV1k~pߤ o"V7iG$g4wW7y2d0ov',5|}0(z'#Ŷ^lƫG odF=b"֦V|ýLm#q^i\ QotҸN(=\Dj2XIh w/~#7i# L`VT;fd])E\@[ژ>ÖOrpEZ(a!4j{}綹=C!R:^RB?i>!T-3JjgAὑAg/IJg6WEva04*5k.č[jOt Ճ>n.@+mq[7of6-Cqq9z >Fq??<'<%昱2{f E$:8#Cw:Ɉ۝K} j'Q|mRGmm&"9˾0'MIܴf`ATR9Tu~h|>zv_0]ߛI7|6UiDkDYR ESu}}NqNΐSXwbԏ?'l-q^ai!FB&mV~Jӷ_uI<4۵|BY3my2k;O")ZR @$&1TA&i"'u+卒v ,ޡkguxyRxH]#ӰY(Q~ˣwE,/^UMmf`h%ݾUfXƀ}/zэ<[U+v=w Ƀ~h-y9mM@ollw> TA4?>*P 3Qw-iڲ=5\a t|(65mѯb!/.+ҷM/$NJ;tm}餴Ķ吃OMK[}<}W qnEeɵ-9'#nSvg[D2Z4~˜R-)ZpyC[ԭx1;n/w-Ǻ|_[K U:-5B~f~w2iJ ؓ,b''Sxm(:(ŌpKFՠch:~ݲi4Bg⨚t*iP8o\6%?mxEp|%`-]s߂"x -ٴ3jDu0nXE;h*E_YΘjO>O7tmB@m߇vsC>Rq脮-'wޑ<j5 ]r:HS*@AH鳉`Y0XSb+>TΝ()̒+I񞭶7tzWLI&+c 7mܫٖGo.*Q RSgU*ze'*L.e#֞h/ ;s0BcKdTp}s`ؕ@RT1h}y?lD s̀peb ru+KQyG5  NGep%^d ֊UlYRmh ӥuUwew7żv"08]}Ϲm+auq׸E+{XSrqײ-.)=$Fvx,a;iC3̏¶Uȗ]iAf-*ƌan,, ;g U#w/'nFƃtiez#Wpx2Xzt, "4 [ ?Dkh4P]GPpS B}X;bz7-J|.Y_[aȸJ-`\0mw Bwf\YASmq6ӖTe* smvBstrAq0mp <]w lHpww,$ü.m^;ug{U߮\F[ }HH< = 'Fp5>\VT&ibu]~TlJO2ΰ &oݗFAZf76";WD^ԊVFi%Vg^qxԟ8fvZ|߁מMU`}-7fxgZ+|K龓ǩa7ZxvU,"VF^(ZQ$x3E_RMGubd:5rµF/*;yQvFK_Q.8Ǘ<^9=;/hZz2n}U!А+G' GKĥp't!*/vd R0˾z~XRQ# ៚NYFO!QC5" Rɫ'6TUG֛&1t}=E7 ~-xae ~ŝzWeg1OPmyjXi}#.ǀY75?o^䆏b-= ~آ!$3D%=Ɣh^fT{gʅq.EPo9e] zM`^۫,Z2F/u)PEIᒫV+gy(Ž C`g>+n'˼7AFȤ|1.G"KDj!IU;iPD*\Z[§{Ll} B$[$C].4I>&šu(%bLLF̜_f3c=Ձ aԮ~"ԫPİ]^ mú!RN2'r ^@GU] !]`՛$.VUyNjC 1.bEIȫ}CL̟ѹ-+ҵW\ DizֽקClc;( &#T$kc3>r IMW0'n=e ?q}xY؃m_f!7+/vy֮H8iF_06vER^jL*O5wQEϸTpqw.hji8dJY //*Si rF;בSwb8NltŇkoweO1P̉Oi*8K Xyxپ čY6ԲJxn .eOz]+4aumWPi w(ݩ>aSPwhHd"h> zbR  KHl Ur}a9Օx儇RC4z[sFmq]y"囎G%Q[X0cRMb s&AK0G]յb mtȍʾ U8bBBX ;a*KCE:O= S7aH[ϯϾO)]ѷǶӥN~MnVV5[>Za{ Ne_RKfg/©6l2w,W~ۛ_ݝ[3ҘYN>yFoIFzd6V$p+Cϓr #D̎&.j>dA\УZ.n4AɂXk\u RTL2W>g|CA(UӬ0ܹKJ* }bZӐ0E;"b`wmF-ԭyY/S"V71<5*:A},4sO cO6/2MpđvR*t8Rщ2s֯[/x]]~O~M>}A.>0ctMu8h4oxM?{,LT`;VdÝt(;z3k%/NLJ$CyL(U0)ÂRe;tk`< d%oh `[VxE0a,&'ƥ2P8 `Km7TQo#>B~bNܤp VݿH=^X%N2aʶNEQ'lppv?7!Riin2'Ϫ9$8 utO16l篺aٮb ZCLZ} !Ia\*,e4¬M * ZZt!ڀ/dnQddO:7i:sW[Y,dhx4`Nq~s9!Kl{x s;qKʼnu;K/4a[Vk鼫I/%ha~GhU\> <49ZTGsiEqF~D;n  ^X#y-rf_],k\]6ce<)1~"VHOcr+TZ{Dj-iS2]LOSvQIpX'y-hlb(nCς硗PސgoKq,k@iy\{Fh יn*(BqvFr$E3r79\Xq߫TQ^OTY*3UdzQ> yh㩥q$!Jv(hu@A$ķ^aV 56} ׊!&2& Tv?6Ȁpe)XhӤ\dii˥p tfS,i'`OGmԚ'.6aWZ~ol9P_AgkɋNo@^mp[ϥCڑ JP|XCy$> dب>}FA=LO'1)[M Tl_vvr# hi"lA?~|Ot]n9ݣCTbRj}1OhV?65F$ZW,h70 XiJk n6[x .}CJ,$Dr{86vƔ}7|~S\[_Dܛw/ķ݊|pQbpol!7wx#n-Y~/3! tzDxvx?V覲=_b߯)3i(^ Oвte,a3f^c2X a\O(ǚGj<ǬDq0vQ俁z)iB >X2.JBMX%'G{=Oa`f"/[,X&X&o/?v&#ME{Vvg}꿉o |n{b_C!%kkCTmsa+^"(Z'@}'scS*c;f@>+MVmpOG!XFFAbPd6,d׮H->O-;&_j׉ b ~u ڜV "%@ ='79xXwx8_=x|E8$`~E OR#M5xғ we#JC7y|o}?1ʯx3^#etdvфT-Mg[{&a]5Gi ihT}6%S5~&8" Ů(|o8;cZ]xfr6ɷKr?(&[h -zk?ȅ-϶S<+[Y;3T3;3Nqkv)Qi"'yxy OF9h?1+6#j7f8ï8F* 1s˛2_N\U?uk(\e{(hw Tf;[JYSyE sufzRvȴ8 ^OrE]ZlKD13*[ %hT9]pm*jFZT_m=aUnzq+J^htsoH'BWO,؈|F(vw\Z81EF+hk-A(Sl(Un 7$I5&гe$Lw_E-BU!CA::ԁq+TƤw[_QAA=`yxNu6Z^x%QuxV^_ib"(O,\&OВd#ԇQ䤯Ck7a1=?KXօcfp}4vV]y-Mf0 lHIvwv~(iH8w:,UC]?Th}= ;Ϋ6\Ƀ@-C!μ*־.-}D&<~AtnL1x|H%]z9cAiP 8Ub'K&aC-"_w: jAAo\BDsno-mx5 #Dq1l-ȍ ?\ߠ-*MCC?%Gpi