rteval-common-2.14-19.el7>t  DH`pa;`$ƨMU![h*$D^਄Yl1>]jLGk6SkuK5t' z+뮧7!5읠W98^ l:;.PY?ԾDLN uA-{v)dD21/,}Խґ|js: f/wK7zgˊ@_.VEu08f DޚKFz`ʿf662z9K#tIK& Rk~&7,!l뷸1”OLe[@<zr4>p3g^|Ե*Y >`5Fٜ|Pg}{eԾw:P8`$fe9kR[?/YɄ Y’P7@O.ӷ5jU;2=Iv.4֋kć \40rnCDV<@}#̝=Q 3 _J.dΚJ٭Vy!7=¤46aMV!6 I}h_u֚ ?~ L06Z8~[i$~#ѢlSæml~%BS._$V+bw̌:?G !NƇ y>f_#5T+`'"zvMHT?AުJh3{ۘi=W]Lpl/?jc.5pmyOaf!3Z-*_'=N'y\?]]]\*w"nCY7#@Ыwu$X:O>$F$_>8S0?S d  0pt ",   L  \ L h    {( 8 f9 Df:fGMPHMINXN(YN,\N8]N^ObP;dPePfPlPtPuQTvQwRxRhyRSCrteval-common2.1419.el7Common rteval filesCommon files used by rteval, rteval-xmlrpc and rteval-parsera:ex86-01.bsys.centos.orgPCentOSGPLv2CentOS BuildSystem Development/Toolshttps://kernel.org/pub/linux/utils/rteval/py2/rteval-2.14.tar.xzlinuxnoarch 11 h )*i*i[ , ,S%%FA큤AXʚa:ea:ea:ea:ea:eXʚa:ea:eXʚa:ea:eXʚa:ea:ea:ea:ea:eXʚa:ea:ea:eXʚa:e2b2afe07a4b14899d648fd4969200b0a22f7aec0400fa8b656bff32ce1e64450251463fea2ea0aa9d51ae83803bf4b2783c2c5cf30dc020ab7eb087b91b36e87251463fea2ea0aa9d51ae83803bf4b2783c2c5cf30dc020ab7eb087b91b36e878ffb83cc62a147cf3c6e605bde3a1e2868709edf0878d63705eec98c29a85bfe65677f57284ff427daea8caa4c131fa6fd8745cdd42ada51a91adaa5906c43f665677f57284ff427daea8caa4c131fa6fd8745cdd42ada51a91adaa5906c43f666400e51ba50d9281a916cad8c9f0a97841d9f700e28ea91f3b47f0413c9d48bc3891ee6ecae84ba09b78e5c4669fbfd6e5823a229d797a46cb3541c299fbc50c3891ee6ecae84ba09b78e5c4669fbfd6e5823a229d797a46cb3541c299fbc5031f854ebdcc8635bc58b597b687461d5d42b3d4618afa16ed29d73e4606c28175d43468c1c0c57f5945baceb3fb0bbc7e2a347f15c371a49a6f169d45499ab495d43468c1c0c57f5945baceb3fb0bbc7e2a347f15c371a49a6f169d45499ab49662b6f9d9241fec8d00b9f897cf6e1b29cd4f23a5cd013292f1a7b879af16b57821b6dd19aee9914be5edb0cf6f1adcacbc8459a3ea79a395ddf2da178ba210a821b6dd19aee9914be5edb0cf6f1adcacbc8459a3ea79a395ddf2da178ba210a2833bc74a8f8745617f75fdc56754a8b0fbf4c8b5adf71d95189bda65c99473a8cb5f70a6ece2c0a36b671aec5b35da7ed209e8c5d7f871c31241bafb5b42c2f8cb5f70a6ece2c0a36b671aec5b35da7ed209e8c5d7f871c31241bafb5b42c2f949de3f8b89b430a590804f243f23ef856e2f0c1e63f86f24f76c49458fd6ff1616f4569849fdfad1ecff3f02efb39ba923a0ce8cbd175d1bd86e99fe70cf867616f4569849fdfad1ecff3f02efb39ba923a0ce8cbd175d1bd86e99fe70cf8678177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrteval-2.14-19.el7.src.rpmrteval-common@     python(abi)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.73.0.4-14.6.0-14.0.4-14.0-15.2-14.11.3^^@^}]@]N@]nU]^\t@\e\@YYY@Y@Y@Y@YYX~@X,W$Wu@WW0{WX@VbVwVii@VhVKU5@Ux&U8TZ@Tq@T`S4S2@Q?P9@PP@PO@PO@POyO@MnLrbLMxLF@L@IL@IL=LJUJ@J@JJlJJ@J@Jݦ@JkJkJ@J%J_@J J@Jv@J#J#J@J@Jx"Jf@In@I@I@I@I@I@I@I@I@I@John Kacur - 2.14-19John Kacur - 2.14-18John Kacur - 2.14-17John Kacur - 2.14-16John Kacur - 2.14-15John Kacur - 2.14-14John Kacur - 2.14-13John Kacur - 2.14-12John Kacur - 2.14-11John Kacur - 2.14-10John Kacur - 2.14-9John Kacur - 2.14-8John Kacur - 2.14-7John Kacur - 2.14-6John Kacur - 2.14-5John Kacur - 2.14-4John Kacur - 2.14-3John Kacur - 2.14-2Clark Williams - 2.14-1Clark Williams - 2.13-2Clark Williams - 2.12-1Clark Williams - 2.11-1Clark Williams - 2.10-1Clark Williams - 2.9.1Clark Williams - 2.8.1Clark Williams - 2.7.1Clark Williams - 2.6.1Clark Williams - 2.5-1Clark Williams - 2.4.2Clark Williams - 2.4.1Clark Williams - 2.3-1Clark Williams - 2.2-1Luis Claudio R. Goncalves - 2.1-8Clark Williams - 2.1-7Clark Williams - 2.1-6Luis Claudio R. Goncalves - 2.1-5Clark Williams - 2.1-4Clark Williams - 2.1-3David Sommerseth - 2.1-2David Sommerseth - 2.1-1David Sommerseth - 2.0.1-1David Sommerseth - 2.0-3David Sommerseth - 2.0-2David Sommerseth - 2.0-1Clark Williams - 1.36-1Clark Williams - 1.35-1Clark Williams - 1.34-1Clark Williams - 1.33-1Clark Williams - 1.32-1Clark Williams - 1.31-1Clark Williams - 1.30-1Clark Williams - 1.29-1Clark Williams - 1.28-1Clark Williams - 1.27-1Clark Williams - 1.26-1Clark Williams - 1.25-1Clark Williams - 1.24-1Clark Williams - 1.23-1Clark Williams - 1.22-1Clark Williams - 1.19-1Clark Williams - 1.18-1Clark Williams - 1.17-1Clark Williams - 1.16-1Clark Williams - 1.15-1Clark Williams - 1.14-1Clark Williams - 1.13-1David Sommerseth - 1.12-2Clark Williams - 1.12-1Clark Williams - 1.11-5Clark Williams - 1.11-4Clark Williams - 1.11-3Clark Williams - 1.11-2Clark Williams - 1.11-1Clark Williams - 1.10-1Clark Williams - 1.9-1David Sommerseth - 1.8-3David Sommerseth - 1.8-2Clark Williams - 1.8-1Clark Williams - 1.7-1Clark Williams - 1.6-1Clark Williams - 1.5-1Clark Williams - 1.4-1David Sommerseth - 1.3-3David Sommerseth - 1.3-2Clark Williams - 1.3-1Clark Williams - 1.2-1Clark Williams - 1.1-2Clark Williams - 1.1-1Clark Williams - 1.0-1Clark Williams - 0.9-2Clark Williams - 0.9-1Clark Williams - 0.8-1Clark Williams - 0.7-1Clark Williams - 0.6-6Clark Williams - 0.6-5Clark Williams - 0.6-4Clark Williams - 0.6-3Clark Williams - 0.6-2Clark Williams - 0.6-1Clark Williams - 0.5-1Clark Williams - 0.4-1Clark Williams - 0.3-1- Make sure openssl is installed for compiling the kernel Resolves: rhbz#1826369- Fix iterating through the nodes in hackbench Resolves: rhbz#1826369- Series of fixes backported from upstream to make cpulist work correctly Resolves: rhbz#1752512- Pass node arg as string to Popen in hackbench Resolves: rhbz#1730034- Add missing software requires needed by kcompile for compiling the kernel Resolves: rhbz#1730034- Fix specfile to require >= rt-tests 1.5 - Require xz instead of bzip2 - Fix source url Resolves: rhbz#1746400- Remove --numa and --smp from cyclictest.py to match changes in cyclictest - Similarly remove -n, since numa will be automated without requiring the flag Resolves: rhbz#1724770- Change hackbench to use systopology to calculate online cpus - Fix systopology and misc.py to check whether cpu is online Resolves: rhbz#1698238- raise an exception if hackbench fails to run Resolves: rhbz#1523279- Fix typo in debug output Resolves: rhbz#1659973- Remove redundant files for clarity. Resolves: rhbz1504162- Don't fail if we don't know the init system Resolves: rhbz1504168- Remove underscore from sysread function in systopology.py Resolves: rhbz1504164- Improve error handling if cyclictest fails to run Resolves: rhbz1504159- Remove trace-cmd from Requires, since it is not needed to run rteval Resolves: rhbz1504173- Don't sleep if hackbench fails to launch due to out-of-memory - Instead, exit gracefully Resolves: rhbz1380144- Add sos as a requires since this package is needed to run sosreport Resolves: rhbz1500722- Add the contents of the kernel boot command line to the summary report Resolves: rhbz1452788- removed leftover import of systopology from sysinfo- Updated specfile to correct version and bz [1382155]- handle empty environment variables SUDO_USER and USER [1312057]- make sure we return non-zero for early exit from tests- bumped version for RHEL 7.3 release- default cpulist for modules if only one specified [1333831]- add the --version option to print the rteval version - made the --cyclictest-breaktrace option work properly [1209986]- treat SIGINT and SIGTERM as valid end-of-run events [1278757] - added cpulist options to man page- update to make --loads-cpulist and --measurement-cpulist work [1306437]- stop using old numactl --cpubind argument- added Require of package numactl- rework hackbench load to not generate cross-node traffic [1282826]- comment out HWLatDetect module from default config [1245699]- add --loads-cpulist and --measurement-cpulist to allow cpu placement [1230401]- load default configs when no config file is specified (Jiri kastner) [1212452]- added requires of bzip2 to specfile [1151567]- cleaned up product documentation [1173315]- rebuild for RHEL-7.1 (1151567)- cherry-picked old commit to deal with installdir problem- added sysstat requires to specfile- Migrated from libxslt-python to python-lxml- Made some log lines clearer - cyclictest: Added --cyclictest-breaktrace feature - cyclictest: Removed --cyclictest-distance option - cyclictest: Use a tempfile buffer for cyclictest's stdout data - cyclictest: Report if breaktrace was triggered - cyclictest: Make the unit test work again - cyclictest: Only log and show statistic data when samples are collected - Copyright updates- Fix up type casting in the core module code - hwlatdetect: Add some more useful debug info - Reworked the run logic for modules - allow them to flag they won't run - Fixed a few log messages in load modules - Add a 30 seconds sleep before unleashing the measurement threads- Separate out RTEVAL_VERSION into rteval.version, to avoid massive BuildRequirements- Split out common files into rteval-common- Updated to rteval v2.0 and reworked spec file to use setup.py directly- deal with system not having dmidecode python module - make sure to cast priority parameter to int - from Raphaël Beamonte : - Rewrite of the get_kthreads method to make it cross-distribution - Adds getcmdpath method to use which to locate the used commands - Rewrite of the get_services method to make it cross-distribution- fix thinko where SIGINT and SIGTERM handlers were commented out- fix missing config merge in rteval.py to pass parameters down to cyclictest - modify hackbench to use helper function to start process- modify hackbench cutoff to be 0.75GB/core- update docs - refactor some RTEval methods to utility functions - modify hackbench.py not to run under low memory conditions - clean up XML generation to deal with new hackbench code - clean up XSL code to deal with new XML 'run' attribute - from David Sommerseth : - improve CPU socket counting logic - delay log directory creation until actually needed - from Gowrishankar : - check if the core id really exists (multithreading fix)- from David Sommerseth : - Updated hackbench implementation to avoid overusing resources - Don't show NUMA node information if it's missing in the summary.xml - Show CPU cores properly- added code to hackbench to try to detect and ease memory pressure- fixed incorrect type value in kcompile.py- added logic to loads to adjust number of jobs based on ratio of memory per core- modified hackbench to go back to using threads rather than processes for units of work - added memory size, number of numa nodes and run duration to the parameter dictionary passed to all loads and cyclictest- modified hackbench parameters to reduce memory consumption- fixed cyclictest bug that caused everything to be uniprocessor - updated source copyrights to 2010- modified hackbench arguments and added new parameters for hackbench in rteval.conf- version bump to deal with out-of-sync cvs issue- merged David Sommerseth changes to use hackbench from rt-tests packages rather than carry local copy - converted all loads and cyclictest to pass __init__ parameters in a dictionary rather than as discrete parameters - added logging for load output * Tue Apr 13 2010 Clark Williams - 1.21-1 - from Luis Claudio Goncalves : - remove unecessary wait() call in cyclictest.py - close /dev/null after using it - call subprocess.wait() when needed - remove delayloop code in hackbench.py - from David Sommerseth : - add SIGINT handler - handle non-root user case - process DMI warnings before command line arguments - added --annotate feature to rteval - updates to xmlrpc code * Tue Apr 6 2010 Clark Williams - 1.20-1 - code fixes from Luis Claudio Goncalves - from David Sommerseth : - xmlrpc server updates - cputopology.py for recording topology in xml - added NUMA node recording for run data - rpmlint fixes - added start of rteval whitepaper in docs dir- add ability for --summarize to read tarfiles - from David Sommerseth - gather info about loaded kernel modules for XML file - added child tracking to hackbench to prevent zombies- fix usage of python 2.6 features on RHEL5 (python 2.4)- added logic to filter non-printables from service status output so that we have legal XML output - added logic to hackbench.py to cleanup properly at the end of the test- fix errors in show_remaining_time() introduced because time values are floats rather than ints- added logic to use --numa and --smp options of new cyclictest - added countdown report for time remaining in a run- David Sommerseth : merged XMLReport() changes for hwcert suite- added cyclictest default initializers - added sanity checks to statistics reduction code - updated release checklist to include origin push - updated Makefile clean and help targets - davids updates (mainly for v7 integration): - Add explicit sys.path directory to the python sitelib+ '/rteval' - Send program arguments via RtEval() constructor - Added more DMI data into the summary.xml report - Fixed issue with not including all devices in the OnBoardDeviceInfo tag- fixed Makefile and specfile to include and install the rteval/rteval_histogram_raw.py source file for gaining raw access to histogram data - Removed xmlrpc package during merge against master_ipv4 branch- fix incorrect reporting of measurement thread priorities- ensure that no double-slashes ("//") appear in the symlink path for /usr/bin/rteval (problem with rpmdiff)- changed symlink back to install and tracked by %files- changed symlink generation from %post to %posttrans- fixed incorrect dependency for libxslt- added base OS info to XML file and XSL report - created new package rteval-loads for the load source code- added config file section for cyclictest and two settable parameters, buckets and interval- merged davids updates: -H option (raw histogram data) cleaned up xsl files fixed cpu sorting- Fixed rpmlint complaints- Added xmlrpc package, containing the XML-RPC mod_python modules- split kcompile and hackbench into sub-packages - reworked Makefile (and specfile) install/uninstall logic - fixed sysreport incorrect plugin option - catch failure when running on root-squashed NFS- added kthread status to xml file - merged davids changes for option processing and additions to xml summary- changed stat calculation to loop less - added methods to grab service and kthread status- changed cyclictest to use less memory when doing statisics calculations - updated debug output to use module name prefixes - changed option processing to only process config file once- changed cyclictest to use histogram rather than sample array - calcuated statistics directly from histogram - changed sample interval to 100us - added -a (affinity) argument to force cpu affinity for measurement threads- Cleaned up the spec file and made rpmlint happy- Removed version number from /usr/share/rteval path- changes from davids: * changed report code to sort by processor id * added report submission retry logic * added emailer class- added config file handling for modifying load behavior and setting defaults - added units in report per IBM request- missed a version change in rteval/rteval.py- modified cyclictest.py to start cyclictest threads with a 'distance' of zero, meaning they all have the same measurement interval- merged davids XMLRPC fixes - fixed --workdir option - verion bump to 1.0- fixed problem with incorrect version in rteval.py- merged dsommers XMLRPC and database changes - Specify minimum python-dmidecode version, which got native XML support - Added rteval_dmi.xsl - Fixed permission issues in /usr/share/rteval-x.xx- added code to capture clocksource info - added code to copy dmesg info to report directory - added code to display clocksource info in report - added --summarize option to display summary of existing report - added helpfile target to Makefile- added require for python-schedutils to specfile - added default for cyclictest output file - added help parameter to option parser data - renamed xml output file to summary.xml - added routine to create tarfile of result files- added code to handle binary data coming from DMI tables- fixed logic for locating XSL template (williams) - fixed another stupid typo in specfile (williams)- fixed specfile to install rteval_text.xsl in /usr/share directory- added Requires for libxslt-python (williams) - fixed race condition in xmlout constructor/destructor (williams)- added Requires for libxslt (williams) - fixed stupid typo in rteval/rteval.py (williams)- added xml output logic (williams, dsommers) - added xlst template for report generator (dsommers) - added dmi/smbios output to report (williams) - added __del__ method to hackbench to cleanup after run (williams) - modified to always keep run data (williams)- fixed tab/space mix problem - added report path line to report- reworked report output - handle keyboard interrupt better - removed duration mismatch between rteval and cyclictest- initial checkin 2.14-19.el7Log.pyLog.pycLog.pyomisc.pymisc.pycmisc.pyortevalConfig.pyrtevalConfig.pycrtevalConfig.pyortevalXMLRPC.pyrtevalXMLRPC.pycrtevalXMLRPC.pyortevalclient.pyrtevalclient.pycrtevalclient.pyosystopology.pysystopology.pycsystopology.pyoversion.pyversion.pycversion.pyorteval-common-2.14COPYINGrteval/usr/lib/python2.7/site-packages/rteval//usr/share/doc//usr/share/doc/rteval-common-2.14//usr/share/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=genericcpioxz2noarch-redhat-linux-gnuPython script, ASCII text executablepython 2.7 byte-compiledASCII textdirectory RRRRRRRRRRRRRRRRRRRRR?7zXZ !#,_^] b2u Q{J2NWeͩ~㧻#˅B-]SEksxbkOLi4 3 ^tidC&U%NXYV/d CբvFRS20b%5zծ+5HhgEeCrqM6|5e, -'LB8Cs)0Öi}(B3G]% OؿqE~ Y \8%ޗԹȫD D0r'8%& :9˸' 1Lo9.+w>~p=>UGS%ݖ% vʑ/3%{JQ-EңdF;b]+?Vg4Ji'*=\Zi*wqJBT!yYfX# W7T<6 ;Uč.WJ=Lq?i)Zsl^4p3)fJ6:rښ*ݕ ]<^Dk ro,Gї@q%XCP5w;&LZrV7I^Dww r@ A:!Y3cf`Qj^w!^0!f.Yf^EV`"KZLFЭTw$F#XۉZ2#{FA>^2&jez`50mu5W6kS?/ kc-Qzr ݟ%G*xǍt>R p6ޮHb 8pA$3jg?%ٲ ).p # 푗V F5Ο\[.Ab=X!.mIU#p"qP0S“>6QaUXI"7LH9ҌnPQ=@ )`iy32TIkvz K &2e=pV'#F.ABu@y&xε^T[s2K9!(.DZ`Jj]6ڍv]FK84  a뺚xnOd@\?*Ջț 7M_5 1EHz%qo $:@n*˂-l9@mQFQRJDͯsN,AaE_->SD`dcߊ P ((8o5!֟3֖s2#]6(nVYJ4{~:̻[{)P`Ul|Nڇ˃ݕo^uP(0jcbRm\s~Z/`njAX_v<;+8J9 #^Wg.-{!yАzmjL3ߘVx06\gKxcDk+p54ȄǶ7N2bqE b0)^y0 o^UK@@ulBԗJU.d }ql#bzgyB iV烀j?Gw 7' M2O)zZ `2=4xz>r>wds#ŇS :bԾamkßt׌JbC'2Ek&d]怹kq3T1l*^~^ U<7{@TIՖڪ4pr-݇HtZӘMS;>\IIBݰT:?8.bdl,Z+=/;s6H-t<7t1aKŐ~fe\[g0wYrn㮾)pIJ^x@3u^"U 29U)>Xv.Cv2}YQUGҨnҎzO(7ps@I>Z+ 7s/4VqY)_n387C. W`Е7Tw!0Ufp]$@pG*>\t#/L( #>l&?ZU%{ I7MZu7c/bhaҺU[4E?G984ZnSb}v;H^ ?v'P_M&+z`ٹR~62g76B*Vqم$Tbc9_(ha}=D:".gLZiΥiljB@?nHgȡ'b'tBTÚ'#=b^c&~6=T^f"`J.*."N:CYPeuc,aG-ϔKᦀ t麵YG(]|{Ue Jg}~m [CA vH[^Mي{vRUZH3R 0v5Kr)G$6!k \&e 8|rw5T-uԄ*ѹ11 3-}s J*S˯ƾP3X6ܸ_  =HAQq_B 灌Mv?Ef}W-K_C+2av̔ 8{H>;5f5̯v $L媎B\qPhrZC-);.49;ahj&%t<EiE$U@E PAM8&x'(}FD \obfTy82JU9u2itO@vUk*0,Ռ~gTtm!&wn\nVZy~cb1f:BةP|*y;=/8n>A73J᪎6gӆvC_t)$Ԑ0 mQ_[tsa&K:#'6Z50k R$3?Ϩ(6RʁΥXYݙJMex)׏zMZoz44X}3q\H&, ̳B^݀\JYbNt!6_6{o]GQ:r(N.\nҳGøzXaQly"%S[;۱1`o](: YvI^cj(xWx~(FxpE kV ELb/q&/Z,9=Or .UjqՃؽBLCzh  $Ǐ=-TghSLW*ОcZj,9=l jŁTd}9Kp8ћILhd4ے h%>T͸!'83RYO+mMD f H4su!l+/ɐh' гdIx_itr5g鑠Dru9a X+C0JG̃iƼZ A }[B8^*;S\f,- B)=r7o7^9[L߽1/ Is0jkIf^x`H P]xdf\md%gTW> c :G2Ep-{ 0s)nsf0aЙb*] Cl*Ώ+?L $>tՠ_78XR@1i:GA! ۶'P*G%Dx$,m}XvMwVs7i2Po08Hgb@Bm{QH0ôi$Υb3*#Խ{;ꗗ12i43dKU()E9em5ёzmVԟV r4ĸ GxU&:KJ7&#r+ĸu%Ed{Js>+26=ѿ t}AƆ[ Iԓ;wq3LK{ ؿ`@v 4kXdO$V;tL-+̩CSnrmܐ7 .,`VQsS8Ron4hEv >؞yt076Ċ@K%cߥeR4N'$| } _ 5}aѤ>vctr\'DrzUV3a!BVOͱ#eȷ eVRґ S9dK` NfcvINœ._4}5?nsNOpN}0$˰noS!fo*ſoZ:1x9W,#"<~ĎRneN>沍56xĤՒ(Kie4屛mGY1 JBWHt| hDmnC90 p`fZkAV%^=k<6yM0KboZ^n_l Rd$"} HGrmr_C-3>K\]9QG"]RX2A=5@{|3qoq/z]5,ېt'&!L3LRr##aY֪l7IgYf`cW]\_UBu(XH_::Sl L%-%#35XCS' )CF"7^8aU~8`6Ϡ% >w DVb6d3J n}cր֬zhȀz: C3 ʤ|ϣeoFINn2 zfO~[ؚ]F")rChAJf+"(ո]) ]`c+c5]>r4dtͦTJ.2#f䫡%tuϬa/Bj!5*G>Wf..οͻI!}oqBu%]imQP¸@W_EsU@$>6Ut)P{_!˄ )m ya&QHL|kz{SOQ$̀az4>D'<} zks>x ΨҴx8b<⒝kGoSs#&Nfj!Zw}am/$WYa%\w'Z$Xʯ!N ٪IN~ᴗ>'B.zM] sȼ3֋%n.Oe#7#czi)2UY=9DLQC#!ZG"ȫ* Ӊ-okDW\. ghJTqD (P@e0Cwt{)kaWWxePcu*bR]x1p\o~xŅKݻ;x;H!31D#asw*2*DY+hRD4[#F{-qts=?e 2$9)V{60Cc4^'{"(fA{$l72f_Fܿz,܈k%'OEF5Bʇl\4WgECL -9=UA;pnـh}S`=nqaB&kԓ,۴wWD psC1Iw"ﺝ`j_#ܐ)HMVsɻcg*[ z<΍/?&!h{iM^Vdpr|`=bqlZ̔ CF1˩Q#7$,E)}ݵ}@MV:NYc/69Ue^&cImS\ϰ{>2!FshT*$klů|ˌ{O Tz.{ʛ`$6 g.<2/'}CR{] ׍8@b^ x7oirAUDF.L`4)RJ|g!PNbA^XTzg EiɊD*,e~bKx"`Sz7@7eof# l*Ws! -`ҧlrn˚u7T6jܻ܉#ϣ8lԗLNZ̒)1>9|0/c!A:j}`+QVKݐC(@f!p(NK&LLMDP[3*(xXmC| IȿFUL zEޫb#{:'M3x"_Zʽ$9=H!;8٬sweƋrP%рbD7xe[DG0p w*}䙉=n}Ph*6mG{v2" "79 Jp'j#qa T2 IQpZJspCcXt6-C0}蟷z7Y9Dȭ-W56xQkp[SҊ;-T[@ɡD>MՖp~='*^Nnޕu]G>)q[p.ZmQv}$S;)Wg_(A?aյe:q5V}^1^*q?Xy C\y B%U'u-Lqsjf[N#DwO7A#GV9}t q j -Ls6Zɋ&ԝ 'ib[<=\oK%PyAE`qn/KXmGB`mnrEF AWH)%\LU{P_ 2 uQHꎄ᳛K9 A umqn#*ӈi_2ZM_D:L_#@,QSroXl -6 .: pC[hջ,'OK=X9¬:&W#o tɈ%V!ztusS-qbՓ,PMK S$5%ENkۼ;B!Jo4Fx܀B(3{&uilFʛ)QdԕϾ)|Հ*rw5O`j)XR۶ B1F 7o^GdED>@X]>2m˰WB/7֬<G`_8Kˉ(bdOػDJvj꠿2=O.?v,yAtך`@"H4j'_Ǭ9gvdkzeh_u\<\yR,H þ:ykA{}J'S/y6VN-rLFf}3^FLTYi 1j4'4Bc}5.}Xgd[4zTϖmaf=\gмXL>pܯA Ɲ:I Yr+^s4 Lz`D#G{jѭ7^"/FߧPpEmMͅdxt8 W9 +Ŝ:"Gd]h3i^U!eڰ ?1(-ƑIBn00ld&ݖpvL"3&8SaDX;d6/e3w5Ic[YK^aY/͈:6`~rzP<1QfJfg冂Q&ȃNTI}£3rEu5~;pWGhi 3(f#z$H++=FD/78g·i $16j F4N!Kgrp{(=—K4+ C3tsg Q#!" ݹVuJGbBh*)TH`eNARMhrr ߭u#ZJ).z[5ZYE9kbڇ+@/a{2]J pn*pi~!8W5gD3`4$mJr#-1z]H)x i+$2Qe,(y\;פzSd67Wzs8 ܷP߷frfN%!aJ tOO)T?OHD;+{-*7C%wVUCԟAE% 5X$!{vR{2o R;ƣl_[&P?z ›aKO}+Oxc^+a 8vf5mY&BtG9^d`i,ScǠ?X* *0T|[Т{ )-  y JulM';ض`;33JS}`z>O25_;"]l ه/<8_eBY -<(cH# gn9]3#)SЮ/m\E@5) `ZEq8gV uʹGrNT&كV+*b[ 3Z:6R%xUr$W!keF&n2Y2u!TaT/w |ɍFVN W#a.uGa&3d)P cEC۠;LG4%O|@& nBmn1Ht>^N!`]_/Ȃ IķDUy\-KVFN-Cu)MqIwD~E4)P3(ZC9;㤈uf? L*9j0 Ta6\.%Ú4v(0Czud#)|\rk8;v$BAPkɭ\wtmq3:!7>AzXk$oM3޿ R-3s_]=u$ :s,{Ss s`D>?IQt'?L?;, 1ajģy#a]}Zx' o%da-1GuDua!#=Xj4&ʴsW%=VX%>BU۰54d%O}1R@5xZB$R{Wl ( Nb;^3Ut,љdn6x$A"KU:C±F}]W@4v$uT5HȏFXW與ƙɱj - ̕YzIuX)s3CUFDC!_感İZZ8v gc;j7s5GS=ŵy+gXoӥ3,BvZ!VG]#orBA ,Gԉ}[@8 Xg`sQ|v}`;c%eᠯ־V<N0yLA#) Y:\>( V'dT6w~+'GoZL%$2X6q{7rtPQxƹwk`lGD>] qmX~ӑ~rqƇ>o]qb6p@ƣDr7ҪlaeR=e^b}$7n>.8n<~ %C|ݦ\ӾH6bPI+O_~gu$M]5;[C'y3gCQ= 6MM̏7ģR%Z(rAQQ zr*jW,t݁R6<VZprA;-p c+- 9 蛽h ,,%ꕌ5CQN8.T=Vg۝EwQ"wdKÑ S$V}SwgL|J.ŇAl`[OupJO Nu`k&$p+Oc^$t8&"%R͵ ..x  lD}^MIv`ڣ;Mz>Rd,䏠J `ߋ~ODRX@<{FA՛6>ûwu bM,E!h*+0dYvPs>lMWT L#{zdLd{psH1P#M ᾛd%3 I΁]S#;xQ,SiNW7awDLڭ%z7/&|cv>,s!{֪^oaX,(aWΗB4OrD)%pu<属zG ^p\ώ-hHYE.#]o.Ch*yd!|ܩأɃ{jFk/ jmU^ș+=sskN^|G^}ws.u`]U ~87r}=UG9D Q]W޸SwW+N| ɗPwľ!luocfh>V'{GB077Iq fUxxzbAfF#)QQFlΌz{mذ* Δ><l]6r24'''sSrI Nx? 9P`1HiIyh hu&ExiN۸W/2kjd^?T jQc >e;]MbLT.v,ҫCa7-'mHdRsS>a}-[-psI^Y00롽&$`~5Z؇}GxM* ũsol'[Z'F75#VGq%5lw"ay)u 6tlL%Jsڟ'wj֛G[q"H#иIHR"x60&eF?'P+$r`iݎϠP~Ѵɤ<6B7j\5׃F&6^zH;qsG͕9it=)(Ǝqt}=t@dvJ%^)m-maHA 9  kGCGq]ᾳ;z^һ]3Dab3D7j1*qJ?bpgѓzJ]5Y@[ A,Uox/Q_`;{YDS\Ep>#Ñ9+wyM=$&3ގ=+f`qBYՎoS\WXE* ksPN|%W,^)zM l C-v]DO>/5S08>M-/M<אɦK=Ɏϱ̬`j>drl(j Lfۙ.] bсQC+ƒՎY#vB@ $9OwVnpfJu+OGWCzDBhˆEa.iF٠\((E A8YGo!O : 2|]bK6 ܈<'jsLr([#(+ 9]&6Pl? Ǡ7&iݫexdnސJ&WS&?+ajT>L<d8 ^kgT&<@?Țr;if urH+Ȕfm喼= j'_jb ZkxN; \6ŠLRU*{7 ͗7:y36דH0(kf9~jV8{}Ofet@$)``+;C! R??(D%ch(,ܧO@E (@l#ȏo]u}dY >, m4 ХޘFFd8u*~efkĄNs)DMFWsHHGm[JkS^&=j+LFF/o俭~"ؗNe/a ??/wk9#0:@ B0FW H/׺x}* DE*[>7sDT|c+ L2=DJePqfOS\)^W{ZkI ӗKDf v՚~om[2-"4CpiezRvx]؋0@7s LElkL@/A,is.*:Aioi C(%iXgX!QR=-w۹0׌`|V3]oT 1NƓ@K= @ yVu 4e,홢lL|H\V0guk{+_BH'?*!,9R`by{Rۈgy кi>d9\C6qɃusҷ-;Gm #eֺ+(]@rn}SrJ^|+dؚo Gnp[(ԥV0:X5P9@)¹]X\\;bE-5ai;mvG.Qڔl(X&TZOSR3ȫ1逼Hяi4e.UΗ}TL'{9O͍3(0,kBtnfG+Vރ~LexZ/!"=RImzjWg@|*Xbbo:=$U%2M73t?ns@2ڣVH^d)6j61[>܋""?!"ޥ4-'ϣ`!؁sH۫Lk]16p>K{`~x1YWhLAO{HE6Y Y~Ub%ɯGGI?[7bѧ9; ]x+<;\%'[S l0t)[:-7@MPSɅUa! `.*Du l? 1s;W$:CXbaS!=oX#8^Gx6hոC 60"~H ![0 ]uԊ1t[^ia?G_p܃(~ ,Z)׽];Sg*^raE*q aN6E5.b d8s/48@mdO:cEu$0-IVQ^L6uLOMN) Rȯ(ham{Rv(Z9-MGJg'"B3zM$݁6lGHOEeK0"i4hɡ/ 6uD$&D!Z^8k ]E{1<7›OW |BفAyǼ[%++=e 6 !0`M("4+*J@`qNWu> F΍+nvW9u:ችD4sHTgT8:a )Z0^ L8E)Rx68-vgo4{0\9v)A#?K4+ Jd&4b"rsQЈW5w9"n\V;X,T[MNzN2{y]_\Š;YdCa1ݩB[ {D(RhgKO馦ɋ0VAn@aŜ7'HD[k:Sq:8>O3O1=ٯCM\8wـNO.AEρpE#[j02-?/ oEy+OC,T)MP*ɖϨ__N&(e'uV=#:4R#=P*ЏBgJS6 pa?E4 0i˼ژD⻃q b>xYo-4q]$Ίʹֵ>)n]{,RON攅|=3**m:MM77j38 ;E" )Ns&x~ 45Ճ\ L$x<cc_8$n8U⭼1^fZ1Cm2qt8f6~rge\fF]q}EⰄT L$ (efZ(9!kQ=P0Z(c"n9PJ_/*o\7n]} oH<7~^]qHaYQgq7VCz]wfnp̝(o!b/#)f3]&!`hjp8յI7P2"z;[iv[hJjHw] 0x?C4v((y\BdhAtR"ݤCR\]-hNj@80cSkzAo=]LmC8yKG~p`ʧ53`CRB0ve.nJaw]0GYZ;ێR 25[xrl-TEk{7N=d;M(H24udE,5n*u~@_Xi\= 96sbD0TBj @ӣ~Vg6i9"X~|`t\q- ;Fs\D׶̤ o]IQ,31@OD5]j{Sp%bm# 2v8OmBKiE[ێ@4*k+^Ôқ#s{aXVi|P: _&B:`X e~wJq,u=iS۷|Q,H2V[/$>j7NYRZǻaa,1WCI ?BG'qW?٣tC`~O~f0Qo<3&~q]$`h dt 4KL Д #٤rc R"|~|;͇$Y4}.Of\(Jwŗ}ծwFMNXX>y{M2?ֈjy;b$alPƱ)y9LmK$IFgPW\Im,@/H 9a5{&: '|T+勭F{}GqG|WFߓi 5s$D|6+ʶhѬ*/\շVQ>AX+?O¨T=#ft%ǿ 6E̲zT6> ikۜ]1#,]P3b5t?dbB+}8zUȰ#Y;xGऱȾg,&0]d?3Zmo-\%gsᦜ6 <ԝ ]>lMi LG4cdU6(d 2LYǖ]̵t() "^VO C!} əgKyR"W$H!w0ɾn˙3*r_ѫg/a^Xͮwnʥ r5eFZT^QBӒZ{B\0vo=Rw<9)5{ 箜J!i<6ԵMo2_c*ibl:8z19Kk&~mi1)G@z!sMZJGmG%Z#JjۮLTȼPƤS`X/xnf|C'/ykۤ&eki"JO%QgEYPud,3Y'%%_S,Qd*5xqCE P(t]ɋ揷XOD`&9ݷ/4 >?[zHT9Wi&C?B>L}k^2H!ؽ'w]`wRnx|W%!#(ŔɴapFdrf"WW ى{Y^<9!瀺B3K˕5r%r-WE՞LTaUG  s}DVϼ 2Nw ݟooL0 Z2ШSeoR`i"V۸[䀕 ::@ATxǏM_"R Z^IA69rO%rx>XKM"n?a-]2}ȑPvjxl:C[ Q'BqvÃ2?*TKwUo].{Tp~4տcLAnaD&;?4;\7z 4ꊁ?pЩ)9žIʨghxĺ_D>zt[le> ZxP}|;KYi#ݪP(D~˒4n絜M.(%-Йq0ϥ)Xz=YG|8T@#U <1˂͍ |3Gcn,Q9<- f&CWB9GKi'Wւ1.,UN"~D<%V/6m' qTK T"!WN+d̈r V VY)2 Hcn"'07w)J+ w#d녴q-f$bh vGMO \x4u/F|{e.jCDLm{W<"tx`cL2s&B9Pb.v,|R#bZSTgoҦXv7E"0TUEY x9 4h>(MZd׾jlSg6bUl,|IRLX˰}OL@̿l5 YZ