solaris/0040777000000000000000000000000013153453311007467 5ustar00solaris/EUMefts-agents-3.00-23.pkg0100777000000000000000020426300013153453311013570 0ustar00# PaCkAgE DaTaStReAm EUMefts-agents 1 68834 # end of header 070701000061a3000081a400000000000000000000000159ae5461000000fc000000660000000300000000000000000000001700000000EUMefts-agents/pkginfoPKG=EUMefts-agents NAME=EFTS Agents dissemination software ARCH=sparc VERSION=3.00-23 CATEGORY=application VENDOR=EUMETSAT EMAIL=peter.hardman@eumetsat.int PSTAMP=Peter Hardman BASEDIR=/dissemination/COMMON/EFTS_AGENTS/SU/Releases/3.00-23 CLASSES=none 07070100006195000081a400000000000000000000000159ae54610000274e000000660000000300000000000000000000001600000000EUMefts-agents/pkgmap: 1 68834 1 d none DataUnits 0755 root root 1 f none DataUnits/CheckerAgents-Reference.xml 0644 root root 1934 29956 1467209732 1 f none DataUnits/EFTS_AgentsServer_wrapper.conf 0644 root root 5001 37864 1467209732 1 f none DataUnits/EFTS_FtpConnectionChecker.xml 0644 root root 1651 4870 1467209732 1 f none DataUnits/EFTS_PollAgent.xml 0644 root root 12530 51593 1467209732 1 f none DataUnits/EFTS_PreProcessor.xml 0644 root root 3056 52680 1467209732 1 f none DataUnits/EFTS_PushAgent.xml 0644 root root 12811 10137 1467209732 1 f none DataUnits/EFTS_xferlogGemsTranslator.props 0644 root root 844 59335 1467209732 1 f none DataUnits/GEMS.props 0644 root root 2815 25852 1467209732 1 f none DataUnits/GroupAgents-Reference.xml 0644 root root 1077 23275 1467209732 1 f none DataUnits/JobAgents-Reference.xml 0644 root root 815 403 1467209732 1 f none DataUnits/PollAgents-Reference.xml 0644 root root 1928 29386 1467209732 1 f none DataUnits/PreProcessorAgents-Reference.xml 0644 root root 1847 22629 1467209732 1 f none DataUnits/PushAgents-Reference.xml 0644 root root 1928 29409 1467209732 1 f none DataUnits/README.txt 0644 root root 1122 31740 1467209732 1 f none DataUnits/TemplatePropertyValues.props 0644 root root 1731 34539 1467209732 1 f none DataUnits/checkpoint.xml 0644 root root 52 3919 1467209732 1 f none DataUnits/default-project.xml 0644 root root 1253 45108 1467209732 1 f none DataUnits/demo-project-unix.tar 0644 root root 20480 17786 1467209732 1 f none DataUnits/demo-project-windows.tar 0644 root root 40960 63856 1467209732 1 f none DataUnits/efts-agents-mandc.jnlp 0644 root root 2118 52369 1467209732 1 f none DataUnits/gems-to-transfer-log-translator.props 0644 root root 232 21372 1467209732 1 f none DataUnits/preferences-editor.xml 0644 root root 2726 49778 1467209732 1 f none DataUnits/preferences-monitor-and-control.xml 0644 root root 2785 55569 1467209732 1 f none DataUnits/preferences-server1.xml 0644 root root 4571 19543 1467209732 1 f none DataUnits/redirect-links.txt 0644 root root 0 0 1467209732 1 f none DataUnits/secretKeyFile 0644 root root 8 525 1467209732 1 d none DataUnits/test 0755 root root 1 f none DataUnits/test/AlternateConfig 0644 root root 0 0 1467209732 1 f none DataUnits/test/GEMS.props 0644 root root 3036 38142 1467209732 1 d none DataUnits/test/LoadTest 0755 root root 1 f none DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs.xml 0644 root root 2432 935 1467209732 1 f none DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs_MultipleBlocks.xml 0644 root root 3282 2332 1467209732 1 f none DataUnits/test/LoadTest/LoadTest_PreProc_Test_WithRefs.xml 0644 root root 2177 46365 1467209732 1 f none DataUnits/test/LoadTest/LoadTest_Push_Test_WithRefs.xml 0644 root root 2526 8709 1467209732 1 f none DataUnits/test/PreProcessorRefFile.xml 0644 root root 1663 6273 1467209732 1 d none DataUnits/test/PreProcessorTest 0755 root root 1 f none DataUnits/test/PreProcessorTest/PreProc_Bzip2Test_WithRefs.xml 0644 root root 1897 24737 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_DecompressBzip2Test_WithRefs.xml 0644 root root 1896 24544 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_DecompressGzipTest_WithRefs.xml 0644 root root 1893 24473 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_GzipTest_WithRefs.xml 0644 root root 1903 24999 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_NoBlockHousekeepingTest_WithRefs.xml 0644 root root 1799 16700 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_PluginTest_WithRefs.xml 0644 root root 2659 13342 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_Test_MultiBlock_WithRefs.xml 0644 root root 3784 44135 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_Test_WithRefs.xml 0644 root root 2422 1018 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_Test_WithRefs_OptionalCopyTo.xml 0644 root root 3733 41583 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_UncompressBzip2Test_WithRefs.xml 0644 root root 1891 24359 1467209732 1 f none DataUnits/test/PreProcessorTest/req-file.templ 0644 root root 1179 10654 1467209732 1 f none DataUnits/test/README.txt 0644 root root 860 7584 1467209732 1 f none DataUnits/test/TemplatePropertyValues.props 0644 root root 3211 1547 1467209732 1 f none DataUnits/test/TransferRefFile.xml 0644 root root 11007 57633 1467209732 1 d none DataUnits/test/TransferTest 0755 root root 1 f none DataUnits/test/TransferTest/Poll_Test_WithRefs.xml 0644 root root 2252 52589 1467209732 1 f none DataUnits/test/TransferTest/Poll_Test_WithRefs_Http.xml 0644 root root 2460 5831 1467209732 1 f none DataUnits/test/TransferTest/Poll_Test_WithRefs_MultipleBlocks.xml 0644 root root 3306 5216 1467209732 1 f none DataUnits/test/TransferTest/Push_Test_WithRefs.xml 0644 root root 2346 60188 1467209732 1 f none DataUnits/test/TransferTest/Push_Test_WithRefs_MultipleBlocks.xml 0644 root root 3493 20465 1467209732 1 d none DataUnits/test/TransferTest_SymbolicLinks 0755 root root 1 f none DataUnits/test/TransferTest_SymbolicLinks/Poll_Test_WithRefs.xml 0644 root root 2355 63289 1467209732 1 f none DataUnits/test/TransferTest_SymbolicLinks/Push_Test_WithRefs.xml 0644 root root 2421 2559 1467209732 1 f none DataUnits/test/TransferTest_SymbolicLinks/TransferTest_SymbolicLinks.tar 0644 root root 7680 40242 1467209732 1 f none DataUnits/test/directory.xml 0644 root root 1749 22982 1467209732 1 f none DataUnits/test/secretKeyFile 0644 root root 8 525 1467209732 1 d none bin 0755 root root 1 f none bin/README_UNIX.txt 0775 root root 346 28939 1467209731 1 f none bin/README_WINDOWS.txt 0775 root root 3660 38677 1467209731 1 f none bin/commander.sh 0775 root root 1956 11985 1467209731 1 f none bin/efts-agent 0775 root root 23175 59448 1467209731 1 f none bin/generate-encrypted-password.sh 0775 root root 1546 56325 1467209731 1 f none bin/genericPluginWrapper 0775 root root 16704 4347 1467209731 1 f none bin/genericPluginWrapper.2 0775 root root 19088 51230 1467209731 1 f none bin/genericPluginWrapper.3 0775 root root 25987 26225 1467209731 1 f none bin/lookup-value 0775 root root 6550 42814 1467209731 1 f none bin/message_utilities.sh 0775 root root 3711 9937 1467209731 1 f none bin/run-command.sh 0775 root root 58 3874 1467209731 1 f none bin/run-config-editor.sh 0775 root root 2184 30931 1467209731 1 f none bin/run-monitor-and-control-app.sh 0775 root root 1955 11959 1467209731 1 f none bin/run-server.sh 0775 root root 1959 12036 1467209731 1 f none bin/runLoadTestTestSuite.sh 0775 root root 1931 20630 1467209731 1 f none bin/runMainTestSuite.sh 0775 root root 1170 28391 1467209731 1 f none bin/runSecureFtpTestSuite.sh 0775 root root 1224 33018 1467209731 1 f none bin/runSymbolicTestSuite.sh 0775 root root 1299 39894 1467209731 1 f none bin/testJobStart.sh 0775 root root 1358 37909 1467209731 1 f none bin/testJobStop.sh 0775 root root 288 25054 1467209731 1 f none bin/testPlugin.sh 0775 root root 205 16185 1467209731 1 d none docs 0755 root root 1 f none docs/EFTS_Agents_User_Manual.pdf 0644 root root 9793053 6633 1467209729 1 f none docs/EUMETSATLogo-16.ico 0644 root root 1150 2090 1467209729 1 f none docs/EUMETSATLogo-64.ico 0644 root root 16958 46076 1467209729 1 f none docs/LICENSE 0644 root root 1955 16857 1467209729 1 f none docs/changelog.txt 0644 root root 3092 8064 1467209729 1 d none etc 0755 root root 1 f none etc/efts-agents.cfg.template 0775 root root 7220 64112 1467209731 1 d none etc/init.d 0755 root root 1 f none etc/init.d/efts-agents 0775 root root 11065 50734 1467209731 1 d none lib 0755 root root 1 f none lib/EFTS_Agents-full.jar 0644 root root 5594899 22423 1467209730 1 f none lib/EFTS_Agents.jar 0644 root root 1370636 21238 1467209731 1 f none lib/GEMS.jar 0644 root root 253489 49269 1467209729 1 f none lib/activation.jar 0644 root root 54829 5833 1467209729 1 f none lib/castor-xml.jar 0644 root root 813718 10186 1467209729 1 f none lib/castor.properties 0644 root root 10462 54900 1467209729 1 f none lib/commons-logging.jar 0644 root root 52915 39510 1467209729 1 f none lib/commons-net.jar 0644 root root 280983 41144 1467209729 1 f none lib/cron4j.jar 0644 root root 36000 58529 1467209730 1 f none lib/edtftpj.jar 0644 root root 179356 64135 1467209730 1 f none lib/j2ssh.jar 0644 root root 355141 18875 1467209730 1 f none lib/jakarta-oro.jar 0644 root root 65261 5569 1467209730 1 f none lib/javaunix.jar 0644 root root 32972 56078 1467209730 1 f none lib/jcommon.jar 0644 root root 309293 9659 1467209730 1 f none lib/jdom.jar 0644 root root 153115 29736 1467209730 1 f none lib/jfreechart.jar 0644 root root 1425744 47914 1467209730 1 f none lib/jsch.jar 0644 root root 249282 58042 1467209730 1 f none lib/junit.jar 0644 root root 121070 64691 1467209730 1 f none lib/libjavaunix.so 0644 root root 864820 44072 1467209730 1 f none lib/libjavaunix.so.aix 0644 root root 1322483 49990 1467209730 1 f none lib/libjavaunix.so.linux-64bit 0644 root root 294567 61780 1467209730 1 f none lib/libjavaunix.so.redhat-linux 0644 root root 368605 21668 1467209730 1 f none lib/libjavaunix.so.solaris10.sparc 0644 root root 426132 30449 1467209730 1 f none lib/libjavaunix.so.solaris10.x86.32bit 0644 root root 425736 17343 1467209730 1 f none lib/libjavaunix.so.solaris9.sparc 0644 root root 864820 44072 1467209730 1 f none lib/mail.jar 0644 root root 344516 38504 1467209730 1 f none lib/prefuse.jar 0644 root root 576017 7015 1467209730 1 f none lib/s_EFTS_Agents-full.jar 0644 root root 5972950 29072 1467209731 1 f none lib/wrapper.dll 0644 root root 207872 56641 1467209730 1 f none lib/wrapper.jar 0644 root root 107019 9902 1467209730 1 f none lib/wrappertest.jar 0644 root root 59514 20777 1467209730 1 f none lib/xerces.jar 0644 root root 927669 20185 1467209730 1 f none lib/yguard.jar 0644 root root 362115 40098 1467209730 1 d none lockfiles 0755 root root 1 d none log 0755 root root 1 i pkginfo 252 20917 1504597089 1 i postinstall 1185 16521 1504597089 1 f none prototype 0644 root root 7128 51757 1504597089 1 d none terminate 0755 root root 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!070701000061a3000081a400000000000000000000000159ae5461000000fc000000660000000300000000000000000000000800000000pkginfoPKG=EUMefts-agents NAME=EFTS Agents dissemination software ARCH=sparc VERSION=3.00-23 CATEGORY=application VENDOR=EUMETSAT EMAIL=peter.hardman@eumetsat.int PSTAMP=Peter Hardman BASEDIR=/dissemination/COMMON/EFTS_AGENTS/SU/Releases/3.00-23 CLASSES=none 07070100006195000081a400000000000000000000000159ae54610000274e000000660000000300000000000000000000000700000000pkgmap: 1 68834 1 d none DataUnits 0755 root root 1 f none DataUnits/CheckerAgents-Reference.xml 0644 root root 1934 29956 1467209732 1 f none DataUnits/EFTS_AgentsServer_wrapper.conf 0644 root root 5001 37864 1467209732 1 f none DataUnits/EFTS_FtpConnectionChecker.xml 0644 root root 1651 4870 1467209732 1 f none DataUnits/EFTS_PollAgent.xml 0644 root root 12530 51593 1467209732 1 f none DataUnits/EFTS_PreProcessor.xml 0644 root root 3056 52680 1467209732 1 f none DataUnits/EFTS_PushAgent.xml 0644 root root 12811 10137 1467209732 1 f none DataUnits/EFTS_xferlogGemsTranslator.props 0644 root root 844 59335 1467209732 1 f none DataUnits/GEMS.props 0644 root root 2815 25852 1467209732 1 f none DataUnits/GroupAgents-Reference.xml 0644 root root 1077 23275 1467209732 1 f none DataUnits/JobAgents-Reference.xml 0644 root root 815 403 1467209732 1 f none DataUnits/PollAgents-Reference.xml 0644 root root 1928 29386 1467209732 1 f none DataUnits/PreProcessorAgents-Reference.xml 0644 root root 1847 22629 1467209732 1 f none DataUnits/PushAgents-Reference.xml 0644 root root 1928 29409 1467209732 1 f none DataUnits/README.txt 0644 root root 1122 31740 1467209732 1 f none DataUnits/TemplatePropertyValues.props 0644 root root 1731 34539 1467209732 1 f none DataUnits/checkpoint.xml 0644 root root 52 3919 1467209732 1 f none DataUnits/default-project.xml 0644 root root 1253 45108 1467209732 1 f none DataUnits/demo-project-unix.tar 0644 root root 20480 17786 1467209732 1 f none DataUnits/demo-project-windows.tar 0644 root root 40960 63856 1467209732 1 f none DataUnits/efts-agents-mandc.jnlp 0644 root root 2118 52369 1467209732 1 f none DataUnits/gems-to-transfer-log-translator.props 0644 root root 232 21372 1467209732 1 f none DataUnits/preferences-editor.xml 0644 root root 2726 49778 1467209732 1 f none DataUnits/preferences-monitor-and-control.xml 0644 root root 2785 55569 1467209732 1 f none DataUnits/preferences-server1.xml 0644 root root 4571 19543 1467209732 1 f none DataUnits/redirect-links.txt 0644 root root 0 0 1467209732 1 f none DataUnits/secretKeyFile 0644 root root 8 525 1467209732 1 d none DataUnits/test 0755 root root 1 f none DataUnits/test/AlternateConfig 0644 root root 0 0 1467209732 1 f none DataUnits/test/GEMS.props 0644 root root 3036 38142 1467209732 1 d none DataUnits/test/LoadTest 0755 root root 1 f none DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs.xml 0644 root root 2432 935 1467209732 1 f none DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs_MultipleBlocks.xml 0644 root root 3282 2332 1467209732 1 f none DataUnits/test/LoadTest/LoadTest_PreProc_Test_WithRefs.xml 0644 root root 2177 46365 1467209732 1 f none DataUnits/test/LoadTest/LoadTest_Push_Test_WithRefs.xml 0644 root root 2526 8709 1467209732 1 f none DataUnits/test/PreProcessorRefFile.xml 0644 root root 1663 6273 1467209732 1 d none DataUnits/test/PreProcessorTest 0755 root root 1 f none DataUnits/test/PreProcessorTest/PreProc_Bzip2Test_WithRefs.xml 0644 root root 1897 24737 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_DecompressBzip2Test_WithRefs.xml 0644 root root 1896 24544 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_DecompressGzipTest_WithRefs.xml 0644 root root 1893 24473 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_GzipTest_WithRefs.xml 0644 root root 1903 24999 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_NoBlockHousekeepingTest_WithRefs.xml 0644 root root 1799 16700 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_PluginTest_WithRefs.xml 0644 root root 2659 13342 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_Test_MultiBlock_WithRefs.xml 0644 root root 3784 44135 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_Test_WithRefs.xml 0644 root root 2422 1018 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_Test_WithRefs_OptionalCopyTo.xml 0644 root root 3733 41583 1467209732 1 f none DataUnits/test/PreProcessorTest/PreProc_UncompressBzip2Test_WithRefs.xml 0644 root root 1891 24359 1467209732 1 f none DataUnits/test/PreProcessorTest/req-file.templ 0644 root root 1179 10654 1467209732 1 f none DataUnits/test/README.txt 0644 root root 860 7584 1467209732 1 f none DataUnits/test/TemplatePropertyValues.props 0644 root root 3211 1547 1467209732 1 f none DataUnits/test/TransferRefFile.xml 0644 root root 11007 57633 1467209732 1 d none DataUnits/test/TransferTest 0755 root root 1 f none DataUnits/test/TransferTest/Poll_Test_WithRefs.xml 0644 root root 2252 52589 1467209732 1 f none DataUnits/test/TransferTest/Poll_Test_WithRefs_Http.xml 0644 root root 2460 5831 1467209732 1 f none DataUnits/test/TransferTest/Poll_Test_WithRefs_MultipleBlocks.xml 0644 root root 3306 5216 1467209732 1 f none DataUnits/test/TransferTest/Push_Test_WithRefs.xml 0644 root root 2346 60188 1467209732 1 f none DataUnits/test/TransferTest/Push_Test_WithRefs_MultipleBlocks.xml 0644 root root 3493 20465 1467209732 1 d none DataUnits/test/TransferTest_SymbolicLinks 0755 root root 1 f none DataUnits/test/TransferTest_SymbolicLinks/Poll_Test_WithRefs.xml 0644 root root 2355 63289 1467209732 1 f none DataUnits/test/TransferTest_SymbolicLinks/Push_Test_WithRefs.xml 0644 root root 2421 2559 1467209732 1 f none DataUnits/test/TransferTest_SymbolicLinks/TransferTest_SymbolicLinks.tar 0644 root root 7680 40242 1467209732 1 f none DataUnits/test/directory.xml 0644 root root 1749 22982 1467209732 1 f none DataUnits/test/secretKeyFile 0644 root root 8 525 1467209732 1 d none bin 0755 root root 1 f none bin/README_UNIX.txt 0775 root root 346 28939 1467209731 1 f none bin/README_WINDOWS.txt 0775 root root 3660 38677 1467209731 1 f none bin/commander.sh 0775 root root 1956 11985 1467209731 1 f none bin/efts-agent 0775 root root 23175 59448 1467209731 1 f none bin/generate-encrypted-password.sh 0775 root root 1546 56325 1467209731 1 f none bin/genericPluginWrapper 0775 root root 16704 4347 1467209731 1 f none bin/genericPluginWrapper.2 0775 root root 19088 51230 1467209731 1 f none bin/genericPluginWrapper.3 0775 root root 25987 26225 1467209731 1 f none bin/lookup-value 0775 root root 6550 42814 1467209731 1 f none bin/message_utilities.sh 0775 root root 3711 9937 1467209731 1 f none bin/run-command.sh 0775 root root 58 3874 1467209731 1 f none bin/run-config-editor.sh 0775 root root 2184 30931 1467209731 1 f none bin/run-monitor-and-control-app.sh 0775 root root 1955 11959 1467209731 1 f none bin/run-server.sh 0775 root root 1959 12036 1467209731 1 f none bin/runLoadTestTestSuite.sh 0775 root root 1931 20630 1467209731 1 f none bin/runMainTestSuite.sh 0775 root root 1170 28391 1467209731 1 f none bin/runSecureFtpTestSuite.sh 0775 root root 1224 33018 1467209731 1 f none bin/runSymbolicTestSuite.sh 0775 root root 1299 39894 1467209731 1 f none bin/testJobStart.sh 0775 root root 1358 37909 1467209731 1 f none bin/testJobStop.sh 0775 root root 288 25054 1467209731 1 f none bin/testPlugin.sh 0775 root root 205 16185 1467209731 1 d none docs 0755 root root 1 f none docs/EFTS_Agents_User_Manual.pdf 0644 root root 9793053 6633 1467209729 1 f none docs/EUMETSATLogo-16.ico 0644 root root 1150 2090 1467209729 1 f none docs/EUMETSATLogo-64.ico 0644 root root 16958 46076 1467209729 1 f none docs/LICENSE 0644 root root 1955 16857 1467209729 1 f none docs/changelog.txt 0644 root root 3092 8064 1467209729 1 d none etc 0755 root root 1 f none etc/efts-agents.cfg.template 0775 root root 7220 64112 1467209731 1 d none etc/init.d 0755 root root 1 f none etc/init.d/efts-agents 0775 root root 11065 50734 1467209731 1 d none lib 0755 root root 1 f none lib/EFTS_Agents-full.jar 0644 root root 5594899 22423 1467209730 1 f none lib/EFTS_Agents.jar 0644 root root 1370636 21238 1467209731 1 f none lib/GEMS.jar 0644 root root 253489 49269 1467209729 1 f none lib/activation.jar 0644 root root 54829 5833 1467209729 1 f none lib/castor-xml.jar 0644 root root 813718 10186 1467209729 1 f none lib/castor.properties 0644 root root 10462 54900 1467209729 1 f none lib/commons-logging.jar 0644 root root 52915 39510 1467209729 1 f none lib/commons-net.jar 0644 root root 280983 41144 1467209729 1 f none lib/cron4j.jar 0644 root root 36000 58529 1467209730 1 f none lib/edtftpj.jar 0644 root root 179356 64135 1467209730 1 f none lib/j2ssh.jar 0644 root root 355141 18875 1467209730 1 f none lib/jakarta-oro.jar 0644 root root 65261 5569 1467209730 1 f none lib/javaunix.jar 0644 root root 32972 56078 1467209730 1 f none lib/jcommon.jar 0644 root root 309293 9659 1467209730 1 f none lib/jdom.jar 0644 root root 153115 29736 1467209730 1 f none lib/jfreechart.jar 0644 root root 1425744 47914 1467209730 1 f none lib/jsch.jar 0644 root root 249282 58042 1467209730 1 f none lib/junit.jar 0644 root root 121070 64691 1467209730 1 f none lib/libjavaunix.so 0644 root root 864820 44072 1467209730 1 f none lib/libjavaunix.so.aix 0644 root root 1322483 49990 1467209730 1 f none lib/libjavaunix.so.linux-64bit 0644 root root 294567 61780 1467209730 1 f none lib/libjavaunix.so.redhat-linux 0644 root root 368605 21668 1467209730 1 f none lib/libjavaunix.so.solaris10.sparc 0644 root root 426132 30449 1467209730 1 f none lib/libjavaunix.so.solaris10.x86.32bit 0644 root root 425736 17343 1467209730 1 f none lib/libjavaunix.so.solaris9.sparc 0644 root root 864820 44072 1467209730 1 f none lib/mail.jar 0644 root root 344516 38504 1467209730 1 f none lib/prefuse.jar 0644 root root 576017 7015 1467209730 1 f none lib/s_EFTS_Agents-full.jar 0644 root root 5972950 29072 1467209731 1 f none lib/wrapper.dll 0644 root root 207872 56641 1467209730 1 f none lib/wrapper.jar 0644 root root 107019 9902 1467209730 1 f none lib/wrappertest.jar 0644 root root 59514 20777 1467209730 1 f none lib/xerces.jar 0644 root root 927669 20185 1467209730 1 f none lib/yguard.jar 0644 root root 362115 40098 1467209730 1 d none lockfiles 0755 root root 1 d none log 0755 root root 1 i pkginfo 252 20917 1504597089 1 i postinstall 1185 16521 1504597089 1 f none prototype 0644 root root 7128 51757 1504597089 1 d none terminate 0755 root root 070701000064a3000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000000800000000install070701000064a5000081ed00000000000000000000000159ae5461000004a1000000660000000300000000000000000000001400000000install/postinstall#!/bin/ksh # postinstall scriot # 15 July 2010 # Adapts the java lib to the found OS and version # and put in the start script into /etc/init.d # # OS=`uname -p` OSV=`uname -a | awk '{ print $3 }'` CWD=`pwd` #cd /dissemination/COMMON/EFTS_AGENTS/SU/Releases/3.00-22/lib #cd /dissemination/COMMON/EFTS_AGENTS/SU/Releases/3.00-23/lib cd /dissemination/COMMON/EFTS_AGENTS/SU/Releases/EFTS_Agents_2_50/lib if [ -f libjavaunix.so ] then rm libjavaunix.so fi case $OS in sparc) case $OSV in "5.9") ln -s libjavaunix.so.solaris9.sparc libjavaunix.so echo using sparc 5.9 ;; "5.10") ln -s libjavaunix.so.solaris10.sparc libjavaunix.so echo using sparc 10 ;; *) echo sparc version of $OSV for $OS not known ;; esac ;; i386) case $OSV in 5.10) ln -s libjavaunix.so.solaris10.x86.32bit libjavaunix.so echo using intel 10.00 ;; *) echo intel version of $OSV for $OS not known ;; esac esac cd $CWD 070701000061a7000041ed00000000000000000000000759ae546100000000000000660000000300000000000000000000000600000000reloc070701000061a9000041ed00000000000000000000000359ae546100000000000000660000000300000000000000000000001000000000reloc/DataUnits070701000061b1000081a40000000000000000000000015773d8040000078e000000660000000300000000000000000000002c00000000reloc/DataUnits/CheckerAgents-Reference.xml tmp temp C:/efts-agents/log yes tmp C:/efts-agents/log true GEMS 1400000 yes no C:/efts-agents C:/efts-agents/log EFTS_CheckerAgent false GMT+0 false INFO DEFAULT EFTS_CheckerAgent 070701000061b8000081a40000000000000000000000015773d80400001389000000660000000300000000000000000000002f00000000reloc/DataUnits/EFTS_AgentsServer_wrapper.conf#******************************************************************** # EFTS Agents Server Service Wrapper Properties # #******************************************************************** # Java Application wrapper.java.command=java # Java Main class. This class must implement the WrapperListener interface # or guarantee that the WrapperManager class is initialized. Helper # classes are provided to do this for you. See the Integration section # of the documentation for details. #wrapper.java.mainclass=org.tanukisoftware.wrapper.test.Main wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp # Java Classpath (include wrapper.jar) Add class path elements as # needed starting from 1 wrapper.java.classpath.1=c:/efts-agents/releases/EFTS_Agents_3_00/lib/EFTS_Agents.jar wrapper.java.classpath.2=c:/efts-agents/releases/EFTS_Agents_3_00/lib/GEMS.jar wrapper.java.classpath.3=c:/efts-agents/releases/EFTS_Agents_3_00/lib/activation.jar wrapper.java.classpath.4=c:/efts-agents/releases/EFTS_Agents_3_00/lib/castor-xml.jar wrapper.java.classpath.5=c:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-net.jar wrapper.java.classpath.6=c:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-logging.jar wrapper.java.classpath.7=c:/efts-agents/releases/EFTS_Agents_3_00/lib/cron4j.jar wrapper.java.classpath.8=c:/efts-agents/releases/EFTS_Agents_3_00/lib/edtftpj.jar wrapper.java.classpath.9=c:/efts-agents/releases/EFTS_Agents_3_00/lib/j2ssh.jar wrapper.java.classpath.10=c:/efts-agents/releases/EFTS_Agents_3_00/lib/jakarta-oro.jar wrapper.java.classpath.11=c:/efts-agents/releases/EFTS_Agents_3_00/lib/javaunix.jar wrapper.java.classpath.12=c:/efts-agents/releases/EFTS_Agents_3_00/lib/jdom.jar wrapper.java.classpath.13=c:/efts-agents/releases/EFTS_Agents_3_00/lib/mail.jar wrapper.java.classpath.14=c:/efts-agents/releases/EFTS_Agents_3_00/lib/prefuse.jar wrapper.java.classpath.15=c:/efts-agents/releases/EFTS_Agents_3_00/lib/wrapper.jar wrapper.java.classpath.16=c:/efts-agents/releases/EFTS_Agents_3_00/lib/wrappertest.jar wrapper.java.classpath.17=c:/efts-agents/releases/EFTS_Agents_3_00/lib/xerces.jar wrapper.java.classpath.18=c:/efts-agents/releases/EFTS_Agents_3_00/lib/jsch.jar # Java Library Path (location of Wrapper.DLL or libwrapper.so) wrapper.java.library.path.1=c:/efts-agents/releases/EFTS_Agents_3_00/lib # Java Additional Parameters #wrapper.java.additional.1= # Initial Java Heap Size (in MB) #wrapper.java.initmemory=3 # Maximum Java Heap Size (in MB) #wrapper.java.maxmemory=64 # Application parameters. Add parameters as needed starting from 1 wrapper.app.parameter.1=org.eumetsat.efts.agents.server.ServerApp wrapper.app.parameter.2=c:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/preferences-server1.xml #******************************************************************** # Wrapper Logging Properties #******************************************************************** # Format of output for the console. (See docs for formats) wrapper.console.format=PM # Log Level for console output. (See docs for log levels) wrapper.console.loglevel=INFO # Log file to use for wrapper output logging. wrapper.logfile=c:/efts-agents/log/wrapper.log # Format of output for the log file. (See docs for formats) wrapper.logfile.format=LPTM # Log Level for log file output. (See docs for log levels) wrapper.logfile.loglevel=INFO # Maximum size that the log file will be allowed to grow to before # the log is rolled. Size is specified in bytes. The default value # of 0, disables log rolling. May abbreviate with the 'k' (kb) or # 'm' (mb) suffix. For example: 10m = 10 megabytes. wrapper.logfile.maxsize=1m # Maximum number of rolled log files which will be allowed before old # files are deleted. The default value of 0 implies no limit. wrapper.logfile.maxfiles=1 # Log Level for sys/event log output. (See docs for log levels) wrapper.syslog.loglevel=NONE #******************************************************************** # Wrapper NT Service Properties #******************************************************************** # WARNING - Do not modify any of these properties when an application # using this configuration file has been installed as a service. # Please uninstall the service before modifying this section. The # service can then be reinstalled. # Name of the service wrapper.ntservice.name=efts-agentsServer # Display name of the service wrapper.ntservice.displayname=EFTS Agents Server # Description of the service wrapper.ntservice.description=EFTS Agents Server Service # Service dependencies. Add dependencies as needed starting from 1 wrapper.ntservice.dependency.1= # Mode in which the service is installed. AUTO_START or DEMAND_START wrapper.ntservice.starttype=AUTO_START # Allow the service to interact with the desktop. wrapper.ntservice.interactive=false # give the shutdown hook of the server enough time to stop the agents wrapper.jvm_exit.timeout=30 #wrapper.shutdown.timeout=30 070701000061b9000081a40000000000000000000000015773d80400000673000000660000000300000000000000000000002e00000000reloc/DataUnits/EFTS_FtpConnectionChecker.xml push-test xxxxx xx yyyy C:/data/out C:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/GEMS.props FACILITY_NAME true 1.0 1400000 Yes c:/efts_agents/Releases/EFTS_Agents_3_00/terminate c:/efts_agents/Releases/EFTS_Agents_3_00/log false EFTS_FtpConnectionChecker.logging GMT false MISSIONX WARN DEFAULT EFTS_FtpConnectionChecker.terminate 070701000061ba000081a40000000000000000000000015773d804000030f2000000660000000300000000000000000000002300000000reloc/DataUnits/EFTS_PollAgent.xml tmp/pollagent 30000 hostname ^.*$ user 10 passord 10000 C:/data/in ftp 1 60000000 true 1000 tmp temp tmp bak bat conf cpp css ddl de default definitions h htaccess htm html htpasswd idl ini java jdbc js jsp log properties props sql template templ txt wml xml C:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/GEMS.props true FACILITY_NAME 1.0 1400000 Yes c:/efts_agents/Releases/EFTS_Agents_3_00/terminate c:/efts_agents/Releases/EFTS_Agents_3_00/log EFTS_PollAgent.lastfile EFTS_PollFtpAgent false 60000 EFTS_PollAgent.logging GMT true MISSIONX WARN DEFAULT EFTS_PollAgent 070701000061bb000081a40000000000000000000000015773d80400000bf0000000660000000300000000000000000000002600000000reloc/DataUnits/EFTS_PreProcessor.xml No 480 No No 600000 c:/efts_agents/Releases/EFTS_Agents_3_00/log No 600000 ^IGNORE.*$ C:/data/out C:/data/out2 ^.*$ tmp Yes C:/data/in No No C:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/GEMS.props true FACILITY_NAME 1.0 2000000 Yes c:/efts_agents/Releases/EFTS_Agents_3_00/terminate c:/efts_agents/Releases/EFTS_Agents_3_00/log EFTS_PreProcessor.lastfile EFTS_PreProcessor false 60000 EFTS_PreProcessor.logging GMT false MissionX WARN DEFAULT EFTS_PreProcessor 070701000061bc000081a40000000000000000000000015773d8040000320b000000660000000300000000000000000000002300000000reloc/DataUnits/EFTS_PushAgent.xml 180000 tmp/pushagent 20000000 hostname ^.*$ true user password 1500000 C:/data/out ftp 3 900000 2000 tmp temp c:/efts_agents/Releases/EFTS_Agents_3_00/log Yes tmp bak bat conf cpp css ddl de default definitions h htaccess htm html htpasswd idl ini java jdbc js jsp log properties props sql template templ txt wml xml c:/efts_agents/Releases/EFTS_Agents_3_00/log C:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/GEMS.props true FACILITY_NAME 1.0 1400000 Yes c:/efts_agents/Releases/EFTS_Agents_3_00/terminate c:/efts_agents/Releases/EFTS_Agents_3_00/log EFTS_PushAgent.lastfile EFTS_PushAgent false 60000 EFTS_PushAgent.logging GMT true ECMWFEG Push WARN DEFAULT EFTS_PushFtpAgent_PASSAT 070701000061bd000081a40000000000000000000000015773d8040000034c000000660000000300000000000000000000003100000000reloc/DataUnits/EFTS_xferlogGemsTranslator.props############################################################################ # # Property file configuring the FTP transfer log to GEMS logfile translator. # # SENDING the GEMS file to OIS: # - delete the UPLINK_SERVER.log.modSmart file # - ftp the new UPLINK_SERVER.log file as a tmp file ############################################################################ # xferlog-translator.path = D:/UserData/logs/xferlog xferlog-translator.gems.facility = UPLINK_SERVER xferlog-translator.gems.output.path = D:/gems/log xferlog-translator.gems.workingdir.path = D:/gems/log xferlog-translator.gems.process = FtpServer xferlog-translator.gems.host = UplinkServer xferlog-translator.gems.max-numlines-per-gems-log = 1000 070701000061be000081a40000000000000000000000015773d80400000aff000000660000000300000000000000000000001b00000000reloc/DataUnits/GEMS.props#========================================================================== # Generic Event Monitoring Subsystem (GEMS) #========================================================================== # # Properties file for GEMS client and server # daemons GEMS_Sender, GEMS_Receiver, GEMS_Relay # as well as command GEMS_raise_event. # The respective entries will be read from the GEMS software on client and # server side at the start of the process. # This file must be located (or a symbolic link must exist) inside the # directory where the respective process is started. # Note that if you want changes to apply to a process you must # restart(kill and start) it so that this properties file will be read # again. # Logging output information. Can be changed if more debug information is # needed. For production leave values as set. # LogSetting1 must be of the form: LOGLEVEL JAVANAME # Valid log levels: ALL, TRACE, INFO, WARN, FAULT, CRITICAL, FATAL, NONE # Set LogFile and LogPath to append log output to a file # To distinguish from facility.log files, use different extension # (e.g. GEMS.logging) GEMS.Logging.LogSetting1 = WARN DEFAULT GEMS.Logging.LoggingPackageInfo = false GEMS.Logging.LoggingThreadInfo = false GEMS.Logging.LoggingTimeInfo = true # Behaviour: Set to Client or Server depending on which processes # you intend to run. # The setting of the behaviour causes the program to check if all necessary # parameters have been set. # If you want to start one of the following processes, set the behaviour as # follows: # Process | Behaviour # ==================+========= # GEMS_raise_event | Client # Sender | Client # GEMS_LogFileAgent | Client # Receiver | Server # Relay | Server GEMS.Behaviour = Client #========================================================================== # Client Properties #========================================================================== # If you have set the GEMS.Behaviour to "Client", the following properties # must be set: # directory where the facility.log file will be stored locally GEMS.Client.LogPath = # GEMS V1.1: size limit for log files in Byte GEMS.HousekeepingSize = 1400000 #------------------------------------------------------------------------------ # Set Timezone to GMT+0, i.e. UTC # Setting this property automatically subtracts/adds the time offset # of the system clock from GMT # The system time zone can be set to the time zone the PC is located at # and the daylight savings time can be applied. All that will be compensated # by the program. #------------------------------------------------------------------------------ GEMS.TimeZone=GMT 070701000061bf000081a40000000000000000000000015773d80400000435000000660000000300000000000000000000002a00000000reloc/DataUnits/GroupAgents-Reference.xml true GEMS 1.0 2000000 yes C:/efts-agents C:/efts-agents/log Group.lastfile EFTS_AgentGroup no false 10000 Group.log GMT+0 false Test Mission INFO DEFAULT 070701000061c0000081a40000000000000000000000015773d8040000032f000000660000000300000000000000000000002800000000reloc/DataUnits/JobAgents-Reference.xml GEMS 1.0 2000000 no C:/efts-agents C:/efts-agents/log Job.lastfile EFTS_JobAgent 30000 Job.log GMT+0 Test Mission 070701000061c2000081a40000000000000000000000015773d80400000788000000660000000300000000000000000000002900000000reloc/DataUnits/PollAgents-Reference.xml tmp temp C:/efts-agents/log yes tmp C:/efts-agents/log true GEMS 1400000 yes no C:/efts-agents C:/efts-agents/log EFTS_PollAgent false GMT+0 false INFO DEFAULT EFTS_PollAgent 070701000061c3000081a40000000000000000000000015773d80400000737000000660000000300000000000000000000003100000000reloc/DataUnits/PreProcessorAgents-Reference.xml 100 No %CREATE_HARD_LINKS% No 3600000 C:/efts-agents/log No No 3600000 No No No true GEMS 1.0 2000000 yes C:/efts-agents PreProc.lastfile EFTS_PreProcessor no false 30000 GMT+0 false Test Mission INFO DEFAULT 070701000061c4000081a40000000000000000000000015773d80400000788000000660000000300000000000000000000002900000000reloc/DataUnits/PushAgents-Reference.xml tmp temp C:/efts-agents/log yes tmp C:/efts-agents/log true GEMS 1400000 yes no C:/efts-agents C:/efts-agents/log EFTS_PushAgent false GMT+0 false INFO DEFAULT EFTS_PushAgent 070701000061c5000081a40000000000000000000000015773d80400000462000000660000000300000000000000000000001b00000000reloc/DataUnits/README.txtDataUnits directory ------------------- This directory 'DataUnits' contains example EFTS Agents property files to configure EFTS agents. Please refer to the EFTS Agents User Manual in the docs directory to learn how they can be configured. This directory also contains Java Service Wrapper configuration files, used by the Windows batch scripts in the 'bin' directory to install/uninstall the agents as Windows services. For more information please see the README_WINDOWS.txt file in the bin directory, or consult the EFTS Agents User Manual. Note on Windows Services ------------------------ - Windows services are unable to resolve environment variables within the Java Service Wrapper config files, therefore always use full pathnames. - Any directories specified in Java Service Wrapper config files must be on the local filesystem, a mapped drives is not accessible by the service. Demo Project (Windows) ---------------------- A sample EFTS Agents project is provided in the ZIP archive efts-agents-demo-windows.zip. Please extract this file in a directory called: C:\efts-agents 070701000061d1000041ed00000000000000000000000659ae546100000000000000660000000300000000000000000000001500000000reloc/DataUnits/test070701000061d2000081a40000000000000000000000015773d80400000000000000660000000300000000000000000000002500000000reloc/DataUnits/test/AlternateConfig070701000061d3000081a40000000000000000000000015773d80400000bdc000000660000000300000000000000000000002000000000reloc/DataUnits/test/GEMS.props#========================================================================== # Generic Event Monitoring Subsystem (GEMS) #========================================================================== # # Properties file for GEMS client and server # daemons GEMS_Sender, GEMS_Receiver, GEMS_Relay # as well as command GEMS_raise_event. # The respective entries will be read from the GEMS software on client and # server side at the start of the process. # This file must be located (or a symbolic link must exist) inside the # directory where the respective process is started. # Note that if you want changes to apply to a process you must # restart(kill and start) it so that this properties file will be read # again. # Logging output information. Can be changed if more debug information is # needed. For production leave values as set. # LogSetting1 must be of the form: LOGLEVEL JAVANAME # Valid log levels: ALL, TRACE, INFO, WARN, FAULT, CRITICAL, FATAL, NONE # Set LogFile and LogPath to append log output to a file # To distinguish from facility.log files, use different extension # (e.g. GEMS.logging) GEMS.Logging.LogSetting1 = WARN DEFAULT GEMS.Logging.LoggingPackageInfo = false GEMS.Logging.LoggingThreadInfo = false GEMS.Logging.LoggingTimeInfo = true # Behaviour: Set to Client or Server depending on which processes # you intend to run. # The setting of the behaviour causes the program to check if all necessary # parameters have been set. # If you want to start one of the following processes, set the behaviour as # follows: # Process | Behaviour # ==================+========= # GEMS_raise_event | Client # Sender | Client # GEMS_LogFileAgent | Client # Receiver | Server # Relay | Server GEMS.Behaviour = Client #========================================================================== # Client Properties #========================================================================== # If you have set the GEMS.Behaviour to "Client", the following properties # must be set: # ************************************************************** # *** FOR TESTING YOU MUST change the GEMS.Client.LogPath ***** # directory where the facility.log file will be stored locally # eg: GEMS.Client.LogPath = C:/gems/log GEMS.Client.LogPath = # ************************************************************** # size limit for log files in Byte GEMS.HousekeepingSize = 1400000 #------------------------------------------------------------------------------ # Set Timezone to GMT+0, i.e. UTC # Setting this property automatically subtracts/adds the time offset # of the system clock from GMT # The system time zone can be set to the time zone the PC is located at # and the daylight savings time can be applied. All that will be compensated # by the program. #------------------------------------------------------------------------------ GEMS.TimeZone=GMT 070701000061d4000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000001e00000000reloc/DataUnits/test/LoadTest070701000061d5000081a40000000000000000000000015773d80400000980000000660000000300000000000000000000003e00000000reloc/DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs.xml %LOAD_TEST_ENABLE_POLL_RECURSION% %REMOTE_DIR% 30000 %REMOTE_HOST% ^TEST1.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 10000 %TEST_ROOT_DIR%/LoadTest/in %LOAD_TEST_ENABLE_POLL_RECURSION% %DEFAULT_TRANSFER_METHOD% 2 1200000 true 1000 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest TestPoll.lastfile EFTS_PollFtpAgent ./DataUnits/test/TransferRefFile.xml %DEFAULT_CHECK_INTERVAL% TestPoll.logging LoadTest Poll %DEFAULT_POLL_TERMINATION_FILE% 070701000061d6000081a40000000000000000000000015773d80400000cd2000000660000000300000000000000000000004d00000000reloc/DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs_MultipleBlocks.xml %REMOTE_DIR% 30000 %REMOTE_HOST% ^TEST1.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 10000 %TEST_ROOT_DIR%/LoadTest/in %DEFAULT_TRANSFER_METHOD% 2 1200000 true 1000 %REMOTE_DIR% 30000 %REMOTE_HOST% ^TEST2.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 10000 %TEST_ROOT_DIR%/LoadTest/in2 %DEFAULT_TRANSFER_METHOD% 2 1200000 true 1000 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest TestPoll.lastfile EFTS_PollFtpAgent ./DataUnits/test/TransferRefFile.xml 10000 TestPoll.logging LoadTest Poll TestPush 070701000061d7000081a40000000000000000000000015773d80400000881000000660000000300000000000000000000004100000000reloc/DataUnits/test/LoadTest/LoadTest_PreProc_Test_WithRefs.xml %LOG_ROOT_DIR%/LoadTest %LOAD_TEST_ENABLE_PREPROC_RECURSION% %TEST_ROOT_DIR%/LoadTest/out 3600000 ^TEST.*$ 3600000 %LOAD_TEST_ENABLE_PREPROC_RECURSION% tmp Yes %TEST_ROOT_DIR%/LoadTest/in ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml %DEFAULT_CHECK_INTERVAL% PreProcTest.logging PreProcTest %DEFAULT_PREPROC_TERMINATION_FILE% 070701000061d8000081a40000000000000000000000015773d804000009de000000660000000300000000000000000000003e00000000reloc/DataUnits/test/LoadTest/LoadTest_Push_Test_WithRefs.xml %LOAD_TEST_ENABLE_PUSH_RECURSION% 180000 %REMOTE_DIR% 80000 -1 %REMOTE_HOST% ^TEST1.*.test$ true %REMOTE_USER% %REMOTE_PASSWORD% 1500000 %TEST_ROOT_DIR%/LoadTest/out %LOAD_TEST_ENABLE_PUSH_RECURSION% %DEFAULT_TRANSFER_METHOD% 3 900000 2000 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/LoadTest %LOG_ROOT_DIR%/LoadTest TestPush.lastfile EFTS_PushFtpAgent ./DataUnits/test/TransferRefFile.xml %DEFAULT_CHECK_INTERVAL% TestPush.logging LoadTest Push %DEFAULT_PUSH_TERMINATION_FILE% 070701000061d9000081a40000000000000000000000015773d8040000067f000000660000000300000000000000000000002d00000000reloc/DataUnits/test/PreProcessorRefFile.xml %USE_SYMBOLIC_LINKING% 480 Yes %USE_HARDLINKING% No 129600000 No No 86400000 No No No %DEFAULT_GEMS_PROP_FILE% true GEMS_TEST 2000000 Yes EFTS_PreProcessor false GMT false WARN DEFAULT EFTS_PreProcessor 070701000061da000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000002600000000reloc/DataUnits/test/PreProcessorTest070701000061db000081a40000000000000000000000015773d80400000769000000660000000300000000000000000000004500000000reloc/DataUnits/test/PreProcessorTest/PreProc_Bzip2Test_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest Yes No %TEST_ROOT_DIR%/PreProcessorTest/out4 ^TEST.*.test$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in4 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061dc000081a40000000000000000000000015773d80400000768000000660000000300000000000000000000004f00000000reloc/DataUnits/test/PreProcessorTest/PreProc_DecompressBzip2Test_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest No Yes %TEST_ROOT_DIR%/PreProcessorTest/out4 ^TEST.*.bz2$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in4 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061dd000081a40000000000000000000000015773d80400000765000000660000000300000000000000000000004e00000000reloc/DataUnits/test/PreProcessorTest/PreProc_DecompressGzipTest_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest No Yes %TEST_ROOT_DIR%/PreProcessorTest/out4 ^TEST.*.gz$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in4 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061de000081a40000000000000000000000015773d8040000076f000000660000000300000000000000000000004400000000reloc/DataUnits/test/PreProcessorTest/PreProc_GzipTest_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest No %TEST_ROOT_DIR%/PreProcessorTest/out4 yes ^TEST.*.test$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in4 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061df000081a40000000000000000000000015773d80400000707000000660000000300000000000000000000005300000000reloc/DataUnits/test/PreProcessorTest/PreProc_NoBlockHousekeepingTest_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest %TEST_ROOT_DIR%/PreProcessorTest/out3 ^TEST.*$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in3 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061e0000081a40000000000000000000000015773d80400000a63000000660000000300000000000000000000004600000000reloc/DataUnits/test/PreProcessorTest/PreProc_PluginTest_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest %TEST_PLUGIN% %TEST_ROOT_DIR%/PreProcessorTest/out ENV_VAR_NAME1=ENV_VAR_VALUE1 ENV_VAR_NAME2=ENV_VAR_VALUE2 %TEST_ROOT_DIR%/PreProcessorTest/out ^TEST.*$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in2 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061e1000081a40000000000000000000000015773d80400000ec8000000660000000300000000000000000000004b00000000reloc/DataUnits/test/PreProcessorTest/PreProc_Test_MultiBlock_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest %TEST_ROOT_DIR%/PreProcessorTest/out 3600000 %TEST_ROOT_DIR%/PreProcessorTest/out2 7200000 ^TEST.*$ 3600000 tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in7 %TEST_ROOT_DIR%/PreProcessorTest/out3 3600000 %TEST_ROOT_DIR%/PreProcessorTest/out4 7200000 ^TEST.*$ 3600000 tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in8 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml %DEFAULT_CHECK_INTERVAL% PreProcTest.logging PreProcTest %DEFAULT_PREPROC_TERMINATION_FILE% 070701000061e2000081a40000000000000000000000015773d80400000976000000660000000300000000000000000000004000000000reloc/DataUnits/test/PreProcessorTest/PreProc_Test_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest %TEST_ROOT_DIR%/PreProcessorTest/out 3600000 %TEST_ROOT_DIR%/PreProcessorTest/out2 7200000 ^TEST.*$ 3600000 tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml %DEFAULT_CHECK_INTERVAL% PreProcTest.logging PreProcTest %DEFAULT_PREPROC_TERMINATION_FILE% 070701000061e3000081a40000000000000000000000015773d80400000e95000000660000000300000000000000000000004f00000000reloc/DataUnits/test/PreProcessorTest/PreProc_Test_WithRefs_OptionalCopyTo.xml %LOG_ROOT_DIR%/PreProcessorTest %TEST_ROOT_DIR%/PreProcessorTest/%OUTDIR1_LEAF% 3600000 -1 %TEST_ROOT_DIR%/PreProcessorTest/%OUTDIR3_LEAF% 7200000 ^TEST.*$ 3600000 tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/%INDIR5_LEAF% ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest OUTDIR3_LEAF=out3 INDIR5_LEAF=in5 OUTDIR1_LEAF=%DEFAULT_OUTDIR_LEAF% PreProcTest 070701000061e4000081a40000000000000000000000015773d80400000763000000660000000300000000000000000000004f00000000reloc/DataUnits/test/PreProcessorTest/PreProc_UncompressBzip2Test_WithRefs.xml %LOG_ROOT_DIR%/PreProcessorTest No Yes %TEST_ROOT_DIR%/PreProcessorTest/out4 ^TEST.*.bz2$ tmp Yes %TEST_ROOT_DIR%/PreProcessorTest/in4 ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/PreProcessorTest %LOG_ROOT_DIR%/PreProcessorTest PreProcTest.lastfile ./DataUnits/test/PreProcessorRefFile.xml 10000 PreProcTest.logging PreProcTest PreProcTest 070701000061e5000081a40000000000000000000000015773d8040000049b000000660000000300000000000000000000003500000000reloc/DataUnits/test/PreProcessorTest/req-file.templ/* block 1 */ LOCAL_FILENAME ; REMOTE_HOST hostname; REMOTE_USERID username; REMOTE_PASSWORD password; REMOTE_DIRECTORY remotedir/a/b; REMOTE_FILENAME .bz2; COMPRESSION_METHOD BZIP; SEND_FILE_MODE BINARY; SEND_RESULTS_TO noname@1.com; SEND_RESULTS_MODE WHEN_ERROR; NUM_PARALLEL_TRANS 1; TRANSFER_EXTENSION tmp; PRIORITY_CODE K; RETRY_INTERVAL 6; NUMBER_OF_RETRIES 50; RETRY_UNIT SECONDS; NUM_RETRY_ALARM 20; GEN_FAILURE_ALARM YES; SHELF_LIFE 3600; /* block 2 */ REMOTE_HOST hostname2; REMOTE_USERID username2; REMOTE_PASSWORD password2; REMOTE_DIRECTORY remotedir/x/y; REMOTE_FILENAME XXX_.bz2; COMPRESSION_METHOD BZIP; SEND_FILE_MODE BINARY; SEND_RESULTS_TO noname@1.com; SEND_RESULTS_MODE WHEN_ERROR; NUM_PARALLEL_TRANS 1; TRANSFER_EXTENSION tmp; PRIORITY_CODE L; RETRY_INTERVAL 6; NUMBER_OF_RETRIES 50; RETRY_UNIT SECONDS; GEN_FAILURE_ALARM YES; SHELF_LIFE 3600; 070701000061e6000081a40000000000000000000000015773d8040000035c000000660000000300000000000000000000002000000000reloc/DataUnits/test/README.txtThis directory contains the EFTS Agents test suite Data Unit files. 1. Before the tests can be run, please modify the template property values in the file: TemplatePropertyValues.props which contains the configuration information specific to your environment. You must change all the values between the angle brackets, for example: REMOTE_HOST = must be changed to: REMOTE_HOST = your_server_name 2. Please modify the GEMS.Client.LogPath entry in the file: GEMS.props to specify where the test GEMS events will be logged to. No changes to the other files in this directory (or subdirectories) are required. When the changes have been made to the TemplatePropertyValues.props file, start the tests as explained in the README file in the 'bin' directory, or in the User Manual. 070701000061e7000081a40000000000000000000000015773d80400000c8b000000660000000300000000000000000000003200000000reloc/DataUnits/test/TemplatePropertyValues.props## # Template property value file. This file contains default values that can be referenced # from an EFTS Agents property file or reference property file. # # Include this file within a DU property file like this: # # EFTS.TemplatePropertyValueFile = /TemplatePropertyValues.props # # The template values can be expanded in the DU property file (or reference property file) like this: # FtpAgents.PollFtpAgent.LocalDir1 = %TEST_ROOT_DIR%/TransferTest/in # # Mulitiple template values can be used also: # FtpAgents.PollFtpAgent.LocalDir1 = %TEST_ROOT_DIR%/%DIR1%/%DIR2% # ## # EFTS AGENTS root directory # eg: EFTS_AGENTS_ROOT_DIR = C:/efts-agents/releases/EFTS_Agents_3_00 EFTS_AGENTS_ROOT_DIR = # root directory of the test output files TEST_ROOT_DIR = %EFTS_AGENTS_ROOT_DIR%/tests # # logging directory for the agents (NOTE: not the GEMS logging dir) LOG_ROOT_DIR=%TEST_ROOT_DIR% # # Remote host configuration for the Test Suites. REMOTE_HOST = REMOTE_USER = REMOTE_PASSWORD = REMOTE_PASSWORD_ENCRYPTED = REMOTE_DIR = # # Alternative Remote host configuration for the Test Suites. REMOTE_HOST_ALTERNATIVE = REMOTE_USER_ALTERNATIVE = REMOTE_PASSWORD_ALTERNATIVE = REMOTE_PASSWORD_ENCRYPTED_ALTERNATIVE = REMOTE_DIR_ALTERNATIVE = # the transfer method used by the Poll, Push, and Connection Checker agents DEFAULT_TRANSFER_METHOD = ftp_edt # the default main processing check interval DEFAULT_CHECK_INTERVAL = 10000 # load test duration (seconds) LOAD_TEST_DURATION_SECS = 3600 # number of load test files NUM_LOAD_TEST_FILES = 10 # load test file size (bytes) LOAD_TEST_FILE_SIZE = 10000 # change these values to enable/disable agent sub directory recursion LOAD_TEST_ENABLE_PUSH_RECURSION = true LOAD_TEST_ENABLE_POLL_RECURSION = true LOAD_TEST_ENABLE_PREPROC_RECURSION = true # alternate configuration default file DEFAULT_ALTERNATE_CONFIG_FILENAME = %EFTS_AGENTS_ROOT_DIR%/DataUnits/test/AlternateConfig DEFAULT_SECRET_KEY_FILE = %EFTS_AGENTS_ROOT_DIR%/DataUnits/test/secretKeyFile DEFAULT_GEMS_PROP_FILE = %EFTS_AGENTS_ROOT_DIR%/DataUnits/test/GEMS.props # plugin used for the plugin test, select the UNIX or Windows plugin appropriately TEST_PLUGIN = %EFTS_AGENTS_ROOT_DIR%/bin/testPlugin.bat #TEST_PLUGIN = %EFTS_AGENTS_ROOT_DIR%/bin/testPlugin.sh # PreProcessor agent file linking method. # On UNIX platforms set to USE_HARDLINKING to "Yes" if the file replication is on the same filesystem, else # set USE_SYMBOLIC_LINKING to "Yes". # On Non-UNIX platforms set both USE_HARDLINKING and USE_SYMBOLIC_LINKING to "No" USE_HARDLINKING = No USE_SYMBOLIC_LINKING=No #USE_HARDLINKING = Yes DEFAULT_OUTDIR_LEAF=out OUTDIR1_LEAF=NOT_SET OUTDIR3_LEAF=NOT_SET DEFAULT_PUSH_TERMINATION_FILE = TestPush DEFAULT_POLL_TERMINATION_FILE = TestPoll DEFAULT_PREPROC_TERMINATION_FILE = PreProcTest 070701000061e8000081a40000000000000000000000015773d80400002aff000000660000000300000000000000000000002900000000reloc/DataUnits/test/TransferRefFile.xml tmp temp tmp bak bat conf cpp css ddl de default definitions h htaccess htm html htpasswd idl ini java jdbc js jsp log properties props sql template templ txt wml xml %DEFAULT_GEMS_PROP_FILE% true GEMS_TEST 1400000 %DEFAULT_SECRET_KEY_FILE% Yes false GMT true INFO DEFAULT 070701000061e9000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000002200000000reloc/DataUnits/test/TransferTest070701000061ea000081a40000000000000000000000015773d804000008cc000000660000000300000000000000000000003900000000reloc/DataUnits/test/TransferTest/Poll_Test_WithRefs.xml %REMOTE_DIR% 30000 %REMOTE_HOST% ^TEST1.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 60000 %TEST_ROOT_DIR%/TransferTest/in %DEFAULT_TRANSFER_METHOD% 2 1200000 true 1000 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest TestPoll.lastfile EFTS_PollFtpAgent ./DataUnits/test/TransferRefFile.xml %DEFAULT_CHECK_INTERVAL% TestPoll.logging TransferTest Poll %DEFAULT_POLL_TERMINATION_FILE% 070701000061eb000081a40000000000000000000000015773d8040000099c000000660000000300000000000000000000003e00000000reloc/DataUnits/test/TransferTest/Poll_Test_WithRefs_Http.xml /repository/dissemination/trunk/ file-ts-group-regexp=MOD03.P([0-9]{7}).1140.txt date-ts=yyyyDDD validity=1000 30000 http://xlabd01 ^MOD.*$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 60000 %TEST_ROOT_DIR%/TransferTest/in http 2 1200000 true 1000 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest H:/Projects/Eclipse/workspace/EFTS_AGENTS/DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest TestPoll.lastfile EFTS_PollFtpAgent H:/Projects/Eclipse/workspace/EFTS_AGENTS/DataUnits/test/TransferRefFile.xml 900000 TestPoll.logging TransferTest Poll %DEFAULT_POLL_TERMINATION_FILE% 070701000061ec000081a40000000000000000000000015773d80400000cea000000660000000300000000000000000000004800000000reloc/DataUnits/test/TransferTest/Poll_Test_WithRefs_MultipleBlocks.xml %REMOTE_DIR% 30000 %REMOTE_HOST% ^TEST1.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 10000 %TEST_ROOT_DIR%/TransferTest/in %DEFAULT_TRANSFER_METHOD% 2 1200000 true 1000 %REMOTE_DIR% 30000 %REMOTE_HOST% ^TEST2.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 600000 %TEST_ROOT_DIR%/TransferTest/in2 %DEFAULT_TRANSFER_METHOD% 2 1200000 true 1000 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest TestPoll.lastfile EFTS_PollFtpAgent ./DataUnits/test/TransferRefFile.xml 10000 TestPoll.logging TransferTest Poll TestPush 070701000061ed000081a40000000000000000000000015773d8040000092a000000660000000300000000000000000000003900000000reloc/DataUnits/test/TransferTest/Push_Test_WithRefs.xml 180000 %REMOTE_DIR% 80000 -1 %REMOTE_HOST% ^TEST1.*.test$ true %REMOTE_USER% %REMOTE_PASSWORD% 1500000 %TEST_ROOT_DIR%/TransferTest/out %DEFAULT_TRANSFER_METHOD% 3 900000 2000 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest TestPush.lastfile EFTS_PushFtpAgent ./DataUnits/test/TransferRefFile.xml %DEFAULT_CHECK_INTERVAL% TestPush.logging TransferTest Push %DEFAULT_PUSH_TERMINATION_FILE% 070701000061ee000081a40000000000000000000000015773d80400000da5000000660000000300000000000000000000004800000000reloc/DataUnits/test/TransferTest/Push_Test_WithRefs_MultipleBlocks.xml 180000 %REMOTE_DIR% 80000 -1 %REMOTE_HOST% ^TEST1.*.test$ true %REMOTE_USER% %REMOTE_PASSWORD% 1500000 %TEST_ROOT_DIR%/TransferTest/out %DEFAULT_TRANSFER_METHOD% 3 900000 2000 180000 %REMOTE_DIR% 80000 -1 %REMOTE_HOST% ^TEST2.*.test$ true %REMOTE_USER% %REMOTE_PASSWORD% 1500000 %TEST_ROOT_DIR%/TransferTest/out2 %DEFAULT_TRANSFER_METHOD% 3 900000 2000 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest %LOG_ROOT_DIR%/TransferTest TestPush.lastfile EFTS_PushFtpAgent ./DataUnits/test/TransferRefFile.xml 10000 TestPush.logging TransferTest Push TestPush 070701000061ef000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000003000000000reloc/DataUnits/test/TransferTest_SymbolicLinks070701000061f0000081a40000000000000000000000015773d80400000933000000660000000300000000000000000000004700000000reloc/DataUnits/test/TransferTest_SymbolicLinks/Poll_Test_WithRefs.xml %REMOTE_DIR%/TransferTest_SymbolicLinks 30000 %REMOTE_HOST% ^TEST3.*.test$ %REMOTE_USER% 10 %REMOTE_PASSWORD% 30000 %TEST_ROOT_DIR%/TransferTest_SymbolicLinks/in %DEFAULT_TRANSFER_METHOD% 2 1200000 false 1000 %LOG_ROOT_DIR%/TransferTest_SymbolicLinks %LOG_ROOT_DIR%/TransferTest_SymbolicLinks ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest_SymbolicLinks %LOG_ROOT_DIR%/TransferTest_SymbolicLinks TestPoll.lastfile EFTS_PollFtpAgent ./DataUnits/test/TransferRefFile.xml %DEFAULT_CHECK_INTERVAL% TestPoll.logging TransferTest Symbolic Poll %DEFAULT_POLL_TERMINATION_FILE% 070701000061f1000081a40000000000000000000000015773d80400000975000000660000000300000000000000000000004700000000reloc/DataUnits/test/TransferTest_SymbolicLinks/Push_Test_WithRefs.xml 180000 %REMOTE_DIR% 80000 -1 %REMOTE_HOST% ^TEST3.*.test$ true %REMOTE_USER% %REMOTE_PASSWORD% 1500000 %TEST_ROOT_DIR%/TransferTest_SymbolicLinks/out %DEFAULT_TRANSFER_METHOD% 3 900000 2000 %LOG_ROOT_DIR%/TransferTest_SymbolicLinks %LOG_ROOT_DIR%/TransferTest_SymbolicLinks ./DataUnits/test/TemplatePropertyValues.props 1.0 %LOG_ROOT_DIR%/TransferTest_SymbolicLinks %LOG_ROOT_DIR%/TransferTest_SymbolicLinks TestPush.lastfile EFTS_PushFtpAgent ./DataUnits/test/TransferRefFile.xml %DEFAULT_CHECK_INTERVAL% TestPush.logging TransferTest Symbolic Push %DEFAULT_PUSH_TERMINATION_FILE% 070701000061f2000081a40000000000000000000000015773d80400001e00000000660000000300000000000000000000004f00000000reloc/DataUnits/test/TransferTest_SymbolicLinks/TransferTest_SymbolicLinks.tarTransferTest_SymbolicLinks/000077100214770017644000000000001050376353700176215ustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks/TEST3_testFile1.test000066000214770017644000000000051050224330100232540ustar00hardmanpmsuser00003040273404TEST TransferTest_SymbolicLinks/dirLink000077700214770017644000000000001050375512300266352../TransferTest_SymbolicLinks2ustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks/TEST3_testLink1.test000077700214770017644000000000001050375512300267742TEST3_testFile1.testustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks2/000077100214770017644000000000001050247152700176755ustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks2/subdir1/000077100214770017644000000000001050372160500212425ustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks2/subdir1/subdir12/000077100214770017644000000000001050372156300227005ustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks2/subdir1/subdir12/TEST3_testFile3.test000066000214770017644000000000051050246757600263720ustar00hardmanpmsuser00003040273404TEST TransferTest_SymbolicLinks2/subdir1/subdir12/TEST3_testLink2.test000077700214770017644000000000001050375512300323012../TEST3_testFile4.testustar00hardmanpmsuser00003040273404TransferTest_SymbolicLinks2/subdir1/TEST3_testFile4.test000066000214770017644000000000051050372160500247230ustar00hardmanpmsuser00003040273404TEST 070701000061f3000081a40000000000000000000000015773d804000006d5000000660000000300000000000000000000002300000000reloc/DataUnits/test/directory.xml .*Checker.* .*PreProc.* .*Push.* .*Group.* .*Poll.* H:/Projects/Eclipse/workspace/EFTS_AGENTS/dist/EFTS_Agents_3_00/DataUnits/test D:/UserData/agents/config/GroupAgents-Reference.xml D:/UserData/agents/config/PreProcessorAgents-Reference.xml D:/UserData/agents/data/in D:/UserData/agents/data/out D:/UserData/agents/config/TemplatePropertyValues.props 1.00 D:/UserData/agents/config/CheckerAgents-Reference.xml D:/UserData/agents/config/PollAgents-Reference.xml D:/UserData/agents/log D:/UserData/agents/config/PushAgents-Reference.xml 070701000061f4000081a40000000000000000000000015773d80400000008000000660000000300000000000000000000002300000000reloc/DataUnits/test/secretKeyFile3U!3t54T070701000061c6000081a40000000000000000000000015773d804000006c3000000660000000300000000000000000000002d00000000reloc/DataUnits/TemplatePropertyValues.props#------------------------------------------------------------------------------ # Copyright (C) 2009 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EUMETCast # # Component: EFTS Agents default template property file # # Module: TemplatePropertyValues.props # # Author: Peter Hardman # # Creation Date: 28/05/2009 # #------------------------------------------------------------------------------ # # 001 Hardman 28/05/2009 Initial version # #------------------------------------------------------------------------------ # # Defines the template property values for the EFTS agents # #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Directory related templates #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Processing related templates #------------------------------------------------------------------------------ TRANSFER_METHOD = ftp CONNECTION_TIMEOUT = 30000 CONNECTION_RETRIES = 3 CONN_RETRY_TIME_INTERVAL = 2000 FILE_TIMEOUT = 300000 FILE_RETRY_TIME_INTERVAL = 2000 FILE_MAX_LIFE_TIME = 86400000 FILE_AGE_ALARM_LIMIT = 500000 DELETE_LOCAL_FILES = true CHECK_INTERVAL = 10000 MAX_PARALYSED_TIME = 400000 CREATE_HARD_LINKS = false # # DEFAULT_REMOTE_HOST = DEFAULT_REMOTE_USER = DEFAULT_REMOTE_PASSWORD = DEFAULT_REMOTE_DIRECTORY = DEFAULT_LOCAL_BASE_DIRECTORY = 070701000061c7000081a40000000000000000000000015773d80400000034000000660000000300000000000000000000001f00000000reloc/DataUnits/checkpoint.xml 070701000061c8000081a40000000000000000000000015773d804000004e5000000660000000300000000000000000000002400000000reloc/DataUnits/default-project.xml C:/efts-agents/projects/GroupAgents-Reference.xml C:/efts-agents/projects/PreProcessorAgents-Reference.xml C:/efts-agents/projects/JobAgents-Reference.xml C:/efts-agents/data/in C:/efts-agents/data/out C:/efts-agents/projects/TemplatePropertyValues.props 1.00 C:/efts-agents/projects/CheckerAgents-Reference.xml C:/efts-agents/projects/PollAgents-Reference.xml C:/efts-agents/log C:/efts-agents/projects/PushAgents-Reference.xml 070701000061c9000081a40000000000000000000000015773d80400005000000000660000000300000000000000000000002600000000reloc/DataUnits/demo-project-unix.tarDemo/0000700000062000006210000000000012120640460011677 5ustar HardmanmkpasswdDemo/demo1/0000700000062000006210000000000012120640460012704 5ustar HardmanmkpasswdDemo/demo1/directory.xml0000700000062000006210000000353512117634722015455 0ustar Hardmanmkpasswd .*Checker.* .*PreProc.* .*Push.* .*Group.* .*Job.* .*Poll.* PollDemo.xml -1 PreProcessorDemo.xml -1 PushDemo.xml -1 Demo/demo1/PollDemo.xml0000700000062000006210000000347412120635154015160 0ustar Hardmanmkpasswd %DEFAULT_REMOTE_DIRECTORY% localhost:eumetman:ftptest %DEFAULT_REMOTE_HOST% demo1.* %DEFAULT_REMOTE_USER% Demo Data 1 %DEFAULT_REMOTE_PASSWORD% %DEFAULT_LOCAL_BASE_DIRECTORY%/data/in/demo1 Demo Local Directory Demo Remote Directory C:/efts-agents/projects/TemplatePropertyValues.props yes %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 C:/efts-agents/projects/PollAgents-Reference.xml PollDemo.log PollDemo.terminate Demo/demo1/PreProcessorDemo.xml0000700000062000006210000000345112120635156016675 0ustar Hardmanmkpasswd %DEFAULT_LOCAL_BASE_DIRECTORY%/data/out/demo1-00 Demo Replication Block %DEFAULT_LOCAL_BASE_DIRECTORY%/data/in/demo1 Demo Data 1 Demo Incoming Directory demo1.* C:/efts-agents/projects/TemplatePropertyValues.props yes %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 C:/efts-agents/projects/PreProcessorAgents-Reference.xml PreProcessorDemo.log PreProcessorDemo.terminate Demo/demo1/PushDemo.xml0000700000062000006210000000350712120635156015170 0ustar Hardmanmkpasswd %DEFAULT_REMOTE_DIRECTORY% localhost:eumetman:ftptest %DEFAULT_REMOTE_HOST% demo1.* %DEFAULT_REMOTE_USER% Demo Data 1 %DEFAULT_REMOTE_PASSWORD% %DEFAULT_LOCAL_BASE_DIRECTORY%/data/out/demo1-00 Demo Outgoing Directory Demo Remote Directory C:/efts-agents/projects/TemplatePropertyValues.props yes %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 C:/efts-agents/projects/PushAgents-Reference.xml PushDemo.log PushDemo.terminate Demo/directory.xml0000700000062000006210000000340712120640574014442 0ustar Hardmanmkpasswd .*Checker.* .*PreProc.* .*Push.* .*Group.* .*Job.* .*Poll.* C:/efts-agents/projects/GroupAgents-Reference.xml C:/efts-agents/projects/JobAgents-Reference.xml C:/efts-agents/projects/PreProcessorAgents-Reference.xml %DEFAULT_LOCAL_BASE_DIRECTORY%/data/in %DEFAULT_LOCAL_BASE_DIRECTORY%/data/out C:/efts-agents/projects/TemplatePropertyValues.props 1.00 C:/efts-agents/projects/CheckerAgents-Reference.xml C:/efts-agents/projects/PollAgents-Reference.xml %DEFAULT_LOCAL_BASE_DIRECTORY%/log C:/efts-agents/projects/PushAgents-Reference.xml TemplatePropertyValues.props0000700000062000006210000000330312120635165016610 0ustar Hardmanmkpasswd#------------------------------------------------------------------------------ # Copyright (C) 2009 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EUMETCast # # Component: EFTS Agents default template property file # # Module: TemplatePropertyValues.props # # Author: Peter Hardman # # Creation Date: 28/05/2009 # #------------------------------------------------------------------------------ # # 001 Hardman 28/05/2009 Initial version # #------------------------------------------------------------------------------ # # Defines the template property values for the EFTS agents # #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Directory related templates #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Processing related templates #------------------------------------------------------------------------------ TRANSFER_METHOD = ftp CONNECTION_TIMEOUT = 30000 CONNECTION_RETRIES = 3 CONN_RETRY_TIME_INTERVAL = 2000 FILE_TIMEOUT = 300000 FILE_RETRY_TIME_INTERVAL = 2000 FILE_MAX_LIFE_TIME = 86400000 FILE_AGE_ALARM_LIMIT = 500000 DELETE_LOCAL_FILES = true CHECK_INTERVAL = 10000 MAX_PARALYSED_TIME = 400000 CREATE_HARD_LINKS = false # # DEFAULT_REMOTE_HOST = DEFAULT_REMOTE_USER = DEFAULT_REMOTE_PASSWORD = DEFAULT_REMOTE_DIRECTORY = DEFAULT_LOCAL_BASE_DIRECTORY = redirect-links.txt0000700000062000006210000000000011662441456014502 0ustar Hardmanmkpasswd070701000061ca000081a40000000000000000000000015773d8040000a000000000660000000300000000000000000000002900000000reloc/DataUnits/demo-project-windows.tarDemo/0000700000062000006210000000000012120640460011677 5ustar HardmanmkpasswdDemo/demo1/0000700000062000006210000000000012120640460012704 5ustar HardmanmkpasswdDemo/demo1/directory.xml0000700000062000006210000000353512117634722015455 0ustar Hardmanmkpasswd .*Checker.* .*PreProc.* .*Push.* .*Group.* .*Job.* .*Poll.* PollDemo.xml -1 PreProcessorDemo.xml -1 PushDemo.xml -1 Demo/demo1/PollDemo.xml0000700000062000006210000000347412120635154015160 0ustar Hardmanmkpasswd %DEFAULT_REMOTE_DIRECTORY% localhost:eumetman:ftptest %DEFAULT_REMOTE_HOST% demo1.* %DEFAULT_REMOTE_USER% Demo Data 1 %DEFAULT_REMOTE_PASSWORD% %DEFAULT_LOCAL_BASE_DIRECTORY%/data/in/demo1 Demo Local Directory Demo Remote Directory C:/efts-agents/projects/TemplatePropertyValues.props yes %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 C:/efts-agents/projects/PollAgents-Reference.xml PollDemo.log PollDemo.terminate Demo/demo1/PreProcessorDemo.xml0000700000062000006210000000345112120635156016675 0ustar Hardmanmkpasswd %DEFAULT_LOCAL_BASE_DIRECTORY%/data/out/demo1-00 Demo Replication Block %DEFAULT_LOCAL_BASE_DIRECTORY%/data/in/demo1 Demo Data 1 Demo Incoming Directory demo1.* C:/efts-agents/projects/TemplatePropertyValues.props yes %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 C:/efts-agents/projects/PreProcessorAgents-Reference.xml PreProcessorDemo.log PreProcessorDemo.terminate Demo/demo1/PushDemo.xml0000700000062000006210000000350712120635156015170 0ustar Hardmanmkpasswd %DEFAULT_REMOTE_DIRECTORY% localhost:eumetman:ftptest %DEFAULT_REMOTE_HOST% demo1.* %DEFAULT_REMOTE_USER% Demo Data 1 %DEFAULT_REMOTE_PASSWORD% %DEFAULT_LOCAL_BASE_DIRECTORY%/data/out/demo1-00 Demo Outgoing Directory Demo Remote Directory C:/efts-agents/projects/TemplatePropertyValues.props yes %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 %DEFAULT_LOCAL_BASE_DIRECTORY%/log/Demo/demo1 C:/efts-agents/projects/PushAgents-Reference.xml PushDemo.log PushDemo.terminate Demo/directory.xml0000700000062000006210000000340712120640574014442 0ustar Hardmanmkpasswd .*Checker.* .*PreProc.* .*Push.* .*Group.* .*Job.* .*Poll.* C:/efts-agents/projects/GroupAgents-Reference.xml C:/efts-agents/projects/JobAgents-Reference.xml C:/efts-agents/projects/PreProcessorAgents-Reference.xml %DEFAULT_LOCAL_BASE_DIRECTORY%/data/in %DEFAULT_LOCAL_BASE_DIRECTORY%/data/out C:/efts-agents/projects/TemplatePropertyValues.props 1.00 C:/efts-agents/projects/CheckerAgents-Reference.xml C:/efts-agents/projects/PollAgents-Reference.xml %DEFAULT_LOCAL_BASE_DIRECTORY%/log C:/efts-agents/projects/PushAgents-Reference.xml TemplatePropertyValues.props0000700000062000006210000000330312120635165016610 0ustar Hardmanmkpasswd#------------------------------------------------------------------------------ # Copyright (C) 2009 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EUMETCast # # Component: EFTS Agents default template property file # # Module: TemplatePropertyValues.props # # Author: Peter Hardman # # Creation Date: 28/05/2009 # #------------------------------------------------------------------------------ # # 001 Hardman 28/05/2009 Initial version # #------------------------------------------------------------------------------ # # Defines the template property values for the EFTS agents # #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Directory related templates #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Processing related templates #------------------------------------------------------------------------------ TRANSFER_METHOD = ftp CONNECTION_TIMEOUT = 30000 CONNECTION_RETRIES = 3 CONN_RETRY_TIME_INTERVAL = 2000 FILE_TIMEOUT = 300000 FILE_RETRY_TIME_INTERVAL = 2000 FILE_MAX_LIFE_TIME = 86400000 FILE_AGE_ALARM_LIMIT = 500000 DELETE_LOCAL_FILES = true CHECK_INTERVAL = 10000 MAX_PARALYSED_TIME = 400000 CREATE_HARD_LINKS = false # # DEFAULT_REMOTE_HOST = DEFAULT_REMOTE_USER = DEFAULT_REMOTE_PASSWORD = DEFAULT_REMOTE_DIRECTORY = DEFAULT_LOCAL_BASE_DIRECTORY = redirect-links.txt0000700000062000006210000000000011662441456014502 0ustar HardmanmkpasswdCheckerAgents-Reference.xml0000700000062000006210000000367012120635152016152 0ustar Hardmanmkpasswd tmp temp C:/efts-agents/log yes tmp C:/efts-agents/projects/redirect-links.txt C:/efts-agents/log true GEMS 1400000 yes no C:/efts-agents C:/efts-agents/log EFTS_CheckerAgent false GMT+0 false INFO DEFAULT EFTS_CheckerAgent GroupAgents-Reference.xml0000700000062000006210000000206512120564617015706 0ustar Hardmanmkpasswd true GEMS 1.0 2000000 yes C:/efts-agents C:/efts-agents/log Group.lastfile EFTS_AgentGroup no false 10000 Group.log GMT+0 false Test Mission INFO DEFAULT JobAgents-Reference.xml0000700000062000006210000000145712120565307015325 0ustar Hardmanmkpasswd GEMS 1.0 2000000 no C:/efts-agents C:/efts-agents/log Job.lastfile EFTS_JobAgent 30000 Job.log GMT+0 Test Mission PollAgents-Reference.xml0000700000062000006210000000366212117332344015520 0ustar Hardmanmkpasswd tmp temp C:/efts-agents/log yes tmp C:/efts-agents/projects/redirect-links.txt C:/efts-agents/log true GEMS 1400000 yes no C:/efts-agents C:/efts-agents/log EFTS_PollAgent false GMT+0 false INFO DEFAULT EFTS_PollAgent PreProcessorAgents-Reference.xml0000700000062000006210000000346712120633364017243 0ustar Hardmanmkpasswd 100 No %CREATE_HARD_LINKS% No 3600000 C:/efts-agents/log No No 3600000 No No No true GEMS 1.0 2000000 yes C:/efts-agents PreProc.lastfile EFTS_PreProcessor no false 30000 GMT+0 false Test Mission INFO DEFAULT PushAgents-Reference.xml0000700000062000006210000000366212120635126015527 0ustar Hardmanmkpasswd tmp temp C:/efts-agents/log yes tmp C:/efts-agents/projects/redirect-links.txt C:/efts-agents/log true GEMS 1400000 yes no C:/efts-agents C:/efts-agents/log EFTS_PushAgent false GMT+0 false INFO DEFAULT EFTS_PushAgent default-project.xml0000700000062000006210000000234512120635524014641 0ustar Hardmanmkpasswd C:/efts-agents/projects/GroupAgents-Reference.xml C:/efts-agents/projects/PreProcessorAgents-Reference.xml C:/efts-agents/projects/JobAgents-Reference.xml C:/efts-agents/data/in C:/efts-agents/data/out C:/efts-agents/projects/TemplatePropertyValues.props 1.00 C:/efts-agents/projects/CheckerAgents-Reference.xml C:/efts-agents/projects/PollAgents-Reference.xml C:/efts-agents/log C:/efts-agents/projects/PushAgents-Reference.xml 07070100006196000081a40000000000000000000000015773d80400000846000000660000000300000000000000000000002700000000reloc/DataUnits/efts-agents-mandc.jnlp EFTS Agents Monitoring EUMETSAT -mandc 070701000061cb000081a40000000000000000000000015773d804000000e8000000660000000300000000000000000000003600000000reloc/DataUnits/gems-to-transfer-log-translator.props# Property file for the GEMS to EFTS transfer log conversion utility: # org.eumetsat.efts.agents.utils.log.GemsToEftsAgentsTransferLogTranslator gems-input.path=D:/tmp/logs/gems-logs output-root.path=D:/tmp/logs/transfer-logs 070701000061cc000081a40000000000000000000000015773d80400000aa6000000660000000300000000000000000000002700000000reloc/DataUnits/preferences-editor.xml Saved on: 2009/09/15 10:40:00 true 500 efts-agents-config-editor 10 java C:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/preferences-server1.xml service:jmx:rmi://localhost:9998/jndi/rmi://localhost:9999/server Demo INFO C:/efts-agents/checkpoint 9999 .tmp javax.swing.plaf.metal.MetalLookAndFeel C:/efts-agents/releases/EFTS_Agents_3_00/lib/EFTS_Agents.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/edtftpj.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/GEMS.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/activation.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-logging.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-net.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/j2ssh.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jsch.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jakarta-oro.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/javaunix.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/castor-xml.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jdom.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/prefuse.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/cron4j.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jfreechart.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jcommon.jar C:/efts-agents/log true,false,false,true,false,true,true,true,true,false,true,false,false,false,true,false,true,true,false,false,true,false,false,true 350 C:/efts-agents/releases/EFTS_Agents_3_00/DataUnits/preferences-monitor-and-control.xml C:/efts-agents/projects 070701000061cd000081a40000000000000000000000015773d80400000ae1000000660000000300000000000000000000003400000000reloc/DataUnits/preferences-monitor-and-control.xml Saved on: 2009/09/16 15:50:36 false true,true,true,true,true 500 efts-agents-monitor 10 java service:jmx:rmi://localhost:9998/jndi/rmi://localhost:9999/server INFO C:/efts-agents/checkpoint C:/efts-agents/checkpoint/history 9999 .tmp javax.swing.plaf.metal.MetalLookAndFeel C:/efts-agents/releases/EFTS_Agents_3_00/lib/EFTS_Agents.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/edtftpj.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/GEMS.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/activation.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-logging.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-net.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/j2ssh.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jsch.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jakarta-oro.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/javaunix.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/castor-xml.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jdom.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/prefuse.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/cron4j.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jfreechart.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jcommon.jar C:/efts-agents/log true,false,true,true,true,false,false,false,true,true,true,false,true,false,true,false,false,false,true,false,false,false,false,false,false,false,false,false,true,false,true,true 350 C:/efts-agents/projects 070701000061ce000081a40000000000000000000000015773d804000011db000000660000000300000000000000000000002800000000reloc/DataUnits/preferences-server1.xml Saved on: 2013/03/12 14:41:49 localhost C:/efts-agents/lockfiles 30000 60000 true 9999 false C:/efts-agents/projects */60 * * * * C:/efts-agents/log 350 200 Server Name 500 86400000 60 C:/efts-agents/releases/EFTS_Agents_3_00/lib/EFTS_Agents.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/edtftpj.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/GEMS.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/activation.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-logging.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/commons-net.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/j2ssh.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jsch.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jakarta-oro.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/javaunix.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/castor-xml.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/jdom.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/prefuse.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/cron4j.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/mail.jar;C:/efts-agents/releases/EFTS_Agents_3_00/lib/xerces.jar service:jmx:rmi://localhost:9998/jndi/rmi://localhost:9999/server javax.swing.plaf.metal.MetalLookAndFeel C:/efts-agents/checkpoint/history 864000000 C:/efts-agents/checkpoint efts-agents-server1 true NOT SET false java .tmp true true,false,false,true,false,true,true,true,true,false,true,false,false,false,true,false,true,true,false,false,true,false,false,true 10 ^(.*)-new-dataflow.req$ INFO 55 23 * * * 1000 false 070701000061cf000081a40000000000000000000000015773d80400000000000000660000000300000000000000000000002300000000reloc/DataUnits/redirect-links.txt070701000061d0000081a40000000000000000000000015773d80400000008000000660000000300000000000000000000001e00000000reloc/DataUnits/secretKeyFile3U!3t54T070701000061f5000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000000a00000000reloc/bin070701000061f6000081fd0000000000000000000000015773d8030000015a000000660000000300000000000000000000001a00000000reloc/bin/README_UNIX.txt Running the Test Suite ====================== The test suite is based on the JUnit API. It can be started by executing the command: %EFTS_AGENTS_PATH%/bin/runTestSuite.sh By default the JUnit TestRunner GUI is used to display the test results. A text outout can be displayed by running: %EFTS_AGENTS_PATH%/bin/runTestSuite.sh -text 070701000061f7000081fd0000000000000000000000015773d80300000e4c000000660000000300000000000000000000001d00000000reloc/bin/README_WINDOWS.txtInstallation of EFTS Agents Software on Windows Platforms --------------------------------------------------------- 1. Extract the distribution archive to the recommended directory: c:\efts_agents\Releases Creating a directory structure like: c:\efts_agents\Releases\EFTS_Agents_2_50\lib \bin \DataUnits \log \terminate 2. Set the EFTS_AGENTS_PATH environment variable to the root of the EFTS Agents installation, eg: set EFTS_AGENTS_PATH=c:\efts_agents\Releases\EFTS_Agents_2_50 3. Run the Post-installation script: %EFTS_AGENTS_PATH%\bin\EFTS_Agents_PostInstall.bat This performs any additional configuration required by the EFTS Agents. 4. Decide which agents you need. Each agent is configured by a property file located in the DataUnits directory under the base directory. For example an EFTS_PreProcessor agent can be configured using the file DataUnits/EFTS_PreProcessor.props Modify the property file (paths, regular exopressions etc.) to suit your needs. Running the Test Suite ====================== The test suite is based on the JUnit API. It can be started by executing the command: %EFTS_AGENTS_PATH%\bin\runTestSuite.bat By default the JUnit TestRunner GUI is used to display the test results. A text outout can be displayed by running: %EFTS_AGENTS_PATH%\bin\runTestSuite.bat -text Running the Agents Operationally ================================ Once the agent property file(s) is complete there are 2 ways to run the agent(s) on a Windows platform: 1. Standalone from a batch script: --------------------------------- Double-click on the file with the prefix Run*, e.g. %EFTS_AGENTS_PATH%\bin\RunEFTS_PreProcessor.bat If you get a error, fix the path in that batch file to point to the correct directory where the jar files are located. Stop this process by pressing Ctrl-C. 2. As a Windows Service on a Windows NT4, Windows 2000, or XP platform ---------------------------------------------------------------------- A process running as a Windows service is automatically started at boot time and runs in the background. The EFTS Agents utilise the 'Java Wrapper Service' in order to install and uninstall Windows services. A batch file in %EFTS_AGENTS_PATH%\bin exists for each agent to install/uninstall the agent as a service. For example, the EFTS_PreProcessor has: %EFTS_AGENTS_PATH%\bin\InstallEFTS_PreProcessor-NT.bat - to install the service %EFTS_AGENTS_PATH%\bin\UninstallEFTS_PreProcessor-NT.bat - to uninstall the service Both the above batch files use the same Java Service Wrapper configuration file to actually interface with the Windows OS to install/uninstall the service - see: %EFTS_AGENTS_PATH%\DataUnits\EFTS_PreProcessor_wrapper.conf *NOTE*:- the Java Service Wrapper files unfortunately cannot reuse the %EFTS_AGENTS_PATH% environment variable, so please ensure that any paths in the file point to the latest EFTS_Agents release. To start the service after installation as a service, open the 'Services' dialog and start the service. Alternatively, rebooting the PC will automatically start the service. You can check that the process is running by looking at the Windows TaskManager. Once an agent is installed as a service it will start each time the PC is rebooted. The unintsall script (eg. UninstallEFTS_PreProcessor-NT.bat) will stop any running service and remove the service. 070701000061f8000081fd0000000000000000000000015773d803000007a4000000660000000300000000000000000000001700000000reloc/bin/commander.sh#!/bin/bash # description: Starts the EFTS Agents Monitor and Control Appplication in a UNIX environment #------------------------------------------------------------------------------ # Copyright (C) 2010 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EFTS Agents # # Component: Server # # Module: # # Author: Peter Hardman # # Creation Date: 20/09/2010 # #------------------------------------------------------------------------------ # # 001 Hardman 20/09/2010 Initial version # #------------------------------------------------------------------------------ PWD=`dirname $0` EFTS_AGENTS_PATH=$PWD/.. #EFTS_AGENTS_PATH=/usr/local/efts-agents CLASSPATH=.:\ $EFTS_AGENTS_PATH/lib/EFTS_Agents.jar:\ $EFTS_AGENTS_PATH/lib/GEMS.jar:\ $EFTS_AGENTS_PATH/lib/activation.jar:\ $EFTS_AGENTS_PATH/lib/castor-xml.jar:\ $EFTS_AGENTS_PATH/lib/commons-logging.jar:\ $EFTS_AGENTS_PATH/lib/commons-net.jar:\ $EFTS_AGENTS_PATH/lib/cron4j.jar:\ $EFTS_AGENTS_PATH/lib/edtftpj.jar:\ $EFTS_AGENTS_PATH/lib/j2ssh.jar:\ $EFTS_AGENTS_PATH/lib/jsch.jar:\ $EFTS_AGENTS_PATH/lib/jakarta-oro.jar:\ $EFTS_AGENTS_PATH/lib/javaunix.jar:\ $EFTS_AGENTS_PATH/lib/jdom.jar:\ $EFTS_AGENTS_PATH/lib/junit.jar:\ $EFTS_AGENTS_PATH/lib/mail.jar:\ $EFTS_AGENTS_PATH/lib/prefuse.jar:\ $EFTS_AGENTS_PATH/lib/wrapper.jar:\ $EFTS_AGENTS_PATH/lib/wrappertest.jar:\ $EFTS_AGENTS_PATH/lib/xerces.jar:\ $EFTS_AGENTS_PATH/lib/yguard.jar:\ $EFTS_AGENTS_PATH/lib/jfreechart.jar:\ $EFTS_AGENTS_PATH/lib/jcommon.jar # the Java location JAVA=java if [ "$JAVA_HOME" != "" ] then JAVA=$JAVA_HOME/bin/java fi if [ "$EFTS_AGENTS_PATH_DU" == "" ] then # change the configuration directory accordingly EFTS_AGENTS_PATH_DU=$EFTS_AGENTS_PATH/DataUnits fi $JAVA -cp $CLASSPATH org.eumetsat.efts.agents.server.CommandInterpreter $EFTS_AGENTS_PATH_DU/preferences-monitor-and-control.xml 070701000061f9000081fd0000000000000000000000015773d80300005a87000000660000000300000000000000000000001500000000reloc/bin/efts-agent#!/bin/sh #------------------------------------------------------------------------------ # Copyright (C) 2010 by EUMETSAT #------------------------------------------------------------------------------ # # Project: Generic # # Component: EFTS Agents # # Module: efts-agent # # Author: Anthony Patchett # # Creation Date: 08/02/2006 # #------------------------------------------------------------------------------ # # 001 Patchett 08/02/2006 Initial version # 002 Patchett 17/05/2007 Improved to run on other *NIX platforms # 003 Patchett 08/07/2007 Added the termination file fix from # R. Marrodan # 004 Patchett 19/11/2008 Modified for use with PMACU # (Process Monitoring And Control Utilities) # 005 Patchett 29/08/2009 Added support for EFTS agent command lines # that contain a server process specification # 006 Patchett 25/06/2010 Added OS and EXPECTED_EFTS_AGENT_COMMAND_LINE # variables # Removed the runtime Java archive file from # the classpath and removed the check for its # existence # In the case of Solaris, the expected EFTS # agent command line is truncated to a maximum # of 79 characters # 007 Hardman 12/03/2015 Added EFTS_AGENTS_UMASK # #------------------------------------------------------------------------------ # # Starts/Stops/Kills the specified process # # Note: # # - only one instance of the process is started # # - all instances of the process are stopped # # - all instances of the process are killed # #------------------------------------------------------------------------------ # # Usage: # # efts-agent # # where: # # action = { start | stop | kill } # # efts-agent-command-line = the EFTS agent command line # #------------------------------------------------------------------------------ # # Limitations: # # Note that this may not function correctly for EFTS agent command lines that # are longer than 79 characters (depending on the OS). # #------------------------------------------------------------------------------ # ==================== # STANDARD DEFINITIONS # ==================== # the script file... SCRIPT_FILE=`basename $0` readonly SCRIPT_FILE # the script directory... SCRIPT_DIRECTORY=`dirname $0` readonly SCRIPT_DIRECTORY # the operating system... OS=`uname -s` readonly OS # the EFTS agents base directory... EFTS_AGENTS_BASE_DIRECTORY=`cd $SCRIPT_DIRECTORY/..; pwd` readonly EFTS_AGENTS_BASE_DIRECTORY # the EFTS agents binary directory... EFTS_AGENTS_BIN=$EFTS_AGENTS_BASE_DIRECTORY/bin readonly EFTS_AGENTS_BIN # the EFTS agents library directory... EFTS_AGENTS_LIB=$EFTS_AGENTS_BASE_DIRECTORY/lib readonly EFTS_AGENTS_LIB # ========= # CONSTANTS # ========= # the exit value for success... SUCCESS=0 readonly SUCCESS # the exit value for failure... FAILURE=1 readonly FAILURE # the default 'JAVA_HOME' setting... DEFAULT_JAVA_HOME=/usr/java readonly DEFAULT_JAVA_HOME # the default 'FACILITY' setting... DEFAULT_FACILITY=UNKNOWN readonly DEFAULT_FACILITY # the lookup value script... LOOKUP_VALUE=$EFTS_AGENTS_BIN/lookup-value readonly LOOKUP_VALUE # the stop sleep period in seconds... STOP_SLEEP_PERIOD=5 readonly STOP_SLEEP_PERIOD # the maximum stop attempts... MAXIMUM_STOP_ATTEMPTS=10 readonly MAXIMUM_STOP_ATTEMPTS # ========== # PARAMETERS # ========== # the action... ACTION=$1 # the EFTS agent command line... EFTS_AGENT_COMMAND_LINE=$2 # ========= # VARIABLES # ========= # the 'JAVA_HOME' setting (using the default setting if necessary)... JAVA_HOME=${JAVA_HOME:-$DEFAULT_JAVA_HOME} # the 'FACILITY' setting (using the default setting if necessary)... FACILITY=${FACILITY:-$DEFAULT_FACILITY} # the java command... JAVA_COMMAND="" # the agent type... AGENT_TYPE="" # the agent properties file... AGENT_PROPERTIES_FILE="" # the agent termination directory property... AGENT_TERMINATION_DIRECTORY_PROPERTY="" # the agent termination directory... AGENT_TERMINATION_DIRECTORY="" # the agent termination file property... AGENT_TERMINATION_FILE_PROPERTY="" # the agent termination file... AGENT_TERMINATION_FILE="" # the server type... SERVER_TYPE="" # the server configuration file... SERVER_CONFIGURATION_FILE="" # the server termination file... SERVER_TERMINATION_FILE="" # the process termination file... PROCESS_TERMINATION_FILE="" # the stop attempts... STOP_ATTEMPTS="" # the expected EFTS agent command line... EXPECTED_EFTS_AGENT_COMMAND_LINE="" # the process instances... PROCESS_INSTANCES="" # the process stopped flag... PROCESS_STOPPED="" # the PID... PID="" # the exit status... EXIT_STATUS="" # the command search path... PATH=$JAVA_HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin # the class path... CLASSPATH=\ $EFTS_AGENTS_LIB/EFTS_Agents.jar:\ $EFTS_AGENTS_LIB/GEMS.jar:\ $EFTS_AGENTS_LIB/activation.jar:\ $EFTS_AGENTS_LIB/castor-xml.jar:\ $EFTS_AGENTS_LIB/commons-logging.jar:\ $EFTS_AGENTS_LIB/commons-net.jar:\ $EFTS_AGENTS_LIB/cron4j.jar:\ $EFTS_AGENTS_LIB/edtftpj.jar:\ $EFTS_AGENTS_LIB/j2ssh.jar:\ $EFTS_AGENTS_LIB/jakarta-oro.jar:\ $EFTS_AGENTS_LIB/javaunix.jar:\ $EFTS_AGENTS_LIB/jdom.jar:\ $EFTS_AGENTS_LIB/junit.jar:\ $EFTS_AGENTS_LIB/mail.jar:\ $EFTS_AGENTS_LIB/prefuse.jar:\ $EFTS_AGENTS_LIB/wrapper.jar:\ $EFTS_AGENTS_LIB/wrappertest.jar:\ $EFTS_AGENTS_LIB/xerces.jar:\ $EFTS_AGENTS_LIB/yguard.jar export CLASSPATH # the linker library path... LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$EFTS_AGENTS_LIB export LD_LIBRARY_PATH # =========== # SUBROUTINES # =========== # subroutine to display the usage information... display_usage_information() { cat << EndOfUsage >&2 Usage: $SCRIPT_FILE where: action = { start | stop | kill } efts-agent-command-line = the EFTS agent command line EndOfUsage exit $FAILURE } # subroutine to raise a GEMS event with the specified severity and message... raise_gems_event() { SEVERITY=$1 MESSAGE=$2 # raise a GEMS event with the specified severity and message... java GEMS_raise_event $FACILITY `hostname` $SCRIPT_FILE $SEVERITY "${MESSAGE}" > /dev/null 2>&1 } # subroutine to check the java command... check_java_command() { # check the java command... if [ "$JAVA_COMMAND" != "java" ]; then # the java command is not valid, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - the java command '${JAVA_COMMAND}' is not valid\n" >&2 exit $FAILURE fi } # subroutine to check the agent properties file... check_agent_properties_file() { # extract the agent properties file from the EFTS agent command line... AGENT_PROPERTIES_FILE=`echo $EFTS_AGENT_COMMAND_LINE | sed 's/^.*EFTS_[A-Za-z]*[ \t]*//' | sed 's/^\-[a-z]*[ \t]*//'` # check the agent properties file... if [ "$AGENT_PROPERTIES_FILE" = "" ]; then # the agent properties file is not specified, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - the agent properties file is not specified\n" >&2 exit $FAILURE else # the agent properties file is specified, check if it does exist... if [ ! -f $AGENT_PROPERTIES_FILE ]; then # the agent properties file does not exist, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - the agent properties file '${AGENT_PROPERTIES_FILE}' does not exist\n" >&2 exit $FAILURE fi fi } # subroutine to check the server configuration file... check_server_configuration_file() { # extract the server configuration file from the EFTS agent command line... SERVER_CONFIGURATION_FILE=`echo $EFTS_AGENT_COMMAND_LINE | sed 's/^.*org.eumetsat.efts.agents.server.ServerApp[ \t]*//' | awk '{ print $1 }'` # check the server configuration file... if [ "$SERVER_CONFIGURATION_FILE" = "" ]; then # the server configuration file is not specified, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - the server configuration file is not specified\n" >&2 exit $FAILURE else # the server configuration file is specified, check if it does exist... if [ ! -f $SERVER_CONFIGURATION_FILE ]; then # the server configuration file does not exist, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - the server configuration file '${SERVER_CONFIGURATION_FILE}' does not exist\n" >&2 exit $FAILURE fi fi } # subroutine to check the server termination file... check_server_termination_file() { # extract the server termination file from the EFTS agent command line... SERVER_TERMINATION_FILE=`echo $EFTS_AGENT_COMMAND_LINE | sed 's/^.*org.eumetsat.efts.agents.server.ServerApp[ \t]*//' | awk '{ print $2 }'` # check the server termination file... if [ "$SERVER_TERMINATION_FILE" = "" ]; then # the server termination file is not specified, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - the server termination file is not specified\n" >&2 exit $FAILURE fi } # subroutine to check the parameters... check_parameters() { # check the action parameter... if [ "$ACTION" != "start" -a \ "$ACTION" != "stop" -a \ "$ACTION" != "kill" ]; then # the action parameter has not been specified or is invalid, display the usage information... display_usage_information fi # check the EFTS agent command line parameter... if [ "$EFTS_AGENT_COMMAND_LINE" = "" ]; then # the EFTS agent command line parameter has not been specified, display the usage information... display_usage_information else # extract the java command from the EFTS agent command line... JAVA_COMMAND=`echo $EFTS_AGENT_COMMAND_LINE | awk '{ print $1 }'` # check the java command... check_java_command # check if the EFTS agent command line contains a server process specification... SERVER_TYPE=`expr match "${EFTS_AGENT_COMMAND_LINE}" '.*[ \t]\(org.eumetsat.efts.agents.server.ServerApp\)[ \t].*'` if [ "$SERVER_TYPE" != "" ]; then # the EFTS agent command line does contain a server process specification, check the server configuration and server termination files... check_server_configuration_file check_server_termination_file else # the EFTS agent command line does not contain a server process specification, check if it contains an agent process specification... AGENT_TYPE=`expr match "${EFTS_AGENT_COMMAND_LINE}" '.*[ \t]\(EFTS_PreProcessor\)[ \t].*'` if [ "$AGENT_TYPE" = "" ]; then AGENT_TYPE=`expr match "${EFTS_AGENT_COMMAND_LINE}" '.*[ \t]\(EFTS_PushFtpAgent\)[ \t].*'` if [ "$AGENT_TYPE" = "" ]; then AGENT_TYPE=`expr match "${EFTS_AGENT_COMMAND_LINE}" '.*[ \t]\(EFTS_PollFtpAgent\)[ \t].*'` if [ "$AGENT_TYPE" = "" ]; then AGENT_TYPE=`expr match "${EFTS_AGENT_COMMAND_LINE}" '.*[ \t]\(EFTS_FtpConnectionChecker\)[ \t].*'` fi fi fi if [ "$AGENT_TYPE" != "" ]; then # the EFTS agent command line does contain an agent process specification, check the agent properties file... check_agent_properties_file else # the EFTS agent command line does not contain either an agent or a server process specification, report the error and exit... printf "\n" >&2 printf "The EFTS agent command line '${EFTS_AGENT_COMMAND_LINE}' is not valid\n" >&2 printf " - it does not contain either an agent or a server process specification\n" >&2 exit $FAILURE fi fi fi } # subroutine to check the java environment... check_java_environment() { # check the 'JAVA_HOME' setting... if [ ! -d $JAVA_HOME ]; then # the 'JAVA_HOME' setting is not valid, report the error and exit... printf "\n" >&2 printf "The JAVA_HOME setting '${JAVA_HOME}' is not valid\n" >&2 exit $FAILURE else # the 'JAVA_HOME' setting is valid, check the java binary file... if [ ! -x $JAVA_HOME/bin/java ]; then # the java binary file does not exist or is not executable, report the error and exit... printf "\n" >&2 printf "The java binary file '${JAVA_HOME}/bin/java' does not exist or is not executable\n" >&2 exit $FAILURE fi fi } # subroutine to set the process termination file... set_process_termination_file() { # check the server type... if [ "$SERVER_TYPE" != "" ]; then # the process is a server process, set the process termination file... PROCESS_TERMINATION_FILE=$SERVER_TERMINATION_FILE else # the process is an agent process, set the agent termination directory property... case "$AGENT_TYPE" in EFTS_PreProcessor) AGENT_TERMINATION_DIRECTORY_PROPERTY="EFTS.PreProcessor.Termination.Directory" ;; EFTS_PushFtpAgent) AGENT_TERMINATION_DIRECTORY_PROPERTY="FtpAgents.Termination.Directory" ;; EFTS_PollFtpAgent) AGENT_TERMINATION_DIRECTORY_PROPERTY="FtpAgents.Termination.Directory" ;; EFTS_FtpConnectionChecker) AGENT_TERMINATION_DIRECTORY_PROPERTY="FtpAgents.Termination.Directory" ;; esac # set the agent termination directory... AGENT_TERMINATION_DIRECTORY=`$LOOKUP_VALUE $AGENT_TERMINATION_DIRECTORY_PROPERTY $AGENT_PROPERTIES_FILE` if [ "$AGENT_TERMINATION_DIRECTORY" = "" ]; then # the agent termination directory is not specified in the agent properties file, report the error and exit... printf "\n" >&2 printf "The property '${AGENT_TERMINATION_DIRECTORY_PROPERTY}' is not specified in the agent properties file '${AGENT_PROPERTIES_FILE}'\n" >&2 exit $FAILURE fi # check the agent termination directory... if [ ! -d $AGENT_TERMINATION_DIRECTORY ]; then # the agent termination directory does not exist, report the error and exit... printf "\n" >&2 printf "The agent termination directory '${AGENT_TERMINATION_DIRECTORY}' specified in the agent properties file '${AGENT_PROPERTIES_FILE}' does not exist\n" >&2 exit $FAILURE fi # set the agent termination file property... case "$AGENT_TYPE" in EFTS_PreProcessor) AGENT_TERMINATION_FILE_PROPERTY="EFTS.PreProcessor.Termination.File" ;; EFTS_PushFtpAgent) AGENT_TERMINATION_FILE_PROPERTY="FtpAgents.Termination.File" ;; EFTS_PollFtpAgent) AGENT_TERMINATION_FILE_PROPERTY="FtpAgents.Termination.File" ;; EFTS_FtpConnectionChecker) AGENT_TERMINATION_FILE_PROPERTY="FtpAgents.Termination.File" ;; esac # set the agent termination file... AGENT_TERMINATION_FILE=`$LOOKUP_VALUE $AGENT_TERMINATION_FILE_PROPERTY $AGENT_PROPERTIES_FILE` if [ "$AGENT_TERMINATION_FILE" = "" ]; then # the agent termination file is not specified in the agent properties file, use the default... AGENT_TERMINATION_FILE=`basename $AGENT_PROPERTIES_FILE` fi # set the process termination file... PROCESS_TERMINATION_FILE=$AGENT_TERMINATION_DIRECTORY/$AGENT_TERMINATION_FILE fi } # subroutine to start the process... start_process() { # check the OS... if [ "$OS" = "SunOS" ]; then # the OS is Solaris, truncate the expected EFTS agent command line to a maximum of 79 characters... EXPECTED_EFTS_AGENT_COMMAND_LINE=`echo "${EFTS_AGENT_COMMAND_LINE}" | cut -c1-79` else # the OS is not Solaris, do not truncate the expected EFTS agent command line... EXPECTED_EFTS_AGENT_COMMAND_LINE="${EFTS_AGENT_COMMAND_LINE}" fi # set the process instances... PROCESS_INSTANCES=`ps -eo args | grep "^${EXPECTED_EFTS_AGENT_COMMAND_LINE}" | wc -l | awk '{ print $1 }'` # check the process instances... if [ $PROCESS_INSTANCES -eq 0 ]; then # the process is not running, check the process termination file... if [ -f $PROCESS_TERMINATION_FILE ]; then # the process termination file exists, remove it... rm -f $PROCESS_TERMINATION_FILE fi # start the process... if [ "$EFTS_AGENTS_UMASK" != "" ]; then umask $EFTS_AGENTS_UMASK fi nohup $EFTS_AGENT_COMMAND_LINE > /dev/null 2>&1 & EXIT_STATUS=$? if [ $EXIT_STATUS -ne $SUCCESS ]; then # failed to start the process, raise a GEMS alarm event and exit... raise_gems_event A "Failed to start the process '${EFTS_AGENT_COMMAND_LINE}'" exit $FAILURE else # started the process, raise a GEMS information event... raise_gems_event I "Started the process '${EFTS_AGENT_COMMAND_LINE}'" fi fi } # subroutine to stop the process(es)... stop_process() { # check the OS... if [ "$OS" = "SunOS" ]; then # the OS is Solaris, truncate the expected EFTS agent command line to a maximum of 79 characters... EXPECTED_EFTS_AGENT_COMMAND_LINE=`echo "${EFTS_AGENT_COMMAND_LINE}" | cut -c1-79` else # the OS is not Solaris, do not truncate the expected EFTS agent command line... EXPECTED_EFTS_AGENT_COMMAND_LINE="${EFTS_AGENT_COMMAND_LINE}" fi # set the process instances... PROCESS_INSTANCES=`ps -eo args | grep "^${EXPECTED_EFTS_AGENT_COMMAND_LINE}" | wc -l | awk '{ print $1 }'` # check the process instances... if [ $PROCESS_INSTANCES -ne 0 ]; then # the process is running, initialise the stop attempts... STOP_ATTEMPTS=1 # stop the process(es)... while [ $STOP_ATTEMPTS -le $MAXIMUM_STOP_ATTEMPTS ] do # create the process termination file... touch $PROCESS_TERMINATION_FILE # wait for the process to stop... sleep $STOP_SLEEP_PERIOD # set the process instances... PROCESS_INSTANCES=`ps -eo args | grep "^${EXPECTED_EFTS_AGENT_COMMAND_LINE}" | wc -l | awk '{ print $1 }'` # check the process instances... if [ $PROCESS_INSTANCES -ne 0 ]; then # the process has not stopped... PROCESS_STOPPED="FALSE" else # the process has stopped... PROCESS_STOPPED="TRUE" break fi # increment the stop attempts... STOP_ATTEMPTS=`expr $STOP_ATTEMPTS + 1` done # check the process stopped flag... if [ "$PROCESS_STOPPED" = "FALSE" ]; then # failed to stop the process(es), raise a GEMS warning event... raise_gems_event W "Failed to stop the process(es) '${EFTS_AGENT_COMMAND_LINE}'" # kill the process(es)... kill_process else # stopped the process(es), raise a GEMS information event... raise_gems_event I "Stopped the process(es) '${EFTS_AGENT_COMMAND_LINE}'" fi # check the process termination file... if [ -f $PROCESS_TERMINATION_FILE ]; then # the process termination file exists, remove it... rm -f $PROCESS_TERMINATION_FILE fi fi } # subroutine to kill the process(es)... kill_process() { # check the OS... if [ "$OS" = "SunOS" ]; then # the OS is Solaris, truncate the expected EFTS agent command line to a maximum of 79 characters... EXPECTED_EFTS_AGENT_COMMAND_LINE=`echo "${EFTS_AGENT_COMMAND_LINE}" | cut -c1-79` else # the OS is not Solaris, do not truncate the expected EFTS agent command line... EXPECTED_EFTS_AGENT_COMMAND_LINE="${EFTS_AGENT_COMMAND_LINE}" fi # lookup the PID for the process... PID=`ps -eo pid,args | grep "^[ 0-9][0-9]* ${EXPECTED_EFTS_AGENT_COMMAND_LINE}" | head -1 | awk '{ print $1 }'` if [ "$PID" = "" ]; then # failed to lookup the PID for the process, raise a GEMS alarm event and exit... raise_gems_event A "Failed to lookup the PID for the process '${EFTS_AGENT_COMMAND_LINE}'" exit $FAILURE else # succeeded to lookup the PID for the process, kill the process... while [ "$PID" != "" ] do kill -9 $PID EXIT_STATUS=$? if [ $EXIT_STATUS -ne $SUCCESS ]; then # failed to kill the process with the specified PID, raise a GEMS alarm event... raise_gems_event A "Failed to kill the process '${EFTS_AGENT_COMMAND_LINE}' with the PID '${PID}'" else # killed the process with the specified PID, raise a GEMS information event... raise_gems_event I "Killed the process '${EFTS_AGENT_COMMAND_LINE}' with the PID '${PID}'" fi # lookup the PID for the process... PID=`ps -eo pid,args | grep "^[ 0-9][0-9]* ${EXPECTED_EFTS_AGENT_COMMAND_LINE}" | head -1 | awk '{ print $1 }'` done fi } # ==== # MAIN # ==== # check the parameters... check_parameters # check the java environment... check_java_environment # set the process termination file... set_process_termination_file case "$ACTION" in start) # start the process... start_process ;; stop) # stop the process(es)... stop_process ;; kill) # kill the process(es)... kill_process ;; esac exit $SUCCESS 070701000061fa000081fd0000000000000000000000015773d8030000060a000000660000000300000000000000000000002900000000reloc/bin/generate-encrypted-password.sh#!/bin/bash # # Generates an encrypted password for use with an EFTS push or poll agent. # # =========== # VARIABLES # =========== PWD=`dirname $0` EFTS_AGENTS_PATH=$PWD/.. SCRIPT_FILE=`basename $0` DEFAULT_SECRET_KEY_FILE=$EFTS_AGENTS_PATH/DataUnits/secretKeyFile # =========== # SUBROUTINES # =========== # subroutine to report a message... log() { MESSAGE=$1 printf "${SCRIPT_FILE}: ${MESSAGE}\n" } # subroutine to display the usage usage() { printf "usage: ${SCRIPT_FILE} \n" } CLASSPATH=.:$EFTS_AGENTS_PATH/lib/EFTS_Agents.jar:$EFTS_AGENTS_PATH/lib/edtftpj.jar:$EFTS_AGENTS_PATH/lib/GEMS.jar:$EFTS_AGENTS_PATH/lib/activation.jar:$EFTS_AGENTS_PATH/lib/commons-logging.jar:$EFTS_AGENTS_PATH/lib/commons-net.jar:$EFTS_AGENTS_PATH/lib/j2ssh.jar:$EFTS_AGENTS_PATH/lib/jsch.jar:$EFTS_AGENTS_PATH/lib/jakarta-oro.jar:$EFTS_AGENTS_PATH/lib/javaunix.jar:$EFTS_AGENTS_PATH/lib/castor-xml.jar:$EFTS_AGENTS_PATH/lib/jdom.jar:$EFTS_AGENTS_PATH/lib/prefuse.jar:$EFTS_AGENTS_PATH/lib/cron4j.jar:$EFTS_AGENTS_PATH/lib/junit.jar CLEAR_PASSWORD=$1 SECRET_KEY_FILE=$2 if [ "$CLEAR_PASSWORD" = "" ]; then log "No input password entered!" usage; exit 1; fi if [ "$SECRET_KEY_FILE" = "" ]; then # use a default value SECRET_KEY_FILE=$DEFAULT_SECRET_KEY_FILE fi # the Java location JAVA=java if [ "$JAVA_HOME" != "" ] then JAVA=$JAVA_HOME/bin/java fi # run the encryption routine $JAVA -cp $CLASSPATH org.eumetsat.efts.agents.utils.EncryptionUtils -e $CLEAR_PASSWORD $SECRET_KEY_FILE 070701000061fb000081fd0000000000000000000000015773d80300004140000000660000000300000000000000000000001f00000000reloc/bin/genericPluginWrapper#!/bin/sh # # genericPluginWrapper # ==================== # # Purpose: Runs the configured utility on the specified file # # The output directory for the generated file(s) is specified by # the environment variable "$OUTPUT_DIRECTORY". # # Usage: genericPluginWrapper # # = the file to be processed by the configured utility # # $PLUGIN_FILE = the utility to run on the input file # $PLUGIN_FILE_OPTIONS = the options passed to the PLUGIN FILE # $ERROR_DIRECTORY = the directory for storing the input files that resulted in errors # $OUTPUT_FILE_PREFIX = the expected prefix of any output file(s) , use '*' for any prefix: # $OUTPUT_FILE_SUFFIX = the expected suffix of any output file(s) , use '*' for any suffix: # NOTE: all output files are expected to be of the form: # *\$OUTPUT_FILE_SUFFIX # unless $OUTPUT_FILE_BODY_NAME is set, in which case the expected name is: # ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*\${OUTPUT_FILE_SUFFIX} # $OUTPUT_DIRECTORY = the directory for storing the output files # $OUTPUT_DIRECTORY2 = the 2nd directory for storing the output files # $STRIP_SUFFIX = (optional) if 'true' the OUTPUT_FILE_SUFFIX will be stripped from the output filename(s). # NOTE: if OUTPUT_FILE_SUFFIX contains '*' no stripping will occur. # Default is 'false' -> suffix will not be stripped. # $BYPASS_PLUGIN = (optional) if 'true' the plugin will not be run, the will simply be moved to the # $OUTPUT_DIRECTORY. Default is 'false' -> the plugin will be run. # $OUTPUT_FILE_BODY_NAME = (optional) if non-empty, the output filename is assumed to start with this value. # $WORK_IN_SEPARATE_DIR = (optional) if 'true', a subdirectory (named the same as the leaf input filename with .work extension) # is created under the input file directory, and # all processing is performed in this new directory. The directory is deleted # upon completion. Default is 'false', and all work will be performed in the # input file directory # $PLUGIN_GEMS_FACILITY = (optional) the GEMS facility to log any events to # $PLUGIN_ERROR_GEMS_SEVERITY = (optional) the GEMS severity of any plugin error events # $PLUGIN_DESCRIPTION = (optional) the detailed description for the plugin # $PERFORM_OUTPUT_HOUSEKEEPING = (optional) if true the output directories will be housekept after 1 day # $GZIP_OUTPUT_FILES = (optional) if true the output files will be gzipped (before being moved to the output directories) # # Author: Peter Hardman # # History: # # $Revision: $ # # $Date: $ # # $Log: $ # # ==================== # STANDARD DEFINITIONS # ==================== # the name of the script file... SCRIPT_FILE=`basename $0` readonly SCRIPT_FILE # the name of the script directory... SCRIPT_DIRECTORY=`dirname $0` readonly SCRIPT_DIRECTORY # the name of the script parent directory... SCRIPT_PARENT_DIRECTORY=`dirname $SCRIPT_DIRECTORY` readonly SCRIPT_PARENT_DIRECTORY if [ "$EFTS_AGENTS_HOME" = "" ]; then EFTS_AGENTS_HOME=$SCRIPT_PARENT_DIRECTORY fi # the message utilities... . ${SCRIPT_DIRECTORY}/message_utilities.sh # ========== # PARAMETERS # ========== # the input file... INPUT_FILE="" SUCCESS="0" FAILURE="1" # ========= # VARIABLES # ========= # the status returned after executing a command... COMMAND_STATUS="" # =========== # SUBROUTINES # =========== # subroutine to handle a SIGTERM signal... handle_sigterm_signal() { /bin/echo "$SCRIPT_FILE: operation cancelled by user" >&2 /bin/echo "" >&2 exit $FAILURE } trap handle_sigterm_signal 15 # subroutine to display the usage information... usage() { cat << End_Of_Usage >&2 Usage: $SCRIPT_FILE = the file to be processed by the $PLUGIN_FILE plugin \$PLUGIN_FILE = the file specification of the plugin \$ERROR_DIRECTORY = the directory for storing the input files that resulted in errors \$OUTPUT_DIRECTORY = the directory for storing the output files \$OUTPUT_DIRECTORY2 = the 2nd directory for storing the output files \$OUTPUT_FILE_PREFIX = (optional) The prefix of any OUTPUT_DIRECTORY files. \$OUTPUT_FILE_SUFFIX = the expected suffix of any output file(s), use '*' for any suffix: NOTE: all output files are expected to be of the form: *\${OUTPUT_FILE_SUFFIX} unless $OUTPUT_FILE_BODY_NAME is set, in which case the expected name is: ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*\${OUTPUT_FILE_SUFFIX} \$STRIP_SUFFIX = (optional) if 'true' the OUTPUT_FILE_SUFFIX will be stripped from the output filename(s). NOTE: if OUTPUT_FILE_SUFFIX contains '*' no stripping will occur. Default is 'false' -> suffix will not be stripped. \$BYPASS_PLUGIN = (optional) if 'true' the plugin will not be run, the will simply be moved to the $OUTPUT_DIRECTORY. Default is 'false' -> the plugin will be run. \$OUTPUT_FILE_BODY_NAME = (optional) if non-empty the output filename is assumed to start with this value. \$WORK_IN_SEPARATE_DIR = (optional) if 'true', a subdirectory (named the same as the leaf input filename with .work extension) is created under the input file directory, and all processing is performed in this new directory. The directory is deleted upon completion. Default is 'false', and all work will be performed in the input file directory \$PLUGIN_GEMS_FACILITY = (optional) the GEMS facility to log any events to \$PLUGIN_ERROR_GEMS_SEVERITY = (optional) the GEMS severity of any plugin error events \$PLUGIN_DESCRIPTION = (optional) the detailed description for the plugin \$PERFORM_OUTPUT_HOUSEKEEPING = (optional) if true the output directories will be housekept after 1 day \$GZIP_OUTPUT_FILES = (optional) if true the output files will be gzipped (before being moved to the output directories) End_Of_Usage exit $FAILURE } # subroutine to check the parameters for validity... check_parameters() { # check the input file parameter... if [ "$INPUT_FILE" = "" ]; then usage elif [ ! -f $INPUT_FILE ]; then # report the error and exit... report_fatal_error "input file '${INPUT_FILE}' does not exist or is not a regular file" fi } # subroutine to check the environment variables for validity... check_environment_variables() { # check the plugin file environment variable... if [ "$PLUGIN_FILE" = "" ]; then usage elif [ ! -f $PLUGIN_FILE ]; then # report the error and exit... report_fatal_error "plugin file '${PLUGIN_FILE}' does not exist or is not a regular file" fi # check the error directory environment variable... if [ "$ERROR_DIRECTORY" = "" ]; then usage elif [ ! -d $ERROR_DIRECTORY ]; then # report the error and exit... report_fatal_error "error directory '${ERROR_DIRECTORY}' does not exist or is not a directory" fi # check the output directory environment variable... if [ "$OUTPUT_DIRECTORY" = "" ]; then usage elif [ ! -d $OUTPUT_DIRECTORY ]; then # report the error and exit... report_fatal_error "output directory '${OUTPUT_DIRECTORY}' does not exist or is not a directory" fi # check the 2nd output directory environment variable... if [ "$OUTPUT_DIRECTORY2" != "" ]; then if [ ! -d $OUTPUT_DIRECTORY2 ]; then # report the error and exit... report_fatal_error "2nd output directory '${OUTPUT_DIRECTORY2}' does not exist or is not a directory" fi fi if [ "$OUTPUT_FILE_BODY_NAME" = "" ]; then OUTPUT_FILE_BODY_NAME="*" fi if [ "$BYPASS_PLUGIN" = "" ]; then BYPASS_PLUGIN="false" fi if [ "$PLUGIN_GEMS_FACILITY" = "" ]; then REPORT_PLUGIN_ERROR_VIA_GEMS="false" else # GEMS event reporting enabled for plugin errors REPORT_PLUGIN_ERROR_VIA_GEMS="true" if [ "$PLUGIN_ERROR_GEMS_SEVERITY" = "" ]; then # default GEMS severity for plugin errors PLUGIN_ERROR_GEMS_SEVERITY="W" fi fi if [ "$PLUGIN_DESCRIPTION" = "" ]; then # default plugin detailed description PLUGIN_DESCRIPTION="Plugin" fi } # subroutine to ensure the input file is no longer a hard link remove_hard_link() { TEMP_INPUT_FILE=${INPUT_FILE}.TMP # replicate the hard-linked input file... cp $INPUT_FILE $TEMP_INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to copy '${INPUT_FILE}' to '${TEMP_INPUT_FILE}'" fi # remove the hard-linked input file... rm $INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to remove '${INPUT_FILE}'" fi # move the temp input file back to the orginal name mv $TEMP_INPUT_FILE $INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to move '${TEMP_INPUT_FILE}' to '${INPUT_FILE}'" fi } # subroutine to store the input and status files in the error directory... store_input_files() { # move the input file to the error directory... mv $INPUT_FILE $ERROR_DIRECTORY COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to move '${INPUT_FILE}' to '${ERROR_DIRECTORY}'" fi } # subroutine to houskeep the file(s) in the output directory(s)... housekeep_output_files() { if [ "$PERFORM_OUTPUT_HOUSEKEEPING" == "true" ]; then find $OUTPUT_DIRECTORY -name "*" -type f -mtime +0 | xargs -L 1 rm -f if [ "$OUTPUT_DIRECTORY2" != "" ]; then find $OUTPUT_DIRECTORY2 -name "*" -type f -mtime +0 | xargs -L 1 rm -f fi fi } # subroutine to store the output file(s) in the output directory(s)... store_output_files() { # determine the output filename format(s) if [ "$OUTPUT_FILE_BODY_NAME" != "" ]; then OUTPUT_FILE1=`ls ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}` COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # no file report_no_file_generated if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi return 0 else if [ "$GZIP_OUTPUT_FILES" == "true" ]; then gzip ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gzip file(s) '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}'" fi # append the new suffix OUTPUT_FILE_SUFFIX="${OUTPUT_FILE_SUFFIX}.gz" fi if [ "$OUTPUT_DIRECTORY2" != "" ]; then # hard link the file(s) to output directory 1 ln -f ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} $OUTPUT_DIRECTORY COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}' to '${OUTPUT_DIRECTORY}'" fi # hard link the file(s) to output directory 2 ln -f ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} $OUTPUT_DIRECTORY2 COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}' to '${OUTPUT_DIRECTORY2}'" fi # remove the source file(s) rm -f ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} else # move the output file(s) to the output directory... mv ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} $OUTPUT_DIRECTORY COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}' to '${OUTPUT_DIRECTORY}'" fi fi FILES_GENERATED_FORMATTED=`echo $OUTPUT_FILE1 | tr [:space:] ';' | sed 's/\;/; /g'` raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME I "$LEAFNAME generated output file(s): $FILES_GENERATED_FORMATTED" fi # success, remove the input file if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi fi } report_no_file_generated() { # log a GEMS event echo "PLUGIN_DESCRIPTION: $PLUGIN_DESCRIPTION" echo "PLUGIN_LEAFNAME: $PLUGIN_LEAFNAME" echo "LEAFNAME: $LEAFNAME" MSG="$PLUGIN_DESCRIPTION [${PLUGIN_LEAFNAME}] input file [${LEAFNAME}] generated no output file." raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME I "$MSG" } # ==== # MAIN # ==== # set up the parameters... INPUT_FILE=$1 # check the parameters for validity... check_parameters # check the environment variables for validity... check_environment_variables # the plugin file will probably be unable to work on a hard-linked file, # therefore remove the hard link remove_hard_link # housekeep any out files that are older than 1 day housekeep_output_files WORKING_DIR=`dirname $INPUT_FILE` INITIAL_WORKING_DIR=$WORKING_DIR LEAFNAME=`basename $INPUT_FILE` PLUGIN_LEAFNAME=`basename $PLUGIN_FILE` if [ "$WORK_IN_SEPARATE_DIR" = "true" ]; then # create a new dir to work in, and move the input file there WORKING_DIR=$WORKING_DIR/${LEAFNAME}.work mkdir -p $WORKING_DIR mv $INPUT_FILE $WORKING_DIR COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then report_fatal_error "Failed to move [$INPUT_FILE] to [$WORKING_DIR]" fi INPUT_FILE=$WORKING_DIR/$LEAFNAME fi cd $WORKING_DIR if [ "$BYPASS_PLUGIN" = "false" ]; then # execute the plugin with the specified input file... $PLUGIN_FILE $PLUGIN_FILE_OPTIONS $INPUT_FILE COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then ERROR_CODE=$COMMAND_STATUS store_input_files if [ "$REPORT_PLUGIN_ERROR_VIA_GEMS" = "true" ]; then # log a GEMS event MSG="$PLUGIN_DESCRIPTION [${PLUGIN_LEAFNAME}] failed for input file [${LEAFNAME}] error code [${ERROR_CODE}]" raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME $PLUGIN_ERROR_GEMS_SEVERITY "$MSG" fi # report the error and exit... report_fatal_error "failed to run the ${PLUGIN_FILE} plugin on '${INPUT_FILE}' , exit status [${ERROR_CODE}]" else # plugin execution succeeded # store the output files in the output directory... store_output_files # cleanup the working dir, if necessary if [ "$WORK_IN_SEPARATE_DIR" = "true" ]; then cd $INITIAL_WORKING_DIR rm -rf $WORKING_DIR fi fi else # bypass the plugin, simply move the input file to the output directory(s) mv ${INPUT_FILE} ${OUTPUT_DIRECTORY} COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${INPUT_FILE}' to '${OUTPUT_DIRECTORY}'" fi fi exit $SUCCESS 070701000061fc000081fd0000000000000000000000015773d80300004a90000000660000000300000000000000000000002100000000reloc/bin/genericPluginWrapper.2#!/bin/sh # # genericPluginWrapper # ==================== # # Purpose: Runs the configured utility on the specified file # # The output directory for the generated file(s) is specified by # the environment variable "$OUTPUT_DIRECTORY". # # Usage: genericPluginWrapper # # = the file to be processed by the configured utility # # $PLUGIN_FILE = the utility to run on the input file # $PLUGIN_FILE_OPTIONS = the options passed to the PLUGIN FILE # $ERROR_DIRECTORY = the directory for storing the input files that resulted in errors # $OUTPUT_FILE_PREFIX = the expected prefix of any output file(s) , use '*' for any prefix: # $OUTPUT_FILE_SUFFIX = the expected suffix of any output file(s) , use '*' for any suffix: # NOTE: all output files are expected to be of the form: # *\$OUTPUT_FILE_SUFFIX # unless $OUTPUT_FILE_BODY_NAME is set, in which case the expected name is: # ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*\${OUTPUT_FILE_SUFFIX} # $OUTPUT_DIRECTORY = the directory for storing the output files # $OUTPUT_DIRECTORY2 = the 2nd directory for storing the output files # $STRIP_SUFFIX = (optional) if 'true' the OUTPUT_FILE_SUFFIX will be stripped from the output filename(s). # NOTE: if OUTPUT_FILE_SUFFIX contains '*' no stripping will occur. # Default is 'false' -> suffix will not be stripped. # $BYPASS_PLUGIN = (optional) if 'true' the plugin will not be run, the will simply be moved to the # $OUTPUT_DIRECTORY. Default is 'false' -> the plugin will be run. # $OUTPUT_FILE_BODY_NAME = (optional) if non-empty, the output filename is assumed to start with this value. # $WORK_IN_SEPARATE_DIR = (optional) if 'true', a subdirectory (named the same as the leaf input filename with .work extension) # is created under the input file directory, and # all processing is performed in this new directory. The directory is deleted # upon completion. Default is 'false', and all work will be performed in the # input file directory # $PLUGIN_GEMS_FACILITY = (optional) the GEMS facility to log any events to # $PLUGIN_ERROR_GEMS_SEVERITY = (optional) the GEMS severity of any plugin error events # $PLUGIN_DESCRIPTION = (optional) the detailed description for the plugin # $PERFORM_OUTPUT_HOUSEKEEPING = (optional) if true the output directories will be housekept after 1 day # $GUNZIP_INPUT_FILE = (optional) if true the input file will be gunzipped (before being processed) # $BUNZIP_INPUT_FILE = (optional) if true the input file will be bunzipped (before being processed) # $GZIP_OUTPUT_FILES = (optional) if true the output files will be gzipped (before being moved to the output directories) # $BZIP_OUTPUT_FILES = (optional) if true the output files will be bzipped (before being moved to the output directories) # # Author: Peter Hardman # # History: # # $Revision: $ # # $Date: $ # # $Log: $ # # ==================== # STANDARD DEFINITIONS # ==================== # the name of the script file... SCRIPT_FILE=`basename $0` readonly SCRIPT_FILE # the name of the script directory... SCRIPT_DIRECTORY=`dirname $0` readonly SCRIPT_DIRECTORY # the name of the script parent directory... SCRIPT_PARENT_DIRECTORY=`dirname $SCRIPT_DIRECTORY` readonly SCRIPT_PARENT_DIRECTORY if [ "$EFTS_AGENTS_HOME" = "" ]; then EFTS_AGENTS_HOME=$SCRIPT_PARENT_DIRECTORY fi # the message utilities... . ${SCRIPT_DIRECTORY}/message_utilities.sh # ========== # PARAMETERS # ========== # the input file... INPUT_FILE="" SUCCESS="0" FAILURE="1" # ========= # VARIABLES # ========= # the status returned after executing a command... COMMAND_STATUS="" # =========== # SUBROUTINES # =========== # subroutine to handle a SIGTERM signal... handle_sigterm_signal() { /bin/echo "$SCRIPT_FILE: operation cancelled by user" >&2 /bin/echo "" >&2 exit $FAILURE } trap handle_sigterm_signal 15 # subroutine to display the usage information... usage() { cat << End_Of_Usage >&2 Usage: $SCRIPT_FILE = the file to be processed by the $PLUGIN_FILE plugin \$PLUGIN_FILE = the file specification of the plugin \$ERROR_DIRECTORY = the directory for storing the input files that resulted in errors \$OUTPUT_DIRECTORY = the directory for storing the output files \$OUTPUT_DIRECTORY2 = the 2nd directory for storing the output files \$OUTPUT_FILE_PREFIX = (optional) The prefix of any OUTPUT_DIRECTORY files. \$OUTPUT_FILE_SUFFIX = the expected suffix of any output file(s), use '*' for any suffix: NOTE: all output files are expected to be of the form: *\${OUTPUT_FILE_SUFFIX} unless $OUTPUT_FILE_BODY_NAME is set, in which case the expected name is: ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*\${OUTPUT_FILE_SUFFIX} \$STRIP_SUFFIX = (optional) if 'true' the OUTPUT_FILE_SUFFIX will be stripped from the output filename(s). NOTE: if OUTPUT_FILE_SUFFIX contains '*' no stripping will occur. Default is 'false' -> suffix will not be stripped. \$BYPASS_PLUGIN = (optional) if 'true' the plugin will not be run, the will simply be moved to the $OUTPUT_DIRECTORY. Default is 'false' -> the plugin will be run. \$OUTPUT_FILE_BODY_NAME = (optional) if non-empty the output filename is assumed to start with this value. \$WORK_IN_SEPARATE_DIR = (optional) if 'true', a subdirectory (named the same as the leaf input filename with .work extension) is created under the input file directory, and all processing is performed in this new directory. The directory is deleted upon completion. Default is 'false', and all work will be performed in the input file directory \$PLUGIN_GEMS_FACILITY = (optional) the GEMS facility to log any events to \$PLUGIN_ERROR_GEMS_SEVERITY = (optional) the GEMS severity of any plugin error events \$PLUGIN_DESCRIPTION = (optional) the detailed description for the plugin \$PERFORM_OUTPUT_HOUSEKEEPING = (optional) if true the output directories will be housekept after 1 day \$GUNZIP_INPUT_FILE = (optional) if true the input files will be gunzipped (before being processed) \$BUNZIP_INPUT_FILE = (optional) if true the input files will be bunzipped (before being processed) \$GZIP_OUTPUT_FILES = (optional) if true the output files will be gzipped (before being moved to the output directories) \$BZIP_OUTPUT_FILES = (optional) if true the output files will be bzipped (before being moved to the output directories) End_Of_Usage exit $FAILURE } # subroutine to check the parameters for validity... check_parameters() { # check the input file parameter... if [ "$INPUT_FILE" = "" ]; then usage elif [ ! -f $INPUT_FILE ]; then # report the error and exit... report_fatal_error "input file '${INPUT_FILE}' does not exist or is not a regular file" fi } # subroutine to check the environment variables for validity... check_environment_variables() { # check the plugin file environment variable... if [ "$PLUGIN_FILE" = "" ]; then usage elif [ ! -f $PLUGIN_FILE ]; then # report the error and exit... report_fatal_error "plugin file '${PLUGIN_FILE}' does not exist or is not a regular file" fi # check the error directory environment variable... if [ "$ERROR_DIRECTORY" = "" ]; then usage elif [ ! -d $ERROR_DIRECTORY ]; then # report the error and exit... report_fatal_error "error directory '${ERROR_DIRECTORY}' does not exist or is not a directory" fi # check the output directory environment variable... if [ "$OUTPUT_DIRECTORY" = "" ]; then usage elif [ ! -d $OUTPUT_DIRECTORY ]; then # report the error and exit... report_fatal_error "output directory '${OUTPUT_DIRECTORY}' does not exist or is not a directory" fi # check the 2nd output directory environment variable... if [ "$OUTPUT_DIRECTORY2" != "" ]; then if [ ! -d $OUTPUT_DIRECTORY2 ]; then # report the error and exit... report_fatal_error "2nd output directory '${OUTPUT_DIRECTORY2}' does not exist or is not a directory" fi fi if [ "$OUTPUT_FILE_BODY_NAME" = "" ]; then OUTPUT_FILE_BODY_NAME="*" fi if [ "$BYPASS_PLUGIN" = "" ]; then BYPASS_PLUGIN="false" fi if [ "$PLUGIN_GEMS_FACILITY" = "" ]; then REPORT_PLUGIN_ERROR_VIA_GEMS="false" else # GEMS event reporting enabled for plugin errors REPORT_PLUGIN_ERROR_VIA_GEMS="true" if [ "$PLUGIN_ERROR_GEMS_SEVERITY" = "" ]; then # default GEMS severity for plugin errors PLUGIN_ERROR_GEMS_SEVERITY="W" fi fi if [ "$PLUGIN_DESCRIPTION" = "" ]; then # default plugin detailed description PLUGIN_DESCRIPTION="Plugin" fi if [ "$PERFORM_OUTPUT_HOUSEKEEPING" = "" ]; then PERFORM_OUTPUT_HOUSEKEEPING="false" fi if [ "$GUNZIP_INPUT_FILE" = "" ]; then GUNZIP_INPUT_FILE="false" fi if [ "$BUNZIP_INPUT_FILE" = "" ]; then BUNZIP_INPUT_FILE="false" fi if [ "$GZIP_OUTPUT_FILES" = "" ]; then GZIP_OUTPUT_FILES="false" fi if [ "$BZIP_OUTPUT_FILES" = "" ]; then BZIP_OUTPUT_FILES="false" fi } # subroutine to ensure the input file is no longer a hard link remove_hard_link() { TEMP_INPUT_FILE=${INPUT_FILE}.TMP # replicate the hard-linked input file... cp $INPUT_FILE $TEMP_INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to copy '${INPUT_FILE}' to '${TEMP_INPUT_FILE}'" fi # remove the hard-linked input file... rm $INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to remove '${INPUT_FILE}'" fi # move the temp input file back to the orginal name mv $TEMP_INPUT_FILE $INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to move '${TEMP_INPUT_FILE}' to '${INPUT_FILE}'" fi } # subroutine to store the input and status files in the error directory... store_input_files() { # move the input file to the error directory... mv $INPUT_FILE $ERROR_DIRECTORY COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to move '${INPUT_FILE}' to '${ERROR_DIRECTORY}'" fi } # subroutine to houskeep the file(s) in the output directory(s)... housekeep_output_files() { if [ "$PERFORM_OUTPUT_HOUSEKEEPING" = "true" ]; then find $OUTPUT_DIRECTORY -name "*" -type f -mtime +0 | xargs -L 1 rm -f if [ "$OUTPUT_DIRECTORY2" != "" ]; then find $OUTPUT_DIRECTORY2 -name "*" -type f -mtime +0 | xargs -L 1 rm -f fi fi } # subroutine to store the output file(s) in the output directory(s)... store_output_files() { # determine the output filename format(s) if [ "$OUTPUT_FILE_BODY_NAME" != "" ]; then OUTPUT_FILE1=`ls ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}` COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # no file report_no_file_generated if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi return 0 else if [ "$GZIP_OUTPUT_FILES" = "true" ]; then gzip ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gzip file(s) '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}'" fi # append the new suffix OUTPUT_FILE_SUFFIX="${OUTPUT_FILE_SUFFIX}.gz" elif [ "$BZIP_OUTPUT_FILES" = "true" ]; then bzip2 ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gzip file(s) '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}'" fi # append the new suffix OUTPUT_FILE_SUFFIX="${OUTPUT_FILE_SUFFIX}.bz2" fi if [ "$OUTPUT_DIRECTORY2" != "" ]; then # hard link the file(s) to output directory 1 ln -f ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} $OUTPUT_DIRECTORY COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}' to '${OUTPUT_DIRECTORY}'" fi # hard link the file(s) to output directory 2 ln -f ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} $OUTPUT_DIRECTORY2 COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}' to '${OUTPUT_DIRECTORY2}'" fi # remove the source file(s) rm -f ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} else # move the output file(s) to the output directory... mv ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} $OUTPUT_DIRECTORY COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}' to '${OUTPUT_DIRECTORY}'" fi fi FILES_GENERATED_FORMATTED=`echo $OUTPUT_FILE1 | tr [:space:] ';' | sed 's/\;/; /g'` raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME I "$LEAFNAME generated output file(s): $FILES_GENERATED_FORMATTED" fi # success, remove the input file if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi fi } report_no_file_generated() { # log a GEMS event echo "PLUGIN_DESCRIPTION: $PLUGIN_DESCRIPTION" echo "PLUGIN_LEAFNAME: $PLUGIN_LEAFNAME" echo "LEAFNAME: $LEAFNAME" MSG="$PLUGIN_DESCRIPTION [${PLUGIN_LEAFNAME}] input file [${LEAFNAME}] generated no output file." raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME I "$MSG" } # ==== # MAIN # ==== # set up the parameters... INPUT_FILE=$1 # check the parameters for validity... check_parameters # check the environment variables for validity... check_environment_variables # the plugin file will probably be unable to work on a hard-linked file, # therefore remove the hard link remove_hard_link # housekeep any out files that are older than 1 day housekeep_output_files WORKING_DIR=`dirname $INPUT_FILE` INITIAL_WORKING_DIR=$WORKING_DIR LEAFNAME=`basename $INPUT_FILE` PLUGIN_LEAFNAME=`basename $PLUGIN_FILE` if [ "$WORK_IN_SEPARATE_DIR" = "true" ]; then # create a new dir to work in, and move the input file there WORKING_DIR=$WORKING_DIR/${LEAFNAME}.work mkdir -p $WORKING_DIR mv $INPUT_FILE $WORKING_DIR COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then report_fatal_error "Failed to move [$INPUT_FILE] to [$WORKING_DIR]" fi INPUT_FILE=$WORKING_DIR/$LEAFNAME fi cd $WORKING_DIR if [ "$GUNZIP_INPUT_FILE" = "true" ]; then gunzip ${INPUT_FILE} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gunzip file '${INPUT_FILE}'" fi # decompression ok, repoint the input filename LEAFNAME=`basename $INPUT_FILE .gz` INPUT_FILE=$WORKING_DIR/$LEAFNAME elif [ "$BUNZIP_INPUT_FILE" = "true" ]; then bunzip2 ${INPUT_FILE} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to bunzip2 file '${INPUT_FILE}'" fi # decompression ok, repoint the input filename LEAFNAME=`basename $INPUT_FILE .bz2` INPUT_FILE=$WORKING_DIR/$LEAFNAME fi if [ "$BYPASS_PLUGIN" = "false" ]; then # execute the plugin with the specified input file... $PLUGIN_FILE $PLUGIN_FILE_OPTIONS $INPUT_FILE COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then ERROR_CODE=$COMMAND_STATUS store_input_files if [ "$REPORT_PLUGIN_ERROR_VIA_GEMS" = "true" ]; then # log a GEMS event MSG="$PLUGIN_DESCRIPTION [${PLUGIN_LEAFNAME}] failed for input file [${LEAFNAME}] error code [${ERROR_CODE}]" raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME $PLUGIN_ERROR_GEMS_SEVERITY "$MSG" fi # report the error and exit... report_fatal_error "failed to run the ${PLUGIN_FILE} plugin on '${INPUT_FILE}' , exit status [${ERROR_CODE}]" else # plugin execution succeeded # store the output files in the output directory... store_output_files # cleanup the working dir, if necessary if [ "$WORK_IN_SEPARATE_DIR" = "true" ]; then cd $INITIAL_WORKING_DIR rm -rf $WORKING_DIR fi fi else # bypass the plugin, simply move the input file to the output directory(s) mv ${INPUT_FILE} ${OUTPUT_DIRECTORY} COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${INPUT_FILE}' to '${OUTPUT_DIRECTORY}'" fi fi exit $SUCCESS 070701000061fd000081fd0000000000000000000000015773d80300006583000000660000000300000000000000000000002100000000reloc/bin/genericPluginWrapper.3#!/bin/sh # # genericPluginWrapper # ==================== # # Purpose: Runs the configured utility on the specified file # # The output directory for the generated file(s) is specified by # the environment variable "$OUTPUT_DIRECTORY". # # Usage: genericPluginWrapper # # = the file to be processed by the configured utility # # $PLUGIN_FILE = the utility to run on the input file # $ERROR_DIRECTORY = the directory for storing the input files that resulted in errors # $OUTPUT_FILE_PREFIX = the expected prefix of any output file(s) , use '*' for any prefix: # $OUTPUT_FILE_SUFFIX = the expected suffix of any output file(s) , use '*' for any suffix: # NOTE: all output files are expected to be of the form: # *\$OUTPUT_FILE_SUFFIX # unless $OUTPUT_FILE_BODY_NAME is set, in which case the expected name is: # ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*\${OUTPUT_FILE_SUFFIX} # $OUTPUT_DIRECTORY = the directory for storing the output files # $STRIP_SUFFIX = (optional) if 'true' the OUTPUT_FILE_SUFFIX will be stripped from the output filename(s). # NOTE: if OUTPUT_FILE_SUFFIX contains '*' no stripping will occur. # Default is 'false' -> suffix will not be stripped. # $BYPASS_PLUGIN = (optional) if 'true' the plugin will not be run, the will simply be moved to the # $OUTPUT_DIRECTORY. Default is 'false' -> the plugin will be run. # $OUTPUT_FILE_BODY_NAME = (optional) if non-empty, the output filename is assumed to start with this value. # $WORK_IN_SEPARATE_DIR = (optional) if 'true', a subdirectory (named the same as the leaf input filename with .work extension) # is created under the input file directory, and # all processing is performed in this new directory. The directory is deleted # upon completion. Default is 'false', and all work will be performed in the # input file directory # $OUTPUT_DIRECTORY2 = (optional) the second directory for storing the output files # $OUTPUT_FILE_PREFIX2 = (optional) The prefix of any OUTPUT_DIRECTORY2 files. # This variable is required if the plugin generates 2 output files. Any # output files with this prefix (and suffix defined by OUTPUT_FILE_SUFFIX2) # will be copied to OUTPUT_DIRECTORY2 (if set). # $OUTPUT_FILE_SUFFIX2 = (optional) same as OUTPUT_FILE_SUFFIX, but for OUTPUT_DIRECTORY2 files. # This variable is required if the plugin generates 2 output files. Any # output files with this suffix (and prefix defined by OUTPUT_FILE_PREFIX2) will be copied to OUTPUT_DIRECTORY2 (if set). # $OUTPUT_DIRECTORY3 = (optional) the third directory for storing a duplicate of the 1st output file(s) # $PLUGIN_GEMS_FACILITY = (optional) the GEMS facility to log any events to # $PLUGIN_ERROR_GEMS_SEVERITY = (optional) the GEMS severity of any plugin error events # $PLUGIN_DESCRIPTION = (optional) the detailed description for the plugin # $PLUGIN_FILE_OPTIONS = (optional) plugin options # $PERFORM_OUTPUT_HOUSEKEEPING = (optional) if true the output directories will be housekept after 1 day # $GUNZIP_INPUT_FILE = (optional) if true the input file will be gunzipped (before being processed) # $BUNZIP_INPUT_FILE = (optional) if true the input file will be bunzipped (before being processed) # $GZIP_OUTPUT_FILES = (optional) if true the output files will be gzipped (before being moved to the output directories) # $BZIP_OUTPUT_FILES = (optional) if true the output files will be bzipped (before being moved to the output directories) # $RAISE_GENERATED_FILES_MSG = (optional) if true the output files generated will be written to GEMS # # Author: Peter Hardman # # History: # # $Revision: $ # # $Date: $ # # $Log: $ # # ==================== # STANDARD DEFINITIONS # ==================== # the name of the script file... SCRIPT_FILE=`basename $0` readonly SCRIPT_FILE # the name of the script directory... SCRIPT_DIRECTORY=`dirname $0` readonly SCRIPT_DIRECTORY # the name of the script parent directory... SCRIPT_PARENT_DIRECTORY=`dirname $SCRIPT_DIRECTORY` readonly SCRIPT_PARENT_DIRECTORY if [ "$EFTS_AGENTS_HOME" = "" ]; then EFTS_AGENTS_HOME=$SCRIPT_PARENT_DIRECTORY fi # the message utilities... . ${SCRIPT_DIRECTORY}/message_utilities.sh # ========== # PARAMETERS # ========== # the input file... INPUT_FILE="" SUCCESS="0" FAILURE="1" # ========= # VARIABLES # ========= # the status returned after executing a command... COMMAND_STATUS="" # =========== # SUBROUTINES # =========== # subroutine to handle a SIGTERM signal... handle_sigterm_signal() { /bin/echo "$SCRIPT_FILE: operation cancelled by user" >&2 /bin/echo "" >&2 exit $FAILURE } trap handle_sigterm_signal 15 # subroutine to display the usage information... usage() { cat << End_Of_Usage >&2 Usage: $SCRIPT_FILE = the file to be processed by the $PLUGIN_FILE plugin \$PLUGIN_FILE = the file specification of the plugin \$ERROR_DIRECTORY = the directory for storing the input files that resulted in errors \$OUTPUT_DIRECTORY = the directory for storing the output files \$OUTPUT_FILE_PREFIX = (optional) The prefix of any OUTPUT_DIRECTORY files. \$OUTPUT_FILE_SUFFIX = the expected suffix of any output file(s), use '*' for any suffix: NOTE: all output files are expected to be of the form: *\${OUTPUT_FILE_SUFFIX} unless $OUTPUT_FILE_BODY_NAME is set, in which case the expected name is: ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*\${OUTPUT_FILE_SUFFIX} \$STRIP_SUFFIX = (optional) if 'true' the OUTPUT_FILE_SUFFIX will be stripped from the output filename(s). NOTE: if OUTPUT_FILE_SUFFIX contains '*' no stripping will occur. Default is 'false' -> suffix will not be stripped. \$BYPASS_PLUGIN = (optional) if 'true' the plugin will not be run, the will simply be moved to the $OUTPUT_DIRECTORY. Default is 'false' -> the plugin will be run. \$OUTPUT_FILE_BODY_NAME = (optional) if non-empty the output filename is assumed to start with this value. \$WORK_IN_SEPARATE_DIR = (optional) if 'true', a subdirectory (named the same as the leaf input filename with .work extension) is created under the input file directory, and all processing is performed in this new directory. The directory is deleted upon completion. Default is 'false', and all work will be performed in the input file directory \$OUTPUT_DIRECTORY2 = (optional) the second directory for storing the output files \$OUTPUT_FILE_PREFIX2 = (optional) The prefix of any OUTPUT_DIRECTORY2 files. This variable is required if the plugin generates 2 output files. Any output files with this prefix (and suffix defined by OUTPUT_FILE_SUFFIX2) will be copied to OUTPUT_DIRECTORY2 (if set). \$OUTPUT_FILE_SUFFIX2 = (optional) same as OUTPUT_FILE_SUFFIX, but for OUTPUT_DIRECTORY2 files. This variable is required if the plugin generates 2 output files. Any output files with this suffix (and prefix defined by OUTPUT_FILE_PREFIX2) will be copied to OUTPUT_DIRECTORY2 (if set). If empty the output files matched by OUTPUT_FILE_SUFFIX will be copied to OUTPUT_DIRECTORY2 (if set). \$OUTPUT_DIRECTORY3 = (optional) the third directory for storing a duplicate of the first output file(s) \$PLUGIN_GEMS_FACILITY = (optional) the GEMS facility to log any events to \$PLUGIN_ERROR_GEMS_SEVERITY = (optional) the GEMS severity of any plugin error events \$PLUGIN_DESCRIPTION = (optional) the detailed description for the plugin \$PLUGIN_FILE_OPTIONS = (optional) plugin options \$PERFORM_OUTPUT_HOUSEKEEPING = (optional) if true the output directories will be housekept after 1 day \$GUNZIP_INPUT_FILE = (optional) if true the input file will be gunzipped (before being processed) \$BUNZIP_INPUT_FILE = (optional) if true the input file will be bunzipped (before being processed) \$GZIP_OUTPUT_FILES = (optional) if true the output files will be gzipped (before being moved to the output directories) \$BZIP_OUTPUT_FILES = (optional) if true the output files will be bzipped (before being moved to the output directories) \$RAISE_GENERATED_FILES_MSG = (optional) if true the output files generated will be written to GEMS End_Of_Usage exit $FAILURE } # subroutine to check the parameters for validity... check_parameters() { # check the input file parameter... if [ "$INPUT_FILE" = "" ]; then usage elif [ ! -f $INPUT_FILE ]; then # report the error and exit... report_fatal_error "input file '${INPUT_FILE}' does not exist or is not a regular file" fi } # subroutine to check the environment variables for validity... check_environment_variables() { # check the plugin file environment variable... if [ "$PLUGIN_FILE" = "" ]; then usage elif [ ! -f $PLUGIN_FILE ]; then # report the error and exit... report_fatal_error "plugin file '${PLUGIN_FILE}' does not exist or is not a regular file" fi # check the error directory environment variable... if [ "$ERROR_DIRECTORY" = "" ]; then usage elif [ ! -d $ERROR_DIRECTORY ]; then # report the error and exit... report_fatal_error "error directory '${ERROR_DIRECTORY}' does not exist or is not a directory" fi # check the output directory environment variable... if [ "$OUTPUT_DIRECTORY" = "" ]; then usage elif [ ! -d $OUTPUT_DIRECTORY ]; then # report the error and exit... report_fatal_error "output directory '${OUTPUT_DIRECTORY}' does not exist or is not a directory" fi # check the second output directory environment variable... if [ "$OUTPUT_DIRECTORY2" != "" ]; then if [ ! -d $OUTPUT_DIRECTORY2 ]; then # report the error and exit... report_fatal_error "second output directory '${OUTPUT_DIRECTORY2}' does not exist or is not a directory" fi if [ "$OUTPUT_FILE_SUFFIX2" = "" ]; then # no OUTPUT_FILE_SUFFIX2 set, duplicate all files matched by OUTPUT_FILE_SUFFIX to OUTPUT_DIRECTORY2 DUPLICATE_FIRST_OUTPUTFILE="true" fi fi # check the third output directory environment variable... if [ "$OUTPUT_DIRECTORY3" != "" ]; then if [ ! -d $OUTPUT_DIRECTORY3 ]; then # report the error and exit... report_fatal_error "third output directory '${OUTPUT_DIRECTORY3}' does not exist or is not a directory" fi fi if [ "$OUTPUT_FILE_BODY_NAME" = "" ]; then OUTPUT_FILE_BODY_NAME="*" fi if [ "$BYPASS_PLUGIN" = "" ]; then BYPASS_PLUGIN="false" fi if [ "$PLUGIN_GEMS_FACILITY" = "" ]; then REPORT_PLUGIN_ERROR_VIA_GEMS="false" else # GEMS event reporting enabled for plugin errors REPORT_PLUGIN_ERROR_VIA_GEMS="true" if [ "$PLUGIN_ERROR_GEMS_SEVERITY" = "" ]; then # default GEMS severity for plugin errors PLUGIN_ERROR_GEMS_SEVERITY="W" fi fi if [ "$PLUGIN_DESCRIPTION" = "" ]; then # default plugin detailed description PLUGIN_DESCRIPTION="Plugin" fi if [ "$PERFORM_OUTPUT_HOUSEKEEPING" = "" ]; then PERFORM_OUTPUT_HOUSEKEEPING="false" fi if [ "$GUNZIP_INPUT_FILE" = "" ]; then GUNZIP_INPUT_FILE="false" fi if [ "$BUNZIP_INPUT_FILE" = "" ]; then BUNZIP_INPUT_FILE="false" fi if [ "$GZIP_OUTPUT_FILES" = "" ]; then GZIP_OUTPUT_FILES="false" fi if [ "$BZIP_OUTPUT_FILES" = "" ]; then BZIP_OUTPUT_FILES="false" fi if [ "$RAISE_GENERATED_FILES_MSG" = "" ]; then RAISE_GENERATED_FILES_MSG="false" fi } # subroutine to ensure the input file is no longer a hard link remove_hard_link() { TEMP_INPUT_FILE=${INPUT_FILE}.TMP # replicate the hard-linked input file... cp $INPUT_FILE $TEMP_INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to copy '${INPUT_FILE}' to '${TEMP_INPUT_FILE}'" fi # remove the hard-linked input file... rm $INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to remove '${INPUT_FILE}'" fi # move the temp input file back to the orginal name mv $TEMP_INPUT_FILE $INPUT_FILE COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to move '${TEMP_INPUT_FILE}' to '${INPUT_FILE}'" fi } # subroutine to store the input and status files in the error directory... store_input_files() { # move the input file to the error directory... mv $INPUT_FILE $ERROR_DIRECTORY COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error... report_error "failed to move '${INPUT_FILE}' to '${ERROR_DIRECTORY}'" fi } # subroutine to houskeep the file(s) in the output directory(s)... housekeep_output_files() { if [ "$PERFORM_OUTPUT_HOUSEKEEPING" = "true" ]; then find $OUTPUT_DIRECTORY -name "*" -type f -mtime +0 | xargs -L 1 rm -f if [ "$OUTPUT_DIRECTORY2" != "" ]; then find $OUTPUT_DIRECTORY2 -name "*" -type f -mtime +0 | xargs -L 1 rm -f fi if [ "$OUTPUT_DIRECTORY3" != "" ]; then find $OUTPUT_DIRECTORY3 -name "*" -type f -mtime +0 | xargs -L 1 rm -f fi fi } # subroutine to store the output file(s) in the output directory(s)... store_output_files() { OUTPUT_FILE2="XXX" # determine the output filename format(s) if [ "$OUTPUT_FILE_BODY_NAME" != "" ]; then if [ "$GZIP_OUTPUT_FILES" = "true" ]; then gzip ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gzip file(s) '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}'" fi # append the new suffix OUTPUT_FILE_SUFFIX="${OUTPUT_FILE_SUFFIX}.gz" elif [ "$BZIP_OUTPUT_FILES" = "true" ]; then bzip2 ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gzip file(s) '${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}'" fi # append the new suffix OUTPUT_FILE_SUFFIX="${OUTPUT_FILE_SUFFIX}.bz2" fi OUTPUT_FILE1=`ls ${OUTPUT_FILE_PREFIX}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX}` COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # no file report_no_file_generated if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi return 0 else if [ -f ${OUTPUT_FILE_PREFIX2}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX2} ]; then OUTPUT_FILE2=`ls ${OUTPUT_FILE_PREFIX2}*${OUTPUT_FILE_BODY_NAME}*${OUTPUT_FILE_SUFFIX2}` fi fi else OUTPUT_FILE1=`ls ${OUTPUT_FILE_PREFIX}*${INPUT_FILE}*${OUTPUT_FILE_SUFFIX}` COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # no file report_no_file_generated if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi return 0 else if [ -f ${OUTPUT_FILE_PREFIX2}*${INPUT_FILE}*${OUTPUT_FILE_SUFFIX2} ]; then OUTPUT_FILE2=`ls ${OUTPUT_FILE_PREFIX2}*${INPUT_FILE}*${OUTPUT_FILE_SUFFIX2}` fi fi fi if [ "$DUPLICATE_FIRST_OUTPUTFILE" != "true" ]; then if [ "$OUTPUT_DIRECTORY2" != "" ]; then if [ -f $OUTPUT_FILE2 ]; then NEWFILENAME=$OUTPUT_FILE2 # strip the suffix from the output filename if required if [ "$STRIP_SUFFIX" = "true" ]; then CONTAINS_WILDCARD=`echo $STRIP_SUFFIX | egrep ".*\*.*"` if [ "$CONTAINS_WILDCARD" = "" ]; then NEWFILENAME=`echo $OUTPUT_FILE2 | sed s/${OUTPUT_FILE_SUFFIX2}$//` fi # move the second output file to the second output directory... mv ${OUTPUT_FILE2} ${OUTPUT_DIRECTORY2}/$NEWFILENAME COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${OUTPUT_FILE2}' to '${OUTPUT_DIRECTORY2}/${NEWFILENAME}'" fi else # move the second output file to the second output directory... mv ${OUTPUT_FILE2} ${OUTPUT_DIRECTORY2} COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${OUTPUT_FILE2}' to '${OUTPUT_DIRECTORY2}'" fi fi else # plugin did not generate a second output file - # duplicate the first output file to the second output directory too DUPLICATE_FIRST_OUTPUTFILE="true" fi fi fi if [ -f $OUTPUT_FILE1 ]; then # output file generated # strip the suffix from the output filename if required if [ "$STRIP_SUFFIX" = "true" ]; then CONTAINS_WILDCARD=`echo $STRIP_SUFFIX | egrep ".*\*.*"` if [ "$CONTAINS_WILDCARD" = "" ]; then NEWFILENAME=`echo $OUTPUT_FILE1 | sed s/${OUTPUT_FILE_SUFFIX}$//` mv $OUTPUT_FILE1 $NEWFILENAME if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to rename '${OUTPUT_FILE1}' to '${NEWFILENAME}'" fi OUTPUT_FILE1=$NEWFILENAME fi fi if [ "$DUPLICATE_FIRST_OUTPUTFILE" = "true" ]; then # hard link output file to output dirs 1, 2 and 3 ln ${OUTPUT_FILE1} $OUTPUT_DIRECTORY if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE1}' to '${OUTPUT_DIRECTORY}'" fi ln ${OUTPUT_FILE1} $OUTPUT_DIRECTORY2 if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE1}' to '${OUTPUT_DIRECTORY2}'" fi if [ "$OUTPUT_DIRECTORY3" != "" ]; then ln ${OUTPUT_FILE1} $OUTPUT_DIRECTORY3 if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE1}' to '${OUTPUT_DIRECTORY3}'" fi fi rm ${OUTPUT_FILE1} else if [ "$OUTPUT_DIRECTORY3" != "" ]; then ln ${OUTPUT_FILE1} $OUTPUT_DIRECTORY3 if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${OUTPUT_FILE1}' to '${OUTPUT_DIRECTORY3}'" fi fi # move the output file 1 to the output directory... mv ${OUTPUT_FILE1} $OUTPUT_DIRECTORY COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${OUTPUT_FILE1}' to '${OUTPUT_DIRECTORY}'" fi fi if [ "$RAISE_GENERATED_FILES_MSG" = "true" ]; then FILES_GENERATED_FORMATTED=`echo $OUTPUT_FILE1 | tr [:space:] ';' | sed 's/\;/; /g'` raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME I "$LEAFNAME generated output file(s): $FILES_GENERATED_FORMATTED" fi # success, remove the input file if [ -f $INPUT_FILE ]; then rm -f ${INPUT_FILE} fi else # no output file was generated. Since store_output_file should only be called # when the plugin returns 0 (success), this should not be considered an error. echo "no file generated" # report the error and exit... #report_fatal_error "output file '${OUTPUT_FILE1}' does not exist or is not a regular file" fi } report_no_file_generated() { # log a GEMS event echo "PLUGIN_DESCRIPTION: $PLUGIN_DESCRIPTION" echo "PLUGIN_LEAFNAME: $PLUGIN_LEAFNAME" echo "LEAFNAME: $LEAFNAME" MSG="$PLUGIN_DESCRIPTION [${PLUGIN_LEAFNAME}] input file [${LEAFNAME}] generated no output file." raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME I "$MSG" } # ==== # MAIN # ==== # set up the parameters... INPUT_FILE=$1 # check the parameters for validity... check_parameters # check the environment variables for validity... check_environment_variables # the plugin file will probably be unable to work on a hard-linked file, # therefore remove the hard link remove_hard_link # housekeep any out files that are older than 1 day housekeep_output_files WORKING_DIR=`dirname $INPUT_FILE` INITIAL_WORKING_DIR=$WORKING_DIR LEAFNAME=`basename $INPUT_FILE` PLUGIN_LEAFNAME=`basename $PLUGIN_FILE` if [ "$WORK_IN_SEPARATE_DIR" = "true" ]; then # create a new dir to work in, and move the input file there WORKING_DIR=$WORKING_DIR/${LEAFNAME}.work mkdir -p $WORKING_DIR mv $INPUT_FILE $WORKING_DIR COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then report_fatal_error "Failed to move [$INPUT_FILE] to [$WORKING_DIR]" fi INPUT_FILE=$WORKING_DIR/$LEAFNAME fi cd $WORKING_DIR if [ "$GUNZIP_INPUT_FILE" = "true" ]; then gunzip ${INPUT_FILE} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to gunzip file '${INPUT_FILE}'" fi # decompression ok, repoint the input filename LEAFNAME=`basename $INPUT_FILE .gz` INPUT_FILE=$WORKING_DIR/$LEAFNAME elif [ "$BUNZIP_INPUT_FILE" = "true" ]; then bunzip2 ${INPUT_FILE} COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to bunzip2 file '${INPUT_FILE}'" fi # decompression ok, repoint the input filename LEAFNAME=`basename $INPUT_FILE .bz2` INPUT_FILE=$WORKING_DIR/$LEAFNAME fi if [ "$BYPASS_PLUGIN" = "false" ]; then # execute the plugin with the specified input file... $PLUGIN_FILE $PLUGIN_FILE_OPTIONS $INPUT_FILE COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then ERROR_CODE=$COMMAND_STATUS store_input_files if [ "$REPORT_PLUGIN_ERROR_VIA_GEMS" = "true" ]; then # log a GEMS event MSG="$PLUGIN_DESCRIPTION [${PLUGIN_LEAFNAME}] failed for input file [${LEAFNAME}] error code [${ERROR_CODE}]" raise_gems_event $PLUGIN_GEMS_FACILITY $PLUGIN_LEAFNAME $PLUGIN_ERROR_GEMS_SEVERITY "$MSG" fi # report the error and exit... report_fatal_error "failed to run the ${PLUGIN_FILE} plugin on '${INPUT_FILE}' , exit status [${ERROR_CODE}]" else # plugin execution succeeded # store the output files in the output directory... store_output_files # cleanup the working dir, if necessary if [ "$WORK_IN_SEPARATE_DIR" = "true" ]; then cd $INITIAL_WORKING_DIR rm -rf $WORKING_DIR fi fi else # bypass the plugin, simply move (or link) the input file to the output directory(s) if [ "$OUTPUT_DIRECTORY2" != "" ]; then # hard link output file to output dirs 1 and 2 ln ${INPUT_FILE} $OUTPUT_DIRECTORY if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${INPUT_FILE}' to '${OUTPUT_DIRECTORY}'" fi ln ${INPUT_FILE} $OUTPUT_DIRECTORY2 if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to hard link '${INPUT_FILE}' to '${OUTPUT_DIRECTORY2}'" fi rm ${INPUT_FILE} else mv ${INPUT_FILE} ${OUTPUT_DIRECTORY} COMMAND_STATUS=$? # check for the occurence of an error... if [ "$COMMAND_STATUS" != "$SUCCESS" ]; then # report the error and exit... report_fatal_error "failed to move '${INPUT_FILE}' to '${OUTPUT_DIRECTORY}'" fi fi fi exit $SUCCESS 070701000061fe000081fd0000000000000000000000015773d80300001996000000660000000300000000000000000000001700000000reloc/bin/lookup-value#!/bin/sh #------------------------------------------------------------------------------ # Copyright (C) 2007 by EUMETSAT #------------------------------------------------------------------------------ # # Project: Generic # # Component: EFTS Agents # # Module: lookup-value # # Author: Anthony Patchett # # Creation Date: 11/02/2006 # #------------------------------------------------------------------------------ # # 001 Patchett 11/02/2006 Initial version # 002 Patchett 17/05/2007 Improved to run on other *NIX platforms # 003 Patchett 08/07/2007 Added processing for template values # #------------------------------------------------------------------------------ # # Looks up the value for the specified property in the specified properties # file. # #------------------------------------------------------------------------------ # # Usage: # # lookup-value property properties-file # #------------------------------------------------------------------------------ # ==================== # STANDARD DEFINITIONS # ==================== # the command search path... PATH=/bin:/sbin:/usr/bin:/usr/sbin # ========= # CONSTANTS # ========= # the script file... SCRIPT_FILE=`basename $0` readonly SCRIPT_FILE # the exit value for success... SUCCESS=0 readonly SUCCESS # the exit value for failure... FAILURE=1 readonly FAILURE # the reference property file property... REFERENCE_PROPERTY_FILE_PROPERTY="EFTS.RefPropertyFile" readonly REFERENCE_PROPERTY_FILE_PROPERTY # the reference property file property pattern... REFERENCE_PROPERTY_FILE_PROPERTY_PATTERN="^"`echo $REFERENCE_PROPERTY_FILE_PROPERTY | sed 's/\./\\\./g'` readonly REFERENCE_PROPERTY_FILE_PROPERTY_PATTERN # the template property value file property... TEMPLATE_PROPERTY_VALUE_FILE_PROPERTY="EFTS.TemplatePropertyValueFile" readonly TEMPLATE_PROPERTY_VALUE_FILE_PROPERTY # the template property value file property pattern... TEMPLATE_PROPERTY_VALUE_FILE_PROPERTY_PATTERN="^"`echo $TEMPLATE_PROPERTY_VALUE_FILE_PROPERTY | sed 's/\./\\\./g'` readonly TEMPLATE_PROPERTY_VALUE_FILE_PROPERTY_PATTERN # ========== # PARAMETERS # ========== # the property... PROPERTY=$1 # the properties file... PROPERTIES_FILE=$2 # ========= # VARIABLES # ========= # the property pattern... PROPERTY_PATTERN="" # the reference property file... REFERENCE_PROPERTY_FILE="" # the template value pattern... TEMPLATE_VALUE_PATTERN="" # the template property value file... TEMPLATE_PROPERTY_VALUE_FILE="" # the value... VALUE="" # the exit status... EXIT_STATUS="" # =========== # SUBROUTINES # =========== # subroutine to display the usage information... display_usage_information() { cat << EndOfUsage >&2 Usage: $SCRIPT_FILE property properties-file EndOfUsage exit $FAILURE } # subroutine to check the parameters... check_parameters() { # check the property parameter... if [ "$PROPERTY" = "" ]; then # the property parameter has not been specified, display the usage information... display_usage_information fi # check the properties file parameter... if [ "$PROPERTIES_FILE" = "" ]; then # the properties file parameter has not been specified, display the usage information... display_usage_information elif [ ! -f $PROPERTIES_FILE ]; then # the properties file does not exist, report the error and exit... printf "The properties file '${PROPERTIES_FILE}' does not exist\n" >&2 exit $FAILURE fi } # subroutine to lookup the value in the properties file... lookup_value_in_properties_file() { # set the property pattern... PROPERTY_PATTERN="^"`echo $PROPERTY | sed 's/\./\\\./g'` # lookup the value in the properties file... VALUE=`grep "${PROPERTY_PATTERN}" $PROPERTIES_FILE | awk -F"=" '{ print $2 }' | sed 's/^[ \t]*//' | sed 's/[ \t]*$//'` } # subroutine to lookup the value in the reference property file... lookup_value_in_reference_property_file() { # lookup the reference property file... REFERENCE_PROPERTY_FILE=`grep "${REFERENCE_PROPERTY_FILE_PROPERTY_PATTERN}" $PROPERTIES_FILE | awk -F"=" '{ print $2 }' | sed 's/^[ \t]*//' | sed 's/[ \t]*$//'` if [ "$REFERENCE_PROPERTY_FILE" = "" ]; then # a reference property file is not specified in the properties file, set the value accordingly... VALUE="" elif [ ! -f $REFERENCE_PROPERTY_FILE ]; then # the reference property file does not exist, set the value accordingly... VALUE="" else # the reference property file does exist, lookup the value in the reference property file... VALUE=`grep "${PROPERTY_PATTERN}" $REFERENCE_PROPERTY_FILE | awk -F"=" '{ print $2 }' | sed 's/^[ \t]*//' | sed 's/[ \t]*$//'` fi } # subroutine to lookup the value in the template property value file... lookup_value_in_template_property_value_file() { # set the template value pattern (remove the leading and trailing "%" from the value)... TEMPLATE_VALUE_PATTERN="^"`echo $VALUE | sed 's/%//g'` # lookup the template property value file... TEMPLATE_PROPERTY_VALUE_FILE=`grep "${TEMPLATE_PROPERTY_VALUE_FILE_PROPERTY_PATTERN}" $PROPERTIES_FILE | awk -F"=" '{ print $2 }' | sed 's/^[ \t]*//' | sed 's/[ \t]*$//'` if [ "$TEMPLATE_PROPERTY_VALUE_FILE" = "" ]; then # a template property value file is not specified in the properties file, set the value accordingly... VALUE="" elif [ ! -f $TEMPLATE_PROPERTY_VALUE_FILE ]; then # the template property value file does not exist, set the value accordingly... VALUE="" else # the template property value file does exist, lookup the value in the template property value file... VALUE=`grep "${TEMPLATE_VALUE_PATTERN}" $TEMPLATE_PROPERTY_VALUE_FILE | awk -F"=" '{ print $2 }' | sed 's/^[ \t]*//' | sed 's/[ \t]*$//'` fi } # ==== # MAIN # ==== # check the parameters... check_parameters # lookup the value in the properties file... lookup_value_in_properties_file if [ "$VALUE" = "" ]; then # the value was not found, lookup the value in the reference property file... lookup_value_in_reference_property_file fi # check if the value contains a template value (i.e. has a leading and trailing "%")... echo $VALUE | grep -q "^%.*%$" EXIT_STATUS=$? if [ $EXIT_STATUS -eq $SUCCESS ]; then # the value contains a template value, lookup the value in the template property value file... lookup_value_in_template_property_value_file fi # output the value... echo "$VALUE" exit $SUCCESS 070701000061ff000081fd0000000000000000000000015773d80300000e7f000000660000000300000000000000000000001f00000000reloc/bin/message_utilities.sh#!/bin/sh # # message_utilities # ================= # # Purpose: Provides the message utilities # # Usage: . standard_definitions.sh # . message_utilities.sh # # Author: EUMETSAT # # History: # # $Revision: $ # # $Date: $ # # $Log: $ # # ========= # CONSTANTS # ========= # the bell character... BELL="\07" readonly BELL # ========= # VARIABLES # ========= # the tracing flag (set to "ON" to enable tracing)... TRACING="" # the user's choice... USERS_CHOICE="" # =========== # SUBROUTINES # =========== # subroutine to report a message... report_message() { MESSAGE=$1 printf "${SCRIPT_FILE}: ${MESSAGE}\n" } # subroutine to report a trace... report_trace() { TRACE=$1 if [ $TRACING = "ON" ]; then printf "${SCRIPT_FILE}: TRACE - ${TRACE}\n" fi } # subroutine to report a warning... report_warning() { WARNING=$1 printf "${SCRIPT_FILE}: WARNING - ${WARNING}\n" >&2 } # subroutine to report an error... report_error() { ERROR=$1 printf "${SCRIPT_FILE}: ERROR - ${ERROR}\n" >&2 } # subroutine to report a fatal error and exit... report_fatal_error() { FATAL_ERROR=$1 printf "${SCRIPT_FILE}: FATAL ERROR - ${FATAL_ERROR}\n" >&2 exit $FAILURE } # subroutine to get the user's choice... get_users_choice() { PROMPT=$1 POSSIBLE_CHOICES=$2 DEFAULT_CHOICE=$3 # prompt the user... printf "${PROMPT} [${DEFAULT_CHOICE}]: " # get the user's choice... read USERS_CHOICE if [ "$USERS_CHOICE" = "" ]; then # use the default choice... USERS_CHOICE=$DEFAULT_CHOICE fi # check that a valid choice has been made... while [ `expr "$USERS_CHOICE" : "[$POSSIBLE_CHOICES]"` -eq 0 ] do # an invalid choice has been made, prompt the user again... printf "\n" printf "Invalid choice - the possible choices are [${POSSIBLE_CHOICES}]\n" printf "\n" printf "${PROMPT} [${DEFAULT_CHOICE}]: " # get the user's choice... read USERS_CHOICE if [ "$USERS_CHOICE" = "" ]; then # use the default choice... USERS_CHOICE=$DEFAULT_CHOICE fi done } # subroutine to raise a GEMS event raise_gems_event() { FACILITY=$1 HOST=`hostname` PROCESS=$2 SEVERITY=$3 MESSAGE=$4 if [ "$FACILITY" = "" ]; then echo "raise_gems_event: FACILITY not defined" fi if [ "$PROCESS" = "" ]; then echo "raise_gems_event: PROCESS not defined" fi if [ "$SEVERITY" = "" ]; then echo "raise_gems_event: SEVERITY not defined" fi if [ "$MESSAGE" = "" ]; then echo "raise_gems_event: MESSAGE not defined" fi if [ "$EFTS_AGENTS_HOME" = "" ]; then echo "raise_gems_event: EFTS_AGENTS_HOME not defined" fi if [ "$GEMS_PROPS_FILE" = "" ]; then echo "raise_gems_event: GEMS_PROPS_FILE not defined" fi CP=$CLASSPATH:$EFTS_AGENTS_HOME/lib/EFTS_Agents.jar:$EFTS_AGENTS_HOME/lib/GEMS.jar java -cp $CP org.eumetsat.efts.agents.utils.GEMS_raise_event $FACILITY $HOST $PROCESS $SEVERITY "$MESSAGE" $GEMS_PROPS_FILE > /dev/null 2>&1 COMMAND_STATUS=$? if [ "$COMMAND_STATUS" = "1" ]; then echo "raise_gems_event: `date`: illegal argument error occurred" fi if [ "$COMMAND_STATUS" = "2" ]; then echo "raise_gems_event: `date`: event queue not empty, message was $MESSAGE " echo ">> raise_gems_event: `date`: Retrying raise event" java -cp $CP org.eumetsat.efts.agents.utils.GEMS_raise_event $FACILITY $HOST $PROCESS $SEVERITY "$MESSAGE" $GEMS_PROPS_FILE > /dev/null 2>&1 COMMAND_STATUS=$? if [ "$COMMAND_STATUS" != "0" ]; then echo "raise_gems_event: `date`: Still unable to raise GEMS event, error code: $COMMAND_STATUS" fi fi } 07070100006200000081fd0000000000000000000000015773d8030000003a000000660000000300000000000000000000001900000000reloc/bin/run-command.sh#!/bin/sh COMMAND=$@ echo "Running $COMMAND" $COMMAND & 07070100006201000081fd0000000000000000000000015773d80300000888000000660000000300000000000000000000001f00000000reloc/bin/run-config-editor.sh#!/bin/bash # description: Starts the EFTS Agents Configuration Editor in a UNIX environment #------------------------------------------------------------------------------ # Copyright (C) 2009 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EFTS Agents # # Component: Server # # Module: # # Author: Peter Hardman # # Creation Date: 27/07/2009 # #------------------------------------------------------------------------------ # # 001 Hardman 27/07/2009 Initial version # #------------------------------------------------------------------------------ ORIGINAL_PWD=`pwd` SCRIPT_DIR=`dirname $0` EFTS_AGENTS_PATH=$SCRIPT_DIR/.. cd $EFTS_AGENTS_PATH export EFTS_AGENTS_PATH=`pwd` cd $ORIGINAL_PWD CLASSPATH=.:\ $EFTS_AGENTS_PATH/lib/EFTS_Agents.jar:\ $EFTS_AGENTS_PATH/lib/GEMS.jar:\ $EFTS_AGENTS_PATH/lib/activation.jar:\ $EFTS_AGENTS_PATH/lib/castor-xml.jar:\ $EFTS_AGENTS_PATH/lib/commons-logging.jar:\ $EFTS_AGENTS_PATH/lib/commons-net.jar:\ $EFTS_AGENTS_PATH/lib/cron4j.jar:\ $EFTS_AGENTS_PATH/lib/edtftpj.jar:\ $EFTS_AGENTS_PATH/lib/j2ssh.jar:\ $EFTS_AGENTS_PATH/lib/jsch.jar:\ $EFTS_AGENTS_PATH/lib/jakarta-oro.jar:\ $EFTS_AGENTS_PATH/lib/javaunix.jar:\ $EFTS_AGENTS_PATH/lib/jdom.jar:\ $EFTS_AGENTS_PATH/lib/junit.jar:\ $EFTS_AGENTS_PATH/lib/mail.jar:\ $EFTS_AGENTS_PATH/lib/prefuse.jar:\ $EFTS_AGENTS_PATH/lib/wrapper.jar:\ $EFTS_AGENTS_PATH/lib/wrappertest.jar:\ $EFTS_AGENTS_PATH/lib/xerces.jar:\ $EFTS_AGENTS_PATH/lib/yguard.jar:\ $EFTS_AGENTS_PATH/lib/jfreechart.jar:\ $EFTS_AGENTS_PATH/lib/jcommon.jar # the Java location JAVA=java if [ "$JAVA_HOME" != "" ] then JAVA=$JAVA_HOME/bin/java fi if [ "$EFTS_AGENTS_PATH_DU" == "" ] then # call the editor without preference file argument $JAVA -Xmx512m -cp $CLASSPATH org.eumetsat.efts.agents.view.ConfigurationEditor $EFTS_AGENTS_PATH_DU/preferences-editor.xml else # call the editor with preference file argument, using the EFTS_AGENTS_PATH_DU value for the path $JAVA -Xmx512m -cp $CLASSPATH org.eumetsat.efts.agents.view.ConfigurationEditor $EFTS_AGENTS_PATH_DU/preferences-editor.xml fi 07070100006202000081fd0000000000000000000000015773d803000007a3000000660000000300000000000000000000002900000000reloc/bin/run-monitor-and-control-app.sh#!/bin/bash # description: Starts the EFTS Agents Monitor and Control Appplication in a UNIX environment #------------------------------------------------------------------------------ # Copyright (C) 2009 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EFTS Agents # # Component: Server # # Module: # # Author: Peter Hardman # # Creation Date: 27/07/2009 # #------------------------------------------------------------------------------ # # 001 Hardman 27/07/2009 Initial version # #------------------------------------------------------------------------------ PWD=`dirname $0` EFTS_AGENTS_PATH=$PWD/.. #EFTS_AGENTS_PATH=/usr/local/efts-agents CLASSPATH=.:\ $EFTS_AGENTS_PATH/lib/EFTS_Agents.jar:\ $EFTS_AGENTS_PATH/lib/GEMS.jar:\ $EFTS_AGENTS_PATH/lib/activation.jar:\ $EFTS_AGENTS_PATH/lib/castor-xml.jar:\ $EFTS_AGENTS_PATH/lib/commons-logging.jar:\ $EFTS_AGENTS_PATH/lib/commons-net.jar:\ $EFTS_AGENTS_PATH/lib/cron4j.jar:\ $EFTS_AGENTS_PATH/lib/edtftpj.jar:\ $EFTS_AGENTS_PATH/lib/j2ssh.jar:\ $EFTS_AGENTS_PATH/lib/jsch.jar:\ $EFTS_AGENTS_PATH/lib/jakarta-oro.jar:\ $EFTS_AGENTS_PATH/lib/javaunix.jar:\ $EFTS_AGENTS_PATH/lib/jdom.jar:\ $EFTS_AGENTS_PATH/lib/junit.jar:\ $EFTS_AGENTS_PATH/lib/mail.jar:\ $EFTS_AGENTS_PATH/lib/prefuse.jar:\ $EFTS_AGENTS_PATH/lib/wrapper.jar:\ $EFTS_AGENTS_PATH/lib/wrappertest.jar:\ $EFTS_AGENTS_PATH/lib/xerces.jar:\ $EFTS_AGENTS_PATH/lib/yguard.jar:\ $EFTS_AGENTS_PATH/lib/jfreechart.jar:\ $EFTS_AGENTS_PATH/lib/jcommon.jar # the Java location JAVA=java if [ "$JAVA_HOME" != "" ] then JAVA=$JAVA_HOME/bin/java fi if [ "$EFTS_AGENTS_PATH_DU" == "" ] then # change the configuration directory accordingly EFTS_AGENTS_PATH_DU=$EFTS_AGENTS_PATH/DataUnits fi $JAVA -cp $CLASSPATH org.eumetsat.efts.agents.view.MonitorAndControlApp $EFTS_AGENTS_PATH_DU/preferences-monitor-and-control.xml 07070100006203000081fd0000000000000000000000015773d803000007a7000000660000000300000000000000000000001800000000reloc/bin/run-server.sh#!/bin/bash # description: Starts the EFTS Agents Server in a UNIX environment #------------------------------------------------------------------------------ # Copyright (C) 2009 by EUMETSAT #------------------------------------------------------------------------------ # # Project: EFTS Agents # # Component: Server # # Module: # # Author: Peter Hardman # # Creation Date: 27/07/2009 # #------------------------------------------------------------------------------ # # 001 Hardman 27/07/2009 Initial version # #------------------------------------------------------------------------------ PWD=`dirname $0` export EFTS_AGENTS_PATH=$PWD/.. #EFTS_AGENTS_PATH=/usr/local/efts-agents CLASSPATH=.:\ $EFTS_AGENTS_PATH/lib/EFTS_Agents.jar:\ $EFTS_AGENTS_PATH/lib/GEMS.jar:\ $EFTS_AGENTS_PATH/lib/activation.jar:\ $EFTS_AGENTS_PATH/lib/castor-xml.jar:\ $EFTS_AGENTS_PATH/lib/commons-logging.jar:\ $EFTS_AGENTS_PATH/lib/commons-net.jar:\ $EFTS_AGENTS_PATH/lib/cron4j.jar:\ $EFTS_AGENTS_PATH/lib/edtftpj.jar:\ $EFTS_AGENTS_PATH/lib/j2ssh.jar:\ $EFTS_AGENTS_PATH/lib/jsch.jar:\ $EFTS_AGENTS_PATH/lib/jakarta-oro.jar:\ $EFTS_AGENTS_PATH/lib/javaunix.jar:\ $EFTS_AGENTS_PATH/lib/jdom.jar:\ $EFTS_AGENTS_PATH/lib/junit.jar:\ $EFTS_AGENTS_PATH/lib/mail.jar:\ $EFTS_AGENTS_PATH/lib/prefuse.jar:\ $EFTS_AGENTS_PATH/lib/wrapper.jar:\ $EFTS_AGENTS_PATH/lib/wrappertest.jar:\ $EFTS_AGENTS_PATH/lib/xerces.jar:\ $EFTS_AGENTS_PATH/lib/yguard.jar:\ $EFTS_AGENTS_PATH/lib/jfreechart.jar:\ $EFTS_AGENTS_PATH/lib/jcommon.jar # the Java location JAVA=java if [ "$JAVA_HOME" != "" ] then JAVA=$JAVA_HOME/bin/java fi if [ "$EFTS_AGENTS_PATH_DU" == "" ] then # change the configuration directory accordingly EFTS_AGENTS_PATH_DU=$EFTS_AGENTS_PATH/DataUnits fi $JAVA -Xmx512m -cp $CLASSPATH org.eumetsat.efts.agents.server.ServerApp $EFTS_AGENTS_PATH_DU/preferences-server1.xml /tmp/efts-agents-server1.terminate 07070100006204000081fd0000000000000000000000015773d8030000078b000000660000000300000000000000000000002200000000reloc/bin/runLoadTestTestSuite.sh#!/bin/bash ############################################################ # Runs the EFTS Agents Load Test JUnit Test Suite. # IMPORTANT # Before the test is started, please modify the test template # property file located at: # $EFTS_AGENTS_ROOT/DataUnits/test/TemplatePropertyValues.props ############################################################ PWD=`dirname $0` EFTS_AGENTS_ROOT=$PWD/.. CLASSPATH=.:$EFTS_AGENTS_ROOT/lib/EFTS_Agents.jar:$EFTS_AGENTS_ROOT/lib/edtftpj.jar:$EFTS_AGENTS_ROOT/lib/GEMS.jar:$EFTS_AGENTS_ROOT/lib/activation.jar:$EFTS_AGENTS_ROOT/lib/commons-logging.jar:$EFTS_AGENTS_ROOT/lib/commons-net.jar:$EFTS_AGENTS_ROOT/lib/j2ssh.jar:$EFTS_AGENTS_ROOT/lib/jsch.jar:$EFTS_AGENTS_ROOT/lib/jakarta-oro.jar:$EFTS_AGENTS_ROOT/lib/javaunix.jar:$EFTS_AGENTS_ROOT/lib/castor-xml.jar:$EFTS_AGENTS_ROOT/lib/jdom.jar:$EFTS_AGENTS_ROOT/lib/prefuse.jar:$EFTS_AGENTS_ROOT/lib/cron4j.jar:$EFTS_AGENTS_ROOT/lib/junit.jar cd $EFTS_AGENTS_ROOT JUNIT_STARTER=junit.swingui.TestRunner if [ "$1" = "text" ]; then JUNIT_STARTER=junit.textui.TestRunner fi # initialise the test dirs rm -rf $EFTS_AGENTS_ROOT/tests/LoadTest mkdir -p $EFTS_AGENTS_ROOT/tests/LoadTest/in mkdir -p $EFTS_AGENTS_ROOT/tests/LoadTest/out mkdir -p $EFTS_AGENTS_ROOT/tests/LoadTest/out2 # start the agents in the background java -DID=LOADTEST-PUSH -cp $CLASSPATH EFTS_PushFtpAgent $EFTS_AGENTS_ROOT/DataUnits/test/LoadTest/LoadTest_Push_Test_WithRefs.xml& java -DID=LOADTEST-POLL -cp $CLASSPATH EFTS_PollFtpAgent $EFTS_AGENTS_ROOT/DataUnits/test/LoadTest/LoadTest_Poll_Test_WithRefs.xml& java -DID=LOADTEST-PREPROC -cp $CLASSPATH EFTS_PreProcessor $EFTS_AGENTS_ROOT/DataUnits/test/LoadTest/LoadTest_PreProc_Test_WithRefs.xml& # start the JUnit process java -cp $CLASSPATH $JUNIT_STARTER -noloading org.eumetsat.efts.agents.test.TestAgentsLoading1 07070100006205000081fd0000000000000000000000015773d80300000492000000660000000300000000000000000000001e00000000reloc/bin/runMainTestSuite.sh#!/bin/bash # Runs the EFTS Agents JUnit Test Suite. # # ********* IMPORTANT ************************ # Before the test is started, please modify the test template property file # located at: # # %EFTS_AGENTS_ROOT%/DataUnits/test/TemplatePropertyValues.props # # and set the environment variable EFTS_AGENTS_ROOT to the root dir of the release. # # ********************************************* PWD=`dirname $0` EFTS_AGENTS_ROOT=$PWD/.. CLASSPATH=.:$EFTS_AGENTS_ROOT/lib/EFTS_Agents.jar:$EFTS_AGENTS_ROOT/lib/edtftpj.jar:$EFTS_AGENTS_ROOT/lib/GEMS.jar:$EFTS_AGENTS_ROOT/lib/activation.jar:$EFTS_AGENTS_ROOT/lib/commons-logging.jar:$EFTS_AGENTS_ROOT/lib/commons-net.jar:$EFTS_AGENTS_ROOT/lib/j2ssh.jar:$EFTS_AGENTS_ROOT/lib/jakarta-oro.jar:$EFTS_AGENTS_ROOT/lib/javaunix.jar:$EFTS_AGENTS_ROOT/lib/castor-xml.jar:$EFTS_AGENTS_ROOT/lib/jdom.jar:$EFTS_AGENTS_ROOT/lib/prefuse.jar:$EFTS_AGENTS_ROOT/lib/cron4j.jar:$EFTS_AGENTS_ROOT/lib/junit.jar cd $EFTS_AGENTS_ROOT JUNIT_STARTER=junit.swingui.TestRunner if [ "$1" = "text" ]; then JUNIT_STARTER=junit.textui.TestRunner fi java -cp $CLASSPATH $JUNIT_STARTER -noloading org.eumetsat.efts.agents.test.TestSuite1 07070100006208000081fd0000000000000000000000015773d803000004c8000000660000000300000000000000000000002300000000reloc/bin/runSecureFtpTestSuite.sh#!/bin/bash # Runs the EFTS Agents JUnit Test Suite for Secure FTP testing. # # ********* IMPORTANT ************************ # Before the test is started, please modify the test template property file # located at: # # %EFTS_AGENTS_ROOT%/DataUnits/test/TemplatePropertyValues.props # # and set the environment variable EFTS_AGENTS_ROOT to the root dir of the release. # # ********************************************* PWD=`dirname $0` EFTS_AGENTS_ROOT=$PWD/.. CLASSPATH=.:$EFTS_AGENTS_ROOT/lib/EFTS_Agents.jar:$EFTS_AGENTS_ROOT/lib/edtftpj.jar:$EFTS_AGENTS_ROOT/lib/GEMS.jar:$EFTS_AGENTS_ROOT/lib/activation.jar:$EFTS_AGENTS_ROOT/lib/commons-logging.jar:$EFTS_AGENTS_ROOT/lib/commons-net.jar:$EFTS_AGENTS_ROOT/lib/j2ssh.jar:$EFTS_AGENTS_ROOT/lib/jsch.jar:$EFTS_AGENTS_ROOT/lib/jakarta-oro.jar:$EFTS_AGENTS_ROOT/lib/javaunix.jar:$EFTS_AGENTS_ROOT/lib/castor-xml.jar:$EFTS_AGENTS_ROOT/lib/jdom.jar:$EFTS_AGENTS_ROOT/lib/prefuse.jar:$EFTS_AGENTS_ROOT/lib/cron4j.jar:$EFTS_AGENTS_ROOT/lib/junit.jar cd $EFTS_AGENTS_ROOT JUNIT_STARTER=junit.swingui.TestRunner if [ "$1" = "text" ]; then JUNIT_STARTER=junit.textui.TestRunner fi java -cp $CLASSPATH $JUNIT_STARTER -noloading org.eumetsat.efts.agents.test.TestSuite2 07070100006209000081fd0000000000000000000000015773d80300000513000000660000000300000000000000000000002200000000reloc/bin/runSymbolicTestSuite.sh#!/bin/bash # Runs the EFTS Agents Symbolic Link JUnit Test Suite. # # ********* IMPORTANT ************************ # Before the test is started, please modify the test template property file # located at: # # %EFTS_AGENTS_ROOT%/DataUnits/test/TemplatePropertyValues.props # # and set the environment variable EFTS_AGENTS_ROOT to the root dir of the release. # # ********************************************* PWD=`dirname $0` EFTS_AGENTS_ROOT=$PWD/.. CLASSPATH=.:$EFTS_AGENTS_ROOT/lib/EFTS_Agents.jar:$EFTS_AGENTS_ROOT/lib/edtftpj.jar:$EFTS_AGENTS_ROOT/lib/GEMS.jar:$EFTS_AGENTS_ROOT/lib/activation.jar:$EFTS_AGENTS_ROOT/lib/commons-logging.jar:$EFTS_AGENTS_ROOT/lib/commons-net.jar:$EFTS_AGENTS_ROOT/lib/j2ssh.jar:$EFTS_AGENTS_ROOT/lib/jsch.jar:$EFTS_AGENTS_ROOT/lib/jakarta-oro.jar:$EFTS_AGENTS_ROOT/lib/javaunix.jar:$EFTS_AGENTS_ROOT/lib/castor-xml.jar:$EFTS_AGENTS_ROOT/lib/jdom.jar:$EFTS_AGENTS_ROOT/lib/prefuse.jar:$EFTS_AGENTS_ROOT/lib/cron4j.jar:$EFTS_AGENTS_ROOT/lib/junit.jar cd $EFTS_AGENTS_ROOT JUNIT_STARTER=junit.swingui.TestRunner if [ "$1" = "text" ]; then JUNIT_STARTER=junit.textui.TestRunner fi # initialise the test dirs rm -rf $EFTS_AGENTS_ROOT/tests/TransferTest_SymbolicLinks java -cp $CLASSPATH $JUNIT_STARTER -noloading org.eumetsat.efts.agents.test.TestSuite3 0707010000620a000081fd0000000000000000000000015773d8030000054e000000660000000300000000000000000000001a00000000reloc/bin/testJobStart.sh#!/bin/bash termfile=$TERM_FILE logfile=$LOG_FILE singleshot=$SINGLE_SHOT description=$DESCRIPTION sleeptime=$SLEEPTIME lockfile=$LOCKFILE if [ $lockfile != "" ]; then touch $lockfile fi if [ -f $termfile ]; then rm $termfile fi i=0 echo "`date`: INFO [$description] initiate processing loop" >> $logfile while (( 1 == 1 )) do if [ $sleeptime == "" ]; then sleeptime=60 fi echo "`date`: INFO [$description] processing has started, sleep for [$sleeptime] seconds" >> $logfile sleep $sleeptime echo "`date`: INFO [$description] processing has stopped" >> $logfile if [ $lockfile != "" ]; then touch $lockfile fi if [ $singleshot == "1" ]; then echo "`date`: INFO [$description] single shot mode, exiting" >> $logfile exit 0 fi i=`expr $i + 1` w=$((i%160)) a=$((i%220)) if [ $w == 0 ] then echo "`date`: WARNING [$description] occurred" >> $logfile fi if [ $a == 0 ] then echo "`date`: ALARM [$description] occurred" >> $logfile fi if [ -f $termfile ]; then echo "`date`: INFO [$description] termination file detected, exiting" >> $logfile if [ $lockfile != "" ]; then if [ -f $lockfile ]; then echo "`date`: INFO [$description] lock file [$lockfile] deleted" >> $logfile rm $lockfile fi fi exit 0 fi done 0707010000620b000081fd0000000000000000000000015773d80300000120000000660000000300000000000000000000001900000000reloc/bin/testJobStop.sh#!/bin/bash termfile=$TERM_FILE logfile=$LOG_FILE description=$DESCRIPTION touch $termfile echo "`date`: INFO termination script [$description]: termination file [$termfile] created" >> $logfile echo "`date`: INFO termination script [$description]: sleep 5 seconds" >> $logfile sleep 5 0707010000620d000081fd0000000000000000000000015773d803000000cd000000660000000300000000000000000000001800000000reloc/bin/testPlugin.sh#!/bin/bash # # Test plugin for UNIX deployments # SLEEP_TIME=10 echo "Sleeping for ${SLEEP_TIME} seconds" sleep ${SLEEP_TIME} echo "Finished sleeping" echo "Moving $1 to $1.plugin" mv "$1" "$1.plugin" 0707010000620e000041ed00000000000000000000000259ae546100000000000000660000000300000000000000000000000b00000000reloc/docs07070100006210000081a40000000000000000000000015773d80100956e1d000000660000000300000000000000000000002700000000reloc/docs/EFTS_Agents_User_Manual.pdf%PDF-1.5 % 6766 0 obj <> endobj 6777 0 obj <>/Filter/FlateDecode/ID[<54B3D0F10222AE40B3B2AF2CB25A66EE><09F1B3C21C422B48837A4E7AA2121C6C>]/Index[6766 25]/Info 6765 0 R/Length 69/Prev 9791128/Root 6767 0 R/Size 6791/Type/XRef/W[1 2 1]>>stream hbbd``b` $W`I0  $B@T qQ/HyWW7  endstream endobj startxref 0 %%EOF 6790 0 obj <>stream hb```fa1GC4AAcAF!CaAEE'% DIوɁd #۬&\ T5%T$1 -p f(Tv6af-s #/OXl=b{` >ەNvX42eP#3}mӲpJѶ?ru?K;L-S?١+XvGs#izo lκ;+2{.U <~uQeB/Ns[{ .W.WnQ|+xP;>mdW%u!y`;̜ l7aAt?Sρtk,3W 3@ĬU+g`f5k5wo+WZunP%X9Ԓ0YRnjuTli ӪYRw^J=eqb.7םk/͛81/ 9zIJ;  YP`C!yMAEؑ6!`C^2Cho9aBr$}1t,Ar)EH]ݶ'DoK ^anާTd'$"=Ӱ`c_R ˞BSY)s*ӃlOɍ  @Pd  1 8\ 5`#pIQɈdgbNm - |: q f6c > F#+@${L wĒ~Q09m1P'K LLo|txPADAPԄGZ eȰxIuWPP xa| A aJD3ohH2j<.c7m C endstream endobj 6767 0 obj <>/Metadata 512 0 R/Outlines 1004 0 R/PageLayout/OneColumn/Pages 6736 0 R/StructTreeRoot 1283 0 R/Type/Catalog>> endobj 6768 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 0/Type/Page>> endobj 6769 0 obj <>stream hXYo6+|>dy`6@ [ ȃjkamٰh %YE\$g>m#ڜ3F d0DZEfpk8 @1K$W8ˈ8^{rKVD#:,ȗrVtzEU tW>\N *Z\W'TeSяOEWvz`WMG8cU ΤbY>D znt|f5w\(Wd[s]*Ww(m͟~w]qYFZJ B`zӭ79D|Gn&M[zvr\ Rz5-Aw1{n$ HjM6HKIc,9'RʞOFY[坍H ՘SoTt| z^.yT 29ڂ@48:Y 0G8({ս`$Ȁ]P-ԁ}yӽp?`P› skt <Qmz[I;IHxI# &ޤ2bLMe,q(mҬw;>]FjX5F$<V{`-ª]Zr]An׫IWoӡZ!=tI'KI/CŲ ing쵄`ͨ(/<`rbv:+\Agha-sq*<`.@K0c5y vϾC除 6;Os'z`c ^@Uf=*>i%X[71 C ^Wm$oJhLGTNh=@5|wX.}N.5e}t\&Ξqᑖ+vBW;}"֚kUjU"FN\(Ǹ X{bbmhC[=ŝF1d@Mχ`'>stream HWr6}WL#wLfXIӎxDOly:B{_pK8+ ʓB0JR2_n89Ze'a?Na%Yϗٸ,94Ba$d4)o2JL9feUIMMUUn6',h |Zi#AI_0K,XlsC9Fwas\tF'8\zP280L Æ`^8e$,SZ'3Z#Cddu+#:YzyU冒*Vaxu{K w8GR2L-Bn->B`ljvKt[z"6R%ap?~Lv{4LR( cο((|VcV`Z 7:Ri.Nf'E?!ciD^1/;$į/Gv9F=:vDku>1S637;f a3lrF3|r)"=%MP=2 BFs 4"ͱH,,42ML,4˴|e]fWٕ;؝lbG]@rP! =CwvJIlv5tLɽњI@ŷ!$߄'L({C6kӘhӀdT;f`rшtOfqS A[VEmauW%Mly 퐬!ܓ:]GH5^:Elk }+;$+oc 4oc?Wx9 Mgx9s猓8<$a,MR~ jB؇/t`*FBkH/ I_wg/ gG>6sڎv 9W#?mm;S6mHRɪ{z4[WS11}r#UK&;TeBJw'4^Ygkžll*9.{%l_ si.n@~_j-\!Q?* :\=\tAz Xn Cɐb|x n5Z`DCBlrcs)[~*$GTe_SxFca@!H"$[;lp5 ߸`ÅDEr-աYj0,\ QvRԩZfSB tX IakjCJE5p hd- St~6F%~<-ţ;{>t"CAh K@`X9בAi3_ah))gj Xg}'BW }g)2[>>թlSF `Q0pb? }`|9^܈ituB•=V=K[֩۰fpnx]A1BxF%m,@[;z0]HZWQ)yT2nrOQZ€]T΢b/ ߝElua F@O= d 09z endstream endobj 6771 0 obj <>stream Hb``$WR~  |@T # 2 S/`M.(*(%8H8c- fԉd9@6_IjH9(3=DR1%?)U!$5X3/9 ($5j%V*'&*r"(,!!0b;CҢ2(ɘ I8/ endstream endobj 6772 0 obj <>stream HyTSwoɞc [5, BHBK!aPVX=u:XKèZ\;v^N߽~w.MhaUZ>31[_& (DԬlK/jq'VOV?:OsRUzdWRab5? Ζ&VϳS7Trc3MQ]Ymc:B :Ŀ9ᝩ*UUZ<"2V[4ZLOMa?\⎽"?.KH6|zӷJ.Hǟy~Nϳ}Vdfc n~Y&+`;A4I d|(@zPZ@;=`=v0v <\$ x ^AD W P$@P>T !-dZP C; t @A/a<v}a1'X Mp'G}a|OY 48"BDH4)EH+ҍ "~rL"(*DQ)*E]a4zBgE#jB=0HIpp0MxJ$D1(%ˉ^Vq%],D"y"Hi$9@"m!#}FL&='dr%w{ȟ/_QXWJ%4R(cci+**FPvu? 6 Fs2hriStݓ.ҍu_џ0 7F4a`cfb|xn51)F]6{̤0]1̥& "rcIXrV+kuu5E4v}}Cq9JN')].uJ  wG x2^9{oƜchk`>b$eJ~ :Eb~,m,-Uݖ,Y¬*6X[ݱF=3뭷Y~dó Qti zf6~`{v.Ng#{}}c1X%6fmFN9NN8SΥ'g\\R]Z\t]\7u}&ps[6v_`) {Q5W=b _zžAe#``/VKPo !]#N}R|:|}n=/ȯo#JuW_ `$ 6+P-AܠԠUA' %8佐b8]+<q苰0C +_ XZ0nSPEUJ#JK#ʢi$aͷ**>2@ꨖОnu&kj6;k%G PApѳqM㽦5͊---SbhZKZO9uM/O\^W8i׹ĕ{̺]7Vھ]Y=&`͖5_ Ыbhו ۶^ Mw7n<< t|hӹ훩' ZL$h՛BdҞ@iءG&vVǥ8nRĩ7u\ЭD-u`ֲK³8%yhYѹJº;.! zpg_XQKFAǿ=ȼ:ɹ8ʷ6˶5̵5͵6ζ7ϸ9к<Ѿ?DINU\dlvۀ܊ݖޢ)߯6DScs 2F[p(@Xr4Pm8Ww)Km  endstream endobj 6773 0 obj <>stream HR@qn6Iڢ0RvZBozc #0i;.g~yyy~~~zzh4zSHpCϤ߿D7psoggg'''p|uR?:::<8<<z.tONc [[뭵Vkl6zZ_]Yy\ՖjKDo¼0檳sk(C$P8դ\ŕ(DqJQ"0JR,q10*QP, AB=(xE+r7pu=Ϲp:̵)ggSmPP 6)mF(M3-JlJ5-"e8L6,0i$aea"f ]74 T]uMUPuEeESUMEUQT,+`%$#$I R # f2xL&;31=#NOɈ:ǜ endstream endobj 6774 0 obj <>/Filter/FlateDecode/Height 73/Length 2420/Name/X/Subtype/Image/Type/XObject/Width 294>>stream H{pq Jb#y"JI$0M)bK bmyCm0bC)L3 bD$"}lݻ1q~~gwѥK.]tҥK.]tRȔy?SUCYX}԰wnTg~LY*;匐` Hk!깅 ^مֻCbwHzmJP0 &am C/?}AbC>!?C.cOH$CG|J399yY`BV:16e #1CHX>Mb&8&2輙\3LLW2sW=L!8URehV;}S,)wj3ܥT/28ٹ8L.p˜tށj3C!OHjj~3?nd"ϨrԤdM =wwt|bnOH||y^T.h`,ݟgK9s{kJujwM Qk2Ys]$mXetrF`wϻ\2:GU&t>{QN<*S Nb#cS*`tH M^(-bQC-rwwd1x7_RڠIkaDU)ج({`Bi4]QJ*\=%Bn6W#v;H3OlDZکQL=ݿ8BiC7K|asj JT4\oB I9of9< '(ądQ~T4p}[ Lr;K(m>v-J](H_ơx6ɗZp DxW)]ka3|hB\zrS3_4# wBOmNIi>ɡee66# 6m\ <&szУ^GZK&)%Qx Jo(\,uq`(HJLT.!))ŔMy!r3hk_ #)InDA)O1X(7]-t;VKI"I WJ̔VYC !k_"D)_)I}) urm#_~',qm%h|8epX!;/W䓂#6fIWf0;]'יMyrߺ>|DEG_R~J ͢t:[ xKʹ~QaY43 ʶ 歨<־pӖS "f[+PJ#F=Q.K//oS䌴3Z`w&ޥdԹ/yzA+3s G "wCYf7uϛhW.]tҥK.]t0}b endstream endobj 6775 0 obj <>stream H{TZEY/PXj54xƄI9qSw]IpWQQXPX-$j`b/Ʋ*V@Kh\\gx\Ι9{K'vΜwf>3;si74L~i7Omh>E &/J}aME ƀ$ Nn52)Ce eAɠ=@{S- JH/:$|:9R7H%U+(yŃRt oF/H2\O@#*ɲY J]u*\(6n1ײN BƄƌ F%SGN s=Lqh4S[ntwxW_sM0}Sp;ɷVs4Ayd9"IRcBi=,~ NAZ혛fM#=!5TWMWajuZ̊2%ښZ2xJ7#rdKz?`o[Ԭ%*]NvAN,G63:>@aeME}J/&uceN abm9, JoZ>5ijlK) ..Q^ncu\wFV;- ҿQHrO P}E`6ٖ  D),*3D6F[m~)5CL%!,3t#oJM[nV" tTNT[d̓S{,fZiZ4)hboRiFJU0q9ΔĦ\)Hm(&vy*1fB^bip9J,wJ0u vS1'˗I2D)ZkNcw+jacpr,M(0|Q[&HrH)> /% ί&Ю.OՔ^'omo#ZY-݆-ZGԖk(.#cs@ٸ Qd7j5AcK% ƒY>](DJUQ:UgJd۞D/Jr/1` FzŽjJjٜ>i#W)rA( tvX%*+.;ճг mkl( @1{4c'T~B SBI%xGSev y3N739q_r &36Y6gIEi\hV3{Kԡ1(1@|؃ؠ\ mQ9?w_8NvHdN;:$28YAʼ!Rz$z0jmɝrdWJ8Γ$kTu9-MSIS>=|2GvPJ˖y9d>l+jٜ[x[J>JV0 j75QSV[P~~(-g{)M HHҽѣ]9GRR7pFJ) _IR zCe=b᫯ծm'H_=ڶ$K>R*xr0Jq|Tz7BA)Sq@g$b:z߂G q )g0{|B$#Nr]tMR?5h[VvxF16z,2PŻ]1zi?#T?^?aMPR?jn{"e zdĴo?d|{޽Ha?_0 ' T֯_N/zl%2 ~胒ZYiɢh+t352: :?0~쨓N>뇒~x q8bb(|IHf0}Vvk`FZ7ҋvM.˞K#-z55q5 _1S}.sϽK.Pl endstream endobj 6776 0 obj <>stream HyTSwoɞc [5laQIBHADED2mtFOE.c}08׎8GNg9w߽'0 ֠Jb  2y.-;!KZ ^i"L0- @8(r;q7Ly&Qq4j|9 V)gB0iW8#8wթ8_٥ʨQQj@&A)/g>'Kt;\ ӥ$պFZUn(4T%)뫔0C&Zi8bxEB;Pӓ̹A om?W= x-[0}y)7ta>jT7@tܛ`q2ʀ&6ZLĄ?_yxg)˔zçLU*uSkSeO4?׸c. R ߁-25 S>ӣVd`rn~Y&+`;A4 A9=-tl`;~p Gp| [`L`< "A YA+Cb(R,*T2B- ꇆnQt}MA0alSx k&^>0|>_',G!"F$H:R!zFQd?r 9\A&G rQ hE]a4zBgE#H *B=0HIpp0MxJ$D1D, VĭKĻYdE"EI2EBGt4MzNr!YK ?%_&#(0J:EAiQ(()ӔWT6U@P+!~mD eԴ!hӦh/']B/ҏӿ?a0nhF!X8܌kc&5S6lIa2cKMA!E#ƒdV(kel }}Cq9 N')].uJr  wG xR^[oƜchg`>b$*~ :Eb~,m,-ݖ,Y¬*6X[ݱF=3뭷Y~dó ti zf6~`{v.Ng#{}}jc1X6fm;'_9 r:8q:˜O:ϸ8uJqnv=MmR 4 n3ܣkGݯz=[==<=GTB(/S,]6*-W:#7*e^YDY}UjAyT`#D="b{ų+ʯ:!kJ4Gmt}uC%K7YVfFY .=b?SƕƩȺy چ k5%4m7lqlioZlG+Zz͹mzy]?uuw|"űNwW&e֥ﺱ*|j5kyݭǯg^ykEklD_p߶7Dmo꿻1ml{Mś nLl<9O[$h՛BdҞ@iءG&vVǥ8nRĩ7u\ЭD-u`ֲK³8%yhYѹJº;.! zpg_XQKFAǿ=ȼ:ɹ8ʷ6˶5̵5͵6ζ7ϸ9к<Ѿ?DINU\dlvۀ܊ݖޢ)߯6DScs 2F[p(@Xr4Pm8Ww)Km endstream endobj 1 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 1/Type/Page>> endobj 2 0 obj <>stream HWrG}WkٜϤR-;NJ숩_ \9;a ʋS+u[S0PjvM7ȿƵn-7q_걫.d#T5@LxĒG%G@ն9ɵ00NjU݀| >o뱥ՀhYXW5siz:‚JrB2m4nbtMŒb Lvrĕv|}ʬP/כ.U4-Bi&a?阒+9,7PiI!K i)+f7 0J#wRt.;TmۀEg\mb>U) 5WPz1$L '2M~Ƹy ]g-C$uJBp Omׁ=("?ŮFv}}* H`PqҧRWJսr@W?ζ&D&ZViQܶ$NWXUO@ zW|dwYf5 ~el:ß[e1ʦ. jk5oPnˤPuؕ/F=D9zKU@'AEC&=Vc3 ,=oƂSQC41)2YfYE j96{i~XdBPayR*,5ʡGA:Ħ&x\AYѸC %U ^D(2Ġ|/ŘoxnUsORlsD*+^8bE9Gm%C1:>ɳBf^ǑEI*E(^*`'Kʱ7aV UX@ 1߶®ip*|XP^q€S^~Pn~l Z]]r(4ng&gY% ǟkavJNܞk.6pH(?),x_dFy0%Ѽ6k/h&ZgMՌl~a|VVP*uGn񾤛h; d˜.>Zݐ9=-]m]tVpv"͂0x m+ߩ9yU{HW ++-WV7W7K^U*_ַy{p|ݑAKZ™bI??l a᩿jҳ{%ȟ%,?/ `nP--KW ---[V7[7nG,oFW%Kƒ2R4IK"G3$,dVZHn3R[^D;=Ae_$wzYi%ߖqgC^y\" j"u@OB{X3d0̯H[#{Za..H @:*HϠ*snqI@&KJOt<8E뇺ZTO/kxXv /i@ʊCk(lM# zDTh\X~Dl{|Q ˻j]6RKw Zl_g.oٙ_hn{qً[Y$"U(gpq`xka+*kᚽ kAE"ܻjwE3A{e#Ȥyq 5SM_^ 윪J=jp#)kx**Ub|Z$\x,$5z@V'-µP26OǝKK }^IDٌnoYR⿧ _(CS[2 p-eؙr5__b՗nɳs0Tka}?wG}#<UCwT|J:F H\lmhF"zz= iF1Ur4)ڧ/*J)lXFT=2UaKvNk`"wZ M`T3Z>Sͨj엉F2 ĠsČ+ ,Ftvr=mxz\B!bXPXTD*Ow(+-#> ٍ '`qm EBb=}z&u| _aWBe=ȕ4 OeΌVj i=~bQy޺A}*аl\6el 867E [sVIbK7h ?e~S:r\LT6:F_,wa0WX眸K~_+9^0ՂL9 e\,;oWEn]߮ s:WXwśޑT|ݟ4'jҮGqs^'˭u5/`SǴt ՘NjZ5@h?S !f-V]pjG3{m4e+9 -ofm^(UH@GяfI[kU׮?[IA<~_ӦL3/W)sQÐ:l:\s6jhb M"}gcȱy]\!-gZwiHu~Hm=+eO\njx ):5SUl[bpsiKgN_ؚŐ9!=FƏY>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 2/Type/Page>> endobj 4 0 obj <>stream Hԗ]s۶+p A'əNg[I}N츶\Pl96R(L,KNWw7j5^l$M޼YA.IN"hř6$ X՟˔L~J#췳]6_-2ol49 yF,$nF㐅"+HsZ;RR3H,d0`Џ'AL'C0,0 6'ٿG/ޓ`L`zf6r%OU+/@Qy1t~c︂DeGܧ.Wv2ř`)^EDecjcXM㒄%Iت8&Q$R-`/`LIo!9 #?ccq%l=1k|>\s_K q?3"2.Ҋ ]ttca)`"\(#|l0/ B$;|jn`K眡`xb31B/46)<6)p=W_8Q 41ֶC4V&7+b 篒F"VGdRk\5Nz؆Z= :sK萓+B v $m ۷[ \g.u4#S5N%mwx3kQd -}; n֎Z`f+U %Jt`[վaƃE\=)!(#Sژ <%7ɜͩ8-e zE F^moQ _ afx\v#x{+ٜ/-n\=)+cA̮];-Hryh|ʊ?r涄JC ˂܇Sjs8StqٜZ8s<ۘ2>\Ð_)~=LנbȌ,X&م cY&*PVT,"5rdT d.05$2+Z9*M-wv΅R˪15B{!jZbQ'.AVF0 mFuFHõ̻`4somO QVo'5*wȡJ^^,{qQz AV&qT$&4j2q%V[-Tд<zp8C)_Ojy4%qǨ*ŭ;$0ELo\W+Wb[@ӷpСMAti' l"yϧ3W3!nƒd/gQe1\Ԯ7bYnle0D0^ U1@VҘW;M=f@N+RhHzeeUKd@2 u.r1bi)!:c2LB/ntؚ:M5]ב+hp$Nx.-d8S$uqmgRߟpw@ĎkV8;\hgl:{U٭} Ƈ&ɂ3I;Qx6#(7bxjd4;]x?+[.4P o]9yzMSmSCΜiGERwrW߬)E .0z՛<2b?EdVTT4Eտ<&`PKlӚ9ʫUOXx rin[G .9ċ Idr+r\4N&\8 B ćE$BmsvbUAQh Ku%K1lVXxaְc.Yά_#٠fonvh:sa@TZ@@`q:Yb>̦Pjf $&+jEQ*u# (J e6Pr5|г'd Pw9c */,Noʷ7v=͹D8s/d݄U>iXE*:$29*Q,BR*h{w'fC4(lLPy[pq"m(gut5j@&CHdwC$xkLj Z8e [`+5 Xi] =UnpFr^/|maz:囗+&Q$ \k0~^< -_ JGLJk6δ Ogn-b]ܒt~+tHXeee ʘ̨2"HM=Ũ̉21*1gXbT3WǠ 7 >!XVY[@ɖ;_gM^Ĭ)fsG'M{M%e$6$5FIT}rĠW6|Šc`C'+m2Dq$RsAaC>aNwx Cd+Q "}UmO_(FB# K9 xת)?C?NM?ȼ>PFɗImG%3 C5Z`?P外hsG)<*H,Яߖ2 ]tŹe#Ԍ7yOZ[4f3J])YVDp6oʝ_)6wA1!dE* |XkN~pο#ublž|b8V4`'Ef*=j&+DU>m&5);2Ak olݯ|y/B"H:]ՙAjwtS/Vg ^MTt+eB<<x8x;馝9+D|TੵϼijIٯ133<e\nIoY$8/[!biQGgO`m):+;]_@ce%UHk`4 ҹ8a!5fšh yq eqy)5"N4cbuaU.^ɽfJx[{X[g$ed$x\bRM Q1X+e)ֱۯ l体E:'swdB+{He[^D0ۅOhl_ ]dt2"rA'#;i%@ V SK "ΖR%%1w XW{~@oP9341> | \1mj䤶cpLjcv~ "`1詓:4uxsk_ͣViѫe{2&Q:D] fҜ&Z =*RHXu\WDM^+lCgwt/)ǃ3 I3ƸZl4Yi,Q&JcP==dΤ_$ɠEs9 [yϯ![fw}(<"iYvd/tqӫ&VۣLV#ٯO侊\W,]\vF!^Q2 N^E-epuV>*jղ66~|*U<_Φ(LRkqkz->pSKI% 5>ç]LBIr9>MAjж$4+ wcR.eyBM2~lB*ovS{Y?2DTJExS!S K8+ޟOq#+hh5/ZVIZH;L\ _u=Vnp3G"bKYL 囋*ZxWo?ϮbMUkIcHK-djd,'D{= 11>j%U.(U$lzVt;z<!=z1k=u4!伮fː 7Lï.͉5}hwՅ endstream endobj 5 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 3/Type/Page>> endobj 6 0 obj <>stream H̗r6$VR!TJ텓 Eۓټ6<"EȞݩfWo=ի>/6z.wEt)ʸK$R!MD3Xua׮@x@;{}}śhq^^_tB7j&bI0!oPui ֺ#%feF㌡u6]ה%NV钒tɒJVEĬE&3aAs3XP< lJ'=jW.)USaT$ R{HoAViX+e|(]S~BF.7il1waFYư<` Jyr9PA%[+\L]~+ac!I^|g|JၦSAo+o H$!!fBbq` {1f2 7̾W~_~d3\ X83X 5欋܏=d8,w# vopۈd}.4&NJH %u(hy޷Ƿs@f Ҿ !^Ÿ{\P(Nr ΀H|^LЛr3QR MAm+/#uߌQ|un?zݍ߿XzJ ,dH 0| sH?ԥBL%ZI\`@>t|%[r+p]]PXfفN Wk?Yu֧-MJT)YM] x K&v+vQHV4Zh'A&nG@S:ɼ=.;>ZԶwmQQ<]Xq.W:@7Sӯ|,^y84gp\r8G!=Mh de/ƽ%XIZR~n l l }X I`/<)jh@) _B)?Q-|>!(qD[8{ڹ^lEЩjw(o٦0ETb̪0^L=g)4uvGcCVm25 m01wO%յq;$#~tk)mFWnbO,̚b Cu@b#Ċ(ԣa8Q[ٶHm7 ^HPXgag5Z" .8QWi c\MCٚ CM8p~!lRycعytҺW@zkN caWScn+lcLEu[b>ڇ> И6zL _ʰVa"Gp1fG2 1@*Syg5{ hbD\}T4h"j/Z@^ڇAVDklZdOCDv.IBjh1&c\RCP㒤ԕ Pv)%f" [wCVKTZ/|Z'91D fL QŹD*%1ۇH98m[n.rSx|krΣNi-\E:@w{DSŚNgFhhpƼeXfBRBbPC`eVL>)V2n};@} Se&]5_bKH)tHMx5&yY,4hb4QW!42HWff+S5 kLi)T/ՃhF TMu@F*. `Dp++pџH3 tM{X{wҨghoF9[kiӹ91Rv63(Л2#1_!&q(Bp<|>uq"SlR 05 qn\VEwgMH~N]41,z^\dƸ^,im4|4Cxl%bU͍aݽ&z(M}ٟ:JOs{*0)futvf܃dir_|[s$aH\ R**{z><G#M(.kɑ;;'b g'AY L?sJ9B$\ eJ{7p-W^>Xk{5\ W9}WC,Ejpuǭj-:q3ezEp( I D8Nxݞwww;nS3}\8P2>eo2JbzQ2K-jÍ: mFzX P}ٷ_)ym>RRRRǃƚ@qFG\qAFMid4Jxf4zӾu<*wŽ(`) fyUqlc40fV0KL21ε lOX"cl"adss?¸C֓1/+% {)$Βj:0dȥܒE `b'wʤ@[;^yJ<7%IUD5Tb'?"8 XJp+!b3`4sܴDl^|ѻh7r85әl$3s`r]o2nJM`JLimgqg;~uaib^ n&BUR6*J/IEKTE;դ_?ٿ$頂J!nK"\EW.mdi T.J %pΕx+&4ԯٿ3hn!B2h8HB5vMz9j 6EMH],CH&%)j\uMn\/K56kJ QF7Hccb1+.mQ,:3lfߘ3n{qO0v>SysDxxzkh_Uرŷ!#=p9ĘaMp3z oqB*`ILj 2<|ђ6|:? 7x`lg㇓cmIF\#br]T^…~ʚ2E_C%F/REeF*OڞzHfԇt-%jyЬYlϻڢyLS4Y;ͤ렙mņsNEY׍&$UMŨN[9$s."ŘAHLdG2i䓰ŵђ.#4g ΁phyQlN]%F.rɞ"X [yD(3s½4$beS&4uU{$8=/7Y)-Dsn[^kݖd,36 N<'="$輁CJL9302]WAqx.#'RG 0Jd\e0a6LOϦ! &Vs43z3]; J/ #eC^ _q@KvE 5}tv{+qLq<-.O|~j΢",.Ws=Usp"kĘK~E& ؔvu+L:i|»Nj%.D j|6iꢈ2I4uĦIXНmRSd*Md Nw)`;ޝ7*ʠJkҠ;':Rt_9y/{{}m ½v w>&ƑX];/j*1,Y~)@b$&?"~R?0>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 4/Type/Page>> endobj 8 0 obj <>stream H]s6+pIά ⛘t_ISnn/`,#E-כ ")҈xw63i$y2Xロu@yBs`Fb& D4I)ieه<[h6eW7l}S,|2; p4L$/PyR G L9R:Ŋ<::-iFxJxJXF͵Y,AsPg$*}y͜'` SĝiG)aX 1ڌ_^zzs1SB9rSu2:mݫ'B]|!BN@\sX7H(%K#F APDH:۬-[3mN.,)wII[66*M<<5Q{q-v Xٱw'^ݡ] {d UJ zܬ ά ϶_,Q , d{>ٻ\On}tve-?L=Pٿ4:RW-I1!#Ie݈f2ݝ}h؏埀NRjyfrjz3~Hx!ʐ 樇!:@&'Kf[+;5 k NF  YI*xHiH~wDI(HF^Ȃ9S\CMuiu6<ED7X`6p$B94]ɽpby Z:\v#~  6D潋Q/4 7f[ZA" lsJv6*e2E9y]F8QpJzbAS3쯓~EX>6q֨X"{;([2Bl:d>s\SWl'60zq,dSR9pJ( rɈnB|Gi%FjbENx#,yE7?7E}P.R#d9jV 4 b2{R<_12j {^IG^CIX(NY%ƴϖ_#0X=ƚhL ٺ4NsWThuPvT_#Wg^y sHU #i6^MV#d a94n숤Нhv5)>yC< %Mtobߤas>siM!dkr5"{I{Wi"$fTf2 u2Ϩ)1 I:5B>@=mPcr͋LJf٤'0,|7+9?@GI`FEY#}(ӻ9 p%w%pz=k7!yXo@*f4 DAHPcqXsF{pAyoQCyUA|Ⱥ+ݩР53VŒbE/f]-rR,-$s@srsW<"U$m?Q{u,laѠ @48$L9EMؠq[ߛ-۞ܖ ӷ7^xt/5ULЪ∇i7*4pMʼIk:9+q?x]s4=ZYLƪXa-0ʷL,ԤJױX " I 55X&tq:oGDĪfx9 ZYk -T1z[VӍ~wO0WVאSӴ44pٛrh*mm&:JJ6*Ş[@_.TV!yPdzmǚX7=4oC̬Lɏy4d h4$< 6ziLYے1V^srE>dn&|AŤ]+ٿp bT&>BKla٢/ց5OW5V FE%:- Čf+ʆA5cX4&ڃFHG ҉ DM@Ҙ]z}*j*cwb(џF}}A=혰 UB7j,R)TH>;R* ⺰ l|)e.FP+R;Z`J7Ek,W z ~wsEn fiy |uάt̻C阣ѿφNN@Ho!# wa ߑçb(EfH\ȡ&U$9HIC~qJ8q{qw!S8Hi//uln:WǂEfVM*bSEx)rllbm ?{M5.>>T{ qVmBe\0g,`NWg+F$WJ g xc{ˍoÈUhQ@_\nWPYE(u3U2 |t#A̬KPBII@i'I>::&Y{nrvoJE>?Cak#o>01i;9t3hpp8@XDc ~YNh|iҤnNM_IHI=0NR:Jc|ԽG`h8AgɗvW֌e\/XmmP5KRR{~/jjF5vW.02L=qTM{uT2AU$s$Qs:|$I'ݖ{a3/%ltHH}~2ۤ`PJg+N]mR(J2᜷,II6\%/_~k7lV6ÖIհ 6rAN Ӳ$$G#[Ghkqf a6Xrgr W)2}l,hq7Lڈ#V\භ= w pɏBY[&XyVJp4exm](2rڸ)ny[#s+*o~7$/񰥏$k΂*-)AP!gpޮt<[PiT6J}|$a* T EWX;<7]Ǐ9~VR}cߠuFtNe2k~wA*wOzçZW.vY4)2iroJMq?L7)ڏ~C"}mu&aRTm$NNÉZ XfI'a&݁l-uXq9i\(3ÊFrf:䀑uq8\p;S ]j%On*s2/>.EH_R 0!@TsXQ5Wp^7IF!!BA\lh{ܣ #?no>E}W3ZI>gQ{#5!5G]~,in3D]{rnW3[T=Qd3Ky5zկKQxnƙlתI3ݽ7%~q&KcWMdq0*LudGK\Gf6fbʹF7I($g< ~;cF- Ӓ;]K7KbYxC8W$oLS )H \} A~4qfA,fe MQ0G4H\4+Њ#70{IYxhH| A%R~ k.T9POEJ)Qg`bԐnJSb:0B[M<>stream h4 @ DVRBWDmkq]k~xmO,|/;|<ȍȍ^#?z~k>D/I'/|++++>_7T endstream endobj 10 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 60/Type/Page>> endobj 11 0 obj <>stream H̗nH}IV Hb0Xxblv.vE-M&oU$%QIH4US}ٳe~"?4{Z ~6/?eTrb\jڐL@˲ E~Qܑu_]/u ?Ex8fE~mCu&pTYFTIJ%L0gpM25pXIp{uܿO߾H8Xgȳ$"׸?i-Än|`IV3QZQ2rWL.=,^[RxPZ¬jU6d Qť"HQDfT]_퇀, a)_u8p#ZC0lVN:Q\&p;=>ՐTzbHҸ ^,X$+P W+1OR/'p@\e|bO-#Gw,nCAC 8>c-WmqYś#":uWrG+.^S\"l0DՃҔYQ"cBՑ 9N_|qA"*JV/)7 d TB2tUE[2 UhP:xh.[hNwWV7ΖIJty[޼R U'x:ղx ;0@PB27}s쒶;c }C4)вtccaBA gg4dO LהPݾ6@kn,A_Y^7މ5+]k k|=H[bH#3E2SxՅGRף=$1>K\{ n_?7m0pړ!m&sg{x0p?U6YőIGY,GU2l{E$֕B*eшIeq= &ˏS,-_,aa|O 4X (T~D=7S':#+_, rqQ~N5 _2 9O֯IWҩ lr -[.Ihk\D"ơor<QG7uxFDx0~9d-˹*%^Z>6P)<>h RP#deebSp'dEl8(˺ʜ2M>QƛND)+AQM+DkӾz:\)D?_UA0e^/᾵!aT~9V2jjr źrD_kgG&:[\6H]kTU:wZg1ԬJxab 3V9<\dFA9Z Eh4F rc7XscxO7}奪xAfB+(7WimfD:]Jn&wc{`bͻ6sĜT[m״U*,6*9A!bc&ʥ7IFt!{C+շ[},Ĥl|<vQ¨䍗q($sh R',-2ʶ -@ez5Ne0KNyveǵ zgL. aT/`W8~"tE]Ki;*65puk86Ҍ uX~uв 8$gp^敏z48$U{rM b\_+fYkVU:A֤n#{} Y<!Acy.Kc7%R+k:1 wq~ URk,GK.A79h AdnZL<’ $jr%F b?3z4;]h|&,~ߣ ~ԣl=qo$G endstream endobj 12 0 obj <>stream h,̱0VI~h6`vKu^10hoܱqD/|3g>|3'>Gy- endstream endobj 13 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 90/Type/Page>> endobj 14 0 obj <>stream Hܗ[S#7+t]u>TRֲgs ,'v܍b,}-=}g|nvZe_ t6/Й&SK$R!C60u.G"GcvuVãwhr8ޝtBl>'dJ0!QxD)%L m o'gq:ɯ)KNR)%O%Sf A\'>!~]f Rs1 =[Q7rJ9ToLu#ϒoH)MK o!8EYw6s41v& ;[5B;f~NR\A jPW@BC:Uލ$Y1rύiJaAPQs<X@S ɥzƃ11|kx\Ռ'f=X.WmE6 b0ӈ3@`ζ~\vrtٟGBv>2`g6jXJڒKӚbϒ%d&( %AQ&QUR 9*= |d{2aBV)v+l/p@$v2pKr3̣, @T1 &Zıp0֟f⋯pG݇#R E/ ^JA3(MlC{ئpy[ h?4h+:wF흀wK~Hsin~óhؐТh 'Ɣ.&C[jZ[v [>bSmU,qt/YVNA6x1UmD4=hU7%$˪R!h}w٢:mqڼ6ԿДL|'$K"Q&uެĶ<,wAK:rn|Whc*˛o0ܫm뀵o RR/Jb7_&,J%yo s|LmAΉG)_o|pL9`[$z30H=(],)U>tD :cL:by?@kH$0nNxxs7n]hVK; !E9-p3%921U$FcA |>d,.8֞lU,xj |$+ ]|UrN_hW$1bčE <-d{c,Ģ 9.t &bn7] v?EZE< 0̹hgbXo,pp7g(^0\o''7 W0hR|KoBo\P},@ׂ%{Q:X[.-}MWŚ>B5ٺ=V#T]~+dȏ+.;ƆR,d;ݵԐS-Kd☄PC6@qlDtK 1D&0}C* B7< !:40\Ll?=­ۺk:8icq-&ƾƎWXnʊX_1bg7"6uHez+%M06,A%Xʶjal *0un7`:Y ڍ72K7;l[jX-yFʰqCI-5AƦ)uZҷ&RnizD#)$j)6 RPKl"N@ٗqVr89& ՜ EjCZ[YaS(=e[g >7txHmYvV\jv+cEk˟ Y_2!+ QApLn~DH=> x!ߠ +!-U4eQѪghFwf+*Bdvh{on<~}A6twyjC䱢j7 }Fu+,]wusSy墛r*b# 9Ȇgx,KU!WEpc󘰶|-r_ܲnHkWnvz.T1ݗ&S9sىBp$qGnL@76 cBWeekY [2j]й˼6A3jۓus͋BAJdw#cЪ_-[UPrUsvda ſ4(8ZV'nWi*6%#J0SYE_uN17p}NH*0IĈTe㨾cF}껱2qCH^&V`2. 㻾V0hS*l' zq,oE^xIlJt-hb"A}tEg,{"=8^*pm6.[>uUlu(xZe˃+ڱs6{Rx4H0mݢki_돥b!TQ=(7_Ѱ7Ŭ7Qq$kcjk<;XsNQ{e쫣`+ݓ=[Ɩl:ƼIOߧߕ~H "6I~ja̾acYXT%:pD*W')Jb]=',2wja:\x@«Y-붋+؞fTwŊ3h|aS )h= 7}G7ξօh^6dkũ N8}A.4Xy |r?K.?BBirL>"uvGfl,0,5ʒ dwީ['TQܡ'V'NId_94mJOL`5MUJPpۥp_T:'PtiZ݀5WN[f՛E]oDX7J:msW߂@ҳlaK!Es̜uF|n[e&߀M"4-T,^+|Q3Bn̢XզW@16dNPӷpu6n5]Pl^VJ][-b9 5ͭ+ҷͬ*֯MB#tJUn&E/Cv!e߭l0SU ")YU0624cj/#,r_|e[,+[Ɣ >bգs$xfGÿ1WP:\k~ t+!'WJW+LEfiqk\Y13P Y0fb5;*5'{EWS9 ʌ 8(3YY82ze0>@xV`'>stream h,̱@Vs i굿>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 130/Type/Page>> endobj 17 0 obj <>stream HW[o۸~tPM`@' >xʥ/Ǒ?s([$A@3|3쟮ǻ?䡚QX?b(+qY%]&4EZhY?j%C?b.~lp.zg^&g HXyeM$n+%t^c=,"c42ઢyNJD`h3 W( CUDc/ST[KOyŰ$.J ][Uջ#v.\F^AŕX-z1 ֮V+4ӹ0FoCrA=@ ")*׈}%:~2ϰ rtNwq%n(ZXi(-*u{XHC!` H,0^7`瞲+[Y&Г&%|FQQpȦψɬ4K`dʴ'W"s8aYZ~60;ڀrEEʧefK ƘgOqb8qџ{6|9/Z{Id՘YvMFb[#,@*>Sq3\XVC bd2 11!M mpHL#ŇG,!}@[pBkfᛏ):z LVfiI8@9!K+`̳4HMkilwX3hAŖ8+?DWbMp4lEh >n$ E& X⨊ԏ8)HuяXݠ칃 q!1mws0C[!r9Fg P>5y& WkNhLÕ]>kMn2C4oMV@Y̟=l=6D"AQ99NzE}σn ;h%xeЇ`ldp҉.Tr4$!'9Y ^6B7zgۣ8T#<\B ovf6N)2mq@D(faS Gd9MEz v+6X2)lٽYwH 2+#6:NM! M8.z䅳~/f0X鉉 nNEn5Pg0:"or9PʞfOn58D"Rc3}w{KM+giݦѡٜ@)p:$ZEFvĎD3kbϢ z]9, pmk]1HР%$ G&:n`5JU.>1v%M8qgEƟDxSd aqۏP L#| !!#ٮ%젦Hp$? ChN6u&qM,g\Ϸ4:+n@v[+.L[Ff#[l0J2j81XI0ves+ݖ?Tg#b7"E m^CwXydNS{is߄tâP|R7M Q,j꒹kSmpVmWO.0]d #vf8[qv?_r֤{rǏ|įP?k 'lO:n8EkU8iC oMI_.Ծ-:.B%G=. xi&[/۶;}XP4q>Cf|K]wEz*FtD-U֔ =LFj7o1/k~S'*ө^PV<,<L8q CZc MV%WG$16^[^OkTyQf&Q¤V+@|8"#n&R\΍w.oDcqٟwo|*w2@%M>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 131/Type/Page>> endobj 19 0 obj <>stream HW[s6~ׯ#Ak;f7̓]m5ʔ{.Pěf&|wfOO31 spyYWD% Je2Jf(\Ia~wb0r3nFעw9 ^&b !`8LE$Ip*(%XKdRJYh1\FUܯbhUut-%'uV$w3#)%53pe_Y~J+\942xbtbce͚o:d_ (iDLqļEd[K*Y1UY2M][Dw`h o0sJl 1Te4+Y ~ Ʃ(7vj`,J4K覥{ 1]>4~[e4#[gLIt!d SJ}]s~ uȁ$g ba|7Gq2p+ 2}KU9\Vl[؏৳70 D)r|!Qx·54=fr  |eqS)*<I *Rè*8@&ψ7i7uW'e@\KnUbc92Z+4~z_ ?o&N7*TT"Ks[T-SЗڲC=[ƳHB rB%\ #;y o@|\) FVvN߁?.8x\i@BisI4j{V3ic:#Ru\G op5pP4Վ~ĸʟG~>܇m"Uq?&'K$;IU 1s|j2 _}[%.]~i톇bXp?:e{g848T73AMa3p9~I5jY57ŀTUMZc~\nbJg#G9Q y6W%8e#BrK'"#*],%*#`0sz@ b HL^̄GtžGCU>3&  &P8`Q?!<s }ԷAt)—+LLЂV+du})1+Z)vM{c M.~Nmdʍ@):y2t$y* $dPH ɒ9h\!+mҪ-1%Y)QN$2f֒L [R;`uR -R%*B{+rAL,WIc4Lx v(;W]wx]eb6^`7eBhbW>4?۶\=֖iŬuT)M,34%fU|/9Κ"ӟQ'yuM;v@#|3x':Ty"mo*Vcl%vwt[@]m( {R]ղ3ܔ H֮1Zy(ȵ("bme>T֘}]q\vʈNw#n,JY J4v^-f\-OGqppzV(Hٲ oFֈ`tseB^NEw.ZL8RD(s{BkOS|{_u,),@C+8{ɽ &{֜Y]@P@S _U&˼.)\~9}]A}Foɡ@¡\:h)d?6bBE f]gJ[6<1 @t# L $PZʺ͊m`'Pn@ƯܹC tpp-P9}Um%+`ERbDL]J6V !UTR'9sZȁݿBGHٳ#͌f$Ӻ=$ &b ~01>uu)oIQA!ϡ,LXDOhC ҲrE$E9X07םfpgiWl[.o 8G{%y .V>M &zyL`GL)_6&YdXx DoK8A)^%; VG'5D nz87e\ pĭBOTF$X{N ք|1B(c܌WiWXS;ʽG/v_33GĤ,"ϖ̈ 1'gF?ض6\p+Έٱ.C84_7 "bdvd!қhY-*S`Ƶa ݡȉZtj ?R2ũu*C57f>Ǩ n憛Oe>\2B0w9_Sg&#K ВLմ[, w5F>wÅ_`VoMAkat-63O i{0w|ՙl&OTI qO|rtyjɼoV: ^ LW*5-U2N<9]pLr*'>}齻2H& "phyHD,Pd}|gZtV~[%/Q`p)YSH!^Ƌ MZ) \? )Ç WzU Q0(U(.Yv.>=p{9̄t*t#6nApL7;pkBܚJpǀjtZİFV>əڊdF{"BO4$k?=}6:n1#VE0&ddJ27cPiH" q/[<5Ϩ?>KM4َWje.n%Թ2 z$p7T6{5ϰqj;5~ ^6-L~f:ĶZ fT( .aNI8Zsc>cyFD*CN.dcRhe\l plk'̞il>{Q:&MHQ4Yv>fB+j-Smb ?`T{¾:0RS/D/&Flǣ@clZZEj$ c}3mC9& jPV s_BOiܐ[>e$xDH Hl,Bib@ \:SšdE㲬#N~ rɱɶ#a?ڒ<=c*Sn3vDot-^ (qc8sIWAqhBaȩʘRD㳒囒b1JжA/}6z)>$l>ёj&WV}5kp endstream endobj 20 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 132/Type/Page>> endobj 21 0 obj <>stream HWmo8_RqQX m{[c'K,3Cdʉ4@dCr^8|vZ;On6]\ɴް?'2$gT+ L3>^olze)}]nVnU??F泥ɇ9?z4Nst9Y+63 ~9̥7%L(VV&+ޏ.J~OE95$f A$ߏ&}}̲"36)*̱2a1wKR  tQ 3N,Ǣ 4+eЮFg0YtPo&dU  r0V b D%u:6 [bsDS-yƮq޲Y=B49u zѦM(:Wh#9do#F[HMJJl )Yx<`L ,D z20 xk a +tR:kuGhzky(.R<i јJu tƅ/2da] }VDjI8. pL$KT8ȱUEṲBa]wZxRbᆓM@Vhfi jрX+kM6$1{ZTfۨpcJ0e\5h?G;DEx1LڋDV]ëJ,lr 9 M!r9Xn˩v Y3 Gܨ:p&.a5)6xwX1ǦQxM)(O6%lMB(6Nm)Y"խ^X!{4<,ЦD_P"r$bOޮ#*+BRR&Nt%%fnڦa<I l8n~FghgkY!Te*w=:Pc}_c>&f2D^`S,mL\/VhIMQR c2ڔhȮ]~x_eYȻj֔854a,=hR\(:PCm uV6:hq˲v"E0Mcs[2-aī\93JK`k4Nkl#)Z(T_0]uHu& 5 Q.PzH҃DQPo$n2wx&BH+1z t65,mjr 8kCʢdiӚ0Cpi"\{zwDPUaqX-hu<%ܥn#6>!%ik{qx=.Ƒ"HTB|f3ÛJ yb kx@NK"a qK}ͣ,9k*3{~pzHL%M̶.j• iݶ:qzf63x˞y&[Nw|o{/Oq_Ͽ\PވF}Fo}Fhokq"$+$$6FH(!E:lHM{^amTx~Prq]o1#SmiUUu$}~0ۣ7Pͅ"UӄH.{Xʷ.@  \*@F5b7>CV8\ kO%ohaT m <9`@(q#!luXFOf|FGH/fuߖ򷱌B I;flqܘu,#[=~J@ "ɑ )_)iB ˖cZ ZeT(+y Hhc Zl?F3TІJ%H8ib\2kņ Zt\[>!5`ڔwLsĠM"g#˨w2v[`2SVnB~xfCc0@jÒԿs8I× E4<ޮ4[+jxq-Ǥ1X^fu e"J>b+r Y3-t_ֹ⅁+a$,6eumAQw7Fgޫw Ua)@ ]|};aR^od/N*p\bY^ lSHmA[+@VHy1aZkͶ1#t[e e^ :O"8v>8nQp 7HBAQ=M~g\cz>'4W$Ks=}h,(S".#kQUYd_A|:E4<;?%= EŽfHƳk=72dY#1{^2d]ً6&nI2x7k"8ǒ!4}pŲW]lu^ T]]v::0Ew5׾,[/ߌtZe#,J|U<p+oVƏ_$H;8}]L..ee8L]Eş"/%ԁY#{o +UB<z+5+eQ{o akNwy]:q3.28f,᠀&T~`!ÀLc23& O홢 <75o|uAU?t~OU'Oc`ktU4Oj+zu6F(f SJ|X+hJS[+NZI'2:0ƋS`(("Fj. z7'H;^'m~Q&6G$"vN/?bGI W)(H 11J_7xCi ,K&> ~4 sZXaOQ,Qox&^P|ٸ}CәG5 Rec$~z:P3FU{MӢ _jiVWd Uk@U4^ Q~p)5F<uAA#:yYܮ4[szshrŁ ;e)鿩|Dp]͠5Ʈ?~RERs!M<7Fgsjw}"c۴WSȓh4 HW9qKd ѳ[AW/ޫgl͉> )^<{5->o`y3/׵Eж% p[IUr|]Ohxc&Nh`AA. V 81mr7f&R?X?vMu۽*Wme7D.$+2ccZZĵ.2ꬵgȀ갧e‹"_\$"O]"i2]>&:U+{>4@<"N8Ž .# )p(NE!;!;c]dB ʦ讐r?t Hr4ytz%,)eg~8Zy#ѽygNqS8n9%|YH/[܃edNW_hS T2hB@i%=CBW7pѹлD,Ĺ RT(tFQuU(qOc_G>$DGn7Xa8Њ#89.+w| Bmu\h̖:y`%ցq]b|hƋ"hl+K},V>n00!',Ӓ izH8D;t9}8hXt̓H)ÑةN)ti)9H(2kK>CMZ+'"4CB0>Q>Ot'K!lS :(._0۬ՔmZ> |]j8 >oS'$I­& o4IkuL\ *pڷea"oaiψQ, o.i遧́g~u:_cE?p=+*6MocD6:v(*/ź !њ0ͯuWl&cK=cCCH7 ^`}A ߔRS8` ) qMR49=b c_O[BrzJ?] 64|B->g~y`b dr/k) )a{ DóZ{"A,AG] 2e dYi\zBeb":tHXG``GfJ?9IQԸ eWovK D!oX0\G{ԖfqJk,+gږaY&Ny`e3Ma䋜ʽ !%cۋ@Zm bak%]ke]kSH sf-a]:-]Ț7d[YmEv$lSZIm}u7{F~w~}LL(u\p+V2PٱW9X."2dGb0zԛA4TZC_Ϳc/QOBOަ/('Z0,GV%h dkK |mIʶ3HWy2Ne}-5B(yGn Sd\kX6͡COZtq\.[0͓tD3 ƙn`6Tf{OA DEn&_eiH~E)G1N؍`/]ud*D6^tD"g]Ⱥ.ĩaF YTUX!Gh;Qu'WgmMAΩ 0k- io'?x;Luw<+]S1 a(oRD:<Ǵ;dd<iDVO< Cu Pm3Jxk>\P]CKP)O<`!,}T>kj]j;|?+6 %B._S)'VB#/ YӕB"7Bu/^/ endstream endobj 22 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 133/Type/Page>> endobj 23 0 obj <>stream HWmo8_RQ"ERX mҽk;ud߼P%Id@#3<3;כŲ?4;fy޽ydRNdf21VMP÷Z^{1f7Vbn>H_n'<R̯&4IS-KEi ғL"ɕM.xZF*,4wĂLMH%щtu!%*&f9q/>4;諸|f+c!3-re2)DV$f1y 3z-FXQ6{x)aOMtū  6# UxriH;L%+&Ɂ(2r M1,q}?-Kk—٤2Sp,a?H¿L,&w8&_`k1!J Ms?bLtLW)λG)L%$~,cbycQpր8Pn(1klFTu98 f+d?@sMqpu]%5('Z!U+d9uLOJ[ |%r2僄-9y rZ$Z\ qA El7Du”; ^K&ey+jDg:UMA: N#CF@"-mؘgPPs!Z_Ic0V6`Ij*E+BK}os"@(b2uOǠD-;([D}Ma|u f x+1R)VzMx|(EJd$SaBen+ښM߷|5ܒ\.X6cY$%U ZmDIo,F! ݡQxQT|ڎ3iN; R\,tH1Vvv< KH5K'ְYڒ =w"2.Prܻy,CF@`|oGA`SQѱ .| ݂bWˤ(&]v{{D}jpLy68CoXw.?v@;˷N$D'MSb?lWYSÿTxpcg|({dDr18a"0l˽X{[k='gT<^Ý  6m=?aQCM/w--e%0@$j/ vT+`q[#4ds Ȃ0]ANJƌQU TW;͏]a;6&k| 1o(f: Y"J,v4ZMO惛 gXe4'@RtE 7v.M"fm@ZUH%u(#RPo.XUwPUv$׷_Yo1hӼ3e(~KfZlٱ{68snڬ75L''oL:NQ}݊sf'9)š]7()Ӎyb;|P{?d?'%4!0uk-Bt,e(Ik\`}0uOǴ1ºNP'EpƇ[qGUoP O J\v{CvB *_PTTa1$[̇AchQӢ Y[V=vjڎ͕\> 606Oh$SէxqMȟ$Fg~>e:-`jkD8ā6Q lalqU6D9J+hRH3ܜ-b,(>^"Ø*,Kknac@ѱ?7u ?eC"s6V+{|Nu@]!9dp8kvK%딪+x}{!h3 ,\/nN$4,2ڞTM{*h2he4KeR2zVΝ2E~GFp`S7Ϊ{uX D UuLqce(n3JFzF9Ѥ1UM\gŷrxeJs8c\ѕ0@9NV{-NB-aL9T|YGDErD .abݤ%l.1qTʁNO W͊ٶTZ-Sy=1 Nx n~YӪN:C*Hh,L>438W̜53繴ҟ&w+v.% |6 re'7tpAEtI[`Sڴ]t?ȇxe췔bݛkgCc[hIVDFkg)88',)Lm6ܣB8jۤbTWC:T2"][%10jwN,bBxm*cț: ?SuT_Zo*5%: 0  endstream endobj 24 0 obj <>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 134/Type/Page>> endobj 25 0 obj <>stream HWn}W#Z ob&3AxZ,X"QvS&)Y;F&R]}ԩb׮լ?4hja2me?'(+IEjL3Q$,BêS}[ɗ;1]Tوhru^$Bgd:Mh$b:MXKO֤R[̵GM<.bE4*utg=Mr:͓?F gF"1RJj8 F#pX JeK\62hZ\ÁXEՂNlO$p[G8j%t̻b o).)e1bdy" L=oB< 9y{q6N7/^G[p,ZlAuOO3FSI4e~;<:\eEIuq~I$H7x(y |9]y,mbFҾqQf a|jS5T5g.Σd?Бz^.7oEԩLHvNdH%>5xBȁzJ>;Nzf 754~P [1W-_ا{A `Emcj#YrbX5AV:'ڟҮ-WǢեZ[.)Z7hp^kzKǸir&p,|M &6ei oLÈ osɐh'}Yw( qO)p*pw=5>k6߂),\pw)H<J"D:| 貈) D$@hО:!5G : R띷wr4!BoA]rCy |_bOZ!w]3иԋjџoGV {Ί|̚od fp;_['ڡqϛkR]|9M$t\`b~֤KTgNij$B1Ō+EBpG>]/Filter[/DCTDecode]/Height 800/Length 178608/Subtype/Image/Type/XObject/Width 1000>>stream JFIF``LEAD Technologies Inc. V1.01         }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzw!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz  ? 5+Jھ׷e*s-^@ح/B0O*9gj^H4& 3~Ho4߱G,A76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fy߱G$n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO| bI3mi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f!EHI$1G,ȴgĶ[WV: TeQ]zm-g8E'ǒOk副V|gLN1Q:$.,s4EE+okڕ-4+u:%T q!׎:UKnˌ/3cC9j^nȠW۱"%J"nɕȔTviwyRrh |s*b*Biom{|0xjLӠT^V@O 1 @ޕ,TIGggݿ 5{l v&yf'zv3Ij?:ewlu3UȪI>-Y[x yLqCRIIY$VW&(-?+ y?us=xkzן_A>^n=Ba h=p{pkXTKN:2 GI^}/I]UYicEum3SWrnk]SeM4ɓDՓ'692/GZU-vK] |7vlVDbVED1T9A?˩NOGPC{i=w2\#5x;ӎջߑl oyc<ϵsGxNv[^4tV5n,.>4;0g~iD9ҺO~; mb($@OjӓOdmNF hn^؜  qk?jpj\KZiiMcξuHM*;tp.z΍i_urKS5[YMKI )‚9k̷uǢI㈥+iC3Q fT{u˿rĿz>}gw߷8݌g5?X̭OeVGudL`#~`:V0*%ɦ;{彥Ėq,?c"N 7 *x8Imֿ`tvE4FkI"b'in=l+bT^ $lUHjM]fLiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii@j6Pڀ mo}@j6Pڀ mo}@j6Pڀ mo}@j6Pڀ mo}@jLjl8!YWt$b^ Qt8@+څnm I*@һFR-q 8+-^=%)Gq;}{Q%[xnWTH#rdμ]L}:MI$~k(P9k^Eh_ 6} ʦ4q19st9k|#4&1tIu[g۱rt_cK Aɿם.ѩ%#c^ QcᘼQ7w%Lj4]N4燇;pvͧM" 6Zv4)0mhl+Va-:8ϋۅ(sji78[slIi]OTfφ,">hv8֘jSƫ>VDv FͿpbj .M7K 9 ~D AGMnq :j[+@xaH%VU)*VlEogr=GReFX· u lgʆA{yԜ{[U> 嵶~a,g?O͵nz=jBRNih&R/Z|> oH Z<,%Vy$rA¥9#g}]kϭ_=X8RlZ]5f{Ch˕2#q35*iM*m-n}%-ulu03 v`J..VUu߹}4MjQ羇Tg«.1qAQNwi'w[^*UR߮Eb֑4j.<q?ZjOi x^{Y[ݴ3&u(d, îP\^k֍[{-駐461` NQ\G,+l'M>em]Z˩5EەMb- "_{uq`:zWRZ/hk>qdxlϨ,O,"vw&@vpNNzݭƬ9cwÚΉm9nf@df H<_ UWjK[-7N.3 A4BrV゠#ZU{+?Mׯr#VB-<=Yum<~m1F70+GOAִӔ*NM4ww͓VqOf;.B./><1%(@Ӓ1Yu!ۿkU`dݭY2ZE$ ņm㓐9JXiu\1:m_MHVPϱ9/x #Pq{ڟv1{hwWuUT-ظ-8A"zRP1wGN\ݫ}RXinUdWQVfYj)ŻF*߃RZd5&=56Er3U5^Z [uϩK,taqw (]ҭ;:u# i-ē[̏k}je'SKfBx'dcMRm|7̩փsIaڞyEipyFv,B*Km)>5h8ߢE mEd# }gUPԧnk:|c// fFpVB0_2UJm'uss=p'd9s8}ڎ`{QOj9>G0s=p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0s(p%d9s8}`QJ9O9>ȣ|CEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QCEd?QЍv\GYח˧?}~j6ZE-gv7zקKJQV𮄓ҷ̯ ":ޣpKtYeQN6=;k(Ile}m<[J3uy"o:IRllW?q~E8>Z~si}s3GwrIH1mFTFqӗt}3($}&UD<1*,R{XC0HI2BXۿmVZ6qY.ovP鶭.ľ~G?97?k¯䏦͉t 6 [JkuhwrvېprϱBug- xWĚelb:o$)iF|N3y$OM)YvU)k <;u _8QyIxHLJw8|p;~ҌC /J׽o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??ĈWOme9^A<՜@V~E9>i9bOg}YE|7h~q%wȾ%;[[mlpq2 +)89im"UY(MxݨjOwj/'c v4o?TڻQf__ P 5kf3ל99+Y~".5g{# E km|W3?^wɿ?z_{Dr|[ ,B Px;Ě/1e/0f=t#A A ?222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222<lwHiWpSN]oRXxWOo)i[*+/2(hv$< ~ u>*oo4]cBh$q%͕eU)\9*"}{TӼ574{}k|tѡg,ѓϱB Pr~".@խu/D[SPHe?g(/<"*݇$D |_zig}^[wWK@`(@=qUoὺc4 V2J\B* g8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ t>]*ۿNJ?0'A֧h(m䑂(I<YB0Z9|i;λ/˾E_.?lܟC_!fw^:mcqu$+:Gmm$UJ8E82ֿSu޷k7_nH-Y-H|%iۈs0U$Oze,-㸷UGܲAo[ώ7@_)tNi|MEa]>ȥBl$|€$޷k7_nֿSu^5T͑"VMw3PY@[x;{m^XP$z]+) _)to[ώ7@tTZm̦ T!lbHH(OֿSu޷k7_nH-Y-H|%iۈs0U$Oze,-㸷UGܲAo[ώ7@_)tNi|MEa]>ȥBl$|€$޷k7_nֿSu^5T͑"VMw3PY@[x;{m^XP$z]+) _)to[ώ7@tTZm̦ T!lbHH(OֿSu޷k7_nH-Y-H|%iۈs0U$Ozt 2LPiC˟(҇?'P{z /$@E >nUTOֿSu޷k7_nH-Y-H|%iۈs0U$Oz=>mv;-Bi-$fUV*O^o>: no>: no>: no>: no>: no>: n k%"D6qf $@>ggͮGw5ŨM%ʪCcr!)ހz|u?ZMz|u?ZMz|u?ZMz|u?ZMz|u?ZMz|u?ZMz|u?ZMz|u?ZMAZy %ĬB#sڬz4 xbK{i1Kx伍YA<j%؞xxOb9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vxM<'CNT{9vx6z wth} U?o~2%Em w7+y:?g_#֮#.?f ||GvÃn񝯶sm )xWzn}2# .fUH␜mNyGko4nInF7[9S ʄc?t|?iqqlҮoĒoPޤg JX<2W/;D)j 3YI$F! h΋嚳 ֏57t7E^Y |B+'A9-VA7'tQYF;H|?iޖr'rWvҥXe `F z~&;OLTx;D)hļq_(jrn-ZI&FPO  h >G!iJ4ZTKMHC潝һ[$Pʔmf6ʠ /xú=a;u8$qF}kNZkε8;JI|QZ8mY y")i`U02HK뢻v얯Wm':$ץ}.x%IbD`UAu qRdӳ4_[襪>tw ` JYXe  U.Yn$U9Gyzus2>.ú_]Kh#;*6<*jTF*Uf{~s9Ԍ7?4|;ikuԖ]FGT(sU*EʌԭkKBg𝯉6_SY Mwqf0QW'b7{^j\C~byJoP3D}1&qgN"QWfݗ]on/M}KNUS=[nm#:7fKR(R$Q@$ 0b!/+i E?yF*C)#gCRkggR˖[MvҘb ?m!@]EknLQq=N2 @>Ь&6܋{[p 9$,* I9T3V7d.[z= o0ewy)!iC|WqgwF*]mmӹ?X)Y׭ӣgf?RMB}F˹eu2# ydvHԏ4בTSβ#@P@P@P@&;OLTk̠ ~9ODހ4 ( ( ( ָtCw/P2*7Y7,6}7:^~޷xGOX*ofHUȮ|N:U-~ iW1.4WM2y^fb5|k}sV/>8wӏ= 1=WC?:={0OU1=W_Ώh?:={0OU1=W1>&i8'2jOB,?\PPPPPPPPPPPPPPPPPP7ױ,v>)IEW_GC- k(=Zg|njm﬒Mdgː6pFzS^ku+]պkc+22222224g̠̠̠[wth} U?o2_#AeD]/\ )ܯtGty|]<#̸I?gϟ|7DqlvI6i?6ڠXYJFz;+V߿,nq:gXU'ӦXLI$O$O&r(av__+ԗ_U/fcygĦt,$ bzԕZ_79#ׯ~$MK/B]{^hc1`'$,<XʸmiG 5m[onň'٩Џ-{n/;z]<2ۛл3H}& !ׂ3|ʵLL^&nݳVn%ds\x?gN>wJ{Oz sx4;?DcԅO˻͌*1xMG[95k?v+j}-˽}WA6qoYɪ.t}u<ߜUxZe^ү};𐌢|a仺{xbV9ʎt^5F/܋|I[ݓnNQԥSܠڼfbhbڌzUzVl 8 QBk]Xof֩*si6]t[YhƝoz{Y$~9X?kz݇ '񆓫k÷/[}ĐLb1 @߂};Pӵm#ķ Z.'Fd  02 wWŻ \['R.x\]Z+K"0!Nx 4?^;?#C56K_ ";[M. ˅8Y{IӴl|^lbBJfHъ޶ e|vGru|I|3 2~1Eƀ 7`UFظ^@ Jx ]|+f;I4qq-0("6/!!p))W4-G[kjmbI4ť;ֶ".1 rn#3 ~)xxoǫrple>33bWž!& e#=wۤ-x|,!r@P@j-jf/.Hyl$`F9=hi|R;}F|_xy-͒<::D!aګ"KšֿOocżk,6b[6JU\$`>gc}Mjğ %+W]&dIPI e2Oր7|§2k?mo@2;{Þ0um}a>#xvesKp1tϸw‚ P8~%|J_?]^:_ 4`T30}6?įV~E %OOo:)%l,|O% x>+/Lڎ4pj\Tl+>QT!@Oi5M':veqm%2ZQJŅ,jV ѣO4OG v0ڢO("rG*"*mrK[t{}ixU!K0Sª#ƺj>|g/^wO0>f]GWܐt_/WS[<| 44f!Tn0%O@(_ w? xZttH6rb"x-$˾@@  O':[Z~&de.- ܐl>F63׭/5KKh~ f2Ȉ  9kosY~ ty>:T O,U$m,6~@pˈo |Ji1w[/@ْY44󭢒_r' DYz 55m]K2(xP0ǜcPҩkB3ͣoPzd/OUG6k "5v8P?HօxڲX 7<& Laku+(x`phu8.}kmךWro&Mj)7z=7:?I+ad9iorTϽ5o t¿Dho>+7졶Eg?6[ju'}Kx<9//tn<[\]*mV+ked4JxټK!&AHًzkHFM=z J-pן틋iv>ҽKC;Y Z=B{mM:#ug-[3čwiws4{FY$++*64\v&sr]F/c-{c}d%!l1տ ˕NMw4#~?źrͪ {ˣ%z` 1\Nv}<4c| ixOPĖsZ-6X 1Sj̫[΄.]4/e Ha׭^2pxJ?ܮ6Y?~=!ׅhzp\9 ϵ#LaY?kiUd޻Eu!1~˰+ėڌSxziscvo [+N?aOh浫xTΰaϔ@_ t*PVhM߱鿶cnӯS*,V6/-hθWS^S֎+C<w?yGq6~ϟ?nN폓;+im\z|A]ZMs"f40[̇ib#{r1ִWdCnv٥u [x-''A&Q=Zj6؂tn&'VnwGbv>TWwVe ,MN3-msbdOG#*H(ũ.-ᧄ~mmK*\̌Ǭrsk[R0:8k}+'7xD5t{TyRc,p *&& {MMGyzusd7 ýkli+znFqt5.uJrt'iZ`XmPE;3_``dYk?mytwoSվϭe{vD>s/lsB;sg2~ʜi/Y_;QI#G4m FS)O:m<isy>\a&Mı>1~ЭmZڃ0ĒK31,YؖfbI$f#:4?m]I$ o,1r*3rdnvMd6" $'0A٫5ѧkfTdTy>}V+ۭgW s$`*|36ϗ|n}ܘ| )OME{_6URZ-4V\m9^}6]]MvҘЩP9{z> +x: a>о]@l":B]v` b&𧅮ug.|5M}%7ou%m+M+ tn (|)m?7-"4qyWzMwOc%l-+y8OZ/U/g{+L+'2l2pÑ bZXBOx`lI*.( nhּbWkYAuajQ5e!F> &;OLTS̠ <r5sQ|eVt+}ayN Kp]ۛ'<x'7GBWHKݤ2,.OM_M K"8ⱝ"/hƱ6ܠSʅ;Px[J???)86Jj60lvK}[ KbFq,8bz#\ɢi&E: 6HT!XN?v .8t > e- t+xD;xp[33I$.|ˏ [v:=X4,"kx,evߐ?,|(Z?V!Av./ff)ВI4OM_M K"8ⱝ"/hƱ6ܠSʅ;Px[J???)86J-<)k]Y5Ko iGq5]GgʳL `23@7wD~$Nm| vX@*O(_Oc} 'InXae+!@^xSvV~'M{KH峍O-#'T`@M_M K"8ⱝ"/hƱ6ܠSʅ;Pho$<-u Q%z#Ω+I?m'^858ݼ&I yXrq5# 2NU9ᏅtX2_jv޺mߜ`\tj>e+_;{mchd# 2 AO2 CIҼ-XjQWpZ\" ?xԪIlp߄,lammmv H(̪@>{$}W~?ukXPjnxʬnn#i5{9ݬU~/ hc{EH9z^vhmcc [[[FC(#EUUUasyg}_Ky;y{fv旳Ws-}ޟ s~7]sa9CL<<<<<<<<<<<<<<<<<<m0>dӱ*RUcVon58yLZ雍]\rӌi_RRmR)ߟ")G9+I'hmyXhCxYuqs ow/\LGsԇ:猴I5I^}db[Av`Cr?؊rV5cc׆|/GGL+g9q󶺿iwv徇 o~,x?vXE4(>}`0zW,qn4 k'{~}El^*|(̾#oZ="mXק,ʤjrW7>,YxOW[7=kADו hnT[:!ҧu2Z |X> rٵl_16~Rb}Nֲ:|0?l&χl=u'TS~fo☼9 [/Q.ɊȮ[`(?_ >W%z`OZn`smϨ8?gi)੺c;1e۞ܧJ^y2?Ht$Zt{/4ɇ$:-[p=i-Okoqſ}f)b`$z$*BpAyLxOWC{O&Ho^h=Ht$Zt{/4ɏoZQfumVl@ٌϰyLg$:-[p=i?8d'>0t=d`r!8 {O&Fzp=i?8a DV?ney1kC@ 5lα-̀H1y{/4ɌOE7GA<C"տGyL['b&GBA'=i2''j4{/4ɇ&OD-_&ey0x{O&Gq⸮-N#Q63P8d:5[sEnYT ,,RY(ߒ9/g*C"տG{O&Im{[{-1KI#!VF  dB?dxYIkdGG=fBh^h= DV?ney0OE7GA<C"տGyL?!j#{O&Ho^h=Ht$Zt{/4ɇ$:-[p=i?8a DV?ney0OE7GA<C"տGyL?!j#{O&Ho^h=$=w 萫#A ey2_Ley2 נֿPM~!x/k_(O&K?G'E߈^?# o/zk i7&sЁ?Q~ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<g?0C{/4ɇ&sЁ?GA<ߵ%4Jm"KYcR2N3q+YT_N\Kwv1/bh4eVKث  GSE&NJѤ:Y+I$AALI} H9ia\Ʋ<:Ӥ*\A֎w$ςZHD*2 Xs"g_8s A?:.H9/ε;G;D_<[Z: =c2ͽ(ϖB8*# H±;DnDxCzuK<>g99r#_}3~u]9r _Lkvw$׭!]YINfh^p6]S1@ӋM2ZjƟ_ige}<D;"eݎ$*khaxN~&,~15__, ^A2طyw#rq9s Fi^C?;UY+27#e<w$}jPKyW1z|3Ñs4s E?j^mRݮNg22@]70H9_ xV~ _\CaC *@ G;DM:&_KW][GkB}-bq˶w#4s D>𧉴8Z/d(ao Hc}`pqH ngj}N=/~~{s E='Dկt*aioum#ˑ$u[iG;D[_Lkvw$??ZI"+ZXǥPh,.HoK,N$fۧDP@P@AL5p\6q% LR6*<3ʯ͓.75լ3Gi},!GhrA8AȃC,dt _Z -'W 7ux`=4s EJdzvM wZjޮ$VEtta4s G7/ǯͣu[,} *۬2.QXŀH9/ε;G;D"g_8s A?:.H9/ε;G;DgxNž&t kTXY)!F3aA G;DMi^tKCZmVگ$I)\8"|@';D[_Lkvw$??ZI"*iN}>p}P.O1zsîT's EEֿqwhAȌ>—%|?gjZDp{mxMqq0 o\`RNw$W=Z5 j 6Ko[ˍ6BN'G;Ds~' i71}Rom]bnB洁V= ]n"g_8s A?:.H9/ε;G;Ddx xC~/}jK\iGk7a#H96kK>ֵI-"8eY&KǸc0H)';DSςaey-W7ajj74j31'iHI"/Sj6ҤH,73+e9 WAȍEֿqwhAȃ}3~u]9r _Lkvw$m|)kV}jܒEcju2>X29` xC:Lz}jKwNj\8 #"w$/-|ie)5}hWwZ􌰡BDi3 (w$<\Rޟ =3+ڧ$=7MW~miw]I? x >IE=WIMsBS̆x0x3dAAI]["''g4?}5/vcBo>Rޟ =0ϱԿs跧h?t7WڼYCc-wy@1 gprCp|#̵ [ӵֻ{aVԡ̷*& .%w@&8"nQ6iZd1k8ܶq!㕝=<VW"Jz~̯$Լ5>ud1KZHUۜ2*a%5x"T}?UoO?O>ocA54mWԥԠ{dhLI WvcȂnb/Uش]CW{j l۹!feKHsFq 7fo<7]펟bd˭_GA$@d@Two?v_3C>RoO?/hĞ>}rR縷Vh:OG@}?O~ 1f$;O{udgTpAڤ_~Oak+ ԒB~\VM|` +|G鬭[.Ɛ%Ə/6ɵU02> ߃>]\G :-W'[~6Vp ~ZDdveĜHGS'[RWϩ[hM.c2>]iK'^bV5ЉkqI= (_XMat,7Oni&R 'v3ހ+C-\vRe6 >m?%Qw~)#hB]AwK//,$(<_x>R~#\<$tsʷARoPQ_ xJ/5RԼ-/-H&&)6L^1cc͕+6i:Ljtfܒ26v9~*xtm]5OhkiXy~Q^kmb`1aGſ?'ty-iVbj<[ZՏ|gơ*__pTWV[G)WJиKR(´0|:Oh#s[ ˟O3)Cm2DD/\_u5$WOV:տ{r&+grVjS%̭Jf}m"X*OD{X|Fw^ZmGM&GG\² ߧR~>#k+Qu;3F37ʖlhSvMOkڟ5;~oga-dKeR[x,$%SϘh_ԤԮc"=ݍi `E)d G$ Cֵ__]ǧ}ö?Fu8RF!e0+Iҥ|EY[]YZ\]Gte1O/e9˦BPGUw$|S=NMJK֌F>)$(hd1 _t?.yg>ŞsZGjcy,eR#B44l|L-ͲEJ,9χ׾.iJ{-6Wu=)bx#H!VIBXVQ-_hjYM8#(MrdTx[Bom|q C񿆯=&meKak s1>ou )Ba >@&2FK\(>%}Ɩ/Ro[i2adV󡽸J@7e °~ΗSV{}PmOCn, w..j*yƊ qo׵o֑|9u[;dI$`Ha烋qRx=+B'i6vrm2G{oOD[Hљ7#z.޻ 8y`v~d*K0]M7S-__xĺNww> :^mw궲 $խܛ9E%E%䐙Q@Z1߫מק}eXS-x "}B"xc1ʒ HҴiIFi?^>Eo\vR{&BLqM#2($\杓u55}_W۶xwFWٴht;m.tۮ}Di0Ugڠ:Ȫ)inՅJ][Sͥ|I?,5p<2A ;Kf)pi;kҷmN - j-@Wy Ha\ HUE>ek_I7ڇMFP桬Sx.JXt/ Q*Wf$!A7|]h-VI$ DzZ@kX};Bh-ZKʑL HU*KQv].>95^u_ڟkk#́7,Jezڦ3Izcqږ*Z߉rOeŪ\BVQ6'&0O\dJѵTJ?{mCE& kmQxݮ>+Ⱦb!H1]v( *o?hwxKGi^$kcr?y|.iWsBe_, E(Nv7׹l~"Kn _ObtY,?1mpn2m1N7)YY~Osw"}~kzǙn}h0K'|I,9j#j6{)rպO>$m:~ӯYVIo|HdDt!eSL_h> վ)j:"O9 h'ue0Vs ؉E9%$}lt7_I[xnƷeo;[ nU|H`0wZM[WkG=-'oZXjmuS:vg]P29Wc#LԼ3|<֣iuY%&Kequ$SƱ8Al`rwIœd-TWSuCjGKZHdv7R[q&(BH6>FVV虿'WzΡ-[;AN`_SxDEؙ#"p!wr%N)iz e ZmXn~tА@rv] .I( h8м[xoGִJ /?m[ R,(ߒc)(kxŻg}[~CLo3`ixqs3Y7\]_hS$qٺMto閪%-_^ևIFhq?#:|MHY @Q,;ʻ[OM&P:oW:orfX^k(A)@0 )rKE_˫芰ŭ[5K𕝕ޟe˥<:4̒ ՙ#.+2s?g"]?k>t}Ư}*Prv£bǥ*̣/Ux'P@P@P@Pܟ'h_aOw8[q9C֜S~τ!>Z:1\^2K!8i+( Kp0$_=ti>UB+k_-m8wrA ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|mѸ;=xYޚ]]=6A>";C?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/߈3nZva v>38%X[8-n(voDˢ1NY} OQH=>;v1=BT+*A p-&Iio4_KZ=/.EEgxH%XcJjftW^؀pgh; ,l|7[[X(`Q$QUQo:QhOd[MoiKyg>Gc/J{׹w>-&Iyv/ %z-`O _G}yv/ %z-`O _G}yv/ %z-`O _G}yv/ %z-`O _G}yv'֥w~Ykqar-`ʍ c)$`gm< qy>w%m߲hq}ȭ.H9v)7 ,d7s=2W~3}_ܿ#kȻ ?_?A>"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>FGo3wy3?8:zQ8wr/kk|"8wr/ h;A*ky2zׇ'Ϗ6ib|r3 >_}e} h;Aχgqȴ}Nܿ 4l`ϕkg{4QGXUdN;G/o_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/ h;A*i y}/m}h}s ⏩û$Y~_{"?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|_}e} h;A!/uk o Mڄ 2LA ֏û$Y~_{"-4=&-/E3ZQ;Um$8wr/[xwG/k|"8wr/ h;Aχgqȴ}Nܿ 4l`ϕkg{4QGXUdN;G/o_-Sw/H>EMן۟xOSdwfۼdݳw;sG/o_-Sw/H>A ?û$Y~_{"RMr=-#RbiNP`ǿG j%Y.6 &-p3tNw{( ("y`).K32U@GSUr{(@=Gz5(G1AP@%h[6VV[[["0DaUTp [D]_B5[+SGntm&Iف(rr1G'hi/fk}RV^gnv+.b1P@P=n(Ze C!I%U\d)TWTޭ55?A>":A ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ M]jRj t` ԡdC"9R2CRA۞@_GV+ysrSwe!^ Z,pQ&m;YO'@DS]_$^4i(?j\;ViZ"ڻHQAT.6g c^|mя4g?im J֭uŖܵܟdFhf͐$U*Ȥ( F[JnM.[t ;Jz7ZQ1ffPs~{W@$J Ҵk_\xSq$R<rԅ$nv\=^6gx?[yf&ZŨΪr)BUQ'"jB*dm/ߌ]O>9t=4ւh7s!cʮ@'6{1JI%Щ wğyaҿ77~TiGogӍ{i_V\w ]Y,g6m5;[Id'2 CB G*}bk~&}m{o;KK]qoq=Pcw@:T U5}Q57m=oI|MCadw;;ocNrrq} 'xhW_ci:{I<$ ̂ e2>s 7PCh%u;=b7">gK -㐴PY@VִTѭH,hn_EÂC!t^=[EgRm/)uMoBKcbJHwF@PsƟkw}q2M 6D>LyYFT`cſ|sxNLJi:5!k{Om%|ZH2TT@@ox)r]IkFG]z,OzN kO*oҟUa@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@Uֿ w\_A5/zSgߴMu*USNywq˾i\ hJ|# %it\x+ChE-c-Vw #WV.5$wnV#F2S6iɾR㧗qv?Fq=LԜv9|/еٵ F(}J{DJBY*pмm2YK+D'ܸqС4Cm~>ysGuwB4vS/-Uvo`q@kCVކ͟bPF;"EػǀY$[J eO3C χ51hzgا :sl6KaTmgS#t'6e_|8fϪ7=[cmy+zy:(t( qIҾ_}n?7dzv~l=o{TOD1eAymgڧwJp3'pf$1K[o~WȼOA:P1y-#u"dfnQd Tbվ@0A?> %b Ӌkv!PpH#wwg%y%:|:.Ƈ+²{_?{ۧ^<^\HeaM"[{gվk{q s2홒Tp@8p){(i"+-4>,ngs③u26X-z$0?k%mma($h +D3%2a46]ĩ 0O$0UE1I=+0M&35^Oz^ޟ/?3 zEQMEyv,ʩqWf?=?_yR hQn.-]OpP)H]yKE$bPdɣxsoOMW?Q!!gk7Gޟ/[|$ӼxRVK~oPݴ^IC#ŋcxsoO .h>[["L{揩?=?_y< =HmmlZX]$2H2c'd!^$JTG`xm+RE\}꫸OI}qW?fҿU'$Q>!^$JTG`xm+RE\}꫸OI}qW?fҿU'$Q>!^$JTG`xm+RE\}꫸OI}qW?fҿU'$Q>!^$JTG`xm+RE\}꫸OI}qW?fҿU'$Q>(A$^)cu˥ɊOug5Li"DW0oƟ:Z_HD_i"G{3FiC >Ae?.(0oƟ:Z_HD_i"G{3FiC >Ae?.(0oƟ:Z_HD_i"G{3FiC >Ae?.(0oƟ:Z_HD_i"G{3FiC >Ae̥yM-v:GI!\ysgiJqʌBPWg!3MriF}K{ kOZ6"fXP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[? .-&x#GbsZWgW3J~Ga|=6~_4mJӴkM6q 8*̤w5˓P7(MYLT|4KO_éxӼ3:1_L' 4*89};ǿ x\3Ru$jȰZ,Oh0 ~-ƿx~#4Tw:\W6L-FyD"`DAW ĿZx+&xY-X63Iam;.4Esqfp@ w%NZe <SnJn3g> x\nįkimiu G1nKȻ62H\&P; ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?C_ZErߩ?2€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( kJ_"ϗi$'|?U_eƫnO3}! ݿZοI~G2 7{x~tT-DX-rߚLWN BM/&X>a Rty =>aݧufkiEaԵXl]sr[Hpo"YBkyIE9I#5'eWZw{D4EpٽŒ0EWhI.ު >9&pBWZ/34uoxOЭ4;}7Hٯ$ۛXB9ۉ eb29;+OV~ ¯ zQ=֏ i<3f4+?/<7ϟ{Q~#C"3Axo~ZltA,Q(3$?~F' Q[O>>'#4}G߀}o??OGhߑ66ٛ<=vqmL|nGұWP@P@P@P@P@PF:_fs>8?k+O5>{ kOZ6"fXP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[? 6)k_#n7}ݷ?ŷv=_C}a{oNeoc7y/4F TVPJ+>יBfוi忖8W&Ki_+i*61eUHr=e̝Vھcx][3!kسrHκٜg? i{Ǣ+MYP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P]k@ZRש>|L$?YҪ.5_w8*|0Wxob^uXzK9}I?mf &|#;OiKkgc0.w;9{VTue&5N*m-o& rE"]OPEs*IJ7tr37{nM 1~β/-m۝<+ V[h:]S? sc5*4.ZqIy+Τ68ZiIOx!eĩBT!]|ruARTaO:zQW'ndKҴZ"[#bVQ>~`H˪BPvUFq=⅌A|[2ݕ2R2.sy5nRխW^`s~T}m^ZV'oxڒud`ª}y9$io=iBx@m_Р6/P(M}{} ]w#@P@P@P@P]k@ZRש>|L$?YҪ.5_w8*|0Wxob^uXzK9}I?mf 7 ?2ZWBVnP0nc>]L^fndo$Vy_aa-#&Z`*~)Sj-VeP@P@P@P@P@P@P@P@P@P@P@PM[ɕenF5eH> :Ќm~f88Ҕ3[M_Cbó[Iu%W$!oŗ,2p:ܹ]+lvvW<7Fn3IGL0S矙q܁޵yw*g1y,Vzh޽M&:i' Gb<. 8AډRˣv}-~ޢ3OM׵ݼ}MDZ.0hA9d2Yes>OoTCY(*ZKO.&aR&{0QPPP>OŚ/gn/?7p#'q?ޝyB-oTԤج ?7ºּ?a{pK4@ќ rk Z5_5H&fR$fN/tf*#aqjsi@ufxBMOxF2oc[K.pTH{WA&ִ]mV[$iKX;O4pSq\i_Du<,f W+q.d2̇΍c" ܧ'Jh/ VW~.֏oZVQ#\F}P 2Mk}>I;x)Gi$r334b ( ( ( ( ( (;v uՅ|?tp?!VkL}E[=@֟?\~7mOḚ ( ( ( ( ( ( ( ( ( ( ( oHf_6St)?Aל.u&fgyi7€'W'st u8`S;m+Y%.aO;fijR&mlhKj7yf"80#vHCrOUge*ex{y]uzhFuvJNOKW-JڿhVZ|7Sյ-m}nܟsx*[$9e5af֮- 6[]54tVn3c$Q4-JۧV_C;}*;Awou ؍%1+3)Ap: p4Owm$w?lpG1,toQ}`*u{~(Euys6<v(ŵH7}$tsɋ1)ɥ'uk%4ۼZzk݀p'pRpNINOK+SK3uK7KˋuU@CkFeW;4fFgm9jPI/5rVFݭ'=]ӍZjMކpp(ǚMIz6ꖺuo^x@mخh4̪?.f ̫܊ʶ 0hGVךS|>cJx敝ɥ}vPE0$1 HP+یTR799[=*_gO__K~l=p ( ( ( ( k )|kԊ>^hU} >|+7_v1k:,=%g>Y$ß K_SgP=_Wz"򇑷ݷ?ŷv=]OeU&VpS^S;^4L ֵ;2[A4K'.f$Y݄[.,-7QcYf-ZY:!M'~vt=Fu/Xٹj5v u)`H|ąy~ 8wx%}o=vmݞg^&,|C};G7zΥ,5KyoV+[x ]dK`A06; !|_}M :}Ƣ .f%Yo%0Ssz7 kmu %mĒ0̛qx9=?umJ-:U4sHr}ü2B]@)h%jx.4\w- xɶP?|9'4XtNc8q'ڡuecxZn/|ͮ {Բԧ;;!"1JRHLipmINkt:N++MKUM!M_ٞIxgvv[ی!vzoחwk^aW˰DԮQQU@p( ( ( a`g]X_|GwG3MriFUc i\SAW~Z ( ( ( ( ( ( ( ( ( ( ( (6j_g1N ⟪1_ႀ#ha(%#2 nlpS)F6ܸR*fsG)+HcK%U 4LsknF119MYrڶCuUȷ Xufsr؛uM|… rZ_earN&gCםea|,c襯3هꂂ (^iῇ^c$A ^`i-&CՎ8]8ҭZS塍(SIs{$$L4/6[ңXe$Ұ.B$1[/b?yZd֚7ʎIҴm3L G1 0@8W@74;ٚIm׷S9H!+ %ݘ$Ŀxwo4ѮJJxxX ub9Lɿn~ڟ\˚׵׷o1:>[K^[}ȝ3T\0dւ9;υzό5ǹ;{ҠbtD\hQr-oCvWW6~ѭc+(gI<ĖB.!.s<'_5}\YE#.X?ͧYE$lR6RIQ$P}'m˲O~y 7v3>^P+xN cOՠl,n!-2pDmR8燄ЍLj7Tt;,8/4A&W=XÞ !A)DkT*pr%pF#'&.YXZmI$!@]ܻvvf'$ɠ  ( (8?5.GV3]L\Zѭ0qo?C_ZErߩ?2€ ( ( ( ( ( ( ( ( ( ( (0GhbͿaoH c܌{XռwrBnZd E>m_jzNJMRR"m7==tUuU.< rx~uW2|59ئXDλ rc`(bN׶Wv%a+*Wztw˿}sx-Θ (hL\L ᗡj`k6]UϳqkmObiQp6n'{=җӽECONoc{hNZI+<$A.%.$8''UA򜮯%^kW=p$IfF;[]-k~Եk>?i)Lu9U6_,Ww-R_4ֳ QԥM[N_U6Y{[M|I\31@FZS<-j{NU)ǕYuc; <zmm]:uy>*p1l8mO^Kz^]n+5{im-ziqzDŽ5;~.遵!GM>lG̔o7/Kkkl9dM[N_rP~ѷJ N;8ͽK",0(OT2BqMҖ2[[tg9҃ni{$uwwvjExCSe/KqXbyRyaKm$߆V9^@ե( /qRO[z.sBg*WJN Y_5tfZh[n gT$($bqZ`qK (Fm{r5-܏>a ʻIpWuWW:Mק̏7/G2 0ܿ,rx~ts =)SxOY)[92j> ( ( ( ( &R*| {IγU\7jpTa8}Ůs- g.E-| O>oTP@R+J" fn+ZX6DpWV 神Okjdf#(?KQRr꿯o=WRi`=^ڷl/e.Un lLl7S'*(B''Rh٫GgAnW|O&ZI~)-;CCѬmKQ'8A%͵|f-"r/is|o2ezkm,۶v1*KYI#tωRhM+L֬eEW+lA!>/0IQXF~mn>nPَ]'<6ёP( ( ( a`g]X_|GwG3MriFUc i\SAW~Z ( ( ( ( ( ( ( ( ( ( (cTWЉ |_M>Љ |_M>Љ |_M>Љ?ow|1]Eq_> pq}>qqDaʑ~I |_M>Љ |_M>Љ |_M>Љ |_Mmo@=hcA#oxXHP2hF ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@K.״*oԊ.eТWCף g=;Bv9-4Ҵ_1͐mE,D :\$6<ྵRi0ƹsJIwiX M$ UNCN\=&B1I$y=K~.k6&K}F'\p@8f}k xN O`r/,m! b@GPX[Cpk~hagcvQ m E j0w /x{Du A4ZO:"t9v9l43Kh:KivFE|.yw-$&!<9kQLn<TKGʝѳPprP/ x/OcR]<"@bYXO$oxCz 6m2{++(X1̪@c% v:P<'vx_F_/}mC>~?~3ˏ~sb8 ׁ<s{o \7hr4Z;d?;~f4P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@P@,n]Ǧ ƧλT] ( ( ( ( ( ( kJ_"ϗi$'|?U_eƫnO3}! ݿZοI~G21RFAA@P/ Ȼa^"R) лYxAimtf+ۡ r+7Ag(7BN13+F÷$}yEV[fQ=Gݒᘏu5h'zr꿯o=WRi`=^ڷl/e.Un lLl7S'*(B''Rh٫GgAnW|O&ZI~)-;P>4x_ߋl-m̶IUf>eo/t>Y26|(j(5FB!N𧄴X F+V4: q#vaYًؙR KGJ^zG+k^lܭKaSpace2(4In P@P@P@qk]/vg>#&Z`*~)Sj-VeP@P@P@P@P@P@P@P@P@P7V6R^\EooYX*"&G[֦#n8T~<7dUC3y+&HK3{@P@P@P@KO_cyt ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@K.״*oԊ.eφu?h![м0jmkzu r9SRcb41oOxHM7ĺE2 ZUT3m S8Fqp{e nDt}VKPWo5)`G!X 9 gb:X*IJ4 +l..gn f2B~t&xnĚ< w|h3' E4}.kh]Ba`K q@z<=AitV YڤKHT Ϊ'@'e].x,F$iQJmB#gb9$~G|/M2&۷o6&6WPP@P@PF:_fs>8?k+O5>{ kOZ6"fXP@P@P@P@P@P@P@P@P@P@>.(yk Br@0|5x-_ IkFH:uO@O@:-:MIZ=ۭU2.Ѕ"} T\۵iqG8ވł@%i4-P@%ͻ^Ihn"E 7`GP F} K@P@:i}] _cE ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@K.״*oԊ.eP^okK'#X}p1yu%&&QSJA㫟:<1^x >M2Y3 B601)%zGZ+S:h<;/|k6wd:iRO]*qI H]Y[~o:ͪZڳuzCVNme78Min{?Gz^s+5-Gk:"@76RM󧓉 H5.pKG{{&ۻ8y_iz{-soaB!U6&?-Q4ɢ.(3Y~o.TKf"8(빝w:o7ֵ -M4v$UM3"eSݑ -ƞ!_ۍCLmFծylRhL8nIՁRvb`HbDOUլ{AУ56]y'Kf(Qv1z޹z} ޫY^#/m> T2ߗsyg8.Z|s'Xb,G+1h՗*xcPk-[RbI-Ik})smoyr#Y H\ce#⯍/ i76^ּUe[GZ%ͭ /ƶλ{xuMfRծ.$kYaH -V^>CCѬmKQ'8A%͵|f-"r/igx~!񆷤iw> ^C3.;6>o/̓ ]ψ3MriFUc i\SAW~Z ( ( ( ( ( ( ( ( ( FqikZ_h +s0z~y+t[/OP/#( hʎwUDMIN7<=oJ|5q 5쿴K{J4I\|Ê<8Ե.tۧ%s>^hռ}i{R#[y2!̑40sy֭kYXjzsyg,,ͺIdG?"p+Rmm_Qcɹk?y~f24!$%@$A|[}úγN[ƱF^<J]: tkSZ~j24"L\qqr]i6q®_ከ=Nf 7Í3MuHZ{[3t`  P@P'.z:]뚃.:( ( ( ( ( ( ( k )|kԊ>^hU} >|+7_v1k:,=%g>Y$ß K_SgP@7"{GүH/B/jAngkpCڹjqq5vݷF>ƱKVݬc)յYОn/>FT6܂G\9XbqM::&]vh i/ciia&ۆSFՇb?5ӆSU)?NT"n@P@ssGD}Gs34I+H_K8i?jMlIҴm3L G1 0@8WP}&l?mߝ 22O|hÞgmoA5)-^%hT*`p>V-I$-̗G#&Z`*~)Sj-VeP@P@P@P@P@P@P@P@P@ߌMg:b9G,F$Z_|=m3y%.1ܿEG 8{[n!F&(71RP D$w=U4=Y?4{ CCtoUDgI )ЙՉ0e5 @.aK{XeRYOz̴m4-|9iq[xX@Yv }MXҴ]LHMll(E u\*ԨM#IH!4%ݭ!@c pbeG(Z? xf?ɠ4Ҧm`q񴜀zuxoúD:ePnc#TC +8@tP@P@r]O?fk<Ǩ ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@s!w)(yq s[wcф^>e_nqy7VxmEҥ׮ڰQX0=14e>O-9M7ΗUZlO˟.SFO+QּJ-딚2nҴM+p{# e\C^~Ò5]~Kgm]3F;Zof>m&pVשjaЯ%J)&?7P)s;k#AO{Oy.ﵝY4{y/ xm2"(HdzxĭZN}&Gj Dʒp>$"[07\\PH|Sf{KgVk6Ko1mȊ/|6񧍼oA S[y[w+k byEЩ× E}s-t5{{}BA)pYRdvJQ>)^d!Y-sHI;5\HT[;1_4LdTıo.<3%VR,K$jn#im=c\L$m㯊~,|)xtilZlt͂{oM,\Jlkd ve;k!5K^Hy(\2dE+# V&0?UuGBQ}JR+Y<7q2'0bc%F?$6omJqymk32M-ڼ{MA)rC`'j>KM!{vT#Cu1i-&Pnҁ>1mtt>?r76Q"DO⟉~&uk]}MدZ)];L %^ 2iE5|CҼ{a/77ͷL==|6@?w)xrK7IŖzγu>3~u\\AsluyxܢyV҃($X3F*ÖԾ-vzLWn./l6^gbUI_Egn294x5}7ϒ&rpMڿg~@;k!lKZӗPgkX.OKhU+ ?YCMؼ3tUY,n$ޛ7yqI m_6]>< x>0[ 2ktsЀ9ݟ='ua~/9&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@_PÞ+r]Z=|(ި(( v{2M$rd=X㎕ӌ*ե9oZЂ4ͼPtf)&VW!јu\lmckͨGe-HLFѽ#U D^sXۻ4IGDsڎhv5pSp4{J NK^|5TNk[se^Vg\^U' Od䣜!$NYFxJW:]:Gt썅CSy]6[#,IMw΃j7zLuݪK%Nف(rr9Q(燭|Qs[mLZCqjs2 +"pN>UJφt[dzt+m33k9#?* OiYDv2cj .88exQ6tz7OxgL[&^sknQcI.ahmKtx4C5݅{((m*L3>=Β]h`_*o4K1]d|ʼn9ɠ .gn f2B~t&2%tu7v3 na'_A@| {_ jEMqGB8C..dmv)6p`9J@8hN73K١OffcSQ &ڽdV3]|L\Zѭ0qo?C_ZErߩ?2€ ( ( ( ( ( ( ( ( gCםea|,c襯3هꂂ ( ^vEiW~Sv,ԚuCkR?ȒBְ#ub2mR> ~j6JN]WWn,vGv~k/sg>KzdQhSoJ&s-VbYy3bˏ[O#Ϙ J 9NկOyFXj4쿯$v_+[)dswqjfőUt2ykƾbtm~úV5{kdc?=QIIro0)D{r~|{TWxQ^M(sDLBR:SJS2@2 _:Fh 4 ]]k:\i_,}eeKnDQ|%I942Z;^\EoohP'_EborS'esﱸD Cf9vFFq@h ( ( (#]?}ua~/95QV=E5qOW-_Sj,( ( ( ( ( ( ( ( (ωF[};L[sR%,wcv>5$@/A{ %p?`G{HP@P@P@P@P'g}m?Zc5uP@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[?&>]Z=|(ި(( l??V~7E?zk2Sk^QV~!k̳Mc \vNfY24jN3,^& N.^U~gSmO 'M +Q}SB[F5 >8پ8 s_:Ɩ%8^iKD,RrGÞ>%tf9oڤ@` =pOtAo LѢ.E卢YD"a,Hހ xN cOՠl,n!-2pDmR>hh:fwI_\ZZR]>X.->&}ImIm.^h0/7Yޘo.>bĜ:<=j:}隍ޓ'cqwjhS6`JTz /{÷i4luCsKH,K+8MxOAB𾍦CorבEee+3BdaGJ#n }/yqwl\!'|/m᫟~mC5& [Bq,ڧ~@ަ: ( ( ( (#]?}ua~/95QV=E5qOW-_Sj,( ( ( ( ( ( ( ( 񷉣vPֵ a#1׫1H/qKj }.b k䜒h ( ( ( ( (z-truiY@P@P@P@P@P@P@WZ5q֔5EO/~?I4OˆWN >gCםea|,c襯3هꂂ ( ^vEiW~Sv,?2ZWBVnP0nZ7܅@P@PF:_fs>8?k+O5>{ kOZ6"fXP@P@P@P@P@P@P@P@ƿ q^<1O`=p(ǿf~2m[ki/",0B eYT\ 2P3 mGWԮqLGEp3/ ( ( ( ( ( $~Ğ Z2vY@P@P@P@P@P@P@WZ5q֔5EO/~?I4OˆWN >gCםea|,c襯3هꂂ ( ^vEiW~Sv,|7cE -օFP#nd0G[ӯ(S%ʚ/f3G-<pw.;ۢ8N)eht4GkmF=V~ЖF]J X8 y5ZpgNV:O\[Y:k af[e }~bFpMqUjon}▭XеۻIkoA$w+ww8M Y3uCNtGm8BK,=Ѽ m77i֐ܵAgc?g1dءaSk SzZR˖GCzk C%@$tBRc1m| {_ jEMqGB8CYr! D<( 9 ^5<'5oUtVqK č$,Q49524FUe {C-еI9ͽί\[;dWY#8 2# V:-)5 ?v?Zx{'‚x6h']F{ >xhF`a`g ;leVV´&{0QPPP@K.״*oԊ.e|Wޫm7mmݏ|WF{ho~~Gɹvi6h"J/@7=^ ]y-o夫$6o*ht6YA'eϗ)OlǨ^,`ZGvMA7\ZuV{v[o=Ą2ٮNA!ϯ?x Gߚj?%z3.d`i76G8^0WKoΨU๝5W񎑠Z=<ėWwάm6hcYRۑ_$2l= VMYxsLEңֵg[eIe qu-.P.b(F`ch>)֏i3@%5ƛ{oo%o VTE >7РeuI |Eۭҭ;O1ԼY:4si:{K=7&a.%G6 2;2*^֓se kVZmq=\C]C 2Ii6|[j^!%7Xݿ4KmZQ#oHhrT>͍/C^|W_282>ygZ(;}By]v܍#&㧗u`TݓRWKkg|Kqw×Mq[\xv4V-[o-.o#hJھI^֖~k4߃X%.gi&{m,G{4]w14/Q}~nRe/罓’]zA|)dzUޘq0Xf^y%|[=PgFT@Nkzyjʎ6Թcuhk^2Jnm:pÖ_c(:UVG ݟOkh_Zoq<u-3Y)]#UII vuS2Yo qP_坕G-.N?ufO$ _ *_K?=V>d'yd!Y>ѹ+G|vyT\ZWV۽]u~7h/ GiZw] t˪6#CȻS-%o?l}{6OV > kG5/ Ct[2[]y4ZiP^\aFPx`S$(V~CBuƧv}fDVcyj^ִJ=͑33li<yHpT,jIFfʃnIVVS<;]B\2NLj%ׯ.m^]bK )E(z PI$kQm%V_SQuk/&oYa ]'Ɲ⋸t{d)ym`F{[& DhA~H޶>1wkMtYѾjZnǩ|?|I./WRĐYOyst֯oL[N5Q,/nd^o`,Z_OTZO_u^[^:i{m~\ESÖB9I͔ow3Z kw%tqXʕk{l+ xZSt-ŝ0(=W\TS32\c5J ko7_- ȝyaOKf€ ( ( ( (9;|rQg\z'( ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@K.״*oԊ3!>bg=7AqmΡ:č)V`#zYp~x:3k",9.& %QRABԢR@P{ f(ueO:3+m+A:m-yA%-[O3 43=I=Β]h`_*o4K1]d|ʼn9ɤ2sÞֵ>YtFIαId|0%QNW*=L>=Β]h`_*o4K1]d|ʼn9ɠux{ZtgA5&O:%tl9E9\Zs־(-C^F!Es8'* kO^V :-k2=: Ȝ}Mw d}4,ov_cbcn1}ơM}K^]F[U1JrBČ(t}'^u.S^E&ap@##)x{maм/iܵQYYE 9ePs(XsҀ!'|/so~A5ƙ Li NHʾ.Cpà vƉjQ-ܽNK `x{rXxA5H%jƮ 3 >v{aKi"g#G@(/>>m{|(ݹۻbLZ<= 6h^ѴmZ(cc2U9,9H@߄<'uu}{ -{IlhIhb(W*’Hh{xzLV8]2kT{`"#njc(D<'" _eg>sր/mEh%';r;)ᙉ9$Njm}.Nf+H%;#XӅqhQG@(񕝥l&) Ruh٘O&ٜ'g? i{Ǣ+MYP@P@P@P@pi/ڭVVz O)¢nM&WeBbٿ^)Ky|&UkI2°60ppN)FJ[U:6٦{GR 9gs`PA# ȼ:M=9A'.5>?d0$(&h^Dd۳Iv$a+_=m뾇AT`P@WO/u K+m&Zݠ0bP˖6’i苔%i]yw: aa@Tcg$6rr[- u;Rn)֏i3@%5ƛ{oo%o VTE >G>9<)^qtO9y#ku?cۡ콣^׷nxž SI埆[V:zf\[O^.ؚE2>gS(eo3Jc.o%O]zhE5?Z~V.?Qom<$8EQ299^ݿ㡊 MKG}I~Z'mkL͞j&Ny#G xwt j(dž54u$3p1|'4g귗6w-=Ǧ"J][wĮTZ۷3:PI/KɵkjYtV:ixT6iu}d /!>kKuCϠx[{#XFF֊?2݀T Tb],">9NWJ|o{ |k7zmJ=SW0[V0c}V>@ٰ ʎ)h}v\~}vC|j-=Q4!%Ρ3~^(Kq %`S;]i`'.kh7E&K+fhS{j?z !оkEWa#wWvPnI%u6.YY|DZZjvag}nmvDa`ښ[3_k $qZF rW :=Iyf\0("u?-; ( ( ( ( ߈4խݶO@eP@P@P@P@P@P@P]k@ZRש>|L$?YҪ.5_w8*|0Wxob^uXzK9}I?mf 7 (1Nl r@վ&YnST⠊<x@G֮kx._JԧVP p'+C7?5wL6>2h#J(!X"Yp#YID~n˂6c ]_\_FSXV$Y\c4j|׺k˗wMqelK b"FިN@5..gn f2B~t&)k<3kzIm+FUK0PơM}K^]F[U1JrBČ(?<'Mx_F{,>^/;6\zyrk>MVl6ueAJ&J%F@}.?ig.?|+{zq@!85?V4WEK("aHb;Þ_B40EF'Sm3 |1 \coxzX$]LxPÇR1ȕgagicCek M$)wr٘O&& ( (;v uՅ|?tp?!VkL}E[=@֟?\~7mOḚ ( ( ( (>|A}1^BR]k6ixI\pr94 ?vV´&0N~ew@?<=?'‚E#Nth4*[[79$I$I$I$M^ ( ( ( (O_'Ek?KuP@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[?&>]Z=|(ި(( ( IW^6E#l$(1.Mk r;_̭-Q3(#pGP:m_q%崺u ދSs=B[r6Fp/$.PU)}Jͯ3)JV\掷/qsiK=q6J"ܣJ[-& :8NxQwoK]Zy뮞yFOEwlcd*]ӣ >FCuyF01EUt9|+esO0q jEke,nn-Lуx4JO-cxF#ĿkbѬ<=X4#bO"KyJ#۔K* ڍ":nGXӘr"f2 Ur*qj14G^Y՚M` c+*[r"@ ioPk}$"iV'QD*fdpyH|c%ic#ʽWJKEhbOP>PW\Ӽ1hz5j1[G$oQ.^12O1[T׭m v!Isµò2@ #p^hU} >|+7_v1k:,=%g>Y$ß K_SgP@Jo *|~?z?лY|i][~̷:-Zž6^$&ʭNg˴ېT#Ttz?K? 7Ϫڥմvs i~ݓf^4˜n \֑~_Þ>%tf9oڤ@` =pO@[Cph~h4ychQ'K8,rrXhT(+)xK~Z|/%Fh츺/Nry x{maм/iܵQYYE 9ePs(XsҀ!8۳2i}{liyg\{9n { xjEoIBйK$Evߐ37 ( ( ( a`g]X_|GwG3MriFUc i\SAW~Z ( ( ( ( ( ( ( ( ( /xjq };W%G =TFz~"PE֭^Pn-9P&Z6?r@P@P@P@ke5̟riMs {>I6 fI ( ( ( ( ( ( ( k )|kԊ>^hU} >|+7_v1k:,=%g>Y$ß K_SgP@>=OOڽ<^Zi$(e_L-}iG[0ms3W׉c>eeiq% $P7pÏݦ9#ۯ Mw k73iֆm:,ۋ9F-K*lxg햪C`, _: :ՍwhnmUYϙ!3!P Y6|9?ߊ,&TH廚]3~cE rEʴHE|(w`7|am7{guc`I90e*.$|0"p uh 3+N[CNҭ5V'{t %?,|1ɳjw4ey$Xh:֛T{g3 )S2HH3rzGƏÿUvͅY;I*̾ 14FFϚ> _^}?F߽BVCou R𡉮3G?ik$rCۦR8.+?;1rX*D:~#xZ}xO[(mk͒;)q,*n 7,lsfEb#0-٤ ( ( (#]?}ua~/95QV=E5qOW-_Sj,( ( ( ( ( ( ( ( ( χ?-`1W&=UFÆ^Ѐ@On[\Z}YCbN|#!l9V=z ( (0QSk6:UwMpؘhՋdAd=h߆3\N<\lY!2:)((/~:BU/uH,cA%INsiZ×1Im .dGw `$Ƀ뎆48ayfc5,@I(ѼsO[M6{ .MFxJ&G W;R uѮiF%?Pe^;[zUK&k\1UAˀ~Qހ&&%|'i}%d *3s@|/kӵ4-;XY@0 #8#<of:q=\b7pf3D1I,;:( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@φu?h![м0jmkzu r9SRcb4<7ozN}λr'ηw=I*J"]ʠT%NiiCS?Ö;&[w&Yv6i }rFMTI;v%x߹oo 2^泣݄$H;A3ts8iaКs|j#hG5oAt$y rNb:(AR n xN}cPզ%ll#-*rt!TmbF jGgi-Z·sƐp E-ԅ29.h=||aD+c9?|+4]GP]S)P73r]-e20i# n/x{DA4#dHȨ U PO" ÞЧmA4.c!i$P2>U 4}%4{m%t%~h _*(E1Q |An9[xA&֬0rZ\‡p*GMfx;7AYS&oMsmKA "  w (OB燴H-!t3N9aK;T`I<@Y(~켂ԤdJ#8 tC^-D.K;-Gss$2d`HsrI*7~/h~u>5qj 7P9$}|C mJ@,8wkcwX$$9>S($'Ks$O:Nx8_>,׼]q(KCx{7p`" l707񷅵Ht/u)I&%OS ]swr[-ه~eZlQK) "Hy{ $A:y9<iMCk>):f- KlnywHO Tr~υg tϴ\ArnȪd7͒uimn]-ĨFU,UI@.ۏ h ( ( ( ( ( kJ_"ϗi$'|?U_eƫnO3}! ݿZοI~G21RFAA@P@P@zjju,ȍcqpEN)+/C{?*R $Do,x':{=[gk3bXּAymP4-- YFjo38&B[OkCV%LJ-K{VC0P8[rl#E,؎,dRIz'(S҄_O3>9:Y~^֯e.u-3l(D1 F#>1PfFӓV"PQYeXaq-ʉ;o"?9.BecV:hG-Ii$RlHlD|+/{wmΫherN ܏.;0eǕ,E|]kMv Y&cmc5ߒg.f%E:ߍx> "40Wz}=`Mۡ\'Tl-U<'j&y4T֥fk/ʉ~wLPw3PPA֡%cfJfr?dLq$+|;qi Xڵմ-MGm<ڰ*N،LI Hi꺵~!:w&ӵ+$bq 0' O[>xo]ׯt+$vSeg߃!U`,爯|W~5u[ïk6qw%\/` E@ef1mڲU4 jejZV>Ų -o.m.[k0AiKy{L|Ue&׊{{kD4%/el^ԼCJ)n&Zhswڴ=j;96FQ}-w^!?6e:qd}Bx{`Vx52-!y03◌u^[ZXi7czڌosu=Q]ƀ(F.ЪUUA@<Þ"_YouojZߟZd-pk91@#IŴjW\Ӽ1hz5j1[G$oQ.^12 x>0[ 2ktsЀ9ݟ='ua~/9&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@q^&ǂ|J*+jND? @vOm'  h ( ( (OSÖq喟h ( ( ( ( ( ( ( &R*| {IγU\7jpTa8}Ůs- g.E-| O>oTP@P@P7CGtt}jXnUJ{)Ke,W~Rq€<߳?%xLN4Ζè^OtCg<+]FǖWoc,쬡8hYwՕ}&l?mߝ 22O|i_燵[tJKhIZ46JXO"&Gb<.>s%;`QO&2Uo6]9>cR!=G:N}Nk6QE KT Ƅ62 )(5 Zo _2BW+BF$a@@|C:6ivZ6)0C @4Kk }L"(V9f3*PBÝ <k{ [x7跒 4VgHg.?"rF~Uvxz#L(c4KT n p"rYE'#s'ӒĺG -T5p g vmk 2^H&x+L9xD\p:@~)E/hkfYEonzdxOAB𾍦CorבEee+3BdaGJ.!; ImKeDBKCB(UF3@s_ ^:eΊ ZLQpW@!?D?_FOآ/?mn{?<&W7-}{m5Ħ-A,$9ۖGO I$Gt[SmvZt-1Z@)Ɯ(D:@/_h1OMFmRUQ$XBLH.A$>>m{|(ݹۻbLZ<= 6h^ѴmZ(cc2U9,9H@ߋ4}'K^YlЧ_@)|{^q2k ]ψ>&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@Gw7V\Ē2UԌGpEr?dúľ3q\Hrf="BU(z@P@P@P@r~3G:f#Eր:( ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@D4ǎcK]8eé(͞Pk6m[x/8$}$RUoS(J ( ( (V,;Di:( ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@P!pCI@٤A݂.Oh_@P@P@P)n>."zgCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUc i\SAW~Z ( ( ( ( ( ( ( (oZ&Ҽ5/./&4y8K(b'%O xMzxzBn/'[BbX6 q*(&=早~=䷻&hZ&KNEc?k =Ks&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@ eg}3[ٲ#0u pP Qa.ox"./cxLqf *0]P) 3y[>umjH12[le|G=tE񦧯m)'YXѧ<:-"In5o )| c $ sj+}kާ<6m ]KT ˱W2-/ZUEڝƝvn>Lj3bB1@xEmOmbvEbLpr&ci4RV6kmys,l#aIʡˇ$zPkiTz]kտ +A$h7b29!m$ _F~"Yx~];]٦sdS$ޏҀ;( ( (K>wԮ$ɅuP@P@P@P@P@P@P@Uֿ w\_A5/zSgߴMu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?C_ZErߩ?2€ ( ( ( ( ( ( ( ( ( ((xH׼;y_k{ؚ'sч c]~>G+X_fL|z:{8 ( (3j(j ( ( ( ( ( ( ( &R*| {IγU\7jpTa8}Ůs- g.E-| O>oTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>{ kOZ6"fXP@P@P@P@P@P@P@P@P@P@P@~-]~[~rw ,Pa@P@P@4Op| W@P@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[?&>]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[=@֟?\~7mOḚ ( ( ( ( ( ( ( ( ( (2o'|){L:U!{a>K[tcpQ@4P@P@r'k 3D)%ƀ:( ( ( ( ( ( ( kJ_"ϗi$'|?U_eƫnO3}! ݿZοI~G21RFAA@P@P@P@P@P@P@P@P@qk]/vg>#&Z`*~)Sj-VeP@P@P@P@P@P@P@P@P@P@P!fY>)q(YWuP@P@r:o64ynicD?RtP@P@P@P@P@P@P@P]k@ZRש>|L$?YҪ.5_w8*|0Wxob^uXzK9}I?mf 7 ( ( ( ( ( ( ( ( (#]?}ua~/95QV=E5qOW-_Sj,( ( ( ( ( ( ( ( ( ( (9eJBڮ*V*:xϳih6zoIoU`y P@P@>(xRd8 ( ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@P@P!72ibY@}P@P#[#kGsF5J ( ( ( ( ( ( ( k )|kԊ>^hU} >|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{Ǣ+MYP@P@P@P@P@P@P@P@P@P@P@r?қL#R.VRafp/zTAP@CTDwjv7ZI/#Ŋ=*- n zmV}B(\@P@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[?&>]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[=@֟?\~7mOḚ ( ( ( ( ( ( ( ( ( ( (;!%$l2H|$ӯ<#HyE-5)jh (:uX{|q :( ( ( ( ( ( ( ( k )|kԊ>^hU} >|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{Ǣ+MYP@P@P@P@P@P@P@P@P@P@P@|D_G/§ɲCgZћ"Od?%uH^f  䬏[ɹ0wNKUθa$H ( ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@P@P@j[E\Kx&iW/[|;k⮳0m<5]lU!UA1S^#fAwA?P˙yXKPI4Y<$mψ$X`I)O±/PW@P@P@P@P@P@P@P@Uֿ w\_A5/zSgߴMu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?C_ZErߩ?2€ ( ( ( ( ( ( ( ( (90ˤ\奔w>t\)2s@|C~'X=R&qmc_ɬZu: e'@ڊ.9ԗ$d7\$ռ;WITN& j*R)r44? ߛG@)'6?@~3m?fރgԸ-ݳ|#v7.q#֦S>'cjXzݻ&=#úA5;CslG*Y` qM4FrdSZj:şYsp 1%P$7mX&vg<=T񮣫k l)\T4'}QqvjƾOxM,,~&xM4ǝ" %xd= .NȿiR _> [D1Ɩ HQ\#2R8ܟN?zb9Z?xՍֳt6{%T1!eA.qfjEm.;)^⾽#i y, } tl|dkr!!cD;6%D`J`>ϒt=EvB_C|CE;)'6?@!!c)'6?@!!c)'6?@ $Տ zƳ7qD+!T8'vTP@P@P@P@P@WZ5q֔5EO/~?I4OˆWN >gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUc i\SAW~Z ( ( ( ( ( ( ( ( ( 8ȝga3Ka€8goX^}\ѯ%K;Yee5gm('u~ Ԗť"hZfyml Ɩz]ɬ=v`#3#S+.3VKO?F(IRI/v۩?^_xw KMchKM@ |"%fTdfJwԚ0pK}{˗]﷩|D.x-k|A2G Q!yU Qq4Y2㚩;I^~4"FQq&Loč+Dy,tKYfK˕@ />~À8I)Z/&':I]rribx.ɠjZϊ^Ht<>~42#-ϗH3'kZ֫EE+]T;]$\4=O[/"tIC-HZ=Jr3-  S}DF}[n[oZ-W:-?Ĉ<>n._W?~nCh_.Q0>Q~9j*k %=>OQ8(8K ۺ( ( ( ( ( ( k )|kԊ>^hU} >|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{Ǣ+MYP@P@P@P@P@P@P@P@P@p:Zg@zw<5x"ҮkO7t:*I&k*5#9EBYp-<ۙR/Rz)ߡ+5*^дkOb7)` =rQܨRߡL cʺeY=m Bd4G\(,ޓ'+- nR/hK^Yt\O H@2YhnŒ\V%z:sldI#BWU2F 랢As[AsnٵKq*4 pJ`: ')7Rt ---cif@Ād19$n5I鈉m;6n%F!.)PRt=Etqkh'3|wxtWm+_нL #4Y5M?OSg`l1n7#\-suvϨWVvdAq 1zKV(ɨ]A#o$mԡIʒnS"jK; R$,:8 ЃV`մ@~%?ӿmvP@P@P@P@P@WZ5q֔5EO/~?I4OˆWN >gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUc i\SAW~Z ( ( ( ( ( ( ( ( ( 8ȝga3Ka;I/6}>u5[]>-Oqoq ,fi2aQkcԮ* +I+&y2<5񞣬hښu:Mյ< [IY,.yOk-ME+_ֆ)Q5ٷwZ%/׈|S+Q<]jĐC6y̶cY YUA)"tܖٝ8|\(jE}z[=})"]_v1<&]HϚa.woMZӿsG*ju-}9oM/Wl{mOFҤ|)_C|)`ZlntvK.SK \Z{|J+w%ۣ}5äxVx7׾#Moey^%‚9WB<ͥek9d4- \O[~L%Kݻqmhr]5ۖ;ZfմYu1K 1^<&ӵ- bݺNqtknD@4QƊ*Wmʭ:>Sy'~{_ZSwz/6i e^8v(2&=EI=4ʳIKgG߫}4v/[m*%67^,]2z̶*/$AaVJ7o~^MdNj44z/5KFYMy4dPv82F#dzt_>i+O}i$[Z[l~-ͧQWKKyh'1O-̈ F~Bc$>ueO݌m[T˵K&5.l>$|o-[^#M<ҥm $N{20;TO6jۿ5lixj\(x~#ƩqGof̗]|20ix72=f5קK.es{iuy_MԴ_Qk;k$JOQIn.qy65Yq/NѷtP@P@P@P@P@P]k@ZRש>|L$?YҪ.5_w8*|0Wxob^uXzK9}I?mf 7 ( ( ( ( ( ( ( ( (#]?}ua~/95QV=E5qOW-_Sj,( ( ( ( ( ( ( ( ( (/Z <=6{$#$5m)ãVU<87#jw͏#ox=w͏#ox=w͏#4-ebx__>]U4(0%61^<55U({5'}!!cFAox=w͏#ox=w͏#ox=w͏#ox=w͏#ox=w͏#ox=w͏#ox=w͏#ox=hx;©j7ƱGw08EXT]LܞP@P@P@P@P@P]k@ZRש>|L$?YҪ.5_w8*|0Wxob^uXzK9}I?mf 7 ( ( ( ( ( ( ( ( (#]?}ua~/95QV=E5qOW-_Sj,( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( &R*| {IγU\7jpTa8}Ůs- g.E-| O>oTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>{ kOZ6"fXP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@u]MiK^T3$DgJoq_=ы]ya/[?&>]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[=@֟?\~7mOḚ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (*_/җƽH3gI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?z/?"joڟUa@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@Uֿ w\_A5/zSgߴMu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?C_ZErߩ?2€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( kJ_"ϗi$'|?U_eƫnO3}! ݿZοI~G21RFAA@P@P@P@P@P@P@P@P@qk]/vg>#&Z`*~)Sj-VeP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@WZ5q֔5EO/~?I4OˆWN >gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUU//LO';bQڹjoڟ?=֬OaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZOaZ 5/3LO'aڴR*| IγU\7jpTa8}Ůs- g.E-| O>oTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>z5x*Sj% ( ( ( [Z+ $0 |H??ow+nx2}?ow(`}?ow(`}?ow(`}?ow(`}?ow(`}?ow(`}p_ؾ;Px.㹽u,[8=jfӎ&3LZno5@-R BxQ6՘N-(m or<{ B[=B[=B[=B[=B[=B[=B[=B[=B[=B[=B[=3Q-/uu/̊U#FY #ދ`k>buOisX72RLl vQMe;_Y޷{9Wr>U7sǰr>U7sǰr>U7sǰr>U7sǰr>U7sǰr>U7sǰr>U7sǰr>U7sǰr>WcT3̊mr79'f={u-ut~Z}BZ{(fd 095c8ŵ{Y޷{9K=!VQ!VQ!VQ!VQ!VQ!VQ!VQ!VQ!VQi-]MxbK:L+y¯$1y5 %Qw_#s?ow*؞G? orxG? orxG? orxG? orxG? orxG? orxGDž|jsYM4otv ɃȧEXN-++ ( ( ( (+U/zSgMu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?CѬW-_S-fXP@P@P@P/'?[U3YkZ{#?hQ9)⫏i]cž/Pc>hz-$ʱYʊ$ ey38Q̷-.?~7s wlY0$Eq#@!YfeI 5`LڇJ$8Τ%msE19rnkGhx~ ao4au//dUdes{{χXO- CCm p9 cf~j%QFW: J|gxY_hđ3Gx!LH$+™|yd; ';j|~_*XҴDּE: AlY,_+ ߡ>*.kw7%cgDDٖ++WelsJ֧&OFm|KeoJgi]#y1UǗNV_|V񆍮i_h_C4}"H-.phX\1B* !,峰sisL~ӰZPX--L^D'c_8H Ido_i ^ihjlKm4wi-h1 E9NVGkU-C1gj6W 5Nډ 3kQN<ɢZ7ڪDCht_uODf[4ZHЗb [hd;+Nǟ3W?~мL*啾"Xi /<[Q8r〣r䵐ʶ?LJmux;Ϙxf`xdO1&7BHUnýR }UM//So|,/00G̈B,'<1hSh$2F 0x"b/@QA+9PĹ\τ?͊j$^-ޤqY(ȑ`~ @ıPT,$Sv>G-/6K4vڵWT` h\;hhkGhseIoQQZȪnd u?/χtqֵ;Ȍ쑷O$Cm87(ČSf*z\l~9x>>< 4~'4h5dIQ4MP AH-t{ l|۝3\jwv#g&MY-݀QŸ53O^KZwxV/ iψ5O,ѣb(xIUΧE>6ӵ?cPhGm"*TVfg ˭es;O1xzi'oؼQg9$}`y˵# $hou}66;4):7 ( ( ( (+U/zSgMu*US|>F-u_Ň#lG~Zjm6ٖ(jtg}|乞U'D6|@/d(a["hi77#ÃAv}>zim^۬giHF5.o~:S;O5Xl?_|̾J :=}_Au?T{l?_|9+7_<iƨrVoyQ}0߂2.mQ$jIr?c&|u8F2Cu?༼ѯu?Uϵ߂?aa[~:S;O5GϵÒ~?uCΧvjmk%oaO?>/J :=}_FG7W7Iyn-#~TJ ;>N \߁UO^J?~ QO߀gG?J?~ QO߀gG?J?~ QO߀gG?J?~ QO߀gG?J?~ QO߀gG?J?~ QO߀gG?J?~ QO߀gG?J?~ QO߀gG?J?~ QO߁^!L(kxM[ĸ>n{co|7 ^1]/ `k٥Y`gd |rqes˘]2_s*|N}.S %ߒ6﹅H8y;Mw_Dחd|L\ZѪuF_\~7mODa@P@P@P@kmWODe?ףps}coZ}گKXhzltB9R)Թ|=;C9̿jgh?'jz,jZgܺ~v` 9̑sû'@2- IskA-*@{Z4@UQՔl:y .KVumZY[N͑pINĹo>Asisyu1*6";k'!\7V 5]my 3'h򷯓nmݻw݌vK+iccND>"bn͌{T6LT);]c_jKi1-RnC 6<<**A;<9h<mn.fTr2ȌƛPFA$JM]M,s¿ i_UoX^o,g^ 3VH=u> lPf? _=WE" tSqqM@4|1>^ UouO ncy #!(aUAk|xEtmKZ myfW2Hy;n@o `}2]Kς/j^'N(gSxV11bS T <93E[kqv׾(7ڣƞDf429'Tmic?ZlV ,iy~4d E:͞+K_SLi/1#@XpphX;m\?uMqUu~[͞ї?v-vrƯ}ccֹ_0K]xeF-) 5*VNgvBkVJ࿶CeDꌈUA܀x%A!fT=C:Vxm8ne d6DrgVl+kc[? 1OL} ؾˏ/ghݻv{bĪo#4g\\]jzDUeKVK++#VG$U,s_ 1s:_jkjm,mzQ1%<dzb8Py(j>SB֬}7QY֡Lc.|n̜d8$Yz7}k6ς~o,\i}޻9Nb+nmchd# 2 A9᎗.,\/.m-ɵu(@b A D{L~]8jZzugY$lR(2v4yc/`3[Ykj6wLԿ.Hm6d3${_(p1MWV/߇gn,xK_HWP$I 2oGVFS @9 ,.՞Ή@K(^.i?6yjr#{z_kأ_jSGACz_h(=oK=M穣ؠ&`ޭl$ކ/ROҧ_oK=Mq_穣ؠ/4{?bڇP{Pޗz=jT=$A(g (%q@P@P@P@P@3c`iVw%H/%|SZΩ6oK+˶kӱFw1H(uO--/vaz-~3MriFQ=[>0ՠϭ~VfL>/}k4}jah!3_S@ E#Sm[Paxn|"^+Jj̸RB-oTkY$$czp(.T)Ќ!3_ՠϭ~VfL>/}k4}jah!3_S@? ZZ}Z_LmhBgֿ+o3G֦VS>[>0ՠϭ~VfL>/}k4}jah I>ζG8O +28u؁Tt"3jq.ŭ^ZFkD5k_/W(H;ѻgNs_Lmk_LBgֿ+o3G֦VS>[>0ՠϭ~VfL>/}k4}jah!3_S@? ZZ}Z_Lmh5|-á[]M-Ŷ*vjTswf1V$֒Fp`a3/@ՠϭ~VfL>/}k4}jah!3_S@? ZZ}Z_LmhBgֿ+o3G֦VS>[>0ՠϭ~VfL>FÖx:Â+{T# *yR 񎵊q3 Zm}Z_LmhBgֿ+o3G֦VS>[>0ՠϭ~VfL>/}k4}jah+9mn#'۷sSǕh EJ-M EھlkۿF+oݟ^_p~׹zLjl4=/\jo:ZGN|FH(I*@n/J?֞}Vw[\j+A^I IO&z~-g&:ѫe?J:pMf/_ׄ~)x^𵆳xLCmXVR ܬ@@:L^t_$^<42VUŎƙh X/$E?$Oq? g>׳ǗnwjsxѵM^/ 8ogn|S)1c\Rto hچdizf [\hnU0%EASFh?"YϧhoyCkw4r#pI630Y nFus.qsj&&H4j2ۣC!8| }~GX5=#SMmw;]s< 2 A=/ן2ڭ|/KPPP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@x"Ä*q⷏ _+$Tr~__*-|1o` QGؼ)ȇ9 o 9$(u).*/¢'$GtoM2g'~~tn~Zc+^{Uo[|S|AqI6폴\K$DZ@!i@ل8IJ+˜{HaYa"*wuKw_}7?Q@$Xa: 4 v3׍?7/,Y>tlټ|l@eo1xH[6>}Ʃ$rnAMC(;b/p |W^X^7/ӯY-䰂8&?e1"1$~dnÒ/3׍?'c_? _kMͦn-<%W63hX_\Ƃ mb3$jC,oAAwt >&6;Sisd2y}U<>1}%Ku_ $mTP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@#oȥy?x<%G[]^\Zi|73^xgmcvo0m66㲞 q#y94ʅCɵbț2|M+&9{|M^khO'No@6fX22?d|)hwe> 6~<7l7{zzGpSi_nG?iq+nyϛ4{hwe>//ǧE~ki=QojKf j$B_ȣC{)-^-+*L`Q# $2NH*2EDR撋>1H++]{hnu%tLEi#9T;+oHj3mi,$zb3B¸_)<"vM5O?Q۝1T;HS"z랢vM5O?X{Y|o mM1pP/GlpzG;G&䃚Ak>7}18FYIG;G&䃚A= 5{hHWLDRA6]YT&vM5O?Q۝1T;HS"z랢vM5O?${?dFo-6۳sG;G&䃚Fd1_A?OqQxo'2 |sކѵ _?x^մ/S]i%N[" Qɿ  ~0N<[ⶴ5).&4p'-<#tl jY-|GZ|l#Yd쑂7XpMjG;2&v4Kq!bb Q= FCG;G&䃚D/KtufVE,X]6OT?q?7$< WĖ^/e>86S!&dQɿ ]G&|jHc dy)EHAS %[Z3'(ٛɐG6#o?q?7$<I-??fg|~G}nͿ6ɿ  3UӬ/THCXlrrHކvM5O?P|GazK9f-s%Fq+J1<1lzvM5O?4 N8{(bXG)9k13**@Qɿ yְ^7& Y-,̆%+fAq.TsӚ?q?7$<.-G՛~1[ /;gOʇ,avp?)R0hhsT?%%^?ncvgpŵO'L}AS"k aiIJI xtuQ"˪AQɿ K}Sggcy+6w(őcniphhsT?/Ioe϶x6ٶ_wY3eކvM5O?ĖOmu?4^FV_:C9#̑J/2Ej-}՗zZY$n!%{[#9G;G&䃚Fxݴ{mY|Ga{iSyV-,6,EjLEφ[⹵8dvP(vܣNH̾vM5O?n{Kh. eYXY` 4~oH9yO hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B j/(_AAS e 4~oH9ylvM5O?/ ɿ }}?q?7$<_PG;G&䃚A hhsT?>}?>B jjw\:Pɥ"($eG?7$>}?>B j 륒$Vt lq` 5,@M5O?+Y=Lo)WTjTI[ݳ*ro| wWV{?'4~/>м>PP.[St)f`8UcqeQ 1]~|{aook5MN-.ɴ*F1 e#Vp|ZGCr˟ Ն}FmY.orx'˴읃(ee!@`9+^[5=WQI%hqq$p'd4E aVEL#&F$ֺt]槪cJB; >P%m#++Fya,Xk6KCk u`:78b6Hy$ێ^ 5{ZK2X 9GGg~YfP#"UPOA4WZf^[!QL<8ևi??iNm+d)߈9rM燭<9gkZ^DE^Y3)x90˒Ta%9&@:0PxGׇ ;_6e-5&# yx^NӮ9[KR\;KCơX8'qbwPUu]E5M;\?,bK,@dKY%ܥiQ#5O uG֚^eqe+C&fI71vb︳͸ ]k^)nqV_l6dooo/xUd%-lnF 6TU ;35Dvcյ %kI%۟۔F&6ʢ5"ŀ4 Zi tږko[Z0[*7]~E%JnU*@3-G&v e쵡M?ķf*a 4C l3\XIxKGn3mn)󈇕PBd}0?i6 ?u_k7V!rZ=͵29]p€ -΋mosMޝB\HM )ڢ^m")lc݆FlN `g~?м{JWu{kJ);&ssT#$U5 ɖ/oE[~-Ow<״~g'_o`&3q0vgxKM6ܗri-k Vv!0_4Ȳgny2Ơ+9'}#x“X^>R^($ݲ'"I k~ 5 Ծ&A}BbXc(ذR}*ϛpe_[k?65~/FX=OSHQ-*][BXB-x0W~&Ec K 7QX `i Xhe~"|E˳51,om,*,%O0"0P6'ofiiw6rFfv*H"DwmGR}n,K֒lkIbI|9;POx/z~=Ŕz}s HZY%[ "׌ ŘX9 xKNn"k{RE0SvK!LaAaw>kiwvV[ҴE#["%-r_`A| ZL08W7r]̆U k߈xR^5ؼ $Ml H]BeTH麷4$ۭ Uѵ ڝZ(֪F'lN%L3 ( <_P #E)RX]svRC*yÏ*3Sf S]%{#Hj3G&5΋e}i7>&Y$MR;{edE2vbO kE=)t=*VgC !h;6"1*km7P6ևeBGqfv<1m}xokPY7l4xK]*61,$`",o|o. Y\2_j/jS DI25~K{}: 'wVu<:[bQk}Z`@[ ^TX?oic{_ ]o C-ݣ+8C:oXZ%_cocv;}3P:Mmg@|; GuKIƋp'اfx_~)&KY:Om/Ck4V)LI 1>? :eh>hvsJR iAn`x_laokAmԩmkoKFy'ns$j@g=fc{,zwFPHcG6  Hed 6 Ӵ]*N厥G [42큷FQ]VG unŚΓn}Cc%I; $2)gx7ljKkze/.~bcm*Jmf[iYo)vt_ i2x_fkV-޴qo)fB /.Í?nC~b䑖ӕ!;i `Q}w/Ia6n{{# pe]M_ii?:Is+EmvY:\I_9PxY5]NOi$1vFP uP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P?&>#]j& 9KƾQ|$e&=>`8N{xw2h.aIcIL#]ArڜK3¬-ī{*Y[|?|/\jwivMVmZ1c)7J>"6K \l\^33jp|{kő>]dC+) ZƩ꺌rOq-E#;$q, *a@A21 ^Ӧ5=WKT܈iY-hX]3c bX|9]b[X_s=N qG%̧n Fv(b\k672^RY":<<2yHB@zij4\ *` !'%.;IeaWawY\ƀ,#6@l ȼ%kwZ{ ̗:eԱsȎ"68̡FEP +"NK C^ 6 ?SI 3[,C#>5}wkF\{&ֲ #&Y ㉶G"!dSMզ7VLpvleX']$/LfD9˖5o<=i=[Z4'-gWTwOK\Bm 71,̩2Pр=XG"&K?=i`EѴ/o9m7 _uΝw\zPfQ]r5 ʼn;.«)iQc_b$XG"1,,J0x7Dk8++)Z36&VI}ŘmĜfGZOt'&_gʶg(~Ke[ /~{x&-ncct0DR0Y gٝ&ᮒ#MΡ+\N,vܢ40U,:U blc-"n)\4Y؇G@ !Լ#ιy&7Qflm:aM$]&'ȭ_?.x.^i!#(-)O8\PIP6 O/~z ۝W͌9@<-5jYiuԱ4#A)Cdp<^xķuAhڞ:մ;9CE,-IϘ NMBɶN4 e)iɑՙYVbN3y9 . [-[֏5ʹvWL4t;#<{LahʡP |%ikk[jZ"AsqG0[iD+]|D_Uo9x^O+fݩ+yI@r,| xGYr&C qL |wĞе Pw-¶LhЮ7yD`E"+MΏ :VnSZ(gyMMW,.w`Xnf/i:λu]\^{'Pow2$7<yh 6ZYGqe3Mh*"%x ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( $ MWODe-A?W~/BgaM?J s?oE[n-Ow<״~g'_o`&3q0vgxKM6ܗri-k Vv!0_4Ȳgny2Ơ+9'}#x“X^>R^($ݲ'"I k~ 5 Ծ&A}BbXc(ذR}*ϛpe_[k?65~/FX=OSHQ-*][BXB-x0W~&Ec K 7QX `i Xhe~"|E˳51,om,*,%O0"0P6'ofiiw6rFfv*H"DwmGR}n,K֒lkIbI|9;POx/z~=Ŕz}s HZY%[ "׌ ŘX9 xKNn"k{RE0SvK!LaAaw>kiwvV[ҴE#["%-r_`A| ZL08W7r]̆U k߈xR^5ؼ $Ml H]BeTH麷4$ۭ Uѵ ڝZ(֪F'lN%L3 ( <_P #E)RX]svRC*yÏ*3Sf S]%{#Hj3G&5΋e}i7>&Y$MR;{edE2vbO kE=)t=*VgC !h;6"1*km7P6ևeBGqfv<1m}xokPY7l4xK]*61,$`",o|o. Y\2_j/jS DI25~K{}: 'wVu<:[bQk}Z`@[ ^TX?oic{_ ]o C-ݣ+8C:oXZ%_cocv;}3P:Mmg@|; GuKIƋp'اfx_~)&KY:Om/Ck4V)LI 1>? :eh>hvsJR iAn`x_laokAmԩmkoKFy'ns$j@g=fc{,zwFPHcG6  Hed 6 Ӵ]*N厥G [42큷FQ]VG unŚΓn}Cc%I; $2)gx7ljKkze/.~bcm*Jmf[iYo)vt_ i2x_fkV-޴qo)fB /.Í?nC~b䑖ӕ!;i `Q}w/Ia6n{{# pe]M_ii?:Is+EmvY:\I_9PxY5]NOi$1vFP uP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P?&>#]j& )h):?zc ? iW (oCǁ-pjۿ潣9?4ў~/>м>PP.[St)f`8UcqeQ 1]~|{aook5MN-.ɴ*F1 e#Vp|ZGCr˟ Ն}FmY.orx'˴읃(ee!@`9+^[5=WQI%hqq$p'd4E aVEL#&F$ֺt]槪cJB; >P%m#++Fya,Xk6KCk u`:78b6Hy$ێ^ 5{ZK2X 9GGg~YfP#"UPOA4WZf^[!QL<8ևi??iNm+d)߈9rM燭<9gkZ^DE^Y3)x90˒Ta%9&@:0PxGׇ ;_6e-5&# yx^NӮ9[KR\;KCơX8'qbwPUu]E5M;\?,bK,@dKY%ܥiQ#5O uG֚^eqe+C&fI71vb︳͸ ]k^)nqV_l6dooo/xUd%-lnF 6TU ;35Dvcյ %kI%۟۔F&6ʢ5"ŀ!>xzJV6Z-eM4ˆܟ;@|A6$7zy/5Q[_J,͚"mV) y VO$"YtY)˕ *4)E6o]>s8h]Y[ -;N1h#E2`"(y01G 9.5S'VXGg(h YI2 #RBY6Ƙ^[,V:92:3 Iwo'4x}{Z湶iƟn#gdgil<-T*5-|ms+mKS^H.n4 m5ȅ` _*=s64{o x}?0Eo1~P4.Bł񯁾OhU.Rܿ`.!ڹId"2@.ـVɖٻf( dWuIA]xE O:))Eۮ m|Em'YnkԚ/z}TdO4|"um\K(5BXi\WdBDTrP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@?w?)H,"oTR)\4{Mȷs__Kc_mũn wWF{?&oi[?Iԗ[[%a$8& Y,mҸo:FX~|{g?/b}S^oxR Y\C RdB !Ma/&աZh/[ڬK>lw R#eWn,KKmg溸0罺rcb%U6rKch^7񥷃tfJLviauZm= &ٹCChZiH."ռM^/Mœz[C Mci?@i6ϙ'j@ oEO'@oa K$b<>$Q񁸳 ?/x⼯i|[ڭޟXMo`4 H nu3yi(,6.gԼU4-vm.|ZVh6^w+ws$DQTw7/K_ru)|[VMo&;iUHKrTc y@^-&Pxqo-BK'ɞfG @.Kِʠ9oy-c6 ZƯ[$wɻ$ HVYL=7VƄ>uj6s៛SST0H¤RɆde᧋]5*h#"JK R~nHueP3q#Fz7Z 5bXk/xY{v@fcH]~YlYm2$Ry>ɪGolr3FNImwV^.Y\jڽ(a$-gfY]0\-mfxZ쵈Rvn,2gxF-6[ sG[?c2j%O[;Fo.toےB.g$ VasCazƴBX'ݬEs悘|lCfӴ]UXsIE͟no"\3Fۧ UrG Mj^6}rEZw4뛽LZD0Ϻ#(w 15…r6'T WVpX z >7=w%E*)(FU|M4{MM5/5K)4L kg!QgVI FP&!(BխucizO,WB`3 c"?Ccj48n'`uf(>j"kre'NmYr>"K]GHV7Uv AHY 24P6yvP%|U6Uk[ۭkWKS\6Ztq[^zo7v"?ɠ 770ۥ"$D)ngRU*f`o.t=Zk];Eo2&wJ_fVwHJ`7vuuoCmڭ;ƗFn-Z`>Ȱ vyH޳;m:5{xHo\n!գ 冴%b؏*`?_¾cd^%ݡ}?0mJ-c(*1g'℞QmFJeR{ |G"E#lSo ux|7:y1k#3Xd].BյX?\ܭٖ}"k2Ͱe=gCxl1x]$Qʈc(|2DZ͗|g.sb]]Klt1Dŝ"B3+g.5 ֮u}i_- Ē]*- .-`|c)+_jR˚ž'2Ǩi.!nUw+ʠ|C5u=.- UOK;9m1Iz/9gT;xVS9wth嶋cxQ֖s"CTʐm&!~&^?i]Cu5v&I._̒5U+9,7,-[r?h|w|>ϙo(NWw nSi.a2Hm;p)$z:}֥x^[xȎS34mr-$c/-j 5}sNfQ<=s4>" Fw\Bȡ ߰i\~ {34qC ZO半 I#4k^% O'[s[xbML'VMV3Ml I<]V=тl4h<}?.}muخ`m:r*|0wU+rIKmAm5גCI1"zO(j( ( ( ( ( ( ( ( ( ( ( ( (.E5]??oZB_ ^1u4+7!ciIlk{?^~JG?ٟY^Kxx-ɺ{ 0l *JǸ Ř.>=77{dnmvyzeɆ28>Lt#!d` Ieφ>6ͷ{ƼYvN20qAῇnAj$_4X8aG"Ȑ@"#OIU]:m.StMY]ȋ(E6#K2\w&[rq! @6u&kS]b/1xzϙ".y3I&Yd'"j뚎i:k9 k2[((eHe 0UYwhAeG āMױL&ATVL&dEUeTU 8>]mfitVuyc6d/}ҰHiP Om%[Tⴻԯ4/]y3;̪WȷREC.T}Û;sܛɓKu5DNϔmI=|CeZգ[[\E7g{uG)Hī{ |;h籱G񷉴Q[go,\f@ѲyH 8Ve  ={i~yQi6V6N {Rj?bx0&\6NԭOj~(TMThDbHcı̪MDqJ{Mo^ ֤k+sy$mn$X"|{T=_2lkVZ]~Y![;d` /c∵T59--/n5+=&F֗st1+>WySh6gچ{ǭxRM#ڙ'Lqn$X2S$A: |%vc weƈ#8|BEF8am&+˸?_{y/(>.0F89/Û(G_Ǩ} {sǰxnӋ%l+G&meTrf9ryi7=_/a:N6k.ܗhvg$A a Ѕn iVW6{{ۮ(6.[pUSj,6[x7N aԮMi-Q%n2t;D;_EaYgakbY]=! YT-YJaD`5m>OG& ka m41UD-[ڎ_Y=Η%0![D6JkL,rv!V4_{( hK #͑E1`s>+&ź.}EO`[yC7‚i}KZOf쬷ťisi5Grw2DJZL{<|%7R$|ao=pn!d仍  pǞ2<=h:𥮽jxI|@eː uohIZk>;H8QUIN؜*K!E,fAP xM]ҡ(Fx7bCm%O?4}ž33&i]thF.đS,O>vvZtYKQ]Bȋ7O"@XH7 B[C{kZy/즸!7FW6Gj:()x]:CkZƕ}[^+|G($ &.Q aʌ?nQƻPu׊?bo[i7ЩXlFr)<+N˻d xI47^Dtmg,~;ZJ U)ȕ&Wŭ~?xu mc]l{a,SyFY+D=3LIM*j8ЗGfu]W}l1dn\"vrA`fH1_?V.\kM,;Lqho -XH>h) z-t=&k;Eo[N%v0BW_fZtIA#Pˏ3;p 1tΑ9[O !+94k peW! $x]g,Qex-3NͽMc ?rp!3\,\(W kuM Eug ՌנxCغxO]DQReP SGR\TKxkI`6ruda<bM?-ZX;Y-躤j,{t-#0, @ <#T86~ M} GQboQ֢+;*&XN\bydV.xs$%tuc{Xk7oqpooxd#H gerZ7_i> Vֵ{T5eGİ걧#, Px0ͭ3r_*٧`KI#wS3q,ᾣwm-oS.ss ],HBFu+R`FlCզӴ]vJ"hLUA-[UK?):Qh-a a.ƻ,@!Zޯ3t7-^HguM>A1:%h:ޕ 0&c#iyP˵ČNry^*EvMZ;r-cA[;+TkVs%!G;`@7)/$n4[~)ӟXԵsihnXᐇ2\ s6@Sß%. vk*Y{{{{ ||@]v<;(/ß[~SFJueR{a1& 5swڄvἮq Z@ K~;{:m'Vt)<.se{ݫ1XWTޫ)+*|5:ڝݦ؛$ 25T#8.xY/⹂w'HgH8#Sx#n; x.Kj/lt˩cx,DmqeB<$!UB@ =C5]jIMzoG[x`0Z2+0Ӭlc@GRwܑt `Ad^ 5{ZK2X 9GGg~YfP#"UP|C%I솟ۤXpC TDeH!^\c׵`.`EckYg,T#d&~}RP֛X8u;E2Ȯmc~"_R~7垭izriyfPBj̥h`.JPHTtpP@#@P%^4"h dKֶ`h XN`rx/{:Nm.=J(~s3 ۨe. bʼn@|WUu4sSy/xA,#fD`RWr}D<]5| sZizŔ + $HًK6N@.:ߊ4&K{th$3l2Fx|01( >׫k7Msʷ7s6W?iݷ.!|F;JM|?o|Q.ڦy}+əeREʒ*)rsš'/t]~ FLR_]"tt0Ʈ|F̄jOi-ZU֭(;۬>NǒF%]LK)@=?M栲=ybS4%ZE³)_U+MOBI:tX%ڗQ߸4>vm}SSDl:D%C%7VePBnb#(<Sk~*#^^ FCkp"I`¦ jcZ&m_-WI##iEii{qY24_fFXq򼌃l(ڛ@1>4=km67)<@cq"ƑRA" K?/[׵oc-e 4DIy(*0V i6^]֯uw:VyAv6I)~E?5P=F(K۟Eh=@F[p^ -+ee֖_N97( k-0󐤓 I{ ͽWf`tYvEs9"D״;M[U/d$oZF@Vv l9 2f4 s=z/<,TV$!Fi+Ct XI4560<"@X8Q3P>l=7D[NMkw7XA`@&yi>wV]l.qսfF`dl~G]/@> H Zkа73ǢSɕA+y%mHl`Om-uA Umam)C"G4J>T?Pc8%BlF kVԵ<ekb" Ѷ>@G6T=UoZ!%{0dXT@ʠ"19%Seox Z}S<<,f#B~F܅i?/[׵oc-e 4DIy(*0V i6^]֯uw:VyAv6I)~E?5P=F(K۟Eh=@F[pڟï_^—K4ӣ= @[:[dĮYL7o!ZA 7_ tuޭܧQ4\Y]}fw^uvVING.eIIny\@__%f\2Gȓ Ip4 *m.:X%{iyr ث6$eK|Ŏ]ƛM`TldY|=+E9F@#H8݊\['_i1in/btnk[uw3,$Mid%: ( ( ( ( ( ( ( ( ( ( $ MWODe-A?W~/BgaM?J s?oE[n-Ow<״~g'_o`&3q0vgxKM6ܗri-k Vv!0_4Ȳgny2Ơ+9'}#x“X^>R^($ݲ'"I k~ 5 Ծ&A}BbXc(ذR}*ϛpe_[k?65~/FX=OSHQ-*][BXB-x0W~&Ec K 7QX `i Xhe~"|E˳51,om,*,%O0"0P6'ofiiw6rFfv*H"DwmGR}n,K֒lkIbI|9;POx/z~=Ŕz}s HZY%[ "׌ ŘX9 xKNn"k{RE0SvK!LaAaw>kiwvV[ҴE#["%-r_`A| ZL08W7r]̆U k߈xR^5ؼ $Ml H]BeTH麷4$ۭ Uѵ ڝZ(֪F'lN%L3 ( <_P #E)RX]svRC*yÏ*3Sf S]%{#Hj3G&5΋e}i7>&Y$MR;{edE2vbO kE=)t=*VgC !h;6"1*km7P6ևeBGqfv<1m' >W.z4sys}ܗiHS)v@M'i{;;-G:,Ertab ,$XOE-oueAӭeS\\L#GIY|ÔCK.ic5-zJ-q_CwFCm(X0FXM{qRAW[${𰭤Rgr#R9el'lo|3?m"KW\*>|f<3nRKL6PMokz p7=Km.pb_U;U]<^?^,ֵ;_6vSC=nRWrvCGg?zNBO H(6iM ڲǩI=ȄZl>l#ns"l)7OڧQmos3iOuzMU{_df@<S;s6GbUmw][EnUif3HJ7(Pc]x: ⟱7حTܬVM{#Zy9@|eݲc݅` _]w}I^:vMze%GWg*Jx+ֿ 冋6wҽM,T&$w}5ohKh:{徶MNŲA7.Iv9 Xj ů + S.5ZǝI87b,P@$C4P=Kd5Ν7Χr;![+H:$ő(eǙ󝀸m:MgHZ-l[wwsx58H2w<.gm RZ(ӼE\f&}SCa.+ :"_kiq!]KW͎.()UI@2cnjix.aYIZeo$_ݛX9 :HZ0B1 Y@&kK߇,Klt]Rxib@o FxaUq>1E7Q[,'.wG#Ǥ?$𔍢j6Tͫ,z܈Lo>2)fx~{֯=95ݼuوY&P vǥmmnv̰fc]ɖm -oW~:gȯ$3Ǻq&wrV TD,]ECs7gp$"l9tGE[gӥ! &d%]`c{}IH/D&-v;4.vBT6rTfT.wMž!׌Ǻgc 3 *+)Ai:W}ZE_mݻ>Ngqg+7~)Wzl0v$wX\sP*C7uKZt xBAu >R|e{e>vzlWADV06m9yi>cr;*9$%Ӡk!Qg$UA=N'5P@P@P@P@P@P@P@P@P@P@P@P@`Sc?覫"g𲖍 _SQSK?p҆9x7"-}k?3/޷}I]8G3= 597Oarf YcX[V8UܷǶ_QTbMҭ//Lc0R5gɀn|D>l,;I> ظXgfՒ:/x׋"|N2VR3<7Mҵ5SSu[G "vHDYdT׺U-榱_YkV27{>Nvci?/[׵oc-e 4DIy(*0V ono:.ZeiZ̗ l˶=rTa6 =4b{Zi"TWl$K x!omqjf;VIhEXkimȈ8X r1mYEm?x{M8i6-]BUQ14{efUe|axAJhTS@ eE*JH0e%p p!mixJ_֗Z:29JY;|b[fOҠ_jzF ӦK#n^9<D_]sQU 2[P-g$mfKu%`E  X>Zj .=^M,Hὸ))h*ï㌪]'˸^M5Ο*ί,p\vܺ,V6*6MDjVwEk<&gcJ*H|ʝϸ3Cssc4 u.u{2yI}tnh?<2 <lk]WZ{kk{Kf|Vn;Iu2oa/mR|63[66j7l務LH6O0Vui$ ̤Wt7Oo5= -&!`Oj_G O~pK@ iڕMOjR\H I b80YC 0"iOiԍ{ez.o$ \DQ$@Oo`p[ @'6w\^j\k=|_?cp9'sA?l|Q%ƥg}7ΙF%b}25jm {PotXXXjVRpܤb[S$A; 8 ċFUJb96A/}n^֬aL4x$v(TH0X3,< eywZ!Os1[%ڙ' sevh tk[BxO/n~q٢xvo5mqx7D𭕔sZZx:E}:ܠ-[,G3wBO C{m&Ƕ+E761^}'UIeےl |9l{2KLʲ#َYFrF+ m;Gt?.n+%\NȒ}9OvS gO'ڶjol5ᆆA-![.-\OMk)s}=E+"gtp%%V%J@گ6mFT;MZ(cB͔p$?6U Om&W̸Ֆ6_{oj/~rNW]ꚞꫬ}l,Y!e! T'dꚟ]w)E-ځKp720>V)t_7mugeb]LNF6lqp3.xzxi51ixf‘39z3Ҽa'RchQǦ%_r—~g:Zɨ,KFyPY?;~^/Ј]M+?oE[.-Ow![>IL#]=$+M.%ܷKZHq4L2,Yۥpto_{4!( O- 7l8Co>*_M}C./_PX4}h6,G(xʮ3YxĖ!ͭuqѣ.a{u""Kn mWV吖мoKo!::߉{5E$xFVn1G`x?k4k75MLK;;맴2c;0ʅ # S;H5#;|zAaml!0Ms܆ љ1]ExQԼ_k⛋'$"+h)Xmi20N"&ޟOqey\mIay9o|H5qf,0^ =y_Eӯ[?HiB@ ݒo5fPXm2]ϩxCinm&VHK\"gn_,RC펛ťXM/wHҫ\$[vBA6[wMGǚ/&YjZZO<-綎,2\q!@r.ZLJ7;m@׵_ö/I:wHb0rUzn 4}vBtmb?6i 5>`Ip$( 27O7kT3EHbGE%zx݀;ʠgGn!j:BIx^:ځƑɸ CƺƳ_xeωI<;}TYQbfu|)<gOJ]Jխ{"PHZ$Ͷtp$%7 [˥Ddk)470́ڋڔF{rB x_NIծuvO,ΖزZlgn֘,*+V1}{%Z_h.n@:o0 (-n7w@4izD#/$ڶ [b46$AP 7!;6Q·ܨyQ+&#Bʿ#y?I{7Qt2Mc^OhVŕ܁"54.| 0$D~2iV7QԤ!x[QT21-K f;@)|GMV< Ćh.b:DRΠ*i;(( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (9K ڲ\_6dOi;PBrVqjzKq|bHNh"A¬GLH='Wt鴻OUƕ6gaw",v|Kx$G`V(W|XlXVuiC}kMլ~:V Wx6 S1ٿ/r)k? tZxrVִ 94Y༳U(!5]fR4r0a%P[gi}{k K$s*L:8t`uuV Ƞ ïhwfmò[%k[a0M,'pF09<Ds]r?lw2v܇BbpN +꺊jvTXżX< ȳG"0 K)+K>ҢG j .>94JVL͉o}Ťbqf%q' 9o%~ ּS:Iƿeǒam+6 ߶^"ɦKquy4[5Q#Tmvg` kǫk6AsJ6K$7?iݷ( L:mDkE;]6ÍKq{ ;_5$REɅ7` q<9m'Emuk[ךSbT.$;4K@k:zlhv SvFV@Beb Pe` m݅Ʃ6zk2\BKh`ȱƨ@ENcRrK_6QGo& gF'Q;7m'a!f#Q~&Ӯl%|AaoiK_ K{nO$I,%i!\|;h ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,,( M]Fx7~fu/Fai^!Ki&*ؗUt΃u9_ YkX7M"_[/\iI:?Zԇ-7oδs<nƾSL~JG?ٟpWǶP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@?w?)H,&oswV7A ,'bҩW#8'kb ,k֕{MWluKU8?CB8$ 7 șy77"-}k?3y vvVĐ=Z6(Lz5 G85h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#t?Q%Ok#Tr?A ~>h9_Ϧ;5G#tdxVz5:Oץż`&,HNjI̙Js..Cyj SIC!ܤFFCOyL.Myl^ u}JziHTسdaO49u<nƾχSN~eك:K\^_q=F1+d:0<|O^T^~=E^?|uZ˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GV(2ߝs@?_uQՠ/ i(E]{}nah"C.>0E^?[}Z˯~vb>Qe׿;O1GVߵ֑;8ak[BŶ[P#^޵>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 135/Type/Page>> endobj 28 0 obj <>stream HnFs@E:^8`dQEwfI˒,%p~;_.yoޔ'}_?77p]V|,'_k ^.k$pňIqQ 1`eہ|X8R;W.Izv\ҝNFpYq]c$kY3vu&M@rctH>xĻ=W8 1b<hb%`eЏsD`)Lrb#1'#ejX;M˄W$%?lK@=.O/c,BK`ȗ;UKRh\8BPD#6 z(UޥjfwuIImHUm*8[NQ y$0<~ `(vDs} kEqR@a#_RtfZuC#a#~t,׿C#oeb?lc^J\(:{-Pڭw}8!8!6x8 #AcF_B8kG9? #jQȽj7<-a Yӹ8D3qyĿ q endstream endobj 29 0 obj <>]/Filter[/DCTDecode]/Height 834/Length 198944/Subtype/Image/Type/XObject/Width 1008>>stream JFIF``LEAD Technologies Inc. V1.01         }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzw!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzB ?QsK-u,P7%2G6 /m_V۲O9ԖA߱[˟~^ӓavTrԼiMJf4߶i bY3olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~fi bY3 4߱G,olأA76Q?a f@?(0}MMr_>٦&9g/lg~folأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|olأmg~f n@?(0t߱G$>ۦ&9'>A76Q?a bI376Q?aom?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أmi~f n@O(0t߱G$>ۦ&9'>A76Q?a bI3}MMrO|om?أ(Ӊi6F(0,8GUa*RrbGU\KCDM$ic7+ jjVttD,SBN_t-Z }n~ηNo_^_zd{Z=; R1ۺc8")q)K1I"N_Vfo:Zq?y)BІ}nk3k+Ϸ2kx_:9ӬC&@6 ېtt.2uO^}іv1m;)P1]ywBEjiIX#pF(,U1_RG9tAF<÷ {-3Z&ӱy?_Kԩq}?&;*u]G fZg^J}ݙqlsz}4VRKv6Ӓd^vISWmݷ2{t-./#]9bjN\O2qELEHT>UoFqrõ Zit꒫}= 78}1HҥI8y۷s3z_ d4v5U,>QַWA"v 4mGbLmx 9I;'9PE2\o|A25rɑ2(xI)9+?0"5}9Ǔ7Lg1U:EGE <'cn~\a}[_>GЧX^L!BMBGn k iFA:<‹WYh;=G_ue_|1>FsK}qlh3XN'dTڗ*(Aj3\6RLiV;H\+q}+gV\ͫHcͥM#UMU_% i2F-F:i*ފK;,B}gOפ>-h$E2|Ì,])U/eT2)3̺mٙfq b2x1wJ֦\]']M~ҵ_ou^ <>~zo߈ EK@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ڀ mo}@j6Pڀ mo}@j6Pڀ mo}@j6Pڀ mo}@j6Pڀ sËq/B9z2HĽpW IҒTwӢ;7cZ@pV[=RоImb)SM9Mhbs `sFiM8bF0j{Ϸb+C I.?<q;]SKGǚN1xsxnKiŤҝ@ia9lwI83OS#?c5EW6lCTiS9o,`W*ZtT7f'׭U: Τ$F)- d=~mKsqWZzsKE{0$MmΗ{|@da-p $Ӓ)U!;^}o\jAſrfuY3ZD\9|G9PGO2iUSlnguh5.qkfg#QxFlw*QtrگKd+"mKRdΦ=:<^WYva tI8Rv2,{lQq0x3ITR|NN_dRo5éC d98uf'VIN+^4;41I]TCL;Vq$o801T8= &K"/L2:ᐏ3 1qUCRyۭxU/?(.wioٍG,>=2y*VOJԥ%5^77fWFT㣼ƻtP?t \1QZ}6u}[Dg3sdkHQ/8D BK9{KtijYŞwg8Һqܕ&:"n.^\kP$o,$..39g5eRU[}-ԩ {eݦ5Ϙ|B0h7olpMaԃou+A4xU/?(.wioٍG|=H{.e_TgU&N"5(ۖB)d{ =HѧNW]j9+sZ-C]$LTI<#Un`-+]NRokZ~ 죓2)=e(J6UN -ыOj2{QOj9>G0s=p'd9s8}ڎ`{QOj9>G0s=p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0s(p%d9s8}`QJ9>G0sCEd?Q>p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(p!"`(rhFd}.#ЬreӟτVKvLe"3~qu=kͥ(F [+u^fxWBIi[fWGZQ͸i%Rl'B5הTT6 2˶oLkڃ7uBQ\y6+QB"֜tWq-?Ms$q6u#V*U#M8i˺rwAt\i]*oh_iw)m W! $$!U,mҶWKRm,I7]w(SVb_ #~5PaWKGp^O:@έ|Q4_csû89Jԡ:喐_yc|`ռ+M2Ķ17WԴ>Dѿq꼒I'甬;pTnGgL:rwOck|$hm߉3:M+uy/f=z?[|Eq2.c!g+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o./Cg+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫV\GAW"и?2.>o?[|Epd]}^ߐ¶B??0?? mtl`{~A /  ??_Ag+o. c ϫ?#]<=y| VsUZ;G{;?E gQg@z;Tڋ5">xml<#w 6wHKdprOtUUddV5/'v7? ?[ 0~ѿR*KjE}K|2V? @,?(Z3^s䯙e՝マ1&Sѭ+¡^0>Ey&w1{m4u3K"e~G)Þ&Έ_zZ @X@ 8q8jtk*o_#Ѿ#ZRXFUxt+nኀ ;g5Z1a K9u/& z֞RHIJXUl xsœ%wȑ^]Misl]CxfTu *pppN7O|Yo^ѡҼ;Zg%< ڕ9V)sGZo+/igd-}ZmAxivDsTlѣGvim/W]'Lӡr#i"CFp(feMzW@i|^.OOw+M: jWۍ͹.R{Ju?˛;O`x4*V#n 20M/g:-&vT,\1 @h*ŗ;èi~l0aЌATA"4<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<ͳ#+_aOw8[?*mN\o~`5?|GhzĚl3 `b~PNy?m^k2 >%Ƹ-$`9]sS+zKqmVSʩs`c@%~ex kƫk)u2H֍ n=Gޠ9?g_ iu Ia]?:uIn>ȡo ;|1Qo-u GĖ6VݕT6p[(|_ (=@C94mVnMB W!ܠ t$v|5h m|S]yn9hDq\Hy.a`W_ ^ MC4)X+s \' veeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeex7ۼ;Ew8On+x;+][yc(wF JI$qgOh={H<:.yq3d>V 3!u{[[%Y;ki&bT1)!o[ώ7@_)tAfoCȑ+MF, r{-IcqoŽ,Rt=.啔E?z|u?ZM/tTZm̦ T!lbHH(o>: nYƲ[$Ji` 22HoX[qom$Kee# #@޷k7_nֿSu]9U5s)t"[)p31 _)to[ώ7@$j>lmk*̀ '2Ė7[j*I#YYH PZMz|ubNi|MEa]>ȥBl$|€o>: n k%"D6qf $@^egͮw5èM%̪Ccr!)ހo>: no>: no>: no>: no>: no>: n k%"D6qf $@^eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeexWۼ;Eu8On+xI/-h_θWS^S֎+C<w?yGq6~ϟ?nN폓;>3ӮmAE/xMWOcfDa%a RxR3v2^V {]֭MѴ#ݞhqFq*qѕᕀPwgڏ..-UxM;Ԍ2 \kǕ\ș:E-AFu1{Zޙ OqkIT2p61)'8] Z3)ʣ6Ϗ4Iu {g CCI" 0|VaB:?ӫ#bZ?|C25ޥ6[ҜeQ+s-^׭w<:|CG7e+6tlSL|?Z>iYOw6,.SRA}A6p,ө惺5ʒ^9ODހ4 ( ( 7yFJb ~eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeC}{Ajv>)KO_GC- k(=Zg|q(/﬒Mdː6pFzS^ku+]Ժkc+2222222y(((?mfχth} U?o2o#AeEh_θWS^S֎+C<w?yGq6~ϟ?nN폓;jۼgo\j{:k.H򝦹[o!@bu[rIVP[k ]teMy%ZV^ۍOl+ _ZMYzZֽީku_o|5B<={9 EXl\6 "?Z20In޿s}Mo?/N>~'Wo=ص+iG &s2&NdnVEJ+&>Oh/Zw.l5|EV-[ G;xݞk/owmnۙ}eA?6I eqˍȲM q@jp}m:\w/R|t_ ..4{e 糚L/O_:!,TxxNWYO^1R'5(u)Ԏ3W2;3HW)c,f¤TedzJIN[6#:'`>#D+J2m+a~O>O{+ޏc_}8HAax{\5n[,Re@ X3)lB''¼QjX$!)ӲJѭvk_<+k:-ɸԭDr2J"0R9UX3hV7tP|(沿=6Յӄ122A=*NEG{:jUjvW_5y_x Y$wqLZ[K d+NIP|Ee>i5d~Vv=L&EO>ɖVԓM+Ԓ^jgY xHdZ;[@ۄB>Il#E?o{13Z0F ]}_oVV'1៴?Q}cGZHTkM Jj@`V"l QFre.SlU.J<)ig^g<~58{8ZrUw{QԴcDfKݺj*: [yߺq+!c9̨gJqs^bȹ'4;+_1|/JU= ͫVk/}VF*˪mݼ^h 7joykq`I>i$+%oMj79nk6ilEJ^ƌiWWyGS5Q~ =i:;}kpIaAF(/oRx+M'Vz5u/ltH0ܢU"d"H+$P /s/ <٨U<[IS)ĭRh6wFYYAk0O¹cgDmJ?9/Gϛ>_kyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyG6iEX7*{nguᠤŊGQ1).t.Sunm|-ŞlԵKrIѷ:sg5gUֺࡗS<;$/n7FOzUei{}{xh6? # BoYukd$#y`+'=N=2?eowB(B뛩mCQ__zۑ،!'4ms?n x_ƅEϋ.<;tNI^f[OR%z(?4Z_?rPo].vLB?.4 piÕ9OS6j)/i<3lk.<e^PJJB 1xwNiשOw'~dtFK{.'?DŽnW:u:?GyG\͟8S;c$[gp{i6ڠ_xjV7S\ș#h!Xı܌u!UY.iia]B< k4E`rIOV? ];E[ խyf۹؝Ǡ2ƕi6:-Sc\ʒ20Fx J2qjK8fg1i,[t.i *s#1#ZTohc 66_JIM9%Mv9.c!m!@!\**~ɽ *hSSE^\Y/ _Z>g%|3ޤnۑgE]9MKj~Ҝ4xkqlz`5DT:NĨ-?c'z{^]-k]#o{Y^ݽ?=GkÆGGm.6y\Ц8'k̫?i7>FkK5"f`o+᷁~ Gn3͎1}Oy#=O^>3| E7T͢K5/%J36QrpFTnrrE(5HwE^@>&texd$n>h8u!r}^Y=[4"(%%O֨<oj^k: WOS$[AS吡|.w ;pYJxzj.[IbiiNVIm/&o]F_3ހ󑫟EcYxEg XiSa|o0.99@|e Cg 6}<6(6V:I#&9o.Yn伴ӦMKtKx] Y FhbQ8d2 Sx'xGBmBh&[iJA _hmƎCN"cbdm\ qsP[) $zZnxreWk}64{F㎦&< o#\64XD- 4̥pd \}h_O[[X(`$H :PE|m᫏GBGK>Ko+f.?"rGA@)oJ(kHWק(žI֑%pnm^3Ć2Hù*qʏJia/)*yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyH𽏋4]RA818GiJ+*ԕX𕮷MN;w1ֺfWW+y*F=;@ԮtԛTwȊc&v I'ljV9/|Qr]\idqs>zCX]Z$%]xLk1e-G!~5ugN 0kwsů 1~*ޏ5ڎ%3~g;kN7{{n[z6ǃWo }?6 aTqñ\ŵJPw'OقKU;y8_r&1ӊfR59vL E~ j,<'9:[,w6ZΆ64ԣ(6T7fi(<#i>*'w[(P.9\rRyKZVl;AW{f=Fq@ PBl#=j8ZP[N?IG_-X同M5}:w*vd:-'_k][jz-}% nGc lp'+τ #ZuH5B2[ν}#~0>bjqB#m [}l0򼬌m͟XnӵN% h}/ U?oGyV6k-8|3 **|j.W=|RpvJs,۳y1ž'gW੻fvLv7ahw#ӿGG`|/w(|@ioqź,L$EEd`r!x '=;.ǮG`/'_ 熝8=pӿGG`=2fu詵Y n2v>a>g'_ 熝8=pӿGG`>K{-)b`$z*+#A a>܌xp4=t8=q:_<4Q'=;'_ 熝8=q3gEM̀Hqy{ m?:_<4Q'=;'_ 熝8=q>[Gqn1KI#QY^4{ mc? A'=; ?"a>?:_<4Q'=;o40$ F(ٝc:*mVl@یϰO{hw ?"a>?:_<4Q'=;;uX:IBAO{hw& #'=;bI$qlԑW8Uj=qa|;za>?a|;za>?a|;za>?a|;za>?a|;za>?a|;za>?a|;za>?a|;za>?a|;za>ܻ _>W}:◲?i\ 5_ CwAMW/}CCt)$0Ȓ%`J#}C',^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hwY=}C?g/sG`<A{z=p #'=;,^a>?fx?{ m 3GO{hw<ԬindHr^v8L:XʢN\Lqkwv1_RWe&)-! oV^1R-40~/ֿ]ZܺGzQyC7?;/Fc_7$ao?fe{"ɿ  3xj=?{ywA5ȿoH=m c_7$]Ao~v_G/o. yC7?;/FMwm#Qa&˻?60EAo?fe{"ɿ +k3躎.uB{{kXXLʈ" fp$Ax:rV]/woʧ]%˳6ìSkNgj6/no6ic&C~?˷bj8k_Q̻~a&C~?˷bj8k_Q̻~a&C~?˷bj8k_Q̻~a&C~?˷bj8k_Q̻~a&C~?˷[USaxP;pL[ 9#-Ya;[fXP@P@P@POo[0&{ 59 i|$L PAR B$|?7-?˫YUˢyo?fea&oo. yC7?;/FMwm#Qa&˻?60EAo?fe{"ɿ  3xj=?{ywA5ȿoH=m c_7$]Ao~v_G/o. yC7?;/FMwm#Qa&˻?60EACqxO.mndH#pC,@\9i>Rܹ_䍏f$6Qb2DI98Pv ؚs.ߘr߫O1G2+ؚs.ߘr߫O1G2+ؚs.ߘr߫O1G2+ؚs.ߘr߫O1G2+R-cTbFg.|v7 ߱^icuu.cju@)ea`rXu87E%R7wmއYXj.kO1 bXՄ.6I^cR|ϲ_#;4?73[lm|nxnh!URTT?CT~W9[4tK[/Xwxi>mB_,$K ~3KWbދComG!/x#~U}IZn?kU OE"?Fv➙3'+/zB=KԧbO2q%dM%@fhw:;Dzjge[b[Xմ}_) d9 u|`ÿ~!7-ߍq}ukgc Ky-6q6[9`d#hxoA<߂4 i%3C,f_g1Y@=PeZ<[{ij~k6MnHD3.ZByc>5ty̶` ,'~@BA=k/.^{džV-&NbI&<ҫ4!af=ǿ6?U\7"gPPP@P@P@POo[0&{G~_uz:kQk:%|_-rD<]6b}#@>rB*ŹYNIFO3Y-9?@۝JU%۠˹oPh8ղtV-]TĘ/"e֝du Fev0۵)V^i7}B[{^/J{Z*,VM= -yb1?tQ OW*RUqqFK|E\k^[Z|Bo4rƯwnų$̠1AMZӸ>TǷKzůsRZ6$'<1Vi%f@wpLZ5J;=տjO~.>x]ork༊;k[f! FyN\ Rn{8ɸk2koZϞKuS[,̑9H;bQ rԕ57Qq[3յ o1|GHgV5bEH-) ɖ`md8brj-+G|AmG.?u. Ӣ\FoGL_0rxJI P[]1O:M\[wK0'V&6oʹ 'ݽ^}ze{2#JEnmew~'&tҸk=A\imi}fJypñ5_^"T^Kռ=M,h:vZ\[";~ESݣGŊzK|1JK+kmh%,!aʹF+AVS@QMkSe"'ո'ڴ-[nbMĿ^4/\gu5g GN -|1Po4M^jZhֿc{Cʒ"ۃMnc]I  Oٟ)xSn{`yI9\$_* o|Gy:E]??U-D9?O]`B/RS] 6hZA eH F ?ls5=/@XN3BJHٙa)žH[τ~ ]?u[Q>aٮo.*B$Pfuh8j6dڕ:ܭVA)\Hh#įTMGMy;_[ 紶Ėg)%ϗn2b @sFJwL6<γ Or~%xKĭ}h%c,D38 Y@;ϼ5Q /u}_֭5I hF"҇e `r_ _W^3/}t[.%Ή2^%+6@7Q6r-⯏ux[@i|E>)~(**t~#=7IṼAyCsK{Mmu rMxWՆ@jo.5Ko?M!4%f3Q9`O<%P?x|#xD/4xn`b;ya{!K&x:"!_jXX|$Wfh8!)8sm[,9<"&՛-fiiFkA.%4$T2I?Rif}%o<-ť]8m=,bX%q хOʼ#RVr_F|7 7$i_?$i?cwz}o n]2MSjSfs) $\aؕSJ9#kX95jQL\EixKKi'dSo2V5-̣8(8].tGe@WI_Λ߆Zv "Y'mZLFI  ߹6Nrw({hÿ =WRiWSA\&Y/T\TuGGXt߆,7NM6“moJ'@Uv*0 qG'Q0?OgMg :vϲjW[}]<˵a0I#>>ȿ\xgDg/;F˨p,a2$dI_=|E{|w_x.}~#/.Z`Q%0UÿoSG'Q05_2˝7RijH`C\20ҐH.~bZ>>ȿ> F?$d_ \ӣd@|)@*G'Q04+ l𾣧h=9u.l#sX >>Ojj:tvXkwm9/^9F\)Ǿ*{ ?)U]~F$v_O'Q1h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?)H[}xļK]W nیqtS[9%gGJt,sRbX$UdU'q8V?.8*olo o~G$>ҵon~i^nۼg8DnRqم߆|7uoiχ{[X䴍'O-@Gʬ)QG9#9D|#cud|-!ŲtcrGk]n|3ọM+iR<]5̖,@,Fw $+uPN1G$o{ .o+??rǰs>V/[SRohN/smgco{[\ÏmV_D9m/e +`p(HT)Z.Gs+khd !ee<A Z5} C> n2MTvZd-#J "HF9'֧)Z{4 oLu7UyϽ9sNO$ftɵf n2MTvZd-#J "HF9'֎Hk3PL^6{-Bkt[PDjd#u5E5{]sZw}ׯ=2zׇ5MF|y' 7+BAOgong+?fMGːbku:>>Ȕi[ K|sk-`DʋaDcvNsG'Q0}_%\?'E{}R}m?7ž{NHC+Ajg R aG'Q0Rķ":b)5tۅi;|?=TuGGg^h? n-.Oc%w? &2zI_=|Fۼ=}ۿ?ݻٻy({hAť43Zv(,v$w&Oa?#n]OLV[I`FD !}s{'k]\1$`Nh ?>s ԭi}W_>W{gفvq}R}m?RAkkl cGfU_9s`8ހ#y@"Oa?%Luy.w3&2O*G'Q0][*V}RW_Iq I{B @HVꠜbOa?&;SĖ c/ j%X5 ]N+@8b3}h ?>s —_xNʹWN1BaɌIC({hvg-5q<:=܂Y):nmc'$}R}m?on9j}nvwn;nnqh ?>s"$v_TuGGggUNӤ]f{Md^ XYbX7OX%'} `<5u:+@` Ϲ ??m?NLdž;qG''kx,f ~w>Oa?.iK /|'}kukf|3᫤xaVF zQI_=|D6 7!^~ݻv;~;;I_=|D:~ ,l|C>+YD9}R}m?kE7.sksE4h 2AZ>>XXAcc]B!\̪ q({hgs ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?#w?G{ƨ ?>s ({h;/xwjOa?H>>?6SY"Ț6VWX`F_Q±pX6%י=ы^uXzK8{?t˹u_\Mc lVLW bpwM2Ĕ05W{t2k;_/tPif;xnZF' Z?Tҭ=3:I=ճYѰ !!# [}Zy>:-cէ#HQm`s>+^m?[}ZxɪͦGYymU̱7errOc>0 {}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah+^m?[}Z l׿O1GV¿_5Qՠ{}nah:`Ρ}Ņn[uyqi_{Vkr2F0Z[5X?V5/]dS-usت:('ҫ&≧B2lJou}neZ4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@?k4}nah"Sӭf>JouՠMCN|Z>0)iֿ_3GV%7 :khDZ-[}Z4_ůs@xzXQ-ܖvI㍏s|uTHQe׿;O1KsՠRt]/f%$W>FwFj''gjDF*?gI&_:WۿO3}! ݿZοI~G2q}Z WԬ~oc4Ks2Ο`]aSkHf[KZn">:o4(uf317?poI8-יRk&o~W=xBK{k;^G!ycH]P1@y?ß|Cx-PZ,qoxXgX%>I&wUG4qHǍ/ugouYƍFևtzc'>J[?h!x%[oQ}wGn'lAGːnbAύ5m8|X~7{s2ȥ̖ռɨyO+&.[HK 5QF0vK3: P@P@P@P@P@P@P@qk]/vg>#&Z`*~YES_׿S-s?(|߬MB ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (2|c ? iW \7"g_7P-_f4"DӘgݤiӁpK3AGn-57~ ('';71g$(ڇ~hʷvg~?I4OÆWN* >gCםe]5gᶸb4P Y/| &{0QdҬRy#Iw$ #Mrɤwejv\jZڮ%|$@d@XU 0u*;$*cJ.svH|!ؔ\RE=fHr霏Lkϡa'?e9|ϗ:1-fK_iN" mF |I~R& sʌz4Byu h;"*Ɖ/Zޛ}Kac2%bɵS0H΂ (>wCN.尷pθaN~iɛrW||Y_iQ~..X(.[y,4+uŸJ/F4U^[ē[H$hWF AhP@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇aFnB\d@}g;)r-E3[ic^xFN/Y[Fm69O$iߡ?xioY=l e@ \JZ"t*M;7$:d6k}íowwdH07)`sgk_tfAkej]KcAi$viȊc1kȕ@x*&O_̈́W_'c [Md!1Goa>5u+ei=ѭ˻*p#|)xqR@OCh%u;=b7">gK -㐴PY@G|-74]5{/ WE\ksCq\VvRsho>7о+|6 yƓ oR[s,RC8#|*]h慯kͮP {}4qnĨ#;ȉ\%P/|E%xrE׉ &٭eqRAO3vٵ.xN_W~FsfRcwԐXO(~ xŚ]?ٴ-ΟK]A$B\,$1'yeJn7E"yg}oQTr/_3@?*E }as}GQȿ~?ϳ?>79/f}G"es>0L_̿gi?UA?3>29gx̲EfUJ`@Щ_ ۯȚaoQW$_sS;)rEk}c=k>&5 oFtR؏2}_$ ')$cN |ux>k!wnֹe)Qf]y w?/(g|h?&χb.ݴr=9hL (""F<%f㡣ZB`[þc-m/&YI%ؔ$R,q c2nGƝW|iZu+~[~)%6H@9ğil3~7ӑ2Ȏgi?UA?3>29g}oQTr/_3@?*E }as}GQȿ~?ϳ?}pyOFY_Ob*e[2tM–0A =O틟[$|"׵~3o#Xĺxn-hLG%@(Q0rJ,> j/Ǻ^חk_ mqwjm U}qvm(g'tlڡX@=Ŀ O]mST]7SQR-Ǚ( lj_c&Jp0ᇏEu]CDỼZO6 >vU Tjnχg-gŖw-{0V < SG{f}Zr/_?3>29gk6g@9B} )C]1Wv]0m4*:hPv<{ڤt',[j!E?Le~Ю!W`ƻS#8z_o5u{om%q4[!bciQ)S:(;>, |ukzTz-d7?R,`q;C? /Ɵ|ijv'{ p3jVtϪ]2ZI (%H¯B~\}~"3~M1ܿ*[G|_Vm}WSimlyBdY3 /x^T7^;WLNE"9g}oQTr/_3"e, z)8Y]0SX[&d`WpXR=EaVvHUıi~ W??օ^%o sID, M[|W9.?$ۿwKcyR $?4V*3K[m{Wo$|Su#vvz͍N,4X^Qqq,.x1865}CW4Hȿ~?ϳ?%ypOf=sḚ ( ($x5/lJ@`FG"P%%ug3 Di1&ӖL?.U(r%̚a*G_#b9?dE9֓4RwRwўoL$?YҪ5_w&|>F-u_Ň#lG2iZƷ6iZ u bvYsrR ugR2.Xci 6ʭaK,~FRV YOOϷ4UENznU0F\Q=' /'FV6'$@M|s|,U+Ro揖Fcf@_)2ϖe],E.9^a@q|>ӣ6m#NoPtHaxZW oBHIܑo]`#2{Ǵq4ˠ*^x ]ˤGmRחA*_n` PlZ_ _/t˽eu{m26ĐHAm6[՚Pc??5|Vk+}?>}[<ߟ6~ˠ W÷xO^icXαnꈱYI5vykxO@v#bOW'<+?yXfmnP@P@P@P@P@P@qk]/vg>#&Z`*~YES_׿S-s?(|_1jiU6̣_B|Wx<=gyG$A P;b,~59J峼ܺ}N p0?fi7:{p?feNӲa܃Y'qq@?9py {dWK'uvE\d4W_>fwj*\|o7Cy:u>ηq9 PKog7s4;/#lqq<{Y4?m+T?.F{S5<393;70(cY𾅪F-x{ϸ]|9Ivs$:o?|BmNteTb7VL(xhOixsɆM"m퓶l,=]8 'ûV Cq+b#nʬ$CdPǂ M\hs-֫"Kyywu5E噙U NNP@P@V_1kJ{EMk W=WE{6̣ ^3߆Kc.go{C 23|u0394{W- 2Fv6G' |c.6Kx-䷌BBFʡrJga*@ {'uium/ڧ`&i.Z%Hc[I+\Vk߷+$5;Č1wtH.|ıwTP@PkEi=!Xv-(XCw#j=;HԣcX6y=$J0mH*y9fYs!}Gt,{d$189ظ !eo~VKU$>9Y\ 6Z4- Ycss#tѵǜdf31Gqq@7kxsvziR B{KT;WfFW z^516~wI0Լ;GPJ@$wߋ_ Bw1Cis4% B$BE\'ïx:h:d 8{ + m30Nv.# 17_BߢB/ \coC|o~3|2k\Z[kW=0fweHp@1fXx[|9>\XcFH,|/w1x$t$PگÏjsx]CAa1jYȅvl!QѓihïhtɛP`kn$@^Y]#V%Wq S|;կe;YmuFhE\W" 7tgGfi"x"f(IȊ;FA&>xGJ.-^P}R-3;²$ c |//5}cG?h3Iۥ<.87Z ^'J|~?z?%O/ƽs:/xR/Ǖۍ;ZG#ܰʪve*W g͛>mOwݟ; -Ct&!ԮtѦfgIlM;,Nr=3(@MYH)n.Y6F1Ʋ"!Nѐ@ WH??_lo|sfT75cdٯ'h-c"-A18$ |2/Zy_mӵ?yi= j8}M _$_Wf/6lGٷ>n9߳v~l:(}Yc޴QzYP@P@sJҨ/2|W:[c`GGq]rWhOў_L$?YҪ5_wO3}! ݿZοI~G21RE h_4(4m6ۼŏ,I<=i֭:sa(.X_uWB#+2ˋ 46b6 KoM$Vq-Bw}p>w*x_:Z=.pYF @pA,H;f>eϛ(*r}mߖƖ~Woz ƞo!|S^\c67 9O`E#&Z`*~YES_׿S-s?(|_1jiU6̳YP@P@P@P@P][RӴulf$cR'$s*i7Ks? Ѣl_UWasǸa/4_ ˰sǹzhn4n-IaH]$+)u :)_' {}ߘW=WE{6̳YP@P@PkEi=!Xv-(XCw"fXP@P@Ph/?qhB^z_ ~,eP@P@VB?V~!k/24|~5BfXP@P@PkEi %f,( ( ,ȔeQWn_e/%?t.5 {#]?U<IγU<7j* >gCםea|,c襯3هꂂ<7>]|d_2^򿰵<>@ q5`kS~%okǝ'Vw==EfS=ի:[?ʼFmJ]_,v "gwĤR2;_Zv}/m Lܴ$rխOt c-]vx(N4#&(hkvAT}c5Ǘ'>ɟ'ۻws/Dmnگ<:|N}"6Ю.ԥu)H6`o7YSۀ:_a]oz>$4Y${}MGaC)r&c,ɠC6B=>p޷C3iBe&@V&>kR.AX'4~#? FǷ[o$Vݴ;Lp0T@@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'Sok2ǢYyS[5KHdd 0 EmIY@̥t%`Ǖvnv-5M>&s%V]#r,:=@= ( ( (Ɨ6WsҸr-wcjo8[*汲]_/]z8˫eO}~tu.<[x&Դ{NK)ssC|R~_Cf>Ŭ['Q)/5F΁dWFً.$އ)ĿYxN}G^"*-oI(//o~Z[c" fE",` MWOnt >k3Mhf]<I1> Yy?Rgk.l.g̎IlRXfGd9P$"_}^a҉OՄ7~9Ox_Ѿ'/Z,Hpagypw…u ,W]$h᫛ mk/.J%C'N[o|_Ş'Ӿ3iZ̳m7m3G4O'x"`P@Z/ \coZ?zЅE_އ/WߢNSv}qkִTk{K/'Xᶊ-V4.r"̳w^u_ iΛ͵Ӥ$X}* q |F֬<1-ދ:G5ީ++;cWX†.X%'? @׭O1=Y-.hIxFYFÿ𽆫ٺ]2W7?lYnIهw"K}  =f (+K!x?댟+E?U5@B?PPoQ4_ko4 -")/uM.mB46i1SD̳c/_/{IW+=Rxϓoeoqn"pUVIOcY@:ߋ!.2--=ʓrMR]Lv"lyMR6mxjŖv3\imcv2#㝙RA-<\~i,oT]k7Vﴟ7ay cqڴiD&ԞЬ `@2 o@t]?LP:UO$i.AV<dbkM"`Z*@>jvNeN hMnkxmzo50f`+biQ$cWJ$O|? 1ӱym{)A 8 ++dectkBJnJ*Nh;> h2g4-Fnm8G"V,\9y 48#=ɼ'+ݳlؠ l彤/,p,L:Tu,H P}NM[B8IIc?:`$PU^[ē[H$hWF AhWouM*S/-lobIE4l+ R 4e % B{+Rz$NHξ+;>[h2ig5K-Fm w%V*P9#x $g|=zf]J4[LX#earr(|w^жy[5mg>6_)/F4xƑ^[5Q fC%$FkEua~/9_5QV:φ*ҙkFiCF]ыSO~e̳t%x|QVZ~Iy% $>fJbV\ o,Oy县Nlk?PGbCaK8]H^=icM(0O-~&'ͱw`hx @ 6e>Mw~s= cx #Ě Gg}^כ1s6u{P| ~%]xQ_Hnt'F w!`yxq8'uMhωa;ic.&rSN2PP@P@P@r_g]%n# G[$WV{{ >xĚupA{*]q@lk1ůfhs*jR_MRknYS&o5[io%<$R4Uss:KO-@(i_ /tMt?Y+[od]TKY>Yp k|˭ea=3Yom ;\K6Gŷf-{6;_5asH.83w o!FlAvԼ7G؄󭥹IaHfK IԎeM;6Zuۮz2u#wluoNm :/mR r2f"<ҥRV[~z߽}% pMFo7n>[j:czJi_gК}Ni&y)aeiy1"\N#㶅 ztoVׂ-z+-5Yj| 5]?Xh [м.m,ƹ=ĒGw$kr'oj[hơu#> һ^Ͷ12a,wOOߋjםwsi؅eе!n獒K C)"h^* Xjɠ{ݝ0|4VReo.CW>$ăx|B Jq,Kb\}$S*\,wt(Ԭ4_]p^yoc,L~rʷq$- B57V.xsľt&զ7 lbB!cY|WAo!þ"K3U4*+eQi"uRbwc1Ԁ@<㥯ċ+/#}WK>`:LoV͹BTίB7ck m+7ƳEe> ]n;2/8Ua(a9?嗑@GLj<&wL}Z:B9ykoj6'ڞw4>UMG¿/ xPXv]唷ZjZL$ ݻ((Le5h;VmWVmxx{Ek>kSi#VKe'1džc@+Ũhuh :EnEH\PF-q(1m JH!^/jG-u8/< I[Km1./.o6X'ĮlԾi;ozTڐ{?YU7$wsA>Yܒ|:ሣ$lN:ٜ?!VkL}E[>ȪJe|GگzvF-M=O*5׵m/Ce5JMmQ$3܊̳"mgIkـs Hd?*:S܉_E\Wo3ztZ%]-'KeS#9府V!8&yz,X5\L校k/koGT^*,Z!C1F8xɭ6&yrw~ǪhbҧC~e̳')Nj5/ xIl:]w1PqzﬤcmIY8ܸGerOc O5ORt/:/[Y^G4reUI1Q*} _o v Y i :#vD$2y=P@Z>?iZOh~nD?y]J'}?Vc@7]2}py&TlX#earrVe[|9ϬWtmuA [*w 2y$C]O YY~hڎϲjWQ[\oR(,0N@$q@ɩ^jEmqK#0Vܠ9oP@P@O敢HK!x?댟(__?z?гYA_YjzeAyeyoso 9` ᔂ# dh^7^h/uNJP[k}!H (g ~"nN{_YjzeAyeyoso 9` ᔂ# O@P@6ꈖḛ ( ("SE]񗤿s⿄_ȻG-?v;½WsG~gI&_:Wۿ|0Wxob^uXzK9}I?mf 7 ()xoEA_O^1w/Ԣ8|*6{jllTZi7t3b5{[Kv<#| }r S|1k{XѮntx.85MPd''5ljkEtӽS;IJ2jAg 7ϷSŅُPyca UkQ)r*Ɖ/Zޛ}Kac2%bɵS0H2: ]U4OxR3] 6#+MB@<A@P@ϋ>x;U< q_  ^%ҼdP0 RWbtuP@Wկt*S-ly.d j 3P$j:VswV6Q<W25ݎO @/lm--濔ki@~lǠ4u ꯦ\G9V5d&T&7E免ͥݝXJgX4hˡ?uHaК@SJ{ؒ{{iM!# X+7:m闖7$V "6цC)G,nn/-QqHDlvPicwH/- 3A!@m#`"ٜ/g? i{gOO^Lψ#4#[UUũET3ʿo5/ۧYqHK zsso-ncDIn`I#>#zjiv.<1Ѻ#2y0E 7˾6ܭ `w_ZgA{_\[ }+PMϑqL\7"\_3qUcchh_NhKg!lC2AVBnI:m021y}2z]mii+f%b|u_PP@P@P3&mSIZRl/X~qVJw׎q5uOfOk5_VM+ Yn|a >d0U Y *0khүZm*]5]/}w["çqv^|kF|1'/r T rX'9~_/8s 6ԵOKDL=^_:_?ɜ_#kUUũET2SY~ֲO5ןӽ(O:֛qki2-77"dMoLE@ ѴӭtVvy'PY' ¢"( ᦽG|%m h7SHn|%nTȠCog2/r%ah\tMlೲb8u{8U@@P@V?ZV>"_}^a҉OՄ7~< >'xzGq2Wyz,Xa_9׏82ηm_h0x5mjSǣ]Rˉ\Br焔0G`o$'(!NhL'dKtkK$Tp2]Whg5xg )Ⱦ(bY֋;\:( (_޴ ~/?q^E#uOZoSz=4YYc}r.2fY5MS|/a,m{ 1O%-8S F>濳<7E/x[nHr}"y$I"w,F]"Q|ExkO xcWԯMBړ+dAbg/<#B@=>x.2K.c5sk\beX^AWh (Ҵ__^ /q ~GgkFn]֮-&IfU5WNdRL`8O][O+Co>C[oӵц@eWǏq xB!.Ru|&{``:h_:dz'ԵnA6phchKDd=~r$d< HP^N""00vvP@Z>oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz +ZƷUҴ1Ms˞۔Ͻta*Bh΢FU)A;y>;Bֿү%Ѷ&l}xrp=y+bT?9(ѩkۓ~4_ʍ!J= q߈ ѯFn_R>g_>I<3n$'jӴ31k?D|{0x+xf)S~GI3ak^qK:Ԯ-5kt*{}SICj]ፉxHrs,|sč?Zn?EeoDEfy< p[{hK0XIV+^qK:Ԯ-5kt*{}SICj]ፉxHr˥xD4;R_oY{"O4m3ޛ` k-.V5@{ Uؿ?f_뿱|@`Q3ot^/w)v7p&jEo,@&M;k BUf"l;m;Ud L?`)*V_&CzOG? T_m?ؿ>?tecϠ+?_&0񅗈<)XFi)OU!a١40ĸPC^Ǥ|L_mCIǵiv}$_io_客k0ɹ /:Mu|H'&XX5!$L 끀DRexNlu i+ߏ ik[{Lmby-UϻWG4; ^ 4^w׷ixJ{yf$sL3˓G gu^O%hڵPܦ庑$IIf2D WL?>{E7[}7m|lex ⵅ-W3i#е"XًĚQs-auܨs}@ Γcn//Ɖɮu9%' HI&Cfv`p%x<^׭Cj>/E5 ]R)Oь+ tc(_fs>;ωk+O5>u ?U?{2>#҇mW=WE'So5a@P@S״}_IN8f泻Q$LpFFA@G@Ѽ-?OMʂŽ$KI$I *( ( (mk>e%ַ+muePHLR!B P[PeV Qv994;T!a"UQbjIQT!e"O[KS1ca^eotpEk\G sEmL蒴R W=WE=OMk,e?iZOh~nD?y]J'}?VYP4m7K5[ o&}joo_{6a P$/p0>\$~ ( ( ^z //"??zY([l' Vu+X,{|ҼK8kN@8@P@Pi/qhRƽ^'JW^,e.4m6[mڕPOfhUۜG$dm_ ( (}Yc޴QzYP@P@sJҨ/2|W:[c`GGq]rWhOў_L$?YҪ5_wO3}! ݿZοI~G21RFAA@P/ Ȼa^"R) 3jsi^w9fT:mۗls=p1qe;xSU_įiV M.7G%)d*UB~_3 ejmv]zZ4H3.m;@z~/&܁X *0k씰(t0٩azo@߁^cD-oM>٥j0sm?d)$uA@⿱ULݯymV@e7./Pcx% c;> h2g4-Fnm8G"V,\9y ( 6w6w_`Yi ?yFc//lm--濔ki@~lǠ4b+c&6_[Eڬn]cv^X J6:|Y]r+}ĺ>4ygyM)9]6힛gug}P?Lһ ?o|b\"€4( l彤/,p,L:Tu,H _I4mOL'IѰ 2H 8 U^[ē[H$hWF Ah>Ş߄-bPwhx+w 3f>3Ƿ2|@#kmymV@e7XݗV1<ٜ/g? i{gOO^Lψ#4#[UUũET2u_ GUsIkY{2BvHлN$}k2OA]M뙾"uoy,z,%l- uYY2N呏9X4zox\Giq|QM2nhuc: z-~'j_wohV:%ƝSψ;;Fi(z䷆’\CRN5H?>UPP2瓸5Ϗ>ЭX;WҵMPgҮ̹O2L ,YP6ݏpO➩#?i\\Ec;FDG[Kl|H'e,3@3WĖڟ"mݯtGl$gYm%q42D^Fv41`FA~^ ;U5{ {a'S Kq,3prlW0<w~_C./)fMnw<|RR@@P@P@`B`WX<犥>H]TaF;ɥA{SJ }|"IFG݌mMeC|#5\6V^ul֏NUNjtO|@ږiIp".nwrϜyjT/\(lg .Z{kog, k%̚#m|$e<7/Ǫhb"m_K!uQO-a>q#Gm#X8=fY~('4ˣoI N%0mR̲̬/P> xE'@? [XEm"ZIf/spR=v"Br0?j Ɩʹy@e//ʑ^0eMY,d[i&',ViksopTm”WTaXC (+Xv-+IOՑ ߯>?iD__VNz>ag꺧;hVY^87Io,q"{Idy3,hOk=:,X\]#b2K "̀R OO7>/Q.[Ĺ.ui%;[;iY]ɐ #,?N{9%&m~lioZe-,V'8dFq P@P@?__E!y//j >j~#Ѵ5=lE(lnr2O#1O1\q!k2Ss I77ou |vXer`y?Oi -{X4zȵ{k9.aYHI<9Q&h>(~~U|O[[Kjah C%/2$*dPK{xEu-}SLϙg#ƬжUN$ʃt j( /24WCף_ \diBAkW%n;/]Gecyl+h7ɤ7wnlMfYCfxW:g}{V֭j͗4]*{%dI kZHEohej`M}@l5 ]k<(==9 ډPlcKǕ@OcPԢ/moˆR%֭*$BT6͍ ( g]zKDKu2fXP@P@Y)Jܿ_K9_/o?]j#G \u^9?Fy3$DgJxoU>|+7_v1k:,=%g>Y$ß K_SgP=_J5zP,Rn۟\ܠ} RFu2J1xQ>O*.O/ 7A^#\UW|e˙|a];±J|ĞB;)Ex8:>[ϡR7z>rVh-WX.l"+jH s40!%UR0PX7O|? _=S_|3ɵ-zySR Z&>Xpd"B060#ȰUSs~{VMF4_龻qR|7'DWźK,uTG}6K މN|"k~&w|S{#@i4vkdq6nI ]fۖpėȼtOO~?fQm^Ktw~XhBp7ȓ?(5]?Xh [м.m,ƹ=ĒGw$kr'oj[hơu#> һ^Ͷ12a,wOOߋjםwsi؅eе!n獒K C)"h^* Xjɠ{ݝ0|4VReo.CW>$ăx|B Jq,Kb\}$S*\,wt(Ԭ4_]p^yoc,L~rʷq$- B57V.xsľt&զ7 lbB!cY|WAo!þ"K3U4*+eQi"uRbwc1Ԁ@<㥯ċ+/#}WK>`:LoV͹BTίB7ck m+7ƳEe> ]n;2/8Ua(a9?嗑@GLj<&wL}Z:B9ykoj6'ڞw4>UMG¿/ xPXv]唷ZjZL$ ݻ((Le5h;VmWVmxx{Ek>kSi#VKe'1džc@+Ũhuh :EnEH\PF-q(1m JH7_-&ɮC`?h֘?|4T\3J5__Z{UMk9^_zk2zːce~6Ny #dV'V.e(# 1]]_oyڅ/m}^lrh_?j}y~xq߻91Ӛb<& f?GBC`#!ΠondnmB$2]in{ k|$կ-g{K/G02ےJ1c0em CTXφrx0izA&{1 ҳqE%{NX0߃7J07fo 菢hriO{$>L;3cEHL߳x6H|Q!":fa_w3u>z}xv 7^+Yjڭڮ} Kɛs@ A۝I@P@P%nzE^Afz;q [=Eua9}ωo]o|I_j[Y溳= Zj6ۿё8+ߕ&՝:+-&_= o-T('B4>/S^xoջ eQ*#L/Ǫhb"m_V[2{gKpHud,#rr,|;ŏ}ڴN2X5ZtWlea1b}fLо^/0Mh4)tbn<ҒD X 7oXZ4\xKMdΜ@-̢fe)kd;~eƟcz$f]] |Y UV$i@P@V?ZV>"_}^a҉OՄ7~9O~e_h6*@l$5[)< Ҭ# q&e= `AYjO7 kt,\.ߓ+ º֥}+,4gJVԴ{{4oI`T~L~Oi6m_ J\n!2`b*( (_޴ ~/?q^EgǏZ ]jMz?g[@dqJt-Lc*=MfYc]|Oi#F{>Il-ēx)]UpĆff; i௷i6 ׄHVlż[@(!@X!)V´ehhSam?SϺtB/.O/2ʷ8</E,hVi\024qFbQ3PP@VB?V~!k/24|~5C+ǾмeicoG˯aYM \nY`tqE#8!EfYK6-s#mlW]6P"(*Ax[V{QIf87\pC(-bEr`_ /tMt?Y+[od]κٜg? i{gOO^Lψ#4#[UUũET2fYh${znk&OI\JB@8`q=hJ0m/o<][ "D4o[ݖܸ#hm~b|Kj3Onn9Yc2(RrBÍ@V>6e[ö~.Ю5:t75tnlq^Ūhc>|9XH8 ( ( ( jpϥRZ>v`2\*Yʬ"m7ƟW/$U]3Vo6}>KITNpn<իN0I{ .# W9(mvZK<jw -VPQ32kxM_ɞ\⟧hj/m_f,ފ޲woM`Ym.G `q@uzχ{ [M\$ɵBAڀ/@P@Z>?iZOh~nD?y]J'}?VuŭK})9d (؎F=(^x/׈5LĺDN\#>F4@P@Ph/?qhB^z_ ~Yi=@P@PkEi %f,( ( ,ȔeQWn_e/%?t.5 {#]?U<IγU<7j* >gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUZPǪhb"m_~~%GŖ lM6!m)$ 8g4>:ym} N?hzFM.R,-8R%;ܨ!8R?mz W–$ֲX64 9p7(h5?kϊjZmrh+O#ugJPq:nίu/W3|ǞG#9a7T F@ }/zŠծh0x* BywûBO?x{uе++\&3Q˼(0O:os6ڽ;\ڽWaXVSbW% T ;Gb8,TH ,qElI5߈>!/ 5=i 5,!gEʺb2T7^@:( (+Xv-+IOՑ ߯>?iD_}wFs, [oԆ=NC*)8MP q'Mq~40𤷐G_|;KHCF2Eߒ$;AU%@P@Ph/?qhB^z_ ~<Ѵ x{W󮴯hFѝؤ-&d3~^E 6e_+}e4-o|[JЭ$:6yPn -\{P@P@O敢HK!x?댟(__?z? FuٓCSBXh7?9-e1 8}C`BeoE_ x&X\%I>dr{,32rDn@œk~7g-7RÚ|E22UyPi@P@Z>oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|Y ( ( ( ( (mk>e%ַ+muePHLR!B P[PeV Qv994;T!a"UQbjIQT!e"O[KS1ca^eotpEk\G sEmL蒴R W=WE=OMk,eP@P@Z>?iZOh~nD?y]J'}?VYP@P@Z/ \coZ?zЅE_އ/WߢK5a@P@P@O敢HK!x?댟(__?z?гYP@P@Z>oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|Vk"i-t9fH@.` œdfY h+=s7]2n4En;&P)ܲ1@7g4_C./)fMnw<|RR@@F躏#? Jsmo4.Ym$ABŷ}+w_GƋRkZZT5_2U9I=Wp v%Rco+.f!%CXA?4 2+3]x寉4'2I0( Z}c&iYi12Zw2ݮb*@͉Yvꭅ ?g?U6#m-2rM@@P@K{+ 9i\Fb;*#)vESՅ&ߡ &uM(58-%v17c- sXZ.˯zjkeղZ>[?M:uVr-qP/ArpQ*N$i:y>3?2k_w۱g/ץ#LF֫]ыSO~c[m4˛{壟&-- '` P1< ̫̳4߈'xMmu|G'Imma$yW#fM+wgŗ%Oڕ^WY}Pc1[ fFI Ls )ؠP@P@ȆAcW财{Ga ߯S^,o `=m@w'%FU\9uA|k˪D%Gk TZРvY40@P@Pi/qhRƽ^'JW^9OŚk(΋iVjsXyLem3 %e)ִumBF]:[[5:Y۟ QNeÞ/ؿ /gDl݁ 㠠 ( ( g]zKDKu2fXP@P@Y)Jܿ_K9_/o?]j#G \u^9?Fy3$DgJxoU>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET3/!g͡ɪƱc.Q7: 9Yn|Coꗚ~ =&M.I.nbukk6[2@:? g6G_"j'~x f5eoߊ w'?hG q=8.DUi4{rn@]0eC~ '_\_ر'3v[_.5ìw(M3o" i-¶&QM_b|ulc~͸=3~Ζ>kÖz%e1wY cNpH@3|A4k:3_BI os\@!.:ߌ!Go}#Zȭ ʎ298' >xm~mjM{[Zkt`+%(9Tq@P@P%nzE^Afz;q [=Eua9}ωo]o|I_j[Y溳= Zj6ۿё8+ߕ&՝:+-&_= o-T('B4>/S^xoջ eQ*#L/Ǫhb"m_f,<- cP;j'kh,DLbqgMZ6 |V6jIu:?b˷({am.60Uh ( cW购'}?VD7~ E>nDex۞ ߳3>{w63>wgsg5OR4:Χ%W-!m"+ulg97F%î= ( ( ^z //"??ze|F%^>Ovy{[nvc#y;svpqg5ᔿ.95=&).4ۣ%լ3E;XoFH3 Pq @P@Z_ \diZ/ԇG҅?Uף ^Ꮘ!߱Aj'Ή߷#v7gQYP=K3iw 3Bu+e`: )#2YXd#]šleXA[pƥ!Fpa@P@P@6ꈖḛ ( ("SE]񗤿s⿄_x:Ż>iyłWͻ* Ui"w}xҡ[de)ܩ~a۵s}iW{Tg1uʬnM4mL$?YҪoU>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET2fYh${znk&OI\JB@8`q=hJ9{=Z]/Z41jP,yfdF{@P@Pl &o-t$tB̋+gTrS6g/þ.е{2}S *H`3=hv)/R\}eșq7NS\ ('Z3vzTϨ] 0!C/?zE=țk`_|&0|GL>[ͥOy:dU20.[O9nD:%mi@~lGlve/:T6Brb:J֠ ( (}Yc޴QzYP@P@sJҨ/2|W4oxrOѻuw!縲GlK)'U c.Xɥɔ#vU,O[YYD'o.8A&pIOo6䓓oUSK<IγU7j* >gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUZPǪhb"m_~~%GŖ lM6!m)$ 8g4>:ym} N?hzFM.R,-8R%;ܨ!8R?mz W–$ֲX64 9p7(oo"PxĖ^%_x]R?l ioLz,CpT@O j~$nUOìxv7է!=aBBvm6(ݿh/|1xRzgjڵŽmP.nc9abiEO|Ezxp2K)5)IgUce-Bn4P4(Io&{IY>ɛPHq/#9!G\ ?I?}ƺk_\O -iC ѻ';М({_SStoO_Q.aff]7#.1R?; >ysy3I]t gٷvc9,c$^#o|0 VWEE$۱2_JwGctJ}ek|C^Aj#{ FA%kXBu,d 4nTtP@P@V?ZV>"_}^a҉OՄ7~<Yߩ z{$ݛʇ+SvTRp)rOs,+qg;Q𦗬2O/hd*,2"$vvVuQ@ ( 17_BߢB/ \coC|o~~Ӛ6}jvu֕3լ&v۹rȠ#̳?6K 46EV5وƮ 19Y|Ō} @P@Pi/qhRƽ^'JW^<ѴgdЖ 13KYLlkEae#+OKfox?3NMطي~O+z4a`|i^ ̿ˠ A\)ؙu;~U:( ( g]zKDKu2fXP@P@Y)Jܿ_K9_/o?]j#G \u^9?Fy3$DgJxoU>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET2fXP@P@P@P@OI㨼c=żo7SJUqTPYI$v (mk>e%ַ+muePHLR!B P[PeV Qv994;T!a"UQbjIQT!e"O[KS1ca^eotpEk\G sEmL蒴R W=WE=OMk,eP@P@Z>?iZOh~nD?y]J'}?VYP@P@Z/ \coZ?zЅE_އ/WߢK5a@P@P@O敢HK!x?댟(__?z?гYP@P@Z>oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|3^TI=ʞٮ"^FwFF[# a `Y_ >2j??,&V^hV-rg 朡#ݖ1"&<+- šjvЬsZ2ġe*wE#8f_,7*΋ɬhu嗈-KNQ33A<8Y&*Ḡ!|W״O[ ׌/4kB'k[4@j~6K4yzUl&64ePʼnj@4gg^G}HY%Ky<;\$2ffjb@4O]SִwFX4HH]TaF;ɥA{SJ }|"IFG݌mMeC|#5\6V^ul֏NUNjtO|@ږiIp".nwrϜyjT/\(lg .Z{kog, k%̚#m|$e<7/Ǫhb"m_V[M2{`KKrIB)vT Os*@,~ Z_U XMoa# }{u !*N|Y|UmSEM{ 3 ..ibi$J" m c↿k⇊l7=6mn.x̙[b @;v X֢o xCϺo|I@ ϲ3qǸij"L!xJcxեwή˨z4p|ySZ3/:_Śk(΋iVjsXyLem3 %_⿊u/o][AоѥWzιl6lhvA&DAS*k:|9W<}6Ou]*{{ɭ]%*$Ha 17_BߢB/ \coC|o~)V>ḵkZM*[5%,pE۫uW mpYUfYLOzޭu+){-{]Y".'k-*|hȎ1c<&Su#Z xMeOF-͆4*ykyYm;>ckK>Vt/iw޳[=͵[#EP0ɅTʀqzOZh񾡧%̗Gs'"^1(uY%6,헃$`k菱43A% er;:ʪҀvP@VB?V~!k/24|~5Cޣh״i:ZDR__^\ڄimlb(-#i$gx'?~5^٭<3}og[9E@߽hTؑv[O+|E#adifJbV\ o,Oy县Nlk?PGbCaK8]H^=icM(0O-~&'ͱw`_‹Oេh4:}4V—XrnWg>Lgw!c4x/d֡BDM3֑|ָ2m@YP(b@:?_ #q7fSE}Y>L-$ ;B@@P@P@r_g]%n# G[$WV{{ >xĚupA{*]q@lk1ůfhs*jR_MRknYSL2aD>{߷ϧZw7=}qp$B1$ĒI$z (}^aҴY,Oh~! nxڟ~ΨYlFݞ~1Fe>&]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[>ȪJe|GگzvF-M=O*5׵m/Ce5JMmQ$3܊̲|WoxH~˷μ+vvN3>swkm570%܆(G epTve'45&G>nݻ~69::oaiYj}awm6gvn3\ ( ( =֧ ]%sf%-"eޮOr&?|iA}rE_, ~5Sp=Zb0q3OWetK]mSzVpk;` 9&)~f]ыJ'5k2 1yMiשYKmoC"Uڤ1_ηCYai; 6VH8`A;PﬤcmIY8ܸGerOc 1yMiשYKmoC"Uڤ1_ηCYai; 6VH8`A;P( cW购'}?VD7~ E>nDa/q+׆+bm#FI»Taҳ,y Zx—^#`3i2FS;p/c:dzGVR KR;hB V8}(|1jznIu|>8d*6DA09a(O-<_kK0ko#[tG |hZ (+E!yG/W7PB@__VL.u-J ;+8{qYُ I<+2!O4 OMu:]/^G eFȕ26]',=EOmoE>^Im׷ 1n`܀2;ފiOٯEy3̫{:(Ƞ^Im׷ 1n`܀2;e7~ZxBw^: mZ]N@XIKlf?oC@&_hs>!46o{pC , IdE}w S2.uh8 P [.}EOz',IAӴmGg5+B(7tf ۔' 8 ( }V跭!?TD^,eP@P@şl*%'ΖE??opW\3?g?I4OWES{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMk<RW\5g|SGX|yOYTw-u|/)Lq3iviLIL G5SRoXgH. b)'9FyقA>%׏fץ?->y^q!0e@S m./K\DTԴv TJUoPx+ƟdƋ-wPޗi|Gy]6{r[(UV4BGu?]kkn#KR='"49#!U&ߍ|_j^#^^i ?SY&ˑc 1]G{ľ+TMA5+Xl,R/(F %K6qz5P@P@s?n4U.f}NkJ^7z xWQiitUyqea4˖H YXŐ ֶ*Eҩ%[guR/-ϫ;:}}evdjx x[*W.@ۜ@J`,w)Ղsz8nYj:K]dodH<$euG6__Z{UMk!JE5k(#]y;Uc.9fY'_x:B&ӭbB(DY!T.߳Ƴep|MkN/|F0Z4PZ @e;lqy7lEuqO9,:犼g͛I!/ 5=i 5,!gEʺb2T7^@:( cW购'}?VD7~ E>nDq{ ?U^IW},mnrw\]ٱNIUV1əg’A|A- Wq q_~H[\uWȗ$llv%x/.#AnHV0RG$(fJ44`%o_7KmOΟ-5ϋm[L]rr!bPƗPku]?Iih[Ds*D#c`ߨ (_޴ ~/?q^E#uOZoSz=4YYc}r.2fYW4xU`Х<`4 jֳIK[/ ]'\roF3ŲTy%־-` jԦ'GY4̥ϗc2C ) `kv6Z PNӯ#Go8Q5b&%3"RRfR~ҷZ~SMſ yI^ol2ٚ>>uP@Pi/qhRƽ^'JW^8_2J4wdz/Lu'VZ&eo)eyD)Rlqč 8xž oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|Y2nDY Mt,to-&l<<$H펃8_ ( 17_BߢB/ \coC|o~̰ Fz}amϭ]-c!$1.˜d@/@P@VB?V~!k/24|~5BfXP }M!nkoZWv q);' (+_՟v?-Hm/O-ׯ5a@P@P7gD/*r/I, 3v?8[4qw/zMu*UQTa8}Ůs- g.E-| O>oTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'So1֭|7WW%g5#B8S<[?u7fC ս攲谕-[ygyd;F<=c4Kz]1qE6LɹՎ珀@*H#h״/|ES^ ѣm:unqڙh~;_[ ~^ku/Xo- Ki=4eiob, (_S<)kiNбvviʊ Ub1TE[CiyirPķ LY̐4rc1 ⯉4/xOF|lqw}Ռ*۲D6~9u}f09-Gß/|_i?lּqFAż<˙ o$o3͓`*Ux_:Ty췺u ZaD:11Q-៊m|m];V:vakFe F7T0R ʲ@P@P.m+۰ kɥq[;xS䌥NVc_~<14(`n$}qT723[eceh.^驮qVʟ-h=l4Z\xD7Mid+.Rz,ǖB1†}Fx:В姶{_0 (\ɯ6{+;_nL=^_:k3ZzvF-M=O*5}/Z^hV7ۨ24qF0PHS3Ve_xľEַMV2xwROi +tu\?BB4.Ж1o|et JIͥRVʊC4 d #ؑrψ^,}^Լu*XhsnnTiq#`gfU$*6p ~!kyᯈ jzdžZXM4*=Mp4λb,J xOzPE{zvV5XRF $(,qN;h (}^aҴY,Oh~!>%j<'zZzxnSet(i$@FGS2o|E~;x/As,Wk([UEsJW0$"2! YNED`Yoo. 36{rT` ͕X2|J?xOGլ48,=WTm +-;dQorI;0֑{Fl7=6mn.x̙[b @;v XּK Zw~$/#ycn#ؓypf&L Ɨ_zeh6Ѯ[Jt:b'fhI6L]D6 @Pi/qhRƽ^'JW^8 Ɨ5uHI[Jԣyv"i1m {7Mιd_5 GR֦E؍w#@ b0~$ּe[Co,5/iv# [`S/HQ*t{('|i,mKo*Kf[o?slheeK i?ˆQa:mݎwC.-waQwΙGe_5CH3J#w$`,_oomgٻv/@Z>oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|s#u㿅,ٴ95X#} e&g]!29<X<5-ψmRO|AGɥ5­Nmt]yA>PF@bGᶻ#h S_-D۹/ o~k׾)i0l~!eyouۤv p$;T@9o oui_9o&4RO4 a"dcrJiA;ZxkºBkzm~ }:-gGv]dbW̑XY|&&/’xHk{>[WO< ͨ0 :?7Ziwxch}kڛxluZigc諀uρNs>"5{MWQ{/8K1'nqɹg8p< ⻙InSX Z"8lmouiGvN: >c:.ckm\hUrē$( (9/wO. 7K\#ͭR+ =|M=k ~x[M:V  X.и6NG5՘b׳QV_M9})]N5Fh(ƏYi6 KxݡmFNy8:9xژT~g/ץWe|W=WE'Soj6'U'UoTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'So5fo'Ep*Y Ǹ *5>itkoǛkyCAEtt ݭ-57x\0Q#؂"& @݂_x[tY$,@3 “c@'Ep*Y Ǹ ݭ0<"Eff<$Ҁ > nmncYa + @P@P@{N=*KX.KZEU!U݁׽\"Mf/ 䊾Xy>#kxJ-Ii<2_x* -|za 7ceag5 ]}֖[z=ڧNQewX 1sMoi3˓S W=WE=OMk,e[SC_W]6MA K2ͽ~R0hηCYai; 6VH8`A;P( (+Xv-+IOՑ ߯>?iD_ o0[G,Zy4Ǡ5e b}I50H˄~@ކ5 ( 17_BߢB/ \coC|o~->g'8IIc?ʠu,MfYC>)Ɓn='Ke4kLFˠ凨 j( (+K!x?댟+E?U5@B?PPVL.u-J ;+8{qYُ I<+22O<#GxzNe,/# XcҀ5 ( }V跭!?TD^,eP@P@şl*%'ΖE??opW\3?g?I4OWES{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMk8oĿ^C4z{5m)1:^E$#',F_-OYiڿHѼ]i{ Y%%gC${4R @=~O\ּAxpRęZ[ Ƅ!.⠅<➵GÚ/gXOĹǗn|6>윺ـ)zs%+ɗRY.<)s+.Et b|@dUwzj ^+,"NFI.Q-,xvu+,.˰6YbFl<{kCYa@<7 DڃJV YJ1fdUR_zڞzo\irXm%{ڨ h( (gMڦ;^ٺ^iRkӆD ;Gb8,TH ,qElI5߈>!/ 5=i 5,!gEʺb2T7^@:( (+Xv-+IOՑ ߯>?iD_}wFs, [oԆ=NC*)8MP q'Mq~40𤷐G_|;KHCF2Eߒ$;AU%@P@Ph/?qhB^z_ ~<Ѵ x{W󮴯hFѝؤ-&d3~^E 6e_+}e4-o|[JЭ$:6yPn -\{P@P@O敢HK!x?댟(__?z? FuٓCSBXh7?9-e1 8}C`BeoE_ x&X\%I>dr{,32rDn@œk~7g-7RÚ|E22UyPi@P@Z>oZCiz~nFY ( (9?%?~TUۗzKIg>+O-MD~0k#|+~g4~'/hU} |>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|Y ( -Ҽ]}[9Xce-T~c7'bm^p0@P@ax/څƍg2j$wS]\\PYQd n@P@sg,%m) D(Aujp〉J6n1g&gj֟1$Q@=,MI;:"I)~C*}~?u=6^ ҬhbKUR0<3hͿ_ɝV^ǪhbҧC~ḛ ( (+Xv-+IOՑ ߯>?iD_k2€ ( (+E!yG/W7PB@__f,( ( (Ҵ__^ /q ~Gk2€ ( (+_՟v?-Hm/O-ׯ5a@P@P7gD/*r/I, 3v?8[4qw/zMu*UQTa8}Ůs- g.E-| O>oTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'Sok2ǢYyS[5KHdd 0 [?M:uVr-qP/ArpQ*N$i:y>3?2k_w۱g/ץ#LF֫]ыSO~fW/~/u/_l݃;qg2~'[gFKP줳㹒1ShͿ~Hѳ,P@P@PkEi=!Xv-(XCw#;1@?u?>JYxÑPIsw- 'c,2!,*( ( 17_BߢB/ \coC|o~) \8։ ]:ua{YIyGm%f! M [~(~W2o$Ꮗ<_/Aj_e<'Ήdٻv7c8A@P@P@VB?V~!k/24|~5CkZLѼ<Fa!kqtУdH2۵,7&X5(K[2Ԭrkw5JI(a. scqh ( }V跭!?TD^,eP@P@şl*%'ΖE??opW\3?g?I4OWES{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMk,eC|'/x7WZԞRL(Y!2SH  >cxGbx,uG\seYڂ9H61C _DB1KiEn_Qyn4>m&8>m|ҾC}DK-u-s-1_6 <޹kw.T4;Թ[Xy͵-K9 ocgV:j:l$lGwdu;ŘvP@P@ŻçIy.)lՄ>&5u^-&}\^nafʬ{h\pF'#p1k٨+n릇FGڔ~WTۣVwxcGЬM~%[жP'< ΝӂvZmLUy*|RmVox3IG\2F֫]ыSO~e/xzּ)Kִ(Fak:6[۴1}Snm#` mP@P@V?ZV>"_}^a҉OՄ7~8_ /|WOa4/hvLIffq*%{˟,X>e@P@P@?__E!y//}]kR> VZX+jZ{=@M m߀7+f|=ee[- :KF(5,@ 3{ ֠ ( (Ҵ__^ /q ~G|1{tR 7Wl'76cA5 bW|qD! e6"M%~|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET1zLY0cͺb2L'kf.P={V=&]SZԬ1^LEHQ2H=Ƞ P@,oaoO}?Pv^۷n3( _9|'v3fwlcgIkـs Hd?*:S܉_E\Wo3ztZ%]-'KeS#9府V!8&yz,X5\L校k/koGT^*,Z!C1F8xɭ6&yrw~ǪhbҧC~e̳')Nj5/ xIl:]w1PqzP@P@V?ZV>"_}^a҉OՄ7~)x>5=7M|Gw̾Fm{y2^I"V t\fP@P@VB֏^!|o~17 7RS^+YK(.uKi$ g !X5 ( (Ҵ__^ /q ~G[|9ϬWtmuA [*w 2y$e*S--6 +Ȗ{{yUՇ Ahz( (+_՟v?-Hm/O-ׯ5a@P@P9WD?)W::o?Hkj*ٞ#L$?YҪ5_w8|0Wxob^uXzK9}I?mf 7 ( ( ( ( ( ( ( ( (#]?}ua~/95QV:φ*ҙkFiCF]ыSO~f/ a>XU淃틘bvk`@$rfYo5 _7z<~ 4 dSz`8wla4s ɻib^k[Ÿ46oMkLJ/W66qi$D5uc]`"'t_~%|Ox3L5)yvYc|+r</7|YnÝ#\yo[-NP>%Qc_~ :ݳۥ<^Y !6BXG\{ ׏w-|K⻻uOM\bf1"lTgP@P@ěM&vkKt`cӯZҥ*ק ވ#^8yƬZm=]>g,~\YXM6ep$0VeV1d$uJQiIttzYosԋs_uyrݮ7ƫh >+o_ʸˇP2'!P;,@/ /u`y|ެ*۬6ڎRY>[Y-:2zY(&r?|W=WE'SoSgm $5QTrI&,a*x_Wgt{Դۄ7ϩ< ޫ4,˜"0 @P@P@ȆAcW财{Ga ߯ oO⦛}y~[ZVUO3J be4||= ( (+E!yG/W7PB@__Ÿ|%Oj&bږpq$k]ʹ qfc{~u+9l9qmqHd[h#)XAEvP@P@VB?V~!k/24|~5C}ek|CA?QEogi#aQL,@-"/VY?3>k{{[}.T=7GV2H y@P@PkEi %f,( ( >*Șg1V#*gGX-_smC4e[3i$'|?U_aƫnO3}! ݿZοI~G21RFAA@P@P@P@P@P@P@P@P@qk]/vg>#&Z`*~YES_׿S-s?(|_1jiU6̳YP@h!^&7|rEc'sjQax ( /x;0vs_Z%fdWtJ&HY^99ݠ ( >%[ZϦYIuJ]oYo4RP9={V&+UlݎbM>->!>cHUTz.0+Xwu9EYHR)~$Ty(t{XlY[%6Zėlax g\w~:$?3CUUťOSo5a@P@P@V?ZV>"_}^a҉OՄ7~,eP@P@VB֏^!|o~17 7RfXP@P@Pi/qhRƽ^'JW^,eP@P@V?[֐^"[_іk2€ ( (s_vSm"26tu ?\>/FUoTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'Sok2ǢYyS[5KHdd 0 |EwjveyojQC 2VS,en"@ Ḡ դ>)oG4=GV>\8@,F1} P:zcOeT.b3ƙ%Ld*0+@ $>+;@lmnl2YaDY wր ( (0|isoe^݇0[^M+,BܞsR$e.Ȫt]z DΩgEq#6eQ.k+EuׯMMsTkGgN]Bź' xrmKM״$Xp7;9g<*.N6c3Iք-=O7זQxYGM|N{Yv> eQ_?ɞ_1jiU6OC~bo#]Υ_3󼘚Mvn35fOsk~ ]ޓvZj]qw2]F"0m 6e;J( ( cW购'}?VD7~ E>nDy?'ЗIK/r?I4nnudefPv|>e@P@P@?__E!y//>!k':<K'N,/u75K)/#H!I;ݫo߅Yğ|1/H4mKg,7`ng8(z ( ( ^'J|~?z?%O/ƽsukIÚ7R>l7=6mn.x̙[b @;ve>x  {k}\5Y-niUI%%bln -P@P@6ꈖḛ ( ("cݟ[a bjbxBz}W5ѕohU} U>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET2fY:W~<>(ux-Iu$<3%1+.rbxcw7'}YcƟ5ϲeA;wu{~Io3q꨷آ (vuCcG 4)6߫w7$eUGo_#kUUũET2=e^ԥ+-v}:Kv ",m$8#=fY Zg_x\5RM-wi멷6I` ( (+Xv-+IOՑ ߯>?iD_/?+ u4d &y$Cq8qeϖv|2C ( ( ^z //"??zs~>𮵩xJG +Yҭn-=my&koRX̳_>t_ i-ao%#Gk X=kP@P@Z_ \diZ/ԇG҅?Uף ?> hFz6ڛ1݄+ξUĸ"H[2xoO lKqsq%$y,Wh, P@P@V?[֐^"[_іk2€ ( (s_vSm"26tu ?\>/FUoTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'So5fq᫏[BGE>MoV6?:pOQ@P@shz^ic͵ԡX  "::yivzwYj[k,ʲlRrAp:( ( ('Z3vzTϨ] 0!C/?zE=țk`_|&0|GL>[ͥOy:dU20.[O9:T6Brb:J̳Z ( (+K!x?댟+E?U5@B?PPÚψu{ 'M^$Źr0'@YXү=2Ro gIѰ]XpA' ( (}Yc޴QzYP@P@sLҘl?᳣MLOOC涡}ߚ2]?Mu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|qߴ߉qehk6,SMbu9vI FNfY)^Я4It U xA-؊FPg0\oxZW4񽦅>Lo/`w/7#$l".;Z%k0)񝭍uivOwPй][j xź}^/dMiPi\rNNJ]b(rH}h|q_?rIy[VLyzp]prx,h'[gH? . G,oI +;ŝW^~y[>"ocYu&?ɪZEqitL<# 0-#寘L|sy]Ǧxr ^ mw,3[Y0QRC~̺K> W^ʶXbZ'Jw*( (97 jLz*3fz>s_µJUNFpY{4| _|Y닲]to5< V<@|W޿qe+emNB%0wX ^_9[}սYÜUXl,uIn}ܷZ$u eQ:#LZzvF-M=O*5!c{=t9/o<9AomoIki嘒MfY[|UŞ$aϠ+i qln#Ry"!+VhY9D$a@=* ( (+Xv-+IOՑ ߯>?iD_JYiM6 [>Ҵ+i &x ffh9{P@P@VB֏^!|o~17 7SϾ'kz/>:KĞ(4M4bŵ-J-I׎##as#r2oپLVssO3ȶцFSʰ  ( ( /24WCף_ \diBAk F~WO4=w 6/WF¢e0XZD^̲g5|}m(ͪ]K z2gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUZPǪhb"m_f,( ( thh^Ic6D^mRYb T -l, 5!@(ª5P@P@īkY).?I[k-Bb ]z'jڄ%x*RYɧڥ? c P*@uKRN:)}_?䊟o/nk +{+XgCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUZPǪhb"m_~4>|ּa}Twb?@.im-oLԤk /J }L{S* \|d#r(~.ǎ5hz=knCkq\̑VO4#ܧS?g?<;wXZ m >[/ @x=_ ?h]/>\ѯ-H|1skIJUx 68m x\$_NmOVO?.c]rKg FBЉcjo8[*汲]_/]z8˫eO}~tu.<[x&Դ{NK)ssC|R~_Cf>,k^ΫKV~MoXuᴖ+OE󐕕;~"''SkwOӤMgsm0͹nDph>>E}kWW2b$I"lbX YWhY=⮽i2sF[^'Mm;B+lP"`'n揍Ow|^Z\nX)m!xJcxեwή˨z4p|ySZ3/=f (+K!x?댟+E?U5@B?PPKIy4Ɠi{$=ީ o ,!FC+vN͏gDͭxg_aO i}o[]rmE|Sƣfnk-cRTpN$oŏOGFFg7RԵ'RiX'EieIwgV` }WGa|5{a> $K; `'lW :\R< H=g?2c_ivڗ|3Y6nݍqPP@6ꈖḛ ( ("cݟ[a bjbxBz}W5ѕohU} U>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET3oY u_jfi?~G$9َk2̏_ b:EgV/}ݝ덟{ր9?f;{,Zޑq?KS"XYL7uj|ysXcN?bLK}A>%n,(HK,/\Gqp@76KgH'/97Pw8+}o4Zs 4 6UcܻB69Vc^F[w]4:2<Uԥw;򾚤Ux>ekg-v9VtF#jbSms{L=^_:_?ɖ6__Z{UMkw\Oc,4iwn@unV\AVeywZ"5/:_uiomi}Z3f%]Ʌ_-r{:WZ״/t] ݵ+內`%J+/Ő %Wvai&%kyfs\L*18o ^u5_TRC~5-M DQ3ȾUY#@!T ( ?y]J{GdCw ?ZQ=G)oPXh턚fe>'UPŦpƒ9hY6޸*wz;Hveiwo|hM߲c9mz (+E!yG/W7PB@__|haYiz'4/NvZ%zxa}r]2DldI3,-k;Sam NIKvEyk?ߏ9]2}v6 &-Zxb]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[>ȪJe|GگzvF-M=O*5׵m/Ce5JMmQ$3܊̳"mrNfٻx X>ßڟh'|ogrNfٻx P@PO8g-cP0.aiTC,V^v^p{6O +*`M`S}+DKQ%t d`'8\SsyՄ'$=WK6z-wӥZZmj ҵ;E+Yc(f(5Uׯ.NO45__ZT?u6̳YAYj=Q$@A uFH%ue#e (|1w ZI_Osy]A C@Uç$c_Q@S{SԴ zN{KjW%aURLmqʟC@?xAų:W>N۝}(z ( cW购'}?VD7~ E>nDR|1jznIu|>8d*6DA09a+2M|Ci:m: -w;Y<zz',IAӴmGg5+B(7tf ۔' 8׊|u D:Z kحN ξE}inZ]pCxS&fEáa *S--6 +Ȗ{{yUՇ Ahz( /24WCף_ \diBAk[-3LԵ+,i.n$ j gf<* $'  1yMiשYKmoC"Uڤ1/L/_c_>qր5-OLԴ/,"YmG4lWV2ApA  (}Yc޴QzYP@P@sLҘl?᳣MLOOC涡}ߚ2]?Mu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|yW&tҸk2/}iaR aọZK/L{Yl6"Qi O^,MQZ~)[|-6 )F,{O2Efhs0FCM8ԼG';_I~qy% ۃ$M?"mc%@?x|Wwy.⛉k,Vن82X^PJlj(97 jLz*3fz>s_µJUNFpY{4| _|Y닲]to5< V<@|W޿qe+emNB%0wX ^_9[}սYÜUXl,uIn}ܷZ$u eQ:#LZzvF-M=O*5l4˛ t&w@%dBRA,ßOi:m5h!vu1 "*(]/"]CIYk&+bk |X'zYo~i&}Ρ >g[_ɱmDK~Ŭ xxGE- n[5k8,QjoQ?$ @P@V?ZV>"_}^a҉OՄ7~_o#1,KYաh 29*LnP@Ph/?qhB^z_ ~<Ѵ x{W󮴯hFѝؤ-&d3~^E 6eh]oƱC+JK{6]X2$XU0"8k6ҿ }{zNhZo:3Z=4(]ZC 'wp ^д|oum1Gs]]BŤ7-#3( JqV6ZfmpYYİ[[#8U@@Pi/qhRƽ^'JW^<ѴgdЖ 13KYLlkEaeS?W7c>Ŧbˌ|φ%dQՆ@9?(c\>OXWSx m.HՖ Y;I$Hp_Ks5m,u{8iM Z2G% R4̟iRHl?goAw"@VKCɻuE+## p]GiK Pi@P@6ꈖḛ ( ("cݟ[a bjbxBz}W5ѕohU} U>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET2fXP@P@P@x{[k[YLΉX$2) "' P@|JL[޲ߨh&)רrzMW2(ٻŜ}[Z|C|0E\`WT5$(s'-SHQ1x/JKm.#UJ@Sֹ6&tIZ)z~f]ыJ'5k2#Ѵ{OUD][ޢoeLR$hq$P( ( cW购'}?VD7~ E>nDY(i6>t0(`pĸ.qI@P@Ph/?qhB^z_ ~,e-m6x+mSϽxai^%ۜ 5ħ d _ ( (Ҵ__^ /q ~Gk26?C-J{('d34O*Z#26FN@/@P@Z>oZCiz~nFY ( (9ϊ&?}LUʿ&''Es[PVgI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMk8[ƚςz׌4[{9#ʎ;3+)#VeW>2]x{J6>/.lfѴ֥/XA  G#!隔aW O|c^A+ݬrNEtz/X]]/TǼmmHmn6+=昄{ ~'wSLJn+ Qޡta(O94_SޥsK\뺍")kko3@fi#fF!s` S'ӤVEևqwO Z6Lr6ܨ' ~cWVPӵk{M"F*U #BBs@!ov_<7ea^xQ8Y[gÌ#3nO.P@*axF⿉?X5mm'Ѹ2q0V0Y?P SǾ4VmVnv[[/c4Xv]2|!ŧߛKmwEh&^G#?  ( ?y]J{GdCw ?ZQ=G Ş'^},G/K~akE+¡ ;;HvwRLѭJ8ąr6c=f (+E!yG/W7PB@__*`е h6VqKujq嬰#J&eigSm='—ÚrL\I$[MP} * U׵&_h{ }KimghQ2em$LdZ|i8ݦ/djv[K5[f E夞LyϔO2(3o'424 ]r/HBU[qHfub P@Pi/qhRƽ^'JW^)xl54Ax5/rqxM32zϊu7Þ|CMmec? j]jNI€]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[>ȪJe|GگzvF-M=O*5ǏS/S3OKjefH|<|Tc˟vb[ Y.cuY`@i6e7@6/S^xoջ eQ*#L/Ǫhb"m_V[2{gKpHud,#rr,˿Zֱx6!?;K{kH?t ]n.-e*)!lB@o-ԤcgC<(4/jLLv,*ec+Ā4v=~|Uo Mm,SƱ\ٕ@u Xi@P@?__E!y//>4xO0,ĚN Y;-KI=N<|ˈH9."@6c2$dᖵ)A$ۥ}<ٜ>;xh,>=E𶼷Cq i%k_A˫PO{- goZCiz~nFY ( (9ϊ&?}LUʿ&''Es[PVgI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMkj^˪kZc<۫ɖ( 73IgfE\%ŷ942y$RMCTp(wOgä* :x3wc/hZEԑV B(v>A}cs ͭk,3TaeaAh:~՟K. w=41'!Uz zoaiYj}awm6gvn3d&G>nݻ~69::oaiYj}awm6gvn3\ ( =֧ ]%sf%-"eޮOr&?|iA}rE_, ~5Sp=Zb0q3OWetK]mSzVpk;` 9&)~f]ыJ'5k24-Bݧ$HH$Hݣ Įu EPO._uK_31 t#k#!Hwt|(|1jzxIti|B9,6JI09Sho|12MKž#u(0=Ηyk ,2u@P@V?ZV>"_}^a҉OՄ7~)x>5=7M|Gw̾Fm{y2^I"V t\d&_hs>!46o{pC , IP|o~$|_6욕VԺyr3m  P2:zou Xmjp[Hђ@p%XgA ( 17_BߢB/ \coC|o~->g'8IIc?ʠu,MfXjZfsjWYY\H#xUI@6~]Bv: Z-NBTyClV˧_Q@7^?k>/tQMJP+k]< (z ( /24WCף_ \diBAk[-3LԵ+,i.n$ j gf<* $'  1yMiשYKmoC"Uڤ1/L/_c_>qր/g[|G{Wմ۝MO Xmt$0 AP@V?[֐^"[_іk2€ ( (s_vSm"26tu ?\>/FUoTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'So*?ԼUnW fY73/ #W,7Z'ZUviIM&򭹁'FHƱ驥x@#FS;XP.rޜOieu}qoOx-Bkk6?'>Eƙ2rl`hsi|V:ͯArwMoh @o9!)I9Ԝz|'ѭ^i:?u6PNYkdnw@19m{f爖e.S&wL eω,X_%4o]: <0*7 BNzI7[w+9TdBk*bzߧ?W> aọZK/L{Yl6"Qi O^,MQZ~)[|-6 )F,{O2Efhs0FCM8ԼG';_I~qy% ۃ$M?"mc%@?x|Wwy.⛉k,Vن82X^PJlj( ~$-i3X\͛> ֕)V8nA5fi8-]fid -ϗ,7'̑*!%UmUMRKW{^[Wwxt.ϓuѾ/5XD^czU\:99 9b$xY~S=oVgqV>a&urhx3IG\3 mj/4?Ȫ|;UP.l'y+ky tlH`y̳?g_|#>(m -Pă2̈:@/wR_>"u %dQ%m+y`+¿;bt/?>jOj:&6{T8kip|տ!w}ś2{QzslΟ+"_}^a҉OՄ7~_o#1,KYաh 29*LnP@Ph/?qhB^z_ ~<Ѵ x{W󮴯hFѝؤ-&d3~^E 6eh]oƱC+JK{6]X2$XU0"8k6ҿ }{zNhZo:3Z=4(]ZC 'wp ܮuP.XD!Vd ks+ x^|{.fMC b<ƨr*;PK@P@O敢HK!x?댟(__?z? FuٓCSBXh7?9-e1 8}C`BeiO^7ݏNx_Tsu .1>XyGVx÷us<=ck]M[(%\\[  VX.gx$!5ҵ ~#~(ASG+Uhb3AL.eM#Ʊ{ gR[jZ^Ao}W7E.܀)P:( }V跭!?TD^,eP@P@_*De_lSſ"|_w挫|?fx3$DgJ8oq_=ы]ya/[?&>]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[>ȪJe|GگzvF-M=O*5k2€ ( ( ( !ֶ E-!ǝIdREa׎N@7h (sUeZޟCE!1H.C׵mBnQX)F,R1(UG'yGSPU>oE/ŸEOGzU]mIq6ʪP'zy3JK45__ZT?u6̳YP|v: {.&d&ʐ~Y#FCA"/@P@PkEi=!Xv-(XCw"fYCHѴ/Po-}|ل1@%sH( (+E!yG/W7PB@__f,oix1[mԯ`} J.a%9'w$`P@P@O敢HK!x?댟(__?z?гYPѴOgmjVA>!yWnpr2r~ ( ( g]zKDKu2fXP@P@|U1JbFUΎ51<[!=+ڇ~hʷvg?I4OÆWN* >gCםea|,c襯3هꂂ ( ( ( ( ( ( ( ( a`g]X_|GwG3MriFUZPǪhb"m_~4>|ּa}Twb?@.im-oLԤk /J }L{S* \|d#r(~.ǎ5hz=knCkq\̑VO4#ܧS?g?<;wXZ m >[/ @x=;m|3MMIgK:{C[hV^Re[ݱC A4j/n5-Lԣk/U }S{c P|cp(6)^|`F@֞-&Ky~hEAyld#=æͦbX'3}-hf-P$ ;O2{=7Dž-6_ h~# ƣK-:1=r/dF\&W h7sz v2j.|dfTn@xZF߮cj6$6XdLB=~l ?|q𗈬.5=;]Oy)׾ʲځl7ID$$Ϋ2FXch/Zwzk2A!'{9F2:dd]#x'1_!.]_~[xW&iV_aԅdHYԆ @P.m+۰ kɥq[;xS䌥NVc_~<14(`n$}qT723[eceh.^驮qVʟ-h=l4Z\xD7Mid+.Rz,ǖB1†}Fx:В姶{_0 (\ɯ6{+;_nL=^_:k3ZzvF-M=O*5^=2x./V&6LbI0v8V( pzVeyXG,o kږx] .$X綖!4ŧXVB|h|[/|[jWWN~m-2:~TRS$UyĎ7PKWxVIۨXMho䅜vkəuBgU!JyjC =;;MWBg ԮlI^U̻.,[v_ZaCt8.t-~Taַ2*>8-rI :( cW购'}?VD7~ E>nDpP?-so"YMOi"Q_l$eݱ\_ōkße+ e??M/#*,cG2y/"?JӠZC5mky-{+``@Ph/?qhB^z_ ~0%\xLz)n W^8#@<٤i@Ayd̳ŽkGë<+MsƗZc_WE;eT%[tր=Iy4Ɠi{$=ީ o ,!FC+vN͎74TeRwŴ6r kGB4FKR7,x⮯g}AS ΧGH,#\O6_,p$d( /24WCף_ \diBAk/'#—M쒀z2Ox$ HUFb;6>e^k lKcxK@}i5q O#Nh1@/xէk_ZMsgdѾ,\ !)l<Z>Y@9_NGWBUwqs 9.- p@7m)߅~F:Z/ux.0]4 0c,iqi@P@6ꈖḛ ( ("cݟ[a bjbxBz}W5ѕohU} U>|+7_v1k:,=%g>Y$ß K_SgP@P@P@P@P@P@P@P@|Aw>κٜg? i{gOO^Lψ#4#[UUũET3oY u_jfi?~G$9َk2̏_ b:EgV/}ݝ덟{ր9?f;{,Zޑq?KS"XYL7uj|ysXcN?bLK}A>%n,(Dm+6X*_:n]EgH$6û63[#,eFVA /LzEςZ!PE \g€ zy5O><,1ɧj1Kk%Je7U&fS~ $:_kNJw}O4ۙ4:; B;ݲ1g@XPf(g'Oޑiiq\]HYrE 7e>xS/~ҠnFɅ* rP@|[:}tY^nmnl]XN_ilsnp3[W[iڵh@lǹvmr9Chtdy/(Jw}5I5g}N@G4} I>a[ž mU 2sЍ8(GeϋW"&n?x{,uʿ- mj/4?Ȫ|;ULYh! Y ܬ88~,\?(mm,Ӵ 0I4+[4eP !ǘ@ ,a]x^k]lmat moJ5^RKPFJ7_[>waiU写\4,N]iE>fb!/Ő %Wvai&%kyfs\L*18o ^u5_TRC~5-M DQ3ȾUY#@!T ( ?y]J{GdCw ?ZQ=G)oPXh턚fe>'Uei2^ǩǏq g%$HFfD2̟4ekZc[CH-.ϳp4FPŔ]/74hnaDԊ; Gq%֝xQ'ixduEb xs6Ѵ>tívrDѪ')C2u߅ lh~/'V# NѱeLec\8Ҩ (Ҵ__^ /q ~G4?xWxrTg%4O.h^6q*UYx5o,Q-:16QxjQa[ o$6x4x+k[YmlBKu$[ ohvn VGQ)?2Q__7[Q|G&-M$ۤmg$' }3 Ϭtס Kp5EԦTvQ@蠳V\*KwP@Z>oZCiz~nFY ( (9ϊ&?}LUʿ&''Es[PVgI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMkj^˪kZc<۫ɖ( 73IgfE\%ŷ942y$RMCTp(wOgä* :x3wc/hZEԑV B(v>A}cs ͭk,3TaeaAh.l,'6ip(31$x3ėchZqZ >)P F$ @P@SմZKԬv})7'7FqҀ24>hoϕkgC,XUbN$4;=[KկtMJ{7gbZ[mrySpg(dS}.J9 UD2~Ue`uWmlپ4"f?'ҴKyZO'L0ʦFsu8)8XBqMpYtjACk}:_uޏ}6+STYob0Bbq[ZmzL?3CUUťOSo5fO|Sij^E)tcYd$UO4 RgY\j7o )'j'!޼P*S--6 +Ȗ{{yUՇ Ahz( ( ?y]J{GdCw ?ZQ=E/.Yo#K2dJ. ,ދ}g:mobWse w E}inZ]pCxS&fEáa |o?OAoGD[m>[#zޠ (+E!yG/W7PB@__FOY y)GX@O3K0Y\ZvVq475@xPG& #?KF5vϿuu]O YY~hڎϲjWQ[\oR(,0N@$q@P@Pi/qhRƽ^'JW^YieΥ^AgegOqsq 8cPK;1TI'fY=s^^5-KB׆;-/?P;8|DksŸC@_~]5>c(VS`P9Puzχ{ [M\$ɵBAڀ/@PkEi %f,( ( >*Șg1V#*gGX-_smC4e[3i$'|?U_aƫnO3}! ݿZοI~G21RFAA@P@P@P@P@P@P@P@P@qk]/vg>#&Z`*~YES_׿S-s?(|_1jiU6MK_pe_c=2@5qxť[go:&đ4o*ۘxdyk]n, 4n;3̞EH5 +m$֙Pf^WgJ&cs\i/- 8FUh<*?t6P{T " mI j ំ:5+] Uk}>կRv,cGQ B8À2 ~5|tNji6_H;v(O60\ɸ6]׌?i%| }-}\jF *~U?@$.4 /~EO{dIi[YQ` M_Y^'oy\[[mᫍ^ywdd`"zH~].Z?j[ZZl~N|2eax+3.]O\_WR n9EnDy?=⟇V xZź\zLZh3 9gKt5Ɠ2{EP@Z/ \coZ?zЅE_އ/WߢO>4m6^+gv) IY+8L߷rWAG gY=gvZ}%̓})M53f cE&5TY(@<[|_ id~ YăJhO~/fEzنTkĩdM-0=S .d/@JotZng=퟇4.-#1 mde< Ҁ (+K!x?댟+E?U5@B?PP߶?'moa~rZcf@pXPuG2+ :_ׁumSQѯZkcCdhX#2€F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|Y ( ( ( ( =xMu{9.kH庘*/2 *Xq?g,%m) D(Aujp〉J6n1g&gj֟1$Q@=,MI;:"I)~C*}~?u=6^ ҬhbKUR0<3hͿ_ɝV^ǪhbҧC~ḛ ( (+Xv-+IOՑ ߯>?iD_k2Fz}amϭ]-c!$1.˜d@/@P@Z/ \coZ?zЅE_އ/WߢK5e }M!nkoZWv q);' ( /24WCף_ \diBAk̲ƍ{?mR ʻs䌍 P@P@V?[֐^"[_іk2€ ( (s_vSm"26tu ?\>/FUoTP@P@P@P@P@P@P@P@PF:_fs>8?k+O5>u ?U?{2>#҇mW=WE'So; {7Fh z9g7|`CLk;"=zQ-$giVh^G)/@RV`EvTk7<2]D&!ѕ>F6r2|8ݥ4.5_k>M>+*9%|A`PDxBJU|Gk-V$s]"LJ`d\)Z Gi.k5+aMԩ:4yv̬yFBbo+]KP׈!FfKD%@ ){A5S:@yi 薷c&/ΑK$\ 4்_.eaxFK=/^_0+!B iY9VsJmZ;FG{]j5hKXY"*!W)Fx" 3Jxi[+2g] Rg$!ۅffE` _ GRѯ-+=> B5W Gf/-H@c+FHUo~/Ŷ2š_S}f+@,3C2z ttP@P.m+۰ kɥq[;xS䌥NVc_~<14(`n$}qT723[eceh.^驮qVʟ-h=l4Z\xD7Mid+.Rz,ǖB1†}Fx:В姶{_0 (\ɯ6{+;_nL=^_:k3ZzvF-M=O*5^=2x./V&6LbI0v8V( pzVeWOZljCWVu/$6=3L:4bx|wqq(;( ( cW购'}?VD7~ E>nDpe|! |i_Yn!YT4Gu$)dlp>r@P@Z>oZCiz~nFY ( (9ϊ&?}LUʿ&''Es[PVgI&_:WpۿS{o_̶#/L|9`o5>&{0QPPP@P@P@P@P@P@P@P@P@w?y ]ψ&ɮC`?h֘?|4T\3J5__Z{UMk9U_gy^ROs:,-.O4}r HNܻGʥ4x B麕gEZ)˴Bi9`-nu8oO,-BwԠ8sTH  -]2ԿZeo@?9G ;w[pngU/Qa_jڤ?QP&n^?-J)k(N.gdžoG9S1x$p0{@2CK&M7@_t鵡`V[iPFHr0uͨj5+z,mn`WM+8/XNwEFG_R:䳋Toe 5DpA=(Si`{'5߃.<("t4+\,pE0Թ9$_ Zi>0!,4&Z@ IHY OC8{o| aÉC4Z2.xgO̅ai$(XߌP ( (xt="/ tq8-"Cfž$ӯk ߭,ЀUr ds]Y-{5Emt^QWRTj[tjV hi}}ڪd瓁YӡpPC𮵦xUG5 SY-ml=쭒ݧx晋soPTh ( (}^aҴY,Oh~!|[v-2ATa&O 0evdO&VInLd É3,( ( (_޴ ~/?q^E^6Ywi%[ "xwjZa[%XdWR)mødbU2| SMyl+4y.8XԱ((Z ( ( ^'J|~?z?%O/ƽR񕖿{F<3j$Y.ݼ%:9\6D`ʄ,xM4d]]_{.&(%̕f*Af ޠ ( (}Yc޴QzYP@P@sLҘl?᳣MLOOC涡}ߚ2]?Mu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|3^մITֵ+=6 yW,QGnf r+2ʞ_O5]#Y.;:9ۻa8zPO[Kҳ?/l훸݌g@f 5#[o<-nRG|"%U> *(ḹ.1@8S+g*;)=  ( =֧ ]%sf%-"eޮOr&?|iA}rE_, ~5Sp=Zb0q3OWetK]mSzVpk;` 9&)~f]ыJ'5k2̟.$Լ)=']SwƲ BH )\@P@P@Z>?iZOh~nD?y]J'}?Vc@7]2}py&TlX#earrVeP@P@Z/ \coZ?zЅE_އ/WߢJ^2O<#GxzNe,/# Xcҳ,֠ ( ( ^'J|~?z?%O/ƽCmoE>^Im׷ 1n`܀2;e4-OLԴ/,"YmG4lWV2ApA  ( }V跭!?TD^,eP@P@_*De_lSſ"|_w挫|?fx3$DgJ8oq_=ы]ya/[?&>]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[>ȪJe|GگzvF-M=O*5Uxɩx?̳?igR5Y4a)IoTEȍfx6h >#I'ҶEiRJIwwؙ6Q* |-]F_tIS^_ByrNN@=Ǿ%n>>/Oq5ٮkkmy<1ځC ;OM-_]֭|;=REPR. QAg{P)$az1y\ځu{}[尹m[RG+]Gʈ \m2h_>3rxG)d_q^@F,b>bAH:=O_Qm_ z%LY ۘNc̈Q=K{W|?hw`E7;H1-*T(gC㍟o'ӒMFPڲc4˅b˅hkDc@LP@P@s?n4U.f}NkJ^7z xWQiitUyqea4˖H YXŐ ֶ*Eҩ%[guR/-ϫ;:}}evdjx x[*W.@ۜ@J`,w)Ղsz8nYj:K]dodH<$euG6__Z{UMk!JE5k(#]y;Uc.9fY/a4I%u6B4АJG,0x@ŽO x[W)-wvbR4<ȀgG763,>x.2K.c5sk\beX^AWh ( /24WCף_ \diBAk-_@t}wQtjK]:墑Y*#Rɒ=g4eo+STJo$L#obȃ| ( (}Yc޴QzYP@P@sLҘl?᳣MLOOC涡}ߚ2]?Mu*US|>F-u_Ň#lG_ ?sv)kj|Laz ( ( ( ( ( ( ( (8?5.GV3]L\Zѭ0qo?Ci")f>kj/4?Ȫ|Y (3|Oi KMN) )m$6WBUIVVe<1/x_B&X$WYG%r8tPika=761SA2IQYOH / ^,-o&.m*ńj&IU s ( ( >khIipfh *{H{iTrFu)S"z흪[ZkzL0E:@,c '#~%MkyfM7K|ﰥn8q5߯ͤ?2]ыJ'5k2€ ( ( cW购'}?VD7~ E>nDY ( ( 17_BߢB/ \coC|o~̰ ( ( ^'J|~?z?%O/ƽY ( ( }V跭!?TD^,eP@P@_*De_lSſ"|_w挫|?fx3$DgJ8oq_=ы]ya/[?&>]Z=|(ި(( ( ( ( ( ( ( ( (;v uՅ|?tp?!VkL}E[>ȪJe|G4F9*H<A{2qwF)2D5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={5 ?߹?={56;m!i܌>{II_d4F9*H<A{⚳! ?߹?hO^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{%;uao%'u' Iq*;gJfeg9m:qMTi[BpWa?'O?/^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{?/^{mm%f8R}MLbC$ky JJː3zjn*wsT}DU}=}DU}=}DU}=}DU}=}DU}=}DU}=}DU}=}DU}=}DU}=-!o5|f8R}'6Ն)]@@)#)z)Fn: qOqa?'U܅ן0~$Aן0~$Aן0~$Aן0~$Aן0~$Aן0~$Aן0~$Aן0~$Aן0~$AןŎ$fd9];qIm[@b ( (pq[ ]J @mJ芊- zgs.ߘ_s7[ִI%;ng_.A<'֋N[vѝUefx3$DgJoq_=ы]ya/[?'ß<`_ u$a\yk a_8gU = XEO*wo!eA$r*[ae7N7^sZj/|O|[꟨??/?` >'-Q>_0$}GG W| ГQyK_X/BOo=G/?` >'-Q>_0$}GG W| ГQyK_X/BOo=G/?` >'-Q>_0$}GG W| ГQyK_X/BOo=G/?` >'-Q>_0$}GG W| ГQyK_X/BOo=G/?` >'-Q>_2qYX{uGm,RU'w^TwBx_,':x/̬2tѵ*;I?Խ?k_|O~k_|O~k_|O~k_|O~k_|O~k_|O~k_|O~k_|O~k_|O~k_|O~k7 yedH 8t=E)Rꆪ_d_НE$T\ϱZ:`K.\s, ̭qj)(qtai/0&W{V:φ*ҙkFiCFbjP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@YSOҸj=2%|?]I"EZ.rP͆4l )rqx(ƍ h_Wg|+7_v1k:,=%g>DŽjCOyImm>ݣ=|(ugj_W^K=ħ?k PQmmh1I3-y'^6x*i'%r)w6kϲQ=_{)wh%].e>GpkϲQ=_{)wh%].WhNL2IXZ6 k;$[QmȜӲ]e!\Tͨ-܏\<#:}$gf>OzI{KCMFv_:{/JRk`ײdK{E?(Rv{/J=]^}e.`ײdK{E?(Rv{/J=]O A۠fn@>jR~3Qr=:z7-!\5~7tf,( ( ( ]_ $y7|m<'}W R-Aq8kDŽ*0T Gkoik 9kLk+O5X?i{k"֭*/V7@cԚ/}S?ط5ߕ#s.ߙ|bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+ط5ߕ#̻~a- zgs.ߘrwC^Y=˷bׯ~VG2+E}.XwԨ7.]8E[.y>#QwV_??q]/_??q]/_??q]/_??q]/_??q]/_??q]/_??q]/_k]y䅥_ ;Vz8u-FPh撽ӮNIJlRAlov+zrݿͅ|Gn?Aeߘy>#EAeߘy>#EAeߘy>#EAeߘy>#EAeߘy>#EAeߘy>#EAeߘy>#EAeߙS]Zu&˷չ3u{8&R?ڸgݿ/:cZ1Iki}V_տ̯G>Z n?#__]-7Ge[AϖEaW A"YV0kh}b??cqȴ}V_տ>h?1Z>/X}w|-UoG>Z n?#__]-7Ge[EI.Ϡ"ko/B1lݼcn_դo"T[|6SFI8;(˒w vަe[W#=,ψ"W҆+MĴH?ҔVcVz_?!Vjpq5wZč.P6OgSQɴ QIO+/N{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:TޟpҲ >S{z}J{(N+/;?:Tޟr;BeE,@OҮm:qi3?i$'|?U_Yƫn-O2oلxB;Kˏ̐B몲m\?*>*=c ŵ|<ϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߑzŅƣil\m m-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~>}||[Q0ߐ}/a __mG<~A?ڏy ŵϯj?y%_~?wkK>-~E>L^"SF>Ss}g J7SkǗ̇F2*|W=_F gSEZǬsڈ˟/C/p+W}{jGM#VȿoH˻?60EAo?fe{"ɿ  3xj=?{ywA5ȿoH=m c_7$]Ao~v_G/o. yC7?;/FMwm#Qa&˻?60EAo?fe{"ɿ  3xj=?{ywA5ȿoH=iZ$фgo%3ûwdE ,`` 0 ωB2Joeݿ3j5\^?/u4v-0{ 0_@Y:ָcMO kZ9o9_ppֿէvÕMO kZ9o9_qNU>uEyi4宒 ѴoZ/Js9];P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P)i?(k8On+x;#E1dkۥL,26qך*;~/vMu;_%6:.5->^rk+{ [01P,aI>5Y>g:pW]v 7z"L+5rM;ah]@o`B;5}mӍՖ4,&xsY/~/궚dZ=֝js4Gd)rȅj)/ UZM7WM-?Ꮚ<&m_:~`+VHcyVP$%bt;*D`rLƬW ӊWKL_ VF[fK8s:K opF"ƹrO=5fNt7S3zv$v:Txz;]FO+/af/HQ]UdMTZ#z9oZxY˚ m:_~j^*O+ô|QoI𥦁} I{{ĉX!v8d߄YX`3vv6'q^ZC YL‚2UC %]<)#߶T_QU_Cy-俉UP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P)i?(k8On+x3Yōo,Ť`|6V$3kJkhR뽎J-{{s{5,;8Yc(2O#"v )2&̷дGQ}=E~3xJI\6x$S]vr3C_\2=խAk6h,rA!fXi 31Tc"U$=lKYwӎ|־gvak}ɴ>>M;=PoFҿH߽tZ9#n[h5慢]%[-1lUUCu)vt oLu7UyϽ9sNO$fS@ڳdZG%i^lm$ᶱ4LEU~B1!IbҮK61,ۆh'^H(V+V3[hxyl.UEyT<~`ڸff](j[g ?TQr]HppY8zTRWn֩ zݶx{JԬ9&k]FW I<vRiY3VEm0n$8RƌMԧݥۻGF\&]/Z橨Ϗ6÷r!hH8 W'Q3GdY? l.[[>kfX6( TuGGS%i:Ni :M//A!;,2oH:Xp'Q0? <5?4.FR36zgf>WVff8 'Q0uX$US^, ~#lEWgk]Q1{XH񪟪Oc$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|A A;5G'Q0$v_TuGG;#T}R}m?Ge@QI_=|G~غ=~Цٯ";y tm킲*YON\-MuT9Rqk>/ o']}v74/Rϗc8Fq*^=7Fܥ__'UkH^Η{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_ALe7/4u K)-Er82w08uf4__'UkH^Η{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ{1h0O*k_AL? CΗ:M煵K5=>U];k 1$~tzj'w?u5=Zq=3g(j׈>8R"G/yi]i'pċ%ff<$|/zEX>nYsH&mdw+ŌArg[킂uu{t[i7W_;eom*ynB>m@ 5J'v:VE[-ػ8$@K`]7 3oG>{cιwO/n5AizĝCšl3Ogũmrlgj!VW!8a_ x?o{1IH֓-Ҧ|Ȣ("E&/&@̼X|C׼1ڦZ_ᴜkon$Fo<ADc%؁ ;;7\]Sfqcqڼ`h#"De țD}kM9].J5Iu+<"JB >s}laYuͤ)fRb5p-!LNP^o 㝭$Lnw3)UA. p;ZGEj>goa\]~uQlr ~&Na /$PjG8rؽCQquGi Mȷs__Kc_eũn ?37~៫覭x~//T}i:~{=/SP쌬Z2::Y]Hee  E뿉_SIѤU6-gXxABǺ#fi*E8x7^jjz-E}mXEl fX,Ȁ5wzUՔ6v\[fM6k<#@H-&>VaXY鉭Xͭ>Z൓uyI=e 7/S.m5 i/jج$0$fRWl+OHM ŎޖRfmb"8(f1dO~euOC[ 5r9I!!1\4~z7g s:%+o7J`:Q6 wnom\Uѫr4xՌC:`3~VX*@34zo&QѦa/5 ] +l\FA,kKٽ6/x).,yKlH&3 <b9Ѡ׵77ӥ-6Fadcdg)>_ɇrPæiڴ70Euqp{˻k%˃r?ᯆ~(ҴtI Gs-~c$v@ц tWž $k%ֵ;hd7 gkW3I; s 2vQaLk<=n!K3K;fv%$hP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@PxEψ_z;f~EO+*>E._#|k FHu=VIvܠ2_ ͊B b> =$^HL6DlR>أ'$' TTմb[) i,#PٍPŰ  񗄼_ɩxOZ>e#d1B`(ats^"_:tբO>|[%S{GfQ|3կ|/q2Eꏥi Ѷs: ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (<.|B~o7ֱ?S7}룐ǘ>G sYڱB4y|@Z*QgDӛX@۔r^{Ek| exog;AmGHЬlޯpFA#ֱ9jum.c&i߈zg?wNі՝X%w៴w?u5=Zq=3g(j׈>8R"G?SZE뿉}AA@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@m>!7X멛_AkCz9C>G(s`_k9|ψv>u|JM'hDO缟Ѡy?@'FO=q~ ׉5I8>$eyGbUai+#FEn&^tCKkq]fHcx,%yA!$M|Btۛ)u B{Km-($G3 <9p "!O|7[],:7 %u>">K6 A"Vw5 ]CFxOo:-qnHȫܪ IR2:OkI=oմ22dp@4oy?@'FO=h{}>?4}'h''kb?U0Q缟Ѩ(>?4}'hDO-,~(Xx1i/c'%ԑ [#0v(&iZ^[/<7_52D>B1cF7lX P|Dރz֚$S-v{R)d"1ьfXm&Pr{++tH[F![ @ ׇ簚^Y`i.f8\8wNRuV8l. ٦1%lܫncG- u !h7Mu Btu͵ض",8(TpUr*z鹺f\"Sm'"{K'` ɡj:֧k$*c8QƮ'?:4P[[Xg]*0ʲ8 #M缟Ѡy?@'FO=diͶW' y?l{ߑ0DOh{}>?4}'hDO缟Ѡy?@%$N M=8ycwg<`*u|nuq{WE R ch.X_~%U{1IH&9H* 6<Ssq@O'FO=h{}>?4}'hDO缟Ѡy?@>a j'q֮[/1ݚh{}y?@'FO=h{}>?4}'hּcǰxjm3Ǻd um#;Aa| [~g jr-60Kq["PogRAeU8,^.i|+|Ov׆F[Y!LyG9rd \𯋬?4}'h'NoN_w,Fw̻ &k}'j O=h{}>?4}'hDO缟Ѡy?@'FO=h{}>?4}'hDO缟Ѡy?@'FO=h{}>?4K-7A.55 ҄Ϳhffv.8o(xE*SWKu$/"1G#nM:-߉[BԮБIeTIkDb˓ llC|Dޣ\m-E-ۮ7*T#,:pHg AoujlmGvŶ d1Dڧ{P6|/sjVvO-n$O"C#Ht Jm}J> \YbԴ& YIVFV#+@?4}'hDO缟Ѡy?@'FO=h{}>?4}'hDO缟Ѡy?@'FO=h{}>?4}'hDOvY^vYpN{kKN~-pjۿ罣9?4ў~/>¼?ο>=:( (=f:fyx[O_-h`c#/ P |{-C]o%Z*Ə"C?l"Vd*6\m ޭcO{z-|5d!>gn9#,7Z>k=o ~k6Em=t01e$FC?'P@P@>@]J& 5 (3>j0L&gzi[vBX`R%Y mG~)| BخeIe`ۈ33'aq60_ 'Du-ܚ sq,2&;{'ut@ִBZSiuy%FtR#E)(qRD/uY|8%)dxR' M?Rñ׺ci;JhgRtJ6vIX'Tn!]vT~sGGbɄxë/h5F8m2x[L^S0K"Ec6M>&|3Rj6˽{}t|4x &=:VGhuL"Cp<P@> xOW=ȘlkTP@P-3Iׯ9xvMеFk}BTk[Ap~8<νO.[O7.|,;6>s^GmZXe^HYpaYxسlJ@)G/ҿ5;=4m-My;["o: R؉I'&"7k[/5-fTWGB$x;-|'oi.w'Ƶki#όiٔBv11IFLk7m,߃emZgS㟴w?u5=ZyhOzM%tgaϩ|+ዋ..<9K,]6fbrI$rI{<3 Я _M>ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG bw74*gt=亇${ ?_+O]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _M>_ bHI<9:»#V\ざ'O.y.? /p`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${o `ۥb3gb$ pHUzRpaK}bi˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò=|0nNk0F:͏.? /p`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rGC݆ZGXl TG\D)rn&QKdx7"-}{?3/޷}I]8G3€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( )\5pǁ-pjۿ潣9?4ў~/>Ϗl( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( :šW șx7"-}k?3/޷}I]8G3€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( )\5pǁ-pjۿ潣9?4ў~/>Ϗl( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( :šW șx7"-}k?3/޷}I]8G3€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( )\5pǁ-pjۿ潣9?4ў~/>Ϗl( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( :šW șx7"-}k?3/޷}I]8G3€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( )\5pǁ-pjۿ潣9qwgoo,7HƥHu$sa3OH-?Wr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9OZWRKKM7Z2JyFs1,рU'$ɓoE[^-Ow<~g9Zޱx9-./fH@.A 8Z׈>8R"G$uYxwW:U֫o٦/6o?vy>n?~< 6{kdi滷kkkbEdClg[|o[47CicYOm4F;Rʪ: b}!PC şXAa5ŅWy0-Z13+@b8VQxIQ/ ZN,!$np8 P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@PͿw?u5<=Zyoh[ =ŧ_ ly&#8+^ _eKS៊|?/ľ%HN\vg?/u?0?{&3Űk?ivx]&YK5q q B<uo͵{|y-9x<񕔫S~|K_"B卞eOukq0aekf3GyTBDvu\*|uGm.5SW7 keh]ǜ/Ɠf0joy\ivj:n |A"$qyiV/8FI ¿CB/{/~BM\wDq&3:GāpAѵ/ xB[,gPյ;-##"¨^-[Jf/>4I5\ $M;"4rK_( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( nƾ燿SO-?yueFHaLbЌۙZuKmk_?W'$}b?Ȏc/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/a_?W'$"c/g~ZLG.漖;s )w=#s޾*{INz9W'VvJˋ>*<_ wP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P.iWpSN]|E=okKs -Xr}P/E|;?gg֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jp/E8W֩wZJQO}jsɿjh%ھǛMczzWpSѵmWcXǕ:^^%̊Ss}w*d#u\K=nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#׿q Hu\G${}.?ᣒ=>{?nˏh`^4rGۯ9#{Ru9R0AsOv endstream endobj 30 0 obj <>]/Filter[/DCTDecode]/Height 538/Length 106280/Subtype/Image/Type/XObject/Width 917>>stream JFIF``LEAD Technologies Inc. V1.01         }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzw!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?<}o_aE5*䆔Ŝ.CY, -۾;|=?,1De&^JQAI6^W Qu->hm+vZ`S@#@_-ZåhYKe/xSA %Z=gH?$G_O$h  z_-3?YKe/xZK? { TIg@=/`jI,2?-SA %Z=gH?$G_O$h  z_-3?YKe/xZK? { TIg@=/`jI,2?-SA %Z=gH?$G_O$h  z_-3?YKe/xZK? { TIg@=/`jI,2?-SA %Z=gH?$G_O$h  z_-3?YKe/xZK? { TIg@=/`jI,2?-SA %Z=gH?$G_O$ҿh H?%G_/-SA -Z=i}jIl2K TKg@=+`_xZ[?_ {?Je/ zW-4O$ҿh H?%G_/-SA -Z=i}jIl2K TKg@=+`_xZ[?_ {?Je/ zW-4O$ҿh H?%G_/-SA -Z=i}jIl2K TKg@=+`_xZ[?_ {?Je/ zW-4O$ҿh H?%G_/-SA -Z=i}jIl2K TKg@=+`_xZ[?_ {?Je/ zW-4O$ҿh H?%G_/-SA -Z=i}jhPe/!?%.KGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGIeGlx2=KWh^.%y#\/$'$d&2*Ӓֻo$>|ދz+(p'֘?pu? _G#>.~ V!WdCE1I ҼDTIz %+fotwĦ+z>'Ako^VUsъ0Ҥ+۽408KN_Fx/_YT q(DNHat+rI89w})/&Y^1&՝8'r?O \^kjèS3dg|׈j7'זi I.ȷ'^jW얖sY][>"j4&Y[KݿcIܚ<;&mxK/nX,)bxJ,&YI{-ͼ,Ѷ=sq?ҿM^. !'NZV|[lwggh#$]_ox/B_KmТ4i>&K]s=xlnu^`=98s]˗V_cӫx9Rvqoᇄ<[-]Oci\qm*K#瘪5'O${mr1GZZF6݉'j + $P=$V* lS0] p3˸ uF3Kfv]sl^U__Es;'o`=6cZk,sae!iN=:5(*i&ZӵO]͍:׃VOZ}oihw%ʣl~XP2F|^wK^(6'~X>n9Gװ>>wojnw| ?gDo.gUЭu֍3H," }y.u {8Bn)u$~?VutQ%{Z>~;7sx{~.źVΜTڤϵ\F7X@Aָ\AW/kCsr[k5uW㇊ZTj=9o_j>[kzk-2ol)el$`kܥV*E;j;՞<5jpU'm;}> 6=r(̈́3!I_M˴s#9MՋis?yi';fxJI=]{6o>y^j rm'%1>@Y6pW9À,/nJϳ׶trNvzw X< 5 |'Ik$Wӥ-1Vۄ*9`zeV7W2Of-̰ڔ=-X/&~*7 qkmd1Ʉ͖#0䳧}譀t\Inֿy=ٱ=========((((((((((((((((((((((((((((((((((G}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.}Z9B.{|tqWM\ *SJ{..k3}q@X{~W(,ljGYIu}*4ckZ;i O\/t~AmE#0GCu)۷MXo_xm T—5f Gm(8ïLq~gT˧)IfV[CsY %Od3I|=}ƿS% Ў+V$nf+K.13'FawqZFu?4ff"xo 7~%R=@-Չ6{Hdi 93sۧԦovRRm=dm5S˪aV0%fS^.flaYuiaIHڲe .N95"UF/Jj I'nϩ3}WNtڒ5殊~ִ+}᛻SΌ,mʥP*s v5ٞefxE(r}?N6QO 9Y:y~2΋? 5:N.p.t`T1?rL|J+ JS$Z[mmưwk iƭ?ZdYj֑X%(s֡r?.M>X-FUiU0q01fAciSկj/o+6gmJj}ok;u5g]^SŶ,5'6\LfnWq^SK.$ݬ^QN5lTdF<ͤ Nʲ~99TS[t|>34x m_ginvk?/5;Gˣeph[c6*~[h89r0V^u9Jzꮻ`Nk߂\ߎ=I>)x-Zvq@]Od-8]##F(eR39%fZ7i5i.s)T\ZJOkE'⮅/=WDla.NH;N2>ˉ0x_IG'fIUjMoe'=4zDĿ I{i='?EI]Lˆ/"=r0>\`|-0tFM6z}OeuTnOMr;F}Jm*=VK{Kitse%X*e@Z%~Jpq_κ?Xk٭[[{#qNSqok_ڜG}c#m)\hznx䲎"i#Ł庁dIO%)kʧ4jV+N_tos\%|=jmQ~3|D'5;Iaep-? <9axR^UJꞻ]o}ō0uV!FiA5zO>1xR_ce3-[–ψ\=}~r#ʃ؏G*lb>=}~r~}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=}=bt5?l'؛TP{`zʎT>އ7AM*9P{`zʎT>އ7AM*9P{`zʎT>އ7AM*9P{`zʎT>އ7AM*9P{`zʎT>އ7AM*9P{`zʎT>އ7AM*9P{`zʎT>އ7AM*9P{`zʎT~]P昿P))%>Ts+{~ϗ[ֵoIm]CLV9J?:_֔ha⛳mj]<|tVN\4>-(G I u[v4SSvoUUxSRҟ|"m{:Ưm\Ʋ|+`g5Y/̐Dkejd^H|'_~_I?Y#\'_g_'3 l?$,W3 lI?Y!c_Ͽ@?5'eȇ_>wd%"7e$/uM*ySy[HS ᱕\.m?ew ~҇W.~|}nK_ޕ7mPG€OqKż9OvQ"^/"qrR^k}B$,T/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/?~;Ѐkgh_2OS0}B|?K/D?Lo+v$,U1gߎ ?̓~CT/OgώO ,?$,U1gώO ,I?Y!c_ϟ蟟Y?ܓ~CT/?>;??4'eȇ_>|v~ieh_rOS0|D%"7a }?K/D?Lo+K/;G_W3o'_v$,U1gώO ,I?Y!c_ϟ蟟Y?ܓ~CT/?>;??4'eȇ_>|v~ieh_rOS0|D%"7a }?K/D?Lo+K/;G_W3o'_v$,U1gώO ,I?Y!c_ϟ蟟Y?ܓ~CT/?>;??4'eȇ_>|v~ieh_rOS0|D%"7a }?K/D?Lo+K/;G_W3o'_v$,U1gώO ,I?Y!c_ϟ蟟Y?ܓ~CT/?>;??4'eȇ_>|v~ieh_rOS0|D%"7a }?K/D?Lo+K/;G_W3o'_v$,U1gώO ,I?Y!c_ϟ蟟Y?ܓ~CT/C>|w%"7a UlI?Y#U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS0|D*v$,U1gϏOgh_rOS3WßiU&v8h՗s``r fC~PoiF2bNFEa[i崓K~*sW?'_S*;_&3TftsCG#kJCKF2{T'kX=*_!eƄ[|("]E6"5-b)p"71-n$6qϗ%M( 5(IYt]ufX|2+mI'Sqg? EqYNcʎ!LK_l/#4?۝m,M|u TpFYGQrWTz>Zi!ekNbץ՞oj?n2ek]#{ubYZ RĶ HN|n#AX]I)׊kc3"Ȩ<6 ggjY? 2c>‚5υx Zxˋc* ~<;O=/m%垲$q$ IRTA#8$W#&Ri>ٶ1R\{r3DխͨiKms.Dm7) e*ԟ(>_-)B[oo J|7a]WxJzPKx}BD++I.mt/ ʎX @iO@2]>dhY4d`Pƒ@?K;5k]oK,oT-{8RO BO2Ha 7_WޯY}>%זcmḶGā6) & g|uஅon3M<ʂpHoPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP~"aa(zPQ4?WRϫk?<VnHUI'C? ҵw>;λ/˾E\7<>)>!u{[[%Y;ki&bT1)!o[ώ7@_)tAfoCȑ+MF, r{-IcqoŽ,Rt=.啔E?z|u?ZM/tTZm̦ T!lbHH(o>: nYƲ[$Ji` 22HoX[qom$Kee# #@޷k7_nֿSu]9U5s)t"[)p31 _)to[ώ7@$j>lmk*̀ '2Ė7[j*I#YYH PZMz|ubNi|MEa]>ȥBl$|€o>: n k%"D6qf $@^egͮw5èM%̪Ccr!)ހo>: no>: no>: no>: no>: no>: nIc^Dm([9ʩPH.^/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy?]DxbJ$ _%#C/ /{.ռq:GN(oۿWyeL>|#;c>O>a۳;_m:FTR7etM6;dF]!81'ڝ%(7c)j)\@׵jiN;yf n*rYNX y~X+ͨ~-]^$ޡH Aֱy]e̮_w/RgXxĐ|* H0C *ѝ5f+ӭjnn#:6)@W:N,s]Zmo#N $vVӵ-5 .OnJ8*@*@ MvҘ.MVDIa7ֺe K|af†bQ]RhRm-~%xX6)⾽H=>kE?.pC!e h:C9GyzutTYkw3kq|ݿ2`V xdw-仜11I Mo\g@x;D)hF1I[&7pڠלstETTѧ֞XnHyM'j/mUM"mOSr IUTYUP b@]:r%+gV)An]eJX{Q4ɞ]b9n`ee.SB +|)U2ۥmzۧsç4~:qvRk[[FA4g~6si258e$Gg AY:h;#[̩,ÛdGmN ( ( (2u eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeP5 s$>[MO\aՙv[~'ΠdqiyM:~9$q83|;ǫZ1q809GwB\RE2(((((((ǵ/@@@?/OE?{ /zZ}Qϛ𗉥EKg?Ǐ:GN(oۿ><#̸I?gϟ|7DqlvZG2շxNѶt׼];MrC귌?Yv2˖g5XTKȵ 𭭖O6Q4W5ybj]USWYz%u_jm@Sj0VDz%Kar7Ehlnpq*p皏rkTt>ɳcZ]w#ʐMG:4HmۓV"R%14piFK+%mw]o}|6yצm{Rпc/k< eg"x{wmmm$r@-92H*?&&mF),Dd5a$ս~E^_6}OԮ<'a߇t{CksVdLe 3LPWR*MSj|_]Zj7 %έ[VTg1`1&v<eC^۽ϒݟ3eFZ~mb5itd㌀ 'uH)4_[襨,35~]\\h}2A 1g5(_ʞ8u+BX0G7U)^<ԝ:Kzռc>OjP"S: fgw!2dvfS{gYͅH0%R:mGyzuAO}|Gi{ WdeW0̟X}fWkY=lpFk]ݸXۈ2)1fRr2O4O7x9Σj={ԱXHBSd["txWNt[qeqZ1dDa# r;UҫSgeЭ:nnQema4zm cMbddzUJZ;pupԫ):kψ: >H-)ִ *V r+,x|j+Y?;tzL}_,ݩ&Wk%}ծγ~ȵCv7ַԁ +˴U }* OFxm׽bg^aIڌIdo?/NNc?i~#Əņ֚<$5D4Z5_]98]yRӚϦpxkpqO޵n.%i:ƈH.;뫻u&TtuH㵌(V'B 7sQΕZ+rOi+{wmV4cJ<^_W{W,^UTQx/J>xoJ-g4}2HW#rK ;%Vnrעm&;+c0ӵ]ޯ^s+#§2k?mo@2;{Þ0um}a>#xvesKp1tϸw‚ P<M߼` -#QiUaF lYc;Nax2Jӕ>\ќc5'jŝ{YjG51Be_j`d:^ ZNLSD?H]B/UC(>I!ܜiUreF߉.k  Ɉ9O?n EWcRe]./C](*uJ;g>nE j!W+eQBG: P e(}o ~iz?~.6~!;ķVݰ` 2{w?^Ugt6Z>+?_pר(Jū9~gM)| _[v\j;u5S4}kφ8ntvѳg nۓ2qʳs{i*q$[&hKYxv? hsTB3h7 _x L.!dcR;rT3e,Wn/?賂䴹+mh?ө^>?"٤pmO>MyyٻnvҰ?imzm>O{[k[m1gMCH]&obq6b]sYGB1pQu1_tvKpZW|)-ԭLq4!rX嘞OzJ4d4aF 5d2XqiuuWhAA{WE*58;49ӌ-k [{+l"XXz"L')nʌTRTt_EmGZΟ Qq@FARg w՚5Oz2*RR[jt>jvֳbtu9E>Y g˾BpL> 彯dj*f)-+.I6mm>vmﮮ^&;OLUhU=9V> e[V~Э:6-wnl󓞴W<op1ͧJY^W go@> 6v':o+ ['H@0P擥Zޛg=R­-#)pq?x,|Eir V B'Ep Ϲ > e- t+xD;xp[33I$'O&ӯ%֑qXHcXnP)BG^toIKִ=F|y>aXp@#=c\ɢi&E: 6HT!XN?v .8t /|_XЬ-uH-l". 6Ȫ80>n?ͥ̚&hZsdB` BJV85uyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy~> _Y[ ֞%E:Nc>]Cy_ .u!HvMChinFjg|NW*Yu/3࿉ߌw_|/_ \%Xl|ݼpJӵzq%Jp1&̝ ^n5Z |@7)7Oxkۛ[g8!B6H|NiFT8BR9CfFZ^:_ /dIGn+UrSQ[r}k|`|g!-= =X9QYCQN,_5)Skwr;I4qZjZDž~2\hOu,0iĒ2LWL SINB%;ጟ;]sizҵR9pɻ^ҥ>t¾+M"~>͌#4 R 2>*0aMxqogcqWQ5>6[fְڈʅ # {;淫S+fަV0x6-߆VR!krFRyp1ygQSZ.T-^87}HeyY Kd0ݽ:xNBJ4`,|e"ߌnڠgqIݶhOKE{?0J>Jj_O5f{^xB ((ۿlP;%iNYg?| x` ~SsWb*ngomnzstGгր;;%ioqſb&Gګ#A F4 8=tZ?ttгր5 ofuU3ϰ`,-NgNmIm[GqoA@N?]:ր;;`,-f`HF(ٝc:}f$ 'j(:w :w mhӿYӿ[k@[h[z)b`$z}09x c@ӀxkONNgNm:w :w mhY6gXΟkY 8ڼ gBΝZ?tt=wX:IjA4/?]B ?"U$Pj2?cMWW@MH%ybZ3-UK+0(P?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?s ?.<.(>?~?xH ZzzPQ4?WrϪw -z|jDQ `2H@_zlڵw>~QI%rv9cl?ac*\iS|5/[uX^\vk{[lF \`vIdH鼮ywH-/_]Ò=? Ώ5IefV jOnp pb~4ދڕA.Sc: hpbwU]ׇt.%ОKX&TѽaWTA;~s˸rG/_]Ò= Я _MK}bhpc2 9lo{hVZEKenI؝ N26XYݻ&֕i|1Mѭ,#noomF=Agv$@\W${[~}@T[t'TH?6Xt1V3`u$$hpc7w ;m&k3E{'MNҾ- :T2y99#1/!𦖱Fͦ,N2yVG<${/_]Ò= Я _MfxL )H1[F n,}ђI g rN얔mdi/~[կ_V(;vP}I%1\m\i %j4YJ<ghxJWV_X"2yaX Ops˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywH3<'iqiVQzdz ?jC8 9;=7И6 ttXuOy٪\)#=K]c_ Я _MK}bhp`?_+G<${Yg{+BOm:tТ*[/rN\qr8 6kß 1^#Kbi,~su< ZIcf8$&<> ? |U6ohZ[]iR$Wwz9.|SF1\]Ò=C%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${.>cW.?O͸(LcAնFI 899#}ILgbӴzbFNywH7t x: |)wiFFt U#.K}bhp`?_+G<${/4mEKPܛ% goRK 9 u giIJodM(+}io6Z~?eYv!"=[pzt애ٿ[~[/9]=G>"ZxCK*THBB[l~Vr ֔218V܍[7wv0mcEYhcp܍e>GB*Id/<-s_hchɾM4IGF3FAjcZRo6wKF'X y3j_/f֢MRxujIsH償q$RK_}̧آJ\k*8%Z6#ZRJ_|Q/_؞c+*Me ]G<bxau}ȓZ5yzjD7R:D3: "O;hU%{e_-𖭥zցbכ[= ڰ ls~H4#|:GAm~lGr  As˸rG><]Ώlle CFgc;[<${k}&]FV2C7-NHlqFܞpIG<${#oz.uKĵSʹAn ]Ò= ֩ 6KѼK3aT .;|'w2i,V.44\34.c\1EW `M4 Z'ςB{I"O 199# /.W/&ywHC%B14s˸rG~7Ҵ+XtvӭwM "$N'G,s[kJw|I7#f vf rM.yw+= ->aXê[[:Naf*$T$gM#'<${!_E99#? /.W/&ywHC%B14s˸rGx[|??D++]5wa\@̸E U mŶ5Ь4?RҤԵOKkG fA%*7mr@<7E/vP6me"n#yC fH˄`⧂|)[iz^6SYi"fۆolǒ|€Y*ߴΓCiڧ5x Z{&PWvR'B /vѼ/}t]{$,["Oa3^woZRx3TдRD//I,ʢͬqGs)-cᨴ;}{fCm G`R`A+&A-R|E)@мG}cM~_ZIg1Xڪ|ݖ{dIr8w] .L yhI(d(snp:_In*-ѵPQW |G׃&x"hmuOꗓi@@:HOx\9o #>X0R_Rk{% J_lU?i_բFjI'mm4ktn ϧ5^}EYJlsst~,^ ԯ3x{)nn" ۽ܨ/S/fcVs-eh̐1HȠ(7RxGu#V.u!21fDod1 uڏi7ޕՎ-a>,៎5imwcdV(SaVkw˳YP@<>:]z>}J@iӼ_Si$03?g k^g[Wo9.ucORf]1ԑUHrbb @sFJwL6<^Y_ Kz?n4:{XQnccj 8#OW) /tX6" ]PjG&rH wsox>> `yDBE6JGʋʮ$l'}Y,%MTx;KaU̪)79*Bۈ;xw)%kwSC׶o1Vv&ddu  w]⟊4 w>񕤖sX̽nMė+c{ዯ~~Я;?И^fB=v|k / Y t>7/%V~kFezg|K?w~$ mTZK^(.ht_0ų,p7rHN+-hp)jc_YҼ.t"0̱e,@f/g.V_MNn_j&xnO4yeԗc|2S,[$v"RG5}-kVտdu[lu 6i> A\*C9˗UJ.3ۿ*N;_om<} Ny=O)4q[ky1}INdz_Rl׏ /@<4k'Q[K2qM4^eFj]HL𦕯R_\t[M$w!4(dv9PϓaI'ݟv5ڽme=+62h=ܳ"_!\#miF3wfU{u埆)ҩkGIG~kT#Woitg-#ܰ0yEρ|f-Wó'z֛h.`Ai[sII$[IYM^뺫OK[+](9$6R}R P~/Nk˫~c^'dO;;5Ϋ{rF"Ӓ0 \:f׎[,{+gKPI 2Z$Y;H?*(\`u?k/jW I"fQ*\K;ʴbWK>>kֿ5?\-mXAm;^$s IoDC6P1#ҮtyY40&181D2> v Z?~ |0dM~ L-gf=Ħ3$nb!֋I VV['ZOm`|(zt~&G$jNJt 6uid(VXY ʅ\Ws(g'SImٵPPP@P@P@P@P@Pu' ^C /zZ}OEF̸hU~p{8Ċ r6ne>kd9+_>L_-~[8wr䏣?3Z>_}e}_-Sw/H>EMן۟xOSdwfۼdݳw;sG/o_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ֣n55мۈbwBHs#g)Vܿ ƷYxwKp_?A>"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/V֮$ЃXLg.q7N8]_ܿ xOg_-/û$Y~_{ xwG/ivVui~ E{`ͽ3e''3G/ ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_Ku]sTg/uK-gI'k]e I<>_}e}χgqȴ}Nܿ ?3Z>_}e}_-Sw/H>Em"Zӭ^ - r_S$iLǶ),W/H"ݾEχgqȴ_}e}_-Sw/H>FFjx3ϳ\$.k2ˆ$ Sw/H>F?3Z>_}e}\Q7h^m1@u;QaN Z_}c[,k|_}e}_-Sw/H>A ?û$Y~_{#;K| `. 0W 1>}Nܿ ? h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{"uASYhJCr6jwEGzt g]<<)ke[*{!k ( ( Òk>Puy/$ EFpOJƽU;mmtVdtRǗO kû$iχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}\Q7h^m1@u;QaN Z_}c[,k|_}e}_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/V֬n"Ћ_'6q4N~9[ȳ ?/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}_-Sw/H>A ?û$Y~_{ xwG/k|"8wr/ h;Aχgqȴ}Nܿ ?3Z>_}e}ˏZW.y>Oۯn<۶n3%lӸ(3JϠ?aa"Ia$xPoz+#Jp'&z>?_+_s˹K}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywH3u ^-{@H7{"(Z0mnU8=g.MhR@-b¶zֹYɧúNp2va7#{1S.rG{Pt7Őfi:}o%Ec;@23]i7%Fa^)GOT~Z|r]ڿxIG~:|ux8zMS}_bOHմW_zخ,DˍѾvʞFhum/[b4]JQ>U՜,OTe$AphմZKԬv})7'7FqҀ [KլJRKYfU`ZN3ր #V_eVwb{KLy.7FI#*y P@Pm ߥ]iRF%X5 vBH 2gP]ڽ)s ]AK$G,p}hf6"+݂"feP;P@P@P@P@P9AE7}>|[=Je|jp')]ޭ{jVsi>koPr#8@( ( ( ( ( (u [ ﯮay"D2xI'd[x)t{IS19ۅimSn熛Vzޛqo)aF`;p['<`TּmWvakGOuItS6fNF~ ~!Bfu7KFe/{r e4}]GVR տ<]CbQ%[kO w> -{}Z[a2w%,R,Nyh~ 6edž6f1]v$1*9\3Bca@j+𶕯ztRgno#y1U،C6X09#x~V/wۯ#}*Lzmpoh7ڿ+ ]R?6{Kѳ00r3n@P@P@P@PN#?_#LG'?+9Cm_ ^尿_?C\:I=_&{>O*O|$(^2ĒXva(ݙ.k#?e[J"hztRڗno#y4jf$b4:M5OiGb*nNW4? _y/ Mjoq>Occ?2҅G[WbŹEO&u/ZᎣ-#G+.vنfVu` Uf m$o%fFO ljn<;=it Sܱ\-B|h DiQ@?,(/u-cF\އvyu /X;d.2LdHJeqO,@'և?)Oqs$7dǗi ї .7ƀ>?6Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Efi㙐2m#j>ALlou%ʲBC ]2XO;)݉966YD^xufmbKeXb\4L{Sq=0k3Cux {_˨=Ig;ݜU))lxDkUu S[h$Tk 0CJ<+3fowe lMo1=̷;si4dzyb,)pj։-OsUբGTOS l21UU}ĵ.K~muWg}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}GJ3HՈ2FjgY4xr_h /xPqdBq+_-61*P H"(Ÿi4>}Rii.C\ZC]4 HVXLpyIT.pѰ及fZ׍儖V8Ob񃴼K akWv=s ;>{%1` Ƞ1'ceF(oPP_0Ц~jmz|+VTo."w6sr&>&~#?;xfѴRFίK[uHr@rI\{7&GdlOwvW{ u(HK+ #8ۨ~muwg&!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E#'ku2"pX8KDM:u $t[CD@#֦ 7fTKCh }|=qBYnp9E$w]ʍL(9ș[i>y-a=CCS~$5+w+.}F䡝Ooc> ԓRX<;}GD#3,a0r3_"/_cٿW|nt:6v2{ɧj#WEfy>֠G6)sĶZ_|Qi.]M]]GZtH81*Q[><^"{ ޷>}O]d(mjCHvo?׼)xF_jQ\LhH/#$Wed9}%I4OoD6niks RTUlGuU}ĵ.A~muWg}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}D!H]^6`R2Txzt$fr`<1Cqkq$r؂\p~ʻN./ybu H|/+2$S7g6LiW]7Ois# c8uJ31boS?;/T?ܰJ<,/WO>;//W ɿ|J^z //ԳYP@P@VB?V~!k/24|~5BfXP@P@P@P@P@ȆAcW财{Ga ߯5a@axG%h/?qhBY ( (+K!x?댟+E?U5@B?PPS]ֿ ktUKSڨP1%GYiB[W?P/>v!|Ssa}wMj;{hY}ڪ2N(/{UP ( ( ( cW购'}?VD7~ E>nDY ( ( ( ( ( ( 7-!ZUߩ7-!E_?zk2€ ( ( ( ( ( Ǫhb֔?Ȋ|zvF-?*m_f,( ( ( ( ( (+K!x?댟+E?U5C#7"&Jr(zwKf6G m#.Gc?Cm/JwCjXo%'H~?띏^?Ço#jd_޴ ~/m6/'HԬhY#0[,G#1  Ċr~6q4ZF7RxQ.yU4T ʙ__o^&]]K'KU"ic rʯ=׾7ms?/Zv=WXKHW;WUcB>fj( ^'J|~?z?%O/ƽU$qƙxyA/W:_/4s>-kUGBEM *s:A#1LUhB9MigV䋷_gKH ( ( ( ( ?y]J{GdCw ?ZQ=G)t׭<#N-?K'@USL\4q1Y?~!--ng]GsK]jmx,ȖE-j2iC߉"𞋥iN{k7wzwFWvE:Y YmYU>cee[5DžuoR/sqs 4.1:9NizF "yAH(GAW%k**Y<[z5F_kZ;D\G-4l! "m|d|umMNv%DlK8 D>nu/6.#ώ$&~&'Jon,]9m)6* ;7|e7SYx{zO!yK/uȉP^JIt;D,8Y[gÌ#3nO.P@*pZ޵s%xS_W1n/gKDnnaL."4T۔5uU>uay,>w-}+M+4~R (!U@]%|s Jk:h]v-oj ɾK&Y.`" 7__fFi2[hͨ&-~Ю-]3~л(A uom|%? YypUnd _ xp8B-taJ&k5/{ErՌ킔ߍSx}3Iaav֭rtwү,nlYI-d l@DgiJ ( _V~7E?z _QW~O^ο~'\~ +)oXԴa`oZEo P}hc߅W YM|0rߟIJQKݾzg<' 2N:U9-7)~2v#gˣIɴ >-cꚩouswcwO{((L1cb22œu+ɷZmΌ2fUmNNѕ:Qt)OMI~Hޮ]w#gƗEtK]D[]iOtMdghUZ2:ex G|<[՜/UPM%6zMyK[&n%Wʊq(c{B 0؊iܚm_vw^ݽSfXt#Y4c8B\iC=i$wGK@W]le+ױBUdܥnWk[^[eGBATUbΔVmNmZ& vm𯉵_L>;֖yEoYcnXDp>}IQj7mw].¥䒞>:u*:Rc%9?kD)9JJ˙PH|=azt糟OY gl!PFU՝5ktr~vc!|ibZQSSi)(ϞΤwiiʽ-oeĶIoiz0>,KbJʲQzOɧhrg+eU`?yA5tQRzw77?/,TҴx%rW`*-!dw w7q+oN]=Y YD*ToT$){Gߖ;[_._OԓtW:.&v(n_fhi`$EJpmv㢿ҿt{p˸Z78ՅT7v.knqZcZNSCKyy 1I$j<5 {G3a7)j6FV{_m8S*kUBMw&a'8˞Nt"IOj7^6l4KtO+C ";;H\`cGVNI-Mn_3xw_gOp9&7yN\nRiF1PuwNj<i[eu{=T `!ui̫bB)$y+;jN,&"(q1IJ,y\__<}|'<97MB(Y<-ٲf`I6H#%AW~0ٖ"Kuѝp^QxIk 7ʢV~[&׳-U7w'EѴKNY+h':PC!̪6jj*ŧwfӵ']ћik*!8R9J*NI8QOXh=C~g}M:AIy20p+ߧ.hw3Ua^tl+k\XWvz]p گzvF-iO~aǪhbO5_A}sK-r2ڛOϵp$&uU~'ey M)yއZgj/;oy}akjV<""8;0>rkaUJ ;뭹잞Wҿ ae`+ r G(Z͵ksJ>ĒqI#մ-Ծ \XfgeӴ0( mvrS!O_^iqnv{w~??v/ZչjJ4x覥g.d+_ tm0xĶ meJ wUTɾS曃s:M)I.|?&W"me~弬f{Ї>O?S? ׎ӗNmk8b^|_m-z[|S{eʋS$F.p+)GW}/QS Ч.U~~'ϪhZ5uLbZYxYf;pW1Ϊ'8ϧ_X =YI'I%RjIrUf:;x~ Hug.l(23JfGT˙]qj0RIY{nZOK)li%Τi>'5`Rs=8\k.[ƶ?> $L^,]mIsH(Q8ikjRnc<'u."jJ\X[z]Zxgc~,MffƞM/!CP qUU_c4{I7^z?4S,(N\ו7JQT{G߆ʣܫᏎ,߈5F_ӵibu{ib Sf0qϖK7RU}C|wֱ8<%YQ\ZQu.ksV>%Hdލ_\x2/[ج$*xEv,_ḇ[(v^ {JN I˕ti{%mby ׌ay}KΑ4VY[1@^+iKylC,N{RkO&iG^AO(e %4ܣ8I'Ԋ2jnu$_εxS:O:Vq^X^ 3#Y#iFU%Nrߛg&eK UMS)98۝TG%ksX׮4_x^4}#r>TrB/ eQƢ.f-zQS Ч.UM,v gi=y̤*6cDPr*8uu٩٭5J;mel0Pt:96jTࠕ7%irsj/[/[ᾍ{g]mL"hdEYVʢd2>&gV>m՛}vaC0YeZKZ4U jsW4_j׾+xD šܺ=Y˺MI<~I 9-kS1 5+{qJϺջ} 'u."jJ\X[z]Z~/xß}Ge&}>k*Iח?Ļ烵r7|νkxs+i佌ԽJ*t>o};/ݭU]6,ZeW\+iOXA[ΟV?xiw>K"M󍾿V8cQ(]=Wu-nWS&R%On/ 4ku'uZ_ \diZ/ԇGį%a2Wvu}?SCE ?ݮz_58kow>ֻi]O?_P뼟Wr׸(p_?C\:I=_䅓sW'ؕ?__S\ﵭSJ-"M_>EdY°$fDm<1xsGI/'iڼr|NI0|g L:W7RJ3,oi yˌU2nhkσ? nt-2O٭\QDFma|7o%_Ø;{KY-u;\}n"`(sY𾅪F-x{ϸ]|9Ivk@VB?V~!k/24|~5Cݗ-g-L" d@#$ҒV(Z[VQޚu]|ש|EH%g+{Xf ֗ )}"!1b 7)*^#2 )I+ZwNǩg؎LovZI_{5kxJuCWUj@I|UU }* ЧF۔xy-3,lPF ]}_oJտ?A܅pr/gX-ǂi }N ";8D"y$4Z9!DM%j>ſiki66tP1m,yׁ4~cC~ K}u5GT4n`̬Zẁ͖ f0>oqោn #o_R^YL-ʗVv:#G><]N/jZd,7xv-abycέR]:njNOn$t.#ۆ+X|4:bďpb 53I["f?<(eMl6!w /f~&izeɩxZڵl3+圱!_p/,Oi~y4ٴk[2E;w3[~Z@9o|d?t\ kVY QFt a$߻'=u8 ō ,htM!@F娍 QXm~ !Եvմ+Kl ,+n#F$2۟:l|Aj_4vk5(aH2i,yѪ4ɝ[ @2#|3G<sjl"3E?1U#ul^2wPxjCwjꖺeݿ8n6Sw6@C<5 oϝIcn67|B熡Şi6dh3wMMF9.bVXA!<6q$k_O-5{dmY 5cc6Xu>| l'KbGwqx9@*( *mM>y%C:2dtu!Օ]]HeeVRA h$ViLwu-Ą,ҳI#T@] f/? ~ KKypv-#ڱe G}+{IbP24W>RQ'yyed_g7gVuC}ϓw>Sjg7gVuC}ϓw>Sj¾,'Sgx$ r;%D~&:Z(+h)iW~Sh)~7`Y:m_4_.O:8}Ų39Ҹ#FwZ5x3_VݣZIZDI?3<|!z=-(-aw̒E#'kNɬ0* 6I5Z=Zz꼙.ʪr=ac$ZRnZO)]hvnA 8&3qDUJPs[ FN1k%dǛϳ D)BVҔ'6m=^-,$Ү++#h,]qQ۽^kɝ5VucQ^RSwZs2(mxo~j.ΨEqyq*vTJNt՛Z/f78ӡnN77&<2x~-R =MۮJPx7A֠tȞ"5į ۥ"f)UБ]t4)IN^ڻ+e7K|׿kѿ58wڼQٷ;~9}S!}Z[i~n{Y|V}bᗂQ{{u2&Gz-gK~jD#gXWPۜwjz[y[SIAq\SI݄ ҼKorڭgtv*8tB8< lӻTm4;tcǻk_H#Px=WQ]3345ïxkZ>;7ͨ}Q̮_pl̊p:u,  SqNW.'bh!V(B)4gzߘj_Y|AwֺFgVHhl|1 ДOw(q>gC tښi^ե4TO~E4=#h]12ܫ,,Mۏ+lqSAF0m{yso|_JZ*]ps.ofӆqxKnea[]}X0vidyljlXyh&Y[Y/~mtK?ե x>hJ5^g(լaN*.r\ɷ{/ h^}&UԝdyʨU,B5QSwݷOs^` D,Qcwwh(z_d_=E4|;(U$$洧ӊvZU\]y+;mɽۻzib9xwGڷj7_w''`¦Q"߫7x̹T#VvZ%{_wwݜCV”G]E [ʲαEl8vc01^]kuRkګ$9.^i8&vХ[g{R(! J ϖ(Yqnz0kaUs)JIBN.+_*U-мuۯ k^GߧxBJ<ٕ NN4%MI;^%.'bh!V(B)4gzߘkoi%gH~cn04*sGzo<[{nM"y-ַX?]x7_ihk۷7y^n?nGhsN]o}ݯ_Vyy/hr^浴:<+K!x?댟+E?U5C#7"&Jr(zwKf6G m#.Gc?Cm/JwCjxo%'H~?띏^?Çdu>G%h/?qhBY ( (+K!x?댟+E?U5@B?PPE.eo5dWA@9ӂ'(naI,d;TXE8ע}'6->c8mK7ھ>^8@ FMWIoKd v HҮ0 [9@&Ӭf4-t#BmTpqyWzMwOc%l-+y8OZ׳t=ZTl-kYn6 0mg8(#A}-VT|6 WVzl1KASA S֑}ognݰ sc=2}hSQ֑AOn7}ϗN:PxSVui~,uKh9{ ` :/|_XЬ-uH-l". 6Ȫ80>o<7`>4"I l#9*pgzPsx>-uK4ɩڤ $u0$W`͖ ax<9\Nj\igFZoHo Q$N@: x@݃wDtY$2}@X a@lȆAcW财{Ga ߯S_.4\xSH|I{gaoIcp<&"Xi~ 9,oii6x(mV@QUو? dXZ/&o؞_?wgvvy?.qc5k{>׵=KMмGw4FmeyYɖ%U$Gl4^ 5{M'^MR \\[Er[:m($c'$u$fxHF!At^]X[Λ}_W=X#;3DDPYݙfeU -:?kںxM//4y,1mL^E\Y(7+ ,׵WSgIlͿ&[{18u;Gl)pc ῅6?5nxMWXPТyg(̠S֯-__ֺз[i+mGY~Vlm`Yv 1yMiשYKmoC"Uڤ1_ηCYai; 6VH8`A;PN 9dHdd](Xrٖeh% ~<~>39jK[{6Vh3Ȱŵ2IyrfdVc_9}?KҢPɭZDFXnh)eՊ  D[}Z xOִm X纚9th&$R^E I0"xk^ٵ"џ*-P7r,rk2U"A€k1]NxVb.u2so%G 0TfTĘH9 j oa=&TJh།^F$QY}I|X}{RZIu)>mXCwKO& #?KF5vϿuu }*S--6 +Ȗ{{yUՇ Ahz"_O^"UߨSnogl5dЇ'6fծVKk܁>Wmu~)ߋ)k=&}~!=Γmud)W}E`'⇆ηglmcb\O'cdB {/|#.?`ծr2$6]+#-3H|1&6MV[)p͜G!~Rx4s7_x]FT>}[\DC*wy3>)Ɓn='Ke4kLFˠ凨 jǪhb֔?Ȋ|zvF-?*m_K!uQO-a>q#Gm#X8=fY>u{^A5j&&dki ImJ\Ohzt-4>u%0"+`a#fS +pxMIkWTV@̓g%FHcw|1-RRaw,ы3L |T8ddoYY]][A<2.c@@mSЊ|#}kxs^绵NmZжY%DYHNI6e\(?['N漺i^b[8ngdHbH&s o74g$+J<_F ΓcJK$3+'ٮ~i"D>Kmc7 qxO j/c:Ic,k#PR~COZJ#iattk1 ߕ$gdi"q: )B_о%x.n kX.-V(.nՍ4B;60U rs {b}I50H˄~@ކ o6Zg4] {rYR(18iir# 'O?['N漺i^b[8ngdHbH&s o74g$bO K$ɣ>ȱ.+e!;6;~]#xm56z1 m6n-,I˅IYQxǖ'ӯ|9.n%׼ › &6x״5 l4Z4G4 C;x6.cQ4KM[RMH^/f(8ae&_ gW+~{x\׬MDc˺="Mn`}H;/?W |J^z //ԳYP@P@VB?V~!k/24|~5C'櫩Y^Pi58s<֪og} Kڙ-;y}W̃SV}YM;M_ 0 y P@P@P@P@ȆAcW财{Ga ߯>~:^!^dt+IzO&{]m՚ ̳? xS|g صm_nP-x,R !% ϝGɷ~j{W o|!O}M쮵8iY=֫i Ͳ%dU ;;?V^"uy}65p7)ir rxBbDK~4ږ;&ůh׬q X:`Hg+j>)ak#(w\FNsY3 p~_x [v6}c:viX=9Ie2xU| .T22  C.OEږwMuY渞_h[yFIe.:} w p^qy@:ʄF$ ~2-WG[(-SѼs%qIjqf[afs%@'^&ԴkzޗKN-.;T׵ "W2g G;,.Dq9O|Gxz{rYfRԙmX[Qa+ͽEbKeʒ7(~myh_zխcN'`;OUVf$$kY+x&]KLj.^xxb= ^׵/2Rn`ᤇϞ9ldg/ k~ m'DJHTiUẎ-: |sdx^׵ THM%&;;E&U浸|[|!x[R[-Joլ#;ۦ]$r^N\H@yWʐH.4?x;GM7$mNLLl4*Kc67bJ/ Xկ| i>ċZi>S*$F0p<͙h/<&=*O]xT_Yc +&ڰaZ%mR@|EԬu7źs-vm!㼷4" Lh q "y=Y~h,/4n,pjur52Z*"0(b]ыZS"*m_j/S ~g7FԼG+ƞmөj <ɤsY ,&>/|;%ψ4"_ouگq$3ye`nА>"](JE]ׅu+SsW{i#Oɍoɿ']c-7(X<3.ׯV< 313h UgZnT$$_⶙_G|+~M,mԣm4[Kp6 />إXs0Hر#T/4k[xku |U{Ĉږ .[}Ru{,*шij˂qF߅3Ŀ?<yݟ6wco@y/otmX*ּuy4ACK]k0$|I}W!< |{#2~# R>*Z0Ab[hu]NbhyqNIb5'hr_?OWw6~-ѼGi^$k(n-MV9Ks笖G-yGP xo=k^L:tFq;]T^ԒϗV[BTDHi/qhRƽs?f_D]N\WS[,Vi't $M{t`H {RUtsEխ͕7>qX\2.-u(+?i[%~<7{ Ϥ?`K ğH2_#jd_޴ ~,eP@P@O敢HK!x?댟(__?z?гYP@P@P@P@PkEi=!Xv-(XCw"fXP@P@P@P@P@P@Vѿk\S үH/@ѿk\S *o) гYP@P@P@P@P@PmW=WEDT0_1hASo5a@P@P@P@P@P@Z_ \diZ/ԇGį%a2Wvu}?SCԳgVId%(HH-/쪏@:USBܼaD0w%ä\+JnOM*ĚV˷K2g/(w_ ?|'H~?띏^?Çdu>G%h/?qhBY ( (+K!x?댟+E?U5@B?PPf,( ( ( ( ( ?y]J{GdCw ?ZQ=G|O[Gմ?YYsL+o %Π_gFsYUߎ|_i:ZkywzLX.^ p (m3z5Xi3][@/ǏPIB(ԣ&xT/#Ġ2ʀ`(-u}:f{ 2+EfKJtfV۬#@Oǟ^SgW^+%ЯZ(,p^4+bhU3l!PW[g_kzLio:jsVGdK rܨ)] @kh@$Yu;H?,[]ʠ3p@ ikMJCHڂ@<*Xo(ۻi`ʭ8GŗN?-ӵh֨y3.d;ecv)ifۿne;O.zqmXjWil:~}bKQWhaIpH>\2aPi| 4/ x.GյU vi#'3H1YY_xcAg.fgvo&Igy]bŶ;hO]o4Y[&+9F𦥤4$lXr畉J$X+7+xby; ˫Ky-:Ow9ۓ˔% ?_/V/g-bk\]8B@Xį!jY`  cğ/VrRuIZ+Mt%E|utbS AsÿLjymlS l~7gKvyνݷ%$$IQ4`+ U \A 6jj+M:zdB#dhdGY]<WCKźXG֭5ӳ*3 ?";Lʄ3|C[Ꮅk^aN4exTD'GkXE7F]:U]>?+kgnD)hQ+L`"x_h:Z,3^K{ ?5+ (bdnP<ᝊĪ#b"5o|WׯnX_m/Ҵ־owVMipeKxW-_k&jNcmFxPn`*DHx=—[>#$ݣ̿reDP#ʇho%?OXi-j]i4 ;m\i2KpGlH g*01aZq]KVCg-(REi$=u&k]3$ѭKtwMXM7R?p@=cUUŭ)65__Z)T3/tǺy=퟇5 m1 m!WVr<ŞNj|kxsź_Qƺվ{/. hŻ͏ `R+=ռ/o%IQ$0$"#F CT%}kV>7t 西ZjKb~m]6>c3h%xXҵo#F+h/J@K=nfCG.`#EpH9'RH'Ϸ2>)50N#- K1Ic=:ZԬk1`ι4J<>٭ MGoѮLњ}^%Lj/KCR2]FmnKmUC*aH `<2_4k:,mwe~ҿ˩+*,@mT`(? 4>DŽ +ĚqyRq֑Oe]nj:p~Uu`HÀo\|R)0?غaAIYHscmAP x3|^Xi]\[[:U22 vXuMbSns,vrIol!0 6A#ݦ m{n+KMgխmeHI%(UidMʩ?ZC?jwۿ.>ѷ~}f|g@ xGOӼ3eXXȱDy->JʛU /~^7vעf8KmzdXI1#@g; %ܐK@ ?4CGK_꺶{ouojVPsr a4R)=76(P ߆~վƗ'X-֖ڦv[O .p"]@o[l' Vu+X,{|ҼK8kN@8xk^w?KѤK/>׀<+ TMRkK`Kq,SF|\prW>BCgf_{;Tcou2,yos:} wƀSB=*"Ģm.pbф[])@m2>!xþ5F%eyӵGC>mLew 5nB{->[IR'm,r+1wa$Hij|۲rY^j:~vՑh`5xeV*%>15~PIJ/{ ĺ\G$YĒ6tي  |!Nvb.ۭ;bğ?qI|Ǿ ׍-,mK4˯Z4=HTde*겹V(]HeVu >O"P-Ԑ$ľVܰ/$\aOR[vKuy:rKXW)$apn O3F4<,Rm,.f3xaux3v_1kJ{EMk W=WE{6̇:6? j>mӦֲ]̆E(H#*dGcYXll=2MԬ༲IѰ!A 9-/?}Z84y]+˝B{H4V8€_<])4NwCuw{=ܴneifdhǘͅ& _^Z}ȺM.UiMJ= T~D;FfYKky-OLfh-:;8.-y(A,"T+#\ ;TY/:&i^ ּK^v^˯ji5fkkQ+7,[ ڏ<+}-̈́z%[y #[eq ξTX#M xKka:ޙd&`@Ig0+t˒|Mt,to-&l<<$H펃8P3_mfjlt?yݏ6ocw@7 .iG;-*+h5 b;{YAa1q$~_|[nl'k,wΖQ+e6GGFuZmַѴᅥxnp0p0{_񻶽7Ē[k"ID 9P.]qi2nԬ-g}6C3D9##odC^i׉u]4z9֭uBK<a_W],ĪebZ῅!Iwmz-fo$ׯE4 0sR]dƛ xKka:ޙd&`@Ig0+t˒|_ ou:K:j#EGHr0)'˽[b5iIOphs hQlYn.wqR) | ݦwOiɵK!U{C#J 1Fwf4 ƛ xKka:ޙd&`@Ig0+t˒|/24WCףgW+:ˊu"\=/5`k]x]U/(w_ ?x_}!v?_x~$AsW'ؕ^4MnEB2 =zR/+D80?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u`b<Ѷd#+ԃݏhr/,P(ݱncQ؏ҌM4Л/7Ni_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_w?6/u m~i_wP ]}O);%qWϳ% *mb:dO,m1v_ͷo.ó!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->/7E!~mt^->Kgv)g*g.i68T^ hKrPL8߫&OLc('~mt;O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g O xvlo]g OP-x`z>ԣN2{ --5+W#!Q r!/7UxvZ}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}Ce߆;?Z}6_ͷo.ó}B.>س4mH c .l~$Eo³P10JZJѩ/_xApXu6G m#.Gc?Cm/JwCjxo%'H~?띏^?Çdu>G!@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@o]yحgK/gKc8kow>ֻi]O?_P뼿Ws׸(0_?C\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ~#.?zm_:_.k:_M[ [K~b|r]ڿlIGg~cׇO$7O5~2}P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P3?3aqv^G6+hApYlGF]Ǽ*_S;/d?ܰJ< /WO>;/?W ɿ|B ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (9OV?`[9VPĪ̇ț]x:RvG%Mq/520Gӭ.uT̗BoG?v%֏:Τg1l6(*V2M;ã;/|?ܰJ>w ϣ`KğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*9Cm_C ^尿_??\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ ϣ`KğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*9Cm_C ^尿_??\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ ϣ`KğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*9Cm_C ^尿_??\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ ϣ`KğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*9Cm_C ^尿_??\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ ϣ`KğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*9Cm_C ^尿_??\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ ϣ`K ğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*~9Cm_ ^尿_?C\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ Ϥ?`K ğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*~9Cm_C ^尿_?C\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;/?ܰJ>[ Ϥ?`KğH2o#jd ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (sǿDM[Q^ʯOTtuF_:_fs>?*~9Cm_C ^尿_?C\:I=_&{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#뼟W0r׸(|/WO>;//W!du>G!@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@% ^Sv uՅ|?t~Tr]ڿyIG~:|ux8z &{>O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( <{!/ ]Dյ̪GGXk]/vg>#;'?ܰJ>_ Ϥ?`K ğHY7O5~2}P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P9 xg&FeW::E#]}ua~/9?y6apQ_}!v?_x^$AsW'؅P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@s=."jڏfUzzMN_5.GV3]UJwCjxo%-g~cׇO$7O5~2}P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P9 xg&FeW::E#]}ua~/9_y6!pQ_}v?_x~$AsW'؅P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@s=."jڏfUzzMN_5.GV3]UJwCjxo%-g~cׇO$7O5~2}P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P9 xg&FeW::E#]}ua~/9_y6apQ_}v?_x^$AsW'؅P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@s=."jڏfUzzMN_5.GV3]UJwCjXo%-g~cׅO$7O5~2}P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P9 xg&FeW::E#]}ua~/9?i?6apQ_}!v?_x^$AsW'؅P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@s=."jڏfUzzMN_5.GV3]SJwCjXo%-g~cׇO$7O5~2}P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P9 xg&FeW::E#]}ua~/9?y6!pQ_}!v?_x~$AsW'؅P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@s_+qCy;*( 'ڶfUzz0 /T{9v/=˽cI|WVe{w>g٧Y6f{Lgi8]h]Vfqy6pQ_}!v?_x~$AsW'؅P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ek8A pGygu&[w%<_uaXIOm.y=G",A0 V^!eEu 5d>Ѐk ]ψ%~<7{u3bhmkR(aI*$ H=_&S} h6/*r}<{@NESv[~u lo&~Cxs'e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0} k:/*?=?_xg?xsoO?#e&~C>G0}㇌<"FGt\_Ue*5 ( U L?0 /Rr>xL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vxL<%CFT{9vx)_->Zbd\:GYqTUՀE5.Ic'zWý{ƚOu ]Z~y&y.r2<6K.v,'4\л-/hSs9g*l4m%tfwG.>!y6pQ_}+b"ğH2_#?ګd %y閎[,w#]򃹉`eN7ZW pXUۗzKIg>+Oٞq߱S*fx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS3Maav,^1lx=B#'967&ɔ`_kwAkN"-nS*2>X7_eVO:8خoiTגfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS8أUJa{JL?<=<biT9)gQ*%0=Pٞq߱G3?(Cfx{y~ҨrS9V2imSWT,EVSُNi՝}ߥ Ώg??/Qg݇dm~(òK{Ya}ߥ =p>|m}{8vAa>6k>=; ϰoGvgύ_ϻg??/Qg݇dm~(òK{Ya}ߥ =p>|m}{8vAa>6k>=; ϰoGvgύ_ϻg??/Qg݇dm~(ò(^!M-y,ry#n-`ܪqORN\-YG|'mmj2-Fa Qy@݌[#C.[zm\Jbk h˝=@fϭRY?i%k]/vg>#;'?ܰJ>[ ϥ?`mR$Cg3$4/f!TpzWO$7OO]?<sZw2H-ؖ@co(q AIG4}:,|C.֖:N,MkTºpmS'kql^_Ej}~Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSEw}st.H/-XtILc]i};I.Gc)[[t0U+B] _Ւ Qu9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsSQu9g?/? Orϰl^_Ep`ؼ.7G5>>y@]_nj}Ö}b .,u]9Y(tsS;Ơfuk-*)3XeNK%#l2pR]MH-?W'#:9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tZ?^-M:H-?Q$׿KyƨA΃ O%Tr?A 9s o?h9Ai@{jG4? ~[5G#tgSk,iIe?cji|ΣZqI.Z3Z?|GOZе ya-ي9$1˯6$n Ur?颹ѡut{Y\w;Tc!SQ|I$׿KyƩr?颹ѝ{ru%:PXOn{RA$#p= ta»tG/(w_ xa?|'U4i_TׁgB?/2>( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (* b?$9Cm_ ^0_? ˧kRhdie 34_$Gu.`S3L(S_Sy* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^_{=?9* :=WnG=JwEz9(rUu>z/#CCp=z{ϞsP7x|_G%^'OKK?$zqJ"*Vllf.kze#Me{qd,gdWԝXWN0Ӫ3%~#6_|?ġoOUӅP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@?1{W /zZ} |IW jo`˼N[+cbusC^gxҥ/Û-k#*V흯kh쏠> u;?4?#?/i:]?||oF _]ksn` )Se}P )CQ'$ۘ/%A )Se}C?OH?0_KS5GϏn`4?_j<?xA_ҟv_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4O_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4?_j<?xA_ҟv_?<|s?> /Ty J|_uƨP )CQ'$ۘ/%A )Se}C?OH?0_KS5GϏn`4O_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4?_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4O_j<?xA_ҟv_?<|s?> /Ty J|_uƨP )CQ'$ۘ/%A )Se}C?OH?0_KS5GϏn`4O_j<?xA_ҟv_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4?_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Se}C?OH?0_KS5GϏn`4O_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4?_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4?_j<?xA_ҟv_?<|s?> /Ty J|_uƨP )CQ'$ۘ/%A )Se}C?OH?0_KS5GϏn`4O_j<?xA_ҟ?v_?<|s?> /Ty J|_uƨP 'CQ'$ۘ/%A )Oe}C?OH?0_KS5GϏn`4O_j<?xA_ҟv_?<|s?> /Ty J|_uƨP )CQ'$ۘ/%A )Se}C?OH?0_KS5GϏn`4O_j<?xA_~v:Zƕq+J Bޏ3 t0zqMvi$֚}NjN;968C#󩔝ާW*''}Õv2OG3y}:9p]̓*doΎg9W`$~ts>ʻ'Uʻ'Uʻ'Uʻ'Uʻ']Õv2OG4*doΎg9W`$~ts>ʻ'Uʻ'Uʻ'Uʻ'Uʻ'Uʻ']Õv2OG4*doΎg9W`$~ts>ʻ'Uʻ'U>/ExtGState<>/Font<>/XObject<>>>/Rotate 0/StructParents 136/Type/Page>> endobj 32 0 obj <>stream HUn6}W#T9x qM m}:r"S[۴v|Km#j43<<[vi3ÇC{^<×r0XcTPY-+A9T@}BcܵK(tM7[A#(du@C= %PO`@[(M5D >l,."9<2/?܉+T,y+/OJ}=Z"_Osfѯ6rX[aθ4 2ע C z=VܥŖW‹-99!{Ķ*N2*Ă5(܈{A Ni[Qi}.-/9Yg~q== >\\ +%5DBX4e׃a>4GV^ Y]x*+G6c `4Ţ{Oߣct7i9rRh[H0tG=xH=GLKCP^Ĵvbڐ񠃖.s ҋ!s # ɍh%^VғQa{l⏬D.qʴ 8)$%Rb~$)+ -q'v(MEka&QO$v>a(ϯͫN=j8` >yWK#95c{8F| C`"̓Pb#7{^Bȃ,JlH볰Ӿ ѽ>r}4 <Crbv!=rxG(f-7{94-w6i**=[3'N)bWb5٤F`Ԑ1u߿.D>}5 w=f 'GRMjM>ݵ"/ya|Jp]fj)9` endstream endobj 33 0 obj <>]/Filter[/DCTDecode]/Height 772/Length 209740/Subtype/Image/Type/XObject/Width 985>>stream JFIF``LEAD Technologies Inc. V1.01         }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzw!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?߈^#ׯMޯYY ;;‡+2m2-ܜ $b$z/#ZRylE}})`t3x1o*4? !f}YƹD⪾O#w?(ƹ)>O#w ?=%qmm Su#h/>>bOuAsST}BG_}{ k2? ]c\UPWw ?=$_?e7G)$A{I1o*RH+ϻQuAsST}BG_}{ k2? _\UPW'l$WZY"j3`:dԡkrG_/o=M ~A*H+?/=Q{y{KxT}FG_}G UQWwQ?k?Gi$A?/=Q{y{KxT}FG_}G UQWwd:X3b:wrEMy'$_?e7K? !b}{ 2? $_?e7G)$}b}{ 2? >>a =MQ _?Xw /OOuA}sST}BG'?')>K#_\UPcA{I/o*RH1 $_?e7G)$}b}{ 2? >>a =MQ _?Xw /OOsA}sSTgH1 $??e7G)$}b}Ɵϼ?Ah͐_/_? >Sؿ_\U?_?Xw ϥcA{I/o*_?Xw ϥcA{I/o*_?Xw ϥcA{I/o*_?X?')_? >>a =MQK#_\U? >>a =MQK#_\U? >>a =MQK}*w{I/o*_? >SOsA}oSTgqcA{ 2>T_\U}bw ϥ>;$?e7G}/?X?')?ϸ1 $?e7G}/?X?')?ϸ1 Na =MQK}*w{I?-o*_? >SOqAmoSTgqcA{ 2>T_[U}bw ϥ>;$e7G}/?X?&)?ϸ1 Na 5MQK}*w{I?-o*_? >SMqAmoSTgqcA{ k2>T\[[U}bw ϥ>;$e7G}/?XC{/o*?? >SOqA}o3TgqcA{ 1>T_[U}bw fϣ>;$c7G}?X?'?ϸ1 Na =QG}*w{I?/o*?? >SOqA}o3TgqcA{ 1>T_[U}bw fΣ>;$c7Gu?X?'?ϸ1 Na =QG}*w{{ k1:T/$c7Gu?XOI?-o*?? >SOqAmo3TgQqcAk k1:T[[U}bw fΣ>;$c7Gu?X?'?ϸ1 Na 5QG}*w{I?-o*? >SMqAmo3TgQpcAk k1:*w{I?-o*? _X?&?ϸ1 Na 5QG}*w{I?-o*? >SMqAmo3TgQpcAPj aIJF/.?5?RY^ _U,?o}u1 %HZ8<C ֫" L'[8+񦰘?zȾ!Ú#uF95Fr cvZTvpoqlOr-RĥX,>X,>X,>X,>X,>X,>X,>X,>X,>X,>X,&((((((((((((((((((((((((((((((((((((((>Xo֋m` Z,E6h߭~Xo֋m` Z,E6h߭~Xo֋m` Z,E6h߭~Xo֋m` Z,E6h߭~Xo֋uKxQW2$tP]x:mSOnfN0J#z><] _7[BTnwqsg+Iex[8|?Ƒ k:YT^"3s:. ~/m8HHz  A=};iV_g m迯뭹}YY5Yͳq4? _}YQI/CivX1 :H SngYӴqSyi$ױnMKi$Ύ3ߍی֫OSUj+$"®[V35EνCGĞMݝ֥g孝/Fy`}݅j.Mlk8{U%t}-պƐiFV;Tg=GN*YC[BR03{MMrZ^.짍|ApI5NU$嶩螺yzEϯؕ/bX0̳Ie=.IDLR'9_Z<+rw{W(xF6[ %wѴ+.X38[biͺIݷ{~"HU~A_)mOU+HU9#0 !N:UTꕬujC]/ēk:_4BFbyV@õv`4m_oC\_uoha[[?zJ1Fש5$3?zݕޏai}ItE;7FHh:ʕYԓMZ#2ϛj #>ĿiH a :,6ңrKGvs7 .$`".6jFvGNzV)NNW=}3H&iehG̱2}|Qe9k\?Vk,[^*-w %W̴7nèmVrےO+>Z t:a +?v㸮QrUm߹c F;FMn~X2`nC6^N1KK?Ț2JniM+Ik%1lbFB\3d5Bڣoz/Xu"_aڬcYI/m`k &e@9cҩQ?R]uo"s,HH @#U* ~.:YO/i'ڬo;>~|}{y\~}(de>]2J.OÃҋASEs )9}Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2ÃEs +Qt>]2Ā#z .΃(tdoAEs#z .Qt>ނAF]:79}A΃(tdoAEs#z .Qt>ނAF]:79}A΃(tdoAEs#z .Qt>ނAF]:79}A΃(tdoAEs#z .Qt>ނAF]:79}A΃(tIK7msMռKiA Y72ҺqL*71ӌjՔe.]2h^[xO3n3ۮOZomEӵ{{KoRrMJʿ̿/leV/;R烠uiErolXa܋b x1pӵM{'َ⚽Tþu JCHKzŤY&EVBĖ`0E|\k4WؚqoV2]99IY]SR%X_uU dZ?#Gq )Z82VU#~W_Ftsdj_Tuxo}Rg?QO&~aJ,G]?>*vp`xwdh~G_TŻ?ڵ^Zq!m1]c 2;ups|΢2BUІJW^ץS*SjE%̙aݧ`xwdj;??Sş('G?z0NУ M[;??Sş('G?z0NУ M[;??Sş('G?z0NУ M[;??Sş('G?z0NУ M[;??Sş('G?z0NУ M[;??Sş('G?z0NУ M[;??Sş('G?z0NУ M[;??Sş('G?z0Nſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>Sſ)k'G?zTo Z7ރ;??<[B24}o ?#NХ M[>S:uBkx9\/eBǒ@hzxӊkBk wȬ `Shymyre_"<x|8~ )2Ydfz|Q@ךb/mV.ۥ4(ա(ʔZwE_@|@=60?}ϡ">*^M}#V_s)xG4Ɨ4( ]ۺς,Ic`WRBi3T^UjL } _Cm D_EE_q7_44/6:%}?zi5I&RXBPΝf_{x|5ojWj!$;fIYvF@']!t=RSϕwe:%NRAP;[[}Sn9@?SKOovwmj ynuBv u8̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠'waQRpԿ4r|9_?[mmv? **߉ޗVt`qOoyaŬTfc]m,ЬNXw qqaY[ѦN [Ss h.DFia@=n<3>V7ZuK}osrMIx(pǢz'@3|a? W~K~?xuFZ;Ċ $1݌xg)el$[_2Թ>\ `cH`P?g վ Y6;![ɂHOZ=߆~owC%֏11$FT v 2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222ÛOgF ~n#<zv; :iӈu VV]'QӃPoK<3Cqxg-+|>'R{Lv XBp$$ g%JƀK<3Cqxg-+|'i"ʻ$ds# 3 ť\@%Jƀ=+^!.I=z >€ gbҿ.? ť\@%Jƀ'=Fi-t02@ ?1i_ gbҿ.?J!״`K'O^OY h?1i_ gbҿ.?Fb, ] 2FG<>?, ZW4Y hkhwKmgi>v 36N9 hy?= WG@GO gbҿ.? ť\@%JƀK<3Cqxg-+?, ZW4Y h?1i_ gbҿ.? ť\@%JƀK<3CqMc-m>gءFf= 22222222222222222222222222222222222222222222222222222222222222222222222222222222VI:sw̆r1W\VR;Gjn[O!=Կ|cFy7v3y.Hv6NiuU՝'*v 525tcIT]]MPx'|?k= VaF)B30O OL@GԲF.!z1ZY_B>rB2F:"wDfɜƅ/,ỳE4RIR H_O=s~E5WW`9 o{ki.&cKn<2MT %ɔSnN)^gIH:lсkJ'E5M:OZY_B?4}'hDO缟Ѡ vY_Yܧ]n(י@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ t6*'s2N[yz|E1f'+xROvsԬ(|.kVFɬhݡ$ Zu:jaQ*gqW9eeeeeeeeeeeyX۾@?T\3/zW)w 43UWIO+:_q/ΌN no5R3߹%\|A'ϝB荻[?栣j6H Ie?/m0 o>,^ #v莽5g,u#cËx(jUM#Z8گءME/: K4>3 qgRm-y}]_ŏ>"Y.-X̆y rh'[QPnx:Oj\x^]Bkk{۫ksmo;%Qnw p@":|?] R[ QȲqHrf?W|Ghxz R:w;-Vf]ꧦX}{JMK@mZDϼϵ.-L$4)]Tk7y.>|ea%ͺyjCrnS/2 '3FVkovi[jrI1"1qHm1<55Ƒ K˖9a7؍ݪ@[ O܄/]8Su/\PeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeqѴ?>@>ч3g6&|'<{ޕ崙WT)Ystg5t(u煂0AHO)|*7CyڃXԴ_'t{쯭msxt6*U-B[G>#&|XG}0Mw_oT1I5ݘSqJQw{$ @ިprs]4AIuC|ǽ~Ѿ;W֕9-cV ?UW3.T3+PU1jjѽIrCx_Z+׵Rg2\@~R $zbBF#nQqoS-D7oCPg +fwT&@['JSWLourV3//^A}2E>oWIO+:_q/ΌN[\Cρ*N:>|g>$տB(n]vQԡۗGLj|Sǐ|8#U(}~r4>[Zj:v1'lj7<.Qn?J-hs2.yoح. 6ݷO\qS'VV6~*x^^Ք\9'*ެ~5T21Eѫ*3SB5r9 |=·Zjux׍>l"mT b0W>yetS; 7&5vM8i{/ư+nq!(2Idc)aj:n[S7uO/z&/#W |7gܷ6󩼕W`YQ$)^M; NAEK=unש/Cs^GUyryo߀kZ]y4[IMxgIĖ[:pĮj#V;X7HY/v8 @%D$w ~^kB:Fm=59ZP#TtxgmSr88rw~k]_PN1u/z%N>:DgUns,{&ݯ~t/d۵ӵAbWu8*pP]4;ST࠶J_ +JmiR<`Ќ v1sS܊#^<سuW2ZIsY{ni!V6S#<\撻;(kPJn*J&kL| !SVMbkYM)SKyCG6_5h'ncQSI-{ZQ^V2\sdkwOۥO +KKvZhߝ޶ Ba4ӝXJrSiɭ4QEIJGeh;]}q7\WY<7kkDZ[ئd\YOH ~-ݴ{˨a.VTȐeo'ri8 7mV[ß:录?l*~W`UR ͚6:ī_g #+t yR#7d P%=HֶVs-u]$2H2c'dGx3ņc}Bm|;y,ХЂ"*@‚@SP5&=;_L0\Gw$L)$r!W% Б@>M\td4˫nf1sIyuEvzd`h%=HֶVs-u]$2H2c'd]h5g|+YYB<c]6 lPSAնKƠoU4pĎzp(s_4}ȸƍs4X_cqHH _:n>ږ 'AdݽU2B #t Sѿo$w o}@7 o}@7 o}@7 o}@7 o}@7 o}@7 o}@7 o}@7'/ZEyl43R>֔:rFui*gxkF| ~O<=jğ(Kj* |=;l*nN4_o=?6lx& 92 ffI#rMm8J;oP-wTjvTMpP@$tU4y8o|%yh&|%'t_GI (33]8z 2)qp_>/x~~fNjgy%zBG Fv3d`JЛ'=vgSO" |5jvS[x/P[鮋!oWmۚTĴ)v] =+sլ[+T[3=ݮvɝm@gkIfqlBTZm,|B'c|-hNS$O+-$*XP9 )8RⵔH0k.oߕLCSAI|F?^|o}\XIC{j-f*8|L#V0QN '|3 TΙq[]4q8j/ WЉSv4yQOO%lV;H rcs{TR()ʍ"ßb7ƣ`mེy.Dݸep2%5MlbCkO8Ư߇~9:ŃxPdQuMg_aMn8ɳOl=+hS > hZ_%U$7jxòU>W0 4yQl:k0?>W4{<p$UFhRHF77_SK˰_H<C-?]=m;G`qk]Ӧ1>s ёB3gޏg.㏈|I'ĞWvg. e˰sǸAmuyhr55&+^ڻ3rcG99?1˰sǸH<C-?]=m;G`qk]Ӧ1>s ёB3gޏg.㏈|I'ĞWvg. e˰sǸAmuyhr55&+^ڻ3rcG99?1˰sǸH<C-?]=m;G`qk]Ӧ1>s ёB3gޏg.㏈|I'ĞWvg. e˰sǸAmuyhr55&+^ڻ3rcG99?1˰sǸH<C-?]=m;G`qabI:{K-.%YY çz=<{¿4i?G`r+?^&y1yqR8ǩ4{9vx%ßP_G˰sǸU(rM#9?*9?&rxsk{9vxJ9EO z=<{%^'=]=Cmg. W?6G`pßP_G˰sǸU(rM#9?*9?&rxsk{9vx|M3u 7Kl]IxvB;w˰sǸW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rW'rq_M/SzKoD7$6X&c8>Ҿ㊕9M8w>LюcٿMӵO[v#dPdc8 :[U~MhvI`)%RN dC66?Ѣڼ{|%o=ZR`7e>\Mma_#v_?%$a_{_O7e>\Mڇ#v_?%$a_{_O7e>\Mڇ#v_?%$a_{_O7e>\Mڇ#v_?%$a_{_O7e>\Mڇ#v_?%$a_{_O>`t?MpC,'*"" ea%@jRDžd;UJOBmvԹZ~V}g138_KAN=AN=AN=AN=AN=AN=AN=AN=AN=AN=AN=+kHu Vm' ci4$ЄeQS3LMN+NW.oC ~;v)-Θ881\sFN틝*/;ۨx{?O?/;ۨx{?O?/;ۨx{?O?/;ۨx{?O?/;ۨx{?O?/;ۨx{?O?/;ۨx{?O?/;ۨx{?O?/;ۨx{?ONsj3S7ַR+dD.>Cl@y*3 8NoF}ډ8;FKIcNokFKIóPwn}|'=;? kFKIóPwn}|'=;? kFKIóPwn}|'=;? kFKIóPwn}|'=;? kFKIóPwn}|'=;? kvZzɢ{Yhte^DT!bL09$=rGnK{EҝE)rOR!s i*$cgYKw p cq}79x/ G}79x/ G}79x/ G}79x/ G}79x/ G}79x/ G}79x/ G}79x/ G}79x/ G}79x/ G}Ě?'S߇'nbDdin[b'9wAQWF!_Eyw+= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#? /.W/&ywHC%B14s˸rG/_]Ò= Я _MK}bhp`?_+G<${!_E99#i7N CoXZBڲ%Ky 8ih$G9M5& DXRu=0B:'Q) KΣm&EKYE:, ̌K:IL8!-+_oS' }"f, lq.)֛WKJbc>D}+Bn.gӬdc([!VJꀠ&nBKJ/}?jѕrta^D2QۮG'ֲi~'> ZR ~{ n1rca*PI[ O>|I>^g7Ah.E=ŭmeĤM/ ;gmQtV}7]棧XAw=dLsäHvgo4G@z^>4`_2{nĐ hߍҮagxxGZ=FXR}@j$UsxÈz|bgk&KgIh49Y++'sNCω!u5oLbMj+oܤw18gKeYGvWX¿W-ÿ WZxKQ U4J|U@t9>#xoU֭.>XCiw)4Gfoi` \<ٓ'C^Z.a3DG|,¹fo0C @?9Ugu&[j$_5pGaȒk3*`?gsZo3K: vcm%)uW#vMqdhxUūxgڅFO x}OO?, o1nU#nO_^3>.4 ;?z5dKyd|i ;A9W4i_fIiZy-7r_mhY-.xT_?~.4 G'8h-ղg`XC >r*CmHMjHҢ[4,~koFVfbp W xZz&k<2\ً̒pPvhsouL7 V Co* :Icƞ-׼5^"Կ&wz6G;B.tΉ:b`Z'C_q%)=khz^0lue[٠bf0|dwQF?hOZm?⼎L,^e-<"H*.#!l`R MS:OK{5,44aEV9&NY~RT >#<׿qڮĉ{ha$"GTP00mSU^^fi|so<}o7OmNKۍNZ[[sc>Tqpe8N!4ּA2Ƌ,3*[q5=?>Dy;w}ocK-KPSmѱāмl=Woݷri%Ax˩Zk^]jk5{ `IpcM` 6W⻯SRJ^O& &jUn[$AšVݷvk7ÿllTKP%p1BZ*r]m2(\hGg4- :JI&1 -D}<,e`Tʸ+xX% [KSNk6cԯ,`hYmnW Hcn)I&-'Ľ-6eo\C#OF+L;_p?cqV÷pk̖7 3"6a x=:sx-|y|@ѼY藳]CZK&d9>V'*Yڧ߉:o-C;W@խ)4;+8e)-IϟLdàG'~j^2ZFyhZ5ƕc$1ɾmI'b1;1?|e=>6wb8֩k7G*^bTS&e;w)ƞ%HO_3ȴӬ6+ݱH\r9 |c%|+ź׍m6Qޠm$Z=@Q nTiw+7@7|sčrÖ$YfE>ykeh*(fb;? 1bt+=J[ִKn6qG"ʱ+ JwG8r mx7|EDl<7ZƗsլIHl`95fBm;_<i67÷˩i}S\+3[-;1#*U(+J퇆x3@tȞ"5į ۥ"f1øx$t$QQ@I2֟h^-Jŕ̊ 2n* H!\%F $ueiZzn:T-lam>2j[̶8ڦ)ԠnoFkBQKO65_ S.tKH捁 ᔂA yS#2þ\YK֗.a.eoxmJ KiQc(bDZ5ve~ S#{z̾|'rt-BJ^HK R9xbY[dlJGޟ/~!h',ZiO#jy?{qUt'Z׼O?סt_UO?oO?#e&~C>G0}枉Nc}yedِqʲJtи2]އc8\ҭ~&=Hz`yTcg :>J".>xW6?*{ioa@5?S#^ޟ/$#5'Umbl.յ/e0.#I&0 [?=?_y SCPZc1i.fl?9Y1S#{z̾_? GsGޟ/<9|ɿWON }~쟽vS#{z̾4xzouYϧM!Hd& ,e6,NɣxsoOih_<'mxcF5 {;VkȌv"Z3: TI r}Oa2~i d`F2lE!A}O?=?_y< =HmmlZX]$2H2c'dduƇ 2ih,LٲVHe=]8 >G0}ƇrvlrʐN>ly>n9߳v~l揩?=?_youOz:/5mRnTEr)1sGޟ/_k/|=ucNK<ЛCH8 FS#{z̾dž~kZЯ5&RE.%޻$f-VS) p9#e:5ƇŚM߆,5fK3e+<`@܅U\Gޟ/3 zEQ/~׻o߻.q/eZOqѼ5(.ĿiD]Ipك*Q[ u$go)Dq%P \,^fȃnF21 OaYvC2%H6[4ntl NIɧaAeܔ|.oDiu5$ޑ=֓uk{gm HGQ 8?=?_yKo,-ky}᫏ij7#nHs0#sGޟ/WHߡC[?ef͟h7~>G0}激x3–ֻv;5fgoܱ3Oz>G0}G_J"~o+`6}g7gh#eX>Xx&=JvQ&D HG0}S:c~$m㵶Eˍ*Y8 MS#{z̾򽧊<.2obk+hQ!,1<_U:r?Sig?#2?סt_US#{z̾5Gޟ/?3 zEQƺjUC\4Qcj(b13w/~*YeJO[RPo!^$JT]\}>!^$JTG`xm+RE\}꫸OI}qW?fҿU'$Q>!^$JTG`xm+RE\}꫸OI}qW?fҿU'$Q>!^$JTG`Im/[-f*򸩖)Kx;Hi"#~_i"G{3FiC >Ae?.(0oƟ:Z_HD_i"G{3FiC >Ae?.(0oƟ:Z_HD_i"G{3FiC >Ae?.(0oƟ:Z_HD_*|ixcR?.>[+2[AqӍh*$hF_O>>ȶ >>>ȶ >>>ȶ >>>ȶ >>>ȶ >>>ȶ >>>ȶ >>>ȶ >>>ȶ >>>[koE6&R"Gf|%Og4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}g4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}g4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}g4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}g4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}g4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}g4{=LƏoɟW?xy3J=W& _GyA+h_p{?<%c?u}Ǿ9$ %ωc1?/JL(dno5}xgCwƗt>ͧjW$jH͐Gq_"1֌Ig۴ҋhHm4]ž}%ަ-gkKuC)(@ܻNU=@S1*x2&MyNTgd4bt@<O/+ʶPTv6ax>I🄼agRNxg% -t,Ѥ7 dFL/V0c6qͲA,ɹ3.e2E( ( ( ( (.E5]??%ĿF]4~)z?!.k/OՓC㟩74m77a.f;*\}E/M-5sx:j35$6s2 IJDF#>V4ܮH ]/Mϊ.|5mx:mj15ƙ6s 3:rF>es˸rG\|uk+šW%ivq*2<)<iZ_?QNuݭjS I4dF AhpbcS_^;<7yeqqklnrVU)x]Ò=_› l\Nm"d;yml`b_T'_zvőiG4vW'tI!G<${tOxnTknmmK[hn\¿yp cBkƕM u,Mkl< ɅFrTgywH: K~5[KXi'#e$ywH2G5Zi7>ͨ]-pOK ۔mXҼ)X.ux-myap90(Jr.̾ihOg6kqO&.&o6-y>bc ieX7'-?3v[;Ќrp&ywH!Vw֬\il0C<@nQ$c_QG<${%> Jm<}i$K$$@̣^HX`G<${v4&<%l/,mmLp%.+“ڎywHc,@de%|_|I]4y=OY^kSyt#idH sW Ӽ}ZLV-4|)kOso,uMUu}^Icf DS<8ByR7f2m6߲t}_4 yl4D%6#2B\yE]HW>+Kߴнki'ĦOF LUp 48 s_t<<6 RM X00;h@U&)ohzC-.Dne(|N6ntf?[g{4I5G{|@3 7ռY <->ǔZ[)xVX՝UfXԱ 7˪xs:ommCsfM5`|iv1a+"rI~ucӼ!eZI܍F[dE[vߟs Q -̇S𦻡ʋ"҂w&\r6m|C<]h7u ,9h$>D B.PvQm,i>$ӵ oJ@Eݜ m3#<+vbTƨYӵ-6,V/iss9@b~L! _xkĐDҮ4I6k _ vͦiSȋs#V2M eVHmgݖBڝnt͉eN'kܔ7.,q `g@P@P@P@P@P@P@P@P@P@P@P@P@P@P@=|Zu2//F|'~ȵUBhې7YYqF}_Dmnc2-;| #;.HaITǞ 4_Xk,>)BMiͯlݓ[{zO?jZ,mJI[b0'2Td"/ g$pQ#-njb8w1ZMC5/t$,y=hݬҺ@aoҋ06εО'w0_󿍿Ic?e>I$ c.Zc?m2KcFĨ[!4O=ZߥK+MMǁwk=Ēij{Cj,FNsvV>4cVmNpۥ~ؒ4tY%@jU9|fO?__~o 4Px_1**Z=*JZ}=-^^|[_\OmNF ;j 4ʛxXg|t= {F?iԼexPxi)L~v9hPN8j>+xR!w'I<6}f[%qC xWTz=/|aE`kҿ=gl5^wnnSJғLt,m#%WjNIӅ(SI.C8ӏ,W GP*lF<`1^>ayB){]e ugG]gHP}ZTҮtN'1$SF#e A@e[ipD\U@wlYby$@k(u*O{'wP%$`C XZUYXD[F#TE (P@P@P@?w?)H,o(~%V2|01K)!s+\_z~Nooa+ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (+Z?Set9W_tKH]'v6~K|z9C>G(s`_k9?OUo]:CīS_sL?I>c,@ꌥ%|_|I]4y=OOh(ƫbΨu8[Pir|̒3uB9Vk:=f{搋kx.s(+Ē_y޹Oa kނ %|xޭOKJg֍OR٫4鬶孧17;X!Nu*x|׿mG˥3>xT=`*WLVzOl-l<[!q/pc{>xvĞ4]+övz[VK 7lkKrhb 2.f.ϰw^|yoA}x3RmQկ+&TDZuVS[5柡_|@/<>lt j -Ke bRD7rwO4$= ( ( (0~)1SU3YPK\eoacG◩SB1VRY4>9>k-*[[oL[v}-u%y,.#;EqEZٖ'{_p.wE,Su{ ީ3N5>LqN{SJI%Om`k8?=v}j9i_ŏF??oQv`c_ѿO9GkF9?[oOF??oQvb7i~!5K;H '?xUzlhє%vy$Wdi z${G1nM-|^qin1OS (O.n>Wy3>jc?f[Xج WU_ kHKWǵa,өg5l5 so!'ß:m6݋G4q`#jiNSC9sB ?$N᷁n.,5X\k6:\jh [eHm[V`fs42`'dvM[jzeI=մHetaAP@P@P@P?&>#]j& 9J땯 = hR8/v|H:i{wwPʹ#>1-fTRugs  k]ξH8k hh~$_K4? Fͨi DKj? 5f].M>{Uk[Ohn&T\FI9NywH:?E+B99#n<x{ZtmEHrs5񓙁#j-NrRzGht 쵅/,<o4i(e(49brqS.rG[[|7-LJm<.i}:;{V3F:rGQG<${">i|DmykYYg#7fQ/$o0y]Ò=O|a7sks ۺJ2Au]Ò=~t-CQ4 q[ @Rw>d)˕O$y4IYiaԤh-&,tio)yq`#9* ˹\kt<Y# R `:G<${igu_e\}O"ej2299#?Wdhenf>ٶlc?6v|s˸rG-_tC.NeCaOggeu]q,lZ =y&*߹Qijt۩ 1j6DER)G )F r#ةk m #Y"۰Q!z+) (pc񝟃?x[K̉kn.Pg f!FK(ɪS+ԞH- Wſ t+)g Aqg Zjzz˙Z8єs3 av+nyw+=ljn<;oauHijڵHv07(Ӓ?z99#ȵ>]xO5-JKR9XA(0Glrs˸rGOWմK/W=gE-p o<${"WAt?Mfx>xkEYtgy$ĤJI9&*[¿*?.r#M 2+@C[y pE'x]Ò=3:.hl`ǛuyimQ@ESfZ뚤^ v}+Hr]+eA#3G<${|mcšk6^P6od3Ω#61}";0RH99#ǂu]KNӛmo{p!O# :* k Q.Ɨ-;a^9 M>ok:+ R =ǭh-_tC.U]G<${ׅqm.[A[m>UDT280 aOLjs{Fշ}W}֩'eսOtQ5` S.rG\|7-n,<w :K{UF#CG<${!ZxQtmzIx i"Cl$Y1T/;W*s˸rGv 5=b::ɢ^-M2sS#l9 s˸rGw>]s@<5K{" 8 7*Q%)x:~$+p“i$@@8ar#؇Houiqx*Kh$  dk'1hW}7_*Y}h\lN5[RBcIVXd/B wNWܙB)l; ״o#7VDK[ Z6#،xr#4[oa.O* [{Yl9V8ҎywH0|($*K}B7Vd: }ߕ_aVlqG<${8Wyazg}GIЬ/QӤKj̑ $o^Y!99#E+B99#Elԕ"6ĄJ"]ÿRpjSKRcPf-rQ_iY-ZLXhRcmd .3 xoPx[ hGa 0 #UBrZ8EEWx[A=e nP8t ⅢW,gxYO_Jyw+=;鱧tiryb{ˏƬ_7 X]Ò=+ko%-#ϧGoj!ۆhܣNH!(p`m:E<-md{W *PX`J99#[¿*?.]Ò=k]~k׾m:(-a&I$D bMTt s*ԕl^+um;¢jYl`˵Yg r}8yw+=?I6YdvJ''s <%%4+$vi,Mrf0.WmPT|b8'+]Ò=BὂN[Y)"uel=h-_tC.O(|Au5X4dfRww˸NrRzGhj}z~h> >ӣnᵣwN@l ۾Fr#hK3Jĸ/1ԃ]Ò=E+B99#qg ]Ϯ^[K{ 'B5O5p-p#FMR^GhXퟎ%74q^FҡإfImK yr#؇M~\Yiotmm"}CdZG rȇi\[|7k<H"h8rbJq6듞]Ò=lwԬvTiiH`wYAFJ$T$&0,i=/;};=~! @C~8#yܮH&ћfSIW+p+I"1UX(#y./RY}EM/\\j,1Ehqcԑ~WVA]Ò=oITt 63ʺ'*vq99#h~tLGf֑rե97{sVr_2 _K?8%|_|I]4y=OOh( <n??}|VW/s⹹=ߟ\P{h鼱#(Ͷ7ClWF+W{[ۖW2罉?lKn{]At6|9Y(eRA֓%(jv:jJQV>@t [x>֭uHZVT!,&ƙ~*WU;z+Y7ky'= &&"}[vܿ|7 |-Ѵ_}DXM͵y@@\Ɣ8ljp8Ge?!h'k7+IJu5U oqin.e 'L6q-W񯈮A'9/%ZFkx[ HoDMq@v WCпgkKZg ׊,|? KDwklX< ㏉歡x~⷇+-cX6O;Rx~~l$x؆'Ob|A5MVY\wa7ڤ0[#8` x{n7au_]5+H-mäE 3O+jyxź//uj̶mj׊J$0Dd<Ǜ湪kWڻZ+Ioȯ\\ڱύeJa/*>,@x}k*Ame[ii1> /33Ooƈ@4< ㏉歡x~⷇+-cX6O;Rx~~l$x؆qnqkr_ċZoB'Wַ'S.o."[[nivn(Ui~:>>|xf;{ mhQC|?J3o# i_5[]>MM6ao F>U,p89o/ w}6hmRV+5&m 問vpG@R|?HÈ6 3(|ɒ1(ĚkV~ Kš5KOf\XO!<-Ɏ%歨70ʀ;n2,*;@HuGоVn[ dSo34efElͯ]9 oDŨh.Gw|[,R,\H%*4nUݹh9>.wRkwb-,(dqрMZZ[;xt \麑xZ]I97x& |dKP_w\͍Z.6,M99rq +8^.c`2G̙ >s#JU0QPQ|cij7Vz-!xHo`@FU،LGoYhcwGӯR2KZ̴²ʬe.X4O GV=֟Zj{OGsz-9cJ ./^?Em? $SYjM5Q#Qcr *gvE|=>j`ٯ,L#{Զܶ0XPSG`\_{k5m~k9HZwRjዳ1, U.P@k"v,мE_R-mbM>kdx]F'BD" :8{ߑ0ݤ|@oT-.MoD,tr<eo71u0I( `wM'IZ]dL"Ve~¤ F!a[YO?Y[. ^E=\Hpwn҇p OJg'fk}o[I7iљ2L[$m w^ ןX~w{;tG -x~ isyo}k.̶Si2[lUhi !AFv_^^xS״vo,h^~ZLp-,"ܔ3`:f?zyp'kGf󮼖X]GyY>Jp€2<;?gHJ5 YWό\br8n@6{2:R;lfP3($ckdx]F'BD" :8{ߑ0ݤ|@oT-.MoD,tr<eo71u0I( `wM'IZ]dL"Ve~¤ F!a[YO?Y[. ^E=\Hpwn҇p OJg'fk}o[I7iљ2L[$m ֝c7;4#=:`n#nqpëA˭Jo}4& $RF5K|MStnmVYZy6?6+FXQ/(T`מn4M^5 _KYM̰93gZ/:V鮴ľ|ct-m߶\}ɼ'͞V7lcvvf7ZMi$;[LP$ڒQr:8$sW-ԘQ/«8X˭%7O k-z;C@m T`$AE84?#j6ޙ7 մKkA-V]-GiJ3302nf)-&femf`HʅC Ɨ_5?IݣI1CDvG&o07k78& *|F{x⾍}t5( ;QYNk'YƥX8~QvdmJ̷o5?e&s3|CdoR`ft-tS yaB!TWIkN ֓yg:{X&%e Шw$mm?o6}Eg7~ݻ>z|Mx=|UhW6Z}-$᧒ǝ$hP fݖ\2V 8/4`!šFIfB !iK/'HCiג1{5ū-Ny )yWWܼQ786+or*F!IqdMjOA !n-T7a 9d-|/Kw_ %U~"-LK$:zG P$)FqX7Ͼ 3% ǃ<(]R= ]؋;cxE"2]#*XO$Y<qe~-戛vgyEF` ?fjO7O.g?Lc=!ԯ^ݼ?FF*q)|ςA2(q?KQdG.<ڌܤlܾa&4Gn5?LA}}0>O(U~ldxi5MB4ȟ -6okˋMwN;];tG Z]} t9Ic?e2>I$ c.ZcU'P@R''kJ_" gW<=tKg5 "сo\וQQ9biJwv<* ;h[χfQ:46,E`YFKbAܻ 'pmO*i.nMm~fK{|.s2Pu r:?{c}U*8;z2d!@P@gDM]Ozݯڴb[}l2!G]C AhP@P@`Sc?覫"gѿZ˺Ə/S\cxOݛ=> ^k5[F,+)Udstb]RYٚA_X3WZ$>Ҳ&Ty"s"21UKtVG_":kחW~,DevwE{kiO-" N n4s A[6tym?şk7]{(3"Y cq';D]{GVеNwwe 1pz(Aȋh_ZI"_̞U3K%橡E/RdvDx.VhnM, ʅ`s"K|<|w'~%T9c)q1ۻ"3AȃºwƳxZ#SQ;`0+[Cf \"CdNw$q,5]'.t5 GRH/Sa{+r4Q4,D6ă_i7<3jվ{GqKV9ޡHq"w$F=5^9r#nx3Ijw]XiKg' HVeBI&1F卿k˫k?}m2;;Ȣ=5'HGi@\HDemGGVY [cy5'x2)OQf7ps Ff1ҴmB\h5ج_I.VR ndܓYWeV9r#%jzA#Wvfbd,UUf`@I"!V7I-$k6P@bEI:b w$#B?H9MkWvw$?п禵;G;Dh_ZI"8ڶK5MWSmm.aDUydw% [.[9W)4ȘXxBiI+Kۍ6VXwpyt(ʥ|T>Saܹ\п禵;G;Dh_ZI"B4/^1_藹֞!u8RBb-vbqo:Rm?.)4a>g:e߆gPM;q^Ѵrɸ$,G;Dt 7+[YMn~{7[i|U;(00e;DI/ :vgwl=RmRUr!S8֜d۷2FGm$'/|!ѿx"w4& l* I":7^Ӡ@\ƲϪ_ 2#<AhAȌψѭ~k1Ifvi#؂ T&3ek{߇Me|9 ^j7]Cgw_kq[ʄuXhTd_ὗ‹GŰ^B__-l$C +3 _;Di<7x{}z3U25¼3a!Ydm cI":B4/!ֿuyhAȎ?Đh^ޟ/SjPeae.ngNvUI(E#U2ܟ*BTU7|x_Z z$[y`XA4R4Rؘ)":ʖ\#B?H9MkWvw$?п禵;G;Dh_ZI"8/]hPh>MSDjMiYͬ4Q\MQA:ni"]Dfd&1C}go计ev-ĂHB\ž~m$(\ H<Vkk"-]Ķl#OJׂߔef"N&ÝI" Ϧ[E[kt{6ܬL]vÝI"4 ⛩^Þ3xmuq|&xB]ed.Nw$o,|=_\\ jh.l'CpM3YGQ6D\U3\i~,O?du-ZJَXvp2F!ֿuyhAȃ zk_:s AF=5^9r #B?H9獪_DӼOy׷ΟIzen03K k,9(M?&1V= zk_:㴹\?п禵;G;Dh_ZI"B4/şE߃lP27lPq?vG`g)ɻ)[>6'eH$}TqK&<3!pikK?q:zmWĞP@yc}L?O|O5ݗ?k_sr{?C,%tхycFQmo( خWԮٷ-eG{ G$k(2z|=W4/N]OFp__x%]ZE1"mHGW<־R9F7K>{QRI7us5YewOܱ?wsǹϮ+Nz1~Ë/ibIޱJڌ/GxE,X{8Vw_޶VJj[-Oȸ{.)~Z~ʝwu=yT*VWWsht:;ͱqE SIN Y6u*O ԒU"/k?)ݸu-uij-{ aknaFrbI~ YN2k0}**ޓ޺9_I^g`YF7JS,l<&rWv`x=J?Jh_M7 a <0sThIZKI+F-މ|Q RMXJII{%hV45EŦ >)uKD.R3+Fw m1* hbsNJ ^yesF-e8ĩS'UM{;->[+ZLSe3떨+k!\@!򐣱|)qcF pmVegIi$(a'^)JmrjAFiFrrd*񧉬|Cǂ9 ,EsHkypҗrS99k&TRݯzs|:wZq6esmAE)VޛU,2% ?gcyI;3Ǚ߻o8o}?=/: C{OZ?n}nn_+hb? |!Tb^}n VT|G;v*&3* U~e{%[ݿVd ngWN9RNiKmz ucJmt4_7H[*Ƒ$hf0%H6c¥O % 3VmF*)'8*-ZwimC c0qTTNkM(Te(|ִ]i[RG.6VYڪĩ+9Ek(RpEu,2ۗ*RRI𽚵{CgEg.Uo(I;T57eAŖV7}[C]U}@*1?>6IɊ ʅ9JF{'dԛ~5m^3\=)ʌlfSmߡ=Uu 0^i,{=(C=3^Y+RW<#NvORoVcx0W)sӅ9>iN7q]=*O|7]'w=c7#nSzb7.czf Z`,}y]K[ݲy_a+Xa#K[ݲ9~m.P|91abtrb1~cxcauTE+^JjV[ruoK};qbpμh΂WPW%+Ahz]J땯|0>/S<3^񗆭$5n5KVIO%ِW~F+ޗgy/Œ[[}/O\ЪE1meQ\:yao冃[ivDv 5}~^7<߹0ȤT;4jwhꚴK'Y-F |1OjGwz~$E-V#S1&69X7'`iRlҲʹLfiq9i\&NU07y?6"|QQ:}fQiۄ-":V#`Tm& (Z,do4ɴha=g ӴMlZMk<fGÜX4jbYk^/ԵMeem|.!ZY4M2;y-xsw$($dm K+VYִ';B+[z:,h _Ho?mf|OCes{ug]E smāA] !'ү|kyx:N_[j:~-絓,eYJ=4/\iLnb7vjmG|o~Mݟk] mS,h\UItxTΊK4KB9nm+(P) LVm>cDPE0Q_F,4JL#Yi͠x9E%ww_eŴhn`uMZMsˬ#Vk ˵d !uYoL5iְ\<[%!e1HZ;"noAvv]>(_z4#FXHn>)|'/^.m*g9L`’ +g**UKm1.Ikk;$[HG#DbMlr$nN1V֟VVVټYtsy1Qp_9Tp'¯xB|:iiOipɨ#_ȍv+J3)@^ = (;j>'=XO"i> v)qihS g%.=eu&;jWmnٴ]Nw3,} heWcIūc:u *OhKuSXZ]ei-XԒ\o2Y$e*)zi/ڤV]^H4ĝ-ky s @ܼI|] tkVmZNmB|Nl9b rzS.E5]??t;zω^HMXXƀ0<;1p䜆f 9j w_۟gyIdyۑ2n8 <߉ewXitt5]@7>(tPEյ/PYMԲf+VZUG1\#d\ ۖ¿į'  2KGpѫ 2 UKݵsAGA@Ph&Qe`-5*ۢl!#1T0Q[o'֭tos2D}f72/AFg iZ=IX >#)s$ Ƿ6lh%fi |Cgiiݤt^VKhYRLw K=GdW6~2:x{^[9!f(wghn7L@{B !KhQg%cP9!`T6俉 ][L^uIJ:f+m[YYɑnpvh( x]V3ii+[KwpI7.ff 7|&PPP@pMgiu3Ic?e2>I$ c.ZcU'P@R''kJ_" g~ڷí14tsYYt.FFΧnr eZ:˖S^ju)BךfYϳ4%΋us\=(mqt R#2 6p~IuzߪL wRkzO|2^O6It֭3O1-va*J(B:jnjP@P@P@P?&>#]j& 9J땯 = hR<+źދ֚ƙZˈ. 0/9;̱ < %~}iKN5~3ˤITQ&&/36[ƖqM}^DlRԊLV;VBMCZ1/nd5{gc1|QR6i[E'x^ɺj-u5= #qsn[5gk2T (zW͹ZVQ~6mos[ˊ80IJj3iE5i7OV[~ Ncnӯ˃0FkX@'B>ҵy(5;m{+_tѻMSj3MwnMWs[ׯo*;$?_aȇ%~+^Uw?H!g9 Zq-vZ}始U//1j'(q]\kU*}<VۑtgxVtjNu<SvPmP~.Z<^:4dž[I!՞'Yc#r!9RG"Ӛ)D' qi[?gI}*:3NRN2 ٫I'%~+^Uxw?H'LoA;?/C V25!Iq;I+n 3:2JU9qVOhWO͟Iqf89&RK{.=J XX]k-X=߹he-@= #(Yʟ95i$4$NJ'Kq?g:I$$̛[pѨKäfӖIu <؂ϙы^2OT̸ibx F7:YtK[xIb%8Ɯ*4&땹kd+inYľ*~.-:cZ诉2u8vtrIw_:5x^&.#M*Ew}zĞ'aVh$<ּ?,jjNiZ1{u{Noq6UTMJSx-{{3U9!ȞGKD~*jz]6-{ǧ["V.юv$* ^iV4k5%ޑ]d&3J>ƾgĕ15U LiԜ)(7k(M.f{4jVxEydPU3r0Fsl.2jҡo'>%/sM>ŘeFUDM:wR\=4>"-Z-O-i I7%~+^Ue$"ag9|RW5x ~VmPde=O}T^#f9 sn\[}u]ϮiiW 59IrGN\껚oO/ϧĞoMs~zsӧ5W{?g<~[oS7.ߖb4#2#.".O8 }HgWz/GWkvM#YTM/-]5vM&#V|Cw$̊ʒVTxJP'T~v=(qGb':te9JJm=tiGG߳)]WmiQ˨+1X J Y<ڥN60fz.is*ͽEcy]7v]i;GLKW!̭(!%2H{H; gKtVYv{[hs*8J+$&%~+^Uxw?H'gJWC^?לC~Ͽ#%"{3T9!ȇGKD?+_ z f^sC>o9<*VU)9XyU͸[ Q*tMͺqKwnet}sx-nZTrmFͺq]ݶ]Z_.^XɫGFmkdWWK[t_{3U9!ȟ9gJWC^?לC~Ͽ#%"{3T9!ȇGKDĈ"ĚefHGC('v rA#zouY]E5x$Jq-EK[y&ӯbnn#vKi59իIu|OEeYddA>8˝F<3wj;y29sOs;;Zi5uv34^1$k,p@yY~`W<䃌Mq!JJnOv\֏k^Ӛ͠x1*uTrv5uMsY:NGA'[G;_K,J"p*yKGW5 ͵jɶr3n*~,B匚yfڌk6MutΑj6 yo#67Ρ~Uܧ{ו QҝeukѴ[Itiq*51Jtm&toi.Mt,WW?g9{vh5-{k7ʹ,Y!w1TYS";EsIJrv묭'}t3~!Tx8|ғ+.Wn˖7vOeK\u VVs#hl^ YO*ĪEmEےϙoUtzZ*\ڃ%3VI7%utCeC:U4o 2Pۙ^w:󃚊YTEN60ϗo+oiuc:8.TUtV|vc-.j_75I7!{K C*NG5yre|vqZ5)c8O\#Q/;M7mhd?Qi'Fỽz9 PH>kq~wIӌ`ֿiM&?, QAb4iA?u4I&ZJWC^^sC8?X! _k׿c7GCׯo*;$?_aȘ~"Cqxuo\yLl8 ,1p IK?αpêX:('VpI%Keek__g68xUW4Y$[n^+ɮ{W/H[]I s:*Ag I I*u%sSnRzEfݛfPTQ禦q(4I&NVn)^\ui3۾;WX Hk~ޖbagg5z쬷WrͿx4pKmQ'dӗzi&7r[좒WWow*/#(c\ӈ5ib}e$ѧkkek<ˉu%88yrޣ劲z5([[+_ӼkK> OkAshN7+ }*5*Qm5 ֏;n"U (再;=mԼKi'.4R3+ ƻrn21 5j2SaOh:cP^厩0m1j]^*ux"e$BF@aS]͸b爊߻3mFNh%Lӊi`㍩'omFNjͭ%!ewķ_mHo|nXGhExnt9bsSQ\qW[JRrխ5 Nxj3m(+>oJ淅!mi, R˾u`A 7u3) <-z˚= wM{VٞNi|KbW]^4I_51/;$?_aȇ%~+^Uw?H!g1SSַͥZ=/1>ll e&0/9NiXYF*lzIIROV%9cen.g޾ϤeWlvo,MҀ9 Y%ZUPiKg+hڛokkjŽsđU_q>G)GG+hڛrjjIՎׯo*/;$???X! _k׿c7GCׯo*;$?_aȇ%~+^Uw?H!g9>'k:-h$hlḎdYO<.>PUr#c ʣ!+7Zi;6߈eS<&*65uBvvJ)5)$OZIDKo$n[n! )gl⯝*SWVm88mdLFuxjЍI\񻖪8j^cxŭp\%ID.r|݄r1uR5J[ArTv'6X[[+_'*TXӒ+U,,9ֱV~⾻}æZ2+Pqw8v9\pyb18ҔRq-Wm}lpibqXӴEsI~^X4kF_E#|9vlx%<-hM$n$nj:>i wm<tMF򛢪I/u'du{3Uw?H'Cׯo*;$?_aȇ%~+^Uw?H!gJWC^?לC~Ͽ#%"Z𾷭^=ĺūCyd$gk83R.4TbWDV}>g2hy%ݝ7$W') z${G1nM-|^qin1OS (8ώBMA]At ѴcܽUoRi}G>%I{#pY@J LjS6P]8]on[_[\ʏ;sk ɠе;Fm缕DkS zx8V';7y3\LjʓT]_|\wVkukƒ-𷹒ddx  C~cBnD⓾[14sћ4g}`ٻNv8RLLCi2 #g sS)е}E/?tz9U:j.^o%?ЮGpۀ,xgY~/xx3cF6޵행m<$姇jN(FѺ)t= {F?iԼexPxi)L~v9h8j>+xRK^[6KuK[{"m5E_0ݨdqO7OG{O x_ӭHM=FO8u&y#۴ >?=5>Tf[ͫKgXFW,H4p {[<;;Bմ{Mb5(-MCDv`V(Fgi$XZFP743?t&-X]/m-mŝyvK#}O*3:L#Yf[j:ׇ&|MU߅Rэ:L.i<$Pȳ<~TgG7<[wBPv\o鶩x;[M LCFI!yy(}>k kz~|[ݫ!y I<8Tz|~]NsME湩A+1#3[[nx݌_)&8\ ٚkITq5qpѥ~U%% {kc Nu3%$mWi6='w<'?`+73~^Uh)VT,QYss7e.JZ_}JGk ]\33LHFךqv.e*nQQVM_^-~7V}f-:Q+*(^ٿ6<2gf|rC#s{Kw-o'*/Z弹~*@_Mgs~c`pqzWٖ-Ƭ-5+}R LLjRtV6ۚҾ_U}m}KzzK\\DHn| LaNUHs~&ú*5R7RoI-5nS\7aeACFN5Doޒr uM[__]["nc,Cn!pqm>, F- PҴ6ܹz)&*nwN5NIN#̕ΔqNWWԡ|,SK[k5-[FӼS*1] {JPXͦPQzs|IhM'{G]ԥ Y֌iYS_D]nx3&,i.KA0$E >\pN6uxu4&}V>hW+k}xyeөהmT4/Rxb7y6fgF_,[߈5-}2 ѭU&wIT346"IE I6dݬ=5^N5< ,.' VTҔ\rjΫ]=ӽ[E8KH f= 8 pH䁑Wm|OB^եtҧU.^Dݝ:Y41K:nfN]Rե{=i;٘ǀu;&l[ȥ)7i_,&Hۂ;F0Tu{6_g>eǝh5=Y0q]w9BNVc̡smzlكkŠ,W.TXNg'O?\>2DYnھWwωa[ UKQJv\ÝWNkylU!ᤒCpBnN:3$:j1y˲gLSJpUuMF1ދNO|%}ɿ6<2gf||?9W7{V<-'*/Z弹~64g'~ZF|g88*7仵KK{.'{Y}^|}/m/m %4^#̗kv`#nF3ӎJq 'R I)r~8cSRԯRjJW(}_I {帐YZIYeQq㪞ZS*q/gekm9r*K]tD>qf[gn̨3qњqg/mngUh{8}cr-9-~mtK_ff><:L:$~d"ȧa-Z1\Wr D傋\h{zx4x9qNo .-s$WM9o:(<-;Y-Z 2rJ<`Hrxq^)N\V)Mͫwz9>%l.>U.jE*WOyWweq ( `~׵?>^v9qsr_e>{_KkI1X'$ykҽďrvܭj5];L|( 0u'Xpp(2:jP;/U4;3MM2H;lt`  *Fk찘6 ӌ.mҵKT>.0b.iV+uRN RMFK}H%íBÌ<3 *XrR4pWiŭ᭗+Ts<>{ѣq%*kt$M:j\8ᮧsjqͤObqCbxYT'.~f9}\_VY)qrjR+Zѫ$VWKƓy3}⻝P`9f9O i%['e{YJQ駡iq_%J1\ʤRM="An_^}{Xu$(8PB^fyTQ,d_-ݺߛy&ѯZe9CNY)5qnZpJPy&娻:k{F@?= (S_е[:=sAeEu[P$ѕ\XΤE9e8eikq/6kfH87xϺ5J7fVi_]hhztlmY2Sy N(9 y3.&RuUMӂ2Ggqu |BEQ(65>u%jPm6iEh. wZϬqP̰(57{Y5 +7ͳwj>q?l3FRERW8ÕYewj>%hRw-1e+]Į39QYrR7QNog OKk~͡EjE1Nog ^]n/DԚHL5G ,o# [p:^VwRΒ-8F dݷ5T'J)徶Mס^)@D>=^[;hBrPpJ\IC-pV-sVxxU˺wJ^x>+*BNPu#kZM9]ZtN~j~XP@~ ů|3_/*'To}_X+C$}T~//SOh?I?/0}_{A@P@r> ؿ7eѶYw89_8kiMO&&#DwC<)!;(X-JM\M ( (?Ś&o ~~զk[da :ReXhB ( $ MWODg?C/rїu#ᇡ^xGޯX"ey$\ G˳\(Rjy' Jषjz᫁ce*xjqNM_߇ Qcg^o^jO .^HȌUR ;\#/g(Z|>IL(y<@%;H 8%5??Q@i}֓waklo&[ ȦVq.f)Fq 5??Q@w <:km\nYLkA-j?՜i")?عoS#A OkVVڗui}/[˘-4طoPV-$(,5`*TB nmr쮫0rzoCN>%/8o75!/@uV_عoS#BVrGk/%L/QY$A7&KQd0$b O-??uOb O-??Ob O-??q:q'u yh%՝!L"㜰$YFSpT!fӷ$mu{;[ݽ_qZ^ak6ެn.Ķ^<@7ບ9Y60P *rG Owkwzm{-̷7g2vr.%;w}R|عoS#A Otf:k#U;GswlȎ% lp c;db O-??\YᏄ=Фմ jCws+~ 0;r$g(ZO; q(g(Zt=Ҷ]#Wgw[xOL[ R`#߭|R:mpmn×eu_շݷz2|S[m Nm5ַȷH, ad$s5??/g(Z̸qk_z5aE7̫.grPdNH?rGY?4$W/l7z{}ZZ̓d `1$`b O-??R<oio[Tcj`߳@[!'.[@9G#E |4{7R<=j6n,7NıwS 0BWU`7Bm;rFW]Vck.ɦ|3qY5%׈RIR@VF;b6ZV?^2/\!9G#E |E?Cд˫5-(G=WfqBPYK \ VrG|1|նq}CGӤ,5KPd6R cEBL#lH>_عoS#A O7>|;=a'X};_\G<6;]s3Q5??Q@wÿr\ VrG#L=;ٴIBM`d$]M yنX @k %9Ѓmۄ[ov{+L<ݱw˫k;&m2;;Ȣf)( (sYb O Y? 3}[On-mpkr6kGº;.R [[0]tj@A9֞QdB 5gGUtTLk^1'cN?T7>9./$IoI~H:Hf U?n2/\!9G#DnZX4x @jZcMkab2Q0 6)UO\ VrG*DZRx7WMդ]Т̪Wȸ5C6M.[@9G#Fσ|0&aۥIVp'DfB%!(2:z?rGY?5?O; q(g(Zf F< YO}=k;k̆M$2W.`'+ʄZ;$[tZ.A{vZ%D^EҾ_PMՔZޠe4V><-2F쿱rG O:vMWQt:h.'Y٦E m3VCp@r\ VrG5{_ZvjM^i4.kcty@!-̛BIpb O-??t _Zc:{Om/G3َXvp2-j?՜i!6WKtW~9$qV# |+&=oP^;K ;mu8/kZFH i?iO%j1kf3t#O Gs_{qj:%io,JX'r_عoS#BVrG>|(u^:KRG[I 2>iTVgعoS#A O~<_ yx]7ks On&G2NLv)Qq5??Q@Ÿw@?:Q5??Q@Ÿw@?:Q5??Q@ixXV:UQurd[ڊ]ƪ@PK`Pt!d۷$mwk[a[^ʵK6ɃLgh>kMzM{JY7Y[g3]};R! rG O)?عoS#A O)?عoS#A O)?عoS#A O)?عoS#A O|? @:ւ .u;]\,b4fYtƻR,6>k %9Ѓmۄ[ov{+L<ГGjPG-,tp[&1|% BHS/\!9G#A|<x]𦯦ɡHzDRx&Xǖ)eʹUMʄ}.[@9G#F?Gc, Rk_imbfD<4WD3&-j?՜i DŽ!]z5ʹR>2+ȨǴRexܫ?rGY?|9νc-ցu-֓*w1-!KH,PF(*n ,v䍮gkt?{+K٬<9^r[=]՚ _Zc:{Om/G3َXvp2rG O_Ob O-??Ob O-??Ob O-??Ob O-??y k}Aujڀ^TadW1,Fq^"YG+]0B -aI--eeu=;-ۢI/#?O; q+/\!9G#A d9G.[@9G#A d9G.[@9G#A d9G.[@9G#G1~CCOne(K0GUقiJt)F^1I۵F2| ja'hKo}_X+OEK&<3!pikK?q:zmWĞP@P@P@P@P@P@OIsĉF_k.|GC?O4·w}{^Y,nRA[Y'Kwuq#BɕFPp杇'| Öm]X,{g4~] \Ps :Uޫb]U׶o$vH[FLěhcHܝxAKIJ63}w1Qp_9T؋EFfmDv˨\}Dz}Jn, XFQ|L|(0v:z|3sa_ɠD,lؼw "61ky:u`guk_~' ivڊ(I)'6i wX-ʒldFiO_g5$2]U&6xTbHʜd€: 󿍾[ѴxdEwE,:tң.m$p 5kr_Ċ n/v}7XilgkYwHS2>BƑTC[Z~xk+/kqrɧ"io3Ļ?!E)#&m@ W_\귺ε.,"-[n$ Z Ln0Q `>{[5/C& ^FͲN灴q@>'x?kzM8aSPCcu*jXcӝ~` o!u =PIYm=f#/TMq/IxNf4^952uqyo`6!@B,kAFׂ wGZxO32JT$cE7dP3,eׄ,pYuolپӷSo<lݍ>'Z`hcG̪T Hx:tW_ɧ]ZssnYDHRbfn"7.ɇŠ79aVeݾ}_WsM7mi(),U(Ӻ=--Csjm,k]fPY&FbX]>] \P@ ~exLצ-d )ZBƣtz EΪ#紞0:2%'?zF;qpK>wwiV3<Q#*q; ( tVo I ET rw· 8  4.[L.j טX}q+]d -iZmO^{ *46hz w WULztA囩. g(l]9T4Wz[iwMT_^[]"En9%3mc#rv 񌺴Ҳk2ʦL14 ^,%ɭdk7|%%)/5Ɍ\ +,l߅[.l.+uoi.^LO*8P3F|9vh<fO|Ea>y(ť#Lҧ1V 0-ԘwC=i^%fu;sxjh-]]'Ԁ>dC7h&]촴]Kv[mo弑.Z;u$H[ibn'yBPVSi?-;XGf`Hao-3h<@?w?)H,nS|JBm5*4ܑ`$6@0QVOB_+ӎae.#ơzމuU8D08U|YSjzKXAG-I{:M3\D`APj¿į)n?wMcOafʊMi"Des)#4 = ((Ѽ3CLiZk5UDC F7q,c˘G˩2a𢷃0O{ EZO`.e_]3ŋCl!wLnd_1yv|[_g;C-mFkR )&dx^&|C$EG,cm&Flo]&$ޙLiYHnVki u+oOm@@ $H4/߈I/M}'xgCwƗt>گ= ( ( ( ( ( (.E5]??%ĿF]4~)z;߉Rw]GUmַR@-zlzg=+B̨ՙZC^w$u z?H9=iA {Wvw$?;G;DZC^I"k}6;kkja@vKG;D=iA {Wvw$?;G;DZC^I"G?! o t-uFD{X7 hI"5^9r z?H9=iA {Wvw$?;G;DZC^I"k}6;kkja@vKG;D=iA {Wvw$?;G;DZC^I"G?! o t-uFD{X7 hI"5^9r z?H9=iA {Wvw$?;G;DZC^I"k}6;kkja@vKG;D=iA {Wvw$?;G;DZC^I"G?!#֟׿uyhAȃOk:s A5^9r z?H9=iA {Wvw$exvZH]zڂŘ/RĒ{MH95^9r z?H9=iA {Wvw$?;G;D2o kN>cmr?{0HG;_9G?!#֟׿uyhAȃOk:s A5^9r z?H9o 9X1^$$9r$?Ok:s A5^9r z?H9=iA {Wvw$eυۈwZԨMbe`y`=vr!ZC^I"G?!#֟׿uyhAȃOk:s A5^9r!_MIdZ}2`m NFO`j9r$?Ok:s A5^9r z?H9=iA {Wvw$eׅ۫Y-n I+ .# C;G;DZC^I"G?!#֟׿uyhAȃOk:s Cj=kBiQU$'`v}hAȇ=iA {Wvw$?;G;DZC^I"G?!#֟׿uyhAȆZ_MZP$qG];Q!ZC^I"G?!#֟׿uyhAȃOk:s Ck]%]kFhё%:V w=(Aȇ=iA {Wvw$?;G;DZC^I"G?!#֟׿uyhAȆ[x_MouDǬ],Y,I'$!ZC^I"G?!#֟׿uyhAȃOk:s Fgt K3jsk<_jԮ'Tcs܌fsUIRWx|5OgN.Vor9s(nq_7sJSJ=OC? C} iiOJ=?ۏtɿP=+7_?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?Mڇ4)_=oG!C}KBz?_n?MڀOI=?_/&E='77jЧ_/&CZo#C}KMBz??HϿiiSzGC/ۇ -7 zO[oOp]!>o?ᥦOI= _n?Mڇ4)?=oG!? tɿP='77jЧ_/&CZo#C}KMBz??HϿiiSzGC/ۇ -7 zO[oOp]!>o?ᥦOI= _n?Mڇ4)?=oG!? tɿP='77jЧ_/&CZo#C}KMBz??HϿiiSzGC/ۇ^`?TzGCw?q7j'4Ŀ*i?=oGp\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&Cb_4#p\>o?%SI= /&@"zW=?ۋtɿR'T?uSlK>ocn#ZAkqP_R?k)g7%z:?^]0nΗ|_<u8tfҒ?jFڠg3ӯ8ę.&8~~{JnGc2gm>˿c+D( :šW șy_$W>_^5Ğ ۅK__یaj$ ( ( ( ( ( ( L|G`t$Ls7?+_w[>zpJYJN ( ( ({w|as-ݞ}<37X+AWB3ЄӜSOge+;h#~ZimWL(c9$7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>7@rD>?@rDOOѨ"hP}΍C!:5H'9"hP}΍C!:5H'9"hP}΍C!:5H'9"hP}΍C!:5H'9"hP}΍C!:5H'9"hP:,Z;߅^RL¶[WS^dWSO OSϏ7=y=02|c ? iW \7"g2 _S?< z${G1nM-|^qin1OS ( ( ( ( ( (0~)1SU3YPK\eoacG◩"-+Kft?3+; ( ( (7|t=|=OZf&՝9b\N骶NF_OBv}4];jX}7^|MNCo^XZKW\+GUBpW.vA8asv.y^JVcfu-MaTGk&;>*h~%kZ/Ct[ m(%TZ4%Xe:2 }LEhrOfkgw{pq(u]TuC^%吼wM!kco=bv6 'iuF*K/vގ:;zKUxM nggsivߴ5jAQgHa6{vdSK|, IϕՕOA(>jnۣwmu\ӌ>{˖-웷7M4)|foߋ?K].=;OR0ǦA6rnq4yv!ܜ0%ahN\ΤIJm(i>ijKisbj8RvVWn7ky«6%-o4o$Usk6d`v?\´0N0W5%+'Zi_ҝgVM 5k^ktx{tyb1(,g~ϕ5utC9@A?9yhtC9@A?9yhtC9@A?9ІcByMOه2)ãj=s f<ه2)ãj=s f<ه2)ãj=s f<ه2)ãj=s f<ه2)ãj=s f<ه2{QÙ AGc( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =p򏠣ٰ( =r9n)6\j$}mㆪ.w[yϹ\d|$g#1V{gܰYt/HrE߷^}u_b|I|.X2lg2KP3hauc٨ԩKYyyw}>^Mqh~צdֲ릺(Kw-}Qi9}JA*^1n½<;KDS$Kk_Cys[u~r>(wϥL( :šW șy_$W>_^5Ğ ۅK__یaj$ ( ( ( ( ( ( L|G`t$Ls7?+_w[>zpJYJN ( ( (N?gO%{=#\7|1__ Xac iʅexvUJU7fkvӢ֑~VJ_U Mz]+gןt-睝Q#Weiap97e֫bEZ[S՞^-gDd@)eH'8PVm}8\}|5:՟4yb+:-7%&i9/˵]߅ fvVMR~D&j>&xd"]m!P-D'1rfsg;)p_*ܹ|zae:JKEʝK%_>/M.=0xd=<[]wH/'<ϗpsl۸1ZU\d5ZVkⶒݦft3ej_NϺ]:ч7ֵyޫj4ݏ`T*+raբ[8mlegZ_ס/uC+|IM STex;cHEU$j:g,QZ7nn+[thj6V}{Kqq[[vIb5d& NH`I5G4)ӥJ-{9sE-gT[u.V'$ijYCLc'([ߕbXwC{g+2̺۾(^+>Gݴ2y.JǰiG0TU[q}맞gʬxFQ^QFQFQFQFQFQFQFQFQFQFQFQF҅p AE{=x1a =Yڋ0{Qfbj, AE{=x1a =Yڋ0{Qfbj, AE{=x1a =" v6֋lh 6֋lh 6֋lh 6֋lh 6֋lh 6֋lh 6֋lh 6֋lh 6֋lh 6֋lh 6֋lh Ȇu){%:ux76G+k,S9rҫ@+$`3z6n3 \5SUW幟j3k^1FHS|n0GCBkɇqEJZn1lU?eF_v3E|7ԴmCQ&u]R+}>PEt ,nT~V$3!dؚ}'N._^5Ğ ۅK__یaj$ ( ( ( ( ( ( L|G`t$Ls7?+_w[>zpJYJN ( ( (|wbW5H?2;? uw__ȅuy_qf~>4p9bzK}&]ќI]m.:x4]:_%"{Xf'7 ?:,`??᛾ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/ +;G?a`?~ М2cȇ}/m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"Xf߂'7 u?X!0m/Bsg_%"X6? o]?lG1? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'? Иewh]<~/ Wv;,'_f&]?|C1i'BWTn?;,b`_3O?wh]L~/{F[]_MxOҮm}l"fVK% PV)5hs2%<<kW^~x=M8kjyF*IžP@>1u4+3򿍿Ic?e|Ok=? &/84ç|IP@P@P@P@P@P@?w?)H,o(~%V2|01KSUіъw:ř杁@P@P@PEɾxCIckґ'3N!ן?Mo_O?#H8o= ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ~:Cױÿ5H?jLo%q> _lIP@>1u4+3򿍿Ic?e|Ok=? &/84ç|IP@P@P@P@P@P@?w?)H,o(~%V2|01KSUіъw:ř杁@P@P@PEɾxCIckґ'3O!׿?Mo_O?#HxsY8y{|4-[/>:Eݯo&el~W\0d%S|=|5>^> Jݯ%[hZ{)QQ#FœJ<_븳1'6_5 i</|Oiz厍<@q07co +PmKO__䳻<)qck46 $Iv-ƲvÅs\>/|Y-C^R~ V 5&-7LJCwVh$uo h#機CwK(.hkD%^N.ooP bL:s[|=4Xumy<*zQ)U V@뚧xsWWfXݑI"W`;rx&*=_#k}[*+ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/okoEw ϲQhww/{9U 'G,l{y4I$G?^ _!#0u3_C|Gc=Wx#Own͓/>=P2|c ? iW \7"g2 _S?< z${G1nM-|^qin1OS ( ( ( ( ( (0~)1SU3YPK\eoacG◩"-+Kft?3+; ( ( (7|ڇ^ _!#Og#?C?(޾G J'7#5]FƽOv[CsksE4 taAZ̳;W𧅵]C<5^v[>csgAJ`Up8 /ϳOl;<77g ؠ zzLZ^0gʵbk qO1Bᶓ ^άφia.A8o<-fZE7YƟc?yXߓn3s@'P6~Эk7Cal]_lS$2h /o4M6GX!Kln1|6v8Jm[xjöСϧGan Ȝ#Po<-fZE7YƟc?yXߓn3s@ fa}cxGB# $L0" ?xm[xjöСϧGan Ȝ#Px'xGBmBh&[iJA x[#A?yϿO_}j-l, 5!@(ª5P@P@P@P@P@P@P@P@P@P@P@P@P@6ꈖg=H{NCJG6aW/g.{'F#&v_D})_z@dAoDc6'eH$}Ty>I$ c.ZcU'P@P@P@P@P@P@`Sc?覫"gѿZ˺Ə/SE%O]WFZWF+ޗgWvP@P@P@o&'CJF8G;P5}?4#OoGk/|%/zOk2€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (+_՟v?-Hm/O-ׯ{D=z;#\7|l֯_] Om_A?G6M쿮RB )\5pǕmO%}NI/%|_|I]4y=OOh( ( ( ( ( ( $ MWODg?C/rїu#ᇡ^J_W/Oՙ,T4 ( ( (8+M/jO%{=#\7|q?8w kzi/*Gßp?u\_J_=ڟ,eP|ZՌ,룀g1%U){7_ai< o"fLY# ,/ J;I=5%P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@V?[֐^"[_ќ_">1z8wFo)ه_ɞ+??ھۿtl]|9YSOҸj=+$W? J_QK&<3!pikK?q:zmWĞP@P@P@P@P@P@OIsĉF_k.|GC?N=w_i]z^3Y^iP@P@P@qW^?J8{Fo)?GqyaC#?_T??"55{>Y O|3Ѵ+8|Y-^S׾nz@c.}NЋ@ Ȯ>VՑUw5Iy}j'NtcX^^$Ƌ<"ug`qQ*I"wV*6Rgd~:4ؿ_aOw K{G+/_)W8*oԪ='|?ZxgQqw\}ZR]P,/2䍣Y^5=Ag z+mKa$;{H!Wc@7|[<ͧv0bh:$YYN 0MzЅ?uP@P@&qo+,VIdaA5P3,"{;[Z]ʺ5l/[+YB]K>g Avb2zzTTVJny3ogm }hfe奒8_s,g}Wp#v9NcWVPӵk{M"F*U #BBs@ ?׾5Ghzj0m] $emC@\=x#wZiў&_;t;J4sj?4]~ͨiZlvVb^@Ğ~6Dh<(;(>;C¾м)jfm g5,JRWtR3e{hMn_I]iXkk('xZVInXuFRI' (GP| i6]OѣӮ.8l㷼Th`d`0F @=b ( OFWV7ieʧjҚΦ8h(xǺ7?E|9IyM,gd;ܠq' cwXVՑUw5Iy}j'NtcX^^$Ƌ<"ug`qQ*I"wV*6RgjSina|O&e$KUn#4mwȅPbjz7. φ#!{h|%KZDwMMZ$[F rf3ެV3k~:煼"vpˤk+VwY#H#VQH|ldw5KW1x";{٧ȗO=_Bgjs% _nR_76$K?Υ$vGULIYW j7?Wf&_w@K]M+}c\RDr@ @P@V?[֐^"[_ќ_">1z8wFo)ه_ɞ+??ھۿtl]|9YSOҸj=+$W? J_QK&<3!pikK?q:zmWĞP@P@P@P@P@P@OIsĉF_k.|GC?N=w_i]z^3Y^iP@P@P@qW^?J8{Fo)?GqyaC#?_T??"55{>Y #wqxNN=VR`ь-5mUd _;Ċlpw{JWQ.TpS xw,- Ǣ5g^%DҌ%y/~橧i橫jϮ[\>fXs| sXUߩ?uW::xU"i[xWj[}P\" ld,ռ $>(E5F47O3Ж;€j$ ־ ̵~Gonlc~: /j ( ( (3֗ m#..$2xPvl+ğ*jWwU;<|Ej=Mmo bi#bbq^^qMQ18uh~<].;+m4ڼFxO9̒a 9n ;\cKKmuF3]$bW`6$`<=oQ xK= KhdYK1Ѥ,\0Q)H7!FBo[ )˳.>8 g Ə!~#xwQy5蚍B\p̭+>Xf7|1;z?nc:ӛ,ZEnZuxZM!)[=M;k 8⹸y#C7h߳Lj>GoA  PE*D"FRVm"۳kY@+{U" 8txQR9,ļP9h ( (ƴ;:[JEF0om)Ve)|(!#5)_%DR; íO(/k{{)1|8|umrxHmS ilx,r maM Z.JONa|=b(HAdϖè8\צ^oIiZ~`}>78>{3FѾ6|rDUi4{rn@]0ehωa;ic.&rSN2PP@P@6ꈖg=H{NCJG6aW/g.x{'F#&v_D})_z@dAoDc6'eH$}Ty>I$ c.ZcU'P@P@P@P@P@P@`Sc?覫"gѿZ˺Ə/SE%O]WFZWF+ޗgWvP@P@P@o&'CJF8G;P5}?4#OoGk/|%/zOk2€ (&@Opؚ7,?k>=;&@Oϻgŋ+++-c~7yQ:gZR=H€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( (+_՟v?-Hm/O-ׯ{D=z;#\7|l֯_]Om_A?G6M꿮RB )\5pǕmO%}NI/%|_|I]4y=OOh( ( ( ( ( ( $ MWODg?C/rїu#ᇡ^J_W/Oՙ,T4 ( ( (8+M/jO%{=#\7|q?8w kzi/*Gßp?u\_J_=ڟ,eP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@V?[֐^"[_ќ_">1z8wFo)ه_ɞ+?.?ھۿtl]|9YSOҸj=+$W? J_QK&<3!pikK?q:zmWĞP@P@P@P@P@P@OIsĉF_k.|GC?N=w_i]z^3Y^iP@P@P@qW^?J8{Fo)?GqyaC#?_T??"55{>Y O|3Ѵ+8|Y-^S׾nz@c.}NЋ@ Ȯ>VՑUw5Iy}j'NtcX^^$Ƌ<"ug`qQ*I"wV*6RgzfVoЯ4{YRDfS)F40V"5:Cw!uۻxuu1lY2[#yp5a|,ӫ GO^NK;k59L{廸X,ѠB僕njOw[C&S7xhC }Ì#8[G]>8HCsΑH`)PʘڊA.#>#gizAc-B11uŏӴ/Ang[HipFmKO4qZ-opD&;Jf"emVKon՛EԭuaLn8FXGrnUcYwm;Dž=Z=?GGL}vV-7A B$eڲFaI*( [Z+ $0 |H?O\.N] v6Wڭnk 1 =**+%t\7v<?||wXz{k۫="%[gIfF, ]SִwFX4Hhnmy涵%i&2"'7 x@yO/=1WVpH8@7h iqYMuuoos~1fQo;8ܪz)ibE9A=sv"4pk|<5U{,VSi&VC~a|݅eQZF[o^SZ+sƺ:5awwCZl"E8)ݍ Ї [gC=ofyoۋOc#%\BV0nAiDC2mA&/uBB4 !O2;>곶A27oL| jU,ϵYHl^2I&dRЖpH- O. W _lyQGf'n;˿ٟPP@P@-Z==Ք2C.  09&dz$sūjX~;obyceܲ[ ;=j&.[FyU_j_CxCAմ_V^2VQ"oد(vhBxaV&w|S_i_|G{geq[Z,]euW3*B ~X'm3BρtCVi7y{)6f#4VH ܡ\^ =kLteD0Cu NsH"duȻd(FNb3WmwÞ -,Nm]Gsyh&Ҋ<0Th ;@m.oZCiz~nFsw!?sf&xHwg{j?in9oUtGҕPOgaM?J᫆L#]j& 9J땯 = hR8_Tetbz~·fzy`P@P@P@_o;{Py+?c yHm[#HR<^${ Rשf,(ƴ;:[JEF0om)Ve)|(!#5)_%DR; íO(/k{{)Ioow$7:  #HѼm8"˭,|] ^[+ey-|ȌO8пf4 [z&rW#MB&{VD.|Bۓ!|À R |ckqY;ي9s2'@vB3cR嵴:6ga#tľ!t*c7#H#lC?G;_ kǩh$Qi;'K)` q;iP O7t~եu )$2*( ym&qk LfbdF?dm[ge߳ܚՇ.<_ GY鶶)hmFnZ1''l`w/8@Pg./G\]YM I73!d9=$2WM#W?TmKv.x* XR5.{FŊ4žνk+rQ~c|,?+bggoe51#x$eF19x/d֡BDM3֑|ָ2m@YP(b@)鿳v6-ixl?#-vڶ36s*.MtJXH즷 ^t*2FU@&2xRk65LŹbAWZg [e֫j>)|] 5淦kqo1Ć3;WqJH` ![Y7]ѣn&^0$pQAk0ܵdXn@Q46[dz3 ¶z͔ PGF*Ks: nkoHo44toAg.I|,LEC2\_j+ռU{;ZrF $tѬL$`rw f6I-xi乼nYR[sc6%UCgPP[ cJ4ioy3'kk^&<|0y(\s  eFP@P@6ꈖg=H{NCJG6aW/g.x{'F#&v_D})_z@dAoDc6'eH$}Ty>I$ c.ZcU'P@P@P@P@P@P@`Sc?覫"gѿZ˺Ə/SE%O]WFZWF+ޗgWvP@P@P@o&'CJF8G;P5}?4#OoGk/|%/zOk2€ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (+_՟v?-Hm/O-ׯ{D=z;#\7|l֯_] Om_A?G6M쿮RB )\5pǕmO%}NI/%|_|I]4y=OOh( ( ( ( ( ( $ MWODg?C/rїu#ᇡ^J_W/Oՙ,T4 ( ( (8+M/jO%{=#\7|q?8w kzi/*Gßp?u\_J_=ڟ,eP@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@V?[֐^"[_ќ_">1z8wFo)ه_ɞ+??ھۿtl]|9YSOҸj=+$W? J_QK&<3!pikK?q:zmWĞP@P@P@P@P@P@OIsĉF_k.|GC?N=w_i]z^3Y^iP@P@P@qW^?J8{Fo)?GqyaC#?_T??"55{>Y O|3Ѵ+8|Y-^S׾nz@c.}NЋ@ Ȯ>VՑUw5Iy}j'NtcX^^$Ƌ<"ug`qQ*I"wV*6Rgi=um+WAms xH+4|ՉU|Ynm.(bܝFS4(2d